commit dbec7952bbd90dd18e238ad0a29b9157e160549c Author: julien Date: Thu Jul 17 10:15:19 2025 +0200 first commit diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..86cbdf2 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +FROM php:7.4-apache + +RUN docker-php-ext-install pdo pdo_mysql \ + && a2enmod rewrite + +# Copie et correction de droits +COPY site/ /var/www/html/ +RUN chown -R www-data:www-data /var/www/html \ + && chmod -R 755 /var/www/html diff --git a/deciday_18.sql b/deciday_18.sql new file mode 100644 index 0000000..ae0c15e --- /dev/null +++ b/deciday_18.sql @@ -0,0 +1,21863 @@ +-- phpMyAdmin SQL Dump +-- version 3.3.7deb11 +-- http://www.phpmyadmin.net +-- +-- Host: localhost +-- Generation Time: Jul 16, 2025 at 03:39 PM +-- Server version: 5.1.73 +-- PHP Version: 5.3.3-7+squeeze29 + +SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; + + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8 */; + +-- +-- Database: `deciday_18` +-- + +-- -------------------------------------------------------- + +-- +-- Table structure for table `0_tmp_eta` +-- + +CREATE TABLE IF NOT EXISTS `0_tmp_eta` ( + `id_eta` int(11) NOT NULL AUTO_INCREMENT, + `academie` varchar(250) NOT NULL, + `nom_eta` varchar(250) NOT NULL, + `adresse1` varchar(250) NOT NULL, + `adresse2` varchar(250) NOT NULL, + `cp` varchar(250) NOT NULL, + `ville` varchar(205) NOT NULL, + `nom_ref` varchar(250) NOT NULL, + `tel_ref` varchar(250) NOT NULL, + `email_ref` varchar(250) NOT NULL, + `lat` varchar(100) NOT NULL, + `lon` varchar(100) NOT NULL, + `mdp_ref` varchar(250) NOT NULL, + `date_co` date NOT NULL, + PRIMARY KEY (`id_eta`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=410 ; + +-- +-- Dumping data for table `0_tmp_eta` +-- + +INSERT INTO `0_tmp_eta` (`id_eta`, `academie`, `nom_eta`, `adresse1`, `adresse2`, `cp`, `ville`, `nom_ref`, `tel_ref`, `email_ref`, `lat`, `lon`, `mdp_ref`, `date_co`) VALUES +(1, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gNKspJqsqKWExZ2BeNGmppOnotKkV67SrJ3TpqSnyJ6q16Kfn6aYnYTFnYGeiXWlnpye1VZkha1+gYFmZQ==', 'aJVZoqCtp5aExZ2BgsOmoqU=', '', 'Z5dpYGE=', 'eLp+gn59hg==', 'i8yilaOqrFGwsIqmc7c=', 'Z5hZZ2FYZmaEkmuBZ5g=', 'q5Kln6OdlKakyp7KYpVinKGg', '46.5796468', '3.322737', '61074af86d746360d4431c734fcc4240', '2018-11-06'), +(2, 'eMealPThoJrJgYvVpMOnm6Goq8o=', 'eql/gIF5U3LI06HGoIKOnp6fntU=', 'bptZoqCtp5aExa2BhMqdpw==', '', 'bZttYGE=', 'gLCFe3qKdnmEqIqieKh5h4WHeqd7hQ==', 'fdaanpSjU4SprYSqd7Q=', 'Z5dZaWFYZ2GEkW2BY5JU', 'ndeenJ2hmKOkxJ3HotKVZ5eo', '48.5254008', '7.7313112', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(3, 'eMealPThoJrJgYvVpMOnm6Goq8o=', 'eqp6UJWdU32LqfsVpsegpZeloshWicrXrJnWqJOsy6ilhJ2VUXuCfbGiig==', 'bISrpZZYl5aEzZmBecOmng==', '', 'bZxpYGE=', 'erOFfXKK', 'fLCCg3J6eIWsgYOmdao=', 'Z5dZaGpYZWGEkWmBZZM=', 'nM+ek5l4lpfFyafVpMenrV+WqM+jmNeSm6fO', '48.0757811', '7.3496995', 'eb7189c456642a418f96ed3a7ddba6aa', '2018-10-29'), +(4, 'eMealPThoJrJgXrQpMaZmqer', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1Vmb2Vl3o5mhlYSjndOZx6aalaKi1g==', 'aJRyUKOtmFHI1lilocWonqelWbWlrN0=', '', 'aZhqYGE=', 'eamLd3aKdHQ=', 'gcmanl5+lJPNxqaBdqt+iIU=', 'Z5lZZWRYZWOEk2mBZJNU', 'nciimqCrc5TKwmXDl9SbnqSUnJGcqQ==', '44.8615169', '0.4970759', 'daaa671ae8a7fd387422be278f9a3cf5', '2018-11-05'), +(5, 'eMealPThoJrJgXrQpMaZmqer', 'eqp6UJWdU53FgXuwf6+Jh3OIjahWe4ylf3+thX99tHqLrYh+UYh0ireBeqKFs4l+', 'bpdZgoZ9U3OztoqogKeJfw==', '', 'bZhqYGE=', 'eaWSf3+GeA==', 'fNaik1GEdH+os4Gmh7o=', 'Z5lZZWpYZWaElHCBYpI=', 'msqaXpSnp5bGwqvSp8eVnaGoq6OZptLRrabCq6adj6mY3aySkqukpsmPntM=', '43.4916513', '-1.4710843', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(6, 'eMealPThoJrJgXrQpMaZmqer', 'eqp6UJWdU53FgXuke4KYnlKfmoN6ptfIp5/Pmw==', 'V8WvlZ+tmFGsxqbTq4J4np6onA==', '', 'aZhwZWE=', 'ebOOfHKSdHQ=', 'esWtmJaqnJ/JgYqigLGJkQ==', 'Z5lZZWRYZmaEmGqBaZRU', 'mpKrkZ+nqKmkxJnOotenZ5aiq8elntPJZpvEn2Ce1A==', '45.1800498', '0.7764986', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(7, 'eMealPThoJrJgXrQpMaZmqer', 'gKd/cQ==', 'aJRZoqadU4PJz/sKUqWVrKWcpw==', '', 'apdpZGo=', 'ebOLdHZ5iImEgXumdqeM', 'icWpmJL73p2Eooqje7B1WQ==', 'Z5lZZWdYamqElmqBZZRU', 'qcWpmJKdn1/F05rKoMN0n6GlpsSqoNTSZaTCmWCb0aY=', '44.8763099', '-0.574371', '631a8cf74136084f41ff3d7d4e372068', '0000-00-00'), +(8, 'eMealPThoJrJgXrQpMaZmqer', 'ecWso5qmU3fT06XCpsujp1J2iKV3ig==', 'aISbnJVYl5bXgYXKo9eZpaGnrA==', '', 'apdrZmE=', 'g6VZhHaLh3aEpX2BdLd3gQ==', 'h8Wsk5KkU3ilr3mv', 'Z5lZZWhYaGOEmGqBa5JU', 'p8uanpKmc5PF1KvKoMijq5+UrcylpZLHp5rCqWCe1A==', '44.6101511', '-1.1468639', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(9, 'eMealPThoJrJgXrQpMaZmqer', 'esmnpKOdU5XJgX7QpM+VrZuip4OanNiEpfsKqpud1KxXyJ5QnZlTdMzCpcOkx1Sdl1OGJt+rzsmqq4F3o63LrZjNp5VRq5iU2Mqnz1Kuo61SmK2DfZjX06amxg==', 'V82moJKrppaErqfT9Qqmng==', 'erdZZ2FpZGk=', 'a5tpYGU=', 'eKt+flF7eHWpuQ==', 'hMWrmZKmnJTPgYWifqeIWQ==', 'Z5lZZWRYamiElW+BaZdU', 'pMWrmZKmnJTPj6XCnseoeZWgmpdtZcvW', '29.9450835', '-90.1261013', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(10, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gKqJgA==', 'b4SrpZZYg5bWxaHIp8uZqw==', '', 'aJlpYGE=', 'eLmLeX2EdHSE', 'hNmrmZakU3Slr4c=', 'Z5hZZ2JYaWSEmWmBapNU', 'mtOnpJKbp3HNx6jRY5dinKGg', '44.9007392', '2.435895', '61074af86d746360d4431c734fcc4240', '2018-11-16'), +(11, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gNKspJqsqKWExZ2BeNGmppOnotKkV7XWp57GqaWh0aelyaWcllhnZA==', 'V6d/cVGBoaXJ06jTociZrKWcqNGknNGEnJ2BfpOt1p5ksKiZo51TfcnUWLql1ZmtpQ==', '', 'a5dsZ2E=', 'eaWCfoQ=', 'eMymlZVYeH2EooyqUqOAhXN7', 'Z5hZZ2JYaGiEmnCBYpI=', 'mMymlZVmmJ3F1aHCns6VoXKcn9NqapPKqg==', '45.012318', '3.787333', '61074af86d746360d4431c734fcc4240', '2018-11-14'), +(12, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gNKspJqsqKWExZ3UUq/34qacntWp', 'V9aulVGcqFGnyfsDpseVrlKXntZWjcrWn6bGqQ==', '', 'bZdpY2o=', 'erB+gn6HgYWEp32zhKOCfVJ2fqd7j4WW', 'gcmanl58lJ/NxqSBeaN9hX54', 'Z5hZZ2RYZWSEl2iBYpI=', 'mtOnpJKbp3HNz6vVm9aprV+gntefnNfXZp7T', '45.8121203', '3.1290247', '61074af86d746360d4431c734fcc4240', '2018-11-07'), +(13, 'eMealPThoJrJgXvCl9A=', 'gKd+gF57eXKEpJ3PptSZWZaYWamlqdLFrKHQpFKciXqn1KuVn6ycpITFndRSpZyan5WryKlXyclYe9Cjn53UnJyEnqRRnFp60sWt1KbUnZ5Sl56DeZjK0liG0KifmdCdoMlZlaVYl6aEsZnapYKYYHOooMg=', 'b4SrpZZYdp3F1pzGUqSgqJWb', '', 'aJhpZWQ=', 'eqV+flF7eHWpuViV', 'eNKnmZZYf5bW0K3Z', 'Z5ZZY2JYZ2eEmG2BZ5Q=', 'mMehlaeqmJ2RzZ3TodeseZWUntFkmsjNZp7T', '49.2096338', '-0.3596637', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(14, 'eMealPThoJrJgXvCl9A=', 'ftaopaGdU3etrg==', 'b5pZoqadU5XJgaSId9qjnZc=', 'ebRZY2pu', 'bJRpYGc=', 'iqWCfoVYf4CEpH2ld7o=', 'h62BhXqM', 'Z5ZZY2RYamiEmW6BaZk=', 'oNeakpakn5aS0aHJp8uoeaCiq9CXpcnNnWbEmZtmyKs=', '49.1103291', '-1.0907282', '35fe86a4d43279a5b98e528857f86bc3', '2018-11-08'), +(15, 'eMealPThoJrJgXvCl9A=', 'aoSCdnJndn6qooc=', 'V9aopaWdU5XZgYXCoNU=', 'ebRZYWFu', 'bZVpYGQ=', 'eLB+fnSHgVHHxpzGqg==', 'edaunqBYgXqnsISm', 'Z5ZZY2RYZWmEmG6BaZhU', 'mdKik6CkmHGXyp7CYMim', '48.410061', '0.092114', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(16, 'eMealPThoJrJgXzKnNGi', 'eLSLcXeHU16EpH6iUrKjpaupms+bpdk=', 'aZVZoqadU5XJ1Fikk9SmovXbq8ip', '', 'bJxqaGE=', 'hKWLioo=', 'it2lppqdU36ptoymfqeI', '', 'qpKmlaasmJ3J1XjEmMOkppOls9xkmtTR', '46.98059', '3.0932559', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(17, 'eMealPThoJrJgXzKnNGi', 'eqp6UH15U3+ztn2BdLGJi3mCgLF7', 'aIScmJalnJ+ExZ2BnsNUh6Gong==', 'erdZYWFoa2E=', 'aZVvYGM=', 'g7OHd4eBdlGnxpzGqg==', 'e8mloJmhoZaErH2ziKOGfnU=', '', 'm8+eoqeZpZbHoZvHk86Vp6GonpGZptI=', '47.2924959', '5.0339374', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(18, 'eMealPThoJrJgXzKnNGi', 'eq1/cVGCmJLSgYTCn8egqJumng==', 'aJtZpqChmFG20KXCm9CZ', '', 'bpVvZGE=', 'hKmLc4aKeIo=', 'edail5qsp5aEq320haOJhnc=', '', 'mZKjlaSrlKbRxnjEm8iVZpyYmtFjo8bRnaTQn6WdkJym0Q==', '46.8355257', '4.7021483', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(19, 'eMealPThoJrJgXzKnNGi', 'eq1/cVFwbFGRgXvGoNamnlJ8p9ebqdXWp57GqaWh0aelyaVQlZ1Td9PTpcKmy6OnUpdgpKan18mmrMqp', 'aoSrpZZYfZbFz1ijl9SooqA=', 'ebRZYWlx', 'b51pYGM=', 'eLmRdYOKeFGnpnymig==', 'hMWrk5akU3ezr4yjgbCCfg==', '', 'm82rlZSsnKDSoZvKmMOtqKChnpGZptI=', '47.8081599', '3.5789499', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(20, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXuuc4J4foVTfLKKfLiEfF+iiH+HtFlkhKyZpZ2mUcjGWLGe0amfpJSgxKRXythYfMqkk6Y=', 'V4R8kZ6oqKSExZ2Bnol1q6acrMSkmNmEnayBmpergqb6Da2Zlqqm', 'erdZaWFoaGI=', 'aZZtZGE=', 'h7CIhXeKdHilrw==', 'ecmrpKOZoZWEs4ejd7SI', 'Z5ZZaWdYameEk2+BZJk=', 'mZKrn5OdpaWkxKXCZJRin6Q=', '48.479508', '-2.801797', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(21, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYx61XyJ5QnV90o9jKq8Kgw6hZlqhZqZ+lztes+wmolw==', 'aZhZoqCtp5aExZ2BddeuqKA=', '', 'aZ1qaWc=', 'iLmCfYF9hVGnxpzGqg==', 'h8Wsk5KkU3SlpYGmhw==', 'Z5ZZaWlYameElW6BZpg=', 'p8Wsk5KkYZTFxaHGp6KXppNlcpGcqQ==', '48.005729', '-4.0788844', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(22, 'eMealPThoJrJgYrGoNCZrA==', 'gKp6c1F7lJ7U1quBlsenWX/24tefnNfX', 'a5puUKOtmFGExZ2BfcempZOoq8ikqw==', 'ebRZY2FoZmg=', 'aZ1xYGI=', 'ebZ+g4VYdnaoppCBaw==', 'hdOrkpaqp1G0poa3d7SC', 'Z5ZZYmpYY2GEl2iBaJI=', 'pdOrkpaqp1/UxqbXl9SieZiiq9CXq87TpmbDqJesw6ClyWafpp2mpZLEm8pgxK6h', '48.4210564', '-4.4469363', '195fb912cf289c1ca88fefcbe3063b90', '2018-11-12'), +(23, 'eMealPThoJrJgYrGoNCZrA==', 'fcWcpZ2s9tqExZ3UUs/34qacntWpV5KEe3uqVnin1KaY2KKfn1iFltLPndQ=', 'V9aulVGcmKSEp6ok2tSZrFKAqNGqntTQnqHGqA==', 'esWmoKarU5XJgYPGpIKAmqCh', 'aplqZ2M=', 'ebaOilF7eHWpuQ==', 'jc2nk5amp1GmsHqwhg==', 'Z5ZZaWpYY2aElW2BZJQ=', 'rcaokqCsc5fFxGXOl9adnqSmZ8mo', '48.0433412', '-1.7432743', '61074af86d746360d4431c734fcc4240', '2018-11-06'), +(24, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYx61XyJ5QnV90o9jKq8Kgw6hZlqhZsKWpx82gmc8=', 'aJRZkp2cU1HIxquBe86ZrA==', '', 'bJppYGE=', 'jaWHfnaLU3SppX25', 'etCapZWhoZaEqHmxe6p1hw==', 'Z5ZZaWhYaWSEmm2BY5VU', 'mtCapZWhoZaSyJnRm8qVp3KWpsRjpNTWmqHJl6BmyKs=', '47.652681', '-2.786379', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(25, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXuke4KYrlKAqNWYoM3Fpg==', 'aZVZgaaZnFGEpX20UquCfXeG', 'erdZY2FraWM=', 'bJpsYmQ=', 'g7OLeXaGh1Gnpnymig==', 'gNeakpakn5aEo4e7d6U=', 'Z5ZZaWhYY2OElWiBYpI=', 'oJKbn6udlnHR0KrDm8qVp2CWnMxkndc=', '47.745499', '-3.358539', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(26, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmbyaxQdKCUnsbTndRSxplZf/bi15+c19dkWMWbUnvRpqTJq5OWWJilhMVfqqDGqaympaLIVpvahHugxqg=', 'aJhyXWJtZFHW1p2BlsdUjaelpdw=', '', 'aJxpYGE=', 'ebOOgnh9hg==', 'hc2cn52ZplGxpou1hKc=', 'Z5ZZZGlYZWSElmuBaZVU', 'pdGeo6WqmHHHx5mOlNGpq5mYrJGcqQ==', '47.1024983', '2.4231806', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(27, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UHqGh3a2sYqwUpRsWV9TfMuXqdnWnas=', 'V9aulVF7m5LWzZ3UUqunopaiq8hWe9TZoaY=', 'erdZY2FwZGo=', 'aZxpYGk=', 'eqx6goWKeISEpH2ld7o=', 'f8mrpvThU4WptIumhKd1jlI=', 'Z5ZZY2hYbGKEl26BaJhU', 'n8mrppZmp5bX1J3Tl8OpeZWZmsykq8rWqKrQY2RwkJ+p', '48.4300803', '1.4992267', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(28, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UHSFdFHIxljNWauinaSY', 'aJptUJKumJ/ZxlirocqiWX2Yp9Gbm94=', 'ebRZZmY=', 'apppYGM=', 'eqx6hHZ5iIOztpCBdad4foo=', 'e82dmZaqU3fJ06rCmdeo', 'Z5ZZZWVYY2mEmGiBYpNU', 'm82dmZaqYZfJ06rCmdeoeZWZmsajapuSnqo=', '46.7969869', '1.6914131', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(29, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UIehn53JgZzGUrajrqSm', 'b4SanJ373JaEgYrQmcemWX6YnNKqqygN', '', 'aptqYGE=', 'i7OOgoQ=', 'hMWrmZZlfaCEo4ele7BUnqZThtKkqs7JraqBfqGZ1J6Y2Vl2lqqhktLFWA==', 'Z5ZZZGhYa2mElmmBYpJU', 'm82rlZSsnKDSoZvHk4+oqKelrJGcqQ==', '47.417464', '0.7060995', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(30, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmbyVmcklh2mcXOmtOXgpieUoD8DKqgytarWMaqUpzHWaOLeqKloaaS0sKsgZbHVIWhnKuDm6uFp6Cd0w==', 'aJZZoqadU3fWwqYk2dGdrFJ1os+iptrc', '', 'a5VpYGE=', 'ebCIeYQ=', 'fdaanpSjU3Ssonqih66I', 'Z5ZZZWVYamWEkmiBapI=', 'nZKcmJKalKbQ1XjEmMNoamCZqw==', '47.6079918', '1.3225097', '61074af86d746360d4431c734fcc4240', '2018-11-08'), +(31, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UJWdU53FgZvJk8+Wq5dTncipV9In4azKm6Srgp6rhJ2VUaRaktbVodST0JWtUpeug4KmztadrA==', 'bISrpZZYdpnF06TGpYKE/Nuartw=', 'ebRZYWpqag==', 'a5lpYGo=', 'hraFdXKGhlGnpnymioJl', 'gSfiovTsoJaErIepgA==', 'Z5ZZY2lYaWOEmG2BZJs=', 'oZKkn5mmc5TKwpvOZpdin6Q=', '41.2033216', '-77.1945247', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(32, 'eMealPThoJrJgYrGm8+n', 'eqp6UHqmp5bW0arQUsaZWZ6UWbCXqdPJ', 'apZZoqadU3PJz6LCn8uiWXilmtGho87S', 'erdwYGFqZA==', 'bJVpYWc=', 'eqx6fICGhlGpr1ikeqOBiXN6h6g=', 'j8WvmZaqU3ewooWjc7R4', 'Z5dZYmdYaWqEk22Bapc=', 'mtOnpJKbp3HFzaXGk4+aqKSgmtefptPXZp7T', '48.9478264', '4.3445825', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(33, 'eMealPThoJrJgXvQpNWZ', 'eqp6UJWdU3nF1qzGUqWjq6WYWa2bmNORgpnEp6ed1VmFzZyfnZmc', 'V9aopaWdU5XZgY7Kns6VoJc=', '', 'aZRvYGE=', 'fbmLeXKGfA==', 'j8WvmZaqU325pIGigKtU', 'Z5hZaWZYaGqEk2iBZZI=', 'mtOnpJKbp3HHx5mTlJCaqw==', '42.657717', '9.4264932', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(34, 'eMealPThoJrJgXvQpNWZ', 'esmnpKOdU5XJgX7QpM+VrZuip4OanNiEeajRqJem1qKqhI6emq6Yo9fKrMKb1JlZl6FZ1fngzM2npoF5oarVng==', 'V6WvlZ+tmFHI1liaUtWZqaaYpsWonIWunZnPVoan16yqxa1QdX2GcrK1gYE=', '', 'aZRrZWE=', 'erOLhHY=', 'esyrmaSsoqHMxli0hrGGens=', 'Z5hyZWVtY2OYmA==', 'qtioopKhc5TKwq3Pm9iXqKSmnpGcqQ==', '42.3004713', '9.1533506', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(35, 'eMealPThoJrJgXvQpNWZ', 'esmnpKOdU5XJgZ7QpM+VrZuip4OanNiEpfsKqpud1KxXyJ5QnZlTdNPTq8ZSxqlZhaid', 'V8ehlZ6hoVHIxljNk4KHqaGmmteX', 'g82epVGcnKWEo5nElcujnJqc', 'aZRwYGE=', 'eK56c3SBglGnxpzGqoJkcg==', 'h8yinJqoo5aEpX20e7R5', 'Z5hnaWZmZWSSlmuPY5Y=', 'p8ieo5qqmHHHx6WOk8yVnJWcqJGlqcw=', '41.947985', '8.7568963', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(36, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UHmhn5LN052BlsdUfJqUq8elpdPJrFg=', 'aoScmJalnJ+ExZ2BnsNUhpOfnNKjmco=', '', 'aZlpZGM=', 'eamMcX97gn+EpH2ld7o=', 'h8WtopqbnlGxooGohKeIWQ==', 'Z5dZaGJYZ2KEk3GBaZJU', 'mtOnpJKbp3HHx5mOmsugmpulnpCanJLHoJnTmqGm0J6rkp+i', '47.2258284', '5.9858097', '3d96a8c4331032fc1a092f31a2e3e3e5', '2018-10-30'), +(37, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UJWtU4HF2quBlsdUhqGhrcX54NHNmarF', 'aISrpZZYl5bXgX7T9QqmnqVThdijoCgMqp0=', '', 'aZlrYGE=', 'eamNeICGdoC5s4w=', 'fcWbopqbmFG0qn+2d7Y=', '', 'ndSil6adp3HHx5mOn9GirZSYpcyXqcmSp6rI', '47.5391623', '6.8119951', '74464207194c0688da0c3c7dc9a8e442', '2018-10-29'), +(38, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UJWtU3vZ05k=', 'aZdZoqCtp5aExZ2BftGirFKfnoOJmNrSoZ3T', '', 'ap1uZ2E=', 'fqmPeX9/eIo=', 'esyrmaSsnJLSgYSih7R5eoc=', 'Z5dZaGVYZ2iElGuBaZQ=', 'msqalKaiqKPFoZnTpsunmqCUrZCZptLYp6HUZJiq', '46.643655', '5.5023766', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(39, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6fXJYl5aEzZmBesOprZdgjMT569PJ', 'bIR8mJalnJ+Exa2BhsOgnqSirQ==', '', 'bpRpYGE=', 'jamMf4aE', 'ecmrpKOZoZWEpKrGp9Wt', 'Z5dZaGVYameEmmuBa5U=', 'mZKcopatpqqkwqrVm9WVp5OnZsalpNnToauPnKQ=', '47.6341356', '6.1546817', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(40, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UH6toZrHyqjCnoJ+mpWeoshWe9fTrZ3V', 'aYSrpZZYhZbSJOGBdcOnrJuh', '', 'cJRpYGE=', 'eamFdoCKhw==', 'fdb82ZX73KPNxFikgbCIi3eFfrY=', 'Z5dZaGVYZ2eEl2uBZ5Q=', 'nceonqWqmKPJ1HjOk8umopdgm8iindTWrGbHqA==', '47.6404731', '6.8789795', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(41, 'eMealPThoJrJgYrQp8ei', 'eqp6eXZYl5aEt5nNUsaZWYSYrsyi', 'a5VZoqadU5XZgYjCpYKYnqVTgcirqcrX', 'erdZYWFqY2Y=', 'aZtqYGM=', 'jaWFUHV9U4OptoGtUqV5fXeL', 'g8WuopamlpaEpXmzhLGGjQ==', 'Z5ZZY2NYY2qElGuBaZk=', 'o8WuopamlpaSxZnTpNGmrXKWn8SfnJPKqg==', '49.2729693', '1.2054582', 'b753701a4b6522c6536aaaf9c6496373', '2018-11-09'), +(42, 'eMealPThoJrJgYrQp8ei', 'eqp6UHSFU3XNxqjRlw==', 'V4Q=', 'ebRZZ2Fp', 'bpprYGE=', 'e61+gIF9', 'hcWinZJYdXa2qoe2dap5WX90jLZ7g7Gz', 'Z5ZZY2ZYa2WEk2iBa5k=', 'pcWinZKamKPN0K3Emsd0nJ9gcJlkndc=', '49.9244444', '1.1147888', 'cfdd1f899002b0d24282723ac0d2975a', '2018-11-09'), +(43, 'eMealPThoJrJgYrQp8ei', 'gKp6UH6ZpZTJzVi0k9eqmpmY', 'aJVZoqadU5XZgYzTodClrpen', 'ebRZYmZu', 'bppxYmY=', 'hLOHhFGLdHqytViie6mCeoBTfKh6fL0=', 'gcmanl6ClJTV1p3UUql1h4GB', 'Z5ZZY2ZYaGOElW2BZpo=', 'ocmanl6ilJTV1p3UYMmVp6GhecycmJLWp63GpGCe1A==', '49.469372', '1.076112', '40a4ffceca091f183353814f549cb992', '2018-10-31'), +(44, 'eMealPThoJrJgYjCpMun', 'eqp6UHedpaPFz5zK', 'aZxZoqadU52LoprD9QtUgKT24sqloNfJ', '', 'bplpYGc=', 'h6WLeYQ=', 'itOpmJqdU4OtpICwhw==', 'Z5VZZWZYaWaEmGyBZ5dU', 'qtaik5mnqHHHxKGOosOmoqVgosecZcvW', '48.8475221', '2.3253994', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(45, 'eMealPThoJrJgYjCpMun', 'eqp6UH773JUnCqrKlQ==', 'aZRZoqadU34nCpwk29SdnA==', '', 'bplpYWg=', 'h6WLeYQ=', 'ic2cmJKql1GlrX25c7B4i3dT', 'Z5VZZGNYZGOEl2qBZJI=', 'qZKanJawlJ/I052hlciVppeXntWfmpPHp6U=', '48.891986', '2.319287', '5798f80e9020883574b6949c7606f759', '2018-10-26'), +(46, 'eMealPThoJrJgYjCpMun', 'fMeonJZYl5aEsZnTm9VUnZemWdD54NnNnarUVpadgqWYhK2Rk6SY', 'aJtZoqadU3vFxKnWl9VUgpSYq9c=', '', 'bplpYWg=', 'h6WLeYRY', 'hKmHcYaEh1Gt1KXCl84=', 'Z5VZZGVYY2qEkmqBYpdU', 'oJKmlZ+ZqJ3YoZ3Rn9aooWCiq8o=', '48.8887187', '2.2904314', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(47, 'eMealPThoJrJgYjCpMun', 'eqp6UJWdplHRJOHVm8emrFKXnoOimIXLmavVqKGm0aagyVldUXt4gbawew==', 'aJ1ZoqadU3jT1prGpg==', '', 'bplpYWo=', 'h6WLeYQ=', 'fNGmkZ+tmJ2EsXmze7U=', 'Z5VZZGNYZmqEmGmBYpc=', 'nNSaopqrc5TJ0arQlZCXqJ8=', '48.8855215', '2.3899299', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(48, 'eMealPThoJrJgXvT9Quonpuf', 'eqp6UIaMeHQ=', 'aIR6ppamqJaEq6fJk9CinqVTgNiqnNPGnarIVoV9tIuAtw==', 'erdZZ2FoZ2Y=', 'bptwZ2c=', 'hKWLfnZYf3KEt3mtfqd5WXV4faiOV5k=', 'fcmhlFF6eH+3ooGl', 'Z5VZZmFYZmiElWmBZZI=', 'ncmhlF+amJ/XwqHFctWZoqCYntejmNfSnWbEmZtmyKs=', '48.8373195', '2.7948343', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(49, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UIWqlJvJxKzQm9SZWVp0rNalms7FrKHQpFKM1JqhyZykoKGlloSnp9Ofw6iioaFi', 'V9SlkZSdU3eSgYrClMegmpum', 'mpOoUH2xlvQNxljFl9VUpvXcrcybqdiEnJ2BolmgJe2ryaWclqqcloTGrIGW11StoairzKmkyg==', 'bpxraGE=', 'frmScX97goa2tQ==', 'itj82aGglJ/JgXymf6OGhXc=', 'Z5VZY2FYbGeEkmqBYpM=', 'n9OtlZ2kmKPNxmXTl9WomqelmtefptOkm57CqqSZzJ6a2KiZo51hl9Y=', '48.7845521', '2.0504451', 'f61bb32980e0d23f12ac87159332fe52', '2018-11-05'), +(50, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UJWdU53FgXvJk8+Wq5dTncipV9In4azKm6Srgp2c11mJp52fmtLGqw==', 'aJtZcaedoabJgZzWUqn34qD24tWXo4WxmabIn6A=', '', 'bpxpYGE=', 'jamLg3KBf32ptA==', 'hc2cn52ZplGyqo6mc7c=', 'Z5VZY2pYZ2SElWuBaJc=', 'pZKnmaeZqHHHx5mOlc+tZ5il', '48.8137234', '2.1389775', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(51, 'eMealPThoJrJgY7GpNWVop6fntY=', 'fcWcpZ2s9tqExZ3UUq/34qacntWpV8nJWKSIe6Wr0aelyQ==', 'aoScmJalnJ+ExZ2BnsNUgKSUp8qbV6vJrVitpaeh1Q==', '', 'cJVpY2Y=', 'fLqLiVF7eHWpuQ==', 'it2lppqdU36tr4e0hg==', 'Z5VZZmFYamqEmG2BZpg=', 'qpKmmZ+npqWkx5zOl5tlZ5il', '48.6224534', '2.4574571', 'b283b4b190eb0cda2b0e41219832c65d', '2018-10-29'), +(52, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UJWtU37T1qTKoIKYnlKfmoOGo8bSm6DG', 'a5lZoqCtp5aExV+ipNajp5ao', '', 'cJVqZWE=', 'hraGf4plf3KRs4G3e6eGfg==', 'gcmanlGEqJSEooWqc7R4', 'Z5VZZmVYbGWElnCBa5pU', 'pMWio6CmYJfFzqHNm8Ognl+Wn8R2rsbSmZzQpWCe1A==', '48.3982307', '2.1444119', '61074af86d746360d4431c734fcc4240', '2018-10-29'), +(53, 'eMealPThoJrJgXvT9Quonpuf', 'eql/cXJYiZrQzZ3Rm9Cong==', 'V8WvlZ+tmFGuxpnPUqijrqSansSrmw==', '', 'cJdtYmE=', 'ja2FfHaIfH+4pg==', 'fdaanpShplGmooqje6eGWQ==', 'Z5VZZGpYaWSElWqBZpRU', 'ndaanpShpl/GwqrDm8emeZWYn8SXZdPJrA==', '48.9605653', '2.5527031', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(54, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYxq5XupqcUZxagM3UnQ==', 'aISappamqJaExa2BgsOmnA==', '', 'cJlpYWY=', 'eqmLd4pYg4CytYeqhadUfHd3frs=', 'ismbkaSsnJbSgXvJm8WjoqWhng==', 'Z5VZY2VYZmaEmWiBZJo=', 'msyik6Chpp/JoZvOk5tpZ5il', '49.0357379', '2.0710143', '80452f7d505be7274eb0339b9566f228', '2018-11-13'), +(55, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqp6eVGAmJ/Wyliuk9SooqA=', 'aZZZkaedoabJgZzGpYJ7nqD249ep', 'ebRZYWJq', 'aJVrYGY=', 'g6mTeXiGdH+EpIezdKt5i3eGWaZ7e6q8', 'idOuqFGKmJ/F1pw=', 'Z5hZZmlYZGKEk2qBY5U=', 'qZKrn6awc5TKwqGOk9eYnmCZqw==', '43.200503', '2.7577759', 'f122d33ef42a39140f17951154d2c1c2', '2018-10-29'), +(56, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqeCUISNd1GqsIquc7Z9iIBT', 'cJ1ZeZ6olKTXxliilsOhWYWgotee', '', 'aphtZ2g=', 'h6mLf32LU3TJxZ3Z', 'fdb82ZX73KPNxFilc7SEgXuB', 'Z5hZZmhYZGSEl3CBZ5JU', 'nZKdkaOom5rSoavWlsijq5+UrcylpZPHm6GPnKQ=', '43.5804822', '3.9395375', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(57, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqp6UH+hlqDQwquBc86WmqCi', 'V7aulVGFnKPFw53Cpw==', 'ebRZYWhu', 'aphrYGE=', 'iqmNdQ==', 'hM2cmJakU3eps4qqd7Q=', 'Z5hZaWpYaGiEl2iBZZc=', 'msqaXpKblqbJyqShlciVr5ufpcianNjJrJ2PnKQ=', '43.4107546', '3.6915638', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(58, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqp6UHmdoaPdgX/KpMOg', 'V756UKOtmFHIxljNWcOkqaSYp9efqtjFn50=', '', 'a5xpYGE=', 'hKmHdHY=', 'fdb82ZX73KPN0q3GUraVm6ennsSr', 'Z5hvZmVxY2Wblw==', 'ndaelJaqnKLZxmbVk8SprZeUrqOZpMaRpKfbm6SdkJ+p', '44.5324542', '3.469907', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(59, 'eMealPThoJrJgZzGUq6dpqGantY=', 'eqp6UH2dplG4053KrMdUj5ehrdY=', 'bJVZkp2cU5XJgaTCUq6pp5OXng==', '', 'aJ1pYGE=', 'i7mFfHY=', 'hc2cn52ZplG20K3Xl86jrg==', 'Z5lZZWZYZWGEmG2BZJRU', 'pc2cn52Zpl/W0K3Xl86gqKdznMmXaJjanabVqWCb0aY=', '45.2676776', '1.7854646', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(60, 'eMealPThoJrJgYbCoMWtZn+Yrd0=', 'eqp6UJWdU53FgYrGpdaVrqSUrcylpYXInVium6eq1qGchJ6kUYWipMnNpMY=', 'aZhZoqadU3nJz6rKUqSVs5uh', '', 'bJhpYGE=', 'haWHc4o=', 'itOpmJqdU4uzs4amhA==', 'Z5dZaGRYZmaEmm+BZpI=', 'qt6oop+dpV/Hx5mhodSVp5mYZ8mo', '48.6964804', '6.194801', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(61, 'eMealPThoJrJgYzQp86jrqWY', 'esmnpKOdU5XJgZ7QpM+VrZuip4OXrN2EhfsKqpud1KxXyJ5QnV90o80k4MiX', 'aYSrpZZYfZbFz1iuodegoqA=', 'g8WbkaOqmA==', 'Z51pYGE=', 'fbOCiA==', 'it2lppqZU4G5q3mtUo9UgYGBiLV3iw==', 'Z5lZY2VYY2qEmXCBY5JU', 'qpKppZuZn17M0KbQpMOoeZWgZsSooMrLnWbHqA==', '42.9830383', '1.613809', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(62, 'eMealPThoJrJgYzQp86jrqWY', 'eqWGgIaLU3WptFiud7Z9foSGWZBWes3FpZrTm1Kcx1mEJ+Kkmp2lpITGrIGWx1SlWXSr15+qxtKZrIGal1jOYHjanqmjp6E=', 'V4SJkaObU5WLwpvVm9idrfXcrIOanIWnmabVl6SZ0KechGZQg62YUcjGq4F/Jd2tm5ir1g==', 'erdZYmRraGE=', 'aJZpY2Q=', 'idOdlatYlpbIxrCBYps=', 'fdaanvTfoprXgYimhqOKkg==', 'Z5lZZmZYamiElm6BYpJU', 'msqacJSlYJLaxrHTodBin6Q=', '44.349389', '2.575986', '61074af86d746360d4431c734fcc4240', '2018-10-29'), +(63, 'eMealPThoJrJgYzQp86jrqWY', 'eqp6UHSnoJ7J05vGUseoWYWYq9mfmsrXZXmnd3V9tQ==', 'aZVZkaedoabJgX/GodSbnqVTe9WXqtjJpqs=', '', 'apVwYGE=', 'ebB6d395dg==', 'esWtmJaqnJ/JgY6mhKZ9fg==', 'Z5lZZmNYamWEmGuBaZRU', 'm82rlZSsnKDSoZvHk8SgmpmhmsZkptfL', '43.648819', '1.3780513', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(64, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgYUk29adnqSmWcerV6zJqqs=', 'aISappamqJaExZ2BnsNUi/XcqdiYo87VrZ0=', '', 'apZuZWE=', 'h6WPeXY=', 'fdCoopamlpaEsX2zd7U=', 'Z5pZaGFYamSEmWyBY5s=', 'nZKplaOdpnHHzpmOmcemrGCZqw==', '43.6052642', '0.594069', 'ebb1ace52fbe939ff1984c453942f12d', '2018-10-31'), +(65, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgaUk29adnqSmWcerV7HTrFg=', 'V9aulVGLlJrS1Z2Bc8+Wq6GcrMg=', '', 'a5ppYGE=', 'eqWBf4OL', 'fdb82ZX73KPN0q3GUq51gHt4i6g=', 'Z5lZZmZYaGSEk2mBYpJU', 'nMimZGd4lp6RxJnJodSnZ5il', '44.4683393', '1.4543277', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(66, 'eMealPThoJrJgYzQp86jrqWY', 'eqp6UIP73JjN0KbCnoKYnqVThqmI', 'aJhoYWdYg53FxJ2BltdUhZOpqMyo', '', 'b5VvYGE=', 'ebZ+foQ=', 'fNGmkZ+tmJ2EpISmhLE=', 'Z5lvY2ZvaGaUmg==', 'nNGmkZ+tmJ2SxKTGpNF0ppilZ8SpqtSSnqo=', '43.889586', '1.9091807', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(67, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgYUk29adnqSmWcebqoWsma3Vm6VlsrKpJ+Ke9OGYpA==', 'aISrpZZYg5rJ06rGUq6VrfXcnNL539fJ', 'kdOnlVF6lKTYyqTNk8U=', 'bZlpYGE=', 'i6WLcnaL', 'h8Wsk5KkmFGwooysgbmHhHs=', 'Z5lZZmNYZ2WEkmmBapo=', 'p5KlkaWjoqjXzKGhlc+Vb2dhn9U=', '43.2201642', '0.0397264', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(68, 'eMealPThoJrJgYzQp86jrqWY', 'jNKippaqpprYJOGBhCXdoJuip8SinIXInauBg/Xh1qKc1qxQlqxTlcmBpIhz1KiipZSnxKpXkoR5ptWboKbHWZvZWYSSqqE=', 'aJVrUIOnqKXJgZzGpYKInp+jpcybqdg=', 'erdZYmNrZ2E=', 'b5VpYmE=', 'eLB7eVF7eHWpuVia', 'hM2cmJakU3Opoo2jgbd3gXeFWQ==', 'Z5lZZmRYZ2mElWuBaJI=', 'pM2cmJakYZPJwq3DodeXoZelecajZNnFqqaPnKQ=', '43.9211556', '2.2166421', '61074af86d746360d4431c734fcc4240', '2018-10-29'), +(69, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgaUk29adnqSmWZBWequlWJzGVoaZ1KdkhJ6kXn+Uo9PPpsY=', 'aJVZoqadU3bWz53UpoKBnqSWmsefnNc=', 'ka1ZfqCqlw==', 'b5ZpYGc=', 'hLOHhHKNdXKygXumdqeM', 'h8WtopqbnlG0ooKwhoI=', 'Z5lZZmRYY2SElmuBZZtU', 'p5KpkZunp3HJxaXEmMNsa2CZqw==', '44.0384389', '1.370176', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(70, 'eMealPThoJrJgYTKns6Z', 'jJKLXn5mdF+EtqbKqMemrJun/AxWiSgNn6HQpJOkx1mbyaxQfvvcpc3GqtRSx6hZlphZz11419ihq8Kkk6yCnZyEi/Pan5yg0oGG0KTGVImTpmbHm2SoxaSZyqk=', 'cISrpZZYf/QN0KaBhtSppZuh', 'erdZY2FpZGU=', 'bJ1pYGI=', 'g62FfHZYdnaoppA=', 'itj82aGglJ/JgXqie66AfoY=', 'Z5dZYmFYZGWEk26BZZZU', 'qpKbkZqkn5rJ1XjEn8NhoZOordaanMvWmabEm2Ce1A==', '50.6378834', '3.0658737', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(71, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdVSj1R8k6Cp2KlXyclYfMqdoJ2CpZzXWXKSoaGk', 'aJlZoqadU37FzZzQoMOo', '', 'Z5hpYGE=', 'e62AfnZYf3a3gXqie7CH', 'hcWtmJKknJaEpXm3e7Bhe3OFiA==', 'Z5hZaWNYZmGEmmiBapJU', 'pZKdkaehoV7GwqrQcsWhmqRgqcSZmJPKqg==', '44.1016126', '6.2354999', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(72, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdVSj1R8k6Cp2KlXyclYf8Km', 'aJRZoqCtp5aExZ2BedSVn5icp8ii', '', 'Z5lpYGE=', 'fqWJ', 'gcWcoaadplGxppGmhA==', 'Z5hZaWNYaGSEkW2BZZhU', 'oZKmlaqdpXHHzpnTX9KVnJNhn9U=', '44.5385517', '6.0590623', 'c00d5b3533c7291822e985b696a67efe', '2018-11-09'), +(73, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmA0q2Vo6iloMrGq9Sb0aKnl59ZpqWp1NhYec2mmqfQrJyEhp+mppyW1oFgpKHUo61SeajVo5jZzaem1F8=', 'apdZkp2cU5XZgXvCosuompuhnoN9+g3enQ==', 'h8Wrk1GFlKTXyqTKkw==', 'aJdsY2Q=', 'hKWLg3aBf32pgXumdqeMWWNn', 'esyrmaSsnJLSgY6if6R5i4V+kg==', 'Z5hZaWJYZWKElm+BYpI=', 'oNKfn3GboqPT1WXHodShmqacqNGpZcjTpQ==', '43.3309649', '5.3690109', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(74, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdU=', 'aJdxUHKkn/QNxlill9VUiaScpsis+g3Wnas=', '', 'b5dsY2E=', 'g8lZcpaZqKTXxqw=', 'it2lppqdU4Opt320hg==', 'Z5hZaWVYbGmElm+BZZk=', 'qpKrlaedpqWkxKXCpI+kmpWUZ8mo', '43.1986795', '5.8012885', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(75, 'eMealPThoJrJgYbKlcc=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdU=', 'V6ehlZ6hoVGr1vsKpMuioKecntU=', '', 'b5dtZmE=', 'g8msUHKqlqQ=', 'e9OmmZ+hpKbJgYSie7A=', 'Z5hZaWVYaWKEmnGBaJI=', 'ndOrnZKsnKDSoZvOk9RhqZOWmpGcqQ==', '43.462876', '6.478446', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(76, 'eMealPThoJrJgYbKlcc=', 'eqp6UINYiIOxolikk8+krqVTnchWisbNpqyBg5Owy6ag0g==', 'b5huUHSgmJ7Nz1jFp4J4npiZntGaqg==', '', 'b5dtZ2E=', 'iqWCfoVYgHK8qoWqgA==', 'e9OmmZ+hpKbJgYSie7A=', 'Z5hZaWVYaWKEmnGBY5o=', 'ndOrnZKsnKDSmWuhlc+Vq1+jmsaXZcvW', '43.4499896', '5.8509', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(77, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UHR7fIWEmWw=', 'V6WlnPThmFHIxquBeMeimpumqNGp', 'ebRZYmFuaWE=', 'b5hpY2M=', 'eLqCd3+HgVGnpnymioJn', 'etOrmZ+dU36zr4aqd7Q=', 'Z5hZaWFYZGSEmW6BY5U=', 'mtGonp+hmKOk15nWlc6prJdhnMafZcvW', '43.927211', '4.848207', 'ce76811cc5ec7dfd1c992f46fcdecca6', '2018-10-29'), +(78, 'eMealPThoJrJgYbKlcc=', 'eqp6UH6toZrHyqjCnoJhWXiUnNiiqygNWJzGqVKFJeKrzZ6ipFiXloSkmc+gx6c=', 'bJhmZWdYpabJgZzGUqWVp6CYrA==', '', 'Z5pqZWE=', 'eqWHfnaLU32lgXqwdaV1', 'e9OmmZ+hpKbJgYiwgLU=', 'Z5hZaWhYY2eElXGBaZY=', 'm9OmmZ+hpKbJj6jQoNV0r5ufpchjmsbSpp3UZJiq', '43.5536337', '6.9666735', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(79, 'eMealPThoJrJgYbCoNaZrA==', 'eq1/cX5ldnelgXymUq51WXWAeoNqaw==', 'V7SlkZSdU3vFxKnWl9VUfJqYrNH54A==', 'ebRZY2lrY2o=', 'a5hyaGQ=', 'iqWCfoV9U325pH2BhbeGWX6CgrV7Vw==', 'fdaanvTfoprXgXuwh6uAhXOIfYM=', 'Z5ZZZGFYZGmEmm6BZpRU', 'nceopZqkn5LZxXjCpNadrJOhmtemmN7XnJ3Nl56ny6uckp+i', '47.2635081', '-1.4884181', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(80, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UF5YgHe2gYTCUqSjp6CUrsebqc7JWHvJpZ6d1g==', 'V9aulVGcmFHQwlijodCimqeXntWfnA==', '', 'a51sYGE=', 'eqyIfHaM', 'i8yonZKrU3OprYSwh6OGfQ==', 'Z5ZZZGJYamaEl2iBZZJU', 'i8yonZKrYXPJzaTQp8OmnXKgn9VkmNjXp2bHqA==', '47.0513362', '-0.8269784', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(81, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UJWdplG6yqTNl9VUnZdTpcRWhMbdnabPmw==', 'ap1ZkaedoabJgXvJk9Cusg==', 'ebRZZGFqZmg=', 'bJdpYGM=', 'g6WPcX1YdnaoppA=', 'g8Wuopamp1Gmpou0e6eGfg==', 'Z5ZZZGRYaGqEkWuBaJI=', 'o5KblaSrnJbWxnjEmMOqpmCWqNA=', '48.068323', '-0.7587154', '3f76c9354dabc0f77a70b69be41228bf', '2018-10-31'), +(82, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UISZnJ/Yxlikk9acnqScp8g=', 'aZRrUKOtmFG3wqHPpoJ1rpScpw==', '', 'bpZpYGE=', 'g6lZfXKGhlE=', 'e9OmmZ+hpKbJgYWihbWDhw==', 'Z5ZZZGRYZmqEkmyBaZQ=', 'pMWso6CmYZWkxqzUX9WonpWUrcubqc7SnWbHqA==', '48.0226076', '0.1787404', 'c12587fe958c1071a629c9aae2a4389d', '2018-10-26'), +(83, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UHR7fFGwpliuc7CHWYV0i7d+fA==', 'aJdrUKOtmFGsxqbTm4J3oZOgqcylpQ==', '', 'bpZqYGE=', 'g6lZfXKGhlE=', 'htCippqdpVG3poSngbSI', 'Z5ZZZGRYZ2GEl2iBZ5I=', 'nsmrkZ2cnJ/Jj6jCp8+dnqRzpcijmNPXZpvEn2Ce1A==', '47.9820608', '0.2340803', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(84, 'eMealPThoJrJgYbCoNaZrA==', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmExaKjoKZTd8XOoc2bw6Ce', 'V7aulVF/opXF05w=', '', 'b5lwYGE=', 'iqWCfoVYgHqnqX2tUq+Dh4ZThqiIerq2fQ==', 'g8Wuopamp1G3sIqqgA==', 'Z5ZZZWJYaGiEmWmBapNU', 'o8Wuopamp6TT06HPcsWamqWUotGqpM7HoJ3No6Gm1qac1pylo51hlNPO', '46.8316959', '-0.8862725', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(85, 'eMealPThoJrJgYTKns6Z', 'eqp6UIP73JjN0KbCnoJ8mqenrIOanIWqqpnPmZc=', 'aZ1yUHOnqJ3J15nTloJ4nlJ/nsiaqg==', '', 'bJ1pY2Q=', 'g62FfHZYdnaoppA=', 'g8WuopamlpaEuIGihLY=', 'Z5dZYmFYaWSEmnCBY5M=', 'o5KwmZKqp3HMwq3VpcaZn6SUp8abZMjHoWbHqA==', '50.6402791', '3.0755124', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(86, 'eMealPThoJrJgXnOm8eirA==', 'gLKNdYN+goORtIGi', 'aYSrpZZYiZLIJOE=', 'ebRZZmJvZGk=', 'b5RpYWg=', 'eLGCdX+LU3SppX25UpJl', 'f8Wso5KmU32looqifA==', 'Z5dZYmNYa2OEkWiBY5JU', 'n8Wso5KmYZ3FwqrCnKKdp6aYq8mlqZLXoZmPmaGl', '39.6937087', '-104.7871004', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(87, 'eMealPThoJrJgYjQm9adnqSm', 'eqWGgIaLU3Stp4ex', 'V8aopZ2dqZLWxVi0k86qmpaiq4N3o9HJppzG', 'ka1ZnvPoZg==', 'aJpsZGE=', 'g4uCg319U3WLpouxc6mCenU=', 'ecmrnpKql1GosH+vd7aDhw==', 'Z5lZZGZYbGGEkmuBYpI=', 'mcmrnpKql1/I0J/Pl9ajp3KWosmlp5PKqg==', '45.6697695', '0.2038398', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(88, 'eMealPThoJrJgYjQm9adnqSm', 'esWmoKarU5XJ1Fiu9QuoopelrIOanIWyoafTqg==', 'aZVZoqadU5XJ1Fipl9SWop6fmtiu', 'ebRZYWFwaw==', 'bp1pYWE=', 'ha2IgoVYdnaoppCBaw==', 'esyrqaSsmJ2ErX2jc7U=', 'Z5lZZGpYZmSEl2uBYpk=', 'mpKllZOZpnHHzpmOoMujq6Zhn9U=', '46.3347157', '-0.4163963', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(89, 'eMealPThoJrJgYjQm9adnqSm', 'eqp6UJWdU53FgXuke4KYnlKfmoOMoMrSpp0=', 'V4SGkZqrop+ExZ2BnsNUn6GlpsSqoNTS', 'aJZpUKOtmFHI1lixodSonpOo', 'b5ppYWM=', 'h7OChHp9hYSE', 'icWpmJL73p2Ep32zhKd9i3M=', 'Z5lZZGpYZmiElWyBaZU=', 'qcqeoqOdnKPFoaXFmJpqZ6CYrQ==', '46.6110428', '0.3460975', '61074af86d746360d4431c734fcc4240', '2018-11-03'), +(90, 'eMealPThoJrJgYjQm9adnqSm', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYx61XyJ5QnV90o9jKq8Kgw6hZlphZz5dXqMyZqsakpp2ChpjWoqSapZg=', 'aJRwUJKumJ/Zxlium8Wcnp5TfNX54NXJma0=', '', 'aJtpYmU=', 'g6VZgoB7e3awrX2BlceYnqpTag==', 'hMWrmZZYdpnWyqvVm9CZWXR4i7F3g4WqjYu1e4Q=', 'Z5lZZGdYaGGEkWuBY5I=', 'pMdnkpaqoZLQoZvOX86Vq6GWociio8qSnqo=', '46.1491252', '-1.1582992', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(91, '', 'eqp6UIR9g4OEooavgbB1klJjcJRmZw==', 'bJxZc3l9gHqygXymUrh9hX54fax7jA==', '', 'Z5tqYGE=', 'eLKHf395jA==', 'etCamaOdU3TMwqTNk9CYnl+CrNikmA==', 'Z5hZZ2NYa2SEk2+BapI=', 'mpKcmJKkn5LSxZ2hpcekq2CYndg=', '45.2475471', '4.6903683', '61074af86d746360d4431c734fcc4240', '2018-11-07'), +(92, 'h8WrmaQ=', 'eqp6UHOdn53NwqrF', 'aJduUKOtmFGmxqTNm8OmnQ==', '', 'bplpYWk=', 'h6WLeYQ=', 'i8yilaOqrFGxsI2ve6eG', '', 'q8yilaOqrJ7T1qbKl9Rta3KapsSfo5PHp6U=', '48.8962512', '2.334467', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(93, 'eMealPThoJrJgYTaodA=', 'hKqLUH2dU3fTz6zCoMug', 'aJlxUKOtmFHIxljNWaebpZumng==', '', 'bpdrY2E=', 'iqWCfoVYdH2mooaBfqeNjIV4', 'gaV8f3NYgZrH0KTCpQ==', 'Z5hZZ2pYZmSEkmiBZJY=', 'pMqrXpenoaXFz6HNcs+aq2CUrNalZcvW', '45.5821594', '5.9560617', '3918700da1f1d8a92b017f0c7295aa8c', '2018-10-26'), +(94, 'eMealPThoJrJgX/Tl9Cjm56Y', 'g8WnkaRYdJ/I0/sKUqiVq5mcntU=', 'V9aopaWdU5XJgaSIcyXdq6GXq9KjnIWR', '', 'Z5trYGE=', 'g6WHcYQ=', 'V7uinJ2hlJ6EuHm7gKeG', 'Z5hnZ2ZmZmeSkm6PYpI=', 'rs2lnJqZoF/bwrLPl9R0nJiUZsSom8rHoJ2Oo5eqy52g06eRnZ1hl9Y=', '44.5400709', '4.3631669', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(95, 'eMealPThoJrJgZzGUq6tqKA=', 'eql8f3dYW3TJz6zTl4J3qKCmrs+XoNfJWJzGVnin1KaY2KKfn1iDo9PHndSly6OnoJilz5tXyclYpIh3m6aL', 'bJZZkaedoabJgZzGUs6VWX6cmybfqcbYoafP', 'ebRZYmFx', 'Z5VuYGM=', 'eLF7dYOBeIaEpoaBdLd7fotTfKh6fL0=', 'gbOGcYN8U4S9rY6ie7A=', 'Z5tZZ2JYammEl3GBZpM=', 'qs6onZKql3HHxpvQmJCVrKWiZ8mo', '45.958436', '5.359556', '53ba6c2e9bfeb8214645c3bfeb3d2f28', '2018-10-26'), +(96, 'eMealPThoJrJgX/Tl9Cjm56Y', 'eqp6UHSdoaXWxljFl4J6qKSgmtefptOEha3Nqpuo1KhXqKvz5aWYUaXTnCTaxZye', 'bISrpZZYl5aEzZmBhcOWpZv24dWb', '', 'aZprZWE=', 'g62PgoCGU4S5s1ilhLGBfg==', 'edaunqBYd4a0toG0Ug==', 'Z5hZZ2ZYaWKElm6BY5Y=', 'm9mppZqrlXHHx6XFk5Caqw==', '44.7770053', '4.8406238', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(97, 'eMealPThoJrJgX/Tl9Cjm56Y', 'gLGN', 'aJRZoqadU3LNzvsKUrKpqZuh', '', 'apxpYmo=', 'frZ+foB6f3aEpH2ld7pUaw==', 'esyrmaSsoqHMxlimhqN9kVI=', 'Z5hZZ2dYZWmEk26BZ5NU', 'msyrmaSsoqHMxmbGpsOdsXKaq8ikpsfQnWbEmZtmyKs=', '45.1617092', '5.7236575', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(98, 'eMealPThoJrJgX/Tl9Cjm56Y', 'fKqGcVFgeKTUwpvGUqijq5+UrcylpYXInauBg/Xh1qKc1qxQlqxTlcmBpIhz1KiipZSnxKpg', 'aJRZoqadU4TFyqbVX6qjp6Gl/Aw=', 'esyanaGen5bZ06GB', 'apxsYGg=', 'ebOOgniHfH+Eq3mtfqt5jlJ2fqd7jw==', 'fcWbopqbmFGl06vClQ==', 'Z5hZZ2VYZ2SEl2+BYpJU', 'ncWbopqbmF/F06vClaKZn5+UZ8mo', '45.6068122', '5.2706284', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(99, 'eMealPThoJrJgZzGUq6tqKA=', 'eqp6UH19hlGxsI2te7B9foSG', 'aZxZoqadU5XJ1FiuodegoqCcntWp', 'ebRZZmFobGk=', 'a5ZpYWE=', 'iqWCfoVYeIWtpoavdw==', 'h8yinJqoo5aEt53ToMOt', 'Z5pvYWNobGibmg==', 'm82rlZSsnKDSoZvHk4+hqKefotGfnNfXZpvQow==', '45.4198419', '4.4025399', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(100, 'eMealPThoJrJgZzGUq6tqKA=', 'eqp6UJWtU4PTwqbPk8un', 'aJluUKOnqKXJgZzGUqSmopehp9Kk', '', 'a5ZsYGE=', 'hKV7fIo=', 'f8mnoppYdXaltoSqd7c=', 'Z5hZZ2hYZ2WEmWuBZ5hU', 'mcmapZ2hmKaSyXjEmMNin6Q=', '46.0658801', '4.0736941', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(101, 'eMealPThoJrJgX/Tl9Cjm56Y', 'eqp6UJWdU3jW0KHUqw==', 'aJZvUJSgmJ7Nz1jFl9VUhvXcrcybqdg=', '', 'bphuZ2E=', 'fraIeYSR', 'ismrl5ZYeYa2rXmv', 'Z5hZZWFYamiElG6BappU', 'mtOnpJKbp3HHx5mOmdSjoqWsZ8alpA==', '46.0023467', '6.1571805', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(102, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UHacqJTF1aHQoIKCmqacqNGXo8qEjp3PmvXhxw==', 'aZ1ZcqCtn5bawqrFUqmpoqanqNE=', 'ebRZZ2hx', 'b5lpYmE=', 'g6VZgoB7e3aEtI2zUruDhw==', 'ecmrpKOZoZWEpoSqhac=', 'Z5ZZZWJYZmeElW6BZJI=', 'p8WtopqbnJKS0aHEmsemnpOoecSZZNPFpqzGqWCe1A==', '46.6577218', '-1.4335904', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(103, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UHR7fFGYmg==', 'aJdrUJKumJ/Zxlill86VraalnoN6nIW4mavUn5mm2w==', '', 'a51pYWY=', 'eLKAdYOLU3SppX25UpJl', 'isWnlKOhoZaEpHmxd655', 'Z5ZZZGJYZWGElXGBa5o=', 'qsWnlKOhoZaSxJnRl86ZeZ+UotGbnNnQp6HTm2CbxaJlyqs=', '47.447389', '-0.5403961', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(104, 'eMealPThoJrJgXnOm8eirA==', 'eqp6UHt9dH+Eo4e0dbE=', 'a5dZgoZ9U32ltoqmgKZ5eoc=', '', 'b5RpYGE=', 'eLGCdX+L', 'gcmanl5+pZLSJN/Qm9VUfXeGe7KEhaq4', 'Z5dZYmFYZmaEmmiBZ5c=', 'mtOnpJKbp3HHx5nLl8Oim6GmnNJkndc=', '49.887114', '2.2907723', '0966e41cb52de70dfc804ab4c53b48dd', '2018-10-29'), +(105, 'eMealPThoJrJgXnOm8eirA==', 'eqeCUIChppY=', 'aZdpUIONeFGnqXmzfqeHWYWChqSJerQ=', '', 'bZRqaGE=', 'hdOglZ+sU6TZ01iwm9WZ', '', '', 'msqacJSbnF7TyqvGYMim', '49.2696803', '2.4893469', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(106, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVixhYeErnqJuFl0dotTgbCie6aF', 'aoR7f4aEeIels3yBdqdUjIZ0hayEfrelfA==', '', 'cJhsYmE=', 'i6yCcXqL', '', '', 'Z51tYGltZqSkwpuOldSZrZecpZGcqQ==', '48.7672444', '2.4031008', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(107, '', 'fKeIfHZYh3anqYawfrF7goOIfoOGia66fX2Be3WHrn5XrIiEdoR8dramWKVSo4qCeYGIsQ==', 'eLCF87p9U3WptFind7B1goWCh7Y=', '', 'b5hpY2M=', 'eLqCd3+HgQ==', '', '', 'msWmoKarm6DYxqTNl9SdnnKUr8ydpdTSrpnWmZ6t1Z5lx5yZX56l', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(108, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ilgYa1Y3eQt4l8tpI=', 'aJlZUHKOeH+5pli0c6uCjV94kbiGfLe9', '', 'Z5VrYGc=', 'eamFfHZ/dIOopmW0h7Rhj3N/jKiIgLOp', '', '', 'mslnYGFpY2GUl3qhk8Vhpauip5GcqQ==', '46.114846', '5.8171664', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(109, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWerSweYqlVoCHp4U=', 'aJdrUJKumJ/Zxlild4KAelKFfrOLebGtiY2m', '', 'Z5ZqYGE=', 'iqWCfoVlhIapr4yqgA==', '', '', 'mslnYGFqY2GZk4+hk8Vhmp+cntGpZcvW', '49.8630025', '3.309587', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(110, '', 'g718dXZYg4Ozp1ixhKuKflKXntZWhKq4gX2ziVKLtlmNrYdzdoaHUaimWLFzt4A=', 'aJdZUHKOeH+5plild4KGfnuAjA==', '', 'Z5ZrYGg=', 'irOCg4SHgYQ=', '', '', 'mslnYGFqY2Wdk5Khk8Vhmp+cntGpZcvW', '49.3759812', '3.3363278', '5eea1433cac9c704f7b69148514757f8', '2018-11-15'), +(111, '', 'g718UHh9gVG4pnupUrKGgoh4Wad7ioWxfYyqe4SLgox4rYeEUYKChKmxgA==', 'cISKhXKBU3KxJMGl9et5WXWCjqiJhbSy', '', 'Z5ZtYGE=', 'eqx6hHZ5iF64qYGmhLSN', '', '', 'mslnYGFqZGmamo+hk8Vhmp+cntGpZcvW', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(112, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7GpWHuwiHSNtYJ8tg==', 'h8Wso5KfmFGwplikgbR2joV8frU=', '', 'Z5ZsY2I=', 'irOCg4SHgYQ=', '', '', 'mslnYGFqZWGYlYShk8Vhmp+cntGpZcvW', '49.376636', '3.32342', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(113, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+peYaBg4GGsH6L', 'ap1ZoJ2ZlpaEq42td7VUf3eFi7w=', '', 'Z5dtYGI=', 'kL5+hYN9', '', '', 'mslnYGFrY2GXmXmhk8VhnJ6Yq9ClpdmSnqo=', '46.5682479', '3.3578445', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(114, '', 'g718dXZYg4Cwuo6ifqeCjVKJeq97ib6EhHmzeHONpg==', 'b4R7f4aEeIels3yBeaN2i3t4hYOGfLezhoamig==', '', 'Z5dsYGc=', 'ermMg3aM', '', '', 'mslnYGFrZGGck4Ohk8VhnJ6Yq9ClpdmSnqo=', '46.1257585', '3.4473603', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(115, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBg3OKtoKFhHuCdow=', 'eLCF87p9U3W5gYiihKU=', '', 'Z5hqYGI=', 'hKWHf4SJiHY=', '', '', 'mslnYGFsY2GVkoqhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(116, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7WljYSBd4R9sH4=', 'aJdZUHKOeH+5plilh4KHjXN3fg==', '', 'Z5hrYGQ=', 'iq2MhHaKgn8=', '', '', 'mslnYGFsY2GWlHyhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '44.1820358', '5.9465855', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(117, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWiqq6gX+vew==', 'bYSLhXZYfXalr1iuc6V5', '', 'Z5lpYGQ=', 'fqWJ', 'f7N/dn55gX+EpqTQlsuZ', 'Z5hZaWNYaGeElm6BY5I=', 'mslnYGFtY2GUmoChk8VhmpurZtCXqdjJoaTNm2Ce1A==', '44.5621362', '6.0744739', 'e22b67d3dd9646c912a4aa064cd1c3b1', '2018-11-11'), +(118, '', 'g718dXZYg4Ozp320hauDh4B4hYN8iaaye4G0VnZ9gnyJs4KDhH2H', 'aphZc3l9gHqygXymUq51WXV0j6SCfLetfQ==', '', 'Z5pqY2E=', 'frZ6g4R9', '', '', 'mslnYGFuY2GWlKyhk8Vhp5uWnpGcqQ==', '43.6522825', '6.9329061', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(119, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWh6a5hFi3d359tJI=', 'aISappamqJaEtHmqgLZUg3N2irh7ig==', '', 'Z5puYGE=', 'hKmHhICG', '', '', 'mslnYGFuY2GWmbGhk8Vhp5uWnpGcqQ==', '43.7833616', '7.5118266', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(120, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgo2GuYt5hIV4XrSija1So4mAe3iL', 'aJpsUFF6goawpo6ihKZUi3eBfoN5eLi3gYY=', '', 'Z5prYGQ=', 'ha18dQ==', '', '', 'mslnYGFuY2GXlZ2hk8Vhp5uWnpGcqQ==', '43.667891', '7.2122519', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(121, '', 'g718dXZYg4Ozp320hauDh4B4hYN3jKy5i4ymVneLpYh9qoJ1gw==', 'eqx+fXqGU3W5gXqzd6WF', '', 'Z5pxYGI=', 'eqWAfnaLYIS5s2Wud7Q=', '', '', 'mslnYGFuZGeXlq6hk8Vhp5uWnpGcqQ==', '43.67139', '7.148767', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(122, '', 'g718dXZYg4Ozp320hauDh4B4hYN+hrmphIGmiA==', 'idOupJZYd3aEtXm2hKt5i4U=', '', 'Z5tqYWE=', 'g6WLd3aGh3qps30=', '', '', 'mslnYGFvY2GVl32hk8VhoKSYp9KYo8qSnqo=', '44.55113', '4.279915', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(123, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fViud4SBp1mJrY95doo=', 'aZVZkaedoabJgYawhrR5WXZ0hqg=', '', 'Z5twYGE=', 'ebOOgnhlhnKtr4yOc7B4foF/', '', '', 'mslnYGFvY2KUmHyhk8VhoKSYp9KYo8qSnqo=', '44.3740364', '4.6448021', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(124, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV7KzjYSqhA==', 'cJ1vUJKumJ/Zxlild4KAelJ2grd7V7inh4Sif4R9', '', 'Z5xuYGE=', 'iamPeX8=', '', '', 'mslnYGFwY2GYkXmhk8Vhq5ecptZkndc=', '49.9269552', '4.6510258', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(125, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6elkn2qgn59tQ==', 'h8Wrk1F8iFGnqXm1d6OJWXZ4WbCFhbm6gYSte4SL', '', 'Z5xrYGc=', 'eaWTdXqEf3a3', '', '', 'mslnYGFwZGGYmI6hk8Vhq5ecptZkndc=', '49.679135', '4.9817014', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(126, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbelhnuwf4VYpXqEqYU=', 'ibl+UHuNf3a3gX6mhLSN', '', 'Z51rYGI=', 'iqWCfoVlenq2sIa0', '', '', 'mslnYGFxY2GWkZGhk8VhraGopdKrqsqSnqo=', '42.9739298', '1.1549426', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(127, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfKmzjXmzelKAp4uJrYiE', 'idmeUH15U36lrXmle6eGfg==', '', 'aJRvYGE=', 'iqWCfoV9YISlt4Gvdw==', '', '', 'mslnYGJoZGGWk3+hk8Vhq5ecptZkndc=', '48.2935455', '4.0271421', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(128, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeq2lioSmiVJ7tIiK', 'aIRZgoZ9U36tpICmfoKKfoR6frY=', '', 'aJVxZ2E=', 'eqWLc3KLhoCyr30=', '', '', 'mslnYGJpY2mWlIOhk8VhpqGhrdObo9HNnaqPnKQ=', '43.2283215', '2.3382924', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(129, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWI6qfYE=', 'ZA==', '', 'aJZqYGE=', 'hK2FfHKN', '', '', 'mslnYGJqY2GVlXmhk8VhraGopdKrqsqSnqo=', '44.100575', '3.077801', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(130, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYjw==', 'ZA==', '', 'aJZrYGE=', 'ja2FfHZ+hXKypICmX6Z5ZoSCjqiIfrqp', '', '', 'mslnYGJqZGKbmYqhk8VhraGopdKrqsqSnqo=', '44.349746', '2.035381', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(131, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtmaBs4x1gYA=', 'eLp+foZ9U3a4qn2vgKdUjIGIhax7', '', 'aJZrYGE=', 'ja2FfHZ+hXKypICmX6Z5ZoSCjqiIfrqp', '', '', 'mslnYGJqZGOakX2hk8VhraGopdKrqsqSnqo=', '44.3571108', '2.0390544', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(132, '', 'g718dXZYg4Ozp320hauDh4B4hYOGfLeogX+2f3eK', 'aJtZk5mdoJrSgXymhYKBiHuBfrY=', '', 'aJdrYGE=', 'eLaFdYQ=', '', '', 'mslnYGJrY2GVk4yhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.6976236', '4.6400977', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(133, '', 'g718dXZYg4Ozp320hauDh4B4hYN5eLKthISmVnyNroWApYc=', 'bJRZUHOHiH2pt3mzdoJ4flJ/eoN4eLeli4um', '', 'aJdsaWc=', 'hKWLg3aBf32p', '', '', 'mslnYGJrY2GamXyhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.2859274', '5.4774883', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(134, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVikfnOKrn6KhIl1eI2M', 'aJRrUFGKiHaEtJGtiKN2fn5/fg==', '', 'aJdpYGc=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZGWUk5yhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.2882617', '5.374819', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(135, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVikfnOKroiLuH5QeIp0iK21kg==', 'aZRZUHSAeH6tr1ikeqOIfnOIWaqFhKepiow=', '', 'aJdpYWQ=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZGWYlpmhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.3350096', '5.4208538', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(136, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVijiHuLp1mDpYZ1hA==', 'ibOOhHZYd3aErXmBiKt5i3l4', '', 'aJduYGE=', 'hKWLhHp/iHa3', '', '', 'mslnYGJrZGWclayhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.4178996', '5.0415592', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(137, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVite1KKsXx/qYs=', 'hLOHhPTBeFGoplitc4KIi3OBjKuLhKaye30=', '', 'aJdsYGE=', 'iqWFf39ld3aRsYqwiKeCfHc=', '', '', 'mslnYGJrZGWclq2hk8VhmpurZtCXqdjJoaTNm2Ce1A==', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(138, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtn5XqYV5hHl1drip', 'kbOHdVF8WnKntYG3e7b3wlJ/eoN+eLq4fVije3aHt4V8', '', 'aJdrZGE=', 'iqmJhHaFeISRrX20X7h1hX6Ch7Y=', '', '', 'mslnYGJrZGeblpmhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(139, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYroiMrYxQcop0eLOv', 'eLp+foZ9U3W5gXuigquIenuBfoN4ibq4jYs=', '', 'aJdqZ2E=', 'g6mMUIF9gX+ptGWue7R1e3d0jg==', '', '', 'mslnYGJrZWSYlHqhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.396519', '5.32082', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(140, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgot8q4J/f3l/', 'aJVtUFF5iXaytn2BjKeCeoaHgg==', '', 'aJdrZmc=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZWqblaWhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.2450321', '5.3918283', '61074af86d746360d4431c734fcc4240', '2018-11-05'), +(141, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVitd1J7o318sn58fX0=', 'aJdtUJOnqJ3J15nTloJ4foVThax4fLeljH22iIU=', '', 'aJdpYWM=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZmOblqihk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.3021127', '5.4571905', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(142, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVixd4WMtH5XkVl3g3mBdamBeqKFtn19dw==', 'aZRZUHKOeH+5pliodqdUe3OGjax6fA==', '', 'aJdpYGo=', 'hKWLg3aBf32p', 'f6mFf1F7dIOzrYGvdw==', 'Z5pZYmZYZWmElG+BY5U=', 'msWrn52hoZbMxqTQYNKbm3KapsSfo5PHp6U=', '43.2626722', '5.4216353', '6d3db25bc18e78f08af14f58a4829420', '2018-11-01'), +(143, '', 'g718dXZYg4Cwuo6ifqeCjVKAfqd/i6q2inmve3dYin18hIVxUWE=', 'eLp+foZ9U36ppYG1d7SGeoCBfqg=', '', 'aJdvYGE=', 'g6VZc3qHh3K4', '', '', 'mslnYGJrZmWUl3+hk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.190758', '5.611854', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(144, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtmaBs4x1gYA=', 'aJhuUFF5iXaytn2BdqdUhXNTi6iGjKewgYm2ew==', '', 'aJhxYGE=', 'e6l6hYeBf32p', '', '', 'mslnYGJsZGKdk66hk8VhnJOYp5GcqQ==', '49.3537469', '0.0677997', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(145, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVivhYaKp1l7pYZ1UXx4UbKikqKEp4iB', 'eLp+foZ9U3WpgYSiUqR1jHt/grSLfA==', '', 'aJhtZGE=', 'e7OOhoN9hl6womWld659j4R0h6d7', '', '', 'mslnYGJsZGKdlK+hk8VhnJOYp5GcqQ==', '49.2970159', '-0.3732011', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(146, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi3f3WMsYuAsn5Qfnl6f6k=', 'ap1ZkaedoabJgXy2UphUg4d8hw==', '', 'aJhqYGQ=', 'g62MeXaNiw==', '', '', 'mslnYGJsZGKdmJmhk8VhnJOYp5GcqQ==', '49.1426746', '0.219446', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(147, '', 'g6uNUH2RdnapgXymhYKBfoZ8frWJV7WljYSBeYGKsI4=', 'cIRZgoZ9U4GltoSBdbGGh4c=', '', 'aJhqYGg=', 'g62MeXaNiw==', '', '', 'mslnYGJsZGOblqOhk8VhnJOYp5GcqQ==', '49.1627728', '0.2190316', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(148, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYu4+Gsod1UX+Idquihg==', 'aIRZcYd9gYapgX+mgKeGen5TfahWfqa5hISm', '', 'aJhrYGE=', 'f6mLf4aOfH2wpmW0c6uCjV92haR/iQ==', '', '', 'mslnYGJsZGWWkayhk8VhnJOYp5GcqQ==', '49.2123047', '-0.3427237', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(149, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWIKwhYSBtQ==', 'aISrpZZYhnKwt3mlgbRUen5/frF6fA==', '', 'aJhqZmM=', 'e62PdYRlhoa2joWmhA==', '', '', 'mslnYGJsZGadmqWhk8VhnJOYp5GcqQ==', '49.2805164', '-0.0975869', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(150, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVivhYaKp1l7pYZ1UXx4UbKikqKEp4iB', 'eLp+foZ9U3WpgYSiUqR1jHt/grSLfA==', '', 'aJhtZGE=', 'e7OOhoN9hl6womWld659j4R0h6d7', '', '', 'mslnYGJsZWKUmaqhk8VhnJOYp5GcqQ==', '49.2970159', '-0.3732011', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(151, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6u2eYakhXuLgot4pn58coGG', 'aIRZgoZ9U3awtHmBhrR9iH54jQ==', '', 'aJhqYmQ=', 'gKqM', '', '', 'mslnYGJsZWKXk6uhk8VhnJOYp5GcqQ==', '49.1496346', '-0.3561088', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(152, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWiaa9hYevelJ7sYuLpY0=', 'bJlZUHKOeH+5plird6OCWXV7erF3gw==', '', 'aJlpYGY=', 'eLmLeX2EdHQ=', '', '', 'mslnYGJtY2GUmXuhk8VhnJ6Yq9ClpdmSnqo=', '44.9435449', '2.4598239', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(153, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eK', 'eNqenqadU3WptFiue7B9hneG', '', 'aJtpY2E=', 'g6VZgoB7e3awrX0=', '', '', 'mslnYGJvZGWUloOhk8VhqaGcrcybqdiSnqo=', '46.143788', '-1.162168', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(154, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe6qEhF+iin55sI2AtY51', 'aYSLhXZYd3aEroevhrR5en4=', '', 'aJtrYGY=', 'ibOScX8=', '', '', 'mslnYGJvZGabkoqhk8VhqaGcrcybqdiSnqo=', '45.633603', '-1.018023', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(155, '', 'g718dXZYenaypoqifoJ5jVKHfqZ+hbSwh3+qh4d9goN4p4qFdotTdLOmjbM=', 'aJRxUFGKiHaEq32igIJ2enh5gqiI', '', 'aJxpYmc=', 'ebOOgnh9hg==', '', '', 'mslnYGJwY2GUmIOhk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.0734487', '2.4086062', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(156, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhlioi3eAp4eFsw==', 'idmeUHV9hlG3onqtd7U=', '', 'aJxrYGE=', 'iqWCfoVldH6lr3yOf7GCjYSCh6c=', '', '', 'mslnYGJwY2GWlp2hk8VhqKSfnsSkqpLYp63TqWCe1A==', '46.733637', '2.5082521', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(157, '', 'g718dXZYg4Ozp320hauDh4B4hYOAeKi1jX20VnWHp46J', 'aJRxUFGKiHaEq32igIJ2enh5gqiI', '', 'aJxpYmc=', 'ebOOgnh9hg==', '', '', 'mslnYGJwY2GYk5Ghk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.0734487', '2.4086062', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(158, '', 'g718dXZYg4Ozp320hauDh4B4hYOIfLOpWHuiiYWBsA==', 'ebOOfHaOdIOogXy2Uq91i4OIgrZ3iw==', '', 'aJ1pYWM=', 'i7mFfHY=', '', '', 'mslnYGJxY2GXlYKhk8VhpZugqMqbqpPKqg==', '45.2630378', '1.772271', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(159, '', 'g718dXZYg4Cwuo6ifqeCjVJ/foN5eLi4fYQ=', 'aZZZUIONeFGooo2jd7CIiIA=', '', 'aZVpY2Q=', 'e62Df38=', '', '', 'mslnYGNpY2GVmn+hk8VhnZudqNFkndc=', '47.3125935', '5.0365341', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(160, '', 'g718dXZYg4Cwuo6ifqeCjVJ0h7F3V6+5fIGk', 'aptZoqadU3WpgYSiUq59e3eFjag=', '', 'aZVqZGE=', 'iqmGhYNleH+Roo25gauH', '', '', 'mslnYGNpY2GYmIWhk8VhnZudqNFkndc=', '47.4922843', '4.3382425', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(161, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilJ6p4eAq4d1', 'cJ1ZUIONeFGopli1c651h4Y=', '', 'aZVpYGE=', 'e62Df38=', '', '', 'mslnYGNpZGGdka+hk8VhnZudqNFkndc=', '47.3301533', '5.0175272', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(162, '', 'g718dXZYg4Ozp320hauDh4B4hYOCeIWnhIe0e4SBpw==', 'aJRZUIONeFG0qn2zhKdUhYGHgg==', '', 'aZZtYWE=', 'iqWCfoVlhIalumWxgbSIi3t4jrs=', '', '', 'mslnYGNqY2GalXmhk8Vhq5ehp8ipZcvW', '48.6578941', '-2.8473931', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(163, '', 'g718dXZYenayj321UrZ5fHqBiK9kh7etjn2BiXOBsI1XroiDdoh7UZGBerCFtYl+hg==', 'apxZgoZ9U3upooaBhaOKgnZ0hw==', '', 'aZZsYGU=', 'g6WHfnqHgQ==', '', '', 'mslnYGNqY2KUk4uhk8Vhq5ehp8ipZcvW', '48.7295689', '-3.4554535', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(164, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtlmBs4x1gYBTXoSjh7SFt3mN', 'apxZgoZ9U3upooaBhaOKgnZ0hw==', '', 'aZZsYGU=', 'g6WHfnqHgQ==', '', '', 'mslnYGNqY2KWlIihk8Vhq5ehp8ipZcvW', '48.7295689', '-3.4554535', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(165, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYpH54uYt1eHmFdQ==', 'ZA==', '', 'aZZqYGE=', 'i6V9dX8=', '', '', 'mslnYGNqZGaamoShk8Vhq5ehp8ipZcvW', '48.475527', '-2.016388', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(166, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fLG0gIGve1J/o5I=', 'eNqenqadU3uzrYGwhoJ3joR8fg==', '', 'aZdtYGE=', 'ebOOgnh5gXa5pw==', '', '', 'mslnYGNrY2GUmYKhk8VhpZugqMqbqpPKqg==', '45.954755', '1.749135', '61074af86d746360d4431c734fcc4240', '0000-00-00'); +INSERT INTO `0_tmp_eta` (`id_eta`, `academie`, `nom_eta`, `adresse1`, `adresse2`, `cp`, `ville`, `nom_ref`, `tel_ref`, `email_ref`, `lat`, `lon`, `mdp_ref`, `date_co`) VALUES +(167, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhlikd4J9roV8', 'eNqenqadU36ls32keqOAWX54fK97iag=', '', 'aZhqYGE=', 'eamLd3aKdHQ=', '', '', 'mslnYGNsY2GUmJuhk8Vhm6GlnciXrN2Snqo=', '44.8433876', '0.477406', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(168, '', 'g718dXZYg4Ozp320hauDh4B4hYOGiaqEfH2BeYGKppI=', 'bIRZcYd9gYapgYKwhaeEgXuBfoN4eLCpig==', '', 'aZhrYGE=', 'iqWLfHKMYH2ljnuigKd4eg==', '', '', 'mslnYGNsY2GYmbChk8Vhm6GlnciXrN2Snqo=', '44.8710454', '1.2078708', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(169, '', 'g718dXZYg4Ozp320hauDh4B4hYOEfLG3h4aBg3OGpn6DpQ==', 'bYSrpZZYhXayplioe7R1i3aCjQ==', '', 'aZltYGU=', 'eLl9eX97goa2tQ==', '', '', 'mslnYGNtY2GUkqqhk8Vhm5emmtGZptOSnqo=', '47.4841558', '6.8506077', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(170, '', 'g718dXZYg4Ozp320hauDh4B4hYN5hrOofQ==', 'bIRZgH15dnaErnmzh651kw==', '', 'aZlpYWc=', 'eamMcX97gn8=', '', '', 'mslnYGNtY2GVlZ2hk8Vhm5emmtGZptOSnqo=', '47.2396284', '6.0175599', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(171, '', 'g718dXZYg4Ozp320hauDh4B4hYOKhrq3i3mqhIZYroiMun6ChY2Fdg==', 'b5VZoqCtp5aEpX2BdKeHeoB2iLE=', '', 'aZlsYGU=', 'h7OHhHKKf3qpsw==', '', '', 'mslnYGNtZGSYmp6hk8Vhm5emmtGZptOSnqo=', '46.9137697', '6.3451463', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(172, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYpn5XsGB4doqAeriif6Y=', 'ibl+UHt9dH+EroevgKeI', '', 'aZpvYGM=', 'i6WCfl6EWnmps4WqhqN7fg==', '', '', 'mslnYGNuZGKYmX+hk8VhoKSYp9KYo8qSnqo=', '45.0696901', '4.8604102', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(173, '', 'g718dXZYg4Cwuo6ifqeCjVJ2haiDfLO4WHmle4Q=', 'eifNhHZYdIOttIyqdqdUe4R8erF6', '', 'aZtsYGY=', 'eamLfnKR', '', '', 'mslnYGNvZGackpChk8Vhq6GontFkndc=', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(174, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+peYaOeHOItoKKuH5QdX12g6m1h7U=', 'boRZgoZ9U3WpgYSiUql1i3c=', '', 'aZttYGE=', 'g7OOhnp9hYQ=', '', '', 'mslnYGNvZGeXlX2hk8Vhq6GontFkndc=', '49.2162436', '1.1756802', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(175, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVivhYaKp1l7pYZ1', 'eqz8soV9dIaEpX20Urh1joo=', '', 'aZxrZGE=', 'iqWCfoVlgHK5s4Gkd4+HenuBjZB9fLexeYGv', '', '', 'mslnYGNwY2eclauhk8VhqKSfnsSkqpLYp63TqWCe1A==', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(176, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHupd4KMo4U=', 'aplZUHSAeH6tr1ild7VUg4eGjax5fLg=', '', 'aZ1qaWI=', 'iLmCfYF9hQ==', '', '', 'mslnYGNxY2Gbk4+hk8Vhq5ehp8ipZcvW', '47.9914321', '-4.1187167', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(177, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYrn5XtHqCcnt/drg=', 'aplZcYd9gYapgXymhYJ7hXeBerE=', '', 'aZ1pYWk=', 'iLmCfYF9hQ==', '', '', 'mslnYGNxY2Kcl46hk8Vhq5ehp8ipZcvW', '47.9951465', '-4.1140718', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(178, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYqH6FqYV/fw==', 'aJRuUHSAeH6tr1ild4J/foRgjLd7eLe3', '', 'aZ1rY2k=', 'ebZ+g4U=', '', '', 'mslnYGNxY2SYkYWhk8Vhq5ehp8ipZcvW', '48.3883866', '-4.4687908', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(179, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYroiMrYx1UYV8dKymhA==', 'aJpZUIONeFG3ooGvho+EiH5Ti7KLjw==', '', 'aZ1qYGg=', 'iLmCfYF9hQ==', '', '', 'mslnYGNxY2SYmI6hk8Vhq5ehp8ipZcvW', '47.9905283', '-4.0967632', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(180, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKLo4KFuFl6gIt4gayBZYGFo32HhlOGpIh6', 'bZVZgoZ9U3Olunmzdg==', '', 'aZ1qaGg=', 'erOHc3KKgXaltg==', '', '', 'mslnYGNxZGmUmYChk8Vhq5ehp8ipZcvW', '47.8743528', '-3.9222799', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(181, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWhKa2gX2BeYeKq34=', 'idOupJZYd3aEp4SwhKN3', '', 'apRrZ2E=', 'iqWCfoVlfXalr2Wlh497eoR3', '', '', 'mslnYGRoY2GYkn+hk8VhpqGhrdObo9HNnaqPnKQ=', '44.1140867', '3.8718827', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(182, '', 'g718dXZYg4Ozp320hauDh4B4hYOMhrG4eYGzew==', 'ap1yUFGKiHaEo32tfquCgg==', '', 'apRyYGQ=', 'ha2GdYQ=', '', '', 'mslnYGRoZGOVkXuhk8VhpqGhrdObo9HNnaqPnKQ=', '43.826547', '4.3381004', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(183, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tgneKq35XqY1QhYeIg620haY=', 'aIRZgoZ9U3WpgYSIc6R2flJ9jq97ioWwfYWqiHc=', '', 'apVpYmc=', 'i7OOfICNhnY=', '', '', 'mslnYGRpY2GYl3+hk8VhraGopdKrqsqSnqo=', '43.5971194', '1.4049412', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(184, '', 'g718dXZYg4Ozp320hauDh4B4hYOIfLOpfVijhYCGp40=', 'aIRZcX2E9rqpgXy2Uq59foeHfrF3hbmEhHmnd4s=', '', 'apVtY2M=', 'i7OOfICNhnY=', '', '', 'mslnYGRpY2GZlYqhk8VhraGopdKrqsqSnqo=', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(185, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvindltoF8tn6Ddg==', 'aJpZUIONeFGotlijh6l1jXeH', '', 'apVxYGE=', 'iqWCfoVlenK5pX2vhQ==', '', '', 'mslnYGRpZGKXkoShk8VhraGopdKrqsqSnqo=', '43.1060107', '0.7214231', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(186, '', 'g718dXZYg4Ozp320hauDh4B4hYOGeLeoeYGtfnOG', 'eqx+fXqGU3WpgXqihLGC', '', 'apZpYGk=', 'eLl8eA==', '', '', 'mslnYGRqY2GYkY6hk8VhraGopdKrqsqSnqo=', '43.654689', '0.574914', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(187, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbGzinmBioSBtY14sg==', 'e9OmkZqmmFGoplitc4J3gXOIjLZ7', '', 'apdsZmE=', 'eqWGcn15gXa3jn21X695koB0fA==', '', '', 'mslnYGRrY2GakYShk8Vhm6GlnciXrN2Snqo=', '44.7542351', '-0.4699229', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(188, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV7Kzhoamig==', 'a5RZUHKOeH+5plipd7CGglJ1i7iCg6o=', '', 'apduYGc=', 'g617f4aKgXY=', '', '', 'mslnYGRrY2Gcmoyhk8Vhm6GlnciXrN2Snqo=', '44.9058722', '-0.2406337', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(189, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0ilKFq3x/qYU=', 'aZRZUHKOeH+5pliofoJ4flJ6eriCg6o=', '', 'apdraWE=', 'ebB6foKNeHezs4w=', '', '', 'mslnYGRrZGaYmXyhk8Vhm6GlnciXrN2Snqo=', '44.9113562', '-0.6376981', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(190, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tZIaHt4uAt4Z1UX90hKewf693', 'aJlZgoZ9U3e2ooakgauHWYR0e6iCeK63', '', 'apdtYGY=', 'i6WFdX97eA==', '', '', 'mslnYGRrZWKdk3yhk8Vhm6GlnciXrN2Snqo=', '44.7951077', '-0.5937945', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(191, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWerSyfIezeXeMgoGGuH58fX2FeqmBjLCHtH2Mf3g=', 'aIR6hnaGiHaEs4etc7B4WXaCi6p7g6q3', '', 'apdsYWI=', 'eLZ8cXSAgn8=', '', '', 'mslnYGRrZWKdlX6hk8Vhm6GlnciXrN2Snqo=', '44.6503597', '-1.1618474', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(192, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fIWwWH20iod5q4t8', 'a5VZoqadU3ultn6zd4KGjnZ4hQ==', '', 'apdsaWU=', 'ebB6iXY=', '', '', 'mslnYGRrZWicko2hk8Vhm6GlnciXrN2Snqo=', '45.1253461', '-0.661478', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(193, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV7KzjYSqhA==', 'eLp+foZ9U3WptFiuc7SIkoSGWad7V7GlWIqmiXuLtno=', '', 'aphuYmI=', 'eamTeXaKhg==', '', '', 'mslnYGRsY2GVkpuhk8VhpqGhrdObo9HNnaqPnKQ=', '43.3429502', '3.233546', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(194, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeq2lioSmiVJ8p1l+pY58fX0=', 'apxZUIONeFG2sHqmhbJ9foSFfg==', '', 'aphrYGE=', 'iqmNdQ==', '', '', 'mslnYGRsY2GbmZmhk8VhpqGhrdObo9HNnaqPnKQ=', '43.4105962', '3.679605', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(195, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6yli4yzhVKAsY18sFl3doeFeKm0WKeEp3eBdw==', 'a5RqUFGKiHaErX2BhquIgneB', '', 'aphyZmE=', 'hLOHhIF9f32tpoo=', '', '', 'mslnYGRsZWOWlqKhk8VhpqGhrdObo9HNnaqPnKQ=', '43.6072277', '3.9122869', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(196, '', 'g718dXZYg4Cwuo6ifqeCjVKMj7KEV6ezjYqoe4U=', 'apdZUIONeFGopouBd6WDhXeG', '', 'aplxYGQ=', 'e62HcYN8', '', '', 'mslnYGRtY2GUloqhk8Vhq5ehp8ipZcvW', '48.6253408', '-2.0576512', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(197, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBfYeBroWGuZE=', 'bppZUHKOeH+5plild7VUe4eHjaiJV6mpWHuwe4WFp4w=', '', 'aplwYGQ=', 'iamHfnaL', '', '', 'mslnYGRtY2GXk46hk8Vhq5ehp8ipZcvW', '48.1249814', '-1.6321472', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(198, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYrH54sllycoqH', 'aJRZUIONeFG3ooGvho+EgneFi6g=', '', 'aplvYGQ=', 'ial9f38=', '', '', 'mslnYGRtY2iXk36hk8Vhq5ehp8ipZcvW', '47.64794', '-2.0865407', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(199, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKGsY2JqVl0coV4', 'ibl+UHV9U3Wtr3mv', '', 'aplraWE=', 'iqWCfoVlgHapr2Wtd497i3OBfQ==', '', '', 'mslnYGRtY2mUmIWhk8Vhq5ehp8ipZcvW', '48.1926274', '-2.188228', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(200, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKLtn5XuIF1g32Gdg==', 'aISrpZZYd4aEmViuc6s=', '', 'aplqY2E=', 'g6VZd4Z9hXSspmWld492i3eHeqqEfA==', '', '', 'mslnYGRtZWWYl42hk8Vhq5ehp8ipZcvW', '47.9435083', '-1.2312387', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(201, '', 'g718dXZYg4Ozp320hauDh4B4hYN5f6a4fXm2hHeNqA==', 'b5dZkaedoabJgYqwfq59h3OH', '', 'apprYGE=', 'eLaAdX+Mgn+RtI2zX6WGfoeGfg==', '', '', 'mslnYGRuY2GUlIChk8VhqKSfnsSkqpLYp63TqWCe1A==', '46.5825854', '1.5155027', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(202, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLGmfYq1VnR5u36L', 'cIRZgoZ9U3W5gXuwf691h3Z0h7dWebS5in+wf4A=', '', 'aptpZWk=', 'i7OOgoQ=', '', '', 'mslnYGRvY2GYkYyhk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.3938481', '0.6712742', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(203, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHupd4KMo4U=', 'ibl+UHWNU3SwsIuBdqeHWXl0i6d7ig==', '', 'apttYGE=', 'eLF7f3qLeA==', '', '', 'mslnYGRvZGKWlI6hk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.3993791', '0.9837666', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(204, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilJ/q4WDqYw=', 'bptZgoZ9U3WpgX6wgLZ9j3t/hag=', '', 'aptrZWE=', 'jamCd399', '', '', 'mslnYGRvZGKclaShk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.2963497', '0.740219', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(205, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Gpi3yqfYeBp4t8tw==', 'aJlZUHKOeH+5plijd6OJhnOFfKt3gLg=', '', 'apxpY2U=', 'frZ+foB6f3Y=', '', '', 'mslnYGRwY2GXln+hk8VhoKSYp9KYo8qSnqo=', '45.1675654', '5.7092301', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(206, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVizhXSBsFmKuFmGeoZ2drK1WKV3goR6h38=', 'gLGJcYSLeFGoplitWad7hXuGfg==', '', 'apxrYGU=', 'ja1+fn99', '', '', 'mslnYGRwZGiXmYChk8VhoKSYp9KYo8qSnqo=', '45.525587', '4.874339', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(207, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKEp1l5tn50cg==', 'aJRZcoCNf3a6ooqlUqyJhXeGWal7ibe9', '', 'apxuaGE=', 'eLCFdYd5hXU=', '', '', 'mslnYGRwZGiYkoShk8VhoKSYp9KYo8qSnqo=', '45.3944735', '6.0715723', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(208, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVite4VYsoiJuH6DUXx4UaepebOGtHmOhXg=', 'apxwUJKumJ/Zxlild4KHjXN/grF9iaao', '', 'apxsZGQ=', 'jbOLdYGIeA==', 'gaWOcnaKh1G0wqvEk84=', 'Z5hZZ2dYaGGEk22BaZU=', 'mslnYGRwZGmUln6hk8VhoKSYp9KYo8qSnqo=', '45.2932421', '5.6339295', '61074af86d746360d4431c734fcc4240', '2018-11-15'), +(209, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV629eXuqhIaAp1l9toJxf4w=', 'aoSrpZZYe4qlpIGvhqp5WXiFgqSEiw==', '', 'ap1xYGI=', 'h7OFeXiGjA==', '', '', 'mslnYGRxY2GXlLKhk8Vhm5emmtGZptOSnqo=', '46.8347625', '5.7088023', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(210, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBenOKr3qFuH4=', 'aZdZoqadU3upooaBdKOEjXuGjahWfqameYqzdw==', '', 'a5RqY2E=', 'eqWJcoN9h4Cy', '', '', 'mslnYGVoY2GUlYWhk8Vhm6GlnciXrN2Snqo=', '43.6430052', '-1.4308329', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(211, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHyBd4R7p40=', 'aISJfHJ7eFG3tX2Bg7d9jYZ4i6x7', '', 'a5RxYGI=', 'eK2LdV6LiIORrV+idrGJiw==', '', '', 'mslnYGVoY2GYmIKhk8Vhm6GlnciXrN2Snqo=', '43.6967601', '-0.2687556', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(212, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tZHeMgo2GuYt5hIV4UbqihIF2p1SFgXyLqA==', 'aJttUFGKiHaEooSjd7SIWWN4iw==', '', 'a5VpY2Q=', 'ebCIeYQ=', '', '', 'mslnYGVpY2mdmn2hk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.5720598', '1.3057101', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(213, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWiaqyfVikd4WLq4c=', 'aJVZc3l9gHqygYuie7CIflJ1erV4fA==', '', 'a5ZxYGE=', 'ia2PdV58eF6rqn2z', '', '', 'mslnYGVqY2GWmnyhk8Vhpauip5GcqQ==', '45.5216976', '4.6048949', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(214, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe7qEgHm2ilJ+sYt8vg==', 'ZA==', '', 'a5ZvYGE=', 'jamLgnp9hXa3jn2vX6iDi3eN', '', '', 'mslnYGVqY2Galoyhk8Vhpauip5GcqQ==', '45.571146', '3.996373', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(215, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6epioyBeXOFt4w=', 'apZZcnqLU4O5plild4KAelJ/iKyIfA==', '', 'a5ZwYGU=', 'fa2LfXqGjA==', '', '', 'mslnYGVqY2GblXuhk8Vhpauip5GcqQ==', '45.3883158', '4.2830375', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(216, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4Q=', 'aJxZUIONeFGqs3mvdbF9jFJ6gq+CfLk=', '', 'a5ZtYGY=', 'iqWCfoVldnmlroevdg==', '', '', 'mslnYGVqZGiXl4Khk8Vhpauip5GcqQ==', '45.4548879', '4.5038057', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(217, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhliuhYCGp40=', 'a5lZcoCNf3a6ooqlUqR5i4aFerF6', '', 'a5dpYGE=', 'g6lZgIaRYHayjo6mfqON', '', '', 'mslnYGVrY2GWlYyhk8VhnJ6Yq9ClpdmSnqo=', '45.037181', '3.8870147', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(218, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKCt4WAqYc=', 'boSJfHJ7eFGotli3c66Aeg==', '', 'a5dqYGI=', 'ebaCf4Z8eA==', '', '', 'mslnYGVrY2GZlJKhk8VhnJ6Yq9ClpdmSnqo=', '45.295564', '3.386482', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(219, '', 'g718dXZYg4Cwuo6ifqeCjVJ4hrB3hbqphFikfnN6tIJ8tg==', 'ZA==', '', 'a5drYGI=', 'kLeMeX9/eHK5uQ==', '', '', 'mslnYGVrY2qZlHuhk8VhnJ6Yq9ClpdmSnqo=', '45.1439326', '4.1152496', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(220, '', 'g718dXZYg4Cwuo6ifqeCjVJ6jrxWhLS1jX21Vl9Yp42AqYd+dlh/drKwgbM=', 'aISrpZZYd3aErVimh7SDiXc=', '', 'a5hqZGc=', 'eqx6hHZ5iHO2qnmvhg==', '', '', 'mslnYGVsY2GUlouhk8Vhp5OhrcipZcvW', '47.7274932', '-1.3690037', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(221, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe6qEeoe2fXOBsI+AsIV1', 'aYRZgoZ9U3a5qH2vd4KAfoSCjrs=', '', 'a5hqYGg=', 'haWHhHaL', '', '', 'mslnYGVsY2GXl3mhk8Vhp5OhrcipZcvW', '47.1980598', '-1.5930461', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(222, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYqoiLqYV5dopThLimWKKAsHk=', 'aZlpUHOHiH2pt3mzdoKAeneBh6h5', '', 'a5hvYWY=', 'iqWCfoVlgXK+ooGzdw==', '', '', 'mslnYGVsY2KVmoqhk8Vhp5OhrcipZcvW', '47.2751131', '-2.234379', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(223, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBd4SFo4d7', 'ebOOfHaOdIOogYKmc7BUfXdTgLV3hamxeYG0hYA=', '', 'a5hrZ2E=', 'hKV8eHZ7goaw', '', '', 'mslnYGVsY2SZk42hk8Vhp5OhrcipZcvW', '46.9910112', '-1.8193584', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(224, '', 'g718dXZYg4Ozp320hauDh4B4hYOFg666gX2zVnmNq3x/pYt0', 'aJZZoqadU3WpgYSiUqh1joh4jbd7', '', 'a5hsZWE=', 'frl+gnKGd3Y=', '', '', 'mslnYGVsZGaZkY+hk8Vhp5OhrcipZcvW', '47.3385992', '-2.4243145', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(225, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVild4CBp4VXpot/hYx8drY=', 'esyenZqmU3W5gXuwh7h5h4Y=', '', 'a5hsZGE=', 'ebOOd4Z9gXKttA==', '', '', 'mslnYGVsZWGbkoWhk8Vhp5OhrcipZcvW', '47.187338', '-1.5866796', '61074af86d746360d4431c734fcc4240', '2018-11-14'), +(226, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Ote4etd4VYo4mHqYuE', 'aZhZkaedoabJgXymUq51WXV7iK9/fLep', '', 'a5hwYGM=', 'hraPcYaEhw==', '', '', 'mslnYGVsZWGdlYWhk8Vhp5OhrcipZcvW', '47.2511934', '-1.6075551', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(227, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKEsY6Atw==', 'aoSJfHJ7eFGotlikeqOIfnOI', '', 'a5lrYGE=', 'hLOHhHKKenq3', '', '', 'mslnYGVtY2KUmLChk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.9979163', '2.728651', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(228, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhlile1KEo1mLpYJ8fX0=', 'eNCl89qdU3WpgXq2hKmAfoB6frF8fLGo', '', 'a5lsYGE=', 'h62NeHqOfHa2tA==', '', '', 'mslnYGVtY2iZkY+hk8VhqKSfnsSkqpLYp63TqWCe1A==', '48.1679602', '2.2424772', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(229, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYpn5XsGB/g4R4crKigbQ=', 'aJZuUFGKiHaEpISih6Z5WXZ4e7iJir4=', '', 'a5lqZmE=', 'hrCChnaM', '', '', 'mslnYGVtZGSUlZGhk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.8656903', '1.8803983', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(230, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYs458tnyJXoh4g62oh7N2', 'eLp+foZ9U4OzqH2zUqWDjnZ4i6Y=', '', 'a5prYGE=', 'irOOeX2EdHQ=', '', '', 'mslnYGVuY2aWmnmhk8VhraGopdKrqsqSnqo=', '44.8950333', '1.4700946', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(231, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaaniY2miVJ8p1mJs4ZxhA==', 'ibOOhHZYd3aErn27e7A=', '', 'a5tvYGE=', 'hamLcXQ=', '', '', 'mslnYGVvY2GWmnqhk8Vhm6GlnciXrN2Snqo=', '44.1274306', '0.311799', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(232, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfLKthH2BhneRtnqNrYc=', 'eLp+foZ9U3W5gWmSUrCDj3eAe7V7', '', 'a5xpYGI=', 'hKmHdHY=', '', '', 'mslnYGVwY2GVmqOhk8VhpqGhrdObo9HNnaqPnKQ=', '44.5233613', '3.4833187', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(233, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYtXp6tn5ddId4hrY=', 'a5dZcYd9gYapgXymUq51WXl0i6g=', '', 'a5xrYGE=', 'iqWCfoVldnmprZGOdol1iXV7frU=', '', '', 'mslnYGVwY2eckXyhk8VhpqGhrdObo9HNnaqPnKQ=', '44.8000065', '3.2734124', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(234, '', 'g718dXZYg4Ozp320hauDh4B4hYOJgLKzhn2BjHeBrg==', 'bptZoqadU3WpgYuifrJ9h4Z4', '', 'a51pYWY=', 'eLKAdYOL', '', '', 'mslnYGVxY2GUloihk8Vhp5OhrcipZcvW', '47.448676', '-0.5513816', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(235, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ilfIGBeXOKsIiLhGZQe310f4SjfbOGq4I=', 'aZlZoqadU36ls3umc7c=', '', 'a51tYGI=', 'iqWOfYaK', '', '', 'mslnYGVxY2GZlo2hk8Vhp5OhrcipZcvW', '47.2497658', '-0.0697729', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(236, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYrH54sod1UXx4faWvh7Z3', 'aJVZkqCtn5bawqrFUqx5eoCBfoN6V6a2ew==', '', 'a51sYGU=', 'eqyIfHaM', '', '', 'mslnYGVxY2qUlYuhk8Vhp5OhrcipZcvW', '47.0639942', '-0.8678527', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(237, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYtIh5qYuEUXyCerevfaKH', 'aJhyUFGKiHaEpHm3d659foRTfahWg6aEi3mtgnc=', '', 'bJRpYGU=', 'iqWCfoVlf4A=', '', '', 'mslnYGZoZGOXk6yhk8VhnJOYp5GcqQ==', '49.104919', '-1.0895761', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(238, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7KljYqqeXdYr3qJsHp+dQ==', 'aJlyUFGKiHaEpX20Uq6NfHd4jA==', '', 'bJRtYGE=', 'frZ6foeBf32p', '', '', 'mslnYGZoZGmZkaihk8VhnJOYp5GcqQ==', '48.8308974', '-1.5808397', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(239, '', 'g718dXZYg4Cwuo6ifqeCjVJ4jax7hbOpWIemfn+BpYF8sg==', 'b4SappamqJaEpY2Bf7GCjVJ7frWP', '', 'bJVpY2g=', 'eqx6fICGhl6pr2WkeqOBiXN6h6g=', '', '', 'mslnYGZpY2GUmH6hk8Vhq5ecptZkndc=', '48.9760763', '4.3608078', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(240, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfrq3jHm3e1J9q399qYU=', 'aphZoqadU3WpgYamh6h3gXOHfq8=', '', 'bJVpZmc=', 'iamCfYQ=', '', '', 'mslnYGZpY2GXl4Whk8Vhq5ecptZkndc=', '49.275005', '4.0289347', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(241, '', 'g718dXZYg4Cwuo6ifqeCjVJ3gqd7ibS4', 'aZVZUHKOeH+5plilh4J7en5TfahWfqa5hISm', '', 'bJZrYGc=', 'g6WHd4N9hg==', '', '', 'mslnYGZqY2GWkoqhk8Vhq5ecptZkndc=', '47.847086', '5.3305042', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(242, '', 'g718dXZYg4Ozp320hauDh4B4hYOJi4WpkI2xe4SR', 'b5ZZoqadU3KyooywfqdUf4R0h6Z7', '', 'bJZqYGY=', 'iqWCfoVld3q+qn2z', '', '', 'mslnYGZqY2qWlI+hk8Vhq5ecptZkndc=', '48.6417642', '4.9654701', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(243, '', 'g718dXZYg4Ozp320hauDh4B4hYOIhqepioyBeIeKsYc=', 'bZxZoqadU3OprYSmhbWDi4Y=', '', 'bJdpYWQ=', 'g6WPcX0=', '', '', 'mslnYGZrY2GVlHqhk8Vhp5OhrcipZcvW', '48.0785146', '-0.7669906', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(244, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYqnqMuH5Qd4d/fa20', 'cJVZUIONeFGsoo21d4J6iH5/grY=', '', 'bJdpYGE=', 'g6WPcX0=', '', '', 'mslnYGZrY2GamYShk8Vhp5OhrcipZcvW', '48.0754986', '-0.7868404', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(245, '', 'g718dXZYg4Ozp320hauDh4B4hYN6eLengH0=', 'aYSrpZZYiXK5o3mv', '', 'bJhtYGY=', 'g7OHd4iR', '', '', 'mslnYGZsY2GXk4uhk8Vhp5OhnNxjpMrYsmbHqA==', '49.5232927', '5.7650871', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(246, '', 'g718dXZYg4Cwuo6ifqeCjVKGjaSEgLiweYs=', 'a5pxUFGKiHaEpX2BiKOCfYF4jrmIfA==', '', 'bJhvYGE=', 'ja2FfHaKhl6wpouOgKOCfIs=', '', '', 'mslnYGZsZWOUmX+hk8Vhp5OhnNxjpMrYsmbHqA==', '48.6636741', '6.1529342', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(247, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6athmWnhYeKsIJ8tg==', 'aJZZUHKOeH+5plixhKeHgnZ4h7dWgqqyhn2ljw==', '', 'bJlqYGg=', 'jamLdIaG', '', '', 'mslnYGZtY2GWl32hk8Vhp5OhnNxjpMrYsmbHqA==', '49.1438504', '5.3969853', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(248, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWH+2e3p9sIeG', 'bp1ZUHKOeH+5plild4KAelKAerWEfA==', '', 'bJppYWg=', 'jaWHfnaL', '', '', 'mslnYGZuY2GZlHyhk8Vhq5ehp8ipZcvW', '47.6595336', '-2.7826014', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(249, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYrH54sod1UXxacrakZbSGgn2Piw==', 'aZ1ZoqadU3Kmo32Bf6OGjXuB', '', 'bJpsYGc=', 'h7OHhHqOjA==', '', '', 'mslnYGZuY2Kck42hk8Vhq5ehp8ipZcvW', '48.071834', '-2.960239', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(250, '', 'g718dXZYg4Ozp320hauDh4B4hYOGgKq2in2Be4ZYr3qJrX5QdI2Feqk=', 'aZVZUIONeFGopouBiLGHgHeG', '', 'bJtxYGU=', 'fbZ+iX6BgXiRrn2zfqd2enV7', '', '', 'mslnYGZvY2GZko+hk8Vhp5OhnNxjpMrYsmbHqA==', '49.1530365', '6.8189467', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(251, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6athlinhYeKsIJ8tg==', 'idmeUHaFfH2pgXqwe66KgoA=', '', 'bJtpYGE=', 'hKmNig==', '', '', 'mslnYGZvY2Gakn+hk8Vhp5OhnNxjpMrYsmbHqA==', '49.10305', '6.1761419', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(252, '', 'g718dXZYg4Ozp320hauDh4B4hYODeLe9i32BeHOLtoJ8', 'ibl+UHWNU4Wtt4etew==', '', 'bJtwYGE=', 'f6WScX9/eA==', '', '', 'mslnYGZvY2GbmJKhk8Vhp5OhnNxjpMrYsmbHqA==', '49.3347331', '6.0763366', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(253, '', 'g718dXZYg4Ozp320hauDh4B4hYOJgLKzhlitd4x5tH0=', 'aZlZoqadU3upooaOfKN3iod4jINWgq6pfn6miA==', '', 'bJtrYWY=', 'iqWLgnZ/iHaxqoamhQ==', '', '', 'mslnYGZvY2KUkZKhk8Vhp5OhnNxjpMrYsmbHqA==', '49.1196423', '7.0760763', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(254, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVitd1KItIiNrX11f3t4', 'aISLhXZYd3a3gX6zd7R5jFKAfrZ9jK6y', '', 'bJtrZmE=', 'e61+hYt9', '', '', 'mslnYGZvY2Obmo2hk8Vhp5OhnNxjpMrYsmbHqA==', '48.811771', '6.7203582', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(255, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtll4sn2Cdg==', 'aISLhXZYd3aErV+mea59jHc=', '', 'bJtxZGE=', 'hriNcX9/eA==', '', '', 'mslnYGZvZWKUkpKhk8Vhp5OhnNxjpMrYsmbHqA==', '49.4404073', '6.0177489', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(256, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgot4vYZ/f3xTfrOvfLCA', 'aYSbn6akmKfF05yBdqdUhXNTfah8fLO3fQ==', '', 'bJtpZ2E=', 'hKmNig==', '', '', 'mslnYGZvZmSWkZKhk8Vhp5OhnNxjpMrYsmbHqA==', '49.1065712', '6.2131791', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(257, '', 'g718dXZYg4Cwuo6ifqeCjVKDgqiIiaqEf4GtgneLgn18hIB1f4Z4hA==', 'idmeUHWNU3SzrYevd65Ui3N1gqiI', '', 'bJxrYGc=', 'erOMfnZldoC5s4uOhbeGZn6CgrV7', '', '', 'mslnYGZwY2GVlXmhk8VhnZudqNFkndc=', '47.39989', '2.930161', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(258, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbelhnuwf4VYr4KLuH6Cg3mBdQ==', 'idmeUIGBeIO2pliud7B4foVTf7V3haip', '', 'bJxqYmE=', 'eqx6hHZ5iF6nqYGvgbBcj3t/hahf', '', '', 'mslnYGZwY2aZk4Ohk8VhnZudqNFkndc=', '47.059639', '3.938102', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(259, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fraJfIWofVinhYR9tY0=', 'aJlZkaedoabJgXy2UrKDh4ZTi7KLfqo=', '', 'bJ1sZmQ=', 'eLp+g399hl63toqOeqeAiXc=', '', '', 'mslnYGZxY2GVmZKhk8VhpZufpchkndc=', '50.1210516', '3.9252145', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(260, '', 'g718dXZYg4Ozp320hauDh4B4hYODgKisfYSBiXeKuH6L', 'apVZoJKrppLLxljFl4KgYHuhrciopcbYoafPl56d', '', 'bJ1pYGQ=', 'g62FfHY=', '', '', 'mslnYGZxY2KWloqhk8VhpZufpchkndc=', '50.6282731', '3.0940374', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(261, '', 'g718dXZYg4Ozp320hauDh4B4hYOCeLuzgYuqe4Q=', 'apVZUIONeFGwoo6we7V9foQ=', '', 'bJ1pZWo=', 'ibOOcnKBiw==', '', '', 'mslnYGZxY2KcmoOhk8VhpZufpchkndc=', '50.6947734', '3.1843379', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(262, '', 'g718dXZYg4Ozp320hauDh4B4hYN/g6qEfH2BfH55sH2JqQ==', 'aZhvUHOBhlG1tnmqUqZ5WX50Wad7ia66eYyqhYA=', '', 'bJ1tYmg=', 'eLaGdX+MfHa2pos=', '', '', 'mslnYGZxY2OZmIKhk8VhpZufpchkndc=', '50.6903938', '2.8909382', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(263, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYtXqAso11UYJ4crKvfYF2iXWLdQ==', 'aJlwUIONeFGoplitWaqDjXd/Wad7V7uthISm', '', 'bJ1vYmE=', 'eLmFfoCReF6luoWmhKt5jA==', '', '', 'mslnYGZxZWqWmaWhk8VhpZufpchkndc=', '50.1999263', '3.8303986', '61074af86d746360d4431c734fcc4240', '2018-11-10'), +(264, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVild3+Iq36Jtn4=', 'b5lZkaedoabJgXymUqZ5h3N8hw==', '', 'bJ1sYGE=', 'jaWFdX97fHayr320', '', '', 'mslnYGZxZWqamp+hk8VhpZufpchkndc=', '50.3542409', '3.4991018', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(265, '', 'g718dXZYg4Ott32BgLGIi3dgfaSDfIWofVitd1KItIiNrX11f3t4', 'idmeUHV9hlGrrZGke7B5jA==', '', 'bJ1sZWk=', 'hrZ8eHp9hg==', '', '', 'mslnYGZxZmGYkaKhk8VhpZufpcg=', '50.4806719', '3.2420076', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(266, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtXqAso1QfY12', 'apVZkqCtn5bawqrFUqZ5WX50Wa9/eaq2jH0=', '', 'bJ1tYGY=', 'eqWGcoN5fA==', '', '', 'mslnYGZxZmGakp+hk8VhpZufpchkndc=', '50.169978', '3.2303685', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(267, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtn5XsXqCen0=', 'aYSrpZZYeH6trX2Beqt5', '', 'bJ1rZ2E=', 'eaWCfH19iH0=', '', '', 'mslnYGZxZmGalKKhk8VhpZufpchkndc=', '50.7374752', '2.7319392', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(268, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVi0d3uGtlmHrX6Cg30=', 'aJRZoqadU3W5gX+mgKeGen5TgLKLi66pioqm', '', 'bJ1vYWM=', 'fbOOgn6BeIQ=', '', '', 'mslnYGZxZmKUlZyhk8VhpZufpchkndc=', '50.0083669', '4.0500726', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(269, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLKmioeqiXdYpYuGrZNxhQ==', 'idmeUH55hXSprVixc7eA', '', 'bJ1yZWE=', 'eLl7iQ==', '', '', 'mslnYGZxZ2aXk36hk8VhpZufpchkndc=', '50.4150948', '3.0507573', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(270, '', 'g718dXZYg4Ozp320hauDh4B4hYN/g6qEgn2ihIaR', 'idmeUHKNeoa3tX2BiaN5jXeFeqiIfA==', '', 'bJ1qZGE=', 'e7mHe3aKhIap', '', '', 'mslnYGZxaGWckYShk8VhpZufpchkndc=', '51.030326', '2.361877', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(271, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLSyeYqlVnZ9go+Asnx5', 'idmeUHV9U32lgYqmgKN9jIV0h6Z7', '', 'bJ1qYmY=', 'i7aChHllhnKtr4yOfqd7foQ=', '', '', 'mslnYGZxaGebmZqhk8VhpZufpchkndc=', '50.330411', '3.482308', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(272, '', 'g718dXZYg4Ozp320hauDh4B4hYN8iaaye4eqiVKKo3t8sHp5hA==', 'b5VwUKOtmFGnqXmzfqeHWXSCjrWJfLqw', '', 'bJ1uYGg=', 'e7OOcXo=', '', '', 'mslnYGZxaGmdlYShk8VhpZufpchkndc=', '50.3763701', '3.0684226', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(273, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWibSmfYq3d34=', 'aJRZgoZ9U3WptFiohKeO', '', 'bZRvYGE=', 'ebZ+hXqEYH2pjo6mhLY=', '', '', 'mslnYGdoZGicmIuhk8Vhmp+cntGpZcvW', '49.3639971', '2.4176791', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(274, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6iseYqte4VYpn5Xq3qFfYR4', 'ibl+UHt5doK5pouBdqN7jneFi6g=', '', 'bZRsYmI=', 'erOGgHp9en+p', '', '', 'mslnYGdoZGmalJKhk8Vhmp+cntGpZcvW', '49.3875307', '2.7841027', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(275, '', 'g718dXZYg4Ozp320hauDh4B4hYN8g7S2eVi1iHuLtnqF', 'boRZcYd9gYapgYWmh7B9foRTfahWg6aEinmqgn59tH4=', '', 'bZVvYGE=', 'g6VZdnaKh3aRrnmkdw==', '', '', 'mslnYGdpY2GVmqihk8VhnJOYp5GcqQ==', '48.5938797', '-0.360905', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(276, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYsoJ8tot1UYV4f6imi454tHWHdXg=', 'ibl+UISHeIa2gYWihKt5WXSCgrd/fLc=', '', 'bZVvYGE=', 'g6VZdnaKh3aRrnmkdw==', '', '', 'mslnYGdpY2qdl5qhk8VhnJOYp5GcqQ==', '48.598552', '-0.3492886', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(277, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe7qEfH21iIGBtg==', 'aZRpUFGKiHaEqI2qfq51jn94WaSGhrGwgYaif4R9', '', 'bZZqYGg=', 'eqWFcXqL', '', '', 'mslnYGdqY2KcmYyhk8VhpZufpchkndc=', '50.9393964', '1.8739577', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(278, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWh66pioqmVn99sH18t2Z2g3mBdKk=', 'ibl+UHV9U4Slqoa1UrGBfoQ=', '', 'bZZwYGI=', 'ebaOcYplf3KRo42qhbV9foR4', '', '', 'mslnYGdqY2Kdk5Chk8VhpZufpchkndc=', '50.4872426', '2.5379071', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(279, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6athli0d4h5tJJXkVl6hoR4hISnfbOEuw==', 'aJhZUHKOeH+5plird6OCWYx0kg==', '', 'bZZpYmM=', 'eLaLcYQ=', '', '', 'mslnYGdqY2OZmIyhk8VhpZufpchkndc=', '50.2837422', '2.7478476', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(280, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYpHqMqIJ9gIaHUbeiga+Gj3eBc4WFqIk=', 'aJtZUIONeFG3ooGvhoKBeoeFgqZ7', '', 'bZZpYGk=', 'eLaLcYQ=', '', '', 'mslnYGdqZWKdl5mhk8VhpZufpchkndc=', '50.2941435', '2.7705169', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(281, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtlmHrX6Cg30=', 'bpVZUIONeFGnqXmvhquAhYs=', '', 'bZZqYGE=', 'eqWFcXqL', '', '', 'mslnYGdqZWOVkquhk8VhpZufpchkndc=', '50.943517', '1.8552069', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(282, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eK', 'eLp+foZ9U3W5gXupc7Z5eoc=', '', 'bZZuYmE=', 'g6lZhICNhIaptWWxc7R9jF+DhaR9fA==', '', '', 'mslnYGdqZWmUmIihk8VhpZufpchkndc=', '50.516361', '1.602514', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(283, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf6qyioGBiXeGp5M=', 'ebOOfHaOdIOogX6BdqOGfHp8fLKLibk=', '', 'bZZrZWM=', 'f6mHeX9ldXaltoWwgLY=', '', '', 'mslnYGdqZmSWmX6hk8VhpZufpchkndc=', '50.406364', '2.961933', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(284, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Klin+2e4SBtn5XvYiFg3t4f6Wz', 'bZxZUIONeFGlr4ywe7B5WXZ4WbZ3gLO4WH25i4J9tJI=', '', 'bZZvZmE=', 'eamOhoOR', '', '', 'mslnYGdqZmqUk32hk8VhpZufpchkndc=', '50.5203642', '2.6659653', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(285, '', 'g718dXZYg4Cwuo6ifqeCjVKJerh4eLM=', 'aISrpZZYd3aEo4qmhqN7h3c=', '', 'bZZyYmM=', 'eK2LdV6LiIORrXmOfruH', '', '', 'mslnYGdqZmqckoqhk8VhpZufpchkndc=', '50.6342907', '2.40671', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(286, '', 'g718dXZYg4Ozp320hauDh4B4hYN8iaaye4eqiVKKo3t8sHp5hA==', 'aJdZcYd9gYapgXymUqV8eoR1iLGEgKq2', '', 'bZduZ2E=', 'ebZ6g4R5dl6wpouOf6uCfoU=', '', '', 'mslnYGdrY2GVk4+hk8VhnJ6Yq9ClpdmSnqo=', '45.413519', '3.3214974', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(287, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV5I=', 'jdOilVGKgn6lqoam', '', 'bZdtYGE=', 'eqx6fXKEfHa2pos=', '', '', 'mslnYGdrZGeampChk8VhnJ6Yq9ClpdmSnqo=', '45.7784002', '3.0495417', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(288, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf6a5jH2BjId9', 'eLp+foZ9U3WptFike695jA==', '', 'bZhqZmE=', 'hLOLfHJ5hg==', '', '', 'mslnYGdsY2GYk5Ghk8Vhm6GlnciXrN2Snqo=', '43.3406856', '-0.2758472', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(289, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0ilKOq4d6qYeEUXx4UbSija0=', 'edOunJaulKPIgX2lgbd1i3ZTgaiIia6zjA==', '', 'bZhpZWI=', 'h6WO', '', '', 'mslnYGdsY2KcmoChk8Vhm6GlnciXrN2Snqo=', '43.3050103', '-0.3782568', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(290, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tgneKq35XpoJxg4p8hb6BebV+o4KNe4SOqA==', 'aYSLhXZYeVGuooWud7U=', '', 'bZhrYGU=', 'ea16goOBh4s=', '', '', 'mslnYGdsZGmWlIKhk8Vhm6GlnciXrN2Snqo=', '43.4626859', '-1.5526127', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(291, '', 'g718dXZYg4Cwuo6ifqeCjVJ3foOEeLulioqm', 'idmeUHt5fFGlrXmq', '', 'bZhrYmE=', 'iqWCfoVlfXalr2Wxe6d4ZnZ4ZrOFibk=', '', '', 'mslnYGdsZGmYlX+hk8Vhm6GlnciXrN2Snqo=', '43.1673642', '-1.2319105', '61074af86d746360d4431c734fcc4240', '2018-11-06'), +(292, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fIWwX3mziIGNvHo=', 'aZxZUHOHiH2pt3mzdoKGiHl4i4N5eL+phnm3ew==', '', 'bZlqYGg=', 'g7OOgnV9hg==', '', '', 'mslnYGdtY2GVlYWhk8VhraGopdKrqsqSnqo=', '43.0899002', '-0.0488929', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(293, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg6a5jIqmd3+HsI0=', 'eLp+foZ9U3WEopKmhKd9kQ==', '', 'bZlpYWc=', 'i6WLcnaL', '', '', 'mslnYGdtY2mblZChk8VhraGopdKrqsqSnqo=', '43.227193', '0.055477', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(294, '', 'g718dXZYg4Cwuo6ifqeCjVJ2gbV/irmteYaBeIGNtIqMrYc=', 'a4SappamqJaEr32thbGCWX90h6d7g6Y=', '', 'bZpwYGE=', 'eLaAdX19hl63toqOf6eG', '', '', 'mslnYGduY2qWlY+hk8VhpqGhrdObo9HNnaqPnKQ=', '42.5654607', '3.0059057', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(295, '', 'g718dXZYg4Ozp320hauDh4B4hYN3ia63jIGle1J6tIJ4sn0=', 'aJZZoqadU3W5gXqihLR1gHc=', '', 'bZtsYGI=', 'iqeBeX2MfHispoGu', '', '', 'mslnYGdvY2Gak3yhk8VhrKalmtaYptrWn2bHqA==', '48.6039308', '7.7519037', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(296, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6awfZCihHaKp1l7uYZxhFhbebO1fa17p4Zi', 'bplZoqCtp5aEpY2BhKp9hw==', '', 'bZttYGU=', 'gLCFe3qKdnmRqIqieKh5h4WHeqd7hQ==', '', '', 'mslnYGdvY2GcmH6hk8VhrKalmtaYptrWn2bHqA==', '48.5273882', '7.7311574', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(297, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtn5XuIF1g32Gdg==', 'a4SLhXZYd3a3gXmtfqt5jA==', '', 'bZtyZ2E=', 'hqmLfXqGenay', '', '', 'eslnYGdvZGebmoShk8VhrKalmtaYptrWn2bHqA==', '49.00087', '7.128347', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(298, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVikfnOKrn6KhH11UX6Chqeija12', 'eLCFdXZYd1iltYCmgKeH', '', 'bZtsYGc=', 'iqeBeX2MfHispoGu', '', '', 'eslnYGdvZWeUk4ihk8VhrKalmtaYptrWn2bHqA==', '48.6075759', '7.7099709', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(299, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeq2lioSmiVKIsYKFuH6E', 'bISLhXZYd3a3gYyqhKN9hX54jrWJV7Klioekd3uGtQ==', '', 'bZxxYGM=', 'i6x6fn8=', '', '', 'mslnYGdwY2GblYShk8VhrKalmtaYptrWn2bHqA==', '48.0708933', '7.3367713', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(300, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+zi32xflKLtoiJp4RQWYCChamtgaaEiw==', 'ibl+UHuNf3a3gX6mhLSN', '', 'bZxuYGU=', 'frl+coiBf32psw==', '', '', 'mslnYGdwZGmXmn2hk8VhrKalmtaYptrWn2bHqA==', '47.901203', '7.228875', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(301, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf6qwfYamVnSHt3x/qYs=', 'aJxZUIONeFG2sIumgKR5i3k=', '', 'bZ1vY2I=', 'jamHeYSLfHa5uQ==', '', '', 'mslnYGdxY2GdlHqhk8Vhpauip5GcqQ==', '45.6983536', '4.8905485', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(302, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6u2eYakhXuLgot4pn58coGG', 'eqx+fXqGU3W5gXywdquC', '', 'bZ1uZ2I=', 'e6WLdHqEf4o=', '', '', 'mslnYGdxZmaUlYKhk8Vhpauip5GcqQ==', '45.8161658', '4.7629036', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(303, '', 'g718dXZYg4Cwuo6ifqeCjVJ0gqqLfLelhnym', 'aYRZgH15dnaEqH2whKl5jFJ3jreIfLup', '', 'bZ1xYmQ=', 'eamFfHaOfH2wpg==', '', '', 'mslnYGdxZmiXlYKhk8Vhpauip5GcqQ==', '46.104654', '4.7451788', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(304, '', 'g718dXZYg4Ozp320hauDh4B4hYOGhrO4eYqkfneK', 'h9Cak5ZYfXKnso2mhYJ2i3d/', '', 'bpRpYWU=', 'jamMf4aE', '', '', 'mslnYGhoY2mck5yhk8Vhm5emmtGZptOSnqo=', '47.6354117', '6.1686975', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(305, '', 'g718dXZYg4Cwuo6ifqeCjVJ/jrB/fLep', 'apdZpJaqU6PZxliohKOBhoGBjQ==', '', 'bpRsYGc=', 'g7mRdYaBf16wpouOdKN9h4U=', '', '', 'mslnYGhoZGGbmauhk8Vhm5emmtGZptOSnqo=', '47.8245661', '6.3779426', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(306, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLGpkHmveoR9gn2MsXp5f30=', 'cJlZlaSolJTJgXmtd7p1h3aFfoN6jLKlgYam', '', 'bpVpYWk=', 'hKV8f38=', '', '', 'mslnYGhpY2GckXqhk8VhnZudqNFkndc=', '46.3138226', '4.81663', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(307, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWojVi0d3WKp1l6s36Fgw==', 'aZZZUHKOeH+5plild4J3gXOFiK+CfLg=', '', 'bpVvYGU=', 'h6WLcYplf3aRroeve6OA', '', '', 'mslnYGhpZGiZlrChk8VhnZudqNFkndc=', '46.4500904', '4.125945', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(308, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbqyeZGOfneEp4d8hHt/hnt7drY=', 'aJlwUKOtmFGsj3upc6+EgoGB', '', 'bpZpYGI=', 'g6lZfXKGhg==', '', '', 'mslnYGhqY2GXlY+hk8Vhp5OhrcipZcvW', '47.983707', '0.2262363', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(309, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtY18hHxxhYB4g62vfQ==', 'aZRrUKOtmFGopli0hoJ1jnR8hw==', '', 'bpZpYGE=', 'g6lZfXKGhg==', '', '', 'mslnYGhqY2mWk3uhk8Vhp5OhrcipZcvW', '48.0226076', '0.1787404', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(310, '', 'g718dXZYg4Ozp320hauDh4B4hYN+hrmphIGmiA==', 'bphZoqadU3W5gX+zc7B4WXR0i6V7iaa+', '', 'bpdqaWE=', 'eqx6fH19hl6wpouOd6OJkQ==', '', '', 'mslnYGhrY2GVk4uhk8VhoKSYp9KYo8qSnqo=', '45.5505893', '5.9824276', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(311, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLKmioeqiXdYpYuGrZNxhQ==', 'aZhtUFF5iXaytn2BdqdUhXNThax4fLeljIGwhA==', '', 'bpdvYGU=', 'hLOOhHp9hYQ=', '', '', 'mslnYGhrY2GXkYShk8VhoKSYp9KYo8qSnqo=', '45.4823827', '6.5285805', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(312, '', 'g718dXZYenaypoqifoJ5jVKHfqZ+hbSwh3+qh4d9gol4uYVQeX2FgLmtjA==', 'apRwUFF5iXaytn2BdrdUhoGBjYN5fLOtiw==', '', 'bpdsYGM=', 'iqWCfoVlfXalr2Wld4+BeoeFgqiEhao=', '', '', 'mslnYGhrY2GXmI2hk8VhoKSYp9KYo8qSnqo=', '45.2725731', '6.3502322', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(313, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfIW3eYSmjHc=', 'bJ1ZgoCNh3aEpV+Bd7aGfn91gqiIfLg=', '', 'bphqYGg=', 'eLKHdX55hoSp', '', '', 'mslnYGhsY2GVkYKhk8VhoKSYp9KYo8qSnqo=', '46.1865393', '6.2327195', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(314, '', 'g718dXZYg4Ozp320hauDh4B4hYN+hrmphIGmiFJ+tHqFp4h5hFh1erem', 'b5pZoqadU3WLgXm0gKt5i3eG', '', 'bphqY2c=', 'ebOHfnaOfH2wpg==', '', '', 'mslnYGhsY2GVlYahk8VhoKSYp9KYo8qSnqo=', '46.085247', '6.4103438', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(315, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7iljoeqe1KEp4Z4sg==', 'a5RZkqCtn5bawqrFUqV1i4CCjQ==', '', 'bphrYGQ=', 'i6yIfoCGYH2ptGWjc6uCjA==', '', '', 'mslnYGhsY2GYmJKhk8VhoKSYp9KYo8qSnqo=', '46.37176', '6.4751317', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(316, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+peYaBeoSHt3qFuA==', 'aZRZUIONeFGxpnymhKt3', '', 'bplpYWg=', 'h6WLeYQ=', '', '', 'mslnYGhtY2iUmYWhk8VhqZOlotZkndc=', '48.8806876', '2.3042936', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(317, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeaqwhIGiiHY=', 'aJduUFGKiHaEo32tfqt1i3Y=', '', 'bplpYWk=', 'h6WLeYQ=', '', '', 'mslnYGhtZWeUmXuhk8VhqZOlotZkndc=', '48.8962512', '2.334467', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(318, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvindltoF8tn6Ddg==', 'a5RZUIONeFGwolingbCIenuBfg==', '', 'bplpYWc=', 'h6WLeYQ=', '', '', 'mslnYGhtZmOVmIihk8VhqZOlotZkndc=', '48.8509709', '2.2717481', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(319, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYo4V8vHp+dYp4Uai2haKF', 'aZ1ZcnqLU4O5plild4J3i4GBjLd3e7k=', '', 'bplpYWY=', 'h6WLeYQ=', '', '', 'mslnYGhtZmOZl3+hk8VhqZOlotZkndc=', '48.8338029', '2.3017219', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(320, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWlhHqmiIZYpn5XsY5+', 'aYRZgoZ9U3WLsISqiKeI', '', 'bplpYGg=', 'h6WLeYQ=', '', '', 'mslnYGhtZ2GXkZGhk8VhqZOlotZkndc=', '48.8496888', '2.3196165', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(321, '', 'fKeIfHZYZXWEpX2ohKdUiYSCf5GGia66fX2Be3WHrn6KhImCeo54doSnfbOEo4J9ew==', 'aZxZUIONeFGoplitWaN2e3dTgLV7frStin0=', '', 'bplpYGc=', 'h6WLeYQ=', '', '', 'mslnYGhtZ2KWmn6hk8VhqZOlotZkndc=', '48.8475221', '2.3253994', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(322, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6y5gYStd4eFp1mLrYt1fQ==', 'aZdwUFF6goawpo6ihKZUi3OGiaR/gw==', '', 'bplpYWU=', 'h6WLeYQ=', '', '', 'mslnYGhtZ2Wbl4Chk8VhqZOlotZkndc=', '48.8395407', '2.331148', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(323, '', 'g718dXZYg4Ozp320hauDh4B4hYN3jKy5i4ymVnR5tI1/s4V0eg==', 'bJZZUHKOeH+5pliihKuHjXt3foN4ia6lhnw=', '', 'bppsZmE=', 'eaWLdX+MfH8=', '', '', 'mslnYGhuY2GUmI6hk8Vhq6GontFkndc=', '49.5417002', '0.9569676', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(324, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fLineYq1e4U=', 'aJlwZVFYdYC5rX23c7R4WYB4hbaFhYWxeYale355', '', 'bpptYGI=', 'fal8cX6I', '', '', 'mslnYGhuY2GXl3qhk8Vhq6GontFkndc=', '49.7465344', '0.3872123', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(325, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgbqwfYuBgndYpX6Ksn4=', 'apdZUIONeFGqrX22hLeH', '', 'bppvYGE=', 'g6lZeHKOhXY=', '', '', 'mslnYGhuY2Gak32hk8Vhq6GontFkndc=', '49.4906537', '0.1382278', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(326, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfIWsjYqte1+Op4eL', 'aIRZgoZ9U3upooaBf7GJhXuB', '', 'bpptZ2E=', 'g6lZhIN9g4C2tQ==', '', '', 'mslnYGhuY2KVlYShk8Vhq6GontFkndc=', '50.0566134', '1.3684553', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(327, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWufXmvhHdYpmB4tnw=', 'aZZZUIONeFGotliod7B5i3N/Wad7V6yljYStew==', '', 'bppsYWE=', 'iqWCfoV9YHKos320hac=', '', '', 'mslnYGhuZGiXlpGhk8Vhq6GontFkndc=', '49.501871', '0.089656', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(328, '', 'erOFfHZ/eFG0oo2tUqR5i4Y=', 'aYSLhXZYg3K5rVijd7SI', '', 'bpptYGQ=', 'fal8cX6I', '', '', 'mslnYGhuZGiclnuhk8Vhq6GontFkndc=', '49.7558715', '0.3821548', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(329, '', 'erOFfHZ/eFG2poamUqWDjYs=', 'ibl+UHaFgHKytn2tUq55fIF4jrU=', '', 'bppwYmE=', 'eLl/dnKR', '', '', 'mslnYGhuZGqZl4ahk8Vhq6GontFkndc=', '49.711235', '1.111639', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(330, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKCsYx8tIE=', 'eqz8soV9dIaEpX2Bf6eHh3t4i6iJ', '', 'bpprZ2E=', 'hKmMfnp9hXa3jn2vX6SGeos=', '', '', 'mslnYGhuZWWYk4uhk8Vhq6GontFkndc=', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(331, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6yph4qoe4VYpHqHuIKDhX0=', 'a5VZoqCtp5aEpX2Bdrd3hXN8iw==', '', 'bppsaGE=', 'eqWHhHaEeIY=', '', '', 'mslnYGhuZmOXmH6hk8Vhq6GontFkndc=', '49.4430885', '1.0188297', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(332, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYrn6GtIh8dVh1drCtea8=', 'e7OGcXqGeFGoplitWaOCgHdTgKSIe66phg==', '', 'bptrZmE=', 'eqx6fXp/gYo=', '', '', 'mslnYGhvY2SYk3yhk8VhnKSYrcifo5PKqg==', '48.9818823', '3.1446579', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(333, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6m5WH+2e1J5go2JqYx9dos=', 'e7OGcXqGeFGotlioh6dUelKHi6iJhKq3', '', 'bpttZGE=', 'erOHd3qLYIS5s2W1eqeGiId0h7F7', '', '', 'mslnYGhvZGeZmYKhk8VhnKSYrcifo5PKqg==', '49.021134', '2.9644027', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(334, '', 'g718dXZYg4Cwuo6ifqeCjVJ6frV3iamEfH2BhHeKuHqD', 'b51ZUHSHiIO3gXymhYKGiHV7frZjhbSti4Gmgg==', '', 'bptqaGc=', 'hbOCg3p9fw==', '', '', 'mslnYGhvZGqYkYqhk8VhnKSYrcifo5PKqg==', '48.8417733', '2.615006', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(335, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLO4h4aqhFJ7o4t8sX4=', 'aISJfHJ7eFGrtou1c7h5WXWCjrV4fLk=', '', 'bptqZ2c=', 'iqWPeXiGjF6wpmW1d6+EhXc=', '', '', 'mslnYGhvZWOYlY+hk8VhnKSYrcifo5PKqg==', '48.5955639', '2.578176', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(336, '', 'g718dXZYg4Cwuo6ifqeCjVJ4hqyCgKqEfI2BeXp5tn6DqY0=', 'aplZUHSHiIO3gXy2UqZ1h4d1fg==', '', 'bptwYGE=', 'iqmLgnqL', '', '', 'mslnYGhvZWecmXyhk8VhnKSYrcifo5PKqg==', '48.8574629', '2.7784607', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(337, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6mLgIe1e36Ep4uAqVl1hVh3doS1h7aEq4eGdw==', 'h7B6c3ZYeYOlr3uwe7VUi3N1fq93gLg=', '', 'bpxpZGM=', 'frmScX97goa2tQ==', '', '', 'mslnYGhwZGabmYuhk8Vhr5elrMSfo9HJq2bHqA==', '48.7845521', '2.0504451', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(338, '', 'g718dXZYg4Cwuo6ifqeCjVJ/iLh/ioWmeYukd4A=', 'bIRZcYd9gYapgXy2Uql1hVJ/fqaCfLen', '', 'bpxuYWQ=', 'iaWGcoCNfH2wpow=', '', '', 'mslnYGhwZWaYmpChk8Vhr5elrMSfo9HJq2bHqA==', '48.6410948', '1.8250651', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(339, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6ilhYGtgndYpYV4uX11fQ==', 'aZVZUIONeFGoplitc4KAkoR4', '', 'bpxwYWI=', 'hKWHhHaLYH2ljo6qfq55', '', '', 'mslnYGhwZmaXlIuhk8Vhr5elrMSfo9HJq2bHqA==', '48.9656943', '1.7163952', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(340, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLiEf4qqhoJ9o46P', 'aISLhXZYeHWztnmzdoJ8foSFgrKK', '', 'bp1rYGU=', 'h6WLhHl9gXK9', '', '', 'mslnYGhxY2GdkY2hk8VhqaGcrcybqdiSnqo=', '46.6373951', '-0.2596431', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(341, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe7qEhXmzh4d9sI18tot1', 'aYSLhXZYd4aErnmzc6uH', '', 'b5RqYmE=', 'ibl+', '', '', 'mslnYGloZGiXmn6hk8Vhmp+cntGpZcvW', '50.2684644', '1.674729', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(342, '', 'g718dXZYg4Cwuo6ifqeCjVJ/eoN+hrmzgX0=', 'ibl+UHWNU3OltYevgKt5i1KAeqt/jA==', '', 'b5RpYWc=', 'eLGCdX+L', '', '', 'mslnYGloZGmck4Shk8Vhmp+cntGpZcvW', '49.8964029', '2.2741636', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(343, '', 'g718UHh9gVG4pnupUrKGgoh4WcebqoWxfYyqe4SLgox4rYeEUYV0g7iqhg==', 'bZxZUIONeFGopoSxd6V8', '', 'b5RpZGQ=', 'eLGCdX+L', '', '', 'mslnYGloZGmcmYyhk8Vhmp+cntGpZcvW', '49.8843937', '2.2947937', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(344, '', 'g718dXZYg4Ozp1ixhKuKflKXntZWhKq4gX2ziVKLo4KFuFl9coqHerI=', 'bZxZUIONeFGopoSxd6V8', '', 'b5RpZGQ=', 'eLGCdX+L', '', '', 'mslnYGloZGqYmYChk8Vhmp+cntGpZcvW', '49.8843937', '2.2947937', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(345, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3WKp1l6s36Fgw==', 'appZcoCNf3a6ooqlUqZ5jFJ0h6qCeK63', '', 'b5RrYGE=', 'h6mLf3+GeA==', 'e6mCfH2HgQ==', 'Z5pZYWhYZWmElG2BY5Q=', 'm82rlZSsmKbWoavCldSZZpWintioZNXJqqfPpJdm0J6r', '49.9266205', '2.9343804', '08f888846060a0e207c51183ef4f6871', '2018-10-27'), +(346, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4Q=', 'a5lZUIONeFGwooimi7SDjoV4', '', 'b5VrYGE=', 'hKWTcX59hw==', '', '', 'mslnYGlpZGKYlXyhk8VhraGopdKrqsqSnqo=', '43.5042758', '2.3840172', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(347, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV6mpWIizd3Z9tQ==', 'ibOOhHZYd3aEtYe2frGJjHc=', '', 'b5ZqYGM=', 'eqWMhHaEhnK2s3m0e7A=', 'fbOHdIOBeIS4gYvantidng==', 'Z5pZZmNYZGqEmWiBapU=', 'mslnYGlqY2GUlYKhk8VhraGopdKrqsqSnqo=', '44.0333916', '1.1210607', 'fe510168f18474bb7d01b14cf786718a', '2018-11-05'), +(348, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVixf3eKtH5XsXqCen1ThaymebQ=', 'ibl+UH55hXqpjoqwhadUgHuBfraKfA==', '', 'b5ZpYGE=', 'hLOHhHKNdXKy', '', '', 'mslnYGlqY2Gako+hk8VhraGopdKrqsqSnqo=', '44.0005115', '1.3609696', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(349, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLSyWHqti38=', 'aJVqYVF6goawpo6ihKZUhXeCh4N4g7qx', '', 'b5dpYWI=', 'e7Z6d4aBen+lrw==', '', '', 'mslnYGlrY2GVl6uhk8Vhp5uWnpGcqQ==', '43.5268319', '6.4863031', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(350, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfrSwfmWphYZ9rg==', 'eLCF87p9U3ipsIqod7VUfYeGjKSLfqo=', '', 'b5dtYGE=', 'f71+gnaL', '', '', 'mslnYGlrZGGVlZqhk8Vhp5uWnpGcqQ==', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(351, '', 'g718dXZYg4Cwuo6ifqeCjVJ0haV7ibmEe3mui4U=', 'bJppUKOtmFGspoaze4J7goR0jqc=', '', 'b5dvYGE=', 'fbZ+eoaL', '', '', 'mslnYGlrZGWYkaihk8Vhp5uWnpGcqQ==', '43.4425395', '6.7557437', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(352, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7epf4GwhHOEgnqFsn5dhIeDea2mWLF7pQ==', 'ibl+UHR9hnK2gY6mjLx1h3s=', '', 'b5dpaWk=', 'i7OOfICG', '', '', 'mslnYGlrZGWZlJyhk8Vhp5uWnpGcqQ==', '43.1231905', '5.9313914', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(353, '', 'g718dXZYg4Ozp320hauDh4B4hYN3ia63jIGle1J6tIJ4sn1QWXuChra0YQ==', 'boRZc4CNhYSEooqqhbZ9fXdTe7V/eLOo', '', 'b5hqYGE=', 'hrZ6fnh9', '', '', 'mslnYGlsY2GYl42hk8VhmpurZtCXqdjJoaTNm2Ce1A==', '44.138054', '4.8043634', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(354, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6q8eYaliHdYpo6EpYw=', 'ibl+UHKEg3mzr4umUqx1jnh5i6iK', '', 'b5hsYGE=', 'eqWPcXqEf4Cy', '', '', 'mslnYGlsY2KVlIuhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.8326963', '5.0287304', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(355, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfaq2fIGvd4B8got8uoiFfQ==', 'ibOOhHZYd3aEr5GwgLU=', '', 'b5hvYGI=', 'jaWFgnZ5hg==', '', '', 'mslnYGlsY2iUkX2hk8VhmpurZtCXqdjJoaTNm2Ce1A==', '44.3869971', '5.0111847', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(356, '', 'g718dXZYg4Ozp320hauDh4B4hYN7e7S5eYqlVnSKo4eDvQ==', 'bISbn6akmKfF05yBd6aDjnOFfYN4iaayhJE=', '', 'b5lpYGc=', 'g6VZgoB7e3aRtI2zX7uDhw==', '', '', 'mslnYGltY2GWmY2hk8Vhp5OhrcipZcvW', '46.6743057', '-1.4423294', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(357, '', 'g718dXZYg4Ozp320hauDh4B4hYOMeLGpin2Bg3OMqn4=', 'idmeUHSAdIWpoo2jhKt1h3ZTiK+FhbOpZYuOg3eK', '', 'b5lsZGE=', 'hrCIfn99YIS5s2Wud7Q=', '', '', 'mslnYGltY2GYlIOhk8Vhp5OhrcipZcvW', '46.5121262', '-1.7744359', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(358, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYjw==', 'idmeUHV9U32Eonqjc7t5', '', 'b5lqaGE=', 'eqx6hHZ5iF6oiIetgbCCfg==', '', '', 'mslnYGltY2GYmKihk8Vhp5OhrcipZcvW', '46.4688016', '-1.7295687', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(359, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYsH1XqI5Qg4d2', 'idmeUHSAdIOwpoWiebB5', '', 'b5lpY2Y=', 'g6VZgoB7e3aRtI2zX7uDhw==', '', '', 'mslnYGltY2KXkX2hk8Vhp5OhrcipZcvW', '46.6839462', '-1.42012', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(360, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLiEjH2ziHeLgouGuYB1hA==', 'idmeUHt9dH+Eroe2fquC', '', 'b5ptYGE=', 'eq2PgnKR', '', '', 'mslnYGluY2GVkY2hk8VhqaGcrcybqdiSnqo=', '46.135466', '0.282239', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(361, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWhKa2e1iohXaKq34=', 'aJ1ZoqadU3WptFiud7eGfoU=', '', 'b5prYGc=', 'g7OOdIaG', '', '', 'mslnYGluY2GWk3+hk8VhqaGcrcybqdiSnqo=', '47.0125997', '0.0887223', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(362, '', 'g718dXZYg4Cwuo6ifqeCjVJ/ibJWgr6zjIc=', 'aZpZUHKOeH+5plild4KAelJ5i6SKfLeygYym', '', 'b5ppY2U=', 'h7OChHp9hYQ=', '', '', 'mslnYGluZGWUmaahk8VhqaGcrcybqdiSnqo=', '46.589366', '0.3835721', '61074af86d746360d4431c734fcc4240', '0000-00-00'); +INSERT INTO `0_tmp_eta` (`id_eta`, `academie`, `nom_eta`, `adresse1`, `adresse2`, `cp`, `ville`, `nom_ref`, `tel_ref`, `email_ref`, `lat`, `lon`, `mdp_ref`, `date_co`) VALUES +(363, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHqihoaBtY18hH1xg4Z4hQ==', 'aZxZUHKOeH+5plild4KEfoR8gLh7jL0=', '', 'b5tuYGE=', 'iqWCfoVljIOtpoG5X651ZoJ4i6Z+fA==', '', '', 'mslnYGlvY2GZkoChk8VhpZugqMqbqpPKqg==', '45.5039229', '1.2011306', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(364, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0ilKCp3qF', 'aZpZUIONeFGptn+mgKdUj3OFhayE', '', 'b5tpYWc=', 'g62Gf3h9hg==', '', '', 'mslnYGlvY2qVmpqhk8VhpZugqMqbqpPKqg==', '45.826034', '1.2752724', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(365, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgoN8pYdQfoeBf6m1', 'aJZZUIONeFGwsI2qhYJ1i3+GjbWFhaw=', '', 'b5tpZmY=', 'g62Gf3h9hg==', '', '', 'mslnYGlvZGGXkZChk8VhpZugqMqbqpPKqg==', '45.8517241', '1.292747', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(366, '', 'g718dXZYg4Ozp320hauDh4B4hYOGgKq2in2Bg3eGpn6KhH+CcoZ2dg==', 'aJRpUKOtmFGotli0eqN8WXZ4WbN7ibip', '', 'b5xqZGE=', 'erOHhIN9i3a6qoStdw==', '', '', 'mslnYGlwY2GVlIShk8Vhp5OhnNxjpMrYsmbHqA==', '48.1816153', '5.8951182', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(367, '', 'g718dXZYg4Ozp320hauDh4B4hYN5eLKthISmVnWEo457qYU=', 'aYSrpZZYd4aEsXmzf7GCjQ==', '', 'b5xrYGM=', 'iamGeYN9gICytQ==', '', '', 'mslnYGlwZGKYkYShk8Vhp5OhnNxjpMrYsmbHqA==', '48.015098', '6.5851255', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(368, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVivhYaKp1l7pYZ1UWVThKWqhrVSrIOMd4OB', 'aZdZgoZ9U4Wsqn2zhQ==', '', 'b5xpYWM=', 'fLSCfnKE', '', '', 'mslnYGlwZGaXkYOhk8Vhp5OhnNxjpMrYsmbHqA==', '48.1698014', '6.4530424', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(369, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgoNkplmDeoV4gLKBe6lztHiCgA==', 'apZZUHOHiH2pt3mzdoJ4YHN/jKR5fA==', '', 'b5xtYGg=', 'fqmLcYN8gHa2', '', '', 'mslnYGlwZGealX6hk8Vhp5OhnNxjpMrYsmbHqA==', '48.0732131', '6.8769637', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(370, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilJ9toJ8sod1', 'aYRZgoZ9U32ztoG0d4J5jVJ/frKEV7upioaqiQ==', '', 'b51qYGE=', 'iqmHgw==', '', '', 'mslnYGlxY2GamKihk8VhnZudqNFkndc=', '48.2064106', '3.292908', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(371, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWjaa5enmv', 'aZZZoqadU3elqnypd7R2fg==', '', 'b51pYWE=', 'eLmRdYOKeA==', '', '', 'mslnYGlxY2mVmn+hk8VhnZudqNFkndc=', '47.7982625', '3.5631312', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(372, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYpYF4uH5xhlh3dreBe7CHpoZ6e3iM', 'aYRZcoCNf3a6ooqlUqV8eoR/frZWe6qEf3m2gn59', '', 'cJVtZWE=', 'fLiCf32EeIQ=', '', '', 'mslnYGppY2eWmoihk8Vhr5elrMSfo9HJq2bHqA==', '48.6346885', '2.4661972', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(373, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtXqAso1QgYF4g7am', 'bpRZUIONeFGopliugbCIgHeFiLE=', '', 'cJVxYGE=', 'ebaOfoCR', '', '', 'mslnYGppY2mYlJChk8Vhr5elrMSfo9HJq2bHqA==', '48.6945294', '2.4899385', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(374, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg6q3WHuwineLgn18hI95fYR4c7Ov', 'aoRZgoZ9U3mpr4qqUqeIhXuB', '', 'cJZqaWE=', 'hKmOdICG', '', '', 'mslnYGpqZGadk36hk8Vhr5elrMSfo9HJq2bHqA==', '48.7962179', '2.2213785', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(375, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWi62ph3ywiHdYr4iFs30=', 'aZpZUHKOeH+5plitd7GCWXyCjqt3jL0=', '', 'cJZqZmE=', 'eLKNf3+R', '', '', 'mslnYGpqZGebl5Chk8Vhr5elrMSfo9HJq2bHqA==', '48.7347128', '2.30717', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(376, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ephn2Bd4d+qIt4vQ==', 'aZdZUIONeFGqpoqvc7B4WYJ4ha+FjLmtfYo=', '', 'cJZuaGM=', 'erCCc3mR', '', '', 'mslnYGpqZWKYmoShk8Vhr5elrMSfo9HJq2bHqA==', '48.9032419', '2.299641', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(377, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ilhoywiVJ8t4aGso0=', 'ap1ZoqadU4GltIymh7Q=', '', 'cJZrYWE=', 'iqWCfoVldn2ztnw=', '', '', 'mslnYGpqZWObl5Khk8Vhr5elrMSfo9HJq2bHqA==', '48.8406458', '2.2000954', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(378, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6u2eYakhXuLgot4pn58coGG', 'idmeUHeKdH+nsIG0UrR1e3d/eqyJ', '', 'cJdtZGE=', 'e7mAfoo=', '', '', 'mslnYGprZWKWl36hk8VhnKSYrcifo5PKqg==', '48.949219', '2.417634', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(379, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYsIh+qYeE', 'aoRZcYd9gYapgXymUqyDgoCJgq+CfA==', '', 'cJhqY2E=', 'hbOAdX+MYIS5s2Wuc7SCfg==', '', '', 'mslnYGpsY2SVmoShk8VhnKSYrcifo5PKqg==', '48.8348146', '2.4735748', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(380, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Kzhoyignd5tw==', 'aYR7eYRYhYapgYiqd7SGflKGfrB3iak=', '', 'cJhsZ2M=', 'irl8iV59gV6ms4Gm', '', '', 'mslnYGpsZWKXkX2hk8VhnKSYrcifo5PKqg==', '48.7704516', '2.5182317', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(381, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYrnpXuIiFg1h3hoSueap+', 'bpRZUHKEf/Ttplild4J3iISAfqyCg6q3', '', 'cJlqYWE=', 'iqWHfoCBhg==', '', '', 'mslnYGptY2qclHuhk8Vhr5elrMSfo9HJq2bHqA==', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(382, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLqrjYu1e1J9tXyGqn95doo=', 'bptZUIONeFGoplixe6eGi3d/erx7', '', 'cJlvYWE=', 'fLZ6d3+R', '', '', 'mslnYGptZGeVmYyhk8Vhr5elrMSfo9HJq2bHqA==', '49.021609', '2.1092812', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(383, '', 'g718dXZYg4Ozp320hauDh4B4hYN8gLOzi32tgoE=', 'eLp+foZ9U36lrViti6OJjXeM', '', 'aZRqaGo=', 'eK56c3SBgg==', '', '', 'mslnZmNoY2GUlYOhk8VhnKGlrMhkndc=', '41.9379483', '8.7447941', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(384, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYtXqFq455f3l8g6m0WKJ8o3d8e4I=', 'Z5RZovThpprIxqbElw==', '', 'aZRqaWM=', 'eK56c3SBgg==', '', '', 'mslnZmNoY2eXl5Chk8VhnKGlrMhkndc=', '41.9079623', '8.6320084', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(385, '', 'g718dXZYg4Ozp320hauDh4B4hYOJeqaxeYqwhHs=', 'Z5RZoqad', '', 'aZRvYGE=', 'eaWMhHp5', '', '', 'mslnZ2NoY2GVkpKhk8VhnKGlrMhkndc=', '42.6778189', '9.4408467', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(386, '', 'g718dXZYg4Cwuo6ifqeCjVJ3foN4eLGlf4am', 'eNqenqadU4GltoSBdKuHgHOAe6x9g66l', '', 'aZRrYmE=', 'g4tZeX19YIOztou0dw==', '', '', 'mslnZ2NoY2KWlI+hk8VhnKGlrMhkndc=', '42.6278883', '8.9341411', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(387, '', 'fKeIfHZYZXWEpX2ohKdUiYSCf5FWh7etjn2mVnWHt4uKhIF/hX1/eqmzWKV3gnZ+hXSHpoWF', 'cJxZUHiKdH+oplizh6c=', '', 'aZlpYGE=', 'eamMcX97gn8=', '', '', 'msybcJSnqKPXjqDQpsegopelZ8alpA==', '47.2357313', '6.0271216', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(388, '', 'fKeIfHZYg4Ozp320hauDh4B4ha97V7W2gY6me1J7tot8hI11dIBTebO1fa1Srlt6hH9+tIuAsw==', 'idOupJZYgXK4qoevc655WWNjaZk=', '', 'bpdxYGM=', 'hLOHhH59f3qlrw==', '', '', 'mtihcJKamGiXj57T', '45.5088636', '6.0836174', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(389, '', 'fKeIfHZYhnWEpX2ohKdUiYSCf4OGia66fX2BendYsouGqI5zhYGCf4Sif6KCpw==', 'aJZZkaedoabJgYKmc7BUg4GLfg==', '', 'a51pYGE=', 'eLKAdYOL', '', '', 'm82rlZSsnKDSj5nIk9KZeaehotKkp9TZqqTGpJiZ0Jyckpyfng==', '47.48258', '-0.544013', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(390, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYrH5/pYd+dlh3doSniqKApXk=', 'bYRZgoZ9U3WpgYSiUqiGeoZ4i7F7g7Gp', '', 'bZ1pYGo=', 'g72Ifg==', '', '', 'm82rlZSsnKDSoaTRnMaaZ5il', '45.7693731', '4.8036035', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(391, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtH6Fs46GdnmI', 'eLCF87p9U3SzrXuwf6R5jQ==', '', 'a5ZuY2E=', 'iqWCfoVlenaypou1X655i4KH', '', '', 'nNGinJ2ZoZWS053PodeqnpOoedKomNPLnWbHqA==', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(392, '', 'fKeIfHZYhnansIalc6uGflKDi7J8ZbW2gY6me1KBsIyLrY2FhVh0h6mvgbNSsoaIiHiHpns=', 'a5lvUFF6goawpo6ihKZUjIZTg7KJfLWs', '', 'Z5hqYGE=', 'hKWHf4SJiHY=', '', '', 'oMWpXp6ZoaDX0q3GcsuVqWCUrNalZcvW', '43.8230545', '5.7968341', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(393, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVitd1KOq314uX11', 'eqx+fXqGU3WpgYSiUrh9fXOIfag=', '', 'bZ1uZmQ=', 'iqWCfoVlenayqouOfqOKen4=', '', '', 'o9ShXp2ZqZrIwq3Fl6KrmqCUndKlZcvW', '45.6925289', '4.7800249', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(394, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWufXmvVoSHtX4=', 'aZRZgoZ9U3WpgXupc6N7fg==', '', 'bptqYGo=', 'hKl6hYk=', '', '', 'o9ipXpudlJ/W0KvGcseXpl+gnsSrr5PKqg==', '48.9636247', '2.879841', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(395, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVikfnOFpIt8hHx/flh4hYSqhqWHtYiLe3g=', 'kdOnlVGBgXW5tIyze6eAhXdTerlWf4WEfH2ti3U=', '', 'aZhwZWE=', 'ebOOfHKSdHQ=', '', '', 'o9ipcJSZoKHZ1GbFodSYqJmhnpGZms6Snqo=', '45.1837043', '0.7803082', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(396, '', 'fKeIfHZYZXWEpX2ohKdUiYSCf5GGia66fX2BhnqBroJ5qYuEUY6Fcrk=', 'ibOOhHZYd3a0ooq1d695h4Z0hahWcJs=', '', 'appqY2E=', 'hLOHhHp9hXSsoo2udw==', '', '', 'o92clZaopaDKxqvUm9Gip5efec+XpMbWrKHPm6Shx2ed1g==', '46.828257', '1.765293', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(397, '', 'g7RZc3aGh4OpgXymhYKBiIB4fax7iaq3WH6whHZ5toKGslmAgIWDeqiwjQ==', 'eLp+foZ9U32psIaBiKN3gXeF', '', 'aJ1rZmE=', 'i7Z+eXiGdHQ=', '', '', 'pMmco5SdoaXWxpzGpc+jp5eXosionNikr5nPl5an0Wed1g==', '45.5344485', '1.789945', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(398, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKCsYx8tIFQfV90fqWvfKp3tA==', 'eLCF87p9U3upooaBgqt5i4R4Wap3jLG4', '', 'aJpwYWE=', 'iqWCfoVljIOtpoG5X7WJi192gaSIfLO4fQ==', '', '', 'qsmcopaslKPNwqyhnsOhmqCXosioZcvW', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(399, 'eNGilZ+r', 'h7qHdYU=', 'gNGmlaaan5aErqHNnseioqegWZU= ', 'idmeUHqq9tnSxliroc6dqKZTfNiooMo=', 'bZRvYWE=', 'g8WcoqChq163wqHPpo+Drpeh', 'gSfiovTsoJaEt3yu', 'Z5dZZmVYZWKEmWmBZZM=', 'oNKfn3GooprS1a7KpMmppZdhp8iq', '', '', '69f8c3d85e1812d916449a82f02b7147', '2018-10-24'), +(400, 'eNGilZ+r', 'h7o=', 'idmeUHqq9tnSxliroc6dqKZTfNiooMo=', '', 'bZRvYWE=', 'g8WcoqChq163wqHPpo+Drpeh', 'hcWbmZJYgqvIxp/GpA==', 'Z5VZYmRYZ2aEl2+Baps=', 'pt6dlZidpXHU0KHPptidq5mopchkndc=', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(402, 'h8WrmaQ=', 'faV/eXk=', 'apBZoqadU5XJgaTCUridpZ6YWc9d+u7a++LSq5dY', '', 'bplpYGk=', 'h8WrmaQ=', 'itOpmJqdU3WptHuif7KH', 'Z5VZZGFYZGiEk2iBY5U=', 'qpKdlaSblJ7U1HjHk8idoWCWqNA=', '', '', '307cf97b5d3d88c024f5035fbe55a459', '2018-10-23'), +(403, 'h8WrmaQ=', 'faV/eXk=', 'apBZoqadU5XJgaTCUridpZ6YWc9d+u7a++LSq5dY', '', 'bplpYGk=', 'h8WrmaQ=', 'hc2cn52ZplG4ya3Kns6dnqQ=', 'Z5VZZGFYZGiEk2iBY5U=', 'pZKtmKahn53NxqqhmMOaopphnNKj', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(404, 'eMealPThoJrJgYrGm8+n', 'eqp6UHqmp5bWxfsKosOmrZegntGqmNGE', 'aJZyUJKumJ/ZxlikmsOmpZemWaebV6zFraTNmw==', 'erdZZGFpY2Y=', 'Z5xpYGk=', 'eqx6gn19iXqwrX2Bf6eOgneFfrZW', 'fyfinPTgoZaEqH2ve7A=', 'Z5dZYmVYZmSEkWqBZJZU', 'n8mllZ+dYZjJz6HPcsOgppeUZsmlqdLFrKHQpKVlknFlyqs9Ow==', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(405, 'eMealPThoJrJgYrGm8+n', 'eqp6UHqmp5bW0arQUsaZWZ5aetiYnA==', 'cISrpZZYhaDGxqrVUq2ZpZ6Yq4M=', '', 'aJRqZWE=', 'h7OHhFGLdHqytX2Bf6OGgnc=', 'h8WtopqbmFGmqoalfqeG', 'Z5dZYmZYa2KEkXCBYpNU', 'p8WtopqbmF/GyqbFnsemeZOfpsiXZMvTqqXCqpun0KxklWlel6pAOw==', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(406, 'eMealPThoJrJgYrGm8+n', 'eqp6UHqmp5bW0arQUsaZWZ6UWbCXqdPJ', 'apZZoqadU3PJz6LCn8uiWXilmtGho87S', 'erdwYGFqZA==', 'bJVpYWc=', 'eqx6fICGhlGpr1ikeqOBiXN6h6g=', 'h8yinJqoo5aEt3mvhqqDjoSBiLiKVw==', 'Z5dZYmdYaWqEk22Bapc=', 'p8yinJqoo5aS15nPpsqjrqShqNiqd8jJpqzTm1+Zzp+m1meWo0U9', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(407, 'eMealPThoJrJgYrGm8+n', 'eqp6UHqmp5bW0arQmMenrJuip9Gbo4XInVjNl1KAw66ryWZ9kqqhlg==', 'aISrpZZYdJ3GxqrVUqWVpqem', 'ebRZYmJoYw==', 'bJZyYGU=', 'eqx6hX6HgYWEpH2ld7o=', 'hMWxmZ6dU3Ozs3yqd7Q=', 'Z5dZYmZYZmaEkXGBYps=', 'pMWxmZ6dYZPT05zKl9R0mp6gnsRjndTWpZnVn6Gm1WZslmeWo0U9', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(408, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXuke4KHmpuhrYODmNHTWH7Qq5n7Cquc1w==', 'aJtZoqadU4TN0JvJk9BUhZdThtKro87SWJzWVnanz5qg0p4=', 'ebRZZg==', 'apltY2E=', 'iqWCfoVYfYC5ooaBdqeHWXmIfrV7i7g=', 'hMWrpJqmmFG4s4e2hbV5hVI=', 'Z5ZZaWpYZGqEkm2BZJI=', 'pNirn6arppbQoavCm9CoppOfqMmlrMzJqp3UZJWby2ed1kY6', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(409, 'eMealPThoJrJgYrGoNCZrA==', 'hKqLUIR5fH+4gXm2dKuCWXZaerh4gKyy+8GB', 'a4SanJ373JaExa2Bdc6jrFKGotWbrM7Q', '', 'aplrZWE=', 'isWinqVYdKbGyqaBlol1rpScoNGb', 'fNColJqdU3O2qou0gbA=', 'Z5ZZaWpYaGaEk2iBapNU', 'nNColJqdYZPWyqvUodB0ppilZ8SpqtSSnqo=', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `181010_eta` +-- + +CREATE TABLE IF NOT EXISTS `181010_eta` ( + `id_eta` int(11) NOT NULL AUTO_INCREMENT, + `academie` varchar(250) NOT NULL, + `nom_eta` varchar(250) NOT NULL, + `adresse1` varchar(250) NOT NULL, + `adresse2` varchar(250) NOT NULL, + `cp` varchar(250) NOT NULL, + `ville` varchar(205) NOT NULL, + `nom_ref` varchar(250) NOT NULL, + `tel_ref` varchar(250) NOT NULL, + `email_ref` varchar(250) NOT NULL, + `lat` varchar(100) NOT NULL, + `lon` varchar(100) NOT NULL, + `mdp_ref` varchar(250) NOT NULL, + `date_co` date NOT NULL, + PRIMARY KEY (`id_eta`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=400 ; + +-- +-- Dumping data for table `181010_eta` +-- + +INSERT INTO `181010_eta` (`id_eta`, `academie`, `nom_eta`, `adresse1`, `adresse2`, `cp`, `ville`, `nom_ref`, `tel_ref`, `email_ref`, `lat`, `lon`, `mdp_ref`, `date_co`) VALUES +(1, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gNKspJqsqKWExZ2BeNGmppOnotKkV67SrJ3TpqSnyJ6q16Kfn6aYnYTFnYGeiXWlnpye1VZkha1+gYFmZQ==', 'aJVZoqCtp5aExZ2BgsOmoqU=', '', 'Z5dpYGE=', 'eLp+gn59hg==', 'i8yilaOqrFGwsIqmc7c=', 'Z5hZZ2FYZmaEkmuBZ5g=', 'q5Kln6OdlKakyp7KYpVinKGgRm0=', '46.5796468', '3.322737', '701fc0eb7f26663b30ab0eea6c584cc7', '0000-00-00'), +(2, 'eMealPThoJrJgYvVpMOnm6Goq8o=', 'eql/gIF5U3LI06HGoIKOnp6fntU=', 'bptZoqCtp5aExa2BhMqdpw==', '', 'bZttYGE=', 'gLCFe3qKdnmEqIqieKh5h4WHeqd7hQ==', 'fdaanpSjU4SprYSqd7Q=', 'Z5dZaWFYZ2GEkW2BY5JU', 'ndeenJ2hmKOkxJ3HotKVZ5eoRm0=', '48.5254008', '7.7313112', 'f80048c2fba58bbf62d863308e64070f', '0000-00-00'), +(3, 'eMealPThoJrJgYvVpMOnm6Goq8o=', 'eqp6UJWdU32LqfsVpsegpZeloshWicrXrJnWqJOsy6ilhJ2VUXuCfbGiig==', 'bISrpZZYl5aEzZmBecOmng==', '', 'bZxpYGE=', 'erOFfXKK', 'fLCCg3J6eIWsgYOmdao=', 'Z5dZaGpYZWGEkWmBZZM=', 'nM+ek5l4lpfFyafVpMenrV+WqM+jmNeSm6fOVj9C', '48.0757811', '7.3496995', 'b27bab650cee4eb3229ae4c969a2c89b', '0000-00-00'), +(4, 'eMealPThoJrJgXrQpMaZmqer', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1Vmb2Vl3o5mhlYSjndOZx6aalaKi1g==', 'aJRyUKOtmFHI1lilocWonqelWbWlrN0=', '', 'aZhqYGE=', 'eamLd3aKdHQ=', 'gcmanl5+lJPNxqaBdqt+iIU=', 'Z5lZZWRYZWOEk2mBZJNU', 'nciimqCrc5TKwmXDl9SbnqSUnJGcqXJu', '44.8615169', '0.4970759', 'e34b4d65364646a23b1c6ea1b401951f', '0000-00-00'), +(5, 'eMealPThoJrJgXrQpMaZmqer', 'eqp6UJWdU53FgXuwf6+Jh3OIjahWe4ylf3+thX99tHqLrYh+UYh0ireBeqKFs4l+', 'bpdZgoZ9U3OztoqogKeJfw==', '', 'bZhqYGE=', 'eaWSf3+GeA==', 'fNaik1GEdH+os4Gmh7o=', 'Z5lZZWpYZWaElHCBYpI=', 'msqaXpSnp5bGwqvSp8eVnaGoq6OZptLRrabCq6adj6mY3aySkqukpsmPntM/bA==', '43.4916513', '-1.4710843', '53784ce374cf1161046a54d5a6e30bb5', '0000-00-00'), +(6, 'eMealPThoJrJgXrQpMaZmqer', 'eqp6UJWdU53FgXuke4KYnlKfmoN6ptfIp5/Pmw==', 'V8WvlZ+tmFGsxqbTq4J4np6onA==', '', 'aZhwZWE=', 'ebOOfHKSdHQ=', 'esWtmJaqnJ/JgYqigLGJkQ==', 'Z5lZZWRYZmaEmGqBaZRU', 'mpKrkZ+nqKmkxJnOotenZ5aiq8elntPJZpvEn2Ce1EZB', '45.1800498', '0.7764986', '7e8b4a758d9d859a67e7284525a94dd5', '0000-00-00'), +(7, 'eMealPThoJrJgXrQpMaZmqer', 'gKd/cQ==', 'aJRZoqadU4PJz/sKUqWVrKWcpw==', '', 'apdpZGo=', 'ebOLdHZ5iImEgXumdqeM', 'icWpmJL73p2Eooqje7B1WQ==', 'Z5lZZWdYamqElmqBZZRU', 'qcWpmJKdn1/F05rKoMN0n6GlpsSqoNTSZaTCmWCb0aZEbg==', '44.8763099', '-0.574371', 'd246dde158c10a912f9fd85e8a7e27e2', '0000-00-00'), +(8, 'eMealPThoJrJgXrQpMaZmqer', 'ecWso5qmU3fT06XCpsujp1J2iKV3ig==', 'aISbnJVYl5bXgYXKo9eZpaGnrA==', '', 'apdrZmE=', 'g6VZhHaLh3aEpX2BdLd3gQ==', 'h8Wsk5KkU3ilr3mv', 'Z5lZZWhYaGOEmGqBa5JU', 'p8uanpKmc5PF1KvKoMijq5+UrcylpZLHp5rCqWCe1EZB', '44.6101511', '-1.1468639', 'f638a3b3887d6115d170260e25509311', '0000-00-00'), +(9, 'eMealPThoJrJgXrQpMaZmqer', 'esmnpKOdU5XJgX7QpM+VrZuip4OanNiEpfsKqpud1KxXyJ5QnZlTdMzCpcOkx1Sdl1OGJt+rzsmqq4F3o63LrZjNp5VRq5iU2Mqnz1Kuo61SmK2DfZjX06amxg==', 'V82moJKrppaErqfT9Qqmng==', 'erdZZ2FpZGk=', 'a5tpYGU=', 'eKt+flF7eHWpuQ==', 'hMWrmZKmnJTPgYWifqeIWQ==', 'Z5lZZWRYamiElW+BaZdU', 'pMWrmZKmnJTPj6XCnseoeZWgmpdtZcvWRUI=', '29.9450835', '-90.1261013', '7e6edd078254b49416194b3978854c27', '0000-00-00'), +(10, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gKqJgA==', 'b4SrpZZYg5bWxaHIp8uZqw==', '', 'aJlpYGE=', 'eLmLeX2EdHSE', 'hNmrmZakU3Slr4c=', 'Z5hZZ2JYaWSEmWmBapNU', 'mtOnpJKbp3HNx6jRY5dinKGgRm0=', '44.9007392', '2.435895', 'ba25bcdcc794c55c84d9be10dd75b6f5', '0000-00-00'), +(11, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gNKspJqsqKWExZ2BeNGmppOnotKkV7XWp57GqaWh0aelyaWcllhnZA==', 'V6d/cVGBoaXJ06jTociZrKWcqNGknNGEnJ2BfpOt1p5ksKiZo51TfcnUWLql1ZmtpQ==', '', 'a5dsZ2E=', 'eaWCfoQ=', 'hMWrk1F6gnq+sIw=', 'Z5hwYWZvbGmUkQ==', 'mMymlZVmmJ3F1aHCns6VoXKcn9NqapPKqkVr', '45.012318', '3.787333', '917ddb1bcb5aeeae2a6a8640dd4970c5', '0000-00-00'), +(12, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gNKspJqsqKWExZ3UUq/34qacntWp', 'V9aulVGcqFGnyfsDpseVrlKXntZWjcrWn6bGqQ==', '', 'bZdpY2o=', 'erB+gn6HgYWEp32zhKOCfVJ2fqd7j4WW', 'gcmanl58lJ/NxqSBeaN9hX54', 'Z5hZZ2RYZWSEl2iBYpI=', 'mtOnpJKbp3HNz6vVm9aprV+gntefnNfXZp7TQzw=', '45.8121203', '3.1290247', '5dc4588080196276efd54d8552cb8dcc', '0000-00-00'), +(13, 'eMealPThoJrJgXvCl9A=', 'gKd+gF57eXKEpJ3PptSZWZaYWamlqdLFrKHQpFKciXqn1KuVn6ycpITFndRSpZyan5WryKlXyclYe9Cjn53UnJyEnqRRnFp60sWt1KbUnZ5Sl56DeZjK0liG0KifmdCdoMlZlaVYl6aEsZnapYKYYHOooMg=', 'b4SrpZZYdp3F1pzGUqSgqJWb', '', 'aJhpZWQ=', 'eqV+flF7eHWpuViV', 'eNKnmZZYf5bW0K3Z', 'Z5ZZY2JYZ2eEmG2BZ5Q=', 'mMehlaeqmJ2RzZ3TodeseZWUntFkmsjNZp7TQzw=', '49.2096338', '-0.3596637', '666e25b3212a558840f9e6ab583f9b1a', '0000-00-00'), +(14, 'eMealPThoJrJgXvCl9A=', 'ftaopaGdU3etrg==', 'b5pZoqadU5XJgaSId9qjnZc=', 'ebRZY2pu', 'bJRpYGc=', 'iqWCfoVYf4CEpH2ld7o=', 'itj82aGglJ/Nxli1gbCIgg==', 'Z5ZZY2RYamiElWuBZ5I=', 'qtieoJmZoZrJj6zQoNadeaCiq9CXpcnNnWbEmZtmyKtEbg==', '49.1103291', '-1.0907282', '7ea7920e876c5348f393412d66500c03', '0000-00-00'), +(15, 'eMealPThoJrJgXvCl9A=', 'aoSCdnJndn6qooc=', 'V9aopaWdU5XZgYXCoNU=', 'ebRZYWFu', 'bZVpYGQ=', 'eLB+fnSHgVHHxpzGqg==', 'edaunqBYgXqnsISm', 'Z5ZZY2RYZWmEmG6BaZhU', 'mdKik6CkmHGXyp7CYMimRjw=', '48.410061', '0.092114', '2aa49d077bb1c97b4476db3897fdd4f6', '0000-00-00'), +(16, 'eMealPThoJrJgXzKnNGi', 'eLSLcXeHU16EpH6iUrKjpaupms+bpdk=', 'aZVZoqadU5XJ1Fikk9SmovXbq8ip', '', 'bJxqaGE=', 'hKWLioo=', 'it2lppqdU36ptoymfqeI', '', 'qpKmlaasmJ3J1XjEmMOkppOls9xkmtTRRUI=', '46.98059', '3.0932559', '59f3dba5e1b2f7aa45ed7e1993178807', '0000-00-00'), +(17, 'eMealPThoJrJgXzKnNGi', 'eqp6UH15U3+ztn2BdLGJi3mCgLF7', 'aIScmJalnJ+ExZ2BnsNUh6Gong==', 'erdZYWFoa2E=', 'aZVvYGM=', 'g7OHd4eBdlGnxpzGqg==', 'e8mloJmhoZaErH2ziKOGfnU=', '', 'm8+eoqeZpZbHoZvHk86Vp6GonpGZptJxQg==', '47.2924959', '5.0339374', 'b573690641842a7b0bfb1b2b425f469a', '0000-00-00'), +(18, 'eMealPThoJrJgXzKnNGi', 'eq1/cVGCmJLSgYTCn8egqJumng==', 'aJtZpqChmFG20KXCm9CZ', '', 'bpVvZGE=', 'hKmLc4aKeIo=', 'edail5qsp5aEq320haOJhnc=', '', 'mZKjlaSrlKbRxnjEm8iVZpyYmtFjo8bRnaTQn6WdkJym0Vk9Ow==', '46.8355257', '4.7021483', 'a2f943c3d3b929f063bfdab2edf13492', '0000-00-00'), +(19, 'eMealPThoJrJgXzKnNGi', 'eq1/cVFwbFGRgXvGoNamnlJ8p9ebqdXWp57GqaWh0aelyaVQlZ1Td9PTpcKmy6OnUpdgpKan18mmrMqp', 'aoSrpZZYfZbFz1ijl9SooqA=', 'ebRZYWlx', 'b51pYGM=', 'eLmRdYOKeFGnpnymig==', 'hMWrk5akU3ezr4yjgbCCfg==', '', 'm82rlZSsnKDSoZvKmMOtqKChnpGZptJxQg==', '47.8081599', '3.5789499', 'b28a13c60926aa051a41b1df622ed648', '0000-00-00'), +(20, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXuuc4J4foVTfLKKfLiEfF+iiH+HtFlkhKyZpZ2mUcjGWLGe0amfpJSgxKRXythYfMqkk6Y=', 'V4R8kZ6oqKSExZ2Bnol1q6acrMSkmNmEnayBmpergqb6Da2Zlqqm', 'erdZaWFoaGI=', 'aZZtZGE=', 'h7CIhXeKdHilrw==', 'ecmrpKOZoZWEs4ejd7SI', 'Z5ZZaWdYameEk2+BZJk=', 'mZKrn5OdpaWkxKXCZJRin6RAQw==', '48.479508', '-2.801797', 'e051ba998391b0f0914dd113a19206e9', '0000-00-00'), +(21, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYx61XyJ5QnV90o9jKq8Kgw6hZlqhZqZ+lztes+wmolw==', 'aZhZoqCtp5aExZ2BddeuqKA=', '', 'aZ1qaWc=', 'iLmCfYF9hVGnxpzGqg==', 'h8Wsk5KkU3SlpYGmhw==', 'Z5ZZaWlYameElW6BZpg=', 'p8Wsk5KkYZTFxaHGp6KXppNlcpGcqXJu', '48.005729', '-4.0788844', '9d730204d16227d7896204eda296d6ca', '0000-00-00'), +(22, 'eMealPThoJrJgYrGoNCZrA==', 'gKp6c1F7lJ7U1quBlsenWX/24tefnNfX', 'a5puUKOtmFGExZ2BfcempZOoq8ikqw==', 'ebRZY2FoZmg=', 'aZ1xYGI=', 'ebZ+g4VYdnaoppCBaw==', 'hdOrkpaqp1G0poa3d7SC', 'Z5ZZYmpYY2GEl2iBaJI=', 'pdOrkpaqp1/UxqbXl9SieZiiq9CXq87TpmbDqJesw6ClyWafpp2mpZLEm8pgxK6hPz0=', '48.4210564', '-4.4469363', '4207ef5731919230827cc97038165868', '0000-00-00'), +(23, 'eMealPThoJrJgYrGoNCZrA==', 'fcWcpZ2s9tqExZ3UUs/34qacntWpV5KEe3uqVnin1KaY2KKfn1iFltLPndQ=', 'V9aulVGcmKSEp6ok2tSZrFKAqNGqntTQnqHGqA==', 'esWmoKarU5XJgYPGpIKAmqCh', 'aplqZ2M=', 'ebaOilF7eHWpuQ==', 'jc2nk5amp1GmsHqwhg==', 'Z5ZZaWpYY2aElW2BZJQ=', 'rcaokqCsc5fFxGXOl9adnqSmZ8moRG8=', '48.0433412', '-1.7432743', '2fbaeb5bdec42c9df28a9db38e1a8a20', '0000-00-00'), +(24, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYx61XyJ5QnV90o9jKq8Kgw6hZlqhZsKWpx82gmc8=', 'aJRZkp2cU1HIxquBe86ZrA==', '', 'bJppYGE=', 'jaWHfnaLU3SppX25', 'etCapZWhoZaEqHmxe6p1hw==', 'Z5ZZaWhYaWSEmm2BY5VU', 'mtCapZWhoZaSyJnRm8qVp3KWpsRjpNTWmqHJl6BmyKtEbg==', '47.652681', '-2.786379', 'c167a1e3f9d636575f8a9059b25384a9', '0000-00-00'), +(25, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXuke4KYrlKAqNWYoM3Fpg==', 'aZVZgaaZnFGEpX20UquCfXeG', 'erdZY2FraWM=', 'bJpsYmQ=', 'g7OLeXaGh1Gnpnymig==', 'gNeakpakn5aEo4e7d6U=', 'Z5ZZaWhYY2OElWiBYpI=', 'oJKbn6udlnHR0KrDm8qVp2CWnMxknddxQg==', '47.745499', '-3.358539', 'c5d855ca649c2e8c295d10ca35a06600', '0000-00-00'), +(26, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmbyaxQdKCUnsbTndRSxplZf/bi15+c19dkWMWbUnvRpqTJq5OWWJilhMVfqqDGqaympaLIVpvahHugxqg=', 'aJhyXWJtZFHW1p2BlsdUjaelpdw=', '', 'aJxpYGE=', 'ebOOgnh9hg==', 'hc2cn52ZplGxpou1hKc=', 'Z5ZZZGlYZWSElmuBaZVU', 'pdGeo6WqmHHHx5mOlNGpq5mYrJGcqXJu', '47.1024983', '2.4231806', '8654a259aa45f6e03c5a61ab619ede96', '0000-00-00'), +(27, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UHqGh3a2sYqwUpRsWV9TfMuXqdnWnas=', 'V9aulVF7m5LWzZ3UUqunopaiq8hWe9TZoaY=', 'erdZY2FwZGo=', 'aZxpYGk=', 'eqx6goWKeISEpH2ld7o=', 'f8mrpvThU4WptIumhKd1jlI=', 'Z5ZZY2hYbGKEl26BaJhU', 'n8mrppZmp5bX1J3Tl8OpeZWZmsykq8rWqKrQY2RwkJ+phEY6', '48.4300803', '1.4992267', '4420edf0eb38eae6b01b2bcc5a753b8d', '0000-00-00'), +(28, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UHSFdFHIxljNWauinaSY', 'aJptUJKumJ/ZxlirocqiWX2Yp9Gbm94=', 'ebRZZmY=', 'apppYGM=', 'eqx6hHZ5iIOztpCBdad4foo=', 'e82dmZaqU3fJ06rCmdeo', 'Z5ZZZWVYY2mEmGiBYpNU', 'm82dmZaqYZfJ06rCmdeoeZWZmsajapuSnqpuQA==', '46.7969869', '1.6914131', '37867ad3300abdfb5985a2dccb732384', '0000-00-00'), +(29, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UIehn53JgZzGUrajrqSm', 'b4SanJ373JaEgYrQmcemWX6YnNKqqygN', '', 'aptqYGE=', 'i7OOgoQ=', 'hMWrmZZlfaCEo4ele7BUnqZThtKkqs7JraqBfqGZ1J6Y2Vl2lqqhktLFWA==', 'Z5ZZZGhYa2mElmmBYpJU', 'm82rlZSsnKDSoZvHk4+oqKelrJGcqXJu', '47.417464', '0.7060995', '141bd287e1f4ee94a5b51008e9761797', '0000-00-00'), +(30, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmbyVmcklh2mcXOmtOXgpieUoD8DKqgytarWMaqUpzHWaOLeqKloaaS0sKsgZbHVIWhnKuDm6uFp6Cd0w==', 'aJZZoqadU3fWwqYk2dGdrFJ1os+iptrc', '', 'a5VpYGE=', 'ebCIeYQ=', 'fdaanpSjU3Ssonqih66I', 'Z5ZZZWVYamWEkmiBapI=', 'nZKcmJKalKbQ1XjEmMNoamCZq3BA', '47.6079918', '1.3225097', 'd57c5daa49603b6c9d67520ca4603430', '0000-00-00'), +(31, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UJWdU53FgZvJk8+Wq5dTncipV9In4azKm6Srgp6rhJ2VUaRaktbVodST0JWtUpeug4KmztadrA==', 'bISrpZZYdpnF06TGpYKE/Nuartw=', 'ebRZYWpqag==', 'a5lpYGo=', 'hraFdXKGhlGnpnymioJl', 'gSfiovTsoJaErIepgA==', 'Z5ZZY2lYaWOEmG2BZJs=', 'oZKkn5mmc5TKwpvOZpdin6RAQw==', '41.2033216', '-77.1945247', 'e980b7fc968f5acecec0264d7bdb396d', '0000-00-00'), +(32, 'eMealPThoJrJgYrGm8+n', 'eqp6UHqmp5bW0arQUsaZWZ6UWbCXqdPJ', 'apZZoqadU3PJz6LCn8uiWXilmtGho87S', 'erdwYGFqZA==', 'bJVpYWc=', 'eqx6fICGhlGpr1ikeqOBiXN6h6g=', 'j8WvmZaqU3ewrnmjc7R4', 'Z5dZYmdYaWqEk22Bapc=', 'mtOnpJKbp3HFzaXGk4+aqKSgmtefptPXZp7TQzw=', '48.9478264', '4.3445825', '1ade60957e2069e054555238c50d06ac', '0000-00-00'), +(33, 'eMealPThoJrJgXvQpNWZ', 'eqp6UJWdU3nF1qzGUqWjq6WYWa2bmNORgpnEp6ed1VmFzZyfnZmc', 'V9aopaWdU5XZgY7Kns6VoJc=', '', 'aZRvYGE=', 'fbmLeXKGfA==', 'j8WvmZaqU325pIGigKtU', 'Z5hZaWZYaGqEk2iBZZI=', 'mtOnpJKbp3HHx5mTlJCaqz89', '42.657717', '9.4264932', 'd92950e9957bd37b4ee64dbdba8b7701', '0000-00-00'), +(34, 'eMealPThoJrJgXvQpNWZ', 'esmnpKOdU5XJgX7QpM+VrZuip4OanNiEeajRqJem1qKqhI6emq6Yo9fKrMKb1JlZl6FZ1fngzM2npoF5oarVng==', 'V6WvlZ+tmFHI1liaUtWZqaaYpsWonIWunZnPVoan16yqxa1QdX2GcrK1gYE=', '', 'aZRrZWE=', 'erOLhHY=', 'esyrmaSsoqHMxli0hrGGens=', 'Z5hyZWVtY2OYmA==', 'qtioopKhc5TKwq3Pm9iXqKSmnpGcqXJu', '42.3004713', '9.1533506', 'fd261675e890639de5621a0093155379', '0000-00-00'), +(35, 'eMealPThoJrJgXvQpNWZ', 'esmnpKOdU5XJgZ7QpM+VrZuip4OanNiEpfsKqpud1KxXyJ5QnZlTdNPTq8ZSxqlZhaid', 'V8ehlZ6hoVHIxljNk4KHqaGmmteX', 'g82epVGcnKWEo5nElcujnJqc', 'aZRwYGE=', 'eK56c3SBglGnxpzGqoJkcg==', 'h8yinJqoo5aEpX20e7R5', 'Z5hnaWZmZWSSlmuPY5Y=', 'p8ieo5qqmHHHx6WOk8yVnJWcqJGlqcxxQg==', '41.947985', '8.7568963', 'd1c79bc350e7fcc85c5c9e3c68fdc1e4', '0000-00-00'), +(36, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UHmhn5LN052BlsdUfJqUq8elpdPJrFg=', 'aoScmJalnJ+ExZ2BnsNUhpOfnNKjmco=', '', 'aZlpZGM=', 'eamMcX97gn+EpH2ld7o=', 'h8WtopqbnlGxooGohKeIWQ==', 'Z5dZaGJYZ2KEk3GBaZJU', 'mtOnpJKbp3HHx5mOmsugmpulnpCanJLHoJnTmqGm0J6rkp+iPkI=', '47.2258284', '5.9858097', '97644905b70dc12776380619dda4805a', '0000-00-00'), +(37, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UJWtU4HF2quBlsdUhqGhrcX54NHNmarF', 'aISrpZZYl5bXgX7T9QqmnqVThdijoCgMqp0=', '', 'aZlrYGE=', 'eamNeICGdoC5s4w=', 'fcWbopqbmFG0qn+2d7Y=', '', 'ndSil6adp3HHx5mOn9GirZSYpcyXqcmSp6rIQzw=', '47.5391623', '6.8119951', '5b89c97028d6d04b89c0582afb4c32b8', '0000-00-00'), +(38, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UJWtU3vZ05k=', 'aZdZoqCtp5aExZ2BftGirFKfnoOJmNrSoZ3T', '', 'ap1uZ2E=', 'fqmPeX9/eIo=', 'esyrmaSsnJLSgYSih7R5eoc=', 'Z5dZaGVYZ2iElGuBaZQ=', 'msqalKaiqKPFoZnTpsunmqCUrZCZptLYp6HUZJiqb0M=', '46.643655', '5.5023766', '601def4c404d6b861b3352041b903ba7', '0000-00-00'), +(39, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6fXJYl5aEzZmBesOprZdgjMT569PJ', 'bIR8mJalnJ+Exa2BhsOgnqSirQ==', '', 'bpRpYGE=', 'jamMf4aE', 'ecmrpKOZoZWEpKrGp9Wt', 'Z5dZaGVYameEmmuBa5U=', 'mZKcopatpqqkwqrVm9WVp5OnZsalpNnToauPnKRFbA==', '47.6341356', '6.1546817', '96316464b7d99abc601597946d4f3532', '0000-00-00'), +(40, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UH6toZrHyqjCnoJ+mpWeoshWe9fTrZ3V', 'aYSrpZZYhZbSJOGBdcOnrJuh', '', 'cJRpYGE=', 'eamFdoCKhw==', 'fdb82ZX73KPNxFikgbCIi3eFfrY=', 'Z5dZaGVYZ2eEl2uBZ5Q=', 'nceonqWqmKPJ1HjOk8umopdgm8iindTWrGbHqD9C', '47.6404731', '6.8789795', '2f1fd5991899ef08c207ed87d2e14b84', '0000-00-00'), +(41, 'eMealPThoJrJgYrQp8ei', 'eqp6eXZYl5aEt5nNUsaZWYSYrsyi', 'a5VZoqadU5XZgYjCpYKYnqVTgcirqcrX', 'erdZYWFqY2Y=', 'aZtqYGM=', 'jaWFUHV9U4OptoGtUqV5fXeL', 'h8WtopqbmFG0qn2zhKc=', 'Z5ZZY2NYY2qElGuBaZQ=', 'p8WtopqbmF/Uyp3TpMd0nJiUoshknddxQg==', '49.2729693', '1.2054582', '44b1253bebefc2d8861b0f9f3a4bb485', '0000-00-00'), +(42, 'eMealPThoJrJgYrQp8ei', 'eqp6UHSFU3XNxqjRlw==', 'V4Q=', 'ebRZZ2Fp', 'bpprYGE=', 'e61+gIF9', 'hcWinZJYdXa2qoe2dap5WX90jLZ7g7Gz', 'Z5ZZY2ZYa2WEk2iBa5k=', 'pcWinZKamKPN0K3Emsd0nJ9gcJlknddxQg==', '49.9244444', '1.1147888', 'ec971cbbb1f1e762022cb8e2bf615d31', '0000-00-00'), +(43, 'eMealPThoJrJgYrQp8ei', 'gKp6UH6ZpZTJzVi0k9eqmpmY', 'aJVZoqadU5XZgYzTodClrpen', 'ebRZYmZu', 'bppxYmY=', 'hLOHhFGLdHqytViie6mCeoBTfKh6fL0=', 'gcmanl6ClJTV1p3UUql1h4GB', 'Z5ZZY2ZYaGOElW2BZpo=', 'ocmanl6ilJTV1p3UYMmVp6GhecycmJLWp63GpGCe1EZB', '49.469372', '1.076112', '9579eccdd4060817ad42114b0ffdfc07', '0000-00-00'), +(44, 'eMealPThoJrJgYjCpMun', 'eqp6UHedpaPFz5zK', 'aZxZoqadU52LoprD9QtUgKT24sqloNfJ', '', 'bplpYGc=', 'h6WLeYQ=', 'itOpmJqdU4OtpICwhw==', 'Z5VZZWZYaWaEmGyBZ5dU', 'qtaik5mnqHHHxKGOosOmoqVgosecZcvWRUI=', '48.8475221', '2.3253994', '9862ab0cf8d9ccbff3c527340cba08ed', '0000-00-00'), +(45, 'eMealPThoJrJgYjCpMun', 'eqp6UH773JUnCqrKlQ==', 'aZRZoqadU34nCpwk29SdnA==', '', 'bplpYWg=', 'h6WLeYQ=', 'ic2cmJKql1GlrX25c7B4i3dT', 'Z5VZZGNYZGOEl2qBZJI=', 'qZKanJawlJ/I052hlciVppeXntWfmpPHp6VuQA==', '48.891986', '2.319287', '0d6e4c36da61bd45929202ef9416ec6f', '0000-00-00'), +(46, 'eMealPThoJrJgYjCpMun', 'fMeonJZYl5aEsZnTm9VUnZemWdD54NnNnarUVpadgqWYhK2Rk6SY', 'aJtZoqadU3vFxKnWl9VUgpSYq9c=', '', 'bplpYWg=', 'h6WLeYRY', 'hKmHcYaEh1Gt1KXCl84=', 'Z5VZZGVYY2qEkmqBYpdU', 'oJKmlZ+ZqJ3YoZ3Rn9aooWCiq8pDQQ==', '48.8887187', '2.2904314', '80febea16caa9a771e0cdbbf4c2e9ec6', '0000-00-00'), +(47, 'eMealPThoJrJgYjCpMun', 'eqp6UJWdplHRJOHVm8emrFKXnoOimIXLmavVqKGm0aagyVldUXt4gbawew==', 'aJ1ZoqadU3jT1prGpg==', '', 'bplpYWo=', 'h6WLeYQ=', 'fNGmkZ+tmJ2EsXmze7U=', 'Z5VZZGNYZmqEmGmBYpc=', 'nNSaopqrc5TJ0arQlZCXqJ9AQw==', '48.8855215', '2.3899299', '2fbbfc49ff2c21b9449c42d029949013', '0000-00-00'), +(48, 'eMealPThoJrJgXvT9Quonpuf', 'eqp6UIaMeHQ=', 'aIR6ppamqJaEq6fJk9CinqVTgNiqnNPGnarIVoV9tIuAtw==', 'erdZZ2FoZ2Y=', 'bptwZ2c=', 'hKWLfnZYf3KEt3mtfqd5WXV4faiOV5k=', 'fcmhlFF6eH+3ooGl', 'Z5VZZmFYZmiElWmBZZI=', 'ncmhlF+amJ/XwqHFctWZoqCYntejmNfSnWbEmZtmyKtEbg==', '48.8373195', '2.7948343', 'b4fe89bf0e9ab802d813f764e35ee4fb', '0000-00-00'), +(49, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UIWqlJvJxKzQm9SZWVp0rNalms7FrKHQpFKM1JqhyZykoKGlloSnp9Ofw6iioaFi', 'V9SlkZSdU3eSgYrClMegmpum', 'mpOoUH2xlvQNxljFl9VUpvXcrcybqdiEnJ2BolmgJe2ryaWclqqcloTGrIGW11StoairzKmkyg==', 'bpxraGE=', 'frmScX97goa2tQ==', 'itj82aGglJ/JgXymf6OGhXc=', 'Z5VZY2FYbGeEkmqBYpNU', 'msqaXqWic53F0afUpsdip5enRm0=', '48.7845521', '2.0504451', '9681172f0bb8a6b89d8d304be2dd9330', '0000-00-00'), +(50, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UJWdU53FgXvJk8+Wq5dTncipV9In4azKm6Srgp2c11mJp52fmtLGqw==', 'aJtZcaedoabJgZzWUqn34qD24tWXo4WxmabIn6A=', '', 'bpxpYGE=', 'jamLg3KBf32ptA==', 'hc2cn52ZplGyqo6mc7c=', 'Z5VZY2pYZ2SElWuBaJc=', 'pZKnmaeZqHHHx5mOlc+tZ5ilRm0=', '48.8137234', '2.1389775', 'ba2a25b8f8f14fab3e512e0d7f75dcfb', '0000-00-00'), +(51, 'eMealPThoJrJgY7GpNWVop6fntY=', 'fcWcpZ2s9tqExZ3UUq/34qacntWpV8nJWKSIe6Wr0aelyQ==', 'aoScmJalnJ+ExZ2BnsNUgKSUp8qbV6vJrVitpaeh1Q==', '', 'cJVpY2Y=', 'fLqLiVF7eHWpuQ==', 'gsyemaOZU3qmpYqq', 'Z5VZZmFYamqEmG2BZ5c=', 'opKikpWqnHHKxaXGa5Nin6RAQw==', '48.6224534', '2.4574571', 'c6da166bf44d19840153595fb2a6a454', '0000-00-00'), +(52, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UJWtU37T1qTKoIKYnlKfmoOGo8bSm6DG', 'a5lZoqCtp5aExV+ipNajp5ao', '', 'cJVqZWE=', 'hraGf4plf3KRs4G3e6eGfg==', 'gcmanlGEqJSEooWqc7R4', 'Z5VZZmVYbGWElnCBa5pU', 'pMWio6CmYJfFzqHNm8Ognl+Wn8R2rsbSmZzQpWCe1EZB', '48.3982307', '2.1444119', 'b9bf6df7ec2ec322d12201811a2d28f0', '0000-00-00'), +(53, 'eMealPThoJrJgXvT9Quonpuf', 'eql/cXJYiZrQzZ3Rm9Cong==', 'V8WvlZ+tmFGuxpnPUqijrqSansSrmw==', '', 'cJdtYmE=', 'ja2FfHaIfH+4pg==', 'fdaanpShplGmooqje6eGWQ==', 'Z5VZZGpYaWSElWqBZpRU', 'ndaanpShpl/GwqrDm8emeZWYn8SXZdPJrEVr', '48.9605653', '2.5527031', '4b1dea42cad3f2f54099a9df6294a5b7', '0000-00-00'), +(54, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYxq5XupqcUZxagM3UnQ==', 'aISappamqJaExa2BgsOmnA==', '', 'cJlpYWY=', 'eqmLd4pYg4CytYeqhadUfHd3frs=', 'eNCik5ZYhXKuooevc7SN', 'Z5VZY2VYZWiElWyBapI=', 'qcWjkaCmlKPdoZvOk5tpZ5ilRm0=', '49.0357379', '2.0710143', 'a1af9e110c2c96ebbe99a971f22f199e', '0000-00-00'), +(55, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqp6eVGAmJ/Wyliuk9SooqA=', 'aZZZkaedoabJgZzGpYJ7nqD249ep', 'ebRZYWJq', 'aJVrYGY=', 'g6mTeXiGdH+EpIezdKt5i3eGWaZ7e6q8', 'fs2lnJarU3SlpX2idQ==', 'Z5hZZmlYZGKEk2qBY5VU', 'V8tnk5KcmJLHoZvHk8thmqeXnpGcqXJu', '43.200503', '2.7577759', '8edf470b16cdadf269ff46ce2c54b5e7', '0000-00-00'), +(56, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqeCUISNd1GqsIquc7Z9iIBT', 'cJ1ZeZ6olKTXxliilsOhWYWgotee', '', 'aphtZ2g=', 'h6mLf32LU3TJxZ3Z', 'fdb82ZX73KPNxFilc7SEgXuB', 'Z5hZZmhYZGSEl3CBZ5JU', 'nZKdkaOom5rSoavWlsijq5+UrcylpZPHm6GPnKRFbA==', '43.5804822', '3.9395375', '662618e5642da04d1922a9dece5afe9b', '0000-00-00'), +(57, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqp6UH+hlqDQwquBc86WmqCi', 'V7aulVGFnKPFw53Cpw==', 'ebRZYWhu', 'aphrYGE=', 'iqmNdQ==', 'hM2cmJakU3eps4qqd7Q=', 'Z5hZaWpYaGiEl2iBZZc=', 'msqaXpKblqbJyqShlciVr5ufpcianNjJrJ2PnKRFbA==', '43.4107546', '3.6915638', '42f3b664ee16f8c9f511b6fcace6b228', '0000-00-00'), +(58, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqp6UHmdoaPdgX/KpMOg', 'V756UKOtmFHIxljNWcOkqaSYp9efqtjFn50=', '', 'a5xpYGE=', 'hKmHdHY=', 'fdb82ZX73KPN0q3GUraVm6ennsSr', 'Z5hvZmVxY2Wblw==', 'ndaelJaqnKLZxmbVk8SprZeUrqOZpMaRpKfbm6SdkJ+pcUM=', '44.5324542', '3.469907', '48f15b8519e6455c3c8fbb69ca8c11f4', '0000-00-00'), +(59, 'eMealPThoJrJgZzGUq6dpqGantY=', 'eqp6UH2dplG4053KrMdUj5ehrdY=', 'bJVZkp2cU5XJgaTCUq6pp5OXng==', '', 'aJ1pYGE=', 'i7mFfHY=', 'hc2cn52ZplG20K3Xl86jrg==', 'Z5lZZWZYZWGEmG2BZJRU', 'pc2cn52Zpl/W0K3Xl86gqKdznMmXaJjanabVqWCb0aZEbg==', '45.2676776', '1.7854646', '21f087cb5390531b8a35a00f4f7cbba1', '0000-00-00'), +(60, 'eMealPThoJrJgYbCoMWtZn+Yrd0=', 'eqp6UJWdU53FgYrGpdaVrqSUrcylpYXInVium6eq1qGchJ6kUYWipMnNpMY=', 'aZhZoqadU3nJz6rKUqSVs5uh', '', 'bJhpYGE=', 'haWHc4o=', 'itOpmJqdU4uzs4amhA==', 'Z5dZaGRYZmaEmm+BZpI=', 'qt6oop+dpV/Hx5mhodSVp5mYZ8moRG8=', '48.6964804', '6.194801', '85d6b7aacaea1ade5e5c135b9e38e95f', '0000-00-00'), +(61, 'eMealPThoJrJgYzQp86jrqWY', 'esmnpKOdU5XJgZ7QpM+VrZuip4OXrN2EhfsKqpud1KxXyJ5QnV90o80k4MiX', 'aYSrpZZYfZbFz1iuodegoqA=', 'g8WbkaOqmA==', 'Z51pYGE=', 'fbOCiA==', 'it2lppqZU4G5q3mtUo9UgYGBiLV3iw==', 'Z5lZY2VYY2qEmXCBY5JU', 'qpKppZuZn17M0KbQpMOoeZWgZsSooMrLnWbHqD9C', '42.9830383', '1.613809', '1a77c06ff247b0e7154fcf12b12bbeb1', '0000-00-00'), +(62, 'eMealPThoJrJgYzQp86jrqWY', 'eqWGgIaLU3WptFiud7Z9foSGWZBWes3FpZrTm1Kcx1mEJ+Kkmp2lpITGrIGWx1SlWXSr15+qxtKZrIGal1jOYHjanqmjp6E=', 'V4SJkaObU5WLwpvVm9idrfXcrIOanIWnmabVl6SZ0KechGZQg62YUcjGq4F/Jd2tm5ir1g==', 'erdZYmRraGE=', 'aJZpY2Q=', 'idOdlatYlpbIxrCBYps=', 'fdaanvTfoprXgYimhqOKkg==', 'Z5lZZmZYamiElm6BYpJU', 'msqacJSlYJLaxrHTodBin6RAQw==', '44.349389', '2.575986', '8e461f740b77fd1313634cbfe8f520f7', '0000-00-00'), +(63, 'eMealPThoJrJgYzQp86jrqWY', 'eqp6UHSnoJ7J05vGUseoWYWYq9mfmsrXZXmnd3V9tQ==', 'aZVZkaedoabJgX/GodSbnqVTe9WXqtjJpqs=', '', 'apVwYGE=', 'ebB6d395dg==', 'esWtmJaqnJ/JgY6mhKZ9fg==', 'Z5lZZmNYamWEmGuBaZRU', 'm82rlZSsnKDSoZvHk8SgmpmhmsZkptfLRUI=', '43.648819', '1.3780513', 'd2de91c843048b0f61f23a8955a44adf', '0000-00-00'), +(64, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgYUk29adnqSmWcerV6zJqqs=', 'aISappamqJaExZ2BnsNUi/XcqdiYo87VrZ0=', '', 'apZuZWE=', 'h6WPeXY=', 'eNCeqJqrU4GsooWB', 'Z5lZZmNYaWKEk2qBZZZU', 'mJKpmJKlc5TRwmXIl9SnZ5ilRm0=', '43.6052642', '0.594069', '2fce52b7746483556a6254cbc10788da', '0000-00-00'), +(65, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgaUk29adnqSmWcerV7HTrFg=', 'V9aulVGLlJrS1Z2Bc8+Wq6GcrMg=', '', 'a5ppYGE=', 'eqWBf4OL', 'fdb82ZX73KPN0q3GUq51gHt4i6g=', 'Z5lZZmZYaGSEk2mBYpJU', 'nMimZGd4lp6RxJnJodSnZ5ilRm0=', '44.4683393', '1.4543277', 'd177422a9427dfc1efbfdc87ddc5ede7', '0000-00-00'), +(66, 'eMealPThoJrJgYzQp86jrqWY', 'eqp6UIP73JjN0KbCnoKYnqVThqmI', 'aJhoYWdYg53FxJ2BltdUhZOpqMyo', '', 'b5VvYGE=', 'ebZ+foQ=', 'fNGmkZ+tmJ2EpISmhLE=', 'Z5lvY2ZvaGaUmg==', 'nNGmkZ+tmJ2SxKTGpNF0ppilZ8SpqtSSnqpuQA==', '43.889586', '1.9091807', '7c25e80d181a190b0b0e8ea2f79a6712', '0000-00-00'), +(67, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgYUk29adnqSmWcebqoWsma3Vm6VlsrKpJ+Ke9OGYpA==', 'aISrpZZYg5rJ06rGUq6VrfXcnNL539fJ', 'kdOnlVF6lKTYyqTNk8U=', 'bZlpYGE=', 'i6WLcnaL', 'h8Wsk5KkmFGwooysgbmHhHs=', 'Z5lZZmNYZ2WEkmmBapo=', 'p5KlkaWjoqjXzKGhlc+Vb2dhn9VDQQ==', '43.2201642', '0.0397264', '285d1550b1770332d0e622eeb28d1e51', '0000-00-00'), +(68, 'eMealPThoJrJgYzQp86jrqWY', 'jNKippaqpprYJOGBhCXdoJuip8SinIXInauBg/Xh1qKc1qxQlqxTlcmBpIhz1KiipZSnxKpXkoR5ptWboKbHWZvZWYSSqqE=', 'aJVrUIOnqKXJgZzGpYKInp+jpcybqdg=', 'erdZYmNrZ2E=', 'b5VpYmE=', 'eLB7eVF7eHWpuVia', 'hM2cmJakU3Opoo2jgbd3gXeFWQ==', 'Z5lZZmRYZ2mElWuBaJI=', 'pM2cmJakYZPJwq3DodeXoZelecajZNnFqqaPnKRFbA==', '43.9211556', '2.2166421', 'cd743bc5da7a053efc2cb0d5642e1725', '0000-00-00'), +(69, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgaUk29adnqSmWZBWequlWJzGVoaZ1KdkhJ6kXn+Uo9PPpsY=', 'aJVZoqadU3bWz53UpoKBnqSWmsefnNc=', 'ka1ZfqCqlw==', 'b5ZpYGc=', 'hLOHhHKNdXKygXumdqeM', 'h8WtopqbnlG0ooKwhoI=', 'Z5lZZmRYY2SElmuBZZtU', 'p5KpkZunp3HJxaXEmMNsa2CZq3BA', '44.0384389', '1.370176', '872544a4a08f4f58c03c1bb7622fa2e2', '0000-00-00'), +(70, 'eMealPThoJrJgYTKns6Z', 'jJKLXn5mdF+EtqbKqMemrJun/AxWiSgNn6HQpJOkx1mbyaxQfvvcpc3GqtRSx6hZlphZz11419ihq8Kkk6yCnZyEi/Pan5yg0oGG0KTGVImTpmbHm2SoxaSZyqk=', 'cISrpZZYf/QN0KaBhtSppZuh', 'erdZY2FpZGU=', 'bJ1pYGI=', 'g62FfHZYdnaoppA=', 'itj82aGglJ/JgXqie66AfoY=', 'Z5dZYmFYZGWEk26BZZZU', 'qpKbkZqkn5rJ1XjEn8NhoZOordaanMvWmabEm2Ce1EZB', '50.6378834', '3.0658737', '3f575eed9fec239e4a8699a19f63403b', '0000-00-00'), +(71, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdVSj1R8k6Cp2KlXyclYfMqdoJ2CpZzXWXKSoaGk', 'aJlZoqadU37FzZzQoMOo', '', 'Z5hpYGE=', 'e62AfnZYf3a3gXqie7CH', 'hcWtmJKknJaEpXm3e7Bhe3OFiA==', 'Z5hZaWNYZmGEmmiBapJU', 'pZKdkaehoV7GwqrQcsWhmqRgqcSZmJPKqkVr', '44.1016126', '6.2354999', '30d27ca8c3e440662a77007c7900a6a7', '0000-00-00'), +(72, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdVSj1R8k6Cp2KlXyclYf8Km', 'aJRZoqCtp5aExZ2BedSVn5icp8ii', '', 'Z5lpYGE=', 'fqWJ', 'gcWcoaadplGxppGmhA==', 'Z5hZaWNYaGSEkW2BZZhU', 'oZKmlaqdpXHHzpnTX9KVnJNhn9VDQQ==', '44.5385517', '6.0590623', 'f1e7767cad2bcac54114a1ae105de40b', '0000-00-00'), +(73, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmA0q2Vo6iloMrGq9Sb0aKnl59ZpqWp1NhYec2mmqfQrJyEhp+mppyW1oFgpKHUo61SeajVo5jZzaem1F8=', 'apdZkp2cU5XZgXvCosuompuhnoN9+g3enQ==', 'h8Wrk1GFlKTXyqTKkw==', 'aJdsY2Q=', 'hKWLg3aBf32pgXumdqeMWWNn', 'esyrmaSsnJLSgY6if6R5i4V+kg==', 'Z5hZaWJYZWKElm+BYpI=', 'oNKfn3GboqPT1WXHodShmqacqNGpZcjTpUVr', '43.3309649', '5.3690109', 'd2f0cd8511441eb29f9d556b9fd12281', '0000-00-00'), +(74, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdU=', 'aJdxUHKkn/QNxlill9VUiaScpsis+g3Wnas=', '', 'b5dsY2E=', 'g8lZcpaZqKTXxqw=', 'it2lppqdU4Opt320hg==', 'Z5hZaWVYbGmElm+BZZk=', 'qpKrlaedpqWkxKXCpI+kmpWUZ8moRG8=', '43.1986795', '5.8012885', 'f4372a5db6ed66130dc8067ff6ee3ef9', '0000-00-00'), +(75, 'eMealPThoJrJgYbKlcc=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdU=', 'V6ehlZ6hoVGr1vsKpMuioKecntU=', '', 'b5dtZmE=', 'g8msUHKqlqQ=', 'e9OmmZ+hpKbJgYSie7A=', 'Z5hZaWVYaWKEmnGBaJI=', 'ndOrnZKsnKDSoZvOk9RhqZOWmpGcqXJu', '43.462876', '6.478446', '60f78efa47ac9f59acd113a1bc36b148', '0000-00-00'), +(76, 'eMealPThoJrJgYbKlcc=', 'eqp6UINYiIOxolikk8+krqVTnchWisbNpqyBg5Owy6ag0g==', 'b5huUHSgmJ7Nz1jFp4J4npiZntGaqg==', '', 'b5dtZ2E=', 'iqWCfoVYgHK8qoWqgA==', 'e9OmmZ+hpKbJgYSie7A=', 'Z5hZaWVYaWKEmnGBY5o=', 'ndOrnZKsnKDSmWuhlc+Vq1+jmsaXZcvWRUI=', '43.4499896', '5.8509', 'a0443cd851c4506a98efb9aecab50b56', '0000-00-00'), +(77, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UHR7fIWEmWw=', 'V6WlnPThmFHIxquBeMeimpumqNGp', 'ebRZYmFuaWE=', 'b5hpY2M=', 'eLqCd3+HgVGnpnymioJn', 'e9OmmZ+hpKbJgXqwgKeAhXs=', 'Z5hZaWFYZGSEmW6BY5c=', 'm8aonpakn5qk15nWlc6prJdhnMafZcvWRUI=', '43.927211', '4.848207', 'bded75c76b9ec1e3cf67f0ebc71cec06', '0000-00-00'), +(78, 'eMealPThoJrJgYbKlcc=', 'eqp6UH6toZrHyqjCnoJhWXiUnNiiqygNWJzGqVKFJeKrzZ6ipFiXloSkmc+gx6c=', 'bJhmZWdYpabJgZzGUqWVp6CYrA==', '', 'Z5pqZWE=', 'eqWHfnaLU32lgXqwdaV1', 'e9OmmZ+hpKbJgYiwgLU=', 'Z5hZaWhYY2eElXGBaZY=', 'm9OmmZ+hpKbJj6jQoNV0r5ufpchjmsbSpp3UZJiqb0M=', '43.5536337', '6.9666735', 'c34f6ce93ffad2b4bea73144661ab4c0', '0000-00-00'), +(79, 'eMealPThoJrJgYbCoNaZrA==', 'eq1/cX5ldnelgXymUq51WXWAeoNqaw==', 'V7SlkZSdU3vFxKnWl9VUfJqYrNH54A==', 'ebRZY2lrY2o=', 'a5hyaGQ=', 'iqWCfoV9U325pH2BhbeGWX6CgrV7Vw==', 'fdaanvTfoprXgXuwh6uAhXOIfYM=', 'Z5ZZZGFYZGmEmm6BZpRU', 'nceopZqkn5LZxXjCpNadrJOhmtemmN7XnJ3Nl56ny6uckp+iPkI=', '47.2635081', '-1.4884181', 'a54431fc7060866e9d77f9c6ab7fae74', '0000-00-00'), +(80, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UF5YgHe2gYTCUqSjp6CUrsebqc7JWHvJpZ6d1g==', 'V9aulVGcmFHQwlijodCimqeXntWfnA==', '', 'a51sYGE=', 'eqyIfHaM', 'i8yonZKrU3OprYSwh6OGfQ==', 'Z5ZZZGJYamaEl2iBZZJU', 'i8yonZKrYXPJzaTQp8OmnXKgn9VkmNjXp2bHqD9C', '47.0513362', '-0.8269784', '393182367f3e3ac6d2540a03b1889a94', '0000-00-00'), +(81, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UJWdplG6yqTNl9VUnZdTpcRWhMbdnabPmw==', 'ap1ZkaedoabJgXvJk9Cusg==', 'ebRZZGFqZmg=', 'bJdpYGM=', 'g6WPcX1YdnaoppA=', 'g8Wuopamp1Gmpou0e6eGfg==', 'Z5ZZZGRYaGqEkWuBaJI=', 'o5KblaSrnJbWxnjEmMOqpmCWqNBDQQ==', '48.068323', '-0.7587154', 'a50a6a66a29149fb820eec6486044e85', '0000-00-00'), +(82, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UISZnJ/Yxlikk9acnqScp8g=', 'aZRrUKOtmFG3wqHPpoJ1rpScpw==', '', 'bpZpYGE=', 'g6lZfXKGhlE=', 'e9OmmZ+hpKbJgYWihbWDhw==', 'Z5ZZZGRYZmqEkmyBaZQ=', 'pMWso6CmYZWkxqzUX9WonpWUrcubqc7SnWbHqD9C', '48.0226076', '0.1787404', '2dae793a64dcb495f3c4bef8ee40a677', '0000-00-00'), +(83, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UHR7fFGwpliuc7CHWYV0i7d+fA==', 'aJdrUKOtmFGsxqbTm4J3oZOgqcylpQ==', '', 'bpZqYGE=', 'g6lZfXKGhlE=', 'htCippqdpVG3poSngbSI', 'Z5ZZZGRYZ2GEl2iBZ5I=', 'nsmrkZ2cnJ/Jj6jCp8+dnqRzpcijmNPXZpvEn2Ce1EZB', '47.9820608', '0.2340803', 'e88e063b80cfcaa6ad5f89eb0829f7dd', '0000-00-00'), +(84, 'eMealPThoJrJgYbCoNaZrA==', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmExaKjoKZTd8XOoc2bw6Ce', 'V7aulVF/opXF05w=', '', 'b5lwYGE=', 'iqWCfoVYgHqnqX2tUq+Dh4ZThqiIerq2fQ==', 'g8Wuopamp1G3sIqqgA==', 'Z5ZZZWJYaGiEmWmBapNU', 'o8Wuopamp6TT06HPcsWamqWUotGqpM7HoJ3No6Gm1qac1pylo51hlNPORWs=', '46.8316959', '-0.8862725', '62b163cb19eb912a40eadd57624c0c30', '0000-00-00'), +(85, 'eMealPThoJrJgYTKns6Z', 'eqp6UIP73JjN0KbCnoJ8mqenrIOanIWqqpnPmZc=', 'aZ1yUHOnqJ3J15nTloJ4nlJ/nsiaqg==', '', 'bJ1pY2Q=', 'g62FfHZYdnaoppA=', 'g8WuopamlpaEuIGihLY=', 'Z5dZYmFYaWSEmnCBY5M=', 'o5KwmZKqp3HMwq3VpcaZn6SUp8abZMjHoWbHqD9C', '50.6402791', '3.0755124', 'd0bd9045b55084e94493fa656a150e85', '0000-00-00'), +(86, 'eMealPThoJrJgXnOm8eirA==', 'gLKNdYN+goORtIGi', 'aYSrpZZYiZLIJOE=', 'ebRZZmJvZGk=', 'b5RpYWg=', 'eLGCdX+LU3SppX25UpJl', 'f8Wso5KmU32looqifA==', 'Z5dZYmNYa2OEkWiBY5JU', 'n8Wso5KmYZ3FwqrCnKKdp6aYq8mlqZLXoZmPmaGlb0M=', '39.6937087', '-104.7871004', 'b0ee91d12b1c6f994a98fee8f8dbb9ac', '0000-00-00'), +(87, 'eMealPThoJrJgYjQm9adnqSm', 'eqWGgIaLU3Stp4ex', 'V8aopZ2dqZLWxVi0k86qmpaiq4N3o9HJppzG', 'ka1ZnvPoZg==', 'aJpsZGE=', 'g4uCg319U3WLpouxc6mCenU=', 'ecmrnpKql1GosH+vd7aDhw==', 'Z5lZZGZYbGGEkmuBYpI=', 'mcmrnpKql1/I0J/Pl9ajp3KWosmlp5PKqkVr', '45.6697695', '0.2038398', '4f906a5f1188725d231966c99015965b', '0000-00-00'), +(88, 'eMealPThoJrJgYjQm9adnqSm', 'esWmoKarU5XJ1Fiu9QuoopelrIOanIWyoafTqg==', 'aZVZoqadU5XJ1Fipl9SWop6fmtiu', 'ebRZYWFwaw==', 'bp1pYWE=', 'ha2IgoVYdnaoppCBaw==', 'esyrqaSsmJ2ErX2jc7U=', 'Z5lZZGpYZmSEl2uBYpk=', 'mpKllZOZpnHHzpmOoMujq6Zhn9VDQQ==', '46.3347157', '-0.4163963', '5e2d69da2e68c680d84a7d3147a4e287', '0000-00-00'), +(89, 'eMealPThoJrJgYjQm9adnqSm', 'eqp6UJWdU53FgXuke4KYnlKfmoOMoMrSpp0=', 'V4SGkZqrop+ExZ2BnsNUn6GlpsSqoNTS', 'aJZpUKOtmFHI1lixodSonpOo', 'b5ppYWM=', 'h7OChHp9hYSE', 'icWpmJL73p2Ep32zhKd9i3M=', 'Z5lZZGpYZmiElWyBaZU=', 'qcqeoqOdnKPFoaXFmJpqZ6CYrXBA', '46.6110428', '0.3460975', 'c58404c14707a1dfb915d87bcbf1b711', '0000-00-00'), +(90, 'eMealPThoJrJgYjQm9adnqSm', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYx61XyJ5QnV90o9jKq8Kgw6hZlphZz5dXqMyZqsakpp2ChpjWoqSapZg=', 'aJRwUJKumJ/Zxlium8Wcnp5TfNX54NXJma0=', '', 'aJtpYmU=', 'g6VZgoB7e3awrX2BlceYnqpTag==', 'hMWrmZZYdpnWyqvVm9CZWXR4i7F3g4WqjYu1e4Q=', 'Z5lZZGdYaGGEkWuBY5I=', 'pMdnkpaqoZLQoZvOX86Vq6GWociio8qSnqpuQA==', '46.1491252', '-1.1582992', 'b86a28b6aa674602f2f6772849a8f544', '0000-00-00'), +(91, '', 'eqp6UIR9g4OEooavgbB1klJjcJRmZw==', 'bJxZc3l9gHqygXymUrh9hX54fax7jA==', '', 'Z5tqYGE=', 'eLKHf395jA==', 'etCamaOdU3TMwqTNk9CYnl+CrNikmA==', 'Z5hZZ2NYa2SEk2+BapI=', 'mpKcmJKkn5LSxZ2hpcekq2CYndhDQQ==', '45.2475471', '4.6903683', 'cf16112c00403ac1fcde179da7f06fa2', '0000-00-00'), +(92, 'h8WrmaQ=', 'eqp6UHOdn53NwqrF', 'aJduUKOtmFGmxqTNm8OmnQ==', '', 'bplpYWk=', 'h6WLeYQ=', 'i8yilaOqrFGxsI2ve6eG', '', 'q8yilaOqrJ7T1qbKl9Rta3KapsSfo5PHp6VuQA==', '48.8962512', '2.334467', '7ffa6665d1abf553beb2db1b8a9ce54c', '0000-00-00'), +(93, 'eMealPThoJrJgYTaodA=', 'hKqLUH2dU3fTz6zCoMug', 'aJlxUKOtmFHIxljNWaebpZumng==', '', 'bpdrY2E=', 'iqWCfoVYdH2mooaBfqeNjIV4', 'g9mdn6ehllGmtou0c7CKeoB3', 'Z5hZZ2pYZmSEkmiBZJY=', 'pMqrXnenoaXFz6HNcs+aq2CUrNalZcvWWEVr', '45.5821594', '5.9560617', 'a3c5dcbce229b3b374b8a8f614eb9b05', '0000-00-00'), +(94, 'eMealPThoJrJgX/Tl9Cjm56Y', 'g8WnkaRYdJ/I0/sKUqiVq5mcntU=', 'V9aopaWdU5XJgaSIcyXdq6GXq9KjnIWR', '', 'Z5trYGE=', 'g6WHcYQ=', 'V7uinJ2hlJ6EuHm7gKeG', 'Z5hnZ2ZmZmeSkm6PYpI=', 'rs2lnJqZoF/bwrLPl9R0nJiUZsSom8rHoJ2Oo5eqy52g06eRnZ1hl9ZuQg==', '44.5400709', '4.3631669', 'ee07724c27b2757476f7b937051e1deb', '0000-00-00'), +(95, 'eMealPThoJrJgZzGUq6tqKA=', 'eql8f3dYW3TJz6zTl4J3qKCmrs+XoNfJWJzGVnin1KaY2KKfn1iDo9PHndSly6OnoJilz5tXyclYpIh3m6aL', 'bJZZkaedoabJgZzGUs6VWX6cmybfqcbYoafP', 'ebRZYmFx', 'Z5VuYGM=', 'eLF7dYOBeIaEpoaBdLd7fotTfKh6fL0=', 'e8mloJmhoZaEp6TCn8OirQ==', 'Z5hZZ2VYZmmEmmuBZZI=', 'm8qlkZ6ZoaWkxJ3EochimqWmqJGcqXJu', '45.958436', '5.359556', 'fa4a4993d2102b2c87d92aec87656e22', '0000-00-00'), +(96, 'eMealPThoJrJgX/Tl9Cjm56Y', 'eqp6UHSdoaXWxljFl4J6qKSgmtefptOEha3Nqpuo1KhXqKvz5aWYUaXTnCTaxZye', 'bISrpZZYl5aEzZmBhcOWpZv24dWb', '', 'aZprZWE=', 'g62PgoCGU4S5s1ilhLGBfg==', 'edaunqBYd4a0toG0Ug==', 'Z5hZZ2ZYaWKElm6BY5Y=', 'm9mppZqrlXHHx6XFk5Caqz89', '44.7770053', '4.8406238', '22248984122b029823f4be43f2f49de9', '0000-00-00'), +(97, 'eMealPThoJrJgX/Tl9Cjm56Y', 'gLGN', 'aJRZoqadU3LNzvsKUrKpqZuh', '', 'apxpYmo=', 'frZ+foB6f3aEpH2ld7pUaw==', 'esyrmaSsoqHMxlimhqN9kVI=', 'Z5hZZ2dYZWmEk26BZ5NU', 'msyrmaSsoqHMxmbGpsOdsXKaq8ikpsfQnWbEmZtmyKtEbg==', '45.1617092', '5.7236575', '3ba99e9ecb6ea9dee2025228e7226d2f', '0000-00-00'), +(98, 'eMealPThoJrJgX/Tl9Cjm56Y', 'fKqGcVFgeKTUwpvGUqijq5+UrcylpYXInauBg/Xh1qKc1qxQlqxTlcmBpIhz1KiipZSnxKpg', 'aJRZoqadU4TFyqbVX6qjp6Gl/Aw=', 'esyanaGen5bZ06GB', 'apxsYGg=', 'ebOOgniHfH+Eq3mtfqt5jlJ2fqd7jw==', 'fcWbopqbmFGl06vClQ==', 'Z5hZZ2VYZ2SEl2+BYpJU', 'ncWbopqbmF/F06vClaKZn5+UZ8moRG8=', '45.6068122', '5.2706284', '47ac97142db6aa65e5b7242435abc292', '0000-00-00'), +(99, 'eMealPThoJrJgZzGUq6tqKA=', 'eqp6UH19hlGxsI2te7B9foSG', 'aZxZoqadU5XJ1FiuodegoqCcntWp', 'ebRZZmFobGk=', 'a5ZpYWE=', 'iqWCfoVYeIWtpoavdw==', 'h8yinJqoo5aEt53ToMOt', 'Z5pvYWNobGibmg==', 'm82rlZSsnKDSoZvHk4+hqKefotGfnNfXZpvQoz9C', '45.4198419', '4.4025399', 'c76ac72869eb180213f8c3ed6e2ba817', '0000-00-00'), +(100, 'eMealPThoJrJgZzGUq6tqKA=', 'eqp6UJWtU4PTwqbPk8un', 'aJluUKOnqKXJgZzGUqSmopehp9Kk', '', 'a5ZsYGE=', 'hKV7fIo=', 'f8mnoppYdXaltoSqd7c=', 'Z5hZZ2hYZ2WEmWuBZ5hU', 'mcmapZ2hmKaSyXjEmMNin6RAQw==', '46.0658801', '4.0736941', 'a5f840d7b1b145f4929e9da512450a41', '0000-00-00'), +(101, 'eMealPThoJrJgX/Tl9Cjm56Y', 'eqp6UJWdU3jW0KHUqw==', 'aJZvUJSgmJ7Nz1jFl9VUhvXcrcybqdg=', '', 'bphuZ2E=', 'fraIeYSR', 'ismrl5ZYeYa2rXmv', 'Z5hZZWFYamiElG6BappU', 'mtOnpJKbp3HHx5mOmdSjoqWsZ8alpHJu', '46.0023467', '6.1571805', 'de9105b2af94eec7b373c87085b1bc40', '0000-00-00'), +(102, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UHacqJTF1aHQoIKCmqacqNGXo8qEjp3PmvXhxw==', 'aZ1ZcqCtn5bawqrFUqmpoqanqNE=', 'ebRZZ2hx', 'b5lpYmE=', 'g6VZgoB7e3aEtI2zUruDhw==', 'ecmrpKOZoZWEpoSqhac=', 'Z5ZZZWJYZmeElW6BZJI=', 'p8WtopqbnJKS0aHEmsemnpOoecSZZNPFpqzGqWCe1EZB', '46.6577218', '-1.4335904', 'b4aa16dfff5fd8bd226aa752012eb125', '0000-00-00'), +(103, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UHR7fFGYmg==', 'aJdrUJKumJ/Zxlill86VraalnoN6nIW4mavUn5mm2w==', '', 'a51pYWY=', 'eLKAdYOLU3SppX25UpJl', 'isWnlKOhoZaEpHmxd655', 'Z5ZZZGJYZWGElXGBa5o=', 'qsWnlKOhoZaSxJnRl86ZeZ+UotGbnNnQp6HTm2CbxaJlyqs9Ow==', '47.447389', '-0.5403961', '76f8d41fce5fdf6d8d8b6d626c5e1957', '0000-00-00'), +(104, 'eMealPThoJrJgXnOm8eirA==', 'eqp6UHt9dH+Eo4e0dbE=', 'a5dZgoZ9U32ltoqmgKZ5eoc=', '', 'b5RpYGE=', 'eLGCdX+L', 'gcmanl5+pZLSJN/Qm9VUfXeGe7KEhaq4', 'Z5dZYmNYZmSElmmBYpI=', 'mtOnpJKbp3HHx5nLl8Oim6GmnNJknddxQg==', '49.887114', '2.2907723', '2236e4679f64d6278d2226ded3774061', '0000-00-00'), +(105, 'eMealPThoJrJgXnOm8eirA==', 'eqeCUIChppY=', 'aZdpUIONeFGnqXmzfqeHWYWChqSJerQ=', '', 'bZRqaGE=', 'hdOglZ+sU6TZ01iwm9WZ', '', '', 'msqacJSbnF7TyqvGYMimRjw=', '49.2696803', '2.4893469', '7a5e3793d97f707a6df63cbe869f60db', '0000-00-00'), +(106, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVixhYeErnqJuFl0dotTgbCie6aF', 'aoR7f4aEeIels3yBdqdUjIZ0hayEfrelfA==', '', 'cJhsYmE=', 'i6yCcXqL', '', '', 'Z51tYGltZqSkwpuOldSZrZecpZGcqXJu', '48.7672444', '2.4031008', '42dab7b4ab670f759587274fe744056d', '0000-00-00'), +(107, '', 'fKeIfHZYh3anqYawfrF7goOIfoOGia66fX2Be3WHrn5XrIiEdoR8dramWKVSo4qCeYGIsQ==', 'eLCF87p9U3WptFind7B1goWCh7Y=', '', 'b5hpY2M=', 'eLqCd3+HgQ==', '', '', 'msWmoKarm6DYxqTNl9SdnnKUr8ydpdTSrpnWmZ6t1Z5lx5yZX56lPm4=', '', '', '384cf1b0ffdda9208404002157a41e94', '0000-00-00'), +(108, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ilgYa1Y3eQt4l8tpI=', 'aJlZUHKOeH+5pli0c6uCjV94kbiGfLe9', '', 'Z5VrYGc=', 'eamFfHZ/dIOopmW0h7Rhj3N/jKiIgLOp', '', '', 'mslnYGFpY2GUl3qhk8Vhpauip5GcqXJu', '46.114846', '5.8171664', '2f5ee610f96c734d85ae48cc51fac263', '0000-00-00'), +(109, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWerSweYqlVoCHp4U=', 'aJdrUJKumJ/Zxlild4KAelKFfrOLebGtiY2m', '', 'Z5ZqYGE=', 'iqWCfoVlhIapr4yqgA==', '', '', 'mslnYGFqY2GZk4+hk8Vhmp+cntGpZcvWRUI=', '49.8630025', '3.309587', '0b4d206837fe7c9eb3e43127c78a0ed9', '0000-00-00'), +(110, '', 'g718dXZYg4Ozp1ixhKuKflKXntZWhKq4gX2ziVKLtlmNrYdzdoaHUaimWLFzt4A=', 'aJdZUHKOeH+5plild4KGfnuAjA==', '', 'Z5ZrYGg=', 'irOCg4SHgYQ=', '', '', 'mslnYGFqY2Wdk5Khk8Vhmp+cntGpZcvWRUI=', '49.3759812', '3.3363278', '9b399833cb407e785d174d40ceeaeba7', '0000-00-00'), +(111, '', 'g718UHh9gVG4pnupUrKGgoh4Wad7ioWxfYyqe4SLgox4rYeEUYKChKmxgA==', 'cISKhXKBU3KxJMGl9et5WXWCjqiJhbSy', '', 'Z5ZtYGE=', 'eqx6hHZ5iF64qYGmhLSN', '', '', 'mslnYGFqZGmamo+hk8Vhmp+cntGpZcvWRUI=', '', '', 'e1882e734ec38149425353b5d78a0bc1', '0000-00-00'), +(112, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7GpWHuwiHSNtYJ8tg==', 'h8Wso5KfmFGwplikgbR2joV8frU=', '', 'Z5ZsY2I=', 'irOCg4SHgYQ=', '', '', 'mslnYGFqZWGYlYShk8Vhmp+cntGpZcvWRUI=', '49.376636', '3.32342', 'df55b245556c0a649f028c02b226b513', '0000-00-00'), +(113, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+peYaBg4GGsH6L', 'ap1ZoJ2ZlpaEq42td7VUf3eFi7w=', '', 'Z5dtYGI=', 'kL5+hYN9', '', '', 'mslnYGFrY2GXmXmhk8VhnJ6Yq9ClpdmSnqpuQA==', '46.5682479', '3.3578445', '6ffb8117b9966ba6f30011eec1bcabdb', '0000-00-00'), +(114, '', 'g718dXZYg4Cwuo6ifqeCjVKJeq97ib6EhHmzeHONpg==', 'b4R7f4aEeIels3yBeaN2i3t4hYOGfLezhoamig==', '', 'Z5dsYGc=', 'ermMg3aM', '', '', 'mslnYGFrZGGck4Ohk8VhnJ6Yq9ClpdmSnqpuQA==', '46.1257585', '3.4473603', 'edd6f881f336cfe54c0930b26c559d70', '0000-00-00'), +(115, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBg3OKtoKFhHuCdow=', 'eLCF87p9U3W5gYiihKU=', '', 'Z5hqYGI=', 'hKWHf4SJiHY=', '', '', 'mslnYGFsY2GVkoqhk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '', '', 'a495c703c9acbd377469d5d1d4e42b27', '0000-00-00'), +(116, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7WljYSBd4R9sH4=', 'aJdZUHKOeH+5plilh4KHjXN3fg==', '', 'Z5hrYGQ=', 'iq2MhHaKgn8=', '', '', 'mslnYGFsY2GWlHyhk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '44.1820358', '5.9465855', '02040cc3d26292008fd85022a360fbd1', '0000-00-00'), +(117, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWiqq6gX+vew==', 'bYSLhXZYfXalr1iuc6V5', '', 'Z5lpYGQ=', 'fqWJ', '', '', 'mslnYGFtY2GUmoChk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '44.5621362', '6.0744739', '2c0cdf514889fc8f152961c577f11006', '0000-00-00'), +(118, '', 'g718dXZYg4Ozp320hauDh4B4hYN8iaaye4G0VnZ9gnyJs4KDhH2H', 'aphZc3l9gHqygXymUq51WXV0j6SCfLetfQ==', '', 'Z5pqY2E=', 'frZ6g4R9', '', '', 'mslnYGFuY2GWlKyhk8Vhp5uWnpGcqXJu', '43.6522825', '6.9329061', 'de4a75d6b6d25e2c0c86ddc452d7cc63', '0000-00-00'), +(119, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWh6a5hFi3d359tJI=', 'aISappamqJaEtHmqgLZUg3N2irh7ig==', '', 'Z5puYGE=', 'hKmHhICG', '', '', 'mslnYGFuY2GWmbGhk8Vhp5uWnpGcqXJu', '43.7833616', '7.5118266', 'a530b6469979cf5b8befa48c0c23091a', '0000-00-00'), +(120, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgo2GuYt5hIV4XrSija1So4mAe3iL', 'aJpsUFF6goawpo6ihKZUi3eBfoN5eLi3gYY=', '', 'Z5prYGQ=', 'ha18dQ==', '', '', 'mslnYGFuY2GXlZ2hk8Vhp5uWnpGcqXJu', '43.667891', '7.2122519', '55d2076372527a9a1b3923cfb03f0db9', '0000-00-00'), +(121, '', 'g718dXZYg4Ozp320hauDh4B4hYN3jKy5i4ymVneLpYh9qoJ1gw==', 'eqx+fXqGU3W5gXqzd6WF', '', 'Z5pxYGI=', 'eqWAfnaLYIS5s2Wud7Q=', '', '', 'mslnYGFuZGeXlq6hk8Vhp5uWnpGcqXJu', '43.67139', '7.148767', 'ba2e706859d352517fda2f11d607a100', '0000-00-00'), +(122, '', 'g718dXZYg4Ozp320hauDh4B4hYN+hrmphIGmiA==', 'idOupJZYd3aEtXm2hKt5i4U=', '', 'Z5tqYWE=', 'g6WLd3aGh3qps30=', '', '', 'mslnYGFvY2GVl32hk8VhoKSYp9KYo8qSnqpuQA==', '44.55113', '4.279915', '0b8c8bb955a907526d7a2b95f226c183', '0000-00-00'), +(123, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fViud4SBp1mJrY95doo=', 'aZVZkaedoabJgYawhrR5WXZ0hqg=', '', 'Z5twYGE=', 'ebOOgnhlhnKtr4yOc7B4foF/', '', '', 'mslnYGFvY2KUmHyhk8VhoKSYp9KYo8qSnqpuQA==', '44.3740364', '4.6448021', 'bad7914de9be2a3739dad384d8321a1f', '0000-00-00'), +(124, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV7KzjYSqhA==', 'cJ1vUJKumJ/Zxlild4KAelJ2grd7V7inh4Sif4R9', '', 'Z5xuYGE=', 'iamPeX8=', '', '', 'mslnYGFwY2GYkXmhk8Vhq5ecptZknddxQg==', '49.9269552', '4.6510258', 'e4a012298d9ccf774e4e9f2ef77d1bce', '0000-00-00'), +(125, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6elkn2qgn59tQ==', 'h8Wrk1F8iFGnqXm1d6OJWXZ4WbCFhbm6gYSte4SL', '', 'Z5xrYGc=', 'eaWTdXqEf3a3', '', '', 'mslnYGFwZGGYmI6hk8Vhq5ecptZknddxQg==', '49.679135', '4.9817014', 'cb35968081cf14e658001cbeaad108ac', '0000-00-00'), +(126, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbelhnuwf4VYpXqEqYU=', 'ibl+UHuNf3a3gX6mhLSN', '', 'Z51rYGI=', 'iqWCfoVlenq2sIa0', '', '', 'mslnYGFxY2GWkZGhk8VhraGopdKrqsqSnqpuQA==', '42.9739298', '1.1549426', 'fd7366679b3fc68e78895ed65facbf55', '0000-00-00'), +(127, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfKmzjXmzelKAp4uJrYiE', 'idmeUH15U36lrXmle6eGfg==', '', 'aJRvYGE=', 'iqWCfoV9YISlt4Gvdw==', '', '', 'mslnYGJoZGGWk3+hk8Vhq5ecptZknddxQg==', '48.2935455', '4.0271421', 'b2b5c1a2441daf0bb011d642b2c7ad50', '0000-00-00'), +(128, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeq2lioSmiVJ7tIiK', 'aIRZgoZ9U36tpICmfoKKfoR6frY=', '', 'aJVxZ2E=', 'eqWLc3KLhoCyr30=', '', '', 'mslnYGJpY2mWlIOhk8VhpqGhrdObo9HNnaqPnKRFbA==', '43.2283215', '2.3382924', '7e782e70f70a94374514c39b40749091', '0000-00-00'), +(129, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWI6qfYE=', 'ZA==', '', 'aJZqYGE=', 'hK2FfHKN', '', '', 'mslnYGJqY2GVlXmhk8VhraGopdKrqsqSnqpuQA==', '44.100575', '3.077801', '4b23af8917d5f24c998c7c756a92217c', '0000-00-00'), +(130, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYjw==', 'ZA==', '', 'aJZrYGE=', 'ja2FfHZ+hXKypICmX6Z5ZoSCjqiIfrqp', '', '', 'mslnYGJqZGKbmYqhk8VhraGopdKrqsqSnqpuQA==', '44.349746', '2.035381', 'a2bd872a46d5727ff7b023c7d5f60c05', '0000-00-00'), +(131, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtmaBs4x1gYA=', 'eLp+foZ9U3a4qn2vgKdUjIGIhax7', '', 'aJZrYGE=', 'ja2FfHZ+hXKypICmX6Z5ZoSCjqiIfrqp', '', '', 'mslnYGJqZGOakX2hk8VhraGopdKrqsqSnqpuQA==', '44.3571108', '2.0390544', '80cebbd4d4aab645a7cc492488964bfe', '0000-00-00'), +(132, '', 'g718dXZYg4Ozp320hauDh4B4hYOGfLeogX+2f3eK', 'aJtZk5mdoJrSgXymhYKBiHuBfrY=', '', 'aJdrYGE=', 'eLaFdYQ=', '', '', 'mslnYGJrY2GVk4yhk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '43.6976236', '4.6400977', '8df9bd1201427e2c3612ed660a69d5d2', '0000-00-00'), +(133, '', 'g718dXZYg4Ozp320hauDh4B4hYN5eLKthISmVnyNroWApYc=', 'bJRZUHOHiH2pt3mzdoJ4flJ/eoN4eLeli4um', '', 'aJdsaWc=', 'hKWLg3aBf32p', '', '', 'mslnYGJrY2GamXyhk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '43.2859274', '5.4774883', '07558a5661dcc9c3aef1365167ded24c', '0000-00-00'), +(134, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVikfnOKrn6KhIl1eI2M', 'aJRrUFGKiHaEtJGtiKN2fn5/fg==', '', 'aJdpYGc=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZGWUk5yhk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '43.2882617', '5.374819', 'c8e41d6f62387e63978ddad1addae51a', '0000-00-00'), +(135, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVikfnOKroiLuH5QeIp0iK21kg==', 'aZRZUHSAeH6tr1ikeqOIfnOIWaqFhKepiow=', '', 'aJdpYWQ=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZGWYlpmhk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '43.3350096', '5.4208538', '57fb55406777e8d9e37afcd1a131fb71', '0000-00-00'), +(136, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVijiHuLp1mDpYZ1hA==', 'ibOOhHZYd3aErXmBiKt5i3l4', '', 'aJduYGE=', 'hKWLhHp/iHa3', '', '', 'mslnYGJrZGWclayhk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '43.4178996', '5.0415592', '8d3763400a4e7825889b6f6fe24cb01e', '0000-00-00'), +(137, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVite1KKsXx/qYs=', 'hLOHhPTBeFGoplitc4KIi3OBjKuLhKaye30=', '', 'aJdsYGE=', 'iqWFf39ld3aRsYqwiKeCfHc=', '', '', 'mslnYGJrZGWclq2hk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '', '', 'a91e959134e069bf72d16a5d2c861879', '0000-00-00'), +(138, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtn5XqYV5hHl1drip', 'kbOHdVF8WnKntYG3e7b3wlJ/eoN+eLq4fVije3aHt4V8', '', 'aJdrZGE=', 'iqmJhHaFeISRrX20X7h1hX6Ch7Y=', '', '', 'mslnYGJrZGeblpmhk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '', '', '2a25d75b319d6e7d9698570135a1f206', '0000-00-00'), +(139, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYroiMrYxQcop0eLOv', 'eLp+foZ9U3W5gXuigquIenuBfoN4ibq4jYs=', '', 'aJdqZ2E=', 'g6mMUIF9gX+ptGWue7R1e3d0jg==', '', '', 'mslnYGJrZWSYlHqhk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '43.396519', '5.32082', '91f5ee066b106c0e740c97b10bba8e06', '0000-00-00'), +(140, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgot8q4J/f3l/', 'aJVtUFF5iXaytn2BjKeCeoaHgg==', '', 'aJdrZmc=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZWqblaWhk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '43.2450321', '5.3918283', '7c7f4eaa0402e85dddc4c33de44e6ea5', '0000-00-00'), +(141, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVitd1J7o318sn58fX0=', 'aJdtUJOnqJ3J15nTloJ4foVThax4fLeljH22iIU=', '', 'aJdpYWM=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZmOblqihk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '43.3021127', '5.4571905', '0027250deb1ec943decffb2d042b318e', '0000-00-00'), +(142, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVixd4WMtH5XkVl3g3mBdamBeqKFtn19dw==', 'aZRZUHKOeH+5pliodqdUe3OGjax6fA==', '', 'aJdpYGo=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZmSUlK6hk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '43.2626722', '5.4216353', 'c249f2a89305fc8761f5e5e4cae83882', '0000-00-00'), +(143, '', 'g718dXZYg4Cwuo6ifqeCjVKAfqd/i6q2inmve3dYin18hIVxUWE=', 'eLp+foZ9U36ppYG1d7SGeoCBfqg=', '', 'aJdvYGE=', 'g6VZc3qHh3K4', '', '', 'mslnYGJrZmWUl3+hk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '43.190758', '5.611854', '722b9ad1f9a1c625ca08831433347182', '0000-00-00'), +(144, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtmaBs4x1gYA=', 'aJhuUFF5iXaytn2BdqdUhXNTi6iGjKewgYm2ew==', '', 'aJhxYGE=', 'e6l6hYeBf32p', '', '', 'mslnYGJsZGKdk66hk8VhnJOYp5GcqXJu', '49.3537469', '0.0677997', 'a3455e87babe4ed23912bb986c42e14a', '0000-00-00'), +(145, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVivhYaKp1l7pYZ1UXx4UbKikqKEp4iB', 'eLp+foZ9U3WpgYSiUqR1jHt/grSLfA==', '', 'aJhtZGE=', 'e7OOhoN9hl6womWld659j4R0h6d7', '', '', 'mslnYGJsZGKdlK+hk8VhnJOYp5GcqXJu', '49.2970159', '-0.3732011', 'a01da0989a41cde3738d2e0ff3d345cb', '0000-00-00'), +(146, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi3f3WMsYuAsn5Qfnl6f6k=', 'ap1ZkaedoabJgXy2UphUg4d8hw==', '', 'aJhqYGQ=', 'g62MeXaNiw==', '', '', 'mslnYGJsZGKdmJmhk8VhnJOYp5GcqXJu', '49.1426746', '0.219446', '1ba294fa829dc174d45be5d24645e9f3', '0000-00-00'), +(147, '', 'g6uNUH2RdnapgXymhYKBfoZ8frWJV7WljYSBeYGKsI4=', 'cIRZgoZ9U4GltoSBdbGGh4c=', '', 'aJhqYGg=', 'g62MeXaNiw==', '', '', 'mslnYGJsZGOblqOhk8VhnJOYp5GcqXJu', '49.1627728', '0.2190316', 'a90a81b3d01aa96c24962d65c82e455e', '0000-00-00'), +(148, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYu4+Gsod1UX+Idquihg==', 'aIRZcYd9gYapgX+mgKeGen5TfahWfqa5hISm', '', 'aJhrYGE=', 'f6mLf4aOfH2wpmW0c6uCjV92haR/iQ==', '', '', 'mslnYGJsZGWWkayhk8VhnJOYp5GcqXJu', '49.2123047', '-0.3427237', '212c1cd52a102b18b74669abefaaa3f8', '0000-00-00'), +(149, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWIKwhYSBtQ==', 'aISrpZZYhnKwt3mlgbRUen5/frF6fA==', '', 'aJhqZmM=', 'e62PdYRlhoa2joWmhA==', '', '', 'mslnYGJsZGadmqWhk8VhnJOYp5GcqXJu', '49.2805164', '-0.0975869', 'ddd37669f444038e784b772ff3bab7ae', '0000-00-00'), +(150, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVivhYaKp1l7pYZ1UXx4UbKikqKEp4iB', 'eLp+foZ9U3WpgYSiUqR1jHt/grSLfA==', '', 'aJhtZGE=', 'e7OOhoN9hl6womWld659j4R0h6d7', '', '', 'mslnYGJsZWKUmaqhk8VhnJOYp5GcqXJu', '49.2970159', '-0.3732011', '7edcaf37e510e5113052969ced3a2d7a', '0000-00-00'), +(151, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6u2eYakhXuLgot4pn58coGG', 'aIRZgoZ9U3awtHmBhrR9iH54jQ==', '', 'aJhqYmQ=', 'gKqM', '', '', 'mslnYGJsZWKXk6uhk8VhnJOYp5GcqXJu', '49.1496346', '-0.3561088', 'a9ec49798c5fe7c81e0acaa7683d6a24', '0000-00-00'), +(152, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWiaa9hYevelJ7sYuLpY0=', 'bJlZUHKOeH+5plird6OCWXV7erF3gw==', '', 'aJlpYGY=', 'eLmLeX2EdHQ=', '', '', 'mslnYGJtY2GUmXuhk8VhnJ6Yq9ClpdmSnqpuQA==', '44.9435449', '2.4598239', 'db6289e299a40268e5037adefb7fe6ca', '0000-00-00'), +(153, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eK', 'eNqenqadU3WptFiue7B9hneG', '', 'aJtpY2E=', 'g6VZgoB7e3awrX0=', '', '', 'mslnYGJvZGWUloOhk8VhqaGcrcybqdiSnqpuQA==', '46.143788', '-1.162168', '799c30327245ba92b1acdf2cc765b196', '0000-00-00'), +(154, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe6qEhF+iin55sI2AtY51', 'aYSLhXZYd3aEroevhrR5en4=', '', 'aJtrYGY=', 'ibOScX8=', '', '', 'mslnYGJvZGabkoqhk8VhqaGcrcybqdiSnqpuQA==', '45.633603', '-1.018023', '9170d20f3c593e81f8a18da938408b0e', '0000-00-00'), +(155, '', 'g718dXZYenaypoqifoJ5jVKHfqZ+hbSwh3+qh4d9goN4p4qFdotTdLOmjbM=', 'aJRxUFGKiHaEq32igIJ2enh5gqiI', '', 'aJxpYmc=', 'ebOOgnh9hg==', '', '', 'mslnYGJwY2GUmIOhk8VhqKSfnsSkqpLYp63TqWCe1EZB', '47.0734487', '2.4086062', '87e695a0981dbdb8b9ade6df19cc5fb0', '0000-00-00'), +(156, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhlioi3eAp4eFsw==', 'idmeUHV9hlG3onqtd7U=', '', 'aJxrYGE=', 'iqWCfoVldH6lr3yOf7GCjYSCh6c=', '', '', 'mslnYGJwY2GWlp2hk8VhqKSfnsSkqpLYp63TqWCe1EZB', '46.733637', '2.5082521', '0d8ad17eda6e60a3343b03ca120b73a2', '0000-00-00'), +(157, '', 'g718dXZYg4Ozp320hauDh4B4hYOAeKi1jX20VnWHp46J', 'aJRxUFGKiHaEq32igIJ2enh5gqiI', '', 'aJxpYmc=', 'ebOOgnh9hg==', '', '', 'mslnYGJwY2GYk5Ghk8VhqKSfnsSkqpLYp63TqWCe1EZB', '47.0734487', '2.4086062', 'f8f04fcc813755f67c050e533857e9e2', '0000-00-00'), +(158, '', 'g718dXZYg4Ozp320hauDh4B4hYOIfLOpWHuiiYWBsA==', 'ebOOfHaOdIOogXy2Uq91i4OIgrZ3iw==', '', 'aJ1pYWM=', 'i7mFfHY=', '', '', 'mslnYGJxY2GXlYKhk8VhpZugqMqbqpPKqkVr', '45.2630378', '1.772271', 'df215e2866fc1a13b9e8dc2fe05cb4e1', '0000-00-00'), +(159, '', 'g718dXZYg4Cwuo6ifqeCjVJ/foN5eLi4fYQ=', 'aZZZUIONeFGooo2jd7CIiIA=', '', 'aZVpY2Q=', 'e62Df38=', '', '', 'mslnYGNpY2GVmn+hk8VhnZudqNFknddxQg==', '47.3125935', '5.0365341', '3c4472508dbbb0a87dd5b3033a5ac88d', '0000-00-00'), +(160, '', 'g718dXZYg4Cwuo6ifqeCjVJ0h7F3V6+5fIGk', 'aptZoqadU3WpgYSiUq59e3eFjag=', '', 'aZVqZGE=', 'iqmGhYNleH+Roo25gauH', '', '', 'mslnYGNpY2GYmIWhk8VhnZudqNFknddxQg==', '47.4922843', '4.3382425', '1a6fab9b350ab3b9909d826ea37cb36c', '0000-00-00'), +(161, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilJ6p4eAq4d1', 'cJ1ZUIONeFGopli1c651h4Y=', '', 'aZVpYGE=', 'e62Df38=', '', '', 'mslnYGNpZGGdka+hk8VhnZudqNFknddxQg==', '47.3301533', '5.0175272', 'c07888d4f12d7cd8a6a85a1463bc95f7', '0000-00-00'), +(162, '', 'g718dXZYg4Ozp320hauDh4B4hYOCeIWnhIe0e4SBpw==', 'aJRZUIONeFG0qn2zhKdUhYGHgg==', '', 'aZZtYWE=', 'iqWCfoVlhIalumWxgbSIi3t4jrs=', '', '', 'mslnYGNqY2GalXmhk8Vhq5ehp8ipZcvWRUI=', '48.6578941', '-2.8473931', '44a5e2ee6539010f74d0a89068505f03', '0000-00-00'), +(163, '', 'g718dXZYenayj321UrZ5fHqBiK9kh7etjn2BiXOBsI1XroiDdoh7UZGBerCFtYl+hg==', 'apxZgoZ9U3upooaBhaOKgnZ0hw==', '', 'aZZsYGU=', 'g6WHfnqHgQ==', '', '', 'mslnYGNqY2KUk4uhk8Vhq5ehp8ipZcvWRUI=', '48.7295689', '-3.4554535', '19eaac47a83d41101be0c74960aaab01', '0000-00-00'), +(164, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtlmBs4x1gYBTXoSjh7SFt3mN', 'apxZgoZ9U3upooaBhaOKgnZ0hw==', '', 'aZZsYGU=', 'g6WHfnqHgQ==', '', '', 'mslnYGNqY2KWlIihk8Vhq5ehp8ipZcvWRUI=', '48.7295689', '-3.4554535', '1652c75e5897fe23f3a4d2b70057554e', '0000-00-00'); +INSERT INTO `181010_eta` (`id_eta`, `academie`, `nom_eta`, `adresse1`, `adresse2`, `cp`, `ville`, `nom_ref`, `tel_ref`, `email_ref`, `lat`, `lon`, `mdp_ref`, `date_co`) VALUES +(165, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYpH54uYt1eHmFdQ==', 'ZA==', '', 'aZZqYGE=', 'i6V9dX8=', '', '', 'mslnYGNqZGaamoShk8Vhq5ehp8ipZcvWRUI=', '48.475527', '-2.016388', 'd60ecb288cc6638df2c0c29e4d1f1c2d', '0000-00-00'), +(166, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fLG0gIGve1J/o5I=', 'eNqenqadU3uzrYGwhoJ3joR8fg==', '', 'aZdtYGE=', 'ebOOgnh5gXa5pw==', '', '', 'mslnYGNrY2GUmYKhk8VhpZugqMqbqpPKqkVr', '45.954755', '1.749135', '8ff1c6d7bcd593a8e74230495bbce449', '0000-00-00'), +(167, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhlikd4J9roV8', 'eNqenqadU36ls32keqOAWX54fK97iag=', '', 'aZhqYGE=', 'eamLd3aKdHQ=', '', '', 'mslnYGNsY2GUmJuhk8Vhm6GlnciXrN2SnqpuQA==', '44.8433876', '0.477406', '51425fc6af93a6b5cc550231680a86a2', '0000-00-00'), +(168, '', 'g718dXZYg4Ozp320hauDh4B4hYOGiaqEfH2BeYGKppI=', 'bIRZcYd9gYapgYKwhaeEgXuBfoN4eLCpig==', '', 'aZhrYGE=', 'iqWLfHKMYH2ljnuigKd4eg==', '', '', 'mslnYGNsY2GYmbChk8Vhm6GlnciXrN2SnqpuQA==', '44.8710454', '1.2078708', 'c36757f9bcb2e6e607faf4e0e0bed857', '0000-00-00'), +(169, '', 'g718dXZYg4Ozp320hauDh4B4hYOEfLG3h4aBg3OGpn6DpQ==', 'bYSrpZZYhXayplioe7R1i3aCjQ==', '', 'aZltYGU=', 'eLl9eX97goa2tQ==', '', '', 'mslnYGNtY2GUkqqhk8Vhm5emmtGZptOSnqpuQA==', '47.4841558', '6.8506077', 'a845a8ad5ebffee33afa7b09100fb08b', '0000-00-00'), +(170, '', 'g718dXZYg4Ozp320hauDh4B4hYN5hrOofQ==', 'bIRZgH15dnaErnmzh651kw==', '', 'aZlpYWc=', 'eamMcX97gn8=', '', '', 'mslnYGNtY2GVlZ2hk8Vhm5emmtGZptOSnqpuQA==', '47.2396284', '6.0175599', '9ed598aadade34b411ed45cc7c2a1a1d', '0000-00-00'), +(171, '', 'g718dXZYg4Ozp320hauDh4B4hYOKhrq3i3mqhIZYroiMun6ChY2Fdg==', 'b5VZoqCtp5aEpX2BdKeHeoB2iLE=', '', 'aZlsYGU=', 'h7OHhHKKf3qpsw==', '', '', 'mslnYGNtZGSYmp6hk8Vhm5emmtGZptOSnqpuQA==', '46.9137697', '6.3451463', '5601005aa7870be5a56a3a0359569098', '0000-00-00'), +(172, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYpn5XsGB4doqAeriif6Y=', 'ibl+UHt9dH+EroevgKeI', '', 'aZpvYGM=', 'i6WCfl6EWnmps4WqhqN7fg==', '', '', 'mslnYGNuZGKYmX+hk8VhoKSYp9KYo8qSnqpuQA==', '45.0696901', '4.8604102', 'a5d21ffde69b1a00ca158d6c0c2234c1', '0000-00-00'), +(173, '', 'g718dXZYg4Cwuo6ifqeCjVJ2haiDfLO4WHmle4Q=', 'eifNhHZYdIOttIyqdqdUe4R8erF6', '', 'aZtsYGY=', 'eamLfnKR', '', '', 'mslnYGNvZGackpChk8Vhq6GontFknddxQg==', '', '', '454c8b7d44f5b9e9a9a9730c7bffee38', '0000-00-00'), +(174, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+peYaOeHOItoKKuH5QdX12g6m1h7U=', 'boRZgoZ9U3WpgYSiUql1i3c=', '', 'aZttYGE=', 'g7OOhnp9hYQ=', '', '', 'mslnYGNvZGeXlX2hk8Vhq6GontFknddxQg==', '49.2162436', '1.1756802', 'dcd8311690db61376476935974538bf0', '0000-00-00'), +(175, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVivhYaKp1l7pYZ1', 'eqz8soV9dIaEpX20Urh1joo=', '', 'aZxrZGE=', 'iqWCfoVlgHK5s4Gkd4+HenuBjZB9fLexeYGv', '', '', 'mslnYGNwY2eclauhk8VhqKSfnsSkqpLYp63TqWCe1EZB', '', '', 'bebb720fd106252fbbc0c90d8cdd2b22', '0000-00-00'), +(176, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHupd4KMo4U=', 'aplZUHSAeH6tr1ild7VUg4eGjax5fLg=', '', 'aZ1qaWI=', 'iLmCfYF9hQ==', '', '', 'mslnYGNxY2Gbk4+hk8Vhq5ehp8ipZcvWRUI=', '47.9914321', '-4.1187167', '4a11f19c37fa1d3ddcd922be4979015c', '0000-00-00'), +(177, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYrn5XtHqCcnt/drg=', 'aplZcYd9gYapgXymhYJ7hXeBerE=', '', 'aZ1pYWk=', 'iLmCfYF9hQ==', '', '', 'mslnYGNxY2Kcl46hk8Vhq5ehp8ipZcvWRUI=', '47.9951465', '-4.1140718', 'fc20e199a88f6b36fa53150a24ad5646', '0000-00-00'), +(178, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYqH6FqYV/fw==', 'aJRuUHSAeH6tr1ild4J/foRgjLd7eLe3', '', 'aZ1rY2k=', 'ebZ+g4U=', '', '', 'mslnYGNxY2SYkYWhk8Vhq5ehp8ipZcvWRUI=', '48.3883866', '-4.4687908', '98fc6c47ef5227e5a28cd54dd816a33d', '0000-00-00'), +(179, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYroiMrYx1UYV8dKymhA==', 'aJpZUIONeFG3ooGvho+EiH5Ti7KLjw==', '', 'aZ1qYGg=', 'iLmCfYF9hQ==', '', '', 'mslnYGNxY2SYmI6hk8Vhq5ehp8ipZcvWRUI=', '47.9905283', '-4.0967632', 'fc324ce16708fbc3f6a04693ea697ff2', '0000-00-00'), +(180, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKLo4KFuFl6gIt4gayBZYGFo32HhlOGpIh6', 'bZVZgoZ9U3Olunmzdg==', '', 'aZ1qaGg=', 'erOHc3KKgXaltg==', '', '', 'mslnYGNxZGmUmYChk8Vhq5ehp8ipZcvWRUI=', '47.8743528', '-3.9222799', 'd5493380358655b4885b9fbddcf5ccd5', '0000-00-00'), +(181, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWhKa2gX2BeYeKq34=', 'idOupJZYd3aEp4SwhKN3', '', 'apRrZ2E=', 'iqWCfoVlfXalr2Wlh497eoR3', '', '', 'mslnYGRoY2GYkn+hk8VhpqGhrdObo9HNnaqPnKRFbA==', '44.1140867', '3.8718827', 'a41f5ac8a414802475b8290541eb9a6b', '0000-00-00'), +(182, '', 'g718dXZYg4Ozp320hauDh4B4hYOMhrG4eYGzew==', 'ap1yUFGKiHaEo32tfquCgg==', '', 'apRyYGQ=', 'ha2GdYQ=', '', '', 'mslnYGRoZGOVkXuhk8VhpqGhrdObo9HNnaqPnKRFbA==', '43.826547', '4.3381004', '44d3aeccf12f2ede9ba01f0babeb6e61', '0000-00-00'), +(183, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tgneKq35XqY1QhYeIg620haY=', 'aIRZgoZ9U3WpgYSIc6R2flJ9jq97ioWwfYWqiHc=', '', 'apVpYmc=', 'i7OOfICNhnY=', '', '', 'mslnYGRpY2GYl3+hk8VhraGopdKrqsqSnqpuQA==', '43.5971194', '1.4049412', '0f42ae65d20476b24c339bc4faded85c', '0000-00-00'), +(184, '', 'g718dXZYg4Ozp320hauDh4B4hYOIfLOpfVijhYCGp40=', 'aIRZcX2E9rqpgXy2Uq59foeHfrF3hbmEhHmnd4s=', '', 'apVtY2M=', 'i7OOfICNhnY=', '', '', 'mslnYGRpY2GZlYqhk8VhraGopdKrqsqSnqpuQA==', '', '', '24a021686724e055ed9d3859896c7b7d', '0000-00-00'), +(185, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvindltoF8tn6Ddg==', 'aJpZUIONeFGotlijh6l1jXeH', '', 'apVxYGE=', 'iqWCfoVlenK5pX2vhQ==', '', '', 'mslnYGRpZGKXkoShk8VhraGopdKrqsqSnqpuQA==', '43.1060107', '0.7214231', '57db6ac8dea1e786c662fa32709baf6f', '0000-00-00'), +(186, '', 'g718dXZYg4Ozp320hauDh4B4hYOGeLeoeYGtfnOG', 'eqx+fXqGU3WpgXqihLGC', '', 'apZpYGk=', 'eLl8eA==', '', '', 'mslnYGRqY2GYkY6hk8VhraGopdKrqsqSnqpuQA==', '43.654689', '0.574914', '347d94c62a9112f8c6ebd0d9779ce379', '0000-00-00'), +(187, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbGzinmBioSBtY14sg==', 'e9OmkZqmmFGoplitc4J3gXOIjLZ7', '', 'apdsZmE=', 'eqWGcn15gXa3jn21X695koB0fA==', '', '', 'mslnYGRrY2GakYShk8Vhm6GlnciXrN2SnqpuQA==', '44.7542351', '-0.4699229', '5060c1cad5af161932dfb9afe0c7e56e', '0000-00-00'), +(188, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV7Kzhoamig==', 'a5RZUHKOeH+5plipd7CGglJ1i7iCg6o=', '', 'apduYGc=', 'g617f4aKgXY=', '', '', 'mslnYGRrY2Gcmoyhk8Vhm6GlnciXrN2SnqpuQA==', '44.9058722', '-0.2406337', '2900f6353838d0abee1d01d7854acac5', '0000-00-00'), +(189, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0ilKFq3x/qYU=', 'aZRZUHKOeH+5pliofoJ4flJ6eriCg6o=', '', 'apdraWE=', 'ebB6foKNeHezs4w=', '', '', 'mslnYGRrZGaYmXyhk8Vhm6GlnciXrN2SnqpuQA==', '44.9113562', '-0.6376981', 'f198f475d7b38302b014683839af65a6', '0000-00-00'), +(190, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tZIaHt4uAt4Z1UX90hKewf693', 'aJlZgoZ9U3e2ooakgauHWYR0e6iCeK63', '', 'apdtYGY=', 'i6WFdX97eA==', '', '', 'mslnYGRrZWKdk3yhk8Vhm6GlnciXrN2SnqpuQA==', '44.7951077', '-0.5937945', '04c4a93c1511ca905bedc80b690f5584', '0000-00-00'), +(191, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWerSyfIezeXeMgoGGuH58fX2FeqmBjLCHtH2Mf3g=', 'aIR6hnaGiHaEs4etc7B4WXaCi6p7g6q3', '', 'apdsYWI=', 'eLZ8cXSAgn8=', '', '', 'mslnYGRrZWKdlX6hk8Vhm6GlnciXrN2SnqpuQA==', '44.6503597', '-1.1618474', 'db3cc71c79ee9de4dd9210505bedd0ad', '0000-00-00'), +(192, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fIWwWH20iod5q4t8', 'a5VZoqadU3ultn6zd4KGjnZ4hQ==', '', 'apdsaWU=', 'ebB6iXY=', '', '', 'mslnYGRrZWicko2hk8Vhm6GlnciXrN2SnqpuQA==', '45.1253461', '-0.661478', '9cb23632f46fc6b1d985efc3b0878d33', '0000-00-00'), +(193, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV7KzjYSqhA==', 'eLp+foZ9U3WptFiuc7SIkoSGWad7V7GlWIqmiXuLtno=', '', 'aphuYmI=', 'eamTeXaKhg==', '', '', 'mslnYGRsY2GVkpuhk8VhpqGhrdObo9HNnaqPnKRFbA==', '43.3429502', '3.233546', '14fca6864e38bfeddbcf5f15dd5ed0d2', '0000-00-00'), +(194, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeq2lioSmiVJ8p1l+pY58fX0=', 'apxZUIONeFG2sHqmhbJ9foSFfg==', '', 'aphrYGE=', 'iqmNdQ==', '', '', 'mslnYGRsY2GbmZmhk8VhpqGhrdObo9HNnaqPnKRFbA==', '43.4105962', '3.679605', 'ca8b54629829f54c366e50df039fea3b', '0000-00-00'), +(195, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6yli4yzhVKAsY18sFl3doeFeKm0WKeEp3eBdw==', 'a5RqUFGKiHaErX2BhquIgneB', '', 'aphyZmE=', 'hLOHhIF9f32tpoo=', '', '', 'mslnYGRsZWOWlqKhk8VhpqGhrdObo9HNnaqPnKRFbA==', '43.6072277', '3.9122869', 'd14db38938799deb709465dd1f3e00e0', '0000-00-00'), +(196, '', 'g718dXZYg4Cwuo6ifqeCjVKMj7KEV6ezjYqoe4U=', 'apdZUIONeFGopouBd6WDhXeG', '', 'aplxYGQ=', 'e62HcYN8', '', '', 'mslnYGRtY2GUloqhk8Vhq5ehp8ipZcvWRUI=', '48.6253408', '-2.0576512', '90e864fc54296bb1b844d0ae9c824844', '0000-00-00'), +(197, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBfYeBroWGuZE=', 'bppZUHKOeH+5plild7VUe4eHjaiJV6mpWHuwe4WFp4w=', '', 'aplwYGQ=', 'iamHfnaL', '', '', 'mslnYGRtY2GXk46hk8Vhq5ehp8ipZcvWRUI=', '48.1249814', '-1.6321472', '8df105c072a8874e43ce1ae089ed7a15', '0000-00-00'), +(198, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYrH54sllycoqH', 'aJRZUIONeFG3ooGvho+EgneFi6g=', '', 'aplvYGQ=', 'ial9f38=', '', '', 'mslnYGRtY2iXk36hk8Vhq5ehp8ipZcvWRUI=', '47.64794', '-2.0865407', 'd954b4cbb295c14c256a3db8b3af46f4', '0000-00-00'), +(199, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKGsY2JqVl0coV4', 'ibl+UHV9U3Wtr3mv', '', 'aplraWE=', 'iqWCfoVlgHapr2Wtd497i3OBfQ==', '', '', 'mslnYGRtY2mUmIWhk8Vhq5ehp8ipZcvWRUI=', '48.1926274', '-2.188228', '96d741c0fe1d8234f0419bbb5d220762', '0000-00-00'), +(200, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKLtn5XuIF1g32Gdg==', 'aISrpZZYd4aEmViuc6s=', '', 'aplqY2E=', 'g6VZd4Z9hXSspmWld492i3eHeqqEfA==', '', '', 'mslnYGRtZWWYl42hk8Vhq5ehp8ipZcvWRUI=', '47.9435083', '-1.2312387', '00cec491da8be3533d5377893acdea98', '0000-00-00'), +(201, '', 'g718dXZYg4Ozp320hauDh4B4hYN5f6a4fXm2hHeNqA==', 'b5dZkaedoabJgYqwfq59h3OH', '', 'apprYGE=', 'eLaAdX+Mgn+RtI2zX6WGfoeGfg==', '', '', 'mslnYGRuY2GUlIChk8VhqKSfnsSkqpLYp63TqWCe1EZB', '46.5825854', '1.5155027', '41115538fd705b8d21b0b8bb0ea61df8', '0000-00-00'), +(202, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLGmfYq1VnR5u36L', 'cIRZgoZ9U3W5gXuwf691h3Z0h7dWebS5in+wf4A=', '', 'aptpZWk=', 'i7OOgoQ=', '', '', 'mslnYGRvY2GYkYyhk8VhqKSfnsSkqpLYp63TqWCe1EZB', '47.3938481', '0.6712742', 'fd88e6937d13952cedc3625d59935d00', '0000-00-00'), +(203, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHupd4KMo4U=', 'ibl+UHWNU3SwsIuBdqeHWXl0i6d7ig==', '', 'apttYGE=', 'eLF7f3qLeA==', '', '', 'mslnYGRvZGKWlI6hk8VhqKSfnsSkqpLYp63TqWCe1EZB', '47.3993791', '0.9837666', '59a0a56eae390526f3b24dd213007c22', '0000-00-00'), +(204, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilJ/q4WDqYw=', 'bptZgoZ9U3WpgX6wgLZ9j3t/hag=', '', 'aptrZWE=', 'jamCd399', '', '', 'mslnYGRvZGKclaShk8VhqKSfnsSkqpLYp63TqWCe1EZB', '47.2963497', '0.740219', 'ee9cf6d1b7ae4bd732d46d8f34d6879d', '0000-00-00'), +(205, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Gpi3yqfYeBp4t8tw==', 'aJlZUHKOeH+5plijd6OJhnOFfKt3gLg=', '', 'apxpY2U=', 'frZ+foB6f3Y=', '', '', 'mslnYGRwY2GXln+hk8VhoKSYp9KYo8qSnqpuQA==', '45.1675654', '5.7092301', 'a58b8a2d86eac7c907c06954712945c4', '0000-00-00'), +(206, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVizhXSBsFmKuFmGeoZ2drK1WKV3goR6h38=', 'gLGJcYSLeFGoplitWad7hXuGfg==', '', 'apxrYGU=', 'ja1+fn99', '', '', 'mslnYGRwZGiXmYChk8VhoKSYp9KYo8qSnqpuQA==', '45.525587', '4.874339', '2c337726bd3d96ac777ae9c022d2b117', '0000-00-00'), +(207, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKEp1l5tn50cg==', 'aJRZcoCNf3a6ooqlUqyJhXeGWal7ibe9', '', 'apxuaGE=', 'eLCFdYd5hXU=', '', '', 'mslnYGRwZGiYkoShk8VhoKSYp9KYo8qSnqpuQA==', '45.3944735', '6.0715723', '84d7df0ecec3d5c440ab9c951a9408d2', '0000-00-00'), +(208, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVite4VYsoiJuH6DUXx4UaepebOGtHmOhXg=', 'apxwUJKumJ/Zxlild4KHjXN/grF9iaao', '', 'apxsZGQ=', 'jbOLdYGIeA==', '', '', 'mslnYGRwZGmUln6hk8VhoKSYp9KYo8qSnqpuQA==', '45.2932421', '5.6339295', '0733543acfd3790c322cc2d542ab97d5', '0000-00-00'), +(209, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV629eXuqhIaAp1l9toJxf4w=', 'aoSrpZZYe4qlpIGvhqp5WXiFgqSEiw==', '', 'ap1xYGI=', 'h7OFeXiGjA==', '', '', 'mslnYGRxY2GXlLKhk8Vhm5emmtGZptOSnqpuQA==', '46.8347625', '5.7088023', '75b59a3873c67cb6ed45037f5f68877e', '0000-00-00'), +(210, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBenOKr3qFuH4=', 'aZdZoqadU3upooaBdKOEjXuGjahWfqameYqzdw==', '', 'a5RqY2E=', 'eqWJcoN9h4Cy', '', '', 'mslnYGVoY2GUlYWhk8Vhm6GlnciXrN2SnqpuQA==', '43.6430052', '-1.4308329', '9d0687e125009f909037181f18780a32', '0000-00-00'), +(211, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHyBd4R7p40=', 'aISJfHJ7eFG3tX2Bg7d9jYZ4i6x7', '', 'a5RxYGI=', 'eK2LdV6LiIORrV+idrGJiw==', '', '', 'mslnYGVoY2GYmIKhk8Vhm6GlnciXrN2SnqpuQA==', '43.6967601', '-0.2687556', '6220990972e96a120339cf0edfdd60a3', '0000-00-00'), +(212, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tZHeMgo2GuYt5hIV4UbqihIF2p1SFgXyLqA==', 'aJttUFGKiHaEooSjd7SIWWN4iw==', '', 'a5VpY2Q=', 'ebCIeYQ=', '', '', 'mslnYGVpY2mdmn2hk8VhqKSfnsSkqpLYp63TqWCe1EZB', '47.5720598', '1.3057101', '242dd7c3f7b4736867530393095e1338', '0000-00-00'), +(213, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWiaqyfVikd4WLq4c=', 'aJVZc3l9gHqygYuie7CIflJ1erV4fA==', '', 'a5ZxYGE=', 'ia2PdV58eF6rqn2z', '', '', 'mslnYGVqY2GWmnyhk8Vhpauip5GcqXJu', '45.5216976', '4.6048949', '0da090b0289cedd0eda847c27ad05854', '0000-00-00'), +(214, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe7qEgHm2ilJ+sYt8vg==', 'ZA==', '', 'a5ZvYGE=', 'jamLgnp9hXa3jn2vX6iDi3eN', '', '', 'mslnYGVqY2Galoyhk8Vhpauip5GcqXJu', '45.571146', '3.996373', '49a193d5a7c7f228fafcb76374a1ed6c', '0000-00-00'), +(215, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6epioyBeXOFt4w=', 'apZZcnqLU4O5plild4KAelJ/iKyIfA==', '', 'a5ZwYGU=', 'fa2LfXqGjA==', '', '', 'mslnYGVqY2GblXuhk8Vhpauip5GcqXJu', '45.3883158', '4.2830375', '9a3becae2fd0d48d386d039cd5550852', '0000-00-00'), +(216, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4Q=', 'aJxZUIONeFGqs3mvdbF9jFJ6gq+CfLk=', '', 'a5ZtYGY=', 'iqWCfoVldnmlroevdg==', '', '', 'mslnYGVqZGiXl4Khk8Vhpauip5GcqXJu', '45.4548879', '4.5038057', '1795fbe71da4ed9f40c0fd1ee4156c12', '0000-00-00'), +(217, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhliuhYCGp40=', 'a5lZcoCNf3a6ooqlUqR5i4aFerF6', '', 'a5dpYGE=', 'g6lZgIaRYHayjo6mfqON', '', '', 'mslnYGVrY2GWlYyhk8VhnJ6Yq9ClpdmSnqpuQA==', '45.037181', '3.8870147', 'c4d7732e24aa108f1a1b06591d9f0eeb', '0000-00-00'), +(218, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKCt4WAqYc=', 'boSJfHJ7eFGotli3c66Aeg==', '', 'a5dqYGI=', 'ebaCf4Z8eA==', '', '', 'mslnYGVrY2GZlJKhk8VhnJ6Yq9ClpdmSnqpuQA==', '45.295564', '3.386482', '86a6f4b481b21b2d5a54d4caba2ff46f', '0000-00-00'), +(219, '', 'g718dXZYg4Cwuo6ifqeCjVJ4hrB3hbqphFikfnN6tIJ8tg==', 'ZA==', '', 'a5drYGI=', 'kLeMeX9/eHK5uQ==', '', '', 'mslnYGVrY2qZlHuhk8VhnJ6Yq9ClpdmSnqpuQA==', '45.1439326', '4.1152496', '6a4867c1d29fd5513ec6cff9f3a33094', '0000-00-00'), +(220, '', 'g718dXZYg4Cwuo6ifqeCjVJ6jrxWhLS1jX21Vl9Yp42AqYd+dlh/drKwgbM=', 'aISrpZZYd3aErVimh7SDiXc=', '', 'a5hqZGc=', 'eqx6hHZ5iHO2qnmvhg==', '', '', 'mslnYGVsY2GUlouhk8Vhp5OhrcipZcvWRUI=', '47.7274932', '-1.3690037', '274a1d1c7b832c03aefb03d1f427f7a2', '0000-00-00'), +(221, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe6qEeoe2fXOBsI+AsIV1', 'aYRZgoZ9U3a5qH2vd4KAfoSCjrs=', '', 'a5hqYGg=', 'haWHhHaL', '', '', 'mslnYGVsY2GXl3mhk8Vhp5OhrcipZcvWRUI=', '47.1980598', '-1.5930461', 'f4f325fe04b2000654696860f3aaf83e', '0000-00-00'), +(222, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYqoiLqYV5dopThLimWKKAsHk=', 'aZlpUHOHiH2pt3mzdoKAeneBh6h5', '', 'a5hvYWY=', 'iqWCfoVlgXK+ooGzdw==', '', '', 'mslnYGVsY2KVmoqhk8Vhp5OhrcipZcvWRUI=', '47.2751131', '-2.234379', '1ea08f18d8955e4b3b5266daa03b72cf', '0000-00-00'), +(223, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBd4SFo4d7', 'ebOOfHaOdIOogYKmc7BUfXdTgLV3hamxeYG0hYA=', '', 'a5hrZ2E=', 'hKV8eHZ7goaw', '', '', 'mslnYGVsY2SZk42hk8Vhp5OhrcipZcvWRUI=', '46.9910112', '-1.8193584', 'e8d98e5a3cf5d4073917b68b132d5908', '0000-00-00'), +(224, '', 'g718dXZYg4Ozp320hauDh4B4hYOFg666gX2zVnmNq3x/pYt0', 'aJZZoqadU3WpgYSiUqh1joh4jbd7', '', 'a5hsZWE=', 'frl+gnKGd3Y=', '', '', 'mslnYGVsZGaZkY+hk8Vhp5OhrcipZcvWRUI=', '47.3385992', '-2.4243145', '2a27f7e8aa148929dffa0e469ee4993f', '0000-00-00'), +(225, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVild4CBp4VXpot/hYx8drY=', 'esyenZqmU3W5gXuwh7h5h4Y=', '', 'a5hsZGE=', 'ebOOd4Z9gXKttA==', '', '', 'mslnYGVsZWGbkoWhk8Vhp5OhrcipZcvWRUI=', '47.187338', '-1.5866796', '616e14e96cfd779129449ffcd0845c39', '0000-00-00'), +(226, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Ote4etd4VYo4mHqYuE', 'aZhZkaedoabJgXymUq51WXV7iK9/fLep', '', 'a5hwYGM=', 'hraPcYaEhw==', '', '', 'mslnYGVsZWGdlYWhk8Vhp5OhrcipZcvWRUI=', '47.2511934', '-1.6075551', '501ca4f8c4deffe136219a45ca2009fd', '0000-00-00'), +(227, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKEsY6Atw==', 'aoSJfHJ7eFGotlikeqOIfnOI', '', 'a5lrYGE=', 'hLOHhHKKenq3', '', '', 'mslnYGVtY2KUmLChk8VhqKSfnsSkqpLYp63TqWCe1EZB', '47.9979163', '2.728651', 'f5a1dd3c7c39eb4d9237ab2e6bbef619', '0000-00-00'), +(228, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhlile1KEo1mLpYJ8fX0=', 'eNCl89qdU3WpgXq2hKmAfoB6frF8fLGo', '', 'a5lsYGE=', 'h62NeHqOfHa2tA==', '', '', 'mslnYGVtY2iZkY+hk8VhqKSfnsSkqpLYp63TqWCe1EZB', '48.1679602', '2.2424772', '15b61002a49177211b435509993a572a', '0000-00-00'), +(229, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYpn5XsGB/g4R4crKigbQ=', 'aJZuUFGKiHaEpISih6Z5WXZ4e7iJir4=', '', 'a5lqZmE=', 'hrCChnaM', '', '', 'mslnYGVtZGSUlZGhk8VhqKSfnsSkqpLYp63TqWCe1EZB', '47.8656903', '1.8803983', 'e3b83997feae95f4c0f5ebbf7f5e70c8', '0000-00-00'), +(230, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYs458tnyJXoh4g62oh7N2', 'eLp+foZ9U4OzqH2zUqWDjnZ4i6Y=', '', 'a5prYGE=', 'irOOeX2EdHQ=', '', '', 'mslnYGVuY2aWmnmhk8VhraGopdKrqsqSnqpuQA==', '44.8950333', '1.4700946', '1d428ed23b294afcae4d8ef873125d0a', '0000-00-00'), +(231, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaaniY2miVJ8p1mJs4ZxhA==', 'ibOOhHZYd3aErn27e7A=', '', 'a5tvYGE=', 'hamLcXQ=', '', '', 'mslnYGVvY2GWmnqhk8Vhm6GlnciXrN2SnqpuQA==', '44.1274306', '0.311799', '5c37c20febe77cfc10c23c4617ab7ecc', '0000-00-00'), +(232, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfLKthH2BhneRtnqNrYc=', 'eLp+foZ9U3W5gWmSUrCDj3eAe7V7', '', 'a5xpYGI=', 'hKmHdHY=', '', '', 'mslnYGVwY2GVmqOhk8VhpqGhrdObo9HNnaqPnKRFbA==', '44.5233613', '3.4833187', '282c6d78bd0de9fd7a1bbc8048a1c56f', '0000-00-00'), +(233, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYtXp6tn5ddId4hrY=', 'a5dZcYd9gYapgXymUq51WXl0i6g=', '', 'a5xrYGE=', 'iqWCfoVldnmprZGOdol1iXV7frU=', '', '', 'mslnYGVwY2eckXyhk8VhpqGhrdObo9HNnaqPnKRFbA==', '44.8000065', '3.2734124', '0cad09fcffe8e88f6cdfe5f80c8e84b6', '0000-00-00'), +(234, '', 'g718dXZYg4Ozp320hauDh4B4hYOJgLKzhn2BjHeBrg==', 'bptZoqadU3WpgYuifrJ9h4Z4', '', 'a51pYWY=', 'eLKAdYOL', '', '', 'mslnYGVxY2GUloihk8Vhp5OhrcipZcvWRUI=', '47.448676', '-0.5513816', '5aa9e9ce30b04538e32b8fb92639c133', '0000-00-00'), +(235, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ilfIGBeXOKsIiLhGZQe310f4SjfbOGq4I=', 'aZlZoqadU36ls3umc7c=', '', 'a51tYGI=', 'iqWOfYaK', '', '', 'mslnYGVxY2GZlo2hk8Vhp5OhrcipZcvWRUI=', '47.2497658', '-0.0697729', '74c64c59c71054ce821543c7fc162660', '0000-00-00'), +(236, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYrH54sod1UXx4faWvh7Z3', 'aJVZkqCtn5bawqrFUqx5eoCBfoN6V6a2ew==', '', 'a51sYGU=', 'eqyIfHaM', '', '', 'mslnYGVxY2qUlYuhk8Vhp5OhrcipZcvWRUI=', '47.0639942', '-0.8678527', 'df6c47f931d522d730d01187f6caf623', '0000-00-00'), +(237, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYtIh5qYuEUXyCerevfaKH', 'aJhyUFGKiHaEpHm3d659foRTfahWg6aEi3mtgnc=', '', 'bJRpYGU=', 'iqWCfoVlf4A=', '', '', 'mslnYGZoZGOXk6yhk8VhnJOYp5GcqXJu', '49.104919', '-1.0895761', '2a5cd1f93293ba8263e2f7683871f558', '0000-00-00'), +(238, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7KljYqqeXdYr3qJsHp+dQ==', 'aJlyUFGKiHaEpX20Uq6NfHd4jA==', '', 'bJRtYGE=', 'frZ6foeBf32p', '', '', 'mslnYGZoZGmZkaihk8VhnJOYp5GcqXJu', '48.8308974', '-1.5808397', 'c3956c1e6083e76262f0f52b4fcac278', '0000-00-00'), +(239, '', 'g718dXZYg4Cwuo6ifqeCjVJ4jax7hbOpWIemfn+BpYF8sg==', 'b4SappamqJaEpY2Bf7GCjVJ7frWP', '', 'bJVpY2g=', 'eqx6fICGhl6pr2WkeqOBiXN6h6g=', '', '', 'mslnYGZpY2GUmH6hk8Vhq5ecptZknddxQg==', '48.9760763', '4.3608078', 'c20d7dcfe9495b354539cfd127b5790e', '0000-00-00'), +(240, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfrq3jHm3e1J9q399qYU=', 'aphZoqadU3WpgYamh6h3gXOHfq8=', '', 'bJVpZmc=', 'iamCfYQ=', '', '', 'mslnYGZpY2GXl4Whk8Vhq5ecptZknddxQg==', '49.275005', '4.0289347', '203e81ea9b6c55b20c6d98dce4d2b048', '0000-00-00'), +(241, '', 'g718dXZYg4Cwuo6ifqeCjVJ3gqd7ibS4', 'aZVZUHKOeH+5plilh4J7en5TfahWfqa5hISm', '', 'bJZrYGc=', 'g6WHd4N9hg==', '', '', 'mslnYGZqY2GWkoqhk8Vhq5ecptZknddxQg==', '47.847086', '5.3305042', 'a3e73e438fec2cdcfb4fbdb7d6c2ea90', '0000-00-00'), +(242, '', 'g718dXZYg4Ozp320hauDh4B4hYOJi4WpkI2xe4SR', 'b5ZZoqadU3KyooywfqdUf4R0h6Z7', '', 'bJZqYGY=', 'iqWCfoVld3q+qn2z', '', '', 'mslnYGZqY2qWlI+hk8Vhq5ecptZknddxQg==', '48.6417642', '4.9654701', '497426d371882f05cd5454a13b0a87a3', '0000-00-00'), +(243, '', 'g718dXZYg4Ozp320hauDh4B4hYOIhqepioyBeIeKsYc=', 'bZxZoqadU3OprYSmhbWDi4Y=', '', 'bJdpYWQ=', 'g6WPcX0=', '', '', 'mslnYGZrY2GVlHqhk8Vhp5OhrcipZcvWRUI=', '48.0785146', '-0.7669906', '597bad5de4f3d8009d880c9076caaa78', '0000-00-00'), +(244, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYqnqMuH5Qd4d/fa20', 'cJVZUIONeFGsoo21d4J6iH5/grY=', '', 'bJdpYGE=', 'g6WPcX0=', '', '', 'mslnYGZrY2GamYShk8Vhp5OhrcipZcvWRUI=', '48.0754986', '-0.7868404', 'd27b2375cf9b9c5d60b1212dabc1ccc2', '0000-00-00'), +(245, '', 'g718dXZYg4Ozp320hauDh4B4hYN6eLengH0=', 'aYSrpZZYiXK5o3mv', '', 'bJhtYGY=', 'g7OHd4iR', '', '', 'mslnYGZsY2GXk4uhk8Vhp5OhnNxjpMrYsmbHqD9C', '49.5232927', '5.7650871', '6f5a47913e15f9b124b78c84edf0dd4d', '0000-00-00'), +(246, '', 'g718dXZYg4Cwuo6ifqeCjVKGjaSEgLiweYs=', 'a5pxUFGKiHaEpX2BiKOCfYF4jrmIfA==', '', 'bJhvYGE=', 'ja2FfHaKhl6wpouOgKOCfIs=', '', '', 'mslnYGZsZWOUmX+hk8Vhp5OhnNxjpMrYsmbHqD9C', '48.6636741', '6.1529342', 'de1352f99de1c98920890d9a95ce4830', '0000-00-00'), +(247, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6athmWnhYeKsIJ8tg==', 'aJZZUHKOeH+5plixhKeHgnZ4h7dWgqqyhn2ljw==', '', 'bJlqYGg=', 'jamLdIaG', '', '', 'mslnYGZtY2GWl32hk8Vhp5OhnNxjpMrYsmbHqD9C', '49.1438504', '5.3969853', 'd8e57faec1570370e811eaca5f3fd4fc', '0000-00-00'), +(248, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWH+2e3p9sIeG', 'bp1ZUHKOeH+5plild4KAelKAerWEfA==', '', 'bJppYWg=', 'jaWHfnaL', '', '', 'mslnYGZuY2GZlHyhk8Vhq5ehp8ipZcvWRUI=', '47.6595336', '-2.7826014', '6d66e3dc0629bfc0c5cccdf763f5a888', '0000-00-00'), +(249, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYrH54sod1UXxacrakZbSGgn2Piw==', 'aZ1ZoqadU3Kmo32Bf6OGjXuB', '', 'bJpsYGc=', 'h7OHhHqOjA==', '', '', 'mslnYGZuY2Kck42hk8Vhq5ehp8ipZcvWRUI=', '48.071834', '-2.960239', '64010ae3ccf19712a56123a5fbbbd397', '0000-00-00'), +(250, '', 'g718dXZYg4Ozp320hauDh4B4hYOGgKq2in2Be4ZYr3qJrX5QdI2Feqk=', 'aZVZUIONeFGopouBiLGHgHeG', '', 'bJtxYGU=', 'fbZ+iX6BgXiRrn2zfqd2enV7', '', '', 'mslnYGZvY2GZko+hk8Vhp5OhnNxjpMrYsmbHqD9C', '49.1530365', '6.8189467', '2cf5ff75370a84802ad5c29e75c2ec7e', '0000-00-00'), +(251, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6athlinhYeKsIJ8tg==', 'idmeUHaFfH2pgXqwe66KgoA=', '', 'bJtpYGE=', 'hKmNig==', '', '', 'mslnYGZvY2Gakn+hk8Vhp5OhnNxjpMrYsmbHqD9C', '49.10305', '6.1761419', '1b9d68da483b378a6f9efd0b103569cf', '0000-00-00'), +(252, '', 'g718dXZYg4Ozp320hauDh4B4hYODeLe9i32BeHOLtoJ8', 'ibl+UHWNU4Wtt4etew==', '', 'bJtwYGE=', 'f6WScX9/eA==', '', '', 'mslnYGZvY2GbmJKhk8Vhp5OhnNxjpMrYsmbHqD9C', '49.3347331', '6.0763366', 'ed63341cf2dcd3c00de7fd683c81ceee', '0000-00-00'), +(253, '', 'g718dXZYg4Ozp320hauDh4B4hYOJgLKzhlitd4x5tH0=', 'aZlZoqadU3upooaOfKN3iod4jINWgq6pfn6miA==', '', 'bJtrYWY=', 'iqWLgnZ/iHaxqoamhQ==', '', '', 'mslnYGZvY2KUkZKhk8Vhp5OhnNxjpMrYsmbHqD9C', '49.1196423', '7.0760763', '7ee94463ba158f5a239ba10a9bce43d0', '0000-00-00'), +(254, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVitd1KItIiNrX11f3t4', 'aISLhXZYd3a3gX6zd7R5jFKAfrZ9jK6y', '', 'bJtrZmE=', 'e61+hYt9', '', '', 'mslnYGZvY2Obmo2hk8Vhp5OhnNxjpMrYsmbHqD9C', '48.811771', '6.7203582', '5f4bb8caea718c9219af1921a0974eac', '0000-00-00'), +(255, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtll4sn2Cdg==', 'aISLhXZYd3aErV+mea59jHc=', '', 'bJtxZGE=', 'hriNcX9/eA==', '', '', 'mslnYGZvZWKUkpKhk8Vhp5OhnNxjpMrYsmbHqD9C', '49.4404073', '6.0177489', '227a1b39fb5cbc9b7dadaf6a61e49fab', '0000-00-00'), +(256, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgot4vYZ/f3xTfrOvfLCA', 'aYSbn6akmKfF05yBdqdUhXNTfah8fLO3fQ==', '', 'bJtpZ2E=', 'hKmNig==', '', '', 'mslnYGZvZmSWkZKhk8Vhp5OhnNxjpMrYsmbHqD9C', '49.1065712', '6.2131791', 'e037b297061ac304a8ee6ce166d3714c', '0000-00-00'), +(257, '', 'g718dXZYg4Cwuo6ifqeCjVKDgqiIiaqEf4GtgneLgn18hIB1f4Z4hA==', 'idmeUHWNU3SzrYevd65Ui3N1gqiI', '', 'bJxrYGc=', 'erOMfnZldoC5s4uOhbeGZn6CgrV7', '', '', 'mslnYGZwY2GVlXmhk8VhnZudqNFknddxQg==', '47.39989', '2.930161', '09b67e75aa48dc4f88ba94e330a2f7dd', '0000-00-00'), +(258, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbelhnuwf4VYr4KLuH6Cg3mBdQ==', 'idmeUIGBeIO2pliud7B4foVTf7V3haip', '', 'bJxqYmE=', 'eqx6hHZ5iF6nqYGvgbBcj3t/hahf', '', '', 'mslnYGZwY2aZk4Ohk8VhnZudqNFknddxQg==', '47.059639', '3.938102', '56d8fd27186ca871fc760ddd0079fb88', '0000-00-00'), +(259, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fraJfIWofVinhYR9tY0=', 'aJlZkaedoabJgXy2UrKDh4ZTi7KLfqo=', '', 'bJ1sZmQ=', 'eLp+g399hl63toqOeqeAiXc=', '', '', 'mslnYGZxY2GVmZKhk8VhpZufpchknddxQg==', '50.1210516', '3.9252145', '41f58430a9116b537f1e3062a7b29bd6', '0000-00-00'), +(260, '', 'g718dXZYg4Ozp320hauDh4B4hYODgKisfYSBiXeKuH6L', 'apVZoJKrppLLxljFl4KgYHuhrciopcbYoafPl56d', '', 'bJ1pYGQ=', 'g62FfHY=', '', '', 'mslnYGZxY2KWloqhk8VhpZufpchknddxQg==', '50.6282731', '3.0940374', 'db37d6abf0f459f2d64943118c3b4d37', '0000-00-00'), +(261, '', 'g718dXZYg4Ozp320hauDh4B4hYOCeLuzgYuqe4Q=', 'apVZUIONeFGwoo6we7V9foQ=', '', 'bJ1pZWo=', 'ibOOcnKBiw==', '', '', 'mslnYGZxY2KcmoOhk8VhpZufpchknddxQg==', '50.6947734', '3.1843379', 'ec93302b692319a7e04a402d689362c6', '0000-00-00'), +(262, '', 'g718dXZYg4Ozp320hauDh4B4hYN/g6qEfH2BfH55sH2JqQ==', 'aZhvUHOBhlG1tnmqUqZ5WX50Wad7ia66eYyqhYA=', '', 'bJ1tYmg=', 'eLaGdX+MfHa2pos=', '', '', 'mslnYGZxY2OZmIKhk8VhpZufpchknddxQg==', '50.6903938', '2.8909382', '06be7044425beee5dc4dffe3fc093d56', '0000-00-00'), +(263, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYtXqAso11UYJ4crKvfYF2iXWLdQ==', 'aJlwUIONeFGoplitWaqDjXd/Wad7V7uthISm', '', 'bJ1vYmE=', 'eLmFfoCReF6luoWmhKt5jA==', '', '', 'mslnYGZxZWqWmaWhk8VhpZufpchknddxQg==', '50.1999263', '3.8303986', '036da952d72d755c6cfdf53cbe885e88', '0000-00-00'), +(264, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVild3+Iq36Jtn4=', 'b5lZkaedoabJgXymUqZ5h3N8hw==', '', 'bJ1sYGE=', 'jaWFdX97fHayr320', '', '', 'mslnYGZxZWqamp+hk8VhpZufpchknddxQg==', '50.3542409', '3.4991018', '84e9b7a33746dbfc5dd431c41921ec9d', '0000-00-00'), +(265, '', 'g718dXZYg4Ott32BgLGIi3dgfaSDfIWofVitd1KItIiNrX11f3t4', 'idmeUHV9hlGrrZGke7B5jA==', '', 'bJ1sZWk=', 'hrZ8eHp9hg==', '', '', 'mslnYGZxZmGYkaKhk8VhpZufpchDQQ==', '50.4806719', '3.2420076', '9b9cc629e2fccafba2bda10d807b6c83', '0000-00-00'), +(266, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtXqAso1QfY12', 'apVZkqCtn5bawqrFUqZ5WX50Wa9/eaq2jH0=', '', 'bJ1tYGY=', 'eqWGcoN5fA==', '', '', 'mslnYGZxZmGakp+hk8VhpZufpchknddxQg==', '50.169978', '3.2303685', 'c050d16084580a129180e08260fe5233', '0000-00-00'), +(267, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtn5XsXqCen0=', 'aYSrpZZYeH6trX2Beqt5', '', 'bJ1rZ2E=', 'eaWCfH19iH0=', '', '', 'mslnYGZxZmGalKKhk8VhpZufpchknddxQg==', '50.7374752', '2.7319392', '44270fe735fdfa9c46ea7e939e9e8dc2', '0000-00-00'), +(268, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVi0d3uGtlmHrX6Cg30=', 'aJRZoqadU3W5gX+mgKeGen5TgLKLi66pioqm', '', 'bJ1vYWM=', 'fbOOgn6BeIQ=', '', '', 'mslnYGZxZmKUlZyhk8VhpZufpchknddxQg==', '50.0083669', '4.0500726', '310a0abec04ec23fdd38123977581af3', '0000-00-00'), +(269, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLKmioeqiXdYpYuGrZNxhQ==', 'idmeUH55hXSprVixc7eA', '', 'bJ1yZWE=', 'eLl7iQ==', '', '', 'mslnYGZxZ2aXk36hk8VhpZufpchknddxQg==', '50.4150948', '3.0507573', 'bb666de685504308b7f644bd99e3fb43', '0000-00-00'), +(270, '', 'g718dXZYg4Ozp320hauDh4B4hYN/g6qEgn2ihIaR', 'idmeUHKNeoa3tX2BiaN5jXeFeqiIfA==', '', 'bJ1qZGE=', 'e7mHe3aKhIap', '', '', 'mslnYGZxaGWckYShk8VhpZufpchknddxQg==', '51.030326', '2.361877', '2aeabb543bf408b5beccb6e7061e3b69', '0000-00-00'), +(271, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLSyeYqlVnZ9go+Asnx5', 'idmeUHV9U32lgYqmgKN9jIV0h6Z7', '', 'bJ1qYmY=', 'i7aChHllhnKtr4yOfqd7foQ=', '', '', 'mslnYGZxaGebmZqhk8VhpZufpchknddxQg==', '50.330411', '3.482308', 'd0d7b50b0cb150360e39034467b971bd', '0000-00-00'), +(272, '', 'g718dXZYg4Ozp320hauDh4B4hYN8iaaye4eqiVKKo3t8sHp5hA==', 'b5VwUKOtmFGnqXmzfqeHWXSCjrWJfLqw', '', 'bJ1uYGg=', 'e7OOcXo=', '', '', 'mslnYGZxaGmdlYShk8VhpZufpchknddxQg==', '50.3763701', '3.0684226', '6a723e71f315901c06f89b59f4950492', '0000-00-00'), +(273, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWibSmfYq3d34=', 'aJRZgoZ9U3WptFiohKeO', '', 'bZRvYGE=', 'ebZ+hXqEYH2pjo6mhLY=', '', '', 'mslnYGdoZGicmIuhk8Vhmp+cntGpZcvWRUI=', '49.3639971', '2.4176791', '3c23bd43f2f524757c87244e72b484bb', '0000-00-00'), +(274, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6iseYqte4VYpn5Xq3qFfYR4', 'ibl+UHt5doK5pouBdqN7jneFi6g=', '', 'bZRsYmI=', 'erOGgHp9en+p', '', '', 'mslnYGdoZGmalJKhk8Vhmp+cntGpZcvWRUI=', '49.3875307', '2.7841027', '91008b08afa17ed79d30aeb46684a4e3', '0000-00-00'), +(275, '', 'g718dXZYg4Ozp320hauDh4B4hYN8g7S2eVi1iHuLtnqF', 'boRZcYd9gYapgYWmh7B9foRTfahWg6aEinmqgn59tH4=', '', 'bZVvYGE=', 'g6VZdnaKh3aRrnmkdw==', '', '', 'mslnYGdpY2GVmqihk8VhnJOYp5GcqXJu', '48.5938797', '-0.360905', '9a47dde33a76e7eacce3e0c36e5fed31', '0000-00-00'), +(276, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYsoJ8tot1UYV4f6imi454tHWHdXg=', 'ibl+UISHeIa2gYWihKt5WXSCgrd/fLc=', '', 'bZVvYGE=', 'g6VZdnaKh3aRrnmkdw==', '', '', 'mslnYGdpY2qdl5qhk8VhnJOYp5GcqXJu', '48.598552', '-0.3492886', 'fd5a222ce7f78e1c66bece23c566f0ba', '0000-00-00'), +(277, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe7qEfH21iIGBtg==', 'aZRpUFGKiHaEqI2qfq51jn94WaSGhrGwgYaif4R9', '', 'bZZqYGg=', 'eqWFcXqL', '', '', 'mslnYGdqY2KcmYyhk8VhpZufpchknddxQg==', '50.9393964', '1.8739577', '95e59156e5a075a6cf8d54a338272a8d', '0000-00-00'), +(278, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWh66pioqmVn99sH18t2Z2g3mBdKk=', 'ibl+UHV9U4Slqoa1UrGBfoQ=', '', 'bZZwYGI=', 'ebaOcYplf3KRo42qhbV9foR4', '', '', 'mslnYGdqY2Kdk5Chk8VhpZufpchknddxQg==', '50.4872426', '2.5379071', '356d5162d0e558c3b82ee8e58a82808e', '0000-00-00'), +(279, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6athli0d4h5tJJXkVl6hoR4hISnfbOEuw==', 'aJhZUHKOeH+5plird6OCWYx0kg==', '', 'bZZpYmM=', 'eLaLcYQ=', '', '', 'mslnYGdqY2OZmIyhk8VhpZufpchknddxQg==', '50.2837422', '2.7478476', '270a6e3435207427e7102cfcc5d6c6c8', '0000-00-00'), +(280, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYpHqMqIJ9gIaHUbeiga+Gj3eBc4WFqIk=', 'aJtZUIONeFG3ooGvhoKBeoeFgqZ7', '', 'bZZpYGk=', 'eLaLcYQ=', '', '', 'mslnYGdqZWKdl5mhk8VhpZufpchknddxQg==', '50.2941435', '2.7705169', '1316dbbb9195cd8c2eb946bbdb5f3d7f', '0000-00-00'), +(281, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtlmHrX6Cg30=', 'bpVZUIONeFGnqXmvhquAhYs=', '', 'bZZqYGE=', 'eqWFcXqL', '', '', 'mslnYGdqZWOVkquhk8VhpZufpchknddxQg==', '50.943517', '1.8552069', '93f22a119874bba69cd4259a60e4e3c0', '0000-00-00'), +(282, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eK', 'eLp+foZ9U3W5gXupc7Z5eoc=', '', 'bZZuYmE=', 'g6lZhICNhIaptWWxc7R9jF+DhaR9fA==', '', '', 'mslnYGdqZWmUmIihk8VhpZufpchknddxQg==', '50.516361', '1.602514', '11bbc45652b86e06b9dce92cacce4eba', '0000-00-00'), +(283, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf6qyioGBiXeGp5M=', 'ebOOfHaOdIOogX6BdqOGfHp8fLKLibk=', '', 'bZZrZWM=', 'f6mHeX9ldXaltoWwgLY=', '', '', 'mslnYGdqZmSWmX6hk8VhpZufpchknddxQg==', '50.406364', '2.961933', 'bcd5dc6d3f129feeb99b22c887ec2f8b', '0000-00-00'), +(284, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Klin+2e4SBtn5XvYiFg3t4f6Wz', 'bZxZUIONeFGlr4ywe7B5WXZ4WbZ3gLO4WH25i4J9tJI=', '', 'bZZvZmE=', 'eamOhoOR', '', '', 'mslnYGdqZmqUk32hk8VhpZufpchknddxQg==', '50.5203642', '2.6659653', 'f5ab204189761765abe89ac8e9e75037', '0000-00-00'), +(285, '', 'g718dXZYg4Cwuo6ifqeCjVKJerh4eLM=', 'aISrpZZYd3aEo4qmhqN7h3c=', '', 'bZZyYmM=', 'eK2LdV6LiIORrXmOfruH', '', '', 'mslnYGdqZmqckoqhk8VhpZufpchknddxQg==', '50.6342907', '2.40671', '174a25b0a04854174dc26435f6c22838', '0000-00-00'), +(286, '', 'g718dXZYg4Ozp320hauDh4B4hYN8iaaye4eqiVKKo3t8sHp5hA==', 'aJdZcYd9gYapgXymUqV8eoR1iLGEgKq2', '', 'bZduZ2E=', 'ebZ6g4R5dl6wpouOf6uCfoU=', '', '', 'mslnYGdrY2GVk4+hk8VhnJ6Yq9ClpdmSnqpuQA==', '45.413519', '3.3214974', '474a609041e6759d17e3cc2b322117d8', '0000-00-00'), +(287, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV5I=', 'jdOilVGKgn6lqoam', '', 'bZdtYGE=', 'eqx6fXKEfHa2pos=', '', '', 'mslnYGdrZGeampChk8VhnJ6Yq9ClpdmSnqpuQA==', '45.7784002', '3.0495417', '0b3e099e63b6b359daba64af3106d891', '0000-00-00'), +(288, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf6a5jH2BjId9', 'eLp+foZ9U3WptFike695jA==', '', 'bZhqZmE=', 'hLOLfHJ5hg==', '', '', 'mslnYGdsY2GYk5Ghk8Vhm6GlnciXrN2SnqpuQA==', '43.3406856', '-0.2758472', 'd6efa3b6ffbd463e928b0a2370e0ed86', '0000-00-00'), +(289, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0ilKOq4d6qYeEUXx4UbSija0=', 'edOunJaulKPIgX2lgbd1i3ZTgaiIia6zjA==', '', 'bZhpZWI=', 'h6WO', '', '', 'mslnYGdsY2KcmoChk8Vhm6GlnciXrN2SnqpuQA==', '43.3050103', '-0.3782568', 'b9e771b7e2cd6794e45f4d13c03bd90e', '0000-00-00'), +(290, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tgneKq35XpoJxg4p8hb6BebV+o4KNe4SOqA==', 'aYSLhXZYeVGuooWud7U=', '', 'bZhrYGU=', 'ea16goOBh4s=', '', '', 'mslnYGdsZGmWlIKhk8Vhm6GlnciXrN2SnqpuQA==', '43.4626859', '-1.5526127', '939532b20ae10e8172cd12d0bdb822c6', '0000-00-00'), +(291, '', 'g718dXZYg4Cwuo6ifqeCjVJ3foOEeLulioqm', 'idmeUHt5fFGlrXmq', '', 'bZhrYmE=', 'iqWCfoVlfXalr2Wxe6d4ZnZ4ZrOFibk=', '', '', 'mslnYGdsZGmYlX+hk8Vhm6GlnciXrN2SnqpuQA==', '43.1673642', '-1.2319105', '50eebae853540ef30b649301840bbe80', '0000-00-00'), +(292, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fIWwX3mziIGNvHo=', 'aZxZUHOHiH2pt3mzdoKGiHl4i4N5eL+phnm3ew==', '', 'bZlqYGg=', 'g7OOgnV9hg==', '', '', 'mslnYGdtY2GVlYWhk8VhraGopdKrqsqSnqpuQA==', '43.0899002', '-0.0488929', '776334f1ee6ca1228b264d981662a035', '0000-00-00'), +(293, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg6a5jIqmd3+HsI0=', 'eLp+foZ9U3WEopKmhKd9kQ==', '', 'bZlpYWc=', 'i6WLcnaL', '', '', 'mslnYGdtY2mblZChk8VhraGopdKrqsqSnqpuQA==', '43.227193', '0.055477', '90fe83096ea579a25094a93e8f2d9cdc', '0000-00-00'), +(294, '', 'g718dXZYg4Cwuo6ifqeCjVJ2gbV/irmteYaBeIGNtIqMrYc=', 'a4SappamqJaEr32thbGCWX90h6d7g6Y=', '', 'bZpwYGE=', 'eLaAdX19hl63toqOf6eG', '', '', 'mslnYGduY2qWlY+hk8VhpqGhrdObo9HNnaqPnKRFbA==', '42.5654607', '3.0059057', 'f653f4cf128228bf832d72f7cf63b7bb', '0000-00-00'), +(295, '', 'g718dXZYg4Ozp320hauDh4B4hYN3ia63jIGle1J6tIJ4sn0=', 'aJZZoqadU3W5gXqihLR1gHc=', '', 'bZtsYGI=', 'iqeBeX2MfHispoGu', '', '', 'mslnYGdvY2Gak3yhk8VhrKalmtaYptrWn2bHqD9C', '48.6039308', '7.7519037', 'a9c2bdfe0cd367b90f5edd88139fd9a5', '0000-00-00'), +(296, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6awfZCihHaKp1l7uYZxhFhbebO1fa17p4Zi', 'bplZoqCtp5aEpY2BhKp9hw==', '', 'bZttYGU=', 'gLCFe3qKdnmRqIqieKh5h4WHeqd7hQ==', '', '', 'mslnYGdvY2GcmH6hk8VhrKalmtaYptrWn2bHqD9C', '48.5273882', '7.7311574', 'b20e3e452524b90b259ca03cfede76c2', '0000-00-00'), +(297, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtn5XuIF1g32Gdg==', 'a4SLhXZYd3a3gXmtfqt5jA==', '', 'bZtyZ2E=', 'hqmLfXqGenay', '', '', 'eslnYGdvZGebmoShk8VhrKalmtaYptrWn2bHqD9C', '49.00087', '7.128347', '160373af10499d823dce5acd73007c5f', '0000-00-00'), +(298, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVikfnOKrn6KhH11UX6Chqeija12', 'eLCFdXZYd1iltYCmgKeH', '', 'bZtsYGc=', 'iqeBeX2MfHispoGu', '', '', 'eslnYGdvZWeUk4ihk8VhrKalmtaYptrWn2bHqD9C', '48.6075759', '7.7099709', 'b21d10f509b7f91d6265e7f6a578995c', '0000-00-00'), +(299, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeq2lioSmiVKIsYKFuH6E', 'bISLhXZYd3a3gYyqhKN9hX54jrWJV7Klioekd3uGtQ==', '', 'bZxxYGM=', 'i6x6fn8=', '', '', 'mslnYGdwY2GblYShk8VhrKalmtaYptrWn2bHqD9C', '48.0708933', '7.3367713', '2844d8c4df5784ac10c1cead7252fc9c', '0000-00-00'), +(300, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+zi32xflKLtoiJp4RQWYCChamtgaaEiw==', 'ibl+UHuNf3a3gX6mhLSN', '', 'bZxuYGU=', 'frl+coiBf32psw==', '', '', 'mslnYGdwZGmXmn2hk8VhrKalmtaYptrWn2bHqD9C', '47.901203', '7.228875', '6dca8f9e8096d11b71c68328a6a783dd', '0000-00-00'), +(301, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf6qwfYamVnSHt3x/qYs=', 'aJxZUIONeFG2sIumgKR5i3k=', '', 'bZ1vY2I=', 'jamHeYSLfHa5uQ==', '', '', 'mslnYGdxY2GdlHqhk8Vhpauip5GcqXJu', '45.6983536', '4.8905485', 'd132294904d9939cbbbe6253f8bfdd33', '0000-00-00'), +(302, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6u2eYakhXuLgot4pn58coGG', 'eqx+fXqGU3W5gXywdquC', '', 'bZ1uZ2I=', 'e6WLdHqEf4o=', '', '', 'mslnYGdxZmaUlYKhk8Vhpauip5GcqXJu', '45.8161658', '4.7629036', 'c11eccbc4410e2a3ec6de1531a06d519', '0000-00-00'), +(303, '', 'g718dXZYg4Cwuo6ifqeCjVJ0gqqLfLelhnym', 'aYRZgH15dnaEqH2whKl5jFJ3jreIfLup', '', 'bZ1xYmQ=', 'eamFfHaOfH2wpg==', '', '', 'mslnYGdxZmiXlYKhk8Vhpauip5GcqXJu', '46.104654', '4.7451788', '8737f9ae5765e0f8fd4265aaecf3f3f4', '0000-00-00'), +(304, '', 'g718dXZYg4Ozp320hauDh4B4hYOGhrO4eYqkfneK', 'h9Cak5ZYfXKnso2mhYJ2i3d/', '', 'bpRpYWU=', 'jamMf4aE', '', '', 'mslnYGhoY2mck5yhk8Vhm5emmtGZptOSnqpuQA==', '47.6354117', '6.1686975', '3a2e936b62a4ced5fa60758e83001d39', '0000-00-00'), +(305, '', 'g718dXZYg4Cwuo6ifqeCjVJ/jrB/fLep', 'apdZpJaqU6PZxliohKOBhoGBjQ==', '', 'bpRsYGc=', 'g7mRdYaBf16wpouOdKN9h4U=', '', '', 'mslnYGhoZGGbmauhk8Vhm5emmtGZptOSnqpuQA==', '47.8245661', '6.3779426', '72b4a7679c3afd640b85b139ecce69c6', '0000-00-00'), +(306, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLGpkHmveoR9gn2MsXp5f30=', 'cJlZlaSolJTJgXmtd7p1h3aFfoN6jLKlgYam', '', 'bpVpYWk=', 'hKV8f38=', '', '', 'mslnYGhpY2GckXqhk8VhnZudqNFknddxQg==', '46.3138226', '4.81663', '52277585e447687c8cde5f9470108440', '0000-00-00'), +(307, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWojVi0d3WKp1l6s36Fgw==', 'aZZZUHKOeH+5plild4J3gXOFiK+CfLg=', '', 'bpVvYGU=', 'h6WLcYplf3aRroeve6OA', '', '', 'mslnYGhpZGiZlrChk8VhnZudqNFknddxQg==', '46.4500904', '4.125945', '00bcfbed463765e4bab61fadef0c7ec6', '0000-00-00'), +(308, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbqyeZGOfneEp4d8hHt/hnt7drY=', 'aJlwUKOtmFGsj3upc6+EgoGB', '', 'bpZpYGI=', 'g6lZfXKGhg==', '', '', 'mslnYGhqY2GXlY+hk8Vhp5OhrcipZcvWRUI=', '47.983707', '0.2262363', '7f967b4ba092b97b29bef59f51a4a77e', '0000-00-00'), +(309, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtY18hHxxhYB4g62vfQ==', 'aZRrUKOtmFGopli0hoJ1jnR8hw==', '', 'bpZpYGE=', 'g6lZfXKGhg==', '', '', 'mslnYGhqY2mWk3uhk8Vhp5OhrcipZcvWRUI=', '48.0226076', '0.1787404', '838a458b025d84870ee004961c3ac169', '0000-00-00'), +(310, '', 'g718dXZYg4Ozp320hauDh4B4hYN+hrmphIGmiA==', 'bphZoqadU3W5gX+zc7B4WXR0i6V7iaa+', '', 'bpdqaWE=', 'eqx6fH19hl6wpouOd6OJkQ==', '', '', 'mslnYGhrY2GVk4uhk8VhoKSYp9KYo8qSnqpuQA==', '45.5505893', '5.9824276', '3aa58344ef3fa7bd2d2538b5612d44a4', '0000-00-00'), +(311, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLKmioeqiXdYpYuGrZNxhQ==', 'aZhtUFF5iXaytn2BdqdUhXNThax4fLeljIGwhA==', '', 'bpdvYGU=', 'hLOOhHp9hYQ=', '', '', 'mslnYGhrY2GXkYShk8VhoKSYp9KYo8qSnqpuQA==', '45.4823827', '6.5285805', '0fd265406af6620278ebe7b0ac15d629', '0000-00-00'), +(312, '', 'g718dXZYenaypoqifoJ5jVKHfqZ+hbSwh3+qh4d9gol4uYVQeX2FgLmtjA==', 'apRwUFF5iXaytn2BdrdUhoGBjYN5fLOtiw==', '', 'bpdsYGM=', 'iqWCfoVlfXalr2Wld4+BeoeFgqiEhao=', '', '', 'mslnYGhrY2GXmI2hk8VhoKSYp9KYo8qSnqpuQA==', '45.2725731', '6.3502322', 'f18fbb41cb5f307718b3d59295299618', '0000-00-00'), +(313, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfIW3eYSmjHc=', 'bJ1ZgoCNh3aEpV+Bd7aGfn91gqiIfLg=', '', 'bphqYGg=', 'eLKHdX55hoSp', '', '', 'mslnYGhsY2GVkYKhk8VhoKSYp9KYo8qSnqpuQA==', '46.1865393', '6.2327195', '0e79ecd148bae94e13ffd0892ae19834', '0000-00-00'), +(314, '', 'g718dXZYg4Ozp320hauDh4B4hYN+hrmphIGmiFJ+tHqFp4h5hFh1erem', 'b5pZoqadU3WLgXm0gKt5i3eG', '', 'bphqY2c=', 'ebOHfnaOfH2wpg==', '', '', 'mslnYGhsY2GVlYahk8VhoKSYp9KYo8qSnqpuQA==', '46.085247', '6.4103438', '54710f9ed9598958a9f482bf661f53ae', '0000-00-00'), +(315, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7iljoeqe1KEp4Z4sg==', 'a5RZkqCtn5bawqrFUqV1i4CCjQ==', '', 'bphrYGQ=', 'i6yIfoCGYH2ptGWjc6uCjA==', '', '', 'mslnYGhsY2GYmJKhk8VhoKSYp9KYo8qSnqpuQA==', '46.37176', '6.4751317', 'e566341d10c32fda952af612c9340ec3', '0000-00-00'), +(316, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+peYaBeoSHt3qFuA==', 'aZRZUIONeFGxpnymhKt3', '', 'bplpYWg=', 'h6WLeYQ=', '', '', 'mslnYGhtY2iUmYWhk8VhqZOlotZknddxQg==', '48.8806876', '2.3042936', '45d21688509fa28ca177671363123401', '0000-00-00'), +(317, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeaqwhIGiiHY=', 'aJduUFGKiHaEo32tfqt1i3Y=', '', 'bplpYWk=', 'h6WLeYQ=', '', '', 'mslnYGhtZWeUmXuhk8VhqZOlotZknddxQg==', '48.8962512', '2.334467', '2f0d9de722745f4ee059224bf4ce0c98', '0000-00-00'), +(318, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvindltoF8tn6Ddg==', 'a5RZUIONeFGwolingbCIenuBfg==', '', 'bplpYWc=', 'h6WLeYQ=', '', '', 'mslnYGhtZmOVmIihk8VhqZOlotZknddxQg==', '48.8509709', '2.2717481', '0524302f0374cb5127471c4d766feb96', '0000-00-00'), +(319, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYo4V8vHp+dYp4Uai2haKF', 'aZ1ZcnqLU4O5plild4J3i4GBjLd3e7k=', '', 'bplpYWY=', 'h6WLeYQ=', '', '', 'mslnYGhtZmOZl3+hk8VhqZOlotZknddxQg==', '48.8338029', '2.3017219', '5e36d2eaf24645fca820c61465ca315d', '0000-00-00'), +(320, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWlhHqmiIZYpn5XsY5+', 'aYRZgoZ9U3WLsISqiKeI', '', 'bplpYGg=', 'h6WLeYQ=', '', '', 'mslnYGhtZ2GXkZGhk8VhqZOlotZknddxQg==', '48.8496888', '2.3196165', '5a8b801e878ba4ed41d29c82ab06b489', '0000-00-00'), +(321, '', 'fKeIfHZYZXWEpX2ohKdUiYSCf5GGia66fX2Be3WHrn6KhImCeo54doSnfbOEo4J9ew==', 'aZxZUIONeFGoplitWaN2e3dTgLV7frStin0=', '', 'bplpYGc=', 'h6WLeYQ=', '', '', 'mslnYGhtZ2KWmn6hk8VhqZOlotZknddxQg==', '48.8475221', '2.3253994', '17bb13c44d084480e94ea0bb71b3d8c2', '0000-00-00'), +(322, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6y5gYStd4eFp1mLrYt1fQ==', 'aZdwUFF6goawpo6ihKZUi3OGiaR/gw==', '', 'bplpYWU=', 'h6WLeYQ=', '', '', 'mslnYGhtZ2Wbl4Chk8VhqZOlotZknddxQg==', '48.8395407', '2.331148', '171b9e8727700daf8e73a4cd4ccf0ed6', '0000-00-00'), +(323, '', 'g718dXZYg4Ozp320hauDh4B4hYN3jKy5i4ymVnR5tI1/s4V0eg==', 'bJZZUHKOeH+5pliihKuHjXt3foN4ia6lhnw=', '', 'bppsZmE=', 'eaWLdX+MfH8=', '', '', 'mslnYGhuY2GUmI6hk8Vhq6GontFknddxQg==', '49.5417002', '0.9569676', '95b64fd20c9c2c076f42a2e44845d602', '0000-00-00'), +(324, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fLineYq1e4U=', 'aJlwZVFYdYC5rX23c7R4WYB4hbaFhYWxeYale355', '', 'bpptYGI=', 'fal8cX6I', '', '', 'mslnYGhuY2GXl3qhk8Vhq6GontFknddxQg==', '49.7465344', '0.3872123', '59634f20d3d6f08070d43e3732f40a0e', '0000-00-00'), +(325, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgbqwfYuBgndYpX6Ksn4=', 'apdZUIONeFGqrX22hLeH', '', 'bppvYGE=', 'g6lZeHKOhXY=', '', '', 'mslnYGhuY2Gak32hk8Vhq6GontFknddxQg==', '49.4906537', '0.1382278', '32a72128247ead3f190c48ba28926e94', '0000-00-00'), +(326, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfIWsjYqte1+Op4eL', 'aIRZgoZ9U3upooaBf7GJhXuB', '', 'bpptZ2E=', 'g6lZhIN9g4C2tQ==', '', '', 'mslnYGhuY2KVlYShk8Vhq6GontFknddxQg==', '50.0566134', '1.3684553', '098537885de6e5d37f71ead3da48e4c3', '0000-00-00'), +(327, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWufXmvhHdYpmB4tnw=', 'aZZZUIONeFGotliod7B5i3N/Wad7V6yljYStew==', '', 'bppsYWE=', 'iqWCfoV9YHKos320hac=', '', '', 'mslnYGhuZGiXlpGhk8Vhq6GontFknddxQg==', '49.501871', '0.089656', '6000f5ea6b748dc7cee686ca7beebda5', '0000-00-00'), +(328, '', 'erOFfHZ/eFG0oo2tUqR5i4Y=', 'aYSLhXZYg3K5rVijd7SI', '', 'bpptYGQ=', 'fal8cX6I', '', '', 'mslnYGhuZGiclnuhk8Vhq6GontFknddxQg==', '49.7558715', '0.3821548', '2eb1f5046852a5a8079281d64c5e1e03', '0000-00-00'), +(329, '', 'erOFfHZ/eFG2poamUqWDjYs=', 'ibl+UHaFgHKytn2tUq55fIF4jrU=', '', 'bppwYmE=', 'eLl/dnKR', '', '', 'mslnYGhuZGqZl4ahk8Vhq6GontFknddxQg==', '49.711235', '1.111639', 'c7745eeeab1c853da86425a02effc4aa', '0000-00-00'), +(330, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKCsYx8tIE=', 'eqz8soV9dIaEpX2Bf6eHh3t4i6iJ', '', 'bpprZ2E=', 'hKmMfnp9hXa3jn2vX6SGeos=', '', '', 'mslnYGhuZWWYk4uhk8Vhq6GontFknddxQg==', '', '', '42fb57d5ba112092e65421c7ac7e9db6', '0000-00-00'), +(331, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6yph4qoe4VYpHqHuIKDhX0=', 'a5VZoqCtp5aEpX2Bdrd3hXN8iw==', '', 'bppsaGE=', 'eqWHhHaEeIY=', '', '', 'mslnYGhuZmOXmH6hk8Vhq6GontFknddxQg==', '49.4430885', '1.0188297', 'b6769a4706680bb12d19fd1a638b6398', '0000-00-00'), +(332, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYrn6GtIh8dVh1drCtea8=', 'e7OGcXqGeFGoplitWaOCgHdTgKSIe66phg==', '', 'bptrZmE=', 'eqx6fXp/gYo=', '', '', 'mslnYGhvY2SYk3yhk8VhnKSYrcifo5PKqkVr', '48.9818823', '3.1446579', '9c3eb7c500fe641f442683b9d8cfe639', '0000-00-00'), +(333, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6m5WH+2e1J5go2JqYx9dos=', 'e7OGcXqGeFGotlioh6dUelKHi6iJhKq3', '', 'bpttZGE=', 'erOHd3qLYIS5s2W1eqeGiId0h7F7', '', '', 'mslnYGhvZGeZmYKhk8VhnKSYrcifo5PKqkVr', '49.021134', '2.9644027', 'dbaed88598869c65c94e21275d1f0b4f', '0000-00-00'), +(334, '', 'g718dXZYg4Cwuo6ifqeCjVJ6frV3iamEfH2BhHeKuHqD', 'b51ZUHSHiIO3gXymhYKGiHV7frZjhbSti4Gmgg==', '', 'bptqaGc=', 'hbOCg3p9fw==', '', '', 'mslnYGhvZGqYkYqhk8VhnKSYrcifo5PKqkVr', '48.8417733', '2.615006', '81bb881816053e76f3ef767bf923580b', '0000-00-00'), +(335, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLO4h4aqhFJ7o4t8sX4=', 'aISJfHJ7eFGrtou1c7h5WXWCjrV4fLk=', '', 'bptqZ2c=', 'iqWPeXiGjF6wpmW1d6+EhXc=', '', '', 'mslnYGhvZWOYlY+hk8VhnKSYrcifo5PKqkVr', '48.5955639', '2.578176', 'a33abbaa6c0e97e523634a601bfd3f3a', '0000-00-00'), +(336, '', 'g718dXZYg4Cwuo6ifqeCjVJ4hqyCgKqEfI2BeXp5tn6DqY0=', 'aplZUHSHiIO3gXy2UqZ1h4d1fg==', '', 'bptwYGE=', 'iqmLgnqL', '', '', 'mslnYGhvZWecmXyhk8VhnKSYrcifo5PKqkVr', '48.8574629', '2.7784607', 'f80d77026942ed1395cfa4f237857469', '0000-00-00'), +(337, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6mLgIe1e36Ep4uAqVl1hVh3doS1h7aEq4eGdw==', 'h7B6c3ZYeYOlr3uwe7VUi3N1fq93gLg=', '', 'bpxpZGM=', 'frmScX97goa2tQ==', '', '', 'mslnYGhwZGabmYuhk8Vhr5elrMSfo9HJq2bHqD9C', '48.7845521', '2.0504451', '3d4793ac9f545a8c6160089fd54cc770', '0000-00-00'), +(338, '', 'g718dXZYg4Cwuo6ifqeCjVJ/iLh/ioWmeYukd4A=', 'bIRZcYd9gYapgXy2Uql1hVJ/fqaCfLen', '', 'bpxuYWQ=', 'iaWGcoCNfH2wpow=', '', '', 'mslnYGhwZWaYmpChk8Vhr5elrMSfo9HJq2bHqD9C', '48.6410948', '1.8250651', 'dec6d250f70abff4ef2026e5e803b560', '0000-00-00'), +(339, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6ilhYGtgndYpYV4uX11fQ==', 'aZVZUIONeFGoplitc4KAkoR4', '', 'bpxwYWI=', 'hKWHhHaLYH2ljo6qfq55', '', '', 'mslnYGhwZmaXlIuhk8Vhr5elrMSfo9HJq2bHqD9C', '48.9656943', '1.7163952', '4d5db3933f97fe3ece19c2b14036e304', '0000-00-00'), +(340, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLiEf4qqhoJ9o46P', 'aISLhXZYeHWztnmzdoJ8foSFgrKK', '', 'bp1rYGU=', 'h6WLhHl9gXK9', '', '', 'mslnYGhxY2GdkY2hk8VhqaGcrcybqdiSnqpuQA==', '46.6373951', '-0.2596431', '784ae4108bbbb00e6ce2cb91f62bb8f2', '0000-00-00'), +(341, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe7qEhXmzh4d9sI18tot1', 'aYSLhXZYd4aErnmzc6uH', '', 'b5RqYmE=', 'ibl+', '', '', 'mslnYGloZGiXmn6hk8Vhmp+cntGpZcvWRUI=', '50.2684644', '1.674729', '5c84e1481b12f02b1b7c66e41dcd1458', '0000-00-00'), +(342, '', 'g718dXZYg4Cwuo6ifqeCjVJ/eoN+hrmzgX0=', 'ibl+UHWNU3OltYevgKt5i1KAeqt/jA==', '', 'b5RpYWc=', 'eLGCdX+L', '', '', 'mslnYGloZGmck4Shk8Vhmp+cntGpZcvWRUI=', '49.8964029', '2.2741636', '1b0c8c2b535bc0b07159428c7dca7cbc', '0000-00-00'), +(343, '', 'g718UHh9gVG4pnupUrKGgoh4WcebqoWxfYyqe4SLgox4rYeEUYV0g7iqhg==', 'bZxZUIONeFGopoSxd6V8', '', 'b5RpZGQ=', 'eLGCdX+L', '', '', 'mslnYGloZGmcmYyhk8Vhmp+cntGpZcvWRUI=', '49.8843937', '2.2947937', '406c79466164528a7bfba916d19c4455', '0000-00-00'), +(344, '', 'g718dXZYg4Ozp1ixhKuKflKXntZWhKq4gX2ziVKLo4KFuFl9coqHerI=', 'bZxZUIONeFGopoSxd6V8', '', 'b5RpZGQ=', 'eLGCdX+L', '', '', 'mslnYGloZGqYmYChk8Vhmp+cntGpZcvWRUI=', '49.8843937', '2.2947937', '9a7d993703f15bd02ae01b39d692590a', '0000-00-00'), +(345, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3WKp1l6s36Fgw==', 'appZcoCNf3a6ooqlUqZ5jFJ0h6qCeK63', '', 'b5RrYGE=', 'h6mLf3+GeA==', '', '', 'mslnYGloZGqZkoShk8Vhmp+cntGpZcvWRUI=', '49.9266205', '2.9343804', '4337ee1cd9eb74630a7f35e3ea487e1f', '0000-00-00'), +(346, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4Q=', 'a5lZUIONeFGwooimi7SDjoV4', '', 'b5VrYGE=', 'hKWTcX59hw==', '', '', 'mslnYGlpZGKYlXyhk8VhraGopdKrqsqSnqpuQA==', '43.5042758', '2.3840172', 'c3173b0af6d87397d6c1d4f36dca71ba', '0000-00-00'), +(347, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV6mpWIizd3Z9tQ==', 'ibOOhHZYd3aEtYe2frGJjHc=', '', 'b5ZqYGM=', 'eqWMhHaEhnK2s3m0e7A=', '', '', 'mslnYGlqY2GUlYKhk8VhraGopdKrqsqSnqpuQA==', '44.0333916', '1.1210607', '38bbfe0bce9b97706b10183778ee3eaf', '0000-00-00'), +(348, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVixf3eKtH5XsXqCen1ThaymebQ=', 'ibl+UH55hXqpjoqwhadUgHuBfraKfA==', '', 'b5ZpYGE=', 'hLOHhHKNdXKy', '', '', 'mslnYGlqY2Gako+hk8VhraGopdKrqsqSnqpuQA==', '44.0005115', '1.3609696', 'd9526ab761af91105b893d9bfd52df92', '0000-00-00'), +(349, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLSyWHqti38=', 'aJVqYVF6goawpo6ihKZUhXeCh4N4g7qx', '', 'b5dpYWI=', 'e7Z6d4aBen+lrw==', '', '', 'mslnYGlrY2GVl6uhk8Vhp5uWnpGcqXJu', '43.5268319', '6.4863031', '6c60c0a5396c715ffab12f81c89aba89', '0000-00-00'), +(350, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfrSwfmWphYZ9rg==', 'eLCF87p9U3ipsIqod7VUfYeGjKSLfqo=', '', 'b5dtYGE=', 'f71+gnaL', '', '', 'mslnYGlrZGGVlZqhk8Vhp5uWnpGcqXJu', '', '', '34ae503d13183870e6c8ffe02b14885e', '0000-00-00'), +(351, '', 'g718dXZYg4Cwuo6ifqeCjVJ0haV7ibmEe3mui4U=', 'bJppUKOtmFGspoaze4J7goR0jqc=', '', 'b5dvYGE=', 'fbZ+eoaL', '', '', 'mslnYGlrZGWYkaihk8Vhp5uWnpGcqXJu', '43.4425395', '6.7557437', 'c5caea221530961be262e1351bc94394', '0000-00-00'), +(352, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7epf4GwhHOEgnqFsn5dhIeDea2mWLF7pQ==', 'ibl+UHR9hnK2gY6mjLx1h3s=', '', 'b5dpaWk=', 'i7OOfICG', '', '', 'mslnYGlrZGWZlJyhk8Vhp5uWnpGcqXJu', '43.1231905', '5.9313914', 'f98b7dd20693c62e1af007b654bb09c0', '0000-00-00'), +(353, '', 'g718dXZYg4Ozp320hauDh4B4hYN3ia63jIGle1J6tIJ4sn1QWXuChra0YQ==', 'boRZc4CNhYSEooqqhbZ9fXdTe7V/eLOo', '', 'b5hqYGE=', 'hrZ6fnh9', '', '', 'mslnYGlsY2GYl42hk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '44.138054', '4.8043634', '253a078e8b7a9eb40df23369afeb2ac3', '0000-00-00'), +(354, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6q8eYaliHdYpo6EpYw=', 'ibl+UHKEg3mzr4umUqx1jnh5i6iK', '', 'b5hsYGE=', 'eqWPcXqEf4Cy', '', '', 'mslnYGlsY2KVlIuhk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '43.8326963', '5.0287304', '521753c4a76bae1b73cf6569e2375064', '0000-00-00'), +(355, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfaq2fIGvd4B8got8uoiFfQ==', 'ibOOhHZYd3aEr5GwgLU=', '', 'b5hvYGI=', 'jaWFgnZ5hg==', '', '', 'mslnYGlsY2iUkX2hk8VhmpurZtCXqdjJoaTNm2Ce1EZB', '44.3869971', '5.0111847', 'a6633ee45980db7d9ae858044338dfa2', '0000-00-00'), +(356, '', 'g718dXZYg4Ozp320hauDh4B4hYN7e7S5eYqlVnSKo4eDvQ==', 'bISbn6akmKfF05yBd6aDjnOFfYN4iaayhJE=', '', 'b5lpYGc=', 'g6VZgoB7e3aRtI2zX7uDhw==', '', '', 'mslnYGltY2GWmY2hk8Vhp5OhrcipZcvWRUI=', '46.6743057', '-1.4423294', '7a9e61d10374ff790fe2a66aa1fd30c4', '0000-00-00'), +(357, '', 'g718dXZYg4Ozp320hauDh4B4hYOMeLGpin2Bg3OMqn4=', 'idmeUHSAdIWpoo2jhKt1h3ZTiK+FhbOpZYuOg3eK', '', 'b5lsZGE=', 'hrCIfn99YIS5s2Wud7Q=', '', '', 'mslnYGltY2GYlIOhk8Vhp5OhrcipZcvWRUI=', '46.5121262', '-1.7744359', 'f83075c2f88ace575dd648d7767da739', '0000-00-00'), +(358, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYjw==', 'idmeUHV9U32Eonqjc7t5', '', 'b5lqaGE=', 'eqx6hHZ5iF6oiIetgbCCfg==', '', '', 'mslnYGltY2GYmKihk8Vhp5OhrcipZcvWRUI=', '46.4688016', '-1.7295687', '804973dc412bdfb2defb3a0ae5621b92', '0000-00-00'); +INSERT INTO `181010_eta` (`id_eta`, `academie`, `nom_eta`, `adresse1`, `adresse2`, `cp`, `ville`, `nom_ref`, `tel_ref`, `email_ref`, `lat`, `lon`, `mdp_ref`, `date_co`) VALUES +(359, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYsH1XqI5Qg4d2', 'idmeUHSAdIOwpoWiebB5', '', 'b5lpY2Y=', 'g6VZgoB7e3aRtI2zX7uDhw==', '', '', 'mslnYGltY2KXkX2hk8Vhp5OhrcipZcvWRUI=', '46.6839462', '-1.42012', '08123f016ca2ac3f96e4fd12cc26c339', '0000-00-00'), +(360, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLiEjH2ziHeLgouGuYB1hA==', 'idmeUHt9dH+Eroe2fquC', '', 'b5ptYGE=', 'eq2PgnKR', '', '', 'mslnYGluY2GVkY2hk8VhqaGcrcybqdiSnqpuQA==', '46.135466', '0.282239', '95a17f3a7ea655828976cf5e8728f054', '0000-00-00'), +(361, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWhKa2e1iohXaKq34=', 'aJ1ZoqadU3WptFiud7eGfoU=', '', 'b5prYGc=', 'g7OOdIaG', '', '', 'mslnYGluY2GWk3+hk8VhqaGcrcybqdiSnqpuQA==', '47.0125997', '0.0887223', '59dc3bf35d183aa2e75ed086199e946a', '0000-00-00'), +(362, '', 'g718dXZYg4Cwuo6ifqeCjVJ/ibJWgr6zjIc=', 'aZpZUHKOeH+5plild4KAelJ5i6SKfLeygYym', '', 'b5ppY2U=', 'h7OChHp9hYQ=', '', '', 'mslnYGluZGWUmaahk8VhqaGcrcybqdiSnqpuQA==', '46.589366', '0.3835721', '2bc42ba268ce69843c54ac4e3656100a', '0000-00-00'), +(363, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHqihoaBtY18hH1xg4Z4hQ==', 'aZxZUHKOeH+5plild4KEfoR8gLh7jL0=', '', 'b5tuYGE=', 'iqWCfoVljIOtpoG5X651ZoJ4i6Z+fA==', '', '', 'mslnYGlvY2GZkoChk8VhpZugqMqbqpPKqkVr', '45.5039229', '1.2011306', 'ae17ad72dba1df2233d009af040aad80', '0000-00-00'), +(364, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0ilKCp3qF', 'aZpZUIONeFGptn+mgKdUj3OFhayE', '', 'b5tpYWc=', 'g62Gf3h9hg==', '', '', 'mslnYGlvY2qVmpqhk8VhpZugqMqbqpPKqkVr', '45.826034', '1.2752724', '1d12fbbaec089965b4fdb5a569febe2a', '0000-00-00'), +(365, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgoN8pYdQfoeBf6m1', 'aJZZUIONeFGwsI2qhYJ1i3+GjbWFhaw=', '', 'b5tpZmY=', 'g62Gf3h9hg==', '', '', 'mslnYGlvZGGXkZChk8VhpZugqMqbqpPKqkVr', '45.8517241', '1.292747', 'a31a9ea1f92bf66d521d56ed1ffc7c1c', '0000-00-00'), +(366, '', 'g718dXZYg4Ozp320hauDh4B4hYOGgKq2in2Bg3eGpn6KhH+CcoZ2dg==', 'aJRpUKOtmFGotli0eqN8WXZ4WbN7ibip', '', 'b5xqZGE=', 'erOHhIN9i3a6qoStdw==', '', '', 'mslnYGlwY2GVlIShk8Vhp5OhnNxjpMrYsmbHqD9C', '48.1816153', '5.8951182', '98f157e21e93e57395067782b9e0ba44', '0000-00-00'), +(367, '', 'g718dXZYg4Ozp320hauDh4B4hYN5eLKthISmVnWEo457qYU=', 'aYSrpZZYd4aEsXmzf7GCjQ==', '', 'b5xrYGM=', 'iamGeYN9gICytQ==', '', '', 'mslnYGlwZGKYkYShk8Vhp5OhnNxjpMrYsmbHqD9C', '48.015098', '6.5851255', '2ab10225877d6aa2888622bb66dac37f', '0000-00-00'), +(368, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVivhYaKp1l7pYZ1UWVThKWqhrVSrIOMd4OB', 'aZdZgoZ9U4Wsqn2zhQ==', '', 'b5xpYWM=', 'fLSCfnKE', '', '', 'mslnYGlwZGaXkYOhk8Vhp5OhnNxjpMrYsmbHqD9C', '48.1698014', '6.4530424', '00573304a5e1f1caac9a9e90d4d01eac', '0000-00-00'), +(369, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgoNkplmDeoV4gLKBe6lztHiCgA==', 'apZZUHOHiH2pt3mzdoJ4YHN/jKR5fA==', '', 'b5xtYGg=', 'fqmLcYN8gHa2', '', '', 'mslnYGlwZGealX6hk8Vhp5OhnNxjpMrYsmbHqD9C', '48.0732131', '6.8769637', '7a06b3b0def52e7b7337299630d8a038', '0000-00-00'), +(370, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilJ9toJ8sod1', 'aYRZgoZ9U32ztoG0d4J5jVJ/frKEV7upioaqiQ==', '', 'b51qYGE=', 'iqmHgw==', '', '', 'mslnYGlxY2GamKihk8VhnZudqNFknddxQg==', '48.2064106', '3.292908', '704b8890bbed94aa01e5fd8a0049e162', '0000-00-00'), +(371, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWjaa5enmv', 'aZZZoqadU3elqnypd7R2fg==', '', 'b51pYWE=', 'eLmRdYOKeA==', '', '', 'mslnYGlxY2mVmn+hk8VhnZudqNFknddxQg==', '47.7982625', '3.5631312', 'a6a80e519655d0fa2562aa0a1138ff67', '0000-00-00'), +(372, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYpYF4uH5xhlh3dreBe7CHpoZ6e3iM', 'aYRZcoCNf3a6ooqlUqV8eoR/frZWe6qEf3m2gn59', '', 'cJVtZWE=', 'fLiCf32EeIQ=', '', '', 'mslnYGppY2eWmoihk8Vhr5elrMSfo9HJq2bHqD9C', '48.6346885', '2.4661972', '091aab8f1cff74e44be3632992b24859', '0000-00-00'), +(373, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtXqAso1QgYF4g7am', 'bpRZUIONeFGopliugbCIgHeFiLE=', '', 'cJVxYGE=', 'ebaOfoCR', '', '', 'mslnYGppY2mYlJChk8Vhr5elrMSfo9HJq2bHqD9C', '48.6945294', '2.4899385', 'dc1fe19e997a7d5594f4b4e332706cb4', '0000-00-00'), +(374, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg6q3WHuwineLgn18hI95fYR4c7Ov', 'aoRZgoZ9U3mpr4qqUqeIhXuB', '', 'cJZqaWE=', 'hKmOdICG', '', '', 'mslnYGpqZGadk36hk8Vhr5elrMSfo9HJq2bHqD9C', '48.7962179', '2.2213785', 'ab570f1e88c0347fc490fce3400f1e4e', '0000-00-00'), +(375, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWi62ph3ywiHdYr4iFs30=', 'aZpZUHKOeH+5plitd7GCWXyCjqt3jL0=', '', 'cJZqZmE=', 'eLKNf3+R', '', '', 'mslnYGpqZGebl5Chk8Vhr5elrMSfo9HJq2bHqD9C', '48.7347128', '2.30717', 'a60625475eaff9231501e5438c541e68', '0000-00-00'), +(376, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ephn2Bd4d+qIt4vQ==', 'aZdZUIONeFGqpoqvc7B4WYJ4ha+FjLmtfYo=', '', 'cJZuaGM=', 'erCCc3mR', '', '', 'mslnYGpqZWKYmoShk8Vhr5elrMSfo9HJq2bHqD9C', '48.9032419', '2.299641', '22894f4fd061ef43196007f16a868787', '0000-00-00'), +(377, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ilhoywiVJ8t4aGso0=', 'ap1ZoqadU4GltIymh7Q=', '', 'cJZrYWE=', 'iqWCfoVldn2ztnw=', '', '', 'mslnYGpqZWObl5Khk8Vhr5elrMSfo9HJq2bHqD9C', '48.8406458', '2.2000954', 'a6caccfcebc5bd52d077d49bc3b1abb6', '0000-00-00'), +(378, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6u2eYakhXuLgot4pn58coGG', 'idmeUHeKdH+nsIG0UrR1e3d/eqyJ', '', 'cJdtZGE=', 'e7mAfoo=', '', '', 'mslnYGprZWKWl36hk8VhnKSYrcifo5PKqkVr', '48.949219', '2.417634', '0c5262846b7b510d6a4fb09a7e976c3c', '0000-00-00'), +(379, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYsIh+qYeE', 'aoRZcYd9gYapgXymUqyDgoCJgq+CfA==', '', 'cJhqY2E=', 'hbOAdX+MYIS5s2Wuc7SCfg==', '', '', 'mslnYGpsY2SVmoShk8VhnKSYrcifo5PKqkVr', '48.8348146', '2.4735748', 'ec0e947b432201aa8fc9cc67c5d7089c', '0000-00-00'), +(380, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Kzhoyignd5tw==', 'aYR7eYRYhYapgYiqd7SGflKGfrB3iak=', '', 'cJhsZ2M=', 'irl8iV59gV6ms4Gm', '', '', 'mslnYGpsZWKXkX2hk8VhnKSYrcifo5PKqkVr', '48.7704516', '2.5182317', '6e385de3e3ceb5a0d3e20b55ad0dc950', '0000-00-00'), +(381, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYrnpXuIiFg1h3hoSueap+', 'bpRZUHKEf/Ttplild4J3iISAfqyCg6q3', '', 'cJlqYWE=', 'iqWHfoCBhg==', '', '', 'mslnYGptY2qclHuhk8Vhr5elrMSfo9HJq2bHqD9C', '', '', '1a93f26ecdfd6d62a52844ed2c8b08bf', '0000-00-00'), +(382, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLqrjYu1e1J9tXyGqn95doo=', 'bptZUIONeFGoplixe6eGi3d/erx7', '', 'cJlvYWE=', 'fLZ6d3+R', '', '', 'mslnYGptZGeVmYyhk8Vhr5elrMSfo9HJq2bHqD9C', '49.021609', '2.1092812', '79ec945f28d75b6eb96130ab76c08163', '0000-00-00'), +(383, '', 'g718dXZYg4Ozp320hauDh4B4hYN8gLOzi32tgoE=', 'eLp+foZ9U36lrViti6OJjXeM', '', 'aZRqaGo=', 'eK56c3SBgg==', '', '', 'mslnZmNoY2GUlYOhk8VhnKGlrMhknddxQg==', '41.9379483', '8.7447941', 'a0beebe5af472666a8f9023b0b8ea68a', '0000-00-00'), +(384, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYtXqFq455f3l8g6m0WKJ8o3d8e4I=', 'Z5RZovThpprIxqbElw==', '', 'aZRqaWM=', 'eK56c3SBgg==', '', '', 'mslnZmNoY2eXl5Chk8VhnKGlrMhknddxQg==', '41.9079623', '8.6320084', '78531b9ef802946d8a45f26250c63eee', '0000-00-00'), +(385, '', 'g718dXZYg4Ozp320hauDh4B4hYOJeqaxeYqwhHs=', 'Z5RZoqad', '', 'aZRvYGE=', 'eaWMhHp5', '', '', 'mslnZ2NoY2GVkpKhk8VhnKGlrMhknddxQg==', '42.6778189', '9.4408467', 'b6091e9c1f400e2d3f7adfa004fd0205', '0000-00-00'), +(386, '', 'g718dXZYg4Cwuo6ifqeCjVJ3foN4eLGlf4am', 'eNqenqadU4GltoSBdKuHgHOAe6x9g66l', '', 'aZRrYmE=', 'g4tZeX19YIOztou0dw==', '', '', 'mslnZ2NoY2KWlI+hk8VhnKGlrMhknddxQg==', '42.6278883', '8.9341411', 'd98bd28a1680deeee4d843cf88783cab', '0000-00-00'), +(387, '', 'fKeIfHZYZXWEpX2ohKdUiYSCf5FWh7etjn2mVnWHt4uKhIF/hX1/eqmzWKV3gnZ+hXSHpoWF', 'cJxZUHiKdH+oplizh6c=', '', 'aZlpYGE=', 'eamMcX97gn8=', '', '', 'msybcJSnqKPXjqDQpsegopelZ8alpHJu', '47.2357313', '6.0271216', '7e05f90ebb1e20ca7c062a3e432d98ae', '0000-00-00'), +(388, '', 'fKeIfHZYg4Ozp320hauDh4B4ha97V7W2gY6me1J7tot8hI11dIBTebO1fa1Srlt6hH9+tIuAsw==', 'idOupJZYgXK4qoevc655WWNjaZk=', '', 'bpdxYGM=', 'hLOHhH59f3qlrw==', '', '', 'mtihcJKamGiXj57TP2w=', '45.5088636', '6.0836174', 'e3c3ea972ae5186127b3bab3899bdabf', '0000-00-00'), +(389, '', 'fKeIfHZYhnWEpX2ohKdUiYSCf4OGia66fX2BendYsouGqI5zhYGCf4Sif6KCpw==', 'aJZZkaedoabJgYKmc7BUg4GLfg==', '', 'a51pYGE=', 'eLKAdYOL', '', '', 'm82rlZSsnKDSj5nIk9KZeaehotKkp9TZqqTGpJiZ0JyckpyfnkU9', '47.48258', '-0.544013', '3a9b9bd87c716331f344997b129a8a10', '0000-00-00'), +(390, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYrH5/pYd+dlh3doSniqKApXk=', 'bYRZgoZ9U3WpgYSiUqiGeoZ4i7F7g7Gp', '', 'bZ1pYGo=', 'g72Ifg==', '', '', 'm82rlZSsnKDSoaTRnMaaZ5ilRm0=', '45.7693731', '4.8036035', '79221e52537362110f42e3373a3ef84c', '0000-00-00'), +(391, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtH6Fs46GdnmI', 'eLCF87p9U3SzrXuwf6R5jQ==', '', 'a5ZuY2E=', 'iqWCfoVlenaypou1X655i4KH', '', '', 'nNGinJ2ZoZWS053PodeqnpOoedKomNPLnWbHqD9C', '', '', '3140683e0af8889dbce80491729a40e3', '0000-00-00'), +(392, '', 'fKeIfHZYhnansIalc6uGflKDi7J8ZbW2gY6me1KBsIyLrY2FhVh0h6mvgbNSsoaIiHiHpns=', 'a5lvUFF6goawpo6ihKZUjIZTg7KJfLWs', '', 'Z5hqYGE=', 'hKWHf4SJiHY=', '', '', 'oMWpXp6ZoaDX0q3GcsuVqWCUrNalZcvWRUI=', '43.8230545', '5.7968341', 'e76e11a897df621e6791ab62d1a8f239', '0000-00-00'), +(393, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVitd1KOq314uX11', 'eqx+fXqGU3WpgYSiUrh9fXOIfag=', '', 'bZ1uZmQ=', 'iqWCfoVlenayqouOfqOKen4=', '', '', 'o9ShXp2ZqZrIwq3Fl6KrmqCUndKlZcvWRUI=', '45.6925289', '4.7800249', '09ee5828bd7faf4dcf2696df3a636470', '0000-00-00'), +(394, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWufXmvVoSHtX4=', 'aZRZgoZ9U3WpgXupc6N7fg==', '', 'bptqYGo=', 'hKl6hYk=', '', '', 'o9ipXpudlJ/W0KvGcseXpl+gnsSrr5PKqkVr', '48.9636247', '2.879841', 'f87a9fa0e22d062549d162f816be4f7e', '0000-00-00'), +(395, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVikfnOFpIt8hHx/flh4hYSqhqWHtYiLe3g=', 'kdOnlVGBgXW5tIyze6eAhXdTerlWf4WEfH2ti3U=', '', 'aZhwZWE=', 'ebOOfHKSdHQ=', '', '', 'o9ipcJSZoKHZ1GbFodSYqJmhnpGZms6SnqpuQA==', '45.1837043', '0.7803082', '6cdec7d4acdba60537a725dc93061b27', '0000-00-00'), +(396, '', 'fKeIfHZYZXWEpX2ohKdUiYSCf5GGia66fX2BhnqBroJ5qYuEUY6Fcrk=', 'ibOOhHZYd3a0ooq1d695h4Z0hahWcJs=', '', 'appqY2E=', 'hLOHhHp9hXSsoo2udw==', '', '', 'o92clZaopaDKxqvUm9Gip5efec+XpMbWrKHPm6Shx2ed1kY6', '46.828257', '1.765293', '99fcf45dfa1c3a4b3864c96d36225765', '0000-00-00'), +(397, '', 'g7RZc3aGh4OpgXymhYKBiIB4fax7iaq3WH6whHZ5toKGslmAgIWDeqiwjQ==', 'eLp+foZ9U32psIaBiKN3gXeF', '', 'aJ1rZmE=', 'i7Z+eXiGdHQ=', '', '', 'pMmco5SdoaXWxpzGpc+jp5eXosionNikr5nPl5an0Wed1kY6', '45.5344485', '1.789945', '88305be6c4bb1703f56700c7bb583735', '0000-00-00'), +(398, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKCsYx8tIFQfV90fqWvfKp3tA==', 'eLCF87p9U3upooaBgqt5i4R4Wap3jLG4', '', 'aJpwYWE=', 'iqWCfoVljIOtpoG5X7WJi192gaSIfLO4fQ==', '', '', 'qsmcopaslKPNwqyhnsOhmqCXosioZcvWRUI=', '', '', '3557d38873d5037e4408a151090c6b79', '0000-00-00'), +(399, 'eNGilZ+r', 'h7qHdYU=', 'idmeUHqq9tnSxliroc6dqKZTfNiooMo=', '', 'bZRvYWE=', 'g8WcoqChq163wqHPpo+Drpeh', 'ecmnn/Tmp1G6pYU=', 'Z5dZZmVYZWKEmWmBZZM=', 'mZKvlJ54o6DNz6zXm9Sbrp6YZ9Gbqw==', '49.3820113', '2.7854901', '098f6bcd4621d373cade4e832627b4f6', '0000-00-00'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `181116_contact_pro` +-- + +CREATE TABLE IF NOT EXISTS `181116_contact_pro` ( + `id_cp` int(11) NOT NULL AUTO_INCREMENT, + `nom_cp` varchar(250) NOT NULL, + `prenom_cp` varchar(250) NOT NULL, + `age_cp` varchar(250) NOT NULL, + `classe_cp` varchar(250) NOT NULL, + `email_cp` varchar(250) NOT NULL, + `comment_cp` text NOT NULL, + `num_pro` int(11) NOT NULL, + `type_pro` varchar(250) NOT NULL, + `date_cp` date NOT NULL, + PRIMARY KEY (`id_cp`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ; + +-- +-- Dumping data for table `181116_contact_pro` +-- + +INSERT INTO `181116_contact_pro` (`id_cp`, `nom_cp`, `prenom_cp`, `age_cp`, `classe_cp`, `email_cp`, `comment_cp`, `num_pro`, `type_pro`, `date_cp`) VALUES +(1, 'ntael6Od', 'nsmrl6Od', 'aZU=', 'aJY=', 'ntael6Odc5jWxp+Pmcem', 'ntael5aqQDvLxqo=', 2, 'p8WrlZ+s', '0000-00-00'), +(2, 'p8WrlZ+s', 'rcisppWr', 'aJZs', 'rcisppWr', 'ntael6Odc5jWxp+Pmcem', 'rcispqScQDvaxas=', 2, 'p8WrlZ+s', '2018-11-09'), +(3, 'ocmunpY=', 'ncmzlqud', 'aJk=', 'ncmz', 'ncmzlqt4mauSx7LG', 'ncmz', 2, 'ocmunpY=', '2018-11-09'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `181116_inscriptions_pro` +-- + +CREATE TABLE IF NOT EXISTS `181116_inscriptions_pro` ( + `id_pro` int(11) NOT NULL AUTO_INCREMENT, + `recevoirJeunes` int(11) NOT NULL, + `faireEquipe` int(11) NOT NULL, + `recevoirStage` int(11) NOT NULL, + `etablissement_pro` varchar(250) NOT NULL, + `siret_pro` varchar(250) NOT NULL, + `nom_pro` varchar(250) NOT NULL, + `prenom_pro` varchar(250) NOT NULL, + `adr1_pro` varchar(250) NOT NULL, + `adr2_pro` varchar(250) NOT NULL, + `cp_pro` varchar(250) NOT NULL, + `ville_pro` varchar(250) NOT NULL, + `mobile_pro` varchar(250) NOT NULL, + `fixe_pro` varchar(250) NOT NULL, + `email_pro` varchar(250) NOT NULL, + `flyers` int(11) NOT NULL, + `comment_pro` text NOT NULL, + `lat_pro` varchar(100) NOT NULL, + `lon_pro` varchar(100) NOT NULL, + `statut` int(11) NOT NULL, + `date_insert` date NOT NULL, + PRIMARY KEY (`id_pro`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ; + +-- +-- Dumping data for table `181116_inscriptions_pro` +-- + +INSERT INTO `181116_inscriptions_pro` (`id_pro`, `recevoirJeunes`, `faireEquipe`, `recevoirStage`, `etablissement_pro`, `siret_pro`, `nom_pro`, `prenom_pro`, `adr1_pro`, `adr2_pro`, `cp_pro`, `ville_pro`, `mobile_pro`, `fixe_pro`, `email_pro`, `flyers`, `comment_pro`, `lat_pro`, `lon_pro`, `statut`, `date_insert`) VALUES +(1, 1, 1, 1, 'ntae', 'aJZsZGZuammdkmqUZpc=', 'hdOm', 'h9b82Z+noA==', 'eMirlaSrmFGV', '', 'bptsZmE=', 'rcWioparU6TZ01jOk9Sing==', 'Z5pZYWNYZmWElm+Baps=', 'Z5VZYmRYZ2aEl2+Baps=', 'nNGamZ14lJXI053UpZCXqJ8=', 12, 'mcarlZOqmJNxa5rTlw==', '48.8651225', '2.6327978', 1, '2018-11-08'), +(2, 1, 1, 1, 'p9qnlaU=', 'aJZsZGZuammdkmqUZpc=', 'rcim', 'mcmnn/Tmpw==', 'idmeUHqq9tnSxliroc6dqKZTfNiooMqlnKrGqaWdgmo=', 'gNGmlaaan5aErqHNnseioqegWZU=', 'bZRvYWFY', 'g8WcoqChq163wqHPpo+Drpeh', 'Z5pZYWNYZmWElm+Baps=', 'Z5VZYmRYZ2aEl2+Baps=', 'mcmnn5qsYafIznjRocuiraicq8qro8qSpp3V', 20, 'mcarlZOqmJNxa5rTl28+YvXT/AqV+g2RYF+DXVplJeGWJ+A=', '49.3622282', '2.7889037', 1, '2018-11-08'), +(3, 1, 1, 1, 'n9itmKWq', 'aJZsZGZuammdkmqUZpc=', 'n9irmKWq', 'n9irmKWq', 'pNOnkZWcZA==', 'pNOnkZWcZQ==', 'bZRpYGE=', 'ecmapaeZnKQ=', 'Z5pZYWNYZmWElm+Baps=', 'Z5VZYmRYZ2aEl2+Baps=', 'ncmzlpayc5fJ22bHl9w=', 12, '', '49.4295387', '2.0807123', 0, '2018-11-08'), +(4, 1, 1, 1, 'ntael5iqmJjW', 'aJZsZGZuammdkmqUZpc=', 'ntael5aqqZbW', 'rdaeoqc=', 'rdaepqOd', 'rdaepqOd', 'bZ1pYGE=', 'o92ong==', 'Z5pZYWNYZmWElm+Baps=', 'Z5VZYmRYZ2aEl2+Baps=', 'nsqeopidmpbWoZ/GpJCbng==', 20, 'ncmzlpaymZZxa57GrMiZsw==', '45.764043', '4.835659', 0, '2018-11-08'), +(5, 1, 0, 0, 'q9ahoqWgpQ==', 'aJZsZGZuammdkmqUZpc=', 'n9irmKM=', 'n9irmKWq', 'n9irmKWq', 'n9irmKWqpaU=', 'bZ1pYGE=', 'o92ong==', 'Z5pZYWNYZmWElm+Baps=', 'Z5VZYmRYZ2aEl2+Baps=', 'ncmzlpayc5fJ22bHl9w=', 12, 'ntael6OdmqPJbkLIpMc=', '45.764043', '4.835659', 1, '2018-11-08'), +(6, 0, 1, 0, 'n9irmKWgp6PM1ao=', 'aJZsZGZuammdkmqUZpc=', 'pdirnqWq', 'mdirkqWq', 'mdirkqWq', 'mdirkqWq', 'bplpYGE=', 'p8WrmaQ=', 'Z5pZYWNYZmWElm+Baps=', 'Z5VZYmRYZ2aEl2+Baps=', 'ncmzlpayc5fJ22bHl9w=', 12, 'ntael6OdmqPJ', '48.8785419', '2.3642198', 1, '2018-11-08'), +(7, 0, 0, 1, 'pdirnqWqoQ==', 'aJZsZGZuammdkmqUZpc=', 'pdabpKM=', 'pdatop+a', 'qdinoqWmpaU=', 'pdirnqOmpQ==', 'b5RpYGE=', 'eNGilZ+r', 'Z5pZYWNYZmWElm+Baps=', 'Z5VZYmRYZ2aEl2+Baps=', 'nNGamZ14lJXI053UpZCXqJ8=', 12, 'ncmzlpayrZY=', '49.89905', '2.2752772', 1, '2018-11-08'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `agenda` +-- + +CREATE TABLE IF NOT EXISTS `agenda` ( + `idAgenda` int(11) NOT NULL AUTO_INCREMENT, + `numCap` int(11) NOT NULL, + `numCoLy` int(11) NOT NULL, + `numEta` int(11) NOT NULL, + `jour` varchar(20) NOT NULL, + `creneau` varchar(10) NOT NULL, + `statut` varchar(20) NOT NULL, + `dateLastUpdate` date NOT NULL, + `userLastUpdate` varchar(10) NOT NULL, + PRIMARY KEY (`idAgenda`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=19245 ; + +-- +-- Dumping data for table `agenda` +-- + +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(1, 1, 0, 399, '2019-01-17', 'am1', 'libre', '2018-11-06', ''), +(2, 1, 0, 399, '2019-01-17', 'am2', 'libre', '2018-11-08', 'ref'), +(3, 1, 0, 399, '2019-01-17', 'pm1', 'libre', '2018-11-06', ''), +(4, 1, 0, 399, '2019-01-17', 'pm2', 'libre', '2018-11-06', ''), +(5, 1, 0, 399, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(6, 1, 0, 399, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(7, 1, 0, 399, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(8, 1, 0, 399, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(9, 1, 0, 399, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(10, 1, 0, 399, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(11, 1, 0, 399, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(12, 1, 0, 399, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(13, 1, 0, 399, '2019-01-22', 'am1', 'bloque', '2018-11-07', 'cap'), +(14, 1, 0, 399, '2019-01-22', 'am2', 'bloque', '2018-11-07', 'cap'), +(15, 1, 0, 399, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(16, 1, 0, 399, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(17, 1, 0, 399, '2019-01-23', 'am1', 'libre', '2018-11-07', 'ref'), +(18, 1, 0, 399, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(19, 1, 0, 399, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(20, 1, 0, 399, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(21, 1, 0, 399, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(22, 1, 0, 399, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(23, 1, 0, 399, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(24, 1, 0, 399, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(25, 1, 0, 399, '2019-01-25', 'am1', 'bloque', '2018-11-07', 'ref'), +(26, 1, 0, 399, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(27, 1, 0, 399, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(28, 1, 0, 399, '2019-01-25', 'pm2', 'bloque', '2018-11-07', 'ref'), +(29, 1, 0, 399, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(30, 1, 0, 399, '2019-01-28', 'am2', 'libre', '2018-11-07', 'cap'), +(31, 1, 0, 399, '2019-01-28', 'pm1', 'bloque', '2018-11-07', 'cap'), +(32, 1, 0, 399, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(33, 1, 0, 399, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(34, 1, 0, 399, '2019-01-29', 'am2', 'libre', '2018-11-07', 'cap'), +(35, 1, 0, 399, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(36, 1, 0, 399, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(37, 1, 0, 399, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(38, 1, 0, 399, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(39, 1, 0, 399, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(40, 1, 0, 399, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(41, 1, 0, 399, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(42, 1, 0, 399, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(43, 1, 0, 399, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(44, 1, 0, 399, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(45, 1, 0, 399, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(46, 1, 0, 399, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(47, 1, 0, 399, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(48, 1, 0, 399, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(49, 1, 0, 399, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(50, 1, 0, 399, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(51, 1, 0, 399, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(52, 1, 0, 399, '2019-02-04', 'pm2', 'libre', '2018-11-07', 'cap'), +(53, 1, 0, 399, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(54, 1, 0, 399, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(55, 1, 0, 399, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(56, 1, 0, 399, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(57, 1, 0, 399, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(58, 1, 0, 399, '2019-02-06', 'am2', 'libre', '2018-11-07', 'ref'), +(59, 1, 0, 399, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(60, 1, 0, 399, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(61, 1, 0, 399, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(62, 1, 0, 399, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(63, 1, 0, 399, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(64, 1, 0, 399, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(65, 1, 0, 399, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(66, 1, 0, 399, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(67, 1, 0, 399, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(68, 1, 0, 399, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(69, 2, 0, 2, '2019-01-17', 'am1', 'bloque', '2019-01-11', 'cap'), +(70, 2, 0, 2, '2019-01-17', 'am2', 'libre', '2018-11-06', ''), +(71, 2, 0, 2, '2019-01-17', 'pm1', 'libre', '2018-11-06', ''), +(72, 2, 0, 2, '2019-01-17', 'pm2', 'libre', '2018-11-06', ''), +(73, 2, 328, 2, '2019-01-18', 'am1', 'reserve', '2019-02-05', 'ref'), +(74, 2, 0, 2, '2019-01-18', 'am2', 'libre', '2018-11-20', 'ref'), +(75, 2, 0, 2, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(76, 2, 0, 2, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(77, 2, 0, 2, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(78, 2, 0, 2, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(79, 2, 0, 2, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(80, 2, 0, 2, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(81, 2, 260, 2, '2019-01-22', 'am1', 'reserve', '2019-01-11', 'cap'), +(82, 2, 0, 2, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(83, 2, 0, 2, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(84, 2, 0, 2, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(85, 2, 0, 2, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(86, 2, 0, 2, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(87, 2, 0, 2, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(88, 2, 0, 2, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(89, 2, 252, 2, '2019-01-24', 'am1', 'reserve', '2019-01-10', 'cap'), +(90, 2, 0, 2, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(91, 2, 0, 2, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(92, 2, 0, 2, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(93, 2, 0, 2, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(94, 2, 0, 2, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(95, 2, 0, 2, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(96, 2, 0, 2, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(97, 2, 0, 2, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(98, 2, 0, 2, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(99, 2, 0, 2, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(100, 2, 0, 2, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(101, 2, 0, 2, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(102, 2, 0, 2, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(103, 2, 0, 2, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(104, 2, 0, 2, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(105, 2, 0, 2, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(106, 2, 0, 2, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(107, 2, 0, 2, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(108, 2, 0, 2, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(109, 2, 0, 2, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(110, 2, 0, 2, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(111, 2, 0, 2, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(112, 2, 0, 2, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(113, 2, 0, 2, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(114, 2, 0, 2, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(115, 2, 0, 2, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(116, 2, 0, 2, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(117, 2, 0, 2, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(118, 2, 0, 2, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(119, 2, 0, 2, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(120, 2, 0, 2, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(121, 2, 0, 2, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(122, 2, 0, 2, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(123, 2, 0, 2, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(124, 2, 0, 2, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(125, 2, 0, 2, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(126, 2, 0, 2, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(127, 2, 0, 2, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(128, 2, 0, 2, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(129, 2, 0, 2, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(130, 2, 0, 2, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(131, 2, 0, 2, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(132, 2, 0, 2, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(133, 2, 0, 2, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(134, 2, 0, 2, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(135, 2, 0, 2, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(136, 2, 0, 2, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(137, 3, 18, 95, '2019-01-17', 'am1', 'reserve', '2018-11-28', 'ref'), +(138, 3, 111, 95, '2019-01-17', 'am2', 'reserve', '2018-12-18', 'ref'), +(139, 3, 88, 95, '2019-01-17', 'pm1', 'reserve', '2018-12-17', 'ref'), +(140, 3, 100, 95, '2019-01-17', 'pm2', 'reserve', '2018-12-18', 'ref'), +(141, 3, 0, 95, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(142, 3, 0, 95, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(143, 3, 0, 95, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(144, 3, 0, 95, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(145, 3, 0, 95, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(146, 3, 0, 95, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(147, 3, 0, 95, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(148, 3, 0, 95, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(149, 3, 0, 95, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(150, 3, 0, 95, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(151, 3, 0, 95, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(152, 3, 0, 95, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(153, 3, 0, 95, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(154, 3, 0, 95, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(155, 3, 0, 95, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(156, 3, 0, 95, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(157, 3, 0, 95, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(158, 3, 0, 95, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(159, 3, 0, 95, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(160, 3, 0, 95, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(161, 3, 0, 95, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(162, 3, 0, 95, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(163, 3, 0, 95, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(164, 3, 0, 95, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(165, 3, 0, 95, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(166, 3, 0, 95, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(167, 3, 0, 95, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(168, 3, 0, 95, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(169, 3, 0, 95, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(170, 3, 0, 95, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(171, 3, 0, 95, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(172, 3, 0, 95, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(173, 3, 0, 95, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(174, 3, 0, 95, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(175, 3, 0, 95, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(176, 3, 0, 95, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(177, 3, 0, 95, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(178, 3, 0, 95, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(179, 3, 0, 95, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(180, 3, 0, 95, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(181, 3, 0, 95, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(182, 3, 0, 95, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(183, 3, 0, 95, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(184, 3, 0, 95, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(185, 3, 0, 95, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(186, 3, 0, 95, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(187, 3, 0, 95, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(188, 3, 0, 95, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(189, 3, 0, 95, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(190, 3, 0, 95, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(191, 3, 0, 95, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(192, 3, 0, 95, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(193, 3, 0, 95, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(194, 3, 0, 95, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(195, 3, 0, 95, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(196, 3, 0, 95, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(197, 3, 0, 95, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(198, 3, 0, 95, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(199, 3, 0, 95, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(200, 3, 0, 95, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(201, 3, 0, 95, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(202, 3, 0, 95, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(203, 3, 0, 95, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(204, 3, 0, 95, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(205, 4, 55, 93, '2019-01-17', 'am1', 'reserve', '2018-12-12', 'ref'), +(206, 4, 151, 93, '2019-01-17', 'am2', 'reserve', '2018-12-20', 'ref'), +(207, 4, 0, 93, '2019-01-17', 'pm1', 'libre', '2018-11-06', ''), +(208, 4, 0, 93, '2019-01-17', 'pm2', 'libre', '2018-11-06', ''), +(209, 4, 0, 93, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(210, 4, 0, 93, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(211, 4, 0, 93, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(212, 4, 0, 93, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(213, 4, 0, 93, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(214, 4, 0, 93, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(215, 4, 0, 93, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(216, 4, 0, 93, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(217, 4, 0, 93, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(218, 4, 0, 93, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(219, 4, 0, 93, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(220, 4, 0, 93, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(221, 4, 0, 93, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(222, 4, 0, 93, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(223, 4, 0, 93, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(224, 4, 0, 93, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(225, 4, 0, 93, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(226, 4, 0, 93, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(227, 4, 0, 93, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(228, 4, 0, 93, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(229, 4, 0, 93, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(230, 4, 0, 93, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(231, 4, 0, 93, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(232, 4, 0, 93, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(233, 4, 0, 93, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(234, 4, 0, 93, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(235, 4, 0, 93, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(236, 4, 0, 93, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(237, 4, 0, 93, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(238, 4, 0, 93, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(239, 4, 0, 93, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(240, 4, 0, 93, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(241, 4, 0, 93, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(242, 4, 0, 93, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(243, 4, 0, 93, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(244, 4, 0, 93, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(245, 4, 0, 93, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(246, 4, 0, 93, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(247, 4, 0, 93, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(248, 4, 0, 93, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(249, 4, 0, 93, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(250, 4, 0, 93, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(251, 4, 0, 93, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(252, 4, 0, 93, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(253, 4, 0, 93, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(254, 4, 0, 93, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(255, 4, 0, 93, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(256, 4, 0, 93, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(257, 4, 0, 93, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(258, 4, 0, 93, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(259, 4, 0, 93, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(260, 4, 0, 93, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(261, 4, 0, 93, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(262, 4, 0, 93, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(263, 4, 0, 93, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(264, 4, 0, 93, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(265, 4, 0, 93, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(266, 4, 0, 93, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(267, 4, 0, 93, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(268, 4, 0, 93, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(269, 4, 0, 93, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(270, 4, 0, 93, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(271, 4, 0, 93, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(272, 4, 0, 93, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(273, 5, 43, 71, '2019-01-17', 'am1', 'reserve', '2018-12-11', 'ref'), +(274, 5, 0, 71, '2019-01-17', 'am2', 'bloque', '2018-12-11', 'ref'), +(275, 5, 0, 71, '2019-01-17', 'pm1', 'bloque', '2018-12-11', 'ref'), +(276, 5, 0, 71, '2019-01-17', 'pm2', 'bloque', '2018-12-11', 'ref'), +(277, 5, 0, 71, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(278, 5, 0, 71, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(279, 5, 0, 71, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(280, 5, 0, 71, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(281, 5, 0, 71, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(282, 5, 0, 71, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(283, 5, 0, 71, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(284, 5, 0, 71, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(285, 5, 0, 71, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(286, 5, 0, 71, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(287, 5, 0, 71, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(288, 5, 0, 71, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(289, 5, 0, 71, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(290, 5, 0, 71, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(291, 5, 0, 71, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(292, 5, 0, 71, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(293, 5, 0, 71, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(294, 5, 0, 71, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(295, 5, 0, 71, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(296, 5, 0, 71, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(297, 5, 0, 71, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(298, 5, 0, 71, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(299, 5, 0, 71, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(300, 5, 0, 71, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(301, 5, 0, 71, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(302, 5, 0, 71, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(303, 5, 0, 71, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(304, 5, 0, 71, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(305, 5, 0, 71, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(306, 5, 0, 71, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(307, 5, 0, 71, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(308, 5, 0, 71, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(309, 5, 0, 71, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(310, 5, 0, 71, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(311, 5, 0, 71, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(312, 5, 0, 71, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(313, 5, 0, 71, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(314, 5, 0, 71, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(315, 5, 0, 71, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(316, 5, 0, 71, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(317, 5, 0, 71, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(318, 5, 0, 71, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(319, 5, 0, 71, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(320, 5, 0, 71, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(321, 5, 0, 71, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(322, 5, 0, 71, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(323, 5, 0, 71, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(324, 5, 0, 71, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(325, 5, 0, 71, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(326, 5, 0, 71, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(327, 5, 0, 71, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(328, 5, 0, 71, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(329, 5, 0, 71, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(330, 5, 0, 71, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(331, 5, 0, 71, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(332, 5, 0, 71, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(333, 5, 0, 71, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(334, 5, 0, 71, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(335, 5, 0, 71, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(336, 5, 0, 71, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(337, 5, 0, 71, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(338, 5, 0, 71, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(339, 5, 0, 71, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(340, 5, 0, 71, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(341, 6, 47, 71, '2019-01-17', 'am1', 'reserve', '2018-12-11', 'ref'), +(342, 6, 44, 71, '2019-01-17', 'am2', 'reserve', '2018-12-11', 'ref'), +(343, 6, 48, 71, '2019-01-17', 'pm1', 'reserve', '2018-12-11', 'ref'), +(344, 6, 0, 71, '2019-01-17', 'pm2', 'bloque', '2018-12-11', 'ref'), +(345, 6, 0, 71, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(346, 6, 0, 71, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(347, 6, 0, 71, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(348, 6, 0, 71, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(349, 6, 0, 71, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(350, 6, 0, 71, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(351, 6, 0, 71, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(352, 6, 0, 71, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(353, 6, 0, 71, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(354, 6, 0, 71, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(355, 6, 0, 71, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(356, 6, 0, 71, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(357, 6, 0, 71, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(358, 6, 0, 71, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(359, 6, 0, 71, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(360, 6, 0, 71, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(361, 6, 0, 71, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(362, 6, 0, 71, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(363, 6, 0, 71, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(364, 6, 0, 71, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(365, 6, 0, 71, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(366, 6, 0, 71, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(367, 6, 0, 71, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(368, 6, 0, 71, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(369, 6, 0, 71, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(370, 6, 0, 71, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(371, 6, 0, 71, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(372, 6, 0, 71, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(373, 6, 0, 71, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(374, 6, 0, 71, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(375, 6, 0, 71, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(376, 6, 0, 71, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(377, 6, 0, 71, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(378, 6, 0, 71, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(379, 6, 0, 71, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(380, 6, 0, 71, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(381, 6, 0, 71, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(382, 6, 0, 71, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(383, 6, 0, 71, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(384, 6, 0, 71, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(385, 6, 0, 71, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(386, 6, 0, 71, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(387, 6, 0, 71, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(388, 6, 0, 71, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(389, 6, 0, 71, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(390, 6, 0, 71, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(391, 6, 0, 71, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(392, 6, 0, 71, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(393, 6, 0, 71, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(394, 6, 0, 71, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(395, 6, 0, 71, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(396, 6, 0, 71, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(397, 6, 0, 71, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(398, 6, 0, 71, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(399, 6, 0, 71, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(400, 6, 0, 71, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(401, 6, 0, 71, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(402, 6, 0, 71, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(403, 6, 0, 71, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(404, 6, 0, 71, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(405, 6, 0, 71, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(406, 6, 0, 71, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(407, 6, 0, 71, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(408, 6, 0, 71, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(409, 7, 46, 71, '2019-01-17', 'am1', 'reserve', '2018-12-11', 'ref'), +(410, 7, 0, 71, '2019-01-17', 'am2', 'bloque', '2018-12-11', 'ref'), +(411, 7, 0, 71, '2019-01-17', 'pm1', 'bloque', '2018-12-11', 'ref'), +(412, 7, 45, 71, '2019-01-17', 'pm2', 'reserve', '2018-12-11', 'ref'), +(413, 7, 0, 71, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(414, 7, 0, 71, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(415, 7, 0, 71, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(416, 7, 0, 71, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(417, 7, 0, 71, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(418, 7, 0, 71, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(419, 7, 0, 71, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(420, 7, 0, 71, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(421, 7, 0, 71, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(422, 7, 0, 71, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(423, 7, 0, 71, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(424, 7, 0, 71, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(425, 7, 0, 71, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(426, 7, 0, 71, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(427, 7, 0, 71, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(428, 7, 0, 71, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(429, 7, 0, 71, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(430, 7, 0, 71, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(431, 7, 0, 71, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(432, 7, 0, 71, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(433, 7, 0, 71, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(434, 7, 0, 71, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(435, 7, 0, 71, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(436, 7, 0, 71, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(437, 7, 0, 71, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(438, 7, 0, 71, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(439, 7, 0, 71, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(440, 7, 0, 71, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(441, 7, 0, 71, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(442, 7, 0, 71, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(443, 7, 0, 71, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(444, 7, 0, 71, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(445, 7, 0, 71, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(446, 7, 0, 71, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(447, 7, 0, 71, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(448, 7, 0, 71, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(449, 7, 0, 71, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(450, 7, 0, 71, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(451, 7, 0, 71, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(452, 7, 0, 71, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(453, 7, 0, 71, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(454, 7, 0, 71, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(455, 7, 0, 71, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(456, 7, 0, 71, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(457, 7, 0, 71, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(458, 7, 0, 71, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(459, 7, 0, 71, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(460, 7, 0, 71, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(461, 7, 0, 71, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(462, 7, 0, 71, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(463, 7, 0, 71, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(464, 7, 0, 71, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(465, 7, 0, 71, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(466, 7, 0, 71, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(467, 7, 0, 71, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(468, 7, 0, 71, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(469, 7, 0, 71, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(470, 7, 0, 71, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(471, 7, 0, 71, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(472, 7, 0, 71, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(473, 7, 0, 71, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(474, 7, 0, 71, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(475, 7, 0, 71, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(476, 7, 0, 71, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(477, 8, 53, 71, '2019-01-17', 'am1', 'reserve', '2018-12-12', 'ref'), +(478, 8, 0, 71, '2019-01-17', 'am2', 'bloque', '2018-12-12', 'ref'), +(479, 8, 110, 71, '2019-01-17', 'pm1', 'reserve', '2018-12-18', 'ref'), +(480, 8, 0, 71, '2019-01-17', 'pm2', 'libre', '2018-11-06', ''), +(481, 8, 0, 71, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(482, 8, 0, 71, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(483, 8, 0, 71, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(484, 8, 0, 71, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(485, 8, 0, 71, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(486, 8, 0, 71, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(487, 8, 0, 71, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(488, 8, 0, 71, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(489, 8, 0, 71, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(490, 8, 0, 71, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(491, 8, 0, 71, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(492, 8, 0, 71, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(493, 8, 0, 71, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(494, 8, 0, 71, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(495, 8, 0, 71, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(496, 8, 0, 71, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(497, 8, 0, 71, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(498, 8, 0, 71, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(499, 8, 0, 71, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(500, 8, 0, 71, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(501, 8, 0, 71, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(502, 8, 0, 71, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(503, 8, 0, 71, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(504, 8, 0, 71, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(505, 8, 0, 71, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(506, 8, 0, 71, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(507, 8, 0, 71, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(508, 8, 0, 71, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(509, 8, 0, 71, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(510, 8, 0, 71, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(511, 8, 0, 71, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(512, 8, 0, 71, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(513, 8, 0, 71, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(514, 8, 0, 71, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(515, 8, 0, 71, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(516, 8, 0, 71, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(517, 8, 0, 71, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(518, 8, 0, 71, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(519, 8, 0, 71, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(520, 8, 0, 71, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(521, 8, 0, 71, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(522, 8, 0, 71, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(523, 8, 0, 71, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(524, 8, 0, 71, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(525, 8, 0, 71, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(526, 8, 0, 71, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(527, 8, 0, 71, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(528, 8, 0, 71, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(529, 8, 0, 71, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(530, 8, 0, 71, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(531, 8, 0, 71, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(532, 8, 0, 71, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(533, 8, 0, 71, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(534, 8, 0, 71, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(535, 8, 0, 71, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(536, 8, 0, 71, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(537, 8, 0, 71, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(538, 8, 0, 71, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(539, 8, 0, 71, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(540, 8, 0, 71, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(541, 8, 0, 71, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(542, 8, 0, 71, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(543, 8, 0, 71, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(544, 8, 0, 71, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(545, 9, 0, 44, '2019-01-17', 'am1', 'libre', '2018-11-06', ''), +(546, 9, 0, 44, '2019-01-17', 'am2', 'libre', '2018-11-06', ''), +(547, 9, 0, 44, '2019-01-17', 'pm1', 'libre', '2018-11-06', ''), +(548, 9, 0, 44, '2019-01-17', 'pm2', 'libre', '2018-11-06', ''), +(549, 9, 0, 44, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(550, 9, 0, 44, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(551, 9, 0, 44, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(552, 9, 0, 44, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(553, 9, 0, 44, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(554, 9, 0, 44, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(555, 9, 0, 44, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(556, 9, 0, 44, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(557, 9, 0, 44, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(558, 9, 0, 44, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(559, 9, 0, 44, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(560, 9, 0, 44, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(561, 9, 0, 44, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(562, 9, 0, 44, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(563, 9, 0, 44, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(564, 9, 0, 44, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(565, 9, 0, 44, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(566, 9, 0, 44, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(567, 9, 0, 44, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(568, 9, 0, 44, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(569, 9, 0, 44, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(570, 9, 0, 44, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(571, 9, 0, 44, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(572, 9, 0, 44, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(573, 9, 0, 44, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(574, 9, 0, 44, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(575, 9, 0, 44, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(576, 9, 0, 44, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(577, 9, 0, 44, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(578, 9, 0, 44, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(579, 9, 0, 44, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(580, 9, 0, 44, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(581, 9, 0, 44, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(582, 9, 0, 44, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(583, 9, 0, 44, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(584, 9, 0, 44, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(585, 9, 0, 44, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(586, 9, 0, 44, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(587, 9, 0, 44, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(588, 9, 0, 44, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(589, 9, 0, 44, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(590, 9, 0, 44, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(591, 9, 0, 44, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(592, 9, 0, 44, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(593, 9, 0, 44, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(594, 9, 0, 44, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(595, 9, 0, 44, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(596, 9, 0, 44, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(597, 9, 0, 44, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(598, 9, 0, 44, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(599, 9, 0, 44, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(600, 9, 0, 44, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(601, 9, 0, 44, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(602, 9, 0, 44, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(603, 9, 0, 44, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(604, 9, 0, 44, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(605, 9, 0, 44, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(606, 9, 0, 44, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(607, 9, 0, 44, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(608, 9, 0, 44, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(609, 9, 0, 44, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(610, 9, 0, 44, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(611, 9, 0, 44, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(612, 9, 0, 44, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(613, 10, 0, 345, '2019-01-17', 'am1', 'libre', '2018-11-06', ''), +(614, 10, 0, 345, '2019-01-17', 'am2', 'libre', '2018-11-06', ''), +(615, 10, 0, 345, '2019-01-17', 'pm1', 'libre', '2018-11-06', ''), +(616, 10, 239, 345, '2019-01-17', 'pm2', 'reserve', '2019-01-09', 'ref'), +(617, 10, 0, 345, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(618, 10, 0, 345, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(619, 10, 0, 345, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(620, 10, 0, 345, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(621, 10, 0, 345, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(622, 10, 0, 345, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(623, 10, 0, 345, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(624, 10, 0, 345, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(625, 10, 0, 345, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(626, 10, 0, 345, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(627, 10, 0, 345, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(628, 10, 0, 345, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(629, 10, 0, 345, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(630, 10, 0, 345, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(631, 10, 0, 345, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(632, 10, 0, 345, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(633, 10, 0, 345, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(634, 10, 0, 345, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(635, 10, 0, 345, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(636, 10, 0, 345, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(637, 10, 0, 345, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(638, 10, 0, 345, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(639, 10, 0, 345, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(640, 10, 0, 345, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(641, 10, 0, 345, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(642, 10, 0, 345, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(643, 10, 0, 345, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(644, 10, 0, 345, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(645, 10, 0, 345, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(646, 10, 0, 345, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(647, 10, 0, 345, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(648, 10, 0, 345, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(649, 10, 0, 345, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(650, 10, 0, 345, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(651, 10, 0, 345, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(652, 10, 0, 345, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(653, 10, 0, 345, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(654, 10, 0, 345, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(655, 10, 0, 345, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(656, 10, 0, 345, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(657, 10, 0, 345, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(658, 10, 0, 345, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(659, 10, 0, 345, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(660, 10, 0, 345, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(661, 10, 0, 345, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(662, 10, 0, 345, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(663, 10, 0, 345, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(664, 10, 0, 345, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(665, 10, 0, 345, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(666, 10, 0, 345, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(667, 10, 0, 345, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(668, 10, 0, 345, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(669, 10, 0, 345, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(670, 10, 0, 345, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(671, 10, 0, 345, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(672, 10, 0, 345, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(673, 10, 0, 345, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(674, 10, 0, 345, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(675, 10, 0, 345, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(676, 10, 0, 345, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(677, 10, 0, 345, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(678, 10, 0, 345, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(679, 10, 0, 345, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(680, 10, 0, 345, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(681, 11, 84, 3, '2019-01-17', 'am1', 'reserve', '2018-12-14', 'cap'), +(682, 11, 12, 3, '2019-01-17', 'am2', 'reserve', '2018-11-19', 'cap'), +(683, 11, 85, 3, '2019-01-17', 'pm1', 'reserve', '2018-12-14', 'cap'), +(684, 11, 132, 3, '2019-01-17', 'pm2', 'reserve', '2018-12-19', 'cap'), +(685, 11, 0, 3, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(686, 11, 0, 3, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(687, 11, 0, 3, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(688, 11, 0, 3, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(689, 11, 0, 3, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(690, 11, 0, 3, '2019-01-21', 'am2', 'bloque', '2018-11-28', 'cap'), +(691, 11, 0, 3, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(692, 11, 0, 3, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(693, 11, 0, 3, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(694, 11, 0, 3, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(695, 11, 0, 3, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(696, 11, 0, 3, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(697, 11, 0, 3, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(698, 11, 0, 3, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(699, 11, 0, 3, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(700, 11, 0, 3, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(701, 11, 0, 3, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(702, 11, 0, 3, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(703, 11, 0, 3, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(704, 11, 0, 3, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(705, 11, 0, 3, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(706, 11, 0, 3, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(707, 11, 0, 3, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(708, 11, 0, 3, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(709, 11, 0, 3, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(710, 11, 0, 3, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(711, 11, 0, 3, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(712, 11, 0, 3, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(713, 11, 0, 3, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(714, 11, 0, 3, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(715, 11, 0, 3, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(716, 11, 0, 3, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(717, 11, 0, 3, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(718, 11, 0, 3, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(719, 11, 0, 3, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(720, 11, 0, 3, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(721, 11, 0, 3, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(722, 11, 0, 3, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(723, 11, 0, 3, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(724, 11, 0, 3, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(725, 11, 0, 3, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(726, 11, 0, 3, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(727, 11, 0, 3, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(728, 11, 0, 3, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(729, 11, 0, 3, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(730, 11, 0, 3, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(731, 11, 0, 3, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(732, 11, 0, 3, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(733, 11, 0, 3, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(734, 11, 0, 3, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(735, 11, 0, 3, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(736, 11, 0, 3, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(737, 11, 0, 3, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(738, 11, 0, 3, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(739, 11, 0, 3, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(740, 11, 0, 3, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(741, 11, 0, 3, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(742, 11, 0, 3, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(743, 11, 0, 3, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(744, 11, 0, 3, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(745, 11, 0, 3, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(746, 11, 0, 3, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(747, 11, 0, 3, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(748, 11, 0, 3, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(749, 12, 21, 55, '2019-01-17', 'am1', 'reserve', '2018-12-04', 'ref'), +(750, 12, 22, 55, '2019-01-17', 'am2', 'reserve', '2018-12-04', 'ref'), +(751, 12, 0, 55, '2019-01-17', 'pm1', 'libre', '2018-11-06', ''), +(752, 12, 0, 55, '2019-01-17', 'pm2', 'libre', '2018-11-06', ''), +(753, 12, 0, 55, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(754, 12, 0, 55, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(755, 12, 0, 55, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(756, 12, 0, 55, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(757, 12, 0, 55, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(758, 12, 0, 55, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(759, 12, 0, 55, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(760, 12, 0, 55, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(761, 12, 0, 55, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(762, 12, 0, 55, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(763, 12, 0, 55, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(764, 12, 0, 55, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(765, 12, 0, 55, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(766, 12, 0, 55, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(767, 12, 0, 55, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(768, 12, 0, 55, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(769, 12, 0, 55, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(770, 12, 0, 55, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(771, 12, 0, 55, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(772, 12, 0, 55, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(773, 12, 0, 55, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(774, 12, 0, 55, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(775, 12, 0, 55, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(776, 12, 0, 55, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(777, 12, 0, 55, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(778, 12, 0, 55, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(779, 12, 0, 55, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(780, 12, 0, 55, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(781, 12, 0, 55, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(782, 12, 0, 55, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(783, 12, 0, 55, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(784, 12, 0, 55, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(785, 12, 0, 55, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(786, 12, 0, 55, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(787, 12, 0, 55, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(788, 12, 0, 55, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(789, 12, 0, 55, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(790, 12, 0, 55, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(791, 12, 0, 55, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(792, 12, 0, 55, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(793, 12, 0, 55, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(794, 12, 0, 55, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(795, 12, 0, 55, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(796, 12, 0, 55, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(797, 12, 0, 55, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(798, 12, 0, 55, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(799, 12, 0, 55, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(800, 12, 0, 55, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(801, 12, 0, 55, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(802, 12, 0, 55, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(803, 12, 0, 55, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(804, 12, 0, 55, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(805, 12, 0, 55, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(806, 12, 0, 55, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(807, 12, 0, 55, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(808, 12, 0, 55, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(809, 12, 0, 55, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(810, 12, 0, 55, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(811, 12, 0, 55, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(812, 12, 0, 55, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(813, 12, 0, 55, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(814, 12, 0, 55, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(815, 12, 0, 55, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(816, 12, 0, 55, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(817, 13, 0, 55, '2019-01-17', 'am1', 'libre', '2018-11-06', ''), +(818, 13, 0, 55, '2019-01-17', 'am2', 'libre', '2018-11-06', ''), +(819, 13, 0, 55, '2019-01-17', 'pm1', 'libre', '2018-11-06', ''), +(820, 13, 0, 55, '2019-01-17', 'pm2', 'libre', '2018-11-06', ''), +(821, 13, 0, 55, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(822, 13, 0, 55, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(823, 13, 0, 55, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(824, 13, 0, 55, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(825, 13, 0, 55, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(826, 13, 0, 55, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(827, 13, 0, 55, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(828, 13, 0, 55, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(829, 13, 0, 55, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(830, 13, 0, 55, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(831, 13, 0, 55, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(832, 13, 0, 55, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(833, 13, 0, 55, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(834, 13, 0, 55, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(835, 13, 0, 55, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(836, 13, 0, 55, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(837, 13, 0, 55, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(838, 13, 0, 55, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(839, 13, 0, 55, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(840, 13, 0, 55, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(841, 13, 0, 55, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(842, 13, 0, 55, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(843, 13, 0, 55, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(844, 13, 0, 55, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(845, 13, 0, 55, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(846, 13, 0, 55, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(847, 13, 0, 55, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(848, 13, 0, 55, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(849, 13, 0, 55, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(850, 13, 0, 55, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(851, 13, 0, 55, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(852, 13, 0, 55, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(853, 13, 0, 55, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(854, 13, 0, 55, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(855, 13, 0, 55, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(856, 13, 0, 55, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(857, 13, 0, 55, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(858, 13, 0, 55, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(859, 13, 0, 55, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(860, 13, 0, 55, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(861, 13, 0, 55, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(862, 13, 0, 55, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(863, 13, 0, 55, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(864, 13, 0, 55, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(865, 13, 0, 55, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(866, 13, 0, 55, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(867, 13, 0, 55, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(868, 13, 0, 55, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(869, 13, 0, 55, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(870, 13, 0, 55, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(871, 13, 0, 55, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(872, 13, 0, 55, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(873, 13, 0, 55, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(874, 13, 0, 55, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(875, 13, 0, 55, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(876, 13, 0, 55, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(877, 13, 0, 55, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(878, 13, 0, 55, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(879, 13, 0, 55, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(880, 13, 0, 55, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(881, 13, 0, 55, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(882, 13, 0, 55, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(883, 13, 0, 55, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(884, 13, 0, 55, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(885, 14, 0, 55, '2019-01-17', 'am1', 'libre', '2018-11-06', ''), +(886, 14, 0, 55, '2019-01-17', 'am2', 'libre', '2018-11-06', ''), +(887, 14, 0, 55, '2019-01-17', 'pm1', 'libre', '2018-11-06', ''), +(888, 14, 0, 55, '2019-01-17', 'pm2', 'libre', '2018-11-06', ''), +(889, 14, 0, 55, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(890, 14, 0, 55, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(891, 14, 0, 55, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(892, 14, 0, 55, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(893, 14, 0, 55, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(894, 14, 0, 55, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(895, 14, 0, 55, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(896, 14, 0, 55, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(897, 14, 0, 55, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(898, 14, 0, 55, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(899, 14, 0, 55, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(900, 14, 0, 55, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(901, 14, 0, 55, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(902, 14, 0, 55, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(903, 14, 0, 55, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(904, 14, 0, 55, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(905, 14, 0, 55, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(906, 14, 0, 55, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(907, 14, 0, 55, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(908, 14, 0, 55, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(909, 14, 0, 55, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(910, 14, 0, 55, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(911, 14, 0, 55, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(912, 14, 0, 55, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(913, 14, 0, 55, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(914, 14, 0, 55, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(915, 14, 0, 55, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(916, 14, 0, 55, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(917, 14, 0, 55, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(918, 14, 0, 55, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(919, 14, 0, 55, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(920, 14, 0, 55, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(921, 14, 0, 55, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(922, 14, 0, 55, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(923, 14, 0, 55, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(924, 14, 0, 55, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(925, 14, 0, 55, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(926, 14, 0, 55, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(927, 14, 0, 55, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(928, 14, 0, 55, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(929, 14, 0, 55, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(930, 14, 0, 55, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(931, 14, 0, 55, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(932, 14, 0, 55, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(933, 14, 0, 55, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(934, 14, 0, 55, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(935, 14, 0, 55, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(936, 14, 0, 55, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(937, 14, 0, 55, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(938, 14, 0, 55, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(939, 14, 0, 55, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(940, 14, 0, 55, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(941, 14, 0, 55, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(942, 14, 0, 55, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(943, 14, 0, 55, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(944, 14, 0, 55, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(945, 14, 0, 55, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(946, 14, 0, 55, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(947, 14, 0, 55, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(948, 14, 0, 55, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(949, 14, 0, 55, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(950, 14, 0, 55, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(951, 14, 0, 55, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(952, 14, 0, 55, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(953, 15, 228, 68, '2019-01-17', 'am1', 'reserve', '2019-01-09', 'ref'), +(954, 15, 0, 68, '2019-01-17', 'am2', 'bloque', '2019-01-09', 'ref'), +(955, 15, 235, 68, '2019-01-17', 'pm1', 'reserve', '2019-01-09', 'ref'), +(956, 15, 0, 68, '2019-01-17', 'pm2', 'bloque', '2019-01-09', 'ref'), +(957, 15, 0, 68, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(958, 15, 0, 68, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(959, 15, 0, 68, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(960, 15, 0, 68, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(961, 15, 0, 68, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(962, 15, 0, 68, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(963, 15, 0, 68, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(964, 15, 0, 68, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(965, 15, 0, 68, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(966, 15, 0, 68, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(967, 15, 0, 68, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(968, 15, 0, 68, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(969, 15, 0, 68, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(970, 15, 0, 68, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(971, 15, 0, 68, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(972, 15, 0, 68, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(973, 15, 0, 68, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(974, 15, 0, 68, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(975, 15, 0, 68, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(976, 15, 0, 68, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(977, 15, 0, 68, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(978, 15, 0, 68, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(979, 15, 0, 68, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(980, 15, 0, 68, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(981, 15, 0, 68, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(982, 15, 0, 68, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(983, 15, 0, 68, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(984, 15, 0, 68, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(985, 15, 0, 68, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(986, 15, 0, 68, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(987, 15, 0, 68, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(988, 15, 0, 68, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(989, 15, 0, 68, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(990, 15, 0, 68, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(991, 15, 0, 68, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(992, 15, 0, 68, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(993, 15, 0, 68, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(994, 15, 0, 68, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(995, 15, 0, 68, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(996, 15, 0, 68, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(997, 15, 0, 68, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(998, 15, 0, 68, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(999, 15, 0, 68, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(1000, 15, 0, 68, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(1001, 15, 0, 68, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(1002, 15, 0, 68, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(1003, 15, 0, 68, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(1004, 15, 0, 68, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(1005, 15, 0, 68, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(1006, 15, 0, 68, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(1007, 15, 0, 68, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(1008, 15, 0, 68, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(1009, 15, 0, 68, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(1010, 15, 0, 68, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(1011, 15, 0, 68, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(1012, 15, 0, 68, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(1013, 15, 0, 68, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(1014, 15, 0, 68, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(1015, 15, 0, 68, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(1016, 15, 0, 68, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(1017, 15, 0, 68, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(1018, 15, 0, 68, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(1019, 15, 0, 68, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(1020, 15, 0, 68, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(1021, 16, 102, 43, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'cap'), +(1022, 16, 103, 43, '2019-01-17', 'am2', 'reserve', '2018-12-18', 'cap'), +(1023, 16, 262, 43, '2019-01-17', 'pm1', 'reserve', '2019-01-11', 'cap'), +(1024, 16, 123, 43, '2019-01-17', 'pm2', 'reserve', '2018-12-18', 'cap'), +(1025, 16, 0, 43, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(1026, 16, 0, 43, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(1027, 16, 0, 43, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(1028, 16, 0, 43, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(1029, 16, 0, 43, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(1030, 16, 0, 43, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(1031, 16, 0, 43, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(1032, 16, 0, 43, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(1033, 16, 0, 43, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(1034, 16, 0, 43, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(1035, 16, 0, 43, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(1036, 16, 0, 43, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(1037, 16, 0, 43, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(1038, 16, 0, 43, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(1039, 16, 0, 43, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(1040, 16, 0, 43, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(1041, 16, 0, 43, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(1042, 16, 0, 43, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(1043, 16, 0, 43, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(1044, 16, 0, 43, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(1045, 16, 0, 43, '2019-01-25', 'am1', 'bloque', '2019-01-28', 'cap'), +(1046, 16, 0, 43, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(1047, 16, 0, 43, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(1048, 16, 0, 43, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(1049, 16, 0, 43, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(1050, 16, 0, 43, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(1051, 16, 0, 43, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(1052, 16, 0, 43, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(1053, 16, 0, 43, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(1054, 16, 0, 43, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(1055, 16, 0, 43, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(1056, 16, 0, 43, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(1057, 16, 0, 43, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(1058, 16, 0, 43, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(1059, 16, 0, 43, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(1060, 16, 0, 43, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(1061, 16, 0, 43, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(1062, 16, 0, 43, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(1063, 16, 0, 43, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(1064, 16, 0, 43, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(1065, 16, 0, 43, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(1066, 16, 0, 43, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(1067, 16, 0, 43, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(1068, 16, 0, 43, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(1069, 16, 0, 43, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(1070, 16, 0, 43, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(1071, 16, 0, 43, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(1072, 16, 0, 43, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(1073, 16, 0, 43, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(1074, 16, 0, 43, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(1075, 16, 0, 43, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(1076, 16, 0, 43, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(1077, 16, 0, 43, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(1078, 16, 0, 43, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(1079, 16, 0, 43, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(1080, 16, 0, 43, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(1081, 16, 0, 43, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(1082, 16, 0, 43, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(1083, 16, 0, 43, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(1084, 16, 0, 43, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(1085, 16, 0, 43, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(1086, 16, 0, 43, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(1087, 16, 0, 43, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(1088, 16, 0, 43, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(1089, 17, 51, 23, '2019-01-17', 'am1', 'reserve', '2018-12-11', 'ref'), +(1090, 17, 136, 23, '2019-01-17', 'am2', 'reserve', '2018-12-19', 'cap'), +(1091, 17, 137, 23, '2019-01-17', 'pm1', 'reserve', '2018-12-19', 'cap'), +(1092, 17, 141, 23, '2019-01-17', 'pm2', 'reserve', '2018-12-19', 'cap'), +(1093, 17, 0, 23, '2019-01-18', 'am1', 'bloque', '2018-11-06', ''), +(1094, 17, 0, 23, '2019-01-18', 'am2', 'bloque', '2018-11-06', ''), +(1095, 17, 0, 23, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(1096, 17, 0, 23, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(1097, 17, 0, 23, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(1098, 17, 0, 23, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(1099, 17, 0, 23, '2019-01-21', 'pm1', 'bloque', '2018-11-06', ''), +(1100, 17, 0, 23, '2019-01-21', 'pm2', 'bloque', '2018-11-06', ''), +(1101, 17, 0, 23, '2019-01-22', 'am1', 'bloque', '2018-11-06', ''), +(1102, 17, 0, 23, '2019-01-22', 'am2', 'bloque', '2018-11-06', ''), +(1103, 17, 0, 23, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(1104, 17, 0, 23, '2019-01-22', 'pm2', 'bloque', '2018-11-06', ''), +(1105, 17, 0, 23, '2019-01-23', 'am1', 'bloque', '2018-11-06', ''), +(1106, 17, 0, 23, '2019-01-23', 'am2', 'bloque', '2018-11-06', ''), +(1107, 17, 0, 23, '2019-01-23', 'pm1', 'bloque', '2018-11-06', ''), +(1108, 17, 0, 23, '2019-01-23', 'pm2', 'bloque', '2018-11-06', ''), +(1109, 17, 0, 23, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(1110, 17, 0, 23, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(1111, 17, 0, 23, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(1112, 17, 0, 23, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(1113, 17, 0, 23, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(1114, 17, 0, 23, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(1115, 17, 0, 23, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(1116, 17, 0, 23, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(1117, 17, 0, 23, '2019-01-28', 'am1', 'bloque', '2018-11-06', ''), +(1118, 17, 0, 23, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(1119, 17, 0, 23, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(1120, 17, 0, 23, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(1121, 17, 0, 23, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(1122, 17, 0, 23, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(1123, 17, 0, 23, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(1124, 17, 0, 23, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(1125, 17, 0, 23, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(1126, 17, 0, 23, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(1127, 17, 0, 23, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(1128, 17, 0, 23, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(1129, 17, 0, 23, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(1130, 17, 0, 23, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(1131, 17, 0, 23, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(1132, 17, 0, 23, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(1133, 17, 0, 23, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(1134, 17, 0, 23, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(1135, 17, 0, 23, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(1136, 17, 0, 23, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(1137, 17, 0, 23, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(1138, 17, 0, 23, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(1139, 17, 0, 23, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(1140, 17, 0, 23, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(1141, 17, 0, 23, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(1142, 17, 0, 23, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(1143, 17, 0, 23, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(1144, 17, 0, 23, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(1145, 17, 0, 23, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(1146, 17, 0, 23, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(1147, 17, 0, 23, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(1148, 17, 0, 23, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(1149, 17, 0, 23, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(1150, 17, 0, 23, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(1151, 17, 0, 23, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(1152, 17, 0, 23, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(1153, 17, 0, 23, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(1154, 17, 0, 23, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(1155, 17, 0, 23, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(1156, 17, 0, 23, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(1157, 18, 0, 399, '2019-01-17', 'am1', 'libre', '2018-11-07', 'ref'), +(1158, 18, 0, 399, '2019-01-17', 'am2', 'libre', '2018-11-06', ''), +(1159, 18, 0, 399, '2019-01-17', 'pm1', 'libre', '2018-11-06', ''), +(1160, 18, 0, 399, '2019-01-17', 'pm2', 'libre', '2018-11-06', ''), +(1161, 18, 0, 399, '2019-01-18', 'am1', 'libre', '2018-11-07', 'cap'), +(1162, 18, 0, 399, '2019-01-18', 'am2', 'libre', '2018-11-07', 'cap'), +(1163, 18, 0, 399, '2019-01-18', 'pm1', 'bloque', '2018-11-06', ''), +(1164, 18, 0, 399, '2019-01-18', 'pm2', 'bloque', '2018-11-06', ''), +(1165, 18, 0, 399, '2019-01-21', 'am1', 'bloque', '2018-11-06', ''), +(1166, 18, 0, 399, '2019-01-21', 'am2', 'bloque', '2018-11-06', ''), +(1167, 18, 0, 399, '2019-01-21', 'pm1', 'libre', '2018-11-07', 'ref'), +(1168, 18, 0, 399, '2019-01-21', 'pm2', 'libre', '2018-11-07', 'ref'), +(1169, 18, 0, 399, '2019-01-22', 'am1', 'libre', '2018-11-07', 'cap'), +(1170, 18, 0, 399, '2019-01-22', 'am2', 'libre', '2018-11-07', 'cap'), +(1171, 18, 0, 399, '2019-01-22', 'pm1', 'bloque', '2018-11-06', ''), +(1172, 18, 0, 399, '2019-01-22', 'pm2', 'libre', '2018-11-07', 'ref'), +(1173, 18, 0, 399, '2019-01-23', 'am1', 'libre', '2018-11-07', 'cap'), +(1174, 18, 0, 399, '2019-01-23', 'am2', 'libre', '2018-11-07', 'cap'), +(1175, 18, 0, 399, '2019-01-23', 'pm1', 'libre', '2018-11-07', 'cap'), +(1176, 18, 0, 399, '2019-01-23', 'pm2', 'libre', '2018-11-07', 'cap'), +(1177, 18, 0, 399, '2019-01-24', 'am1', 'bloque', '2018-11-06', ''), +(1178, 18, 0, 399, '2019-01-24', 'am2', 'bloque', '2018-11-06', ''), +(1179, 18, 0, 399, '2019-01-24', 'pm1', 'bloque', '2018-11-06', ''), +(1180, 18, 0, 399, '2019-01-24', 'pm2', 'bloque', '2018-11-06', ''), +(1181, 18, 0, 399, '2019-01-25', 'am1', 'bloque', '2018-11-06', ''), +(1182, 18, 0, 399, '2019-01-25', 'am2', 'bloque', '2018-11-06', ''), +(1183, 18, 0, 399, '2019-01-25', 'pm1', 'bloque', '2018-11-06', ''), +(1184, 18, 0, 399, '2019-01-25', 'pm2', 'bloque', '2018-11-06', ''), +(1185, 18, 0, 399, '2019-01-28', 'am1', 'bloque', '2018-11-07', 'cap'), +(1186, 18, 0, 399, '2019-01-28', 'am2', 'bloque', '2018-11-06', ''), +(1187, 18, 0, 399, '2019-01-28', 'pm1', 'bloque', '2018-11-06', ''), +(1188, 18, 0, 399, '2019-01-28', 'pm2', 'bloque', '2018-11-06', ''), +(1189, 18, 0, 399, '2019-01-29', 'am1', 'bloque', '2018-11-06', ''), +(1190, 18, 0, 399, '2019-01-29', 'am2', 'bloque', '2018-11-06', ''), +(1191, 18, 0, 399, '2019-01-29', 'pm1', 'bloque', '2018-11-06', ''), +(1192, 18, 0, 399, '2019-01-29', 'pm2', 'bloque', '2018-11-06', ''), +(1193, 18, 0, 399, '2019-01-30', 'am1', 'bloque', '2018-11-06', ''), +(1194, 18, 0, 399, '2019-01-30', 'am2', 'bloque', '2018-11-06', ''), +(1195, 18, 0, 399, '2019-01-30', 'pm1', 'bloque', '2018-11-06', ''), +(1196, 18, 0, 399, '2019-01-30', 'pm2', 'bloque', '2018-11-06', ''), +(1197, 18, 0, 399, '2019-01-31', 'am1', 'bloque', '2018-11-06', ''), +(1198, 18, 0, 399, '2019-01-31', 'am2', 'bloque', '2018-11-06', ''), +(1199, 18, 0, 399, '2019-01-31', 'pm1', 'bloque', '2018-11-06', ''), +(1200, 18, 0, 399, '2019-01-31', 'pm2', 'bloque', '2018-11-06', ''), +(1201, 18, 0, 399, '2019-02-01', 'am1', 'bloque', '2018-11-06', ''), +(1202, 18, 0, 399, '2019-02-01', 'am2', 'bloque', '2018-11-06', ''), +(1203, 18, 0, 399, '2019-02-01', 'pm1', 'bloque', '2018-11-06', ''), +(1204, 18, 0, 399, '2019-02-01', 'pm2', 'bloque', '2018-11-06', ''), +(1205, 18, 0, 399, '2019-02-04', 'am1', 'bloque', '2018-11-06', ''), +(1206, 18, 0, 399, '2019-02-04', 'am2', 'bloque', '2018-11-06', ''), +(1207, 18, 0, 399, '2019-02-04', 'pm1', 'bloque', '2018-11-06', ''), +(1208, 18, 0, 399, '2019-02-04', 'pm2', 'bloque', '2018-11-06', ''), +(1209, 18, 0, 399, '2019-02-05', 'am1', 'bloque', '2018-11-06', ''), +(1210, 18, 0, 399, '2019-02-05', 'am2', 'bloque', '2018-11-06', ''), +(1211, 18, 0, 399, '2019-02-05', 'pm1', 'bloque', '2018-11-06', ''), +(1212, 18, 0, 399, '2019-02-05', 'pm2', 'bloque', '2018-11-06', ''), +(1213, 18, 0, 399, '2019-02-06', 'am1', 'bloque', '2018-11-06', ''), +(1214, 18, 0, 399, '2019-02-06', 'am2', 'bloque', '2018-11-06', ''), +(1215, 18, 0, 399, '2019-02-06', 'pm1', 'bloque', '2018-11-06', ''), +(1216, 18, 0, 399, '2019-02-06', 'pm2', 'bloque', '2018-11-06', ''), +(1217, 18, 0, 399, '2019-02-07', 'am1', 'bloque', '2018-11-06', ''), +(1218, 18, 0, 399, '2019-02-07', 'am2', 'bloque', '2018-11-06', ''), +(1219, 18, 0, 399, '2019-02-07', 'pm1', 'bloque', '2018-11-06', ''), +(1220, 18, 0, 399, '2019-02-07', 'pm2', 'bloque', '2018-11-06', ''), +(1221, 18, 0, 399, '2019-02-08', 'am1', 'bloque', '2018-11-06', ''), +(1222, 18, 0, 399, '2019-02-08', 'am2', 'bloque', '2018-11-06', ''), +(1223, 18, 0, 399, '2019-02-08', 'pm1', 'bloque', '2018-11-06', ''), +(1224, 18, 0, 399, '2019-02-08', 'pm2', 'bloque', '2018-11-06', ''), +(2099, 31, 0, 22, '2019-02-06', 'pm1', 'bloque', '2018-11-12', ''), +(2098, 31, 0, 22, '2019-02-06', 'am2', 'bloque', '2018-11-12', ''), +(2097, 31, 0, 22, '2019-02-06', 'am1', 'bloque', '2018-11-12', ''), +(2096, 31, 0, 22, '2019-02-05', 'pm2', 'bloque', '2018-11-12', ''), +(2095, 31, 0, 22, '2019-02-05', 'pm1', 'bloque', '2018-11-12', ''), +(2094, 31, 0, 22, '2019-02-05', 'am2', 'bloque', '2018-11-12', ''), +(2093, 31, 0, 22, '2019-02-05', 'am1', 'bloque', '2018-11-12', ''), +(2092, 31, 0, 22, '2019-02-04', 'pm2', 'bloque', '2018-11-12', ''), +(2091, 31, 0, 22, '2019-02-04', 'pm1', 'bloque', '2018-11-12', ''), +(2090, 31, 0, 22, '2019-02-04', 'am2', 'bloque', '2018-11-12', ''), +(2089, 31, 0, 22, '2019-02-04', 'am1', 'bloque', '2018-11-12', ''), +(2088, 31, 0, 22, '2019-02-01', 'pm2', 'bloque', '2018-11-12', ''), +(2087, 31, 0, 22, '2019-02-01', 'pm1', 'bloque', '2018-11-12', ''), +(2086, 31, 0, 22, '2019-02-01', 'am2', 'bloque', '2018-11-12', ''), +(2085, 31, 0, 22, '2019-02-01', 'am1', 'bloque', '2018-11-12', ''), +(2084, 31, 0, 22, '2019-01-31', 'pm2', 'bloque', '2018-11-12', ''), +(2083, 31, 0, 22, '2019-01-31', 'pm1', 'bloque', '2018-11-12', ''), +(2082, 31, 0, 22, '2019-01-31', 'am2', 'bloque', '2018-11-12', ''), +(2081, 31, 0, 22, '2019-01-31', 'am1', 'bloque', '2018-11-12', ''), +(2080, 31, 0, 22, '2019-01-30', 'pm2', 'bloque', '2018-11-12', ''), +(2079, 31, 0, 22, '2019-01-30', 'pm1', 'bloque', '2018-11-12', ''), +(2078, 31, 0, 22, '2019-01-30', 'am2', 'bloque', '2018-11-12', ''), +(2077, 31, 0, 22, '2019-01-30', 'am1', 'bloque', '2018-11-12', ''), +(2076, 31, 0, 22, '2019-01-29', 'pm2', 'bloque', '2018-11-12', ''), +(2075, 31, 0, 22, '2019-01-29', 'pm1', 'bloque', '2018-11-12', ''), +(2074, 31, 0, 22, '2019-01-29', 'am2', 'bloque', '2018-11-12', ''), +(2073, 31, 0, 22, '2019-01-29', 'am1', 'bloque', '2018-11-12', ''), +(2072, 31, 0, 22, '2019-01-28', 'pm2', 'bloque', '2018-11-12', ''), +(2071, 31, 0, 22, '2019-01-28', 'pm1', 'bloque', '2018-11-12', ''), +(2070, 31, 0, 22, '2019-01-28', 'am2', 'bloque', '2018-11-12', ''), +(2069, 31, 0, 22, '2019-01-28', 'am1', 'bloque', '2018-11-12', ''), +(2068, 31, 0, 22, '2019-01-25', 'pm2', 'bloque', '2018-11-12', ''), +(2067, 31, 0, 22, '2019-01-25', 'pm1', 'bloque', '2018-11-12', ''), +(2066, 31, 0, 22, '2019-01-25', 'am2', 'bloque', '2018-11-12', ''), +(2065, 31, 0, 22, '2019-01-25', 'am1', 'bloque', '2018-11-12', ''), +(2064, 31, 0, 22, '2019-01-24', 'pm2', 'bloque', '2018-11-12', ''), +(2063, 31, 0, 22, '2019-01-24', 'pm1', 'bloque', '2018-11-12', ''), +(2062, 31, 0, 22, '2019-01-24', 'am2', 'bloque', '2018-11-12', ''), +(2061, 31, 0, 22, '2019-01-24', 'am1', 'bloque', '2018-11-12', ''), +(2060, 31, 0, 22, '2019-01-23', 'pm2', 'bloque', '2018-11-12', ''), +(2059, 31, 0, 22, '2019-01-23', 'pm1', 'bloque', '2018-11-12', ''), +(2058, 31, 0, 22, '2019-01-23', 'am2', 'bloque', '2018-11-12', ''), +(2057, 31, 0, 22, '2019-01-23', 'am1', 'bloque', '2018-11-12', ''), +(2056, 31, 0, 22, '2019-01-22', 'pm2', 'bloque', '2018-11-12', ''), +(2055, 31, 0, 22, '2019-01-22', 'pm1', 'bloque', '2018-11-12', ''), +(2054, 31, 0, 22, '2019-01-22', 'am2', 'bloque', '2018-11-12', ''), +(2053, 31, 0, 22, '2019-01-22', 'am1', 'bloque', '2018-11-12', ''), +(2052, 31, 0, 22, '2019-01-21', 'pm2', 'bloque', '2018-11-12', ''), +(2051, 31, 0, 22, '2019-01-21', 'pm1', 'bloque', '2018-11-12', ''), +(2050, 31, 0, 22, '2019-01-21', 'am2', 'bloque', '2018-11-12', ''), +(2049, 31, 0, 22, '2019-01-21', 'am1', 'bloque', '2018-11-12', ''), +(2048, 31, 0, 22, '2019-01-18', 'pm2', 'bloque', '2018-11-12', ''), +(2047, 31, 0, 22, '2019-01-18', 'pm1', 'bloque', '2018-11-12', ''), +(2046, 31, 0, 22, '2019-01-18', 'am2', 'bloque', '2018-11-12', ''), +(2045, 31, 0, 22, '2019-01-18', 'am1', 'bloque', '2018-11-28', 'cap'), +(2044, 31, 0, 22, '2019-01-17', 'pm2', 'bloque', '2018-11-28', 'cap'), +(2043, 31, 0, 22, '2019-01-17', 'pm1', 'bloque', '2018-11-28', 'cap'), +(2042, 31, 187, 22, '2019-01-17', 'am2', 'reserve', '2019-01-03', 'cap'), +(2041, 31, 186, 22, '2019-01-17', 'am1', 'reserve', '2019-01-03', 'cap'), +(2040, 30, 0, 263, '2019-02-08', 'pm2', 'libre', '2018-12-03', 'cap'), +(2039, 30, 0, 263, '2019-02-08', 'pm1', 'libre', '2018-12-03', 'cap'), +(2038, 30, 0, 263, '2019-02-08', 'am2', 'libre', '2018-12-03', 'cap'), +(2037, 30, 0, 263, '2019-02-08', 'am1', 'libre', '2018-12-03', 'cap'), +(2036, 30, 0, 263, '2019-02-07', 'pm2', 'libre', '2018-12-03', 'cap'), +(2035, 30, 0, 263, '2019-02-07', 'pm1', 'libre', '2018-12-03', 'cap'), +(2034, 30, 0, 263, '2019-02-07', 'am2', 'libre', '2018-12-03', 'cap'), +(2033, 30, 0, 263, '2019-02-07', 'am1', 'libre', '2018-12-03', 'cap'), +(2032, 30, 0, 263, '2019-02-06', 'pm2', 'libre', '2018-12-03', 'cap'), +(2031, 30, 0, 263, '2019-02-06', 'pm1', 'libre', '2018-12-03', 'cap'), +(2030, 30, 0, 263, '2019-02-06', 'am2', 'libre', '2018-12-03', 'cap'), +(2029, 30, 0, 263, '2019-02-06', 'am1', 'libre', '2018-12-03', 'cap'), +(2028, 30, 0, 263, '2019-02-05', 'pm2', 'libre', '2018-12-03', 'cap'), +(2027, 30, 0, 263, '2019-02-05', 'pm1', 'libre', '2018-12-03', 'cap'), +(2026, 30, 0, 263, '2019-02-05', 'am2', 'libre', '2018-12-03', 'cap'), +(2025, 30, 0, 263, '2019-02-05', 'am1', 'libre', '2018-12-03', 'cap'), +(2024, 30, 0, 263, '2019-02-04', 'pm2', 'libre', '2018-12-03', 'cap'), +(2023, 30, 0, 263, '2019-02-04', 'pm1', 'libre', '2018-12-03', 'cap'), +(2022, 30, 0, 263, '2019-02-04', 'am2', 'libre', '2018-12-03', 'cap'), +(2021, 30, 0, 263, '2019-02-04', 'am1', 'libre', '2018-12-03', 'cap'), +(2020, 30, 0, 263, '2019-02-01', 'pm2', 'libre', '2018-12-03', 'cap'), +(2019, 30, 0, 263, '2019-02-01', 'pm1', 'libre', '2018-12-03', 'cap'), +(2018, 30, 0, 263, '2019-02-01', 'am2', 'libre', '2018-12-03', 'cap'), +(2017, 30, 0, 263, '2019-02-01', 'am1', 'libre', '2018-12-03', 'cap'), +(2016, 30, 0, 263, '2019-01-31', 'pm2', 'libre', '2018-12-03', 'cap'), +(2015, 30, 0, 263, '2019-01-31', 'pm1', 'libre', '2018-12-03', 'cap'), +(2014, 30, 0, 263, '2019-01-31', 'am2', 'libre', '2018-12-03', 'cap'), +(2013, 30, 0, 263, '2019-01-31', 'am1', 'libre', '2018-12-03', 'cap'), +(2012, 30, 0, 263, '2019-01-30', 'pm2', 'libre', '2018-12-03', 'cap'), +(2011, 30, 0, 263, '2019-01-30', 'pm1', 'libre', '2018-12-03', 'cap'), +(2010, 30, 0, 263, '2019-01-30', 'am2', 'libre', '2018-12-03', 'cap'), +(2009, 30, 0, 263, '2019-01-30', 'am1', 'libre', '2018-12-03', 'cap'), +(2008, 30, 0, 263, '2019-01-29', 'pm2', 'libre', '2018-12-03', 'cap'), +(2007, 30, 0, 263, '2019-01-29', 'pm1', 'libre', '2018-12-03', 'cap'), +(2006, 30, 0, 263, '2019-01-29', 'am2', 'libre', '2018-12-03', 'cap'), +(2005, 30, 0, 263, '2019-01-29', 'am1', 'libre', '2018-12-03', 'cap'), +(2004, 30, 0, 263, '2019-01-28', 'pm2', 'libre', '2018-12-03', 'cap'), +(2003, 30, 0, 263, '2019-01-28', 'pm1', 'libre', '2018-12-03', 'cap'), +(2002, 30, 0, 263, '2019-01-28', 'am2', 'libre', '2018-12-03', 'cap'), +(2001, 30, 0, 263, '2019-01-28', 'am1', 'libre', '2018-12-03', 'cap'), +(2000, 30, 0, 263, '2019-01-25', 'pm2', 'libre', '2018-12-03', 'cap'), +(1999, 30, 0, 263, '2019-01-25', 'pm1', 'libre', '2018-12-03', 'cap'), +(1998, 30, 0, 263, '2019-01-25', 'am2', 'libre', '2018-12-03', 'cap'), +(1997, 30, 0, 263, '2019-01-25', 'am1', 'libre', '2018-12-03', 'cap'), +(1996, 30, 0, 263, '2019-01-24', 'pm2', 'libre', '2018-12-03', 'cap'), +(1995, 30, 0, 263, '2019-01-24', 'pm1', 'libre', '2018-12-03', 'cap'), +(1994, 30, 0, 263, '2019-01-24', 'am2', 'libre', '2018-12-03', 'cap'), +(1993, 30, 0, 263, '2019-01-24', 'am1', 'libre', '2018-12-03', 'cap'), +(1992, 30, 0, 263, '2019-01-23', 'pm2', 'libre', '2018-12-03', 'cap'), +(1991, 30, 0, 263, '2019-01-23', 'pm1', 'libre', '2018-12-03', 'cap'), +(1990, 30, 0, 263, '2019-01-23', 'am2', 'libre', '2018-12-03', 'cap'), +(1989, 30, 0, 263, '2019-01-23', 'am1', 'libre', '2018-12-03', 'cap'), +(1988, 30, 0, 263, '2019-01-22', 'pm2', 'libre', '2018-12-03', 'cap'), +(1987, 30, 0, 263, '2019-01-22', 'pm1', 'libre', '2018-12-03', 'cap'), +(1986, 30, 0, 263, '2019-01-22', 'am2', 'libre', '2018-12-03', 'cap'), +(1985, 30, 0, 263, '2019-01-22', 'am1', 'libre', '2018-12-03', 'cap'), +(1984, 30, 0, 263, '2019-01-21', 'pm2', 'libre', '2018-12-03', 'cap'), +(1983, 30, 0, 263, '2019-01-21', 'pm1', 'libre', '2018-12-03', 'cap'), +(1982, 30, 0, 263, '2019-01-21', 'am2', 'libre', '2018-12-03', 'cap'), +(1981, 30, 0, 263, '2019-01-21', 'am1', 'libre', '2018-12-03', 'cap'), +(1980, 30, 0, 263, '2019-01-18', 'pm2', 'libre', '2018-12-03', 'cap'), +(1979, 30, 0, 263, '2019-01-18', 'pm1', 'libre', '2018-12-03', 'cap'), +(1978, 30, 0, 263, '2019-01-18', 'am2', 'libre', '2018-12-03', 'cap'), +(1977, 30, 0, 263, '2019-01-18', 'am1', 'libre', '2018-12-03', 'cap'), +(1976, 30, 0, 263, '2019-01-17', 'pm2', 'libre', '2018-11-12', ''), +(1975, 30, 0, 263, '2019-01-17', 'pm1', 'libre', '2018-11-12', ''), +(1974, 30, 0, 263, '2019-01-17', 'am2', 'libre', '2018-11-12', ''), +(1973, 30, 0, 263, '2019-01-17', 'am1', 'libre', '2018-12-03', 'cap'), +(1972, 29, 0, 66, '2019-02-08', 'pm2', 'bloque', '2018-11-10', ''), +(1971, 29, 0, 66, '2019-02-08', 'pm1', 'bloque', '2018-11-10', ''), +(1970, 29, 0, 66, '2019-02-08', 'am2', 'bloque', '2018-11-10', ''), +(1969, 29, 0, 66, '2019-02-08', 'am1', 'bloque', '2018-11-10', ''), +(1968, 29, 0, 66, '2019-02-07', 'pm2', 'bloque', '2018-11-10', ''), +(1967, 29, 0, 66, '2019-02-07', 'pm1', 'bloque', '2018-11-10', ''), +(1966, 29, 0, 66, '2019-02-07', 'am2', 'bloque', '2018-11-10', ''), +(1965, 29, 0, 66, '2019-02-07', 'am1', 'bloque', '2018-11-10', ''), +(1964, 29, 0, 66, '2019-02-06', 'pm2', 'bloque', '2018-11-10', ''), +(1963, 29, 0, 66, '2019-02-06', 'pm1', 'bloque', '2018-11-10', ''), +(1962, 29, 0, 66, '2019-02-06', 'am2', 'bloque', '2018-11-10', ''), +(1961, 29, 0, 66, '2019-02-06', 'am1', 'bloque', '2018-11-10', ''), +(1960, 29, 0, 66, '2019-02-05', 'pm2', 'bloque', '2018-11-10', ''), +(1959, 29, 0, 66, '2019-02-05', 'pm1', 'bloque', '2018-11-10', ''), +(1958, 29, 0, 66, '2019-02-05', 'am2', 'bloque', '2018-11-10', ''), +(1957, 29, 0, 66, '2019-02-05', 'am1', 'bloque', '2018-11-10', ''), +(1956, 29, 0, 66, '2019-02-04', 'pm2', 'bloque', '2018-11-10', ''), +(1955, 29, 0, 66, '2019-02-04', 'pm1', 'bloque', '2018-11-10', ''), +(1954, 29, 0, 66, '2019-02-04', 'am2', 'bloque', '2018-11-10', ''), +(1953, 29, 0, 66, '2019-02-04', 'am1', 'bloque', '2018-11-10', ''), +(1952, 29, 0, 66, '2019-02-01', 'pm2', 'bloque', '2018-11-10', ''), +(1951, 29, 0, 66, '2019-02-01', 'pm1', 'bloque', '2018-11-10', ''), +(1950, 29, 0, 66, '2019-02-01', 'am2', 'bloque', '2018-11-10', ''), +(1949, 29, 0, 66, '2019-02-01', 'am1', 'bloque', '2018-11-10', ''), +(1948, 29, 0, 66, '2019-01-31', 'pm2', 'bloque', '2018-11-10', ''), +(1947, 29, 0, 66, '2019-01-31', 'pm1', 'bloque', '2018-11-10', ''), +(1946, 29, 0, 66, '2019-01-31', 'am2', 'bloque', '2018-11-10', ''), +(1945, 29, 0, 66, '2019-01-31', 'am1', 'bloque', '2018-11-10', ''), +(1944, 29, 0, 66, '2019-01-30', 'pm2', 'bloque', '2018-11-10', ''), +(1943, 29, 0, 66, '2019-01-30', 'pm1', 'bloque', '2018-11-10', ''), +(1942, 29, 0, 66, '2019-01-30', 'am2', 'bloque', '2018-11-10', ''), +(1941, 29, 0, 66, '2019-01-30', 'am1', 'bloque', '2018-11-10', ''), +(1940, 29, 0, 66, '2019-01-29', 'pm2', 'bloque', '2018-11-10', ''), +(1939, 29, 0, 66, '2019-01-29', 'pm1', 'bloque', '2018-11-10', ''), +(1938, 29, 0, 66, '2019-01-29', 'am2', 'bloque', '2018-11-10', ''), +(1937, 29, 0, 66, '2019-01-29', 'am1', 'bloque', '2018-11-10', ''), +(1936, 29, 0, 66, '2019-01-28', 'pm2', 'bloque', '2018-11-10', ''), +(1935, 29, 0, 66, '2019-01-28', 'pm1', 'bloque', '2018-11-10', ''), +(1934, 29, 0, 66, '2019-01-28', 'am2', 'bloque', '2018-11-10', ''), +(1933, 29, 0, 66, '2019-01-28', 'am1', 'bloque', '2018-11-10', ''), +(1932, 29, 0, 66, '2019-01-25', 'pm2', 'bloque', '2018-11-10', ''), +(1931, 29, 0, 66, '2019-01-25', 'pm1', 'bloque', '2018-11-10', ''), +(1930, 29, 0, 66, '2019-01-25', 'am2', 'bloque', '2018-11-10', ''), +(1929, 29, 0, 66, '2019-01-25', 'am1', 'bloque', '2018-11-10', ''), +(1928, 29, 0, 66, '2019-01-24', 'pm2', 'bloque', '2018-11-10', ''), +(1927, 29, 0, 66, '2019-01-24', 'pm1', 'bloque', '2018-11-10', ''), +(1926, 29, 0, 66, '2019-01-24', 'am2', 'bloque', '2018-11-10', ''), +(1925, 29, 0, 66, '2019-01-24', 'am1', 'bloque', '2018-11-10', ''), +(1924, 29, 0, 66, '2019-01-23', 'pm2', 'bloque', '2018-11-10', ''), +(1923, 29, 0, 66, '2019-01-23', 'pm1', 'bloque', '2018-11-10', ''), +(1922, 29, 0, 66, '2019-01-23', 'am2', 'bloque', '2018-11-10', ''), +(1921, 29, 0, 66, '2019-01-23', 'am1', 'bloque', '2018-11-10', ''), +(1920, 29, 0, 66, '2019-01-22', 'pm2', 'bloque', '2018-11-10', ''), +(1919, 29, 0, 66, '2019-01-22', 'pm1', 'bloque', '2018-11-10', ''), +(1918, 29, 0, 66, '2019-01-22', 'am2', 'bloque', '2018-11-10', ''), +(1917, 29, 0, 66, '2019-01-22', 'am1', 'bloque', '2018-11-10', ''), +(1916, 29, 0, 66, '2019-01-21', 'pm2', 'bloque', '2018-11-10', ''), +(1915, 29, 0, 66, '2019-01-21', 'pm1', 'bloque', '2018-11-10', ''), +(1914, 29, 0, 66, '2019-01-21', 'am2', 'bloque', '2018-11-10', ''), +(1913, 29, 0, 66, '2019-01-21', 'am1', 'bloque', '2018-11-10', ''), +(1912, 29, 0, 66, '2019-01-18', 'pm2', 'bloque', '2018-11-10', ''), +(1911, 29, 0, 66, '2019-01-18', 'pm1', 'bloque', '2018-11-10', ''), +(1910, 29, 0, 66, '2019-01-18', 'am2', 'bloque', '2018-11-10', ''), +(1909, 29, 0, 66, '2019-01-18', 'am1', 'bloque', '2018-11-10', ''), +(1908, 29, 0, 66, '2019-01-17', 'pm2', 'libre', '2018-11-10', ''), +(1907, 29, 0, 66, '2019-01-17', 'pm1', 'libre', '2018-11-10', ''), +(1906, 29, 0, 66, '2019-01-17', 'am2', 'libre', '2018-11-10', ''), +(1905, 29, 0, 66, '2019-01-17', 'am1', 'libre', '2018-11-10', ''), +(1904, 28, 0, 41, '2019-02-08', 'pm2', 'bloque', '2018-11-09', ''), +(1903, 28, 0, 41, '2019-02-08', 'pm1', 'bloque', '2018-11-09', ''), +(1902, 28, 0, 41, '2019-02-08', 'am2', 'bloque', '2018-11-09', ''), +(1901, 28, 0, 41, '2019-02-08', 'am1', 'bloque', '2018-11-09', ''), +(1900, 28, 0, 41, '2019-02-07', 'pm2', 'bloque', '2018-11-09', ''), +(1899, 28, 322, 41, '2019-02-07', 'pm1', 'reserve', '2019-01-28', 'ref'), +(1898, 28, 0, 41, '2019-02-07', 'am2', 'bloque', '2018-11-09', ''), +(1897, 28, 0, 41, '2019-02-07', 'am1', 'bloque', '2018-11-09', ''), +(1896, 28, 0, 41, '2019-02-06', 'pm2', 'bloque', '2018-11-09', ''), +(1895, 28, 0, 41, '2019-02-06', 'pm1', 'bloque', '2018-11-09', ''), +(1894, 28, 0, 41, '2019-02-06', 'am2', 'bloque', '2018-11-09', ''), +(1893, 28, 0, 41, '2019-02-06', 'am1', 'bloque', '2018-11-09', ''), +(1892, 28, 0, 41, '2019-02-05', 'pm2', 'bloque', '2018-11-09', ''), +(1891, 28, 0, 41, '2019-02-05', 'pm1', 'bloque', '2018-11-09', ''), +(1890, 28, 0, 41, '2019-02-05', 'am2', 'bloque', '2018-11-09', ''), +(1889, 28, 0, 41, '2019-02-05', 'am1', 'bloque', '2018-11-09', ''), +(1888, 28, 0, 41, '2019-02-04', 'pm2', 'bloque', '2018-11-09', ''), +(1887, 28, 0, 41, '2019-02-04', 'pm1', 'bloque', '2018-11-09', ''), +(1886, 28, 0, 41, '2019-02-04', 'am2', 'bloque', '2018-11-09', ''), +(1885, 28, 316, 41, '2019-02-04', 'am1', 'reserve', '2019-01-22', 'ref'), +(1884, 28, 0, 41, '2019-02-01', 'pm2', 'bloque', '2018-11-09', ''), +(1883, 28, 0, 41, '2019-02-01', 'pm1', 'bloque', '2018-11-09', ''), +(1882, 28, 0, 41, '2019-02-01', 'am2', 'bloque', '2018-11-09', ''), +(1881, 28, 0, 41, '2019-02-01', 'am1', 'bloque', '2018-11-09', ''), +(1880, 28, 0, 41, '2019-01-31', 'pm2', 'bloque', '2018-11-09', ''), +(1879, 28, 0, 41, '2019-01-31', 'pm1', 'bloque', '2018-11-09', ''), +(1878, 28, 0, 41, '2019-01-31', 'am2', 'bloque', '2018-11-09', ''), +(1877, 28, 0, 41, '2019-01-31', 'am1', 'bloque', '2018-11-09', ''), +(1876, 28, 0, 41, '2019-01-30', 'pm2', 'bloque', '2018-11-09', ''), +(1875, 28, 0, 41, '2019-01-30', 'pm1', 'bloque', '2018-11-09', ''), +(1874, 28, 0, 41, '2019-01-30', 'am2', 'bloque', '2018-11-09', ''), +(1873, 28, 0, 41, '2019-01-30', 'am1', 'bloque', '2018-11-09', ''), +(1872, 28, 0, 41, '2019-01-29', 'pm2', 'bloque', '2018-11-09', ''), +(1871, 28, 0, 41, '2019-01-29', 'pm1', 'bloque', '2018-11-09', ''), +(1870, 28, 0, 41, '2019-01-29', 'am2', 'bloque', '2018-11-09', ''), +(1869, 28, 0, 41, '2019-01-29', 'am1', 'bloque', '2018-11-09', ''), +(1868, 28, 0, 41, '2019-01-28', 'pm2', 'bloque', '2018-11-09', ''), +(1867, 28, 0, 41, '2019-01-28', 'pm1', 'bloque', '2018-11-09', ''), +(1866, 28, 0, 41, '2019-01-28', 'am2', 'bloque', '2018-11-09', ''), +(1865, 28, 0, 41, '2019-01-28', 'am1', 'bloque', '2018-11-09', ''), +(1864, 28, 0, 41, '2019-01-25', 'pm2', 'bloque', '2018-11-09', ''), +(1863, 28, 0, 41, '2019-01-25', 'pm1', 'bloque', '2018-11-09', ''), +(1862, 28, 0, 41, '2019-01-25', 'am2', 'bloque', '2018-11-09', ''), +(1861, 28, 0, 41, '2019-01-25', 'am1', 'bloque', '2018-11-09', ''), +(1860, 28, 0, 41, '2019-01-24', 'pm2', 'bloque', '2018-11-09', ''), +(1859, 28, 0, 41, '2019-01-24', 'pm1', 'bloque', '2018-11-09', ''), +(1858, 28, 0, 41, '2019-01-24', 'am2', 'bloque', '2018-11-09', ''), +(1857, 28, 0, 41, '2019-01-24', 'am1', 'bloque', '2018-11-09', ''), +(1856, 28, 0, 41, '2019-01-23', 'pm2', 'bloque', '2018-11-09', ''), +(1855, 28, 0, 41, '2019-01-23', 'pm1', 'bloque', '2018-11-09', ''), +(1854, 28, 0, 41, '2019-01-23', 'am2', 'bloque', '2018-11-09', ''), +(1853, 28, 0, 41, '2019-01-23', 'am1', 'bloque', '2018-11-09', ''), +(1852, 28, 17, 41, '2019-01-22', 'pm2', 'reserve', '2018-11-27', 'ref'), +(1851, 28, 0, 41, '2019-01-22', 'pm1', 'bloque', '2018-11-09', ''), +(1850, 28, 0, 41, '2019-01-22', 'am2', 'bloque', '2018-11-09', ''), +(1849, 28, 0, 41, '2019-01-22', 'am1', 'bloque', '2018-11-09', ''), +(1848, 28, 0, 41, '2019-01-21', 'pm2', 'bloque', '2018-11-09', ''), +(1847, 28, 0, 41, '2019-01-21', 'pm1', 'bloque', '2018-11-09', ''), +(1846, 28, 0, 41, '2019-01-21', 'am2', 'bloque', '2018-11-09', ''), +(1845, 28, 0, 41, '2019-01-21', 'am1', 'bloque', '2018-11-09', ''), +(1844, 28, 0, 41, '2019-01-18', 'pm2', 'bloque', '2018-11-09', ''), +(1843, 28, 0, 41, '2019-01-18', 'pm1', 'bloque', '2018-11-09', ''), +(1842, 28, 0, 41, '2019-01-18', 'am2', 'bloque', '2018-11-09', ''), +(1841, 28, 0, 41, '2019-01-18', 'am1', 'libre', '2018-11-27', 'ref'), +(1840, 28, 211, 41, '2019-01-17', 'pm2', 'reserve', '2019-01-07', 'ref'), +(1839, 28, 13, 41, '2019-01-17', 'pm1', 'reserve', '2018-11-20', 'ref'), +(1838, 28, 86, 41, '2019-01-17', 'am2', 'reserve', '2018-12-14', 'ref'), +(1837, 28, 146, 41, '2019-01-17', 'am1', 'reserve', '2018-12-19', 'ref'), +(1836, 27, 0, 402, '2019-02-08', 'pm2', 'bloque', '2018-11-09', ''), +(1835, 27, 0, 402, '2019-02-08', 'pm1', 'bloque', '2018-11-09', ''), +(1834, 27, 0, 402, '2019-02-08', 'am2', 'bloque', '2018-11-09', ''), +(1833, 27, 0, 402, '2019-02-08', 'am1', 'bloque', '2018-11-09', ''), +(1832, 27, 0, 402, '2019-02-07', 'pm2', 'bloque', '2018-11-09', ''), +(1831, 27, 0, 402, '2019-02-07', 'pm1', 'bloque', '2018-11-09', ''), +(1830, 27, 0, 402, '2019-02-07', 'am2', 'bloque', '2018-11-09', ''), +(1829, 27, 0, 402, '2019-02-07', 'am1', 'bloque', '2018-11-09', ''), +(1828, 27, 0, 402, '2019-02-06', 'pm2', 'bloque', '2018-11-09', ''), +(1827, 27, 0, 402, '2019-02-06', 'pm1', 'bloque', '2018-11-09', ''), +(1826, 27, 0, 402, '2019-02-06', 'am2', 'bloque', '2018-11-09', ''), +(1825, 27, 0, 402, '2019-02-06', 'am1', 'bloque', '2018-11-09', ''), +(1824, 27, 0, 402, '2019-02-05', 'pm2', 'bloque', '2018-11-09', ''), +(1823, 27, 0, 402, '2019-02-05', 'pm1', 'bloque', '2018-11-09', ''), +(1822, 27, 0, 402, '2019-02-05', 'am2', 'bloque', '2018-11-09', ''), +(1821, 27, 0, 402, '2019-02-05', 'am1', 'bloque', '2018-11-09', ''), +(1820, 27, 0, 402, '2019-02-04', 'pm2', 'bloque', '2018-11-09', ''), +(1819, 27, 0, 402, '2019-02-04', 'pm1', 'bloque', '2018-11-09', ''), +(1818, 27, 0, 402, '2019-02-04', 'am2', 'bloque', '2018-11-09', ''), +(1817, 27, 0, 402, '2019-02-04', 'am1', 'bloque', '2018-11-09', ''), +(1816, 27, 0, 402, '2019-02-01', 'pm2', 'bloque', '2018-11-09', ''), +(1815, 27, 0, 402, '2019-02-01', 'pm1', 'bloque', '2018-11-09', ''), +(1814, 27, 0, 402, '2019-02-01', 'am2', 'bloque', '2018-11-09', ''), +(1813, 27, 0, 402, '2019-02-01', 'am1', 'bloque', '2018-11-09', ''), +(1812, 27, 0, 402, '2019-01-31', 'pm2', 'bloque', '2018-11-09', ''), +(1811, 27, 0, 402, '2019-01-31', 'pm1', 'bloque', '2018-11-09', ''), +(1810, 27, 0, 402, '2019-01-31', 'am2', 'bloque', '2018-11-09', ''), +(1809, 27, 0, 402, '2019-01-31', 'am1', 'bloque', '2018-11-09', ''), +(1808, 27, 0, 402, '2019-01-30', 'pm2', 'bloque', '2018-11-09', ''), +(1807, 27, 0, 402, '2019-01-30', 'pm1', 'bloque', '2018-11-09', ''), +(1806, 27, 0, 402, '2019-01-30', 'am2', 'bloque', '2018-11-09', ''), +(1805, 27, 0, 402, '2019-01-30', 'am1', 'bloque', '2018-11-09', ''), +(1804, 27, 0, 402, '2019-01-29', 'pm2', 'bloque', '2018-11-09', ''), +(1803, 27, 0, 402, '2019-01-29', 'pm1', 'bloque', '2018-11-09', ''), +(1802, 27, 0, 402, '2019-01-29', 'am2', 'bloque', '2018-11-09', ''), +(1801, 27, 0, 402, '2019-01-29', 'am1', 'bloque', '2018-11-09', ''), +(1800, 27, 0, 402, '2019-01-28', 'pm2', 'bloque', '2018-11-09', ''), +(1799, 27, 0, 402, '2019-01-28', 'pm1', 'bloque', '2018-11-09', ''), +(1798, 27, 0, 402, '2019-01-28', 'am2', 'bloque', '2018-11-09', ''), +(1797, 27, 0, 402, '2019-01-28', 'am1', 'bloque', '2018-11-09', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(1796, 27, 0, 402, '2019-01-25', 'pm2', 'bloque', '2018-11-09', ''), +(1795, 27, 0, 402, '2019-01-25', 'pm1', 'bloque', '2018-11-09', ''), +(1794, 27, 0, 402, '2019-01-25', 'am2', 'bloque', '2018-11-09', ''), +(1793, 27, 0, 402, '2019-01-25', 'am1', 'bloque', '2018-11-09', ''), +(1792, 27, 0, 402, '2019-01-24', 'pm2', 'libre', '2018-11-12', 'cap'), +(1791, 27, 0, 402, '2019-01-24', 'pm1', 'libre', '2018-11-12', 'cap'), +(1790, 27, 0, 402, '2019-01-24', 'am2', 'libre', '2018-11-12', 'cap'), +(1789, 27, 0, 402, '2019-01-24', 'am1', 'libre', '2018-11-12', 'cap'), +(1788, 27, 0, 402, '2019-01-23', 'pm2', 'bloque', '2018-11-09', ''), +(1787, 27, 0, 402, '2019-01-23', 'pm1', 'bloque', '2018-11-09', ''), +(1786, 27, 0, 402, '2019-01-23', 'am2', 'bloque', '2018-11-09', ''), +(1785, 27, 0, 402, '2019-01-23', 'am1', 'bloque', '2018-11-09', ''), +(1784, 27, 0, 402, '2019-01-22', 'pm2', 'bloque', '2018-11-09', ''), +(1783, 27, 0, 402, '2019-01-22', 'pm1', 'bloque', '2018-11-09', ''), +(1782, 27, 0, 402, '2019-01-22', 'am2', 'bloque', '2018-11-09', ''), +(1781, 27, 0, 402, '2019-01-22', 'am1', 'bloque', '2018-11-09', ''), +(1780, 27, 0, 402, '2019-01-21', 'pm2', 'bloque', '2018-11-09', ''), +(1779, 27, 0, 402, '2019-01-21', 'pm1', 'bloque', '2018-11-09', ''), +(1778, 27, 0, 402, '2019-01-21', 'am2', 'bloque', '2018-11-09', ''), +(1777, 27, 0, 402, '2019-01-21', 'am1', 'bloque', '2018-11-09', ''), +(1776, 27, 0, 402, '2019-01-18', 'pm2', 'bloque', '2018-11-09', ''), +(1775, 27, 0, 402, '2019-01-18', 'pm1', 'libre', '2018-11-12', 'ref'), +(1774, 27, 0, 402, '2019-01-18', 'am2', 'bloque', '2018-11-09', ''), +(1773, 27, 0, 402, '2019-01-18', 'am1', 'libre', '2018-11-09', 'ref'), +(1772, 27, 0, 402, '2019-01-17', 'pm2', 'libre', '2018-11-09', ''), +(1771, 27, 0, 402, '2019-01-17', 'pm1', 'libre', '2018-11-09', ''), +(1770, 27, 0, 402, '2019-01-17', 'am2', 'libre', '2018-11-09', ''), +(1769, 27, 11, 402, '2019-01-17', 'am1', 'reserve', '2018-11-09', 'cap'), +(1768, 26, 0, 74, '2019-02-08', 'pm2', 'bloque', '2018-11-08', ''), +(1767, 26, 0, 74, '2019-02-08', 'pm1', 'bloque', '2018-11-08', ''), +(1766, 26, 0, 74, '2019-02-08', 'am2', 'bloque', '2018-11-08', ''), +(1765, 26, 0, 74, '2019-02-08', 'am1', 'bloque', '2018-11-08', ''), +(1764, 26, 0, 74, '2019-02-07', 'pm2', 'bloque', '2018-11-08', ''), +(1763, 26, 0, 74, '2019-02-07', 'pm1', 'bloque', '2018-11-08', ''), +(1762, 26, 0, 74, '2019-02-07', 'am2', 'bloque', '2018-11-08', ''), +(1761, 26, 0, 74, '2019-02-07', 'am1', 'bloque', '2018-11-08', ''), +(1760, 26, 0, 74, '2019-02-06', 'pm2', 'bloque', '2018-11-08', ''), +(1759, 26, 0, 74, '2019-02-06', 'pm1', 'bloque', '2018-11-08', ''), +(1758, 26, 0, 74, '2019-02-06', 'am2', 'bloque', '2018-11-08', ''), +(1757, 26, 0, 74, '2019-02-06', 'am1', 'bloque', '2018-11-08', ''), +(1756, 26, 0, 74, '2019-02-05', 'pm2', 'bloque', '2018-11-08', ''), +(1755, 26, 0, 74, '2019-02-05', 'pm1', 'bloque', '2018-11-08', ''), +(1754, 26, 0, 74, '2019-02-05', 'am2', 'bloque', '2018-11-08', ''), +(1753, 26, 0, 74, '2019-02-05', 'am1', 'bloque', '2018-11-08', ''), +(1752, 26, 0, 74, '2019-02-04', 'pm2', 'bloque', '2018-11-08', ''), +(1751, 26, 0, 74, '2019-02-04', 'pm1', 'bloque', '2018-11-08', ''), +(1750, 26, 0, 74, '2019-02-04', 'am2', 'bloque', '2018-11-08', ''), +(1749, 26, 0, 74, '2019-02-04', 'am1', 'bloque', '2018-11-08', ''), +(1748, 26, 0, 74, '2019-02-01', 'pm2', 'bloque', '2018-11-08', ''), +(1747, 26, 0, 74, '2019-02-01', 'pm1', 'bloque', '2018-11-08', ''), +(1746, 26, 0, 74, '2019-02-01', 'am2', 'bloque', '2018-11-08', ''), +(1745, 26, 0, 74, '2019-02-01', 'am1', 'bloque', '2018-11-08', ''), +(1744, 26, 0, 74, '2019-01-31', 'pm2', 'bloque', '2018-11-08', ''), +(1743, 26, 0, 74, '2019-01-31', 'pm1', 'bloque', '2018-11-08', ''), +(1742, 26, 0, 74, '2019-01-31', 'am2', 'bloque', '2018-11-08', ''), +(1741, 26, 0, 74, '2019-01-31', 'am1', 'bloque', '2018-11-08', ''), +(1740, 26, 0, 74, '2019-01-30', 'pm2', 'bloque', '2018-11-08', ''), +(1739, 26, 0, 74, '2019-01-30', 'pm1', 'bloque', '2018-11-08', ''), +(1738, 26, 0, 74, '2019-01-30', 'am2', 'bloque', '2018-11-08', ''), +(1737, 26, 0, 74, '2019-01-30', 'am1', 'bloque', '2018-11-08', ''), +(1736, 26, 0, 74, '2019-01-29', 'pm2', 'bloque', '2018-11-08', ''), +(1735, 26, 0, 74, '2019-01-29', 'pm1', 'bloque', '2018-11-08', ''), +(1734, 26, 0, 74, '2019-01-29', 'am2', 'bloque', '2018-11-08', ''), +(1733, 26, 0, 74, '2019-01-29', 'am1', 'bloque', '2018-11-08', ''), +(1732, 26, 0, 74, '2019-01-28', 'pm2', 'bloque', '2018-11-08', ''), +(1731, 26, 0, 74, '2019-01-28', 'pm1', 'bloque', '2018-11-08', ''), +(1730, 26, 0, 74, '2019-01-28', 'am2', 'bloque', '2018-11-08', ''), +(1729, 26, 0, 74, '2019-01-28', 'am1', 'bloque', '2018-11-08', ''), +(1728, 26, 0, 74, '2019-01-25', 'pm2', 'bloque', '2018-11-08', ''), +(1727, 26, 0, 74, '2019-01-25', 'pm1', 'bloque', '2018-11-08', ''), +(1726, 26, 0, 74, '2019-01-25', 'am2', 'bloque', '2018-11-08', ''), +(1725, 26, 0, 74, '2019-01-25', 'am1', 'bloque', '2018-11-08', ''), +(1724, 26, 0, 74, '2019-01-24', 'pm2', 'bloque', '2018-11-08', ''), +(1723, 26, 0, 74, '2019-01-24', 'pm1', 'bloque', '2018-11-08', ''), +(1722, 26, 0, 74, '2019-01-24', 'am2', 'bloque', '2018-11-08', ''), +(1721, 26, 0, 74, '2019-01-24', 'am1', 'bloque', '2018-11-08', ''), +(1720, 26, 0, 74, '2019-01-23', 'pm2', 'bloque', '2018-11-08', ''), +(1719, 26, 0, 74, '2019-01-23', 'pm1', 'bloque', '2018-11-08', ''), +(1718, 26, 0, 74, '2019-01-23', 'am2', 'bloque', '2018-11-08', ''), +(1717, 26, 0, 74, '2019-01-23', 'am1', 'bloque', '2018-11-08', ''), +(1716, 26, 0, 74, '2019-01-22', 'pm2', 'bloque', '2018-11-08', ''), +(1715, 26, 0, 74, '2019-01-22', 'pm1', 'bloque', '2018-11-08', ''), +(1714, 26, 0, 74, '2019-01-22', 'am2', 'bloque', '2018-11-08', ''), +(1713, 26, 0, 74, '2019-01-22', 'am1', 'bloque', '2018-11-08', ''), +(1712, 26, 0, 74, '2019-01-21', 'pm2', 'bloque', '2018-11-08', ''), +(1711, 26, 0, 74, '2019-01-21', 'pm1', 'bloque', '2018-11-08', ''), +(1710, 26, 0, 74, '2019-01-21', 'am2', 'bloque', '2018-11-08', ''), +(1709, 26, 0, 74, '2019-01-21', 'am1', 'bloque', '2018-11-08', ''), +(1708, 26, 0, 74, '2019-01-18', 'pm2', 'bloque', '2018-11-08', ''), +(1707, 26, 0, 74, '2019-01-18', 'pm1', 'bloque', '2018-11-08', ''), +(1706, 26, 0, 74, '2019-01-18', 'am2', 'bloque', '2018-11-08', ''), +(1705, 26, 0, 74, '2019-01-18', 'am1', 'bloque', '2018-11-08', ''), +(1704, 26, 0, 74, '2019-01-17', 'pm2', 'bloque', '2018-11-23', 'ref'), +(1703, 26, 0, 74, '2019-01-17', 'pm1', 'bloque', '2018-11-23', 'ref'), +(1702, 26, 0, 74, '2019-01-17', 'am2', 'bloque', '2018-11-23', 'ref'), +(1701, 26, 0, 74, '2019-01-17', 'am1', 'bloque', '2018-11-23', 'ref'), +(9794, 145, 0, 72, '2019-01-17', 'am2', 'libre', '2018-12-03', ''), +(9793, 145, 0, 72, '2019-01-17', 'am1', 'libre', '2018-12-03', 'ref'), +(9795, 145, 33, 72, '2019-01-17', 'pm1', 'reserve', '2018-12-10', 'ref'), +(9796, 145, 0, 72, '2019-01-17', 'pm2', 'libre', '2018-12-03', ''), +(1633, 25, 231, 51, '2019-01-17', 'am1', 'reserve', '2019-01-09', 'ref'), +(1634, 25, 0, 51, '2019-01-17', 'am2', 'bloque', '2019-01-09', 'ref'), +(1635, 25, 0, 51, '2019-01-17', 'pm1', 'bloque', '2019-01-14', 'ref'), +(1636, 25, 0, 51, '2019-01-17', 'pm2', 'bloque', '2019-01-14', 'ref'), +(1637, 25, 0, 51, '2019-01-18', 'am1', 'bloque', '2019-01-09', 'ref'), +(1638, 25, 176, 51, '2019-01-18', 'am2', 'reserve', '2018-12-21', 'ref'), +(1639, 25, 0, 51, '2019-01-18', 'pm1', 'libre', '2018-11-20', 'ref'), +(1640, 25, 0, 51, '2019-01-18', 'pm2', 'libre', '2018-11-20', 'ref'), +(1641, 25, 282, 51, '2019-01-21', 'am1', 'reserve', '2019-01-15', 'ref'), +(1642, 25, 284, 51, '2019-01-21', 'am2', 'reserve', '2019-01-15', 'ref'), +(1643, 25, 285, 51, '2019-01-21', 'pm1', 'reserve', '2019-01-15', 'ref'), +(1644, 25, 286, 51, '2019-01-21', 'pm2', 'reserve', '2019-01-15', 'ref'), +(1645, 25, 287, 51, '2019-01-22', 'am1', 'reserve', '2019-01-15', 'ref'), +(1646, 25, 288, 51, '2019-01-22', 'am2', 'reserve', '2019-01-15', 'ref'), +(1647, 25, 289, 51, '2019-01-22', 'pm1', 'reserve', '2019-01-15', 'ref'), +(1648, 25, 290, 51, '2019-01-22', 'pm2', 'reserve', '2019-01-15', 'ref'), +(1649, 25, 0, 51, '2019-01-23', 'am1', 'libre', '2018-11-20', 'ref'), +(1650, 25, 0, 51, '2019-01-23', 'am2', 'libre', '2018-11-20', 'ref'), +(1651, 25, 0, 51, '2019-01-23', 'pm1', 'bloque', '2019-01-09', 'ref'), +(1652, 25, 0, 51, '2019-01-23', 'pm2', 'bloque', '2019-01-09', 'ref'), +(1653, 25, 0, 51, '2019-01-24', 'am1', 'bloque', '2018-11-07', ''), +(1654, 25, 0, 51, '2019-01-24', 'am2', 'bloque', '2018-11-07', ''), +(1655, 25, 0, 51, '2019-01-24', 'pm1', 'bloque', '2019-01-09', 'ref'), +(1656, 25, 0, 51, '2019-01-24', 'pm2', 'bloque', '2019-01-09', 'ref'), +(1657, 25, 0, 51, '2019-01-25', 'am1', 'libre', '2018-11-20', 'ref'), +(1658, 25, 0, 51, '2019-01-25', 'am2', 'libre', '2018-11-20', 'ref'), +(1659, 25, 0, 51, '2019-01-25', 'pm1', 'libre', '2018-11-20', 'ref'), +(1660, 25, 0, 51, '2019-01-25', 'pm2', 'bloque', '2019-01-09', 'ref'), +(1661, 25, 0, 51, '2019-01-28', 'am1', 'bloque', '2019-01-09', 'ref'), +(1662, 25, 0, 51, '2019-01-28', 'am2', 'bloque', '2019-01-09', 'ref'), +(1663, 25, 232, 51, '2019-01-28', 'pm1', 'reserve', '2019-01-09', 'ref'), +(1664, 25, 233, 51, '2019-01-28', 'pm2', 'reserve', '2019-01-09', 'ref'), +(1665, 25, 0, 51, '2019-01-29', 'am1', 'bloque', '2019-01-16', 'ref'), +(1666, 25, 0, 51, '2019-01-29', 'am2', 'bloque', '2019-01-31', 'ref'), +(1667, 25, 0, 51, '2019-01-29', 'pm1', 'bloque', '2019-01-16', 'ref'), +(1668, 25, 0, 51, '2019-01-29', 'pm2', 'libre', '2018-11-20', 'ref'), +(1669, 25, 0, 51, '2019-01-30', 'am1', 'libre', '2018-11-20', 'ref'), +(1670, 25, 0, 51, '2019-01-30', 'am2', 'libre', '2018-11-20', 'ref'), +(1671, 25, 0, 51, '2019-01-30', 'pm1', 'bloque', '2019-01-09', 'ref'), +(1672, 25, 0, 51, '2019-01-30', 'pm2', 'bloque', '2019-01-09', 'ref'), +(1673, 25, 234, 51, '2019-01-31', 'am1', 'reserve', '2019-01-09', 'ref'), +(1674, 25, 0, 51, '2019-01-31', 'am2', 'bloque', '2019-01-09', 'ref'), +(1675, 25, 177, 51, '2019-01-31', 'pm1', 'reserve', '2018-12-21', 'ref'), +(1676, 25, 0, 51, '2019-01-31', 'pm2', 'bloque', '2019-01-09', 'ref'), +(1677, 25, 0, 51, '2019-02-01', 'am1', 'libre', '2018-11-20', 'ref'), +(1678, 25, 0, 51, '2019-02-01', 'am2', 'bloque', '2019-01-31', 'ref'), +(1679, 25, 0, 51, '2019-02-01', 'pm1', 'libre', '2018-11-20', 'ref'), +(1680, 25, 0, 51, '2019-02-01', 'pm2', 'libre', '2018-11-20', 'ref'), +(1681, 25, 0, 51, '2019-02-04', 'am1', 'libre', '2018-11-20', 'ref'), +(1682, 25, 0, 51, '2019-02-04', 'am2', 'bloque', '2019-01-15', 'ref'), +(1683, 25, 279, 51, '2019-02-04', 'pm1', 'reserve', '2019-01-15', 'ref'), +(1684, 25, 280, 51, '2019-02-04', 'pm2', 'reserve', '2019-01-15', 'ref'), +(1685, 25, 0, 51, '2019-02-05', 'am1', 'libre', '2018-11-20', 'ref'), +(1686, 25, 325, 51, '2019-02-05', 'am2', 'reserve', '2019-01-31', 'ref'), +(1687, 25, 0, 51, '2019-02-05', 'pm1', 'libre', '2018-11-20', 'ref'), +(1688, 25, 0, 51, '2019-02-05', 'pm2', 'libre', '2018-11-20', 'ref'), +(1689, 25, 0, 51, '2019-02-06', 'am1', 'bloque', '2019-01-17', 'ref'), +(1690, 25, 0, 51, '2019-02-06', 'am2', 'bloque', '2019-01-17', 'ref'), +(1691, 25, 0, 51, '2019-02-06', 'pm1', 'libre', '2018-11-20', 'ref'), +(1692, 25, 0, 51, '2019-02-06', 'pm2', 'libre', '2018-11-20', 'ref'), +(1693, 25, 0, 51, '2019-02-07', 'am1', 'libre', '2018-11-20', 'ref'), +(1694, 25, 0, 51, '2019-02-07', 'am2', 'bloque', '2019-01-15', 'ref'), +(1695, 25, 270, 51, '2019-02-07', 'pm1', 'reserve', '2019-01-14', 'ref'), +(1696, 25, 0, 51, '2019-02-07', 'pm2', 'bloque', '2019-01-15', 'ref'), +(1697, 25, 0, 51, '2019-02-08', 'am1', 'libre', '2018-11-20', 'ref'), +(1698, 25, 326, 51, '2019-02-08', 'am2', 'reserve', '2019-01-31', 'ref'), +(1699, 25, 0, 51, '2019-02-08', 'pm1', 'libre', '2018-11-20', 'ref'), +(1700, 25, 0, 51, '2019-02-08', 'pm2', 'libre', '2018-11-20', 'ref'), +(2100, 31, 0, 22, '2019-02-06', 'pm2', 'bloque', '2018-11-12', ''), +(2101, 31, 0, 22, '2019-02-07', 'am1', 'bloque', '2018-11-12', ''), +(2102, 31, 0, 22, '2019-02-07', 'am2', 'bloque', '2018-11-12', ''), +(2103, 31, 0, 22, '2019-02-07', 'pm1', 'bloque', '2018-11-12', ''), +(2104, 31, 0, 22, '2019-02-07', 'pm2', 'bloque', '2018-11-12', ''), +(2105, 31, 0, 22, '2019-02-08', 'am1', 'bloque', '2018-11-12', ''), +(2106, 31, 0, 22, '2019-02-08', 'am2', 'bloque', '2018-11-12', ''), +(2107, 31, 0, 22, '2019-02-08', 'pm1', 'bloque', '2018-11-12', ''), +(2108, 31, 0, 22, '2019-02-08', 'pm2', 'bloque', '2018-11-12', ''), +(2109, 32, 0, 14, '2019-01-17', 'am1', 'libre', '2018-11-12', ''), +(2110, 32, 0, 14, '2019-01-17', 'am2', 'libre', '2018-11-12', ''), +(2111, 32, 32, 14, '2019-01-17', 'pm1', 'reserve', '2018-12-07', 'cap'), +(2112, 32, 0, 14, '2019-01-17', 'pm2', 'libre', '2018-11-12', ''), +(2113, 32, 0, 14, '2019-01-18', 'am1', 'libre', '2018-11-19', 'cap'), +(2114, 32, 0, 14, '2019-01-18', 'am2', 'libre', '2018-11-19', 'cap'), +(2115, 32, 0, 14, '2019-01-18', 'pm1', 'libre', '2018-11-19', 'cap'), +(2116, 32, 0, 14, '2019-01-18', 'pm2', 'bloque', '2018-11-12', ''), +(2117, 32, 0, 14, '2019-01-21', 'am1', 'bloque', '2018-11-12', ''), +(2118, 32, 0, 14, '2019-01-21', 'am2', 'bloque', '2018-11-12', ''), +(2119, 32, 0, 14, '2019-01-21', 'pm1', 'bloque', '2018-11-12', ''), +(2120, 32, 0, 14, '2019-01-21', 'pm2', 'bloque', '2018-11-12', ''), +(2121, 32, 0, 14, '2019-01-22', 'am1', 'bloque', '2018-11-12', ''), +(2122, 32, 0, 14, '2019-01-22', 'am2', 'libre', '2018-11-19', 'cap'), +(2123, 32, 0, 14, '2019-01-22', 'pm1', 'libre', '2018-11-19', 'cap'), +(2124, 32, 0, 14, '2019-01-22', 'pm2', 'bloque', '2018-11-12', ''), +(2125, 32, 0, 14, '2019-01-23', 'am1', 'bloque', '2018-11-12', ''), +(2126, 32, 0, 14, '2019-01-23', 'am2', 'bloque', '2018-11-12', ''), +(2127, 32, 0, 14, '2019-01-23', 'pm1', 'bloque', '2018-11-12', ''), +(2128, 32, 0, 14, '2019-01-23', 'pm2', 'bloque', '2018-11-12', ''), +(2129, 32, 0, 14, '2019-01-24', 'am1', 'bloque', '2018-11-12', ''), +(2130, 32, 0, 14, '2019-01-24', 'am2', 'bloque', '2018-11-12', ''), +(2131, 32, 0, 14, '2019-01-24', 'pm1', 'bloque', '2018-11-12', ''), +(2132, 32, 0, 14, '2019-01-24', 'pm2', 'bloque', '2018-11-12', ''), +(2133, 32, 0, 14, '2019-01-25', 'am1', 'bloque', '2018-11-12', ''), +(2134, 32, 0, 14, '2019-01-25', 'am2', 'bloque', '2018-11-12', ''), +(2135, 32, 0, 14, '2019-01-25', 'pm1', 'bloque', '2018-11-12', ''), +(2136, 32, 0, 14, '2019-01-25', 'pm2', 'bloque', '2018-11-12', ''), +(2137, 32, 0, 14, '2019-01-28', 'am1', 'bloque', '2018-11-12', ''), +(2138, 32, 0, 14, '2019-01-28', 'am2', 'bloque', '2018-11-12', ''), +(2139, 32, 0, 14, '2019-01-28', 'pm1', 'bloque', '2018-11-12', ''), +(2140, 32, 0, 14, '2019-01-28', 'pm2', 'bloque', '2018-11-12', ''), +(2141, 32, 0, 14, '2019-01-29', 'am1', 'bloque', '2018-11-12', ''), +(2142, 32, 0, 14, '2019-01-29', 'am2', 'libre', '2018-11-19', 'cap'), +(2143, 32, 0, 14, '2019-01-29', 'pm1', 'libre', '2018-11-19', 'cap'), +(2144, 32, 0, 14, '2019-01-29', 'pm2', 'bloque', '2018-11-12', ''), +(2145, 32, 0, 14, '2019-01-30', 'am1', 'bloque', '2018-11-12', ''), +(2146, 32, 0, 14, '2019-01-30', 'am2', 'bloque', '2018-11-12', ''), +(2147, 32, 0, 14, '2019-01-30', 'pm1', 'bloque', '2018-11-12', ''), +(2148, 32, 0, 14, '2019-01-30', 'pm2', 'bloque', '2018-11-12', ''), +(2149, 32, 0, 14, '2019-01-31', 'am1', 'bloque', '2018-11-12', ''), +(2150, 32, 0, 14, '2019-01-31', 'am2', 'bloque', '2018-11-12', ''), +(2151, 32, 0, 14, '2019-01-31', 'pm1', 'bloque', '2018-11-12', ''), +(2152, 32, 0, 14, '2019-01-31', 'pm2', 'bloque', '2018-11-12', ''), +(2153, 32, 0, 14, '2019-02-01', 'am1', 'bloque', '2018-11-12', ''), +(2154, 32, 0, 14, '2019-02-01', 'am2', 'bloque', '2018-11-12', ''), +(2155, 32, 0, 14, '2019-02-01', 'pm1', 'bloque', '2018-11-12', ''), +(2156, 32, 0, 14, '2019-02-01', 'pm2', 'bloque', '2018-11-12', ''), +(2157, 32, 0, 14, '2019-02-04', 'am1', 'bloque', '2018-11-12', ''), +(2158, 32, 0, 14, '2019-02-04', 'am2', 'bloque', '2018-11-12', ''), +(2159, 32, 0, 14, '2019-02-04', 'pm1', 'bloque', '2018-11-12', ''), +(2160, 32, 0, 14, '2019-02-04', 'pm2', 'bloque', '2018-11-12', ''), +(2161, 32, 0, 14, '2019-02-05', 'am1', 'bloque', '2018-11-12', ''), +(2162, 32, 0, 14, '2019-02-05', 'am2', 'libre', '2018-11-19', 'cap'), +(2163, 32, 0, 14, '2019-02-05', 'pm1', 'libre', '2018-11-19', 'cap'), +(2164, 32, 0, 14, '2019-02-05', 'pm2', 'bloque', '2018-11-12', ''), +(2165, 32, 0, 14, '2019-02-06', 'am1', 'bloque', '2018-11-12', ''), +(2166, 32, 0, 14, '2019-02-06', 'am2', 'bloque', '2018-11-12', ''), +(2167, 32, 0, 14, '2019-02-06', 'pm1', 'bloque', '2018-11-12', ''), +(2168, 32, 0, 14, '2019-02-06', 'pm2', 'bloque', '2018-11-12', ''), +(2169, 32, 0, 14, '2019-02-07', 'am1', 'bloque', '2018-11-12', ''), +(2170, 32, 0, 14, '2019-02-07', 'am2', 'bloque', '2018-11-12', ''), +(2171, 32, 0, 14, '2019-02-07', 'pm1', 'bloque', '2018-11-12', ''), +(2172, 32, 0, 14, '2019-02-07', 'pm2', 'bloque', '2018-11-12', ''), +(2173, 32, 0, 14, '2019-02-08', 'am1', 'bloque', '2018-11-12', ''), +(2174, 32, 0, 14, '2019-02-08', 'am2', 'bloque', '2018-11-12', ''), +(2175, 32, 0, 14, '2019-02-08', 'pm1', 'bloque', '2018-11-12', ''), +(2176, 32, 0, 14, '2019-02-08', 'pm2', 'bloque', '2018-11-12', ''), +(2177, 33, 0, 14, '2019-01-17', 'am1', 'libre', '2018-11-12', ''), +(2178, 33, 0, 14, '2019-01-17', 'am2', 'libre', '2018-11-12', ''), +(2179, 33, 0, 14, '2019-01-17', 'pm1', 'libre', '2018-11-12', ''), +(2180, 33, 0, 14, '2019-01-17', 'pm2', 'libre', '2018-11-12', ''), +(2181, 33, 0, 14, '2019-01-18', 'am1', 'bloque', '2018-11-12', ''), +(2182, 33, 0, 14, '2019-01-18', 'am2', 'bloque', '2018-11-12', ''), +(2183, 33, 0, 14, '2019-01-18', 'pm1', 'bloque', '2018-11-12', ''), +(2184, 33, 0, 14, '2019-01-18', 'pm2', 'bloque', '2018-11-12', ''), +(2185, 33, 0, 14, '2019-01-21', 'am1', 'bloque', '2018-11-12', ''), +(2186, 33, 0, 14, '2019-01-21', 'am2', 'bloque', '2018-11-12', ''), +(2187, 33, 0, 14, '2019-01-21', 'pm1', 'bloque', '2018-11-12', ''), +(2188, 33, 0, 14, '2019-01-21', 'pm2', 'bloque', '2018-11-12', ''), +(2189, 33, 0, 14, '2019-01-22', 'am1', 'bloque', '2018-11-12', ''), +(2190, 33, 0, 14, '2019-01-22', 'am2', 'bloque', '2018-11-12', ''), +(2191, 33, 0, 14, '2019-01-22', 'pm1', 'bloque', '2018-11-12', ''), +(2192, 33, 0, 14, '2019-01-22', 'pm2', 'bloque', '2018-11-12', ''), +(2193, 33, 0, 14, '2019-01-23', 'am1', 'bloque', '2018-11-12', ''), +(2194, 33, 0, 14, '2019-01-23', 'am2', 'bloque', '2018-11-12', ''), +(2195, 33, 0, 14, '2019-01-23', 'pm1', 'bloque', '2018-11-12', ''), +(2196, 33, 0, 14, '2019-01-23', 'pm2', 'bloque', '2018-11-12', ''), +(2197, 33, 0, 14, '2019-01-24', 'am1', 'bloque', '2018-11-12', ''), +(2198, 33, 0, 14, '2019-01-24', 'am2', 'bloque', '2018-11-12', ''), +(2199, 33, 0, 14, '2019-01-24', 'pm1', 'bloque', '2018-11-12', ''), +(2200, 33, 0, 14, '2019-01-24', 'pm2', 'bloque', '2018-11-12', ''), +(2201, 33, 0, 14, '2019-01-25', 'am1', 'bloque', '2018-11-12', ''), +(2202, 33, 0, 14, '2019-01-25', 'am2', 'bloque', '2018-11-12', ''), +(2203, 33, 0, 14, '2019-01-25', 'pm1', 'bloque', '2018-11-12', ''), +(2204, 33, 0, 14, '2019-01-25', 'pm2', 'bloque', '2018-11-12', ''), +(2205, 33, 0, 14, '2019-01-28', 'am1', 'bloque', '2018-11-12', ''), +(2206, 33, 0, 14, '2019-01-28', 'am2', 'bloque', '2018-11-12', ''), +(2207, 33, 0, 14, '2019-01-28', 'pm1', 'bloque', '2018-11-12', ''), +(2208, 33, 0, 14, '2019-01-28', 'pm2', 'bloque', '2018-11-12', ''), +(2209, 33, 0, 14, '2019-01-29', 'am1', 'bloque', '2018-11-12', ''), +(2210, 33, 0, 14, '2019-01-29', 'am2', 'bloque', '2018-11-12', ''), +(2211, 33, 0, 14, '2019-01-29', 'pm1', 'bloque', '2018-11-12', ''), +(2212, 33, 0, 14, '2019-01-29', 'pm2', 'bloque', '2018-11-12', ''), +(2213, 33, 0, 14, '2019-01-30', 'am1', 'bloque', '2018-11-12', ''), +(2214, 33, 0, 14, '2019-01-30', 'am2', 'bloque', '2018-11-12', ''), +(2215, 33, 0, 14, '2019-01-30', 'pm1', 'bloque', '2018-11-12', ''), +(2216, 33, 0, 14, '2019-01-30', 'pm2', 'bloque', '2018-11-12', ''), +(2217, 33, 0, 14, '2019-01-31', 'am1', 'bloque', '2018-11-12', ''), +(2218, 33, 0, 14, '2019-01-31', 'am2', 'bloque', '2018-11-12', ''), +(2219, 33, 0, 14, '2019-01-31', 'pm1', 'bloque', '2018-11-12', ''), +(2220, 33, 0, 14, '2019-01-31', 'pm2', 'bloque', '2018-11-12', ''), +(2221, 33, 0, 14, '2019-02-01', 'am1', 'bloque', '2018-11-12', ''), +(2222, 33, 0, 14, '2019-02-01', 'am2', 'bloque', '2018-11-12', ''), +(2223, 33, 0, 14, '2019-02-01', 'pm1', 'bloque', '2018-11-12', ''), +(2224, 33, 0, 14, '2019-02-01', 'pm2', 'bloque', '2018-11-12', ''), +(2225, 33, 0, 14, '2019-02-04', 'am1', 'bloque', '2018-11-12', ''), +(2226, 33, 0, 14, '2019-02-04', 'am2', 'bloque', '2018-11-12', ''), +(2227, 33, 0, 14, '2019-02-04', 'pm1', 'bloque', '2018-11-12', ''), +(2228, 33, 0, 14, '2019-02-04', 'pm2', 'bloque', '2018-11-12', ''), +(2229, 33, 0, 14, '2019-02-05', 'am1', 'bloque', '2018-11-12', ''), +(2230, 33, 0, 14, '2019-02-05', 'am2', 'bloque', '2018-11-12', ''), +(2231, 33, 0, 14, '2019-02-05', 'pm1', 'bloque', '2018-11-12', ''), +(2232, 33, 0, 14, '2019-02-05', 'pm2', 'bloque', '2018-11-12', ''), +(2233, 33, 0, 14, '2019-02-06', 'am1', 'bloque', '2018-11-12', ''), +(2234, 33, 0, 14, '2019-02-06', 'am2', 'bloque', '2018-11-12', ''), +(2235, 33, 0, 14, '2019-02-06', 'pm1', 'bloque', '2018-11-12', ''), +(2236, 33, 0, 14, '2019-02-06', 'pm2', 'bloque', '2018-11-12', ''), +(2237, 33, 0, 14, '2019-02-07', 'am1', 'bloque', '2018-11-12', ''), +(2238, 33, 0, 14, '2019-02-07', 'am2', 'bloque', '2018-11-12', ''), +(2239, 33, 0, 14, '2019-02-07', 'pm1', 'bloque', '2018-11-12', ''), +(2240, 33, 0, 14, '2019-02-07', 'pm2', 'bloque', '2018-11-12', ''), +(2241, 33, 0, 14, '2019-02-08', 'am1', 'bloque', '2018-11-12', ''), +(2242, 33, 0, 14, '2019-02-08', 'am2', 'bloque', '2018-11-12', ''), +(2243, 33, 0, 14, '2019-02-08', 'pm1', 'bloque', '2018-11-12', ''), +(2244, 33, 0, 14, '2019-02-08', 'pm2', 'bloque', '2018-11-12', ''), +(2245, 34, 0, 14, '2019-01-17', 'am1', 'libre', '2018-11-12', ''), +(2246, 34, 0, 14, '2019-01-17', 'am2', 'libre', '2018-11-12', ''), +(2247, 34, 0, 14, '2019-01-17', 'pm1', 'libre', '2018-11-12', ''), +(2248, 34, 0, 14, '2019-01-17', 'pm2', 'libre', '2018-11-12', ''), +(2249, 34, 0, 14, '2019-01-18', 'am1', 'bloque', '2018-11-12', ''), +(2250, 34, 0, 14, '2019-01-18', 'am2', 'bloque', '2018-11-12', ''), +(2251, 34, 0, 14, '2019-01-18', 'pm1', 'bloque', '2018-11-12', ''), +(2252, 34, 0, 14, '2019-01-18', 'pm2', 'bloque', '2018-11-12', ''), +(2253, 34, 0, 14, '2019-01-21', 'am1', 'bloque', '2018-11-12', ''), +(2254, 34, 0, 14, '2019-01-21', 'am2', 'bloque', '2018-11-12', ''), +(2255, 34, 0, 14, '2019-01-21', 'pm1', 'bloque', '2018-11-12', ''), +(2256, 34, 0, 14, '2019-01-21', 'pm2', 'bloque', '2018-11-12', ''), +(2257, 34, 0, 14, '2019-01-22', 'am1', 'bloque', '2018-11-12', ''), +(2258, 34, 0, 14, '2019-01-22', 'am2', 'bloque', '2018-11-12', ''), +(2259, 34, 0, 14, '2019-01-22', 'pm1', 'bloque', '2018-11-12', ''), +(2260, 34, 0, 14, '2019-01-22', 'pm2', 'bloque', '2018-11-12', ''), +(2261, 34, 0, 14, '2019-01-23', 'am1', 'bloque', '2018-11-12', ''), +(2262, 34, 0, 14, '2019-01-23', 'am2', 'bloque', '2018-11-12', ''), +(2263, 34, 0, 14, '2019-01-23', 'pm1', 'bloque', '2018-11-12', ''), +(2264, 34, 0, 14, '2019-01-23', 'pm2', 'bloque', '2018-11-12', ''), +(2265, 34, 0, 14, '2019-01-24', 'am1', 'bloque', '2018-11-12', ''), +(2266, 34, 0, 14, '2019-01-24', 'am2', 'bloque', '2018-11-12', ''), +(2267, 34, 0, 14, '2019-01-24', 'pm1', 'bloque', '2018-11-12', ''), +(2268, 34, 0, 14, '2019-01-24', 'pm2', 'bloque', '2018-11-12', ''), +(2269, 34, 0, 14, '2019-01-25', 'am1', 'bloque', '2018-11-12', ''), +(2270, 34, 0, 14, '2019-01-25', 'am2', 'bloque', '2018-11-12', ''), +(2271, 34, 0, 14, '2019-01-25', 'pm1', 'bloque', '2018-11-12', ''), +(2272, 34, 0, 14, '2019-01-25', 'pm2', 'bloque', '2018-11-12', ''), +(2273, 34, 0, 14, '2019-01-28', 'am1', 'bloque', '2018-11-12', ''), +(2274, 34, 0, 14, '2019-01-28', 'am2', 'bloque', '2018-11-12', ''), +(2275, 34, 0, 14, '2019-01-28', 'pm1', 'bloque', '2018-11-12', ''), +(2276, 34, 0, 14, '2019-01-28', 'pm2', 'bloque', '2018-11-12', ''), +(2277, 34, 0, 14, '2019-01-29', 'am1', 'bloque', '2018-11-12', ''), +(2278, 34, 0, 14, '2019-01-29', 'am2', 'bloque', '2018-11-12', ''), +(2279, 34, 0, 14, '2019-01-29', 'pm1', 'bloque', '2018-11-12', ''), +(2280, 34, 0, 14, '2019-01-29', 'pm2', 'bloque', '2018-11-12', ''), +(2281, 34, 0, 14, '2019-01-30', 'am1', 'bloque', '2018-11-12', ''), +(2282, 34, 0, 14, '2019-01-30', 'am2', 'bloque', '2018-11-12', ''), +(2283, 34, 0, 14, '2019-01-30', 'pm1', 'bloque', '2018-11-12', ''), +(2284, 34, 0, 14, '2019-01-30', 'pm2', 'bloque', '2018-11-12', ''), +(2285, 34, 0, 14, '2019-01-31', 'am1', 'bloque', '2018-11-12', ''), +(2286, 34, 0, 14, '2019-01-31', 'am2', 'bloque', '2018-11-12', ''), +(2287, 34, 0, 14, '2019-01-31', 'pm1', 'bloque', '2018-11-12', ''), +(2288, 34, 0, 14, '2019-01-31', 'pm2', 'bloque', '2018-11-12', ''), +(2289, 34, 0, 14, '2019-02-01', 'am1', 'bloque', '2018-11-12', ''), +(2290, 34, 0, 14, '2019-02-01', 'am2', 'bloque', '2018-11-12', ''), +(2291, 34, 0, 14, '2019-02-01', 'pm1', 'bloque', '2018-11-12', ''), +(2292, 34, 0, 14, '2019-02-01', 'pm2', 'bloque', '2018-11-12', ''), +(2293, 34, 0, 14, '2019-02-04', 'am1', 'bloque', '2018-11-12', ''), +(2294, 34, 0, 14, '2019-02-04', 'am2', 'bloque', '2018-11-12', ''), +(2295, 34, 0, 14, '2019-02-04', 'pm1', 'bloque', '2018-11-12', ''), +(2296, 34, 0, 14, '2019-02-04', 'pm2', 'bloque', '2018-11-12', ''), +(2297, 34, 0, 14, '2019-02-05', 'am1', 'bloque', '2018-11-12', ''), +(2298, 34, 0, 14, '2019-02-05', 'am2', 'bloque', '2018-11-12', ''), +(2299, 34, 0, 14, '2019-02-05', 'pm1', 'bloque', '2018-11-12', ''), +(2300, 34, 0, 14, '2019-02-05', 'pm2', 'bloque', '2018-11-12', ''), +(2301, 34, 0, 14, '2019-02-06', 'am1', 'bloque', '2018-11-12', ''), +(2302, 34, 0, 14, '2019-02-06', 'am2', 'bloque', '2018-11-12', ''), +(2303, 34, 0, 14, '2019-02-06', 'pm1', 'bloque', '2018-11-12', ''), +(2304, 34, 0, 14, '2019-02-06', 'pm2', 'bloque', '2018-11-12', ''), +(2305, 34, 0, 14, '2019-02-07', 'am1', 'bloque', '2018-11-12', ''), +(2306, 34, 0, 14, '2019-02-07', 'am2', 'bloque', '2018-11-12', ''), +(2307, 34, 0, 14, '2019-02-07', 'pm1', 'bloque', '2018-11-12', ''), +(2308, 34, 0, 14, '2019-02-07', 'pm2', 'bloque', '2018-11-12', ''), +(2309, 34, 0, 14, '2019-02-08', 'am1', 'bloque', '2018-11-12', ''), +(2310, 34, 0, 14, '2019-02-08', 'am2', 'bloque', '2018-11-12', ''), +(2311, 34, 0, 14, '2019-02-08', 'pm1', 'bloque', '2018-11-12', ''), +(2312, 34, 0, 14, '2019-02-08', 'pm2', 'bloque', '2018-11-12', ''), +(2313, 35, 0, 72, '2019-01-17', 'am1', 'libre', '2018-11-13', ''), +(2314, 35, 0, 72, '2019-01-17', 'am2', 'libre', '2018-11-13', ''), +(2315, 35, 0, 72, '2019-01-17', 'pm1', 'libre', '2018-11-13', ''), +(2316, 35, 0, 72, '2019-01-17', 'pm2', 'libre', '2018-11-13', ''), +(2317, 35, 0, 72, '2019-01-18', 'am1', 'bloque', '2018-11-13', ''), +(2318, 35, 0, 72, '2019-01-18', 'am2', 'bloque', '2018-11-13', ''), +(2319, 35, 0, 72, '2019-01-18', 'pm1', 'bloque', '2018-11-13', ''), +(2320, 35, 0, 72, '2019-01-18', 'pm2', 'bloque', '2018-11-13', ''), +(2321, 35, 0, 72, '2019-01-21', 'am1', 'bloque', '2018-11-13', ''), +(2322, 35, 0, 72, '2019-01-21', 'am2', 'bloque', '2018-11-13', ''), +(2323, 35, 0, 72, '2019-01-21', 'pm1', 'bloque', '2018-11-13', ''), +(2324, 35, 0, 72, '2019-01-21', 'pm2', 'bloque', '2018-11-13', ''), +(2325, 35, 0, 72, '2019-01-22', 'am1', 'bloque', '2018-11-13', ''), +(2326, 35, 0, 72, '2019-01-22', 'am2', 'bloque', '2018-11-13', ''), +(2327, 35, 0, 72, '2019-01-22', 'pm1', 'bloque', '2018-11-13', ''), +(2328, 35, 0, 72, '2019-01-22', 'pm2', 'bloque', '2018-11-13', ''), +(2329, 35, 0, 72, '2019-01-23', 'am1', 'bloque', '2018-11-13', ''), +(2330, 35, 0, 72, '2019-01-23', 'am2', 'bloque', '2018-11-13', ''), +(2331, 35, 0, 72, '2019-01-23', 'pm1', 'bloque', '2018-11-13', ''), +(2332, 35, 0, 72, '2019-01-23', 'pm2', 'bloque', '2018-11-13', ''), +(2333, 35, 0, 72, '2019-01-24', 'am1', 'bloque', '2018-11-13', ''), +(2334, 35, 0, 72, '2019-01-24', 'am2', 'bloque', '2018-11-13', ''), +(2335, 35, 0, 72, '2019-01-24', 'pm1', 'bloque', '2018-11-13', ''), +(2336, 35, 0, 72, '2019-01-24', 'pm2', 'bloque', '2018-11-13', ''), +(2337, 35, 0, 72, '2019-01-25', 'am1', 'bloque', '2018-11-13', ''), +(2338, 35, 0, 72, '2019-01-25', 'am2', 'bloque', '2018-11-13', ''), +(2339, 35, 0, 72, '2019-01-25', 'pm1', 'bloque', '2018-11-13', ''), +(2340, 35, 0, 72, '2019-01-25', 'pm2', 'bloque', '2018-11-13', ''), +(2341, 35, 0, 72, '2019-01-28', 'am1', 'bloque', '2018-11-13', ''), +(2342, 35, 0, 72, '2019-01-28', 'am2', 'bloque', '2018-11-13', ''), +(2343, 35, 0, 72, '2019-01-28', 'pm1', 'bloque', '2018-11-13', ''), +(2344, 35, 0, 72, '2019-01-28', 'pm2', 'bloque', '2018-11-13', ''), +(2345, 35, 0, 72, '2019-01-29', 'am1', 'bloque', '2018-11-13', ''), +(2346, 35, 0, 72, '2019-01-29', 'am2', 'bloque', '2018-11-13', ''), +(2347, 35, 0, 72, '2019-01-29', 'pm1', 'bloque', '2018-11-13', ''), +(2348, 35, 0, 72, '2019-01-29', 'pm2', 'bloque', '2018-11-13', ''), +(2349, 35, 0, 72, '2019-01-30', 'am1', 'bloque', '2018-11-13', ''), +(2350, 35, 0, 72, '2019-01-30', 'am2', 'bloque', '2018-11-13', ''), +(2351, 35, 0, 72, '2019-01-30', 'pm1', 'bloque', '2018-11-13', ''), +(2352, 35, 0, 72, '2019-01-30', 'pm2', 'bloque', '2018-11-13', ''), +(2353, 35, 0, 72, '2019-01-31', 'am1', 'bloque', '2018-11-13', ''), +(2354, 35, 0, 72, '2019-01-31', 'am2', 'bloque', '2018-11-13', ''), +(2355, 35, 0, 72, '2019-01-31', 'pm1', 'bloque', '2018-11-13', ''), +(2356, 35, 0, 72, '2019-01-31', 'pm2', 'bloque', '2018-11-13', ''), +(2357, 35, 0, 72, '2019-02-01', 'am1', 'bloque', '2018-11-13', ''), +(2358, 35, 0, 72, '2019-02-01', 'am2', 'bloque', '2018-11-13', ''), +(2359, 35, 0, 72, '2019-02-01', 'pm1', 'bloque', '2018-11-13', ''), +(2360, 35, 0, 72, '2019-02-01', 'pm2', 'bloque', '2018-11-13', ''), +(2361, 35, 0, 72, '2019-02-04', 'am1', 'bloque', '2018-11-13', ''), +(2362, 35, 0, 72, '2019-02-04', 'am2', 'bloque', '2018-11-13', ''), +(2363, 35, 0, 72, '2019-02-04', 'pm1', 'bloque', '2018-11-13', ''), +(2364, 35, 0, 72, '2019-02-04', 'pm2', 'bloque', '2018-11-13', ''), +(2365, 35, 0, 72, '2019-02-05', 'am1', 'bloque', '2018-11-13', ''), +(2366, 35, 0, 72, '2019-02-05', 'am2', 'bloque', '2018-11-13', ''), +(2367, 35, 0, 72, '2019-02-05', 'pm1', 'bloque', '2018-11-13', ''), +(2368, 35, 0, 72, '2019-02-05', 'pm2', 'bloque', '2018-11-13', ''), +(2369, 35, 0, 72, '2019-02-06', 'am1', 'bloque', '2018-11-13', ''), +(2370, 35, 0, 72, '2019-02-06', 'am2', 'bloque', '2018-11-13', ''), +(2371, 35, 0, 72, '2019-02-06', 'pm1', 'bloque', '2018-11-13', ''), +(2372, 35, 0, 72, '2019-02-06', 'pm2', 'bloque', '2018-11-13', ''), +(2373, 35, 0, 72, '2019-02-07', 'am1', 'bloque', '2018-11-13', ''), +(2374, 35, 0, 72, '2019-02-07', 'am2', 'bloque', '2018-11-13', ''), +(2375, 35, 0, 72, '2019-02-07', 'pm1', 'bloque', '2018-11-13', ''), +(2376, 35, 0, 72, '2019-02-07', 'pm2', 'bloque', '2018-11-13', ''), +(2377, 35, 0, 72, '2019-02-08', 'am1', 'bloque', '2018-11-13', ''), +(2378, 35, 0, 72, '2019-02-08', 'am2', 'bloque', '2018-11-13', ''), +(2379, 35, 0, 72, '2019-02-08', 'pm1', 'bloque', '2018-11-13', ''), +(2380, 35, 0, 72, '2019-02-08', 'pm2', 'bloque', '2018-11-13', ''), +(2381, 36, 129, 54, '2019-01-17', 'am1', 'reserve', '2018-12-19', 'cap'), +(2382, 36, 0, 54, '2019-01-17', 'am2', 'bloque', '2018-12-19', 'cap'), +(2383, 36, 130, 54, '2019-01-17', 'pm1', 'reserve', '2018-12-19', 'cap'), +(2384, 36, 0, 54, '2019-01-17', 'pm2', 'bloque', '2018-12-19', 'cap'), +(2385, 36, 0, 54, '2019-01-18', 'am1', 'bloque', '2018-11-13', ''), +(2386, 36, 0, 54, '2019-01-18', 'am2', 'bloque', '2018-11-13', ''), +(2387, 36, 0, 54, '2019-01-18', 'pm1', 'bloque', '2018-11-13', ''), +(2388, 36, 0, 54, '2019-01-18', 'pm2', 'bloque', '2018-11-13', ''), +(2389, 36, 0, 54, '2019-01-21', 'am1', 'bloque', '2018-11-13', ''), +(2390, 36, 0, 54, '2019-01-21', 'am2', 'bloque', '2018-11-13', ''), +(2391, 36, 0, 54, '2019-01-21', 'pm1', 'bloque', '2018-11-13', ''), +(2392, 36, 0, 54, '2019-01-21', 'pm2', 'bloque', '2018-11-13', ''), +(2393, 36, 0, 54, '2019-01-22', 'am1', 'bloque', '2018-11-13', ''), +(2394, 36, 0, 54, '2019-01-22', 'am2', 'bloque', '2018-11-13', ''), +(2395, 36, 0, 54, '2019-01-22', 'pm1', 'bloque', '2018-11-13', ''), +(2396, 36, 0, 54, '2019-01-22', 'pm2', 'bloque', '2018-11-13', ''), +(2397, 36, 0, 54, '2019-01-23', 'am1', 'bloque', '2018-11-13', ''), +(2398, 36, 0, 54, '2019-01-23', 'am2', 'bloque', '2018-11-13', ''), +(2399, 36, 0, 54, '2019-01-23', 'pm1', 'bloque', '2018-11-13', ''), +(2400, 36, 0, 54, '2019-01-23', 'pm2', 'bloque', '2018-11-13', ''), +(2401, 36, 0, 54, '2019-01-24', 'am1', 'bloque', '2018-11-13', ''), +(2402, 36, 0, 54, '2019-01-24', 'am2', 'bloque', '2018-11-13', ''), +(2403, 36, 0, 54, '2019-01-24', 'pm1', 'bloque', '2018-11-13', ''), +(2404, 36, 0, 54, '2019-01-24', 'pm2', 'bloque', '2018-11-13', ''), +(2405, 36, 0, 54, '2019-01-25', 'am1', 'bloque', '2018-11-13', ''), +(2406, 36, 0, 54, '2019-01-25', 'am2', 'bloque', '2018-11-13', ''), +(2407, 36, 0, 54, '2019-01-25', 'pm1', 'bloque', '2018-11-13', ''), +(2408, 36, 0, 54, '2019-01-25', 'pm2', 'bloque', '2018-11-13', ''), +(2409, 36, 0, 54, '2019-01-28', 'am1', 'bloque', '2018-11-13', ''), +(2410, 36, 0, 54, '2019-01-28', 'am2', 'bloque', '2018-11-13', ''), +(2411, 36, 0, 54, '2019-01-28', 'pm1', 'bloque', '2018-11-13', ''), +(2412, 36, 0, 54, '2019-01-28', 'pm2', 'bloque', '2018-11-13', ''), +(2413, 36, 0, 54, '2019-01-29', 'am1', 'bloque', '2018-11-13', ''), +(2414, 36, 0, 54, '2019-01-29', 'am2', 'bloque', '2018-11-13', ''), +(2415, 36, 0, 54, '2019-01-29', 'pm1', 'bloque', '2018-11-13', ''), +(2416, 36, 0, 54, '2019-01-29', 'pm2', 'bloque', '2018-11-13', ''), +(2417, 36, 0, 54, '2019-01-30', 'am1', 'bloque', '2018-11-13', ''), +(2418, 36, 0, 54, '2019-01-30', 'am2', 'bloque', '2018-11-13', ''), +(2419, 36, 0, 54, '2019-01-30', 'pm1', 'bloque', '2018-11-13', ''), +(2420, 36, 0, 54, '2019-01-30', 'pm2', 'bloque', '2018-11-13', ''), +(2421, 36, 0, 54, '2019-01-31', 'am1', 'bloque', '2018-11-13', ''), +(2422, 36, 0, 54, '2019-01-31', 'am2', 'bloque', '2018-11-13', ''), +(2423, 36, 0, 54, '2019-01-31', 'pm1', 'bloque', '2018-11-13', ''), +(2424, 36, 0, 54, '2019-01-31', 'pm2', 'bloque', '2018-11-13', ''), +(2425, 36, 0, 54, '2019-02-01', 'am1', 'bloque', '2018-11-13', ''), +(2426, 36, 0, 54, '2019-02-01', 'am2', 'bloque', '2018-11-13', ''), +(2427, 36, 0, 54, '2019-02-01', 'pm1', 'bloque', '2018-11-13', ''), +(2428, 36, 0, 54, '2019-02-01', 'pm2', 'bloque', '2018-11-13', ''), +(2429, 36, 0, 54, '2019-02-04', 'am1', 'bloque', '2018-11-13', ''), +(2430, 36, 0, 54, '2019-02-04', 'am2', 'bloque', '2018-11-13', ''), +(2431, 36, 0, 54, '2019-02-04', 'pm1', 'bloque', '2018-11-13', ''), +(2432, 36, 0, 54, '2019-02-04', 'pm2', 'bloque', '2018-11-13', ''), +(2433, 36, 0, 54, '2019-02-05', 'am1', 'bloque', '2018-11-13', ''), +(2434, 36, 0, 54, '2019-02-05', 'am2', 'bloque', '2018-11-13', ''), +(2435, 36, 0, 54, '2019-02-05', 'pm1', 'bloque', '2018-11-13', ''), +(2436, 36, 0, 54, '2019-02-05', 'pm2', 'bloque', '2018-11-13', ''), +(2437, 36, 0, 54, '2019-02-06', 'am1', 'bloque', '2018-11-13', ''), +(2438, 36, 0, 54, '2019-02-06', 'am2', 'bloque', '2018-11-13', ''), +(2439, 36, 0, 54, '2019-02-06', 'pm1', 'bloque', '2018-11-13', ''), +(2440, 36, 0, 54, '2019-02-06', 'pm2', 'bloque', '2018-11-13', ''), +(2441, 36, 0, 54, '2019-02-07', 'am1', 'bloque', '2018-11-13', ''), +(2442, 36, 0, 54, '2019-02-07', 'am2', 'bloque', '2018-11-13', ''), +(2443, 36, 0, 54, '2019-02-07', 'pm1', 'bloque', '2018-11-13', ''), +(2444, 36, 0, 54, '2019-02-07', 'pm2', 'bloque', '2018-11-13', ''), +(2445, 36, 0, 54, '2019-02-08', 'am1', 'bloque', '2018-11-13', ''), +(2446, 36, 0, 54, '2019-02-08', 'am2', 'bloque', '2018-11-13', ''), +(2447, 36, 0, 54, '2019-02-08', 'pm1', 'bloque', '2018-11-13', ''), +(2448, 36, 0, 54, '2019-02-08', 'pm2', 'bloque', '2018-11-13', ''), +(2449, 37, 243, 208, '2019-01-17', 'am1', 'reserve', '2019-01-10', 'ref'), +(2450, 37, 0, 208, '2019-01-17', 'am2', 'libre', '2018-11-15', ''), +(2451, 37, 244, 208, '2019-01-17', 'pm1', 'reserve', '2019-01-10', 'ref'), +(2452, 37, 245, 208, '2019-01-17', 'pm2', 'reserve', '2019-01-10', 'ref'), +(2453, 37, 0, 208, '2019-01-18', 'am1', 'bloque', '2018-11-15', ''), +(2454, 37, 0, 208, '2019-01-18', 'am2', 'bloque', '2018-11-15', ''), +(2455, 37, 0, 208, '2019-01-18', 'pm1', 'bloque', '2018-11-15', ''), +(2456, 37, 0, 208, '2019-01-18', 'pm2', 'bloque', '2018-11-15', ''), +(2457, 37, 0, 208, '2019-01-21', 'am1', 'bloque', '2018-11-15', ''), +(2458, 37, 0, 208, '2019-01-21', 'am2', 'bloque', '2018-11-15', ''), +(2459, 37, 0, 208, '2019-01-21', 'pm1', 'bloque', '2018-11-15', ''), +(2460, 37, 0, 208, '2019-01-21', 'pm2', 'bloque', '2018-11-15', ''), +(2461, 37, 0, 208, '2019-01-22', 'am1', 'bloque', '2018-11-15', ''), +(2462, 37, 0, 208, '2019-01-22', 'am2', 'bloque', '2018-11-15', ''), +(2463, 37, 0, 208, '2019-01-22', 'pm1', 'bloque', '2018-11-15', ''), +(2464, 37, 0, 208, '2019-01-22', 'pm2', 'bloque', '2018-11-15', ''), +(2465, 37, 0, 208, '2019-01-23', 'am1', 'bloque', '2018-11-15', ''), +(2466, 37, 0, 208, '2019-01-23', 'am2', 'bloque', '2018-11-15', ''), +(2467, 37, 0, 208, '2019-01-23', 'pm1', 'bloque', '2018-11-15', ''), +(2468, 37, 0, 208, '2019-01-23', 'pm2', 'bloque', '2018-11-15', ''), +(2469, 37, 0, 208, '2019-01-24', 'am1', 'bloque', '2018-11-15', ''), +(2470, 37, 0, 208, '2019-01-24', 'am2', 'bloque', '2018-11-15', ''), +(2471, 37, 0, 208, '2019-01-24', 'pm1', 'bloque', '2018-11-15', ''), +(2472, 37, 0, 208, '2019-01-24', 'pm2', 'bloque', '2018-11-15', ''), +(2473, 37, 0, 208, '2019-01-25', 'am1', 'bloque', '2018-11-15', ''), +(2474, 37, 0, 208, '2019-01-25', 'am2', 'bloque', '2018-11-15', ''), +(2475, 37, 0, 208, '2019-01-25', 'pm1', 'bloque', '2018-11-15', ''), +(2476, 37, 0, 208, '2019-01-25', 'pm2', 'bloque', '2018-11-15', ''), +(2477, 37, 0, 208, '2019-01-28', 'am1', 'bloque', '2018-11-15', ''), +(2478, 37, 0, 208, '2019-01-28', 'am2', 'bloque', '2018-11-15', ''), +(2479, 37, 0, 208, '2019-01-28', 'pm1', 'bloque', '2018-11-15', ''), +(2480, 37, 0, 208, '2019-01-28', 'pm2', 'bloque', '2018-11-15', ''), +(2481, 37, 0, 208, '2019-01-29', 'am1', 'bloque', '2018-11-15', ''), +(2482, 37, 0, 208, '2019-01-29', 'am2', 'bloque', '2018-11-15', ''), +(2483, 37, 0, 208, '2019-01-29', 'pm1', 'bloque', '2018-11-15', ''), +(2484, 37, 0, 208, '2019-01-29', 'pm2', 'bloque', '2018-11-15', ''), +(2485, 37, 0, 208, '2019-01-30', 'am1', 'bloque', '2018-11-15', ''), +(2486, 37, 0, 208, '2019-01-30', 'am2', 'bloque', '2018-11-15', ''), +(2487, 37, 0, 208, '2019-01-30', 'pm1', 'bloque', '2018-11-15', ''), +(2488, 37, 0, 208, '2019-01-30', 'pm2', 'bloque', '2018-11-15', ''), +(2489, 37, 0, 208, '2019-01-31', 'am1', 'bloque', '2018-11-15', ''), +(2490, 37, 0, 208, '2019-01-31', 'am2', 'bloque', '2018-11-15', ''), +(2491, 37, 0, 208, '2019-01-31', 'pm1', 'bloque', '2018-11-15', ''), +(2492, 37, 0, 208, '2019-01-31', 'pm2', 'bloque', '2018-11-15', ''), +(2493, 37, 0, 208, '2019-02-01', 'am1', 'bloque', '2018-11-15', ''), +(2494, 37, 0, 208, '2019-02-01', 'am2', 'bloque', '2018-11-15', ''), +(2495, 37, 0, 208, '2019-02-01', 'pm1', 'bloque', '2018-11-15', ''), +(2496, 37, 0, 208, '2019-02-01', 'pm2', 'bloque', '2018-11-15', ''), +(2497, 37, 0, 208, '2019-02-04', 'am1', 'bloque', '2018-11-15', ''), +(2498, 37, 0, 208, '2019-02-04', 'am2', 'bloque', '2018-11-15', ''), +(2499, 37, 0, 208, '2019-02-04', 'pm1', 'bloque', '2018-11-15', ''), +(2500, 37, 0, 208, '2019-02-04', 'pm2', 'bloque', '2018-11-15', ''), +(2501, 37, 0, 208, '2019-02-05', 'am1', 'bloque', '2018-11-15', ''), +(2502, 37, 0, 208, '2019-02-05', 'am2', 'bloque', '2018-11-15', ''), +(2503, 37, 0, 208, '2019-02-05', 'pm1', 'bloque', '2018-11-15', ''), +(2504, 37, 0, 208, '2019-02-05', 'pm2', 'bloque', '2018-11-15', ''), +(2505, 37, 0, 208, '2019-02-06', 'am1', 'bloque', '2018-11-15', ''), +(2506, 37, 0, 208, '2019-02-06', 'am2', 'bloque', '2018-11-15', ''), +(2507, 37, 0, 208, '2019-02-06', 'pm1', 'bloque', '2018-11-15', ''), +(2508, 37, 0, 208, '2019-02-06', 'pm2', 'bloque', '2018-11-15', ''), +(2509, 37, 0, 208, '2019-02-07', 'am1', 'bloque', '2018-11-15', ''), +(2510, 37, 0, 208, '2019-02-07', 'am2', 'bloque', '2018-11-15', ''), +(2511, 37, 0, 208, '2019-02-07', 'pm1', 'bloque', '2018-11-15', ''), +(2512, 37, 0, 208, '2019-02-07', 'pm2', 'bloque', '2018-11-15', ''), +(2513, 37, 0, 208, '2019-02-08', 'am1', 'bloque', '2018-11-15', ''), +(2514, 37, 0, 208, '2019-02-08', 'am2', 'bloque', '2018-11-15', ''), +(2515, 37, 0, 208, '2019-02-08', 'pm1', 'bloque', '2018-11-15', ''), +(2516, 37, 0, 208, '2019-02-08', 'pm2', 'bloque', '2018-11-15', ''), +(2517, 38, 0, 10, '2019-01-17', 'am1', 'libre', '2018-11-16', ''), +(2518, 38, 0, 10, '2019-01-17', 'am2', 'libre', '2018-11-16', ''), +(2519, 38, 0, 10, '2019-01-17', 'pm1', 'libre', '2018-11-16', ''), +(2520, 38, 0, 10, '2019-01-17', 'pm2', 'libre', '2018-11-16', ''), +(2521, 38, 0, 10, '2019-01-18', 'am1', 'bloque', '2018-11-16', ''), +(2522, 38, 0, 10, '2019-01-18', 'am2', 'libre', '2019-01-17', 'ref'), +(2523, 38, 0, 10, '2019-01-18', 'pm1', 'bloque', '2018-11-16', ''), +(2524, 38, 0, 10, '2019-01-18', 'pm2', 'bloque', '2018-11-16', ''), +(2525, 38, 0, 10, '2019-01-21', 'am1', 'bloque', '2018-11-16', ''), +(2526, 38, 0, 10, '2019-01-21', 'am2', 'bloque', '2018-11-16', ''), +(2527, 38, 0, 10, '2019-01-21', 'pm1', 'bloque', '2018-11-16', ''), +(2528, 38, 0, 10, '2019-01-21', 'pm2', 'bloque', '2018-11-16', ''), +(2529, 38, 0, 10, '2019-01-22', 'am1', 'bloque', '2018-11-16', ''), +(2530, 38, 0, 10, '2019-01-22', 'am2', 'bloque', '2018-11-16', ''), +(2531, 38, 0, 10, '2019-01-22', 'pm1', 'bloque', '2018-11-16', ''), +(2532, 38, 0, 10, '2019-01-22', 'pm2', 'bloque', '2018-11-16', ''), +(2533, 38, 0, 10, '2019-01-23', 'am1', 'bloque', '2018-11-16', ''), +(2534, 38, 0, 10, '2019-01-23', 'am2', 'bloque', '2018-11-16', ''), +(2535, 38, 0, 10, '2019-01-23', 'pm1', 'bloque', '2018-11-16', ''), +(2536, 38, 0, 10, '2019-01-23', 'pm2', 'bloque', '2018-11-16', ''), +(2537, 38, 0, 10, '2019-01-24', 'am1', 'bloque', '2018-11-16', ''), +(2538, 38, 0, 10, '2019-01-24', 'am2', 'bloque', '2018-11-16', ''), +(2539, 38, 0, 10, '2019-01-24', 'pm1', 'bloque', '2018-11-16', ''), +(2540, 38, 0, 10, '2019-01-24', 'pm2', 'bloque', '2018-11-16', ''), +(2541, 38, 0, 10, '2019-01-25', 'am1', 'bloque', '2018-11-16', ''), +(2542, 38, 0, 10, '2019-01-25', 'am2', 'bloque', '2018-11-16', ''), +(2543, 38, 0, 10, '2019-01-25', 'pm1', 'bloque', '2018-11-16', ''), +(2544, 38, 0, 10, '2019-01-25', 'pm2', 'bloque', '2018-11-16', ''), +(2545, 38, 0, 10, '2019-01-28', 'am1', 'bloque', '2018-11-16', ''), +(2546, 38, 0, 10, '2019-01-28', 'am2', 'bloque', '2018-11-16', ''), +(2547, 38, 0, 10, '2019-01-28', 'pm1', 'bloque', '2018-11-16', ''), +(2548, 38, 0, 10, '2019-01-28', 'pm2', 'bloque', '2018-11-16', ''), +(2549, 38, 0, 10, '2019-01-29', 'am1', 'bloque', '2018-11-16', ''), +(2550, 38, 0, 10, '2019-01-29', 'am2', 'bloque', '2018-11-16', ''), +(2551, 38, 0, 10, '2019-01-29', 'pm1', 'bloque', '2018-11-16', ''), +(2552, 38, 0, 10, '2019-01-29', 'pm2', 'bloque', '2018-11-16', ''), +(2553, 38, 0, 10, '2019-01-30', 'am1', 'bloque', '2018-11-16', ''), +(2554, 38, 0, 10, '2019-01-30', 'am2', 'bloque', '2018-11-16', ''), +(2555, 38, 0, 10, '2019-01-30', 'pm1', 'bloque', '2018-11-16', ''), +(2556, 38, 0, 10, '2019-01-30', 'pm2', 'bloque', '2018-11-16', ''), +(2557, 38, 0, 10, '2019-01-31', 'am1', 'bloque', '2018-11-16', ''), +(2558, 38, 0, 10, '2019-01-31', 'am2', 'bloque', '2018-11-16', ''), +(2559, 38, 0, 10, '2019-01-31', 'pm1', 'bloque', '2018-11-16', ''), +(2560, 38, 0, 10, '2019-01-31', 'pm2', 'bloque', '2018-11-16', ''), +(2561, 38, 0, 10, '2019-02-01', 'am1', 'bloque', '2018-11-16', ''), +(2562, 38, 0, 10, '2019-02-01', 'am2', 'bloque', '2018-11-16', ''), +(2563, 38, 0, 10, '2019-02-01', 'pm1', 'bloque', '2018-11-16', ''), +(2564, 38, 0, 10, '2019-02-01', 'pm2', 'bloque', '2018-11-16', ''), +(2565, 38, 0, 10, '2019-02-04', 'am1', 'bloque', '2018-11-16', ''), +(2566, 38, 0, 10, '2019-02-04', 'am2', 'bloque', '2018-11-16', ''), +(2567, 38, 0, 10, '2019-02-04', 'pm1', 'bloque', '2018-11-16', ''), +(2568, 38, 0, 10, '2019-02-04', 'pm2', 'bloque', '2018-11-16', ''), +(2569, 38, 0, 10, '2019-02-05', 'am1', 'bloque', '2018-11-16', ''), +(2570, 38, 0, 10, '2019-02-05', 'am2', 'bloque', '2018-11-16', ''), +(2571, 38, 0, 10, '2019-02-05', 'pm1', 'bloque', '2018-11-16', ''), +(2572, 38, 0, 10, '2019-02-05', 'pm2', 'bloque', '2018-11-16', ''), +(2573, 38, 0, 10, '2019-02-06', 'am1', 'bloque', '2018-11-16', ''), +(2574, 38, 0, 10, '2019-02-06', 'am2', 'bloque', '2018-11-16', ''), +(2575, 38, 0, 10, '2019-02-06', 'pm1', 'bloque', '2018-11-16', ''), +(2576, 38, 0, 10, '2019-02-06', 'pm2', 'bloque', '2018-11-16', ''), +(2577, 38, 0, 10, '2019-02-07', 'am1', 'bloque', '2018-11-16', ''), +(2578, 38, 0, 10, '2019-02-07', 'am2', 'bloque', '2018-11-16', ''), +(2579, 38, 0, 10, '2019-02-07', 'pm1', 'bloque', '2018-11-16', ''), +(2580, 38, 0, 10, '2019-02-07', 'pm2', 'bloque', '2018-11-16', ''), +(2581, 38, 0, 10, '2019-02-08', 'am1', 'bloque', '2018-11-16', ''), +(2582, 38, 0, 10, '2019-02-08', 'am2', 'bloque', '2018-11-16', ''), +(2583, 38, 0, 10, '2019-02-08', 'pm1', 'bloque', '2018-11-16', ''), +(2584, 38, 0, 10, '2019-02-08', 'pm2', 'bloque', '2018-11-16', ''), +(2585, 39, 266, 110, '2019-01-17', 'am1', 'reserve', '2019-01-11', 'cap'), +(2586, 39, 0, 110, '2019-01-17', 'am2', 'libre', '2018-11-16', ''), +(2587, 39, 0, 110, '2019-01-17', 'pm1', 'libre', '2018-11-16', ''), +(2588, 39, 0, 110, '2019-01-17', 'pm2', 'libre', '2018-11-16', ''), +(2589, 39, 0, 110, '2019-01-18', 'am1', 'bloque', '2018-11-16', ''), +(2590, 39, 0, 110, '2019-01-18', 'am2', 'bloque', '2018-11-16', ''), +(2591, 39, 0, 110, '2019-01-18', 'pm1', 'bloque', '2018-11-16', ''), +(2592, 39, 0, 110, '2019-01-18', 'pm2', 'bloque', '2018-11-16', ''), +(2593, 39, 0, 110, '2019-01-21', 'am1', 'bloque', '2018-11-16', ''), +(2594, 39, 0, 110, '2019-01-21', 'am2', 'bloque', '2018-11-16', ''), +(2595, 39, 0, 110, '2019-01-21', 'pm1', 'bloque', '2018-11-16', ''), +(2596, 39, 0, 110, '2019-01-21', 'pm2', 'bloque', '2018-11-16', ''), +(2597, 39, 299, 110, '2019-01-22', 'am1', 'reserve', '2019-01-17', 'cap'), +(2598, 39, 0, 110, '2019-01-22', 'am2', 'bloque', '2018-11-16', ''), +(2599, 39, 0, 110, '2019-01-22', 'pm1', 'bloque', '2018-11-16', ''), +(2600, 39, 0, 110, '2019-01-22', 'pm2', 'bloque', '2018-11-16', ''), +(2601, 39, 0, 110, '2019-01-23', 'am1', 'bloque', '2018-11-16', ''), +(2602, 39, 0, 110, '2019-01-23', 'am2', 'bloque', '2018-11-16', ''), +(2603, 39, 0, 110, '2019-01-23', 'pm1', 'bloque', '2018-11-16', ''), +(2604, 39, 0, 110, '2019-01-23', 'pm2', 'bloque', '2018-11-16', ''), +(2605, 39, 0, 110, '2019-01-24', 'am1', 'bloque', '2018-11-16', ''), +(2606, 39, 0, 110, '2019-01-24', 'am2', 'bloque', '2018-11-16', ''), +(2607, 39, 0, 110, '2019-01-24', 'pm1', 'bloque', '2018-11-16', ''), +(2608, 39, 0, 110, '2019-01-24', 'pm2', 'bloque', '2018-11-16', ''), +(2609, 39, 0, 110, '2019-01-25', 'am1', 'bloque', '2018-11-16', ''), +(2610, 39, 0, 110, '2019-01-25', 'am2', 'bloque', '2018-11-16', ''), +(2611, 39, 0, 110, '2019-01-25', 'pm1', 'bloque', '2019-01-17', 'cap'), +(2612, 39, 0, 110, '2019-01-25', 'pm2', 'bloque', '2018-11-16', ''), +(2613, 39, 0, 110, '2019-01-28', 'am1', 'bloque', '2018-11-16', ''), +(2614, 39, 0, 110, '2019-01-28', 'am2', 'bloque', '2018-11-16', ''), +(2615, 39, 0, 110, '2019-01-28', 'pm1', 'bloque', '2018-11-16', ''), +(2616, 39, 0, 110, '2019-01-28', 'pm2', 'bloque', '2018-11-16', ''), +(2617, 39, 0, 110, '2019-01-29', 'am1', 'bloque', '2018-11-16', ''), +(2618, 39, 0, 110, '2019-01-29', 'am2', 'bloque', '2018-11-16', ''), +(2619, 39, 0, 110, '2019-01-29', 'pm1', 'bloque', '2018-11-16', ''), +(2620, 39, 0, 110, '2019-01-29', 'pm2', 'bloque', '2018-11-16', ''), +(2621, 39, 0, 110, '2019-01-30', 'am1', 'bloque', '2018-11-16', ''), +(2622, 39, 0, 110, '2019-01-30', 'am2', 'bloque', '2018-11-16', ''), +(2623, 39, 0, 110, '2019-01-30', 'pm1', 'bloque', '2018-11-16', ''), +(2624, 39, 0, 110, '2019-01-30', 'pm2', 'bloque', '2018-11-16', ''), +(2625, 39, 0, 110, '2019-01-31', 'am1', 'bloque', '2018-11-16', ''), +(2626, 39, 0, 110, '2019-01-31', 'am2', 'bloque', '2018-11-16', ''), +(2627, 39, 300, 110, '2019-01-31', 'pm1', 'reserve', '2019-01-17', 'cap'), +(2628, 39, 0, 110, '2019-01-31', 'pm2', 'bloque', '2018-11-16', ''), +(2629, 39, 0, 110, '2019-02-01', 'am1', 'bloque', '2018-11-16', ''), +(2630, 39, 0, 110, '2019-02-01', 'am2', 'bloque', '2018-11-16', ''), +(2631, 39, 0, 110, '2019-02-01', 'pm1', 'bloque', '2018-11-16', ''), +(2632, 39, 0, 110, '2019-02-01', 'pm2', 'bloque', '2018-11-16', ''), +(2633, 39, 0, 110, '2019-02-04', 'am1', 'bloque', '2018-11-16', ''), +(2634, 39, 0, 110, '2019-02-04', 'am2', 'bloque', '2018-11-16', ''), +(2635, 39, 0, 110, '2019-02-04', 'pm1', 'bloque', '2018-11-16', ''), +(2636, 39, 0, 110, '2019-02-04', 'pm2', 'bloque', '2018-11-16', ''), +(2637, 39, 324, 110, '2019-02-05', 'am1', 'reserve', '2019-01-30', 'cap'), +(2638, 39, 0, 110, '2019-02-05', 'am2', 'bloque', '2018-11-16', ''), +(2639, 39, 0, 110, '2019-02-05', 'pm1', 'bloque', '2018-11-16', ''), +(2640, 39, 0, 110, '2019-02-05', 'pm2', 'bloque', '2018-11-16', ''), +(2641, 39, 251, 110, '2019-02-06', 'am1', 'reserve', '2019-01-10', 'cap'), +(2642, 39, 0, 110, '2019-02-06', 'am2', 'bloque', '2018-11-16', ''), +(2643, 39, 0, 110, '2019-02-06', 'pm1', 'bloque', '2018-11-16', ''), +(2644, 39, 0, 110, '2019-02-06', 'pm2', 'bloque', '2018-11-16', ''), +(2645, 39, 0, 110, '2019-02-07', 'am1', 'bloque', '2018-11-16', ''), +(2646, 39, 0, 110, '2019-02-07', 'am2', 'bloque', '2018-11-16', ''), +(2647, 39, 0, 110, '2019-02-07', 'pm1', 'bloque', '2018-11-16', ''), +(2648, 39, 0, 110, '2019-02-07', 'pm2', 'bloque', '2018-11-16', ''), +(2649, 39, 0, 110, '2019-02-08', 'am1', 'bloque', '2018-11-16', ''), +(2650, 39, 0, 110, '2019-02-08', 'am2', 'bloque', '2018-11-16', ''), +(2651, 39, 0, 110, '2019-02-08', 'pm1', 'bloque', '2018-11-16', ''), +(2652, 39, 0, 110, '2019-02-08', 'pm2', 'bloque', '2018-11-16', ''), +(2653, 40, 82, 313, '2019-01-17', 'am1', 'reserve', '2018-12-14', 'ref'), +(2654, 40, 179, 313, '2019-01-17', 'am2', 'reserve', '2018-12-24', 'cap'), +(2655, 40, 0, 313, '2019-01-17', 'pm1', 'libre', '2018-11-19', ''), +(2656, 40, 0, 313, '2019-01-17', 'pm2', 'libre', '2018-11-19', ''), +(2657, 40, 0, 313, '2019-01-18', 'am1', 'bloque', '2018-11-19', ''), +(2658, 40, 0, 313, '2019-01-18', 'am2', 'bloque', '2018-11-19', ''), +(2659, 40, 0, 313, '2019-01-18', 'pm1', 'bloque', '2018-11-19', ''), +(2660, 40, 0, 313, '2019-01-18', 'pm2', 'bloque', '2018-11-19', ''), +(2661, 40, 0, 313, '2019-01-21', 'am1', 'bloque', '2018-11-19', ''), +(2662, 40, 0, 313, '2019-01-21', 'am2', 'bloque', '2018-11-19', ''), +(2663, 40, 0, 313, '2019-01-21', 'pm1', 'bloque', '2018-11-19', ''), +(2664, 40, 0, 313, '2019-01-21', 'pm2', 'bloque', '2018-11-19', ''), +(2665, 40, 0, 313, '2019-01-22', 'am1', 'bloque', '2018-11-19', ''), +(2666, 40, 0, 313, '2019-01-22', 'am2', 'bloque', '2018-11-19', ''), +(2667, 40, 0, 313, '2019-01-22', 'pm1', 'bloque', '2018-11-19', ''), +(2668, 40, 0, 313, '2019-01-22', 'pm2', 'bloque', '2018-11-19', ''), +(2669, 40, 0, 313, '2019-01-23', 'am1', 'bloque', '2018-11-19', ''), +(2670, 40, 0, 313, '2019-01-23', 'am2', 'bloque', '2018-11-19', ''), +(2671, 40, 0, 313, '2019-01-23', 'pm1', 'bloque', '2018-11-19', ''), +(2672, 40, 0, 313, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(2673, 40, 0, 313, '2019-01-24', 'am1', 'bloque', '2018-11-19', ''), +(2674, 40, 0, 313, '2019-01-24', 'am2', 'bloque', '2018-11-19', ''), +(2675, 40, 0, 313, '2019-01-24', 'pm1', 'bloque', '2018-11-19', ''), +(2676, 40, 0, 313, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''), +(2677, 40, 0, 313, '2019-01-25', 'am1', 'bloque', '2018-11-19', ''), +(2678, 40, 0, 313, '2019-01-25', 'am2', 'bloque', '2018-11-19', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(2679, 40, 0, 313, '2019-01-25', 'pm1', 'bloque', '2018-11-19', ''), +(2680, 40, 0, 313, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(2681, 40, 0, 313, '2019-01-28', 'am1', 'bloque', '2018-11-19', ''), +(2682, 40, 0, 313, '2019-01-28', 'am2', 'bloque', '2018-11-19', ''), +(2683, 40, 0, 313, '2019-01-28', 'pm1', 'bloque', '2018-11-19', ''), +(2684, 40, 0, 313, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(2685, 40, 0, 313, '2019-01-29', 'am1', 'bloque', '2018-11-19', ''), +(2686, 40, 0, 313, '2019-01-29', 'am2', 'bloque', '2018-11-19', ''), +(2687, 40, 0, 313, '2019-01-29', 'pm1', 'bloque', '2018-11-19', ''), +(2688, 40, 0, 313, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(2689, 40, 0, 313, '2019-01-30', 'am1', 'bloque', '2018-11-19', ''), +(2690, 40, 0, 313, '2019-01-30', 'am2', 'bloque', '2018-11-19', ''), +(2691, 40, 0, 313, '2019-01-30', 'pm1', 'bloque', '2018-11-19', ''), +(2692, 40, 0, 313, '2019-01-30', 'pm2', 'bloque', '2018-11-19', ''), +(2693, 40, 0, 313, '2019-01-31', 'am1', 'bloque', '2018-11-19', ''), +(2694, 40, 0, 313, '2019-01-31', 'am2', 'bloque', '2018-11-19', ''), +(2695, 40, 0, 313, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(2696, 40, 0, 313, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(2697, 40, 0, 313, '2019-02-01', 'am1', 'bloque', '2018-11-19', ''), +(2698, 40, 0, 313, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(2699, 40, 0, 313, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(2700, 40, 0, 313, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(2701, 40, 0, 313, '2019-02-04', 'am1', 'bloque', '2018-11-19', ''), +(2702, 40, 0, 313, '2019-02-04', 'am2', 'bloque', '2018-11-19', ''), +(2703, 40, 0, 313, '2019-02-04', 'pm1', 'bloque', '2018-11-19', ''), +(2704, 40, 0, 313, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(2705, 40, 0, 313, '2019-02-05', 'am1', 'bloque', '2018-11-19', ''), +(2706, 40, 0, 313, '2019-02-05', 'am2', 'bloque', '2018-11-19', ''), +(2707, 40, 0, 313, '2019-02-05', 'pm1', 'bloque', '2018-11-19', ''), +(2708, 40, 0, 313, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(2709, 40, 0, 313, '2019-02-06', 'am1', 'bloque', '2018-11-19', ''), +(2710, 40, 0, 313, '2019-02-06', 'am2', 'bloque', '2018-11-19', ''), +(2711, 40, 0, 313, '2019-02-06', 'pm1', 'bloque', '2018-11-19', ''), +(2712, 40, 0, 313, '2019-02-06', 'pm2', 'bloque', '2018-11-19', ''), +(2713, 40, 0, 313, '2019-02-07', 'am1', 'bloque', '2018-11-19', ''), +(2714, 40, 0, 313, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(2715, 40, 0, 313, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(2716, 40, 0, 313, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(2717, 40, 0, 313, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(2718, 40, 0, 313, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(2719, 40, 0, 313, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(2720, 40, 0, 313, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(2721, 41, 0, 225, '2019-01-17', 'am1', 'libre', '2018-11-19', ''), +(2722, 41, 0, 225, '2019-01-17', 'am2', 'libre', '2018-11-19', ''), +(2723, 41, 0, 225, '2019-01-17', 'pm1', 'libre', '2018-11-19', ''), +(2724, 41, 0, 225, '2019-01-17', 'pm2', 'libre', '2018-11-19', ''), +(2725, 41, 0, 225, '2019-01-18', 'am1', 'bloque', '2018-11-19', ''), +(2726, 41, 0, 225, '2019-01-18', 'am2', 'bloque', '2018-11-19', ''), +(2727, 41, 0, 225, '2019-01-18', 'pm1', 'bloque', '2018-11-19', ''), +(2728, 41, 0, 225, '2019-01-18', 'pm2', 'bloque', '2018-11-19', ''), +(2729, 41, 0, 225, '2019-01-21', 'am1', 'bloque', '2018-11-19', ''), +(2730, 41, 0, 225, '2019-01-21', 'am2', 'bloque', '2018-11-19', ''), +(2731, 41, 0, 225, '2019-01-21', 'pm1', 'bloque', '2018-11-19', ''), +(2732, 41, 0, 225, '2019-01-21', 'pm2', 'bloque', '2018-11-19', ''), +(2733, 41, 0, 225, '2019-01-22', 'am1', 'bloque', '2018-11-19', ''), +(2734, 41, 0, 225, '2019-01-22', 'am2', 'bloque', '2018-11-19', ''), +(2735, 41, 0, 225, '2019-01-22', 'pm1', 'bloque', '2018-11-19', ''), +(2736, 41, 0, 225, '2019-01-22', 'pm2', 'bloque', '2018-11-19', ''), +(2737, 41, 0, 225, '2019-01-23', 'am1', 'bloque', '2018-11-19', ''), +(2738, 41, 0, 225, '2019-01-23', 'am2', 'bloque', '2018-11-19', ''), +(2739, 41, 0, 225, '2019-01-23', 'pm1', 'bloque', '2018-11-19', ''), +(2740, 41, 0, 225, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(2741, 41, 0, 225, '2019-01-24', 'am1', 'bloque', '2018-11-19', ''), +(2742, 41, 0, 225, '2019-01-24', 'am2', 'bloque', '2018-11-19', ''), +(2743, 41, 0, 225, '2019-01-24', 'pm1', 'bloque', '2018-11-19', ''), +(2744, 41, 0, 225, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''), +(2745, 41, 0, 225, '2019-01-25', 'am1', 'bloque', '2018-11-19', ''), +(2746, 41, 0, 225, '2019-01-25', 'am2', 'bloque', '2018-11-19', ''), +(2747, 41, 0, 225, '2019-01-25', 'pm1', 'bloque', '2018-11-19', ''), +(2748, 41, 0, 225, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(2749, 41, 0, 225, '2019-01-28', 'am1', 'bloque', '2018-11-19', ''), +(2750, 41, 0, 225, '2019-01-28', 'am2', 'bloque', '2018-11-19', ''), +(2751, 41, 0, 225, '2019-01-28', 'pm1', 'bloque', '2018-11-19', ''), +(2752, 41, 0, 225, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(2753, 41, 0, 225, '2019-01-29', 'am1', 'bloque', '2018-11-19', ''), +(2754, 41, 0, 225, '2019-01-29', 'am2', 'bloque', '2018-11-19', ''), +(2755, 41, 0, 225, '2019-01-29', 'pm1', 'bloque', '2018-11-19', ''), +(2756, 41, 0, 225, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(2757, 41, 0, 225, '2019-01-30', 'am1', 'bloque', '2018-11-19', ''), +(2758, 41, 0, 225, '2019-01-30', 'am2', 'bloque', '2018-11-19', ''), +(2759, 41, 0, 225, '2019-01-30', 'pm1', 'bloque', '2018-11-19', ''), +(2760, 41, 0, 225, '2019-01-30', 'pm2', 'bloque', '2018-11-19', ''), +(2761, 41, 0, 225, '2019-01-31', 'am1', 'bloque', '2018-11-19', ''), +(2762, 41, 0, 225, '2019-01-31', 'am2', 'bloque', '2018-11-19', ''), +(2763, 41, 0, 225, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(2764, 41, 0, 225, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(2765, 41, 0, 225, '2019-02-01', 'am1', 'bloque', '2018-11-19', ''), +(2766, 41, 0, 225, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(2767, 41, 0, 225, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(2768, 41, 0, 225, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(2769, 41, 0, 225, '2019-02-04', 'am1', 'bloque', '2018-11-19', ''), +(2770, 41, 0, 225, '2019-02-04', 'am2', 'bloque', '2018-11-19', ''), +(2771, 41, 0, 225, '2019-02-04', 'pm1', 'bloque', '2018-11-19', ''), +(2772, 41, 0, 225, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(2773, 41, 0, 225, '2019-02-05', 'am1', 'bloque', '2018-11-19', ''), +(2774, 41, 0, 225, '2019-02-05', 'am2', 'bloque', '2018-11-19', ''), +(2775, 41, 0, 225, '2019-02-05', 'pm1', 'bloque', '2018-11-19', ''), +(2776, 41, 0, 225, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(2777, 41, 0, 225, '2019-02-06', 'am1', 'bloque', '2018-11-19', ''), +(2778, 41, 0, 225, '2019-02-06', 'am2', 'bloque', '2018-11-19', ''), +(2779, 41, 0, 225, '2019-02-06', 'pm1', 'bloque', '2018-11-19', ''), +(2780, 41, 0, 225, '2019-02-06', 'pm2', 'bloque', '2018-11-19', ''), +(2781, 41, 0, 225, '2019-02-07', 'am1', 'bloque', '2018-11-19', ''), +(2782, 41, 0, 225, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(2783, 41, 0, 225, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(2784, 41, 0, 225, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(2785, 41, 0, 225, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(2786, 41, 0, 225, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(2787, 41, 0, 225, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(2788, 41, 0, 225, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(2789, 42, 0, 96, '2019-01-17', 'am1', 'bloque', '2019-01-03', 'cap'), +(2790, 42, 185, 96, '2019-01-17', 'am2', 'reserve', '2019-01-03', 'cap'), +(2791, 42, 95, 96, '2019-01-17', 'pm1', 'reserve', '2018-12-17', 'cap'), +(2792, 42, 0, 96, '2019-01-17', 'pm2', 'bloque', '2019-01-03', 'cap'), +(2793, 42, 0, 96, '2019-01-18', 'am1', 'bloque', '2018-11-19', ''), +(2794, 42, 0, 96, '2019-01-18', 'am2', 'bloque', '2018-11-19', ''), +(2795, 42, 0, 96, '2019-01-18', 'pm1', 'bloque', '2018-11-19', ''), +(2796, 42, 0, 96, '2019-01-18', 'pm2', 'bloque', '2018-11-19', ''), +(2797, 42, 0, 96, '2019-01-21', 'am1', 'bloque', '2018-11-19', ''), +(2798, 42, 0, 96, '2019-01-21', 'am2', 'bloque', '2018-11-19', ''), +(2799, 42, 0, 96, '2019-01-21', 'pm1', 'bloque', '2018-11-19', ''), +(2800, 42, 0, 96, '2019-01-21', 'pm2', 'bloque', '2018-11-19', ''), +(2801, 42, 0, 96, '2019-01-22', 'am1', 'bloque', '2018-11-19', ''), +(2802, 42, 0, 96, '2019-01-22', 'am2', 'bloque', '2018-11-19', ''), +(2803, 42, 0, 96, '2019-01-22', 'pm1', 'bloque', '2018-11-19', ''), +(2804, 42, 0, 96, '2019-01-22', 'pm2', 'bloque', '2018-11-19', ''), +(2805, 42, 0, 96, '2019-01-23', 'am1', 'bloque', '2018-11-19', ''), +(2806, 42, 0, 96, '2019-01-23', 'am2', 'bloque', '2018-11-19', ''), +(2807, 42, 0, 96, '2019-01-23', 'pm1', 'bloque', '2018-11-19', ''), +(2808, 42, 0, 96, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(2809, 42, 0, 96, '2019-01-24', 'am1', 'bloque', '2019-01-03', 'cap'), +(2810, 42, 0, 96, '2019-01-24', 'am2', 'bloque', '2019-01-03', 'cap'), +(2811, 42, 0, 96, '2019-01-24', 'pm1', 'bloque', '2018-11-19', ''), +(2812, 42, 0, 96, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''), +(2813, 42, 0, 96, '2019-01-25', 'am1', 'bloque', '2018-11-19', ''), +(2814, 42, 0, 96, '2019-01-25', 'am2', 'bloque', '2018-11-19', ''), +(2815, 42, 0, 96, '2019-01-25', 'pm1', 'bloque', '2018-11-19', ''), +(2816, 42, 0, 96, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(2817, 42, 0, 96, '2019-01-28', 'am1', 'bloque', '2018-11-19', ''), +(2818, 42, 0, 96, '2019-01-28', 'am2', 'bloque', '2018-11-19', ''), +(2819, 42, 0, 96, '2019-01-28', 'pm1', 'bloque', '2018-11-19', ''), +(2820, 42, 0, 96, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(2821, 42, 0, 96, '2019-01-29', 'am1', 'bloque', '2018-11-19', ''), +(2822, 42, 0, 96, '2019-01-29', 'am2', 'bloque', '2018-11-19', ''), +(2823, 42, 0, 96, '2019-01-29', 'pm1', 'bloque', '2018-11-19', ''), +(2824, 42, 0, 96, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(2825, 42, 0, 96, '2019-01-30', 'am1', 'bloque', '2018-11-19', ''), +(2826, 42, 0, 96, '2019-01-30', 'am2', 'bloque', '2018-11-19', ''), +(2827, 42, 0, 96, '2019-01-30', 'pm1', 'bloque', '2018-11-19', ''), +(2828, 42, 0, 96, '2019-01-30', 'pm2', 'bloque', '2018-11-19', ''), +(2829, 42, 0, 96, '2019-01-31', 'am1', 'bloque', '2018-11-19', ''), +(2830, 42, 0, 96, '2019-01-31', 'am2', 'bloque', '2018-11-19', ''), +(2831, 42, 0, 96, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(2832, 42, 0, 96, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(2833, 42, 0, 96, '2019-02-01', 'am1', 'bloque', '2018-11-19', ''), +(2834, 42, 0, 96, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(2835, 42, 0, 96, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(2836, 42, 0, 96, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(2837, 42, 0, 96, '2019-02-04', 'am1', 'bloque', '2018-11-19', ''), +(2838, 42, 0, 96, '2019-02-04', 'am2', 'bloque', '2018-11-19', ''), +(2839, 42, 0, 96, '2019-02-04', 'pm1', 'bloque', '2018-11-19', ''), +(2840, 42, 0, 96, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(2841, 42, 0, 96, '2019-02-05', 'am1', 'bloque', '2018-11-19', ''), +(2842, 42, 0, 96, '2019-02-05', 'am2', 'bloque', '2018-11-19', ''), +(2843, 42, 0, 96, '2019-02-05', 'pm1', 'bloque', '2018-11-19', ''), +(2844, 42, 0, 96, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(2845, 42, 0, 96, '2019-02-06', 'am1', 'bloque', '2018-11-19', ''), +(2846, 42, 0, 96, '2019-02-06', 'am2', 'bloque', '2018-11-19', ''), +(2847, 42, 0, 96, '2019-02-06', 'pm1', 'bloque', '2018-11-19', ''), +(2848, 42, 0, 96, '2019-02-06', 'pm2', 'bloque', '2018-11-19', ''), +(2849, 42, 0, 96, '2019-02-07', 'am1', 'bloque', '2018-11-19', ''), +(2850, 42, 0, 96, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(2851, 42, 0, 96, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(2852, 42, 0, 96, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(2853, 42, 0, 96, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(2854, 42, 0, 96, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(2855, 42, 0, 96, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(2856, 42, 0, 96, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(2857, 43, 0, 90, '2019-01-17', 'am1', 'libre', '2018-11-19', ''), +(2858, 43, 0, 90, '2019-01-17', 'am2', 'libre', '2018-12-13', 'ref'), +(2859, 43, 68, 90, '2019-01-17', 'pm1', 'reserve', '2018-12-13', 'ref'), +(2860, 43, 0, 90, '2019-01-17', 'pm2', 'libre', '2018-11-19', ''), +(2861, 43, 0, 90, '2019-01-18', 'am1', 'bloque', '2018-11-19', ''), +(2862, 43, 0, 90, '2019-01-18', 'am2', 'bloque', '2018-11-19', ''), +(2863, 43, 0, 90, '2019-01-18', 'pm1', 'bloque', '2018-11-19', ''), +(2864, 43, 0, 90, '2019-01-18', 'pm2', 'bloque', '2018-11-19', ''), +(2865, 43, 0, 90, '2019-01-21', 'am1', 'bloque', '2018-11-19', ''), +(2866, 43, 0, 90, '2019-01-21', 'am2', 'bloque', '2018-11-19', ''), +(2867, 43, 0, 90, '2019-01-21', 'pm1', 'bloque', '2018-11-19', ''), +(2868, 43, 0, 90, '2019-01-21', 'pm2', 'bloque', '2018-11-19', ''), +(2869, 43, 0, 90, '2019-01-22', 'am1', 'bloque', '2018-11-19', ''), +(2870, 43, 0, 90, '2019-01-22', 'am2', 'bloque', '2018-11-19', ''), +(2871, 43, 0, 90, '2019-01-22', 'pm1', 'bloque', '2018-11-19', ''), +(2872, 43, 0, 90, '2019-01-22', 'pm2', 'bloque', '2018-11-19', ''), +(2873, 43, 0, 90, '2019-01-23', 'am1', 'bloque', '2018-11-19', ''), +(2874, 43, 0, 90, '2019-01-23', 'am2', 'bloque', '2018-11-19', ''), +(2875, 43, 0, 90, '2019-01-23', 'pm1', 'bloque', '2018-11-19', ''), +(2876, 43, 0, 90, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(2877, 43, 0, 90, '2019-01-24', 'am1', 'bloque', '2018-11-19', ''), +(2878, 43, 0, 90, '2019-01-24', 'am2', 'bloque', '2018-11-19', ''), +(2879, 43, 0, 90, '2019-01-24', 'pm1', 'bloque', '2018-11-19', ''), +(2880, 43, 0, 90, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''), +(2881, 43, 0, 90, '2019-01-25', 'am1', 'bloque', '2018-11-19', ''), +(2882, 43, 0, 90, '2019-01-25', 'am2', 'bloque', '2018-11-19', ''), +(2883, 43, 0, 90, '2019-01-25', 'pm1', 'bloque', '2018-11-19', ''), +(2884, 43, 0, 90, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(2885, 43, 0, 90, '2019-01-28', 'am1', 'bloque', '2018-11-19', ''), +(2886, 43, 0, 90, '2019-01-28', 'am2', 'bloque', '2018-11-19', ''), +(2887, 43, 0, 90, '2019-01-28', 'pm1', 'bloque', '2018-11-19', ''), +(2888, 43, 0, 90, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(2889, 43, 0, 90, '2019-01-29', 'am1', 'bloque', '2018-11-19', ''), +(2890, 43, 0, 90, '2019-01-29', 'am2', 'bloque', '2018-11-19', ''), +(2891, 43, 0, 90, '2019-01-29', 'pm1', 'bloque', '2018-11-19', ''), +(2892, 43, 0, 90, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(2893, 43, 0, 90, '2019-01-30', 'am1', 'bloque', '2018-11-19', ''), +(2894, 43, 0, 90, '2019-01-30', 'am2', 'bloque', '2018-11-19', ''), +(2895, 43, 0, 90, '2019-01-30', 'pm1', 'bloque', '2018-11-19', ''), +(2896, 43, 0, 90, '2019-01-30', 'pm2', 'bloque', '2018-11-19', ''), +(2897, 43, 0, 90, '2019-01-31', 'am1', 'bloque', '2018-11-19', ''), +(2898, 43, 0, 90, '2019-01-31', 'am2', 'bloque', '2018-11-19', ''), +(2899, 43, 0, 90, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(2900, 43, 0, 90, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(2901, 43, 0, 90, '2019-02-01', 'am1', 'bloque', '2018-11-19', ''), +(2902, 43, 0, 90, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(2903, 43, 0, 90, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(2904, 43, 0, 90, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(2905, 43, 0, 90, '2019-02-04', 'am1', 'bloque', '2018-11-19', ''), +(2906, 43, 0, 90, '2019-02-04', 'am2', 'bloque', '2018-11-19', ''), +(2907, 43, 0, 90, '2019-02-04', 'pm1', 'bloque', '2018-11-19', ''), +(2908, 43, 0, 90, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(2909, 43, 0, 90, '2019-02-05', 'am1', 'bloque', '2018-11-19', ''), +(2910, 43, 0, 90, '2019-02-05', 'am2', 'bloque', '2018-11-19', ''), +(2911, 43, 0, 90, '2019-02-05', 'pm1', 'bloque', '2018-11-19', ''), +(2912, 43, 0, 90, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(2913, 43, 0, 90, '2019-02-06', 'am1', 'bloque', '2018-11-19', ''), +(2914, 43, 0, 90, '2019-02-06', 'am2', 'bloque', '2018-11-19', ''), +(2915, 43, 0, 90, '2019-02-06', 'pm1', 'bloque', '2018-11-19', ''), +(2916, 43, 0, 90, '2019-02-06', 'pm2', 'bloque', '2018-11-19', ''), +(2917, 43, 0, 90, '2019-02-07', 'am1', 'bloque', '2018-11-19', ''), +(2918, 43, 0, 90, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(2919, 43, 0, 90, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(2920, 43, 0, 90, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(2921, 43, 0, 90, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(2922, 43, 0, 90, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(2923, 43, 0, 90, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(2924, 43, 0, 90, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(2925, 44, 0, 365, '2019-01-17', 'am1', 'libre', '2018-12-17', 'ref'), +(2926, 44, 0, 365, '2019-01-17', 'am2', 'libre', '2018-12-17', 'ref'), +(2927, 44, 0, 365, '2019-01-17', 'pm1', 'bloque', '2018-11-26', 'ref'), +(2928, 44, 0, 365, '2019-01-17', 'pm2', 'bloque', '2018-11-26', 'ref'), +(2929, 44, 0, 365, '2019-01-18', 'am1', 'libre', '2018-11-26', 'ref'), +(2930, 44, 87, 365, '2019-01-18', 'am2', 'reserve', '2018-12-17', 'ref'), +(2931, 44, 0, 365, '2019-01-18', 'pm1', 'libre', '2018-11-26', 'ref'), +(2932, 44, 0, 365, '2019-01-18', 'pm2', 'bloque', '2018-11-26', 'ref'), +(2933, 44, 0, 365, '2019-01-21', 'am1', 'libre', '2018-12-10', 'ref'), +(2934, 44, 255, 365, '2019-01-21', 'am2', 'reserve', '2019-01-10', 'ref'), +(2935, 44, 0, 365, '2019-01-21', 'pm1', 'bloque', '2018-11-19', ''), +(2936, 44, 0, 365, '2019-01-21', 'pm2', 'bloque', '2018-11-19', ''), +(2937, 44, 0, 365, '2019-01-22', 'am1', 'bloque', '2018-11-19', ''), +(2938, 44, 0, 365, '2019-01-22', 'am2', 'bloque', '2018-11-19', ''), +(2939, 44, 0, 365, '2019-01-22', 'pm1', 'bloque', '2018-11-19', ''), +(2940, 44, 0, 365, '2019-01-22', 'pm2', 'bloque', '2018-11-19', ''), +(2941, 44, 0, 365, '2019-01-23', 'am1', 'bloque', '2018-11-19', ''), +(2942, 44, 0, 365, '2019-01-23', 'am2', 'bloque', '2018-11-19', ''), +(2943, 44, 0, 365, '2019-01-23', 'pm1', 'bloque', '2018-11-19', ''), +(2944, 44, 0, 365, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(2945, 44, 0, 365, '2019-01-24', 'am1', 'bloque', '2018-11-19', ''), +(2946, 44, 0, 365, '2019-01-24', 'am2', 'bloque', '2018-11-19', ''), +(2947, 44, 0, 365, '2019-01-24', 'pm1', 'bloque', '2018-11-19', ''), +(2948, 44, 0, 365, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''), +(2949, 44, 0, 365, '2019-01-25', 'am1', 'bloque', '2018-11-19', ''), +(2950, 44, 0, 365, '2019-01-25', 'am2', 'bloque', '2018-11-19', ''), +(2951, 44, 0, 365, '2019-01-25', 'pm1', 'bloque', '2018-11-19', ''), +(2952, 44, 0, 365, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(2953, 44, 0, 365, '2019-01-28', 'am1', 'libre', '2019-01-08', 'ref'), +(2954, 44, 306, 365, '2019-01-28', 'am2', 'reserve', '2019-01-17', 'ref'), +(2955, 44, 0, 365, '2019-01-28', 'pm1', 'bloque', '2018-11-19', ''), +(2956, 44, 0, 365, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(2957, 44, 0, 365, '2019-01-29', 'am1', 'bloque', '2018-11-19', ''), +(2958, 44, 0, 365, '2019-01-29', 'am2', 'bloque', '2018-11-19', ''), +(2959, 44, 0, 365, '2019-01-29', 'pm1', 'bloque', '2018-11-19', ''), +(2960, 44, 0, 365, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(2961, 44, 0, 365, '2019-01-30', 'am1', 'bloque', '2018-11-19', ''), +(2962, 44, 0, 365, '2019-01-30', 'am2', 'bloque', '2018-11-19', ''), +(2963, 44, 0, 365, '2019-01-30', 'pm1', 'bloque', '2018-11-19', ''), +(2964, 44, 0, 365, '2019-01-30', 'pm2', 'bloque', '2018-11-19', ''), +(2965, 44, 0, 365, '2019-01-31', 'am1', 'bloque', '2018-11-19', ''), +(2966, 44, 0, 365, '2019-01-31', 'am2', 'bloque', '2018-11-19', ''), +(2967, 44, 0, 365, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(2968, 44, 0, 365, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(2969, 44, 0, 365, '2019-02-01', 'am1', 'bloque', '2018-11-19', ''), +(2970, 44, 0, 365, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(2971, 44, 0, 365, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(2972, 44, 0, 365, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(2973, 44, 0, 365, '2019-02-04', 'am1', 'bloque', '2018-11-19', ''), +(2974, 44, 310, 365, '2019-02-04', 'am2', 'reserve', '2019-01-18', 'ref'), +(2975, 44, 0, 365, '2019-02-04', 'pm1', 'bloque', '2018-11-19', ''), +(2976, 44, 0, 365, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(2977, 44, 0, 365, '2019-02-05', 'am1', 'bloque', '2018-11-19', ''), +(2978, 44, 0, 365, '2019-02-05', 'am2', 'bloque', '2018-11-19', ''), +(2979, 44, 0, 365, '2019-02-05', 'pm1', 'bloque', '2018-11-19', ''), +(2980, 44, 0, 365, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(2981, 44, 0, 365, '2019-02-06', 'am1', 'bloque', '2018-11-19', ''), +(2982, 44, 0, 365, '2019-02-06', 'am2', 'bloque', '2018-11-19', ''), +(2983, 44, 0, 365, '2019-02-06', 'pm1', 'bloque', '2018-11-19', ''), +(2984, 44, 0, 365, '2019-02-06', 'pm2', 'bloque', '2018-11-19', ''), +(2985, 44, 0, 365, '2019-02-07', 'am1', 'bloque', '2018-11-19', ''), +(2986, 44, 0, 365, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(2987, 44, 0, 365, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(2988, 44, 0, 365, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(2989, 44, 0, 365, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(2990, 44, 0, 365, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(2991, 44, 0, 365, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(2992, 44, 0, 365, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(2993, 45, 0, 365, '2019-01-17', 'am1', 'libre', '2018-11-19', ''), +(2994, 45, 144, 365, '2019-01-17', 'am2', 'reserve', '2018-12-19', 'cap'), +(2995, 45, 0, 365, '2019-01-17', 'pm1', 'bloque', '2019-01-08', 'ref'), +(2996, 45, 0, 365, '2019-01-17', 'pm2', 'bloque', '2019-01-08', 'ref'), +(2997, 45, 0, 365, '2019-01-18', 'am1', 'libre', '2018-11-29', 'cap'), +(2998, 45, 0, 365, '2019-01-18', 'am2', 'libre', '2018-11-29', 'cap'), +(2999, 45, 0, 365, '2019-01-18', 'pm1', 'bloque', '2019-01-08', 'ref'), +(3000, 45, 0, 365, '2019-01-18', 'pm2', 'bloque', '2018-11-19', ''), +(3001, 45, 0, 365, '2019-01-21', 'am1', 'bloque', '2018-11-19', ''), +(3002, 45, 0, 365, '2019-01-21', 'am2', 'bloque', '2018-11-19', ''), +(3003, 45, 0, 365, '2019-01-21', 'pm1', 'bloque', '2018-11-19', ''), +(3004, 45, 0, 365, '2019-01-21', 'pm2', 'bloque', '2018-11-19', ''), +(3005, 45, 0, 365, '2019-01-22', 'am1', 'bloque', '2018-11-19', ''), +(3006, 45, 0, 365, '2019-01-22', 'am2', 'bloque', '2018-11-19', ''), +(3007, 45, 0, 365, '2019-01-22', 'pm1', 'bloque', '2018-11-19', ''), +(3008, 45, 0, 365, '2019-01-22', 'pm2', 'bloque', '2018-11-19', ''), +(3009, 45, 0, 365, '2019-01-23', 'am1', 'bloque', '2018-11-19', ''), +(3010, 45, 0, 365, '2019-01-23', 'am2', 'bloque', '2018-11-19', ''), +(3011, 45, 0, 365, '2019-01-23', 'pm1', 'bloque', '2018-11-19', ''), +(3012, 45, 0, 365, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(3013, 45, 0, 365, '2019-01-24', 'am1', 'bloque', '2018-11-19', ''), +(3014, 45, 0, 365, '2019-01-24', 'am2', 'bloque', '2018-11-19', ''), +(3015, 45, 0, 365, '2019-01-24', 'pm1', 'bloque', '2018-11-19', ''), +(3016, 45, 0, 365, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''), +(3017, 45, 0, 365, '2019-01-25', 'am1', 'libre', '2018-11-29', 'cap'), +(3018, 45, 0, 365, '2019-01-25', 'am2', 'libre', '2018-11-29', 'cap'), +(3019, 45, 0, 365, '2019-01-25', 'pm1', 'bloque', '2018-11-19', ''), +(3020, 45, 0, 365, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(3021, 45, 226, 365, '2019-01-28', 'am1', 'reserve', '2019-01-08', 'ref'), +(3022, 45, 0, 365, '2019-01-28', 'am2', 'libre', '2018-11-29', 'cap'), +(3023, 45, 0, 365, '2019-01-28', 'pm1', 'bloque', '2018-11-19', ''), +(3024, 45, 0, 365, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(3025, 45, 0, 365, '2019-01-29', 'am1', 'bloque', '2018-11-19', ''), +(3026, 45, 0, 365, '2019-01-29', 'am2', 'bloque', '2018-11-19', ''), +(3027, 45, 0, 365, '2019-01-29', 'pm1', 'bloque', '2018-11-19', ''), +(3028, 45, 0, 365, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(3029, 45, 0, 365, '2019-01-30', 'am1', 'bloque', '2018-11-19', ''), +(3030, 45, 0, 365, '2019-01-30', 'am2', 'bloque', '2018-11-19', ''), +(3031, 45, 0, 365, '2019-01-30', 'pm1', 'bloque', '2018-11-19', ''), +(3032, 45, 0, 365, '2019-01-30', 'pm2', 'bloque', '2018-11-19', ''), +(3033, 45, 0, 365, '2019-01-31', 'am1', 'bloque', '2018-11-19', ''), +(3034, 45, 0, 365, '2019-01-31', 'am2', 'bloque', '2018-11-19', ''), +(3035, 45, 0, 365, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(3036, 45, 0, 365, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(3037, 45, 0, 365, '2019-02-01', 'am1', 'bloque', '2018-11-19', ''), +(3038, 45, 0, 365, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(3039, 45, 0, 365, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(3040, 45, 0, 365, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(3041, 45, 0, 365, '2019-02-04', 'am1', 'bloque', '2018-11-19', ''), +(3042, 45, 0, 365, '2019-02-04', 'am2', 'bloque', '2018-11-19', ''), +(3043, 45, 0, 365, '2019-02-04', 'pm1', 'bloque', '2018-11-19', ''), +(3044, 45, 0, 365, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(3045, 45, 0, 365, '2019-02-05', 'am1', 'bloque', '2018-11-19', ''), +(3046, 45, 0, 365, '2019-02-05', 'am2', 'bloque', '2018-11-19', ''), +(3047, 45, 0, 365, '2019-02-05', 'pm1', 'bloque', '2018-11-19', ''), +(3048, 45, 0, 365, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(3049, 45, 0, 365, '2019-02-06', 'am1', 'bloque', '2018-11-19', ''), +(3050, 45, 0, 365, '2019-02-06', 'am2', 'bloque', '2018-11-19', ''), +(3051, 45, 0, 365, '2019-02-06', 'pm1', 'libre', '2018-11-29', 'cap'), +(3052, 45, 0, 365, '2019-02-06', 'pm2', 'libre', '2018-11-29', 'cap'), +(3053, 45, 0, 365, '2019-02-07', 'am1', 'bloque', '2018-11-19', ''), +(3054, 45, 0, 365, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(3055, 45, 0, 365, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(3056, 45, 0, 365, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(3057, 45, 0, 365, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(3058, 45, 0, 365, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(3059, 45, 0, 365, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(3060, 45, 0, 365, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(3061, 46, 0, 365, '2019-01-17', 'am1', 'libre', '2018-11-19', ''), +(3062, 46, 0, 365, '2019-01-17', 'am2', 'libre', '2018-11-19', ''), +(3063, 46, 0, 365, '2019-01-17', 'pm1', 'bloque', '2018-12-17', 'cap'), +(3064, 46, 0, 365, '2019-01-17', 'pm2', 'bloque', '2018-12-17', 'cap'), +(3065, 46, 0, 365, '2019-01-18', 'am1', 'libre', '2018-12-17', 'cap'), +(3066, 46, 0, 365, '2019-01-18', 'am2', 'libre', '2018-12-17', 'cap'), +(3067, 46, 0, 365, '2019-01-18', 'pm1', 'libre', '2018-12-17', 'cap'), +(3068, 46, 0, 365, '2019-01-18', 'pm2', 'bloque', '2018-11-19', ''), +(3069, 46, 0, 365, '2019-01-21', 'am1', 'libre', '2018-12-17', 'ref'), +(3070, 46, 0, 365, '2019-01-21', 'am2', 'libre', '2018-12-17', 'cap'), +(3071, 46, 0, 365, '2019-01-21', 'pm1', 'libre', '2018-12-17', 'cap'), +(3072, 46, 0, 365, '2019-01-21', 'pm2', 'libre', '2018-12-17', 'cap'), +(3073, 46, 0, 365, '2019-01-22', 'am1', 'libre', '2018-12-17', 'cap'), +(3074, 46, 0, 365, '2019-01-22', 'am2', 'libre', '2018-12-17', 'cap'), +(3075, 46, 0, 365, '2019-01-22', 'pm1', 'libre', '2018-12-17', 'cap'), +(3076, 46, 0, 365, '2019-01-22', 'pm2', 'libre', '2018-12-17', 'cap'), +(3077, 46, 0, 365, '2019-01-23', 'am1', 'libre', '2018-12-17', 'cap'), +(3078, 46, 0, 365, '2019-01-23', 'am2', 'libre', '2018-12-17', 'cap'), +(3079, 46, 0, 365, '2019-01-23', 'pm1', 'libre', '2018-12-17', 'cap'), +(3080, 46, 0, 365, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(3081, 46, 0, 365, '2019-01-24', 'am1', 'bloque', '2019-01-07', 'cap'), +(3082, 46, 0, 365, '2019-01-24', 'am2', 'bloque', '2019-01-07', 'cap'), +(3083, 46, 0, 365, '2019-01-24', 'pm1', 'bloque', '2018-12-19', 'cap'), +(3084, 46, 0, 365, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''), +(3085, 46, 0, 365, '2019-01-25', 'am1', 'libre', '2018-12-17', 'cap'), +(3086, 46, 0, 365, '2019-01-25', 'am2', 'libre', '2018-12-17', 'cap'), +(3087, 46, 0, 365, '2019-01-25', 'pm1', 'bloque', '2018-12-17', 'cap'), +(3088, 46, 0, 365, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(3089, 46, 0, 365, '2019-01-28', 'am1', 'bloque', '2018-12-17', 'cap'), +(3090, 46, 0, 365, '2019-01-28', 'am2', 'libre', '2018-12-17', 'cap'), +(3091, 46, 0, 365, '2019-01-28', 'pm1', 'libre', '2018-12-17', 'cap'), +(3092, 46, 0, 365, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(3093, 46, 0, 365, '2019-01-29', 'am1', 'libre', '2018-12-17', 'cap'), +(3094, 46, 0, 365, '2019-01-29', 'am2', 'libre', '2018-12-17', 'cap'), +(3095, 46, 0, 365, '2019-01-29', 'pm1', 'libre', '2018-12-17', 'cap'), +(3096, 46, 0, 365, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(3097, 46, 0, 365, '2019-01-30', 'am1', 'bloque', '2018-12-19', 'cap'), +(3098, 46, 0, 365, '2019-01-30', 'am2', 'bloque', '2018-12-19', 'cap'), +(3099, 46, 0, 365, '2019-01-30', 'pm1', 'bloque', '2018-12-19', 'cap'), +(3100, 46, 0, 365, '2019-01-30', 'pm2', 'bloque', '2018-12-19', 'cap'), +(3101, 46, 0, 365, '2019-01-31', 'am1', 'libre', '2018-12-17', 'cap'), +(3102, 46, 0, 365, '2019-01-31', 'am2', 'libre', '2018-12-17', 'cap'), +(3103, 46, 0, 365, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(3104, 46, 0, 365, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(3105, 46, 0, 365, '2019-02-01', 'am1', 'libre', '2018-12-17', 'cap'), +(3106, 46, 0, 365, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(3107, 46, 0, 365, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(3108, 46, 0, 365, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(3109, 46, 0, 365, '2019-02-04', 'am1', 'libre', '2018-12-17', 'cap'), +(3110, 46, 0, 365, '2019-02-04', 'am2', 'libre', '2018-12-17', 'cap'), +(3111, 46, 0, 365, '2019-02-04', 'pm1', 'libre', '2018-12-17', 'cap'), +(3112, 46, 0, 365, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(3113, 46, 0, 365, '2019-02-05', 'am1', 'libre', '2018-12-17', 'cap'), +(3114, 46, 0, 365, '2019-02-05', 'am2', 'libre', '2018-12-17', 'cap'), +(3115, 46, 0, 365, '2019-02-05', 'pm1', 'libre', '2018-12-17', 'cap'), +(3116, 46, 0, 365, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(3117, 46, 0, 365, '2019-02-06', 'am1', 'libre', '2018-12-17', 'cap'), +(3118, 46, 0, 365, '2019-02-06', 'am2', 'libre', '2018-12-17', 'cap'), +(3119, 46, 0, 365, '2019-02-06', 'pm1', 'bloque', '2018-11-19', ''), +(3120, 46, 0, 365, '2019-02-06', 'pm2', 'bloque', '2018-11-19', ''), +(3121, 46, 0, 365, '2019-02-07', 'am1', 'libre', '2018-12-17', 'cap'), +(3122, 46, 0, 365, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(3123, 46, 0, 365, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(3124, 46, 0, 365, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(3125, 46, 0, 365, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(3126, 46, 0, 365, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(3127, 46, 0, 365, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(3128, 46, 0, 365, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(3129, 47, 0, 94, '2019-01-17', 'am1', 'libre', '2018-11-19', ''), +(3130, 47, 0, 94, '2019-01-17', 'am2', 'libre', '2018-11-19', ''), +(3131, 47, 0, 94, '2019-01-17', 'pm1', 'libre', '2018-11-19', ''), +(3132, 47, 0, 94, '2019-01-17', 'pm2', 'libre', '2018-11-19', ''), +(3133, 47, 0, 94, '2019-01-18', 'am1', 'bloque', '2018-11-19', ''), +(3134, 47, 0, 94, '2019-01-18', 'am2', 'bloque', '2018-11-19', ''), +(3135, 47, 0, 94, '2019-01-18', 'pm1', 'bloque', '2018-11-19', ''), +(3136, 47, 0, 94, '2019-01-18', 'pm2', 'bloque', '2018-11-19', ''), +(3137, 47, 0, 94, '2019-01-21', 'am1', 'bloque', '2018-11-19', ''), +(3138, 47, 0, 94, '2019-01-21', 'am2', 'bloque', '2018-11-19', ''), +(3139, 47, 0, 94, '2019-01-21', 'pm1', 'bloque', '2018-11-19', ''), +(3140, 47, 0, 94, '2019-01-21', 'pm2', 'bloque', '2018-11-19', ''), +(3141, 47, 0, 94, '2019-01-22', 'am1', 'bloque', '2018-11-19', ''), +(3142, 47, 0, 94, '2019-01-22', 'am2', 'bloque', '2018-11-19', ''), +(3143, 47, 0, 94, '2019-01-22', 'pm1', 'bloque', '2018-11-19', ''), +(3144, 47, 0, 94, '2019-01-22', 'pm2', 'bloque', '2018-11-19', ''), +(3145, 47, 0, 94, '2019-01-23', 'am1', 'bloque', '2018-11-19', ''), +(3146, 47, 0, 94, '2019-01-23', 'am2', 'bloque', '2018-11-19', ''), +(3147, 47, 0, 94, '2019-01-23', 'pm1', 'bloque', '2018-11-19', ''), +(3148, 47, 0, 94, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(3149, 47, 0, 94, '2019-01-24', 'am1', 'bloque', '2018-11-19', ''), +(3150, 47, 0, 94, '2019-01-24', 'am2', 'bloque', '2018-11-19', ''), +(3151, 47, 314, 94, '2019-01-24', 'pm1', 'reserve', '2019-01-22', 'ref'), +(3152, 47, 0, 94, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''), +(3153, 47, 0, 94, '2019-01-25', 'am1', 'bloque', '2018-11-19', ''), +(3154, 47, 0, 94, '2019-01-25', 'am2', 'bloque', '2018-11-19', ''), +(3155, 47, 0, 94, '2019-01-25', 'pm1', 'bloque', '2018-11-19', ''), +(3156, 47, 0, 94, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(3157, 47, 0, 94, '2019-01-28', 'am1', 'bloque', '2018-11-19', ''), +(3158, 47, 0, 94, '2019-01-28', 'am2', 'bloque', '2018-11-19', ''), +(3159, 47, 0, 94, '2019-01-28', 'pm1', 'bloque', '2018-11-19', ''), +(3160, 47, 0, 94, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(3161, 47, 0, 94, '2019-01-29', 'am1', 'bloque', '2018-11-19', ''), +(3162, 47, 0, 94, '2019-01-29', 'am2', 'bloque', '2018-11-19', ''), +(3163, 47, 0, 94, '2019-01-29', 'pm1', 'bloque', '2018-11-19', ''), +(3164, 47, 0, 94, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(3165, 47, 0, 94, '2019-01-30', 'am1', 'bloque', '2018-11-19', ''), +(3166, 47, 0, 94, '2019-01-30', 'am2', 'bloque', '2018-11-19', ''), +(3167, 47, 0, 94, '2019-01-30', 'pm1', 'bloque', '2018-11-19', ''), +(3168, 47, 0, 94, '2019-01-30', 'pm2', 'bloque', '2018-11-19', ''), +(3169, 47, 0, 94, '2019-01-31', 'am1', 'bloque', '2018-11-19', ''), +(3170, 47, 0, 94, '2019-01-31', 'am2', 'bloque', '2018-11-19', ''), +(3171, 47, 0, 94, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(3172, 47, 0, 94, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(3173, 47, 0, 94, '2019-02-01', 'am1', 'bloque', '2018-11-19', ''), +(3174, 47, 0, 94, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(3175, 47, 0, 94, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(3176, 47, 0, 94, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(3177, 47, 0, 94, '2019-02-04', 'am1', 'bloque', '2018-11-19', ''), +(3178, 47, 0, 94, '2019-02-04', 'am2', 'bloque', '2018-11-19', ''), +(3179, 47, 0, 94, '2019-02-04', 'pm1', 'bloque', '2018-11-19', ''), +(3180, 47, 0, 94, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(3181, 47, 0, 94, '2019-02-05', 'am1', 'bloque', '2018-11-19', ''), +(3182, 47, 0, 94, '2019-02-05', 'am2', 'bloque', '2018-11-19', ''), +(3183, 47, 0, 94, '2019-02-05', 'pm1', 'bloque', '2018-11-19', ''), +(3184, 47, 0, 94, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(3185, 47, 0, 94, '2019-02-06', 'am1', 'bloque', '2018-11-19', ''), +(3186, 47, 0, 94, '2019-02-06', 'am2', 'bloque', '2018-11-19', ''), +(3187, 47, 0, 94, '2019-02-06', 'pm1', 'bloque', '2018-11-19', ''), +(3188, 47, 0, 94, '2019-02-06', 'pm2', 'bloque', '2018-11-19', ''), +(3189, 47, 0, 94, '2019-02-07', 'am1', 'bloque', '2018-11-19', ''), +(3190, 47, 0, 94, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(3191, 47, 0, 94, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(3192, 47, 0, 94, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(3193, 47, 0, 94, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(3194, 47, 0, 94, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(3195, 47, 0, 94, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(3196, 47, 0, 94, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(3197, 48, 0, 94, '2019-01-17', 'am1', 'libre', '2018-11-19', ''), +(3198, 48, 0, 94, '2019-01-17', 'am2', 'libre', '2018-11-19', ''), +(3199, 48, 0, 94, '2019-01-17', 'pm1', 'libre', '2018-11-19', ''), +(3200, 48, 0, 94, '2019-01-17', 'pm2', 'libre', '2018-11-19', ''), +(3201, 48, 0, 94, '2019-01-18', 'am1', 'bloque', '2018-11-19', ''), +(3202, 48, 0, 94, '2019-01-18', 'am2', 'bloque', '2018-11-19', ''), +(3203, 48, 0, 94, '2019-01-18', 'pm1', 'bloque', '2018-11-19', ''), +(3204, 48, 0, 94, '2019-01-18', 'pm2', 'bloque', '2018-11-19', ''), +(3205, 48, 0, 94, '2019-01-21', 'am1', 'bloque', '2018-11-19', ''), +(3206, 48, 0, 94, '2019-01-21', 'am2', 'bloque', '2018-11-19', ''), +(3207, 48, 0, 94, '2019-01-21', 'pm1', 'bloque', '2018-11-19', ''), +(3208, 48, 0, 94, '2019-01-21', 'pm2', 'bloque', '2018-11-19', ''), +(3209, 48, 0, 94, '2019-01-22', 'am1', 'bloque', '2018-11-19', ''), +(3210, 48, 0, 94, '2019-01-22', 'am2', 'bloque', '2018-11-19', ''), +(3211, 48, 0, 94, '2019-01-22', 'pm1', 'bloque', '2018-11-19', ''), +(3212, 48, 0, 94, '2019-01-22', 'pm2', 'bloque', '2018-11-19', ''), +(3213, 48, 0, 94, '2019-01-23', 'am1', 'bloque', '2018-11-19', ''), +(3214, 48, 0, 94, '2019-01-23', 'am2', 'bloque', '2018-11-19', ''), +(3215, 48, 0, 94, '2019-01-23', 'pm1', 'bloque', '2018-11-19', ''), +(3216, 48, 0, 94, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(3217, 48, 0, 94, '2019-01-24', 'am1', 'bloque', '2018-11-19', ''), +(3218, 48, 0, 94, '2019-01-24', 'am2', 'bloque', '2018-11-19', ''), +(3219, 48, 0, 94, '2019-01-24', 'pm1', 'bloque', '2018-11-19', ''), +(3220, 48, 0, 94, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''), +(3221, 48, 0, 94, '2019-01-25', 'am1', 'bloque', '2018-11-19', ''), +(3222, 48, 0, 94, '2019-01-25', 'am2', 'bloque', '2018-11-19', ''), +(3223, 48, 0, 94, '2019-01-25', 'pm1', 'bloque', '2018-11-19', ''), +(3224, 48, 0, 94, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(3225, 48, 0, 94, '2019-01-28', 'am1', 'bloque', '2018-11-19', ''), +(3226, 48, 0, 94, '2019-01-28', 'am2', 'bloque', '2018-11-19', ''), +(3227, 48, 0, 94, '2019-01-28', 'pm1', 'bloque', '2018-11-19', ''), +(3228, 48, 0, 94, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(3229, 48, 0, 94, '2019-01-29', 'am1', 'bloque', '2018-11-19', ''), +(3230, 48, 0, 94, '2019-01-29', 'am2', 'bloque', '2018-11-19', ''), +(3231, 48, 0, 94, '2019-01-29', 'pm1', 'bloque', '2018-11-19', ''), +(3232, 48, 0, 94, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(3233, 48, 0, 94, '2019-01-30', 'am1', 'bloque', '2018-11-19', ''), +(3234, 48, 0, 94, '2019-01-30', 'am2', 'bloque', '2018-11-19', ''), +(3235, 48, 0, 94, '2019-01-30', 'pm1', 'bloque', '2018-11-19', ''), +(3236, 48, 0, 94, '2019-01-30', 'pm2', 'bloque', '2018-11-19', ''), +(3237, 48, 0, 94, '2019-01-31', 'am1', 'bloque', '2018-11-19', ''), +(3238, 48, 0, 94, '2019-01-31', 'am2', 'bloque', '2018-11-19', ''), +(3239, 48, 0, 94, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(3240, 48, 0, 94, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(3241, 48, 0, 94, '2019-02-01', 'am1', 'bloque', '2018-11-19', ''), +(3242, 48, 0, 94, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(3243, 48, 0, 94, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(3244, 48, 0, 94, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(3245, 48, 0, 94, '2019-02-04', 'am1', 'bloque', '2018-11-19', ''), +(3246, 48, 0, 94, '2019-02-04', 'am2', 'bloque', '2018-11-19', ''), +(3247, 48, 0, 94, '2019-02-04', 'pm1', 'bloque', '2018-11-19', ''), +(3248, 48, 0, 94, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(3249, 48, 0, 94, '2019-02-05', 'am1', 'bloque', '2018-11-19', ''), +(3250, 48, 0, 94, '2019-02-05', 'am2', 'bloque', '2018-11-19', ''), +(3251, 48, 0, 94, '2019-02-05', 'pm1', 'bloque', '2018-11-19', ''), +(3252, 48, 0, 94, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(3253, 48, 0, 94, '2019-02-06', 'am1', 'bloque', '2018-11-19', ''), +(3254, 48, 0, 94, '2019-02-06', 'am2', 'bloque', '2018-11-19', ''), +(3255, 48, 0, 94, '2019-02-06', 'pm1', 'bloque', '2018-11-19', ''), +(3256, 48, 0, 94, '2019-02-06', 'pm2', 'bloque', '2018-11-19', ''), +(3257, 48, 0, 94, '2019-02-07', 'am1', 'bloque', '2018-11-19', ''), +(3258, 48, 0, 94, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(3259, 48, 0, 94, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(3260, 48, 0, 94, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(3261, 48, 0, 94, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(3262, 48, 0, 94, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(3263, 48, 0, 94, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(3264, 48, 0, 94, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(3265, 49, 0, 94, '2019-01-17', 'am1', 'libre', '2018-11-19', ''), +(3266, 49, 0, 94, '2019-01-17', 'am2', 'libre', '2018-11-19', ''), +(3267, 49, 0, 94, '2019-01-17', 'pm1', 'libre', '2018-11-19', ''), +(3268, 49, 0, 94, '2019-01-17', 'pm2', 'libre', '2018-11-19', ''), +(3269, 49, 0, 94, '2019-01-18', 'am1', 'bloque', '2018-11-19', ''), +(3270, 49, 0, 94, '2019-01-18', 'am2', 'bloque', '2018-11-19', ''), +(3271, 49, 0, 94, '2019-01-18', 'pm1', 'bloque', '2018-11-19', ''), +(3272, 49, 0, 94, '2019-01-18', 'pm2', 'bloque', '2018-11-19', ''), +(3273, 49, 0, 94, '2019-01-21', 'am1', 'bloque', '2018-11-19', ''), +(3274, 49, 0, 94, '2019-01-21', 'am2', 'bloque', '2018-11-19', ''), +(3275, 49, 0, 94, '2019-01-21', 'pm1', 'bloque', '2018-11-19', ''), +(3276, 49, 0, 94, '2019-01-21', 'pm2', 'bloque', '2018-11-19', ''), +(3277, 49, 0, 94, '2019-01-22', 'am1', 'bloque', '2018-11-19', ''), +(3278, 49, 0, 94, '2019-01-22', 'am2', 'bloque', '2018-11-19', ''), +(3279, 49, 0, 94, '2019-01-22', 'pm1', 'bloque', '2018-11-19', ''), +(3280, 49, 0, 94, '2019-01-22', 'pm2', 'bloque', '2018-11-19', ''), +(3281, 49, 0, 94, '2019-01-23', 'am1', 'bloque', '2018-11-19', ''), +(3282, 49, 0, 94, '2019-01-23', 'am2', 'bloque', '2018-11-19', ''), +(3283, 49, 0, 94, '2019-01-23', 'pm1', 'bloque', '2018-11-19', ''), +(3284, 49, 0, 94, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(3285, 49, 0, 94, '2019-01-24', 'am1', 'bloque', '2018-11-19', ''), +(3286, 49, 0, 94, '2019-01-24', 'am2', 'bloque', '2018-11-19', ''), +(3287, 49, 0, 94, '2019-01-24', 'pm1', 'bloque', '2018-11-19', ''), +(3288, 49, 0, 94, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''), +(3289, 49, 0, 94, '2019-01-25', 'am1', 'bloque', '2018-11-19', ''), +(3290, 49, 0, 94, '2019-01-25', 'am2', 'bloque', '2018-11-19', ''), +(3291, 49, 0, 94, '2019-01-25', 'pm1', 'bloque', '2018-11-19', ''), +(3292, 49, 0, 94, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(3293, 49, 0, 94, '2019-01-28', 'am1', 'bloque', '2018-11-19', ''), +(3294, 49, 0, 94, '2019-01-28', 'am2', 'bloque', '2018-11-19', ''), +(3295, 49, 0, 94, '2019-01-28', 'pm1', 'bloque', '2018-11-19', ''), +(3296, 49, 0, 94, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(3297, 49, 0, 94, '2019-01-29', 'am1', 'bloque', '2018-11-19', ''), +(3298, 49, 0, 94, '2019-01-29', 'am2', 'bloque', '2018-11-19', ''), +(3299, 49, 0, 94, '2019-01-29', 'pm1', 'bloque', '2018-11-19', ''), +(3300, 49, 0, 94, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(3301, 49, 0, 94, '2019-01-30', 'am1', 'bloque', '2018-11-19', ''), +(3302, 49, 0, 94, '2019-01-30', 'am2', 'bloque', '2018-11-19', ''), +(3303, 49, 0, 94, '2019-01-30', 'pm1', 'bloque', '2018-11-19', ''), +(3304, 49, 0, 94, '2019-01-30', 'pm2', 'bloque', '2018-11-19', ''), +(3305, 49, 0, 94, '2019-01-31', 'am1', 'bloque', '2018-11-19', ''), +(3306, 49, 0, 94, '2019-01-31', 'am2', 'bloque', '2018-11-19', ''), +(3307, 49, 0, 94, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(3308, 49, 0, 94, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(3309, 49, 0, 94, '2019-02-01', 'am1', 'bloque', '2018-11-19', ''), +(3310, 49, 0, 94, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(3311, 49, 0, 94, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(3312, 49, 0, 94, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(3313, 49, 0, 94, '2019-02-04', 'am1', 'bloque', '2018-11-19', ''), +(3314, 49, 0, 94, '2019-02-04', 'am2', 'bloque', '2018-11-19', ''), +(3315, 49, 0, 94, '2019-02-04', 'pm1', 'bloque', '2018-11-19', ''), +(3316, 49, 0, 94, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(3317, 49, 0, 94, '2019-02-05', 'am1', 'bloque', '2018-11-19', ''), +(3318, 49, 0, 94, '2019-02-05', 'am2', 'bloque', '2018-11-19', ''), +(3319, 49, 0, 94, '2019-02-05', 'pm1', 'bloque', '2018-11-19', ''), +(3320, 49, 0, 94, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(3321, 49, 0, 94, '2019-02-06', 'am1', 'bloque', '2018-11-19', ''), +(3322, 49, 0, 94, '2019-02-06', 'am2', 'bloque', '2018-11-19', ''), +(3323, 49, 0, 94, '2019-02-06', 'pm1', 'bloque', '2018-11-19', ''), +(3324, 49, 0, 94, '2019-02-06', 'pm2', 'bloque', '2018-11-19', ''), +(3325, 49, 0, 94, '2019-02-07', 'am1', 'bloque', '2018-11-19', ''), +(3326, 49, 0, 94, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(3327, 49, 0, 94, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(3328, 49, 0, 94, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(3329, 49, 0, 94, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(3330, 49, 0, 94, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(3331, 49, 0, 94, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(3332, 49, 0, 94, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(3333, 50, 0, 206, '2019-01-17', 'am1', 'libre', '2018-11-19', ''), +(3334, 50, 0, 206, '2019-01-17', 'am2', 'libre', '2018-11-19', ''), +(3335, 50, 0, 206, '2019-01-17', 'pm1', 'libre', '2018-11-19', ''), +(3336, 50, 0, 206, '2019-01-17', 'pm2', 'libre', '2018-11-19', ''), +(3337, 50, 0, 206, '2019-01-18', 'am1', 'bloque', '2018-11-19', ''), +(3338, 50, 0, 206, '2019-01-18', 'am2', 'bloque', '2018-11-19', ''), +(3339, 50, 0, 206, '2019-01-18', 'pm1', 'bloque', '2018-11-19', ''), +(3340, 50, 0, 206, '2019-01-18', 'pm2', 'bloque', '2018-11-19', ''), +(3341, 50, 0, 206, '2019-01-21', 'am1', 'bloque', '2018-11-19', ''), +(3342, 50, 0, 206, '2019-01-21', 'am2', 'bloque', '2018-11-19', ''), +(3343, 50, 0, 206, '2019-01-21', 'pm1', 'bloque', '2018-11-19', ''), +(3344, 50, 0, 206, '2019-01-21', 'pm2', 'bloque', '2018-11-19', ''), +(3345, 50, 0, 206, '2019-01-22', 'am1', 'bloque', '2018-11-19', ''), +(3346, 50, 0, 206, '2019-01-22', 'am2', 'bloque', '2018-11-19', ''), +(3347, 50, 0, 206, '2019-01-22', 'pm1', 'bloque', '2018-11-19', ''), +(3348, 50, 0, 206, '2019-01-22', 'pm2', 'bloque', '2018-11-19', ''), +(3349, 50, 0, 206, '2019-01-23', 'am1', 'bloque', '2018-11-19', ''), +(3350, 50, 0, 206, '2019-01-23', 'am2', 'bloque', '2018-11-19', ''), +(3351, 50, 0, 206, '2019-01-23', 'pm1', 'bloque', '2018-11-19', ''), +(3352, 50, 0, 206, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(3353, 50, 0, 206, '2019-01-24', 'am1', 'bloque', '2018-11-19', ''), +(3354, 50, 0, 206, '2019-01-24', 'am2', 'bloque', '2018-11-19', ''), +(3355, 50, 0, 206, '2019-01-24', 'pm1', 'bloque', '2018-11-19', ''), +(3356, 50, 0, 206, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''), +(3357, 50, 0, 206, '2019-01-25', 'am1', 'bloque', '2018-11-19', ''), +(3358, 50, 0, 206, '2019-01-25', 'am2', 'bloque', '2018-11-19', ''), +(3359, 50, 0, 206, '2019-01-25', 'pm1', 'bloque', '2018-11-19', ''), +(3360, 50, 0, 206, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(3361, 50, 0, 206, '2019-01-28', 'am1', 'bloque', '2018-11-19', ''), +(3362, 50, 0, 206, '2019-01-28', 'am2', 'bloque', '2018-11-19', ''), +(3363, 50, 0, 206, '2019-01-28', 'pm1', 'bloque', '2018-11-19', ''), +(3364, 50, 0, 206, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(3365, 50, 0, 206, '2019-01-29', 'am1', 'bloque', '2018-11-19', ''), +(3366, 50, 0, 206, '2019-01-29', 'am2', 'bloque', '2018-11-19', ''), +(3367, 50, 0, 206, '2019-01-29', 'pm1', 'bloque', '2018-11-19', ''), +(3368, 50, 0, 206, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(3369, 50, 0, 206, '2019-01-30', 'am1', 'bloque', '2018-11-19', ''), +(3370, 50, 0, 206, '2019-01-30', 'am2', 'bloque', '2018-11-19', ''), +(3371, 50, 0, 206, '2019-01-30', 'pm1', 'bloque', '2018-11-19', ''), +(3372, 50, 0, 206, '2019-01-30', 'pm2', 'bloque', '2018-11-19', ''), +(3373, 50, 0, 206, '2019-01-31', 'am1', 'bloque', '2018-11-19', ''), +(3374, 50, 0, 206, '2019-01-31', 'am2', 'bloque', '2018-11-19', ''), +(3375, 50, 0, 206, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(3376, 50, 0, 206, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(3377, 50, 0, 206, '2019-02-01', 'am1', 'bloque', '2018-11-19', ''), +(3378, 50, 0, 206, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(3379, 50, 0, 206, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(3380, 50, 0, 206, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(3381, 50, 0, 206, '2019-02-04', 'am1', 'bloque', '2018-11-19', ''), +(3382, 50, 0, 206, '2019-02-04', 'am2', 'bloque', '2018-11-19', ''), +(3383, 50, 0, 206, '2019-02-04', 'pm1', 'bloque', '2018-11-19', ''), +(3384, 50, 0, 206, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(3385, 50, 0, 206, '2019-02-05', 'am1', 'bloque', '2018-11-19', ''), +(3386, 50, 0, 206, '2019-02-05', 'am2', 'bloque', '2018-11-19', ''), +(3387, 50, 0, 206, '2019-02-05', 'pm1', 'bloque', '2018-11-19', ''), +(3388, 50, 0, 206, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(3389, 50, 0, 206, '2019-02-06', 'am1', 'bloque', '2018-11-19', ''), +(3390, 50, 0, 206, '2019-02-06', 'am2', 'bloque', '2018-11-19', ''), +(3391, 50, 0, 206, '2019-02-06', 'pm1', 'bloque', '2018-11-19', ''), +(3392, 50, 0, 206, '2019-02-06', 'pm2', 'bloque', '2018-11-19', ''), +(3393, 50, 0, 206, '2019-02-07', 'am1', 'bloque', '2018-11-19', ''), +(3394, 50, 0, 206, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(3395, 50, 0, 206, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(3396, 50, 0, 206, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(3397, 50, 0, 206, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(3398, 50, 0, 206, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(3399, 50, 0, 206, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(3400, 50, 0, 206, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(3401, 51, 0, 20, '2019-01-17', 'am1', 'libre', '2018-12-18', 'cap'), +(3402, 51, 0, 20, '2019-01-17', 'am2', 'libre', '2018-11-19', ''), +(3403, 51, 121, 20, '2019-01-17', 'pm1', 'reserve', '2018-12-18', 'cap'), +(3404, 51, 122, 20, '2019-01-17', 'pm2', 'reserve', '2018-12-18', 'cap'), +(3405, 51, 0, 20, '2019-01-18', 'am1', 'bloque', '2018-12-14', 'cap'), +(3406, 51, 0, 20, '2019-01-18', 'am2', 'bloque', '2018-11-19', ''), +(3407, 51, 0, 20, '2019-01-18', 'pm1', 'bloque', '2018-11-19', ''), +(3408, 51, 0, 20, '2019-01-18', 'pm2', 'bloque', '2018-11-19', ''), +(3409, 51, 0, 20, '2019-01-21', 'am1', 'bloque', '2018-11-19', ''), +(3410, 51, 0, 20, '2019-01-21', 'am2', 'bloque', '2018-11-19', ''), +(3411, 51, 0, 20, '2019-01-21', 'pm1', 'bloque', '2018-11-19', ''), +(3412, 51, 0, 20, '2019-01-21', 'pm2', 'bloque', '2018-11-19', ''), +(3413, 51, 0, 20, '2019-01-22', 'am1', 'bloque', '2018-11-19', ''), +(3414, 51, 0, 20, '2019-01-22', 'am2', 'bloque', '2018-11-19', ''), +(3415, 51, 0, 20, '2019-01-22', 'pm1', 'bloque', '2018-11-19', ''), +(3416, 51, 0, 20, '2019-01-22', 'pm2', 'bloque', '2018-11-19', ''), +(3417, 51, 0, 20, '2019-01-23', 'am1', 'bloque', '2018-11-19', ''), +(3418, 51, 0, 20, '2019-01-23', 'am2', 'bloque', '2018-11-19', ''), +(3419, 51, 0, 20, '2019-01-23', 'pm1', 'bloque', '2018-11-19', ''), +(3420, 51, 0, 20, '2019-01-23', 'pm2', 'bloque', '2018-11-19', ''), +(3421, 51, 0, 20, '2019-01-24', 'am1', 'bloque', '2018-11-19', ''), +(3422, 51, 0, 20, '2019-01-24', 'am2', 'bloque', '2018-11-19', ''), +(3423, 51, 0, 20, '2019-01-24', 'pm1', 'bloque', '2018-11-19', ''), +(3424, 51, 0, 20, '2019-01-24', 'pm2', 'bloque', '2018-11-19', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(3425, 51, 0, 20, '2019-01-25', 'am1', 'bloque', '2018-11-19', ''), +(3426, 51, 0, 20, '2019-01-25', 'am2', 'bloque', '2018-11-19', ''), +(3427, 51, 0, 20, '2019-01-25', 'pm1', 'bloque', '2018-11-19', ''), +(3428, 51, 0, 20, '2019-01-25', 'pm2', 'bloque', '2018-11-19', ''), +(3429, 51, 0, 20, '2019-01-28', 'am1', 'bloque', '2018-11-19', ''), +(3430, 51, 0, 20, '2019-01-28', 'am2', 'bloque', '2018-11-19', ''), +(3431, 51, 0, 20, '2019-01-28', 'pm1', 'bloque', '2018-11-19', ''), +(3432, 51, 0, 20, '2019-01-28', 'pm2', 'bloque', '2018-11-19', ''), +(3433, 51, 0, 20, '2019-01-29', 'am1', 'bloque', '2018-11-19', ''), +(3434, 51, 0, 20, '2019-01-29', 'am2', 'bloque', '2018-11-19', ''), +(3435, 51, 0, 20, '2019-01-29', 'pm1', 'bloque', '2018-11-19', ''), +(3436, 51, 0, 20, '2019-01-29', 'pm2', 'bloque', '2018-11-19', ''), +(3437, 51, 0, 20, '2019-01-30', 'am1', 'bloque', '2018-11-19', ''), +(3438, 51, 0, 20, '2019-01-30', 'am2', 'bloque', '2018-11-19', ''), +(3439, 51, 0, 20, '2019-01-30', 'pm1', 'bloque', '2018-11-19', ''), +(3440, 51, 0, 20, '2019-01-30', 'pm2', 'bloque', '2018-11-19', ''), +(3441, 51, 0, 20, '2019-01-31', 'am1', 'bloque', '2018-11-19', ''), +(3442, 51, 0, 20, '2019-01-31', 'am2', 'bloque', '2018-11-19', ''), +(3443, 51, 0, 20, '2019-01-31', 'pm1', 'bloque', '2018-11-19', ''), +(3444, 51, 0, 20, '2019-01-31', 'pm2', 'bloque', '2018-11-19', ''), +(3445, 51, 0, 20, '2019-02-01', 'am1', 'bloque', '2018-11-19', ''), +(3446, 51, 0, 20, '2019-02-01', 'am2', 'bloque', '2018-11-19', ''), +(3447, 51, 0, 20, '2019-02-01', 'pm1', 'bloque', '2018-11-19', ''), +(3448, 51, 0, 20, '2019-02-01', 'pm2', 'bloque', '2018-11-19', ''), +(3449, 51, 0, 20, '2019-02-04', 'am1', 'bloque', '2018-11-19', ''), +(3450, 51, 0, 20, '2019-02-04', 'am2', 'bloque', '2018-11-19', ''), +(3451, 51, 0, 20, '2019-02-04', 'pm1', 'bloque', '2018-11-19', ''), +(3452, 51, 0, 20, '2019-02-04', 'pm2', 'bloque', '2018-11-19', ''), +(3453, 51, 0, 20, '2019-02-05', 'am1', 'bloque', '2018-11-19', ''), +(3454, 51, 0, 20, '2019-02-05', 'am2', 'bloque', '2018-11-19', ''), +(3455, 51, 0, 20, '2019-02-05', 'pm1', 'bloque', '2018-11-19', ''), +(3456, 51, 0, 20, '2019-02-05', 'pm2', 'bloque', '2018-11-19', ''), +(3457, 51, 0, 20, '2019-02-06', 'am1', 'bloque', '2018-11-19', ''), +(3458, 51, 0, 20, '2019-02-06', 'am2', 'bloque', '2018-11-19', ''), +(3459, 51, 0, 20, '2019-02-06', 'pm1', 'bloque', '2018-11-19', ''), +(3460, 51, 0, 20, '2019-02-06', 'pm2', 'bloque', '2018-11-19', ''), +(3461, 51, 0, 20, '2019-02-07', 'am1', 'bloque', '2018-11-19', ''), +(3462, 51, 0, 20, '2019-02-07', 'am2', 'bloque', '2018-11-19', ''), +(3463, 51, 0, 20, '2019-02-07', 'pm1', 'bloque', '2018-11-19', ''), +(3464, 51, 0, 20, '2019-02-07', 'pm2', 'bloque', '2018-11-19', ''), +(3465, 51, 0, 20, '2019-02-08', 'am1', 'bloque', '2018-11-19', ''), +(3466, 51, 0, 20, '2019-02-08', 'am2', 'bloque', '2018-11-19', ''), +(3467, 51, 0, 20, '2019-02-08', 'pm1', 'bloque', '2018-11-19', ''), +(3468, 51, 0, 20, '2019-02-08', 'pm2', 'bloque', '2018-11-19', ''), +(3469, 52, 0, 12, '2019-01-17', 'am1', 'bloque', '2018-11-26', 'ref'), +(3470, 52, 0, 12, '2019-01-17', 'am2', 'bloque', '2018-11-26', 'ref'), +(3471, 52, 0, 12, '2019-01-17', 'pm1', 'bloque', '2018-11-26', 'ref'), +(3472, 52, 0, 12, '2019-01-17', 'pm2', 'bloque', '2018-11-26', 'ref'), +(3473, 52, 0, 12, '2019-01-18', 'am1', 'libre', '2018-11-20', 'ref'), +(3474, 52, 127, 12, '2019-01-18', 'am2', 'reserve', '2018-12-19', 'ref'), +(3475, 52, 0, 12, '2019-01-18', 'pm1', 'bloque', '2018-11-20', ''), +(3476, 52, 0, 12, '2019-01-18', 'pm2', 'bloque', '2018-11-20', ''), +(3477, 52, 0, 12, '2019-01-21', 'am1', 'libre', '2018-11-26', 'ref'), +(3478, 52, 0, 12, '2019-01-21', 'am2', 'libre', '2018-11-26', 'ref'), +(3479, 52, 0, 12, '2019-01-21', 'pm1', 'bloque', '2018-11-26', 'ref'), +(3480, 52, 0, 12, '2019-01-21', 'pm2', 'bloque', '2018-11-20', ''), +(3481, 52, 0, 12, '2019-01-22', 'am1', 'bloque', '2018-11-20', ''), +(3482, 52, 0, 12, '2019-01-22', 'am2', 'bloque', '2018-11-20', ''), +(3483, 52, 0, 12, '2019-01-22', 'pm1', 'bloque', '2018-11-20', ''), +(3484, 52, 0, 12, '2019-01-22', 'pm2', 'bloque', '2018-11-20', ''), +(3485, 52, 0, 12, '2019-01-23', 'am1', 'bloque', '2018-11-20', ''), +(3486, 52, 0, 12, '2019-01-23', 'am2', 'bloque', '2018-11-20', ''), +(3487, 52, 0, 12, '2019-01-23', 'pm1', 'bloque', '2018-11-20', ''), +(3488, 52, 0, 12, '2019-01-23', 'pm2', 'bloque', '2018-11-20', ''), +(3489, 52, 0, 12, '2019-01-24', 'am1', 'bloque', '2018-11-20', ''), +(3490, 52, 0, 12, '2019-01-24', 'am2', 'bloque', '2018-11-20', ''), +(3491, 52, 0, 12, '2019-01-24', 'pm1', 'bloque', '2018-11-20', ''), +(3492, 52, 0, 12, '2019-01-24', 'pm2', 'bloque', '2018-11-20', ''), +(3493, 52, 0, 12, '2019-01-25', 'am1', 'bloque', '2018-11-20', ''), +(3494, 52, 0, 12, '2019-01-25', 'am2', 'bloque', '2018-11-20', ''), +(3495, 52, 0, 12, '2019-01-25', 'pm1', 'bloque', '2018-11-20', ''), +(3496, 52, 0, 12, '2019-01-25', 'pm2', 'bloque', '2018-11-20', ''), +(3497, 52, 0, 12, '2019-01-28', 'am1', 'bloque', '2018-11-20', ''), +(3498, 52, 0, 12, '2019-01-28', 'am2', 'bloque', '2018-11-20', ''), +(3499, 52, 0, 12, '2019-01-28', 'pm1', 'bloque', '2018-11-20', ''), +(3500, 52, 0, 12, '2019-01-28', 'pm2', 'bloque', '2018-11-20', ''), +(3501, 52, 0, 12, '2019-01-29', 'am1', 'bloque', '2018-11-20', ''), +(3502, 52, 0, 12, '2019-01-29', 'am2', 'bloque', '2018-11-20', ''), +(3503, 52, 0, 12, '2019-01-29', 'pm1', 'bloque', '2018-11-20', ''), +(3504, 52, 0, 12, '2019-01-29', 'pm2', 'bloque', '2018-11-20', ''), +(3505, 52, 0, 12, '2019-01-30', 'am1', 'bloque', '2018-11-20', ''), +(3506, 52, 0, 12, '2019-01-30', 'am2', 'bloque', '2018-11-20', ''), +(3507, 52, 0, 12, '2019-01-30', 'pm1', 'bloque', '2018-11-20', ''), +(3508, 52, 0, 12, '2019-01-30', 'pm2', 'bloque', '2018-11-20', ''), +(3509, 52, 0, 12, '2019-01-31', 'am1', 'bloque', '2018-11-20', ''), +(3510, 52, 0, 12, '2019-01-31', 'am2', 'bloque', '2018-11-20', ''), +(3511, 52, 0, 12, '2019-01-31', 'pm1', 'bloque', '2018-11-20', ''), +(3512, 52, 0, 12, '2019-01-31', 'pm2', 'bloque', '2018-11-20', ''), +(3513, 52, 0, 12, '2019-02-01', 'am1', 'bloque', '2018-11-20', ''), +(3514, 52, 0, 12, '2019-02-01', 'am2', 'bloque', '2018-11-20', ''), +(3515, 52, 0, 12, '2019-02-01', 'pm1', 'bloque', '2018-11-20', ''), +(3516, 52, 0, 12, '2019-02-01', 'pm2', 'bloque', '2018-11-20', ''), +(3517, 52, 0, 12, '2019-02-04', 'am1', 'bloque', '2018-11-20', ''), +(3518, 52, 0, 12, '2019-02-04', 'am2', 'bloque', '2018-11-20', ''), +(3519, 52, 0, 12, '2019-02-04', 'pm1', 'bloque', '2018-11-20', ''), +(3520, 52, 0, 12, '2019-02-04', 'pm2', 'bloque', '2018-11-20', ''), +(3521, 52, 0, 12, '2019-02-05', 'am1', 'bloque', '2018-11-20', ''), +(3522, 52, 0, 12, '2019-02-05', 'am2', 'bloque', '2018-11-20', ''), +(3523, 52, 0, 12, '2019-02-05', 'pm1', 'bloque', '2018-11-20', ''), +(3524, 52, 0, 12, '2019-02-05', 'pm2', 'bloque', '2018-11-20', ''), +(3525, 52, 0, 12, '2019-02-06', 'am1', 'bloque', '2018-11-20', ''), +(3526, 52, 0, 12, '2019-02-06', 'am2', 'bloque', '2018-11-20', ''), +(3527, 52, 0, 12, '2019-02-06', 'pm1', 'bloque', '2018-11-20', ''), +(3528, 52, 0, 12, '2019-02-06', 'pm2', 'bloque', '2018-11-20', ''), +(3529, 52, 0, 12, '2019-02-07', 'am1', 'bloque', '2018-11-20', ''), +(3530, 52, 0, 12, '2019-02-07', 'am2', 'bloque', '2018-11-20', ''), +(3531, 52, 0, 12, '2019-02-07', 'pm1', 'bloque', '2018-11-20', ''), +(3532, 52, 0, 12, '2019-02-07', 'pm2', 'bloque', '2018-11-20', ''), +(3533, 52, 0, 12, '2019-02-08', 'am1', 'bloque', '2018-11-20', ''), +(3534, 52, 0, 12, '2019-02-08', 'am2', 'bloque', '2018-11-20', ''), +(3535, 52, 0, 12, '2019-02-08', 'pm1', 'bloque', '2018-11-20', ''), +(3536, 52, 0, 12, '2019-02-08', 'pm2', 'bloque', '2018-11-20', ''), +(3537, 53, 0, 2, '2019-01-17', 'am1', 'libre', '2018-11-20', ''), +(3538, 53, 0, 2, '2019-01-17', 'am2', 'libre', '2018-11-20', ''), +(3539, 53, 246, 2, '2019-01-17', 'pm1', 'reserve', '2019-01-10', 'cap'), +(3540, 53, 0, 2, '2019-01-17', 'pm2', 'libre', '2018-11-20', ''), +(3541, 53, 0, 2, '2019-01-18', 'am1', 'bloque', '2018-11-20', ''), +(3542, 53, 0, 2, '2019-01-18', 'am2', 'bloque', '2018-11-20', ''), +(3543, 53, 0, 2, '2019-01-18', 'pm1', 'bloque', '2018-11-20', ''), +(3544, 53, 0, 2, '2019-01-18', 'pm2', 'bloque', '2018-11-20', ''), +(3545, 53, 0, 2, '2019-01-21', 'am1', 'bloque', '2018-11-20', ''), +(3546, 53, 0, 2, '2019-01-21', 'am2', 'bloque', '2018-11-20', ''), +(3547, 53, 0, 2, '2019-01-21', 'pm1', 'bloque', '2018-11-20', ''), +(3548, 53, 0, 2, '2019-01-21', 'pm2', 'bloque', '2018-11-20', ''), +(3549, 53, 0, 2, '2019-01-22', 'am1', 'bloque', '2018-11-20', ''), +(3550, 53, 0, 2, '2019-01-22', 'am2', 'bloque', '2018-11-20', ''), +(3551, 53, 0, 2, '2019-01-22', 'pm1', 'bloque', '2018-11-20', ''), +(3552, 53, 0, 2, '2019-01-22', 'pm2', 'bloque', '2018-11-20', ''), +(3553, 53, 0, 2, '2019-01-23', 'am1', 'bloque', '2018-11-20', ''), +(3554, 53, 0, 2, '2019-01-23', 'am2', 'bloque', '2018-11-20', ''), +(3555, 53, 0, 2, '2019-01-23', 'pm1', 'bloque', '2018-11-20', ''), +(3556, 53, 0, 2, '2019-01-23', 'pm2', 'bloque', '2018-11-20', ''), +(3557, 53, 0, 2, '2019-01-24', 'am1', 'bloque', '2018-11-20', ''), +(3558, 53, 0, 2, '2019-01-24', 'am2', 'bloque', '2018-11-20', ''), +(3559, 53, 0, 2, '2019-01-24', 'pm1', 'bloque', '2018-11-20', ''), +(3560, 53, 0, 2, '2019-01-24', 'pm2', 'bloque', '2018-11-20', ''), +(3561, 53, 0, 2, '2019-01-25', 'am1', 'bloque', '2018-11-20', ''), +(3562, 53, 0, 2, '2019-01-25', 'am2', 'bloque', '2018-11-20', ''), +(3563, 53, 0, 2, '2019-01-25', 'pm1', 'bloque', '2018-11-20', ''), +(3564, 53, 0, 2, '2019-01-25', 'pm2', 'bloque', '2018-11-20', ''), +(3565, 53, 0, 2, '2019-01-28', 'am1', 'bloque', '2018-11-20', ''), +(3566, 53, 0, 2, '2019-01-28', 'am2', 'bloque', '2018-11-20', ''), +(3567, 53, 0, 2, '2019-01-28', 'pm1', 'bloque', '2018-11-20', ''), +(3568, 53, 0, 2, '2019-01-28', 'pm2', 'bloque', '2018-11-20', ''), +(3569, 53, 0, 2, '2019-01-29', 'am1', 'bloque', '2018-11-20', ''), +(3570, 53, 0, 2, '2019-01-29', 'am2', 'bloque', '2018-11-20', ''), +(3571, 53, 0, 2, '2019-01-29', 'pm1', 'bloque', '2018-11-20', ''), +(3572, 53, 0, 2, '2019-01-29', 'pm2', 'bloque', '2018-11-20', ''), +(3573, 53, 0, 2, '2019-01-30', 'am1', 'bloque', '2018-11-20', ''), +(3574, 53, 0, 2, '2019-01-30', 'am2', 'bloque', '2018-11-20', ''), +(3575, 53, 0, 2, '2019-01-30', 'pm1', 'bloque', '2018-11-20', ''), +(3576, 53, 0, 2, '2019-01-30', 'pm2', 'bloque', '2018-11-20', ''), +(3577, 53, 0, 2, '2019-01-31', 'am1', 'bloque', '2018-11-20', ''), +(3578, 53, 0, 2, '2019-01-31', 'am2', 'bloque', '2018-11-20', ''), +(3579, 53, 0, 2, '2019-01-31', 'pm1', 'bloque', '2018-11-20', ''), +(3580, 53, 0, 2, '2019-01-31', 'pm2', 'bloque', '2018-11-20', ''), +(3581, 53, 0, 2, '2019-02-01', 'am1', 'bloque', '2018-11-20', ''), +(3582, 53, 0, 2, '2019-02-01', 'am2', 'bloque', '2018-11-20', ''), +(3583, 53, 0, 2, '2019-02-01', 'pm1', 'bloque', '2018-11-20', ''), +(3584, 53, 0, 2, '2019-02-01', 'pm2', 'bloque', '2018-11-20', ''), +(3585, 53, 0, 2, '2019-02-04', 'am1', 'bloque', '2018-11-20', ''), +(3586, 53, 0, 2, '2019-02-04', 'am2', 'bloque', '2018-11-20', ''), +(3587, 53, 0, 2, '2019-02-04', 'pm1', 'bloque', '2018-11-20', ''), +(3588, 53, 0, 2, '2019-02-04', 'pm2', 'bloque', '2018-11-20', ''), +(3589, 53, 0, 2, '2019-02-05', 'am1', 'bloque', '2018-11-20', ''), +(3590, 53, 0, 2, '2019-02-05', 'am2', 'bloque', '2018-11-20', ''), +(3591, 53, 0, 2, '2019-02-05', 'pm1', 'bloque', '2018-11-20', ''), +(3592, 53, 0, 2, '2019-02-05', 'pm2', 'bloque', '2018-11-20', ''), +(3593, 53, 0, 2, '2019-02-06', 'am1', 'bloque', '2018-11-20', ''), +(3594, 53, 0, 2, '2019-02-06', 'am2', 'bloque', '2018-11-20', ''), +(3595, 53, 0, 2, '2019-02-06', 'pm1', 'bloque', '2018-11-20', ''), +(3596, 53, 0, 2, '2019-02-06', 'pm2', 'bloque', '2018-11-20', ''), +(3597, 53, 0, 2, '2019-02-07', 'am1', 'bloque', '2018-11-20', ''), +(3598, 53, 0, 2, '2019-02-07', 'am2', 'bloque', '2018-11-20', ''), +(3599, 53, 0, 2, '2019-02-07', 'pm1', 'bloque', '2018-11-20', ''), +(3600, 53, 0, 2, '2019-02-07', 'pm2', 'bloque', '2018-11-20', ''), +(3601, 53, 0, 2, '2019-02-08', 'am1', 'bloque', '2018-11-20', ''), +(3602, 53, 0, 2, '2019-02-08', 'am2', 'bloque', '2018-11-20', ''), +(3603, 53, 0, 2, '2019-02-08', 'pm1', 'bloque', '2018-11-20', ''), +(3604, 53, 0, 2, '2019-02-08', 'pm2', 'bloque', '2018-11-20', ''), +(3605, 54, 0, 2, '2019-01-17', 'am1', 'libre', '2018-11-20', ''), +(3606, 54, 0, 2, '2019-01-17', 'am2', 'libre', '2018-11-20', ''), +(3607, 54, 327, 2, '2019-01-17', 'pm1', 'reserve', '2019-02-05', 'ref'), +(3608, 54, 0, 2, '2019-01-17', 'pm2', 'libre', '2018-11-20', ''), +(3609, 54, 0, 2, '2019-01-18', 'am1', 'bloque', '2018-11-20', ''), +(3610, 54, 0, 2, '2019-01-18', 'am2', 'bloque', '2018-11-20', ''), +(3611, 54, 0, 2, '2019-01-18', 'pm1', 'bloque', '2018-11-20', ''), +(3612, 54, 0, 2, '2019-01-18', 'pm2', 'bloque', '2018-11-20', ''), +(3613, 54, 0, 2, '2019-01-21', 'am1', 'bloque', '2018-11-20', ''), +(3614, 54, 0, 2, '2019-01-21', 'am2', 'bloque', '2018-11-20', ''), +(3615, 54, 0, 2, '2019-01-21', 'pm1', 'bloque', '2018-11-20', ''), +(3616, 54, 0, 2, '2019-01-21', 'pm2', 'bloque', '2018-11-20', ''), +(3617, 54, 0, 2, '2019-01-22', 'am1', 'bloque', '2018-11-20', ''), +(3618, 54, 0, 2, '2019-01-22', 'am2', 'bloque', '2018-11-20', ''), +(3619, 54, 0, 2, '2019-01-22', 'pm1', 'bloque', '2018-11-20', ''), +(3620, 54, 0, 2, '2019-01-22', 'pm2', 'bloque', '2018-11-20', ''), +(3621, 54, 0, 2, '2019-01-23', 'am1', 'bloque', '2018-11-20', ''), +(3622, 54, 0, 2, '2019-01-23', 'am2', 'bloque', '2018-11-20', ''), +(3623, 54, 0, 2, '2019-01-23', 'pm1', 'bloque', '2018-11-20', ''), +(3624, 54, 0, 2, '2019-01-23', 'pm2', 'bloque', '2018-11-20', ''), +(3625, 54, 0, 2, '2019-01-24', 'am1', 'bloque', '2018-11-20', ''), +(3626, 54, 0, 2, '2019-01-24', 'am2', 'bloque', '2018-11-20', ''), +(3627, 54, 0, 2, '2019-01-24', 'pm1', 'bloque', '2018-11-20', ''), +(3628, 54, 0, 2, '2019-01-24', 'pm2', 'bloque', '2018-11-20', ''), +(3629, 54, 0, 2, '2019-01-25', 'am1', 'bloque', '2018-11-20', ''), +(3630, 54, 0, 2, '2019-01-25', 'am2', 'bloque', '2018-11-20', ''), +(3631, 54, 0, 2, '2019-01-25', 'pm1', 'bloque', '2018-11-20', ''), +(3632, 54, 0, 2, '2019-01-25', 'pm2', 'bloque', '2018-11-20', ''), +(3633, 54, 0, 2, '2019-01-28', 'am1', 'bloque', '2018-11-20', ''), +(3634, 54, 0, 2, '2019-01-28', 'am2', 'bloque', '2018-11-20', ''), +(3635, 54, 0, 2, '2019-01-28', 'pm1', 'bloque', '2018-11-20', ''), +(3636, 54, 0, 2, '2019-01-28', 'pm2', 'bloque', '2018-11-20', ''), +(3637, 54, 0, 2, '2019-01-29', 'am1', 'bloque', '2018-11-20', ''), +(3638, 54, 0, 2, '2019-01-29', 'am2', 'bloque', '2018-11-20', ''), +(3639, 54, 0, 2, '2019-01-29', 'pm1', 'bloque', '2018-11-20', ''), +(3640, 54, 0, 2, '2019-01-29', 'pm2', 'bloque', '2018-11-20', ''), +(3641, 54, 0, 2, '2019-01-30', 'am1', 'bloque', '2018-11-20', ''), +(3642, 54, 0, 2, '2019-01-30', 'am2', 'bloque', '2018-11-20', ''), +(3643, 54, 0, 2, '2019-01-30', 'pm1', 'bloque', '2018-11-20', ''), +(3644, 54, 0, 2, '2019-01-30', 'pm2', 'bloque', '2018-11-20', ''), +(3645, 54, 0, 2, '2019-01-31', 'am1', 'bloque', '2018-11-20', ''), +(3646, 54, 0, 2, '2019-01-31', 'am2', 'bloque', '2018-11-20', ''), +(3647, 54, 332, 2, '2019-01-31', 'pm1', 'reserve', '2019-02-05', 'ref'), +(3648, 54, 0, 2, '2019-01-31', 'pm2', 'bloque', '2018-11-20', ''), +(3649, 54, 0, 2, '2019-02-01', 'am1', 'bloque', '2018-11-20', ''), +(3650, 54, 0, 2, '2019-02-01', 'am2', 'bloque', '2018-11-20', ''), +(3651, 54, 0, 2, '2019-02-01', 'pm1', 'bloque', '2018-11-20', ''), +(3652, 54, 0, 2, '2019-02-01', 'pm2', 'bloque', '2018-11-20', ''), +(3653, 54, 0, 2, '2019-02-04', 'am1', 'bloque', '2018-11-20', ''), +(3654, 54, 0, 2, '2019-02-04', 'am2', 'bloque', '2018-11-20', ''), +(3655, 54, 0, 2, '2019-02-04', 'pm1', 'bloque', '2018-11-20', ''), +(3656, 54, 0, 2, '2019-02-04', 'pm2', 'bloque', '2018-11-20', ''), +(3657, 54, 0, 2, '2019-02-05', 'am1', 'bloque', '2018-11-20', ''), +(3658, 54, 0, 2, '2019-02-05', 'am2', 'bloque', '2018-11-20', ''), +(3659, 54, 0, 2, '2019-02-05', 'pm1', 'bloque', '2018-11-20', ''), +(3660, 54, 0, 2, '2019-02-05', 'pm2', 'bloque', '2018-11-20', ''), +(3661, 54, 0, 2, '2019-02-06', 'am1', 'bloque', '2018-11-20', ''), +(3662, 54, 0, 2, '2019-02-06', 'am2', 'bloque', '2018-11-20', ''), +(3663, 54, 0, 2, '2019-02-06', 'pm1', 'bloque', '2018-11-20', ''), +(3664, 54, 0, 2, '2019-02-06', 'pm2', 'bloque', '2018-11-20', ''), +(3665, 54, 0, 2, '2019-02-07', 'am1', 'bloque', '2018-11-20', ''), +(3666, 54, 0, 2, '2019-02-07', 'am2', 'bloque', '2018-11-20', ''), +(3667, 54, 0, 2, '2019-02-07', 'pm1', 'bloque', '2018-11-20', ''), +(3668, 54, 0, 2, '2019-02-07', 'pm2', 'bloque', '2018-11-20', ''), +(3669, 54, 0, 2, '2019-02-08', 'am1', 'bloque', '2018-11-20', ''), +(3670, 54, 0, 2, '2019-02-08', 'am2', 'bloque', '2018-11-20', ''), +(3671, 54, 0, 2, '2019-02-08', 'pm1', 'bloque', '2018-11-20', ''), +(3672, 54, 0, 2, '2019-02-08', 'pm2', 'bloque', '2018-11-20', ''), +(3673, 55, 0, 2, '2019-01-17', 'am1', 'libre', '2018-11-20', ''), +(3674, 55, 0, 2, '2019-01-17', 'am2', 'libre', '2018-11-20', ''), +(3675, 55, 0, 2, '2019-01-17', 'pm1', 'libre', '2018-11-20', ''), +(3676, 55, 0, 2, '2019-01-17', 'pm2', 'libre', '2018-11-20', ''), +(3677, 55, 0, 2, '2019-01-18', 'am1', 'bloque', '2018-11-20', ''), +(3678, 55, 0, 2, '2019-01-18', 'am2', 'bloque', '2018-11-20', ''), +(3679, 55, 0, 2, '2019-01-18', 'pm1', 'bloque', '2018-11-20', ''), +(3680, 55, 0, 2, '2019-01-18', 'pm2', 'bloque', '2018-11-20', ''), +(3681, 55, 0, 2, '2019-01-21', 'am1', 'bloque', '2018-11-20', ''), +(3682, 55, 0, 2, '2019-01-21', 'am2', 'bloque', '2018-11-20', ''), +(3683, 55, 0, 2, '2019-01-21', 'pm1', 'bloque', '2018-11-20', ''), +(3684, 55, 0, 2, '2019-01-21', 'pm2', 'bloque', '2018-11-20', ''), +(3685, 55, 0, 2, '2019-01-22', 'am1', 'bloque', '2018-11-20', ''), +(3686, 55, 0, 2, '2019-01-22', 'am2', 'bloque', '2018-11-20', ''), +(3687, 55, 0, 2, '2019-01-22', 'pm1', 'bloque', '2018-11-20', ''), +(3688, 55, 0, 2, '2019-01-22', 'pm2', 'bloque', '2018-11-20', ''), +(3689, 55, 0, 2, '2019-01-23', 'am1', 'bloque', '2018-11-20', ''), +(3690, 55, 0, 2, '2019-01-23', 'am2', 'bloque', '2018-11-20', ''), +(3691, 55, 0, 2, '2019-01-23', 'pm1', 'bloque', '2018-11-20', ''), +(3692, 55, 0, 2, '2019-01-23', 'pm2', 'bloque', '2018-11-20', ''), +(3693, 55, 0, 2, '2019-01-24', 'am1', 'bloque', '2018-11-20', ''), +(3694, 55, 0, 2, '2019-01-24', 'am2', 'bloque', '2018-11-20', ''), +(3695, 55, 0, 2, '2019-01-24', 'pm1', 'bloque', '2018-11-20', ''), +(3696, 55, 0, 2, '2019-01-24', 'pm2', 'bloque', '2018-11-20', ''), +(3697, 55, 0, 2, '2019-01-25', 'am1', 'bloque', '2018-11-20', ''), +(3698, 55, 0, 2, '2019-01-25', 'am2', 'bloque', '2018-11-20', ''), +(3699, 55, 0, 2, '2019-01-25', 'pm1', 'bloque', '2018-11-20', ''), +(3700, 55, 0, 2, '2019-01-25', 'pm2', 'bloque', '2018-11-20', ''), +(3701, 55, 0, 2, '2019-01-28', 'am1', 'bloque', '2018-11-20', ''), +(3702, 55, 0, 2, '2019-01-28', 'am2', 'bloque', '2018-11-20', ''), +(3703, 55, 0, 2, '2019-01-28', 'pm1', 'bloque', '2018-11-20', ''), +(3704, 55, 0, 2, '2019-01-28', 'pm2', 'bloque', '2018-11-20', ''), +(3705, 55, 0, 2, '2019-01-29', 'am1', 'bloque', '2018-11-20', ''), +(3706, 55, 0, 2, '2019-01-29', 'am2', 'bloque', '2018-11-20', ''), +(3707, 55, 0, 2, '2019-01-29', 'pm1', 'bloque', '2018-11-20', ''), +(3708, 55, 0, 2, '2019-01-29', 'pm2', 'bloque', '2018-11-20', ''), +(3709, 55, 0, 2, '2019-01-30', 'am1', 'bloque', '2018-11-20', ''), +(3710, 55, 0, 2, '2019-01-30', 'am2', 'bloque', '2018-11-20', ''), +(3711, 55, 0, 2, '2019-01-30', 'pm1', 'bloque', '2018-11-20', ''), +(3712, 55, 0, 2, '2019-01-30', 'pm2', 'bloque', '2018-11-20', ''), +(3713, 55, 0, 2, '2019-01-31', 'am1', 'bloque', '2018-11-20', ''), +(3714, 55, 0, 2, '2019-01-31', 'am2', 'bloque', '2018-11-20', ''), +(3715, 55, 0, 2, '2019-01-31', 'pm1', 'bloque', '2018-11-20', ''), +(3716, 55, 0, 2, '2019-01-31', 'pm2', 'bloque', '2018-11-20', ''), +(3717, 55, 0, 2, '2019-02-01', 'am1', 'bloque', '2018-11-20', ''), +(3718, 55, 0, 2, '2019-02-01', 'am2', 'bloque', '2018-11-20', ''), +(3719, 55, 0, 2, '2019-02-01', 'pm1', 'bloque', '2018-11-20', ''), +(3720, 55, 0, 2, '2019-02-01', 'pm2', 'bloque', '2018-11-20', ''), +(3721, 55, 0, 2, '2019-02-04', 'am1', 'bloque', '2018-11-20', ''), +(3722, 55, 0, 2, '2019-02-04', 'am2', 'bloque', '2018-11-20', ''), +(3723, 55, 0, 2, '2019-02-04', 'pm1', 'bloque', '2018-11-20', ''), +(3724, 55, 0, 2, '2019-02-04', 'pm2', 'bloque', '2018-11-20', ''), +(3725, 55, 0, 2, '2019-02-05', 'am1', 'bloque', '2018-11-20', ''), +(3726, 55, 0, 2, '2019-02-05', 'am2', 'bloque', '2018-11-20', ''), +(3727, 55, 0, 2, '2019-02-05', 'pm1', 'bloque', '2018-11-20', ''), +(3728, 55, 0, 2, '2019-02-05', 'pm2', 'bloque', '2018-11-20', ''), +(3729, 55, 0, 2, '2019-02-06', 'am1', 'bloque', '2018-11-20', ''), +(3730, 55, 0, 2, '2019-02-06', 'am2', 'bloque', '2018-11-20', ''), +(3731, 55, 0, 2, '2019-02-06', 'pm1', 'bloque', '2018-11-20', ''), +(3732, 55, 0, 2, '2019-02-06', 'pm2', 'bloque', '2018-11-20', ''), +(3733, 55, 0, 2, '2019-02-07', 'am1', 'bloque', '2018-11-20', ''), +(3734, 55, 0, 2, '2019-02-07', 'am2', 'bloque', '2018-11-20', ''), +(3735, 55, 0, 2, '2019-02-07', 'pm1', 'bloque', '2018-11-20', ''), +(3736, 55, 0, 2, '2019-02-07', 'pm2', 'bloque', '2018-11-20', ''), +(3737, 55, 0, 2, '2019-02-08', 'am1', 'bloque', '2018-11-20', ''), +(3738, 55, 0, 2, '2019-02-08', 'am2', 'bloque', '2018-11-20', ''), +(3739, 55, 0, 2, '2019-02-08', 'pm1', 'bloque', '2018-11-20', ''), +(3740, 55, 0, 2, '2019-02-08', 'pm2', 'bloque', '2018-11-20', ''), +(3741, 56, 0, 2, '2019-01-17', 'am1', 'libre', '2018-11-20', ''), +(3742, 56, 0, 2, '2019-01-17', 'am2', 'libre', '2018-11-20', ''), +(3743, 56, 0, 2, '2019-01-17', 'pm1', 'libre', '2018-11-20', ''), +(3744, 56, 0, 2, '2019-01-17', 'pm2', 'libre', '2018-11-20', ''), +(3745, 56, 0, 2, '2019-01-18', 'am1', 'bloque', '2018-11-20', ''), +(3746, 56, 0, 2, '2019-01-18', 'am2', 'bloque', '2018-11-20', ''), +(3747, 56, 0, 2, '2019-01-18', 'pm1', 'bloque', '2018-11-20', ''), +(3748, 56, 0, 2, '2019-01-18', 'pm2', 'bloque', '2018-11-20', ''), +(3749, 56, 0, 2, '2019-01-21', 'am1', 'bloque', '2018-11-20', ''), +(3750, 56, 0, 2, '2019-01-21', 'am2', 'bloque', '2018-11-20', ''), +(3751, 56, 0, 2, '2019-01-21', 'pm1', 'bloque', '2018-11-20', ''), +(3752, 56, 0, 2, '2019-01-21', 'pm2', 'bloque', '2018-11-20', ''), +(3753, 56, 0, 2, '2019-01-22', 'am1', 'bloque', '2018-11-20', ''), +(3754, 56, 0, 2, '2019-01-22', 'am2', 'bloque', '2018-11-20', ''), +(3755, 56, 0, 2, '2019-01-22', 'pm1', 'bloque', '2018-11-20', ''), +(3756, 56, 0, 2, '2019-01-22', 'pm2', 'bloque', '2018-11-20', ''), +(3757, 56, 0, 2, '2019-01-23', 'am1', 'bloque', '2018-11-20', ''), +(3758, 56, 0, 2, '2019-01-23', 'am2', 'bloque', '2018-11-20', ''), +(3759, 56, 0, 2, '2019-01-23', 'pm1', 'bloque', '2018-11-20', ''), +(3760, 56, 0, 2, '2019-01-23', 'pm2', 'bloque', '2018-11-20', ''), +(3761, 56, 0, 2, '2019-01-24', 'am1', 'bloque', '2018-11-20', ''), +(3762, 56, 0, 2, '2019-01-24', 'am2', 'bloque', '2018-11-20', ''), +(3763, 56, 330, 2, '2019-01-24', 'pm1', 'reserve', '2019-02-05', 'ref'), +(3764, 56, 0, 2, '2019-01-24', 'pm2', 'bloque', '2018-11-20', ''), +(3765, 56, 0, 2, '2019-01-25', 'am1', 'bloque', '2018-11-20', ''), +(3766, 56, 0, 2, '2019-01-25', 'am2', 'bloque', '2018-11-20', ''), +(3767, 56, 0, 2, '2019-01-25', 'pm1', 'bloque', '2018-11-20', ''), +(3768, 56, 0, 2, '2019-01-25', 'pm2', 'bloque', '2018-11-20', ''), +(3769, 56, 0, 2, '2019-01-28', 'am1', 'bloque', '2018-11-20', ''), +(3770, 56, 0, 2, '2019-01-28', 'am2', 'bloque', '2018-11-20', ''), +(3771, 56, 0, 2, '2019-01-28', 'pm1', 'bloque', '2018-11-20', ''), +(3772, 56, 0, 2, '2019-01-28', 'pm2', 'bloque', '2018-11-20', ''), +(3773, 56, 0, 2, '2019-01-29', 'am1', 'bloque', '2018-11-20', ''), +(3774, 56, 0, 2, '2019-01-29', 'am2', 'bloque', '2018-11-20', ''), +(3775, 56, 0, 2, '2019-01-29', 'pm1', 'bloque', '2018-11-20', ''), +(3776, 56, 0, 2, '2019-01-29', 'pm2', 'bloque', '2018-11-20', ''), +(3777, 56, 0, 2, '2019-01-30', 'am1', 'bloque', '2018-11-20', ''), +(3778, 56, 0, 2, '2019-01-30', 'am2', 'bloque', '2018-11-20', ''), +(3779, 56, 0, 2, '2019-01-30', 'pm1', 'bloque', '2018-11-20', ''), +(3780, 56, 0, 2, '2019-01-30', 'pm2', 'bloque', '2018-11-20', ''), +(3781, 56, 0, 2, '2019-01-31', 'am1', 'bloque', '2018-11-20', ''), +(3782, 56, 0, 2, '2019-01-31', 'am2', 'bloque', '2018-11-20', ''), +(3783, 56, 0, 2, '2019-01-31', 'pm1', 'bloque', '2018-11-20', ''), +(3784, 56, 0, 2, '2019-01-31', 'pm2', 'bloque', '2018-11-20', ''), +(3785, 56, 0, 2, '2019-02-01', 'am1', 'bloque', '2018-11-20', ''), +(3786, 56, 0, 2, '2019-02-01', 'am2', 'bloque', '2018-11-20', ''), +(3787, 56, 0, 2, '2019-02-01', 'pm1', 'bloque', '2018-11-20', ''), +(3788, 56, 0, 2, '2019-02-01', 'pm2', 'bloque', '2018-11-20', ''), +(3789, 56, 0, 2, '2019-02-04', 'am1', 'bloque', '2018-11-20', ''), +(3790, 56, 0, 2, '2019-02-04', 'am2', 'bloque', '2018-11-20', ''), +(3791, 56, 0, 2, '2019-02-04', 'pm1', 'bloque', '2018-11-20', ''), +(3792, 56, 0, 2, '2019-02-04', 'pm2', 'bloque', '2018-11-20', ''), +(3793, 56, 0, 2, '2019-02-05', 'am1', 'bloque', '2018-11-20', ''), +(3794, 56, 0, 2, '2019-02-05', 'am2', 'bloque', '2018-11-20', ''), +(3795, 56, 0, 2, '2019-02-05', 'pm1', 'bloque', '2018-11-20', ''), +(3796, 56, 0, 2, '2019-02-05', 'pm2', 'bloque', '2018-11-20', ''), +(3797, 56, 0, 2, '2019-02-06', 'am1', 'bloque', '2018-11-20', ''), +(3798, 56, 0, 2, '2019-02-06', 'am2', 'bloque', '2018-11-20', ''), +(3799, 56, 0, 2, '2019-02-06', 'pm1', 'bloque', '2018-11-20', ''), +(3800, 56, 0, 2, '2019-02-06', 'pm2', 'bloque', '2018-11-20', ''), +(3801, 56, 0, 2, '2019-02-07', 'am1', 'bloque', '2018-11-20', ''), +(3802, 56, 0, 2, '2019-02-07', 'am2', 'bloque', '2018-11-20', ''), +(3803, 56, 0, 2, '2019-02-07', 'pm1', 'bloque', '2018-11-20', ''), +(3804, 56, 0, 2, '2019-02-07', 'pm2', 'bloque', '2018-11-20', ''), +(3805, 56, 0, 2, '2019-02-08', 'am1', 'bloque', '2018-11-20', ''), +(3806, 56, 0, 2, '2019-02-08', 'am2', 'bloque', '2018-11-20', ''), +(3807, 56, 0, 2, '2019-02-08', 'pm1', 'bloque', '2018-11-20', ''), +(3808, 56, 0, 2, '2019-02-08', 'pm2', 'bloque', '2018-11-20', ''), +(3809, 57, 218, 2, '2019-01-17', 'am1', 'reserve', '2019-01-08', 'cap'), +(3810, 57, 0, 2, '2019-01-17', 'am2', 'libre', '2018-11-20', ''), +(3811, 57, 0, 2, '2019-01-17', 'pm1', 'libre', '2018-11-20', ''), +(3812, 57, 0, 2, '2019-01-17', 'pm2', 'libre', '2018-11-20', ''), +(3813, 57, 0, 2, '2019-01-18', 'am1', 'bloque', '2018-11-20', ''), +(3814, 57, 0, 2, '2019-01-18', 'am2', 'bloque', '2018-11-20', ''), +(3815, 57, 0, 2, '2019-01-18', 'pm1', 'bloque', '2018-11-20', ''), +(3816, 57, 0, 2, '2019-01-18', 'pm2', 'bloque', '2018-11-20', ''), +(3817, 57, 0, 2, '2019-01-21', 'am1', 'bloque', '2018-11-20', ''), +(3818, 57, 0, 2, '2019-01-21', 'am2', 'bloque', '2018-11-20', ''), +(3819, 57, 0, 2, '2019-01-21', 'pm1', 'bloque', '2018-11-20', ''), +(3820, 57, 0, 2, '2019-01-21', 'pm2', 'bloque', '2018-11-20', ''), +(3821, 57, 0, 2, '2019-01-22', 'am1', 'bloque', '2018-11-20', ''), +(3822, 57, 0, 2, '2019-01-22', 'am2', 'bloque', '2018-11-20', ''), +(3823, 57, 0, 2, '2019-01-22', 'pm1', 'bloque', '2018-11-20', ''), +(3824, 57, 0, 2, '2019-01-22', 'pm2', 'bloque', '2018-11-20', ''), +(3825, 57, 0, 2, '2019-01-23', 'am1', 'bloque', '2018-11-20', ''), +(3826, 57, 0, 2, '2019-01-23', 'am2', 'bloque', '2018-11-20', ''), +(3827, 57, 0, 2, '2019-01-23', 'pm1', 'bloque', '2018-11-20', ''), +(3828, 57, 0, 2, '2019-01-23', 'pm2', 'bloque', '2018-11-20', ''), +(3829, 57, 0, 2, '2019-01-24', 'am1', 'bloque', '2018-11-20', ''), +(3830, 57, 0, 2, '2019-01-24', 'am2', 'bloque', '2018-11-20', ''), +(3831, 57, 0, 2, '2019-01-24', 'pm1', 'bloque', '2018-11-20', ''), +(3832, 57, 0, 2, '2019-01-24', 'pm2', 'bloque', '2018-11-20', ''), +(3833, 57, 0, 2, '2019-01-25', 'am1', 'bloque', '2018-11-20', ''), +(3834, 57, 0, 2, '2019-01-25', 'am2', 'bloque', '2018-11-20', ''), +(3835, 57, 0, 2, '2019-01-25', 'pm1', 'bloque', '2018-11-20', ''), +(3836, 57, 0, 2, '2019-01-25', 'pm2', 'bloque', '2018-11-20', ''), +(3837, 57, 0, 2, '2019-01-28', 'am1', 'bloque', '2018-11-20', ''), +(3838, 57, 0, 2, '2019-01-28', 'am2', 'bloque', '2018-11-20', ''), +(3839, 57, 0, 2, '2019-01-28', 'pm1', 'bloque', '2018-11-20', ''), +(3840, 57, 0, 2, '2019-01-28', 'pm2', 'bloque', '2018-11-20', ''), +(3841, 57, 0, 2, '2019-01-29', 'am1', 'bloque', '2018-11-20', ''), +(3842, 57, 0, 2, '2019-01-29', 'am2', 'bloque', '2018-11-20', ''), +(3843, 57, 0, 2, '2019-01-29', 'pm1', 'bloque', '2018-11-20', ''), +(3844, 57, 0, 2, '2019-01-29', 'pm2', 'bloque', '2018-11-20', ''), +(3845, 57, 0, 2, '2019-01-30', 'am1', 'bloque', '2018-11-20', ''), +(3846, 57, 0, 2, '2019-01-30', 'am2', 'bloque', '2018-11-20', ''), +(3847, 57, 0, 2, '2019-01-30', 'pm1', 'bloque', '2018-11-20', ''), +(3848, 57, 0, 2, '2019-01-30', 'pm2', 'bloque', '2018-11-20', ''), +(3849, 57, 0, 2, '2019-01-31', 'am1', 'bloque', '2018-11-20', ''), +(3850, 57, 0, 2, '2019-01-31', 'am2', 'bloque', '2018-11-20', ''), +(3851, 57, 0, 2, '2019-01-31', 'pm1', 'bloque', '2018-11-20', ''), +(3852, 57, 0, 2, '2019-01-31', 'pm2', 'bloque', '2018-11-20', ''), +(3853, 57, 0, 2, '2019-02-01', 'am1', 'bloque', '2018-11-20', ''), +(3854, 57, 0, 2, '2019-02-01', 'am2', 'bloque', '2018-11-20', ''), +(3855, 57, 0, 2, '2019-02-01', 'pm1', 'bloque', '2018-11-20', ''), +(3856, 57, 0, 2, '2019-02-01', 'pm2', 'bloque', '2018-11-20', ''), +(3857, 57, 0, 2, '2019-02-04', 'am1', 'bloque', '2018-11-20', ''), +(3858, 57, 0, 2, '2019-02-04', 'am2', 'bloque', '2018-11-20', ''), +(3859, 57, 0, 2, '2019-02-04', 'pm1', 'bloque', '2018-11-20', ''), +(3860, 57, 0, 2, '2019-02-04', 'pm2', 'bloque', '2018-11-20', ''), +(3861, 57, 0, 2, '2019-02-05', 'am1', 'bloque', '2018-11-20', ''), +(3862, 57, 0, 2, '2019-02-05', 'am2', 'bloque', '2018-11-20', ''), +(3863, 57, 0, 2, '2019-02-05', 'pm1', 'bloque', '2018-11-20', ''), +(3864, 57, 0, 2, '2019-02-05', 'pm2', 'bloque', '2018-11-20', ''), +(3865, 57, 0, 2, '2019-02-06', 'am1', 'bloque', '2018-11-20', ''), +(3866, 57, 0, 2, '2019-02-06', 'am2', 'bloque', '2018-11-20', ''), +(3867, 57, 0, 2, '2019-02-06', 'pm1', 'bloque', '2018-11-20', ''), +(3868, 57, 0, 2, '2019-02-06', 'pm2', 'bloque', '2018-11-20', ''), +(3869, 57, 0, 2, '2019-02-07', 'am1', 'bloque', '2018-11-20', ''), +(3870, 57, 0, 2, '2019-02-07', 'am2', 'bloque', '2018-11-20', ''), +(3871, 57, 0, 2, '2019-02-07', 'pm1', 'bloque', '2018-11-20', ''), +(3872, 57, 0, 2, '2019-02-07', 'pm2', 'bloque', '2018-11-20', ''), +(3873, 57, 0, 2, '2019-02-08', 'am1', 'bloque', '2018-11-20', ''), +(3874, 57, 0, 2, '2019-02-08', 'am2', 'bloque', '2018-11-20', ''), +(3875, 57, 0, 2, '2019-02-08', 'pm1', 'bloque', '2018-11-20', ''), +(3876, 57, 0, 2, '2019-02-08', 'pm2', 'bloque', '2018-11-20', ''), +(3877, 58, 0, 68, '2019-01-17', 'am1', 'libre', '2018-11-20', ''), +(3878, 58, 0, 68, '2019-01-17', 'am2', 'libre', '2018-11-20', ''), +(3879, 58, 0, 68, '2019-01-17', 'pm1', 'libre', '2018-11-20', ''), +(3880, 58, 0, 68, '2019-01-17', 'pm2', 'libre', '2018-11-20', ''), +(3881, 58, 0, 68, '2019-01-18', 'am1', 'bloque', '2018-11-20', ''), +(3882, 58, 0, 68, '2019-01-18', 'am2', 'bloque', '2018-11-20', ''), +(3883, 58, 0, 68, '2019-01-18', 'pm1', 'bloque', '2018-11-20', ''), +(3884, 58, 0, 68, '2019-01-18', 'pm2', 'bloque', '2018-11-20', ''), +(3885, 58, 0, 68, '2019-01-21', 'am1', 'bloque', '2018-11-20', ''), +(3886, 58, 0, 68, '2019-01-21', 'am2', 'bloque', '2018-11-20', ''), +(3887, 58, 0, 68, '2019-01-21', 'pm1', 'bloque', '2018-11-20', ''), +(3888, 58, 0, 68, '2019-01-21', 'pm2', 'bloque', '2018-11-20', ''), +(3889, 58, 0, 68, '2019-01-22', 'am1', 'bloque', '2018-11-20', ''), +(3890, 58, 0, 68, '2019-01-22', 'am2', 'bloque', '2018-11-20', ''), +(3891, 58, 0, 68, '2019-01-22', 'pm1', 'bloque', '2018-11-20', ''), +(3892, 58, 0, 68, '2019-01-22', 'pm2', 'bloque', '2018-11-20', ''), +(3893, 58, 0, 68, '2019-01-23', 'am1', 'bloque', '2018-11-20', ''), +(3894, 58, 0, 68, '2019-01-23', 'am2', 'bloque', '2018-11-20', ''), +(3895, 58, 0, 68, '2019-01-23', 'pm1', 'bloque', '2018-11-20', ''), +(3896, 58, 0, 68, '2019-01-23', 'pm2', 'bloque', '2018-11-20', ''), +(3897, 58, 0, 68, '2019-01-24', 'am1', 'bloque', '2018-11-20', ''), +(3898, 58, 0, 68, '2019-01-24', 'am2', 'bloque', '2018-11-20', ''), +(3899, 58, 0, 68, '2019-01-24', 'pm1', 'bloque', '2018-11-20', ''), +(3900, 58, 0, 68, '2019-01-24', 'pm2', 'bloque', '2018-11-20', ''), +(3901, 58, 0, 68, '2019-01-25', 'am1', 'bloque', '2018-11-20', ''), +(3902, 58, 0, 68, '2019-01-25', 'am2', 'bloque', '2018-11-20', ''), +(3903, 58, 0, 68, '2019-01-25', 'pm1', 'bloque', '2018-11-20', ''), +(3904, 58, 0, 68, '2019-01-25', 'pm2', 'bloque', '2018-11-20', ''), +(3905, 58, 0, 68, '2019-01-28', 'am1', 'bloque', '2018-11-20', ''), +(3906, 58, 0, 68, '2019-01-28', 'am2', 'bloque', '2018-11-20', ''), +(3907, 58, 0, 68, '2019-01-28', 'pm1', 'bloque', '2018-11-20', ''), +(3908, 58, 0, 68, '2019-01-28', 'pm2', 'bloque', '2018-11-20', ''), +(3909, 58, 0, 68, '2019-01-29', 'am1', 'bloque', '2018-11-20', ''), +(3910, 58, 0, 68, '2019-01-29', 'am2', 'bloque', '2018-11-20', ''), +(3911, 58, 0, 68, '2019-01-29', 'pm1', 'bloque', '2018-11-20', ''), +(3912, 58, 0, 68, '2019-01-29', 'pm2', 'bloque', '2018-11-20', ''), +(3913, 58, 0, 68, '2019-01-30', 'am1', 'bloque', '2018-11-20', ''), +(3914, 58, 0, 68, '2019-01-30', 'am2', 'bloque', '2018-11-20', ''), +(3915, 58, 0, 68, '2019-01-30', 'pm1', 'bloque', '2018-11-20', ''), +(3916, 58, 0, 68, '2019-01-30', 'pm2', 'bloque', '2018-11-20', ''), +(3917, 58, 0, 68, '2019-01-31', 'am1', 'bloque', '2018-11-20', ''), +(3918, 58, 0, 68, '2019-01-31', 'am2', 'bloque', '2018-11-20', ''), +(3919, 58, 0, 68, '2019-01-31', 'pm1', 'bloque', '2018-11-20', ''), +(3920, 58, 0, 68, '2019-01-31', 'pm2', 'bloque', '2018-11-20', ''), +(3921, 58, 0, 68, '2019-02-01', 'am1', 'bloque', '2018-11-20', ''), +(3922, 58, 0, 68, '2019-02-01', 'am2', 'bloque', '2018-11-20', ''), +(3923, 58, 0, 68, '2019-02-01', 'pm1', 'bloque', '2018-11-20', ''), +(3924, 58, 0, 68, '2019-02-01', 'pm2', 'bloque', '2018-11-20', ''), +(3925, 58, 0, 68, '2019-02-04', 'am1', 'bloque', '2018-11-20', ''), +(3926, 58, 0, 68, '2019-02-04', 'am2', 'bloque', '2018-11-20', ''), +(3927, 58, 0, 68, '2019-02-04', 'pm1', 'bloque', '2018-11-20', ''), +(3928, 58, 0, 68, '2019-02-04', 'pm2', 'bloque', '2018-11-20', ''), +(3929, 58, 0, 68, '2019-02-05', 'am1', 'bloque', '2018-11-20', ''), +(3930, 58, 0, 68, '2019-02-05', 'am2', 'bloque', '2018-11-20', ''), +(3931, 58, 0, 68, '2019-02-05', 'pm1', 'bloque', '2018-11-20', ''), +(3932, 58, 0, 68, '2019-02-05', 'pm2', 'bloque', '2018-11-20', ''), +(3933, 58, 0, 68, '2019-02-06', 'am1', 'bloque', '2018-11-20', ''), +(3934, 58, 0, 68, '2019-02-06', 'am2', 'bloque', '2018-11-20', ''), +(3935, 58, 0, 68, '2019-02-06', 'pm1', 'bloque', '2018-11-20', ''), +(3936, 58, 0, 68, '2019-02-06', 'pm2', 'bloque', '2018-11-20', ''), +(3937, 58, 0, 68, '2019-02-07', 'am1', 'bloque', '2018-11-20', ''), +(3938, 58, 0, 68, '2019-02-07', 'am2', 'bloque', '2018-11-20', ''), +(3939, 58, 0, 68, '2019-02-07', 'pm1', 'bloque', '2018-11-20', ''), +(3940, 58, 0, 68, '2019-02-07', 'pm2', 'bloque', '2018-11-20', ''), +(3941, 58, 0, 68, '2019-02-08', 'am1', 'bloque', '2018-11-20', ''), +(3942, 58, 0, 68, '2019-02-08', 'am2', 'bloque', '2018-11-20', ''), +(3943, 58, 0, 68, '2019-02-08', 'pm1', 'bloque', '2018-11-20', ''), +(3944, 58, 0, 68, '2019-02-08', 'pm2', 'bloque', '2018-11-20', ''), +(3945, 59, 0, 41, '2019-01-17', 'am1', 'libre', '2018-11-20', ''), +(3946, 59, 0, 41, '2019-01-17', 'am2', 'libre', '2018-11-20', ''), +(3947, 59, 16, 41, '2019-01-17', 'pm1', 'reserve', '2018-11-27', 'ref'), +(3948, 59, 0, 41, '2019-01-17', 'pm2', 'libre', '2018-11-20', ''), +(3949, 59, 0, 41, '2019-01-18', 'am1', 'bloque', '2018-11-20', ''), +(3950, 59, 0, 41, '2019-01-18', 'am2', 'bloque', '2018-11-20', ''), +(3951, 59, 0, 41, '2019-01-18', 'pm1', 'bloque', '2018-11-20', ''), +(3952, 59, 0, 41, '2019-01-18', 'pm2', 'bloque', '2018-11-20', ''), +(3953, 59, 0, 41, '2019-01-21', 'am1', 'bloque', '2018-11-20', ''), +(3954, 59, 0, 41, '2019-01-21', 'am2', 'bloque', '2018-11-20', ''), +(3955, 59, 0, 41, '2019-01-21', 'pm1', 'bloque', '2018-11-20', ''), +(3956, 59, 0, 41, '2019-01-21', 'pm2', 'bloque', '2018-11-20', ''), +(3957, 59, 0, 41, '2019-01-22', 'am1', 'bloque', '2018-11-20', ''), +(3958, 59, 0, 41, '2019-01-22', 'am2', 'bloque', '2018-11-20', ''), +(3959, 59, 0, 41, '2019-01-22', 'pm1', 'bloque', '2018-11-20', ''), +(3960, 59, 0, 41, '2019-01-22', 'pm2', 'bloque', '2018-11-20', ''), +(3961, 59, 0, 41, '2019-01-23', 'am1', 'bloque', '2018-11-20', ''), +(3962, 59, 0, 41, '2019-01-23', 'am2', 'bloque', '2018-11-20', ''), +(3963, 59, 0, 41, '2019-01-23', 'pm1', 'bloque', '2018-11-20', ''), +(3964, 59, 0, 41, '2019-01-23', 'pm2', 'bloque', '2018-11-20', ''), +(3965, 59, 0, 41, '2019-01-24', 'am1', 'bloque', '2018-11-20', ''), +(3966, 59, 0, 41, '2019-01-24', 'am2', 'bloque', '2018-11-20', ''), +(3967, 59, 0, 41, '2019-01-24', 'pm1', 'bloque', '2018-11-20', ''), +(3968, 59, 0, 41, '2019-01-24', 'pm2', 'bloque', '2018-11-20', ''), +(3969, 59, 0, 41, '2019-01-25', 'am1', 'bloque', '2018-11-20', ''), +(3970, 59, 0, 41, '2019-01-25', 'am2', 'bloque', '2018-11-20', ''), +(3971, 59, 0, 41, '2019-01-25', 'pm1', 'bloque', '2018-11-20', ''), +(3972, 59, 0, 41, '2019-01-25', 'pm2', 'bloque', '2018-11-20', ''), +(3973, 59, 0, 41, '2019-01-28', 'am1', 'bloque', '2018-11-20', ''), +(3974, 59, 0, 41, '2019-01-28', 'am2', 'bloque', '2018-11-20', ''), +(3975, 59, 0, 41, '2019-01-28', 'pm1', 'bloque', '2018-11-20', ''), +(3976, 59, 0, 41, '2019-01-28', 'pm2', 'bloque', '2018-11-20', ''), +(3977, 59, 0, 41, '2019-01-29', 'am1', 'bloque', '2018-11-20', ''), +(3978, 59, 0, 41, '2019-01-29', 'am2', 'bloque', '2018-11-20', ''), +(3979, 59, 0, 41, '2019-01-29', 'pm1', 'bloque', '2018-11-20', ''), +(3980, 59, 0, 41, '2019-01-29', 'pm2', 'bloque', '2018-11-20', ''), +(3981, 59, 0, 41, '2019-01-30', 'am1', 'bloque', '2018-11-20', ''), +(3982, 59, 0, 41, '2019-01-30', 'am2', 'bloque', '2018-11-20', ''), +(3983, 59, 0, 41, '2019-01-30', 'pm1', 'bloque', '2018-11-20', ''), +(3984, 59, 0, 41, '2019-01-30', 'pm2', 'bloque', '2018-11-20', ''), +(3985, 59, 0, 41, '2019-01-31', 'am1', 'bloque', '2018-11-20', ''), +(3986, 59, 0, 41, '2019-01-31', 'am2', 'bloque', '2018-11-20', ''), +(3987, 59, 0, 41, '2019-01-31', 'pm1', 'bloque', '2018-11-20', ''), +(3988, 59, 0, 41, '2019-01-31', 'pm2', 'bloque', '2018-11-20', ''), +(3989, 59, 0, 41, '2019-02-01', 'am1', 'bloque', '2018-11-20', ''), +(3990, 59, 0, 41, '2019-02-01', 'am2', 'bloque', '2018-11-20', ''), +(3991, 59, 0, 41, '2019-02-01', 'pm1', 'bloque', '2018-11-20', ''), +(3992, 59, 0, 41, '2019-02-01', 'pm2', 'bloque', '2018-11-20', ''), +(3993, 59, 0, 41, '2019-02-04', 'am1', 'bloque', '2018-11-20', ''), +(3994, 59, 0, 41, '2019-02-04', 'am2', 'bloque', '2018-11-20', ''), +(3995, 59, 0, 41, '2019-02-04', 'pm1', 'bloque', '2018-11-20', ''), +(3996, 59, 0, 41, '2019-02-04', 'pm2', 'bloque', '2018-11-20', ''), +(3997, 59, 0, 41, '2019-02-05', 'am1', 'bloque', '2018-11-20', ''), +(3998, 59, 0, 41, '2019-02-05', 'am2', 'bloque', '2018-11-20', ''), +(3999, 59, 0, 41, '2019-02-05', 'pm1', 'bloque', '2018-11-20', ''), +(4000, 59, 0, 41, '2019-02-05', 'pm2', 'bloque', '2018-11-20', ''), +(4001, 59, 0, 41, '2019-02-06', 'am1', 'bloque', '2018-11-20', ''), +(4002, 59, 0, 41, '2019-02-06', 'am2', 'bloque', '2018-11-20', ''), +(4003, 59, 0, 41, '2019-02-06', 'pm1', 'bloque', '2018-11-20', ''), +(4004, 59, 0, 41, '2019-02-06', 'pm2', 'bloque', '2018-11-20', ''), +(4005, 59, 0, 41, '2019-02-07', 'am1', 'bloque', '2018-11-20', ''), +(4006, 59, 0, 41, '2019-02-07', 'am2', 'bloque', '2018-11-20', ''), +(4007, 59, 0, 41, '2019-02-07', 'pm1', 'bloque', '2018-11-20', ''), +(4008, 59, 0, 41, '2019-02-07', 'pm2', 'bloque', '2018-11-20', ''), +(4009, 59, 0, 41, '2019-02-08', 'am1', 'bloque', '2018-11-20', ''), +(4010, 59, 0, 41, '2019-02-08', 'am2', 'bloque', '2018-11-20', ''), +(4011, 59, 0, 41, '2019-02-08', 'pm1', 'bloque', '2018-11-20', ''), +(4012, 59, 0, 41, '2019-02-08', 'pm2', 'bloque', '2018-11-20', ''), +(4013, 60, 0, 5, '2019-01-17', 'am1', 'libre', '2018-11-21', ''), +(4014, 60, 0, 5, '2019-01-17', 'am2', 'libre', '2018-11-21', ''), +(4015, 60, 0, 5, '2019-01-17', 'pm1', 'libre', '2018-11-21', ''), +(4016, 60, 0, 5, '2019-01-17', 'pm2', 'libre', '2018-11-21', ''), +(4017, 60, 0, 5, '2019-01-18', 'am1', 'bloque', '2018-11-21', ''), +(4018, 60, 0, 5, '2019-01-18', 'am2', 'bloque', '2018-11-21', ''), +(4019, 60, 0, 5, '2019-01-18', 'pm1', 'bloque', '2018-11-21', ''), +(4020, 60, 0, 5, '2019-01-18', 'pm2', 'bloque', '2018-11-21', ''), +(4021, 60, 0, 5, '2019-01-21', 'am1', 'bloque', '2018-11-21', ''), +(4022, 60, 0, 5, '2019-01-21', 'am2', 'bloque', '2018-11-21', ''), +(4023, 60, 0, 5, '2019-01-21', 'pm1', 'bloque', '2018-11-21', ''), +(4024, 60, 0, 5, '2019-01-21', 'pm2', 'bloque', '2018-11-21', ''), +(4025, 60, 0, 5, '2019-01-22', 'am1', 'bloque', '2018-11-21', ''), +(4026, 60, 0, 5, '2019-01-22', 'am2', 'bloque', '2018-11-21', ''), +(4027, 60, 0, 5, '2019-01-22', 'pm1', 'bloque', '2018-11-21', ''), +(4028, 60, 0, 5, '2019-01-22', 'pm2', 'bloque', '2018-11-21', ''), +(4029, 60, 0, 5, '2019-01-23', 'am1', 'bloque', '2018-11-21', ''), +(4030, 60, 0, 5, '2019-01-23', 'am2', 'bloque', '2018-11-21', ''), +(4031, 60, 0, 5, '2019-01-23', 'pm1', 'bloque', '2018-11-21', ''), +(4032, 60, 0, 5, '2019-01-23', 'pm2', 'bloque', '2018-11-21', ''), +(4033, 60, 0, 5, '2019-01-24', 'am1', 'bloque', '2018-11-21', ''), +(4034, 60, 0, 5, '2019-01-24', 'am2', 'bloque', '2018-11-21', ''), +(4035, 60, 0, 5, '2019-01-24', 'pm1', 'bloque', '2018-11-21', ''), +(4036, 60, 0, 5, '2019-01-24', 'pm2', 'bloque', '2018-11-21', ''), +(4037, 60, 0, 5, '2019-01-25', 'am1', 'bloque', '2018-11-21', ''), +(4038, 60, 0, 5, '2019-01-25', 'am2', 'bloque', '2018-11-21', ''), +(4039, 60, 0, 5, '2019-01-25', 'pm1', 'bloque', '2018-11-21', ''), +(4040, 60, 0, 5, '2019-01-25', 'pm2', 'bloque', '2018-11-21', ''), +(4041, 60, 0, 5, '2019-01-28', 'am1', 'bloque', '2018-11-21', ''), +(4042, 60, 0, 5, '2019-01-28', 'am2', 'bloque', '2018-11-21', ''), +(4043, 60, 0, 5, '2019-01-28', 'pm1', 'bloque', '2018-11-21', ''), +(4044, 60, 0, 5, '2019-01-28', 'pm2', 'bloque', '2018-11-21', ''), +(4045, 60, 0, 5, '2019-01-29', 'am1', 'bloque', '2018-11-21', ''), +(4046, 60, 0, 5, '2019-01-29', 'am2', 'bloque', '2018-11-21', ''), +(4047, 60, 0, 5, '2019-01-29', 'pm1', 'bloque', '2018-11-21', ''), +(4048, 60, 0, 5, '2019-01-29', 'pm2', 'bloque', '2018-11-21', ''), +(4049, 60, 0, 5, '2019-01-30', 'am1', 'bloque', '2018-11-21', ''), +(4050, 60, 0, 5, '2019-01-30', 'am2', 'bloque', '2018-11-21', ''), +(4051, 60, 0, 5, '2019-01-30', 'pm1', 'bloque', '2018-11-21', ''), +(4052, 60, 0, 5, '2019-01-30', 'pm2', 'bloque', '2018-11-21', ''), +(4053, 60, 0, 5, '2019-01-31', 'am1', 'bloque', '2018-11-21', ''), +(4054, 60, 0, 5, '2019-01-31', 'am2', 'bloque', '2018-11-21', ''), +(4055, 60, 0, 5, '2019-01-31', 'pm1', 'bloque', '2018-11-21', ''), +(4056, 60, 0, 5, '2019-01-31', 'pm2', 'bloque', '2018-11-21', ''), +(4057, 60, 0, 5, '2019-02-01', 'am1', 'bloque', '2018-11-21', ''), +(4058, 60, 0, 5, '2019-02-01', 'am2', 'bloque', '2018-11-21', ''), +(4059, 60, 0, 5, '2019-02-01', 'pm1', 'bloque', '2018-11-21', ''), +(4060, 60, 0, 5, '2019-02-01', 'pm2', 'bloque', '2018-11-21', ''), +(4061, 60, 0, 5, '2019-02-04', 'am1', 'bloque', '2018-11-21', ''), +(4062, 60, 0, 5, '2019-02-04', 'am2', 'bloque', '2018-11-21', ''), +(4063, 60, 0, 5, '2019-02-04', 'pm1', 'bloque', '2018-11-21', ''), +(4064, 60, 0, 5, '2019-02-04', 'pm2', 'bloque', '2018-11-21', ''), +(4065, 60, 0, 5, '2019-02-05', 'am1', 'bloque', '2018-11-21', ''), +(4066, 60, 0, 5, '2019-02-05', 'am2', 'bloque', '2018-11-21', ''), +(4067, 60, 0, 5, '2019-02-05', 'pm1', 'bloque', '2018-11-21', ''), +(4068, 60, 0, 5, '2019-02-05', 'pm2', 'bloque', '2018-11-21', ''), +(4069, 60, 0, 5, '2019-02-06', 'am1', 'bloque', '2018-11-21', ''), +(4070, 60, 0, 5, '2019-02-06', 'am2', 'bloque', '2018-11-21', ''), +(4071, 60, 0, 5, '2019-02-06', 'pm1', 'bloque', '2018-11-21', ''), +(4072, 60, 0, 5, '2019-02-06', 'pm2', 'bloque', '2018-11-21', ''), +(4073, 60, 0, 5, '2019-02-07', 'am1', 'bloque', '2018-11-21', ''), +(4074, 60, 0, 5, '2019-02-07', 'am2', 'bloque', '2018-11-21', ''), +(4075, 60, 0, 5, '2019-02-07', 'pm1', 'bloque', '2018-11-21', ''), +(4076, 60, 0, 5, '2019-02-07', 'pm2', 'bloque', '2018-11-21', ''), +(4077, 60, 0, 5, '2019-02-08', 'am1', 'bloque', '2018-11-21', ''), +(4078, 60, 0, 5, '2019-02-08', 'am2', 'bloque', '2018-11-21', ''), +(4079, 60, 0, 5, '2019-02-08', 'pm1', 'bloque', '2018-11-21', ''), +(4080, 60, 0, 5, '2019-02-08', 'pm2', 'bloque', '2018-11-21', ''), +(4081, 61, 0, 62, '2019-01-17', 'am1', 'libre', '2018-11-21', ''), +(4082, 61, 0, 62, '2019-01-17', 'am2', 'libre', '2018-11-21', ''), +(4083, 61, 188, 62, '2019-01-17', 'pm1', 'reserve', '2019-01-04', 'cap'), +(4084, 61, 189, 62, '2019-01-17', 'pm2', 'reserve', '2019-01-04', 'cap'), +(4085, 61, 0, 62, '2019-01-18', 'am1', 'bloque', '2018-11-21', ''), +(4086, 61, 0, 62, '2019-01-18', 'am2', 'bloque', '2018-11-21', ''), +(4087, 61, 0, 62, '2019-01-18', 'pm1', 'bloque', '2018-11-21', ''), +(4088, 61, 0, 62, '2019-01-18', 'pm2', 'bloque', '2018-11-21', ''), +(4089, 61, 0, 62, '2019-01-21', 'am1', 'bloque', '2018-11-21', ''), +(4090, 61, 0, 62, '2019-01-21', 'am2', 'bloque', '2018-11-21', ''), +(4091, 61, 0, 62, '2019-01-21', 'pm1', 'bloque', '2018-11-21', ''), +(4092, 61, 0, 62, '2019-01-21', 'pm2', 'bloque', '2018-11-21', ''), +(4093, 61, 0, 62, '2019-01-22', 'am1', 'bloque', '2018-11-21', ''), +(4094, 61, 0, 62, '2019-01-22', 'am2', 'bloque', '2018-11-21', ''), +(4095, 61, 0, 62, '2019-01-22', 'pm1', 'bloque', '2018-11-21', ''), +(4096, 61, 0, 62, '2019-01-22', 'pm2', 'bloque', '2018-11-21', ''), +(4097, 61, 0, 62, '2019-01-23', 'am1', 'bloque', '2018-11-21', ''), +(4098, 61, 0, 62, '2019-01-23', 'am2', 'bloque', '2018-11-21', ''), +(4099, 61, 0, 62, '2019-01-23', 'pm1', 'bloque', '2018-11-21', ''), +(4100, 61, 0, 62, '2019-01-23', 'pm2', 'bloque', '2018-11-21', ''), +(4101, 61, 0, 62, '2019-01-24', 'am1', 'bloque', '2018-11-21', ''), +(4102, 61, 0, 62, '2019-01-24', 'am2', 'bloque', '2018-11-21', ''), +(4103, 61, 0, 62, '2019-01-24', 'pm1', 'bloque', '2018-11-21', ''), +(4104, 61, 0, 62, '2019-01-24', 'pm2', 'bloque', '2018-11-21', ''), +(4105, 61, 0, 62, '2019-01-25', 'am1', 'bloque', '2018-11-21', ''), +(4106, 61, 0, 62, '2019-01-25', 'am2', 'bloque', '2018-11-21', ''), +(4107, 61, 0, 62, '2019-01-25', 'pm1', 'bloque', '2018-11-21', ''), +(4108, 61, 0, 62, '2019-01-25', 'pm2', 'bloque', '2018-11-21', ''), +(4109, 61, 0, 62, '2019-01-28', 'am1', 'bloque', '2018-11-21', ''), +(4110, 61, 0, 62, '2019-01-28', 'am2', 'bloque', '2018-11-21', ''), +(4111, 61, 0, 62, '2019-01-28', 'pm1', 'bloque', '2018-11-21', ''), +(4112, 61, 0, 62, '2019-01-28', 'pm2', 'bloque', '2018-11-21', ''), +(4113, 61, 0, 62, '2019-01-29', 'am1', 'bloque', '2018-11-21', ''), +(4114, 61, 0, 62, '2019-01-29', 'am2', 'bloque', '2018-11-21', ''), +(4115, 61, 0, 62, '2019-01-29', 'pm1', 'bloque', '2018-11-21', ''), +(4116, 61, 0, 62, '2019-01-29', 'pm2', 'bloque', '2018-11-21', ''), +(4117, 61, 0, 62, '2019-01-30', 'am1', 'bloque', '2018-11-21', ''), +(4118, 61, 0, 62, '2019-01-30', 'am2', 'bloque', '2018-11-21', ''), +(4119, 61, 0, 62, '2019-01-30', 'pm1', 'bloque', '2018-11-21', ''), +(4120, 61, 0, 62, '2019-01-30', 'pm2', 'bloque', '2018-11-21', ''), +(4121, 61, 0, 62, '2019-01-31', 'am1', 'bloque', '2018-11-21', ''), +(4122, 61, 0, 62, '2019-01-31', 'am2', 'bloque', '2018-11-21', ''), +(4123, 61, 0, 62, '2019-01-31', 'pm1', 'bloque', '2018-11-21', ''), +(4124, 61, 0, 62, '2019-01-31', 'pm2', 'bloque', '2018-11-21', ''), +(4125, 61, 0, 62, '2019-02-01', 'am1', 'bloque', '2018-11-21', ''), +(4126, 61, 0, 62, '2019-02-01', 'am2', 'bloque', '2018-11-21', ''), +(4127, 61, 0, 62, '2019-02-01', 'pm1', 'bloque', '2018-11-21', ''), +(4128, 61, 0, 62, '2019-02-01', 'pm2', 'bloque', '2018-11-21', ''), +(4129, 61, 0, 62, '2019-02-04', 'am1', 'bloque', '2018-11-21', ''), +(4130, 61, 0, 62, '2019-02-04', 'am2', 'bloque', '2018-11-21', ''), +(4131, 61, 0, 62, '2019-02-04', 'pm1', 'bloque', '2018-11-21', ''), +(4132, 61, 0, 62, '2019-02-04', 'pm2', 'bloque', '2018-11-21', ''), +(4133, 61, 0, 62, '2019-02-05', 'am1', 'bloque', '2018-11-21', ''), +(4134, 61, 0, 62, '2019-02-05', 'am2', 'bloque', '2018-11-21', ''), +(4135, 61, 0, 62, '2019-02-05', 'pm1', 'bloque', '2018-11-21', ''), +(4136, 61, 0, 62, '2019-02-05', 'pm2', 'bloque', '2018-11-21', ''), +(4137, 61, 0, 62, '2019-02-06', 'am1', 'bloque', '2018-11-21', ''), +(4138, 61, 0, 62, '2019-02-06', 'am2', 'bloque', '2018-11-21', ''), +(4139, 61, 0, 62, '2019-02-06', 'pm1', 'bloque', '2018-11-21', ''), +(4140, 61, 0, 62, '2019-02-06', 'pm2', 'bloque', '2018-11-21', ''), +(4141, 61, 0, 62, '2019-02-07', 'am1', 'bloque', '2018-11-21', ''), +(4142, 61, 0, 62, '2019-02-07', 'am2', 'bloque', '2018-11-21', ''), +(4143, 61, 0, 62, '2019-02-07', 'pm1', 'bloque', '2018-11-21', ''), +(4144, 61, 0, 62, '2019-02-07', 'pm2', 'bloque', '2018-11-21', ''), +(4145, 61, 0, 62, '2019-02-08', 'am1', 'bloque', '2018-11-21', ''), +(4146, 61, 0, 62, '2019-02-08', 'am2', 'bloque', '2018-11-21', ''), +(4147, 61, 0, 62, '2019-02-08', 'pm1', 'bloque', '2018-11-21', ''), +(4148, 61, 0, 62, '2019-02-08', 'pm2', 'bloque', '2018-11-21', ''), +(4149, 62, 0, 62, '2019-01-17', 'am1', 'libre', '2018-11-21', ''), +(4150, 62, 0, 62, '2019-01-17', 'am2', 'libre', '2018-11-21', ''), +(4151, 62, 0, 62, '2019-01-17', 'pm1', 'libre', '2018-11-21', ''), +(4152, 62, 0, 62, '2019-01-17', 'pm2', 'libre', '2018-11-21', ''), +(4153, 62, 0, 62, '2019-01-18', 'am1', 'bloque', '2018-11-21', ''), +(4154, 62, 0, 62, '2019-01-18', 'am2', 'bloque', '2018-11-21', ''), +(4155, 62, 0, 62, '2019-01-18', 'pm1', 'bloque', '2018-11-21', ''), +(4156, 62, 0, 62, '2019-01-18', 'pm2', 'bloque', '2018-11-21', ''), +(4157, 62, 0, 62, '2019-01-21', 'am1', 'bloque', '2018-11-21', ''), +(4158, 62, 0, 62, '2019-01-21', 'am2', 'bloque', '2018-11-21', ''), +(4159, 62, 0, 62, '2019-01-21', 'pm1', 'bloque', '2018-11-21', ''), +(4160, 62, 0, 62, '2019-01-21', 'pm2', 'bloque', '2018-11-21', ''), +(4161, 62, 0, 62, '2019-01-22', 'am1', 'bloque', '2018-11-21', ''), +(4162, 62, 0, 62, '2019-01-22', 'am2', 'bloque', '2018-11-21', ''), +(4163, 62, 0, 62, '2019-01-22', 'pm1', 'bloque', '2018-11-21', ''), +(4164, 62, 0, 62, '2019-01-22', 'pm2', 'bloque', '2018-11-21', ''), +(4165, 62, 0, 62, '2019-01-23', 'am1', 'bloque', '2018-11-21', ''), +(4166, 62, 0, 62, '2019-01-23', 'am2', 'bloque', '2018-11-21', ''), +(4167, 62, 0, 62, '2019-01-23', 'pm1', 'bloque', '2018-11-21', ''), +(4168, 62, 0, 62, '2019-01-23', 'pm2', 'bloque', '2018-11-21', ''), +(4169, 62, 0, 62, '2019-01-24', 'am1', 'bloque', '2018-11-21', ''), +(4170, 62, 0, 62, '2019-01-24', 'am2', 'bloque', '2018-11-21', ''), +(4171, 62, 0, 62, '2019-01-24', 'pm1', 'bloque', '2018-11-21', ''), +(4172, 62, 0, 62, '2019-01-24', 'pm2', 'bloque', '2018-11-21', ''), +(4173, 62, 0, 62, '2019-01-25', 'am1', 'bloque', '2018-11-21', ''), +(4174, 62, 0, 62, '2019-01-25', 'am2', 'bloque', '2018-11-21', ''), +(4175, 62, 0, 62, '2019-01-25', 'pm1', 'bloque', '2018-11-21', ''), +(4176, 62, 0, 62, '2019-01-25', 'pm2', 'bloque', '2018-11-21', ''), +(4177, 62, 0, 62, '2019-01-28', 'am1', 'bloque', '2018-11-21', ''), +(4178, 62, 0, 62, '2019-01-28', 'am2', 'bloque', '2018-11-21', ''), +(4179, 62, 0, 62, '2019-01-28', 'pm1', 'bloque', '2018-11-21', ''), +(4180, 62, 0, 62, '2019-01-28', 'pm2', 'bloque', '2018-11-21', ''), +(4181, 62, 0, 62, '2019-01-29', 'am1', 'bloque', '2018-11-21', ''), +(4182, 62, 0, 62, '2019-01-29', 'am2', 'bloque', '2018-11-21', ''), +(4183, 62, 0, 62, '2019-01-29', 'pm1', 'bloque', '2018-11-21', ''), +(4184, 62, 0, 62, '2019-01-29', 'pm2', 'bloque', '2018-11-21', ''), +(4185, 62, 0, 62, '2019-01-30', 'am1', 'bloque', '2018-11-21', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(4186, 62, 0, 62, '2019-01-30', 'am2', 'bloque', '2018-11-21', ''), +(4187, 62, 0, 62, '2019-01-30', 'pm1', 'bloque', '2018-11-21', ''), +(4188, 62, 0, 62, '2019-01-30', 'pm2', 'bloque', '2018-11-21', ''), +(4189, 62, 0, 62, '2019-01-31', 'am1', 'bloque', '2018-11-21', ''), +(4190, 62, 0, 62, '2019-01-31', 'am2', 'bloque', '2018-11-21', ''), +(4191, 62, 0, 62, '2019-01-31', 'pm1', 'bloque', '2018-11-21', ''), +(4192, 62, 0, 62, '2019-01-31', 'pm2', 'bloque', '2018-11-21', ''), +(4193, 62, 0, 62, '2019-02-01', 'am1', 'bloque', '2018-11-21', ''), +(4194, 62, 0, 62, '2019-02-01', 'am2', 'bloque', '2018-11-21', ''), +(4195, 62, 0, 62, '2019-02-01', 'pm1', 'bloque', '2018-11-21', ''), +(4196, 62, 0, 62, '2019-02-01', 'pm2', 'bloque', '2018-11-21', ''), +(4197, 62, 0, 62, '2019-02-04', 'am1', 'bloque', '2018-11-21', ''), +(4198, 62, 0, 62, '2019-02-04', 'am2', 'bloque', '2018-11-21', ''), +(4199, 62, 0, 62, '2019-02-04', 'pm1', 'bloque', '2018-11-21', ''), +(4200, 62, 0, 62, '2019-02-04', 'pm2', 'bloque', '2018-11-21', ''), +(4201, 62, 0, 62, '2019-02-05', 'am1', 'bloque', '2018-11-21', ''), +(4202, 62, 0, 62, '2019-02-05', 'am2', 'bloque', '2018-11-21', ''), +(4203, 62, 0, 62, '2019-02-05', 'pm1', 'bloque', '2018-11-21', ''), +(4204, 62, 0, 62, '2019-02-05', 'pm2', 'bloque', '2018-11-21', ''), +(4205, 62, 0, 62, '2019-02-06', 'am1', 'bloque', '2018-11-21', ''), +(4206, 62, 0, 62, '2019-02-06', 'am2', 'bloque', '2018-11-21', ''), +(4207, 62, 0, 62, '2019-02-06', 'pm1', 'bloque', '2018-11-21', ''), +(4208, 62, 0, 62, '2019-02-06', 'pm2', 'bloque', '2018-11-21', ''), +(4209, 62, 0, 62, '2019-02-07', 'am1', 'bloque', '2018-11-21', ''), +(4210, 62, 0, 62, '2019-02-07', 'am2', 'bloque', '2018-11-21', ''), +(4211, 62, 0, 62, '2019-02-07', 'pm1', 'bloque', '2018-11-21', ''), +(4212, 62, 0, 62, '2019-02-07', 'pm2', 'bloque', '2018-11-21', ''), +(4213, 62, 0, 62, '2019-02-08', 'am1', 'bloque', '2018-11-21', ''), +(4214, 62, 0, 62, '2019-02-08', 'am2', 'bloque', '2018-11-21', ''), +(4215, 62, 0, 62, '2019-02-08', 'pm1', 'bloque', '2018-11-21', ''), +(4216, 62, 0, 62, '2019-02-08', 'pm2', 'bloque', '2018-11-21', ''), +(4217, 63, 143, 140, '2019-01-17', 'am1', 'reserve', '2018-12-19', 'ref'), +(4218, 63, 0, 140, '2019-01-17', 'am2', 'libre', '2018-11-21', ''), +(4219, 63, 142, 140, '2019-01-17', 'pm1', 'reserve', '2018-12-19', 'ref'), +(4220, 63, 0, 140, '2019-01-17', 'pm2', 'libre', '2018-11-21', ''), +(4221, 63, 0, 140, '2019-01-18', 'am1', 'bloque', '2018-11-21', ''), +(4222, 63, 0, 140, '2019-01-18', 'am2', 'bloque', '2018-11-21', ''), +(4223, 63, 0, 140, '2019-01-18', 'pm1', 'bloque', '2018-11-21', ''), +(4224, 63, 0, 140, '2019-01-18', 'pm2', 'bloque', '2018-11-21', ''), +(4225, 63, 0, 140, '2019-01-21', 'am1', 'bloque', '2018-11-21', ''), +(4226, 63, 0, 140, '2019-01-21', 'am2', 'bloque', '2018-11-21', ''), +(4227, 63, 0, 140, '2019-01-21', 'pm1', 'bloque', '2018-11-21', ''), +(4228, 63, 0, 140, '2019-01-21', 'pm2', 'bloque', '2018-11-21', ''), +(4229, 63, 0, 140, '2019-01-22', 'am1', 'bloque', '2018-11-21', ''), +(4230, 63, 0, 140, '2019-01-22', 'am2', 'bloque', '2018-11-21', ''), +(4231, 63, 0, 140, '2019-01-22', 'pm1', 'bloque', '2018-11-21', ''), +(4232, 63, 0, 140, '2019-01-22', 'pm2', 'bloque', '2018-11-21', ''), +(4233, 63, 0, 140, '2019-01-23', 'am1', 'bloque', '2018-11-21', ''), +(4234, 63, 0, 140, '2019-01-23', 'am2', 'bloque', '2018-11-21', ''), +(4235, 63, 0, 140, '2019-01-23', 'pm1', 'bloque', '2018-11-21', ''), +(4236, 63, 0, 140, '2019-01-23', 'pm2', 'bloque', '2018-11-21', ''), +(4237, 63, 0, 140, '2019-01-24', 'am1', 'bloque', '2018-11-21', ''), +(4238, 63, 0, 140, '2019-01-24', 'am2', 'bloque', '2018-11-21', ''), +(4239, 63, 0, 140, '2019-01-24', 'pm1', 'bloque', '2018-11-21', ''), +(4240, 63, 0, 140, '2019-01-24', 'pm2', 'bloque', '2018-11-21', ''), +(4241, 63, 0, 140, '2019-01-25', 'am1', 'bloque', '2018-11-21', ''), +(4242, 63, 0, 140, '2019-01-25', 'am2', 'bloque', '2018-11-21', ''), +(4243, 63, 0, 140, '2019-01-25', 'pm1', 'bloque', '2018-11-21', ''), +(4244, 63, 0, 140, '2019-01-25', 'pm2', 'bloque', '2018-11-21', ''), +(4245, 63, 0, 140, '2019-01-28', 'am1', 'bloque', '2018-11-21', ''), +(4246, 63, 0, 140, '2019-01-28', 'am2', 'bloque', '2018-11-21', ''), +(4247, 63, 0, 140, '2019-01-28', 'pm1', 'bloque', '2018-11-21', ''), +(4248, 63, 0, 140, '2019-01-28', 'pm2', 'bloque', '2018-11-21', ''), +(4249, 63, 0, 140, '2019-01-29', 'am1', 'bloque', '2018-11-21', ''), +(4250, 63, 0, 140, '2019-01-29', 'am2', 'bloque', '2018-11-21', ''), +(4251, 63, 0, 140, '2019-01-29', 'pm1', 'bloque', '2018-11-21', ''), +(4252, 63, 0, 140, '2019-01-29', 'pm2', 'bloque', '2018-11-21', ''), +(4253, 63, 0, 140, '2019-01-30', 'am1', 'bloque', '2018-11-21', ''), +(4254, 63, 0, 140, '2019-01-30', 'am2', 'bloque', '2018-11-21', ''), +(4255, 63, 0, 140, '2019-01-30', 'pm1', 'bloque', '2018-11-21', ''), +(4256, 63, 0, 140, '2019-01-30', 'pm2', 'bloque', '2018-11-21', ''), +(4257, 63, 0, 140, '2019-01-31', 'am1', 'bloque', '2018-11-21', ''), +(4258, 63, 0, 140, '2019-01-31', 'am2', 'bloque', '2018-11-21', ''), +(4259, 63, 0, 140, '2019-01-31', 'pm1', 'bloque', '2018-11-21', ''), +(4260, 63, 0, 140, '2019-01-31', 'pm2', 'bloque', '2018-11-21', ''), +(4261, 63, 0, 140, '2019-02-01', 'am1', 'bloque', '2018-11-21', ''), +(4262, 63, 0, 140, '2019-02-01', 'am2', 'bloque', '2018-11-21', ''), +(4263, 63, 0, 140, '2019-02-01', 'pm1', 'bloque', '2018-11-21', ''), +(4264, 63, 0, 140, '2019-02-01', 'pm2', 'bloque', '2018-11-21', ''), +(4265, 63, 0, 140, '2019-02-04', 'am1', 'bloque', '2018-11-21', ''), +(4266, 63, 0, 140, '2019-02-04', 'am2', 'bloque', '2018-11-21', ''), +(4267, 63, 0, 140, '2019-02-04', 'pm1', 'bloque', '2018-11-21', ''), +(4268, 63, 0, 140, '2019-02-04', 'pm2', 'bloque', '2018-11-21', ''), +(4269, 63, 0, 140, '2019-02-05', 'am1', 'bloque', '2018-11-21', ''), +(4270, 63, 0, 140, '2019-02-05', 'am2', 'bloque', '2018-11-21', ''), +(4271, 63, 0, 140, '2019-02-05', 'pm1', 'bloque', '2018-11-21', ''), +(4272, 63, 0, 140, '2019-02-05', 'pm2', 'bloque', '2018-11-21', ''), +(4273, 63, 0, 140, '2019-02-06', 'am1', 'bloque', '2018-11-21', ''), +(4274, 63, 0, 140, '2019-02-06', 'am2', 'bloque', '2018-11-21', ''), +(4275, 63, 0, 140, '2019-02-06', 'pm1', 'bloque', '2018-11-21', ''), +(4276, 63, 0, 140, '2019-02-06', 'pm2', 'bloque', '2018-11-21', ''), +(4277, 63, 0, 140, '2019-02-07', 'am1', 'bloque', '2018-11-21', ''), +(4278, 63, 0, 140, '2019-02-07', 'am2', 'bloque', '2018-11-21', ''), +(4279, 63, 0, 140, '2019-02-07', 'pm1', 'bloque', '2018-11-21', ''), +(4280, 63, 0, 140, '2019-02-07', 'pm2', 'bloque', '2018-11-21', ''), +(4281, 63, 0, 140, '2019-02-08', 'am1', 'bloque', '2018-11-21', ''), +(4282, 63, 0, 140, '2019-02-08', 'am2', 'bloque', '2018-11-21', ''), +(4283, 63, 0, 140, '2019-02-08', 'pm1', 'bloque', '2018-11-21', ''), +(4284, 63, 0, 140, '2019-02-08', 'pm2', 'bloque', '2018-11-21', ''), +(4285, 64, 0, 140, '2019-01-17', 'am1', 'libre', '2018-11-21', ''), +(4286, 64, 0, 140, '2019-01-17', 'am2', 'libre', '2018-11-21', ''), +(4287, 64, 0, 140, '2019-01-17', 'pm1', 'libre', '2018-11-21', ''), +(4288, 64, 0, 140, '2019-01-17', 'pm2', 'libre', '2018-11-21', ''), +(4289, 64, 0, 140, '2019-01-18', 'am1', 'bloque', '2018-11-21', ''), +(4290, 64, 0, 140, '2019-01-18', 'am2', 'bloque', '2018-11-21', ''), +(4291, 64, 0, 140, '2019-01-18', 'pm1', 'bloque', '2018-11-21', ''), +(4292, 64, 0, 140, '2019-01-18', 'pm2', 'bloque', '2018-11-21', ''), +(4293, 64, 0, 140, '2019-01-21', 'am1', 'bloque', '2018-11-21', ''), +(4294, 64, 0, 140, '2019-01-21', 'am2', 'bloque', '2018-11-21', ''), +(4295, 64, 0, 140, '2019-01-21', 'pm1', 'bloque', '2018-11-21', ''), +(4296, 64, 0, 140, '2019-01-21', 'pm2', 'bloque', '2018-11-21', ''), +(4297, 64, 0, 140, '2019-01-22', 'am1', 'bloque', '2018-11-21', ''), +(4298, 64, 0, 140, '2019-01-22', 'am2', 'bloque', '2018-11-21', ''), +(4299, 64, 0, 140, '2019-01-22', 'pm1', 'bloque', '2018-11-21', ''), +(4300, 64, 0, 140, '2019-01-22', 'pm2', 'bloque', '2018-11-21', ''), +(4301, 64, 0, 140, '2019-01-23', 'am1', 'bloque', '2018-11-21', ''), +(4302, 64, 0, 140, '2019-01-23', 'am2', 'bloque', '2018-11-21', ''), +(4303, 64, 0, 140, '2019-01-23', 'pm1', 'bloque', '2018-11-21', ''), +(4304, 64, 0, 140, '2019-01-23', 'pm2', 'bloque', '2018-11-21', ''), +(4305, 64, 0, 140, '2019-01-24', 'am1', 'bloque', '2018-11-21', ''), +(4306, 64, 0, 140, '2019-01-24', 'am2', 'bloque', '2018-11-21', ''), +(4307, 64, 0, 140, '2019-01-24', 'pm1', 'bloque', '2018-11-21', ''), +(4308, 64, 0, 140, '2019-01-24', 'pm2', 'bloque', '2018-11-21', ''), +(4309, 64, 0, 140, '2019-01-25', 'am1', 'bloque', '2018-11-21', ''), +(4310, 64, 0, 140, '2019-01-25', 'am2', 'bloque', '2018-11-21', ''), +(4311, 64, 0, 140, '2019-01-25', 'pm1', 'bloque', '2018-11-21', ''), +(4312, 64, 0, 140, '2019-01-25', 'pm2', 'bloque', '2018-11-21', ''), +(4313, 64, 0, 140, '2019-01-28', 'am1', 'bloque', '2018-11-21', ''), +(4314, 64, 0, 140, '2019-01-28', 'am2', 'bloque', '2018-11-21', ''), +(4315, 64, 0, 140, '2019-01-28', 'pm1', 'bloque', '2018-11-21', ''), +(4316, 64, 0, 140, '2019-01-28', 'pm2', 'bloque', '2018-11-21', ''), +(4317, 64, 0, 140, '2019-01-29', 'am1', 'bloque', '2018-11-21', ''), +(4318, 64, 0, 140, '2019-01-29', 'am2', 'bloque', '2018-11-21', ''), +(4319, 64, 0, 140, '2019-01-29', 'pm1', 'bloque', '2018-11-21', ''), +(4320, 64, 0, 140, '2019-01-29', 'pm2', 'bloque', '2018-11-21', ''), +(4321, 64, 0, 140, '2019-01-30', 'am1', 'bloque', '2018-11-21', ''), +(4322, 64, 0, 140, '2019-01-30', 'am2', 'bloque', '2018-11-21', ''), +(4323, 64, 0, 140, '2019-01-30', 'pm1', 'bloque', '2018-11-21', ''), +(4324, 64, 0, 140, '2019-01-30', 'pm2', 'bloque', '2018-11-21', ''), +(4325, 64, 0, 140, '2019-01-31', 'am1', 'bloque', '2018-11-21', ''), +(4326, 64, 0, 140, '2019-01-31', 'am2', 'bloque', '2018-11-21', ''), +(4327, 64, 0, 140, '2019-01-31', 'pm1', 'bloque', '2018-11-21', ''), +(4328, 64, 0, 140, '2019-01-31', 'pm2', 'bloque', '2018-11-21', ''), +(4329, 64, 0, 140, '2019-02-01', 'am1', 'bloque', '2018-11-21', ''), +(4330, 64, 0, 140, '2019-02-01', 'am2', 'bloque', '2018-11-21', ''), +(4331, 64, 0, 140, '2019-02-01', 'pm1', 'bloque', '2018-11-21', ''), +(4332, 64, 0, 140, '2019-02-01', 'pm2', 'bloque', '2018-11-21', ''), +(4333, 64, 0, 140, '2019-02-04', 'am1', 'bloque', '2018-11-21', ''), +(4334, 64, 0, 140, '2019-02-04', 'am2', 'bloque', '2018-11-21', ''), +(4335, 64, 0, 140, '2019-02-04', 'pm1', 'bloque', '2018-11-21', ''), +(4336, 64, 0, 140, '2019-02-04', 'pm2', 'bloque', '2018-11-21', ''), +(4337, 64, 0, 140, '2019-02-05', 'am1', 'bloque', '2018-11-21', ''), +(4338, 64, 0, 140, '2019-02-05', 'am2', 'bloque', '2018-11-21', ''), +(4339, 64, 0, 140, '2019-02-05', 'pm1', 'bloque', '2018-11-21', ''), +(4340, 64, 0, 140, '2019-02-05', 'pm2', 'bloque', '2018-11-21', ''), +(4341, 64, 0, 140, '2019-02-06', 'am1', 'bloque', '2018-11-21', ''), +(4342, 64, 0, 140, '2019-02-06', 'am2', 'bloque', '2018-11-21', ''), +(4343, 64, 0, 140, '2019-02-06', 'pm1', 'bloque', '2018-11-21', ''), +(4344, 64, 0, 140, '2019-02-06', 'pm2', 'bloque', '2018-11-21', ''), +(4345, 64, 0, 140, '2019-02-07', 'am1', 'bloque', '2018-11-21', ''), +(4346, 64, 0, 140, '2019-02-07', 'am2', 'bloque', '2018-11-21', ''), +(4347, 64, 0, 140, '2019-02-07', 'pm1', 'bloque', '2018-11-21', ''), +(4348, 64, 0, 140, '2019-02-07', 'pm2', 'bloque', '2018-11-21', ''), +(4349, 64, 0, 140, '2019-02-08', 'am1', 'bloque', '2018-11-21', ''), +(4350, 64, 0, 140, '2019-02-08', 'am2', 'bloque', '2018-11-21', ''), +(4351, 64, 0, 140, '2019-02-08', 'pm1', 'bloque', '2018-11-21', ''), +(4352, 64, 0, 140, '2019-02-08', 'pm2', 'bloque', '2018-11-21', ''), +(4353, 65, 0, 394, '2019-01-17', 'am1', 'libre', '2018-11-21', ''), +(4354, 65, 0, 394, '2019-01-17', 'am2', 'libre', '2018-11-21', ''), +(4355, 65, 0, 394, '2019-01-17', 'pm1', 'libre', '2018-11-21', ''), +(4356, 65, 0, 394, '2019-01-17', 'pm2', 'libre', '2018-11-21', ''), +(4357, 65, 0, 394, '2019-01-18', 'am1', 'bloque', '2018-11-21', ''), +(4358, 65, 0, 394, '2019-01-18', 'am2', 'bloque', '2018-11-21', ''), +(4359, 65, 0, 394, '2019-01-18', 'pm1', 'bloque', '2018-11-21', ''), +(4360, 65, 0, 394, '2019-01-18', 'pm2', 'bloque', '2018-11-21', ''), +(4361, 65, 0, 394, '2019-01-21', 'am1', 'bloque', '2018-11-21', ''), +(4362, 65, 0, 394, '2019-01-21', 'am2', 'bloque', '2018-11-21', ''), +(4363, 65, 0, 394, '2019-01-21', 'pm1', 'bloque', '2018-11-21', ''), +(4364, 65, 0, 394, '2019-01-21', 'pm2', 'bloque', '2018-11-21', ''), +(4365, 65, 0, 394, '2019-01-22', 'am1', 'bloque', '2018-11-21', ''), +(4366, 65, 0, 394, '2019-01-22', 'am2', 'bloque', '2018-11-21', ''), +(4367, 65, 0, 394, '2019-01-22', 'pm1', 'bloque', '2018-11-21', ''), +(4368, 65, 0, 394, '2019-01-22', 'pm2', 'bloque', '2018-11-21', ''), +(4369, 65, 0, 394, '2019-01-23', 'am1', 'bloque', '2018-11-21', ''), +(4370, 65, 0, 394, '2019-01-23', 'am2', 'bloque', '2018-11-21', ''), +(4371, 65, 0, 394, '2019-01-23', 'pm1', 'bloque', '2018-11-21', ''), +(4372, 65, 0, 394, '2019-01-23', 'pm2', 'bloque', '2018-11-21', ''), +(4373, 65, 0, 394, '2019-01-24', 'am1', 'bloque', '2018-11-21', ''), +(4374, 65, 0, 394, '2019-01-24', 'am2', 'bloque', '2018-11-21', ''), +(4375, 65, 0, 394, '2019-01-24', 'pm1', 'bloque', '2018-11-21', ''), +(4376, 65, 0, 394, '2019-01-24', 'pm2', 'bloque', '2018-11-21', ''), +(4377, 65, 0, 394, '2019-01-25', 'am1', 'bloque', '2018-11-21', ''), +(4378, 65, 0, 394, '2019-01-25', 'am2', 'bloque', '2018-11-21', ''), +(4379, 65, 0, 394, '2019-01-25', 'pm1', 'bloque', '2018-11-21', ''), +(4380, 65, 0, 394, '2019-01-25', 'pm2', 'bloque', '2018-11-21', ''), +(4381, 65, 0, 394, '2019-01-28', 'am1', 'bloque', '2018-11-21', ''), +(4382, 65, 0, 394, '2019-01-28', 'am2', 'bloque', '2018-11-21', ''), +(4383, 65, 0, 394, '2019-01-28', 'pm1', 'bloque', '2018-11-21', ''), +(4384, 65, 0, 394, '2019-01-28', 'pm2', 'bloque', '2018-11-21', ''), +(4385, 65, 0, 394, '2019-01-29', 'am1', 'bloque', '2018-11-21', ''), +(4386, 65, 0, 394, '2019-01-29', 'am2', 'bloque', '2018-11-21', ''), +(4387, 65, 0, 394, '2019-01-29', 'pm1', 'bloque', '2018-11-21', ''), +(4388, 65, 0, 394, '2019-01-29', 'pm2', 'bloque', '2018-11-21', ''), +(4389, 65, 0, 394, '2019-01-30', 'am1', 'bloque', '2018-11-21', ''), +(4390, 65, 0, 394, '2019-01-30', 'am2', 'bloque', '2018-11-21', ''), +(4391, 65, 0, 394, '2019-01-30', 'pm1', 'bloque', '2018-11-21', ''), +(4392, 65, 0, 394, '2019-01-30', 'pm2', 'bloque', '2018-11-21', ''), +(4393, 65, 0, 394, '2019-01-31', 'am1', 'bloque', '2018-11-21', ''), +(4394, 65, 0, 394, '2019-01-31', 'am2', 'bloque', '2018-11-21', ''), +(4395, 65, 0, 394, '2019-01-31', 'pm1', 'bloque', '2018-11-21', ''), +(4396, 65, 0, 394, '2019-01-31', 'pm2', 'bloque', '2018-11-21', ''), +(4397, 65, 0, 394, '2019-02-01', 'am1', 'bloque', '2018-11-21', ''), +(4398, 65, 0, 394, '2019-02-01', 'am2', 'bloque', '2018-11-21', ''), +(4399, 65, 0, 394, '2019-02-01', 'pm1', 'bloque', '2018-11-21', ''), +(4400, 65, 0, 394, '2019-02-01', 'pm2', 'bloque', '2018-11-21', ''), +(4401, 65, 0, 394, '2019-02-04', 'am1', 'bloque', '2018-11-21', ''), +(4402, 65, 0, 394, '2019-02-04', 'am2', 'bloque', '2018-11-21', ''), +(4403, 65, 0, 394, '2019-02-04', 'pm1', 'bloque', '2018-11-21', ''), +(4404, 65, 0, 394, '2019-02-04', 'pm2', 'bloque', '2018-11-21', ''), +(4405, 65, 0, 394, '2019-02-05', 'am1', 'bloque', '2018-11-21', ''), +(4406, 65, 0, 394, '2019-02-05', 'am2', 'bloque', '2018-11-21', ''), +(4407, 65, 0, 394, '2019-02-05', 'pm1', 'bloque', '2018-11-21', ''), +(4408, 65, 0, 394, '2019-02-05', 'pm2', 'bloque', '2018-11-21', ''), +(4409, 65, 0, 394, '2019-02-06', 'am1', 'bloque', '2018-11-21', ''), +(4410, 65, 0, 394, '2019-02-06', 'am2', 'bloque', '2018-11-21', ''), +(4411, 65, 0, 394, '2019-02-06', 'pm1', 'bloque', '2018-11-21', ''), +(4412, 65, 0, 394, '2019-02-06', 'pm2', 'bloque', '2018-11-21', ''), +(4413, 65, 0, 394, '2019-02-07', 'am1', 'bloque', '2018-11-21', ''), +(4414, 65, 0, 394, '2019-02-07', 'am2', 'bloque', '2018-11-21', ''), +(4415, 65, 0, 394, '2019-02-07', 'pm1', 'bloque', '2018-11-21', ''), +(4416, 65, 0, 394, '2019-02-07', 'pm2', 'bloque', '2018-11-21', ''), +(4417, 65, 0, 394, '2019-02-08', 'am1', 'bloque', '2018-11-21', ''), +(4418, 65, 0, 394, '2019-02-08', 'am2', 'bloque', '2018-11-21', ''), +(4419, 65, 0, 394, '2019-02-08', 'pm1', 'bloque', '2018-11-21', ''), +(4420, 65, 0, 394, '2019-02-08', 'pm2', 'bloque', '2018-11-21', ''), +(4421, 66, 0, 67, '2019-01-17', 'am1', 'bloque', '2018-11-22', 'ref'), +(4422, 66, 0, 67, '2019-01-17', 'am2', 'bloque', '2018-11-22', 'ref'), +(4423, 66, 271, 67, '2019-01-17', 'pm1', 'reserve', '2019-01-14', 'ref'), +(4424, 66, 0, 67, '2019-01-17', 'pm2', 'libre', '2018-12-10', 'ref'), +(4425, 66, 0, 67, '2019-01-18', 'am1', 'libre', '2018-11-22', 'ref'), +(4426, 66, 0, 67, '2019-01-18', 'am2', 'libre', '2018-11-22', 'ref'), +(4427, 66, 0, 67, '2019-01-18', 'pm1', 'bloque', '2018-11-22', ''), +(4428, 66, 0, 67, '2019-01-18', 'pm2', 'bloque', '2018-11-22', ''), +(4429, 66, 0, 67, '2019-01-21', 'am1', 'bloque', '2018-11-22', ''), +(4430, 66, 0, 67, '2019-01-21', 'am2', 'bloque', '2018-11-22', ''), +(4431, 66, 0, 67, '2019-01-21', 'pm1', 'bloque', '2018-11-22', ''), +(4432, 66, 0, 67, '2019-01-21', 'pm2', 'bloque', '2018-11-22', ''), +(4433, 66, 0, 67, '2019-01-22', 'am1', 'bloque', '2018-11-22', ''), +(4434, 66, 0, 67, '2019-01-22', 'am2', 'bloque', '2018-11-22', ''), +(4435, 66, 0, 67, '2019-01-22', 'pm1', 'bloque', '2018-11-22', ''), +(4436, 66, 0, 67, '2019-01-22', 'pm2', 'bloque', '2018-11-22', ''), +(4437, 66, 0, 67, '2019-01-23', 'am1', 'libre', '2018-11-27', 'ref'), +(4438, 66, 0, 67, '2019-01-23', 'am2', 'libre', '2018-11-27', 'ref'), +(4439, 66, 0, 67, '2019-01-23', 'pm1', 'bloque', '2018-11-22', ''), +(4440, 66, 0, 67, '2019-01-23', 'pm2', 'bloque', '2018-11-22', ''), +(4441, 66, 0, 67, '2019-01-24', 'am1', 'bloque', '2018-11-22', ''), +(4442, 66, 0, 67, '2019-01-24', 'am2', 'bloque', '2018-11-22', ''), +(4443, 66, 0, 67, '2019-01-24', 'pm1', 'bloque', '2018-11-22', ''), +(4444, 66, 0, 67, '2019-01-24', 'pm2', 'bloque', '2018-11-22', ''), +(4445, 66, 0, 67, '2019-01-25', 'am1', 'libre', '2018-11-27', 'ref'), +(4446, 66, 0, 67, '2019-01-25', 'am2', 'libre', '2018-11-27', 'ref'), +(4447, 66, 0, 67, '2019-01-25', 'pm1', 'bloque', '2018-11-22', ''), +(4448, 66, 0, 67, '2019-01-25', 'pm2', 'bloque', '2018-11-22', ''), +(4449, 66, 0, 67, '2019-01-28', 'am1', 'bloque', '2018-11-22', ''), +(4450, 66, 0, 67, '2019-01-28', 'am2', 'bloque', '2018-11-22', ''), +(4451, 66, 0, 67, '2019-01-28', 'pm1', 'bloque', '2018-11-22', ''), +(4452, 66, 0, 67, '2019-01-28', 'pm2', 'bloque', '2018-11-22', ''), +(4453, 66, 0, 67, '2019-01-29', 'am1', 'bloque', '2018-11-22', ''), +(4454, 66, 0, 67, '2019-01-29', 'am2', 'bloque', '2018-11-22', ''), +(4455, 66, 0, 67, '2019-01-29', 'pm1', 'bloque', '2018-11-22', ''), +(4456, 66, 0, 67, '2019-01-29', 'pm2', 'bloque', '2018-11-22', ''), +(4457, 66, 0, 67, '2019-01-30', 'am1', 'bloque', '2018-11-22', ''), +(4458, 66, 0, 67, '2019-01-30', 'am2', 'bloque', '2018-11-22', ''), +(4459, 66, 0, 67, '2019-01-30', 'pm1', 'bloque', '2018-11-22', ''), +(4460, 66, 0, 67, '2019-01-30', 'pm2', 'bloque', '2018-11-22', ''), +(4461, 66, 0, 67, '2019-01-31', 'am1', 'bloque', '2018-11-22', ''), +(4462, 66, 0, 67, '2019-01-31', 'am2', 'bloque', '2018-11-22', ''), +(4463, 66, 0, 67, '2019-01-31', 'pm1', 'bloque', '2018-11-22', ''), +(4464, 66, 0, 67, '2019-01-31', 'pm2', 'bloque', '2018-11-22', ''), +(4465, 66, 0, 67, '2019-02-01', 'am1', 'bloque', '2018-11-22', ''), +(4466, 66, 0, 67, '2019-02-01', 'am2', 'bloque', '2018-11-22', ''), +(4467, 66, 0, 67, '2019-02-01', 'pm1', 'bloque', '2018-11-22', ''), +(4468, 66, 0, 67, '2019-02-01', 'pm2', 'bloque', '2018-11-22', ''), +(4469, 66, 0, 67, '2019-02-04', 'am1', 'libre', '2018-11-27', 'ref'), +(4470, 66, 0, 67, '2019-02-04', 'am2', 'libre', '2018-11-27', 'ref'), +(4471, 66, 0, 67, '2019-02-04', 'pm1', 'bloque', '2018-11-22', ''), +(4472, 66, 0, 67, '2019-02-04', 'pm2', 'bloque', '2018-11-22', ''), +(4473, 66, 0, 67, '2019-02-05', 'am1', 'bloque', '2018-11-22', ''), +(4474, 66, 0, 67, '2019-02-05', 'am2', 'bloque', '2018-11-22', ''), +(4475, 66, 0, 67, '2019-02-05', 'pm1', 'bloque', '2018-11-22', ''), +(4476, 66, 0, 67, '2019-02-05', 'pm2', 'bloque', '2018-11-22', ''), +(4477, 66, 0, 67, '2019-02-06', 'am1', 'libre', '2018-11-27', 'ref'), +(4478, 66, 0, 67, '2019-02-06', 'am2', 'libre', '2018-11-27', 'ref'), +(4479, 66, 0, 67, '2019-02-06', 'pm1', 'bloque', '2018-11-22', ''), +(4480, 66, 0, 67, '2019-02-06', 'pm2', 'bloque', '2018-11-22', ''), +(4481, 66, 0, 67, '2019-02-07', 'am1', 'bloque', '2018-11-22', ''), +(4482, 66, 0, 67, '2019-02-07', 'am2', 'bloque', '2018-11-22', ''), +(4483, 66, 0, 67, '2019-02-07', 'pm1', 'bloque', '2018-11-22', ''), +(4484, 66, 0, 67, '2019-02-07', 'pm2', 'bloque', '2018-11-22', ''), +(4485, 66, 0, 67, '2019-02-08', 'am1', 'libre', '2018-11-27', 'ref'), +(4486, 66, 0, 67, '2019-02-08', 'am2', 'libre', '2018-11-27', 'ref'), +(4487, 66, 0, 67, '2019-02-08', 'pm1', 'bloque', '2018-11-22', ''), +(4488, 66, 0, 67, '2019-02-08', 'pm2', 'bloque', '2018-11-22', ''), +(4489, 67, 0, 67, '2019-01-17', 'am1', 'bloque', '2018-11-22', 'ref'), +(4490, 67, 0, 67, '2019-01-17', 'am2', 'bloque', '2018-11-22', 'ref'), +(4491, 67, 0, 67, '2019-01-17', 'pm1', 'bloque', '2018-12-20', 'ref'), +(4492, 67, 158, 67, '2019-01-17', 'pm2', 'reserve', '2018-12-20', 'ref'), +(4493, 67, 0, 67, '2019-01-18', 'am1', 'libre', '2018-11-22', 'ref'), +(4494, 67, 0, 67, '2019-01-18', 'am2', 'libre', '2018-11-22', 'ref'), +(4495, 67, 0, 67, '2019-01-18', 'pm1', 'bloque', '2018-11-22', ''), +(4496, 67, 0, 67, '2019-01-18', 'pm2', 'bloque', '2018-11-22', ''), +(4497, 67, 0, 67, '2019-01-21', 'am1', 'libre', '2018-11-22', 'ref'), +(4498, 67, 0, 67, '2019-01-21', 'am2', 'libre', '2018-11-22', 'ref'), +(4499, 67, 0, 67, '2019-01-21', 'pm1', 'libre', '2018-11-22', 'ref'), +(4500, 67, 0, 67, '2019-01-21', 'pm2', 'bloque', '2018-11-22', ''), +(4501, 67, 0, 67, '2019-01-22', 'am1', 'bloque', '2018-11-22', ''), +(4502, 67, 0, 67, '2019-01-22', 'am2', 'bloque', '2018-11-22', ''), +(4503, 67, 0, 67, '2019-01-22', 'pm1', 'bloque', '2018-11-22', ''), +(4504, 67, 0, 67, '2019-01-22', 'pm2', 'bloque', '2018-11-22', ''), +(4505, 67, 0, 67, '2019-01-23', 'am1', 'libre', '2018-11-27', 'ref'), +(4506, 67, 0, 67, '2019-01-23', 'am2', 'libre', '2018-11-27', 'ref'), +(4507, 67, 0, 67, '2019-01-23', 'pm1', 'bloque', '2018-11-22', ''), +(4508, 67, 0, 67, '2019-01-23', 'pm2', 'bloque', '2018-11-22', ''), +(4509, 67, 0, 67, '2019-01-24', 'am1', 'libre', '2018-11-27', 'ref'), +(4510, 67, 0, 67, '2019-01-24', 'am2', 'libre', '2018-11-27', 'ref'), +(4511, 67, 0, 67, '2019-01-24', 'pm1', 'libre', '2018-11-27', 'ref'), +(4512, 67, 0, 67, '2019-01-24', 'pm2', 'bloque', '2018-11-22', ''), +(4513, 67, 0, 67, '2019-01-25', 'am1', 'libre', '2018-11-27', 'ref'), +(4514, 67, 0, 67, '2019-01-25', 'am2', 'libre', '2018-11-27', 'ref'), +(4515, 67, 0, 67, '2019-01-25', 'pm1', 'bloque', '2018-11-22', ''), +(4516, 67, 0, 67, '2019-01-25', 'pm2', 'bloque', '2018-11-22', ''), +(4517, 67, 0, 67, '2019-01-28', 'am1', 'bloque', '2018-11-22', ''), +(4518, 67, 0, 67, '2019-01-28', 'am2', 'bloque', '2018-11-22', ''), +(4519, 67, 0, 67, '2019-01-28', 'pm1', 'bloque', '2018-11-22', ''), +(4520, 67, 0, 67, '2019-01-28', 'pm2', 'bloque', '2018-11-22', ''), +(4521, 67, 0, 67, '2019-01-29', 'am1', 'bloque', '2018-11-22', ''), +(4522, 67, 0, 67, '2019-01-29', 'am2', 'bloque', '2018-11-22', ''), +(4523, 67, 0, 67, '2019-01-29', 'pm1', 'bloque', '2018-11-22', ''), +(4524, 67, 0, 67, '2019-01-29', 'pm2', 'bloque', '2018-11-22', ''), +(4525, 67, 0, 67, '2019-01-30', 'am1', 'bloque', '2018-11-22', ''), +(4526, 67, 0, 67, '2019-01-30', 'am2', 'bloque', '2018-11-22', ''), +(4527, 67, 0, 67, '2019-01-30', 'pm1', 'bloque', '2018-11-22', ''), +(4528, 67, 0, 67, '2019-01-30', 'pm2', 'bloque', '2018-11-22', ''), +(4529, 67, 0, 67, '2019-01-31', 'am1', 'libre', '2018-11-27', 'ref'), +(4530, 67, 0, 67, '2019-01-31', 'am2', 'libre', '2018-11-27', 'ref'), +(4531, 67, 0, 67, '2019-01-31', 'pm1', 'libre', '2018-11-27', 'ref'), +(4532, 67, 0, 67, '2019-01-31', 'pm2', 'bloque', '2018-11-22', ''), +(4533, 67, 0, 67, '2019-02-01', 'am1', 'libre', '2018-11-27', 'ref'), +(4534, 67, 0, 67, '2019-02-01', 'am2', 'libre', '2018-11-27', 'ref'), +(4535, 67, 0, 67, '2019-02-01', 'pm1', 'bloque', '2018-11-22', ''), +(4536, 67, 0, 67, '2019-02-01', 'pm2', 'bloque', '2018-11-22', ''), +(4537, 67, 0, 67, '2019-02-04', 'am1', 'libre', '2018-11-27', 'ref'), +(4538, 67, 0, 67, '2019-02-04', 'am2', 'libre', '2018-11-27', 'ref'), +(4539, 67, 0, 67, '2019-02-04', 'pm1', 'bloque', '2018-11-22', ''), +(4540, 67, 0, 67, '2019-02-04', 'pm2', 'bloque', '2018-11-22', ''), +(4541, 67, 0, 67, '2019-02-05', 'am1', 'bloque', '2018-11-22', ''), +(4542, 67, 0, 67, '2019-02-05', 'am2', 'bloque', '2018-11-22', ''), +(4543, 67, 0, 67, '2019-02-05', 'pm1', 'bloque', '2018-11-22', ''), +(4544, 67, 0, 67, '2019-02-05', 'pm2', 'bloque', '2018-11-22', ''), +(4545, 67, 0, 67, '2019-02-06', 'am1', 'libre', '2018-11-27', 'ref'), +(4546, 67, 0, 67, '2019-02-06', 'am2', 'libre', '2018-11-27', 'ref'), +(4547, 67, 0, 67, '2019-02-06', 'pm1', 'bloque', '2018-11-22', ''), +(4548, 67, 0, 67, '2019-02-06', 'pm2', 'bloque', '2018-11-22', ''), +(4549, 67, 0, 67, '2019-02-07', 'am1', 'bloque', '2018-11-22', ''), +(4550, 67, 0, 67, '2019-02-07', 'am2', 'bloque', '2018-11-22', ''), +(4551, 67, 0, 67, '2019-02-07', 'pm1', 'bloque', '2018-11-22', ''), +(4552, 67, 0, 67, '2019-02-07', 'pm2', 'bloque', '2018-11-22', ''), +(4553, 67, 0, 67, '2019-02-08', 'am1', 'libre', '2018-11-27', 'ref'), +(4554, 67, 0, 67, '2019-02-08', 'am2', 'libre', '2018-11-27', 'ref'), +(4555, 67, 0, 67, '2019-02-08', 'pm1', 'bloque', '2018-11-22', ''), +(4556, 67, 0, 67, '2019-02-08', 'pm2', 'bloque', '2018-11-22', ''), +(11425, 169, 0, 56, '2019-01-17', 'am1', 'bloque', '2018-12-10', 'ref'), +(4557, 68, 261, 74, '2019-01-17', 'am1', 'reserve', '2019-01-11', 'ref'), +(4558, 68, 297, 74, '2019-01-17', 'am2', 'reserve', '2019-01-16', 'ref'), +(4559, 68, 0, 74, '2019-01-17', 'pm1', 'libre', '2018-11-23', ''), +(4560, 68, 0, 74, '2019-01-17', 'pm2', 'libre', '2018-11-23', ''), +(4561, 68, 0, 74, '2019-01-18', 'am1', 'bloque', '2018-11-23', ''), +(4562, 68, 0, 74, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(4563, 68, 0, 74, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(4564, 68, 0, 74, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(4565, 68, 0, 74, '2019-01-21', 'am1', 'bloque', '2018-11-23', ''), +(4566, 68, 0, 74, '2019-01-21', 'am2', 'bloque', '2018-11-23', ''), +(4567, 68, 0, 74, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(4568, 68, 0, 74, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(4569, 68, 0, 74, '2019-01-22', 'am1', 'bloque', '2018-11-23', ''), +(4570, 68, 0, 74, '2019-01-22', 'am2', 'bloque', '2018-11-23', ''), +(4571, 68, 0, 74, '2019-01-22', 'pm1', 'bloque', '2018-11-23', ''), +(4572, 68, 0, 74, '2019-01-22', 'pm2', 'bloque', '2018-11-23', ''), +(4573, 68, 0, 74, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(4574, 68, 0, 74, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(4575, 68, 0, 74, '2019-01-23', 'pm1', 'bloque', '2018-11-23', ''), +(4576, 68, 0, 74, '2019-01-23', 'pm2', 'bloque', '2018-11-23', ''), +(4577, 68, 0, 74, '2019-01-24', 'am1', 'bloque', '2018-11-23', ''), +(4578, 68, 0, 74, '2019-01-24', 'am2', 'bloque', '2018-11-23', ''), +(4579, 68, 0, 74, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(4580, 68, 0, 74, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(4581, 68, 0, 74, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(4582, 68, 0, 74, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(4583, 68, 0, 74, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(4584, 68, 0, 74, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(4585, 68, 0, 74, '2019-01-28', 'am1', 'bloque', '2018-11-23', ''), +(4586, 68, 0, 74, '2019-01-28', 'am2', 'bloque', '2018-11-23', ''), +(4587, 68, 0, 74, '2019-01-28', 'pm1', 'bloque', '2018-11-23', ''), +(4588, 68, 0, 74, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(4589, 68, 0, 74, '2019-01-29', 'am1', 'bloque', '2018-11-23', ''), +(4590, 68, 0, 74, '2019-01-29', 'am2', 'bloque', '2018-11-23', ''), +(4591, 68, 0, 74, '2019-01-29', 'pm1', 'bloque', '2018-11-23', ''), +(4592, 68, 0, 74, '2019-01-29', 'pm2', 'bloque', '2018-11-23', ''), +(4593, 68, 0, 74, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(4594, 68, 0, 74, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(4595, 68, 0, 74, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(4596, 68, 0, 74, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(4597, 68, 0, 74, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(4598, 68, 0, 74, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(4599, 68, 0, 74, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(4600, 68, 0, 74, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(4601, 68, 0, 74, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(4602, 68, 0, 74, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(4603, 68, 0, 74, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(4604, 68, 0, 74, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(4605, 68, 0, 74, '2019-02-04', 'am1', 'bloque', '2018-11-23', ''), +(4606, 68, 0, 74, '2019-02-04', 'am2', 'bloque', '2018-11-23', ''), +(4607, 68, 0, 74, '2019-02-04', 'pm1', 'bloque', '2018-11-23', ''), +(4608, 68, 0, 74, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(4609, 68, 0, 74, '2019-02-05', 'am1', 'bloque', '2018-11-23', ''), +(4610, 68, 0, 74, '2019-02-05', 'am2', 'bloque', '2018-11-23', ''), +(4611, 68, 0, 74, '2019-02-05', 'pm1', 'bloque', '2018-11-23', ''), +(4612, 68, 0, 74, '2019-02-05', 'pm2', 'bloque', '2018-11-23', ''), +(4613, 68, 0, 74, '2019-02-06', 'am1', 'bloque', '2018-11-23', ''), +(4614, 68, 0, 74, '2019-02-06', 'am2', 'bloque', '2018-11-23', ''), +(4615, 68, 0, 74, '2019-02-06', 'pm1', 'bloque', '2018-11-23', ''), +(4616, 68, 0, 74, '2019-02-06', 'pm2', 'bloque', '2018-11-23', ''), +(4617, 68, 0, 74, '2019-02-07', 'am1', 'bloque', '2018-11-23', ''), +(4618, 68, 0, 74, '2019-02-07', 'am2', 'bloque', '2018-11-23', ''), +(4619, 68, 0, 74, '2019-02-07', 'pm1', 'bloque', '2018-11-23', ''), +(4620, 68, 0, 74, '2019-02-07', 'pm2', 'bloque', '2018-11-23', ''), +(4621, 68, 0, 74, '2019-02-08', 'am1', 'bloque', '2018-11-23', ''), +(4622, 68, 0, 74, '2019-02-08', 'am2', 'bloque', '2018-11-23', ''), +(4623, 68, 0, 74, '2019-02-08', 'pm1', 'bloque', '2018-11-23', ''), +(4624, 68, 0, 74, '2019-02-08', 'pm2', 'bloque', '2018-11-23', ''), +(4625, 69, 0, 74, '2019-01-17', 'am1', 'libre', '2018-11-23', ''), +(4626, 69, 0, 74, '2019-01-17', 'am2', 'libre', '2018-11-23', ''), +(4627, 69, 0, 74, '2019-01-17', 'pm1', 'libre', '2018-11-23', ''), +(4628, 69, 0, 74, '2019-01-17', 'pm2', 'libre', '2018-11-23', ''), +(4629, 69, 0, 74, '2019-01-18', 'am1', 'bloque', '2018-11-23', ''), +(4630, 69, 0, 74, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(4631, 69, 0, 74, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(4632, 69, 0, 74, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(4633, 69, 0, 74, '2019-01-21', 'am1', 'bloque', '2018-11-23', ''), +(4634, 69, 0, 74, '2019-01-21', 'am2', 'bloque', '2018-11-23', ''), +(4635, 69, 0, 74, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(4636, 69, 0, 74, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(4637, 69, 0, 74, '2019-01-22', 'am1', 'bloque', '2018-11-23', ''), +(4638, 69, 0, 74, '2019-01-22', 'am2', 'bloque', '2018-11-23', ''), +(4639, 69, 0, 74, '2019-01-22', 'pm1', 'bloque', '2018-11-23', ''), +(4640, 69, 0, 74, '2019-01-22', 'pm2', 'bloque', '2018-11-23', ''), +(4641, 69, 0, 74, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(4642, 69, 0, 74, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(4643, 69, 0, 74, '2019-01-23', 'pm1', 'bloque', '2018-11-23', ''), +(4644, 69, 0, 74, '2019-01-23', 'pm2', 'bloque', '2018-11-23', ''), +(4645, 69, 0, 74, '2019-01-24', 'am1', 'bloque', '2018-11-23', ''), +(4646, 69, 0, 74, '2019-01-24', 'am2', 'bloque', '2018-11-23', ''), +(4647, 69, 0, 74, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(4648, 69, 0, 74, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(4649, 69, 0, 74, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(4650, 69, 0, 74, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(4651, 69, 0, 74, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(4652, 69, 0, 74, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(4653, 69, 0, 74, '2019-01-28', 'am1', 'bloque', '2018-11-23', ''), +(4654, 69, 0, 74, '2019-01-28', 'am2', 'bloque', '2018-11-23', ''), +(4655, 69, 0, 74, '2019-01-28', 'pm1', 'bloque', '2018-11-23', ''), +(4656, 69, 0, 74, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(4657, 69, 0, 74, '2019-01-29', 'am1', 'bloque', '2018-11-23', ''), +(4658, 69, 0, 74, '2019-01-29', 'am2', 'bloque', '2018-11-23', ''), +(4659, 69, 0, 74, '2019-01-29', 'pm1', 'bloque', '2018-11-23', ''), +(4660, 69, 0, 74, '2019-01-29', 'pm2', 'bloque', '2018-11-23', ''), +(4661, 69, 0, 74, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(4662, 69, 0, 74, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(4663, 69, 0, 74, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(4664, 69, 0, 74, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(4665, 69, 0, 74, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(4666, 69, 0, 74, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(4667, 69, 0, 74, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(4668, 69, 0, 74, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(4669, 69, 0, 74, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(4670, 69, 0, 74, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(4671, 69, 0, 74, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(4672, 69, 0, 74, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(4673, 69, 0, 74, '2019-02-04', 'am1', 'bloque', '2018-11-23', ''), +(4674, 69, 0, 74, '2019-02-04', 'am2', 'bloque', '2018-11-23', ''), +(4675, 69, 0, 74, '2019-02-04', 'pm1', 'bloque', '2018-11-23', ''), +(4676, 69, 0, 74, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(4677, 69, 0, 74, '2019-02-05', 'am1', 'bloque', '2018-11-23', ''), +(4678, 69, 0, 74, '2019-02-05', 'am2', 'bloque', '2018-11-23', ''), +(4679, 69, 0, 74, '2019-02-05', 'pm1', 'bloque', '2018-11-23', ''), +(4680, 69, 0, 74, '2019-02-05', 'pm2', 'bloque', '2018-11-23', ''), +(4681, 69, 0, 74, '2019-02-06', 'am1', 'bloque', '2018-11-23', ''), +(4682, 69, 0, 74, '2019-02-06', 'am2', 'bloque', '2018-11-23', ''), +(4683, 69, 0, 74, '2019-02-06', 'pm1', 'bloque', '2018-11-23', ''), +(4684, 69, 0, 74, '2019-02-06', 'pm2', 'bloque', '2018-11-23', ''), +(4685, 69, 0, 74, '2019-02-07', 'am1', 'bloque', '2018-11-23', ''), +(4686, 69, 0, 74, '2019-02-07', 'am2', 'bloque', '2018-11-23', ''), +(4687, 69, 0, 74, '2019-02-07', 'pm1', 'bloque', '2018-11-23', ''), +(4688, 69, 0, 74, '2019-02-07', 'pm2', 'bloque', '2018-11-23', ''), +(4689, 69, 0, 74, '2019-02-08', 'am1', 'bloque', '2018-11-23', ''), +(4690, 69, 0, 74, '2019-02-08', 'am2', 'bloque', '2018-11-23', ''), +(4691, 69, 0, 74, '2019-02-08', 'pm1', 'bloque', '2018-11-23', ''), +(4692, 69, 0, 74, '2019-02-08', 'pm2', 'bloque', '2018-11-23', ''), +(4693, 70, 197, 339, '2019-01-17', 'am1', 'reserve', '2019-01-07', 'ref'), +(4694, 70, 0, 339, '2019-01-17', 'am2', 'libre', '2018-11-23', ''), +(4695, 70, 0, 339, '2019-01-17', 'pm1', 'libre', '2018-11-23', ''), +(4696, 70, 0, 339, '2019-01-17', 'pm2', 'libre', '2018-11-23', ''), +(4697, 70, 0, 339, '2019-01-18', 'am1', 'bloque', '2018-11-23', ''), +(4698, 70, 0, 339, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(4699, 70, 0, 339, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(4700, 70, 0, 339, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(4701, 70, 0, 339, '2019-01-21', 'am1', 'bloque', '2018-11-23', ''), +(4702, 70, 0, 339, '2019-01-21', 'am2', 'bloque', '2018-11-23', ''), +(4703, 70, 0, 339, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(4704, 70, 0, 339, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(4705, 70, 0, 339, '2019-01-22', 'am1', 'bloque', '2018-11-23', ''), +(4706, 70, 0, 339, '2019-01-22', 'am2', 'bloque', '2018-11-23', ''), +(4707, 70, 0, 339, '2019-01-22', 'pm1', 'bloque', '2018-11-23', ''), +(4708, 70, 0, 339, '2019-01-22', 'pm2', 'bloque', '2018-11-23', ''), +(4709, 70, 0, 339, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(4710, 70, 0, 339, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(4711, 70, 0, 339, '2019-01-23', 'pm1', 'bloque', '2018-11-23', ''), +(4712, 70, 0, 339, '2019-01-23', 'pm2', 'bloque', '2018-11-23', ''), +(4713, 70, 0, 339, '2019-01-24', 'am1', 'bloque', '2018-11-23', ''), +(4714, 70, 0, 339, '2019-01-24', 'am2', 'bloque', '2018-11-23', ''), +(4715, 70, 0, 339, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(4716, 70, 0, 339, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(4717, 70, 0, 339, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(4718, 70, 0, 339, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(4719, 70, 0, 339, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(4720, 70, 0, 339, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(4721, 70, 0, 339, '2019-01-28', 'am1', 'bloque', '2018-11-23', ''), +(4722, 70, 0, 339, '2019-01-28', 'am2', 'bloque', '2018-11-23', ''), +(4723, 70, 0, 339, '2019-01-28', 'pm1', 'bloque', '2018-11-23', ''), +(4724, 70, 0, 339, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(4725, 70, 0, 339, '2019-01-29', 'am1', 'bloque', '2018-11-23', ''), +(4726, 70, 0, 339, '2019-01-29', 'am2', 'bloque', '2018-11-23', ''), +(4727, 70, 0, 339, '2019-01-29', 'pm1', 'bloque', '2018-11-23', ''), +(4728, 70, 0, 339, '2019-01-29', 'pm2', 'bloque', '2018-11-23', ''), +(4729, 70, 0, 339, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(4730, 70, 0, 339, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(4731, 70, 0, 339, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(4732, 70, 0, 339, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(4733, 70, 0, 339, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(4734, 70, 0, 339, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(4735, 70, 0, 339, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(4736, 70, 0, 339, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(4737, 70, 0, 339, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(4738, 70, 0, 339, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(4739, 70, 0, 339, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(4740, 70, 0, 339, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(4741, 70, 0, 339, '2019-02-04', 'am1', 'bloque', '2018-11-23', ''), +(4742, 70, 0, 339, '2019-02-04', 'am2', 'bloque', '2018-11-23', ''), +(4743, 70, 0, 339, '2019-02-04', 'pm1', 'bloque', '2018-11-23', ''), +(4744, 70, 0, 339, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(4745, 70, 0, 339, '2019-02-05', 'am1', 'bloque', '2018-11-23', ''), +(4746, 70, 0, 339, '2019-02-05', 'am2', 'bloque', '2018-11-23', ''), +(4747, 70, 0, 339, '2019-02-05', 'pm1', 'bloque', '2018-11-23', ''), +(4748, 70, 0, 339, '2019-02-05', 'pm2', 'bloque', '2018-11-23', ''), +(4749, 70, 0, 339, '2019-02-06', 'am1', 'bloque', '2018-11-23', ''), +(4750, 70, 0, 339, '2019-02-06', 'am2', 'bloque', '2018-11-23', ''), +(4751, 70, 0, 339, '2019-02-06', 'pm1', 'bloque', '2018-11-23', ''), +(4752, 70, 0, 339, '2019-02-06', 'pm2', 'bloque', '2018-11-23', ''), +(4753, 70, 0, 339, '2019-02-07', 'am1', 'bloque', '2018-11-23', ''), +(4754, 70, 0, 339, '2019-02-07', 'am2', 'bloque', '2018-11-23', ''), +(4755, 70, 321, 339, '2019-02-07', 'pm1', 'reserve', '2019-01-25', 'ref'), +(4756, 70, 0, 339, '2019-02-07', 'pm2', 'bloque', '2018-11-23', ''), +(4757, 70, 0, 339, '2019-02-08', 'am1', 'bloque', '2018-11-23', ''), +(4758, 70, 0, 339, '2019-02-08', 'am2', 'bloque', '2018-11-23', ''), +(4759, 70, 0, 339, '2019-02-08', 'pm1', 'bloque', '2018-11-23', ''), +(4760, 70, 0, 339, '2019-02-08', 'pm2', 'bloque', '2018-11-23', ''), +(4761, 71, 0, 59, '2019-01-17', 'am1', 'libre', '2018-11-23', ''), +(4762, 71, 240, 59, '2019-01-17', 'am2', 'reserve', '2019-01-10', 'ref'), +(4763, 71, 0, 59, '2019-01-17', 'pm1', 'libre', '2018-11-23', ''), +(4764, 71, 0, 59, '2019-01-17', 'pm2', 'libre', '2018-11-23', ''), +(4765, 71, 0, 59, '2019-01-18', 'am1', 'bloque', '2018-12-11', 'ref'), +(4766, 71, 0, 59, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(4767, 71, 0, 59, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(4768, 71, 0, 59, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(4769, 71, 0, 59, '2019-01-21', 'am1', 'bloque', '2018-11-23', ''), +(4770, 71, 0, 59, '2019-01-21', 'am2', 'bloque', '2018-11-23', ''), +(4771, 71, 0, 59, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(4772, 71, 0, 59, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(4773, 71, 0, 59, '2019-01-22', 'am1', 'bloque', '2018-11-23', ''), +(4774, 71, 0, 59, '2019-01-22', 'am2', 'bloque', '2018-11-23', ''), +(4775, 71, 0, 59, '2019-01-22', 'pm1', 'bloque', '2018-11-23', ''), +(4776, 71, 0, 59, '2019-01-22', 'pm2', 'bloque', '2018-11-23', ''), +(4777, 71, 0, 59, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(4778, 71, 0, 59, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(4779, 71, 0, 59, '2019-01-23', 'pm1', 'bloque', '2018-11-23', ''), +(4780, 71, 0, 59, '2019-01-23', 'pm2', 'bloque', '2018-11-23', ''), +(4781, 71, 0, 59, '2019-01-24', 'am1', 'bloque', '2018-11-23', ''), +(4782, 71, 0, 59, '2019-01-24', 'am2', 'bloque', '2018-11-23', ''), +(4783, 71, 0, 59, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(4784, 71, 0, 59, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(4785, 71, 0, 59, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(4786, 71, 0, 59, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(4787, 71, 0, 59, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(4788, 71, 0, 59, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(4789, 71, 0, 59, '2019-01-28', 'am1', 'bloque', '2018-11-23', ''), +(4790, 71, 0, 59, '2019-01-28', 'am2', 'bloque', '2018-11-23', ''), +(4791, 71, 0, 59, '2019-01-28', 'pm1', 'bloque', '2018-11-23', ''), +(4792, 71, 0, 59, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(4793, 71, 0, 59, '2019-01-29', 'am1', 'bloque', '2018-11-23', ''), +(4794, 71, 0, 59, '2019-01-29', 'am2', 'bloque', '2018-11-23', ''), +(4795, 71, 0, 59, '2019-01-29', 'pm1', 'bloque', '2018-11-23', ''), +(4796, 71, 0, 59, '2019-01-29', 'pm2', 'bloque', '2018-11-23', ''), +(4797, 71, 0, 59, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(4798, 71, 0, 59, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(4799, 71, 0, 59, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(4800, 71, 0, 59, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(4801, 71, 0, 59, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(4802, 71, 0, 59, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(4803, 71, 0, 59, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(4804, 71, 0, 59, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(4805, 71, 0, 59, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(4806, 71, 0, 59, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(4807, 71, 0, 59, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(4808, 71, 0, 59, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(4809, 71, 0, 59, '2019-02-04', 'am1', 'bloque', '2018-11-23', ''), +(4810, 71, 0, 59, '2019-02-04', 'am2', 'bloque', '2018-11-23', ''), +(4811, 71, 0, 59, '2019-02-04', 'pm1', 'bloque', '2018-11-23', ''), +(4812, 71, 0, 59, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(4813, 71, 0, 59, '2019-02-05', 'am1', 'bloque', '2018-11-23', ''), +(4814, 71, 0, 59, '2019-02-05', 'am2', 'bloque', '2018-11-23', ''), +(4815, 71, 0, 59, '2019-02-05', 'pm1', 'bloque', '2018-11-23', ''), +(4816, 71, 0, 59, '2019-02-05', 'pm2', 'bloque', '2018-11-23', ''), +(4817, 71, 0, 59, '2019-02-06', 'am1', 'bloque', '2018-11-23', ''), +(4818, 71, 0, 59, '2019-02-06', 'am2', 'bloque', '2018-11-23', ''), +(4819, 71, 0, 59, '2019-02-06', 'pm1', 'bloque', '2018-11-23', ''), +(4820, 71, 0, 59, '2019-02-06', 'pm2', 'bloque', '2018-11-23', ''), +(4821, 71, 0, 59, '2019-02-07', 'am1', 'libre', '2018-12-11', 'ref'), +(4822, 71, 0, 59, '2019-02-07', 'am2', 'libre', '2018-12-11', 'ref'), +(4823, 71, 0, 59, '2019-02-07', 'pm1', 'libre', '2018-12-11', 'ref'), +(4824, 71, 0, 59, '2019-02-07', 'pm2', 'libre', '2018-12-11', 'ref'), +(4825, 71, 0, 59, '2019-02-08', 'am1', 'libre', '2018-12-11', 'ref'), +(4826, 71, 0, 59, '2019-02-08', 'am2', 'libre', '2018-12-11', 'ref'), +(4827, 71, 0, 59, '2019-02-08', 'pm1', 'libre', '2018-12-11', 'ref'), +(4828, 71, 0, 59, '2019-02-08', 'pm2', 'libre', '2018-12-11', 'ref'), +(4829, 72, 69, 74, '2019-01-17', 'am1', 'reserve', '2018-12-13', 'cap'), +(4830, 72, 265, 74, '2019-01-17', 'am2', 'reserve', '2019-01-11', 'ref'), +(4831, 72, 264, 74, '2019-01-17', 'pm1', 'reserve', '2019-01-11', 'ref'), +(4832, 72, 0, 74, '2019-01-17', 'pm2', 'libre', '2018-11-23', ''), +(4833, 72, 0, 74, '2019-01-18', 'am1', 'bloque', '2018-11-23', ''), +(4834, 72, 0, 74, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(4835, 72, 0, 74, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(4836, 72, 0, 74, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(4837, 72, 0, 74, '2019-01-21', 'am1', 'bloque', '2018-11-23', ''), +(4838, 72, 0, 74, '2019-01-21', 'am2', 'bloque', '2018-11-23', ''), +(4839, 72, 0, 74, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(4840, 72, 0, 74, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(4841, 72, 0, 74, '2019-01-22', 'am1', 'bloque', '2018-11-23', ''), +(4842, 72, 0, 74, '2019-01-22', 'am2', 'bloque', '2018-11-23', ''), +(4843, 72, 0, 74, '2019-01-22', 'pm1', 'bloque', '2018-11-23', ''), +(4844, 72, 0, 74, '2019-01-22', 'pm2', 'bloque', '2018-11-23', ''), +(4845, 72, 0, 74, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(4846, 72, 0, 74, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(4847, 72, 0, 74, '2019-01-23', 'pm1', 'bloque', '2018-11-23', ''), +(4848, 72, 0, 74, '2019-01-23', 'pm2', 'bloque', '2018-11-23', ''), +(4849, 72, 0, 74, '2019-01-24', 'am1', 'bloque', '2018-11-23', ''), +(4850, 72, 0, 74, '2019-01-24', 'am2', 'bloque', '2018-11-23', ''), +(4851, 72, 0, 74, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(4852, 72, 0, 74, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(4853, 72, 0, 74, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(4854, 72, 0, 74, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(4855, 72, 0, 74, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(4856, 72, 0, 74, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(4857, 72, 0, 74, '2019-01-28', 'am1', 'bloque', '2018-11-23', ''), +(4858, 72, 0, 74, '2019-01-28', 'am2', 'bloque', '2018-11-23', ''), +(4859, 72, 0, 74, '2019-01-28', 'pm1', 'bloque', '2018-11-23', ''), +(4860, 72, 0, 74, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(4861, 72, 0, 74, '2019-01-29', 'am1', 'bloque', '2018-11-23', ''), +(4862, 72, 0, 74, '2019-01-29', 'am2', 'bloque', '2018-11-23', ''), +(4863, 72, 0, 74, '2019-01-29', 'pm1', 'bloque', '2018-11-23', ''), +(4864, 72, 0, 74, '2019-01-29', 'pm2', 'bloque', '2018-11-23', ''), +(4865, 72, 0, 74, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(4866, 72, 0, 74, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(4867, 72, 0, 74, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(4868, 72, 0, 74, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(4869, 72, 0, 74, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(4870, 72, 0, 74, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(4871, 72, 0, 74, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(4872, 72, 0, 74, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(4873, 72, 0, 74, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(4874, 72, 0, 74, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(4875, 72, 0, 74, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(4876, 72, 0, 74, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(4877, 72, 0, 74, '2019-02-04', 'am1', 'bloque', '2018-11-23', ''), +(4878, 72, 0, 74, '2019-02-04', 'am2', 'bloque', '2018-11-23', ''), +(4879, 72, 0, 74, '2019-02-04', 'pm1', 'bloque', '2018-11-23', ''), +(4880, 72, 0, 74, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(4881, 72, 0, 74, '2019-02-05', 'am1', 'bloque', '2018-11-23', ''), +(4882, 72, 0, 74, '2019-02-05', 'am2', 'bloque', '2018-11-23', ''), +(4883, 72, 0, 74, '2019-02-05', 'pm1', 'bloque', '2018-11-23', ''), +(4884, 72, 0, 74, '2019-02-05', 'pm2', 'bloque', '2018-11-23', ''), +(4885, 72, 0, 74, '2019-02-06', 'am1', 'bloque', '2018-11-23', ''), +(4886, 72, 0, 74, '2019-02-06', 'am2', 'bloque', '2018-11-23', ''), +(4887, 72, 0, 74, '2019-02-06', 'pm1', 'bloque', '2018-11-23', ''), +(4888, 72, 0, 74, '2019-02-06', 'pm2', 'bloque', '2018-11-23', ''), +(4889, 72, 0, 74, '2019-02-07', 'am1', 'bloque', '2018-11-23', ''), +(4890, 72, 0, 74, '2019-02-07', 'am2', 'bloque', '2018-11-23', ''), +(4891, 72, 0, 74, '2019-02-07', 'pm1', 'bloque', '2018-11-23', ''), +(4892, 72, 0, 74, '2019-02-07', 'pm2', 'bloque', '2018-11-23', ''), +(4893, 72, 0, 74, '2019-02-08', 'am1', 'bloque', '2018-11-23', ''), +(4894, 72, 0, 74, '2019-02-08', 'am2', 'bloque', '2018-11-23', ''), +(4895, 72, 0, 74, '2019-02-08', 'pm1', 'bloque', '2018-11-23', ''), +(4896, 72, 0, 74, '2019-02-08', 'pm2', 'bloque', '2018-11-23', ''), +(4897, 73, 0, 8, '2019-01-17', 'am1', 'bloque', '2018-11-23', 'ref'), +(4898, 73, 0, 8, '2019-01-17', 'am2', 'bloque', '2018-11-23', 'ref'), +(4899, 73, 0, 8, '2019-01-17', 'pm1', 'bloque', '2018-11-23', 'ref'), +(4900, 73, 0, 8, '2019-01-17', 'pm2', 'bloque', '2018-11-23', 'ref'), +(4901, 73, 0, 8, '2019-01-18', 'am1', 'bloque', '2018-11-23', ''), +(4902, 73, 0, 8, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(4903, 73, 0, 8, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(4904, 73, 0, 8, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(4905, 73, 0, 8, '2019-01-21', 'am1', 'bloque', '2018-11-23', ''), +(4906, 73, 0, 8, '2019-01-21', 'am2', 'bloque', '2018-11-23', ''), +(4907, 73, 0, 8, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(4908, 73, 0, 8, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(4909, 73, 313, 8, '2019-01-22', 'am1', 'reserve', '2019-01-21', 'cap'), +(4910, 73, 0, 8, '2019-01-22', 'am2', 'bloque', '2019-01-21', 'cap'), +(4911, 73, 317, 8, '2019-01-22', 'pm1', 'reserve', '2019-01-22', 'cap'), +(4912, 73, 318, 8, '2019-01-22', 'pm2', 'reserve', '2019-01-22', 'cap'), +(4913, 73, 0, 8, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(4914, 73, 0, 8, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(4915, 73, 0, 8, '2019-01-23', 'pm1', 'bloque', '2018-11-23', ''), +(4916, 73, 0, 8, '2019-01-23', 'pm2', 'bloque', '2018-11-23', ''), +(4917, 73, 0, 8, '2019-01-24', 'am1', 'bloque', '2018-11-23', ''), +(4918, 73, 0, 8, '2019-01-24', 'am2', 'bloque', '2018-11-23', ''), +(4919, 73, 0, 8, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(4920, 73, 0, 8, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(4921, 73, 0, 8, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(4922, 73, 0, 8, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(4923, 73, 0, 8, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(4924, 73, 0, 8, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(4925, 73, 0, 8, '2019-01-28', 'am1', 'bloque', '2018-11-23', ''), +(4926, 73, 0, 8, '2019-01-28', 'am2', 'bloque', '2018-11-23', ''), +(4927, 73, 0, 8, '2019-01-28', 'pm1', 'bloque', '2018-11-23', ''), +(4928, 73, 0, 8, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(4929, 73, 0, 8, '2019-01-29', 'am1', 'libre', '2018-11-23', 'ref'), +(4930, 73, 0, 8, '2019-01-29', 'am2', 'libre', '2018-11-23', 'ref'), +(4931, 73, 0, 8, '2019-01-29', 'pm1', 'libre', '2018-11-23', 'ref'), +(4932, 73, 0, 8, '2019-01-29', 'pm2', 'libre', '2018-11-23', 'ref'); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(4933, 73, 0, 8, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(4934, 73, 0, 8, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(4935, 73, 0, 8, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(4936, 73, 0, 8, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(4937, 73, 0, 8, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(4938, 73, 0, 8, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(4939, 73, 0, 8, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(4940, 73, 0, 8, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(4941, 73, 0, 8, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(4942, 73, 0, 8, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(4943, 73, 0, 8, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(4944, 73, 0, 8, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(4945, 73, 0, 8, '2019-02-04', 'am1', 'bloque', '2018-11-23', ''), +(4946, 73, 0, 8, '2019-02-04', 'am2', 'bloque', '2018-11-23', ''), +(4947, 73, 0, 8, '2019-02-04', 'pm1', 'bloque', '2018-11-23', ''), +(4948, 73, 0, 8, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(4949, 73, 334, 8, '2019-02-05', 'am1', 'reserve', '2019-02-06', 'cap'), +(4950, 73, 0, 8, '2019-02-05', 'am2', 'libre', '2018-11-23', 'ref'), +(4951, 73, 0, 8, '2019-02-05', 'pm1', 'libre', '2018-11-23', 'ref'), +(4952, 73, 0, 8, '2019-02-05', 'pm2', 'libre', '2018-11-23', 'ref'), +(4953, 73, 0, 8, '2019-02-06', 'am1', 'bloque', '2018-11-23', ''), +(4954, 73, 0, 8, '2019-02-06', 'am2', 'bloque', '2018-11-23', ''), +(4955, 73, 0, 8, '2019-02-06', 'pm1', 'bloque', '2018-11-23', ''), +(4956, 73, 0, 8, '2019-02-06', 'pm2', 'bloque', '2018-11-23', ''), +(4957, 73, 0, 8, '2019-02-07', 'am1', 'bloque', '2018-11-23', ''), +(4958, 73, 0, 8, '2019-02-07', 'am2', 'bloque', '2018-11-23', ''), +(4959, 73, 0, 8, '2019-02-07', 'pm1', 'bloque', '2018-11-23', ''), +(4960, 73, 0, 8, '2019-02-07', 'pm2', 'bloque', '2018-11-23', ''), +(4961, 73, 0, 8, '2019-02-08', 'am1', 'bloque', '2018-11-23', ''), +(4962, 73, 0, 8, '2019-02-08', 'am2', 'bloque', '2018-11-23', ''), +(4963, 73, 0, 8, '2019-02-08', 'pm1', 'bloque', '2018-11-23', ''), +(4964, 73, 0, 8, '2019-02-08', 'pm2', 'bloque', '2018-11-23', ''), +(4965, 74, 0, 14, '2019-01-17', 'am1', 'libre', '2018-12-19', 'cap'), +(4966, 74, 0, 14, '2019-01-17', 'am2', 'libre', '2018-11-23', ''), +(4967, 74, 0, 14, '2019-01-17', 'pm1', 'libre', '2018-11-23', ''), +(4968, 74, 193, 14, '2019-01-17', 'pm2', 'reserve', '2019-01-07', 'cap'), +(4969, 74, 0, 14, '2019-01-18', 'am1', 'bloque', '2018-11-23', ''), +(4970, 74, 0, 14, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(4971, 74, 0, 14, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(4972, 74, 0, 14, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(4973, 74, 0, 14, '2019-01-21', 'am1', 'libre', '2019-01-14', 'cap'), +(4974, 74, 0, 14, '2019-01-21', 'am2', 'libre', '2019-01-14', 'cap'), +(4975, 74, 0, 14, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(4976, 74, 0, 14, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(4977, 74, 0, 14, '2019-01-22', 'am1', 'bloque', '2018-11-23', ''), +(4978, 74, 0, 14, '2019-01-22', 'am2', 'bloque', '2018-11-23', ''), +(4979, 74, 145, 14, '2019-01-22', 'pm1', 'reserve', '2018-12-19', 'cap'), +(4980, 74, 0, 14, '2019-01-22', 'pm2', 'bloque', '2018-11-23', ''), +(4981, 74, 0, 14, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(4982, 74, 0, 14, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(4983, 74, 0, 14, '2019-01-23', 'pm1', 'bloque', '2018-11-23', ''), +(4984, 74, 0, 14, '2019-01-23', 'pm2', 'bloque', '2018-11-23', ''), +(4985, 74, 301, 14, '2019-01-24', 'am1', 'reserve', '2019-01-17', 'cap'), +(4986, 74, 0, 14, '2019-01-24', 'am2', 'bloque', '2019-01-17', 'cap'), +(4987, 74, 0, 14, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(4988, 74, 0, 14, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(4989, 74, 0, 14, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(4990, 74, 0, 14, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(4991, 74, 0, 14, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(4992, 74, 0, 14, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(4993, 74, 0, 14, '2019-01-28', 'am1', 'libre', '2019-01-17', 'cap'), +(4994, 74, 0, 14, '2019-01-28', 'am2', 'bloque', '2019-01-17', 'cap'), +(4995, 74, 0, 14, '2019-01-28', 'pm1', 'bloque', '2019-01-17', 'cap'), +(4996, 74, 0, 14, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(4997, 74, 0, 14, '2019-01-29', 'am1', 'bloque', '2018-11-23', ''), +(4998, 74, 0, 14, '2019-01-29', 'am2', 'bloque', '2018-11-23', ''), +(4999, 74, 0, 14, '2019-01-29', 'pm1', 'bloque', '2018-11-23', ''), +(5000, 74, 0, 14, '2019-01-29', 'pm2', 'bloque', '2018-11-23', ''), +(5001, 74, 0, 14, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(5002, 74, 0, 14, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(5003, 74, 0, 14, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(5004, 74, 0, 14, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(5005, 74, 0, 14, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(5006, 74, 0, 14, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(5007, 74, 0, 14, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(5008, 74, 0, 14, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(5009, 74, 0, 14, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(5010, 74, 0, 14, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(5011, 74, 0, 14, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(5012, 74, 0, 14, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(5013, 74, 302, 14, '2019-02-04', 'am1', 'reserve', '2019-01-17', 'cap'), +(5014, 74, 303, 14, '2019-02-04', 'am2', 'reserve', '2019-01-17', 'cap'), +(5015, 74, 304, 14, '2019-02-04', 'pm1', 'reserve', '2019-01-17', 'cap'), +(5016, 74, 0, 14, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(5017, 74, 0, 14, '2019-02-05', 'am1', 'bloque', '2018-11-23', ''), +(5018, 74, 0, 14, '2019-02-05', 'am2', 'bloque', '2018-11-23', ''), +(5019, 74, 0, 14, '2019-02-05', 'pm1', 'bloque', '2018-11-23', ''), +(5020, 74, 0, 14, '2019-02-05', 'pm2', 'bloque', '2018-11-23', ''), +(5021, 74, 0, 14, '2019-02-06', 'am1', 'bloque', '2018-11-23', ''), +(5022, 74, 0, 14, '2019-02-06', 'am2', 'bloque', '2018-11-23', ''), +(5023, 74, 0, 14, '2019-02-06', 'pm1', 'bloque', '2018-11-23', ''), +(5024, 74, 0, 14, '2019-02-06', 'pm2', 'bloque', '2018-11-23', ''), +(5025, 74, 0, 14, '2019-02-07', 'am1', 'bloque', '2018-11-23', ''), +(5026, 74, 0, 14, '2019-02-07', 'am2', 'bloque', '2018-11-23', ''), +(5027, 74, 0, 14, '2019-02-07', 'pm1', 'bloque', '2018-11-23', ''), +(5028, 74, 0, 14, '2019-02-07', 'pm2', 'bloque', '2018-11-23', ''), +(5029, 74, 0, 14, '2019-02-08', 'am1', 'bloque', '2018-11-23', ''), +(5030, 74, 0, 14, '2019-02-08', 'am2', 'bloque', '2018-11-23', ''), +(5031, 74, 0, 14, '2019-02-08', 'pm1', 'bloque', '2018-11-23', ''), +(5032, 74, 0, 14, '2019-02-08', 'pm2', 'bloque', '2018-11-23', ''), +(5033, 75, 0, 54, '2019-01-17', 'am1', 'libre', '2018-11-23', ''), +(5034, 75, 0, 54, '2019-01-17', 'am2', 'libre', '2018-11-23', ''), +(5035, 75, 0, 54, '2019-01-17', 'pm1', 'libre', '2018-11-23', ''), +(5036, 75, 0, 54, '2019-01-17', 'pm2', 'libre', '2018-11-23', ''), +(5037, 75, 0, 54, '2019-01-18', 'am1', 'bloque', '2018-11-23', ''), +(5038, 75, 0, 54, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(5039, 75, 0, 54, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(5040, 75, 0, 54, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(5041, 75, 0, 54, '2019-01-21', 'am1', 'bloque', '2018-11-23', ''), +(5042, 75, 0, 54, '2019-01-21', 'am2', 'bloque', '2018-11-23', ''), +(5043, 75, 0, 54, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(5044, 75, 0, 54, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(5045, 75, 0, 54, '2019-01-22', 'am1', 'bloque', '2018-11-23', ''), +(5046, 75, 0, 54, '2019-01-22', 'am2', 'bloque', '2018-11-23', ''), +(5047, 75, 0, 54, '2019-01-22', 'pm1', 'bloque', '2018-11-23', ''), +(5048, 75, 0, 54, '2019-01-22', 'pm2', 'bloque', '2018-11-23', ''), +(5049, 75, 0, 54, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(5050, 75, 0, 54, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(5051, 75, 0, 54, '2019-01-23', 'pm1', 'bloque', '2018-11-23', ''), +(5052, 75, 0, 54, '2019-01-23', 'pm2', 'bloque', '2018-11-23', ''), +(5053, 75, 0, 54, '2019-01-24', 'am1', 'bloque', '2018-11-23', ''), +(5054, 75, 0, 54, '2019-01-24', 'am2', 'bloque', '2018-11-23', ''), +(5055, 75, 0, 54, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(5056, 75, 0, 54, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(5057, 75, 0, 54, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(5058, 75, 0, 54, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(5059, 75, 0, 54, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(5060, 75, 0, 54, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(5061, 75, 0, 54, '2019-01-28', 'am1', 'bloque', '2018-11-23', ''), +(5062, 75, 0, 54, '2019-01-28', 'am2', 'bloque', '2018-11-23', ''), +(5063, 75, 0, 54, '2019-01-28', 'pm1', 'bloque', '2018-11-23', ''), +(5064, 75, 0, 54, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(5065, 75, 0, 54, '2019-01-29', 'am1', 'bloque', '2018-11-23', ''), +(5066, 75, 0, 54, '2019-01-29', 'am2', 'bloque', '2018-11-23', ''), +(5067, 75, 0, 54, '2019-01-29', 'pm1', 'bloque', '2018-11-23', ''), +(5068, 75, 0, 54, '2019-01-29', 'pm2', 'bloque', '2018-11-23', ''), +(5069, 75, 0, 54, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(5070, 75, 0, 54, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(5071, 75, 0, 54, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(5072, 75, 0, 54, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(5073, 75, 0, 54, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(5074, 75, 0, 54, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(5075, 75, 0, 54, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(5076, 75, 0, 54, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(5077, 75, 0, 54, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(5078, 75, 0, 54, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(5079, 75, 0, 54, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(5080, 75, 0, 54, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(5081, 75, 0, 54, '2019-02-04', 'am1', 'bloque', '2018-11-23', ''), +(5082, 75, 0, 54, '2019-02-04', 'am2', 'bloque', '2018-11-23', ''), +(5083, 75, 0, 54, '2019-02-04', 'pm1', 'bloque', '2018-11-23', ''), +(5084, 75, 0, 54, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(5085, 75, 0, 54, '2019-02-05', 'am1', 'bloque', '2018-11-23', ''), +(5086, 75, 0, 54, '2019-02-05', 'am2', 'bloque', '2018-11-23', ''), +(5087, 75, 0, 54, '2019-02-05', 'pm1', 'bloque', '2018-11-23', ''), +(5088, 75, 0, 54, '2019-02-05', 'pm2', 'bloque', '2018-11-23', ''), +(5089, 75, 0, 54, '2019-02-06', 'am1', 'bloque', '2018-11-23', ''), +(5090, 75, 0, 54, '2019-02-06', 'am2', 'bloque', '2018-11-23', ''), +(5091, 75, 0, 54, '2019-02-06', 'pm1', 'bloque', '2018-11-23', ''), +(5092, 75, 0, 54, '2019-02-06', 'pm2', 'bloque', '2018-11-23', ''), +(5093, 75, 0, 54, '2019-02-07', 'am1', 'bloque', '2018-11-23', ''), +(5094, 75, 0, 54, '2019-02-07', 'am2', 'bloque', '2018-11-23', ''), +(5095, 75, 0, 54, '2019-02-07', 'pm1', 'bloque', '2018-11-23', ''), +(5096, 75, 0, 54, '2019-02-07', 'pm2', 'bloque', '2018-11-23', ''), +(5097, 75, 0, 54, '2019-02-08', 'am1', 'bloque', '2018-11-23', ''), +(5098, 75, 0, 54, '2019-02-08', 'am2', 'bloque', '2018-11-23', ''), +(5099, 75, 0, 54, '2019-02-08', 'pm1', 'bloque', '2018-11-23', ''), +(5100, 75, 0, 54, '2019-02-08', 'pm2', 'bloque', '2018-11-23', ''), +(5101, 76, 225, 31, '2019-01-17', 'am1', 'reserve', '2019-01-08', 'cap'), +(5102, 76, 0, 31, '2019-01-17', 'am2', 'libre', '2018-11-23', ''), +(5103, 76, 0, 31, '2019-01-17', 'pm1', 'bloque', '2018-11-26', 'cap'), +(5104, 76, 0, 31, '2019-01-17', 'pm2', 'bloque', '2018-11-26', 'cap'), +(5105, 76, 0, 31, '2019-01-18', 'am1', 'bloque', '2018-11-23', ''), +(5106, 76, 0, 31, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(5107, 76, 0, 31, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(5108, 76, 0, 31, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(5109, 76, 0, 31, '2019-01-21', 'am1', 'bloque', '2018-11-23', ''), +(5110, 76, 0, 31, '2019-01-21', 'am2', 'bloque', '2018-11-23', ''), +(5111, 76, 0, 31, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(5112, 76, 0, 31, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(5113, 76, 0, 31, '2019-01-22', 'am1', 'bloque', '2018-11-23', ''), +(5114, 76, 0, 31, '2019-01-22', 'am2', 'bloque', '2018-11-23', ''), +(5115, 76, 0, 31, '2019-01-22', 'pm1', 'bloque', '2018-11-23', ''), +(5116, 76, 0, 31, '2019-01-22', 'pm2', 'bloque', '2018-11-23', ''), +(5117, 76, 0, 31, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(5118, 76, 0, 31, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(5119, 76, 0, 31, '2019-01-23', 'pm1', 'bloque', '2018-11-23', ''), +(5120, 76, 0, 31, '2019-01-23', 'pm2', 'bloque', '2018-11-23', ''), +(5121, 76, 0, 31, '2019-01-24', 'am1', 'bloque', '2018-11-23', ''), +(5122, 76, 0, 31, '2019-01-24', 'am2', 'bloque', '2018-11-23', ''), +(5123, 76, 0, 31, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(5124, 76, 0, 31, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(5125, 76, 0, 31, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(5126, 76, 0, 31, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(5127, 76, 0, 31, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(5128, 76, 0, 31, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(5129, 76, 0, 31, '2019-01-28', 'am1', 'bloque', '2018-11-23', ''), +(5130, 76, 0, 31, '2019-01-28', 'am2', 'bloque', '2018-11-23', ''), +(5131, 76, 0, 31, '2019-01-28', 'pm1', 'bloque', '2018-11-23', ''), +(5132, 76, 0, 31, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(5133, 76, 0, 31, '2019-01-29', 'am1', 'bloque', '2018-11-23', ''), +(5134, 76, 0, 31, '2019-01-29', 'am2', 'bloque', '2018-11-23', ''), +(5135, 76, 0, 31, '2019-01-29', 'pm1', 'bloque', '2018-11-23', ''), +(5136, 76, 0, 31, '2019-01-29', 'pm2', 'bloque', '2018-11-23', ''), +(5137, 76, 0, 31, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(5138, 76, 0, 31, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(5139, 76, 0, 31, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(5140, 76, 0, 31, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(5141, 76, 0, 31, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(5142, 76, 0, 31, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(5143, 76, 0, 31, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(5144, 76, 0, 31, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(5145, 76, 0, 31, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(5146, 76, 0, 31, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(5147, 76, 0, 31, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(5148, 76, 0, 31, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(5149, 76, 0, 31, '2019-02-04', 'am1', 'bloque', '2018-11-23', ''), +(5150, 76, 0, 31, '2019-02-04', 'am2', 'bloque', '2018-11-23', ''), +(5151, 76, 0, 31, '2019-02-04', 'pm1', 'bloque', '2018-11-23', ''), +(5152, 76, 0, 31, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(5153, 76, 0, 31, '2019-02-05', 'am1', 'bloque', '2018-11-23', ''), +(5154, 76, 0, 31, '2019-02-05', 'am2', 'bloque', '2018-11-23', ''), +(5155, 76, 0, 31, '2019-02-05', 'pm1', 'bloque', '2018-11-23', ''), +(5156, 76, 0, 31, '2019-02-05', 'pm2', 'bloque', '2018-11-23', ''), +(5157, 76, 0, 31, '2019-02-06', 'am1', 'bloque', '2018-11-23', ''), +(5158, 76, 0, 31, '2019-02-06', 'am2', 'bloque', '2018-11-23', ''), +(5159, 76, 0, 31, '2019-02-06', 'pm1', 'bloque', '2018-11-23', ''), +(5160, 76, 0, 31, '2019-02-06', 'pm2', 'bloque', '2018-11-23', ''), +(5161, 76, 0, 31, '2019-02-07', 'am1', 'bloque', '2018-11-23', ''), +(5162, 76, 0, 31, '2019-02-07', 'am2', 'bloque', '2018-11-23', ''), +(5163, 76, 0, 31, '2019-02-07', 'pm1', 'bloque', '2018-11-23', ''), +(5164, 76, 0, 31, '2019-02-07', 'pm2', 'bloque', '2018-11-23', ''), +(5165, 76, 0, 31, '2019-02-08', 'am1', 'bloque', '2018-11-23', ''), +(5166, 76, 0, 31, '2019-02-08', 'am2', 'bloque', '2018-11-23', ''), +(5167, 76, 0, 31, '2019-02-08', 'pm1', 'bloque', '2018-11-23', ''), +(5168, 76, 0, 31, '2019-02-08', 'pm2', 'bloque', '2018-11-23', ''), +(5169, 77, 0, 60, '2019-01-17', 'am1', 'libre', '2018-11-23', ''), +(5170, 77, 0, 60, '2019-01-17', 'am2', 'libre', '2018-11-23', ''), +(5171, 77, 89, 60, '2019-01-17', 'pm1', 'reserve', '2018-12-17', 'ref'), +(5172, 77, 0, 60, '2019-01-17', 'pm2', 'libre', '2018-11-23', ''), +(5173, 77, 0, 60, '2019-01-18', 'am1', 'bloque', '2018-11-23', ''), +(5174, 77, 0, 60, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(5175, 77, 0, 60, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(5176, 77, 0, 60, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(5177, 77, 0, 60, '2019-01-21', 'am1', 'bloque', '2018-11-23', ''), +(5178, 77, 0, 60, '2019-01-21', 'am2', 'bloque', '2018-11-23', ''), +(5179, 77, 0, 60, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(5180, 77, 0, 60, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(5181, 77, 0, 60, '2019-01-22', 'am1', 'bloque', '2018-11-23', ''), +(5182, 77, 0, 60, '2019-01-22', 'am2', 'bloque', '2018-11-23', ''), +(5183, 77, 0, 60, '2019-01-22', 'pm1', 'bloque', '2018-11-23', ''), +(5184, 77, 0, 60, '2019-01-22', 'pm2', 'bloque', '2018-11-23', ''), +(5185, 77, 0, 60, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(5186, 77, 0, 60, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(5187, 77, 0, 60, '2019-01-23', 'pm1', 'libre', '2018-11-29', 'ref'), +(5188, 77, 0, 60, '2019-01-23', 'pm2', 'libre', '2018-11-29', 'ref'), +(5189, 77, 0, 60, '2019-01-24', 'am1', 'bloque', '2018-11-23', ''), +(5190, 77, 0, 60, '2019-01-24', 'am2', 'bloque', '2018-11-23', ''), +(5191, 77, 0, 60, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(5192, 77, 0, 60, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(5193, 77, 0, 60, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(5194, 77, 0, 60, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(5195, 77, 0, 60, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(5196, 77, 0, 60, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(5197, 77, 0, 60, '2019-01-28', 'am1', 'bloque', '2018-11-23', ''), +(5198, 77, 0, 60, '2019-01-28', 'am2', 'bloque', '2018-11-23', ''), +(5199, 77, 0, 60, '2019-01-28', 'pm1', 'bloque', '2018-11-23', ''), +(5200, 77, 0, 60, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(5201, 77, 0, 60, '2019-01-29', 'am1', 'bloque', '2018-11-23', ''), +(5202, 77, 0, 60, '2019-01-29', 'am2', 'bloque', '2018-11-23', ''), +(5203, 77, 0, 60, '2019-01-29', 'pm1', 'bloque', '2018-11-23', ''), +(5204, 77, 0, 60, '2019-01-29', 'pm2', 'bloque', '2018-11-23', ''), +(5205, 77, 0, 60, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(5206, 77, 0, 60, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(5207, 77, 0, 60, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(5208, 77, 0, 60, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(5209, 77, 0, 60, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(5210, 77, 0, 60, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(5211, 77, 0, 60, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(5212, 77, 0, 60, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(5213, 77, 0, 60, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(5214, 77, 0, 60, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(5215, 77, 0, 60, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(5216, 77, 0, 60, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(5217, 77, 0, 60, '2019-02-04', 'am1', 'bloque', '2018-11-23', ''), +(5218, 77, 0, 60, '2019-02-04', 'am2', 'bloque', '2018-11-23', ''), +(5219, 77, 0, 60, '2019-02-04', 'pm1', 'bloque', '2018-11-23', ''), +(5220, 77, 0, 60, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(5221, 77, 0, 60, '2019-02-05', 'am1', 'bloque', '2018-11-23', ''), +(5222, 77, 0, 60, '2019-02-05', 'am2', 'bloque', '2018-11-23', ''), +(5223, 77, 0, 60, '2019-02-05', 'pm1', 'bloque', '2018-11-23', ''), +(5224, 77, 0, 60, '2019-02-05', 'pm2', 'bloque', '2018-11-23', ''), +(5225, 77, 0, 60, '2019-02-06', 'am1', 'libre', '2018-11-29', 'ref'), +(5226, 77, 0, 60, '2019-02-06', 'am2', 'libre', '2018-11-29', 'ref'), +(5227, 77, 0, 60, '2019-02-06', 'pm1', 'libre', '2018-11-29', 'ref'), +(5228, 77, 0, 60, '2019-02-06', 'pm2', 'libre', '2018-11-29', 'ref'), +(5229, 77, 0, 60, '2019-02-07', 'am1', 'libre', '2018-11-29', 'ref'), +(5230, 77, 0, 60, '2019-02-07', 'am2', 'libre', '2018-11-29', 'ref'), +(5231, 77, 0, 60, '2019-02-07', 'pm1', 'libre', '2018-11-29', 'ref'), +(5232, 77, 0, 60, '2019-02-07', 'pm2', 'libre', '2018-11-29', 'ref'), +(5233, 77, 0, 60, '2019-02-08', 'am1', 'bloque', '2018-11-23', ''), +(5234, 77, 0, 60, '2019-02-08', 'am2', 'bloque', '2018-11-23', ''), +(5235, 77, 0, 60, '2019-02-08', 'pm1', 'bloque', '2018-11-23', ''), +(5236, 77, 0, 60, '2019-02-08', 'pm2', 'bloque', '2018-11-23', ''), +(5237, 78, 0, 409, '2019-01-17', 'am1', 'libre', '2018-11-23', ''), +(5238, 78, 0, 409, '2019-01-17', 'am2', 'libre', '2018-11-23', ''), +(5239, 78, 0, 409, '2019-01-17', 'pm1', 'libre', '2018-11-23', ''), +(5240, 78, 0, 409, '2019-01-17', 'pm2', 'libre', '2018-11-23', ''), +(5241, 78, 0, 409, '2019-01-18', 'am1', 'bloque', '2018-11-23', ''), +(5242, 78, 0, 409, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(5243, 78, 0, 409, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(5244, 78, 0, 409, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(5245, 78, 0, 409, '2019-01-21', 'am1', 'bloque', '2018-11-23', ''), +(5246, 78, 0, 409, '2019-01-21', 'am2', 'bloque', '2018-11-23', ''), +(5247, 78, 0, 409, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(5248, 78, 0, 409, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(5249, 78, 0, 409, '2019-01-22', 'am1', 'bloque', '2018-11-23', ''), +(5250, 78, 0, 409, '2019-01-22', 'am2', 'bloque', '2018-11-23', ''), +(5251, 78, 0, 409, '2019-01-22', 'pm1', 'bloque', '2018-11-23', ''), +(5252, 78, 0, 409, '2019-01-22', 'pm2', 'bloque', '2018-11-23', ''), +(5253, 78, 0, 409, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(5254, 78, 0, 409, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(5255, 78, 0, 409, '2019-01-23', 'pm1', 'bloque', '2018-11-23', ''), +(5256, 78, 0, 409, '2019-01-23', 'pm2', 'bloque', '2018-11-23', ''), +(5257, 78, 0, 409, '2019-01-24', 'am1', 'bloque', '2018-11-23', ''), +(5258, 78, 0, 409, '2019-01-24', 'am2', 'bloque', '2018-11-23', ''), +(5259, 78, 0, 409, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(5260, 78, 0, 409, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(5261, 78, 0, 409, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(5262, 78, 0, 409, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(5263, 78, 0, 409, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(5264, 78, 0, 409, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(5265, 78, 0, 409, '2019-01-28', 'am1', 'bloque', '2018-11-23', ''), +(5266, 78, 0, 409, '2019-01-28', 'am2', 'bloque', '2018-11-23', ''), +(5267, 78, 0, 409, '2019-01-28', 'pm1', 'bloque', '2018-11-23', ''), +(5268, 78, 0, 409, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(5269, 78, 0, 409, '2019-01-29', 'am1', 'bloque', '2018-11-23', ''), +(5270, 78, 0, 409, '2019-01-29', 'am2', 'bloque', '2018-11-23', ''), +(5271, 78, 0, 409, '2019-01-29', 'pm1', 'bloque', '2018-11-23', ''), +(5272, 78, 0, 409, '2019-01-29', 'pm2', 'bloque', '2018-11-23', ''), +(5273, 78, 0, 409, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(5274, 78, 0, 409, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(5275, 78, 0, 409, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(5276, 78, 0, 409, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(5277, 78, 0, 409, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(5278, 78, 0, 409, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(5279, 78, 0, 409, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(5280, 78, 0, 409, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(5281, 78, 0, 409, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(5282, 78, 0, 409, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(5283, 78, 0, 409, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(5284, 78, 0, 409, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(5285, 78, 0, 409, '2019-02-04', 'am1', 'bloque', '2018-11-23', ''), +(5286, 78, 0, 409, '2019-02-04', 'am2', 'bloque', '2018-11-23', ''), +(5287, 78, 0, 409, '2019-02-04', 'pm1', 'bloque', '2018-11-23', ''), +(5288, 78, 0, 409, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(5289, 78, 0, 409, '2019-02-05', 'am1', 'bloque', '2018-11-23', ''), +(5290, 78, 0, 409, '2019-02-05', 'am2', 'bloque', '2018-11-23', ''), +(5291, 78, 0, 409, '2019-02-05', 'pm1', 'bloque', '2018-11-23', ''), +(5292, 78, 0, 409, '2019-02-05', 'pm2', 'bloque', '2018-11-23', ''), +(5293, 78, 0, 409, '2019-02-06', 'am1', 'bloque', '2018-11-23', ''), +(5294, 78, 0, 409, '2019-02-06', 'am2', 'bloque', '2018-11-23', ''), +(5295, 78, 0, 409, '2019-02-06', 'pm1', 'bloque', '2018-11-23', ''), +(5296, 78, 0, 409, '2019-02-06', 'pm2', 'bloque', '2018-11-23', ''), +(5297, 78, 0, 409, '2019-02-07', 'am1', 'bloque', '2018-11-23', ''), +(5298, 78, 0, 409, '2019-02-07', 'am2', 'bloque', '2018-11-23', ''), +(5299, 78, 0, 409, '2019-02-07', 'pm1', 'bloque', '2018-11-23', ''), +(5300, 78, 0, 409, '2019-02-07', 'pm2', 'bloque', '2018-11-23', ''), +(5301, 78, 0, 409, '2019-02-08', 'am1', 'bloque', '2018-11-23', ''), +(5302, 78, 0, 409, '2019-02-08', 'am2', 'bloque', '2018-11-23', ''), +(5303, 78, 0, 409, '2019-02-08', 'pm1', 'bloque', '2018-11-23', ''), +(5304, 78, 0, 409, '2019-02-08', 'pm2', 'bloque', '2018-11-23', ''), +(5305, 79, 0, 409, '2019-01-17', 'am1', 'libre', '2018-11-23', ''), +(5306, 79, 0, 409, '2019-01-17', 'am2', 'libre', '2018-11-23', ''), +(5307, 79, 0, 409, '2019-01-17', 'pm1', 'libre', '2018-11-23', ''), +(5308, 79, 0, 409, '2019-01-17', 'pm2', 'libre', '2018-11-23', ''), +(5309, 79, 0, 409, '2019-01-18', 'am1', 'bloque', '2018-11-23', ''), +(5310, 79, 0, 409, '2019-01-18', 'am2', 'bloque', '2018-11-23', ''), +(5311, 79, 0, 409, '2019-01-18', 'pm1', 'bloque', '2018-11-23', ''), +(5312, 79, 0, 409, '2019-01-18', 'pm2', 'bloque', '2018-11-23', ''), +(5313, 79, 0, 409, '2019-01-21', 'am1', 'bloque', '2018-11-23', ''), +(5314, 79, 0, 409, '2019-01-21', 'am2', 'bloque', '2018-11-23', ''), +(5315, 79, 0, 409, '2019-01-21', 'pm1', 'bloque', '2018-11-23', ''), +(5316, 79, 0, 409, '2019-01-21', 'pm2', 'bloque', '2018-11-23', ''), +(5317, 79, 0, 409, '2019-01-22', 'am1', 'bloque', '2018-11-23', ''), +(5318, 79, 0, 409, '2019-01-22', 'am2', 'bloque', '2018-11-23', ''), +(5319, 79, 0, 409, '2019-01-22', 'pm1', 'bloque', '2018-11-23', ''), +(5320, 79, 0, 409, '2019-01-22', 'pm2', 'bloque', '2018-11-23', ''), +(5321, 79, 0, 409, '2019-01-23', 'am1', 'bloque', '2018-11-23', ''), +(5322, 79, 0, 409, '2019-01-23', 'am2', 'bloque', '2018-11-23', ''), +(5323, 79, 0, 409, '2019-01-23', 'pm1', 'bloque', '2018-11-23', ''), +(5324, 79, 0, 409, '2019-01-23', 'pm2', 'bloque', '2018-11-23', ''), +(5325, 79, 0, 409, '2019-01-24', 'am1', 'bloque', '2018-11-23', ''), +(5326, 79, 0, 409, '2019-01-24', 'am2', 'bloque', '2018-11-23', ''), +(5327, 79, 0, 409, '2019-01-24', 'pm1', 'bloque', '2018-11-23', ''), +(5328, 79, 0, 409, '2019-01-24', 'pm2', 'bloque', '2018-11-23', ''), +(5329, 79, 0, 409, '2019-01-25', 'am1', 'bloque', '2018-11-23', ''), +(5330, 79, 0, 409, '2019-01-25', 'am2', 'bloque', '2018-11-23', ''), +(5331, 79, 0, 409, '2019-01-25', 'pm1', 'bloque', '2018-11-23', ''), +(5332, 79, 0, 409, '2019-01-25', 'pm2', 'bloque', '2018-11-23', ''), +(5333, 79, 0, 409, '2019-01-28', 'am1', 'bloque', '2018-11-23', ''), +(5334, 79, 0, 409, '2019-01-28', 'am2', 'bloque', '2018-11-23', ''), +(5335, 79, 0, 409, '2019-01-28', 'pm1', 'bloque', '2018-11-23', ''), +(5336, 79, 0, 409, '2019-01-28', 'pm2', 'bloque', '2018-11-23', ''), +(5337, 79, 0, 409, '2019-01-29', 'am1', 'bloque', '2018-11-23', ''), +(5338, 79, 0, 409, '2019-01-29', 'am2', 'bloque', '2018-11-23', ''), +(5339, 79, 0, 409, '2019-01-29', 'pm1', 'bloque', '2018-11-23', ''), +(5340, 79, 0, 409, '2019-01-29', 'pm2', 'bloque', '2018-11-23', ''), +(5341, 79, 0, 409, '2019-01-30', 'am1', 'bloque', '2018-11-23', ''), +(5342, 79, 0, 409, '2019-01-30', 'am2', 'bloque', '2018-11-23', ''), +(5343, 79, 0, 409, '2019-01-30', 'pm1', 'bloque', '2018-11-23', ''), +(5344, 79, 0, 409, '2019-01-30', 'pm2', 'bloque', '2018-11-23', ''), +(5345, 79, 0, 409, '2019-01-31', 'am1', 'bloque', '2018-11-23', ''), +(5346, 79, 0, 409, '2019-01-31', 'am2', 'bloque', '2018-11-23', ''), +(5347, 79, 0, 409, '2019-01-31', 'pm1', 'bloque', '2018-11-23', ''), +(5348, 79, 0, 409, '2019-01-31', 'pm2', 'bloque', '2018-11-23', ''), +(5349, 79, 0, 409, '2019-02-01', 'am1', 'bloque', '2018-11-23', ''), +(5350, 79, 0, 409, '2019-02-01', 'am2', 'bloque', '2018-11-23', ''), +(5351, 79, 0, 409, '2019-02-01', 'pm1', 'bloque', '2018-11-23', ''), +(5352, 79, 0, 409, '2019-02-01', 'pm2', 'bloque', '2018-11-23', ''), +(5353, 79, 0, 409, '2019-02-04', 'am1', 'bloque', '2018-11-23', ''), +(5354, 79, 0, 409, '2019-02-04', 'am2', 'bloque', '2018-11-23', ''), +(5355, 79, 0, 409, '2019-02-04', 'pm1', 'bloque', '2018-11-23', ''), +(5356, 79, 0, 409, '2019-02-04', 'pm2', 'bloque', '2018-11-23', ''), +(5357, 79, 0, 409, '2019-02-05', 'am1', 'bloque', '2018-11-23', ''), +(5358, 79, 0, 409, '2019-02-05', 'am2', 'bloque', '2018-11-23', ''), +(5359, 79, 0, 409, '2019-02-05', 'pm1', 'bloque', '2018-11-23', ''), +(5360, 79, 0, 409, '2019-02-05', 'pm2', 'bloque', '2018-11-23', ''), +(5361, 79, 0, 409, '2019-02-06', 'am1', 'bloque', '2018-11-23', ''), +(5362, 79, 0, 409, '2019-02-06', 'am2', 'bloque', '2018-11-23', ''), +(5363, 79, 0, 409, '2019-02-06', 'pm1', 'bloque', '2018-11-23', ''), +(5364, 79, 0, 409, '2019-02-06', 'pm2', 'bloque', '2018-11-23', ''), +(5365, 79, 0, 409, '2019-02-07', 'am1', 'bloque', '2018-11-23', ''), +(5366, 79, 0, 409, '2019-02-07', 'am2', 'bloque', '2018-11-23', ''), +(5367, 79, 0, 409, '2019-02-07', 'pm1', 'bloque', '2018-11-23', ''), +(5368, 79, 0, 409, '2019-02-07', 'pm2', 'bloque', '2018-11-23', ''), +(5369, 79, 0, 409, '2019-02-08', 'am1', 'bloque', '2018-11-23', ''), +(5370, 79, 0, 409, '2019-02-08', 'am2', 'bloque', '2018-11-23', ''), +(5371, 79, 0, 409, '2019-02-08', 'pm1', 'bloque', '2018-11-23', ''), +(5372, 79, 0, 409, '2019-02-08', 'pm2', 'bloque', '2018-11-23', ''), +(5373, 80, 0, 345, '2019-01-17', 'am1', 'libre', '2018-11-25', ''), +(5374, 80, 0, 345, '2019-01-17', 'am2', 'libre', '2018-11-25', ''), +(5375, 80, 0, 345, '2019-01-17', 'pm1', 'libre', '2018-11-25', ''), +(5376, 80, 0, 345, '2019-01-17', 'pm2', 'libre', '2018-11-25', ''), +(5377, 80, 0, 345, '2019-01-18', 'am1', 'bloque', '2018-11-25', ''), +(5378, 80, 0, 345, '2019-01-18', 'am2', 'bloque', '2018-11-25', ''), +(5379, 80, 0, 345, '2019-01-18', 'pm1', 'bloque', '2018-11-25', ''), +(5380, 80, 0, 345, '2019-01-18', 'pm2', 'bloque', '2018-11-25', ''), +(5381, 80, 0, 345, '2019-01-21', 'am1', 'bloque', '2018-11-25', ''), +(5382, 80, 0, 345, '2019-01-21', 'am2', 'bloque', '2018-11-25', ''), +(5383, 80, 0, 345, '2019-01-21', 'pm1', 'bloque', '2018-11-25', ''), +(5384, 80, 0, 345, '2019-01-21', 'pm2', 'bloque', '2018-11-25', ''), +(5385, 80, 0, 345, '2019-01-22', 'am1', 'bloque', '2018-11-25', ''), +(5386, 80, 0, 345, '2019-01-22', 'am2', 'bloque', '2018-11-25', ''), +(5387, 80, 0, 345, '2019-01-22', 'pm1', 'bloque', '2018-11-25', ''), +(5388, 80, 0, 345, '2019-01-22', 'pm2', 'bloque', '2018-11-25', ''), +(5389, 80, 0, 345, '2019-01-23', 'am1', 'bloque', '2018-11-25', ''), +(5390, 80, 0, 345, '2019-01-23', 'am2', 'bloque', '2018-11-25', ''), +(5391, 80, 0, 345, '2019-01-23', 'pm1', 'bloque', '2018-11-25', ''), +(5392, 80, 0, 345, '2019-01-23', 'pm2', 'bloque', '2018-11-25', ''), +(5393, 80, 0, 345, '2019-01-24', 'am1', 'bloque', '2018-11-25', ''), +(5394, 80, 0, 345, '2019-01-24', 'am2', 'bloque', '2018-11-25', ''), +(5395, 80, 0, 345, '2019-01-24', 'pm1', 'bloque', '2018-11-25', ''), +(5396, 80, 0, 345, '2019-01-24', 'pm2', 'bloque', '2018-11-25', ''), +(5397, 80, 0, 345, '2019-01-25', 'am1', 'bloque', '2018-11-25', ''), +(5398, 80, 0, 345, '2019-01-25', 'am2', 'bloque', '2018-11-25', ''), +(5399, 80, 0, 345, '2019-01-25', 'pm1', 'bloque', '2018-11-25', ''), +(5400, 80, 0, 345, '2019-01-25', 'pm2', 'bloque', '2018-11-25', ''), +(5401, 80, 0, 345, '2019-01-28', 'am1', 'bloque', '2018-11-25', ''), +(5402, 80, 0, 345, '2019-01-28', 'am2', 'bloque', '2018-11-25', ''), +(5403, 80, 0, 345, '2019-01-28', 'pm1', 'bloque', '2018-11-25', ''), +(5404, 80, 0, 345, '2019-01-28', 'pm2', 'bloque', '2018-11-25', ''), +(5405, 80, 0, 345, '2019-01-29', 'am1', 'bloque', '2018-11-25', ''), +(5406, 80, 0, 345, '2019-01-29', 'am2', 'bloque', '2018-11-25', ''), +(5407, 80, 0, 345, '2019-01-29', 'pm1', 'bloque', '2018-11-25', ''), +(5408, 80, 0, 345, '2019-01-29', 'pm2', 'bloque', '2018-11-25', ''), +(5409, 80, 0, 345, '2019-01-30', 'am1', 'bloque', '2018-11-25', ''), +(5410, 80, 0, 345, '2019-01-30', 'am2', 'bloque', '2018-11-25', ''), +(5411, 80, 0, 345, '2019-01-30', 'pm1', 'bloque', '2018-11-25', ''), +(5412, 80, 0, 345, '2019-01-30', 'pm2', 'bloque', '2018-11-25', ''), +(5413, 80, 0, 345, '2019-01-31', 'am1', 'bloque', '2018-11-25', ''), +(5414, 80, 0, 345, '2019-01-31', 'am2', 'bloque', '2018-11-25', ''), +(5415, 80, 0, 345, '2019-01-31', 'pm1', 'bloque', '2018-11-25', ''), +(5416, 80, 0, 345, '2019-01-31', 'pm2', 'bloque', '2018-11-25', ''), +(5417, 80, 0, 345, '2019-02-01', 'am1', 'bloque', '2018-11-25', ''), +(5418, 80, 0, 345, '2019-02-01', 'am2', 'bloque', '2018-11-25', ''), +(5419, 80, 0, 345, '2019-02-01', 'pm1', 'bloque', '2018-11-25', ''), +(5420, 80, 0, 345, '2019-02-01', 'pm2', 'bloque', '2018-11-25', ''), +(5421, 80, 0, 345, '2019-02-04', 'am1', 'bloque', '2018-11-25', ''), +(5422, 80, 0, 345, '2019-02-04', 'am2', 'bloque', '2018-11-25', ''), +(5423, 80, 0, 345, '2019-02-04', 'pm1', 'bloque', '2018-11-25', ''), +(5424, 80, 0, 345, '2019-02-04', 'pm2', 'bloque', '2018-11-25', ''), +(5425, 80, 0, 345, '2019-02-05', 'am1', 'bloque', '2018-11-25', ''), +(5426, 80, 0, 345, '2019-02-05', 'am2', 'bloque', '2018-11-25', ''), +(5427, 80, 0, 345, '2019-02-05', 'pm1', 'bloque', '2018-11-25', ''), +(5428, 80, 0, 345, '2019-02-05', 'pm2', 'bloque', '2018-11-25', ''), +(5429, 80, 0, 345, '2019-02-06', 'am1', 'bloque', '2018-11-25', ''), +(5430, 80, 0, 345, '2019-02-06', 'am2', 'bloque', '2018-11-25', ''), +(5431, 80, 0, 345, '2019-02-06', 'pm1', 'bloque', '2018-11-25', ''), +(5432, 80, 0, 345, '2019-02-06', 'pm2', 'bloque', '2018-11-25', ''), +(5433, 80, 0, 345, '2019-02-07', 'am1', 'bloque', '2018-11-25', ''), +(5434, 80, 0, 345, '2019-02-07', 'am2', 'bloque', '2018-11-25', ''), +(5435, 80, 0, 345, '2019-02-07', 'pm1', 'bloque', '2018-11-25', ''), +(5436, 80, 0, 345, '2019-02-07', 'pm2', 'bloque', '2018-11-25', ''), +(5437, 80, 0, 345, '2019-02-08', 'am1', 'bloque', '2018-11-25', ''), +(5438, 80, 0, 345, '2019-02-08', 'am2', 'bloque', '2018-11-25', ''), +(5439, 80, 0, 345, '2019-02-08', 'pm1', 'bloque', '2018-11-25', ''), +(5440, 80, 0, 345, '2019-02-08', 'pm2', 'bloque', '2018-11-25', ''), +(5441, 81, 0, 345, '2019-01-17', 'am1', 'libre', '2018-11-25', ''), +(5442, 81, 0, 345, '2019-01-17', 'am2', 'libre', '2018-11-25', ''), +(5443, 81, 0, 345, '2019-01-17', 'pm1', 'libre', '2018-11-25', ''), +(5444, 81, 0, 345, '2019-01-17', 'pm2', 'libre', '2018-11-25', ''), +(5445, 81, 0, 345, '2019-01-18', 'am1', 'bloque', '2018-11-25', ''), +(5446, 81, 0, 345, '2019-01-18', 'am2', 'bloque', '2018-11-25', ''), +(5447, 81, 0, 345, '2019-01-18', 'pm1', 'bloque', '2018-11-25', ''), +(5448, 81, 0, 345, '2019-01-18', 'pm2', 'bloque', '2018-11-25', ''), +(5449, 81, 0, 345, '2019-01-21', 'am1', 'bloque', '2018-11-25', ''), +(5450, 81, 0, 345, '2019-01-21', 'am2', 'bloque', '2018-11-25', ''), +(5451, 81, 0, 345, '2019-01-21', 'pm1', 'bloque', '2018-11-25', ''), +(5452, 81, 0, 345, '2019-01-21', 'pm2', 'bloque', '2018-11-25', ''), +(5453, 81, 0, 345, '2019-01-22', 'am1', 'bloque', '2018-11-25', ''), +(5454, 81, 0, 345, '2019-01-22', 'am2', 'bloque', '2018-11-25', ''), +(5455, 81, 0, 345, '2019-01-22', 'pm1', 'bloque', '2018-11-25', ''), +(5456, 81, 0, 345, '2019-01-22', 'pm2', 'bloque', '2018-11-25', ''), +(5457, 81, 0, 345, '2019-01-23', 'am1', 'bloque', '2018-11-25', ''), +(5458, 81, 0, 345, '2019-01-23', 'am2', 'bloque', '2018-11-25', ''), +(5459, 81, 0, 345, '2019-01-23', 'pm1', 'bloque', '2018-11-25', ''), +(5460, 81, 0, 345, '2019-01-23', 'pm2', 'bloque', '2018-11-25', ''), +(5461, 81, 0, 345, '2019-01-24', 'am1', 'bloque', '2018-11-25', ''), +(5462, 81, 0, 345, '2019-01-24', 'am2', 'bloque', '2018-11-25', ''), +(5463, 81, 0, 345, '2019-01-24', 'pm1', 'bloque', '2018-11-25', ''), +(5464, 81, 0, 345, '2019-01-24', 'pm2', 'bloque', '2018-11-25', ''), +(5465, 81, 0, 345, '2019-01-25', 'am1', 'bloque', '2018-11-25', ''), +(5466, 81, 0, 345, '2019-01-25', 'am2', 'bloque', '2018-11-25', ''), +(5467, 81, 0, 345, '2019-01-25', 'pm1', 'bloque', '2018-11-25', ''), +(5468, 81, 0, 345, '2019-01-25', 'pm2', 'bloque', '2018-11-25', ''), +(5469, 81, 0, 345, '2019-01-28', 'am1', 'bloque', '2018-11-25', ''), +(5470, 81, 0, 345, '2019-01-28', 'am2', 'bloque', '2018-11-25', ''), +(5471, 81, 0, 345, '2019-01-28', 'pm1', 'bloque', '2018-11-25', ''), +(5472, 81, 0, 345, '2019-01-28', 'pm2', 'bloque', '2018-11-25', ''), +(5473, 81, 0, 345, '2019-01-29', 'am1', 'bloque', '2018-11-25', ''), +(5474, 81, 0, 345, '2019-01-29', 'am2', 'bloque', '2018-11-25', ''), +(5475, 81, 0, 345, '2019-01-29', 'pm1', 'bloque', '2018-11-25', ''), +(5476, 81, 0, 345, '2019-01-29', 'pm2', 'bloque', '2018-11-25', ''), +(5477, 81, 0, 345, '2019-01-30', 'am1', 'bloque', '2018-11-25', ''), +(5478, 81, 0, 345, '2019-01-30', 'am2', 'bloque', '2018-11-25', ''), +(5479, 81, 0, 345, '2019-01-30', 'pm1', 'bloque', '2018-11-25', ''), +(5480, 81, 0, 345, '2019-01-30', 'pm2', 'bloque', '2018-11-25', ''), +(5481, 81, 0, 345, '2019-01-31', 'am1', 'bloque', '2018-11-25', ''), +(5482, 81, 0, 345, '2019-01-31', 'am2', 'bloque', '2018-11-25', ''), +(5483, 81, 0, 345, '2019-01-31', 'pm1', 'bloque', '2018-11-25', ''), +(5484, 81, 0, 345, '2019-01-31', 'pm2', 'bloque', '2018-11-25', ''), +(5485, 81, 0, 345, '2019-02-01', 'am1', 'bloque', '2018-11-25', ''), +(5486, 81, 0, 345, '2019-02-01', 'am2', 'bloque', '2018-11-25', ''), +(5487, 81, 0, 345, '2019-02-01', 'pm1', 'bloque', '2018-11-25', ''), +(5488, 81, 0, 345, '2019-02-01', 'pm2', 'bloque', '2018-11-25', ''), +(5489, 81, 0, 345, '2019-02-04', 'am1', 'bloque', '2018-11-25', ''), +(5490, 81, 0, 345, '2019-02-04', 'am2', 'bloque', '2018-11-25', ''), +(5491, 81, 0, 345, '2019-02-04', 'pm1', 'bloque', '2018-11-25', ''), +(5492, 81, 0, 345, '2019-02-04', 'pm2', 'bloque', '2018-11-25', ''), +(5493, 81, 0, 345, '2019-02-05', 'am1', 'bloque', '2018-11-25', ''), +(5494, 81, 0, 345, '2019-02-05', 'am2', 'bloque', '2018-11-25', ''), +(5495, 81, 0, 345, '2019-02-05', 'pm1', 'bloque', '2018-11-25', ''), +(5496, 81, 0, 345, '2019-02-05', 'pm2', 'bloque', '2018-11-25', ''), +(5497, 81, 0, 345, '2019-02-06', 'am1', 'bloque', '2018-11-25', ''), +(5498, 81, 0, 345, '2019-02-06', 'am2', 'bloque', '2018-11-25', ''), +(5499, 81, 0, 345, '2019-02-06', 'pm1', 'bloque', '2018-11-25', ''), +(5500, 81, 0, 345, '2019-02-06', 'pm2', 'bloque', '2018-11-25', ''), +(5501, 81, 0, 345, '2019-02-07', 'am1', 'bloque', '2018-11-25', ''), +(5502, 81, 0, 345, '2019-02-07', 'am2', 'bloque', '2018-11-25', ''), +(5503, 81, 0, 345, '2019-02-07', 'pm1', 'bloque', '2018-11-25', ''), +(5504, 81, 0, 345, '2019-02-07', 'pm2', 'bloque', '2018-11-25', ''), +(5505, 81, 0, 345, '2019-02-08', 'am1', 'bloque', '2018-11-25', ''), +(5506, 81, 0, 345, '2019-02-08', 'am2', 'bloque', '2018-11-25', ''), +(5507, 81, 0, 345, '2019-02-08', 'pm1', 'bloque', '2018-11-25', ''), +(5508, 81, 0, 345, '2019-02-08', 'pm2', 'bloque', '2018-11-25', ''), +(5509, 82, 0, 238, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(5510, 82, 0, 238, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(5511, 82, 0, 238, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(5512, 82, 0, 238, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(5513, 82, 0, 238, '2019-01-18', 'am1', 'libre', '2018-11-26', 'ref'), +(5514, 82, 0, 238, '2019-01-18', 'am2', 'libre', '2018-11-26', 'ref'), +(5515, 82, 0, 238, '2019-01-18', 'pm1', 'libre', '2018-11-26', 'ref'), +(5516, 82, 0, 238, '2019-01-18', 'pm2', 'libre', '2018-11-26', 'ref'), +(5517, 82, 0, 238, '2019-01-21', 'am1', 'libre', '2018-11-26', 'ref'), +(5518, 82, 0, 238, '2019-01-21', 'am2', 'libre', '2018-11-26', 'ref'), +(5519, 82, 0, 238, '2019-01-21', 'pm1', 'libre', '2018-11-26', 'ref'), +(5520, 82, 0, 238, '2019-01-21', 'pm2', 'libre', '2018-11-26', 'ref'), +(5521, 82, 0, 238, '2019-01-22', 'am1', 'libre', '2018-11-26', 'ref'), +(5522, 82, 0, 238, '2019-01-22', 'am2', 'libre', '2018-11-26', 'ref'), +(5523, 82, 0, 238, '2019-01-22', 'pm1', 'libre', '2018-11-26', 'ref'), +(5524, 82, 0, 238, '2019-01-22', 'pm2', 'libre', '2018-11-26', 'ref'), +(5525, 82, 0, 238, '2019-01-23', 'am1', 'libre', '2018-11-26', 'ref'), +(5526, 82, 0, 238, '2019-01-23', 'am2', 'libre', '2018-11-26', 'ref'), +(5527, 82, 0, 238, '2019-01-23', 'pm1', 'libre', '2018-11-26', 'ref'), +(5528, 82, 0, 238, '2019-01-23', 'pm2', 'libre', '2018-11-26', 'ref'), +(5529, 82, 0, 238, '2019-01-24', 'am1', 'libre', '2018-11-26', 'ref'), +(5530, 82, 0, 238, '2019-01-24', 'am2', 'libre', '2018-11-26', 'ref'), +(5531, 82, 0, 238, '2019-01-24', 'pm1', 'libre', '2018-11-26', 'ref'), +(5532, 82, 0, 238, '2019-01-24', 'pm2', 'libre', '2018-11-26', 'ref'), +(5533, 82, 0, 238, '2019-01-25', 'am1', 'libre', '2018-11-26', 'ref'), +(5534, 82, 0, 238, '2019-01-25', 'am2', 'libre', '2018-11-26', 'ref'), +(5535, 82, 0, 238, '2019-01-25', 'pm1', 'libre', '2018-11-26', 'ref'), +(5536, 82, 0, 238, '2019-01-25', 'pm2', 'libre', '2018-11-26', 'ref'), +(5537, 82, 0, 238, '2019-01-28', 'am1', 'libre', '2018-11-26', 'ref'), +(5538, 82, 0, 238, '2019-01-28', 'am2', 'libre', '2018-11-26', 'ref'), +(5539, 82, 0, 238, '2019-01-28', 'pm1', 'libre', '2018-11-26', 'ref'), +(5540, 82, 0, 238, '2019-01-28', 'pm2', 'libre', '2019-01-10', 'cap'), +(5541, 82, 0, 238, '2019-01-29', 'am1', 'libre', '2018-11-26', 'ref'), +(5542, 82, 0, 238, '2019-01-29', 'am2', 'libre', '2018-11-26', 'ref'), +(5543, 82, 0, 238, '2019-01-29', 'pm1', 'libre', '2018-11-26', 'ref'), +(5544, 82, 0, 238, '2019-01-29', 'pm2', 'libre', '2019-01-10', 'cap'), +(5545, 82, 0, 238, '2019-01-30', 'am1', 'libre', '2018-11-26', 'ref'), +(5546, 82, 0, 238, '2019-01-30', 'am2', 'libre', '2018-11-26', 'ref'), +(5547, 82, 0, 238, '2019-01-30', 'pm1', 'libre', '2019-01-10', 'cap'), +(5548, 82, 0, 238, '2019-01-30', 'pm2', 'libre', '2019-01-10', 'cap'), +(5549, 82, 0, 238, '2019-01-31', 'am1', 'libre', '2019-01-10', 'cap'), +(5550, 82, 0, 238, '2019-01-31', 'am2', 'libre', '2019-01-10', 'cap'), +(5551, 82, 0, 238, '2019-01-31', 'pm1', 'libre', '2019-01-10', 'cap'), +(5552, 82, 0, 238, '2019-01-31', 'pm2', 'libre', '2019-01-10', 'cap'), +(5553, 82, 0, 238, '2019-02-01', 'am1', 'libre', '2019-01-10', 'cap'), +(5554, 82, 0, 238, '2019-02-01', 'am2', 'libre', '2019-01-10', 'cap'), +(5555, 82, 0, 238, '2019-02-01', 'pm1', 'libre', '2019-01-10', 'cap'), +(5556, 82, 0, 238, '2019-02-01', 'pm2', 'libre', '2019-01-10', 'cap'), +(5557, 82, 0, 238, '2019-02-04', 'am1', 'libre', '2018-11-26', 'ref'), +(5558, 82, 0, 238, '2019-02-04', 'am2', 'libre', '2019-01-10', 'cap'), +(5559, 82, 0, 238, '2019-02-04', 'pm1', 'libre', '2019-01-14', 'cap'), +(5560, 82, 0, 238, '2019-02-04', 'pm2', 'libre', '2019-01-14', 'cap'), +(5561, 82, 0, 238, '2019-02-05', 'am1', 'libre', '2018-11-26', 'ref'), +(5562, 82, 0, 238, '2019-02-05', 'am2', 'libre', '2019-01-10', 'cap'), +(5563, 82, 0, 238, '2019-02-05', 'pm1', 'libre', '2019-01-14', 'cap'), +(5564, 82, 0, 238, '2019-02-05', 'pm2', 'libre', '2019-01-14', 'cap'), +(5565, 82, 0, 238, '2019-02-06', 'am1', 'libre', '2019-01-10', 'cap'), +(5566, 82, 0, 238, '2019-02-06', 'am2', 'libre', '2019-01-10', 'cap'), +(5567, 82, 0, 238, '2019-02-06', 'pm1', 'libre', '2019-01-14', 'cap'), +(5568, 82, 0, 238, '2019-02-06', 'pm2', 'libre', '2019-01-14', 'cap'), +(5569, 82, 0, 238, '2019-02-07', 'am1', 'libre', '2019-01-10', 'cap'), +(5570, 82, 0, 238, '2019-02-07', 'am2', 'libre', '2019-01-10', 'cap'), +(5571, 82, 0, 238, '2019-02-07', 'pm1', 'libre', '2019-01-14', 'cap'), +(5572, 82, 0, 238, '2019-02-07', 'pm2', 'libre', '2019-01-14', 'cap'), +(5573, 82, 0, 238, '2019-02-08', 'am1', 'libre', '2019-01-10', 'cap'), +(5574, 82, 0, 238, '2019-02-08', 'am2', 'libre', '2019-01-10', 'cap'), +(5575, 82, 0, 238, '2019-02-08', 'pm1', 'libre', '2019-01-14', 'cap'), +(5576, 82, 0, 238, '2019-02-08', 'pm2', 'libre', '2019-01-14', 'cap'), +(5577, 83, 0, 16, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(5578, 83, 0, 16, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(5579, 83, 0, 16, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(5580, 83, 0, 16, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(5581, 83, 0, 16, '2019-01-18', 'am1', 'libre', '2018-11-26', 'ref'), +(5582, 83, 0, 16, '2019-01-18', 'am2', 'libre', '2018-11-26', 'ref'), +(5583, 83, 0, 16, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(5584, 83, 0, 16, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(5585, 83, 0, 16, '2019-01-21', 'am1', 'libre', '2018-11-26', 'ref'), +(5586, 83, 0, 16, '2019-01-21', 'am2', 'libre', '2018-11-26', 'ref'), +(5587, 83, 0, 16, '2019-01-21', 'pm1', 'libre', '2018-11-26', 'ref'), +(5588, 83, 0, 16, '2019-01-21', 'pm2', 'libre', '2018-11-26', 'ref'), +(5589, 83, 0, 16, '2019-01-22', 'am1', 'libre', '2018-11-26', 'ref'), +(5590, 83, 0, 16, '2019-01-22', 'am2', 'libre', '2018-11-26', 'ref'), +(5591, 83, 0, 16, '2019-01-22', 'pm1', 'libre', '2018-11-26', 'ref'), +(5592, 83, 0, 16, '2019-01-22', 'pm2', 'libre', '2018-11-26', 'ref'), +(5593, 83, 0, 16, '2019-01-23', 'am1', 'libre', '2018-11-26', 'ref'), +(5594, 83, 0, 16, '2019-01-23', 'am2', 'libre', '2018-11-26', 'ref'), +(5595, 83, 0, 16, '2019-01-23', 'pm1', 'libre', '2018-11-26', 'ref'), +(5596, 83, 0, 16, '2019-01-23', 'pm2', 'libre', '2018-11-26', 'ref'), +(5597, 83, 0, 16, '2019-01-24', 'am1', 'libre', '2018-11-26', 'ref'), +(5598, 83, 0, 16, '2019-01-24', 'am2', 'libre', '2018-11-26', 'ref'), +(5599, 83, 0, 16, '2019-01-24', 'pm1', 'libre', '2018-11-26', 'ref'), +(5600, 83, 0, 16, '2019-01-24', 'pm2', 'libre', '2018-11-26', 'ref'), +(5601, 83, 0, 16, '2019-01-25', 'am1', 'libre', '2018-11-26', 'ref'), +(5602, 83, 0, 16, '2019-01-25', 'am2', 'libre', '2018-11-26', 'ref'), +(5603, 83, 0, 16, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(5604, 83, 0, 16, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(5605, 83, 0, 16, '2019-01-28', 'am1', 'libre', '2018-11-26', 'ref'), +(5606, 83, 0, 16, '2019-01-28', 'am2', 'libre', '2018-11-26', 'ref'), +(5607, 83, 0, 16, '2019-01-28', 'pm1', 'libre', '2018-11-26', 'ref'), +(5608, 83, 0, 16, '2019-01-28', 'pm2', 'libre', '2018-11-26', 'ref'), +(5609, 83, 0, 16, '2019-01-29', 'am1', 'libre', '2018-11-26', 'ref'), +(5610, 83, 0, 16, '2019-01-29', 'am2', 'libre', '2018-11-26', 'ref'), +(5611, 83, 0, 16, '2019-01-29', 'pm1', 'libre', '2018-11-26', 'ref'), +(5612, 83, 0, 16, '2019-01-29', 'pm2', 'libre', '2018-11-26', 'ref'), +(5613, 83, 0, 16, '2019-01-30', 'am1', 'libre', '2018-11-26', 'ref'), +(5614, 83, 0, 16, '2019-01-30', 'am2', 'libre', '2018-11-26', 'ref'), +(5615, 83, 0, 16, '2019-01-30', 'pm1', 'libre', '2018-11-26', 'ref'), +(5616, 83, 0, 16, '2019-01-30', 'pm2', 'libre', '2018-11-26', 'ref'), +(5617, 83, 0, 16, '2019-01-31', 'am1', 'libre', '2018-11-26', 'ref'), +(5618, 83, 34, 16, '2019-01-31', 'am2', 'reserve', '2018-12-10', 'ref'), +(5619, 83, 0, 16, '2019-01-31', 'pm1', 'libre', '2018-11-26', 'ref'), +(5620, 83, 0, 16, '2019-01-31', 'pm2', 'libre', '2018-11-26', 'ref'), +(5621, 83, 0, 16, '2019-02-01', 'am1', 'libre', '2018-11-26', 'ref'), +(5622, 83, 0, 16, '2019-02-01', 'am2', 'libre', '2018-11-26', 'ref'), +(5623, 83, 0, 16, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(5624, 83, 0, 16, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(5625, 83, 0, 16, '2019-02-04', 'am1', 'libre', '2018-11-26', 'ref'), +(5626, 83, 0, 16, '2019-02-04', 'am2', 'libre', '2018-11-26', 'ref'), +(5627, 83, 0, 16, '2019-02-04', 'pm1', 'libre', '2018-11-26', 'ref'), +(5628, 83, 0, 16, '2019-02-04', 'pm2', 'libre', '2018-11-26', 'ref'), +(5629, 83, 0, 16, '2019-02-05', 'am1', 'libre', '2018-11-26', 'ref'), +(5630, 83, 0, 16, '2019-02-05', 'am2', 'libre', '2018-11-26', 'ref'), +(5631, 83, 0, 16, '2019-02-05', 'pm1', 'libre', '2018-11-26', 'ref'), +(5632, 83, 0, 16, '2019-02-05', 'pm2', 'libre', '2018-11-26', 'ref'), +(5633, 83, 0, 16, '2019-02-06', 'am1', 'libre', '2018-11-26', 'ref'), +(5634, 83, 0, 16, '2019-02-06', 'am2', 'libre', '2018-11-26', 'ref'), +(5635, 83, 0, 16, '2019-02-06', 'pm1', 'libre', '2018-11-26', 'ref'), +(5636, 83, 0, 16, '2019-02-06', 'pm2', 'libre', '2018-11-26', 'ref'), +(5637, 83, 0, 16, '2019-02-07', 'am1', 'libre', '2018-11-26', 'ref'), +(5638, 83, 0, 16, '2019-02-07', 'am2', 'libre', '2018-11-26', 'ref'), +(5639, 83, 0, 16, '2019-02-07', 'pm1', 'libre', '2018-11-26', 'ref'), +(5640, 83, 0, 16, '2019-02-07', 'pm2', 'libre', '2018-11-26', 'ref'), +(5641, 83, 0, 16, '2019-02-08', 'am1', 'libre', '2018-11-26', 'ref'), +(5642, 83, 0, 16, '2019-02-08', 'am2', 'libre', '2018-11-26', 'ref'), +(5643, 83, 0, 16, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(5644, 83, 0, 16, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(14213, 210, 0, 406, '2019-01-17', 'am1', 'libre', '2018-12-17', ''), +(5645, 84, 0, 15, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(5646, 84, 212, 15, '2019-01-17', 'am2', 'reserve', '2019-01-07', 'ref'), +(5647, 84, 52, 15, '2019-01-17', 'pm1', 'reserve', '2018-12-11', 'cap'), +(5648, 84, 0, 15, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(5649, 84, 0, 15, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(5650, 84, 0, 15, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(5651, 84, 0, 15, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(5652, 84, 0, 15, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(5653, 84, 0, 15, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(5654, 84, 0, 15, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(5655, 84, 0, 15, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(5656, 84, 0, 15, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(5657, 84, 275, 15, '2019-01-22', 'am1', 'reserve', '2019-01-14', 'ref'), +(5658, 84, 0, 15, '2019-01-22', 'am2', 'libre', '2018-12-10', 'ref'), +(5659, 84, 0, 15, '2019-01-22', 'pm1', 'libre', '2018-12-10', 'ref'), +(5660, 84, 0, 15, '2019-01-22', 'pm2', 'libre', '2018-12-10', 'ref'), +(5661, 84, 276, 15, '2019-01-23', 'am1', 'reserve', '2019-01-14', 'ref'), +(5662, 84, 309, 15, '2019-01-23', 'am2', 'reserve', '2019-01-18', 'ref'), +(5663, 84, 0, 15, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(5664, 84, 0, 15, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(5665, 84, 0, 15, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(5666, 84, 0, 15, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(5667, 84, 0, 15, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(5668, 84, 0, 15, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(5669, 84, 0, 15, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(5670, 84, 0, 15, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(5671, 84, 0, 15, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(5672, 84, 0, 15, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(5673, 84, 0, 15, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(5674, 84, 0, 15, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(5675, 84, 0, 15, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(5676, 84, 0, 15, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(5677, 84, 0, 15, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(5678, 84, 0, 15, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(5679, 84, 0, 15, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(5680, 84, 0, 15, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(5681, 84, 0, 15, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(5682, 84, 0, 15, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(5683, 84, 0, 15, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(5684, 84, 0, 15, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(5685, 84, 0, 15, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(5686, 84, 0, 15, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(5687, 84, 0, 15, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(5688, 84, 0, 15, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(5689, 84, 0, 15, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(5690, 84, 0, 15, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(5691, 84, 0, 15, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(5692, 84, 0, 15, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(5693, 84, 0, 15, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(5694, 84, 0, 15, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(5695, 84, 0, 15, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(5696, 84, 0, 15, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(5697, 84, 0, 15, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(5698, 84, 0, 15, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(5699, 84, 0, 15, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(5700, 84, 0, 15, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(5701, 84, 0, 15, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(5702, 84, 0, 15, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(5703, 84, 0, 15, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(5704, 84, 0, 15, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(5705, 84, 0, 15, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(5706, 84, 0, 15, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(5707, 84, 0, 15, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(5708, 84, 0, 15, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(5709, 84, 0, 15, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(5710, 84, 0, 15, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(5711, 84, 0, 15, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(5712, 84, 0, 15, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(5713, 85, 114, 404, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'cap'), +(5714, 85, 190, 404, '2019-01-17', 'am2', 'reserve', '2019-01-04', 'cap'), +(5715, 85, 0, 404, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(5716, 85, 0, 404, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(5717, 85, 0, 404, '2019-01-18', 'am1', 'bloque', '2018-12-18', 'cap'), +(5718, 85, 0, 404, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(5719, 85, 0, 404, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(5720, 85, 0, 404, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(5721, 85, 0, 404, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(5722, 85, 0, 404, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(5723, 85, 0, 404, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(5724, 85, 0, 404, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(5725, 85, 0, 404, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(5726, 85, 0, 404, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(5727, 85, 0, 404, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(5728, 85, 0, 404, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(5729, 85, 0, 404, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(5730, 85, 0, 404, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(5731, 85, 0, 404, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(5732, 85, 0, 404, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(5733, 85, 0, 404, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(5734, 85, 0, 404, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(5735, 85, 0, 404, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(5736, 85, 0, 404, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(5737, 85, 0, 404, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(5738, 85, 0, 404, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(5739, 85, 0, 404, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(5740, 85, 0, 404, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(5741, 85, 0, 404, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(5742, 85, 0, 404, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(5743, 85, 0, 404, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(5744, 85, 0, 404, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(5745, 85, 0, 404, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(5746, 85, 0, 404, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(5747, 85, 0, 404, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(5748, 85, 0, 404, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(5749, 85, 0, 404, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(5750, 85, 0, 404, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(5751, 85, 0, 404, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(5752, 85, 0, 404, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(5753, 85, 0, 404, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(5754, 85, 0, 404, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(5755, 85, 0, 404, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(5756, 85, 0, 404, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(5757, 85, 0, 404, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(5758, 85, 0, 404, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(5759, 85, 0, 404, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(5760, 85, 0, 404, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(5761, 85, 0, 404, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(5762, 85, 0, 404, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(5763, 85, 0, 404, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(5764, 85, 0, 404, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(5765, 85, 0, 404, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(5766, 85, 0, 404, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(5767, 85, 0, 404, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(5768, 85, 0, 404, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(5769, 85, 0, 404, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(5770, 85, 0, 404, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(5771, 85, 0, 404, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(5772, 85, 0, 404, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(5773, 85, 0, 404, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(5774, 85, 0, 404, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(5775, 85, 0, 404, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(5776, 85, 0, 404, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(5777, 85, 0, 404, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(5778, 85, 0, 404, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(5779, 85, 0, 404, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(5780, 85, 0, 404, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(5781, 86, 0, 280, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(5782, 86, 0, 280, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(5783, 86, 250, 280, '2019-01-17', 'pm1', 'reserve', '2019-01-10', 'cap'), +(5784, 86, 0, 280, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(5785, 86, 0, 280, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(5786, 86, 0, 280, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(5787, 86, 0, 280, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(5788, 86, 0, 280, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(5789, 86, 0, 280, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(5790, 86, 0, 280, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(5791, 86, 0, 280, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(5792, 86, 0, 280, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(5793, 86, 0, 280, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(5794, 86, 0, 280, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(5795, 86, 0, 280, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(5796, 86, 0, 280, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(5797, 86, 0, 280, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(5798, 86, 0, 280, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(5799, 86, 0, 280, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(5800, 86, 0, 280, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(5801, 86, 0, 280, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(5802, 86, 0, 280, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(5803, 86, 0, 280, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(5804, 86, 0, 280, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(5805, 86, 0, 280, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(5806, 86, 0, 280, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(5807, 86, 0, 280, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(5808, 86, 0, 280, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(5809, 86, 0, 280, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(5810, 86, 0, 280, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(5811, 86, 0, 280, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(5812, 86, 0, 280, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(5813, 86, 0, 280, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(5814, 86, 0, 280, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(5815, 86, 0, 280, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(5816, 86, 0, 280, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(5817, 86, 0, 280, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(5818, 86, 0, 280, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(5819, 86, 0, 280, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(5820, 86, 0, 280, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(5821, 86, 0, 280, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(5822, 86, 0, 280, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(5823, 86, 0, 280, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(5824, 86, 0, 280, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(5825, 86, 0, 280, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(5826, 86, 0, 280, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(5827, 86, 0, 280, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(5828, 86, 0, 280, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(5829, 86, 0, 280, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(5830, 86, 0, 280, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(5831, 86, 0, 280, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(5832, 86, 0, 280, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(5833, 86, 0, 280, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(5834, 86, 0, 280, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(5835, 86, 0, 280, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(5836, 86, 0, 280, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(5837, 86, 0, 280, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(5838, 86, 0, 280, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(5839, 86, 0, 280, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(5840, 86, 0, 280, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(5841, 86, 0, 280, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(5842, 86, 0, 280, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(5843, 86, 0, 280, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(5844, 86, 0, 280, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(5845, 86, 0, 280, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(5846, 86, 0, 280, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(5847, 86, 0, 280, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(5848, 86, 0, 280, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(5849, 87, 0, 280, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(5850, 87, 0, 280, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(5851, 87, 0, 280, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(5852, 87, 0, 280, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(5853, 87, 0, 280, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(5854, 87, 0, 280, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(5855, 87, 0, 280, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(5856, 87, 0, 280, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(5857, 87, 0, 280, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(5858, 87, 0, 280, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(5859, 87, 0, 280, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(5860, 87, 0, 280, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(5861, 87, 0, 280, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(5862, 87, 0, 280, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(5863, 87, 0, 280, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(5864, 87, 0, 280, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(5865, 87, 0, 280, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(5866, 87, 0, 280, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(5867, 87, 0, 280, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(5868, 87, 0, 280, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(5869, 87, 0, 280, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(5870, 87, 0, 280, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(5871, 87, 0, 280, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(5872, 87, 0, 280, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(5873, 87, 0, 280, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(5874, 87, 0, 280, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(5875, 87, 0, 280, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(5876, 87, 0, 280, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(5877, 87, 0, 280, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(5878, 87, 0, 280, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(5879, 87, 0, 280, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(5880, 87, 0, 280, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(5881, 87, 0, 280, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(5882, 87, 0, 280, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(5883, 87, 0, 280, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(5884, 87, 0, 280, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(5885, 87, 0, 280, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(5886, 87, 0, 280, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(5887, 87, 0, 280, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(5888, 87, 0, 280, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(5889, 87, 0, 280, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(5890, 87, 0, 280, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(5891, 87, 0, 280, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(5892, 87, 0, 280, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(5893, 87, 0, 280, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(5894, 87, 0, 280, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(5895, 87, 0, 280, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(5896, 87, 0, 280, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(5897, 87, 0, 280, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(5898, 87, 0, 280, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(5899, 87, 0, 280, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(5900, 87, 0, 280, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(5901, 87, 0, 280, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(5902, 87, 0, 280, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(5903, 87, 0, 280, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(5904, 87, 0, 280, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(5905, 87, 0, 280, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(5906, 87, 0, 280, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(5907, 87, 0, 280, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(5908, 87, 0, 280, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(5909, 87, 0, 280, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(5910, 87, 0, 280, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(5911, 87, 0, 280, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(5912, 87, 0, 280, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(5913, 87, 0, 280, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(5914, 87, 0, 280, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(5915, 87, 0, 280, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(5916, 87, 0, 280, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(5917, 88, 0, 280, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(5918, 88, 0, 280, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(5919, 88, 0, 280, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(5920, 88, 0, 280, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(5921, 88, 0, 280, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(5922, 88, 0, 280, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(5923, 88, 0, 280, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(5924, 88, 0, 280, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(5925, 88, 0, 280, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(5926, 88, 0, 280, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(5927, 88, 0, 280, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(5928, 88, 0, 280, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(5929, 88, 0, 280, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(5930, 88, 0, 280, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(5931, 88, 0, 280, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(5932, 88, 0, 280, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(5933, 88, 0, 280, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(5934, 88, 0, 280, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(5935, 88, 0, 280, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(5936, 88, 0, 280, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(5937, 88, 0, 280, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(5938, 88, 0, 280, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(5939, 88, 0, 280, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(5940, 88, 0, 280, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(5941, 88, 0, 280, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(5942, 88, 0, 280, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(5943, 88, 0, 280, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(5944, 88, 0, 280, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(5945, 88, 0, 280, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(5946, 88, 0, 280, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(5947, 88, 0, 280, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(5948, 88, 0, 280, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(5949, 88, 0, 280, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(5950, 88, 0, 280, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(5951, 88, 0, 280, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(5952, 88, 0, 280, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(5953, 88, 0, 280, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(5954, 88, 0, 280, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(5955, 88, 0, 280, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(5956, 88, 0, 280, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(5957, 88, 0, 280, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(5958, 88, 0, 280, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(5959, 88, 0, 280, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(5960, 88, 0, 280, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(5961, 88, 0, 280, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(5962, 88, 0, 280, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(5963, 88, 0, 280, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(5964, 88, 0, 280, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(5965, 88, 0, 280, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(5966, 88, 0, 280, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(5967, 88, 0, 280, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(5968, 88, 0, 280, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(5969, 88, 0, 280, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(5970, 88, 0, 280, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(5971, 88, 0, 280, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(5972, 88, 0, 280, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(5973, 88, 0, 280, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(5974, 88, 0, 280, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(5975, 88, 0, 280, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(5976, 88, 0, 280, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(5977, 88, 0, 280, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(5978, 88, 0, 280, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(5979, 88, 0, 280, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(5980, 88, 0, 280, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(5981, 88, 0, 280, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(5982, 88, 0, 280, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(5983, 88, 0, 280, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(5984, 88, 0, 280, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(5985, 89, 0, 368, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(5986, 89, 0, 368, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(5987, 89, 0, 368, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(5988, 89, 0, 368, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(5989, 89, 0, 368, '2019-01-18', 'am1', 'libre', '2018-12-10', 'cap'), +(5990, 89, 0, 368, '2019-01-18', 'am2', 'libre', '2018-12-10', 'cap'), +(5991, 89, 0, 368, '2019-01-18', 'pm1', 'libre', '2018-12-10', 'cap'), +(5992, 89, 0, 368, '2019-01-18', 'pm2', 'libre', '2018-12-10', 'cap'), +(5993, 89, 0, 368, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(5994, 89, 0, 368, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(5995, 89, 0, 368, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(5996, 89, 0, 368, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(5997, 89, 0, 368, '2019-01-22', 'am1', 'bloque', '2018-12-10', 'cap'), +(5998, 89, 0, 368, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(5999, 89, 0, 368, '2019-01-22', 'pm1', 'bloque', '2018-12-10', 'cap'), +(6000, 89, 0, 368, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6001, 89, 0, 368, '2019-01-23', 'am1', 'libre', '2018-12-10', 'cap'), +(6002, 89, 0, 368, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6003, 89, 0, 368, '2019-01-23', 'pm1', 'libre', '2018-12-10', 'cap'), +(6004, 89, 0, 368, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6005, 89, 0, 368, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6006, 89, 0, 368, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6007, 89, 0, 368, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6008, 89, 0, 368, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6009, 89, 0, 368, '2019-01-25', 'am1', 'libre', '2018-12-10', 'cap'), +(6010, 89, 0, 368, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6011, 89, 0, 368, '2019-01-25', 'pm1', 'libre', '2018-12-10', 'cap'), +(6012, 89, 0, 368, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6013, 89, 0, 368, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6014, 89, 0, 368, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6015, 89, 0, 368, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6016, 89, 0, 368, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6017, 89, 0, 368, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6018, 89, 0, 368, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6019, 89, 0, 368, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6020, 89, 0, 368, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6021, 89, 0, 368, '2019-01-30', 'am1', 'libre', '2018-12-10', 'cap'), +(6022, 89, 0, 368, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6023, 89, 0, 368, '2019-01-30', 'pm1', 'libre', '2018-12-10', 'cap'), +(6024, 89, 0, 368, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6025, 89, 0, 368, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6026, 89, 0, 368, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6027, 89, 0, 368, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6028, 89, 0, 368, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6029, 89, 0, 368, '2019-02-01', 'am1', 'libre', '2018-12-10', 'cap'), +(6030, 89, 0, 368, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6031, 89, 0, 368, '2019-02-01', 'pm1', 'libre', '2018-12-10', 'cap'), +(6032, 89, 0, 368, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6033, 89, 0, 368, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6034, 89, 0, 368, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6035, 89, 0, 368, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6036, 89, 0, 368, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6037, 89, 0, 368, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6038, 89, 0, 368, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6039, 89, 0, 368, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6040, 89, 0, 368, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6041, 89, 0, 368, '2019-02-06', 'am1', 'libre', '2018-12-10', 'cap'), +(6042, 89, 0, 368, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6043, 89, 0, 368, '2019-02-06', 'pm1', 'libre', '2018-12-10', 'cap'), +(6044, 89, 0, 368, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6045, 89, 0, 368, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6046, 89, 0, 368, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6047, 89, 0, 368, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6048, 89, 0, 368, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6049, 89, 0, 368, '2019-02-08', 'am1', 'libre', '2018-12-10', 'cap'), +(6050, 89, 0, 368, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6051, 89, 0, 368, '2019-02-08', 'pm1', 'libre', '2018-12-10', 'cap'), +(6052, 89, 0, 368, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6053, 90, 0, 191, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(6054, 90, 0, 191, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(6055, 90, 0, 191, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(6056, 90, 0, 191, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(6057, 90, 0, 191, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6058, 90, 0, 191, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6059, 90, 0, 191, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6060, 90, 0, 191, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6061, 90, 0, 191, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(6062, 90, 0, 191, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6063, 90, 0, 191, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6064, 90, 0, 191, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6065, 90, 0, 191, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6066, 90, 0, 191, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6067, 90, 0, 191, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6068, 90, 0, 191, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6069, 90, 0, 191, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6070, 90, 0, 191, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6071, 90, 0, 191, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6072, 90, 0, 191, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6073, 90, 0, 191, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6074, 90, 0, 191, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6075, 90, 0, 191, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6076, 90, 0, 191, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6077, 90, 0, 191, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6078, 90, 0, 191, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6079, 90, 0, 191, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6080, 90, 0, 191, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6081, 90, 0, 191, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6082, 90, 0, 191, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6083, 90, 0, 191, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6084, 90, 0, 191, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6085, 90, 0, 191, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6086, 90, 0, 191, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6087, 90, 0, 191, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6088, 90, 0, 191, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6089, 90, 0, 191, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6090, 90, 0, 191, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6091, 90, 0, 191, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6092, 90, 0, 191, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6093, 90, 0, 191, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6094, 90, 0, 191, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6095, 90, 0, 191, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6096, 90, 0, 191, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6097, 90, 0, 191, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6098, 90, 0, 191, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6099, 90, 0, 191, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6100, 90, 0, 191, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6101, 90, 0, 191, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6102, 90, 0, 191, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6103, 90, 0, 191, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6104, 90, 0, 191, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6105, 90, 0, 191, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6106, 90, 0, 191, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6107, 90, 0, 191, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6108, 90, 0, 191, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6109, 90, 0, 191, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6110, 90, 0, 191, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6111, 90, 0, 191, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6112, 90, 0, 191, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6113, 90, 0, 191, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6114, 90, 0, 191, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6115, 90, 0, 191, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6116, 90, 0, 191, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6117, 90, 0, 191, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6118, 90, 0, 191, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6119, 90, 0, 191, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6120, 90, 0, 191, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6121, 91, 0, 191, '2019-01-17', 'am1', 'bloque', '2018-11-26', 'ref'), +(6122, 91, 0, 191, '2019-01-17', 'am2', 'bloque', '2018-11-26', 'ref'), +(6123, 91, 0, 191, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(6124, 91, 0, 191, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(6125, 91, 0, 191, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6126, 91, 0, 191, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6127, 91, 0, 191, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6128, 91, 0, 191, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6129, 91, 0, 191, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(6130, 91, 0, 191, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6131, 91, 0, 191, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6132, 91, 0, 191, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6133, 91, 0, 191, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6134, 91, 0, 191, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6135, 91, 0, 191, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6136, 91, 0, 191, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6137, 91, 0, 191, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6138, 91, 0, 191, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6139, 91, 0, 191, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6140, 91, 0, 191, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6141, 91, 0, 191, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6142, 91, 0, 191, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6143, 91, 0, 191, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6144, 91, 0, 191, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6145, 91, 0, 191, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6146, 91, 0, 191, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6147, 91, 0, 191, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6148, 91, 0, 191, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6149, 91, 0, 191, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6150, 91, 0, 191, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6151, 91, 0, 191, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6152, 91, 0, 191, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6153, 91, 0, 191, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6154, 91, 0, 191, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6155, 91, 0, 191, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6156, 91, 0, 191, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6157, 91, 0, 191, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6158, 91, 0, 191, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6159, 91, 0, 191, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6160, 91, 0, 191, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6161, 91, 0, 191, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6162, 91, 0, 191, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6163, 91, 0, 191, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6164, 91, 0, 191, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6165, 91, 0, 191, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6166, 91, 0, 191, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6167, 91, 0, 191, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6168, 91, 0, 191, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6169, 91, 0, 191, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6170, 91, 0, 191, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6171, 91, 0, 191, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6172, 91, 0, 191, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6173, 91, 0, 191, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6174, 91, 0, 191, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6175, 91, 0, 191, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6176, 91, 0, 191, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6177, 91, 0, 191, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6178, 91, 0, 191, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6179, 91, 0, 191, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6180, 91, 0, 191, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6181, 91, 0, 191, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6182, 91, 0, 191, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6183, 91, 0, 191, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6184, 91, 0, 191, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6185, 91, 0, 191, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6186, 91, 0, 191, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6187, 91, 0, 191, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6188, 91, 0, 191, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6189, 92, 0, 191, '2019-01-17', 'am1', 'bloque', '2018-11-26', 'ref'), +(6190, 92, 0, 191, '2019-01-17', 'am2', 'bloque', '2018-11-26', 'ref'), +(6191, 92, 0, 191, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(6192, 92, 0, 191, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(6193, 92, 0, 191, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6194, 92, 0, 191, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6195, 92, 0, 191, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6196, 92, 0, 191, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6197, 92, 0, 191, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(6198, 92, 0, 191, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6199, 92, 0, 191, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6200, 92, 0, 191, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6201, 92, 0, 191, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6202, 92, 0, 191, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6203, 92, 0, 191, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6204, 92, 0, 191, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6205, 92, 0, 191, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6206, 92, 0, 191, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6207, 92, 0, 191, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6208, 92, 0, 191, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6209, 92, 0, 191, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6210, 92, 0, 191, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6211, 92, 0, 191, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6212, 92, 0, 191, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6213, 92, 0, 191, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6214, 92, 0, 191, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6215, 92, 0, 191, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6216, 92, 0, 191, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6217, 92, 0, 191, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6218, 92, 0, 191, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6219, 92, 0, 191, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6220, 92, 0, 191, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6221, 92, 0, 191, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6222, 92, 0, 191, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6223, 92, 0, 191, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6224, 92, 0, 191, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6225, 92, 0, 191, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6226, 92, 0, 191, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6227, 92, 0, 191, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6228, 92, 0, 191, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6229, 92, 0, 191, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6230, 92, 0, 191, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6231, 92, 0, 191, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6232, 92, 0, 191, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6233, 92, 0, 191, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6234, 92, 0, 191, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6235, 92, 0, 191, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6236, 92, 0, 191, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6237, 92, 0, 191, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6238, 92, 0, 191, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6239, 92, 0, 191, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6240, 92, 0, 191, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6241, 92, 0, 191, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6242, 92, 0, 191, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6243, 92, 0, 191, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6244, 92, 0, 191, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6245, 92, 0, 191, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6246, 92, 0, 191, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6247, 92, 0, 191, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6248, 92, 0, 191, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6249, 92, 0, 191, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6250, 92, 0, 191, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6251, 92, 0, 191, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6252, 92, 0, 191, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6253, 92, 0, 191, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6254, 92, 0, 191, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6255, 92, 0, 191, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6256, 92, 0, 191, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6257, 93, 0, 191, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(6258, 93, 0, 191, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(6259, 93, 0, 191, '2019-01-17', 'pm1', 'bloque', '2018-11-26', 'ref'), +(6260, 93, 0, 191, '2019-01-17', 'pm2', 'bloque', '2018-11-26', 'ref'), +(6261, 93, 0, 191, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6262, 93, 0, 191, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6263, 93, 0, 191, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6264, 93, 0, 191, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6265, 93, 0, 191, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(6266, 93, 0, 191, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6267, 93, 0, 191, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6268, 93, 0, 191, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6269, 93, 0, 191, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6270, 93, 0, 191, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6271, 93, 0, 191, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6272, 93, 0, 191, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6273, 93, 0, 191, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6274, 93, 0, 191, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6275, 93, 0, 191, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6276, 93, 0, 191, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6277, 93, 0, 191, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6278, 93, 0, 191, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6279, 93, 0, 191, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6280, 93, 0, 191, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6281, 93, 0, 191, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6282, 93, 0, 191, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6283, 93, 0, 191, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6284, 93, 0, 191, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6285, 93, 0, 191, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6286, 93, 0, 191, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6287, 93, 0, 191, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6288, 93, 0, 191, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6289, 93, 0, 191, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6290, 93, 0, 191, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6291, 93, 0, 191, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6292, 93, 0, 191, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6293, 93, 0, 191, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6294, 93, 0, 191, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6295, 93, 0, 191, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6296, 93, 0, 191, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6297, 93, 0, 191, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6298, 93, 0, 191, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6299, 93, 0, 191, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6300, 93, 0, 191, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6301, 93, 0, 191, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6302, 93, 0, 191, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6303, 93, 0, 191, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6304, 93, 0, 191, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6305, 93, 0, 191, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6306, 93, 0, 191, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6307, 93, 0, 191, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6308, 93, 0, 191, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6309, 93, 0, 191, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6310, 93, 0, 191, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6311, 93, 0, 191, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6312, 93, 0, 191, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6313, 93, 0, 191, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6314, 93, 0, 191, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6315, 93, 0, 191, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6316, 93, 0, 191, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6317, 93, 0, 191, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6318, 93, 0, 191, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6319, 93, 0, 191, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6320, 93, 0, 191, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6321, 93, 0, 191, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6322, 93, 0, 191, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6323, 93, 0, 191, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6324, 93, 0, 191, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6325, 94, 0, 191, '2019-01-17', 'am1', 'bloque', '2018-11-26', 'ref'), +(6326, 94, 0, 191, '2019-01-17', 'am2', 'bloque', '2018-11-26', 'ref'), +(6327, 94, 0, 191, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(6328, 94, 0, 191, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(6329, 94, 0, 191, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6330, 94, 0, 191, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6331, 94, 0, 191, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6332, 94, 0, 191, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6333, 94, 0, 191, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(6334, 94, 0, 191, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6335, 94, 0, 191, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6336, 94, 0, 191, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6337, 94, 0, 191, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6338, 94, 0, 191, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6339, 94, 0, 191, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6340, 94, 0, 191, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6341, 94, 0, 191, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6342, 94, 0, 191, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6343, 94, 0, 191, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6344, 94, 0, 191, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6345, 94, 0, 191, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6346, 94, 0, 191, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6347, 94, 0, 191, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6348, 94, 0, 191, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6349, 94, 0, 191, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6350, 94, 0, 191, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6351, 94, 0, 191, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6352, 94, 0, 191, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6353, 94, 0, 191, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6354, 94, 0, 191, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6355, 94, 0, 191, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6356, 94, 0, 191, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6357, 94, 0, 191, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6358, 94, 0, 191, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6359, 94, 0, 191, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6360, 94, 0, 191, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6361, 94, 0, 191, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6362, 94, 0, 191, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6363, 94, 0, 191, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6364, 94, 0, 191, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6365, 94, 0, 191, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6366, 94, 0, 191, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6367, 94, 0, 191, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6368, 94, 0, 191, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6369, 94, 0, 191, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6370, 94, 0, 191, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6371, 94, 0, 191, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6372, 94, 0, 191, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6373, 94, 0, 191, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6374, 94, 0, 191, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6375, 94, 0, 191, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6376, 94, 0, 191, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6377, 94, 0, 191, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6378, 94, 0, 191, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6379, 94, 0, 191, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6380, 94, 0, 191, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6381, 94, 0, 191, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6382, 94, 0, 191, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6383, 94, 0, 191, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6384, 94, 0, 191, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6385, 94, 0, 191, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6386, 94, 0, 191, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6387, 94, 0, 191, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6388, 94, 0, 191, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6389, 94, 0, 191, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6390, 94, 0, 191, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6391, 94, 0, 191, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6392, 94, 0, 191, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6393, 95, 0, 191, '2019-01-17', 'am1', 'bloque', '2018-11-26', 'ref'), +(6394, 95, 0, 191, '2019-01-17', 'am2', 'bloque', '2018-11-26', 'ref'), +(6395, 95, 0, 191, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(6396, 95, 0, 191, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(6397, 95, 0, 191, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6398, 95, 0, 191, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6399, 95, 0, 191, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6400, 95, 0, 191, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6401, 95, 0, 191, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(6402, 95, 0, 191, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6403, 95, 0, 191, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6404, 95, 0, 191, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6405, 95, 0, 191, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6406, 95, 0, 191, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6407, 95, 0, 191, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6408, 95, 0, 191, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6409, 95, 0, 191, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6410, 95, 0, 191, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6411, 95, 0, 191, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6412, 95, 0, 191, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6413, 95, 0, 191, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6414, 95, 0, 191, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6415, 95, 0, 191, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6416, 95, 0, 191, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6417, 95, 0, 191, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6418, 95, 0, 191, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6419, 95, 0, 191, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(6420, 95, 0, 191, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6421, 95, 0, 191, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6422, 95, 0, 191, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6423, 95, 0, 191, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6424, 95, 0, 191, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6425, 95, 0, 191, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6426, 95, 0, 191, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6427, 95, 0, 191, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6428, 95, 0, 191, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6429, 95, 0, 191, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6430, 95, 0, 191, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6431, 95, 0, 191, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6432, 95, 0, 191, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6433, 95, 0, 191, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6434, 95, 0, 191, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6435, 95, 0, 191, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6436, 95, 0, 191, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6437, 95, 0, 191, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6438, 95, 0, 191, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6439, 95, 0, 191, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6440, 95, 0, 191, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6441, 95, 0, 191, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6442, 95, 0, 191, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6443, 95, 0, 191, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6444, 95, 0, 191, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6445, 95, 0, 191, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6446, 95, 0, 191, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6447, 95, 0, 191, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6448, 95, 0, 191, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6449, 95, 0, 191, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6450, 95, 0, 191, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6451, 95, 0, 191, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6452, 95, 0, 191, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6453, 95, 0, 191, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6454, 95, 0, 191, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6455, 95, 0, 191, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6456, 95, 0, 191, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6457, 95, 0, 191, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6458, 95, 0, 191, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6459, 95, 0, 191, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6460, 95, 0, 191, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6461, 96, 0, 191, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(6462, 96, 0, 191, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(6463, 96, 0, 191, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(6464, 96, 0, 191, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(6465, 96, 0, 191, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6466, 96, 0, 191, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6467, 96, 0, 191, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6468, 96, 0, 191, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6469, 96, 0, 191, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(6470, 96, 0, 191, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6471, 96, 0, 191, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6472, 96, 0, 191, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6473, 96, 0, 191, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6474, 96, 0, 191, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6475, 96, 0, 191, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6476, 96, 0, 191, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6477, 96, 0, 191, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6478, 96, 0, 191, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6479, 96, 0, 191, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6480, 96, 0, 191, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6481, 96, 0, 191, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6482, 96, 0, 191, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6483, 96, 0, 191, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6484, 96, 0, 191, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6485, 96, 0, 191, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6486, 96, 0, 191, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6487, 96, 0, 191, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6488, 96, 0, 191, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6489, 96, 0, 191, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6490, 96, 0, 191, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6491, 96, 0, 191, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6492, 96, 0, 191, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6493, 96, 0, 191, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6494, 96, 0, 191, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6495, 96, 0, 191, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6496, 96, 0, 191, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6497, 96, 0, 191, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6498, 96, 0, 191, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6499, 96, 0, 191, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6500, 96, 0, 191, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6501, 96, 0, 191, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6502, 96, 0, 191, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6503, 96, 0, 191, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6504, 96, 0, 191, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6505, 96, 0, 191, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6506, 96, 0, 191, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6507, 96, 0, 191, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6508, 96, 0, 191, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6509, 96, 0, 191, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6510, 96, 0, 191, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6511, 96, 0, 191, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6512, 96, 0, 191, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6513, 96, 0, 191, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6514, 96, 0, 191, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6515, 96, 0, 191, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6516, 96, 0, 191, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6517, 96, 0, 191, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6518, 96, 0, 191, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6519, 96, 0, 191, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6520, 96, 0, 191, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6521, 96, 0, 191, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6522, 96, 0, 191, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6523, 96, 0, 191, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6524, 96, 0, 191, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6525, 96, 0, 191, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6526, 96, 0, 191, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6527, 96, 0, 191, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6528, 96, 0, 191, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6529, 97, 0, 236, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(6530, 97, 0, 236, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(6531, 97, 0, 236, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(6532, 97, 0, 236, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(6533, 97, 0, 236, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6534, 97, 0, 236, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6535, 97, 0, 236, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6536, 97, 0, 236, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6537, 97, 0, 236, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(6538, 97, 0, 236, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6539, 97, 0, 236, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6540, 97, 0, 236, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6541, 97, 0, 236, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6542, 97, 0, 236, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6543, 97, 0, 236, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6544, 97, 0, 236, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6545, 97, 0, 236, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6546, 97, 0, 236, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6547, 97, 0, 236, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6548, 97, 0, 236, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6549, 97, 0, 236, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6550, 97, 0, 236, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6551, 97, 0, 236, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6552, 97, 0, 236, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6553, 97, 0, 236, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6554, 97, 0, 236, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6555, 97, 0, 236, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6556, 97, 0, 236, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6557, 97, 0, 236, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6558, 97, 0, 236, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6559, 97, 0, 236, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6560, 97, 0, 236, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6561, 97, 0, 236, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6562, 97, 0, 236, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6563, 97, 0, 236, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6564, 97, 0, 236, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6565, 97, 0, 236, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6566, 97, 0, 236, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6567, 97, 0, 236, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6568, 97, 0, 236, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6569, 97, 0, 236, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6570, 97, 0, 236, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6571, 97, 0, 236, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6572, 97, 0, 236, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6573, 97, 0, 236, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6574, 97, 0, 236, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6575, 97, 0, 236, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6576, 97, 0, 236, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6577, 97, 0, 236, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6578, 97, 0, 236, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6579, 97, 0, 236, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6580, 97, 0, 236, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6581, 97, 0, 236, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6582, 97, 0, 236, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6583, 97, 0, 236, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6584, 97, 0, 236, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6585, 97, 0, 236, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6586, 97, 0, 236, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6587, 97, 0, 236, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6588, 97, 0, 236, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6589, 97, 0, 236, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6590, 97, 0, 236, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6591, 97, 0, 236, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6592, 97, 0, 236, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6593, 97, 0, 236, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6594, 97, 0, 236, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6595, 97, 0, 236, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6596, 97, 0, 236, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6597, 98, 0, 236, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(6598, 98, 0, 236, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(6599, 98, 0, 236, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(6600, 98, 0, 236, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(6601, 98, 0, 236, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6602, 98, 0, 236, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6603, 98, 0, 236, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6604, 98, 0, 236, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6605, 98, 0, 236, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(6606, 98, 0, 236, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6607, 98, 0, 236, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6608, 98, 0, 236, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6609, 98, 0, 236, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6610, 98, 0, 236, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6611, 98, 0, 236, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6612, 98, 0, 236, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6613, 98, 0, 236, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6614, 98, 0, 236, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6615, 98, 0, 236, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6616, 98, 0, 236, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6617, 98, 0, 236, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6618, 98, 0, 236, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6619, 98, 0, 236, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6620, 98, 0, 236, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6621, 98, 0, 236, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6622, 98, 0, 236, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6623, 98, 0, 236, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6624, 98, 0, 236, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6625, 98, 0, 236, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6626, 98, 0, 236, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6627, 98, 0, 236, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6628, 98, 0, 236, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6629, 98, 0, 236, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6630, 98, 0, 236, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6631, 98, 0, 236, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6632, 98, 0, 236, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6633, 98, 0, 236, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6634, 98, 0, 236, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6635, 98, 0, 236, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6636, 98, 0, 236, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6637, 98, 0, 236, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6638, 98, 0, 236, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6639, 98, 0, 236, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6640, 98, 0, 236, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6641, 98, 0, 236, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6642, 98, 0, 236, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6643, 98, 0, 236, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6644, 98, 0, 236, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6645, 98, 0, 236, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6646, 98, 0, 236, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6647, 98, 0, 236, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6648, 98, 0, 236, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6649, 98, 0, 236, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6650, 98, 0, 236, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6651, 98, 0, 236, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6652, 98, 0, 236, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6653, 98, 0, 236, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6654, 98, 0, 236, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6655, 98, 0, 236, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6656, 98, 0, 236, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6657, 98, 0, 236, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6658, 98, 0, 236, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6659, 98, 0, 236, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6660, 98, 0, 236, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6661, 98, 0, 236, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6662, 98, 0, 236, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6663, 98, 0, 236, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6664, 98, 0, 236, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6665, 99, 0, 236, '2019-01-17', 'am1', 'bloque', '2018-11-26', 'cap'), +(6666, 99, 0, 236, '2019-01-17', 'am2', 'bloque', '2018-11-26', 'cap'), +(6667, 99, 0, 236, '2019-01-17', 'pm1', 'bloque', '2018-11-26', 'cap'), +(6668, 99, 0, 236, '2019-01-17', 'pm2', 'bloque', '2018-11-26', 'cap'), +(6669, 99, 0, 236, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6670, 99, 0, 236, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6671, 99, 0, 236, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6672, 99, 0, 236, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6673, 99, 0, 236, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(6674, 99, 0, 236, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6675, 99, 0, 236, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6676, 99, 0, 236, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6677, 99, 0, 236, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6678, 99, 0, 236, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6679, 99, 0, 236, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6680, 99, 0, 236, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6681, 99, 0, 236, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6682, 99, 0, 236, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6683, 99, 0, 236, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6684, 99, 0, 236, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6685, 99, 0, 236, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6686, 99, 0, 236, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6687, 99, 0, 236, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6688, 99, 0, 236, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6689, 99, 0, 236, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6690, 99, 0, 236, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6691, 99, 0, 236, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6692, 99, 0, 236, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6693, 99, 0, 236, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6694, 99, 0, 236, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6695, 99, 0, 236, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6696, 99, 0, 236, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6697, 99, 0, 236, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6698, 99, 0, 236, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6699, 99, 0, 236, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6700, 99, 0, 236, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6701, 99, 0, 236, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6702, 99, 0, 236, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6703, 99, 0, 236, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6704, 99, 0, 236, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6705, 99, 0, 236, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6706, 99, 0, 236, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6707, 99, 0, 236, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6708, 99, 0, 236, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6709, 99, 0, 236, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6710, 99, 0, 236, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6711, 99, 0, 236, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6712, 99, 0, 236, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6713, 99, 0, 236, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6714, 99, 0, 236, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6715, 99, 0, 236, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6716, 99, 0, 236, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6717, 99, 0, 236, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6718, 99, 0, 236, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6719, 99, 0, 236, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6720, 99, 0, 236, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6721, 99, 0, 236, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6722, 99, 0, 236, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6723, 99, 0, 236, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6724, 99, 0, 236, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6725, 99, 0, 236, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6726, 99, 0, 236, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6727, 99, 0, 236, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6728, 99, 0, 236, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6729, 99, 0, 236, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6730, 99, 0, 236, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6731, 99, 0, 236, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6732, 99, 0, 236, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6733, 100, 30, 256, '2019-01-17', 'am1', 'reserve', '2018-12-07', 'ref'), +(6734, 100, 0, 256, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(6735, 100, 70, 256, '2019-01-17', 'pm1', 'reserve', '2018-12-13', 'ref'), +(6736, 100, 0, 256, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(6737, 100, 36, 256, '2019-01-18', 'am1', 'reserve', '2018-12-10', 'ref'), +(6738, 100, 162, 256, '2019-01-18', 'am2', 'reserve', '2018-12-21', 'ref'), +(6739, 100, 0, 256, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6740, 100, 0, 256, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6741, 100, 0, 256, '2019-01-21', 'am1', 'libre', '2018-12-05', 'ref'), +(6742, 100, 0, 256, '2019-01-21', 'am2', 'libre', '2018-12-07', 'ref'), +(6743, 100, 0, 256, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6744, 100, 0, 256, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6745, 100, 0, 256, '2019-01-22', 'am1', 'libre', '2018-12-07', 'ref'), +(6746, 100, 0, 256, '2019-01-22', 'am2', 'libre', '2018-12-07', 'ref'), +(6747, 100, 0, 256, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6748, 100, 0, 256, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6749, 100, 0, 256, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6750, 100, 0, 256, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6751, 100, 0, 256, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6752, 100, 0, 256, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6753, 100, 0, 256, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6754, 100, 0, 256, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6755, 100, 0, 256, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6756, 100, 0, 256, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6757, 100, 0, 256, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6758, 100, 0, 256, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6759, 100, 0, 256, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6760, 100, 0, 256, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6761, 100, 0, 256, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6762, 100, 0, 256, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6763, 100, 0, 256, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6764, 100, 0, 256, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6765, 100, 0, 256, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6766, 100, 0, 256, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6767, 100, 0, 256, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6768, 100, 0, 256, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6769, 100, 0, 256, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6770, 100, 0, 256, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6771, 100, 0, 256, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6772, 100, 0, 256, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6773, 100, 0, 256, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6774, 100, 0, 256, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6775, 100, 0, 256, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6776, 100, 0, 256, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6777, 100, 0, 256, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6778, 100, 0, 256, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6779, 100, 0, 256, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6780, 100, 0, 256, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6781, 100, 0, 256, '2019-02-04', 'am1', 'libre', '2019-01-07', 'ref'), +(6782, 100, 0, 256, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6783, 100, 201, 256, '2019-02-04', 'pm1', 'reserve', '2019-01-07', 'ref'), +(6784, 100, 0, 256, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6785, 100, 0, 256, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6786, 100, 0, 256, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6787, 100, 0, 256, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6788, 100, 0, 256, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6789, 100, 0, 256, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6790, 100, 0, 256, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6791, 100, 0, 256, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6792, 100, 0, 256, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6793, 100, 0, 256, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6794, 100, 0, 256, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6795, 100, 0, 256, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6796, 100, 0, 256, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6797, 100, 0, 256, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6798, 100, 0, 256, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6799, 100, 0, 256, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6800, 100, 0, 256, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6801, 101, 0, 19, '2019-01-17', 'am1', 'libre', '2019-01-08', 'cap'), +(6802, 101, 0, 19, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(6803, 101, 224, 19, '2019-01-17', 'pm1', 'reserve', '2019-01-08', 'cap'), +(6804, 101, 0, 19, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(6805, 101, 0, 19, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6806, 101, 0, 19, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6807, 101, 0, 19, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6808, 101, 0, 19, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6809, 101, 0, 19, '2019-01-21', 'am1', 'bloque', '2018-11-26', ''), +(6810, 101, 0, 19, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6811, 101, 0, 19, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6812, 101, 0, 19, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6813, 101, 0, 19, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6814, 101, 0, 19, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6815, 101, 0, 19, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6816, 101, 0, 19, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6817, 101, 0, 19, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6818, 101, 0, 19, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6819, 101, 0, 19, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6820, 101, 0, 19, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6821, 101, 0, 19, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6822, 101, 0, 19, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6823, 101, 0, 19, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6824, 101, 0, 19, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6825, 101, 0, 19, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6826, 101, 0, 19, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6827, 101, 0, 19, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6828, 101, 0, 19, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6829, 101, 0, 19, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6830, 101, 0, 19, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6831, 101, 0, 19, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6832, 101, 0, 19, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6833, 101, 0, 19, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6834, 101, 0, 19, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6835, 101, 0, 19, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6836, 101, 0, 19, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6837, 101, 0, 19, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6838, 101, 0, 19, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6839, 101, 0, 19, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6840, 101, 0, 19, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6841, 101, 0, 19, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6842, 101, 0, 19, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6843, 101, 0, 19, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6844, 101, 0, 19, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6845, 101, 0, 19, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6846, 101, 0, 19, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6847, 101, 0, 19, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6848, 101, 0, 19, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6849, 101, 0, 19, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6850, 101, 0, 19, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6851, 101, 0, 19, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6852, 101, 0, 19, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6853, 101, 0, 19, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6854, 101, 0, 19, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6855, 101, 0, 19, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6856, 101, 0, 19, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6857, 101, 0, 19, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6858, 101, 0, 19, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6859, 101, 0, 19, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6860, 101, 0, 19, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6861, 101, 0, 19, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6862, 101, 0, 19, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6863, 101, 0, 19, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6864, 101, 0, 19, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6865, 101, 0, 19, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6866, 101, 0, 19, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6867, 101, 0, 19, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6868, 101, 0, 19, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6869, 102, 0, 247, '2019-01-17', 'am1', 'libre', '2018-11-26', ''), +(6870, 102, 0, 247, '2019-01-17', 'am2', 'libre', '2018-11-26', ''), +(6871, 102, 0, 247, '2019-01-17', 'pm1', 'libre', '2018-11-26', ''), +(6872, 102, 0, 247, '2019-01-17', 'pm2', 'libre', '2018-11-26', ''), +(6873, 102, 0, 247, '2019-01-18', 'am1', 'bloque', '2018-11-26', ''), +(6874, 102, 0, 247, '2019-01-18', 'am2', 'bloque', '2018-11-26', ''), +(6875, 102, 0, 247, '2019-01-18', 'pm1', 'bloque', '2018-11-26', ''), +(6876, 102, 0, 247, '2019-01-18', 'pm2', 'bloque', '2018-11-26', ''), +(6877, 102, 0, 247, '2019-01-21', 'am1', 'libre', '2018-12-14', 'ref'), +(6878, 102, 0, 247, '2019-01-21', 'am2', 'bloque', '2018-11-26', ''), +(6879, 102, 0, 247, '2019-01-21', 'pm1', 'bloque', '2018-11-26', ''), +(6880, 102, 0, 247, '2019-01-21', 'pm2', 'bloque', '2018-11-26', ''), +(6881, 102, 0, 247, '2019-01-22', 'am1', 'bloque', '2018-11-26', ''), +(6882, 102, 0, 247, '2019-01-22', 'am2', 'bloque', '2018-11-26', ''), +(6883, 102, 0, 247, '2019-01-22', 'pm1', 'bloque', '2018-11-26', ''), +(6884, 102, 0, 247, '2019-01-22', 'pm2', 'bloque', '2018-11-26', ''), +(6885, 102, 0, 247, '2019-01-23', 'am1', 'bloque', '2018-11-26', ''), +(6886, 102, 0, 247, '2019-01-23', 'am2', 'bloque', '2018-11-26', ''), +(6887, 102, 0, 247, '2019-01-23', 'pm1', 'bloque', '2018-11-26', ''), +(6888, 102, 0, 247, '2019-01-23', 'pm2', 'bloque', '2018-11-26', ''), +(6889, 102, 0, 247, '2019-01-24', 'am1', 'bloque', '2018-11-26', ''), +(6890, 102, 0, 247, '2019-01-24', 'am2', 'bloque', '2018-11-26', ''), +(6891, 102, 0, 247, '2019-01-24', 'pm1', 'bloque', '2018-11-26', ''), +(6892, 102, 0, 247, '2019-01-24', 'pm2', 'bloque', '2018-11-26', ''), +(6893, 102, 0, 247, '2019-01-25', 'am1', 'bloque', '2018-11-26', ''), +(6894, 102, 0, 247, '2019-01-25', 'am2', 'bloque', '2018-11-26', ''), +(6895, 102, 0, 247, '2019-01-25', 'pm1', 'bloque', '2018-11-26', ''), +(6896, 102, 0, 247, '2019-01-25', 'pm2', 'bloque', '2018-11-26', ''), +(6897, 102, 0, 247, '2019-01-28', 'am1', 'bloque', '2018-11-26', ''), +(6898, 102, 0, 247, '2019-01-28', 'am2', 'bloque', '2018-11-26', ''), +(6899, 102, 0, 247, '2019-01-28', 'pm1', 'bloque', '2018-11-26', ''), +(6900, 102, 0, 247, '2019-01-28', 'pm2', 'bloque', '2018-11-26', ''), +(6901, 102, 0, 247, '2019-01-29', 'am1', 'bloque', '2018-11-26', ''), +(6902, 102, 0, 247, '2019-01-29', 'am2', 'bloque', '2018-11-26', ''), +(6903, 102, 0, 247, '2019-01-29', 'pm1', 'bloque', '2018-11-26', ''), +(6904, 102, 0, 247, '2019-01-29', 'pm2', 'bloque', '2018-11-26', ''), +(6905, 102, 0, 247, '2019-01-30', 'am1', 'bloque', '2018-11-26', ''), +(6906, 102, 0, 247, '2019-01-30', 'am2', 'bloque', '2018-11-26', ''), +(6907, 102, 0, 247, '2019-01-30', 'pm1', 'bloque', '2018-11-26', ''), +(6908, 102, 0, 247, '2019-01-30', 'pm2', 'bloque', '2018-11-26', ''), +(6909, 102, 0, 247, '2019-01-31', 'am1', 'bloque', '2018-11-26', ''), +(6910, 102, 0, 247, '2019-01-31', 'am2', 'bloque', '2018-11-26', ''), +(6911, 102, 0, 247, '2019-01-31', 'pm1', 'bloque', '2018-11-26', ''), +(6912, 102, 0, 247, '2019-01-31', 'pm2', 'bloque', '2018-11-26', ''), +(6913, 102, 0, 247, '2019-02-01', 'am1', 'bloque', '2018-11-26', ''), +(6914, 102, 0, 247, '2019-02-01', 'am2', 'bloque', '2018-11-26', ''), +(6915, 102, 0, 247, '2019-02-01', 'pm1', 'bloque', '2018-11-26', ''), +(6916, 102, 0, 247, '2019-02-01', 'pm2', 'bloque', '2018-11-26', ''), +(6917, 102, 0, 247, '2019-02-04', 'am1', 'bloque', '2018-11-26', ''), +(6918, 102, 0, 247, '2019-02-04', 'am2', 'bloque', '2018-11-26', ''), +(6919, 102, 0, 247, '2019-02-04', 'pm1', 'bloque', '2018-11-26', ''), +(6920, 102, 0, 247, '2019-02-04', 'pm2', 'bloque', '2018-11-26', ''), +(6921, 102, 0, 247, '2019-02-05', 'am1', 'bloque', '2018-11-26', ''), +(6922, 102, 0, 247, '2019-02-05', 'am2', 'bloque', '2018-11-26', ''), +(6923, 102, 0, 247, '2019-02-05', 'pm1', 'bloque', '2018-11-26', ''), +(6924, 102, 0, 247, '2019-02-05', 'pm2', 'bloque', '2018-11-26', ''), +(6925, 102, 0, 247, '2019-02-06', 'am1', 'bloque', '2018-11-26', ''), +(6926, 102, 0, 247, '2019-02-06', 'am2', 'bloque', '2018-11-26', ''), +(6927, 102, 0, 247, '2019-02-06', 'pm1', 'bloque', '2018-11-26', ''), +(6928, 102, 0, 247, '2019-02-06', 'pm2', 'bloque', '2018-11-26', ''), +(6929, 102, 0, 247, '2019-02-07', 'am1', 'bloque', '2018-11-26', ''), +(6930, 102, 0, 247, '2019-02-07', 'am2', 'bloque', '2018-11-26', ''), +(6931, 102, 0, 247, '2019-02-07', 'pm1', 'bloque', '2018-11-26', ''), +(6932, 102, 0, 247, '2019-02-07', 'pm2', 'bloque', '2018-11-26', ''), +(6933, 102, 0, 247, '2019-02-08', 'am1', 'bloque', '2018-11-26', ''), +(6934, 102, 0, 247, '2019-02-08', 'am2', 'bloque', '2018-11-26', ''), +(6935, 102, 0, 247, '2019-02-08', 'pm1', 'bloque', '2018-11-26', ''), +(6936, 102, 0, 247, '2019-02-08', 'pm2', 'bloque', '2018-11-26', ''), +(6937, 103, 153, 405, '2019-01-17', 'am1', 'reserve', '2018-12-20', 'cap'), +(6938, 103, 154, 405, '2019-01-17', 'am2', 'reserve', '2018-12-20', 'cap'), +(6939, 103, 155, 405, '2019-01-17', 'pm1', 'reserve', '2018-12-20', 'cap'), +(6940, 103, 156, 405, '2019-01-17', 'pm2', 'reserve', '2018-12-20', 'cap'), +(6941, 103, 0, 405, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(6942, 103, 0, 405, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(6943, 103, 0, 405, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(6944, 103, 0, 405, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(6945, 103, 0, 405, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(6946, 103, 0, 405, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(6947, 103, 0, 405, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(6948, 103, 0, 405, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(6949, 103, 0, 405, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(6950, 103, 0, 405, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(6951, 103, 0, 405, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(6952, 103, 0, 405, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(6953, 103, 0, 405, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(6954, 103, 0, 405, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(6955, 103, 0, 405, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(6956, 103, 0, 405, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(6957, 103, 0, 405, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(6958, 103, 0, 405, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(6959, 103, 0, 405, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(6960, 103, 0, 405, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(6961, 103, 0, 405, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(6962, 103, 0, 405, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(6963, 103, 0, 405, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(6964, 103, 0, 405, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(6965, 103, 0, 405, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(6966, 103, 0, 405, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(6967, 103, 0, 405, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(6968, 103, 0, 405, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(6969, 103, 0, 405, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(6970, 103, 0, 405, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(6971, 103, 0, 405, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(6972, 103, 0, 405, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(6973, 103, 0, 405, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(6974, 103, 0, 405, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(6975, 103, 0, 405, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(6976, 103, 0, 405, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(6977, 103, 0, 405, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(6978, 103, 0, 405, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(6979, 103, 0, 405, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(6980, 103, 0, 405, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(6981, 103, 0, 405, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(6982, 103, 0, 405, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(6983, 103, 0, 405, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(6984, 103, 0, 405, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(6985, 103, 0, 405, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(6986, 103, 0, 405, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(6987, 103, 0, 405, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(6988, 103, 0, 405, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(6989, 103, 0, 405, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(6990, 103, 0, 405, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(6991, 103, 0, 405, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(6992, 103, 0, 405, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(6993, 103, 0, 405, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(6994, 103, 0, 405, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(6995, 103, 0, 405, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(6996, 103, 0, 405, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(6997, 103, 0, 405, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(6998, 103, 0, 405, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(6999, 103, 0, 405, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7000, 103, 0, 405, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7001, 103, 0, 405, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7002, 103, 0, 405, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7003, 103, 0, 405, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7004, 103, 0, 405, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7005, 104, 0, 405, '2019-01-17', 'am1', 'libre', '2018-11-27', ''), +(7006, 104, 0, 405, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(7007, 104, 0, 405, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(7008, 104, 0, 405, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7009, 104, 0, 405, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7010, 104, 0, 405, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7011, 104, 0, 405, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7012, 104, 0, 405, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7013, 104, 0, 405, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7014, 104, 0, 405, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7015, 104, 0, 405, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7016, 104, 0, 405, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7017, 104, 0, 405, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7018, 104, 0, 405, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7019, 104, 0, 405, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7020, 104, 0, 405, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7021, 104, 0, 405, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7022, 104, 0, 405, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7023, 104, 0, 405, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7024, 104, 0, 405, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7025, 104, 0, 405, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7026, 104, 0, 405, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7027, 104, 0, 405, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7028, 104, 0, 405, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7029, 104, 0, 405, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7030, 104, 0, 405, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7031, 104, 0, 405, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7032, 104, 0, 405, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7033, 104, 0, 405, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7034, 104, 0, 405, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7035, 104, 0, 405, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7036, 104, 0, 405, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7037, 104, 0, 405, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7038, 104, 0, 405, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7039, 104, 0, 405, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7040, 104, 0, 405, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7041, 104, 0, 405, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7042, 104, 0, 405, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7043, 104, 0, 405, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7044, 104, 0, 405, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7045, 104, 0, 405, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7046, 104, 0, 405, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7047, 104, 0, 405, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7048, 104, 0, 405, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7049, 104, 0, 405, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7050, 104, 0, 405, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7051, 104, 0, 405, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7052, 104, 0, 405, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7053, 104, 0, 405, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7054, 104, 0, 405, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7055, 104, 0, 405, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7056, 104, 0, 405, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7057, 104, 0, 405, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7058, 104, 0, 405, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7059, 104, 0, 405, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7060, 104, 0, 405, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7061, 104, 0, 405, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7062, 104, 0, 405, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7063, 104, 0, 405, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7064, 104, 0, 405, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7065, 104, 0, 405, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7066, 104, 0, 405, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7067, 104, 0, 405, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7068, 104, 0, 405, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7069, 104, 0, 405, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7070, 104, 0, 405, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7071, 104, 0, 405, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7072, 104, 0, 405, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7073, 105, 196, 407, '2019-01-17', 'am1', 'reserve', '2019-01-07', 'ref'), +(7074, 105, 0, 407, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(7075, 105, 0, 407, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(7076, 105, 0, 407, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7077, 105, 0, 407, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7078, 105, 0, 407, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7079, 105, 0, 407, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7080, 105, 0, 407, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7081, 105, 0, 407, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7082, 105, 0, 407, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7083, 105, 0, 407, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7084, 105, 0, 407, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7085, 105, 0, 407, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7086, 105, 0, 407, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7087, 105, 0, 407, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7088, 105, 0, 407, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7089, 105, 0, 407, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7090, 105, 0, 407, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7091, 105, 0, 407, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7092, 105, 0, 407, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7093, 105, 0, 407, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7094, 105, 0, 407, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7095, 105, 0, 407, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7096, 105, 0, 407, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7097, 105, 0, 407, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7098, 105, 0, 407, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7099, 105, 0, 407, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7100, 105, 0, 407, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7101, 105, 0, 407, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7102, 105, 0, 407, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7103, 105, 0, 407, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7104, 105, 0, 407, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7105, 105, 0, 407, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7106, 105, 0, 407, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7107, 105, 0, 407, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7108, 105, 0, 407, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7109, 105, 0, 407, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7110, 105, 0, 407, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7111, 105, 0, 407, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7112, 105, 0, 407, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7113, 105, 0, 407, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7114, 105, 0, 407, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7115, 105, 0, 407, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7116, 105, 0, 407, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7117, 105, 0, 407, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7118, 105, 0, 407, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7119, 105, 0, 407, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7120, 105, 0, 407, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7121, 105, 0, 407, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7122, 105, 0, 407, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7123, 105, 0, 407, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7124, 105, 0, 407, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7125, 105, 0, 407, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7126, 105, 0, 407, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7127, 105, 0, 407, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7128, 105, 0, 407, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7129, 105, 0, 407, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7130, 105, 0, 407, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7131, 105, 0, 407, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7132, 105, 0, 407, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7133, 105, 0, 407, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7134, 105, 0, 407, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7135, 105, 0, 407, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7136, 105, 0, 407, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7137, 105, 0, 407, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7138, 105, 0, 407, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7139, 105, 0, 407, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7140, 105, 0, 407, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7141, 106, 0, 407, '2019-01-17', 'am1', 'libre', '2018-11-27', ''), +(7142, 106, 0, 407, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(7143, 106, 0, 407, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(7144, 106, 0, 407, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7145, 106, 0, 407, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7146, 106, 0, 407, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7147, 106, 0, 407, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7148, 106, 0, 407, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7149, 106, 0, 407, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7150, 106, 0, 407, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7151, 106, 0, 407, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7152, 106, 0, 407, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7153, 106, 0, 407, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7154, 106, 0, 407, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7155, 106, 0, 407, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7156, 106, 0, 407, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7157, 106, 0, 407, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(7158, 106, 0, 407, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7159, 106, 0, 407, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7160, 106, 0, 407, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7161, 106, 0, 407, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7162, 106, 0, 407, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7163, 106, 0, 407, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7164, 106, 0, 407, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7165, 106, 0, 407, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7166, 106, 0, 407, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7167, 106, 0, 407, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7168, 106, 0, 407, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7169, 106, 0, 407, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7170, 106, 0, 407, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7171, 106, 0, 407, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7172, 106, 0, 407, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7173, 106, 0, 407, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7174, 106, 0, 407, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7175, 106, 0, 407, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7176, 106, 0, 407, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7177, 106, 0, 407, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7178, 106, 0, 407, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7179, 106, 0, 407, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7180, 106, 0, 407, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7181, 106, 0, 407, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7182, 106, 0, 407, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7183, 106, 0, 407, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7184, 106, 0, 407, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7185, 106, 0, 407, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7186, 106, 0, 407, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7187, 106, 0, 407, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7188, 106, 0, 407, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7189, 106, 0, 407, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7190, 106, 0, 407, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7191, 106, 0, 407, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7192, 106, 0, 407, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7193, 106, 0, 407, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7194, 106, 0, 407, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7195, 106, 0, 407, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7196, 106, 0, 407, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7197, 106, 0, 407, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7198, 106, 0, 407, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7199, 106, 0, 407, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7200, 106, 0, 407, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7201, 106, 0, 407, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7202, 106, 0, 407, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7203, 106, 0, 407, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7204, 106, 0, 407, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7205, 106, 0, 407, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7206, 106, 0, 407, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7207, 106, 0, 407, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7208, 106, 0, 407, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7209, 107, 23, 30, '2019-01-17', 'am1', 'reserve', '2018-12-05', 'ref'), +(7210, 107, 0, 30, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(7211, 107, 24, 30, '2019-01-17', 'pm1', 'reserve', '2018-12-05', 'ref'), +(7212, 107, 0, 30, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7213, 107, 0, 30, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7214, 107, 0, 30, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7215, 107, 0, 30, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7216, 107, 0, 30, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7217, 107, 0, 30, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7218, 107, 0, 30, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7219, 107, 0, 30, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7220, 107, 0, 30, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7221, 107, 0, 30, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7222, 107, 0, 30, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7223, 107, 0, 30, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7224, 107, 0, 30, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7225, 107, 0, 30, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7226, 107, 0, 30, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7227, 107, 0, 30, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7228, 107, 0, 30, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7229, 107, 0, 30, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7230, 107, 0, 30, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7231, 107, 0, 30, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7232, 107, 0, 30, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7233, 107, 0, 30, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7234, 107, 0, 30, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7235, 107, 0, 30, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7236, 107, 0, 30, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7237, 107, 0, 30, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7238, 107, 0, 30, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7239, 107, 0, 30, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7240, 107, 0, 30, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7241, 107, 292, 30, '2019-01-29', 'am1', 'reserve', '2019-01-16', 'ref'), +(7242, 107, 0, 30, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7243, 107, 0, 30, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7244, 107, 0, 30, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7245, 107, 0, 30, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7246, 107, 0, 30, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7247, 107, 0, 30, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7248, 107, 0, 30, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7249, 107, 0, 30, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7250, 107, 0, 30, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7251, 107, 0, 30, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7252, 107, 0, 30, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7253, 107, 0, 30, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7254, 107, 0, 30, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7255, 107, 0, 30, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7256, 107, 0, 30, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7257, 107, 0, 30, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7258, 107, 0, 30, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7259, 107, 0, 30, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7260, 107, 0, 30, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7261, 107, 0, 30, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7262, 107, 0, 30, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7263, 107, 0, 30, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7264, 107, 0, 30, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7265, 107, 0, 30, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7266, 107, 0, 30, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7267, 107, 0, 30, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7268, 107, 0, 30, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7269, 107, 0, 30, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7270, 107, 0, 30, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7271, 107, 0, 30, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7272, 107, 0, 30, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7273, 107, 0, 30, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7274, 107, 0, 30, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7275, 107, 0, 30, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7276, 107, 0, 30, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7277, 108, 0, 118, '2019-01-17', 'am1', 'libre', '2018-11-27', ''), +(7278, 108, 0, 118, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(7279, 108, 0, 118, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(7280, 108, 0, 118, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7281, 108, 0, 118, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7282, 108, 0, 118, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7283, 108, 0, 118, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7284, 108, 0, 118, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7285, 108, 0, 118, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7286, 108, 0, 118, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7287, 108, 0, 118, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7288, 108, 0, 118, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7289, 108, 0, 118, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7290, 108, 0, 118, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7291, 108, 0, 118, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7292, 108, 0, 118, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7293, 108, 0, 118, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7294, 108, 0, 118, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7295, 108, 0, 118, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7296, 108, 0, 118, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7297, 108, 0, 118, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7298, 108, 0, 118, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7299, 108, 0, 118, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7300, 108, 0, 118, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7301, 108, 0, 118, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7302, 108, 0, 118, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7303, 108, 0, 118, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7304, 108, 0, 118, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7305, 108, 0, 118, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7306, 108, 0, 118, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7307, 108, 0, 118, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7308, 108, 0, 118, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7309, 108, 0, 118, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7310, 108, 0, 118, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7311, 108, 0, 118, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7312, 108, 0, 118, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7313, 108, 0, 118, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7314, 108, 0, 118, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7315, 108, 0, 118, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7316, 108, 0, 118, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7317, 108, 0, 118, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7318, 108, 0, 118, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7319, 108, 0, 118, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7320, 108, 0, 118, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7321, 108, 0, 118, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7322, 108, 0, 118, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7323, 108, 0, 118, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7324, 108, 0, 118, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7325, 108, 0, 118, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7326, 108, 0, 118, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7327, 108, 0, 118, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7328, 108, 0, 118, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7329, 108, 0, 118, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7330, 108, 0, 118, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7331, 108, 0, 118, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7332, 108, 0, 118, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7333, 108, 0, 118, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7334, 108, 0, 118, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7335, 108, 0, 118, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7336, 108, 0, 118, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7337, 108, 0, 118, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7338, 108, 0, 118, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7339, 108, 0, 118, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7340, 108, 0, 118, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7341, 108, 0, 118, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7342, 108, 0, 118, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7343, 108, 0, 118, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7344, 108, 0, 118, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7345, 109, 0, 347, '2019-01-17', 'am1', 'libre', '2018-11-27', ''), +(7346, 109, 0, 347, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(7347, 109, 0, 347, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(7348, 109, 0, 347, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7349, 109, 0, 347, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7350, 109, 0, 347, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7351, 109, 0, 347, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7352, 109, 0, 347, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7353, 109, 0, 347, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7354, 109, 0, 347, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7355, 109, 0, 347, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7356, 109, 0, 347, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7357, 109, 0, 347, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7358, 109, 0, 347, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7359, 109, 0, 347, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7360, 109, 0, 347, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7361, 109, 0, 347, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7362, 109, 0, 347, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7363, 109, 0, 347, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7364, 109, 0, 347, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7365, 109, 0, 347, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7366, 109, 0, 347, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7367, 109, 0, 347, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7368, 109, 0, 347, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7369, 109, 0, 347, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7370, 109, 0, 347, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7371, 109, 0, 347, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7372, 109, 0, 347, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7373, 109, 0, 347, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7374, 109, 0, 347, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7375, 109, 0, 347, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7376, 109, 0, 347, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7377, 109, 0, 347, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7378, 109, 0, 347, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7379, 109, 0, 347, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7380, 109, 0, 347, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7381, 109, 0, 347, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7382, 109, 0, 347, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7383, 109, 0, 347, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7384, 109, 0, 347, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7385, 109, 0, 347, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7386, 109, 0, 347, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7387, 109, 0, 347, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7388, 109, 0, 347, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7389, 109, 0, 347, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7390, 109, 0, 347, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7391, 109, 0, 347, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7392, 109, 0, 347, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7393, 109, 0, 347, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7394, 109, 0, 347, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7395, 109, 0, 347, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7396, 109, 0, 347, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7397, 109, 0, 347, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7398, 109, 0, 347, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7399, 109, 0, 347, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7400, 109, 0, 347, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7401, 109, 0, 347, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7402, 109, 0, 347, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7403, 109, 0, 347, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7404, 109, 0, 347, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7405, 109, 0, 347, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7406, 109, 0, 347, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7407, 109, 0, 347, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7408, 109, 0, 347, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7409, 109, 0, 347, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7410, 109, 0, 347, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7411, 109, 0, 347, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7412, 109, 0, 347, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7413, 110, 14, 37, '2019-01-17', 'am1', 'reserve', '2018-11-27', 'ref'), +(7414, 110, 15, 37, '2019-01-17', 'am2', 'reserve', '2018-11-27', 'ref'), +(7415, 110, 0, 37, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(7416, 110, 25, 37, '2019-01-17', 'pm2', 'reserve', '2018-12-06', 'ref'), +(7417, 110, 0, 37, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7418, 110, 0, 37, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7419, 110, 0, 37, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7420, 110, 0, 37, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7421, 110, 0, 37, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7422, 110, 0, 37, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7423, 110, 0, 37, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7424, 110, 0, 37, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7425, 110, 0, 37, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7426, 110, 0, 37, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7427, 110, 0, 37, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7428, 110, 0, 37, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7429, 110, 0, 37, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7430, 110, 0, 37, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7431, 110, 0, 37, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7432, 110, 0, 37, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7433, 110, 0, 37, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7434, 110, 0, 37, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7435, 110, 0, 37, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7436, 110, 0, 37, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7437, 110, 0, 37, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7438, 110, 0, 37, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7439, 110, 0, 37, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7440, 110, 0, 37, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7441, 110, 0, 37, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7442, 110, 0, 37, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7443, 110, 0, 37, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7444, 110, 0, 37, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7445, 110, 0, 37, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7446, 110, 0, 37, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7447, 110, 0, 37, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7448, 110, 0, 37, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7449, 110, 0, 37, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7450, 110, 0, 37, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7451, 110, 0, 37, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7452, 110, 0, 37, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7453, 110, 0, 37, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7454, 110, 0, 37, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7455, 110, 0, 37, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7456, 110, 0, 37, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7457, 110, 0, 37, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7458, 110, 0, 37, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7459, 110, 0, 37, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7460, 110, 0, 37, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7461, 110, 0, 37, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7462, 110, 0, 37, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7463, 110, 0, 37, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7464, 110, 0, 37, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7465, 110, 0, 37, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7466, 110, 0, 37, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7467, 110, 0, 37, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7468, 110, 0, 37, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7469, 110, 0, 37, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7470, 110, 0, 37, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7471, 110, 0, 37, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7472, 110, 0, 37, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7473, 110, 0, 37, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7474, 110, 0, 37, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7475, 110, 0, 37, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7476, 110, 0, 37, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7477, 110, 0, 37, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7478, 110, 0, 37, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7479, 110, 0, 37, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7480, 110, 0, 37, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7481, 111, 0, 69, '2019-01-17', 'am1', 'bloque', '2019-01-10', 'cap'), +(7482, 111, 0, 69, '2019-01-17', 'am2', 'bloque', '2019-01-10', 'cap'), +(7483, 111, 161, 69, '2019-01-17', 'pm1', 'reserve', '2018-12-21', 'ref'), +(7484, 111, 0, 69, '2019-01-17', 'pm2', 'bloque', '2019-01-10', 'cap'), +(7485, 111, 0, 69, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7486, 111, 0, 69, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7487, 111, 0, 69, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7488, 111, 0, 69, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7489, 111, 0, 69, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7490, 111, 0, 69, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7491, 111, 0, 69, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7492, 111, 0, 69, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7493, 111, 0, 69, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7494, 111, 0, 69, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7495, 111, 0, 69, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7496, 111, 0, 69, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7497, 111, 0, 69, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7498, 111, 0, 69, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7499, 111, 0, 69, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7500, 111, 0, 69, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7501, 111, 0, 69, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7502, 111, 0, 69, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7503, 111, 0, 69, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7504, 111, 0, 69, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7505, 111, 0, 69, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7506, 111, 0, 69, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7507, 111, 0, 69, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7508, 111, 0, 69, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7509, 111, 0, 69, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7510, 111, 0, 69, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7511, 111, 0, 69, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7512, 111, 0, 69, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7513, 111, 0, 69, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7514, 111, 0, 69, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7515, 111, 0, 69, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7516, 111, 0, 69, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7517, 111, 0, 69, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7518, 111, 0, 69, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7519, 111, 0, 69, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7520, 111, 0, 69, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7521, 111, 0, 69, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7522, 111, 0, 69, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7523, 111, 0, 69, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7524, 111, 0, 69, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7525, 111, 0, 69, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7526, 111, 0, 69, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7527, 111, 0, 69, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7528, 111, 0, 69, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7529, 111, 0, 69, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7530, 111, 0, 69, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7531, 111, 0, 69, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7532, 111, 0, 69, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7533, 111, 0, 69, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7534, 111, 0, 69, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7535, 111, 0, 69, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7536, 111, 0, 69, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7537, 111, 0, 69, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7538, 111, 0, 69, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7539, 111, 0, 69, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7540, 111, 0, 69, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7541, 111, 0, 69, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7542, 111, 0, 69, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7543, 111, 0, 69, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7544, 111, 0, 69, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7545, 111, 0, 69, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7546, 111, 0, 69, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7547, 111, 0, 69, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7548, 111, 0, 69, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7549, 112, 0, 41, '2019-01-17', 'am1', 'libre', '2018-11-27', ''), +(7550, 112, 0, 41, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(7551, 112, 0, 41, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(7552, 112, 0, 41, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7553, 112, 0, 41, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7554, 112, 0, 41, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7555, 112, 0, 41, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7556, 112, 0, 41, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7557, 112, 0, 41, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7558, 112, 0, 41, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7559, 112, 0, 41, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7560, 112, 0, 41, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7561, 112, 0, 41, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7562, 112, 0, 41, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7563, 112, 0, 41, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7564, 112, 0, 41, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7565, 112, 0, 41, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7566, 112, 0, 41, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7567, 112, 0, 41, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7568, 112, 0, 41, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7569, 112, 0, 41, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7570, 112, 0, 41, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7571, 112, 0, 41, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7572, 112, 0, 41, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7573, 112, 0, 41, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7574, 112, 0, 41, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7575, 112, 0, 41, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7576, 112, 0, 41, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7577, 112, 0, 41, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7578, 112, 0, 41, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7579, 112, 0, 41, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7580, 112, 0, 41, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7581, 112, 0, 41, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7582, 112, 0, 41, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7583, 112, 0, 41, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7584, 112, 0, 41, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7585, 112, 0, 41, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7586, 112, 0, 41, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7587, 112, 0, 41, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7588, 112, 0, 41, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7589, 112, 0, 41, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7590, 112, 0, 41, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7591, 112, 0, 41, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7592, 112, 0, 41, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7593, 112, 0, 41, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7594, 112, 0, 41, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7595, 112, 0, 41, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7596, 112, 0, 41, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7597, 112, 0, 41, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7598, 112, 0, 41, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7599, 112, 0, 41, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7600, 112, 0, 41, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7601, 112, 0, 41, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7602, 112, 0, 41, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7603, 112, 0, 41, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7604, 112, 0, 41, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7605, 112, 0, 41, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7606, 112, 0, 41, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7607, 112, 0, 41, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7608, 112, 0, 41, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7609, 112, 0, 41, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7610, 112, 0, 41, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7611, 112, 0, 41, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7612, 112, 0, 41, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7613, 112, 0, 41, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7614, 112, 0, 41, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7615, 112, 0, 41, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7616, 112, 0, 41, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7617, 113, 0, 41, '2019-01-17', 'am1', 'libre', '2018-11-27', ''), +(7618, 113, 0, 41, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(7619, 113, 0, 41, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(7620, 113, 0, 41, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7621, 113, 0, 41, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7622, 113, 0, 41, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7623, 113, 0, 41, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7624, 113, 0, 41, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7625, 113, 0, 41, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7626, 113, 0, 41, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7627, 113, 0, 41, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7628, 113, 0, 41, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7629, 113, 0, 41, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7630, 113, 0, 41, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7631, 113, 0, 41, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7632, 113, 0, 41, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7633, 113, 0, 41, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7634, 113, 0, 41, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7635, 113, 0, 41, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7636, 113, 0, 41, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7637, 113, 0, 41, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7638, 113, 0, 41, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7639, 113, 0, 41, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7640, 113, 0, 41, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7641, 113, 0, 41, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7642, 113, 0, 41, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7643, 113, 0, 41, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7644, 113, 0, 41, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7645, 113, 0, 41, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7646, 113, 0, 41, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7647, 113, 0, 41, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7648, 113, 0, 41, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7649, 113, 0, 41, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7650, 113, 0, 41, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7651, 113, 0, 41, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7652, 113, 0, 41, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7653, 113, 0, 41, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7654, 113, 0, 41, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7655, 113, 0, 41, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7656, 113, 0, 41, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7657, 113, 0, 41, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7658, 113, 0, 41, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7659, 113, 0, 41, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7660, 113, 0, 41, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7661, 113, 0, 41, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7662, 113, 0, 41, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7663, 113, 0, 41, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7664, 113, 0, 41, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7665, 113, 0, 41, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7666, 113, 0, 41, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7667, 113, 0, 41, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7668, 113, 0, 41, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7669, 113, 0, 41, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7670, 113, 0, 41, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7671, 113, 0, 41, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7672, 113, 0, 41, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7673, 113, 0, 41, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7674, 113, 0, 41, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7675, 113, 0, 41, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7676, 113, 0, 41, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7677, 113, 0, 41, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7678, 113, 0, 41, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7679, 113, 0, 41, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7680, 113, 0, 41, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7681, 113, 0, 41, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7682, 113, 0, 41, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7683, 113, 0, 41, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7684, 113, 0, 41, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7685, 114, 104, 13, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'cap'), +(7686, 114, 57, 13, '2019-01-17', 'am2', 'reserve', '2018-12-12', 'cap'), +(7687, 114, 20, 13, '2019-01-17', 'pm1', 'reserve', '2018-11-29', 'cap'), +(7688, 114, 0, 13, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7689, 114, 0, 13, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7690, 114, 0, 13, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7691, 114, 0, 13, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7692, 114, 0, 13, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7693, 114, 0, 13, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7694, 114, 0, 13, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7695, 114, 0, 13, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7696, 114, 0, 13, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7697, 114, 0, 13, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7698, 114, 0, 13, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7699, 114, 0, 13, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7700, 114, 0, 13, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7701, 114, 0, 13, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7702, 114, 0, 13, '2019-01-23', 'am2', 'bloque', '2018-12-10', 'ref'), +(7703, 114, 0, 13, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7704, 114, 0, 13, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7705, 114, 0, 13, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7706, 114, 0, 13, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7707, 114, 0, 13, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7708, 114, 0, 13, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7709, 114, 0, 13, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7710, 114, 0, 13, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7711, 114, 0, 13, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7712, 114, 0, 13, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7713, 114, 0, 13, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7714, 114, 0, 13, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7715, 114, 0, 13, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7716, 114, 0, 13, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7717, 114, 0, 13, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7718, 114, 0, 13, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7719, 114, 0, 13, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7720, 114, 0, 13, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7721, 114, 0, 13, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7722, 114, 0, 13, '2019-01-30', 'am2', 'libre', '2018-11-27', 'ref'), +(7723, 114, 0, 13, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7724, 114, 0, 13, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7725, 114, 0, 13, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7726, 114, 209, 13, '2019-01-31', 'am2', 'reserve', '2019-01-07', 'cap'), +(7727, 114, 0, 13, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7728, 114, 0, 13, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7729, 114, 0, 13, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7730, 114, 0, 13, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7731, 114, 0, 13, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7732, 114, 0, 13, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7733, 114, 0, 13, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7734, 114, 0, 13, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7735, 114, 0, 13, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7736, 114, 0, 13, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7737, 114, 0, 13, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7738, 114, 0, 13, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7739, 114, 0, 13, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7740, 114, 0, 13, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7741, 114, 0, 13, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7742, 114, 0, 13, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7743, 114, 0, 13, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7744, 114, 0, 13, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7745, 114, 0, 13, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7746, 114, 0, 13, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7747, 114, 0, 13, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7748, 114, 0, 13, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7749, 114, 0, 13, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7750, 114, 0, 13, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7751, 114, 0, 13, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7752, 114, 0, 13, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7753, 115, 0, 13, '2019-01-17', 'am1', 'libre', '2018-11-27', ''), +(7754, 115, 0, 13, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(7755, 115, 0, 13, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(7756, 115, 0, 13, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7757, 115, 0, 13, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7758, 115, 0, 13, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7759, 115, 0, 13, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7760, 115, 0, 13, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7761, 115, 0, 13, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7762, 115, 0, 13, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7763, 115, 0, 13, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7764, 115, 0, 13, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7765, 115, 0, 13, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7766, 115, 0, 13, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7767, 115, 0, 13, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7768, 115, 0, 13, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7769, 115, 0, 13, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7770, 115, 0, 13, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7771, 115, 0, 13, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7772, 115, 0, 13, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7773, 115, 0, 13, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7774, 115, 0, 13, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7775, 115, 0, 13, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7776, 115, 0, 13, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7777, 115, 0, 13, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7778, 115, 0, 13, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7779, 115, 0, 13, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7780, 115, 0, 13, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7781, 115, 0, 13, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7782, 115, 0, 13, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7783, 115, 0, 13, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7784, 115, 0, 13, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7785, 115, 0, 13, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7786, 115, 0, 13, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7787, 115, 0, 13, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7788, 115, 0, 13, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7789, 115, 0, 13, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7790, 115, 0, 13, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7791, 115, 0, 13, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7792, 115, 0, 13, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7793, 115, 0, 13, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7794, 115, 0, 13, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7795, 115, 0, 13, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7796, 115, 0, 13, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7797, 115, 0, 13, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7798, 115, 0, 13, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7799, 115, 0, 13, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7800, 115, 0, 13, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7801, 115, 0, 13, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7802, 115, 0, 13, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7803, 115, 0, 13, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7804, 115, 0, 13, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7805, 115, 0, 13, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7806, 115, 0, 13, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7807, 115, 0, 13, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7808, 115, 0, 13, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7809, 115, 0, 13, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7810, 115, 0, 13, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7811, 115, 0, 13, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7812, 115, 0, 13, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7813, 115, 0, 13, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7814, 115, 0, 13, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7815, 115, 0, 13, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7816, 115, 0, 13, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7817, 115, 0, 13, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7818, 115, 0, 13, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7819, 115, 0, 13, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7820, 115, 0, 13, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7821, 116, 0, 13, '2019-01-17', 'am1', 'libre', '2018-11-27', ''), +(7822, 116, 0, 13, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(7823, 116, 0, 13, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(7824, 116, 0, 13, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7825, 116, 0, 13, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7826, 116, 0, 13, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7827, 116, 0, 13, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7828, 116, 0, 13, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7829, 116, 0, 13, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(7830, 116, 0, 13, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7831, 116, 0, 13, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7832, 116, 0, 13, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7833, 116, 0, 13, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7834, 116, 0, 13, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7835, 116, 0, 13, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7836, 116, 0, 13, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7837, 116, 0, 13, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7838, 116, 0, 13, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7839, 116, 0, 13, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7840, 116, 0, 13, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7841, 116, 0, 13, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7842, 116, 0, 13, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7843, 116, 0, 13, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7844, 116, 0, 13, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7845, 116, 0, 13, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7846, 116, 0, 13, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7847, 116, 0, 13, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7848, 116, 0, 13, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7849, 116, 0, 13, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7850, 116, 0, 13, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7851, 116, 0, 13, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7852, 116, 0, 13, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7853, 116, 0, 13, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7854, 116, 0, 13, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7855, 116, 0, 13, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7856, 116, 0, 13, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7857, 116, 0, 13, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7858, 116, 0, 13, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7859, 116, 0, 13, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7860, 116, 0, 13, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7861, 116, 0, 13, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7862, 116, 0, 13, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7863, 116, 0, 13, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7864, 116, 0, 13, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7865, 116, 0, 13, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7866, 116, 0, 13, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7867, 116, 0, 13, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7868, 116, 0, 13, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7869, 116, 0, 13, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7870, 116, 0, 13, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7871, 116, 0, 13, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7872, 116, 0, 13, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7873, 116, 0, 13, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7874, 116, 0, 13, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7875, 116, 0, 13, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7876, 116, 0, 13, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7877, 116, 0, 13, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7878, 116, 0, 13, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7879, 116, 0, 13, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7880, 116, 0, 13, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7881, 116, 0, 13, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7882, 116, 0, 13, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7883, 116, 0, 13, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7884, 116, 0, 13, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7885, 116, 0, 13, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7886, 116, 0, 13, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7887, 116, 0, 13, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7888, 116, 0, 13, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7889, 117, 0, 13, '2019-01-17', 'am1', 'libre', '2018-11-27', ''), +(7890, 117, 0, 13, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(7891, 117, 0, 13, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(7892, 117, 0, 13, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7893, 117, 0, 13, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(7894, 117, 0, 13, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(7895, 117, 0, 13, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(7896, 117, 0, 13, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(7897, 117, 0, 13, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(7898, 117, 0, 13, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(7899, 117, 0, 13, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(7900, 117, 0, 13, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(7901, 117, 0, 13, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(7902, 117, 0, 13, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(7903, 117, 0, 13, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(7904, 117, 0, 13, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(7905, 117, 0, 13, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(7906, 117, 0, 13, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(7907, 117, 0, 13, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(7908, 117, 0, 13, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(7909, 117, 0, 13, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(7910, 117, 0, 13, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(7911, 117, 0, 13, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(7912, 117, 0, 13, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(7913, 117, 0, 13, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(7914, 117, 0, 13, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(7915, 117, 0, 13, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(7916, 117, 0, 13, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(7917, 117, 0, 13, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(7918, 117, 0, 13, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(7919, 117, 0, 13, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(7920, 117, 0, 13, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(7921, 117, 0, 13, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(7922, 117, 0, 13, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(7923, 117, 0, 13, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(7924, 117, 0, 13, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(7925, 117, 0, 13, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(7926, 117, 0, 13, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(7927, 117, 0, 13, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(7928, 117, 0, 13, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(7929, 117, 0, 13, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(7930, 117, 0, 13, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(7931, 117, 0, 13, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(7932, 117, 0, 13, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(7933, 117, 0, 13, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(7934, 117, 0, 13, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(7935, 117, 0, 13, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(7936, 117, 0, 13, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(7937, 117, 0, 13, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(7938, 117, 0, 13, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(7939, 117, 0, 13, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(7940, 117, 0, 13, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(7941, 117, 0, 13, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(7942, 117, 0, 13, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(7943, 117, 0, 13, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(7944, 117, 0, 13, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(7945, 117, 0, 13, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(7946, 117, 0, 13, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(7947, 117, 0, 13, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(7948, 117, 0, 13, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(7949, 117, 0, 13, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(7950, 117, 0, 13, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(7951, 117, 0, 13, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(7952, 117, 0, 13, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(7953, 117, 0, 13, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(7954, 117, 0, 13, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(7955, 117, 0, 13, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(7956, 117, 0, 13, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(7957, 118, 0, 77, '2019-01-17', 'am1', 'libre', '2018-12-14', 'ref'), +(7958, 118, 152, 77, '2019-01-17', 'am2', 'reserve', '2018-12-20', 'ref'), +(7959, 118, 27, 77, '2019-01-17', 'pm1', 'reserve', '2018-12-06', 'ref'), +(7960, 118, 0, 77, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(7961, 118, 0, 77, '2019-01-18', 'am1', 'libre', '2018-12-06', 'ref'), +(7962, 118, 0, 77, '2019-01-18', 'am2', 'libre', '2018-12-11', 'ref'), +(7963, 118, 0, 77, '2019-01-18', 'pm1', 'libre', '2018-12-11', 'ref'), +(7964, 118, 0, 77, '2019-01-18', 'pm2', 'libre', '2018-12-11', 'ref'), +(7965, 118, 0, 77, '2019-01-21', 'am1', 'libre', '2018-12-11', 'ref'), +(7966, 118, 0, 77, '2019-01-21', 'am2', 'libre', '2018-12-11', 'ref'), +(7967, 118, 0, 77, '2019-01-21', 'pm1', 'libre', '2018-12-11', 'ref'), +(7968, 118, 0, 77, '2019-01-21', 'pm2', 'libre', '2018-12-11', 'ref'), +(7969, 118, 0, 77, '2019-01-22', 'am1', 'libre', '2018-12-11', 'ref'), +(7970, 118, 0, 77, '2019-01-22', 'am2', 'libre', '2018-12-11', 'ref'), +(7971, 118, 0, 77, '2019-01-22', 'pm1', 'libre', '2018-12-11', 'ref'), +(7972, 118, 0, 77, '2019-01-22', 'pm2', 'libre', '2018-12-11', 'ref'), +(7973, 118, 0, 77, '2019-01-23', 'am1', 'libre', '2018-12-11', 'ref'), +(7974, 118, 0, 77, '2019-01-23', 'am2', 'libre', '2018-12-11', 'ref'), +(7975, 118, 0, 77, '2019-01-23', 'pm1', 'libre', '2018-12-11', 'ref'), +(7976, 118, 0, 77, '2019-01-23', 'pm2', 'libre', '2018-12-11', 'ref'), +(7977, 118, 0, 77, '2019-01-24', 'am1', 'libre', '2018-12-11', 'ref'), +(7978, 118, 0, 77, '2019-01-24', 'am2', 'libre', '2018-12-11', 'ref'), +(7979, 118, 0, 77, '2019-01-24', 'pm1', 'libre', '2018-12-11', 'ref'), +(7980, 118, 0, 77, '2019-01-24', 'pm2', 'libre', '2018-12-11', 'ref'), +(7981, 118, 0, 77, '2019-01-25', 'am1', 'libre', '2018-12-11', 'ref'), +(7982, 118, 0, 77, '2019-01-25', 'am2', 'libre', '2018-12-11', 'ref'), +(7983, 118, 0, 77, '2019-01-25', 'pm1', 'libre', '2018-12-11', 'ref'), +(7984, 118, 0, 77, '2019-01-25', 'pm2', 'libre', '2018-12-11', 'ref'), +(7985, 118, 0, 77, '2019-01-28', 'am1', 'libre', '2018-12-11', 'ref'), +(7986, 118, 0, 77, '2019-01-28', 'am2', 'libre', '2018-12-11', 'ref'), +(7987, 118, 0, 77, '2019-01-28', 'pm1', 'libre', '2018-12-11', 'ref'), +(7988, 118, 0, 77, '2019-01-28', 'pm2', 'libre', '2018-12-11', 'ref'), +(7989, 118, 0, 77, '2019-01-29', 'am1', 'libre', '2018-12-11', 'ref'), +(7990, 118, 0, 77, '2019-01-29', 'am2', 'libre', '2018-12-11', 'ref'), +(7991, 118, 0, 77, '2019-01-29', 'pm1', 'libre', '2018-12-11', 'ref'), +(7992, 118, 0, 77, '2019-01-29', 'pm2', 'libre', '2018-12-11', 'ref'), +(7993, 118, 0, 77, '2019-01-30', 'am1', 'libre', '2018-12-11', 'ref'), +(7994, 118, 0, 77, '2019-01-30', 'am2', 'libre', '2018-12-11', 'ref'), +(7995, 118, 0, 77, '2019-01-30', 'pm1', 'libre', '2018-12-11', 'ref'), +(7996, 118, 0, 77, '2019-01-30', 'pm2', 'libre', '2018-12-11', 'ref'), +(7997, 118, 0, 77, '2019-01-31', 'am1', 'libre', '2018-12-11', 'ref'), +(7998, 118, 0, 77, '2019-01-31', 'am2', 'libre', '2018-12-11', 'ref'), +(7999, 118, 0, 77, '2019-01-31', 'pm1', 'libre', '2018-12-11', 'ref'), +(8000, 118, 0, 77, '2019-01-31', 'pm2', 'libre', '2018-12-11', 'ref'), +(8001, 118, 0, 77, '2019-02-01', 'am1', 'libre', '2018-12-11', 'ref'), +(8002, 118, 0, 77, '2019-02-01', 'am2', 'libre', '2018-12-11', 'ref'), +(8003, 118, 0, 77, '2019-02-01', 'pm1', 'libre', '2018-12-11', 'ref'), +(8004, 118, 0, 77, '2019-02-01', 'pm2', 'libre', '2018-12-11', 'ref'), +(8005, 118, 0, 77, '2019-02-04', 'am1', 'libre', '2018-12-11', 'ref'), +(8006, 118, 0, 77, '2019-02-04', 'am2', 'libre', '2018-12-11', 'ref'), +(8007, 118, 0, 77, '2019-02-04', 'pm1', 'libre', '2018-12-11', 'ref'), +(8008, 118, 0, 77, '2019-02-04', 'pm2', 'libre', '2018-12-11', 'ref'), +(8009, 118, 0, 77, '2019-02-05', 'am1', 'libre', '2018-12-11', 'ref'), +(8010, 118, 0, 77, '2019-02-05', 'am2', 'libre', '2018-12-11', 'ref'), +(8011, 118, 0, 77, '2019-02-05', 'pm1', 'libre', '2018-12-11', 'ref'), +(8012, 118, 0, 77, '2019-02-05', 'pm2', 'libre', '2018-12-11', 'ref'), +(8013, 118, 0, 77, '2019-02-06', 'am1', 'libre', '2018-12-11', 'ref'), +(8014, 118, 0, 77, '2019-02-06', 'am2', 'libre', '2018-12-11', 'ref'), +(8015, 118, 0, 77, '2019-02-06', 'pm1', 'libre', '2018-12-11', 'ref'), +(8016, 118, 0, 77, '2019-02-06', 'pm2', 'libre', '2018-12-11', 'ref'), +(8017, 118, 0, 77, '2019-02-07', 'am1', 'libre', '2018-12-11', 'ref'), +(8018, 118, 0, 77, '2019-02-07', 'am2', 'libre', '2018-12-11', 'ref'), +(8019, 118, 0, 77, '2019-02-07', 'pm1', 'libre', '2018-12-11', 'ref'), +(8020, 118, 0, 77, '2019-02-07', 'pm2', 'libre', '2018-12-11', 'ref'), +(8021, 118, 0, 77, '2019-02-08', 'am1', 'libre', '2018-12-11', 'ref'), +(8022, 118, 0, 77, '2019-02-08', 'am2', 'libre', '2018-12-11', 'ref'), +(8023, 118, 0, 77, '2019-02-08', 'pm1', 'libre', '2018-12-11', 'ref'), +(8024, 118, 0, 77, '2019-02-08', 'pm2', 'libre', '2018-12-11', 'ref'), +(8025, 119, 0, 304, '2019-01-17', 'am1', 'bloque', '2018-12-07', 'cap'), +(8026, 119, 0, 304, '2019-01-17', 'am2', 'bloque', '2018-12-07', 'cap'), +(8027, 119, 0, 304, '2019-01-17', 'pm1', 'bloque', '2018-12-07', 'cap'), +(8028, 119, 0, 304, '2019-01-17', 'pm2', 'bloque', '2018-11-27', 'ref'), +(8029, 119, 0, 304, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(8030, 119, 0, 304, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(8031, 119, 0, 304, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(8032, 119, 0, 304, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(8033, 119, 41, 304, '2019-01-21', 'am1', 'reserve', '2018-12-10', 'cap'), +(8034, 119, 42, 304, '2019-01-21', 'am2', 'reserve', '2018-12-10', 'cap'), +(8035, 119, 0, 304, '2019-01-21', 'pm1', 'libre', '2018-11-27', 'ref'), +(8036, 119, 0, 304, '2019-01-21', 'pm2', 'libre', '2018-11-27', 'ref'), +(8037, 119, 28, 304, '2019-01-22', 'am1', 'reserve', '2018-12-07', 'cap'), +(8038, 119, 29, 304, '2019-01-22', 'am2', 'reserve', '2018-12-07', 'cap'), +(8039, 119, 0, 304, '2019-01-22', 'pm1', 'libre', '2018-12-07', 'cap'), +(8040, 119, 0, 304, '2019-01-22', 'pm2', 'libre', '2018-12-07', 'cap'), +(8041, 119, 0, 304, '2019-01-23', 'am1', 'libre', '2018-11-27', 'ref'), +(8042, 119, 0, 304, '2019-01-23', 'am2', 'libre', '2018-11-27', 'ref'), +(8043, 119, 0, 304, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(8044, 119, 0, 304, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(8045, 119, 0, 304, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(8046, 119, 0, 304, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(8047, 119, 0, 304, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(8048, 119, 0, 304, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(8049, 119, 0, 304, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(8050, 119, 0, 304, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(8051, 119, 0, 304, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(8052, 119, 0, 304, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(8053, 119, 0, 304, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(8054, 119, 0, 304, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(8055, 119, 0, 304, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(8056, 119, 0, 304, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(8057, 119, 0, 304, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(8058, 119, 0, 304, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(8059, 119, 0, 304, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(8060, 119, 0, 304, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(8061, 119, 0, 304, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(8062, 119, 0, 304, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(8063, 119, 0, 304, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(8064, 119, 0, 304, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(8065, 119, 0, 304, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(8066, 119, 0, 304, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(8067, 119, 0, 304, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(8068, 119, 0, 304, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(8069, 119, 0, 304, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(8070, 119, 0, 304, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(8071, 119, 0, 304, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(8072, 119, 0, 304, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(8073, 119, 0, 304, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(8074, 119, 0, 304, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(8075, 119, 0, 304, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(8076, 119, 0, 304, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(8077, 119, 0, 304, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(8078, 119, 0, 304, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(8079, 119, 0, 304, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(8080, 119, 0, 304, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(8081, 119, 0, 304, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(8082, 119, 0, 304, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(8083, 119, 0, 304, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(8084, 119, 0, 304, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(8085, 119, 0, 304, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(8086, 119, 0, 304, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(8087, 119, 0, 304, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(8088, 119, 0, 304, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(8089, 119, 0, 304, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(8090, 119, 0, 304, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(8091, 119, 0, 304, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(8092, 119, 0, 304, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(8093, 120, 0, 304, '2019-01-17', 'am1', 'libre', '2018-11-27', ''), +(8094, 120, 0, 304, '2019-01-17', 'am2', 'libre', '2018-11-27', ''), +(8095, 120, 0, 304, '2019-01-17', 'pm1', 'libre', '2018-11-27', ''), +(8096, 120, 0, 304, '2019-01-17', 'pm2', 'libre', '2018-11-27', ''), +(8097, 120, 0, 304, '2019-01-18', 'am1', 'bloque', '2018-11-27', ''), +(8098, 120, 0, 304, '2019-01-18', 'am2', 'bloque', '2018-11-27', ''), +(8099, 120, 0, 304, '2019-01-18', 'pm1', 'bloque', '2018-11-27', ''), +(8100, 120, 0, 304, '2019-01-18', 'pm2', 'bloque', '2018-11-27', ''), +(8101, 120, 0, 304, '2019-01-21', 'am1', 'bloque', '2018-11-27', ''), +(8102, 120, 0, 304, '2019-01-21', 'am2', 'bloque', '2018-11-27', ''), +(8103, 120, 0, 304, '2019-01-21', 'pm1', 'bloque', '2018-11-27', ''), +(8104, 120, 0, 304, '2019-01-21', 'pm2', 'bloque', '2018-11-27', ''), +(8105, 120, 0, 304, '2019-01-22', 'am1', 'bloque', '2018-11-27', ''), +(8106, 120, 0, 304, '2019-01-22', 'am2', 'bloque', '2018-11-27', ''), +(8107, 120, 0, 304, '2019-01-22', 'pm1', 'bloque', '2018-11-27', ''), +(8108, 120, 0, 304, '2019-01-22', 'pm2', 'bloque', '2018-11-27', ''), +(8109, 120, 0, 304, '2019-01-23', 'am1', 'bloque', '2018-11-27', ''), +(8110, 120, 0, 304, '2019-01-23', 'am2', 'bloque', '2018-11-27', ''), +(8111, 120, 0, 304, '2019-01-23', 'pm1', 'bloque', '2018-11-27', ''), +(8112, 120, 0, 304, '2019-01-23', 'pm2', 'bloque', '2018-11-27', ''), +(8113, 120, 0, 304, '2019-01-24', 'am1', 'bloque', '2018-11-27', ''), +(8114, 120, 0, 304, '2019-01-24', 'am2', 'bloque', '2018-11-27', ''), +(8115, 120, 0, 304, '2019-01-24', 'pm1', 'bloque', '2018-11-27', ''), +(8116, 120, 0, 304, '2019-01-24', 'pm2', 'bloque', '2018-11-27', ''), +(8117, 120, 0, 304, '2019-01-25', 'am1', 'bloque', '2018-11-27', ''), +(8118, 120, 0, 304, '2019-01-25', 'am2', 'bloque', '2018-11-27', ''), +(8119, 120, 0, 304, '2019-01-25', 'pm1', 'bloque', '2018-11-27', ''), +(8120, 120, 0, 304, '2019-01-25', 'pm2', 'bloque', '2018-11-27', ''), +(8121, 120, 0, 304, '2019-01-28', 'am1', 'bloque', '2018-11-27', ''), +(8122, 120, 0, 304, '2019-01-28', 'am2', 'bloque', '2018-11-27', ''), +(8123, 120, 0, 304, '2019-01-28', 'pm1', 'bloque', '2018-11-27', ''), +(8124, 120, 0, 304, '2019-01-28', 'pm2', 'bloque', '2018-11-27', ''), +(8125, 120, 0, 304, '2019-01-29', 'am1', 'bloque', '2018-11-27', ''), +(8126, 120, 0, 304, '2019-01-29', 'am2', 'bloque', '2018-11-27', ''), +(8127, 120, 0, 304, '2019-01-29', 'pm1', 'bloque', '2018-11-27', ''), +(8128, 120, 0, 304, '2019-01-29', 'pm2', 'bloque', '2018-11-27', ''), +(8129, 120, 0, 304, '2019-01-30', 'am1', 'bloque', '2018-11-27', ''), +(8130, 120, 0, 304, '2019-01-30', 'am2', 'bloque', '2018-11-27', ''), +(8131, 120, 0, 304, '2019-01-30', 'pm1', 'bloque', '2018-11-27', ''), +(8132, 120, 0, 304, '2019-01-30', 'pm2', 'bloque', '2018-11-27', ''), +(8133, 120, 0, 304, '2019-01-31', 'am1', 'bloque', '2018-11-27', ''), +(8134, 120, 0, 304, '2019-01-31', 'am2', 'bloque', '2018-11-27', ''), +(8135, 120, 0, 304, '2019-01-31', 'pm1', 'bloque', '2018-11-27', ''), +(8136, 120, 0, 304, '2019-01-31', 'pm2', 'bloque', '2018-11-27', ''), +(8137, 120, 0, 304, '2019-02-01', 'am1', 'bloque', '2018-11-27', ''), +(8138, 120, 0, 304, '2019-02-01', 'am2', 'bloque', '2018-11-27', ''), +(8139, 120, 0, 304, '2019-02-01', 'pm1', 'bloque', '2018-11-27', ''), +(8140, 120, 0, 304, '2019-02-01', 'pm2', 'bloque', '2018-11-27', ''), +(8141, 120, 0, 304, '2019-02-04', 'am1', 'bloque', '2018-11-27', ''), +(8142, 120, 0, 304, '2019-02-04', 'am2', 'bloque', '2018-11-27', ''), +(8143, 120, 0, 304, '2019-02-04', 'pm1', 'bloque', '2018-11-27', ''), +(8144, 120, 0, 304, '2019-02-04', 'pm2', 'bloque', '2018-11-27', ''), +(8145, 120, 0, 304, '2019-02-05', 'am1', 'bloque', '2018-11-27', ''), +(8146, 120, 0, 304, '2019-02-05', 'am2', 'bloque', '2018-11-27', ''), +(8147, 120, 0, 304, '2019-02-05', 'pm1', 'bloque', '2018-11-27', ''), +(8148, 120, 0, 304, '2019-02-05', 'pm2', 'bloque', '2018-11-27', ''), +(8149, 120, 0, 304, '2019-02-06', 'am1', 'bloque', '2018-11-27', ''), +(8150, 120, 0, 304, '2019-02-06', 'am2', 'bloque', '2018-11-27', ''), +(8151, 120, 0, 304, '2019-02-06', 'pm1', 'bloque', '2018-11-27', ''), +(8152, 120, 0, 304, '2019-02-06', 'pm2', 'bloque', '2018-11-27', ''), +(8153, 120, 0, 304, '2019-02-07', 'am1', 'bloque', '2018-11-27', ''), +(8154, 120, 0, 304, '2019-02-07', 'am2', 'bloque', '2018-11-27', ''), +(8155, 120, 0, 304, '2019-02-07', 'pm1', 'bloque', '2018-11-27', ''), +(8156, 120, 0, 304, '2019-02-07', 'pm2', 'bloque', '2018-11-27', ''), +(8157, 120, 0, 304, '2019-02-08', 'am1', 'bloque', '2018-11-27', ''), +(8158, 120, 0, 304, '2019-02-08', 'am2', 'bloque', '2018-11-27', ''), +(8159, 120, 0, 304, '2019-02-08', 'pm1', 'bloque', '2018-11-27', ''), +(8160, 120, 0, 304, '2019-02-08', 'pm2', 'bloque', '2018-11-27', ''), +(8161, 121, 98, 52, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'ref'), +(8162, 121, 0, 52, '2019-01-17', 'am2', 'libre', '2018-11-28', ''), +(8163, 121, 293, 52, '2019-01-17', 'pm1', 'reserve', '2019-01-16', 'cap'), +(8164, 121, 0, 52, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(8165, 121, 294, 52, '2019-01-18', 'am1', 'reserve', '2019-01-16', 'cap'), +(8166, 121, 0, 52, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(8167, 121, 0, 52, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(8168, 121, 0, 52, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(8169, 121, 0, 52, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8170, 121, 0, 52, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(8171, 121, 0, 52, '2019-01-21', 'pm1', 'bloque', '2018-11-28', ''), +(8172, 121, 0, 52, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8173, 121, 0, 52, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8174, 121, 0, 52, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8175, 121, 0, 52, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8176, 121, 0, 52, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8177, 121, 0, 52, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8178, 121, 0, 52, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(8179, 121, 0, 52, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(8180, 121, 0, 52, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8181, 121, 0, 52, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8182, 121, 0, 52, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8183, 121, 0, 52, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(8184, 121, 0, 52, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(8185, 121, 0, 52, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8186, 121, 0, 52, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8187, 121, 0, 52, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8188, 121, 0, 52, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8189, 121, 0, 52, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8190, 121, 0, 52, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(8191, 121, 0, 52, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(8192, 121, 0, 52, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(8193, 121, 0, 52, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(8194, 121, 0, 52, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(8195, 121, 0, 52, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(8196, 121, 0, 52, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(8197, 121, 0, 52, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(8198, 121, 0, 52, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(8199, 121, 0, 52, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(8200, 121, 0, 52, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(8201, 121, 0, 52, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(8202, 121, 0, 52, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(8203, 121, 0, 52, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(8204, 121, 0, 52, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(8205, 121, 0, 52, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8206, 121, 0, 52, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8207, 121, 0, 52, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8208, 121, 0, 52, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8209, 121, 0, 52, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(8210, 121, 0, 52, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(8211, 121, 0, 52, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(8212, 121, 0, 52, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(8213, 121, 0, 52, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(8214, 121, 0, 52, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(8215, 121, 0, 52, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(8216, 121, 0, 52, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(8217, 121, 0, 52, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8218, 121, 0, 52, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8219, 121, 0, 52, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(8220, 121, 0, 52, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(8221, 121, 0, 52, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(8222, 121, 0, 52, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8223, 121, 0, 52, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8224, 121, 0, 52, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8225, 121, 0, 52, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(8226, 121, 0, 52, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8227, 121, 0, 52, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8228, 121, 0, 52, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8229, 122, 0, 52, '2019-01-17', 'am1', 'libre', '2018-11-28', ''), +(8230, 122, 99, 52, '2019-01-17', 'am2', 'reserve', '2018-12-18', 'ref'), +(8231, 122, 0, 52, '2019-01-17', 'pm1', 'libre', '2018-11-28', ''), +(8232, 122, 0, 52, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(8233, 122, 0, 52, '2019-01-18', 'am1', 'bloque', '2018-11-28', ''), +(8234, 122, 0, 52, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(8235, 122, 0, 52, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(8236, 122, 0, 52, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(8237, 122, 0, 52, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8238, 122, 0, 52, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(8239, 122, 0, 52, '2019-01-21', 'pm1', 'bloque', '2018-11-28', ''), +(8240, 122, 0, 52, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8241, 122, 0, 52, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8242, 122, 0, 52, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8243, 122, 0, 52, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8244, 122, 0, 52, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8245, 122, 0, 52, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8246, 122, 0, 52, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(8247, 122, 0, 52, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(8248, 122, 0, 52, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8249, 122, 0, 52, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8250, 122, 0, 52, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8251, 122, 0, 52, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(8252, 122, 0, 52, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(8253, 122, 0, 52, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8254, 122, 0, 52, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8255, 122, 0, 52, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8256, 122, 0, 52, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8257, 122, 0, 52, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8258, 122, 0, 52, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(8259, 122, 0, 52, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(8260, 122, 0, 52, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(8261, 122, 0, 52, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(8262, 122, 0, 52, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(8263, 122, 0, 52, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(8264, 122, 0, 52, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(8265, 122, 0, 52, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(8266, 122, 0, 52, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(8267, 122, 0, 52, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(8268, 122, 0, 52, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(8269, 122, 0, 52, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(8270, 122, 0, 52, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(8271, 122, 0, 52, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(8272, 122, 0, 52, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(8273, 122, 0, 52, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8274, 122, 0, 52, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8275, 122, 0, 52, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8276, 122, 0, 52, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8277, 122, 0, 52, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(8278, 122, 0, 52, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(8279, 122, 0, 52, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(8280, 122, 0, 52, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(8281, 122, 0, 52, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(8282, 122, 0, 52, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(8283, 122, 0, 52, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(8284, 122, 0, 52, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(8285, 122, 0, 52, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8286, 122, 0, 52, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8287, 122, 0, 52, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(8288, 122, 0, 52, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(8289, 122, 0, 52, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(8290, 122, 0, 52, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8291, 122, 0, 52, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8292, 122, 0, 52, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8293, 122, 0, 52, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(8294, 122, 0, 52, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8295, 122, 0, 52, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8296, 122, 0, 52, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8297, 123, 0, 52, '2019-01-17', 'am1', 'libre', '2018-11-28', ''), +(8298, 123, 101, 52, '2019-01-17', 'am2', 'reserve', '2018-12-18', 'ref'), +(8299, 123, 0, 52, '2019-01-17', 'pm1', 'libre', '2018-11-28', ''), +(8300, 123, 0, 52, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(8301, 123, 0, 52, '2019-01-18', 'am1', 'bloque', '2018-11-28', ''), +(8302, 123, 0, 52, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(8303, 123, 0, 52, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(8304, 123, 0, 52, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(8305, 123, 0, 52, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8306, 123, 0, 52, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(8307, 123, 0, 52, '2019-01-21', 'pm1', 'bloque', '2018-11-28', ''), +(8308, 123, 0, 52, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8309, 123, 0, 52, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8310, 123, 0, 52, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8311, 123, 0, 52, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8312, 123, 0, 52, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8313, 123, 0, 52, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8314, 123, 0, 52, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(8315, 123, 0, 52, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(8316, 123, 0, 52, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8317, 123, 0, 52, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8318, 123, 0, 52, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8319, 123, 0, 52, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(8320, 123, 0, 52, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(8321, 123, 0, 52, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8322, 123, 0, 52, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8323, 123, 0, 52, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8324, 123, 0, 52, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8325, 123, 0, 52, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8326, 123, 0, 52, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(8327, 123, 0, 52, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(8328, 123, 0, 52, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(8329, 123, 0, 52, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(8330, 123, 0, 52, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(8331, 123, 0, 52, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(8332, 123, 0, 52, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(8333, 123, 0, 52, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(8334, 123, 0, 52, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(8335, 123, 0, 52, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(8336, 123, 0, 52, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(8337, 123, 0, 52, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(8338, 123, 0, 52, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(8339, 123, 0, 52, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(8340, 123, 0, 52, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(8341, 123, 0, 52, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8342, 123, 0, 52, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8343, 123, 0, 52, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8344, 123, 0, 52, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8345, 123, 0, 52, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(8346, 123, 0, 52, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(8347, 123, 0, 52, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(8348, 123, 0, 52, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(8349, 123, 0, 52, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(8350, 123, 0, 52, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(8351, 123, 0, 52, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(8352, 123, 0, 52, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(8353, 123, 0, 52, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8354, 123, 0, 52, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8355, 123, 0, 52, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(8356, 123, 0, 52, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(8357, 123, 0, 52, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(8358, 123, 0, 52, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8359, 123, 0, 52, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8360, 123, 0, 52, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8361, 123, 0, 52, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(8362, 123, 0, 52, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8363, 123, 0, 52, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8364, 123, 0, 52, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8365, 124, 0, 26, '2019-01-17', 'am1', 'libre', '2018-11-28', ''), +(8366, 124, 0, 26, '2019-01-17', 'am2', 'libre', '2018-11-28', ''), +(8367, 124, 0, 26, '2019-01-17', 'pm1', 'libre', '2018-11-28', ''), +(8368, 124, 0, 26, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(8369, 124, 0, 26, '2019-01-18', 'am1', 'libre', '2019-01-09', 'cap'), +(8370, 124, 0, 26, '2019-01-18', 'am2', 'libre', '2019-01-09', 'cap'), +(8371, 124, 0, 26, '2019-01-18', 'pm1', 'libre', '2019-01-09', 'cap'), +(8372, 124, 0, 26, '2019-01-18', 'pm2', 'libre', '2019-01-09', 'cap'), +(8373, 124, 0, 26, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8374, 124, 0, 26, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(8375, 124, 0, 26, '2019-01-21', 'pm1', 'bloque', '2018-11-28', ''), +(8376, 124, 0, 26, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8377, 124, 0, 26, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8378, 124, 0, 26, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8379, 124, 0, 26, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8380, 124, 0, 26, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8381, 124, 0, 26, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8382, 124, 0, 26, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(8383, 124, 0, 26, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(8384, 124, 0, 26, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8385, 124, 0, 26, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8386, 124, 0, 26, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8387, 124, 0, 26, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(8388, 124, 0, 26, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(8389, 124, 0, 26, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8390, 124, 0, 26, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8391, 124, 0, 26, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8392, 124, 0, 26, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8393, 124, 0, 26, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8394, 124, 0, 26, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(8395, 124, 0, 26, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(8396, 124, 0, 26, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(8397, 124, 0, 26, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(8398, 124, 0, 26, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(8399, 124, 0, 26, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(8400, 124, 0, 26, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(8401, 124, 0, 26, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(8402, 124, 0, 26, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(8403, 124, 0, 26, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(8404, 124, 0, 26, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(8405, 124, 0, 26, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(8406, 124, 0, 26, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(8407, 124, 0, 26, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(8408, 124, 0, 26, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(8409, 124, 0, 26, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8410, 124, 0, 26, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8411, 124, 0, 26, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8412, 124, 0, 26, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8413, 124, 0, 26, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(8414, 124, 0, 26, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(8415, 124, 0, 26, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(8416, 124, 0, 26, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(8417, 124, 0, 26, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(8418, 124, 0, 26, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(8419, 124, 0, 26, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(8420, 124, 0, 26, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(8421, 124, 0, 26, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8422, 124, 0, 26, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8423, 124, 0, 26, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(8424, 124, 0, 26, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(8425, 124, 0, 26, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(8426, 124, 0, 26, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8427, 124, 0, 26, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8428, 124, 0, 26, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8429, 124, 0, 26, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(8430, 124, 0, 26, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8431, 124, 0, 26, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8432, 124, 0, 26, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8433, 125, 0, 45, '2019-01-17', 'am1', 'libre', '2018-11-28', ''), +(8434, 125, 0, 45, '2019-01-17', 'am2', 'libre', '2018-11-28', ''), +(8435, 125, 0, 45, '2019-01-17', 'pm1', 'libre', '2018-11-28', ''), +(8436, 125, 0, 45, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(8437, 125, 0, 45, '2019-01-18', 'am1', 'bloque', '2018-11-28', ''), +(8438, 125, 0, 45, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(8439, 125, 0, 45, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(8440, 125, 0, 45, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(8441, 125, 0, 45, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8442, 125, 0, 45, '2019-01-21', 'am2', 'libre', '2018-11-28', 'ref'), +(8443, 125, 0, 45, '2019-01-21', 'pm1', 'libre', '2018-11-28', 'ref'), +(8444, 125, 0, 45, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8445, 125, 0, 45, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8446, 125, 0, 45, '2019-01-22', 'am2', 'libre', '2018-11-28', 'ref'), +(8447, 125, 0, 45, '2019-01-22', 'pm1', 'libre', '2018-11-28', 'ref'), +(8448, 125, 0, 45, '2019-01-22', 'pm2', 'bloque', '2018-11-28', 'ref'), +(8449, 125, 0, 45, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8450, 125, 0, 45, '2019-01-23', 'am2', 'libre', '2018-11-28', 'ref'), +(8451, 125, 0, 45, '2019-01-23', 'pm1', 'libre', '2018-11-28', 'ref'), +(8452, 125, 0, 45, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8453, 125, 0, 45, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8454, 125, 0, 45, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8455, 125, 0, 45, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(8456, 125, 0, 45, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(8457, 125, 0, 45, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8458, 125, 0, 45, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8459, 125, 0, 45, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8460, 125, 0, 45, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8461, 125, 0, 45, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8462, 125, 0, 45, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(8463, 125, 0, 45, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(8464, 125, 0, 45, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(8465, 125, 0, 45, '2019-01-29', 'am1', 'libre', '2018-11-28', 'ref'), +(8466, 125, 0, 45, '2019-01-29', 'am2', 'libre', '2018-11-28', 'ref'), +(8467, 125, 0, 45, '2019-01-29', 'pm1', 'libre', '2018-11-28', 'ref'), +(8468, 125, 0, 45, '2019-01-29', 'pm2', 'libre', '2018-11-28', 'ref'), +(8469, 125, 0, 45, '2019-01-30', 'am1', 'libre', '2018-11-28', 'ref'), +(8470, 125, 0, 45, '2019-01-30', 'am2', 'libre', '2018-11-28', 'ref'), +(8471, 125, 0, 45, '2019-01-30', 'pm1', 'libre', '2018-11-28', 'ref'), +(8472, 125, 0, 45, '2019-01-30', 'pm2', 'libre', '2018-11-28', 'ref'), +(8473, 125, 0, 45, '2019-01-31', 'am1', 'libre', '2018-11-28', 'ref'), +(8474, 125, 0, 45, '2019-01-31', 'am2', 'libre', '2018-11-28', 'ref'), +(8475, 125, 0, 45, '2019-01-31', 'pm1', 'libre', '2018-11-28', 'ref'), +(8476, 125, 0, 45, '2019-01-31', 'pm2', 'libre', '2018-11-28', 'ref'), +(8477, 125, 0, 45, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8478, 125, 0, 45, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8479, 125, 0, 45, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8480, 125, 0, 45, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8481, 125, 0, 45, '2019-02-04', 'am1', 'libre', '2018-11-28', 'ref'), +(8482, 125, 0, 45, '2019-02-04', 'am2', 'libre', '2018-11-28', 'ref'), +(8483, 125, 0, 45, '2019-02-04', 'pm1', 'libre', '2018-11-28', 'ref'), +(8484, 125, 0, 45, '2019-02-04', 'pm2', 'libre', '2018-11-28', 'ref'), +(8485, 125, 0, 45, '2019-02-05', 'am1', 'libre', '2018-11-28', 'ref'), +(8486, 125, 0, 45, '2019-02-05', 'am2', 'libre', '2018-11-28', 'ref'), +(8487, 125, 0, 45, '2019-02-05', 'pm1', 'libre', '2018-11-28', 'ref'), +(8488, 125, 0, 45, '2019-02-05', 'pm2', 'libre', '2018-11-28', 'ref'), +(8489, 125, 0, 45, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8490, 125, 0, 45, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8491, 125, 180, 45, '2019-02-06', 'pm1', 'reserve', '2018-12-28', 'ref'), +(8492, 125, 181, 45, '2019-02-06', 'pm2', 'reserve', '2018-12-28', 'ref'), +(8493, 125, 295, 45, '2019-02-07', 'am1', 'reserve', '2019-01-16', 'ref'), +(8494, 125, 0, 45, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8495, 125, 0, 45, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8496, 125, 0, 45, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8497, 125, 0, 45, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(8498, 125, 0, 45, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8499, 125, 0, 45, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8500, 125, 0, 45, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8501, 126, 0, 266, '2019-01-17', 'am1', 'libre', '2018-11-28', ''), +(8502, 126, 0, 266, '2019-01-17', 'am2', 'libre', '2018-11-28', ''), +(8503, 126, 0, 266, '2019-01-17', 'pm1', 'libre', '2018-11-28', ''), +(8504, 126, 0, 266, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(8505, 126, 0, 266, '2019-01-18', 'am1', 'bloque', '2018-11-28', ''), +(8506, 126, 0, 266, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(8507, 126, 0, 266, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(8508, 126, 0, 266, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(8509, 126, 0, 266, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8510, 126, 0, 266, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(8511, 126, 0, 266, '2019-01-21', 'pm1', 'bloque', '2018-11-28', ''), +(8512, 126, 0, 266, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8513, 126, 0, 266, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8514, 126, 0, 266, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8515, 126, 0, 266, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8516, 126, 0, 266, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8517, 126, 0, 266, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8518, 126, 0, 266, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(8519, 126, 0, 266, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(8520, 126, 0, 266, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8521, 126, 0, 266, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8522, 126, 0, 266, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8523, 126, 0, 266, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(8524, 126, 0, 266, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(8525, 126, 0, 266, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8526, 126, 0, 266, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8527, 126, 0, 266, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8528, 126, 0, 266, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8529, 126, 0, 266, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8530, 126, 0, 266, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(8531, 126, 0, 266, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(8532, 126, 0, 266, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(8533, 126, 0, 266, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(8534, 126, 0, 266, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(8535, 126, 0, 266, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(8536, 126, 0, 266, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(8537, 126, 0, 266, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(8538, 126, 0, 266, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(8539, 126, 0, 266, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(8540, 126, 0, 266, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(8541, 126, 0, 266, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(8542, 126, 0, 266, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(8543, 126, 0, 266, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(8544, 126, 0, 266, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(8545, 126, 0, 266, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8546, 126, 0, 266, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8547, 126, 0, 266, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8548, 126, 0, 266, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8549, 126, 0, 266, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(8550, 126, 0, 266, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(8551, 126, 0, 266, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(8552, 126, 0, 266, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(8553, 126, 0, 266, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(8554, 126, 0, 266, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(8555, 126, 0, 266, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(8556, 126, 0, 266, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(8557, 126, 0, 266, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8558, 126, 0, 266, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8559, 126, 0, 266, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(8560, 126, 0, 266, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(8561, 126, 0, 266, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(8562, 126, 0, 266, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8563, 126, 0, 266, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8564, 126, 0, 266, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8565, 126, 0, 266, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(8566, 126, 0, 266, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8567, 126, 0, 266, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8568, 126, 0, 266, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8569, 127, 182, 301, '2019-01-17', 'am1', 'reserve', '2018-12-31', 'ref'), +(8570, 127, 0, 301, '2019-01-17', 'am2', 'libre', '2018-11-28', ''), +(8571, 127, 0, 301, '2019-01-17', 'pm1', 'bloque', '2018-12-31', 'ref'), +(8572, 127, 0, 301, '2019-01-17', 'pm2', 'bloque', '2018-12-31', 'ref'), +(8573, 127, 0, 301, '2019-01-18', 'am1', 'bloque', '2018-11-28', ''), +(8574, 127, 0, 301, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(8575, 127, 0, 301, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(8576, 127, 0, 301, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(8577, 127, 0, 301, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8578, 127, 0, 301, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(8579, 127, 0, 301, '2019-01-21', 'pm1', 'bloque', '2018-11-28', ''), +(8580, 127, 0, 301, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8581, 127, 0, 301, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8582, 127, 0, 301, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8583, 127, 0, 301, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8584, 127, 0, 301, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8585, 127, 0, 301, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8586, 127, 0, 301, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(8587, 127, 0, 301, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(8588, 127, 0, 301, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8589, 127, 0, 301, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8590, 127, 0, 301, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8591, 127, 0, 301, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(8592, 127, 0, 301, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(8593, 127, 0, 301, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8594, 127, 0, 301, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8595, 127, 0, 301, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8596, 127, 0, 301, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8597, 127, 0, 301, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8598, 127, 0, 301, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(8599, 127, 0, 301, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(8600, 127, 0, 301, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(8601, 127, 0, 301, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(8602, 127, 0, 301, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(8603, 127, 0, 301, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(8604, 127, 0, 301, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(8605, 127, 0, 301, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(8606, 127, 0, 301, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(8607, 127, 0, 301, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(8608, 127, 0, 301, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(8609, 127, 0, 301, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(8610, 127, 0, 301, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(8611, 127, 0, 301, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(8612, 127, 0, 301, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(8613, 127, 0, 301, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8614, 127, 0, 301, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8615, 127, 0, 301, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8616, 127, 0, 301, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8617, 127, 0, 301, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(8618, 127, 0, 301, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(8619, 127, 0, 301, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(8620, 127, 0, 301, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(8621, 127, 0, 301, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(8622, 127, 0, 301, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(8623, 127, 0, 301, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(8624, 127, 0, 301, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(8625, 127, 0, 301, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8626, 127, 0, 301, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8627, 127, 0, 301, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(8628, 127, 0, 301, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(8629, 127, 0, 301, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(8630, 127, 0, 301, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8631, 127, 0, 301, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8632, 127, 0, 301, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8633, 127, 0, 301, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(8634, 127, 0, 301, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8635, 127, 0, 301, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8636, 127, 0, 301, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8637, 128, 0, 301, '2019-01-17', 'am1', 'libre', '2018-11-28', ''), +(8638, 128, 0, 301, '2019-01-17', 'am2', 'libre', '2018-11-28', ''), +(8639, 128, 0, 301, '2019-01-17', 'pm1', 'libre', '2018-11-28', ''), +(8640, 128, 0, 301, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(8641, 128, 0, 301, '2019-01-18', 'am1', 'bloque', '2018-11-28', ''), +(8642, 128, 0, 301, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(8643, 128, 0, 301, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(8644, 128, 0, 301, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(8645, 128, 0, 301, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8646, 128, 0, 301, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(8647, 128, 0, 301, '2019-01-21', 'pm1', 'bloque', '2018-11-28', ''), +(8648, 128, 0, 301, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8649, 128, 0, 301, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8650, 128, 0, 301, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8651, 128, 0, 301, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8652, 128, 0, 301, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8653, 128, 0, 301, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8654, 128, 0, 301, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(8655, 128, 0, 301, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(8656, 128, 0, 301, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8657, 128, 0, 301, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8658, 128, 0, 301, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8659, 128, 0, 301, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(8660, 128, 0, 301, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(8661, 128, 0, 301, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8662, 128, 0, 301, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8663, 128, 0, 301, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8664, 128, 0, 301, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8665, 128, 0, 301, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8666, 128, 0, 301, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(8667, 128, 0, 301, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(8668, 128, 0, 301, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(8669, 128, 0, 301, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(8670, 128, 0, 301, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(8671, 128, 0, 301, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(8672, 128, 0, 301, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(8673, 128, 0, 301, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(8674, 128, 0, 301, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(8675, 128, 0, 301, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(8676, 128, 0, 301, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(8677, 128, 0, 301, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(8678, 128, 0, 301, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(8679, 128, 0, 301, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(8680, 128, 0, 301, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(8681, 128, 0, 301, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8682, 128, 0, 301, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8683, 128, 0, 301, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8684, 128, 0, 301, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8685, 128, 0, 301, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(8686, 128, 0, 301, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(8687, 128, 0, 301, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(8688, 128, 0, 301, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(8689, 128, 0, 301, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(8690, 128, 0, 301, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(8691, 128, 0, 301, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(8692, 128, 0, 301, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(8693, 128, 0, 301, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8694, 128, 0, 301, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8695, 128, 0, 301, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(8696, 128, 0, 301, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(8697, 128, 0, 301, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(8698, 128, 0, 301, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8699, 128, 0, 301, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8700, 128, 0, 301, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8701, 128, 0, 301, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(8702, 128, 0, 301, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8703, 128, 0, 301, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8704, 128, 0, 301, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8705, 129, 0, 18, '2019-01-17', 'am1', 'bloque', '2018-12-19', 'ref'), +(8706, 129, 0, 18, '2019-01-17', 'am2', 'libre', '2018-11-28', ''), +(8707, 129, 134, 18, '2019-01-17', 'pm1', 'reserve', '2018-12-19', 'ref'), +(8708, 129, 139, 18, '2019-01-17', 'pm2', 'reserve', '2018-12-19', 'ref'), +(8709, 129, 0, 18, '2019-01-18', 'am1', 'bloque', '2018-11-28', ''), +(8710, 129, 0, 18, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(8711, 129, 0, 18, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(8712, 129, 0, 18, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(8713, 129, 0, 18, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8714, 129, 0, 18, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(8715, 129, 138, 18, '2019-01-21', 'pm1', 'reserve', '2018-12-19', 'ref'), +(8716, 129, 0, 18, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8717, 129, 0, 18, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8718, 129, 0, 18, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8719, 129, 0, 18, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8720, 129, 0, 18, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8721, 129, 0, 18, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8722, 129, 0, 18, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(8723, 129, 0, 18, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(8724, 129, 0, 18, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8725, 129, 0, 18, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8726, 129, 0, 18, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8727, 129, 0, 18, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(8728, 129, 0, 18, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(8729, 129, 0, 18, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8730, 129, 0, 18, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8731, 129, 0, 18, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8732, 129, 0, 18, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8733, 129, 0, 18, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8734, 129, 0, 18, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(8735, 129, 0, 18, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(8736, 129, 0, 18, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(8737, 129, 0, 18, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(8738, 129, 0, 18, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(8739, 129, 0, 18, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(8740, 129, 0, 18, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(8741, 129, 0, 18, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(8742, 129, 0, 18, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(8743, 129, 0, 18, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(8744, 129, 0, 18, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(8745, 129, 0, 18, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(8746, 129, 0, 18, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(8747, 129, 0, 18, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(8748, 129, 0, 18, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(8749, 129, 0, 18, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8750, 129, 0, 18, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8751, 129, 0, 18, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8752, 129, 0, 18, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8753, 129, 0, 18, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(8754, 129, 0, 18, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(8755, 129, 0, 18, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(8756, 129, 0, 18, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(8757, 129, 0, 18, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(8758, 129, 0, 18, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(8759, 129, 0, 18, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(8760, 129, 0, 18, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(8761, 129, 0, 18, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8762, 129, 0, 18, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8763, 129, 0, 18, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(8764, 129, 0, 18, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(8765, 129, 0, 18, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(8766, 129, 0, 18, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8767, 129, 0, 18, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8768, 129, 0, 18, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8769, 129, 0, 18, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(8770, 129, 0, 18, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8771, 129, 0, 18, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8772, 129, 0, 18, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8773, 130, 0, 18, '2019-01-17', 'am1', 'libre', '2018-11-28', ''), +(8774, 130, 0, 18, '2019-01-17', 'am2', 'libre', '2018-11-28', ''), +(8775, 130, 0, 18, '2019-01-17', 'pm1', 'libre', '2018-11-28', ''), +(8776, 130, 0, 18, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(8777, 130, 0, 18, '2019-01-18', 'am1', 'bloque', '2018-11-28', ''), +(8778, 130, 0, 18, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(8779, 130, 0, 18, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(8780, 130, 0, 18, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(8781, 130, 0, 18, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8782, 130, 0, 18, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(8783, 130, 0, 18, '2019-01-21', 'pm1', 'bloque', '2018-11-28', ''), +(8784, 130, 0, 18, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8785, 130, 0, 18, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8786, 130, 0, 18, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8787, 130, 0, 18, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8788, 130, 0, 18, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8789, 130, 0, 18, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8790, 130, 0, 18, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(8791, 130, 0, 18, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(8792, 130, 0, 18, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8793, 130, 0, 18, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8794, 130, 0, 18, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8795, 130, 0, 18, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(8796, 130, 0, 18, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(8797, 130, 0, 18, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8798, 130, 0, 18, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8799, 130, 0, 18, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8800, 130, 0, 18, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8801, 130, 0, 18, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8802, 130, 0, 18, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(8803, 130, 0, 18, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(8804, 130, 0, 18, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(8805, 130, 0, 18, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(8806, 130, 0, 18, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(8807, 130, 0, 18, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(8808, 130, 0, 18, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(8809, 130, 0, 18, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(8810, 130, 0, 18, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(8811, 130, 0, 18, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(8812, 130, 0, 18, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(8813, 130, 0, 18, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(8814, 130, 0, 18, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(8815, 130, 0, 18, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(8816, 130, 0, 18, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(8817, 130, 0, 18, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8818, 130, 0, 18, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8819, 130, 0, 18, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8820, 130, 0, 18, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8821, 130, 0, 18, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(8822, 130, 0, 18, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(8823, 130, 0, 18, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(8824, 130, 0, 18, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(8825, 130, 0, 18, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(8826, 130, 0, 18, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(8827, 130, 0, 18, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(8828, 130, 0, 18, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(8829, 130, 0, 18, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8830, 130, 0, 18, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8831, 130, 0, 18, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(8832, 130, 0, 18, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(8833, 130, 0, 18, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(8834, 130, 0, 18, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8835, 130, 0, 18, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8836, 130, 0, 18, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8837, 130, 0, 18, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(8838, 130, 0, 18, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8839, 130, 0, 18, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8840, 130, 0, 18, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8841, 131, 0, 18, '2019-01-17', 'am1', 'libre', '2018-11-28', ''), +(8842, 131, 0, 18, '2019-01-17', 'am2', 'libre', '2018-11-28', ''), +(8843, 131, 0, 18, '2019-01-17', 'pm1', 'libre', '2018-11-28', ''), +(8844, 131, 0, 18, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(8845, 131, 0, 18, '2019-01-18', 'am1', 'bloque', '2018-11-28', ''), +(8846, 131, 0, 18, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(8847, 131, 0, 18, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(8848, 131, 0, 18, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(8849, 131, 0, 18, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8850, 131, 0, 18, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(8851, 131, 0, 18, '2019-01-21', 'pm1', 'bloque', '2018-11-28', ''), +(8852, 131, 0, 18, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8853, 131, 0, 18, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8854, 131, 0, 18, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8855, 131, 0, 18, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8856, 131, 0, 18, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8857, 131, 0, 18, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8858, 131, 0, 18, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(8859, 131, 0, 18, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(8860, 131, 0, 18, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8861, 131, 0, 18, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8862, 131, 0, 18, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8863, 131, 0, 18, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(8864, 131, 0, 18, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(8865, 131, 0, 18, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8866, 131, 0, 18, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8867, 131, 0, 18, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8868, 131, 0, 18, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8869, 131, 0, 18, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8870, 131, 0, 18, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(8871, 131, 0, 18, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(8872, 131, 0, 18, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(8873, 131, 0, 18, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(8874, 131, 0, 18, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(8875, 131, 0, 18, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(8876, 131, 0, 18, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(8877, 131, 0, 18, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(8878, 131, 0, 18, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(8879, 131, 0, 18, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(8880, 131, 0, 18, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(8881, 131, 0, 18, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(8882, 131, 0, 18, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(8883, 131, 0, 18, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(8884, 131, 0, 18, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(8885, 131, 0, 18, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8886, 131, 0, 18, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8887, 131, 0, 18, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8888, 131, 0, 18, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8889, 131, 0, 18, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(8890, 131, 0, 18, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(8891, 131, 0, 18, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(8892, 131, 0, 18, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(8893, 131, 0, 18, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(8894, 131, 0, 18, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(8895, 131, 0, 18, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(8896, 131, 0, 18, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(8897, 131, 0, 18, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8898, 131, 0, 18, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8899, 131, 0, 18, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(8900, 131, 0, 18, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(8901, 131, 0, 18, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(8902, 131, 0, 18, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8903, 131, 0, 18, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8904, 131, 0, 18, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8905, 131, 0, 18, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(8906, 131, 0, 18, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8907, 131, 0, 18, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8908, 131, 0, 18, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8909, 132, 0, 186, '2019-01-17', 'am1', 'libre', '2018-11-28', ''), +(8910, 132, 0, 186, '2019-01-17', 'am2', 'libre', '2018-11-28', ''), +(8911, 132, 0, 186, '2019-01-17', 'pm1', 'libre', '2018-11-28', ''), +(8912, 132, 0, 186, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(8913, 132, 0, 186, '2019-01-18', 'am1', 'libre', '2018-12-13', 'ref'), +(8914, 132, 0, 186, '2019-01-18', 'am2', 'libre', '2018-12-13', 'ref'), +(8915, 132, 0, 186, '2019-01-18', 'pm1', 'bloque', '2018-12-13', 'ref'), +(8916, 132, 0, 186, '2019-01-18', 'pm2', 'bloque', '2018-12-13', 'ref'), +(8917, 132, 0, 186, '2019-01-21', 'am1', 'bloque', '2018-12-13', 'ref'), +(8918, 132, 0, 186, '2019-01-21', 'am2', 'libre', '2018-12-13', 'ref'), +(8919, 132, 0, 186, '2019-01-21', 'pm1', 'libre', '2018-12-13', 'ref'), +(8920, 132, 0, 186, '2019-01-21', 'pm2', 'libre', '2018-12-13', 'ref'), +(8921, 132, 0, 186, '2019-01-22', 'am1', 'bloque', '2018-12-13', 'ref'), +(8922, 132, 0, 186, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8923, 132, 0, 186, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8924, 132, 0, 186, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8925, 132, 0, 186, '2019-01-23', 'am1', 'libre', '2018-12-13', 'ref'), +(8926, 132, 0, 186, '2019-01-23', 'am2', 'libre', '2018-12-13', 'ref'), +(8927, 132, 0, 186, '2019-01-23', 'pm1', 'libre', '2018-12-13', 'ref'), +(8928, 132, 0, 186, '2019-01-23', 'pm2', 'libre', '2018-12-13', 'ref'), +(8929, 132, 0, 186, '2019-01-24', 'am1', 'libre', '2018-12-13', 'ref'), +(8930, 132, 0, 186, '2019-01-24', 'am2', 'libre', '2018-12-13', 'ref'), +(8931, 132, 0, 186, '2019-01-24', 'pm1', 'libre', '2018-12-13', 'ref'), +(8932, 132, 0, 186, '2019-01-24', 'pm2', 'libre', '2018-12-13', 'ref'), +(8933, 132, 0, 186, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(8934, 132, 0, 186, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(8935, 132, 0, 186, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(8936, 132, 0, 186, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(8937, 132, 0, 186, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(8938, 132, 0, 186, '2019-01-28', 'am2', 'libre', '2018-12-13', 'ref'), +(8939, 132, 0, 186, '2019-01-28', 'pm1', 'libre', '2018-12-13', 'ref'), +(8940, 132, 0, 186, '2019-01-28', 'pm2', 'libre', '2018-12-13', 'ref'), +(8941, 132, 0, 186, '2019-01-29', 'am1', 'libre', '2018-12-13', 'ref'), +(8942, 132, 0, 186, '2019-01-29', 'am2', 'libre', '2018-12-13', 'ref'), +(8943, 132, 0, 186, '2019-01-29', 'pm1', 'libre', '2018-12-13', 'ref'), +(8944, 132, 0, 186, '2019-01-29', 'pm2', 'libre', '2018-12-13', 'ref'), +(8945, 132, 0, 186, '2019-01-30', 'am1', 'libre', '2018-12-13', 'ref'), +(8946, 132, 0, 186, '2019-01-30', 'am2', 'libre', '2018-12-13', 'ref'), +(8947, 132, 0, 186, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(8948, 132, 0, 186, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(8949, 132, 0, 186, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(8950, 132, 0, 186, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(8951, 132, 0, 186, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(8952, 132, 0, 186, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(8953, 132, 0, 186, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(8954, 132, 0, 186, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(8955, 132, 0, 186, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(8956, 132, 0, 186, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(8957, 132, 0, 186, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(8958, 132, 0, 186, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(8959, 132, 0, 186, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(8960, 132, 0, 186, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(8961, 132, 0, 186, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(8962, 132, 0, 186, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(8963, 132, 0, 186, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(8964, 132, 0, 186, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(8965, 132, 0, 186, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(8966, 132, 0, 186, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(8967, 132, 0, 186, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(8968, 132, 0, 186, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(8969, 132, 0, 186, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(8970, 132, 0, 186, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(8971, 132, 0, 186, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(8972, 132, 0, 186, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(8973, 132, 0, 186, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(8974, 132, 0, 186, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(8975, 132, 0, 186, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(8976, 132, 0, 186, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(8977, 133, 0, 22, '2019-01-17', 'am1', 'libre', '2019-01-03', 'cap'), +(8978, 133, 247, 22, '2019-01-17', 'am2', 'reserve', '2019-01-10', 'cap'), +(8979, 133, 0, 22, '2019-01-17', 'pm1', 'libre', '2018-12-11', 'cap'), +(8980, 133, 0, 22, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(8981, 133, 0, 22, '2019-01-18', 'am1', 'bloque', '2018-11-28', ''), +(8982, 133, 0, 22, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(8983, 133, 0, 22, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(8984, 133, 0, 22, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(8985, 133, 0, 22, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(8986, 133, 0, 22, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(8987, 133, 0, 22, '2019-01-21', 'pm1', 'bloque', '2018-11-28', ''), +(8988, 133, 0, 22, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(8989, 133, 0, 22, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(8990, 133, 0, 22, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(8991, 133, 0, 22, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(8992, 133, 0, 22, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(8993, 133, 0, 22, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(8994, 133, 0, 22, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(8995, 133, 0, 22, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(8996, 133, 0, 22, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(8997, 133, 0, 22, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(8998, 133, 0, 22, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(8999, 133, 0, 22, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(9000, 133, 0, 22, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(9001, 133, 0, 22, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(9002, 133, 0, 22, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(9003, 133, 0, 22, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(9004, 133, 0, 22, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(9005, 133, 0, 22, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(9006, 133, 0, 22, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(9007, 133, 0, 22, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(9008, 133, 0, 22, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(9009, 133, 0, 22, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(9010, 133, 0, 22, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(9011, 133, 0, 22, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(9012, 133, 0, 22, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(9013, 133, 0, 22, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(9014, 133, 0, 22, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(9015, 133, 0, 22, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(9016, 133, 0, 22, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(9017, 133, 0, 22, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(9018, 133, 0, 22, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(9019, 133, 0, 22, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(9020, 133, 0, 22, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(9021, 133, 0, 22, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(9022, 133, 0, 22, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(9023, 133, 0, 22, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(9024, 133, 0, 22, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(9025, 133, 0, 22, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(9026, 133, 0, 22, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(9027, 133, 0, 22, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(9028, 133, 0, 22, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(9029, 133, 0, 22, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(9030, 133, 0, 22, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(9031, 133, 0, 22, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(9032, 133, 0, 22, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(9033, 133, 0, 22, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(9034, 133, 0, 22, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(9035, 133, 0, 22, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(9036, 133, 0, 22, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(9037, 133, 0, 22, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(9038, 133, 0, 22, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(9039, 133, 0, 22, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(9040, 133, 0, 22, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(9041, 133, 0, 22, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(9042, 133, 0, 22, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(9043, 133, 0, 22, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(9044, 133, 0, 22, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(9045, 134, 0, 22, '2019-01-17', 'am1', 'bloque', '2018-12-10', 'cap'), +(9046, 134, 0, 22, '2019-01-17', 'am2', 'bloque', '2018-12-10', 'cap'), +(9047, 134, 273, 22, '2019-01-17', 'pm1', 'reserve', '2019-01-14', 'cap'), +(9048, 134, 0, 22, '2019-01-17', 'pm2', 'libre', '2018-11-28', ''), +(9049, 134, 0, 22, '2019-01-18', 'am1', 'bloque', '2018-11-28', ''), +(9050, 134, 0, 22, '2019-01-18', 'am2', 'bloque', '2018-11-28', ''), +(9051, 134, 0, 22, '2019-01-18', 'pm1', 'bloque', '2018-11-28', ''), +(9052, 134, 0, 22, '2019-01-18', 'pm2', 'bloque', '2018-11-28', ''), +(9053, 134, 0, 22, '2019-01-21', 'am1', 'bloque', '2018-11-28', ''), +(9054, 134, 0, 22, '2019-01-21', 'am2', 'bloque', '2018-11-28', ''), +(9055, 134, 0, 22, '2019-01-21', 'pm1', 'bloque', '2018-11-28', ''), +(9056, 134, 0, 22, '2019-01-21', 'pm2', 'bloque', '2018-11-28', ''), +(9057, 134, 0, 22, '2019-01-22', 'am1', 'bloque', '2018-11-28', ''), +(9058, 134, 0, 22, '2019-01-22', 'am2', 'bloque', '2018-11-28', ''), +(9059, 134, 0, 22, '2019-01-22', 'pm1', 'bloque', '2018-11-28', ''), +(9060, 134, 0, 22, '2019-01-22', 'pm2', 'bloque', '2018-11-28', ''), +(9061, 134, 0, 22, '2019-01-23', 'am1', 'bloque', '2018-11-28', ''), +(9062, 134, 0, 22, '2019-01-23', 'am2', 'bloque', '2018-11-28', ''), +(9063, 134, 0, 22, '2019-01-23', 'pm1', 'bloque', '2018-11-28', ''), +(9064, 134, 0, 22, '2019-01-23', 'pm2', 'bloque', '2018-11-28', ''), +(9065, 134, 0, 22, '2019-01-24', 'am1', 'bloque', '2018-11-28', ''), +(9066, 134, 0, 22, '2019-01-24', 'am2', 'bloque', '2018-11-28', ''), +(9067, 134, 0, 22, '2019-01-24', 'pm1', 'bloque', '2018-11-28', ''), +(9068, 134, 0, 22, '2019-01-24', 'pm2', 'bloque', '2018-11-28', ''), +(9069, 134, 0, 22, '2019-01-25', 'am1', 'bloque', '2018-11-28', ''), +(9070, 134, 0, 22, '2019-01-25', 'am2', 'bloque', '2018-11-28', ''), +(9071, 134, 0, 22, '2019-01-25', 'pm1', 'bloque', '2018-11-28', ''), +(9072, 134, 0, 22, '2019-01-25', 'pm2', 'bloque', '2018-11-28', ''), +(9073, 134, 0, 22, '2019-01-28', 'am1', 'bloque', '2018-11-28', ''), +(9074, 134, 0, 22, '2019-01-28', 'am2', 'bloque', '2018-11-28', ''), +(9075, 134, 0, 22, '2019-01-28', 'pm1', 'bloque', '2018-11-28', ''), +(9076, 134, 0, 22, '2019-01-28', 'pm2', 'bloque', '2018-11-28', ''), +(9077, 134, 0, 22, '2019-01-29', 'am1', 'bloque', '2018-11-28', ''), +(9078, 134, 0, 22, '2019-01-29', 'am2', 'bloque', '2018-11-28', ''), +(9079, 134, 0, 22, '2019-01-29', 'pm1', 'bloque', '2018-11-28', ''), +(9080, 134, 0, 22, '2019-01-29', 'pm2', 'bloque', '2018-11-28', ''), +(9081, 134, 0, 22, '2019-01-30', 'am1', 'bloque', '2018-11-28', ''), +(9082, 134, 0, 22, '2019-01-30', 'am2', 'bloque', '2018-11-28', ''), +(9083, 134, 0, 22, '2019-01-30', 'pm1', 'bloque', '2018-11-28', ''), +(9084, 134, 0, 22, '2019-01-30', 'pm2', 'bloque', '2018-11-28', ''), +(9085, 134, 0, 22, '2019-01-31', 'am1', 'bloque', '2018-11-28', ''), +(9086, 134, 0, 22, '2019-01-31', 'am2', 'bloque', '2018-11-28', ''), +(9087, 134, 0, 22, '2019-01-31', 'pm1', 'bloque', '2018-11-28', ''), +(9088, 134, 0, 22, '2019-01-31', 'pm2', 'bloque', '2018-11-28', ''), +(9089, 134, 0, 22, '2019-02-01', 'am1', 'bloque', '2018-11-28', ''), +(9090, 134, 0, 22, '2019-02-01', 'am2', 'bloque', '2018-11-28', ''), +(9091, 134, 0, 22, '2019-02-01', 'pm1', 'bloque', '2018-11-28', ''), +(9092, 134, 0, 22, '2019-02-01', 'pm2', 'bloque', '2018-11-28', ''), +(9093, 134, 0, 22, '2019-02-04', 'am1', 'bloque', '2018-11-28', ''), +(9094, 134, 0, 22, '2019-02-04', 'am2', 'bloque', '2018-11-28', ''), +(9095, 134, 0, 22, '2019-02-04', 'pm1', 'bloque', '2018-11-28', ''), +(9096, 134, 0, 22, '2019-02-04', 'pm2', 'bloque', '2018-11-28', ''), +(9097, 134, 0, 22, '2019-02-05', 'am1', 'bloque', '2018-11-28', ''), +(9098, 134, 0, 22, '2019-02-05', 'am2', 'bloque', '2018-11-28', ''), +(9099, 134, 0, 22, '2019-02-05', 'pm1', 'bloque', '2018-11-28', ''), +(9100, 134, 0, 22, '2019-02-05', 'pm2', 'bloque', '2018-11-28', ''), +(9101, 134, 0, 22, '2019-02-06', 'am1', 'bloque', '2018-11-28', ''), +(9102, 134, 0, 22, '2019-02-06', 'am2', 'bloque', '2018-11-28', ''), +(9103, 134, 0, 22, '2019-02-06', 'pm1', 'bloque', '2018-11-28', ''), +(9104, 134, 0, 22, '2019-02-06', 'pm2', 'bloque', '2018-11-28', ''), +(9105, 134, 0, 22, '2019-02-07', 'am1', 'bloque', '2018-11-28', ''), +(9106, 134, 0, 22, '2019-02-07', 'am2', 'bloque', '2018-11-28', ''), +(9107, 134, 0, 22, '2019-02-07', 'pm1', 'bloque', '2018-11-28', ''), +(9108, 134, 0, 22, '2019-02-07', 'pm2', 'bloque', '2018-11-28', ''), +(9109, 134, 0, 22, '2019-02-08', 'am1', 'bloque', '2018-11-28', ''), +(9110, 134, 0, 22, '2019-02-08', 'am2', 'bloque', '2018-11-28', ''), +(9111, 134, 0, 22, '2019-02-08', 'pm1', 'bloque', '2018-11-28', ''), +(9112, 134, 0, 22, '2019-02-08', 'pm2', 'bloque', '2018-11-28', ''), +(9113, 135, 72, 90, '2019-01-17', 'am1', 'reserve', '2018-12-13', 'ref'), +(9114, 135, 0, 90, '2019-01-17', 'am2', 'bloque', '2018-12-13', 'ref'), +(9115, 135, 73, 90, '2019-01-17', 'pm1', 'reserve', '2018-12-13', 'ref'), +(9116, 135, 0, 90, '2019-01-17', 'pm2', 'bloque', '2018-12-13', 'ref'), +(9117, 135, 0, 90, '2019-01-18', 'am1', 'bloque', '2018-11-29', ''), +(9118, 135, 0, 90, '2019-01-18', 'am2', 'bloque', '2018-11-29', ''), +(9119, 135, 0, 90, '2019-01-18', 'pm1', 'bloque', '2018-11-29', ''), +(9120, 135, 0, 90, '2019-01-18', 'pm2', 'bloque', '2018-11-29', ''), +(9121, 135, 0, 90, '2019-01-21', 'am1', 'bloque', '2018-11-29', ''), +(9122, 135, 0, 90, '2019-01-21', 'am2', 'bloque', '2018-11-29', ''), +(9123, 135, 0, 90, '2019-01-21', 'pm1', 'bloque', '2018-11-29', ''), +(9124, 135, 0, 90, '2019-01-21', 'pm2', 'bloque', '2018-11-29', ''), +(9125, 135, 0, 90, '2019-01-22', 'am1', 'bloque', '2018-11-29', ''), +(9126, 135, 0, 90, '2019-01-22', 'am2', 'bloque', '2018-11-29', ''), +(9127, 135, 0, 90, '2019-01-22', 'pm1', 'bloque', '2018-11-29', ''), +(9128, 135, 0, 90, '2019-01-22', 'pm2', 'bloque', '2018-11-29', ''), +(9129, 135, 0, 90, '2019-01-23', 'am1', 'bloque', '2018-11-29', ''), +(9130, 135, 0, 90, '2019-01-23', 'am2', 'bloque', '2018-11-29', ''), +(9131, 135, 0, 90, '2019-01-23', 'pm1', 'bloque', '2018-11-29', ''), +(9132, 135, 0, 90, '2019-01-23', 'pm2', 'bloque', '2018-11-29', ''), +(9133, 135, 0, 90, '2019-01-24', 'am1', 'bloque', '2018-11-29', ''), +(9134, 135, 0, 90, '2019-01-24', 'am2', 'bloque', '2018-11-29', ''), +(9135, 135, 0, 90, '2019-01-24', 'pm1', 'bloque', '2018-11-29', ''), +(9136, 135, 0, 90, '2019-01-24', 'pm2', 'bloque', '2018-11-29', ''), +(9137, 135, 0, 90, '2019-01-25', 'am1', 'bloque', '2018-11-29', ''), +(9138, 135, 0, 90, '2019-01-25', 'am2', 'bloque', '2018-11-29', ''), +(9139, 135, 0, 90, '2019-01-25', 'pm1', 'bloque', '2018-11-29', ''), +(9140, 135, 0, 90, '2019-01-25', 'pm2', 'bloque', '2018-11-29', ''), +(9141, 135, 0, 90, '2019-01-28', 'am1', 'bloque', '2018-11-29', ''), +(9142, 135, 0, 90, '2019-01-28', 'am2', 'bloque', '2018-11-29', ''), +(9143, 135, 0, 90, '2019-01-28', 'pm1', 'bloque', '2018-11-29', ''), +(9144, 135, 0, 90, '2019-01-28', 'pm2', 'bloque', '2018-11-29', ''), +(9145, 135, 0, 90, '2019-01-29', 'am1', 'bloque', '2018-11-29', ''), +(9146, 135, 0, 90, '2019-01-29', 'am2', 'bloque', '2018-11-29', ''), +(9147, 135, 0, 90, '2019-01-29', 'pm1', 'bloque', '2018-11-29', ''), +(9148, 135, 0, 90, '2019-01-29', 'pm2', 'bloque', '2018-11-29', ''), +(9149, 135, 0, 90, '2019-01-30', 'am1', 'bloque', '2018-11-29', ''), +(9150, 135, 0, 90, '2019-01-30', 'am2', 'bloque', '2018-11-29', ''), +(9151, 135, 0, 90, '2019-01-30', 'pm1', 'bloque', '2018-11-29', ''), +(9152, 135, 0, 90, '2019-01-30', 'pm2', 'bloque', '2018-11-29', ''), +(9153, 135, 0, 90, '2019-01-31', 'am1', 'bloque', '2018-11-29', ''), +(9154, 135, 0, 90, '2019-01-31', 'am2', 'bloque', '2018-11-29', ''), +(9155, 135, 0, 90, '2019-01-31', 'pm1', 'bloque', '2018-11-29', ''), +(9156, 135, 0, 90, '2019-01-31', 'pm2', 'bloque', '2018-11-29', ''), +(9157, 135, 0, 90, '2019-02-01', 'am1', 'bloque', '2018-11-29', ''), +(9158, 135, 0, 90, '2019-02-01', 'am2', 'bloque', '2018-11-29', ''), +(9159, 135, 0, 90, '2019-02-01', 'pm1', 'bloque', '2018-11-29', ''), +(9160, 135, 0, 90, '2019-02-01', 'pm2', 'bloque', '2018-11-29', ''), +(9161, 135, 0, 90, '2019-02-04', 'am1', 'bloque', '2018-11-29', ''), +(9162, 135, 0, 90, '2019-02-04', 'am2', 'bloque', '2018-11-29', ''), +(9163, 135, 0, 90, '2019-02-04', 'pm1', 'bloque', '2018-11-29', ''), +(9164, 135, 0, 90, '2019-02-04', 'pm2', 'bloque', '2018-11-29', ''), +(9165, 135, 0, 90, '2019-02-05', 'am1', 'bloque', '2018-11-29', ''), +(9166, 135, 0, 90, '2019-02-05', 'am2', 'bloque', '2018-11-29', ''), +(9167, 135, 0, 90, '2019-02-05', 'pm1', 'bloque', '2018-11-29', ''), +(9168, 135, 0, 90, '2019-02-05', 'pm2', 'bloque', '2018-11-29', ''), +(9169, 135, 0, 90, '2019-02-06', 'am1', 'bloque', '2018-11-29', ''), +(9170, 135, 0, 90, '2019-02-06', 'am2', 'bloque', '2018-11-29', ''), +(9171, 135, 0, 90, '2019-02-06', 'pm1', 'bloque', '2018-11-29', ''), +(9172, 135, 0, 90, '2019-02-06', 'pm2', 'bloque', '2018-11-29', ''), +(9173, 135, 0, 90, '2019-02-07', 'am1', 'bloque', '2018-11-29', ''), +(9174, 135, 0, 90, '2019-02-07', 'am2', 'bloque', '2018-11-29', ''), +(9175, 135, 0, 90, '2019-02-07', 'pm1', 'bloque', '2018-11-29', ''), +(9176, 135, 0, 90, '2019-02-07', 'pm2', 'bloque', '2018-11-29', ''), +(9177, 135, 0, 90, '2019-02-08', 'am1', 'bloque', '2018-11-29', ''), +(9178, 135, 0, 90, '2019-02-08', 'am2', 'bloque', '2018-11-29', ''), +(9179, 135, 0, 90, '2019-02-08', 'pm1', 'bloque', '2018-11-29', ''), +(9180, 135, 0, 90, '2019-02-08', 'pm2', 'bloque', '2018-11-29', ''), +(9181, 136, 0, 264, '2019-01-17', 'am1', 'libre', '2018-11-29', ''), +(9182, 136, 0, 264, '2019-01-17', 'am2', 'libre', '2018-11-29', ''), +(9183, 136, 0, 264, '2019-01-17', 'pm1', 'libre', '2018-11-29', ''), +(9184, 136, 0, 264, '2019-01-17', 'pm2', 'libre', '2018-11-29', ''), +(9185, 136, 0, 264, '2019-01-18', 'am1', 'bloque', '2018-11-29', ''), +(9186, 136, 0, 264, '2019-01-18', 'am2', 'bloque', '2018-11-29', ''), +(9187, 136, 0, 264, '2019-01-18', 'pm1', 'bloque', '2018-11-29', ''), +(9188, 136, 0, 264, '2019-01-18', 'pm2', 'bloque', '2018-11-29', ''), +(9189, 136, 0, 264, '2019-01-21', 'am1', 'bloque', '2018-11-29', ''), +(9190, 136, 0, 264, '2019-01-21', 'am2', 'bloque', '2018-11-29', ''), +(9191, 136, 0, 264, '2019-01-21', 'pm1', 'bloque', '2018-11-29', ''), +(9192, 136, 0, 264, '2019-01-21', 'pm2', 'bloque', '2018-11-29', ''), +(9193, 136, 0, 264, '2019-01-22', 'am1', 'bloque', '2018-11-29', ''), +(9194, 136, 0, 264, '2019-01-22', 'am2', 'bloque', '2018-11-29', ''), +(9195, 136, 0, 264, '2019-01-22', 'pm1', 'bloque', '2018-11-29', ''), +(9196, 136, 0, 264, '2019-01-22', 'pm2', 'bloque', '2018-11-29', ''), +(9197, 136, 0, 264, '2019-01-23', 'am1', 'bloque', '2018-11-29', ''), +(9198, 136, 0, 264, '2019-01-23', 'am2', 'bloque', '2018-11-29', ''), +(9199, 136, 0, 264, '2019-01-23', 'pm1', 'bloque', '2018-11-29', ''), +(9200, 136, 0, 264, '2019-01-23', 'pm2', 'bloque', '2018-11-29', ''), +(9201, 136, 0, 264, '2019-01-24', 'am1', 'bloque', '2018-11-29', ''), +(9202, 136, 0, 264, '2019-01-24', 'am2', 'bloque', '2018-11-29', ''), +(9203, 136, 0, 264, '2019-01-24', 'pm1', 'bloque', '2018-11-29', ''), +(9204, 136, 0, 264, '2019-01-24', 'pm2', 'bloque', '2018-11-29', ''), +(9205, 136, 0, 264, '2019-01-25', 'am1', 'bloque', '2018-11-29', ''), +(9206, 136, 0, 264, '2019-01-25', 'am2', 'bloque', '2018-11-29', ''), +(9207, 136, 0, 264, '2019-01-25', 'pm1', 'bloque', '2018-11-29', ''), +(9208, 136, 0, 264, '2019-01-25', 'pm2', 'bloque', '2018-11-29', ''), +(9209, 136, 0, 264, '2019-01-28', 'am1', 'bloque', '2018-11-29', ''), +(9210, 136, 0, 264, '2019-01-28', 'am2', 'bloque', '2018-11-29', ''), +(9211, 136, 0, 264, '2019-01-28', 'pm1', 'bloque', '2018-11-29', ''), +(9212, 136, 0, 264, '2019-01-28', 'pm2', 'bloque', '2018-11-29', ''), +(9213, 136, 0, 264, '2019-01-29', 'am1', 'bloque', '2018-11-29', ''), +(9214, 136, 0, 264, '2019-01-29', 'am2', 'bloque', '2018-11-29', ''), +(9215, 136, 0, 264, '2019-01-29', 'pm1', 'bloque', '2018-11-29', ''), +(9216, 136, 0, 264, '2019-01-29', 'pm2', 'bloque', '2018-11-29', ''), +(9217, 136, 0, 264, '2019-01-30', 'am1', 'bloque', '2018-11-29', ''), +(9218, 136, 0, 264, '2019-01-30', 'am2', 'bloque', '2018-11-29', ''), +(9219, 136, 0, 264, '2019-01-30', 'pm1', 'bloque', '2018-11-29', ''), +(9220, 136, 0, 264, '2019-01-30', 'pm2', 'bloque', '2018-11-29', ''), +(9221, 136, 0, 264, '2019-01-31', 'am1', 'bloque', '2018-11-29', ''), +(9222, 136, 0, 264, '2019-01-31', 'am2', 'bloque', '2018-11-29', ''), +(9223, 136, 0, 264, '2019-01-31', 'pm1', 'bloque', '2018-11-29', ''), +(9224, 136, 0, 264, '2019-01-31', 'pm2', 'bloque', '2018-11-29', ''), +(9225, 136, 0, 264, '2019-02-01', 'am1', 'bloque', '2018-11-29', ''), +(9226, 136, 0, 264, '2019-02-01', 'am2', 'bloque', '2018-11-29', ''), +(9227, 136, 0, 264, '2019-02-01', 'pm1', 'bloque', '2018-11-29', ''), +(9228, 136, 0, 264, '2019-02-01', 'pm2', 'bloque', '2018-11-29', ''), +(9229, 136, 0, 264, '2019-02-04', 'am1', 'bloque', '2018-11-29', ''), +(9230, 136, 0, 264, '2019-02-04', 'am2', 'bloque', '2018-11-29', ''), +(9231, 136, 0, 264, '2019-02-04', 'pm1', 'bloque', '2018-11-29', ''), +(9232, 136, 0, 264, '2019-02-04', 'pm2', 'bloque', '2018-11-29', ''), +(9233, 136, 0, 264, '2019-02-05', 'am1', 'bloque', '2018-11-29', ''), +(9234, 136, 0, 264, '2019-02-05', 'am2', 'bloque', '2018-11-29', ''), +(9235, 136, 0, 264, '2019-02-05', 'pm1', 'bloque', '2018-11-29', ''), +(9236, 136, 0, 264, '2019-02-05', 'pm2', 'bloque', '2018-11-29', ''), +(9237, 136, 0, 264, '2019-02-06', 'am1', 'bloque', '2018-11-29', ''), +(9238, 136, 0, 264, '2019-02-06', 'am2', 'bloque', '2018-11-29', ''), +(9239, 136, 0, 264, '2019-02-06', 'pm1', 'bloque', '2018-11-29', ''), +(9240, 136, 0, 264, '2019-02-06', 'pm2', 'bloque', '2018-11-29', ''), +(9241, 136, 0, 264, '2019-02-07', 'am1', 'bloque', '2018-11-29', ''), +(9242, 136, 0, 264, '2019-02-07', 'am2', 'bloque', '2018-11-29', ''), +(9243, 136, 0, 264, '2019-02-07', 'pm1', 'bloque', '2018-11-29', ''), +(9244, 136, 0, 264, '2019-02-07', 'pm2', 'bloque', '2018-11-29', ''), +(9245, 136, 0, 264, '2019-02-08', 'am1', 'bloque', '2018-11-29', ''), +(9246, 136, 0, 264, '2019-02-08', 'am2', 'bloque', '2018-11-29', ''), +(9247, 136, 0, 264, '2019-02-08', 'pm1', 'bloque', '2018-11-29', ''), +(9248, 136, 0, 264, '2019-02-08', 'pm2', 'bloque', '2018-11-29', ''), +(9249, 137, 0, 264, '2019-01-17', 'am1', 'libre', '2018-11-29', ''), +(9250, 137, 0, 264, '2019-01-17', 'am2', 'libre', '2018-11-29', ''), +(9251, 137, 277, 264, '2019-01-17', 'pm1', 'reserve', '2019-01-14', 'cap'), +(9252, 137, 0, 264, '2019-01-17', 'pm2', 'libre', '2018-11-29', ''), +(9253, 137, 0, 264, '2019-01-18', 'am1', 'bloque', '2018-11-29', ''), +(9254, 137, 0, 264, '2019-01-18', 'am2', 'bloque', '2018-11-29', ''), +(9255, 137, 0, 264, '2019-01-18', 'pm1', 'bloque', '2018-11-29', ''), +(9256, 137, 0, 264, '2019-01-18', 'pm2', 'bloque', '2018-11-29', ''), +(9257, 137, 0, 264, '2019-01-21', 'am1', 'bloque', '2018-11-29', ''), +(9258, 137, 0, 264, '2019-01-21', 'am2', 'bloque', '2018-11-29', ''), +(9259, 137, 0, 264, '2019-01-21', 'pm1', 'bloque', '2018-11-29', ''), +(9260, 137, 0, 264, '2019-01-21', 'pm2', 'bloque', '2018-11-29', ''), +(9261, 137, 0, 264, '2019-01-22', 'am1', 'bloque', '2018-11-29', ''), +(9262, 137, 0, 264, '2019-01-22', 'am2', 'bloque', '2018-11-29', ''), +(9263, 137, 0, 264, '2019-01-22', 'pm1', 'bloque', '2018-11-29', ''), +(9264, 137, 0, 264, '2019-01-22', 'pm2', 'bloque', '2018-11-29', ''), +(9265, 137, 0, 264, '2019-01-23', 'am1', 'bloque', '2018-11-29', ''), +(9266, 137, 0, 264, '2019-01-23', 'am2', 'bloque', '2018-11-29', ''), +(9267, 137, 0, 264, '2019-01-23', 'pm1', 'bloque', '2018-11-29', ''), +(9268, 137, 0, 264, '2019-01-23', 'pm2', 'bloque', '2018-11-29', ''), +(9269, 137, 0, 264, '2019-01-24', 'am1', 'bloque', '2018-11-29', ''), +(9270, 137, 0, 264, '2019-01-24', 'am2', 'bloque', '2018-11-29', ''), +(9271, 137, 0, 264, '2019-01-24', 'pm1', 'bloque', '2018-11-29', ''), +(9272, 137, 0, 264, '2019-01-24', 'pm2', 'bloque', '2018-11-29', ''), +(9273, 137, 0, 264, '2019-01-25', 'am1', 'bloque', '2018-11-29', ''), +(9274, 137, 0, 264, '2019-01-25', 'am2', 'bloque', '2018-11-29', ''), +(9275, 137, 0, 264, '2019-01-25', 'pm1', 'bloque', '2018-11-29', ''), +(9276, 137, 0, 264, '2019-01-25', 'pm2', 'bloque', '2018-11-29', ''), +(9277, 137, 0, 264, '2019-01-28', 'am1', 'bloque', '2018-11-29', ''), +(9278, 137, 0, 264, '2019-01-28', 'am2', 'bloque', '2018-11-29', ''), +(9279, 137, 0, 264, '2019-01-28', 'pm1', 'bloque', '2018-11-29', ''), +(9280, 137, 0, 264, '2019-01-28', 'pm2', 'bloque', '2018-11-29', ''), +(9281, 137, 0, 264, '2019-01-29', 'am1', 'bloque', '2018-11-29', ''), +(9282, 137, 0, 264, '2019-01-29', 'am2', 'bloque', '2018-11-29', ''), +(9283, 137, 0, 264, '2019-01-29', 'pm1', 'bloque', '2018-11-29', ''), +(9284, 137, 0, 264, '2019-01-29', 'pm2', 'bloque', '2018-11-29', ''), +(9285, 137, 0, 264, '2019-01-30', 'am1', 'bloque', '2018-11-29', ''), +(9286, 137, 0, 264, '2019-01-30', 'am2', 'bloque', '2018-11-29', ''), +(9287, 137, 0, 264, '2019-01-30', 'pm1', 'bloque', '2018-11-29', ''), +(9288, 137, 0, 264, '2019-01-30', 'pm2', 'bloque', '2018-11-29', ''), +(9289, 137, 0, 264, '2019-01-31', 'am1', 'bloque', '2018-11-29', ''), +(9290, 137, 0, 264, '2019-01-31', 'am2', 'bloque', '2018-11-29', ''), +(9291, 137, 0, 264, '2019-01-31', 'pm1', 'bloque', '2018-11-29', ''), +(9292, 137, 0, 264, '2019-01-31', 'pm2', 'bloque', '2018-11-29', ''), +(9293, 137, 0, 264, '2019-02-01', 'am1', 'bloque', '2018-11-29', ''), +(9294, 137, 0, 264, '2019-02-01', 'am2', 'bloque', '2018-11-29', ''), +(9295, 137, 0, 264, '2019-02-01', 'pm1', 'bloque', '2018-11-29', ''), +(9296, 137, 0, 264, '2019-02-01', 'pm2', 'bloque', '2018-11-29', ''), +(9297, 137, 0, 264, '2019-02-04', 'am1', 'bloque', '2018-11-29', ''), +(9298, 137, 0, 264, '2019-02-04', 'am2', 'bloque', '2018-11-29', ''), +(9299, 137, 0, 264, '2019-02-04', 'pm1', 'bloque', '2018-11-29', ''), +(9300, 137, 0, 264, '2019-02-04', 'pm2', 'bloque', '2018-11-29', ''), +(9301, 137, 0, 264, '2019-02-05', 'am1', 'bloque', '2018-11-29', ''), +(9302, 137, 0, 264, '2019-02-05', 'am2', 'bloque', '2018-11-29', ''), +(9303, 137, 0, 264, '2019-02-05', 'pm1', 'bloque', '2018-11-29', ''), +(9304, 137, 0, 264, '2019-02-05', 'pm2', 'bloque', '2018-11-29', ''), +(9305, 137, 0, 264, '2019-02-06', 'am1', 'bloque', '2018-11-29', ''), +(9306, 137, 0, 264, '2019-02-06', 'am2', 'bloque', '2018-11-29', ''), +(9307, 137, 0, 264, '2019-02-06', 'pm1', 'bloque', '2018-11-29', ''), +(9308, 137, 0, 264, '2019-02-06', 'pm2', 'bloque', '2018-11-29', ''), +(9309, 137, 0, 264, '2019-02-07', 'am1', 'bloque', '2018-11-29', ''), +(9310, 137, 0, 264, '2019-02-07', 'am2', 'bloque', '2018-11-29', ''), +(9311, 137, 0, 264, '2019-02-07', 'pm1', 'bloque', '2018-11-29', ''), +(9312, 137, 0, 264, '2019-02-07', 'pm2', 'bloque', '2018-11-29', ''), +(9313, 137, 0, 264, '2019-02-08', 'am1', 'bloque', '2018-11-29', ''), +(9314, 137, 0, 264, '2019-02-08', 'am2', 'bloque', '2018-11-29', ''), +(9315, 137, 0, 264, '2019-02-08', 'pm1', 'bloque', '2018-11-29', ''), +(9316, 137, 0, 264, '2019-02-08', 'pm2', 'bloque', '2018-11-29', ''), +(9317, 138, 19, 46, '2019-01-17', 'am1', 'reserve', '2018-11-29', 'ref'), +(9318, 138, 150, 46, '2019-01-17', 'am2', 'reserve', '2018-12-20', 'ref'), +(9319, 138, 0, 46, '2019-01-17', 'pm1', 'libre', '2018-11-29', ''), +(9320, 138, 0, 46, '2019-01-17', 'pm2', 'libre', '2018-11-29', ''), +(9321, 138, 0, 46, '2019-01-18', 'am1', 'bloque', '2018-11-29', ''), +(9322, 138, 0, 46, '2019-01-18', 'am2', 'bloque', '2018-11-29', ''), +(9323, 138, 0, 46, '2019-01-18', 'pm1', 'bloque', '2018-11-29', ''), +(9324, 138, 0, 46, '2019-01-18', 'pm2', 'bloque', '2018-11-29', ''), +(9325, 138, 0, 46, '2019-01-21', 'am1', 'bloque', '2018-11-29', ''), +(9326, 138, 0, 46, '2019-01-21', 'am2', 'bloque', '2018-11-29', ''), +(9327, 138, 0, 46, '2019-01-21', 'pm1', 'bloque', '2018-11-29', ''), +(9328, 138, 0, 46, '2019-01-21', 'pm2', 'bloque', '2018-11-29', ''), +(9329, 138, 0, 46, '2019-01-22', 'am1', 'bloque', '2018-11-29', ''), +(9330, 138, 0, 46, '2019-01-22', 'am2', 'bloque', '2018-11-29', ''), +(9331, 138, 0, 46, '2019-01-22', 'pm1', 'bloque', '2018-11-29', ''), +(9332, 138, 0, 46, '2019-01-22', 'pm2', 'bloque', '2018-11-29', ''), +(9333, 138, 0, 46, '2019-01-23', 'am1', 'bloque', '2018-11-29', ''), +(9334, 138, 0, 46, '2019-01-23', 'am2', 'bloque', '2018-11-29', ''), +(9335, 138, 0, 46, '2019-01-23', 'pm1', 'bloque', '2018-11-29', ''), +(9336, 138, 0, 46, '2019-01-23', 'pm2', 'bloque', '2018-11-29', ''), +(9337, 138, 0, 46, '2019-01-24', 'am1', 'bloque', '2018-11-29', ''), +(9338, 138, 0, 46, '2019-01-24', 'am2', 'bloque', '2018-11-29', ''), +(9339, 138, 0, 46, '2019-01-24', 'pm1', 'bloque', '2018-11-29', ''), +(9340, 138, 0, 46, '2019-01-24', 'pm2', 'bloque', '2018-11-29', ''), +(9341, 138, 0, 46, '2019-01-25', 'am1', 'bloque', '2018-11-29', ''), +(9342, 138, 0, 46, '2019-01-25', 'am2', 'bloque', '2018-11-29', ''), +(9343, 138, 0, 46, '2019-01-25', 'pm1', 'bloque', '2018-11-29', ''), +(9344, 138, 0, 46, '2019-01-25', 'pm2', 'bloque', '2018-11-29', ''), +(9345, 138, 0, 46, '2019-01-28', 'am1', 'bloque', '2018-11-29', ''), +(9346, 138, 0, 46, '2019-01-28', 'am2', 'bloque', '2018-11-29', ''), +(9347, 138, 0, 46, '2019-01-28', 'pm1', 'bloque', '2018-11-29', ''), +(9348, 138, 0, 46, '2019-01-28', 'pm2', 'bloque', '2018-11-29', ''), +(9349, 138, 0, 46, '2019-01-29', 'am1', 'bloque', '2018-11-29', ''), +(9350, 138, 0, 46, '2019-01-29', 'am2', 'bloque', '2018-11-29', ''), +(9351, 138, 0, 46, '2019-01-29', 'pm1', 'bloque', '2018-11-29', ''), +(9352, 138, 0, 46, '2019-01-29', 'pm2', 'bloque', '2018-11-29', ''), +(9353, 138, 0, 46, '2019-01-30', 'am1', 'bloque', '2018-11-29', ''), +(9354, 138, 0, 46, '2019-01-30', 'am2', 'bloque', '2018-11-29', ''), +(9355, 138, 0, 46, '2019-01-30', 'pm1', 'bloque', '2018-11-29', ''), +(9356, 138, 0, 46, '2019-01-30', 'pm2', 'bloque', '2018-11-29', ''), +(9357, 138, 0, 46, '2019-01-31', 'am1', 'bloque', '2018-11-29', ''), +(9358, 138, 0, 46, '2019-01-31', 'am2', 'bloque', '2018-11-29', ''), +(9359, 138, 0, 46, '2019-01-31', 'pm1', 'bloque', '2018-11-29', ''), +(9360, 138, 0, 46, '2019-01-31', 'pm2', 'bloque', '2018-11-29', ''), +(9361, 138, 0, 46, '2019-02-01', 'am1', 'bloque', '2018-11-29', ''), +(9362, 138, 0, 46, '2019-02-01', 'am2', 'bloque', '2018-11-29', ''), +(9363, 138, 0, 46, '2019-02-01', 'pm1', 'bloque', '2018-11-29', ''), +(9364, 138, 0, 46, '2019-02-01', 'pm2', 'bloque', '2018-11-29', ''), +(9365, 138, 0, 46, '2019-02-04', 'am1', 'bloque', '2018-11-29', ''), +(9366, 138, 0, 46, '2019-02-04', 'am2', 'bloque', '2018-11-29', ''), +(9367, 138, 0, 46, '2019-02-04', 'pm1', 'bloque', '2018-11-29', ''), +(9368, 138, 0, 46, '2019-02-04', 'pm2', 'bloque', '2018-11-29', ''), +(9369, 138, 0, 46, '2019-02-05', 'am1', 'bloque', '2018-11-29', ''), +(9370, 138, 0, 46, '2019-02-05', 'am2', 'bloque', '2018-11-29', ''), +(9371, 138, 0, 46, '2019-02-05', 'pm1', 'bloque', '2018-11-29', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(9372, 138, 0, 46, '2019-02-05', 'pm2', 'bloque', '2018-11-29', ''), +(9373, 138, 0, 46, '2019-02-06', 'am1', 'bloque', '2018-11-29', ''), +(9374, 138, 0, 46, '2019-02-06', 'am2', 'bloque', '2018-11-29', ''), +(9375, 138, 0, 46, '2019-02-06', 'pm1', 'bloque', '2018-11-29', ''), +(9376, 138, 0, 46, '2019-02-06', 'pm2', 'bloque', '2018-11-29', ''), +(9377, 138, 0, 46, '2019-02-07', 'am1', 'bloque', '2018-11-29', ''), +(9378, 138, 0, 46, '2019-02-07', 'am2', 'bloque', '2018-11-29', ''), +(9379, 138, 0, 46, '2019-02-07', 'pm1', 'bloque', '2018-11-29', ''), +(9380, 138, 0, 46, '2019-02-07', 'pm2', 'bloque', '2018-11-29', ''), +(9381, 138, 0, 46, '2019-02-08', 'am1', 'bloque', '2018-11-29', ''), +(9382, 138, 0, 46, '2019-02-08', 'am2', 'bloque', '2018-11-29', ''), +(9383, 138, 0, 46, '2019-02-08', 'pm1', 'bloque', '2018-11-29', ''), +(9384, 138, 0, 46, '2019-02-08', 'pm2', 'bloque', '2018-11-29', ''), +(9385, 139, 172, 63, '2019-01-17', 'am1', 'reserve', '2018-12-21', 'ref'), +(9386, 139, 0, 63, '2019-01-17', 'am2', 'libre', '2018-11-29', ''), +(9387, 139, 0, 63, '2019-01-17', 'pm1', 'libre', '2018-11-29', ''), +(9388, 139, 0, 63, '2019-01-17', 'pm2', 'libre', '2018-11-29', ''), +(9389, 139, 0, 63, '2019-01-18', 'am1', 'bloque', '2018-11-29', ''), +(9390, 139, 0, 63, '2019-01-18', 'am2', 'libre', '2018-12-21', 'ref'), +(9391, 139, 173, 63, '2019-01-18', 'pm1', 'reserve', '2018-12-21', 'ref'), +(9392, 139, 0, 63, '2019-01-18', 'pm2', 'bloque', '2018-11-29', ''), +(9393, 139, 0, 63, '2019-01-21', 'am1', 'bloque', '2018-11-29', ''), +(9394, 139, 0, 63, '2019-01-21', 'am2', 'bloque', '2018-11-29', ''), +(9395, 139, 0, 63, '2019-01-21', 'pm1', 'bloque', '2018-11-29', ''), +(9396, 139, 0, 63, '2019-01-21', 'pm2', 'bloque', '2018-11-29', ''), +(9397, 139, 0, 63, '2019-01-22', 'am1', 'bloque', '2018-11-29', ''), +(9398, 139, 0, 63, '2019-01-22', 'am2', 'bloque', '2018-11-29', ''), +(9399, 139, 0, 63, '2019-01-22', 'pm1', 'bloque', '2018-11-29', ''), +(9400, 139, 0, 63, '2019-01-22', 'pm2', 'bloque', '2018-11-29', ''), +(9401, 139, 0, 63, '2019-01-23', 'am1', 'bloque', '2018-11-29', ''), +(9402, 139, 0, 63, '2019-01-23', 'am2', 'bloque', '2018-11-29', ''), +(9403, 139, 0, 63, '2019-01-23', 'pm1', 'bloque', '2018-11-29', ''), +(9404, 139, 0, 63, '2019-01-23', 'pm2', 'bloque', '2018-11-29', ''), +(9405, 139, 0, 63, '2019-01-24', 'am1', 'bloque', '2018-11-29', ''), +(9406, 139, 0, 63, '2019-01-24', 'am2', 'bloque', '2018-11-29', ''), +(9407, 139, 0, 63, '2019-01-24', 'pm1', 'bloque', '2018-11-29', ''), +(9408, 139, 0, 63, '2019-01-24', 'pm2', 'bloque', '2018-11-29', ''), +(9409, 139, 0, 63, '2019-01-25', 'am1', 'bloque', '2018-11-29', ''), +(9410, 139, 0, 63, '2019-01-25', 'am2', 'bloque', '2018-11-29', ''), +(9411, 139, 0, 63, '2019-01-25', 'pm1', 'bloque', '2018-11-29', ''), +(9412, 139, 0, 63, '2019-01-25', 'pm2', 'bloque', '2018-11-29', ''), +(9413, 139, 0, 63, '2019-01-28', 'am1', 'bloque', '2018-11-29', ''), +(9414, 139, 0, 63, '2019-01-28', 'am2', 'bloque', '2018-11-29', ''), +(9415, 139, 0, 63, '2019-01-28', 'pm1', 'bloque', '2018-11-29', ''), +(9416, 139, 0, 63, '2019-01-28', 'pm2', 'bloque', '2018-11-29', ''), +(9417, 139, 0, 63, '2019-01-29', 'am1', 'bloque', '2018-11-29', ''), +(9418, 139, 0, 63, '2019-01-29', 'am2', 'bloque', '2018-11-29', ''), +(9419, 139, 0, 63, '2019-01-29', 'pm1', 'bloque', '2018-11-29', ''), +(9420, 139, 0, 63, '2019-01-29', 'pm2', 'bloque', '2018-11-29', ''), +(9421, 139, 0, 63, '2019-01-30', 'am1', 'bloque', '2018-11-29', ''), +(9422, 139, 0, 63, '2019-01-30', 'am2', 'bloque', '2018-11-29', ''), +(9423, 139, 0, 63, '2019-01-30', 'pm1', 'bloque', '2018-11-29', ''), +(9424, 139, 0, 63, '2019-01-30', 'pm2', 'bloque', '2018-11-29', ''), +(9425, 139, 0, 63, '2019-01-31', 'am1', 'bloque', '2018-11-29', ''), +(9426, 139, 0, 63, '2019-01-31', 'am2', 'bloque', '2018-11-29', ''), +(9427, 139, 0, 63, '2019-01-31', 'pm1', 'bloque', '2018-11-29', ''), +(9428, 139, 0, 63, '2019-01-31', 'pm2', 'bloque', '2018-11-29', ''), +(9429, 139, 0, 63, '2019-02-01', 'am1', 'bloque', '2018-11-29', ''), +(9430, 139, 0, 63, '2019-02-01', 'am2', 'bloque', '2018-11-29', ''), +(9431, 139, 0, 63, '2019-02-01', 'pm1', 'bloque', '2018-11-29', ''), +(9432, 139, 0, 63, '2019-02-01', 'pm2', 'bloque', '2018-11-29', ''), +(9433, 139, 0, 63, '2019-02-04', 'am1', 'bloque', '2018-11-29', ''), +(9434, 139, 0, 63, '2019-02-04', 'am2', 'bloque', '2018-11-29', ''), +(9435, 139, 0, 63, '2019-02-04', 'pm1', 'bloque', '2018-11-29', ''), +(9436, 139, 0, 63, '2019-02-04', 'pm2', 'bloque', '2018-11-29', ''), +(9437, 139, 0, 63, '2019-02-05', 'am1', 'bloque', '2018-11-29', ''), +(9438, 139, 0, 63, '2019-02-05', 'am2', 'bloque', '2018-11-29', ''), +(9439, 139, 0, 63, '2019-02-05', 'pm1', 'bloque', '2018-11-29', ''), +(9440, 139, 0, 63, '2019-02-05', 'pm2', 'bloque', '2018-11-29', ''), +(9441, 139, 0, 63, '2019-02-06', 'am1', 'bloque', '2018-11-29', ''), +(9442, 139, 0, 63, '2019-02-06', 'am2', 'bloque', '2018-11-29', ''), +(9443, 139, 0, 63, '2019-02-06', 'pm1', 'bloque', '2018-11-29', ''), +(9444, 139, 0, 63, '2019-02-06', 'pm2', 'bloque', '2018-11-29', ''), +(9445, 139, 0, 63, '2019-02-07', 'am1', 'bloque', '2018-11-29', ''), +(9446, 139, 0, 63, '2019-02-07', 'am2', 'bloque', '2018-11-29', ''), +(9447, 139, 0, 63, '2019-02-07', 'pm1', 'bloque', '2018-11-29', ''), +(9448, 139, 0, 63, '2019-02-07', 'pm2', 'bloque', '2018-11-29', ''), +(9449, 139, 0, 63, '2019-02-08', 'am1', 'bloque', '2018-11-29', ''), +(9450, 139, 0, 63, '2019-02-08', 'am2', 'bloque', '2018-11-29', ''), +(9451, 139, 0, 63, '2019-02-08', 'pm1', 'bloque', '2018-11-29', ''), +(9452, 139, 0, 63, '2019-02-08', 'pm2', 'bloque', '2018-11-29', ''), +(9453, 140, 0, 83, '2019-01-17', 'am1', 'bloque', '2018-12-21', 'cap'), +(9454, 140, 170, 83, '2019-01-17', 'am2', 'reserve', '2018-12-21', 'cap'), +(9455, 140, 0, 83, '2019-01-17', 'pm1', 'libre', '2018-11-29', ''), +(9456, 140, 171, 83, '2019-01-17', 'pm2', 'reserve', '2018-12-21', 'cap'), +(9457, 140, 0, 83, '2019-01-18', 'am1', 'libre', '2018-12-21', 'cap'), +(9458, 140, 0, 83, '2019-01-18', 'am2', 'bloque', '2018-11-29', ''), +(9459, 140, 0, 83, '2019-01-18', 'pm1', 'bloque', '2018-11-29', ''), +(9460, 140, 0, 83, '2019-01-18', 'pm2', 'bloque', '2018-11-29', ''), +(9461, 140, 0, 83, '2019-01-21', 'am1', 'bloque', '2018-11-29', ''), +(9462, 140, 0, 83, '2019-01-21', 'am2', 'bloque', '2018-11-29', ''), +(9463, 140, 0, 83, '2019-01-21', 'pm1', 'bloque', '2018-11-29', ''), +(9464, 140, 0, 83, '2019-01-21', 'pm2', 'bloque', '2018-11-29', ''), +(9465, 140, 0, 83, '2019-01-22', 'am1', 'bloque', '2018-11-29', ''), +(9466, 140, 0, 83, '2019-01-22', 'am2', 'bloque', '2018-11-29', ''), +(9467, 140, 0, 83, '2019-01-22', 'pm1', 'bloque', '2018-11-29', ''), +(9468, 140, 0, 83, '2019-01-22', 'pm2', 'bloque', '2018-11-29', ''), +(9469, 140, 0, 83, '2019-01-23', 'am1', 'bloque', '2018-11-29', ''), +(9470, 140, 0, 83, '2019-01-23', 'am2', 'bloque', '2018-11-29', ''), +(9471, 140, 0, 83, '2019-01-23', 'pm1', 'bloque', '2018-11-29', ''), +(9472, 140, 0, 83, '2019-01-23', 'pm2', 'bloque', '2018-11-29', ''), +(9473, 140, 0, 83, '2019-01-24', 'am1', 'bloque', '2018-11-29', ''), +(9474, 140, 0, 83, '2019-01-24', 'am2', 'bloque', '2018-11-29', ''), +(9475, 140, 0, 83, '2019-01-24', 'pm1', 'bloque', '2018-11-29', ''), +(9476, 140, 0, 83, '2019-01-24', 'pm2', 'bloque', '2018-11-29', ''), +(9477, 140, 0, 83, '2019-01-25', 'am1', 'bloque', '2018-11-29', ''), +(9478, 140, 0, 83, '2019-01-25', 'am2', 'bloque', '2018-11-29', ''), +(9479, 140, 0, 83, '2019-01-25', 'pm1', 'bloque', '2018-11-29', ''), +(9480, 140, 0, 83, '2019-01-25', 'pm2', 'bloque', '2018-11-29', ''), +(9481, 140, 0, 83, '2019-01-28', 'am1', 'bloque', '2018-11-29', ''), +(9482, 140, 0, 83, '2019-01-28', 'am2', 'bloque', '2018-11-29', ''), +(9483, 140, 0, 83, '2019-01-28', 'pm1', 'bloque', '2018-11-29', ''), +(9484, 140, 0, 83, '2019-01-28', 'pm2', 'bloque', '2018-11-29', ''), +(9485, 140, 0, 83, '2019-01-29', 'am1', 'bloque', '2018-11-29', ''), +(9486, 140, 0, 83, '2019-01-29', 'am2', 'bloque', '2018-11-29', ''), +(9487, 140, 0, 83, '2019-01-29', 'pm1', 'bloque', '2018-11-29', ''), +(9488, 140, 0, 83, '2019-01-29', 'pm2', 'bloque', '2018-11-29', ''), +(9489, 140, 0, 83, '2019-01-30', 'am1', 'bloque', '2018-11-29', ''), +(9490, 140, 0, 83, '2019-01-30', 'am2', 'bloque', '2018-11-29', ''), +(9491, 140, 0, 83, '2019-01-30', 'pm1', 'bloque', '2018-11-29', ''), +(9492, 140, 0, 83, '2019-01-30', 'pm2', 'bloque', '2018-11-29', ''), +(9493, 140, 0, 83, '2019-01-31', 'am1', 'bloque', '2018-11-29', ''), +(9494, 140, 0, 83, '2019-01-31', 'am2', 'bloque', '2018-11-29', ''), +(9495, 140, 0, 83, '2019-01-31', 'pm1', 'bloque', '2018-11-29', ''), +(9496, 140, 0, 83, '2019-01-31', 'pm2', 'bloque', '2018-11-29', ''), +(9497, 140, 0, 83, '2019-02-01', 'am1', 'bloque', '2018-11-29', ''), +(9498, 140, 0, 83, '2019-02-01', 'am2', 'bloque', '2018-11-29', ''), +(9499, 140, 0, 83, '2019-02-01', 'pm1', 'bloque', '2018-11-29', ''), +(9500, 140, 0, 83, '2019-02-01', 'pm2', 'bloque', '2018-11-29', ''), +(9501, 140, 0, 83, '2019-02-04', 'am1', 'bloque', '2018-11-29', ''), +(9502, 140, 0, 83, '2019-02-04', 'am2', 'bloque', '2018-11-29', ''), +(9503, 140, 0, 83, '2019-02-04', 'pm1', 'bloque', '2018-11-29', ''), +(9504, 140, 0, 83, '2019-02-04', 'pm2', 'bloque', '2018-11-29', ''), +(9505, 140, 0, 83, '2019-02-05', 'am1', 'bloque', '2018-11-29', ''), +(9506, 140, 0, 83, '2019-02-05', 'am2', 'bloque', '2018-11-29', ''), +(9507, 140, 0, 83, '2019-02-05', 'pm1', 'bloque', '2018-11-29', ''), +(9508, 140, 0, 83, '2019-02-05', 'pm2', 'bloque', '2018-11-29', ''), +(9509, 140, 0, 83, '2019-02-06', 'am1', 'bloque', '2018-11-29', ''), +(9510, 140, 0, 83, '2019-02-06', 'am2', 'bloque', '2018-11-29', ''), +(9511, 140, 0, 83, '2019-02-06', 'pm1', 'bloque', '2018-11-29', ''), +(9512, 140, 0, 83, '2019-02-06', 'pm2', 'bloque', '2018-11-29', ''), +(9513, 140, 0, 83, '2019-02-07', 'am1', 'bloque', '2018-11-29', ''), +(9514, 140, 0, 83, '2019-02-07', 'am2', 'bloque', '2018-11-29', ''), +(9515, 140, 0, 83, '2019-02-07', 'pm1', 'bloque', '2018-11-29', ''), +(9516, 140, 0, 83, '2019-02-07', 'pm2', 'bloque', '2018-11-29', ''), +(9517, 140, 0, 83, '2019-02-08', 'am1', 'bloque', '2018-11-29', ''), +(9518, 140, 0, 83, '2019-02-08', 'am2', 'bloque', '2018-11-29', ''), +(9519, 140, 0, 83, '2019-02-08', 'pm1', 'bloque', '2018-11-29', ''), +(9520, 140, 0, 83, '2019-02-08', 'pm2', 'bloque', '2018-11-29', ''), +(9521, 141, 0, 63, '2019-01-17', 'am1', 'libre', '2018-11-29', ''), +(9522, 141, 0, 63, '2019-01-17', 'am2', 'libre', '2018-11-29', ''), +(9523, 141, 0, 63, '2019-01-17', 'pm1', 'libre', '2018-11-29', ''), +(9524, 141, 0, 63, '2019-01-17', 'pm2', 'libre', '2018-11-29', ''), +(9525, 141, 0, 63, '2019-01-18', 'am1', 'bloque', '2018-11-29', ''), +(9526, 141, 0, 63, '2019-01-18', 'am2', 'bloque', '2018-11-29', ''), +(9527, 141, 175, 63, '2019-01-18', 'pm1', 'reserve', '2018-12-21', 'ref'), +(9528, 141, 0, 63, '2019-01-18', 'pm2', 'bloque', '2018-12-21', 'ref'), +(9529, 141, 0, 63, '2019-01-21', 'am1', 'bloque', '2018-11-29', ''), +(9530, 141, 0, 63, '2019-01-21', 'am2', 'bloque', '2018-11-29', ''), +(9531, 141, 0, 63, '2019-01-21', 'pm1', 'bloque', '2018-11-29', ''), +(9532, 141, 0, 63, '2019-01-21', 'pm2', 'bloque', '2018-11-29', ''), +(9533, 141, 0, 63, '2019-01-22', 'am1', 'bloque', '2018-11-29', ''), +(9534, 141, 0, 63, '2019-01-22', 'am2', 'bloque', '2018-11-29', ''), +(9535, 141, 0, 63, '2019-01-22', 'pm1', 'bloque', '2018-11-29', ''), +(9536, 141, 0, 63, '2019-01-22', 'pm2', 'bloque', '2018-11-29', ''), +(9537, 141, 0, 63, '2019-01-23', 'am1', 'bloque', '2018-11-29', ''), +(9538, 141, 0, 63, '2019-01-23', 'am2', 'bloque', '2018-11-29', ''), +(9539, 141, 0, 63, '2019-01-23', 'pm1', 'bloque', '2018-11-29', ''), +(9540, 141, 0, 63, '2019-01-23', 'pm2', 'bloque', '2018-11-29', ''), +(9541, 141, 0, 63, '2019-01-24', 'am1', 'bloque', '2018-11-29', ''), +(9542, 141, 0, 63, '2019-01-24', 'am2', 'bloque', '2018-11-29', ''), +(9543, 141, 0, 63, '2019-01-24', 'pm1', 'bloque', '2018-11-29', ''), +(9544, 141, 0, 63, '2019-01-24', 'pm2', 'bloque', '2018-11-29', ''), +(9545, 141, 0, 63, '2019-01-25', 'am1', 'bloque', '2018-11-29', ''), +(9546, 141, 0, 63, '2019-01-25', 'am2', 'bloque', '2018-11-29', ''), +(9547, 141, 0, 63, '2019-01-25', 'pm1', 'bloque', '2018-11-29', ''), +(9548, 141, 0, 63, '2019-01-25', 'pm2', 'bloque', '2018-11-29', ''), +(9549, 141, 0, 63, '2019-01-28', 'am1', 'bloque', '2018-11-29', ''), +(9550, 141, 0, 63, '2019-01-28', 'am2', 'bloque', '2018-11-29', ''), +(9551, 141, 0, 63, '2019-01-28', 'pm1', 'bloque', '2018-11-29', ''), +(9552, 141, 0, 63, '2019-01-28', 'pm2', 'bloque', '2018-11-29', ''), +(9553, 141, 0, 63, '2019-01-29', 'am1', 'bloque', '2018-11-29', ''), +(9554, 141, 0, 63, '2019-01-29', 'am2', 'bloque', '2018-11-29', ''), +(9555, 141, 0, 63, '2019-01-29', 'pm1', 'bloque', '2018-11-29', ''), +(9556, 141, 0, 63, '2019-01-29', 'pm2', 'bloque', '2018-11-29', ''), +(9557, 141, 0, 63, '2019-01-30', 'am1', 'bloque', '2018-11-29', ''), +(9558, 141, 0, 63, '2019-01-30', 'am2', 'bloque', '2018-11-29', ''), +(9559, 141, 0, 63, '2019-01-30', 'pm1', 'bloque', '2018-11-29', ''), +(9560, 141, 0, 63, '2019-01-30', 'pm2', 'bloque', '2018-11-29', ''), +(9561, 141, 0, 63, '2019-01-31', 'am1', 'bloque', '2018-11-29', ''), +(9562, 141, 0, 63, '2019-01-31', 'am2', 'bloque', '2018-11-29', ''), +(9563, 141, 0, 63, '2019-01-31', 'pm1', 'bloque', '2018-11-29', ''), +(9564, 141, 0, 63, '2019-01-31', 'pm2', 'bloque', '2018-11-29', ''), +(9565, 141, 0, 63, '2019-02-01', 'am1', 'bloque', '2018-11-29', ''), +(9566, 141, 0, 63, '2019-02-01', 'am2', 'bloque', '2018-11-29', ''), +(9567, 141, 0, 63, '2019-02-01', 'pm1', 'bloque', '2018-11-29', ''), +(9568, 141, 0, 63, '2019-02-01', 'pm2', 'bloque', '2018-11-29', ''), +(9569, 141, 0, 63, '2019-02-04', 'am1', 'bloque', '2018-11-29', ''), +(9570, 141, 0, 63, '2019-02-04', 'am2', 'bloque', '2018-11-29', ''), +(9571, 141, 0, 63, '2019-02-04', 'pm1', 'bloque', '2018-11-29', ''), +(9572, 141, 0, 63, '2019-02-04', 'pm2', 'bloque', '2018-11-29', ''), +(9573, 141, 0, 63, '2019-02-05', 'am1', 'bloque', '2018-11-29', ''), +(9574, 141, 0, 63, '2019-02-05', 'am2', 'bloque', '2018-11-29', ''), +(9575, 141, 0, 63, '2019-02-05', 'pm1', 'bloque', '2018-11-29', ''), +(9576, 141, 0, 63, '2019-02-05', 'pm2', 'bloque', '2018-11-29', ''), +(9577, 141, 0, 63, '2019-02-06', 'am1', 'bloque', '2018-11-29', ''), +(9578, 141, 0, 63, '2019-02-06', 'am2', 'bloque', '2018-11-29', ''), +(9579, 141, 0, 63, '2019-02-06', 'pm1', 'bloque', '2018-11-29', ''), +(9580, 141, 0, 63, '2019-02-06', 'pm2', 'bloque', '2018-11-29', ''), +(9581, 141, 0, 63, '2019-02-07', 'am1', 'bloque', '2018-11-29', ''), +(9582, 141, 0, 63, '2019-02-07', 'am2', 'bloque', '2018-11-29', ''), +(9583, 141, 0, 63, '2019-02-07', 'pm1', 'bloque', '2018-11-29', ''), +(9584, 141, 0, 63, '2019-02-07', 'pm2', 'bloque', '2018-11-29', ''), +(9585, 141, 0, 63, '2019-02-08', 'am1', 'bloque', '2018-11-29', ''), +(9586, 141, 0, 63, '2019-02-08', 'am2', 'bloque', '2018-11-29', ''), +(9587, 141, 0, 63, '2019-02-08', 'pm1', 'bloque', '2018-11-29', ''), +(9588, 141, 0, 63, '2019-02-08', 'pm2', 'bloque', '2018-11-29', ''), +(9589, 142, 194, 70, '2019-01-17', 'am1', 'reserve', '2019-01-07', 'cap'), +(9590, 142, 195, 70, '2019-01-17', 'am2', 'reserve', '2019-01-07', 'cap'), +(9591, 142, 223, 70, '2019-01-17', 'pm1', 'reserve', '2019-01-08', 'cap'), +(9592, 142, 0, 70, '2019-01-17', 'pm2', 'libre', '2018-11-30', ''), +(9593, 142, 0, 70, '2019-01-18', 'am1', 'bloque', '2018-11-30', ''), +(9594, 142, 0, 70, '2019-01-18', 'am2', 'bloque', '2018-11-30', ''), +(9595, 142, 0, 70, '2019-01-18', 'pm1', 'bloque', '2018-11-30', ''), +(9596, 142, 0, 70, '2019-01-18', 'pm2', 'bloque', '2018-11-30', ''), +(9597, 142, 0, 70, '2019-01-21', 'am1', 'bloque', '2018-11-30', ''), +(9598, 142, 0, 70, '2019-01-21', 'am2', 'bloque', '2018-11-30', ''), +(9599, 142, 0, 70, '2019-01-21', 'pm1', 'bloque', '2018-11-30', ''), +(9600, 142, 0, 70, '2019-01-21', 'pm2', 'bloque', '2018-11-30', ''), +(9601, 142, 0, 70, '2019-01-22', 'am1', 'bloque', '2018-11-30', ''), +(9602, 142, 0, 70, '2019-01-22', 'am2', 'bloque', '2018-11-30', ''), +(9603, 142, 0, 70, '2019-01-22', 'pm1', 'bloque', '2018-11-30', ''), +(9604, 142, 0, 70, '2019-01-22', 'pm2', 'bloque', '2018-11-30', ''), +(9605, 142, 0, 70, '2019-01-23', 'am1', 'bloque', '2018-11-30', ''), +(9606, 142, 0, 70, '2019-01-23', 'am2', 'bloque', '2018-11-30', ''), +(9607, 142, 0, 70, '2019-01-23', 'pm1', 'bloque', '2018-11-30', ''), +(9608, 142, 0, 70, '2019-01-23', 'pm2', 'bloque', '2018-11-30', ''), +(9609, 142, 0, 70, '2019-01-24', 'am1', 'bloque', '2018-11-30', ''), +(9610, 142, 0, 70, '2019-01-24', 'am2', 'bloque', '2018-11-30', ''), +(9611, 142, 0, 70, '2019-01-24', 'pm1', 'bloque', '2018-11-30', ''), +(9612, 142, 0, 70, '2019-01-24', 'pm2', 'bloque', '2018-11-30', ''), +(9613, 142, 0, 70, '2019-01-25', 'am1', 'bloque', '2018-11-30', ''), +(9614, 142, 0, 70, '2019-01-25', 'am2', 'bloque', '2018-11-30', ''), +(9615, 142, 0, 70, '2019-01-25', 'pm1', 'bloque', '2018-11-30', ''), +(9616, 142, 0, 70, '2019-01-25', 'pm2', 'bloque', '2018-11-30', ''), +(9617, 142, 0, 70, '2019-01-28', 'am1', 'bloque', '2018-11-30', ''), +(9618, 142, 0, 70, '2019-01-28', 'am2', 'bloque', '2018-11-30', ''), +(9619, 142, 0, 70, '2019-01-28', 'pm1', 'bloque', '2018-11-30', ''), +(9620, 142, 0, 70, '2019-01-28', 'pm2', 'bloque', '2018-11-30', ''), +(9621, 142, 0, 70, '2019-01-29', 'am1', 'bloque', '2018-11-30', ''), +(9622, 142, 0, 70, '2019-01-29', 'am2', 'bloque', '2018-11-30', ''), +(9623, 142, 0, 70, '2019-01-29', 'pm1', 'bloque', '2018-11-30', ''), +(9624, 142, 0, 70, '2019-01-29', 'pm2', 'bloque', '2018-11-30', ''), +(9625, 142, 0, 70, '2019-01-30', 'am1', 'bloque', '2018-11-30', ''), +(9626, 142, 0, 70, '2019-01-30', 'am2', 'bloque', '2018-11-30', ''), +(9627, 142, 0, 70, '2019-01-30', 'pm1', 'bloque', '2018-11-30', ''), +(9628, 142, 0, 70, '2019-01-30', 'pm2', 'bloque', '2018-11-30', ''), +(9629, 142, 0, 70, '2019-01-31', 'am1', 'bloque', '2018-11-30', ''), +(9630, 142, 0, 70, '2019-01-31', 'am2', 'bloque', '2018-11-30', ''), +(9631, 142, 0, 70, '2019-01-31', 'pm1', 'bloque', '2018-11-30', ''), +(9632, 142, 0, 70, '2019-01-31', 'pm2', 'bloque', '2018-11-30', ''), +(9633, 142, 0, 70, '2019-02-01', 'am1', 'bloque', '2018-11-30', ''), +(9634, 142, 0, 70, '2019-02-01', 'am2', 'bloque', '2018-11-30', ''), +(9635, 142, 0, 70, '2019-02-01', 'pm1', 'bloque', '2018-11-30', ''), +(9636, 142, 0, 70, '2019-02-01', 'pm2', 'bloque', '2018-11-30', ''), +(9637, 142, 0, 70, '2019-02-04', 'am1', 'bloque', '2018-11-30', ''), +(9638, 142, 0, 70, '2019-02-04', 'am2', 'bloque', '2018-11-30', ''), +(9639, 142, 0, 70, '2019-02-04', 'pm1', 'bloque', '2018-11-30', ''), +(9640, 142, 0, 70, '2019-02-04', 'pm2', 'bloque', '2018-11-30', ''), +(9641, 142, 0, 70, '2019-02-05', 'am1', 'bloque', '2018-11-30', ''), +(9642, 142, 0, 70, '2019-02-05', 'am2', 'bloque', '2018-11-30', ''), +(9643, 142, 0, 70, '2019-02-05', 'pm1', 'bloque', '2018-11-30', ''), +(9644, 142, 0, 70, '2019-02-05', 'pm2', 'bloque', '2018-11-30', ''), +(9645, 142, 0, 70, '2019-02-06', 'am1', 'bloque', '2018-11-30', ''), +(9646, 142, 0, 70, '2019-02-06', 'am2', 'bloque', '2018-11-30', ''), +(9647, 142, 0, 70, '2019-02-06', 'pm1', 'bloque', '2018-11-30', ''), +(9648, 142, 0, 70, '2019-02-06', 'pm2', 'bloque', '2018-11-30', ''), +(9649, 142, 0, 70, '2019-02-07', 'am1', 'bloque', '2018-11-30', ''), +(9650, 142, 0, 70, '2019-02-07', 'am2', 'bloque', '2018-11-30', ''), +(9651, 142, 0, 70, '2019-02-07', 'pm1', 'bloque', '2018-11-30', ''), +(9652, 142, 0, 70, '2019-02-07', 'pm2', 'bloque', '2018-11-30', ''), +(9653, 142, 0, 70, '2019-02-08', 'am1', 'bloque', '2018-11-30', ''), +(9654, 142, 0, 70, '2019-02-08', 'am2', 'bloque', '2018-11-30', ''), +(9655, 142, 0, 70, '2019-02-08', 'pm1', 'bloque', '2018-11-30', ''), +(9656, 142, 0, 70, '2019-02-08', 'pm2', 'bloque', '2018-11-30', ''), +(9657, 143, 0, 241, '2019-01-17', 'am1', 'libre', '2018-11-30', ''), +(9658, 143, 0, 241, '2019-01-17', 'am2', 'libre', '2018-11-30', ''), +(9659, 143, 0, 241, '2019-01-17', 'pm1', 'libre', '2018-11-30', ''), +(9660, 143, 0, 241, '2019-01-17', 'pm2', 'libre', '2018-11-30', ''), +(9661, 143, 0, 241, '2019-01-18', 'am1', 'bloque', '2018-11-30', ''), +(9662, 143, 0, 241, '2019-01-18', 'am2', 'bloque', '2018-11-30', ''), +(9663, 143, 0, 241, '2019-01-18', 'pm1', 'bloque', '2018-11-30', ''), +(9664, 143, 0, 241, '2019-01-18', 'pm2', 'bloque', '2018-11-30', ''), +(9665, 143, 0, 241, '2019-01-21', 'am1', 'bloque', '2018-11-30', ''), +(9666, 143, 0, 241, '2019-01-21', 'am2', 'bloque', '2018-11-30', ''), +(9667, 143, 0, 241, '2019-01-21', 'pm1', 'bloque', '2018-11-30', ''), +(9668, 143, 0, 241, '2019-01-21', 'pm2', 'bloque', '2018-11-30', ''), +(9669, 143, 0, 241, '2019-01-22', 'am1', 'bloque', '2018-11-30', ''), +(9670, 143, 0, 241, '2019-01-22', 'am2', 'bloque', '2018-11-30', ''), +(9671, 143, 0, 241, '2019-01-22', 'pm1', 'bloque', '2018-11-30', ''), +(9672, 143, 0, 241, '2019-01-22', 'pm2', 'bloque', '2018-11-30', ''), +(9673, 143, 0, 241, '2019-01-23', 'am1', 'bloque', '2018-11-30', ''), +(9674, 143, 0, 241, '2019-01-23', 'am2', 'bloque', '2018-11-30', ''), +(9675, 143, 0, 241, '2019-01-23', 'pm1', 'bloque', '2018-11-30', ''), +(9676, 143, 0, 241, '2019-01-23', 'pm2', 'bloque', '2018-11-30', ''), +(9677, 143, 0, 241, '2019-01-24', 'am1', 'bloque', '2018-11-30', ''), +(9678, 143, 0, 241, '2019-01-24', 'am2', 'bloque', '2018-11-30', ''), +(9679, 143, 0, 241, '2019-01-24', 'pm1', 'bloque', '2018-11-30', ''), +(9680, 143, 0, 241, '2019-01-24', 'pm2', 'bloque', '2018-11-30', ''), +(9681, 143, 0, 241, '2019-01-25', 'am1', 'bloque', '2018-11-30', ''), +(9682, 143, 0, 241, '2019-01-25', 'am2', 'bloque', '2018-11-30', ''), +(9683, 143, 0, 241, '2019-01-25', 'pm1', 'bloque', '2018-11-30', ''), +(9684, 143, 0, 241, '2019-01-25', 'pm2', 'bloque', '2018-11-30', ''), +(9685, 143, 0, 241, '2019-01-28', 'am1', 'bloque', '2018-11-30', ''), +(9686, 143, 0, 241, '2019-01-28', 'am2', 'bloque', '2018-11-30', ''), +(9687, 143, 0, 241, '2019-01-28', 'pm1', 'bloque', '2018-11-30', ''), +(9688, 143, 0, 241, '2019-01-28', 'pm2', 'bloque', '2018-11-30', ''), +(9689, 143, 0, 241, '2019-01-29', 'am1', 'bloque', '2018-11-30', ''), +(9690, 143, 0, 241, '2019-01-29', 'am2', 'bloque', '2018-11-30', ''), +(9691, 143, 0, 241, '2019-01-29', 'pm1', 'bloque', '2018-11-30', ''), +(9692, 143, 0, 241, '2019-01-29', 'pm2', 'bloque', '2018-11-30', ''), +(9693, 143, 0, 241, '2019-01-30', 'am1', 'bloque', '2018-11-30', ''), +(9694, 143, 0, 241, '2019-01-30', 'am2', 'bloque', '2018-11-30', ''), +(9695, 143, 0, 241, '2019-01-30', 'pm1', 'bloque', '2018-11-30', ''), +(9696, 143, 0, 241, '2019-01-30', 'pm2', 'bloque', '2018-11-30', ''), +(9697, 143, 0, 241, '2019-01-31', 'am1', 'bloque', '2018-11-30', ''), +(9698, 143, 0, 241, '2019-01-31', 'am2', 'bloque', '2018-11-30', ''), +(9699, 143, 0, 241, '2019-01-31', 'pm1', 'bloque', '2018-11-30', ''), +(9700, 143, 0, 241, '2019-01-31', 'pm2', 'bloque', '2018-11-30', ''), +(9701, 143, 0, 241, '2019-02-01', 'am1', 'bloque', '2018-11-30', ''), +(9702, 143, 0, 241, '2019-02-01', 'am2', 'bloque', '2018-11-30', ''), +(9703, 143, 0, 241, '2019-02-01', 'pm1', 'bloque', '2018-11-30', ''), +(9704, 143, 0, 241, '2019-02-01', 'pm2', 'bloque', '2018-11-30', ''), +(9705, 143, 0, 241, '2019-02-04', 'am1', 'bloque', '2018-11-30', ''), +(9706, 143, 0, 241, '2019-02-04', 'am2', 'bloque', '2018-11-30', ''), +(9707, 143, 0, 241, '2019-02-04', 'pm1', 'bloque', '2018-11-30', ''), +(9708, 143, 0, 241, '2019-02-04', 'pm2', 'bloque', '2018-11-30', ''), +(9709, 143, 0, 241, '2019-02-05', 'am1', 'bloque', '2018-11-30', ''), +(9710, 143, 0, 241, '2019-02-05', 'am2', 'bloque', '2018-11-30', ''), +(9711, 143, 0, 241, '2019-02-05', 'pm1', 'bloque', '2018-11-30', ''), +(9712, 143, 0, 241, '2019-02-05', 'pm2', 'bloque', '2018-11-30', ''), +(9713, 143, 0, 241, '2019-02-06', 'am1', 'bloque', '2018-11-30', ''), +(9714, 143, 0, 241, '2019-02-06', 'am2', 'bloque', '2018-11-30', ''), +(9715, 143, 0, 241, '2019-02-06', 'pm1', 'bloque', '2018-11-30', ''), +(9716, 143, 0, 241, '2019-02-06', 'pm2', 'bloque', '2018-11-30', ''), +(9717, 143, 0, 241, '2019-02-07', 'am1', 'bloque', '2018-11-30', ''), +(9718, 143, 0, 241, '2019-02-07', 'am2', 'bloque', '2018-11-30', ''), +(9719, 143, 0, 241, '2019-02-07', 'pm1', 'bloque', '2018-11-30', ''), +(9720, 143, 0, 241, '2019-02-07', 'pm2', 'bloque', '2018-11-30', ''), +(9721, 143, 0, 241, '2019-02-08', 'am1', 'bloque', '2018-11-30', ''), +(9722, 143, 0, 241, '2019-02-08', 'am2', 'bloque', '2018-11-30', ''), +(9723, 143, 0, 241, '2019-02-08', 'pm1', 'bloque', '2018-11-30', ''), +(9724, 143, 0, 241, '2019-02-08', 'pm2', 'bloque', '2018-11-30', ''), +(9725, 144, 0, 337, '2019-01-17', 'am1', 'libre', '2018-12-03', ''), +(9726, 144, 0, 337, '2019-01-17', 'am2', 'libre', '2018-12-03', ''), +(9727, 144, 0, 337, '2019-01-17', 'pm1', 'libre', '2018-12-03', ''), +(9728, 144, 0, 337, '2019-01-17', 'pm2', 'libre', '2018-12-03', ''), +(9729, 144, 0, 337, '2019-01-18', 'am1', 'libre', '2018-12-03', 'ref'), +(9730, 144, 0, 337, '2019-01-18', 'am2', 'libre', '2018-12-03', 'ref'), +(9731, 144, 0, 337, '2019-01-18', 'pm1', 'libre', '2018-12-03', 'ref'), +(9732, 144, 0, 337, '2019-01-18', 'pm2', 'libre', '2018-12-03', 'ref'), +(9733, 144, 0, 337, '2019-01-21', 'am1', 'bloque', '2018-12-03', ''), +(9734, 144, 0, 337, '2019-01-21', 'am2', 'bloque', '2018-12-03', ''), +(9735, 144, 0, 337, '2019-01-21', 'pm1', 'bloque', '2018-12-03', ''), +(9736, 144, 0, 337, '2019-01-21', 'pm2', 'bloque', '2018-12-03', ''), +(9737, 144, 0, 337, '2019-01-22', 'am1', 'bloque', '2018-12-03', ''), +(9738, 144, 0, 337, '2019-01-22', 'am2', 'bloque', '2018-12-03', ''), +(9739, 144, 0, 337, '2019-01-22', 'pm1', 'bloque', '2018-12-03', ''), +(9740, 144, 0, 337, '2019-01-22', 'pm2', 'bloque', '2018-12-03', ''), +(9741, 144, 0, 337, '2019-01-23', 'am1', 'bloque', '2018-12-03', ''), +(9742, 144, 0, 337, '2019-01-23', 'am2', 'bloque', '2018-12-03', ''), +(9743, 144, 0, 337, '2019-01-23', 'pm1', 'bloque', '2018-12-03', ''), +(9744, 144, 0, 337, '2019-01-23', 'pm2', 'bloque', '2018-12-03', ''), +(9745, 144, 0, 337, '2019-01-24', 'am1', 'bloque', '2018-12-03', ''), +(9746, 144, 0, 337, '2019-01-24', 'am2', 'bloque', '2018-12-03', ''), +(9747, 144, 0, 337, '2019-01-24', 'pm1', 'bloque', '2018-12-03', ''), +(9748, 144, 0, 337, '2019-01-24', 'pm2', 'bloque', '2018-12-03', ''), +(9749, 144, 0, 337, '2019-01-25', 'am1', 'bloque', '2018-12-03', ''), +(9750, 144, 0, 337, '2019-01-25', 'am2', 'bloque', '2018-12-03', ''), +(9751, 144, 0, 337, '2019-01-25', 'pm1', 'bloque', '2018-12-03', ''), +(9752, 144, 0, 337, '2019-01-25', 'pm2', 'bloque', '2018-12-03', ''), +(9753, 144, 0, 337, '2019-01-28', 'am1', 'bloque', '2018-12-03', ''), +(9754, 144, 0, 337, '2019-01-28', 'am2', 'bloque', '2018-12-03', ''), +(9755, 144, 0, 337, '2019-01-28', 'pm1', 'bloque', '2018-12-03', ''), +(9756, 144, 0, 337, '2019-01-28', 'pm2', 'bloque', '2018-12-03', ''), +(9757, 144, 0, 337, '2019-01-29', 'am1', 'bloque', '2018-12-03', ''), +(9758, 144, 0, 337, '2019-01-29', 'am2', 'bloque', '2018-12-03', ''), +(9759, 144, 0, 337, '2019-01-29', 'pm1', 'bloque', '2018-12-03', ''), +(9760, 144, 0, 337, '2019-01-29', 'pm2', 'bloque', '2018-12-03', ''), +(9761, 144, 0, 337, '2019-01-30', 'am1', 'bloque', '2018-12-03', ''), +(9762, 144, 0, 337, '2019-01-30', 'am2', 'bloque', '2018-12-03', ''), +(9763, 144, 0, 337, '2019-01-30', 'pm1', 'bloque', '2018-12-03', ''), +(9764, 144, 0, 337, '2019-01-30', 'pm2', 'bloque', '2018-12-03', ''), +(9765, 144, 0, 337, '2019-01-31', 'am1', 'bloque', '2018-12-03', ''), +(9766, 144, 0, 337, '2019-01-31', 'am2', 'bloque', '2018-12-03', ''), +(9767, 144, 0, 337, '2019-01-31', 'pm1', 'bloque', '2018-12-03', ''), +(9768, 144, 0, 337, '2019-01-31', 'pm2', 'bloque', '2018-12-03', ''), +(9769, 144, 0, 337, '2019-02-01', 'am1', 'bloque', '2018-12-03', ''), +(9770, 144, 0, 337, '2019-02-01', 'am2', 'bloque', '2018-12-03', ''), +(9771, 144, 0, 337, '2019-02-01', 'pm1', 'bloque', '2018-12-03', ''), +(9772, 144, 0, 337, '2019-02-01', 'pm2', 'bloque', '2018-12-03', ''), +(9773, 144, 0, 337, '2019-02-04', 'am1', 'bloque', '2018-12-03', ''), +(9774, 144, 0, 337, '2019-02-04', 'am2', 'bloque', '2018-12-03', ''), +(9775, 144, 0, 337, '2019-02-04', 'pm1', 'bloque', '2018-12-03', ''), +(9776, 144, 0, 337, '2019-02-04', 'pm2', 'bloque', '2018-12-03', ''), +(9777, 144, 0, 337, '2019-02-05', 'am1', 'bloque', '2018-12-03', ''), +(9778, 144, 0, 337, '2019-02-05', 'am2', 'bloque', '2018-12-03', ''), +(9779, 144, 0, 337, '2019-02-05', 'pm1', 'bloque', '2018-12-03', ''), +(9780, 144, 0, 337, '2019-02-05', 'pm2', 'bloque', '2018-12-03', ''), +(9781, 144, 0, 337, '2019-02-06', 'am1', 'bloque', '2018-12-03', ''), +(9782, 144, 0, 337, '2019-02-06', 'am2', 'bloque', '2018-12-03', ''), +(9783, 144, 0, 337, '2019-02-06', 'pm1', 'bloque', '2018-12-03', ''), +(9784, 144, 0, 337, '2019-02-06', 'pm2', 'bloque', '2018-12-03', ''), +(9785, 144, 0, 337, '2019-02-07', 'am1', 'bloque', '2018-12-03', ''), +(9786, 144, 0, 337, '2019-02-07', 'am2', 'bloque', '2018-12-03', ''), +(9787, 144, 0, 337, '2019-02-07', 'pm1', 'bloque', '2018-12-03', ''), +(9788, 144, 0, 337, '2019-02-07', 'pm2', 'bloque', '2018-12-03', ''), +(9789, 144, 0, 337, '2019-02-08', 'am1', 'bloque', '2018-12-03', ''), +(9790, 144, 0, 337, '2019-02-08', 'am2', 'bloque', '2018-12-03', ''), +(9791, 144, 0, 337, '2019-02-08', 'pm1', 'bloque', '2018-12-03', ''), +(9792, 144, 0, 337, '2019-02-08', 'pm2', 'bloque', '2018-12-03', ''), +(9797, 145, 0, 72, '2019-01-18', 'am1', 'bloque', '2018-12-03', ''), +(9798, 145, 0, 72, '2019-01-18', 'am2', 'bloque', '2018-12-03', ''), +(9799, 145, 0, 72, '2019-01-18', 'pm1', 'bloque', '2018-12-03', ''), +(9800, 145, 0, 72, '2019-01-18', 'pm2', 'bloque', '2018-12-03', ''), +(9801, 145, 0, 72, '2019-01-21', 'am1', 'bloque', '2018-12-03', ''), +(9802, 145, 0, 72, '2019-01-21', 'am2', 'bloque', '2018-12-03', ''), +(9803, 145, 0, 72, '2019-01-21', 'pm1', 'bloque', '2018-12-03', ''), +(9804, 145, 0, 72, '2019-01-21', 'pm2', 'bloque', '2018-12-03', ''), +(9805, 145, 0, 72, '2019-01-22', 'am1', 'bloque', '2018-12-03', ''), +(9806, 145, 0, 72, '2019-01-22', 'am2', 'bloque', '2018-12-03', ''), +(9807, 145, 0, 72, '2019-01-22', 'pm1', 'bloque', '2018-12-03', ''), +(9808, 145, 0, 72, '2019-01-22', 'pm2', 'bloque', '2018-12-03', ''), +(9809, 145, 0, 72, '2019-01-23', 'am1', 'bloque', '2018-12-03', ''), +(9810, 145, 0, 72, '2019-01-23', 'am2', 'bloque', '2018-12-03', ''), +(9811, 145, 0, 72, '2019-01-23', 'pm1', 'bloque', '2018-12-03', ''), +(9812, 145, 0, 72, '2019-01-23', 'pm2', 'bloque', '2018-12-03', ''), +(9813, 145, 0, 72, '2019-01-24', 'am1', 'bloque', '2018-12-03', ''), +(9814, 145, 0, 72, '2019-01-24', 'am2', 'bloque', '2018-12-03', ''), +(9815, 145, 0, 72, '2019-01-24', 'pm1', 'bloque', '2018-12-03', ''), +(9816, 145, 0, 72, '2019-01-24', 'pm2', 'bloque', '2018-12-03', ''), +(9817, 145, 0, 72, '2019-01-25', 'am1', 'bloque', '2018-12-03', ''), +(9818, 145, 0, 72, '2019-01-25', 'am2', 'bloque', '2018-12-03', ''), +(9819, 145, 0, 72, '2019-01-25', 'pm1', 'bloque', '2018-12-03', ''), +(9820, 145, 0, 72, '2019-01-25', 'pm2', 'bloque', '2018-12-03', ''), +(9821, 145, 0, 72, '2019-01-28', 'am1', 'bloque', '2018-12-03', ''), +(9822, 145, 0, 72, '2019-01-28', 'am2', 'bloque', '2018-12-03', ''), +(9823, 145, 0, 72, '2019-01-28', 'pm1', 'bloque', '2018-12-03', ''), +(9824, 145, 0, 72, '2019-01-28', 'pm2', 'bloque', '2018-12-03', ''), +(9825, 145, 0, 72, '2019-01-29', 'am1', 'bloque', '2018-12-03', ''), +(9826, 145, 0, 72, '2019-01-29', 'am2', 'bloque', '2018-12-03', ''), +(9827, 145, 0, 72, '2019-01-29', 'pm1', 'bloque', '2018-12-03', ''), +(9828, 145, 0, 72, '2019-01-29', 'pm2', 'bloque', '2018-12-03', ''), +(9829, 145, 0, 72, '2019-01-30', 'am1', 'bloque', '2018-12-03', ''), +(9830, 145, 0, 72, '2019-01-30', 'am2', 'bloque', '2018-12-03', ''), +(9831, 145, 0, 72, '2019-01-30', 'pm1', 'bloque', '2018-12-03', ''), +(9832, 145, 0, 72, '2019-01-30', 'pm2', 'bloque', '2018-12-03', ''), +(9833, 145, 0, 72, '2019-01-31', 'am1', 'bloque', '2018-12-03', ''), +(9834, 145, 0, 72, '2019-01-31', 'am2', 'bloque', '2018-12-03', ''), +(9835, 145, 0, 72, '2019-01-31', 'pm1', 'bloque', '2018-12-03', ''), +(9836, 145, 0, 72, '2019-01-31', 'pm2', 'bloque', '2018-12-03', ''), +(9837, 145, 0, 72, '2019-02-01', 'am1', 'bloque', '2018-12-03', ''), +(9838, 145, 0, 72, '2019-02-01', 'am2', 'bloque', '2018-12-03', ''), +(9839, 145, 0, 72, '2019-02-01', 'pm1', 'bloque', '2018-12-03', ''), +(9840, 145, 0, 72, '2019-02-01', 'pm2', 'bloque', '2018-12-03', ''), +(9841, 145, 0, 72, '2019-02-04', 'am1', 'bloque', '2018-12-03', ''), +(9842, 145, 0, 72, '2019-02-04', 'am2', 'bloque', '2018-12-03', ''), +(9843, 145, 0, 72, '2019-02-04', 'pm1', 'bloque', '2018-12-03', ''), +(9844, 145, 0, 72, '2019-02-04', 'pm2', 'bloque', '2018-12-03', ''), +(9845, 145, 0, 72, '2019-02-05', 'am1', 'bloque', '2018-12-03', ''), +(9846, 145, 0, 72, '2019-02-05', 'am2', 'bloque', '2018-12-03', ''), +(9847, 145, 0, 72, '2019-02-05', 'pm1', 'bloque', '2018-12-03', ''), +(9848, 145, 0, 72, '2019-02-05', 'pm2', 'bloque', '2018-12-03', ''), +(9849, 145, 0, 72, '2019-02-06', 'am1', 'bloque', '2018-12-03', ''), +(9850, 145, 0, 72, '2019-02-06', 'am2', 'bloque', '2018-12-03', ''), +(9851, 145, 0, 72, '2019-02-06', 'pm1', 'bloque', '2018-12-03', ''), +(9852, 145, 0, 72, '2019-02-06', 'pm2', 'bloque', '2018-12-03', ''), +(9853, 145, 0, 72, '2019-02-07', 'am1', 'bloque', '2018-12-03', ''), +(9854, 145, 0, 72, '2019-02-07', 'am2', 'bloque', '2018-12-03', ''), +(9855, 145, 0, 72, '2019-02-07', 'pm1', 'bloque', '2018-12-03', ''), +(9856, 145, 0, 72, '2019-02-07', 'pm2', 'bloque', '2018-12-03', ''), +(9857, 145, 0, 72, '2019-02-08', 'am1', 'bloque', '2018-12-03', ''), +(9858, 145, 0, 72, '2019-02-08', 'am2', 'bloque', '2018-12-03', ''), +(9859, 145, 0, 72, '2019-02-08', 'pm1', 'bloque', '2018-12-03', ''), +(9860, 145, 0, 72, '2019-02-08', 'pm2', 'bloque', '2018-12-03', ''), +(9861, 146, 0, 166, '2019-01-17', 'am1', 'libre', '2018-12-03', ''), +(9862, 146, 0, 166, '2019-01-17', 'am2', 'libre', '2018-12-03', ''), +(9863, 146, 0, 166, '2019-01-17', 'pm1', 'libre', '2018-12-03', ''), +(9864, 146, 0, 166, '2019-01-17', 'pm2', 'libre', '2018-12-03', ''), +(9865, 146, 0, 166, '2019-01-18', 'am1', 'bloque', '2018-12-03', ''), +(9866, 146, 0, 166, '2019-01-18', 'am2', 'bloque', '2018-12-03', ''), +(9867, 146, 0, 166, '2019-01-18', 'pm1', 'bloque', '2018-12-03', ''), +(9868, 146, 0, 166, '2019-01-18', 'pm2', 'bloque', '2018-12-03', ''), +(9869, 146, 0, 166, '2019-01-21', 'am1', 'bloque', '2018-12-03', ''), +(9870, 146, 0, 166, '2019-01-21', 'am2', 'bloque', '2018-12-03', ''), +(9871, 146, 0, 166, '2019-01-21', 'pm1', 'bloque', '2018-12-03', ''), +(9872, 146, 0, 166, '2019-01-21', 'pm2', 'bloque', '2018-12-03', ''), +(9873, 146, 0, 166, '2019-01-22', 'am1', 'bloque', '2018-12-03', ''), +(9874, 146, 0, 166, '2019-01-22', 'am2', 'bloque', '2018-12-03', ''), +(9875, 146, 0, 166, '2019-01-22', 'pm1', 'bloque', '2018-12-03', ''), +(9876, 146, 0, 166, '2019-01-22', 'pm2', 'bloque', '2018-12-03', ''), +(9877, 146, 0, 166, '2019-01-23', 'am1', 'bloque', '2018-12-03', ''), +(9878, 146, 0, 166, '2019-01-23', 'am2', 'bloque', '2018-12-03', ''), +(9879, 146, 0, 166, '2019-01-23', 'pm1', 'bloque', '2018-12-03', ''), +(9880, 146, 0, 166, '2019-01-23', 'pm2', 'bloque', '2018-12-03', ''), +(9881, 146, 0, 166, '2019-01-24', 'am1', 'bloque', '2018-12-03', ''), +(9882, 146, 0, 166, '2019-01-24', 'am2', 'bloque', '2018-12-03', ''), +(9883, 146, 0, 166, '2019-01-24', 'pm1', 'bloque', '2018-12-03', ''), +(9884, 146, 0, 166, '2019-01-24', 'pm2', 'bloque', '2018-12-03', ''), +(9885, 146, 0, 166, '2019-01-25', 'am1', 'bloque', '2018-12-03', ''), +(9886, 146, 0, 166, '2019-01-25', 'am2', 'bloque', '2018-12-03', ''), +(9887, 146, 0, 166, '2019-01-25', 'pm1', 'bloque', '2018-12-03', ''), +(9888, 146, 0, 166, '2019-01-25', 'pm2', 'bloque', '2018-12-03', ''), +(9889, 146, 0, 166, '2019-01-28', 'am1', 'bloque', '2018-12-03', ''), +(9890, 146, 0, 166, '2019-01-28', 'am2', 'bloque', '2018-12-03', ''), +(9891, 146, 0, 166, '2019-01-28', 'pm1', 'bloque', '2018-12-03', ''), +(9892, 146, 0, 166, '2019-01-28', 'pm2', 'bloque', '2018-12-03', ''), +(9893, 146, 0, 166, '2019-01-29', 'am1', 'bloque', '2018-12-03', ''), +(9894, 146, 0, 166, '2019-01-29', 'am2', 'bloque', '2018-12-03', ''), +(9895, 146, 0, 166, '2019-01-29', 'pm1', 'bloque', '2018-12-03', ''), +(9896, 146, 0, 166, '2019-01-29', 'pm2', 'bloque', '2018-12-03', ''), +(9897, 146, 0, 166, '2019-01-30', 'am1', 'bloque', '2018-12-03', ''), +(9898, 146, 0, 166, '2019-01-30', 'am2', 'bloque', '2018-12-03', ''), +(9899, 146, 0, 166, '2019-01-30', 'pm1', 'bloque', '2018-12-03', ''), +(9900, 146, 0, 166, '2019-01-30', 'pm2', 'bloque', '2018-12-03', ''), +(9901, 146, 0, 166, '2019-01-31', 'am1', 'bloque', '2018-12-03', ''), +(9902, 146, 0, 166, '2019-01-31', 'am2', 'bloque', '2018-12-03', ''), +(9903, 146, 0, 166, '2019-01-31', 'pm1', 'bloque', '2018-12-03', ''), +(9904, 146, 0, 166, '2019-01-31', 'pm2', 'bloque', '2018-12-03', ''), +(9905, 146, 0, 166, '2019-02-01', 'am1', 'bloque', '2018-12-03', ''), +(9906, 146, 0, 166, '2019-02-01', 'am2', 'bloque', '2018-12-03', ''), +(9907, 146, 0, 166, '2019-02-01', 'pm1', 'bloque', '2018-12-03', ''), +(9908, 146, 0, 166, '2019-02-01', 'pm2', 'bloque', '2018-12-03', ''), +(9909, 146, 0, 166, '2019-02-04', 'am1', 'bloque', '2018-12-03', ''), +(9910, 146, 0, 166, '2019-02-04', 'am2', 'bloque', '2018-12-03', ''), +(9911, 146, 0, 166, '2019-02-04', 'pm1', 'bloque', '2018-12-03', ''), +(9912, 146, 0, 166, '2019-02-04', 'pm2', 'bloque', '2018-12-03', ''), +(9913, 146, 0, 166, '2019-02-05', 'am1', 'bloque', '2018-12-03', ''), +(9914, 146, 0, 166, '2019-02-05', 'am2', 'bloque', '2018-12-03', ''), +(9915, 146, 0, 166, '2019-02-05', 'pm1', 'bloque', '2018-12-03', ''), +(9916, 146, 0, 166, '2019-02-05', 'pm2', 'bloque', '2018-12-03', ''), +(9917, 146, 0, 166, '2019-02-06', 'am1', 'bloque', '2018-12-03', ''), +(9918, 146, 0, 166, '2019-02-06', 'am2', 'bloque', '2018-12-03', ''), +(9919, 146, 0, 166, '2019-02-06', 'pm1', 'bloque', '2018-12-03', ''), +(9920, 146, 0, 166, '2019-02-06', 'pm2', 'bloque', '2018-12-03', ''), +(9921, 146, 0, 166, '2019-02-07', 'am1', 'bloque', '2018-12-03', ''), +(9922, 146, 0, 166, '2019-02-07', 'am2', 'bloque', '2018-12-03', ''), +(9923, 146, 0, 166, '2019-02-07', 'pm1', 'bloque', '2018-12-03', ''), +(9924, 146, 0, 166, '2019-02-07', 'pm2', 'bloque', '2018-12-03', ''), +(9925, 146, 0, 166, '2019-02-08', 'am1', 'bloque', '2018-12-03', ''), +(9926, 146, 0, 166, '2019-02-08', 'am2', 'bloque', '2018-12-03', ''), +(9927, 146, 0, 166, '2019-02-08', 'pm1', 'bloque', '2018-12-03', ''), +(9928, 146, 0, 166, '2019-02-08', 'pm2', 'bloque', '2018-12-03', ''), +(9929, 147, 205, 81, '2019-01-17', 'am1', 'reserve', '2019-01-07', 'ref'), +(9930, 147, 0, 81, '2019-01-17', 'am2', 'libre', '2018-12-04', ''), +(9931, 147, 0, 81, '2019-01-17', 'pm1', 'libre', '2018-12-04', ''), +(9932, 147, 0, 81, '2019-01-17', 'pm2', 'libre', '2018-12-04', ''), +(9933, 147, 0, 81, '2019-01-18', 'am1', 'bloque', '2018-12-04', ''), +(9934, 147, 0, 81, '2019-01-18', 'am2', 'bloque', '2018-12-04', ''), +(9935, 147, 0, 81, '2019-01-18', 'pm1', 'bloque', '2018-12-04', ''), +(9936, 147, 0, 81, '2019-01-18', 'pm2', 'bloque', '2018-12-04', ''), +(9937, 147, 0, 81, '2019-01-21', 'am1', 'bloque', '2018-12-04', ''), +(9938, 147, 0, 81, '2019-01-21', 'am2', 'bloque', '2018-12-04', ''), +(9939, 147, 0, 81, '2019-01-21', 'pm1', 'bloque', '2018-12-04', ''), +(9940, 147, 0, 81, '2019-01-21', 'pm2', 'bloque', '2018-12-04', ''), +(9941, 147, 0, 81, '2019-01-22', 'am1', 'bloque', '2018-12-04', ''), +(9942, 147, 0, 81, '2019-01-22', 'am2', 'bloque', '2018-12-04', ''), +(9943, 147, 0, 81, '2019-01-22', 'pm1', 'bloque', '2018-12-04', ''), +(9944, 147, 0, 81, '2019-01-22', 'pm2', 'bloque', '2018-12-04', ''), +(9945, 147, 0, 81, '2019-01-23', 'am1', 'bloque', '2018-12-04', ''), +(9946, 147, 0, 81, '2019-01-23', 'am2', 'bloque', '2018-12-04', ''), +(9947, 147, 0, 81, '2019-01-23', 'pm1', 'bloque', '2018-12-04', ''), +(9948, 147, 0, 81, '2019-01-23', 'pm2', 'bloque', '2018-12-04', ''), +(9949, 147, 0, 81, '2019-01-24', 'am1', 'bloque', '2018-12-04', ''), +(9950, 147, 0, 81, '2019-01-24', 'am2', 'bloque', '2018-12-04', ''), +(9951, 147, 0, 81, '2019-01-24', 'pm1', 'bloque', '2018-12-04', ''), +(9952, 147, 0, 81, '2019-01-24', 'pm2', 'bloque', '2018-12-04', ''), +(9953, 147, 0, 81, '2019-01-25', 'am1', 'bloque', '2018-12-04', ''), +(9954, 147, 0, 81, '2019-01-25', 'am2', 'bloque', '2018-12-04', ''), +(9955, 147, 0, 81, '2019-01-25', 'pm1', 'bloque', '2018-12-04', ''), +(9956, 147, 0, 81, '2019-01-25', 'pm2', 'bloque', '2018-12-04', ''), +(9957, 147, 0, 81, '2019-01-28', 'am1', 'bloque', '2018-12-04', ''), +(9958, 147, 0, 81, '2019-01-28', 'am2', 'bloque', '2018-12-04', ''), +(9959, 147, 0, 81, '2019-01-28', 'pm1', 'bloque', '2018-12-04', ''), +(9960, 147, 0, 81, '2019-01-28', 'pm2', 'bloque', '2018-12-04', ''), +(9961, 147, 0, 81, '2019-01-29', 'am1', 'bloque', '2018-12-04', ''), +(9962, 147, 0, 81, '2019-01-29', 'am2', 'bloque', '2018-12-04', ''), +(9963, 147, 0, 81, '2019-01-29', 'pm1', 'bloque', '2018-12-04', ''), +(9964, 147, 0, 81, '2019-01-29', 'pm2', 'bloque', '2018-12-04', ''), +(9965, 147, 0, 81, '2019-01-30', 'am1', 'bloque', '2018-12-04', ''), +(9966, 147, 0, 81, '2019-01-30', 'am2', 'bloque', '2018-12-04', ''), +(9967, 147, 0, 81, '2019-01-30', 'pm1', 'bloque', '2018-12-04', ''), +(9968, 147, 0, 81, '2019-01-30', 'pm2', 'bloque', '2018-12-04', ''), +(9969, 147, 0, 81, '2019-01-31', 'am1', 'bloque', '2018-12-04', ''), +(9970, 147, 0, 81, '2019-01-31', 'am2', 'bloque', '2018-12-04', ''), +(9971, 147, 0, 81, '2019-01-31', 'pm1', 'bloque', '2018-12-04', ''), +(9972, 147, 0, 81, '2019-01-31', 'pm2', 'bloque', '2018-12-04', ''), +(9973, 147, 0, 81, '2019-02-01', 'am1', 'bloque', '2018-12-04', ''), +(9974, 147, 0, 81, '2019-02-01', 'am2', 'bloque', '2018-12-04', ''), +(9975, 147, 0, 81, '2019-02-01', 'pm1', 'bloque', '2018-12-04', ''), +(9976, 147, 0, 81, '2019-02-01', 'pm2', 'bloque', '2018-12-04', ''), +(9977, 147, 0, 81, '2019-02-04', 'am1', 'bloque', '2018-12-04', ''), +(9978, 147, 0, 81, '2019-02-04', 'am2', 'bloque', '2018-12-04', ''), +(9979, 147, 0, 81, '2019-02-04', 'pm1', 'bloque', '2018-12-04', ''), +(9980, 147, 0, 81, '2019-02-04', 'pm2', 'bloque', '2018-12-04', ''), +(9981, 147, 0, 81, '2019-02-05', 'am1', 'bloque', '2018-12-04', ''), +(9982, 147, 0, 81, '2019-02-05', 'am2', 'bloque', '2018-12-04', ''), +(9983, 147, 0, 81, '2019-02-05', 'pm1', 'bloque', '2018-12-04', ''), +(9984, 147, 0, 81, '2019-02-05', 'pm2', 'bloque', '2018-12-04', ''), +(9985, 147, 0, 81, '2019-02-06', 'am1', 'bloque', '2018-12-04', ''), +(9986, 147, 0, 81, '2019-02-06', 'am2', 'bloque', '2018-12-04', ''), +(9987, 147, 0, 81, '2019-02-06', 'pm1', 'bloque', '2018-12-04', ''), +(9988, 147, 0, 81, '2019-02-06', 'pm2', 'bloque', '2018-12-04', ''), +(9989, 147, 0, 81, '2019-02-07', 'am1', 'bloque', '2018-12-04', ''), +(9990, 147, 0, 81, '2019-02-07', 'am2', 'bloque', '2018-12-04', ''), +(9991, 147, 0, 81, '2019-02-07', 'pm1', 'bloque', '2018-12-04', ''), +(9992, 147, 0, 81, '2019-02-07', 'pm2', 'bloque', '2018-12-04', ''), +(9993, 147, 0, 81, '2019-02-08', 'am1', 'bloque', '2018-12-04', ''), +(9994, 147, 0, 81, '2019-02-08', 'am2', 'bloque', '2018-12-04', ''), +(9995, 147, 0, 81, '2019-02-08', 'pm1', 'bloque', '2018-12-04', ''), +(9996, 147, 0, 81, '2019-02-08', 'pm2', 'bloque', '2018-12-04', ''), +(9997, 148, 206, 81, '2019-01-17', 'am1', 'reserve', '2019-01-07', 'ref'), +(9998, 148, 0, 81, '2019-01-17', 'am2', 'libre', '2018-12-04', ''), +(9999, 148, 0, 81, '2019-01-17', 'pm1', 'libre', '2018-12-04', ''), +(10000, 148, 0, 81, '2019-01-17', 'pm2', 'libre', '2018-12-04', ''), +(10001, 148, 0, 81, '2019-01-18', 'am1', 'bloque', '2018-12-04', ''), +(10002, 148, 0, 81, '2019-01-18', 'am2', 'bloque', '2018-12-04', ''), +(10003, 148, 0, 81, '2019-01-18', 'pm1', 'bloque', '2018-12-04', ''), +(10004, 148, 0, 81, '2019-01-18', 'pm2', 'bloque', '2018-12-04', ''), +(10005, 148, 0, 81, '2019-01-21', 'am1', 'bloque', '2018-12-04', ''), +(10006, 148, 0, 81, '2019-01-21', 'am2', 'bloque', '2018-12-04', ''), +(10007, 148, 0, 81, '2019-01-21', 'pm1', 'bloque', '2018-12-04', ''), +(10008, 148, 0, 81, '2019-01-21', 'pm2', 'bloque', '2018-12-04', ''), +(10009, 148, 0, 81, '2019-01-22', 'am1', 'bloque', '2018-12-04', ''), +(10010, 148, 0, 81, '2019-01-22', 'am2', 'bloque', '2018-12-04', ''), +(10011, 148, 0, 81, '2019-01-22', 'pm1', 'bloque', '2018-12-04', ''), +(10012, 148, 0, 81, '2019-01-22', 'pm2', 'bloque', '2018-12-04', ''), +(10013, 148, 0, 81, '2019-01-23', 'am1', 'bloque', '2018-12-04', ''), +(10014, 148, 0, 81, '2019-01-23', 'am2', 'bloque', '2018-12-04', ''), +(10015, 148, 0, 81, '2019-01-23', 'pm1', 'bloque', '2018-12-04', ''), +(10016, 148, 0, 81, '2019-01-23', 'pm2', 'bloque', '2018-12-04', ''), +(10017, 148, 0, 81, '2019-01-24', 'am1', 'bloque', '2018-12-04', ''), +(10018, 148, 0, 81, '2019-01-24', 'am2', 'bloque', '2018-12-04', ''), +(10019, 148, 0, 81, '2019-01-24', 'pm1', 'bloque', '2018-12-04', ''), +(10020, 148, 0, 81, '2019-01-24', 'pm2', 'bloque', '2018-12-04', ''), +(10021, 148, 0, 81, '2019-01-25', 'am1', 'bloque', '2018-12-04', ''), +(10022, 148, 0, 81, '2019-01-25', 'am2', 'bloque', '2018-12-04', ''), +(10023, 148, 0, 81, '2019-01-25', 'pm1', 'bloque', '2018-12-04', ''), +(10024, 148, 0, 81, '2019-01-25', 'pm2', 'bloque', '2018-12-04', ''), +(10025, 148, 0, 81, '2019-01-28', 'am1', 'bloque', '2018-12-04', ''), +(10026, 148, 0, 81, '2019-01-28', 'am2', 'bloque', '2018-12-04', ''), +(10027, 148, 0, 81, '2019-01-28', 'pm1', 'bloque', '2018-12-04', ''), +(10028, 148, 0, 81, '2019-01-28', 'pm2', 'bloque', '2018-12-04', ''), +(10029, 148, 0, 81, '2019-01-29', 'am1', 'bloque', '2018-12-04', ''), +(10030, 148, 0, 81, '2019-01-29', 'am2', 'bloque', '2018-12-04', ''), +(10031, 148, 0, 81, '2019-01-29', 'pm1', 'bloque', '2018-12-04', ''), +(10032, 148, 0, 81, '2019-01-29', 'pm2', 'bloque', '2018-12-04', ''), +(10033, 148, 0, 81, '2019-01-30', 'am1', 'bloque', '2018-12-04', ''), +(10034, 148, 0, 81, '2019-01-30', 'am2', 'bloque', '2018-12-04', ''), +(10035, 148, 0, 81, '2019-01-30', 'pm1', 'bloque', '2018-12-04', ''), +(10036, 148, 0, 81, '2019-01-30', 'pm2', 'bloque', '2018-12-04', ''), +(10037, 148, 0, 81, '2019-01-31', 'am1', 'bloque', '2018-12-04', ''), +(10038, 148, 0, 81, '2019-01-31', 'am2', 'bloque', '2018-12-04', ''), +(10039, 148, 0, 81, '2019-01-31', 'pm1', 'bloque', '2018-12-04', ''), +(10040, 148, 0, 81, '2019-01-31', 'pm2', 'bloque', '2018-12-04', ''), +(10041, 148, 0, 81, '2019-02-01', 'am1', 'bloque', '2018-12-04', ''), +(10042, 148, 0, 81, '2019-02-01', 'am2', 'bloque', '2018-12-04', ''), +(10043, 148, 0, 81, '2019-02-01', 'pm1', 'bloque', '2018-12-04', ''), +(10044, 148, 0, 81, '2019-02-01', 'pm2', 'bloque', '2018-12-04', ''), +(10045, 148, 0, 81, '2019-02-04', 'am1', 'bloque', '2018-12-04', ''), +(10046, 148, 0, 81, '2019-02-04', 'am2', 'bloque', '2018-12-04', ''), +(10047, 148, 0, 81, '2019-02-04', 'pm1', 'bloque', '2018-12-04', ''), +(10048, 148, 0, 81, '2019-02-04', 'pm2', 'bloque', '2018-12-04', ''), +(10049, 148, 0, 81, '2019-02-05', 'am1', 'bloque', '2018-12-04', ''), +(10050, 148, 0, 81, '2019-02-05', 'am2', 'bloque', '2018-12-04', ''), +(10051, 148, 0, 81, '2019-02-05', 'pm1', 'bloque', '2018-12-04', ''), +(10052, 148, 0, 81, '2019-02-05', 'pm2', 'bloque', '2018-12-04', ''), +(10053, 148, 0, 81, '2019-02-06', 'am1', 'bloque', '2018-12-04', ''), +(10054, 148, 0, 81, '2019-02-06', 'am2', 'bloque', '2018-12-04', ''), +(10055, 148, 0, 81, '2019-02-06', 'pm1', 'bloque', '2018-12-04', ''), +(10056, 148, 0, 81, '2019-02-06', 'pm2', 'bloque', '2018-12-04', ''), +(10057, 148, 0, 81, '2019-02-07', 'am1', 'bloque', '2018-12-04', ''), +(10058, 148, 0, 81, '2019-02-07', 'am2', 'bloque', '2018-12-04', ''), +(10059, 148, 0, 81, '2019-02-07', 'pm1', 'bloque', '2018-12-04', ''), +(10060, 148, 0, 81, '2019-02-07', 'pm2', 'bloque', '2018-12-04', ''), +(10061, 148, 0, 81, '2019-02-08', 'am1', 'bloque', '2018-12-04', ''), +(10062, 148, 0, 81, '2019-02-08', 'am2', 'bloque', '2018-12-04', ''), +(10063, 148, 0, 81, '2019-02-08', 'pm1', 'bloque', '2018-12-04', ''), +(10064, 148, 0, 81, '2019-02-08', 'pm2', 'bloque', '2018-12-04', ''), +(10065, 149, 157, 89, '2019-01-17', 'am1', 'reserve', '2018-12-20', 'cap'), +(10066, 149, 0, 89, '2019-01-17', 'am2', 'libre', '2018-12-04', ''), +(10067, 149, 0, 89, '2019-01-17', 'pm1', 'libre', '2018-12-04', ''), +(10068, 149, 0, 89, '2019-01-17', 'pm2', 'libre', '2018-12-04', ''), +(10069, 149, 0, 89, '2019-01-18', 'am1', 'libre', '2018-12-20', 'cap'), +(10070, 149, 0, 89, '2019-01-18', 'am2', 'bloque', '2018-12-04', ''), +(10071, 149, 0, 89, '2019-01-18', 'pm1', 'bloque', '2018-12-04', ''), +(10072, 149, 0, 89, '2019-01-18', 'pm2', 'bloque', '2018-12-04', ''), +(10073, 149, 0, 89, '2019-01-21', 'am1', 'bloque', '2018-12-04', ''), +(10074, 149, 0, 89, '2019-01-21', 'am2', 'bloque', '2018-12-04', ''), +(10075, 149, 0, 89, '2019-01-21', 'pm1', 'bloque', '2018-12-04', ''), +(10076, 149, 0, 89, '2019-01-21', 'pm2', 'bloque', '2018-12-04', ''), +(10077, 149, 0, 89, '2019-01-22', 'am1', 'bloque', '2018-12-04', ''), +(10078, 149, 0, 89, '2019-01-22', 'am2', 'bloque', '2018-12-04', ''), +(10079, 149, 0, 89, '2019-01-22', 'pm1', 'bloque', '2018-12-04', ''), +(10080, 149, 0, 89, '2019-01-22', 'pm2', 'bloque', '2018-12-04', ''), +(10081, 149, 0, 89, '2019-01-23', 'am1', 'bloque', '2018-12-04', ''), +(10082, 149, 0, 89, '2019-01-23', 'am2', 'bloque', '2018-12-04', ''), +(10083, 149, 0, 89, '2019-01-23', 'pm1', 'bloque', '2018-12-04', ''), +(10084, 149, 0, 89, '2019-01-23', 'pm2', 'bloque', '2018-12-04', ''), +(10085, 149, 0, 89, '2019-01-24', 'am1', 'bloque', '2018-12-04', ''), +(10086, 149, 0, 89, '2019-01-24', 'am2', 'bloque', '2018-12-04', ''), +(10087, 149, 0, 89, '2019-01-24', 'pm1', 'bloque', '2018-12-04', ''), +(10088, 149, 0, 89, '2019-01-24', 'pm2', 'bloque', '2018-12-04', ''), +(10089, 149, 0, 89, '2019-01-25', 'am1', 'bloque', '2018-12-04', ''), +(10090, 149, 0, 89, '2019-01-25', 'am2', 'bloque', '2018-12-04', ''), +(10091, 149, 0, 89, '2019-01-25', 'pm1', 'bloque', '2018-12-04', ''), +(10092, 149, 0, 89, '2019-01-25', 'pm2', 'bloque', '2018-12-04', ''), +(10093, 149, 0, 89, '2019-01-28', 'am1', 'bloque', '2018-12-04', ''), +(10094, 149, 0, 89, '2019-01-28', 'am2', 'bloque', '2018-12-04', ''), +(10095, 149, 0, 89, '2019-01-28', 'pm1', 'bloque', '2018-12-04', ''), +(10096, 149, 0, 89, '2019-01-28', 'pm2', 'bloque', '2018-12-04', ''), +(10097, 149, 0, 89, '2019-01-29', 'am1', 'bloque', '2018-12-04', ''), +(10098, 149, 0, 89, '2019-01-29', 'am2', 'bloque', '2018-12-04', ''), +(10099, 149, 0, 89, '2019-01-29', 'pm1', 'bloque', '2018-12-04', ''), +(10100, 149, 0, 89, '2019-01-29', 'pm2', 'bloque', '2018-12-04', ''), +(10101, 149, 0, 89, '2019-01-30', 'am1', 'bloque', '2018-12-04', ''), +(10102, 149, 0, 89, '2019-01-30', 'am2', 'bloque', '2018-12-04', ''), +(10103, 149, 0, 89, '2019-01-30', 'pm1', 'bloque', '2018-12-04', ''), +(10104, 149, 0, 89, '2019-01-30', 'pm2', 'bloque', '2018-12-04', ''), +(10105, 149, 0, 89, '2019-01-31', 'am1', 'bloque', '2018-12-04', ''), +(10106, 149, 0, 89, '2019-01-31', 'am2', 'bloque', '2018-12-04', ''), +(10107, 149, 0, 89, '2019-01-31', 'pm1', 'bloque', '2018-12-04', ''), +(10108, 149, 0, 89, '2019-01-31', 'pm2', 'bloque', '2018-12-04', ''), +(10109, 149, 0, 89, '2019-02-01', 'am1', 'bloque', '2018-12-04', ''), +(10110, 149, 0, 89, '2019-02-01', 'am2', 'bloque', '2018-12-04', ''), +(10111, 149, 0, 89, '2019-02-01', 'pm1', 'bloque', '2018-12-04', ''), +(10112, 149, 0, 89, '2019-02-01', 'pm2', 'bloque', '2018-12-04', ''), +(10113, 149, 0, 89, '2019-02-04', 'am1', 'bloque', '2018-12-04', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(10114, 149, 0, 89, '2019-02-04', 'am2', 'bloque', '2018-12-04', ''), +(10115, 149, 0, 89, '2019-02-04', 'pm1', 'bloque', '2018-12-04', ''), +(10116, 149, 0, 89, '2019-02-04', 'pm2', 'bloque', '2018-12-04', ''), +(10117, 149, 0, 89, '2019-02-05', 'am1', 'bloque', '2018-12-04', ''), +(10118, 149, 0, 89, '2019-02-05', 'am2', 'bloque', '2018-12-04', ''), +(10119, 149, 0, 89, '2019-02-05', 'pm1', 'bloque', '2018-12-04', ''), +(10120, 149, 0, 89, '2019-02-05', 'pm2', 'bloque', '2018-12-04', ''), +(10121, 149, 0, 89, '2019-02-06', 'am1', 'bloque', '2018-12-04', ''), +(10122, 149, 0, 89, '2019-02-06', 'am2', 'bloque', '2018-12-04', ''), +(10123, 149, 0, 89, '2019-02-06', 'pm1', 'bloque', '2018-12-04', ''), +(10124, 149, 0, 89, '2019-02-06', 'pm2', 'bloque', '2018-12-04', ''), +(10125, 149, 0, 89, '2019-02-07', 'am1', 'bloque', '2018-12-04', ''), +(10126, 149, 0, 89, '2019-02-07', 'am2', 'bloque', '2018-12-04', ''), +(10127, 149, 0, 89, '2019-02-07', 'pm1', 'bloque', '2018-12-04', ''), +(10128, 149, 0, 89, '2019-02-07', 'pm2', 'bloque', '2018-12-04', ''), +(10129, 149, 0, 89, '2019-02-08', 'am1', 'bloque', '2018-12-04', ''), +(10130, 149, 0, 89, '2019-02-08', 'am2', 'bloque', '2018-12-04', ''), +(10131, 149, 0, 89, '2019-02-08', 'pm1', 'bloque', '2018-12-04', ''), +(10132, 149, 0, 89, '2019-02-08', 'pm2', 'bloque', '2018-12-04', ''), +(10133, 150, 0, 55, '2019-01-17', 'am1', 'libre', '2018-12-04', ''), +(10134, 150, 81, 55, '2019-01-17', 'am2', 'reserve', '2018-12-14', 'cap'), +(10135, 150, 0, 55, '2019-01-17', 'pm1', 'libre', '2018-12-04', ''), +(10136, 150, 0, 55, '2019-01-17', 'pm2', 'libre', '2018-12-04', ''), +(10137, 150, 0, 55, '2019-01-18', 'am1', 'bloque', '2018-12-04', ''), +(10138, 150, 0, 55, '2019-01-18', 'am2', 'bloque', '2018-12-04', ''), +(10139, 150, 0, 55, '2019-01-18', 'pm1', 'bloque', '2018-12-04', ''), +(10140, 150, 0, 55, '2019-01-18', 'pm2', 'bloque', '2018-12-04', ''), +(10141, 150, 0, 55, '2019-01-21', 'am1', 'bloque', '2018-12-04', ''), +(10142, 150, 0, 55, '2019-01-21', 'am2', 'bloque', '2018-12-04', ''), +(10143, 150, 0, 55, '2019-01-21', 'pm1', 'bloque', '2018-12-04', ''), +(10144, 150, 0, 55, '2019-01-21', 'pm2', 'bloque', '2018-12-04', ''), +(10145, 150, 0, 55, '2019-01-22', 'am1', 'bloque', '2018-12-04', ''), +(10146, 150, 0, 55, '2019-01-22', 'am2', 'bloque', '2018-12-04', ''), +(10147, 150, 0, 55, '2019-01-22', 'pm1', 'bloque', '2018-12-04', ''), +(10148, 150, 0, 55, '2019-01-22', 'pm2', 'bloque', '2018-12-04', ''), +(10149, 150, 0, 55, '2019-01-23', 'am1', 'bloque', '2018-12-04', ''), +(10150, 150, 0, 55, '2019-01-23', 'am2', 'bloque', '2018-12-04', ''), +(10151, 150, 0, 55, '2019-01-23', 'pm1', 'bloque', '2018-12-04', ''), +(10152, 150, 0, 55, '2019-01-23', 'pm2', 'bloque', '2018-12-04', ''), +(10153, 150, 0, 55, '2019-01-24', 'am1', 'bloque', '2018-12-04', ''), +(10154, 150, 0, 55, '2019-01-24', 'am2', 'bloque', '2018-12-04', ''), +(10155, 150, 0, 55, '2019-01-24', 'pm1', 'bloque', '2018-12-04', ''), +(10156, 150, 0, 55, '2019-01-24', 'pm2', 'bloque', '2018-12-04', ''), +(10157, 150, 0, 55, '2019-01-25', 'am1', 'bloque', '2018-12-04', ''), +(10158, 150, 0, 55, '2019-01-25', 'am2', 'bloque', '2018-12-04', ''), +(10159, 150, 0, 55, '2019-01-25', 'pm1', 'bloque', '2018-12-04', ''), +(10160, 150, 0, 55, '2019-01-25', 'pm2', 'bloque', '2018-12-04', ''), +(10161, 150, 0, 55, '2019-01-28', 'am1', 'bloque', '2018-12-04', ''), +(10162, 150, 0, 55, '2019-01-28', 'am2', 'bloque', '2018-12-04', ''), +(10163, 150, 0, 55, '2019-01-28', 'pm1', 'bloque', '2018-12-04', ''), +(10164, 150, 0, 55, '2019-01-28', 'pm2', 'bloque', '2018-12-04', ''), +(10165, 150, 0, 55, '2019-01-29', 'am1', 'bloque', '2018-12-04', ''), +(10166, 150, 0, 55, '2019-01-29', 'am2', 'bloque', '2018-12-04', ''), +(10167, 150, 0, 55, '2019-01-29', 'pm1', 'bloque', '2018-12-04', ''), +(10168, 150, 0, 55, '2019-01-29', 'pm2', 'bloque', '2018-12-04', ''), +(10169, 150, 0, 55, '2019-01-30', 'am1', 'bloque', '2018-12-04', ''), +(10170, 150, 0, 55, '2019-01-30', 'am2', 'bloque', '2018-12-04', ''), +(10171, 150, 0, 55, '2019-01-30', 'pm1', 'bloque', '2018-12-04', ''), +(10172, 150, 0, 55, '2019-01-30', 'pm2', 'bloque', '2018-12-04', ''), +(10173, 150, 0, 55, '2019-01-31', 'am1', 'bloque', '2018-12-04', ''), +(10174, 150, 0, 55, '2019-01-31', 'am2', 'bloque', '2018-12-04', ''), +(10175, 150, 0, 55, '2019-01-31', 'pm1', 'bloque', '2018-12-04', ''), +(10176, 150, 0, 55, '2019-01-31', 'pm2', 'bloque', '2018-12-04', ''), +(10177, 150, 0, 55, '2019-02-01', 'am1', 'bloque', '2018-12-04', ''), +(10178, 150, 0, 55, '2019-02-01', 'am2', 'bloque', '2018-12-04', ''), +(10179, 150, 0, 55, '2019-02-01', 'pm1', 'bloque', '2018-12-04', ''), +(10180, 150, 0, 55, '2019-02-01', 'pm2', 'bloque', '2018-12-04', ''), +(10181, 150, 0, 55, '2019-02-04', 'am1', 'bloque', '2018-12-04', ''), +(10182, 150, 0, 55, '2019-02-04', 'am2', 'bloque', '2018-12-04', ''), +(10183, 150, 0, 55, '2019-02-04', 'pm1', 'bloque', '2018-12-04', ''), +(10184, 150, 0, 55, '2019-02-04', 'pm2', 'bloque', '2018-12-04', ''), +(10185, 150, 0, 55, '2019-02-05', 'am1', 'bloque', '2018-12-04', ''), +(10186, 150, 0, 55, '2019-02-05', 'am2', 'bloque', '2018-12-04', ''), +(10187, 150, 0, 55, '2019-02-05', 'pm1', 'bloque', '2018-12-04', ''), +(10188, 150, 0, 55, '2019-02-05', 'pm2', 'bloque', '2018-12-04', ''), +(10189, 150, 0, 55, '2019-02-06', 'am1', 'bloque', '2018-12-04', ''), +(10190, 150, 0, 55, '2019-02-06', 'am2', 'bloque', '2018-12-04', ''), +(10191, 150, 0, 55, '2019-02-06', 'pm1', 'bloque', '2018-12-04', ''), +(10192, 150, 0, 55, '2019-02-06', 'pm2', 'bloque', '2018-12-04', ''), +(10193, 150, 0, 55, '2019-02-07', 'am1', 'bloque', '2018-12-04', ''), +(10194, 150, 0, 55, '2019-02-07', 'am2', 'bloque', '2018-12-04', ''), +(10195, 150, 0, 55, '2019-02-07', 'pm1', 'bloque', '2018-12-04', ''), +(10196, 150, 0, 55, '2019-02-07', 'pm2', 'bloque', '2018-12-04', ''), +(10197, 150, 0, 55, '2019-02-08', 'am1', 'bloque', '2018-12-04', ''), +(10198, 150, 0, 55, '2019-02-08', 'am2', 'bloque', '2018-12-04', ''), +(10199, 150, 0, 55, '2019-02-08', 'pm1', 'bloque', '2018-12-04', ''), +(10200, 150, 0, 55, '2019-02-08', 'pm2', 'bloque', '2018-12-04', ''), +(10201, 151, 0, 89, '2019-01-17', 'am1', 'libre', '2018-12-04', ''), +(10202, 151, 0, 89, '2019-01-17', 'am2', 'libre', '2018-12-04', ''), +(10203, 151, 0, 89, '2019-01-17', 'pm1', 'libre', '2018-12-04', ''), +(10204, 151, 0, 89, '2019-01-17', 'pm2', 'libre', '2018-12-04', ''), +(10205, 151, 0, 89, '2019-01-18', 'am1', 'bloque', '2018-12-04', ''), +(10206, 151, 0, 89, '2019-01-18', 'am2', 'bloque', '2018-12-04', ''), +(10207, 151, 0, 89, '2019-01-18', 'pm1', 'bloque', '2018-12-04', ''), +(10208, 151, 0, 89, '2019-01-18', 'pm2', 'bloque', '2018-12-04', ''), +(10209, 151, 0, 89, '2019-01-21', 'am1', 'bloque', '2018-12-04', ''), +(10210, 151, 0, 89, '2019-01-21', 'am2', 'bloque', '2018-12-04', ''), +(10211, 151, 0, 89, '2019-01-21', 'pm1', 'bloque', '2018-12-04', ''), +(10212, 151, 0, 89, '2019-01-21', 'pm2', 'bloque', '2018-12-04', ''), +(10213, 151, 0, 89, '2019-01-22', 'am1', 'bloque', '2018-12-04', ''), +(10214, 151, 0, 89, '2019-01-22', 'am2', 'bloque', '2018-12-04', ''), +(10215, 151, 0, 89, '2019-01-22', 'pm1', 'bloque', '2018-12-04', ''), +(10216, 151, 0, 89, '2019-01-22', 'pm2', 'bloque', '2018-12-04', ''), +(10217, 151, 0, 89, '2019-01-23', 'am1', 'bloque', '2018-12-04', ''), +(10218, 151, 0, 89, '2019-01-23', 'am2', 'bloque', '2018-12-04', ''), +(10219, 151, 0, 89, '2019-01-23', 'pm1', 'bloque', '2018-12-04', ''), +(10220, 151, 0, 89, '2019-01-23', 'pm2', 'bloque', '2018-12-04', ''), +(10221, 151, 0, 89, '2019-01-24', 'am1', 'bloque', '2018-12-04', ''), +(10222, 151, 0, 89, '2019-01-24', 'am2', 'bloque', '2018-12-04', ''), +(10223, 151, 0, 89, '2019-01-24', 'pm1', 'bloque', '2018-12-04', ''), +(10224, 151, 0, 89, '2019-01-24', 'pm2', 'bloque', '2018-12-04', ''), +(10225, 151, 0, 89, '2019-01-25', 'am1', 'bloque', '2018-12-04', ''), +(10226, 151, 0, 89, '2019-01-25', 'am2', 'bloque', '2018-12-04', ''), +(10227, 151, 0, 89, '2019-01-25', 'pm1', 'bloque', '2018-12-04', ''), +(10228, 151, 0, 89, '2019-01-25', 'pm2', 'bloque', '2018-12-04', ''), +(10229, 151, 0, 89, '2019-01-28', 'am1', 'bloque', '2018-12-04', ''), +(10230, 151, 0, 89, '2019-01-28', 'am2', 'bloque', '2018-12-04', ''), +(10231, 151, 0, 89, '2019-01-28', 'pm1', 'bloque', '2018-12-04', ''), +(10232, 151, 0, 89, '2019-01-28', 'pm2', 'bloque', '2018-12-04', ''), +(10233, 151, 0, 89, '2019-01-29', 'am1', 'bloque', '2018-12-04', ''), +(10234, 151, 0, 89, '2019-01-29', 'am2', 'bloque', '2018-12-04', ''), +(10235, 151, 0, 89, '2019-01-29', 'pm1', 'bloque', '2018-12-04', ''), +(10236, 151, 0, 89, '2019-01-29', 'pm2', 'bloque', '2018-12-04', ''), +(10237, 151, 0, 89, '2019-01-30', 'am1', 'bloque', '2018-12-04', ''), +(10238, 151, 0, 89, '2019-01-30', 'am2', 'bloque', '2018-12-04', ''), +(10239, 151, 0, 89, '2019-01-30', 'pm1', 'bloque', '2018-12-04', ''), +(10240, 151, 0, 89, '2019-01-30', 'pm2', 'bloque', '2018-12-04', ''), +(10241, 151, 0, 89, '2019-01-31', 'am1', 'bloque', '2018-12-04', ''), +(10242, 151, 0, 89, '2019-01-31', 'am2', 'bloque', '2018-12-04', ''), +(10243, 151, 0, 89, '2019-01-31', 'pm1', 'bloque', '2018-12-04', ''), +(10244, 151, 0, 89, '2019-01-31', 'pm2', 'bloque', '2018-12-04', ''), +(10245, 151, 0, 89, '2019-02-01', 'am1', 'bloque', '2018-12-04', ''), +(10246, 151, 0, 89, '2019-02-01', 'am2', 'bloque', '2018-12-04', ''), +(10247, 151, 0, 89, '2019-02-01', 'pm1', 'bloque', '2018-12-04', ''), +(10248, 151, 0, 89, '2019-02-01', 'pm2', 'bloque', '2018-12-04', ''), +(10249, 151, 0, 89, '2019-02-04', 'am1', 'bloque', '2018-12-04', ''), +(10250, 151, 0, 89, '2019-02-04', 'am2', 'bloque', '2018-12-04', ''), +(10251, 151, 0, 89, '2019-02-04', 'pm1', 'bloque', '2018-12-04', ''), +(10252, 151, 0, 89, '2019-02-04', 'pm2', 'bloque', '2018-12-04', ''), +(10253, 151, 0, 89, '2019-02-05', 'am1', 'bloque', '2018-12-04', ''), +(10254, 151, 0, 89, '2019-02-05', 'am2', 'bloque', '2018-12-04', ''), +(10255, 151, 0, 89, '2019-02-05', 'pm1', 'bloque', '2018-12-04', ''), +(10256, 151, 0, 89, '2019-02-05', 'pm2', 'bloque', '2018-12-04', ''), +(10257, 151, 0, 89, '2019-02-06', 'am1', 'bloque', '2018-12-04', ''), +(10258, 151, 0, 89, '2019-02-06', 'am2', 'bloque', '2018-12-04', ''), +(10259, 151, 0, 89, '2019-02-06', 'pm1', 'bloque', '2018-12-04', ''), +(10260, 151, 0, 89, '2019-02-06', 'pm2', 'bloque', '2018-12-04', ''), +(10261, 151, 0, 89, '2019-02-07', 'am1', 'bloque', '2018-12-04', ''), +(10262, 151, 0, 89, '2019-02-07', 'am2', 'bloque', '2018-12-04', ''), +(10263, 151, 0, 89, '2019-02-07', 'pm1', 'bloque', '2018-12-04', ''), +(10264, 151, 0, 89, '2019-02-07', 'pm2', 'bloque', '2018-12-04', ''), +(10265, 151, 0, 89, '2019-02-08', 'am1', 'bloque', '2018-12-04', ''), +(10266, 151, 0, 89, '2019-02-08', 'am2', 'bloque', '2018-12-04', ''), +(10267, 151, 0, 89, '2019-02-08', 'pm1', 'bloque', '2018-12-04', ''), +(10268, 151, 0, 89, '2019-02-08', 'pm2', 'bloque', '2018-12-04', ''), +(10269, 152, 124, 6, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'cap'), +(10270, 152, 0, 6, '2019-01-17', 'am2', 'libre', '2018-12-04', ''), +(10271, 152, 125, 6, '2019-01-17', 'pm1', 'reserve', '2018-12-18', 'cap'), +(10272, 152, 126, 6, '2019-01-17', 'pm2', 'reserve', '2018-12-18', 'cap'), +(10273, 152, 0, 6, '2019-01-18', 'am1', 'bloque', '2018-12-04', ''), +(10274, 152, 0, 6, '2019-01-18', 'am2', 'bloque', '2018-12-04', ''), +(10275, 152, 0, 6, '2019-01-18', 'pm1', 'bloque', '2018-12-04', ''), +(10276, 152, 0, 6, '2019-01-18', 'pm2', 'bloque', '2018-12-04', ''), +(10277, 152, 0, 6, '2019-01-21', 'am1', 'bloque', '2018-12-04', ''), +(10278, 152, 0, 6, '2019-01-21', 'am2', 'bloque', '2018-12-04', ''), +(10279, 152, 0, 6, '2019-01-21', 'pm1', 'bloque', '2018-12-04', ''), +(10280, 152, 0, 6, '2019-01-21', 'pm2', 'bloque', '2018-12-04', ''), +(10281, 152, 0, 6, '2019-01-22', 'am1', 'bloque', '2018-12-04', ''), +(10282, 152, 0, 6, '2019-01-22', 'am2', 'bloque', '2018-12-04', ''), +(10283, 152, 0, 6, '2019-01-22', 'pm1', 'bloque', '2018-12-04', ''), +(10284, 152, 0, 6, '2019-01-22', 'pm2', 'bloque', '2018-12-04', ''), +(10285, 152, 0, 6, '2019-01-23', 'am1', 'bloque', '2018-12-04', ''), +(10286, 152, 0, 6, '2019-01-23', 'am2', 'bloque', '2018-12-04', ''), +(10287, 152, 0, 6, '2019-01-23', 'pm1', 'bloque', '2018-12-04', ''), +(10288, 152, 0, 6, '2019-01-23', 'pm2', 'bloque', '2018-12-04', ''), +(10289, 152, 0, 6, '2019-01-24', 'am1', 'bloque', '2018-12-04', ''), +(10290, 152, 0, 6, '2019-01-24', 'am2', 'bloque', '2018-12-04', ''), +(10291, 152, 0, 6, '2019-01-24', 'pm1', 'bloque', '2018-12-04', ''), +(10292, 152, 0, 6, '2019-01-24', 'pm2', 'bloque', '2018-12-04', ''), +(10293, 152, 0, 6, '2019-01-25', 'am1', 'bloque', '2018-12-04', ''), +(10294, 152, 0, 6, '2019-01-25', 'am2', 'bloque', '2018-12-04', ''), +(10295, 152, 0, 6, '2019-01-25', 'pm1', 'bloque', '2018-12-04', ''), +(10296, 152, 0, 6, '2019-01-25', 'pm2', 'bloque', '2018-12-04', ''), +(10297, 152, 0, 6, '2019-01-28', 'am1', 'bloque', '2018-12-04', ''), +(10298, 152, 0, 6, '2019-01-28', 'am2', 'bloque', '2018-12-04', ''), +(10299, 152, 0, 6, '2019-01-28', 'pm1', 'bloque', '2018-12-04', ''), +(10300, 152, 0, 6, '2019-01-28', 'pm2', 'bloque', '2018-12-04', ''), +(10301, 152, 0, 6, '2019-01-29', 'am1', 'bloque', '2018-12-04', ''), +(10302, 152, 0, 6, '2019-01-29', 'am2', 'bloque', '2018-12-04', ''), +(10303, 152, 0, 6, '2019-01-29', 'pm1', 'bloque', '2018-12-04', ''), +(10304, 152, 0, 6, '2019-01-29', 'pm2', 'bloque', '2018-12-04', ''), +(10305, 152, 0, 6, '2019-01-30', 'am1', 'bloque', '2018-12-04', ''), +(10306, 152, 0, 6, '2019-01-30', 'am2', 'bloque', '2018-12-04', ''), +(10307, 152, 0, 6, '2019-01-30', 'pm1', 'bloque', '2018-12-04', ''), +(10308, 152, 0, 6, '2019-01-30', 'pm2', 'bloque', '2018-12-04', ''), +(10309, 152, 0, 6, '2019-01-31', 'am1', 'bloque', '2018-12-04', ''), +(10310, 152, 0, 6, '2019-01-31', 'am2', 'bloque', '2018-12-04', ''), +(10311, 152, 0, 6, '2019-01-31', 'pm1', 'bloque', '2018-12-04', ''), +(10312, 152, 0, 6, '2019-01-31', 'pm2', 'bloque', '2018-12-04', ''), +(10313, 152, 0, 6, '2019-02-01', 'am1', 'bloque', '2018-12-04', ''), +(10314, 152, 0, 6, '2019-02-01', 'am2', 'bloque', '2018-12-04', ''), +(10315, 152, 0, 6, '2019-02-01', 'pm1', 'bloque', '2018-12-04', ''), +(10316, 152, 0, 6, '2019-02-01', 'pm2', 'bloque', '2018-12-04', ''), +(10317, 152, 0, 6, '2019-02-04', 'am1', 'bloque', '2018-12-04', ''), +(10318, 152, 0, 6, '2019-02-04', 'am2', 'bloque', '2018-12-04', ''), +(10319, 152, 0, 6, '2019-02-04', 'pm1', 'bloque', '2018-12-04', ''), +(10320, 152, 0, 6, '2019-02-04', 'pm2', 'bloque', '2018-12-04', ''), +(10321, 152, 0, 6, '2019-02-05', 'am1', 'bloque', '2018-12-04', ''), +(10322, 152, 0, 6, '2019-02-05', 'am2', 'bloque', '2018-12-04', ''), +(10323, 152, 0, 6, '2019-02-05', 'pm1', 'bloque', '2018-12-04', ''), +(10324, 152, 0, 6, '2019-02-05', 'pm2', 'bloque', '2018-12-04', ''), +(10325, 152, 0, 6, '2019-02-06', 'am1', 'bloque', '2018-12-04', ''), +(10326, 152, 0, 6, '2019-02-06', 'am2', 'bloque', '2018-12-04', ''), +(10327, 152, 0, 6, '2019-02-06', 'pm1', 'bloque', '2018-12-04', ''), +(10328, 152, 0, 6, '2019-02-06', 'pm2', 'bloque', '2018-12-04', ''), +(10329, 152, 0, 6, '2019-02-07', 'am1', 'bloque', '2018-12-04', ''), +(10330, 152, 0, 6, '2019-02-07', 'am2', 'bloque', '2018-12-04', ''), +(10331, 152, 0, 6, '2019-02-07', 'pm1', 'bloque', '2018-12-04', ''), +(10332, 152, 0, 6, '2019-02-07', 'pm2', 'bloque', '2018-12-04', ''), +(10333, 152, 0, 6, '2019-02-08', 'am1', 'bloque', '2018-12-04', ''), +(10334, 152, 0, 6, '2019-02-08', 'am2', 'bloque', '2018-12-04', ''), +(10335, 152, 0, 6, '2019-02-08', 'pm1', 'bloque', '2018-12-04', ''), +(10336, 152, 0, 6, '2019-02-08', 'pm2', 'bloque', '2018-12-04', ''), +(10337, 153, 0, 49, '2019-01-17', 'am1', 'libre', '2018-12-05', ''), +(10338, 153, 0, 49, '2019-01-17', 'am2', 'libre', '2018-12-05', ''), +(10339, 153, 0, 49, '2019-01-17', 'pm1', 'libre', '2018-12-05', ''), +(10340, 153, 0, 49, '2019-01-17', 'pm2', 'libre', '2018-12-05', ''), +(10341, 153, 0, 49, '2019-01-18', 'am1', 'libre', '2018-12-05', 'ref'), +(10342, 153, 0, 49, '2019-01-18', 'am2', 'libre', '2018-12-05', 'ref'), +(10343, 153, 0, 49, '2019-01-18', 'pm1', 'libre', '2018-12-05', 'ref'), +(10344, 153, 0, 49, '2019-01-18', 'pm2', 'libre', '2018-12-12', 'ref'), +(10345, 153, 0, 49, '2019-01-21', 'am1', 'libre', '2018-12-05', 'ref'), +(10346, 153, 0, 49, '2019-01-21', 'am2', 'libre', '2018-12-05', 'ref'), +(10347, 153, 0, 49, '2019-01-21', 'pm1', 'libre', '2018-12-05', 'ref'), +(10348, 153, 0, 49, '2019-01-21', 'pm2', 'libre', '2018-12-05', 'ref'), +(10349, 153, 0, 49, '2019-01-22', 'am1', 'libre', '2018-12-05', 'ref'), +(10350, 153, 0, 49, '2019-01-22', 'am2', 'libre', '2018-12-05', 'ref'), +(10351, 153, 0, 49, '2019-01-22', 'pm1', 'libre', '2018-12-05', 'ref'), +(10352, 153, 0, 49, '2019-01-22', 'pm2', 'bloque', '2018-12-05', ''), +(10353, 153, 0, 49, '2019-01-23', 'am1', 'bloque', '2018-12-05', ''), +(10354, 153, 0, 49, '2019-01-23', 'am2', 'bloque', '2018-12-05', ''), +(10355, 153, 0, 49, '2019-01-23', 'pm1', 'bloque', '2018-12-05', ''), +(10356, 153, 0, 49, '2019-01-23', 'pm2', 'bloque', '2018-12-05', ''), +(10357, 153, 0, 49, '2019-01-24', 'am1', 'bloque', '2018-12-05', ''), +(10358, 153, 0, 49, '2019-01-24', 'am2', 'bloque', '2018-12-05', ''), +(10359, 153, 0, 49, '2019-01-24', 'pm1', 'bloque', '2018-12-05', ''), +(10360, 153, 0, 49, '2019-01-24', 'pm2', 'bloque', '2018-12-05', ''), +(10361, 153, 0, 49, '2019-01-25', 'am1', 'bloque', '2018-12-05', ''), +(10362, 153, 0, 49, '2019-01-25', 'am2', 'bloque', '2018-12-05', ''), +(10363, 153, 0, 49, '2019-01-25', 'pm1', 'bloque', '2018-12-05', ''), +(10364, 153, 0, 49, '2019-01-25', 'pm2', 'bloque', '2018-12-05', ''), +(10365, 153, 0, 49, '2019-01-28', 'am1', 'bloque', '2018-12-05', ''), +(10366, 153, 0, 49, '2019-01-28', 'am2', 'bloque', '2018-12-05', ''), +(10367, 153, 0, 49, '2019-01-28', 'pm1', 'libre', '2018-12-05', 'ref'), +(10368, 153, 0, 49, '2019-01-28', 'pm2', 'libre', '2018-12-05', 'ref'), +(10369, 153, 0, 49, '2019-01-29', 'am1', 'bloque', '2018-12-05', ''), +(10370, 153, 0, 49, '2019-01-29', 'am2', 'bloque', '2018-12-05', ''), +(10371, 153, 0, 49, '2019-01-29', 'pm1', 'bloque', '2018-12-05', ''), +(10372, 153, 0, 49, '2019-01-29', 'pm2', 'bloque', '2018-12-05', ''), +(10373, 153, 0, 49, '2019-01-30', 'am1', 'bloque', '2018-12-05', ''), +(10374, 153, 0, 49, '2019-01-30', 'am2', 'bloque', '2018-12-05', ''), +(10375, 153, 0, 49, '2019-01-30', 'pm1', 'bloque', '2018-12-05', ''), +(10376, 153, 0, 49, '2019-01-30', 'pm2', 'bloque', '2018-12-05', ''), +(10377, 153, 0, 49, '2019-01-31', 'am1', 'bloque', '2018-12-05', ''), +(10378, 153, 0, 49, '2019-01-31', 'am2', 'bloque', '2018-12-05', ''), +(10379, 153, 0, 49, '2019-01-31', 'pm1', 'bloque', '2018-12-05', ''), +(10380, 153, 0, 49, '2019-01-31', 'pm2', 'bloque', '2018-12-05', ''), +(10381, 153, 0, 49, '2019-02-01', 'am1', 'bloque', '2018-12-05', ''), +(10382, 153, 0, 49, '2019-02-01', 'am2', 'bloque', '2018-12-05', ''), +(10383, 153, 0, 49, '2019-02-01', 'pm1', 'bloque', '2018-12-05', ''), +(10384, 153, 0, 49, '2019-02-01', 'pm2', 'bloque', '2018-12-05', ''), +(10385, 153, 0, 49, '2019-02-04', 'am1', 'bloque', '2018-12-05', ''), +(10386, 153, 0, 49, '2019-02-04', 'am2', 'libre', '2018-12-05', 'ref'), +(10387, 153, 0, 49, '2019-02-04', 'pm1', 'libre', '2018-12-05', 'ref'), +(10388, 153, 0, 49, '2019-02-04', 'pm2', 'libre', '2018-12-05', 'ref'), +(10389, 153, 0, 49, '2019-02-05', 'am1', 'libre', '2018-12-05', 'ref'), +(10390, 153, 0, 49, '2019-02-05', 'am2', 'libre', '2018-12-05', 'ref'), +(10391, 153, 0, 49, '2019-02-05', 'pm1', 'bloque', '2018-12-05', ''), +(10392, 153, 0, 49, '2019-02-05', 'pm2', 'bloque', '2018-12-05', ''), +(10393, 153, 0, 49, '2019-02-06', 'am1', 'bloque', '2018-12-05', ''), +(10394, 153, 0, 49, '2019-02-06', 'am2', 'bloque', '2018-12-05', ''), +(10395, 153, 0, 49, '2019-02-06', 'pm1', 'bloque', '2018-12-05', ''), +(10396, 153, 0, 49, '2019-02-06', 'pm2', 'bloque', '2018-12-05', ''), +(10397, 153, 0, 49, '2019-02-07', 'am1', 'bloque', '2018-12-05', ''), +(10398, 153, 0, 49, '2019-02-07', 'am2', 'bloque', '2018-12-05', ''), +(10399, 153, 0, 49, '2019-02-07', 'pm1', 'bloque', '2018-12-05', ''), +(10400, 153, 0, 49, '2019-02-07', 'pm2', 'bloque', '2018-12-05', ''), +(10401, 153, 0, 49, '2019-02-08', 'am1', 'bloque', '2018-12-05', ''), +(10402, 153, 0, 49, '2019-02-08', 'am2', 'bloque', '2018-12-05', ''), +(10403, 153, 0, 49, '2019-02-08', 'pm1', 'bloque', '2018-12-05', ''), +(10404, 153, 0, 49, '2019-02-08', 'pm2', 'bloque', '2018-12-05', ''), +(10405, 154, 0, 101, '2019-01-17', 'am1', 'bloque', '2018-12-05', 'ref'), +(10406, 154, 0, 101, '2019-01-17', 'am2', 'bloque', '2018-12-05', 'ref'), +(10407, 154, 0, 101, '2019-01-17', 'pm1', 'bloque', '2018-12-05', 'ref'), +(10408, 154, 0, 101, '2019-01-17', 'pm2', 'bloque', '2018-12-05', 'ref'), +(10409, 154, 0, 101, '2019-01-18', 'am1', 'libre', '2019-01-09', 'ref'), +(10410, 154, 0, 101, '2019-01-18', 'am2', 'libre', '2019-01-09', 'ref'), +(10411, 154, 0, 101, '2019-01-18', 'pm1', 'libre', '2019-01-09', 'ref'), +(10412, 154, 0, 101, '2019-01-18', 'pm2', 'libre', '2019-01-09', 'ref'), +(10413, 154, 0, 101, '2019-01-21', 'am1', 'libre', '2019-01-09', 'ref'), +(10414, 154, 0, 101, '2019-01-21', 'am2', 'libre', '2019-01-09', 'ref'), +(10415, 154, 0, 101, '2019-01-21', 'pm1', 'libre', '2018-12-05', 'ref'), +(10416, 154, 0, 101, '2019-01-21', 'pm2', 'libre', '2018-12-05', 'ref'), +(10417, 154, 0, 101, '2019-01-22', 'am1', 'libre', '2019-01-09', 'ref'), +(10418, 154, 0, 101, '2019-01-22', 'am2', 'libre', '2019-01-09', 'ref'), +(10419, 154, 0, 101, '2019-01-22', 'pm1', 'libre', '2019-01-09', 'ref'), +(10420, 154, 0, 101, '2019-01-22', 'pm2', 'libre', '2019-01-09', 'ref'), +(10421, 154, 0, 101, '2019-01-23', 'am1', 'libre', '2019-01-09', 'ref'), +(10422, 154, 0, 101, '2019-01-23', 'am2', 'libre', '2019-01-09', 'ref'), +(10423, 154, 0, 101, '2019-01-23', 'pm1', 'libre', '2019-01-09', 'ref'), +(10424, 154, 0, 101, '2019-01-23', 'pm2', 'libre', '2019-01-09', 'ref'), +(10425, 154, 0, 101, '2019-01-24', 'am1', 'libre', '2019-01-09', 'ref'), +(10426, 154, 0, 101, '2019-01-24', 'am2', 'libre', '2019-01-09', 'ref'), +(10427, 154, 0, 101, '2019-01-24', 'pm1', 'libre', '2019-01-09', 'ref'), +(10428, 154, 0, 101, '2019-01-24', 'pm2', 'libre', '2019-01-09', 'ref'), +(10429, 154, 0, 101, '2019-01-25', 'am1', 'libre', '2019-01-09', 'ref'), +(10430, 154, 0, 101, '2019-01-25', 'am2', 'libre', '2019-01-09', 'ref'), +(10431, 154, 0, 101, '2019-01-25', 'pm1', 'libre', '2019-01-09', 'ref'), +(10432, 154, 0, 101, '2019-01-25', 'pm2', 'libre', '2019-01-09', 'ref'), +(10433, 154, 0, 101, '2019-01-28', 'am1', 'libre', '2019-01-09', 'ref'), +(10434, 154, 0, 101, '2019-01-28', 'am2', 'libre', '2019-01-09', 'ref'), +(10435, 154, 0, 101, '2019-01-28', 'pm1', 'libre', '2019-01-09', 'ref'), +(10436, 154, 0, 101, '2019-01-28', 'pm2', 'libre', '2019-01-09', 'ref'), +(10437, 154, 0, 101, '2019-01-29', 'am1', 'libre', '2019-01-09', 'ref'), +(10438, 154, 0, 101, '2019-01-29', 'am2', 'libre', '2019-01-09', 'ref'), +(10439, 154, 0, 101, '2019-01-29', 'pm1', 'libre', '2019-01-09', 'ref'), +(10440, 154, 0, 101, '2019-01-29', 'pm2', 'libre', '2019-01-09', 'ref'), +(10441, 154, 0, 101, '2019-01-30', 'am1', 'libre', '2019-01-09', 'ref'), +(10442, 154, 0, 101, '2019-01-30', 'am2', 'libre', '2019-01-09', 'ref'), +(10443, 154, 0, 101, '2019-01-30', 'pm1', 'libre', '2019-01-09', 'ref'), +(10444, 154, 0, 101, '2019-01-30', 'pm2', 'libre', '2019-01-09', 'ref'), +(10445, 154, 0, 101, '2019-01-31', 'am1', 'libre', '2019-01-09', 'ref'), +(10446, 154, 0, 101, '2019-01-31', 'am2', 'libre', '2019-01-09', 'ref'), +(10447, 154, 0, 101, '2019-01-31', 'pm1', 'libre', '2019-01-09', 'ref'), +(10448, 154, 0, 101, '2019-01-31', 'pm2', 'libre', '2019-01-09', 'ref'), +(10449, 154, 0, 101, '2019-02-01', 'am1', 'libre', '2019-01-09', 'ref'), +(10450, 154, 0, 101, '2019-02-01', 'am2', 'libre', '2019-01-09', 'ref'), +(10451, 154, 0, 101, '2019-02-01', 'pm1', 'libre', '2019-01-09', 'ref'), +(10452, 154, 0, 101, '2019-02-01', 'pm2', 'bloque', '2018-12-05', ''), +(10453, 154, 319, 101, '2019-02-04', 'am1', 'reserve', '2019-01-24', 'ref'), +(10454, 154, 0, 101, '2019-02-04', 'am2', 'libre', '2019-01-09', 'ref'), +(10455, 154, 0, 101, '2019-02-04', 'pm1', 'libre', '2019-01-09', 'ref'), +(10456, 154, 0, 101, '2019-02-04', 'pm2', 'libre', '2019-01-09', 'ref'), +(10457, 154, 0, 101, '2019-02-05', 'am1', 'libre', '2019-01-09', 'ref'), +(10458, 154, 0, 101, '2019-02-05', 'am2', 'libre', '2019-01-09', 'ref'), +(10459, 154, 0, 101, '2019-02-05', 'pm1', 'libre', '2019-01-09', 'ref'), +(10460, 154, 0, 101, '2019-02-05', 'pm2', 'libre', '2019-01-09', 'ref'), +(10461, 154, 0, 101, '2019-02-06', 'am1', 'libre', '2019-01-09', 'ref'), +(10462, 154, 0, 101, '2019-02-06', 'am2', 'libre', '2019-01-09', 'ref'), +(10463, 154, 0, 101, '2019-02-06', 'pm1', 'libre', '2019-01-09', 'ref'), +(10464, 154, 0, 101, '2019-02-06', 'pm2', 'libre', '2019-01-09', 'ref'), +(10465, 154, 0, 101, '2019-02-07', 'am1', 'libre', '2019-01-09', 'ref'), +(10466, 154, 0, 101, '2019-02-07', 'am2', 'libre', '2019-01-09', 'ref'), +(10467, 154, 0, 101, '2019-02-07', 'pm1', 'libre', '2019-01-09', 'ref'), +(10468, 154, 0, 101, '2019-02-07', 'pm2', 'libre', '2019-01-09', 'ref'), +(10469, 154, 0, 101, '2019-02-08', 'am1', 'bloque', '2018-12-05', ''), +(10470, 154, 0, 101, '2019-02-08', 'am2', 'bloque', '2018-12-05', ''), +(10471, 154, 0, 101, '2019-02-08', 'pm1', 'libre', '2019-01-09', 'ref'), +(10472, 154, 0, 101, '2019-02-08', 'pm2', 'libre', '2019-01-09', 'ref'), +(10473, 155, 0, 142, '2019-01-17', 'am1', 'libre', '2018-12-05', ''), +(10474, 155, 0, 142, '2019-01-17', 'am2', 'libre', '2018-12-05', ''), +(10475, 155, 0, 142, '2019-01-17', 'pm1', 'libre', '2018-12-05', ''), +(10476, 155, 0, 142, '2019-01-17', 'pm2', 'libre', '2018-12-05', ''), +(10477, 155, 0, 142, '2019-01-18', 'am1', 'bloque', '2018-12-05', ''), +(10478, 155, 0, 142, '2019-01-18', 'am2', 'bloque', '2018-12-05', ''), +(10479, 155, 0, 142, '2019-01-18', 'pm1', 'bloque', '2018-12-05', ''), +(10480, 155, 0, 142, '2019-01-18', 'pm2', 'bloque', '2018-12-05', ''), +(10481, 155, 0, 142, '2019-01-21', 'am1', 'bloque', '2018-12-05', ''), +(10482, 155, 0, 142, '2019-01-21', 'am2', 'bloque', '2018-12-05', ''), +(10483, 155, 0, 142, '2019-01-21', 'pm1', 'bloque', '2018-12-05', ''), +(10484, 155, 0, 142, '2019-01-21', 'pm2', 'bloque', '2018-12-05', ''), +(10485, 155, 0, 142, '2019-01-22', 'am1', 'bloque', '2018-12-05', ''), +(10486, 155, 0, 142, '2019-01-22', 'am2', 'bloque', '2018-12-05', ''), +(10487, 155, 0, 142, '2019-01-22', 'pm1', 'bloque', '2018-12-05', ''), +(10488, 155, 0, 142, '2019-01-22', 'pm2', 'bloque', '2018-12-05', ''), +(10489, 155, 0, 142, '2019-01-23', 'am1', 'bloque', '2018-12-05', ''), +(10490, 155, 0, 142, '2019-01-23', 'am2', 'bloque', '2018-12-05', ''), +(10491, 155, 0, 142, '2019-01-23', 'pm1', 'bloque', '2018-12-05', ''), +(10492, 155, 0, 142, '2019-01-23', 'pm2', 'bloque', '2018-12-05', ''), +(10493, 155, 0, 142, '2019-01-24', 'am1', 'bloque', '2018-12-05', ''), +(10494, 155, 0, 142, '2019-01-24', 'am2', 'bloque', '2018-12-05', ''), +(10495, 155, 0, 142, '2019-01-24', 'pm1', 'bloque', '2018-12-05', ''), +(10496, 155, 0, 142, '2019-01-24', 'pm2', 'bloque', '2018-12-05', ''), +(10497, 155, 0, 142, '2019-01-25', 'am1', 'bloque', '2018-12-05', ''), +(10498, 155, 0, 142, '2019-01-25', 'am2', 'bloque', '2018-12-05', ''), +(10499, 155, 0, 142, '2019-01-25', 'pm1', 'bloque', '2018-12-05', ''), +(10500, 155, 0, 142, '2019-01-25', 'pm2', 'bloque', '2018-12-05', ''), +(10501, 155, 0, 142, '2019-01-28', 'am1', 'bloque', '2018-12-05', ''), +(10502, 155, 0, 142, '2019-01-28', 'am2', 'bloque', '2018-12-05', ''), +(10503, 155, 0, 142, '2019-01-28', 'pm1', 'bloque', '2018-12-05', ''), +(10504, 155, 0, 142, '2019-01-28', 'pm2', 'bloque', '2018-12-05', ''), +(10505, 155, 0, 142, '2019-01-29', 'am1', 'bloque', '2018-12-05', ''), +(10506, 155, 0, 142, '2019-01-29', 'am2', 'bloque', '2018-12-05', ''), +(10507, 155, 0, 142, '2019-01-29', 'pm1', 'bloque', '2018-12-05', ''), +(10508, 155, 0, 142, '2019-01-29', 'pm2', 'bloque', '2018-12-05', ''), +(10509, 155, 0, 142, '2019-01-30', 'am1', 'bloque', '2018-12-05', ''), +(10510, 155, 0, 142, '2019-01-30', 'am2', 'bloque', '2018-12-05', ''), +(10511, 155, 0, 142, '2019-01-30', 'pm1', 'bloque', '2018-12-05', ''), +(10512, 155, 0, 142, '2019-01-30', 'pm2', 'bloque', '2018-12-05', ''), +(10513, 155, 0, 142, '2019-01-31', 'am1', 'bloque', '2018-12-05', ''), +(10514, 155, 0, 142, '2019-01-31', 'am2', 'bloque', '2018-12-05', ''), +(10515, 155, 0, 142, '2019-01-31', 'pm1', 'bloque', '2018-12-05', ''), +(10516, 155, 0, 142, '2019-01-31', 'pm2', 'bloque', '2018-12-05', ''), +(10517, 155, 0, 142, '2019-02-01', 'am1', 'bloque', '2018-12-05', ''), +(10518, 155, 0, 142, '2019-02-01', 'am2', 'bloque', '2018-12-05', ''), +(10519, 155, 0, 142, '2019-02-01', 'pm1', 'bloque', '2018-12-05', ''), +(10520, 155, 0, 142, '2019-02-01', 'pm2', 'bloque', '2018-12-05', ''), +(10521, 155, 0, 142, '2019-02-04', 'am1', 'bloque', '2018-12-05', ''), +(10522, 155, 0, 142, '2019-02-04', 'am2', 'bloque', '2018-12-05', ''), +(10523, 155, 0, 142, '2019-02-04', 'pm1', 'bloque', '2018-12-05', ''), +(10524, 155, 0, 142, '2019-02-04', 'pm2', 'bloque', '2018-12-05', ''), +(10525, 155, 0, 142, '2019-02-05', 'am1', 'bloque', '2018-12-05', ''), +(10526, 155, 0, 142, '2019-02-05', 'am2', 'bloque', '2018-12-05', ''), +(10527, 155, 0, 142, '2019-02-05', 'pm1', 'bloque', '2018-12-05', ''), +(10528, 155, 0, 142, '2019-02-05', 'pm2', 'bloque', '2018-12-05', ''), +(10529, 155, 0, 142, '2019-02-06', 'am1', 'bloque', '2018-12-05', ''), +(10530, 155, 0, 142, '2019-02-06', 'am2', 'bloque', '2018-12-05', ''), +(10531, 155, 0, 142, '2019-02-06', 'pm1', 'bloque', '2018-12-05', ''), +(10532, 155, 0, 142, '2019-02-06', 'pm2', 'bloque', '2018-12-05', ''), +(10533, 155, 0, 142, '2019-02-07', 'am1', 'bloque', '2018-12-05', ''), +(10534, 155, 0, 142, '2019-02-07', 'am2', 'bloque', '2018-12-05', ''), +(10535, 155, 0, 142, '2019-02-07', 'pm1', 'bloque', '2018-12-05', ''), +(10536, 155, 0, 142, '2019-02-07', 'pm2', 'bloque', '2018-12-05', ''), +(10537, 155, 0, 142, '2019-02-08', 'am1', 'bloque', '2018-12-05', ''), +(10538, 155, 0, 142, '2019-02-08', 'am2', 'bloque', '2018-12-05', ''), +(10539, 155, 0, 142, '2019-02-08', 'pm1', 'bloque', '2018-12-05', ''), +(10540, 155, 0, 142, '2019-02-08', 'pm2', 'bloque', '2018-12-05', ''), +(10541, 156, 37, 29, '2019-01-17', 'am1', 'reserve', '2018-12-10', 'cap'), +(10542, 156, 38, 29, '2019-01-17', 'am2', 'reserve', '2018-12-10', 'cap'), +(10543, 156, 39, 29, '2019-01-17', 'pm1', 'reserve', '2018-12-10', 'cap'), +(10544, 156, 40, 29, '2019-01-17', 'pm2', 'reserve', '2018-12-10', 'cap'), +(10545, 156, 0, 29, '2019-01-18', 'am1', 'bloque', '2018-12-05', ''), +(10546, 156, 0, 29, '2019-01-18', 'am2', 'bloque', '2018-12-05', ''), +(10547, 156, 0, 29, '2019-01-18', 'pm1', 'bloque', '2018-12-05', ''), +(10548, 156, 0, 29, '2019-01-18', 'pm2', 'bloque', '2018-12-05', ''), +(10549, 156, 0, 29, '2019-01-21', 'am1', 'bloque', '2018-12-05', ''), +(10550, 156, 0, 29, '2019-01-21', 'am2', 'bloque', '2018-12-05', ''), +(10551, 156, 0, 29, '2019-01-21', 'pm1', 'bloque', '2018-12-05', ''), +(10552, 156, 0, 29, '2019-01-21', 'pm2', 'bloque', '2018-12-05', ''), +(10553, 156, 0, 29, '2019-01-22', 'am1', 'bloque', '2018-12-05', ''), +(10554, 156, 0, 29, '2019-01-22', 'am2', 'bloque', '2018-12-05', ''), +(10555, 156, 0, 29, '2019-01-22', 'pm1', 'bloque', '2018-12-05', ''), +(10556, 156, 0, 29, '2019-01-22', 'pm2', 'bloque', '2018-12-05', ''), +(10557, 156, 0, 29, '2019-01-23', 'am1', 'bloque', '2018-12-05', ''), +(10558, 156, 0, 29, '2019-01-23', 'am2', 'bloque', '2018-12-05', ''), +(10559, 156, 0, 29, '2019-01-23', 'pm1', 'bloque', '2018-12-05', ''), +(10560, 156, 0, 29, '2019-01-23', 'pm2', 'bloque', '2018-12-05', ''), +(10561, 156, 0, 29, '2019-01-24', 'am1', 'bloque', '2018-12-05', ''), +(10562, 156, 0, 29, '2019-01-24', 'am2', 'bloque', '2018-12-05', ''), +(10563, 156, 0, 29, '2019-01-24', 'pm1', 'bloque', '2018-12-05', ''), +(10564, 156, 0, 29, '2019-01-24', 'pm2', 'bloque', '2018-12-05', ''), +(10565, 156, 0, 29, '2019-01-25', 'am1', 'bloque', '2018-12-05', ''), +(10566, 156, 0, 29, '2019-01-25', 'am2', 'bloque', '2018-12-05', ''), +(10567, 156, 0, 29, '2019-01-25', 'pm1', 'bloque', '2018-12-05', ''), +(10568, 156, 0, 29, '2019-01-25', 'pm2', 'bloque', '2018-12-05', ''), +(10569, 156, 0, 29, '2019-01-28', 'am1', 'bloque', '2018-12-05', ''), +(10570, 156, 0, 29, '2019-01-28', 'am2', 'bloque', '2018-12-05', ''), +(10571, 156, 0, 29, '2019-01-28', 'pm1', 'bloque', '2018-12-05', ''), +(10572, 156, 0, 29, '2019-01-28', 'pm2', 'bloque', '2018-12-05', ''), +(10573, 156, 0, 29, '2019-01-29', 'am1', 'bloque', '2018-12-05', ''), +(10574, 156, 0, 29, '2019-01-29', 'am2', 'bloque', '2018-12-05', ''), +(10575, 156, 0, 29, '2019-01-29', 'pm1', 'bloque', '2018-12-05', ''), +(10576, 156, 0, 29, '2019-01-29', 'pm2', 'bloque', '2018-12-05', ''), +(10577, 156, 0, 29, '2019-01-30', 'am1', 'bloque', '2018-12-05', ''), +(10578, 156, 0, 29, '2019-01-30', 'am2', 'bloque', '2018-12-05', ''), +(10579, 156, 0, 29, '2019-01-30', 'pm1', 'bloque', '2018-12-05', ''), +(10580, 156, 0, 29, '2019-01-30', 'pm2', 'bloque', '2018-12-05', ''), +(10581, 156, 0, 29, '2019-01-31', 'am1', 'bloque', '2018-12-05', ''), +(10582, 156, 0, 29, '2019-01-31', 'am2', 'bloque', '2018-12-05', ''), +(10583, 156, 0, 29, '2019-01-31', 'pm1', 'bloque', '2018-12-05', ''), +(10584, 156, 0, 29, '2019-01-31', 'pm2', 'bloque', '2018-12-05', ''), +(10585, 156, 0, 29, '2019-02-01', 'am1', 'bloque', '2018-12-05', ''), +(10586, 156, 0, 29, '2019-02-01', 'am2', 'bloque', '2018-12-05', ''), +(10587, 156, 0, 29, '2019-02-01', 'pm1', 'bloque', '2018-12-05', ''), +(10588, 156, 0, 29, '2019-02-01', 'pm2', 'bloque', '2018-12-05', ''), +(10589, 156, 0, 29, '2019-02-04', 'am1', 'bloque', '2018-12-05', ''), +(10590, 156, 0, 29, '2019-02-04', 'am2', 'bloque', '2018-12-05', ''), +(10591, 156, 0, 29, '2019-02-04', 'pm1', 'bloque', '2018-12-05', ''), +(10592, 156, 0, 29, '2019-02-04', 'pm2', 'bloque', '2018-12-05', ''), +(10593, 156, 0, 29, '2019-02-05', 'am1', 'bloque', '2018-12-05', ''), +(10594, 156, 0, 29, '2019-02-05', 'am2', 'bloque', '2018-12-05', ''), +(10595, 156, 0, 29, '2019-02-05', 'pm1', 'bloque', '2018-12-05', ''), +(10596, 156, 0, 29, '2019-02-05', 'pm2', 'bloque', '2018-12-05', ''), +(10597, 156, 0, 29, '2019-02-06', 'am1', 'bloque', '2018-12-05', ''), +(10598, 156, 0, 29, '2019-02-06', 'am2', 'bloque', '2018-12-05', ''), +(10599, 156, 0, 29, '2019-02-06', 'pm1', 'bloque', '2018-12-05', ''), +(10600, 156, 0, 29, '2019-02-06', 'pm2', 'bloque', '2018-12-05', ''), +(10601, 156, 0, 29, '2019-02-07', 'am1', 'bloque', '2018-12-05', ''), +(10602, 156, 0, 29, '2019-02-07', 'am2', 'bloque', '2018-12-05', ''), +(10603, 156, 0, 29, '2019-02-07', 'pm1', 'bloque', '2018-12-05', ''), +(10604, 156, 0, 29, '2019-02-07', 'pm2', 'bloque', '2018-12-05', ''), +(10605, 156, 0, 29, '2019-02-08', 'am1', 'bloque', '2018-12-05', ''), +(10606, 156, 0, 29, '2019-02-08', 'am2', 'bloque', '2018-12-05', ''), +(10607, 156, 0, 29, '2019-02-08', 'pm1', 'bloque', '2018-12-05', ''), +(10608, 156, 0, 29, '2019-02-08', 'pm2', 'bloque', '2018-12-05', ''), +(10609, 157, 0, 103, '2019-01-17', 'am1', 'libre', '2018-12-05', ''), +(10610, 157, 54, 103, '2019-01-17', 'am2', 'reserve', '2018-12-12', 'ref'), +(10611, 157, 56, 103, '2019-01-17', 'pm1', 'reserve', '2018-12-12', 'ref'), +(10612, 157, 0, 103, '2019-01-17', 'pm2', 'libre', '2018-12-05', ''), +(10613, 157, 0, 103, '2019-01-18', 'am1', 'bloque', '2018-12-05', ''), +(10614, 157, 0, 103, '2019-01-18', 'am2', 'bloque', '2018-12-05', ''), +(10615, 157, 0, 103, '2019-01-18', 'pm1', 'bloque', '2018-12-05', ''), +(10616, 157, 0, 103, '2019-01-18', 'pm2', 'bloque', '2018-12-05', ''), +(10617, 157, 0, 103, '2019-01-21', 'am1', 'bloque', '2018-12-05', ''), +(10618, 157, 0, 103, '2019-01-21', 'am2', 'bloque', '2018-12-05', ''), +(10619, 157, 0, 103, '2019-01-21', 'pm1', 'bloque', '2018-12-05', ''), +(10620, 157, 0, 103, '2019-01-21', 'pm2', 'bloque', '2018-12-05', ''), +(10621, 157, 0, 103, '2019-01-22', 'am1', 'bloque', '2018-12-05', ''), +(10622, 157, 0, 103, '2019-01-22', 'am2', 'bloque', '2018-12-05', ''), +(10623, 157, 0, 103, '2019-01-22', 'pm1', 'bloque', '2018-12-05', ''), +(10624, 157, 0, 103, '2019-01-22', 'pm2', 'bloque', '2018-12-05', ''), +(10625, 157, 0, 103, '2019-01-23', 'am1', 'bloque', '2018-12-05', ''), +(10626, 157, 0, 103, '2019-01-23', 'am2', 'bloque', '2018-12-05', ''), +(10627, 157, 0, 103, '2019-01-23', 'pm1', 'bloque', '2018-12-05', ''), +(10628, 157, 0, 103, '2019-01-23', 'pm2', 'bloque', '2018-12-05', ''), +(10629, 157, 0, 103, '2019-01-24', 'am1', 'bloque', '2018-12-05', ''), +(10630, 157, 0, 103, '2019-01-24', 'am2', 'bloque', '2018-12-05', ''), +(10631, 157, 0, 103, '2019-01-24', 'pm1', 'bloque', '2018-12-05', ''), +(10632, 157, 0, 103, '2019-01-24', 'pm2', 'bloque', '2018-12-05', ''), +(10633, 157, 0, 103, '2019-01-25', 'am1', 'bloque', '2018-12-05', ''), +(10634, 157, 0, 103, '2019-01-25', 'am2', 'bloque', '2018-12-05', ''), +(10635, 157, 0, 103, '2019-01-25', 'pm1', 'bloque', '2018-12-05', ''), +(10636, 157, 0, 103, '2019-01-25', 'pm2', 'bloque', '2018-12-05', ''), +(10637, 157, 0, 103, '2019-01-28', 'am1', 'bloque', '2018-12-05', ''), +(10638, 157, 0, 103, '2019-01-28', 'am2', 'bloque', '2018-12-05', ''), +(10639, 157, 0, 103, '2019-01-28', 'pm1', 'bloque', '2018-12-05', ''), +(10640, 157, 0, 103, '2019-01-28', 'pm2', 'bloque', '2018-12-05', ''), +(10641, 157, 0, 103, '2019-01-29', 'am1', 'bloque', '2018-12-05', ''), +(10642, 157, 0, 103, '2019-01-29', 'am2', 'bloque', '2018-12-05', ''), +(10643, 157, 0, 103, '2019-01-29', 'pm1', 'bloque', '2018-12-05', ''), +(10644, 157, 0, 103, '2019-01-29', 'pm2', 'bloque', '2018-12-05', ''), +(10645, 157, 0, 103, '2019-01-30', 'am1', 'bloque', '2018-12-05', ''), +(10646, 157, 0, 103, '2019-01-30', 'am2', 'bloque', '2018-12-05', ''), +(10647, 157, 0, 103, '2019-01-30', 'pm1', 'bloque', '2018-12-05', ''), +(10648, 157, 0, 103, '2019-01-30', 'pm2', 'bloque', '2018-12-05', ''), +(10649, 157, 0, 103, '2019-01-31', 'am1', 'bloque', '2018-12-05', ''), +(10650, 157, 0, 103, '2019-01-31', 'am2', 'bloque', '2018-12-05', ''), +(10651, 157, 0, 103, '2019-01-31', 'pm1', 'bloque', '2018-12-05', ''), +(10652, 157, 0, 103, '2019-01-31', 'pm2', 'bloque', '2018-12-05', ''), +(10653, 157, 0, 103, '2019-02-01', 'am1', 'bloque', '2018-12-05', ''), +(10654, 157, 0, 103, '2019-02-01', 'am2', 'bloque', '2018-12-05', ''), +(10655, 157, 0, 103, '2019-02-01', 'pm1', 'bloque', '2018-12-05', ''), +(10656, 157, 0, 103, '2019-02-01', 'pm2', 'bloque', '2018-12-05', ''), +(10657, 157, 0, 103, '2019-02-04', 'am1', 'bloque', '2018-12-05', ''), +(10658, 157, 0, 103, '2019-02-04', 'am2', 'bloque', '2018-12-05', ''), +(10659, 157, 0, 103, '2019-02-04', 'pm1', 'bloque', '2018-12-05', ''), +(10660, 157, 0, 103, '2019-02-04', 'pm2', 'bloque', '2018-12-05', ''), +(10661, 157, 0, 103, '2019-02-05', 'am1', 'bloque', '2018-12-05', ''), +(10662, 157, 0, 103, '2019-02-05', 'am2', 'bloque', '2018-12-05', ''), +(10663, 157, 0, 103, '2019-02-05', 'pm1', 'bloque', '2018-12-05', ''), +(10664, 157, 0, 103, '2019-02-05', 'pm2', 'bloque', '2018-12-05', ''), +(10665, 157, 0, 103, '2019-02-06', 'am1', 'bloque', '2018-12-05', ''), +(10666, 157, 0, 103, '2019-02-06', 'am2', 'bloque', '2018-12-05', ''), +(10667, 157, 0, 103, '2019-02-06', 'pm1', 'bloque', '2018-12-05', ''), +(10668, 157, 0, 103, '2019-02-06', 'pm2', 'bloque', '2018-12-05', ''), +(10669, 157, 0, 103, '2019-02-07', 'am1', 'bloque', '2018-12-05', ''), +(10670, 157, 0, 103, '2019-02-07', 'am2', 'bloque', '2018-12-05', ''), +(10671, 157, 0, 103, '2019-02-07', 'pm1', 'bloque', '2018-12-05', ''), +(10672, 157, 0, 103, '2019-02-07', 'pm2', 'bloque', '2018-12-05', ''), +(10673, 157, 0, 103, '2019-02-08', 'am1', 'bloque', '2018-12-05', ''), +(10674, 157, 0, 103, '2019-02-08', 'am2', 'bloque', '2018-12-05', ''), +(10675, 157, 0, 103, '2019-02-08', 'pm1', 'bloque', '2018-12-05', ''), +(10676, 157, 0, 103, '2019-02-08', 'pm2', 'bloque', '2018-12-05', ''), +(10677, 158, 0, 103, '2019-01-17', 'am1', 'libre', '2018-12-05', ''), +(10678, 158, 0, 103, '2019-01-17', 'am2', 'libre', '2018-12-05', ''), +(10679, 158, 0, 103, '2019-01-17', 'pm1', 'libre', '2018-12-05', ''), +(10680, 158, 0, 103, '2019-01-17', 'pm2', 'libre', '2018-12-05', ''), +(10681, 158, 0, 103, '2019-01-18', 'am1', 'bloque', '2018-12-05', ''), +(10682, 158, 0, 103, '2019-01-18', 'am2', 'bloque', '2018-12-05', ''), +(10683, 158, 0, 103, '2019-01-18', 'pm1', 'bloque', '2018-12-05', ''), +(10684, 158, 0, 103, '2019-01-18', 'pm2', 'bloque', '2018-12-05', ''), +(10685, 158, 0, 103, '2019-01-21', 'am1', 'bloque', '2018-12-05', ''), +(10686, 158, 0, 103, '2019-01-21', 'am2', 'bloque', '2018-12-05', ''), +(10687, 158, 0, 103, '2019-01-21', 'pm1', 'bloque', '2018-12-05', ''), +(10688, 158, 0, 103, '2019-01-21', 'pm2', 'bloque', '2018-12-05', ''), +(10689, 158, 0, 103, '2019-01-22', 'am1', 'bloque', '2018-12-05', ''), +(10690, 158, 0, 103, '2019-01-22', 'am2', 'bloque', '2018-12-05', ''), +(10691, 158, 0, 103, '2019-01-22', 'pm1', 'bloque', '2018-12-05', ''), +(10692, 158, 0, 103, '2019-01-22', 'pm2', 'bloque', '2018-12-05', ''), +(10693, 158, 0, 103, '2019-01-23', 'am1', 'bloque', '2018-12-05', ''), +(10694, 158, 0, 103, '2019-01-23', 'am2', 'bloque', '2018-12-05', ''), +(10695, 158, 0, 103, '2019-01-23', 'pm1', 'bloque', '2018-12-05', ''), +(10696, 158, 0, 103, '2019-01-23', 'pm2', 'bloque', '2018-12-05', ''), +(10697, 158, 0, 103, '2019-01-24', 'am1', 'bloque', '2018-12-05', ''), +(10698, 158, 0, 103, '2019-01-24', 'am2', 'bloque', '2018-12-05', ''), +(10699, 158, 0, 103, '2019-01-24', 'pm1', 'bloque', '2018-12-05', ''), +(10700, 158, 0, 103, '2019-01-24', 'pm2', 'bloque', '2018-12-05', ''), +(10701, 158, 0, 103, '2019-01-25', 'am1', 'bloque', '2018-12-05', ''), +(10702, 158, 0, 103, '2019-01-25', 'am2', 'bloque', '2018-12-05', ''), +(10703, 158, 0, 103, '2019-01-25', 'pm1', 'bloque', '2018-12-05', ''), +(10704, 158, 0, 103, '2019-01-25', 'pm2', 'bloque', '2018-12-05', ''), +(10705, 158, 0, 103, '2019-01-28', 'am1', 'bloque', '2018-12-05', ''), +(10706, 158, 0, 103, '2019-01-28', 'am2', 'bloque', '2018-12-05', ''), +(10707, 158, 0, 103, '2019-01-28', 'pm1', 'bloque', '2018-12-05', ''), +(10708, 158, 0, 103, '2019-01-28', 'pm2', 'bloque', '2018-12-05', ''), +(10709, 158, 0, 103, '2019-01-29', 'am1', 'bloque', '2018-12-05', ''), +(10710, 158, 0, 103, '2019-01-29', 'am2', 'bloque', '2018-12-05', ''), +(10711, 158, 0, 103, '2019-01-29', 'pm1', 'bloque', '2018-12-05', ''), +(10712, 158, 0, 103, '2019-01-29', 'pm2', 'bloque', '2018-12-05', ''), +(10713, 158, 0, 103, '2019-01-30', 'am1', 'bloque', '2018-12-05', ''), +(10714, 158, 0, 103, '2019-01-30', 'am2', 'bloque', '2018-12-05', ''), +(10715, 158, 0, 103, '2019-01-30', 'pm1', 'bloque', '2018-12-05', ''), +(10716, 158, 0, 103, '2019-01-30', 'pm2', 'bloque', '2018-12-05', ''), +(10717, 158, 0, 103, '2019-01-31', 'am1', 'bloque', '2018-12-05', ''), +(10718, 158, 0, 103, '2019-01-31', 'am2', 'bloque', '2018-12-05', ''), +(10719, 158, 0, 103, '2019-01-31', 'pm1', 'bloque', '2018-12-05', ''), +(10720, 158, 0, 103, '2019-01-31', 'pm2', 'bloque', '2018-12-05', ''), +(10721, 158, 0, 103, '2019-02-01', 'am1', 'bloque', '2018-12-05', ''), +(10722, 158, 0, 103, '2019-02-01', 'am2', 'bloque', '2018-12-05', ''), +(10723, 158, 0, 103, '2019-02-01', 'pm1', 'bloque', '2018-12-05', ''), +(10724, 158, 0, 103, '2019-02-01', 'pm2', 'bloque', '2018-12-05', ''), +(10725, 158, 0, 103, '2019-02-04', 'am1', 'bloque', '2018-12-05', ''), +(10726, 158, 0, 103, '2019-02-04', 'am2', 'bloque', '2018-12-05', ''), +(10727, 158, 0, 103, '2019-02-04', 'pm1', 'bloque', '2018-12-05', ''), +(10728, 158, 0, 103, '2019-02-04', 'pm2', 'bloque', '2018-12-05', ''), +(10729, 158, 0, 103, '2019-02-05', 'am1', 'bloque', '2018-12-05', ''), +(10730, 158, 0, 103, '2019-02-05', 'am2', 'bloque', '2018-12-05', ''), +(10731, 158, 0, 103, '2019-02-05', 'pm1', 'bloque', '2018-12-05', ''), +(10732, 158, 0, 103, '2019-02-05', 'pm2', 'bloque', '2018-12-05', ''), +(10733, 158, 0, 103, '2019-02-06', 'am1', 'bloque', '2018-12-05', ''), +(10734, 158, 0, 103, '2019-02-06', 'am2', 'bloque', '2018-12-05', ''), +(10735, 158, 0, 103, '2019-02-06', 'pm1', 'bloque', '2018-12-05', ''), +(10736, 158, 0, 103, '2019-02-06', 'pm2', 'bloque', '2018-12-05', ''), +(10737, 158, 0, 103, '2019-02-07', 'am1', 'bloque', '2018-12-05', ''), +(10738, 158, 0, 103, '2019-02-07', 'am2', 'bloque', '2018-12-05', ''), +(10739, 158, 0, 103, '2019-02-07', 'pm1', 'bloque', '2018-12-05', ''), +(10740, 158, 0, 103, '2019-02-07', 'pm2', 'bloque', '2018-12-05', ''), +(10741, 158, 0, 103, '2019-02-08', 'am1', 'bloque', '2018-12-05', ''), +(10742, 158, 0, 103, '2019-02-08', 'am2', 'bloque', '2018-12-05', ''), +(10743, 158, 0, 103, '2019-02-08', 'pm1', 'bloque', '2018-12-05', ''), +(10744, 158, 0, 103, '2019-02-08', 'pm2', 'bloque', '2018-12-05', ''), +(10745, 159, 0, 83, '2019-01-17', 'am1', 'libre', '2018-12-06', ''), +(10746, 159, 0, 83, '2019-01-17', 'am2', 'libre', '2018-12-06', ''), +(10747, 159, 0, 83, '2019-01-17', 'pm1', 'libre', '2018-12-06', ''), +(10748, 159, 0, 83, '2019-01-17', 'pm2', 'libre', '2018-12-06', ''), +(10749, 159, 0, 83, '2019-01-18', 'am1', 'bloque', '2018-12-06', ''), +(10750, 159, 0, 83, '2019-01-18', 'am2', 'bloque', '2018-12-06', ''), +(10751, 159, 0, 83, '2019-01-18', 'pm1', 'bloque', '2018-12-06', ''), +(10752, 159, 0, 83, '2019-01-18', 'pm2', 'bloque', '2018-12-06', ''), +(10753, 159, 0, 83, '2019-01-21', 'am1', 'bloque', '2018-12-06', ''), +(10754, 159, 0, 83, '2019-01-21', 'am2', 'bloque', '2018-12-06', ''), +(10755, 159, 0, 83, '2019-01-21', 'pm1', 'bloque', '2018-12-06', ''), +(10756, 159, 0, 83, '2019-01-21', 'pm2', 'bloque', '2018-12-06', ''), +(10757, 159, 0, 83, '2019-01-22', 'am1', 'bloque', '2018-12-06', ''), +(10758, 159, 0, 83, '2019-01-22', 'am2', 'bloque', '2018-12-06', ''), +(10759, 159, 0, 83, '2019-01-22', 'pm1', 'bloque', '2018-12-06', ''), +(10760, 159, 0, 83, '2019-01-22', 'pm2', 'bloque', '2018-12-06', ''), +(10761, 159, 0, 83, '2019-01-23', 'am1', 'bloque', '2018-12-06', ''), +(10762, 159, 0, 83, '2019-01-23', 'am2', 'bloque', '2018-12-06', ''), +(10763, 159, 0, 83, '2019-01-23', 'pm1', 'bloque', '2018-12-06', ''), +(10764, 159, 0, 83, '2019-01-23', 'pm2', 'bloque', '2018-12-06', ''), +(10765, 159, 0, 83, '2019-01-24', 'am1', 'bloque', '2018-12-06', ''), +(10766, 159, 0, 83, '2019-01-24', 'am2', 'bloque', '2018-12-06', ''), +(10767, 159, 0, 83, '2019-01-24', 'pm1', 'bloque', '2018-12-06', ''), +(10768, 159, 0, 83, '2019-01-24', 'pm2', 'bloque', '2018-12-06', ''), +(10769, 159, 0, 83, '2019-01-25', 'am1', 'bloque', '2018-12-06', ''), +(10770, 159, 0, 83, '2019-01-25', 'am2', 'bloque', '2018-12-06', ''), +(10771, 159, 0, 83, '2019-01-25', 'pm1', 'bloque', '2018-12-06', ''), +(10772, 159, 0, 83, '2019-01-25', 'pm2', 'bloque', '2018-12-06', ''), +(10773, 159, 0, 83, '2019-01-28', 'am1', 'bloque', '2018-12-06', ''), +(10774, 159, 0, 83, '2019-01-28', 'am2', 'bloque', '2018-12-06', ''), +(10775, 159, 0, 83, '2019-01-28', 'pm1', 'bloque', '2018-12-06', ''), +(10776, 159, 0, 83, '2019-01-28', 'pm2', 'bloque', '2018-12-06', ''), +(10777, 159, 0, 83, '2019-01-29', 'am1', 'bloque', '2018-12-06', ''), +(10778, 159, 0, 83, '2019-01-29', 'am2', 'bloque', '2018-12-06', ''), +(10779, 159, 0, 83, '2019-01-29', 'pm1', 'bloque', '2018-12-06', ''), +(10780, 159, 0, 83, '2019-01-29', 'pm2', 'bloque', '2018-12-06', ''), +(10781, 159, 0, 83, '2019-01-30', 'am1', 'bloque', '2018-12-06', ''), +(10782, 159, 0, 83, '2019-01-30', 'am2', 'bloque', '2018-12-06', ''), +(10783, 159, 0, 83, '2019-01-30', 'pm1', 'bloque', '2018-12-06', ''), +(10784, 159, 0, 83, '2019-01-30', 'pm2', 'bloque', '2018-12-06', ''), +(10785, 159, 0, 83, '2019-01-31', 'am1', 'bloque', '2018-12-06', ''), +(10786, 159, 0, 83, '2019-01-31', 'am2', 'bloque', '2018-12-06', ''), +(10787, 159, 0, 83, '2019-01-31', 'pm1', 'bloque', '2018-12-06', ''), +(10788, 159, 0, 83, '2019-01-31', 'pm2', 'bloque', '2018-12-06', ''), +(10789, 159, 0, 83, '2019-02-01', 'am1', 'bloque', '2018-12-06', ''), +(10790, 159, 0, 83, '2019-02-01', 'am2', 'bloque', '2018-12-06', ''), +(10791, 159, 0, 83, '2019-02-01', 'pm1', 'bloque', '2018-12-06', ''), +(10792, 159, 0, 83, '2019-02-01', 'pm2', 'bloque', '2018-12-06', ''), +(10793, 159, 0, 83, '2019-02-04', 'am1', 'bloque', '2018-12-06', ''), +(10794, 159, 0, 83, '2019-02-04', 'am2', 'bloque', '2018-12-06', ''), +(10795, 159, 0, 83, '2019-02-04', 'pm1', 'bloque', '2018-12-06', ''), +(10796, 159, 0, 83, '2019-02-04', 'pm2', 'bloque', '2018-12-06', ''), +(10797, 159, 0, 83, '2019-02-05', 'am1', 'bloque', '2018-12-06', ''), +(10798, 159, 0, 83, '2019-02-05', 'am2', 'bloque', '2018-12-06', ''), +(10799, 159, 0, 83, '2019-02-05', 'pm1', 'bloque', '2018-12-06', ''), +(10800, 159, 0, 83, '2019-02-05', 'pm2', 'bloque', '2018-12-06', ''), +(10801, 159, 0, 83, '2019-02-06', 'am1', 'bloque', '2018-12-06', ''), +(10802, 159, 0, 83, '2019-02-06', 'am2', 'bloque', '2018-12-06', ''), +(10803, 159, 0, 83, '2019-02-06', 'pm1', 'bloque', '2018-12-06', ''), +(10804, 159, 0, 83, '2019-02-06', 'pm2', 'bloque', '2018-12-06', ''), +(10805, 159, 0, 83, '2019-02-07', 'am1', 'bloque', '2018-12-06', ''), +(10806, 159, 0, 83, '2019-02-07', 'am2', 'bloque', '2018-12-06', ''), +(10807, 159, 0, 83, '2019-02-07', 'pm1', 'bloque', '2018-12-06', ''), +(10808, 159, 0, 83, '2019-02-07', 'pm2', 'bloque', '2018-12-06', ''), +(10809, 159, 0, 83, '2019-02-08', 'am1', 'bloque', '2018-12-06', ''), +(10810, 159, 0, 83, '2019-02-08', 'am2', 'bloque', '2018-12-06', ''), +(10811, 159, 0, 83, '2019-02-08', 'pm1', 'bloque', '2018-12-06', ''), +(10812, 159, 0, 83, '2019-02-08', 'pm2', 'bloque', '2018-12-06', ''), +(10813, 160, 0, 53, '2019-01-17', 'am1', 'bloque', '2018-12-06', 'ref'), +(10814, 160, 0, 53, '2019-01-17', 'am2', 'libre', '2018-12-06', 'ref'), +(10815, 160, 0, 53, '2019-01-17', 'pm1', 'libre', '2018-12-06', ''), +(10816, 160, 0, 53, '2019-01-17', 'pm2', 'libre', '2018-12-06', ''), +(10817, 160, 0, 53, '2019-01-18', 'am1', 'bloque', '2018-12-06', ''), +(10818, 160, 0, 53, '2019-01-18', 'am2', 'bloque', '2018-12-06', ''), +(10819, 160, 0, 53, '2019-01-18', 'pm1', 'bloque', '2018-12-06', ''), +(10820, 160, 0, 53, '2019-01-18', 'pm2', 'bloque', '2018-12-06', ''), +(10821, 160, 0, 53, '2019-01-21', 'am1', 'bloque', '2018-12-06', ''), +(10822, 160, 0, 53, '2019-01-21', 'am2', 'bloque', '2018-12-06', ''), +(10823, 160, 0, 53, '2019-01-21', 'pm1', 'bloque', '2018-12-06', ''), +(10824, 160, 0, 53, '2019-01-21', 'pm2', 'bloque', '2018-12-06', ''), +(10825, 160, 0, 53, '2019-01-22', 'am1', 'bloque', '2018-12-06', ''), +(10826, 160, 0, 53, '2019-01-22', 'am2', 'bloque', '2018-12-06', ''), +(10827, 160, 0, 53, '2019-01-22', 'pm1', 'bloque', '2018-12-06', ''), +(10828, 160, 0, 53, '2019-01-22', 'pm2', 'bloque', '2018-12-06', ''), +(10829, 160, 26, 53, '2019-01-23', 'am1', 'reserve', '2018-12-06', 'ref'), +(10830, 160, 0, 53, '2019-01-23', 'am2', 'libre', '2018-12-06', 'ref'), +(10831, 160, 0, 53, '2019-01-23', 'pm1', 'bloque', '2018-12-06', ''), +(10832, 160, 0, 53, '2019-01-23', 'pm2', 'bloque', '2018-12-06', ''), +(10833, 160, 0, 53, '2019-01-24', 'am1', 'bloque', '2018-12-06', ''), +(10834, 160, 0, 53, '2019-01-24', 'am2', 'bloque', '2018-12-06', ''), +(10835, 160, 0, 53, '2019-01-24', 'pm1', 'bloque', '2018-12-06', ''), +(10836, 160, 0, 53, '2019-01-24', 'pm2', 'bloque', '2018-12-06', ''), +(10837, 160, 0, 53, '2019-01-25', 'am1', 'bloque', '2018-12-06', ''), +(10838, 160, 0, 53, '2019-01-25', 'am2', 'bloque', '2018-12-06', ''), +(10839, 160, 0, 53, '2019-01-25', 'pm1', 'bloque', '2018-12-06', ''), +(10840, 160, 0, 53, '2019-01-25', 'pm2', 'bloque', '2018-12-06', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(10841, 160, 0, 53, '2019-01-28', 'am1', 'bloque', '2018-12-06', ''), +(10842, 160, 0, 53, '2019-01-28', 'am2', 'bloque', '2018-12-06', ''), +(10843, 160, 0, 53, '2019-01-28', 'pm1', 'bloque', '2018-12-06', ''), +(10844, 160, 0, 53, '2019-01-28', 'pm2', 'bloque', '2018-12-06', ''), +(10845, 160, 0, 53, '2019-01-29', 'am1', 'bloque', '2018-12-06', ''), +(10846, 160, 0, 53, '2019-01-29', 'am2', 'bloque', '2018-12-06', ''), +(10847, 160, 0, 53, '2019-01-29', 'pm1', 'bloque', '2018-12-06', ''), +(10848, 160, 0, 53, '2019-01-29', 'pm2', 'bloque', '2018-12-06', ''), +(10849, 160, 0, 53, '2019-01-30', 'am1', 'bloque', '2018-12-06', ''), +(10850, 160, 0, 53, '2019-01-30', 'am2', 'bloque', '2018-12-06', ''), +(10851, 160, 0, 53, '2019-01-30', 'pm1', 'bloque', '2018-12-06', ''), +(10852, 160, 0, 53, '2019-01-30', 'pm2', 'bloque', '2018-12-06', ''), +(10853, 160, 0, 53, '2019-01-31', 'am1', 'bloque', '2018-12-06', ''), +(10854, 160, 0, 53, '2019-01-31', 'am2', 'bloque', '2018-12-06', ''), +(10855, 160, 0, 53, '2019-01-31', 'pm1', 'bloque', '2018-12-06', ''), +(10856, 160, 0, 53, '2019-01-31', 'pm2', 'bloque', '2018-12-06', ''), +(10857, 160, 0, 53, '2019-02-01', 'am1', 'bloque', '2018-12-06', ''), +(10858, 160, 0, 53, '2019-02-01', 'am2', 'bloque', '2018-12-06', ''), +(10859, 160, 0, 53, '2019-02-01', 'pm1', 'bloque', '2018-12-06', ''), +(10860, 160, 0, 53, '2019-02-01', 'pm2', 'bloque', '2018-12-06', ''), +(10861, 160, 0, 53, '2019-02-04', 'am1', 'bloque', '2018-12-06', ''), +(10862, 160, 0, 53, '2019-02-04', 'am2', 'bloque', '2018-12-06', ''), +(10863, 160, 0, 53, '2019-02-04', 'pm1', 'bloque', '2018-12-06', ''), +(10864, 160, 0, 53, '2019-02-04', 'pm2', 'bloque', '2018-12-06', ''), +(10865, 160, 0, 53, '2019-02-05', 'am1', 'bloque', '2018-12-06', ''), +(10866, 160, 0, 53, '2019-02-05', 'am2', 'bloque', '2018-12-06', ''), +(10867, 160, 0, 53, '2019-02-05', 'pm1', 'bloque', '2018-12-06', ''), +(10868, 160, 0, 53, '2019-02-05', 'pm2', 'bloque', '2018-12-06', ''), +(10869, 160, 0, 53, '2019-02-06', 'am1', 'bloque', '2018-12-06', ''), +(10870, 160, 0, 53, '2019-02-06', 'am2', 'bloque', '2018-12-06', ''), +(10871, 160, 0, 53, '2019-02-06', 'pm1', 'bloque', '2018-12-06', ''), +(10872, 160, 0, 53, '2019-02-06', 'pm2', 'bloque', '2018-12-06', ''), +(10873, 160, 0, 53, '2019-02-07', 'am1', 'bloque', '2018-12-06', ''), +(10874, 160, 0, 53, '2019-02-07', 'am2', 'bloque', '2018-12-06', ''), +(10875, 160, 0, 53, '2019-02-07', 'pm1', 'bloque', '2018-12-06', ''), +(10876, 160, 0, 53, '2019-02-07', 'pm2', 'bloque', '2018-12-06', ''), +(10877, 160, 0, 53, '2019-02-08', 'am1', 'bloque', '2018-12-06', ''), +(10878, 160, 0, 53, '2019-02-08', 'am2', 'bloque', '2018-12-06', ''), +(10879, 160, 0, 53, '2019-02-08', 'pm1', 'bloque', '2018-12-06', ''), +(10880, 160, 0, 53, '2019-02-08', 'pm2', 'bloque', '2018-12-06', ''), +(10881, 161, 0, 164, '2019-01-17', 'am1', 'bloque', '2018-12-06', 'ref'), +(10882, 161, 0, 164, '2019-01-17', 'am2', 'bloque', '2018-12-06', 'ref'), +(10883, 161, 0, 164, '2019-01-17', 'pm1', 'bloque', '2018-12-06', 'ref'), +(10884, 161, 0, 164, '2019-01-17', 'pm2', 'bloque', '2018-12-06', 'ref'), +(10885, 161, 0, 164, '2019-01-18', 'am1', 'bloque', '2018-12-06', ''), +(10886, 161, 0, 164, '2019-01-18', 'am2', 'bloque', '2018-12-06', ''), +(10887, 161, 0, 164, '2019-01-18', 'pm1', 'bloque', '2018-12-06', ''), +(10888, 161, 0, 164, '2019-01-18', 'pm2', 'bloque', '2018-12-06', ''), +(10889, 161, 0, 164, '2019-01-21', 'am1', 'bloque', '2018-12-06', ''), +(10890, 161, 0, 164, '2019-01-21', 'am2', 'bloque', '2018-12-06', ''), +(10891, 161, 0, 164, '2019-01-21', 'pm1', 'bloque', '2018-12-06', ''), +(10892, 161, 0, 164, '2019-01-21', 'pm2', 'bloque', '2018-12-06', ''), +(10893, 161, 0, 164, '2019-01-22', 'am1', 'bloque', '2018-12-06', ''), +(10894, 161, 0, 164, '2019-01-22', 'am2', 'bloque', '2018-12-06', ''), +(10895, 161, 0, 164, '2019-01-22', 'pm1', 'bloque', '2018-12-06', ''), +(10896, 161, 0, 164, '2019-01-22', 'pm2', 'bloque', '2018-12-06', ''), +(10897, 161, 0, 164, '2019-01-23', 'am1', 'bloque', '2018-12-06', ''), +(10898, 161, 0, 164, '2019-01-23', 'am2', 'bloque', '2018-12-06', ''), +(10899, 161, 0, 164, '2019-01-23', 'pm1', 'bloque', '2018-12-06', ''), +(10900, 161, 0, 164, '2019-01-23', 'pm2', 'bloque', '2018-12-06', ''), +(10901, 161, 0, 164, '2019-01-24', 'am1', 'bloque', '2018-12-06', ''), +(10902, 161, 0, 164, '2019-01-24', 'am2', 'bloque', '2018-12-06', ''), +(10903, 161, 0, 164, '2019-01-24', 'pm1', 'bloque', '2018-12-06', ''), +(10904, 161, 0, 164, '2019-01-24', 'pm2', 'bloque', '2018-12-06', ''), +(10905, 161, 263, 164, '2019-01-25', 'am1', 'reserve', '2019-01-11', 'ref'), +(10906, 161, 0, 164, '2019-01-25', 'am2', 'bloque', '2019-01-11', 'ref'), +(10907, 161, 242, 164, '2019-01-25', 'pm1', 'reserve', '2019-01-10', 'ref'), +(10908, 161, 0, 164, '2019-01-25', 'pm2', 'bloque', '2019-01-10', 'ref'), +(10909, 161, 0, 164, '2019-01-28', 'am1', 'bloque', '2018-12-06', ''), +(10910, 161, 0, 164, '2019-01-28', 'am2', 'bloque', '2018-12-06', ''), +(10911, 161, 0, 164, '2019-01-28', 'pm1', 'bloque', '2018-12-06', ''), +(10912, 161, 0, 164, '2019-01-28', 'pm2', 'bloque', '2018-12-06', ''), +(10913, 161, 0, 164, '2019-01-29', 'am1', 'bloque', '2018-12-06', ''), +(10914, 161, 0, 164, '2019-01-29', 'am2', 'bloque', '2018-12-06', ''), +(10915, 161, 0, 164, '2019-01-29', 'pm1', 'bloque', '2018-12-06', ''), +(10916, 161, 0, 164, '2019-01-29', 'pm2', 'bloque', '2018-12-06', ''), +(10917, 161, 0, 164, '2019-01-30', 'am1', 'bloque', '2018-12-06', ''), +(10918, 161, 0, 164, '2019-01-30', 'am2', 'bloque', '2018-12-06', ''), +(10919, 161, 0, 164, '2019-01-30', 'pm1', 'bloque', '2018-12-06', ''), +(10920, 161, 0, 164, '2019-01-30', 'pm2', 'bloque', '2018-12-06', ''), +(10921, 161, 0, 164, '2019-01-31', 'am1', 'bloque', '2018-12-06', ''), +(10922, 161, 0, 164, '2019-01-31', 'am2', 'bloque', '2018-12-06', ''), +(10923, 161, 0, 164, '2019-01-31', 'pm1', 'bloque', '2018-12-06', ''), +(10924, 161, 0, 164, '2019-01-31', 'pm2', 'bloque', '2018-12-06', ''), +(10925, 161, 0, 164, '2019-02-01', 'am1', 'bloque', '2018-12-06', ''), +(10926, 161, 0, 164, '2019-02-01', 'am2', 'bloque', '2018-12-06', ''), +(10927, 161, 0, 164, '2019-02-01', 'pm1', 'bloque', '2018-12-06', ''), +(10928, 161, 0, 164, '2019-02-01', 'pm2', 'bloque', '2018-12-06', ''), +(10929, 161, 0, 164, '2019-02-04', 'am1', 'bloque', '2018-12-06', ''), +(10930, 161, 0, 164, '2019-02-04', 'am2', 'bloque', '2018-12-06', ''), +(10931, 161, 0, 164, '2019-02-04', 'pm1', 'bloque', '2018-12-06', ''), +(10932, 161, 0, 164, '2019-02-04', 'pm2', 'bloque', '2018-12-06', ''), +(10933, 161, 0, 164, '2019-02-05', 'am1', 'bloque', '2018-12-06', ''), +(10934, 161, 0, 164, '2019-02-05', 'am2', 'bloque', '2018-12-06', ''), +(10935, 161, 0, 164, '2019-02-05', 'pm1', 'bloque', '2018-12-06', ''), +(10936, 161, 0, 164, '2019-02-05', 'pm2', 'bloque', '2018-12-06', ''), +(10937, 161, 0, 164, '2019-02-06', 'am1', 'bloque', '2018-12-06', ''), +(10938, 161, 0, 164, '2019-02-06', 'am2', 'bloque', '2018-12-06', ''), +(10939, 161, 0, 164, '2019-02-06', 'pm1', 'bloque', '2018-12-06', ''), +(10940, 161, 0, 164, '2019-02-06', 'pm2', 'bloque', '2018-12-06', ''), +(10941, 161, 0, 164, '2019-02-07', 'am1', 'bloque', '2018-12-06', ''), +(10942, 161, 0, 164, '2019-02-07', 'am2', 'bloque', '2018-12-06', ''), +(10943, 161, 0, 164, '2019-02-07', 'pm1', 'bloque', '2018-12-06', ''), +(10944, 161, 0, 164, '2019-02-07', 'pm2', 'bloque', '2018-12-06', ''), +(10945, 161, 0, 164, '2019-02-08', 'am1', 'bloque', '2018-12-06', ''), +(10946, 161, 0, 164, '2019-02-08', 'am2', 'bloque', '2018-12-06', ''), +(10947, 161, 0, 164, '2019-02-08', 'pm1', 'bloque', '2018-12-06', ''), +(10948, 161, 0, 164, '2019-02-08', 'pm2', 'bloque', '2018-12-06', ''), +(10949, 162, 31, 64, '2019-01-17', 'am1', 'reserve', '2018-12-07', 'ref'), +(10950, 162, 79, 64, '2019-01-17', 'am2', 'reserve', '2018-12-14', 'ref'), +(10951, 162, 80, 64, '2019-01-17', 'pm1', 'reserve', '2018-12-14', 'ref'), +(10952, 162, 0, 64, '2019-01-17', 'pm2', 'libre', '2018-12-07', ''), +(10953, 162, 0, 64, '2019-01-18', 'am1', 'bloque', '2018-12-07', ''), +(10954, 162, 0, 64, '2019-01-18', 'am2', 'bloque', '2018-12-07', ''), +(10955, 162, 0, 64, '2019-01-18', 'pm1', 'bloque', '2018-12-07', ''), +(10956, 162, 0, 64, '2019-01-18', 'pm2', 'bloque', '2018-12-07', ''), +(10957, 162, 0, 64, '2019-01-21', 'am1', 'bloque', '2018-12-07', ''), +(10958, 162, 0, 64, '2019-01-21', 'am2', 'bloque', '2018-12-07', ''), +(10959, 162, 0, 64, '2019-01-21', 'pm1', 'bloque', '2018-12-07', ''), +(10960, 162, 0, 64, '2019-01-21', 'pm2', 'bloque', '2018-12-07', ''), +(10961, 162, 0, 64, '2019-01-22', 'am1', 'bloque', '2018-12-07', ''), +(10962, 162, 0, 64, '2019-01-22', 'am2', 'bloque', '2018-12-07', ''), +(10963, 162, 0, 64, '2019-01-22', 'pm1', 'bloque', '2018-12-07', ''), +(10964, 162, 0, 64, '2019-01-22', 'pm2', 'bloque', '2018-12-07', ''), +(10965, 162, 0, 64, '2019-01-23', 'am1', 'bloque', '2018-12-07', ''), +(10966, 162, 0, 64, '2019-01-23', 'am2', 'bloque', '2018-12-07', ''), +(10967, 162, 0, 64, '2019-01-23', 'pm1', 'bloque', '2018-12-07', ''), +(10968, 162, 0, 64, '2019-01-23', 'pm2', 'bloque', '2018-12-07', ''), +(10969, 162, 0, 64, '2019-01-24', 'am1', 'bloque', '2018-12-07', ''), +(10970, 162, 0, 64, '2019-01-24', 'am2', 'bloque', '2018-12-07', ''), +(10971, 162, 0, 64, '2019-01-24', 'pm1', 'bloque', '2018-12-07', ''), +(10972, 162, 0, 64, '2019-01-24', 'pm2', 'bloque', '2018-12-07', ''), +(10973, 162, 0, 64, '2019-01-25', 'am1', 'bloque', '2018-12-07', ''), +(10974, 162, 0, 64, '2019-01-25', 'am2', 'bloque', '2018-12-07', ''), +(10975, 162, 0, 64, '2019-01-25', 'pm1', 'bloque', '2018-12-07', ''), +(10976, 162, 0, 64, '2019-01-25', 'pm2', 'bloque', '2018-12-07', ''), +(10977, 162, 0, 64, '2019-01-28', 'am1', 'bloque', '2018-12-07', ''), +(10978, 162, 0, 64, '2019-01-28', 'am2', 'bloque', '2018-12-07', ''), +(10979, 162, 0, 64, '2019-01-28', 'pm1', 'bloque', '2018-12-07', ''), +(10980, 162, 0, 64, '2019-01-28', 'pm2', 'bloque', '2018-12-07', ''), +(10981, 162, 0, 64, '2019-01-29', 'am1', 'bloque', '2018-12-07', ''), +(10982, 162, 0, 64, '2019-01-29', 'am2', 'bloque', '2018-12-07', ''), +(10983, 162, 0, 64, '2019-01-29', 'pm1', 'bloque', '2018-12-07', ''), +(10984, 162, 0, 64, '2019-01-29', 'pm2', 'bloque', '2018-12-07', ''), +(10985, 162, 0, 64, '2019-01-30', 'am1', 'bloque', '2018-12-07', ''), +(10986, 162, 0, 64, '2019-01-30', 'am2', 'bloque', '2018-12-07', ''), +(10987, 162, 0, 64, '2019-01-30', 'pm1', 'bloque', '2018-12-07', ''), +(10988, 162, 0, 64, '2019-01-30', 'pm2', 'bloque', '2018-12-07', ''), +(10989, 162, 0, 64, '2019-01-31', 'am1', 'bloque', '2018-12-07', ''), +(10990, 162, 0, 64, '2019-01-31', 'am2', 'bloque', '2018-12-07', ''), +(10991, 162, 0, 64, '2019-01-31', 'pm1', 'bloque', '2018-12-07', ''), +(10992, 162, 0, 64, '2019-01-31', 'pm2', 'bloque', '2018-12-07', ''), +(10993, 162, 0, 64, '2019-02-01', 'am1', 'bloque', '2018-12-07', ''), +(10994, 162, 0, 64, '2019-02-01', 'am2', 'bloque', '2018-12-07', ''), +(10995, 162, 0, 64, '2019-02-01', 'pm1', 'bloque', '2018-12-07', ''), +(10996, 162, 0, 64, '2019-02-01', 'pm2', 'bloque', '2018-12-07', ''), +(10997, 162, 0, 64, '2019-02-04', 'am1', 'bloque', '2018-12-07', ''), +(10998, 162, 0, 64, '2019-02-04', 'am2', 'bloque', '2018-12-07', ''), +(10999, 162, 0, 64, '2019-02-04', 'pm1', 'bloque', '2018-12-07', ''), +(11000, 162, 0, 64, '2019-02-04', 'pm2', 'bloque', '2018-12-07', ''), +(11001, 162, 0, 64, '2019-02-05', 'am1', 'bloque', '2018-12-07', ''), +(11002, 162, 0, 64, '2019-02-05', 'am2', 'bloque', '2018-12-07', ''), +(11003, 162, 0, 64, '2019-02-05', 'pm1', 'bloque', '2018-12-07', ''), +(11004, 162, 0, 64, '2019-02-05', 'pm2', 'bloque', '2018-12-07', ''), +(11005, 162, 0, 64, '2019-02-06', 'am1', 'bloque', '2018-12-07', ''), +(11006, 162, 0, 64, '2019-02-06', 'am2', 'bloque', '2018-12-07', ''), +(11007, 162, 0, 64, '2019-02-06', 'pm1', 'bloque', '2018-12-07', ''), +(11008, 162, 0, 64, '2019-02-06', 'pm2', 'bloque', '2018-12-07', ''), +(11009, 162, 0, 64, '2019-02-07', 'am1', 'bloque', '2018-12-07', ''), +(11010, 162, 0, 64, '2019-02-07', 'am2', 'bloque', '2018-12-07', ''), +(11011, 162, 0, 64, '2019-02-07', 'pm1', 'bloque', '2018-12-07', ''), +(11012, 162, 0, 64, '2019-02-07', 'pm2', 'bloque', '2018-12-07', ''), +(11013, 162, 0, 64, '2019-02-08', 'am1', 'bloque', '2018-12-07', ''), +(11014, 162, 0, 64, '2019-02-08', 'am2', 'bloque', '2018-12-07', ''), +(11015, 162, 0, 64, '2019-02-08', 'pm1', 'bloque', '2018-12-07', ''), +(11016, 162, 0, 64, '2019-02-08', 'pm2', 'bloque', '2018-12-07', ''), +(11017, 163, 77, 64, '2019-01-17', 'am1', 'reserve', '2018-12-13', 'ref'), +(11018, 163, 78, 64, '2019-01-17', 'am2', 'reserve', '2018-12-14', 'ref'), +(11019, 163, 0, 64, '2019-01-17', 'pm1', 'libre', '2018-12-07', ''), +(11020, 163, 0, 64, '2019-01-17', 'pm2', 'libre', '2018-12-07', ''), +(11021, 163, 0, 64, '2019-01-18', 'am1', 'bloque', '2018-12-07', ''), +(11022, 163, 0, 64, '2019-01-18', 'am2', 'bloque', '2018-12-07', ''), +(11023, 163, 0, 64, '2019-01-18', 'pm1', 'bloque', '2018-12-07', ''), +(11024, 163, 0, 64, '2019-01-18', 'pm2', 'bloque', '2018-12-07', ''), +(11025, 163, 0, 64, '2019-01-21', 'am1', 'bloque', '2018-12-07', ''), +(11026, 163, 0, 64, '2019-01-21', 'am2', 'bloque', '2018-12-07', ''), +(11027, 163, 0, 64, '2019-01-21', 'pm1', 'bloque', '2018-12-07', ''), +(11028, 163, 0, 64, '2019-01-21', 'pm2', 'bloque', '2018-12-07', ''), +(11029, 163, 0, 64, '2019-01-22', 'am1', 'bloque', '2018-12-07', ''), +(11030, 163, 0, 64, '2019-01-22', 'am2', 'bloque', '2018-12-07', ''), +(11031, 163, 0, 64, '2019-01-22', 'pm1', 'bloque', '2018-12-07', ''), +(11032, 163, 0, 64, '2019-01-22', 'pm2', 'bloque', '2018-12-07', ''), +(11033, 163, 0, 64, '2019-01-23', 'am1', 'bloque', '2018-12-07', ''), +(11034, 163, 0, 64, '2019-01-23', 'am2', 'bloque', '2018-12-07', ''), +(11035, 163, 0, 64, '2019-01-23', 'pm1', 'bloque', '2018-12-07', ''), +(11036, 163, 0, 64, '2019-01-23', 'pm2', 'bloque', '2018-12-07', ''), +(11037, 163, 0, 64, '2019-01-24', 'am1', 'bloque', '2018-12-07', ''), +(11038, 163, 0, 64, '2019-01-24', 'am2', 'bloque', '2018-12-07', ''), +(11039, 163, 0, 64, '2019-01-24', 'pm1', 'bloque', '2018-12-07', ''), +(11040, 163, 0, 64, '2019-01-24', 'pm2', 'bloque', '2018-12-07', ''), +(11041, 163, 0, 64, '2019-01-25', 'am1', 'bloque', '2018-12-07', ''), +(11042, 163, 0, 64, '2019-01-25', 'am2', 'bloque', '2018-12-07', ''), +(11043, 163, 0, 64, '2019-01-25', 'pm1', 'bloque', '2018-12-07', ''), +(11044, 163, 0, 64, '2019-01-25', 'pm2', 'bloque', '2018-12-07', ''), +(11045, 163, 0, 64, '2019-01-28', 'am1', 'bloque', '2018-12-07', ''), +(11046, 163, 0, 64, '2019-01-28', 'am2', 'bloque', '2018-12-07', ''), +(11047, 163, 0, 64, '2019-01-28', 'pm1', 'bloque', '2018-12-07', ''), +(11048, 163, 0, 64, '2019-01-28', 'pm2', 'bloque', '2018-12-07', ''), +(11049, 163, 0, 64, '2019-01-29', 'am1', 'bloque', '2018-12-07', ''), +(11050, 163, 0, 64, '2019-01-29', 'am2', 'bloque', '2018-12-07', ''), +(11051, 163, 0, 64, '2019-01-29', 'pm1', 'bloque', '2018-12-07', ''), +(11052, 163, 0, 64, '2019-01-29', 'pm2', 'bloque', '2018-12-07', ''), +(11053, 163, 0, 64, '2019-01-30', 'am1', 'bloque', '2018-12-07', ''), +(11054, 163, 0, 64, '2019-01-30', 'am2', 'bloque', '2018-12-07', ''), +(11055, 163, 0, 64, '2019-01-30', 'pm1', 'bloque', '2018-12-07', ''), +(11056, 163, 0, 64, '2019-01-30', 'pm2', 'bloque', '2018-12-07', ''), +(11057, 163, 0, 64, '2019-01-31', 'am1', 'bloque', '2018-12-07', ''), +(11058, 163, 0, 64, '2019-01-31', 'am2', 'bloque', '2018-12-07', ''), +(11059, 163, 0, 64, '2019-01-31', 'pm1', 'bloque', '2018-12-07', ''), +(11060, 163, 0, 64, '2019-01-31', 'pm2', 'bloque', '2018-12-07', ''), +(11061, 163, 0, 64, '2019-02-01', 'am1', 'bloque', '2018-12-07', ''), +(11062, 163, 0, 64, '2019-02-01', 'am2', 'bloque', '2018-12-07', ''), +(11063, 163, 0, 64, '2019-02-01', 'pm1', 'bloque', '2018-12-07', ''), +(11064, 163, 0, 64, '2019-02-01', 'pm2', 'bloque', '2018-12-07', ''), +(11065, 163, 0, 64, '2019-02-04', 'am1', 'bloque', '2018-12-07', ''), +(11066, 163, 0, 64, '2019-02-04', 'am2', 'bloque', '2018-12-07', ''), +(11067, 163, 0, 64, '2019-02-04', 'pm1', 'bloque', '2018-12-07', ''), +(11068, 163, 0, 64, '2019-02-04', 'pm2', 'bloque', '2018-12-07', ''), +(11069, 163, 0, 64, '2019-02-05', 'am1', 'bloque', '2018-12-07', ''), +(11070, 163, 0, 64, '2019-02-05', 'am2', 'bloque', '2018-12-07', ''), +(11071, 163, 0, 64, '2019-02-05', 'pm1', 'bloque', '2018-12-07', ''), +(11072, 163, 0, 64, '2019-02-05', 'pm2', 'bloque', '2018-12-07', ''), +(11073, 163, 0, 64, '2019-02-06', 'am1', 'bloque', '2018-12-07', ''), +(11074, 163, 0, 64, '2019-02-06', 'am2', 'bloque', '2018-12-07', ''), +(11075, 163, 0, 64, '2019-02-06', 'pm1', 'bloque', '2018-12-07', ''), +(11076, 163, 0, 64, '2019-02-06', 'pm2', 'bloque', '2018-12-07', ''), +(11077, 163, 0, 64, '2019-02-07', 'am1', 'bloque', '2018-12-07', ''), +(11078, 163, 0, 64, '2019-02-07', 'am2', 'bloque', '2018-12-07', ''), +(11079, 163, 0, 64, '2019-02-07', 'pm1', 'bloque', '2018-12-07', ''), +(11080, 163, 0, 64, '2019-02-07', 'pm2', 'bloque', '2018-12-07', ''), +(11081, 163, 0, 64, '2019-02-08', 'am1', 'bloque', '2018-12-07', ''), +(11082, 163, 0, 64, '2019-02-08', 'am2', 'bloque', '2018-12-07', ''), +(11083, 163, 0, 64, '2019-02-08', 'pm1', 'bloque', '2018-12-07', ''), +(11084, 163, 0, 64, '2019-02-08', 'pm2', 'bloque', '2018-12-07', ''), +(11085, 164, 65, 7, '2019-01-17', 'am1', 'reserve', '2018-12-13', 'ref'), +(11086, 164, 0, 7, '2019-01-17', 'am2', 'libre', '2018-12-07', ''), +(11087, 164, 0, 7, '2019-01-17', 'pm1', 'libre', '2018-12-07', ''), +(11088, 164, 0, 7, '2019-01-17', 'pm2', 'libre', '2018-12-07', ''), +(11089, 164, 0, 7, '2019-01-18', 'am1', 'bloque', '2018-12-07', ''), +(11090, 164, 0, 7, '2019-01-18', 'am2', 'bloque', '2018-12-07', ''), +(11091, 164, 0, 7, '2019-01-18', 'pm1', 'bloque', '2018-12-07', ''), +(11092, 164, 0, 7, '2019-01-18', 'pm2', 'bloque', '2018-12-07', ''), +(11093, 164, 0, 7, '2019-01-21', 'am1', 'bloque', '2018-12-07', ''), +(11094, 164, 0, 7, '2019-01-21', 'am2', 'bloque', '2018-12-07', ''), +(11095, 164, 0, 7, '2019-01-21', 'pm1', 'bloque', '2018-12-07', ''), +(11096, 164, 0, 7, '2019-01-21', 'pm2', 'bloque', '2018-12-07', ''), +(11097, 164, 0, 7, '2019-01-22', 'am1', 'bloque', '2018-12-07', ''), +(11098, 164, 0, 7, '2019-01-22', 'am2', 'bloque', '2018-12-07', ''), +(11099, 164, 0, 7, '2019-01-22', 'pm1', 'bloque', '2018-12-07', ''), +(11100, 164, 0, 7, '2019-01-22', 'pm2', 'bloque', '2018-12-07', ''), +(11101, 164, 0, 7, '2019-01-23', 'am1', 'bloque', '2018-12-07', ''), +(11102, 164, 0, 7, '2019-01-23', 'am2', 'bloque', '2018-12-07', ''), +(11103, 164, 0, 7, '2019-01-23', 'pm1', 'bloque', '2018-12-07', ''), +(11104, 164, 0, 7, '2019-01-23', 'pm2', 'bloque', '2018-12-07', ''), +(11105, 164, 0, 7, '2019-01-24', 'am1', 'bloque', '2018-12-07', ''), +(11106, 164, 0, 7, '2019-01-24', 'am2', 'bloque', '2018-12-07', ''), +(11107, 164, 0, 7, '2019-01-24', 'pm1', 'bloque', '2018-12-07', ''), +(11108, 164, 0, 7, '2019-01-24', 'pm2', 'bloque', '2018-12-07', ''), +(11109, 164, 0, 7, '2019-01-25', 'am1', 'bloque', '2018-12-07', ''), +(11110, 164, 0, 7, '2019-01-25', 'am2', 'bloque', '2018-12-07', ''), +(11111, 164, 0, 7, '2019-01-25', 'pm1', 'bloque', '2018-12-07', ''), +(11112, 164, 0, 7, '2019-01-25', 'pm2', 'bloque', '2018-12-07', ''), +(11113, 164, 0, 7, '2019-01-28', 'am1', 'bloque', '2018-12-07', ''), +(11114, 164, 0, 7, '2019-01-28', 'am2', 'bloque', '2018-12-07', ''), +(11115, 164, 0, 7, '2019-01-28', 'pm1', 'bloque', '2018-12-07', ''), +(11116, 164, 0, 7, '2019-01-28', 'pm2', 'bloque', '2018-12-07', ''), +(11117, 164, 0, 7, '2019-01-29', 'am1', 'bloque', '2018-12-07', ''), +(11118, 164, 0, 7, '2019-01-29', 'am2', 'bloque', '2018-12-07', ''), +(11119, 164, 0, 7, '2019-01-29', 'pm1', 'bloque', '2018-12-07', ''), +(11120, 164, 0, 7, '2019-01-29', 'pm2', 'bloque', '2018-12-07', ''), +(11121, 164, 0, 7, '2019-01-30', 'am1', 'bloque', '2018-12-07', ''), +(11122, 164, 0, 7, '2019-01-30', 'am2', 'bloque', '2018-12-07', ''), +(11123, 164, 0, 7, '2019-01-30', 'pm1', 'bloque', '2018-12-07', ''), +(11124, 164, 0, 7, '2019-01-30', 'pm2', 'bloque', '2018-12-07', ''), +(11125, 164, 0, 7, '2019-01-31', 'am1', 'bloque', '2018-12-07', ''), +(11126, 164, 0, 7, '2019-01-31', 'am2', 'bloque', '2018-12-07', ''), +(11127, 164, 0, 7, '2019-01-31', 'pm1', 'bloque', '2018-12-07', ''), +(11128, 164, 0, 7, '2019-01-31', 'pm2', 'bloque', '2018-12-07', ''), +(11129, 164, 0, 7, '2019-02-01', 'am1', 'bloque', '2018-12-07', ''), +(11130, 164, 0, 7, '2019-02-01', 'am2', 'bloque', '2018-12-07', ''), +(11131, 164, 0, 7, '2019-02-01', 'pm1', 'bloque', '2018-12-07', ''), +(11132, 164, 0, 7, '2019-02-01', 'pm2', 'bloque', '2018-12-07', ''), +(11133, 164, 0, 7, '2019-02-04', 'am1', 'bloque', '2018-12-07', ''), +(11134, 164, 0, 7, '2019-02-04', 'am2', 'bloque', '2018-12-07', ''), +(11135, 164, 0, 7, '2019-02-04', 'pm1', 'bloque', '2018-12-07', ''), +(11136, 164, 0, 7, '2019-02-04', 'pm2', 'bloque', '2018-12-07', ''), +(11137, 164, 0, 7, '2019-02-05', 'am1', 'bloque', '2018-12-07', ''), +(11138, 164, 0, 7, '2019-02-05', 'am2', 'bloque', '2018-12-07', ''), +(11139, 164, 0, 7, '2019-02-05', 'pm1', 'bloque', '2018-12-07', ''), +(11140, 164, 0, 7, '2019-02-05', 'pm2', 'bloque', '2018-12-07', ''), +(11141, 164, 0, 7, '2019-02-06', 'am1', 'bloque', '2018-12-07', ''), +(11142, 164, 0, 7, '2019-02-06', 'am2', 'bloque', '2018-12-07', ''), +(11143, 164, 0, 7, '2019-02-06', 'pm1', 'bloque', '2018-12-07', ''), +(11144, 164, 0, 7, '2019-02-06', 'pm2', 'bloque', '2018-12-07', ''), +(11145, 164, 0, 7, '2019-02-07', 'am1', 'bloque', '2018-12-07', ''), +(11146, 164, 0, 7, '2019-02-07', 'am2', 'bloque', '2018-12-07', ''), +(11147, 164, 0, 7, '2019-02-07', 'pm1', 'bloque', '2018-12-07', ''), +(11148, 164, 0, 7, '2019-02-07', 'pm2', 'bloque', '2018-12-07', ''), +(11149, 164, 0, 7, '2019-02-08', 'am1', 'bloque', '2018-12-07', ''), +(11150, 164, 0, 7, '2019-02-08', 'am2', 'bloque', '2018-12-07', ''), +(11151, 164, 0, 7, '2019-02-08', 'pm1', 'bloque', '2018-12-07', ''), +(11152, 164, 0, 7, '2019-02-08', 'pm2', 'bloque', '2018-12-07', ''), +(11153, 165, 0, 354, '2019-01-17', 'am1', 'libre', '2018-12-07', ''), +(11154, 165, 0, 354, '2019-01-17', 'am2', 'libre', '2018-12-07', ''), +(11155, 165, 0, 354, '2019-01-17', 'pm1', 'libre', '2018-12-07', ''), +(11156, 165, 0, 354, '2019-01-17', 'pm2', 'libre', '2018-12-07', ''), +(11157, 165, 0, 354, '2019-01-18', 'am1', 'bloque', '2018-12-07', ''), +(11158, 165, 0, 354, '2019-01-18', 'am2', 'bloque', '2018-12-07', ''), +(11159, 165, 0, 354, '2019-01-18', 'pm1', 'bloque', '2018-12-07', ''), +(11160, 165, 0, 354, '2019-01-18', 'pm2', 'bloque', '2018-12-07', ''), +(11161, 165, 0, 354, '2019-01-21', 'am1', 'bloque', '2018-12-07', ''), +(11162, 165, 0, 354, '2019-01-21', 'am2', 'bloque', '2018-12-07', ''), +(11163, 165, 0, 354, '2019-01-21', 'pm1', 'bloque', '2018-12-07', ''), +(11164, 165, 0, 354, '2019-01-21', 'pm2', 'bloque', '2018-12-07', ''), +(11165, 165, 0, 354, '2019-01-22', 'am1', 'bloque', '2018-12-07', ''), +(11166, 165, 0, 354, '2019-01-22', 'am2', 'bloque', '2018-12-07', ''), +(11167, 165, 0, 354, '2019-01-22', 'pm1', 'bloque', '2018-12-07', ''), +(11168, 165, 0, 354, '2019-01-22', 'pm2', 'bloque', '2018-12-07', ''), +(11169, 165, 0, 354, '2019-01-23', 'am1', 'bloque', '2018-12-07', ''), +(11170, 165, 0, 354, '2019-01-23', 'am2', 'bloque', '2018-12-07', ''), +(11171, 165, 0, 354, '2019-01-23', 'pm1', 'bloque', '2018-12-07', ''), +(11172, 165, 0, 354, '2019-01-23', 'pm2', 'bloque', '2018-12-07', ''), +(11173, 165, 0, 354, '2019-01-24', 'am1', 'bloque', '2018-12-07', ''), +(11174, 165, 0, 354, '2019-01-24', 'am2', 'bloque', '2018-12-07', ''), +(11175, 165, 0, 354, '2019-01-24', 'pm1', 'bloque', '2018-12-07', ''), +(11176, 165, 0, 354, '2019-01-24', 'pm2', 'bloque', '2018-12-07', ''), +(11177, 165, 0, 354, '2019-01-25', 'am1', 'bloque', '2018-12-07', ''), +(11178, 165, 0, 354, '2019-01-25', 'am2', 'bloque', '2018-12-07', ''), +(11179, 165, 0, 354, '2019-01-25', 'pm1', 'bloque', '2018-12-07', ''), +(11180, 165, 0, 354, '2019-01-25', 'pm2', 'bloque', '2018-12-07', ''), +(11181, 165, 0, 354, '2019-01-28', 'am1', 'bloque', '2018-12-07', ''), +(11182, 165, 0, 354, '2019-01-28', 'am2', 'bloque', '2018-12-07', ''), +(11183, 165, 0, 354, '2019-01-28', 'pm1', 'bloque', '2018-12-07', ''), +(11184, 165, 0, 354, '2019-01-28', 'pm2', 'bloque', '2018-12-07', ''), +(11185, 165, 0, 354, '2019-01-29', 'am1', 'bloque', '2018-12-07', ''), +(11186, 165, 0, 354, '2019-01-29', 'am2', 'bloque', '2018-12-07', ''), +(11187, 165, 0, 354, '2019-01-29', 'pm1', 'bloque', '2018-12-07', ''), +(11188, 165, 0, 354, '2019-01-29', 'pm2', 'bloque', '2018-12-07', ''), +(11189, 165, 0, 354, '2019-01-30', 'am1', 'bloque', '2018-12-07', ''), +(11190, 165, 0, 354, '2019-01-30', 'am2', 'bloque', '2018-12-07', ''), +(11191, 165, 0, 354, '2019-01-30', 'pm1', 'bloque', '2018-12-07', ''), +(11192, 165, 0, 354, '2019-01-30', 'pm2', 'bloque', '2018-12-07', ''), +(11193, 165, 0, 354, '2019-01-31', 'am1', 'bloque', '2018-12-07', ''), +(11194, 165, 0, 354, '2019-01-31', 'am2', 'bloque', '2018-12-07', ''), +(11195, 165, 0, 354, '2019-01-31', 'pm1', 'bloque', '2018-12-07', ''), +(11196, 165, 0, 354, '2019-01-31', 'pm2', 'bloque', '2018-12-07', ''), +(11197, 165, 0, 354, '2019-02-01', 'am1', 'bloque', '2018-12-07', ''), +(11198, 165, 0, 354, '2019-02-01', 'am2', 'bloque', '2018-12-07', ''), +(11199, 165, 0, 354, '2019-02-01', 'pm1', 'bloque', '2018-12-07', ''), +(11200, 165, 0, 354, '2019-02-01', 'pm2', 'bloque', '2018-12-07', ''), +(11201, 165, 0, 354, '2019-02-04', 'am1', 'bloque', '2018-12-07', ''), +(11202, 165, 0, 354, '2019-02-04', 'am2', 'bloque', '2018-12-07', ''), +(11203, 165, 0, 354, '2019-02-04', 'pm1', 'bloque', '2018-12-07', ''), +(11204, 165, 0, 354, '2019-02-04', 'pm2', 'bloque', '2018-12-07', ''), +(11205, 165, 0, 354, '2019-02-05', 'am1', 'bloque', '2018-12-07', ''), +(11206, 165, 0, 354, '2019-02-05', 'am2', 'bloque', '2018-12-07', ''), +(11207, 165, 0, 354, '2019-02-05', 'pm1', 'bloque', '2018-12-07', ''), +(11208, 165, 0, 354, '2019-02-05', 'pm2', 'bloque', '2018-12-07', ''), +(11209, 165, 0, 354, '2019-02-06', 'am1', 'bloque', '2018-12-07', ''), +(11210, 165, 0, 354, '2019-02-06', 'am2', 'bloque', '2018-12-07', ''), +(11211, 165, 0, 354, '2019-02-06', 'pm1', 'bloque', '2018-12-07', ''), +(11212, 165, 0, 354, '2019-02-06', 'pm2', 'bloque', '2018-12-07', ''), +(11213, 165, 0, 354, '2019-02-07', 'am1', 'bloque', '2018-12-07', ''), +(11214, 165, 0, 354, '2019-02-07', 'am2', 'bloque', '2018-12-07', ''), +(11215, 165, 0, 354, '2019-02-07', 'pm1', 'bloque', '2018-12-07', ''), +(11216, 165, 0, 354, '2019-02-07', 'pm2', 'bloque', '2018-12-07', ''), +(11217, 165, 0, 354, '2019-02-08', 'am1', 'bloque', '2018-12-07', ''), +(11218, 165, 0, 354, '2019-02-08', 'am2', 'bloque', '2018-12-07', ''), +(11219, 165, 0, 354, '2019-02-08', 'pm1', 'bloque', '2018-12-07', ''), +(11220, 165, 0, 354, '2019-02-08', 'pm2', 'bloque', '2018-12-07', ''), +(11221, 166, 0, 305, '2019-01-17', 'am1', 'libre', '2018-12-07', ''), +(11222, 166, 0, 305, '2019-01-17', 'am2', 'libre', '2018-12-07', ''), +(11223, 166, 0, 305, '2019-01-17', 'pm1', 'libre', '2018-12-07', ''), +(11224, 166, 0, 305, '2019-01-17', 'pm2', 'libre', '2018-12-07', ''), +(11225, 166, 0, 305, '2019-01-18', 'am1', 'bloque', '2018-12-07', ''), +(11226, 166, 0, 305, '2019-01-18', 'am2', 'bloque', '2018-12-07', ''), +(11227, 166, 0, 305, '2019-01-18', 'pm1', 'bloque', '2018-12-07', ''), +(11228, 166, 0, 305, '2019-01-18', 'pm2', 'bloque', '2018-12-07', ''), +(11229, 166, 0, 305, '2019-01-21', 'am1', 'bloque', '2018-12-07', ''), +(11230, 166, 0, 305, '2019-01-21', 'am2', 'bloque', '2018-12-07', ''), +(11231, 166, 0, 305, '2019-01-21', 'pm1', 'bloque', '2018-12-07', ''), +(11232, 166, 0, 305, '2019-01-21', 'pm2', 'bloque', '2018-12-07', ''), +(11233, 166, 0, 305, '2019-01-22', 'am1', 'bloque', '2018-12-07', ''), +(11234, 166, 311, 305, '2019-01-22', 'am2', 'reserve', '2019-01-20', 'cap'), +(11235, 166, 0, 305, '2019-01-22', 'pm1', 'bloque', '2018-12-07', ''), +(11236, 166, 0, 305, '2019-01-22', 'pm2', 'bloque', '2018-12-07', ''), +(11237, 166, 0, 305, '2019-01-23', 'am1', 'bloque', '2018-12-07', ''), +(11238, 166, 0, 305, '2019-01-23', 'am2', 'bloque', '2018-12-07', ''), +(11239, 166, 0, 305, '2019-01-23', 'pm1', 'bloque', '2018-12-07', ''), +(11240, 166, 0, 305, '2019-01-23', 'pm2', 'bloque', '2018-12-07', ''), +(11241, 166, 0, 305, '2019-01-24', 'am1', 'libre', '2018-12-07', 'cap'), +(11242, 166, 0, 305, '2019-01-24', 'am2', 'libre', '2018-12-07', 'cap'), +(11243, 166, 296, 305, '2019-01-24', 'pm1', 'reserve', '2019-01-16', 'cap'), +(11244, 166, 0, 305, '2019-01-24', 'pm2', 'libre', '2018-12-07', 'cap'), +(11245, 166, 0, 305, '2019-01-25', 'am1', 'bloque', '2018-12-07', ''), +(11246, 166, 0, 305, '2019-01-25', 'am2', 'bloque', '2018-12-07', ''), +(11247, 166, 0, 305, '2019-01-25', 'pm1', 'bloque', '2018-12-07', ''), +(11248, 166, 0, 305, '2019-01-25', 'pm2', 'bloque', '2018-12-07', ''), +(11249, 166, 0, 305, '2019-01-28', 'am1', 'bloque', '2018-12-07', ''), +(11250, 166, 0, 305, '2019-01-28', 'am2', 'bloque', '2018-12-07', ''), +(11251, 166, 0, 305, '2019-01-28', 'pm1', 'bloque', '2018-12-07', ''), +(11252, 166, 0, 305, '2019-01-28', 'pm2', 'bloque', '2018-12-07', ''), +(11253, 166, 0, 305, '2019-01-29', 'am1', 'bloque', '2018-12-07', ''), +(11254, 166, 0, 305, '2019-01-29', 'am2', 'bloque', '2018-12-07', ''), +(11255, 166, 0, 305, '2019-01-29', 'pm1', 'bloque', '2018-12-07', ''), +(11256, 166, 0, 305, '2019-01-29', 'pm2', 'bloque', '2018-12-07', ''), +(11257, 166, 0, 305, '2019-01-30', 'am1', 'bloque', '2018-12-07', ''), +(11258, 166, 0, 305, '2019-01-30', 'am2', 'bloque', '2018-12-07', ''), +(11259, 166, 0, 305, '2019-01-30', 'pm1', 'bloque', '2018-12-07', ''), +(11260, 166, 0, 305, '2019-01-30', 'pm2', 'bloque', '2018-12-07', ''), +(11261, 166, 312, 305, '2019-01-31', 'am1', 'reserve', '2019-01-20', 'cap'), +(11262, 166, 0, 305, '2019-01-31', 'am2', 'libre', '2018-12-07', 'cap'), +(11263, 166, 0, 305, '2019-01-31', 'pm1', 'libre', '2018-12-07', 'cap'), +(11264, 166, 0, 305, '2019-01-31', 'pm2', 'libre', '2018-12-07', 'cap'), +(11265, 166, 0, 305, '2019-02-01', 'am1', 'bloque', '2018-12-07', ''), +(11266, 166, 0, 305, '2019-02-01', 'am2', 'bloque', '2018-12-07', ''), +(11267, 166, 0, 305, '2019-02-01', 'pm1', 'bloque', '2018-12-07', ''), +(11268, 166, 0, 305, '2019-02-01', 'pm2', 'bloque', '2018-12-07', ''), +(11269, 166, 0, 305, '2019-02-04', 'am1', 'bloque', '2018-12-07', ''), +(11270, 166, 0, 305, '2019-02-04', 'am2', 'bloque', '2018-12-07', ''), +(11271, 166, 0, 305, '2019-02-04', 'pm1', 'bloque', '2018-12-07', ''), +(11272, 166, 0, 305, '2019-02-04', 'pm2', 'bloque', '2018-12-07', ''), +(11273, 166, 0, 305, '2019-02-05', 'am1', 'bloque', '2018-12-07', ''), +(11274, 166, 0, 305, '2019-02-05', 'am2', 'bloque', '2018-12-07', ''), +(11275, 166, 0, 305, '2019-02-05', 'pm1', 'bloque', '2018-12-07', ''), +(11276, 166, 0, 305, '2019-02-05', 'pm2', 'bloque', '2018-12-07', ''), +(11277, 166, 0, 305, '2019-02-06', 'am1', 'bloque', '2018-12-07', ''), +(11278, 166, 0, 305, '2019-02-06', 'am2', 'bloque', '2018-12-07', ''), +(11279, 166, 0, 305, '2019-02-06', 'pm1', 'bloque', '2018-12-07', ''), +(11280, 166, 0, 305, '2019-02-06', 'pm2', 'bloque', '2018-12-07', ''), +(11281, 166, 0, 305, '2019-02-07', 'am1', 'bloque', '2018-12-07', ''), +(11282, 166, 0, 305, '2019-02-07', 'am2', 'bloque', '2018-12-07', ''), +(11283, 166, 0, 305, '2019-02-07', 'pm1', 'bloque', '2018-12-07', ''), +(11284, 166, 0, 305, '2019-02-07', 'pm2', 'bloque', '2018-12-07', ''), +(11285, 166, 0, 305, '2019-02-08', 'am1', 'bloque', '2018-12-07', ''), +(11286, 166, 0, 305, '2019-02-08', 'am2', 'bloque', '2018-12-07', ''), +(11287, 166, 0, 305, '2019-02-08', 'pm1', 'bloque', '2018-12-07', ''), +(11288, 166, 0, 305, '2019-02-08', 'pm2', 'bloque', '2018-12-07', ''), +(11289, 167, 0, 173, '2019-01-17', 'am1', 'libre', '2018-12-10', ''), +(11290, 167, 0, 173, '2019-01-17', 'am2', 'libre', '2018-12-10', ''), +(11291, 167, 0, 173, '2019-01-17', 'pm1', 'libre', '2018-12-10', ''), +(11292, 167, 0, 173, '2019-01-17', 'pm2', 'libre', '2018-12-10', ''), +(11293, 167, 0, 173, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(11294, 167, 0, 173, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(11295, 167, 0, 173, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(11296, 167, 0, 173, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(11297, 167, 0, 173, '2019-01-21', 'am1', 'bloque', '2018-12-10', ''), +(11298, 167, 0, 173, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(11299, 167, 0, 173, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(11300, 167, 0, 173, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(11301, 167, 0, 173, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(11302, 167, 0, 173, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(11303, 167, 0, 173, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(11304, 167, 0, 173, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(11305, 167, 0, 173, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(11306, 167, 0, 173, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(11307, 167, 0, 173, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(11308, 167, 0, 173, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(11309, 167, 0, 173, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(11310, 167, 0, 173, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(11311, 167, 0, 173, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(11312, 167, 0, 173, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(11313, 167, 0, 173, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(11314, 167, 0, 173, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(11315, 167, 0, 173, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(11316, 167, 0, 173, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(11317, 167, 0, 173, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(11318, 167, 0, 173, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(11319, 167, 0, 173, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(11320, 167, 0, 173, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(11321, 167, 0, 173, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(11322, 167, 0, 173, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(11323, 167, 0, 173, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(11324, 167, 0, 173, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(11325, 167, 0, 173, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(11326, 167, 0, 173, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(11327, 167, 0, 173, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(11328, 167, 0, 173, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(11329, 167, 0, 173, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(11330, 167, 0, 173, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(11331, 167, 0, 173, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(11332, 167, 0, 173, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(11333, 167, 0, 173, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(11334, 167, 0, 173, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(11335, 167, 0, 173, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(11336, 167, 0, 173, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(11337, 167, 0, 173, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(11338, 167, 0, 173, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(11339, 167, 0, 173, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(11340, 167, 0, 173, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(11341, 167, 0, 173, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(11342, 167, 0, 173, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(11343, 167, 0, 173, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(11344, 167, 0, 173, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(11345, 167, 0, 173, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(11346, 167, 0, 173, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(11347, 167, 0, 173, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(11348, 167, 0, 173, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(11349, 167, 0, 173, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(11350, 167, 0, 173, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(11351, 167, 0, 173, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(11352, 167, 0, 173, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(11353, 167, 0, 173, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(11354, 167, 0, 173, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(11355, 167, 0, 173, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(11356, 167, 0, 173, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(11357, 168, 0, 21, '2019-01-17', 'am1', 'libre', '2018-12-10', ''), +(11358, 168, 0, 21, '2019-01-17', 'am2', 'libre', '2018-12-10', ''), +(11359, 168, 0, 21, '2019-01-17', 'pm1', 'libre', '2018-12-10', ''), +(11360, 168, 0, 21, '2019-01-17', 'pm2', 'libre', '2018-12-10', ''), +(11361, 168, 0, 21, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(11362, 168, 0, 21, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(11363, 168, 0, 21, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(11364, 168, 0, 21, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(11365, 168, 0, 21, '2019-01-21', 'am1', 'libre', '2018-12-10', 'cap'), +(11366, 168, 0, 21, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(11367, 168, 0, 21, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(11368, 168, 0, 21, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(11369, 168, 0, 21, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(11370, 168, 0, 21, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(11371, 168, 0, 21, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(11372, 168, 0, 21, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(11373, 168, 0, 21, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(11374, 168, 0, 21, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(11375, 168, 0, 21, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(11376, 168, 0, 21, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(11377, 168, 0, 21, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(11378, 168, 0, 21, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(11379, 168, 0, 21, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(11380, 168, 0, 21, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(11381, 168, 0, 21, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(11382, 168, 0, 21, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(11383, 168, 0, 21, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(11384, 168, 0, 21, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(11385, 168, 0, 21, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(11386, 168, 0, 21, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(11387, 168, 0, 21, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(11388, 168, 0, 21, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(11389, 168, 0, 21, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(11390, 168, 0, 21, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(11391, 168, 0, 21, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(11392, 168, 0, 21, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(11393, 168, 0, 21, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(11394, 168, 0, 21, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(11395, 168, 0, 21, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(11396, 168, 0, 21, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(11397, 168, 0, 21, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(11398, 168, 0, 21, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(11399, 168, 0, 21, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(11400, 168, 0, 21, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(11401, 168, 0, 21, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(11402, 168, 0, 21, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(11403, 168, 0, 21, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(11404, 168, 0, 21, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(11405, 168, 0, 21, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(11406, 168, 0, 21, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(11407, 168, 0, 21, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(11408, 168, 0, 21, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(11409, 168, 0, 21, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(11410, 168, 0, 21, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(11411, 168, 0, 21, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(11412, 168, 0, 21, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(11413, 168, 0, 21, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(11414, 168, 0, 21, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(11415, 168, 0, 21, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(11416, 168, 0, 21, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(11417, 168, 0, 21, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(11418, 168, 0, 21, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(11419, 168, 0, 21, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(11420, 168, 0, 21, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(11421, 168, 0, 21, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(11422, 168, 0, 21, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(11423, 168, 0, 21, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(11424, 168, 0, 21, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(11426, 169, 0, 56, '2019-01-17', 'am2', 'bloque', '2018-12-10', 'ref'), +(11427, 169, 0, 56, '2019-01-17', 'pm1', 'bloque', '2018-12-10', 'ref'), +(11428, 169, 0, 56, '2019-01-17', 'pm2', 'bloque', '2018-12-10', 'ref'), +(11429, 169, 0, 56, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(11430, 169, 0, 56, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(11431, 169, 0, 56, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(11432, 169, 0, 56, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(11433, 169, 0, 56, '2019-01-21', 'am1', 'bloque', '2018-12-10', ''), +(11434, 169, 0, 56, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(11435, 169, 0, 56, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(11436, 169, 0, 56, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(11437, 169, 0, 56, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(11438, 169, 0, 56, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(11439, 169, 0, 56, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(11440, 169, 0, 56, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(11441, 169, 0, 56, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(11442, 169, 0, 56, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(11443, 169, 0, 56, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(11444, 169, 0, 56, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(11445, 169, 0, 56, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(11446, 169, 0, 56, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(11447, 169, 0, 56, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(11448, 169, 0, 56, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(11449, 169, 0, 56, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(11450, 169, 0, 56, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(11451, 169, 0, 56, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(11452, 169, 0, 56, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(11453, 169, 0, 56, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(11454, 169, 0, 56, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(11455, 169, 0, 56, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(11456, 169, 0, 56, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(11457, 169, 0, 56, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(11458, 169, 0, 56, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(11459, 169, 0, 56, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(11460, 169, 0, 56, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(11461, 169, 0, 56, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(11462, 169, 0, 56, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(11463, 169, 0, 56, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(11464, 169, 0, 56, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(11465, 169, 0, 56, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(11466, 169, 0, 56, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(11467, 169, 0, 56, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(11468, 169, 0, 56, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(11469, 169, 0, 56, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(11470, 169, 0, 56, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(11471, 169, 0, 56, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(11472, 169, 0, 56, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(11473, 169, 0, 56, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(11474, 169, 0, 56, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(11475, 169, 0, 56, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(11476, 169, 0, 56, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(11477, 169, 0, 56, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(11478, 169, 0, 56, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(11479, 169, 0, 56, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(11480, 169, 0, 56, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(11481, 169, 0, 56, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(11482, 169, 0, 56, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(11483, 169, 0, 56, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(11484, 169, 0, 56, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(11485, 169, 0, 56, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(11486, 169, 0, 56, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(11487, 169, 0, 56, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(11488, 169, 0, 56, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(11489, 169, 0, 56, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(11490, 169, 0, 56, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(11491, 169, 0, 56, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(11492, 169, 0, 56, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(11493, 170, 0, 53, '2019-01-17', 'am1', 'libre', '2018-12-10', ''), +(11494, 170, 0, 53, '2019-01-17', 'am2', 'libre', '2018-12-10', ''), +(11495, 170, 0, 53, '2019-01-17', 'pm1', 'libre', '2018-12-10', ''), +(11496, 170, 0, 53, '2019-01-17', 'pm2', 'libre', '2018-12-10', ''), +(11497, 170, 0, 53, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(11498, 170, 0, 53, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(11499, 170, 0, 53, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(11500, 170, 0, 53, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(11501, 170, 0, 53, '2019-01-21', 'am1', 'bloque', '2018-12-10', ''), +(11502, 170, 0, 53, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(11503, 170, 0, 53, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(11504, 170, 0, 53, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(11505, 170, 0, 53, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(11506, 170, 0, 53, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(11507, 170, 0, 53, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(11508, 170, 0, 53, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(11509, 170, 0, 53, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(11510, 170, 0, 53, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(11511, 170, 0, 53, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(11512, 170, 0, 53, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(11513, 170, 0, 53, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(11514, 170, 0, 53, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(11515, 170, 0, 53, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(11516, 170, 0, 53, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(11517, 170, 0, 53, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(11518, 170, 0, 53, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(11519, 170, 0, 53, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(11520, 170, 0, 53, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(11521, 170, 0, 53, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(11522, 170, 0, 53, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(11523, 170, 0, 53, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(11524, 170, 0, 53, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(11525, 170, 0, 53, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(11526, 170, 0, 53, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(11527, 170, 0, 53, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(11528, 170, 0, 53, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(11529, 170, 0, 53, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(11530, 170, 0, 53, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(11531, 170, 0, 53, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(11532, 170, 0, 53, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(11533, 170, 0, 53, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(11534, 170, 0, 53, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(11535, 170, 0, 53, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(11536, 170, 0, 53, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(11537, 170, 0, 53, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(11538, 170, 0, 53, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(11539, 170, 0, 53, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(11540, 170, 0, 53, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(11541, 170, 0, 53, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(11542, 170, 0, 53, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(11543, 170, 0, 53, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(11544, 170, 0, 53, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(11545, 170, 0, 53, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(11546, 170, 0, 53, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(11547, 170, 0, 53, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(11548, 170, 0, 53, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(11549, 170, 0, 53, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(11550, 170, 0, 53, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(11551, 170, 0, 53, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(11552, 170, 0, 53, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(11553, 170, 0, 53, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(11554, 170, 0, 53, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(11555, 170, 0, 53, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(11556, 170, 0, 53, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(11557, 170, 0, 53, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(11558, 170, 0, 53, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(11559, 170, 0, 53, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(11560, 170, 0, 53, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(11561, 171, 0, 24, '2019-01-17', 'am1', 'bloque', '2019-01-03', 'ref'), +(11562, 171, 49, 24, '2019-01-17', 'am2', 'reserve', '2018-12-11', 'ref'), +(11563, 171, 50, 24, '2019-01-17', 'pm1', 'reserve', '2018-12-11', 'ref'), +(11564, 171, 184, 24, '2019-01-17', 'pm2', 'reserve', '2019-01-03', 'ref'), +(11565, 171, 0, 24, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(11566, 171, 0, 24, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(11567, 171, 0, 24, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(11568, 171, 0, 24, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(11569, 171, 0, 24, '2019-01-21', 'am1', 'bloque', '2018-12-10', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(11570, 171, 0, 24, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(11571, 171, 0, 24, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(11572, 171, 0, 24, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(11573, 171, 0, 24, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(11574, 171, 0, 24, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(11575, 171, 0, 24, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(11576, 171, 0, 24, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(11577, 171, 0, 24, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(11578, 171, 0, 24, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(11579, 171, 0, 24, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(11580, 171, 0, 24, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(11581, 171, 0, 24, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(11582, 171, 0, 24, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(11583, 171, 0, 24, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(11584, 171, 0, 24, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(11585, 171, 0, 24, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(11586, 171, 0, 24, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(11587, 171, 0, 24, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(11588, 171, 0, 24, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(11589, 171, 0, 24, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(11590, 171, 0, 24, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(11591, 171, 0, 24, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(11592, 171, 0, 24, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(11593, 171, 0, 24, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(11594, 171, 0, 24, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(11595, 171, 0, 24, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(11596, 171, 0, 24, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(11597, 171, 0, 24, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(11598, 171, 0, 24, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(11599, 171, 0, 24, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(11600, 171, 0, 24, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(11601, 171, 0, 24, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(11602, 171, 0, 24, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(11603, 171, 0, 24, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(11604, 171, 0, 24, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(11605, 171, 0, 24, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(11606, 171, 0, 24, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(11607, 171, 0, 24, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(11608, 171, 0, 24, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(11609, 171, 0, 24, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(11610, 171, 0, 24, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(11611, 171, 0, 24, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(11612, 171, 0, 24, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(11613, 171, 0, 24, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(11614, 171, 0, 24, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(11615, 171, 0, 24, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(11616, 171, 0, 24, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(11617, 171, 0, 24, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(11618, 171, 0, 24, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(11619, 171, 0, 24, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(11620, 171, 0, 24, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(11621, 171, 0, 24, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(11622, 171, 0, 24, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(11623, 171, 0, 24, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(11624, 171, 0, 24, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(11625, 171, 0, 24, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(11626, 171, 0, 24, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(11627, 171, 0, 24, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(11628, 171, 0, 24, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(11629, 172, 0, 53, '2019-01-17', 'am1', 'libre', '2018-12-10', ''), +(11630, 172, 0, 53, '2019-01-17', 'am2', 'libre', '2018-12-10', ''), +(11631, 172, 0, 53, '2019-01-17', 'pm1', 'libre', '2018-12-10', ''), +(11632, 172, 0, 53, '2019-01-17', 'pm2', 'libre', '2018-12-10', ''), +(11633, 172, 0, 53, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(11634, 172, 0, 53, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(11635, 172, 0, 53, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(11636, 172, 0, 53, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(11637, 172, 0, 53, '2019-01-21', 'am1', 'bloque', '2018-12-10', ''), +(11638, 172, 0, 53, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(11639, 172, 0, 53, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(11640, 172, 0, 53, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(11641, 172, 0, 53, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(11642, 172, 0, 53, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(11643, 172, 0, 53, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(11644, 172, 0, 53, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(11645, 172, 0, 53, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(11646, 172, 0, 53, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(11647, 172, 0, 53, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(11648, 172, 0, 53, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(11649, 172, 0, 53, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(11650, 172, 0, 53, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(11651, 172, 0, 53, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(11652, 172, 0, 53, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(11653, 172, 0, 53, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(11654, 172, 0, 53, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(11655, 172, 0, 53, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(11656, 172, 0, 53, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(11657, 172, 0, 53, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(11658, 172, 0, 53, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(11659, 172, 0, 53, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(11660, 172, 0, 53, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(11661, 172, 0, 53, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(11662, 172, 0, 53, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(11663, 172, 0, 53, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(11664, 172, 0, 53, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(11665, 172, 0, 53, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(11666, 172, 0, 53, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(11667, 172, 0, 53, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(11668, 172, 0, 53, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(11669, 172, 0, 53, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(11670, 172, 0, 53, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(11671, 172, 0, 53, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(11672, 172, 0, 53, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(11673, 172, 0, 53, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(11674, 172, 0, 53, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(11675, 172, 0, 53, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(11676, 172, 0, 53, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(11677, 172, 0, 53, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(11678, 172, 0, 53, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(11679, 172, 0, 53, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(11680, 172, 0, 53, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(11681, 172, 0, 53, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(11682, 172, 0, 53, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(11683, 172, 0, 53, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(11684, 172, 0, 53, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(11685, 172, 0, 53, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(11686, 172, 0, 53, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(11687, 172, 0, 53, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(11688, 172, 0, 53, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(11689, 172, 0, 53, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(11690, 172, 0, 53, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(11691, 172, 0, 53, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(11692, 172, 0, 53, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(11693, 172, 0, 53, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(11694, 172, 0, 53, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(11695, 172, 0, 53, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(11696, 172, 0, 53, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(11697, 173, 96, 27, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'ref'), +(11698, 173, 97, 27, '2019-01-17', 'am2', 'reserve', '2018-12-18', 'ref'), +(11699, 173, 0, 27, '2019-01-17', 'pm1', 'libre', '2018-12-10', ''), +(11700, 173, 0, 27, '2019-01-17', 'pm2', 'libre', '2018-12-10', ''), +(11701, 173, 0, 27, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(11702, 173, 0, 27, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(11703, 173, 0, 27, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(11704, 173, 0, 27, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(11705, 173, 0, 27, '2019-01-21', 'am1', 'bloque', '2018-12-10', ''), +(11706, 173, 0, 27, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(11707, 173, 0, 27, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(11708, 173, 0, 27, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(11709, 173, 0, 27, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(11710, 173, 0, 27, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(11711, 173, 0, 27, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(11712, 173, 0, 27, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(11713, 173, 0, 27, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(11714, 173, 0, 27, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(11715, 173, 0, 27, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(11716, 173, 0, 27, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(11717, 173, 0, 27, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(11718, 173, 0, 27, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(11719, 173, 0, 27, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(11720, 173, 0, 27, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(11721, 173, 0, 27, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(11722, 173, 0, 27, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(11723, 173, 0, 27, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(11724, 173, 0, 27, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(11725, 173, 0, 27, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(11726, 173, 0, 27, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(11727, 173, 0, 27, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(11728, 173, 0, 27, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(11729, 173, 0, 27, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(11730, 173, 0, 27, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(11731, 173, 0, 27, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(11732, 173, 0, 27, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(11733, 173, 0, 27, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(11734, 173, 0, 27, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(11735, 173, 0, 27, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(11736, 173, 0, 27, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(11737, 173, 0, 27, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(11738, 173, 0, 27, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(11739, 173, 0, 27, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(11740, 173, 0, 27, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(11741, 173, 0, 27, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(11742, 173, 0, 27, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(11743, 173, 0, 27, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(11744, 173, 0, 27, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(11745, 173, 0, 27, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(11746, 173, 0, 27, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(11747, 173, 0, 27, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(11748, 173, 0, 27, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(11749, 173, 0, 27, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(11750, 173, 0, 27, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(11751, 173, 0, 27, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(11752, 173, 0, 27, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(11753, 173, 0, 27, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(11754, 173, 0, 27, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(11755, 173, 0, 27, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(11756, 173, 0, 27, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(11757, 173, 0, 27, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(11758, 173, 0, 27, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(11759, 173, 0, 27, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(11760, 173, 0, 27, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(11761, 173, 0, 27, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(11762, 173, 0, 27, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(11763, 173, 0, 27, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(11764, 173, 0, 27, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(11765, 174, 0, 230, '2019-01-17', 'am1', 'libre', '2018-12-10', ''), +(11766, 174, 0, 230, '2019-01-17', 'am2', 'libre', '2018-12-10', ''), +(11767, 174, 0, 230, '2019-01-17', 'pm1', 'libre', '2018-12-10', ''), +(11768, 174, 0, 230, '2019-01-17', 'pm2', 'libre', '2018-12-10', ''), +(11769, 174, 0, 230, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(11770, 174, 0, 230, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(11771, 174, 0, 230, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(11772, 174, 0, 230, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(11773, 174, 0, 230, '2019-01-21', 'am1', 'bloque', '2018-12-10', ''), +(11774, 174, 0, 230, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(11775, 174, 0, 230, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(11776, 174, 0, 230, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(11777, 174, 0, 230, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(11778, 174, 0, 230, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(11779, 174, 0, 230, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(11780, 174, 0, 230, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(11781, 174, 0, 230, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(11782, 174, 0, 230, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(11783, 174, 0, 230, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(11784, 174, 0, 230, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(11785, 174, 0, 230, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(11786, 174, 0, 230, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(11787, 174, 0, 230, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(11788, 174, 0, 230, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(11789, 174, 0, 230, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(11790, 174, 0, 230, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(11791, 174, 0, 230, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(11792, 174, 0, 230, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(11793, 174, 0, 230, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(11794, 174, 0, 230, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(11795, 174, 0, 230, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(11796, 174, 0, 230, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(11797, 174, 0, 230, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(11798, 174, 0, 230, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(11799, 174, 0, 230, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(11800, 174, 0, 230, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(11801, 174, 0, 230, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(11802, 174, 0, 230, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(11803, 174, 0, 230, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(11804, 174, 0, 230, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(11805, 174, 0, 230, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(11806, 174, 0, 230, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(11807, 174, 0, 230, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(11808, 174, 0, 230, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(11809, 174, 0, 230, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(11810, 174, 0, 230, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(11811, 174, 0, 230, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(11812, 174, 0, 230, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(11813, 174, 0, 230, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(11814, 174, 0, 230, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(11815, 174, 0, 230, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(11816, 174, 0, 230, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(11817, 174, 0, 230, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(11818, 174, 0, 230, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(11819, 174, 0, 230, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(11820, 174, 0, 230, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(11821, 174, 0, 230, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(11822, 174, 0, 230, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(11823, 174, 0, 230, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(11824, 174, 0, 230, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(11825, 174, 0, 230, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(11826, 174, 0, 230, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(11827, 174, 0, 230, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(11828, 174, 0, 230, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(11829, 174, 0, 230, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(11830, 174, 0, 230, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(11831, 174, 0, 230, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(11832, 174, 0, 230, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(11833, 175, 0, 243, '2019-01-17', 'am1', 'libre', '2018-12-10', ''), +(11834, 175, 0, 243, '2019-01-17', 'am2', 'libre', '2018-12-10', ''), +(11835, 175, 0, 243, '2019-01-17', 'pm1', 'libre', '2018-12-10', ''), +(11836, 175, 0, 243, '2019-01-17', 'pm2', 'libre', '2018-12-10', ''), +(11837, 175, 0, 243, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(11838, 175, 0, 243, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(11839, 175, 0, 243, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(11840, 175, 0, 243, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(11841, 175, 0, 243, '2019-01-21', 'am1', 'bloque', '2018-12-10', ''), +(11842, 175, 0, 243, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(11843, 175, 0, 243, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(11844, 175, 0, 243, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(11845, 175, 0, 243, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(11846, 175, 0, 243, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(11847, 175, 0, 243, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(11848, 175, 0, 243, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(11849, 175, 0, 243, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(11850, 175, 0, 243, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(11851, 175, 0, 243, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(11852, 175, 0, 243, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(11853, 175, 0, 243, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(11854, 175, 0, 243, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(11855, 175, 0, 243, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(11856, 175, 0, 243, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(11857, 175, 0, 243, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(11858, 175, 0, 243, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(11859, 175, 0, 243, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(11860, 175, 0, 243, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(11861, 175, 0, 243, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(11862, 175, 0, 243, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(11863, 175, 0, 243, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(11864, 175, 0, 243, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(11865, 175, 0, 243, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(11866, 175, 0, 243, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(11867, 175, 0, 243, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(11868, 175, 0, 243, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(11869, 175, 0, 243, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(11870, 175, 0, 243, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(11871, 175, 0, 243, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(11872, 175, 0, 243, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(11873, 175, 0, 243, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(11874, 175, 0, 243, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(11875, 175, 0, 243, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(11876, 175, 0, 243, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(11877, 175, 0, 243, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(11878, 175, 0, 243, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(11879, 175, 0, 243, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(11880, 175, 0, 243, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(11881, 175, 0, 243, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(11882, 175, 0, 243, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(11883, 175, 0, 243, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(11884, 175, 0, 243, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(11885, 175, 0, 243, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(11886, 175, 0, 243, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(11887, 175, 0, 243, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(11888, 175, 0, 243, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(11889, 175, 0, 243, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(11890, 175, 0, 243, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(11891, 175, 0, 243, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(11892, 175, 0, 243, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(11893, 175, 0, 243, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(11894, 175, 0, 243, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(11895, 175, 0, 243, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(11896, 175, 0, 243, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(11897, 175, 0, 243, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(11898, 175, 0, 243, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(11899, 175, 0, 243, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(11900, 175, 0, 243, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(11901, 176, 0, 243, '2019-01-17', 'am1', 'libre', '2018-12-10', ''), +(11902, 176, 0, 243, '2019-01-17', 'am2', 'libre', '2018-12-10', ''), +(11903, 176, 0, 243, '2019-01-17', 'pm1', 'libre', '2018-12-10', ''), +(11904, 176, 0, 243, '2019-01-17', 'pm2', 'libre', '2018-12-10', ''), +(11905, 176, 0, 243, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(11906, 176, 0, 243, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(11907, 176, 0, 243, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(11908, 176, 0, 243, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(11909, 176, 0, 243, '2019-01-21', 'am1', 'bloque', '2018-12-10', ''), +(11910, 176, 0, 243, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(11911, 176, 0, 243, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(11912, 176, 0, 243, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(11913, 176, 0, 243, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(11914, 176, 0, 243, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(11915, 176, 0, 243, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(11916, 176, 0, 243, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(11917, 176, 0, 243, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(11918, 176, 0, 243, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(11919, 176, 0, 243, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(11920, 176, 0, 243, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(11921, 176, 0, 243, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(11922, 176, 0, 243, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(11923, 176, 0, 243, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(11924, 176, 0, 243, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(11925, 176, 0, 243, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(11926, 176, 0, 243, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(11927, 176, 0, 243, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(11928, 176, 0, 243, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(11929, 176, 0, 243, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(11930, 176, 0, 243, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(11931, 176, 0, 243, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(11932, 176, 0, 243, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(11933, 176, 0, 243, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(11934, 176, 0, 243, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(11935, 176, 0, 243, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(11936, 176, 0, 243, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(11937, 176, 0, 243, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(11938, 176, 0, 243, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(11939, 176, 0, 243, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(11940, 176, 0, 243, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(11941, 176, 0, 243, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(11942, 176, 0, 243, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(11943, 176, 0, 243, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(11944, 176, 0, 243, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(11945, 176, 0, 243, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(11946, 176, 0, 243, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(11947, 176, 0, 243, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(11948, 176, 0, 243, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(11949, 176, 0, 243, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(11950, 176, 0, 243, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(11951, 176, 0, 243, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(11952, 176, 0, 243, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(11953, 176, 0, 243, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(11954, 176, 0, 243, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(11955, 176, 0, 243, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(11956, 176, 0, 243, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(11957, 176, 0, 243, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(11958, 176, 0, 243, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(11959, 176, 0, 243, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(11960, 176, 0, 243, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(11961, 176, 0, 243, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(11962, 176, 0, 243, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(11963, 176, 0, 243, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(11964, 176, 0, 243, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(11965, 176, 0, 243, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(11966, 176, 0, 243, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(11967, 176, 0, 243, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(11968, 176, 0, 243, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(11969, 177, 0, 243, '2019-01-17', 'am1', 'libre', '2018-12-10', ''), +(11970, 177, 0, 243, '2019-01-17', 'am2', 'libre', '2018-12-10', ''), +(11971, 177, 0, 243, '2019-01-17', 'pm1', 'libre', '2018-12-10', ''), +(11972, 177, 0, 243, '2019-01-17', 'pm2', 'libre', '2018-12-10', ''), +(11973, 177, 0, 243, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(11974, 177, 0, 243, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(11975, 177, 0, 243, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(11976, 177, 0, 243, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(11977, 177, 0, 243, '2019-01-21', 'am1', 'bloque', '2018-12-10', ''), +(11978, 177, 0, 243, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(11979, 177, 0, 243, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(11980, 177, 0, 243, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(11981, 177, 0, 243, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(11982, 177, 0, 243, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(11983, 177, 0, 243, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(11984, 177, 0, 243, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(11985, 177, 0, 243, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(11986, 177, 0, 243, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(11987, 177, 0, 243, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(11988, 177, 0, 243, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(11989, 177, 0, 243, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(11990, 177, 0, 243, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(11991, 177, 0, 243, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(11992, 177, 0, 243, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(11993, 177, 0, 243, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(11994, 177, 0, 243, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(11995, 177, 0, 243, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(11996, 177, 0, 243, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(11997, 177, 0, 243, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(11998, 177, 0, 243, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(11999, 177, 0, 243, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(12000, 177, 0, 243, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(12001, 177, 0, 243, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(12002, 177, 0, 243, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(12003, 177, 0, 243, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(12004, 177, 0, 243, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(12005, 177, 0, 243, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(12006, 177, 0, 243, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(12007, 177, 0, 243, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(12008, 177, 0, 243, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(12009, 177, 0, 243, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(12010, 177, 0, 243, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(12011, 177, 0, 243, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(12012, 177, 0, 243, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(12013, 177, 0, 243, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(12014, 177, 0, 243, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(12015, 177, 0, 243, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(12016, 177, 0, 243, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(12017, 177, 0, 243, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(12018, 177, 0, 243, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(12019, 177, 0, 243, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(12020, 177, 0, 243, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(12021, 177, 0, 243, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(12022, 177, 0, 243, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(12023, 177, 0, 243, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(12024, 177, 0, 243, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(12025, 177, 0, 243, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(12026, 177, 0, 243, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(12027, 177, 0, 243, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(12028, 177, 0, 243, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(12029, 177, 0, 243, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(12030, 177, 0, 243, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(12031, 177, 0, 243, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(12032, 177, 0, 243, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(12033, 177, 0, 243, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(12034, 177, 0, 243, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(12035, 177, 0, 243, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(12036, 177, 0, 243, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(12037, 178, 191, 22, '2019-01-17', 'am1', 'reserve', '2019-01-04', 'cap'), +(12038, 178, 192, 22, '2019-01-17', 'am2', 'reserve', '2019-01-04', 'cap'), +(12039, 178, 0, 22, '2019-01-17', 'pm1', 'bloque', '2018-12-11', 'cap'), +(12040, 178, 0, 22, '2019-01-17', 'pm2', 'bloque', '2018-12-11', 'cap'), +(12041, 178, 0, 22, '2019-01-18', 'am1', 'bloque', '2018-12-10', ''), +(12042, 178, 0, 22, '2019-01-18', 'am2', 'bloque', '2018-12-10', ''), +(12043, 178, 0, 22, '2019-01-18', 'pm1', 'bloque', '2018-12-10', ''), +(12044, 178, 0, 22, '2019-01-18', 'pm2', 'bloque', '2018-12-10', ''), +(12045, 178, 0, 22, '2019-01-21', 'am1', 'bloque', '2018-12-10', ''), +(12046, 178, 0, 22, '2019-01-21', 'am2', 'bloque', '2018-12-10', ''), +(12047, 178, 0, 22, '2019-01-21', 'pm1', 'bloque', '2018-12-10', ''), +(12048, 178, 0, 22, '2019-01-21', 'pm2', 'bloque', '2018-12-10', ''), +(12049, 178, 0, 22, '2019-01-22', 'am1', 'bloque', '2018-12-10', ''), +(12050, 178, 0, 22, '2019-01-22', 'am2', 'bloque', '2018-12-10', ''), +(12051, 178, 0, 22, '2019-01-22', 'pm1', 'bloque', '2018-12-10', ''), +(12052, 178, 0, 22, '2019-01-22', 'pm2', 'bloque', '2018-12-10', ''), +(12053, 178, 0, 22, '2019-01-23', 'am1', 'bloque', '2018-12-10', ''), +(12054, 178, 0, 22, '2019-01-23', 'am2', 'bloque', '2018-12-10', ''), +(12055, 178, 0, 22, '2019-01-23', 'pm1', 'bloque', '2018-12-10', ''), +(12056, 178, 0, 22, '2019-01-23', 'pm2', 'bloque', '2018-12-10', ''), +(12057, 178, 0, 22, '2019-01-24', 'am1', 'bloque', '2018-12-10', ''), +(12058, 178, 0, 22, '2019-01-24', 'am2', 'bloque', '2018-12-10', ''), +(12059, 178, 0, 22, '2019-01-24', 'pm1', 'bloque', '2018-12-10', ''), +(12060, 178, 0, 22, '2019-01-24', 'pm2', 'bloque', '2018-12-10', ''), +(12061, 178, 0, 22, '2019-01-25', 'am1', 'bloque', '2018-12-10', ''), +(12062, 178, 0, 22, '2019-01-25', 'am2', 'bloque', '2018-12-10', ''), +(12063, 178, 0, 22, '2019-01-25', 'pm1', 'bloque', '2018-12-10', ''), +(12064, 178, 0, 22, '2019-01-25', 'pm2', 'bloque', '2018-12-10', ''), +(12065, 178, 0, 22, '2019-01-28', 'am1', 'bloque', '2018-12-10', ''), +(12066, 178, 0, 22, '2019-01-28', 'am2', 'bloque', '2018-12-10', ''), +(12067, 178, 0, 22, '2019-01-28', 'pm1', 'bloque', '2018-12-10', ''), +(12068, 178, 0, 22, '2019-01-28', 'pm2', 'bloque', '2018-12-10', ''), +(12069, 178, 0, 22, '2019-01-29', 'am1', 'bloque', '2018-12-10', ''), +(12070, 178, 0, 22, '2019-01-29', 'am2', 'bloque', '2018-12-10', ''), +(12071, 178, 0, 22, '2019-01-29', 'pm1', 'bloque', '2018-12-10', ''), +(12072, 178, 0, 22, '2019-01-29', 'pm2', 'bloque', '2018-12-10', ''), +(12073, 178, 0, 22, '2019-01-30', 'am1', 'bloque', '2018-12-10', ''), +(12074, 178, 0, 22, '2019-01-30', 'am2', 'bloque', '2018-12-10', ''), +(12075, 178, 0, 22, '2019-01-30', 'pm1', 'bloque', '2018-12-10', ''), +(12076, 178, 0, 22, '2019-01-30', 'pm2', 'bloque', '2018-12-10', ''), +(12077, 178, 0, 22, '2019-01-31', 'am1', 'bloque', '2018-12-10', ''), +(12078, 178, 0, 22, '2019-01-31', 'am2', 'bloque', '2018-12-10', ''), +(12079, 178, 0, 22, '2019-01-31', 'pm1', 'bloque', '2018-12-10', ''), +(12080, 178, 0, 22, '2019-01-31', 'pm2', 'bloque', '2018-12-10', ''), +(12081, 178, 0, 22, '2019-02-01', 'am1', 'bloque', '2018-12-10', ''), +(12082, 178, 0, 22, '2019-02-01', 'am2', 'bloque', '2018-12-10', ''), +(12083, 178, 0, 22, '2019-02-01', 'pm1', 'bloque', '2018-12-10', ''), +(12084, 178, 0, 22, '2019-02-01', 'pm2', 'bloque', '2018-12-10', ''), +(12085, 178, 0, 22, '2019-02-04', 'am1', 'bloque', '2018-12-10', ''), +(12086, 178, 0, 22, '2019-02-04', 'am2', 'bloque', '2018-12-10', ''), +(12087, 178, 0, 22, '2019-02-04', 'pm1', 'bloque', '2018-12-10', ''), +(12088, 178, 0, 22, '2019-02-04', 'pm2', 'bloque', '2018-12-10', ''), +(12089, 178, 0, 22, '2019-02-05', 'am1', 'bloque', '2018-12-10', ''), +(12090, 178, 0, 22, '2019-02-05', 'am2', 'bloque', '2018-12-10', ''), +(12091, 178, 0, 22, '2019-02-05', 'pm1', 'bloque', '2018-12-10', ''), +(12092, 178, 0, 22, '2019-02-05', 'pm2', 'bloque', '2018-12-10', ''), +(12093, 178, 0, 22, '2019-02-06', 'am1', 'bloque', '2018-12-10', ''), +(12094, 178, 0, 22, '2019-02-06', 'am2', 'bloque', '2018-12-10', ''), +(12095, 178, 0, 22, '2019-02-06', 'pm1', 'bloque', '2018-12-10', ''), +(12096, 178, 0, 22, '2019-02-06', 'pm2', 'bloque', '2018-12-10', ''), +(12097, 178, 0, 22, '2019-02-07', 'am1', 'bloque', '2018-12-10', ''), +(12098, 178, 0, 22, '2019-02-07', 'am2', 'bloque', '2018-12-10', ''), +(12099, 178, 0, 22, '2019-02-07', 'pm1', 'bloque', '2018-12-10', ''), +(12100, 178, 0, 22, '2019-02-07', 'pm2', 'bloque', '2018-12-10', ''), +(12101, 178, 0, 22, '2019-02-08', 'am1', 'bloque', '2018-12-10', ''), +(12102, 178, 0, 22, '2019-02-08', 'am2', 'bloque', '2018-12-10', ''), +(12103, 178, 0, 22, '2019-02-08', 'pm1', 'bloque', '2018-12-10', ''), +(12104, 178, 0, 22, '2019-02-08', 'pm2', 'bloque', '2018-12-10', ''), +(12105, 179, 0, 162, '2019-01-17', 'am1', 'libre', '2018-12-11', ''), +(12106, 179, 0, 162, '2019-01-17', 'am2', 'libre', '2018-12-11', ''), +(12107, 179, 0, 162, '2019-01-17', 'pm1', 'libre', '2018-12-11', ''), +(12108, 179, 0, 162, '2019-01-17', 'pm2', 'libre', '2018-12-11', ''), +(12109, 179, 0, 162, '2019-01-18', 'am1', 'bloque', '2018-12-11', ''), +(12110, 179, 0, 162, '2019-01-18', 'am2', 'bloque', '2018-12-11', ''), +(12111, 179, 0, 162, '2019-01-18', 'pm1', 'bloque', '2018-12-11', ''), +(12112, 179, 0, 162, '2019-01-18', 'pm2', 'bloque', '2018-12-11', ''), +(12113, 179, 0, 162, '2019-01-21', 'am1', 'bloque', '2018-12-11', ''), +(12114, 179, 0, 162, '2019-01-21', 'am2', 'bloque', '2018-12-11', ''), +(12115, 179, 0, 162, '2019-01-21', 'pm1', 'bloque', '2018-12-11', ''), +(12116, 179, 0, 162, '2019-01-21', 'pm2', 'bloque', '2018-12-11', ''), +(12117, 179, 0, 162, '2019-01-22', 'am1', 'bloque', '2018-12-11', ''), +(12118, 179, 0, 162, '2019-01-22', 'am2', 'bloque', '2018-12-11', ''), +(12119, 179, 0, 162, '2019-01-22', 'pm1', 'bloque', '2018-12-11', ''), +(12120, 179, 0, 162, '2019-01-22', 'pm2', 'bloque', '2018-12-11', ''), +(12121, 179, 0, 162, '2019-01-23', 'am1', 'bloque', '2018-12-11', ''), +(12122, 179, 0, 162, '2019-01-23', 'am2', 'bloque', '2018-12-11', ''), +(12123, 179, 0, 162, '2019-01-23', 'pm1', 'bloque', '2018-12-11', ''), +(12124, 179, 0, 162, '2019-01-23', 'pm2', 'bloque', '2018-12-11', ''), +(12125, 179, 0, 162, '2019-01-24', 'am1', 'bloque', '2018-12-11', ''), +(12126, 179, 0, 162, '2019-01-24', 'am2', 'bloque', '2018-12-11', ''), +(12127, 179, 0, 162, '2019-01-24', 'pm1', 'bloque', '2018-12-11', ''), +(12128, 179, 0, 162, '2019-01-24', 'pm2', 'bloque', '2018-12-11', ''), +(12129, 179, 0, 162, '2019-01-25', 'am1', 'bloque', '2018-12-11', ''), +(12130, 179, 0, 162, '2019-01-25', 'am2', 'bloque', '2018-12-11', ''), +(12131, 179, 0, 162, '2019-01-25', 'pm1', 'bloque', '2018-12-11', ''), +(12132, 179, 0, 162, '2019-01-25', 'pm2', 'bloque', '2018-12-11', ''), +(12133, 179, 0, 162, '2019-01-28', 'am1', 'bloque', '2018-12-11', ''), +(12134, 179, 0, 162, '2019-01-28', 'am2', 'bloque', '2018-12-11', ''), +(12135, 179, 0, 162, '2019-01-28', 'pm1', 'bloque', '2018-12-11', ''), +(12136, 179, 0, 162, '2019-01-28', 'pm2', 'bloque', '2018-12-11', ''), +(12137, 179, 0, 162, '2019-01-29', 'am1', 'bloque', '2018-12-11', ''), +(12138, 179, 0, 162, '2019-01-29', 'am2', 'bloque', '2018-12-11', ''), +(12139, 179, 0, 162, '2019-01-29', 'pm1', 'bloque', '2018-12-11', ''), +(12140, 179, 0, 162, '2019-01-29', 'pm2', 'bloque', '2018-12-11', ''), +(12141, 179, 0, 162, '2019-01-30', 'am1', 'bloque', '2018-12-11', ''), +(12142, 179, 0, 162, '2019-01-30', 'am2', 'bloque', '2018-12-11', ''), +(12143, 179, 0, 162, '2019-01-30', 'pm1', 'bloque', '2018-12-11', ''), +(12144, 179, 0, 162, '2019-01-30', 'pm2', 'bloque', '2018-12-11', ''), +(12145, 179, 0, 162, '2019-01-31', 'am1', 'bloque', '2018-12-11', ''), +(12146, 179, 0, 162, '2019-01-31', 'am2', 'bloque', '2018-12-11', ''), +(12147, 179, 0, 162, '2019-01-31', 'pm1', 'bloque', '2018-12-11', ''), +(12148, 179, 0, 162, '2019-01-31', 'pm2', 'bloque', '2018-12-11', ''), +(12149, 179, 0, 162, '2019-02-01', 'am1', 'bloque', '2018-12-11', ''), +(12150, 179, 0, 162, '2019-02-01', 'am2', 'bloque', '2018-12-11', ''), +(12151, 179, 0, 162, '2019-02-01', 'pm1', 'bloque', '2018-12-11', ''), +(12152, 179, 0, 162, '2019-02-01', 'pm2', 'bloque', '2018-12-11', ''), +(12153, 179, 0, 162, '2019-02-04', 'am1', 'bloque', '2018-12-11', ''), +(12154, 179, 0, 162, '2019-02-04', 'am2', 'bloque', '2018-12-11', ''), +(12155, 179, 0, 162, '2019-02-04', 'pm1', 'bloque', '2018-12-11', ''), +(12156, 179, 0, 162, '2019-02-04', 'pm2', 'bloque', '2018-12-11', ''), +(12157, 179, 0, 162, '2019-02-05', 'am1', 'bloque', '2018-12-11', ''), +(12158, 179, 0, 162, '2019-02-05', 'am2', 'bloque', '2018-12-11', ''), +(12159, 179, 0, 162, '2019-02-05', 'pm1', 'bloque', '2018-12-11', ''), +(12160, 179, 0, 162, '2019-02-05', 'pm2', 'bloque', '2018-12-11', ''), +(12161, 179, 0, 162, '2019-02-06', 'am1', 'bloque', '2018-12-11', ''), +(12162, 179, 0, 162, '2019-02-06', 'am2', 'bloque', '2018-12-11', ''), +(12163, 179, 0, 162, '2019-02-06', 'pm1', 'bloque', '2018-12-11', ''), +(12164, 179, 0, 162, '2019-02-06', 'pm2', 'bloque', '2018-12-11', ''), +(12165, 179, 0, 162, '2019-02-07', 'am1', 'bloque', '2018-12-11', ''), +(12166, 179, 0, 162, '2019-02-07', 'am2', 'bloque', '2018-12-11', ''), +(12167, 179, 0, 162, '2019-02-07', 'pm1', 'bloque', '2018-12-11', ''), +(12168, 179, 0, 162, '2019-02-07', 'pm2', 'bloque', '2018-12-11', ''), +(12169, 179, 0, 162, '2019-02-08', 'am1', 'bloque', '2018-12-11', ''), +(12170, 179, 0, 162, '2019-02-08', 'am2', 'bloque', '2018-12-11', ''), +(12171, 179, 0, 162, '2019-02-08', 'pm1', 'bloque', '2018-12-11', ''), +(12172, 179, 0, 162, '2019-02-08', 'pm2', 'bloque', '2018-12-11', ''), +(12173, 180, 203, 174, '2019-01-17', 'am1', 'reserve', '2019-01-07', 'ref'), +(12174, 180, 0, 174, '2019-01-17', 'am2', 'libre', '2018-12-11', ''), +(12175, 180, 204, 174, '2019-01-17', 'pm1', 'reserve', '2019-01-07', 'ref'), +(12176, 180, 0, 174, '2019-01-17', 'pm2', 'libre', '2018-12-11', ''), +(12177, 180, 0, 174, '2019-01-18', 'am1', 'bloque', '2018-12-11', ''), +(12178, 180, 0, 174, '2019-01-18', 'am2', 'bloque', '2018-12-11', ''), +(12179, 180, 0, 174, '2019-01-18', 'pm1', 'bloque', '2018-12-11', ''), +(12180, 180, 0, 174, '2019-01-18', 'pm2', 'bloque', '2018-12-11', ''), +(12181, 180, 0, 174, '2019-01-21', 'am1', 'bloque', '2018-12-11', ''), +(12182, 180, 0, 174, '2019-01-21', 'am2', 'bloque', '2018-12-11', ''), +(12183, 180, 0, 174, '2019-01-21', 'pm1', 'bloque', '2018-12-11', ''), +(12184, 180, 0, 174, '2019-01-21', 'pm2', 'bloque', '2018-12-11', ''), +(12185, 180, 0, 174, '2019-01-22', 'am1', 'bloque', '2018-12-11', ''), +(12186, 180, 0, 174, '2019-01-22', 'am2', 'bloque', '2018-12-11', ''), +(12187, 180, 0, 174, '2019-01-22', 'pm1', 'bloque', '2018-12-11', ''), +(12188, 180, 0, 174, '2019-01-22', 'pm2', 'bloque', '2018-12-11', ''), +(12189, 180, 0, 174, '2019-01-23', 'am1', 'bloque', '2018-12-11', ''), +(12190, 180, 0, 174, '2019-01-23', 'am2', 'bloque', '2018-12-11', ''), +(12191, 180, 0, 174, '2019-01-23', 'pm1', 'bloque', '2018-12-11', ''), +(12192, 180, 0, 174, '2019-01-23', 'pm2', 'bloque', '2018-12-11', ''), +(12193, 180, 0, 174, '2019-01-24', 'am1', 'bloque', '2018-12-11', ''), +(12194, 180, 0, 174, '2019-01-24', 'am2', 'bloque', '2018-12-11', ''), +(12195, 180, 0, 174, '2019-01-24', 'pm1', 'bloque', '2018-12-11', ''), +(12196, 180, 0, 174, '2019-01-24', 'pm2', 'bloque', '2018-12-11', ''), +(12197, 180, 0, 174, '2019-01-25', 'am1', 'bloque', '2018-12-11', ''), +(12198, 180, 0, 174, '2019-01-25', 'am2', 'bloque', '2018-12-11', ''), +(12199, 180, 0, 174, '2019-01-25', 'pm1', 'bloque', '2018-12-11', ''), +(12200, 180, 0, 174, '2019-01-25', 'pm2', 'bloque', '2018-12-11', ''), +(12201, 180, 0, 174, '2019-01-28', 'am1', 'bloque', '2018-12-11', ''), +(12202, 180, 0, 174, '2019-01-28', 'am2', 'bloque', '2018-12-11', ''), +(12203, 180, 0, 174, '2019-01-28', 'pm1', 'bloque', '2018-12-11', ''), +(12204, 180, 0, 174, '2019-01-28', 'pm2', 'bloque', '2018-12-11', ''), +(12205, 180, 0, 174, '2019-01-29', 'am1', 'bloque', '2018-12-11', ''), +(12206, 180, 0, 174, '2019-01-29', 'am2', 'bloque', '2018-12-11', ''), +(12207, 180, 0, 174, '2019-01-29', 'pm1', 'bloque', '2018-12-11', ''), +(12208, 180, 0, 174, '2019-01-29', 'pm2', 'bloque', '2018-12-11', ''), +(12209, 180, 0, 174, '2019-01-30', 'am1', 'bloque', '2018-12-11', ''), +(12210, 180, 0, 174, '2019-01-30', 'am2', 'bloque', '2018-12-11', ''), +(12211, 180, 0, 174, '2019-01-30', 'pm1', 'bloque', '2018-12-11', ''), +(12212, 180, 0, 174, '2019-01-30', 'pm2', 'bloque', '2018-12-11', ''), +(12213, 180, 0, 174, '2019-01-31', 'am1', 'bloque', '2018-12-11', ''), +(12214, 180, 0, 174, '2019-01-31', 'am2', 'bloque', '2018-12-11', ''), +(12215, 180, 0, 174, '2019-01-31', 'pm1', 'bloque', '2018-12-11', ''), +(12216, 180, 0, 174, '2019-01-31', 'pm2', 'bloque', '2018-12-11', ''), +(12217, 180, 0, 174, '2019-02-01', 'am1', 'bloque', '2018-12-11', ''), +(12218, 180, 0, 174, '2019-02-01', 'am2', 'bloque', '2018-12-11', ''), +(12219, 180, 0, 174, '2019-02-01', 'pm1', 'bloque', '2018-12-11', ''), +(12220, 180, 0, 174, '2019-02-01', 'pm2', 'bloque', '2018-12-11', ''), +(12221, 180, 0, 174, '2019-02-04', 'am1', 'bloque', '2018-12-11', ''), +(12222, 180, 0, 174, '2019-02-04', 'am2', 'bloque', '2018-12-11', ''), +(12223, 180, 0, 174, '2019-02-04', 'pm1', 'bloque', '2018-12-11', ''), +(12224, 180, 0, 174, '2019-02-04', 'pm2', 'bloque', '2018-12-11', ''), +(12225, 180, 0, 174, '2019-02-05', 'am1', 'bloque', '2018-12-11', ''), +(12226, 180, 0, 174, '2019-02-05', 'am2', 'bloque', '2018-12-11', ''), +(12227, 180, 0, 174, '2019-02-05', 'pm1', 'bloque', '2018-12-11', ''), +(12228, 180, 0, 174, '2019-02-05', 'pm2', 'bloque', '2018-12-11', ''), +(12229, 180, 0, 174, '2019-02-06', 'am1', 'bloque', '2018-12-11', ''), +(12230, 180, 0, 174, '2019-02-06', 'am2', 'bloque', '2018-12-11', ''), +(12231, 180, 0, 174, '2019-02-06', 'pm1', 'bloque', '2018-12-11', ''), +(12232, 180, 0, 174, '2019-02-06', 'pm2', 'bloque', '2018-12-11', ''), +(12233, 180, 0, 174, '2019-02-07', 'am1', 'bloque', '2018-12-11', ''), +(12234, 180, 0, 174, '2019-02-07', 'am2', 'bloque', '2018-12-11', ''), +(12235, 180, 0, 174, '2019-02-07', 'pm1', 'bloque', '2018-12-11', ''), +(12236, 180, 0, 174, '2019-02-07', 'pm2', 'bloque', '2018-12-11', ''), +(12237, 180, 0, 174, '2019-02-08', 'am1', 'bloque', '2018-12-11', ''), +(12238, 180, 0, 174, '2019-02-08', 'am2', 'bloque', '2018-12-11', ''), +(12239, 180, 0, 174, '2019-02-08', 'pm1', 'bloque', '2018-12-11', ''), +(12240, 180, 0, 174, '2019-02-08', 'pm2', 'bloque', '2018-12-11', ''), +(12241, 181, 207, 92, '2019-01-17', 'am1', 'reserve', '2019-01-07', 'ref'), +(12242, 181, 0, 92, '2019-01-17', 'am2', 'libre', '2018-12-11', ''), +(12243, 181, 208, 92, '2019-01-17', 'pm1', 'reserve', '2019-01-07', 'ref'), +(12244, 181, 0, 92, '2019-01-17', 'pm2', 'libre', '2018-12-11', ''), +(12245, 181, 0, 92, '2019-01-18', 'am1', 'bloque', '2018-12-11', ''), +(12246, 181, 0, 92, '2019-01-18', 'am2', 'bloque', '2018-12-11', ''), +(12247, 181, 0, 92, '2019-01-18', 'pm1', 'bloque', '2018-12-11', ''), +(12248, 181, 0, 92, '2019-01-18', 'pm2', 'bloque', '2018-12-11', ''), +(12249, 181, 0, 92, '2019-01-21', 'am1', 'bloque', '2018-12-11', ''), +(12250, 181, 0, 92, '2019-01-21', 'am2', 'bloque', '2018-12-11', ''), +(12251, 181, 0, 92, '2019-01-21', 'pm1', 'bloque', '2018-12-11', ''), +(12252, 181, 0, 92, '2019-01-21', 'pm2', 'bloque', '2018-12-11', ''), +(12253, 181, 0, 92, '2019-01-22', 'am1', 'bloque', '2018-12-11', ''), +(12254, 181, 0, 92, '2019-01-22', 'am2', 'bloque', '2018-12-11', ''), +(12255, 181, 0, 92, '2019-01-22', 'pm1', 'bloque', '2018-12-11', ''), +(12256, 181, 0, 92, '2019-01-22', 'pm2', 'bloque', '2018-12-11', ''), +(12257, 181, 0, 92, '2019-01-23', 'am1', 'bloque', '2018-12-11', ''), +(12258, 181, 0, 92, '2019-01-23', 'am2', 'bloque', '2018-12-11', ''), +(12259, 181, 0, 92, '2019-01-23', 'pm1', 'bloque', '2018-12-11', ''), +(12260, 181, 0, 92, '2019-01-23', 'pm2', 'bloque', '2018-12-11', ''), +(12261, 181, 0, 92, '2019-01-24', 'am1', 'bloque', '2018-12-11', ''), +(12262, 181, 0, 92, '2019-01-24', 'am2', 'bloque', '2018-12-11', ''), +(12263, 181, 0, 92, '2019-01-24', 'pm1', 'bloque', '2018-12-11', ''), +(12264, 181, 0, 92, '2019-01-24', 'pm2', 'bloque', '2018-12-11', ''), +(12265, 181, 0, 92, '2019-01-25', 'am1', 'bloque', '2018-12-11', ''), +(12266, 181, 0, 92, '2019-01-25', 'am2', 'bloque', '2018-12-11', ''), +(12267, 181, 0, 92, '2019-01-25', 'pm1', 'bloque', '2018-12-11', ''), +(12268, 181, 0, 92, '2019-01-25', 'pm2', 'bloque', '2018-12-11', ''), +(12269, 181, 0, 92, '2019-01-28', 'am1', 'bloque', '2018-12-11', ''), +(12270, 181, 0, 92, '2019-01-28', 'am2', 'bloque', '2018-12-11', ''), +(12271, 181, 0, 92, '2019-01-28', 'pm1', 'bloque', '2018-12-11', ''), +(12272, 181, 0, 92, '2019-01-28', 'pm2', 'bloque', '2018-12-11', ''), +(12273, 181, 0, 92, '2019-01-29', 'am1', 'bloque', '2018-12-11', ''), +(12274, 181, 0, 92, '2019-01-29', 'am2', 'bloque', '2018-12-11', ''), +(12275, 181, 0, 92, '2019-01-29', 'pm1', 'bloque', '2018-12-11', ''), +(12276, 181, 0, 92, '2019-01-29', 'pm2', 'bloque', '2018-12-11', ''), +(12277, 181, 0, 92, '2019-01-30', 'am1', 'bloque', '2018-12-11', ''), +(12278, 181, 0, 92, '2019-01-30', 'am2', 'bloque', '2018-12-11', ''), +(12279, 181, 0, 92, '2019-01-30', 'pm1', 'bloque', '2018-12-11', ''), +(12280, 181, 0, 92, '2019-01-30', 'pm2', 'bloque', '2018-12-11', ''), +(12281, 181, 0, 92, '2019-01-31', 'am1', 'bloque', '2018-12-11', ''), +(12282, 181, 0, 92, '2019-01-31', 'am2', 'bloque', '2018-12-11', ''), +(12283, 181, 0, 92, '2019-01-31', 'pm1', 'bloque', '2018-12-11', ''), +(12284, 181, 0, 92, '2019-01-31', 'pm2', 'bloque', '2018-12-11', ''), +(12285, 181, 0, 92, '2019-02-01', 'am1', 'bloque', '2018-12-11', ''), +(12286, 181, 0, 92, '2019-02-01', 'am2', 'bloque', '2018-12-11', ''), +(12287, 181, 0, 92, '2019-02-01', 'pm1', 'bloque', '2018-12-11', ''), +(12288, 181, 0, 92, '2019-02-01', 'pm2', 'bloque', '2018-12-11', ''), +(12289, 181, 0, 92, '2019-02-04', 'am1', 'bloque', '2018-12-11', ''), +(12290, 181, 0, 92, '2019-02-04', 'am2', 'bloque', '2018-12-11', ''), +(12291, 181, 0, 92, '2019-02-04', 'pm1', 'bloque', '2018-12-11', ''), +(12292, 181, 0, 92, '2019-02-04', 'pm2', 'bloque', '2018-12-11', ''), +(12293, 181, 0, 92, '2019-02-05', 'am1', 'bloque', '2018-12-11', ''), +(12294, 181, 0, 92, '2019-02-05', 'am2', 'bloque', '2018-12-11', ''), +(12295, 181, 0, 92, '2019-02-05', 'pm1', 'bloque', '2018-12-11', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(12296, 181, 0, 92, '2019-02-05', 'pm2', 'bloque', '2018-12-11', ''), +(12297, 181, 0, 92, '2019-02-06', 'am1', 'bloque', '2018-12-11', ''), +(12298, 181, 0, 92, '2019-02-06', 'am2', 'bloque', '2018-12-11', ''), +(12299, 181, 0, 92, '2019-02-06', 'pm1', 'bloque', '2018-12-11', ''), +(12300, 181, 0, 92, '2019-02-06', 'pm2', 'bloque', '2018-12-11', ''), +(12301, 181, 0, 92, '2019-02-07', 'am1', 'bloque', '2018-12-11', ''), +(12302, 181, 0, 92, '2019-02-07', 'am2', 'bloque', '2018-12-11', ''), +(12303, 181, 0, 92, '2019-02-07', 'pm1', 'bloque', '2018-12-11', ''), +(12304, 181, 0, 92, '2019-02-07', 'pm2', 'bloque', '2018-12-11', ''), +(12305, 181, 0, 92, '2019-02-08', 'am1', 'bloque', '2018-12-11', ''), +(12306, 181, 0, 92, '2019-02-08', 'am2', 'bloque', '2018-12-11', ''), +(12307, 181, 0, 92, '2019-02-08', 'pm1', 'bloque', '2018-12-11', ''), +(12308, 181, 0, 92, '2019-02-08', 'pm2', 'bloque', '2018-12-11', ''), +(12309, 182, 0, 92, '2019-01-17', 'am1', 'libre', '2018-12-11', ''), +(12310, 182, 0, 92, '2019-01-17', 'am2', 'libre', '2018-12-11', ''), +(12311, 182, 0, 92, '2019-01-17', 'pm1', 'libre', '2018-12-11', ''), +(12312, 182, 0, 92, '2019-01-17', 'pm2', 'libre', '2018-12-11', ''), +(12313, 182, 0, 92, '2019-01-18', 'am1', 'bloque', '2018-12-11', ''), +(12314, 182, 0, 92, '2019-01-18', 'am2', 'bloque', '2018-12-11', ''), +(12315, 182, 0, 92, '2019-01-18', 'pm1', 'bloque', '2018-12-11', ''), +(12316, 182, 0, 92, '2019-01-18', 'pm2', 'bloque', '2018-12-11', ''), +(12317, 182, 0, 92, '2019-01-21', 'am1', 'bloque', '2018-12-11', ''), +(12318, 182, 0, 92, '2019-01-21', 'am2', 'bloque', '2018-12-11', ''), +(12319, 182, 0, 92, '2019-01-21', 'pm1', 'bloque', '2018-12-11', ''), +(12320, 182, 0, 92, '2019-01-21', 'pm2', 'bloque', '2018-12-11', ''), +(12321, 182, 0, 92, '2019-01-22', 'am1', 'bloque', '2018-12-11', ''), +(12322, 182, 0, 92, '2019-01-22', 'am2', 'bloque', '2018-12-11', ''), +(12323, 182, 0, 92, '2019-01-22', 'pm1', 'bloque', '2018-12-11', ''), +(12324, 182, 0, 92, '2019-01-22', 'pm2', 'bloque', '2018-12-11', ''), +(12325, 182, 0, 92, '2019-01-23', 'am1', 'bloque', '2018-12-11', ''), +(12326, 182, 0, 92, '2019-01-23', 'am2', 'bloque', '2018-12-11', ''), +(12327, 182, 0, 92, '2019-01-23', 'pm1', 'bloque', '2018-12-11', ''), +(12328, 182, 0, 92, '2019-01-23', 'pm2', 'bloque', '2018-12-11', ''), +(12329, 182, 0, 92, '2019-01-24', 'am1', 'bloque', '2018-12-11', ''), +(12330, 182, 0, 92, '2019-01-24', 'am2', 'bloque', '2018-12-11', ''), +(12331, 182, 0, 92, '2019-01-24', 'pm1', 'bloque', '2018-12-11', ''), +(12332, 182, 0, 92, '2019-01-24', 'pm2', 'bloque', '2018-12-11', ''), +(12333, 182, 0, 92, '2019-01-25', 'am1', 'bloque', '2018-12-11', ''), +(12334, 182, 0, 92, '2019-01-25', 'am2', 'bloque', '2018-12-11', ''), +(12335, 182, 0, 92, '2019-01-25', 'pm1', 'bloque', '2018-12-11', ''), +(12336, 182, 0, 92, '2019-01-25', 'pm2', 'bloque', '2018-12-11', ''), +(12337, 182, 0, 92, '2019-01-28', 'am1', 'bloque', '2018-12-11', ''), +(12338, 182, 0, 92, '2019-01-28', 'am2', 'bloque', '2018-12-11', ''), +(12339, 182, 0, 92, '2019-01-28', 'pm1', 'bloque', '2018-12-11', ''), +(12340, 182, 0, 92, '2019-01-28', 'pm2', 'bloque', '2018-12-11', ''), +(12341, 182, 0, 92, '2019-01-29', 'am1', 'bloque', '2018-12-11', ''), +(12342, 182, 0, 92, '2019-01-29', 'am2', 'bloque', '2018-12-11', ''), +(12343, 182, 0, 92, '2019-01-29', 'pm1', 'bloque', '2018-12-11', ''), +(12344, 182, 0, 92, '2019-01-29', 'pm2', 'bloque', '2018-12-11', ''), +(12345, 182, 0, 92, '2019-01-30', 'am1', 'bloque', '2018-12-11', ''), +(12346, 182, 0, 92, '2019-01-30', 'am2', 'bloque', '2018-12-11', ''), +(12347, 182, 0, 92, '2019-01-30', 'pm1', 'bloque', '2018-12-11', ''), +(12348, 182, 0, 92, '2019-01-30', 'pm2', 'bloque', '2018-12-11', ''), +(12349, 182, 0, 92, '2019-01-31', 'am1', 'bloque', '2018-12-11', ''), +(12350, 182, 0, 92, '2019-01-31', 'am2', 'bloque', '2018-12-11', ''), +(12351, 182, 0, 92, '2019-01-31', 'pm1', 'bloque', '2018-12-11', ''), +(12352, 182, 0, 92, '2019-01-31', 'pm2', 'bloque', '2018-12-11', ''), +(12353, 182, 0, 92, '2019-02-01', 'am1', 'bloque', '2018-12-11', ''), +(12354, 182, 0, 92, '2019-02-01', 'am2', 'bloque', '2018-12-11', ''), +(12355, 182, 0, 92, '2019-02-01', 'pm1', 'bloque', '2018-12-11', ''), +(12356, 182, 0, 92, '2019-02-01', 'pm2', 'bloque', '2018-12-11', ''), +(12357, 182, 0, 92, '2019-02-04', 'am1', 'bloque', '2018-12-11', ''), +(12358, 182, 0, 92, '2019-02-04', 'am2', 'bloque', '2018-12-11', ''), +(12359, 182, 0, 92, '2019-02-04', 'pm1', 'bloque', '2018-12-11', ''), +(12360, 182, 0, 92, '2019-02-04', 'pm2', 'bloque', '2018-12-11', ''), +(12361, 182, 0, 92, '2019-02-05', 'am1', 'bloque', '2018-12-11', ''), +(12362, 182, 0, 92, '2019-02-05', 'am2', 'bloque', '2018-12-11', ''), +(12363, 182, 0, 92, '2019-02-05', 'pm1', 'bloque', '2018-12-11', ''), +(12364, 182, 0, 92, '2019-02-05', 'pm2', 'bloque', '2018-12-11', ''), +(12365, 182, 0, 92, '2019-02-06', 'am1', 'bloque', '2018-12-11', ''), +(12366, 182, 0, 92, '2019-02-06', 'am2', 'bloque', '2018-12-11', ''), +(12367, 182, 0, 92, '2019-02-06', 'pm1', 'bloque', '2018-12-11', ''), +(12368, 182, 0, 92, '2019-02-06', 'pm2', 'bloque', '2018-12-11', ''), +(12369, 182, 0, 92, '2019-02-07', 'am1', 'bloque', '2018-12-11', ''), +(12370, 182, 0, 92, '2019-02-07', 'am2', 'bloque', '2018-12-11', ''), +(12371, 182, 0, 92, '2019-02-07', 'pm1', 'bloque', '2018-12-11', ''), +(12372, 182, 0, 92, '2019-02-07', 'pm2', 'bloque', '2018-12-11', ''), +(12373, 182, 0, 92, '2019-02-08', 'am1', 'bloque', '2018-12-11', ''), +(12374, 182, 0, 92, '2019-02-08', 'am2', 'bloque', '2018-12-11', ''), +(12375, 182, 0, 92, '2019-02-08', 'pm1', 'bloque', '2018-12-11', ''), +(12376, 182, 0, 92, '2019-02-08', 'pm2', 'bloque', '2018-12-11', ''), +(12377, 183, 159, 408, '2019-01-17', 'am1', 'reserve', '2018-12-20', 'cap'), +(12378, 183, 160, 408, '2019-01-17', 'am2', 'reserve', '2018-12-20', 'cap'), +(12379, 183, 0, 408, '2019-01-17', 'pm1', 'libre', '2018-12-11', ''), +(12380, 183, 0, 408, '2019-01-17', 'pm2', 'libre', '2018-12-11', ''), +(12381, 183, 0, 408, '2019-01-18', 'am1', 'bloque', '2018-12-11', ''), +(12382, 183, 0, 408, '2019-01-18', 'am2', 'bloque', '2018-12-11', ''), +(12383, 183, 0, 408, '2019-01-18', 'pm1', 'bloque', '2018-12-11', ''), +(12384, 183, 0, 408, '2019-01-18', 'pm2', 'bloque', '2018-12-11', ''), +(12385, 183, 0, 408, '2019-01-21', 'am1', 'bloque', '2018-12-11', ''), +(12386, 183, 0, 408, '2019-01-21', 'am2', 'bloque', '2018-12-11', ''), +(12387, 183, 0, 408, '2019-01-21', 'pm1', 'bloque', '2018-12-11', ''), +(12388, 183, 0, 408, '2019-01-21', 'pm2', 'bloque', '2018-12-11', ''), +(12389, 183, 0, 408, '2019-01-22', 'am1', 'bloque', '2018-12-11', ''), +(12390, 183, 0, 408, '2019-01-22', 'am2', 'bloque', '2018-12-11', ''), +(12391, 183, 0, 408, '2019-01-22', 'pm1', 'bloque', '2018-12-11', ''), +(12392, 183, 0, 408, '2019-01-22', 'pm2', 'bloque', '2018-12-11', ''), +(12393, 183, 0, 408, '2019-01-23', 'am1', 'bloque', '2018-12-11', ''), +(12394, 183, 0, 408, '2019-01-23', 'am2', 'bloque', '2018-12-11', ''), +(12395, 183, 0, 408, '2019-01-23', 'pm1', 'bloque', '2018-12-11', ''), +(12396, 183, 0, 408, '2019-01-23', 'pm2', 'bloque', '2018-12-11', ''), +(12397, 183, 0, 408, '2019-01-24', 'am1', 'bloque', '2018-12-11', ''), +(12398, 183, 0, 408, '2019-01-24', 'am2', 'bloque', '2018-12-11', ''), +(12399, 183, 0, 408, '2019-01-24', 'pm1', 'bloque', '2018-12-11', ''), +(12400, 183, 0, 408, '2019-01-24', 'pm2', 'bloque', '2018-12-11', ''), +(12401, 183, 0, 408, '2019-01-25', 'am1', 'bloque', '2018-12-11', ''), +(12402, 183, 0, 408, '2019-01-25', 'am2', 'bloque', '2018-12-11', ''), +(12403, 183, 0, 408, '2019-01-25', 'pm1', 'bloque', '2018-12-11', ''), +(12404, 183, 0, 408, '2019-01-25', 'pm2', 'bloque', '2018-12-11', ''), +(12405, 183, 0, 408, '2019-01-28', 'am1', 'bloque', '2018-12-11', ''), +(12406, 183, 0, 408, '2019-01-28', 'am2', 'bloque', '2018-12-11', ''), +(12407, 183, 0, 408, '2019-01-28', 'pm1', 'bloque', '2018-12-11', ''), +(12408, 183, 0, 408, '2019-01-28', 'pm2', 'bloque', '2018-12-11', ''), +(12409, 183, 0, 408, '2019-01-29', 'am1', 'bloque', '2018-12-11', ''), +(12410, 183, 0, 408, '2019-01-29', 'am2', 'bloque', '2018-12-11', ''), +(12411, 183, 0, 408, '2019-01-29', 'pm1', 'bloque', '2018-12-11', ''), +(12412, 183, 0, 408, '2019-01-29', 'pm2', 'bloque', '2018-12-11', ''), +(12413, 183, 0, 408, '2019-01-30', 'am1', 'bloque', '2018-12-11', ''), +(12414, 183, 0, 408, '2019-01-30', 'am2', 'bloque', '2018-12-11', ''), +(12415, 183, 0, 408, '2019-01-30', 'pm1', 'bloque', '2018-12-11', ''), +(12416, 183, 0, 408, '2019-01-30', 'pm2', 'bloque', '2018-12-11', ''), +(12417, 183, 0, 408, '2019-01-31', 'am1', 'bloque', '2018-12-11', ''), +(12418, 183, 0, 408, '2019-01-31', 'am2', 'bloque', '2018-12-11', ''), +(12419, 183, 0, 408, '2019-01-31', 'pm1', 'bloque', '2018-12-11', ''), +(12420, 183, 0, 408, '2019-01-31', 'pm2', 'bloque', '2018-12-11', ''), +(12421, 183, 0, 408, '2019-02-01', 'am1', 'bloque', '2018-12-11', ''), +(12422, 183, 0, 408, '2019-02-01', 'am2', 'bloque', '2018-12-11', ''), +(12423, 183, 0, 408, '2019-02-01', 'pm1', 'bloque', '2018-12-11', ''), +(12424, 183, 0, 408, '2019-02-01', 'pm2', 'bloque', '2018-12-11', ''), +(12425, 183, 0, 408, '2019-02-04', 'am1', 'bloque', '2018-12-11', ''), +(12426, 183, 0, 408, '2019-02-04', 'am2', 'bloque', '2018-12-11', ''), +(12427, 183, 0, 408, '2019-02-04', 'pm1', 'bloque', '2018-12-11', ''), +(12428, 183, 0, 408, '2019-02-04', 'pm2', 'bloque', '2018-12-11', ''), +(12429, 183, 0, 408, '2019-02-05', 'am1', 'bloque', '2018-12-11', ''), +(12430, 183, 0, 408, '2019-02-05', 'am2', 'bloque', '2018-12-11', ''), +(12431, 183, 0, 408, '2019-02-05', 'pm1', 'bloque', '2018-12-11', ''), +(12432, 183, 0, 408, '2019-02-05', 'pm2', 'bloque', '2018-12-11', ''), +(12433, 183, 0, 408, '2019-02-06', 'am1', 'bloque', '2018-12-11', ''), +(12434, 183, 0, 408, '2019-02-06', 'am2', 'bloque', '2018-12-11', ''), +(12435, 183, 0, 408, '2019-02-06', 'pm1', 'bloque', '2018-12-11', ''), +(12436, 183, 0, 408, '2019-02-06', 'pm2', 'bloque', '2018-12-11', ''), +(12437, 183, 0, 408, '2019-02-07', 'am1', 'bloque', '2018-12-11', ''), +(12438, 183, 0, 408, '2019-02-07', 'am2', 'bloque', '2018-12-11', ''), +(12439, 183, 0, 408, '2019-02-07', 'pm1', 'bloque', '2018-12-11', ''), +(12440, 183, 0, 408, '2019-02-07', 'pm2', 'bloque', '2018-12-11', ''), +(12441, 183, 0, 408, '2019-02-08', 'am1', 'bloque', '2018-12-11', ''), +(12442, 183, 0, 408, '2019-02-08', 'am2', 'bloque', '2018-12-11', ''), +(12443, 183, 0, 408, '2019-02-08', 'pm1', 'bloque', '2018-12-11', ''), +(12444, 183, 0, 408, '2019-02-08', 'pm2', 'bloque', '2018-12-11', ''), +(12445, 184, 0, 59, '2019-01-17', 'am1', 'libre', '2018-12-11', ''), +(12446, 184, 0, 59, '2019-01-17', 'am2', 'libre', '2018-12-11', ''), +(12447, 184, 0, 59, '2019-01-17', 'pm1', 'libre', '2018-12-11', ''), +(12448, 184, 0, 59, '2019-01-17', 'pm2', 'libre', '2018-12-11', ''), +(12449, 184, 0, 59, '2019-01-18', 'am1', 'bloque', '2018-12-11', ''), +(12450, 184, 0, 59, '2019-01-18', 'am2', 'bloque', '2018-12-11', ''), +(12451, 184, 0, 59, '2019-01-18', 'pm1', 'bloque', '2018-12-11', ''), +(12452, 184, 0, 59, '2019-01-18', 'pm2', 'bloque', '2018-12-11', ''), +(12453, 184, 0, 59, '2019-01-21', 'am1', 'bloque', '2018-12-11', ''), +(12454, 184, 0, 59, '2019-01-21', 'am2', 'bloque', '2018-12-11', ''), +(12455, 184, 0, 59, '2019-01-21', 'pm1', 'bloque', '2018-12-11', ''), +(12456, 184, 0, 59, '2019-01-21', 'pm2', 'bloque', '2018-12-11', ''), +(12457, 184, 0, 59, '2019-01-22', 'am1', 'bloque', '2018-12-11', ''), +(12458, 184, 0, 59, '2019-01-22', 'am2', 'bloque', '2018-12-11', ''), +(12459, 184, 0, 59, '2019-01-22', 'pm1', 'bloque', '2018-12-11', ''), +(12460, 184, 0, 59, '2019-01-22', 'pm2', 'bloque', '2018-12-11', ''), +(12461, 184, 0, 59, '2019-01-23', 'am1', 'bloque', '2018-12-11', ''), +(12462, 184, 0, 59, '2019-01-23', 'am2', 'bloque', '2018-12-11', ''), +(12463, 184, 0, 59, '2019-01-23', 'pm1', 'bloque', '2018-12-11', ''), +(12464, 184, 0, 59, '2019-01-23', 'pm2', 'bloque', '2018-12-11', ''), +(12465, 184, 0, 59, '2019-01-24', 'am1', 'bloque', '2018-12-11', ''), +(12466, 184, 0, 59, '2019-01-24', 'am2', 'bloque', '2018-12-11', ''), +(12467, 184, 0, 59, '2019-01-24', 'pm1', 'bloque', '2018-12-11', ''), +(12468, 184, 0, 59, '2019-01-24', 'pm2', 'bloque', '2018-12-11', ''), +(12469, 184, 0, 59, '2019-01-25', 'am1', 'bloque', '2018-12-11', ''), +(12470, 184, 0, 59, '2019-01-25', 'am2', 'bloque', '2018-12-11', ''), +(12471, 184, 0, 59, '2019-01-25', 'pm1', 'bloque', '2018-12-11', ''), +(12472, 184, 0, 59, '2019-01-25', 'pm2', 'bloque', '2018-12-11', ''), +(12473, 184, 0, 59, '2019-01-28', 'am1', 'bloque', '2018-12-11', ''), +(12474, 184, 0, 59, '2019-01-28', 'am2', 'bloque', '2018-12-11', ''), +(12475, 184, 0, 59, '2019-01-28', 'pm1', 'bloque', '2018-12-11', ''), +(12476, 184, 0, 59, '2019-01-28', 'pm2', 'bloque', '2018-12-11', ''), +(12477, 184, 0, 59, '2019-01-29', 'am1', 'bloque', '2018-12-11', ''), +(12478, 184, 0, 59, '2019-01-29', 'am2', 'bloque', '2018-12-11', ''), +(12479, 184, 0, 59, '2019-01-29', 'pm1', 'bloque', '2018-12-11', ''), +(12480, 184, 0, 59, '2019-01-29', 'pm2', 'bloque', '2018-12-11', ''), +(12481, 184, 0, 59, '2019-01-30', 'am1', 'bloque', '2018-12-11', ''), +(12482, 184, 0, 59, '2019-01-30', 'am2', 'bloque', '2018-12-11', ''), +(12483, 184, 0, 59, '2019-01-30', 'pm1', 'bloque', '2018-12-11', ''), +(12484, 184, 0, 59, '2019-01-30', 'pm2', 'bloque', '2018-12-11', ''), +(12485, 184, 0, 59, '2019-01-31', 'am1', 'bloque', '2018-12-11', ''), +(12486, 184, 0, 59, '2019-01-31', 'am2', 'bloque', '2018-12-11', ''), +(12487, 184, 0, 59, '2019-01-31', 'pm1', 'bloque', '2018-12-11', ''), +(12488, 184, 0, 59, '2019-01-31', 'pm2', 'bloque', '2018-12-11', ''), +(12489, 184, 0, 59, '2019-02-01', 'am1', 'bloque', '2018-12-11', ''), +(12490, 184, 0, 59, '2019-02-01', 'am2', 'bloque', '2018-12-11', ''), +(12491, 184, 0, 59, '2019-02-01', 'pm1', 'bloque', '2018-12-11', ''), +(12492, 184, 0, 59, '2019-02-01', 'pm2', 'bloque', '2018-12-11', ''), +(12493, 184, 0, 59, '2019-02-04', 'am1', 'bloque', '2018-12-11', ''), +(12494, 184, 0, 59, '2019-02-04', 'am2', 'bloque', '2018-12-11', ''), +(12495, 184, 0, 59, '2019-02-04', 'pm1', 'bloque', '2018-12-11', ''), +(12496, 184, 0, 59, '2019-02-04', 'pm2', 'bloque', '2018-12-11', ''), +(12497, 184, 0, 59, '2019-02-05', 'am1', 'bloque', '2018-12-11', ''), +(12498, 184, 0, 59, '2019-02-05', 'am2', 'bloque', '2018-12-11', ''), +(12499, 184, 0, 59, '2019-02-05', 'pm1', 'bloque', '2018-12-11', ''), +(12500, 184, 0, 59, '2019-02-05', 'pm2', 'bloque', '2018-12-11', ''), +(12501, 184, 0, 59, '2019-02-06', 'am1', 'bloque', '2018-12-11', ''), +(12502, 184, 0, 59, '2019-02-06', 'am2', 'bloque', '2018-12-11', ''), +(12503, 184, 0, 59, '2019-02-06', 'pm1', 'bloque', '2018-12-11', ''), +(12504, 184, 0, 59, '2019-02-06', 'pm2', 'bloque', '2018-12-11', ''), +(12505, 184, 0, 59, '2019-02-07', 'am1', 'bloque', '2018-12-11', ''), +(12506, 184, 0, 59, '2019-02-07', 'am2', 'bloque', '2018-12-11', ''), +(12507, 184, 0, 59, '2019-02-07', 'pm1', 'bloque', '2018-12-11', ''), +(12508, 184, 0, 59, '2019-02-07', 'pm2', 'bloque', '2018-12-11', ''), +(12509, 184, 0, 59, '2019-02-08', 'am1', 'bloque', '2018-12-11', ''), +(12510, 184, 0, 59, '2019-02-08', 'am2', 'bloque', '2018-12-11', ''), +(12511, 184, 0, 59, '2019-02-08', 'pm1', 'bloque', '2018-12-11', ''), +(12512, 184, 0, 59, '2019-02-08', 'pm2', 'bloque', '2018-12-11', ''), +(12513, 185, 0, 357, '2019-01-17', 'am1', 'libre', '2018-12-11', ''), +(12514, 185, 0, 357, '2019-01-17', 'am2', 'libre', '2018-12-11', ''), +(12515, 185, 0, 357, '2019-01-17', 'pm1', 'libre', '2018-12-11', ''), +(12516, 185, 0, 357, '2019-01-17', 'pm2', 'libre', '2018-12-11', ''), +(12517, 185, 0, 357, '2019-01-18', 'am1', 'bloque', '2018-12-11', ''), +(12518, 185, 0, 357, '2019-01-18', 'am2', 'bloque', '2018-12-11', ''), +(12519, 185, 0, 357, '2019-01-18', 'pm1', 'bloque', '2018-12-11', ''), +(12520, 185, 0, 357, '2019-01-18', 'pm2', 'bloque', '2018-12-11', ''), +(12521, 185, 0, 357, '2019-01-21', 'am1', 'bloque', '2018-12-11', ''), +(12522, 185, 0, 357, '2019-01-21', 'am2', 'bloque', '2018-12-11', ''), +(12523, 185, 0, 357, '2019-01-21', 'pm1', 'bloque', '2018-12-11', ''), +(12524, 185, 0, 357, '2019-01-21', 'pm2', 'bloque', '2018-12-11', ''), +(12525, 185, 0, 357, '2019-01-22', 'am1', 'bloque', '2018-12-11', ''), +(12526, 185, 0, 357, '2019-01-22', 'am2', 'bloque', '2018-12-11', ''), +(12527, 185, 0, 357, '2019-01-22', 'pm1', 'bloque', '2018-12-11', ''), +(12528, 185, 0, 357, '2019-01-22', 'pm2', 'bloque', '2018-12-11', ''), +(12529, 185, 0, 357, '2019-01-23', 'am1', 'bloque', '2018-12-11', ''), +(12530, 185, 0, 357, '2019-01-23', 'am2', 'bloque', '2018-12-11', ''), +(12531, 185, 0, 357, '2019-01-23', 'pm1', 'bloque', '2018-12-11', ''), +(12532, 185, 0, 357, '2019-01-23', 'pm2', 'bloque', '2018-12-11', ''), +(12533, 185, 0, 357, '2019-01-24', 'am1', 'bloque', '2018-12-11', ''), +(12534, 185, 0, 357, '2019-01-24', 'am2', 'bloque', '2018-12-11', ''), +(12535, 185, 0, 357, '2019-01-24', 'pm1', 'bloque', '2018-12-11', ''), +(12536, 185, 0, 357, '2019-01-24', 'pm2', 'bloque', '2018-12-11', ''), +(12537, 185, 0, 357, '2019-01-25', 'am1', 'bloque', '2018-12-11', ''), +(12538, 185, 0, 357, '2019-01-25', 'am2', 'bloque', '2018-12-11', ''), +(12539, 185, 0, 357, '2019-01-25', 'pm1', 'bloque', '2018-12-11', ''), +(12540, 185, 0, 357, '2019-01-25', 'pm2', 'bloque', '2018-12-11', ''), +(12541, 185, 0, 357, '2019-01-28', 'am1', 'bloque', '2018-12-11', ''), +(12542, 185, 0, 357, '2019-01-28', 'am2', 'bloque', '2018-12-11', ''), +(12543, 185, 0, 357, '2019-01-28', 'pm1', 'bloque', '2018-12-11', ''), +(12544, 185, 0, 357, '2019-01-28', 'pm2', 'bloque', '2018-12-11', ''), +(12545, 185, 0, 357, '2019-01-29', 'am1', 'bloque', '2018-12-11', ''), +(12546, 185, 0, 357, '2019-01-29', 'am2', 'bloque', '2018-12-11', ''), +(12547, 185, 0, 357, '2019-01-29', 'pm1', 'bloque', '2018-12-11', ''), +(12548, 185, 0, 357, '2019-01-29', 'pm2', 'bloque', '2018-12-11', ''), +(12549, 185, 0, 357, '2019-01-30', 'am1', 'bloque', '2018-12-11', ''), +(12550, 185, 0, 357, '2019-01-30', 'am2', 'bloque', '2018-12-11', ''), +(12551, 185, 0, 357, '2019-01-30', 'pm1', 'bloque', '2018-12-11', ''), +(12552, 185, 0, 357, '2019-01-30', 'pm2', 'bloque', '2018-12-11', ''), +(12553, 185, 0, 357, '2019-01-31', 'am1', 'bloque', '2018-12-11', ''), +(12554, 185, 0, 357, '2019-01-31', 'am2', 'bloque', '2018-12-11', ''), +(12555, 185, 0, 357, '2019-01-31', 'pm1', 'bloque', '2018-12-11', ''), +(12556, 185, 0, 357, '2019-01-31', 'pm2', 'bloque', '2018-12-11', ''), +(12557, 185, 0, 357, '2019-02-01', 'am1', 'bloque', '2018-12-11', ''), +(12558, 185, 0, 357, '2019-02-01', 'am2', 'bloque', '2018-12-11', ''), +(12559, 185, 0, 357, '2019-02-01', 'pm1', 'bloque', '2018-12-11', ''), +(12560, 185, 0, 357, '2019-02-01', 'pm2', 'bloque', '2018-12-11', ''), +(12561, 185, 0, 357, '2019-02-04', 'am1', 'bloque', '2018-12-11', ''), +(12562, 185, 0, 357, '2019-02-04', 'am2', 'bloque', '2018-12-11', ''), +(12563, 185, 0, 357, '2019-02-04', 'pm1', 'bloque', '2018-12-11', ''), +(12564, 185, 0, 357, '2019-02-04', 'pm2', 'bloque', '2018-12-11', ''), +(12565, 185, 0, 357, '2019-02-05', 'am1', 'bloque', '2018-12-11', ''), +(12566, 185, 0, 357, '2019-02-05', 'am2', 'bloque', '2018-12-11', ''), +(12567, 185, 0, 357, '2019-02-05', 'pm1', 'bloque', '2018-12-11', ''), +(12568, 185, 0, 357, '2019-02-05', 'pm2', 'bloque', '2018-12-11', ''), +(12569, 185, 0, 357, '2019-02-06', 'am1', 'bloque', '2018-12-11', ''), +(12570, 185, 0, 357, '2019-02-06', 'am2', 'bloque', '2018-12-11', ''), +(12571, 185, 0, 357, '2019-02-06', 'pm1', 'bloque', '2018-12-11', ''), +(12572, 185, 0, 357, '2019-02-06', 'pm2', 'bloque', '2018-12-11', ''), +(12573, 185, 0, 357, '2019-02-07', 'am1', 'bloque', '2018-12-11', ''), +(12574, 185, 0, 357, '2019-02-07', 'am2', 'bloque', '2018-12-11', ''), +(12575, 185, 0, 357, '2019-02-07', 'pm1', 'bloque', '2018-12-11', ''), +(12576, 185, 0, 357, '2019-02-07', 'pm2', 'bloque', '2018-12-11', ''), +(12577, 185, 0, 357, '2019-02-08', 'am1', 'bloque', '2018-12-11', ''), +(12578, 185, 0, 357, '2019-02-08', 'am2', 'bloque', '2018-12-11', ''), +(12579, 185, 0, 357, '2019-02-08', 'pm1', 'bloque', '2018-12-11', ''), +(12580, 185, 0, 357, '2019-02-08', 'pm2', 'bloque', '2018-12-11', ''), +(12581, 186, 213, 103, '2019-01-17', 'am1', 'reserve', '2019-01-08', 'ref'), +(12582, 186, 0, 103, '2019-01-17', 'am2', 'libre', '2018-12-12', ''), +(12583, 186, 0, 103, '2019-01-17', 'pm1', 'bloque', '2019-01-08', 'ref'), +(12584, 186, 214, 103, '2019-01-17', 'pm2', 'reserve', '2019-01-08', 'ref'), +(12585, 186, 0, 103, '2019-01-18', 'am1', 'bloque', '2018-12-12', ''), +(12586, 186, 0, 103, '2019-01-18', 'am2', 'bloque', '2018-12-12', ''), +(12587, 186, 0, 103, '2019-01-18', 'pm1', 'bloque', '2018-12-12', ''), +(12588, 186, 0, 103, '2019-01-18', 'pm2', 'bloque', '2018-12-12', ''), +(12589, 186, 0, 103, '2019-01-21', 'am1', 'bloque', '2018-12-12', ''), +(12590, 186, 0, 103, '2019-01-21', 'am2', 'bloque', '2018-12-12', ''), +(12591, 186, 0, 103, '2019-01-21', 'pm1', 'bloque', '2018-12-12', ''), +(12592, 186, 0, 103, '2019-01-21', 'pm2', 'bloque', '2018-12-12', ''), +(12593, 186, 0, 103, '2019-01-22', 'am1', 'bloque', '2018-12-12', ''), +(12594, 186, 0, 103, '2019-01-22', 'am2', 'bloque', '2018-12-12', ''), +(12595, 186, 0, 103, '2019-01-22', 'pm1', 'bloque', '2018-12-12', ''), +(12596, 186, 0, 103, '2019-01-22', 'pm2', 'bloque', '2018-12-12', ''), +(12597, 186, 0, 103, '2019-01-23', 'am1', 'bloque', '2018-12-12', ''), +(12598, 186, 0, 103, '2019-01-23', 'am2', 'bloque', '2018-12-12', ''), +(12599, 186, 0, 103, '2019-01-23', 'pm1', 'bloque', '2018-12-12', ''), +(12600, 186, 0, 103, '2019-01-23', 'pm2', 'bloque', '2018-12-12', ''), +(12601, 186, 0, 103, '2019-01-24', 'am1', 'bloque', '2018-12-12', ''), +(12602, 186, 0, 103, '2019-01-24', 'am2', 'bloque', '2018-12-12', ''), +(12603, 186, 0, 103, '2019-01-24', 'pm1', 'bloque', '2018-12-12', ''), +(12604, 186, 0, 103, '2019-01-24', 'pm2', 'bloque', '2018-12-12', ''), +(12605, 186, 0, 103, '2019-01-25', 'am1', 'bloque', '2018-12-12', ''), +(12606, 186, 0, 103, '2019-01-25', 'am2', 'bloque', '2018-12-12', ''), +(12607, 186, 0, 103, '2019-01-25', 'pm1', 'bloque', '2018-12-12', ''), +(12608, 186, 0, 103, '2019-01-25', 'pm2', 'bloque', '2018-12-12', ''), +(12609, 186, 0, 103, '2019-01-28', 'am1', 'bloque', '2018-12-12', ''), +(12610, 186, 0, 103, '2019-01-28', 'am2', 'bloque', '2018-12-12', ''), +(12611, 186, 0, 103, '2019-01-28', 'pm1', 'bloque', '2018-12-12', ''), +(12612, 186, 0, 103, '2019-01-28', 'pm2', 'bloque', '2018-12-12', ''), +(12613, 186, 0, 103, '2019-01-29', 'am1', 'bloque', '2018-12-12', ''), +(12614, 186, 0, 103, '2019-01-29', 'am2', 'bloque', '2018-12-12', ''), +(12615, 186, 0, 103, '2019-01-29', 'pm1', 'bloque', '2018-12-12', ''), +(12616, 186, 0, 103, '2019-01-29', 'pm2', 'bloque', '2018-12-12', ''), +(12617, 186, 0, 103, '2019-01-30', 'am1', 'bloque', '2018-12-12', ''), +(12618, 186, 0, 103, '2019-01-30', 'am2', 'bloque', '2018-12-12', ''), +(12619, 186, 0, 103, '2019-01-30', 'pm1', 'bloque', '2018-12-12', ''), +(12620, 186, 0, 103, '2019-01-30', 'pm2', 'bloque', '2018-12-12', ''), +(12621, 186, 0, 103, '2019-01-31', 'am1', 'bloque', '2018-12-12', ''), +(12622, 186, 0, 103, '2019-01-31', 'am2', 'bloque', '2018-12-12', ''), +(12623, 186, 0, 103, '2019-01-31', 'pm1', 'bloque', '2018-12-12', ''), +(12624, 186, 0, 103, '2019-01-31', 'pm2', 'bloque', '2018-12-12', ''), +(12625, 186, 0, 103, '2019-02-01', 'am1', 'bloque', '2018-12-12', ''), +(12626, 186, 0, 103, '2019-02-01', 'am2', 'bloque', '2018-12-12', ''), +(12627, 186, 0, 103, '2019-02-01', 'pm1', 'bloque', '2018-12-12', ''), +(12628, 186, 0, 103, '2019-02-01', 'pm2', 'bloque', '2018-12-12', ''), +(12629, 186, 0, 103, '2019-02-04', 'am1', 'bloque', '2018-12-12', ''), +(12630, 186, 0, 103, '2019-02-04', 'am2', 'bloque', '2018-12-12', ''), +(12631, 186, 0, 103, '2019-02-04', 'pm1', 'bloque', '2018-12-12', ''), +(12632, 186, 0, 103, '2019-02-04', 'pm2', 'bloque', '2018-12-12', ''), +(12633, 186, 0, 103, '2019-02-05', 'am1', 'bloque', '2018-12-12', ''), +(12634, 186, 0, 103, '2019-02-05', 'am2', 'bloque', '2018-12-12', ''), +(12635, 186, 0, 103, '2019-02-05', 'pm1', 'bloque', '2018-12-12', ''), +(12636, 186, 0, 103, '2019-02-05', 'pm2', 'bloque', '2018-12-12', ''), +(12637, 186, 0, 103, '2019-02-06', 'am1', 'bloque', '2018-12-12', ''), +(12638, 186, 0, 103, '2019-02-06', 'am2', 'bloque', '2018-12-12', ''), +(12639, 186, 0, 103, '2019-02-06', 'pm1', 'bloque', '2018-12-12', ''), +(12640, 186, 0, 103, '2019-02-06', 'pm2', 'bloque', '2018-12-12', ''), +(12641, 186, 0, 103, '2019-02-07', 'am1', 'bloque', '2018-12-12', ''), +(12642, 186, 0, 103, '2019-02-07', 'am2', 'bloque', '2018-12-12', ''), +(12643, 186, 0, 103, '2019-02-07', 'pm1', 'bloque', '2018-12-12', ''), +(12644, 186, 0, 103, '2019-02-07', 'pm2', 'bloque', '2018-12-12', ''), +(12645, 186, 0, 103, '2019-02-08', 'am1', 'bloque', '2018-12-12', ''), +(12646, 186, 0, 103, '2019-02-08', 'am2', 'bloque', '2018-12-12', ''), +(12647, 186, 0, 103, '2019-02-08', 'pm1', 'bloque', '2018-12-12', ''), +(12648, 186, 0, 103, '2019-02-08', 'pm2', 'bloque', '2018-12-12', ''), +(12649, 187, 0, 103, '2019-01-17', 'am1', 'libre', '2018-12-12', ''), +(12650, 187, 0, 103, '2019-01-17', 'am2', 'libre', '2018-12-12', ''), +(12651, 187, 0, 103, '2019-01-17', 'pm1', 'libre', '2018-12-12', ''), +(12652, 187, 0, 103, '2019-01-17', 'pm2', 'libre', '2018-12-12', ''), +(12653, 187, 0, 103, '2019-01-18', 'am1', 'bloque', '2018-12-12', ''), +(12654, 187, 0, 103, '2019-01-18', 'am2', 'bloque', '2018-12-12', ''), +(12655, 187, 0, 103, '2019-01-18', 'pm1', 'bloque', '2018-12-12', ''), +(12656, 187, 0, 103, '2019-01-18', 'pm2', 'bloque', '2018-12-12', ''), +(12657, 187, 0, 103, '2019-01-21', 'am1', 'bloque', '2018-12-12', ''), +(12658, 187, 0, 103, '2019-01-21', 'am2', 'bloque', '2018-12-12', ''), +(12659, 187, 0, 103, '2019-01-21', 'pm1', 'bloque', '2018-12-12', ''), +(12660, 187, 0, 103, '2019-01-21', 'pm2', 'bloque', '2018-12-12', ''), +(12661, 187, 0, 103, '2019-01-22', 'am1', 'bloque', '2018-12-12', ''), +(12662, 187, 0, 103, '2019-01-22', 'am2', 'bloque', '2018-12-12', ''), +(12663, 187, 0, 103, '2019-01-22', 'pm1', 'bloque', '2018-12-12', ''), +(12664, 187, 0, 103, '2019-01-22', 'pm2', 'bloque', '2018-12-12', ''), +(12665, 187, 0, 103, '2019-01-23', 'am1', 'bloque', '2018-12-12', ''), +(12666, 187, 0, 103, '2019-01-23', 'am2', 'bloque', '2018-12-12', ''), +(12667, 187, 0, 103, '2019-01-23', 'pm1', 'bloque', '2018-12-12', ''), +(12668, 187, 0, 103, '2019-01-23', 'pm2', 'bloque', '2018-12-12', ''), +(12669, 187, 0, 103, '2019-01-24', 'am1', 'bloque', '2018-12-12', ''), +(12670, 187, 0, 103, '2019-01-24', 'am2', 'bloque', '2018-12-12', ''), +(12671, 187, 0, 103, '2019-01-24', 'pm1', 'bloque', '2018-12-12', ''), +(12672, 187, 0, 103, '2019-01-24', 'pm2', 'bloque', '2018-12-12', ''), +(12673, 187, 0, 103, '2019-01-25', 'am1', 'bloque', '2018-12-12', ''), +(12674, 187, 0, 103, '2019-01-25', 'am2', 'bloque', '2018-12-12', ''), +(12675, 187, 0, 103, '2019-01-25', 'pm1', 'bloque', '2018-12-12', ''), +(12676, 187, 0, 103, '2019-01-25', 'pm2', 'bloque', '2018-12-12', ''), +(12677, 187, 0, 103, '2019-01-28', 'am1', 'bloque', '2018-12-12', ''), +(12678, 187, 0, 103, '2019-01-28', 'am2', 'bloque', '2018-12-12', ''), +(12679, 187, 0, 103, '2019-01-28', 'pm1', 'bloque', '2018-12-12', ''), +(12680, 187, 0, 103, '2019-01-28', 'pm2', 'bloque', '2018-12-12', ''), +(12681, 187, 0, 103, '2019-01-29', 'am1', 'bloque', '2018-12-12', ''), +(12682, 187, 0, 103, '2019-01-29', 'am2', 'bloque', '2018-12-12', ''), +(12683, 187, 0, 103, '2019-01-29', 'pm1', 'bloque', '2018-12-12', ''), +(12684, 187, 0, 103, '2019-01-29', 'pm2', 'bloque', '2018-12-12', ''), +(12685, 187, 0, 103, '2019-01-30', 'am1', 'bloque', '2018-12-12', ''), +(12686, 187, 0, 103, '2019-01-30', 'am2', 'bloque', '2018-12-12', ''), +(12687, 187, 0, 103, '2019-01-30', 'pm1', 'bloque', '2018-12-12', ''), +(12688, 187, 0, 103, '2019-01-30', 'pm2', 'bloque', '2018-12-12', ''), +(12689, 187, 0, 103, '2019-01-31', 'am1', 'bloque', '2018-12-12', ''), +(12690, 187, 0, 103, '2019-01-31', 'am2', 'bloque', '2018-12-12', ''), +(12691, 187, 0, 103, '2019-01-31', 'pm1', 'bloque', '2018-12-12', ''), +(12692, 187, 0, 103, '2019-01-31', 'pm2', 'bloque', '2018-12-12', ''), +(12693, 187, 0, 103, '2019-02-01', 'am1', 'bloque', '2018-12-12', ''), +(12694, 187, 0, 103, '2019-02-01', 'am2', 'bloque', '2018-12-12', ''), +(12695, 187, 0, 103, '2019-02-01', 'pm1', 'bloque', '2018-12-12', ''), +(12696, 187, 0, 103, '2019-02-01', 'pm2', 'bloque', '2018-12-12', ''), +(12697, 187, 0, 103, '2019-02-04', 'am1', 'bloque', '2018-12-12', ''), +(12698, 187, 0, 103, '2019-02-04', 'am2', 'bloque', '2018-12-12', ''), +(12699, 187, 0, 103, '2019-02-04', 'pm1', 'bloque', '2018-12-12', ''), +(12700, 187, 0, 103, '2019-02-04', 'pm2', 'bloque', '2018-12-12', ''), +(12701, 187, 0, 103, '2019-02-05', 'am1', 'bloque', '2018-12-12', ''), +(12702, 187, 0, 103, '2019-02-05', 'am2', 'bloque', '2018-12-12', ''), +(12703, 187, 0, 103, '2019-02-05', 'pm1', 'bloque', '2018-12-12', ''), +(12704, 187, 0, 103, '2019-02-05', 'pm2', 'bloque', '2018-12-12', ''), +(12705, 187, 0, 103, '2019-02-06', 'am1', 'bloque', '2018-12-12', ''), +(12706, 187, 0, 103, '2019-02-06', 'am2', 'bloque', '2018-12-12', ''), +(12707, 187, 0, 103, '2019-02-06', 'pm1', 'bloque', '2018-12-12', ''), +(12708, 187, 0, 103, '2019-02-06', 'pm2', 'bloque', '2018-12-12', ''), +(12709, 187, 0, 103, '2019-02-07', 'am1', 'bloque', '2018-12-12', ''), +(12710, 187, 0, 103, '2019-02-07', 'am2', 'bloque', '2018-12-12', ''), +(12711, 187, 0, 103, '2019-02-07', 'pm1', 'bloque', '2018-12-12', ''), +(12712, 187, 0, 103, '2019-02-07', 'pm2', 'bloque', '2018-12-12', ''), +(12713, 187, 0, 103, '2019-02-08', 'am1', 'bloque', '2018-12-12', ''), +(12714, 187, 0, 103, '2019-02-08', 'am2', 'bloque', '2018-12-12', ''), +(12715, 187, 0, 103, '2019-02-08', 'pm1', 'bloque', '2018-12-12', ''), +(12716, 187, 0, 103, '2019-02-08', 'pm2', 'bloque', '2018-12-12', ''), +(12717, 188, 0, 254, '2019-01-17', 'am1', 'bloque', '2018-12-12', 'ref'), +(12718, 188, 0, 254, '2019-01-17', 'am2', 'bloque', '2018-12-12', 'ref'), +(12719, 188, 0, 254, '2019-01-17', 'pm1', 'bloque', '2018-12-12', 'ref'), +(12720, 188, 0, 254, '2019-01-17', 'pm2', 'bloque', '2018-12-12', 'ref'), +(12721, 188, 0, 254, '2019-01-18', 'am1', 'bloque', '2018-12-12', 'ref'), +(12722, 188, 0, 254, '2019-01-18', 'am2', 'bloque', '2018-12-12', ''), +(12723, 188, 0, 254, '2019-01-18', 'pm1', 'bloque', '2018-12-12', ''), +(12724, 188, 0, 254, '2019-01-18', 'pm2', 'bloque', '2018-12-12', ''), +(12725, 188, 0, 254, '2019-01-21', 'am1', 'libre', '2018-12-12', 'ref'), +(12726, 188, 0, 254, '2019-01-21', 'am2', 'bloque', '2018-12-12', ''), +(12727, 188, 0, 254, '2019-01-21', 'pm1', 'bloque', '2018-12-12', ''), +(12728, 188, 0, 254, '2019-01-21', 'pm2', 'bloque', '2018-12-12', ''), +(12729, 188, 0, 254, '2019-01-22', 'am1', 'bloque', '2018-12-12', ''), +(12730, 188, 0, 254, '2019-01-22', 'am2', 'bloque', '2018-12-12', ''), +(12731, 188, 0, 254, '2019-01-22', 'pm1', 'bloque', '2018-12-12', ''), +(12732, 188, 0, 254, '2019-01-22', 'pm2', 'libre', '2018-12-12', 'ref'), +(12733, 188, 0, 254, '2019-01-23', 'am1', 'libre', '2018-12-12', 'ref'), +(12734, 188, 0, 254, '2019-01-23', 'am2', 'libre', '2018-12-12', 'ref'), +(12735, 188, 0, 254, '2019-01-23', 'pm1', 'libre', '2018-12-12', 'ref'), +(12736, 188, 0, 254, '2019-01-23', 'pm2', 'libre', '2018-12-12', 'ref'), +(12737, 188, 0, 254, '2019-01-24', 'am1', 'bloque', '2018-12-12', ''), +(12738, 188, 0, 254, '2019-01-24', 'am2', 'bloque', '2018-12-12', ''), +(12739, 188, 0, 254, '2019-01-24', 'pm1', 'libre', '2018-12-12', 'ref'), +(12740, 188, 0, 254, '2019-01-24', 'pm2', 'libre', '2018-12-12', 'ref'), +(12741, 188, 0, 254, '2019-01-25', 'am1', 'bloque', '2018-12-12', ''), +(12742, 188, 0, 254, '2019-01-25', 'am2', 'bloque', '2018-12-12', ''), +(12743, 188, 0, 254, '2019-01-25', 'pm1', 'libre', '2018-12-12', 'ref'), +(12744, 188, 0, 254, '2019-01-25', 'pm2', 'libre', '2018-12-12', 'ref'), +(12745, 188, 0, 254, '2019-01-28', 'am1', 'libre', '2018-12-12', 'ref'), +(12746, 188, 0, 254, '2019-01-28', 'am2', 'bloque', '2018-12-12', ''), +(12747, 188, 0, 254, '2019-01-28', 'pm1', 'bloque', '2018-12-12', ''), +(12748, 188, 0, 254, '2019-01-28', 'pm2', 'bloque', '2018-12-12', ''), +(12749, 188, 0, 254, '2019-01-29', 'am1', 'bloque', '2018-12-12', ''), +(12750, 188, 0, 254, '2019-01-29', 'am2', 'bloque', '2018-12-12', ''), +(12751, 188, 0, 254, '2019-01-29', 'pm1', 'bloque', '2018-12-12', ''), +(12752, 188, 0, 254, '2019-01-29', 'pm2', 'libre', '2018-12-12', 'ref'), +(12753, 188, 0, 254, '2019-01-30', 'am1', 'libre', '2018-12-12', 'ref'), +(12754, 188, 0, 254, '2019-01-30', 'am2', 'libre', '2018-12-12', 'ref'), +(12755, 188, 0, 254, '2019-01-30', 'pm1', 'libre', '2018-12-12', 'ref'), +(12756, 188, 0, 254, '2019-01-30', 'pm2', 'libre', '2018-12-12', 'ref'), +(12757, 188, 0, 254, '2019-01-31', 'am1', 'bloque', '2018-12-12', ''), +(12758, 188, 0, 254, '2019-01-31', 'am2', 'bloque', '2018-12-12', ''), +(12759, 188, 0, 254, '2019-01-31', 'pm1', 'libre', '2018-12-12', 'ref'), +(12760, 188, 0, 254, '2019-01-31', 'pm2', 'bloque', '2018-12-12', ''), +(12761, 188, 0, 254, '2019-02-01', 'am1', 'bloque', '2018-12-12', ''), +(12762, 188, 0, 254, '2019-02-01', 'am2', 'bloque', '2018-12-12', ''), +(12763, 188, 0, 254, '2019-02-01', 'pm1', 'libre', '2018-12-12', 'ref'), +(12764, 188, 0, 254, '2019-02-01', 'pm2', 'libre', '2018-12-12', 'ref'), +(12765, 188, 0, 254, '2019-02-04', 'am1', 'libre', '2018-12-12', 'ref'), +(12766, 188, 0, 254, '2019-02-04', 'am2', 'bloque', '2018-12-12', ''), +(12767, 188, 0, 254, '2019-02-04', 'pm1', 'bloque', '2018-12-12', ''), +(12768, 188, 0, 254, '2019-02-04', 'pm2', 'bloque', '2018-12-12', ''), +(12769, 188, 0, 254, '2019-02-05', 'am1', 'bloque', '2018-12-12', ''), +(12770, 188, 0, 254, '2019-02-05', 'am2', 'bloque', '2018-12-12', ''), +(12771, 188, 0, 254, '2019-02-05', 'pm1', 'bloque', '2018-12-12', ''), +(12772, 188, 0, 254, '2019-02-05', 'pm2', 'libre', '2018-12-12', 'ref'), +(12773, 188, 0, 254, '2019-02-06', 'am1', 'libre', '2018-12-12', 'ref'), +(12774, 188, 0, 254, '2019-02-06', 'am2', 'libre', '2018-12-12', 'ref'), +(12775, 188, 0, 254, '2019-02-06', 'pm1', 'libre', '2018-12-12', 'ref'), +(12776, 188, 0, 254, '2019-02-06', 'pm2', 'libre', '2018-12-12', 'ref'), +(12777, 188, 0, 254, '2019-02-07', 'am1', 'bloque', '2018-12-12', ''), +(12778, 188, 0, 254, '2019-02-07', 'am2', 'bloque', '2018-12-12', ''), +(12779, 188, 0, 254, '2019-02-07', 'pm1', 'libre', '2018-12-12', 'ref'), +(12780, 188, 0, 254, '2019-02-07', 'pm2', 'bloque', '2018-12-12', ''), +(12781, 188, 0, 254, '2019-02-08', 'am1', 'bloque', '2018-12-12', ''), +(12782, 188, 0, 254, '2019-02-08', 'am2', 'bloque', '2018-12-12', ''), +(12783, 188, 0, 254, '2019-02-08', 'pm1', 'libre', '2018-12-12', 'ref'), +(12784, 188, 0, 254, '2019-02-08', 'pm2', 'libre', '2018-12-12', 'ref'), +(12785, 189, 0, 399, '2019-01-17', 'am1', 'bloque', '2018-12-12', 'ref'), +(12786, 189, 63, 399, '2019-01-17', 'am2', 'reserve', '2018-12-12', 'ref'), +(12787, 189, 253, 399, '2019-01-17', 'pm1', 'reserve', '2019-01-10', 'ref'), +(12788, 189, 254, 399, '2019-01-17', 'pm2', 'reserve', '2019-01-10', 'cap'), +(12789, 189, 0, 399, '2019-01-18', 'am1', 'libre', '2019-01-14', 'ref'), +(12790, 189, 0, 399, '2019-01-18', 'am2', 'bloque', '2018-12-12', ''), +(12791, 189, 0, 399, '2019-01-18', 'pm1', 'bloque', '2018-12-12', ''), +(12792, 189, 0, 399, '2019-01-18', 'pm2', 'bloque', '2018-12-12', ''), +(12793, 189, 0, 399, '2019-01-21', 'am1', 'bloque', '2018-12-12', ''), +(12794, 189, 0, 399, '2019-01-21', 'am2', 'bloque', '2018-12-12', ''), +(12795, 189, 0, 399, '2019-01-21', 'pm1', 'bloque', '2018-12-12', ''), +(12796, 189, 0, 399, '2019-01-21', 'pm2', 'bloque', '2018-12-12', ''), +(12797, 189, 0, 399, '2019-01-22', 'am1', 'bloque', '2018-12-12', ''), +(12798, 189, 0, 399, '2019-01-22', 'am2', 'bloque', '2018-12-12', ''), +(12799, 189, 0, 399, '2019-01-22', 'pm1', 'bloque', '2018-12-12', ''), +(12800, 189, 0, 399, '2019-01-22', 'pm2', 'bloque', '2018-12-12', ''), +(12801, 189, 0, 399, '2019-01-23', 'am1', 'bloque', '2018-12-12', ''), +(12802, 189, 0, 399, '2019-01-23', 'am2', 'bloque', '2018-12-12', ''), +(12803, 189, 0, 399, '2019-01-23', 'pm1', 'bloque', '2018-12-12', ''), +(12804, 189, 0, 399, '2019-01-23', 'pm2', 'bloque', '2018-12-12', ''), +(12805, 189, 0, 399, '2019-01-24', 'am1', 'bloque', '2018-12-12', ''), +(12806, 189, 0, 399, '2019-01-24', 'am2', 'bloque', '2018-12-12', ''), +(12807, 189, 0, 399, '2019-01-24', 'pm1', 'bloque', '2018-12-12', ''), +(12808, 189, 0, 399, '2019-01-24', 'pm2', 'bloque', '2018-12-12', ''), +(12809, 189, 0, 399, '2019-01-25', 'am1', 'bloque', '2018-12-12', ''), +(12810, 189, 0, 399, '2019-01-25', 'am2', 'bloque', '2018-12-12', ''), +(12811, 189, 0, 399, '2019-01-25', 'pm1', 'bloque', '2018-12-12', ''), +(12812, 189, 0, 399, '2019-01-25', 'pm2', 'bloque', '2018-12-12', ''), +(12813, 189, 0, 399, '2019-01-28', 'am1', 'bloque', '2018-12-12', ''), +(12814, 189, 0, 399, '2019-01-28', 'am2', 'bloque', '2018-12-12', ''), +(12815, 189, 0, 399, '2019-01-28', 'pm1', 'bloque', '2018-12-12', ''), +(12816, 189, 0, 399, '2019-01-28', 'pm2', 'bloque', '2018-12-12', ''), +(12817, 189, 0, 399, '2019-01-29', 'am1', 'bloque', '2018-12-12', ''), +(12818, 189, 0, 399, '2019-01-29', 'am2', 'bloque', '2018-12-12', ''), +(12819, 189, 0, 399, '2019-01-29', 'pm1', 'bloque', '2018-12-12', ''), +(12820, 189, 0, 399, '2019-01-29', 'pm2', 'bloque', '2018-12-12', ''), +(12821, 189, 0, 399, '2019-01-30', 'am1', 'bloque', '2018-12-12', ''), +(12822, 189, 0, 399, '2019-01-30', 'am2', 'bloque', '2018-12-12', ''), +(12823, 189, 0, 399, '2019-01-30', 'pm1', 'bloque', '2018-12-12', ''), +(12824, 189, 0, 399, '2019-01-30', 'pm2', 'bloque', '2018-12-12', ''), +(12825, 189, 0, 399, '2019-01-31', 'am1', 'bloque', '2018-12-12', ''), +(12826, 189, 0, 399, '2019-01-31', 'am2', 'bloque', '2018-12-12', ''), +(12827, 189, 0, 399, '2019-01-31', 'pm1', 'bloque', '2018-12-12', ''), +(12828, 189, 0, 399, '2019-01-31', 'pm2', 'bloque', '2018-12-12', ''), +(12829, 189, 0, 399, '2019-02-01', 'am1', 'bloque', '2018-12-12', ''), +(12830, 189, 0, 399, '2019-02-01', 'am2', 'bloque', '2018-12-12', ''), +(12831, 189, 0, 399, '2019-02-01', 'pm1', 'bloque', '2018-12-12', ''), +(12832, 189, 0, 399, '2019-02-01', 'pm2', 'bloque', '2018-12-12', ''), +(12833, 189, 0, 399, '2019-02-04', 'am1', 'bloque', '2018-12-12', ''), +(12834, 189, 0, 399, '2019-02-04', 'am2', 'bloque', '2018-12-12', ''), +(12835, 189, 0, 399, '2019-02-04', 'pm1', 'bloque', '2018-12-12', ''), +(12836, 189, 0, 399, '2019-02-04', 'pm2', 'bloque', '2018-12-12', ''), +(12837, 189, 0, 399, '2019-02-05', 'am1', 'bloque', '2018-12-12', ''), +(12838, 189, 0, 399, '2019-02-05', 'am2', 'bloque', '2018-12-12', ''), +(12839, 189, 0, 399, '2019-02-05', 'pm1', 'bloque', '2018-12-12', ''), +(12840, 189, 0, 399, '2019-02-05', 'pm2', 'bloque', '2018-12-12', ''), +(12841, 189, 0, 399, '2019-02-06', 'am1', 'bloque', '2018-12-12', ''), +(12842, 189, 0, 399, '2019-02-06', 'am2', 'bloque', '2018-12-12', ''), +(12843, 189, 0, 399, '2019-02-06', 'pm1', 'bloque', '2018-12-12', ''), +(12844, 189, 0, 399, '2019-02-06', 'pm2', 'bloque', '2018-12-12', ''), +(12845, 189, 0, 399, '2019-02-07', 'am1', 'bloque', '2018-12-12', ''), +(12846, 189, 0, 399, '2019-02-07', 'am2', 'bloque', '2018-12-12', ''), +(12847, 189, 0, 399, '2019-02-07', 'pm1', 'bloque', '2018-12-12', ''), +(12848, 189, 0, 399, '2019-02-07', 'pm2', 'bloque', '2018-12-12', ''), +(12849, 189, 0, 399, '2019-02-08', 'am1', 'bloque', '2018-12-12', ''), +(12850, 189, 0, 399, '2019-02-08', 'am2', 'bloque', '2018-12-12', ''), +(12851, 189, 0, 399, '2019-02-08', 'pm1', 'bloque', '2018-12-12', ''), +(12852, 189, 0, 399, '2019-02-08', 'pm2', 'bloque', '2018-12-12', ''), +(12853, 190, 0, 357, '2019-01-17', 'am1', 'libre', '2018-12-12', ''), +(12854, 190, 0, 357, '2019-01-17', 'am2', 'libre', '2018-12-12', ''), +(12855, 190, 0, 357, '2019-01-17', 'pm1', 'libre', '2018-12-12', ''), +(12856, 190, 0, 357, '2019-01-17', 'pm2', 'libre', '2018-12-12', ''), +(12857, 190, 0, 357, '2019-01-18', 'am1', 'bloque', '2018-12-12', ''), +(12858, 190, 0, 357, '2019-01-18', 'am2', 'bloque', '2018-12-12', ''), +(12859, 190, 0, 357, '2019-01-18', 'pm1', 'bloque', '2018-12-12', ''), +(12860, 190, 0, 357, '2019-01-18', 'pm2', 'bloque', '2018-12-12', ''), +(12861, 190, 0, 357, '2019-01-21', 'am1', 'bloque', '2018-12-12', ''), +(12862, 190, 0, 357, '2019-01-21', 'am2', 'bloque', '2018-12-12', ''), +(12863, 190, 0, 357, '2019-01-21', 'pm1', 'bloque', '2018-12-12', ''), +(12864, 190, 0, 357, '2019-01-21', 'pm2', 'bloque', '2018-12-12', ''), +(12865, 190, 0, 357, '2019-01-22', 'am1', 'bloque', '2018-12-12', ''), +(12866, 190, 0, 357, '2019-01-22', 'am2', 'bloque', '2018-12-12', ''), +(12867, 190, 0, 357, '2019-01-22', 'pm1', 'bloque', '2018-12-12', ''), +(12868, 190, 0, 357, '2019-01-22', 'pm2', 'bloque', '2018-12-12', ''), +(12869, 190, 0, 357, '2019-01-23', 'am1', 'bloque', '2018-12-12', ''), +(12870, 190, 0, 357, '2019-01-23', 'am2', 'bloque', '2018-12-12', ''), +(12871, 190, 0, 357, '2019-01-23', 'pm1', 'bloque', '2018-12-12', ''), +(12872, 190, 0, 357, '2019-01-23', 'pm2', 'bloque', '2018-12-12', ''), +(12873, 190, 0, 357, '2019-01-24', 'am1', 'bloque', '2018-12-12', ''), +(12874, 190, 0, 357, '2019-01-24', 'am2', 'bloque', '2018-12-12', ''), +(12875, 190, 0, 357, '2019-01-24', 'pm1', 'bloque', '2018-12-12', ''), +(12876, 190, 0, 357, '2019-01-24', 'pm2', 'bloque', '2018-12-12', ''), +(12877, 190, 0, 357, '2019-01-25', 'am1', 'bloque', '2018-12-12', ''), +(12878, 190, 0, 357, '2019-01-25', 'am2', 'bloque', '2018-12-12', ''), +(12879, 190, 0, 357, '2019-01-25', 'pm1', 'bloque', '2018-12-12', ''), +(12880, 190, 0, 357, '2019-01-25', 'pm2', 'bloque', '2018-12-12', ''), +(12881, 190, 0, 357, '2019-01-28', 'am1', 'bloque', '2018-12-12', ''), +(12882, 190, 0, 357, '2019-01-28', 'am2', 'bloque', '2018-12-12', ''), +(12883, 190, 0, 357, '2019-01-28', 'pm1', 'bloque', '2018-12-12', ''), +(12884, 190, 0, 357, '2019-01-28', 'pm2', 'bloque', '2018-12-12', ''), +(12885, 190, 0, 357, '2019-01-29', 'am1', 'bloque', '2018-12-12', ''), +(12886, 190, 0, 357, '2019-01-29', 'am2', 'bloque', '2018-12-12', ''), +(12887, 190, 0, 357, '2019-01-29', 'pm1', 'bloque', '2018-12-12', ''), +(12888, 190, 0, 357, '2019-01-29', 'pm2', 'bloque', '2018-12-12', ''), +(12889, 190, 0, 357, '2019-01-30', 'am1', 'bloque', '2018-12-12', ''), +(12890, 190, 0, 357, '2019-01-30', 'am2', 'bloque', '2018-12-12', ''), +(12891, 190, 0, 357, '2019-01-30', 'pm1', 'bloque', '2018-12-12', ''), +(12892, 190, 0, 357, '2019-01-30', 'pm2', 'bloque', '2018-12-12', ''), +(12893, 190, 0, 357, '2019-01-31', 'am1', 'bloque', '2018-12-12', ''), +(12894, 190, 0, 357, '2019-01-31', 'am2', 'bloque', '2018-12-12', ''), +(12895, 190, 0, 357, '2019-01-31', 'pm1', 'bloque', '2018-12-12', ''), +(12896, 190, 0, 357, '2019-01-31', 'pm2', 'bloque', '2018-12-12', ''), +(12897, 190, 0, 357, '2019-02-01', 'am1', 'bloque', '2018-12-12', ''), +(12898, 190, 0, 357, '2019-02-01', 'am2', 'bloque', '2018-12-12', ''), +(12899, 190, 0, 357, '2019-02-01', 'pm1', 'bloque', '2018-12-12', ''), +(12900, 190, 0, 357, '2019-02-01', 'pm2', 'bloque', '2018-12-12', ''), +(12901, 190, 0, 357, '2019-02-04', 'am1', 'bloque', '2018-12-12', ''), +(12902, 190, 0, 357, '2019-02-04', 'am2', 'bloque', '2018-12-12', ''), +(12903, 190, 0, 357, '2019-02-04', 'pm1', 'bloque', '2018-12-12', ''), +(12904, 190, 0, 357, '2019-02-04', 'pm2', 'bloque', '2018-12-12', ''), +(12905, 190, 0, 357, '2019-02-05', 'am1', 'bloque', '2018-12-12', ''), +(12906, 190, 0, 357, '2019-02-05', 'am2', 'bloque', '2018-12-12', ''), +(12907, 190, 0, 357, '2019-02-05', 'pm1', 'bloque', '2018-12-12', ''), +(12908, 190, 0, 357, '2019-02-05', 'pm2', 'bloque', '2018-12-12', ''), +(12909, 190, 0, 357, '2019-02-06', 'am1', 'bloque', '2018-12-12', ''), +(12910, 190, 0, 357, '2019-02-06', 'am2', 'bloque', '2018-12-12', ''), +(12911, 190, 0, 357, '2019-02-06', 'pm1', 'bloque', '2018-12-12', ''), +(12912, 190, 0, 357, '2019-02-06', 'pm2', 'bloque', '2018-12-12', ''), +(12913, 190, 0, 357, '2019-02-07', 'am1', 'bloque', '2018-12-12', ''), +(12914, 190, 0, 357, '2019-02-07', 'am2', 'bloque', '2018-12-12', ''), +(12915, 190, 0, 357, '2019-02-07', 'pm1', 'bloque', '2018-12-12', ''), +(12916, 190, 0, 357, '2019-02-07', 'pm2', 'bloque', '2018-12-12', ''), +(12917, 190, 0, 357, '2019-02-08', 'am1', 'bloque', '2018-12-12', ''), +(12918, 190, 0, 357, '2019-02-08', 'am2', 'bloque', '2018-12-12', ''), +(12919, 190, 0, 357, '2019-02-08', 'pm1', 'bloque', '2018-12-12', ''), +(12920, 190, 0, 357, '2019-02-08', 'pm2', 'bloque', '2018-12-12', ''), +(12921, 191, 0, 78, '2019-01-17', 'am1', 'libre', '2018-12-12', ''), +(12922, 191, 62, 78, '2019-01-17', 'am2', 'reserve', '2018-12-12', 'cap'), +(12923, 191, 0, 78, '2019-01-17', 'pm1', 'libre', '2018-12-12', ''), +(12924, 191, 0, 78, '2019-01-17', 'pm2', 'libre', '2018-12-12', ''), +(12925, 191, 0, 78, '2019-01-18', 'am1', 'bloque', '2018-12-12', ''), +(12926, 191, 0, 78, '2019-01-18', 'am2', 'bloque', '2018-12-12', ''), +(12927, 191, 0, 78, '2019-01-18', 'pm1', 'bloque', '2018-12-12', ''), +(12928, 191, 0, 78, '2019-01-18', 'pm2', 'bloque', '2018-12-12', ''), +(12929, 191, 0, 78, '2019-01-21', 'am1', 'bloque', '2018-12-12', ''), +(12930, 191, 0, 78, '2019-01-21', 'am2', 'bloque', '2018-12-12', ''), +(12931, 191, 0, 78, '2019-01-21', 'pm1', 'bloque', '2018-12-12', ''), +(12932, 191, 0, 78, '2019-01-21', 'pm2', 'bloque', '2018-12-12', ''), +(12933, 191, 0, 78, '2019-01-22', 'am1', 'bloque', '2018-12-12', ''), +(12934, 191, 0, 78, '2019-01-22', 'am2', 'bloque', '2018-12-12', ''), +(12935, 191, 0, 78, '2019-01-22', 'pm1', 'bloque', '2018-12-12', ''), +(12936, 191, 0, 78, '2019-01-22', 'pm2', 'bloque', '2018-12-12', ''), +(12937, 191, 0, 78, '2019-01-23', 'am1', 'bloque', '2018-12-12', ''), +(12938, 191, 0, 78, '2019-01-23', 'am2', 'bloque', '2018-12-12', ''), +(12939, 191, 0, 78, '2019-01-23', 'pm1', 'bloque', '2018-12-12', ''), +(12940, 191, 0, 78, '2019-01-23', 'pm2', 'bloque', '2018-12-12', ''), +(12941, 191, 0, 78, '2019-01-24', 'am1', 'bloque', '2018-12-12', ''), +(12942, 191, 0, 78, '2019-01-24', 'am2', 'bloque', '2018-12-12', ''), +(12943, 191, 0, 78, '2019-01-24', 'pm1', 'bloque', '2018-12-12', ''), +(12944, 191, 0, 78, '2019-01-24', 'pm2', 'bloque', '2018-12-12', ''), +(12945, 191, 0, 78, '2019-01-25', 'am1', 'bloque', '2018-12-12', ''), +(12946, 191, 0, 78, '2019-01-25', 'am2', 'bloque', '2018-12-12', ''), +(12947, 191, 0, 78, '2019-01-25', 'pm1', 'bloque', '2018-12-12', ''), +(12948, 191, 0, 78, '2019-01-25', 'pm2', 'bloque', '2018-12-12', ''), +(12949, 191, 0, 78, '2019-01-28', 'am1', 'bloque', '2018-12-12', ''), +(12950, 191, 0, 78, '2019-01-28', 'am2', 'bloque', '2018-12-12', ''), +(12951, 191, 0, 78, '2019-01-28', 'pm1', 'bloque', '2018-12-12', ''), +(12952, 191, 0, 78, '2019-01-28', 'pm2', 'bloque', '2018-12-12', ''), +(12953, 191, 0, 78, '2019-01-29', 'am1', 'bloque', '2018-12-12', ''), +(12954, 191, 0, 78, '2019-01-29', 'am2', 'bloque', '2018-12-12', ''), +(12955, 191, 0, 78, '2019-01-29', 'pm1', 'bloque', '2018-12-12', ''), +(12956, 191, 0, 78, '2019-01-29', 'pm2', 'bloque', '2018-12-12', ''), +(12957, 191, 0, 78, '2019-01-30', 'am1', 'bloque', '2018-12-12', ''), +(12958, 191, 0, 78, '2019-01-30', 'am2', 'bloque', '2018-12-12', ''), +(12959, 191, 0, 78, '2019-01-30', 'pm1', 'bloque', '2018-12-12', ''), +(12960, 191, 0, 78, '2019-01-30', 'pm2', 'bloque', '2018-12-12', ''), +(12961, 191, 0, 78, '2019-01-31', 'am1', 'bloque', '2018-12-12', ''), +(12962, 191, 0, 78, '2019-01-31', 'am2', 'bloque', '2018-12-12', ''), +(12963, 191, 0, 78, '2019-01-31', 'pm1', 'bloque', '2018-12-12', ''), +(12964, 191, 0, 78, '2019-01-31', 'pm2', 'bloque', '2018-12-12', ''), +(12965, 191, 0, 78, '2019-02-01', 'am1', 'bloque', '2018-12-12', ''), +(12966, 191, 0, 78, '2019-02-01', 'am2', 'bloque', '2018-12-12', ''), +(12967, 191, 0, 78, '2019-02-01', 'pm1', 'bloque', '2018-12-12', ''), +(12968, 191, 0, 78, '2019-02-01', 'pm2', 'bloque', '2018-12-12', ''), +(12969, 191, 0, 78, '2019-02-04', 'am1', 'bloque', '2018-12-12', ''), +(12970, 191, 0, 78, '2019-02-04', 'am2', 'bloque', '2018-12-12', ''), +(12971, 191, 0, 78, '2019-02-04', 'pm1', 'bloque', '2018-12-12', ''), +(12972, 191, 0, 78, '2019-02-04', 'pm2', 'bloque', '2018-12-12', ''), +(12973, 191, 0, 78, '2019-02-05', 'am1', 'bloque', '2018-12-12', ''), +(12974, 191, 0, 78, '2019-02-05', 'am2', 'bloque', '2018-12-12', ''), +(12975, 191, 0, 78, '2019-02-05', 'pm1', 'bloque', '2018-12-12', ''), +(12976, 191, 0, 78, '2019-02-05', 'pm2', 'bloque', '2018-12-12', ''), +(12977, 191, 0, 78, '2019-02-06', 'am1', 'bloque', '2018-12-12', ''), +(12978, 191, 0, 78, '2019-02-06', 'am2', 'bloque', '2018-12-12', ''), +(12979, 191, 0, 78, '2019-02-06', 'pm1', 'bloque', '2018-12-12', ''), +(12980, 191, 0, 78, '2019-02-06', 'pm2', 'bloque', '2018-12-12', ''), +(12981, 191, 0, 78, '2019-02-07', 'am1', 'bloque', '2018-12-12', ''), +(12982, 191, 0, 78, '2019-02-07', 'am2', 'bloque', '2018-12-12', ''), +(12983, 191, 0, 78, '2019-02-07', 'pm1', 'bloque', '2018-12-12', ''), +(12984, 191, 0, 78, '2019-02-07', 'pm2', 'bloque', '2018-12-12', ''), +(12985, 191, 0, 78, '2019-02-08', 'am1', 'bloque', '2018-12-12', ''), +(12986, 191, 0, 78, '2019-02-08', 'am2', 'bloque', '2018-12-12', ''), +(12987, 191, 0, 78, '2019-02-08', 'pm1', 'bloque', '2018-12-12', ''), +(12988, 191, 0, 78, '2019-02-08', 'pm2', 'bloque', '2018-12-12', ''), +(12989, 192, 59, 79, '2019-01-17', 'am1', 'reserve', '2018-12-12', 'ref'), +(12990, 192, 281, 79, '2019-01-17', 'am2', 'reserve', '2019-01-15', 'ref'), +(12991, 192, 61, 79, '2019-01-17', 'pm1', 'reserve', '2018-12-12', 'ref'), +(12992, 192, 283, 79, '2019-01-17', 'pm2', 'reserve', '2019-01-15', 'ref'), +(12993, 192, 0, 79, '2019-01-18', 'am1', 'bloque', '2018-12-12', ''), +(12994, 192, 0, 79, '2019-01-18', 'am2', 'bloque', '2018-12-12', ''), +(12995, 192, 0, 79, '2019-01-18', 'pm1', 'bloque', '2018-12-12', ''), +(12996, 192, 0, 79, '2019-01-18', 'pm2', 'bloque', '2018-12-12', ''), +(12997, 192, 0, 79, '2019-01-21', 'am1', 'bloque', '2018-12-12', ''), +(12998, 192, 0, 79, '2019-01-21', 'am2', 'bloque', '2018-12-12', ''), +(12999, 192, 0, 79, '2019-01-21', 'pm1', 'bloque', '2018-12-12', ''), +(13000, 192, 0, 79, '2019-01-21', 'pm2', 'bloque', '2018-12-12', ''), +(13001, 192, 0, 79, '2019-01-22', 'am1', 'bloque', '2018-12-12', ''), +(13002, 192, 0, 79, '2019-01-22', 'am2', 'bloque', '2018-12-12', ''), +(13003, 192, 0, 79, '2019-01-22', 'pm1', 'bloque', '2018-12-12', ''), +(13004, 192, 0, 79, '2019-01-22', 'pm2', 'bloque', '2018-12-12', ''), +(13005, 192, 0, 79, '2019-01-23', 'am1', 'bloque', '2018-12-12', ''), +(13006, 192, 0, 79, '2019-01-23', 'am2', 'bloque', '2018-12-12', ''), +(13007, 192, 0, 79, '2019-01-23', 'pm1', 'bloque', '2018-12-12', ''), +(13008, 192, 0, 79, '2019-01-23', 'pm2', 'bloque', '2018-12-12', ''), +(13009, 192, 0, 79, '2019-01-24', 'am1', 'bloque', '2018-12-12', ''), +(13010, 192, 0, 79, '2019-01-24', 'am2', 'bloque', '2018-12-12', ''), +(13011, 192, 0, 79, '2019-01-24', 'pm1', 'bloque', '2018-12-12', ''), +(13012, 192, 0, 79, '2019-01-24', 'pm2', 'bloque', '2018-12-12', ''), +(13013, 192, 0, 79, '2019-01-25', 'am1', 'bloque', '2018-12-12', ''), +(13014, 192, 0, 79, '2019-01-25', 'am2', 'bloque', '2018-12-12', ''), +(13015, 192, 0, 79, '2019-01-25', 'pm1', 'bloque', '2018-12-12', ''), +(13016, 192, 0, 79, '2019-01-25', 'pm2', 'bloque', '2018-12-12', ''), +(13017, 192, 0, 79, '2019-01-28', 'am1', 'bloque', '2018-12-12', ''), +(13018, 192, 0, 79, '2019-01-28', 'am2', 'bloque', '2018-12-12', ''), +(13019, 192, 0, 79, '2019-01-28', 'pm1', 'bloque', '2018-12-12', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(13020, 192, 0, 79, '2019-01-28', 'pm2', 'bloque', '2018-12-12', ''), +(13021, 192, 0, 79, '2019-01-29', 'am1', 'bloque', '2018-12-12', ''), +(13022, 192, 0, 79, '2019-01-29', 'am2', 'bloque', '2018-12-12', ''), +(13023, 192, 0, 79, '2019-01-29', 'pm1', 'bloque', '2018-12-12', ''), +(13024, 192, 0, 79, '2019-01-29', 'pm2', 'bloque', '2018-12-12', ''), +(13025, 192, 0, 79, '2019-01-30', 'am1', 'bloque', '2018-12-12', ''), +(13026, 192, 0, 79, '2019-01-30', 'am2', 'bloque', '2018-12-12', ''), +(13027, 192, 0, 79, '2019-01-30', 'pm1', 'bloque', '2018-12-12', ''), +(13028, 192, 0, 79, '2019-01-30', 'pm2', 'bloque', '2018-12-12', ''), +(13029, 192, 0, 79, '2019-01-31', 'am1', 'bloque', '2018-12-12', ''), +(13030, 192, 0, 79, '2019-01-31', 'am2', 'bloque', '2018-12-12', ''), +(13031, 192, 0, 79, '2019-01-31', 'pm1', 'bloque', '2018-12-12', ''), +(13032, 192, 0, 79, '2019-01-31', 'pm2', 'bloque', '2018-12-12', ''), +(13033, 192, 0, 79, '2019-02-01', 'am1', 'bloque', '2018-12-12', ''), +(13034, 192, 0, 79, '2019-02-01', 'am2', 'bloque', '2018-12-12', ''), +(13035, 192, 0, 79, '2019-02-01', 'pm1', 'bloque', '2018-12-12', ''), +(13036, 192, 0, 79, '2019-02-01', 'pm2', 'bloque', '2018-12-12', ''), +(13037, 192, 0, 79, '2019-02-04', 'am1', 'bloque', '2018-12-12', ''), +(13038, 192, 0, 79, '2019-02-04', 'am2', 'bloque', '2018-12-12', ''), +(13039, 192, 0, 79, '2019-02-04', 'pm1', 'bloque', '2018-12-12', ''), +(13040, 192, 0, 79, '2019-02-04', 'pm2', 'bloque', '2018-12-12', ''), +(13041, 192, 0, 79, '2019-02-05', 'am1', 'bloque', '2018-12-12', ''), +(13042, 192, 0, 79, '2019-02-05', 'am2', 'bloque', '2018-12-12', ''), +(13043, 192, 0, 79, '2019-02-05', 'pm1', 'bloque', '2018-12-12', ''), +(13044, 192, 0, 79, '2019-02-05', 'pm2', 'bloque', '2018-12-12', ''), +(13045, 192, 0, 79, '2019-02-06', 'am1', 'bloque', '2018-12-12', ''), +(13046, 192, 0, 79, '2019-02-06', 'am2', 'bloque', '2018-12-12', ''), +(13047, 192, 0, 79, '2019-02-06', 'pm1', 'bloque', '2018-12-12', ''), +(13048, 192, 0, 79, '2019-02-06', 'pm2', 'bloque', '2018-12-12', ''), +(13049, 192, 0, 79, '2019-02-07', 'am1', 'bloque', '2018-12-12', ''), +(13050, 192, 0, 79, '2019-02-07', 'am2', 'bloque', '2018-12-12', ''), +(13051, 192, 0, 79, '2019-02-07', 'pm1', 'bloque', '2018-12-12', ''), +(13052, 192, 0, 79, '2019-02-07', 'pm2', 'bloque', '2018-12-12', ''), +(13053, 192, 0, 79, '2019-02-08', 'am1', 'bloque', '2018-12-12', ''), +(13054, 192, 0, 79, '2019-02-08', 'am2', 'bloque', '2018-12-12', ''), +(13055, 192, 0, 79, '2019-02-08', 'pm1', 'bloque', '2018-12-12', ''), +(13056, 192, 0, 79, '2019-02-08', 'pm2', 'bloque', '2018-12-12', ''), +(13057, 193, 198, 339, '2019-01-17', 'am1', 'reserve', '2019-01-07', 'ref'), +(13058, 193, 0, 339, '2019-01-17', 'am2', 'libre', '2018-12-12', ''), +(13059, 193, 0, 339, '2019-01-17', 'pm1', 'libre', '2018-12-12', ''), +(13060, 193, 0, 339, '2019-01-17', 'pm2', 'libre', '2018-12-12', ''), +(13061, 193, 0, 339, '2019-01-18', 'am1', 'bloque', '2018-12-12', ''), +(13062, 193, 0, 339, '2019-01-18', 'am2', 'bloque', '2018-12-12', ''), +(13063, 193, 0, 339, '2019-01-18', 'pm1', 'bloque', '2018-12-12', ''), +(13064, 193, 0, 339, '2019-01-18', 'pm2', 'bloque', '2018-12-12', ''), +(13065, 193, 0, 339, '2019-01-21', 'am1', 'bloque', '2018-12-12', ''), +(13066, 193, 0, 339, '2019-01-21', 'am2', 'bloque', '2018-12-12', ''), +(13067, 193, 0, 339, '2019-01-21', 'pm1', 'bloque', '2018-12-12', ''), +(13068, 193, 0, 339, '2019-01-21', 'pm2', 'bloque', '2018-12-12', ''), +(13069, 193, 0, 339, '2019-01-22', 'am1', 'bloque', '2018-12-12', ''), +(13070, 193, 0, 339, '2019-01-22', 'am2', 'bloque', '2018-12-12', ''), +(13071, 193, 0, 339, '2019-01-22', 'pm1', 'bloque', '2018-12-12', ''), +(13072, 193, 0, 339, '2019-01-22', 'pm2', 'bloque', '2018-12-12', ''), +(13073, 193, 0, 339, '2019-01-23', 'am1', 'bloque', '2018-12-12', ''), +(13074, 193, 0, 339, '2019-01-23', 'am2', 'bloque', '2018-12-12', ''), +(13075, 193, 0, 339, '2019-01-23', 'pm1', 'bloque', '2018-12-12', ''), +(13076, 193, 0, 339, '2019-01-23', 'pm2', 'bloque', '2018-12-12', ''), +(13077, 193, 0, 339, '2019-01-24', 'am1', 'bloque', '2018-12-12', ''), +(13078, 193, 0, 339, '2019-01-24', 'am2', 'bloque', '2018-12-12', ''), +(13079, 193, 0, 339, '2019-01-24', 'pm1', 'bloque', '2018-12-12', ''), +(13080, 193, 0, 339, '2019-01-24', 'pm2', 'bloque', '2018-12-12', ''), +(13081, 193, 0, 339, '2019-01-25', 'am1', 'bloque', '2018-12-12', ''), +(13082, 193, 0, 339, '2019-01-25', 'am2', 'bloque', '2018-12-12', ''), +(13083, 193, 0, 339, '2019-01-25', 'pm1', 'bloque', '2018-12-12', ''), +(13084, 193, 0, 339, '2019-01-25', 'pm2', 'bloque', '2018-12-12', ''), +(13085, 193, 0, 339, '2019-01-28', 'am1', 'bloque', '2018-12-12', ''), +(13086, 193, 0, 339, '2019-01-28', 'am2', 'bloque', '2018-12-12', ''), +(13087, 193, 0, 339, '2019-01-28', 'pm1', 'bloque', '2018-12-12', ''), +(13088, 193, 0, 339, '2019-01-28', 'pm2', 'bloque', '2018-12-12', ''), +(13089, 193, 0, 339, '2019-01-29', 'am1', 'bloque', '2018-12-12', ''), +(13090, 193, 0, 339, '2019-01-29', 'am2', 'bloque', '2018-12-12', ''), +(13091, 193, 0, 339, '2019-01-29', 'pm1', 'bloque', '2018-12-12', ''), +(13092, 193, 0, 339, '2019-01-29', 'pm2', 'bloque', '2018-12-12', ''), +(13093, 193, 0, 339, '2019-01-30', 'am1', 'bloque', '2018-12-12', ''), +(13094, 193, 0, 339, '2019-01-30', 'am2', 'bloque', '2018-12-12', ''), +(13095, 193, 0, 339, '2019-01-30', 'pm1', 'bloque', '2018-12-12', ''), +(13096, 193, 0, 339, '2019-01-30', 'pm2', 'bloque', '2018-12-12', ''), +(13097, 193, 0, 339, '2019-01-31', 'am1', 'bloque', '2018-12-12', ''), +(13098, 193, 0, 339, '2019-01-31', 'am2', 'bloque', '2018-12-12', ''), +(13099, 193, 0, 339, '2019-01-31', 'pm1', 'bloque', '2018-12-12', ''), +(13100, 193, 0, 339, '2019-01-31', 'pm2', 'bloque', '2018-12-12', ''), +(13101, 193, 0, 339, '2019-02-01', 'am1', 'bloque', '2018-12-12', ''), +(13102, 193, 0, 339, '2019-02-01', 'am2', 'bloque', '2018-12-12', ''), +(13103, 193, 0, 339, '2019-02-01', 'pm1', 'bloque', '2018-12-12', ''), +(13104, 193, 0, 339, '2019-02-01', 'pm2', 'bloque', '2018-12-12', ''), +(13105, 193, 0, 339, '2019-02-04', 'am1', 'bloque', '2018-12-12', ''), +(13106, 193, 0, 339, '2019-02-04', 'am2', 'bloque', '2018-12-12', ''), +(13107, 193, 0, 339, '2019-02-04', 'pm1', 'bloque', '2018-12-12', ''), +(13108, 193, 0, 339, '2019-02-04', 'pm2', 'bloque', '2018-12-12', ''), +(13109, 193, 0, 339, '2019-02-05', 'am1', 'bloque', '2018-12-12', ''), +(13110, 193, 0, 339, '2019-02-05', 'am2', 'bloque', '2018-12-12', ''), +(13111, 193, 0, 339, '2019-02-05', 'pm1', 'bloque', '2018-12-12', ''), +(13112, 193, 0, 339, '2019-02-05', 'pm2', 'bloque', '2018-12-12', ''), +(13113, 193, 0, 339, '2019-02-06', 'am1', 'bloque', '2018-12-12', ''), +(13114, 193, 0, 339, '2019-02-06', 'am2', 'bloque', '2018-12-12', ''), +(13115, 193, 0, 339, '2019-02-06', 'pm1', 'bloque', '2018-12-12', ''), +(13116, 193, 0, 339, '2019-02-06', 'pm2', 'bloque', '2018-12-12', ''), +(13117, 193, 0, 339, '2019-02-07', 'am1', 'bloque', '2018-12-12', ''), +(13118, 193, 0, 339, '2019-02-07', 'am2', 'bloque', '2018-12-12', ''), +(13119, 193, 0, 339, '2019-02-07', 'pm1', 'bloque', '2018-12-12', ''), +(13120, 193, 0, 339, '2019-02-07', 'pm2', 'bloque', '2018-12-12', ''), +(13121, 193, 0, 339, '2019-02-08', 'am1', 'bloque', '2018-12-12', ''), +(13122, 193, 0, 339, '2019-02-08', 'am2', 'bloque', '2018-12-12', ''), +(13123, 193, 0, 339, '2019-02-08', 'pm1', 'bloque', '2018-12-12', ''), +(13124, 193, 0, 339, '2019-02-08', 'pm2', 'bloque', '2018-12-12', ''), +(13125, 194, 0, 49, '2019-01-17', 'am1', 'libre', '2018-12-12', ''), +(13126, 194, 0, 49, '2019-01-17', 'am2', 'libre', '2018-12-12', ''), +(13127, 194, 0, 49, '2019-01-17', 'pm1', 'libre', '2018-12-12', ''), +(13128, 194, 0, 49, '2019-01-17', 'pm2', 'libre', '2018-12-12', ''), +(13129, 194, 0, 49, '2019-01-18', 'am1', 'libre', '2018-12-12', 'ref'), +(13130, 194, 0, 49, '2019-01-18', 'am2', 'libre', '2018-12-12', 'ref'), +(13131, 194, 0, 49, '2019-01-18', 'pm1', 'libre', '2018-12-12', 'ref'), +(13132, 194, 0, 49, '2019-01-18', 'pm2', 'libre', '2018-12-12', 'ref'), +(13133, 194, 0, 49, '2019-01-21', 'am1', 'bloque', '2018-12-12', ''), +(13134, 194, 0, 49, '2019-01-21', 'am2', 'bloque', '2018-12-12', ''), +(13135, 194, 0, 49, '2019-01-21', 'pm1', 'bloque', '2018-12-12', ''), +(13136, 194, 0, 49, '2019-01-21', 'pm2', 'bloque', '2018-12-12', ''), +(13137, 194, 0, 49, '2019-01-22', 'am1', 'bloque', '2018-12-12', ''), +(13138, 194, 0, 49, '2019-01-22', 'am2', 'bloque', '2018-12-12', ''), +(13139, 194, 0, 49, '2019-01-22', 'pm1', 'bloque', '2018-12-12', ''), +(13140, 194, 0, 49, '2019-01-22', 'pm2', 'bloque', '2018-12-12', ''), +(13141, 194, 0, 49, '2019-01-23', 'am1', 'bloque', '2018-12-12', ''), +(13142, 194, 0, 49, '2019-01-23', 'am2', 'bloque', '2018-12-12', ''), +(13143, 194, 0, 49, '2019-01-23', 'pm1', 'bloque', '2018-12-12', ''), +(13144, 194, 0, 49, '2019-01-23', 'pm2', 'bloque', '2018-12-12', ''), +(13145, 194, 0, 49, '2019-01-24', 'am1', 'bloque', '2018-12-12', ''), +(13146, 194, 0, 49, '2019-01-24', 'am2', 'bloque', '2018-12-12', ''), +(13147, 194, 0, 49, '2019-01-24', 'pm1', 'bloque', '2018-12-12', ''), +(13148, 194, 0, 49, '2019-01-24', 'pm2', 'bloque', '2018-12-12', ''), +(13149, 194, 0, 49, '2019-01-25', 'am1', 'bloque', '2018-12-12', ''), +(13150, 194, 0, 49, '2019-01-25', 'am2', 'bloque', '2018-12-12', ''), +(13151, 194, 0, 49, '2019-01-25', 'pm1', 'bloque', '2018-12-12', ''), +(13152, 194, 0, 49, '2019-01-25', 'pm2', 'bloque', '2018-12-12', ''), +(13153, 194, 0, 49, '2019-01-28', 'am1', 'bloque', '2018-12-12', ''), +(13154, 194, 0, 49, '2019-01-28', 'am2', 'bloque', '2018-12-12', ''), +(13155, 194, 0, 49, '2019-01-28', 'pm1', 'bloque', '2018-12-12', ''), +(13156, 194, 0, 49, '2019-01-28', 'pm2', 'bloque', '2018-12-12', ''), +(13157, 194, 0, 49, '2019-01-29', 'am1', 'bloque', '2018-12-12', ''), +(13158, 194, 0, 49, '2019-01-29', 'am2', 'bloque', '2018-12-12', ''), +(13159, 194, 0, 49, '2019-01-29', 'pm1', 'bloque', '2018-12-12', ''), +(13160, 194, 0, 49, '2019-01-29', 'pm2', 'bloque', '2018-12-12', ''), +(13161, 194, 0, 49, '2019-01-30', 'am1', 'bloque', '2018-12-12', ''), +(13162, 194, 0, 49, '2019-01-30', 'am2', 'bloque', '2018-12-12', ''), +(13163, 194, 0, 49, '2019-01-30', 'pm1', 'bloque', '2018-12-12', ''), +(13164, 194, 0, 49, '2019-01-30', 'pm2', 'bloque', '2018-12-12', ''), +(13165, 194, 0, 49, '2019-01-31', 'am1', 'bloque', '2018-12-12', ''), +(13166, 194, 0, 49, '2019-01-31', 'am2', 'bloque', '2018-12-12', ''), +(13167, 194, 0, 49, '2019-01-31', 'pm1', 'bloque', '2018-12-12', ''), +(13168, 194, 0, 49, '2019-01-31', 'pm2', 'bloque', '2018-12-12', ''), +(13169, 194, 0, 49, '2019-02-01', 'am1', 'bloque', '2018-12-12', ''), +(13170, 194, 0, 49, '2019-02-01', 'am2', 'bloque', '2018-12-12', ''), +(13171, 194, 0, 49, '2019-02-01', 'pm1', 'bloque', '2018-12-12', ''), +(13172, 194, 0, 49, '2019-02-01', 'pm2', 'bloque', '2018-12-12', ''), +(13173, 194, 0, 49, '2019-02-04', 'am1', 'bloque', '2018-12-12', ''), +(13174, 194, 0, 49, '2019-02-04', 'am2', 'bloque', '2018-12-12', ''), +(13175, 194, 0, 49, '2019-02-04', 'pm1', 'bloque', '2018-12-12', ''), +(13176, 194, 0, 49, '2019-02-04', 'pm2', 'bloque', '2018-12-12', ''), +(13177, 194, 0, 49, '2019-02-05', 'am1', 'bloque', '2018-12-12', ''), +(13178, 194, 0, 49, '2019-02-05', 'am2', 'bloque', '2018-12-12', ''), +(13179, 194, 0, 49, '2019-02-05', 'pm1', 'bloque', '2018-12-12', ''), +(13180, 194, 0, 49, '2019-02-05', 'pm2', 'bloque', '2018-12-12', ''), +(13181, 194, 0, 49, '2019-02-06', 'am1', 'bloque', '2018-12-12', ''), +(13182, 194, 0, 49, '2019-02-06', 'am2', 'bloque', '2018-12-12', ''), +(13183, 194, 0, 49, '2019-02-06', 'pm1', 'bloque', '2018-12-12', ''), +(13184, 194, 0, 49, '2019-02-06', 'pm2', 'bloque', '2018-12-12', ''), +(13185, 194, 0, 49, '2019-02-07', 'am1', 'bloque', '2018-12-12', ''), +(13186, 194, 0, 49, '2019-02-07', 'am2', 'bloque', '2018-12-12', ''), +(13187, 194, 0, 49, '2019-02-07', 'pm1', 'bloque', '2018-12-12', ''), +(13188, 194, 0, 49, '2019-02-07', 'pm2', 'bloque', '2018-12-12', ''), +(13189, 194, 0, 49, '2019-02-08', 'am1', 'bloque', '2018-12-12', ''), +(13190, 194, 0, 49, '2019-02-08', 'am2', 'bloque', '2018-12-12', ''), +(13191, 194, 0, 49, '2019-02-08', 'pm1', 'bloque', '2018-12-12', ''), +(13192, 194, 0, 49, '2019-02-08', 'pm2', 'bloque', '2018-12-12', ''), +(13193, 195, 66, 7, '2019-01-17', 'am1', 'reserve', '2018-12-13', 'ref'), +(13194, 195, 0, 7, '2019-01-17', 'am2', 'libre', '2018-12-13', ''), +(13195, 195, 0, 7, '2019-01-17', 'pm1', 'libre', '2018-12-13', ''), +(13196, 195, 0, 7, '2019-01-17', 'pm2', 'libre', '2018-12-13', ''), +(13197, 195, 0, 7, '2019-01-18', 'am1', 'bloque', '2018-12-13', ''), +(13198, 195, 0, 7, '2019-01-18', 'am2', 'bloque', '2018-12-13', ''), +(13199, 195, 0, 7, '2019-01-18', 'pm1', 'bloque', '2018-12-13', ''), +(13200, 195, 0, 7, '2019-01-18', 'pm2', 'bloque', '2018-12-13', ''), +(13201, 195, 0, 7, '2019-01-21', 'am1', 'bloque', '2018-12-13', ''), +(13202, 195, 0, 7, '2019-01-21', 'am2', 'bloque', '2018-12-13', ''), +(13203, 195, 0, 7, '2019-01-21', 'pm1', 'bloque', '2018-12-13', ''), +(13204, 195, 0, 7, '2019-01-21', 'pm2', 'bloque', '2018-12-13', ''), +(13205, 195, 0, 7, '2019-01-22', 'am1', 'bloque', '2018-12-13', ''), +(13206, 195, 0, 7, '2019-01-22', 'am2', 'bloque', '2018-12-13', ''), +(13207, 195, 0, 7, '2019-01-22', 'pm1', 'bloque', '2018-12-13', ''), +(13208, 195, 0, 7, '2019-01-22', 'pm2', 'bloque', '2018-12-13', ''), +(13209, 195, 0, 7, '2019-01-23', 'am1', 'bloque', '2018-12-13', ''), +(13210, 195, 0, 7, '2019-01-23', 'am2', 'bloque', '2018-12-13', ''), +(13211, 195, 0, 7, '2019-01-23', 'pm1', 'bloque', '2018-12-13', ''), +(13212, 195, 0, 7, '2019-01-23', 'pm2', 'bloque', '2018-12-13', ''), +(13213, 195, 0, 7, '2019-01-24', 'am1', 'bloque', '2018-12-13', ''), +(13214, 195, 0, 7, '2019-01-24', 'am2', 'bloque', '2018-12-13', ''), +(13215, 195, 0, 7, '2019-01-24', 'pm1', 'bloque', '2018-12-13', ''), +(13216, 195, 0, 7, '2019-01-24', 'pm2', 'bloque', '2018-12-13', ''), +(13217, 195, 0, 7, '2019-01-25', 'am1', 'bloque', '2018-12-13', ''), +(13218, 195, 0, 7, '2019-01-25', 'am2', 'bloque', '2018-12-13', ''), +(13219, 195, 0, 7, '2019-01-25', 'pm1', 'bloque', '2018-12-13', ''), +(13220, 195, 0, 7, '2019-01-25', 'pm2', 'bloque', '2018-12-13', ''), +(13221, 195, 0, 7, '2019-01-28', 'am1', 'bloque', '2018-12-13', ''), +(13222, 195, 0, 7, '2019-01-28', 'am2', 'bloque', '2018-12-13', ''), +(13223, 195, 0, 7, '2019-01-28', 'pm1', 'bloque', '2018-12-13', ''), +(13224, 195, 0, 7, '2019-01-28', 'pm2', 'bloque', '2018-12-13', ''), +(13225, 195, 0, 7, '2019-01-29', 'am1', 'bloque', '2018-12-13', ''), +(13226, 195, 0, 7, '2019-01-29', 'am2', 'bloque', '2018-12-13', ''), +(13227, 195, 0, 7, '2019-01-29', 'pm1', 'bloque', '2018-12-13', ''), +(13228, 195, 0, 7, '2019-01-29', 'pm2', 'bloque', '2018-12-13', ''), +(13229, 195, 0, 7, '2019-01-30', 'am1', 'bloque', '2018-12-13', ''), +(13230, 195, 0, 7, '2019-01-30', 'am2', 'bloque', '2018-12-13', ''), +(13231, 195, 0, 7, '2019-01-30', 'pm1', 'bloque', '2018-12-13', ''), +(13232, 195, 0, 7, '2019-01-30', 'pm2', 'bloque', '2018-12-13', ''), +(13233, 195, 0, 7, '2019-01-31', 'am1', 'bloque', '2018-12-13', ''), +(13234, 195, 0, 7, '2019-01-31', 'am2', 'bloque', '2018-12-13', ''), +(13235, 195, 0, 7, '2019-01-31', 'pm1', 'bloque', '2018-12-13', ''), +(13236, 195, 0, 7, '2019-01-31', 'pm2', 'bloque', '2018-12-13', ''), +(13237, 195, 0, 7, '2019-02-01', 'am1', 'bloque', '2018-12-13', ''), +(13238, 195, 0, 7, '2019-02-01', 'am2', 'bloque', '2018-12-13', ''), +(13239, 195, 0, 7, '2019-02-01', 'pm1', 'bloque', '2018-12-13', ''), +(13240, 195, 0, 7, '2019-02-01', 'pm2', 'bloque', '2018-12-13', ''), +(13241, 195, 0, 7, '2019-02-04', 'am1', 'bloque', '2018-12-13', ''), +(13242, 195, 0, 7, '2019-02-04', 'am2', 'bloque', '2018-12-13', ''), +(13243, 195, 0, 7, '2019-02-04', 'pm1', 'bloque', '2018-12-13', ''), +(13244, 195, 0, 7, '2019-02-04', 'pm2', 'bloque', '2018-12-13', ''), +(13245, 195, 0, 7, '2019-02-05', 'am1', 'bloque', '2018-12-13', ''), +(13246, 195, 0, 7, '2019-02-05', 'am2', 'bloque', '2018-12-13', ''), +(13247, 195, 0, 7, '2019-02-05', 'pm1', 'bloque', '2018-12-13', ''), +(13248, 195, 0, 7, '2019-02-05', 'pm2', 'bloque', '2018-12-13', ''), +(13249, 195, 0, 7, '2019-02-06', 'am1', 'bloque', '2018-12-13', ''), +(13250, 195, 0, 7, '2019-02-06', 'am2', 'bloque', '2018-12-13', ''), +(13251, 195, 0, 7, '2019-02-06', 'pm1', 'bloque', '2018-12-13', ''), +(13252, 195, 0, 7, '2019-02-06', 'pm2', 'bloque', '2018-12-13', ''), +(13253, 195, 0, 7, '2019-02-07', 'am1', 'bloque', '2018-12-13', ''), +(13254, 195, 0, 7, '2019-02-07', 'am2', 'bloque', '2018-12-13', ''), +(13255, 195, 0, 7, '2019-02-07', 'pm1', 'bloque', '2018-12-13', ''), +(13256, 195, 0, 7, '2019-02-07', 'pm2', 'bloque', '2018-12-13', ''), +(13257, 195, 0, 7, '2019-02-08', 'am1', 'bloque', '2018-12-13', ''), +(13258, 195, 0, 7, '2019-02-08', 'am2', 'bloque', '2018-12-13', ''), +(13259, 195, 0, 7, '2019-02-08', 'pm1', 'bloque', '2018-12-13', ''), +(13260, 195, 0, 7, '2019-02-08', 'pm2', 'bloque', '2018-12-13', ''), +(13261, 196, 113, 404, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'cap'), +(13262, 196, 0, 404, '2019-01-17', 'am2', 'libre', '2018-12-13', ''), +(13263, 196, 0, 404, '2019-01-17', 'pm1', 'libre', '2018-12-13', ''), +(13264, 196, 0, 404, '2019-01-17', 'pm2', 'libre', '2018-12-13', ''), +(13265, 196, 0, 404, '2019-01-18', 'am1', 'libre', '2018-12-18', 'cap'), +(13266, 196, 0, 404, '2019-01-18', 'am2', 'bloque', '2018-12-13', ''), +(13267, 196, 0, 404, '2019-01-18', 'pm1', 'bloque', '2018-12-13', ''), +(13268, 196, 0, 404, '2019-01-18', 'pm2', 'bloque', '2018-12-13', ''), +(13269, 196, 0, 404, '2019-01-21', 'am1', 'bloque', '2018-12-13', ''), +(13270, 196, 0, 404, '2019-01-21', 'am2', 'bloque', '2018-12-13', ''), +(13271, 196, 0, 404, '2019-01-21', 'pm1', 'bloque', '2018-12-13', ''), +(13272, 196, 0, 404, '2019-01-21', 'pm2', 'bloque', '2018-12-13', ''), +(13273, 196, 0, 404, '2019-01-22', 'am1', 'libre', '2018-12-14', 'cap'), +(13274, 196, 0, 404, '2019-01-22', 'am2', 'bloque', '2018-12-13', ''), +(13275, 196, 0, 404, '2019-01-22', 'pm1', 'bloque', '2018-12-13', ''), +(13276, 196, 0, 404, '2019-01-22', 'pm2', 'bloque', '2018-12-13', ''), +(13277, 196, 0, 404, '2019-01-23', 'am1', 'bloque', '2018-12-13', ''), +(13278, 196, 0, 404, '2019-01-23', 'am2', 'bloque', '2018-12-13', ''), +(13279, 196, 0, 404, '2019-01-23', 'pm1', 'bloque', '2018-12-13', ''), +(13280, 196, 0, 404, '2019-01-23', 'pm2', 'bloque', '2018-12-13', ''), +(13281, 196, 0, 404, '2019-01-24', 'am1', 'bloque', '2018-12-13', ''), +(13282, 196, 0, 404, '2019-01-24', 'am2', 'bloque', '2018-12-13', ''), +(13283, 196, 0, 404, '2019-01-24', 'pm1', 'bloque', '2018-12-13', ''), +(13284, 196, 0, 404, '2019-01-24', 'pm2', 'bloque', '2018-12-13', ''), +(13285, 196, 0, 404, '2019-01-25', 'am1', 'bloque', '2018-12-13', ''), +(13286, 196, 0, 404, '2019-01-25', 'am2', 'bloque', '2018-12-13', ''), +(13287, 196, 0, 404, '2019-01-25', 'pm1', 'bloque', '2018-12-13', ''), +(13288, 196, 0, 404, '2019-01-25', 'pm2', 'bloque', '2018-12-13', ''), +(13289, 196, 0, 404, '2019-01-28', 'am1', 'bloque', '2018-12-13', ''), +(13290, 196, 0, 404, '2019-01-28', 'am2', 'bloque', '2018-12-13', ''), +(13291, 196, 0, 404, '2019-01-28', 'pm1', 'bloque', '2018-12-13', ''), +(13292, 196, 0, 404, '2019-01-28', 'pm2', 'bloque', '2018-12-13', ''), +(13293, 196, 0, 404, '2019-01-29', 'am1', 'bloque', '2018-12-13', ''), +(13294, 196, 0, 404, '2019-01-29', 'am2', 'bloque', '2018-12-13', ''), +(13295, 196, 0, 404, '2019-01-29', 'pm1', 'bloque', '2018-12-13', ''), +(13296, 196, 0, 404, '2019-01-29', 'pm2', 'bloque', '2018-12-13', ''), +(13297, 196, 0, 404, '2019-01-30', 'am1', 'bloque', '2018-12-13', ''), +(13298, 196, 0, 404, '2019-01-30', 'am2', 'bloque', '2018-12-13', ''), +(13299, 196, 0, 404, '2019-01-30', 'pm1', 'bloque', '2018-12-13', ''), +(13300, 196, 0, 404, '2019-01-30', 'pm2', 'bloque', '2018-12-13', ''), +(13301, 196, 0, 404, '2019-01-31', 'am1', 'bloque', '2018-12-13', ''), +(13302, 196, 0, 404, '2019-01-31', 'am2', 'bloque', '2018-12-13', ''), +(13303, 196, 0, 404, '2019-01-31', 'pm1', 'bloque', '2018-12-13', ''), +(13304, 196, 0, 404, '2019-01-31', 'pm2', 'bloque', '2018-12-13', ''), +(13305, 196, 0, 404, '2019-02-01', 'am1', 'bloque', '2018-12-13', ''), +(13306, 196, 0, 404, '2019-02-01', 'am2', 'bloque', '2018-12-13', ''), +(13307, 196, 0, 404, '2019-02-01', 'pm1', 'bloque', '2018-12-13', ''), +(13308, 196, 0, 404, '2019-02-01', 'pm2', 'bloque', '2018-12-13', ''), +(13309, 196, 0, 404, '2019-02-04', 'am1', 'bloque', '2018-12-13', ''), +(13310, 196, 0, 404, '2019-02-04', 'am2', 'bloque', '2018-12-13', ''), +(13311, 196, 0, 404, '2019-02-04', 'pm1', 'bloque', '2018-12-13', ''), +(13312, 196, 0, 404, '2019-02-04', 'pm2', 'bloque', '2018-12-13', ''), +(13313, 196, 0, 404, '2019-02-05', 'am1', 'bloque', '2018-12-13', ''), +(13314, 196, 0, 404, '2019-02-05', 'am2', 'bloque', '2018-12-13', ''), +(13315, 196, 0, 404, '2019-02-05', 'pm1', 'bloque', '2018-12-13', ''), +(13316, 196, 0, 404, '2019-02-05', 'pm2', 'bloque', '2018-12-13', ''), +(13317, 196, 0, 404, '2019-02-06', 'am1', 'bloque', '2018-12-13', ''), +(13318, 196, 0, 404, '2019-02-06', 'am2', 'bloque', '2018-12-13', ''), +(13319, 196, 0, 404, '2019-02-06', 'pm1', 'bloque', '2018-12-13', ''), +(13320, 196, 0, 404, '2019-02-06', 'pm2', 'bloque', '2018-12-13', ''), +(13321, 196, 0, 404, '2019-02-07', 'am1', 'bloque', '2018-12-13', ''), +(13322, 196, 0, 404, '2019-02-07', 'am2', 'bloque', '2018-12-13', ''), +(13323, 196, 0, 404, '2019-02-07', 'pm1', 'bloque', '2018-12-13', ''), +(13324, 196, 0, 404, '2019-02-07', 'pm2', 'bloque', '2018-12-13', ''), +(13325, 196, 0, 404, '2019-02-08', 'am1', 'bloque', '2018-12-13', ''), +(13326, 196, 0, 404, '2019-02-08', 'am2', 'bloque', '2018-12-13', ''), +(13327, 196, 0, 404, '2019-02-08', 'pm1', 'bloque', '2018-12-13', ''), +(13328, 196, 0, 404, '2019-02-08', 'pm2', 'bloque', '2018-12-13', ''), +(13329, 197, 0, 186, '2019-01-17', 'am1', 'libre', '2018-12-13', ''), +(13330, 197, 0, 186, '2019-01-17', 'am2', 'libre', '2018-12-13', ''), +(13331, 197, 0, 186, '2019-01-17', 'pm1', 'libre', '2018-12-13', ''), +(13332, 197, 0, 186, '2019-01-17', 'pm2', 'libre', '2018-12-13', ''), +(13333, 197, 0, 186, '2019-01-18', 'am1', 'bloque', '2018-12-13', ''), +(13334, 197, 0, 186, '2019-01-18', 'am2', 'bloque', '2018-12-13', ''), +(13335, 197, 0, 186, '2019-01-18', 'pm1', 'bloque', '2018-12-13', ''), +(13336, 197, 0, 186, '2019-01-18', 'pm2', 'bloque', '2018-12-13', ''), +(13337, 197, 0, 186, '2019-01-21', 'am1', 'bloque', '2018-12-13', ''), +(13338, 197, 0, 186, '2019-01-21', 'am2', 'bloque', '2018-12-13', ''), +(13339, 197, 0, 186, '2019-01-21', 'pm1', 'bloque', '2018-12-13', ''), +(13340, 197, 0, 186, '2019-01-21', 'pm2', 'bloque', '2018-12-13', ''), +(13341, 197, 0, 186, '2019-01-22', 'am1', 'bloque', '2018-12-13', ''), +(13342, 197, 0, 186, '2019-01-22', 'am2', 'bloque', '2018-12-13', ''), +(13343, 197, 0, 186, '2019-01-22', 'pm1', 'bloque', '2018-12-13', ''), +(13344, 197, 0, 186, '2019-01-22', 'pm2', 'bloque', '2018-12-13', ''), +(13345, 197, 0, 186, '2019-01-23', 'am1', 'bloque', '2018-12-13', ''), +(13346, 197, 0, 186, '2019-01-23', 'am2', 'bloque', '2018-12-13', ''), +(13347, 197, 0, 186, '2019-01-23', 'pm1', 'bloque', '2018-12-13', ''), +(13348, 197, 0, 186, '2019-01-23', 'pm2', 'bloque', '2018-12-13', ''), +(13349, 197, 0, 186, '2019-01-24', 'am1', 'bloque', '2018-12-13', ''), +(13350, 197, 0, 186, '2019-01-24', 'am2', 'bloque', '2018-12-13', ''), +(13351, 197, 0, 186, '2019-01-24', 'pm1', 'bloque', '2018-12-13', ''), +(13352, 197, 0, 186, '2019-01-24', 'pm2', 'bloque', '2018-12-13', ''), +(13353, 197, 0, 186, '2019-01-25', 'am1', 'bloque', '2018-12-13', ''), +(13354, 197, 0, 186, '2019-01-25', 'am2', 'bloque', '2018-12-13', ''), +(13355, 197, 0, 186, '2019-01-25', 'pm1', 'bloque', '2018-12-13', ''), +(13356, 197, 0, 186, '2019-01-25', 'pm2', 'bloque', '2018-12-13', ''), +(13357, 197, 0, 186, '2019-01-28', 'am1', 'bloque', '2018-12-13', ''), +(13358, 197, 0, 186, '2019-01-28', 'am2', 'bloque', '2018-12-13', ''), +(13359, 197, 0, 186, '2019-01-28', 'pm1', 'bloque', '2018-12-13', ''), +(13360, 197, 0, 186, '2019-01-28', 'pm2', 'bloque', '2018-12-13', ''), +(13361, 197, 0, 186, '2019-01-29', 'am1', 'bloque', '2018-12-13', ''), +(13362, 197, 0, 186, '2019-01-29', 'am2', 'bloque', '2018-12-13', ''), +(13363, 197, 0, 186, '2019-01-29', 'pm1', 'bloque', '2018-12-13', ''), +(13364, 197, 0, 186, '2019-01-29', 'pm2', 'bloque', '2018-12-13', ''), +(13365, 197, 0, 186, '2019-01-30', 'am1', 'bloque', '2018-12-13', ''), +(13366, 197, 0, 186, '2019-01-30', 'am2', 'bloque', '2018-12-13', ''), +(13367, 197, 0, 186, '2019-01-30', 'pm1', 'bloque', '2018-12-13', ''), +(13368, 197, 0, 186, '2019-01-30', 'pm2', 'bloque', '2018-12-13', ''), +(13369, 197, 0, 186, '2019-01-31', 'am1', 'bloque', '2018-12-13', ''), +(13370, 197, 0, 186, '2019-01-31', 'am2', 'bloque', '2018-12-13', ''), +(13371, 197, 0, 186, '2019-01-31', 'pm1', 'bloque', '2018-12-13', ''), +(13372, 197, 0, 186, '2019-01-31', 'pm2', 'bloque', '2018-12-13', ''), +(13373, 197, 0, 186, '2019-02-01', 'am1', 'bloque', '2018-12-13', ''), +(13374, 197, 0, 186, '2019-02-01', 'am2', 'bloque', '2018-12-13', ''), +(13375, 197, 0, 186, '2019-02-01', 'pm1', 'bloque', '2018-12-13', ''), +(13376, 197, 0, 186, '2019-02-01', 'pm2', 'bloque', '2018-12-13', ''), +(13377, 197, 0, 186, '2019-02-04', 'am1', 'bloque', '2018-12-13', ''), +(13378, 197, 0, 186, '2019-02-04', 'am2', 'bloque', '2018-12-13', ''), +(13379, 197, 0, 186, '2019-02-04', 'pm1', 'bloque', '2018-12-13', ''), +(13380, 197, 0, 186, '2019-02-04', 'pm2', 'bloque', '2018-12-13', ''), +(13381, 197, 0, 186, '2019-02-05', 'am1', 'bloque', '2018-12-13', ''), +(13382, 197, 0, 186, '2019-02-05', 'am2', 'bloque', '2018-12-13', ''), +(13383, 197, 0, 186, '2019-02-05', 'pm1', 'bloque', '2018-12-13', ''), +(13384, 197, 0, 186, '2019-02-05', 'pm2', 'bloque', '2018-12-13', ''), +(13385, 197, 0, 186, '2019-02-06', 'am1', 'bloque', '2018-12-13', ''), +(13386, 197, 0, 186, '2019-02-06', 'am2', 'bloque', '2018-12-13', ''), +(13387, 197, 0, 186, '2019-02-06', 'pm1', 'bloque', '2018-12-13', ''), +(13388, 197, 0, 186, '2019-02-06', 'pm2', 'bloque', '2018-12-13', ''), +(13389, 197, 0, 186, '2019-02-07', 'am1', 'bloque', '2018-12-13', ''), +(13390, 197, 0, 186, '2019-02-07', 'am2', 'bloque', '2018-12-13', ''), +(13391, 197, 0, 186, '2019-02-07', 'pm1', 'bloque', '2018-12-13', ''), +(13392, 197, 0, 186, '2019-02-07', 'pm2', 'bloque', '2018-12-13', ''), +(13393, 197, 0, 186, '2019-02-08', 'am1', 'bloque', '2018-12-13', ''), +(13394, 197, 0, 186, '2019-02-08', 'am2', 'bloque', '2018-12-13', ''), +(13395, 197, 0, 186, '2019-02-08', 'pm1', 'bloque', '2018-12-13', ''), +(13396, 197, 0, 186, '2019-02-08', 'pm2', 'bloque', '2018-12-13', ''), +(13397, 198, 0, 281, '2019-01-17', 'am1', 'libre', '2018-12-13', ''), +(13398, 198, 0, 281, '2019-01-17', 'am2', 'libre', '2018-12-13', ''), +(13399, 198, 0, 281, '2019-01-17', 'pm1', 'libre', '2018-12-13', ''), +(13400, 198, 0, 281, '2019-01-17', 'pm2', 'libre', '2018-12-13', ''), +(13401, 198, 0, 281, '2019-01-18', 'am1', 'bloque', '2018-12-13', ''), +(13402, 198, 0, 281, '2019-01-18', 'am2', 'bloque', '2018-12-13', ''), +(13403, 198, 0, 281, '2019-01-18', 'pm1', 'bloque', '2018-12-13', ''), +(13404, 198, 0, 281, '2019-01-18', 'pm2', 'bloque', '2018-12-13', ''), +(13405, 198, 0, 281, '2019-01-21', 'am1', 'bloque', '2018-12-13', ''), +(13406, 198, 0, 281, '2019-01-21', 'am2', 'bloque', '2018-12-13', ''), +(13407, 198, 0, 281, '2019-01-21', 'pm1', 'bloque', '2018-12-13', ''), +(13408, 198, 0, 281, '2019-01-21', 'pm2', 'bloque', '2018-12-13', ''), +(13409, 198, 0, 281, '2019-01-22', 'am1', 'bloque', '2018-12-13', ''), +(13410, 198, 0, 281, '2019-01-22', 'am2', 'bloque', '2018-12-13', ''), +(13411, 198, 0, 281, '2019-01-22', 'pm1', 'bloque', '2018-12-13', ''), +(13412, 198, 0, 281, '2019-01-22', 'pm2', 'bloque', '2018-12-13', ''), +(13413, 198, 0, 281, '2019-01-23', 'am1', 'bloque', '2018-12-13', ''), +(13414, 198, 0, 281, '2019-01-23', 'am2', 'bloque', '2018-12-13', ''), +(13415, 198, 0, 281, '2019-01-23', 'pm1', 'bloque', '2018-12-13', ''), +(13416, 198, 0, 281, '2019-01-23', 'pm2', 'bloque', '2018-12-13', ''), +(13417, 198, 0, 281, '2019-01-24', 'am1', 'bloque', '2018-12-13', ''), +(13418, 198, 0, 281, '2019-01-24', 'am2', 'bloque', '2018-12-13', ''), +(13419, 198, 0, 281, '2019-01-24', 'pm1', 'bloque', '2018-12-13', ''), +(13420, 198, 0, 281, '2019-01-24', 'pm2', 'bloque', '2018-12-13', ''), +(13421, 198, 0, 281, '2019-01-25', 'am1', 'bloque', '2018-12-13', ''), +(13422, 198, 0, 281, '2019-01-25', 'am2', 'bloque', '2018-12-13', ''), +(13423, 198, 0, 281, '2019-01-25', 'pm1', 'bloque', '2018-12-13', ''), +(13424, 198, 0, 281, '2019-01-25', 'pm2', 'bloque', '2018-12-13', ''), +(13425, 198, 0, 281, '2019-01-28', 'am1', 'bloque', '2018-12-13', ''), +(13426, 198, 0, 281, '2019-01-28', 'am2', 'bloque', '2018-12-13', ''), +(13427, 198, 0, 281, '2019-01-28', 'pm1', 'bloque', '2018-12-13', ''), +(13428, 198, 0, 281, '2019-01-28', 'pm2', 'bloque', '2018-12-13', ''), +(13429, 198, 0, 281, '2019-01-29', 'am1', 'bloque', '2018-12-13', ''), +(13430, 198, 0, 281, '2019-01-29', 'am2', 'bloque', '2018-12-13', ''), +(13431, 198, 0, 281, '2019-01-29', 'pm1', 'bloque', '2018-12-13', ''), +(13432, 198, 0, 281, '2019-01-29', 'pm2', 'bloque', '2018-12-13', ''), +(13433, 198, 0, 281, '2019-01-30', 'am1', 'bloque', '2018-12-13', ''), +(13434, 198, 0, 281, '2019-01-30', 'am2', 'bloque', '2018-12-13', ''), +(13435, 198, 0, 281, '2019-01-30', 'pm1', 'bloque', '2018-12-13', ''), +(13436, 198, 0, 281, '2019-01-30', 'pm2', 'bloque', '2018-12-13', ''), +(13437, 198, 0, 281, '2019-01-31', 'am1', 'bloque', '2018-12-13', ''), +(13438, 198, 0, 281, '2019-01-31', 'am2', 'bloque', '2018-12-13', ''), +(13439, 198, 0, 281, '2019-01-31', 'pm1', 'bloque', '2018-12-13', ''), +(13440, 198, 0, 281, '2019-01-31', 'pm2', 'bloque', '2018-12-13', ''), +(13441, 198, 0, 281, '2019-02-01', 'am1', 'bloque', '2018-12-13', ''), +(13442, 198, 0, 281, '2019-02-01', 'am2', 'bloque', '2018-12-13', ''), +(13443, 198, 0, 281, '2019-02-01', 'pm1', 'bloque', '2018-12-13', ''), +(13444, 198, 0, 281, '2019-02-01', 'pm2', 'bloque', '2018-12-13', ''), +(13445, 198, 0, 281, '2019-02-04', 'am1', 'bloque', '2018-12-13', ''), +(13446, 198, 0, 281, '2019-02-04', 'am2', 'bloque', '2018-12-13', ''), +(13447, 198, 0, 281, '2019-02-04', 'pm1', 'bloque', '2018-12-13', ''), +(13448, 198, 0, 281, '2019-02-04', 'pm2', 'bloque', '2018-12-13', ''), +(13449, 198, 0, 281, '2019-02-05', 'am1', 'bloque', '2018-12-13', ''), +(13450, 198, 0, 281, '2019-02-05', 'am2', 'bloque', '2018-12-13', ''), +(13451, 198, 0, 281, '2019-02-05', 'pm1', 'bloque', '2018-12-13', ''), +(13452, 198, 0, 281, '2019-02-05', 'pm2', 'bloque', '2018-12-13', ''), +(13453, 198, 0, 281, '2019-02-06', 'am1', 'bloque', '2018-12-13', ''), +(13454, 198, 0, 281, '2019-02-06', 'am2', 'bloque', '2018-12-13', ''), +(13455, 198, 0, 281, '2019-02-06', 'pm1', 'bloque', '2018-12-13', ''), +(13456, 198, 0, 281, '2019-02-06', 'pm2', 'bloque', '2018-12-13', ''), +(13457, 198, 0, 281, '2019-02-07', 'am1', 'bloque', '2018-12-13', ''), +(13458, 198, 0, 281, '2019-02-07', 'am2', 'bloque', '2018-12-13', ''), +(13459, 198, 0, 281, '2019-02-07', 'pm1', 'bloque', '2018-12-13', ''), +(13460, 198, 0, 281, '2019-02-07', 'pm2', 'bloque', '2018-12-13', ''), +(13461, 198, 0, 281, '2019-02-08', 'am1', 'bloque', '2018-12-13', ''), +(13462, 198, 0, 281, '2019-02-08', 'am2', 'bloque', '2018-12-13', ''), +(13463, 198, 0, 281, '2019-02-08', 'pm1', 'bloque', '2018-12-13', ''), +(13464, 198, 0, 281, '2019-02-08', 'pm2', 'bloque', '2018-12-13', ''), +(13465, 199, 0, 90, '2019-01-17', 'am1', 'libre', '2018-12-13', ''), +(13466, 199, 0, 90, '2019-01-17', 'am2', 'libre', '2018-12-13', ''), +(13467, 199, 0, 90, '2019-01-17', 'pm1', 'libre', '2018-12-13', ''), +(13468, 199, 0, 90, '2019-01-17', 'pm2', 'libre', '2018-12-13', ''), +(13469, 199, 0, 90, '2019-01-18', 'am1', 'bloque', '2018-12-13', ''), +(13470, 199, 0, 90, '2019-01-18', 'am2', 'bloque', '2018-12-13', ''), +(13471, 199, 0, 90, '2019-01-18', 'pm1', 'bloque', '2018-12-13', ''), +(13472, 199, 0, 90, '2019-01-18', 'pm2', 'bloque', '2018-12-13', ''), +(13473, 199, 0, 90, '2019-01-21', 'am1', 'bloque', '2018-12-13', ''), +(13474, 199, 0, 90, '2019-01-21', 'am2', 'bloque', '2018-12-13', ''), +(13475, 199, 0, 90, '2019-01-21', 'pm1', 'bloque', '2018-12-13', ''), +(13476, 199, 0, 90, '2019-01-21', 'pm2', 'bloque', '2018-12-13', ''), +(13477, 199, 0, 90, '2019-01-22', 'am1', 'bloque', '2018-12-13', ''), +(13478, 199, 0, 90, '2019-01-22', 'am2', 'bloque', '2018-12-13', ''), +(13479, 199, 0, 90, '2019-01-22', 'pm1', 'bloque', '2018-12-13', ''), +(13480, 199, 0, 90, '2019-01-22', 'pm2', 'bloque', '2018-12-13', ''), +(13481, 199, 0, 90, '2019-01-23', 'am1', 'bloque', '2018-12-13', ''), +(13482, 199, 0, 90, '2019-01-23', 'am2', 'bloque', '2018-12-13', ''), +(13483, 199, 0, 90, '2019-01-23', 'pm1', 'bloque', '2018-12-13', ''), +(13484, 199, 0, 90, '2019-01-23', 'pm2', 'bloque', '2018-12-13', ''), +(13485, 199, 0, 90, '2019-01-24', 'am1', 'bloque', '2018-12-13', ''), +(13486, 199, 0, 90, '2019-01-24', 'am2', 'bloque', '2018-12-13', ''), +(13487, 199, 0, 90, '2019-01-24', 'pm1', 'bloque', '2018-12-13', ''), +(13488, 199, 0, 90, '2019-01-24', 'pm2', 'bloque', '2018-12-13', ''), +(13489, 199, 0, 90, '2019-01-25', 'am1', 'bloque', '2018-12-13', ''), +(13490, 199, 0, 90, '2019-01-25', 'am2', 'bloque', '2018-12-13', ''), +(13491, 199, 0, 90, '2019-01-25', 'pm1', 'bloque', '2018-12-13', ''), +(13492, 199, 0, 90, '2019-01-25', 'pm2', 'bloque', '2018-12-13', ''), +(13493, 199, 0, 90, '2019-01-28', 'am1', 'bloque', '2018-12-13', ''), +(13494, 199, 0, 90, '2019-01-28', 'am2', 'bloque', '2018-12-13', ''), +(13495, 199, 0, 90, '2019-01-28', 'pm1', 'bloque', '2018-12-13', ''), +(13496, 199, 0, 90, '2019-01-28', 'pm2', 'bloque', '2018-12-13', ''), +(13497, 199, 0, 90, '2019-01-29', 'am1', 'bloque', '2018-12-13', ''), +(13498, 199, 0, 90, '2019-01-29', 'am2', 'bloque', '2018-12-13', ''), +(13499, 199, 0, 90, '2019-01-29', 'pm1', 'bloque', '2018-12-13', ''), +(13500, 199, 0, 90, '2019-01-29', 'pm2', 'bloque', '2018-12-13', ''), +(13501, 199, 0, 90, '2019-01-30', 'am1', 'bloque', '2018-12-13', ''), +(13502, 199, 0, 90, '2019-01-30', 'am2', 'bloque', '2018-12-13', ''), +(13503, 199, 0, 90, '2019-01-30', 'pm1', 'bloque', '2018-12-13', ''), +(13504, 199, 0, 90, '2019-01-30', 'pm2', 'bloque', '2018-12-13', ''), +(13505, 199, 0, 90, '2019-01-31', 'am1', 'bloque', '2018-12-13', ''), +(13506, 199, 0, 90, '2019-01-31', 'am2', 'bloque', '2018-12-13', ''), +(13507, 199, 0, 90, '2019-01-31', 'pm1', 'bloque', '2018-12-13', ''), +(13508, 199, 0, 90, '2019-01-31', 'pm2', 'bloque', '2018-12-13', ''), +(13509, 199, 0, 90, '2019-02-01', 'am1', 'bloque', '2018-12-13', ''), +(13510, 199, 0, 90, '2019-02-01', 'am2', 'bloque', '2018-12-13', ''), +(13511, 199, 0, 90, '2019-02-01', 'pm1', 'bloque', '2018-12-13', ''), +(13512, 199, 0, 90, '2019-02-01', 'pm2', 'bloque', '2018-12-13', ''), +(13513, 199, 0, 90, '2019-02-04', 'am1', 'bloque', '2018-12-13', ''), +(13514, 199, 0, 90, '2019-02-04', 'am2', 'bloque', '2018-12-13', ''), +(13515, 199, 0, 90, '2019-02-04', 'pm1', 'bloque', '2018-12-13', ''), +(13516, 199, 0, 90, '2019-02-04', 'pm2', 'bloque', '2018-12-13', ''), +(13517, 199, 0, 90, '2019-02-05', 'am1', 'bloque', '2018-12-13', ''), +(13518, 199, 0, 90, '2019-02-05', 'am2', 'bloque', '2018-12-13', ''), +(13519, 199, 0, 90, '2019-02-05', 'pm1', 'bloque', '2018-12-13', ''), +(13520, 199, 0, 90, '2019-02-05', 'pm2', 'bloque', '2018-12-13', ''), +(13521, 199, 0, 90, '2019-02-06', 'am1', 'bloque', '2018-12-13', ''), +(13522, 199, 0, 90, '2019-02-06', 'am2', 'bloque', '2018-12-13', ''), +(13523, 199, 0, 90, '2019-02-06', 'pm1', 'bloque', '2018-12-13', ''), +(13524, 199, 0, 90, '2019-02-06', 'pm2', 'bloque', '2018-12-13', ''), +(13525, 199, 0, 90, '2019-02-07', 'am1', 'bloque', '2018-12-13', ''), +(13526, 199, 0, 90, '2019-02-07', 'am2', 'bloque', '2018-12-13', ''), +(13527, 199, 0, 90, '2019-02-07', 'pm1', 'bloque', '2018-12-13', ''), +(13528, 199, 0, 90, '2019-02-07', 'pm2', 'bloque', '2018-12-13', ''), +(13529, 199, 0, 90, '2019-02-08', 'am1', 'bloque', '2018-12-13', ''), +(13530, 199, 0, 90, '2019-02-08', 'am2', 'bloque', '2018-12-13', ''), +(13531, 199, 0, 90, '2019-02-08', 'pm1', 'bloque', '2018-12-13', ''), +(13532, 199, 0, 90, '2019-02-08', 'pm2', 'bloque', '2018-12-13', ''), +(13533, 200, 71, 90, '2019-01-17', 'am1', 'reserve', '2018-12-13', 'ref'), +(13534, 200, 0, 90, '2019-01-17', 'am2', 'libre', '2018-12-13', ''), +(13535, 200, 0, 90, '2019-01-17', 'pm1', 'libre', '2018-12-13', ''), +(13536, 200, 0, 90, '2019-01-17', 'pm2', 'libre', '2018-12-13', ''), +(13537, 200, 0, 90, '2019-01-18', 'am1', 'bloque', '2018-12-13', ''), +(13538, 200, 0, 90, '2019-01-18', 'am2', 'bloque', '2018-12-13', ''), +(13539, 200, 0, 90, '2019-01-18', 'pm1', 'bloque', '2018-12-13', ''), +(13540, 200, 0, 90, '2019-01-18', 'pm2', 'bloque', '2018-12-13', ''), +(13541, 200, 0, 90, '2019-01-21', 'am1', 'bloque', '2018-12-13', ''), +(13542, 200, 0, 90, '2019-01-21', 'am2', 'bloque', '2018-12-13', ''), +(13543, 200, 0, 90, '2019-01-21', 'pm1', 'bloque', '2018-12-13', ''), +(13544, 200, 0, 90, '2019-01-21', 'pm2', 'bloque', '2018-12-13', ''), +(13545, 200, 0, 90, '2019-01-22', 'am1', 'bloque', '2018-12-13', ''), +(13546, 200, 0, 90, '2019-01-22', 'am2', 'bloque', '2018-12-13', ''), +(13547, 200, 0, 90, '2019-01-22', 'pm1', 'bloque', '2018-12-13', ''), +(13548, 200, 0, 90, '2019-01-22', 'pm2', 'bloque', '2018-12-13', ''), +(13549, 200, 0, 90, '2019-01-23', 'am1', 'bloque', '2018-12-13', ''), +(13550, 200, 0, 90, '2019-01-23', 'am2', 'bloque', '2018-12-13', ''), +(13551, 200, 0, 90, '2019-01-23', 'pm1', 'bloque', '2018-12-13', ''), +(13552, 200, 0, 90, '2019-01-23', 'pm2', 'bloque', '2018-12-13', ''), +(13553, 200, 0, 90, '2019-01-24', 'am1', 'bloque', '2018-12-13', ''), +(13554, 200, 0, 90, '2019-01-24', 'am2', 'bloque', '2018-12-13', ''), +(13555, 200, 0, 90, '2019-01-24', 'pm1', 'bloque', '2018-12-13', ''), +(13556, 200, 0, 90, '2019-01-24', 'pm2', 'bloque', '2018-12-13', ''), +(13557, 200, 0, 90, '2019-01-25', 'am1', 'bloque', '2018-12-13', ''), +(13558, 200, 0, 90, '2019-01-25', 'am2', 'bloque', '2018-12-13', ''), +(13559, 200, 0, 90, '2019-01-25', 'pm1', 'bloque', '2018-12-13', ''), +(13560, 200, 0, 90, '2019-01-25', 'pm2', 'bloque', '2018-12-13', ''), +(13561, 200, 0, 90, '2019-01-28', 'am1', 'bloque', '2018-12-13', ''), +(13562, 200, 0, 90, '2019-01-28', 'am2', 'bloque', '2018-12-13', ''), +(13563, 200, 0, 90, '2019-01-28', 'pm1', 'bloque', '2018-12-13', ''), +(13564, 200, 0, 90, '2019-01-28', 'pm2', 'bloque', '2018-12-13', ''), +(13565, 200, 0, 90, '2019-01-29', 'am1', 'bloque', '2018-12-13', ''), +(13566, 200, 0, 90, '2019-01-29', 'am2', 'bloque', '2018-12-13', ''), +(13567, 200, 0, 90, '2019-01-29', 'pm1', 'bloque', '2018-12-13', ''), +(13568, 200, 0, 90, '2019-01-29', 'pm2', 'bloque', '2018-12-13', ''), +(13569, 200, 0, 90, '2019-01-30', 'am1', 'bloque', '2018-12-13', ''), +(13570, 200, 0, 90, '2019-01-30', 'am2', 'bloque', '2018-12-13', ''), +(13571, 200, 0, 90, '2019-01-30', 'pm1', 'bloque', '2018-12-13', ''), +(13572, 200, 0, 90, '2019-01-30', 'pm2', 'bloque', '2018-12-13', ''), +(13573, 200, 0, 90, '2019-01-31', 'am1', 'bloque', '2018-12-13', ''), +(13574, 200, 0, 90, '2019-01-31', 'am2', 'bloque', '2018-12-13', ''), +(13575, 200, 0, 90, '2019-01-31', 'pm1', 'bloque', '2018-12-13', ''), +(13576, 200, 0, 90, '2019-01-31', 'pm2', 'bloque', '2018-12-13', ''), +(13577, 200, 0, 90, '2019-02-01', 'am1', 'bloque', '2018-12-13', ''), +(13578, 200, 0, 90, '2019-02-01', 'am2', 'bloque', '2018-12-13', ''), +(13579, 200, 0, 90, '2019-02-01', 'pm1', 'bloque', '2018-12-13', ''), +(13580, 200, 0, 90, '2019-02-01', 'pm2', 'bloque', '2018-12-13', ''), +(13581, 200, 0, 90, '2019-02-04', 'am1', 'bloque', '2018-12-13', ''), +(13582, 200, 0, 90, '2019-02-04', 'am2', 'bloque', '2018-12-13', ''), +(13583, 200, 0, 90, '2019-02-04', 'pm1', 'bloque', '2018-12-13', ''), +(13584, 200, 0, 90, '2019-02-04', 'pm2', 'bloque', '2018-12-13', ''), +(13585, 200, 0, 90, '2019-02-05', 'am1', 'bloque', '2018-12-13', ''), +(13586, 200, 0, 90, '2019-02-05', 'am2', 'bloque', '2018-12-13', ''), +(13587, 200, 0, 90, '2019-02-05', 'pm1', 'bloque', '2018-12-13', ''), +(13588, 200, 0, 90, '2019-02-05', 'pm2', 'bloque', '2018-12-13', ''), +(13589, 200, 0, 90, '2019-02-06', 'am1', 'bloque', '2018-12-13', ''), +(13590, 200, 0, 90, '2019-02-06', 'am2', 'bloque', '2018-12-13', ''), +(13591, 200, 0, 90, '2019-02-06', 'pm1', 'bloque', '2018-12-13', ''), +(13592, 200, 0, 90, '2019-02-06', 'pm2', 'bloque', '2018-12-13', ''), +(13593, 200, 0, 90, '2019-02-07', 'am1', 'bloque', '2018-12-13', ''), +(13594, 200, 0, 90, '2019-02-07', 'am2', 'bloque', '2018-12-13', ''), +(13595, 200, 0, 90, '2019-02-07', 'pm1', 'bloque', '2018-12-13', ''), +(13596, 200, 0, 90, '2019-02-07', 'pm2', 'bloque', '2018-12-13', ''), +(13597, 200, 0, 90, '2019-02-08', 'am1', 'bloque', '2018-12-13', ''), +(13598, 200, 0, 90, '2019-02-08', 'am2', 'bloque', '2018-12-13', ''), +(13599, 200, 0, 90, '2019-02-08', 'pm1', 'bloque', '2018-12-13', ''), +(13600, 200, 0, 90, '2019-02-08', 'pm2', 'bloque', '2018-12-13', ''), +(13601, 201, 0, 87, '2019-01-17', 'am1', 'libre', '2018-12-13', ''), +(13602, 201, 119, 87, '2019-01-17', 'am2', 'reserve', '2018-12-18', 'cap'), +(13603, 201, 74, 87, '2019-01-17', 'pm1', 'reserve', '2018-12-13', 'cap'), +(13604, 201, 75, 87, '2019-01-17', 'pm2', 'reserve', '2018-12-13', 'cap'), +(13605, 201, 0, 87, '2019-01-18', 'am1', 'bloque', '2018-12-13', ''), +(13606, 201, 0, 87, '2019-01-18', 'am2', 'bloque', '2018-12-13', ''), +(13607, 201, 0, 87, '2019-01-18', 'pm1', 'bloque', '2018-12-13', ''), +(13608, 201, 0, 87, '2019-01-18', 'pm2', 'bloque', '2018-12-13', ''), +(13609, 201, 0, 87, '2019-01-21', 'am1', 'bloque', '2018-12-13', ''), +(13610, 201, 0, 87, '2019-01-21', 'am2', 'bloque', '2018-12-13', ''), +(13611, 201, 0, 87, '2019-01-21', 'pm1', 'bloque', '2018-12-13', ''), +(13612, 201, 0, 87, '2019-01-21', 'pm2', 'bloque', '2018-12-13', ''), +(13613, 201, 0, 87, '2019-01-22', 'am1', 'bloque', '2018-12-13', ''), +(13614, 201, 0, 87, '2019-01-22', 'am2', 'bloque', '2018-12-13', ''), +(13615, 201, 0, 87, '2019-01-22', 'pm1', 'bloque', '2018-12-13', ''), +(13616, 201, 0, 87, '2019-01-22', 'pm2', 'bloque', '2018-12-13', ''), +(13617, 201, 0, 87, '2019-01-23', 'am1', 'bloque', '2018-12-13', ''), +(13618, 201, 0, 87, '2019-01-23', 'am2', 'bloque', '2018-12-13', ''), +(13619, 201, 0, 87, '2019-01-23', 'pm1', 'bloque', '2018-12-13', ''), +(13620, 201, 0, 87, '2019-01-23', 'pm2', 'bloque', '2018-12-13', ''), +(13621, 201, 0, 87, '2019-01-24', 'am1', 'bloque', '2018-12-13', ''), +(13622, 201, 0, 87, '2019-01-24', 'am2', 'bloque', '2018-12-13', ''), +(13623, 201, 0, 87, '2019-01-24', 'pm1', 'bloque', '2018-12-13', ''), +(13624, 201, 0, 87, '2019-01-24', 'pm2', 'bloque', '2018-12-13', ''), +(13625, 201, 0, 87, '2019-01-25', 'am1', 'bloque', '2018-12-13', ''), +(13626, 201, 0, 87, '2019-01-25', 'am2', 'bloque', '2018-12-13', ''), +(13627, 201, 0, 87, '2019-01-25', 'pm1', 'bloque', '2018-12-13', ''), +(13628, 201, 0, 87, '2019-01-25', 'pm2', 'bloque', '2018-12-13', ''), +(13629, 201, 0, 87, '2019-01-28', 'am1', 'bloque', '2018-12-13', ''), +(13630, 201, 0, 87, '2019-01-28', 'am2', 'bloque', '2018-12-13', ''), +(13631, 201, 0, 87, '2019-01-28', 'pm1', 'bloque', '2018-12-13', ''), +(13632, 201, 0, 87, '2019-01-28', 'pm2', 'bloque', '2018-12-13', ''), +(13633, 201, 0, 87, '2019-01-29', 'am1', 'bloque', '2018-12-13', ''), +(13634, 201, 0, 87, '2019-01-29', 'am2', 'bloque', '2018-12-13', ''), +(13635, 201, 0, 87, '2019-01-29', 'pm1', 'bloque', '2018-12-13', ''), +(13636, 201, 0, 87, '2019-01-29', 'pm2', 'bloque', '2018-12-13', ''), +(13637, 201, 0, 87, '2019-01-30', 'am1', 'bloque', '2018-12-13', ''), +(13638, 201, 0, 87, '2019-01-30', 'am2', 'bloque', '2018-12-13', ''), +(13639, 201, 0, 87, '2019-01-30', 'pm1', 'bloque', '2018-12-13', ''), +(13640, 201, 0, 87, '2019-01-30', 'pm2', 'bloque', '2018-12-13', ''), +(13641, 201, 0, 87, '2019-01-31', 'am1', 'bloque', '2018-12-13', ''), +(13642, 201, 0, 87, '2019-01-31', 'am2', 'bloque', '2018-12-13', ''), +(13643, 201, 0, 87, '2019-01-31', 'pm1', 'bloque', '2018-12-13', ''), +(13644, 201, 0, 87, '2019-01-31', 'pm2', 'bloque', '2018-12-13', ''), +(13645, 201, 0, 87, '2019-02-01', 'am1', 'bloque', '2018-12-13', ''), +(13646, 201, 0, 87, '2019-02-01', 'am2', 'bloque', '2018-12-13', ''), +(13647, 201, 0, 87, '2019-02-01', 'pm1', 'bloque', '2018-12-13', ''), +(13648, 201, 0, 87, '2019-02-01', 'pm2', 'bloque', '2018-12-13', ''), +(13649, 201, 0, 87, '2019-02-04', 'am1', 'bloque', '2018-12-13', ''), +(13650, 201, 0, 87, '2019-02-04', 'am2', 'bloque', '2018-12-13', ''), +(13651, 201, 0, 87, '2019-02-04', 'pm1', 'bloque', '2018-12-13', ''), +(13652, 201, 0, 87, '2019-02-04', 'pm2', 'bloque', '2018-12-13', ''), +(13653, 201, 0, 87, '2019-02-05', 'am1', 'bloque', '2018-12-13', ''), +(13654, 201, 0, 87, '2019-02-05', 'am2', 'bloque', '2018-12-13', ''), +(13655, 201, 0, 87, '2019-02-05', 'pm1', 'bloque', '2018-12-13', ''), +(13656, 201, 0, 87, '2019-02-05', 'pm2', 'bloque', '2018-12-13', ''), +(13657, 201, 0, 87, '2019-02-06', 'am1', 'bloque', '2018-12-13', ''), +(13658, 201, 0, 87, '2019-02-06', 'am2', 'bloque', '2018-12-13', ''), +(13659, 201, 0, 87, '2019-02-06', 'pm1', 'bloque', '2018-12-13', ''), +(13660, 201, 0, 87, '2019-02-06', 'pm2', 'bloque', '2018-12-13', ''), +(13661, 201, 0, 87, '2019-02-07', 'am1', 'bloque', '2018-12-13', ''), +(13662, 201, 0, 87, '2019-02-07', 'am2', 'bloque', '2018-12-13', ''), +(13663, 201, 0, 87, '2019-02-07', 'pm1', 'bloque', '2018-12-13', ''), +(13664, 201, 0, 87, '2019-02-07', 'pm2', 'bloque', '2018-12-13', ''), +(13665, 201, 0, 87, '2019-02-08', 'am1', 'bloque', '2018-12-13', ''), +(13666, 201, 0, 87, '2019-02-08', 'am2', 'bloque', '2018-12-13', ''), +(13667, 201, 0, 87, '2019-02-08', 'pm1', 'bloque', '2018-12-13', ''), +(13668, 201, 0, 87, '2019-02-08', 'pm2', 'bloque', '2018-12-13', ''), +(13669, 202, 76, 73, '2019-01-17', 'am1', 'reserve', '2018-12-13', 'ref'), +(13670, 202, 0, 73, '2019-01-17', 'am2', 'libre', '2018-12-13', ''), +(13671, 202, 140, 73, '2019-01-17', 'pm1', 'reserve', '2018-12-19', 'ref'), +(13672, 202, 200, 73, '2019-01-17', 'pm2', 'reserve', '2019-01-07', 'ref'), +(13673, 202, 0, 73, '2019-01-18', 'am1', 'libre', '2019-01-07', 'ref'), +(13674, 202, 0, 73, '2019-01-18', 'am2', 'bloque', '2018-12-13', ''), +(13675, 202, 0, 73, '2019-01-18', 'pm1', 'bloque', '2018-12-13', ''), +(13676, 202, 0, 73, '2019-01-18', 'pm2', 'bloque', '2018-12-13', ''), +(13677, 202, 0, 73, '2019-01-21', 'am1', 'bloque', '2018-12-13', ''), +(13678, 202, 0, 73, '2019-01-21', 'am2', 'bloque', '2018-12-13', ''), +(13679, 202, 0, 73, '2019-01-21', 'pm1', 'bloque', '2018-12-13', ''), +(13680, 202, 0, 73, '2019-01-21', 'pm2', 'bloque', '2018-12-13', ''), +(13681, 202, 0, 73, '2019-01-22', 'am1', 'bloque', '2018-12-13', ''), +(13682, 202, 0, 73, '2019-01-22', 'am2', 'bloque', '2018-12-13', ''), +(13683, 202, 0, 73, '2019-01-22', 'pm1', 'bloque', '2018-12-13', ''), +(13684, 202, 0, 73, '2019-01-22', 'pm2', 'bloque', '2018-12-13', ''), +(13685, 202, 0, 73, '2019-01-23', 'am1', 'bloque', '2018-12-13', ''), +(13686, 202, 0, 73, '2019-01-23', 'am2', 'bloque', '2018-12-13', ''), +(13687, 202, 0, 73, '2019-01-23', 'pm1', 'bloque', '2018-12-13', ''), +(13688, 202, 0, 73, '2019-01-23', 'pm2', 'bloque', '2018-12-13', ''), +(13689, 202, 0, 73, '2019-01-24', 'am1', 'bloque', '2018-12-13', ''), +(13690, 202, 0, 73, '2019-01-24', 'am2', 'bloque', '2018-12-13', ''), +(13691, 202, 0, 73, '2019-01-24', 'pm1', 'bloque', '2018-12-13', ''), +(13692, 202, 0, 73, '2019-01-24', 'pm2', 'bloque', '2018-12-13', ''), +(13693, 202, 0, 73, '2019-01-25', 'am1', 'bloque', '2018-12-13', ''), +(13694, 202, 0, 73, '2019-01-25', 'am2', 'bloque', '2018-12-13', ''), +(13695, 202, 0, 73, '2019-01-25', 'pm1', 'bloque', '2018-12-13', ''), +(13696, 202, 0, 73, '2019-01-25', 'pm2', 'bloque', '2018-12-13', ''), +(13697, 202, 0, 73, '2019-01-28', 'am1', 'bloque', '2018-12-13', ''), +(13698, 202, 0, 73, '2019-01-28', 'am2', 'bloque', '2018-12-13', ''), +(13699, 202, 0, 73, '2019-01-28', 'pm1', 'bloque', '2018-12-13', ''), +(13700, 202, 0, 73, '2019-01-28', 'pm2', 'bloque', '2018-12-13', ''), +(13701, 202, 0, 73, '2019-01-29', 'am1', 'bloque', '2018-12-13', ''), +(13702, 202, 0, 73, '2019-01-29', 'am2', 'bloque', '2018-12-13', ''), +(13703, 202, 0, 73, '2019-01-29', 'pm1', 'bloque', '2018-12-13', ''), +(13704, 202, 0, 73, '2019-01-29', 'pm2', 'bloque', '2018-12-13', ''), +(13705, 202, 0, 73, '2019-01-30', 'am1', 'bloque', '2018-12-13', ''), +(13706, 202, 0, 73, '2019-01-30', 'am2', 'bloque', '2018-12-13', ''), +(13707, 202, 0, 73, '2019-01-30', 'pm1', 'bloque', '2018-12-13', ''), +(13708, 202, 0, 73, '2019-01-30', 'pm2', 'bloque', '2018-12-13', ''), +(13709, 202, 0, 73, '2019-01-31', 'am1', 'bloque', '2018-12-13', ''), +(13710, 202, 0, 73, '2019-01-31', 'am2', 'bloque', '2018-12-13', ''), +(13711, 202, 0, 73, '2019-01-31', 'pm1', 'bloque', '2018-12-13', ''), +(13712, 202, 0, 73, '2019-01-31', 'pm2', 'bloque', '2018-12-13', ''), +(13713, 202, 0, 73, '2019-02-01', 'am1', 'bloque', '2018-12-13', ''), +(13714, 202, 0, 73, '2019-02-01', 'am2', 'bloque', '2018-12-13', ''), +(13715, 202, 0, 73, '2019-02-01', 'pm1', 'bloque', '2018-12-13', ''), +(13716, 202, 0, 73, '2019-02-01', 'pm2', 'bloque', '2018-12-13', ''), +(13717, 202, 0, 73, '2019-02-04', 'am1', 'bloque', '2018-12-13', ''), +(13718, 202, 0, 73, '2019-02-04', 'am2', 'bloque', '2018-12-13', ''), +(13719, 202, 0, 73, '2019-02-04', 'pm1', 'bloque', '2018-12-13', ''), +(13720, 202, 0, 73, '2019-02-04', 'pm2', 'bloque', '2018-12-13', ''), +(13721, 202, 0, 73, '2019-02-05', 'am1', 'bloque', '2018-12-13', ''), +(13722, 202, 0, 73, '2019-02-05', 'am2', 'bloque', '2018-12-13', ''), +(13723, 202, 0, 73, '2019-02-05', 'pm1', 'bloque', '2018-12-13', ''), +(13724, 202, 0, 73, '2019-02-05', 'pm2', 'bloque', '2018-12-13', ''), +(13725, 202, 0, 73, '2019-02-06', 'am1', 'bloque', '2018-12-13', ''), +(13726, 202, 0, 73, '2019-02-06', 'am2', 'bloque', '2018-12-13', ''), +(13727, 202, 0, 73, '2019-02-06', 'pm1', 'bloque', '2018-12-13', ''), +(13728, 202, 0, 73, '2019-02-06', 'pm2', 'bloque', '2018-12-13', ''), +(13729, 202, 0, 73, '2019-02-07', 'am1', 'bloque', '2018-12-13', ''), +(13730, 202, 0, 73, '2019-02-07', 'am2', 'bloque', '2018-12-13', ''), +(13731, 202, 0, 73, '2019-02-07', 'pm1', 'bloque', '2018-12-13', ''), +(13732, 202, 0, 73, '2019-02-07', 'pm2', 'bloque', '2018-12-13', ''), +(13733, 202, 0, 73, '2019-02-08', 'am1', 'bloque', '2018-12-13', ''), +(13734, 202, 0, 73, '2019-02-08', 'am2', 'bloque', '2018-12-13', ''), +(13735, 202, 0, 73, '2019-02-08', 'pm1', 'bloque', '2018-12-13', ''), +(13736, 202, 0, 73, '2019-02-08', 'pm2', 'bloque', '2018-12-13', ''), +(13737, 203, 0, 65, '2019-01-17', 'am1', 'libre', '2018-12-13', ''), +(13738, 203, 0, 65, '2019-01-17', 'am2', 'libre', '2018-12-13', ''), +(13739, 203, 0, 65, '2019-01-17', 'pm1', 'libre', '2018-12-13', ''), +(13740, 203, 0, 65, '2019-01-17', 'pm2', 'libre', '2018-12-13', ''), +(13741, 203, 0, 65, '2019-01-18', 'am1', 'bloque', '2018-12-13', ''), +(13742, 203, 0, 65, '2019-01-18', 'am2', 'bloque', '2018-12-13', ''), +(13743, 203, 0, 65, '2019-01-18', 'pm1', 'bloque', '2018-12-13', ''), +(13744, 203, 0, 65, '2019-01-18', 'pm2', 'bloque', '2018-12-13', ''), +(13745, 203, 0, 65, '2019-01-21', 'am1', 'bloque', '2018-12-13', ''), +(13746, 203, 0, 65, '2019-01-21', 'am2', 'bloque', '2018-12-13', ''), +(13747, 203, 0, 65, '2019-01-21', 'pm1', 'bloque', '2018-12-13', ''), +(13748, 203, 0, 65, '2019-01-21', 'pm2', 'bloque', '2018-12-13', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(13749, 203, 0, 65, '2019-01-22', 'am1', 'libre', '2019-01-14', 'ref'), +(13750, 203, 0, 65, '2019-01-22', 'am2', 'libre', '2019-01-14', 'ref'), +(13751, 203, 0, 65, '2019-01-22', 'pm1', 'bloque', '2018-12-13', ''), +(13752, 203, 0, 65, '2019-01-22', 'pm2', 'bloque', '2018-12-13', ''), +(13753, 203, 0, 65, '2019-01-23', 'am1', 'bloque', '2018-12-13', ''), +(13754, 203, 0, 65, '2019-01-23', 'am2', 'bloque', '2018-12-13', ''), +(13755, 203, 0, 65, '2019-01-23', 'pm1', 'bloque', '2018-12-13', ''), +(13756, 203, 0, 65, '2019-01-23', 'pm2', 'bloque', '2018-12-13', ''), +(13757, 203, 0, 65, '2019-01-24', 'am1', 'bloque', '2018-12-13', ''), +(13758, 203, 0, 65, '2019-01-24', 'am2', 'bloque', '2018-12-13', ''), +(13759, 203, 0, 65, '2019-01-24', 'pm1', 'bloque', '2018-12-13', ''), +(13760, 203, 0, 65, '2019-01-24', 'pm2', 'bloque', '2018-12-13', ''), +(13761, 203, 0, 65, '2019-01-25', 'am1', 'bloque', '2018-12-13', ''), +(13762, 203, 0, 65, '2019-01-25', 'am2', 'bloque', '2018-12-13', ''), +(13763, 203, 0, 65, '2019-01-25', 'pm1', 'bloque', '2018-12-13', ''), +(13764, 203, 0, 65, '2019-01-25', 'pm2', 'bloque', '2018-12-13', ''), +(13765, 203, 0, 65, '2019-01-28', 'am1', 'bloque', '2018-12-13', ''), +(13766, 203, 0, 65, '2019-01-28', 'am2', 'bloque', '2018-12-13', ''), +(13767, 203, 0, 65, '2019-01-28', 'pm1', 'bloque', '2018-12-13', ''), +(13768, 203, 0, 65, '2019-01-28', 'pm2', 'bloque', '2018-12-13', ''), +(13769, 203, 0, 65, '2019-01-29', 'am1', 'bloque', '2018-12-13', ''), +(13770, 203, 0, 65, '2019-01-29', 'am2', 'bloque', '2018-12-13', ''), +(13771, 203, 0, 65, '2019-01-29', 'pm1', 'bloque', '2018-12-13', ''), +(13772, 203, 0, 65, '2019-01-29', 'pm2', 'bloque', '2018-12-13', ''), +(13773, 203, 0, 65, '2019-01-30', 'am1', 'bloque', '2018-12-13', ''), +(13774, 203, 0, 65, '2019-01-30', 'am2', 'bloque', '2018-12-13', ''), +(13775, 203, 0, 65, '2019-01-30', 'pm1', 'bloque', '2018-12-13', ''), +(13776, 203, 0, 65, '2019-01-30', 'pm2', 'bloque', '2018-12-13', ''), +(13777, 203, 0, 65, '2019-01-31', 'am1', 'libre', '2019-01-14', 'ref'), +(13778, 203, 0, 65, '2019-01-31', 'am2', 'libre', '2019-01-14', 'ref'), +(13779, 203, 0, 65, '2019-01-31', 'pm1', 'libre', '2019-01-14', 'ref'), +(13780, 203, 0, 65, '2019-01-31', 'pm2', 'libre', '2019-01-14', 'ref'), +(13781, 203, 0, 65, '2019-02-01', 'am1', 'libre', '2019-01-14', 'ref'), +(13782, 203, 0, 65, '2019-02-01', 'am2', 'libre', '2019-01-14', 'ref'), +(13783, 203, 0, 65, '2019-02-01', 'pm1', 'libre', '2019-01-14', 'ref'), +(13784, 203, 0, 65, '2019-02-01', 'pm2', 'libre', '2019-01-14', 'ref'), +(13785, 203, 0, 65, '2019-02-04', 'am1', 'bloque', '2018-12-13', ''), +(13786, 203, 0, 65, '2019-02-04', 'am2', 'bloque', '2018-12-13', ''), +(13787, 203, 0, 65, '2019-02-04', 'pm1', 'bloque', '2018-12-13', ''), +(13788, 203, 0, 65, '2019-02-04', 'pm2', 'bloque', '2018-12-13', ''), +(13789, 203, 0, 65, '2019-02-05', 'am1', 'bloque', '2018-12-13', ''), +(13790, 203, 0, 65, '2019-02-05', 'am2', 'bloque', '2018-12-13', ''), +(13791, 203, 0, 65, '2019-02-05', 'pm1', 'bloque', '2018-12-13', ''), +(13792, 203, 0, 65, '2019-02-05', 'pm2', 'bloque', '2018-12-13', ''), +(13793, 203, 0, 65, '2019-02-06', 'am1', 'bloque', '2018-12-13', ''), +(13794, 203, 0, 65, '2019-02-06', 'am2', 'bloque', '2018-12-13', ''), +(13795, 203, 0, 65, '2019-02-06', 'pm1', 'bloque', '2018-12-13', ''), +(13796, 203, 0, 65, '2019-02-06', 'pm2', 'bloque', '2018-12-13', ''), +(13797, 203, 0, 65, '2019-02-07', 'am1', 'bloque', '2018-12-13', ''), +(13798, 203, 0, 65, '2019-02-07', 'am2', 'bloque', '2018-12-13', ''), +(13799, 203, 0, 65, '2019-02-07', 'pm1', 'bloque', '2018-12-13', ''), +(13800, 203, 0, 65, '2019-02-07', 'pm2', 'bloque', '2018-12-13', ''), +(13801, 203, 0, 65, '2019-02-08', 'am1', 'bloque', '2018-12-13', ''), +(13802, 203, 0, 65, '2019-02-08', 'am2', 'bloque', '2018-12-13', ''), +(13803, 203, 0, 65, '2019-02-08', 'pm1', 'bloque', '2018-12-13', ''), +(13804, 203, 0, 65, '2019-02-08', 'pm2', 'bloque', '2018-12-13', ''), +(13805, 204, 0, 65, '2019-01-17', 'am1', 'libre', '2018-12-13', ''), +(13806, 204, 0, 65, '2019-01-17', 'am2', 'libre', '2018-12-13', ''), +(13807, 204, 0, 65, '2019-01-17', 'pm1', 'libre', '2018-12-13', ''), +(13808, 204, 0, 65, '2019-01-17', 'pm2', 'libre', '2018-12-13', ''), +(13809, 204, 0, 65, '2019-01-18', 'am1', 'bloque', '2018-12-13', ''), +(13810, 204, 0, 65, '2019-01-18', 'am2', 'bloque', '2018-12-13', ''), +(13811, 204, 0, 65, '2019-01-18', 'pm1', 'bloque', '2018-12-13', ''), +(13812, 204, 0, 65, '2019-01-18', 'pm2', 'bloque', '2018-12-13', ''), +(13813, 204, 0, 65, '2019-01-21', 'am1', 'bloque', '2018-12-13', ''), +(13814, 204, 0, 65, '2019-01-21', 'am2', 'bloque', '2018-12-13', ''), +(13815, 204, 0, 65, '2019-01-21', 'pm1', 'bloque', '2018-12-13', ''), +(13816, 204, 0, 65, '2019-01-21', 'pm2', 'bloque', '2018-12-13', ''), +(13817, 204, 0, 65, '2019-01-22', 'am1', 'bloque', '2018-12-13', ''), +(13818, 204, 0, 65, '2019-01-22', 'am2', 'bloque', '2018-12-13', ''), +(13819, 204, 0, 65, '2019-01-22', 'pm1', 'bloque', '2018-12-13', ''), +(13820, 204, 0, 65, '2019-01-22', 'pm2', 'bloque', '2018-12-13', ''), +(13821, 204, 0, 65, '2019-01-23', 'am1', 'bloque', '2018-12-13', ''), +(13822, 204, 0, 65, '2019-01-23', 'am2', 'bloque', '2018-12-13', ''), +(13823, 204, 0, 65, '2019-01-23', 'pm1', 'bloque', '2018-12-13', ''), +(13824, 204, 0, 65, '2019-01-23', 'pm2', 'bloque', '2018-12-13', ''), +(13825, 204, 0, 65, '2019-01-24', 'am1', 'bloque', '2018-12-13', ''), +(13826, 204, 0, 65, '2019-01-24', 'am2', 'bloque', '2018-12-13', ''), +(13827, 204, 0, 65, '2019-01-24', 'pm1', 'bloque', '2018-12-13', ''), +(13828, 204, 0, 65, '2019-01-24', 'pm2', 'bloque', '2018-12-13', ''), +(13829, 204, 0, 65, '2019-01-25', 'am1', 'bloque', '2018-12-13', ''), +(13830, 204, 0, 65, '2019-01-25', 'am2', 'bloque', '2018-12-13', ''), +(13831, 204, 0, 65, '2019-01-25', 'pm1', 'bloque', '2018-12-13', ''), +(13832, 204, 0, 65, '2019-01-25', 'pm2', 'bloque', '2018-12-13', ''), +(13833, 204, 0, 65, '2019-01-28', 'am1', 'bloque', '2018-12-13', ''), +(13834, 204, 0, 65, '2019-01-28', 'am2', 'bloque', '2018-12-13', ''), +(13835, 204, 0, 65, '2019-01-28', 'pm1', 'bloque', '2018-12-13', ''), +(13836, 204, 0, 65, '2019-01-28', 'pm2', 'bloque', '2018-12-13', ''), +(13837, 204, 0, 65, '2019-01-29', 'am1', 'bloque', '2018-12-13', ''), +(13838, 204, 0, 65, '2019-01-29', 'am2', 'bloque', '2018-12-13', ''), +(13839, 204, 0, 65, '2019-01-29', 'pm1', 'bloque', '2018-12-13', ''), +(13840, 204, 0, 65, '2019-01-29', 'pm2', 'bloque', '2018-12-13', ''), +(13841, 204, 0, 65, '2019-01-30', 'am1', 'bloque', '2018-12-13', ''), +(13842, 204, 0, 65, '2019-01-30', 'am2', 'bloque', '2018-12-13', ''), +(13843, 204, 0, 65, '2019-01-30', 'pm1', 'bloque', '2018-12-13', ''), +(13844, 204, 0, 65, '2019-01-30', 'pm2', 'bloque', '2018-12-13', ''), +(13845, 204, 0, 65, '2019-01-31', 'am1', 'bloque', '2018-12-13', ''), +(13846, 204, 0, 65, '2019-01-31', 'am2', 'bloque', '2018-12-13', ''), +(13847, 204, 0, 65, '2019-01-31', 'pm1', 'bloque', '2018-12-13', ''), +(13848, 204, 0, 65, '2019-01-31', 'pm2', 'bloque', '2018-12-13', ''), +(13849, 204, 0, 65, '2019-02-01', 'am1', 'bloque', '2018-12-13', ''), +(13850, 204, 0, 65, '2019-02-01', 'am2', 'bloque', '2018-12-13', ''), +(13851, 204, 0, 65, '2019-02-01', 'pm1', 'bloque', '2018-12-13', ''), +(13852, 204, 0, 65, '2019-02-01', 'pm2', 'bloque', '2018-12-13', ''), +(13853, 204, 0, 65, '2019-02-04', 'am1', 'bloque', '2018-12-13', ''), +(13854, 204, 0, 65, '2019-02-04', 'am2', 'bloque', '2018-12-13', ''), +(13855, 204, 0, 65, '2019-02-04', 'pm1', 'bloque', '2018-12-13', ''), +(13856, 204, 0, 65, '2019-02-04', 'pm2', 'bloque', '2018-12-13', ''), +(13857, 204, 0, 65, '2019-02-05', 'am1', 'bloque', '2018-12-13', ''), +(13858, 204, 0, 65, '2019-02-05', 'am2', 'bloque', '2018-12-13', ''), +(13859, 204, 0, 65, '2019-02-05', 'pm1', 'bloque', '2018-12-13', ''), +(13860, 204, 0, 65, '2019-02-05', 'pm2', 'bloque', '2018-12-13', ''), +(13861, 204, 0, 65, '2019-02-06', 'am1', 'bloque', '2018-12-13', ''), +(13862, 204, 0, 65, '2019-02-06', 'am2', 'bloque', '2018-12-13', ''), +(13863, 204, 0, 65, '2019-02-06', 'pm1', 'bloque', '2018-12-13', ''), +(13864, 204, 0, 65, '2019-02-06', 'pm2', 'bloque', '2018-12-13', ''), +(13865, 204, 0, 65, '2019-02-07', 'am1', 'bloque', '2018-12-13', ''), +(13866, 204, 0, 65, '2019-02-07', 'am2', 'bloque', '2018-12-13', ''), +(13867, 204, 0, 65, '2019-02-07', 'pm1', 'bloque', '2018-12-13', ''), +(13868, 204, 0, 65, '2019-02-07', 'pm2', 'bloque', '2018-12-13', ''), +(13869, 204, 0, 65, '2019-02-08', 'am1', 'bloque', '2018-12-13', ''), +(13870, 204, 0, 65, '2019-02-08', 'am2', 'bloque', '2018-12-13', ''), +(13871, 204, 0, 65, '2019-02-08', 'pm1', 'bloque', '2018-12-13', ''), +(13872, 204, 0, 65, '2019-02-08', 'pm2', 'bloque', '2018-12-13', ''), +(13873, 205, 0, 65, '2019-01-17', 'am1', 'libre', '2018-12-13', ''), +(13874, 205, 272, 65, '2019-01-17', 'am2', 'reserve', '2019-01-14', 'ref'), +(13875, 205, 0, 65, '2019-01-17', 'pm1', 'bloque', '2018-12-13', 'ref'), +(13876, 205, 0, 65, '2019-01-17', 'pm2', 'bloque', '2018-12-13', 'ref'), +(13877, 205, 0, 65, '2019-01-18', 'am1', 'bloque', '2018-12-13', ''), +(13878, 205, 0, 65, '2019-01-18', 'am2', 'bloque', '2018-12-13', ''), +(13879, 205, 0, 65, '2019-01-18', 'pm1', 'bloque', '2018-12-13', ''), +(13880, 205, 0, 65, '2019-01-18', 'pm2', 'bloque', '2018-12-13', ''), +(13881, 205, 0, 65, '2019-01-21', 'am1', 'bloque', '2018-12-13', ''), +(13882, 205, 0, 65, '2019-01-21', 'am2', 'bloque', '2018-12-13', ''), +(13883, 205, 0, 65, '2019-01-21', 'pm1', 'bloque', '2018-12-13', ''), +(13884, 205, 0, 65, '2019-01-21', 'pm2', 'bloque', '2018-12-13', ''), +(13885, 205, 0, 65, '2019-01-22', 'am1', 'bloque', '2018-12-13', ''), +(13886, 205, 0, 65, '2019-01-22', 'am2', 'bloque', '2018-12-13', ''), +(13887, 205, 0, 65, '2019-01-22', 'pm1', 'bloque', '2018-12-13', ''), +(13888, 205, 0, 65, '2019-01-22', 'pm2', 'bloque', '2018-12-13', ''), +(13889, 205, 0, 65, '2019-01-23', 'am1', 'bloque', '2018-12-13', ''), +(13890, 205, 0, 65, '2019-01-23', 'am2', 'bloque', '2018-12-13', ''), +(13891, 205, 0, 65, '2019-01-23', 'pm1', 'bloque', '2018-12-13', ''), +(13892, 205, 0, 65, '2019-01-23', 'pm2', 'bloque', '2018-12-13', ''), +(13893, 205, 0, 65, '2019-01-24', 'am1', 'bloque', '2018-12-13', ''), +(13894, 205, 0, 65, '2019-01-24', 'am2', 'bloque', '2018-12-13', ''), +(13895, 205, 0, 65, '2019-01-24', 'pm1', 'bloque', '2018-12-13', ''), +(13896, 205, 0, 65, '2019-01-24', 'pm2', 'bloque', '2018-12-13', ''), +(13897, 205, 0, 65, '2019-01-25', 'am1', 'bloque', '2018-12-13', ''), +(13898, 205, 0, 65, '2019-01-25', 'am2', 'bloque', '2018-12-13', ''), +(13899, 205, 0, 65, '2019-01-25', 'pm1', 'bloque', '2018-12-13', ''), +(13900, 205, 0, 65, '2019-01-25', 'pm2', 'bloque', '2018-12-13', ''), +(13901, 205, 0, 65, '2019-01-28', 'am1', 'bloque', '2018-12-13', ''), +(13902, 205, 0, 65, '2019-01-28', 'am2', 'bloque', '2018-12-13', ''), +(13903, 205, 0, 65, '2019-01-28', 'pm1', 'bloque', '2018-12-13', ''), +(13904, 205, 0, 65, '2019-01-28', 'pm2', 'bloque', '2018-12-13', ''), +(13905, 205, 0, 65, '2019-01-29', 'am1', 'bloque', '2018-12-13', ''), +(13906, 205, 0, 65, '2019-01-29', 'am2', 'bloque', '2018-12-13', ''), +(13907, 205, 0, 65, '2019-01-29', 'pm1', 'bloque', '2018-12-13', ''), +(13908, 205, 0, 65, '2019-01-29', 'pm2', 'bloque', '2018-12-13', ''), +(13909, 205, 0, 65, '2019-01-30', 'am1', 'bloque', '2018-12-13', ''), +(13910, 205, 0, 65, '2019-01-30', 'am2', 'bloque', '2018-12-13', ''), +(13911, 205, 0, 65, '2019-01-30', 'pm1', 'bloque', '2018-12-13', ''), +(13912, 205, 0, 65, '2019-01-30', 'pm2', 'bloque', '2018-12-13', ''), +(13913, 205, 0, 65, '2019-01-31', 'am1', 'bloque', '2018-12-13', ''), +(13914, 205, 0, 65, '2019-01-31', 'am2', 'bloque', '2018-12-13', ''), +(13915, 205, 0, 65, '2019-01-31', 'pm1', 'bloque', '2018-12-13', ''), +(13916, 205, 0, 65, '2019-01-31', 'pm2', 'bloque', '2018-12-13', ''), +(13917, 205, 0, 65, '2019-02-01', 'am1', 'bloque', '2018-12-13', ''), +(13918, 205, 0, 65, '2019-02-01', 'am2', 'bloque', '2018-12-13', ''), +(13919, 205, 0, 65, '2019-02-01', 'pm1', 'bloque', '2018-12-13', ''), +(13920, 205, 0, 65, '2019-02-01', 'pm2', 'bloque', '2018-12-13', ''), +(13921, 205, 0, 65, '2019-02-04', 'am1', 'bloque', '2018-12-13', ''), +(13922, 205, 0, 65, '2019-02-04', 'am2', 'bloque', '2018-12-13', ''), +(13923, 205, 0, 65, '2019-02-04', 'pm1', 'bloque', '2018-12-13', ''), +(13924, 205, 0, 65, '2019-02-04', 'pm2', 'bloque', '2018-12-13', ''), +(13925, 205, 0, 65, '2019-02-05', 'am1', 'bloque', '2018-12-13', ''), +(13926, 205, 0, 65, '2019-02-05', 'am2', 'bloque', '2018-12-13', ''), +(13927, 205, 0, 65, '2019-02-05', 'pm1', 'bloque', '2018-12-13', ''), +(13928, 205, 0, 65, '2019-02-05', 'pm2', 'bloque', '2018-12-13', ''), +(13929, 205, 0, 65, '2019-02-06', 'am1', 'bloque', '2018-12-13', ''), +(13930, 205, 0, 65, '2019-02-06', 'am2', 'bloque', '2018-12-13', ''), +(13931, 205, 0, 65, '2019-02-06', 'pm1', 'bloque', '2018-12-13', ''), +(13932, 205, 0, 65, '2019-02-06', 'pm2', 'bloque', '2018-12-13', ''), +(13933, 205, 0, 65, '2019-02-07', 'am1', 'bloque', '2018-12-13', ''), +(13934, 205, 0, 65, '2019-02-07', 'am2', 'bloque', '2018-12-13', ''), +(13935, 205, 0, 65, '2019-02-07', 'pm1', 'bloque', '2018-12-13', ''), +(13936, 205, 0, 65, '2019-02-07', 'pm2', 'bloque', '2018-12-13', ''), +(13937, 205, 0, 65, '2019-02-08', 'am1', 'bloque', '2018-12-13', ''), +(13938, 205, 0, 65, '2019-02-08', 'am2', 'bloque', '2018-12-13', ''), +(13939, 205, 0, 65, '2019-02-08', 'pm1', 'bloque', '2018-12-13', ''), +(13940, 205, 0, 65, '2019-02-08', 'pm2', 'bloque', '2018-12-13', ''), +(13941, 206, 0, 197, '2019-01-17', 'am1', 'libre', '2018-12-14', ''), +(13942, 206, 0, 197, '2019-01-17', 'am2', 'libre', '2018-12-14', ''), +(13943, 206, 0, 197, '2019-01-17', 'pm1', 'libre', '2018-12-14', ''), +(13944, 206, 0, 197, '2019-01-17', 'pm2', 'libre', '2018-12-14', ''), +(13945, 206, 0, 197, '2019-01-18', 'am1', 'bloque', '2018-12-14', ''), +(13946, 206, 0, 197, '2019-01-18', 'am2', 'bloque', '2018-12-14', ''), +(13947, 206, 0, 197, '2019-01-18', 'pm1', 'bloque', '2018-12-14', ''), +(13948, 206, 0, 197, '2019-01-18', 'pm2', 'bloque', '2018-12-14', ''), +(13949, 206, 0, 197, '2019-01-21', 'am1', 'bloque', '2018-12-14', ''), +(13950, 206, 0, 197, '2019-01-21', 'am2', 'bloque', '2018-12-14', ''), +(13951, 206, 0, 197, '2019-01-21', 'pm1', 'bloque', '2018-12-14', ''), +(13952, 206, 0, 197, '2019-01-21', 'pm2', 'bloque', '2018-12-14', ''), +(13953, 206, 0, 197, '2019-01-22', 'am1', 'bloque', '2018-12-14', ''), +(13954, 206, 0, 197, '2019-01-22', 'am2', 'bloque', '2018-12-14', ''), +(13955, 206, 0, 197, '2019-01-22', 'pm1', 'bloque', '2018-12-14', ''), +(13956, 206, 0, 197, '2019-01-22', 'pm2', 'bloque', '2018-12-14', ''), +(13957, 206, 0, 197, '2019-01-23', 'am1', 'bloque', '2018-12-14', ''), +(13958, 206, 0, 197, '2019-01-23', 'am2', 'bloque', '2018-12-14', ''), +(13959, 206, 0, 197, '2019-01-23', 'pm1', 'bloque', '2018-12-14', ''), +(13960, 206, 0, 197, '2019-01-23', 'pm2', 'bloque', '2018-12-14', ''), +(13961, 206, 0, 197, '2019-01-24', 'am1', 'bloque', '2018-12-14', ''), +(13962, 206, 0, 197, '2019-01-24', 'am2', 'bloque', '2018-12-14', ''), +(13963, 206, 0, 197, '2019-01-24', 'pm1', 'bloque', '2018-12-14', ''), +(13964, 206, 0, 197, '2019-01-24', 'pm2', 'bloque', '2018-12-14', ''), +(13965, 206, 0, 197, '2019-01-25', 'am1', 'bloque', '2018-12-14', ''), +(13966, 206, 0, 197, '2019-01-25', 'am2', 'bloque', '2018-12-14', ''), +(13967, 206, 0, 197, '2019-01-25', 'pm1', 'bloque', '2018-12-14', ''), +(13968, 206, 0, 197, '2019-01-25', 'pm2', 'bloque', '2018-12-14', ''), +(13969, 206, 0, 197, '2019-01-28', 'am1', 'bloque', '2018-12-14', ''), +(13970, 206, 0, 197, '2019-01-28', 'am2', 'bloque', '2018-12-14', ''), +(13971, 206, 0, 197, '2019-01-28', 'pm1', 'bloque', '2018-12-14', ''), +(13972, 206, 0, 197, '2019-01-28', 'pm2', 'bloque', '2018-12-14', ''), +(13973, 206, 0, 197, '2019-01-29', 'am1', 'bloque', '2018-12-14', ''), +(13974, 206, 0, 197, '2019-01-29', 'am2', 'bloque', '2018-12-14', ''), +(13975, 206, 0, 197, '2019-01-29', 'pm1', 'bloque', '2018-12-14', ''), +(13976, 206, 0, 197, '2019-01-29', 'pm2', 'bloque', '2018-12-14', ''), +(13977, 206, 0, 197, '2019-01-30', 'am1', 'bloque', '2018-12-14', ''), +(13978, 206, 0, 197, '2019-01-30', 'am2', 'bloque', '2018-12-14', ''), +(13979, 206, 0, 197, '2019-01-30', 'pm1', 'bloque', '2018-12-14', ''), +(13980, 206, 0, 197, '2019-01-30', 'pm2', 'bloque', '2018-12-14', ''), +(13981, 206, 0, 197, '2019-01-31', 'am1', 'bloque', '2018-12-14', ''), +(13982, 206, 0, 197, '2019-01-31', 'am2', 'bloque', '2018-12-14', ''), +(13983, 206, 0, 197, '2019-01-31', 'pm1', 'bloque', '2018-12-14', ''), +(13984, 206, 0, 197, '2019-01-31', 'pm2', 'bloque', '2018-12-14', ''), +(13985, 206, 0, 197, '2019-02-01', 'am1', 'bloque', '2018-12-14', ''), +(13986, 206, 0, 197, '2019-02-01', 'am2', 'bloque', '2018-12-14', ''), +(13987, 206, 0, 197, '2019-02-01', 'pm1', 'bloque', '2018-12-14', ''), +(13988, 206, 0, 197, '2019-02-01', 'pm2', 'bloque', '2018-12-14', ''), +(13989, 206, 0, 197, '2019-02-04', 'am1', 'bloque', '2018-12-14', ''), +(13990, 206, 0, 197, '2019-02-04', 'am2', 'bloque', '2018-12-14', ''), +(13991, 206, 0, 197, '2019-02-04', 'pm1', 'bloque', '2018-12-14', ''), +(13992, 206, 0, 197, '2019-02-04', 'pm2', 'bloque', '2018-12-14', ''), +(13993, 206, 0, 197, '2019-02-05', 'am1', 'bloque', '2018-12-14', ''), +(13994, 206, 0, 197, '2019-02-05', 'am2', 'bloque', '2018-12-14', ''), +(13995, 206, 0, 197, '2019-02-05', 'pm1', 'bloque', '2018-12-14', ''), +(13996, 206, 0, 197, '2019-02-05', 'pm2', 'bloque', '2018-12-14', ''), +(13997, 206, 0, 197, '2019-02-06', 'am1', 'bloque', '2018-12-14', ''), +(13998, 206, 0, 197, '2019-02-06', 'am2', 'bloque', '2018-12-14', ''), +(13999, 206, 0, 197, '2019-02-06', 'pm1', 'bloque', '2018-12-14', ''), +(14000, 206, 0, 197, '2019-02-06', 'pm2', 'bloque', '2018-12-14', ''), +(14001, 206, 0, 197, '2019-02-07', 'am1', 'bloque', '2018-12-14', ''), +(14002, 206, 0, 197, '2019-02-07', 'am2', 'bloque', '2018-12-14', ''), +(14003, 206, 0, 197, '2019-02-07', 'pm1', 'bloque', '2018-12-14', ''), +(14004, 206, 0, 197, '2019-02-07', 'pm2', 'bloque', '2018-12-14', ''), +(14005, 206, 0, 197, '2019-02-08', 'am1', 'bloque', '2018-12-14', ''), +(14006, 206, 0, 197, '2019-02-08', 'am2', 'bloque', '2018-12-14', ''), +(14007, 206, 0, 197, '2019-02-08', 'pm1', 'bloque', '2018-12-14', ''), +(14008, 206, 0, 197, '2019-02-08', 'pm2', 'bloque', '2018-12-14', ''), +(14009, 207, 0, 39, '2019-01-17', 'am1', 'libre', '2018-12-14', ''), +(14010, 207, 0, 39, '2019-01-17', 'am2', 'libre', '2018-12-14', ''), +(14011, 207, 0, 39, '2019-01-17', 'pm1', 'libre', '2018-12-14', ''), +(14012, 207, 0, 39, '2019-01-17', 'pm2', 'libre', '2018-12-14', ''), +(14013, 207, 0, 39, '2019-01-18', 'am1', 'bloque', '2018-12-14', ''), +(14014, 207, 0, 39, '2019-01-18', 'am2', 'bloque', '2018-12-14', ''), +(14015, 207, 0, 39, '2019-01-18', 'pm1', 'bloque', '2018-12-14', ''), +(14016, 207, 0, 39, '2019-01-18', 'pm2', 'bloque', '2018-12-14', ''), +(14017, 207, 0, 39, '2019-01-21', 'am1', 'bloque', '2018-12-14', ''), +(14018, 207, 0, 39, '2019-01-21', 'am2', 'bloque', '2018-12-14', ''), +(14019, 207, 0, 39, '2019-01-21', 'pm1', 'bloque', '2018-12-14', ''), +(14020, 207, 0, 39, '2019-01-21', 'pm2', 'bloque', '2018-12-14', ''), +(14021, 207, 0, 39, '2019-01-22', 'am1', 'bloque', '2018-12-14', ''), +(14022, 207, 0, 39, '2019-01-22', 'am2', 'bloque', '2018-12-14', ''), +(14023, 207, 0, 39, '2019-01-22', 'pm1', 'bloque', '2018-12-14', ''), +(14024, 207, 0, 39, '2019-01-22', 'pm2', 'bloque', '2018-12-14', ''), +(14025, 207, 0, 39, '2019-01-23', 'am1', 'bloque', '2018-12-14', ''), +(14026, 207, 0, 39, '2019-01-23', 'am2', 'bloque', '2018-12-14', ''), +(14027, 207, 0, 39, '2019-01-23', 'pm1', 'bloque', '2018-12-14', ''), +(14028, 207, 0, 39, '2019-01-23', 'pm2', 'bloque', '2018-12-14', ''), +(14029, 207, 0, 39, '2019-01-24', 'am1', 'bloque', '2018-12-14', ''), +(14030, 207, 0, 39, '2019-01-24', 'am2', 'bloque', '2018-12-14', ''), +(14031, 207, 0, 39, '2019-01-24', 'pm1', 'bloque', '2018-12-14', ''), +(14032, 207, 0, 39, '2019-01-24', 'pm2', 'bloque', '2018-12-14', ''), +(14033, 207, 0, 39, '2019-01-25', 'am1', 'bloque', '2018-12-14', ''), +(14034, 207, 0, 39, '2019-01-25', 'am2', 'bloque', '2018-12-14', ''), +(14035, 207, 0, 39, '2019-01-25', 'pm1', 'bloque', '2018-12-14', ''), +(14036, 207, 0, 39, '2019-01-25', 'pm2', 'bloque', '2018-12-14', ''), +(14037, 207, 0, 39, '2019-01-28', 'am1', 'bloque', '2018-12-14', ''), +(14038, 207, 0, 39, '2019-01-28', 'am2', 'bloque', '2018-12-14', ''), +(14039, 207, 0, 39, '2019-01-28', 'pm1', 'bloque', '2018-12-14', ''), +(14040, 207, 0, 39, '2019-01-28', 'pm2', 'bloque', '2018-12-14', ''), +(14041, 207, 0, 39, '2019-01-29', 'am1', 'bloque', '2018-12-14', ''), +(14042, 207, 0, 39, '2019-01-29', 'am2', 'bloque', '2018-12-14', ''), +(14043, 207, 0, 39, '2019-01-29', 'pm1', 'bloque', '2018-12-14', ''), +(14044, 207, 0, 39, '2019-01-29', 'pm2', 'bloque', '2018-12-14', ''), +(14045, 207, 0, 39, '2019-01-30', 'am1', 'bloque', '2018-12-14', ''), +(14046, 207, 0, 39, '2019-01-30', 'am2', 'bloque', '2018-12-14', ''), +(14047, 207, 0, 39, '2019-01-30', 'pm1', 'bloque', '2018-12-14', ''), +(14048, 207, 0, 39, '2019-01-30', 'pm2', 'bloque', '2018-12-14', ''), +(14049, 207, 0, 39, '2019-01-31', 'am1', 'bloque', '2018-12-14', ''), +(14050, 207, 0, 39, '2019-01-31', 'am2', 'bloque', '2018-12-14', ''), +(14051, 207, 0, 39, '2019-01-31', 'pm1', 'bloque', '2018-12-14', ''), +(14052, 207, 0, 39, '2019-01-31', 'pm2', 'bloque', '2018-12-14', ''), +(14053, 207, 0, 39, '2019-02-01', 'am1', 'bloque', '2018-12-14', ''), +(14054, 207, 0, 39, '2019-02-01', 'am2', 'bloque', '2018-12-14', ''), +(14055, 207, 0, 39, '2019-02-01', 'pm1', 'bloque', '2018-12-14', ''), +(14056, 207, 0, 39, '2019-02-01', 'pm2', 'bloque', '2018-12-14', ''), +(14057, 207, 0, 39, '2019-02-04', 'am1', 'bloque', '2018-12-14', ''), +(14058, 207, 0, 39, '2019-02-04', 'am2', 'bloque', '2018-12-14', ''), +(14059, 207, 0, 39, '2019-02-04', 'pm1', 'bloque', '2018-12-14', ''), +(14060, 207, 0, 39, '2019-02-04', 'pm2', 'bloque', '2018-12-14', ''), +(14061, 207, 0, 39, '2019-02-05', 'am1', 'bloque', '2018-12-14', ''), +(14062, 207, 0, 39, '2019-02-05', 'am2', 'bloque', '2018-12-14', ''), +(14063, 207, 0, 39, '2019-02-05', 'pm1', 'bloque', '2018-12-14', ''), +(14064, 207, 0, 39, '2019-02-05', 'pm2', 'bloque', '2018-12-14', ''), +(14065, 207, 0, 39, '2019-02-06', 'am1', 'bloque', '2018-12-14', ''), +(14066, 207, 0, 39, '2019-02-06', 'am2', 'bloque', '2018-12-14', ''), +(14067, 207, 0, 39, '2019-02-06', 'pm1', 'bloque', '2018-12-14', ''), +(14068, 207, 0, 39, '2019-02-06', 'pm2', 'bloque', '2018-12-14', ''), +(14069, 207, 0, 39, '2019-02-07', 'am1', 'bloque', '2018-12-14', ''), +(14070, 207, 0, 39, '2019-02-07', 'am2', 'bloque', '2018-12-14', ''), +(14071, 207, 0, 39, '2019-02-07', 'pm1', 'bloque', '2018-12-14', ''), +(14072, 207, 0, 39, '2019-02-07', 'pm2', 'bloque', '2018-12-14', ''), +(14073, 207, 0, 39, '2019-02-08', 'am1', 'bloque', '2018-12-14', ''), +(14074, 207, 0, 39, '2019-02-08', 'am2', 'bloque', '2018-12-14', ''), +(14075, 207, 0, 39, '2019-02-08', 'pm1', 'bloque', '2018-12-14', ''), +(14076, 207, 0, 39, '2019-02-08', 'pm2', 'bloque', '2018-12-14', ''), +(14077, 208, 0, 39, '2019-01-17', 'am1', 'libre', '2018-12-14', ''), +(14078, 208, 0, 39, '2019-01-17', 'am2', 'libre', '2018-12-14', ''), +(14079, 208, 0, 39, '2019-01-17', 'pm1', 'libre', '2018-12-14', ''), +(14080, 208, 0, 39, '2019-01-17', 'pm2', 'libre', '2018-12-14', ''), +(14081, 208, 0, 39, '2019-01-18', 'am1', 'bloque', '2018-12-14', ''), +(14082, 208, 0, 39, '2019-01-18', 'am2', 'bloque', '2018-12-14', ''), +(14083, 208, 0, 39, '2019-01-18', 'pm1', 'bloque', '2018-12-14', ''), +(14084, 208, 0, 39, '2019-01-18', 'pm2', 'bloque', '2018-12-14', ''), +(14085, 208, 0, 39, '2019-01-21', 'am1', 'bloque', '2018-12-14', ''), +(14086, 208, 0, 39, '2019-01-21', 'am2', 'bloque', '2018-12-14', ''), +(14087, 208, 0, 39, '2019-01-21', 'pm1', 'bloque', '2018-12-14', ''), +(14088, 208, 0, 39, '2019-01-21', 'pm2', 'bloque', '2018-12-14', ''), +(14089, 208, 0, 39, '2019-01-22', 'am1', 'bloque', '2018-12-14', ''), +(14090, 208, 0, 39, '2019-01-22', 'am2', 'bloque', '2018-12-14', ''), +(14091, 208, 0, 39, '2019-01-22', 'pm1', 'bloque', '2018-12-14', ''), +(14092, 208, 0, 39, '2019-01-22', 'pm2', 'bloque', '2018-12-14', ''), +(14093, 208, 0, 39, '2019-01-23', 'am1', 'bloque', '2018-12-14', ''), +(14094, 208, 0, 39, '2019-01-23', 'am2', 'bloque', '2018-12-14', ''), +(14095, 208, 0, 39, '2019-01-23', 'pm1', 'bloque', '2018-12-14', ''), +(14096, 208, 0, 39, '2019-01-23', 'pm2', 'bloque', '2018-12-14', ''), +(14097, 208, 0, 39, '2019-01-24', 'am1', 'bloque', '2018-12-14', ''), +(14098, 208, 0, 39, '2019-01-24', 'am2', 'bloque', '2018-12-14', ''), +(14099, 208, 0, 39, '2019-01-24', 'pm1', 'bloque', '2018-12-14', ''), +(14100, 208, 0, 39, '2019-01-24', 'pm2', 'bloque', '2018-12-14', ''), +(14101, 208, 0, 39, '2019-01-25', 'am1', 'bloque', '2018-12-14', ''), +(14102, 208, 0, 39, '2019-01-25', 'am2', 'bloque', '2018-12-14', ''), +(14103, 208, 0, 39, '2019-01-25', 'pm1', 'bloque', '2018-12-14', ''), +(14104, 208, 0, 39, '2019-01-25', 'pm2', 'bloque', '2018-12-14', ''), +(14105, 208, 0, 39, '2019-01-28', 'am1', 'bloque', '2018-12-14', ''), +(14106, 208, 0, 39, '2019-01-28', 'am2', 'bloque', '2018-12-14', ''), +(14107, 208, 0, 39, '2019-01-28', 'pm1', 'bloque', '2018-12-14', ''), +(14108, 208, 0, 39, '2019-01-28', 'pm2', 'bloque', '2018-12-14', ''), +(14109, 208, 0, 39, '2019-01-29', 'am1', 'bloque', '2018-12-14', ''), +(14110, 208, 0, 39, '2019-01-29', 'am2', 'bloque', '2018-12-14', ''), +(14111, 208, 0, 39, '2019-01-29', 'pm1', 'bloque', '2018-12-14', ''), +(14112, 208, 0, 39, '2019-01-29', 'pm2', 'bloque', '2018-12-14', ''), +(14113, 208, 0, 39, '2019-01-30', 'am1', 'bloque', '2018-12-14', ''), +(14114, 208, 0, 39, '2019-01-30', 'am2', 'bloque', '2018-12-14', ''), +(14115, 208, 0, 39, '2019-01-30', 'pm1', 'bloque', '2018-12-14', ''), +(14116, 208, 0, 39, '2019-01-30', 'pm2', 'bloque', '2018-12-14', ''), +(14117, 208, 0, 39, '2019-01-31', 'am1', 'bloque', '2018-12-14', ''), +(14118, 208, 0, 39, '2019-01-31', 'am2', 'bloque', '2018-12-14', ''), +(14119, 208, 0, 39, '2019-01-31', 'pm1', 'bloque', '2018-12-14', ''), +(14120, 208, 0, 39, '2019-01-31', 'pm2', 'bloque', '2018-12-14', ''), +(14121, 208, 0, 39, '2019-02-01', 'am1', 'bloque', '2018-12-14', ''), +(14122, 208, 0, 39, '2019-02-01', 'am2', 'bloque', '2018-12-14', ''), +(14123, 208, 0, 39, '2019-02-01', 'pm1', 'bloque', '2018-12-14', ''), +(14124, 208, 0, 39, '2019-02-01', 'pm2', 'bloque', '2018-12-14', ''), +(14125, 208, 0, 39, '2019-02-04', 'am1', 'bloque', '2018-12-14', ''), +(14126, 208, 0, 39, '2019-02-04', 'am2', 'bloque', '2018-12-14', ''), +(14127, 208, 0, 39, '2019-02-04', 'pm1', 'bloque', '2018-12-14', ''), +(14128, 208, 0, 39, '2019-02-04', 'pm2', 'bloque', '2018-12-14', ''), +(14129, 208, 0, 39, '2019-02-05', 'am1', 'bloque', '2018-12-14', ''), +(14130, 208, 0, 39, '2019-02-05', 'am2', 'bloque', '2018-12-14', ''), +(14131, 208, 0, 39, '2019-02-05', 'pm1', 'bloque', '2018-12-14', ''), +(14132, 208, 0, 39, '2019-02-05', 'pm2', 'bloque', '2018-12-14', ''), +(14133, 208, 0, 39, '2019-02-06', 'am1', 'bloque', '2018-12-14', ''), +(14134, 208, 0, 39, '2019-02-06', 'am2', 'bloque', '2018-12-14', ''), +(14135, 208, 0, 39, '2019-02-06', 'pm1', 'bloque', '2018-12-14', ''), +(14136, 208, 0, 39, '2019-02-06', 'pm2', 'bloque', '2018-12-14', ''), +(14137, 208, 0, 39, '2019-02-07', 'am1', 'bloque', '2018-12-14', ''), +(14138, 208, 0, 39, '2019-02-07', 'am2', 'bloque', '2018-12-14', ''), +(14139, 208, 0, 39, '2019-02-07', 'pm1', 'bloque', '2018-12-14', ''), +(14140, 208, 0, 39, '2019-02-07', 'pm2', 'bloque', '2018-12-14', ''), +(14141, 208, 0, 39, '2019-02-08', 'am1', 'bloque', '2018-12-14', ''), +(14142, 208, 0, 39, '2019-02-08', 'am2', 'bloque', '2018-12-14', ''), +(14143, 208, 0, 39, '2019-02-08', 'pm1', 'bloque', '2018-12-14', ''), +(14144, 208, 0, 39, '2019-02-08', 'pm2', 'bloque', '2018-12-14', ''), +(14145, 209, 0, 39, '2019-01-17', 'am1', 'libre', '2018-12-14', ''), +(14146, 209, 0, 39, '2019-01-17', 'am2', 'libre', '2018-12-14', ''), +(14147, 209, 0, 39, '2019-01-17', 'pm1', 'libre', '2018-12-14', ''), +(14148, 209, 0, 39, '2019-01-17', 'pm2', 'libre', '2018-12-14', ''), +(14149, 209, 0, 39, '2019-01-18', 'am1', 'bloque', '2018-12-14', ''), +(14150, 209, 0, 39, '2019-01-18', 'am2', 'bloque', '2018-12-14', ''), +(14151, 209, 0, 39, '2019-01-18', 'pm1', 'bloque', '2018-12-14', ''), +(14152, 209, 0, 39, '2019-01-18', 'pm2', 'bloque', '2018-12-14', ''), +(14153, 209, 0, 39, '2019-01-21', 'am1', 'bloque', '2018-12-14', ''), +(14154, 209, 0, 39, '2019-01-21', 'am2', 'bloque', '2018-12-14', ''), +(14155, 209, 0, 39, '2019-01-21', 'pm1', 'bloque', '2018-12-14', ''), +(14156, 209, 0, 39, '2019-01-21', 'pm2', 'bloque', '2018-12-14', ''), +(14157, 209, 0, 39, '2019-01-22', 'am1', 'bloque', '2018-12-14', ''), +(14158, 209, 0, 39, '2019-01-22', 'am2', 'bloque', '2018-12-14', ''), +(14159, 209, 0, 39, '2019-01-22', 'pm1', 'bloque', '2018-12-14', ''), +(14160, 209, 0, 39, '2019-01-22', 'pm2', 'bloque', '2018-12-14', ''), +(14161, 209, 0, 39, '2019-01-23', 'am1', 'bloque', '2018-12-14', ''), +(14162, 209, 0, 39, '2019-01-23', 'am2', 'bloque', '2018-12-14', ''), +(14163, 209, 0, 39, '2019-01-23', 'pm1', 'bloque', '2018-12-14', ''), +(14164, 209, 0, 39, '2019-01-23', 'pm2', 'bloque', '2018-12-14', ''), +(14165, 209, 0, 39, '2019-01-24', 'am1', 'bloque', '2018-12-14', ''), +(14166, 209, 0, 39, '2019-01-24', 'am2', 'bloque', '2018-12-14', ''), +(14167, 209, 0, 39, '2019-01-24', 'pm1', 'bloque', '2018-12-14', ''), +(14168, 209, 0, 39, '2019-01-24', 'pm2', 'bloque', '2018-12-14', ''), +(14169, 209, 0, 39, '2019-01-25', 'am1', 'bloque', '2018-12-14', ''), +(14170, 209, 0, 39, '2019-01-25', 'am2', 'bloque', '2018-12-14', ''), +(14171, 209, 0, 39, '2019-01-25', 'pm1', 'bloque', '2018-12-14', ''), +(14172, 209, 0, 39, '2019-01-25', 'pm2', 'bloque', '2018-12-14', ''), +(14173, 209, 0, 39, '2019-01-28', 'am1', 'bloque', '2018-12-14', ''), +(14174, 209, 0, 39, '2019-01-28', 'am2', 'bloque', '2018-12-14', ''), +(14175, 209, 0, 39, '2019-01-28', 'pm1', 'bloque', '2018-12-14', ''), +(14176, 209, 0, 39, '2019-01-28', 'pm2', 'bloque', '2018-12-14', ''), +(14177, 209, 0, 39, '2019-01-29', 'am1', 'bloque', '2018-12-14', ''), +(14178, 209, 0, 39, '2019-01-29', 'am2', 'bloque', '2018-12-14', ''), +(14179, 209, 0, 39, '2019-01-29', 'pm1', 'bloque', '2018-12-14', ''), +(14180, 209, 0, 39, '2019-01-29', 'pm2', 'bloque', '2018-12-14', ''), +(14181, 209, 0, 39, '2019-01-30', 'am1', 'bloque', '2018-12-14', ''), +(14182, 209, 0, 39, '2019-01-30', 'am2', 'bloque', '2018-12-14', ''), +(14183, 209, 0, 39, '2019-01-30', 'pm1', 'bloque', '2018-12-14', ''), +(14184, 209, 0, 39, '2019-01-30', 'pm2', 'bloque', '2018-12-14', ''), +(14185, 209, 0, 39, '2019-01-31', 'am1', 'bloque', '2018-12-14', ''), +(14186, 209, 0, 39, '2019-01-31', 'am2', 'bloque', '2018-12-14', ''), +(14187, 209, 0, 39, '2019-01-31', 'pm1', 'bloque', '2018-12-14', ''), +(14188, 209, 0, 39, '2019-01-31', 'pm2', 'bloque', '2018-12-14', ''), +(14189, 209, 0, 39, '2019-02-01', 'am1', 'bloque', '2018-12-14', ''), +(14190, 209, 0, 39, '2019-02-01', 'am2', 'bloque', '2018-12-14', ''), +(14191, 209, 0, 39, '2019-02-01', 'pm1', 'bloque', '2018-12-14', ''), +(14192, 209, 0, 39, '2019-02-01', 'pm2', 'bloque', '2018-12-14', ''), +(14193, 209, 0, 39, '2019-02-04', 'am1', 'bloque', '2018-12-14', ''), +(14194, 209, 0, 39, '2019-02-04', 'am2', 'bloque', '2018-12-14', ''), +(14195, 209, 0, 39, '2019-02-04', 'pm1', 'bloque', '2018-12-14', ''), +(14196, 209, 0, 39, '2019-02-04', 'pm2', 'bloque', '2018-12-14', ''), +(14197, 209, 0, 39, '2019-02-05', 'am1', 'bloque', '2018-12-14', ''), +(14198, 209, 0, 39, '2019-02-05', 'am2', 'bloque', '2018-12-14', ''), +(14199, 209, 0, 39, '2019-02-05', 'pm1', 'bloque', '2018-12-14', ''), +(14200, 209, 0, 39, '2019-02-05', 'pm2', 'bloque', '2018-12-14', ''), +(14201, 209, 0, 39, '2019-02-06', 'am1', 'bloque', '2018-12-14', ''), +(14202, 209, 0, 39, '2019-02-06', 'am2', 'bloque', '2018-12-14', ''), +(14203, 209, 0, 39, '2019-02-06', 'pm1', 'bloque', '2018-12-14', ''), +(14204, 209, 0, 39, '2019-02-06', 'pm2', 'bloque', '2018-12-14', ''), +(14205, 209, 0, 39, '2019-02-07', 'am1', 'bloque', '2018-12-14', ''), +(14206, 209, 0, 39, '2019-02-07', 'am2', 'bloque', '2018-12-14', ''), +(14207, 209, 0, 39, '2019-02-07', 'pm1', 'bloque', '2018-12-14', ''), +(14208, 209, 0, 39, '2019-02-07', 'pm2', 'bloque', '2018-12-14', ''), +(14209, 209, 0, 39, '2019-02-08', 'am1', 'bloque', '2018-12-14', ''), +(14210, 209, 0, 39, '2019-02-08', 'am2', 'bloque', '2018-12-14', ''), +(14211, 209, 0, 39, '2019-02-08', 'pm1', 'bloque', '2018-12-14', ''), +(14212, 209, 0, 39, '2019-02-08', 'pm2', 'bloque', '2018-12-14', ''), +(14214, 210, 0, 406, '2019-01-17', 'am2', 'libre', '2018-12-17', ''), +(14215, 210, 0, 406, '2019-01-17', 'pm1', 'libre', '2018-12-17', ''), +(14216, 210, 0, 406, '2019-01-17', 'pm2', 'libre', '2018-12-17', ''), +(14217, 210, 0, 406, '2019-01-18', 'am1', 'bloque', '2018-12-17', ''), +(14218, 210, 0, 406, '2019-01-18', 'am2', 'bloque', '2018-12-17', ''), +(14219, 210, 0, 406, '2019-01-18', 'pm1', 'bloque', '2018-12-17', ''), +(14220, 210, 0, 406, '2019-01-18', 'pm2', 'bloque', '2018-12-17', ''), +(14221, 210, 0, 406, '2019-01-21', 'am1', 'bloque', '2018-12-17', ''), +(14222, 210, 0, 406, '2019-01-21', 'am2', 'bloque', '2018-12-17', ''), +(14223, 210, 0, 406, '2019-01-21', 'pm1', 'bloque', '2018-12-17', ''), +(14224, 210, 0, 406, '2019-01-21', 'pm2', 'bloque', '2018-12-17', ''), +(14225, 210, 0, 406, '2019-01-22', 'am1', 'bloque', '2018-12-17', ''), +(14226, 210, 0, 406, '2019-01-22', 'am2', 'bloque', '2018-12-17', ''), +(14227, 210, 0, 406, '2019-01-22', 'pm1', 'bloque', '2018-12-17', ''), +(14228, 210, 0, 406, '2019-01-22', 'pm2', 'bloque', '2018-12-17', ''), +(14229, 210, 0, 406, '2019-01-23', 'am1', 'bloque', '2018-12-17', ''), +(14230, 210, 0, 406, '2019-01-23', 'am2', 'bloque', '2018-12-17', ''), +(14231, 210, 0, 406, '2019-01-23', 'pm1', 'bloque', '2018-12-17', ''), +(14232, 210, 0, 406, '2019-01-23', 'pm2', 'bloque', '2018-12-17', ''), +(14233, 210, 0, 406, '2019-01-24', 'am1', 'bloque', '2018-12-17', ''), +(14234, 210, 0, 406, '2019-01-24', 'am2', 'bloque', '2018-12-17', ''), +(14235, 210, 0, 406, '2019-01-24', 'pm1', 'bloque', '2018-12-17', ''), +(14236, 210, 0, 406, '2019-01-24', 'pm2', 'bloque', '2018-12-17', ''), +(14237, 210, 0, 406, '2019-01-25', 'am1', 'bloque', '2018-12-17', ''), +(14238, 210, 0, 406, '2019-01-25', 'am2', 'bloque', '2018-12-17', ''), +(14239, 210, 0, 406, '2019-01-25', 'pm1', 'bloque', '2018-12-17', ''), +(14240, 210, 0, 406, '2019-01-25', 'pm2', 'bloque', '2018-12-17', ''), +(14241, 210, 0, 406, '2019-01-28', 'am1', 'bloque', '2018-12-17', ''), +(14242, 210, 0, 406, '2019-01-28', 'am2', 'bloque', '2018-12-17', ''), +(14243, 210, 0, 406, '2019-01-28', 'pm1', 'bloque', '2018-12-17', ''), +(14244, 210, 0, 406, '2019-01-28', 'pm2', 'bloque', '2018-12-17', ''), +(14245, 210, 0, 406, '2019-01-29', 'am1', 'bloque', '2018-12-17', ''), +(14246, 210, 0, 406, '2019-01-29', 'am2', 'bloque', '2018-12-17', ''), +(14247, 210, 0, 406, '2019-01-29', 'pm1', 'bloque', '2018-12-17', ''), +(14248, 210, 0, 406, '2019-01-29', 'pm2', 'bloque', '2018-12-17', ''), +(14249, 210, 0, 406, '2019-01-30', 'am1', 'bloque', '2018-12-17', ''), +(14250, 210, 0, 406, '2019-01-30', 'am2', 'bloque', '2018-12-17', ''), +(14251, 210, 0, 406, '2019-01-30', 'pm1', 'bloque', '2018-12-17', ''), +(14252, 210, 0, 406, '2019-01-30', 'pm2', 'bloque', '2018-12-17', ''), +(14253, 210, 0, 406, '2019-01-31', 'am1', 'bloque', '2018-12-17', ''), +(14254, 210, 0, 406, '2019-01-31', 'am2', 'bloque', '2018-12-17', ''), +(14255, 210, 0, 406, '2019-01-31', 'pm1', 'bloque', '2018-12-17', ''), +(14256, 210, 0, 406, '2019-01-31', 'pm2', 'bloque', '2018-12-17', ''), +(14257, 210, 0, 406, '2019-02-01', 'am1', 'bloque', '2018-12-17', ''), +(14258, 210, 0, 406, '2019-02-01', 'am2', 'bloque', '2018-12-17', ''), +(14259, 210, 0, 406, '2019-02-01', 'pm1', 'bloque', '2018-12-17', ''), +(14260, 210, 0, 406, '2019-02-01', 'pm2', 'bloque', '2018-12-17', ''), +(14261, 210, 0, 406, '2019-02-04', 'am1', 'bloque', '2018-12-17', ''), +(14262, 210, 0, 406, '2019-02-04', 'am2', 'bloque', '2018-12-17', ''), +(14263, 210, 0, 406, '2019-02-04', 'pm1', 'bloque', '2018-12-17', ''), +(14264, 210, 0, 406, '2019-02-04', 'pm2', 'bloque', '2018-12-17', ''), +(14265, 210, 0, 406, '2019-02-05', 'am1', 'bloque', '2018-12-17', ''), +(14266, 210, 0, 406, '2019-02-05', 'am2', 'bloque', '2018-12-17', ''), +(14267, 210, 0, 406, '2019-02-05', 'pm1', 'bloque', '2018-12-17', ''), +(14268, 210, 0, 406, '2019-02-05', 'pm2', 'bloque', '2018-12-17', ''), +(14269, 210, 0, 406, '2019-02-06', 'am1', 'bloque', '2018-12-17', ''), +(14270, 210, 0, 406, '2019-02-06', 'am2', 'bloque', '2018-12-17', ''), +(14271, 210, 0, 406, '2019-02-06', 'pm1', 'bloque', '2018-12-17', ''), +(14272, 210, 0, 406, '2019-02-06', 'pm2', 'bloque', '2018-12-17', ''), +(14273, 210, 0, 406, '2019-02-07', 'am1', 'bloque', '2018-12-17', ''), +(14274, 210, 0, 406, '2019-02-07', 'am2', 'bloque', '2018-12-17', ''), +(14275, 210, 0, 406, '2019-02-07', 'pm1', 'bloque', '2018-12-17', ''), +(14276, 210, 0, 406, '2019-02-07', 'pm2', 'bloque', '2018-12-17', ''), +(14277, 210, 0, 406, '2019-02-08', 'am1', 'bloque', '2018-12-17', ''), +(14278, 210, 0, 406, '2019-02-08', 'am2', 'bloque', '2018-12-17', ''), +(14279, 210, 0, 406, '2019-02-08', 'pm1', 'bloque', '2018-12-17', ''), +(14280, 210, 0, 406, '2019-02-08', 'pm2', 'bloque', '2018-12-17', ''), +(14281, 211, 147, 284, '2019-01-17', 'am1', 'reserve', '2018-12-19', 'ref'), +(14282, 211, 0, 284, '2019-01-17', 'am2', 'libre', '2018-12-17', ''), +(14283, 211, 149, 284, '2019-01-17', 'pm1', 'reserve', '2018-12-19', 'ref'), +(14284, 211, 0, 284, '2019-01-17', 'pm2', 'libre', '2018-12-17', ''), +(14285, 211, 148, 284, '2019-01-18', 'am1', 'reserve', '2018-12-19', 'ref'), +(14286, 211, 0, 284, '2019-01-18', 'am2', 'bloque', '2018-12-17', ''), +(14287, 211, 0, 284, '2019-01-18', 'pm1', 'bloque', '2018-12-17', ''), +(14288, 211, 0, 284, '2019-01-18', 'pm2', 'bloque', '2018-12-17', ''), +(14289, 211, 0, 284, '2019-01-21', 'am1', 'bloque', '2018-12-17', ''), +(14290, 211, 0, 284, '2019-01-21', 'am2', 'bloque', '2018-12-17', ''), +(14291, 211, 0, 284, '2019-01-21', 'pm1', 'bloque', '2018-12-17', ''), +(14292, 211, 0, 284, '2019-01-21', 'pm2', 'bloque', '2018-12-17', ''), +(14293, 211, 0, 284, '2019-01-22', 'am1', 'bloque', '2018-12-17', ''), +(14294, 211, 0, 284, '2019-01-22', 'am2', 'bloque', '2018-12-17', ''), +(14295, 211, 0, 284, '2019-01-22', 'pm1', 'bloque', '2018-12-17', ''), +(14296, 211, 0, 284, '2019-01-22', 'pm2', 'bloque', '2018-12-17', ''), +(14297, 211, 0, 284, '2019-01-23', 'am1', 'bloque', '2018-12-17', ''), +(14298, 211, 0, 284, '2019-01-23', 'am2', 'bloque', '2018-12-17', ''), +(14299, 211, 0, 284, '2019-01-23', 'pm1', 'bloque', '2018-12-17', ''), +(14300, 211, 0, 284, '2019-01-23', 'pm2', 'bloque', '2018-12-17', ''), +(14301, 211, 0, 284, '2019-01-24', 'am1', 'bloque', '2018-12-17', ''), +(14302, 211, 0, 284, '2019-01-24', 'am2', 'bloque', '2018-12-17', ''), +(14303, 211, 0, 284, '2019-01-24', 'pm1', 'bloque', '2018-12-17', ''), +(14304, 211, 0, 284, '2019-01-24', 'pm2', 'bloque', '2018-12-17', ''), +(14305, 211, 0, 284, '2019-01-25', 'am1', 'bloque', '2018-12-17', ''), +(14306, 211, 0, 284, '2019-01-25', 'am2', 'bloque', '2018-12-17', ''), +(14307, 211, 0, 284, '2019-01-25', 'pm1', 'bloque', '2018-12-17', ''), +(14308, 211, 0, 284, '2019-01-25', 'pm2', 'bloque', '2018-12-17', ''), +(14309, 211, 0, 284, '2019-01-28', 'am1', 'bloque', '2018-12-17', ''), +(14310, 211, 0, 284, '2019-01-28', 'am2', 'bloque', '2018-12-17', ''), +(14311, 211, 0, 284, '2019-01-28', 'pm1', 'bloque', '2018-12-17', ''), +(14312, 211, 0, 284, '2019-01-28', 'pm2', 'bloque', '2018-12-17', ''), +(14313, 211, 0, 284, '2019-01-29', 'am1', 'bloque', '2018-12-17', ''), +(14314, 211, 0, 284, '2019-01-29', 'am2', 'bloque', '2018-12-17', ''), +(14315, 211, 0, 284, '2019-01-29', 'pm1', 'bloque', '2018-12-17', ''), +(14316, 211, 0, 284, '2019-01-29', 'pm2', 'bloque', '2018-12-17', ''), +(14317, 211, 0, 284, '2019-01-30', 'am1', 'bloque', '2018-12-17', ''), +(14318, 211, 0, 284, '2019-01-30', 'am2', 'bloque', '2018-12-17', ''), +(14319, 211, 0, 284, '2019-01-30', 'pm1', 'bloque', '2018-12-17', ''), +(14320, 211, 0, 284, '2019-01-30', 'pm2', 'bloque', '2018-12-17', ''), +(14321, 211, 0, 284, '2019-01-31', 'am1', 'bloque', '2018-12-17', ''), +(14322, 211, 0, 284, '2019-01-31', 'am2', 'bloque', '2018-12-17', ''), +(14323, 211, 0, 284, '2019-01-31', 'pm1', 'bloque', '2018-12-17', ''), +(14324, 211, 0, 284, '2019-01-31', 'pm2', 'bloque', '2018-12-17', ''), +(14325, 211, 0, 284, '2019-02-01', 'am1', 'bloque', '2018-12-17', ''), +(14326, 211, 0, 284, '2019-02-01', 'am2', 'bloque', '2018-12-17', ''), +(14327, 211, 0, 284, '2019-02-01', 'pm1', 'bloque', '2018-12-17', ''), +(14328, 211, 0, 284, '2019-02-01', 'pm2', 'bloque', '2018-12-17', ''), +(14329, 211, 0, 284, '2019-02-04', 'am1', 'bloque', '2018-12-17', ''), +(14330, 211, 0, 284, '2019-02-04', 'am2', 'bloque', '2018-12-17', ''), +(14331, 211, 0, 284, '2019-02-04', 'pm1', 'bloque', '2018-12-17', ''), +(14332, 211, 0, 284, '2019-02-04', 'pm2', 'bloque', '2018-12-17', ''), +(14333, 211, 0, 284, '2019-02-05', 'am1', 'bloque', '2018-12-17', ''), +(14334, 211, 0, 284, '2019-02-05', 'am2', 'bloque', '2018-12-17', ''), +(14335, 211, 0, 284, '2019-02-05', 'pm1', 'bloque', '2018-12-17', ''), +(14336, 211, 0, 284, '2019-02-05', 'pm2', 'bloque', '2018-12-17', ''), +(14337, 211, 0, 284, '2019-02-06', 'am1', 'bloque', '2018-12-17', ''), +(14338, 211, 0, 284, '2019-02-06', 'am2', 'bloque', '2018-12-17', ''), +(14339, 211, 0, 284, '2019-02-06', 'pm1', 'bloque', '2018-12-17', ''), +(14340, 211, 0, 284, '2019-02-06', 'pm2', 'bloque', '2018-12-17', ''), +(14341, 211, 0, 284, '2019-02-07', 'am1', 'bloque', '2018-12-17', ''), +(14342, 211, 0, 284, '2019-02-07', 'am2', 'bloque', '2018-12-17', ''), +(14343, 211, 0, 284, '2019-02-07', 'pm1', 'bloque', '2018-12-17', ''), +(14344, 211, 0, 284, '2019-02-07', 'pm2', 'bloque', '2018-12-17', ''), +(14345, 211, 0, 284, '2019-02-08', 'am1', 'bloque', '2018-12-17', ''), +(14346, 211, 0, 284, '2019-02-08', 'am2', 'bloque', '2018-12-17', ''), +(14347, 211, 0, 284, '2019-02-08', 'pm1', 'bloque', '2018-12-17', ''), +(14348, 211, 0, 284, '2019-02-08', 'pm2', 'bloque', '2018-12-17', ''), +(14349, 212, 0, 284, '2019-01-17', 'am1', 'libre', '2018-12-17', ''), +(14350, 212, 0, 284, '2019-01-17', 'am2', 'libre', '2018-12-17', ''), +(14351, 212, 0, 284, '2019-01-17', 'pm1', 'libre', '2018-12-17', ''), +(14352, 212, 0, 284, '2019-01-17', 'pm2', 'libre', '2018-12-17', ''), +(14353, 212, 0, 284, '2019-01-18', 'am1', 'bloque', '2018-12-17', ''), +(14354, 212, 0, 284, '2019-01-18', 'am2', 'bloque', '2018-12-17', ''), +(14355, 212, 0, 284, '2019-01-18', 'pm1', 'bloque', '2018-12-17', ''), +(14356, 212, 0, 284, '2019-01-18', 'pm2', 'bloque', '2018-12-17', ''), +(14357, 212, 0, 284, '2019-01-21', 'am1', 'bloque', '2018-12-17', ''), +(14358, 212, 0, 284, '2019-01-21', 'am2', 'bloque', '2018-12-17', ''), +(14359, 212, 0, 284, '2019-01-21', 'pm1', 'bloque', '2018-12-17', ''), +(14360, 212, 0, 284, '2019-01-21', 'pm2', 'bloque', '2018-12-17', ''), +(14361, 212, 0, 284, '2019-01-22', 'am1', 'bloque', '2018-12-17', ''), +(14362, 212, 0, 284, '2019-01-22', 'am2', 'bloque', '2018-12-17', ''), +(14363, 212, 0, 284, '2019-01-22', 'pm1', 'bloque', '2018-12-17', ''), +(14364, 212, 0, 284, '2019-01-22', 'pm2', 'bloque', '2018-12-17', ''), +(14365, 212, 0, 284, '2019-01-23', 'am1', 'bloque', '2018-12-17', ''), +(14366, 212, 0, 284, '2019-01-23', 'am2', 'bloque', '2018-12-17', ''), +(14367, 212, 0, 284, '2019-01-23', 'pm1', 'bloque', '2018-12-17', ''), +(14368, 212, 0, 284, '2019-01-23', 'pm2', 'bloque', '2018-12-17', ''), +(14369, 212, 0, 284, '2019-01-24', 'am1', 'bloque', '2018-12-17', ''), +(14370, 212, 0, 284, '2019-01-24', 'am2', 'bloque', '2018-12-17', ''), +(14371, 212, 0, 284, '2019-01-24', 'pm1', 'bloque', '2018-12-17', ''), +(14372, 212, 0, 284, '2019-01-24', 'pm2', 'bloque', '2018-12-17', ''), +(14373, 212, 0, 284, '2019-01-25', 'am1', 'bloque', '2018-12-17', ''), +(14374, 212, 0, 284, '2019-01-25', 'am2', 'bloque', '2018-12-17', ''), +(14375, 212, 0, 284, '2019-01-25', 'pm1', 'bloque', '2018-12-17', ''), +(14376, 212, 0, 284, '2019-01-25', 'pm2', 'bloque', '2018-12-17', ''), +(14377, 212, 0, 284, '2019-01-28', 'am1', 'bloque', '2018-12-17', ''), +(14378, 212, 0, 284, '2019-01-28', 'am2', 'bloque', '2018-12-17', ''), +(14379, 212, 0, 284, '2019-01-28', 'pm1', 'bloque', '2018-12-17', ''), +(14380, 212, 0, 284, '2019-01-28', 'pm2', 'bloque', '2018-12-17', ''), +(14381, 212, 0, 284, '2019-01-29', 'am1', 'bloque', '2018-12-17', ''), +(14382, 212, 0, 284, '2019-01-29', 'am2', 'bloque', '2018-12-17', ''), +(14383, 212, 0, 284, '2019-01-29', 'pm1', 'bloque', '2018-12-17', ''), +(14384, 212, 0, 284, '2019-01-29', 'pm2', 'bloque', '2018-12-17', ''), +(14385, 212, 0, 284, '2019-01-30', 'am1', 'bloque', '2018-12-17', ''), +(14386, 212, 0, 284, '2019-01-30', 'am2', 'bloque', '2018-12-17', ''), +(14387, 212, 0, 284, '2019-01-30', 'pm1', 'bloque', '2018-12-17', ''), +(14388, 212, 0, 284, '2019-01-30', 'pm2', 'bloque', '2018-12-17', ''), +(14389, 212, 0, 284, '2019-01-31', 'am1', 'bloque', '2018-12-17', ''), +(14390, 212, 0, 284, '2019-01-31', 'am2', 'bloque', '2018-12-17', ''), +(14391, 212, 0, 284, '2019-01-31', 'pm1', 'bloque', '2018-12-17', ''), +(14392, 212, 0, 284, '2019-01-31', 'pm2', 'bloque', '2018-12-17', ''), +(14393, 212, 0, 284, '2019-02-01', 'am1', 'bloque', '2018-12-17', ''), +(14394, 212, 0, 284, '2019-02-01', 'am2', 'bloque', '2018-12-17', ''), +(14395, 212, 0, 284, '2019-02-01', 'pm1', 'bloque', '2018-12-17', ''), +(14396, 212, 0, 284, '2019-02-01', 'pm2', 'bloque', '2018-12-17', ''), +(14397, 212, 0, 284, '2019-02-04', 'am1', 'bloque', '2018-12-17', ''), +(14398, 212, 0, 284, '2019-02-04', 'am2', 'bloque', '2018-12-17', ''), +(14399, 212, 0, 284, '2019-02-04', 'pm1', 'bloque', '2018-12-17', ''), +(14400, 212, 0, 284, '2019-02-04', 'pm2', 'bloque', '2018-12-17', ''), +(14401, 212, 0, 284, '2019-02-05', 'am1', 'bloque', '2018-12-17', ''), +(14402, 212, 0, 284, '2019-02-05', 'am2', 'bloque', '2018-12-17', ''), +(14403, 212, 0, 284, '2019-02-05', 'pm1', 'bloque', '2018-12-17', ''), +(14404, 212, 0, 284, '2019-02-05', 'pm2', 'bloque', '2018-12-17', ''), +(14405, 212, 0, 284, '2019-02-06', 'am1', 'bloque', '2018-12-17', ''), +(14406, 212, 0, 284, '2019-02-06', 'am2', 'bloque', '2018-12-17', ''), +(14407, 212, 0, 284, '2019-02-06', 'pm1', 'bloque', '2018-12-17', ''), +(14408, 212, 0, 284, '2019-02-06', 'pm2', 'bloque', '2018-12-17', ''), +(14409, 212, 0, 284, '2019-02-07', 'am1', 'bloque', '2018-12-17', ''), +(14410, 212, 0, 284, '2019-02-07', 'am2', 'bloque', '2018-12-17', ''), +(14411, 212, 0, 284, '2019-02-07', 'pm1', 'bloque', '2018-12-17', ''), +(14412, 212, 0, 284, '2019-02-07', 'pm2', 'bloque', '2018-12-17', ''), +(14413, 212, 0, 284, '2019-02-08', 'am1', 'bloque', '2018-12-17', ''), +(14414, 212, 0, 284, '2019-02-08', 'am2', 'bloque', '2018-12-17', ''), +(14415, 212, 0, 284, '2019-02-08', 'pm1', 'bloque', '2018-12-17', ''), +(14416, 212, 0, 284, '2019-02-08', 'pm2', 'bloque', '2018-12-17', ''), +(14417, 213, 0, 284, '2019-01-17', 'am1', 'libre', '2018-12-17', ''), +(14418, 213, 0, 284, '2019-01-17', 'am2', 'libre', '2018-12-17', ''), +(14419, 213, 0, 284, '2019-01-17', 'pm1', 'libre', '2018-12-17', ''), +(14420, 213, 0, 284, '2019-01-17', 'pm2', 'libre', '2018-12-17', ''), +(14421, 213, 0, 284, '2019-01-18', 'am1', 'bloque', '2018-12-17', ''), +(14422, 213, 0, 284, '2019-01-18', 'am2', 'bloque', '2018-12-17', ''), +(14423, 213, 0, 284, '2019-01-18', 'pm1', 'bloque', '2018-12-17', ''), +(14424, 213, 0, 284, '2019-01-18', 'pm2', 'bloque', '2018-12-17', ''), +(14425, 213, 0, 284, '2019-01-21', 'am1', 'bloque', '2018-12-17', ''), +(14426, 213, 0, 284, '2019-01-21', 'am2', 'bloque', '2018-12-17', ''), +(14427, 213, 0, 284, '2019-01-21', 'pm1', 'bloque', '2018-12-17', ''), +(14428, 213, 0, 284, '2019-01-21', 'pm2', 'bloque', '2018-12-17', ''), +(14429, 213, 0, 284, '2019-01-22', 'am1', 'bloque', '2018-12-17', ''), +(14430, 213, 0, 284, '2019-01-22', 'am2', 'bloque', '2018-12-17', ''), +(14431, 213, 0, 284, '2019-01-22', 'pm1', 'bloque', '2018-12-17', ''), +(14432, 213, 0, 284, '2019-01-22', 'pm2', 'bloque', '2018-12-17', ''), +(14433, 213, 0, 284, '2019-01-23', 'am1', 'bloque', '2018-12-17', ''), +(14434, 213, 0, 284, '2019-01-23', 'am2', 'bloque', '2018-12-17', ''), +(14435, 213, 0, 284, '2019-01-23', 'pm1', 'bloque', '2018-12-17', ''), +(14436, 213, 0, 284, '2019-01-23', 'pm2', 'bloque', '2018-12-17', ''), +(14437, 213, 0, 284, '2019-01-24', 'am1', 'bloque', '2018-12-17', ''), +(14438, 213, 0, 284, '2019-01-24', 'am2', 'bloque', '2018-12-17', ''), +(14439, 213, 0, 284, '2019-01-24', 'pm1', 'bloque', '2018-12-17', ''), +(14440, 213, 0, 284, '2019-01-24', 'pm2', 'bloque', '2018-12-17', ''), +(14441, 213, 0, 284, '2019-01-25', 'am1', 'bloque', '2018-12-17', ''), +(14442, 213, 0, 284, '2019-01-25', 'am2', 'bloque', '2018-12-17', ''), +(14443, 213, 0, 284, '2019-01-25', 'pm1', 'bloque', '2018-12-17', ''), +(14444, 213, 0, 284, '2019-01-25', 'pm2', 'bloque', '2018-12-17', ''), +(14445, 213, 0, 284, '2019-01-28', 'am1', 'bloque', '2018-12-17', ''), +(14446, 213, 0, 284, '2019-01-28', 'am2', 'bloque', '2018-12-17', ''), +(14447, 213, 0, 284, '2019-01-28', 'pm1', 'bloque', '2018-12-17', ''), +(14448, 213, 0, 284, '2019-01-28', 'pm2', 'bloque', '2018-12-17', ''), +(14449, 213, 0, 284, '2019-01-29', 'am1', 'bloque', '2018-12-17', ''), +(14450, 213, 0, 284, '2019-01-29', 'am2', 'bloque', '2018-12-17', ''), +(14451, 213, 0, 284, '2019-01-29', 'pm1', 'bloque', '2018-12-17', ''), +(14452, 213, 0, 284, '2019-01-29', 'pm2', 'bloque', '2018-12-17', ''), +(14453, 213, 0, 284, '2019-01-30', 'am1', 'bloque', '2018-12-17', ''), +(14454, 213, 0, 284, '2019-01-30', 'am2', 'bloque', '2018-12-17', ''), +(14455, 213, 0, 284, '2019-01-30', 'pm1', 'bloque', '2018-12-17', ''), +(14456, 213, 0, 284, '2019-01-30', 'pm2', 'bloque', '2018-12-17', ''), +(14457, 213, 0, 284, '2019-01-31', 'am1', 'bloque', '2018-12-17', ''), +(14458, 213, 0, 284, '2019-01-31', 'am2', 'bloque', '2018-12-17', ''), +(14459, 213, 0, 284, '2019-01-31', 'pm1', 'bloque', '2018-12-17', ''), +(14460, 213, 0, 284, '2019-01-31', 'pm2', 'bloque', '2018-12-17', ''), +(14461, 213, 0, 284, '2019-02-01', 'am1', 'bloque', '2018-12-17', ''), +(14462, 213, 0, 284, '2019-02-01', 'am2', 'bloque', '2018-12-17', ''), +(14463, 213, 0, 284, '2019-02-01', 'pm1', 'bloque', '2018-12-17', ''), +(14464, 213, 0, 284, '2019-02-01', 'pm2', 'bloque', '2018-12-17', ''), +(14465, 213, 0, 284, '2019-02-04', 'am1', 'bloque', '2018-12-17', ''), +(14466, 213, 0, 284, '2019-02-04', 'am2', 'bloque', '2018-12-17', ''), +(14467, 213, 0, 284, '2019-02-04', 'pm1', 'bloque', '2018-12-17', ''), +(14468, 213, 0, 284, '2019-02-04', 'pm2', 'bloque', '2018-12-17', ''), +(14469, 213, 0, 284, '2019-02-05', 'am1', 'bloque', '2018-12-17', ''), +(14470, 213, 0, 284, '2019-02-05', 'am2', 'bloque', '2018-12-17', ''), +(14471, 213, 0, 284, '2019-02-05', 'pm1', 'bloque', '2018-12-17', ''), +(14472, 213, 0, 284, '2019-02-05', 'pm2', 'bloque', '2018-12-17', ''), +(14473, 213, 0, 284, '2019-02-06', 'am1', 'bloque', '2018-12-17', ''), +(14474, 213, 0, 284, '2019-02-06', 'am2', 'bloque', '2018-12-17', ''), +(14475, 213, 0, 284, '2019-02-06', 'pm1', 'bloque', '2018-12-17', ''), +(14476, 213, 0, 284, '2019-02-06', 'pm2', 'bloque', '2018-12-17', ''), +(14477, 213, 0, 284, '2019-02-07', 'am1', 'bloque', '2018-12-17', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(14478, 213, 0, 284, '2019-02-07', 'am2', 'bloque', '2018-12-17', ''), +(14479, 213, 0, 284, '2019-02-07', 'pm1', 'bloque', '2018-12-17', ''), +(14480, 213, 0, 284, '2019-02-07', 'pm2', 'bloque', '2018-12-17', ''), +(14481, 213, 0, 284, '2019-02-08', 'am1', 'bloque', '2018-12-17', ''), +(14482, 213, 0, 284, '2019-02-08', 'am2', 'bloque', '2018-12-17', ''), +(14483, 213, 0, 284, '2019-02-08', 'pm1', 'bloque', '2018-12-17', ''), +(14484, 213, 0, 284, '2019-02-08', 'pm2', 'bloque', '2018-12-17', ''), +(14485, 214, 0, 412, '2019-01-17', 'am1', 'libre', '2018-12-17', ''), +(14486, 214, 278, 412, '2019-01-17', 'am2', 'reserve', '2019-01-14', 'ref'), +(14487, 214, 0, 412, '2019-01-17', 'pm1', 'libre', '2019-01-16', 'ref'), +(14488, 214, 0, 412, '2019-01-17', 'pm2', 'libre', '2018-12-17', ''), +(14489, 214, 0, 412, '2019-01-18', 'am1', 'bloque', '2018-12-17', ''), +(14490, 214, 0, 412, '2019-01-18', 'am2', 'bloque', '2019-01-14', 'ref'), +(14491, 214, 0, 412, '2019-01-18', 'pm1', 'bloque', '2018-12-17', ''), +(14492, 214, 274, 412, '2019-01-18', 'pm2', 'reserve', '2019-01-14', 'ref'), +(14493, 214, 0, 412, '2019-01-21', 'am1', 'bloque', '2018-12-17', ''), +(14494, 214, 0, 412, '2019-01-21', 'am2', 'bloque', '2018-12-17', ''), +(14495, 214, 0, 412, '2019-01-21', 'pm1', 'bloque', '2018-12-17', ''), +(14496, 214, 0, 412, '2019-01-21', 'pm2', 'bloque', '2018-12-17', ''), +(14497, 214, 0, 412, '2019-01-22', 'am1', 'bloque', '2018-12-17', ''), +(14498, 214, 0, 412, '2019-01-22', 'am2', 'bloque', '2018-12-17', ''), +(14499, 214, 90, 412, '2019-01-22', 'pm1', 'reserve', '2018-12-17', 'ref'), +(14500, 214, 91, 412, '2019-01-22', 'pm2', 'reserve', '2018-12-17', 'ref'), +(14501, 214, 0, 412, '2019-01-23', 'am1', 'bloque', '2018-12-17', ''), +(14502, 214, 0, 412, '2019-01-23', 'am2', 'bloque', '2018-12-17', ''), +(14503, 214, 0, 412, '2019-01-23', 'pm1', 'bloque', '2018-12-17', ''), +(14504, 214, 0, 412, '2019-01-23', 'pm2', 'bloque', '2018-12-17', ''), +(14505, 214, 0, 412, '2019-01-24', 'am1', 'bloque', '2018-12-17', ''), +(14506, 214, 0, 412, '2019-01-24', 'am2', 'bloque', '2018-12-17', ''), +(14507, 214, 0, 412, '2019-01-24', 'pm1', 'bloque', '2018-12-17', ''), +(14508, 214, 0, 412, '2019-01-24', 'pm2', 'bloque', '2018-12-17', ''), +(14509, 214, 0, 412, '2019-01-25', 'am1', 'bloque', '2018-12-17', ''), +(14510, 214, 0, 412, '2019-01-25', 'am2', 'bloque', '2018-12-17', ''), +(14511, 214, 0, 412, '2019-01-25', 'pm1', 'bloque', '2018-12-17', ''), +(14512, 214, 0, 412, '2019-01-25', 'pm2', 'bloque', '2018-12-17', ''), +(14513, 214, 0, 412, '2019-01-28', 'am1', 'bloque', '2018-12-17', ''), +(14514, 214, 0, 412, '2019-01-28', 'am2', 'bloque', '2018-12-17', ''), +(14515, 214, 0, 412, '2019-01-28', 'pm1', 'bloque', '2018-12-17', ''), +(14516, 214, 0, 412, '2019-01-28', 'pm2', 'bloque', '2018-12-17', ''), +(14517, 214, 0, 412, '2019-01-29', 'am1', 'bloque', '2018-12-17', ''), +(14518, 214, 0, 412, '2019-01-29', 'am2', 'bloque', '2018-12-17', ''), +(14519, 214, 0, 412, '2019-01-29', 'pm1', 'bloque', '2018-12-17', ''), +(14520, 214, 0, 412, '2019-01-29', 'pm2', 'bloque', '2018-12-17', ''), +(14521, 214, 0, 412, '2019-01-30', 'am1', 'bloque', '2018-12-17', ''), +(14522, 214, 0, 412, '2019-01-30', 'am2', 'bloque', '2018-12-17', ''), +(14523, 214, 0, 412, '2019-01-30', 'pm1', 'bloque', '2018-12-17', ''), +(14524, 214, 0, 412, '2019-01-30', 'pm2', 'bloque', '2018-12-17', ''), +(14525, 214, 0, 412, '2019-01-31', 'am1', 'bloque', '2018-12-17', ''), +(14526, 214, 0, 412, '2019-01-31', 'am2', 'bloque', '2018-12-17', ''), +(14527, 214, 0, 412, '2019-01-31', 'pm1', 'bloque', '2018-12-17', ''), +(14528, 214, 0, 412, '2019-01-31', 'pm2', 'bloque', '2018-12-17', ''), +(14529, 214, 0, 412, '2019-02-01', 'am1', 'bloque', '2018-12-17', ''), +(14530, 214, 335, 412, '2019-02-01', 'am2', 'reserve', '2019-02-26', 'ref'), +(14531, 214, 0, 412, '2019-02-01', 'pm1', 'bloque', '2018-12-17', ''), +(14532, 214, 0, 412, '2019-02-01', 'pm2', 'bloque', '2018-12-17', ''), +(14533, 214, 0, 412, '2019-02-04', 'am1', 'bloque', '2018-12-17', ''), +(14534, 214, 0, 412, '2019-02-04', 'am2', 'bloque', '2018-12-17', ''), +(14535, 214, 0, 412, '2019-02-04', 'pm1', 'bloque', '2018-12-17', ''), +(14536, 214, 0, 412, '2019-02-04', 'pm2', 'bloque', '2018-12-17', ''), +(14537, 214, 0, 412, '2019-02-05', 'am1', 'bloque', '2018-12-17', ''), +(14538, 214, 0, 412, '2019-02-05', 'am2', 'bloque', '2018-12-17', ''), +(14539, 214, 0, 412, '2019-02-05', 'pm1', 'bloque', '2018-12-17', ''), +(14540, 214, 0, 412, '2019-02-05', 'pm2', 'bloque', '2018-12-17', ''), +(14541, 214, 0, 412, '2019-02-06', 'am1', 'bloque', '2018-12-17', ''), +(14542, 214, 0, 412, '2019-02-06', 'am2', 'bloque', '2018-12-17', ''), +(14543, 214, 0, 412, '2019-02-06', 'pm1', 'bloque', '2018-12-17', ''), +(14544, 214, 0, 412, '2019-02-06', 'pm2', 'bloque', '2018-12-17', ''), +(14545, 214, 0, 412, '2019-02-07', 'am1', 'bloque', '2018-12-17', ''), +(14546, 214, 0, 412, '2019-02-07', 'am2', 'bloque', '2018-12-17', ''), +(14547, 214, 0, 412, '2019-02-07', 'pm1', 'bloque', '2018-12-17', ''), +(14548, 214, 0, 412, '2019-02-07', 'pm2', 'bloque', '2018-12-17', ''), +(14549, 214, 0, 412, '2019-02-08', 'am1', 'bloque', '2018-12-17', ''), +(14550, 214, 0, 412, '2019-02-08', 'am2', 'bloque', '2018-12-17', ''), +(14551, 214, 0, 412, '2019-02-08', 'pm1', 'bloque', '2018-12-17', ''), +(14552, 214, 0, 412, '2019-02-08', 'pm2', 'bloque', '2018-12-17', ''), +(14553, 215, 92, 416, '2019-01-17', 'am1', 'reserve', '2018-12-17', 'ref'), +(14554, 215, 105, 416, '2019-01-17', 'am2', 'reserve', '2018-12-18', 'ref'), +(14555, 215, 93, 416, '2019-01-17', 'pm1', 'reserve', '2018-12-17', 'ref'), +(14556, 215, 269, 416, '2019-01-17', 'pm2', 'reserve', '2019-01-14', 'ref'), +(14557, 215, 0, 416, '2019-01-18', 'am1', 'bloque', '2018-12-17', ''), +(14558, 215, 0, 416, '2019-01-18', 'am2', 'bloque', '2018-12-17', ''), +(14559, 215, 0, 416, '2019-01-18', 'pm1', 'bloque', '2018-12-17', ''), +(14560, 215, 0, 416, '2019-01-18', 'pm2', 'bloque', '2018-12-17', ''), +(14561, 215, 0, 416, '2019-01-21', 'am1', 'bloque', '2018-12-17', ''), +(14562, 215, 0, 416, '2019-01-21', 'am2', 'bloque', '2018-12-17', ''), +(14563, 215, 0, 416, '2019-01-21', 'pm1', 'bloque', '2018-12-17', ''), +(14564, 215, 0, 416, '2019-01-21', 'pm2', 'bloque', '2018-12-17', ''), +(14565, 215, 0, 416, '2019-01-22', 'am1', 'bloque', '2018-12-17', ''), +(14566, 215, 0, 416, '2019-01-22', 'am2', 'bloque', '2018-12-17', ''), +(14567, 215, 0, 416, '2019-01-22', 'pm1', 'bloque', '2018-12-17', ''), +(14568, 215, 0, 416, '2019-01-22', 'pm2', 'bloque', '2018-12-17', ''), +(14569, 215, 0, 416, '2019-01-23', 'am1', 'bloque', '2018-12-17', ''), +(14570, 215, 0, 416, '2019-01-23', 'am2', 'bloque', '2018-12-17', ''), +(14571, 215, 0, 416, '2019-01-23', 'pm1', 'bloque', '2018-12-17', ''), +(14572, 215, 0, 416, '2019-01-23', 'pm2', 'bloque', '2018-12-17', ''), +(14573, 215, 0, 416, '2019-01-24', 'am1', 'bloque', '2018-12-17', ''), +(14574, 215, 0, 416, '2019-01-24', 'am2', 'bloque', '2018-12-17', ''), +(14575, 215, 0, 416, '2019-01-24', 'pm1', 'bloque', '2018-12-17', ''), +(14576, 215, 0, 416, '2019-01-24', 'pm2', 'bloque', '2018-12-17', ''), +(14577, 215, 0, 416, '2019-01-25', 'am1', 'bloque', '2018-12-17', ''), +(14578, 215, 0, 416, '2019-01-25', 'am2', 'bloque', '2018-12-17', ''), +(14579, 215, 0, 416, '2019-01-25', 'pm1', 'bloque', '2018-12-17', ''), +(14580, 215, 0, 416, '2019-01-25', 'pm2', 'bloque', '2018-12-17', ''), +(14581, 215, 0, 416, '2019-01-28', 'am1', 'bloque', '2018-12-17', ''), +(14582, 215, 0, 416, '2019-01-28', 'am2', 'bloque', '2018-12-17', ''), +(14583, 215, 0, 416, '2019-01-28', 'pm1', 'bloque', '2018-12-17', ''), +(14584, 215, 0, 416, '2019-01-28', 'pm2', 'bloque', '2018-12-17', ''), +(14585, 215, 0, 416, '2019-01-29', 'am1', 'bloque', '2018-12-17', ''), +(14586, 215, 0, 416, '2019-01-29', 'am2', 'bloque', '2018-12-17', ''), +(14587, 215, 0, 416, '2019-01-29', 'pm1', 'bloque', '2018-12-17', ''), +(14588, 215, 0, 416, '2019-01-29', 'pm2', 'bloque', '2018-12-17', ''), +(14589, 215, 0, 416, '2019-01-30', 'am1', 'bloque', '2018-12-17', ''), +(14590, 215, 0, 416, '2019-01-30', 'am2', 'bloque', '2018-12-17', ''), +(14591, 215, 0, 416, '2019-01-30', 'pm1', 'bloque', '2018-12-17', ''), +(14592, 215, 0, 416, '2019-01-30', 'pm2', 'bloque', '2018-12-17', ''), +(14593, 215, 94, 416, '2019-01-31', 'am1', 'reserve', '2018-12-17', 'ref'), +(14594, 215, 0, 416, '2019-01-31', 'am2', 'bloque', '2018-12-17', ''), +(14595, 215, 0, 416, '2019-01-31', 'pm1', 'bloque', '2018-12-17', ''), +(14596, 215, 0, 416, '2019-01-31', 'pm2', 'bloque', '2018-12-17', ''), +(14597, 215, 0, 416, '2019-02-01', 'am1', 'bloque', '2018-12-17', ''), +(14598, 215, 0, 416, '2019-02-01', 'am2', 'bloque', '2018-12-17', ''), +(14599, 215, 0, 416, '2019-02-01', 'pm1', 'bloque', '2018-12-17', ''), +(14600, 215, 0, 416, '2019-02-01', 'pm2', 'bloque', '2018-12-17', ''), +(14601, 215, 0, 416, '2019-02-04', 'am1', 'bloque', '2018-12-17', ''), +(14602, 215, 0, 416, '2019-02-04', 'am2', 'bloque', '2018-12-17', ''), +(14603, 215, 0, 416, '2019-02-04', 'pm1', 'bloque', '2018-12-17', ''), +(14604, 215, 0, 416, '2019-02-04', 'pm2', 'bloque', '2018-12-17', ''), +(14605, 215, 0, 416, '2019-02-05', 'am1', 'bloque', '2018-12-17', ''), +(14606, 215, 0, 416, '2019-02-05', 'am2', 'bloque', '2018-12-17', ''), +(14607, 215, 0, 416, '2019-02-05', 'pm1', 'bloque', '2018-12-17', ''), +(14608, 215, 0, 416, '2019-02-05', 'pm2', 'bloque', '2018-12-17', ''), +(14609, 215, 0, 416, '2019-02-06', 'am1', 'bloque', '2018-12-17', ''), +(14610, 215, 0, 416, '2019-02-06', 'am2', 'bloque', '2018-12-17', ''), +(14611, 215, 0, 416, '2019-02-06', 'pm1', 'bloque', '2018-12-17', ''), +(14612, 215, 0, 416, '2019-02-06', 'pm2', 'bloque', '2018-12-17', ''), +(14613, 215, 0, 416, '2019-02-07', 'am1', 'bloque', '2018-12-17', ''), +(14614, 215, 0, 416, '2019-02-07', 'am2', 'bloque', '2018-12-17', ''), +(14615, 215, 0, 416, '2019-02-07', 'pm1', 'bloque', '2018-12-17', ''), +(14616, 215, 0, 416, '2019-02-07', 'pm2', 'bloque', '2018-12-17', ''), +(14617, 215, 0, 416, '2019-02-08', 'am1', 'bloque', '2018-12-17', ''), +(14618, 215, 0, 416, '2019-02-08', 'am2', 'bloque', '2018-12-17', ''), +(14619, 215, 0, 416, '2019-02-08', 'pm1', 'bloque', '2018-12-17', ''), +(14620, 215, 0, 416, '2019-02-08', 'pm2', 'bloque', '2018-12-17', ''), +(14621, 216, 0, 9, '2019-01-17', 'am1', 'libre', '2018-12-18', ''), +(14622, 216, 0, 9, '2019-01-17', 'am2', 'libre', '2018-12-18', ''), +(14623, 216, 117, 9, '2019-01-17', 'pm1', 'reserve', '2018-12-18', 'cap'), +(14624, 216, 0, 9, '2019-01-17', 'pm2', 'libre', '2018-12-18', ''), +(14625, 216, 0, 9, '2019-01-18', 'am1', 'bloque', '2018-12-18', ''), +(14626, 216, 0, 9, '2019-01-18', 'am2', 'bloque', '2018-12-18', ''), +(14627, 216, 0, 9, '2019-01-18', 'pm1', 'bloque', '2018-12-18', ''), +(14628, 216, 0, 9, '2019-01-18', 'pm2', 'bloque', '2018-12-18', ''), +(14629, 216, 0, 9, '2019-01-21', 'am1', 'bloque', '2018-12-18', ''), +(14630, 216, 0, 9, '2019-01-21', 'am2', 'bloque', '2018-12-18', ''), +(14631, 216, 0, 9, '2019-01-21', 'pm1', 'bloque', '2018-12-18', ''), +(14632, 216, 0, 9, '2019-01-21', 'pm2', 'bloque', '2018-12-18', ''), +(14633, 216, 0, 9, '2019-01-22', 'am1', 'bloque', '2018-12-18', ''), +(14634, 216, 0, 9, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(14635, 216, 0, 9, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(14636, 216, 0, 9, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(14637, 216, 0, 9, '2019-01-23', 'am1', 'bloque', '2018-12-18', ''), +(14638, 216, 0, 9, '2019-01-23', 'am2', 'bloque', '2018-12-18', ''), +(14639, 216, 0, 9, '2019-01-23', 'pm1', 'bloque', '2018-12-18', ''), +(14640, 216, 0, 9, '2019-01-23', 'pm2', 'bloque', '2018-12-18', ''), +(14641, 216, 0, 9, '2019-01-24', 'am1', 'bloque', '2018-12-18', ''), +(14642, 216, 0, 9, '2019-01-24', 'am2', 'bloque', '2018-12-18', ''), +(14643, 216, 0, 9, '2019-01-24', 'pm1', 'bloque', '2018-12-18', ''), +(14644, 216, 0, 9, '2019-01-24', 'pm2', 'bloque', '2018-12-18', ''), +(14645, 216, 0, 9, '2019-01-25', 'am1', 'bloque', '2018-12-18', ''), +(14646, 216, 0, 9, '2019-01-25', 'am2', 'bloque', '2018-12-18', ''), +(14647, 216, 0, 9, '2019-01-25', 'pm1', 'bloque', '2018-12-18', ''), +(14648, 216, 0, 9, '2019-01-25', 'pm2', 'bloque', '2018-12-18', ''), +(14649, 216, 0, 9, '2019-01-28', 'am1', 'bloque', '2018-12-18', ''), +(14650, 216, 0, 9, '2019-01-28', 'am2', 'bloque', '2018-12-18', ''), +(14651, 216, 0, 9, '2019-01-28', 'pm1', 'bloque', '2018-12-18', ''), +(14652, 216, 0, 9, '2019-01-28', 'pm2', 'bloque', '2018-12-18', ''), +(14653, 216, 0, 9, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(14654, 216, 0, 9, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(14655, 216, 0, 9, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(14656, 216, 0, 9, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(14657, 216, 0, 9, '2019-01-30', 'am1', 'bloque', '2018-12-18', ''), +(14658, 216, 0, 9, '2019-01-30', 'am2', 'bloque', '2018-12-18', ''), +(14659, 216, 0, 9, '2019-01-30', 'pm1', 'bloque', '2018-12-18', ''), +(14660, 216, 0, 9, '2019-01-30', 'pm2', 'bloque', '2018-12-18', ''), +(14661, 216, 0, 9, '2019-01-31', 'am1', 'bloque', '2018-12-18', ''), +(14662, 216, 0, 9, '2019-01-31', 'am2', 'bloque', '2018-12-18', ''), +(14663, 216, 0, 9, '2019-01-31', 'pm1', 'bloque', '2018-12-18', ''), +(14664, 216, 0, 9, '2019-01-31', 'pm2', 'bloque', '2018-12-18', ''), +(14665, 216, 0, 9, '2019-02-01', 'am1', 'bloque', '2018-12-18', ''), +(14666, 216, 0, 9, '2019-02-01', 'am2', 'bloque', '2018-12-18', ''), +(14667, 216, 0, 9, '2019-02-01', 'pm1', 'bloque', '2018-12-18', ''), +(14668, 216, 0, 9, '2019-02-01', 'pm2', 'bloque', '2018-12-18', ''), +(14669, 216, 0, 9, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(14670, 216, 0, 9, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(14671, 216, 0, 9, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(14672, 216, 0, 9, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(14673, 216, 0, 9, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(14674, 216, 0, 9, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(14675, 216, 0, 9, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(14676, 216, 0, 9, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(14677, 216, 0, 9, '2019-02-06', 'am1', 'bloque', '2018-12-18', ''), +(14678, 216, 0, 9, '2019-02-06', 'am2', 'bloque', '2018-12-18', ''), +(14679, 216, 0, 9, '2019-02-06', 'pm1', 'bloque', '2018-12-18', ''), +(14680, 216, 0, 9, '2019-02-06', 'pm2', 'bloque', '2018-12-18', ''), +(14681, 216, 0, 9, '2019-02-07', 'am1', 'bloque', '2018-12-18', ''), +(14682, 216, 0, 9, '2019-02-07', 'am2', 'bloque', '2018-12-18', ''), +(14683, 216, 0, 9, '2019-02-07', 'pm1', 'bloque', '2018-12-18', ''), +(14684, 216, 0, 9, '2019-02-07', 'pm2', 'bloque', '2018-12-18', ''), +(14685, 216, 0, 9, '2019-02-08', 'am1', 'bloque', '2018-12-18', ''), +(14686, 216, 0, 9, '2019-02-08', 'am2', 'bloque', '2018-12-18', ''), +(14687, 216, 0, 9, '2019-02-08', 'pm1', 'bloque', '2018-12-18', ''), +(14688, 216, 0, 9, '2019-02-08', 'pm2', 'bloque', '2018-12-18', ''), +(14689, 217, 0, 32, '2019-01-17', 'am1', 'libre', '2018-12-18', ''), +(14690, 217, 0, 32, '2019-01-17', 'am2', 'libre', '2018-12-18', ''), +(14691, 217, 0, 32, '2019-01-17', 'pm1', 'libre', '2018-12-18', ''), +(14692, 217, 0, 32, '2019-01-17', 'pm2', 'libre', '2018-12-18', ''), +(14693, 217, 0, 32, '2019-01-18', 'am1', 'bloque', '2018-12-18', ''), +(14694, 217, 0, 32, '2019-01-18', 'am2', 'bloque', '2018-12-18', ''), +(14695, 217, 0, 32, '2019-01-18', 'pm1', 'bloque', '2018-12-18', ''), +(14696, 217, 0, 32, '2019-01-18', 'pm2', 'bloque', '2018-12-18', ''), +(14697, 217, 0, 32, '2019-01-21', 'am1', 'bloque', '2018-12-18', ''), +(14698, 217, 0, 32, '2019-01-21', 'am2', 'bloque', '2018-12-18', ''), +(14699, 217, 0, 32, '2019-01-21', 'pm1', 'bloque', '2018-12-18', ''), +(14700, 217, 0, 32, '2019-01-21', 'pm2', 'bloque', '2018-12-18', ''), +(14701, 217, 0, 32, '2019-01-22', 'am1', 'bloque', '2018-12-18', ''), +(14702, 217, 0, 32, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(14703, 217, 0, 32, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(14704, 217, 0, 32, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(14705, 217, 0, 32, '2019-01-23', 'am1', 'bloque', '2018-12-18', ''), +(14706, 217, 0, 32, '2019-01-23', 'am2', 'bloque', '2018-12-18', ''), +(14707, 217, 0, 32, '2019-01-23', 'pm1', 'bloque', '2018-12-18', ''), +(14708, 217, 0, 32, '2019-01-23', 'pm2', 'bloque', '2018-12-18', ''), +(14709, 217, 0, 32, '2019-01-24', 'am1', 'bloque', '2018-12-18', ''), +(14710, 217, 0, 32, '2019-01-24', 'am2', 'bloque', '2018-12-18', ''), +(14711, 217, 0, 32, '2019-01-24', 'pm1', 'bloque', '2018-12-18', ''), +(14712, 217, 0, 32, '2019-01-24', 'pm2', 'bloque', '2018-12-18', ''), +(14713, 217, 0, 32, '2019-01-25', 'am1', 'bloque', '2018-12-18', ''), +(14714, 217, 0, 32, '2019-01-25', 'am2', 'bloque', '2018-12-18', ''), +(14715, 217, 0, 32, '2019-01-25', 'pm1', 'bloque', '2018-12-18', ''), +(14716, 217, 0, 32, '2019-01-25', 'pm2', 'bloque', '2018-12-18', ''), +(14717, 217, 0, 32, '2019-01-28', 'am1', 'bloque', '2018-12-18', ''), +(14718, 217, 0, 32, '2019-01-28', 'am2', 'bloque', '2018-12-18', ''), +(14719, 217, 0, 32, '2019-01-28', 'pm1', 'bloque', '2018-12-18', ''), +(14720, 217, 0, 32, '2019-01-28', 'pm2', 'bloque', '2018-12-18', ''), +(14721, 217, 0, 32, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(14722, 217, 0, 32, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(14723, 217, 0, 32, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(14724, 217, 0, 32, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(14725, 217, 0, 32, '2019-01-30', 'am1', 'bloque', '2018-12-18', ''), +(14726, 217, 0, 32, '2019-01-30', 'am2', 'bloque', '2018-12-18', ''), +(14727, 217, 0, 32, '2019-01-30', 'pm1', 'bloque', '2018-12-18', ''), +(14728, 217, 0, 32, '2019-01-30', 'pm2', 'bloque', '2018-12-18', ''), +(14729, 217, 0, 32, '2019-01-31', 'am1', 'bloque', '2018-12-18', ''), +(14730, 217, 0, 32, '2019-01-31', 'am2', 'bloque', '2018-12-18', ''), +(14731, 217, 0, 32, '2019-01-31', 'pm1', 'bloque', '2018-12-18', ''), +(14732, 217, 0, 32, '2019-01-31', 'pm2', 'bloque', '2018-12-18', ''), +(14733, 217, 0, 32, '2019-02-01', 'am1', 'bloque', '2018-12-18', ''), +(14734, 217, 0, 32, '2019-02-01', 'am2', 'bloque', '2018-12-18', ''), +(14735, 217, 0, 32, '2019-02-01', 'pm1', 'bloque', '2018-12-18', ''), +(14736, 217, 0, 32, '2019-02-01', 'pm2', 'bloque', '2018-12-18', ''), +(14737, 217, 0, 32, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(14738, 217, 0, 32, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(14739, 217, 0, 32, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(14740, 217, 0, 32, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(14741, 217, 0, 32, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(14742, 217, 0, 32, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(14743, 217, 0, 32, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(14744, 217, 0, 32, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(14745, 217, 0, 32, '2019-02-06', 'am1', 'bloque', '2018-12-18', ''), +(14746, 217, 0, 32, '2019-02-06', 'am2', 'bloque', '2018-12-18', ''), +(14747, 217, 0, 32, '2019-02-06', 'pm1', 'bloque', '2018-12-18', ''), +(14748, 217, 0, 32, '2019-02-06', 'pm2', 'bloque', '2018-12-18', ''), +(14749, 217, 0, 32, '2019-02-07', 'am1', 'bloque', '2018-12-18', ''), +(14750, 217, 0, 32, '2019-02-07', 'am2', 'bloque', '2018-12-18', ''), +(14751, 217, 0, 32, '2019-02-07', 'pm1', 'bloque', '2018-12-18', ''), +(14752, 217, 0, 32, '2019-02-07', 'pm2', 'bloque', '2018-12-18', ''), +(14753, 217, 0, 32, '2019-02-08', 'am1', 'bloque', '2018-12-18', ''), +(14754, 217, 0, 32, '2019-02-08', 'am2', 'bloque', '2018-12-18', ''), +(14755, 217, 0, 32, '2019-02-08', 'pm1', 'bloque', '2018-12-18', ''), +(14756, 217, 0, 32, '2019-02-08', 'pm2', 'bloque', '2018-12-18', ''), +(14757, 218, 0, 414, '2019-01-17', 'am1', 'bloque', '2018-12-18', 'ref'), +(14758, 218, 0, 414, '2019-01-17', 'am2', 'bloque', '2018-12-18', 'ref'), +(14759, 218, 0, 414, '2019-01-17', 'pm1', 'bloque', '2018-12-18', 'ref'), +(14760, 218, 0, 414, '2019-01-17', 'pm2', 'bloque', '2018-12-18', 'ref'), +(14761, 218, 0, 414, '2019-01-18', 'am1', 'bloque', '2018-12-18', ''), +(14762, 218, 0, 414, '2019-01-18', 'am2', 'bloque', '2018-12-18', ''), +(14763, 218, 0, 414, '2019-01-18', 'pm1', 'bloque', '2018-12-18', ''), +(14764, 218, 0, 414, '2019-01-18', 'pm2', 'bloque', '2018-12-18', ''), +(14765, 218, 0, 414, '2019-01-21', 'am1', 'libre', '2018-12-18', 'ref'), +(14766, 218, 0, 414, '2019-01-21', 'am2', 'libre', '2018-12-18', 'ref'), +(14767, 218, 0, 414, '2019-01-21', 'pm1', 'libre', '2018-12-18', 'ref'), +(14768, 218, 0, 414, '2019-01-21', 'pm2', 'libre', '2018-12-18', 'ref'), +(14769, 218, 0, 414, '2019-01-22', 'am1', 'bloque', '2018-12-18', ''), +(14770, 218, 0, 414, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(14771, 218, 0, 414, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(14772, 218, 0, 414, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(14773, 218, 0, 414, '2019-01-23', 'am1', 'bloque', '2018-12-18', ''), +(14774, 218, 0, 414, '2019-01-23', 'am2', 'bloque', '2018-12-18', ''), +(14775, 218, 0, 414, '2019-01-23', 'pm1', 'bloque', '2018-12-18', ''), +(14776, 218, 0, 414, '2019-01-23', 'pm2', 'bloque', '2018-12-18', ''), +(14777, 218, 0, 414, '2019-01-24', 'am1', 'libre', '2018-12-18', 'ref'), +(14778, 218, 0, 414, '2019-01-24', 'am2', 'libre', '2018-12-18', 'ref'), +(14779, 218, 0, 414, '2019-01-24', 'pm1', 'bloque', '2018-12-18', 'ref'), +(14780, 218, 0, 414, '2019-01-24', 'pm2', 'bloque', '2018-12-18', 'ref'), +(14781, 218, 0, 414, '2019-01-25', 'am1', 'bloque', '2018-12-18', ''), +(14782, 218, 0, 414, '2019-01-25', 'am2', 'bloque', '2018-12-18', ''), +(14783, 218, 0, 414, '2019-01-25', 'pm1', 'bloque', '2018-12-18', ''), +(14784, 218, 0, 414, '2019-01-25', 'pm2', 'bloque', '2018-12-18', ''), +(14785, 218, 0, 414, '2019-01-28', 'am1', 'libre', '2018-12-18', 'ref'), +(14786, 218, 0, 414, '2019-01-28', 'am2', 'libre', '2018-12-18', 'ref'), +(14787, 218, 0, 414, '2019-01-28', 'pm1', 'libre', '2018-12-18', 'ref'), +(14788, 218, 0, 414, '2019-01-28', 'pm2', 'libre', '2018-12-18', 'ref'), +(14789, 218, 0, 414, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(14790, 218, 0, 414, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(14791, 218, 0, 414, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(14792, 218, 0, 414, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(14793, 218, 0, 414, '2019-01-30', 'am1', 'bloque', '2018-12-18', ''), +(14794, 218, 0, 414, '2019-01-30', 'am2', 'bloque', '2018-12-18', ''), +(14795, 218, 0, 414, '2019-01-30', 'pm1', 'bloque', '2018-12-18', ''), +(14796, 218, 0, 414, '2019-01-30', 'pm2', 'bloque', '2018-12-18', ''), +(14797, 218, 0, 414, '2019-01-31', 'am1', 'bloque', '2018-12-18', ''), +(14798, 218, 0, 414, '2019-01-31', 'am2', 'bloque', '2018-12-18', ''), +(14799, 218, 0, 414, '2019-01-31', 'pm1', 'bloque', '2018-12-18', ''), +(14800, 218, 0, 414, '2019-01-31', 'pm2', 'bloque', '2018-12-18', ''), +(14801, 218, 0, 414, '2019-02-01', 'am1', 'bloque', '2018-12-18', ''), +(14802, 218, 0, 414, '2019-02-01', 'am2', 'bloque', '2018-12-18', ''), +(14803, 218, 0, 414, '2019-02-01', 'pm1', 'bloque', '2018-12-18', ''), +(14804, 218, 0, 414, '2019-02-01', 'pm2', 'bloque', '2018-12-18', ''), +(14805, 218, 0, 414, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(14806, 218, 0, 414, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(14807, 218, 0, 414, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(14808, 218, 0, 414, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(14809, 218, 0, 414, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(14810, 218, 0, 414, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(14811, 218, 0, 414, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(14812, 218, 0, 414, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(14813, 218, 0, 414, '2019-02-06', 'am1', 'bloque', '2018-12-18', ''), +(14814, 218, 0, 414, '2019-02-06', 'am2', 'bloque', '2018-12-18', ''), +(14815, 218, 0, 414, '2019-02-06', 'pm1', 'bloque', '2018-12-18', ''), +(14816, 218, 0, 414, '2019-02-06', 'pm2', 'bloque', '2018-12-18', ''), +(14817, 218, 0, 414, '2019-02-07', 'am1', 'bloque', '2018-12-18', ''), +(14818, 218, 0, 414, '2019-02-07', 'am2', 'bloque', '2018-12-18', ''), +(14819, 218, 0, 414, '2019-02-07', 'pm1', 'bloque', '2018-12-18', ''), +(14820, 218, 0, 414, '2019-02-07', 'pm2', 'bloque', '2018-12-18', ''), +(14821, 218, 0, 414, '2019-02-08', 'am1', 'bloque', '2018-12-18', ''), +(14822, 218, 0, 414, '2019-02-08', 'am2', 'bloque', '2018-12-18', ''), +(14823, 218, 0, 414, '2019-02-08', 'pm1', 'bloque', '2018-12-18', ''), +(14824, 218, 0, 414, '2019-02-08', 'pm2', 'bloque', '2018-12-18', ''), +(14825, 219, 107, 32, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'ref'), +(14826, 219, 0, 32, '2019-01-17', 'am2', 'libre', '2018-12-18', ''), +(14827, 219, 0, 32, '2019-01-17', 'pm1', 'libre', '2018-12-18', ''), +(14828, 219, 0, 32, '2019-01-17', 'pm2', 'libre', '2018-12-18', ''), +(14829, 219, 0, 32, '2019-01-18', 'am1', 'bloque', '2018-12-18', ''), +(14830, 219, 0, 32, '2019-01-18', 'am2', 'bloque', '2018-12-18', ''), +(14831, 219, 0, 32, '2019-01-18', 'pm1', 'bloque', '2018-12-18', ''), +(14832, 219, 0, 32, '2019-01-18', 'pm2', 'bloque', '2018-12-18', ''), +(14833, 219, 0, 32, '2019-01-21', 'am1', 'bloque', '2018-12-18', ''), +(14834, 219, 0, 32, '2019-01-21', 'am2', 'bloque', '2018-12-18', ''), +(14835, 219, 0, 32, '2019-01-21', 'pm1', 'bloque', '2018-12-18', ''), +(14836, 219, 0, 32, '2019-01-21', 'pm2', 'bloque', '2018-12-18', ''), +(14837, 219, 0, 32, '2019-01-22', 'am1', 'bloque', '2018-12-18', ''), +(14838, 219, 0, 32, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(14839, 219, 0, 32, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(14840, 219, 0, 32, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(14841, 219, 0, 32, '2019-01-23', 'am1', 'bloque', '2018-12-18', ''), +(14842, 219, 0, 32, '2019-01-23', 'am2', 'bloque', '2018-12-18', ''), +(14843, 219, 0, 32, '2019-01-23', 'pm1', 'bloque', '2018-12-18', ''), +(14844, 219, 0, 32, '2019-01-23', 'pm2', 'bloque', '2018-12-18', ''), +(14845, 219, 0, 32, '2019-01-24', 'am1', 'bloque', '2018-12-18', ''), +(14846, 219, 0, 32, '2019-01-24', 'am2', 'bloque', '2018-12-18', ''), +(14847, 219, 0, 32, '2019-01-24', 'pm1', 'bloque', '2018-12-18', ''), +(14848, 219, 0, 32, '2019-01-24', 'pm2', 'bloque', '2018-12-18', ''), +(14849, 219, 0, 32, '2019-01-25', 'am1', 'bloque', '2018-12-18', ''), +(14850, 219, 0, 32, '2019-01-25', 'am2', 'bloque', '2018-12-18', ''), +(14851, 219, 0, 32, '2019-01-25', 'pm1', 'bloque', '2018-12-18', ''), +(14852, 219, 0, 32, '2019-01-25', 'pm2', 'bloque', '2018-12-18', ''), +(14853, 219, 0, 32, '2019-01-28', 'am1', 'bloque', '2018-12-18', ''), +(14854, 219, 0, 32, '2019-01-28', 'am2', 'bloque', '2018-12-18', ''), +(14855, 219, 0, 32, '2019-01-28', 'pm1', 'bloque', '2018-12-18', ''), +(14856, 219, 0, 32, '2019-01-28', 'pm2', 'bloque', '2018-12-18', ''), +(14857, 219, 0, 32, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(14858, 219, 0, 32, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(14859, 219, 0, 32, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(14860, 219, 0, 32, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(14861, 219, 0, 32, '2019-01-30', 'am1', 'bloque', '2018-12-18', ''), +(14862, 219, 0, 32, '2019-01-30', 'am2', 'bloque', '2018-12-18', ''), +(14863, 219, 0, 32, '2019-01-30', 'pm1', 'bloque', '2018-12-18', ''), +(14864, 219, 0, 32, '2019-01-30', 'pm2', 'bloque', '2018-12-18', ''), +(14865, 219, 0, 32, '2019-01-31', 'am1', 'bloque', '2018-12-18', ''), +(14866, 219, 0, 32, '2019-01-31', 'am2', 'bloque', '2018-12-18', ''), +(14867, 219, 0, 32, '2019-01-31', 'pm1', 'bloque', '2018-12-18', ''), +(14868, 219, 0, 32, '2019-01-31', 'pm2', 'bloque', '2018-12-18', ''), +(14869, 219, 0, 32, '2019-02-01', 'am1', 'bloque', '2018-12-18', ''), +(14870, 219, 0, 32, '2019-02-01', 'am2', 'bloque', '2018-12-18', ''), +(14871, 219, 0, 32, '2019-02-01', 'pm1', 'bloque', '2018-12-18', ''), +(14872, 219, 0, 32, '2019-02-01', 'pm2', 'bloque', '2018-12-18', ''), +(14873, 219, 0, 32, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(14874, 219, 0, 32, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(14875, 219, 0, 32, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(14876, 219, 0, 32, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(14877, 219, 0, 32, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(14878, 219, 0, 32, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(14879, 219, 0, 32, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(14880, 219, 0, 32, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(14881, 219, 0, 32, '2019-02-06', 'am1', 'bloque', '2018-12-18', ''), +(14882, 219, 0, 32, '2019-02-06', 'am2', 'bloque', '2018-12-18', ''), +(14883, 219, 0, 32, '2019-02-06', 'pm1', 'bloque', '2018-12-18', ''), +(14884, 219, 0, 32, '2019-02-06', 'pm2', 'bloque', '2018-12-18', ''), +(14885, 219, 0, 32, '2019-02-07', 'am1', 'bloque', '2018-12-18', ''), +(14886, 219, 0, 32, '2019-02-07', 'am2', 'bloque', '2018-12-18', ''), +(14887, 219, 0, 32, '2019-02-07', 'pm1', 'bloque', '2018-12-18', ''), +(14888, 219, 0, 32, '2019-02-07', 'pm2', 'bloque', '2018-12-18', ''), +(14889, 219, 0, 32, '2019-02-08', 'am1', 'bloque', '2018-12-18', ''), +(14890, 219, 0, 32, '2019-02-08', 'am2', 'bloque', '2018-12-18', ''), +(14891, 219, 0, 32, '2019-02-08', 'pm1', 'bloque', '2018-12-18', ''), +(14892, 219, 0, 32, '2019-02-08', 'pm2', 'bloque', '2018-12-18', ''), +(14893, 220, 0, 4, '2019-01-17', 'am1', 'libre', '2018-12-18', ''), +(14894, 220, 0, 4, '2019-01-17', 'am2', 'libre', '2018-12-18', ''), +(14895, 220, 0, 4, '2019-01-17', 'pm1', 'libre', '2018-12-18', ''), +(14896, 220, 0, 4, '2019-01-17', 'pm2', 'libre', '2018-12-18', ''), +(14897, 220, 0, 4, '2019-01-18', 'am1', 'bloque', '2018-12-18', ''), +(14898, 220, 0, 4, '2019-01-18', 'am2', 'bloque', '2018-12-18', ''), +(14899, 220, 0, 4, '2019-01-18', 'pm1', 'bloque', '2018-12-18', ''), +(14900, 220, 0, 4, '2019-01-18', 'pm2', 'bloque', '2018-12-18', ''), +(14901, 220, 0, 4, '2019-01-21', 'am1', 'bloque', '2018-12-18', ''), +(14902, 220, 0, 4, '2019-01-21', 'am2', 'bloque', '2018-12-18', ''), +(14903, 220, 0, 4, '2019-01-21', 'pm1', 'bloque', '2018-12-18', ''), +(14904, 220, 0, 4, '2019-01-21', 'pm2', 'bloque', '2018-12-18', ''), +(14905, 220, 0, 4, '2019-01-22', 'am1', 'bloque', '2018-12-18', ''), +(14906, 220, 0, 4, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(14907, 220, 0, 4, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(14908, 220, 0, 4, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(14909, 220, 0, 4, '2019-01-23', 'am1', 'bloque', '2018-12-18', ''), +(14910, 220, 0, 4, '2019-01-23', 'am2', 'bloque', '2018-12-18', ''), +(14911, 220, 0, 4, '2019-01-23', 'pm1', 'bloque', '2018-12-18', ''), +(14912, 220, 0, 4, '2019-01-23', 'pm2', 'bloque', '2018-12-18', ''), +(14913, 220, 0, 4, '2019-01-24', 'am1', 'bloque', '2018-12-18', ''), +(14914, 220, 0, 4, '2019-01-24', 'am2', 'bloque', '2018-12-18', ''), +(14915, 220, 0, 4, '2019-01-24', 'pm1', 'bloque', '2018-12-18', ''), +(14916, 220, 0, 4, '2019-01-24', 'pm2', 'bloque', '2018-12-18', ''), +(14917, 220, 0, 4, '2019-01-25', 'am1', 'bloque', '2018-12-18', ''), +(14918, 220, 0, 4, '2019-01-25', 'am2', 'bloque', '2018-12-18', ''), +(14919, 220, 0, 4, '2019-01-25', 'pm1', 'bloque', '2018-12-18', ''), +(14920, 220, 0, 4, '2019-01-25', 'pm2', 'bloque', '2018-12-18', ''), +(14921, 220, 0, 4, '2019-01-28', 'am1', 'bloque', '2018-12-18', ''), +(14922, 220, 0, 4, '2019-01-28', 'am2', 'bloque', '2018-12-18', ''), +(14923, 220, 0, 4, '2019-01-28', 'pm1', 'bloque', '2018-12-18', ''), +(14924, 220, 0, 4, '2019-01-28', 'pm2', 'bloque', '2018-12-18', ''), +(14925, 220, 0, 4, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(14926, 220, 0, 4, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(14927, 220, 0, 4, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(14928, 220, 0, 4, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(14929, 220, 0, 4, '2019-01-30', 'am1', 'bloque', '2018-12-18', ''), +(14930, 220, 0, 4, '2019-01-30', 'am2', 'bloque', '2018-12-18', ''), +(14931, 220, 0, 4, '2019-01-30', 'pm1', 'bloque', '2018-12-18', ''), +(14932, 220, 0, 4, '2019-01-30', 'pm2', 'bloque', '2018-12-18', ''), +(14933, 220, 0, 4, '2019-01-31', 'am1', 'bloque', '2018-12-18', ''), +(14934, 220, 0, 4, '2019-01-31', 'am2', 'bloque', '2018-12-18', ''), +(14935, 220, 0, 4, '2019-01-31', 'pm1', 'bloque', '2018-12-18', ''), +(14936, 220, 0, 4, '2019-01-31', 'pm2', 'bloque', '2018-12-18', ''), +(14937, 220, 0, 4, '2019-02-01', 'am1', 'bloque', '2018-12-18', ''), +(14938, 220, 0, 4, '2019-02-01', 'am2', 'bloque', '2018-12-18', ''), +(14939, 220, 0, 4, '2019-02-01', 'pm1', 'bloque', '2018-12-18', ''), +(14940, 220, 0, 4, '2019-02-01', 'pm2', 'bloque', '2018-12-18', ''), +(14941, 220, 0, 4, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(14942, 220, 0, 4, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(14943, 220, 0, 4, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(14944, 220, 0, 4, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(14945, 220, 0, 4, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(14946, 220, 0, 4, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(14947, 220, 0, 4, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(14948, 220, 0, 4, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(14949, 220, 0, 4, '2019-02-06', 'am1', 'bloque', '2018-12-18', ''), +(14950, 220, 0, 4, '2019-02-06', 'am2', 'bloque', '2018-12-18', ''), +(14951, 220, 0, 4, '2019-02-06', 'pm1', 'bloque', '2018-12-18', ''), +(14952, 220, 0, 4, '2019-02-06', 'pm2', 'bloque', '2018-12-18', ''), +(14953, 220, 0, 4, '2019-02-07', 'am1', 'bloque', '2018-12-18', ''), +(14954, 220, 0, 4, '2019-02-07', 'am2', 'bloque', '2018-12-18', ''), +(14955, 220, 0, 4, '2019-02-07', 'pm1', 'bloque', '2018-12-18', ''), +(14956, 220, 0, 4, '2019-02-07', 'pm2', 'bloque', '2018-12-18', ''), +(14957, 220, 0, 4, '2019-02-08', 'am1', 'bloque', '2018-12-18', ''), +(14958, 220, 0, 4, '2019-02-08', 'am2', 'bloque', '2018-12-18', ''), +(14959, 220, 0, 4, '2019-02-08', 'pm1', 'bloque', '2018-12-18', ''), +(14960, 220, 0, 4, '2019-02-08', 'pm2', 'bloque', '2018-12-18', ''), +(14961, 221, 108, 32, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'ref'), +(14962, 221, 0, 32, '2019-01-17', 'am2', 'libre', '2018-12-18', ''), +(14963, 221, 0, 32, '2019-01-17', 'pm1', 'libre', '2018-12-18', ''), +(14964, 221, 0, 32, '2019-01-17', 'pm2', 'libre', '2018-12-18', ''), +(14965, 221, 0, 32, '2019-01-18', 'am1', 'bloque', '2018-12-18', ''), +(14966, 221, 0, 32, '2019-01-18', 'am2', 'bloque', '2018-12-18', ''), +(14967, 221, 0, 32, '2019-01-18', 'pm1', 'bloque', '2018-12-18', ''), +(14968, 221, 0, 32, '2019-01-18', 'pm2', 'bloque', '2018-12-18', ''), +(14969, 221, 0, 32, '2019-01-21', 'am1', 'bloque', '2018-12-18', ''), +(14970, 221, 0, 32, '2019-01-21', 'am2', 'bloque', '2018-12-18', ''), +(14971, 221, 0, 32, '2019-01-21', 'pm1', 'bloque', '2018-12-18', ''), +(14972, 221, 0, 32, '2019-01-21', 'pm2', 'bloque', '2018-12-18', ''), +(14973, 221, 0, 32, '2019-01-22', 'am1', 'bloque', '2018-12-18', ''), +(14974, 221, 0, 32, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(14975, 221, 0, 32, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(14976, 221, 0, 32, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(14977, 221, 0, 32, '2019-01-23', 'am1', 'bloque', '2018-12-18', ''), +(14978, 221, 0, 32, '2019-01-23', 'am2', 'bloque', '2018-12-18', ''), +(14979, 221, 0, 32, '2019-01-23', 'pm1', 'bloque', '2018-12-18', ''), +(14980, 221, 0, 32, '2019-01-23', 'pm2', 'bloque', '2018-12-18', ''), +(14981, 221, 0, 32, '2019-01-24', 'am1', 'bloque', '2018-12-18', ''), +(14982, 221, 0, 32, '2019-01-24', 'am2', 'bloque', '2018-12-18', ''), +(14983, 221, 0, 32, '2019-01-24', 'pm1', 'bloque', '2018-12-18', ''), +(14984, 221, 0, 32, '2019-01-24', 'pm2', 'bloque', '2018-12-18', ''), +(14985, 221, 0, 32, '2019-01-25', 'am1', 'bloque', '2018-12-18', ''), +(14986, 221, 0, 32, '2019-01-25', 'am2', 'bloque', '2018-12-18', ''), +(14987, 221, 0, 32, '2019-01-25', 'pm1', 'bloque', '2018-12-18', ''), +(14988, 221, 0, 32, '2019-01-25', 'pm2', 'bloque', '2018-12-18', ''), +(14989, 221, 0, 32, '2019-01-28', 'am1', 'bloque', '2018-12-18', ''), +(14990, 221, 0, 32, '2019-01-28', 'am2', 'bloque', '2018-12-18', ''), +(14991, 221, 0, 32, '2019-01-28', 'pm1', 'bloque', '2018-12-18', ''), +(14992, 221, 0, 32, '2019-01-28', 'pm2', 'bloque', '2018-12-18', ''), +(14993, 221, 0, 32, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(14994, 221, 0, 32, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(14995, 221, 0, 32, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(14996, 221, 0, 32, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(14997, 221, 0, 32, '2019-01-30', 'am1', 'bloque', '2018-12-18', ''), +(14998, 221, 0, 32, '2019-01-30', 'am2', 'bloque', '2018-12-18', ''), +(14999, 221, 0, 32, '2019-01-30', 'pm1', 'bloque', '2018-12-18', ''), +(15000, 221, 0, 32, '2019-01-30', 'pm2', 'bloque', '2018-12-18', ''), +(15001, 221, 0, 32, '2019-01-31', 'am1', 'bloque', '2018-12-18', ''), +(15002, 221, 0, 32, '2019-01-31', 'am2', 'bloque', '2018-12-18', ''), +(15003, 221, 0, 32, '2019-01-31', 'pm1', 'bloque', '2018-12-18', ''), +(15004, 221, 0, 32, '2019-01-31', 'pm2', 'bloque', '2018-12-18', ''), +(15005, 221, 0, 32, '2019-02-01', 'am1', 'bloque', '2018-12-18', ''), +(15006, 221, 0, 32, '2019-02-01', 'am2', 'bloque', '2018-12-18', ''), +(15007, 221, 0, 32, '2019-02-01', 'pm1', 'bloque', '2018-12-18', ''), +(15008, 221, 0, 32, '2019-02-01', 'pm2', 'bloque', '2018-12-18', ''), +(15009, 221, 0, 32, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(15010, 221, 0, 32, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(15011, 221, 0, 32, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(15012, 221, 0, 32, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(15013, 221, 0, 32, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(15014, 221, 0, 32, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(15015, 221, 0, 32, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(15016, 221, 0, 32, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(15017, 221, 0, 32, '2019-02-06', 'am1', 'bloque', '2018-12-18', ''), +(15018, 221, 0, 32, '2019-02-06', 'am2', 'bloque', '2018-12-18', ''), +(15019, 221, 0, 32, '2019-02-06', 'pm1', 'bloque', '2018-12-18', ''), +(15020, 221, 0, 32, '2019-02-06', 'pm2', 'bloque', '2018-12-18', ''), +(15021, 221, 0, 32, '2019-02-07', 'am1', 'bloque', '2018-12-18', ''), +(15022, 221, 0, 32, '2019-02-07', 'am2', 'bloque', '2018-12-18', ''), +(15023, 221, 0, 32, '2019-02-07', 'pm1', 'bloque', '2018-12-18', ''), +(15024, 221, 0, 32, '2019-02-07', 'pm2', 'bloque', '2018-12-18', ''), +(15025, 221, 0, 32, '2019-02-08', 'am1', 'bloque', '2018-12-18', ''), +(15026, 221, 0, 32, '2019-02-08', 'am2', 'bloque', '2018-12-18', ''), +(15027, 221, 0, 32, '2019-02-08', 'pm1', 'bloque', '2018-12-18', ''), +(15028, 221, 0, 32, '2019-02-08', 'pm2', 'bloque', '2018-12-18', ''), +(15029, 222, 109, 32, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'ref'), +(15030, 222, 0, 32, '2019-01-17', 'am2', 'libre', '2018-12-18', ''), +(15031, 222, 0, 32, '2019-01-17', 'pm1', 'libre', '2018-12-18', ''), +(15032, 222, 0, 32, '2019-01-17', 'pm2', 'libre', '2018-12-18', ''), +(15033, 222, 0, 32, '2019-01-18', 'am1', 'bloque', '2018-12-18', ''), +(15034, 222, 0, 32, '2019-01-18', 'am2', 'bloque', '2018-12-18', ''), +(15035, 222, 0, 32, '2019-01-18', 'pm1', 'bloque', '2018-12-18', ''), +(15036, 222, 0, 32, '2019-01-18', 'pm2', 'bloque', '2018-12-18', ''), +(15037, 222, 0, 32, '2019-01-21', 'am1', 'bloque', '2018-12-18', ''), +(15038, 222, 0, 32, '2019-01-21', 'am2', 'bloque', '2018-12-18', ''), +(15039, 222, 0, 32, '2019-01-21', 'pm1', 'bloque', '2018-12-18', ''), +(15040, 222, 0, 32, '2019-01-21', 'pm2', 'bloque', '2018-12-18', ''), +(15041, 222, 0, 32, '2019-01-22', 'am1', 'bloque', '2018-12-18', ''), +(15042, 222, 0, 32, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(15043, 222, 0, 32, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(15044, 222, 0, 32, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(15045, 222, 0, 32, '2019-01-23', 'am1', 'bloque', '2018-12-18', ''), +(15046, 222, 0, 32, '2019-01-23', 'am2', 'bloque', '2018-12-18', ''), +(15047, 222, 0, 32, '2019-01-23', 'pm1', 'bloque', '2018-12-18', ''), +(15048, 222, 0, 32, '2019-01-23', 'pm2', 'bloque', '2018-12-18', ''), +(15049, 222, 0, 32, '2019-01-24', 'am1', 'bloque', '2018-12-18', ''), +(15050, 222, 0, 32, '2019-01-24', 'am2', 'bloque', '2018-12-18', ''), +(15051, 222, 0, 32, '2019-01-24', 'pm1', 'bloque', '2018-12-18', ''), +(15052, 222, 0, 32, '2019-01-24', 'pm2', 'bloque', '2018-12-18', ''), +(15053, 222, 0, 32, '2019-01-25', 'am1', 'bloque', '2018-12-18', ''), +(15054, 222, 0, 32, '2019-01-25', 'am2', 'bloque', '2018-12-18', ''), +(15055, 222, 0, 32, '2019-01-25', 'pm1', 'bloque', '2018-12-18', ''), +(15056, 222, 0, 32, '2019-01-25', 'pm2', 'bloque', '2018-12-18', ''), +(15057, 222, 0, 32, '2019-01-28', 'am1', 'bloque', '2018-12-18', ''), +(15058, 222, 0, 32, '2019-01-28', 'am2', 'bloque', '2018-12-18', ''), +(15059, 222, 0, 32, '2019-01-28', 'pm1', 'bloque', '2018-12-18', ''), +(15060, 222, 0, 32, '2019-01-28', 'pm2', 'bloque', '2018-12-18', ''), +(15061, 222, 0, 32, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(15062, 222, 0, 32, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(15063, 222, 0, 32, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(15064, 222, 0, 32, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(15065, 222, 0, 32, '2019-01-30', 'am1', 'bloque', '2018-12-18', ''), +(15066, 222, 0, 32, '2019-01-30', 'am2', 'bloque', '2018-12-18', ''), +(15067, 222, 0, 32, '2019-01-30', 'pm1', 'bloque', '2018-12-18', ''), +(15068, 222, 0, 32, '2019-01-30', 'pm2', 'bloque', '2018-12-18', ''), +(15069, 222, 0, 32, '2019-01-31', 'am1', 'bloque', '2018-12-18', ''), +(15070, 222, 0, 32, '2019-01-31', 'am2', 'bloque', '2018-12-18', ''), +(15071, 222, 0, 32, '2019-01-31', 'pm1', 'bloque', '2018-12-18', ''), +(15072, 222, 0, 32, '2019-01-31', 'pm2', 'bloque', '2018-12-18', ''), +(15073, 222, 0, 32, '2019-02-01', 'am1', 'bloque', '2018-12-18', ''), +(15074, 222, 0, 32, '2019-02-01', 'am2', 'bloque', '2018-12-18', ''), +(15075, 222, 0, 32, '2019-02-01', 'pm1', 'bloque', '2018-12-18', ''), +(15076, 222, 0, 32, '2019-02-01', 'pm2', 'bloque', '2018-12-18', ''), +(15077, 222, 0, 32, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(15078, 222, 0, 32, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(15079, 222, 0, 32, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(15080, 222, 0, 32, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(15081, 222, 0, 32, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(15082, 222, 0, 32, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(15083, 222, 0, 32, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(15084, 222, 0, 32, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(15085, 222, 0, 32, '2019-02-06', 'am1', 'bloque', '2018-12-18', ''), +(15086, 222, 0, 32, '2019-02-06', 'am2', 'bloque', '2018-12-18', ''), +(15087, 222, 0, 32, '2019-02-06', 'pm1', 'bloque', '2018-12-18', ''), +(15088, 222, 0, 32, '2019-02-06', 'pm2', 'bloque', '2018-12-18', ''), +(15089, 222, 0, 32, '2019-02-07', 'am1', 'bloque', '2018-12-18', ''), +(15090, 222, 0, 32, '2019-02-07', 'am2', 'bloque', '2018-12-18', ''), +(15091, 222, 0, 32, '2019-02-07', 'pm1', 'bloque', '2018-12-18', ''), +(15092, 222, 0, 32, '2019-02-07', 'pm2', 'bloque', '2018-12-18', ''), +(15093, 222, 0, 32, '2019-02-08', 'am1', 'bloque', '2018-12-18', ''), +(15094, 222, 0, 32, '2019-02-08', 'am2', 'bloque', '2018-12-18', ''), +(15095, 222, 0, 32, '2019-02-08', 'pm1', 'bloque', '2018-12-18', ''), +(15096, 222, 0, 32, '2019-02-08', 'pm2', 'bloque', '2018-12-18', ''), +(15097, 223, 115, 9, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'ref'), +(15098, 223, 0, 9, '2019-01-17', 'am2', 'libre', '2018-12-18', ''), +(15099, 223, 0, 9, '2019-01-17', 'pm1', 'libre', '2018-12-18', ''), +(15100, 223, 0, 9, '2019-01-17', 'pm2', 'libre', '2018-12-18', ''), +(15101, 223, 0, 9, '2019-01-18', 'am1', 'bloque', '2018-12-18', ''), +(15102, 223, 0, 9, '2019-01-18', 'am2', 'bloque', '2018-12-18', ''), +(15103, 223, 0, 9, '2019-01-18', 'pm1', 'bloque', '2018-12-18', ''), +(15104, 223, 0, 9, '2019-01-18', 'pm2', 'bloque', '2018-12-18', ''), +(15105, 223, 0, 9, '2019-01-21', 'am1', 'bloque', '2018-12-18', ''), +(15106, 223, 0, 9, '2019-01-21', 'am2', 'bloque', '2018-12-18', ''), +(15107, 223, 0, 9, '2019-01-21', 'pm1', 'bloque', '2018-12-18', ''), +(15108, 223, 0, 9, '2019-01-21', 'pm2', 'bloque', '2018-12-18', ''), +(15109, 223, 0, 9, '2019-01-22', 'am1', 'bloque', '2018-12-18', ''), +(15110, 223, 0, 9, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(15111, 223, 0, 9, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(15112, 223, 0, 9, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(15113, 223, 0, 9, '2019-01-23', 'am1', 'bloque', '2018-12-18', ''), +(15114, 223, 0, 9, '2019-01-23', 'am2', 'bloque', '2018-12-18', ''), +(15115, 223, 0, 9, '2019-01-23', 'pm1', 'bloque', '2018-12-18', ''), +(15116, 223, 0, 9, '2019-01-23', 'pm2', 'bloque', '2018-12-18', ''), +(15117, 223, 0, 9, '2019-01-24', 'am1', 'bloque', '2018-12-18', ''), +(15118, 223, 0, 9, '2019-01-24', 'am2', 'bloque', '2018-12-18', ''), +(15119, 223, 0, 9, '2019-01-24', 'pm1', 'bloque', '2018-12-18', ''), +(15120, 223, 0, 9, '2019-01-24', 'pm2', 'bloque', '2018-12-18', ''), +(15121, 223, 0, 9, '2019-01-25', 'am1', 'bloque', '2018-12-18', ''), +(15122, 223, 0, 9, '2019-01-25', 'am2', 'bloque', '2018-12-18', ''), +(15123, 223, 0, 9, '2019-01-25', 'pm1', 'bloque', '2018-12-18', ''), +(15124, 223, 0, 9, '2019-01-25', 'pm2', 'bloque', '2018-12-18', ''), +(15125, 223, 0, 9, '2019-01-28', 'am1', 'bloque', '2018-12-18', ''), +(15126, 223, 0, 9, '2019-01-28', 'am2', 'bloque', '2018-12-18', ''), +(15127, 223, 0, 9, '2019-01-28', 'pm1', 'bloque', '2018-12-18', ''), +(15128, 223, 0, 9, '2019-01-28', 'pm2', 'bloque', '2018-12-18', ''), +(15129, 223, 0, 9, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(15130, 223, 0, 9, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(15131, 223, 0, 9, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(15132, 223, 0, 9, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(15133, 223, 0, 9, '2019-01-30', 'am1', 'bloque', '2018-12-18', ''), +(15134, 223, 0, 9, '2019-01-30', 'am2', 'bloque', '2018-12-18', ''), +(15135, 223, 0, 9, '2019-01-30', 'pm1', 'bloque', '2018-12-18', ''), +(15136, 223, 0, 9, '2019-01-30', 'pm2', 'bloque', '2018-12-18', ''), +(15137, 223, 0, 9, '2019-01-31', 'am1', 'bloque', '2018-12-18', ''), +(15138, 223, 0, 9, '2019-01-31', 'am2', 'bloque', '2018-12-18', ''), +(15139, 223, 0, 9, '2019-01-31', 'pm1', 'bloque', '2018-12-18', ''), +(15140, 223, 0, 9, '2019-01-31', 'pm2', 'bloque', '2018-12-18', ''), +(15141, 223, 0, 9, '2019-02-01', 'am1', 'bloque', '2018-12-18', ''), +(15142, 223, 0, 9, '2019-02-01', 'am2', 'bloque', '2018-12-18', ''), +(15143, 223, 0, 9, '2019-02-01', 'pm1', 'bloque', '2018-12-18', ''), +(15144, 223, 0, 9, '2019-02-01', 'pm2', 'bloque', '2018-12-18', ''), +(15145, 223, 0, 9, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(15146, 223, 0, 9, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(15147, 223, 0, 9, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(15148, 223, 0, 9, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(15149, 223, 0, 9, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(15150, 223, 0, 9, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(15151, 223, 0, 9, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(15152, 223, 0, 9, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(15153, 223, 0, 9, '2019-02-06', 'am1', 'bloque', '2018-12-18', ''), +(15154, 223, 0, 9, '2019-02-06', 'am2', 'bloque', '2018-12-18', ''), +(15155, 223, 0, 9, '2019-02-06', 'pm1', 'bloque', '2018-12-18', ''), +(15156, 223, 0, 9, '2019-02-06', 'pm2', 'bloque', '2018-12-18', ''), +(15157, 223, 0, 9, '2019-02-07', 'am1', 'bloque', '2018-12-18', ''), +(15158, 223, 0, 9, '2019-02-07', 'am2', 'bloque', '2018-12-18', ''), +(15159, 223, 0, 9, '2019-02-07', 'pm1', 'bloque', '2018-12-18', ''), +(15160, 223, 0, 9, '2019-02-07', 'pm2', 'bloque', '2018-12-18', ''), +(15161, 223, 0, 9, '2019-02-08', 'am1', 'bloque', '2018-12-18', ''), +(15162, 223, 0, 9, '2019-02-08', 'am2', 'bloque', '2018-12-18', ''), +(15163, 223, 0, 9, '2019-02-08', 'pm1', 'bloque', '2018-12-18', ''), +(15164, 223, 0, 9, '2019-02-08', 'pm2', 'bloque', '2018-12-18', ''), +(15165, 224, 116, 9, '2019-01-17', 'am1', 'reserve', '2018-12-18', 'cap'), +(15166, 224, 0, 9, '2019-01-17', 'am2', 'libre', '2018-12-18', ''), +(15167, 224, 0, 9, '2019-01-17', 'pm1', 'libre', '2018-12-18', ''), +(15168, 224, 0, 9, '2019-01-17', 'pm2', 'libre', '2018-12-18', ''), +(15169, 224, 0, 9, '2019-01-18', 'am1', 'bloque', '2018-12-18', ''), +(15170, 224, 0, 9, '2019-01-18', 'am2', 'bloque', '2018-12-18', ''), +(15171, 224, 0, 9, '2019-01-18', 'pm1', 'bloque', '2018-12-18', ''), +(15172, 224, 0, 9, '2019-01-18', 'pm2', 'bloque', '2018-12-18', ''), +(15173, 224, 0, 9, '2019-01-21', 'am1', 'bloque', '2018-12-18', ''), +(15174, 224, 0, 9, '2019-01-21', 'am2', 'bloque', '2018-12-18', ''), +(15175, 224, 0, 9, '2019-01-21', 'pm1', 'bloque', '2018-12-18', ''), +(15176, 224, 0, 9, '2019-01-21', 'pm2', 'bloque', '2018-12-18', ''), +(15177, 224, 0, 9, '2019-01-22', 'am1', 'bloque', '2018-12-18', ''), +(15178, 224, 0, 9, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(15179, 224, 0, 9, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(15180, 224, 0, 9, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(15181, 224, 0, 9, '2019-01-23', 'am1', 'bloque', '2018-12-18', ''), +(15182, 224, 0, 9, '2019-01-23', 'am2', 'bloque', '2018-12-18', ''), +(15183, 224, 0, 9, '2019-01-23', 'pm1', 'bloque', '2018-12-18', ''), +(15184, 224, 0, 9, '2019-01-23', 'pm2', 'bloque', '2018-12-18', ''), +(15185, 224, 0, 9, '2019-01-24', 'am1', 'bloque', '2018-12-18', ''), +(15186, 224, 0, 9, '2019-01-24', 'am2', 'bloque', '2018-12-18', ''), +(15187, 224, 0, 9, '2019-01-24', 'pm1', 'bloque', '2018-12-18', ''), +(15188, 224, 0, 9, '2019-01-24', 'pm2', 'bloque', '2018-12-18', ''), +(15189, 224, 0, 9, '2019-01-25', 'am1', 'bloque', '2018-12-18', ''), +(15190, 224, 0, 9, '2019-01-25', 'am2', 'bloque', '2018-12-18', ''), +(15191, 224, 0, 9, '2019-01-25', 'pm1', 'bloque', '2018-12-18', ''), +(15192, 224, 0, 9, '2019-01-25', 'pm2', 'bloque', '2018-12-18', ''), +(15193, 224, 0, 9, '2019-01-28', 'am1', 'bloque', '2018-12-18', ''), +(15194, 224, 0, 9, '2019-01-28', 'am2', 'bloque', '2018-12-18', ''), +(15195, 224, 0, 9, '2019-01-28', 'pm1', 'bloque', '2018-12-18', ''), +(15196, 224, 0, 9, '2019-01-28', 'pm2', 'bloque', '2018-12-18', ''), +(15197, 224, 0, 9, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(15198, 224, 0, 9, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(15199, 224, 0, 9, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(15200, 224, 0, 9, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(15201, 224, 0, 9, '2019-01-30', 'am1', 'bloque', '2018-12-18', ''), +(15202, 224, 0, 9, '2019-01-30', 'am2', 'bloque', '2018-12-18', ''), +(15203, 224, 0, 9, '2019-01-30', 'pm1', 'bloque', '2018-12-18', ''), +(15204, 224, 0, 9, '2019-01-30', 'pm2', 'bloque', '2018-12-18', ''), +(15205, 224, 0, 9, '2019-01-31', 'am1', 'bloque', '2018-12-18', ''), +(15206, 224, 0, 9, '2019-01-31', 'am2', 'bloque', '2018-12-18', ''), +(15207, 224, 0, 9, '2019-01-31', 'pm1', 'bloque', '2018-12-18', ''), +(15208, 224, 0, 9, '2019-01-31', 'pm2', 'bloque', '2018-12-18', ''), +(15209, 224, 0, 9, '2019-02-01', 'am1', 'bloque', '2018-12-18', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(15210, 224, 0, 9, '2019-02-01', 'am2', 'bloque', '2018-12-18', ''), +(15211, 224, 0, 9, '2019-02-01', 'pm1', 'bloque', '2018-12-18', ''), +(15212, 224, 0, 9, '2019-02-01', 'pm2', 'bloque', '2018-12-18', ''), +(15213, 224, 0, 9, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(15214, 224, 0, 9, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(15215, 224, 0, 9, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(15216, 224, 0, 9, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(15217, 224, 0, 9, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(15218, 224, 0, 9, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(15219, 224, 0, 9, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(15220, 224, 0, 9, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(15221, 224, 0, 9, '2019-02-06', 'am1', 'bloque', '2018-12-18', ''), +(15222, 224, 0, 9, '2019-02-06', 'am2', 'bloque', '2018-12-18', ''), +(15223, 224, 0, 9, '2019-02-06', 'pm1', 'bloque', '2018-12-18', ''), +(15224, 224, 0, 9, '2019-02-06', 'pm2', 'bloque', '2018-12-18', ''), +(15225, 224, 0, 9, '2019-02-07', 'am1', 'bloque', '2018-12-18', ''), +(15226, 224, 0, 9, '2019-02-07', 'am2', 'bloque', '2018-12-18', ''), +(15227, 224, 0, 9, '2019-02-07', 'pm1', 'bloque', '2018-12-18', ''), +(15228, 224, 0, 9, '2019-02-07', 'pm2', 'bloque', '2018-12-18', ''), +(15229, 224, 0, 9, '2019-02-08', 'am1', 'bloque', '2018-12-18', ''), +(15230, 224, 0, 9, '2019-02-08', 'am2', 'bloque', '2018-12-18', ''), +(15231, 224, 0, 9, '2019-02-08', 'pm1', 'bloque', '2018-12-18', ''), +(15232, 224, 0, 9, '2019-02-08', 'pm2', 'bloque', '2018-12-18', ''), +(15233, 225, 0, 9, '2019-01-17', 'am1', 'libre', '2018-12-18', ''), +(15234, 225, 0, 9, '2019-01-17', 'am2', 'libre', '2018-12-18', ''), +(15235, 225, 118, 9, '2019-01-17', 'pm1', 'reserve', '2018-12-18', 'cap'), +(15236, 225, 0, 9, '2019-01-17', 'pm2', 'libre', '2018-12-18', ''), +(15237, 225, 0, 9, '2019-01-18', 'am1', 'bloque', '2018-12-18', ''), +(15238, 225, 0, 9, '2019-01-18', 'am2', 'bloque', '2018-12-18', ''), +(15239, 225, 0, 9, '2019-01-18', 'pm1', 'bloque', '2018-12-18', ''), +(15240, 225, 0, 9, '2019-01-18', 'pm2', 'bloque', '2018-12-18', ''), +(15241, 225, 0, 9, '2019-01-21', 'am1', 'bloque', '2018-12-18', ''), +(15242, 225, 0, 9, '2019-01-21', 'am2', 'bloque', '2018-12-18', ''), +(15243, 225, 0, 9, '2019-01-21', 'pm1', 'bloque', '2018-12-18', ''), +(15244, 225, 0, 9, '2019-01-21', 'pm2', 'bloque', '2018-12-18', ''), +(15245, 225, 0, 9, '2019-01-22', 'am1', 'bloque', '2018-12-18', ''), +(15246, 225, 0, 9, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(15247, 225, 0, 9, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(15248, 225, 0, 9, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(15249, 225, 0, 9, '2019-01-23', 'am1', 'bloque', '2018-12-18', ''), +(15250, 225, 0, 9, '2019-01-23', 'am2', 'bloque', '2018-12-18', ''), +(15251, 225, 0, 9, '2019-01-23', 'pm1', 'bloque', '2018-12-18', ''), +(15252, 225, 0, 9, '2019-01-23', 'pm2', 'bloque', '2018-12-18', ''), +(15253, 225, 0, 9, '2019-01-24', 'am1', 'bloque', '2018-12-18', ''), +(15254, 225, 0, 9, '2019-01-24', 'am2', 'bloque', '2018-12-18', ''), +(15255, 225, 0, 9, '2019-01-24', 'pm1', 'bloque', '2018-12-18', ''), +(15256, 225, 0, 9, '2019-01-24', 'pm2', 'bloque', '2018-12-18', ''), +(15257, 225, 0, 9, '2019-01-25', 'am1', 'bloque', '2018-12-18', ''), +(15258, 225, 0, 9, '2019-01-25', 'am2', 'bloque', '2018-12-18', ''), +(15259, 225, 0, 9, '2019-01-25', 'pm1', 'bloque', '2018-12-18', ''), +(15260, 225, 0, 9, '2019-01-25', 'pm2', 'bloque', '2018-12-18', ''), +(15261, 225, 0, 9, '2019-01-28', 'am1', 'bloque', '2018-12-18', ''), +(15262, 225, 0, 9, '2019-01-28', 'am2', 'bloque', '2018-12-18', ''), +(15263, 225, 0, 9, '2019-01-28', 'pm1', 'bloque', '2018-12-18', ''), +(15264, 225, 0, 9, '2019-01-28', 'pm2', 'bloque', '2018-12-18', ''), +(15265, 225, 0, 9, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(15266, 225, 0, 9, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(15267, 225, 0, 9, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(15268, 225, 0, 9, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(15269, 225, 0, 9, '2019-01-30', 'am1', 'bloque', '2018-12-18', ''), +(15270, 225, 0, 9, '2019-01-30', 'am2', 'bloque', '2018-12-18', ''), +(15271, 225, 0, 9, '2019-01-30', 'pm1', 'bloque', '2018-12-18', ''), +(15272, 225, 0, 9, '2019-01-30', 'pm2', 'bloque', '2018-12-18', ''), +(15273, 225, 0, 9, '2019-01-31', 'am1', 'bloque', '2018-12-18', ''), +(15274, 225, 0, 9, '2019-01-31', 'am2', 'bloque', '2018-12-18', ''), +(15275, 225, 0, 9, '2019-01-31', 'pm1', 'bloque', '2018-12-18', ''), +(15276, 225, 0, 9, '2019-01-31', 'pm2', 'bloque', '2018-12-18', ''), +(15277, 225, 0, 9, '2019-02-01', 'am1', 'bloque', '2018-12-18', ''), +(15278, 225, 0, 9, '2019-02-01', 'am2', 'bloque', '2018-12-18', ''), +(15279, 225, 0, 9, '2019-02-01', 'pm1', 'bloque', '2018-12-18', ''), +(15280, 225, 0, 9, '2019-02-01', 'pm2', 'bloque', '2018-12-18', ''), +(15281, 225, 0, 9, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(15282, 225, 0, 9, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(15283, 225, 0, 9, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(15284, 225, 0, 9, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(15285, 225, 0, 9, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(15286, 225, 0, 9, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(15287, 225, 0, 9, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(15288, 225, 0, 9, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(15289, 225, 0, 9, '2019-02-06', 'am1', 'bloque', '2018-12-18', ''), +(15290, 225, 0, 9, '2019-02-06', 'am2', 'bloque', '2018-12-18', ''), +(15291, 225, 0, 9, '2019-02-06', 'pm1', 'bloque', '2018-12-18', ''), +(15292, 225, 0, 9, '2019-02-06', 'pm2', 'bloque', '2018-12-18', ''), +(15293, 225, 0, 9, '2019-02-07', 'am1', 'bloque', '2018-12-18', ''), +(15294, 225, 0, 9, '2019-02-07', 'am2', 'bloque', '2018-12-18', ''), +(15295, 225, 0, 9, '2019-02-07', 'pm1', 'bloque', '2018-12-18', ''), +(15296, 225, 0, 9, '2019-02-07', 'pm2', 'bloque', '2018-12-18', ''), +(15297, 225, 0, 9, '2019-02-08', 'am1', 'bloque', '2018-12-18', ''), +(15298, 225, 0, 9, '2019-02-08', 'am2', 'bloque', '2018-12-18', ''), +(15299, 225, 0, 9, '2019-02-08', 'pm1', 'bloque', '2018-12-18', ''), +(15300, 225, 0, 9, '2019-02-08', 'pm2', 'bloque', '2018-12-18', ''), +(15301, 226, 0, 413, '2019-01-17', 'am1', 'libre', '2018-12-18', ''), +(15302, 226, 0, 413, '2019-01-17', 'am2', 'libre', '2018-12-18', ''), +(15303, 226, 0, 413, '2019-01-17', 'pm1', 'libre', '2018-12-18', ''), +(15304, 226, 0, 413, '2019-01-17', 'pm2', 'libre', '2018-12-18', ''), +(15305, 226, 0, 413, '2019-01-18', 'am1', 'libre', '2018-12-18', 'ref'), +(15306, 226, 0, 413, '2019-01-18', 'am2', 'libre', '2018-12-18', 'ref'), +(15307, 226, 0, 413, '2019-01-18', 'pm1', 'libre', '2018-12-18', 'ref'), +(15308, 226, 0, 413, '2019-01-18', 'pm2', 'libre', '2018-12-18', 'ref'), +(15309, 226, 0, 413, '2019-01-21', 'am1', 'bloque', '2018-12-18', ''), +(15310, 226, 0, 413, '2019-01-21', 'am2', 'bloque', '2018-12-18', ''), +(15311, 226, 0, 413, '2019-01-21', 'pm1', 'bloque', '2018-12-18', ''), +(15312, 226, 0, 413, '2019-01-21', 'pm2', 'bloque', '2018-12-18', ''), +(15313, 226, 0, 413, '2019-01-22', 'am1', 'bloque', '2018-12-18', 'ref'), +(15314, 226, 0, 413, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(15315, 226, 0, 413, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(15316, 226, 0, 413, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(15317, 226, 0, 413, '2019-01-23', 'am1', 'libre', '2018-12-18', 'ref'), +(15318, 226, 0, 413, '2019-01-23', 'am2', 'libre', '2018-12-18', 'ref'), +(15319, 226, 0, 413, '2019-01-23', 'pm1', 'libre', '2018-12-18', 'ref'), +(15320, 226, 0, 413, '2019-01-23', 'pm2', 'libre', '2018-12-18', 'ref'), +(15321, 226, 0, 413, '2019-01-24', 'am1', 'libre', '2018-12-18', 'ref'), +(15322, 226, 0, 413, '2019-01-24', 'am2', 'libre', '2018-12-18', 'ref'), +(15323, 226, 0, 413, '2019-01-24', 'pm1', 'libre', '2018-12-18', 'ref'), +(15324, 226, 0, 413, '2019-01-24', 'pm2', 'libre', '2018-12-18', 'ref'), +(15325, 226, 0, 413, '2019-01-25', 'am1', 'libre', '2018-12-18', 'ref'), +(15326, 226, 0, 413, '2019-01-25', 'am2', 'libre', '2018-12-18', 'ref'), +(15327, 226, 0, 413, '2019-01-25', 'pm1', 'libre', '2018-12-18', 'ref'), +(15328, 226, 0, 413, '2019-01-25', 'pm2', 'libre', '2018-12-18', 'ref'), +(15329, 226, 0, 413, '2019-01-28', 'am1', 'bloque', '2018-12-18', ''), +(15330, 226, 0, 413, '2019-01-28', 'am2', 'bloque', '2018-12-18', ''), +(15331, 226, 0, 413, '2019-01-28', 'pm1', 'bloque', '2018-12-18', ''), +(15332, 226, 0, 413, '2019-01-28', 'pm2', 'bloque', '2018-12-18', ''), +(15333, 226, 0, 413, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(15334, 226, 0, 413, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(15335, 226, 0, 413, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(15336, 226, 0, 413, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(15337, 226, 0, 413, '2019-01-30', 'am1', 'libre', '2018-12-18', 'ref'), +(15338, 226, 0, 413, '2019-01-30', 'am2', 'libre', '2018-12-18', 'ref'), +(15339, 226, 0, 413, '2019-01-30', 'pm1', 'libre', '2018-12-18', 'ref'), +(15340, 226, 0, 413, '2019-01-30', 'pm2', 'libre', '2018-12-18', 'ref'), +(15341, 226, 0, 413, '2019-01-31', 'am1', 'libre', '2018-12-18', 'ref'), +(15342, 226, 0, 413, '2019-01-31', 'am2', 'libre', '2018-12-18', 'ref'), +(15343, 226, 0, 413, '2019-01-31', 'pm1', 'libre', '2018-12-18', 'ref'), +(15344, 226, 0, 413, '2019-01-31', 'pm2', 'libre', '2018-12-18', 'ref'), +(15345, 226, 0, 413, '2019-02-01', 'am1', 'libre', '2018-12-18', 'ref'), +(15346, 226, 0, 413, '2019-02-01', 'am2', 'libre', '2018-12-18', 'ref'), +(15347, 226, 0, 413, '2019-02-01', 'pm1', 'libre', '2018-12-18', 'ref'), +(15348, 226, 0, 413, '2019-02-01', 'pm2', 'libre', '2018-12-18', 'ref'), +(15349, 226, 0, 413, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(15350, 226, 0, 413, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(15351, 226, 0, 413, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(15352, 226, 0, 413, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(15353, 226, 0, 413, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(15354, 226, 0, 413, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(15355, 226, 0, 413, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(15356, 226, 0, 413, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(15357, 226, 0, 413, '2019-02-06', 'am1', 'libre', '2018-12-18', 'ref'), +(15358, 226, 0, 413, '2019-02-06', 'am2', 'libre', '2018-12-18', 'ref'), +(15359, 226, 0, 413, '2019-02-06', 'pm1', 'libre', '2018-12-18', 'ref'), +(15360, 226, 0, 413, '2019-02-06', 'pm2', 'libre', '2018-12-18', 'ref'), +(15361, 226, 0, 413, '2019-02-07', 'am1', 'libre', '2018-12-18', 'ref'), +(15362, 226, 0, 413, '2019-02-07', 'am2', 'libre', '2018-12-18', 'ref'), +(15363, 226, 0, 413, '2019-02-07', 'pm1', 'libre', '2018-12-18', 'ref'), +(15364, 226, 0, 413, '2019-02-07', 'pm2', 'libre', '2018-12-18', 'ref'), +(15365, 226, 0, 413, '2019-02-08', 'am1', 'libre', '2018-12-18', 'ref'), +(15366, 226, 0, 413, '2019-02-08', 'am2', 'libre', '2018-12-18', 'ref'), +(15367, 226, 0, 413, '2019-02-08', 'pm1', 'libre', '2018-12-18', 'ref'), +(15368, 226, 0, 413, '2019-02-08', 'pm2', 'libre', '2018-12-18', 'ref'), +(15369, 227, 0, 357, '2019-01-17', 'am1', 'libre', '2018-12-18', ''), +(15370, 227, 0, 357, '2019-01-17', 'am2', 'libre', '2018-12-18', ''), +(15371, 227, 0, 357, '2019-01-17', 'pm1', 'libre', '2018-12-18', ''), +(15372, 227, 0, 357, '2019-01-17', 'pm2', 'libre', '2018-12-18', ''), +(15373, 227, 0, 357, '2019-01-18', 'am1', 'bloque', '2018-12-18', ''), +(15374, 227, 0, 357, '2019-01-18', 'am2', 'bloque', '2018-12-18', ''), +(15375, 227, 0, 357, '2019-01-18', 'pm1', 'bloque', '2018-12-18', ''), +(15376, 227, 0, 357, '2019-01-18', 'pm2', 'bloque', '2018-12-18', ''), +(15377, 227, 0, 357, '2019-01-21', 'am1', 'bloque', '2018-12-18', ''), +(15378, 227, 0, 357, '2019-01-21', 'am2', 'bloque', '2018-12-18', ''), +(15379, 227, 0, 357, '2019-01-21', 'pm1', 'bloque', '2018-12-18', ''), +(15380, 227, 0, 357, '2019-01-21', 'pm2', 'bloque', '2018-12-18', ''), +(15381, 227, 0, 357, '2019-01-22', 'am1', 'bloque', '2018-12-18', ''), +(15382, 227, 0, 357, '2019-01-22', 'am2', 'bloque', '2018-12-18', ''), +(15383, 227, 0, 357, '2019-01-22', 'pm1', 'bloque', '2018-12-18', ''), +(15384, 227, 0, 357, '2019-01-22', 'pm2', 'bloque', '2018-12-18', ''), +(15385, 227, 0, 357, '2019-01-23', 'am1', 'bloque', '2018-12-18', ''), +(15386, 227, 0, 357, '2019-01-23', 'am2', 'bloque', '2018-12-18', ''), +(15387, 227, 0, 357, '2019-01-23', 'pm1', 'bloque', '2018-12-18', ''), +(15388, 227, 0, 357, '2019-01-23', 'pm2', 'bloque', '2018-12-18', ''), +(15389, 227, 0, 357, '2019-01-24', 'am1', 'bloque', '2018-12-18', ''), +(15390, 227, 0, 357, '2019-01-24', 'am2', 'bloque', '2018-12-18', ''), +(15391, 227, 0, 357, '2019-01-24', 'pm1', 'bloque', '2018-12-18', ''), +(15392, 227, 0, 357, '2019-01-24', 'pm2', 'bloque', '2018-12-18', ''), +(15393, 227, 0, 357, '2019-01-25', 'am1', 'bloque', '2018-12-18', ''), +(15394, 227, 0, 357, '2019-01-25', 'am2', 'bloque', '2018-12-18', ''), +(15395, 227, 0, 357, '2019-01-25', 'pm1', 'bloque', '2018-12-18', ''), +(15396, 227, 0, 357, '2019-01-25', 'pm2', 'bloque', '2018-12-18', ''), +(15397, 227, 0, 357, '2019-01-28', 'am1', 'bloque', '2018-12-18', ''), +(15398, 227, 0, 357, '2019-01-28', 'am2', 'bloque', '2018-12-18', ''), +(15399, 227, 0, 357, '2019-01-28', 'pm1', 'bloque', '2018-12-18', ''), +(15400, 227, 0, 357, '2019-01-28', 'pm2', 'bloque', '2018-12-18', ''), +(15401, 227, 0, 357, '2019-01-29', 'am1', 'bloque', '2018-12-18', ''), +(15402, 227, 0, 357, '2019-01-29', 'am2', 'bloque', '2018-12-18', ''), +(15403, 227, 0, 357, '2019-01-29', 'pm1', 'bloque', '2018-12-18', ''), +(15404, 227, 0, 357, '2019-01-29', 'pm2', 'bloque', '2018-12-18', ''), +(15405, 227, 0, 357, '2019-01-30', 'am1', 'bloque', '2018-12-18', ''), +(15406, 227, 0, 357, '2019-01-30', 'am2', 'bloque', '2018-12-18', ''), +(15407, 227, 0, 357, '2019-01-30', 'pm1', 'bloque', '2018-12-18', ''), +(15408, 227, 0, 357, '2019-01-30', 'pm2', 'bloque', '2018-12-18', ''), +(15409, 227, 0, 357, '2019-01-31', 'am1', 'bloque', '2018-12-18', ''), +(15410, 227, 0, 357, '2019-01-31', 'am2', 'bloque', '2018-12-18', ''), +(15411, 227, 0, 357, '2019-01-31', 'pm1', 'bloque', '2018-12-18', ''), +(15412, 227, 0, 357, '2019-01-31', 'pm2', 'bloque', '2018-12-18', ''), +(15413, 227, 0, 357, '2019-02-01', 'am1', 'bloque', '2018-12-18', ''), +(15414, 227, 0, 357, '2019-02-01', 'am2', 'bloque', '2018-12-18', ''), +(15415, 227, 0, 357, '2019-02-01', 'pm1', 'bloque', '2018-12-18', ''), +(15416, 227, 0, 357, '2019-02-01', 'pm2', 'bloque', '2018-12-18', ''), +(15417, 227, 0, 357, '2019-02-04', 'am1', 'bloque', '2018-12-18', ''), +(15418, 227, 0, 357, '2019-02-04', 'am2', 'bloque', '2018-12-18', ''), +(15419, 227, 0, 357, '2019-02-04', 'pm1', 'bloque', '2018-12-18', ''), +(15420, 227, 0, 357, '2019-02-04', 'pm2', 'bloque', '2018-12-18', ''), +(15421, 227, 0, 357, '2019-02-05', 'am1', 'bloque', '2018-12-18', ''), +(15422, 227, 0, 357, '2019-02-05', 'am2', 'bloque', '2018-12-18', ''), +(15423, 227, 0, 357, '2019-02-05', 'pm1', 'bloque', '2018-12-18', ''), +(15424, 227, 0, 357, '2019-02-05', 'pm2', 'bloque', '2018-12-18', ''), +(15425, 227, 0, 357, '2019-02-06', 'am1', 'bloque', '2018-12-18', ''), +(15426, 227, 0, 357, '2019-02-06', 'am2', 'bloque', '2018-12-18', ''), +(15427, 227, 0, 357, '2019-02-06', 'pm1', 'bloque', '2018-12-18', ''), +(15428, 227, 0, 357, '2019-02-06', 'pm2', 'bloque', '2018-12-18', ''), +(15429, 227, 0, 357, '2019-02-07', 'am1', 'bloque', '2018-12-18', ''), +(15430, 227, 0, 357, '2019-02-07', 'am2', 'bloque', '2018-12-18', ''), +(15431, 227, 0, 357, '2019-02-07', 'pm1', 'bloque', '2018-12-18', ''), +(15432, 227, 0, 357, '2019-02-07', 'pm2', 'bloque', '2018-12-18', ''), +(15433, 227, 0, 357, '2019-02-08', 'am1', 'bloque', '2018-12-18', ''), +(15434, 227, 0, 357, '2019-02-08', 'am2', 'bloque', '2018-12-18', ''), +(15435, 227, 0, 357, '2019-02-08', 'pm1', 'bloque', '2018-12-18', ''), +(15436, 227, 0, 357, '2019-02-08', 'pm2', 'bloque', '2018-12-18', ''), +(15437, 228, 0, 307, '2019-01-17', 'am1', 'libre', '2018-12-19', ''), +(15438, 228, 0, 307, '2019-01-17', 'am2', 'libre', '2018-12-19', 'ref'), +(15439, 228, 0, 307, '2019-01-17', 'pm1', 'libre', '2018-12-19', ''), +(15440, 228, 0, 307, '2019-01-17', 'pm2', 'libre', '2018-12-19', ''), +(15441, 228, 0, 307, '2019-01-18', 'am1', 'bloque', '2018-12-19', ''), +(15442, 228, 0, 307, '2019-01-18', 'am2', 'bloque', '2018-12-19', ''), +(15443, 228, 0, 307, '2019-01-18', 'pm1', 'bloque', '2018-12-19', ''), +(15444, 228, 0, 307, '2019-01-18', 'pm2', 'bloque', '2018-12-19', ''), +(15445, 228, 0, 307, '2019-01-21', 'am1', 'bloque', '2018-12-19', ''), +(15446, 228, 0, 307, '2019-01-21', 'am2', 'bloque', '2018-12-19', ''), +(15447, 228, 0, 307, '2019-01-21', 'pm1', 'bloque', '2018-12-19', ''), +(15448, 228, 0, 307, '2019-01-21', 'pm2', 'bloque', '2018-12-19', ''), +(15449, 228, 0, 307, '2019-01-22', 'am1', 'libre', '2018-12-19', 'ref'), +(15450, 228, 0, 307, '2019-01-22', 'am2', 'libre', '2018-12-19', 'ref'), +(15451, 228, 0, 307, '2019-01-22', 'pm1', 'bloque', '2018-12-19', ''), +(15452, 228, 0, 307, '2019-01-22', 'pm2', 'bloque', '2018-12-19', ''), +(15453, 228, 0, 307, '2019-01-23', 'am1', 'libre', '2018-12-19', 'ref'), +(15454, 228, 0, 307, '2019-01-23', 'am2', 'libre', '2018-12-19', 'ref'), +(15455, 228, 0, 307, '2019-01-23', 'pm1', 'bloque', '2018-12-19', ''), +(15456, 228, 0, 307, '2019-01-23', 'pm2', 'bloque', '2018-12-19', ''), +(15457, 228, 0, 307, '2019-01-24', 'am1', 'bloque', '2018-12-19', ''), +(15458, 228, 0, 307, '2019-01-24', 'am2', 'bloque', '2018-12-19', ''), +(15459, 228, 0, 307, '2019-01-24', 'pm1', 'bloque', '2018-12-19', ''), +(15460, 228, 0, 307, '2019-01-24', 'pm2', 'bloque', '2018-12-19', ''), +(15461, 228, 0, 307, '2019-01-25', 'am1', 'bloque', '2018-12-19', ''), +(15462, 228, 0, 307, '2019-01-25', 'am2', 'bloque', '2018-12-19', ''), +(15463, 228, 0, 307, '2019-01-25', 'pm1', 'libre', '2018-12-19', 'ref'), +(15464, 228, 0, 307, '2019-01-25', 'pm2', 'libre', '2018-12-19', 'ref'), +(15465, 228, 0, 307, '2019-01-28', 'am1', 'libre', '2018-12-19', 'ref'), +(15466, 228, 0, 307, '2019-01-28', 'am2', 'libre', '2018-12-19', 'ref'), +(15467, 228, 0, 307, '2019-01-28', 'pm1', 'bloque', '2018-12-19', ''), +(15468, 228, 0, 307, '2019-01-28', 'pm2', 'bloque', '2018-12-19', ''), +(15469, 228, 0, 307, '2019-01-29', 'am1', 'bloque', '2018-12-19', ''), +(15470, 228, 0, 307, '2019-01-29', 'am2', 'bloque', '2018-12-19', ''), +(15471, 228, 0, 307, '2019-01-29', 'pm1', 'bloque', '2018-12-19', ''), +(15472, 228, 0, 307, '2019-01-29', 'pm2', 'bloque', '2018-12-19', ''), +(15473, 228, 0, 307, '2019-01-30', 'am1', 'bloque', '2018-12-19', ''), +(15474, 228, 0, 307, '2019-01-30', 'am2', 'bloque', '2018-12-19', ''), +(15475, 228, 0, 307, '2019-01-30', 'pm1', 'bloque', '2018-12-19', ''), +(15476, 228, 0, 307, '2019-01-30', 'pm2', 'bloque', '2018-12-19', ''), +(15477, 228, 0, 307, '2019-01-31', 'am1', 'bloque', '2018-12-19', ''), +(15478, 228, 0, 307, '2019-01-31', 'am2', 'bloque', '2018-12-19', ''), +(15479, 228, 0, 307, '2019-01-31', 'pm1', 'libre', '2018-12-19', 'ref'), +(15480, 228, 0, 307, '2019-01-31', 'pm2', 'libre', '2018-12-19', 'ref'), +(15481, 228, 0, 307, '2019-02-01', 'am1', 'bloque', '2018-12-19', ''), +(15482, 228, 0, 307, '2019-02-01', 'am2', 'bloque', '2018-12-19', ''), +(15483, 228, 0, 307, '2019-02-01', 'pm1', 'bloque', '2018-12-19', ''), +(15484, 228, 0, 307, '2019-02-01', 'pm2', 'bloque', '2018-12-19', ''), +(15485, 228, 0, 307, '2019-02-04', 'am1', 'bloque', '2018-12-19', ''), +(15486, 228, 0, 307, '2019-02-04', 'am2', 'bloque', '2018-12-19', ''), +(15487, 228, 0, 307, '2019-02-04', 'pm1', 'bloque', '2018-12-19', ''), +(15488, 228, 0, 307, '2019-02-04', 'pm2', 'bloque', '2018-12-19', ''), +(15489, 228, 0, 307, '2019-02-05', 'am1', 'libre', '2018-12-19', 'ref'), +(15490, 228, 0, 307, '2019-02-05', 'am2', 'libre', '2018-12-19', 'ref'), +(15491, 228, 0, 307, '2019-02-05', 'pm1', 'bloque', '2018-12-19', ''), +(15492, 228, 0, 307, '2019-02-05', 'pm2', 'bloque', '2018-12-19', ''), +(15493, 228, 0, 307, '2019-02-06', 'am1', 'libre', '2018-12-19', 'ref'), +(15494, 228, 0, 307, '2019-02-06', 'am2', 'libre', '2018-12-19', 'ref'), +(15495, 228, 0, 307, '2019-02-06', 'pm1', 'bloque', '2018-12-19', ''), +(15496, 228, 0, 307, '2019-02-06', 'pm2', 'bloque', '2018-12-19', ''), +(15497, 228, 0, 307, '2019-02-07', 'am1', 'bloque', '2018-12-19', ''), +(15498, 228, 0, 307, '2019-02-07', 'am2', 'bloque', '2018-12-19', ''), +(15499, 228, 0, 307, '2019-02-07', 'pm1', 'bloque', '2018-12-19', ''), +(15500, 228, 0, 307, '2019-02-07', 'pm2', 'bloque', '2018-12-19', ''), +(15501, 228, 0, 307, '2019-02-08', 'am1', 'bloque', '2018-12-19', ''), +(15502, 228, 0, 307, '2019-02-08', 'am2', 'bloque', '2018-12-19', ''), +(15503, 228, 0, 307, '2019-02-08', 'pm1', 'bloque', '2018-12-19', ''), +(15504, 228, 0, 307, '2019-02-08', 'pm2', 'bloque', '2018-12-19', ''), +(15505, 229, 0, 36, '2019-01-17', 'am1', 'libre', '2018-12-19', ''), +(15506, 229, 0, 36, '2019-01-17', 'am2', 'libre', '2018-12-19', ''), +(15507, 229, 128, 36, '2019-01-17', 'pm1', 'reserve', '2018-12-19', 'ref'), +(15508, 229, 0, 36, '2019-01-17', 'pm2', 'libre', '2018-12-19', ''), +(15509, 229, 0, 36, '2019-01-18', 'am1', 'bloque', '2018-12-19', ''), +(15510, 229, 0, 36, '2019-01-18', 'am2', 'bloque', '2018-12-19', ''), +(15511, 229, 0, 36, '2019-01-18', 'pm1', 'bloque', '2018-12-19', ''), +(15512, 229, 0, 36, '2019-01-18', 'pm2', 'bloque', '2018-12-19', ''), +(15513, 229, 0, 36, '2019-01-21', 'am1', 'bloque', '2018-12-19', ''), +(15514, 229, 0, 36, '2019-01-21', 'am2', 'bloque', '2018-12-19', ''), +(15515, 229, 0, 36, '2019-01-21', 'pm1', 'bloque', '2018-12-19', ''), +(15516, 229, 0, 36, '2019-01-21', 'pm2', 'bloque', '2018-12-19', ''), +(15517, 229, 0, 36, '2019-01-22', 'am1', 'bloque', '2018-12-19', ''), +(15518, 229, 0, 36, '2019-01-22', 'am2', 'bloque', '2018-12-19', ''), +(15519, 229, 0, 36, '2019-01-22', 'pm1', 'bloque', '2018-12-19', ''), +(15520, 229, 0, 36, '2019-01-22', 'pm2', 'bloque', '2018-12-19', ''), +(15521, 229, 0, 36, '2019-01-23', 'am1', 'bloque', '2018-12-19', ''), +(15522, 229, 0, 36, '2019-01-23', 'am2', 'bloque', '2018-12-19', ''), +(15523, 229, 0, 36, '2019-01-23', 'pm1', 'bloque', '2018-12-19', ''), +(15524, 229, 0, 36, '2019-01-23', 'pm2', 'bloque', '2018-12-19', ''), +(15525, 229, 0, 36, '2019-01-24', 'am1', 'bloque', '2018-12-19', ''), +(15526, 229, 0, 36, '2019-01-24', 'am2', 'bloque', '2018-12-19', ''), +(15527, 229, 0, 36, '2019-01-24', 'pm1', 'bloque', '2018-12-19', ''), +(15528, 229, 0, 36, '2019-01-24', 'pm2', 'bloque', '2018-12-19', ''), +(15529, 229, 0, 36, '2019-01-25', 'am1', 'bloque', '2018-12-19', ''), +(15530, 229, 0, 36, '2019-01-25', 'am2', 'bloque', '2018-12-19', ''), +(15531, 229, 0, 36, '2019-01-25', 'pm1', 'bloque', '2018-12-19', ''), +(15532, 229, 0, 36, '2019-01-25', 'pm2', 'bloque', '2018-12-19', ''), +(15533, 229, 0, 36, '2019-01-28', 'am1', 'bloque', '2018-12-19', ''), +(15534, 229, 0, 36, '2019-01-28', 'am2', 'bloque', '2018-12-19', ''), +(15535, 229, 0, 36, '2019-01-28', 'pm1', 'bloque', '2018-12-19', ''), +(15536, 229, 0, 36, '2019-01-28', 'pm2', 'bloque', '2018-12-19', ''), +(15537, 229, 0, 36, '2019-01-29', 'am1', 'bloque', '2018-12-19', ''), +(15538, 229, 0, 36, '2019-01-29', 'am2', 'bloque', '2018-12-19', ''), +(15539, 229, 0, 36, '2019-01-29', 'pm1', 'bloque', '2018-12-19', ''), +(15540, 229, 0, 36, '2019-01-29', 'pm2', 'bloque', '2018-12-19', ''), +(15541, 229, 0, 36, '2019-01-30', 'am1', 'bloque', '2018-12-19', ''), +(15542, 229, 0, 36, '2019-01-30', 'am2', 'bloque', '2018-12-19', ''), +(15543, 229, 0, 36, '2019-01-30', 'pm1', 'bloque', '2018-12-19', ''), +(15544, 229, 0, 36, '2019-01-30', 'pm2', 'bloque', '2018-12-19', ''), +(15545, 229, 0, 36, '2019-01-31', 'am1', 'bloque', '2018-12-19', ''), +(15546, 229, 0, 36, '2019-01-31', 'am2', 'bloque', '2018-12-19', ''), +(15547, 229, 0, 36, '2019-01-31', 'pm1', 'bloque', '2018-12-19', ''), +(15548, 229, 0, 36, '2019-01-31', 'pm2', 'bloque', '2018-12-19', ''), +(15549, 229, 0, 36, '2019-02-01', 'am1', 'bloque', '2018-12-19', ''), +(15550, 229, 0, 36, '2019-02-01', 'am2', 'bloque', '2018-12-19', ''), +(15551, 229, 0, 36, '2019-02-01', 'pm1', 'bloque', '2018-12-19', ''), +(15552, 229, 0, 36, '2019-02-01', 'pm2', 'bloque', '2018-12-19', ''), +(15553, 229, 0, 36, '2019-02-04', 'am1', 'bloque', '2018-12-19', ''), +(15554, 229, 0, 36, '2019-02-04', 'am2', 'bloque', '2018-12-19', ''), +(15555, 229, 0, 36, '2019-02-04', 'pm1', 'bloque', '2018-12-19', ''), +(15556, 229, 0, 36, '2019-02-04', 'pm2', 'bloque', '2018-12-19', ''), +(15557, 229, 0, 36, '2019-02-05', 'am1', 'bloque', '2018-12-19', ''), +(15558, 229, 0, 36, '2019-02-05', 'am2', 'bloque', '2018-12-19', ''), +(15559, 229, 0, 36, '2019-02-05', 'pm1', 'bloque', '2018-12-19', ''), +(15560, 229, 0, 36, '2019-02-05', 'pm2', 'bloque', '2018-12-19', ''), +(15561, 229, 0, 36, '2019-02-06', 'am1', 'bloque', '2018-12-19', ''), +(15562, 229, 0, 36, '2019-02-06', 'am2', 'bloque', '2018-12-19', ''), +(15563, 229, 0, 36, '2019-02-06', 'pm1', 'bloque', '2018-12-19', ''), +(15564, 229, 0, 36, '2019-02-06', 'pm2', 'bloque', '2018-12-19', ''), +(15565, 229, 0, 36, '2019-02-07', 'am1', 'bloque', '2018-12-19', ''), +(15566, 229, 0, 36, '2019-02-07', 'am2', 'bloque', '2018-12-19', ''), +(15567, 229, 0, 36, '2019-02-07', 'pm1', 'bloque', '2018-12-19', ''), +(15568, 229, 0, 36, '2019-02-07', 'pm2', 'bloque', '2018-12-19', ''), +(15569, 229, 0, 36, '2019-02-08', 'am1', 'bloque', '2018-12-19', ''), +(15570, 229, 0, 36, '2019-02-08', 'am2', 'bloque', '2018-12-19', ''), +(15571, 229, 0, 36, '2019-02-08', 'pm1', 'bloque', '2018-12-19', ''), +(15572, 229, 0, 36, '2019-02-08', 'pm2', 'bloque', '2018-12-19', ''), +(15573, 230, 0, 11, '2019-01-17', 'am1', 'libre', '2018-12-19', ''), +(15574, 230, 0, 11, '2019-01-17', 'am2', 'libre', '2018-12-19', ''), +(15575, 230, 0, 11, '2019-01-17', 'pm1', 'libre', '2018-12-19', ''), +(15576, 230, 0, 11, '2019-01-17', 'pm2', 'libre', '2018-12-19', ''), +(15577, 230, 0, 11, '2019-01-18', 'am1', 'bloque', '2018-12-19', ''), +(15578, 230, 0, 11, '2019-01-18', 'am2', 'bloque', '2018-12-19', ''), +(15579, 230, 0, 11, '2019-01-18', 'pm1', 'bloque', '2018-12-19', ''), +(15580, 230, 0, 11, '2019-01-18', 'pm2', 'bloque', '2018-12-19', ''), +(15581, 230, 0, 11, '2019-01-21', 'am1', 'bloque', '2018-12-19', ''), +(15582, 230, 0, 11, '2019-01-21', 'am2', 'bloque', '2018-12-19', ''), +(15583, 230, 0, 11, '2019-01-21', 'pm1', 'bloque', '2018-12-19', ''), +(15584, 230, 0, 11, '2019-01-21', 'pm2', 'bloque', '2018-12-19', ''), +(15585, 230, 0, 11, '2019-01-22', 'am1', 'bloque', '2018-12-19', ''), +(15586, 230, 0, 11, '2019-01-22', 'am2', 'bloque', '2018-12-19', ''), +(15587, 230, 0, 11, '2019-01-22', 'pm1', 'bloque', '2018-12-19', ''), +(15588, 230, 0, 11, '2019-01-22', 'pm2', 'bloque', '2018-12-19', ''), +(15589, 230, 0, 11, '2019-01-23', 'am1', 'bloque', '2018-12-19', ''), +(15590, 230, 0, 11, '2019-01-23', 'am2', 'bloque', '2018-12-19', ''), +(15591, 230, 0, 11, '2019-01-23', 'pm1', 'bloque', '2018-12-19', ''), +(15592, 230, 0, 11, '2019-01-23', 'pm2', 'bloque', '2018-12-19', ''), +(15593, 230, 0, 11, '2019-01-24', 'am1', 'bloque', '2018-12-19', ''), +(15594, 230, 0, 11, '2019-01-24', 'am2', 'bloque', '2018-12-19', ''), +(15595, 230, 0, 11, '2019-01-24', 'pm1', 'bloque', '2018-12-19', ''), +(15596, 230, 0, 11, '2019-01-24', 'pm2', 'bloque', '2018-12-19', ''), +(15597, 230, 0, 11, '2019-01-25', 'am1', 'bloque', '2018-12-19', ''), +(15598, 230, 0, 11, '2019-01-25', 'am2', 'bloque', '2018-12-19', ''), +(15599, 230, 0, 11, '2019-01-25', 'pm1', 'bloque', '2018-12-19', ''), +(15600, 230, 0, 11, '2019-01-25', 'pm2', 'bloque', '2018-12-19', ''), +(15601, 230, 0, 11, '2019-01-28', 'am1', 'bloque', '2018-12-19', ''), +(15602, 230, 0, 11, '2019-01-28', 'am2', 'bloque', '2018-12-19', ''), +(15603, 230, 0, 11, '2019-01-28', 'pm1', 'bloque', '2018-12-19', ''), +(15604, 230, 0, 11, '2019-01-28', 'pm2', 'bloque', '2018-12-19', ''), +(15605, 230, 0, 11, '2019-01-29', 'am1', 'bloque', '2018-12-19', ''), +(15606, 230, 0, 11, '2019-01-29', 'am2', 'bloque', '2018-12-19', ''), +(15607, 230, 0, 11, '2019-01-29', 'pm1', 'bloque', '2018-12-19', ''), +(15608, 230, 0, 11, '2019-01-29', 'pm2', 'bloque', '2018-12-19', ''), +(15609, 230, 0, 11, '2019-01-30', 'am1', 'bloque', '2018-12-19', ''), +(15610, 230, 0, 11, '2019-01-30', 'am2', 'bloque', '2018-12-19', ''), +(15611, 230, 0, 11, '2019-01-30', 'pm1', 'bloque', '2018-12-19', ''), +(15612, 230, 0, 11, '2019-01-30', 'pm2', 'bloque', '2018-12-19', ''), +(15613, 230, 0, 11, '2019-01-31', 'am1', 'bloque', '2018-12-19', ''), +(15614, 230, 0, 11, '2019-01-31', 'am2', 'bloque', '2018-12-19', ''), +(15615, 230, 0, 11, '2019-01-31', 'pm1', 'bloque', '2018-12-19', ''), +(15616, 230, 0, 11, '2019-01-31', 'pm2', 'bloque', '2018-12-19', ''), +(15617, 230, 0, 11, '2019-02-01', 'am1', 'bloque', '2018-12-19', ''), +(15618, 230, 0, 11, '2019-02-01', 'am2', 'bloque', '2018-12-19', ''), +(15619, 230, 0, 11, '2019-02-01', 'pm1', 'bloque', '2018-12-19', ''), +(15620, 230, 0, 11, '2019-02-01', 'pm2', 'bloque', '2018-12-19', ''), +(15621, 230, 0, 11, '2019-02-04', 'am1', 'bloque', '2018-12-19', ''), +(15622, 230, 0, 11, '2019-02-04', 'am2', 'bloque', '2018-12-19', ''), +(15623, 230, 0, 11, '2019-02-04', 'pm1', 'bloque', '2018-12-19', ''), +(15624, 230, 0, 11, '2019-02-04', 'pm2', 'bloque', '2018-12-19', ''), +(15625, 230, 0, 11, '2019-02-05', 'am1', 'bloque', '2018-12-19', ''), +(15626, 230, 0, 11, '2019-02-05', 'am2', 'bloque', '2018-12-19', ''), +(15627, 230, 0, 11, '2019-02-05', 'pm1', 'bloque', '2018-12-19', ''), +(15628, 230, 0, 11, '2019-02-05', 'pm2', 'bloque', '2018-12-19', ''), +(15629, 230, 0, 11, '2019-02-06', 'am1', 'bloque', '2018-12-19', ''), +(15630, 230, 0, 11, '2019-02-06', 'am2', 'bloque', '2018-12-19', ''), +(15631, 230, 0, 11, '2019-02-06', 'pm1', 'bloque', '2018-12-19', ''), +(15632, 230, 0, 11, '2019-02-06', 'pm2', 'bloque', '2018-12-19', ''), +(15633, 230, 0, 11, '2019-02-07', 'am1', 'bloque', '2018-12-19', ''), +(15634, 230, 0, 11, '2019-02-07', 'am2', 'bloque', '2018-12-19', ''), +(15635, 230, 0, 11, '2019-02-07', 'pm1', 'bloque', '2018-12-19', ''), +(15636, 230, 0, 11, '2019-02-07', 'pm2', 'bloque', '2018-12-19', ''), +(15637, 230, 0, 11, '2019-02-08', 'am1', 'bloque', '2018-12-19', ''), +(15638, 230, 0, 11, '2019-02-08', 'am2', 'bloque', '2018-12-19', ''), +(15639, 230, 0, 11, '2019-02-08', 'pm1', 'bloque', '2018-12-19', ''), +(15640, 230, 0, 11, '2019-02-08', 'pm2', 'bloque', '2018-12-19', ''), +(15641, 231, 0, 420, '2019-01-17', 'am1', 'libre', '2018-12-19', ''), +(15642, 231, 0, 420, '2019-01-17', 'am2', 'libre', '2018-12-19', ''), +(15643, 231, 178, 420, '2019-01-17', 'pm1', 'reserve', '2018-12-23', 'ref'), +(15644, 231, 0, 420, '2019-01-17', 'pm2', 'libre', '2018-12-19', ''), +(15645, 231, 0, 420, '2019-01-18', 'am1', 'bloque', '2018-12-19', ''), +(15646, 231, 0, 420, '2019-01-18', 'am2', 'bloque', '2018-12-19', ''), +(15647, 231, 0, 420, '2019-01-18', 'pm1', 'bloque', '2018-12-19', ''), +(15648, 231, 0, 420, '2019-01-18', 'pm2', 'bloque', '2018-12-19', ''), +(15649, 231, 0, 420, '2019-01-21', 'am1', 'bloque', '2018-12-19', ''), +(15650, 231, 0, 420, '2019-01-21', 'am2', 'bloque', '2018-12-19', ''), +(15651, 231, 0, 420, '2019-01-21', 'pm1', 'bloque', '2018-12-19', ''), +(15652, 231, 0, 420, '2019-01-21', 'pm2', 'bloque', '2018-12-19', ''), +(15653, 231, 0, 420, '2019-01-22', 'am1', 'bloque', '2018-12-19', ''), +(15654, 231, 0, 420, '2019-01-22', 'am2', 'bloque', '2018-12-19', ''), +(15655, 231, 0, 420, '2019-01-22', 'pm1', 'bloque', '2018-12-19', ''), +(15656, 231, 0, 420, '2019-01-22', 'pm2', 'bloque', '2018-12-19', ''), +(15657, 231, 0, 420, '2019-01-23', 'am1', 'bloque', '2018-12-19', ''), +(15658, 231, 0, 420, '2019-01-23', 'am2', 'bloque', '2018-12-19', ''), +(15659, 231, 0, 420, '2019-01-23', 'pm1', 'bloque', '2018-12-19', ''), +(15660, 231, 0, 420, '2019-01-23', 'pm2', 'bloque', '2018-12-19', ''), +(15661, 231, 0, 420, '2019-01-24', 'am1', 'bloque', '2018-12-19', ''), +(15662, 231, 0, 420, '2019-01-24', 'am2', 'bloque', '2018-12-19', ''), +(15663, 231, 0, 420, '2019-01-24', 'pm1', 'bloque', '2018-12-19', ''), +(15664, 231, 0, 420, '2019-01-24', 'pm2', 'bloque', '2018-12-19', ''), +(15665, 231, 0, 420, '2019-01-25', 'am1', 'bloque', '2018-12-19', ''), +(15666, 231, 0, 420, '2019-01-25', 'am2', 'bloque', '2018-12-19', ''), +(15667, 231, 0, 420, '2019-01-25', 'pm1', 'bloque', '2018-12-19', ''), +(15668, 231, 0, 420, '2019-01-25', 'pm2', 'bloque', '2018-12-19', ''), +(15669, 231, 0, 420, '2019-01-28', 'am1', 'bloque', '2018-12-19', ''), +(15670, 231, 0, 420, '2019-01-28', 'am2', 'bloque', '2018-12-19', ''), +(15671, 231, 0, 420, '2019-01-28', 'pm1', 'bloque', '2018-12-19', ''), +(15672, 231, 0, 420, '2019-01-28', 'pm2', 'bloque', '2018-12-19', ''), +(15673, 231, 0, 420, '2019-01-29', 'am1', 'bloque', '2018-12-19', ''), +(15674, 231, 0, 420, '2019-01-29', 'am2', 'bloque', '2018-12-19', ''), +(15675, 231, 0, 420, '2019-01-29', 'pm1', 'bloque', '2018-12-19', ''), +(15676, 231, 0, 420, '2019-01-29', 'pm2', 'bloque', '2018-12-19', ''), +(15677, 231, 0, 420, '2019-01-30', 'am1', 'bloque', '2018-12-19', ''), +(15678, 231, 0, 420, '2019-01-30', 'am2', 'bloque', '2018-12-19', ''), +(15679, 231, 0, 420, '2019-01-30', 'pm1', 'bloque', '2018-12-19', ''), +(15680, 231, 0, 420, '2019-01-30', 'pm2', 'bloque', '2018-12-19', ''), +(15681, 231, 0, 420, '2019-01-31', 'am1', 'bloque', '2018-12-19', ''), +(15682, 231, 0, 420, '2019-01-31', 'am2', 'bloque', '2018-12-19', ''), +(15683, 231, 0, 420, '2019-01-31', 'pm1', 'bloque', '2018-12-19', ''), +(15684, 231, 0, 420, '2019-01-31', 'pm2', 'bloque', '2018-12-19', ''), +(15685, 231, 0, 420, '2019-02-01', 'am1', 'bloque', '2018-12-19', ''), +(15686, 231, 0, 420, '2019-02-01', 'am2', 'bloque', '2018-12-19', ''), +(15687, 231, 0, 420, '2019-02-01', 'pm1', 'bloque', '2018-12-19', ''), +(15688, 231, 0, 420, '2019-02-01', 'pm2', 'bloque', '2018-12-19', ''), +(15689, 231, 0, 420, '2019-02-04', 'am1', 'bloque', '2018-12-19', ''), +(15690, 231, 0, 420, '2019-02-04', 'am2', 'bloque', '2018-12-19', ''), +(15691, 231, 0, 420, '2019-02-04', 'pm1', 'bloque', '2018-12-19', ''), +(15692, 231, 0, 420, '2019-02-04', 'pm2', 'bloque', '2018-12-19', ''), +(15693, 231, 0, 420, '2019-02-05', 'am1', 'bloque', '2018-12-19', ''), +(15694, 231, 0, 420, '2019-02-05', 'am2', 'bloque', '2018-12-19', ''), +(15695, 231, 0, 420, '2019-02-05', 'pm1', 'bloque', '2018-12-19', ''), +(15696, 231, 0, 420, '2019-02-05', 'pm2', 'bloque', '2018-12-19', ''), +(15697, 231, 0, 420, '2019-02-06', 'am1', 'bloque', '2018-12-19', ''), +(15698, 231, 0, 420, '2019-02-06', 'am2', 'bloque', '2018-12-19', ''), +(15699, 231, 0, 420, '2019-02-06', 'pm1', 'bloque', '2018-12-19', ''), +(15700, 231, 0, 420, '2019-02-06', 'pm2', 'bloque', '2018-12-19', ''), +(15701, 231, 0, 420, '2019-02-07', 'am1', 'bloque', '2018-12-19', ''), +(15702, 231, 0, 420, '2019-02-07', 'am2', 'bloque', '2018-12-19', ''), +(15703, 231, 0, 420, '2019-02-07', 'pm1', 'bloque', '2018-12-19', ''), +(15704, 231, 0, 420, '2019-02-07', 'pm2', 'bloque', '2018-12-19', ''), +(15705, 231, 0, 420, '2019-02-08', 'am1', 'bloque', '2018-12-19', ''), +(15706, 231, 0, 420, '2019-02-08', 'am2', 'bloque', '2018-12-19', ''), +(15707, 231, 0, 420, '2019-02-08', 'pm1', 'bloque', '2018-12-19', ''), +(15708, 231, 0, 420, '2019-02-08', 'pm2', 'bloque', '2018-12-19', ''), +(15709, 232, 0, 415, '2019-01-17', 'am1', 'libre', '2018-12-19', ''), +(15710, 232, 0, 415, '2019-01-17', 'am2', 'libre', '2018-12-19', ''), +(15711, 232, 0, 415, '2019-01-17', 'pm1', 'libre', '2018-12-19', ''), +(15712, 232, 0, 415, '2019-01-17', 'pm2', 'libre', '2018-12-19', ''), +(15713, 232, 0, 415, '2019-01-18', 'am1', 'bloque', '2018-12-19', ''), +(15714, 232, 0, 415, '2019-01-18', 'am2', 'bloque', '2018-12-19', ''), +(15715, 232, 0, 415, '2019-01-18', 'pm1', 'bloque', '2018-12-19', ''), +(15716, 232, 0, 415, '2019-01-18', 'pm2', 'bloque', '2018-12-19', ''), +(15717, 232, 0, 415, '2019-01-21', 'am1', 'bloque', '2018-12-19', ''), +(15718, 232, 0, 415, '2019-01-21', 'am2', 'bloque', '2018-12-19', ''), +(15719, 232, 0, 415, '2019-01-21', 'pm1', 'bloque', '2018-12-19', ''), +(15720, 232, 0, 415, '2019-01-21', 'pm2', 'bloque', '2018-12-19', ''), +(15721, 232, 0, 415, '2019-01-22', 'am1', 'bloque', '2018-12-19', ''), +(15722, 232, 0, 415, '2019-01-22', 'am2', 'bloque', '2018-12-19', ''), +(15723, 232, 0, 415, '2019-01-22', 'pm1', 'bloque', '2018-12-19', ''), +(15724, 232, 0, 415, '2019-01-22', 'pm2', 'bloque', '2018-12-19', ''), +(15725, 232, 0, 415, '2019-01-23', 'am1', 'bloque', '2018-12-19', ''), +(15726, 232, 0, 415, '2019-01-23', 'am2', 'bloque', '2018-12-19', ''), +(15727, 232, 0, 415, '2019-01-23', 'pm1', 'bloque', '2018-12-19', ''), +(15728, 232, 0, 415, '2019-01-23', 'pm2', 'bloque', '2018-12-19', ''), +(15729, 232, 0, 415, '2019-01-24', 'am1', 'bloque', '2018-12-19', ''), +(15730, 232, 0, 415, '2019-01-24', 'am2', 'bloque', '2018-12-19', ''), +(15731, 232, 0, 415, '2019-01-24', 'pm1', 'bloque', '2018-12-19', ''), +(15732, 232, 0, 415, '2019-01-24', 'pm2', 'bloque', '2018-12-19', ''), +(15733, 232, 0, 415, '2019-01-25', 'am1', 'bloque', '2018-12-19', ''), +(15734, 232, 0, 415, '2019-01-25', 'am2', 'bloque', '2018-12-19', ''), +(15735, 232, 0, 415, '2019-01-25', 'pm1', 'bloque', '2018-12-19', ''), +(15736, 232, 0, 415, '2019-01-25', 'pm2', 'bloque', '2018-12-19', ''), +(15737, 232, 0, 415, '2019-01-28', 'am1', 'bloque', '2018-12-19', ''), +(15738, 232, 0, 415, '2019-01-28', 'am2', 'bloque', '2018-12-19', ''), +(15739, 232, 0, 415, '2019-01-28', 'pm1', 'bloque', '2018-12-19', ''), +(15740, 232, 0, 415, '2019-01-28', 'pm2', 'bloque', '2018-12-19', ''), +(15741, 232, 0, 415, '2019-01-29', 'am1', 'bloque', '2018-12-19', ''), +(15742, 232, 0, 415, '2019-01-29', 'am2', 'bloque', '2018-12-19', ''), +(15743, 232, 0, 415, '2019-01-29', 'pm1', 'bloque', '2018-12-19', ''), +(15744, 232, 0, 415, '2019-01-29', 'pm2', 'bloque', '2018-12-19', ''), +(15745, 232, 0, 415, '2019-01-30', 'am1', 'bloque', '2018-12-19', ''), +(15746, 232, 0, 415, '2019-01-30', 'am2', 'bloque', '2018-12-19', ''), +(15747, 232, 0, 415, '2019-01-30', 'pm1', 'bloque', '2018-12-19', ''), +(15748, 232, 0, 415, '2019-01-30', 'pm2', 'bloque', '2018-12-19', ''), +(15749, 232, 0, 415, '2019-01-31', 'am1', 'bloque', '2018-12-19', ''), +(15750, 232, 0, 415, '2019-01-31', 'am2', 'bloque', '2018-12-19', ''), +(15751, 232, 0, 415, '2019-01-31', 'pm1', 'bloque', '2018-12-19', ''), +(15752, 232, 0, 415, '2019-01-31', 'pm2', 'bloque', '2018-12-19', ''), +(15753, 232, 0, 415, '2019-02-01', 'am1', 'bloque', '2018-12-19', ''), +(15754, 232, 0, 415, '2019-02-01', 'am2', 'bloque', '2018-12-19', ''), +(15755, 232, 0, 415, '2019-02-01', 'pm1', 'bloque', '2018-12-19', ''), +(15756, 232, 0, 415, '2019-02-01', 'pm2', 'bloque', '2018-12-19', ''), +(15757, 232, 0, 415, '2019-02-04', 'am1', 'bloque', '2018-12-19', ''), +(15758, 232, 0, 415, '2019-02-04', 'am2', 'bloque', '2018-12-19', ''), +(15759, 232, 0, 415, '2019-02-04', 'pm1', 'bloque', '2018-12-19', ''), +(15760, 232, 0, 415, '2019-02-04', 'pm2', 'bloque', '2018-12-19', ''), +(15761, 232, 0, 415, '2019-02-05', 'am1', 'bloque', '2018-12-19', ''), +(15762, 232, 0, 415, '2019-02-05', 'am2', 'bloque', '2018-12-19', ''), +(15763, 232, 0, 415, '2019-02-05', 'pm1', 'bloque', '2018-12-19', ''), +(15764, 232, 0, 415, '2019-02-05', 'pm2', 'bloque', '2018-12-19', ''), +(15765, 232, 0, 415, '2019-02-06', 'am1', 'bloque', '2018-12-19', ''), +(15766, 232, 0, 415, '2019-02-06', 'am2', 'bloque', '2018-12-19', ''), +(15767, 232, 0, 415, '2019-02-06', 'pm1', 'bloque', '2018-12-19', ''), +(15768, 232, 0, 415, '2019-02-06', 'pm2', 'bloque', '2018-12-19', ''), +(15769, 232, 0, 415, '2019-02-07', 'am1', 'bloque', '2018-12-19', ''), +(15770, 232, 0, 415, '2019-02-07', 'am2', 'bloque', '2018-12-19', ''), +(15771, 232, 0, 415, '2019-02-07', 'pm1', 'bloque', '2018-12-19', ''), +(15772, 232, 0, 415, '2019-02-07', 'pm2', 'bloque', '2018-12-19', ''), +(15773, 232, 0, 415, '2019-02-08', 'am1', 'bloque', '2018-12-19', ''), +(15774, 232, 0, 415, '2019-02-08', 'am2', 'bloque', '2018-12-19', ''), +(15775, 232, 0, 415, '2019-02-08', 'pm1', 'bloque', '2018-12-19', ''), +(15776, 232, 0, 415, '2019-02-08', 'pm2', 'bloque', '2018-12-19', ''), +(15777, 233, 0, 53, '2019-01-17', 'am1', 'libre', '2018-12-19', ''), +(15778, 233, 0, 53, '2019-01-17', 'am2', 'libre', '2018-12-19', ''), +(15779, 233, 0, 53, '2019-01-17', 'pm1', 'libre', '2018-12-19', ''), +(15780, 233, 0, 53, '2019-01-17', 'pm2', 'libre', '2018-12-19', ''), +(15781, 233, 0, 53, '2019-01-18', 'am1', 'bloque', '2018-12-19', ''), +(15782, 233, 0, 53, '2019-01-18', 'am2', 'bloque', '2018-12-19', ''), +(15783, 233, 0, 53, '2019-01-18', 'pm1', 'bloque', '2018-12-19', ''), +(15784, 233, 0, 53, '2019-01-18', 'pm2', 'bloque', '2018-12-19', ''), +(15785, 233, 0, 53, '2019-01-21', 'am1', 'bloque', '2018-12-19', ''), +(15786, 233, 0, 53, '2019-01-21', 'am2', 'bloque', '2018-12-19', ''), +(15787, 233, 0, 53, '2019-01-21', 'pm1', 'bloque', '2018-12-19', ''), +(15788, 233, 0, 53, '2019-01-21', 'pm2', 'bloque', '2018-12-19', ''), +(15789, 233, 0, 53, '2019-01-22', 'am1', 'bloque', '2018-12-19', ''), +(15790, 233, 0, 53, '2019-01-22', 'am2', 'bloque', '2018-12-19', ''), +(15791, 233, 0, 53, '2019-01-22', 'pm1', 'bloque', '2018-12-19', ''), +(15792, 233, 0, 53, '2019-01-22', 'pm2', 'bloque', '2018-12-19', ''), +(15793, 233, 0, 53, '2019-01-23', 'am1', 'bloque', '2018-12-19', ''), +(15794, 233, 0, 53, '2019-01-23', 'am2', 'bloque', '2018-12-19', ''), +(15795, 233, 0, 53, '2019-01-23', 'pm1', 'bloque', '2018-12-19', ''), +(15796, 233, 0, 53, '2019-01-23', 'pm2', 'bloque', '2018-12-19', ''), +(15797, 233, 0, 53, '2019-01-24', 'am1', 'bloque', '2018-12-19', ''), +(15798, 233, 0, 53, '2019-01-24', 'am2', 'bloque', '2018-12-19', ''), +(15799, 233, 0, 53, '2019-01-24', 'pm1', 'bloque', '2018-12-19', ''), +(15800, 233, 0, 53, '2019-01-24', 'pm2', 'bloque', '2018-12-19', ''), +(15801, 233, 0, 53, '2019-01-25', 'am1', 'bloque', '2018-12-19', ''), +(15802, 233, 0, 53, '2019-01-25', 'am2', 'bloque', '2018-12-19', ''), +(15803, 233, 0, 53, '2019-01-25', 'pm1', 'bloque', '2018-12-19', ''), +(15804, 233, 0, 53, '2019-01-25', 'pm2', 'bloque', '2018-12-19', ''), +(15805, 233, 0, 53, '2019-01-28', 'am1', 'bloque', '2018-12-19', ''), +(15806, 233, 0, 53, '2019-01-28', 'am2', 'bloque', '2018-12-19', ''), +(15807, 233, 0, 53, '2019-01-28', 'pm1', 'bloque', '2018-12-19', ''), +(15808, 233, 0, 53, '2019-01-28', 'pm2', 'bloque', '2018-12-19', ''), +(15809, 233, 0, 53, '2019-01-29', 'am1', 'bloque', '2018-12-19', ''), +(15810, 233, 0, 53, '2019-01-29', 'am2', 'bloque', '2018-12-19', ''), +(15811, 233, 0, 53, '2019-01-29', 'pm1', 'bloque', '2018-12-19', ''), +(15812, 233, 0, 53, '2019-01-29', 'pm2', 'bloque', '2018-12-19', ''), +(15813, 233, 0, 53, '2019-01-30', 'am1', 'bloque', '2018-12-19', ''), +(15814, 233, 0, 53, '2019-01-30', 'am2', 'bloque', '2018-12-19', ''), +(15815, 233, 0, 53, '2019-01-30', 'pm1', 'bloque', '2018-12-19', ''), +(15816, 233, 0, 53, '2019-01-30', 'pm2', 'bloque', '2018-12-19', ''), +(15817, 233, 0, 53, '2019-01-31', 'am1', 'bloque', '2018-12-19', ''), +(15818, 233, 0, 53, '2019-01-31', 'am2', 'bloque', '2018-12-19', ''), +(15819, 233, 0, 53, '2019-01-31', 'pm1', 'bloque', '2018-12-19', ''), +(15820, 233, 0, 53, '2019-01-31', 'pm2', 'bloque', '2018-12-19', ''), +(15821, 233, 0, 53, '2019-02-01', 'am1', 'bloque', '2018-12-19', ''), +(15822, 233, 0, 53, '2019-02-01', 'am2', 'bloque', '2018-12-19', ''), +(15823, 233, 0, 53, '2019-02-01', 'pm1', 'bloque', '2018-12-19', ''), +(15824, 233, 0, 53, '2019-02-01', 'pm2', 'bloque', '2018-12-19', ''), +(15825, 233, 0, 53, '2019-02-04', 'am1', 'bloque', '2018-12-19', ''), +(15826, 233, 0, 53, '2019-02-04', 'am2', 'bloque', '2018-12-19', ''), +(15827, 233, 0, 53, '2019-02-04', 'pm1', 'bloque', '2018-12-19', ''), +(15828, 233, 0, 53, '2019-02-04', 'pm2', 'bloque', '2018-12-19', ''), +(15829, 233, 0, 53, '2019-02-05', 'am1', 'bloque', '2018-12-19', ''), +(15830, 233, 0, 53, '2019-02-05', 'am2', 'bloque', '2018-12-19', ''), +(15831, 233, 0, 53, '2019-02-05', 'pm1', 'bloque', '2018-12-19', ''), +(15832, 233, 0, 53, '2019-02-05', 'pm2', 'bloque', '2018-12-19', ''), +(15833, 233, 0, 53, '2019-02-06', 'am1', 'bloque', '2018-12-19', ''), +(15834, 233, 0, 53, '2019-02-06', 'am2', 'bloque', '2018-12-19', ''), +(15835, 233, 0, 53, '2019-02-06', 'pm1', 'bloque', '2018-12-19', ''), +(15836, 233, 0, 53, '2019-02-06', 'pm2', 'bloque', '2018-12-19', ''), +(15837, 233, 0, 53, '2019-02-07', 'am1', 'bloque', '2018-12-19', ''), +(15838, 233, 0, 53, '2019-02-07', 'am2', 'bloque', '2018-12-19', ''), +(15839, 233, 0, 53, '2019-02-07', 'pm1', 'bloque', '2018-12-19', ''), +(15840, 233, 0, 53, '2019-02-07', 'pm2', 'bloque', '2018-12-19', ''), +(15841, 233, 0, 53, '2019-02-08', 'am1', 'bloque', '2018-12-19', ''), +(15842, 233, 0, 53, '2019-02-08', 'am2', 'bloque', '2018-12-19', ''), +(15843, 233, 0, 53, '2019-02-08', 'pm1', 'bloque', '2018-12-19', ''), +(15844, 233, 0, 53, '2019-02-08', 'pm2', 'bloque', '2018-12-19', ''), +(15845, 234, 0, 53, '2019-01-17', 'am1', 'libre', '2018-12-19', ''), +(15846, 234, 0, 53, '2019-01-17', 'am2', 'libre', '2018-12-19', ''), +(15847, 234, 0, 53, '2019-01-17', 'pm1', 'libre', '2018-12-19', ''), +(15848, 234, 0, 53, '2019-01-17', 'pm2', 'libre', '2018-12-19', ''), +(15849, 234, 0, 53, '2019-01-18', 'am1', 'bloque', '2018-12-19', ''), +(15850, 234, 0, 53, '2019-01-18', 'am2', 'bloque', '2018-12-19', ''), +(15851, 234, 0, 53, '2019-01-18', 'pm1', 'bloque', '2018-12-19', ''), +(15852, 234, 0, 53, '2019-01-18', 'pm2', 'bloque', '2018-12-19', ''), +(15853, 234, 0, 53, '2019-01-21', 'am1', 'bloque', '2018-12-19', ''), +(15854, 234, 0, 53, '2019-01-21', 'am2', 'bloque', '2018-12-19', ''), +(15855, 234, 0, 53, '2019-01-21', 'pm1', 'bloque', '2018-12-19', ''), +(15856, 234, 0, 53, '2019-01-21', 'pm2', 'bloque', '2018-12-19', ''), +(15857, 234, 0, 53, '2019-01-22', 'am1', 'bloque', '2018-12-19', ''), +(15858, 234, 0, 53, '2019-01-22', 'am2', 'bloque', '2018-12-19', ''), +(15859, 234, 0, 53, '2019-01-22', 'pm1', 'bloque', '2018-12-19', ''), +(15860, 234, 0, 53, '2019-01-22', 'pm2', 'bloque', '2018-12-19', ''), +(15861, 234, 0, 53, '2019-01-23', 'am1', 'libre', '2018-12-19', 'ref'), +(15862, 234, 0, 53, '2019-01-23', 'am2', 'libre', '2018-12-19', 'ref'), +(15863, 234, 0, 53, '2019-01-23', 'pm1', 'bloque', '2018-12-19', ''), +(15864, 234, 0, 53, '2019-01-23', 'pm2', 'bloque', '2018-12-19', ''), +(15865, 234, 0, 53, '2019-01-24', 'am1', 'libre', '2019-01-16', 'ref'), +(15866, 234, 0, 53, '2019-01-24', 'am2', 'bloque', '2018-12-19', ''), +(15867, 234, 0, 53, '2019-01-24', 'pm1', 'bloque', '2018-12-19', ''), +(15868, 234, 0, 53, '2019-01-24', 'pm2', 'bloque', '2018-12-19', ''), +(15869, 234, 0, 53, '2019-01-25', 'am1', 'bloque', '2018-12-19', ''), +(15870, 234, 0, 53, '2019-01-25', 'am2', 'bloque', '2018-12-19', ''), +(15871, 234, 0, 53, '2019-01-25', 'pm1', 'bloque', '2018-12-19', ''), +(15872, 234, 0, 53, '2019-01-25', 'pm2', 'bloque', '2018-12-19', ''), +(15873, 234, 0, 53, '2019-01-28', 'am1', 'bloque', '2018-12-19', ''), +(15874, 234, 0, 53, '2019-01-28', 'am2', 'bloque', '2018-12-19', ''), +(15875, 234, 0, 53, '2019-01-28', 'pm1', 'bloque', '2018-12-19', ''), +(15876, 234, 0, 53, '2019-01-28', 'pm2', 'bloque', '2018-12-19', ''), +(15877, 234, 0, 53, '2019-01-29', 'am1', 'bloque', '2018-12-19', ''), +(15878, 234, 0, 53, '2019-01-29', 'am2', 'bloque', '2018-12-19', ''), +(15879, 234, 0, 53, '2019-01-29', 'pm1', 'bloque', '2018-12-19', ''), +(15880, 234, 0, 53, '2019-01-29', 'pm2', 'bloque', '2018-12-19', ''), +(15881, 234, 0, 53, '2019-01-30', 'am1', 'bloque', '2018-12-19', ''), +(15882, 234, 0, 53, '2019-01-30', 'am2', 'bloque', '2018-12-19', ''), +(15883, 234, 0, 53, '2019-01-30', 'pm1', 'bloque', '2018-12-19', ''), +(15884, 234, 0, 53, '2019-01-30', 'pm2', 'bloque', '2018-12-19', ''), +(15885, 234, 0, 53, '2019-01-31', 'am1', 'bloque', '2018-12-19', ''), +(15886, 234, 0, 53, '2019-01-31', 'am2', 'bloque', '2018-12-19', ''), +(15887, 234, 0, 53, '2019-01-31', 'pm1', 'bloque', '2018-12-19', ''), +(15888, 234, 0, 53, '2019-01-31', 'pm2', 'bloque', '2018-12-19', ''), +(15889, 234, 0, 53, '2019-02-01', 'am1', 'bloque', '2018-12-19', ''), +(15890, 234, 0, 53, '2019-02-01', 'am2', 'bloque', '2018-12-19', ''), +(15891, 234, 0, 53, '2019-02-01', 'pm1', 'bloque', '2018-12-19', ''), +(15892, 234, 0, 53, '2019-02-01', 'pm2', 'bloque', '2018-12-19', ''), +(15893, 234, 0, 53, '2019-02-04', 'am1', 'bloque', '2018-12-19', ''), +(15894, 234, 0, 53, '2019-02-04', 'am2', 'bloque', '2018-12-19', ''), +(15895, 234, 0, 53, '2019-02-04', 'pm1', 'bloque', '2018-12-19', ''), +(15896, 234, 0, 53, '2019-02-04', 'pm2', 'bloque', '2018-12-19', ''), +(15897, 234, 0, 53, '2019-02-05', 'am1', 'bloque', '2018-12-19', ''), +(15898, 234, 0, 53, '2019-02-05', 'am2', 'bloque', '2018-12-19', ''), +(15899, 234, 0, 53, '2019-02-05', 'pm1', 'bloque', '2018-12-19', ''), +(15900, 234, 0, 53, '2019-02-05', 'pm2', 'bloque', '2018-12-19', ''), +(15901, 234, 0, 53, '2019-02-06', 'am1', 'bloque', '2018-12-19', ''), +(15902, 234, 0, 53, '2019-02-06', 'am2', 'bloque', '2018-12-19', ''), +(15903, 234, 0, 53, '2019-02-06', 'pm1', 'bloque', '2018-12-19', ''), +(15904, 234, 0, 53, '2019-02-06', 'pm2', 'bloque', '2018-12-19', ''), +(15905, 234, 0, 53, '2019-02-07', 'am1', 'bloque', '2018-12-19', ''), +(15906, 234, 0, 53, '2019-02-07', 'am2', 'bloque', '2018-12-19', ''), +(15907, 234, 0, 53, '2019-02-07', 'pm1', 'bloque', '2018-12-19', ''), +(15908, 234, 0, 53, '2019-02-07', 'pm2', 'bloque', '2018-12-19', ''), +(15909, 234, 0, 53, '2019-02-08', 'am1', 'bloque', '2018-12-19', ''), +(15910, 234, 0, 53, '2019-02-08', 'am2', 'bloque', '2018-12-19', ''), +(15911, 234, 0, 53, '2019-02-08', 'pm1', 'bloque', '2018-12-19', ''), +(15912, 234, 0, 53, '2019-02-08', 'pm2', 'bloque', '2018-12-19', ''), +(15913, 235, 0, 2, '2019-01-17', 'am1', 'libre', '2018-12-20', ''), +(15914, 235, 0, 2, '2019-01-17', 'am2', 'libre', '2018-12-20', ''), +(15915, 235, 229, 2, '2019-01-17', 'pm1', 'reserve', '2019-01-09', 'cap'), +(15916, 235, 0, 2, '2019-01-17', 'pm2', 'libre', '2018-12-20', ''), +(15917, 235, 0, 2, '2019-01-18', 'am1', 'bloque', '2018-12-20', ''), +(15918, 235, 0, 2, '2019-01-18', 'am2', 'bloque', '2018-12-20', ''), +(15919, 235, 0, 2, '2019-01-18', 'pm1', 'bloque', '2018-12-20', ''), +(15920, 235, 0, 2, '2019-01-18', 'pm2', 'bloque', '2018-12-20', ''), +(15921, 235, 0, 2, '2019-01-21', 'am1', 'bloque', '2018-12-20', ''), +(15922, 235, 0, 2, '2019-01-21', 'am2', 'bloque', '2018-12-20', ''), +(15923, 235, 0, 2, '2019-01-21', 'pm1', 'bloque', '2018-12-20', ''), +(15924, 235, 0, 2, '2019-01-21', 'pm2', 'bloque', '2018-12-20', ''), +(15925, 235, 0, 2, '2019-01-22', 'am1', 'bloque', '2018-12-20', ''), +(15926, 235, 0, 2, '2019-01-22', 'am2', 'bloque', '2018-12-20', ''), +(15927, 235, 0, 2, '2019-01-22', 'pm1', 'bloque', '2018-12-20', ''), +(15928, 235, 0, 2, '2019-01-22', 'pm2', 'bloque', '2018-12-20', ''), +(15929, 235, 0, 2, '2019-01-23', 'am1', 'bloque', '2018-12-20', ''), +(15930, 235, 0, 2, '2019-01-23', 'am2', 'bloque', '2018-12-20', ''), +(15931, 235, 0, 2, '2019-01-23', 'pm1', 'bloque', '2018-12-20', ''), +(15932, 235, 0, 2, '2019-01-23', 'pm2', 'bloque', '2018-12-20', ''), +(15933, 235, 0, 2, '2019-01-24', 'am1', 'bloque', '2018-12-20', ''), +(15934, 235, 0, 2, '2019-01-24', 'am2', 'bloque', '2018-12-20', ''), +(15935, 235, 0, 2, '2019-01-24', 'pm1', 'bloque', '2018-12-20', ''), +(15936, 235, 0, 2, '2019-01-24', 'pm2', 'bloque', '2018-12-20', ''), +(15937, 235, 0, 2, '2019-01-25', 'am1', 'bloque', '2018-12-20', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(15938, 235, 0, 2, '2019-01-25', 'am2', 'bloque', '2018-12-20', ''), +(15939, 235, 0, 2, '2019-01-25', 'pm1', 'bloque', '2018-12-20', ''), +(15940, 235, 0, 2, '2019-01-25', 'pm2', 'bloque', '2018-12-20', ''), +(15941, 235, 0, 2, '2019-01-28', 'am1', 'bloque', '2018-12-20', ''), +(15942, 235, 0, 2, '2019-01-28', 'am2', 'bloque', '2018-12-20', ''), +(15943, 235, 0, 2, '2019-01-28', 'pm1', 'bloque', '2018-12-20', ''), +(15944, 235, 0, 2, '2019-01-28', 'pm2', 'bloque', '2018-12-20', ''), +(15945, 235, 0, 2, '2019-01-29', 'am1', 'bloque', '2018-12-20', ''), +(15946, 235, 0, 2, '2019-01-29', 'am2', 'bloque', '2018-12-20', ''), +(15947, 235, 0, 2, '2019-01-29', 'pm1', 'bloque', '2018-12-20', ''), +(15948, 235, 0, 2, '2019-01-29', 'pm2', 'bloque', '2018-12-20', ''), +(15949, 235, 0, 2, '2019-01-30', 'am1', 'bloque', '2018-12-20', ''), +(15950, 235, 0, 2, '2019-01-30', 'am2', 'bloque', '2018-12-20', ''), +(15951, 235, 0, 2, '2019-01-30', 'pm1', 'bloque', '2018-12-20', ''), +(15952, 235, 0, 2, '2019-01-30', 'pm2', 'bloque', '2018-12-20', ''), +(15953, 235, 0, 2, '2019-01-31', 'am1', 'bloque', '2018-12-20', ''), +(15954, 235, 0, 2, '2019-01-31', 'am2', 'bloque', '2018-12-20', ''), +(15955, 235, 0, 2, '2019-01-31', 'pm1', 'bloque', '2018-12-20', ''), +(15956, 235, 0, 2, '2019-01-31', 'pm2', 'bloque', '2018-12-20', ''), +(15957, 235, 0, 2, '2019-02-01', 'am1', 'bloque', '2018-12-20', ''), +(15958, 235, 0, 2, '2019-02-01', 'am2', 'bloque', '2018-12-20', ''), +(15959, 235, 0, 2, '2019-02-01', 'pm1', 'bloque', '2018-12-20', ''), +(15960, 235, 0, 2, '2019-02-01', 'pm2', 'bloque', '2018-12-20', ''), +(15961, 235, 0, 2, '2019-02-04', 'am1', 'bloque', '2018-12-20', ''), +(15962, 235, 0, 2, '2019-02-04', 'am2', 'bloque', '2018-12-20', ''), +(15963, 235, 0, 2, '2019-02-04', 'pm1', 'bloque', '2018-12-20', ''), +(15964, 235, 0, 2, '2019-02-04', 'pm2', 'bloque', '2018-12-20', ''), +(15965, 235, 0, 2, '2019-02-05', 'am1', 'bloque', '2018-12-20', ''), +(15966, 235, 0, 2, '2019-02-05', 'am2', 'bloque', '2018-12-20', ''), +(15967, 235, 0, 2, '2019-02-05', 'pm1', 'bloque', '2018-12-20', ''), +(15968, 235, 0, 2, '2019-02-05', 'pm2', 'bloque', '2018-12-20', ''), +(15969, 235, 0, 2, '2019-02-06', 'am1', 'bloque', '2018-12-20', ''), +(15970, 235, 0, 2, '2019-02-06', 'am2', 'bloque', '2018-12-20', ''), +(15971, 235, 0, 2, '2019-02-06', 'pm1', 'bloque', '2018-12-20', ''), +(15972, 235, 0, 2, '2019-02-06', 'pm2', 'bloque', '2018-12-20', ''), +(15973, 235, 0, 2, '2019-02-07', 'am1', 'bloque', '2018-12-20', ''), +(15974, 235, 0, 2, '2019-02-07', 'am2', 'bloque', '2018-12-20', ''), +(15975, 235, 0, 2, '2019-02-07', 'pm1', 'bloque', '2018-12-20', ''), +(15976, 235, 0, 2, '2019-02-07', 'pm2', 'bloque', '2018-12-20', ''), +(15977, 235, 0, 2, '2019-02-08', 'am1', 'bloque', '2018-12-20', ''), +(15978, 235, 0, 2, '2019-02-08', 'am2', 'bloque', '2018-12-20', ''), +(15979, 235, 0, 2, '2019-02-08', 'pm1', 'bloque', '2018-12-20', ''), +(15980, 235, 0, 2, '2019-02-08', 'pm2', 'bloque', '2018-12-20', ''), +(15981, 236, 0, 2, '2019-01-17', 'am1', 'libre', '2018-12-20', ''), +(15982, 236, 0, 2, '2019-01-17', 'am2', 'libre', '2018-12-20', ''), +(15983, 236, 202, 2, '2019-01-17', 'pm1', 'reserve', '2019-01-07', 'cap'), +(15984, 236, 0, 2, '2019-01-17', 'pm2', 'libre', '2018-12-20', ''), +(15985, 236, 0, 2, '2019-01-18', 'am1', 'bloque', '2018-12-20', ''), +(15986, 236, 0, 2, '2019-01-18', 'am2', 'bloque', '2018-12-20', ''), +(15987, 236, 0, 2, '2019-01-18', 'pm1', 'bloque', '2018-12-20', ''), +(15988, 236, 0, 2, '2019-01-18', 'pm2', 'bloque', '2018-12-20', ''), +(15989, 236, 0, 2, '2019-01-21', 'am1', 'bloque', '2018-12-20', ''), +(15990, 236, 0, 2, '2019-01-21', 'am2', 'bloque', '2018-12-20', ''), +(15991, 236, 0, 2, '2019-01-21', 'pm1', 'bloque', '2018-12-20', ''), +(15992, 236, 0, 2, '2019-01-21', 'pm2', 'bloque', '2018-12-20', ''), +(15993, 236, 0, 2, '2019-01-22', 'am1', 'bloque', '2018-12-20', ''), +(15994, 236, 0, 2, '2019-01-22', 'am2', 'bloque', '2018-12-20', ''), +(15995, 236, 0, 2, '2019-01-22', 'pm1', 'bloque', '2018-12-20', ''), +(15996, 236, 0, 2, '2019-01-22', 'pm2', 'bloque', '2018-12-20', ''), +(15997, 236, 0, 2, '2019-01-23', 'am1', 'bloque', '2018-12-20', ''), +(15998, 236, 0, 2, '2019-01-23', 'am2', 'bloque', '2018-12-20', ''), +(15999, 236, 0, 2, '2019-01-23', 'pm1', 'bloque', '2018-12-20', ''), +(16000, 236, 0, 2, '2019-01-23', 'pm2', 'bloque', '2018-12-20', ''), +(16001, 236, 0, 2, '2019-01-24', 'am1', 'bloque', '2018-12-20', ''), +(16002, 236, 0, 2, '2019-01-24', 'am2', 'bloque', '2018-12-20', ''), +(16003, 236, 0, 2, '2019-01-24', 'pm1', 'bloque', '2018-12-20', ''), +(16004, 236, 0, 2, '2019-01-24', 'pm2', 'bloque', '2018-12-20', ''), +(16005, 236, 0, 2, '2019-01-25', 'am1', 'bloque', '2018-12-20', ''), +(16006, 236, 0, 2, '2019-01-25', 'am2', 'bloque', '2018-12-20', ''), +(16007, 236, 0, 2, '2019-01-25', 'pm1', 'bloque', '2018-12-20', ''), +(16008, 236, 0, 2, '2019-01-25', 'pm2', 'bloque', '2018-12-20', ''), +(16009, 236, 0, 2, '2019-01-28', 'am1', 'bloque', '2018-12-20', ''), +(16010, 236, 0, 2, '2019-01-28', 'am2', 'bloque', '2018-12-20', ''), +(16011, 236, 0, 2, '2019-01-28', 'pm1', 'bloque', '2018-12-20', ''), +(16012, 236, 0, 2, '2019-01-28', 'pm2', 'bloque', '2018-12-20', ''), +(16013, 236, 0, 2, '2019-01-29', 'am1', 'bloque', '2018-12-20', ''), +(16014, 236, 0, 2, '2019-01-29', 'am2', 'bloque', '2018-12-20', ''), +(16015, 236, 0, 2, '2019-01-29', 'pm1', 'bloque', '2018-12-20', ''), +(16016, 236, 0, 2, '2019-01-29', 'pm2', 'bloque', '2018-12-20', ''), +(16017, 236, 0, 2, '2019-01-30', 'am1', 'bloque', '2018-12-20', ''), +(16018, 236, 0, 2, '2019-01-30', 'am2', 'bloque', '2018-12-20', ''), +(16019, 236, 0, 2, '2019-01-30', 'pm1', 'bloque', '2018-12-20', ''), +(16020, 236, 0, 2, '2019-01-30', 'pm2', 'bloque', '2018-12-20', ''), +(16021, 236, 0, 2, '2019-01-31', 'am1', 'bloque', '2018-12-20', ''), +(16022, 236, 0, 2, '2019-01-31', 'am2', 'bloque', '2018-12-20', ''), +(16023, 236, 0, 2, '2019-01-31', 'pm1', 'bloque', '2018-12-20', ''), +(16024, 236, 0, 2, '2019-01-31', 'pm2', 'bloque', '2018-12-20', ''), +(16025, 236, 0, 2, '2019-02-01', 'am1', 'bloque', '2018-12-20', ''), +(16026, 236, 0, 2, '2019-02-01', 'am2', 'bloque', '2018-12-20', ''), +(16027, 236, 0, 2, '2019-02-01', 'pm1', 'bloque', '2018-12-20', ''), +(16028, 236, 0, 2, '2019-02-01', 'pm2', 'bloque', '2018-12-20', ''), +(16029, 236, 0, 2, '2019-02-04', 'am1', 'bloque', '2018-12-20', ''), +(16030, 236, 0, 2, '2019-02-04', 'am2', 'bloque', '2018-12-20', ''), +(16031, 236, 0, 2, '2019-02-04', 'pm1', 'bloque', '2018-12-20', ''), +(16032, 236, 0, 2, '2019-02-04', 'pm2', 'bloque', '2018-12-20', ''), +(16033, 236, 0, 2, '2019-02-05', 'am1', 'bloque', '2018-12-20', ''), +(16034, 236, 0, 2, '2019-02-05', 'am2', 'bloque', '2018-12-20', ''), +(16035, 236, 0, 2, '2019-02-05', 'pm1', 'bloque', '2018-12-20', ''), +(16036, 236, 0, 2, '2019-02-05', 'pm2', 'bloque', '2018-12-20', ''), +(16037, 236, 0, 2, '2019-02-06', 'am1', 'bloque', '2018-12-20', ''), +(16038, 236, 0, 2, '2019-02-06', 'am2', 'bloque', '2018-12-20', ''), +(16039, 236, 0, 2, '2019-02-06', 'pm1', 'bloque', '2018-12-20', ''), +(16040, 236, 0, 2, '2019-02-06', 'pm2', 'bloque', '2018-12-20', ''), +(16041, 236, 0, 2, '2019-02-07', 'am1', 'bloque', '2018-12-20', ''), +(16042, 236, 0, 2, '2019-02-07', 'am2', 'bloque', '2018-12-20', ''), +(16043, 236, 0, 2, '2019-02-07', 'pm1', 'bloque', '2018-12-20', ''), +(16044, 236, 0, 2, '2019-02-07', 'pm2', 'bloque', '2018-12-20', ''), +(16045, 236, 0, 2, '2019-02-08', 'am1', 'bloque', '2018-12-20', ''), +(16046, 236, 0, 2, '2019-02-08', 'am2', 'bloque', '2018-12-20', ''), +(16047, 236, 0, 2, '2019-02-08', 'pm1', 'bloque', '2018-12-20', ''), +(16048, 236, 0, 2, '2019-02-08', 'pm2', 'bloque', '2018-12-20', ''), +(16049, 237, 0, 2, '2019-01-17', 'am1', 'libre', '2018-12-20', ''), +(16050, 237, 0, 2, '2019-01-17', 'am2', 'libre', '2018-12-20', ''), +(16051, 237, 0, 2, '2019-01-17', 'pm1', 'libre', '2018-12-20', ''), +(16052, 237, 0, 2, '2019-01-17', 'pm2', 'libre', '2018-12-20', ''), +(16053, 237, 0, 2, '2019-01-18', 'am1', 'bloque', '2018-12-20', ''), +(16054, 237, 248, 2, '2019-01-18', 'am2', 'reserve', '2019-01-10', 'cap'), +(16055, 237, 0, 2, '2019-01-18', 'pm1', 'bloque', '2018-12-20', ''), +(16056, 237, 0, 2, '2019-01-18', 'pm2', 'bloque', '2018-12-20', ''), +(16057, 237, 0, 2, '2019-01-21', 'am1', 'bloque', '2018-12-20', ''), +(16058, 237, 0, 2, '2019-01-21', 'am2', 'bloque', '2018-12-20', ''), +(16059, 237, 0, 2, '2019-01-21', 'pm1', 'bloque', '2018-12-20', ''), +(16060, 237, 0, 2, '2019-01-21', 'pm2', 'bloque', '2018-12-20', ''), +(16061, 237, 0, 2, '2019-01-22', 'am1', 'bloque', '2018-12-20', ''), +(16062, 237, 0, 2, '2019-01-22', 'am2', 'bloque', '2018-12-20', ''), +(16063, 237, 0, 2, '2019-01-22', 'pm1', 'bloque', '2018-12-20', ''), +(16064, 237, 0, 2, '2019-01-22', 'pm2', 'bloque', '2018-12-20', ''), +(16065, 237, 0, 2, '2019-01-23', 'am1', 'bloque', '2018-12-20', ''), +(16066, 237, 0, 2, '2019-01-23', 'am2', 'bloque', '2018-12-20', ''), +(16067, 237, 0, 2, '2019-01-23', 'pm1', 'bloque', '2018-12-20', ''), +(16068, 237, 0, 2, '2019-01-23', 'pm2', 'bloque', '2018-12-20', ''), +(16069, 237, 0, 2, '2019-01-24', 'am1', 'bloque', '2018-12-20', ''), +(16070, 237, 0, 2, '2019-01-24', 'am2', 'bloque', '2018-12-20', ''), +(16071, 237, 0, 2, '2019-01-24', 'pm1', 'bloque', '2018-12-20', ''), +(16072, 237, 0, 2, '2019-01-24', 'pm2', 'bloque', '2018-12-20', ''), +(16073, 237, 0, 2, '2019-01-25', 'am1', 'bloque', '2018-12-20', ''), +(16074, 237, 0, 2, '2019-01-25', 'am2', 'bloque', '2018-12-20', ''), +(16075, 237, 0, 2, '2019-01-25', 'pm1', 'bloque', '2018-12-20', ''), +(16076, 237, 0, 2, '2019-01-25', 'pm2', 'bloque', '2018-12-20', ''), +(16077, 237, 0, 2, '2019-01-28', 'am1', 'bloque', '2018-12-20', ''), +(16078, 237, 0, 2, '2019-01-28', 'am2', 'bloque', '2018-12-20', ''), +(16079, 237, 0, 2, '2019-01-28', 'pm1', 'bloque', '2018-12-20', ''), +(16080, 237, 0, 2, '2019-01-28', 'pm2', 'bloque', '2018-12-20', ''), +(16081, 237, 0, 2, '2019-01-29', 'am1', 'bloque', '2018-12-20', ''), +(16082, 237, 0, 2, '2019-01-29', 'am2', 'bloque', '2018-12-20', ''), +(16083, 237, 0, 2, '2019-01-29', 'pm1', 'bloque', '2018-12-20', ''), +(16084, 237, 0, 2, '2019-01-29', 'pm2', 'bloque', '2018-12-20', ''), +(16085, 237, 0, 2, '2019-01-30', 'am1', 'bloque', '2018-12-20', ''), +(16086, 237, 0, 2, '2019-01-30', 'am2', 'bloque', '2018-12-20', ''), +(16087, 237, 0, 2, '2019-01-30', 'pm1', 'bloque', '2018-12-20', ''), +(16088, 237, 0, 2, '2019-01-30', 'pm2', 'bloque', '2018-12-20', ''), +(16089, 237, 0, 2, '2019-01-31', 'am1', 'bloque', '2018-12-20', ''), +(16090, 237, 0, 2, '2019-01-31', 'am2', 'bloque', '2018-12-20', ''), +(16091, 237, 0, 2, '2019-01-31', 'pm1', 'bloque', '2018-12-20', ''), +(16092, 237, 0, 2, '2019-01-31', 'pm2', 'bloque', '2018-12-20', ''), +(16093, 237, 0, 2, '2019-02-01', 'am1', 'bloque', '2018-12-20', ''), +(16094, 237, 0, 2, '2019-02-01', 'am2', 'bloque', '2018-12-20', ''), +(16095, 237, 0, 2, '2019-02-01', 'pm1', 'bloque', '2018-12-20', ''), +(16096, 237, 0, 2, '2019-02-01', 'pm2', 'bloque', '2018-12-20', ''), +(16097, 237, 0, 2, '2019-02-04', 'am1', 'bloque', '2018-12-20', ''), +(16098, 237, 0, 2, '2019-02-04', 'am2', 'bloque', '2018-12-20', ''), +(16099, 237, 0, 2, '2019-02-04', 'pm1', 'bloque', '2018-12-20', ''), +(16100, 237, 0, 2, '2019-02-04', 'pm2', 'bloque', '2018-12-20', ''), +(16101, 237, 0, 2, '2019-02-05', 'am1', 'bloque', '2018-12-20', ''), +(16102, 237, 0, 2, '2019-02-05', 'am2', 'bloque', '2018-12-20', ''), +(16103, 237, 0, 2, '2019-02-05', 'pm1', 'bloque', '2018-12-20', ''), +(16104, 237, 0, 2, '2019-02-05', 'pm2', 'bloque', '2018-12-20', ''), +(16105, 237, 0, 2, '2019-02-06', 'am1', 'bloque', '2018-12-20', ''), +(16106, 237, 0, 2, '2019-02-06', 'am2', 'bloque', '2018-12-20', ''), +(16107, 237, 0, 2, '2019-02-06', 'pm1', 'bloque', '2018-12-20', ''), +(16108, 237, 0, 2, '2019-02-06', 'pm2', 'bloque', '2018-12-20', ''), +(16109, 237, 0, 2, '2019-02-07', 'am1', 'bloque', '2018-12-20', ''), +(16110, 237, 0, 2, '2019-02-07', 'am2', 'bloque', '2018-12-20', ''), +(16111, 237, 0, 2, '2019-02-07', 'pm1', 'bloque', '2018-12-20', ''), +(16112, 237, 0, 2, '2019-02-07', 'pm2', 'bloque', '2018-12-20', ''), +(16113, 237, 0, 2, '2019-02-08', 'am1', 'bloque', '2018-12-20', ''), +(16114, 237, 0, 2, '2019-02-08', 'am2', 'bloque', '2018-12-20', ''), +(16115, 237, 0, 2, '2019-02-08', 'pm1', 'bloque', '2018-12-20', ''), +(16116, 237, 0, 2, '2019-02-08', 'pm2', 'bloque', '2018-12-20', ''), +(16117, 238, 249, 2, '2019-01-17', 'am1', 'reserve', '2019-01-10', 'cap'), +(16118, 238, 0, 2, '2019-01-17', 'am2', 'libre', '2018-12-20', ''), +(16119, 238, 0, 2, '2019-01-17', 'pm1', 'libre', '2018-12-20', ''), +(16120, 238, 0, 2, '2019-01-17', 'pm2', 'libre', '2018-12-20', ''), +(16121, 238, 0, 2, '2019-01-18', 'am1', 'bloque', '2018-12-20', ''), +(16122, 238, 0, 2, '2019-01-18', 'am2', 'bloque', '2018-12-20', ''), +(16123, 238, 0, 2, '2019-01-18', 'pm1', 'bloque', '2018-12-20', ''), +(16124, 238, 0, 2, '2019-01-18', 'pm2', 'bloque', '2018-12-20', ''), +(16125, 238, 0, 2, '2019-01-21', 'am1', 'bloque', '2018-12-20', ''), +(16126, 238, 0, 2, '2019-01-21', 'am2', 'bloque', '2018-12-20', ''), +(16127, 238, 0, 2, '2019-01-21', 'pm1', 'bloque', '2018-12-20', ''), +(16128, 238, 0, 2, '2019-01-21', 'pm2', 'bloque', '2018-12-20', ''), +(16129, 238, 0, 2, '2019-01-22', 'am1', 'bloque', '2018-12-20', ''), +(16130, 238, 0, 2, '2019-01-22', 'am2', 'bloque', '2018-12-20', ''), +(16131, 238, 0, 2, '2019-01-22', 'pm1', 'bloque', '2018-12-20', ''), +(16132, 238, 0, 2, '2019-01-22', 'pm2', 'bloque', '2018-12-20', ''), +(16133, 238, 0, 2, '2019-01-23', 'am1', 'bloque', '2018-12-20', ''), +(16134, 238, 0, 2, '2019-01-23', 'am2', 'bloque', '2018-12-20', ''), +(16135, 238, 0, 2, '2019-01-23', 'pm1', 'bloque', '2018-12-20', ''), +(16136, 238, 0, 2, '2019-01-23', 'pm2', 'bloque', '2018-12-20', ''), +(16137, 238, 0, 2, '2019-01-24', 'am1', 'bloque', '2018-12-20', ''), +(16138, 238, 0, 2, '2019-01-24', 'am2', 'bloque', '2018-12-20', ''), +(16139, 238, 0, 2, '2019-01-24', 'pm1', 'bloque', '2018-12-20', ''), +(16140, 238, 0, 2, '2019-01-24', 'pm2', 'bloque', '2018-12-20', ''), +(16141, 238, 0, 2, '2019-01-25', 'am1', 'bloque', '2018-12-20', ''), +(16142, 238, 0, 2, '2019-01-25', 'am2', 'bloque', '2018-12-20', ''), +(16143, 238, 0, 2, '2019-01-25', 'pm1', 'bloque', '2018-12-20', ''), +(16144, 238, 0, 2, '2019-01-25', 'pm2', 'bloque', '2018-12-20', ''), +(16145, 238, 0, 2, '2019-01-28', 'am1', 'bloque', '2018-12-20', ''), +(16146, 238, 0, 2, '2019-01-28', 'am2', 'bloque', '2018-12-20', ''), +(16147, 238, 0, 2, '2019-01-28', 'pm1', 'bloque', '2018-12-20', ''), +(16148, 238, 0, 2, '2019-01-28', 'pm2', 'bloque', '2018-12-20', ''), +(16149, 238, 0, 2, '2019-01-29', 'am1', 'bloque', '2018-12-20', ''), +(16150, 238, 0, 2, '2019-01-29', 'am2', 'bloque', '2018-12-20', ''), +(16151, 238, 0, 2, '2019-01-29', 'pm1', 'bloque', '2018-12-20', ''), +(16152, 238, 0, 2, '2019-01-29', 'pm2', 'bloque', '2018-12-20', ''), +(16153, 238, 0, 2, '2019-01-30', 'am1', 'bloque', '2018-12-20', ''), +(16154, 238, 0, 2, '2019-01-30', 'am2', 'bloque', '2018-12-20', ''), +(16155, 238, 0, 2, '2019-01-30', 'pm1', 'bloque', '2018-12-20', ''), +(16156, 238, 0, 2, '2019-01-30', 'pm2', 'bloque', '2018-12-20', ''), +(16157, 238, 0, 2, '2019-01-31', 'am1', 'bloque', '2018-12-20', ''), +(16158, 238, 0, 2, '2019-01-31', 'am2', 'bloque', '2018-12-20', ''), +(16159, 238, 0, 2, '2019-01-31', 'pm1', 'bloque', '2018-12-20', ''), +(16160, 238, 0, 2, '2019-01-31', 'pm2', 'bloque', '2018-12-20', ''), +(16161, 238, 0, 2, '2019-02-01', 'am1', 'bloque', '2018-12-20', ''), +(16162, 238, 0, 2, '2019-02-01', 'am2', 'bloque', '2018-12-20', ''), +(16163, 238, 0, 2, '2019-02-01', 'pm1', 'bloque', '2018-12-20', ''), +(16164, 238, 0, 2, '2019-02-01', 'pm2', 'bloque', '2018-12-20', ''), +(16165, 238, 0, 2, '2019-02-04', 'am1', 'bloque', '2018-12-20', ''), +(16166, 238, 0, 2, '2019-02-04', 'am2', 'bloque', '2018-12-20', ''), +(16167, 238, 0, 2, '2019-02-04', 'pm1', 'bloque', '2018-12-20', ''), +(16168, 238, 0, 2, '2019-02-04', 'pm2', 'bloque', '2018-12-20', ''), +(16169, 238, 0, 2, '2019-02-05', 'am1', 'bloque', '2018-12-20', ''), +(16170, 238, 0, 2, '2019-02-05', 'am2', 'bloque', '2018-12-20', ''), +(16171, 238, 0, 2, '2019-02-05', 'pm1', 'bloque', '2018-12-20', ''), +(16172, 238, 0, 2, '2019-02-05', 'pm2', 'bloque', '2018-12-20', ''), +(16173, 238, 0, 2, '2019-02-06', 'am1', 'bloque', '2018-12-20', ''), +(16174, 238, 0, 2, '2019-02-06', 'am2', 'bloque', '2018-12-20', ''), +(16175, 238, 0, 2, '2019-02-06', 'pm1', 'bloque', '2018-12-20', ''), +(16176, 238, 0, 2, '2019-02-06', 'pm2', 'bloque', '2018-12-20', ''), +(16177, 238, 0, 2, '2019-02-07', 'am1', 'bloque', '2018-12-20', ''), +(16178, 238, 0, 2, '2019-02-07', 'am2', 'bloque', '2018-12-20', ''), +(16179, 238, 0, 2, '2019-02-07', 'pm1', 'bloque', '2018-12-20', ''), +(16180, 238, 0, 2, '2019-02-07', 'pm2', 'bloque', '2018-12-20', ''), +(16181, 238, 0, 2, '2019-02-08', 'am1', 'bloque', '2018-12-20', ''), +(16182, 238, 0, 2, '2019-02-08', 'am2', 'bloque', '2018-12-20', ''), +(16183, 238, 0, 2, '2019-02-08', 'pm1', 'bloque', '2018-12-20', ''), +(16184, 238, 0, 2, '2019-02-08', 'pm2', 'bloque', '2018-12-20', ''), +(16185, 239, 0, 86, '2019-01-17', 'am1', 'bloque', '2018-12-20', 'ref'), +(16186, 239, 0, 86, '2019-01-17', 'am2', 'bloque', '2018-12-20', 'ref'), +(16187, 239, 0, 86, '2019-01-17', 'pm1', 'bloque', '2018-12-20', 'ref'), +(16188, 239, 0, 86, '2019-01-17', 'pm2', 'bloque', '2018-12-20', 'ref'), +(16189, 239, 0, 86, '2019-01-18', 'am1', 'bloque', '2018-12-20', ''), +(16190, 239, 0, 86, '2019-01-18', 'am2', 'bloque', '2018-12-20', ''), +(16191, 239, 0, 86, '2019-01-18', 'pm1', 'bloque', '2018-12-20', ''), +(16192, 239, 0, 86, '2019-01-18', 'pm2', 'bloque', '2018-12-20', ''), +(16193, 239, 0, 86, '2019-01-21', 'am1', 'bloque', '2018-12-20', ''), +(16194, 239, 0, 86, '2019-01-21', 'am2', 'bloque', '2018-12-20', ''), +(16195, 239, 0, 86, '2019-01-21', 'pm1', 'bloque', '2018-12-20', ''), +(16196, 239, 0, 86, '2019-01-21', 'pm2', 'bloque', '2018-12-20', ''), +(16197, 239, 0, 86, '2019-01-22', 'am1', 'bloque', '2018-12-20', ''), +(16198, 239, 0, 86, '2019-01-22', 'am2', 'bloque', '2018-12-20', ''), +(16199, 239, 0, 86, '2019-01-22', 'pm1', 'bloque', '2018-12-20', ''), +(16200, 239, 0, 86, '2019-01-22', 'pm2', 'bloque', '2018-12-20', ''), +(16201, 239, 0, 86, '2019-01-23', 'am1', 'bloque', '2018-12-20', ''), +(16202, 239, 0, 86, '2019-01-23', 'am2', 'bloque', '2018-12-20', ''), +(16203, 239, 0, 86, '2019-01-23', 'pm1', 'bloque', '2018-12-20', ''), +(16204, 239, 0, 86, '2019-01-23', 'pm2', 'bloque', '2018-12-20', ''), +(16205, 239, 0, 86, '2019-01-24', 'am1', 'bloque', '2018-12-20', ''), +(16206, 239, 0, 86, '2019-01-24', 'am2', 'bloque', '2018-12-20', ''), +(16207, 239, 0, 86, '2019-01-24', 'pm1', 'bloque', '2018-12-20', ''), +(16208, 239, 0, 86, '2019-01-24', 'pm2', 'bloque', '2018-12-20', ''), +(16209, 239, 0, 86, '2019-01-25', 'am1', 'bloque', '2018-12-20', ''), +(16210, 239, 0, 86, '2019-01-25', 'am2', 'bloque', '2018-12-20', ''), +(16211, 239, 0, 86, '2019-01-25', 'pm1', 'bloque', '2018-12-20', ''), +(16212, 239, 0, 86, '2019-01-25', 'pm2', 'bloque', '2018-12-20', ''), +(16213, 239, 0, 86, '2019-01-28', 'am1', 'bloque', '2018-12-20', ''), +(16214, 239, 0, 86, '2019-01-28', 'am2', 'bloque', '2018-12-20', ''), +(16215, 239, 0, 86, '2019-01-28', 'pm1', 'bloque', '2018-12-20', ''), +(16216, 239, 0, 86, '2019-01-28', 'pm2', 'bloque', '2018-12-20', ''), +(16217, 239, 0, 86, '2019-01-29', 'am1', 'bloque', '2018-12-20', ''), +(16218, 239, 0, 86, '2019-01-29', 'am2', 'bloque', '2018-12-20', ''), +(16219, 239, 0, 86, '2019-01-29', 'pm1', 'bloque', '2018-12-20', ''), +(16220, 239, 0, 86, '2019-01-29', 'pm2', 'bloque', '2018-12-20', ''), +(16221, 239, 0, 86, '2019-01-30', 'am1', 'bloque', '2018-12-20', ''), +(16222, 239, 0, 86, '2019-01-30', 'am2', 'bloque', '2018-12-20', ''), +(16223, 239, 0, 86, '2019-01-30', 'pm1', 'bloque', '2018-12-20', ''), +(16224, 239, 0, 86, '2019-01-30', 'pm2', 'bloque', '2018-12-20', ''), +(16225, 239, 0, 86, '2019-01-31', 'am1', 'bloque', '2018-12-20', ''), +(16226, 239, 0, 86, '2019-01-31', 'am2', 'bloque', '2018-12-20', ''), +(16227, 239, 0, 86, '2019-01-31', 'pm1', 'bloque', '2018-12-20', ''), +(16228, 239, 0, 86, '2019-01-31', 'pm2', 'bloque', '2018-12-20', ''), +(16229, 239, 0, 86, '2019-02-01', 'am1', 'bloque', '2018-12-20', ''), +(16230, 239, 0, 86, '2019-02-01', 'am2', 'bloque', '2018-12-20', ''), +(16231, 239, 0, 86, '2019-02-01', 'pm1', 'bloque', '2018-12-20', ''), +(16232, 239, 0, 86, '2019-02-01', 'pm2', 'bloque', '2018-12-20', ''), +(16233, 239, 0, 86, '2019-02-04', 'am1', 'bloque', '2018-12-20', ''), +(16234, 239, 0, 86, '2019-02-04', 'am2', 'bloque', '2018-12-20', ''), +(16235, 239, 0, 86, '2019-02-04', 'pm1', 'bloque', '2018-12-20', ''), +(16236, 239, 0, 86, '2019-02-04', 'pm2', 'bloque', '2018-12-20', ''), +(16237, 239, 0, 86, '2019-02-05', 'am1', 'bloque', '2018-12-20', ''), +(16238, 239, 0, 86, '2019-02-05', 'am2', 'bloque', '2018-12-20', ''), +(16239, 239, 0, 86, '2019-02-05', 'pm1', 'bloque', '2018-12-20', ''), +(16240, 239, 0, 86, '2019-02-05', 'pm2', 'bloque', '2018-12-20', ''), +(16241, 239, 0, 86, '2019-02-06', 'am1', 'bloque', '2018-12-20', ''), +(16242, 239, 0, 86, '2019-02-06', 'am2', 'bloque', '2018-12-20', ''), +(16243, 239, 0, 86, '2019-02-06', 'pm1', 'bloque', '2018-12-20', ''), +(16244, 239, 0, 86, '2019-02-06', 'pm2', 'bloque', '2018-12-20', ''), +(16245, 239, 0, 86, '2019-02-07', 'am1', 'bloque', '2018-12-20', ''), +(16246, 239, 0, 86, '2019-02-07', 'am2', 'bloque', '2018-12-20', ''), +(16247, 239, 0, 86, '2019-02-07', 'pm1', 'bloque', '2018-12-20', ''), +(16248, 239, 0, 86, '2019-02-07', 'pm2', 'bloque', '2018-12-20', ''), +(16249, 239, 0, 86, '2019-02-08', 'am1', 'bloque', '2018-12-20', ''), +(16250, 239, 0, 86, '2019-02-08', 'am2', 'bloque', '2018-12-20', ''), +(16251, 239, 0, 86, '2019-02-08', 'pm1', 'bloque', '2018-12-20', ''), +(16252, 239, 0, 86, '2019-02-08', 'pm2', 'bloque', '2018-12-20', ''), +(16253, 240, 0, 99, '2019-01-17', 'am1', 'libre', '2018-12-20', ''), +(16254, 240, 0, 99, '2019-01-17', 'am2', 'libre', '2018-12-20', ''), +(16255, 240, 0, 99, '2019-01-17', 'pm1', 'libre', '2018-12-20', ''), +(16256, 240, 0, 99, '2019-01-17', 'pm2', 'libre', '2018-12-20', ''), +(16257, 240, 0, 99, '2019-01-18', 'am1', 'bloque', '2018-12-20', 'ref'), +(16258, 240, 0, 99, '2019-01-18', 'am2', 'bloque', '2018-12-20', ''), +(16259, 240, 0, 99, '2019-01-18', 'pm1', 'bloque', '2018-12-20', ''), +(16260, 240, 0, 99, '2019-01-18', 'pm2', 'bloque', '2018-12-20', ''), +(16261, 240, 0, 99, '2019-01-21', 'am1', 'bloque', '2018-12-20', ''), +(16262, 240, 0, 99, '2019-01-21', 'am2', 'bloque', '2018-12-20', ''), +(16263, 240, 0, 99, '2019-01-21', 'pm1', 'bloque', '2018-12-20', ''), +(16264, 240, 0, 99, '2019-01-21', 'pm2', 'bloque', '2018-12-20', ''), +(16265, 240, 0, 99, '2019-01-22', 'am1', 'bloque', '2018-12-20', ''), +(16266, 240, 0, 99, '2019-01-22', 'am2', 'bloque', '2018-12-20', ''), +(16267, 240, 0, 99, '2019-01-22', 'pm1', 'bloque', '2018-12-20', ''), +(16268, 240, 0, 99, '2019-01-22', 'pm2', 'bloque', '2018-12-20', ''), +(16269, 240, 0, 99, '2019-01-23', 'am1', 'bloque', '2018-12-20', ''), +(16270, 240, 0, 99, '2019-01-23', 'am2', 'bloque', '2018-12-20', ''), +(16271, 240, 0, 99, '2019-01-23', 'pm1', 'bloque', '2018-12-20', ''), +(16272, 240, 0, 99, '2019-01-23', 'pm2', 'bloque', '2018-12-20', ''), +(16273, 240, 0, 99, '2019-01-24', 'am1', 'bloque', '2018-12-20', ''), +(16274, 240, 0, 99, '2019-01-24', 'am2', 'bloque', '2018-12-20', ''), +(16275, 240, 0, 99, '2019-01-24', 'pm1', 'bloque', '2018-12-20', ''), +(16276, 240, 0, 99, '2019-01-24', 'pm2', 'bloque', '2018-12-20', ''), +(16277, 240, 0, 99, '2019-01-25', 'am1', 'libre', '2018-12-20', 'ref'), +(16278, 240, 0, 99, '2019-01-25', 'am2', 'libre', '2018-12-20', 'ref'), +(16279, 240, 0, 99, '2019-01-25', 'pm1', 'libre', '2018-12-20', 'ref'), +(16280, 240, 0, 99, '2019-01-25', 'pm2', 'libre', '2018-12-20', 'ref'), +(16281, 240, 0, 99, '2019-01-28', 'am1', 'bloque', '2018-12-20', ''), +(16282, 240, 0, 99, '2019-01-28', 'am2', 'bloque', '2018-12-20', ''), +(16283, 240, 0, 99, '2019-01-28', 'pm1', 'bloque', '2018-12-20', ''), +(16284, 240, 0, 99, '2019-01-28', 'pm2', 'bloque', '2018-12-20', ''), +(16285, 240, 0, 99, '2019-01-29', 'am1', 'bloque', '2018-12-20', ''), +(16286, 240, 0, 99, '2019-01-29', 'am2', 'bloque', '2018-12-20', ''), +(16287, 240, 0, 99, '2019-01-29', 'pm1', 'bloque', '2018-12-20', ''), +(16288, 240, 0, 99, '2019-01-29', 'pm2', 'bloque', '2018-12-20', ''), +(16289, 240, 307, 99, '2019-01-30', 'am1', 'reserve', '2019-01-17', 'ref'), +(16290, 240, 0, 99, '2019-01-30', 'am2', 'libre', '2018-12-20', 'ref'), +(16291, 240, 0, 99, '2019-01-30', 'pm1', 'libre', '2018-12-20', 'ref'), +(16292, 240, 0, 99, '2019-01-30', 'pm2', 'libre', '2018-12-20', 'ref'), +(16293, 240, 0, 99, '2019-01-31', 'am1', 'bloque', '2018-12-20', 'ref'), +(16294, 240, 0, 99, '2019-01-31', 'am2', 'bloque', '2018-12-20', ''), +(16295, 240, 0, 99, '2019-01-31', 'pm1', 'bloque', '2018-12-20', ''), +(16296, 240, 0, 99, '2019-01-31', 'pm2', 'bloque', '2018-12-20', ''), +(16297, 240, 0, 99, '2019-02-01', 'am1', 'libre', '2018-12-20', 'ref'), +(16298, 240, 0, 99, '2019-02-01', 'am2', 'libre', '2018-12-20', 'ref'), +(16299, 240, 0, 99, '2019-02-01', 'pm1', 'libre', '2018-12-20', 'ref'), +(16300, 240, 0, 99, '2019-02-01', 'pm2', 'libre', '2018-12-20', 'ref'), +(16301, 240, 0, 99, '2019-02-04', 'am1', 'libre', '2018-12-20', 'ref'), +(16302, 240, 0, 99, '2019-02-04', 'am2', 'libre', '2018-12-20', 'ref'), +(16303, 240, 0, 99, '2019-02-04', 'pm1', 'libre', '2018-12-20', 'ref'), +(16304, 240, 0, 99, '2019-02-04', 'pm2', 'libre', '2018-12-20', 'ref'), +(16305, 240, 0, 99, '2019-02-05', 'am1', 'libre', '2018-12-20', 'ref'), +(16306, 240, 0, 99, '2019-02-05', 'am2', 'libre', '2018-12-20', 'ref'), +(16307, 240, 320, 99, '2019-02-05', 'pm1', 'reserve', '2019-01-24', 'cap'), +(16308, 240, 0, 99, '2019-02-05', 'pm2', 'libre', '2018-12-20', 'ref'), +(16309, 240, 0, 99, '2019-02-06', 'am1', 'libre', '2018-12-20', 'ref'), +(16310, 240, 0, 99, '2019-02-06', 'am2', 'libre', '2018-12-20', 'ref'), +(16311, 240, 0, 99, '2019-02-06', 'pm1', 'libre', '2018-12-20', 'ref'), +(16312, 240, 0, 99, '2019-02-06', 'pm2', 'libre', '2018-12-20', 'ref'), +(16313, 240, 0, 99, '2019-02-07', 'am1', 'bloque', '2018-12-20', ''), +(16314, 240, 0, 99, '2019-02-07', 'am2', 'bloque', '2018-12-20', ''), +(16315, 240, 0, 99, '2019-02-07', 'pm1', 'bloque', '2018-12-20', ''), +(16316, 240, 0, 99, '2019-02-07', 'pm2', 'bloque', '2018-12-20', ''), +(16317, 240, 0, 99, '2019-02-08', 'am1', 'bloque', '2018-12-20', ''), +(16318, 240, 0, 99, '2019-02-08', 'am2', 'bloque', '2018-12-20', ''), +(16319, 240, 0, 99, '2019-02-08', 'pm1', 'bloque', '2018-12-20', ''), +(16320, 240, 0, 99, '2019-02-08', 'pm2', 'bloque', '2018-12-20', ''), +(16321, 241, 163, 344, '2019-01-17', 'am1', 'reserve', '2018-12-21', 'ref'), +(16322, 241, 0, 344, '2019-01-17', 'am2', 'bloque', '2018-12-21', 'ref'), +(16323, 241, 0, 344, '2019-01-17', 'pm1', 'bloque', '2018-12-21', 'ref'), +(16324, 241, 0, 344, '2019-01-17', 'pm2', 'bloque', '2018-12-21', 'ref'), +(16325, 241, 164, 344, '2019-01-18', 'am1', 'reserve', '2018-12-21', 'ref'), +(16326, 241, 0, 344, '2019-01-18', 'am2', 'bloque', '2018-12-21', ''), +(16327, 241, 0, 344, '2019-01-18', 'pm1', 'bloque', '2018-12-21', ''), +(16328, 241, 0, 344, '2019-01-18', 'pm2', 'bloque', '2018-12-21', ''), +(16329, 241, 165, 344, '2019-01-21', 'am1', 'reserve', '2018-12-21', 'ref'), +(16330, 241, 0, 344, '2019-01-21', 'am2', 'bloque', '2018-12-21', ''), +(16331, 241, 0, 344, '2019-01-21', 'pm1', 'bloque', '2018-12-21', ''), +(16332, 241, 0, 344, '2019-01-21', 'pm2', 'bloque', '2018-12-21', ''), +(16333, 241, 166, 344, '2019-01-22', 'am1', 'reserve', '2018-12-21', 'ref'), +(16334, 241, 0, 344, '2019-01-22', 'am2', 'bloque', '2018-12-21', ''), +(16335, 241, 0, 344, '2019-01-22', 'pm1', 'bloque', '2018-12-21', ''), +(16336, 241, 0, 344, '2019-01-22', 'pm2', 'bloque', '2018-12-21', ''), +(16337, 241, 0, 344, '2019-01-23', 'am1', 'bloque', '2018-12-21', ''), +(16338, 241, 0, 344, '2019-01-23', 'am2', 'bloque', '2018-12-21', ''), +(16339, 241, 0, 344, '2019-01-23', 'pm1', 'bloque', '2018-12-21', ''), +(16340, 241, 0, 344, '2019-01-23', 'pm2', 'bloque', '2018-12-21', ''), +(16341, 241, 0, 344, '2019-01-24', 'am1', 'bloque', '2018-12-21', ''), +(16342, 241, 0, 344, '2019-01-24', 'am2', 'bloque', '2018-12-21', ''), +(16343, 241, 0, 344, '2019-01-24', 'pm1', 'bloque', '2018-12-21', ''), +(16344, 241, 0, 344, '2019-01-24', 'pm2', 'bloque', '2018-12-21', ''), +(16345, 241, 0, 344, '2019-01-25', 'am1', 'bloque', '2018-12-21', ''), +(16346, 241, 0, 344, '2019-01-25', 'am2', 'bloque', '2018-12-21', ''), +(16347, 241, 0, 344, '2019-01-25', 'pm1', 'bloque', '2018-12-21', ''), +(16348, 241, 0, 344, '2019-01-25', 'pm2', 'bloque', '2018-12-21', ''), +(16349, 241, 167, 344, '2019-01-28', 'am1', 'reserve', '2018-12-21', 'ref'), +(16350, 241, 0, 344, '2019-01-28', 'am2', 'bloque', '2018-12-21', ''), +(16351, 241, 0, 344, '2019-01-28', 'pm1', 'bloque', '2018-12-21', ''), +(16352, 241, 0, 344, '2019-01-28', 'pm2', 'bloque', '2018-12-21', ''), +(16353, 241, 168, 344, '2019-01-29', 'am1', 'reserve', '2018-12-21', 'ref'), +(16354, 241, 0, 344, '2019-01-29', 'am2', 'bloque', '2018-12-21', ''), +(16355, 241, 0, 344, '2019-01-29', 'pm1', 'bloque', '2018-12-21', ''), +(16356, 241, 0, 344, '2019-01-29', 'pm2', 'bloque', '2018-12-21', ''), +(16357, 241, 0, 344, '2019-01-30', 'am1', 'bloque', '2018-12-21', ''), +(16358, 241, 0, 344, '2019-01-30', 'am2', 'bloque', '2018-12-21', ''), +(16359, 241, 0, 344, '2019-01-30', 'pm1', 'bloque', '2018-12-21', ''), +(16360, 241, 0, 344, '2019-01-30', 'pm2', 'bloque', '2018-12-21', ''), +(16361, 241, 0, 344, '2019-01-31', 'am1', 'bloque', '2018-12-21', ''), +(16362, 241, 0, 344, '2019-01-31', 'am2', 'bloque', '2018-12-21', ''), +(16363, 241, 0, 344, '2019-01-31', 'pm1', 'bloque', '2018-12-21', ''), +(16364, 241, 0, 344, '2019-01-31', 'pm2', 'bloque', '2018-12-21', ''), +(16365, 241, 0, 344, '2019-02-01', 'am1', 'bloque', '2018-12-21', ''), +(16366, 241, 0, 344, '2019-02-01', 'am2', 'bloque', '2018-12-21', ''), +(16367, 241, 0, 344, '2019-02-01', 'pm1', 'bloque', '2018-12-21', ''), +(16368, 241, 0, 344, '2019-02-01', 'pm2', 'bloque', '2018-12-21', ''), +(16369, 241, 0, 344, '2019-02-04', 'am1', 'bloque', '2018-12-21', ''), +(16370, 241, 0, 344, '2019-02-04', 'am2', 'bloque', '2018-12-21', ''), +(16371, 241, 0, 344, '2019-02-04', 'pm1', 'bloque', '2018-12-21', ''), +(16372, 241, 0, 344, '2019-02-04', 'pm2', 'bloque', '2018-12-21', ''), +(16373, 241, 0, 344, '2019-02-05', 'am1', 'bloque', '2018-12-21', ''), +(16374, 241, 0, 344, '2019-02-05', 'am2', 'bloque', '2018-12-21', ''), +(16375, 241, 0, 344, '2019-02-05', 'pm1', 'bloque', '2018-12-21', ''), +(16376, 241, 0, 344, '2019-02-05', 'pm2', 'bloque', '2018-12-21', ''), +(16377, 241, 0, 344, '2019-02-06', 'am1', 'bloque', '2018-12-21', ''), +(16378, 241, 0, 344, '2019-02-06', 'am2', 'bloque', '2018-12-21', ''), +(16379, 241, 0, 344, '2019-02-06', 'pm1', 'bloque', '2018-12-21', ''), +(16380, 241, 0, 344, '2019-02-06', 'pm2', 'bloque', '2018-12-21', ''), +(16381, 241, 0, 344, '2019-02-07', 'am1', 'bloque', '2018-12-21', ''), +(16382, 241, 0, 344, '2019-02-07', 'am2', 'bloque', '2018-12-21', ''), +(16383, 241, 0, 344, '2019-02-07', 'pm1', 'bloque', '2018-12-21', ''), +(16384, 241, 0, 344, '2019-02-07', 'pm2', 'bloque', '2018-12-21', ''), +(16385, 241, 0, 344, '2019-02-08', 'am1', 'bloque', '2018-12-21', ''), +(16386, 241, 0, 344, '2019-02-08', 'am2', 'bloque', '2018-12-21', ''), +(16387, 241, 0, 344, '2019-02-08', 'pm1', 'bloque', '2018-12-21', ''), +(16388, 241, 0, 344, '2019-02-08', 'pm2', 'bloque', '2018-12-21', ''), +(16389, 242, 199, 339, '2019-01-17', 'am1', 'reserve', '2019-01-07', 'ref'), +(16390, 242, 0, 339, '2019-01-17', 'am2', 'libre', '2018-12-21', ''), +(16391, 242, 0, 339, '2019-01-17', 'pm1', 'libre', '2018-12-21', ''), +(16392, 242, 0, 339, '2019-01-17', 'pm2', 'libre', '2018-12-21', ''), +(16393, 242, 0, 339, '2019-01-18', 'am1', 'bloque', '2018-12-21', ''), +(16394, 242, 0, 339, '2019-01-18', 'am2', 'bloque', '2018-12-21', ''), +(16395, 242, 0, 339, '2019-01-18', 'pm1', 'bloque', '2018-12-21', ''), +(16396, 242, 0, 339, '2019-01-18', 'pm2', 'bloque', '2018-12-21', ''), +(16397, 242, 0, 339, '2019-01-21', 'am1', 'bloque', '2018-12-21', ''), +(16398, 242, 0, 339, '2019-01-21', 'am2', 'bloque', '2018-12-21', ''), +(16399, 242, 0, 339, '2019-01-21', 'pm1', 'bloque', '2018-12-21', ''), +(16400, 242, 0, 339, '2019-01-21', 'pm2', 'bloque', '2018-12-21', ''), +(16401, 242, 0, 339, '2019-01-22', 'am1', 'bloque', '2018-12-21', ''), +(16402, 242, 0, 339, '2019-01-22', 'am2', 'bloque', '2018-12-21', ''), +(16403, 242, 0, 339, '2019-01-22', 'pm1', 'bloque', '2018-12-21', ''), +(16404, 242, 0, 339, '2019-01-22', 'pm2', 'bloque', '2018-12-21', ''), +(16405, 242, 0, 339, '2019-01-23', 'am1', 'bloque', '2018-12-21', ''), +(16406, 242, 0, 339, '2019-01-23', 'am2', 'bloque', '2018-12-21', ''), +(16407, 242, 0, 339, '2019-01-23', 'pm1', 'bloque', '2018-12-21', ''), +(16408, 242, 0, 339, '2019-01-23', 'pm2', 'bloque', '2018-12-21', ''), +(16409, 242, 0, 339, '2019-01-24', 'am1', 'bloque', '2018-12-21', ''), +(16410, 242, 0, 339, '2019-01-24', 'am2', 'bloque', '2018-12-21', ''), +(16411, 242, 0, 339, '2019-01-24', 'pm1', 'bloque', '2018-12-21', ''), +(16412, 242, 0, 339, '2019-01-24', 'pm2', 'bloque', '2018-12-21', ''), +(16413, 242, 0, 339, '2019-01-25', 'am1', 'bloque', '2018-12-21', ''), +(16414, 242, 0, 339, '2019-01-25', 'am2', 'bloque', '2018-12-21', ''), +(16415, 242, 0, 339, '2019-01-25', 'pm1', 'bloque', '2018-12-21', ''), +(16416, 242, 0, 339, '2019-01-25', 'pm2', 'bloque', '2018-12-21', ''), +(16417, 242, 0, 339, '2019-01-28', 'am1', 'bloque', '2018-12-21', ''), +(16418, 242, 0, 339, '2019-01-28', 'am2', 'bloque', '2018-12-21', ''), +(16419, 242, 0, 339, '2019-01-28', 'pm1', 'bloque', '2018-12-21', ''), +(16420, 242, 0, 339, '2019-01-28', 'pm2', 'bloque', '2018-12-21', ''), +(16421, 242, 0, 339, '2019-01-29', 'am1', 'bloque', '2018-12-21', ''), +(16422, 242, 0, 339, '2019-01-29', 'am2', 'bloque', '2018-12-21', ''), +(16423, 242, 0, 339, '2019-01-29', 'pm1', 'bloque', '2018-12-21', ''), +(16424, 242, 0, 339, '2019-01-29', 'pm2', 'bloque', '2018-12-21', ''), +(16425, 242, 0, 339, '2019-01-30', 'am1', 'bloque', '2018-12-21', ''), +(16426, 242, 0, 339, '2019-01-30', 'am2', 'bloque', '2018-12-21', ''), +(16427, 242, 0, 339, '2019-01-30', 'pm1', 'bloque', '2018-12-21', ''), +(16428, 242, 0, 339, '2019-01-30', 'pm2', 'bloque', '2018-12-21', ''), +(16429, 242, 0, 339, '2019-01-31', 'am1', 'bloque', '2018-12-21', ''), +(16430, 242, 0, 339, '2019-01-31', 'am2', 'bloque', '2018-12-21', ''), +(16431, 242, 0, 339, '2019-01-31', 'pm1', 'bloque', '2018-12-21', ''), +(16432, 242, 0, 339, '2019-01-31', 'pm2', 'bloque', '2018-12-21', ''), +(16433, 242, 0, 339, '2019-02-01', 'am1', 'bloque', '2018-12-21', ''), +(16434, 242, 0, 339, '2019-02-01', 'am2', 'bloque', '2018-12-21', ''), +(16435, 242, 0, 339, '2019-02-01', 'pm1', 'bloque', '2018-12-21', ''), +(16436, 242, 0, 339, '2019-02-01', 'pm2', 'bloque', '2018-12-21', ''), +(16437, 242, 0, 339, '2019-02-04', 'am1', 'bloque', '2018-12-21', ''), +(16438, 242, 0, 339, '2019-02-04', 'am2', 'bloque', '2018-12-21', ''), +(16439, 242, 0, 339, '2019-02-04', 'pm1', 'bloque', '2018-12-21', ''), +(16440, 242, 0, 339, '2019-02-04', 'pm2', 'bloque', '2018-12-21', ''), +(16441, 242, 0, 339, '2019-02-05', 'am1', 'bloque', '2018-12-21', ''), +(16442, 242, 0, 339, '2019-02-05', 'am2', 'bloque', '2018-12-21', ''), +(16443, 242, 0, 339, '2019-02-05', 'pm1', 'bloque', '2018-12-21', ''), +(16444, 242, 0, 339, '2019-02-05', 'pm2', 'bloque', '2018-12-21', ''), +(16445, 242, 0, 339, '2019-02-06', 'am1', 'bloque', '2018-12-21', ''), +(16446, 242, 0, 339, '2019-02-06', 'am2', 'bloque', '2018-12-21', ''), +(16447, 242, 0, 339, '2019-02-06', 'pm1', 'bloque', '2018-12-21', ''), +(16448, 242, 0, 339, '2019-02-06', 'pm2', 'bloque', '2018-12-21', ''), +(16449, 242, 0, 339, '2019-02-07', 'am1', 'bloque', '2018-12-21', ''), +(16450, 242, 0, 339, '2019-02-07', 'am2', 'bloque', '2018-12-21', ''), +(16451, 242, 0, 339, '2019-02-07', 'pm1', 'bloque', '2018-12-21', ''), +(16452, 242, 0, 339, '2019-02-07', 'pm2', 'bloque', '2018-12-21', ''), +(16453, 242, 0, 339, '2019-02-08', 'am1', 'bloque', '2018-12-21', ''), +(16454, 242, 0, 339, '2019-02-08', 'am2', 'bloque', '2018-12-21', ''), +(16455, 242, 0, 339, '2019-02-08', 'pm1', 'bloque', '2018-12-21', ''), +(16456, 242, 0, 339, '2019-02-08', 'pm2', 'bloque', '2018-12-21', ''), +(16457, 243, 0, 69, '2019-01-17', 'am1', 'bloque', '2018-12-21', 'ref'), +(16458, 243, 0, 69, '2019-01-17', 'am2', 'bloque', '2018-12-21', 'ref'), +(16459, 243, 0, 69, '2019-01-17', 'pm1', 'bloque', '2018-12-21', 'ref'), +(16460, 243, 0, 69, '2019-01-17', 'pm2', 'bloque', '2018-12-21', 'ref'), +(16461, 243, 0, 69, '2019-01-18', 'am1', 'bloque', '2018-12-21', ''), +(16462, 243, 0, 69, '2019-01-18', 'am2', 'bloque', '2018-12-21', ''), +(16463, 243, 0, 69, '2019-01-18', 'pm1', 'bloque', '2018-12-21', ''), +(16464, 243, 0, 69, '2019-01-18', 'pm2', 'bloque', '2018-12-21', ''), +(16465, 243, 0, 69, '2019-01-21', 'am1', 'bloque', '2018-12-21', ''), +(16466, 243, 0, 69, '2019-01-21', 'am2', 'bloque', '2018-12-21', ''), +(16467, 243, 0, 69, '2019-01-21', 'pm1', 'bloque', '2018-12-21', ''), +(16468, 243, 0, 69, '2019-01-21', 'pm2', 'bloque', '2018-12-21', ''), +(16469, 243, 0, 69, '2019-01-22', 'am1', 'bloque', '2018-12-21', ''), +(16470, 243, 0, 69, '2019-01-22', 'am2', 'bloque', '2018-12-21', ''), +(16471, 243, 0, 69, '2019-01-22', 'pm1', 'bloque', '2018-12-21', ''), +(16472, 243, 0, 69, '2019-01-22', 'pm2', 'bloque', '2018-12-21', ''), +(16473, 243, 0, 69, '2019-01-23', 'am1', 'bloque', '2018-12-21', ''), +(16474, 243, 0, 69, '2019-01-23', 'am2', 'bloque', '2018-12-21', ''), +(16475, 243, 0, 69, '2019-01-23', 'pm1', 'bloque', '2018-12-21', ''), +(16476, 243, 0, 69, '2019-01-23', 'pm2', 'bloque', '2018-12-21', ''), +(16477, 243, 0, 69, '2019-01-24', 'am1', 'bloque', '2018-12-21', ''), +(16478, 243, 0, 69, '2019-01-24', 'am2', 'bloque', '2018-12-21', ''), +(16479, 243, 0, 69, '2019-01-24', 'pm1', 'bloque', '2018-12-21', ''), +(16480, 243, 0, 69, '2019-01-24', 'pm2', 'bloque', '2018-12-21', ''), +(16481, 243, 0, 69, '2019-01-25', 'am1', 'bloque', '2018-12-21', ''), +(16482, 243, 0, 69, '2019-01-25', 'am2', 'bloque', '2018-12-21', ''), +(16483, 243, 0, 69, '2019-01-25', 'pm1', 'bloque', '2018-12-21', ''), +(16484, 243, 0, 69, '2019-01-25', 'pm2', 'bloque', '2018-12-21', ''), +(16485, 243, 0, 69, '2019-01-28', 'am1', 'bloque', '2018-12-21', ''), +(16486, 243, 0, 69, '2019-01-28', 'am2', 'bloque', '2018-12-21', ''), +(16487, 243, 0, 69, '2019-01-28', 'pm1', 'bloque', '2018-12-21', ''), +(16488, 243, 0, 69, '2019-01-28', 'pm2', 'bloque', '2018-12-21', ''), +(16489, 243, 0, 69, '2019-01-29', 'am1', 'bloque', '2018-12-21', ''), +(16490, 243, 0, 69, '2019-01-29', 'am2', 'bloque', '2018-12-21', ''), +(16491, 243, 0, 69, '2019-01-29', 'pm1', 'bloque', '2018-12-21', ''), +(16492, 243, 0, 69, '2019-01-29', 'pm2', 'bloque', '2018-12-21', ''), +(16493, 243, 0, 69, '2019-01-30', 'am1', 'bloque', '2018-12-21', ''), +(16494, 243, 0, 69, '2019-01-30', 'am2', 'bloque', '2018-12-21', ''), +(16495, 243, 0, 69, '2019-01-30', 'pm1', 'bloque', '2018-12-21', ''), +(16496, 243, 0, 69, '2019-01-30', 'pm2', 'bloque', '2018-12-21', ''), +(16497, 243, 0, 69, '2019-01-31', 'am1', 'bloque', '2018-12-21', ''), +(16498, 243, 0, 69, '2019-01-31', 'am2', 'bloque', '2018-12-21', ''), +(16499, 243, 0, 69, '2019-01-31', 'pm1', 'bloque', '2018-12-21', ''), +(16500, 243, 0, 69, '2019-01-31', 'pm2', 'bloque', '2018-12-21', ''), +(16501, 243, 0, 69, '2019-02-01', 'am1', 'bloque', '2018-12-21', ''), +(16502, 243, 0, 69, '2019-02-01', 'am2', 'bloque', '2018-12-21', ''), +(16503, 243, 0, 69, '2019-02-01', 'pm1', 'bloque', '2018-12-21', ''), +(16504, 243, 0, 69, '2019-02-01', 'pm2', 'bloque', '2018-12-21', ''), +(16505, 243, 0, 69, '2019-02-04', 'am1', 'bloque', '2018-12-21', ''), +(16506, 243, 0, 69, '2019-02-04', 'am2', 'bloque', '2018-12-21', ''), +(16507, 243, 0, 69, '2019-02-04', 'pm1', 'bloque', '2018-12-21', ''), +(16508, 243, 0, 69, '2019-02-04', 'pm2', 'bloque', '2018-12-21', ''), +(16509, 243, 0, 69, '2019-02-05', 'am1', 'bloque', '2018-12-21', ''), +(16510, 243, 0, 69, '2019-02-05', 'am2', 'bloque', '2018-12-21', ''), +(16511, 243, 0, 69, '2019-02-05', 'pm1', 'bloque', '2018-12-21', ''), +(16512, 243, 0, 69, '2019-02-05', 'pm2', 'bloque', '2018-12-21', ''), +(16513, 243, 0, 69, '2019-02-06', 'am1', 'bloque', '2018-12-21', ''), +(16514, 243, 0, 69, '2019-02-06', 'am2', 'bloque', '2018-12-21', ''), +(16515, 243, 0, 69, '2019-02-06', 'pm1', 'bloque', '2018-12-21', ''), +(16516, 243, 0, 69, '2019-02-06', 'pm2', 'bloque', '2018-12-21', ''), +(16517, 243, 0, 69, '2019-02-07', 'am1', 'bloque', '2018-12-21', ''), +(16518, 243, 0, 69, '2019-02-07', 'am2', 'bloque', '2018-12-21', ''), +(16519, 243, 0, 69, '2019-02-07', 'pm1', 'bloque', '2018-12-21', ''), +(16520, 243, 0, 69, '2019-02-07', 'pm2', 'bloque', '2018-12-21', ''), +(16521, 243, 0, 69, '2019-02-08', 'am1', 'bloque', '2018-12-21', ''), +(16522, 243, 0, 69, '2019-02-08', 'am2', 'bloque', '2018-12-21', ''), +(16523, 243, 0, 69, '2019-02-08', 'pm1', 'bloque', '2018-12-21', ''), +(16524, 243, 0, 69, '2019-02-08', 'pm2', 'bloque', '2018-12-21', ''), +(16525, 244, 0, 342, '2019-01-17', 'am1', 'libre', '2018-12-21', ''), +(16526, 244, 0, 342, '2019-01-17', 'am2', 'libre', '2018-12-21', ''), +(16527, 244, 0, 342, '2019-01-17', 'pm1', 'libre', '2018-12-21', ''), +(16528, 244, 0, 342, '2019-01-17', 'pm2', 'libre', '2018-12-21', ''), +(16529, 244, 0, 342, '2019-01-18', 'am1', 'bloque', '2018-12-21', ''), +(16530, 244, 0, 342, '2019-01-18', 'am2', 'bloque', '2018-12-21', ''), +(16531, 244, 0, 342, '2019-01-18', 'pm1', 'bloque', '2018-12-21', ''), +(16532, 244, 0, 342, '2019-01-18', 'pm2', 'bloque', '2018-12-21', ''), +(16533, 244, 0, 342, '2019-01-21', 'am1', 'bloque', '2018-12-21', ''), +(16534, 244, 0, 342, '2019-01-21', 'am2', 'bloque', '2018-12-21', ''), +(16535, 244, 0, 342, '2019-01-21', 'pm1', 'bloque', '2018-12-21', ''), +(16536, 244, 0, 342, '2019-01-21', 'pm2', 'bloque', '2018-12-21', ''), +(16537, 244, 0, 342, '2019-01-22', 'am1', 'bloque', '2018-12-21', ''), +(16538, 244, 0, 342, '2019-01-22', 'am2', 'bloque', '2018-12-21', ''), +(16539, 244, 0, 342, '2019-01-22', 'pm1', 'bloque', '2018-12-21', ''), +(16540, 244, 0, 342, '2019-01-22', 'pm2', 'bloque', '2018-12-21', ''), +(16541, 244, 0, 342, '2019-01-23', 'am1', 'bloque', '2018-12-21', ''), +(16542, 244, 0, 342, '2019-01-23', 'am2', 'bloque', '2018-12-21', ''), +(16543, 244, 0, 342, '2019-01-23', 'pm1', 'bloque', '2018-12-21', ''), +(16544, 244, 0, 342, '2019-01-23', 'pm2', 'bloque', '2018-12-21', ''), +(16545, 244, 0, 342, '2019-01-24', 'am1', 'bloque', '2018-12-21', ''), +(16546, 244, 0, 342, '2019-01-24', 'am2', 'bloque', '2018-12-21', ''), +(16547, 244, 0, 342, '2019-01-24', 'pm1', 'bloque', '2018-12-21', ''), +(16548, 244, 0, 342, '2019-01-24', 'pm2', 'bloque', '2018-12-21', ''), +(16549, 244, 0, 342, '2019-01-25', 'am1', 'bloque', '2018-12-21', ''), +(16550, 244, 0, 342, '2019-01-25', 'am2', 'bloque', '2018-12-21', ''), +(16551, 244, 0, 342, '2019-01-25', 'pm1', 'bloque', '2018-12-21', ''), +(16552, 244, 0, 342, '2019-01-25', 'pm2', 'bloque', '2018-12-21', ''), +(16553, 244, 0, 342, '2019-01-28', 'am1', 'bloque', '2018-12-21', ''), +(16554, 244, 0, 342, '2019-01-28', 'am2', 'bloque', '2018-12-21', ''), +(16555, 244, 0, 342, '2019-01-28', 'pm1', 'bloque', '2018-12-21', ''), +(16556, 244, 0, 342, '2019-01-28', 'pm2', 'bloque', '2018-12-21', ''), +(16557, 244, 0, 342, '2019-01-29', 'am1', 'bloque', '2018-12-21', ''), +(16558, 244, 0, 342, '2019-01-29', 'am2', 'bloque', '2018-12-21', ''), +(16559, 244, 0, 342, '2019-01-29', 'pm1', 'bloque', '2018-12-21', ''), +(16560, 244, 0, 342, '2019-01-29', 'pm2', 'bloque', '2018-12-21', ''), +(16561, 244, 0, 342, '2019-01-30', 'am1', 'bloque', '2018-12-21', ''), +(16562, 244, 0, 342, '2019-01-30', 'am2', 'bloque', '2018-12-21', ''), +(16563, 244, 0, 342, '2019-01-30', 'pm1', 'bloque', '2018-12-21', ''), +(16564, 244, 0, 342, '2019-01-30', 'pm2', 'bloque', '2018-12-21', ''), +(16565, 244, 0, 342, '2019-01-31', 'am1', 'bloque', '2018-12-21', ''), +(16566, 244, 0, 342, '2019-01-31', 'am2', 'bloque', '2018-12-21', ''), +(16567, 244, 0, 342, '2019-01-31', 'pm1', 'bloque', '2018-12-21', ''), +(16568, 244, 0, 342, '2019-01-31', 'pm2', 'bloque', '2018-12-21', ''), +(16569, 244, 0, 342, '2019-02-01', 'am1', 'bloque', '2018-12-21', ''), +(16570, 244, 0, 342, '2019-02-01', 'am2', 'bloque', '2018-12-21', ''), +(16571, 244, 0, 342, '2019-02-01', 'pm1', 'bloque', '2018-12-21', ''), +(16572, 244, 0, 342, '2019-02-01', 'pm2', 'bloque', '2018-12-21', ''), +(16573, 244, 0, 342, '2019-02-04', 'am1', 'bloque', '2018-12-21', ''), +(16574, 244, 0, 342, '2019-02-04', 'am2', 'bloque', '2018-12-21', ''), +(16575, 244, 0, 342, '2019-02-04', 'pm1', 'bloque', '2018-12-21', ''), +(16576, 244, 0, 342, '2019-02-04', 'pm2', 'bloque', '2018-12-21', ''), +(16577, 244, 0, 342, '2019-02-05', 'am1', 'bloque', '2018-12-21', ''), +(16578, 244, 0, 342, '2019-02-05', 'am2', 'bloque', '2018-12-21', ''), +(16579, 244, 0, 342, '2019-02-05', 'pm1', 'bloque', '2018-12-21', ''), +(16580, 244, 0, 342, '2019-02-05', 'pm2', 'bloque', '2018-12-21', ''), +(16581, 244, 0, 342, '2019-02-06', 'am1', 'bloque', '2018-12-21', ''), +(16582, 244, 0, 342, '2019-02-06', 'am2', 'bloque', '2018-12-21', ''), +(16583, 244, 0, 342, '2019-02-06', 'pm1', 'bloque', '2018-12-21', ''), +(16584, 244, 0, 342, '2019-02-06', 'pm2', 'bloque', '2018-12-21', ''), +(16585, 244, 0, 342, '2019-02-07', 'am1', 'bloque', '2018-12-21', ''), +(16586, 244, 0, 342, '2019-02-07', 'am2', 'bloque', '2018-12-21', ''), +(16587, 244, 0, 342, '2019-02-07', 'pm1', 'bloque', '2018-12-21', ''), +(16588, 244, 0, 342, '2019-02-07', 'pm2', 'bloque', '2018-12-21', ''), +(16589, 244, 0, 342, '2019-02-08', 'am1', 'bloque', '2018-12-21', ''), +(16590, 244, 0, 342, '2019-02-08', 'am2', 'bloque', '2018-12-21', ''), +(16591, 244, 0, 342, '2019-02-08', 'pm1', 'bloque', '2018-12-21', ''), +(16592, 244, 0, 342, '2019-02-08', 'pm2', 'bloque', '2018-12-21', ''), +(16593, 245, 0, 35, '2019-01-17', 'am1', 'libre', '2018-12-26', 'ref'), +(16594, 245, 0, 35, '2019-01-17', 'am2', 'libre', '2018-12-26', 'ref'), +(16595, 245, 0, 35, '2019-01-17', 'pm1', 'libre', '2018-12-26', 'ref'), +(16596, 245, 0, 35, '2019-01-17', 'pm2', 'libre', '2018-12-26', 'ref'), +(16597, 245, 0, 35, '2019-01-18', 'am1', 'bloque', '2018-12-26', ''), +(16598, 245, 0, 35, '2019-01-18', 'am2', 'bloque', '2018-12-26', ''), +(16599, 245, 0, 35, '2019-01-18', 'pm1', 'bloque', '2018-12-26', ''), +(16600, 245, 0, 35, '2019-01-18', 'pm2', 'bloque', '2018-12-26', ''), +(16601, 245, 0, 35, '2019-01-21', 'am1', 'bloque', '2018-12-26', ''), +(16602, 245, 0, 35, '2019-01-21', 'am2', 'bloque', '2018-12-26', ''), +(16603, 245, 0, 35, '2019-01-21', 'pm1', 'bloque', '2018-12-26', ''), +(16604, 245, 0, 35, '2019-01-21', 'pm2', 'bloque', '2018-12-26', ''), +(16605, 245, 0, 35, '2019-01-22', 'am1', 'bloque', '2018-12-26', ''), +(16606, 245, 0, 35, '2019-01-22', 'am2', 'bloque', '2018-12-26', ''), +(16607, 245, 0, 35, '2019-01-22', 'pm1', 'bloque', '2018-12-26', ''), +(16608, 245, 0, 35, '2019-01-22', 'pm2', 'bloque', '2018-12-26', ''), +(16609, 245, 0, 35, '2019-01-23', 'am1', 'bloque', '2018-12-26', ''), +(16610, 245, 0, 35, '2019-01-23', 'am2', 'bloque', '2018-12-26', ''), +(16611, 245, 0, 35, '2019-01-23', 'pm1', 'bloque', '2018-12-26', ''), +(16612, 245, 0, 35, '2019-01-23', 'pm2', 'bloque', '2018-12-26', ''), +(16613, 245, 0, 35, '2019-01-24', 'am1', 'bloque', '2018-12-26', ''), +(16614, 245, 0, 35, '2019-01-24', 'am2', 'bloque', '2018-12-26', ''), +(16615, 245, 0, 35, '2019-01-24', 'pm1', 'bloque', '2018-12-26', ''), +(16616, 245, 0, 35, '2019-01-24', 'pm2', 'bloque', '2018-12-26', ''), +(16617, 245, 0, 35, '2019-01-25', 'am1', 'bloque', '2018-12-26', ''), +(16618, 245, 0, 35, '2019-01-25', 'am2', 'bloque', '2018-12-26', ''), +(16619, 245, 0, 35, '2019-01-25', 'pm1', 'bloque', '2018-12-26', ''), +(16620, 245, 0, 35, '2019-01-25', 'pm2', 'bloque', '2018-12-26', ''), +(16621, 245, 0, 35, '2019-01-28', 'am1', 'bloque', '2018-12-26', ''), +(16622, 245, 0, 35, '2019-01-28', 'am2', 'bloque', '2018-12-26', ''), +(16623, 245, 0, 35, '2019-01-28', 'pm1', 'bloque', '2018-12-26', ''), +(16624, 245, 0, 35, '2019-01-28', 'pm2', 'bloque', '2018-12-26', ''), +(16625, 245, 0, 35, '2019-01-29', 'am1', 'bloque', '2018-12-26', ''), +(16626, 245, 0, 35, '2019-01-29', 'am2', 'bloque', '2018-12-26', ''), +(16627, 245, 0, 35, '2019-01-29', 'pm1', 'bloque', '2018-12-26', ''), +(16628, 245, 0, 35, '2019-01-29', 'pm2', 'bloque', '2018-12-26', ''), +(16629, 245, 0, 35, '2019-01-30', 'am1', 'bloque', '2018-12-26', ''), +(16630, 245, 0, 35, '2019-01-30', 'am2', 'bloque', '2018-12-26', ''), +(16631, 245, 0, 35, '2019-01-30', 'pm1', 'bloque', '2018-12-26', ''), +(16632, 245, 0, 35, '2019-01-30', 'pm2', 'bloque', '2018-12-26', ''), +(16633, 245, 0, 35, '2019-01-31', 'am1', 'bloque', '2018-12-26', ''), +(16634, 245, 0, 35, '2019-01-31', 'am2', 'bloque', '2018-12-26', ''), +(16635, 245, 0, 35, '2019-01-31', 'pm1', 'bloque', '2018-12-26', ''), +(16636, 245, 0, 35, '2019-01-31', 'pm2', 'bloque', '2018-12-26', ''), +(16637, 245, 0, 35, '2019-02-01', 'am1', 'bloque', '2018-12-26', ''), +(16638, 245, 0, 35, '2019-02-01', 'am2', 'bloque', '2018-12-26', ''), +(16639, 245, 0, 35, '2019-02-01', 'pm1', 'bloque', '2018-12-26', ''), +(16640, 245, 0, 35, '2019-02-01', 'pm2', 'bloque', '2018-12-26', ''), +(16641, 245, 0, 35, '2019-02-04', 'am1', 'bloque', '2018-12-26', ''), +(16642, 245, 0, 35, '2019-02-04', 'am2', 'bloque', '2018-12-26', ''), +(16643, 245, 0, 35, '2019-02-04', 'pm1', 'bloque', '2018-12-26', ''), +(16644, 245, 0, 35, '2019-02-04', 'pm2', 'bloque', '2018-12-26', ''), +(16645, 245, 0, 35, '2019-02-05', 'am1', 'bloque', '2018-12-26', ''), +(16646, 245, 0, 35, '2019-02-05', 'am2', 'bloque', '2018-12-26', ''), +(16647, 245, 0, 35, '2019-02-05', 'pm1', 'bloque', '2018-12-26', ''), +(16648, 245, 0, 35, '2019-02-05', 'pm2', 'bloque', '2018-12-26', ''), +(16649, 245, 0, 35, '2019-02-06', 'am1', 'bloque', '2018-12-26', ''), +(16650, 245, 0, 35, '2019-02-06', 'am2', 'bloque', '2018-12-26', ''), +(16651, 245, 0, 35, '2019-02-06', 'pm1', 'bloque', '2018-12-26', ''), +(16652, 245, 0, 35, '2019-02-06', 'pm2', 'bloque', '2018-12-26', ''), +(16653, 245, 0, 35, '2019-02-07', 'am1', 'bloque', '2018-12-26', ''), +(16654, 245, 0, 35, '2019-02-07', 'am2', 'bloque', '2018-12-26', ''), +(16655, 245, 0, 35, '2019-02-07', 'pm1', 'bloque', '2018-12-26', ''), +(16656, 245, 0, 35, '2019-02-07', 'pm2', 'bloque', '2018-12-26', ''), +(16657, 245, 0, 35, '2019-02-08', 'am1', 'bloque', '2018-12-26', ''), +(16658, 245, 0, 35, '2019-02-08', 'am2', 'bloque', '2018-12-26', ''), +(16659, 245, 0, 35, '2019-02-08', 'pm1', 'bloque', '2018-12-26', ''), +(16660, 245, 0, 35, '2019-02-08', 'pm2', 'bloque', '2018-12-26', ''), +(16661, 246, 0, 35, '2019-01-17', 'am1', 'bloque', '2018-12-26', 'ref'), +(16662, 246, 0, 35, '2019-01-17', 'am2', 'bloque', '2018-12-26', 'ref'), +(16663, 246, 0, 35, '2019-01-17', 'pm1', 'bloque', '2018-12-26', 'ref'), +(16664, 246, 0, 35, '2019-01-17', 'pm2', 'bloque', '2018-12-26', 'ref'), +(16665, 246, 0, 35, '2019-01-18', 'am1', 'bloque', '2018-12-26', ''), +(16666, 246, 0, 35, '2019-01-18', 'am2', 'bloque', '2018-12-26', ''), +(16667, 246, 0, 35, '2019-01-18', 'pm1', 'bloque', '2018-12-26', ''), +(16668, 246, 0, 35, '2019-01-18', 'pm2', 'bloque', '2018-12-26', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(16669, 246, 0, 35, '2019-01-21', 'am1', 'bloque', '2018-12-26', ''), +(16670, 246, 0, 35, '2019-01-21', 'am2', 'bloque', '2018-12-26', ''), +(16671, 246, 0, 35, '2019-01-21', 'pm1', 'bloque', '2018-12-26', ''), +(16672, 246, 0, 35, '2019-01-21', 'pm2', 'bloque', '2018-12-26', ''), +(16673, 246, 0, 35, '2019-01-22', 'am1', 'bloque', '2018-12-26', ''), +(16674, 246, 0, 35, '2019-01-22', 'am2', 'bloque', '2018-12-26', ''), +(16675, 246, 0, 35, '2019-01-22', 'pm1', 'bloque', '2018-12-26', ''), +(16676, 246, 0, 35, '2019-01-22', 'pm2', 'bloque', '2018-12-26', ''), +(16677, 246, 0, 35, '2019-01-23', 'am1', 'bloque', '2018-12-26', ''), +(16678, 246, 0, 35, '2019-01-23', 'am2', 'bloque', '2018-12-26', ''), +(16679, 246, 0, 35, '2019-01-23', 'pm1', 'bloque', '2018-12-26', ''), +(16680, 246, 0, 35, '2019-01-23', 'pm2', 'bloque', '2018-12-26', ''), +(16681, 246, 0, 35, '2019-01-24', 'am1', 'bloque', '2018-12-26', ''), +(16682, 246, 0, 35, '2019-01-24', 'am2', 'bloque', '2018-12-26', ''), +(16683, 246, 0, 35, '2019-01-24', 'pm1', 'bloque', '2018-12-26', ''), +(16684, 246, 0, 35, '2019-01-24', 'pm2', 'bloque', '2018-12-26', ''), +(16685, 246, 0, 35, '2019-01-25', 'am1', 'bloque', '2018-12-26', ''), +(16686, 246, 0, 35, '2019-01-25', 'am2', 'bloque', '2018-12-26', ''), +(16687, 246, 0, 35, '2019-01-25', 'pm1', 'bloque', '2018-12-26', ''), +(16688, 246, 0, 35, '2019-01-25', 'pm2', 'bloque', '2018-12-26', ''), +(16689, 246, 0, 35, '2019-01-28', 'am1', 'bloque', '2018-12-26', ''), +(16690, 246, 0, 35, '2019-01-28', 'am2', 'bloque', '2018-12-26', ''), +(16691, 246, 0, 35, '2019-01-28', 'pm1', 'bloque', '2018-12-26', ''), +(16692, 246, 0, 35, '2019-01-28', 'pm2', 'bloque', '2018-12-26', ''), +(16693, 246, 0, 35, '2019-01-29', 'am1', 'bloque', '2018-12-26', ''), +(16694, 246, 0, 35, '2019-01-29', 'am2', 'bloque', '2018-12-26', ''), +(16695, 246, 0, 35, '2019-01-29', 'pm1', 'bloque', '2018-12-26', ''), +(16696, 246, 0, 35, '2019-01-29', 'pm2', 'bloque', '2018-12-26', ''), +(16697, 246, 0, 35, '2019-01-30', 'am1', 'bloque', '2018-12-26', ''), +(16698, 246, 0, 35, '2019-01-30', 'am2', 'bloque', '2018-12-26', ''), +(16699, 246, 0, 35, '2019-01-30', 'pm1', 'bloque', '2018-12-26', ''), +(16700, 246, 0, 35, '2019-01-30', 'pm2', 'bloque', '2018-12-26', ''), +(16701, 246, 0, 35, '2019-01-31', 'am1', 'bloque', '2018-12-26', ''), +(16702, 246, 0, 35, '2019-01-31', 'am2', 'bloque', '2018-12-26', ''), +(16703, 246, 0, 35, '2019-01-31', 'pm1', 'bloque', '2018-12-26', ''), +(16704, 246, 0, 35, '2019-01-31', 'pm2', 'bloque', '2018-12-26', ''), +(16705, 246, 0, 35, '2019-02-01', 'am1', 'bloque', '2018-12-26', ''), +(16706, 246, 0, 35, '2019-02-01', 'am2', 'bloque', '2018-12-26', ''), +(16707, 246, 0, 35, '2019-02-01', 'pm1', 'bloque', '2018-12-26', ''), +(16708, 246, 0, 35, '2019-02-01', 'pm2', 'bloque', '2018-12-26', ''), +(16709, 246, 0, 35, '2019-02-04', 'am1', 'bloque', '2018-12-26', ''), +(16710, 246, 0, 35, '2019-02-04', 'am2', 'bloque', '2018-12-26', ''), +(16711, 246, 0, 35, '2019-02-04', 'pm1', 'bloque', '2018-12-26', ''), +(16712, 246, 0, 35, '2019-02-04', 'pm2', 'bloque', '2018-12-26', ''), +(16713, 246, 0, 35, '2019-02-05', 'am1', 'bloque', '2018-12-26', ''), +(16714, 246, 0, 35, '2019-02-05', 'am2', 'bloque', '2018-12-26', ''), +(16715, 246, 0, 35, '2019-02-05', 'pm1', 'bloque', '2018-12-26', ''), +(16716, 246, 0, 35, '2019-02-05', 'pm2', 'bloque', '2018-12-26', ''), +(16717, 246, 0, 35, '2019-02-06', 'am1', 'bloque', '2018-12-26', ''), +(16718, 246, 0, 35, '2019-02-06', 'am2', 'bloque', '2018-12-26', ''), +(16719, 246, 0, 35, '2019-02-06', 'pm1', 'bloque', '2018-12-26', ''), +(16720, 246, 0, 35, '2019-02-06', 'pm2', 'bloque', '2018-12-26', ''), +(16721, 246, 0, 35, '2019-02-07', 'am1', 'bloque', '2018-12-26', ''), +(16722, 246, 0, 35, '2019-02-07', 'am2', 'bloque', '2018-12-26', ''), +(16723, 246, 0, 35, '2019-02-07', 'pm1', 'bloque', '2018-12-26', ''), +(16724, 246, 0, 35, '2019-02-07', 'pm2', 'bloque', '2018-12-26', ''), +(16725, 246, 0, 35, '2019-02-08', 'am1', 'bloque', '2018-12-26', ''), +(16726, 246, 0, 35, '2019-02-08', 'am2', 'bloque', '2018-12-26', ''), +(16727, 246, 0, 35, '2019-02-08', 'pm1', 'bloque', '2018-12-26', ''), +(16728, 246, 0, 35, '2019-02-08', 'pm2', 'bloque', '2018-12-26', ''), +(16729, 247, 183, 283, '2019-01-17', 'am1', 'reserve', '2019-01-02', 'ref'), +(16730, 247, 0, 283, '2019-01-17', 'am2', 'libre', '2019-01-02', ''), +(16731, 247, 0, 283, '2019-01-17', 'pm1', 'bloque', '2019-01-02', 'ref'), +(16732, 247, 0, 283, '2019-01-17', 'pm2', 'bloque', '2019-01-02', 'ref'), +(16733, 247, 0, 283, '2019-01-18', 'am1', 'bloque', '2019-01-02', ''), +(16734, 247, 0, 283, '2019-01-18', 'am2', 'bloque', '2019-01-02', ''), +(16735, 247, 0, 283, '2019-01-18', 'pm1', 'bloque', '2019-01-02', ''), +(16736, 247, 0, 283, '2019-01-18', 'pm2', 'bloque', '2019-01-02', ''), +(16737, 247, 0, 283, '2019-01-21', 'am1', 'bloque', '2019-01-02', ''), +(16738, 247, 0, 283, '2019-01-21', 'am2', 'bloque', '2019-01-02', ''), +(16739, 247, 0, 283, '2019-01-21', 'pm1', 'bloque', '2019-01-02', ''), +(16740, 247, 0, 283, '2019-01-21', 'pm2', 'bloque', '2019-01-02', ''), +(16741, 247, 0, 283, '2019-01-22', 'am1', 'bloque', '2019-01-02', ''), +(16742, 247, 0, 283, '2019-01-22', 'am2', 'bloque', '2019-01-02', ''), +(16743, 247, 0, 283, '2019-01-22', 'pm1', 'bloque', '2019-01-02', ''), +(16744, 247, 0, 283, '2019-01-22', 'pm2', 'bloque', '2019-01-02', ''), +(16745, 247, 0, 283, '2019-01-23', 'am1', 'bloque', '2019-01-02', ''), +(16746, 247, 0, 283, '2019-01-23', 'am2', 'bloque', '2019-01-02', ''), +(16747, 247, 0, 283, '2019-01-23', 'pm1', 'bloque', '2019-01-02', ''), +(16748, 247, 0, 283, '2019-01-23', 'pm2', 'bloque', '2019-01-02', ''), +(16749, 247, 0, 283, '2019-01-24', 'am1', 'bloque', '2019-01-02', ''), +(16750, 247, 0, 283, '2019-01-24', 'am2', 'bloque', '2019-01-02', ''), +(16751, 247, 0, 283, '2019-01-24', 'pm1', 'bloque', '2019-01-02', ''), +(16752, 247, 0, 283, '2019-01-24', 'pm2', 'bloque', '2019-01-02', ''), +(16753, 247, 0, 283, '2019-01-25', 'am1', 'bloque', '2019-01-02', ''), +(16754, 247, 0, 283, '2019-01-25', 'am2', 'bloque', '2019-01-02', ''), +(16755, 247, 0, 283, '2019-01-25', 'pm1', 'bloque', '2019-01-02', ''), +(16756, 247, 0, 283, '2019-01-25', 'pm2', 'bloque', '2019-01-02', ''), +(16757, 247, 0, 283, '2019-01-28', 'am1', 'bloque', '2019-01-02', ''), +(16758, 247, 0, 283, '2019-01-28', 'am2', 'bloque', '2019-01-02', ''), +(16759, 247, 0, 283, '2019-01-28', 'pm1', 'bloque', '2019-01-02', ''), +(16760, 247, 0, 283, '2019-01-28', 'pm2', 'bloque', '2019-01-02', ''), +(16761, 247, 0, 283, '2019-01-29', 'am1', 'bloque', '2019-01-02', ''), +(16762, 247, 0, 283, '2019-01-29', 'am2', 'bloque', '2019-01-02', ''), +(16763, 247, 0, 283, '2019-01-29', 'pm1', 'bloque', '2019-01-02', ''), +(16764, 247, 0, 283, '2019-01-29', 'pm2', 'bloque', '2019-01-02', ''), +(16765, 247, 0, 283, '2019-01-30', 'am1', 'bloque', '2019-01-02', ''), +(16766, 247, 0, 283, '2019-01-30', 'am2', 'bloque', '2019-01-02', ''), +(16767, 247, 0, 283, '2019-01-30', 'pm1', 'bloque', '2019-01-02', ''), +(16768, 247, 0, 283, '2019-01-30', 'pm2', 'bloque', '2019-01-02', ''), +(16769, 247, 0, 283, '2019-01-31', 'am1', 'bloque', '2019-01-02', ''), +(16770, 247, 0, 283, '2019-01-31', 'am2', 'bloque', '2019-01-02', ''), +(16771, 247, 0, 283, '2019-01-31', 'pm1', 'bloque', '2019-01-02', ''), +(16772, 247, 0, 283, '2019-01-31', 'pm2', 'bloque', '2019-01-02', ''), +(16773, 247, 0, 283, '2019-02-01', 'am1', 'bloque', '2019-01-02', ''), +(16774, 247, 0, 283, '2019-02-01', 'am2', 'bloque', '2019-01-02', ''), +(16775, 247, 0, 283, '2019-02-01', 'pm1', 'bloque', '2019-01-02', ''), +(16776, 247, 0, 283, '2019-02-01', 'pm2', 'bloque', '2019-01-02', ''), +(16777, 247, 0, 283, '2019-02-04', 'am1', 'bloque', '2019-01-02', ''), +(16778, 247, 0, 283, '2019-02-04', 'am2', 'bloque', '2019-01-02', ''), +(16779, 247, 0, 283, '2019-02-04', 'pm1', 'bloque', '2019-01-02', ''), +(16780, 247, 0, 283, '2019-02-04', 'pm2', 'bloque', '2019-01-02', ''), +(16781, 247, 0, 283, '2019-02-05', 'am1', 'bloque', '2019-01-02', ''), +(16782, 247, 0, 283, '2019-02-05', 'am2', 'bloque', '2019-01-02', ''), +(16783, 247, 0, 283, '2019-02-05', 'pm1', 'bloque', '2019-01-02', ''), +(16784, 247, 0, 283, '2019-02-05', 'pm2', 'bloque', '2019-01-02', ''), +(16785, 247, 0, 283, '2019-02-06', 'am1', 'bloque', '2019-01-02', ''), +(16786, 247, 0, 283, '2019-02-06', 'am2', 'bloque', '2019-01-02', ''), +(16787, 247, 0, 283, '2019-02-06', 'pm1', 'bloque', '2019-01-02', ''), +(16788, 247, 0, 283, '2019-02-06', 'pm2', 'bloque', '2019-01-02', ''), +(16789, 247, 0, 283, '2019-02-07', 'am1', 'bloque', '2019-01-02', ''), +(16790, 247, 0, 283, '2019-02-07', 'am2', 'bloque', '2019-01-02', ''), +(16791, 247, 0, 283, '2019-02-07', 'pm1', 'bloque', '2019-01-02', ''), +(16792, 247, 0, 283, '2019-02-07', 'pm2', 'bloque', '2019-01-02', ''), +(16793, 247, 0, 283, '2019-02-08', 'am1', 'bloque', '2019-01-02', ''), +(16794, 247, 0, 283, '2019-02-08', 'am2', 'bloque', '2019-01-02', ''), +(16795, 247, 0, 283, '2019-02-08', 'pm1', 'bloque', '2019-01-02', ''), +(16796, 247, 0, 283, '2019-02-08', 'pm2', 'bloque', '2019-01-02', ''), +(16797, 248, 0, 4, '2019-01-17', 'am1', 'libre', '2019-01-03', ''), +(16798, 248, 0, 4, '2019-01-17', 'am2', 'libre', '2019-01-03', ''), +(16799, 248, 222, 4, '2019-01-17', 'pm1', 'reserve', '2019-01-08', 'ref'), +(16800, 248, 0, 4, '2019-01-17', 'pm2', 'libre', '2019-01-03', ''), +(16801, 248, 0, 4, '2019-01-18', 'am1', 'bloque', '2019-01-03', ''), +(16802, 248, 0, 4, '2019-01-18', 'am2', 'bloque', '2019-01-03', ''), +(16803, 248, 0, 4, '2019-01-18', 'pm1', 'bloque', '2019-01-03', ''), +(16804, 248, 0, 4, '2019-01-18', 'pm2', 'bloque', '2019-01-03', ''), +(16805, 248, 0, 4, '2019-01-21', 'am1', 'bloque', '2019-01-03', ''), +(16806, 248, 0, 4, '2019-01-21', 'am2', 'bloque', '2019-01-03', ''), +(16807, 248, 0, 4, '2019-01-21', 'pm1', 'bloque', '2019-01-03', ''), +(16808, 248, 0, 4, '2019-01-21', 'pm2', 'bloque', '2019-01-03', ''), +(16809, 248, 0, 4, '2019-01-22', 'am1', 'bloque', '2019-01-03', ''), +(16810, 248, 0, 4, '2019-01-22', 'am2', 'bloque', '2019-01-03', ''), +(16811, 248, 0, 4, '2019-01-22', 'pm1', 'bloque', '2019-01-03', ''), +(16812, 248, 0, 4, '2019-01-22', 'pm2', 'bloque', '2019-01-03', ''), +(16813, 248, 0, 4, '2019-01-23', 'am1', 'bloque', '2019-01-03', ''), +(16814, 248, 0, 4, '2019-01-23', 'am2', 'bloque', '2019-01-03', ''), +(16815, 248, 0, 4, '2019-01-23', 'pm1', 'bloque', '2019-01-03', ''), +(16816, 248, 0, 4, '2019-01-23', 'pm2', 'bloque', '2019-01-03', ''), +(16817, 248, 0, 4, '2019-01-24', 'am1', 'bloque', '2019-01-03', ''), +(16818, 248, 0, 4, '2019-01-24', 'am2', 'bloque', '2019-01-03', ''), +(16819, 248, 0, 4, '2019-01-24', 'pm1', 'bloque', '2019-01-03', ''), +(16820, 248, 0, 4, '2019-01-24', 'pm2', 'bloque', '2019-01-03', ''), +(16821, 248, 0, 4, '2019-01-25', 'am1', 'bloque', '2019-01-03', ''), +(16822, 248, 0, 4, '2019-01-25', 'am2', 'bloque', '2019-01-03', ''), +(16823, 248, 0, 4, '2019-01-25', 'pm1', 'bloque', '2019-01-03', ''), +(16824, 248, 0, 4, '2019-01-25', 'pm2', 'bloque', '2019-01-03', ''), +(16825, 248, 0, 4, '2019-01-28', 'am1', 'bloque', '2019-01-03', ''), +(16826, 248, 0, 4, '2019-01-28', 'am2', 'bloque', '2019-01-03', ''), +(16827, 248, 291, 4, '2019-01-28', 'pm1', 'reserve', '2019-01-16', 'ref'), +(16828, 248, 0, 4, '2019-01-28', 'pm2', 'bloque', '2019-01-03', ''), +(16829, 248, 0, 4, '2019-01-29', 'am1', 'bloque', '2019-01-03', ''), +(16830, 248, 0, 4, '2019-01-29', 'am2', 'bloque', '2019-01-03', ''), +(16831, 248, 0, 4, '2019-01-29', 'pm1', 'bloque', '2019-01-03', ''), +(16832, 248, 0, 4, '2019-01-29', 'pm2', 'bloque', '2019-01-03', ''), +(16833, 248, 0, 4, '2019-01-30', 'am1', 'bloque', '2019-01-03', ''), +(16834, 248, 0, 4, '2019-01-30', 'am2', 'bloque', '2019-01-03', ''), +(16835, 248, 0, 4, '2019-01-30', 'pm1', 'bloque', '2019-01-03', ''), +(16836, 248, 0, 4, '2019-01-30', 'pm2', 'bloque', '2019-01-03', ''), +(16837, 248, 0, 4, '2019-01-31', 'am1', 'bloque', '2019-01-03', ''), +(16838, 248, 0, 4, '2019-01-31', 'am2', 'bloque', '2019-01-03', ''), +(16839, 248, 0, 4, '2019-01-31', 'pm1', 'bloque', '2019-01-03', ''), +(16840, 248, 0, 4, '2019-01-31', 'pm2', 'bloque', '2019-01-03', ''), +(16841, 248, 0, 4, '2019-02-01', 'am1', 'bloque', '2019-01-03', ''), +(16842, 248, 0, 4, '2019-02-01', 'am2', 'bloque', '2019-01-03', ''), +(16843, 248, 0, 4, '2019-02-01', 'pm1', 'bloque', '2019-01-03', ''), +(16844, 248, 0, 4, '2019-02-01', 'pm2', 'bloque', '2019-01-03', ''), +(16845, 248, 0, 4, '2019-02-04', 'am1', 'bloque', '2019-01-03', ''), +(16846, 248, 0, 4, '2019-02-04', 'am2', 'bloque', '2019-01-03', ''), +(16847, 248, 0, 4, '2019-02-04', 'pm1', 'bloque', '2019-01-03', ''), +(16848, 248, 0, 4, '2019-02-04', 'pm2', 'bloque', '2019-01-03', ''), +(16849, 248, 0, 4, '2019-02-05', 'am1', 'bloque', '2019-01-03', ''), +(16850, 248, 0, 4, '2019-02-05', 'am2', 'bloque', '2019-01-03', ''), +(16851, 248, 0, 4, '2019-02-05', 'pm1', 'bloque', '2019-01-03', ''), +(16852, 248, 0, 4, '2019-02-05', 'pm2', 'bloque', '2019-01-03', ''), +(16853, 248, 0, 4, '2019-02-06', 'am1', 'bloque', '2019-01-03', ''), +(16854, 248, 0, 4, '2019-02-06', 'am2', 'bloque', '2019-01-03', ''), +(16855, 248, 0, 4, '2019-02-06', 'pm1', 'bloque', '2019-01-03', ''), +(16856, 248, 0, 4, '2019-02-06', 'pm2', 'bloque', '2019-01-03', ''), +(16857, 248, 0, 4, '2019-02-07', 'am1', 'bloque', '2019-01-03', ''), +(16858, 248, 0, 4, '2019-02-07', 'am2', 'bloque', '2019-01-03', ''), +(16859, 248, 0, 4, '2019-02-07', 'pm1', 'bloque', '2019-01-03', ''), +(16860, 248, 0, 4, '2019-02-07', 'pm2', 'bloque', '2019-01-03', ''), +(16861, 248, 0, 4, '2019-02-08', 'am1', 'bloque', '2019-01-03', ''), +(16862, 248, 0, 4, '2019-02-08', 'am2', 'bloque', '2019-01-03', ''), +(16863, 248, 0, 4, '2019-02-08', 'pm1', 'bloque', '2019-01-03', ''), +(16864, 248, 0, 4, '2019-02-08', 'pm2', 'bloque', '2019-01-03', ''), +(16865, 249, 0, 100, '2019-01-17', 'am1', 'libre', '2019-01-03', ''), +(16866, 249, 0, 100, '2019-01-17', 'am2', 'libre', '2019-01-03', ''), +(16867, 249, 0, 100, '2019-01-17', 'pm1', 'libre', '2019-01-03', ''), +(16868, 249, 0, 100, '2019-01-17', 'pm2', 'libre', '2019-01-03', ''), +(16869, 249, 0, 100, '2019-01-18', 'am1', 'bloque', '2019-01-03', ''), +(16870, 249, 0, 100, '2019-01-18', 'am2', 'bloque', '2019-01-03', ''), +(16871, 249, 0, 100, '2019-01-18', 'pm1', 'bloque', '2019-01-03', ''), +(16872, 249, 0, 100, '2019-01-18', 'pm2', 'bloque', '2019-01-03', ''), +(16873, 249, 0, 100, '2019-01-21', 'am1', 'bloque', '2019-01-03', ''), +(16874, 249, 0, 100, '2019-01-21', 'am2', 'bloque', '2019-01-03', ''), +(16875, 249, 0, 100, '2019-01-21', 'pm1', 'bloque', '2019-01-03', ''), +(16876, 249, 0, 100, '2019-01-21', 'pm2', 'bloque', '2019-01-03', ''), +(16877, 249, 0, 100, '2019-01-22', 'am1', 'bloque', '2019-01-03', ''), +(16878, 249, 0, 100, '2019-01-22', 'am2', 'bloque', '2019-01-03', ''), +(16879, 249, 0, 100, '2019-01-22', 'pm1', 'bloque', '2019-01-03', ''), +(16880, 249, 0, 100, '2019-01-22', 'pm2', 'bloque', '2019-01-03', ''), +(16881, 249, 0, 100, '2019-01-23', 'am1', 'bloque', '2019-01-03', ''), +(16882, 249, 0, 100, '2019-01-23', 'am2', 'bloque', '2019-01-03', ''), +(16883, 249, 0, 100, '2019-01-23', 'pm1', 'bloque', '2019-01-03', ''), +(16884, 249, 0, 100, '2019-01-23', 'pm2', 'bloque', '2019-01-03', ''), +(16885, 249, 0, 100, '2019-01-24', 'am1', 'bloque', '2019-01-03', ''), +(16886, 249, 0, 100, '2019-01-24', 'am2', 'bloque', '2019-01-03', ''), +(16887, 249, 0, 100, '2019-01-24', 'pm1', 'bloque', '2019-01-03', ''), +(16888, 249, 0, 100, '2019-01-24', 'pm2', 'bloque', '2019-01-03', ''), +(16889, 249, 0, 100, '2019-01-25', 'am1', 'bloque', '2019-01-03', ''), +(16890, 249, 0, 100, '2019-01-25', 'am2', 'bloque', '2019-01-03', ''), +(16891, 249, 0, 100, '2019-01-25', 'pm1', 'bloque', '2019-01-03', ''), +(16892, 249, 0, 100, '2019-01-25', 'pm2', 'bloque', '2019-01-03', ''), +(16893, 249, 0, 100, '2019-01-28', 'am1', 'bloque', '2019-01-03', ''), +(16894, 249, 0, 100, '2019-01-28', 'am2', 'bloque', '2019-01-03', ''), +(16895, 249, 0, 100, '2019-01-28', 'pm1', 'bloque', '2019-01-03', ''), +(16896, 249, 0, 100, '2019-01-28', 'pm2', 'bloque', '2019-01-03', ''), +(16897, 249, 0, 100, '2019-01-29', 'am1', 'bloque', '2019-01-03', ''), +(16898, 249, 0, 100, '2019-01-29', 'am2', 'bloque', '2019-01-03', ''), +(16899, 249, 0, 100, '2019-01-29', 'pm1', 'bloque', '2019-01-03', ''), +(16900, 249, 0, 100, '2019-01-29', 'pm2', 'bloque', '2019-01-03', ''), +(16901, 249, 0, 100, '2019-01-30', 'am1', 'bloque', '2019-01-03', ''), +(16902, 249, 0, 100, '2019-01-30', 'am2', 'bloque', '2019-01-03', ''), +(16903, 249, 0, 100, '2019-01-30', 'pm1', 'bloque', '2019-01-03', ''), +(16904, 249, 0, 100, '2019-01-30', 'pm2', 'bloque', '2019-01-03', ''), +(16905, 249, 0, 100, '2019-01-31', 'am1', 'bloque', '2019-01-03', ''), +(16906, 249, 0, 100, '2019-01-31', 'am2', 'bloque', '2019-01-03', ''), +(16907, 249, 0, 100, '2019-01-31', 'pm1', 'bloque', '2019-01-03', ''), +(16908, 249, 0, 100, '2019-01-31', 'pm2', 'bloque', '2019-01-03', ''), +(16909, 249, 0, 100, '2019-02-01', 'am1', 'bloque', '2019-01-03', ''), +(16910, 249, 0, 100, '2019-02-01', 'am2', 'bloque', '2019-01-03', ''), +(16911, 249, 0, 100, '2019-02-01', 'pm1', 'bloque', '2019-01-03', ''), +(16912, 249, 0, 100, '2019-02-01', 'pm2', 'bloque', '2019-01-03', ''), +(16913, 249, 0, 100, '2019-02-04', 'am1', 'bloque', '2019-01-03', ''), +(16914, 249, 0, 100, '2019-02-04', 'am2', 'bloque', '2019-01-03', ''), +(16915, 249, 0, 100, '2019-02-04', 'pm1', 'bloque', '2019-01-03', ''), +(16916, 249, 0, 100, '2019-02-04', 'pm2', 'bloque', '2019-01-03', ''), +(16917, 249, 0, 100, '2019-02-05', 'am1', 'bloque', '2019-01-03', ''), +(16918, 249, 0, 100, '2019-02-05', 'am2', 'bloque', '2019-01-03', ''), +(16919, 249, 0, 100, '2019-02-05', 'pm1', 'bloque', '2019-01-03', ''), +(16920, 249, 0, 100, '2019-02-05', 'pm2', 'bloque', '2019-01-03', ''), +(16921, 249, 0, 100, '2019-02-06', 'am1', 'bloque', '2019-01-03', ''), +(16922, 249, 0, 100, '2019-02-06', 'am2', 'bloque', '2019-01-03', ''), +(16923, 249, 0, 100, '2019-02-06', 'pm1', 'bloque', '2019-01-03', ''), +(16924, 249, 0, 100, '2019-02-06', 'pm2', 'bloque', '2019-01-03', ''), +(16925, 249, 0, 100, '2019-02-07', 'am1', 'bloque', '2019-01-03', ''), +(16926, 249, 0, 100, '2019-02-07', 'am2', 'bloque', '2019-01-03', ''), +(16927, 249, 0, 100, '2019-02-07', 'pm1', 'bloque', '2019-01-03', ''), +(16928, 249, 0, 100, '2019-02-07', 'pm2', 'bloque', '2019-01-03', ''), +(16929, 249, 0, 100, '2019-02-08', 'am1', 'bloque', '2019-01-03', ''), +(16930, 249, 0, 100, '2019-02-08', 'am2', 'bloque', '2019-01-03', ''), +(16931, 249, 0, 100, '2019-02-08', 'pm1', 'bloque', '2019-01-03', ''), +(16932, 249, 0, 100, '2019-02-08', 'pm2', 'bloque', '2019-01-03', ''), +(16933, 250, 210, 169, '2019-01-17', 'am1', 'reserve', '2019-01-07', 'ref'), +(16934, 250, 0, 169, '2019-01-17', 'am2', 'libre', '2019-01-07', ''), +(16935, 250, 0, 169, '2019-01-17', 'pm1', 'libre', '2019-01-07', ''), +(16936, 250, 0, 169, '2019-01-17', 'pm2', 'libre', '2019-01-07', ''), +(16937, 250, 0, 169, '2019-01-18', 'am1', 'bloque', '2019-01-07', ''), +(16938, 250, 0, 169, '2019-01-18', 'am2', 'bloque', '2019-01-07', ''), +(16939, 250, 0, 169, '2019-01-18', 'pm1', 'bloque', '2019-01-07', ''), +(16940, 250, 0, 169, '2019-01-18', 'pm2', 'bloque', '2019-01-07', ''), +(16941, 250, 0, 169, '2019-01-21', 'am1', 'bloque', '2019-01-07', ''), +(16942, 250, 0, 169, '2019-01-21', 'am2', 'bloque', '2019-01-07', ''), +(16943, 250, 0, 169, '2019-01-21', 'pm1', 'bloque', '2019-01-07', ''), +(16944, 250, 0, 169, '2019-01-21', 'pm2', 'bloque', '2019-01-07', ''), +(16945, 250, 0, 169, '2019-01-22', 'am1', 'bloque', '2019-01-07', ''), +(16946, 250, 0, 169, '2019-01-22', 'am2', 'bloque', '2019-01-07', ''), +(16947, 250, 0, 169, '2019-01-22', 'pm1', 'bloque', '2019-01-07', ''), +(16948, 250, 0, 169, '2019-01-22', 'pm2', 'bloque', '2019-01-07', ''), +(16949, 250, 0, 169, '2019-01-23', 'am1', 'bloque', '2019-01-07', ''), +(16950, 250, 0, 169, '2019-01-23', 'am2', 'bloque', '2019-01-07', ''), +(16951, 250, 0, 169, '2019-01-23', 'pm1', 'bloque', '2019-01-07', ''), +(16952, 250, 0, 169, '2019-01-23', 'pm2', 'bloque', '2019-01-07', ''), +(16953, 250, 0, 169, '2019-01-24', 'am1', 'bloque', '2019-01-07', ''), +(16954, 250, 0, 169, '2019-01-24', 'am2', 'bloque', '2019-01-07', ''), +(16955, 250, 0, 169, '2019-01-24', 'pm1', 'bloque', '2019-01-07', ''), +(16956, 250, 0, 169, '2019-01-24', 'pm2', 'bloque', '2019-01-07', ''), +(16957, 250, 0, 169, '2019-01-25', 'am1', 'bloque', '2019-01-07', ''), +(16958, 250, 0, 169, '2019-01-25', 'am2', 'bloque', '2019-01-07', ''), +(16959, 250, 0, 169, '2019-01-25', 'pm1', 'bloque', '2019-01-07', ''), +(16960, 250, 0, 169, '2019-01-25', 'pm2', 'bloque', '2019-01-07', ''), +(16961, 250, 0, 169, '2019-01-28', 'am1', 'bloque', '2019-01-07', ''), +(16962, 250, 0, 169, '2019-01-28', 'am2', 'bloque', '2019-01-07', ''), +(16963, 250, 0, 169, '2019-01-28', 'pm1', 'bloque', '2019-01-07', ''), +(16964, 250, 0, 169, '2019-01-28', 'pm2', 'bloque', '2019-01-07', ''), +(16965, 250, 0, 169, '2019-01-29', 'am1', 'bloque', '2019-01-07', ''), +(16966, 250, 0, 169, '2019-01-29', 'am2', 'bloque', '2019-01-07', ''), +(16967, 250, 0, 169, '2019-01-29', 'pm1', 'bloque', '2019-01-07', ''), +(16968, 250, 0, 169, '2019-01-29', 'pm2', 'bloque', '2019-01-07', ''), +(16969, 250, 0, 169, '2019-01-30', 'am1', 'bloque', '2019-01-07', ''), +(16970, 250, 0, 169, '2019-01-30', 'am2', 'bloque', '2019-01-07', ''), +(16971, 250, 0, 169, '2019-01-30', 'pm1', 'bloque', '2019-01-07', ''), +(16972, 250, 0, 169, '2019-01-30', 'pm2', 'bloque', '2019-01-07', ''), +(16973, 250, 0, 169, '2019-01-31', 'am1', 'bloque', '2019-01-07', ''), +(16974, 250, 0, 169, '2019-01-31', 'am2', 'bloque', '2019-01-07', ''), +(16975, 250, 0, 169, '2019-01-31', 'pm1', 'bloque', '2019-01-07', ''), +(16976, 250, 0, 169, '2019-01-31', 'pm2', 'bloque', '2019-01-07', ''), +(16977, 250, 0, 169, '2019-02-01', 'am1', 'bloque', '2019-01-07', ''), +(16978, 250, 0, 169, '2019-02-01', 'am2', 'bloque', '2019-01-07', ''), +(16979, 250, 0, 169, '2019-02-01', 'pm1', 'bloque', '2019-01-07', ''), +(16980, 250, 0, 169, '2019-02-01', 'pm2', 'bloque', '2019-01-07', ''), +(16981, 250, 0, 169, '2019-02-04', 'am1', 'bloque', '2019-01-07', ''), +(16982, 250, 0, 169, '2019-02-04', 'am2', 'bloque', '2019-01-07', ''), +(16983, 250, 0, 169, '2019-02-04', 'pm1', 'bloque', '2019-01-07', ''), +(16984, 250, 0, 169, '2019-02-04', 'pm2', 'bloque', '2019-01-07', ''), +(16985, 250, 0, 169, '2019-02-05', 'am1', 'bloque', '2019-01-07', ''), +(16986, 250, 0, 169, '2019-02-05', 'am2', 'bloque', '2019-01-07', ''), +(16987, 250, 0, 169, '2019-02-05', 'pm1', 'bloque', '2019-01-07', ''), +(16988, 250, 0, 169, '2019-02-05', 'pm2', 'bloque', '2019-01-07', ''), +(16989, 250, 0, 169, '2019-02-06', 'am1', 'bloque', '2019-01-07', ''), +(16990, 250, 0, 169, '2019-02-06', 'am2', 'bloque', '2019-01-07', ''), +(16991, 250, 0, 169, '2019-02-06', 'pm1', 'bloque', '2019-01-07', ''), +(16992, 250, 0, 169, '2019-02-06', 'pm2', 'bloque', '2019-01-07', ''), +(16993, 250, 0, 169, '2019-02-07', 'am1', 'bloque', '2019-01-07', ''), +(16994, 250, 0, 169, '2019-02-07', 'am2', 'bloque', '2019-01-07', ''), +(16995, 250, 0, 169, '2019-02-07', 'pm1', 'bloque', '2019-01-07', ''), +(16996, 250, 0, 169, '2019-02-07', 'pm2', 'bloque', '2019-01-07', ''), +(16997, 250, 0, 169, '2019-02-08', 'am1', 'bloque', '2019-01-07', ''), +(16998, 250, 0, 169, '2019-02-08', 'am2', 'bloque', '2019-01-07', ''), +(16999, 250, 0, 169, '2019-02-08', 'pm1', 'bloque', '2019-01-07', ''), +(17000, 250, 0, 169, '2019-02-08', 'pm2', 'bloque', '2019-01-07', ''), +(17001, 251, 0, 111, '2019-01-17', 'am1', 'bloque', '2019-01-07', 'ref'), +(17002, 251, 0, 111, '2019-01-17', 'am2', 'bloque', '2019-01-07', 'ref'), +(17003, 251, 227, 111, '2019-01-17', 'pm1', 'reserve', '2019-01-08', 'cap'), +(17004, 251, 0, 111, '2019-01-17', 'pm2', 'bloque', '2019-01-08', 'cap'), +(17005, 251, 0, 111, '2019-01-18', 'am1', 'bloque', '2019-01-07', ''), +(17006, 251, 0, 111, '2019-01-18', 'am2', 'bloque', '2019-01-07', ''), +(17007, 251, 0, 111, '2019-01-18', 'pm1', 'bloque', '2019-01-07', ''), +(17008, 251, 0, 111, '2019-01-18', 'pm2', 'bloque', '2019-01-07', ''), +(17009, 251, 0, 111, '2019-01-21', 'am1', 'bloque', '2019-01-07', ''), +(17010, 251, 0, 111, '2019-01-21', 'am2', 'bloque', '2019-01-07', ''), +(17011, 251, 0, 111, '2019-01-21', 'pm1', 'bloque', '2019-01-08', 'cap'), +(17012, 251, 0, 111, '2019-01-21', 'pm2', 'libre', '2019-01-07', 'ref'), +(17013, 251, 0, 111, '2019-01-22', 'am1', 'libre', '2019-01-07', 'ref'), +(17014, 251, 0, 111, '2019-01-22', 'am2', 'bloque', '2019-01-07', ''), +(17015, 251, 0, 111, '2019-01-22', 'pm1', 'bloque', '2019-01-07', ''), +(17016, 251, 0, 111, '2019-01-22', 'pm2', 'bloque', '2019-01-07', ''), +(17017, 251, 0, 111, '2019-01-23', 'am1', 'bloque', '2019-01-07', ''), +(17018, 251, 0, 111, '2019-01-23', 'am2', 'bloque', '2019-01-07', ''), +(17019, 251, 0, 111, '2019-01-23', 'pm1', 'libre', '2019-01-09', 'cap'), +(17020, 251, 0, 111, '2019-01-23', 'pm2', 'libre', '2019-01-09', 'cap'), +(17021, 251, 0, 111, '2019-01-24', 'am1', 'bloque', '2019-01-07', ''), +(17022, 251, 0, 111, '2019-01-24', 'am2', 'bloque', '2019-01-07', ''), +(17023, 251, 0, 111, '2019-01-24', 'pm1', 'bloque', '2019-01-07', ''), +(17024, 251, 0, 111, '2019-01-24', 'pm2', 'libre', '2019-01-09', 'cap'), +(17025, 251, 0, 111, '2019-01-25', 'am1', 'bloque', '2019-01-07', ''), +(17026, 251, 0, 111, '2019-01-25', 'am2', 'bloque', '2019-01-07', ''), +(17027, 251, 0, 111, '2019-01-25', 'pm1', 'libre', '2019-01-09', 'cap'), +(17028, 251, 0, 111, '2019-01-25', 'pm2', 'libre', '2019-01-09', 'cap'), +(17029, 251, 0, 111, '2019-01-28', 'am1', 'bloque', '2019-01-07', ''), +(17030, 251, 0, 111, '2019-01-28', 'am2', 'bloque', '2019-01-07', ''), +(17031, 251, 0, 111, '2019-01-28', 'pm1', 'bloque', '2019-01-07', ''), +(17032, 251, 0, 111, '2019-01-28', 'pm2', 'libre', '2019-01-09', 'cap'), +(17033, 251, 0, 111, '2019-01-29', 'am1', 'libre', '2019-01-09', 'cap'), +(17034, 251, 0, 111, '2019-01-29', 'am2', 'bloque', '2019-01-07', ''), +(17035, 251, 0, 111, '2019-01-29', 'pm1', 'bloque', '2019-01-07', ''), +(17036, 251, 0, 111, '2019-01-29', 'pm2', 'bloque', '2019-01-07', ''), +(17037, 251, 0, 111, '2019-01-30', 'am1', 'bloque', '2019-01-07', ''), +(17038, 251, 0, 111, '2019-01-30', 'am2', 'bloque', '2019-01-07', ''), +(17039, 251, 0, 111, '2019-01-30', 'pm1', 'bloque', '2019-01-07', ''), +(17040, 251, 0, 111, '2019-01-30', 'pm2', 'libre', '2019-01-09', 'cap'), +(17041, 251, 0, 111, '2019-01-31', 'am1', 'bloque', '2019-01-07', ''), +(17042, 251, 0, 111, '2019-01-31', 'am2', 'bloque', '2019-01-07', ''), +(17043, 251, 238, 111, '2019-01-31', 'pm1', 'reserve', '2019-01-09', 'cap'), +(17044, 251, 0, 111, '2019-01-31', 'pm2', 'bloque', '2019-01-07', ''), +(17045, 251, 0, 111, '2019-02-01', 'am1', 'bloque', '2019-01-07', ''), +(17046, 251, 0, 111, '2019-02-01', 'am2', 'bloque', '2019-01-07', ''), +(17047, 251, 0, 111, '2019-02-01', 'pm1', 'bloque', '2019-01-07', ''), +(17048, 251, 256, 111, '2019-02-01', 'pm2', 'reserve', '2019-01-10', 'ref'), +(17049, 251, 0, 111, '2019-02-04', 'am1', 'bloque', '2019-01-07', ''), +(17050, 251, 0, 111, '2019-02-04', 'am2', 'bloque', '2019-01-07', ''), +(17051, 251, 0, 111, '2019-02-04', 'pm1', 'bloque', '2019-01-07', ''), +(17052, 251, 0, 111, '2019-02-04', 'pm2', 'bloque', '2019-01-07', ''), +(17053, 251, 0, 111, '2019-02-05', 'am1', 'bloque', '2019-01-07', ''), +(17054, 251, 0, 111, '2019-02-05', 'am2', 'bloque', '2019-01-07', ''), +(17055, 251, 0, 111, '2019-02-05', 'pm1', 'bloque', '2019-01-07', ''), +(17056, 251, 0, 111, '2019-02-05', 'pm2', 'bloque', '2019-01-07', ''), +(17057, 251, 0, 111, '2019-02-06', 'am1', 'bloque', '2019-01-07', ''), +(17058, 251, 0, 111, '2019-02-06', 'am2', 'bloque', '2019-01-07', ''), +(17059, 251, 0, 111, '2019-02-06', 'pm1', 'bloque', '2019-01-07', ''), +(17060, 251, 0, 111, '2019-02-06', 'pm2', 'bloque', '2019-01-07', ''), +(17061, 251, 0, 111, '2019-02-07', 'am1', 'bloque', '2019-01-07', ''), +(17062, 251, 0, 111, '2019-02-07', 'am2', 'bloque', '2019-01-07', ''), +(17063, 251, 0, 111, '2019-02-07', 'pm1', 'bloque', '2019-01-07', ''), +(17064, 251, 0, 111, '2019-02-07', 'pm2', 'bloque', '2019-01-07', ''), +(17065, 251, 258, 111, '2019-02-08', 'am1', 'reserve', '2019-01-10', 'ref'), +(17066, 251, 0, 111, '2019-02-08', 'am2', 'bloque', '2019-01-07', ''), +(17067, 251, 0, 111, '2019-02-08', 'pm1', 'bloque', '2019-01-07', ''), +(17068, 251, 0, 111, '2019-02-08', 'pm2', 'bloque', '2019-01-10', 'ref'), +(17069, 252, 215, 169, '2019-01-17', 'am1', 'reserve', '2019-01-08', 'ref'), +(17070, 252, 0, 169, '2019-01-17', 'am2', 'libre', '2019-01-08', ''), +(17071, 252, 0, 169, '2019-01-17', 'pm1', 'libre', '2019-01-08', ''), +(17072, 252, 0, 169, '2019-01-17', 'pm2', 'libre', '2019-01-08', ''), +(17073, 252, 0, 169, '2019-01-18', 'am1', 'bloque', '2019-01-08', ''), +(17074, 252, 0, 169, '2019-01-18', 'am2', 'bloque', '2019-01-08', ''), +(17075, 252, 0, 169, '2019-01-18', 'pm1', 'bloque', '2019-01-08', ''), +(17076, 252, 0, 169, '2019-01-18', 'pm2', 'bloque', '2019-01-08', ''), +(17077, 252, 0, 169, '2019-01-21', 'am1', 'bloque', '2019-01-08', ''), +(17078, 252, 0, 169, '2019-01-21', 'am2', 'bloque', '2019-01-08', ''), +(17079, 252, 0, 169, '2019-01-21', 'pm1', 'bloque', '2019-01-08', ''), +(17080, 252, 0, 169, '2019-01-21', 'pm2', 'bloque', '2019-01-08', ''), +(17081, 252, 0, 169, '2019-01-22', 'am1', 'bloque', '2019-01-08', ''), +(17082, 252, 0, 169, '2019-01-22', 'am2', 'bloque', '2019-01-08', ''), +(17083, 252, 0, 169, '2019-01-22', 'pm1', 'bloque', '2019-01-08', ''), +(17084, 252, 0, 169, '2019-01-22', 'pm2', 'bloque', '2019-01-08', ''), +(17085, 252, 0, 169, '2019-01-23', 'am1', 'bloque', '2019-01-08', ''), +(17086, 252, 0, 169, '2019-01-23', 'am2', 'bloque', '2019-01-08', ''), +(17087, 252, 0, 169, '2019-01-23', 'pm1', 'bloque', '2019-01-08', ''), +(17088, 252, 0, 169, '2019-01-23', 'pm2', 'bloque', '2019-01-08', ''), +(17089, 252, 0, 169, '2019-01-24', 'am1', 'bloque', '2019-01-08', ''), +(17090, 252, 0, 169, '2019-01-24', 'am2', 'bloque', '2019-01-08', ''), +(17091, 252, 0, 169, '2019-01-24', 'pm1', 'bloque', '2019-01-08', ''), +(17092, 252, 0, 169, '2019-01-24', 'pm2', 'bloque', '2019-01-08', ''), +(17093, 252, 0, 169, '2019-01-25', 'am1', 'bloque', '2019-01-08', ''), +(17094, 252, 0, 169, '2019-01-25', 'am2', 'bloque', '2019-01-08', ''), +(17095, 252, 0, 169, '2019-01-25', 'pm1', 'bloque', '2019-01-08', ''), +(17096, 252, 0, 169, '2019-01-25', 'pm2', 'bloque', '2019-01-08', ''), +(17097, 252, 0, 169, '2019-01-28', 'am1', 'bloque', '2019-01-08', ''), +(17098, 252, 0, 169, '2019-01-28', 'am2', 'bloque', '2019-01-08', ''), +(17099, 252, 0, 169, '2019-01-28', 'pm1', 'bloque', '2019-01-08', ''), +(17100, 252, 0, 169, '2019-01-28', 'pm2', 'bloque', '2019-01-08', ''), +(17101, 252, 0, 169, '2019-01-29', 'am1', 'bloque', '2019-01-08', ''), +(17102, 252, 0, 169, '2019-01-29', 'am2', 'bloque', '2019-01-08', ''), +(17103, 252, 0, 169, '2019-01-29', 'pm1', 'bloque', '2019-01-08', ''), +(17104, 252, 0, 169, '2019-01-29', 'pm2', 'bloque', '2019-01-08', ''), +(17105, 252, 0, 169, '2019-01-30', 'am1', 'bloque', '2019-01-08', ''), +(17106, 252, 0, 169, '2019-01-30', 'am2', 'bloque', '2019-01-08', ''), +(17107, 252, 0, 169, '2019-01-30', 'pm1', 'bloque', '2019-01-08', ''), +(17108, 252, 0, 169, '2019-01-30', 'pm2', 'bloque', '2019-01-08', ''), +(17109, 252, 0, 169, '2019-01-31', 'am1', 'bloque', '2019-01-08', ''), +(17110, 252, 0, 169, '2019-01-31', 'am2', 'bloque', '2019-01-08', ''), +(17111, 252, 0, 169, '2019-01-31', 'pm1', 'bloque', '2019-01-08', ''), +(17112, 252, 0, 169, '2019-01-31', 'pm2', 'bloque', '2019-01-08', ''), +(17113, 252, 0, 169, '2019-02-01', 'am1', 'bloque', '2019-01-08', ''), +(17114, 252, 0, 169, '2019-02-01', 'am2', 'bloque', '2019-01-08', ''), +(17115, 252, 0, 169, '2019-02-01', 'pm1', 'bloque', '2019-01-08', ''), +(17116, 252, 0, 169, '2019-02-01', 'pm2', 'bloque', '2019-01-08', ''), +(17117, 252, 0, 169, '2019-02-04', 'am1', 'bloque', '2019-01-08', ''), +(17118, 252, 0, 169, '2019-02-04', 'am2', 'bloque', '2019-01-08', ''), +(17119, 252, 0, 169, '2019-02-04', 'pm1', 'bloque', '2019-01-08', ''), +(17120, 252, 0, 169, '2019-02-04', 'pm2', 'bloque', '2019-01-08', ''), +(17121, 252, 0, 169, '2019-02-05', 'am1', 'bloque', '2019-01-08', ''), +(17122, 252, 0, 169, '2019-02-05', 'am2', 'bloque', '2019-01-08', ''), +(17123, 252, 0, 169, '2019-02-05', 'pm1', 'bloque', '2019-01-08', ''), +(17124, 252, 0, 169, '2019-02-05', 'pm2', 'bloque', '2019-01-08', ''), +(17125, 252, 0, 169, '2019-02-06', 'am1', 'bloque', '2019-01-08', ''), +(17126, 252, 0, 169, '2019-02-06', 'am2', 'bloque', '2019-01-08', ''), +(17127, 252, 0, 169, '2019-02-06', 'pm1', 'bloque', '2019-01-08', ''), +(17128, 252, 0, 169, '2019-02-06', 'pm2', 'bloque', '2019-01-08', ''), +(17129, 252, 0, 169, '2019-02-07', 'am1', 'bloque', '2019-01-08', ''), +(17130, 252, 0, 169, '2019-02-07', 'am2', 'bloque', '2019-01-08', ''), +(17131, 252, 0, 169, '2019-02-07', 'pm1', 'bloque', '2019-01-08', ''), +(17132, 252, 0, 169, '2019-02-07', 'pm2', 'bloque', '2019-01-08', ''), +(17133, 252, 0, 169, '2019-02-08', 'am1', 'bloque', '2019-01-08', ''), +(17134, 252, 0, 169, '2019-02-08', 'am2', 'bloque', '2019-01-08', ''), +(17135, 252, 0, 169, '2019-02-08', 'pm1', 'bloque', '2019-01-08', ''), +(17136, 252, 0, 169, '2019-02-08', 'pm2', 'bloque', '2019-01-08', ''), +(17137, 253, 216, 169, '2019-01-17', 'am1', 'reserve', '2019-01-08', 'ref'), +(17138, 253, 0, 169, '2019-01-17', 'am2', 'libre', '2019-01-08', ''), +(17139, 253, 0, 169, '2019-01-17', 'pm1', 'libre', '2019-01-08', ''), +(17140, 253, 0, 169, '2019-01-17', 'pm2', 'libre', '2019-01-08', ''), +(17141, 253, 0, 169, '2019-01-18', 'am1', 'bloque', '2019-01-08', ''), +(17142, 253, 0, 169, '2019-01-18', 'am2', 'bloque', '2019-01-08', ''), +(17143, 253, 0, 169, '2019-01-18', 'pm1', 'bloque', '2019-01-08', ''), +(17144, 253, 0, 169, '2019-01-18', 'pm2', 'bloque', '2019-01-08', ''), +(17145, 253, 0, 169, '2019-01-21', 'am1', 'bloque', '2019-01-08', ''), +(17146, 253, 0, 169, '2019-01-21', 'am2', 'bloque', '2019-01-08', ''), +(17147, 253, 0, 169, '2019-01-21', 'pm1', 'bloque', '2019-01-08', ''), +(17148, 253, 0, 169, '2019-01-21', 'pm2', 'bloque', '2019-01-08', ''), +(17149, 253, 0, 169, '2019-01-22', 'am1', 'bloque', '2019-01-08', ''), +(17150, 253, 0, 169, '2019-01-22', 'am2', 'bloque', '2019-01-08', ''), +(17151, 253, 0, 169, '2019-01-22', 'pm1', 'bloque', '2019-01-08', ''), +(17152, 253, 0, 169, '2019-01-22', 'pm2', 'bloque', '2019-01-08', ''), +(17153, 253, 0, 169, '2019-01-23', 'am1', 'bloque', '2019-01-08', ''), +(17154, 253, 0, 169, '2019-01-23', 'am2', 'bloque', '2019-01-08', ''), +(17155, 253, 0, 169, '2019-01-23', 'pm1', 'bloque', '2019-01-08', ''), +(17156, 253, 0, 169, '2019-01-23', 'pm2', 'bloque', '2019-01-08', ''), +(17157, 253, 0, 169, '2019-01-24', 'am1', 'bloque', '2019-01-08', ''), +(17158, 253, 0, 169, '2019-01-24', 'am2', 'bloque', '2019-01-08', ''), +(17159, 253, 0, 169, '2019-01-24', 'pm1', 'bloque', '2019-01-08', ''), +(17160, 253, 0, 169, '2019-01-24', 'pm2', 'bloque', '2019-01-08', ''), +(17161, 253, 0, 169, '2019-01-25', 'am1', 'bloque', '2019-01-08', ''), +(17162, 253, 0, 169, '2019-01-25', 'am2', 'bloque', '2019-01-08', ''), +(17163, 253, 0, 169, '2019-01-25', 'pm1', 'bloque', '2019-01-08', ''), +(17164, 253, 0, 169, '2019-01-25', 'pm2', 'bloque', '2019-01-08', ''), +(17165, 253, 0, 169, '2019-01-28', 'am1', 'bloque', '2019-01-08', ''), +(17166, 253, 0, 169, '2019-01-28', 'am2', 'bloque', '2019-01-08', ''), +(17167, 253, 0, 169, '2019-01-28', 'pm1', 'bloque', '2019-01-08', ''), +(17168, 253, 0, 169, '2019-01-28', 'pm2', 'bloque', '2019-01-08', ''), +(17169, 253, 0, 169, '2019-01-29', 'am1', 'bloque', '2019-01-08', ''), +(17170, 253, 0, 169, '2019-01-29', 'am2', 'bloque', '2019-01-08', ''), +(17171, 253, 0, 169, '2019-01-29', 'pm1', 'bloque', '2019-01-08', ''), +(17172, 253, 0, 169, '2019-01-29', 'pm2', 'bloque', '2019-01-08', ''), +(17173, 253, 0, 169, '2019-01-30', 'am1', 'bloque', '2019-01-08', ''), +(17174, 253, 0, 169, '2019-01-30', 'am2', 'bloque', '2019-01-08', ''), +(17175, 253, 0, 169, '2019-01-30', 'pm1', 'bloque', '2019-01-08', ''), +(17176, 253, 0, 169, '2019-01-30', 'pm2', 'bloque', '2019-01-08', ''), +(17177, 253, 0, 169, '2019-01-31', 'am1', 'bloque', '2019-01-08', ''), +(17178, 253, 0, 169, '2019-01-31', 'am2', 'bloque', '2019-01-08', ''), +(17179, 253, 0, 169, '2019-01-31', 'pm1', 'bloque', '2019-01-08', ''), +(17180, 253, 0, 169, '2019-01-31', 'pm2', 'bloque', '2019-01-08', ''), +(17181, 253, 0, 169, '2019-02-01', 'am1', 'bloque', '2019-01-08', ''), +(17182, 253, 0, 169, '2019-02-01', 'am2', 'bloque', '2019-01-08', ''), +(17183, 253, 0, 169, '2019-02-01', 'pm1', 'bloque', '2019-01-08', ''), +(17184, 253, 0, 169, '2019-02-01', 'pm2', 'bloque', '2019-01-08', ''), +(17185, 253, 0, 169, '2019-02-04', 'am1', 'bloque', '2019-01-08', ''), +(17186, 253, 0, 169, '2019-02-04', 'am2', 'bloque', '2019-01-08', ''), +(17187, 253, 0, 169, '2019-02-04', 'pm1', 'bloque', '2019-01-08', ''), +(17188, 253, 0, 169, '2019-02-04', 'pm2', 'bloque', '2019-01-08', ''), +(17189, 253, 0, 169, '2019-02-05', 'am1', 'bloque', '2019-01-08', ''), +(17190, 253, 0, 169, '2019-02-05', 'am2', 'bloque', '2019-01-08', ''), +(17191, 253, 0, 169, '2019-02-05', 'pm1', 'bloque', '2019-01-08', ''), +(17192, 253, 0, 169, '2019-02-05', 'pm2', 'bloque', '2019-01-08', ''), +(17193, 253, 0, 169, '2019-02-06', 'am1', 'bloque', '2019-01-08', ''), +(17194, 253, 0, 169, '2019-02-06', 'am2', 'bloque', '2019-01-08', ''), +(17195, 253, 0, 169, '2019-02-06', 'pm1', 'bloque', '2019-01-08', ''), +(17196, 253, 0, 169, '2019-02-06', 'pm2', 'bloque', '2019-01-08', ''), +(17197, 253, 0, 169, '2019-02-07', 'am1', 'bloque', '2019-01-08', ''), +(17198, 253, 0, 169, '2019-02-07', 'am2', 'bloque', '2019-01-08', ''), +(17199, 253, 0, 169, '2019-02-07', 'pm1', 'bloque', '2019-01-08', ''), +(17200, 253, 0, 169, '2019-02-07', 'pm2', 'bloque', '2019-01-08', ''), +(17201, 253, 0, 169, '2019-02-08', 'am1', 'bloque', '2019-01-08', ''), +(17202, 253, 0, 169, '2019-02-08', 'am2', 'bloque', '2019-01-08', ''), +(17203, 253, 0, 169, '2019-02-08', 'pm1', 'bloque', '2019-01-08', ''), +(17204, 253, 0, 169, '2019-02-08', 'pm2', 'bloque', '2019-01-08', ''), +(17205, 254, 217, 417, '2019-01-17', 'am1', 'reserve', '2019-01-08', 'ref'), +(17206, 254, 0, 417, '2019-01-17', 'am2', 'libre', '2019-01-08', ''), +(17207, 254, 219, 417, '2019-01-17', 'pm1', 'reserve', '2019-01-08', 'ref'), +(17208, 254, 220, 417, '2019-01-17', 'pm2', 'reserve', '2019-01-08', 'ref'), +(17209, 254, 0, 417, '2019-01-18', 'am1', 'bloque', '2019-01-08', ''), +(17210, 254, 0, 417, '2019-01-18', 'am2', 'bloque', '2019-01-08', ''), +(17211, 254, 0, 417, '2019-01-18', 'pm1', 'bloque', '2019-01-08', ''), +(17212, 254, 0, 417, '2019-01-18', 'pm2', 'bloque', '2019-01-08', ''), +(17213, 254, 0, 417, '2019-01-21', 'am1', 'bloque', '2019-01-08', ''), +(17214, 254, 0, 417, '2019-01-21', 'am2', 'bloque', '2019-01-08', ''), +(17215, 254, 0, 417, '2019-01-21', 'pm1', 'bloque', '2019-01-08', ''), +(17216, 254, 0, 417, '2019-01-21', 'pm2', 'bloque', '2019-01-08', ''), +(17217, 254, 0, 417, '2019-01-22', 'am1', 'bloque', '2019-01-08', ''), +(17218, 254, 0, 417, '2019-01-22', 'am2', 'bloque', '2019-01-08', ''), +(17219, 254, 0, 417, '2019-01-22', 'pm1', 'bloque', '2019-01-08', ''), +(17220, 254, 0, 417, '2019-01-22', 'pm2', 'bloque', '2019-01-08', ''), +(17221, 254, 0, 417, '2019-01-23', 'am1', 'bloque', '2019-01-08', ''), +(17222, 254, 0, 417, '2019-01-23', 'am2', 'bloque', '2019-01-08', ''), +(17223, 254, 0, 417, '2019-01-23', 'pm1', 'bloque', '2019-01-08', ''), +(17224, 254, 0, 417, '2019-01-23', 'pm2', 'bloque', '2019-01-08', ''), +(17225, 254, 0, 417, '2019-01-24', 'am1', 'bloque', '2019-01-08', ''), +(17226, 254, 0, 417, '2019-01-24', 'am2', 'bloque', '2019-01-08', ''), +(17227, 254, 221, 417, '2019-01-24', 'pm1', 'reserve', '2019-01-08', 'ref'), +(17228, 254, 0, 417, '2019-01-24', 'pm2', 'bloque', '2019-01-08', ''), +(17229, 254, 0, 417, '2019-01-25', 'am1', 'bloque', '2019-01-08', ''), +(17230, 254, 0, 417, '2019-01-25', 'am2', 'bloque', '2019-01-08', ''), +(17231, 254, 0, 417, '2019-01-25', 'pm1', 'bloque', '2019-01-08', ''), +(17232, 254, 0, 417, '2019-01-25', 'pm2', 'bloque', '2019-01-08', ''), +(17233, 254, 0, 417, '2019-01-28', 'am1', 'bloque', '2019-01-08', ''), +(17234, 254, 0, 417, '2019-01-28', 'am2', 'bloque', '2019-01-08', ''), +(17235, 254, 0, 417, '2019-01-28', 'pm1', 'bloque', '2019-01-08', ''), +(17236, 254, 0, 417, '2019-01-28', 'pm2', 'bloque', '2019-01-08', ''), +(17237, 254, 0, 417, '2019-01-29', 'am1', 'bloque', '2019-01-08', ''), +(17238, 254, 0, 417, '2019-01-29', 'am2', 'bloque', '2019-01-08', ''), +(17239, 254, 0, 417, '2019-01-29', 'pm1', 'bloque', '2019-01-08', ''), +(17240, 254, 0, 417, '2019-01-29', 'pm2', 'bloque', '2019-01-08', ''), +(17241, 254, 0, 417, '2019-01-30', 'am1', 'bloque', '2019-01-08', ''), +(17242, 254, 0, 417, '2019-01-30', 'am2', 'bloque', '2019-01-08', ''), +(17243, 254, 0, 417, '2019-01-30', 'pm1', 'bloque', '2019-01-08', ''), +(17244, 254, 0, 417, '2019-01-30', 'pm2', 'bloque', '2019-01-08', ''), +(17245, 254, 0, 417, '2019-01-31', 'am1', 'bloque', '2019-01-08', ''), +(17246, 254, 0, 417, '2019-01-31', 'am2', 'bloque', '2019-01-08', ''), +(17247, 254, 0, 417, '2019-01-31', 'pm1', 'bloque', '2019-01-08', ''), +(17248, 254, 0, 417, '2019-01-31', 'pm2', 'bloque', '2019-01-08', ''), +(17249, 254, 0, 417, '2019-02-01', 'am1', 'bloque', '2019-01-08', ''), +(17250, 254, 0, 417, '2019-02-01', 'am2', 'bloque', '2019-01-08', ''), +(17251, 254, 0, 417, '2019-02-01', 'pm1', 'bloque', '2019-01-08', ''), +(17252, 254, 0, 417, '2019-02-01', 'pm2', 'bloque', '2019-01-08', ''), +(17253, 254, 0, 417, '2019-02-04', 'am1', 'bloque', '2019-01-08', ''), +(17254, 254, 0, 417, '2019-02-04', 'am2', 'bloque', '2019-01-08', ''), +(17255, 254, 0, 417, '2019-02-04', 'pm1', 'bloque', '2019-01-08', ''), +(17256, 254, 0, 417, '2019-02-04', 'pm2', 'bloque', '2019-01-08', ''), +(17257, 254, 0, 417, '2019-02-05', 'am1', 'bloque', '2019-01-08', ''), +(17258, 254, 0, 417, '2019-02-05', 'am2', 'bloque', '2019-01-08', ''), +(17259, 254, 0, 417, '2019-02-05', 'pm1', 'bloque', '2019-01-08', ''), +(17260, 254, 0, 417, '2019-02-05', 'pm2', 'bloque', '2019-01-08', ''), +(17261, 254, 0, 417, '2019-02-06', 'am1', 'bloque', '2019-01-08', ''), +(17262, 254, 0, 417, '2019-02-06', 'am2', 'bloque', '2019-01-08', ''), +(17263, 254, 0, 417, '2019-02-06', 'pm1', 'bloque', '2019-01-08', ''), +(17264, 254, 0, 417, '2019-02-06', 'pm2', 'bloque', '2019-01-08', ''), +(17265, 254, 0, 417, '2019-02-07', 'am1', 'bloque', '2019-01-08', ''), +(17266, 254, 0, 417, '2019-02-07', 'am2', 'bloque', '2019-01-08', ''), +(17267, 254, 0, 417, '2019-02-07', 'pm1', 'bloque', '2019-01-08', ''), +(17268, 254, 0, 417, '2019-02-07', 'pm2', 'bloque', '2019-01-08', ''), +(17269, 254, 0, 417, '2019-02-08', 'am1', 'bloque', '2019-01-08', ''), +(17270, 254, 0, 417, '2019-02-08', 'am2', 'bloque', '2019-01-08', ''), +(17271, 254, 0, 417, '2019-02-08', 'pm1', 'bloque', '2019-01-08', ''), +(17272, 254, 0, 417, '2019-02-08', 'pm2', 'bloque', '2019-01-08', ''), +(17273, 255, 0, 273, '2019-01-17', 'am1', 'libre', '2019-01-08', ''), +(17274, 255, 0, 273, '2019-01-17', 'am2', 'libre', '2019-01-08', ''), +(17275, 255, 0, 273, '2019-01-17', 'pm1', 'libre', '2019-01-08', ''), +(17276, 255, 0, 273, '2019-01-17', 'pm2', 'libre', '2019-01-08', ''), +(17277, 255, 0, 273, '2019-01-18', 'am1', 'bloque', '2019-01-08', ''), +(17278, 255, 0, 273, '2019-01-18', 'am2', 'bloque', '2019-01-08', ''), +(17279, 255, 0, 273, '2019-01-18', 'pm1', 'bloque', '2019-01-08', ''), +(17280, 255, 0, 273, '2019-01-18', 'pm2', 'bloque', '2019-01-08', ''), +(17281, 255, 0, 273, '2019-01-21', 'am1', 'bloque', '2019-01-08', ''), +(17282, 255, 0, 273, '2019-01-21', 'am2', 'bloque', '2019-01-08', ''), +(17283, 255, 0, 273, '2019-01-21', 'pm1', 'bloque', '2019-01-08', ''), +(17284, 255, 0, 273, '2019-01-21', 'pm2', 'bloque', '2019-01-08', ''), +(17285, 255, 0, 273, '2019-01-22', 'am1', 'bloque', '2019-01-08', ''), +(17286, 255, 0, 273, '2019-01-22', 'am2', 'bloque', '2019-01-08', ''), +(17287, 255, 0, 273, '2019-01-22', 'pm1', 'bloque', '2019-01-08', ''), +(17288, 255, 0, 273, '2019-01-22', 'pm2', 'bloque', '2019-01-08', ''), +(17289, 255, 0, 273, '2019-01-23', 'am1', 'bloque', '2019-01-08', ''), +(17290, 255, 0, 273, '2019-01-23', 'am2', 'bloque', '2019-01-08', ''), +(17291, 255, 0, 273, '2019-01-23', 'pm1', 'bloque', '2019-01-08', ''), +(17292, 255, 0, 273, '2019-01-23', 'pm2', 'bloque', '2019-01-08', ''), +(17293, 255, 0, 273, '2019-01-24', 'am1', 'bloque', '2019-01-08', ''), +(17294, 255, 0, 273, '2019-01-24', 'am2', 'bloque', '2019-01-08', ''), +(17295, 255, 0, 273, '2019-01-24', 'pm1', 'bloque', '2019-01-08', ''), +(17296, 255, 0, 273, '2019-01-24', 'pm2', 'bloque', '2019-01-08', ''), +(17297, 255, 0, 273, '2019-01-25', 'am1', 'bloque', '2019-01-08', ''), +(17298, 255, 0, 273, '2019-01-25', 'am2', 'bloque', '2019-01-08', ''), +(17299, 255, 0, 273, '2019-01-25', 'pm1', 'bloque', '2019-01-08', ''), +(17300, 255, 0, 273, '2019-01-25', 'pm2', 'bloque', '2019-01-08', ''), +(17301, 255, 0, 273, '2019-01-28', 'am1', 'bloque', '2019-01-08', ''), +(17302, 255, 0, 273, '2019-01-28', 'am2', 'bloque', '2019-01-08', ''), +(17303, 255, 0, 273, '2019-01-28', 'pm1', 'bloque', '2019-01-08', ''), +(17304, 255, 0, 273, '2019-01-28', 'pm2', 'bloque', '2019-01-08', ''), +(17305, 255, 0, 273, '2019-01-29', 'am1', 'bloque', '2019-01-08', ''), +(17306, 255, 0, 273, '2019-01-29', 'am2', 'bloque', '2019-01-08', ''), +(17307, 255, 0, 273, '2019-01-29', 'pm1', 'bloque', '2019-01-08', ''), +(17308, 255, 0, 273, '2019-01-29', 'pm2', 'bloque', '2019-01-08', ''), +(17309, 255, 0, 273, '2019-01-30', 'am1', 'bloque', '2019-01-08', ''), +(17310, 255, 0, 273, '2019-01-30', 'am2', 'bloque', '2019-01-08', ''), +(17311, 255, 0, 273, '2019-01-30', 'pm1', 'bloque', '2019-01-08', ''), +(17312, 255, 0, 273, '2019-01-30', 'pm2', 'bloque', '2019-01-08', ''), +(17313, 255, 0, 273, '2019-01-31', 'am1', 'bloque', '2019-01-08', ''), +(17314, 255, 0, 273, '2019-01-31', 'am2', 'bloque', '2019-01-08', ''), +(17315, 255, 0, 273, '2019-01-31', 'pm1', 'bloque', '2019-01-08', ''), +(17316, 255, 0, 273, '2019-01-31', 'pm2', 'bloque', '2019-01-08', ''), +(17317, 255, 0, 273, '2019-02-01', 'am1', 'bloque', '2019-01-08', ''), +(17318, 255, 0, 273, '2019-02-01', 'am2', 'bloque', '2019-01-08', ''), +(17319, 255, 0, 273, '2019-02-01', 'pm1', 'bloque', '2019-01-08', ''), +(17320, 255, 0, 273, '2019-02-01', 'pm2', 'bloque', '2019-01-08', ''), +(17321, 255, 0, 273, '2019-02-04', 'am1', 'bloque', '2019-01-08', ''), +(17322, 255, 0, 273, '2019-02-04', 'am2', 'bloque', '2019-01-08', ''), +(17323, 255, 0, 273, '2019-02-04', 'pm1', 'bloque', '2019-01-08', ''), +(17324, 255, 0, 273, '2019-02-04', 'pm2', 'bloque', '2019-01-08', ''), +(17325, 255, 0, 273, '2019-02-05', 'am1', 'bloque', '2019-01-08', ''), +(17326, 255, 0, 273, '2019-02-05', 'am2', 'bloque', '2019-01-08', ''), +(17327, 255, 0, 273, '2019-02-05', 'pm1', 'bloque', '2019-01-08', ''), +(17328, 255, 0, 273, '2019-02-05', 'pm2', 'bloque', '2019-01-08', ''), +(17329, 255, 0, 273, '2019-02-06', 'am1', 'bloque', '2019-01-08', ''), +(17330, 255, 0, 273, '2019-02-06', 'am2', 'bloque', '2019-01-08', ''), +(17331, 255, 0, 273, '2019-02-06', 'pm1', 'bloque', '2019-01-08', ''), +(17332, 255, 0, 273, '2019-02-06', 'pm2', 'bloque', '2019-01-08', ''), +(17333, 255, 0, 273, '2019-02-07', 'am1', 'bloque', '2019-01-08', ''), +(17334, 255, 0, 273, '2019-02-07', 'am2', 'bloque', '2019-01-08', ''), +(17335, 255, 0, 273, '2019-02-07', 'pm1', 'bloque', '2019-01-08', ''), +(17336, 255, 0, 273, '2019-02-07', 'pm2', 'bloque', '2019-01-08', ''), +(17337, 255, 0, 273, '2019-02-08', 'am1', 'bloque', '2019-01-08', ''), +(17338, 255, 0, 273, '2019-02-08', 'am2', 'bloque', '2019-01-08', ''), +(17339, 255, 0, 273, '2019-02-08', 'pm1', 'bloque', '2019-01-08', ''), +(17340, 255, 0, 273, '2019-02-08', 'pm2', 'bloque', '2019-01-08', ''), +(17341, 256, 0, 115, '2019-01-17', 'am1', 'bloque', '2019-01-08', 'cap'), +(17342, 256, 0, 115, '2019-01-17', 'am2', 'bloque', '2019-01-08', 'cap'), +(17343, 256, 0, 115, '2019-01-17', 'pm1', 'bloque', '2019-01-08', 'cap'), +(17344, 256, 0, 115, '2019-01-17', 'pm2', 'libre', '2019-01-08', ''), +(17345, 256, 0, 115, '2019-01-18', 'am1', 'bloque', '2019-01-08', ''), +(17346, 256, 0, 115, '2019-01-18', 'am2', 'bloque', '2019-01-08', ''), +(17347, 256, 0, 115, '2019-01-18', 'pm1', 'bloque', '2019-01-08', ''), +(17348, 256, 0, 115, '2019-01-18', 'pm2', 'bloque', '2019-01-08', ''), +(17349, 256, 0, 115, '2019-01-21', 'am1', 'libre', '2019-01-08', 'cap'), +(17350, 256, 0, 115, '2019-01-21', 'am2', 'libre', '2019-01-08', 'cap'), +(17351, 256, 0, 115, '2019-01-21', 'pm1', 'bloque', '2019-01-08', ''), +(17352, 256, 0, 115, '2019-01-21', 'pm2', 'bloque', '2019-01-08', ''), +(17353, 256, 0, 115, '2019-01-22', 'am1', 'libre', '2019-01-08', 'cap'), +(17354, 256, 0, 115, '2019-01-22', 'am2', 'libre', '2019-01-08', 'cap'), +(17355, 256, 0, 115, '2019-01-22', 'pm1', 'bloque', '2019-01-08', ''), +(17356, 256, 0, 115, '2019-01-22', 'pm2', 'bloque', '2019-01-08', ''), +(17357, 256, 0, 115, '2019-01-23', 'am1', 'bloque', '2019-01-08', ''), +(17358, 256, 0, 115, '2019-01-23', 'am2', 'bloque', '2019-01-08', ''), +(17359, 256, 0, 115, '2019-01-23', 'pm1', 'bloque', '2019-01-08', ''), +(17360, 256, 0, 115, '2019-01-23', 'pm2', 'bloque', '2019-01-08', ''), +(17361, 256, 0, 115, '2019-01-24', 'am1', 'bloque', '2019-01-08', ''), +(17362, 256, 0, 115, '2019-01-24', 'am2', 'bloque', '2019-01-08', ''), +(17363, 256, 0, 115, '2019-01-24', 'pm1', 'bloque', '2019-01-08', ''), +(17364, 256, 0, 115, '2019-01-24', 'pm2', 'bloque', '2019-01-08', ''), +(17365, 256, 0, 115, '2019-01-25', 'am1', 'bloque', '2019-01-08', ''), +(17366, 256, 0, 115, '2019-01-25', 'am2', 'bloque', '2019-01-08', ''), +(17367, 256, 0, 115, '2019-01-25', 'pm1', 'bloque', '2019-01-08', ''), +(17368, 256, 0, 115, '2019-01-25', 'pm2', 'bloque', '2019-01-08', ''), +(17369, 256, 0, 115, '2019-01-28', 'am1', 'bloque', '2019-01-08', ''), +(17370, 256, 0, 115, '2019-01-28', 'am2', 'bloque', '2019-01-08', ''), +(17371, 256, 0, 115, '2019-01-28', 'pm1', 'bloque', '2019-01-08', ''), +(17372, 256, 0, 115, '2019-01-28', 'pm2', 'bloque', '2019-01-08', ''), +(17373, 256, 0, 115, '2019-01-29', 'am1', 'bloque', '2019-01-08', ''), +(17374, 256, 0, 115, '2019-01-29', 'am2', 'bloque', '2019-01-08', ''), +(17375, 256, 0, 115, '2019-01-29', 'pm1', 'bloque', '2019-01-08', ''), +(17376, 256, 0, 115, '2019-01-29', 'pm2', 'bloque', '2019-01-08', ''), +(17377, 256, 0, 115, '2019-01-30', 'am1', 'bloque', '2019-01-08', ''), +(17378, 256, 0, 115, '2019-01-30', 'am2', 'bloque', '2019-01-08', ''), +(17379, 256, 0, 115, '2019-01-30', 'pm1', 'bloque', '2019-01-08', ''), +(17380, 256, 0, 115, '2019-01-30', 'pm2', 'bloque', '2019-01-08', ''), +(17381, 256, 0, 115, '2019-01-31', 'am1', 'bloque', '2019-01-08', ''), +(17382, 256, 0, 115, '2019-01-31', 'am2', 'bloque', '2019-01-08', ''), +(17383, 256, 0, 115, '2019-01-31', 'pm1', 'bloque', '2019-01-08', ''), +(17384, 256, 0, 115, '2019-01-31', 'pm2', 'bloque', '2019-01-08', ''), +(17385, 256, 0, 115, '2019-02-01', 'am1', 'libre', '2019-01-08', 'cap'), +(17386, 256, 0, 115, '2019-02-01', 'am2', 'libre', '2019-01-08', 'cap'), +(17387, 256, 0, 115, '2019-02-01', 'pm1', 'bloque', '2019-01-08', ''), +(17388, 256, 0, 115, '2019-02-01', 'pm2', 'bloque', '2019-01-08', ''), +(17389, 256, 0, 115, '2019-02-04', 'am1', 'libre', '2019-01-08', 'cap'), +(17390, 256, 0, 115, '2019-02-04', 'am2', 'libre', '2019-01-08', 'cap'), +(17391, 256, 0, 115, '2019-02-04', 'pm1', 'bloque', '2019-01-08', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(17392, 256, 0, 115, '2019-02-04', 'pm2', 'bloque', '2019-01-08', ''), +(17393, 256, 0, 115, '2019-02-05', 'am1', 'libre', '2019-01-08', 'cap'), +(17394, 256, 0, 115, '2019-02-05', 'am2', 'libre', '2019-01-08', 'cap'), +(17395, 256, 0, 115, '2019-02-05', 'pm1', 'libre', '2019-01-21', 'cap'), +(17396, 256, 0, 115, '2019-02-05', 'pm2', 'bloque', '2019-01-08', ''), +(17397, 256, 0, 115, '2019-02-06', 'am1', 'bloque', '2019-01-08', ''), +(17398, 256, 0, 115, '2019-02-06', 'am2', 'bloque', '2019-01-08', ''), +(17399, 256, 0, 115, '2019-02-06', 'pm1', 'bloque', '2019-01-08', ''), +(17400, 256, 0, 115, '2019-02-06', 'pm2', 'bloque', '2019-01-08', ''), +(17401, 256, 0, 115, '2019-02-07', 'am1', 'bloque', '2019-01-08', ''), +(17402, 256, 0, 115, '2019-02-07', 'am2', 'bloque', '2019-01-08', ''), +(17403, 256, 0, 115, '2019-02-07', 'pm1', 'bloque', '2019-01-08', ''), +(17404, 256, 0, 115, '2019-02-07', 'pm2', 'bloque', '2019-01-08', ''), +(17405, 256, 0, 115, '2019-02-08', 'am1', 'bloque', '2019-01-08', ''), +(17406, 256, 0, 115, '2019-02-08', 'am2', 'bloque', '2019-01-08', ''), +(17407, 256, 0, 115, '2019-02-08', 'pm1', 'bloque', '2019-01-08', ''), +(17408, 256, 0, 115, '2019-02-08', 'pm2', 'bloque', '2019-01-08', ''), +(17409, 257, 0, 81, '2019-01-17', 'am1', 'libre', '2019-01-09', ''), +(17410, 257, 0, 81, '2019-01-17', 'am2', 'libre', '2019-01-09', ''), +(17411, 257, 0, 81, '2019-01-17', 'pm1', 'libre', '2019-01-09', ''), +(17412, 257, 0, 81, '2019-01-17', 'pm2', 'libre', '2019-01-09', ''), +(17413, 257, 0, 81, '2019-01-18', 'am1', 'bloque', '2019-01-09', ''), +(17414, 257, 0, 81, '2019-01-18', 'am2', 'bloque', '2019-01-09', ''), +(17415, 257, 0, 81, '2019-01-18', 'pm1', 'bloque', '2019-01-09', ''), +(17416, 257, 0, 81, '2019-01-18', 'pm2', 'bloque', '2019-01-09', ''), +(17417, 257, 0, 81, '2019-01-21', 'am1', 'bloque', '2019-01-09', ''), +(17418, 257, 0, 81, '2019-01-21', 'am2', 'bloque', '2019-01-09', ''), +(17419, 257, 0, 81, '2019-01-21', 'pm1', 'bloque', '2019-01-09', ''), +(17420, 257, 0, 81, '2019-01-21', 'pm2', 'bloque', '2019-01-09', ''), +(17421, 257, 0, 81, '2019-01-22', 'am1', 'bloque', '2019-01-09', ''), +(17422, 257, 0, 81, '2019-01-22', 'am2', 'bloque', '2019-01-09', ''), +(17423, 257, 0, 81, '2019-01-22', 'pm1', 'bloque', '2019-01-09', ''), +(17424, 257, 0, 81, '2019-01-22', 'pm2', 'bloque', '2019-01-09', ''), +(17425, 257, 0, 81, '2019-01-23', 'am1', 'bloque', '2019-01-09', ''), +(17426, 257, 0, 81, '2019-01-23', 'am2', 'bloque', '2019-01-09', ''), +(17427, 257, 0, 81, '2019-01-23', 'pm1', 'bloque', '2019-01-09', ''), +(17428, 257, 0, 81, '2019-01-23', 'pm2', 'bloque', '2019-01-09', ''), +(17429, 257, 230, 81, '2019-01-24', 'am1', 'reserve', '2019-01-09', 'ref'), +(17430, 257, 0, 81, '2019-01-24', 'am2', 'bloque', '2019-01-09', ''), +(17431, 257, 0, 81, '2019-01-24', 'pm1', 'bloque', '2019-01-09', ''), +(17432, 257, 0, 81, '2019-01-24', 'pm2', 'bloque', '2019-01-09', ''), +(17433, 257, 0, 81, '2019-01-25', 'am1', 'bloque', '2019-01-09', ''), +(17434, 257, 0, 81, '2019-01-25', 'am2', 'bloque', '2019-01-09', ''), +(17435, 257, 0, 81, '2019-01-25', 'pm1', 'bloque', '2019-01-09', ''), +(17436, 257, 0, 81, '2019-01-25', 'pm2', 'bloque', '2019-01-09', ''), +(17437, 257, 0, 81, '2019-01-28', 'am1', 'bloque', '2019-01-09', ''), +(17438, 257, 0, 81, '2019-01-28', 'am2', 'bloque', '2019-01-09', ''), +(17439, 257, 0, 81, '2019-01-28', 'pm1', 'bloque', '2019-01-09', ''), +(17440, 257, 0, 81, '2019-01-28', 'pm2', 'bloque', '2019-01-09', ''), +(17441, 257, 0, 81, '2019-01-29', 'am1', 'bloque', '2019-01-09', ''), +(17442, 257, 0, 81, '2019-01-29', 'am2', 'bloque', '2019-01-09', ''), +(17443, 257, 0, 81, '2019-01-29', 'pm1', 'bloque', '2019-01-09', ''), +(17444, 257, 0, 81, '2019-01-29', 'pm2', 'bloque', '2019-01-09', ''), +(17445, 257, 0, 81, '2019-01-30', 'am1', 'bloque', '2019-01-09', ''), +(17446, 257, 0, 81, '2019-01-30', 'am2', 'bloque', '2019-01-09', ''), +(17447, 257, 0, 81, '2019-01-30', 'pm1', 'bloque', '2019-01-09', ''), +(17448, 257, 0, 81, '2019-01-30', 'pm2', 'bloque', '2019-01-09', ''), +(17449, 257, 0, 81, '2019-01-31', 'am1', 'bloque', '2019-01-09', ''), +(17450, 257, 0, 81, '2019-01-31', 'am2', 'bloque', '2019-01-09', ''), +(17451, 257, 0, 81, '2019-01-31', 'pm1', 'bloque', '2019-01-09', ''), +(17452, 257, 0, 81, '2019-01-31', 'pm2', 'bloque', '2019-01-09', ''), +(17453, 257, 0, 81, '2019-02-01', 'am1', 'bloque', '2019-01-09', ''), +(17454, 257, 0, 81, '2019-02-01', 'am2', 'bloque', '2019-01-09', ''), +(17455, 257, 0, 81, '2019-02-01', 'pm1', 'bloque', '2019-01-09', ''), +(17456, 257, 0, 81, '2019-02-01', 'pm2', 'bloque', '2019-01-09', ''), +(17457, 257, 0, 81, '2019-02-04', 'am1', 'bloque', '2019-01-09', ''), +(17458, 257, 0, 81, '2019-02-04', 'am2', 'bloque', '2019-01-09', ''), +(17459, 257, 0, 81, '2019-02-04', 'pm1', 'bloque', '2019-01-09', ''), +(17460, 257, 0, 81, '2019-02-04', 'pm2', 'bloque', '2019-01-09', ''), +(17461, 257, 0, 81, '2019-02-05', 'am1', 'bloque', '2019-01-09', ''), +(17462, 257, 0, 81, '2019-02-05', 'am2', 'bloque', '2019-01-09', ''), +(17463, 257, 0, 81, '2019-02-05', 'pm1', 'bloque', '2019-01-09', ''), +(17464, 257, 0, 81, '2019-02-05', 'pm2', 'bloque', '2019-01-09', ''), +(17465, 257, 0, 81, '2019-02-06', 'am1', 'bloque', '2019-01-09', ''), +(17466, 257, 0, 81, '2019-02-06', 'am2', 'bloque', '2019-01-09', ''), +(17467, 257, 0, 81, '2019-02-06', 'pm1', 'bloque', '2019-01-09', ''), +(17468, 257, 0, 81, '2019-02-06', 'pm2', 'bloque', '2019-01-09', ''), +(17469, 257, 0, 81, '2019-02-07', 'am1', 'bloque', '2019-01-09', ''), +(17470, 257, 0, 81, '2019-02-07', 'am2', 'bloque', '2019-01-09', ''), +(17471, 257, 0, 81, '2019-02-07', 'pm1', 'bloque', '2019-01-09', ''), +(17472, 257, 0, 81, '2019-02-07', 'pm2', 'bloque', '2019-01-09', ''), +(17473, 257, 0, 81, '2019-02-08', 'am1', 'bloque', '2019-01-09', ''), +(17474, 257, 0, 81, '2019-02-08', 'am2', 'bloque', '2019-01-09', ''), +(17475, 257, 0, 81, '2019-02-08', 'pm1', 'bloque', '2019-01-09', ''), +(17476, 257, 0, 81, '2019-02-08', 'pm2', 'bloque', '2019-01-09', ''), +(17477, 258, 0, 414, '2019-01-17', 'am1', 'libre', '2019-01-09', ''), +(17478, 258, 0, 414, '2019-01-17', 'am2', 'libre', '2019-01-09', ''), +(17479, 258, 0, 414, '2019-01-17', 'pm1', 'libre', '2019-01-09', ''), +(17480, 258, 0, 414, '2019-01-17', 'pm2', 'libre', '2019-01-09', ''), +(17481, 258, 0, 414, '2019-01-18', 'am1', 'bloque', '2019-01-09', ''), +(17482, 258, 0, 414, '2019-01-18', 'am2', 'bloque', '2019-01-09', ''), +(17483, 258, 0, 414, '2019-01-18', 'pm1', 'bloque', '2019-01-09', ''), +(17484, 258, 0, 414, '2019-01-18', 'pm2', 'bloque', '2019-01-09', ''), +(17485, 258, 0, 414, '2019-01-21', 'am1', 'bloque', '2019-01-09', ''), +(17486, 258, 0, 414, '2019-01-21', 'am2', 'bloque', '2019-01-09', ''), +(17487, 258, 0, 414, '2019-01-21', 'pm1', 'bloque', '2019-01-09', ''), +(17488, 258, 0, 414, '2019-01-21', 'pm2', 'bloque', '2019-01-09', ''), +(17489, 258, 0, 414, '2019-01-22', 'am1', 'bloque', '2019-01-09', ''), +(17490, 258, 0, 414, '2019-01-22', 'am2', 'bloque', '2019-01-09', ''), +(17491, 258, 0, 414, '2019-01-22', 'pm1', 'bloque', '2019-01-09', ''), +(17492, 258, 0, 414, '2019-01-22', 'pm2', 'bloque', '2019-01-09', ''), +(17493, 258, 0, 414, '2019-01-23', 'am1', 'bloque', '2019-01-09', ''), +(17494, 258, 0, 414, '2019-01-23', 'am2', 'bloque', '2019-01-09', ''), +(17495, 258, 0, 414, '2019-01-23', 'pm1', 'bloque', '2019-01-09', ''), +(17496, 258, 0, 414, '2019-01-23', 'pm2', 'bloque', '2019-01-09', ''), +(17497, 258, 0, 414, '2019-01-24', 'am1', 'bloque', '2019-01-09', ''), +(17498, 258, 0, 414, '2019-01-24', 'am2', 'bloque', '2019-01-09', ''), +(17499, 258, 0, 414, '2019-01-24', 'pm1', 'bloque', '2019-01-09', ''), +(17500, 258, 0, 414, '2019-01-24', 'pm2', 'bloque', '2019-01-09', ''), +(17501, 258, 0, 414, '2019-01-25', 'am1', 'bloque', '2019-01-09', ''), +(17502, 258, 0, 414, '2019-01-25', 'am2', 'bloque', '2019-01-09', ''), +(17503, 258, 0, 414, '2019-01-25', 'pm1', 'bloque', '2019-01-09', ''), +(17504, 258, 0, 414, '2019-01-25', 'pm2', 'bloque', '2019-01-09', ''), +(17505, 258, 0, 414, '2019-01-28', 'am1', 'bloque', '2019-01-09', ''), +(17506, 258, 0, 414, '2019-01-28', 'am2', 'bloque', '2019-01-09', ''), +(17507, 258, 0, 414, '2019-01-28', 'pm1', 'bloque', '2019-01-09', ''), +(17508, 258, 0, 414, '2019-01-28', 'pm2', 'bloque', '2019-01-09', ''), +(17509, 258, 0, 414, '2019-01-29', 'am1', 'bloque', '2019-01-09', ''), +(17510, 258, 0, 414, '2019-01-29', 'am2', 'bloque', '2019-01-09', ''), +(17511, 258, 0, 414, '2019-01-29', 'pm1', 'bloque', '2019-01-09', ''), +(17512, 258, 0, 414, '2019-01-29', 'pm2', 'bloque', '2019-01-09', ''), +(17513, 258, 0, 414, '2019-01-30', 'am1', 'bloque', '2019-01-09', ''), +(17514, 258, 0, 414, '2019-01-30', 'am2', 'bloque', '2019-01-09', ''), +(17515, 258, 0, 414, '2019-01-30', 'pm1', 'bloque', '2019-01-09', ''), +(17516, 258, 0, 414, '2019-01-30', 'pm2', 'bloque', '2019-01-09', ''), +(17517, 258, 0, 414, '2019-01-31', 'am1', 'bloque', '2019-01-09', ''), +(17518, 258, 0, 414, '2019-01-31', 'am2', 'bloque', '2019-01-09', ''), +(17519, 258, 0, 414, '2019-01-31', 'pm1', 'bloque', '2019-01-09', ''), +(17520, 258, 0, 414, '2019-01-31', 'pm2', 'bloque', '2019-01-09', ''), +(17521, 258, 0, 414, '2019-02-01', 'am1', 'bloque', '2019-01-09', ''), +(17522, 258, 0, 414, '2019-02-01', 'am2', 'bloque', '2019-01-09', ''), +(17523, 258, 0, 414, '2019-02-01', 'pm1', 'bloque', '2019-01-09', ''), +(17524, 258, 0, 414, '2019-02-01', 'pm2', 'bloque', '2019-01-09', ''), +(17525, 258, 0, 414, '2019-02-04', 'am1', 'bloque', '2019-01-09', ''), +(17526, 258, 0, 414, '2019-02-04', 'am2', 'bloque', '2019-01-09', ''), +(17527, 258, 0, 414, '2019-02-04', 'pm1', 'bloque', '2019-01-09', ''), +(17528, 258, 0, 414, '2019-02-04', 'pm2', 'bloque', '2019-01-09', ''), +(17529, 258, 0, 414, '2019-02-05', 'am1', 'bloque', '2019-01-09', ''), +(17530, 258, 0, 414, '2019-02-05', 'am2', 'bloque', '2019-01-09', ''), +(17531, 258, 0, 414, '2019-02-05', 'pm1', 'bloque', '2019-01-09', ''), +(17532, 258, 0, 414, '2019-02-05', 'pm2', 'bloque', '2019-01-09', ''), +(17533, 258, 0, 414, '2019-02-06', 'am1', 'bloque', '2019-01-09', ''), +(17534, 258, 0, 414, '2019-02-06', 'am2', 'bloque', '2019-01-09', ''), +(17535, 258, 0, 414, '2019-02-06', 'pm1', 'bloque', '2019-01-09', ''), +(17536, 258, 0, 414, '2019-02-06', 'pm2', 'bloque', '2019-01-09', ''), +(17537, 258, 0, 414, '2019-02-07', 'am1', 'bloque', '2019-01-09', ''), +(17538, 258, 0, 414, '2019-02-07', 'am2', 'bloque', '2019-01-09', ''), +(17539, 258, 0, 414, '2019-02-07', 'pm1', 'bloque', '2019-01-09', ''), +(17540, 258, 0, 414, '2019-02-07', 'pm2', 'bloque', '2019-01-09', ''), +(17541, 258, 0, 414, '2019-02-08', 'am1', 'bloque', '2019-01-09', ''), +(17542, 258, 0, 414, '2019-02-08', 'am2', 'bloque', '2019-01-09', ''), +(17543, 258, 0, 414, '2019-02-08', 'pm1', 'bloque', '2019-01-09', ''), +(17544, 258, 0, 414, '2019-02-08', 'pm2', 'bloque', '2019-01-09', ''), +(17545, 259, 0, 201, '2019-01-17', 'am1', 'libre', '2019-01-09', ''), +(17546, 259, 236, 201, '2019-01-17', 'am2', 'reserve', '2019-01-09', 'ref'), +(17547, 259, 0, 201, '2019-01-17', 'pm1', 'libre', '2019-01-09', ''), +(17548, 259, 0, 201, '2019-01-17', 'pm2', 'libre', '2019-01-09', ''), +(17549, 259, 0, 201, '2019-01-18', 'am1', 'bloque', '2019-01-09', ''), +(17550, 259, 0, 201, '2019-01-18', 'am2', 'bloque', '2019-01-09', ''), +(17551, 259, 0, 201, '2019-01-18', 'pm1', 'bloque', '2019-01-09', ''), +(17552, 259, 0, 201, '2019-01-18', 'pm2', 'bloque', '2019-01-09', ''), +(17553, 259, 0, 201, '2019-01-21', 'am1', 'bloque', '2019-01-09', ''), +(17554, 259, 0, 201, '2019-01-21', 'am2', 'bloque', '2019-01-09', ''), +(17555, 259, 0, 201, '2019-01-21', 'pm1', 'bloque', '2019-01-09', ''), +(17556, 259, 0, 201, '2019-01-21', 'pm2', 'bloque', '2019-01-09', ''), +(17557, 259, 0, 201, '2019-01-22', 'am1', 'bloque', '2019-01-09', ''), +(17558, 259, 0, 201, '2019-01-22', 'am2', 'bloque', '2019-01-09', ''), +(17559, 259, 0, 201, '2019-01-22', 'pm1', 'bloque', '2019-01-09', ''), +(17560, 259, 0, 201, '2019-01-22', 'pm2', 'bloque', '2019-01-09', ''), +(17561, 259, 0, 201, '2019-01-23', 'am1', 'bloque', '2019-01-09', ''), +(17562, 259, 0, 201, '2019-01-23', 'am2', 'bloque', '2019-01-09', ''), +(17563, 259, 0, 201, '2019-01-23', 'pm1', 'bloque', '2019-01-09', ''), +(17564, 259, 0, 201, '2019-01-23', 'pm2', 'bloque', '2019-01-09', ''), +(17565, 259, 0, 201, '2019-01-24', 'am1', 'bloque', '2019-01-09', ''), +(17566, 259, 0, 201, '2019-01-24', 'am2', 'bloque', '2019-01-09', ''), +(17567, 259, 0, 201, '2019-01-24', 'pm1', 'bloque', '2019-01-09', ''), +(17568, 259, 0, 201, '2019-01-24', 'pm2', 'bloque', '2019-01-09', ''), +(17569, 259, 0, 201, '2019-01-25', 'am1', 'bloque', '2019-01-09', ''), +(17570, 259, 0, 201, '2019-01-25', 'am2', 'bloque', '2019-01-09', ''), +(17571, 259, 0, 201, '2019-01-25', 'pm1', 'bloque', '2019-01-09', ''), +(17572, 259, 0, 201, '2019-01-25', 'pm2', 'bloque', '2019-01-09', ''), +(17573, 259, 0, 201, '2019-01-28', 'am1', 'bloque', '2019-01-09', ''), +(17574, 259, 0, 201, '2019-01-28', 'am2', 'bloque', '2019-01-09', ''), +(17575, 259, 0, 201, '2019-01-28', 'pm1', 'bloque', '2019-01-09', ''), +(17576, 259, 0, 201, '2019-01-28', 'pm2', 'bloque', '2019-01-09', ''), +(17577, 259, 0, 201, '2019-01-29', 'am1', 'bloque', '2019-01-09', ''), +(17578, 259, 0, 201, '2019-01-29', 'am2', 'bloque', '2019-01-09', ''), +(17579, 259, 0, 201, '2019-01-29', 'pm1', 'bloque', '2019-01-09', ''), +(17580, 259, 0, 201, '2019-01-29', 'pm2', 'bloque', '2019-01-09', ''), +(17581, 259, 0, 201, '2019-01-30', 'am1', 'bloque', '2019-01-09', ''), +(17582, 259, 0, 201, '2019-01-30', 'am2', 'bloque', '2019-01-09', ''), +(17583, 259, 0, 201, '2019-01-30', 'pm1', 'bloque', '2019-01-09', ''), +(17584, 259, 0, 201, '2019-01-30', 'pm2', 'bloque', '2019-01-09', ''), +(17585, 259, 0, 201, '2019-01-31', 'am1', 'bloque', '2019-01-09', ''), +(17586, 259, 0, 201, '2019-01-31', 'am2', 'bloque', '2019-01-09', ''), +(17587, 259, 0, 201, '2019-01-31', 'pm1', 'bloque', '2019-01-09', ''), +(17588, 259, 0, 201, '2019-01-31', 'pm2', 'bloque', '2019-01-09', ''), +(17589, 259, 0, 201, '2019-02-01', 'am1', 'bloque', '2019-01-09', ''), +(17590, 259, 0, 201, '2019-02-01', 'am2', 'bloque', '2019-01-09', ''), +(17591, 259, 0, 201, '2019-02-01', 'pm1', 'bloque', '2019-01-09', ''), +(17592, 259, 0, 201, '2019-02-01', 'pm2', 'bloque', '2019-01-09', ''), +(17593, 259, 0, 201, '2019-02-04', 'am1', 'bloque', '2019-01-09', ''), +(17594, 259, 0, 201, '2019-02-04', 'am2', 'bloque', '2019-01-09', ''), +(17595, 259, 0, 201, '2019-02-04', 'pm1', 'bloque', '2019-01-09', ''), +(17596, 259, 0, 201, '2019-02-04', 'pm2', 'bloque', '2019-01-09', ''), +(17597, 259, 0, 201, '2019-02-05', 'am1', 'bloque', '2019-01-09', ''), +(17598, 259, 0, 201, '2019-02-05', 'am2', 'bloque', '2019-01-09', ''), +(17599, 259, 0, 201, '2019-02-05', 'pm1', 'bloque', '2019-01-09', ''), +(17600, 259, 0, 201, '2019-02-05', 'pm2', 'bloque', '2019-01-09', ''), +(17601, 259, 0, 201, '2019-02-06', 'am1', 'bloque', '2019-01-09', ''), +(17602, 259, 0, 201, '2019-02-06', 'am2', 'bloque', '2019-01-09', ''), +(17603, 259, 0, 201, '2019-02-06', 'pm1', 'bloque', '2019-01-09', ''), +(17604, 259, 0, 201, '2019-02-06', 'pm2', 'bloque', '2019-01-09', ''), +(17605, 259, 0, 201, '2019-02-07', 'am1', 'bloque', '2019-01-09', ''), +(17606, 259, 0, 201, '2019-02-07', 'am2', 'bloque', '2019-01-09', ''), +(17607, 259, 0, 201, '2019-02-07', 'pm1', 'bloque', '2019-01-09', ''), +(17608, 259, 0, 201, '2019-02-07', 'pm2', 'bloque', '2019-01-09', ''), +(17609, 259, 0, 201, '2019-02-08', 'am1', 'bloque', '2019-01-09', ''), +(17610, 259, 0, 201, '2019-02-08', 'am2', 'bloque', '2019-01-09', ''), +(17611, 259, 0, 201, '2019-02-08', 'pm1', 'bloque', '2019-01-09', ''), +(17612, 259, 0, 201, '2019-02-08', 'pm2', 'bloque', '2019-01-09', ''), +(17613, 260, 0, 201, '2019-01-17', 'am1', 'libre', '2019-01-09', ''), +(17614, 260, 0, 201, '2019-01-17', 'am2', 'libre', '2019-01-09', ''), +(17615, 260, 0, 201, '2019-01-17', 'pm1', 'libre', '2019-01-09', ''), +(17616, 260, 237, 201, '2019-01-17', 'pm2', 'reserve', '2019-01-09', 'ref'), +(17617, 260, 0, 201, '2019-01-18', 'am1', 'bloque', '2019-01-09', ''), +(17618, 260, 0, 201, '2019-01-18', 'am2', 'bloque', '2019-01-09', ''), +(17619, 260, 0, 201, '2019-01-18', 'pm1', 'bloque', '2019-01-09', ''), +(17620, 260, 0, 201, '2019-01-18', 'pm2', 'bloque', '2019-01-09', ''), +(17621, 260, 0, 201, '2019-01-21', 'am1', 'bloque', '2019-01-09', ''), +(17622, 260, 0, 201, '2019-01-21', 'am2', 'bloque', '2019-01-09', ''), +(17623, 260, 0, 201, '2019-01-21', 'pm1', 'bloque', '2019-01-09', ''), +(17624, 260, 0, 201, '2019-01-21', 'pm2', 'bloque', '2019-01-09', ''), +(17625, 260, 0, 201, '2019-01-22', 'am1', 'bloque', '2019-01-09', ''), +(17626, 260, 0, 201, '2019-01-22', 'am2', 'bloque', '2019-01-09', ''), +(17627, 260, 0, 201, '2019-01-22', 'pm1', 'bloque', '2019-01-09', ''), +(17628, 260, 0, 201, '2019-01-22', 'pm2', 'bloque', '2019-01-09', ''), +(17629, 260, 0, 201, '2019-01-23', 'am1', 'bloque', '2019-01-09', ''), +(17630, 260, 0, 201, '2019-01-23', 'am2', 'bloque', '2019-01-09', ''), +(17631, 260, 0, 201, '2019-01-23', 'pm1', 'bloque', '2019-01-09', ''), +(17632, 260, 0, 201, '2019-01-23', 'pm2', 'bloque', '2019-01-09', ''), +(17633, 260, 0, 201, '2019-01-24', 'am1', 'bloque', '2019-01-09', ''), +(17634, 260, 0, 201, '2019-01-24', 'am2', 'bloque', '2019-01-09', ''), +(17635, 260, 0, 201, '2019-01-24', 'pm1', 'bloque', '2019-01-09', ''), +(17636, 260, 0, 201, '2019-01-24', 'pm2', 'bloque', '2019-01-09', ''), +(17637, 260, 0, 201, '2019-01-25', 'am1', 'bloque', '2019-01-09', ''), +(17638, 260, 0, 201, '2019-01-25', 'am2', 'bloque', '2019-01-09', ''), +(17639, 260, 0, 201, '2019-01-25', 'pm1', 'bloque', '2019-01-09', ''), +(17640, 260, 0, 201, '2019-01-25', 'pm2', 'bloque', '2019-01-09', ''), +(17641, 260, 0, 201, '2019-01-28', 'am1', 'bloque', '2019-01-09', ''), +(17642, 260, 0, 201, '2019-01-28', 'am2', 'bloque', '2019-01-09', ''), +(17643, 260, 0, 201, '2019-01-28', 'pm1', 'bloque', '2019-01-09', ''), +(17644, 260, 0, 201, '2019-01-28', 'pm2', 'bloque', '2019-01-09', ''), +(17645, 260, 0, 201, '2019-01-29', 'am1', 'bloque', '2019-01-09', ''), +(17646, 260, 0, 201, '2019-01-29', 'am2', 'bloque', '2019-01-09', ''), +(17647, 260, 0, 201, '2019-01-29', 'pm1', 'bloque', '2019-01-09', ''), +(17648, 260, 0, 201, '2019-01-29', 'pm2', 'bloque', '2019-01-09', ''), +(17649, 260, 0, 201, '2019-01-30', 'am1', 'bloque', '2019-01-09', ''), +(17650, 260, 0, 201, '2019-01-30', 'am2', 'bloque', '2019-01-09', ''), +(17651, 260, 0, 201, '2019-01-30', 'pm1', 'bloque', '2019-01-09', ''), +(17652, 260, 0, 201, '2019-01-30', 'pm2', 'bloque', '2019-01-09', ''), +(17653, 260, 0, 201, '2019-01-31', 'am1', 'bloque', '2019-01-09', ''), +(17654, 260, 0, 201, '2019-01-31', 'am2', 'bloque', '2019-01-09', ''), +(17655, 260, 0, 201, '2019-01-31', 'pm1', 'bloque', '2019-01-09', ''), +(17656, 260, 0, 201, '2019-01-31', 'pm2', 'bloque', '2019-01-09', ''), +(17657, 260, 0, 201, '2019-02-01', 'am1', 'bloque', '2019-01-09', ''), +(17658, 260, 0, 201, '2019-02-01', 'am2', 'bloque', '2019-01-09', ''), +(17659, 260, 0, 201, '2019-02-01', 'pm1', 'bloque', '2019-01-09', ''), +(17660, 260, 0, 201, '2019-02-01', 'pm2', 'bloque', '2019-01-09', ''), +(17661, 260, 0, 201, '2019-02-04', 'am1', 'bloque', '2019-01-09', ''), +(17662, 260, 0, 201, '2019-02-04', 'am2', 'bloque', '2019-01-09', ''), +(17663, 260, 0, 201, '2019-02-04', 'pm1', 'bloque', '2019-01-09', ''), +(17664, 260, 0, 201, '2019-02-04', 'pm2', 'bloque', '2019-01-09', ''), +(17665, 260, 0, 201, '2019-02-05', 'am1', 'bloque', '2019-01-09', ''), +(17666, 260, 0, 201, '2019-02-05', 'am2', 'bloque', '2019-01-09', ''), +(17667, 260, 0, 201, '2019-02-05', 'pm1', 'bloque', '2019-01-09', ''), +(17668, 260, 0, 201, '2019-02-05', 'pm2', 'bloque', '2019-01-09', ''), +(17669, 260, 0, 201, '2019-02-06', 'am1', 'bloque', '2019-01-09', ''), +(17670, 260, 0, 201, '2019-02-06', 'am2', 'bloque', '2019-01-09', ''), +(17671, 260, 0, 201, '2019-02-06', 'pm1', 'bloque', '2019-01-09', ''), +(17672, 260, 0, 201, '2019-02-06', 'pm2', 'bloque', '2019-01-09', ''), +(17673, 260, 0, 201, '2019-02-07', 'am1', 'bloque', '2019-01-09', ''), +(17674, 260, 0, 201, '2019-02-07', 'am2', 'bloque', '2019-01-09', ''), +(17675, 260, 0, 201, '2019-02-07', 'pm1', 'bloque', '2019-01-09', ''), +(17676, 260, 0, 201, '2019-02-07', 'pm2', 'bloque', '2019-01-09', ''), +(17677, 260, 0, 201, '2019-02-08', 'am1', 'bloque', '2019-01-09', ''), +(17678, 260, 0, 201, '2019-02-08', 'am2', 'bloque', '2019-01-09', ''), +(17679, 260, 0, 201, '2019-02-08', 'pm1', 'bloque', '2019-01-09', ''), +(17680, 260, 0, 201, '2019-02-08', 'pm2', 'bloque', '2019-01-09', ''), +(17681, 261, 0, 201, '2019-01-17', 'am1', 'libre', '2019-01-09', ''), +(17682, 261, 0, 201, '2019-01-17', 'am2', 'libre', '2019-01-09', ''), +(17683, 261, 0, 201, '2019-01-17', 'pm1', 'libre', '2019-01-09', ''), +(17684, 261, 0, 201, '2019-01-17', 'pm2', 'libre', '2019-01-09', ''), +(17685, 261, 0, 201, '2019-01-18', 'am1', 'bloque', '2019-01-09', ''), +(17686, 261, 0, 201, '2019-01-18', 'am2', 'bloque', '2019-01-09', ''), +(17687, 261, 0, 201, '2019-01-18', 'pm1', 'bloque', '2019-01-09', ''), +(17688, 261, 0, 201, '2019-01-18', 'pm2', 'bloque', '2019-01-09', ''), +(17689, 261, 0, 201, '2019-01-21', 'am1', 'bloque', '2019-01-09', ''), +(17690, 261, 0, 201, '2019-01-21', 'am2', 'bloque', '2019-01-09', ''), +(17691, 261, 0, 201, '2019-01-21', 'pm1', 'bloque', '2019-01-09', ''), +(17692, 261, 0, 201, '2019-01-21', 'pm2', 'bloque', '2019-01-09', ''), +(17693, 261, 0, 201, '2019-01-22', 'am1', 'bloque', '2019-01-09', ''), +(17694, 261, 0, 201, '2019-01-22', 'am2', 'bloque', '2019-01-09', ''), +(17695, 261, 0, 201, '2019-01-22', 'pm1', 'bloque', '2019-01-09', ''), +(17696, 261, 0, 201, '2019-01-22', 'pm2', 'bloque', '2019-01-09', ''), +(17697, 261, 0, 201, '2019-01-23', 'am1', 'bloque', '2019-01-09', ''), +(17698, 261, 0, 201, '2019-01-23', 'am2', 'bloque', '2019-01-09', ''), +(17699, 261, 0, 201, '2019-01-23', 'pm1', 'bloque', '2019-01-09', ''), +(17700, 261, 0, 201, '2019-01-23', 'pm2', 'bloque', '2019-01-09', ''), +(17701, 261, 0, 201, '2019-01-24', 'am1', 'bloque', '2019-01-09', ''), +(17702, 261, 0, 201, '2019-01-24', 'am2', 'bloque', '2019-01-09', ''), +(17703, 261, 0, 201, '2019-01-24', 'pm1', 'bloque', '2019-01-09', ''), +(17704, 261, 0, 201, '2019-01-24', 'pm2', 'bloque', '2019-01-09', ''), +(17705, 261, 0, 201, '2019-01-25', 'am1', 'bloque', '2019-01-09', ''), +(17706, 261, 0, 201, '2019-01-25', 'am2', 'bloque', '2019-01-09', ''), +(17707, 261, 0, 201, '2019-01-25', 'pm1', 'bloque', '2019-01-09', ''), +(17708, 261, 0, 201, '2019-01-25', 'pm2', 'bloque', '2019-01-09', ''), +(17709, 261, 0, 201, '2019-01-28', 'am1', 'bloque', '2019-01-09', ''), +(17710, 261, 0, 201, '2019-01-28', 'am2', 'bloque', '2019-01-09', ''), +(17711, 261, 0, 201, '2019-01-28', 'pm1', 'bloque', '2019-01-09', ''), +(17712, 261, 0, 201, '2019-01-28', 'pm2', 'bloque', '2019-01-09', ''), +(17713, 261, 0, 201, '2019-01-29', 'am1', 'bloque', '2019-01-09', ''), +(17714, 261, 0, 201, '2019-01-29', 'am2', 'bloque', '2019-01-09', ''), +(17715, 261, 0, 201, '2019-01-29', 'pm1', 'bloque', '2019-01-09', ''), +(17716, 261, 0, 201, '2019-01-29', 'pm2', 'bloque', '2019-01-09', ''), +(17717, 261, 0, 201, '2019-01-30', 'am1', 'bloque', '2019-01-09', ''), +(17718, 261, 0, 201, '2019-01-30', 'am2', 'bloque', '2019-01-09', ''), +(17719, 261, 0, 201, '2019-01-30', 'pm1', 'bloque', '2019-01-09', ''), +(17720, 261, 0, 201, '2019-01-30', 'pm2', 'bloque', '2019-01-09', ''), +(17721, 261, 0, 201, '2019-01-31', 'am1', 'bloque', '2019-01-09', ''), +(17722, 261, 0, 201, '2019-01-31', 'am2', 'bloque', '2019-01-09', ''), +(17723, 261, 0, 201, '2019-01-31', 'pm1', 'bloque', '2019-01-09', ''), +(17724, 261, 0, 201, '2019-01-31', 'pm2', 'bloque', '2019-01-09', ''), +(17725, 261, 0, 201, '2019-02-01', 'am1', 'bloque', '2019-01-09', ''), +(17726, 261, 0, 201, '2019-02-01', 'am2', 'bloque', '2019-01-09', ''), +(17727, 261, 0, 201, '2019-02-01', 'pm1', 'bloque', '2019-01-09', ''), +(17728, 261, 0, 201, '2019-02-01', 'pm2', 'bloque', '2019-01-09', ''), +(17729, 261, 0, 201, '2019-02-04', 'am1', 'bloque', '2019-01-09', ''), +(17730, 261, 0, 201, '2019-02-04', 'am2', 'bloque', '2019-01-09', ''), +(17731, 261, 0, 201, '2019-02-04', 'pm1', 'bloque', '2019-01-09', ''), +(17732, 261, 0, 201, '2019-02-04', 'pm2', 'bloque', '2019-01-09', ''), +(17733, 261, 0, 201, '2019-02-05', 'am1', 'bloque', '2019-01-09', ''), +(17734, 261, 0, 201, '2019-02-05', 'am2', 'bloque', '2019-01-09', ''), +(17735, 261, 0, 201, '2019-02-05', 'pm1', 'bloque', '2019-01-09', ''), +(17736, 261, 0, 201, '2019-02-05', 'pm2', 'bloque', '2019-01-09', ''), +(17737, 261, 0, 201, '2019-02-06', 'am1', 'bloque', '2019-01-09', ''), +(17738, 261, 0, 201, '2019-02-06', 'am2', 'bloque', '2019-01-09', ''), +(17739, 261, 0, 201, '2019-02-06', 'pm1', 'bloque', '2019-01-09', ''), +(17740, 261, 0, 201, '2019-02-06', 'pm2', 'bloque', '2019-01-09', ''), +(17741, 261, 0, 201, '2019-02-07', 'am1', 'bloque', '2019-01-09', ''), +(17742, 261, 0, 201, '2019-02-07', 'am2', 'bloque', '2019-01-09', ''), +(17743, 261, 0, 201, '2019-02-07', 'pm1', 'bloque', '2019-01-09', ''), +(17744, 261, 0, 201, '2019-02-07', 'pm2', 'bloque', '2019-01-09', ''), +(17745, 261, 0, 201, '2019-02-08', 'am1', 'bloque', '2019-01-09', ''), +(17746, 261, 0, 201, '2019-02-08', 'am2', 'bloque', '2019-01-09', ''), +(17747, 261, 0, 201, '2019-02-08', 'pm1', 'bloque', '2019-01-09', ''), +(17748, 261, 0, 201, '2019-02-08', 'pm2', 'bloque', '2019-01-09', ''), +(17749, 262, 0, 222, '2019-01-17', 'am1', 'libre', '2019-01-09', ''), +(17750, 262, 0, 222, '2019-01-17', 'am2', 'libre', '2019-01-09', ''), +(17751, 262, 0, 222, '2019-01-17', 'pm1', 'libre', '2019-01-09', ''), +(17752, 262, 0, 222, '2019-01-17', 'pm2', 'libre', '2019-01-09', ''), +(17753, 262, 0, 222, '2019-01-18', 'am1', 'bloque', '2019-01-09', ''), +(17754, 262, 0, 222, '2019-01-18', 'am2', 'bloque', '2019-01-09', ''), +(17755, 262, 0, 222, '2019-01-18', 'pm1', 'bloque', '2019-01-09', ''), +(17756, 262, 0, 222, '2019-01-18', 'pm2', 'bloque', '2019-01-09', ''), +(17757, 262, 0, 222, '2019-01-21', 'am1', 'bloque', '2019-01-09', ''), +(17758, 262, 0, 222, '2019-01-21', 'am2', 'bloque', '2019-01-09', ''), +(17759, 262, 0, 222, '2019-01-21', 'pm1', 'bloque', '2019-01-09', ''), +(17760, 262, 0, 222, '2019-01-21', 'pm2', 'bloque', '2019-01-09', ''), +(17761, 262, 0, 222, '2019-01-22', 'am1', 'bloque', '2019-01-09', ''), +(17762, 262, 0, 222, '2019-01-22', 'am2', 'bloque', '2019-01-09', ''), +(17763, 262, 0, 222, '2019-01-22', 'pm1', 'bloque', '2019-01-09', ''), +(17764, 262, 0, 222, '2019-01-22', 'pm2', 'bloque', '2019-01-09', ''), +(17765, 262, 0, 222, '2019-01-23', 'am1', 'bloque', '2019-01-09', ''), +(17766, 262, 0, 222, '2019-01-23', 'am2', 'bloque', '2019-01-09', ''), +(17767, 262, 0, 222, '2019-01-23', 'pm1', 'bloque', '2019-01-09', ''), +(17768, 262, 0, 222, '2019-01-23', 'pm2', 'bloque', '2019-01-09', ''), +(17769, 262, 0, 222, '2019-01-24', 'am1', 'bloque', '2019-01-09', ''), +(17770, 262, 0, 222, '2019-01-24', 'am2', 'bloque', '2019-01-09', ''), +(17771, 262, 0, 222, '2019-01-24', 'pm1', 'bloque', '2019-01-09', ''), +(17772, 262, 0, 222, '2019-01-24', 'pm2', 'bloque', '2019-01-09', ''), +(17773, 262, 0, 222, '2019-01-25', 'am1', 'bloque', '2019-01-09', ''), +(17774, 262, 0, 222, '2019-01-25', 'am2', 'bloque', '2019-01-09', ''), +(17775, 262, 0, 222, '2019-01-25', 'pm1', 'bloque', '2019-01-09', ''), +(17776, 262, 0, 222, '2019-01-25', 'pm2', 'bloque', '2019-01-09', ''), +(17777, 262, 0, 222, '2019-01-28', 'am1', 'bloque', '2019-01-09', ''), +(17778, 262, 0, 222, '2019-01-28', 'am2', 'bloque', '2019-01-09', ''), +(17779, 262, 0, 222, '2019-01-28', 'pm1', 'bloque', '2019-01-09', ''), +(17780, 262, 0, 222, '2019-01-28', 'pm2', 'bloque', '2019-01-09', ''), +(17781, 262, 0, 222, '2019-01-29', 'am1', 'bloque', '2019-01-09', ''), +(17782, 262, 0, 222, '2019-01-29', 'am2', 'bloque', '2019-01-09', ''), +(17783, 262, 0, 222, '2019-01-29', 'pm1', 'bloque', '2019-01-09', ''), +(17784, 262, 0, 222, '2019-01-29', 'pm2', 'bloque', '2019-01-09', ''), +(17785, 262, 0, 222, '2019-01-30', 'am1', 'bloque', '2019-01-09', ''), +(17786, 262, 0, 222, '2019-01-30', 'am2', 'bloque', '2019-01-09', ''), +(17787, 262, 0, 222, '2019-01-30', 'pm1', 'bloque', '2019-01-09', ''), +(17788, 262, 0, 222, '2019-01-30', 'pm2', 'bloque', '2019-01-09', ''), +(17789, 262, 0, 222, '2019-01-31', 'am1', 'bloque', '2019-01-09', ''), +(17790, 262, 0, 222, '2019-01-31', 'am2', 'bloque', '2019-01-09', ''), +(17791, 262, 0, 222, '2019-01-31', 'pm1', 'bloque', '2019-01-09', ''), +(17792, 262, 0, 222, '2019-01-31', 'pm2', 'bloque', '2019-01-09', ''), +(17793, 262, 0, 222, '2019-02-01', 'am1', 'bloque', '2019-01-09', ''), +(17794, 262, 0, 222, '2019-02-01', 'am2', 'bloque', '2019-01-09', ''), +(17795, 262, 0, 222, '2019-02-01', 'pm1', 'bloque', '2019-01-09', ''), +(17796, 262, 0, 222, '2019-02-01', 'pm2', 'bloque', '2019-01-09', ''), +(17797, 262, 0, 222, '2019-02-04', 'am1', 'bloque', '2019-01-09', ''), +(17798, 262, 0, 222, '2019-02-04', 'am2', 'bloque', '2019-01-09', ''), +(17799, 262, 0, 222, '2019-02-04', 'pm1', 'bloque', '2019-01-09', ''), +(17800, 262, 0, 222, '2019-02-04', 'pm2', 'bloque', '2019-01-09', ''), +(17801, 262, 0, 222, '2019-02-05', 'am1', 'bloque', '2019-01-09', ''), +(17802, 262, 0, 222, '2019-02-05', 'am2', 'bloque', '2019-01-09', ''), +(17803, 262, 0, 222, '2019-02-05', 'pm1', 'bloque', '2019-01-09', ''), +(17804, 262, 0, 222, '2019-02-05', 'pm2', 'bloque', '2019-01-09', ''), +(17805, 262, 0, 222, '2019-02-06', 'am1', 'bloque', '2019-01-09', ''), +(17806, 262, 0, 222, '2019-02-06', 'am2', 'bloque', '2019-01-09', ''), +(17807, 262, 0, 222, '2019-02-06', 'pm1', 'bloque', '2019-01-09', ''), +(17808, 262, 0, 222, '2019-02-06', 'pm2', 'bloque', '2019-01-09', ''), +(17809, 262, 0, 222, '2019-02-07', 'am1', 'bloque', '2019-01-09', ''), +(17810, 262, 0, 222, '2019-02-07', 'am2', 'bloque', '2019-01-09', ''), +(17811, 262, 0, 222, '2019-02-07', 'pm1', 'bloque', '2019-01-09', ''), +(17812, 262, 0, 222, '2019-02-07', 'pm2', 'bloque', '2019-01-09', ''), +(17813, 262, 0, 222, '2019-02-08', 'am1', 'bloque', '2019-01-09', ''), +(17814, 262, 0, 222, '2019-02-08', 'am2', 'bloque', '2019-01-09', ''), +(17815, 262, 0, 222, '2019-02-08', 'pm1', 'bloque', '2019-01-09', ''), +(17816, 262, 0, 222, '2019-02-08', 'pm2', 'bloque', '2019-01-09', ''), +(17817, 263, 0, 59, '2019-01-17', 'am1', 'libre', '2019-01-10', ''), +(17818, 263, 0, 59, '2019-01-17', 'am2', 'libre', '2019-01-10', ''), +(17819, 263, 0, 59, '2019-01-17', 'pm1', 'libre', '2019-01-10', ''), +(17820, 263, 0, 59, '2019-01-17', 'pm2', 'libre', '2019-01-10', ''), +(17821, 263, 0, 59, '2019-01-18', 'am1', 'bloque', '2019-01-10', ''), +(17822, 263, 0, 59, '2019-01-18', 'am2', 'bloque', '2019-01-10', ''), +(17823, 263, 0, 59, '2019-01-18', 'pm1', 'bloque', '2019-01-10', ''), +(17824, 263, 0, 59, '2019-01-18', 'pm2', 'bloque', '2019-01-10', ''), +(17825, 263, 0, 59, '2019-01-21', 'am1', 'bloque', '2019-01-10', ''), +(17826, 263, 0, 59, '2019-01-21', 'am2', 'bloque', '2019-01-10', ''), +(17827, 263, 0, 59, '2019-01-21', 'pm1', 'bloque', '2019-01-10', ''), +(17828, 263, 0, 59, '2019-01-21', 'pm2', 'bloque', '2019-01-10', ''), +(17829, 263, 0, 59, '2019-01-22', 'am1', 'bloque', '2019-01-10', ''), +(17830, 263, 0, 59, '2019-01-22', 'am2', 'bloque', '2019-01-10', ''), +(17831, 263, 0, 59, '2019-01-22', 'pm1', 'bloque', '2019-01-10', ''), +(17832, 263, 0, 59, '2019-01-22', 'pm2', 'bloque', '2019-01-10', ''), +(17833, 263, 0, 59, '2019-01-23', 'am1', 'bloque', '2019-01-10', ''), +(17834, 263, 0, 59, '2019-01-23', 'am2', 'bloque', '2019-01-10', ''), +(17835, 263, 0, 59, '2019-01-23', 'pm1', 'bloque', '2019-01-10', ''), +(17836, 263, 0, 59, '2019-01-23', 'pm2', 'bloque', '2019-01-10', ''), +(17837, 263, 0, 59, '2019-01-24', 'am1', 'bloque', '2019-01-10', ''), +(17838, 263, 0, 59, '2019-01-24', 'am2', 'bloque', '2019-01-10', ''), +(17839, 263, 0, 59, '2019-01-24', 'pm1', 'bloque', '2019-01-10', ''), +(17840, 263, 0, 59, '2019-01-24', 'pm2', 'bloque', '2019-01-10', ''), +(17841, 263, 0, 59, '2019-01-25', 'am1', 'bloque', '2019-01-10', ''), +(17842, 263, 0, 59, '2019-01-25', 'am2', 'bloque', '2019-01-10', ''), +(17843, 263, 0, 59, '2019-01-25', 'pm1', 'bloque', '2019-01-10', ''), +(17844, 263, 0, 59, '2019-01-25', 'pm2', 'bloque', '2019-01-10', ''), +(17845, 263, 0, 59, '2019-01-28', 'am1', 'bloque', '2019-01-10', ''), +(17846, 263, 0, 59, '2019-01-28', 'am2', 'bloque', '2019-01-10', ''), +(17847, 263, 0, 59, '2019-01-28', 'pm1', 'bloque', '2019-01-10', ''), +(17848, 263, 0, 59, '2019-01-28', 'pm2', 'bloque', '2019-01-10', ''), +(17849, 263, 0, 59, '2019-01-29', 'am1', 'bloque', '2019-01-10', ''), +(17850, 263, 0, 59, '2019-01-29', 'am2', 'bloque', '2019-01-10', ''), +(17851, 263, 0, 59, '2019-01-29', 'pm1', 'bloque', '2019-01-10', ''), +(17852, 263, 0, 59, '2019-01-29', 'pm2', 'bloque', '2019-01-10', ''), +(17853, 263, 0, 59, '2019-01-30', 'am1', 'bloque', '2019-01-10', ''), +(17854, 263, 0, 59, '2019-01-30', 'am2', 'bloque', '2019-01-10', ''), +(17855, 263, 0, 59, '2019-01-30', 'pm1', 'bloque', '2019-01-10', ''), +(17856, 263, 0, 59, '2019-01-30', 'pm2', 'bloque', '2019-01-10', ''), +(17857, 263, 0, 59, '2019-01-31', 'am1', 'bloque', '2019-01-10', ''), +(17858, 263, 0, 59, '2019-01-31', 'am2', 'bloque', '2019-01-10', ''), +(17859, 263, 0, 59, '2019-01-31', 'pm1', 'bloque', '2019-01-10', ''), +(17860, 263, 0, 59, '2019-01-31', 'pm2', 'bloque', '2019-01-10', ''), +(17861, 263, 0, 59, '2019-02-01', 'am1', 'bloque', '2019-01-10', ''), +(17862, 263, 0, 59, '2019-02-01', 'am2', 'bloque', '2019-01-10', ''), +(17863, 263, 0, 59, '2019-02-01', 'pm1', 'bloque', '2019-01-10', ''), +(17864, 263, 0, 59, '2019-02-01', 'pm2', 'bloque', '2019-01-10', ''), +(17865, 263, 0, 59, '2019-02-04', 'am1', 'bloque', '2019-01-10', ''), +(17866, 263, 0, 59, '2019-02-04', 'am2', 'bloque', '2019-01-10', ''), +(17867, 263, 0, 59, '2019-02-04', 'pm1', 'bloque', '2019-01-10', ''), +(17868, 263, 0, 59, '2019-02-04', 'pm2', 'bloque', '2019-01-10', ''), +(17869, 263, 0, 59, '2019-02-05', 'am1', 'bloque', '2019-01-10', ''), +(17870, 263, 0, 59, '2019-02-05', 'am2', 'bloque', '2019-01-10', ''), +(17871, 263, 0, 59, '2019-02-05', 'pm1', 'bloque', '2019-01-10', ''), +(17872, 263, 0, 59, '2019-02-05', 'pm2', 'bloque', '2019-01-10', ''), +(17873, 263, 0, 59, '2019-02-06', 'am1', 'bloque', '2019-01-10', ''), +(17874, 263, 0, 59, '2019-02-06', 'am2', 'bloque', '2019-01-10', ''), +(17875, 263, 0, 59, '2019-02-06', 'pm1', 'bloque', '2019-01-10', ''), +(17876, 263, 0, 59, '2019-02-06', 'pm2', 'bloque', '2019-01-10', ''), +(17877, 263, 0, 59, '2019-02-07', 'am1', 'bloque', '2019-01-10', ''), +(17878, 263, 0, 59, '2019-02-07', 'am2', 'bloque', '2019-01-10', ''), +(17879, 263, 0, 59, '2019-02-07', 'pm1', 'bloque', '2019-01-10', ''), +(17880, 263, 0, 59, '2019-02-07', 'pm2', 'bloque', '2019-01-10', ''), +(17881, 263, 0, 59, '2019-02-08', 'am1', 'bloque', '2019-01-10', ''), +(17882, 263, 0, 59, '2019-02-08', 'am2', 'bloque', '2019-01-10', ''), +(17883, 263, 0, 59, '2019-02-08', 'pm1', 'bloque', '2019-01-10', ''), +(17884, 263, 0, 59, '2019-02-08', 'pm2', 'bloque', '2019-01-10', ''), +(17885, 264, 241, 201, '2019-01-17', 'am1', 'reserve', '2019-01-10', 'ref'), +(17886, 264, 0, 201, '2019-01-17', 'am2', 'libre', '2019-01-10', ''), +(17887, 264, 0, 201, '2019-01-17', 'pm1', 'libre', '2019-01-10', ''), +(17888, 264, 0, 201, '2019-01-17', 'pm2', 'libre', '2019-01-10', ''), +(17889, 264, 0, 201, '2019-01-18', 'am1', 'bloque', '2019-01-10', ''), +(17890, 264, 0, 201, '2019-01-18', 'am2', 'bloque', '2019-01-10', ''), +(17891, 264, 0, 201, '2019-01-18', 'pm1', 'bloque', '2019-01-10', ''), +(17892, 264, 0, 201, '2019-01-18', 'pm2', 'bloque', '2019-01-10', ''), +(17893, 264, 0, 201, '2019-01-21', 'am1', 'bloque', '2019-01-10', ''), +(17894, 264, 0, 201, '2019-01-21', 'am2', 'bloque', '2019-01-10', ''), +(17895, 264, 0, 201, '2019-01-21', 'pm1', 'bloque', '2019-01-10', ''), +(17896, 264, 0, 201, '2019-01-21', 'pm2', 'bloque', '2019-01-10', ''), +(17897, 264, 0, 201, '2019-01-22', 'am1', 'bloque', '2019-01-10', ''), +(17898, 264, 0, 201, '2019-01-22', 'am2', 'bloque', '2019-01-10', ''), +(17899, 264, 0, 201, '2019-01-22', 'pm1', 'bloque', '2019-01-10', ''), +(17900, 264, 0, 201, '2019-01-22', 'pm2', 'bloque', '2019-01-10', ''), +(17901, 264, 0, 201, '2019-01-23', 'am1', 'bloque', '2019-01-10', ''), +(17902, 264, 0, 201, '2019-01-23', 'am2', 'bloque', '2019-01-10', ''), +(17903, 264, 0, 201, '2019-01-23', 'pm1', 'bloque', '2019-01-10', ''), +(17904, 264, 0, 201, '2019-01-23', 'pm2', 'bloque', '2019-01-10', ''), +(17905, 264, 0, 201, '2019-01-24', 'am1', 'bloque', '2019-01-10', ''), +(17906, 264, 0, 201, '2019-01-24', 'am2', 'bloque', '2019-01-10', ''), +(17907, 264, 0, 201, '2019-01-24', 'pm1', 'bloque', '2019-01-10', ''), +(17908, 264, 0, 201, '2019-01-24', 'pm2', 'bloque', '2019-01-10', ''), +(17909, 264, 0, 201, '2019-01-25', 'am1', 'bloque', '2019-01-10', ''), +(17910, 264, 0, 201, '2019-01-25', 'am2', 'bloque', '2019-01-10', ''), +(17911, 264, 0, 201, '2019-01-25', 'pm1', 'bloque', '2019-01-10', ''), +(17912, 264, 0, 201, '2019-01-25', 'pm2', 'bloque', '2019-01-10', ''), +(17913, 264, 0, 201, '2019-01-28', 'am1', 'bloque', '2019-01-10', ''), +(17914, 264, 0, 201, '2019-01-28', 'am2', 'bloque', '2019-01-10', ''), +(17915, 264, 0, 201, '2019-01-28', 'pm1', 'bloque', '2019-01-10', ''), +(17916, 264, 0, 201, '2019-01-28', 'pm2', 'bloque', '2019-01-10', ''), +(17917, 264, 0, 201, '2019-01-29', 'am1', 'bloque', '2019-01-10', ''), +(17918, 264, 0, 201, '2019-01-29', 'am2', 'bloque', '2019-01-10', ''), +(17919, 264, 0, 201, '2019-01-29', 'pm1', 'bloque', '2019-01-10', ''), +(17920, 264, 0, 201, '2019-01-29', 'pm2', 'bloque', '2019-01-10', ''), +(17921, 264, 0, 201, '2019-01-30', 'am1', 'bloque', '2019-01-10', ''), +(17922, 264, 0, 201, '2019-01-30', 'am2', 'bloque', '2019-01-10', ''), +(17923, 264, 0, 201, '2019-01-30', 'pm1', 'bloque', '2019-01-10', ''), +(17924, 264, 0, 201, '2019-01-30', 'pm2', 'bloque', '2019-01-10', ''), +(17925, 264, 0, 201, '2019-01-31', 'am1', 'bloque', '2019-01-10', ''), +(17926, 264, 0, 201, '2019-01-31', 'am2', 'bloque', '2019-01-10', ''), +(17927, 264, 0, 201, '2019-01-31', 'pm1', 'bloque', '2019-01-10', ''), +(17928, 264, 0, 201, '2019-01-31', 'pm2', 'bloque', '2019-01-10', ''), +(17929, 264, 0, 201, '2019-02-01', 'am1', 'bloque', '2019-01-10', ''), +(17930, 264, 0, 201, '2019-02-01', 'am2', 'bloque', '2019-01-10', ''), +(17931, 264, 0, 201, '2019-02-01', 'pm1', 'bloque', '2019-01-10', ''), +(17932, 264, 0, 201, '2019-02-01', 'pm2', 'bloque', '2019-01-10', ''), +(17933, 264, 0, 201, '2019-02-04', 'am1', 'bloque', '2019-01-10', ''), +(17934, 264, 0, 201, '2019-02-04', 'am2', 'bloque', '2019-01-10', ''), +(17935, 264, 0, 201, '2019-02-04', 'pm1', 'bloque', '2019-01-10', ''), +(17936, 264, 0, 201, '2019-02-04', 'pm2', 'bloque', '2019-01-10', ''), +(17937, 264, 0, 201, '2019-02-05', 'am1', 'bloque', '2019-01-10', ''), +(17938, 264, 0, 201, '2019-02-05', 'am2', 'bloque', '2019-01-10', ''), +(17939, 264, 0, 201, '2019-02-05', 'pm1', 'bloque', '2019-01-10', ''), +(17940, 264, 0, 201, '2019-02-05', 'pm2', 'bloque', '2019-01-10', ''), +(17941, 264, 0, 201, '2019-02-06', 'am1', 'bloque', '2019-01-10', ''), +(17942, 264, 0, 201, '2019-02-06', 'am2', 'bloque', '2019-01-10', ''), +(17943, 264, 0, 201, '2019-02-06', 'pm1', 'bloque', '2019-01-10', ''), +(17944, 264, 0, 201, '2019-02-06', 'pm2', 'bloque', '2019-01-10', ''), +(17945, 264, 0, 201, '2019-02-07', 'am1', 'bloque', '2019-01-10', ''), +(17946, 264, 0, 201, '2019-02-07', 'am2', 'bloque', '2019-01-10', ''), +(17947, 264, 0, 201, '2019-02-07', 'pm1', 'bloque', '2019-01-10', ''), +(17948, 264, 0, 201, '2019-02-07', 'pm2', 'bloque', '2019-01-10', ''), +(17949, 264, 0, 201, '2019-02-08', 'am1', 'bloque', '2019-01-10', ''), +(17950, 264, 0, 201, '2019-02-08', 'am2', 'bloque', '2019-01-10', ''), +(17951, 264, 0, 201, '2019-02-08', 'pm1', 'bloque', '2019-01-10', ''), +(17952, 264, 0, 201, '2019-02-08', 'pm2', 'bloque', '2019-01-10', ''), +(17953, 265, 0, 208, '2019-01-17', 'am1', 'libre', '2019-01-10', ''), +(17954, 265, 0, 208, '2019-01-17', 'am2', 'libre', '2019-01-10', ''), +(17955, 265, 0, 208, '2019-01-17', 'pm1', 'libre', '2019-01-10', ''), +(17956, 265, 0, 208, '2019-01-17', 'pm2', 'libre', '2019-01-10', ''), +(17957, 265, 0, 208, '2019-01-18', 'am1', 'bloque', '2019-01-10', ''), +(17958, 265, 0, 208, '2019-01-18', 'am2', 'bloque', '2019-01-10', ''), +(17959, 265, 0, 208, '2019-01-18', 'pm1', 'bloque', '2019-01-10', ''), +(17960, 265, 0, 208, '2019-01-18', 'pm2', 'bloque', '2019-01-10', ''), +(17961, 265, 0, 208, '2019-01-21', 'am1', 'bloque', '2019-01-10', ''), +(17962, 265, 0, 208, '2019-01-21', 'am2', 'bloque', '2019-01-10', ''), +(17963, 265, 0, 208, '2019-01-21', 'pm1', 'bloque', '2019-01-10', ''), +(17964, 265, 0, 208, '2019-01-21', 'pm2', 'bloque', '2019-01-10', ''), +(17965, 265, 0, 208, '2019-01-22', 'am1', 'bloque', '2019-01-10', ''), +(17966, 265, 0, 208, '2019-01-22', 'am2', 'bloque', '2019-01-10', ''), +(17967, 265, 0, 208, '2019-01-22', 'pm1', 'bloque', '2019-01-10', ''), +(17968, 265, 0, 208, '2019-01-22', 'pm2', 'bloque', '2019-01-10', ''), +(17969, 265, 0, 208, '2019-01-23', 'am1', 'bloque', '2019-01-10', ''), +(17970, 265, 0, 208, '2019-01-23', 'am2', 'bloque', '2019-01-10', ''), +(17971, 265, 0, 208, '2019-01-23', 'pm1', 'bloque', '2019-01-10', ''), +(17972, 265, 0, 208, '2019-01-23', 'pm2', 'bloque', '2019-01-10', ''), +(17973, 265, 0, 208, '2019-01-24', 'am1', 'bloque', '2019-01-10', ''), +(17974, 265, 0, 208, '2019-01-24', 'am2', 'bloque', '2019-01-10', ''), +(17975, 265, 0, 208, '2019-01-24', 'pm1', 'bloque', '2019-01-10', ''), +(17976, 265, 0, 208, '2019-01-24', 'pm2', 'bloque', '2019-01-10', ''), +(17977, 265, 0, 208, '2019-01-25', 'am1', 'bloque', '2019-01-10', ''), +(17978, 265, 0, 208, '2019-01-25', 'am2', 'bloque', '2019-01-10', ''), +(17979, 265, 0, 208, '2019-01-25', 'pm1', 'bloque', '2019-01-10', ''), +(17980, 265, 0, 208, '2019-01-25', 'pm2', 'bloque', '2019-01-10', ''), +(17981, 265, 0, 208, '2019-01-28', 'am1', 'bloque', '2019-01-10', ''), +(17982, 265, 0, 208, '2019-01-28', 'am2', 'bloque', '2019-01-10', ''), +(17983, 265, 0, 208, '2019-01-28', 'pm1', 'bloque', '2019-01-10', ''), +(17984, 265, 0, 208, '2019-01-28', 'pm2', 'bloque', '2019-01-10', ''), +(17985, 265, 0, 208, '2019-01-29', 'am1', 'bloque', '2019-01-10', ''), +(17986, 265, 0, 208, '2019-01-29', 'am2', 'bloque', '2019-01-10', ''), +(17987, 265, 0, 208, '2019-01-29', 'pm1', 'bloque', '2019-01-10', ''), +(17988, 265, 0, 208, '2019-01-29', 'pm2', 'bloque', '2019-01-10', ''), +(17989, 265, 0, 208, '2019-01-30', 'am1', 'bloque', '2019-01-10', ''), +(17990, 265, 0, 208, '2019-01-30', 'am2', 'bloque', '2019-01-10', ''), +(17991, 265, 0, 208, '2019-01-30', 'pm1', 'bloque', '2019-01-10', ''), +(17992, 265, 0, 208, '2019-01-30', 'pm2', 'bloque', '2019-01-10', ''), +(17993, 265, 0, 208, '2019-01-31', 'am1', 'bloque', '2019-01-10', ''), +(17994, 265, 0, 208, '2019-01-31', 'am2', 'bloque', '2019-01-10', ''), +(17995, 265, 0, 208, '2019-01-31', 'pm1', 'bloque', '2019-01-10', ''), +(17996, 265, 0, 208, '2019-01-31', 'pm2', 'bloque', '2019-01-10', ''), +(17997, 265, 0, 208, '2019-02-01', 'am1', 'bloque', '2019-01-10', ''), +(17998, 265, 0, 208, '2019-02-01', 'am2', 'bloque', '2019-01-10', ''), +(17999, 265, 0, 208, '2019-02-01', 'pm1', 'bloque', '2019-01-10', ''), +(18000, 265, 0, 208, '2019-02-01', 'pm2', 'bloque', '2019-01-10', ''), +(18001, 265, 0, 208, '2019-02-04', 'am1', 'bloque', '2019-01-10', ''), +(18002, 265, 0, 208, '2019-02-04', 'am2', 'bloque', '2019-01-10', ''), +(18003, 265, 0, 208, '2019-02-04', 'pm1', 'bloque', '2019-01-10', ''), +(18004, 265, 0, 208, '2019-02-04', 'pm2', 'bloque', '2019-01-10', ''), +(18005, 265, 0, 208, '2019-02-05', 'am1', 'bloque', '2019-01-10', ''), +(18006, 265, 0, 208, '2019-02-05', 'am2', 'bloque', '2019-01-10', ''), +(18007, 265, 0, 208, '2019-02-05', 'pm1', 'bloque', '2019-01-10', ''), +(18008, 265, 0, 208, '2019-02-05', 'pm2', 'bloque', '2019-01-10', ''), +(18009, 265, 0, 208, '2019-02-06', 'am1', 'bloque', '2019-01-10', ''), +(18010, 265, 0, 208, '2019-02-06', 'am2', 'bloque', '2019-01-10', ''), +(18011, 265, 0, 208, '2019-02-06', 'pm1', 'bloque', '2019-01-10', ''), +(18012, 265, 0, 208, '2019-02-06', 'pm2', 'bloque', '2019-01-10', ''), +(18013, 265, 0, 208, '2019-02-07', 'am1', 'bloque', '2019-01-10', ''), +(18014, 265, 0, 208, '2019-02-07', 'am2', 'bloque', '2019-01-10', ''), +(18015, 265, 0, 208, '2019-02-07', 'pm1', 'bloque', '2019-01-10', ''), +(18016, 265, 0, 208, '2019-02-07', 'pm2', 'bloque', '2019-01-10', ''), +(18017, 265, 0, 208, '2019-02-08', 'am1', 'bloque', '2019-01-10', ''), +(18018, 265, 0, 208, '2019-02-08', 'am2', 'bloque', '2019-01-10', ''), +(18019, 265, 0, 208, '2019-02-08', 'pm1', 'bloque', '2019-01-10', ''), +(18020, 265, 0, 208, '2019-02-08', 'pm2', 'bloque', '2019-01-10', ''), +(18021, 266, 0, 42, '2019-01-17', 'am1', 'libre', '2019-01-11', ''), +(18022, 266, 0, 42, '2019-01-17', 'am2', 'libre', '2019-01-11', ''), +(18023, 266, 0, 42, '2019-01-17', 'pm1', 'libre', '2019-01-11', ''), +(18024, 266, 0, 42, '2019-01-17', 'pm2', 'libre', '2019-01-11', ''), +(18025, 266, 0, 42, '2019-01-18', 'am1', 'libre', '2019-01-11', 'ref'), +(18026, 266, 0, 42, '2019-01-18', 'am2', 'bloque', '2019-01-11', ''), +(18027, 266, 0, 42, '2019-01-18', 'pm1', 'bloque', '2019-01-11', ''), +(18028, 266, 0, 42, '2019-01-18', 'pm2', 'bloque', '2019-01-11', ''), +(18029, 266, 0, 42, '2019-01-21', 'am1', 'bloque', '2019-01-11', ''), +(18030, 266, 0, 42, '2019-01-21', 'am2', 'bloque', '2019-01-11', ''), +(18031, 266, 0, 42, '2019-01-21', 'pm1', 'bloque', '2019-01-11', ''), +(18032, 266, 0, 42, '2019-01-21', 'pm2', 'bloque', '2019-01-11', ''), +(18033, 266, 0, 42, '2019-01-22', 'am1', 'bloque', '2019-01-11', ''), +(18034, 266, 0, 42, '2019-01-22', 'am2', 'bloque', '2019-01-11', ''), +(18035, 266, 0, 42, '2019-01-22', 'pm1', 'bloque', '2019-01-11', ''), +(18036, 266, 0, 42, '2019-01-22', 'pm2', 'bloque', '2019-01-11', ''), +(18037, 266, 0, 42, '2019-01-23', 'am1', 'bloque', '2019-01-11', ''), +(18038, 266, 0, 42, '2019-01-23', 'am2', 'bloque', '2019-01-11', ''), +(18039, 266, 0, 42, '2019-01-23', 'pm1', 'bloque', '2019-01-11', ''), +(18040, 266, 0, 42, '2019-01-23', 'pm2', 'bloque', '2019-01-11', ''), +(18041, 266, 0, 42, '2019-01-24', 'am1', 'bloque', '2019-01-11', ''), +(18042, 266, 0, 42, '2019-01-24', 'am2', 'bloque', '2019-01-11', ''), +(18043, 266, 0, 42, '2019-01-24', 'pm1', 'bloque', '2019-01-11', ''), +(18044, 266, 0, 42, '2019-01-24', 'pm2', 'bloque', '2019-01-11', ''), +(18045, 266, 0, 42, '2019-01-25', 'am1', 'bloque', '2019-01-11', ''), +(18046, 266, 0, 42, '2019-01-25', 'am2', 'bloque', '2019-01-11', ''), +(18047, 266, 0, 42, '2019-01-25', 'pm1', 'bloque', '2019-01-11', ''), +(18048, 266, 0, 42, '2019-01-25', 'pm2', 'bloque', '2019-01-11', ''), +(18049, 266, 0, 42, '2019-01-28', 'am1', 'bloque', '2019-01-11', ''), +(18050, 266, 0, 42, '2019-01-28', 'am2', 'bloque', '2019-01-11', ''), +(18051, 266, 0, 42, '2019-01-28', 'pm1', 'bloque', '2019-01-11', ''), +(18052, 266, 0, 42, '2019-01-28', 'pm2', 'bloque', '2019-01-11', ''), +(18053, 266, 0, 42, '2019-01-29', 'am1', 'bloque', '2019-01-11', ''), +(18054, 266, 0, 42, '2019-01-29', 'am2', 'bloque', '2019-01-11', ''), +(18055, 266, 0, 42, '2019-01-29', 'pm1', 'bloque', '2019-01-11', ''), +(18056, 266, 0, 42, '2019-01-29', 'pm2', 'bloque', '2019-01-11', ''), +(18057, 266, 0, 42, '2019-01-30', 'am1', 'bloque', '2019-01-11', ''), +(18058, 266, 0, 42, '2019-01-30', 'am2', 'bloque', '2019-01-11', ''), +(18059, 266, 0, 42, '2019-01-30', 'pm1', 'bloque', '2019-01-11', ''), +(18060, 266, 0, 42, '2019-01-30', 'pm2', 'bloque', '2019-01-11', ''), +(18061, 266, 0, 42, '2019-01-31', 'am1', 'bloque', '2019-01-11', ''), +(18062, 266, 0, 42, '2019-01-31', 'am2', 'bloque', '2019-01-11', ''), +(18063, 266, 0, 42, '2019-01-31', 'pm1', 'bloque', '2019-01-11', ''), +(18064, 266, 0, 42, '2019-01-31', 'pm2', 'bloque', '2019-01-11', ''), +(18065, 266, 0, 42, '2019-02-01', 'am1', 'bloque', '2019-01-11', ''), +(18066, 266, 0, 42, '2019-02-01', 'am2', 'bloque', '2019-01-11', ''), +(18067, 266, 0, 42, '2019-02-01', 'pm1', 'bloque', '2019-01-11', ''), +(18068, 266, 0, 42, '2019-02-01', 'pm2', 'bloque', '2019-01-11', ''), +(18069, 266, 0, 42, '2019-02-04', 'am1', 'libre', '2019-01-11', 'ref'), +(18070, 266, 0, 42, '2019-02-04', 'am2', 'libre', '2019-01-11', 'ref'), +(18071, 266, 0, 42, '2019-02-04', 'pm1', 'bloque', '2019-01-11', ''), +(18072, 266, 0, 42, '2019-02-04', 'pm2', 'bloque', '2019-01-11', ''), +(18073, 266, 0, 42, '2019-02-05', 'am1', 'bloque', '2019-01-11', ''), +(18074, 266, 0, 42, '2019-02-05', 'am2', 'bloque', '2019-01-11', ''), +(18075, 266, 0, 42, '2019-02-05', 'pm1', 'bloque', '2019-01-11', ''), +(18076, 266, 0, 42, '2019-02-05', 'pm2', 'bloque', '2019-01-11', ''), +(18077, 266, 0, 42, '2019-02-06', 'am1', 'bloque', '2019-01-11', ''), +(18078, 266, 0, 42, '2019-02-06', 'am2', 'bloque', '2019-01-11', ''), +(18079, 266, 0, 42, '2019-02-06', 'pm1', 'bloque', '2019-01-11', ''), +(18080, 266, 0, 42, '2019-02-06', 'pm2', 'bloque', '2019-01-11', ''), +(18081, 266, 0, 42, '2019-02-07', 'am1', 'bloque', '2019-01-11', ''), +(18082, 266, 0, 42, '2019-02-07', 'am2', 'bloque', '2019-01-11', ''), +(18083, 266, 0, 42, '2019-02-07', 'pm1', 'bloque', '2019-01-11', ''), +(18084, 266, 0, 42, '2019-02-07', 'pm2', 'bloque', '2019-01-11', ''), +(18085, 266, 0, 42, '2019-02-08', 'am1', 'bloque', '2019-01-11', ''), +(18086, 266, 0, 42, '2019-02-08', 'am2', 'bloque', '2019-01-11', ''), +(18087, 266, 0, 42, '2019-02-08', 'pm1', 'bloque', '2019-01-11', ''), +(18088, 266, 0, 42, '2019-02-08', 'pm2', 'bloque', '2019-01-11', ''), +(18089, 267, 0, 42, '2019-01-17', 'am1', 'libre', '2019-01-11', ''), +(18090, 267, 0, 42, '2019-01-17', 'am2', 'libre', '2019-01-11', ''), +(18091, 267, 0, 42, '2019-01-17', 'pm1', 'libre', '2019-01-11', ''), +(18092, 267, 0, 42, '2019-01-17', 'pm2', 'libre', '2019-01-11', ''), +(18093, 267, 0, 42, '2019-01-18', 'am1', 'bloque', '2019-01-11', ''), +(18094, 267, 0, 42, '2019-01-18', 'am2', 'bloque', '2019-01-11', ''), +(18095, 267, 0, 42, '2019-01-18', 'pm1', 'bloque', '2019-01-11', ''), +(18096, 267, 0, 42, '2019-01-18', 'pm2', 'bloque', '2019-01-11', ''), +(18097, 267, 0, 42, '2019-01-21', 'am1', 'bloque', '2019-01-11', ''), +(18098, 267, 0, 42, '2019-01-21', 'am2', 'bloque', '2019-01-11', ''), +(18099, 267, 0, 42, '2019-01-21', 'pm1', 'bloque', '2019-01-11', ''), +(18100, 267, 0, 42, '2019-01-21', 'pm2', 'bloque', '2019-01-11', ''), +(18101, 267, 0, 42, '2019-01-22', 'am1', 'bloque', '2019-01-11', ''), +(18102, 267, 0, 42, '2019-01-22', 'am2', 'bloque', '2019-01-11', ''), +(18103, 267, 0, 42, '2019-01-22', 'pm1', 'bloque', '2019-01-11', ''), +(18104, 267, 0, 42, '2019-01-22', 'pm2', 'bloque', '2019-01-11', ''), +(18105, 267, 0, 42, '2019-01-23', 'am1', 'bloque', '2019-01-11', ''), +(18106, 267, 0, 42, '2019-01-23', 'am2', 'bloque', '2019-01-11', ''), +(18107, 267, 0, 42, '2019-01-23', 'pm1', 'bloque', '2019-01-11', ''), +(18108, 267, 0, 42, '2019-01-23', 'pm2', 'bloque', '2019-01-11', ''), +(18109, 267, 0, 42, '2019-01-24', 'am1', 'bloque', '2019-01-11', ''), +(18110, 267, 0, 42, '2019-01-24', 'am2', 'bloque', '2019-01-11', ''), +(18111, 267, 0, 42, '2019-01-24', 'pm1', 'bloque', '2019-01-11', ''), +(18112, 267, 0, 42, '2019-01-24', 'pm2', 'bloque', '2019-01-11', ''), +(18113, 267, 0, 42, '2019-01-25', 'am1', 'bloque', '2019-01-11', ''), +(18114, 267, 0, 42, '2019-01-25', 'am2', 'bloque', '2019-01-11', ''), +(18115, 267, 0, 42, '2019-01-25', 'pm1', 'bloque', '2019-01-11', ''), +(18116, 267, 0, 42, '2019-01-25', 'pm2', 'bloque', '2019-01-11', ''), +(18117, 267, 0, 42, '2019-01-28', 'am1', 'bloque', '2019-01-11', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(18118, 267, 0, 42, '2019-01-28', 'am2', 'bloque', '2019-01-11', ''), +(18119, 267, 0, 42, '2019-01-28', 'pm1', 'bloque', '2019-01-11', ''), +(18120, 267, 0, 42, '2019-01-28', 'pm2', 'bloque', '2019-01-11', ''), +(18121, 267, 0, 42, '2019-01-29', 'am1', 'bloque', '2019-01-11', ''), +(18122, 267, 0, 42, '2019-01-29', 'am2', 'bloque', '2019-01-11', ''), +(18123, 267, 0, 42, '2019-01-29', 'pm1', 'bloque', '2019-01-11', ''), +(18124, 267, 0, 42, '2019-01-29', 'pm2', 'bloque', '2019-01-11', ''), +(18125, 267, 0, 42, '2019-01-30', 'am1', 'bloque', '2019-01-11', ''), +(18126, 267, 0, 42, '2019-01-30', 'am2', 'bloque', '2019-01-11', ''), +(18127, 267, 0, 42, '2019-01-30', 'pm1', 'bloque', '2019-01-11', ''), +(18128, 267, 0, 42, '2019-01-30', 'pm2', 'bloque', '2019-01-11', ''), +(18129, 267, 0, 42, '2019-01-31', 'am1', 'bloque', '2019-01-11', ''), +(18130, 267, 0, 42, '2019-01-31', 'am2', 'bloque', '2019-01-11', ''), +(18131, 267, 0, 42, '2019-01-31', 'pm1', 'bloque', '2019-01-11', ''), +(18132, 267, 0, 42, '2019-01-31', 'pm2', 'bloque', '2019-01-11', ''), +(18133, 267, 0, 42, '2019-02-01', 'am1', 'bloque', '2019-01-11', ''), +(18134, 267, 0, 42, '2019-02-01', 'am2', 'bloque', '2019-01-11', ''), +(18135, 267, 0, 42, '2019-02-01', 'pm1', 'bloque', '2019-01-11', ''), +(18136, 267, 0, 42, '2019-02-01', 'pm2', 'bloque', '2019-01-11', ''), +(18137, 267, 0, 42, '2019-02-04', 'am1', 'bloque', '2019-01-11', ''), +(18138, 267, 0, 42, '2019-02-04', 'am2', 'bloque', '2019-01-11', ''), +(18139, 267, 0, 42, '2019-02-04', 'pm1', 'bloque', '2019-01-11', ''), +(18140, 267, 0, 42, '2019-02-04', 'pm2', 'bloque', '2019-01-11', ''), +(18141, 267, 0, 42, '2019-02-05', 'am1', 'bloque', '2019-01-11', ''), +(18142, 267, 0, 42, '2019-02-05', 'am2', 'bloque', '2019-01-11', ''), +(18143, 267, 0, 42, '2019-02-05', 'pm1', 'bloque', '2019-01-11', ''), +(18144, 267, 0, 42, '2019-02-05', 'pm2', 'bloque', '2019-01-11', ''), +(18145, 267, 0, 42, '2019-02-06', 'am1', 'bloque', '2019-01-11', ''), +(18146, 267, 0, 42, '2019-02-06', 'am2', 'bloque', '2019-01-11', ''), +(18147, 267, 0, 42, '2019-02-06', 'pm1', 'bloque', '2019-01-11', ''), +(18148, 267, 0, 42, '2019-02-06', 'pm2', 'bloque', '2019-01-11', ''), +(18149, 267, 0, 42, '2019-02-07', 'am1', 'bloque', '2019-01-11', ''), +(18150, 267, 0, 42, '2019-02-07', 'am2', 'bloque', '2019-01-11', ''), +(18151, 267, 0, 42, '2019-02-07', 'pm1', 'bloque', '2019-01-11', ''), +(18152, 267, 0, 42, '2019-02-07', 'pm2', 'bloque', '2019-01-11', ''), +(18153, 267, 0, 42, '2019-02-08', 'am1', 'bloque', '2019-01-11', ''), +(18154, 267, 0, 42, '2019-02-08', 'am2', 'bloque', '2019-01-11', ''), +(18155, 267, 0, 42, '2019-02-08', 'pm1', 'bloque', '2019-01-11', ''), +(18156, 267, 0, 42, '2019-02-08', 'pm2', 'bloque', '2019-01-11', ''), +(18157, 268, 0, 84, '2019-01-17', 'am1', 'libre', '2019-01-11', ''), +(18158, 268, 0, 84, '2019-01-17', 'am2', 'libre', '2019-01-11', ''), +(18159, 268, 0, 84, '2019-01-17', 'pm1', 'libre', '2019-01-11', ''), +(18160, 268, 0, 84, '2019-01-17', 'pm2', 'libre', '2019-01-11', ''), +(18161, 268, 0, 84, '2019-01-18', 'am1', 'bloque', '2019-01-11', ''), +(18162, 268, 0, 84, '2019-01-18', 'am2', 'bloque', '2019-01-11', ''), +(18163, 268, 0, 84, '2019-01-18', 'pm1', 'bloque', '2019-01-11', ''), +(18164, 268, 0, 84, '2019-01-18', 'pm2', 'bloque', '2019-01-11', ''), +(18165, 268, 0, 84, '2019-01-21', 'am1', 'bloque', '2019-01-11', ''), +(18166, 268, 0, 84, '2019-01-21', 'am2', 'bloque', '2019-01-11', ''), +(18167, 268, 0, 84, '2019-01-21', 'pm1', 'bloque', '2019-01-11', ''), +(18168, 268, 0, 84, '2019-01-21', 'pm2', 'bloque', '2019-01-11', ''), +(18169, 268, 0, 84, '2019-01-22', 'am1', 'bloque', '2019-01-11', ''), +(18170, 268, 0, 84, '2019-01-22', 'am2', 'bloque', '2019-01-11', ''), +(18171, 268, 0, 84, '2019-01-22', 'pm1', 'bloque', '2019-01-11', ''), +(18172, 268, 0, 84, '2019-01-22', 'pm2', 'bloque', '2019-01-11', ''), +(18173, 268, 0, 84, '2019-01-23', 'am1', 'bloque', '2019-01-11', ''), +(18174, 268, 0, 84, '2019-01-23', 'am2', 'bloque', '2019-01-11', ''), +(18175, 268, 0, 84, '2019-01-23', 'pm1', 'bloque', '2019-01-11', ''), +(18176, 268, 0, 84, '2019-01-23', 'pm2', 'bloque', '2019-01-11', ''), +(18177, 268, 0, 84, '2019-01-24', 'am1', 'bloque', '2019-01-11', ''), +(18178, 268, 0, 84, '2019-01-24', 'am2', 'bloque', '2019-01-11', ''), +(18179, 268, 0, 84, '2019-01-24', 'pm1', 'bloque', '2019-01-11', ''), +(18180, 268, 0, 84, '2019-01-24', 'pm2', 'bloque', '2019-01-11', ''), +(18181, 268, 0, 84, '2019-01-25', 'am1', 'bloque', '2019-01-11', ''), +(18182, 268, 0, 84, '2019-01-25', 'am2', 'bloque', '2019-01-11', ''), +(18183, 268, 0, 84, '2019-01-25', 'pm1', 'bloque', '2019-01-11', ''), +(18184, 268, 0, 84, '2019-01-25', 'pm2', 'bloque', '2019-01-11', ''), +(18185, 268, 0, 84, '2019-01-28', 'am1', 'bloque', '2019-01-11', ''), +(18186, 268, 0, 84, '2019-01-28', 'am2', 'bloque', '2019-01-11', ''), +(18187, 268, 0, 84, '2019-01-28', 'pm1', 'bloque', '2019-01-11', ''), +(18188, 268, 0, 84, '2019-01-28', 'pm2', 'bloque', '2019-01-11', ''), +(18189, 268, 0, 84, '2019-01-29', 'am1', 'bloque', '2019-01-11', ''), +(18190, 268, 0, 84, '2019-01-29', 'am2', 'bloque', '2019-01-11', ''), +(18191, 268, 0, 84, '2019-01-29', 'pm1', 'bloque', '2019-01-11', ''), +(18192, 268, 0, 84, '2019-01-29', 'pm2', 'bloque', '2019-01-11', ''), +(18193, 268, 0, 84, '2019-01-30', 'am1', 'bloque', '2019-01-11', ''), +(18194, 268, 0, 84, '2019-01-30', 'am2', 'bloque', '2019-01-11', ''), +(18195, 268, 0, 84, '2019-01-30', 'pm1', 'bloque', '2019-01-11', ''), +(18196, 268, 0, 84, '2019-01-30', 'pm2', 'bloque', '2019-01-11', ''), +(18197, 268, 0, 84, '2019-01-31', 'am1', 'bloque', '2019-01-11', ''), +(18198, 268, 0, 84, '2019-01-31', 'am2', 'bloque', '2019-01-11', ''), +(18199, 268, 0, 84, '2019-01-31', 'pm1', 'bloque', '2019-01-11', ''), +(18200, 268, 0, 84, '2019-01-31', 'pm2', 'bloque', '2019-01-11', ''), +(18201, 268, 0, 84, '2019-02-01', 'am1', 'bloque', '2019-01-11', ''), +(18202, 268, 0, 84, '2019-02-01', 'am2', 'bloque', '2019-01-11', ''), +(18203, 268, 0, 84, '2019-02-01', 'pm1', 'bloque', '2019-01-11', ''), +(18204, 268, 0, 84, '2019-02-01', 'pm2', 'bloque', '2019-01-11', ''), +(18205, 268, 0, 84, '2019-02-04', 'am1', 'bloque', '2019-01-11', ''), +(18206, 268, 0, 84, '2019-02-04', 'am2', 'bloque', '2019-01-11', ''), +(18207, 268, 0, 84, '2019-02-04', 'pm1', 'bloque', '2019-01-11', ''), +(18208, 268, 0, 84, '2019-02-04', 'pm2', 'bloque', '2019-01-11', ''), +(18209, 268, 0, 84, '2019-02-05', 'am1', 'bloque', '2019-01-11', ''), +(18210, 268, 0, 84, '2019-02-05', 'am2', 'bloque', '2019-01-11', ''), +(18211, 268, 0, 84, '2019-02-05', 'pm1', 'bloque', '2019-01-11', ''), +(18212, 268, 0, 84, '2019-02-05', 'pm2', 'bloque', '2019-01-11', ''), +(18213, 268, 0, 84, '2019-02-06', 'am1', 'bloque', '2019-01-11', ''), +(18214, 268, 0, 84, '2019-02-06', 'am2', 'bloque', '2019-01-11', ''), +(18215, 268, 0, 84, '2019-02-06', 'pm1', 'bloque', '2019-01-11', ''), +(18216, 268, 0, 84, '2019-02-06', 'pm2', 'bloque', '2019-01-11', ''), +(18217, 268, 0, 84, '2019-02-07', 'am1', 'bloque', '2019-01-11', ''), +(18218, 268, 0, 84, '2019-02-07', 'am2', 'bloque', '2019-01-11', ''), +(18219, 268, 0, 84, '2019-02-07', 'pm1', 'bloque', '2019-01-11', ''), +(18220, 268, 0, 84, '2019-02-07', 'pm2', 'bloque', '2019-01-11', ''), +(18221, 268, 0, 84, '2019-02-08', 'am1', 'bloque', '2019-01-11', ''), +(18222, 268, 0, 84, '2019-02-08', 'am2', 'bloque', '2019-01-11', ''), +(18223, 268, 0, 84, '2019-02-08', 'pm1', 'bloque', '2019-01-11', ''), +(18224, 268, 0, 84, '2019-02-08', 'pm2', 'bloque', '2019-01-11', ''), +(18225, 269, 0, 28, '2019-01-17', 'am1', 'libre', '2019-01-11', ''), +(18226, 269, 0, 28, '2019-01-17', 'am2', 'libre', '2019-01-11', ''), +(18227, 269, 268, 28, '2019-01-17', 'pm1', 'reserve', '2019-01-13', 'ref'), +(18228, 269, 0, 28, '2019-01-17', 'pm2', 'libre', '2019-01-11', ''), +(18229, 269, 0, 28, '2019-01-18', 'am1', 'bloque', '2019-01-11', ''), +(18230, 269, 0, 28, '2019-01-18', 'am2', 'bloque', '2019-01-11', ''), +(18231, 269, 0, 28, '2019-01-18', 'pm1', 'bloque', '2019-01-11', ''), +(18232, 269, 0, 28, '2019-01-18', 'pm2', 'bloque', '2019-01-11', ''), +(18233, 269, 0, 28, '2019-01-21', 'am1', 'bloque', '2019-01-11', ''), +(18234, 269, 0, 28, '2019-01-21', 'am2', 'bloque', '2019-01-11', ''), +(18235, 269, 0, 28, '2019-01-21', 'pm1', 'bloque', '2019-01-11', ''), +(18236, 269, 0, 28, '2019-01-21', 'pm2', 'bloque', '2019-01-11', ''), +(18237, 269, 0, 28, '2019-01-22', 'am1', 'bloque', '2019-01-11', ''), +(18238, 269, 0, 28, '2019-01-22', 'am2', 'bloque', '2019-01-11', ''), +(18239, 269, 0, 28, '2019-01-22', 'pm1', 'bloque', '2019-01-11', ''), +(18240, 269, 0, 28, '2019-01-22', 'pm2', 'bloque', '2019-01-11', ''), +(18241, 269, 0, 28, '2019-01-23', 'am1', 'bloque', '2019-01-11', ''), +(18242, 269, 0, 28, '2019-01-23', 'am2', 'bloque', '2019-01-11', ''), +(18243, 269, 0, 28, '2019-01-23', 'pm1', 'bloque', '2019-01-11', ''), +(18244, 269, 0, 28, '2019-01-23', 'pm2', 'bloque', '2019-01-11', ''), +(18245, 269, 0, 28, '2019-01-24', 'am1', 'bloque', '2019-01-11', ''), +(18246, 269, 0, 28, '2019-01-24', 'am2', 'bloque', '2019-01-11', ''), +(18247, 269, 0, 28, '2019-01-24', 'pm1', 'bloque', '2019-01-11', ''), +(18248, 269, 0, 28, '2019-01-24', 'pm2', 'bloque', '2019-01-11', ''), +(18249, 269, 0, 28, '2019-01-25', 'am1', 'bloque', '2019-01-11', ''), +(18250, 269, 0, 28, '2019-01-25', 'am2', 'bloque', '2019-01-11', ''), +(18251, 269, 0, 28, '2019-01-25', 'pm1', 'bloque', '2019-01-11', ''), +(18252, 269, 0, 28, '2019-01-25', 'pm2', 'bloque', '2019-01-11', ''), +(18253, 269, 0, 28, '2019-01-28', 'am1', 'bloque', '2019-01-11', ''), +(18254, 269, 0, 28, '2019-01-28', 'am2', 'bloque', '2019-01-11', ''), +(18255, 269, 0, 28, '2019-01-28', 'pm1', 'bloque', '2019-01-11', ''), +(18256, 269, 0, 28, '2019-01-28', 'pm2', 'bloque', '2019-01-11', ''), +(18257, 269, 0, 28, '2019-01-29', 'am1', 'bloque', '2019-01-11', ''), +(18258, 269, 0, 28, '2019-01-29', 'am2', 'bloque', '2019-01-11', ''), +(18259, 269, 0, 28, '2019-01-29', 'pm1', 'bloque', '2019-01-11', ''), +(18260, 269, 0, 28, '2019-01-29', 'pm2', 'bloque', '2019-01-11', ''), +(18261, 269, 0, 28, '2019-01-30', 'am1', 'bloque', '2019-01-11', ''), +(18262, 269, 0, 28, '2019-01-30', 'am2', 'bloque', '2019-01-11', ''), +(18263, 269, 0, 28, '2019-01-30', 'pm1', 'bloque', '2019-01-11', ''), +(18264, 269, 0, 28, '2019-01-30', 'pm2', 'bloque', '2019-01-11', ''), +(18265, 269, 0, 28, '2019-01-31', 'am1', 'bloque', '2019-01-11', ''), +(18266, 269, 0, 28, '2019-01-31', 'am2', 'bloque', '2019-01-11', ''), +(18267, 269, 0, 28, '2019-01-31', 'pm1', 'bloque', '2019-01-11', ''), +(18268, 269, 0, 28, '2019-01-31', 'pm2', 'bloque', '2019-01-11', ''), +(18269, 269, 0, 28, '2019-02-01', 'am1', 'bloque', '2019-01-11', ''), +(18270, 269, 0, 28, '2019-02-01', 'am2', 'bloque', '2019-01-11', ''), +(18271, 269, 0, 28, '2019-02-01', 'pm1', 'bloque', '2019-01-11', ''), +(18272, 269, 0, 28, '2019-02-01', 'pm2', 'bloque', '2019-01-11', ''), +(18273, 269, 0, 28, '2019-02-04', 'am1', 'bloque', '2019-01-11', ''), +(18274, 269, 0, 28, '2019-02-04', 'am2', 'bloque', '2019-01-11', ''), +(18275, 269, 0, 28, '2019-02-04', 'pm1', 'bloque', '2019-01-11', ''), +(18276, 269, 0, 28, '2019-02-04', 'pm2', 'bloque', '2019-01-11', ''), +(18277, 269, 0, 28, '2019-02-05', 'am1', 'bloque', '2019-01-11', ''), +(18278, 269, 0, 28, '2019-02-05', 'am2', 'bloque', '2019-01-11', ''), +(18279, 269, 0, 28, '2019-02-05', 'pm1', 'bloque', '2019-01-11', ''), +(18280, 269, 0, 28, '2019-02-05', 'pm2', 'bloque', '2019-01-11', ''), +(18281, 269, 0, 28, '2019-02-06', 'am1', 'bloque', '2019-01-11', ''), +(18282, 269, 0, 28, '2019-02-06', 'am2', 'bloque', '2019-01-11', ''), +(18283, 269, 0, 28, '2019-02-06', 'pm1', 'bloque', '2019-01-11', ''), +(18284, 269, 0, 28, '2019-02-06', 'pm2', 'bloque', '2019-01-11', ''), +(18285, 269, 0, 28, '2019-02-07', 'am1', 'bloque', '2019-01-11', ''), +(18286, 269, 0, 28, '2019-02-07', 'am2', 'bloque', '2019-01-11', ''), +(18287, 269, 0, 28, '2019-02-07', 'pm1', 'bloque', '2019-01-11', ''), +(18288, 269, 0, 28, '2019-02-07', 'pm2', 'bloque', '2019-01-11', ''), +(18289, 269, 0, 28, '2019-02-08', 'am1', 'bloque', '2019-01-11', ''), +(18290, 269, 0, 28, '2019-02-08', 'am2', 'bloque', '2019-01-11', ''), +(18291, 269, 0, 28, '2019-02-08', 'pm1', 'bloque', '2019-01-11', ''), +(18292, 269, 0, 28, '2019-02-08', 'pm2', 'bloque', '2019-01-11', ''), +(18293, 270, 0, 28, '2019-01-17', 'am1', 'libre', '2019-01-13', ''), +(18294, 270, 0, 28, '2019-01-17', 'am2', 'libre', '2019-01-13', ''), +(18295, 270, 0, 28, '2019-01-17', 'pm1', 'libre', '2019-01-13', ''), +(18296, 270, 0, 28, '2019-01-17', 'pm2', 'libre', '2019-01-13', ''), +(18297, 270, 0, 28, '2019-01-18', 'am1', 'bloque', '2019-01-13', ''), +(18298, 270, 0, 28, '2019-01-18', 'am2', 'bloque', '2019-01-13', ''), +(18299, 270, 0, 28, '2019-01-18', 'pm1', 'bloque', '2019-01-13', ''), +(18300, 270, 0, 28, '2019-01-18', 'pm2', 'bloque', '2019-01-13', ''), +(18301, 270, 0, 28, '2019-01-21', 'am1', 'bloque', '2019-01-13', ''), +(18302, 270, 0, 28, '2019-01-21', 'am2', 'bloque', '2019-01-13', ''), +(18303, 270, 0, 28, '2019-01-21', 'pm1', 'bloque', '2019-01-13', ''), +(18304, 270, 0, 28, '2019-01-21', 'pm2', 'bloque', '2019-01-13', ''), +(18305, 270, 0, 28, '2019-01-22', 'am1', 'bloque', '2019-01-13', ''), +(18306, 270, 0, 28, '2019-01-22', 'am2', 'bloque', '2019-01-13', ''), +(18307, 270, 0, 28, '2019-01-22', 'pm1', 'bloque', '2019-01-13', ''), +(18308, 270, 0, 28, '2019-01-22', 'pm2', 'bloque', '2019-01-13', ''), +(18309, 270, 0, 28, '2019-01-23', 'am1', 'bloque', '2019-01-13', ''), +(18310, 270, 0, 28, '2019-01-23', 'am2', 'bloque', '2019-01-13', ''), +(18311, 270, 0, 28, '2019-01-23', 'pm1', 'bloque', '2019-01-13', ''), +(18312, 270, 0, 28, '2019-01-23', 'pm2', 'bloque', '2019-01-13', ''), +(18313, 270, 0, 28, '2019-01-24', 'am1', 'bloque', '2019-01-13', ''), +(18314, 270, 0, 28, '2019-01-24', 'am2', 'bloque', '2019-01-13', ''), +(18315, 270, 0, 28, '2019-01-24', 'pm1', 'bloque', '2019-01-13', ''), +(18316, 270, 0, 28, '2019-01-24', 'pm2', 'bloque', '2019-01-13', ''), +(18317, 270, 0, 28, '2019-01-25', 'am1', 'bloque', '2019-01-13', ''), +(18318, 270, 0, 28, '2019-01-25', 'am2', 'bloque', '2019-01-13', ''), +(18319, 270, 0, 28, '2019-01-25', 'pm1', 'bloque', '2019-01-13', ''), +(18320, 270, 0, 28, '2019-01-25', 'pm2', 'bloque', '2019-01-13', ''), +(18321, 270, 0, 28, '2019-01-28', 'am1', 'bloque', '2019-01-13', ''), +(18322, 270, 0, 28, '2019-01-28', 'am2', 'bloque', '2019-01-13', ''), +(18323, 270, 0, 28, '2019-01-28', 'pm1', 'bloque', '2019-01-13', ''), +(18324, 270, 0, 28, '2019-01-28', 'pm2', 'bloque', '2019-01-13', ''), +(18325, 270, 0, 28, '2019-01-29', 'am1', 'bloque', '2019-01-13', ''), +(18326, 270, 0, 28, '2019-01-29', 'am2', 'bloque', '2019-01-13', ''), +(18327, 270, 0, 28, '2019-01-29', 'pm1', 'bloque', '2019-01-13', ''), +(18328, 270, 0, 28, '2019-01-29', 'pm2', 'bloque', '2019-01-13', ''), +(18329, 270, 0, 28, '2019-01-30', 'am1', 'bloque', '2019-01-13', ''), +(18330, 270, 0, 28, '2019-01-30', 'am2', 'bloque', '2019-01-13', ''), +(18331, 270, 0, 28, '2019-01-30', 'pm1', 'bloque', '2019-01-13', ''), +(18332, 270, 0, 28, '2019-01-30', 'pm2', 'bloque', '2019-01-13', ''), +(18333, 270, 0, 28, '2019-01-31', 'am1', 'bloque', '2019-01-13', ''), +(18334, 270, 0, 28, '2019-01-31', 'am2', 'bloque', '2019-01-13', ''), +(18335, 270, 0, 28, '2019-01-31', 'pm1', 'bloque', '2019-01-13', ''), +(18336, 270, 0, 28, '2019-01-31', 'pm2', 'bloque', '2019-01-13', ''), +(18337, 270, 0, 28, '2019-02-01', 'am1', 'bloque', '2019-01-13', ''), +(18338, 270, 0, 28, '2019-02-01', 'am2', 'bloque', '2019-01-13', ''), +(18339, 270, 0, 28, '2019-02-01', 'pm1', 'bloque', '2019-01-13', ''), +(18340, 270, 0, 28, '2019-02-01', 'pm2', 'bloque', '2019-01-13', ''), +(18341, 270, 0, 28, '2019-02-04', 'am1', 'bloque', '2019-01-13', ''), +(18342, 270, 0, 28, '2019-02-04', 'am2', 'bloque', '2019-01-13', ''), +(18343, 270, 0, 28, '2019-02-04', 'pm1', 'bloque', '2019-01-13', ''), +(18344, 270, 0, 28, '2019-02-04', 'pm2', 'bloque', '2019-01-13', ''), +(18345, 270, 0, 28, '2019-02-05', 'am1', 'bloque', '2019-01-13', ''), +(18346, 270, 0, 28, '2019-02-05', 'am2', 'bloque', '2019-01-13', ''), +(18347, 270, 0, 28, '2019-02-05', 'pm1', 'bloque', '2019-01-13', ''), +(18348, 270, 0, 28, '2019-02-05', 'pm2', 'bloque', '2019-01-13', ''), +(18349, 270, 0, 28, '2019-02-06', 'am1', 'bloque', '2019-01-13', ''), +(18350, 270, 0, 28, '2019-02-06', 'am2', 'bloque', '2019-01-13', ''), +(18351, 270, 0, 28, '2019-02-06', 'pm1', 'bloque', '2019-01-13', ''), +(18352, 270, 0, 28, '2019-02-06', 'pm2', 'bloque', '2019-01-13', ''), +(18353, 270, 0, 28, '2019-02-07', 'am1', 'bloque', '2019-01-13', ''), +(18354, 270, 0, 28, '2019-02-07', 'am2', 'bloque', '2019-01-13', ''), +(18355, 270, 0, 28, '2019-02-07', 'pm1', 'bloque', '2019-01-13', ''), +(18356, 270, 0, 28, '2019-02-07', 'pm2', 'bloque', '2019-01-13', ''), +(18357, 270, 0, 28, '2019-02-08', 'am1', 'bloque', '2019-01-13', ''), +(18358, 270, 0, 28, '2019-02-08', 'am2', 'bloque', '2019-01-13', ''), +(18359, 270, 0, 28, '2019-02-08', 'pm1', 'bloque', '2019-01-13', ''), +(18360, 270, 0, 28, '2019-02-08', 'pm2', 'bloque', '2019-01-13', ''), +(18361, 271, 0, 28, '2019-01-17', 'am1', 'libre', '2019-01-13', ''), +(18362, 271, 0, 28, '2019-01-17', 'am2', 'libre', '2019-01-13', ''), +(18363, 271, 0, 28, '2019-01-17', 'pm1', 'libre', '2019-01-13', ''), +(18364, 271, 0, 28, '2019-01-17', 'pm2', 'libre', '2019-01-13', ''), +(18365, 271, 0, 28, '2019-01-18', 'am1', 'bloque', '2019-01-13', ''), +(18366, 271, 0, 28, '2019-01-18', 'am2', 'bloque', '2019-01-13', ''), +(18367, 271, 0, 28, '2019-01-18', 'pm1', 'bloque', '2019-01-13', ''), +(18368, 271, 0, 28, '2019-01-18', 'pm2', 'bloque', '2019-01-13', ''), +(18369, 271, 0, 28, '2019-01-21', 'am1', 'bloque', '2019-01-13', ''), +(18370, 271, 0, 28, '2019-01-21', 'am2', 'bloque', '2019-01-13', ''), +(18371, 271, 0, 28, '2019-01-21', 'pm1', 'bloque', '2019-01-13', ''), +(18372, 271, 0, 28, '2019-01-21', 'pm2', 'bloque', '2019-01-13', ''), +(18373, 271, 0, 28, '2019-01-22', 'am1', 'bloque', '2019-01-13', ''), +(18374, 271, 0, 28, '2019-01-22', 'am2', 'bloque', '2019-01-13', ''), +(18375, 271, 0, 28, '2019-01-22', 'pm1', 'bloque', '2019-01-13', ''), +(18376, 271, 0, 28, '2019-01-22', 'pm2', 'bloque', '2019-01-13', ''), +(18377, 271, 0, 28, '2019-01-23', 'am1', 'bloque', '2019-01-13', ''), +(18378, 271, 0, 28, '2019-01-23', 'am2', 'bloque', '2019-01-13', ''), +(18379, 271, 0, 28, '2019-01-23', 'pm1', 'bloque', '2019-01-13', ''), +(18380, 271, 0, 28, '2019-01-23', 'pm2', 'bloque', '2019-01-13', ''), +(18381, 271, 0, 28, '2019-01-24', 'am1', 'bloque', '2019-01-13', ''), +(18382, 271, 0, 28, '2019-01-24', 'am2', 'bloque', '2019-01-13', ''), +(18383, 271, 0, 28, '2019-01-24', 'pm1', 'bloque', '2019-01-13', ''), +(18384, 271, 0, 28, '2019-01-24', 'pm2', 'bloque', '2019-01-13', ''), +(18385, 271, 0, 28, '2019-01-25', 'am1', 'bloque', '2019-01-13', ''), +(18386, 271, 0, 28, '2019-01-25', 'am2', 'bloque', '2019-01-13', ''), +(18387, 271, 0, 28, '2019-01-25', 'pm1', 'bloque', '2019-01-13', ''), +(18388, 271, 0, 28, '2019-01-25', 'pm2', 'bloque', '2019-01-13', ''), +(18389, 271, 0, 28, '2019-01-28', 'am1', 'bloque', '2019-01-13', ''), +(18390, 271, 0, 28, '2019-01-28', 'am2', 'bloque', '2019-01-13', ''), +(18391, 271, 0, 28, '2019-01-28', 'pm1', 'bloque', '2019-01-13', ''), +(18392, 271, 0, 28, '2019-01-28', 'pm2', 'bloque', '2019-01-13', ''), +(18393, 271, 0, 28, '2019-01-29', 'am1', 'bloque', '2019-01-13', ''), +(18394, 271, 0, 28, '2019-01-29', 'am2', 'bloque', '2019-01-13', ''), +(18395, 271, 0, 28, '2019-01-29', 'pm1', 'bloque', '2019-01-13', ''), +(18396, 271, 0, 28, '2019-01-29', 'pm2', 'bloque', '2019-01-13', ''), +(18397, 271, 0, 28, '2019-01-30', 'am1', 'bloque', '2019-01-13', ''), +(18398, 271, 0, 28, '2019-01-30', 'am2', 'bloque', '2019-01-13', ''), +(18399, 271, 0, 28, '2019-01-30', 'pm1', 'bloque', '2019-01-13', ''), +(18400, 271, 0, 28, '2019-01-30', 'pm2', 'bloque', '2019-01-13', ''), +(18401, 271, 0, 28, '2019-01-31', 'am1', 'bloque', '2019-01-13', ''), +(18402, 271, 0, 28, '2019-01-31', 'am2', 'bloque', '2019-01-13', ''), +(18403, 271, 0, 28, '2019-01-31', 'pm1', 'bloque', '2019-01-13', ''), +(18404, 271, 0, 28, '2019-01-31', 'pm2', 'bloque', '2019-01-13', ''), +(18405, 271, 0, 28, '2019-02-01', 'am1', 'bloque', '2019-01-13', ''), +(18406, 271, 0, 28, '2019-02-01', 'am2', 'bloque', '2019-01-13', ''), +(18407, 271, 0, 28, '2019-02-01', 'pm1', 'bloque', '2019-01-13', ''), +(18408, 271, 0, 28, '2019-02-01', 'pm2', 'bloque', '2019-01-13', ''), +(18409, 271, 0, 28, '2019-02-04', 'am1', 'bloque', '2019-01-13', ''), +(18410, 271, 0, 28, '2019-02-04', 'am2', 'bloque', '2019-01-13', ''), +(18411, 271, 0, 28, '2019-02-04', 'pm1', 'bloque', '2019-01-13', ''), +(18412, 271, 0, 28, '2019-02-04', 'pm2', 'bloque', '2019-01-13', ''), +(18413, 271, 0, 28, '2019-02-05', 'am1', 'bloque', '2019-01-13', ''), +(18414, 271, 0, 28, '2019-02-05', 'am2', 'bloque', '2019-01-13', ''), +(18415, 271, 0, 28, '2019-02-05', 'pm1', 'bloque', '2019-01-13', ''), +(18416, 271, 0, 28, '2019-02-05', 'pm2', 'bloque', '2019-01-13', ''), +(18417, 271, 0, 28, '2019-02-06', 'am1', 'bloque', '2019-01-13', ''), +(18418, 271, 0, 28, '2019-02-06', 'am2', 'bloque', '2019-01-13', ''), +(18419, 271, 0, 28, '2019-02-06', 'pm1', 'bloque', '2019-01-13', ''), +(18420, 271, 0, 28, '2019-02-06', 'pm2', 'bloque', '2019-01-13', ''), +(18421, 271, 0, 28, '2019-02-07', 'am1', 'bloque', '2019-01-13', ''), +(18422, 271, 0, 28, '2019-02-07', 'am2', 'bloque', '2019-01-13', ''), +(18423, 271, 0, 28, '2019-02-07', 'pm1', 'bloque', '2019-01-13', ''), +(18424, 271, 0, 28, '2019-02-07', 'pm2', 'bloque', '2019-01-13', ''), +(18425, 271, 0, 28, '2019-02-08', 'am1', 'bloque', '2019-01-13', ''), +(18426, 271, 0, 28, '2019-02-08', 'am2', 'bloque', '2019-01-13', ''), +(18427, 271, 0, 28, '2019-02-08', 'pm1', 'bloque', '2019-01-13', ''), +(18428, 271, 0, 28, '2019-02-08', 'pm2', 'bloque', '2019-01-13', ''), +(18429, 272, 0, 1, '2019-01-17', 'am1', 'libre', '2019-01-15', ''), +(18430, 272, 0, 1, '2019-01-17', 'am2', 'libre', '2019-01-15', ''), +(18431, 272, 0, 1, '2019-01-17', 'pm1', 'libre', '2019-01-15', ''), +(18432, 272, 0, 1, '2019-01-17', 'pm2', 'libre', '2019-01-15', ''), +(18433, 272, 0, 1, '2019-01-18', 'am1', 'libre', '2019-01-15', 'ref'), +(18434, 272, 0, 1, '2019-01-18', 'am2', 'libre', '2019-01-15', 'ref'), +(18435, 272, 0, 1, '2019-01-18', 'pm1', 'libre', '2019-01-15', 'ref'), +(18436, 272, 0, 1, '2019-01-18', 'pm2', 'libre', '2019-01-15', 'ref'), +(18437, 272, 0, 1, '2019-01-21', 'am1', 'libre', '2019-01-15', 'ref'), +(18438, 272, 0, 1, '2019-01-21', 'am2', 'libre', '2019-01-15', 'ref'), +(18439, 272, 0, 1, '2019-01-21', 'pm1', 'libre', '2019-01-15', 'ref'), +(18440, 272, 0, 1, '2019-01-21', 'pm2', 'libre', '2019-01-15', 'ref'), +(18441, 272, 0, 1, '2019-01-22', 'am1', 'libre', '2019-01-15', 'ref'), +(18442, 272, 0, 1, '2019-01-22', 'am2', 'libre', '2019-01-15', 'ref'), +(18443, 272, 0, 1, '2019-01-22', 'pm1', 'libre', '2019-01-15', 'ref'), +(18444, 272, 0, 1, '2019-01-22', 'pm2', 'libre', '2019-01-15', 'ref'), +(18445, 272, 0, 1, '2019-01-23', 'am1', 'libre', '2019-01-15', 'ref'), +(18446, 272, 0, 1, '2019-01-23', 'am2', 'libre', '2019-01-15', 'ref'), +(18447, 272, 0, 1, '2019-01-23', 'pm1', 'libre', '2019-01-15', 'ref'), +(18448, 272, 0, 1, '2019-01-23', 'pm2', 'libre', '2019-01-15', 'ref'), +(18449, 272, 0, 1, '2019-01-24', 'am1', 'libre', '2019-01-15', 'ref'), +(18450, 272, 0, 1, '2019-01-24', 'am2', 'libre', '2019-01-15', 'ref'), +(18451, 272, 0, 1, '2019-01-24', 'pm1', 'libre', '2019-01-15', 'ref'), +(18452, 272, 0, 1, '2019-01-24', 'pm2', 'libre', '2019-01-15', 'ref'), +(18453, 272, 0, 1, '2019-01-25', 'am1', 'libre', '2019-01-15', 'ref'), +(18454, 272, 0, 1, '2019-01-25', 'am2', 'libre', '2019-01-15', 'ref'), +(18455, 272, 0, 1, '2019-01-25', 'pm1', 'libre', '2019-01-15', 'ref'), +(18456, 272, 0, 1, '2019-01-25', 'pm2', 'libre', '2019-01-15', 'ref'), +(18457, 272, 0, 1, '2019-01-28', 'am1', 'libre', '2019-01-15', 'ref'), +(18458, 272, 0, 1, '2019-01-28', 'am2', 'libre', '2019-01-15', 'ref'), +(18459, 272, 0, 1, '2019-01-28', 'pm1', 'libre', '2019-01-15', 'ref'), +(18460, 272, 0, 1, '2019-01-28', 'pm2', 'libre', '2019-01-15', 'ref'), +(18461, 272, 0, 1, '2019-01-29', 'am1', 'libre', '2019-01-15', 'ref'), +(18462, 272, 0, 1, '2019-01-29', 'am2', 'libre', '2019-01-15', 'ref'), +(18463, 272, 0, 1, '2019-01-29', 'pm1', 'libre', '2019-01-15', 'ref'), +(18464, 272, 0, 1, '2019-01-29', 'pm2', 'libre', '2019-01-15', 'ref'), +(18465, 272, 0, 1, '2019-01-30', 'am1', 'libre', '2019-01-15', 'ref'), +(18466, 272, 0, 1, '2019-01-30', 'am2', 'libre', '2019-01-15', 'ref'), +(18467, 272, 0, 1, '2019-01-30', 'pm1', 'libre', '2019-01-15', 'ref'), +(18468, 272, 0, 1, '2019-01-30', 'pm2', 'libre', '2019-01-15', 'ref'), +(18469, 272, 0, 1, '2019-01-31', 'am1', 'libre', '2019-01-15', 'ref'), +(18470, 272, 0, 1, '2019-01-31', 'am2', 'libre', '2019-01-15', 'ref'), +(18471, 272, 0, 1, '2019-01-31', 'pm1', 'libre', '2019-01-15', 'ref'), +(18472, 272, 0, 1, '2019-01-31', 'pm2', 'libre', '2019-01-15', 'ref'), +(18473, 272, 0, 1, '2019-02-01', 'am1', 'libre', '2019-01-15', 'ref'), +(18474, 272, 0, 1, '2019-02-01', 'am2', 'libre', '2019-01-15', 'ref'), +(18475, 272, 0, 1, '2019-02-01', 'pm1', 'libre', '2019-01-15', 'ref'), +(18476, 272, 0, 1, '2019-02-01', 'pm2', 'libre', '2019-01-15', 'ref'), +(18477, 272, 0, 1, '2019-02-04', 'am1', 'libre', '2019-01-15', 'ref'), +(18478, 272, 0, 1, '2019-02-04', 'am2', 'libre', '2019-01-15', 'ref'), +(18479, 272, 0, 1, '2019-02-04', 'pm1', 'libre', '2019-01-15', 'ref'), +(18480, 272, 0, 1, '2019-02-04', 'pm2', 'libre', '2019-01-15', 'ref'), +(18481, 272, 0, 1, '2019-02-05', 'am1', 'bloque', '2019-01-23', 'cap'), +(18482, 272, 0, 1, '2019-02-05', 'am2', 'bloque', '2019-01-23', 'cap'), +(18483, 272, 0, 1, '2019-02-05', 'pm1', 'bloque', '2019-01-23', 'cap'), +(18484, 272, 0, 1, '2019-02-05', 'pm2', 'bloque', '2019-01-23', 'cap'), +(18485, 272, 0, 1, '2019-02-06', 'am1', 'libre', '2019-01-15', 'ref'), +(18486, 272, 0, 1, '2019-02-06', 'am2', 'libre', '2019-01-15', 'ref'), +(18487, 272, 0, 1, '2019-02-06', 'pm1', 'libre', '2019-01-15', 'ref'), +(18488, 272, 0, 1, '2019-02-06', 'pm2', 'libre', '2019-01-15', 'ref'), +(18489, 272, 0, 1, '2019-02-07', 'am1', 'libre', '2019-01-15', 'ref'), +(18490, 272, 0, 1, '2019-02-07', 'am2', 'libre', '2019-01-15', 'ref'), +(18491, 272, 0, 1, '2019-02-07', 'pm1', 'libre', '2019-01-15', 'ref'), +(18492, 272, 0, 1, '2019-02-07', 'pm2', 'libre', '2019-01-15', 'ref'), +(18493, 272, 0, 1, '2019-02-08', 'am1', 'libre', '2019-01-15', 'ref'), +(18494, 272, 0, 1, '2019-02-08', 'am2', 'libre', '2019-01-15', 'ref'), +(18495, 272, 0, 1, '2019-02-08', 'pm1', 'libre', '2019-01-15', 'ref'), +(18496, 272, 0, 1, '2019-02-08', 'pm2', 'libre', '2019-01-15', 'ref'), +(18497, 273, 0, 169, '2019-01-17', 'am1', 'libre', '2019-01-17', ''), +(18498, 273, 0, 169, '2019-01-17', 'am2', 'libre', '2019-01-17', ''), +(18499, 273, 0, 169, '2019-01-17', 'pm1', 'libre', '2019-01-17', ''), +(18500, 273, 0, 169, '2019-01-17', 'pm2', 'libre', '2019-01-17', ''), +(18501, 273, 0, 169, '2019-01-18', 'am1', 'bloque', '2019-01-17', ''), +(18502, 273, 0, 169, '2019-01-18', 'am2', 'bloque', '2019-01-17', ''), +(18503, 273, 0, 169, '2019-01-18', 'pm1', 'bloque', '2019-01-17', ''), +(18504, 273, 0, 169, '2019-01-18', 'pm2', 'bloque', '2019-01-17', ''), +(18505, 273, 0, 169, '2019-01-21', 'am1', 'bloque', '2019-01-17', ''), +(18506, 273, 0, 169, '2019-01-21', 'am2', 'bloque', '2019-01-17', ''), +(18507, 273, 0, 169, '2019-01-21', 'pm1', 'bloque', '2019-01-17', ''), +(18508, 273, 0, 169, '2019-01-21', 'pm2', 'bloque', '2019-01-17', ''), +(18509, 273, 0, 169, '2019-01-22', 'am1', 'bloque', '2019-01-17', ''), +(18510, 273, 0, 169, '2019-01-22', 'am2', 'bloque', '2019-01-17', ''), +(18511, 273, 0, 169, '2019-01-22', 'pm1', 'bloque', '2019-01-17', ''), +(18512, 273, 0, 169, '2019-01-22', 'pm2', 'bloque', '2019-01-17', ''), +(18513, 273, 0, 169, '2019-01-23', 'am1', 'bloque', '2019-01-17', ''), +(18514, 273, 0, 169, '2019-01-23', 'am2', 'bloque', '2019-01-17', ''), +(18515, 273, 0, 169, '2019-01-23', 'pm1', 'bloque', '2019-01-17', ''), +(18516, 273, 0, 169, '2019-01-23', 'pm2', 'bloque', '2019-01-17', ''), +(18517, 273, 0, 169, '2019-01-24', 'am1', 'bloque', '2019-01-17', ''), +(18518, 273, 0, 169, '2019-01-24', 'am2', 'bloque', '2019-01-17', ''), +(18519, 273, 0, 169, '2019-01-24', 'pm1', 'bloque', '2019-01-17', ''), +(18520, 273, 0, 169, '2019-01-24', 'pm2', 'bloque', '2019-01-17', ''), +(18521, 273, 0, 169, '2019-01-25', 'am1', 'bloque', '2019-01-17', ''), +(18522, 273, 0, 169, '2019-01-25', 'am2', 'bloque', '2019-01-17', ''), +(18523, 273, 0, 169, '2019-01-25', 'pm1', 'bloque', '2019-01-17', ''), +(18524, 273, 0, 169, '2019-01-25', 'pm2', 'bloque', '2019-01-17', ''), +(18525, 273, 0, 169, '2019-01-28', 'am1', 'bloque', '2019-01-17', ''), +(18526, 273, 0, 169, '2019-01-28', 'am2', 'bloque', '2019-01-17', ''), +(18527, 273, 0, 169, '2019-01-28', 'pm1', 'bloque', '2019-01-17', ''), +(18528, 273, 0, 169, '2019-01-28', 'pm2', 'bloque', '2019-01-17', ''), +(18529, 273, 0, 169, '2019-01-29', 'am1', 'bloque', '2019-01-17', ''), +(18530, 273, 0, 169, '2019-01-29', 'am2', 'bloque', '2019-01-17', ''), +(18531, 273, 0, 169, '2019-01-29', 'pm1', 'bloque', '2019-01-17', ''), +(18532, 273, 0, 169, '2019-01-29', 'pm2', 'bloque', '2019-01-17', ''), +(18533, 273, 0, 169, '2019-01-30', 'am1', 'bloque', '2019-01-17', ''), +(18534, 273, 0, 169, '2019-01-30', 'am2', 'bloque', '2019-01-17', ''), +(18535, 273, 0, 169, '2019-01-30', 'pm1', 'bloque', '2019-01-17', ''), +(18536, 273, 0, 169, '2019-01-30', 'pm2', 'bloque', '2019-01-17', ''), +(18537, 273, 305, 169, '2019-01-31', 'am1', 'reserve', '2019-01-17', 'ref'), +(18538, 273, 0, 169, '2019-01-31', 'am2', 'bloque', '2019-01-17', ''), +(18539, 273, 0, 169, '2019-01-31', 'pm1', 'bloque', '2019-01-17', ''), +(18540, 273, 0, 169, '2019-01-31', 'pm2', 'bloque', '2019-01-17', ''), +(18541, 273, 0, 169, '2019-02-01', 'am1', 'bloque', '2019-01-17', ''), +(18542, 273, 0, 169, '2019-02-01', 'am2', 'bloque', '2019-01-17', ''), +(18543, 273, 0, 169, '2019-02-01', 'pm1', 'bloque', '2019-01-17', ''), +(18544, 273, 0, 169, '2019-02-01', 'pm2', 'bloque', '2019-01-17', ''), +(18545, 273, 0, 169, '2019-02-04', 'am1', 'bloque', '2019-01-17', ''), +(18546, 273, 0, 169, '2019-02-04', 'am2', 'bloque', '2019-01-17', ''), +(18547, 273, 0, 169, '2019-02-04', 'pm1', 'bloque', '2019-01-17', ''), +(18548, 273, 0, 169, '2019-02-04', 'pm2', 'bloque', '2019-01-17', ''), +(18549, 273, 0, 169, '2019-02-05', 'am1', 'bloque', '2019-01-17', ''), +(18550, 273, 0, 169, '2019-02-05', 'am2', 'bloque', '2019-01-17', ''), +(18551, 273, 0, 169, '2019-02-05', 'pm1', 'bloque', '2019-01-17', ''), +(18552, 273, 0, 169, '2019-02-05', 'pm2', 'bloque', '2019-01-17', ''), +(18553, 273, 0, 169, '2019-02-06', 'am1', 'bloque', '2019-01-17', ''), +(18554, 273, 0, 169, '2019-02-06', 'am2', 'bloque', '2019-01-17', ''), +(18555, 273, 0, 169, '2019-02-06', 'pm1', 'bloque', '2019-01-17', ''), +(18556, 273, 0, 169, '2019-02-06', 'pm2', 'bloque', '2019-01-17', ''), +(18557, 273, 0, 169, '2019-02-07', 'am1', 'bloque', '2019-01-17', ''), +(18558, 273, 0, 169, '2019-02-07', 'am2', 'bloque', '2019-01-17', ''), +(18559, 273, 0, 169, '2019-02-07', 'pm1', 'bloque', '2019-01-17', ''), +(18560, 273, 0, 169, '2019-02-07', 'pm2', 'bloque', '2019-01-17', ''), +(18561, 273, 0, 169, '2019-02-08', 'am1', 'bloque', '2019-01-17', ''), +(18562, 273, 0, 169, '2019-02-08', 'am2', 'bloque', '2019-01-17', ''), +(18563, 273, 0, 169, '2019-02-08', 'pm1', 'bloque', '2019-01-17', ''), +(18564, 273, 0, 169, '2019-02-08', 'pm2', 'bloque', '2019-01-17', ''), +(18565, 274, 315, 403, '2019-01-17', 'am1', 'reserve', '2019-01-22', 'cap'), +(18566, 274, 0, 403, '2019-01-17', 'am2', 'libre', '2019-01-18', ''), +(18567, 274, 0, 403, '2019-01-17', 'pm1', 'libre', '2019-01-18', ''), +(18568, 274, 0, 403, '2019-01-17', 'pm2', 'libre', '2019-01-18', ''), +(18569, 274, 0, 403, '2019-01-18', 'am1', 'bloque', '2019-01-18', ''), +(18570, 274, 0, 403, '2019-01-18', 'am2', 'bloque', '2019-01-18', ''), +(18571, 274, 0, 403, '2019-01-18', 'pm1', 'libre', '2019-01-18', 'ref'), +(18572, 274, 0, 403, '2019-01-18', 'pm2', 'libre', '2019-01-18', 'ref'), +(18573, 274, 0, 403, '2019-01-21', 'am1', 'libre', '2019-01-18', 'ref'), +(18574, 274, 0, 403, '2019-01-21', 'am2', 'bloque', '2019-01-18', ''), +(18575, 274, 0, 403, '2019-01-21', 'pm1', 'bloque', '2019-01-18', ''), +(18576, 274, 0, 403, '2019-01-21', 'pm2', 'bloque', '2019-01-18', ''), +(18577, 274, 0, 403, '2019-01-22', 'am1', 'bloque', '2019-01-18', ''), +(18578, 274, 0, 403, '2019-01-22', 'am2', 'bloque', '2019-01-18', ''), +(18579, 274, 0, 403, '2019-01-22', 'pm1', 'bloque', '2019-01-18', ''), +(18580, 274, 0, 403, '2019-01-22', 'pm2', 'bloque', '2019-01-18', ''), +(18581, 274, 0, 403, '2019-01-23', 'am1', 'bloque', '2019-01-18', ''), +(18582, 274, 0, 403, '2019-01-23', 'am2', 'bloque', '2019-01-18', ''), +(18583, 274, 0, 403, '2019-01-23', 'pm1', 'bloque', '2019-01-18', ''), +(18584, 274, 0, 403, '2019-01-23', 'pm2', 'bloque', '2019-01-18', ''), +(18585, 274, 0, 403, '2019-01-24', 'am1', 'bloque', '2019-01-18', ''), +(18586, 274, 0, 403, '2019-01-24', 'am2', 'bloque', '2019-01-18', ''), +(18587, 274, 0, 403, '2019-01-24', 'pm1', 'bloque', '2019-01-18', ''), +(18588, 274, 0, 403, '2019-01-24', 'pm2', 'bloque', '2019-01-18', ''), +(18589, 274, 0, 403, '2019-01-25', 'am1', 'bloque', '2019-01-18', ''), +(18590, 274, 0, 403, '2019-01-25', 'am2', 'bloque', '2019-01-18', ''), +(18591, 274, 0, 403, '2019-01-25', 'pm1', 'bloque', '2019-01-18', ''), +(18592, 274, 0, 403, '2019-01-25', 'pm2', 'bloque', '2019-01-18', ''), +(18593, 274, 0, 403, '2019-01-28', 'am1', 'bloque', '2019-01-18', ''), +(18594, 274, 0, 403, '2019-01-28', 'am2', 'bloque', '2019-01-18', ''), +(18595, 274, 0, 403, '2019-01-28', 'pm1', 'bloque', '2019-01-18', ''), +(18596, 274, 0, 403, '2019-01-28', 'pm2', 'bloque', '2019-01-18', ''), +(18597, 274, 0, 403, '2019-01-29', 'am1', 'bloque', '2019-01-18', ''), +(18598, 274, 0, 403, '2019-01-29', 'am2', 'bloque', '2019-01-18', ''), +(18599, 274, 0, 403, '2019-01-29', 'pm1', 'bloque', '2019-01-18', ''), +(18600, 274, 0, 403, '2019-01-29', 'pm2', 'bloque', '2019-01-18', ''), +(18601, 274, 0, 403, '2019-01-30', 'am1', 'bloque', '2019-01-18', ''), +(18602, 274, 0, 403, '2019-01-30', 'am2', 'bloque', '2019-01-18', ''), +(18603, 274, 0, 403, '2019-01-30', 'pm1', 'bloque', '2019-01-18', ''), +(18604, 274, 0, 403, '2019-01-30', 'pm2', 'bloque', '2019-01-18', ''), +(18605, 274, 0, 403, '2019-01-31', 'am1', 'bloque', '2019-01-18', ''), +(18606, 274, 0, 403, '2019-01-31', 'am2', 'bloque', '2019-01-18', ''), +(18607, 274, 0, 403, '2019-01-31', 'pm1', 'bloque', '2019-01-18', ''), +(18608, 274, 0, 403, '2019-01-31', 'pm2', 'bloque', '2019-01-18', ''), +(18609, 274, 0, 403, '2019-02-01', 'am1', 'bloque', '2019-01-18', ''), +(18610, 274, 0, 403, '2019-02-01', 'am2', 'bloque', '2019-01-18', ''), +(18611, 274, 0, 403, '2019-02-01', 'pm1', 'bloque', '2019-01-18', ''), +(18612, 274, 0, 403, '2019-02-01', 'pm2', 'bloque', '2019-01-18', ''), +(18613, 274, 0, 403, '2019-02-04', 'am1', 'bloque', '2019-01-18', ''), +(18614, 274, 0, 403, '2019-02-04', 'am2', 'bloque', '2019-01-18', ''), +(18615, 274, 0, 403, '2019-02-04', 'pm1', 'bloque', '2019-01-18', ''), +(18616, 274, 0, 403, '2019-02-04', 'pm2', 'bloque', '2019-01-18', ''), +(18617, 274, 0, 403, '2019-02-05', 'am1', 'bloque', '2019-01-18', ''), +(18618, 274, 0, 403, '2019-02-05', 'am2', 'bloque', '2019-01-18', ''), +(18619, 274, 0, 403, '2019-02-05', 'pm1', 'bloque', '2019-01-18', ''), +(18620, 274, 0, 403, '2019-02-05', 'pm2', 'bloque', '2019-01-18', ''), +(18621, 274, 0, 403, '2019-02-06', 'am1', 'bloque', '2019-01-18', ''), +(18622, 274, 0, 403, '2019-02-06', 'am2', 'bloque', '2019-01-18', ''), +(18623, 274, 0, 403, '2019-02-06', 'pm1', 'bloque', '2019-01-18', ''), +(18624, 274, 0, 403, '2019-02-06', 'pm2', 'bloque', '2019-01-18', ''), +(18625, 274, 0, 403, '2019-02-07', 'am1', 'bloque', '2019-01-18', ''), +(18626, 274, 0, 403, '2019-02-07', 'am2', 'bloque', '2019-01-18', ''), +(18627, 274, 0, 403, '2019-02-07', 'pm1', 'bloque', '2019-01-18', ''), +(18628, 274, 0, 403, '2019-02-07', 'pm2', 'bloque', '2019-01-18', ''), +(18629, 274, 0, 403, '2019-02-08', 'am1', 'bloque', '2019-01-18', ''), +(18630, 274, 0, 403, '2019-02-08', 'am2', 'bloque', '2019-01-18', ''), +(18631, 274, 0, 403, '2019-02-08', 'pm1', 'bloque', '2019-01-18', ''), +(18632, 274, 0, 403, '2019-02-08', 'pm2', 'bloque', '2019-01-18', ''), +(18633, 275, 0, 169, '2019-01-17', 'am1', 'libre', '2019-01-29', ''), +(18634, 275, 0, 169, '2019-01-17', 'am2', 'libre', '2019-01-29', ''), +(18635, 275, 0, 169, '2019-01-17', 'pm1', 'libre', '2019-01-29', ''), +(18636, 275, 0, 169, '2019-01-17', 'pm2', 'libre', '2019-01-29', ''), +(18637, 275, 0, 169, '2019-01-18', 'am1', 'bloque', '2019-01-29', ''), +(18638, 275, 0, 169, '2019-01-18', 'am2', 'bloque', '2019-01-29', ''), +(18639, 275, 0, 169, '2019-01-18', 'pm1', 'bloque', '2019-01-29', ''), +(18640, 275, 0, 169, '2019-01-18', 'pm2', 'bloque', '2019-01-29', ''), +(18641, 275, 0, 169, '2019-01-21', 'am1', 'bloque', '2019-01-29', ''), +(18642, 275, 0, 169, '2019-01-21', 'am2', 'bloque', '2019-01-29', ''), +(18643, 275, 0, 169, '2019-01-21', 'pm1', 'bloque', '2019-01-29', ''), +(18644, 275, 0, 169, '2019-01-21', 'pm2', 'bloque', '2019-01-29', ''), +(18645, 275, 0, 169, '2019-01-22', 'am1', 'bloque', '2019-01-29', ''), +(18646, 275, 0, 169, '2019-01-22', 'am2', 'bloque', '2019-01-29', ''), +(18647, 275, 0, 169, '2019-01-22', 'pm1', 'bloque', '2019-01-29', ''), +(18648, 275, 0, 169, '2019-01-22', 'pm2', 'bloque', '2019-01-29', ''), +(18649, 275, 0, 169, '2019-01-23', 'am1', 'bloque', '2019-01-29', ''), +(18650, 275, 0, 169, '2019-01-23', 'am2', 'bloque', '2019-01-29', ''), +(18651, 275, 0, 169, '2019-01-23', 'pm1', 'bloque', '2019-01-29', ''), +(18652, 275, 0, 169, '2019-01-23', 'pm2', 'bloque', '2019-01-29', ''), +(18653, 275, 0, 169, '2019-01-24', 'am1', 'bloque', '2019-01-29', ''), +(18654, 275, 0, 169, '2019-01-24', 'am2', 'bloque', '2019-01-29', ''), +(18655, 275, 0, 169, '2019-01-24', 'pm1', 'bloque', '2019-01-29', ''), +(18656, 275, 0, 169, '2019-01-24', 'pm2', 'bloque', '2019-01-29', ''), +(18657, 275, 0, 169, '2019-01-25', 'am1', 'bloque', '2019-01-29', ''), +(18658, 275, 0, 169, '2019-01-25', 'am2', 'bloque', '2019-01-29', ''), +(18659, 275, 0, 169, '2019-01-25', 'pm1', 'bloque', '2019-01-29', ''), +(18660, 275, 0, 169, '2019-01-25', 'pm2', 'bloque', '2019-01-29', ''), +(18661, 275, 0, 169, '2019-01-28', 'am1', 'bloque', '2019-01-29', ''), +(18662, 275, 0, 169, '2019-01-28', 'am2', 'bloque', '2019-01-29', ''), +(18663, 275, 0, 169, '2019-01-28', 'pm1', 'bloque', '2019-01-29', ''), +(18664, 275, 0, 169, '2019-01-28', 'pm2', 'bloque', '2019-01-29', ''), +(18665, 275, 0, 169, '2019-01-29', 'am1', 'bloque', '2019-01-29', ''), +(18666, 275, 0, 169, '2019-01-29', 'am2', 'bloque', '2019-01-29', ''), +(18667, 275, 0, 169, '2019-01-29', 'pm1', 'bloque', '2019-01-29', ''), +(18668, 275, 0, 169, '2019-01-29', 'pm2', 'bloque', '2019-01-29', ''), +(18669, 275, 0, 169, '2019-01-30', 'am1', 'bloque', '2019-01-29', ''), +(18670, 275, 0, 169, '2019-01-30', 'am2', 'bloque', '2019-01-29', ''), +(18671, 275, 0, 169, '2019-01-30', 'pm1', 'bloque', '2019-01-29', ''), +(18672, 275, 0, 169, '2019-01-30', 'pm2', 'bloque', '2019-01-29', ''), +(18673, 275, 0, 169, '2019-01-31', 'am1', 'bloque', '2019-01-29', ''), +(18674, 275, 0, 169, '2019-01-31', 'am2', 'bloque', '2019-01-29', ''), +(18675, 275, 0, 169, '2019-01-31', 'pm1', 'bloque', '2019-01-29', ''), +(18676, 275, 0, 169, '2019-01-31', 'pm2', 'bloque', '2019-01-29', ''), +(18677, 275, 323, 169, '2019-02-01', 'am1', 'reserve', '2019-01-29', 'ref'), +(18678, 275, 0, 169, '2019-02-01', 'am2', 'bloque', '2019-01-29', ''), +(18679, 275, 0, 169, '2019-02-01', 'pm1', 'bloque', '2019-01-29', ''), +(18680, 275, 0, 169, '2019-02-01', 'pm2', 'bloque', '2019-01-29', ''), +(18681, 275, 0, 169, '2019-02-04', 'am1', 'bloque', '2019-01-29', ''), +(18682, 275, 0, 169, '2019-02-04', 'am2', 'bloque', '2019-01-29', ''), +(18683, 275, 0, 169, '2019-02-04', 'pm1', 'bloque', '2019-01-29', ''), +(18684, 275, 0, 169, '2019-02-04', 'pm2', 'bloque', '2019-01-29', ''), +(18685, 275, 0, 169, '2019-02-05', 'am1', 'bloque', '2019-01-29', ''), +(18686, 275, 0, 169, '2019-02-05', 'am2', 'bloque', '2019-01-29', ''), +(18687, 275, 0, 169, '2019-02-05', 'pm1', 'bloque', '2019-01-29', ''), +(18688, 275, 0, 169, '2019-02-05', 'pm2', 'bloque', '2019-01-29', ''), +(18689, 275, 0, 169, '2019-02-06', 'am1', 'bloque', '2019-01-29', ''), +(18690, 275, 0, 169, '2019-02-06', 'am2', 'bloque', '2019-01-29', ''), +(18691, 275, 0, 169, '2019-02-06', 'pm1', 'bloque', '2019-01-29', ''), +(18692, 275, 0, 169, '2019-02-06', 'pm2', 'bloque', '2019-01-29', ''), +(18693, 275, 0, 169, '2019-02-07', 'am1', 'bloque', '2019-01-29', ''), +(18694, 275, 0, 169, '2019-02-07', 'am2', 'bloque', '2019-01-29', ''), +(18695, 275, 0, 169, '2019-02-07', 'pm1', 'bloque', '2019-01-29', ''), +(18696, 275, 0, 169, '2019-02-07', 'pm2', 'bloque', '2019-01-29', ''), +(18697, 275, 0, 169, '2019-02-08', 'am1', 'bloque', '2019-01-29', ''), +(18698, 275, 0, 169, '2019-02-08', 'am2', 'bloque', '2019-01-29', ''), +(18699, 275, 0, 169, '2019-02-08', 'pm1', 'bloque', '2019-01-29', ''), +(18700, 275, 0, 169, '2019-02-08', 'pm2', 'bloque', '2019-01-29', ''), +(18701, 276, 0, 2, '2019-01-17', 'am1', 'libre', '2019-02-05', ''), +(18702, 276, 0, 2, '2019-01-17', 'am2', 'libre', '2019-02-05', ''), +(18703, 276, 0, 2, '2019-01-17', 'pm1', 'libre', '2019-02-05', ''), +(18704, 276, 0, 2, '2019-01-17', 'pm2', 'libre', '2019-02-05', ''), +(18705, 276, 0, 2, '2019-01-18', 'am1', 'bloque', '2019-02-05', ''), +(18706, 276, 0, 2, '2019-01-18', 'am2', 'bloque', '2019-02-05', ''), +(18707, 276, 0, 2, '2019-01-18', 'pm1', 'bloque', '2019-02-05', ''), +(18708, 276, 0, 2, '2019-01-18', 'pm2', 'bloque', '2019-02-05', ''), +(18709, 276, 329, 2, '2019-01-21', 'am1', 'reserve', '2019-02-05', 'ref'), +(18710, 276, 0, 2, '2019-01-21', 'am2', 'bloque', '2019-02-05', ''), +(18711, 276, 0, 2, '2019-01-21', 'pm1', 'bloque', '2019-02-05', ''), +(18712, 276, 0, 2, '2019-01-21', 'pm2', 'bloque', '2019-02-05', ''), +(18713, 276, 0, 2, '2019-01-22', 'am1', 'bloque', '2019-02-05', ''), +(18714, 276, 0, 2, '2019-01-22', 'am2', 'bloque', '2019-02-05', ''), +(18715, 276, 0, 2, '2019-01-22', 'pm1', 'bloque', '2019-02-05', ''), +(18716, 276, 0, 2, '2019-01-22', 'pm2', 'bloque', '2019-02-05', ''), +(18717, 276, 0, 2, '2019-01-23', 'am1', 'bloque', '2019-02-05', ''), +(18718, 276, 0, 2, '2019-01-23', 'am2', 'bloque', '2019-02-05', ''), +(18719, 276, 0, 2, '2019-01-23', 'pm1', 'bloque', '2019-02-05', ''), +(18720, 276, 0, 2, '2019-01-23', 'pm2', 'bloque', '2019-02-05', ''), +(18721, 276, 0, 2, '2019-01-24', 'am1', 'bloque', '2019-02-05', ''), +(18722, 276, 0, 2, '2019-01-24', 'am2', 'bloque', '2019-02-05', ''), +(18723, 276, 0, 2, '2019-01-24', 'pm1', 'bloque', '2019-02-05', ''), +(18724, 276, 0, 2, '2019-01-24', 'pm2', 'bloque', '2019-02-05', ''), +(18725, 276, 0, 2, '2019-01-25', 'am1', 'bloque', '2019-02-05', ''), +(18726, 276, 0, 2, '2019-01-25', 'am2', 'bloque', '2019-02-05', ''), +(18727, 276, 0, 2, '2019-01-25', 'pm1', 'bloque', '2019-02-05', ''), +(18728, 276, 0, 2, '2019-01-25', 'pm2', 'bloque', '2019-02-05', ''), +(18729, 276, 0, 2, '2019-01-28', 'am1', 'bloque', '2019-02-05', ''), +(18730, 276, 0, 2, '2019-01-28', 'am2', 'bloque', '2019-02-05', ''), +(18731, 276, 0, 2, '2019-01-28', 'pm1', 'bloque', '2019-02-05', ''), +(18732, 276, 0, 2, '2019-01-28', 'pm2', 'bloque', '2019-02-05', ''), +(18733, 276, 0, 2, '2019-01-29', 'am1', 'bloque', '2019-02-05', ''), +(18734, 276, 0, 2, '2019-01-29', 'am2', 'bloque', '2019-02-05', ''), +(18735, 276, 0, 2, '2019-01-29', 'pm1', 'bloque', '2019-02-05', ''), +(18736, 276, 0, 2, '2019-01-29', 'pm2', 'bloque', '2019-02-05', ''), +(18737, 276, 0, 2, '2019-01-30', 'am1', 'bloque', '2019-02-05', ''), +(18738, 276, 0, 2, '2019-01-30', 'am2', 'bloque', '2019-02-05', ''), +(18739, 276, 0, 2, '2019-01-30', 'pm1', 'bloque', '2019-02-05', ''), +(18740, 276, 0, 2, '2019-01-30', 'pm2', 'bloque', '2019-02-05', ''), +(18741, 276, 0, 2, '2019-01-31', 'am1', 'bloque', '2019-02-05', ''), +(18742, 276, 0, 2, '2019-01-31', 'am2', 'bloque', '2019-02-05', ''), +(18743, 276, 0, 2, '2019-01-31', 'pm1', 'bloque', '2019-02-05', ''), +(18744, 276, 0, 2, '2019-01-31', 'pm2', 'bloque', '2019-02-05', ''), +(18745, 276, 333, 2, '2019-02-01', 'am1', 'reserve', '2019-02-05', 'ref'), +(18746, 276, 0, 2, '2019-02-01', 'am2', 'bloque', '2019-02-05', ''), +(18747, 276, 0, 2, '2019-02-01', 'pm1', 'bloque', '2019-02-05', ''), +(18748, 276, 0, 2, '2019-02-01', 'pm2', 'bloque', '2019-02-05', ''), +(18749, 276, 0, 2, '2019-02-04', 'am1', 'bloque', '2019-02-05', ''), +(18750, 276, 0, 2, '2019-02-04', 'am2', 'bloque', '2019-02-05', ''), +(18751, 276, 0, 2, '2019-02-04', 'pm1', 'bloque', '2019-02-05', ''), +(18752, 276, 0, 2, '2019-02-04', 'pm2', 'bloque', '2019-02-05', ''), +(18753, 276, 0, 2, '2019-02-05', 'am1', 'bloque', '2019-02-05', ''), +(18754, 276, 0, 2, '2019-02-05', 'am2', 'bloque', '2019-02-05', ''), +(18755, 276, 0, 2, '2019-02-05', 'pm1', 'bloque', '2019-02-05', ''), +(18756, 276, 0, 2, '2019-02-05', 'pm2', 'bloque', '2019-02-05', ''), +(18757, 276, 0, 2, '2019-02-06', 'am1', 'bloque', '2019-02-05', ''), +(18758, 276, 0, 2, '2019-02-06', 'am2', 'bloque', '2019-02-05', ''), +(18759, 276, 0, 2, '2019-02-06', 'pm1', 'bloque', '2019-02-05', ''), +(18760, 276, 0, 2, '2019-02-06', 'pm2', 'bloque', '2019-02-05', ''), +(18761, 276, 0, 2, '2019-02-07', 'am1', 'bloque', '2019-02-05', ''), +(18762, 276, 0, 2, '2019-02-07', 'am2', 'bloque', '2019-02-05', ''), +(18763, 276, 0, 2, '2019-02-07', 'pm1', 'bloque', '2019-02-05', ''), +(18764, 276, 0, 2, '2019-02-07', 'pm2', 'bloque', '2019-02-05', ''), +(18765, 276, 0, 2, '2019-02-08', 'am1', 'bloque', '2019-02-05', ''), +(18766, 276, 0, 2, '2019-02-08', 'am2', 'bloque', '2019-02-05', ''), +(18767, 276, 0, 2, '2019-02-08', 'pm1', 'bloque', '2019-02-05', ''), +(18768, 276, 0, 2, '2019-02-08', 'pm2', 'bloque', '2019-02-05', ''), +(18769, 277, 0, 2, '2019-01-17', 'am1', 'libre', '2019-02-05', ''), +(18770, 277, 0, 2, '2019-01-17', 'am2', 'libre', '2019-02-05', ''), +(18771, 277, 0, 2, '2019-01-17', 'pm1', 'libre', '2019-02-05', ''), +(18772, 277, 0, 2, '2019-01-17', 'pm2', 'libre', '2019-02-05', ''), +(18773, 277, 0, 2, '2019-01-18', 'am1', 'bloque', '2019-02-05', ''), +(18774, 277, 0, 2, '2019-01-18', 'am2', 'bloque', '2019-02-05', ''), +(18775, 277, 0, 2, '2019-01-18', 'pm1', 'bloque', '2019-02-05', ''), +(18776, 277, 0, 2, '2019-01-18', 'pm2', 'bloque', '2019-02-05', ''), +(18777, 277, 0, 2, '2019-01-21', 'am1', 'bloque', '2019-02-05', ''), +(18778, 277, 0, 2, '2019-01-21', 'am2', 'bloque', '2019-02-05', ''), +(18779, 277, 0, 2, '2019-01-21', 'pm1', 'bloque', '2019-02-05', ''), +(18780, 277, 0, 2, '2019-01-21', 'pm2', 'bloque', '2019-02-05', ''), +(18781, 277, 0, 2, '2019-01-22', 'am1', 'bloque', '2019-02-05', ''), +(18782, 277, 0, 2, '2019-01-22', 'am2', 'bloque', '2019-02-05', ''), +(18783, 277, 0, 2, '2019-01-22', 'pm1', 'bloque', '2019-02-05', ''), +(18784, 277, 0, 2, '2019-01-22', 'pm2', 'bloque', '2019-02-05', ''), +(18785, 277, 0, 2, '2019-01-23', 'am1', 'bloque', '2019-02-05', ''), +(18786, 277, 0, 2, '2019-01-23', 'am2', 'bloque', '2019-02-05', ''), +(18787, 277, 0, 2, '2019-01-23', 'pm1', 'bloque', '2019-02-05', ''), +(18788, 277, 0, 2, '2019-01-23', 'pm2', 'bloque', '2019-02-05', ''), +(18789, 277, 0, 2, '2019-01-24', 'am1', 'bloque', '2019-02-05', ''), +(18790, 277, 0, 2, '2019-01-24', 'am2', 'bloque', '2019-02-05', ''), +(18791, 277, 0, 2, '2019-01-24', 'pm1', 'bloque', '2019-02-05', ''), +(18792, 277, 0, 2, '2019-01-24', 'pm2', 'bloque', '2019-02-05', ''), +(18793, 277, 331, 2, '2019-01-25', 'am1', 'reserve', '2019-02-05', 'ref'), +(18794, 277, 0, 2, '2019-01-25', 'am2', 'bloque', '2019-02-05', ''), +(18795, 277, 0, 2, '2019-01-25', 'pm1', 'bloque', '2019-02-05', ''), +(18796, 277, 0, 2, '2019-01-25', 'pm2', 'bloque', '2019-02-05', ''), +(18797, 277, 0, 2, '2019-01-28', 'am1', 'bloque', '2019-02-05', ''), +(18798, 277, 0, 2, '2019-01-28', 'am2', 'bloque', '2019-02-05', ''), +(18799, 277, 0, 2, '2019-01-28', 'pm1', 'bloque', '2019-02-05', ''), +(18800, 277, 0, 2, '2019-01-28', 'pm2', 'bloque', '2019-02-05', ''), +(18801, 277, 0, 2, '2019-01-29', 'am1', 'bloque', '2019-02-05', ''), +(18802, 277, 0, 2, '2019-01-29', 'am2', 'bloque', '2019-02-05', ''), +(18803, 277, 0, 2, '2019-01-29', 'pm1', 'bloque', '2019-02-05', ''), +(18804, 277, 0, 2, '2019-01-29', 'pm2', 'bloque', '2019-02-05', ''), +(18805, 277, 0, 2, '2019-01-30', 'am1', 'bloque', '2019-02-05', ''), +(18806, 277, 0, 2, '2019-01-30', 'am2', 'bloque', '2019-02-05', ''), +(18807, 277, 0, 2, '2019-01-30', 'pm1', 'bloque', '2019-02-05', ''), +(18808, 277, 0, 2, '2019-01-30', 'pm2', 'bloque', '2019-02-05', ''), +(18809, 277, 0, 2, '2019-01-31', 'am1', 'bloque', '2019-02-05', ''), +(18810, 277, 0, 2, '2019-01-31', 'am2', 'bloque', '2019-02-05', ''), +(18811, 277, 0, 2, '2019-01-31', 'pm1', 'bloque', '2019-02-05', ''), +(18812, 277, 0, 2, '2019-01-31', 'pm2', 'bloque', '2019-02-05', ''), +(18813, 277, 0, 2, '2019-02-01', 'am1', 'bloque', '2019-02-05', ''), +(18814, 277, 0, 2, '2019-02-01', 'am2', 'bloque', '2019-02-05', ''), +(18815, 277, 0, 2, '2019-02-01', 'pm1', 'bloque', '2019-02-05', ''), +(18816, 277, 0, 2, '2019-02-01', 'pm2', 'bloque', '2019-02-05', ''), +(18817, 277, 0, 2, '2019-02-04', 'am1', 'bloque', '2019-02-05', ''), +(18818, 277, 0, 2, '2019-02-04', 'am2', 'bloque', '2019-02-05', ''), +(18819, 277, 0, 2, '2019-02-04', 'pm1', 'bloque', '2019-02-05', ''), +(18820, 277, 0, 2, '2019-02-04', 'pm2', 'bloque', '2019-02-05', ''), +(18821, 277, 0, 2, '2019-02-05', 'am1', 'bloque', '2019-02-05', ''), +(18822, 277, 0, 2, '2019-02-05', 'am2', 'bloque', '2019-02-05', ''), +(18823, 277, 0, 2, '2019-02-05', 'pm1', 'bloque', '2019-02-05', ''), +(18824, 277, 0, 2, '2019-02-05', 'pm2', 'bloque', '2019-02-05', ''), +(18825, 277, 0, 2, '2019-02-06', 'am1', 'bloque', '2019-02-05', ''), +(18826, 277, 0, 2, '2019-02-06', 'am2', 'bloque', '2019-02-05', ''), +(18827, 277, 0, 2, '2019-02-06', 'pm1', 'bloque', '2019-02-05', ''), +(18828, 277, 0, 2, '2019-02-06', 'pm2', 'bloque', '2019-02-05', ''), +(18829, 277, 0, 2, '2019-02-07', 'am1', 'bloque', '2019-02-05', ''), +(18830, 277, 0, 2, '2019-02-07', 'am2', 'bloque', '2019-02-05', ''), +(18831, 277, 0, 2, '2019-02-07', 'pm1', 'bloque', '2019-02-05', ''), +(18832, 277, 0, 2, '2019-02-07', 'pm2', 'bloque', '2019-02-05', ''), +(18833, 277, 0, 2, '2019-02-08', 'am1', 'bloque', '2019-02-05', ''), +(18834, 277, 0, 2, '2019-02-08', 'am2', 'bloque', '2019-02-05', ''), +(18835, 277, 0, 2, '2019-02-08', 'pm1', 'bloque', '2019-02-05', ''), +(18836, 277, 0, 2, '2019-02-08', 'pm2', 'bloque', '2019-02-05', ''), +(18837, 278, 0, 82, '2019-01-17', 'am1', 'libre', '2019-02-06', ''), +(18838, 278, 0, 82, '2019-01-17', 'am2', 'libre', '2019-02-06', ''), +(18839, 278, 0, 82, '2019-01-17', 'pm1', 'libre', '2019-02-06', ''), +(18840, 278, 0, 82, '2019-01-17', 'pm2', 'libre', '2019-02-06', ''), +(18841, 278, 0, 82, '2019-01-18', 'am1', 'libre', '2019-02-06', 'ref'), +(18842, 278, 0, 82, '2019-01-18', 'am2', 'libre', '2019-02-06', 'ref'), +(18843, 278, 0, 82, '2019-01-18', 'pm1', 'bloque', '2019-02-06', ''), +(18844, 278, 0, 82, '2019-01-18', 'pm2', 'bloque', '2019-02-06', ''), +(18845, 278, 0, 82, '2019-01-21', 'am1', 'bloque', '2019-02-06', ''), +(18846, 278, 0, 82, '2019-01-21', 'am2', 'bloque', '2019-02-06', ''), +(18847, 278, 0, 82, '2019-01-21', 'pm1', 'bloque', '2019-02-06', ''), +(18848, 278, 0, 82, '2019-01-21', 'pm2', 'bloque', '2019-02-06', ''); +INSERT INTO `agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(18849, 278, 0, 82, '2019-01-22', 'am1', 'bloque', '2019-02-06', ''), +(18850, 278, 0, 82, '2019-01-22', 'am2', 'bloque', '2019-02-06', ''), +(18851, 278, 0, 82, '2019-01-22', 'pm1', 'bloque', '2019-02-06', ''), +(18852, 278, 0, 82, '2019-01-22', 'pm2', 'bloque', '2019-02-06', ''), +(18853, 278, 0, 82, '2019-01-23', 'am1', 'bloque', '2019-02-06', ''), +(18854, 278, 0, 82, '2019-01-23', 'am2', 'bloque', '2019-02-06', ''), +(18855, 278, 0, 82, '2019-01-23', 'pm1', 'bloque', '2019-02-06', ''), +(18856, 278, 0, 82, '2019-01-23', 'pm2', 'bloque', '2019-02-06', ''), +(18857, 278, 0, 82, '2019-01-24', 'am1', 'bloque', '2019-02-06', ''), +(18858, 278, 0, 82, '2019-01-24', 'am2', 'bloque', '2019-02-06', ''), +(18859, 278, 0, 82, '2019-01-24', 'pm1', 'bloque', '2019-02-06', ''), +(18860, 278, 0, 82, '2019-01-24', 'pm2', 'bloque', '2019-02-06', ''), +(18861, 278, 0, 82, '2019-01-25', 'am1', 'bloque', '2019-02-06', ''), +(18862, 278, 0, 82, '2019-01-25', 'am2', 'bloque', '2019-02-06', ''), +(18863, 278, 0, 82, '2019-01-25', 'pm1', 'bloque', '2019-02-06', ''), +(18864, 278, 0, 82, '2019-01-25', 'pm2', 'bloque', '2019-02-06', ''), +(18865, 278, 0, 82, '2019-01-28', 'am1', 'bloque', '2019-02-06', ''), +(18866, 278, 0, 82, '2019-01-28', 'am2', 'bloque', '2019-02-06', ''), +(18867, 278, 0, 82, '2019-01-28', 'pm1', 'bloque', '2019-02-06', ''), +(18868, 278, 0, 82, '2019-01-28', 'pm2', 'bloque', '2019-02-06', ''), +(18869, 278, 0, 82, '2019-01-29', 'am1', 'bloque', '2019-02-06', ''), +(18870, 278, 0, 82, '2019-01-29', 'am2', 'bloque', '2019-02-06', ''), +(18871, 278, 0, 82, '2019-01-29', 'pm1', 'bloque', '2019-02-06', ''), +(18872, 278, 0, 82, '2019-01-29', 'pm2', 'bloque', '2019-02-06', ''), +(18873, 278, 0, 82, '2019-01-30', 'am1', 'bloque', '2019-02-06', ''), +(18874, 278, 0, 82, '2019-01-30', 'am2', 'bloque', '2019-02-06', ''), +(18875, 278, 0, 82, '2019-01-30', 'pm1', 'bloque', '2019-02-06', ''), +(18876, 278, 0, 82, '2019-01-30', 'pm2', 'bloque', '2019-02-06', ''), +(18877, 278, 0, 82, '2019-01-31', 'am1', 'bloque', '2019-02-06', ''), +(18878, 278, 0, 82, '2019-01-31', 'am2', 'bloque', '2019-02-06', ''), +(18879, 278, 0, 82, '2019-01-31', 'pm1', 'bloque', '2019-02-06', ''), +(18880, 278, 0, 82, '2019-01-31', 'pm2', 'bloque', '2019-02-06', ''), +(18881, 278, 0, 82, '2019-02-01', 'am1', 'bloque', '2019-02-06', ''), +(18882, 278, 0, 82, '2019-02-01', 'am2', 'bloque', '2019-02-06', ''), +(18883, 278, 0, 82, '2019-02-01', 'pm1', 'bloque', '2019-02-06', ''), +(18884, 278, 0, 82, '2019-02-01', 'pm2', 'bloque', '2019-02-06', ''), +(18885, 278, 0, 82, '2019-02-04', 'am1', 'bloque', '2019-02-06', ''), +(18886, 278, 0, 82, '2019-02-04', 'am2', 'bloque', '2019-02-06', ''), +(18887, 278, 0, 82, '2019-02-04', 'pm1', 'bloque', '2019-02-06', ''), +(18888, 278, 0, 82, '2019-02-04', 'pm2', 'bloque', '2019-02-06', ''), +(18889, 278, 0, 82, '2019-02-05', 'am1', 'bloque', '2019-02-06', ''), +(18890, 278, 0, 82, '2019-02-05', 'am2', 'bloque', '2019-02-06', ''), +(18891, 278, 0, 82, '2019-02-05', 'pm1', 'bloque', '2019-02-06', ''), +(18892, 278, 0, 82, '2019-02-05', 'pm2', 'bloque', '2019-02-06', ''), +(18893, 278, 0, 82, '2019-02-06', 'am1', 'bloque', '2019-02-06', ''), +(18894, 278, 0, 82, '2019-02-06', 'am2', 'bloque', '2019-02-06', ''), +(18895, 278, 0, 82, '2019-02-06', 'pm1', 'bloque', '2019-02-06', ''), +(18896, 278, 0, 82, '2019-02-06', 'pm2', 'bloque', '2019-02-06', ''), +(18897, 278, 0, 82, '2019-02-07', 'am1', 'bloque', '2019-02-06', ''), +(18898, 278, 0, 82, '2019-02-07', 'am2', 'bloque', '2019-02-06', ''), +(18899, 278, 0, 82, '2019-02-07', 'pm1', 'bloque', '2019-02-06', ''), +(18900, 278, 0, 82, '2019-02-07', 'pm2', 'bloque', '2019-02-06', ''), +(18901, 278, 0, 82, '2019-02-08', 'am1', 'bloque', '2019-02-06', ''), +(18902, 278, 0, 82, '2019-02-08', 'am2', 'bloque', '2019-02-06', ''), +(18903, 278, 0, 82, '2019-02-08', 'pm1', 'bloque', '2019-02-06', ''), +(18904, 278, 0, 82, '2019-02-08', 'pm2', 'bloque', '2019-02-06', ''), +(18905, 279, 0, 66, '2019-01-17', 'am1', 'libre', '2019-02-06', ''), +(18906, 279, 0, 66, '2019-01-17', 'am2', 'libre', '2019-02-06', ''), +(18907, 279, 0, 66, '2019-01-17', 'pm1', 'libre', '2019-02-06', ''), +(18908, 279, 0, 66, '2019-01-17', 'pm2', 'libre', '2019-02-06', ''), +(18909, 279, 0, 66, '2019-01-18', 'am1', 'bloque', '2019-02-06', ''), +(18910, 279, 0, 66, '2019-01-18', 'am2', 'bloque', '2019-02-06', ''), +(18911, 279, 0, 66, '2019-01-18', 'pm1', 'bloque', '2019-02-06', ''), +(18912, 279, 0, 66, '2019-01-18', 'pm2', 'bloque', '2019-02-06', ''), +(18913, 279, 0, 66, '2019-01-21', 'am1', 'bloque', '2019-02-06', ''), +(18914, 279, 0, 66, '2019-01-21', 'am2', 'bloque', '2019-02-06', ''), +(18915, 279, 0, 66, '2019-01-21', 'pm1', 'bloque', '2019-02-06', ''), +(18916, 279, 0, 66, '2019-01-21', 'pm2', 'bloque', '2019-02-06', ''), +(18917, 279, 0, 66, '2019-01-22', 'am1', 'bloque', '2019-02-06', ''), +(18918, 279, 0, 66, '2019-01-22', 'am2', 'bloque', '2019-02-06', ''), +(18919, 279, 0, 66, '2019-01-22', 'pm1', 'bloque', '2019-02-06', ''), +(18920, 279, 0, 66, '2019-01-22', 'pm2', 'bloque', '2019-02-06', ''), +(18921, 279, 0, 66, '2019-01-23', 'am1', 'bloque', '2019-02-06', ''), +(18922, 279, 0, 66, '2019-01-23', 'am2', 'bloque', '2019-02-06', ''), +(18923, 279, 0, 66, '2019-01-23', 'pm1', 'bloque', '2019-02-06', ''), +(18924, 279, 0, 66, '2019-01-23', 'pm2', 'bloque', '2019-02-06', ''), +(18925, 279, 0, 66, '2019-01-24', 'am1', 'bloque', '2019-02-06', ''), +(18926, 279, 0, 66, '2019-01-24', 'am2', 'bloque', '2019-02-06', ''), +(18927, 279, 0, 66, '2019-01-24', 'pm1', 'bloque', '2019-02-06', ''), +(18928, 279, 0, 66, '2019-01-24', 'pm2', 'bloque', '2019-02-06', ''), +(18929, 279, 0, 66, '2019-01-25', 'am1', 'bloque', '2019-02-06', ''), +(18930, 279, 0, 66, '2019-01-25', 'am2', 'bloque', '2019-02-06', ''), +(18931, 279, 0, 66, '2019-01-25', 'pm1', 'bloque', '2019-02-06', ''), +(18932, 279, 0, 66, '2019-01-25', 'pm2', 'bloque', '2019-02-06', ''), +(18933, 279, 0, 66, '2019-01-28', 'am1', 'bloque', '2019-02-06', ''), +(18934, 279, 0, 66, '2019-01-28', 'am2', 'bloque', '2019-02-06', ''), +(18935, 279, 0, 66, '2019-01-28', 'pm1', 'bloque', '2019-02-06', ''), +(18936, 279, 0, 66, '2019-01-28', 'pm2', 'bloque', '2019-02-06', ''), +(18937, 279, 0, 66, '2019-01-29', 'am1', 'bloque', '2019-02-06', ''), +(18938, 279, 0, 66, '2019-01-29', 'am2', 'bloque', '2019-02-06', ''), +(18939, 279, 0, 66, '2019-01-29', 'pm1', 'bloque', '2019-02-06', ''), +(18940, 279, 0, 66, '2019-01-29', 'pm2', 'bloque', '2019-02-06', ''), +(18941, 279, 0, 66, '2019-01-30', 'am1', 'bloque', '2019-02-06', ''), +(18942, 279, 0, 66, '2019-01-30', 'am2', 'bloque', '2019-02-06', ''), +(18943, 279, 0, 66, '2019-01-30', 'pm1', 'bloque', '2019-02-06', ''), +(18944, 279, 0, 66, '2019-01-30', 'pm2', 'bloque', '2019-02-06', ''), +(18945, 279, 0, 66, '2019-01-31', 'am1', 'bloque', '2019-02-06', ''), +(18946, 279, 0, 66, '2019-01-31', 'am2', 'bloque', '2019-02-06', ''), +(18947, 279, 0, 66, '2019-01-31', 'pm1', 'bloque', '2019-02-06', ''), +(18948, 279, 0, 66, '2019-01-31', 'pm2', 'bloque', '2019-02-06', ''), +(18949, 279, 0, 66, '2019-02-01', 'am1', 'bloque', '2019-02-06', ''), +(18950, 279, 0, 66, '2019-02-01', 'am2', 'bloque', '2019-02-06', ''), +(18951, 279, 0, 66, '2019-02-01', 'pm1', 'bloque', '2019-02-06', ''), +(18952, 279, 0, 66, '2019-02-01', 'pm2', 'bloque', '2019-02-06', ''), +(18953, 279, 0, 66, '2019-02-04', 'am1', 'bloque', '2019-02-06', ''), +(18954, 279, 0, 66, '2019-02-04', 'am2', 'bloque', '2019-02-06', ''), +(18955, 279, 0, 66, '2019-02-04', 'pm1', 'bloque', '2019-02-06', ''), +(18956, 279, 0, 66, '2019-02-04', 'pm2', 'bloque', '2019-02-06', ''), +(18957, 279, 0, 66, '2019-02-05', 'am1', 'bloque', '2019-02-06', ''), +(18958, 279, 0, 66, '2019-02-05', 'am2', 'bloque', '2019-02-06', ''), +(18959, 279, 0, 66, '2019-02-05', 'pm1', 'bloque', '2019-02-06', ''), +(18960, 279, 0, 66, '2019-02-05', 'pm2', 'bloque', '2019-02-06', ''), +(18961, 279, 0, 66, '2019-02-06', 'am1', 'bloque', '2019-02-06', ''), +(18962, 279, 0, 66, '2019-02-06', 'am2', 'bloque', '2019-02-06', ''), +(18963, 279, 0, 66, '2019-02-06', 'pm1', 'bloque', '2019-02-06', ''), +(18964, 279, 0, 66, '2019-02-06', 'pm2', 'bloque', '2019-02-06', ''), +(18965, 279, 0, 66, '2019-02-07', 'am1', 'bloque', '2019-02-06', ''), +(18966, 279, 0, 66, '2019-02-07', 'am2', 'libre', '2019-02-06', 'ref'), +(18967, 279, 0, 66, '2019-02-07', 'pm1', 'libre', '2019-02-06', 'cap'), +(18968, 279, 0, 66, '2019-02-07', 'pm2', 'libre', '2019-02-06', 'cap'), +(18969, 279, 0, 66, '2019-02-08', 'am1', 'bloque', '2019-02-06', ''), +(18970, 279, 0, 66, '2019-02-08', 'am2', 'libre', '2019-02-06', 'ref'), +(18971, 279, 0, 66, '2019-02-08', 'pm1', 'libre', '2019-02-06', 'cap'), +(18972, 279, 0, 66, '2019-02-08', 'pm2', 'libre', '2019-02-06', 'cap'), +(18973, 280, 0, 418, '2019-01-17', 'am1', 'libre', '2019-02-06', ''), +(18974, 280, 0, 418, '2019-01-17', 'am2', 'libre', '2019-02-06', ''), +(18975, 280, 0, 418, '2019-01-17', 'pm1', 'libre', '2019-02-06', ''), +(18976, 280, 0, 418, '2019-01-17', 'pm2', 'libre', '2019-02-06', ''), +(18977, 280, 0, 418, '2019-01-18', 'am1', 'bloque', '2019-02-06', ''), +(18978, 280, 0, 418, '2019-01-18', 'am2', 'bloque', '2019-02-06', ''), +(18979, 280, 0, 418, '2019-01-18', 'pm1', 'bloque', '2019-02-06', ''), +(18980, 280, 0, 418, '2019-01-18', 'pm2', 'bloque', '2019-02-06', ''), +(18981, 280, 0, 418, '2019-01-21', 'am1', 'bloque', '2019-02-06', ''), +(18982, 280, 0, 418, '2019-01-21', 'am2', 'bloque', '2019-02-06', ''), +(18983, 280, 0, 418, '2019-01-21', 'pm1', 'bloque', '2019-02-06', ''), +(18984, 280, 0, 418, '2019-01-21', 'pm2', 'bloque', '2019-02-06', ''), +(18985, 280, 0, 418, '2019-01-22', 'am1', 'bloque', '2019-02-06', ''), +(18986, 280, 0, 418, '2019-01-22', 'am2', 'bloque', '2019-02-06', ''), +(18987, 280, 0, 418, '2019-01-22', 'pm1', 'bloque', '2019-02-06', ''), +(18988, 280, 0, 418, '2019-01-22', 'pm2', 'bloque', '2019-02-06', ''), +(18989, 280, 0, 418, '2019-01-23', 'am1', 'bloque', '2019-02-06', ''), +(18990, 280, 0, 418, '2019-01-23', 'am2', 'bloque', '2019-02-06', ''), +(18991, 280, 0, 418, '2019-01-23', 'pm1', 'bloque', '2019-02-06', ''), +(18992, 280, 0, 418, '2019-01-23', 'pm2', 'bloque', '2019-02-06', ''), +(18993, 280, 0, 418, '2019-01-24', 'am1', 'bloque', '2019-02-06', ''), +(18994, 280, 0, 418, '2019-01-24', 'am2', 'bloque', '2019-02-06', ''), +(18995, 280, 0, 418, '2019-01-24', 'pm1', 'bloque', '2019-02-06', ''), +(18996, 280, 0, 418, '2019-01-24', 'pm2', 'bloque', '2019-02-06', ''), +(18997, 280, 0, 418, '2019-01-25', 'am1', 'bloque', '2019-02-06', ''), +(18998, 280, 0, 418, '2019-01-25', 'am2', 'bloque', '2019-02-06', ''), +(18999, 280, 0, 418, '2019-01-25', 'pm1', 'bloque', '2019-02-06', ''), +(19000, 280, 0, 418, '2019-01-25', 'pm2', 'bloque', '2019-02-06', ''), +(19001, 280, 0, 418, '2019-01-28', 'am1', 'bloque', '2019-02-06', ''), +(19002, 280, 0, 418, '2019-01-28', 'am2', 'bloque', '2019-02-06', ''), +(19003, 280, 0, 418, '2019-01-28', 'pm1', 'bloque', '2019-02-06', ''), +(19004, 280, 0, 418, '2019-01-28', 'pm2', 'bloque', '2019-02-06', ''), +(19005, 280, 0, 418, '2019-01-29', 'am1', 'bloque', '2019-02-06', ''), +(19006, 280, 0, 418, '2019-01-29', 'am2', 'bloque', '2019-02-06', ''), +(19007, 280, 0, 418, '2019-01-29', 'pm1', 'bloque', '2019-02-06', ''), +(19008, 280, 0, 418, '2019-01-29', 'pm2', 'bloque', '2019-02-06', ''), +(19009, 280, 0, 418, '2019-01-30', 'am1', 'bloque', '2019-02-06', ''), +(19010, 280, 0, 418, '2019-01-30', 'am2', 'bloque', '2019-02-06', ''), +(19011, 280, 0, 418, '2019-01-30', 'pm1', 'bloque', '2019-02-06', ''), +(19012, 280, 0, 418, '2019-01-30', 'pm2', 'bloque', '2019-02-06', ''), +(19013, 280, 0, 418, '2019-01-31', 'am1', 'bloque', '2019-02-06', ''), +(19014, 280, 0, 418, '2019-01-31', 'am2', 'bloque', '2019-02-06', ''), +(19015, 280, 0, 418, '2019-01-31', 'pm1', 'bloque', '2019-02-06', ''), +(19016, 280, 0, 418, '2019-01-31', 'pm2', 'bloque', '2019-02-06', ''), +(19017, 280, 0, 418, '2019-02-01', 'am1', 'bloque', '2019-02-06', ''), +(19018, 280, 0, 418, '2019-02-01', 'am2', 'bloque', '2019-02-06', ''), +(19019, 280, 0, 418, '2019-02-01', 'pm1', 'bloque', '2019-02-06', ''), +(19020, 280, 0, 418, '2019-02-01', 'pm2', 'bloque', '2019-02-06', ''), +(19021, 280, 0, 418, '2019-02-04', 'am1', 'bloque', '2019-02-06', ''), +(19022, 280, 0, 418, '2019-02-04', 'am2', 'bloque', '2019-02-06', ''), +(19023, 280, 0, 418, '2019-02-04', 'pm1', 'bloque', '2019-02-06', ''), +(19024, 280, 0, 418, '2019-02-04', 'pm2', 'bloque', '2019-02-06', ''), +(19025, 280, 0, 418, '2019-02-05', 'am1', 'bloque', '2019-02-06', ''), +(19026, 280, 0, 418, '2019-02-05', 'am2', 'bloque', '2019-02-06', ''), +(19027, 280, 0, 418, '2019-02-05', 'pm1', 'bloque', '2019-02-06', ''), +(19028, 280, 0, 418, '2019-02-05', 'pm2', 'bloque', '2019-02-06', ''), +(19029, 280, 0, 418, '2019-02-06', 'am1', 'bloque', '2019-02-06', ''), +(19030, 280, 0, 418, '2019-02-06', 'am2', 'bloque', '2019-02-06', ''), +(19031, 280, 0, 418, '2019-02-06', 'pm1', 'bloque', '2019-02-06', ''), +(19032, 280, 0, 418, '2019-02-06', 'pm2', 'bloque', '2019-02-06', ''), +(19033, 280, 0, 418, '2019-02-07', 'am1', 'bloque', '2019-02-06', ''), +(19034, 280, 0, 418, '2019-02-07', 'am2', 'bloque', '2019-02-06', ''), +(19035, 280, 0, 418, '2019-02-07', 'pm1', 'bloque', '2019-02-06', ''), +(19036, 280, 0, 418, '2019-02-07', 'pm2', 'bloque', '2019-02-06', ''), +(19037, 280, 0, 418, '2019-02-08', 'am1', 'bloque', '2019-02-06', ''), +(19038, 280, 0, 418, '2019-02-08', 'am2', 'bloque', '2019-02-06', ''), +(19039, 280, 0, 418, '2019-02-08', 'pm1', 'bloque', '2019-02-06', ''), +(19040, 280, 0, 418, '2019-02-08', 'pm2', 'bloque', '2019-02-06', ''), +(19041, 281, 0, 160, '2019-01-17', 'am1', 'libre', '2019-02-06', ''), +(19042, 281, 0, 160, '2019-01-17', 'am2', 'libre', '2019-02-06', ''), +(19043, 281, 0, 160, '2019-01-17', 'pm1', 'libre', '2019-02-06', ''), +(19044, 281, 0, 160, '2019-01-17', 'pm2', 'libre', '2019-02-06', ''), +(19045, 281, 0, 160, '2019-01-18', 'am1', 'bloque', '2019-02-06', ''), +(19046, 281, 0, 160, '2019-01-18', 'am2', 'bloque', '2019-02-06', ''), +(19047, 281, 0, 160, '2019-01-18', 'pm1', 'bloque', '2019-02-06', ''), +(19048, 281, 0, 160, '2019-01-18', 'pm2', 'bloque', '2019-02-06', ''), +(19049, 281, 0, 160, '2019-01-21', 'am1', 'bloque', '2019-02-06', ''), +(19050, 281, 0, 160, '2019-01-21', 'am2', 'bloque', '2019-02-06', ''), +(19051, 281, 0, 160, '2019-01-21', 'pm1', 'bloque', '2019-02-06', ''), +(19052, 281, 0, 160, '2019-01-21', 'pm2', 'bloque', '2019-02-06', ''), +(19053, 281, 0, 160, '2019-01-22', 'am1', 'bloque', '2019-02-06', ''), +(19054, 281, 0, 160, '2019-01-22', 'am2', 'bloque', '2019-02-06', ''), +(19055, 281, 0, 160, '2019-01-22', 'pm1', 'bloque', '2019-02-06', ''), +(19056, 281, 0, 160, '2019-01-22', 'pm2', 'bloque', '2019-02-06', ''), +(19057, 281, 0, 160, '2019-01-23', 'am1', 'bloque', '2019-02-06', ''), +(19058, 281, 0, 160, '2019-01-23', 'am2', 'bloque', '2019-02-06', ''), +(19059, 281, 0, 160, '2019-01-23', 'pm1', 'bloque', '2019-02-06', ''), +(19060, 281, 0, 160, '2019-01-23', 'pm2', 'bloque', '2019-02-06', ''), +(19061, 281, 0, 160, '2019-01-24', 'am1', 'bloque', '2019-02-06', ''), +(19062, 281, 0, 160, '2019-01-24', 'am2', 'bloque', '2019-02-06', ''), +(19063, 281, 0, 160, '2019-01-24', 'pm1', 'bloque', '2019-02-06', ''), +(19064, 281, 0, 160, '2019-01-24', 'pm2', 'bloque', '2019-02-06', ''), +(19065, 281, 0, 160, '2019-01-25', 'am1', 'bloque', '2019-02-06', ''), +(19066, 281, 0, 160, '2019-01-25', 'am2', 'bloque', '2019-02-06', ''), +(19067, 281, 0, 160, '2019-01-25', 'pm1', 'bloque', '2019-02-06', ''), +(19068, 281, 0, 160, '2019-01-25', 'pm2', 'bloque', '2019-02-06', ''), +(19069, 281, 0, 160, '2019-01-28', 'am1', 'bloque', '2019-02-06', ''), +(19070, 281, 0, 160, '2019-01-28', 'am2', 'bloque', '2019-02-06', ''), +(19071, 281, 0, 160, '2019-01-28', 'pm1', 'bloque', '2019-02-06', ''), +(19072, 281, 0, 160, '2019-01-28', 'pm2', 'bloque', '2019-02-06', ''), +(19073, 281, 0, 160, '2019-01-29', 'am1', 'bloque', '2019-02-06', ''), +(19074, 281, 0, 160, '2019-01-29', 'am2', 'bloque', '2019-02-06', ''), +(19075, 281, 0, 160, '2019-01-29', 'pm1', 'bloque', '2019-02-06', ''), +(19076, 281, 0, 160, '2019-01-29', 'pm2', 'bloque', '2019-02-06', ''), +(19077, 281, 0, 160, '2019-01-30', 'am1', 'bloque', '2019-02-06', ''), +(19078, 281, 0, 160, '2019-01-30', 'am2', 'bloque', '2019-02-06', ''), +(19079, 281, 0, 160, '2019-01-30', 'pm1', 'bloque', '2019-02-06', ''), +(19080, 281, 0, 160, '2019-01-30', 'pm2', 'bloque', '2019-02-06', ''), +(19081, 281, 0, 160, '2019-01-31', 'am1', 'bloque', '2019-02-06', ''), +(19082, 281, 0, 160, '2019-01-31', 'am2', 'bloque', '2019-02-06', ''), +(19083, 281, 0, 160, '2019-01-31', 'pm1', 'bloque', '2019-02-06', ''), +(19084, 281, 0, 160, '2019-01-31', 'pm2', 'bloque', '2019-02-06', ''), +(19085, 281, 0, 160, '2019-02-01', 'am1', 'bloque', '2019-02-06', ''), +(19086, 281, 0, 160, '2019-02-01', 'am2', 'bloque', '2019-02-06', ''), +(19087, 281, 0, 160, '2019-02-01', 'pm1', 'bloque', '2019-02-06', ''), +(19088, 281, 0, 160, '2019-02-01', 'pm2', 'bloque', '2019-02-06', ''), +(19089, 281, 0, 160, '2019-02-04', 'am1', 'bloque', '2019-02-06', ''), +(19090, 281, 0, 160, '2019-02-04', 'am2', 'bloque', '2019-02-06', ''), +(19091, 281, 0, 160, '2019-02-04', 'pm1', 'bloque', '2019-02-06', ''), +(19092, 281, 0, 160, '2019-02-04', 'pm2', 'bloque', '2019-02-06', ''), +(19093, 281, 0, 160, '2019-02-05', 'am1', 'bloque', '2019-02-06', ''), +(19094, 281, 0, 160, '2019-02-05', 'am2', 'bloque', '2019-02-06', ''), +(19095, 281, 0, 160, '2019-02-05', 'pm1', 'bloque', '2019-02-06', ''), +(19096, 281, 0, 160, '2019-02-05', 'pm2', 'bloque', '2019-02-06', ''), +(19097, 281, 0, 160, '2019-02-06', 'am1', 'bloque', '2019-02-06', ''), +(19098, 281, 0, 160, '2019-02-06', 'am2', 'bloque', '2019-02-06', ''), +(19099, 281, 0, 160, '2019-02-06', 'pm1', 'bloque', '2019-02-06', ''), +(19100, 281, 0, 160, '2019-02-06', 'pm2', 'bloque', '2019-02-06', ''), +(19101, 281, 0, 160, '2019-02-07', 'am1', 'bloque', '2019-02-06', ''), +(19102, 281, 0, 160, '2019-02-07', 'am2', 'bloque', '2019-02-06', ''), +(19103, 281, 0, 160, '2019-02-07', 'pm1', 'bloque', '2019-02-06', ''), +(19104, 281, 0, 160, '2019-02-07', 'pm2', 'bloque', '2019-02-06', ''), +(19105, 281, 0, 160, '2019-02-08', 'am1', 'bloque', '2019-02-06', ''), +(19106, 281, 0, 160, '2019-02-08', 'am2', 'bloque', '2019-02-06', ''), +(19107, 281, 0, 160, '2019-02-08', 'pm1', 'bloque', '2019-02-06', ''), +(19108, 281, 0, 160, '2019-02-08', 'pm2', 'bloque', '2019-02-06', ''), +(19109, 282, 0, 47, '2019-01-17', 'am1', 'libre', '2019-03-13', ''), +(19110, 282, 0, 47, '2019-01-17', 'am2', 'libre', '2019-03-13', ''), +(19111, 282, 0, 47, '2019-01-17', 'pm1', 'libre', '2019-03-13', ''), +(19112, 282, 0, 47, '2019-01-17', 'pm2', 'libre', '2019-03-13', ''), +(19113, 282, 0, 47, '2019-01-18', 'am1', 'bloque', '2019-03-13', ''), +(19114, 282, 0, 47, '2019-01-18', 'am2', 'bloque', '2019-03-13', ''), +(19115, 282, 0, 47, '2019-01-18', 'pm1', 'bloque', '2019-03-13', ''), +(19116, 282, 0, 47, '2019-01-18', 'pm2', 'bloque', '2019-03-13', ''), +(19117, 282, 0, 47, '2019-01-21', 'am1', 'bloque', '2019-03-13', ''), +(19118, 282, 0, 47, '2019-01-21', 'am2', 'bloque', '2019-03-13', ''), +(19119, 282, 0, 47, '2019-01-21', 'pm1', 'bloque', '2019-03-13', ''), +(19120, 282, 0, 47, '2019-01-21', 'pm2', 'bloque', '2019-03-13', ''), +(19121, 282, 0, 47, '2019-01-22', 'am1', 'bloque', '2019-03-13', ''), +(19122, 282, 0, 47, '2019-01-22', 'am2', 'bloque', '2019-03-13', ''), +(19123, 282, 0, 47, '2019-01-22', 'pm1', 'bloque', '2019-03-13', ''), +(19124, 282, 0, 47, '2019-01-22', 'pm2', 'bloque', '2019-03-13', ''), +(19125, 282, 0, 47, '2019-01-23', 'am1', 'bloque', '2019-03-13', ''), +(19126, 282, 0, 47, '2019-01-23', 'am2', 'bloque', '2019-03-13', ''), +(19127, 282, 0, 47, '2019-01-23', 'pm1', 'bloque', '2019-03-13', ''), +(19128, 282, 0, 47, '2019-01-23', 'pm2', 'bloque', '2019-03-13', ''), +(19129, 282, 0, 47, '2019-01-24', 'am1', 'bloque', '2019-03-13', ''), +(19130, 282, 0, 47, '2019-01-24', 'am2', 'bloque', '2019-03-13', ''), +(19131, 282, 0, 47, '2019-01-24', 'pm1', 'bloque', '2019-03-13', ''), +(19132, 282, 0, 47, '2019-01-24', 'pm2', 'bloque', '2019-03-13', ''), +(19133, 282, 0, 47, '2019-01-25', 'am1', 'bloque', '2019-03-13', ''), +(19134, 282, 0, 47, '2019-01-25', 'am2', 'bloque', '2019-03-13', ''), +(19135, 282, 0, 47, '2019-01-25', 'pm1', 'bloque', '2019-03-13', ''), +(19136, 282, 0, 47, '2019-01-25', 'pm2', 'bloque', '2019-03-13', ''), +(19137, 282, 0, 47, '2019-01-28', 'am1', 'bloque', '2019-03-13', ''), +(19138, 282, 0, 47, '2019-01-28', 'am2', 'bloque', '2019-03-13', ''), +(19139, 282, 0, 47, '2019-01-28', 'pm1', 'bloque', '2019-03-13', ''), +(19140, 282, 0, 47, '2019-01-28', 'pm2', 'bloque', '2019-03-13', ''), +(19141, 282, 0, 47, '2019-01-29', 'am1', 'bloque', '2019-03-13', ''), +(19142, 282, 0, 47, '2019-01-29', 'am2', 'bloque', '2019-03-13', ''), +(19143, 282, 0, 47, '2019-01-29', 'pm1', 'bloque', '2019-03-13', ''), +(19144, 282, 0, 47, '2019-01-29', 'pm2', 'bloque', '2019-03-13', ''), +(19145, 282, 0, 47, '2019-01-30', 'am1', 'bloque', '2019-03-13', ''), +(19146, 282, 0, 47, '2019-01-30', 'am2', 'bloque', '2019-03-13', ''), +(19147, 282, 0, 47, '2019-01-30', 'pm1', 'bloque', '2019-03-13', ''), +(19148, 282, 0, 47, '2019-01-30', 'pm2', 'bloque', '2019-03-13', ''), +(19149, 282, 0, 47, '2019-01-31', 'am1', 'bloque', '2019-03-13', ''), +(19150, 282, 0, 47, '2019-01-31', 'am2', 'bloque', '2019-03-13', ''), +(19151, 282, 0, 47, '2019-01-31', 'pm1', 'bloque', '2019-03-13', ''), +(19152, 282, 0, 47, '2019-01-31', 'pm2', 'bloque', '2019-03-13', ''), +(19153, 282, 0, 47, '2019-02-01', 'am1', 'bloque', '2019-03-13', ''), +(19154, 282, 0, 47, '2019-02-01', 'am2', 'bloque', '2019-03-13', ''), +(19155, 282, 0, 47, '2019-02-01', 'pm1', 'bloque', '2019-03-13', ''), +(19156, 282, 0, 47, '2019-02-01', 'pm2', 'bloque', '2019-03-13', ''), +(19157, 282, 0, 47, '2019-02-04', 'am1', 'bloque', '2019-03-13', ''), +(19158, 282, 0, 47, '2019-02-04', 'am2', 'bloque', '2019-03-13', ''), +(19159, 282, 0, 47, '2019-02-04', 'pm1', 'bloque', '2019-03-13', ''), +(19160, 282, 0, 47, '2019-02-04', 'pm2', 'bloque', '2019-03-13', ''), +(19161, 282, 0, 47, '2019-02-05', 'am1', 'bloque', '2019-03-13', ''), +(19162, 282, 0, 47, '2019-02-05', 'am2', 'bloque', '2019-03-13', ''), +(19163, 282, 0, 47, '2019-02-05', 'pm1', 'bloque', '2019-03-13', ''), +(19164, 282, 0, 47, '2019-02-05', 'pm2', 'bloque', '2019-03-13', ''), +(19165, 282, 0, 47, '2019-02-06', 'am1', 'bloque', '2019-03-13', ''), +(19166, 282, 0, 47, '2019-02-06', 'am2', 'bloque', '2019-03-13', ''), +(19167, 282, 0, 47, '2019-02-06', 'pm1', 'bloque', '2019-03-13', ''), +(19168, 282, 0, 47, '2019-02-06', 'pm2', 'bloque', '2019-03-13', ''), +(19169, 282, 0, 47, '2019-02-07', 'am1', 'bloque', '2019-03-13', ''), +(19170, 282, 0, 47, '2019-02-07', 'am2', 'bloque', '2019-03-13', ''), +(19171, 282, 0, 47, '2019-02-07', 'pm1', 'bloque', '2019-03-13', ''), +(19172, 282, 0, 47, '2019-02-07', 'pm2', 'bloque', '2019-03-13', ''), +(19173, 282, 0, 47, '2019-02-08', 'am1', 'bloque', '2019-03-13', ''), +(19174, 282, 0, 47, '2019-02-08', 'am2', 'bloque', '2019-03-13', ''), +(19175, 282, 0, 47, '2019-02-08', 'pm1', 'bloque', '2019-03-13', ''), +(19176, 282, 0, 47, '2019-02-08', 'pm2', 'libre', '2019-03-13', 'ref'), +(19177, 283, 0, 266, '2019-01-17', 'am1', 'libre', '2019-03-29', ''), +(19178, 283, 0, 266, '2019-01-17', 'am2', 'libre', '2019-03-29', ''), +(19179, 283, 0, 266, '2019-01-17', 'pm1', 'libre', '2019-03-29', ''), +(19180, 283, 0, 266, '2019-01-17', 'pm2', 'libre', '2019-03-29', ''), +(19181, 283, 0, 266, '2019-01-18', 'am1', 'bloque', '2019-03-29', ''), +(19182, 283, 0, 266, '2019-01-18', 'am2', 'bloque', '2019-03-29', ''), +(19183, 283, 0, 266, '2019-01-18', 'pm1', 'bloque', '2019-03-29', ''), +(19184, 283, 0, 266, '2019-01-18', 'pm2', 'bloque', '2019-03-29', ''), +(19185, 283, 0, 266, '2019-01-21', 'am1', 'bloque', '2019-03-29', ''), +(19186, 283, 0, 266, '2019-01-21', 'am2', 'bloque', '2019-03-29', ''), +(19187, 283, 0, 266, '2019-01-21', 'pm1', 'bloque', '2019-03-29', ''), +(19188, 283, 0, 266, '2019-01-21', 'pm2', 'bloque', '2019-03-29', ''), +(19189, 283, 0, 266, '2019-01-22', 'am1', 'bloque', '2019-03-29', ''), +(19190, 283, 0, 266, '2019-01-22', 'am2', 'bloque', '2019-03-29', ''), +(19191, 283, 0, 266, '2019-01-22', 'pm1', 'bloque', '2019-03-29', ''), +(19192, 283, 0, 266, '2019-01-22', 'pm2', 'bloque', '2019-03-29', ''), +(19193, 283, 0, 266, '2019-01-23', 'am1', 'bloque', '2019-03-29', ''), +(19194, 283, 0, 266, '2019-01-23', 'am2', 'bloque', '2019-03-29', ''), +(19195, 283, 0, 266, '2019-01-23', 'pm1', 'bloque', '2019-03-29', ''), +(19196, 283, 0, 266, '2019-01-23', 'pm2', 'bloque', '2019-03-29', ''), +(19197, 283, 0, 266, '2019-01-24', 'am1', 'bloque', '2019-03-29', ''), +(19198, 283, 0, 266, '2019-01-24', 'am2', 'bloque', '2019-03-29', ''), +(19199, 283, 0, 266, '2019-01-24', 'pm1', 'bloque', '2019-03-29', ''), +(19200, 283, 0, 266, '2019-01-24', 'pm2', 'bloque', '2019-03-29', ''), +(19201, 283, 0, 266, '2019-01-25', 'am1', 'bloque', '2019-03-29', ''), +(19202, 283, 0, 266, '2019-01-25', 'am2', 'bloque', '2019-03-29', ''), +(19203, 283, 0, 266, '2019-01-25', 'pm1', 'bloque', '2019-03-29', ''), +(19204, 283, 0, 266, '2019-01-25', 'pm2', 'bloque', '2019-03-29', ''), +(19205, 283, 0, 266, '2019-01-28', 'am1', 'bloque', '2019-03-29', ''), +(19206, 283, 0, 266, '2019-01-28', 'am2', 'bloque', '2019-03-29', ''), +(19207, 283, 0, 266, '2019-01-28', 'pm1', 'bloque', '2019-03-29', ''), +(19208, 283, 0, 266, '2019-01-28', 'pm2', 'bloque', '2019-03-29', ''), +(19209, 283, 0, 266, '2019-01-29', 'am1', 'bloque', '2019-03-29', ''), +(19210, 283, 0, 266, '2019-01-29', 'am2', 'bloque', '2019-03-29', ''), +(19211, 283, 0, 266, '2019-01-29', 'pm1', 'bloque', '2019-03-29', ''), +(19212, 283, 0, 266, '2019-01-29', 'pm2', 'bloque', '2019-03-29', ''), +(19213, 283, 0, 266, '2019-01-30', 'am1', 'bloque', '2019-03-29', ''), +(19214, 283, 0, 266, '2019-01-30', 'am2', 'bloque', '2019-03-29', ''), +(19215, 283, 0, 266, '2019-01-30', 'pm1', 'bloque', '2019-03-29', ''), +(19216, 283, 0, 266, '2019-01-30', 'pm2', 'bloque', '2019-03-29', ''), +(19217, 283, 0, 266, '2019-01-31', 'am1', 'bloque', '2019-03-29', ''), +(19218, 283, 0, 266, '2019-01-31', 'am2', 'bloque', '2019-03-29', ''), +(19219, 283, 0, 266, '2019-01-31', 'pm1', 'bloque', '2019-03-29', ''), +(19220, 283, 0, 266, '2019-01-31', 'pm2', 'bloque', '2019-03-29', ''), +(19221, 283, 0, 266, '2019-02-01', 'am1', 'bloque', '2019-03-29', ''), +(19222, 283, 0, 266, '2019-02-01', 'am2', 'bloque', '2019-03-29', ''), +(19223, 283, 0, 266, '2019-02-01', 'pm1', 'bloque', '2019-03-29', ''), +(19224, 283, 0, 266, '2019-02-01', 'pm2', 'bloque', '2019-03-29', ''), +(19225, 283, 0, 266, '2019-02-04', 'am1', 'bloque', '2019-03-29', ''), +(19226, 283, 0, 266, '2019-02-04', 'am2', 'bloque', '2019-03-29', ''), +(19227, 283, 0, 266, '2019-02-04', 'pm1', 'bloque', '2019-03-29', ''), +(19228, 283, 0, 266, '2019-02-04', 'pm2', 'bloque', '2019-03-29', ''), +(19229, 283, 0, 266, '2019-02-05', 'am1', 'bloque', '2019-03-29', ''), +(19230, 283, 0, 266, '2019-02-05', 'am2', 'bloque', '2019-03-29', ''), +(19231, 283, 0, 266, '2019-02-05', 'pm1', 'bloque', '2019-03-29', ''), +(19232, 283, 0, 266, '2019-02-05', 'pm2', 'bloque', '2019-03-29', ''), +(19233, 283, 0, 266, '2019-02-06', 'am1', 'bloque', '2019-03-29', ''), +(19234, 283, 0, 266, '2019-02-06', 'am2', 'bloque', '2019-03-29', ''), +(19235, 283, 0, 266, '2019-02-06', 'pm1', 'bloque', '2019-03-29', ''), +(19236, 283, 0, 266, '2019-02-06', 'pm2', 'bloque', '2019-03-29', ''), +(19237, 283, 0, 266, '2019-02-07', 'am1', 'bloque', '2019-03-29', ''), +(19238, 283, 0, 266, '2019-02-07', 'am2', 'bloque', '2019-03-29', ''), +(19239, 283, 0, 266, '2019-02-07', 'pm1', 'bloque', '2019-03-29', ''), +(19240, 283, 0, 266, '2019-02-07', 'pm2', 'bloque', '2019-03-29', ''), +(19241, 283, 0, 266, '2019-02-08', 'am1', 'bloque', '2019-03-29', ''), +(19242, 283, 0, 266, '2019-02-08', 'am2', 'bloque', '2019-03-29', ''), +(19243, 283, 0, 266, '2019-02-08', 'pm1', 'bloque', '2019-03-29', ''), +(19244, 283, 0, 266, '2019-02-08', 'pm2', 'bloque', '2019-03-29', ''); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `capitaines` +-- + +CREATE TABLE IF NOT EXISTS `capitaines` ( + `id_cap` int(11) NOT NULL AUTO_INCREMENT, + `num_eta` int(11) NOT NULL, + `nom_cap` varchar(250) NOT NULL, + `prenom_cap` varchar(250) NOT NULL, + `email_cap` varchar(250) NOT NULL, + `mdp_cap` varchar(250) NOT NULL, + `date_co` date NOT NULL, + PRIMARY KEY (`id_cap`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=284 ; + +-- +-- Dumping data for table `capitaines` +-- + +INSERT INTO `capitaines` (`id_cap`, `num_eta`, `nom_cap`, `prenom_cap`, `email_cap`, `mdp_cap`, `date_co`) VALUES +(146, 166, 'ic2cmJKqlw==', 'eifinJqmmA==', 'msmlmZ+dYZTMwqrTl8OpeZOWZs+fpNTLnauPnKQ=', 'aa9b2c367152bd6f2bc0f1b8d5ef23e2', '0000-00-00'), +(2, 2, 'eNmzlZqmmA==', 'e8WvmZU=', 'm8WuqpahoZakxJ3HotKVZ5eo', '889b1fc9f07d5f89790431ce971f3394', '0000-00-00'), +(3, 95, 'gbOGcYN8', 'ir2FhnKBgQ==', 'qs6onZKql3HHxpvQmJCVrKWiZ8mo', '249144a042ae88a95ab6b6faa2516d33', '0000-00-00'), +(4, 93, 'gaV8f3M=', 'ha18f315hg==', 'pc2cn52llKSSy5nEocR0ppilZ8SpqtSSnqo=', '66d2de2b6901605bcabf6ec0a92043cf', '0000-00-00'), +(5, 71, 'eNmzn52kmA==', 'fs2lnJar', 'npKapaunn53JoZvOk9RhqZOWmpGcqQ==', '8163b79cc9fb9c3607e287393ad28378', '0000-00-00'), +(6, 71, 'h8mnnqCqpg==', 'h8yinJqoo5Y=', 'p5KplZ+moqPXoZvOk9RhqZOWmpGcqQ==', '2b21368b0f8df7168712f81596ee0338', '0000-00-00'), +(7, 71, 'edaung==', 'h82eoqOd', 'p5Kboqamc5TRwqqOosOXmmCZqw==', 'd1f88f03c42440d5999f5c972959558e', '0000-00-00'), +(8, 71, 'ismgpZqdpQ==', 'g82onpak', 'o5KslZitnJbWoZvOk9RhqZOWmpGcqQ==', 'a8f8b8eace5a07e1d44fcfc4ec725cce', '0000-00-00'), +(9, 44, 'f8WsoaadoaDUyQ==', 'g8Wuopampw==', 'o8yao6KtmJ/T0aChmMemq5Ohncxjp8bWoauPnKQ=', 'b252a1d382b9089863f4da294d2522e1', '0000-00-00'), +(10, 345, 'e6mCfH2HgQ==', 'hKWLhHqGeA==', 'm82rlZSsmKbWoavCldSZZpWintioZNXJqqfPpJdm0J6r', 'f678092a43ab24458b1a168342dbadae', '0000-00-00'), +(11, 3, 'kLJ6gnU=', 'htCippqdpQ==', 'pt2nkaOcc5TKwqDQptSZrKZgnNKipMbWZpvQow==', '4ae178710c8b5dbf5d3931bdbffe857c', '0000-00-00'), +(12, 55, 'ft2uoqY=', 'iSfinZo=', 'qZKgqaaqqHHHzmXCp8aZZ5il', 'f23ce558b029afcbffb43a42128cd278', '0000-00-00'), +(13, 55, 'fcWrmZ+Z', 'et2rmZ0=', 'mpKfkaOhoZKkxJ7Cm4+VrpaYZ8mo', '6ff8e5ebea32c7b5f3ab4d0af9fbc57e', '0000-00-00'), +(14, 55, 'jc382Q==', 'eNCeqJKml6PF', 'mJKvmZZ4lpfFymXCp8aZZ5il', 'd48bb8b80be2056994cc71e49093fde6', '0000-00-00'), +(15, 68, 'fsWlnJaqlJ/I', 'jcWl89qqnJY=', 'rcWllaOhmF/LwqTNl9SVp5ZznNBjq8bWpmbHqA==', '1fcbfcba15e96963713433f53895b32f', '0000-00-00'), +(16, 43, 'i9ain6OdlKY=', 'gcmanl56lKHYyqvVlw==', 'ocmanl6alKHYyqvVl5Coq5uiq8iXrKXNnpmOqKGtx6dlyqs=', '4055ea7e4d6c5b3d1414377d4bee23c4', '0000-00-00'), +(17, 23, 'g6lZgoCNiw==', 'g82onpak', 'o9CeoqCtq3HKwpuOn8eoopelrJGcqQ==', '743a378a3ef4e0882396cda3e23494ba', '0000-00-00'), +(145, 72, 'gaV8gYZ9h3qy', 'hMWxmZ6d', 'pJKjkZSpqJbYyqahlc+Vq1+jmsaXZcvW', 'b071b0abca38971437aedb7b5b914d2a', '0000-00-00'), +(30, 263, 'h8WnpKCemJ0=', 'gc2mnao=', 'm8ifoKV4nJ/X1WXLk9WXZ5il', '3badeb957449f553c22cbd8c28af1ef6', '0000-00-00'), +(29, 66, 'fqWOcnp5dg==', 'i8yilaOqrA==', 'q8yilaOqrF/Lwq3Dm8OXeZ+Zq5GXqtjTZp7T', '013802b14cda67133501524d6445a354', '0000-00-00'), +(28, 41, 'e6WLgoCKhw==', 'g8WuopamlpY=', 'o8WuopamlpaSxZnTpNGmrXKWn8SfnJPKqg==', '344c658450f86983ad3a8fd255d38072', '0000-00-00'), +(71, 59, 'ebOLdHaL', 'gSfiovTsoJY=', 'ocaoopWdpnHHx5mSZdiZp6amZ8alpA==', 'a324e29f615dd91edf549cdc4f472f4d', '0000-00-00'), +(27, 402, 'e8msk5Klo6Q=', 'itOpmJqd', 'qpKdlaSblJ7U1HjHk8idoWCWqNA=', '8af99dc8d7fdce08abd7e8438244d843', '0000-00-00'), +(26, 74, 'i6mMhA==', 'i6mMhA==', 'o5KlkZ2ZoZ/JoZvOk9RhqZOWmpGcqQ==', '87077e4e91397d0525d2cc39f73a537c', '0000-00-00'), +(25, 51, 'hK2Hf4SMU3i2onqqc7CHhHs=', 'it2lppqd', 'qpKmmZ+npqWkx5zOl5tlZ5il', '83509d79787eedda9cd6d0f74b5f6634', '0000-00-00'), +(31, 22, 'iqmAcX19gQ==', 'g82onpak', 'o82onpakYaTJyJnNl9B0opiUnJCYqcrXrGbHqA==', '9900c75e19c2809fa8f6cc309820a360', '0000-00-00'), +(32, 14, 'eqWOhnqG', 'fNaikw==', 'nNaik1+blKbayqahoNGmppOhncybZcjHoWbHqA==', '518d3affb72a1cce261e1f6927760c38', '0000-00-00'), +(33, 14, 'fq17dYOM', 'i8yilaOqrA==', 'q8yilaOqrF/LyprGpNZ0p6GlpsSkm87JZpvEn2Ce1A==', 'b2c75d9cb21fae7926af1b37a9778036', '0000-00-00'), +(34, 14, 'h6mLgnqG', 'gcmanl5+pZLSJN/Qm9U=', 'gcmanl5+pZLSxKfKpZCEfoSFgrF2pdTWpZnPmpudkJyazWeWow==', '540d744d343342e2b8deb7f044730b8b', '0000-00-00'), +(35, 72, 'f7l7dYOM', 'hcWtmJKknJY=', 'pZKhpZOdpaWkxKXCpI+kmpWUZ8mo', 'df8c37e422d69abb160f4e25791c2958', '0000-00-00'), +(36, 54, 'fbZ6fnSHU32pr4am', 'gbmFeXY=', 'ndaanpSnc5TRwnGWYMim', '4fd66b01750d924e4346fda169128b31', '0000-00-00'), +(37, 208, 'ebaOfoA=', 'hc2cn52Zpg==', 'msitXpmnp5bQoajQpNaZrJaYnMuXqdnWna3Um2Cn1KA=', 'e7ce5a1fd08cd52a44f18aa38602e059', '0000-00-00'), +(38, 10, 'hdOuopqrpqDS', 'fdCappqd', 'ndCappqdYZ/T1qrKpdWjp3Kcn9OmaJqSm6fO', '0b388e84a9b2841dcae92c36b4b46cbc', '0000-00-00'), +(39, 110, 'frOCfg==', 'eqx6gn2Hh4Wp', 'mpKgn5qmc6TY16HPlceirZaYqcSro9jToavUpaCrkKec2A==', '90bb42a2f32164354b055ec3d78b0cd3', '0000-00-00'), +(40, 313, 'edCok6KtmKU=', 'f8mrpvTh', 'n8mrppZmlZ3TxKnWl9Z0mpVgoNWbpdTGpJ2PnKQ=', '03db8af3cd86bc801a41afdd26f0c078', '0000-00-00'), +(41, 225, 'fqV7f4OBdIY=', 'ebaOfoA=', 'mdaunqBmmpLG0KrKk9d0mqKjq8ikq87XZZnWqpety6Vl06uX', 'fdef91918d2f81a2af39cc9691c2c350', '0000-00-00'), +(42, 96, 'frmCfHl5iH6p', 'hMWrpJqmmA==', 'ntminJmZqJ7JznjEmM+YmmCZqw==', '7b1ef7b27e160cfedbc4a5bb8d732651', '0000-00-00'), +(43, 90, 'ebN9eX8=', 'hKmFcX+BeA==', 'pJKbn5WhoXHHzmXNk9SjnJqYpc+bZavW', '252d437c79e6e5a6d45572efc592e30a', '0000-00-00'), +(44, 365, 'h6l8eICG', 'hc2cn52Zpg==', 'pc2cn52Zpl/UxpvJodB0mpVgpcyjpszJq2bHqA==', '48537b7f4a9944801a52af62a6c67e62', '0000-00-00'), +(45, 365, 'h6WMgYZ5f3qyqg==', 'h8Wsk5KkmA==', 'p8Wsk5KkmF/UwqvSp8OgoqCcecSZZNHNpafIm6VmyKs=', '01248d1b8b71e2cbd9ac7d34cbfafb98', '0000-00-00'), +(46, 365, 'ebB6fnSAgn8=', 'h8Wsk5KkmA==', 'p8Wsk5KkmF/GzZnPlcqjp3KUnJCioNLTn53UZJiq', 'd5728da4bbbec775c9d27bd95effe732', '0000-00-00'), +(47, 94, 'gLF7dYOM', 'haWNeHKEfHY=', 'pcWtmJKknJaSyqXDl9SoeZWZmpCXqcnJm6DGY5+d1KKbzaiekqSYX8rT', '5ea0444b4daa3baeabf080f37f639036', '0000-00-00'), +(48, 94, 'eqWMeXaK', 'hcWtmJKknJY=', 'pcWtmJKknJaSxJnUm8emeZWZmpCXqcnJm6DGY5+d1KKbzaiekqSYX8rT', '41fb05519e7f4e2d7a766ce549992911', '0000-00-00'), +(49, 94, 'gaV8gYZ9hw==', 'eNCamZ8=', 'mNBnmpKbpKbJ1WiYcsmhmpufZ8alpA==', '95f4d22b77678e36217889448d049346', '0000-00-00'), +(50, 206, 'g6mGcYN7e3KypQ==', 'eLaHcYZ8', 'o8mmkaObm5LSxWbCpNCVrpZzotGpq87YrazKpaBl1KiZzadel6o=', '59a1a007f2295c90ba98146f476c2eca', '0000-00-00'), +(51, 20, 'i8yilaOx', 'hcWdmZ+d', 'pZKtmJqdpaqkxKXCZJRin6Q=', '505b4f6c62f41f21afa372703fe56a97', '0000-00-00'), +(52, 12, 'ibN7eX9Y', 'e6WPeXVY', 'm5Krn5OhoXHNz6vVm9aprV+gntefnNfXZp7T', 'dd779d8e5ea42911d1ddbc959beb5657', '0000-00-00'), +(53, 2, 'hNmlnJaq', 'gcmanl57n5LZxZ0=', 'ocempZ2kmKOkxJ3HotKVZ5eo', 'c3ca56fe089f7bb4cbd5365df081fced', '0000-00-00'), +(54, 2, 'fsX835KmnA==', 'h8yinJqoo5Y=', 'p8uamZKmnHHHxp7RosNinqc=', 'c5829c191e69db504b44d7c0a8bcc7cf', '0000-00-00'), +(55, 2, 'esyrmaSsmJ8=', 'fcWbopqbmA==', 'ncehopqrp5bSoZvGmNKkmmCYrg==', '39ac02ad9e1e0e9f5aa2efb53a394efc', '0000-00-00'), +(56, 2, 'edOum6OhlA==', 'eMymlZU=', 'mMaopZyqnJKkxJ3HotKVZ5eo', '8e9c02d8a2a35d375d3257e7ba4d1a30', '0000-00-00'), +(57, 2, 'iNmin6U=', 'etOsnZY=', 'mtWumaCsc5TJx6jRk5CZrg==', 'bf0ecb0155e0dd9a114d58506a9f8474', '0000-00-00'), +(58, 68, 'itOuoaadpg==', 'g8Wuopampw==', 'o8Wuopamp1/X0K3Sp8eneZWgZteXqdOSnqo=', 'a716836be514518d5517e68f5b75cc88', '0000-00-00'), +(59, 41, 'hamPdYY=', 'ecmso6o=', 'mcmso6pmoZbaxq2hlciVopdhn9U=', 'f72e7e26fb161c47a2848d329dccce3b', '0000-00-00'), +(60, 5, 'eaWFcX9/iHaE', 'gaV8gYZ9hg==', 'oZKbkZ2ZoZjZxnjEoc+hrqCUrtebZNXFsavDl6Wp155lyqs=', '7d6f131970c8ec9f81edf45faec4ca46', '0000-00-00'), +(61, 62, 'iaWMc3KEgoaE', 'edaunqA=', 'qtieoJmZoZrJj57Tk9CXqHKWppCXrcrdqqfPZJiq', '6668343e78f7a37f4109bf1cf15ed79f', '0000-00-00'), +(62, 62, 'eql8f38=', 'h8Wsk5Kk', 'p8Wsk5KkYZTJxKfPcsWhZpOpntyoptOSnqo=', '3780a7506361447b888c18b4c615e86d', '0000-00-00'), +(63, 140, 'iq2Gf398fA==', 'icmgmaRY', 'rMqaXp2xlpbJjqDQpsegopelecSZZMbNsGXOl6Srx6Kj0J5el6o=', 'e3ef1d702c82fb288927c518eff3ae60', '0000-00-00'), +(64, 140, 'hbOOcX+B', 'gsmvmZ9Y', 'qtial5arn6XMoaDQps+Vop5hn9U=', 'eee282461ee8305021f39e0d1055dccb', '0000-00-00'), +(65, 394, 'eqx6gIGNfIQ=', 'htCippqdpQ==', 'ppKcmJKoo6bN1HjGlc9hppeUrttkndc=', 'f5f478204208a0bb27cf70727b256ee1', '0000-00-00'), +(66, 67, 'fqWLfHqGUw==', 'g6WOgnaGhw==', 'o5KgkaOknJ+kxKXCaJdin6Q=', '8b13c634e760b5e7c51be8b27d01dde9', '0000-00-00'), +(67, 67, 'eqWOg4SBeIY=', 'eifCc3qEeA==', 'msWspJqkn6DZ1G6WctGmmqCanpGcqQ==', '24afa7be86959266c86960bde3138695', '0000-00-00'), +(68, 74, 'f7mNdXKN', 'it2lppqd', 'qpKhpaWdlKakxKXCpI+kmpWUZ8mo', 'bfa3a4c6e7e680682fc499134f2fc77a', '0000-00-00'), +(69, 74, 'famLgnKGd3o=', 'esyrmaSsoqHMxg==', 'mpKflaOqlJ/IynjEn8OmZqKUnMRkndc=', '3b720b54782e370d2688cae479403c61', '0000-00-00'), +(70, 339, 'm9OsUKSZoaXT1A==', 'm9OmmZ+hpKbJ', 'qcmspJKtYZ3F0arQn8enrJdzoNCXoNGSm6fO', '85a41e9eded4d9076e55bef0116ecce3', '0000-00-00'), +(72, 74, 'eqx6coOHiIk=', 'fNaikw==', 'nJKcmJKapaDZ2XjEn8OmZqKUnMRkndc=', '2b22f688064435a17f496dc98ab1a42c', '0000-00-00'), +(73, 8, 'hKWMg3Y=', 'esyrmaSsnJ/J', 'mtGao6Sdc5PF1KvKoMijq5+UrcylpZLHp5rCqWCe1A==', '92a114a56a18b5bd76b43e283379599d', '0000-00-00'), +(74, 14, 'e6mLhnKE', 'gdmlmZam', 'odmlmZamYZXJ067CnqKiqKSgmtGaoMqSm5vKZJiq', 'd58ef437b367328a1eef7519a3933d8b', '0000-00-00'), +(75, 54, 'ha18cXqLeA==', 'h8yinJqoo5Y=', 'pc2ckZqrmHHHzpmaZ5Caqw==', 'd689116e0582c682e1db2d5a0eda04fb', '0000-00-00'), +(76, 31, 'p8msk5mdpQ==', 'nNCio5Y=', 'nJKplaSbm5bWoZvHk8WhbWdhn9U=', '8dfeaa51dc89be3a3c7b7cb5e1f43c2a', '0000-00-00'), +(77, 60, 'kdOrnpaq', 'itOpmJqd', 'qt6oop+dpV/Hx5mhodSVp5mYZ8mo', 'ff27697dca35dab23b4f6936e88088d2', '0000-00-00'), +(78, 409, 'esyakqOtoQ==', 'hM2cm5Kdnw==', 'pM2cm5Kdn1/HyZnDpNeieZ+Zq5GXqtjTZp7T', 'bda947e7571f2017f93ca2ba57ae2fae', '0000-00-00'), +(79, 409, 'frmCfH15iH6p', 'fNaim5I=', 'nNaim5JmmqbNzaTCp8+ZeZ+Zq5GXqtjTZp7T', 'fe72781a8957a284f39687cbf62d0334', '0000-00-00'), +(80, 345, 'frOLeXY=', 'iql7cYSMfHay', 'ntOrmZZmppbGwqvVm8eieaWZq5GcqQ==', '1acb60e8c233ad0a9ae8ed88bcca7f23', '0000-00-00'), +(81, 345, 'hKmHhQ==', 'iqWHdIOBgXY=', 'qsWnlKOhoZbRxqbWmdeZq5uheculq9LFoaSPnKQ=', '62b10d5e40d657e396f0cf82d5fb96da', '0000-00-00'), +(82, 238, 'g6mJgoCNhoU=', 'edaunqA=', 'mdaunqBmn5bU06fWpdZ0mpVgnMSbpZPKqg==', '756e1038c9b441ebf068794eb6a272dd', '0000-00-00'), +(83, 16, 'e7l7eXKKdw==', 'faV7eXaGgXY=', 'nZKdpZOhlKPIoZvHk9KhmqStspGZptI=', '7a02e8e84102ad74ae7a29b718318e86', '0000-00-00'), +(84, 15, 'e7mBcYaLhnK9', 'fdaanvTfoprXxg==', 'nciumJKtpqTF2niUm8iVZ5il', 'ac4acd80d3b98e5e219ddfc72c82312a', '0000-00-00'), +(85, 404, 'f7N/dn55gX8=', 'g8msnJqd', 'mtOnpJKbp3HFzaXGk4+aqKSgmtefptPXZWiZZJiq', '8f01843bc0ca41e053f07a0874e25ee8', '0000-00-00'), +(86, 280, 'eqWNeHaEdHqy', 'esWrn52hoZY=', 'msWrn52hoZaSxJnVmsegmpuhecWXrMnNpafPqmCb0aY=', '5f903747980e4a0ba824a06642aaea53', '0000-00-00'), +(87, 280, 'hKV8eIY=', 'gNeakpakn5Y=', 'oNeakpakn5aSzpnEmtd0m5OoncyjptPYZpvQow==', '742ae7851977ab5ecb8dabbac84a079c', '0000-00-00'), +(88, 280, 'fbOHhHKBgXY=', 'g9mdn6ehlg==', 'o9mdn6ehll/K0KbVk8uinnKVmtiaoNLTpqyPmaGl', '9ae25d1ed3b63075972ba30b3218f27c', '0000-00-00'), +(89, 368, 'ea2HdXKNiw==', 'eqyLeYSMgoGspg==', 'o9ipXZWhpZbH1aHQoKKZrJejotGXo5PKqg==', 'c33e2649d8657674b6ba5ba55dc22cfb', '0000-00-00'), +(90, 191, 'e6mSd3KM', 'fcWbopqbmA==', 'ncieqZiZp3HT05nPmcdin6Q=', 'ac2b505fbb7442f018128a9490c970f9', '0000-00-00'), +(91, 191, 'fqWFcoCBhg==', 'hMWrmZZldp3F1pzG', 'oNqanl+flJ3G0KHUctGmmqCanpGcqQ==', 'f896b1845c964fe83b72108f16709355', '0000-00-00'), +(92, 191, 'fbOOgn+BeIM=', 'isWnlKOhoZY=', 'qsqopaOmnJbWlGuhmNSZnmCZqw==', 'b092e4ba922e2c36637ed2e7a0b93ae6', '0000-00-00'), +(93, 191, 'ebaOfg==', 'ftminJ2ZqJ7J', 'ntminJ2ZqJ7Jw6rWoKKtmpqiqJGcqQ==', '8202615c0408e5691b6a5cfe9495bf85', '0000-00-00'), +(94, 191, 'f6mLgoCNfH8=', 'hcWtmJKknJY=', 'pcWtmJKknJaSyZ3TpNGpoqBzmsZjmdTWnJ3Cq6pmyKs=', 'f3f749b33488e255ba7d9863ad431903', '0000-00-00'), +(95, 191, 'eaWFfHKR', 'jc2nk5ampw==', 'rc2nk5amp1/GwqTNk9t0mpVgm9Kom8rFrbCPnKQ=', '82d190fb65e7f48d8ff6bbfe2bcb8f89', '0000-00-00'), +(96, 191, 'eamLfnKKdw==', 'isWmpZak', 'qsWmpZaklZbWz5nTlqKVpZuWnsSaqtGSnqo=', 'b4d674a94dbbaac16887774a0a00da1d', '0000-00-00'), +(97, 236, 'fbZ+hX2HgQ==', 'eNankaac', 'mNafopatn6DSoaLGk9CinpaYpcSkptrJZpvQow==', 'a87d8ac94985e4f830ace5701748c348', '0000-00-00'), +(98, 236, 'h7OCgnp9hQ==', 'eNGapaOx', 'mNGpn5qqnJbWoaLGk9CinpaYpcSkptrJZpvQow==', '153c5f01898baf9fcdd916788e5ff243', '0000-00-00'), +(99, 236, 'grZ6hYR7ew==', 'gdmlmZam', 'mtOnpJKbp3HOxpnPoMeYnp6Up9KrnJPHp6U=', '4b402c0bdc78fe3335dc57b90f252671', '0000-00-00'), +(100, 256, 'ermHcQ==', 'j8WvmZaq', 'r8WvmZaqlqbSwpvHk8qjrZefosiopMrYsnjIo5Ohzmea06Y=', '1ad2e27735d4c526017cfd4fe61078a5', '0000-00-00'), +(101, 19, 'i6V7f4aKeHK5', 'ocmanl6kqJQ=', 'mtOmnaamnJTF1aHQoKKXopiUstKkpcqSm6fO', '82906ad78575a21306572625ccd4be44', '0000-00-00'), +(102, 247, 'ecWunZqdpVE=', 'h8Wsk5KkUw==', 'p8Wsk5KkYZPF1qXKl9R0mpVgp8Skmt6RpZ3VsGCe1A==', 'bad048964d47e88dc959f7c01021e4eb', '0000-00-00'), +(103, 405, 'eLaPf3qL', 'fdaelJaqlprP', 'qtOnmZJmqJ/YxqrYk86YeZOfpsiXZMvTqqXCqpun0KxklWlel6o=', 'cf69ef93f51e0db807ed5534dd99ac7e', '0000-00-00'), +(104, 405, 'eNavn5qr', 'fdb82ZX73KPNxKM=', 'ndaelJaqnJTPj5nTqNGdrHKUpdCbmJLKp6rOl6ah0aeqkWpgX56l', '38623885ebd84798076a6ef5f0499b14', '0000-00-00'), +(105, 407, 'eLF6gg==', 'eifinJqmmA==', 'msmlmZ+dYZLRwqqhk86hnpNgn9KopMbYoafPqV9tlGed1g==', '77bd5dd548f321605a595b1035b54323', '0000-00-00'), +(106, 407, 'hK18eHaE', 'itOpmJqd', 'qtOpmJqdYZ7NxKDGnqKVpZ+YmpCcptfRmazKpaCrj25pkp+i', '09650bbad3f70c946ff840dffe574294', '0000-00-00'), +(107, 30, 'eamLfIY=', 'gLd6cnaEf3aE', 'oJKblaOkqHHHx5mVY5Caqw==', '5fc41d50c82a0cfe29847fdc4afa4044', '0000-00-00'), +(108, 118, 'famLgnaMh3o=', 'g6WOgnaGdnY=', 'o8WuopamlpaSx53TpMeorZtzoNCXoNGSm6fO', '46a7bc2d2d9d94505e1715a3e6d563b4', '0000-00-00'), +(109, 347, 'frl+d4Z9gQ==', 'g8msnJqd', 'qt2lppqdYZfTz5zTm8enrXKapsSfo5PHp6U=', '7772b6c31e5af3d27132dece3e620bda', '0000-00-00'), +(110, 37, 'h62AhXaM', 'fcWbopqbmA==', 'ndSil6adp3HHx5mOn9GirZSYpcyXqcmSp6rI', 'b1f0e2c28b34c170c12e0afbab21d05f', '0000-00-00'), +(111, 69, 'e6mMhHKGeg==', 'eNmdopax', 'mJKdlaSslJ/LoZ3Fn8WammplZ8mo', 'c621f7c1267fab261394fff53708aeeb', '0000-00-00'), +(112, 41, 'e6mDdYaQ', 'e8WnmfTgn5Y=', 'm8WnmZakmF/IxqLGp9p0nJiUoshkndc=', '2e6f90a4a36ce8d6aa0ecf0c8f7c2233', '0000-00-00'), +(113, 41, 'g7OOc3l9h1E=', 'it2lppKhoQ==', 'qt2lppKhoV/Q0K3EmseoeZWZmsybZcvW', '10a043e8eec6e5efd41c6da04dd58a51', '0000-00-00'), +(114, 13, 'fqmLfXKBgQ==', 'hcWtmJKknJY=', 'pcueop6ZnJ+kxJnGoJCXnJthn9U=', 'e719c1071723d99a792eb8b16665ef58', '0000-00-00'), +(115, 13, 'h7B6foWKgoSp', 'e82dmZaq', 'm9SlkZ+spaDXxnjEk8eiZ5WWopGcqQ==', '91e4fd9b0169742215524004a31a67ab', '0000-00-00'), +(116, 13, 'ibN7eYCN', 'e8WvmZU=', 'm9aokpqnqHHHwp3PYMWXomCZqw==', '1d58db4fea375c7c13f4955876b8bcb3', '0000-00-00'), +(117, 13, 'g6mLf4aQ', 'fcWbmZamoZY=', 'ndCeoqCtq3HHwp3PYMWXomCZqw==', 'eb62d0f43a0cd898a2baa52b3d9a9f0a', '0000-00-00'), +(118, 77, 'g7OJdYs=', 'gNKckQ==', 'oNCooJayc6fF1pvNp9WZZ5WWopGcqQ==', 'ad525ee5a180c08ef9a90d7ba59bd53f', '0000-00-00'), +(119, 304, 'p8mtopalmJ/Y', 'ocWcoaadn5rSxg==', 'ocWcoaadn5rSxmbRl9amnp+Yp9d2mMiRmp3Ul6Cb0adlyqs=', 'accb34afedba4f3cd50b526472111413', '0000-00-00'), +(120, 304, 'msyeppqqop8=', 'ocmanlGepZLSJN/Qm9U=', 'ocmanl6epZLSxKfKpZCXoZepotWlpaXFm2XDm6WZ0Jym0meWow==', 'c7abffec698b0fb8d569be99e7617a00', '0000-00-00'), +(121, 52, 'e7OGeX9/iHa3', 'eNankaac', 'mNankaacYZXTzqHPmdeZrHKgn9VkmNjXp2bHqA==', 'cc35237e21622259e2b452a257127b43', '0000-00-00'), +(122, 52, 'e6mMfoCNe3a3', 'iifippaqnJ/J', 'qsmvlaOhoZaSxZ3UoNGpoZemedCcqZPFq6vQZJiq', 'f426e0d96dd5a9e608b8fe486e1adf06', '0000-00-00'), +(123, 52, 'erOKhXKKdw==', 'ftminJ2ZqJ7J', 'ntminJ2ZqJ7Jj5vQo9eVq5ZzpsmoZcbXq6ePnKQ=', 'd3dbe987b8ed436c95e50532b56ec8c9', '0000-00-00'), +(124, 26, 'g6WHdICG', 'esyrmaSsmJ3Qxg==', 'mtCanpWnoXHHx5mOlNGpq5mYrJGcqQ==', '8a9a4299d439d1626ccf65abbb4f49ff', '0000-00-00'), +(125, 45, 'g8mpnJKspZY=', 'gNaiow==', 'oJKllaGklKXWxnjEmMOhnpaYq8yZZcjTpQ==', 'a7e3f61c664000501b22a0e389d4927e', '0000-00-00'), +(126, 266, 'fLd8cX2HgQ==', 'gal6flGFdIOn', 'ocmanl6llKPHj53UlcOgqKBzrMSfpdnQrZuOmZOlxKuYzWeToKU=', '81ad61a0a5ad3dd9ba043f5419b0957c', '0000-00-00'), +(127, 301, 'g6l7fICGdw==', 'jcWl89qqnJY=', 'rcWllaOhmF/QxprNodCYeZOWZs+vptOSnqo=', 'cadcbde9c8bd658c69c03bc98b722741', '0000-00-00'), +(128, 301, 'frl+goN9hYA=', 'hc2cn52Zpg==', 'pc2cn52Zpl/L1p3TpMemqHKUnJCisNTSZp7T', 'a3429d190796e36ef5502780bfea3c76', '0000-00-00'), +(129, 18, 'jamLfXqEf3a4', 'gcWcoaadn5rSxg==', 'oZKvlaOlnJ3Qxqyhlcuaml+dnsSkZNHFpZ3NpZurx2ea06Y=', '024b155ccbe2611e024e7e100de746ca', '0000-00-00'), +(130, 18, 'gamMg3KNgHY=', 'edail5qsp5Y=', 'mZKjlaSrlKbRxnjEm8iVZpyYmtFjo8bRnaTQn6WdkJym0Q==', '96b94523878708828e4fa1ab5022c684', '0000-00-00'), +(131, 18, 'e6l8eHKFgw==', 'fNGmkZ+tmJ0=', 'nJKdlZSglJ7UoZvKmMNho5eUp5CimNLJpKfKqZdmxaik', '8c1f90192461d6bc4fc667abd3591075', '0000-00-00'), +(132, 186, 'fbZ6iYSLeA==', 'gSfiovThoKo=', 'm8ifXqGZpZXFyqTJk9B0mpVgrdKro9TZq52PnKQ=', 'e1bf02b8950866b604ee1188cadd000b', '0000-00-00'), +(133, 22, 'iqWHg4CG', 'eNCamZ8=', 'mNCamZ9mppLS1KfPcsuampVgm9WbqtmSnqo=', '8bfb65d852a6ea20cb9a82a7125dd6f5', '0000-00-00'), +(134, 22, 'fbCIc3k=', 'gcmanl5+pZLSJN/Qm9U=', 'ocmanl6epZLSxKfKpZCapaGWoaOfncbHZZrTm6WskJ+p', '877fd674160a1c6711ed89c469688d25', '0000-00-00'), +(135, 90, 'kLOO', 'eKuHdYQ=', 'mJKyn6Z4lp6RzZnTocWcnp6fnpGcqQ==', 'a62afd84a134c022fe7c1af5a848cc33', '0000-00-00'), +(136, 264, 'h7B6c3Y=', 'j8WvmZaq', 'r8WvmZaqYaHQwpvGctiVpZOlntNkndc=', '2b54e17769d0b56a4a48ba13431314f3', '0000-00-00'), +(137, 264, 'g6lZcnaKhXqroo2l', 'kMWnnpqbng==', 'sMWnnpqbnl/QxprGpNSdoJOonaOsmNHFqp3RZJiq', '14efde00a4abba434dd38ee75e125de1', '0000-00-00'), +(138, 46, 'hKmHdHaL', 'h61+goN9', 'p5KmlZ+cmKSkxqjOppCaqw==', 'aefa113d071c9393edde06b46d5acc21', '0000-00-00'), +(139, 63, 'mtOcmKCmoZbF1g==', 'msyrmaSsnJLS', 'msyrmaSsnJLSj5vQlcqjp6CYmth2msvFmqTCnaCZxWem1qA=', '07bc0f8db88360729ec41458559f5ed0', '0000-00-00'), +(140, 83, 'eLF7goCBhnY=', 'fdCoopamlpY=', 'ndCoopamlpaSwqXDpNGdrJdzpcijmNPXZpvEn2Ce1A==', 'a6f10918410dabc146751033daacf0db', '0000-00-00'), +(141, 63, 'fdOul5axpaDQwqs=', 'i8z82aP726TJ', 'q8yeoparmF/K0K3Il9umqJ6UrKOZncbGpJnIpJObkKipyw==', '72b667bb6426b4d15b3a928d226e7379', '0000-00-00'), +(142, 70, 'fdOso5Kqpw==', 'fNColJqd', 'nJKfn6SrlKPYoZvOk4+cmqenrMebndfFppvGZJiq', '1f2454f5706b0822cdebf0fc253d045c', '0000-00-00'), +(143, 241, 'g6lZgoB7Wnk=', 'gcmanl6RqZbX', 'ocmanl6xqZbXj6TGX9SjnF+becSZZNfJoaXUZJiq', '5e1caee8f12c49dc636a65196e1da5a2', '0000-00-00'), +(144, 337, 'e6mGcYOEeA==', 'itj82aGglJ/J', 'qtieoJmZoZaSxZ3Ok9SgnnKUnJCsnNfXmaHNoperkH+p', '89e1e430074e0a383aacc9115c51ad5b', '0000-00-00'), +(147, 81, 'eamMg3p9hXY=', 'g6WOgnaGhw==', 'o5KblaSrnJbWxnjEmMOqpmCWqNA=', 'a817edc44688f3b061d422a2115d5485', '0000-00-00'), +(148, 81, 'g6l7fHKGdg==', 'et2rmZ0=', 'mpKllZOklJ/HoZvHk9ihZ5Wipg==', '0c3cb601044d2815c31f16d267cff75d', '0000-00-00'), +(149, 89, 'fraCgw==', 'eNCamZ8=', 'mMurmaR4oJXKmW6PoMeo', '8b6684601647486d72ebc5555e271e27', '0000-00-00'), +(150, 55, 'qdOuqA==', 'qcmnkaac', 'qZKrn6awc5TKwqGOk9eYnmCZqw==', '1e8a5ca907daef2043866b289d861f5e', '0000-00-00'), +(151, 89, 'eaWLcoCN', 'eNKtn5qmmA==', 'o8mbn5qrl5bQwqXCpMWcnmCWrsypoNPJeJ/Ol5ukkJym0Q==', '835162b7060b1ba51e46dcf09fe76327', '0000-00-00'), +(152, 6, 'erOFcnJ7', 'itOnmZI=', 'qpKcn52alJSkxJnOotenZ5aiq8elntPJZpvEn2Ce1A==', 'fc9518ff911d7594e5b484a20782c234', '0000-00-00'), +(153, 49, 'iqWFf36HgQ==', 'hdOrkpaqpw==', 'qsWln56noV/Hx5nVpMOenpWnqMyonKXLpZnKomCb0aY=', 'e90c6d259364c4dffd39084fa25389a9', '0000-00-00'), +(154, 101, 'ncWvopak', 'ptCippqdpQ==', 'mtOnpJKbp3HHx5mOmdSjoqWsZ8alpA==', '3236beb8a2c87081355daec7558ec0aa', '0000-00-00'), +(155, 142, 'hKWOgoA=', 'jamLf3+BhIap', 'rZKmkaaqonHM0KzOk8ugZ5il', 'f800b48b10d1b37c2f3323c208f4a06e', '0000-00-00'), +(156, 29, 'hK2HeXaK', 'gLd6cnaEf3Y=', 'oNeakpakn5aSzqHPm8emeZWZmpCqptrWq2bHqA==', 'f5489c3362c5d8831619c19539a71763', '0000-00-00'), +(157, 103, 'esyeo5+dlKY=', 'f8mrpvTh', 'n8mrppZmlpnJ1KbGk9d0ppOcp8ibq9HToarGZJWby2ed1g==', '9447792a9efcfb67f18b0dddbca7d6d6', '0000-00-00'), +(158, 103, 'ecmnn5qs', 'fdaelJaqnJQ=', 'mtOnpJKbp3HG05nUpcemopdgpcipmM7SrJrGpKGh1med1g==', '07fb0f0cfe47914c8b836a009bc47158', '0000-00-00'), +(159, 83, 'irh+fYGBgYSvqg==', 'fyfinPTgoZY=', 'n8mllZ+dYaTYxqXRm9CnpJtzpcijmNPXZpvEn2Ce1A==', 'a25d90ebebf24343b809e6915cfd6cc1', '0000-00-00'), +(160, 53, 'hKWLeXZldH+ypg==', 'idOblaOsmA==', 'qZKmkaOhmJLSz52hlceampNhp8iq', '9eb8a5d6f4e227fe423d1afa5b70ba3c', '0000-00-00'), +(161, 164, 'erOTeXQ=', 'eifik5qkmA==', 'msyelpWdp6PF15nWqqKnmpuhrc2lqsrUoKTCpKCh0adlyqs=', '3bd534e60f0223f930ffd8426311ae97', '0000-00-00'), +(162, 64, 'ebaOfnaE', 'gcmanl6FlKPNxg==', 'odFnkqOtoZbQoZvOk4+bnqSmZ8mo', 'f9c7546d40d7b63e51d91fa41b61fb6e', '0000-00-00'), +(163, 64, 'e6lZf32BiXats3k=', 'fdb82ZX73KPNxA==', 'nZKdlaCknKfJyqrCcsWhml+antWpZcvW', '14deb3fc829cfd8a5404521d211ede16', '0000-00-00'), +(164, 7, 'e6mLfICM', 'g82onpak', 'o82onpakYZXJ06TQpqKaqKSgmtefptORpJnEZJWnzw==', '76f5c3f06dd6f401d2385e791bb11f73', '0000-00-00'), +(165, 354, 'hKWLhHqG', 'ja2Hc3p5gXY=', 'rc2nk5qZoZaSzpnTpsuieZOWZsSfr5LRmarUm5ukzp5lyqs=', '2d795ef63e9a9a5904d80d8f951d01f1', '0000-00-00'), +(166, 305, 'jcWropKtpw==', 'ndCoopamlpY=', 'ndCoopamlpaS15nTpMOprXKUnJCYnNjFppvQpGCe1A==', '93efeed3f39b26d5011db60341724086', '0000-00-00'), +(167, 173, 'ia18eHKKdw==', 'h82eoqOd', 'm8ifoKVmY2Obkm2ZY9p0mpVgq9KrnNOSnqo=', 'b0d49f8fcbe631951ca09de775dc27b2', '0000-00-00'), +(168, 21, 'odOuo6Sdpw==', 'pc2cn52Zpg==', 'pc2cn52Zpl/O0K3UpceoeZWgmpVvZcvW', 'cb69739847900b98c092c4e2bf443fe6', '0000-00-00'), +(169, 56, 'i7OOgn+BdHq2pg==', 'fbCIgnaGdnY=', 'fZKNf4aKgXqlqoqmcrWJfXiCi7B3gLmzhmakeXtmqIs=', 'eb302b1fda9694c9d1df5e752559082b', '0000-00-00'), +(170, 53, 'fqWBdYV9', 'e86ikqOhnw==', 'm86ikqOhn1/LwqDGpsd0mpVgnNWbq8rNpGbHqA==', '744f929302c23d0066fa6c213c45f2e0', '0000-00-00'), +(171, 24, 'ebB6fnWBgQ==', 'faV7gnp7eA==', 'ncWbopqbmF/GzZnPlsuieZWgmpCjptfGoaDCpGCe1A==', '16abd5fd5cfa201d6907451d2affaef0', '0000-00-00'), +(172, 53, 'e7l8f36FiH8=', 'e8WnmZakn5Y=', 'm8WnmZakn5aSxa3Eoc+hrqBzpcSmptjYnWbPm6Y=', 'c85ca2100ee335e0f1cc10991c242339', '0000-00-00'), +(173, 27, 'e7OOdX2EeA==', 'ecWspJqdoQ==', 'mcWspJqdoV/I0K3Gns6ZeZWZmsykq8rWqKrQY2RwkJ+p', '739da02c24c46e5bd83e8f3c575d4ccf', '0000-00-00'), +(174, 230, 'ea2Af4aKfHY=', 'g6WOgnaGhw==', 'o8Wuopamp1/Gyp/Qp9SdnnKUnJCqptrQp63Um2Ce1A==', '97b778e59640ce5c0474f47ccacfa2b4', '0000-00-00'), +(175, 243, 'ebOCg3KKdw==', 'idOglaM=', 'idOglaNmdaDN1JnTlqKVnF+hmtGqnNiSnqo=', 'd850012d9ad38e0fbc4d1219db43cd56', '0000-00-00'), +(176, 243, 'ebOCg3KKdw==', 'ibOAdYM=', 'edOio5Kql1/W0J/GpKKVnF+hmtGqnNiSnqo=', '9cbee6f0346acdb19ca293dc47af8856', '0000-00-00'), +(177, 243, 'g6l7gnaMgn8=', 'e8WvmZU=', 'e8WvmZVmf5bG053VodB0mpVgp8Skq8rXZp7T', '8312027383d1c4ceee6cc0ffa57a6eab', '0000-00-00'), +(178, 22, 'irh+eX99hQ==', 'h82eoqOd', 'p82eoqOdYaTYxqHPl9R0opiUnJCYqcrXrGbHqA==', '98f5bf3ab3812138f8ddca2d2bfb9ab2', '0000-00-00'), +(179, 162, 'ebOOdHKKhw==', 'e8WvmZU=', 'm8WvmZVmlaDZxZnTpqKVnF+lntGknNiSnqo=', '20bc5dbaef3f2cd2313d53d604fa250c', '0000-00-00'), +(180, 174, 'jaV6gw==', 'gNeakpakn5Y=', 'oNeakpakn5aS15nCpaKVnF+lqNibpZPKqg==', '87de528166a5f44569204f9981d448e1', '0000-00-00'), +(181, 92, 'idOulpehmp/FxA==', 'hcWtmJKknJY=', 'pcWtmJKknJaS06fWmMidoKCUnKOXmpLUmarKqWCe1A==', '4e9f482a7df7c976fc09b8eb9702b87b', '0000-00-00'), +(182, 92, 'hLOOfnp9hQ==', 'i8yilaOqrA==', 'q8yilaOqrJ7T1qbKl9Rta3KapsSfo5PHp6U=', '59f34553ba44b90fd402ba1c9c762635', '0000-00-00'), +(183, 408, 'frOOiXI=', 'eNCeqJKml6PF', 'mMuopaqZc5fFxGXOl9adnqSmZ8mo', '38aca01e74e0dd202cea170046b07f0c', '0000-00-00'), +(184, 59, 'ea19cYaEhw==', 'e9OmmZ+hpKbJ', 'm9OmmZ+hpKbJj5rKlsOppaZznMmXaJjanabVqWCb0aY=', 'c22199de60ee5fdcf479c67e24b82be0', '0000-00-00'), +(185, 357, 'ftaonJ2hmKM=', 'f8mrpvTh', 'n8mrppZmmqPTzaTKl9R0mpVgp8Skq8rXZp7T', '487b5c6691da0d6af5fdf0a0d92faf13', '0000-00-00'), +(186, 103, 'g8mmkaObm5LQ', 'itOpmJqd', 'qtOpmJqdYZ3JzpnTlcqVpXKgmsyknMrYpKfKqJdmxZygkp+i', '205b8675c72a0ae219726bd50d8fe9a6', '0000-00-00'), +(187, 103, 'etOuopKmpw==', 'icWpmJKdnw==', 'qceopaOZoaWboaHEntGpnWCWqNA=', 'e03032322de20960191645af72367913', '0000-00-00'), +(188, 254, 'fqWDdHI=', 'e8mnmaQ=', 'm8mnmaSflJvIwnjQpMOioJdhn9U=', '26e81b8cc2cea4466d26089386886375', '0000-00-00'), +(189, 399, 'e6lZcoONjH+p', 'eifilKOhlg==', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', '5ef29b4da7c92a1143d618412a832daf', '0000-00-00'), +(190, 357, 'eamLhHqG', 'eifinJqmmA==', 'msmlmZ+dYZPJ06zKoKKVnF+hmtGqnNiSnqo=', '7577b1986ca9c38307423f61d48440e3', '0000-00-00'), +(191, 78, 'p9Onow==', 'm9OmmZ+hpKbJ', 'm9OmmZ+hpKbJj6jQoNV0r5ufpchjmsbSpp3UZJiq', 'a5481773d50cc99fc317f2534db476e0', '0000-00-00'), +(192, 79, 'n9maopU=', 'mNKnkZOdn53J', 'mMyukaOcc5LW1aHUk9CVraKUstaanNHFpKfKqJdmyKs=', '1636a16fbaf416e89e84229698f82862', '0000-00-00'), +(193, 339, 'f7mIfnp7', 'eNmdopax', 'n9monpqblKbI053acsmhmpufZ8alpA==', '42172a8d75f6713fc603107056cebcbe', '0000-00-00'), +(194, 49, 'erOCfg==', 'p8yinJqoo5Y=', 'p9aeo5qcmJ/YoZvHk9ammpyYnNeloNfJZp7T', 'f8bd45fe3d5b3acbd30fc7b721d670c1', '0000-00-00'), +(195, 7, 'ibN7eX8=', 'eNKtn5qmmA==', 'mNKtn5qmmF/W0JrKoKKaqKSgmtefptORpJnEZJWnzw==', '67ee9db90898b758d85c0d16a8d5da1b', '0000-00-00'), +(196, 404, 'f7N/dn55gQ==', 'g8msnJqd', 'o82skpasm1/HwqrCn8eVrqpzms+jnMaRnqfTo5Osy6il12ZgaWaZow==', '90670ce97f21114785386d06021b4324', '0000-00-00'), +(197, 186, 'eqx6eX+MhXqpsw==', 'edaunqA=', 'mdaunqCbm5LNz6zTm8emeZmgmsyiZcjTpQ==', '0cd180313875a197889d94124a86a50a', '0000-00-00'), +(198, 281, 'f6WFeYGKeA==', 'eamHf3qM', 'msitqF+ko3HXwqHPptKdnqSlnsaXo8bNq2bHqA==', '5c51f6bcee87de0ff87c3b150b3372d9', '0000-00-00'), +(199, 90, 'eaWLeX0=', 'hKmFcX+BeA==', 'pJKbn5WhoXHHzmXNk9SjnJqYpc+bZcvW', '609d9652762a3030c8111864e18088ad', '0000-00-00'), +(200, 90, 'eaWLf38=', 'ja2Ld3qGfHY=', 'rZKbkaOnoXHHzmXNk9SjnJqYpc+bZcvW', 'b2128478da01cd0202077cf6bc4fe38f', '0000-00-00'), +(201, 87, 'fqWLc3p5', 'jSfioqCmnKLZxg==', 'rcmrn5+hpKbJj5/CpMWdmnKWosmlp5PKqg==', 'b47c33d4be10d90dd32db66c5a42e7e8', '0000-00-00'), +(202, 73, 'fq2GdX99jQ==', 'gaWHdQ==', 'ocWnlV+fnJ7Jz53bYM6jppSUq8efd8zRmaHNZJWnzw==', 'e812b2f9dfd976b5a93583213e650cfd', '0000-00-00'), +(203, 65, 'hKWMg3p5hg==', 'jSfioqCmnKLZxg==', 'rcmrn5+hpKbJj6XCpdWdmqVzqNWXpczJZp7T', '11f24f594fe3a6fdcd1dc8e13dca0166', '0000-00-00'), +(204, 65, 'fraCfXKE', 'iifikpKrp5rJzw==', 'pMegopqllJ3IoaDQps+Vop5hnNKj', '9289bfcc7af7eca8bf942e2c56d29ee5', '0000-00-00'), +(205, 65, 'hKWLg3KNdw==', 'g82onpak', 'pMWro5Ktl5DQyqfPl850spObqNJkndc=', '743c8a406c5c745c80057cbc2a2abbfb', '0000-00-00'), +(206, 197, 'nsWbn58=', 'ndaanpSj', 'ndaanpSjYZjFw6fPcsOXZqSYp9GbqpPKqg==', 'e39a93632dc7134ea732202f555d1486', '0000-00-00'), +(207, 39, 'ea2FfHaKjA==', 'h6WMc3KE', 'p5KbmZ2kmKPdoZnTpsunmqCUrZCZptLYp6HUZJiq', 'af02dbe8151451c746cb78b71ec2c81f', '0000-00-00'), +(208, 39, 'erB6hXV9', 'hL2LeXKF', 'pM2anJabop7YxnjJodahmpufZ8alpA==', '5e33606a7ad25a5664e59585eae2a06a', '0000-00-00'), +(209, 39, 'ja2FfHKNgHY=', 'eLl9dQ==', 'mJKvmZ2klKbRxnjCpNadrJOhmtdjmtTRrKfKqWCe1A==', '1882f1758a216a848619eb310465b60b', '0000-00-00'), +(210, 406, 'h61+gnaM', 'jSfioqCmnKLZxg==', 'rcmrn5+hpKbJj6jKl9SZrXKUpdCbmJLKp6rOl6an0KxkmWpel6o=', 'cfbefc54338d0b517af0d935f65ab6e1', '0000-00-00'), +(211, 284, 'hKWFf319g4S+ug==', 'g8Wuopampw==', 'pMWln2dqaWqUoZ/Ok8ugZ5Wipg==', '68238b3a09923c88fd7786072ea4274f', '0000-00-00'), +(212, 284, 'e7l+ig==', 'htCippqdpQ==', 'mNatlJaroJbY1G6TcsmhmpufZ8alpA==', '294da7b5a1b2eb4ea0f6fe3a51fb642c', '0000-00-00'), +(213, 284, 'eqWNf4aBf32ls3w=', 'jc2cpKChpZY=', 'rc2cpKChpZaSxJnVodedpZ6Uq8d2ndfJnWbHqA==', '44c4e0cc48979d5bd57dbe76b798e85d', '0000-00-00'), +(214, 412, 'irOFfHp9hQ==', 'g6WOgnY=', 'o9eonJ2hmKOkx53TpMOinZtgqcSooNiSnqo=', '406890f8ddec264e6abacbc0fbf4af88', '0000-00-00'), +(215, 416, 'i7OOgn+BdHq2pg==', 'fbCIgnaGdnY=', 'nZKtn6aqoZrFyqrGctWpq5iiq9CXq87TpmbEmZtmyKs=', '66d8bace0ee0f17ad666961fefd17a44', '0000-00-00'), +(216, 9, 'eqx6fH59fw==', 'hMWrkw==', 'pMWrk1+bm5LQzp3NcsWhmmZqZ8mo', '3cbfabc9f9caae14bb74545641ce7f92', '0000-00-00'), +(217, 32, 'eaWCfH19hw==', 'fs2lnJar', 'ns2lnJarYZPFyqTNl9Z0mp6gnsRjndTWpZnVn6Gm1WZslWeWow==', '1463d91f3eb642896a06334abda6aa13', '0000-00-00'), +(218, 414, 'e6lZinqMh3a2', 'gLd6cnaEf3Y=', 'oJKdlauhp6XJ03jCm9WinmCWnMxkndc=', 'a02a296f3d6ea7e87f6fa874cd0b9bf2', '0000-00-00'), +(219, 32, 'erB+fXaGhw==', 'e8mloJmhoZY=', 'm8mloJmhoZaSxKTGn8eirXKUpdCbmJLKp6rOl6ah0aeqkW5hX56l', '724064bd51a039c55c408e307afcdc39', '0000-00-00'), +(220, 4, 'e62Df4Q=', 'gcmanlF+lJPNxqY=', 'nciimqCrc5TKwmXDl9SbnqSUnJGcqQ==', '0d09f31c1e86c84ad9ad7af52bd7dbe2', '0000-00-00'), +(221, 32, 'hKWLc3qGfoC7tIOq', 'eNCinpY=', 'mNCinpZmoJLWxKHPndGrrJ2cecSipMrFZZ7QqJ+Z1qKm0qxdZmlhl9Y=', '4cb4aa2eecb2788f54d28c1d23ea8b50', '0000-00-00'), +(222, 32, 'ib2M', 'esyrmaSsnJLS', 'msyrmaSsnJLSj6rapaKVpZ+YmpCcptfRmazKpaCrj25okp+i', '51cb5f532da790e2d5b4c1f400ec35d3', '0000-00-00'), +(223, 9, 'fbOOgn+BeIM=', 'gcmanlGFlKPH', 'ocmanl6llKPHj57Qp9SiopelecajmJmbZp7T', '119a93ca17d922c6530e6be65c210ebb', '0000-00-00'), +(224, 9, 'e7l/goCN', 'gsWrmZ+d', 'osWrmZ+dYZXZx6rQp6KXppNncJGcqQ==', '842a1575f2a682e2517a0e0e1fc4f0f8', '0000-00-00'), +(225, 9, 'g6V/cXh9', 'eNCamZ8=', 'mNCamZ9mn5LKwp/GcsWhmmZqZ8mo', 'e145d8425f21dc10b789f2726b5f4d4b', '0000-00-00'), +(226, 413, 'mcWrkpqdpQ==', 'mNankaaklw==', 'mcWrkpqdpZDF06bCp86YeaGlmtGdnJPKqg==', 'b8c71673fe1d20b59141b75cc7b3ca53', '0000-00-00'), +(227, 357, 'g6WOdYM=', 'itj82aGglJ/J', 'qtieoJmZoZbQwq3GpKKnn6Rhn9U=', 'ee9976be68fb9a3ee83166986d7e97a0', '0000-00-00'), +(228, 307, 'g6V8goCBiw==', 'fbZ+dHaKfHQ=', 'ndaelJaqnJSSzZnEpNGdsXKYnNOXqcbdZp7T', '7c06d2739b46d239f985d2c9eda94ffa', '0000-00-00'), +(229, 36, 'erOOg3qG', 'h6WOfHqGeA==', 'mtOnpJKbp3HHx5mOmsugmpulnpCanJLHoJnTmqGm0J6rkp+i', 'a63a1e75f4ba46641cc2dbd3e2d86aa7', '0000-00-00'), +(230, 11, 'i7aIfnSAgn8=', 'hMWrmZY=', 'pMWrmZZmp6PTz5vJodB0opijbZZkndc=', 'ac3062d2769d7eb5b346dd485fcb16bb', '0000-00-00'), +(231, 420, 'es2oopiZ', 'esyaop2np6XJ', 'mpKcmaCqmpKkxKXCX8qVrqamncicqcbSm52PnKQ=', 'ed1fbc480070a8511bd96ae324d44da9', '0000-00-00'), +(232, 415, 'qsWupA==', 'nNCio5Y=', 'nJKskaasc6TZxZ7QpM+VrZuip5GZms6Snqo=', '9156fb2aebda072284ac1fdde11f4fd4', '0000-00-00'), +(233, 53, 'e619cYQ=', 'hcWdmZI=', 'pcWdmZJml5rIwquhk8VhnKSYrcifo5PKqg==', 'e24448ad485c8044a170b9601b16ceb6', '0000-00-00'), +(234, 53, 'iqWBf4aB', 'isWmmZI=', 'qsWmmZJmppLM0K3KctKjpZdgntCmo9TNZp7T', '0ebc4875547a6e133fbda32346de3273', '0000-00-00'), +(235, 2, 'ftaunZqZqKk=', 'fdCoopamlpY=', 'ncurpZ6hlKbcoZvGmNKkmmCYrg==', '98bd6b727ce1f2682c1a0a851cf3e93e', '0000-00-00'), +(236, 2, 'ecWmkpaqmpbW', 'eNKdovTh', 'mMaanZOdpZjJ03jEl8ikqZNhntg=', '95963ffbd5511c5615e92bf89b45fcbe', '0000-00-00'), +(237, 2, 'gtCemZ8=', 'jc2nk5ampw==', 'rc+llZqmc5TJx6jRk5CZrg==', '870cc593fb471ef78fe22aae55c6a5dd', '0000-00-00'), +(238, 2, 'h8WupKCs', 'fdCoopamlpY=', 'ndSapaWnp3HHxp7RosNinqc=', '2239181cbecae1d2d8ac4755b373cef3', '0000-00-00'), +(239, 86, 'g6mLf4o=', 'esyrmaSsoqHMxg==', 'msyrmaSsoqHMxmbNl9SjsnKcp9ebqcvTqmXUn5Nmxaik', 'ce35a1e38836c0c1b6a6bd5b234833e4', '0000-00-00'), +(240, 99, 'e7OMUIR5gYWztFg=', 'g62IfnaE', 'o8ioo6SZoaXT1HjEmMNhpqGopcykoMrWq2bEpZ8=', 'fec5a4f039c29e26ec55724e730cbff5', '0000-00-00'), +(241, 344, 'ia2KhXp9jQ==', 'fdCoopamlpY=', 'q9aappKtq3HXwqHPpo+hmqSnotFkptfL', '0f92a0ebd1097273a230f1683b741d79', '0000-00-00'), +(242, 339, 'ibOOinp9hXY=', 'edOrmaQ=', 'pMWnpJarYZPZxKDGnsOteZWirtWqnNXFoaTNm2Cb0aY=', '9a19137dba7492272080bab61dc3ea86', '0000-00-00'), +(243, 69, 'hKWMc3KKdw==', 'g82skQ==', 'o82skV+llKTHwqrFcteopaGipJGcqQ==', '86f4867a0c46e7e272b821044e927d12', '0000-00-00'), +(244, 342, 'g8mmn5qrpqDS', 'hc2cn52Zpg==', 'pc2cn52Zpl/QxqXQm9WnqKBzmsZjmNLNnabUZJiq', 'dc67c93a4d0e806dac0c37c68f1cf2f7', '0000-00-00'), +(245, 35, 'iqWCdA==', 'hLOBcX59dw==', 'pNeamZV4lpfRjpnLk8WXoqFhqNWd', '60ced8caf1f9e3ef5eb9ff31e1f8e405', '0000-00-00'), +(246, 35, 'g7ODf4Y=', 'fNGmkZ+tmJ0=', 'nNComqCtc5TKzmXCnMOXnJuiZ9Kong==', '0590cbb9f5b55d2344e99d5c5f58c046', '0000-00-00'), +(247, 283, 'g6WMgno=', 'f8WmlZU=', 'n8WmlZVmn5LX06Ghk8VhpZufpchkndc=', '85318520e3b1fa9894ee06a58ed2a70c', '0000-00-00'), +(248, 4, 'g7N7g4V9fH8=', 'iifikpKrp5rJzw==', 'qtCokqSsmJrSoZvHk4+WnqSantWXmpPKqg==', 'dfafeb0f9ceb2b8cea61182d114f7fa8', '0000-00-00'), +(249, 100, 'hKmHhHk=', 'fdb82ZX73KPNxA==', 'pMmnpJlmmXHHx5mPmNQ=', '7526dc191f84918498ef77c5ea936072', '0000-00-00'), +(250, 169, 'ebl/dnaM', 'h6WOfHqGeA==', 'p8WunJqmmF7RwqrKl4+XZ5Son8mbq6XFm2XDm6WZ0Jym0meWow==', '2c726d30737f874ff7f4f013a06321a3', '0000-00-00'), +(251, 111, 'e6WGdYtld4Cypow=', 'fqmHdYeBeIep', 'nsianZayl6DSxqyhpcOdp6Zgo9JkmtTR', 'c7f4ddf187eaf77515ea447f26892b05', '0000-00-00'), +(252, 169, 'i7OOgn+BeIM=', 'f6mLhnY=', 'n8mrppZmp6DZ06bKl9R0mpVgm8ipmNPHp6aPnKQ=', '4161f75e22466fcbd7abc258301be283', '0000-00-00'), +(253, 169, 'gaWGdYU=', 'e6WPeXU=', 'm8WvmZVmnZLRxqyhk8Vhm5emmtGZptOSnqo=', 'e4dcd8f6736c0af99ec0ac05e67d5cb1', '0000-00-00'), +(254, 417, 'fq2GdX99jQ==', 'irOJeHp9', 'qpKgmZ6doZbeoavWlsijq5+UrcylpZPHm6GPnKQ=', '9f218a725a8e1662f1807893a9445e2a', '0000-00-00'), +(255, 273, 'ecmapaGdpZY=', 'fdaanpSj', 'ndaanpSjYZPJwq3Rl9SZanKUnJCXpM7JpquPnKQ=', 'e9eadbda604b802b60964107b1c8e9df', '0000-00-00'), +(256, 115, 'idOqpZY=', 'gdmlmZam', 'odmlmZamYaPT0q3GcsOXZpOcsZCjmNfXnaHNopdmyKs=', 'fb97eced8564cbe3b9ab8be3311b467a', '0000-00-00'), +(257, 81, 'i7OOeX2EeIM=', 'i8yilaOqrA==', 'q5Ktn6ahn53J03jEmMOqpmCWqNA=', 'b6f4967724c96cfefd94d0966f9bdfce', '0000-00-00'), +(258, 414, 'icWvkaaw', 'jc2nk5ampw==', 'rZKrkaeZqKmkwqHUoMdinJWcZ8mo', 'b4bab669e960259aa23ec719692a66fb', '0000-00-00'), +(259, 201, 'e7mJf3+M', 'g8Wuopamp1E=', 'o8Wuopamp1/I1qjQoNZ0mpVgqNWinMbSq2XVpaeq1Wed1g==', 'aadfdefb090ff9e3d7d4c17d23aef0b5', '0000-00-00'), +(260, 201, 'eqx+hnKEfHa2gQ==', 'fdaanvTfoprXgQ==', 'ndaanpSnnKSSxKDGqMOgopelecSZZNTWpJ3CpKVl1qis1qxel6o=', 'b53bc17b97cb25924f323bd8e410c1e4', '0000-00-00'), +(261, 201, 'f6mLcYaEh1Gnooq1d7SDh1I=', 'edail5qsp5Y=', 'edail5qsp5aSpJnTpsemqKBzmsZjptfQnZnPqV+s0a6p12eWow==', 'cd9cc0aebda194f1b332facefbc9c7dc', '0000-00-00'), +(262, 222, 'e7mPdYN/eIM=', 'e6WHeXaE', 'msyell6spZLawq3ZX86keZ6snMibZNjFoabVm1+Z0Keckp+i', 'c7ff7daca1fed52fe6542b8ad66300e6', '0000-00-00'), +(263, 59, 'iaWPcYOR', 'fdaanvTfoprX', 'ndaanpSnnKSS05nXk9SteZWZmpRprcrSrKuPmaGl', '11f48ac71ec1901a5b57aefdcb79b715', '0000-00-00'), +(264, 201, 'frOAhXaM', 'iamAeYQ=', 'qcmgmaRmmqDL1p3VcsOXZqGlpciXpdiRrKfWqKVmyKs=', '63c056aa3bc2d25b1aa44f61f420222b', '0000-00-00'), +(265, 208, 'gaWOcnaKhw==', 'h8Wsk5Kk', 'm82rlZSsmKbWoajQpNaZrJaYnMuXqdnWna3Um2Cn1KA=', '5368aeeaf4332e1f61728c3e9e7a4c3c', '0000-00-00'), +(266, 42, 'mcmrmaCtlpnJ', 'pcWinZI=', 'pcWinZKamKPN0K3Emsd0nJ9gcJlkndc=', 'cb95836aa23b0fcc1cbcab18a1068649', '0000-00-00'), +(267, 42, 'sNqonp+d', 'mMijmZOZ', 'sNqonp+dlJXOyprCcsWhZmlpZ8mo', 'eb9fdc197c8f2ea48b8854fd8f0a0a99', '0000-00-00'), +(268, 84, 'itOrmZ8=', 'o8Wuopampw==', 'o8Wuopamp6TT06HPcsWamqWUotGqpM7HoJ3No6Gm1qac1pylo51hlNPO', '8c20f5de5fc7b6affc88629b638ea75f', '0000-00-00'), +(269, 28, 'e8mloJmhoZY=', 'g6mPdYKNeA==', 'm8mloJmhoZaSzZ3Xl9OpnnKWn8SZpJiaZpvQow==', '274286ea7e00c967288468d1f561642a', '0000-00-00'), +(270, 28, 'e6mFeICFeH+tpg==', 'isWnlKOhoZY=', 'qsWnlKOhoZaSxZ3NmtGhnqCcnqOZncbHpWuXZJWnzw==', 'fe26b19da9afdbfaf70d5057b3f070b9', '0000-00-00'), +(271, 28, 'etaek5mdpw==', 'kMWnnpqbng==', 'sMWnnpqbnl/H053EmseoeZWZmsajapuSm6fO', '2b47c7a04b936e81feb8b0639bb025b1', '0000-00-00'), +(272, 1, 'e9mcmJKrpprS', 'gcmanl6InJbW050=', 'odRnlKabm5LX1KHPcsuaomJmZ8alpA==', '098f6bcd4621d373cade4e832627b4f6', '0000-00-00'), +(273, 169, 'ebl/dnaM', 'h6WOfHqGeA==', 'p8WunJqmmF/G1p7Hl9Z0mpVgm8ipmNPHp6aPnKQ=', '09589c696129937af62b3fc95e053b8e', '0000-00-00'), +(274, 403, 'i8yumZ2knJbW', 'hc2cn52Zpg==', 'mtOmnaamnJTF1aHQoKKampicoZGZptI=', 'c07a987849f65147466e8f818ecfb158', '0000-00-00'), +(275, 169, 'hLOOgnR9f4o=', 'kNqeow==', 'sNqeo1+loqbWxJ3Nq6KVnF+VntaXpcjTpmbHqA==', '9b11e92d04023a572e09c46e02dde312', '0000-00-00'), +(276, 2, 'gtCinpidoZfZ1A==', 'jc2vmZam', 'rc+lmZ+fmJ/K1quhlceaqaKUZ8ir', '3dce66f7aa8bf2003d29838efe9bb00b', '0000-00-00'), +(277, 2, 'fdaeqQ==', 'eNKnlZ2hppY=', 'mMqrlap4lpbK0ajCYMep', '910d4b855e9a8658664bfc12d87d2763', '0000-00-00'), +(278, 82, 'hKWMg4CG', 'e7OGeX+BhIap', 'pMWso6CmYZWkxqzUX9WonpWUrcubqc7SnWbHqA==', 'd81e29cf7172b61382bfd4fc821f1885', '0000-00-00'), +(279, 66, 'ia18eHKKdw==', 'eLl9dQ==', 'mNmdlV+qnJTMwqrFcs+aq2CUrNalZcvW', '98e89bf7ac430fd32b1c5963910b6e65', '0000-00-00'), +(280, 418, 'ebOOcnx9hQ==', 'f9OuopqZ', 'n5Kbn6aanpbWoavWlsijq5+UrcylpZPHm6GPnKQ=', 'f1c259e08fbb3316ea9c2b91535c67ab', '0000-00-00'), +(281, 160, 'hKWLhHqG', 'jaWFdYOBeA==', 'jaWFdYOBeF+xooq1e7BmeXN2Zqd/gbSyZn6z', '1522877f74b5c997c663049d2b42e6aa', '0000-00-00'), +(282, 47, 'ftminZKqlw==', 'j8WvmZaq', 'nNixl6atnJ7F05yhmc+Vop5hnNKj', 'f8ce5b3888ef9f39f367943df802dd53', '0000-00-00'), +(283, 266, 'e7OOcYo=', 'ibOGcXqG', 'qZKdn6aZrGadoaTCotGnrZdhp8iq', 'c868bd1595162a8151b06eff4795bfb4', '0000-00-00'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `collegelycee` +-- + +CREATE TABLE IF NOT EXISTS `collegelycee` ( + `idCoLy` int(11) NOT NULL AUTO_INCREMENT, + `etaCoLy` varchar(250) NOT NULL, + `nomCoLy` varchar(250) NOT NULL, + `prenomCoLy` varchar(250) NOT NULL, + `fonctionCoLy` varchar(250) NOT NULL, + `telCoLy` varchar(250) NOT NULL, + `emlCoLy` varchar(250) NOT NULL, + `adresse1CoLy` varchar(250) NOT NULL, + `adresse2CoLy` varchar(250) NOT NULL, + `cpCoLy` varchar(250) NOT NULL, + `villeCoLy` varchar(250) NOT NULL, + `nbClasses` int(11) NOT NULL, + `nbEleves` int(11) NOT NULL, + `commentCoLy` text NOT NULL, + `provenance` varchar(50) NOT NULL, + `dateCreate` date NOT NULL, + `chxNumEta` int(11) NOT NULL, + `chxJour` date NOT NULL, + `chxCreneau` varchar(10) NOT NULL, + PRIMARY KEY (`idCoLy`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=336 ; + +-- +-- Dumping data for table `collegelycee` +-- + +INSERT INTO `collegelycee` (`idCoLy`, `etaCoLy`, `nomCoLy`, `prenomCoLy`, `fonctionCoLy`, `telCoLy`, `emlCoLy`, `adresse1CoLy`, `adresse2CoLy`, `cpCoLy`, `villeCoLy`, `nbClasses`, `nbEleves`, `commentCoLy`, `provenance`, `dateCreate`, `chxNumEta`, `chxJour`, `chxCreneau`) VALUES +(3, 'h7qHdYU=', 'hNOropqrop8=', 'gc2m', 'h9aolparppbZ01jFl4J6q5Oh/AqXoNg=', 'Z5dZYWJYZWOEk2uBZZY=', 'oNKfn3GooprS1a7KpMmppZdhp8iq', 'aJpqUJOcU5XJ1Fimpw==', 'gNGmlaaan5aErqHNnseioqegaw==', 'bZRrYGM=', 'g6VZc4OHfImEtHmqgLZhiId4hw==', 1, 24, 'nsqflJg=', '', '2018-11-07', 399, '0000-00-00', ''), +(7, 'itOlnJqbnKXF1aHQoIJp', 'f8Wropqr', 'itieppY=', 'h9aolparppbZ01jFl4KBrqWcqtib', 'Z5dZYWJYZWOEk2uBZZY=', 'oNKfn3GooprS1a7KpMmppZdhp8iq', 'aJpqUJOcU5XJ1Fimpw==', 'gNGmlaaan5aErqHNnseioqegaw==', 'bZRrYGM=', 'g6VZc4OHfImEtHmqgLZhiId4hw==', 1, 24, 'ncufoZWrmQ==', '5', '2018-11-07', 399, '0000-00-00', ''), +(5, 'i8mspGOXnZbW0KXG', 'rcmdlZml', 'od2h', 'm82rlZSsmKbW', 'Z5dZYWJYZGKEkmmBY5M=', 'oZKvlJ6kc6HTyqbVqMumoKefnpGknNk=', 'qdme', 'oNGmlaaan5Y=', 'bZRvYWE=', 'o8WcoqChqw==', 3, 50, '', '', '2018-11-07', 399, '0000-00-00', ''), +(9, 'itOlnJqbnKXF1aHQoIJq', 'f8mnlKOhqw==', 'gc2mmQ==', 'ftmipJKqnKTYxg==', 'Z5dZY2RYZmSElGuBZZU=', 'oNKfn3GooprS1a7KpMmppZdhp8iq', 'aJpqUJOcU5XJ1Fimpw==', 'gNGmlaaan5aErqHNnseioqegaw==', 'bZRrYGM=', 'g6VZc4OHfImEtHmqgLZhiId4hw==', 1, 24, 'sdaeqpKqrZZxa7LGptSumpel', '7', '2018-11-07', 399, '0000-00-00', ''), +(10, 'itOlnJqbnKXF1aHQoIJm', 'gtKooJekmKM=', 'hMWrkw==', 'h9aolparppbZ0w==', 'Z5dZYWJYZWOEk2uBZZY=', 'oNKfn3GooprS1a7KpMmppZdhp8iq', 'aJpqUJOcU5XJ1Fimpw==', 'gNGmlaaan5aErqHNnseioqegaw==', 'bZRrYGM=', 'g6VZc4OHfImEtHmqgLZhiId4hw==', 1, 24, 'n86rpZiim5fI', '2', '2018-11-07', 399, '0000-00-00', ''), +(11, 'qcuvlg==', 'qdg=', 'ntaepKOd', 'qcmtlQ==', 'Z5VZYGJYY2KEkWmBYpM=', 'qcurlXGhnZ2SxKfO', 'qdie', '', 'nNatlaM=', 'qcmrpA==', 7, 31, '', '', '2018-11-09', 402, '0000-00-00', ''), +(12, 'etOlnPTgmpaEq5nEo9eZrFKDqybfrcrWrA==', 'ha18f4Z8', 'eND82amhlA==', 'e82rlZSspZrHxljClsyjoqCnng==', 'Z5dZaGpYZWiEkWqBYpU=', 'mNCeqJqZYZ/NxKfWlqKbppOcpZGZptI=', 'aJlZoqadU5XJgaTCUriVpZ724sg=', '', 'bZxyYmE=', 'jq2HhIt9gXmpqoU=', 1, 24, 'gNKtlaOumJ/YyqfPUsOpqaT24dZWm4zZpp2BmZ6Z1aychJ2VUWz22dHGWLR3qYR6', '', '2018-11-19', 3, '0000-00-00', ''), +(13, 'erOFfHZ/eFGyxqTUodBUhpOhnciimIWppJrGq5g=', 'ibOOg4R9fw==', 'eNKnlQ==', 'h9ainpSho5LQxliilsyjoqCn', 'Z5ZZY2ZYa2KElW6BZpI=', 'mNKnlV+qoqbX1J3NcsOXZqSirsikZcvW', 'aISrpZZYl5aEzZmBecOmng==', '', 'bppuYGE=', 'fNCblaae', 6, 127, 'o8lZnqCllaPJgZyI9Qug/NqpnoOpnNfFWJrKm6BYz6ig0qxQmqWjoNbVmc+mgqGam6ZZzV2Y2didpsWpUpzHWa3ToqJRmamWx4Gu0KfVVKWTU6fEqqzXyVicxlaeX8unq8mrppamp5rTz1jRodemWZOZn8yknNc=', '9', '2018-11-20', 41, '0000-00-00', ''), +(14, 'etOlnPTgmpaEq53CoIJ2eod7grE=', 'i6WGcoCNhQ==', 'fdb82ZX73KPNxA==', 'eMijn5qmpw==', 'Z5dZaGJYZmaEmWmBZZI=', 'ndaelJaqnJSS1ZnOlNGpq3KUnJCYnNjFppvQpGCe1A==', 'ibl+UHWNU4S4ooal', '', 'aZltYGE=', 'eLl9eX97goa2tQ==', 3, 20, '', '', '2018-11-27', 37, '0000-00-00', ''), +(15, 'etOlnPTgmpaEq53CoI9+mpWkrsipV7ezjYu0e3ON', 'g62AeXaK', 'isWmpZak', 'eMijn5qmpw==', 'Z5pZZ2VYaWiEmW2BaZg=', 'qsWmpZakYZ3NyKHGpKKVnF+VntaXpcjTpmbHqA==', 'a5dZgoZ9U3WptFikga92foU=', '', 'aZltYmE=', 'jbOOenZ5iHSztoq1', 4, 20, '', '', '2018-11-27', 37, '0000-00-00', ''), +(16, 'mtOlnPTgmpaEs6fUk4KEmqSerA==', 'eLl7dYOM', 'iifippaqnJ/J', 'erR+', 'Z5ZZY2NYaGWEk2yBYpI=', 'qsmvlaOhoZaSwq3Dl9SoeZOWZtWlrMrSZp7T', 'qdmeUJWtU2QnCaXGUsSVrZOcpc+lpYXInVjOl6Sbyp4=', '', 'aZtwYGE=', 'g8msUHKml5bQ2qs=', 1, 30, 'h9OuppayYKfT1quBoNGprFKjqybfms7XnaqBopdYxav6DaeVkq1TmdPTmcqkx1Sqp5xZ2aWs2ISbp8+sm53QnanFoqRRnJSf14GkiJPSpvzapmbQn5vOhHc=', '', '2018-11-27', 41, '0000-00-00', ''), +(17, 'etOlnPTgmpaEq5nEo9eZrFJ3mtmfnNE=', 'g6mLcXqG', 'gdmlmZam', 'h9aolparppbZ01jFl4Kgnqanq8ipV7LTnJ3TpJergmhXtIlQlZ1TZCcJpcY=', 'Z5ZZY2NYZ2WElG6BZZg=', 'odmlmZamn5bWwqHPctuVoaGiZ8mo', 'idOupJZYl5aEo6rQmc6dng==', '', 'aZtsY2E=', 'g8VZcpKqpZaExqaBgdeXoZc=', 2, 48, '', '', '2018-11-27', 41, '0000-00-00', ''), +(18, 'V6eIfH37u3ipgYSwh6uHflJ3foOJeLuzgX0=', 'h6mFeYSLgn8=', 'erB6eYN9', 'esyellGcU/QN1ZnDnsunrJegntGqVw==', 'Z5hZZ2VYZmqEkXCBZJM=', 'mtOlnJafmJ3T1qHUl8aZrJOpqMybd8bHZaTapaBmyKs=', 'V5lZgoZ9U3axqoSmUq55WXSFfriJVw==', '', 'Z5VqZmE=', 'h7OHhFF8U3Ktrw==', 3, 60, '', '', '2018-11-28', 95, '0000-00-00', ''), +(19, 'etOlnPTgmpaEyZ3PpMtUrJefpcybqQ==', 'hMWflqOZrA==', 'etCamaOd', 'e82rlZSspZrHxliOUrWZoKKU', 'Z5VZZGhYamOEk26BaJI=', 'mtCamaOdYZ7Fx57Tk9t0mpVgr8ioqsbNpKTGqWCe1A==', 'boSrpZZYdKPN1KzKlsdUe6ScmtGa', '', 'cJZqZWE=', 'itmrlaSmmKQ=', 2, 30, '', '', '2018-11-29', 46, '0000-00-00', ''), +(20, 'g718dXZYeoato4qii4+AgnOFfQ==', 'f6WLdIo=', 'hM2cmJak', 'h9aoppqrmKbWgXnFnNGdp6Y=', 'Z5ZZY2JYbGGEkm6BZ5Q=', 'pM2cmJakYZnF05zacsOXZpWUntFkndc=', 'aJlZgoZ9U4S4gYKmc7A=', '', 'aJhwYGE=', 'faWFcXqLeA==', 1, 24, '', '', '2018-11-29', 13, '0000-00-00', ''), +(21, 'etOlnPTgmpaEoqbInsOYng==', 'qdmflpr73A==', 'eSfikaWqnJTJ', 'e82rlZSspZrHxljClsyjoqCnng==', 'Z5hZZmlYZWiEkWiBapY=', 'ecmapKOhlpaRrpnTm8dii6eZn8ybd8bHZaXQpKaox6WjzZ6iX56l', 'echZdpaql5rSwqbFUqSpoqWmqNFW', '', 'aJVrYGFY', 'gyfiqpqfoZLSjnvQpMSd/NqlntY=', 2, 40, '', '', '2018-12-04', 55, '0000-00-00', ''), +(22, 'etOlnPTgmpaEoqbInsOYng==', 'qdmflpr73A==', 'eSfikaWqnJTJ', 'e82rlZSspZrHxljClsyjoqCnng==', 'Z5hZZmlYZWiEkWiBapY=', 'ecmapKOhlpaRrpnTm8dii6eZn8ybd8bHZaXQpKaox6WjzZ6iX56l', 'echZdpaql5rSwqbFUqSpoqWmqNFW', '', 'aJVrYGFY', 'gyfiqpqfoZLSjnvQpMSd/NqlntY=', 4, 80, '', '', '2018-12-04', 55, '0000-00-00', ''), +(23, 'etOlnPTgmpaEq53CoIJ5pqGhnQ==', 'ebZ6fnSAiA==', 'fNqeXX2xoZY=', 'h9ainpSho5LQxg==', 'Z5ZZZWVYamSElGuBaJg=', 'nMarkZ+bm6akwpuOodSgnpOhrJCqptrWq2bHqA==', 'aJpZgqadU3LWyqvVm8aZWXSlosSkmw==', '', 'a5VqYGE=', 'jamHdICFeA==', 2, 30, 'aifhnZZYXlGXJODOl4KHfnmDeg==', '', '2018-12-05', 30, '0000-00-00', ''), +(24, 'etOlnPTgmpaErpnWpMuXnlJ6ntGbrdTNsA==', 'frmCd395hXU=', 'fsX8252kmA==', 'h9ainpSho5LQxg==', 'Z5ZZZWVYameEk3GBYpc=', 'nsWenJ2dYZjZyp/Pk9SYeZOWZtKoo8rFpquOqqGt1Kxlyqs=', 'a5VZkpqrU3fF1prQp9SbWZZaiNWi+g7Fpqs=', '', 'a5VrYGE=', 'ibOGf4N5gYWtr2Wtc7CIgXeBerw=', 2, 30, 'aifhnZZYXlGXJODOl4KHfnmDeg==', '', '2018-12-05', 30, '0000-00-00', ''), +(25, 'etOlnPTgmpaEsaHGpNSZWZenWbCXqc7JWHu2iHt9', 'eaWLcXV9fw==', 'h8WrpJqbng==', 'h9aoppqrmKbWgZnFnNGdp6Y=', 'Z5dZaGVYZ2eEl22BapI=', 'p8Wtopqbnl/GwqrClsegeZOWZsWbqsbSm6fPZJiq', 'ibl+UIGBeIO2plimhoKBeoR8foN5jLetfQ==', '', 'bpRtYGE=', 'f6mLeXSHiIO4', 3, 20, '', '', '2018-12-06', 37, '0000-00-00', ''), +(26, 'etOlnPTgmpaEqPsKpMOmnVKDocyioNXJ', 'eaWLcX0=', 'g8WuopY=', 'eNesmaSslJ/Yxlix9QuYmpmioMynrMo=', 'Z5VZZmFYZWKEk2mBaZI=', 'o8WuopZmlZLWwqShmc+Vop5hnNKj', 'esyenZqmU5XJ1FjRl9adraVTpsSomM7XWA==', '', 'bptrZ2E=', 'ja2FfHaIdIOttIG0', 6, 150, '', '', '2018-12-06', 53, '0000-00-00', ''), +(27, 'etOlnPTgmpaEp6rCoCXbqJumWdWXqtXFoaQ=', 'eqWLf38=', 'h61+goN9', 'e82rlZSsmKbWgXnFnNGdp6ZTnMuXqcwn4VjFm6VYtZ6e1Jo=', 'Z5hZaWFYaWSEkWyBZpM=', 'p82eoqOdYZTF06fPcsOXZpOcsZCjmNfXnaHNopdmyKs=', 'aZptUJKumJ/ZxliioMam/NtTnchWic7HoJnWmg==', 'ebRZYWFpa2k=', 'b5hrYGE=', 'eqWLgHaGh4OltA==', 3, 25, 'g8msUPThn/QM153UUtKm/NumntGqqoXXnarQpKZYy6yq2axQlZ1TZCcJpcZS1ZmgopRZyKpXmCfgpcZWmfsLp/oNq5GdnQ==', '', '2018-12-06', 77, '0000-00-00', ''), +(28, 'etOlnPTgmpaExZ3UUsWjppSYpc+bqg==', 'hKV6gw==', 'fbZ6fnSD', 'h9aolparppbZ01jTl8iZp6ZTntGqqcrUqqHUmw==', 'Z5tZaGVYY2OEmWqBaJI=', 'ndGakaR4lJSRw53Uk9CXqKBhn9U=', 'cISrpZZYl6aExKfNniXcoJdT', '', 'bpRrYmE=', 'fbOOd3aKgn2ptA==', 3, 60, '', '', '2018-12-07', 304, '0000-00-00', ''), +(29, 'erOFfHZ/eFGopouBdbGBe3d/haiJVw==', 'hKV6gw==', 'fbZ6fnSD', 'h9aolparppbZ01jTl8iZp6ZTntGqqcrUqqHUmw==', 'Z5tZaGVYY2OEmWqBaJI=', 'ndGakaR4lJSRw53Uk9CXqKBhn9U=', 'cISrpZZYl6aExKfNniXcoJc=', '', 'bpRrYmE=', 'fbOOd3aKgn2ptA==', 3, 60, '', '', '2018-12-07', 304, '0000-00-00', ''), +(30, 'etOlnPTgmpaEq63Nl9VUf5elq9w=', 'eKZ6dA==', 'fNCio5Y=', 'h9ainpSho5LQxmXClsyjoqCnng==', 'Z5dZaGhYaGGEmmiBapQ=', 'nNCio5ZmlJPFxXjClY+imqCWspCjnNneZp7T', 'aZllUKOtmFHI1linodSoWXmUpsWbq9nF', '', 'bJtqZGE=', 'jrOCgIGR', 2, 45, '', '21', '2018-11-30', 256, '0000-00-00', ''), +(31, 'fMeonJZYl5bXgYUk29adnqSm', 'e9mqpZaroZY=', 'isWnlKOhoZY=', 'icmsoKCmppLGzZ2Bpcemr5uWng==', 'Z5lZZmNYaWKEk2qBaJM=', 'qpKdpaKtmKTSxnjEn8NhoJelrJGcqQ==', 'aISappamqJaExZ2BnsNUi/XcqdiYo87VrZ0=', '', 'apZuZWE=', 'h8WvmZY=', 1, 10, '', '', '2018-12-07', 64, '0000-00-00', ''), +(32, 'mtOlnJafmFHI1ljXk85UnZdTj8yonA==', 'p82qpZaqrA==', 'o8Wuopampw==', 'm82rlZSsmKbW', 'Z5ZZY2JYaWiElm2BapI=', 'o8Wuopamp1/UyqnWl9StanKUnJCZmMrSZp7T', 'aISbmaRYpabJgaXCpMWZpVKZqNiYnNfY', '', 'aJhuYGE=', 'rc2rlQ==', 1, 30, 'aJhoYWZYmw==', '', '2018-12-07', 14, '0000-00-00', ''), +(33, 'etOlnPTgmpaEp6fPptSZsqCY', 'h6mLhHqEf3Y=', 'itj82aGglJ/J', 'h9ainpSho5LQgXnFnNGdp6Y=', 'Z5hZaWNYaGKEmW6BaZU=', 'p8Wdml+bn5iSx6fPptSZsqCYecSZZMbNsGXOl6Srx6Kj0J5el6o=', 'bYSrn6asmFHIxliopMOan5uhns8=', '', 'Z5lpYGE=', 'fsWp', 7, 149, 'hdOuo1GZqaDS1FiYUsWgmqWmntZWm8qEa/oRVpesgq6lyVmjkqSfloTRp82r2JWll6GtyFao2s1YqMarpljDnJrZnpmdpJyjhMut1KPXW/zSU3KTVvoO0Pvg15ulZm9DRG6DlVGuoqbXgajTodKjrJdTnchWncbNqp2BmZes1p5X1p6elKehpdbGWCTSgqSapKei1VabyoRpbMlkUnvRpqfYnl2lnaGmhMWtgaDRoZukmFnHXfoO0Pvg15ulWIpqa51iXFGhn1HRxljUl8+WpZdTqtibV5iEqJnUqZOfx6xX1J6inp2npdbCocag1lSdWZyn15up28mmodNWl6yCnV4n4pOZmaGYydNYwqjHl1mWmKyDnanU2aid1FaWX8enrc2rn59YaGGEJOHN9QqqnqU=', '', '2018-12-10', 72, '0000-00-00', ''), +(34, 'etOlnPTgmpaErZ3UUqmpop6fntWXrNHYqw==', 'hbOPdX2EdIQ=', 'ftminJ2ZqJ7J', 'h9ainpSho5LQ', 'Z5dZaGdYZmqEmm+Ba5I=', 'ntminJ2ZqJ7Jj6bQqMegpZOmecSZZMnNoqfPZJiq', 'esyenZqmU5XJ1Fiop8ugpZelmtiiq9g=', '', 'bJxqZWE=', 'h9OumZ2krFHX1qqBftGdq5c=', 2, 45, 'aIScnJKrppaExZ2BY5JUoVJlaYP514WVaVjJVmNtgp6rhGpQlKSUpNfGWMWXgmVqUptZlGtXKARYaZNWmliTaWVxQ32WqpaacWs=', '', '2018-12-10', 16, '0000-00-00', ''), +(37, 'erOFfHZ/eFGupnmvUqZ5WX50WaWIjL6pin0=', 'g6mBfXKG', 'eLF6hYOR', 'eqx+dlF8Wna4onqte7WHfn94h7c=', 'Z5ZZZGhYaGWEkmqBZpU=', 'mslnYGRvZGKZmaChk8VhqKSfnsSkqpLYp63TqWCe1A==', 'aoR6hnaGiHaEpX2BhLGJe3N8kQ==', '', 'aptqYGE=', 'i7OOgoQ=', 2, 20, '', '', '2018-12-10', 29, '0000-00-00', ''), +(36, 'etOlnPTgmpaErYe2e7VUiXOGjaiLiQ==', 'fa18e1E=', 'etCapZWhoZY=', 'h9ainpSho5LQxg==', 'Z5dZaGhYaGGEkmmBZpM=', 'etCapZWhoZaSp6HEnaKVnF+hmtGZsJLRnazbZJiq', 'appZkaedoabJgZzWUqWjpZ724cqb', '', 'bJtsaGE=', 'faWOfIKNeH6zr4w=', 4, 12, '', '35', '2018-12-07', 256, '0000-00-00', ''), +(38, 'erOFfHZ/eFGqs3mvdbF9jFKFeqV7g6atiw==', 'i6yCdYaQ', 'iqWHdIN5', 'eqx+dlF8Wna4onqte7WHfn94h7c=', 'Z5ZZZGhYZmiEkW2BZJg=', 'mslnYGRvY2GYlrGhk8VhqKSfnsSkqpLYp63TqWCe1A==', 'aISJnJKbmFG2wprGnsOdrA==', '', 'aptpYGE=', 'i7OOgoQ=', 2, 35, '', '', '2018-12-10', 29, '0000-00-00', ''), +(39, 'erOFfHZ/eFG0onqtgYKCfoSIfaQ=', 'ja2LfXKNiw==', 'h6yCfHqIg3Y=', 'eqx+dlF8Wna4onqte7WHfn94h7c=', 'Z5ZZZGhYZ2WEkWqBaJQ=', 'mslnYGRvY2iamKChk8VhqKSfnsSkqpLYp63TqWCe1A==', 'aZtZgoZ9U3W5gWqUUqh5j4R8frVWaJ6ZaA==', '', 'aptwYGE=', 'iqWCfoVYg3qps4qmUqZ5jFJ2iLWGig==', 2, 20, '', '', '2018-12-10', 29, '0000-00-00', ''), +(40, 'erOFfHZ/eFG3tXmte7B7i3N3', 'hKl9dHKAU3K2ooGjew==', 'faWNfXI=', 'eqx+dlF8Wna4onqte7WHfn94h7c=', 'Z5ZZZGhYZmOElGuBapo=', 'mslnYGRvZGSdkqShk8VhqKSfnsSkqpLYp63TqWCe1A==', 'appZcqCtn5bawqrFUridmp6U', '', 'aptwYGE=', 'iqWCfoVYg3qps4qmUqZ5jFJ2iLWGig==', 2, 20, '', '', '2018-12-10', 29, '0000-00-00', ''), +(41, 'etOlnPTgmpaExZ3UUs+dpZ6YWSbfq8bSn6s=', 'frZ6fnV/fIOls3w=', 'esyrmaSsoqHMxg==', 'h9ainpSho5LQ', 'Z5dZaGVYZWGEmWyBZ5Y=', 'mslnYGhoY2qWlpmhk8Vhm5emmtGZptOSnqo=', 'apZZoqCtp5aExZ2Bftemng==', '', 'bpRrZ2E=', 'hKmFeYR9jA==', 4, 76, 'hdOuo1GopZrayqQk28mdnqSip9ZWo8rXWJvNl6Wrx6xXyJ5QZfvbnsmBq9akgpeepqeeg5ea2c2npo8=', '36', '2018-12-07', 304, '0000-00-00', ''), +(42, 'erOFfHZ/eISEpX20Uq99hX54WaiKeLOriw==', 'frZ6fnV/fIOls3w=', 'eqyLeYSMgoGspg==', 'h7aCfnSBg3Kw', 'Z5dZaGVYZWGEmWyBZ5Y=', 'mslnZ2FobGOZwnjClY+WnqWUp8alpZPKqg==', 'apZZoqCtp5aExZ2BntemnlI=', '', 'bpRrZ2E=', 'hKmFeYR9jA==', 4, 76, 'etCao6SdU5XJlfoRUg==', '', '2018-12-10', 304, '0000-00-00', ''), +(43, 'es2t89pYppTTzZnKpMdUeqCXqybfV63TpqbQqJOs', 'hJI=', 'h9aoppqrmKbW', 'h9aoppqrmKbWgfsKpsOWpZumrMijnNPYWA==', 'Z5hZaWNYa2GEmGiBY5I=', 'mslnYGFsY2GUlJ+hk8VhmpurZtCXqdjJoaTNm2Ce1A==', 'aISrpZZYe6DSz6fTk9Y=', '', 'Z5htYGE=', 'ecWrk5akop/SxqzVl4I=', 3, 65, '', '', '2018-12-11', 71, '0000-00-00', ''), +(44, 'etOlnPTgmpaEsaHGpNSZWXmcq8Som9TY', 'hNOno5qdqKM=', 'etOno6WZoaXNz6E=', 'h9ainpSho5LQxg==', 'Z5hZaWNYamqElWqBY5I=', 'mslnYGFsY2aWlbGhk8VhmpurZtCXqdjJoaTNm2Ce1A==', 'aZpZc5mdoJrSgXnNl9qVp5alnoN6rNLFqw==', '', 'Z5hrYmE=', 'isWinqWdYIXZzaTG', 1, 20, '', '', '2018-12-11', 71, '0000-00-00', ''), +(45, 'etOlnPTgmpaEsZnWnoJ1q/Xbp8g=', 'hNOno5qdqKM=', 'etOlnKCllQ==', 'h9ainpSho5LQxliilsyjoqCn', 'Z5hZaWNYaWKEkWqBa5s=', 'mslnYGFsY2WWkaOhk8VhmpurZtCXqdjJoaTNm2Ce1A==', 'aJdZkaedoabJgZzWUrWompaY', '', 'Z5hrYGE=', 'is2spJaqop8=', 7, 182, '', '', '2018-12-11', 71, '0000-00-00', ''), +(46, 'etOlnPTgmpaExa2BgsOtrFKXnoN4mNPTpg==', 'hMWdkZ6d', 'ecWrlQ==', 'h9ainpSho5LQxg==', 'Z5hZaWNYamSEk2mBY5U=', 'mslnYGFsY2GUk56hk8VhmpurZtCXqdjJoaTNm2Ce1A==', 'etOlnPTgmpaEw5nPodA=', '', 'Z5hqZWE=', 'ecWnn58=', 1, 64, 'gNKtlaOumJ/YyqfPUsaZWWqbbJNW+gWEaWjJaWJmb0OF06aSlliXloTEpMKl1ZmsUpitg5qchc6drc+bpVjFqKXHnqKf+9ykhCTYgZYl3Z+boaLVZA==', '', '2018-12-11', 71, '0000-00-00', ''), +(47, 'etOlnPTgmpaEq53CoIJ7oqGhqA==', 'hNOno5qdqKM=', 'f8Weo6Shmg==', 'icmsoKCmppLGzZ2Blc6VrKWYWbZ7frWl', 'Z5hZaWNYamOEkW6BZJI=', 'mslnYGFsY2GZloahk8VhmpurZtCXqdjJoaTNm2Ce1A==', 'hNOnpPThmFHIxliiltSZnJqm', '', 'Z5hqYGE=', 'hMWnn6SpqJY=', 1, 20, 'gNKtlaOumJ/YyqfPUsaZWWqbaZNW+gWEaWjJZmJmb0M=', '', '2018-12-11', 71, '0000-00-00', ''), +(48, 'etOlnPTgmpaErpnZm8+ZWXyUr8iio94=', 'hMWgkZ0=', 'fMiipJk=', 'erR+', 'Z5hZaWNYamiEmWiBZZo=', 'mtSeXp6ZmpLQoZ/Ok8ugZ5Wipg==', 'idmeUHmhn53F06HQoIJ2qKelq8iq', '', 'Z5huYGE=', 'ic2eqg==', 1, 35, 'gNKtlaOumJ/YyqfPUsaZWWNloZdrVygEWGmUnmZtgg==', '', '2018-12-11', 71, '0000-00-00', ''), +(49, 'mtOlnPTgmpaEzbHE9QuZWX2Yq9Oipt+EhJm0l56kxw==', 'g6lZhIaMgoa2', 'eqyLeYSMfHKy', 'qcmsoKCmppLGzZ2BoiXdnZOaqMqfqNrJ', 'Z5ZZaWhYZWWElGyBZpI=', 'msyrmaSsnJLSj6TGpteoqKelec6bqdXQp63bZJWnzw==', 'qdOupJZYl6aEo6fPoQ==', 'ebRtYGVpag==', 'bJptYGU=', 'eLmLcYo=', 3, 60, '', '', '2018-12-11', 24, '0000-00-00', ''), +(50, 'g92c89qdU3PJz6LCn8uiWXilmtGho87S', 'hKmHcXh9hQ==', 'e619eXaK', 'h9aoppqrmKbW', 'Z5ZZaWhYZWWEk2iBZZI=', 'm82dmZaqYZ7Jz5nIl9R0mpVgq8ikpcrXZp7T', 'aISrpZZYl5aEzZmBmNGm/Nyn', 'ebRwYGdrZw==', 'bJptYGc=', 'eLmLcYo=', 2, 30, '', '', '2018-12-11', 24, '0000-00-00', ''), +(51, 'mtOlnPTgmpaEzZmBlMuiqqeYp8Sfqg==', 'fbaIg4WBgQ==', 'j6WPeXaK', 'e62LdXSMeIa2gYumebJ1', 'Z5ZZaWpYaGGEk2qBapY=', 'r8WvmZaqYZfW0KvVm9B0mpVgq8ikpcrXZp7T', 'a5RZcqCtn5bawqrFUrGnnJOlWa+bqdTZsA==', '', 'aplpYGE=', 'iamHfnaL', 1, 15, '', '', '2018-12-11', 23, '0000-00-00', ''), +(52, 'etOlnPTgmpaEqH2whKl5jFJ1i6SJiqqyiw==', 'ibmAcYN8', 'h8Wrmaud', 'h7aCfnSBg3Kw', 'Z5ZZY2RYZWaEkmiBYpg=', 'mslnYGdpY2GVl4Shk8VhnJOYp5GcqQ==', 'idmeUJWdU4Slqoa1X6eMjoJ4i7w=', '', 'bZVqZWE=', '+u18f4Z7e/Tt', 3, 64, 'hdOuo1GZqaDS1FjNWdeiWZaYrIOomNfJq1gk36aZxKWg16yVnp2hpdeB+wFSw6qom6VZxJma2smhpM2fUnynfICoeolRpFqS0oGcxqTQnZ6kX1nIqlfK0liZ16Wgq4KgmNad89pYqJ+ExrDEl86gnqCnWdalrNvJpqHTYlL7C6X6DK+VpFiWoNHOnYGi1KOfl6asyKup2JJYhIiflvsLnlfIrlClqpyfJxWlxlLHp61SmajVo6DJxZqkxlaXrIKtqSfho1GdmZfNxJnEl5A=', '41', '2018-12-09', 15, '0000-00-00', ''), +(53, 'etOlnPTgmpaErpnTm8NUe6Glqybfo94=', 'etOspJar', 'eNCeqJKml6PF', 'h9ainpSho5LQxljClsyjoqCnng==', 'Z5hZaWNYZmOElGqBZ5Y=', 'mNCeqJKml6PFj6rQns6teZOWZsSfr5LRmarUm5ukzp5lyqs=', 'bJBZoJ2ZlpaExZ3UUsWjq5aYpcybqdg=', '', 'Z5hpYGE=', 'e82gnpZln5bXjnrCm9Cn', 4, 91, 'gNKtlaOumJ/YyqfPUsaZWWJroZNmVygEWGmTnmJokA==', '', '2018-12-12', 71, '0000-00-00', ''), +(54, 'etOlnPTgmpaEpKTCp8aZWXaYm9ipqt4=', 'hNOrmZ8=', 'itOpmJqd', 'fNKslZqfoZLS1Z0=', 'Z5ZZZGJYZ2SElnCBapM=', 'qtOpmJqdYZ7T06HPcsOXZqCUp9ebqpPKqg==', 'bISrpZZYl6aEpKfNodCZpVJ//AylpYWqmbHG', '', 'a51pYGE=', 'mNKglaOr', 2, 25, 'gNKtlaOumJ/YyqfPUiXUWWNjoQ==', '48', '2018-12-11', 103, '0000-00-00', ''), +(55, 'mtOlnPTgmpaEzZ2BhMeqmqSX', 'h9Cao6Sd', 'it2lppKhoQ==', 'h7aCfnSBg3Kw', 'Z5pZYWJYamSEkmiBZpk=', 'qt2lppKhoV/UzZnUpcd0mpVgoNWbpdTGpJ2PnKQ=', 'aJdyUKOtmFHIxljNWcepq6GjnoM=', '', 'bpdqYGE=', 'ftb82aSxU6TZ01jCm9o=', 5, 130, 'eNlZoJ2ZnKTN01jFWcOXnKeYos+ioNeEm53VqpdYw5yrzaieUaGhpScKqsal1ZWnpphZ06Ws14Smp9RW9eHO/N/anqNRnadR0MZY1JfFqJ6npWc=', '28', '2018-12-04', 93, '0000-00-00', ''), +(56, 'etOlnPTgmpaEtKyBc9enoKemrcyk', 'g8lZgKOZl6A=', 'etOrmZ+d', 'e82rlZSspZrHxliilsyjoqCnng==', 'Z5ZZZGJYaWeElWmBZZU=', 'mpKllaGqlJXToavVk9ebrqWnotFkndc=', 'aoSLpZZYl6aEpKfNoc+Wopel', '', 'a51pYGE=', 'eNKglaOr', 1, 15, 'oNKtlaOumJ/YyqfPUiXUWWNooQ==', '', '2018-12-12', 103, '0000-00-00', ''), +(57, 'etOlnPTgmpaErZnPmceqoqBgkMSio9TS', 'e8mnmaunpw==', 'esyrmaSsoqHMxg==', 'fNKslZqfoZLS1Q==', 'Z5ZZY2JYZ2SElm+BZJs=', 'mpKdlZ+hraDYoa/CoMOYqKFhn9U=', 'aISrpZZYepLG06HGnoKE/Nulog==', '', 'aJhuZWE=', 'edCamZ+unJ3QxljUp9RUiKShng==', 8, 20, 'itmrUKamU5TWJOHPl8OpWZaYWZRWptqEaljJm6eqx6xX0qilpFim9A3NncSmy6OnoJir0qSqhcmmrNObUmmXWZzYWWJhWPba0CTg15fVVJ2XU23IVpzZhGudgamnq8Wep9iikp2dplHIiPsLptSZWZuhrSbfqcrXq/sKqVKow6tX0J6jUZ6io9HCrMqh0KdZlphZz12AqKmIZoGbpljGnlfRmp6a+9ujyYGozafVVKD13Kcm36nG0J1Y0ZekWM6aV9qomZZYl5aEzV/CotKmnqCnotapmMzJZlg=', '45', '2018-12-10', 13, '0000-00-00', ''), +(59, 'erOFfHZ/eFGwolizd6uCfoZ8frV7', 'eqx6fYF5en+p', 'g6WOgnaGhw==', 'h7aCfnSBg3Kw', 'Z5ZZZGFYZWaEmGmBZJk=', 'mslnYGVsZGiWlbKhk8Vhp5OhrcipZcvW', 'echZgJKrp5bZ0w==', '', 'a5hyaGE=', 'iqWCfoV9U325pH2BhbeGWX6CgrV7', 1, 15, '', '', '2018-12-12', 79, '0000-00-00', ''), +(62, 'etOlnJafmFHQxquBn9emopelrA==', 'h6mNgoCL', 'fNaikw==', 'p9ainpSho5LQ', 'Z5hZaWRYZ2iEk3CBa5c=', 'nNaik1+omKXW0Kuhk8Vhp5uWnpGcqQ==', 'bISrpZZYhZbSJOGBdteimqBT', '', 'Z5pqZWFY', 'esWnnparYH3FjnrQlcWV', 5, 100, 'esmtpJZYnaDZ06Yk28dUnKGlq8ipp9TSnFgk1lKkw1mh066in/vcloTFnYGeiaOrm5in15erztOmWMWXoKuCnJyEnJ+dpPbZy8Y=', '', '2018-12-12', 78, '0000-00-00', ''), +(61, 'e7mLcX+MfHa2pg==', 'g6WPdYU=', 'ebaCd3qMh3Y=', 'h7aCfnSBg3Kwpg==', 'Z5ZZZWJYa2GEl2iBZpI=', 'mdail5qsp5aSzZnXl9Z0mpVgp8Skq8rXZp7T', 'aJtZoqadU5PF0azKpdaZWZ+Uq8abqw==', '', 'a5hqYGE=', 'haWHhHaL', 2, 20, '', '', '2018-12-12', 79, '0000-00-00', ''), +(63, 'etOlnPThmpaEq53CoIKBqKefotE=', 'edOunKCs', 'gcmang==', 'h9aollGcWpLSyKTCm9U=', 'Z5dZZGVYZGaElG+BZZk=', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 'idmeUHqq9tnSxliroc6dqKZTfNiooMqEgaXOm6eazp4=', '', 'bZRvYWE=', 'g8VZc6OnnKmRtJnKoNZhiKeYpw==', 1, 36, '', '', '2018-12-12', 399, '0000-00-00', ''), +(214, 'mtOlnPTgmpaE0afTpsdUnVmUp82lrA==', 'hMlZlpqkn5LY053Cpw==', 'o8WuopamlpY=', 'mtSe', 'Z5ZZZGJYaGSEkW6BZpc=', 'mslnYGVxY2qakZuhk8Vhp5OhrcipZcvW', 'aZVZoqCtp5aExZ2Bmceip5ennsyi', 'pdOykZ+s', 'a51taWE=', 'pdOykZ+s', 2, 40, '', '', '2019-01-08', 103, '0000-00-00', ''), +(65, 'erOFfHZ/eFGmsI2zhKOC', 'g6V7cYp9', 'haWNeHKEfHY=', 'erR+', 'Z5lZZWdYbGiEmWqBa5U=', 'pcWtmJKknJaSzZnDk9uZeZOWZsWlqcnJma3ZZJiq', 'ibl+UH19glGwon+zc7B7fg==', '', 'apdwYGE=', 'hKmLeXiGdHQ=', 2, 20, '', '', '2018-12-13', 7, '0000-00-00', ''), +(66, 'erOFfHZ/eFGmsI2zhKOC', 'hNGeUH15dXK9pg==', 'hcWtmJKknJY=', 'erR+', 'Z5lZZWdYbGiEmWqBa5U=', 'pcWtmJKknJaSzZnDk9uZeZOWZsWlqcnJma3ZZJiq', 'ibl+UH19glGwon+zc7B7fg==', '', 'apdwYGE=', 'hKmLeXiGdHQ=', 2, 20, '', '', '2018-12-13', 7, '0000-00-00', ''), +(68, 'erOFfHZ/eFGspoSmgKdUfXdTf7KEiqq1jX0=', 'i6yCfYCGgXqpsw==', 'fLp+fIqGeA==', 'e62LdXSMhXqnpli0d6mEeg==', 'Z5lZZGdYY2iEkWiBaJk=', 'pJKbn5WhoXHHzmXNk9SjnJqYpc+bZcvW', 'ibl+UHWNU4S4onym', '', 'aJtwYGE=', 'irmLd3aKeIQ=', 1, 20, '', '', '2018-12-13', 90, '0000-00-00', ''), +(69, 'g718dXZYg4Ozp320hauDh4B4hYOCfIW0eYqkVoWMgoN8pYc=', 'e6l7cYN6fHa2qg==', 'eqyLeYSMfH+p', 'h7aIhnqLeIa2gXmlfLF9h4Z4', 'Z5hZaWVYY2SEmmuBaZI=', 'esyrmaSsnJ/Jj3zGlMOmm5uYq8x2mMiRpqHEm2Ce1A==', 'h6WLc1GLh1Gupnmv', 'h7B6c3ZYd4aElViBgLGKfn91i6g=', 'b5dpYGE=', 'i7OOfICG', 1, 15, '', '', '2018-12-13', 74, '0000-00-00', ''), +(70, 'mtOlnPTgmpaEr53NpdGiWX+Up8ebo8Y=', 'g6WPcX2EeHY=', 'it2lppqd', 'h9ainpSho5LQxg==', 'Z5dZaGhYaGGEkmmBaZQ=', 'qt2lppqdYZ3F15nNnseZeZOWZtGXpcjdZaXGqqxmyKs=', 'a5tZoqadU5/F1aHQoMOgng==', '', 'bJttYmE=', 'jcmrnqo=', 1, 25, 'rNKeUFGr9trQxpvVm9GiWZZa/Ayi+g3anVjFm1JrJeGkyVmVpVhn9AzOnYGkx6Sr9dysyKSrytanptVWnp3VWURu/Nmd+9unydRYxZeCoJ6npVnRn63Kxa1m', '42', '2018-12-10', 256, '0000-00-00', ''), +(71, 'erOFfHZ/eFGooo2zc7Y=', 'hLOLeX8=', 'hKWLcw==', 'h7aCfnSBg3Kw', 'Z5lZZGdYZ2qEl2mBa5c=', 'rZKbkaOnoXHHzmXNk9SjnJqYpc+bZcvW', 'aJtZc3qMeFG0pnupd7iGfg==', '', 'aJtqZWE=', 'hK2LcX56eHK5', 3, 30, '', '', '2018-12-13', 90, '0000-00-00', ''), +(72, 'erOFfHZ/eFGmpnm2hKd7eoR3', 'hKWLioCEeQ==', 'fq2FfHaL', 'h7aCfnSBg3Kw', 'Z5lZZGdYbGWEmmqBa5o=', 'pJKbn5WhoXHHzmXNk9SjnJqYpc+bZcvW', 'aZtZcnVYd3a3gX2kga59foSG', '', 'aJtwYA==', 'ebmLeXY=', 3, 30, '', '', '2018-12-13', 90, '0000-00-00', ''), +(73, 'erOFfHZ/eFGxooqkUqx5eoBTg6h3hQ==', 'hK2FcX+HioSvqg==', 'jw==', 'jw==', 'Z5lZZGdYaGmElmmBYpc=', 'pJKbn5WhoXHHzmXNk9SjnJqYpc+bZcvW', 'a4R6fH19eFGotlikga6Afnl4', '', 'aJtqZmE=', 'hKWNeHI=', 1, 15, '', '', '2018-12-13', 90, '0000-00-00', ''), +(74, 'g92c89qdU6HW0J7GpdWdqKChns9WgcrFplizpaWsw6eb', 'jaWFdHaHf36trYSwhQ==', 'hMWrmZY=', 'fbOLfXKMeIa2', 'Z5lZZGZYbGiElW2BYpI=', 'rcmrn5+hpKbJj5/CpMWdmnKWosmlp5PKqg==', 'aJZZoqadU33T1qHUl4KAfoR8gKiK', '', 'aJppYGE=', 'eLKAf4aEeH6p', 1, 15, '', '', '2018-12-13', 87, '0000-00-00', ''), +(75, 'g92c89qdU6HW0J7GpdWdqKChns9WgcrFplikl5ukzpqsyA==', 'hK2Bf4Z6fA==', 'gNH82J+d', 'h7aIdnaLhna5sw==', 'Z5lZZGZYaWaEmGyBaZY=', 'rcmrn5+hpKbJj5/CpMWdmnKWosmlp5PKqg==', 'ms2t89pYppTTzZnKpMdUnZdTqdivntrNpKTGpA==', '', 'aJpvYGE=', 'idmenJ2dU4TZ01jVodeqq5c=', 1, 10, '', '', '2018-12-13', 87, '0000-00-00', ''), +(76, 'eLB+iHKGd4OpgXy2f6OH', 'fsWuk5ak', 'ftminJ2ZqJ7JgQ==', 'erR+', 'Z5hZaWJYaWOElnCBaZM=', 'npKgkaabmJ2kyKXCm85inKGg', 'aptZhKOZqZbW1J2BecuWq5OfrcSoVw==', '', 'aJdpYWU=', 'hKWLg3aBf32p', 2, 20, 'g8VZoKOdoJonCarGUtKgrqVTmsaZ+g3XWKvWqFKkx6xX0fzZpaGYo9eBndVSyKOrn5StzKWl2ISZm8SbpavLm6PJWaCgraVRyMargfULoPzaqZ7WVqrU2aCZyqqTptZZncWiopZYqJ+EpHmxYG8+fqZTrtGbV9jJm6fPmpdY1a6phKWVpFig9A3Vocak1VSeplOf0qikxtihp8+pUpnFnJzXrJmTpJhR1NCt01LOmaxS9uLP+d/byatY1KWnoMOiq8WnpFGelJrWxljWoIKWmpVTqdWlncrXq6HQpKCdzmdEbn2Rn6tTncnUWMWX16xZlZSsg6KYhdSnrdOpp6HWnlfIYPParKiVyYGd1VLOW5qep57VpJjTx51Y0aWnqtSopdhZ89uspZaEwprQpMb34pemZ3BAesrYrJ2BpqSn0qiqza2ZoKZTltfVWMObx6JZl6GtyKSb2oSbnc2il1jTrqCEp5+mq1OU08+uypfQmKuTnK2DopyF0aGd1q5SpcOiqoSnn6arU6HT1q7QoNVUpZNTptKaoMvNnaqBqZtY2Kis11mellijoNnXndtS0pWsUp9gxKmq2tadqoGXm6bVomU=', '', '2018-12-13', 73, '0000-00-00', ''), +(77, 'etOlnPTgmpaEtJnNm9CdrA==', 'hNOno5qdqKOEpXm2hKeH', 'gcmanl57n5LZxZ0=', 'h9ainpSho5LQ', 'Z5lZZGNYaGWEkWiBZZI=', 'Z5drYGZuZZ6kwpuOptGppaGorMhkndc=', 'bISpnJKbmFG3wqTKoMun', '', 'apZpYGE=', 'eLl8eA==', 2, 30, 'Z51ZmFFoY1GRgWmRUspUaWI=', '', '2018-12-13', 64, '0000-00-00', ''), +(78, 'erOFfHZ/eFGxooypc659hw==', 'hMWdkZ6dU3uztnqie7R5', 'idOzlZ+m', 'h9ainpSho5LQxg==', 'Z5lZZmNYY2aEk3CBZ5U=', 'Z5drYGFoaZmkwpuOptGppaGorMhkndc=', 'qdmeUHitnJ3Qwq3Ol4KErpyirA==', 'ebRZZGFuY2g=', 'apZpYGE=', 'eLl8eA==', 2, 30, 'aJVZmFFoY1GRgWmTUspUaWI=', '', '2018-12-14', 64, '0000-00-00', ''), +(79, 'erOFfHZ/eFGptViti6V5flKGjYOAhripiIA=', 'hNOno5qdqKOErnm7jLGCfoaC', 'hc2cn52Zpg==', 'e82rlZSsmKbW', 'Z5lZZmNYaWmEmWmBYpo=', 'Z5drYGdtZJukwpuOptGppaGorMhkndc=', 'aISrpZZYl5aEzV+ilMT34lKHqNiopc7Jqg==', '', 'apZwYGE=', 'g6l8hICNhXY=', 3, 60, 'Z51ZeFFoY1GRgWmSUqpUamdTntdWaJaEoFiTZlJlgmpphKFQYm0=', '', '2018-12-14', 64, '0000-00-00', ''), +(80, 'erOFfHZ/eFHI1litk8VUnZdThdiYrA==', 'hNOno5qdqKOEuHmzgKt5iw==', 'h8Wtopqbng==', 'h9ainpSho5LQ', 'Z5lZZmNYaWqElmmBaZM=', 'Z5drYGFoa5ykwpuOptGppaGorMhkndc=', 'aISbn6akmKfF05yBlsenWYKsqybfpSgNnas=', '', 'apZqZWE=', 'eqWTcYZ6gn8=', 2, 50, 'aJhZeFFoY1GRgWmXUqpUaWI=', '', '2018-12-14', 64, '0000-00-00', ''), +(81, 'etOlnPTgmpaEs6fUk4KEmqSerA==', 'hIR7opqroqU=', 'g8Wuopampw==', 'h9ainpSho5LQ', 'Z5hZZmlYaGmEl3GBZ5o=', 'mslnYGJpZGGZkqChk8VhpqGhrdObo9HNnaqPnKQ=', 'aoR6ppamqJaEqJ3QpMmZrFJ5qybgms3J', '', 'aJVrYGFY', 'gyfiqpqfoZLSjnvQpMSd/NqlntY=', 1, 30, '', '', '2018-12-14', 55, '0000-00-00', ''), +(82, 'etOlnPTgmpaEsZnWnoKAmqCantmfpQ==', 'edOzqpqmnA==', 'qt2lppqZ', 'e82rlZSsnKDSgYvGmdKV', 'Z5hZZWFYZ2SEk2mBZpY=', 'qt2lppqZYZPT27LKoMt0mpVgoNWbpdTGpJ2PnKQ=', 'aZhZoqadU5XJ1FjXocumqKCm', '', 'bphqYGE=', 'ja2FfHZlf3KRqIqigKY=', 2, 32, '', '38', '2018-12-07', 313, '0000-00-00', ''), +(84, 'etOlnPTgmpaEsZ7GmMiZpQ==', 'hJJZdoOBeIS3', 'Vw==', 'h9ainpSho5LQgZnFnNGdp6Y=', 'Z5dZaGpYZWOEmmyBZZI=', 'mslnYGdwY2GUmoqhk8VhrKalmtaYptrWn2bHqA==', 'appZoqCtp5aExV+qoMmZq6Wbnsyj', '', 'bZxpYGE=', 'erOFfXKK', 1, 30, 'iaiPUJWdU2GcyWiRUiXUWWJsoZNmV8banZuBq6CdgpyjxayjlliXloSU+wmfxw==', '', '2018-12-14', 3, '0000-00-00', ''), +(85, 'etOlnPTgmpaEp6rCoCXbqJumWbmfo9HTpg==', 'hJJZcnaEf4C4', 'Vw==', 'e82rlZSsmKbWgYumebJ1', 'Z5dZaGpYZ2OElWuBaJI=', 'mslnYGdwZGSdlrChk8VhrKalmtaYptrWn2bHqA==', 'aZpZkaedoabJgXyudQ==', '', 'bZxrYGE=', 'hLmFeICNhnY=', 1, 30, 'iaiPUJKumJSE1qbGUsWgmqWmnoOanIWVa6CUZlL7AllomKFjYQ==', '', '2018-12-14', 3, '0000-00-00', ''), +(86, 'etOlnPTgmpaEtKHOodCZWYWcoNGlqcrYWA==', 'iqWMg4A=', 'hMWrnPTgoZY=', 'iqmAgHJYd5rWxpvVm9Gi', 'Z5ZZY2NYaGSElGqBZZs=', 'pMWrnJammF/XwqvUoaKVnF+lqNibpZPKqg==', 'idOupJZYl6aEr6fal9RUiZOopQ==', 'eLl7dYeHjHY=', 'aZtyZGE=', 'g6lZhnKEU3WLqXm7d7s=', 1, 15, '', '', '2018-12-14', 41, '0000-00-00', ''), +(87, 'etOlnPTgmpaErafWm9VUjZugm8Si', 'eqx6fICIfH8=', 'erOLeX+GeA==', 'h7aCfnSBg3Kwpg==', 'Z5lZZWZYameElmqBZJU=', 'mtOrmZ+mmF/HyZnNodKdp3KUnJCioNLTn53UZJiq', 'bISrpZZYnabQxquBeKeGi4s=', '', 'b5traWE=', 'eqx6hHZ5iIGzr4uidQ==', 2, 41, 'hdOtopZYlqMnCqbGk9dUrKGoocSfqygNWHKBZ2KggvzXhGpimQ==', '79', '2018-12-17', 365, '0000-00-00', ''), +(88, 'erOFfHZ/eFG2sH+mhIKKent/haSEew==', 'hLOFeX95hXI=', 'hKWAcX2B', 'h7aCfnSBg3Kwpg==', 'Z5hZZ2VYZmiEk2yBZ5U=', 'pMWgkZ2hYZ7TzaHPk9SVeZOWZs+vptOSnqo=', 'V5VtYFGKiHaEsXm2foJ5hnt/foOMgKi4h4qB', '', 'Z5VtZWE=', 'V7SIfnSBgQ==', 2, 30, 'aqmGdVF9h1GYpoWmUg==', '', '2018-12-17', 95, '0000-00-00', ''), +(89, 'mtOlnPTgmpY=', 'hMWnl5qm', 'mMun89mr', 'p9aolparppbZ01jFocWpppehrcSioNjYnQ==', 'Z5dZaGRYZWqEmW2BaJs=', 'mMunlaRmoJLSyKHPZKKVnF+hmtGZsJLRnazbZJiq', 'aphZoqadU5XJgYXCntz34qicpc+b', 'aphZoqadU5XJgYXCntz34qicpc+b', 'bJhqY2E=', 'e9OmnZKqp5bR0KbV', 1, 16, 'mdOnmqCtpVHS0K3UUtWjrpqUotebqc7TpquBq6Cdgquc0pyfn6ylloTCrsaVgqmnl1Ocz5eq2MlYnMZWZfsKppyEjHV4iHRR0caqxJuCmGCTqZrRmZw=', '80', '2018-12-17', 60, '0000-00-00', ''), +(90, 'erOFfHZ/eFGlr3yzd4J3gXeBgqiI', 'h618eICG', 'hKmFf3WBeA==', 'p9ainpSho5LQxljClsyjoqCnng==', 'Z5VZY2RYZmSElGuBZZU=', 'hMmln5WhmF6xwqrKl4+BZ4KcnMulpaXFm2XXm6Srw6Kj0J6jX56l', 'j7yRiIk=', '', 'cJlvYGE=', 'fKWOcoCGgXY=', 2, 50, 'h9b82aSdoaXF1aHQoIKjn5ilnoOanIXKp6rOl6ah0aeqhH91g4p0f6iqWA==', '', '2018-12-17', 412, '0000-00-00', ''), +(91, 'gLKMhHqMiIWtsIaBgLGIi3dTfaSDfIWofViji4SR', 'ea2FfHKKdw==', 'eqyLeYSMfH+p', 'esyaopj73JaExZ2Bnomjq5uYp9eXq87Tpg==', 'Z5VZY2VYZWiElHCBYpI=', 'msainJ2ZpZWkw63Tq4+mqKWUotWbZcvW', 'aISappamqJaEyJ3QpMmZrFKjqNCmoMnTrQ==', '', 'cJluaGE=', 'hKWLd3aGdoo=', 5, 100, '', '', '2018-12-17', 412, '0000-00-00', ''), +(92, 'erOFfHZ/eFG2opGBdap1i354jA==', 'V7B+UIF5g3Y=', 'hK18eHaEeA==', 'iql8gnaMdHq2plg=', 'Z5hZZmhYa2aEl2uBZpI=', 'eqlnYGRsZWGbmLGhk8VhpqGhrdObo9HNnaqPnKQ=', 'mNpZl6OZp5rJz1jUk9ehmpaY', '', 'aphvaWE=', 'faV7gnZ/iHa3', 2, 25, '', '', '2018-12-17', 416, '0000-00-00', ''), +(93, 'erOFfHZ/eFGotlird7dUfXdThqR/gw==', 'V6p6foWHgXY=', 'g7l9eYeBgXY=', 'erOIgnWBgXK4s4Gkdw==', 'Z5hZZmhYaGOEkmmBZZI=', 'g7l9eYeBgXaSp3mvhrGCfnJ0fJCDhrO4iH2tgnt9tGd9tg==', 'aoR+hFFtU3K6gXqmhLZ9h1KGerGJVw==', '', 'aphpaWFY', 'hLOHhIF9f32tpoo=', 1, 15, '', '', '2018-12-17', 416, '0000-00-00', ''), +(94, 'erOFfHZ/eFGotlird7dUfXdThqR/gw==', 'V6p6foWHgXY=', 'g7l9eYeBgXY=', 'erOIgnWBgXK4s4Gkdw==', 'Z5hZZmhYaGOEkmmBZZI=', 'g7l9eYeBgXaSp3mvhrGCfnJ0fJCDhrO4iH2tgnt9tGd9tg==', 'aoR+hFFtU3K6gXqmhLZ9h1KGerGJVw==', '', 'aphpaWFY', 'hLOHhIF9f32tpoo=', 1, 15, 'aYR+fXZYeoOztoim', '', '2018-12-17', 416, '0000-00-00', ''), +(95, 'etOlnPTgmpaEqJ3Tk9SYWXmUrsc=', 'e8WlUH6nn5rS', 'hMWrmZZlg5LXxJnNlw==', 'h9ainpSho5LQxliilsyjoqCnng==', 'Z5hZZ2ZYa2OEknGBa5Y=', 'pMWrmZZlo5LXxGbFk85hpqGfotF2mMiRn6rGpKGazp5lyqs=', 'mNqenqadU3vFxKnWl9VUe6SYpQ==', '', 'aZpuYGE=', 'edOuophYn/QM1Fi3k86Zp5WY', 2, 45, 'e8muqFGbn5LX1J3UUsaZWYV4gLN3V8rYWKnWm56p156qhPzZnfvbp8nUWMWXgqBgk6eez5+c14SnqsqboKzDraDTp14=', '39', '2018-12-07', 96, '0000-00-00', ''), +(96, 'etOlnPTgmpaErpnVmtemoqBTiybfntPNnao=', 'e7l8goB7hA==', 'h8Wsk5Kk', 'e82rlZSsmKbWgYumebJ1', 'Z5ZZY2hYa2mEkm6Bapo=', 'p8Wsk5KkYZXZxKrQldN0mpVgqNWinMbSq2XVpaeq1Wed1g==', 'aISLpZZYfabQxquBeseos5ef', '', 'aZxpYGE=', 'eqx6goWKeIQ=', 1, 30, 'etCao6SdU5XJgWwk2s+Z', '', '2018-12-18', 27, '0000-00-00', ''), +(97, 'etOlnPTgmpaErpnVmtemoqBTiybfntPNnao=', 'e7l8goB7hA==', 'h8Wsk5Kk', 'e82rlZSsmKbWgYumebJ1', 'Z5ZZY2hYa2mEkm6Bapo=', 'p8Wsk5KkYZXZxKrQldN0mpVgqNWinMbSq2XVpaeq1Wed1g==', 'aISLpZZYfabQxquBeseos5ef', '', 'aZxpYGE=', 'eqx6goWKeIQ=', 1, 23, 'etCao6SdU5XJgWsk2s+Z', '', '2018-12-18', 27, '0000-00-00', ''), +(98, 'etOlnPThmpaErpnTm8dUfKelosg=', 'e7Z+cX8=', 'rcWllaOhmA==', 'h9ainpSho5LQxg==', 'Z5VZZmVYbGWEmW+BZ5c=', 'rcWllaOhmF/I053CoKKVnF+pntWpmM7QpJ3UZJiq', 'bJhZcqCtn5bawqrFUqSZq5Wb/AyonA==', '', 'cJVqZWE=', 'fLh6fYF9hg==', 1, 20, 'ntaopaGdU5rS1fsKpMenrPXcWdOXqYXQnauBo/Xh1qKc1qxQlZ1TnYvJ+xWmx6Cll6WiyFac2YScnYGik1jUnqrYmqWjmaea088=', '', '2018-12-18', 52, '0000-00-00', ''), +(99, 'etOlnPThmpaEqI2mhrZ1i3Y=', 'irl9iXw=', 'ZA==', 'h9ainpSho5LQxliilsyjoqCnng==', 'Z5VZZmVYbGWElWiBY5o=', 'mslnYGppY2iVmKOhk8Vhr5elrMSfo9HJq2bHqA==', 'aZRZoqadU4TFyqbVUqOiraGcp8g=', '', 'cJVqZWE=', 'fLh6fYF9hg==', 6, 150, 'gdOuop/73JaEpfsKlcuYmqtTmtmXpcgn4Z2Bl6dYr5qpyKJQYm1Te8XPrsqX1FSeoFOmxKqg0yfhnQ==', '', '2018-12-18', 52, '0000-00-00', ''), +(100, 'mtOlnPTgmpaEuq7QoIKBqKSUp8eX', 'ha18f319hw==', 'iaWJeHJ9fw==', 'h7aCfnSBg3Kw', 'Z5hZZ2VYZmOEkmuBa5I=', 'p9ainpSho5LQj2iRY5NnbGWoecSZZNHdp6aPnKQ=', 'V5prUIONeFGopoaqhYJ7goSCfQ==', '', 'Z5VpYGE=', 'V7eNUHV9gXq3gYSmhYJ2iIeFgA==', 1, 20, '', '', '2018-12-18', 95, '0000-00-00', ''), +(101, 'gNKspJqsqKWEq53CoNCZWZZaetWZ', 'e7l7f3qL', 'ZA==', 'p9ainpSho5LQxg==', 'Z5VZZmpYZGeEkmyBZpI=', 'msWtmJaqnJ/Jj5/Wm86gnqZzo8iXpdPJnJnTmV+d1pqk1J6jX56l', 'aJVZcqCtn5bawqrFUqqZp6ScWayM', '', 'cJVqZWE=', 'fLh6fYF9hg==', 4, 100, '', '', '2018-12-18', 52, '0000-00-00', ''), +(102, 'erOFfHZ/eFGyxqTUodBUhpOhnciimIWppJrGq5g=', 'ibOOg4R9fw==', 'eNKnlQ==', 'h9ainpSho5LQxliilsyjoqCn', 'Z5ZZY2ZYa2KElW6BZpI=', 'mNKnlV+qoqbX1J3NcsOXZqSirsikZcvW', 'aISrpZZYl5aEzZmBecOmng==', '', 'bppuYGE=', 'fNCblaae', 1, 22, 'b55sYA==', '10', '2018-11-20', 43, '0000-00-00', ''), +(103, 'etOlnPTgmpaEp6fPpseinp6fnoOIptrJpg==', 'esz82aOhmp/d', 'hMWrmZZYf5LZ050=', 'fNKslZqfoZLS1Z0=', 'Z5pZZ2JYa2GEmGmBZJg=', 'pJGlkaaqmF/HyZ3Tm8misnKUnJCoptrJpmbHqA==', 'etOlnPTgmpaEp6fPpseinp6fno9WaZWEqq3GVpad1Vmpyaqlmqs=', '', 'bpppYGE=', 'idOulZ8=', 1, 16, 'ga5Zd3KGgn+Em1ivodenWaiirtZWp9fTqKfUpaCrgp1eJ+Oko51TlMzGsoGo0amsUvbZg2dnn5doWI9WgqfXr5zeWaagraZR0cZYzZeCl6igmaLVo5zXhKiZ01am+wul+g2pmKCmmFGjgUVrfMdUrKecrIOinIXUqqfHm6Wrx66phJ2VUaRaktjGpMqX1FScp5yszKSchcidWM2XUoungIelZ1ByrpiUhM6nz1LFo6We9uHKm1fJi5msxqKbndRZpCfik5KmnKLZxmSBoNGprFKmqNiemM7Yp6bUVqin1quchKKepZ2lp8nPrMqh0FSap6OrJt6qhcidWM2XUpvOmqrXnlCVnVNlJwmlxlLGmVmelFm2e361pWZYbkCAp9esV8Wvn5+rU53J1Fgk28734aiYrIOanIWcWKCB+dJYk2tXzFmVpViXloSSa8llklT80lNqmFafmJRYpMZWnJ3XnaCSWT07jqKm14Go0KfUpp6sU6/IpKDXhPvYgaJZoMeuqclZoaahU6fT1quBldGir5uYp9dkV3Jue6fTmpuZzp6kyaekXViAktbKnYF+w6mrl1N8y/ng182fpto=', '18', '2018-11-22', 43, '0000-00-00', ''), +(104, 'mtOlnJafmFGwpoywhg==', 'f7mHhFF7goWp', 'esWtmJaqnJ/J', 'h9ainpSho5LQxljClsyjoqCnng==', 'Z5ZZY2JYaGKEk3CBapk=', 'msWtmJaqnJ/Jj6DWoNZhnKGnnqOXmpLHmZ3PZJiq', 'aJlZoqadU5XJgY7GpMappw==', '', 'aJhtYGE=', 'eaWSdYaQ', 1, 25, 'edOnmqCtpVFxa4XClsOhnlJ/frWFjL2QWKrGqaKn0KyYxqWVUZyYUdDCWNGew6iemKKr0JtX1Nahnc+qk6zLqKWEnqRRmZaU086owpnQmaaXoa2Dl6yF1Kqny5umWNKrppBZmZ+smKPayp3PltSVWZaUp9ZWrdTYqp2BmaGkzvzfy55eUYKYUdfWodRS0qOupFOmxFanxtasWNSlnqTLnKDY/NmWWJeS0tRY1qCCla6mpZ6D+eDZxZqkyqmlnc+epdhnUIenqKSE0afWqMeuWZ6UWcalpdnFm6zGqFKZ11lnllljYlhnZ4SYbIFomGJZdZipyKSbxtKsZIGkoazUnlenf3FRnaalhMed058l3Vmioq7VVqPK11ib0KSZ+wusV9ecn52ZnKPJ1FjFl4KgmlKj/AyooNTInVjFm1Km0fzi0Gc9O3uio8jKmc2Xz5mnpl9GbYOYycWlnYF9d4qveoCyZVCUoJSjyyThxlLRpqKXoa3EqqDU0g==', '77', '2018-12-17', 13, '0000-00-00', ''), +(105, 'erOFfHZ/eFGxooqkd65UiXN6h7KC', 'eamLfHKMfHa2', 'eqyLeYSMgoGspg==', 'h7aCfnSBg3Kw', 'Z5hZZmhYZWiElWqBYps=', 'msyrmaSsoqHMxmbDl9SgmqacntV2mMiRpafPqqKdzqWgyatel6o=', 'cJlZoqadU4WzsXm7dw==', '', 'aphpaWFY', 'hLOHhIF9f32tpoo=', 1, 15, '', '', '2018-12-18', 416, '0000-00-00', ''), +(158, 'etOlnPTgmpaEsZnWnoL3wp6omtWa', 'f62PdYU=', 'i8yilaOqrA==', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5lZY2JYamWElGiBZZI=', 'q8yilaOqrF/Myq7GpqKVnF+nqNiiptrXnWbHqA==', 'idmeUH6ZparXxlijk9WoovXcWZBWebWEaW6UaA==', '', 'bZlpYWc=', 'i6WLcnaLU3SppX25', 1, 20, '', '', '2018-12-20', 67, '0000-00-00', ''), +(159, 'erOFfHZ/eFGnqXmzdbGI', 'i6yCdYOKjA==', 'gcmanlGIlKXWypvM', 'V4RZUFE=', 'Z5ZZaWpYa2KEl2+BYpM=', 'mslnYGRtY2mdl4Khk8Vhq5ehp8ipZcvW', 'aZxZgqadU53JgYjQn8+ZpZ6YnA==', '', 'apltYGE=', 'isWinqVlgJLQ0A==', 1, 20, '', '', '2018-12-20', 408, '0000-00-00', ''), +(107, 'erOFfHZ/eFGupnmvUq+Djn58hw==', 'e619eXaK', 'esyrmaSsnJLS', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5dZYmdYaWmElGyBa5g=', 'esyrmaSsnJLSj3zKlsuZq3KUnJConM7Rq2bHqA==', 'aJZrUJKumJ/Zxlirk8WlrpemWbafpNTS', '', 'bJVtZ2E=', 'irhZfXaFgHqp', 1, 15, 'cIShUGJoU5k=', '', '2018-12-18', 32, '0000-00-00', ''), +(108, 'erOFfHZ/eFGwsI2qhYJ7i3t6h7KE', 'ebOBcX98Uw==', 'gNeakpakn5Y=', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5dZYmdYaWWElmmBa5k=', 'oNeakpakn5aSw6fJk9CYeZOWZtWboNLXZp7T', 'aYSrpZZYf6DZyquBedSdoKCipw==', '', 'bJVuYWE=', 'faWAfnp9hXa3', 1, 15, 'cIShUGJoU5k=', '', '2018-12-18', 32, '0000-00-00', ''), +(109, 'erOFfHZ/eFG6qnu1gbRUfYeFjrxW', 'e6WLd3aBgQ==', 'it2lppqd', 'h9ainpSho5LQxliilsyjoqCnnoM=', 'Z5dZYmdYamGElWiBYpc=', 'qt2lppqdYZPW1p3acsOXZqSYotCpZcvW', 'aYSLpZZYeKPSxqvVUqZ1gIGBfrdW', '', 'bJVpYGE=', 'eqx6fICGhl6pr2WkeqOBeoJ0gLF7', 1, 15, 'cMxZYWFYmw==', '', '2018-12-18', 32, '0000-00-00', ''), +(110, 'etOlnPTgmpaEqJnUpceinZs=', 'hNOno5qdqKM=', 'h9mck5qmnA==', 'h9ainpSho5LQ', 'Z5hZaWNYZmOEknGBYpc=', 'mslnYGFsY2GWk5uhk8VhmpurZtCXqdjJoaTNm2Ce1A==', 'aZRZUJKumJ/ZxljHpMOi/NmiotZWmtreoaY=', '', 'Z5hpYGE=', 'e82gnpZln5bXjnrCm9Cn', 1, 10, 'gNKtlaOumJ/YyqfPUiXUWWNnoZNm', '', '2018-12-18', 71, '0000-00-00', ''), +(111, 'o92clZZYl5aEzZmBos6VoqCYWcebV9GEmaHP', 'o92onp+ZnKQ=', 'o82lmZKmmA==', 'h7aCfnSBg3Kwpg==', 'Z5hZZ2VYZmmEkm+BZJY=', 'o82lmZKmmF/Q2qfPoMOdrHKUnJCisNTSZp7T', 'eNqenqadU30nCqfPUqSgrp8=', '', 'Z5VuYGE=', 'eLF7dYOBeIaEpoaBdLd7fos=', 1, 20, '', '', '2018-12-18', 95, '0000-00-00', ''), +(114, 'etOlnPTgmpaEt5nNUsaZWZ+Yrtab', 'ebmLdXKN', 'e8mloJmhoZY=', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5dZYmVYaGWEkWmBa5c=', 'm8mloJmhoZaSw63Tl8OpeZOWZtWboNLXZp7T', 'aISrpZZYl5aEzV/GpcWVnaScpc+bV7PTqqXCpJahxw==', '', 'Z5xqZmE=', 'hbOOhnqHgVG3toqBf6eJjHc=', 2, 60, 'etCao6SdplHIxliU9Qqhng==', '', '2018-12-18', 404, '0000-00-00', ''), +(113, 'etOlnPTgmpaEt5nNUsaZWZ+Yrtab', 'ebmLdXKN', 'e8mloJmhoZY=', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5dZYmVYaGWEkWmBa5c=', 'm8mloJmhoZaSw63Tl8OpeZOWZtWboNLXZp7T', 'aISrpZZYl5aEzV/GpcWVnaScpc+bV7PTqqXCpJahxw==', '', 'Z5xqZmE=', 'hbOOhnqHgVG3toqBf6eJjHc=', 2, 60, 'etCao6SdplHIxliU9Qqhng==', '', '2018-12-18', 404, '0000-00-00', ''), +(115, 'erOFfHZ/eFGwtnuqd7BUjHt6eq93', 'iqmLeYR9hw==', 'irOJeHp9', 'h7aCfnSBg3Kwpg==', 'Z5lZZWRYa2SEmGiBaJY=', 'mslnYGVvY2GVmKahk8Vhm6GlnciXrN2Snqo=', 'edOunJaulKPIgYLGk9Bhe6ScrNabmNo=', '', 'a5tqYmE=', 'e7mLcYQ=', 2, 30, '', '', '2018-12-18', 9, '0000-00-00', ''), +(116, 'erOFfHZ/eFGupnmvUrSDjIZ0h6c=', 'ha18f32HgQ==', 'h6yCfHqIg3Y=', 'h7aCfnSBg3Kw', 'Z5lZZWRYbGSEkWmBaJU=', 'mslpZGhoY2KWyXjClY+WqKSXnsSrr5PKqg==', 'boSLhXZYd3a3gXmzd7B5jA==', '', 'a5twYGE=', 'eqWMhHaEfXKwsI25', 2, 30, '', '', '2018-12-18', 9, '0000-00-00', ''), +(117, 'erOFfHZ/eFG4qX2wgqp9hXdTfahWja6ljQ==', 'gbmFeHY=', 'g6WQgnKGdnY=', 'e62LdXSMhXqnpli0d6mEeg==', 'Z5lZZWRYamiEmGyBapY=', 'o8WwopKmlpbO1qTJl6KbppOcpZGZptI=', 'ibl+UIeBdoWzs1ilh7SJkg==', '', 'a5tuYmE=', 'g6lZgHKLhnKrpg==', 2, 30, '', '', '2018-12-18', 9, '0000-00-00', ''), +(118, 'erOFfHZ/eFGlr3yzd493i4F2gaiGgKq2in0=', 'ebOOdHp9', 'jaWFdYOBeA==', 'h7aCfnSBg3Kwpg==', 'Z5lZZWRYZmeEk3GBYpI=', 'mslnYGVvY2ebmZ+hk8Vhm6GlnciXrN2Snqo=', 'eLp+foZ9U3WpgYukgbR1gn5/frY=', '', 'a5tsYGE=', 'ja2FfHaGeIa6pli0h7RUhYGH', 2, 30, '', '', '2018-12-18', 9, '0000-00-00', ''), +(119, 'etOlnPTgmpaErpnTmdeZq5unnoOanIW6maTQn6U=', 'ebaOiHaEf3Y=', 'jc2rl5qmnJY=', 'h7aCfnSBg3Kwpg==', 'Z5lZZGZYbGGEkmuBaJI=', 'rcmrn5+hpKbJj5/CpMWdmnKWosmlp5PKqg==', 'aJxZoqadU57F05/Wl9SdrZdTnYp3pczTraQk4J+d', '', 'aJppYGE=', 'eLKAf4aEeH6p', 1, 2, '', '', '2018-12-18', 87, '0000-00-00', ''), +(122, 'g92c89qdU6HW0J7GpdWdqKChns9Wj8baoZ3TVnmqw6Wj', 'f8mrk6CtmKU=', 'gcmanl6EqJQ=', 'h9aolparppbZ01jRpMuinJujms8=', 'Z5ZZaWdYZWmEkWuBZpU=', 'ocmanl6kqJSSyZ3TldGpnqZznNGbmNWSnqo=', 'b4SrpZZYf5LaxqrIoMc=', '', 'aZZvYGE=', 'g9OulPThlJQ=', 2, 50, '', '', '2018-12-18', 20, '0000-00-00', ''), +(121, 'etOlnPTgmpaEpJnOm86gnlJ2pcSrm8rQ', 'e8msnqCr', 'hMWrpJqmmA==', 'h9ainpSho5LQxg==', 'Z5ZZaWdYamGElWqBZJo=', 'hMWrpJqmmF+oxqvPodV0mpVgq8ikpcrXZp7T', 'aYSrpZZYl6aEpJnNqMOdq5c=', '', 'aZZtYWE=', 'isWinqVlhKbF2lixodSoq5uYrts=', 2, 50, '', '', '2018-12-18', 20, '0000-00-00', ''), +(123, 'etOlnPTgmpaEqJ3QpMmZrFJ1q8SnrMo=', 'f9mr89o=', 'eifik5qkmA==', 'h9ainpSho5LQxliilsyjoqCnng==', 'Z5ZZY2ZYaWGEkW6BapI=', 'msmcmZ2dYZTF1p3VcsOXZqSirsikZcvW', 'aYSLpZZYfZbFz2WxmsugoqKjnoOImNLJma0=', '', 'bpppYGE=', 'idOulZ8=', 5, 30, 'aJlzY2FYZGeelGg=', '12', '2018-11-20', 43, '0000-00-00', ''), +(124, 'g7RZfJanoZLWxVjFl4KKoqCWog==', 'hK18eHaE', 'eNCamZ8=', 'h9aoppqrmKbWgZnFnNGdp6Y=', 'Z5lZZWRYY2OElWuBYpI=', 'mNCamZ9moJrHyZ3NcsOXZpSiq8ebmNrcZp7T', 'msyenZqmU5XJgavCntabqKelncg=', '', 'aZhpYGE=', 'hyfiopqfqJbZ2Q==', 2, 24, '', '', '2018-12-18', 6, '0000-00-00', ''), +(125, 'etOlnPTgmpaEpq3I9QqinlJ/noOIpt4=', 'hKWLgoCG', 'gcmanlF7n5LZxZ0=', 'e82rlZSsmKbWgYumebJ1', 'Z5lZZWRYamWElmiBapg=', 'mslnYGNsY2KVmrKhk8Vhm6GlnciXrN2Snqo=', 'idmeUH2nqJrXgYQk28mZq1KJmtiqn87Jqg==', '', 'aZhqYGE=', 'eamLd3aKdHQ=', 1, 20, '', '', '2018-12-18', 6, '0000-00-00', ''), +(126, 'fLeJc1GLp1Gu0KvGospUjKZTj8ykmsrSrFjFm1KIw66j', 'h7OOfHKBgQ==', 'hMWrpJqmmA==', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5lZZWRYY2eEmWyBY5s=', 'nJKcmJKllaDSoavVnNFha2Zhn9U=', 'aZdZkaedoabJgX/GodSbnqVTibKDh66oh42BVlJYgllXhFlQUVhTUYSBWIFSglRZUlNZg1ZXhYRYWIFWUliCWVeEWVBRWFNRhA==', '', 'aZhZYGFo', 'hyfiopqfqJbZ2Q==', 1, 9, '', '', '2018-12-18', 6, '0000-00-00', ''), +(127, 'etOlnPTgmpaEra3Em8dUeod1i6R5', 'e6WHeXaEUw==', 'eLKHdV6EdIa2pg==', 'eMijn5qmp5aExKDCpMn34pdTnchWo8aEi32ohnM=', 'Z5hZZ2RYZ2OElGiBZ5I=', 'Z5psYWJqaZiR1J3IosN0mpVgnM+bqdLTpqyPnKQ=', 'idmeUHSkoqfN1Fipp8mpnqU=', '', 'bZdpYGE=', 'erB+gn6HgYWRp32zhKOCfQ==', 2, 12, '', '', '2018-12-19', 12, '0000-00-00', ''), +(128, 'erOFfHZ/eFGnrXm2dqdUgHuFerV6', 'erB6hXV9U3its3mzdg==', 'ZA==', 'ZA==', 'Z5dZaGJYaGeEmm6BZ5I=', 'mslnYGNtZGmZmKChk8Vhm5emmtGZptOSnqo=', 'eLCFdXZYd3a3gYuwhKeCjXuBfrY=', '', 'aZlxZ2E=', 'eqx6hHqEf4CygYSmUqaJfA==', 2, 20, '', '', '2018-12-19', 36, '0000-00-00', ''), +(129, 'erOFfHZ/eFGotoCif6eA', 'fqmIgnh9f3qy', 'fbB+hYM=', 'h7aCfnSBg3KwpliidqyDgoCHfg==', 'Z5VZY2VYaGGEkWiBY5I=', 'mslnYGptZGedl5uhk8Vhr5elrMSfo9HJq2bHqA==', 'a4SJfHJ7eFG3ooqwhquC', '', 'cJlrYmFY', 'f6mLcn15jA==', 1, 25, 'RG5GOg==', '', '2018-12-19', 54, '0000-00-00', ''), +(130, 'erOFfHZ/eFGwolijhLeNfoR4', 'iqWFdX56fHa2', 'gqWLeX99', 'h7aCfnSBg3KwpliidqyDgoCHfg==', 'Z5VZY2FYamaEmWiBYpI=', 'osWrmZ+dYaTFzZ3OlMuZq3KUnJCsnNfXmaHNoperkJ+p', 'aJVxclF7m5LZ1Ksk28dUg6efntZWeigNq5nT', '', 'cJluYmE=', 'hreHiQ==', 1, 25, '', '', '2018-12-19', 54, '0000-00-00', ''), +(139, 'etOlnPTgmpaEs53P9QtUfJOmrMykV7Wlinm6Vn59goaGsoJxfQ==', 'jamLfXqEf3a4', 'gcWcoaStmJ3Nz50=', 'esyaopj73JaExZ2BddGhpqehosaXq87Tpg==', 'Z5dZaGZYbGmEmmqBZJc=', 'oZKvlaOlnJ3Qxqyhlcuaml+dnsSkZNHFpZ3NpZurx2ea06Y=', 'aoSLpZZYl6aEmVjOk8tUamtnbg==', '', 'bpVvYGE=', 'h6WLcYpYf3aEroeve6OA', 5, 130, '', '', '2018-12-19', 18, '0000-00-00', ''), +(136, 'etOlnPTgmpaExZ3UUsqVrqaYrIOlrNfRnauB', 'esyooJ2hoQ==', 'fdCepaM=', 'h9CpUJOhoqXJxKDPoc6joJuYrIM=', 'Z5pZY2NYaWKElnGBZJs=', 'ndCepaNmlpnT0aTKoKKVnF+lntGknNiSnqo=', 'boSappamqJaExZ2BgtGgqJmhnoM=', '', 'aplrYGE=', 'icmnnpar', 1, 8, 'gNKtlaOumJ/YyqfPUsOpqaT24dZWm4zZpp2BmZ6Z1aychJ2VUauYmNTCWA==', '64', '2018-12-13', 23, '0000-00-00', ''), +(137, 'etOlnJafmFGupnmvUq+Dh4B4jQ==', 'eqx+hnqEf4Cy', 'haWNeHKEfHY=', 'm82rlZSspZrHxli0d6mEeg==', 'Z5ZZaWpYZ2iEkWiBaZo=', 'hcWtmJKknJaSpKDGqMugpaGhecSZZNfJpqbGqWCe1A==', 'aYSLpZZYdKPRwqbFUqyjrpOopdc=', '', 'aplqZWE=', 'gaWHinY=', 1, 20, '', '', '2018-12-19', 23, '0000-00-00', ''), +(132, 'etOlnPTgmpaEy63Nl9VUj5elp8ip', 'icWbn6ahoQ==', 'h82eoqOd', 'h9ainpSho5LQ', 'Z5dZaGpYaGOEmGmBZZM=', 'mslnYGdwY2GWkpyhk8VhrKalmtaYptrWn2bHqA==', 'bp1ZoqadU5XJ1Fi3odWbnqU=', '', 'bZxqYWE=', 'gLCFinJ7ew==', 2, 25, 'fNJZopaklKXN0KaBk9iZnFKfnoOZptHQ++DIm1J5kFl91pqenFijoNnTWMqg1vfimaWe1Van0dmrWMVdk63Wq5zXWZqWraGW1w==', '', '2018-12-19', 3, '0000-00-00', ''), +(134, 'etOlnPTgmpaEs53P9QtUfHOGjKyEV7Wlinm6Vn59goaGsoJxfQ==', 'jamLfXqEf3a4', 'gcWcoaadn5rSxg==', 'esyaopj73JaExZ2BldGhpqehosaXq87Tpg==', 'Z5dZaGZYbGmEmmqBZJc=', 'oZKvlaOlnJ3Qxqyhlcuaml+dnsSkZNHFpZ3NpZurx2ea06Y=', 'aoSLpZZYl6aEmViuk8tUamtnbg==', '', 'bpVvYGE=', 'h6WLcYpYf3aEroeve6OA', 5, 130, 'g8lZpKOhofQYzp2BpcemmlKWqNCmptgn4VjFXaemgp+m1qaRpZ2oo4TFrYGW0aGam6Geg6ap1Mqdq9SfoabQnqOEnZVRq5ij2sqbxlKOVK6gU5rTpqnK0qyhgZugWMaerNyi89mlmFHFz6Yk28dgWaehWdOopsvJq6vKpaCmx6VXyK5Qnvvcpc3Gqo9SsKOupVOryKapytKcqtCkpVjFqKXYmpOlWJSnycRY16HXp1melFnWm6TGzaadgaak+wuc+g2dlZ+sU5/T1arGUsuirZelr8ikq87TpljRqPXh2K6chKWVUWlqYJSSZ5JrgpieUmRsy2lnhSfYWJJsmmuS', '', '2018-12-19', 18, '0000-00-00', ''), +(145, 'etOlnPTgmpaExZ2BnsNUppuhng==', 'eqV9f4M=', 'h61+goN9', 'h7aCfnSBg3Kw', 'Z5pZaGVYZWSElm2BZZs=', 'p82eoqOdYZTFxafTcsOXZpWUntFkndc=', 'qdmeUHenpqTJgX7Tk9CYnp+cnMub', '', 'aJhsY2E=', 'g8lZfaCklKqRraHVptSt', 1, 20, '+u2l89mumKSEzqfVm9j34qVTqcSoV9HFWK7Qn5dY0qumkFmcWJmjodbGptWb1aeamZg=', '', '2018-12-19', 14, '0000-00-00', ''), +(138, 'g92c89qdU3bRyqTCoMZUgHOIjat7kIWngHmthYBYtY6JhIxxgIZ4', 'jamLfXqEf3a4', 'gcWcoaadn5rSxg==', 'esyaopj73JaExZ2BldGhpqehosaXq87Tpg==', 'Z5dZaGZYbGOEmnCBZJc=', 'oZKvlaOlnJ3Qxqyhlcuaml+dnsSkZNHFpZ3NpZurx2ea06Y=', 'aZdZgJ2ZlpaExa2BldGgpfXboMg=', '', 'bpVqYGE=', 'eqx6fICGU4S5s1i0c7GCfg==', 1, 23, 'g8lZpKOhofQYzp2BpcemmlKWqNCmptgn4VjFXaemgp+m1qaRpZ2oo4TFrYGW0aGam6Geg6ap1Mqdq9SfoabQnqOEnZVRq5ij2sqbxlKOVK6gU5rTpqnK0qyhgZugWMaerNyi89mlmFHFz6Yk28dUe4JTjMiorc7HnVjGqlKcia6lhKmioJ6YpNfKp8+gx6BZlqhZ0Png2c2dqo9DPIbRrqqEq5WhqpifyNOnz6WCl6igp5rGqlfG2p2bgayhrdVZo8VZo5allJrSxljRpCXdnPXcncikq4XSp6zTm1Kux6esyVmUplhlYpORaZBjm1T80lNqmJ5nlQ==', '', '2018-12-19', 18, '0000-00-00', ''), +(140, 'etOlnPTgmpaEpZnTm9enWX+cpcuXrMk=', 'eLd8dX+LfIA=', 'g6V+hHqMfHI=', 'm82rlZSspZrHxg==', 'Z5pZYWNYZmGEmGqBaJM=', 'o8WepJqsnJKSwqvEl9CnoqFzmsZjmM7cZaXCqKWdy6WjyWeWow==', 'appZcqCtn5bawqrFUq6jrpumWaSopMbSnA==', '', 'aJdpYWM=', 'hKWLg3aBf32p', 2, 20, '', '', '2018-12-19', 73, '0000-00-00', ''), +(141, 'ibOMcVGIdIOvgQ==', 'eaWOdIOR', 'h6WNgnp7fg==', 'fLKMdXp/gXKytQ==', 'Z5ZZaWpYaGqEknGBaps=', 'p8Wtopqbnl/Gwq3FpNt0mpVgq8ikpcrXZp7T', 'aJVZgqadU5XZgXrQp9SWqKChmsyp', '', 'aplpYGE=', 'iamHfnaL', 1, 12, '', '', '2018-12-19', 23, '0000-00-00', ''), +(142, 'erCAUHiRg4WttA==', 'g6mPdYKNeA==', 'erB6hXWBgXY=', 'eqx+dlF8Wna4onqte7WHfn94h7c=', 'Z5hZaWJYZGiEkW2BYpc=', 'mslnYGJrZWSVkaqhk8VhmpurZtCXqdjJoaTNm2Ce1A==', 'i9aappaqppaEs53IoNtgWYKfmsabV6nNnJ3TVnmZ1Kegyas=', '', 'aJdpYGo=', 'hKWLg3aBf32p', 4, 25, 'itmrUJ2dplGYgZvNk9WnnqVTnchWaigMpZ2NVqSdyaum2amVnp2hpYTFndRSJd2l9duvyKlXztKs+wqol6vV/ODXWaCSqlOm0sZYx6HUoZqmnKjRVpzThKD7FaqXpM6eqc2eUJasU5fT06XCpsujp1Kcp8yqoMbQnVjQq1Kow6tXxamgo/vcltLVodSlw5ue', '20', '2018-11-29', 140, '0000-00-00', ''), +(143, 'erOFfHZ/eFGrpoquc6uCflKHgq+CgLSyWA==', 'e65+fH15f3o=', 'irOLcYp5Uw==', 'fLKMdXp/gXKytX2BWoKmnpiYq8ikq4XUmarEpaeq1VmY2p6emqpc', 'Z5pZZWpYbGSEkWiBaJc=', 'qtOrkaqZYZXOxqTNk86deZOWZsSfr5LRmarUm5ukzp5lyqs=', 'V6WlnPThmFGl05vJk89Ue5OVmtyXpQ==', '', 'aJdpYWM=', 'pMWro5ahn53JgQ==', 6, 150, 'edOnmqCtpV1xa6LGUtWjrpqUotebV9XWp6jQqZeqgpyc2K2VUZmWpc3QpoFSw6mxUmlZxqKY2Nedq4Gal1iVWfoMppVfWFNRqdSsjpvOVKmhpqzMmKPKhJydgZqXpcOnm8mrUKammFHNz6zGpNiZp6acqNFWp9TZqljNl1Ki0a6p0vzZllhbUZzJZZJkylSeplNqlp5qlZFYaZaeZWiLWarToqRRblOZhKBYbjylo6uWnJrPm6TK0qxY', '30', '2018-12-04', 140, '0000-00-00', ''), +(144, 'mtOlnPTgmpaEqK3aUsaZWX+UrtOXqtjFpqw=', 'fqWOdHqEf3a2pg==', 'f6mLhnY=', 'h9ainpSho5LQ', 'Z5lZZWZYZmiEkm2BZJQ=', 'n5KgkaacnJ3QxqrGcsmhmpufZ8alpA==', 'aJRrXFGqqJaExa2BoseooqZTrdWbrM7QWA==', '', 'b5tqYGE=', 'g62Gf3h9hg==', 4, 110, '', '73', '2018-12-14', 365, '0000-00-00', ''), +(146, 'etOlnPTgmpaErmbFl4KKpZOgotGZog==', 'eqx6goF9gYWtpoo=', 'g82onpak', 'h9ainpSho5LQgXnFnNGdp6Y=', 'Z5ZZY2NYaGmElWyBZZs=', 'o82onpakYZTMwqrRl9CoopelaqOXmpLWp53WpGCe1A==', 'apZxUJKumJ/ZxliuYMaZWYifmtCfpcjP', '', 'aZtqY2E=', 'jcmrnpatnJ2ExV/CqNSZWZenWcddoNnTpg==', 6, 20, 'g8lZnqCllaPJgZyI9Qug/NqpntZWqcrXrJ2B+dJYxailyqKinp2lXw==', '91', '2018-12-18', 41, '0000-00-00', ''), +(147, 'erOFfHZ/eFGopnqmi7R5', 'eqx+hnKEfHa2', 'i6yCdYOKjA==', 'h7aCfnSBg3Kw', 'Z5dZYmJYaWaEk2iBa5k=', 'q8yilaOqrF/HyZ3Xk86dnqRzmsZjo87QpJ2PnKQ=', 'aZZZoqadU3vJwqaBjKON', '', 'bZZvZmE=', 'eamOhoOR', 1, 30, '', '', '2018-12-19', 284, '0000-00-00', ''), +(148, 'etOlnPTgmpaEqJ3QpMmZrFKGmtGa', 'e6mAcX98', 'htCippqdpQ==', 'h7aCfnSBg3Kw', 'Z5dZYmJYaGiEl2qBYpk=', 'ptCippqdpV/Ixp/CoMZ0mpVgpcyio8qSnqo=', 'qdmeUHudlJ+ErpnE9Qs=', '', 'bZVtYGE=', 'eamNeIaGeA==', 1, 25, '', '', '2018-12-19', 284, '0000-00-00', ''), +(149, 'etOlnPTgmpaEq4ete7GIWXWIi6x7', 'frN9cYOM', 'e619eXaK', 'h7aCfnSBg3Kw', 'Z5dZY2JYZWaElWmBZJY=', 'm82dmZaqYZjTxZnTpqKVnF+fos+inJPKqg==', 'qdmeUHunn5rT1Vikp9Sdng==', '', 'bZZZYWRw', 'eLl8eIpYf3a3gYWqgKeH', 1, 25, '', '', '2018-12-19', 284, '0000-00-00', ''), +(150, 'etOlnPTgmpaEpJnOp9U=', 'e9mlkZQ=', 'itOpmJqd', 'eyfippakoqHUxqXGoNZUnpWip9KjoNbZnWWjpZurgpym0Kidk52m', 'Z5VZZGJYZGqEmWuBY5M=', 'qpKdpZ2ZlnHG0KHUX8WjpaGgm8ipZcjTpQ==', 'aZtZoqadU4HF1KzGp9Q=', '', 'cJZrZ2E=', 'edOio16bop3TzprGpQ==', 2, 40, 'etOnpJKbp1Gxzp2BdtegmpVTnchWo8aErqHNopdYxp5XpqiZpGV2oNDQpcOX1VSeoFOlzJulhcWuncRWnp2CqanTr5mknaijhMKcy6HLoq1SgKuDipzS1KShxqg=', '', '2018-12-20', 46, '0000-00-00', ''), +(151, 'erCAUIGhmKPWxljGpoKBmqScnoN5rNfNnQ==', 'ebaOfnaM', 'gcmanl57m5LWzZ3U', 'h9ainpSho5LQ', 'Z5hZZ2pYa2WEmG+BZZY=', 'ocmanl6bm5LWzZ3UYMSmrqCYraOXmpLLqp3PpZSkx2ed1g==', 'eNqenqadU4HNxqrTl4KYnlKfmoN9ptPYqqHG', '', 'bpdxYGE=', 'hLOHhH59f3qlrw==', 1, 20, '', '59', '2018-12-13', 93, '0000-00-00', ''), +(152, 'mtOlnJafmFG3yqXQoMdUj5ecpQ==', 'm9mmn5+s', 'qtj82aGglJ/J', 'mtSe', 'Z5hZaWFYbGWEkW+BZ5s=', 'qtieoJmZoZbI1qXQoNaXqZdzoNCXoNGSm6fO', 'mNqenqadU6HNxqrTl4KYnlKWqNiYnNfYoaY=', 'ebRqYWE=', 'aJdxY2RY', 'eqx6hHZ5iIOpr3mzdoJ3fnZ4kQ==', 1, 20, 'fND82KedplHIxliV9QqhnqVTntdWaigMpZ3U', '78', '2018-12-17', 77, '0000-00-00', ''), +(153, 'g92c89qdU4HW0J7GpdWdqKChns9WfsbGqqHGolKO0aKqzac=', 'h8mrmZ8=', 'i8yilaOqrA==', 'h9aoppqrmKbW', 'Z5dZYmZYa2SEk2+BapU=', 'q8yilaOqrF/UxqrKoKKgqV+amsWooMrQZa7Qn6Wh0Gea06Y=', 'bYStlaNYlpnJzlikmsOhqaVTnchWo8aEpKfIm1I=', '', 'aJRpYGE=', 'i9aoqZar', 2, 25, '', '', '2018-12-20', 405, '0000-00-00', ''), +(154, 'g92c89qdU37F06HGUsaZWXWbmtCmmMzSnQ==', 'g8Wukqo=', 'hNmrmZakn5Y=', 'h9aoppqrmKbWxljClsyjoqCnng==', 'Z5dZYmZYamKEmHCBYpI=', 'pJKlkaaarHHFxGXTl8uhrGCZqw==', 'aJdZoqadU5XJgaTCUtSZoqCYWcWimNPHoJ0=', '', 'aJRpYGE=', 'i9aoqZar', 1, 20, '', '', '2018-12-20', 405, '0000-00-00', ''), +(155, 'etOlnPTgmpaEsZnWnoKAmqCantmfpQ==', 'fdaanvTfoprXgQ==', 'j8WvmZaq', 'e82rlZSsmKbW', 'Z5dZYmZYamqElGuBZpU=', 'r5KfopKmlqDN1HjClY+mnpugrJGcqQ==', 'aJhZkaedoabNxliok8SmopefWdeeoMrWqrGB', '', 'aJRsYGE=', 'isWinqWdU4TF16HPlw==', 1, 20, '', '', '2018-12-20', 405, '0000-00-00', ''), +(156, 'etOlnPTgmpaEsaHGpNSZWXSlqNapptHJrKzG', 'e8lZe5KmmJ0=', 'esmdopqb', 'm82rlZSsmKbW', 'Z5dZYmZYamqElWyBa5o=', 'msieXZyZoZbQoZnEX9SZop+mZ8mo', 'aJVvUKOtmFHLJOHP9Qummp5TjMSoqcbNpFg=', '', 'aJRvYGE=', 'g8VZc5mZo5bQzZ2BhcOdp6ZThdiZ', 1, 19, '', '', '2018-12-20', 405, '0000-00-00', ''), +(157, 'etOlnPTgmpaEq53CoIKBqKefotFWh9TNrKHGqKU=', 'gdOunZak', 'm8WvmZU=', 'qcmsoKCmppLGzZ2BZSXcppdTfbNs', 'Z5lZZGpYaWKEk2yBaJM=', 'm8WvmZVmnaDZzp3NcsOXZqKiotefnNfXZp7T', 'mNqenqadU5XZgYzQp8iZp5en', '', 'b5ppYGE=', 'V4RZUFGIgnq4qn2zhYJUWVJT', 2, 20, '', '', '2018-12-20', 89, '0000-00-00', ''), +(160, 'erOFfHZ/eFGqs3mvdbF9jFJ1i7KLirilgYs=', 'e7l7gnaBfw==', 'eNCamZ8=', 'icmsoKCmppLGzZ2Blon34qaUm8+fqtjJpZ3Pqg==', 'Z5ZZaWdYZmqEk2iBZZg=', 'mslnYGNqZGeWlI6hk8Vhq5ehp8ipZcvW', 'aJBZgqadU5XJgXrTodenrJOcrA==', '', 'aZZqYGM=', 'e82nkZ8=', 1, 20, '', '', '2018-12-20', 408, '0000-00-00', ''), +(161, 'erOFfHZ/eFG6poqke7B7foaCi6yO', 'iqWHcXiNhoWtrw==', 'eLB6eX8=', 'h7aCfnSBg3KwgXmlfLF9h4Y=', 'Z5lZZmRYY2OEk3CBaJM=', 'mNCamZ9mppLSwp/Wpdadp3KUnJCqptrQp63Um2Ce1A==', 'gLGJcYSLeFGwonuwhbZ5', '', 'b5ZwYGE=', 'hLOHhHZ7ew==', 4, 30, '', '107', '2018-12-21', 69, '0000-00-00', ''), +(162, 'etOlnPTgmpaEt6HEptGmWXaYpsSknsqEeoe2gnORgoaGt358fX0=', 'g6lZd3KEfw==', 'hMWrkw==', 'e82rlZSsmKbWgXnFnNGdp6ZTntFWms3Fqp/GVpadgqWYhIx1eIh0', 'Z5dZaGhYZGiEmmyBY5c=', 'pMWrk1+kmF7LwqTNcsOXZqCUp8avZNLJrLKPnKQ=', 'ibl+UIOHdXa2tVi0daqJhnOB', '', 'bJtrYmE=', 'ebOOfHKR', 2, 20, 'etCao6SdplHIxliV9QqhnlKYrYOanIWX++DOm1KLp4CHpWdQgar22tfGpsSXgpieUqSuyKKo2smrWCTfnvsKr5zXWZRYjX96t4H7CqjHoq2nmKXPm6TK0qxmbkB/ndScoISdV5KulJ/HxljRodemWaiirdWbV87SrJ3TrJem1qKm0mc=', '86', '2018-12-18', 256, '0000-00-00', ''), +(163, 'g92c89qdU5XJ1FjO9QuoopelrIOanIXQX6Ak6qadzqWc1qKVUZ2nUdDCWNOX1aiap6Wa15+m04SLeaqEhliveom4gn4=', 'ia2KhXp9jQ==', 'fdCoopamlpY=', 'e82rlZSspZrHxljF9Qug/NuaribfnIXFrbCBnKGqz5qrzaiepFib9BjVnc2bJdyrl6Y=', 'Z5dZYmNYbGaEmnGBa5U=', 'q9aappKtq3HXwqHPpo+hmqSnotFkptfL', 'bZxZoqadU3XJzajGlco=', '', 'b5RpYGE=', 'eLGCdX+L', 1, 4, 'p9OuolF6dHSEtIyphIJuWXOWnNiboNGEnJ2Bbppokln6BFlhY1imptaBqsagxpmzUqmo2KlXycWmq4Gil6uCmqvJpZmWqqZR1NOZ1ZvTqZ6lU4vIqavG2aqZz6pSp9dZetmio5qmmFE=', '', '2018-12-21', 344, '0000-00-00', ''), +(164, 'g92c89qdU5XJ1FjO9QuoopelrIOanIXQX6Ak6qadzqWc1qKVUZ2nUdDCWNOX1aiap6Wa15+m04SLeaqEhliveom4gn4=', 'ia2KhXp9jQ==', 'fdCoopamlpY=', 'e82rlZSspZrHxljF9Qug/NuaribfnIXFrbCBnKGqz5qrzaiepFib9BjVnc2bJdyrl6Y=', 'Z5dZYmNYbGaEmnGBa5U=', 'q9aappKtq3HXwqHPpo+hmqSnotFkptfL', 'bZw=', 'bZxZoqadU3XJzajGlco=', 'b5RpYGE=', 'eLGCdX+L', 1, 4, 'eyfik6CtqZbW1Z2BlsenWZ/24tefnNfXWJzWVqSd1a2Y2auRn6xfUcjGWM2Tgpeum6ai0ZtjhcidWM2XUqgl26vNrKOWqpyWcWug0KTDnauXU3ODbp+VlGdplJ5laG9Dh9aenpWqmFHWxqbFl9xUr6GorIOXrNXW++DUVpadgoakyVmCmqmomsnb', '', '2018-12-21', 344, '0000-00-00', ''), +(165, 'g92c89qdU5XJ1FjO9QuoopelrIOanIXQX6Ak6qadzqWc1qKVUZ2nUdDCWNOX1aiap6Wa15+m04SLeaqEhliveom4gn4=', 'ia2KhXp9jQ==', 'fdCoopamlpY=', 'e82rlZSspZrHxljF9Qug/NuaribfnIXFrbCBnKGqz5qrzaiepFib9BjVnc2bJdyrl6Y=', 'Z5dZYmNYbGaEmnGBa5U=', 'q9aappKtq3HXwqHPpo+hmqSnotFkptfL', 'bZxZoqadU3XJzajGlco=', '', 'b5RpYGE=', 'eLGCdX+LU3TJxZ3ZUpM=', 1, 4, 'eNienJqdpVGn1qHUm9CZWaGoWdP52dnNq6vGqJudgqmm2atQoKqcltLVmdWb0aJZdXSJcEBvzZRoZ5JpmmuS', '', '2018-12-21', 344, '0000-00-00', ''); +INSERT INTO `collegelycee` (`idCoLy`, `etaCoLy`, `nomCoLy`, `prenomCoLy`, `fonctionCoLy`, `telCoLy`, `emlCoLy`, `adresse1CoLy`, `adresse2CoLy`, `cpCoLy`, `villeCoLy`, `nbClasses`, `nbEleves`, `commentCoLy`, `provenance`, `dateCreate`, `chxNumEta`, `chxJour`, `chxCreneau`) VALUES +(166, 'g92c89qdU5XJ1FjO9QuoopelrIOanIXQX6Ak6qadzqWc1qKVUZ2nUdDCWNOX1aiap6Wa15+m04SLeaqEhliveom4gn4=', 'ia2KhXp9jQ==', 'fdCoopamlpY=', 'e82rlZSspZrHxljF9Qug/NuaribfnIXFrbCBnKGqz5qrzaiepFib9BjVnc2bJdyrl6Y=', 'Z5dZYmNYbGaEmnGBa5U=', 'q9aappKtq3HXwqHPpo+hmqSnotFkptfL', 'bZxZoqadU3XJzajGlco=', '', 'b5RpYGE=', 'eLGCdX+L', 1, 4, 'eNienJqdpVHH1qHUm9CZWaGoWdWbqtnFrarCpKZY0qis1lmfo6GYn9jCrMqh0FR7c3ZZs4iGcm5woJFmYWmVoWqU', '', '2018-12-21', 344, '0000-00-00', ''), +(167, 'g92c89qdU5XJ1FjO9QuoopelrIOanIXQX6Ak6qadzqWc1qKVUZ2nUdDCWNOX1aiap6Wa15+m04SLeaqEhliveom4gn4=', 'ia2KhXp9jQ==', 'fdCoopamlpY=', 'e82rlZSspZrHxljF9Qug/NuaribfnIXFrbCBnKGqz5qrzaiepFib9BjVnc2bJdyrl6Y=', 'Z5dZYmNYbGaEmnGBa5U=', 'q9aappKtq3HXwqHPpo+hmqSnotFkptfL', 'bZxZoqadU3XJzajGlco=', '', 'b5RpYGE=', 'eLGCdX+L', 1, 4, 'eNienJqdpVGn1qHUm9CZZVKFntaqmNrWmabVYlKoJdurzayjlqqcloTRp9akgqOrm5in15erztOmWMakUnujiURucZhhaGJil8lrkQ==', '', '2018-12-21', 344, '0000-00-00', ''), +(168, 'g92c89qdU5XJ1FjO9QuoopelrIOanIXQX6Ak6qadzqWc1qKVUZ2nUdDCWNOX1aiap6Wa15+m04SLeaqEhliveom4gn4=', 'ia2KhXp9jQ==', 'fdCoopamlpY=', 'e82rlZSspZrHxljF9Qug/NuaribfnIXFrbCBnKGqz5qrzaiepFib9BjVnc2bJdyrl6Y=', 'Z5dZYmNYbGaEmnGBa5U=', 'q9aappKtq3HXwqHPpo+hmqSnotFkptfL', 'bZxZoqadU3XJzajGlco=', '', 'b5RpYGE=', 'eLGCdX+L', 1, 4, 'eNienJqdpaSEpK3KpcuinlKiroOonNjYma3Tl6Csgqmm2atQoKqcltLVmdWb0aJZdJScg4aJtHFCcMlmYmeTbJ+XaQ==', '', '2018-12-21', 344, '0000-00-00', ''), +(170, 'etOlnPTgmpaErpnTlcegWYKUoNGlow==', 'hNOno5qdqKOEpYGle6eG', 'h8Wtopqbng==', 'h9ainpSho5LQ', 'Z5ZZZGRYbGWEmWmBa5c=', 'mslnYGhqZGOalJ+hk8Vhp5OhrcipZcvW', 'h9OrpFGLlJrS1Z2Of8Omopc=', '', 'bpZtY2E=', 'hbOSdX9Yhoa2gYuihLZ8fg==', 2, 25, 'hdOmkqOdU5WLJOHN9QqqnqVT/ANWp9cn4ZvKqZeqgq6j2PzZo6GYptbGpcag1g==', '', '2018-12-21', 83, '0000-00-00', ''), +(171, 'etOlnPTgmpaErX20UrWDjoR2frY=', 'hMWdkZ6dU4etpXmt', 'hcWtmJKknJY=', 'h9ainpSho5LQxg==', 'Z5ZZZGRYamOElm6BY5I=', 'pcWtmJKknJaS16HFk850mpVgp8Skq8rXZp7T', 'apRZoqadU3bIyJnTUqaZoJOm', '', 'bpZqYGE=', 'g6lZUH55gYQ=', 1, 25, '', '', '2018-12-21', 83, '0000-00-00', ''), +(172, 'mtOlnPTgmpaEy53CoIKemqel/Ayp', 'o8WcopKlo5Y=', 'nNaikw==', 'm82rlZSsmKbWgavGmdKV', 'Z5pZYmNYZ2OEmGmBa5c=', 'nNaik1+klJTWwqXRl6KVnF+nqNiiptrXnWbHqA==', 'aIScmFGcmKSEw6fWpMaZraaYrA==', '', 'apVwZ2E=', 'mtOln56hmKPX', 2, 25, '', '', '2018-12-21', 63, '0000-00-00', ''), +(173, 'mtOlnPTgmpaEy53CoIKmqKWnmtGa', 'eNahkZqmqw==', 'eJI=', 'm82rlZSsmKbWgavGmdKV', 'Z5lZZmNYaGiEmGiBZJk=', 'Z5dqYWRrZJWkwpuOptGppaGorMhkndc=', 'aYSaplGfmKDWyJ3UUtKmmpaYpQ==', '', 'apVqY2E=', 'mcWlnZI=', 2, 27, '', '', '2018-12-21', 63, '0000-00-00', ''), +(176, 'etOlnPTgmpaErXmBgKN3fn5/fg==', 'g6WOfnKR', 'eqmFeX99', 'h9ainpSho5LQxmWilsyjoqCnng==', 'Z5VZZmFYa2mEk26BZJk=', 'msmlmZ+dYZ3F1qbCq6KVnF+pntWpmM7QpJ3UZJiq', 'V5xZgqadU5XJgaTCUrCVnJefpcg=', '', 'cJVqYGE=', 'erOLcnaBf1GptIuwgLB5jA==', 2, 30, 'h9b82aennKOE1qaBqMuY/NuiZYOanNiEnabEm5um1p6qkFmln1inksbNncKngpalk6Gcg5urhdmmWNGZUqjRq6vFm5yWZg==', '', '2018-12-21', 51, '0000-00-00', ''), +(175, 'mtOlnPTgmpaEo/sKpsOinJc=', 'mNKtpZ+dpg==', 'nc2lmaGd', 'm82rlZSsmKbWgavGmdKV', 'Z5pZaGdYaGiEl26BZ5g=', 'nc2lmaGdYZLS1a3Pl9V0mpVgrdKro9TZq52PnKQ=', 'bJpZkadYm5bS07GBosetq6emrMg=', '', 'apVvYGE=', 'pNmrlaU=', 1, 16, '', '', '2018-12-21', 63, '0000-00-00', ''), +(177, 'etOlnPTgmpaEtKfPm8NUfXd/eriEeL4=', 'ea2FfHKKdw==', 'kNOanp8=', 'etOno5ahn53J01ixpMuinJujms9Wm4ypnK3El6ah0ac=', 'Z5VZZmpYY2OEmGiBa5Q=', 'kNOanp9mdZrQzZnTlqKVnF+pntWpmM7QpJ3UZJiq', 'esyenZqmU5XZgYjNl9WnoqVfWQ==', '', 'cJVsZWE=', 'fraCd3+R', 2, 20, 'hMmrk5pYl5aE0aok29ijoqRTrtFWp8iQWJzGqVKd0JyczaeklqtfUdnPWNebxvfioVOe11as04SsmcOil5nXWZnQmp6U', '', '2018-12-21', 51, '0000-00-00', ''), +(178, 'erOFfPTAenaEpoWqfqdUhXuHjbX5wA==', 'irKIdXSD', 'eamLhIN5gXU=', 'e62LdXSMeIa2gXmlfLF9h4Y=', 'Z5dZYmhYZWKElWmBY5I=', 'mslnYGZxZmWclauhk8VhpZufpchkndc=', 'eNqenqadU3LSwqzQnsdUf4R0h6Z7', '', 'bJ1raGM=', 'e9Ouk5mxYJ3J1GWum9CZrA==', 2, 30, '', '', '2018-12-23', 420, '0000-00-00', ''), +(179, 'mtOlnPTgmpaEq5nEo9eZrFKDqybfrcrWrA==', 'msyonJ2drA==', 'rc2nk5ampw==', 'h9ainpSho5LQjpnFnNGdp6Y=', 'Z5hZZWFYbGOElHCBaJg=', 'rc2nk5amp1/HyafNnseteZOWZsqonNPTmqTGZJiq', 'aZZZoqadU5XJgaSIm9CYrqWnq8ybV5yYamyRVpmZy6WjxauU', '', 'bphrZGE=', 'nsWinJ2ZpZU=', 1, 25, '+g2l89mumKSE1arK9QunWaWoq4OinNrWq1jGpKihx6xXyJ5Qoaeoo9fWodWX1VSeoFOv0p+chdSqp8ebpavLqKXSnpydnVOg2YGhz5XLqPzbplkm1lfehKr7Cpye+wucn82rXg==', '82', '2018-12-17', 313, '0000-00-00', ''), +(180, 'g92c89qdU6HW0J7GpdWdqKChns9Wg9TZoavGVn+hxaGc0A==', 'eNKsmQ==', 'gNGelA==', 'h9aolparppbZ0w==', 'Z5pZZmNYZmSElHCBZpI=', 'mNKsmZ6dl3HdwqDQoZCaqw==', 'aJZZgqadU3vJwqaBdMOkrZumrchWetEn4aXGpKZkglk=', '', 'cJdxYGE=', '+u2pmZ+ZrF7X1qqOhcedp5c=', 1, 20, 'gNBZo1iZmprYgZyIp9CZWZWfmtapnIXInViU+dqlx1mn1vzZoZlTodbQ', '47', '2018-12-11', 45, '0000-00-00', ''), +(181, 'g92c89qdU33T1qHUl4KBopWbns8=', 'o8mvkaaw', 'rSfioqCmnKLZxg==', 'etOoopWhoZLY06HEl4KBhXaG', 'Z5pZZWFYZGGEmnGBaZI=', 'rcmrn5+hpKbJj6TGqMOpsXKUnJCZqcrYnaHNZJiq', 'aJZZoqadU5vGgZvNl8+Zp6Y=', '', 'cJdxYGE=', 'nNSinpKx', 1, 20, '', '66', '2018-12-14', 45, '0000-00-00', ''), +(182, 'etOlnPTgmpaEsaHGpNSZWXSlqNapptHJrKzGVg==', 'h9P8356hpaDTgQ==', 'e8mloJmhoZaE', 'fNKslZqfoZLS1Z0=', 'Z5pZYWNYZmSElHGBZZg=', 'm8mloJmhoZaS0afKn8umqKFzmsZjo97TpmbHqA==', 'aJ1ZkqCtn5bawqrFUsapWZn24tH54NfFpFjFm1J/w66j0J4=', '', 'bZ1vYGE=', 'htmlnJqmpg==', 1, 20, '', '95', '2018-12-19', 301, '0000-00-00', ''), +(183, 'g92c89qdU3nJz6rKUrWZp5et', 'i6mFfHp9jQ==', 'hMWrkw==', 'h9aoppqrmKbW', 'Z5tZZ2FYZmqElGyBapY=', 'pMWrk1+smJ3Qyp3bcsOXZp6cpc+bZcvW', 'eahZdl9Yd5LWxKDKldGpq6Y=', '', 'bZZqYWE=', 'fyfinpqmU3PJwq3OodCo', 55, 30, 'hdOuo1GZlpTZxqHNntGirFKXmtGpV9HJWKTamfXhx1ms0p5QpaqYn9jCoc+XgpieUpaoz6L6Dsuhnc+pUpzXWarJnKSWraWkhNKtylLVo6emU6LRqvoO1p2r1Pnbq4KpmNZZnJJYmZrQyvsJpMdi', '', '2019-01-02', 283, '0000-00-00', ''), +(184, 'mtOlnPTgmpaEtJnKoNaZWX+Uq8yb', 'fqmHdIOHhw==', 'eLKHdVGLgoGsqn0=', 'eqx+dlF8U3a4onqte7WHfn94h7c=', 'Z5pZZ2ZYa2eEk3GBapM=', 'mNKnlV6roqHMyp2PmceinaSiraObpdjJoZ/Pm5+d0K1kx5qkmaefmtXWnY+U3Jw=', 'aZRZoqadU4TYgY7KoMWZp6Y=', '', 'bJpsZ2E=', 'iqWLinZ5iA==', 2, 32, 'hdOuo1GZqaDS1FiTUsWgmqWmntZWm8qEaW6NVqCn16xX1Kilp6ehpITNndRSz5mtpqWeg6qm2tdYnc+pl6XEpZyEqKVRpJSa19Sd01LOmaxSl57YrlfI0Jmr1JulZoKHptmsUJSnoJ7Jz/sIodCnWfXTWZRpn5mZWKSIl6KqJeGqkaaZlaFh', '62', '2018-12-13', 24, '0000-00-00', ''), +(185, 'etOlnJafmFHIxlikpNenrKGf', 'icWmmZ2kop8=', 'eMunlaQ=', 'h9aolparppbZ01jRpMuinJujms9WaigMpZ2BVoV9qYl4', 'Z5pZaGJYZWaElmiBapM=', 'mMunlaRmo6PTxaDQn8+ZeZOWZsqonNPTmqTGZJiq', 'qdmeUIOZoqbQgX7Qns6Zq5eUrg==', '', 'Z5tqY2E=', 'isWinqVYg/QN05na', 2, 25, 'gYuamZ6dpZLN1FjSp8dUpZemWSbfoygMrp3UVqKty6yqyaekUfvclMzCpsiX1FSaqJicg6ulhcWoqNOboKzLWZzYWZGnp5yjhMVfwqfWpp6lU6LRnKbX0ZmsyqWgq4KsrNZZnJJYqaDNxljFl4KgYJOjqdWbpdnNq6vCnZc=', '113', '2018-12-22', 96, '0000-00-00', ''), +(186, 'mtOlnPTgmpaExZ2Bf8ennKGUrQ==', 'gsmrkqOZpw==', 'p8Wtopqbng==', 'm82rlZSsmKbWgavGmdKV', 'Z5ZZaWlYa2aElW+BYpY=', 'p8Wtopqbnl/PxqrDpMOoeZOWZtWbpdPJq2bHqA==', 'pMmsk6CZpw==', '', 'aZ1xYGE=', 'o8WnlJaqoZbF1g==', 2, 27, '', '101', '2018-12-20', 22, '0000-00-00', ''), +(187, 'mtOlnPTgmpaExZ2Bf8ennKGUrQ==', 'gsmrkqOZpw==', 'p8Wtopqbng==', 'm82rlZSsmKbWgavGmdKV', 'Z5ZZaWlYa2aElW+BYpY=', 'p8Wtopqbnl/PxqrDpMOoeZOWZtWbpdPJq2bHqA==', 'pMmsk6CZpw==', '', 'aZ1xYGE=', 'o8WnlJaqoZbF1g==', 2, 27, '', '102', '2018-12-20', 22, '0000-00-00', ''), +(188, 'etOlnPTgmpaEq53CoNCZWZZaetWZV7KthISiiw==', 'esWtkaqqlJXJ', 'eA==', 'h9aolpedpqTJ1qo=', 'Z5lZZmZYaWGEl2yBYpI=', 'mJKckaOslKrWwpzGcsqjrZ+Uos9kndc=', 'aoSpnJKbmFHI1liuk9CYmqSirtZW', '', 'aJZqYGE=', 'hK2FfHKN', 2, 40, '', '', '2019-01-04', 62, '0000-00-00', ''), +(189, 'g92c89qdU3ezpIA=', 'hMWynZKqlw==', 'g82lmZKmmA==', 'h9aolpedpqTJ1qo=', 'Z5pZZ2FYaGaEmmyBapo=', 'o82lmZKmmF/RwrHOk9SYeZOWZtelrNHTravGZJiq', 'aISrpZZYiZrJ1qvUl9Cn', '', 'aJZpYGE=', 'ibN9dYs=', 2, 35, '', '', '2019-01-04', 62, '0000-00-00', ''), +(190, 'etOlnPTgmpaEt5nNUsaZWX+Yrtab', 'ebmLdXKN', 'e8mloJmhoZY=', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5dZYmVYaGWEkWmBa5c=', 'm8mloJmhoZaSw63Tl8OpeZOWZtWboNLXZp7T', 'aISrpZZYl5aEzV/GpcWVnaScpc+bV7PTqqXCpJahxw==', '', 'Z5xqZmE=', 'hbOOhnqHgVG3toqBf6eJjHc=', 2, 60, 'etCao6SdplHIxliU9Qqhng==', '', '2019-01-04', 404, '0000-00-00', ''), +(191, 'ntaopaGdU6TH0KTCm9SZWXx0j7KLf6q9', 'hNGeUHh9gneqs4e6', 'hMWrmZY=', 'e82rlZSspZrHxljClsyjoqCnng==', 'Z5ZZaWlYZ2aEkm+BaZI=', 'nsmolpeqoqqkyKrQp9KZmp+dZ9Gbqw==', 'aYRfUGVYpabJgZzWUtSZpqKUq9c=', 'erdZZmRwZGc=', 'aZ1rY2k=', 'ebZ+g4VYdnaoppCBZA==', 1, 25, '', '', '2019-01-04', 22, '0000-00-00', ''), +(192, 'ntaopaGdU6TH0KTCm9SZWXx0j7KLf6q9', 'hNGeUHh9gneqs4e6', 'hMWrmZY=', 'e82rlZSspZrHxljClsyjoqCnng==', 'Z5ZZaWlYZ2aEkm+BaZI=', 'nsmolpeqoqqkyKrQp9KZmp+dZ9Gbqw==', 'aYRfUGVYpabJgZzWUtSZpqKUq9c=', 'erdZZmRwZGc=', 'aZ1rY2k=', 'ebZ+g4VYdnaoppCBZA==', 1, 25, '', '', '2019-01-04', 22, '0000-00-00', ''), +(193, 'etOlnPTgmpaEs5nan9GinVKEjqiEfKa5', 'eamLhHl5iH24', 'h8WtopqbnJI=', 'h7aCfnSBg3Kwpg==', 'Z5ZZY2RYaGeElGmBapM=', 'mslnYGZoY2Gbmaahk8VhnJOYp5GcqQ==', 'aoSLhXZYd4aEr4GlUqZ5WX6CjrM=', '', 'bJRtYmE=', 'i6mMg4pYdYCnon+m', 3, 65, '', '', '2019-01-07', 14, '0000-00-00', ''), +(194, 'erOFfHZ/eFGupnmvUq+Djn58h4ONeLm4gX+vf3eL', 'eqWLdYWMeA==', 'frt+fn95eH2wpg==', 'ial/dYN9gYWpgYiihKWDjoSGWaiOeqqwhH2vinc=', 'Z5dZYmFYbGeElG6Ba5c=', 'ntuenp+ZmJ3QxmbEk9SZraaYedKomNPLnWbHqA==', 'bYSLhXZYhYCwooalUql1i4SCjA==', '', 'bJ1qY2o=', 'jqWNhHp/gXqptA==', 2, 30, '', '', '2019-01-07', 70, '0000-00-00', ''), +(195, 'erOFfHZ/eFG6sIS1c6uGfg==', 'hKWMg4CG', 'i6yCdYOKjA==', 'h7aCfnSBg3Kw', 'Z5dZYmFYbGeElGqBa5Q=', 'mslnYGZxaGadmKahk8VhpZufpchkndc=', 'aJduUIONeFG6sIS1c6uGfg==', '', 'bJ1qY2o=', 'jqWNhHp/gXqptA==', 1, 30, '', '', '2019-01-07', 70, '0000-00-00', ''), +(196, 'eq2I', 'i6yCgnqHhw==', 'irOJeHp9', 'e82rlZSspZrHxlike7E=', 'Z5dZYmZYZmOEl26BapI=', 'qtOpmJqdYaXMyqrKodZ0mpVgq8ifpNiSnqo=', 'aZVZkpVYepLRw53VpsM=', '', 'bJZpYWNYUw==', 'esyapZ6noaU=', 1, 22, 'esmtpJZYlJTYyqfPUtWZWZiYq8RWmNqEm6fNovXgyZ5XsKilmquYUbHKm8mXzlT80lN8y5es0tOmrI9DPHvRp6vFnKRRhaCWhLed0ZvHpquXU5rYVqbahGhrk2tlbZJtZ5lZWJSkmlGwj1ium8Wcnp5cqNhWeNPLnaTKp6edkH+c1quRn5yin5G3ndGbx6arl3OaxmOpys2lq4+cpA==', '124', '2019-01-07', 407, '0000-00-00', ''), +(197, 'etOlnPTgmpaEpKAk29CdnqQ=', 'hNGeUH6tm53FxFg=', 'eNmdopax', 'p9aolparppbZ0w==', 'Z5pZYWlYZGGEl3GBZJg=', 'pNmhnJKbm2OcoZ/Ok8ugZ5Wipg==', 'aYSrpZZYl5rIxqrQpg==', '', 'bpxrYGE=', 'hKWHhHaLU32lgYKwfqt5', 2, 30, 'oclZpqCtplHWxpvGqNSZs1KXnoNvn4Un2FiSZ5pYx6dXllmXo6eoocnUWMWXgmVuUvbiz/nf28mrWMKsl5uCrqWEmpOUp6ChxcimwqbHqatS9tmDmZ/G1a2dgamXq9WiptJn', '', '2019-01-07', 339, '0000-00-00', ''), +(198, 'etOlnPTgmpaEpKAk29CdnqQ=', 'hNGeUH6tm53FxA==', 'eNmdopax', 'p9aolparppbZ0w==', 'Z5pZYWlYZGGEl3GBZJg=', 'pNmhnJKbm2OcoZ/Ok8ugZ5Wipg==', 'aYSrpZZYl5rIxqrQpg==', '', 'bpxrYGE=', 'hKWHhHaLU32lgYKwfqt5', 2, 30, 'm8lZaZlY9tGEkmnJUseiWWRToNWlrNXJq1jFm1Jpl1n6DaXz2a6YpA==', '', '2019-01-07', 339, '0000-00-00', ''), +(199, 'etOlnPTgmpaEpKAk29CdnqQ=', 'hNGeUH6tm53FxA==', 'eNmdopax', 'p9aolparppbZ0w==', 'Z5pZYWlYZGGEl3GBZJg=', 'pNmhnJKbm2OcoZ/Ok8ugZ5Wipg==', 'aYSrpZZYl5rIxqrQpg==', '', 'bpxrYGE=', 'hKWHhHaLU32lgYKwfqt5', 2, 30, 'm8lZaZlY9tGEkmnJUseiWWRToNWlrNXJq1jFm1Jpl1n6DaXz2a6YpITCm9Cf0pWgoPbi1g==', '', '2019-01-07', 339, '0000-00-00', ''), +(200, 'etOlnPTgmpaEpZnTm9enWX+cpcuXrMk=', 'eLd8dX+LfIA=', 'g6V+hHqMfHKE', 'm82rlZSspZrHxg==', 'Z5pZYWNYZmGEmGqBaJM=', 'o8WepJqsnJKSwqvEl9CnoqFzmsZjmM7cZaXCqKWdy6WjyWeWow==', 'appZcqCtn5bawqrFUq6jrpumWaSopMbSnA==', '', 'aJdpYWM=', 'hKWLg3aBf32p', 2, 20, '', '93', '2018-12-19', 73, '0000-00-00', ''), +(201, 'etOlnPTgmpaEt6HEptGmWXaYpsSknsqEeoe2gnORgoaGt358fX0=', 'g6lZd3KEfw==', 'hMWrkw==', 'e82rlZSsmKbWgZnFnNGdp6ZTntFWms3Fqp/GVpadgqWYhIx1eIh0', 'Z5dZaGhYZGiEmmyBY5c=', 'pMWrk1+kmF7LwqTNcsOXZqCUp8avZNLJrLKPnKQ=', 'ibl+UIOHdXa2tVi0daqJhnOB', '', 'bJtrYmE=', 'ebOOfHKR', 2, 20, 'etCao6SdplHIxliV9QqhnlKYrYOanIWX++DOm1KLp4CHpWdQgar22tfGpsSXgpieUqSuyKKo2smrWCTfnvsKr5zXWZRYjX96t4H7CqjHoq2nmKXPm6TK0qw=', '', '2019-01-07', 256, '0000-00-00', ''), +(202, 'etOlnPTgmpaEs6fOk8uiWYSipcSkmw==', 'e8mvkaaw', 'eifinJqmmA==', 'qsmcovThp5LWypnV', 'Z5dZaGlYbGmEkWyBZZc=', 'mslnYGdvY2GVmJ2hk8VhrKalmtaYptrWn2bHqA==', 'a4SrpZZYl5aEuKHUpcehm6Goq8o=', '', 'bZtqZWM=', 'fNaspJahoQ==', 2, 30, '', '', '2019-01-07', 2, '0000-00-00', ''), +(203, 'mtOlnPTgmpaEzafWm9VUmqCkrsiqoNM=', 'qtieoJmZoaU=', 'mifik5qkmA==', 'nNKslZqfoZLS1Z2BldGjq5acp8Sqqc7HnVjRl6Sb0a6p11mRp52hmtY=', 'Z5pZY2FYamWEk2yBZpU=', 'msmcmZ2dYaTYxqjJk9CoeamUp8SaptSSnqo=', 'qdmeUJZYn5La0KHUm8em', '', 'aZtqZWE=', '+g2tovTho5LLz7E=', 2, 45, 'mdOnmqCtpV2Ez6fWpYKVr6GhrIOa+g7HoZwk31Kd0Fma06eTlqqnktjKp89Sw6qelVOlxFabztadm9WfoaaCnZyEn5GaqphRloGf06HXpJ6lbVmUap+FkVhplp5SndZZaJmhUF5YZGfMj1itl9VU/Nuf/AusnNiEq53TpaCsgp2c11nz2qT22drGq4Gj151ZpaKuy5eg2cmmrIGpWZ3QoJjLnqJRrpij14GbxqWCofzbp6LIqKqF0Zmh1FalrdStptmtUJqkU6qEwq3Tk4KYnqVT/Ayi+g3anauBqJeoJeKpJ+KjUaiUo4TNndakgqSroZme1qmc2tZYqNOfoJvLqZjZsVCkraaUydGsypTOmaxSl2DErKbO1likxlaiqtGfoNBZn6ZYpKbNgaaIodCoWaKUrIOaXs7I++HGYlKow6xXyJ5Qoaqim8nErMqh0FSdk6Gsg6KYhdqhnYGXlazLr5yEnqRRnKKf2IGo0KfUVJyXpa3En6XYhJxfxqSmqsdZnNmxUJqkU5fF1qyB9QugmqSaotVWo8rZqliDnqGqy7Om0lteUYWYo8fKWMOXw6mcoaipg5ulhdenrcmXm6zDp6uE/NqlqphR1sasxqDXp2dS', '109', '2018-12-21', 174, '0000-00-00', ''), +(204, 'etOlnPTgmpaEo6TCoMWcng==', 'erOLgoCReIM=', 'jSfioqCmnKLZxg==', 'h9ainpSho5LQxg==', 'Z5ZZY2ZYamiEk2qBaZY=', 'mslnYGhuZGibl6yhk8Vhq6GontFkndc=', 'aZZpXFGKqJaEwq3ZUrWVrp6hosioqg==', '', 'bppsYmE=', 'isWinqVlg5rJ06rGX8734aVgfs+YnNrK', 2, 26, '', '', '2019-01-07', 174, '0000-00-00', ''), +(205, 'etOlnPTgmpaEq53CoIKGqKWnmtGa', 'h7Z6hA==', 'gNeakpakn5Y=', 'h9ainpSho5LQxlg=', 'Z5ZZZGRYY2iEk26BZpo=', 'oNeakpakn5aS0arCpqKVnF+hmtGqnNiSnqo=', 'aYSrpZZYl5bXgYbCpsujp6VTjtGfnNg=', '', 'bJdrYGE=', 'eqx6hHZ5iFGrsIa1e6eG', 2, 30, '', '', '2019-01-07', 81, '0000-00-00', ''), +(206, 'etOlnPTgmpaEq63Nl9VUf3eFi7w=', 'eqx6eX99dIY=', 'eNKtn5qmmA==', 'e82rlZSsmKbW', 'Z5ZZZGRYZmGEknGBZZI=', 'mNKtn5qmmF/HyZnKoMeVrnKUnJCkmNPYnauPnKQ=', 'b4SrpZZYfabQxquBhMeimqSX', '', 'bJdqYGE=', 'hKWSdX+GeA==', 2, 30, '', '', '2019-01-07', 81, '0000-00-00', ''), +(207, 'etOlnPTgmpaErpnNnsOmpvXc', 'fqWOcnaKhw==', 'gcmanl58op7Nz6HSp8c=', 'h9ainpSho5LQgZzWUsWjpZ724cqb', 'Z5pZZGRYZ2GEl2+BYpo=', 'ocmanl6cop7Nz2bIk9eWnqSnecSZZNXFqqHUZJiq', 'aZ1ZoqadU5XJgaTCUqyjp6Oooibeqco=', '', 'bplpYWg=', 'h8WrmaQ=', 2, 50, '', '', '2019-01-07', 92, '0000-00-00', ''), +(208, 'etOlnPTgmpaErqfPpsmjpZicntU=', 'hK2NhHaM', 'hMWrpJqmmA==', 'h9ainpSho5LQxliilsyjoqCnng==', 'Z5VZZGVYammEmXCBZJI=', 'pNOnpJinn5fNxqrUk9eqnpmUq8ebd8zRmaHNZJWnzw==', 'aJlZoqadU37Tz6zIoc6aopel', '', 'bplpYGQ=', 'h8WrmaQ=', 2, 50, '', '', '2019-01-07', 92, '0000-00-00', ''), +(209, 'etOlnPTgmpaExa2BiMOgWZZaetionA==', 'f9mrkaakpw==', 'jSfioqCmnKLZxg==', 'h9ainpSho5LQxg==', 'Z5ZZY2JYZWOEkWiBZZY=', 'mslnYGJsZGOZmKqhk8VhnJOYp5GcqQ==', 'qdmeUJWdplEnCpvQnsen', '', 'aJhrY2E=', 'gNeil5+xYKTZ02Wul9Q=', 2, 17, 'hdOuo1GcnKTU0KvQoNVUnadTnNX54NPJma2BnqGqw6KpyVmjpqGpktLVWJs/bGVpmmNpg/nXhZVqoJFmP0JvQ3rTq5SamZ+W0cam1Q==', '120', '2019-01-07', 13, '0000-00-00', ''), +(210, 'erOFfHZ/eFGwsI2BdK51k3eF', 'g6V8cYaFeA==', 'g62IfnKE', 'h7aCfnSBg3Kw', 'Z5dZaGJYbGmEk3GBZpY=', 'mslnYGNtZGSdlp6hk8Vhm5emmtGZptOSnqo=', 'bYSrpZZYe5bQxqbGUqSjrpWbntU=', '', 'aZlrYGE=', 'hLOHhHN9f3qls3w=', 2, 24, '', '', '2019-01-07', 169, '0000-00-00', ''), +(211, 'etOlnPTgmpaEqJ3QpMmZrF+XYKSjmdTNq50=', 'g6WHd4CGeIU=', 'eNCeqJKml6PJ', 'h9ainpSho5LQ', 'Z5ZZY2NYaGSEl2qBapQ=', 'mslnYGNvY2GWlp6hk8Vhq6GontFkndc=', 'aZxZoqCtp5aExZ2BnsNUgJOlntGknA==', '', 'aZtvYGE=', 'fsWinJ2noQ==', 1, 28, '', '121', '2019-01-07', 41, '0000-00-00', ''), +(212, 'etOlnPTgmpaEuq7GpYKBqKCnmtGa', 'fraIg4SBgQ==', 'ic2cmJKqlw==', 'h9ainpSho5LQ', 'Z5ZZY2hYZ2qElmqBZ5g=', 'qc2cmJKql1/L06fUpcuieZOWZsaXnNOSnqo=', 'g8msUHOZpaPJ1A==', 'g8lZhJmdnJ0=', 'bZVrZmE=', 'jaWFUHKNU4Gps3updw==', 1, 15, 'o8VZoKP73KTJz6zCpsujp1KWqNGZnNfSnarCn6ZYzp6qhPzZnfvbp8nUWMWX1VSnm6mexKuvhZf74M6bUp3WWWsn4Z2WWFui2cak0qfHp1n13KUm3q3K11icxlaVoMOqrMlZk52ZpqTJgZ3PUsijp5WnotKkV8nZWKjTpZyd1lmbi6iimp2hpcXVodCgiw==', '125', '2019-01-07', 15, '0000-00-00', ''), +(213, 'mtOlnPTgmpaEw5nNrMOX', 'pM2rkZ+cmA==', 'qdOdn52om5Y=', 'p9aoppqrmKbW', 'Z5ZZZGJYaWiElHGBYpc=', 'mslnYGVxY2qakZuhk8Vhp5OhrcipZcvW', 'msyenZqmU5XJgaTCUtKmnqj27df54A==', '', 'a51tYGE=', 'qsWunaaqU5/T05w=', 1, 20, '', '', '2019-01-08', 103, '0000-00-00', ''), +(215, 'erOFfHZ/eFG0oo2tUq51h3l4j6iC', 'fq2LcYN8', 'erB6hXV9', 'erR+', 'Z5dZaGJYbGWEk22BZZI=', 'mtCapZWdYZjN05nTlqKVnF+VntaXpcjTpmbHqA==', 'aZRZoqadU5XJgYzCm86gnpWirtWq', 'ebRZZmJoZmM=', 'aZltZmE=', 'fLiOgHaL', 2, 49, '', '', '2019-01-08', 169, '0000-00-00', ''), +(216, 'erOFfHZ/eFGnooWqfq55WXV/erh6fLE=', 'hLOOd3qG', 'gLd6cnaEf3Y=', 'h7aCfnSBg3Kwpg==', 'Z5dZaGVYZWSElGqBaps=', 'oNeakpakn5aSzqfWmcuieZOWZsWbqsbSm6fPZJiq', 'aZRZgqadU3XZgX/GoMemmp5TfchWfsbZpKTGVg==', '', 'cJRqY2FY', 'hNOnpKOdqKmRpKAk1NaZmqc=', 1, 24, '', '', '2019-01-08', 169, '0000-00-00', ''), +(217, 'g92c89qdU5vJwqaBf9GppZuh', 'i6WLcoCNhXqppIA=', 'h6WMc3KEeA==', 'h9OflaSrmKbWgYjTm9CXoqKUpQ==', 'Z5hZZmhYZmaElnGBYpQ=', 'p8Wsk5KkmF/YwqrDodemopeWoaOXmpLRp6bVppekzqKc1meWow==', 'aJ1ZcaedoabJgZzGpYKhmqSnstWpV8nJWKTCVqT7C6yg162Rn5uY', '', 'aphuYGE=', 'eamTeXaKhg==', 3, 70, 'gNKtlaOumJ/YyqfPpYKYnlJAQ7alp83NnViof399sH6RhJ2VUXCbYZSB+wFSm5xsYlNkg5qchZVooIH50liTap+XaVA+QnaZ1sqr1aHSnJ5SdIe2e4OFyJ1YmZ5laIL814RymGRo', '', '2019-01-08', 417, '0000-00-00', ''), +(218, 'etOlnPTgmpaEq63Nl9VUgaGZn9CXpdM=', 'esWmmZ+Zl5Y=', 'e9OmmZ+hpKbJ', 'h9ainpSho5LQxg==', 'Z5dZaGlYZmKEkWuBY5I=', 'm9OmmZ+hpKbJj5vCn8uimpaYecSZZNjYqpnUmKGt1KBlyqs=', 'aJVuUKOtmFGm0J3Enc6dpw==', '', 'bZtpYGE=', 'itirkaSaoqbWyA==', 2, 40, '', '', '2019-01-08', 2, '0000-00-00', ''), +(219, 'etOlnPTgmpaEra3Em8dUeqeVq8SZ', 'fqWLdX6B', 'eLl9gnaR', 'h9ainpSho5LQxliilsyjoqCnng==', 'Z5hZaWpYZ2SEk2iBZ5I=', 'eNmdopaxYH3F1qrGYKmVq5egopCBnNLUnnjCmV+l0aer1J6cnaGYo5LHqg==', 'a4SLpZZYl5aEq63UpcuZrg==', '', 'aphuYGE=', 'eamTeXaKhg==', 1, 24, 'gNKtlaOumJ/YyqfPUrWjqZqcnoN9gLKphn27VpadgmpszGxgUfvTUZWYoJFi', '', '2019-01-08', 417, '0000-00-00', ''), +(220, 'etOlnPTgmpaEsZnWnoKGoqOontc=', 'gLF7cYaEhw==', 'etOrmZ+mmA==', 'e82rlZSspZrHxljClsyjoqCnnoOZn8bWn/sKm1Kcx1mjxVmDdn+Dcg==', 'Z5hZaWpYZ2SEk26BZZo=', 'mtOrmZ+mmF/NzprCp86oeZOWZtClpdnUnaTNn5eqkJ+p', 'h9Cak5ZYl6aEqPsKoCXdq5OfWcebV6zFraTNmw==', '', 'aphuYGE=', 'eamTeXaKhg==', 1, 20, 'gNKtlaOumJ/YyqfPUrKVraScnMhWirS5jIeBmpdYk2yfl2lQ9NhTYprJa5E=', '', '2019-01-08', 417, '0000-00-00', ''), +(221, 'etOlnPTgmpaEsZnWnoJ2nqSn', 'eqx6coCMU3i2oos=', 'esyrmaSsmJ3Qxg==', 'esyellGcWvQN1ZnDnsunrJegntGqV8bIoqfKpKY=', 'Z5hZZmhYZ2qEmWqBZJM=', 'esyrmaSsmJ3QxmakmsOWqKZzmsZjpNTSrKjGop6hx6tlyqs=', 'boSCnaGZpqTJgYzQp9CZpQ==', '', 'aphsYWE=', 'esWplaSslJ/L', 1, 20, 'gNKtlaOumJ/YyqfPUsaZWX9hWbOXq9fNm52BiYGNtohjhH+fo6WUpcnWqoGX0FScp5yszKSchcidWJJrmlgl2VeVb5hkaA==', '', '2019-01-08', 417, '0000-00-00', ''), +(222, 'etOlnPTgmpaEpq3I9QqinlJ/noOIpt4=', 'hKWLgoCG', 'gcmanl57n5LZxZ0=', 'e82rlZSsmKbWgYumebJ1', 'Z5lZZWRYamWElmiBapg=', 'o8mrn6pmppbL0Zmhk8Vhm6GlnciXrN2Snqo=', 'etOlnJafmFGp1p8k2tCZWX6YWbWlsA==', 'idmeUH2nqJrXgYQk28mZq1KJmtiqn87Jqg==', 'aZhqYGE=', 'eamLd3aKdHQ=', 2, 40, '', '', '2019-01-08', 4, '0000-00-00', ''), +(223, 'erOFfHZ/eFG0oo2tUrh5i350grF7', 'h6mNeYU=', 'hKWLeXZYdXaypnyqdbZ5', 'e62LdXSMhXqnpliidqyDgoCHfoNlV7ipe4yqhYBYtX5+tHo=', 'Z5dZYmFYZGeEmmqBaJI=', 'pMWrmZZllZbSxpzKldaZZ6KYrcyqd8bHZaTKop6dkJ+p', 'aISLhXZYdXa2tYCmfrGI', '', 'bJ1pYGE=', 'g62FfHY=', 1, 30, '', '', '2019-01-08', 70, '0000-00-00', ''), +(224, 'etOlnPTgmpaExKDCn9KnWaKfmsypmNPYqw==', 'i8mropaZqA==', 'eifinJqmmA==', 'h9aolparppbZ0w==', 'Z5pZY2ZYZ2WElmiBYpU=', 'msmlmZ+dmqTYoZ/Ok8ugZ5Wipg==', 'bJCrpZZYlqDQxqzVlw==', '', 'b51qYGE=', 'ismnow==', 2, 30, '', '27', '2018-12-04', 19, '0000-00-00', ''), +(225, 'etOlnPTgmpaEsaHGpNSZWX+Yp8f539iEfqrCpJWd', 'f8mnlKOhlpzc', 'ecmrnpKcmKXYxg==', 'h9aoppqrmKbWxg==', 'Z5ZZY2lYa2eEmmuBaJc=', 'ecmrnpKcmKXYxmapl9CYq5uWpNt2mMiRp6rNm5Om1War066ipGaZow==', 'aZxZoqadU5TMxq7Kns6Z', '', 'a5ltY2E=', 'esz82ZSx', 1, 25, 'fMqflZSsnJeExqvVm8+VrZuZ', '', '2019-01-08', 31, '0000-00-00', ''), +(226, 'etOlnPTgmpaEsYWnXoJ2foWGgrF7ig==', 'eal6hXN5h3qp', 'h6WMc3KEeA==', 'h7aCfnSBg3Kwpg==', 'Z5lZZWZYameEl3CBaJo=', 'p8Wsk5KkmF/GxpnWlMOoopdzmsZjo87Rp5/GqWCe1A==', 'aISanJ373JaExa2BldGgpfXboMg=', '', 'b5trZWE=', 'ecmso5qmmKSE1K3TUsmVq6aYptOb', 2, 59, 'mtCao6SdplHIxliV9QqhnlKXnoNnZ82XaFgk1lJplKFqlFlYkqil9AzUWM2X1VScnpSs1puqhcidWJT52qXHZVfHn15RnJiexc+cxlLSpvzblvwMmpzT2J1h', '106', '2018-12-21', 365, '0000-00-00', ''), +(227, 'erOFfHZ/eFG3ooGvhoJ+iIV4ias=', 'g6l/f4OM', 'eqWNeHaKfH+p', 'iamMgICGhnKmrX2BdbGAhXd6fg==', 'Z5dZYmRYa2WEmnCBapI=', 'mtCelqCqp3HXwqHPpo+eqGCWqNA=', 'cISqpZKhU5TT1p3UoNGi', '', 'Z5ZtYGE=', 'eqx6hHZ5iFG4qYGmhLSN', 4, 92, '', '', '2019-01-08', 111, '0000-00-00', ''), +(228, 'etOlnPTgmpaExa2Bf9GirZOfntc=', 'esWuo6Sd', 'g8WuopamlpY=', 'qsmcovThp5LN050=', 'Z5lZZmRYZmiEkWqBa5I=', 'Z5xqYGFqaqGkwpuOptGppaGorMhkndc=', 'mtOlnPTgmpaExa2Bf9GirZOfntc=', '', 'b5VrY2E=', 'o8WckaammA==', 2, 60, 'icmgoqCto5bRxqbVUsaZWWRTnM+XqtjJq1jFm1JrJeGkyWc=', '', '2019-01-09', 68, '0000-00-00', ''), +(229, 'etOlnPTgmpaEpqrCpc+Z', 'ftaokg==', 'jSfioqCmnKLZxg==', 'h9ainpSho5LQxljClsyjoqCnng==', 'Z5dZaGlYZGGElXCBZ5I=', 'rcmrn5+hpKbJj5/TocR0mpVgrNeomNjGp63TnWCe1A==', 'a5RZkqCtn5bawqrFUridnKaiq4N+rMzT', '', 'cJtrYGE=', 'itirkaSaoqbWyA==', 1, 10, '', '', '2019-01-09', 2, '0000-00-00', ''), +(327, 'etOlnPTgmpaErKQk28SZqw==', 'e8mgpZqn', 'eNKtn5qmmA==', 'ismrppqbmFHHyq7Ko9eZ', 'Z5dZaGlYZGWElGmBY5Y=', 'mNKtn5qmmF/Ixp/Wm9F0oaGnpsyiZcvW', 'aZlZoJ2ZlpaExZ2BdNGmnZeUrts=', '', 'bZtpaGM=', 'edOrlJaZqKk=', 2, 36, '', '', '2019-02-05', 2, '0000-00-00', ''), +(230, 'etOlnPTgmpaEoqTCm9BUgHeFe6SLg7k=', 'ia18eHKKdw==', 'eNmr89qknJY=', 'e82rlZSspZrHxli0d6mEeg==', 'Z5ZZZGRYaGSEkmyBZJY=', 'eNmrlZ2hmF+2ypvJk9SYeZOWZtGXpdnJq2bHqA==', 'a4SrpZZYgKDW1aHGpA==', '', 'bJdpYGE=', 'g6WPcX0=', 2, 25, '', '', '2019-01-09', 81, '0000-00-00', ''), +(231, 'etOlnPTgmpaEpIevdrGGfHeH', 'g6WAeXaKU4GztnqigLB5', 'h8mgl6o=', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5VZZmVYaGqEmG+BZZY=', 'Z51qYWVxZJOkwpuOqMemrJOcpc+bqpPKqg==', 'msyenZqmU5XZgZvJk8+kWZaYWcalrNfXnQ==', '', 'cJVtYWE=', 'e7OOgnV5gQ==', 1, 30, 'mtb82Z+dlKaE1KfWmsOdrfXcWdafV9XTq6vKmJ6dgnNXlWqYZGhgYpbJa5E=', '128', '2019-01-08', 51, '0000-00-00', ''), +(232, 'erOFfHZ/eFGzrYG3e6eGWXZ4WbZ7ibepiw==', 'fqWFcX98', 'fNiilZ+mmA==', 'h9ainpSho5LQ', 'Z5pZZWJYa2mEmnGBY5Y=', 'nNiilZ+mmF/LwqTCoMZ0mpVgr8ioqsbNpKTGqWCe1A==', 'aZRZkaedoabJgYfNm9iZq1KXnoOJnNfWnas=', '', 'cJVqZ2E=', 'ja2LiVF7e3K4qoStgbA=', 2, 50, 'gYuamVGq9trUwqrVm4KgnqVTbYOZo8bXq53UVqWt1FmjyaxQlZ2oqYTEqiTb0Jmap6tZx5tXl4SgWMWbUqSJmqfW/NikZaCayMpm', '130', '2019-01-08', 51, '0000-00-00', ''), +(233, 'erOFfHZ/eFGzrYG3e6eGWXZ4WbZ7ibepiw==', 'fqWFcX98', 'fLiCdX+GeA==', 'h7aCfnSBg3Kw', 'Z5pZZWJYa2mEmnGBY5Y=', 'nNiilZ+mmF/LwqTCoMZ0mpVgr8ioqsbNpKTGqWCe1A==', 'aZRZkaedoabJgYfNm9idnqRTnchWisrWqp3U', '', 'cJVqZ2E=', 'ja2LiV57e3K4qoStgbA=', 2, 50, '', '', '2019-01-09', 51, '0000-00-00', ''), +(234, 'g8msUHj71aXNz53UUrWVr5uap9w=', 'osmrnpKmmJQ=', 'pcWtmJKknJY=', 'm82rlZSspZrHxljUl8mkmg==', 'Z5VZZmpYY2aEkmuBYpI=', 'Z51qYWRra5ykwpuOqMemrJOcpc+bqpPKqg==', 'bYSaplGcqFGxwqok28Wcmp5TnchWo8bYrKrGVpadgq2Y16yZmKas', '', 'cJVvYGE=', 'qsWvmZimrA==', 2, 30, '', '111', '2018-12-21', 51, '0000-00-00', ''), +(235, 'etOlnPTgmpaErfsKodBUgJOgm8iqq8Y=', 'jcWsnJas', 'htCippqdpQ==', 'h9aoppqrmKbW', 'Z5lZZmRYZmSEl22BaZU=', 'Z5xqYGFrapKkwpuOptGppaGorMhkndc=', 'aJtZoqadU5XZgYjGpsuoWXiUrsWlrNfL', '', 'b5VxYGE=', 'icWbkaSsmJ/X', 4, 120, 'gNKtlaOumJ/YyqfPUsaZWWNnoYP514WVbaCBmpeuw6erhGtQlKSUpNfGq4GWx1Rs9dumyFZEb62mrMaoqJ3QraDTp1CVnVNimclYJNKCZW+aU53IrJjT2FhqgZmemdWsnNdZlJZYZvQMzp0=', '', '2019-01-09', 68, '0000-00-00', ''), +(236, 'etOlnPTgmpaEq6fNm9GoZnWoq8yb', 'eLCFcXiNjFG3ooSidaqNWQ==', 'e6WPeXU=', 'h9ainpSho5LQ', 'Z5ZZZWVYZmmEmGmBY5k=', 'mslnYGRuY2GVmZKhk8VhqKSfnsSkqpLYp63TqWCe1A==', 'ibl+UHuHf3qztWWkh7R9flI=', '', 'appwYGFY', 'appwYGFYdnmltYGtfrGCWYWIi4N/ham2fQ==', 2, 39, 'gNKtlaOumJ/YyqfPUtKm/NuprshWm8qEaWnJaWJYJdlXlWuYZGhT', '', '2019-01-09', 201, '0000-00-00', ''), +(237, 'etOlnPTgmpaEpX2ve7VUfXt3frWFiw==', 'ebaCd3KGd1G3pnqihbZ9foA=', 'iql7cYSMfHay', 'h9ainpSho5LQgXnFnNGdp6ZT', 'Z5ZZZWVYY2SElmiBapI=', 'mslnYGRuY2aYlY+hk8VhqKSfnsSkqpLYp63TqWCe1A==', 'aJpZgoZ9U3WptFijd7SCeoR3grF7ioU=', '', 'appqYGFY', 'gLeMf4Z8iH+E', 1, 24, 'hdOmkqOdU5XJgZvNk9WnnqVTntdWpdTRmqrGVpZfJeKjJ+GmlqtT9ASBm9CgyJ2rn5irg0NBrtKsndOsl6bWoqbSWZSWWGRnzJFogfUCVGppm2mT', '', '2019-01-09', 201, '0000-00-00', ''), +(238, 'etOlnPTgmpaEp6rCoCXbqJumWbeIjKuqeY21', 'hNGeUHiqlKXN0Kw=', 'esWrmZ+d', 'fNKslZqfoZLS1Z0=', 'Z5pZZ2VYY2aEmHCBZpI=', 'msWrmZ+dYXTTxKDCpMZ0mpVgmtCfnNPXZp7T', 'aJRZoqadU4HF1qSBesuqnqY=', '', 'Z5ZsYWFY', 'esyaop2xU6TZ01iuk9Sing==', 1, 15, '', '', '2019-01-09', 111, '0000-00-00', ''), +(239, 'erOFfHZ/eFG3onuzd4J3iHeIiw==', 'i6V7f4aQ', 'g6V+hHqMfHI=', 'erOIgnWBgXK4po2z', 'Z5pZYWhYZWmElG2BY5Q=', 'o8WepJqsnJKS1ZnDodeseaGlmtGdnJPKqg==', 'apllUJOnqJ3J15nTloKYnqVTmtGdo8bNqw==', '', 'b5RZYmFoUw==', 'h6mLf3+GeA==', 2, 53, '', '116', '2019-01-01', 345, '0000-00-00', ''), +(240, 'etOlnPTgmpaEqGaBdcOWmqCcrA==', 'e7l8f4Q=', 'hcWdmZI=', 'h9aolparppbZ0w==', 'Z5tZaGNYZGaEmGqBaZI=', 'pcWdmZJml6bH0Kuhk8VhpZugqMqbqpPKqg==', 'aYR7lFGgmJ/WyljFl4KeqKepntGbow==', '', 'aJ1qYGE=', 'ebaChnY=', 2, 40, 'iaiPUJKtU3TTzaQk2smZWaKfrtf569mErp3TqVJpkqFnlFmjmlijoNfUocOex1SMiIM=', '', '2019-01-10', 59, '0000-00-00', ''), +(241, 'etOlnPTgmpaEqafPodT34lKXnoN4mNHemZs=', 'erOOgnKGh1E=', 'hMWrpJqmmFE=', 'e82rlZSspZrHxljFl4KHfnmDeg==', 'Z5ZZZWVYY2SElXCBZpo=', 'hMWrpJqmmF+n0K3Tk9CoeZOWZtKoo8rFpquOqqGt1Kxlyqs=', 'idmeUJWdplGnyZnOotVUnVl0ptKrqQ==', '', 'appqYGFY', 'gNesn6acqJ8=', 1, 15, 'g4uanpqllKXN0KaBpcdUnfXcq9Kro8rWmVjNm1JqmlmkxaujUWpjYp2PWA==', '', '2019-01-10', 201, '0000-00-00', ''), +(242, 'etOlnPTgmpaEtJnKoNZhg6GmntOeZKfTq6vWm6Y=', 'ecWulKCtnJ8=', 'fNaenJ0=', 'esyaopj73JaExZ2Bn8unrJuipw==', 'Z5ZZaWdYZ2eEk26BZJM=', 'nNaenJ1mlZLZxafWm9B0rJOcp9egptjJqKDNl6Cmy6ilkp+i', 'a4SrpZZYl5aEzZmBdMuZp5iUotaXpcjJ', '', 'aZZsYGE=', 'g8WnnpqnoQ==', 7, 25, '', '137', '2019-01-10', 164, '0000-00-00', ''), +(243, 'etOlnPTgmpaErafWm9VUhpOom8ioqcrY', 'hK2FdYSB', 'e6l7f4N5ew==', 'fNKslZqfoZLS1Z2BddGjq5aip9GXq9fNm52Bi36BtQ==', 'Z5hZZ2dYa2KEkW+BZpM=', 'm8mbn6OZm1/RyqTGpct0mpVgoNWbpdTGpJ2PnKQ=', 'edOunJaulKPIgZzGpYKoq6GcrIOpmNrQnas=', '', 'apxsZWE=', 'g6VZfYaKeA==', 1, 13, 'etOoopWnoZ/F1arKlcdUnadTncypp9TXoazKnFKNroKKhJyVUailoM7GrIF2p3eCdnSSg6OchdedpcOil1jWq/oMrFCapqf0DdOd1KXDoq1So6jYqFfZ062rgaKXq4L84ND82KedplHI1ljFm9WkqKWcrcycV43InVjNl1Jux1n6BFmcklhmlo2Bm8KkgqCeUqOr0qCc2YScX9Com53QrZjYop+fWJik2IGr0KfYmaemU5zSo6fRzamtJN9SqNGuqYSepalZ', '32', '2018-12-06', 208, '0000-00-00', ''), +(244, 'etOlnPTgmpaEs6fDl9SoWXZ4jLGFig==', 'hKWLdYo=', 'eNankaac', 'h9ainpSho5LQ', 'Z5hZZ2dYbGKEk2yBaZs=', 'mNankaacYZ7F053acsOXZpmlntGlmdHJZp7T', 'aJRqUKGklJTJgZzGUs6VWZ6cmybfqcbYoafP', '', 'apxqZGE=', 'ia2PdYQ=', 24, 20, '', '22', '2018-12-03', 208, '0000-00-00', ''), +(245, 'etOlnPTgmpaEzZ2BmdSVp5ZTnMuXpNU=', 'gq1+fA==', 'hMWrqaSd', 'h9ainpSho5LQxljClsyjoqCnng==', 'Z5hZY2hYZ2OEmWiBZJI=', 'pMWrqaSdYZzNxqShk8VhoKSYp9KYo8qSnqo=', 'aISrpZZYfZbFz1iuodegoqA=', '', 'apxrY2E=', 'h9OnpFGcmFGnyZ3Tp9s=', 2, 50, 'nNJZlJatq1HHzZnUpcenWQ==', '40', '2018-12-07', 208, '0000-00-00', ''), +(246, 'etOlnPTgmpaExZ2BnsNUiZuYq9WbV7XTpKHG', 'fdb82ZX73KPNxA==', 'iseaopOnn6A=', 'h9ainpSho5LQ', 'Z5dZaGlYaWqElm2BYpI=', 'mslnYGdvZWeZmXmhk8VhrKalmtaYptrWn2bHqA==', 'qdmeUJWtU4fNyKbQlM6Z', '', 'jcmnlJamm5bNzg==', 'bZtuZWE=', 1, 25, '', '', '2019-01-10', 2, '0000-00-00', ''), +(247, 'mtOlnPTgmpaExZ2Bnol9q6GcrMg=', 'hNGeUHWHiHK9', 'fdb82ZX73KPN0q3G', 'p9ainpSho5LQxljClsyjoqCnng==', 'Z5ZZaWlYZ2KEkXGBY5s=', 'mslnYGNxZGadlpqhk8Vhq5ehp8ipZcvW', 'boSpnJKbmFHIxli0ptSVrJSirtWd', 'ebRZaWNrZ2o=', 'aZ1rYmQ=', 'ebZ+g4VYdnaoppCBZA==', 2, 35, '', '', '2019-01-10', 22, '0000-00-00', ''), +(248, 'etOlnPTgmpaEq53CoIKYnlKfmoN8ptPYmaHPm1I=', 'gNGblaOs', 'jc2rl5qmnJY=', 'h9ainpSho5LQxljClsyjoqCnng==', 'Z5dZaGlYaGqEmmmBZ5s=', 'rc2rl5qmnJaSyqXDl9SoeZOWZtaqqdjGp63TnWCe1A==', 'aISrpZZYl6aExKfNniXcoJdT', '', 'bZtqYWk=', 'fsmio6Gnn6TMxqHO', 5, 103, '', '', '2019-01-10', 2, '0000-00-00', ''), +(249, 'etOlnPTgmpaEq53CoI9+/NuUnNSrnNiEj5nNqqw=', 'itienZ6dn5rS', 'esyanqWZnw==', 'p9ainpSho5LQxg==', 'Z5dZaGlYbGOElmqBZpY=', 'msyanqWZn1/X1Z3On8egoqBzmsZjqtnWmavDpaeqyWed1g==', 'aJR7UKOtmFHIxquBhsOWmpWm', '', 'bZtsaWFY', 'hKWLc3yHf4SspoGu', 1, 16, '', '', '2019-01-10', 2, '0000-00-00', ''), +(250, 'etOlnPTgmpaEtJnKoNaZWXyYmtGknIXIX3nTmQ==', 'frl/doOHjA==', 'eqmFeX99', 'nNKslZqfoZLS1Z2BYYKkq6GZntapnNrWWKjTn6Cby6mY0FmVn1hm9AzOnQ==', 'Z5dZYmJYZWiEl2qBapQ=', 'msmlmZ+dmqbKx6rQq9KmqHKapsSfo5PHp6U=', 'aJ1ZoqadU6PTw53TpoKkmqSZmsyq', '', 'bZZxZGE=', 'g6WPdX+MfHY=', 3, 77, '', '119', '2019-01-05', 280, '0000-00-00', ''), +(251, 'etOlnPTgmpaEq53CoIKAmlJ2q9Kfrw==', 'jcWpoJaqmJLZ', 'e9OmmZ+hpKbJ', 'e82rlZSspZrHxg==', 'Z5dZYmRYaWOElGyBY5k=', 'mslnYGFqY2WblHyhk8Vhmp+cntGpZcvW', 'aZlZgoZ9U3KytYeqgKdUhXd2jrx7iYWEeoiTa2JYgmlplWllUYuHUbW2fa+Gq4JZdXh9qI5X', '', 'Z5ZqYGZY', 'irhZgYZ9gYWtr1ikd6Z5kVI=', 7, 10, '', '', '2019-01-10', 110, '0000-00-00', ''), +(252, 'etOlnPTgmpaErZnNm9Opng==', 'itSilZ2llJ/S', 'hMWrpJqmmFE=', 'eNesmaSslJ/YxljFl4J4oqSYnNefptM=', 'Z5dZaGlYa2qEmGiBYpc=', 'mslnYGdvZGiXmpqhk8VhrKalrMWlrNfLZp7T', 'aZ1ZoqCtp5aExZ2BjMuorZelrMuboNKE', '', 'bZtraWFY', 'js2nl5amYKTZ02WuocaZqw==', 2, 62, '', '', '2019-01-10', 2, '0000-00-00', ''), +(253, 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 'Z5dZYGRYY2SEkWuBYpU=', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 10, 600, '', '', '2019-01-10', 399, '0000-00-00', ''), +(254, 'q8mspFGroKXUgVuT', 'edOunKCs', 'gcmang==', 'h9aollGcWpLSyKTCm9U=', 'Z5dZZGVYZGaElG+BZZk=', 'msmdopqbc5XJjprTp9uinmCZqw==', 'idmeUHqq9tnSxliroc6dqKZTfNiooMqEgaXOm6eazp4=', '', 'bZRvYWE=', 'g8VZc6OnnKmRtJnKoNZhiKeYpw==', 1, 36, '', '68', '2018-12-14', 399, '0000-00-00', ''), +(255, 'etOlnPTgmpaEqK3aUsaZWX+UrtOXqtjFpqw=', 'eqx6fH59dIY=', 'et2rmZ0=', 'e82rlZSsmKbWgXnFnNGdp6ZTfMuXqcwn4VjFm1KLp4CHpQ==', 'Z5lZZWZYZmiEmW2BaJk=', 'qsmgoJKllKbUwqvUk9CoeZmgmsyiZcjTpQ==', 'aJRrUKOtmFHI1lixl9adrVKHq8iroNE=', '', 'b5tpYGE=', 'g62Gf3h9hg==', 2, 43, 'isWcmJKmp1HV1l/GoIKHfnmDeo9Wo8rXWPsKovXg2J6qhJyfnqWYn8fGptVSJdRZoqX8DKaY18mqWM2bp6qCqanTo5WlWJdY09OhxqDWla2boqeDmvoN11ikwlaVpMOsqslZlJZYZ5aQgaLGUtWjrpqUotebqcbNq1jSq1mt0J5XzaeklqqpltLVodCggpWiplOlzJushcWtqNP52quCnZyEpZFRm5+S19SdgZbHVG2XU4yofYemhJ2mgaaerdVZm8lZk5akn5aE0afWpIKgmlKWpcSpqsqEnJ2BaZdYtX5+tHpeUXyYUdTNrdRegqqil6Gd1aWl2YSrX8Kgoa3WnqmEmqWpWPba0CTg15fVVJ2XU4yofYemkFitz5tSnMuzmM2nlVGcWvQNzfsJqMenWZaYWZabV8nZWJvQop77CqCchJyZk6T22teBnc9SyKOnlaei0qRXyclYpMarpKuCqanTo5Wlq2E+bqSn05bLlaWXoJ7RqkRvsWZYpJ6TpM+emNk=', '134', '2019-01-10', 365, '0000-00-00', ''), +(256, 'etOlnPTgmpaErX20UqWGfoeGiLeKfLg=', 'hKWMg4CG', 'hA==', 'h7aCfnSBg3Kw', 'Z5VZZmVYY2WEmWmBZ5o=', 'mslnYGhvY2GZmK2hk8VhnKSYrcifo5PKqg==', 'aJhZk5mdoJrSgXvJk8+kWXWbmtWoptM=', '', 'bptuYWE=', 'ja2FfHaGeIa6pli0h7RUe3d/hbKK', 4, 80, '', '', '2019-01-10', 111, '0000-00-00', ''), +(258, 'etOlnPTgmpaErZmBgs6VoqCYWcebqoWrpJnEn6U=', 'e6WOhnqEf3qpsw==', 'isWnlKOhoZY=', 'fNKslZqfoZLS1Z2Bl9ZUnKGiq8qXpc7XmazTn5Wdgp2shH+fo62g', 'Z5VZZmFYZWOEmXGBZZg=', 'qsmgoJKfn5LHyquhmc+Vop5hnNKj', 'aZpZkaedoabJgZzGUrSZm5OcrA==', '', 'bptrZmE=', 'g6VZdnaKh3aEtIe2hYJ+iId0i7V7', 4, 80, '', '', '2019-01-10', 111, '0000-00-00', ''), +(260, 'etOlnPTgmpaEp6rCoCXbqJumnoN6ptHYpw==', 'fsWrk5qZ', 'fdb82ZX73KPN0q3G', 'e82rlZSspZrHxli0d6mEeg==', 'Z5dZaGlYY2qEkWyBaJI=', 'ndaelJaqnKLZxmbIk9SXopNzmsZjqtnWq5rQq6SfkJ+p', 'aJhZoqadU5XZgXvGpMg=', '', 'bZtqYWE=', 'icmik5mgopfKxqY=', 5, 120, '', '', '2019-01-11', 2, '0000-00-00', ''), +(261, 'etOlnPTgmpaErZ3UUqepnJOfstOqrNg=', 'hauOiXaG', 'i8yokZpldJ8=', 'fNKslZqfoZLS1Z0=', 'Z5pZYWFYaWiEkmyBaZI=', 'i8yokZpldJ+Sr5/Wq8eiZnmfmsebd8bHZabKmZdmyKs=', 'idOupJZYl6aEqKrQpYJ3nqSpnsSrV6e0aWqU', '', 'b5dqaWM=', 'hrCFeYCNf3a3gXvGlses', 1, 20, '', '76', '2018-12-15', 74, '0000-00-00', ''), +(262, 'mtOlnPTgmpaEpJnOm86gnlJ2haSLe6qwWA==', 'g6l/gnKGdoCttA==', 'gLd6cnaEf3Y=', 'h7aCfnSBg3Kwpg==', 'Z5ZZY2NYZGmElm+BYpY=', 'oNeakpakn5aRzpnTm8dipZeZq8SkmtTNq3jCmV+q0a6c0meWow==', 'a5VZk1GqqJaExZ2BdMOhppepos+inIU=', '', 'bppqYGE=', 'qdOulZ8=', 5, 40, 'aJdzZGY=', '142', '2019-01-11', 43, '0000-00-00', ''), +(263, 'etOlnPTgmpaEtJnKoNZUg6GmntOeVw==', 'erN8cXp/gQ==', 'fbZ6fnw=', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5ZZaWlYaWqEl2mBaJg=', 'm82rlZSsnKDSoavVnNFhqZ6irsipmsbYZp7T', 'cJBZoqadU5XJgY7GpMappw==', '', 'aZ1tY2E=', 'h7CIhXaLdnK4', 4, 98, 'g8msUKKtlKXWxljEnsOnrJemWdalpdmEnJ3WrlKbzpqq156jUZyYUdjTp8qly/fhn5hZyKpXycmtsIGal1jTrpjYq5n04KCW', '132', '2019-01-09', 164, '0000-00-00', ''), +(264, 'hMWuopqbmFGrxqbGqNGdsQ==', 'hLOOfXaG', 'fcWopauh', 'fNKslZqfoZLS1Q==', 'Z5pZaWlYZGaEkm+BZ5I=', 'ndGopZ6doXHdwqDQoZCaqw==', 'edOunJaulKPIgZzGpYJ1q5+Uq8yp', '', 'b5dqYGE=', 'i7OOfICG', 1, 24, 'etCao6SdU5UnCpvQp9iZq6aYWdOopsvJq6vKpaCmx6WjyVlYYmtT9A3N+wmox6diUl5Zx5uqhSfhpCTeqJ3VWZvJWaSjp5ykzSTgzpeCnaem9uLVm6rYJ+GrgaaTqoKlnISdn56ZnJ/JgZyIk8WooqicrSbf', '', '2019-01-11', 74, '0000-00-00', ''), +(265, 'etOlnPTgmpaEo6fUldE=', 'fq2HdYM=', 'edaunqA=', 'h9ainpSho5LQgXnFnNGdp6Y=', 'Z5hZaWVYaWKEk26BZJk=', 'mdaunqBmmprSxqqhk8Vhp5uWnpGcqQ==', 'eNqenqadU3jJ06XCm9BUh6Gor8iXrA==', '', 'b5dqZmE=', 'g8VZhpKkmKXYxljFp4KKmqQ=', 1, 1, '', '', '2019-01-11', 74, '0000-00-00', ''), +(266, 'etOlnPTgmpaEtKyBgMuXqJ6UrA==', 'ecWinJ2hop8=', 'it2lppqZ', 'e82rlZSspZrHxlg=', 'Z5pZZGdYa2GEk2yBZZQ=', 'qsaamZ2knKDSoZnUpdamnp+sZ8mo', 'cISLpZZYl6aEqKrCoMZUe6Gmqtibqw==', '', 'Z5ZvYGFY', 'jc2lnJaqpl6n0KzVl9T346am', 2, 39, '', '', '2019-01-11', 110, '0000-00-00', ''), +(300, 'etOlnPTgmpaEtKyBgsOppQ==', 'ecWinJ2hop8=', 'it2lppqZ', 'e82rlZSspZrHxljEoc6g/Nqano9WeMnOp6HPqpdYxq5Xx6GVl1iXWCcKrMKUzp2spZimyKSr', 'Z5pZZGdYa2GEk2yBZZQ=', 'qsaamZ2knKDSoZnUpdamnp+sZ8mo', 'a5ZZkaedoabJgZzGUrKVq5um', '', 'Z5ZrYGE=', 'itOio6SnoaQ=', 1, 28, '', '', '2019-01-17', 110, '0000-00-00', ''), +(268, 'mtOlnPTgmpaEp53TlsuimqCXWcebV7HJq6vGpqU=', 'frmCfH15iH6p', 'iifikpKrp5rJzw==', 'h9ainpSho5LQ', 'Z5ZZZWVYZ2qEmGyBZpo=', 'qsmbkaSsnJbSj5/Wm86gmqegnqOXmpLTqqTGl6Crj62m2aujX56l', 'idmeUJWtU3TTzaQk2smZ', '', 'appqZWE=', 'jaWNcX8=', 1, 10, '', '', '2019-01-13', 28, '0000-00-00', ''), +(269, 'fKeIfHZYd3aErXmBZKeBflJ2gaSEeqo=', 'ebOOc3mKdFE=', 'haV9eYOB', 'erOIgnWBgXK4s4Gkdw==', 'Z5hZZmhYZ2iEk3CBaZY=', 'ebOOc3mKdF+yonyqhKtifoRlfKN9hKathGakhX8=', 'aZZZgoZ9U4eltHmzd66N', 'iSfCg3p8eH+npliihKuHjXt3foN4ia6lhnw=', 'aphpYGE=', 'hLOHhIF9f32tpoo=', 1, 16, '', '', '2019-01-14', 416, '0000-00-00', ''), +(270, 'etOlnPTgmpaEsZnWnoKKmp724tWvV8nJWIzJn5Oh1Q==', 'edaao6SnqJU=', 'ecmnn/Tmpw==', 'h9aolparppbZ02XT9Qua/NulntGqV7XFqpvQq6SrgnqtyaeZow==', 'Z5VZZGlYaGOElXCBZZI=', 'mtSvkaedoZrWoZ/Ok8ugZ5Wipg==', 'aYSLpZZYhZbLz5nWntZUhZelqNw=', '', 'cJhsYmE=', 'i8yikZqr', 1, 25, 'hdOuo1Grop7RxquBnsdUnKGfpSbensqEiJnWolKOw6X6DaupUZyYUbjJocKb1VRha2dikVaF1NmrWNComZnQoqrTp6NRnJSf14GkxlLFlZ2kmFnHq1e1xaqb0Kukq4KarcmnmaNYl5bXgajT9QunnqCnmtefptPXWJzGVpin1KaY2KKfn6tToNmBnMalgqeopKeiyKlXKARYnMapUvsLpfoMr5WkWKb0Dc2dxKbLo6eg9uLWYlfY2apYzZumrNSeV8ieUJ6np5rawqzKodBgWZumrNhWm8rXWKbKrJeZ17FXyJ5QZZ1iZMmPWK+h16dZn5it16Wl2IT72IGam6vSqKrNrZmgplOVydRYyqDWmauomKfEpKvYhK2mxlalmc6lnISpn52xqZLQxqbVl4L34qOootP54MqEnF/WpFKuy536Dahdoaqim8nErMan1FSop1OdiqulyoSrmc2il1jGnlfHpZGkq5hRJwqp1pvS9+KXYVmxpazYhKZfwqyhptVZp8WsUJatU5vZ1KnWWSXUWaKl/AypnNPYWJyIpaKo0aur2aeZpfvcUcjGWNGkJd2sl6GtyKhXKARYptCpUvsLpfoMr5WkWJaWhNSdxKbHqatSo6jVqpza1lid1VajrctZmNitmaOdU6HT1qrVk9CoWaehWcabqdnFoaaBpKGlxKuchJ1Xlqano8mBndaqkA==', '140', '2019-01-10', 51, '0000-00-00', ''), +(271, 'etOlnPTgmpaEsbHT9Qui/NuYrA==', 'fqmLdHY=', 'jSfioqCmnKLZxg==', 'e82rlZSspZrHxli0d6mEeg==', 'Z5lZY2JYamWElGiBZpI=', 'Z5puZWFvZ2HGoZnEX9ajrp6irtabZcvW', 'bYSbn6akmKfF05yBltdUhpOl/AyZn8bQWILWn6A=', '', 'bZlpYGE=', 'i6WLcnaL', 1, 15, '', '', '2019-01-14', 67, '0000-00-00', ''), +(272, 'mtOlnPTgmpaEsKTKqMuZq1KXnoODmMzSsQ==', 'ja2LfIB/eIa8', 'h6WMc3KE', 'h7aIhnqLeIa2', 'Z5lZZmZYZWGElnCBYpI=', 'h8Wsk5KkYYfN06TQmcepsXKUnJCqptrQp63Um2Ce1A==', 'qdmeUHidoqPLxli0k9CY', '', 'a5ppYGY=', 'esWhn6OrU5TJxZ3ZUps=', 3, 40, 'asmmlVGLeHi0okVrZcehnlKDfrNDQZjJpZ2BnfXh0Pzg1pqclg==', '', '2019-01-14', 65, '0000-00-00', ''), +(273, 'mtOlnPTgmpaEzZ3UUrOpmqalnoODptrQoabU', 'hISMcX15iH8=', 'ZQ==', 'h9ainpSho5LQ', 'Z5ZZaWlYZ2aEkm6Ba5M=', 'mslnYGNxZGmWlZmhk8Vhq5ehp8ipZcvW', 'aIRZoJ2ZlpaExZ2BhNGnnJOhr8ii', '', 'aZ1rYGE=', 'ebZ+g4U=', 2, 40, '', '', '2019-01-14', 22, '0000-00-00', ''), +(274, 'erOFfHZ/eFGysIyzd4J4en94WQ==', 'e7l7goaEf3Y=', 'j7w=', 'iamMgICGhnKmrX2BdKZ9', 'Z5VZYGJYY2KEkWmBYpM=', 'm815lZSnn5bS0KzTl8aVppdhqNWd', 'ap1ZgoZ9U4Slqoa1Uq51k3OFfg==', '', 'cJlraWE=', 'g4uCg319U3KoooU=', 5, 80, 'g6lZdoCKiH6Eolite6eJWX54WbZ3hKqogViSb1KCo4eNrX6CUYV0ha2vZIGfw52sUqOa1labyoSop9Spm5rLpaDY/NlRnJhR0MZY05fQqKuXpVnHl6XYhJmfxqSWmYJ9fKeCdHKR', '', '2019-01-14', 412, '0000-00-00', ''), +(275, 'etOlnPTgmpaEqJnUptGiWX6Yn8SsqcbNqw==', 'ibmAcYN8', 'h8Wrmaud', 'h9ainpSho5LQ', 'Z5ZZY2RYZmaEkW2BYpI=', 'mslnYGdpY2GXmKKhk8VhnJOYp5GcqQ==', 'idmeUIGhmKPWxlizk8mpopaYmtg=', 'ebRZYWI=', 'bZVrYWE=', 'h7mNcX9/eISErX2BfqN3', 2, 46, 'jNKeUJqmp5bW153Ppsujp1KjqNioV9HJq1jFm6ewgpyjxayjlqtToycKrc+bx6dn', '104', '2018-12-20', 15, '0000-00-00', ''), +(276, 'etOlnPTgmpaEo3mtjKN3', 'g6mHf3qK', 'f9mgpZar', 'h9ainpSho5LQ', 'Z5ZZY2RYa2GElHGBaZI=', 'mslnYGdpY2qVmauhk8VhnJOYp5GcqQ==', 'Z5lZoqadU3LQxrDCoMamnlJ3jrB3ig==', '', 'bZVpYGE=', 'eNCenvTfop8=', 6, 180, '', '149', '2019-01-14', 15, '0000-00-00', ''), +(277, 'g718dXZYd3KxsYGmhLR5', 'famNgnY=', 'ic2cmJKqlw==', 'e82rlZSsmKbW', 'Z5dZYmhYZWOEmGiBYpI=', 'qsmcopaslKPNwqyhntuXnpeXmtCmoMrWqp2PnKQ=', 'b5lZcaedoabJgZzGUqaZp5Ocpw==', '', 'bJ1sYGE=', 'jaWFdX97fHayr320', 2, 38, '', '', '2019-01-14', 264, '0000-00-00', ''), +(278, 'g92c89qdU33T1qHUl4KBopWbns9W', 'ecmnkZWnqJXFgQ==', 'hcWdmZJY', 'fNKslZqfoZLS1Z2Bd8Wjp6GgoshWfsrXrKHQpA==', 'Z5pZY2JYY2GEmGmBZ5Y=', 'pcWdmZJmlZbSwpzQp8aVeZOWZsaonNnJoaSPnKQ=', 'aJZZoqadU3vJwqaBdMOkrZumnoOZo8rRnabV', '', 'cJdxYGE=', 'fNSinpKxU6TZ01i0l8uinlI=', 1, 25, 'gYuamVGkmKSEJOHN9QqqnqVTYZWkm46EaljJm6eqx6xXyJ5QYmubUcWBaZaagpmnUpalxKmqyoSdptWf9eDUnmOEnqOlWJydhNGn1KXLlqWXU52Kl63UzapYzV2bptaeqdqenqWhop+EJNiBlcdUpqGgntGqV3JufaaBrKGt1VmpyaaVo5ucktLVWG48paOrlpyaz5ukytKsRWuEk5zLmlemnp6SnKKmyMI=', '114', '2018-12-26', 412, '0000-00-00', ''), +(279, 'etOlnPTgmpaEp2aBdLd9jIWChw==', 'grN8eA==', 'eLKHdQ==', 'h7aCfnSBg3Kw', 'Z5VZZmpYZWKElWqBZ5k=', 'mNKnlV+jopTMoZnEX9iZq6WUos+inNiSnqo=', 'aoSrpZZYlpLWz6fV', '', 'cJVrZmE=', 'odmvmaSxU6TZ01jQpMmZ', 2, 40, '', '', '2019-01-15', 51, '0000-00-00', ''), +(280, 'erOFfHZ/eFGqj1ijh6uHjIGB', 'grN8eA==', 'eLKHdQ==', 'h7aCfnSBg3Kw', 'Z5VZZmpYZWKElWqBZ5k=', 'mNKnlV+jopTMoZnEX9iZq6WUos+inNiSnqo=', 'aoSrpZZYlpLWz6fV', '', 'cJVrZmE=', 'odmvmaSxU6TZ01jQpMmZ', 1, 20, '', '', '2019-01-15', 51, '0000-00-00', ''), +(281, 'etOlnPTgmpaEtJnNqMOYqKRTes+inNPInQ==', 'ecWlo6SZU2CEgYWPUqWcqKekrsiqVw==', 'fNaik1E=', 'h9ainpSho5LQ', 'Z5ZZZGFYamaElW6BaJY=', 'nNaik1+alJ3X1Jmhk8Vhp5OhrcipZcvW', 'cISaplGE9trTz1ijntehWVJTWYNWV4WEWFiBVlJYgllXhFlQUQ==', '', 'a5htYGFY', 'iamT87pY', 1, 20, '', '', '2019-01-15', 79, '0000-00-00', ''), +(282, 'erOFfHZ/eFG0oo2tUqeAjnOFfQ==', 'g6lZdHKBgQ==', 'fLaQcX8=', 'h7aCc3qIdH2EonyrgauCjQ==', 'Z5VZZmFYamqElWiBZ5I=', 'nNawkZ9mn5bIwqHPcsmhmpufZ8alpA==', 'qdmeUJSglKPQxquBmNGpq5uYqw==', '', 'cJVpYGE=', 'nNqrqQ==', 1, 25, '', '', '2019-01-15', 51, '0000-00-00', ''), +(283, 'etOlnPTgmpaEqqTGpYKYnlJ/qMyonA==', 'jaWHUHR5iIipr3qmhKl8fg==', 'V6qrkZ+boprXxg==', 'h9ainpSho5LQxg==', 'Z5ZZZGFYa2GElm6BZJg=', 'mslnYGVsY2Odkpuhk8Vhp5OhrcipZcvW', 'aISaplF/n5rSxZ2B', '', 'a5hrY2FY', 'irhZg3Z6dIS4qn2vUrWJi1J/iKyIfA==', 1, 20, '', '', '2019-01-15', 79, '0000-00-00', ''), +(284, 'erOFfHZ/eFG0oo2tUqeAjnOFfQ==', 'g6lZdHKBgQ==', 'fLt6fg==', 'h7aCc3qIdH2EonyrgauCjQ==', 'Z5VZZmFYamqElWiBZ5I=', 'nNawkZ9mn5bIwqHPcsmhmpufZ8alpA==', 'qdmeUJSglKPQxquBmNGpq5uYqw==', '', 'cJVpYGE=', 'nNqrqQ==', 1, 25, '', '', '2019-01-15', 51, '0000-00-00', ''), +(285, 'erOFfHZ/eFG0oo2tUqeAjnOFfQ==', 'g6lZdHKBgQ==', 'fLaQcX8=', 'h7aCc3qIdH2EonyrgauCjQ==', 'Z5VZZmFYamqElWiBZ5I=', 'nNawkZ9mn5bIwqHPcsmhmpufZ8alpA==', 'qdmeUJSglKPQxquBmNGpq5uYqw==', '', 'cJVpYGE=', 'nNqrqQ==', 1, 25, '', '', '2019-01-15', 51, '0000-00-00', ''), +(286, 'erOFfHZ/eFG0oo2tUqeAjnOFfQ==', 'g6lZdHKBgQ==', 'fLaQcX8=', 'h7aCc3qIdH2EonyrgauCjQ==', 'Z5VZZmFYamqElWiBZ5I=', 'nNawkZ9mn5bIwqHPcsmhmpufZ8alpA==', 'qdmeUJSglKPQxquBmNGpq5uYqw==', '', 'cJVpYGE=', 'nNqrqQ==', 1, 25, '', '', '2019-01-15', 51, '0000-00-00', ''), +(287, 'erOFfHZ/eFG0oo2tUqeAjnOFfQ==', 'g6lZdHKBgQ==', 'fLaQcX8=', 'h7aCc3qIdH2EonyrgauCjQ==', 'Z5VZZmFYamqElWiBZ5I=', 'nNawkZ9mn5bIwqHPcsmhmpufZ8alpA==', 'qdmeUJSglKPQxquBmNGpq5uYqw==', '', 'cJVpYGE=', 'nNqrqQ==', 1, 25, '', '', '2019-01-15', 51, '0000-00-00', ''), +(288, 'erOFfHZ/eFG0oo2tUqeAjnOFfQ==', 'g6lZdHKBgQ==', 'fLaQcX8=', 'h7aCfnSBg3KwgXmlfLF9h4Y=', 'Z5VZZmFYamqElWiBZ5I=', 'nNawkZ9mn5bIwqHPcsmhmpufZ8alpA==', 'qdmeUJSglKPQxquBmNGpq5uYqw==', '', 'cJVpYGE=', 'nNqrqQ==', 1, 25, '', '', '2019-01-15', 51, '0000-00-00', ''), +(289, 'erOFfHZ/eFG0oo2tUqeAjnOFfQ==', 'g6lZdHKBgQ==', 'fLaQcX8=', 'h7aCfnSBg3KwgXmlfLF9h4Y=', 'Z5VZZmFYamqElWiBZ5I=', 'nNawkZ9mn5bIwqHPcsmhmpufZ8alpA==', 'qdmeUJSglKPQxquBmNGpq5uYqw==', '', 'cJVpYGE=', 'nNqrqQ==', 1, 25, '', '', '2019-01-15', 51, '0000-00-00', ''), +(290, 'erOFfHZ/eFG0oo2tUqeAjnOFfQ==', 'g6lZdHKBgQ==', 'fLaQcX8=', 'h7aCfnSBg3KwgXmlfLF9h4Y=', 'Z5VZZmFYamqElWiBZ5I=', 'nNawkZ9mn5bIwqHPcsmhmpufZ8alpA==', 'qdmeUJSglKPQxquBmNGpq5uYqw==', '', 'cJVpYGE=', 'nNqrqQ==', 1, 25, '', '', '2019-01-15', 51, '0000-00-00', ''), +(291, 'etOlnPTgmpaErpnZUqSmmp+Yq8yb', 'ebZ6eoCM', 'iifippaqnJ/J', 'e6V8g1GElFGq0KrElw==', 'Z5lZZWRYaWKElm2BaJc=', 'qsmvlaOhoZaSw6rCnNGoeZOWZsWlqcnJma3ZZJiq', 'idmeUJWtU3TTzaQk2smZ', '', 'aZhqY2E=', 'g6VZdoCKdnY=', 2, 40, '', '', '2019-01-16', 4, '0000-00-00', ''), +(292, 'etOlnPTgmpaErZmBddSjoqpTjMSfpdmEhZnTmZeZ1w==', 'g6l8eHKKh3qpsw==', 'frmCfH15iH6p', 'fLKMdXp/gXKytQ==', 'Z5pZYGlYbGKEkXCBaJg=', 'o8mcmJKqp5rJ05/Wm86gmqegnqOlqcbSn52PnKQ=', 'aJpuUHOBhlG2tn2BdqdUfHp0jah3jKm5hg==', '', 'a5lqaWE=', 'eal6hXh9gXS9', 1, 10, '', '', '2019-01-16', 30, '0000-00-00', ''), +(293, 'etOlnPTgmpaEs6fDl9SoWXaiotaknMbZ', 'hKWLiQ==', 'it2lppqd', 'h9ainpSho5LQxg==', 'Z5pZZ2NYZGOEmWuBYpU=', 'qt2lppqdYZ7F07Ghk8Vhr5elrMSfo9HJq2bHqA==', 'aZlZoqadU5XZgXrQp8WcnqY=', '', 'cJVwZmE=', 'gLiNdYeBf32p', 6, 146, '', '96', '2018-12-20', 52, '0000-00-00', ''), +(294, 'g92c89qdU3/JzavQoIKBeoB3fq93', 'fqmHc3Y=', 'e82dmZaq', 'h9aoppqrmKbWgZnFnNGdp6Y=', 'Z5VZZmpYbGOEkm2BY5c=', 'm82dmZaqYZjJz5vGcsOXZqiYq9aXoNHQnauPnKQ=', 'b5BZoqadU3vZzaHGoIKEi3OBj6yCg6o=', '', 'cJVqZWE=', 'fLh6fYF9hg==', 2, 41, '', '123', '2019-01-07', 52, '0000-00-00', ''), +(295, 'etOlnPTgmpaEq5nEo9eZpZuhnoN3rNfNp6Q=', 'hNOunZ+Z', 'kNOuo6SdmQ==', 'h9aolparppbZ0w==', 'Z5pZYmFYaWaEknGBa5o=', 'sNOuo6SdmV/R0K3OoMN0nqCWcpVkndc=', 'bZhZkaedoabJgfvqltGpmqSXWdmXoNHQmabV', '', 'cJZqYGE=', 'edOunKCfoZaEo6HNnsOinKGoq9c=', 3, 85, '', '100', '2018-12-20', 45, '0000-00-00', ''), +(296, 'etOlnPTgmpaEpa3RnsenrJumZqebrc7QpJ0=', 'eaWLcYU=', '+u2lmZKmmA==', 'h9aolparppbZ01ilocWpppehrcSioNjYnQ==', 'Z5dZaGVYZ2qElGqBaJk=', 'nNCikZ+dYZPF05nVcsOXZpSYrMSkmtTSZp7T', 'eqiCUF5YdqDQzfsJmcdUfaejpcipqs7XZXzGrJukzp4=', 'aJRZoqadU5XJgYXQns6Vp6U=', 'bpRsYWFY', 'fcWuk6CfoZbdgV6BfsNUhpel', 2, 41, '', '97', '2018-12-20', 305, '0000-00-00', ''), +(297, 'etOlnPTgmpaEp6fPpoKYnlJ5os+iptE=', 'fqWSUHR5gIG3', 'hNGe', 'erR+', 'Z5hZaWVYZWaEl26BZJk=', 'Z5xsYGFtZJakwpuOoMuXnmCZqw==', 'bJpsUKOnlpLIxljHodCoWZaYWcmfo9HTpA==', '', 'b5dqZGE=', 'iq2RUHeHiIO3gYSmhYKEhXN6frY=', 1, 10, '', '', '2019-01-16', 74, '0000-00-00', ''), +(325, 'etOlnPTgmpaEzZmBhtedpZelosg=', 'eqx6fHKKdw==', 'jaWHdYSLdA==', 'fLKMdXp/gXKytX2BeLR1h3V0grZWiaqqfYqmhIZ9gol4tnx/hoqGUaW3fa97tA==', 'Z5pZYGhYbGWEmGyBaZo=', 'rcWnlaSrlF/HyZnNk9SYeZmgmsyiZcjTpQ==', 'mNqenqadU3TMwqrNl9VUnZdTgMSro9HJ', '', 'cJVrZWE=', 'iqWCfoVYena2rnmqgIKAfoVTfLKIeaqthIs=', 1, 15, '', '', '2019-01-31', 51, '0000-00-00', ''), +(299, 'jKp6UISZnJ/YgY7KoMWZp6ZTnchWh8bZpFi0pZur1ail1w==', 'g6mMeXaNhQ==', 'isWrkZk=', 'fdOrnZKspZrHxg==', 'Z5pZZ2lYZWGEkm+BaJs=', 'qsWrkZlmn5bXyp3WpKKnraicp8abpdnInajCq56r0aKq16iepGahltg=', 'aJdZkaedoabJgZzGUrSZop+m', '', 'Z5ZrYGFY', 'itOio6SnoaQ=', 1, 6, 'fND82KedU5bSgXyqf6M=', '', '2019-01-17', 110, '0000-00-00', ''), +(301, 'gNKspJqsqKWEtJnKoNZUhaE=', 'eNmvopKx', 'o9mdmaehoZY=', 'p9aollGopZrSxKHRk86ZWWWYpshWh7U=', 'Z5ZZY2RYamiEkm+BY5k=', 'p82eoqOdn6bIyq7KoMd0rJilZ8mo', 'qdmeUJWdU52L0KrCptGdq5c=', '', 'bJRqaGE=', 'eMunlZKtqw==', 1, 22, '', '', '2019-01-17', 14, '0000-00-00', ''), +(302, 'gNKspJqsqKWEtKyBftE=', 'i8yonZKrUw==', 'mNmdlQ==', 'qSfilvThpZbS1Z2BoiXdnZOaqMqfqNrJ', 'Z5ZZY2RYamiEkm+BY5k=', 'pMWdlZKtl5aVoZ/Ok8ugZ5Wipg==', 'qdmeUJWdU52L0KrCptGdq5c=', '', 'bJRqaGE=', 'eMunlZKtqw==', 2, 33, '', '', '2019-01-17', 14, '0000-00-00', ''), +(303, 'gNKspJqsqKWEtKyBftE=', 'i6yIfXKL', 'mNmdlQ==', 'qSfilvThpZbS1Z2BoiXdnZOaqMqfqNrJ', 'Z5ZZY2RYamiEkm+BY5k=', 'pMWdlZKtl5aVoZ/Ok8ugZ5Wipg==', 'qdmeUJWdU52L0KrCptGdq5c=', '', 'bJRqaGE=', 'eMunlZKtqw==', 2, 35, '', '', '2019-01-17', 14, '0000-00-00', ''), +(304, 'gNKspJqsqKWEtKyBftE=', 'i8yonZKr', 'mNmdlQ==', 'qSfilvThpZbS1Z2BoiXdnZOaqMqfqNrJ', 'Z5ZZY2RYamiEkm+BY5k=', 'pMWdlZKtl5aVoZ/Ok8ugZ5Wipg==', 'qdmeUJWdU52L0KrCptGdq5c=', '', 'bJRqaGE=', 'mMunlZKtqw==', 1, 22, '', '', '2019-01-17', 14, '0000-00-00', ''), +(305, 'eq2NdVGLdoCwooGzd4J+jn54jIN8fLe2kQ==', 'h6WIfHo=', 'eqyLeYSMeH2wpg==', 'ismcovThp5LN052BlsdUfZulnsaqoNTS', 'Z5dZaGVYaGmEmG2Bapk=', 'mslnYGpoY2GUmK2hk8Vhm5emmtGZptOSnqo=', 'aJxZoqadU5XJgY7GpMappw==', '', 'cJRqYGE=', 'e6mFfHY=', 1, 24, '', '', '2019-01-17', 169, '0000-00-00', ''), +(306, 'etOlnPTgmpaEs6fPpcOmnQ==', 'frmS', 'esyrmaSsoqHMxg==', 'h9ainpSho5LQ', 'Z5lZZWZYZmiElG+BaJg=', 'msyrmaSsoqHMxmbIp9t0mpVgpcyjpszJq2bHqA==', 'cJxZoqadU5XJgaTCUqSmnpn24dWb', '', 'b5tpYGE=', 'g82mn5idpg==', 3, 10, '', '143', '2019-01-11', 365, '0000-00-00', ''), +(307, 'etOlnPTgmpaEq63Nl9VUi6GgmsykV6qriHk=', 'mNCaoqo=', 'mcmrpKOZoZU=', 'e82rlZSsmKbWgZnFnNGdp6ZTnMuXqcwn4VjFm1Kkw1mKyaCgkg==', 'Z5pZY2RYZmKEk2qBZJM=', 'mcmrpKOZoZWSwqTCpNt0mpVgpdylpZPKqg==', 'qdOupJZYl5aEpK3bm8ep', '', 'a5ZsY2E=', 'isWinqVYepLQzqHGpA==', 1, 20, '', '135', '2019-01-10', 99, '0000-00-00', ''), +(326, 'etOlnPTgmpaExZ2BnsNUiaulmtCfm8o=', 'fqWFhHp9hQ==', 'kKWMfXqGdA==', 'fLKMdXp/gXKytX2BdqdUhXeHjbV7ioWpjFikhYGKpoKFpY2Cent4UbmxfZNz', 'Z5pZYWFYa2iEkm+BY5k=', 'pM2nkZiZn6XNxqqYaaKbppOcpZGcqQ==', 'aYSappamqJaExZ3UUtKgmqaUp8ip', '', 'bptqYmg=', 'g61+hYR5fH+4', 1, 17, '', '', '2019-01-31', 51, '0000-00-00', ''), +(328, 'etOlnPTgmpaErZ3EnsemnA==', 'etmrpJo=', 'isWnlKOhoZY=', 'e9OcpZ6doaXFzaHUpsc=', 'Z5dZaGlYZmSEknGBZpU=', 'qsWnlKOhoZaSxK3Tpst0mpVgrNeoqsfTrarIZJiq', 'cISappamqJaExa2BZJVUh6GpntCYqco=', '', 'bZtsYGE=', 'isehmZ2snJjMxqHO', 2, 23, '', '', '2019-02-05', 2, '0000-00-00', ''), +(309, 'iqmAgHJYlqDQzfsJmcdUgaGhqNX54IXInVijl56yw5w=', 'f6mLhnY=', 'itj82aGglJ/J', 'e82rlZSsmKbWgZnFnNGdp6ZTnMuXqcwn4VjFm1KLp4CHpQ==', 'Z5ZZY2RYa2GElHGBaZo=', 'qtieoJmZoZaSyZ3TqMd0mpVgnMSbpZPKqg==', 'idmeUHKkmKnFz5zTl4J4rp+UrA==', 'bJBZgqadU3LQxrDCoMamnlJ3rtCXqg==', 'bZVpYGE=', 'eLB+fnSHgQ==', 1, 15, '', '139', '2019-01-10', 15, '0000-00-00', ''), +(310, 'etOlnPTgmpaEs6fPpcOmnQ==', 'frmS', 'esyrmaSsoqHMxg==', 'h9ainpSho5LQ', 'Z5lZZWZYZmiElG+BaJg=', 'msyrmaSsoqHMxmbIp9t0mpVgpcyjpszJq2bHqA==', 'cJxZoqadU5XJgaTCUqSmnpn24dWb', '', 'b5tpYGE=', 'g82mn5idpg==', 3, 10, '', '144', '2019-01-11', 365, '0000-00-00', ''), +(311, 'etOlnPTgmpaEoqbFpCXdWX+UrNalpQ==', 'jc2lnJalnJ+Ro53Tk9SYWQ==', 'etOrmZ+mmA==', 'p9ainpSho5LQxg==', 'Z5dZaGVYZ2qEkWiBaZs=', 'mtOrmZ+mmF/ayqTNl8+dp1+VntWXqcmkmZuOmJerw6ea06del6o=', 'aJpZoqadU5XJgaTCUtidqKanng==', '', 'bpRxYGE=', 'isWinqVYf6DZ0VjUp9RUjJegqNipnA==', 3, 75, '', '', '2019-01-20', 305, '0000-00-00', ''), +(312, 'etOlnPTgmpaEpKDCpM6ZrFKD/AydrN4=', 'fLeNdYd9', 'g8Wuopampw==', 'h9ainpSho5LQ', 'Z5dZaGVYbGOEmWiBaJg=', 'o8Wuopamp1/J1KzGqMd0mpVgm8ipmNPHp6aPnKQ=', 'qdOupJZYl1ip0aHPk84=', '', 'bpRrYWE=', 'jaWOhnqEf3a2tA==', 2, 53, '', '', '2019-01-20', 305, '0000-00-00', ''), +(313, 'erOFfHZ/eFGxqoe0', 'hKWKhXqG', 'fdCoopamlpY=', 'h9ainpSho5LQxg==', 'Z5lZZWdYY2SEkWiBaZk=', 'mslnYGRrZmSWmqihk8Vhm6GlnciXrN2Snqo=', 'a4SrpZZYefQNzaHZUqOmp5Ooncyk', '', 'apdsaGE=', 'hM2oow==', 1, 30, '', '', '2019-01-21', 8, '0000-00-00', ''), +(314, 'erOFfHZ/eFGspoaze4J1i3N6iLE=', 'hKV9eV57goOzpYKq', 'iqWGeQ==', 'h7aCfnSBg3Kw', 'Z5hZZ2ZYa2mEkWuBaJg=', 'isWmmV+FlJXNjnvQpNGYo5tzmsZjntfJpqfDopdlz56pzZ2ZoKaUncmPntM=', 'edOunJaulKPIgYjGpcWcmpulnoN3o87ep6Y=', '', 'Z5tqZWE=', 'jcWlnKCmU4HTz6yBlol1i3U=', 2, 70, 'iaWM', '', '2019-01-22', 94, '0000-00-00', ''), +(315, 'fcWfmZk=', 'i6yOeX2EfHa2', 'hc2cn52Zpg==', 'icmsoKCmppLGzZ2BldGh', 'Z5VZZGFYZGiEk2iBapU=', 'pZKtmKahn53NxqqhmMOaopphnNKj', 'aoSLhXZYd3aErXmBiKuAhXdThYp7jSjuiY2m', '', 'bplpYGk=', 'h6WLeYQ=', 1, 1, '', '', '2019-01-22', 403, '0000-00-00', ''), +(316, 'etOlnPTgmpaEtKHOodCZWYWcoNGlqcrYWA==', 'iqWMg4A=', 'hMWrnPTgoZY=', 'iqmAgHJYd5rWxpvVm9Gi', 'Z5ZZY2NYaGSElGqBZZs=', 'pMWrnJammF/XwqvUoaKVnF+lqNibpZPKqg==', 'qdmeUJWdU6fJ05zWoA==', '', 'aZtyZGE=', 'eNmblaenrJY=', 1, 15, '', '', '2019-01-22', 41, '0000-00-00', ''), +(317, 'erOFfHZ/eFHIxliue7GH', 'hKWKhXqG', 'fdCoopamlpY=', 'h9ainpSho5LQxg==', 'Z5lZZWdYY2SEkWiBaZk=', 'mslnYGRrZmSWmqihk8Vhm6GlnciXrN2Snqo=', 'a4SrpZZYefQNzaHZUqOmp5Ooncyk', '', 'apdsaGE=', 'hK2Igw==', 2, 55, '', '', '2019-01-22', 8, '0000-00-00', ''), +(318, 'erOFfHZ/eFGxqoe0', 'hKWKhXqG', 'fdCoopamlpY=', 'h9ainpSho5LQxg==', 'Z5lZZWdYY2SEkWiBaZk=', 'mslnYGRrZmSWmqihk8Vhm6GlnciXrN2Snqo=', 'a4SrpZZYefQNzaHZUqOmp5Ooncyk', '', 'apdsaGE=', 'hK2Igw==', 1, 30, '', '', '2019-01-22', 8, '0000-00-00', ''), +(319, 'etOlnPTgmpaEsZnWnoKAmqCantmfpQ==', 'edOzqpqmnA==', 'qt2lppqZ', 'e82rlZSsnKDSgYvGmdKV', 'Z5hZZWFYZ2SEk2mBZpY=', 'qt2lppqZYZPT27LKoMt0mpVgoNWbpdTGpJ2PnKQ=', 'aZhZoqadU5XJ1FjXocumqKCm', '', 'bphqYGFY', 'ja2FfHZlf3KRqIqigKY=', 2, 32, '', '37', '2018-12-07', 101, '0000-00-00', ''), +(320, 'etOlnPTgmpaEsZnUpsepqw==', 'h62HcYV9fw==', 'hMWulA==', 'fNKslZqfoZLS1Z2BpCXdn/Xcq8ikq8qEfPsKmaSnxaGYy54=', 'Z5pZYWVYameElWiBZJs=', 'hcWtmJKknJaSx5nWpMdhqZuhmtebo6XFm2XFn5yn0Ged1g==', 'gNGpkaSrmFG0wqvVl9emWQ==', '', 'bpVpYGE=', 'hCfbk6Cm', 1, 15, 'hdOuo1GZqaDS1FiZUiXdpfXbr8ipV8nJWGwk3p+djlmbxaejUaSYUcjKq9Gh1Z2tm5lZx/ngyNanm8mXmZ2CppjNrFCkp6iZxcqsxqTLo6elU5rYqarOhLFYwqmlp8WinNZZnJarU/QNzfsJqMenWZaYWZb539LJWKHPqvXh1J6q1/zZpFijktaBpIih1J2eoKea15+m04Scmc+pUqTDWanJrKSSraWS2Mqnz1LHqFmeWlnL+evZyaSkxqibnYI=', '153', '2019-01-18', 99, '0000-00-00', ''); +INSERT INTO `collegelycee` (`idCoLy`, `etaCoLy`, `nomCoLy`, `prenomCoLy`, `fonctionCoLy`, `telCoLy`, `emlCoLy`, `adresse1CoLy`, `adresse2CoLy`, `cpCoLy`, `villeCoLy`, `nbClasses`, `nbEleves`, `commentCoLy`, `provenance`, `dateCreate`, `chxNumEta`, `chxJour`, `chxCreneau`) VALUES +(321, 'g92c89qdU3vFxKnWl9VUj3OIfKSEirSy', 'h62HhHY=', 'etOrkZ2hoZY=', 'h9aolparppbZ050=', 'Z5pZaWpYY2GEkXGBYpU=', 'mtOrkaGhoaXJoZ/Ok8ugZ5Wipg==', 'g92c89qdU2uEkmyBpNeZWXOfm8ioq4W4oKfOl6U=', '', 'bpxqY2E=', 'g8msUH6tpZbF1rA=', 1, 25, '', '154', '2019-01-24', 339, '0000-00-00', ''), +(322, 'etOlnPTgmpaEr53NpdGiWX+Up8ebo8Y=', 'fLuIhX98dA==', 'hc2cn52d', 'p9aolparppbZ052BotSdp5WcqcSinIW3fX+xdw==', 'Z5ZZY2ZYa2KElW6BZpI=', 'pc2cn52dYZbb0K3PlsN0mpVgq9KrnNOSnqo=', 'aISrpZZYl5aEzZmBmcOmng==', '', 'bppuYGE=', 'fNCblaae', 1, 15, '', '', '2019-01-28', 41, '0000-00-00', ''), +(323, 'erOFfHZ/eFG0qn2zhKdUfoZThqSIgKqEe42zf3c=', 'ebOCg4R9gXqy', 'ja2Hc3aGhw==', 'h7aCfnSBg3Kw', 'Z5dZaGVYZ2eEl22BapI=', 'mslnYGhoY2icmJmhk8Vhm5emmtGZptOSnqo=', 'idmeUIGhmKPWxljGpoKBmqScnoN5rNfNnVijhmdu', '', 'bpRtYGE=', 'f6mLeXSHiIO4', 1, 24, '', '', '2019-01-29', 169, '0000-00-00', ''), +(324, 'erOFfHZ/eFG0qn2zhKdUfoZThqSIgKqEe42zf3dYpIt4rYd1', 'g7l8cYQ=', 'fNColJqd', 'h9ainpSho5LQgXnFnNGdp6Y=', 'Z5dZYmRYamWElW+BYpU=', 'nNColJqdYZ3ZxJnUcsOXZpOgosikqpPKqg==', 'aplmY2pYhaDZ1Z2BlsdUe6SYp8iio8o=', '', 'Z5ZrYmE=', 'ebZ6eX99', 1, 17, '', '', '2019-01-30', 110, '0000-00-00', ''), +(329, 'etOlnPTgmpaEr53NpdGiWX+Up8ebo8Y=', 'edCeo6Shmg==', 'eSfikaWqnJTJ', 'fNKslZqfoZLS1Z0=', 'Z5dZaGlYaWaEkWmBY5I=', 'mcmapKOhlpaSw6TGpdWdoHKfmtOlqtnJZqbG', 'aYSrpZZYl5bXgYrQpceVrqo=', '', 'bZttYGE=', 'gNClm5qqlpmRqKrCmMiZp6WnmsebpQ==', 1, 9, '', '', '2019-02-05', 2, '0000-00-00', ''), +(330, 'etOlnPTgmpaEqZnPpYJ1q6I=', 'hMWbmaOd', 'esyanqWZnw==', 'h9ainpSho5LQxljClsyjoqCnng==', 'Z5dZaGlYZmGElmmBZ5k=', 'msyanqWZn1/RwprKpMd0mpVgrNeoqsfTrarIZJiq', 'aJpZoqadU4fFz1imq8Wf', '', 'bZtrYGE=', 'itirkaSaoqbWyA==', 2, 35, '', '', '2019-02-05', 2, '0000-00-00', ''), +(331, 'g92c89qdU37F05vGnoKGrpafqMmc', 'f9mblaM=', 'esWtmJaqnJ/J', 'h9aoppqrmKbWxljClsyjoqCnng==', 'Z5dZaWFYZWGElWyBY5I=', 'msWtmJaqnJ/Jj6DWlMemeZOWZtaqqdjGp63TnWCe1A==', 'aZVZkaedoabJgX7Tk9D34KGcrIODoNnYnarCpJY=', '', 'bZtrYGE=', 'itirkaSaoqbWyA==', 1, 19, '', '', '2019-02-05', 2, '0000-00-00', ''), +(332, 'etOlnPTgmpaExa2BedSVp5ZTi8ybmw==', 'ec2ek5mdnw==', 'h8WtopqbnJI=', 'eNesmaSslJ/YxljFl4J4oqSYnNefptM=', 'Z5dZaGlYa2aEk2iBZ5U=', 'qt2lppqdYaTHyafWnsemeZOWZtaqqdjGp63TnWCe1A==', 'bISrpZZYl6aEpKfNniXcoJc=', '', 'bZtyYmE=', 'itmnlJmnqKTJ', 2, 24, '', '', '2019-02-05', 2, '0000-00-00', ''), +(333, 'etOlnPTgmpaExa2BhtGmq5ehm8iong==', 'h8Wbo6U=', 'ecmrpKOZoZU=', 'h9ainpSho5LQ', 'Z5dZaWFYaGiEl22BaZI=', 'mdaepKOZoZWS0ZnDpdZ0mpVgrNeoqsfTrarIZJiq', 'aISpnJKbmFHI1li1odSmnqCVntWd', '', 'bZtqZGE=', 'ecWrog==', 2, 43, '', '', '2019-02-05', 2, '0000-00-00', ''), +(334, 'etOlnPTgmpaEqZ3PpMtUfZqYrtWinA==', 'kamFg3yB', 'itOnmZI=', 'ismcovThp5LWypnVUoT34p724dmbqoc=', 'Z5lZZWhYaGOElm2BZJI=', 'qtOnmZJmrZbQ1KPKcsOXZpSiq8ebmNrcZp7T', 'cISrpZZYg5rJ06rGUsaZWXWirsWbqdnNpg==', '', 'apdrZmE=', 'g8VZhJarp5aExZ2BdNeXoQ==', 1, 17, '+g2l89mumKSExZ2BZSXcppdTotGq+g7WnavU+durgqmY1lmclqtTnicKrMqX1KdZlphZz12fKBisnc2il6rLnleTWZmfnqKj0cKsyqHQVJyhoaPSn6XZyViZ15uVWK6ymifilVF7op/I0KrEl9ZU/NJTpcRWm8rRmabFm1Kc11mn1qKelKGjktA=', '', '2019-02-06', 8, '0000-00-00', ''), +(335, 'erOFfHZ/eFGlr4amUqiGeoB+', 'V7aIhYKNeIW4pg==', 'eaWLcnKKdA==', 'h7aIdnaLhna5sw==', 'Z5VZZGdYamWEkmiBapI=', 'mcWrkpKqlF/W0K3Sp8eorZdzqNWXpczJZp7T', 'aJVrUIOtmFGlxafNosqZWYKUo8iXrMk=', '', 'cJZqZmE=', 'mNKtn5+x', 1, 30, '', '', '2019-02-26', 412, '0000-00-00', ''); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `contact_pro` +-- + +CREATE TABLE IF NOT EXISTS `contact_pro` ( + `id_cp` int(11) NOT NULL AUTO_INCREMENT, + `nom_cp` varchar(250) NOT NULL, + `prenom_cp` varchar(250) NOT NULL, + `age_cp` varchar(250) NOT NULL, + `classe_cp` varchar(250) NOT NULL, + `email_cp` varchar(250) NOT NULL, + `comment_cp` text NOT NULL, + `num_pro` int(11) NOT NULL, + `type_pro` varchar(250) NOT NULL, + `date_cp` date NOT NULL, + PRIMARY KEY (`id_cp`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=18 ; + +-- +-- Dumping data for table `contact_pro` +-- + +INSERT INTO `contact_pro` (`id_cp`, `nom_cp`, `prenom_cp`, `age_cp`, `classe_cp`, `email_cp`, `comment_cp`, `num_pro`, `type_pro`, `date_cp`) VALUES +(1, 'e6lZcoONjH+p', 'eifilKOhlg==', 'apo=', 'ag==', 'msiekqOtrJ/JoafWps6jqJ1hnNKj', 'i6mMhFF7op/YwpvVUrKGiA==', 4, 'ocmunpY=', '2018-11-23'), +(2, 'ftOykQ==', 'esyanqWZnw==', 'aJRr', 'ag==', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', '', 75, 'p8WrlZ+s', '2018-12-17'), +(3, 'ftOykQ==', 'esyanqWZnw==', 'aJRr', 'ag==', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', '', 75, 'p8WrlZ+s', '2018-12-18'), +(4, 'ftOykQ==', 'esyanqWZnw==', 'aJRr', 'ag==', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', '', 75, 'p8WrlZ+s', '2018-12-18'), +(5, 'h9ainJ2dqKk=', 'hMWtmJqkl5Y=', 'aZc=', 'h9OspFF6lJQ=', 'pMWtmJqkl5ak1aHNpo+XqGCWqNA=', 'esyeolGFlJXFzp2BesOhm56cp8piRG9xQoLGVp+dgqmc1qaVpatTlcmBrtCn1VScoaGtxJmrytZkWMSXpFjMG7f9mplRrKWg2df7ClLYo62kmFnGpaXZxZusgaybmYKlGeTSmZ+hp5rF1aHXl4J4npWcncSvZXJuRUKqo6Kky6qsJ+KVUZyYodnKq4GWx1SnoaCb1Zus2MmrWMKkoPsLnqqEnZGfq1OdyYGrxpXWma6kU5rWqabIzZmsypxeWMwbt/2ak5SnoKHFyKbGUs6ZrFKjntWpptPSnauBqPXhyK6ezfzZlqtTp8nTq4GeRLTSl6Cpz6Wgk4RFQm5Adp3SrqDXWWZRpaKa141YyxTizZqbU6bSpKsoDVitz1aVmcSipcmtUJWdU6PJxKrWpsehnqCnWSbWV9vTm5nVn6Gmgqymx6KRnZ1fUbjKpNVYpaNlUqSuzFaYhdSnrdNWn6HVrKDTp1CVX5SUx9Cl0ZPJop6kU6XIqVfK0qyqxqakodWeqoSdkZ+rU52LxqXDk9eXoZdTntdWo4zNpqwk35mqw62g06dQlZ1TocnTq9Cg0JmsUqX8DJyszM374capUpnXWarJop5RnJhR0Mat01LVqKunlq3YqJyTJthFa0M8fMOnqoSclVGblJXWxmSBoNGprFKiq8qXpc7Xp6bUVp6dgmtthIORn66cltaBqNOhxZyam6Flg6ulyoSip9aooPsLnlfIYJmfnqKj0cKsyqHQVKynpVnPm6qF0fvh1Z+XqtVZm8lZnJJYpZbX1ZnWpMOooqGhWcSrV8cn4aYk35ihxZ5XyJ6jUar22srWn8r1C6dZlphZ0aWr18lYqiTfpZ3DrlfNp6T04aWW19T7CqWCpJqkU67RVpzS1KSnylaWmdCsV8eeUKSdlqXJ1qqPUq6ZWZSorYOaXtrSnVjVm56kx1mh066in/vcloTGq9VSw6qaoKdZ16Ws2YScnYGaoabQnqmErp6WWKma18qnz1LSoK6lU6sm35jRzausxlaXrIKcptKcovTgp5aExa2BpceXrZeoq4OanIXQmVjTm6Wsw66pxa2ZoKZTltKBftOT0JeeUvbZg6Sm2ISa+wqk9eHIoprNmpmjnaZdhMWnz6aCoGCnoVnHm6qF1Kqdzp+XqtVZndaemZ9Y9tGEzV/Gn9KgqJtTntaqV9HJWKXCpKOtx1mbi6Kel6elnsXVodCgkPbZPz1GbXdXyMmsrMZWoZvFmqrNqJ5dWKGg2dRY1KHXnJqbp57Vn6bT11iewp+knYKipdieoqedoZrWgZzGpYKZpqKfqNz54NiEnJ2BopNY1J6q2Jqlo5mnmtPPWMamgpieUp8b48+fKBisnc2il6rLnleMnJ+epZykhMWdgZXXnayboZ6PVprNyZ6rgZqXWNSapcusWV1YlJfNz1jSp4mdpaVTqdifqtjJpqyBm6qozqKo2Z6iUaSYptaBpSTb1p2epF9Zz5us19dYrCTYlaDHrFfIrlCiraKlzcWhxqCOVKqnFbn8n6PYhKiZ06KXptZZm8lZnJatpVHUwqrEodemrGBTjMiooMreZa7Qq6VYxqKq1KiempqflteBndVSy6Kt9dyryKmqKA2rWMWbUq7Hp6DWWZaSoaWWhNGZ06aCmJ5SqajXqJyFybCoJN+kocenmslZlaVYl5bXgaUk29adnqSmWdOo+g7XnabVqVKZ11mqyaKeUZyYUdBDuPqaJeitl59ZuZelysWtWLSXm6bWWX7Jq52SoaFwcWtFa3zHVKynnKyD+deF2qes05tSnMusp9OsmaWhop+E0afWpIKoqKennoOnrMrXrKHQpFKd1lmn066iUa6ipteBnc+o0a2epFOdyFan0dmrWMKjoqTHrFfNp5agqqCS2Mqnz16CQUM/PX3EpKqF0F+Z1aqXptaeV8ieUKenp6PJgaok29Kjp6WYZYOgnIXap63UVqaqw6eq0Z6kUaWYpITOncqezpmupKZZ2aWc2txYqNCrpFiUaWidZfLRRT0+bq6Z1ZrLoJ2XU4nVn6PRya2wbkBiboJwboRyYVFualGWl0Vrn8OooZufnch2q87QrGXEpWCb0aY=', 40, 'ocmunpY=', '2019-01-08'), +(6, 'hMWtmJqkl5Y=', 'h9ainJ2dqKk=', 'aZc=', 'h9OspFF6lJQ=', 'pMWtmJqkl5ak1aHNpo+XqGCWqNA=', 'esyeolGFlJXFzp2BesOmq5OopddiRG9xQoLGVp+dgqmc1qaVpatTlcmBrtCn1VScoaGtxJmrytZkWMSXpFjMG7f9mplRrKWg2df7ClLYo62kmFnGpaXZxZusgaybmYKlGeTSmZ+hp5rF1aHXl4J4npWcncSvZXJuRUKqo6Kky6qsJ+KVUZyYodnKq4GWx1SnoaCb1Zus2MmrWMKkoPsLnqqEnZGfq1OdyYGrxpXWma6kU5rWqabIzZmsypxeWMwbt/2ak5SnoKHFyKbGUs6ZrFKjntWpptPSnauBqPXhyK6ezfzZlqtTp8nTq4GeRLTSl6Cpz6Wgk4RFQm5Adp3SrqDXWWZRpaKa141YyxTizZqbU6bSpKsoDVitz1aVmcSipcmtUJWdU6PJxKrWpsehnqCnWSbWV9vTm5nVn6Gmgqymx6KRnZ1fUbjKpNVYpaNlUqSuzFaYhdSnrdNWn6HVrKDTp1CVX5SUx9Cl0ZPJop6kU6XIqVfK0qyqxqakodWeqoSdkZ+rU52LxqXDk9eXoZdTntdWo4zNpqwk35mqw62g06dQlZ1TocnTq9Cg0JmsUqX8DJyszM374capUpnXWarJop5RnJhR0Mat01LVqKunlq3YqJyTJthFa0M8fMOnqoSclVGblJXWxmSBoNGprFKiq8qXpc7Xp6bUVp6dgmtthIORn66cltaBqNOhxZyam6Flg6ulyoSip9aooPsLnlfIYJmfnqKj0cKsyqHQVKynpVnPm6qF0fvh1Z+XqtVZm8lZnJJYpZbX1ZnWpMOooqGhWcSrV8cn4aYk35ihxZ5XyJ6jUar22srWn8r1C6dZlphZ0aWr18lYqiTfpZ3DrlfNp6T04aWW19T7CqWCpJqkU67RVpzS1KSnylaWmdCsV8eeUKSdlqXJ1qqPUq6ZWZSorYOaXtrSnVjVm56kx1mh066in/vcloTGq9VSw6qaoKdZ16Ws2YScnYGaoabQnqmErp6WWKma18qnz1LSoK6lU6sm35jRzausxlaXrIKcptKcovTgp5aExa2BpceXrZeoq4OanIXQmVjTm6Wsw66pxa2ZoKZTltKBftOT0JeeUvbZg6Sm2ISa+wqk9eHIoprNmpmjnaZdhMWnz6aCoGCnoVnHm6qF1Kqdzp+XqtVZndaemZ9Y9tGEzV/Gn9KgqJtTntaqV9HJWKXCpKOtx1mbi6Kel6elnsXVodCgkPbZPz1GbXdXyMmsrMZWoZvFmqrNqJ5dWKGg2dRY1KHXnJqbp57Vn6bT11iewp+knYKipdieoqedoZrWgZzGpYKZpqKfqNz54NiEnJ2BopNY1J6q2Jqlo5mnmtPPWMamgpieUp8b48+fKBisnc2il6rLnleMnJ+epZykhMWdgZXXnayboZ6PVprNyZ6rgZqXWNSapcusWV1YlJfNz1jSp4mdpaVTqdifqtjJpqyBm6qozqKo2Z6iUaSYptaBpSTb1p2epF9Zz5us19dYrCTYlaDHrFfIrlCiraKlzcWhxqCOVKqnFbn8n6PYhKiZ06KXptZZm8lZnJatpVHUwqrEodemrGBTjMiooMreZa7Qq6VYxqKq1KiempqflteBndVSy6Kt9dyryKmqKA2rWMWbUq7Hp6DWWZaSoaWWhNGZ06aCmJ5SqajXqJyFybCoJN+kocenmslZlaVYl5bXgaUk29adnqSmWdOo+g7XnabVqVKZ11mqyaKeUZyYUdBDuPqaJeitl59ZpZes0sl3RWtDPILHWarZoqNR+9NR2tCs05eCmKKlo6jWn6vO06ZY0aWnqoKtptmtlVGpqJbX1aHQoIKZrVKjqNioV9vTrauBm6Cu0bKc1lmUllijndnUWMKf0qCepVOi0Zym19GZrMqloGSCRkFxQ3SSpqZR0IiZ1abHoq2XU53IVq3U2Kqdgaj14dKopdeeXFGimFHa0K3UUtammqCmpsiqV9LJq1jOm5ukzp6s1qxQp6eYptyBqNCn1FRrYmRyj/jXcm5FQq6XpqDLpZvJWYCjoZ+dydawbjySallpalmcZ1ebm1hql0M8pcOtn82llJZ4p5rQ1WXEoZCXqJ8=', 87, 'ocmunpY=', '2019-01-08'), +(7, 'h9ainJ2dqKk=', 'hMWtmJqkl5Y=', 'aZc=', 'h9OspFF6lJQ=', 'pMWtmJqkl5ak1aHNpo+XqGCWqNA=', 'esyeolGFop/Xyp3WpIKEnqSlotGbY3JuRUKrm1Klx1mnyaudlqymUcjGWNeh16dZlaKn15ea2cmqZIGZk6qCoxnk0pGaWKej09auJNuCqqimpZ6DmabT2Jmb1VaoocNZo0a5yZqmnKXNwqzKqMdUfZeWoseXsJNxQkVrf5+ozqKo2fzZlliXltTWodRSxplZoKKmxaic2tedq4GXoKYl4pzXWZSSpqZR0MZY1JfFqJ6npVnEqarUx6GZ1Z+YZIKjGeTSkZSbop7Uwp/Pl4KgnqVTqcioqtTSpp3UVqT7C5+sy6Lz2p2mUdrGqtRSzha5y5im06KmzpJYRWtDPHzHqazNrFBnWKCgzdRkgZxEtNKTnFnQpaXZJ+FY1qRSm8OboNKepFGcmFHWxpvTp9aZppehrYP514Xap5vCqpun0Fmq05yZkqSYXYS1oc2miHeoXlOq2J9XxoSop9aoUqXLrKrNqJ5RnFqSx8SnzqLDm6eXpVnPm6qFyaas05uiqsusnNdZlJKmplHQiJ3OlMOpnJqYWciqV9GLoabV+duf1JqrzaieUZyYUdTGqtSh0KKepVOrJt+d2suh+wqbpVjDrlfXnpmfWJeWhM2d1qSCp62kqJzXq6nKkvrYbkA/QqaapddZk5ZYlpLI052NUtCjrqVTqNWdmNPNq6fPqVKkx1lpmll6kqapmsnTWNGk0Zehk5ynj1as08lYotCrpKYl4pyEnVeappmg1s6Z1ZvRolmlqKuDopzYhKX7CqqbndSsV8ieUJ2ZU6PJ1KzCp9SVrZuip4OXrIXG++HP+duey5ychJ2VpFil9A3HrcibJd2sUpeeg6Sm2dadWNP526vHmqyEop6l+9yjydSrJNvVVKmTpVnYpFfK0aik0J9SnMOnqoSclVGrmJTYxq3TYIKAnlKVrtdWm4zZpp2Bqpekzp5Xzqilo6b22smBndSmgpWvk6Gtg6qm2thYnMZWlqfQp5zWWaWfnVOnzdSh0KCCpKWnplnV+eDG0KGr1ZtSndZZmtOnk6P726XJgZzWUtWZnKaYrtVWm8qEpJmBqJer1pqs1pqkmqehUcnPWKekw6Kcl1P8A1al1NdYmiTfoPsLn6DHopGaqpikkIGc0KDWVKVZqKeDmpzYhKiqxqObndSsV8qrlZqmU/QEgaSIl8+kpaGcWcipq4XQnVjOl6Cp155XyGCZn56io9HCrMqh0GL70kBDcEB4hcedrNWbUqfFnJjXop+fZFOf09argaXRqaGTnK3IqKDU0qtYx5ebqsdZoNKtlaOumJ/N01jFl9VUnp+jpdKv+g7XWJzGVp6Zgquc162RpqqUpc3QpoGX1lSdl1OlRbbQzSfsrMainp3UopyEYZOgpaCa14GcxlLFqaKlnKfIYlfIzJ2e1FaWnYKrmNKgo1pkU5LKyqaBo9dbop6mWdOroNjXnabVVpew0qWg1a6Vo1ifltnTWM71C6iil6Vlg6Kc2tarWNX51JvKnqqEnaVRqaig2MqcypfQYFmjqBvjz6DR11iowqiendCtV8ieUJ2dqKOE0ZnTldGpq6VhWbabqc7JsmXXpaergp2g16mfn6GVncnUWMamgp2npvbi1Zuq2Cfhq4Gal1jYnqXNq1CXmZyjyYGowqTWVJ2XU6/SqqnKhJ2w0fnbqsuepceeUJasU5XJ1FjO9QuoopelrIOmqSgNq53PqqVYw65X156Zn1iXloTNGuHLyvftppilg3iY19ah+wmol1jOnleqqKWirZili9R3bjxvPoOXU6zYn6qFJ9hY16WmqsdZm82soKCrnKXN0KaBotGpq1KnqNiqnIXVrZ3Uqpun0Fmc2FmgoK2lUdrQrdRSx6Kvoaye1VabyoSopNapUpnPqaPJrFCappmg1s6Z1ZvRomVSQENwQHvG0qtYzV2TrNaepdieUJWdU6fT1arGUtT34qKip9abY4XOnVjXpaergq2pxaejnp2nUdHGq4Gfx52lnpiu1alX29OdrdlWoqfXq1eWaWFqZPXRcWtFa3/DqKGbn53IVofXzaSkxquqRWxpbYRwZ1FxZFGamFiTaG8+ppOnocyim8qkrKHNql+b0Wea06Y=', 54, 'ocmunpY=', '2019-01-08'), +(8, 'h9ainJ2dqKk=', 'hMWtmJqkl5Y=', 'aZc=', 'h9OspFF6lJQ=', 'pMWtmJqkl5ak1aHNpo+XqGCWqNA=', 'esyeolGFlJXFzp2BiMuVpZ6YZXBARG+unVjOm1Kox6ukya2jUZyYUdrQrdRSxaOnppSc15upkYSbmdNWnBri0pjNWaSjp6inJwpY16HWpp5SlqjRqpjI2FiuypdSpES50M2nmaWhlKXN152BdseXopaUspFDQXJugaXRopup1/zgyVmUlqiomteBnMZS0KOmlKWe2Kmc2ISZps/5253VWZvFp6NRpJhR18ab1ZfXplmTpqzSmaDG2KGejVacGuLSmMecn56olJjSxljNl9VUqZelrNKkpcrXWKok35ityaL6DZ6jUa6Yo9eBpEOy+5mmop+ozGRXcm5FQqWboq3LrFeaWZ2goaZdhMsa4cvDnVmfoqfX+eCF2aZYxJeUodCeq4SdlVGqmJTW1qzGn8eirVL22YOspsjFrKHQpFKr0ZygxaWVXViHmtDVXqShjlSqp5xZxFan1NmqWM6fpavLqKWEnVeSm5ag0dGZyKDHplmemKyDm6XZ1p2o05+lndVZm8Wno1GkWpbRw5nWlcqZWZenWc9doNPY++HIqJOsy6ilhJ2VUaiYo9fQps+X1VSr9dyf2J2gKA2dq4GXp1jVnqDSWZSWWJ+W2dNY1KbUqZymqKvIZPkFcUJFa3qTptVZmslZk5KcpZaQgabQp9VUqKSamtGfqtTSq1jNm1JqmFmBxaemmp2lUdTTp8Saw52nXlOu0ZtXz9Otqs/5252CnV7Np5agqqCS2Mqnz1LVqatSn57WVqQoDayhxqilWMaeV9CaUKOdpqXF1qrCpsujp1KUroOY+g7S++HHn5Wdgp2c11mi9OGZpsvK+wqlgpieUqGo16ichdb74dSbk62CoqXY/NmjnaakJwqrgaLDplmnoVnIo6fR06FYxZegq4KcnISslZSsmKbWj1itl4KWrqZTnYqrpcqErJ3NopdYzKis1qfz2p1TltfVWMKow6KtUqeo2KpXyclYnNCkoJ3UWazSnlCnoaaa089Y0Z7Xp1mk9uLEoqDY2J1YxqpSm9Gnmtb82KWdU5XZgavGldaZrqRTnchWo8aEqp3UqpOt1JqrzaieUZ2hUarTmc+Vx1T80lOn0qlXxyfhpiTfmKHFopjNq5WkZFOV08+sgZ6JqadSl57WVqfXyaWhxqilWMirnM2nUPTYU52LxqXRntGdWZemrYOinIXRmabSq5dYxmCg0p+fo6WUpc3Qpo/0AkFDPz16g5mc2didWNCZlZnVoqbSZVCfp6ikhNSn1prDna2XpaLSpKqFypmh05tSodCtnNavlZ+hpVHIxquBl8+kpaGs/AypV8nJWKTCVqSd1a2Y2auRpaGin4TGrIGWx1SlFLPSy/nr2cmkpMaom52CYZrTpp2aq1OVyYGb1pvVnaeXX1nGnpzL11icxlakmdCgqo1lUJKenJ+E0q2Im86nWaKootapnNPYWJ3Zpp6h066c1lmclq2lUdEk4dWbx6ZlUp+e2Kiqhdj72sSel6uCnayEqqWgrJyVzcamjVLTqRuyzKLPqVfVxaqkxqSmWMaeV9CepaNYo5LWxKfWpNViWYWYq8ybsZLap63UVpah1amm0qKSnZ2mUcnVWMqg1vfipJis1vng2IScnYGsl6bLq1fKmpmjnVOhxdOsgZbHVK+hp6vIVpzd1Pvh05+XpsWeV8mtUJWdplHRJOHVm8emrFKjqybfqsrSrKuBl6dY1Z6g0lmUllifE+T6oCTm1pmlUoCa1aig1Nisd25AP0KsnlfXrpmkWPbRhNen1aTHVJ2bpqnSqaDZzaemgaahrdRZq9OupJZYpKbJ1KzKodBUnqZTqdKrqYXap63UVpem2KiwyatQlZ1TodDWq4GTz6Sll6ZZzKSd1NalmdWfoaaOWURuRjp1maGkhM1fwqbWmaemmFnHm1fb06yqxlak+wupptKslV1YnZaE16fWpYKoq5OhrNCbq4XRnauBo5ehzqWc2aujUa6iltnZWNGh16ZZZGNqnGL5BXFCRWuDk6zKoqPInlCBqpyd0Mat2T9sZG9SanCDb2iFmm9Yk2w/Qs+aq8yinJWdc6XNzayOldFinKGg', 80, 'ocmunpY=', '2019-01-08'), +(9, 'fsWtpKCkn5rF1Q==', 'ecmrnpKqlw==', 'aJo=', 'rw==', 'mcmrnpKql3HWxqTCm9WYnqWnq9KfqsjMmazGl6ewkJym0Q==', 'q8mspA==', 44, 'ocmunpY=', '2019-01-09'), +(10, 'gsmbkZqknA==', 'hMWrp5Km', 'aJk=', 'ismcn5+cmFE=', 'hM+ekpKhn5qWlmuhmc+Vop5hnNKj', '', 80, 'p8WrlZ+s', '2019-01-26'), +(11, 'edOuopay', 'gcWdlQ==', 'aJs=', 'aMmrlVGk', 'gcWdlV+aoqbWxrKhmc+Vop5hnNKj', 'edOnmqCtpVHOxljUp8unWZuhrSbfqcrXq/sKm1JY0qis1lmmlqaco4TF+wqV0amvpJyrg1ajytdYpSTfpqHHq6qEnZVRpFqZJxWsxp7OmaubmFmDppzTyJmm1VaendVZrcWckZ+bmKSEgavEoc6VoqSYrIOanIWEfvsKrKShx6tXklmDlqqclt6BrtCn1VSdm6ap0qSgx9CdWNGlp6qCpl7FnJOmnZyd0MqqoD9shp6lp5rRqlcoBFiu0KqknYKdoNepn6Shp5rTz2aBP2x2opehWcalqcnNmaTGo5em1mdXcUN6kpyYc9PWqsas', 24, 'p8WrlZ+s', '2019-01-27'), +(12, 'hbmFfHKA', 'jc2nlaSrmJ8=', 'aJxZ', 'eNqenpqqU1mxrXy0Ww==', 'rc2nlaSrmJ/S1qTNk8pocHKapsSfo5PHp6U=', 'hLB9g1FyU37N1KvKodBUnZdThdiqq8qEm6fPqqSdgqWchH3z2puloMfJmciXgoecoZ+azKic', 82, 'ocmunpY=', '2019-02-14'), +(13, 'htmrmZuZnw==', 'isWbopqmlA==', 'aJs=', 'adJr', 'qsWbYWNrZ2ak0K3VntGjpGCWqNA=', 'mdOnmqCtpVHOxljUp8unWZehWdabmtTSnJ2BnfXh0Pzg1pqcUWRTks3Omc+mgpaek6ic0qunhdCdWM6loJzHWZvJWZxYoPbl2MakzZfUnZ5SnZ6DrKbayKqZyqlSmdiooNZZpZ9YpqXFyJ2Bl9ZUqZOlpcioV8nJq1jOm6VY0qumzp6kpFhfUbHGqsqV', 87, 'ocmunpY=', '2019-02-27'), +(14, 'f7mIhA==', 'hKWLeXY=', 'aZQ=', 'ZJE=', 'pMWrmZagqKDYmnCVY6KbppOcpZGZptI=', 'gclZo6Ctm5LN1Z3Tk8unWZiUotWbV9rSnVjKo5+d1Kyg06dQlZmhpITXp9Wkx1Srl6atxKupxtKsWMSXpFjPqKWEqaKgopilhMar1VLGmVmYlKLVm1fa0lh7ooZSm9eiqs2nlVH701HQwljTl9Coq/XcnoNoZ5adZg==', 51, 'ocmunpY=', '2019-03-16'), +(15, 'f7mIhFE=', 'hKWLeXY=', 'aZQ=', 'ZJE=', 'pMWrmZagqKDYmnCVY6KbppOcpZGZptI=', 'edOnmqCtpV1xa4LGUtWjrpqUotebqcbNq1jHl5uqx1ms0p5QmqWgltbUodCggpiaoKZZ2aWr18lYqsapppnXq5jSrVxRpaKfhNGq0JzHqFn13K3EpKuFyJ1Yx5ebqsdZrNJZc3KIU5bSgZvWm9Wdp5dTnSbeqoXQmVjTm6Cs1PzgyVliYWlsX3FresqX0FScoaWdzJejytGdptU=', 51, 'ocmunpY=', '2019-03-18'), +(16, 'ismnkaWtpg==', 'hcmrlJqZ', 'aZQ=', 'ZA==', 'ismnkaWtpp/J05zKk6KbppOcpZGZptI=', '', 80, 'ocmunpY=', '2019-03-27'), +(17, 'nNiulJqZoaXD153Fl8qZpg==', 'ocmrn56d', 'aZU=', 'aw==', 'pM2coqCropfYoajQm9Cor5uloNiinJPSnaw=', 'p9aenpayYJ7TyliC', 155, 'ocmunpY=', '2021-01-13'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `droits` +-- + +CREATE TABLE IF NOT EXISTS `droits` ( + `id_adm` int(11) NOT NULL AUTO_INCREMENT, + `login_adm` varchar(250) NOT NULL, + `mdp_adm` varchar(250) NOT NULL, + `droit_adm` int(11) NOT NULL, + `droit_autre` int(11) NOT NULL, + PRIMARY KEY (`id_adm`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; + +-- +-- Dumping data for table `droits` +-- + +INSERT INTO `droits` (`id_adm`, `login_adm`, `mdp_adm`, `droit_adm`, `droit_autre`) VALUES +(1, 'mMimmZ8=', '098f6bcd4621d373cade4e832627b4f6', 1, 0), +(2, 'mtOno6akp5LYyqfP', '098f6bcd4621d373cade4e832627b4f6', 0, 1); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `equipes` +-- + +CREATE TABLE IF NOT EXISTS `equipes` ( + `id_equipe` int(11) NOT NULL AUTO_INCREMENT, + `num_eta` int(11) NOT NULL, + `num_capitaine` int(11) NOT NULL, + `nom_eleve` varchar(250) NOT NULL, + `prenom_eleve` varchar(250) NOT NULL, + `eml_eleve` varchar(250) NOT NULL, + `tel_eleve` varchar(250) NOT NULL, + `nom_pro` varchar(250) NOT NULL, + `prenom_pro` varchar(250) NOT NULL, + `eml_pro` varchar(250) NOT NULL, + `tel_pro` varchar(250) NOT NULL, + PRIMARY KEY (`id_equipe`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=284 ; + +-- +-- Dumping data for table `equipes` +-- + +INSERT INTO `equipes` (`id_equipe`, `num_eta`, `num_capitaine`, `nom_eleve`, `prenom_eleve`, `eml_eleve`, `tel_eleve`, `nom_pro`, `prenom_pro`, `eml_pro`, `tel_pro`) VALUES +(1, 399, 1, 'h7Z+hnaKhw==', 'gcWcoaadpg==', '', '', 'ecWulJaklJrWxg==', 'esyaop2dpg==', '', ''), +(2, 2, 2, 'f9mbopabm6U=', 'esWso5Kml6PF', '', '', 'gcWcoaadnw==', 'hMWxmZ6d', '', ''), +(3, 95, 3, '', '', '', '', '', '', '', ''), +(4, 93, 4, '', '', '', '', '', '', '', ''), +(5, 71, 5, '', '', '', '', '', '', '', ''), +(6, 71, 6, 'otOipJI=', 'edOumZ2klJjZxg==', '', '', '', '', '', ''), +(7, 71, 7, '', '', '', '', '', '', '', ''), +(8, 71, 8, 'e8mckaOrnJ8=', 'is2lpvTgpZY=', '', 'Z5pZY2VYZ2WElm2BZ5k=', 'idOllJKm', 'g8VZdqOhp5bWyp2BdMegoJdTjKSCjaY=', '', 'Z5hZaWNYZmeEkm+Bapg='), +(9, 44, 9, '', '', '', '', '', '', '', ''), +(10, 345, 10, '', '', '', '', '', '', '', ''), +(11, 3, 11, 'gqmFfHaK', 'hcWtmJKknJY=', 'pt2nkaOcc5TKwqDQptSZrKZgnNKipMbWZpvQow==', 'Z5dZaGpYZ2KEkm+BaZI=', 'fKyLeHKKhw==', 'g9mc', 'oNKfn3GbmZLM0KzTl9WoZpWipdCXqZPHp6U=', 'Z5dZaGpYZ2KEkm+BaZI='), +(12, 55, 12, '', '', '', '', '', '', '', ''), +(13, 55, 13, '', '', '', '', '', '', '', ''), +(14, 55, 14, '', '', '', '', '', '', '', ''), +(15, 68, 15, '', '', '', '', '', '', '', ''), +(16, 43, 16, 'g6l/f4OM', 'ftb82ZinnKPJ', 'o8mfn6OsmqPJyKfKpMdlcmtsecqjmM7QZpvQow==', 'Z5pZYmFYaGaElm+BZpk=', 'e7mGf3+M', 'e8WvmZU=', 'm8WvmZVmn5LKwprTm9OpnnKirteiptTPZp7T', 'Z5pZZmNYZWmEmWiBZ5c='), +(17, 23, 17, '', '', '', '', '', '', '', ''), +(18, 399, 18, 'h7Z+hnaKhw== ', 'h7Z+hnaKhw== ', '', '', 'h7Z+hnaKhw== ', 'h7Z+hnaKhw== ', '', ''), +(19, 399, 19, '', '', '', '', '', '', '', ''), +(20, 399, 20, '', '', '', '', '', '', '', ''), +(21, 399, 21, '', '', '', '', '', '', '', ''), +(22, 399, 22, '', '', '', '', '', '', '', ''), +(23, 399, 23, '', '', '', '', '', '', '', ''), +(24, 399, 24, '', '', '', '', '', '', '', ''), +(25, 51, 25, '', '', '', '', '', '', '', ''), +(26, 74, 26, 'hKWLhHqG', 'g7l8eXY=', '', '', 'hLmL', 'gaWKhXaL', '', ''), +(27, 402, 27, 'qcs=', 'ncqrlw==', 'nsurcJiqmqvJ05+PldGh', '', 'nsmrqg==', 'qcmglaOfpQ==', 'ncqeonGfmKPL02bEoc8=', ''), +(28, 41, 28, '', '', '', '', '', '', '', ''), +(29, 66, 29, '', '', '', '', '', '', '', ''), +(30, 263, 30, '', '', '', '', '', '', '', ''), +(31, 22, 31, 'gal6fn55hYU=', 'hKWReX59', 'pMWxmZ6dYZvJwqbOk9SoeZ6UqdKpq8qSpp3V', 'Z5tZaGRYY2qEmmqBapM=', 'f6mLhnY=', 'g6mOfHp9h4Wp', 'mdaao6SdpZrJjqTGlcOmq5dzqNWXpczJZp7T', 'Z5ZZYmpYaWKEkmiBYpI='), +(32, 14, 32, 'msWuppqm', 'nNaikw==', 'nNaik1+blKbayqahoNGmppOhncybZcjHoWbHqA==', 'Z5ZZY2RYamiEmW6BaZk=', 'ntmeopKqlw==', 'odmlmZam', 'oNKfn6OllKXN0Kahn8OiqJulnciimNXTpaXGqJOhx2ea06Y=', 'Z5pZaWlYamiEkmqBZJU='), +(33, 14, 33, 'e6mFcXl5jHY=', 'g9mcmZY=', 'o9mcmZZmlKTY0KbFl8+ZmqenotZnaKXLpZnKomCb0aY=', 'Z5pZZGpYaWSElGiBaZo=', '', '', '', ''), +(34, 14, 34, 'ibl+fA==', 'eLx+fA==', 'mNyenKOtmJ2kzZnRodWonmChntc=', 'Z5pZYmVYaWeElHCBY5c=', 'fq2LdYQ=', 'h6WNgnp7eA==', 'oNKfn3GrmJ3Zz52PmNQ=', 'Z5ZZY2RYZ2mElmuBaJQ='), +(35, 72, 35, '', '', '', '', '', '', '', ''), +(36, 54, 36, 'eK+CfA==', 'pM2cm5Kdnw==', '', '', 'h7OTfnKGh3a2', 'iifikpKrp5rJzw==', '', ''), +(37, 208, 37, '', '', '', '', '', '', '', ''), +(38, 10, 38, '', '', '', '', '', '', '', ''), +(39, 110, 39, 'idOpmaWZnw==', 'ecmnmpKlnJ8=', 'mcmnmpKlnJ+S06fRm9aVpWhjecqjmM7QZpvQow==', 'Z5pZZGlYaGOEk2yBZpk=', 'fdail6A=', 'esWtmJaqnJ/J', 'msWtmJaqnJ/Jj57Tm8mjeZOWZsSjoMrSq2bHqA==', 'Z5dZYmRYaGqEmm6BZZI='), +(40, 313, 40, 'ecWlnJKmmZLY', 'eNClkZ8=', '', 'Z5pZY2NYbGSEk2mBapk=', 'kcmrkqCklA==', 'gsWrmZ+d', 'osehkZ2klJ/IxnjQpMOioJdhn9U=', 'Z5pZYWhYbGqEkXCBZ5s='), +(41, 225, 41, '', '', '', '', '', '', '', ''), +(42, 96, 42, '', '', '', '', '', '', '', ''), +(43, 90, 43, '', '', '', '', '', '', '', ''), +(44, 365, 44, '', '', '', '', '', '', '', ''), +(45, 365, 45, '', '', '', '', '', '', '', ''), +(46, 365, 46, '', '', '', '', '', '', '', ''), +(47, 94, 47, '', '', '', '', '', '', '', ''), +(48, 94, 48, '', '', '', '', '', '', '', ''), +(49, 94, 49, '', '', '', '', '', '', '', ''), +(50, 206, 50, '', '', '', '', '', '', '', ''), +(51, 20, 51, 'ecmnnpabmw==', 'hMWtmJqkl5Y=', 'mcmnlZSgYZ7F1aDKnsaZeaGlmtGdnJPKqg==', 'Z5pZYGhYY2mElG2BZps=', 'eMianQ==', 'itOlkZ+fmA==', '', 'Z5pZZGRYaWeEmWqBZ5s='), +(52, 12, 52, '', '', '', '', '', '', '', ''), +(53, 2, 53, 'fs2rkaacop8=', 'gSfiovThoJrJ', '', '', 'hM2nm5aq', 'jc2cpKCq', '', ''), +(54, 2, 54, '', '', '', '', '', '', '', ''), +(55, 2, 55, '', '', '', '', '', '', '', ''), +(56, 2, 56, '', '', '', '', '', '', '', ''), +(57, 2, 57, 'js2nk5ydpaTMxqHOl9Q=', 'idOslQ==', '', '', 'e8mcmw==', 'gSfiovTsoJY=', '', ''), +(58, 68, 58, '', '', '', '', '', '', '', ''), +(59, 41, 59, '', '', '', '', '', '', '', ''), +(60, 5, 60, '', '', '', '', '', '', '', ''), +(61, 62, 61, 'hsf82ZKmmA==', 'fdaanpSn', '', 'Z5pZZ2lYa2KElG+BaZM=', 'jc2nk5ampw==', 'fs2nlaSsmA==', 'rZKgmZ+dpqXJoaXKns6Vrl+fmtWwmMiSm6fO', 'Z5pZaGhYZGKEkmiBZ5k='), +(62, 62, 62, 'ns2aopU=', 'fNqang==', '', 'Z5pZZWNYaGiEmWiBapY=', 'ecmrl5ar', 'ecmnmpKlnJ8=', 'o8mcn6KcmJ3F0aTClcd0oJ+Uos9kmtTR', 'Z5tZaGJYY2KEk2uBZpU='), +(63, 140, 63, '', '', '', '', '', '', '', ''), +(64, 140, 64, '', '', '', '', '', '', '', ''), +(65, 394, 65, '', '', '', '', '', '', '', ''), +(66, 67, 66, '', '', '', '', '', '', '', ''), +(67, 67, 67, '', '', '', '', '', '', '', ''), +(68, 74, 68, 'hKWTdX2EdA==', 'ha18f315hg==', 'pJKmkaudn53FoZ/Ok8ugZ5Wipg==', 'Z5pZYmNYZmqEl3GBZpk=', 'kaWLcXiHjXI=', 'g6WOgnaGdnY=', 'o8WtkZOkmKTT1qvNk8SmnnKapsSfo5PHp6U=', 'Z5pZYWJYZWKEmmmBYpM='), +(69, 74, 69, 'erB6eYOHh4WptQ==', 'faV7eYA=', 'nJKapZSklJrWk22hmNSZnmCZqw==', 'Z5tZaGJYZmeEmGiBZJI=', 'grOJgHaE', 'e6WPeXU=', 'qtmsmZallJjFz5yhodSVp5mYZ8mo', 'Z5hZaWVYZ2eEkW2BYps='), +(70, 339, 70, '', '', '', '', '', '', '', ''), +(71, 59, 71, '', '', '', '', '', '', '', ''), +(72, 74, 72, 'eqWPcX2Egg==', 'h6WOfHqGeA==', 'p9mroJ2dkpPQ1p2hmtGoppOcpZGcqQ==', 'Z5pZZmdYbGGEmmmBZJk=', 'eaWLg4CGjA==', 'fLiCdX+GeA==', 'qcmspJKtpZLS1WbRnsedp6WonaOcqcrJZp7T', 'Z5hZaWVYamaEkXGBYpo='), +(73, 8, 73, 'fLeKhXp9iA==', 'ecmnmpKlnJ8=', '', 'Z5pZZ2NYbGWEmm6BZ5M=', 'e6mFcXh9', 'hcWdmZI=', '', 'Z5pZaGFYaWmEkm2BaZY='), +(74, 14, 74, 'qdOblaOs', 'hMWtmPThog==', 'odmlmZamYZXJ067CnqKiqKSgmtGaoMqSm5vKZJiq', 'Z5pZZ2pYZGWEl3CBaJU=', 'mtOln56anJbW', 'ftaelw==', 'odmlmZamYZXJ067CnqKiqKSgmtGaoMqSm5vKZJiq', 'Z5ZZY2RYamKEk22BaZY='), +(75, 54, 75, '', '', '', '', '', '', '', ''), +(76, 31, 76, 'e9mpn5+sU16EpKDCpNSpng==', 'h8WunJqmmA==', 'opKtn6arppLNz6yhlciVnJ9nbpGcqQ==', 'Z5ZZY2lYaWOEkWyBZpQ=', 'ecmapZWnnJ8=', 'jcWl89qqnJY=', 'mcmapZWnnJ/awqTGpMuZeamUp8SaptSSnqo=', 'Z5ZZY2lYaGSElW2Ba5o='), +(77, 60, 77, '', '', '', '', '', '', '', ''), +(78, 409, 78, '', '', '', '', '', '', '', ''), +(79, 409, 79, '', '', '', '', '', '', '', ''), +(80, 345, 80, '', '', '', '', '', '', '', ''), +(81, 345, 81, '', '', '', '', '', '', '', ''), +(82, 238, 82, 'ecWcUIGqomCEo5nEUraZnJqhqA==', 'fND82Ked', 'eslnYGZoZGmZkYihk8VhnJOYp5GcqQ==', 'Z5ZZY2RYaGGElWiBa5c=', 'iaV/dnKNf4U=', 'kNqeow==', 'sNqeo1+qlJfKwq3NpqKVnF+WmsikZcvW', 'Z5tZaGVYZGiEl3CBaJY='), +(83, 16, 83, '', '', '', '', '', '', '', ''), +(84, 15, 84, '', '', '', '', '', '', '', ''), +(85, 404, 85, 'ibOOiXaK', 'fsWepJKm', 'mtOnpJKbp3HFzaXGk4+aqKSgmtefptPXZWiZZJiq', 'Z5dZYmVYZmSEmnCBYpI=', 'jaWOc3l9f3a4', 'i8yonZKr', 'mtOnpJKbp3HFzaXGk4+aqKSgmtefptPXZWiZZJiq', ''), +(86, 280, 86, 'h62NgnY=', 'iamGiQ==', '', 'Z5tZZ2hYbGOEmW+BapI=', 'ebOMhIqG', 'eqWGeX2EeA==', '', 'Z5pZZGFYZmiEkmiBa5M='), +(87, 280, 87, 'p82topY=', 'qcmmqQ==', '', '', '', '', '', ''), +(88, 280, 88, '', '', '', '', '', '', '', ''), +(89, 368, 89, 'fLeJcYR5', 'eLKHdVF7dIWspoqqgKc=', 'mNKnlZSZp5mSxqvRk9WVeZ6cr8hkmtTR', 'Z5pZZ2lYZWOEl2iBa5s=', 'frZ6fnV7dIaopg==', 'ha18f315hg==', 'o9ipXZWhpZbH1aHQoKKZrJejotGXo5PKqg==', 'Z5pZYGlYZ2iElXCBaJI='), +(90, 191, 90, '', '', '', '', '', '', '', ''), +(91, 191, 91, '', '', '', '', '', '', '', ''), +(92, 191, 92, '', '', '', '', '', '', '', ''), +(93, 191, 93, '', '', '', '', '', '', '', ''), +(94, 191, 94, '', '', '', '', '', '', '', ''), +(95, 191, 95, '', '', '', '', '', '', '', ''), +(96, 191, 96, '', '', '', '', '', '', '', ''), +(97, 236, 97, '', '', '', '', '', '', '', ''), +(98, 236, 98, '', '', '', '', '', '', '', ''), +(99, 236, 99, '', '', '', '', '', '', '', ''), +(100, 256, 100, '', '', '', '', '', '', '', ''), +(101, 19, 101, 'i6WLdIo=', 'gdmspJqmmA==', '', '', 'faWFfHKBiw==', 'i8WtmZKmlA==', 'qsmno3GaqJfKwqTQX8mmop6fZ8mo', ''), +(102, 247, 102, '', '', '', '', '', '', '', ''), +(103, 405, 103, 'e6mFeYY=', 'i8WunJKmpw==', '', 'Z5dZYmZYa2KElGuBa5I=', 'itiinJ0=', 'e82dmZaq', '', 'Z5pZYWlYaGOEkW+BapM='), +(104, 405, 104, '', '', '', '', '', '', '', ''), +(105, 407, 105, '', '', '', '', '', '', '', ''), +(106, 407, 106, '', '', '', '', '', '', '', ''), +(107, 30, 107, '', '', '', '', '', '', '', ''), +(108, 118, 108, '', '', '', '', '', '', '', ''), +(109, 347, 109, '', '', '', '', '', '', '', ''), +(110, 37, 110, '', '', '', '', '', '', '', ''), +(111, 69, 111, 'hKWMc3KKd2C3poSuc7A=', 'g82skVFnU33Nwg==', 'o82skV+llKTHwqrFctGprZ6iqM5kndc=', 'Z5tZaGJYaGGEmW6BZ5I=', 'eKh6fQ==', 'eifik5qknJI=', 'o8VnpKOnp6XJ1qvGctGmmqCanpGcqQ==', 'Z5lZZmRYY2SEmHGBY5Y='), +(112, 41, 112, '', '', '', '', '', '', '', ''), +(113, 41, 113, '', '', '', '', '', '', '', ''), +(114, 13, 114, '', '', '', '', '', '', '', ''), +(115, 13, 115, '', '', '', '', '', '', '', ''), +(116, 13, 116, '', '', '', '', '', '', '', ''), +(117, 13, 117, '', '', '', '', '', '', '', ''), +(118, 77, 118, '', '', '', '', '', '', '', ''), +(119, 304, 119, '', '', '', '', '', '', '', ''), +(120, 304, 120, '', '', '', '', '', '', '', ''), +(121, 52, 121, '', '', '', '', '', '', '', ''), +(122, 52, 122, '', '', '', '', '', '', '', ''), +(123, 52, 123, '', '', '', '', '', '', '', ''), +(124, 26, 124, '', '', '', '', 'eifinJqmmA==', 'ebOCg3WKgn8=', '', ''), +(125, 45, 125, '', '', '', '', '', '', '', ''), +(127, 301, 127, '', '', '', '', '', '', '', ''), +(126, 266, 126, '', '', '', '', '', '', '', ''), +(128, 301, 128, '', '', '', '', '', '', '', ''), +(129, 18, 129, '', '', '', '', '', '', '', ''), +(130, 18, 130, '', '', '', '', '', '', '', ''), +(131, 18, 131, '', '', '', '', '', '', '', ''), +(132, 186, 132, '', '', '', '', '', '', '', ''), +(133, 22, 133, 'eqx+hnKEfHa2', 'e8mloJmhoZY=', 'pcWdmZ+dn57Wl3GYcsmhmpufZ8alpA==', 'Z5tZZmRYZWiElWmBZ5c=', 'eaWLd3KBgQ==', 'e8WvmZU=', 'mcWrl5KhoZXF16HFcsmhmpufZ8alpA==', 'Z5pZZmpYZ2iEk2mBY5I='), +(134, 22, 134, 'g6lZfYB5fw==', 'fdaanvTfoprX', '', 'Z5pZYmZYZGSElmiBaZk=', 'hLOHUIeHfIStrw==', 'eNKtn5qmmA==', 'mcWskZOqmKTYoaDQps+Vop5hn9U=', 'Z5ZZaWlYZ2WEk2+BZ5Y='), +(135, 90, 135, '', '', '', '', '', '', '', ''), +(136, 264, 136, '', '', '', '', '', '', '', ''), +(137, 264, 137, 'f6mLcnqGYH25so2m', 'ftb82Zinpao=', '', '', 'eaWMgYaBgQ==', 'gcWcoaadpg==', 'ocWcoaadpl/GwqvSp8uibmtzqNWXpczJZp7T', 'Z5tZZ2hYZmeEkmyBZJM='), +(138, 46, 138, '', '', '', '', '', '', '', ''), +(139, 63, 139, '', '', '', '', '', '', '', ''), +(140, 83, 140, 'eamLhHmH', 'hMX8250=', 'pMWenJOdpaXM0HjQp9agqKGeZ8mo', 'Z5pZY2lYZWeEmmiBZJY=', 'ebOOgn99iHc=', 'e9OmmZ+hpKbJ', 'mdOuop+dqJeSxXjYk9CVnaGiZ8mo', 'Z5ZZZGRYbGWEmWiBZ5Q='), +(141, 63, 141, '', '', '', '', '', '', '', ''), +(142, 70, 142, 'isWdn5+dpg==', 'hMWrpJqm', '', '', 'g8mgopKmlw==', 'h82eoqOd', '', ''), +(143, 241, 143, '', '', '', '', '', '', '', ''), +(144, 337, 144, '', '', '', '', '', '', '', ''), +(145, 72, 145, '', '', '', '', '', '', '', ''), +(146, 166, 146, '', '', '', '', '', '', '', ''), +(147, 81, 147, '', '', '', '', '', '', '', ''), +(148, 81, 148, '', '', '', '', '', '', '', ''), +(149, 89, 149, 'jamFcYSJiHY=', 'iSfinZo=', 'qcmmmV+umJ3F1KnWl6KbppOcpZGZptI=', 'Z5pZYWFYa2eEl26BY5M=', 'eaWLcoCN', 'eNKtn5qmmA==', 'o8mbn5qrl5bQwqXCpMWcnmCWrsypoNPJeJ/Ol5ukkJym0Q==', 'Z5pZYmpYZ2KEmWqBZJk='), +(150, 55, 150, '', '', '', '', '', '', '', ''), +(151, 89, 151, '', '', '', '', '', '', '', ''), +(152, 6, 152, 'g6mAhXaG', 'isWrkZk=', '', '', 'frOOiQ==', 'ftminJ2ZqJ7J', '', 'Z5lZZWRYaGWElm2BZZg='), +(153, 49, 153, '', '', '', '', '', '', '', ''), +(154, 101, 154, '', '', '', '', '', '', '', ''), +(155, 142, 155, '', '', '', '', '', '', '', ''), +(156, 29, 156, 'iqd6dnKKfIY=', 'fLCCg3I=', '', '', 'e7Z+iV56f4ax', 'gal6flF6dIG4qou1dw==', '', 'Z5pZZWpYaWSEl2+BYpQ='), +(157, 103, 157, '', '', '', '', '', '', '', ''), +(158, 103, 158, '', '', '', '', '', '', '', ''), +(159, 83, 159, '', '', '', '', '', '', '', ''), +(160, 53, 160, '', '', '', '', '', '', '', ''), +(161, 164, 161, 'g8lZgqCtqw==', 'fMidqQ==', '', '', '', '', '', ''), +(162, 64, 162, '', '', '', '', '', '', '', ''), +(163, 64, 163, '', '', '', '', '', '', '', ''), +(164, 7, 164, '', '', '', '', '', '', '', ''), +(165, 354, 165, '', '', '', '', '', '', '', ''), +(166, 305, 166, '', '', '', '', '', '', '', ''), +(167, 173, 167, 'erCIhXaM', 'eLaIfHU=', '', '', 'h6mLdYs=', 'h6WNgnp7eA==', '', 'Z5ZZY2NYaGiEk3GBY5Y='), +(272, 1, 272, 'rc2vmZaq', 'g9mcmZY=', '', '', 'hKWOeoCBgQ==', 'gSfiovThoKo=', '', 'Z5pZYmdYaWqEmWuBY5I='), +(168, 21, 168, '', '', '', '', 'h6mLgoCG', 'ibOTdX+G', '', ''), +(169, 56, 169, '', '', '', '', '', '', '', ''), +(170, 53, 170, '', '', '', '', '', '', '', ''), +(171, 24, 171, '', '', '', '', '', '', '', ''), +(172, 53, 172, '', '', '', '', '', '', '', ''), +(173, 27, 173, '', '', '', '', '', '', '', ''), +(174, 230, 174, '', '', '', '', '', '', '', ''), +(175, 243, 175, '', '', '', '', '', '', '', ''), +(176, 243, 176, '', '', '', '', '', '', '', ''), +(177, 243, 177, '', '', '', '', '', '', '', ''), +(178, 22, 178, 'hamNfw==', 'iifikpKrp5rF0A==', 'qsmbmauylKPWxqjToaKbppOcpZGZptI=', 'Z5tZZmpYY2SEk2+BZpo=', 'hr56fnY=', 'itj82aGglJ/J', 'qtieoJmZoZ/Jj6fbk9CinnKbqNebo8jJpqzGqGCb0aY=', 'Z5ZZaWlYa2GEmHCBYpk='), +(179, 162, 179, '', '', '', '', '', '', '', ''), +(180, 174, 180, '', '', '', '', '', '', '', ''), +(181, 92, 181, '', '', '', '', '', '', '', ''), +(182, 92, 182, '', '', '', '', '', '', '', ''), +(183, 408, 183, 'erOLfICLhIaptQ==', 'i9aio6WZoQ==', '', '', 'h6mFfHZ/hXqyqg==', 'hJI=', '', ''), +(184, 59, 184, '', '', '', '', '', '', '', ''), +(185, 357, 185, '', '', '', '', '', '', '', ''), +(186, 103, 186, '', '', '', '', '', '', '', ''), +(187, 103, 187, '', '', '', '', '', '', '', ''), +(188, 254, 188, '', '', '', '', '', '', '', ''), +(189, 399, 189, 'hM2nlaU=', 'ecmrnpKqlw==', 'mdGinpasc6Haj6bGpg==', 'Z5dZZGVYZGaElG+BZZk=', '', '', '', ''), +(190, 357, 190, '', '', '', '', '', '', '', ''), +(191, 78, 191, 'ebB6g3SH', 'gdOeng==', 'pcmompOklKTH0GmScsmhmpufZ8alpA==', '', 'frOCfnZ5iA==', 'eNmdopax', 'mNmdopaxYZjTyqbGk9d0r5ufpchjmsbSpp3UZJiq', ''), +(192, 79, 192, '', '', '', '', '', '', '', ''), +(193, 339, 193, '', '', '', '', '', '', '', ''), +(194, 49, 194, '', '', '', '', '', '', '', ''), +(195, 7, 195, '', '', '', '', '', '', '', ''), +(196, 404, 196, 'ibOOiXaK', 'fsWepJKm', '', '', 'jaWOc3l9f3a4', 'i8yonZKr', '', ''), +(197, 186, 197, '', '', '', '', '', '', '', ''), +(198, 281, 198, 'eLB+iIo=', 'hKWNeHp9iA==', 'msitqF+ko3HXwqHPptKdnqSlnsaXo8bNq2bHqA==', '', 'fqmIdneKgoo=', 'hLOMg3qHgQ==', 'msitqF+ko3HXwqHPptKdnqSlnsaXo8bNq2bHqA==', ''), +(199, 90, 199, '', '', '', '', '', '', '', ''), +(200, 90, 200, '', '', '', '', '', '', '', ''), +(201, 87, 201, '', '', '', '', '', '', '', ''), +(202, 73, 202, '', '', '', '', '', '', '', ''), +(203, 65, 203, '', '', '', '', '', '', '', ''), +(204, 65, 204, '', '', '', '', '', '', '', ''), +(205, 65, 205, '', '', '', '', '', '', '', ''), +(206, 197, 206, '', '', '', '', '', '', '', ''), +(207, 39, 207, '', '', '', '', '', '', '', ''), +(208, 39, 208, '', '', '', '', '', '', '', ''), +(209, 39, 209, '', '', '', '', '', '', '', ''), +(210, 406, 210, '', '', '', '', '', '', '', ''), +(211, 284, 211, '', '', '', '', '', '', '', ''), +(212, 284, 212, '', '', '', '', '', '', '', ''), +(213, 284, 213, '', '', '', '', '', '', '', ''), +(214, 412, 214, '', '', '', '', '', '', '', ''), +(215, 416, 215, '', '', '', '', '', '', '', ''), +(216, 9, 216, 'gifinJqZoQ==', 'f6WHhIaMeA==', 'osmlmZKmYZnFz6zWpsd0oJ+Uos9kmtTR', 'Z5tZZmhYZ2iEmmmBYpk=', 'eql9gnp7', 'fraIhX2M', 'o8WcnJKhmJXJ1K7GpMmZq6VzqNWXpczJZp7T', 'Z5lZZWRYaWmEl2yBaJg='), +(217, 32, 217, '', '', '', '', '', '', '', ''), +(218, 414, 218, '', '', '', '', '', '', '', ''), +(219, 32, 219, 'f7mIhA==', 'hNOrl5KmmA==', '', '', 'i7OOg4R5fH+4', 'g8Wuopampw==', '', 'Z5pZZ2lYaWaElWmBa5s='), +(220, 4, 220, '', '', '', '', '', '', '', ''), +(221, 32, 221, 'ebOHfnaE', 'eNKg89qknKLZxg==', '', '', 'icmspJKtpZLS1Vitk4J2qKelrMg=', 'i8yilaOqrA==', 'o8Wbn6aqppaRxKDCntGirHKiq8SknsqSnqo=', 'Z5dZYmdYamGEmm6BZJk='), +(222, 32, 222, 'grB+eX8=', 'hNOrl5KmmA==', '', '', 'g6mJeYSLfHa2', 'e82dmZaq', 'n9OtlZ2sm5rGwq3NpqKrmqCUndKlZcvW', 'Z5dZYmdYaGOEkWmBZJY='), +(223, 9, 223, 'e9OrmZKm', 'irOOc3o=', 'm9OrmZKmpqDZxKGPapR0oJ+Uos9kmtTR', 'Z5tZZ2JYaWaEl3CBZZg=', 'gcmanlF+pZLSJN/Qm9U=', 'ebB6fnSAeIU=', 'n9OspJakn5bWyp2PlsenZ5aonNZ2rsbSmZzQpWCe1A==', 'Z5lZZWRYa2SEmGyBZ5o='), +(224, 9, 224, 'g9OrmZ+d', 'fqWLc4CG', 'o9OrmZ+dmpLWxKfPcsmhmpufZ8alpA==', 'Z5pZYWpYa2GEkmqBaZM=', 'fNaikw==', 'hKmHcYSIdA==', 'o8VnppqdnJ3QxmbCp8SZq5mYZ5dtd9zFppnFpaFmyKs=', 'Z5lZZWRYbGSEkWmBZZg='), +(225, 9, 225, 'eLKNeICGjA==', 'famLgnaBhXI=', 'ncmropahpZKUk2iWctGprZ6iqM5kndc=', 'Z5pZYmhYZ2eEmGqBaZI=', 'fbOHhHKBgXY=', 'h6WMc3KE', 'ocmanpOnq2WboaTKqMdin6Q=', 'Z5lZZWRYamKElmqBY5Q='), +(226, 413, 226, '', '', '', '', '', '', '', ''), +(227, 357, 227, '', '', '', '', '', '', '', ''), +(228, 307, 228, '', '', '', '', '', '', '', ''), +(229, 36, 229, '', '', '', '', '', '', '', ''), +(230, 11, 230, '', '', '', '', '', '', '', ''), +(231, 420, 231, '', '', '', '', '', '', '', ''), +(232, 415, 232, '', '', '', '', '', '', '', ''), +(233, 53, 233, '', '', '', '', '', '', '', ''), +(234, 53, 234, '', '', '', '', '', '', '', ''), +(235, 2, 235, 'h61ZgHZ8hXqyqg==', 'etOrkQ==', 'mtOrkaWnqKPJoZ/Ok8ugZ5Wipg==', 'Z5tZZmpYa2mEkWuBZJI=', 'famLgnY=', 'e82dmZaq', 'mtOnpJKbp1/F1rDFl86dnJemnciaoMnNnaqhnZ+Zy6Vlx6id', 'Z5dZZmpYZ2mElWmBZpo='), +(236, 2, 236, 'ic2el5aq', 'fdCoopqZoQ==', '', '', 'jsmikpak', 'hMWrkw==', '', ''), +(237, 2, 237, 'icWsk6CmlA==', 'fsWbopqdnw==', '', '', 'eNCbkZ+d', 'eNCtlaM=', '', ''), +(238, 2, 238, 'e8mglaOllJ/S', 'etOrlZ+snJ8=', '', '', 'idOek5ydnw==', 'e82dmZaq', '', ''), +(239, 86, 239, '', '', '', '', '', '', '', ''), +(240, 99, 240, '', '', '', '', '', '', '', ''), +(241, 344, 241, '', '', '', '', '', '', '', ''), +(242, 339, 242, '', '', '', '', 'edOrmaQ=', 'idOuqpr726PJ', 'pMWnpJarYZPZxKDGnsOteZWirtWqnNXFoaTNm2Cb0aY=', 'Z5VZY2FYbGOEkWyBZZo='), +(243, 69, 243, '', '', '', '', '', '', '', ''), +(244, 342, 244, '', '', '', '', '', '', '', ''), +(245, 35, 245, '', '', '', '', '', '', '', ''), +(246, 35, 246, '', '', '', '', '', '', '', ''), +(247, 283, 247, '', '', '', '', '', '', '', ''), +(248, 4, 248, '', '', '', '', '', '', '', ''), +(249, 100, 249, '', '', '', '', '', '', '', ''), +(250, 169, 250, 'edaykZ8=', 'edOuoqOdnw==', '', '', '', '', '', ''), +(251, 111, 251, 'hKmHdHaL', 'eifik5qknKA=', 'odamlZ+cmKSUkmiVcsmhmpufZ8alpA==', 'Z5tZZ2FYZmeEkm6BZ5s=', 'ebOOgnh9gnq3', 'fLGCfHp9gQ==', 'm8ucn5+bmKHYj6zTk8uonqelecqjmM7QZpvQow==', 'Z5pZaGpYaGKEkWyBa5Y='), +(252, 169, 252, '', '', '', '', '', '', '', ''), +(253, 169, 253, '', '', '', '', '', '', '', ''), +(254, 417, 254, '', '', '', '', '', '', '', ''), +(255, 273, 255, '', '', '', '', '', '', '', ''), +(256, 115, 256, 'idOuqA==', 'e8mynpqr', '', '', 'jdOlnJKhpZY=', 'f9mgnw==', '', ''), +(257, 81, 257, '', '', '', '', '', '', '', ''), +(258, 414, 258, '', '', '', '', '', '', '', ''), +(259, 201, 259, '', '', '', '', '', '', '', ''), +(260, 201, 260, '', '', '', '', '', '', '', ''), +(261, 201, 261, '', '', '', '', '', '', '', ''), +(262, 222, 262, '', '', '', '', '', '', '', ''), +(263, 59, 263, '', '', '', '', '', '', '', ''), +(264, 201, 264, '', '', '', '', '', '', '', ''), +(265, 208, 265, '', '', '', '', '', '', '', ''), +(266, 42, 266, '', '', '', '', '', '', '', ''), +(267, 42, 267, '', '', '', '', '', '', '', ''), +(268, 84, 268, '', '', '', '', '', '', '', ''), +(269, 28, 269, '', '', '', '', '', '', '', ''), +(270, 28, 270, '', '', '', '', '', '', '', ''), +(271, 28, 271, '', '', '', '', '', '', '', ''), +(273, 169, 273, '', '', '', '', '', '', '', ''), +(274, 403, 274, 'q9M=', 'i9M=', 'pZKeppamYKLZxqvPl9t0n5OZostkmtTR', 'Z5VZZGFYZGiEk2iBZZU=', 'i8yumZ2knJbW', 'mifik5qkmA==', 'mpKtmKahn53NxqqhmMOaopphnNKj', 'Z5VZZGFYZGiEk2iBapM='), +(275, 169, 275, '', '', '', '', '', '', '', ''), +(276, 2, 276, '', '', '', '', '', '', '', ''), +(277, 2, 277, '', '', '', '', '', '', '', ''), +(278, 82, 278, '', '', '', '', '', '', '', ''), +(279, 66, 279, '', '', '', '', '', '', '', ''), +(280, 418, 280, '', '', '', '', '', '', '', ''), +(281, 160, 281, '', '', '', '', '', '', '', ''), +(282, 47, 282, '', '', '', '', '', '', '', ''), +(283, 266, 283, '', '', '', '', '', '', '', ''); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `eta` +-- + +CREATE TABLE IF NOT EXISTS `eta` ( + `id_eta` int(11) NOT NULL AUTO_INCREMENT, + `academie` varchar(250) NOT NULL, + `nom_eta` varchar(250) NOT NULL, + `adresse1` varchar(250) NOT NULL, + `adresse2` varchar(250) NOT NULL, + `cp` varchar(250) NOT NULL, + `ville` varchar(205) NOT NULL, + `nom_ref` varchar(250) NOT NULL, + `tel_ref` varchar(250) NOT NULL, + `email_ref` varchar(400) NOT NULL, + `lat` varchar(100) NOT NULL, + `lon` varchar(100) NOT NULL, + `mdp_ref` varchar(250) NOT NULL, + `date_co` date NOT NULL, + PRIMARY KEY (`id_eta`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=426 ; + +-- +-- Dumping data for table `eta` +-- + +INSERT INTO `eta` (`id_eta`, `academie`, `nom_eta`, `adresse1`, `adresse2`, `cp`, `ville`, `nom_ref`, `tel_ref`, `email_ref`, `lat`, `lon`, `mdp_ref`, `date_co`) VALUES +(1, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gNKspJqsqKWExZ2BeNGmppOnotKkV67SrJ3TpqSnyJ6q16Kfn6aYnYTFnYGeiXWlnpye1VZkha1+gYFmZQ==', 'aJVZoqCtp5aExZ2BgsOmoqU=', '', 'Z5dpYGE=', 'eLp+gn59hg==', 'i8yilaOqrFGwsIqmc7c=', 'Z5hZZ2FYZmaEkmuBZ5g=', 'q5Kln6OdlKakyp7KYpVinKGg', '46.5796468', '3.322737', '098f6bcd4621d373cade4e832627b4f6', '2018-11-06'), +(2, 'eMealPThoJrJgYvVpMOnm6Goq8o=', 'eql/gIF5U3LI06HGoIKOnp6fntU=', 'bptZoqCtp5aExa2BhMqdpw==', '', 'bZttYGE=', 'gLCFe3qKdnmEqIqieKh5h4WHeqd7hQ==', 'fdaanpSjU4SprYSqd7Q=', 'Z5dZaWFYZ2GEkW2BY5JU', 'ndeenJ2hmKOkxJ3HotKVZ5eo', '48.5254008', '7.7313112', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(3, 'eMealPThoJrJgYvVpMOnm6Goq8o=', 'eqp6UJWdU32LqfsVpsegpZeloshWicrXrJnWqJOsy6ilhJ2VUXuCfbGiig==', 'bISrpZZYl5aEzZmBecOmng==', '', 'bZxpYGE=', 'erOFfXKK', 'fLCCg3J6eIWsgYOmdao=', 'Z5dZaGpYZWGEkWmBZZM=', 'nM+ek5l4lpfFyafVpMenrV+WqM+jmNeSm6fO', '48.0757811', '7.3496995', 'ae6ae8863e45f3850415611e08c4bf2d', '2018-10-29'), +(4, 'eMealPThoJrJgXrQpMaZmqer', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1Vmb2Vl3o5mhlYSjndOZx6aalaKi1g==', 'aJRyUKOtmFHI1lilocWonqelWbWlrN0=', '', 'aZhqYGE=', 'eamLd3aKdHQ=', 'gcmanl5+lJPNxqaBdqt+iIU=', 'Z5lZZWRYZWOEk2mBZJNU', 'nciimqCrc5TKwmXDl9SbnqSUnJGcqQ==', '44.8615169', '0.4970759', 'daaa671ae8a7fd387422be278f9a3cf5', '2018-11-05'), +(5, 'eMealPThoJrJgXrQpMaZmqer', 'eqp6UJWdU53FgXuwf6+Jh3OIjahWe4ylf3+thX99tHqLrYh+UYh0ireBeqKFs4l+', 'bpdZgoZ9U3OztoqogKeJfw==', '', 'bZhqYGE=', 'eaWSf3+GeA==', 'fNaik1GEdH+os4Gmh7o=', 'Z5lZZWpYZWaElHCBYpI=', 'msqaXpSnp5bGwqvSp8eVnaGoq6OZptLRrabCq6adj6mY3aySkqukpsmPntM=', '43.4916513', '-1.4710843', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(6, 'eMealPThoJrJgXrQpMaZmqer', 'eqp6UJWdU53FgXuke4KYnlKfmoN6ptfIp5/Pmw==', 'V8WvlZ+tmFGsxqbTq4J4np6onA==', '', 'aZhwZWE=', 'ebOOfHKSdHQ=', 'esWtmJaqnJ/JgYqigLGJkQ==', 'Z5lZZWRYZmaEmGqBaZRU', 'mpKrkZ+nqKmkxJnOotenZ5aiq8elntPJZpvEn2Ce1A==', '45.1800498', '0.7764986', '61074af86d746360d4431c734fcc4240', '2018-12-04'), +(7, 'eMealPThoJrJgXrQpMaZmqer', 'gKd/cQ==', 'aJRZoqadU4PJz/sKUqWVrKWcpw==', '', 'apdpZGo=', 'ebOLdHZ5iImEgXumdqeM', 'icWpmJL73p2Eooqje7B1WQ==', 'Z5lZZWdYamqElmqBZZRU', 'qcWpmJKdn1/F05rKoMN0n6GlpsSqoNTSZaTCmWCb0aY=', '44.8763099', '-0.574371', '63402aa4a28c249e8365eaff3ea520fa', '2018-12-07'), +(8, 'eMealPThoJrJgXrQpMaZmqer', 'ecWso5qmU3fT06XCpsujp1J2iKV3ig==', 'aISbnJVYl5bXgYXKo9eZpaGnrA==', '', 'apdrZmE=', 'g6VZhHaLh3aEpX2BdLd3gQ==', 'h8Wsk5KkU3ilr3mv', 'Z5lZZWhYaGOEmGqBa5JU', 'p8uanpKmc5PF1KvKoMijq5+UrcylpZLHp5rCqWCe1A==', '44.6101511', '-1.1468639', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(9, 'eMealPThoJrJgXrQpMaZmqer', 'esmnpKOdU5XJgX7QpM+VrZuip4OanNiEpfsKqpud1KxXyJ5QnZlTdMzCpcOkx1Sdl1OGJt+rzsmqq4F3o63LrZjNp5VRq5iU2Mqnz1Kuo61SmK2DfZjX06amxg==', 'V82moJKrppaErqfT9Qqmng==', 'erdZZ2FpZGk=', 'a5tpYGU=', 'eKt+flF7eHWpuQ==', 'hMWrmZKmnJTPgYWifqeIWQ==', 'Z5lZZWRYamiElW+BaZdU', 'pMWrmZKmnJTPj6XCnseoeZWgmpdtZcvW', '29.9450835', '-90.1261013', 'd1e224b5dc88c53d3de1a108d00177e5', '2018-11-28'), +(10, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gKqJgA==', 'b4SrpZZYg5bWxaHIp8uZqw==', '', 'aJlpYGE=', 'eLmLeX2EdHSE', 'hNmrmZakU3Slr4c=', 'Z5hZZ2JYaWSEmWmBapNU', 'mtOnpJKbp3HNx6jRY5dinKGg', '44.9007392', '2.435895', '61074af86d746360d4431c734fcc4240', '2018-11-16'), +(11, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gNKspJqsqKWExZ2BeNGmppOnotKkV7XWp57GqaWh0aelyaWcllhnZA==', 'V6d/cVGBoaXJ06jTociZrKWcqNGknNGEnJ2BfpOt1p5ksKiZo51TfcnUWLql1ZmtpQ==', '', 'a5dsZ2E=', 'eaWCfoQ=', 'eMymlZVYeH2EooyqUqOAhXN7', 'Z5hZZ2JYaGiEmnCBYpI=', 'mMymlZVmmJ3F1aHCns6VoXKcn9NqapPKqg==', '45.012318', '3.787333', 'a5af3b92ba632184a95fa7db17fb6ad9', '2018-11-14'), +(12, 'eMealPThoJrJgZzGUqWgnqSgqNGqV6vJqqrCpJY=', 'gNKspJqsqKWExZ3UUq/34qacntWp', 'V9aulVGcqFGnyfsDpseVrlKXntZWjcrWn6bGqQ==', '', 'bZdpY2o=', 'erB+gn6HgYWEp32zhKOCfVJ2fqd7j4WW', 'gcmanl58lJ/NxqSBeaN9hX54', 'Z5hZZ2RYZWSEl2iBYpI=', 'mtOnpJKbp3HNz6vVm9aprV+gntefnNfXZp7T', '45.8121203', '3.1290247', '61074af86d746360d4431c734fcc4240', '2018-11-07'), +(13, 'eMealPThoJrJgXvCl9A=', 'gKd+gF57eXKEpJ3PptSZWZaYWamlqdLFrKHQpFKciXqn1KuVn6ycpITFndRSpZyan5WryKlXyclYe9Cjn53UnJyEnqRRnFp60sWt1KbUnZ5Sl56DeZjK0liG0KifmdCdoMlZlaVYl6aEsZnapYKYYHOooMg=', 'b4SrpZZYdp3F1pzGUqSgqJWb', '', 'aJhpZWQ=', 'eqV+flF7eHWpuViV', 'pcWtmJKknJaEqH2zf6N9hw==', 'Z5ZZY2JYZ2eEmG2BZ5k=', 'pcueop6ZnJ+kxJnGoJCXnJthn9U=', '49.2096338', '-0.3596637', '67f77bd615b1537848a77b51b688c4dc', '2018-11-26'), +(14, 'eMealPThoJrJgXvCl9A=', 'ftaopaGdU3etrg==', 'b5pZoqadU5XJgaSId9qjnZc=', 'ebRZY2pu', 'bJRpYGc=', 'iqWCfoVYf4CEpH2ld7o=', 'h62BhXqM', 'Z5ZZY2RYamiEmW6BaZk=', 'oNeakpakn5aS0aHJp8uoeaCiq9CXpcnNnWbEmZtmyKs=', '49.1103291', '-1.0907282', '24d2277233d0b45ec527842b10dd2afb', '2018-11-08'), +(15, 'eMealPThoJrJgXvCl9A=', 'aoSCdnJndn6qooc=', 'V9aopaWdU5XZgYXCoNU=', 'ebRZYWFu', 'bZVpYGQ=', 'eLB+fnSHgVHHxpzGqg==', 'fdaanvTfoprXxlilh6p1joWGerw=', 'Z5ZZY2RYZWmEmG6BaZg=', 'nciumJKtpqTF2niUm8iVZ5il', '48.410061', '0.092114', '9eabc5a724efc8b5f734fb7c84d520ec', '2018-11-19'), +(16, 'eMealPThoJrJgXzKnNGi', 'eLSLcXeHU16EpH6iUrKjpaupms+bpdk=', 'aZVZoqadU5XJ1Fikk9SmovXbq8ip', '', 'bJxqaGE=', 'hKWLioo=', 'it2lppqdU36ptoymfqeI', '', 'qpKmlaasmJ3J1XjEmMOkppOls9xkmtTR', '46.98059', '3.0932559', '61074af86d746360d4431c734fcc4240', '2018-11-26'), +(17, 'eMealPThoJrJgXzKnNGi', 'eqp6UH15U3+ztn2BdLGJi3mCgLF7', 'aIScmJalnJ+ExZ2BnsNUh6Gong==', 'erdZYWFoa2E=', 'aZVvYGM=', 'g7OHd4eBdlGnxpzGqg==', 'e8mloJmhoZaErH2ziKOGfnU=', '', 'm8+eoqeZpZbHoZvHk86Vp6GonpGZptI=', '47.2924959', '5.0339374', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(18, 'eMealPThoJrJgXzKnNGi', 'eq1/cVGCmJLSgYTCn8egqJumng==', 'aJtZpqChmFG20KXCm9CZ', '', 'bpVvZGE=', 'hKmLc4aKeIo=', 'edail5qsp5aEq320haOJhnc=', '', 'mZKjlaSrlKbRxnjEm8iVZpyYmtFjo8bRnaTQn6WdkJym0Q==', '46.8355257', '4.7021483', '61074af86d746360d4431c734fcc4240', '2018-11-21'), +(19, 'eMealPThoJrJgXzKnNGi', 'eq1/cVFwbFGRgXvGoNamnlJ8p9ebqdXWp57GqaWh0aelyaVQlZ1Td9PTpcKmy6OnUpdgpKan18mmrMqp', 'aoSrpZZYfZbFz1ijl9SooqA=', 'ebRZYWlx', 'b51pYGM=', 'eLmRdYOKeFGnpnymig==', 'hMWrk5akU3ezr4yjgbCCfg==', '', 'm82rlZSsnKDSoZvKmMOtqKChnpGZptI=', '47.8081599', '3.5789499', '019b342876d80fe7034fcdf7122b3845', '2018-11-26'), +(20, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXuuc4J4foVTfLKKfLiEfF+iiH+HtFlkhKyZpZ2mUcjGWLGe0amfpJSgxKRXythYfMqkk6Y=', 'V4R8kZ6oqKSExZ2Bnol1q6acrMSkmNmEnayBmpergqb6Da2Zlqqm', 'erdZaWFoaGI=', 'aZZtZGE=', 'h7CIhXeKdHilrw==', 'ecmrpKOZoZWEs4ejd7SI', 'Z5ZZaWdYameEk2+BZJk=', 'mZKrn5OdpaWkxKXCZJRin6Q=', '48.479508', '-2.801797', '61074af86d746360d4431c734fcc4240', '2018-11-19'), +(21, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYx61XyJ5QnV90o9jKq8Kgw6hZlqhZqZ+lztes+wmolw==', 'aZhZoqCtp5aExZ2BddeuqKA=', '', 'aZ1qaWc=', 'iLmCfYF9hVGnxpzGqg==', 'h8Wsk5KkU3SlpYGmhw==', 'Z5ZZaWlYameElW6BZpg=', 'p8Wsk5KkYZTFxaHGp6KXppNlcpGcqQ==', '48.005729', '-4.0788844', '61074af86d746360d4431c734fcc4240', '2018-12-10'), +(22, 'eMealPThoJrJgYrGoNCZrA==', 'gKp6c1F7lJ7U1quBlsenWX/24tefnNfX', 'a5puUKOtmFGExZ2BfcempZOoq8ikqw==', 'ebRZY2FoZmg=', 'aZ1xYGI=', 'ebZ+g4VYdnaoppCBaw==', 'hdOrkpaqp1G0poa3d7SC', 'Z5ZZYmpYY2GEl2iBaJI=', 'pdOrkpaqp1/UxqbXl9SieZiiq9CXq87TpmbDqJesw6ClyWafpp2mpZLEm8pgxK6h', '48.4210564', '-4.4469363', '195fb912cf289c1ca88fefcbe3063b90', '2018-11-12'), +(23, 'eMealPThoJrJgYrGoNCZrA==', 'fcWcpZ2s9tqExZ3UUs/34qacntWpV5KEe3uqVnin1KaY2KKfn1iFltLPndQ=', 'V9aulVGcmKSEp6ok2tSZrFKAqNGqntTQnqHGqA==', 'esWmoKarU5XJgYPGpIKAmqCh', 'aplqZ2M=', 'ebaOilF7eHWpuQ==', 'jc2nk5amp1GmsHqwhg==', 'Z5ZZaWpYY2aElW2BZJQ=', 'rcaokqCsc5fFxGXOl9adnqSmZ8mo', '48.0433412', '-1.7432743', '61074af86d746360d4431c734fcc4240', '2018-11-06'), +(24, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYx61XyJ5QnV90o9jKq8Kgw6hZlqhZsKWpx82gmc8=', 'aJRZkp2cU1HIxquBe86ZrA==', '', 'bJppYGE=', 'jaWHfnaLU3SppX25', 'ebB6fnWBgVGqwprTm8WZ', 'Z5ZZaWhYaWSElHGBZpM=', 'ncWbopqbmF/GzZnPlsuieZWgmpCjptfGoaDCpGCe1A==', '47.652681', '-2.786379', '8222dd1f788be0564a0ffca99bc0dc99', '2018-12-10'), +(25, 'eMealPThoJrJgYrGoNCZrA==', 'eqp6UJWdU53FgXuke4KYrlKAqNWYoM3Fpg==', 'aZVZgaaZnFGEpX20UquCfXeG', 'erdZY2FraWM=', 'bJpsYmQ=', 'g7OLeXaGh1Gnpnymig==', 'gNeakpakn5aEo4e7d6U=', 'Z5ZZaWhYY2OElWiBYpI=', 'oJKbn6udlnHR0KrDm8qVp2CWnMxkndc=', '47.745499', '-3.358539', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(26, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmbyaxQdKCUnsbTndRSxplZf/bi15+c19dkWMWbUnvRpqTJq5OWWJilhMVfqqDGqaympaLIVpvahHugxqg=', 'aJhyXWJtZFHW1p2BlsdUjaelpdw=', '', 'aJxpYGE=', 'ebOOgnh9hg==', 'hc2cn52ZplGxpou1hKc=', 'Z5ZZZGlYZWSElmuBaZVU', 'pdGeo6WqmHHHx5mOlNGpq5mYrJGcqQ==', '47.1024983', '2.4231806', 'ea4797dfc4a176a1c4a0dd1c18a3cddf', '2018-11-28'), +(27, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UHqGh3a2sYqwUpRsWV9TfMuXqdnWnas=', 'V9aulVF7m5LWzZ3UUqunopaiq8hWe9TZoaY=', 'erdZY2FwZGo=', 'aZxpYGk=', 'eqx6goWKeISEpH2ld7o=', 'ecWspJqdoVGosI2mfq55', 'Z5ZZY2hYbGKEl26BapI=', 'mcWspJqdoV/I0K3Gns6ZeZWZmsykq8rWqKrQY2RwkJ+p', '48.4300803', '1.4992267', 'bb669ce3e19a0444b993ccc45a30cf7c', '2018-11-19'), +(28, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UHSFdFHIxljNWauinaSY', 'aJptUJKumJ/ZxlirocqiWX2Yp9Gbm94=', 'ebRZZmY=', 'apppYGM=', 'eqx6hHZ5iIOztpCBdad4foo=', 'e82dmZaqU3fJ06rCmdeo', 'Z5ZZZWVYY2mEmGiBYpNU', 'm82dmZaqYZfJ06rCmdeoeZWZmsajapuSnqo=', '46.7969869', '1.6914131', '61074af86d746360d4431c734fcc4240', '2018-12-06'), +(29, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UIehn53JgZzGUrajrqSm', 'b4SanJ373JaEgYrQmcemWX6YnNKqqygN', '', 'aptqYGE=', 'i7OOgoQ=', 'hM2nmZaqU3rXwprGns6Z', 'Z5ZZZGhYa2mElmmBY5g=', 'oNeakpakn5aSzqHPm8emeZWZmpCqptrWq2bHqA==', '47.417464', '0.7060995', 'ddf443941a98d1ed6a359cd774b69a56', '2018-12-05'), +(30, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmbyVmcklh2mcXOmtOXgpieUoD8DKqgytarWMaqUpzHWaOLeqKloaaS0sKsgZbHVIWhnKuDm6uFp6Cd0w==', 'aJZZoqadU3fWwqYk2dGdrFJ1os+iptrc', '', 'a5VpYGE=', 'ebCIeYQ=', 'fdaanpSjU3Ssonqih66I', 'Z5ZZZWVYamWEkmiBapI=', 'nZKcmJKalKbQ1XjEmMNoamCZqw==', '47.6079918', '1.3225097', '61074af86d746360d4431c734fcc4240', '2018-11-08'), +(31, 'eMealPThoJrJgYfTniXdmqCmWbelrNfX', 'eqp6UJWdU53FgZvJk8+Wq5dTncipV9In4azKm6Srgp6rhJ2VUaRaktbVodST0JWtUpeug4KmztadrA==', 'bISrpZZYdpnF06TGpYKE/Nuartw=', 'ebRZYWpqag==', 'a5lpYGo=', 'hraFdXKGhlGnpnymioJl', 'gSfiovTsoJaErIepgA==', 'Z5ZZY2lYaWOEmG2BZJs=', 'oZKkn5mmc5TKwpvOZpdin6Q=', '41.2033216', '-77.1945247', 'ec809147d26e323f67ed7c2ef10b8c6a', '2018-11-20'), +(32, 'eMealPThoJrJgYrGm8+n', 'eqp6UHqmp5bW0arQUsaZWZ6UWbCXqdPJ', 'apZZoqadU3PJz6LCn8uiWXilmtGho87S', 'erdwYGFqZA==', 'bJVpYWc=', 'eqx6fICGhlGpr1ikeqOBiXN6h6g=', 'jSfioqCmnKLZxlixe6eGfoY=', 'Z5dZYmdYaWqEk22Bapc=', 'rcmrn5+hpKbJj6jKl9SZrXKUpdCbmJLKp6rOl6ah0aeqkW5hX56l', '48.9478264', '4.3445825', '02eed74125811bab84284d9727ca2ecf', '2018-10-26'), +(33, 'eMealPThoJrJgXvQpNWZ', 'eqp6UJWdU3nF1qzGUqWjq6WYWa2bmNORgpnEp6ed1VmFzZyfnZmc', 'V9aopaWdU5XZgY7Kns6VoJc=', '', 'aZRvYGE=', 'fbmLeXKGfA==', 'j8WvmZaqU325pIGigKtU', 'Z5hZaWZYaGqEk2iBZZI=', 'mtOnpJKbp3HHx5mTlJCaqw==', '42.657717', '9.4264932', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(34, 'eMealPThoJrJgXvQpNWZ', 'esmnpKOdU5XJgX7QpM+VrZuip4OanNiEeajRqJem1qKqhI6emq6Yo9fKrMKb1JlZl6FZ1fngzM2npoF5oarVng==', 'V6WvlZ+tmFHI1liaUtWZqaaYpsWonIWunZnPVoan16yqxa1QdX2GcrK1gYE=', '', 'aZRrZWE=', 'erOLhHY=', 'esyrmaSsoqHMxli0hrGGens=', 'Z5hyZWVtY2OYmA==', 'qtioopKhc5TKwq3Pm9iXqKSmnpGcqQ==', '42.3004713', '9.1533506', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(35, 'eMealPThoJrJgXvQpNWZ', 'esmnpKOdU5XJgZ7QpM+VrZuip4OanNiEpfsKqpud1KxXyJ5QnZlTdNPTq8ZSxqlZhaid', 'V8ehlZ6hoVHIxljNk4KHqaGmmteX', 'g82epVGcnKWEo5nElcujnJqc', 'aZRwYGE=', 'eK56c3SBglGnxpzGqoJkcg==', 'hKWTeXaKeA==', 'Z5hZaWZYZWSElmuBY5Y=', 'mtGaqpqdpZakxJ7OX8OempWWotJkptfL', '41.947985', '8.7568963', '1094d1a4a6c4f2bedc2e182cff710b53', '2018-11-22'), +(36, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UHmhn5LN052BlsdUfJqUq8elpdPJrFg=', 'aoScmJalnJ+ExZ2BnsNUhpOfnNKjmco=', '', 'aZlpZGM=', 'eamMcX97gn+EpH2ld7o=', 'h8WtopqbnlGxooGohKeIWQ==', 'Z5dZaGJYZ2KEk3GBaZJU', 'mtOnpJKbp3HHx5mOmsugmpulnpCanJLHoJnTmqGm0J6rkp+i', '47.2258284', '5.9858097', '3d96a8c4331032fc1a092f31a2e3e3e5', '2018-10-30'), +(37, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UJWtU4HF2quBlsdUhqGhrcX54NHNmarF', 'aISrpZZYl5bXgX7T9QqmnqVThdijoCgMqp0=', '', 'aZlrYGE=', 'eamNeICGdoC5s4w=', 'fcWbopqbmFG0qn+2d7Y=', '', 'ndSil6adp3HHx5mOn9GirZSYpcyXqcmSp6rI', '47.5391623', '6.8119951', '74464207194c0688da0c3c7dc9a8e442', '2018-10-29'), +(38, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UJWtU3vZ05k=', 'aZdZoqCtp5aExZ2BftGirFKfnoOJmNrSoZ3T', '', 'ap1uZ2E=', 'fqmPeX9/eIo=', 'esyrmaSsnJLSgYSih7R5eoc=', 'Z5dZaGVYZ2iElGuBaZQ=', 'msqalKaiqKPFoZnTpsunmqCUrZCZptLYp6HUZJiq', '46.643655', '5.5023766', 'f27541a7bbbf0fe4be6af45a0568952e', '2019-02-06'), +(39, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6fXJYl5aEzZmBesOprZdgjMT569PJ', 'bIR8mJalnJ+Exa2BhsOgnqSirQ==', '', 'bpRpYGE=', 'jamMf4aE', 'g9Onk5mZoKGEqZ3PpMthg6GmntOe', 'Z5dZaGVYameEmmuBa5U=', 'n85nnKCmlpnFzqihk9SooqWUp8SqZMjTpazQn6VmyKs=', '47.6341356', '6.1546817', '12ae0b0ae2bf3c6c0e7515d1e23e2840', '2018-12-13'), +(40, 'eMealPThoJrJgXrGpcOi/Nmipw==', 'eqp6UH6toZrHyqjCnoJ+mpWeoshWe9fTrZ3V', 'aYSrpZZYhZbSJOGBdcOnrJuh', '', 'cJRpYGE=', 'eamFdoCKhw==', 'fdb82ZX73KPNxFikgbCIi3eFfrY=', 'Z5dZaGVYZ2eEl2uBZ5Q=', 'nceonqWqmKPJ1HjOk8umopdgm8iindTWrGbHqA==', '47.6404731', '6.8789795', '7372a5a67a3ab6cd02def62ca87acba4', '0000-00-00'), +(41, 'eMealPThoJrJgYrQp8ei', 'eqp6eXZYl5aEt5nNUsaZWYSYrsyi', 'a5VZoqadU5XZgYjCpYKYnqVTgcirqcrX', 'erdZYWFqY2Y=', 'aZtqYGM=', 'jaWFUHV9U4OptoGtUqV5fXeL', 'g8WuopamlpaEpXmzhLGGjQ==', 'Z5ZZY2NYY2qElGuBaZk=', 'o8WuopamlpaSxZnTpNGmrXKWn8SfnJPKqg==', '49.2729693', '1.2054582', '7c4412d82e22654dd12e75bacb2c5b45', '2018-11-09'), +(42, 'eMealPThoJrJgYrQp8ei', 'eqp6UHSFU3XNxqjRlw==', 'V4Q=', 'ebRZZ2Fp', 'bpprYGE=', 'e61+gIF9', 'hcWinZJYdXa2qoe2dap5WX90jLZ7g7Gz', 'Z5ZZY2ZYa2WEk2iBa5k=', 'pcWinZKamKPN0K3Emsd0nJ9gcJlkndc=', '49.9244444', '1.1147888', 'cfdd1f899002b0d24282723ac0d2975a', '2018-11-09'), +(43, 'eMealPThoJrJgYrQp8ei', 'gKp6UH6ZpZTJzVi0k9eqmpmY', 'aJVZoqadU5XZgYzTodClrpen', 'ebRZYmZu', 'bppxYmY=', 'hLOHhFGLdHqytViie6mCeoBTfKh6fL0=', 'gcmanl6ClJTV1p3UUql1h4GB', 'Z5ZZY2ZYaGOElW2BZpo=', 'ocmanl6ilJTV1p3UYMmVp6GhecycmJLWp63GpGCe1A==', '49.469372', '1.076112', '72cdea9b4681c88de23de0bdcf5761f9', '2018-10-31'), +(44, 'eMealPThoJrJgYjCpMun', 'eqp6UHedpaPFz5zK', 'aZxZoqadU52LoprD9QtUgKT24sqloNfJ', '', 'bplpYGc=', 'h6WLeYQ=', 'itOpmJqdU4OtpICwhw==', 'Z5VZZWZYaWaEmGyBZ5dU', 'qtaik5mnqHHHxKGOosOmoqVgosecZcvW', '48.8475221', '2.3253994', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(45, 'eMealPThoJrJgYjCpMun', 'eqp6UH773JUnCqrKlQ==', 'aZRZoqadU34nCpwk29SdnA==', '', 'bplpYWg=', 'h6WLeYQ=', 'gNaio1GEeIGwooyzdw==', 'Z5VZZGNYZGOEl2qBYpo=', 'oJKllaGklKXWxnjEmMOhnpaYq8yZZcjTpQ==', '48.891986', '2.319287', '2114cb7d9648c86fd95c84f70eb8b113', '2018-10-26'), +(46, 'eMealPThoJrJgYjCpMun', 'fMeonJZYl5aEsZnTm9VUnZemWdD54NnNnarUVpadgqWYhK2Rk6SY', 'aJtZoqadU3vFxKnWl9VUgpSYq9c=', '', 'bplpYWg=', 'h6WLeYRY', 'hKmHcYaEh1Gt1KXCl84=', 'Z5VZZGVYY2qEkmqBYpdU', 'oJKmlZ+ZqJ3YoZ3Rn9aooWCiq8o=', '48.8887187', '2.2904314', '61074af86d746360d4431c734fcc4240', '2018-11-29'), +(47, 'eMealPThoJrJgYjCpMun', 'eqp6UJWdplHRJOHVm8emrFKXnoOimIXLmavVqKGm0aagyVldUXt4gbawew==', 'aJ1ZoqadU3jT1prGpg==', '', 'bplpYWo=', 'h6WLeYQ=', 'fNGmkZ+tmJ2EsXmze7U=', 'Z5VZZGNYZmqEmGmBYpc=', 'nNSaopqrc5TJ0arQlZCXqJ8=', '48.8855215', '2.3899299', 'c1e717d60c27747c4a95978280cf46ad', '2019-02-07'), +(48, 'eMealPThoJrJgXvT9Quonpuf', 'eqp6UIaMeHQ=', 'aIR6ppamqJaEq6fJk9CinqVTgNiqnNPGnarIVoV9tIuAtw==', 'erdZZ2FoZ2Y=', 'bptwZ2c=', 'hKWLfnZYf3KEt3mtfqd5WXV4faiOV5k=', 'fcmhlFF6eH+3ooGl', 'Z5VZZmFYZmiElWmBZZI=', 'ncmhlF+amJ/XwqHFctWZoqCYntejmNfSnWbEmZtmyKs=', '48.8373195', '2.7948343', '7b0d08014d8f69902a1b09e0d7aa1481', '0000-00-00'), +(49, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UIWqlJvJxKzQm9SZWVp0rNalms7FrKHQpFKM1JqhyZykoKGlloSnp9Ofw6iioaFi', 'h7B6c3ZYeYOlr3uwe7VUi3N1fq93gLg=', 'mpOoUH2xlvQNxljFl9VUpvXcrcybqdiEnJ2BolmgJe2ryaWclqqcloTGrIGW11StoairzKmkyg==', 'bpxraGE=', ' frmScX97goa2tQ==', 'itj82aGglJ/JgXymf6OGhXc=', 'Z5VZY2FYbGeEkmqBYpM=', 'n9OtlZ2kmKPNxmXTl9WomqelmtefptOkm57CqqSZzJ6a2KiZo51hl9Y=', '48.7845231', '2.0500051', 'ce53ee6d0eed45ca63a24c9020d656c8', '2018-11-05'), +(50, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UJWdU53FgXvJk8+Wq5dTncipV9In4azKm6Srgp2c11mJp52fmtLGqw==', 'aJtZcaedoabJgZzWUqn34qD24tWXo4WxmabIn6A=', '', 'bpxpYGE=', 'jamLg3KBf32ptA==', 'hc2cn52ZplGyqo6mc7c=', 'Z5VZY2pYZ2SElWuBaJc=', 'pZKnmaeZqHHHx5mOlc+tZ5il', '48.8137234', '2.1389775', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(51, 'eMealPThoJrJgY7GpNWVop6fntY=', 'fcWcpZ2s9tqExZ3UUq/34qacntWpV8nJWKSIe6Wr0aelyQ==', 'aoScmJalnJ+ExZ2BnsNUgKSUp8qbV6vJrVitpaeh1Q==', '', 'cJVpY2Y=', 'fLqLiVF7eHWpuQ==', 'it2lppqdU36tr4e0hg==', 'Z5VZZmFYamqEmG2BZpg=', 'qpKmmZ+npqWkx5zOl5tlZ5il', '48.6224534', '2.4574571', 'b283b4b190eb0cda2b0e41219832c65d', '2018-10-29'), +(52, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UJWtU37T1qTKoIKYnlKfmoOGo8bSm6DG', 'a5lZoqCtp5aExV+ipNajp5ao', '', 'cJVqZWE=', 'hraGf4plf3KRs4G3e6eGfg==', 'gcmanlGEqJSEooWqc7R4', 'Z5VZZmVYbGWElnCBa5pU', 'pMWio6CmYJfFzqHNm8Ognl+Wn8R2rsbSmZzQpWCe1A==', '48.3982307', '2.1444119', '61074af86d746360d4431c734fcc4240', '2018-10-29'), +(53, 'eMealPThoJrJgXvT9Quonpuf', 'eql/cXJYiZrQzZ3Rm9Cong==', 'V8WvlZ+tmFGuxpnPUqijrqSansSrmw==', '', 'cJdtYmE=', 'ja2FfHaIfH+4pg==', 'fdaanpShplGmooqje6eGWQ==', 'Z5VZZGpYaWSElWqBZpRU', 'ndaanpShpl/GwqrDm8emeZWYn8SXZdPJrA==', '48.9605653', '2.5527031', '33fbfe37816898b8e6a9e1b02060c9f6', '2018-12-05'), +(54, 'eMealPThoJrJgY7GpNWVop6fntY=', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYxq5XupqcUZxagM3UnQ==', 'aISappamqJaExa2BgsOmnA==', '', 'cJlpYWY=', 'eqmLd4pYg4CytYeqhadUfHd3frs=', 'ismbkaSsnJbSgXvJm8WjoqWhng==', 'Z5VZY2VYZmaEmWiBZJo=', 'msyik6Chpp/JoZvOk5tpZ5il', '49.0357379', '2.0710143', 'e4347a26b6439290406070a20316aed7', '2018-11-13'), +(55, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqp6eVGAmJ/Wyliuk9SooqA=', 'aZZZkaedoabJgZzGpYJ7nqD249ep', 'ebRZYWJq', 'aJVrYGY=', 'g6mTeXiGdH+EpIezdKt5i3eGWaZ7e6q8', 'idOuqFGKmJ/F1pw=', 'Z5hZZmlYZGKEk2qBY5U=', 'qZKrn6awc5TKwqGOk9eYnmCZqw==', '43.200503', '2.7577759', 'c46139f1f997f63760da0170f35f15f7', '2018-10-29'), +(56, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqeCUISNd1GqsIquc7Z9iIBT', 'cJ1ZeZ6olKTXxliilsOhWYWgotee', '', 'aphtZ2g=', 'h6mLf32LU3TJxZ3Z', 'fdb82ZX73KPNxFilc7SEgXuB', 'Z5hZZmhYZGSEl3CBZ5I=', 'nZKdkaOom5rSoavWlsijq5+UrcylpZPHm6GPnKQ=', '43.5804822', '3.9395375', '1e47c7868471a34a31538ec39657ad30', '2018-12-10'), +(57, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqp6UH+hlqDQwquBc86WmqCi', 'V7aulVGFnKPFw53Cpw==', 'ebRZYWhu', 'aphrYGE=', 'iqmNdQ==', 'hM2cmJakU3eps4qqd7Q=', 'Z5hZaWpYaGiEl2iBZZc=', 'msqaXpKblqbJyqShlciVr5ufpcianNjJrJ2PnKQ=', '43.4107546', '3.6915638', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(58, 'eMealPThoJrJgYXQoNaknp6fosio', 'eqp6UHmdoaPdgX/KpMOg', 'V756UKOtmFHIxljNWcOkqaSYp9efqtjFn50=', '', 'a5xpYGE=', 'hKmHdHY=', 'fdb82ZX73KPN0q3GUraVm6ennsSr', 'Z5hvZmVxY2Wblw==', 'ndaelJaqnKLZxmbVk8SprZeUrqOZpMaRpKfbm6SdkJ+p', '44.5324542', '3.469907', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(59, 'eMealPThoJrJgZzGUq6dpqGantY=', 'eqp6UH2dplG4053KrMdUj5ehrdY=', 'bJVZkp2cU5XJgaTCUq6pp5OXng==', '', 'aJ1pYGE=', 'i7mFfHY=', 'hc2cn52ZplG20K3Xl86jrg==', 'Z5lZZWZYZWGEmG2BZJRU', 'pc2cn52Zpl/W0K3Xl86gqKdznMmXaJjanabVqWCb0aY=', '45.2676776', '1.7854646', '61074af86d746360d4431c734fcc4240', '2018-11-23'), +(60, 'eMealPThoJrJgYbCoMWtZn+Yrd0=', 'eqp6UJWdU53FgYrGpdaVrqSUrcylpYXInVium6eq1qGchJ6kUYWipMnNpMY=', 'aZhZoqadU3nJz6rKUqSVs5uh', '', 'bJhpYGE=', 'haWHc4o=', 'itOpmJqdU4uzs4amhA==', 'Z5dZaGRYZmaEmm+BZpI=', 'qt6oop+dpV/Hx5mhodSVp5mYZ8mo', '48.6964804', '6.194801', '61074af86d746360d4431c734fcc4240', '2018-11-21'), +(61, 'eMealPThoJrJgYzQp86jrqWY', 'esmnpKOdU5XJgZ7QpM+VrZuip4OXrN2EhfsKqpud1KxXyJ5QnV90o80k4MiX', 'aYSrpZZYfZbFz1iuodegoqA=', 'g8WbkaOqmA==', 'Z51pYGE=', 'fbOCiA==', 'it2lppqZU4G5q3mtUo9UgYGBiLV3iw==', 'Z5lZY2VYY2qEmXCBY5JU', 'qpKppZuZn17M0KbQpMOoeZWgZsSooMrLnWbHqA==', '42.9830383', '1.613809', '61074af86d746360d4431c734fcc4240', '2018-11-19'), +(62, 'eMealPThoJrJgYzQp86jrqWY', 'eqWGgIaLU3WptFiud7Z9foSGWZBWes3FpZrTm1Kcx1mEJ+Kkmp2lpITGrIGWx1SlWXSr15+qxtKZrIGal1jOYHjanqmjp6E=', 'V4SJkaObU5WLwpvVm9idrfXcrIOanIWnmabVl6SZ0KechGZQg62YUcjGq4F/Jd2tm5ir1g==', 'erdZYmRraGE=', 'aJZpY2Q=', 'idOdlatYlpbIxrCBYps=', 'eNmr89qknJaErY2kc7A=', 'Z5lZZmZYamiElm6BY5o=', 'msqacJSlYJLaxrHTodBin6Q=', '44.349389', '2.575986', '61074af86d746360d4431c734fcc4240', '2018-10-29'), +(63, 'eMealPThoJrJgYzQp86jrqWY', 'eqp6UHSnoJ7J05vGUseoWYWYq9mfmsrXZXmnd3V9tQ==', 'aZVZkaedoabJgX/GodSbnqVTe9WXqtjJpqs=', '', 'apVwYGE=', 'ebB6d395dg==', 'e82dmZaqU37FxKDCpMY=', 'Z5lZZmNYamWEmGuBaZQ=', 'm82rlZSsnKDSoZvHk8SgmpmhmsZkptfL', '43.648819', '1.3780513', '61074af86d746360d4431c734fcc4240', '2018-11-29'), +(64, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgYUk29adnqSmWcerV6zJqqs=', 'aISappamqJaExZ2BnsNUi/XcqdiYo87VrZ0=', '', 'apZuZWE=', 'h6WPeXY=', 'fdCoopamlpaEsX2zd7U=', 'Z5pZaGFYamSEmWyBY5s=', 'nZKplaOdpnHHzpmOmcemrGCZqw==', '43.6052642', '0.594069', 'ebb1ace52fbe939ff1984c453942f12d', '2018-10-31'), +(65, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgaUk29adnqSmWcerV7HTrFg=', 'V9aulVGLlJrS1Z2Bc8+Wq6GcrMg=', '', 'a5ppYGE=', 'eqWBf4OL', 'hMWrmZZYdXaltnyze6eG', 'Z5lZZmZYaGSEk2mBYpI=', 'pJKblZKtl6PNxqqhlc9hnJObqNWpZcvW', '44.4683393', '1.4543277', '05506ffed344fdf6e0fe0a060dd33f37', '2018-11-19'), +(66, 'eMealPThoJrJgYzQp86jrqWY', 'eqp6UIP73JjN0KbCnoKYnqVThqmI', 'aJhoYWdYg53FxJ2BltdUhZOpqMyo', '', 'b5VvYGE=', 'ebZ+foQ=', 'fNGmkZ+tmJ2EpISmhLE=', 'Z5lvY2ZvaGaUmg==', 'nNGmkZ+tmJ2SxKTGpNF0ppilZ8SpqtSSnqo=', '43.889586', '1.9091807', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(67, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgYUk29adnqSmWcebqoWsma3Vm6VlsrKpJ+Ke9OGYpA==', 'aISrpZZYg5rJ06rGUq6VrfXcnNL539fJ', 'kdOnlVF6lKTYyqTNk8U=', 'bZlpYGE=', 'i6WLcnaL', 'h8Wsk5KkmFGwooysgbmHhHs=', 'Z5lZZmNYZ2WEkmmBapo=', 'p5KlkaWjoqjXzKGhlc+Vb2dhn9U=', '43.2201642', '0.0397264', '2ee878d16273100170e084a7ce7137f5', '2018-11-22'), +(68, 'eMealPThoJrJgYzQp86jrqWY', 'jNKippaqpprYJOGBhCXdoJuip8SinIXInauBg/Xh1qKc1qxQlqxTlcmBpIhz1KiipZSnxKpXkoR5ptWboKbHWZvZWYSSqqE=', 'aJVrUIOnqKXJgZzGpYKInp+jpcybqdg=', 'erdZYmNrZ2E=', 'b5VpYmE=', 'eLB7eVF7eHWpuVia', 'hM2cmJakU3Opoo2jgbd3gXeFWQ==', 'Z5lZZmRYZ2mElWuBaJI=', 'pM2cmJakYZPJwq3DodeXoZelecajZNnFqqaPnKQ=', '43.9211556', '2.2166421', '61074af86d746360d4431c734fcc4240', '2018-10-29'), +(69, 'eMealPThoJrJgYzQp86jrqWY', 'fMeonJZYl5bXgaUk29adnqSmWZBWequlWJzGVoaZ1KdkhJ6kXn+Uo9PPpsY=', 'aJVZoqadU3bWz53UpoKBnqSWmsefnNc=', 'ka1ZfqCqlw==', 'b5ZpYGc=', 'hLOHhHKNdXKygXumdqeM', 'eNmdopaxU3WptIyigKk=', 'Z5lZZmRYY2SElmuBZZs=', 'mJKdlaSslJ/LoZ3Fn8WammplZ8mo', '44.0384389', '1.370176', '15e48413bc3cfc918963fe6d5983e797', '2018-11-19'), +(70, 'eMealPThoJrJgYTKns6Z', 'jJKLXn5mdF+EtqbKqMemrJun/AxWiSgNn6HQpJOkx1mbyaxQfvvcpc3GqtRSx6hZlphZz11419ihq8Kkk6yCnZyEi/Pan5yg0oGG0KTGVImTpmbHm2SoxaSZyqk=', 'cISrpZZYf/QN0KaBhtSppZuh', 'erdZY2FpZGU=', 'bJ1pYGI=', 'g62FfHZYdnaoppA=', 'edaunqBYh4Opp36mfg==', 'Z5dZYmFYbGeEkWyBa5Y=', 'mZKtopaemZbQoZvOk4+cmqenrMebndfFppvGZJiq', '50.6378834', '3.0658737', 'cc22779401dd2ae37ce59f197d6f691e', '2018-11-29'), +(71, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdVSj1R8k6Cp2KlXyclYfMqdoJ2CpZzXWXKSoaGk', 'aJlZoqadU37FzZzQoMOo', '', 'Z5hpYGE=', 'e62AfnZYf3a3gXqie7CH', 'hcWtmJKknJaEpXm3e7Bhe3OFiA==', 'Z5hZaWNYZmGEmmiBapJU', 'pZKdkaehoV7GwqrQcsWhmqRgqcSZmJPKqg==', '44.1016126', '6.2354999', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(72, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdVSj1R8k6Cp2KlXyclYf8Km', 'aJRZoqCtp5aExZ2BedSVn5icp8ii', '', 'Z5lpYGE=', 'fqWJ', 'gcWcoaadplGxppGmhA==', 'Z5hZaWNYaGSEkW2BZZhU', 'oZKmlaqdpXHHzpnTX9KVnJNhn9U=', '44.5385517', '6.0590623', 'c00d5b3533c7291822e985b696a67efe', '2018-11-09'), +(73, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmA0q2Vo6iloMrGq9Sb0aKnl59ZpqWp1NhYec2mmqfQrJyEhp+mppyW1oFgpKHUo61SeajVo5jZzaem1F8=', 'apdZkp2cU5XZgXvCosuompuhnoN9+g3enQ==', 'h8Wrk1GFlKTXyqTKkw==', 'aJdsY2Q=', 'hKWLg3aBf32pgXumdqeMWWNn', 'esyrmaSsnJLSgY6if6R5i4V+kg==', 'Z5hZaWJYZWKElm+BYpI=', 'oNKfn3GboqPT1WXHodShmqacqNGpZcjTpQ==', '43.3309649', '5.3690109', '74c3b9289c4d4c35cbe189b5a56dcc1c', '2018-12-07'), +(74, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdU=', 'aJdxUHKkn/QNxlill9VUiaScpsis+g3Wnas=', '', 'b5dsY2E=', 'g8lZcpaZqKTXxqw=', 'it2lppqdU4Opt320hg==', 'Z5hZaWVYbGmElm+BZZk=', 'qpKrlaedpqWkxKXCpI+kmpWUZ8mo', '43.1986795', '5.8012885', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(75, 'eMealPThoJrJgYbKlcc=', 'eqp6UIP73JjN0KbCnoKYnqVThibfq87JqquBm6ZYxp5X0GBxo6ycpMXPmdU=', 'V6ehlZ6hoVGr1vsKpMuioKecntU=', '', 'b5dtZmE=', 'g8msUHKqlqQ=', 'e9OmmZ+hpKbJgYSie7A=', 'Z5hZaWVYaWKEmnGBaJI=', 'ndOrnZKsnKDSoZvOk9RhqZOWmpGcqQ==', '43.462876', '6.478446', '61074af86d746360d4431c734fcc4240', '2018-11-26'), +(76, 'eMealPThoJrJgYbKlcc=', 'eqp6UINYiIOxolikk8+krqVTnchWisbNpqyBg5Owy6ag0g==', 'b5huUHSgmJ7Nz1jFp4J4npiZntGaqg==', '', 'b5dtZ2E=', 'iqWCfoVYgHK8qoWqgA==', 'e9OmmZ+hpKbJgYSie7A=', 'Z5hZaWVYaWKEmnGBY5o=', 'ndOrnZKsnKDSmWuhlc+Vq1+jmsaXZcvW', '43.4499896', '5.8509', '61074af86d746360d4431c734fcc4240', '2018-11-22'), +(77, 'eMealPThoJrJgXnKqo+BmqSmnsyio8o=', 'eqp6UHR7fIWEmWw=', 'V6WlnPThmFHIxquBeMeimpumqNGp', 'ebRZYmFuaWE=', 'b5hpY2M=', 'eLqCd3+HgVGnpnymioJn', 'etOrmZ+dU36zr4aqd7Q=', 'Z5hZaWFYZGSEmW6BY5U=', 'mtGonp+hmKOk15nWlc6prJdhnMafZcvW', '43.927211', '4.848207', '70d1ac0c9c7dea7b9ed04393edf776d4', '2018-10-29'), +(78, 'eMealPThoJrJgYbKlcc=', 'eqp6UH6toZrHyqjCnoJhWXiUnNiiqygNWJzGqVKFJeKrzZ6ipFiXloSkmc+gx6c=', 'bJhmZWdYpabJgZzGUqWVp6CYrA==', '', 'Z5pqZWE=', 'eqWHfnaLU32lgXqwdaV1', 'e9OmmZ+hpKbJgYiwgLU=', 'Z5hZaWhYY2eElXGBaZY=', 'm9OmmZ+hpKbJj6jQoNV0r5ufpchjmsbSpp3UZJiq', '43.5536337', '6.9666735', 'b284612327e77e294d3862b368bc3d7a', '2018-12-04'), +(79, 'eMealPThoJrJgYbCoNaZrA==', 'eq1/cX5ldnelgXymUq51WXWAeoNqaw==', 'V7SlkZSdU3vFxKnWl9VUfJqYrNH54A==', 'ebRZY2lrY2o=', 'a5hyaGQ=', 'iqWCfoV9U325pH2BhbeGWX6CgrV7Vw==', 'eNKnkZOdn53JgYC2c7R4', 'Z5ZZZGFYZGmEmm6BZJo=', 'mMyukaOcc5LW1aHUk9CVraKUstaanNHFpKfKqJdmyKs=', '47.2635081', '-1.4884181', '35edf0d5f3874f6b8fad8d502d4fb8b6', '2018-11-16'), +(80, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UF5YgHe2gYTCUqSjp6CUrsebqc7JWHvJpZ6d1g==', 'V9aulVGcmFHQwlijodCimqeXntWfnA==', '', 'a51sYGE=', 'eqyIfHaM', 'i8yonZKrU3OprYSwh6OGfQ==', 'Z5ZZZGJYamaEl2iBZZJU', 'i8yonZKrYXPJzaTQp8OmnXKgn9VkmNjXp2bHqA==', '47.0513362', '-0.8269784', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(81, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UJWdplG6yqTNl9VUnZdTpcRWhMbdnabPmw==', 'ap1ZkaedoabJgXvJk9Cusg==', 'ebRZZGFqZmg=', 'bJdpYGM=', 'g6WPcX1YdnaoppA=', 'g8Wuopamp1Gmpou0e6eGfg==', 'Z5ZZZGRYaGqEkWuBaJI=', 'o5KblaSrnJbWxnjEmMOqpmCWqNA=', '48.068323', '-0.7587154', '3f76c9354dabc0f77a70b69be41228bf', '2018-10-31'), +(82, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UISZnJ/Yxlikk9acnqScp8g=', 'aZRrUKOtmFG3wqHPpoJ1rpScpw==', '', 'bpZpYGE=', 'g6lZfXKGhlE=', 'e9OmmZ+hpKbJgYWihbWDhw==', 'Z5ZZZGRYZmqEkmyBaZQ=', 'pMWso6CmYZWkxqzUX9WonpWUrcubqc7SnWbHqA==', '48.0226076', '0.1787404', '254a17eb2c6e70f44874172b7b19b3e9', '2018-10-26'), +(83, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UHR7fFGwpliuc7CHWYV0i7d+fA==', 'aJdrUKOtmFGsxqbTm4J3oZOgqcylpQ==', '', 'bpZqYGE=', 'g6lZfXKGhlE=', 'htCippqdpVG3poSngbSI', 'Z5ZZZGRYZ2GEl2iBZ5I=', 'nsmrkZ2cnJ/Jj6jCp8+dnqRzpcijmNPXZpvEn2Ce1A==', '47.9820608', '0.2340803', '61074af86d746360d4431c734fcc4240', '2018-11-29'), +(84, 'eMealPThoJrJgYbCoNaZrA==', 'esmnpKOdU5XJgX7QpM+VrZuip4OaXqbUqKrGpKah1VmExaKjoKZTd8XOoc2bw6Ce', 'V7aulVF/opXF05w=', '', 'b5lwYGE=', 'iqWCfoVYgHqnqX2tUq+Dh4ZThqiIerq2fQ==', 'g8Wuopamp1G3sIqqgA==', 'Z5ZZZWJYaGiEmWmBapNU', 'o8Wuopamp6TT06HPcsWamqWUotGqpM7HoJ3No6Gm1qac1pylo51hlNPO', '46.8316959', '-0.8862725', 'fd798d9d3e9cebea7b30312a01191569', '2018-11-23'), +(85, 'eMealPThoJrJgYTKns6Z', 'eqp6UIP73JjN0KbCnoJ8mqenrIOanIWqqpnPmZc=', 'aZ1yUHOnqJ3J15nTloJ4nlJ/nsiaqg==', '', 'bJ1pY2Q=', 'g62FfHZYdnaoppA=', 'g8WuopamlpaEuIGihLY=', 'Z5dZYmFYaWSEmnCBY5M=', 'o5KwmZKqp3HMwq3VpcaZn6SUp8abZMjHoWbHqA==', '50.6402791', '3.0755124', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(86, 'eMealPThoJrJgXnOm8eirA==', 'gLKNdYN+goORtIGi', 'aYSrpZZYiZLIJOE=', 'ebRZZmJvZGk=', 'b5RpYWg=', 'eLGCdX+LU3SppX25UpJl', 'f8Wso5KmU32looqifA==', 'Z5dZYmNYa2OEkWiBY5JU', 'n8Wso5KmYZ3FwqrCnKKdp6aYq8mlqZLXoZmPmaGl', '39.6937087', '-104.7871004', '61074af86d746360d4431c734fcc4240', '2018-12-10'), +(87, 'eMealPThoJrJgYjQm9adnqSm', 'eqWGgIaLU3Stp4ex', 'V8aopZ2dqZLWxVi0k86qmpaiq4N3o9HJppzG', 'ka1ZnvPoZg==', 'aJpsZGE=', 'g4uCg319U3WLpouxc6mCenU=', 'g8Wuopamp1Gwoo6qebB5', 'Z5lZZGZYbGGEkmuBaJU=', 'o8Wuopamp1/Qwq7KmdCZeZWcn9KmZcvW', '45.6697695', '0.2038398', '5e557f346d8f23d817c5e11a8a566669', '2018-11-20'), +(88, 'eMealPThoJrJgYjQm9adnqSm', 'esWmoKarU5XJ1Fiu9QuoopelrIOanIWyoafTqg==', 'aZVZoqadU5XJ1Fipl9SWop6fmtiu', 'ebRZYWFwaw==', 'bp1pYWE=', 'ha2IgoVYdnaoppCBaw==', 'esyrqaSsmJ2ErX2jc7U=', 'Z5lZZGpYZmSEl2uBYpk=', 'mpKllZOZpnHHzpmOoMujq6Zhn9U=', '46.3347157', '-0.4163963', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(89, 'eMealPThoJrJgYjQm9adnqSm', 'eqp6UJWdU53FgXuke4KYnlKfmoOMoMrSpp0=', 'V4SGkZqrop+ExZ2BnsNUn6GlpsSqoNTS', 'aJZpUKOtmFHI1lixodSonpOo', 'b5ppYWM=', 'h7OChHp9hYSE', 'icWpmJL73p2Ep32zhKd9i3M=', 'Z5lZZGpYZmiElWyBaZU=', 'qcqeoqOdnKPFoaXFmJpqZ6CYrQ==', '46.6110428', '0.3460975', '61074af86d746360d4431c734fcc4240', '2018-11-03'), +(90, 'eMealPThoJrJgYjQm9adnqSm', 'eqp6UJWdU53FgXvJk8+Wq5dTnchWhCgNrKHGqKVYx61XyJ5QnV90o9jKq8Kgw6hZlphZz5dXqMyZqsakpp2ChpjWoqSapZg=', 'aJRwUJKumJ/Zxlium8Wcnp5TfNX54NXJma0=', '', 'aJtpYmU=', 'g6VZgoB7e3awrX2BlceYnqpTag==', 'ebN9eX9YgHawooaqdw==', 'Z5pZZGlYZWGEk22Bapg=', 'pJKbn5WhoXHHzmXNk9SjnJqYpc+bZcvW', '46.1491252', '-1.1582992', '39c271c1b376322d0e238b0fba814fc6', '2018-11-19'), +(91, '', 'eqp6UIR9g4OEooavgbB1klJjcJRmZw==', 'bJxZc3l9gHqygXymUrh9hX54fax7jA==', '', 'Z5tqYGE=', 'eLKHf395jA==', 'etCamaOdU3TMwqTNk9CYnl+CrNikmA==', 'Z5hZZ2NYa2SEk2+BapI=', 'mpKcmJKkn5LSxZ2hpcekq2CYndg=', '45.2475471', '4.6903683', '61074af86d746360d4431c734fcc4240', '2018-11-07'), +(92, 'h8WrmaQ=', 'eqp6UHOdn53NwqrF', 'aJduUKOtmFGmxqTNm8OmnQ==', '', 'bplpYWk=', 'h6WLeYQ=', 'i8yilaOqrFGxsI2ve6eG', '', 'q8yilaOqrJ7T1qbKl9Rta3KapsSfo5PHp6U=', '48.8962512', '2.334467', '57092eb618e27d6651cc7485be8c417d', '2018-11-19'), +(93, 'eMealPThoJrJgYTaodA=', 'hKqLUH2dU3fTz6zCoMug', 'aJlxUKOtmFHIxljNWaebpZumng==', '', 'bpdrY2E=', 'iqWCfoVYdH2mooaBfqeNjIV4', 'gaV8f3NYgZrH0KTCpQ==', 'Z5hZZ2pYZmSEkmiBZJY=', 'pMqrXpenoaXFz6HNcs+aq2CUrNalZcvW', '45.5821594', '5.9560617', '3918700da1f1d8a92b017f0c7295aa8c', '2018-10-26'), +(94, 'eMealPThoJrJgX/Tl9Cjm56Y', 'g8WnkaRYdJ/I0/sKUqiVq5mcntU=', 'V9aopaWdU5XJgaSIcyXdq6GXq9KjnIWR', '', 'Z5trYGE=', 'g6WHcYQ=', 'V7uinJ2hlJ6EuHm7gKeG', 'Z5hnZ2ZmZmeSkm6PYpI=', 'rs2lnJqZoF/bwrLPl9R0nJiUZsSom8rHoJ2Oo5eqy52g06eRnZ1hl9Y=', '44.5400709', '4.3631669', '5b86d5b91733685eba8cc41394ee25fe', '2018-11-19'), +(95, 'eMealPThoJrJgZzGUq6tqKA=', 'eql8f3dYW3TJz6zTl4J3qKCmrs+XoNfJWJzGVnin1KaY2KKfn1iDo9PHndSly6OnoJilz5tXyclYpIh3m6aL', 'bJZZkaedoabJgZzGUs6VWX6cmybfqcbYoafP', 'ebRZYmFx', 'Z5VuYGM=', 'eLF7dYOBeIaEpoaBdLd7fotTfKh6fL0=', 'gbOGcYN8U4S9rY6ie7A=', 'Z5tZZ2JYammEl3GBZpM=', 'qs6onZKql3HHxpvQmJCVrKWiZ8mo', '45.958436', '5.359556', '53ba6c2e9bfeb8214645c3bfeb3d2f28', '2018-10-26'), +(96, 'eMealPThoJrJgX/Tl9Cjm56Y', 'eqp6UHSdoaXWxljFl4J6qKSgmtefptOEha3Nqpuo1KhXqKvz5aWYUaXTnCTaxZye', 'bISrpZZYl5aEzZmBhcOWpZv24dWb', '', 'aZprZWE=', 'g62PgoCGU4S5s1ilhLGBfg==', 'edaunqBYd4a0toG0Ug==', 'Z5hZZ2ZYaWKElm6BY5Y=', 'm9mppZqrlXHHx6XFk5Caqw==', '44.7770053', '4.8406238', '6d50e0afb9ab1ab5a19c17a47bce75b5', '2018-11-19'), +(97, 'eMealPThoJrJgX/Tl9Cjm56Y', 'gLGN', 'aJRZoqadU3LNzvsKUrKpqZuh', '', 'apxpYmo=', 'frZ+foB6f3aEpH2ld7pUaw==', 'esyrmaSsoqHMxlimhqN9kVI=', 'Z5hZZ2dYZWmEk26BZ5NU', 'msyrmaSsoqHMxmbGpsOdsXKaq8ikpsfQnWbEmZtmyKs=', '45.1617092', '5.7236575', '61074af86d746360d4431c734fcc4240', '2018-10-26'), +(98, 'eMealPThoJrJgX/Tl9Cjm56Y', 'fKqGcVFgeKTUwpvGUqijq5+UrcylpYXInauBg/Xh1qKc1qxQlqxTlcmBpIhz1KiipZSnxKpg', 'aJRZoqadU4TFyqbVX6qjp6Gl/Aw=', 'esyanaGen5bZ06GB', 'apxsYGg=', 'ebOOgniHfH+Eq3mtfqt5jlJ2fqd7jw==', 'fcWbopqbmFGl06vClQ==', 'Z5hZZ2VYZ2SEl2+BYpJU', 'ncWbopqbmF/F06vClaKZn5+UZ8mo', '45.6068122', '5.2706284', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(99, 'eMealPThoJrJgZzGUq6tqKA=', 'eqp6UH19hlGxsI2te7B9foSG', 'aZxZoqadU5XJ1FiuodegoqCcntWp', 'ebRZZmFobGk=', 'a5ZpYWE=', 'iqWCfoVYeIWtpoavdw==', 'h8yinJqoo5aEt53ToMOt', 'Z5pvYWNobGibmg==', 'm82rlZSsnKDSoZvHk4+hqKefotGfnNfXZpvQow==', '45.4198419', '4.4025399', '08963a1a39f274f80aaaff18abd4a6e1', '2018-12-20'), +(100, 'eMealPThoJrJgZzGUq6tqKA=', 'eqp6UJWtU4PTwqbPk8un', 'aJluUKOnqKXJgZzGUqSmopehp9Kk', '', 'a5ZsYGE=', 'hKV7fIo=', 'f8mnoppYdXaltoSqd7c=', 'Z5hZZ2hYZ2WEmWuBZ5hU', 'mcmapZ2hmKaSyXjEmMNin6Q=', '46.0658801', '4.0736941', 'b03219612476443846fcf6f84c1eb17c', '2019-01-03'), +(101, 'eMealPThoJrJgX/Tl9Cjm56Y', 'eqp6UJWdU3jW0KHUqw==', 'aJZvUJSgmJ7Nz1jFl9VUhvXcrcybqdg=', '', 'bphuZ2E=', 'fraIeYSR', 'ismrl5ZYeYa2rXmv', 'Z5hZZWFYamiElG6BappU', 'mtOnpJKbp3HHx5mOmdSjoqWsZ8alpA==', '46.0023467', '6.1571805', '61074af86d746360d4431c734fcc4240', '2018-12-05'), +(102, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UHacqJTF1aHQoIKCmqacqNGXo8qEjp3PmvXhxw==', 'aZ1ZcqCtn5bawqrFUqmpoqanqNE=', 'ebRZZ2hx', 'b5lpYmE=', 'g6VZgoB7e3aEtI2zUruDhw==', 'fNaik1F8dIe9', 'Z5ZZZWJYZmeElW6BZJI=', 'p8WtopqbnJKS0aHEmsemnpOoecSZZNPFpqzGqWCe1A==', '46.6577218', '-1.4335904', '61074af86d746360d4431c734fcc4240', '2018-12-11'), +(103, 'eMealPThoJrJgYbCoNaZrA==', 'eqp6UHR7fFGYmg==', 'aJdrUJKumJ/Zxlill86VraalnoN6nIW4mavUn5mm2w==', '', 'a51pYWY=', 'eLKAdYOLU3SppX25UpJl', 'isWnlKOhoZaEpHmxd655', 'Z5ZZZGJYZWGElXGBa5o=', 'qsWnlKOhoZaSxJnRl86ZeZ+UotGbnNnQp6HTm2CbxaJlyqs=', '47.447389', '-0.5403961', '22c75ccf743c6e1e74eba029d6c75e6d', '2018-11-23'), +(104, 'eMealPThoJrJgXnOm8eirA==', 'eqp6UHt9dH+Eo4e0dbE=', 'a5dZgoZ9U32ltoqmgKZ5eoc=', '', 'b5RpYGE=', 'eLGCdX+L', 'gcmanl5+pZLSJN/Qm9VUfXeGe7KEhaq4', 'Z5dZYmFYZmaEmmiBZ5c=', 'mtOnpJKbp3HHx5nLl8Oim6GmnNJkndc=', '49.887114', '2.2907723', '0966e41cb52de70dfc804ab4c53b48dd', '2018-10-29'), +(105, 'eMealPThoJrJgXnOm8eirA==', 'eqeCUIChppY=', 'aZdpUIONeFGnqXmzfqeHWYWChqSJerQ=', '', 'bZRqaGE=', 'hdOglZ+sU6TZ01iwm9WZ', '', '', 'msqacJSbnF7TyqvGYMim', '49.2696803', '2.4893469', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(106, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVixhYeErnqJuFl0dotTgbCie6aF', 'aoR7f4aEeIels3yBdqdUjIZ0hayEfrelfA==', '', 'cJhsYmE=', 'i6yCcXqL', '', '', 'Z51tYGltZqSkwpuOldSZrZecpZGcqQ==', '48.7672444', '2.4031008', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(107, '', 'fKeIfHZYh3anqYawfrF7goOIfoOGia66fX2Be3WHrn5XrIiEdoR8dramWKVSo4qCeYGIsQ==', 'eLCF87p9U3WptFind7B1goWCh7Y=', '', 'b5hpY2M=', 'eLqCd3+HgQ==', '', '', 'msWmoKarm6DYxqTNl9SdnnKUr8ydpdTSrpnWmZ6t1Z5lx5yZX56l', '43.9273004', '4.8451464', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(108, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ilgYa1Y3eQt4l8tpI=', 'aJlZUHKOeH+5pli0c6uCjV94kbiGfLe9', '', 'Z5VrYGc=', 'eamFfHZ/dIOopmW0h7Rhj3N/jKiIgLOp', '', '', 'mslnYGFpY2GUl3qhk8Vhpauip5GcqQ==', '46.114846', '5.8171664', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(109, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWerSweYqlVoCHp4U=', 'aJdrUJKumJ/Zxlild4KAelKFfrOLebGtiY2m', '', 'Z5ZqYGE=', 'iqWCfoVlhIapr4yqgA==', '', '', 'mslnYGFqY2GZk4+hk8Vhmp+cntGpZcvW', '49.8630025', '3.309587', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(110, '', 'g718dXZYg4Ozp1ixhKuKflKXntZWhKq4gX2ziVKLtlmNrYdzdoaHUaimWLFzt4A=', 'aJdZUHKOeH+5plild4KGfnuAjA==', '', 'Z5ZrYGg=', 'irOCg4SHgYQ=', '', '', 'mslnYGFqY2Wdk5Khk8Vhmp+cntGpZcvW', '49.3759812', '3.3363278', '5eea1433cac9c704f7b69148514757f8', '2018-11-15'), +(111, '', 'g718UHh9gVG4pnupUrKGgoh4Wad7ioWxfYyqe4SLgox4rYeEUYKChKmxgA==', 'cISKhXKBU3KxJMGl9et5WXWCjqiJhbSy', '', 'Z5ZtYGE=', 'eqx6hHZ5iF64qYGmhLSN', 'hKWLhHqGhg==', 'Z5dZYmRYa2WEmnCBapI=', 'ndGaoqWhoaSk1JnKoNZho6FhnNKj', '49.0419778', '3.3928212', 'e0c0a6e10a5158b150e1eae44721d8dc', '2018-11-27'), +(112, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7GpWHuwiHSNtYJ8tg==', 'h8Wso5KfmFGwplikgbR2joV8frU=', '', 'Z5ZsY2I=', 'irOCg4SHgYQ=', '', '', 'mslnYGFqZWGYlYShk8Vhmp+cntGpZcvW', '49.376636', '3.32342', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(113, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+peYaBg4GGsH6L', 'ap1ZoJ2ZlpaEq42td7VUf3eFi7w=', '', 'Z5dtYGI=', 'kL5+hYN9', '', '', 'mslnYGFrY2GXmXmhk8VhnJ6Yq9ClpdmSnqo=', '46.5682479', '3.3578445', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(114, '', 'g718dXZYg4Cwuo6ifqeCjVKJeq97ib6EhHmzeHONpg==', 'b4R7f4aEeIels3yBeaN2i3t4hYOGfLezhoamig==', '', 'Z5dsYGc=', 'ermMg3aM', '', '', 'mslnYGFrZGGck4Ohk8VhnJ6Yq9ClpdmSnqo=', '46.1257585', '3.4473603', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(115, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBg3OKtoKFhHuCdow=', 'eLCF87p9U3W5gYiihKU=', '', 'Z5hqYGI=', 'hKWHf4SJiHY=', 'idOqpZY=', 'Z5hZaWNYamGEmHCBZpI=', 'mslnYGFsY2GVkoqhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.8273414', '5.7827402', '61074af86d746360d4431c734fcc4240', '2018-12-24'), +(116, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7WljYSBd4R9sH4=', 'aJdZUHKOeH+5plilh4KHjXN3fg==', '', 'Z5hrYGQ=', 'iq2MhHaKgn8=', '', '', 'mslnYGFsY2GWlHyhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '44.1820358', '5.9465855', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(117, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWiqq6gX+vew==', 'bYSLhXZYfXalr1iuc6V5', '', 'Z5lpYGQ=', 'fqWJ', 'f7N/dn55gX+EpqTQlsuZ', 'Z5hZaWNYaGeElm6BY5I=', 'mslnYGFtY2GUmoChk8VhmpurZtCXqdjJoaTNm2Ce1A==', '44.5621362', '6.0744739', 'e22b67d3dd9646c912a4aa064cd1c3b1', '2018-11-11'), +(118, '', 'g718dXZYg4Ozp320hauDh4B4hYN8iaaye4G0VnZ9gnyJs4KDhH2H', 'aphZc3l9gHqygXymUq51WXV0j6SCfLetfQ==', '', 'Z5pqY2E=', 'frZ6g4R9', '', '', 'mslnYGFuY2GWlKyhk8Vhp5uWnpGcqQ==', '43.6522825', '6.9329061', '61074af86d746360d4431c734fcc4240', '2018-11-26'), +(119, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWh6a5hFi3d359tJI=', 'aISappamqJaEtHmqgLZUg3N2irh7ig==', '', 'Z5puYGE=', 'hKmHhICG', '', '', 'mslnYGFuY2GWmbGhk8Vhp5uWnpGcqQ==', '43.7833616', '7.5118266', '61074af86d746360d4431c734fcc4240', '2018-12-04'), +(120, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgo2GuYt5hIV4XrSija1So4mAe3iL', 'aJpsUFF6goawpo6ihKZUi3eBfoN5eLi3gYY=', '', 'Z5prYGQ=', 'ha18dQ==', '', '', 'mslnYGFuY2GXlZ2hk8Vhp5uWnpGcqQ==', '43.667891', '7.2122519', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(121, '', 'g718dXZYg4Ozp320hauDh4B4hYN3jKy5i4ymVneLpYh9qoJ1gw==', 'eqx+fXqGU3W5gXqzd6WF', '', 'Z5pxYGI=', 'eqWAfnaLYIS5s2Wud7Q=', '', '', 'mslnYGFuZGeXlq6hk8Vhp5uWnpGcqQ==', '43.67139', '7.148767', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(122, '', 'g718dXZYg4Ozp320hauDh4B4hYN+hrmphIGmiA==', 'idOupJZYd3aEtXm2hKt5i4U=', '', 'Z5tqYWE=', 'g6WLd3aGh3qps30=', '', '', 'mslnYGFvY2GVl32hk8VhoKSYp9KYo8qSnqo=', '44.55113', '4.279915', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(123, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fViud4SBp1mJrY95doo=', 'aZVZkaedoabJgYawhrR5WXZ0hqg=', '', 'Z5twYGE=', 'ebOOgnhlhnKtr4yOc7B4foF/', '', '', 'mslnYGFvY2KUmHyhk8VhoKSYp9KYo8qSnqo=', '44.3740364', '4.6448021', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(124, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV7KzjYSqhA==', 'cJ1vUJKumJ/Zxlild4KAelJ2grd7V7inh4Sif4R9', '', 'Z5xuYGE=', 'iamPeX8=', '', '', 'mslnYGFwY2GYkXmhk8Vhq5ecptZkndc=', '49.9269552', '4.6510258', '61074af86d746360d4431c734fcc4240', '2018-12-05'), +(125, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6elkn2qgn59tQ==', 'h8Wrk1F8iFGnqXm1d6OJWXZ4WbCFhbm6gYSte4SL', '', 'Z5xrYGc=', 'eaWTdXqEf3a3', '', '', 'mslnYGFwZGGYmI6hk8Vhq5ecptZkndc=', '49.679135', '4.9817014', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(126, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbelhnuwf4VYpXqEqYU=', 'ibl+UHuNf3a3gX6mhLSN', '', 'Z51rYGI=', 'iqWCfoVlenq2sIa0', '', '', 'mslnYGFxY2GWkZGhk8VhraGopdKrqsqSnqo=', '42.9739298', '1.1549426', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(127, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfKmzjXmzelKAp4uJrYiE', 'idmeUH15U36lrXmle6eGfg==', '', 'aJRvYGE=', 'iqWCfoV9YISlt4Gvdw==', '', '', 'mslnYGJoZGGWk3+hk8Vhq5ecptZkndc=', '48.2935455', '4.0271421', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(128, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeq2lioSmiVJ7tIiK', 'aIRZgoZ9U36tpICmfoKKfoR6frY=', '', 'aJVxZ2E=', 'eqWLc3KLhoCyr30=', '', '', 'mslnYGJpY2mWlIOhk8VhpqGhrdObo9HNnaqPnKQ=', '43.2283215', '2.3382924', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(129, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWI6qfYE=', 'ZA==', '', 'aJZqYGE=', 'hK2FfHKN', '', '', 'mslnYGJqY2GVlXmhk8VhraGopdKrqsqSnqo=', '44.100575', '3.077801', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(130, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYjw==', 'ZA==', '', 'aJZrYGE=', 'ja2FfHZ+hXKypICmX6Z5ZoSCjqiIfrqp', '', '', 'mslnYGJqZGKbmYqhk8VhraGopdKrqsqSnqo=', '44.349746', '2.035381', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(131, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtmaBs4x1gYA=', 'eLp+foZ9U3a4qn2vgKdUjIGIhax7', '', 'aJZrYGE=', 'ja2FfHZ+hXKypICmX6Z5ZoSCjqiIfrqp', '', '', 'mslnYGJqZGOakX2hk8VhraGopdKrqsqSnqo=', '44.3571108', '2.0390544', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(132, '', 'g718dXZYg4Ozp320hauDh4B4hYOGfLeogX+2f3eK', 'aJtZk5mdoJrSgXymhYKBiHuBfrY=', '', 'aJdrYGE=', 'eLaFdYQ=', '', '', 'mslnYGJrY2GVk4yhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.6976236', '4.6400977', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(133, '', 'g718dXZYg4Ozp320hauDh4B4hYN5eLKthISmVnyNroWApYc=', 'bJRZUHOHiH2pt3mzdoJ4flJ/eoN4eLeli4um', '', 'aJdsaWc=', 'hKWLg3aBf32p', '', '', 'mslnYGJrY2GamXyhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.2859274', '5.4774883', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(134, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVikfnOKrn6KhIl1eI2M', 'aJRrUFGKiHaEtJGtiKN2fn5/fg==', '', 'aJdpYGc=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZGWUk5yhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.2882617', '5.374819', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(135, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVikfnOKroiLuH5QeIp0iK21kg==', 'aZRZUHSAeH6tr1ikeqOIfnOIWaqFhKepiow=', '', 'aJdpYWQ=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZGWYlpmhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.3350096', '5.4208538', 'f8e5ef53f3c813a9b9af9a08614138cf', '2018-12-05'), +(136, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVijiHuLp1mDpYZ1hA==', 'ibOOhHZYd3aErXmBiKt5i3l4', '', 'aJduYGE=', 'hKWLhHp/iHa3', '', '', 'mslnYGJrZGWclayhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.4178996', '5.0415592', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(137, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVite1KKsXx/qYs=', 'hLOHhPTBeFGoplitc4KIi3OBjKuLhKaye30=', '', 'aJdsYGE=', 'iqWFf39ld3aRsYqwiKeCfHc=', '', '', 'mslnYGJrZGWclq2hk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.6449469', '5.092757', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(138, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtn5XqYV5hHl1drip', 'kbOHdVF8WnKntYG3e7b3wlJ/eoN+eLq4fVije3aHt4V8', '', 'aJdrZGE=', 'iqmJhHaFeISRrX20X7h1hX6Ch7Y=', '', '', 'mslnYGJrZGeblpmhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.3840533', '5.3143898', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(139, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYroiMrYxQcop0eLOv', 'eLp+foZ9U3W5gXuigquIenuBfoN4ibq4jYs=', '', 'aJdqZ2E=', 'g6mMUIF9gX+ptGWue7R1e3d0jg==', '', '', 'mslnYGJrZWSYlHqhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.396519', '5.32082', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(140, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgot8q4J/f3l/', 'aJVtUFF5iXaytn2BjKeCeoaHgg==', '', 'aJdrZmc=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZWqblaWhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.2450321', '5.3918283', '61074af86d746360d4431c734fcc4240', '2018-11-05'), +(141, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVitd1J7o318sn58fX0=', 'aJdtUJOnqJ3J15nTloJ4foVThax4fLeljH22iIU=', '', 'aJdpYWM=', 'hKWLg3aBf32p', '', '', 'mslnYGJrZmOblqihk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.3021127', '5.4571905', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(142, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVixd4WMtH5XkVl3g3mBdamBeqKFtn19dw==', 'aZRZUHKOeH+5pliodqdUe3OGjax6fA==', '', 'aJdpYGo=', 'hKWLg3aBf32p', 'f6mFf1F7dIOzrYGvdw==', 'Z5pZYmZYZWmElG+BY5U=', 'msWrn52hoZbMxqTQYNKbm3KapsSfo5PHp6U=', '43.2626722', '5.4216353', '7595d94988721f31cf817962f8722a76', '2018-11-01'), +(143, '', 'g718dXZYg4Cwuo6ifqeCjVKAfqd/i6q2inmve3dYin18hIVxUWE=', 'eLp+foZ9U36ppYG1d7SGeoCBfqg=', '', 'aJdvYGE=', 'g6VZc3qHh3K4', '', '', 'mslnYGJrZmWUl3+hk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.190758', '5.611854', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(144, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtmaBs4x1gYA=', 'aJhuUFF5iXaytn2BdqdUhXNTi6iGjKewgYm2ew==', '', 'aJhxYGE=', 'e6l6hYeBf32p', '', '', 'mslnYGJsZGKdk66hk8VhnJOYp5GcqQ==', '49.3537469', '0.0677997', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(145, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVivhYaKp1l7pYZ1UXx4UbKikqKEp4iB', 'eLp+foZ9U3WpgYSiUqR1jHt/grSLfA==', '', 'aJhtZGE=', 'e7OOhoN9hl6womWld659j4R0h6d7', '', '', 'mslnYGJsZGKdlK+hk8VhnJOYp5GcqQ==', '49.2970159', '-0.3732011', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(146, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi3f3WMsYuAsn5Qfnl6f6k=', 'ap1ZkaedoabJgXy2UphUg4d8hw==', '', 'aJhqYGQ=', 'g62MeXaNiw==', '', '', 'mslnYGJsZGKdmJmhk8VhnJOYp5GcqQ==', '49.1426746', '0.219446', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(147, '', 'g6uNUH2RdnapgXymhYKBfoZ8frWJV7WljYSBeYGKsI4=', 'cIRZgoZ9U4GltoSBdbGGh4c=', '', 'aJhqYGg=', 'g62MeXaNiw==', '', '', 'mslnYGJsZGOblqOhk8VhnJOYp5GcqQ==', '49.1627728', '0.2190316', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(148, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYu4+Gsod1UX+Idquihg==', 'aIRZcYd9gYapgX+mgKeGen5TfahWfqa5hISm', '', 'aJhrYGE=', 'f6mLf4aOfH2wpmW0c6uCjV92haR/iQ==', '', '', 'mslnYGJsZGWWkayhk8VhnJOYp5GcqQ==', '49.2123047', '-0.3427237', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(149, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWIKwhYSBtQ==', 'aISrpZZYhnKwt3mlgbRUen5/frF6fA==', '', 'aJhqZmM=', 'e62PdYRlhoa2joWmhA==', '', '', 'mslnYGJsZGadmqWhk8VhnJOYp5GcqQ==', '49.2805164', '-0.0975869', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(150, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVivhYaKp1l7pYZ1UXx4UbKikqKEp4iB', 'eLp+foZ9U3WpgYSiUqR1jHt/grSLfA==', '', 'aJhtZGE=', 'e7OOhoN9hl6womWld659j4R0h6d7', '', '', 'mslnYGJsZWKUmaqhk8VhnJOYp5GcqQ==', '49.2970159', '-0.3732011', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(151, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6u2eYakhXuLgot4pn58coGG', 'aIRZgoZ9U3awtHmBhrR9iH54jQ==', '', 'aJhqYmQ=', 'gKqM', '', '', 'mslnYGJsZWKXk6uhk8VhnJOYp5GcqQ==', '49.1496346', '-0.3561088', '61074af86d746360d4431c734fcc4240', '2018-11-28'), +(152, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWiaa9hYevelJ7sYuLpY0=', 'bJlZUHKOeH+5plird6OCWXV7erF3gw==', '', 'aJlpYGY=', 'eLmLeX2EdHQ=', '', '', 'mslnYGJtY2GUmXuhk8VhnJ6Yq9ClpdmSnqo=', '44.9435449', '2.4598239', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(153, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eK', 'eNqenqadU3WptFiue7B9hneG', '', 'aJtpY2E=', 'g6VZgoB7e3awrX0=', '', '', 'mslnYGJvZGWUloOhk8VhqaGcrcybqdiSnqo=', '46.143788', '-1.162168', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(154, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe6qEhF+iin55sI2AtY51', 'aYSLhXZYd3aEroevhrR5en4=', '', 'aJtrYGY=', 'ibOScX8=', '', '', 'mslnYGJvZGabkoqhk8VhqaGcrcybqdiSnqo=', '45.633603', '-1.018023', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(155, '', 'g718dXZYenaypoqifoJ5jVKHfqZ+hbSwh3+qh4d9goN4p4qFdotTdLOmjbM=', 'aJRxUFGKiHaEq32igIJ2enh5gqiI', '', 'aJxpYmc=', 'ebOOgnh9hg==', '', '', 'mslnYGJwY2GUmIOhk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.0734487', '2.4086062', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(156, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhlioi3eAp4eFsw==', 'idmeUHV9hlG3onqtd7U=', '', 'aJxrYGE=', 'iqWCfoVldH6lr3yOf7GCjYSCh6c=', '', '', 'mslnYGJwY2GWlp2hk8VhqKSfnsSkqpLYp63TqWCe1A==', '46.733637', '2.5082521', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(157, '', 'g718dXZYg4Ozp320hauDh4B4hYOAeKi1jX20VnWHp46J', 'aJRxUFGKiHaEq32igIJ2enh5gqiI', '', 'aJxpYmc=', 'ebOOgnh9hg==', '', '', 'mslnYGJwY2GYk5Ghk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.0734487', '2.4086062', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(158, '', 'g718dXZYg4Ozp320hauDh4B4hYOIfLOpWHuiiYWBsA==', 'ebOOfHaOdIOogXy2Uq91i4OIgrZ3iw==', '', 'aJ1pYWM=', 'i7mFfHY=', '', '', 'mslnYGJxY2GXlYKhk8VhpZugqMqbqpPKqg==', '45.2630378', '1.772271', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(159, '', 'g718dXZYg4Cwuo6ifqeCjVJ/foN5eLi4fYQ=', 'aZZZUIONeFGooo2jd7CIiIA=', '', 'aZVpY2Q=', 'e62Df38=', 'e8mrlZSkmJ/Sxg==', 'Z5dZaGFYameEmGiBZZI=', 'mslnYGNpY2GVmn+hk8VhnZudqNFkndc=', '47.3125935', '5.0365341', '3ef796189e67146b81dd0f83424faca1', '2018-11-28'), +(160, '', 'g718dXZYg4Cwuo6ifqeCjVJ0h7F3V6+5fIGk', 'aptZoqadU3WpgYSiUq59e3eFjag=', '', 'aZVqZGE=', 'iqmGhYNleH+Roo25gauH', 'hKWLhHqG', 'Z5dZaGFYa2qEmGiBZpI=', 'rcWllaOhmF/RwqrVm9BmeZOWZsefodTSZp7T', '47.4922843', '4.3382425', '532e6c3d5c4ed099ea1650fcee0ff43a', '2018-12-11'), +(161, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilJ6p4eAq4d1', 'cJ1ZUIONeFGopli1c651h4Y=', '', 'aZVpYGE=', 'e62Df38=', '', '', 'mslnYGNpZGGdka+hk8VhnZudqNFkndc=', '47.3301533', '5.0175272', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(162, '', 'g718dXZYg4Ozp320hauDh4B4hYOCeIWnhIe0e4SBpw==', 'aJRZUIONeFG0qn2zhKdUhYGHgg==', '', 'aZZtYWE=', 'iqWCfoVlhIalumWxgbSIi3t4jrs=', 'ebOOdHKKh1Gowq7Klg==', 'Z5ZZaWdYamGEmWiBaZI=', 'mslnYGNqY2GalXmhk8Vhq5ehp8ipZcvW', '48.6578941', '-2.8473931', 'ad86ce4b939631affaac827473360578', '2018-12-11'), +(163, '', 'g718dXZYenayj321UrZ5fHqBiK9kh7etjn2BiXOBsI1XroiDdoh7UZGBerCFtYl+hg==', 'apxZgoZ9U3upooaBhaOKgnZ0hw==', '', 'aZZsYGU=', 'g6WHfnqHgQ==', '', '', 'mslnYGNqY2KUk4uhk8Vhq5ehp8ipZcvW', '48.7295689', '-3.4554535', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(164, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtlmBs4x1gYBTXoSjh7SFt3mN', 'apxZgoZ9U3upooaBhaOKgnZ0hw==', '', 'aZZsYGU=', 'g6WHfnqHgQ==', 'eaWOdICNfH8=', 'Z5ZZaWdYZ2eEk26BZJM=', 'rMqacKSZnJ/Yy6fUl9KcpZOhp8ylpZPKqg==', '48.7295689', '-3.4554535', '4410b62553375fd3c0a68037cc4187db', '2018-12-06'), +(165, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYpH54uYt1eHmFdQ==', 'ZA==', '', 'aZZqYGE=', 'i6V9dX8=', '', '', 'mslnYGNqZGaamoShk8Vhq5ehp8ipZcvW', '48.475527', '-2.016388', '61074af86d746360d4431c734fcc4240', '0000-00-00'); +INSERT INTO `eta` (`id_eta`, `academie`, `nom_eta`, `adresse1`, `adresse2`, `cp`, `ville`, `nom_ref`, `tel_ref`, `email_ref`, `lat`, `lon`, `mdp_ref`, `date_co`) VALUES +(166, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fLG0gIGve1J/o5I=', 'eNqenqadU3uzrYGwhoJ3joR8fg==', '', 'aZdtYGE=', 'ebOOgnh5gXa5pw==', '', '', 'mslnYGNrY2GUmYKhk8VhpZugqMqbqpPKqg==', '45.954755', '1.749135', 'b1933e2b3c3d99c62d2831f448c98f6f', '2018-12-03'), +(167, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhlikd4J9roV8', 'eNqenqadU36ls32keqOAWX54fK97iag=', '', 'aZhqYGE=', 'eamLd3aKdHQ=', '', '', 'mslnYGNsY2GUmJuhk8Vhm6GlnciXrN2Snqo=', '44.8433876', '0.477406', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(168, '', 'g718dXZYg4Ozp320hauDh4B4hYOGiaqEfH2BeYGKppI=', 'bIRZcYd9gYapgYKwhaeEgXuBfoN4eLCpig==', '', 'aZhrYGE=', 'iqWLfHKMYH2ljnuigKd4eg==', '', '', 'mslnYGNsY2GYmbChk8Vhm6GlnciXrN2Snqo=', '44.8710454', '1.2078708', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(169, '', 'g718dXZYg4Ozp320hauDh4B4hYOEfLG3h4aBg3OGpn6DpQ==', 'bYSrpZZYhXayplioe7R1i3aCjQ==', '', 'aZltYGU=', 'eLl9eX97goa2tQ==', '', '', 'mslnYGNtY2GUkqqhk8Vhm5emmtGZptOSnqo=', '47.4841558', '6.8506077', '5179ee5e5cefafff01e7e0262de3a07d', '2018-12-18'), +(170, '', 'g718dXZYg4Ozp320hauDh4B4hYN5hrOofQ==', 'bIRZgH15dnaErnmzh651kw==', '', 'aZlpYWc=', 'eamMcX97gn8=', '', '', 'mslnYGNtY2GVlZ2hk8Vhm5emmtGZptOSnqo=', '47.2396284', '6.0175599', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(171, '', 'g718dXZYg4Ozp320hauDh4B4hYOKhrq3i3mqhIZYroiMun6ChY2Fdg==', 'b5VZoqCtp5aEpX2BdKeHeoB2iLE=', '', 'aZlsYGU=', 'h7OHhHKKf3qpsw==', '', '', 'mslnYGNtZGSYmp6hk8Vhm5emmtGZptOSnqo=', '46.9137697', '6.3451463', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(172, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYpn5XsGB4doqAeriif6Y=', 'ibl+UHt9dH+EroevgKeI', '', 'aZpvYGM=', 'i6WCfl6EWnmps4WqhqN7fg==', '', '', 'mslnYGNuZGKYmX+hk8VhoKSYp9KYo8qSnqo=', '45.0696901', '4.8604102', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(173, '', 'g718dXZYg4Cwuo6ifqeCjVJ2haiDfLO4WHmle4Q=', 'eifNhHZYdIOttIyqdqdUe4R8erF6', '', 'aZtsYGY=', 'eamLfnKR', '', '', 'mslnYGNvZGackpChk8Vhq6GontFkndc=', '49.0984139', '0.6047831', 'b16cdd4a4590c0d2450c852bf79b06c4', '2018-12-10'), +(174, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+peYaOeHOItoKKuH5QdX12g6m1h7U=', 'boRZgoZ9U3WpgYSiUql1i3c=', '', 'aZttYGE=', 'g7OOhnp9hYQ=', 'jaV6g1GBppLGxqTNlw==', 'Z5ZZY2NYZ2GEkmyBZJs=', 'oNeakpakn5aS15nCpaKVnF+lqNibpZPKqg==', '49.2162436', '1.1756802', '8fda05f0f461e47a022f70edb86ee528', '2018-12-11'), +(175, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVivhYaKp1l7pYZ1', 'eqz8soV9dIaEpX20Urh1joo=', '', 'aZxrZGE=', 'iqWCfoVlgHK5s4Gkd4+HenuBjZB9fLexeYGv', '', '', 'mslnYGNwY2eclauhk8VhqKSfnsSkqpLYp63TqWCe1A==', '48.4922115', '1.0850893', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(176, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHupd4KMo4U=', 'aplZUHSAeH6tr1ild7VUg4eGjax5fLg=', '', 'aZ1qaWI=', 'iLmCfYF9hQ==', '', '', 'mslnYGNxY2Gbk4+hk8Vhq5ehp8ipZcvW', '47.9914321', '-4.1187167', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(177, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYrn5XtHqCcnt/drg=', 'aplZcYd9gYapgXymhYJ7hXeBerE=', '', 'aZ1pYWk=', 'iLmCfYF9hQ==', '', '', 'mslnYGNxY2Kcl46hk8Vhq5ehp8ipZcvW', '47.9951465', '-4.1140718', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(178, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYqH6FqYV/fw==', 'aJRuUHSAeH6tr1ild4J/foRgjLd7eLe3', '', 'aZ1rY2k=', 'ebZ+g4U=', '', '', 'mslnYGNxY2SYkYWhk8Vhq5ehp8ipZcvW', '48.3883866', '-4.4687908', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(179, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYroiMrYx1UYV8dKymhA==', 'aJpZUIONeFG3ooGvho+EiH5Ti7KLjw==', '', 'aZ1qYGg=', 'iLmCfYF9hQ==', '', '', 'mslnYGNxY2SYmI6hk8Vhq5ehp8ipZcvW', '47.9905283', '-4.0967632', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(180, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKLo4KFuFl6gIt4gayBZYGFo32HhlOGpIh6', 'bZVZgoZ9U3Olunmzdg==', '', 'aZ1qaGg=', 'erOHc3KKgXaltg==', '', '', 'mslnYGNxZGmUmYChk8Vhq5ehp8ipZcvW', '47.8743528', '-3.9222799', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(181, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWhKa2gX2BeYeKq34=', 'idOupJZYd3aEp4SwhKN3', '', 'apRrZ2E=', 'iqWCfoVlfXalr2Wlh497eoR3', '', '', 'mslnYGRoY2GYkn+hk8VhpqGhrdObo9HNnaqPnKQ=', '44.1140867', '3.8718827', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(182, '', 'g718dXZYg4Ozp320hauDh4B4hYOMhrG4eYGzew==', 'ap1yUFGKiHaEo32tfquCgg==', '', 'apRyYGQ=', 'ha2GdYQ=', '', '', 'mslnYGRoZGOVkXuhk8VhpqGhrdObo9HNnaqPnKQ=', '43.826547', '4.3381004', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(183, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tgneKq35XqY1QhYeIg620haY=', 'aIRZgoZ9U3WpgYSIc6R2flJ9jq97ioWwfYWqiHc=', '', 'apVpYmc=', 'i7OOfICNhnY=', '', '', 'mslnYGRpY2GYl3+hk8VhraGopdKrqsqSnqo=', '43.5971194', '1.4049412', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(184, '', 'g718dXZYg4Ozp320hauDh4B4hYOIfLOpfVijhYCGp40=', 'aIRZcX2E9rqpgXy2Uq59foeHfrF3hbmEhHmnd4s=', '', 'apVtY2M=', 'i7OOfICNhnY=', '', '', 'mslnYGRpY2GZlYqhk8VhraGopdKrqsqSnqo=', '43.5557173', '1.4662858', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(185, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvindltoF8tn6Ddg==', 'aJpZUIONeFGotlijh6l1jXeH', '', 'apVxYGE=', 'iqWCfoVlenK5pX2vhQ==', '', '', 'mslnYGRpZGKXkoShk8VhraGopdKrqsqSnqo=', '43.1060107', '0.7214231', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(186, '', 'g718dXZYg4Ozp320hauDh4B4hYOGeLeoeYGtfnOG', 'eqx+fXqGU3WpgXqihLGC', '', 'apZpYGk=', 'eLl8eA==', 'fbZ6iYSLeFGuJOHT9Quhsg==', 'Z5pZZ2pYamKEk2iBa5g=', 'm8ifXqGZpZXFyqTJk9B0mpVgrdKro9TZq52PnKQ=', '43.654689', '0.574914', '7a595351e947b1664d4b8929d6d355d3', '2018-11-19'), +(187, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbGzinmBioSBtY14sg==', 'e9OmkZqmmFGoplitc4J3gXOIjLZ7', '', 'apdsZmE=', 'eqWGcn15gXa3jn21X695koB0fA==', '', '', 'mslnYGRrY2GakYShk8Vhm6GlnciXrN2Snqo=', '44.7542351', '-0.4699229', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(188, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV7Kzhoamig==', 'a5RZUHKOeH+5plipd7CGglJ1i7iCg6o=', '', 'apduYGc=', 'g617f4aKgXY=', '', '', 'mslnYGRrY2Gcmoyhk8Vhm6GlnciXrN2Snqo=', '44.9058722', '-0.2406337', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(189, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0ilKFq3x/qYU=', 'aZRZUHKOeH+5pliofoJ4flJ6eriCg6o=', '', 'apdraWE=', 'ebB6foKNeHezs4w=', '', '', 'mslnYGRrZGaYmXyhk8Vhm6GlnciXrN2Snqo=', '44.9113562', '-0.6376981', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(190, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tZIaHt4uAt4Z1UX90hKewf693', 'aJlZgoZ9U3e2ooakgauHWYR0e6iCeK63', '', 'apdtYGY=', 'i6WFdX97eA==', '', '', 'mslnYGRrZWKdk3yhk8Vhm6GlnciXrN2Snqo=', '44.7951077', '-0.5937945', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(191, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWerSyfIezeXeMgoGGuH58fX2FeqmBjLCHtH2Mf3g=', 'aIR6hnaGiHaEs4etc7B4WXaCi6p7g6q3', '', 'apdsYWI=', 'eLZ8cXSAgn8=', 'g6WMg3aKhXaEpaHFm8em', 'Z5pZY2hYaWmEkmiBYpQ=', 'mslnYGRrZWKdlX6hk8Vhm6GlnciXrN2Snqo=', '44.6503597', '-1.1618474', '61074af86d746360d4431c734fcc4240', '2018-11-26'), +(192, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fIWwWH20iod5q4t8', 'a5VZoqadU3ultn6zd4KGjnZ4hQ==', '', 'apdsaWU=', 'ebB6iXY=', '', '', 'mslnYGRrZWicko2hk8Vhm6GlnciXrN2Snqo=', '45.1253461', '-0.661478', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(193, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV7KzjYSqhA==', 'eLp+foZ9U3WptFiuc7SIkoSGWad7V7GlWIqmiXuLtno=', '', 'aphuYmI=', 'eamTeXaKhg==', '', '', 'mslnYGRsY2GVkpuhk8VhpqGhrdObo9HNnaqPnKQ=', '43.3429502', '3.233546', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(194, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeq2lioSmiVJ8p1l+pY58fX0=', 'apxZUIONeFG2sHqmhbJ9foSFfg==', '', 'aphrYGE=', 'iqmNdQ==', '', '', 'mslnYGRsY2GbmZmhk8VhpqGhrdObo9HNnaqPnKQ=', '43.4105962', '3.679605', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(195, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6yli4yzhVKAsY18sFl3doeFeKm0WKeEp3eBdw==', 'a5RqUFGKiHaErX2BhquIgneB', '', 'aphyZmE=', 'hLOHhIF9f32tpoo=', '', '', 'mslnYGRsZWOWlqKhk8VhpqGhrdObo9HNnaqPnKQ=', '43.6072277', '3.9122869', '1137ea0fefd6103c25cf5e8e24f31b08', '0000-00-00'), +(196, '', 'g718dXZYg4Cwuo6ifqeCjVKMj7KEV6ezjYqoe4U=', 'apdZUIONeFGopouBd6WDhXeG', '', 'aplxYGQ=', 'e62HcYN8', '', '', 'mslnYGRtY2GUloqhk8Vhq5ehp8ipZcvW', '48.6253408', '-2.0576512', '61074af86d746360d4431c734fcc4240', '2018-12-11'), +(197, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBfYeBroWGuZE=', 'bppZUHKOeH+5plild7VUe4eHjaiJV6mpWHuwe4WFp4w=', '', 'aplwYGQ=', 'iamHfnaL', '', '', 'mslnYGRtY2GXk46hk8Vhq5ehp8ipZcvW', '48.1249814', '-1.6321472', '61074af86d746360d4431c734fcc4240', '2018-12-10'), +(198, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYrH54sllycoqH', 'aJRZUIONeFG3ooGvho+EgneFi6g=', '', 'aplvYGQ=', 'ial9f38=', 'h6mFfHp9hw==', 'Z5ZZaWpYamKEl2yBaZs=', 'mslnYGRtY2iXk36hk8Vhq5ehp8ipZcvW', '47.64794', '-2.0865407', 'f9575ac62ff934e892d35ce92d20b075', '2019-02-06'), +(199, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKGsY2JqVl0coV4', 'ibl+UHV9U3Wtr3mv', '', 'aplraWE=', 'iqWCfoVlgHapr2Wtd497i3OBfQ==', '', '', 'mslnYGRtY2mUmIWhk8Vhq5ehp8ipZcvW', '48.1926274', '-2.188228', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(200, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKLtn5XuIF1g32Gdg==', 'aISrpZZYd4aEmViuc6s=', '', 'aplqY2E=', 'g6VZd4Z9hXSspmWld492i3eHeqqEfA==', '', '', 'mslnYGRtZWWYl42hk8Vhq5ehp8ipZcvW', '47.9435083', '-1.2312387', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(201, '', 'g718dXZYg4Ozp320hauDh4B4hYN5f6a4fXm2hHeNqA==', 'b5dZkaedoabJgYqwfq59h3OH', '', 'apprYGE=', 'eLaAdX+Mgn+RtI2zX6WGfoeGfg==', 'frOAhXaM', 'Z5ZZZWVYZWWEkWiBaJU=', 'm8ifoKVmZmfHyZnVl8Opp5eon6OXmpLTqqTGl6Crj62m2aujX56l', '46.5825854', '1.5155027', '0ee4ba46165b6e8157fa77cd3fd3905d', '2018-11-30'), +(202, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLGmfYq1VnR5u36L', 'cIRZgoZ9U3W5gXuwf691h3Z0h7dWebS5in+wf4A=', '', 'aptpZWk=', 'i7OOgoQ=', '', '', 'mslnYGRvY2GYkYyhk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.3938481', '0.6712742', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(203, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHupd4KMo4U=', 'ibl+UHWNU3SwsIuBdqeHWXl0i6d7ig==', '', 'apttYGE=', 'eLF7f3qLeA==', '', '', 'mslnYGRvZGKWlI6hk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.3993791', '0.9837666', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(204, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilJ/q4WDqYw=', 'bptZgoZ9U3WpgX6wgLZ9j3t/hag=', '', 'aptrZWE=', 'jamCd399', '', '', 'mslnYGRvZGKclaShk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.2963497', '0.740219', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(205, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Gpi3yqfYeBp4t8tw==', 'aJlZUHKOeH+5plijd6OJhnOFfKt3gLg=', '', 'apxpY2U=', 'frZ+foB6f3Y=', '', '', 'mslnYGRwY2GXln+hk8VhoKSYp9KYo8qSnqo=', '45.1675654', '5.7092301', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(206, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVizhXSBsFmKuFmGeoZ2drK1WKV3goR6h38=', 'gLGJcYSLeFGoplitWad7hXuGfg==', '', 'apxrYGU=', 'ja1+fn99', '', '', 'mslnYGRwZGiXmYChk8VhoKSYp9KYo8qSnqo=', '45.525587', '4.874339', '61074af86d746360d4431c734fcc4240', '2018-11-19'), +(207, '', 'g718dXZYg4Ozp1ixhKuKflJ3frZWhKq4gX2ziVKEp1l5tn50cg==', 'aJRZcoCNf3a6ooqlUqyJhXeGWal7ibe9', '', 'apxuaGE=', 'eLCFdYd5hXU=', '', '', 'mslnYGRwZGiYkoShk8VhoKSYp9KYo8qSnqo=', '45.3944735', '6.0715723', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(208, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVite4VYsoiJuH6DUXx4UaepebOGtHmOhXg=', 'apxwUJKumJ/Zxlild4KHjXN/grF9iaao', '', 'apxsZGQ=', 'jbOLdYGIeA==', 'gaWOcnaKh1G0wqvEk84=', 'Z5hZZ2dYaGGEk22BaZU=', 'mslnYGRwZGmUln6hk8VhoKSYp9KYo8qSnqo=', '45.2932421', '5.6339295', '61074af86d746360d4431c734fcc4240', '2018-11-15'), +(209, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV629eXuqhIaAp1l9toJxf4w=', 'aoSrpZZYe4qlpIGvhqp5WXiFgqSEiw==', '', 'ap1xYGI=', 'h7OFeXiGjA==', '', '', 'mslnYGRxY2GXlLKhk8Vhm5emmtGZptOSnqo=', '46.8347625', '5.7088023', '75823a9cd64008171e07cf6bd8544a4b', '2018-12-06'), +(210, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBenOKr3qFuH4=', 'aZdZoqadU3upooaBdKOEjXuGjahWfqameYqzdw==', '', 'a5RqY2E=', 'eqWJcoN9h4Cy', '', '', 'mslnYGVoY2GUlYWhk8Vhm6GlnciXrN2Snqo=', '43.6430052', '-1.4308329', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(211, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHyBd4R7p40=', 'aISJfHJ7eFG3tX2Bg7d9jYZ4i6x7', '', 'a5RxYGI=', 'eK2LdV6LiIORrV+idrGJiw==', '', '', 'mslnYGVoY2GYmIKhk8Vhm6GlnciXrN2Snqo=', '43.6967601', '-0.2687556', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(212, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tZHeMgo2GuYt5hIV4UbqihIF2p1SFgXyLqA==', 'aJttUFGKiHaEooSjd7SIWWN4iw==', '', 'a5VpY2Q=', 'ebCIeYQ=', '', '', 'mslnYGVpY2mdmn2hk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.5720598', '1.3057101', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(213, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWiaqyfVikd4WLq4c=', 'aJVZc3l9gHqygYuie7CIflJ1erV4fA==', '', 'a5ZxYGE=', 'ia2PdV58eF6rqn2z', '', '', 'mslnYGVqY2GWmnyhk8Vhpauip5GcqQ==', '45.5216976', '4.6048949', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(214, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe7qEgHm2ilJ+sYt8vg==', 'ZA==', '', 'a5ZvYGE=', 'jamLgnp9hXa3jn2vX6iDi3eN', '', '', 'mslnYGVqY2Galoyhk8Vhpauip5GcqQ==', '45.571146', '3.996373', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(215, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6epioyBeXOFt4w=', 'apZZcnqLU4O5plild4KAelJ/iKyIfA==', '', 'a5ZwYGU=', 'fa2LfXqGjA==', '', '', 'mslnYGVqY2GblXuhk8Vhpauip5GcqQ==', '45.3883158', '4.2830375', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(216, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4Q=', 'aJxZUIONeFGqs3mvdbF9jFJ6gq+CfLk=', '', 'a5ZtYGY=', 'iqWCfoVldnmlroevdg==', '', '', 'mslnYGVqZGiXl4Khk8Vhpauip5GcqQ==', '45.4548879', '4.5038057', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(217, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhliuhYCGp40=', 'a5lZcoCNf3a6ooqlUqR5i4aFerF6', '', 'a5dpYGE=', 'g6lZgIaRYHayjo6mfqON', '', '', 'mslnYGVrY2GWlYyhk8VhnJ6Yq9ClpdmSnqo=', '45.037181', '3.8870147', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(218, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKCt4WAqYc=', 'boSJfHJ7eFGotli3c66Aeg==', '', 'a5dqYGI=', 'ebaCf4Z8eA==', '', '', 'mslnYGVrY2GZlJKhk8VhnJ6Yq9ClpdmSnqo=', '45.295564', '3.386482', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(219, '', 'g718dXZYg4Cwuo6ifqeCjVJ4hrB3hbqphFikfnN6tIJ8tg==', 'ZA==', '', 'a5drYGI=', 'kLeMeX9/eHK5uQ==', '', '', 'mslnYGVrY2qZlHuhk8VhnJ6Yq9ClpdmSnqo=', '45.1439326', '4.1152496', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(220, '', 'g718dXZYg4Cwuo6ifqeCjVJ6jrxWhLS1jX21Vl9Yp42AqYd+dlh/drKwgbM=', 'aISrpZZYd3aErVimh7SDiXc=', '', 'a5hqZGc=', 'eqx6hHZ5iHO2qnmvhg==', '', '', 'mslnYGVsY2GUlouhk8Vhp5OhrcipZcvW', '47.7274932', '-1.3690037', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(221, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe6qEeoe2fXOBsI+AsIV1', 'aYRZgoZ9U3a5qH2vd4KAfoSCjrs=', '', 'a5hqYGg=', 'haWHhHaL', '', '', 'mslnYGVsY2GXl3mhk8Vhp5OhrcipZcvW', '47.1980598', '-1.5930461', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(222, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYqoiLqYV5dopThLimWKKAsHk=', 'aZlpUHOHiH2pt3mzdoKAeneBh6h5', '', 'a5hvYWY=', 'iqWCfoVlgXK+ooGzdw==', '', '', 'mslnYGVsY2KVmoqhk8Vhp5OhrcipZcvW', '47.2751131', '-2.234379', '61074af86d746360d4431c734fcc4240', '2018-12-10'), +(223, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg7S5gYuBd4SFo4d7', 'ebOOfHaOdIOogYKmc7BUfXdTgLV3hamxeYG0hYA=', '', 'a5hrZ2E=', 'hKV8eHZ7goaw', '', '', 'mslnYGVsY2SZk42hk8Vhp5OhrcipZcvW', '46.9910112', '-1.8193584', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(224, '', 'g718dXZYg4Ozp320hauDh4B4hYOFg666gX2zVnmNq3x/pYt0', 'aJZZoqadU3WpgYSiUqh1joh4jbd7', '', 'a5hsZWE=', 'frl+gnKGd3Y=', '', '', 'mslnYGVsZGaZkY+hk8Vhp5OhrcipZcvW', '47.3385992', '-2.4243145', '61074af86d746360d4431c734fcc4240', '2018-12-12'), +(225, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVild4CBp4VXpot/hYx8drY=', 'esyenZqmU3W5gXuwh7h5h4Y=', '', 'a5hsZGE=', 'ebOOd4Z9gXKttA==', 'fqV7f4OBdIaEo4q2gLE=', 'Z5ZZZGFYZmOElW6BaZU=', 'mdaunqBmmpLG0KrKk9d0mqKjq8ikq87XZZnWqpety6Vl06uX', '47.187338', '-1.5866796', '79dbe2119ced8df5c1f5422ac1110a73', '2018-11-14'), +(226, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Ote4etd4VYo4mHqYuE', 'aZhZkaedoabJgXymUq51WXV7iK9/fLep', '', 'a5hwYGM=', 'hraPcYaEhw==', '', '', 'mslnYGVsZWGdlYWhk8Vhp5OhrcipZcvW', '47.2511934', '-1.6075551', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(227, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKEsY6Atw==', 'aoSJfHJ7eFGotlikeqOIfnOI', '', 'a5lrYGE=', 'hLOHhHKKenq3', '', '', 'mslnYGVtY2KUmLChk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.9979163', '2.728651', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(228, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaqlhlile1KEo1mLpYJ8fX0=', 'eNCl89qdU3WpgXq2hKmAfoB6frF8fLGo', '', 'a5lsYGE=', 'h62NeHqOfHa2tA==', '', '', 'mslnYGVtY2iZkY+hk8VhqKSfnsSkqpLYp63TqWCe1A==', '48.1679602', '2.2424772', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(229, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYpn5XsGB/g4R4crKigbQ=', 'aJZuUFGKiHaEpISih6Z5WXZ4e7iJir4=', '', 'a5lqZmE=', 'hrCChnaM', '', '', 'mslnYGVtZGSUlZGhk8VhqKSfnsSkqpLYp63TqWCe1A==', '47.8656903', '1.8803983', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(230, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYs458tnyJXoh4g62oh7N2', 'eLp+foZ9U4OzqH2zUqWDjnZ4i6Y=', '', 'a5prYGE=', 'irOOeX2EdHQ=', '', '', 'mslnYGVuY2aWmnmhk8VhraGopdKrqsqSnqo=', '44.8950333', '1.4700946', '61074af86d746360d4431c734fcc4240', '2018-12-10'), +(231, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgaaniY2miVJ8p1mJs4ZxhA==', 'ibOOhHZYd3aErn27e7A=', '', 'a5tvYGE=', 'hamLcXQ=', '', '', 'mslnYGVvY2GWmnqhk8Vhm6GlnciXrN2Snqo=', '44.1274306', '0.311799', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(232, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfLKthH2BhneRtnqNrYc=', 'eLp+foZ9U3W5gWmSUrCDj3eAe7V7', '', 'a5xpYGI=', 'hKmHdHY=', '', '', 'mslnYGVwY2GVmqOhk8VhpqGhrdObo9HNnaqPnKQ=', '44.5233613', '3.4833187', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(233, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYtXp6tn5ddId4hrY=', 'a5dZcYd9gYapgXymUq51WXl0i6g=', '', 'a5xrYGE=', 'iqWCfoVldnmprZGOdol1iXV7frU=', '', '', 'mslnYGVwY2eckXyhk8VhpqGhrdObo9HNnaqPnKQ=', '44.8000065', '3.2734124', 'e05feaca6cdf1dfef25ff157f6d2d460', '0000-00-00'), +(234, '', 'g718dXZYg4Ozp320hauDh4B4hYOJgLKzhn2BjHeBrg==', 'bptZoqadU3WpgYuifrJ9h4Z4', '', 'a51pYWY=', 'eLKAdYOL', '', '', 'mslnYGVxY2GUloihk8Vhp5OhrcipZcvW', '47.448676', '-0.5513816', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(235, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ilfIGBeXOKsIiLhGZQe310f4SjfbOGq4I=', 'aZlZoqadU36ls3umc7c=', '', 'a51tYGI=', 'iqWOfYaK', 'frZ+hnaM', 'Z5ZZZGJYaGSElmiBZZc=', 'mslnYGVxY2GZlo2hk8Vhp5OhrcipZcvW', '47.2497658', '-0.0697729', '61074af86d746360d4431c734fcc4240', '2018-12-03'), +(236, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYrH54sod1UXx4faWvh7Z3', 'aJVZkqCtn5bawqrFUqx5eoCBfoN6V6a2ew==', '', 'a51sYGU=', 'eqyIfHaM', 'jcmnlPThU4HF1JvCng==', 'Z5ZZZGJYaWSEmGyBaZY=', 'mslnYGVxY2qUlYuhk8Vhp5OhrcipZcvW', '47.0639942', '-0.8678527', '61074af86d746360d4431c734fcc4240', '2018-11-20'), +(237, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYtIh5qYuEUXyCerevfaKH', 'aJhyUFGKiHaEpHm3d659foRTfahWg6aEi3mtgnc=', '', 'bJRpYGU=', 'iqWCfoVlf4A=', '', '', 'mslnYGZoZGOXk6yhk8VhnJOYp5GcqQ==', '49.104919', '-1.0895761', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(238, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7KljYqqeXdYr3qJsHp+dQ==', 'aJlyUFGKiHaEpX20Uq6NfHd4jA==', '', 'bJRtYGE=', 'frZ6foeBf32p', '', '', 'mslnYGZoZGmZkaihk8VhnJOYp5GcqQ==', '48.8308974', '-1.5808397', 'b3a6e3cbac0a6e184e0449e42a43d3e6', '2018-11-26'), +(239, '', 'g718dXZYg4Cwuo6ifqeCjVJ4jax7hbOpWIemfn+BpYF8sg==', 'b4SappamqJaEpY2Bf7GCjVJ7frWP', '', 'bJVpY2g=', 'eqx6fICGhl6pr2WkeqOBiXN6h6g=', '', '', 'mslnYGZpY2GUmH6hk8Vhq5ecptZkndc=', '48.9760763', '4.3608078', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(240, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfrq3jHm3e1J9q399qYU=', 'aphZoqadU3WpgYamh6h3gXOHfq8=', '', 'bJVpZmc=', 'iamCfYQ=', '', '', 'mslnYGZpY2GXl4Whk8Vhq5ecptZkndc=', '49.275005', '4.0289347', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(241, '', 'g718dXZYg4Cwuo6ifqeCjVJ3gqd7ibS4', 'aZVZUHKOeH+5plilh4J7en5TfahWfqa5hISm', '', 'bJZrYGc=', 'g6WHd4N9hg==', '', '', 'mslnYGZqY2GWkoqhk8Vhq5ecptZkndc=', '47.847086', '5.3305042', '61074af86d746360d4431c734fcc4240', '2018-11-30'), +(242, '', 'g718dXZYg4Ozp320hauDh4B4hYOJi4WpkI2xe4SR', 'b5ZZoqadU3KyooywfqdUf4R0h6Z7', '', 'bJZqYGY=', 'iqWCfoVld3q+qn2z', '', '', 'mslnYGZqY2qWlI+hk8Vhq5ecptZkndc=', '48.6417642', '4.9654701', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(243, '', 'g718dXZYg4Ozp320hauDh4B4hYOIhqepioyBeIeKsYc=', 'bZxZoqadU3OprYSmhbWDi4Y=', '', 'bJdpYWQ=', 'g6WPcX0=', 'ebOCg3KKd1G20J/GpA==', 'Z5ZZZGRYaWiEk2yBZZI=', 'mslnYGZrY2GVlHqhk8Vhp5OhrcipZcvW', '48.0785146', '-0.7669906', '61074af86d746360d4431c734fcc4240', '2018-12-04'), +(244, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYqnqMuH5Qd4d/fa20', 'cJVZUIONeFGsoo21d4J6iH5/grY=', '', 'bJdpYGE=', 'g6WPcX0=', '', '', 'mslnYGZrY2GamYShk8Vhp5OhrcipZcvW', '48.0754986', '-0.7868404', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(245, '', 'g718dXZYg4Ozp320hauDh4B4hYN6eLengH0=', 'aYSrpZZYiXK5o3mv', '', 'bJhtYGY=', 'g7OHd4iR', '', '', 'mslnYGZsY2GXk4uhk8Vhp5OhnNxjpMrYsmbHqA==', '49.5232927', '5.7650871', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(246, '', 'g718dXZYg4Cwuo6ifqeCjVKGjaSEgLiweYs=', 'a5pxUFGKiHaEpX2BiKOCfYF4jrmIfA==', '', 'bJhvYGE=', 'ja2FfHaKhl6wpouOgKOCfIs=', '', '', 'mslnYGZsZWOUmX+hk8Vhp5OhnNxjpMrYsmbHqA==', '48.6636741', '6.1529342', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(247, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6athmWnhYeKsIJ8tg==', 'aJZZUHKOeH+5plixhKeHgnZ4h7dWgqqyhn2ljw==', '', 'bJlqYGg=', 'jamLdIaG', '', '', 'mslnYGZtY2GWl32hk8Vhp5OhnNxjpMrYsmbHqA==', '49.1438504', '5.3969853', '61074af86d746360d4431c734fcc4240', '2018-11-26'), +(248, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWH+2e3p9sIeG', 'bp1ZUHKOeH+5plild4KAelKAerWEfA==', '', 'bJppYWg=', 'jaWHfnaL', '', '', 'mslnYGZuY2GZlHyhk8Vhq5ehp8ipZcvW', '47.6595336', '-2.7826014', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(249, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYrH54sod1UXxacrakZbSGgn2Piw==', 'aZ1ZoqadU3Kmo32Bf6OGjXuB', '', 'bJpsYGc=', 'h7OHhHqOjA==', '', '', 'mslnYGZuY2Kck42hk8Vhq5ehp8ipZcvW', '48.071834', '-2.960239', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(250, '', 'g718dXZYg4Ozp320hauDh4B4hYOGgKq2in2Be4ZYr3qJrX5QdI2Feqk=', 'aZVZUIONeFGopouBiLGHgHeG', '', 'bJtxYGU=', 'fbZ+iX6BgXiRrn2zfqd2enV7', '', '', 'mslnYGZvY2GZko+hk8Vhp5OhnNxjpMrYsmbHqA==', '49.1530365', '6.8189467', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(251, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6athlinhYeKsIJ8tg==', 'idmeUHaFfH2pgXqwe66KgoA=', '', 'bJtpYGE=', 'hKmNig==', '', '', 'mslnYGZvY2Gakn+hk8Vhp5OhnNxjpMrYsmbHqA==', '49.10305', '6.1761419', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(252, '', 'g718dXZYg4Ozp320hauDh4B4hYODeLe9i32BeHOLtoJ8', 'ibl+UHWNU4Wtt4etew==', '', 'bJtwYGE=', 'f6WScX9/eA==', '', '', 'mslnYGZvY2GbmJKhk8Vhp5OhnNxjpMrYsmbHqA==', '49.3347331', '6.0763366', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(253, '', 'g718dXZYg4Ozp320hauDh4B4hYOJgLKzhlitd4x5tH0=', 'aZlZoqadU3upooaOfKN3iod4jINWgq6pfn6miA==', '', 'bJtrYWY=', 'iqWLgnZ/iHaxqoamhQ==', '', '', 'mslnYGZvY2KUkZKhk8Vhp5OhnNxjpMrYsmbHqA==', '49.1196423', '7.0760763', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(254, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVitd1KItIiNrX11f3t4', 'aISLhXZYd3a3gX6zd7R5jFKAfrZ9jK6y', '', 'bJtrZmE=', 'e61+hYt9', '', '', 'mslnYGZvY2Obmo2hk8Vhp5OhnNxjpMrYsmbHqA==', '48.811771', '6.7203582', '61074af86d746360d4431c734fcc4240', '2018-12-11'), +(255, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtll4sn2Cdg==', 'aISLhXZYd3aErV+mea59jHc=', '', 'bJtxZGE=', 'hriNcX9/eA==', '', '', 'mslnYGZvZWKUkpKhk8Vhp5OhnNxjpMrYsmbHqA==', '49.4404073', '6.0177489', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(256, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgot4vYZ/f3xTfrOvfLCA', 'aYSbn6akmKfF05yBdqdUhXNTfah8fLO3fQ==', '', 'bJtpZ2E=', 'hKmNig==', '', '', 'mslnYGZvZmSWkZKhk8Vhp5OhnNxjpMrYsmbHqA==', '49.1065712', '6.2131791', '61074af86d746360d4431c734fcc4240', '2018-11-20'), +(257, '', 'g718dXZYg4Cwuo6ifqeCjVKDgqiIiaqEf4GtgneLgn18hIB1f4Z4hA==', 'idmeUHWNU3SzrYevd65Ui3N1gqiI', '', 'bJxrYGc=', 'erOMfnZldoC5s4uOhbeGZn6CgrV7', '', '', 'mslnYGZwY2GVlXmhk8VhnZudqNFkndc=', '47.39989', '2.930161', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(258, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbelhnuwf4VYr4KLuH6Cg3mBdQ==', 'idmeUIGBeIO2pliud7B4foVTf7V3haip', '', 'bJxqYmE=', 'eqx6hHZ5iF6nqYGvgbBcj3t/hahf', '', '', 'mslnYGZwY2aZk4Ohk8VhnZudqNFkndc=', '47.059639', '3.938102', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(259, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fraJfIWofVinhYR9tY0=', 'aJlZkaedoabJgXy2UrKDh4ZTi7KLfqo=', '', 'bJ1sZmQ=', 'eLp+g399hl63toqOeqeAiXc=', '', '', 'mslnYGZxY2GVmZKhk8VhpZufpchkndc=', '50.1210516', '3.9252145', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(260, '', 'g718dXZYg4Ozp320hauDh4B4hYODgKisfYSBiXeKuH6L', 'apVZoJKrppLLxljFl4KgYHuhrciopcbYoafPl56d', '', 'bJ1pYGQ=', 'g62FfHY=', '', '', 'mslnYGZxY2KWloqhk8VhpZufpchkndc=', '50.6282731', '3.0940374', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(261, '', 'g718dXZYg4Ozp320hauDh4B4hYOCeLuzgYuqe4Q=', 'apVZUIONeFGwoo6we7V9foQ=', '', 'bJ1pZWo=', 'ibOOcnKBiw==', '', '', 'mslnYGZxY2KcmoOhk8VhpZufpchkndc=', '50.6947734', '3.1843379', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(262, '', 'g718dXZYg4Ozp320hauDh4B4hYN/g6qEfH2BfH55sH2JqQ==', 'aZhvUHOBhlG1tnmqUqZ5WX50Wad7ia66eYyqhYA=', '', 'bJ1tYmg=', 'eLaGdX+MfHa2pos=', '', '', 'mslnYGZxY2OZmIKhk8VhpZufpchkndc=', '50.6903938', '2.8909382', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(263, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYtXqAso11UYJ4crKvfYF2iXWLdQ==', 'aJlwUIONeFGoplitWaqDjXd/Wad7V7uthISm', '', 'bJ1vYmE=', 'eLmFfoCReF6luoWmhKt5jA==', '', '', 'mslnYGZxZWqWmaWhk8VhpZufpchkndc=', '50.1999263', '3.8303986', '424c61e1a177361299ce7afc28a24af5', '2018-11-10'), +(264, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVild3+Iq36Jtn4=', 'b5lZkaedoabJgXymUqZ5h3N8hw==', '', 'bJ1sYGE=', 'jaWFdX97fHayr320', 'jKp6UId5f3K2pog=', 'Z5dZYmhYZWKElnCBZ5o=', 'rcWlkaOdo3HawqTCpMekZ5il', '50.3542409', '3.4991018', 'a22a2d877d245117dac0d3f5429ca7ad', '2018-11-27'), +(265, '', 'g718dXZYg4Ott32BgLGIi3dgfaSDfIWofVitd1KItIiNrX11f3t4', 'idmeUHV9hlGrrZGke7B5jA==', '', 'bJ1sZWk=', 'hrZ8eHp9hg==', '', '', 'mslnYGZxZmGYkaKhk8VhpZufpcg=', '50.4806719', '3.2420076', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(266, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtXqAso1QfY12', 'apVZkqCtn5bawqrFUqZ5WX50Wa9/eaq2jH0=', '', 'bJ1tYGY=', 'eqWGcoN5fA==', '', '', 'mslnYGZxZmGakp+hk8VhpZufpchkndc=', '50.169978', '3.2303685', '30e133a0b4dd34bc301e9f2fc3ebdd42', '2018-11-28'), +(267, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtn5XsXqCen0=', 'aYSrpZZYeH6trX2Beqt5', '', 'bJ1rZ2E=', 'eaWCfH19iH0=', '', '', 'mslnYGZxZmGalKKhk8VhpZufpchkndc=', '50.7374752', '2.7319392', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(268, '', 'g718dXZYh3anqYawfrF7goOIfoOGia66fVi0d3uGtlmHrX6Cg30=', 'aJRZoqadU3W5gX+mgKeGen5TgLKLi66pioqm', '', 'bJ1vYWM=', 'fbOOgn6BeIQ=', '', '', 'mslnYGZxZmKUlZyhk8VhpZufpchkndc=', '50.0083669', '4.0500726', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(269, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLKmioeqiXdYpYuGrZNxhQ==', 'idmeUH55hXSprVixc7eA', '', 'bJ1yZWE=', 'eLl7iQ==', '', '', 'mslnYGZxZ2aXk36hk8VhpZufpchkndc=', '50.4150948', '3.0507573', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(270, '', 'g718dXZYg4Ozp320hauDh4B4hYN/g6qEgn2ihIaR', 'idmeUHKNeoa3tX2BiaN5jXeFeqiIfA==', '', 'bJ1qZGE=', 'e7mHe3aKhIap', '', '', 'mslnYGZxaGWckYShk8VhpZufpchkndc=', '51.030326', '2.361877', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(271, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLSyeYqlVnZ9go+Asnx5', 'idmeUHV9U32lgYqmgKN9jIV0h6Z7', '', 'bJ1qYmY=', 'i7aChHllhnKtr4yOfqd7foQ=', '', '', 'mslnYGZxaGebmZqhk8VhpZufpchkndc=', '50.330411', '3.482308', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(272, '', 'g718dXZYg4Ozp320hauDh4B4hYN8iaaye4eqiVKKo3t8sHp5hA==', 'b5VwUKOtmFGnqXmzfqeHWXSCjrWJfLqw', '', 'bJ1uYGg=', 'e7OOcXo=', '', '', 'mslnYGZxaGmdlYShk8VhpZufpchkndc=', '50.3763701', '3.0684226', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(273, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWibSmfYq3d34=', 'aJRZgoZ9U3WptFiohKeO', '', 'bZRvYGE=', 'ebZ+hXqEYH2pjo6mhLY=', '', '', 'mslnYGdoZGicmIuhk8Vhmp+cntGpZcvW', '49.3639971', '2.4176791', '61074af86d746360d4431c734fcc4240', '2019-01-08'), +(274, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6iseYqte4VYpn5Xq3qFfYR4', 'ibl+UHt5doK5pouBdqN7jneFi6g=', '', 'bZRsYmI=', 'erOGgHp9en+p', '', '', 'mslnYGdoZGmalJKhk8Vhmp+cntGpZcvW', '49.3875307', '2.7841027', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(275, '', 'g718dXZYg4Ozp320hauDh4B4hYN8g7S2eVi1iHuLtnqF', 'boRZcYd9gYapgYWmh7B9foRTfahWg6aEinmqgn59tH4=', '', 'bZVvYGE=', 'g6VZdnaKh3aRrnmkdw==', '', '', 'mslnYGdpY2GVmqihk8VhnJOYp5GcqQ==', '48.5938797', '-0.360905', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(276, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYsoJ8tot1UYV4f6imi454tHWHdXg=', 'ibl+UISHeIa2gYWihKt5WXSCgrd/fLc=', '', 'bZVvYGE=', 'g6VZdnaKh3aRrnmkdw==', '', '', 'mslnYGdpY2qdl5qhk8VhnJOYp5GcqQ==', '48.598552', '-0.3492886', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(277, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe7qEfH21iIGBtg==', 'aZRpUFGKiHaEqI2qfq51jn94WaSGhrGwgYaif4R9', '', 'bZZqYGg=', 'eqWFcXqL', '', '', 'mslnYGdqY2KcmYyhk8VhpZufpchkndc=', '50.9393964', '1.8739577', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(278, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWh66pioqmVn99sH18t2Z2g3mBdKk=', 'ibl+UHV9U4Slqoa1UrGBfoQ=', '', 'bZZwYGI=', 'ebaOcYplf3KRo42qhbV9foR4', '', '', 'mslnYGdqY2Kdk5Chk8VhpZufpchkndc=', '50.4872426', '2.5379071', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(279, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6athli0d4h5tJJXkVl6hoR4hISnfbOEuw==', 'aJhZUHKOeH+5plird6OCWYx0kg==', '', 'bZZpYmM=', 'eLaLcYQ=', '', '', 'mslnYGdqY2OZmIyhk8VhpZufpchkndc=', '50.2837422', '2.7478476', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(280, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYpHqMqIJ9gIaHUbeiga+Gj3eBc4WFqIk=', 'aJtZUIONeFG3ooGvhoKBeoeFgqZ7', '', 'bZZpYGk=', 'eLaLcYQ=', '', '', 'mslnYGdqZWKdl5mhk8VhpZufpchkndc=', '50.2941435', '2.7705169', 'c99098a23e6b9884a7091e22532a929b', '2018-11-20'), +(281, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtlmHrX6Cg30=', 'bpVZUIONeFGnqXmvhquAhYs=', '', 'bZZqYGE=', 'eqWFcXqL', '', '', 'mslnYGdqZWOVkquhk8VhpZufpchkndc=', '50.943517', '1.8552069', '882fc9d1ec92899f692469f558318ea3', '2018-12-13'), +(282, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eK', 'eLp+foZ9U3W5gXupc7Z5eoc=', '', 'bZZuYmE=', 'g6lZhICNhIaptWWxc7R9jF+DhaR9fA==', '', '', 'mslnYGdqZWmUmIihk8VhpZufpchkndc=', '50.516361', '1.602514', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(283, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf6qyioGBiXeGp5M=', 'ebOOfHaOdIOogX6BdqOGfHp8fLKLibk=', '', 'bZZrZWM=', 'f6mHeX9ldXaltoWwgLY=', 'i6mFfHp9jQ==', 'Z5tZZ2FYZmqElGyBapY=', 'mslnYGdqZmSWmX6hk8VhpZufpchkndc=', '50.406364', '2.961933', 'a4187af6efb3fc18293ecd9aa0e04e3a', '2019-01-02'), +(284, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Klin+2e4SBtn5XvYiFg3t4f6Wz', 'bZxZUIONeFGlr4ywe7B5WXZ4WbZ3gLO4WH25i4J9tJI=', '', 'bZZvZmE=', 'eamOhoOR', 'hLF+UHl9hYSzug==', 'Z5dZYmJYaWWElmmBZZQ=', 'pMWgkZ2hmqbNzaTCpMZ0oaGnpsSfo5PHp6U=', '50.5203642', '2.6659653', '848898feb038ad8e4e8c230083419cf0', '2018-12-12'), +(285, '', 'g718dXZYg4Cwuo6ifqeCjVKJerh4eLM=', 'aISrpZZYd3aEo4qmhqN7h3c=', '', 'bZZyYmM=', 'eK2LdV6LiIORrXmOfruH', '', '', 'mslnYGdqZmqckoqhk8VhpZufpchkndc=', '50.6342907', '2.40671', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(286, '', 'g718dXZYg4Ozp320hauDh4B4hYN8iaaye4eqiVKKo3t8sHp5hA==', 'aJdZcYd9gYapgXymUqV8eoR1iLGEgKq2', '', 'bZduZ2E=', 'ebZ6g4R5dl6wpouOf6uCfoU=', '', '', 'mslnYGdrY2GVk4+hk8VhnJ6Yq9ClpdmSnqo=', '45.413519', '3.3214974', '61074af86d746360d4431c734fcc4240', '2018-11-26'), +(287, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV5I=', 'jdOilVGKgn6lqoam', '', 'bZdtYGE=', 'eqx6fXKEfHa2pos=', '', '', 'mslnYGdrZGeampChk8VhnJ6Yq9ClpdmSnqo=', '45.7784002', '3.0495417', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(288, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf6a5jH2BjId9', 'eLp+foZ9U3WptFike695jA==', '', 'bZhqZmE=', 'hLOLfHJ5hg==', '', '', 'mslnYGdsY2GYk5Ghk8Vhm6GlnciXrN2Snqo=', '43.3406856', '-0.2758472', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(289, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0ilKOq4d6qYeEUXx4UbSija0=', 'edOunJaulKPIgX2lgbd1i3ZTgaiIia6zjA==', '', 'bZhpZWI=', 'h6WO', '', '', 'mslnYGdsY2KcmoChk8Vhm6GlnciXrN2Snqo=', '43.3050103', '-0.3782568', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(290, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tgneKq35XpoJxg4p8hb6BebV+o4KNe4SOqA==', 'aYSLhXZYeVGuooWud7U=', '', 'bZhrYGU=', 'ea16goOBh4s=', '', '', 'mslnYGdsZGmWlIKhk8Vhm6GlnciXrN2Snqo=', '43.4626859', '-1.5526127', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(291, '', 'g718dXZYg4Cwuo6ifqeCjVJ3foOEeLulioqm', 'idmeUHt5fFGlrXmq', '', 'bZhrYmE=', 'iqWCfoVlfXalr2Wxe6d4ZnZ4ZrOFibk=', 'qsWnUKGdl6PTgaLGk9A=', 'Z5lZZWpYZmiEmnGBZpk=', 'mMedpJ2xlpbJxZ3Pk9iVq6SYecqjmM7QZpvQow==', '43.1673642', '-1.2319105', 'd3a3077f4a96232371fa848528f5c9f1', '2018-11-06'), +(292, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fIWwX3mziIGNvHo=', 'aZxZUHOHiH2pt3mzdoKGiHl4i4N5eL+phnm3ew==', '', 'bZlqYGg=', 'g7OOgnV9hg==', '', '', 'mslnYGdtY2GVlYWhk8VhraGopdKrqsqSnqo=', '43.0899002', '-0.0488929', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(293, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg6a5jIqmd3+HsI0=', 'eLp+foZ9U3WEopKmhKd9kQ==', '', 'bZlpYWc=', 'i6WLcnaL', '', '', 'mslnYGdtY2mblZChk8VhraGopdKrqsqSnqo=', '43.227193', '0.055477', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(294, '', 'g718dXZYg4Cwuo6ifqeCjVJ2gbV/irmteYaBeIGNtIqMrYc=', 'a4SappamqJaEr32thbGCWX90h6d7g6Y=', '', 'bZpwYGE=', 'eLaAdX19hl63toqOf6eG', '', '', 'mslnYGduY2qWlY+hk8VhpqGhrdObo9HNnaqPnKQ=', '42.5654607', '3.0059057', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(295, '', 'g718dXZYg4Ozp320hauDh4B4hYN3ia63jIGle1J6tIJ4sn0=', 'aJZZoqadU3W5gXqihLR1gHc=', '', 'bZtsYGI=', 'iqeBeX2MfHispoGu', '', '', 'mslnYGdvY2Gak3yhk8VhrKalmtaYptrWn2bHqA==', '48.6039308', '7.7519037', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(296, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6awfZCihHaKp1l7uYZxhFhbebO1fa17p4Zi', 'bplZoqCtp5aEpY2BhKp9hw==', '', 'bZttYGU=', 'gLCFe3qKdnmRqIqieKh5h4WHeqd7hQ==', '', '', 'mslnYGdvY2GcmH6hk8VhrKalmtaYptrWn2bHqA==', '48.5273882', '7.7311574', 'f0d8913528252ccf278e750de5250d79', '0000-00-00'), +(297, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3uGtn5XuIF1g32Gdg==', 'a4SLhXZYd3a3gXmtfqt5jA==', '', 'bZtyZ2E=', 'hqmLfXqGenay', '', '', 'eslnYGdvZGebmoShk8VhrKalmtaYptrWn2bHqA==', '49.00087', '7.128347', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(298, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVikfnOKrn6KhH11UX6Chqeija12', 'eLCFdXZYd1iltYCmgKeH', '', 'bZtsYGc=', 'iqeBeX2MfHispoGu', '', '', 'eslnYGdvZWeUk4ihk8VhrKalmtaYptrWn2bHqA==', '48.6075759', '7.7099709', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(299, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeq2lioSmiVKIsYKFuH6E', 'bISLhXZYd3a3gYyqhKN9hX54jrWJV7Klioekd3uGtQ==', '', 'bZxxYGM=', 'i6x6fn8=', '', '', 'mslnYGdwY2GblYShk8VhrKalmtaYptrWn2bHqA==', '48.0708933', '7.3367713', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(300, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+zi32xflKLtoiJp4RQWYCChamtgaaEiw==', 'ibl+UHuNf3a3gX6mhLSN', '', 'bZxuYGU=', 'frl+coiBf32psw==', '', '', 'mslnYGdwZGmXmn2hk8VhrKalmtaYptrWn2bHqA==', '47.901203', '7.228875', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(301, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf6qwfYamVnSHt3x/qYs=', 'aJxZUIONeFG2sIumgKR5i3k=', '', 'bZ1vY2I=', 'jamHeYSLfHa5uQ==', '', '', 'mslnYGdxY2GdlHqhk8Vhpauip5GcqQ==', '45.6983536', '4.8905485', '61074af86d746360d4431c734fcc4240', '2018-11-28'), +(302, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6u2eYakhXuLgot4pn58coGG', 'eqx+fXqGU3W5gXywdquC', '', 'bZ1uZ2I=', 'e6WLdHqEf4o=', '', '', 'mslnYGdxZmaUlYKhk8Vhpauip5GcqQ==', '45.8161658', '4.7629036', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(303, '', 'g718dXZYg4Cwuo6ifqeCjVJ0gqqLfLelhnym', 'aYRZgH15dnaEqH2whKl5jFJ3jreIfLup', '', 'bZ1xYmQ=', 'eamFfHaOfH2wpg==', '', '', 'mslnYGdxZmiXlYKhk8Vhpauip5GcqQ==', '46.104654', '4.7451788', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(304, '', 'g718dXZYg4Ozp320hauDh4B4hYOGhrO4eYqkfneK', 'h9Cak5ZYfXKnso2mhYJ2i3d/', '', 'bpRpYWU=', 'jamMf4aE', 'h6mNgnaFeH+4', 'Z5dZaGVYbGiEkWuBZJk=', 'mslnYGhoY2mck5yhk8Vhm5emmtGZptOSnqo=', '47.6354117', '6.1686975', '8ea451954db795458ffb34ea04851bfe', '2018-11-27'), +(305, '', 'g718dXZYg4Cwuo6ifqeCjVJ/jrB/fLep', 'apdZpJaqU6PZxliohKOBhoGBjQ==', '', 'bpRsYGc=', 'g7mRdYaBf16wpouOdKN9h4U=', 'fdCoopamlpaEt5nTpMOprQ==', 'Z5dZaGVYZ2GEk2mBZJM=', 'ndCoopamlpaS15nTpMOprXKUnJCYnNjFppvQpGCe1A==', '47.8245661', '6.3779426', '5d267d7f6cb5a94960cf8a898f7bb728', '2018-12-07'), +(306, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLGpkHmveoR9gn2MsXp5f30=', 'cJlZlaSolJTJgXmtd7p1h3aFfoN6jLKlgYam', '', 'bpVpYWk=', 'hKV8f38=', 'iqV7cV6AdISprYWme6eG', 'Z5dZaGZYZWGElmmBaZM=', 'mslnYGhpY2GckXqhk8VhnZudqNFkndc=', '46.3138226', '4.81663', '61074af86d746360d4431c734fcc4240', '2019-02-11'), +(307, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWojVi0d3WKp1l6s36Fgw==', 'aZZZUHKOeH+5plild4J3gXOFiK+CfLg=', '', 'bpVvYGU=', 'h6WLcYplf3aRroeve6OA', '', '', 'mslnYGhpZGiZlrChk8VhnZudqNFkndc=', '46.4500904', '4.125945', '61074af86d746360d4431c734fcc4240', '2018-12-19'), +(308, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfbqyeZGOfneEp4d8hHt/hnt7drY=', 'aJlwUKOtmFGsj3upc6+EgoGB', '', 'bpZpYGI=', 'g6lZfXKGhg==', '', '', 'mslnYGhqY2GXlY+hk8Vhp5OhrcipZcvW', '47.983707', '0.2262363', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(309, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtY18hHxxhYB4g62vfQ==', 'aZRrUKOtmFGopli0hoJ1jnR8hw==', '', 'bpZpYGE=', 'g6lZfXKGhg==', '', '', 'mslnYGhqY2mWk3uhk8Vhp5OhrcipZcvW', '48.0226076', '0.1787404', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(310, '', 'g718dXZYg4Ozp320hauDh4B4hYN+hrmphIGmiA==', 'bphZoqadU3W5gX+zc7B4WXR0i6V7iaa+', '', 'bpdqaWE=', 'eqx6fH19hl6wpouOd6OJkQ==', '', '', 'mslnYGhrY2GVk4uhk8VhoKSYp9KYo8qSnqo=', '45.5505893', '5.9824276', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(311, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLKmioeqiXdYpYuGrZNxhQ==', 'aZhtUFF5iXaytn2BdqdUhXNThax4fLeljIGwhA==', '', 'bpdvYGU=', 'hLOOhHp9hYQ=', '', '', 'mslnYGhrY2GXkYShk8VhoKSYp9KYo8qSnqo=', '45.4823827', '6.5285805', '61074af86d746360d4431c734fcc4240', '2018-11-19'), +(312, '', 'g718dXZYenaypoqifoJ5jVKHfqZ+hbSwh3+qh4d9gol4uYVQeX2FgLmtjA==', 'apRwUFF5iXaytn2BdrdUhoGBjYN5fLOtiw==', '', 'bpdsYGM=', 'iqWCfoVlfXalr2Wld4+BeoeFgqiEhao=', '', '', 'mslnYGhrY2GXmI2hk8VhoKSYp9KYo8qSnqo=', '45.2725731', '6.3502322', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(313, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfIW3eYSmjHc=', 'bJ1ZgoCNh3aEpV+Bd7aGfn91gqiIfLg=', '', 'bphqYGg=', 'eLKHdX55hoSp', 'ibOMg3o=', 'Z5hZZWFYbGOEmmmBaZc=', 'mtixXmFvZ2GUkmircsOXZpmlntGlmdHJZp7T', '46.1865393', '6.2327195', '4ba1a8f3a1a7afa4c478243ba4d8c2a0', '2018-11-19'), +(314, '', 'g718dXZYg4Ozp320hauDh4B4hYN+hrmphIGmiFJ+tHqFp4h5hFh1erem', 'b5pZoqadU3WLgXm0gKt5i3eG', '', 'bphqY2c=', 'ebOHfnaOfH2wpg==', '', '', 'mslnYGhsY2GVlYahk8VhoKSYp9KYo8qSnqo=', '46.085247', '6.4103438', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(315, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7iljoeqe1KEp4Z4sg==', 'a5RZkqCtn5bawqrFUqV1i4CCjQ==', '', 'bphrYGQ=', 'i6yIfoCGYH2ptGWjc6uCjA==', '', '', 'mslnYGhsY2GYmJKhk8VhoKSYp9KYo8qSnqo=', '46.37176', '6.4751317', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(316, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6+peYaBeoSHt3qFuA==', 'aZRZUIONeFGxpnymhKt3', '', 'bplpYWg=', 'h6WLeYQ=', '', '', 'mslnYGhtY2iUmYWhk8VhqZOlotZkndc=', '48.8806876', '2.3042936', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(317, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeaqwhIGiiHY=', 'aJduUFGKiHaEo32tfqt1i3Y=', '', 'bplpYWk=', 'h6WLeYQ=', '', '', 'mslnYGhtZWeUmXuhk8VhqZOlotZkndc=', '48.8962512', '2.334467', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(318, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvindltoF8tn6Ddg==', 'a5RZUIONeFGwolingbCIenuBfg==', '', 'bplpYWc=', 'h6WLeYQ=', '', '', 'mslnYGhtZmOVmIihk8VhqZOlotZkndc=', '48.8509709', '2.2717481', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(319, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYo4V8vHp+dYp4Uai2haKF', 'aZ1ZcnqLU4O5plild4J3i4GBjLd3e7k=', '', 'bplpYWY=', 'h6WLeYQ=', '', '', 'mslnYGhtZmOZl3+hk8VhqZOlotZkndc=', '48.8338029', '2.3017219', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(320, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWlhHqmiIZYpn5XsY5+', 'aYRZgoZ9U3WLsISqiKeI', '', 'bplpYGg=', 'h6WLeYQ=', '', '', 'mslnYGhtZ2GXkZGhk8VhqZOlotZkndc=', '48.8496888', '2.3196165', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(321, '', 'fKeIfHZYZXWEpX2ohKdUiYSCf5GGia66fX2Be3WHrn6KhImCeo54doSnfbOEo4J9ew==', 'aZxZUIONeFGoplitWaN2e3dTgLV7frStin0=', '', 'bplpYGc=', 'h6WLeYQ=', '', '', 'mslnYGhtZ2KWmn6hk8VhqZOlotZkndc=', '48.8475221', '2.3253994', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(322, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6y5gYStd4eFp1mLrYt1fQ==', 'aZdwUFF6goawpo6ihKZUi3OGiaR/gw==', '', 'bplpYWU=', 'h6WLeYQ=', '', '', 'mslnYGhtZ2Wbl4Chk8VhqZOlotZkndc=', '48.8395407', '2.331148', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(323, '', 'g718dXZYg4Ozp320hauDh4B4hYN3jKy5i4ymVnR5tI1/s4V0eg==', 'bJZZUHKOeH+5pliihKuHjXt3foN4ia6lhnw=', '', 'bppsZmE=', 'eaWLdX+MfH8=', '', '', 'mslnYGhuY2GUmI6hk8Vhq6GontFkndc=', '49.5417002', '0.9569676', '9f7e3069e7677e85ef2b8238745454a2', '0000-00-00'), +(324, '', 'g718dXZYg4Ozp320hauDh4B4hYN6fLineYq1e4U=', 'aJlwZVFYdYC5rX23c7R4WYB4hbaFhYWxeYale355', '', 'bpptYGI=', 'fal8cX6I', '', '', 'mslnYGhuY2GXl3qhk8Vhq6GontFkndc=', '49.7465344', '0.3872123', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(325, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWgbqwfYuBgndYpX6Ksn4=', 'apdZUIONeFGqrX22hLeH', '', 'bppvYGE=', 'g6lZeHKOhXY=', '', '', 'mslnYGhuY2Gak32hk8Vhq6GontFkndc=', '49.4906537', '0.1382278', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(326, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfIWsjYqte1+Op4eL', 'aIRZgoZ9U3upooaBf7GJhXuB', '', 'bpptZ2E=', 'g6lZhIN9g4C2tQ==', '', '', 'mslnYGhuY2KVlYShk8Vhq6GontFkndc=', '50.0566134', '1.3684553', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(327, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWufXmvhHdYpmB4tnw=', 'aZZZUIONeFGotliod7B5i3N/Wad7V6yljYStew==', '', 'bppsYWE=', 'iqWCfoV9YHKos320hac=', '', '', 'mslnYGhuZGiXlpGhk8Vhq6GontFkndc=', '49.501871', '0.089656', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(328, '', 'erOFfHZ/eFG0oo2tUqR5i4Y=', 'aYSLhXZYg3K5rVijd7SI', '', 'bpptYGQ=', 'fal8cX6I', '', '', 'mslnYGhuZGiclnuhk8Vhq6GontFkndc=', '49.7558715', '0.3821548', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(329, '', 'erOFfHZ/eFG2poamUqWDjYs=', 'ibl+UHaFgHKytn2tUq55fIF4jrU=', '', 'bppwYmE=', 'eLl/dnKR', '', '', 'mslnYGhuZGqZl4ahk8Vhq6GontFkndc=', '49.711235', '1.111639', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(330, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKCsYx8tIE=', 'eqz8soV9dIaEpX2Bf6eHh3t4i6iJ', '', 'bpprZ2E=', 'hKmMfnp9hXa3jn2vX6SGeos=', '', '', 'mslnYGhuZWWYk4uhk8Vhq6GontFkndc=', '49.7623056', '1.3796292', '61074af86d746360d4431c734fcc4240', '2018-11-19'), +(331, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6yph4qoe4VYpHqHuIKDhX0=', 'a5VZoqCtp5aEpX2Bdrd3hXN8iw==', '', 'bppsaGE=', 'eqWHhHaEeIY=', '', '', 'mslnYGhuZmOXmH6hk8Vhq6GontFkndc=', '49.4430885', '1.0188297', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(332, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYrn6GtIh8dVh1drCtea8=', 'e7OGcXqGeFGoplitWaOCgHdTgKSIe66phg==', '', 'bptrZmE=', 'eqx6fXp/gYo=', '', '', 'mslnYGhvY2SYk3yhk8VhnKSYrcifo5PKqg==', '48.9818823', '3.1446579', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(333, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6m5WH+2e1J5go2JqYx9dos=', 'e7OGcXqGeFGotlioh6dUelKHi6iJhKq3', '', 'bpttZGE=', 'erOHd3qLYIS5s2W1eqeGiId0h7F7', '', '', 'mslnYGhvZGeZmYKhk8VhnKSYrcifo5PKqg==', '49.021134', '2.9644027', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(334, '', 'g718dXZYg4Cwuo6ifqeCjVJ6frV3iamEfH2BhHeKuHqD', 'b51ZUHSHiIO3gXymhYKGiHV7frZjhbSti4Gmgg==', '', 'bptqaGc=', 'hbOCg3p9fw==', '', '', 'mslnYGhvZGqYkYqhk8VhnKSYrcifo5PKqg==', '48.8417733', '2.615006', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(335, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLO4h4aqhFJ7o4t8sX4=', 'aISJfHJ7eFGrtou1c7h5WXWCjrV4fLk=', '', 'bptqZ2c=', 'iqWPeXiGjF6wpmW1d6+EhXc=', '', '', 'mslnYGhvZWOYlY+hk8VhnKSYrcifo5PKqg==', '48.5955639', '2.578176', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(336, '', 'g718dXZYg4Cwuo6ifqeCjVJ4hqyCgKqEfI2BeXp5tn6DqY0=', 'aplZUHSHiIO3gXy2UqZ1h4d1fg==', '', 'bptwYGE=', 'iqmLgnqL', '', '', 'mslnYGhvZWecmXyhk8VhnKSYrcifo5PKqg==', '48.8574629', '2.7784607', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(337, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6mLgIe1e36Ep4uAqVl1hVh3doS1h7aEq4eGdw==', 'h7B6c3ZYeYOlr3uwe7VUi3N1fq93gLg=', '', 'bpxpZGM=', 'frmScX97goa2tQ==', '', '', 'mslnYGhwZGabmYuhk8Vhr5elrMSfo9HJq2bHqA==', '48.7845521', '2.0504451', 'f5531e52bba08f7a93c4a66935da9ab6', '2018-12-03'), +(338, '', 'g718dXZYg4Cwuo6ifqeCjVJ/iLh/ioWmeYukd4A=', 'bIRZcYd9gYapgXy2Uql1hVJ/fqaCfLen', '', 'bpxuYWQ=', 'iaWGcoCNfH2wpow=', '', '', 'mslnYGhwZWaYmpChk8Vhr5elrMSfo9HJq2bHqA==', '48.6410948', '1.8250651', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(339, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6ilhYGtgndYpYV4uX11fQ==', 'aZVZUIONeFGoplitc4KAkoR4', '', 'bpxwYWI=', 'hKWHhHaLYH2ljo6qfq55', 'g92c89qdU3TFzqHNnsdUfJ6Ursebow==', 'Z5VZY2VYbGiEmmqBY5s=', 'mslnYGhwZmaXlIuhk8Vhr5elrMSfo9HJq2bHqA==', '48.9656943', '1.7163952', 'f64406d29e378d90f40150ed3aa4f442', '2018-11-19'), +(340, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLiEf4qqhoJ9o46P', 'aISLhXZYeHWztnmzdoJ8foSFgrKK', '', 'bp1rYGU=', 'h6WLhHl9gXK9', '', '', 'mslnYGhxY2GdkY2hk8VhqaGcrcybqdiSnqo=', '46.6373951', '-0.2596431', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(341, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWe7qEhXmzh4d9sI18tot1', 'aYSLhXZYd4aErnmzc6uH', '', 'b5RqYmE=', 'ibl+', '', '', 'mslnYGloZGiXmn6hk8Vhmp+cntGpZcvW', '50.2684644', '1.674729', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(342, '', 'g718dXZYg4Cwuo6ifqeCjVJ/eoN+hrmzgX0=', 'ibl+UHWNU3OltYevgKt5i1KAeqt/jA==', '', 'b5RpYWc=', 'eLGCdX+L', '', '', 'mslnYGloZGmck4Shk8Vhmp+cntGpZcvW', '49.8964029', '2.2741636', '61074af86d746360d4431c734fcc4240', '2018-12-21'), +(343, '', 'g718UHh9gVG4pnupUrKGgoh4WcebqoWxfYyqe4SLgox4rYeEUYV0g7iqhg==', 'bZxZUIONeFGopoSxd6V8', '', 'b5RpZGQ=', 'eLGCdX+L', '', '', 'mslnYGloZGmcmYyhk8Vhmp+cntGpZcvW', '49.8843937', '2.2947937', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(344, '', 'g718dXZYg4Ozp1ixhKuKflKXntZWhKq4gX2ziVKLo4KFuFl9coqHerI=', 'bZxZUIONeFGopoSxd6V8', '', 'b5RpZGQ=', 'eLGCdX+L', '', '', 'mslnYGloZGqYmYChk8Vhmp+cntGpZcvW', '49.8843937', '2.2947937', '61074af86d746360d4431c734fcc4240', '2018-12-21'), +(345, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0d3WKp1l6s36Fgw==', 'appZcoCNf3a6ooqlUqZ5jFJ0h6qCeK63', '', 'b5RrYGE=', 'h6mLf3+GeA==', 'e6mCfH2HgQ==', 'Z5pZYWhYZWmElG2BY5Q=', 'm82rlZSsmKbWoavCldSZZpWintioZNXJqqfPpJdm0J6r', '49.9266205', '2.9343804', '08f888846060a0e207c51183ef4f6871', '2018-10-27'), +(346, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4Q=', 'a5lZUIONeFGwooimi7SDjoV4', '', 'b5VrYGE=', 'hKWTcX59hw==', '', '', 'mslnYGlpZGKYlXyhk8VhraGopdKrqsqSnqo=', '43.5042758', '2.3840172', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(347, '', 'g718dXZYg4Cwuo6ifqeCjVJ9fqSEV6mpWIizd3Z9tQ==', 'ibOOhHZYd3aEtYe2frGJjHc=', '', 'b5ZqYGM=', 'eqWMhHaEhnK2s3m0e7A=', 'fbOHdIOBeIS4gYvantidng==', 'Z5pZZmNYZGqEmWiBapU=', 'mslnYGlqY2GUlYKhk8VhraGopdKrqsqSnqo=', '44.0333916', '1.1210607', 'ffd92273a70b631d276c61fd773eff68', '2018-11-05'), +(348, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVixf3eKtH5XsXqCen1ThaymebQ=', 'ibl+UH55hXqpjoqwhadUgHuBfraKfA==', '', 'b5ZpYGE=', 'hLOHhHKNdXKy', '', '', 'mslnYGlqY2Gako+hk8VhraGopdKrqsqSnqo=', '44.0005115', '1.3609696', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(349, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLSyWHqti38=', 'aJVqYVF6goawpo6ihKZUhXeCh4N4g7qx', '', 'b5dpYWI=', 'e7Z6d4aBen+lrw==', '', '', 'mslnYGlrY2GVl6uhk8Vhp5uWnpGcqQ==', '43.5268319', '6.4863031', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(350, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfrSwfmWphYZ9rg==', 'eLCF87p9U3ipsIqod7VUfYeGjKSLfqo=', '', 'b5dtYGE=', 'f71+gnaL', '', '', 'mslnYGlrZGGVlZqhk8Vhp5uWnpGcqQ==', '43.1306974', '6.155078', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(351, '', 'g718dXZYg4Cwuo6ifqeCjVJ0haV7ibmEe3mui4U=', 'bJppUKOtmFGspoaze4J7goR0jqc=', '', 'b5dvYGE=', 'fbZ+eoaL', '', '', 'mslnYGlrZGWYkaihk8Vhp5uWnpGcqQ==', '43.4425395', '6.7557437', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(352, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7epf4GwhHOEgnqFsn5dhIeDea2mWLF7pQ==', 'ibl+UHR9hnK2gY6mjLx1h3s=', '', 'b5dpaWk=', 'i7OOfICG', '', '', 'mslnYGlrZGWZlJyhk8Vhp5uWnpGcqQ==', '43.1231905', '5.9313914', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(353, '', 'g718dXZYg4Ozp320hauDh4B4hYN3ia63jIGle1J6tIJ4sn1QWXuChra0YQ==', 'boRZc4CNhYSEooqqhbZ9fXdTe7V/eLOo', '', 'b5hqYGE=', 'hrZ6fnh9', '', '', 'mslnYGlsY2GYl42hk8VhmpurZtCXqdjJoaTNm2Ce1A==', '44.138054', '4.8043634', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(354, '', 'g718dXZYg4Ozp320hauDh4B4hYN3g6q8eYaliHdYpo6EpYw=', 'ibl+UHKEg3mzr4umUqx1jnh5i6iK', '', 'b5hsYGE=', 'eqWPcXqEf4Cy', '', '', 'mslnYGlsY2KVlIuhk8VhmpurZtCXqdjJoaTNm2Ce1A==', '43.8326963', '5.0287304', '56e2607317eb96a23bfe692af3a9a550', '2018-11-28'), +(355, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWfaq2fIGvd4B8got8uoiFfQ==', 'ibOOhHZYd3aEr5GwgLU=', '', 'b5hvYGI=', 'jaWFgnZ5hg==', '', '', 'mslnYGlsY2iUkX2hk8VhmpurZtCXqdjJoaTNm2Ce1A==', '44.3869971', '5.0111847', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(356, '', 'g718dXZYg4Ozp320hauDh4B4hYN7e7S5eYqlVnSKo4eDvQ==', 'bISbn6akmKfF05yBd6aDjnOFfYN4iaayhJE=', '', 'b5lpYGc=', 'g6VZgoB7e3aRtI2zX7uDhw==', '', '', 'mslnYGltY2GWmY2hk8Vhp5OhrcipZcvW', '46.6743057', '-1.4423294', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(357, '', 'g718dXZYg4Ozp320hauDh4B4hYOMeLGpin2Bg3OMqn4=', 'idmeUHSAdIWpoo2jhKt1h3ZTiK+FhbOpZYuOg3eK', '', 'b5lsZGE=', 'hrCIfn99YIS5s2Wud7Q=', '', '', 'mslnYGltY2GYlIOhk8Vhp5OhrcipZcvW', '46.5121262', '-1.7744359', '61074af86d746360d4431c734fcc4240', '2018-12-05'), +(358, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYjw==', 'idmeUHV9U32Eonqjc7t5', '', 'b5lqaGE=', 'eqx6hHZ5iF6oiIetgbCCfg==', '', '', 'mslnYGltY2GYmKihk8Vhp5OhrcipZcvW', '46.4688016', '-1.7295687', '61074af86d746360d4431c734fcc4240', '0000-00-00'); +INSERT INTO `eta` (`id_eta`, `academie`, `nom_eta`, `adresse1`, `adresse2`, `cp`, `ville`, `nom_ref`, `tel_ref`, `email_ref`, `lat`, `lon`, `mdp_ref`, `date_co`) VALUES +(359, '', 'g718UIGHf4q6ooSBgrR9j3dTfaiJV7KpjIGmiIVYsH1XqI5Qg4d2', 'idmeUHSAdIOwpoWiebB5', '', 'b5lpY2Y=', 'g6VZgoB7e3aRtI2zX7uDhw==', '', '', 'mslnYGltY2KXkX2hk8Vhp5OhrcipZcvW', '46.6839462', '-1.42012', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(360, '', 'g718dXZYg4Ozp320hauDh4B4hYOCfLiEjH2ziHeLgouGuYB1hA==', 'idmeUHt9dH+Eroe2fquC', '', 'b5ptYGE=', 'eq2PgnKR', '', '', 'mslnYGluY2GVkY2hk8VhqaGcrcybqdiSnqo=', '46.135466', '0.282239', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(361, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWhKa2e1iohXaKq34=', 'aJ1ZoqadU3WptFiud7eGfoU=', '', 'b5prYGc=', 'g7OOdIaG', '', '', 'mslnYGluY2GWk3+hk8VhqaGcrcybqdiSnqo=', '47.0125997', '0.0887223', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(362, '', 'g718dXZYg4Cwuo6ifqeCjVJ/ibJWgr6zjIc=', 'aZpZUHKOeH+5plild4KAelJ5i6SKfLeygYym', '', 'b5ppY2U=', 'h7OChHp9hYQ=', '', '', 'mslnYGluZGWUmaahk8VhqaGcrcybqdiSnqo=', '46.589366', '0.3835721', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(363, '', 'g718dXZYg4Ozp320hauDh4B4hYOAfKayWHqihoaBtY18hH1xg4Z4hQ==', 'aZxZUHKOeH+5plild4KEfoR8gLh7jL0=', '', 'b5tuYGE=', 'iqWCfoVljIOtpoG5X651ZoJ4i6Z+fA==', 'g6WPdYOGe3Y=', 'Z5pZZGNYZ2OEl2mBZZQ=', 'msyell6spZLawq3ZYMaVq6CYraOXmpLQoaXQnZerkJ+p', '45.5039229', '1.2011306', '573c862bb371b772f9d2dd29769db4b7', '2018-11-26'), +(364, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVi0ilKCp3qF', 'aZpZUIONeFGptn+mgKdUj3OFhayE', '', 'b5tpYWc=', 'g62Gf3h9hg==', '', '', 'mslnYGlvY2qVmpqhk8VhpZugqMqbqpPKqg==', '45.826034', '1.2752724', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(365, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgoN8pYdQfoeBf6m1', 'aJZZUIONeFGwsI2qhYJ1i3+GjbWFhaw=', '', 'b5tpZmY=', 'g62Gf3h9hg==', 'hZJZgPTBdnmzrw==', 'Z5lZZWZYZmaElXCBYpI=', 'pc2cn52Zpl/UxpvJodB0mpVgpcyjpszJq2bHqA==', '45.8517241', '1.292747', '620f97ad889d7a0aef971a475d4f2d37', '2018-11-19'), +(366, '', 'g718dXZYg4Ozp320hauDh4B4hYOGgKq2in2Bg3eGpn6KhH+CcoZ2dg==', 'aJRpUKOtmFGotli0eqN8WXZ4WbN7ibip', '', 'b5xqZGE=', 'erOHhIN9i3a6qoStdw==', '', '', 'mslnYGlwY2GVlIShk8Vhp5OhnNxjpMrYsmbHqA==', '48.1816153', '5.8951182', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(367, '', 'g718dXZYg4Ozp320hauDh4B4hYN5eLKthISmVnWEo457qYU=', 'aYSrpZZYd4aEsXmzf7GCjQ==', '', 'b5xrYGM=', 'iamGeYN9gICytQ==', '', '', 'mslnYGlwZGKYkYShk8Vhp5OhnNxjpMrYsmbHqA==', '48.015098', '6.5851255', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(368, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVivhYaKp1l7pYZ1UWVThKWqhrVSrIOMd4OB', 'aZdZgoZ9U4Wsqn2zhQ==', '', 'b5xpYWM=', 'fLSCfnKE', '', '', 'mslnYGlwZGaXkYOhk8Vhp5OhnNxjpMrYsmbHqA==', '48.1698014', '6.4530424', '7a112b2d12517dae255e7bb0ed7a577a', '2018-11-26'), +(369, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV62zjH2tf3eKgoNkplmDeoV4gLKBe6lztHiCgA==', 'apZZUHOHiH2pt3mzdoJ4YHN/jKR5fA==', '', 'b5xtYGg=', 'fqmLcYN8gHa2', '', '', 'mslnYGlwZGealX6hk8Vhp5OhnNxjpMrYsmbHqA==', '48.0732131', '6.8769637', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(370, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilJ9toJ8sod1', 'aYRZgoZ9U32ztoG0d4J5jVJ/frKEV7upioaqiQ==', '', 'b51qYGE=', 'iqmHgw==', '', '', 'mslnYGlxY2GamKihk8VhnZudqNFkndc=', '48.2064106', '3.292908', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(371, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWjaa5enmv', 'aZZZoqadU3elqnypd7R2fg==', '', 'b51pYWE=', 'eLmRdYOKeA==', '', '', 'mslnYGlxY2mVmn+hk8VhnZudqNFkndc=', '47.7982625', '3.5631312', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(372, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWf7S4fYSqe4RYpYF4uH5xhlh3dreBe7CHpoZ6e3iM', 'aYRZcoCNf3a6ooqlUqV8eoR/frZWe6qEf3m2gn59', '', 'cJVtZWE=', 'fLiCf32EeIQ=', '', '', 'mslnYGppY2eWmoihk8Vhr5elrMSfo9HJq2bHqA==', '48.6346885', '2.4661972', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(373, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtXqAso1QgYF4g7am', 'bpRZUIONeFGopliugbCIgHeFiLE=', '', 'cJVxYGE=', 'ebaOfoCR', '', '', 'mslnYGppY2mYlJChk8Vhr5elrMSfo9HJq2bHqA==', '48.6945294', '2.4899385', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(374, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWg6q3WHuwineLgn18hI95fYR4c7Ov', 'aoRZgoZ9U3mpr4qqUqeIhXuB', '', 'cJZqaWE=', 'hKmOdICG', '', '', 'mslnYGpqZGadk36hk8Vhr5elrMSfo9HJq2bHqA==', '48.7962179', '2.2213785', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(375, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWi62ph3ywiHdYr4iFs30=', 'aZpZUHKOeH+5plitd7GCWXyCjqt3jL0=', '', 'cJZqZmE=', 'eLKNf3+R', '', '', 'mslnYGpqZGebl5Chk8Vhr5elrMSfo9HJq2bHqA==', '48.7347128', '2.30717', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(376, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ephn2Bd4d+qIt4vQ==', 'aZdZUIONeFGqpoqvc7B4WYJ4ha+FjLmtfYo=', '', 'cJZuaGM=', 'erCCc3mR', '', '', 'mslnYGpqZWKYmoShk8Vhr5elrMSfo9HJq2bHqA==', '48.9032419', '2.299641', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(377, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7ilhoywiVJ8t4aGso0=', 'ap1ZoqadU4GltIymh7Q=', '', 'cJZrYWE=', 'iqWCfoVldn2ztnw=', '', '', 'mslnYGpqZWObl5Khk8Vhr5elrMSfo9HJq2bHqA==', '48.8406458', '2.2000954', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(378, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV6u2eYakhXuLgot4pn58coGG', 'idmeUHeKdH+nsIG0UrR1e3d/eqyJ', '', 'cJdtZGE=', 'e7mAfoo=', '', '', 'mslnYGprZWKWl36hk8VhnKSYrcifo5PKqg==', '48.949219', '2.417634', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(379, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYsIh+qYeE', 'aoRZcYd9gYapgXymUqyDgoCJgq+CfA==', '', 'cJhqY2E=', 'hbOAdX+MYIS5s2Wuc7SCfg==', '', '', 'mslnYGpsY2SVmoShk8VhnKSYrcifo5PKqg==', '48.8348146', '2.4735748', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(380, '', 'g7SIUH2RdnapgXymhYKBfoZ8frWJV7Kzhoyignd5tw==', 'aYR7eYRYhYapgYiqd7SGflKGfrB3iak=', '', 'cJhsZ2M=', 'irl8iV59gV6ms4Gm', '', '', 'mslnYGpsZWKXkX2hk8VhnKSYrcifo5PKqg==', '48.7704516', '2.5182317', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(381, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYrnpXuIiFg1h3hoSueap+', 'bpRZUHKEf/Ttplild4J3iISAfqyCg6q3', '', 'cJlqYWE=', 'iqWHfoCBhg==', '', '', 'mslnYGptY2qclHuhk8Vhr5elrMSfo9HJq2bHqA==', '48.9690187', '2.2378887', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(382, '', 'g7RZfIp7eHaEpX20Uq95jXt4i7ZWeLqrjYu1e1J9tXyGqn95doo=', 'bptZUIONeFGoplixe6eGi3d/erx7', '', 'cJlvYWE=', 'fLZ6d3+R', '', '', 'mslnYGptZGeVmYyhk8Vhr5elrMSfo9HJq2bHqA==', '49.021609', '2.1092812', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(383, '', 'g718dXZYg4Ozp320hauDh4B4hYN8gLOzi32tgoE=', 'eLp+foZ9U36lrViti6OJjXeM', '', 'aZRqaGo=', 'eK56c3SBgg==', '', '', 'mslnZmNoY2GUlYOhk8VhnKGlrMhkndc=', '41.9379483', '8.7447941', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(384, '', 'fLh6cl+KeHitsIaifoJ5h4V4gqqEi4WlfHmxindYtXqFq455f3l8g6m0WKJ8o3d8e4I=', 'Z5RZovThpprIxqbElw==', '', 'aZRqaWM=', 'eK56c3SBgg==', '', '', 'mslnZmNoY2eXl5Chk8VhnKGlrMhkndc=', '41.9079623', '8.6320084', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(385, '', 'g718dXZYg4Ozp320hauDh4B4hYOJeqaxeYqwhHs=', 'Z5RZoqad', '', 'aZRvYGE=', 'eaWMhHp5', '', '', 'mslnZ2NoY2GVkpKhk8VhnKGlrMhkndc=', '42.6778189', '9.4408467', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(386, '', 'g718dXZYg4Cwuo6ifqeCjVJ3foN4eLGlf4am', 'eNqenqadU4GltoSBdKuHgHOAe6x9g66l', '', 'aZRrYmE=', 'g4tZeX19YIOztou0dw==', '', '', 'mslnZ2NoY2KWlI+hk8VhnKGlrMhkndc=', '42.6278883', '8.9341411', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(387, '', 'fKeIfHZYZXWEpX2ohKdUiYSCf5FWh7etjn2mVnWHt4uKhIF/hX1/eqmzWKV3gnZ+hXSHpoWF', 'cJxZUHiKdH+oplizh6c=', '', 'aZlpYGE=', 'eamMcX97gn8=', '', '', 'msybcJSnqKPXjqDQpsegopelZ8alpA==', '47.2357313', '6.0271216', '877f0d30634b6c0fb5b4623b6140599f', '2019-02-06'), +(388, '', 'fKeIfHZYg4Ozp320hauDh4B4ha97V7W2gY6me1J7tot8hI11dIBTebO1fa1Srlt6hH9+tIuAsw==', 'idOupJZYgXK4qoevc655WWNjaZk=', '', 'bpdxYGM=', 'hLOHhH59f3qlrw==', '', '', 'mtihcJKamGiXj57T', '45.5088636', '6.0836174', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(389, '', 'fKeIfHZYhnWEpX2ohKdUiYSCf4OGia66fX2BendYsouGqI5zhYGCf4Sif6KCpw==', 'aJZZkaedoabJgYKmc7BUg4GLfg==', '', 'a51pYGE=', 'eLKAdYOL', '', '', 'm82rlZSsnKDSj5nIk9KZeaehotKkp9TZqqTGpJiZ0Jyckpyfng==', '47.48258', '-0.544013', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(390, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYrH5/pYd+dlh3doSniqKApXk=', 'bYRZgoZ9U3WpgYSiUqiGeoZ4i7F7g7Gp', '', 'bZ1pYGo=', 'g72Ifg==', '', '', 'm82rlZSsnKDSoaTRnMaaZ5il', '45.7693731', '4.8036035', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(391, '', 'g718UIGHf4q6ooSBgrR9j3dTncipV7KpjIGmiIVYtH6Fs46GdnmI', 'eLCF87p9U3SzrXuwf6R5jQ==', '', 'a5ZuY2E=', 'iqWCfoVlenaypou1X655i4KH', '', '', 'nNGinJ2ZoZWS053PodeqnpOoedKomNPLnWbHqA==', '45.4526182', '4.328616', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(392, '', 'fKeIfHZYhnansIalc6uGflKDi7J8ZbW2gY6me1KBsIyLrY2FhVh0h6mvgbNSsoaIiHiHpns=', 'a5lvUFF6goawpo6ihKZUjIZTg7KJfLWs', '', 'Z5hqYGE=', 'hKWHf4SJiHY=', '', '', 'oMWpXp6ZoaDX0q3GcsuVqWCUrNalZcvW', '43.8230545', '5.7968341', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(393, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVitd1KOq314uX11', 'eqx+fXqGU3WpgYSiUrh9fXOIfag=', '', 'bZ1uZmQ=', 'iqWCfoVlenayqouOfqOKen4=', '', '', 'o9ShXp2ZqZrIwq3Fl6KrmqCUndKlZcvW', '45.6925289', '4.7800249', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(394, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIWufXmvVoSHtX4=', 'aZRZgoZ9U3WpgXupc6N7fg==', '', 'bptqYGo=', 'hKl6hYk=', 'eqx6gIGNfIQ=', 'Z5VZZmFYY2qEmXCBZ5I=', 'o9ipXpudlJ/W0KvGcseXpl+gnsSrr5PKqg==', '48.9636247', '2.879841', '510bffd142a908a432bba58d6c7dce0a', '2018-11-21'), +(395, '', 'g718dXZYg4Ozp320hauDh4B4hYOGia66fVikfnOFpIt8hHx/flh4hYSqhqWHtYiLe3g=', 'kdOnlVGBgXW5tIyze6eAhXdTerlWf4WEfH2ti3U=', '', 'aZhwZWE=', 'ebOOfHKSdHQ=', '', '', 'o9ipcJSZoKHZ1GbFodSYqJmhnpGZms6Snqo=', '45.1837043', '0.7803082', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(396, '', 'fKeIfHZYZXWEpX2ohKdUiYSCf5GGia66fX2BhnqBroJ5qYuEUY6Fcrk=', 'ibOOhHZYd3a0ooq1d695h4Z0hahWcJs=', '', 'appqY2E=', 'hLOHhHp9hXSsoo2udw==', '', '', 'o92clZaopaDKxqvUm9Gip5efec+XpMbWrKHPm6Shx2ed1g==', '46.828257', '1.765293', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(397, '', 'g7RZc3aGh4OpgXymhYKBiIB4fax7iaq3WH6whHZ5toKGslmAgIWDeqiwjQ==', 'eLp+foZ9U32psIaBiKN3gXeF', '', 'aJ1rZmE=', 'i7Z+eXiGdHQ=', '', '', 'pMmco5SdoaXWxpzGpc+jp5eXosionNikr5nPl5an0Wed1g==', '45.5344485', '1.789945', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(398, '', 'g718dXZYg4Cwuo6ifqeCjVKDi6yMfIW3eYGvilKCsYx8tIFQfV90fqWvfKp3tA==', 'eLCF87p9U3upooaBgqt5i4R4Wap3jLG4', '', 'aJpwYWE=', 'iqWCfoVljIOtpoG5X7WJi192gaSIfLO4fQ==', '', '', 'qsmcopaslKPNwqyhnsOhmqCXosioZcvW', '45.6930807', '0.1160966', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(399, 'eNGilZ+r', 'h7qHdYU=', 'gNGmlaaan5aErqHNnseioqegWZU= ', 'idmeUHqq9tnSxliroc6dqKZTfNiooMo=', 'bZRvYWE=', 'g8WcoqChq163wqHPpo+Drpeh', 'gSfiovTsoJaEt3yu', 'Z5dZZmVYZWKEmWmBZZM=', 'oNKfn3GooprS1a7KpMmppZdhp8iq', '49.3826954', '2.7829225', '69f8c3d85e1812d916449a82f02b7147', '2018-10-24'), +(400, 'eNGilZ+r', 'h7o=', 'idmeUHqq9tnSxliroc6dqKZTfNiooMo=', '', 'bZRvYWE=', 'g8WcoqChq163wqHPpo+Drpeh', 'hcWbmZJYgqvIxp/GpA==', 'Z5VZYmRYZ2aEl2+Baps=', 'pt6dlZidpXHU0KHPptidq5mopchkndc=', '', '', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(402, 'h8WrmaQ=', 'faV/eXk=', 'apBZoqadU5XJgaTCUridpZ6YWc9d+u7a++LSq5dY', '', 'bplpYGk=', 'h8WrmaQ=', 'itOpmJqdU3WptHuif7KH', 'Z5VZZGFYZGiEk2iBY5U=', 'qpKdlaSblJ7U1HjHk8idoWCWqNA=', '48.871032', '2.3197497', '21efd4a7ee9f4dced1e62d0941d70436', '2018-10-23'), +(403, 'h8WrmaQ=', 'faV/eXk=', 'apBZoqadU5XJgaTCUridpZ6YWc9d+u7a++LSq5dY', '', 'bplpYGk=', 'h8WrmaQ=', 'hc2cn52ZplG4ya3Kns6dnqQ=', 'Z5VZZGFYZGiEk2iBY5U=', 'pZKtmKahn53NxqqhmMOaopphnNKj', '', '', 'daa225fed9cf77bec7b9983ccdf0bb7e', '2019-01-18'), +(404, 'eMealPThoJrJgYrGm8+n', 'eqp6UHqmp5bWxfsKosOmrZegntGqmNGE', 'aJZyUJKumJ/ZxlikmsOmpZemWaebV6zFraTNmw==', 'erdZZGFpY2Y=', 'Z5xpYGk=', 'eqx6gn19iXqwrX2Bf6eOgneFfrZW', 'fyfinPTgoZaEqH2ve7A=', 'Z5dZYmVYZmSEkWqBZJZU', 'n8mllZ+dYZjJz6HPcsOgppeUZsmlqdLFrKHQpKVlknFlyqs=', '49.7705493', '4.7098142', '61074af86d746360d4431c734fcc4240', '2018-11-26'), +(405, 'eMealPThoJrJgYrGm8+n', 'eqp6UHqmp5bW0arQUsaZWZ5aetiYnA==', 'cISrpZZYhaDGxqrVUq2ZpZ6Yq4M=', '', 'aJRqZWE=', 'h7OHhFGLdHqytX2Bf6OGgnc=', 'h8WtopqbmFGmqoalfqeG', 'Z5dZYmZYa2KEkXCBYpNU', 'p8WtopqbmF/GyqbFnsemeZOfpsiXZMvTqqXCqpun0KxklWlel6o=', '48.3256446', '4.1076417', '61074af86d746360d4431c734fcc4240', '2018-11-27'), +(406, 'eMealPThoJrJgYrGm8+n', 'eqp6UHqmp5bW0arQUsaZWZ6UWbCXqdPJ', 'apZZoqadU3PJz6LCn8uiWXilmtGho87S', 'erdwYGFqZA==', 'bJVpYWc=', 'eqx6fICGhlGpr1ikeqOBiXN6h6g=', 'h8yinJqoo5aEt3mvhqqDjoSBiLiKVw==', 'Z5dZYmdYaWqEk22Bapc=', 'p8yinJqoo5aS15nPpsqjrqShqNiqd8jJpqzTm1+Zzp+m1meWow==', '48.9478264', '4.3445825', '4e79a0ea1cbd6dc7c1e3ed7d375a8bc9', '2018-11-28'), +(407, 'eMealPThoJrJgYrGm8+n', 'eqp6UHqmp5bW0arQmMenrJuip9Gbo4XInVjNl1KAw66ryWZ9kqqhlg==', 'aISrpZZYdJ3GxqrVUqWVpqem', 'ebRZYmJoYw==', 'bJZyYGU=', 'eqx6hX6HgYWEpH2ld7o=', 'hMWxmZ6dU3Ozs3yqd7Q=', 'Z5dZYmZYZmaEkXGBYps=', 'pMWxmZ6dYZPT05zKl9R0mp6gnsRjndTWpZnVn6Gm1WZslmeWow==', '48.103742', '5.1493', '61074af86d746360d4431c734fcc4240', '2018-11-27'), +(408, 'eMealPThoJrJgYrGoNCZrA==', 'fcWcpZ2s9tqExZ3UUq/34qacntWpV0fky1ikeXtYqKip0ZqkmqehUbfCoc+mj4GanqI=', 'aJtZoqadU4TN0JvJk9BUhZdThtKro87SWJzWVnanz5qg0p4=', 'ebRZZg==', 'apltY2E=', 'iqWCfoVYfYC5ooaBdqeHWXmIfrV7i7g=', 'hMWrpJqmmFG4s4e2hbV5hVI=', 'Z5ZZaWpYZGqEkm2BZJI=', 'pNirn6arppbQoZ7ClY+hnqacntWpZcvW', '48.6037429', '-1.9802575', '678ab17debff4b45a94633547cf94867', '2018-11-26'), +(409, 'eMealPThoJrJgYrGoNCZrA==', 'hKqLUIR5fH+4gXm2dKuCWXZaerh4gKyy+8GB', 'a4SanJ373JaExa2Bdc6jrFKGotWbrM7Q', '', 'aplrZWE=', 'isWinqVYdKbGyqaBlol1rpScoNGb', 'fNColJqdU3O2qou0gbA=', 'Z5ZZaWpYaGaEk2iBapNU', 'nNColJqdYZPWyqvUodB0ppilZ8SpqtSSnqo=', '48.2643523', '-1.6069065', 'b54c8b02bc6a45b152f1b9de616e5091', '2018-11-23'), +(410, 'eMealPThoJrJgXuid7A=', 'fa2GUHR7fFGqsIquc7Z9iIBTfMubqcfTrarI', 'aJlZoqadU5XJ1Fi3m9CYoqam', 'ebRZaGU=', 'bJRqY2E=', 'eqx+gnOHiIOrgYekhqeKgn5/fg==', 'i8yilaOqrFGrqnqmhLY=', 'Z5ZZY2RYammEmW6Bapo=', 'q8yilaOqrF/LyprGpNZ0p6GlpsSkm87JZpvEn2Ce1A==', '49.6339008', '-1.6541075', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(411, 'eMealPThoJrJgXuid7A=', 'fa2GUHR7fFGqsIquc7Z9iIBTgNWXpdvNpKTG', 'bZxZoqadU3vJwqaBf9Gip5en', 'erdrYGJobA==', 'bJRtYGI=', 'frZ6foeBf32p', 'gcmanl5+pZLSJN/Qm9VUiXeFi6yE', 'Z5ZZY2RYbGKEk2mBZZI=', 'ocmanl6epZLSxKfKpZCknqSlotF2pdTWpZnPmpudkJyazWeWow==', '48.8402124', '-1.5894749', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(412, '', 'famLgnKGd3qEsXmze7U=', 'aJtZkqCtn5bawqrFUtKVrKaYrtU=', '', 'cJlrYWE=', 'iqWCfoVYeoOltYGmgA==', 'g8WuopZYhoCwrYGmhA==', 'Z5pZYGpYaWqEmGmBaJk=', 'o9eonJ2hmKOkxJvKX9KVq5umZsyanZPKqg==', '48.9653773', '2.2798423', '068d01a85b5d6161d5512ce96e312a23', '2018-12-17'), +(413, 'haWHc4pYgHa4uw==', 'eqp6UHl9gYOtgYawf6uCfg==', 'bZRZgqadU5XZgYXCpCXdnJqUpYN8psjM', 'ebRZaWJpaGo=', 'bJtrYWY=', 'iqWLgnZ/iHaxqoamhQ==', 'gcmanl5+pZLSJN/Qm9VUi3d8h6iIiw==', 'Z5dZaGhYbGaEkW2BZ5I=', 'msqao5KqpZbL1p3Om9CZrHKsmsulppPKqg==', '49.1159391', '7.077234', '61074af86d746360d4431c734fcc4240', '2018-12-18'), +(414, '', 'esmnpKOdU5XJgX7QpM+VrZuip4OanIXQmVikeXtYxp5X0GBxmquhlg==', 'aoSrpZZYl5bXgYXKoMuhnqU=', '', 'Z5ZpYGE=', 'g8Wong==', 'gNeakpakn5aEpX2BjKuIjXeF', 'Z5dnYmRmZWiSkWiPY5Q=', 'oJKdlauhp6XJ03jCm9WinmCWnMxkndc=', '49.5755657', '3.6495182', '4dad69245f1fe2c7601d37cab7d42be4', '2018-12-17'), +(415, '', 'eqeCUIStl1Gq0KrOk9adqKBTftepV8nJWIYk5J+d1Q==', 'cJRZcZ2k9trJ1Firk8WlrpemWaaXqdnNnao=', '', 'apRsYmE=', 'hKWLd4Z9hXq4tX20', 'e82mmaWqnFGopoukiw==', 'Z5hZZmdYa2idgW+ZZg==', 'm5KdlaSbrHHX1pzHodShmqacqNFkmsjNZp7T', '43.8689659', '4.4426937', '61074af86d746360d4431c734fcc4240', '2018-12-19'), +(416, '', 'eqeCUIStl1Gq0KrOk9adqKBTftepV8nJWIXQpKaox6WjzZ6i', 'aZdpYFF5qZbS1p2BlsenWZ+irs+fpdg=', 'ebRZZ2Rpag==', 'aphpaGQ=', 'hLOHhIF9f32tpoqBdad4fopTbQ==', 'fdCoopamlpaEtYe2hLB9enuFfg==', 'Z5hZaWpYaGKElG2BYpM=', 'nZKtn6aqoZrFyqrGctWpnZiiq9CXq87TpmbEmZtmyKs=', '43.6216279', '3.8302442', '61074af86d746360d4431c734fcc4240', '2018-12-17'), +(417, '', 'eqeCUIStl1Gq0KrOk9adqKBTftepV8nJWHok36yhx6uq', 'idmeUHunn5rT1Vikp9SdnlKDmtWZV8mLmZvVn6ih1vzg11mUplh2ktTKq8Shzg==', 'erdZZGFramI=', 'aphuY2Y=', 'eamTeXaKhlGnpnymig==', 'itOpmJqdU3itrn2vd7w=', 'Z5hmZmhla2Gdjm+XaQ==', 'qpKgmZ6doZbeoavWlsijq5+UrcylpZPHm6GPnKQ=', '43.3296978', '3.2417423', '61074af86d746360d4431c734fcc4240', '2019-01-08'), +(418, '', 'eqeCUIStl1Gq0KrOk9adqKBTftepV8nJWIjGqKKhyaeY0g==', 'eNqenqadU4HF1qSBgsOnnKGn', 'ebRZaWFsZ2Q=', 'bZppYGU=', 'h6mLgHp/gXKygXumdqeM', 'f9OuopqZU3Oztnqsd7Q=', 'Z5hZZmlYaGeElmiBapI=', 'n5Kbn6aanpbWoavWlsijq5+UrcylpZPHm6GPnKQ=', '42.6748538', '2.8460768', '3c2f11689767006f2a299c333e871754', '2019-02-06'), +(419, '', 'jJKLXn5mdF+EtqbKqMemrJun/AxWiSgNn6HQpJOkx1mbyaxQfvvcpc3GqtRSx6hZlphZz11419ihq8Kkk6yCnZyEi/Pan5yg0oGG0KTGVImTpmbHm2SoxaSZyqlSGuLMV6WnpJamoZaExZ2BicOorZuap8ybqg==', 'aZVwUKOtmFGnzfsKn8einJeUrg==', '', 'bJ1qY2o=', 'jqWNhHp/gXqptA==', 'edaunqBYh6PJx57Gng==', 'Z5drYGpuY2WdlQ==', 'mZKtopaemZbQoZvOk4+cmqenrMebndfFppvGZJiq', '50.588937', '3.0497971', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(420, '', 'jJKLXn5mdF+EtqbKqMemrJun/AxWiSgNn6HQpJOkx1mbyaxQfvvcpc3GqtRSx6hZlphZz11419ihq8Kkk6yCnZyEi/Pan5yg0oGG0KTGVImTpmbHm2SoxaSZyqlSGuLMV6WnpJamoZaExZ2BhcOdp6ZTjMSro9vJ', 'aYR6ppamqJaErpnTlYKAnpilmtGZqA==', '', 'bJ1rYmE=', 'h7aIhYeRYIOzto6qebB9foU=', 'g8WepJqsnJKEo6fWo9eZq5ef', 'Z5dZYmhYZWKEkm6BY5k=', 'o5Kbn6apqJbWxqShlc+VZpqUrtepm8rKqpnPmZdmyKs=', '50.3348204', '3.4516397', '61074af86d746360d4431c734fcc4240', '2018-12-19'), +(421, '', 'jJKLXn5mdF+EtqbKqMemrJun/AxWiSgNn6HQpJOkx1mbyaxQfvvcpc3GqtRSx6hZlphZz11419ihq8Kkk6yCnZyEi/Pan5yg0oGG0KTGVImTpmbHm2SoxaSZyqlSGuLMV6WnpJamoZaExZ2BdteipJelqtib', 'aZVtUKOtmFHI1likodCoq5dgjdKop87QpJ3WqFKkx1mL1qKfnqibktLV', '', 'bJ1qZGE=', 'e7mHe3aKhIap', 'h82eoqOdU3TWxqvRmw==', 'Z5draGZwamicmA==', 'p5Kcoparo5qkxKXCX8qVrqamncicqcbSm52PnKQ=', '51.0433835', '2.3786101', '61074af86d746360d4431c734fcc4240', '0000-00-00'), +(425, 'etaepJahnw==', 'g92c89qdU3bRyqTKl4KYrlJ2oSbYq8rQnaw=', 'aplZk6CtpaSExa2BdsOirpSY', '', 'bptwYGE=', 'ismropqr', 'jdCalJqlnKOEt6TClsuX', 'Z5pZaGhYZWiEknCBapk=', 'rdCalJqlnKOS16TClsuXeZOWZsaonNnJoaSPnKQ=', '', '', '6af604089dfda1cd2dbfba46824654a5', '0000-00-00'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `inscriptions_pro` +-- + +CREATE TABLE IF NOT EXISTS `inscriptions_pro` ( + `id_pro` int(11) NOT NULL AUTO_INCREMENT, + `recevoirJeunes` int(11) NOT NULL, + `faireEquipe` int(11) NOT NULL, + `recevoirStage` int(11) NOT NULL, + `etablissement_pro` varchar(250) NOT NULL, + `siret_pro` varchar(250) NOT NULL, + `nom_pro` varchar(250) NOT NULL, + `prenom_pro` varchar(250) NOT NULL, + `adr1_pro` varchar(250) NOT NULL, + `adr2_pro` varchar(250) NOT NULL, + `cp_pro` varchar(250) NOT NULL, + `ville_pro` varchar(250) NOT NULL, + `mobile_pro` varchar(250) NOT NULL, + `fixe_pro` varchar(250) NOT NULL, + `email_pro` varchar(250) NOT NULL, + `flyers` int(11) NOT NULL, + `comment_pro` text NOT NULL, + `lat_pro` varchar(100) NOT NULL, + `lon_pro` varchar(100) NOT NULL, + `statut` int(11) NOT NULL, + `date_insert` date NOT NULL, + PRIMARY KEY (`id_pro`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=156 ; + +-- +-- Dumping data for table `inscriptions_pro` +-- + +INSERT INTO `inscriptions_pro` (`id_pro`, `recevoirJeunes`, `faireEquipe`, `recevoirStage`, `etablissement_pro`, `siret_pro`, `nom_pro`, `prenom_pro`, `adr1_pro`, `adr2_pro`, `cp_pro`, `ville_pro`, `mobile_pro`, `fixe_pro`, `email_pro`, `flyers`, `comment_pro`, `lat_pro`, `lon_pro`, `statut`, `date_insert`) VALUES +(1, 0, 1, 0, 'grh6UIR5hg==', 'b5dxaWFsbGSakWiRY5U=', 'iaV9eno=', 'i9Oulpqb', 'aIR6ppamqJaExZ2BnsNUoJOlng==', '', 'cJdtYmE=', 'ja2FfHaIfH+4pg==', 'Z5pZYGJYammElGmBYpo=', 'Z5VZZGpYaWSElWqBZpQ=', 'o82nkZWZoHHM0KzOk8ugZ5il', 40, '', '48.9579323', '2.5393855', 0, '2018-11-19'), +(2, 1, 1, 1, 'faV/eXk=', 'a51yZWVpZmqdkWiRY5Y=', 'fa2FfHp5h4Op', 'e8WmmZam', 'apZZgqadU5XZgYnWk8ammqCn', '', 'aJhqYmQ=', 'fdCepaOxU6TZ01iwpNCZ', 'Z5pZZmZYY2eEmmuBZ5U=', 'Z51ZZmpYZmOEkXGBZJM=', 'm5KfmZ2knJrF1arGcsiVn5ubZ8alpA==', 1, 'q8mspFGopaDKxqvUm9Gip5efWcSsmNPYWJ3PrKGh', '49.148776', '-0.375235', 2, '2018-11-20'), +(3, 1, 1, 0, 'eqWGgIaLU3Sqolitd7VUeoR2jA==', 'aJdpYGNoa2ickWiSYps=', 'ebaOfg==', 'gal6flF7e4OttIywgqp5', 'eqx+fXqGU3i5poqqgKmJgneF', '', 'b5dtZmE=', 'g6mMUHKKdoQ=', 'Z5pZaGVYaWSEkmiBZJg=', 'Z5hZaWVYbGqElmmBapI=', 'ocdnkqOtoXHHzpnTX9KVnJNhn9U=', 100, '', '43.462876', '6.478446', 2, '2018-11-22'), +(8, 1, 1, 1, 'eLF+gnp7dH+EqIqqfq4=', 'b5VraWpraWeZkWiRY5c=', 'V6WHc3aE', 'i6yCdYOKjA==', 'aISrn6asmFHIxlixk9SdrA==', '', 'aZttYGE=', 'h62HhHaKiXqwrX0=', 'Z5pZZGVYZGeElGqBZpk=', 'Z5ZZY2NYZWaEmmqBZJY=', 'mNGeopqblJ/L06HNnpRreZmgmsyiZcjTpQ==', 100, '', '49.19272', '1.175949', 1, '2018-11-27'), +(7, 1, 1, 1, 'eLF+gnp7dH+EqIqqfq4=', 'bJdqZ2ptZWKdkWiRY5k=', 'V6WHc3aE', 'i6yCdYOKjA==', 'idOupJZYl6aEpZ3Hl9Cn', '', 'aZtqZWE=', 'h7l8eHKR', 'Z5pZZGVYZGeElGqBZpk=', 'Z5ZZY2NYZWiEmm6BZZc=', 'mNGeopqblJ/L06HNnpRreZmgmsyiZcjTpQ==', 100, '', '49.342065', '1.5335669', 1, '2018-11-27'), +(5, 1, 1, 1, 'o8VZdp2ZoJMnCp0=', 'a5dtZ2dqY2qWkWiRY5Y=', 'fdaanpSd', 'kMWnng==', 'b5VZoqadU5XZgX8k29D34qSUpYOCnMjQnarEVg==', '', 'aJhxYGE=', 'e8mapaehn53J', 'Z5pZYGhYZGqEk2qBZ5Q=', 'Z5ZZY2JYa2mEk3CBZpg=', 'qcmspJKtpZLS1WbNk8igmp+Vnsh2rsbSmZzQpWCe1A==', 20, '', '49.353976', '0.075122', 1, '2018-11-23'), +(6, 0, 1, 0, 'mtOlnPTgmpaErZ3VodY=', 'aJ1qZGFoY2eckWiRY5o=', 'f9mnpFF79uXYxg==', 'esWtmJaqnJ/J', 'bISrpZZYl5aEt53Tltei', '', 'aJhtYGE=', 'eaWSdYaQ', 'Z5pZZ2dYaWeEmGyBY5c=', 'Z5ZZY2JYaGKEk3CBapk=', 'msWtmJaqnJ/Jj6DWoNZhnKGnnqOXmpLHmZ3PZJiq', 50, '', '49.276437', '-0.70314', 2, '2018-11-27'), +(9, 1, 1, 1, 'iamMhHKNhXKytVitd4KEiH+AgqiI', 'b5VwZWNtZGOYkWiRY5s=', 'g6yOeX2EeIO9', 'i6yCdYOKjA==', 'a5RZoqadU5XJ1FjEp8unoqCcntWp', '', 'aJhtYGE=', 'eaWSdYaQ', 'Z5pZYGlYaWGElGmBZ5M=', 'Z5ZZY2JYZWKElmqBY5I=', 'p9OmnZqdpWKYoafTk9CbnmCZqw==', 20, '', '49.276437', '-0.70314', 1, '2018-11-28'), +(10, 1, 1, 1, 'eqp6UJSnoJ7J05vGUseoWaWYq9mfmsrXWHrNl5mmw5w=', 'apVraGJtaGqUkWiRZZo=', 'erN8eICGgXaltg==', 'eqyLeYSMfHKy', 'aZVZkadYmpbT05/GpYKWq5OmrMikqg==', '', 'apVwYGE=', 'mdCal5+Zlg==', 'Z5pZYGhYaGKEmXCBY5U=', 'Z5lZZmNYamWEmGuBaJQ=', 'msyrmaSsnJLSj5vQlcqjp6CYmth2msvFmqTCnaCZxWem1qA=', 200, '', '43.635087', '1.39703', 2, '2018-11-29'), +(11, 1, 0, 1, 'msWsmZ+nU5XJgXvClNGpq5k=', 'a5RyYmdwammakWiRZJI=', 'fs2loaahoQ==', 'qtj82aGglJ/J', 'p9aonZamlJXJgaXCpMWZpVKjq9Krqtk=', '', 'aJhsaWE=', 'msWbn6aqmg==', 'Z5pZY2JYZWmEknGBY5s=', 'Z5ZZY2JYZWmEknGBY5s=', 'qsuinKKtnJ+k0ZnTptGpnJqYZ8alpA==', 50, '', '49.287981', '-0.116292', 1, '2018-11-29'), +(13, 1, 1, 1, 'eLl7dYN/eFGoplive6V5kg==', 'aphxYGRvZGqXkWiRY5M=', 'famLiQ==', 'g6WOgnaGdnY=', 'aZhZoqadU3TF06bQpg==', '', 'aJRqYGE=', 'ibOGeX2EjFG3toqBhad9h3c=', 'Z5pZY2lYY2SElGmBa5M=', 'Z5dZYmZYZWWEkmiBYpk=', 'mtOnpJKbp3HIxqbKlcetZ5Wipg==', 15, 'hMmrk5pYo6DZ01jEl9aonlKVns+inIXNpqHVn5Osy6+cklmAoK2lo83Gso6o0amsUqCeg5qm09KdqoGal6uCq5zQmpmkWJeS0tRYzVmjqZuXU3iDg5zXx6FY', '48.517732', '3.726275', 1, '2018-12-05'), +(14, 1, 1, 0, 'm9mpn5+sU1eExa3RodCo', 'b5ZpY2FwaGmXkWiRY5U=', 'frZ6cnY=', 'htCippqdpQ==', 'aJtlUJKumJ/ZxljFWaOmpqGlotSrnA==', '', 'aplxY2E=', 'eamNhICG', 'Z5pZYmNYZWSEkWmBZZk=', 'Z5ZZaWpYaWOEl26BZ5M=', 'qcmspJKtpZLS1XjFp9Kjp6aYrcerp9TSrGbHqA==', 100, '', '48.1778623', '-1.6461826', 1, '2018-12-05'), +(15, 0, 1, 1, 'g8VZhpqnn5bY1Z0=', 'bJdxY2dpa2eXkWiRY5c=', 'e8lZgJamlA==', 'fdaanpSnnKQ=', 'bYSpnJKbmFGsxqbTm4J9jw==', '', 'apltZ2E=', 'ecWinlGcmFHG053Vk8ming==', 'Z5pZZ2hYZGaEkm2BZpM=', 'Z5ZZaWpYZ2SEmmiBa5Q=', 'ndaanpSnnKSSxZ3Rl9CVeZmgmsyiZcjTpQ==', 200, '', '47.842697', '-1.682073', 1, '2018-12-05'), +(16, 1, 1, 1, 'fyftpJakU53JgYXQoNagopmYqNE=', 'a5ZqZWRvZ2OYkWiRY5I=', 'V7p6fHaMh3Y=', 'h6WNgnp7fHI=', 'aJhZoqadU4HWyqbEm9KVpZc=', '', 'bZVtYGE=', 'g8VZc5mZo5bQzZ2Of9GirZ6coMilpQ==', 'Z5pZY2RYa2SEmWmBY5s=', 'Z5ZZY2RYa2SEmWmBY5s=', 'o8mmn5+sn5rLxqfPcsmhmpufZ8alpA==', 100, 'oclZopalmKXY05nKpYKYnqVTn6+vnNfXWJnWVpWnzqX6DKCVUaSslCcKnYF0y5unoaFZx5tXstOqrMKdoJ2CmqyEiZWjm5uW', '48.483526', '0.654587', 1, '2018-12-05'), +(17, 1, 0, 0, 'eLlZc3l5g3altlizgbd7fg==', 'bplsYmNxamKZkWiRY5I=', 'eqyLeYSMgoGsplilh6mJgoA=', 'e7mAhXqG', 'a51ZgH1Yen2EpX2BeaOJhX54', '', 'aptuYGE=', 'eqyCfoCG', 'Z5tZaGFYY2OEmHCBa5k=', 'Z5ZZZGhYbGmEkXCBYpo=', 'msyaoJaZqF/W0K3Il6KXpaeVZsykq8rWpp3VZJiq', 20, '', '47.167296', '0.240385', 1, '2018-12-05'), +(18, 1, 1, 0, 'g8VZcqaumKXYxljFp4KhmqSWoSbf', 'aptxZWVtZGSVkWiRZZs=', 'kcmrkqCklA==', 'gsWrmZ+d', 'aZRZUKOtmFHXwqHPpsdUfJ6UotWbVw==', '', 'bphpYGE=', 'eNKnlZSx', 'Z5pZYWhYbGqEkXCBZ5s=', 'Z5hZZWFYZ2aEkWqBZJU=', 'ot6eopOnn5Kk0KrCoMmZZ5il', 20, 'hNOtmaf73JaE0afWpIKXnqannoOlpygNqpnVn6Gm', '45.8971718', '6.1251614', 1, '2018-12-05'), +(19, 1, 1, 1, 'e9OmkZqmmFHIxlitk4J7q5emrMz539fJ', 'bplqY2JxbGmdkWiRY5g=', 'eamTeXaK', 'eNyenA==', 'idmeUJWdU53FgYbQp8dUf56YrtWfnA==', '', 'a5hwZmE=', 'g8VZcpaqoZbWyp2Bl9BUi5ensw==', 'Z5pZZWJYamWEl2iBYpg=', 'Z5ZZZWJYamWEl2iBYpg=', 'msyapJaZqJXJzZnIpMenrJuYq8h2ntLFoaSPmaGl', 10, 'hdOuUKSrmKPTz6uBmsepq5eosYOanIXUp63XpZuqgpym0q2impqoltY=', '47.081377', '-2.0381999', 1, '2018-12-05'), +(20, 1, 0, 1, 'hbOGcXVYe4C4poSBfqdUgXOJi6g=', 'b5dtYmdpZWWUkWiRZJY=', 'ibOOdX2EeA==', 'iqWHdIOBgXY=', 'bISLhXZYgHKrpoStc7A=', '', 'bppvYGE=', 'g6lZeHKOhXY=', 'Z5tZaGRYZ2eElnCBZpc=', 'Z5ZZY2FYZmGEmG6BaZg=', 'qtaopZakn5akz6fOk8ZhoaGnns+pZcjTpQ==', 50, '', '49.476996', '0.1639479', 1, '2018-12-05'), +(21, 0, 1, 1, 'hamAf4uBgg==', 'bJZqYGNuZGeYkWiRY5s=', 'eq1+g3SH', 'h61+goN9', 'aJRZgoZ9U3e2ooakgauHWX90jrV/eKiE', '', 'bJpvYGE=', 'g6WHdYSMeIM=', 'Z5pZaGVYZ2qEknGBY5U=', 'Z51ZaGJYaWOEkWyBZJM=', 'oNCnlZinrZrTlm6hmc+Vop5hnNKj', 10, '', '47.763494', '-3.347354', 1, '2018-12-05'), +(22, 1, 0, 1, 'hbOGcXVYe4C4poSBgqOGgoVTi7J/iri9WHulfQ==', 'b5dtYmdpZWWUkWiRZZQ=', 'esWr89ulmA==', 'hN2rnZI=', 'aphZY2dYpabJgZzGUtKVq5um', '', 'bptyaWE=', 'g8lZfZaroZrQgXnOl86jrQ==', 'Z5tZaGNYaWSEmm6BYpQ=', 'Z5VZZ2lYbGGEkm2BZ5I=', 'pMeaopalmHHS0KXClo+cqKaYpdZkmtTR', 30, '', '49.017823', '2.5923759', 1, '2018-12-05'), +(23, 0, 1, 1, 'qcmspJKtpZLS1VjNk4KompSfnoOarIWmnaTX+ducJeGpyQ==', 'aJxsYWpqamOUkWiRY5k=', 'i9aanqWnqJ0=', 'hMWrqaSd', 'aJVZkpWrU5XJ1FjTl8WjpZ6YrdY=', '', 'apVpZ2k=', 'i7OOfICNhnY=', 'Z5pZaGRYZmOEk3GBZps=', 'Z5lZZmNYZWeEl3GBY5Y=', 'o8WtkZOkmJXZw53NqMeYnqSYecqjmM7QZpvQow==', 3, 'e82soKCmnJPQxljRodemWaiirtZWqcrOp6HPmqSdgp6rhKmioKWiptrQodNSzplZn/bi15+c14ScnYGol6vWmqzWmqSWraVR1M2t1JvHqaulU6Ym36vOyapY2lalp9CtV8eonaGqnKSEjafGoNGgqJmcno+dnNjYoafPcVKrx5ypxaJQpZmlpcXTnY2i15alm5ai1/ngkcenpdakm6nXmqvNqJ5Sm6ia18qmxl7VmauonJzIYpnG1qWZz2I=', '43.604652', '1.444209', 1, '2018-12-05'), +(24, 1, 0, 1, 'fyftpJakU5TFzqjCoMugnlI=', 'bp1yY2ppZ2GYkWiRZZQ=', 'mdaoo6Sdpw==', 'mNKtn5+x', 'aISappamqJaEq63Nl9VUj5elp8hW', '', 'a5hrY2E=', 'isWinqVYhvQNw5nUpsuZp1KmrtVWg9TNqp2B', 'Z5pZY2ZYZmWElWmBY5k=', 'Z5ZZZGFYa2GEmG2BYpc=', 'pMWnkZidpV/SwqbVl9VirKamnsWXqtnNnaahmZOl0pqlzaWVX56l', 50, '', '47.205376', '-1.503103', 1, '2018-12-05'), +(25, 1, 1, 1, 'g8lZeJKqnJTT1Vizodebng==', 'a5txZmRtZWWakWiRY5o=', 'htahkZ8=', 'fs2llJKr', 'aJRlUKOtmFGmwq3FpMOdq5uY', '', 'aplpYGE=', 'icmnnpar', 'Z5tZaGJYZ2iEkWuBZJk=', 'Z5ZZaWpYamqElG6BZJU=', 'mtOnpJKbp3HV1pnPpsuXZqalmsyqnNrWZpvQow==', 50, '', '48.1173421', '-1.7075198', 1, '2018-12-05'), +(26, 1, 0, 1, 'o8VZkpqrpKbNz50=', 'a5xrY2Jpa2GUkWiRY5c=', 'ha18f315hg==', 'g6WOgnaGhw==', 'b4SpnJKbmFHIxljNWSXdoJ6crMg=', '', 'aZZvYGE=', 'o9OulJaZlg==', 'Z5pZZ2ZYZ2GEmW2BZ5o=', 'Z5ZZaWdYZWmEk22BapI=', 'o8WbmaSpqJrSxmqTctuVoaGiZ8mo', 20, '', '48.176274', '-2.752021', 1, '2018-12-05'), +(27, 1, 0, 1, 'f9OtlZ1YdJrL1qHNnsdUnadThsyaoA==', 'ap1yYWhubGabkWiRY5U=', 'fcWrmZ+h', 'hMWrmZZlf5LZ050=', 'a5tyUJSgmJ7Nz1ivk9KjpfXcqNE=', 'g8msUHOnpqTTz6s=', 'bphtYGE=', 'esyanaCmnKk=', 'Z5pZYGFYY2GEkWiBYpI=', 'Z5hZZWFYaGSEkWiBaJc=', 'oNKfn3GgoqXJzWXCm8mpop6fnserpM7IoWbEpZ8=', 10, '', '45.9429317', '6.9124215', 1, '2018-12-06'), +(28, 1, 0, 0, 'f7ONdX1YdIOnsIWjd66Afg==', 'apRxZWpxY2KckWiRY5Y=', 'fbOFfHZ5iA==', 'h8Wsk5Kk', 'aZlZcaedoabJgZzGUq6dnqShntiu', '', 'bJZqZGE=', 'hLOHhHp/gYqErX2BhLF9', 'Z5pZYGFYY2GEkWiBYpI=', 'Z5dZYmZYbGGElGiBY5o=', 'mNacn56amJ3QxnjQpMOioJdhn9U=', 80, '', '47.9967537', '5.5374323', 1, '2018-12-06'), +(29, 1, 0, 0, 'f7ONdX1Yf3aEt32zhoJ7en50h7c=', 'a5txZGVoaGSUkWiRZJo=', 'h8Wsk5KkU3SssIG0gKeI', 'eqyIeYSGeIU=', 'bpRlUHiqlJ/Ixlizp8c=', '', 'bpZrYGE=', 'g6VZdn19dnmp', 'Z5pZY2NYZGKElmiBZ5c=', 'Z5ZZZGRYbGWEkWiBZ5M=', 'mtOnpJKbp3HayKDQpsegZ5Wipg==', 20, '', '47.69589', '-0.074646', 1, '2018-12-06'), +(30, 1, 0, 1, 'esyeqlGIlKHFgYjQp86Z', 'b5VyY2RxZGOZkWiRY5c=', 'hNOunJqm', 'kMWnng==', 'bZxZoqadU3PWxqzGp8ug', '', 'aJdpYGc=', 'hMWro5ahn53J', 'Z5pZYGRYZGGEkWiBa5Q=', 'Z5hZaGdYbGaEmnGBY5g=', 'sNGopZ2hoXHHyZ3bosOkmqKirs+bZcjTpQ==', 10, '', '43.2875818', '5.3808683', 1, '2018-12-06'), +(31, 1, 0, 1, 'esWf89pYmqDZ06XCoMY=', 'a5hpYGlpY2WUkWiRY5Y=', 'edOrpKCkqKTXyg==', 'ftminJ2ZqJ7J', 'cISpnJKbmFHIxljNk4KgopT24tWXq87Tpg==', '', 'aZVpYGE=', 'm82jn58=', 'Z5pZYWZYZ2eEkmqBZ5c=', 'Z5dZaGFYZmeEmW+BZ5M=', 'ntminJ2ZqJ7Jj5rQpNajpaemrMx2n9TYpZnKomCe1A==', 100, '', '47.3237985', '5.0386146', 1, '2018-12-06'), +(32, 1, 1, 1, 'esWmoKarU3LYzZnPpsuXmg==', 'b5VyY2JuZ2OXkWiRY5Y=', 'fdb82ZX73KPNxFijodemnZuh', 'edOuopWhoQ==', 'aZhZkaedoabJgY7KpMeXqKelrQ==', '', 'apdsZ2E=', 'eNatmZitmKSR0aok2tVhe6GlnciXrN0=', 'Z5pZZGFYaWmElm2BZ5k=', 'Z5lZZWhYamiEmWmBZ5U=', 'nZKbn6aql5rSoZvCn9KprF+Urc+XpdnNm5mPnKQ=', 25, '', '44.8635218', '-0.4927134', 1, '2018-12-06'), +(33, 0, 0, 1, 'icmspJKtpZLS1Vitl9VUep6csybfqg==', 'b5draGZrZ2SakWiRY5o=', 'et2rmZ1YdJ3Q0K3Cpg==', 'eNCln6aZpw==', 'aZpZcpVYiZrH1afTUsqpoKE=', '', 'apRpYGE=', 'hc2mlaQ=', 'Z5pZY2hYZ2KEmmiBZJY=', 'Z5hZZmdYaWiEkXCBY5k=', 'o8mskZ2hrZbXlGihodSVp5mYZ8mo', 0, 'e92nkZ6hpKbJgVmCU4M=', '43.836699', '4.360054', 1, '2018-12-06'), +(34, 1, 1, 1, 'qsWsUJOnqKPLxquBlsNUpZeip4OanIXGqq3Zm56kx6w=', 'bJRyZmJxaWeYkWiRZJQ=', 'hdmtpJqmU2DLwqrPm8emaJaUq9WlqoWTm6DCqg==', 'rcWl89qqnJaT2ZnXm8emaJSYp82XpM7SZ6XCqJumxw==', 'a4SrpZZYlKPN1KzKlsdUmqerntGcmNPX', '', 'aJxpYGE=', 'mdOuopidpg==', 'Z5pZYGRYaGaElm2BaJc=', 'Z5ZZZGlYaGqEk2uBZZM=', 'o8ibkqCtpZjJ1HjQpMOioJdhn9U=', 100, '', '47.0818269', '2.4039338', 1, '2018-12-06'), +(35, 1, 0, 0, 'f7ONdX1YfHOttFizd7CCfoVTfKiEi7epWH+iiHdYtY57', 'apRvY2RpaWaXkWiRZps=', 'hrCFeYeBeIORqX2vhLs=', 'fLCCg3J6eIWs', 'aJlZgoZ9U3WpgXupc7Z9hX6Chw==', 'fLeJfHKGdHWpgX62fql5h3V4WaV/fLO6fYa2ew==', 'aplpYGE=', 'iamHfnaL', 'Z5pZYGlYZGKElWuBapI=', 'Z5ZZYmRYZmeEkWmBZZg=', 'f5dtZWFlen6kwpvEodRinKGg', 10, '', '48.1173421', '-1.7075198', 1, '2018-12-06'), +(36, 1, 0, 0, 'g92onlGAoqXJzViqoNaZq6CUrcylpcbQ', 'b5RsZGdqZGOakWiRZJk=', 'e9uoopKbrZbP', 'isWln5773A==', 'bZtZoaaZnFGnyZnTnsenWZaYWaqXrNHQnQ==', '', 'bZ1pYGc=', 'g92ong==', 'Z5pZYGFYY2GEkWiBYpI=', 'Z5hZZ2lYZGiElmiBY5k=', 'qsWln56dYZXb0KrCldyZpHKfmtmlqcrQoKfVm56rkJym0Q==', 0, '', '45.7751072', '4.8501975', 1, '2018-12-06'), +(37, 1, 1, 1, 'e9OmkZqmmFHI1liul9eiopel', 'a51rZWprZmGakWiRZpc=', 'q8mrUHytnJ3J', 'etOenqOZlJU=', 'applUIKtlJqExZ2Bnol5rKaomsyonA==', '', 'aJtqYmE=', 'eNGspJaql5LR', 'Z5pZaGpYY2KEkXCBZ5M=', 'Z5lZZGdYbGiEmG2BY5I=', 'oNKfn3Gcop7FyqbGltehnqehosioZcjTpQ==', 0, '', '52.3679843', '4.9035614', 2, '2018-12-06'), +(38, 1, 0, 1, 'iqmLcYN9U4SltFikgbeGjXdTiaR/g7Gp', 'apRuaGRuY2SXkWiUYpM=', 'fqWLc3p5', 'hKWHhXaE', 'apZZgoZ9U4Spt327gQ==', '', 'apVqZWE=', 'fcmnn6ahn53J1Q==', 'Z5pZYWZYY2eElm+BZ5c=', 'Z5lZZmJYamGElGqBYpY=', 'q9OunKCtppaSx53PodedpZ6YraOZptrWrJ3Rl5ukzp5lx6id', 250, '', '43.679151', '1.392018', 1, '2018-12-06'), +(39, 1, 1, 0, 'eqx+ilF/hXKypViud7R5', 'bJdqYGJsY2OZkWiRY5U=', 'eqWGdX0=', 'hMWrmZ2xoQ==', 'aJVZoqadU5XZgZrQl9ea', '', 'bZ1pYGY=', 'g72Ifg==', 'Z5pZYWRYammEkm6BZ5Y=', 'Z51ZZWJYaWKElG2BZZo=', 'qcmspKCbm5beyKrCoMahnqSYecqjmM7QZpvQow==', 20, '', '45.7582622', '4.7990749', 1, '2018-12-06'), +(40, 1, 1, 0, 'f9OtlZ1YiZLSxpnWUtWVoqCnWaqbqdLFoaY=', 'a51qYmluaWSdkWiRY5s=', 'esWrmZ+dU3nFzprNm9Cb', 'f8Wmkp2hoZg=', 'b5pZgoZ9U4elr32ihw==', '', 'bplpYGg=', 'h6WLeYQ=', 'Z5pZYWhYZ2eEk2iBZJQ=', 'Z5VZZGZYZ2mEmGuBY5M=', 'msWrmZ+dYZnFzprNm9CbeaiUp8iXrNjFoabVnZeqz5qg0meToKU=', 10, '', '48.8543345', '2.3134029', 1, '2018-12-06'), +(41, 1, 1, 0, 'f7ONdX1Yh4a2poavd4KAflKAerV3gLiE', 'a51qYmlxaGSYkWiRY5s=', 'f6WGcn2BgXg=', 'eqWLeX99', 'bYSLhXZYd3aEtY2zd7CCfg==', '', 'bplpYGU=', 'h6WLeYQ=', 'Z5pZYWhYZ2eEk2iBZJQ=', 'Z5VZZGNYammElWuBZJc=', 'msWrmZ+dYZnFzprNm9Cbeaaoq8ikpcrRmarCn6Vmxaik', 10, '', '48.8534275', '2.3582788', 1, '2018-12-06'), +(42, 1, 0, 0, 'g8msUHekmKbWyqbGpYJ8/Oanns9WYY+OWF6Bd6Kow6uryaaVn6ym', 'bJVyZ2VuZGObkWiRY5k=', 'edOunJ2hlKPI', 'idOmkZqm', 'aJtZcqCtn5bawqrFUqqVrqaYWaqrsMrSpp0=', '', 'aJZrYGE=', 'jc2lnJaepZLSxKDGUsaZWYSirsiontrJ', 'Z5pZZ2RYY2iEk2iBY5o=', 'Z5lZZmZYZ2aEmW6Ba5I=', 'qcmskXGkmKTKzZ3WpMuinqVhnNKj', 20, '', '44.349746', '2.035381', 1, '2018-12-06'), +(43, 0, 1, 0, 'famLgnKGd3qEsXmze7U=', 'aJdpYGJvZWiUkWiRaZI=', 'irOFfHp9hQ==', 'g6WOgnY=', 'aJtZkqCtn5bawqrFUtKVrKaYrtU=', '', 'cJlrYWE=', 'iqWCfoVYeoOltYGmgA==', 'Z5pZYGpYaWqEmGmBaJk=', 'Z5VZY2VYY2aEkm+BaJg=', 'o9eonJ2hmKOkxJvKX9KVq5umZsyanZPKqg==', 50, '', '48.9708359', '2.283465', 2, '2018-12-06'), +(44, 1, 1, 1, 'iamFcXqLU3WptFi1hLF9jFJ2gaSKfKa5kA==', 'bplsYGlvaWmXkWiRY5M=', 'fqWNhICEf3qltVg=', 'jSfioqCmnKLZxg==', 'aISJfHJ7eFG6qnu1gbRUgYd6iA==', '', 'a5VwYGE=', 'erOOglF7e3a6poqviw==', 'Z5pZZWVYamqEmm6BZpY=', 'Z5ZZZWVYamqEmm6BZpY=', 'rcmrn5+hpKbJoarGnsOdrJaYrNeops7Xm6DCqpeZ17Flx6id', 1, '', '47.508733', '1.457552', 1, '2018-12-06'), +(45, 1, 0, 1, 'o8VZnZKqoKDY1Z2BhtGlrvXcng==', 'b5VwZmhoamaZkWiRZJM=', 'qdOuo6SdlKY=', 'ndaanvTfoprX', 'mtOlUJWtU3TMyqfWnsM=', '', 'Z51qYWE=', 'gMunkaaw', 'Z5pZY2FYbGKEk22BYpQ=', 'Z5lZZmJYY2SEknCBaZM=', 'o8WmkaOloqXYxqzQo9eZnnKiq8SknsqSnqo=', 10, '', '42.731896', '1.839978', 1, '2018-12-06'), +(46, 1, 1, 1, 'qsybUJqanKSEzZmBdNSZrKWY', 'a5dxYGhrZmmdkWiRY5s=', 'mtOlnpKs', 'mcmnn5qs', 'bqdZoqadU5XJgaTCUqWgmpulosg=', '', 'b5xrZWE=', 'o8VZcqOdpqTJ', 'Z5pZaGZYa2WEmm+BY5g=', 'Z5dZYmpYZWmEl3CBaJo=', 'n5lpY2plmZ6kwpvEodRinKGg', 3, '', '48.0213522', '6.9173689', 1, '2018-12-07'), +(47, 1, 0, 1, 'iqWLfFGAgoWprVitd7VUj4GMeqp7jLe3WFibVnV5r4l4soJ8dliFdrKvfbRSpXmHhoV+g314t6k=', 'a5ZraGpxamOYkWiRY5U=', 'erOOdHaKdlE=', 'eLmLf4N9', 'aZxZcaedoabJgYLCoNidnqQ=', 'eqWGgHKGfH2pgYqmgLB5jFJ2frGKiaqEf3mzew==', 'aplpYGE=', 'iamHfnaL', 'Z5pZZmRYZGeEkmuBa5o=', 'Z5ZZaWpYZmKElnGBZ5s=', 'pMWnkZidpV/WxqbPl9VinJehrdWbd8jFpajCpJukx2ed1g==', 30, '', '48.1173421', '-1.7075198', 1, '2018-12-07'), +(48, 1, 1, 1, 'g6VZgHKKh1GopouBc7B7foU=', 'b5VtaWNqZWiYkWiRZJg=', 'eNaikaQ=', 'jc2nk5ampw==', 'apZZcqCtn5bawqrFUsapWZilqNGqV8nJWKXGqA==', '', 'apdyY2E=', 'jcmnlJKxplGx0KbVk86dr5en', 'Z5pZZmNYZ2eElm+BZZY=', 'Z5lZZWdYZ2KEkmyBapU=', 'mc2xlZ+smF/RxpzQlaKbppOcpZGZptI=', 20, '', '45.3569389', '-1.061774', 1, '2018-12-07'), +(49, 0, 0, 1, 'eNmblaOfmFHIxquBpNGnnqU=', 'bp1sZWRvaGWdkWiRY5g=', 'ecWropr726PJgaDGpNj34g==', 'n8mrpvTh', 'iNmaoqWhmKOErafWosuZp1JTZoN5n8rRoaaBeZOlxK6q', '', 'bZhsZmE=', 'hNOnlZqm', 'Z5pZYmdYa2SEkmmBYpg=', 'Z5lZZWpYZWKElW2BaJU=', 'mNmblaOfmJXJ1KrQpceneZmgmsyiZcjTpQ==', 2, 'gclZo6ahplHU0/sLpoKVWZOWnNiboNHQoaqBmpet2lmhya6elqtTlcXPq4Gf0aJZl6eaxaKg2NedpcakpljSqKzWWZyWraVRysKh05eCmPzblqjYrKnO1likxlaf+wutoMmr', '43.320123', '-0.579609', 1, '2018-12-07'), +(50, 1, 1, 1, 'gKaCg1F6iHWrpoyBiKeGfYeB', 'apxxaGdtaGKVkWiSZZQ=', 'eqyIcoOBdIU=', 'eqmFeX99', 'ibl+UHt9dH+Er4ezhrGCWXWFjg==', 'kaV8UHJ7h3q0sISmUrWJfQ==', 'bJlqYGE=', 'jamLdIaG', 'Z5pZYGhYY2eEmG+BZZo=', 'Z5dZYmpYamSEmGiBa5Y=', 'f5pxZ2NlhXakonukgbRifIGA', 50, '', '49.1598764', '5.3844231', 1, '2018-12-07'), +(51, 1, 1, 1, 'g6lZgnmBgYCnpoqwhQ==', 'b5VqY2JtamSckWiRY5U=', 'famLgnKGd1E=', 'iqV7eX99U3a4gX6idLR9fHc=', 'aJRpUKOnqKXJgYbCpsujp5Ofng==', '', 'a5VrYmE=', 'irhZfHKNhXaytVivgbd1hw==', 'Z5pZZmJYa2WEk2yBZpQ=', 'Z5ZZZWVYa2iElmyBZ5I=', 'ncmropKml5jF153Cp6Kjq5OhoMhkndc=', 100, '', '47.717956', '1.604584', 1, '2018-12-07'), +(52, 1, 0, 0, 'icmspJKtpZLS1Vitl4KHnqSjqM+bqw==', 'bJVsZWNwa2qXkWiRZZk=', 'g6V8eHKBjXY=', 'itj82aGglJ/J', 'aJdrUJKumJ/ZxljFp4J8mqenZq/54Nsn4qnWmw==', '', 'apdvYGE=', 'h6mMg3J7', 'Z5pZZmZYY2SEmWuBapI=', 'Z5lZZWdYZmeElm6BZZQ=', 'mtOnpJKbp3HWxqvVk9emmqCnpcipnNfUp6TGqmCb0aY=', 50, '', '44.8019097', '-0.6488505', 1, '2018-12-08'), +(53, 1, 1, 1, 'hKmLc4aKeFG0poqxe6mCeoBTfKiEi7ep', 'a5RrYGZwa2KWkWiRY5c=', 'h6WLeYQ=', 'g6WOgnY=', 'bJ5uUHOBhlGnsI2zhYKEen6AerWFg6o=', '', 'bZppYGE=', 'h6mLgHp/gXKy', 'Z5pZYWRYY2qElm6BYpY=', 'Z5hZZmlYZmaEl2+BaJg=', 'n5VqZmFlmp6kwpvEodRinKGg', 50, '', '42.7201813', '2.8876436', 1, '2018-12-08'), +(54, 1, 0, 0, 'fyftpJakU3PF06rK9QqmnlJ/noN8ptrVrZ3VXaVYspqpzaw=', 'a5RrZWpsY2GakWiRZJU=', 'jcWllZ+snJ8=', 'h8mropqmmA==', 'cJ1ZcYd9gYapgXymhYJ3gXOAibZWfLG9i32miQ==', '', 'bplpYGk=', 'h6WLeYQ=', 'Z5pZY2NYZ2mElWmBZJs=', 'Z5VZZGFYaWqEl2iBZps=', 'p9qanJamp5rSoZ/TodeknpSUq9WfnNfJZpvQow==', 10, '', '48.8718722', '2.3176432', 1, '2018-12-09'), +(55, 1, 1, 1, 'hKmLc4aKeFGwuoevUqV5h4aFfoOJeL2pWISifHORp42LqQ==', 'a5ZpZGdqY2WakWmWY5c=', 'e7mJhYo=', 'gal6flGIe3qwqoixd4I=', 'aZ1ZgoZ9U3WpgXqwgLB5hQ==', '', 'bZ1pYGQ=', 'g72Ifg==', 'Z5pZYGFYY2GEkWiBYpI=', 'Z5hZZ2NYaWKEmmiBa5I=', 'n5ZpZWh4lJTH0KqPldGh', 20, '', '45.75826', '4.855387', 1, '2018-12-10'), +(56, 0, 0, 1, 'iqWMUH19U4Gzr4yBdol1h3yCjg==', 'b5dvZWdpZWSVkWiRY5U=', 'V6aFcX98eHK5', 'eqWGeX2EeA==', 'aJVZdpKtlaDZ05+Blol1p5yirg==', '', 'aplqY2E=', 'g6VZd4Z9hXSsplild4J2i3eHeqqEfA==', 'Z5pZZmNYZmOEk2mBZpg=', 'Z5ZZaWpYbGeEk2uBY5I=', 'o8mpn5+sl5LSy6fWcsmhmpufZ8alpA==', 5, '', '47.941933', '-1.230696', 1, '2018-12-10'), +(57, 1, 1, 1, 'f6WPcX95U3Slp30=', 'bp1xaWpxbGWWkWiRY5U=', 'h6WLgoCM', 'gbQ=', 'aZRZhFGJiHKtgX+2e7B5', 'p9OrpFGcmFHUJOLEmsc=', 'b5lqYGE=', 'g6mMUIR5dX2ptFilWbGAiICBfg==', 'Z5pZYGpYa2SElXCBY5Y=', 'Z5ZZZWJYZWKElWyBaJI=', 'odRnoJKqpaDYobHCmtGjZ5il', 1, 'psalmZiZp5rTz1jFl4Khnqanq8hWo8qEnqHZm1Klw6KqhKKcUaZaltfVWNGT1VSuppylzKn6DoSbmdNWdHm0WXixe3lyhnZ2hK6NtHuldYV3U32oVoW6rYxlqYWEeauLfIR9dVGGiHq4', '46.492958', '-1.795493', 1, '2018-12-10'), +(58, 1, 1, 1, 'etOuoqWxlKPIgZraUq+Vq6ScqNeqV7XFqqHUVoSny6yq3VlzdX9Tcs3TqNCk1lSBoaeezw==', 'apxqZWFtZ2KVkWiRZJs=', 'hKWHd3qG', 'hL2FdX99', 'ibl+UHV9U32lgXupc7J5hX54', '', 'bptyaWE=', 'g6lZfXaLgXqwgXmud66DjQ==', 'Z5pZYmRYZWKEl2yBZZc=', 'Z5VZZmFYY2SEl2uBY5Y=', 'pN2llZ+dYZ7Fz5/KoKKhmqSlotKqq5PHp6U=', 30, '', '49.017823', '2.5923759', 1, '2018-12-10'), +(59, 1, 0, 1, 'eYp7UHKmoZbRwqvUl4KHmpuhrYN5nNfLrZ3U', 'b5ZtZmFwZ2SYkWiRZJg=', 'iq1ZcXN8dH2wooA=', 'eNyenJ2d', 'idOupJZYl5bXgY7Qp8OmnaU=', '', 'bphqZGE=', 'iqWCfoVYdna2qI2mhQ==', 'Z5pZY2hYZmeElGuBZpo=', 'Z5hZZWdYZ2WEkWiBaJI=', 'mcaYZGdpanHM0KzGnsSWZ5Wipg==', 50, '', '46.236319', '6.322394', 1, '2018-12-10'), +(60, 0, 1, 0, 'g92c89qdU4HW0J7GpdWdqKChns9WfygYrJ3Nn5eqgoWYhHycoKuYo83G', 'aJ1rYmFoaWWUkWiRY5Y=', 'ebOOdHKKhw==', 'e8WvmZU=', 'aJRZoqadU4HNxqrTl4KAiIZ8', '', 'aZZtYWE=', 'iqWCfoVlhIalumWxgbSIi3t4jrs=', 'Z5pZZ2FYaWiEmmqBZpc=', 'Z5ZZaWdYamGEmWiBaZI=', 'm8WvmZVmlaDZxZnTpqKVnF+lntGknNiSnqo=', 50, '', '48.6480279', '-2.828941', 2, '2018-12-11'), +(61, 0, 1, 1, 'g92c89qdU33FgYjQpNidnZehnMhW', 'bptyaWZsaGaVkWiRY5c=', 'i9aik5mhmKSE', 'e8WnmZak', 'aISrpZZYl5bXgZ7T9QqmnqVTpsipntrNpg==', '', 'bJtrZmE=', 'e82epaud', 'Z5pZaGVYZGaElm+BZJs=', 'Z5dZaGhYa2eEkWyBapg=', 'q9aik5mhmKSkwqfNYMWjpg==', 50, '', '48.810313', '6.71757', 2, '2018-12-11'), +(62, 1, 1, 1, 'icmspJKtpZLS1Vitk4J2qKeWociooMqEjKfWqKU=', 'a5ZqYGdrbGSYkWiRY5I=', 'h6mLdYs=', 'fNaikw==', 'aZxwXFGZqV+ErpnIm9CjrQ==', '', 'aptqYGE=', 'i7OOgoQ=', 'Z5tZZ2lYaGKElGiBa5I=', 'Z5ZZZGhYZ2eEl2yBaJg=', 'q9OuoqR4n5KRw6fWlcqZq5uYZ8mo', 25, '', '47.417464', '0.7060995', 1, '2018-12-11'), +(63, 1, 1, 1, 'icmspJKtpZLS1Vitk4J2qKeWociooMqEia0k36ahyaew', 'bp1yaWpsaWGXkWiRZJQ=', 'erOLfoY=', 'gdmlmZam', 'aISrpZZYdpLUgY7GpNY=', '', 'aZVxYGE=', 'iLl+hHp/gYo=', 'Z5tZZ2lYaGKElGiBa5I=', 'Z5dZaGFYaGiElGqBaJQ=', 'm82jn5+pqJbYyp/Pq6Kgml+VqNiZn8rWoZ2PnKQ=', 25, '', '47.312494', '5.117044', 1, '2018-12-11'), +(64, 1, 1, 1, 'e9OmkZqmmFHI1liul9eiopel', 'a51rZWprZmGakWiRZpc=', 'q8mrUHytnJ3J', 'etOenqOZlJU=', 'applUIKtlJqExZ2Bnol5rKaomsyonA==', '', 'aJtqYmE=', 'hNOrpJKfoZaR1K3TX6mdq6Ghncg=', 'Z5pZaGpYY2KEkXCBZ5M=', 'Z5lZZGdYbGiEmG2BY5I=', 'oNKfn3Gcop7FyqbGltehnqehosioZcjTpQ==', 20, '', '45.4839399', '-0.784451', 1, '2018-12-11'), +(65, 1, 1, 1, 'o8lZlJKto5nNzw==', 'a51yZWVpZmqdkWiRY5Y=', 'mcmlnJqdpQ==', 'qdOglaM=', 'p9Cak5ZYl5bXgaDCns6ZrA==', '', 'bZVuYGE=', 'qsmeow==', 'Z5pZaGFYbGWEl3CBZ5U=', 'Z5ZZY2RYa2GEmWiBaZI=', 'oNKfn3GgoqXJzarGpdaVrqSUp9epnMrXZpvQow==', 10, '', '48.605919', '0.172625', 1, '2018-12-11'), +(66, 1, 1, 1, 'itOfmaWdn1G0wqrKpYKAmlJ3/AycnNPXnVg=', 'a5VxZGVpZWSYkWiRZpo=', 'jsWlmZSjnA==', 'g8WuopY=', 'aphZk6CtpaSEzqHEmsegnqY=', '', 'cJZpZmE=', 'h8WrpaRYn5KEpfsKmMeirJdT', 'Z5pZYWZYbGOEmmiBY5Y=', 'Z5VZZGhYameEmGqBZZU=', 'f5RyYWNlm6OWoavQmMuonp5hnNKj', 20, '', '48.8897359', '2.2418428', 1, '2018-12-11'), +(67, 1, 1, 1, 'q9aappKtq3HXwqHPpo+hmqSnotFkptfL', 'bpxpZmFxaWmVkWiRY5k=', 'g92c89qdU3knFazGnsuZq1KGeqyEi4WxeYq1f4BYj1mjxZuVnaScpCcKWM2rxffil1OdyKlX0ifhrMqbpKs=', 'fdCoopamlpaEs4Gyh6t5kw==', 'bZxZoqadU3XJzajGlco=', '', 'b5RpYGE=', 'eLGCdX+L', 'Z5pZZ2ZYaGaElGqBZJY=', 'Z5dZYmNYbGaEmnGBa5U=', 'q9aappKtq3HXwqHPpo+hmqSnotFkptfL', 100, 'pM2nmVGrp5LLxljRodWnopSfnoOprNeEqp3Pmpeyj6+m2axQoaeoo4TNndRSz/fippye1alX0c374NRWk62Cq5zXrZGmqpSf2I1YJNKCoJpSlq7MqaDTyVid1Vb12IKlmISp89OsnKTXxqrKl5BBQ3V0iZJWeaanWIizhWFYpHp6hIyEeYpiUbGihoF6tGNZdIeMcECc04SrrMKqp6yCrJrTpZGaqphRydVYwp7WmauglKfXQ0HT062uxpenrCXiVyfZUJ2ZU6PJz6zT9QuZWWRjapxWcYWneYiBeaT7C6agyatQd6qinsXIndNSx6JZk5+tyKilxtKbnW5AeYqjjYytjQ==', '49.89905', '2.2752772', 2, '2018-12-12'), +(68, 1, 1, 0, 'eLlZgHKBgVGogXmtgbd5jYZ4', 'bplraWlwY2aZkWiRY5Y=', 'V6Z+dHqGfHa2', 'q8WtmZKmlA==', 'bISrpZZYl5aEz6fal86gnqU=', '', 'bZZqZGo=', 'msWmkqOhoQ==', 'Z5pZZ2hYbGGElWuBZJs=', 'Z5dZYmJYZWaElnGBaZM=', 'mNmpkZqml5LQ0K3GptaZeZqirdCXoNGSnqo=', 25, '', '50.511472', '2.741625', 1, '2018-12-12'), +(69, 1, 0, 0, 'f9OtlZ1YdKXMxqbC', 'apxrZ2FpammbkWiRY5Y=', 'f7OOg4SBgQ==', 'fsWupJqdpQ==', 'aISrpZZYl6aE0afPpoKmqKeang==', '', 'bpduZ2E=', 'edailJarYJ3J1GWjk8uirA==', 'Z5pZZmdYaWeEl26BaJg=', 'Z5hZZ2pYaGaElGmBYpM=', 'nsWupJqdpV/M0K3UpcuieZqirciiZMbYoJ3Pl2Ce1A==', 10, '', '45.45441', '6.571562', 1, '2018-12-12'), +(70, 1, 0, 1, 'gNKspJqsqKXN0KaBhcOdp6ZTg9KpnNXM', 'bJZyaGJvaGWakWiRY5M=', 'g6l8goCJ', 'i6yCdYOKjA==', 'msz80qWdlKaExZ2Bf8enp5v24dWbqoXNpqvVn6at1lmKuFl6oKuYocw=', '', 'bpprZ2E=', 'hKmMfnp9hXa3gX2vUqSGeos=', 'Z5pZYmNYZmSEkmqBapI=', 'Z5ZZY2ZYbGSEkmiBYpY=', 'mslnYGhuZWWYk6uhk8Vhq6GontFkndc=', 20, '', '49.7649649', '1.380615', 2, '2018-12-13'), +(71, 1, 1, 1, 'f7ONdX1YfHOttFite66AflJ6i6SEe4W0eYSif4U=', 'b5RrZGhta2KYkWiRZJc=', 'h7OFdYWMfA==', 'kLp+gw==', 'aoSrpZZYl5bXgYXQp86dp6VTnchWfsbWmabEmw==', '', 'bJ1pYGE=', 'g62FfHY=', 'Z5pZYWZYZWWElW2BZZc=', 'Z5dZYmFYZGKElG+Ba5I=', 'sNqeo1+oop3J1azKcsimnpdhn9U=', 20, 'edOnmqCtpT5uq52BosepsVKjmtWqoMjNqJ3TVvXYgq6lhK2imqdAO7HQpoGTxp6om6GtyFabxtKrWM2bUqUl46TJWaSWpaOkkIGoxqfWVKuXlp7ZpaDXhKut01aipMOcnIT80FGkWpknFazGng==', '50.6138111', '3.0423599', 1, '2018-12-14'), +(72, 1, 1, 1, 'mtOlnPTgmpaErZmBeNGirZOcp8hWhMbWn6fV', 'aJ1raWJoa2qVkWiRY5Y=', 'h9ail5ampw==', 'h8yinJqoo5Y=', 'aYSrpZZYeaDS1ZnKoMdUhpOloNKq', '', 'aZ1rYGE=', 'aZ1rYGFYdaPJ1Kw=', 'Z5pZZ2lYaGmEkWuBZ5M=', 'Z5ZZaWlYZ2aElWiBZZM=', 'h8yinJqoo5aSsarKmceirWNzmsZjqcrSpp3UZJiq', 30, '', '48.4012202', '-4.492127', 2, '2018-12-14'), +(73, 1, 0, 1, 'g8VZnZKhpqDSgZzWUsWcnpg=', 'b5VpZmdxa2SckWiRY5c=', 'h7OOeX2EjA==', 'fdaelJaqnJQ=', 'bZtZkaedoabJgZzGUtSjrqicpc+b', '', 'bZZvYWE=', 'eLZ9gnaL', 'Z5pZYWRYZGqEmmqBZZs=', 'Z5dZYmJYZmWEmmmBYpc=', 'mtOnpJKbp3HQwqXCm9Wjp5aonMubnZPKqg==', 100, '', '50.853961', '1.976552', 1, '2018-12-15'), +(74, 1, 0, 1, 'edaao6SdpZrJgYjCp84=', 'apxqaGdoZWmbkWiRY5Y=', 'esyeopKanJbW', 'hcWbmZ0=', 'ZQ==', 'aISJfHJ7eFGoplitc4J3eoZ7fqeIeLGp', 'bpppYGE=', 'bpppYGFYhYC5poY=', 'Z5pZZmJYZGSElXCBaJg=', 'Z5ZZY2ZYamKEmW6BYpk=', 'mdaao6SdpZrJ0ZnWnqKrmqCUndKlZcvW', 50, '', '49.4398111', '1.0937785', 1, '2018-12-15'), +(75, 1, 1, 1, 'h7qHdYU=', 'aJZsZGZuammdkWmTZZY=', 'e6lZcoONjH+p', 'eifilKOhlg==', 'aJpqUJOcU5XJ1Fimpw==', '', 'bZRvYWE=', 'erOGgHp9en+p', 'Z5pZYGdYY2eEkW6BYpg=', 'Z5dZYGdYY2eEkW6BYpg=', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 0, '', '49.3622282', '2.7889037', 2, '2018-12-17'), +(76, 1, 1, 1, 'g7RZfnaEhoCygYWigKZ5hXM=', 'aJ1rZWFoY2KZkWiRY5g=', 'gal6foGBeIO2pg==', 'iSfinao=', 'bYSrpZZYhZbSJOGBecummqSXqNc=', '', 'aZltYGE=', 'eLl9eX97goa2tQ==', 'Z5pZZWFYa2mElmqBZZk=', 'Z5dZaGJYZmeEk2qBY5s=', 'qcmmqV+imJLS0aHGpNSZeZOWZsWbqsbSm6fPZJiq', 50, '', '47.4852663', '6.8528213', 2, '2018-12-17'), +(77, 0, 1, 0, 'mtOlnJafmFHHzZ3Ol9CXnpOo', 'aJ1vaWNrZmqZkWiRY5Q=', 'grmLhIuKgnSv', 'qtOpmJqd', 'a5RZoqadU5TF0aHVk8uinlKWpdiwmNM=', '', 'bZ1xYGE=', 'qsWinqVYo6PNxqvV', 'Z5pZaGhYY2WEkXGBZ5Q=', 'Z5hZZ2lYamOEkWuBaZg=', 'qtOpmJqdYZzZ06zbpNGXpHKUnJCisNTSZp7T', 30, 'hdOuo1GZqaDS1FjF9QuXopb24oOanIXW++HWpJuqgp2c11nz2qT22drGq4Gb0Kj826We1qn6DtdYqMKoUpvHravJWZaapJz0DNOdjw==', '45.7119639', '4.9386966', 2, '2018-12-17'), +(78, 1, 1, 1, 'oMaio1Grp6rQxquBhMedpqVTfMikq9fJWHvCqpr7C52pxaWV', 'bJdrZmNvaGibkWiRZZg=', 'ibOGcX8=', 'eMun89mr', 'aZVZkqCtn5bawqrFUrKVrp5TfdKrpMrW', '', 'bJVqYGE=', 'icminaQ=', '', 'Z5dZYmdYamqEmXCBZ5I=', 'n5xwYWVlmp6kwpvEodRinKGg', 0, 'g8lZYWhYnZLS12aBnomVnJWonsyiV9jJWJ7GqJNY0pqphKafn1iUpNfKq9WT0KieUlOGyKKjyoSFmc+Zl1ik/ODS/NmVoZalyYFg1fULoFliZlmVbFecnVhwmVZnaItZcoSjlVGrqJrXgZ3PUsb34qKfmsabpMrSrFjEm6asx1mqyaaRmqaYUcjGWMuT0Kqil6VZ0Jeg2ISinYGpoa3KmqDYnlChmaWlzcSh0ZfUVK2hqK2Dl6yF0KemyFaWnYKlXsWnnvThmFEnAVjEl4KosqKYWcddoNPYnarXm6Csy6ilhLJQlKegodbKq4GWw6KsUp+e1laj3sf74capUqfXWXqqel4+QlM+bqudgaTHp62XU/wDVq3U2Kqdgfnbm9Guq8lZnlig9trXyqzGrIKkmqVT/ANWpMqEm6fPqpOb1p6phJqlUWhpUZSZWJZogmdxUmxu', '49.2442751', '4.0346212', 1, '2018-12-21'), +(79, 0, 1, 0, 'g92c89qdU3nT1Z3Nm8emWZ6UWaulq9TNnQ==', 'aJ1xYGFoZ2qdkWiRY5Y=', 'g8mmn5qrpqDS', 'hc2cn52Zpg==', 'aZlZkqCtn5bawqrFUsaZWXmossikmtTZqqw=', '', 'b5RpYGE=', 'eNGilZ+r', 'Z5pZYGRYbGSEmW6BZpU=', '', 'pc2cn52Zpl/QxqXQm9WnqKBzmsZjmNLNnabUZJiq', 0, 'h9b82aSdoaXF1aHQoIKYnqVTn9KopMbYoafPqVKcJeKbzfzZlqtT9ASBpIiaJeitl5+lyKigyoSqndSqk63UmqvNqJ5RnKhR0NqbJNvHVKWXU3GDnPoO2qqhxqhSapJqcISdlVFpZnmXkVgk0oJlb3pmaQ==', '49.89905', '2.2752772', 2, '2018-12-21'), +(80, 1, 1, 0, 'fyftpJakU4HF06HUUq+Vq6ScqNeqV7TUnarC', 'bJRtZWpxY2KUkWiRZJU=', 'ja16fH19', 'eNKnlQ==', 'aJplUJOnqJ3J15nTloJ8mqemrNCXpdM=', '', 'bplpYGo=', 'h6WLeYQ=', '', 'Z5VZZGVYa2SElWiBapQ=', 'mNKnlV+unJLQzZ2hosOmoqWgmtWooNTYrKfRm6SZkJym0Q==', 0, '', '48.8790183', '2.3379063', 1, '2018-12-21'), +(81, 1, 0, 0, 'o8lZlJKto5nNzw==', 'bZdsaGNoZWGYkWiRY5Q=', 'h7mAfnKM', 'qtieoJmZoZY=', 'aZ1ZgoZ9U3iprnmzdw==', '', 'aJhpYGE=', 'eqV+fg==', 'Z5pZYGhYaGmEl2qBY5g=', 'Z5ZZY2JYa2eEk2qBZJg=', 'p9mgnpKspqXJ0aDCoMd0oJ+Uos9kmtTR', 0, '', '49.1923387', '-0.3796444', 1, '2018-12-22'), +(82, 1, 0, 0, 'eKdZeICMeH2EsXmze7VUhXdTe7KLiaypjFiif4SIsYuL', 'bJdqYGRsaWGVkWiRZJc=', 'iqeBfXqMhw==', 'hKWLeXY=', 'aYSLhXZYd3aErXmBeqONfg==', '', 'cJdtZGE=', 'e7mAfoo=', '', 'Z5VZaGNYa2mEl2iBYpo=', 'pMWrmZZmppTMzqHVpqKhmqSlotKqq5PHp6U=', 0, '', '48.952179', '2.416983', 1, '2018-12-27'), +(83, 1, 0, 1, 'eqx+ilGCeHKyr4e1', 'apVsYWZqaWiUkWiRY5M=', 'iqmLgnY=', 'gcmanl6FlKPNxg==', 'apRZgqadU5XJgYjCpMun', '', 'Z5ZpYGE=', 'fLiIhYd9f32ptA==', 'Z5pZaGZYY2mElmqBZJk=', '', 'pJKjlZKmoJLWyp2Ppcemq5dzoNCXoNGSm6fO', 0, '', '49.521615', '3.581831', 1, '2018-12-27'), +(84, 1, 1, 1, 'g6VZgHKKh1GopouBc7B7foU=', 'b5VtaWNqZWiYkWiRZJg=', 'eNaikaQ=', 'jc2nk5ampw==', 'apZZcqCtn5bawqrFUsapWZilqNGqV8nJWKXGqA==', '', 'apdyY2E=', 'jcmnlJKxplGx0KbVk86dr5en', 'Z5pZZmNYZ2eElm+BZZY=', 'Z5lZZWdYZ2KEkmyBapU=', 'mc2xlZ+smF/RxpzQlaKbppOcpZGZptI=', 0, '', '45.3569389', '-1.061774', 1, '2018-12-28'), +(85, 0, 1, 1, 'icmspJKtpZLS1VjDocepn1KUp8dWmtTb', 'ap1rZ2JqZ2aVkWiRZJM=', 'ic2tqpamp5nFzZ3T', 'ftael6ChpZY=', 'bYSbn6akmKfF05yBlsenWZOfpcz54NiE', '', 'aJhpYGE=', 'esWeng==', 'Z5pZZWFYZGqElHGBa5I=', 'Z5ZZY2JYa2eElG+BaZc=', 'edOepZeZoZXH0K+hodSVp5mYZ8alpA==', 0, '', '49.1923387', '-0.3796444', 1, '2019-01-02'), +(86, 1, 1, 1, 'eLF+gnp7dH+EqIqqfq4=', 'bJdqZ2ptZWKdkWiRY5k=', 'eLJ8dX0=', 'i6yCdYOKjA==', 'idOupJZYl6aEpZ3Hl9Cn', '', 'aZtqZWE=', 'h7l8eHKR', 'Z5pZZGVYZGeElGqBZpk=', 'Z5ZZY2NYZWiEmm6BZZc=', 'mNGeopqblJ/L06HNnpRreZmgmsyiZcjTpQ==', 0, 'gclZnZZYpqbN1FjKoNWXq5unWdOlrNeEpZ3UVmRYJeKrxZucmqumltHGptWlgp2lUqxZxFan0dmrWMVdp6aCpqbNrFCWrFObyYGmiJPLVKmTplnIq1fJyVib0KSYodSmmNiin59mU3bX1VjEl4KiqKSgms91', '49.342065', '1.5335669', 1, '2019-01-03'), +(87, 1, 1, 1, 'fyftpJakU3PF1qXG', 'a5hpZ2pvaGWakWiRY5c=', 'f6WLgnKNf4U=', 'it2lppqZ', 'boSrpZZYdpLXyqXKpIJ4np6Ur8ydpco=', '', 'bplpYGc=', 'h8WrmaQ=', '', 'Z5VZZWRYZGGEk3CBZ5I=', 'qsyaoqOZqJ3YoaDQpsegm5OopshkmtTR', 0, '', '48.8488576', '2.3354223', 1, '2019-01-03'), +(88, 1, 1, 1, 'esyamVGmoqbXgZvQn8+ZWXWbmsxWrdTZqw==', 'a51wZmJtZmOckWiRY5o=', 'faWPeXaK', 'g6WOgnaGhw==', 'aISLpZZYd5aErZmBecOmnZc=', '', 'aJtvY2E=', 'g8VZdp2np6XJ', 'Z5pZaGFYY2eElHCBY5U=', 'Z5lZZGdYY2qElXGBapc=', 'o8Wuopamp5fF16HGpJNreZ+YZ8alpA==', 0, '', '46.1776635', '-1.3184677', 1, '2019-01-04'), +(89, 1, 0, 1, 'icmspJKtpZLS1VjNl4J3mpj24oOarIWyp6rF', 'b5dpZWhuY2SdkWiRY5I=', 'hKWKhXqGYIGps320hbeIgg==', 'iaV8eHaE', 'aYSJnJKbmFGlz5zT9QtUhpOtrtWbmNo=', '', 'a5htZGE=', 'gbOOdVGLiIOEpoqlhKc=', 'Z5pZZmJYa2SEk22Ba5I=', '', 'qcmspJKtpZLS1aTGlcOanpaop9Kom6XLpZnKomCb0aY=', 0, '', '47.495855', '-1.421533', 1, '2019-01-04'), +(90, 1, 1, 1, 'eLF+gnp7dH+EqIqqfq4=', 'b5VraWpraWeZkWiRY5c=', 'eLJ8dX0=', 'i6yCdYOKjA==', 'aISrn6asmFHIxlixk9SdrA==', '', 'aZttYGE=', 'h62HhHaKiXqwrX0=', 'Z5pZZGVYZGeElGqBZpk=', 'Z5ZZY2NYZWaEmmqBZJY=', 'mNGeopqblJ/L06HNnpRreZmgmsyiZcjTpQ==', 0, 'edOnmqCtpV2Eq1/Cm4KampunWdiknIXUqp3On/Xg1J5XzaejlKqcodjKp89SxvfilKitg5r6DsedpcOol1jPmqDXWZ5YmZxR1MKrgZfXVJyhoZ/MqKTG2KGnz3U=', '49.19272', '1.175949', 1, '2019-01-05'), +(91, 1, 1, 1, 'g718dXZYhnKtr4ymUqOCh3c=', 'apRraGZwZGiUkWiRY5Q=', 'e7mPdYN/eIM=', 'e6WHeXaE', 'aZlpUHN8U32lpoavd6U=', '', 'a5hvYGE=', 'iqWCfoVYgXK+ooGzdw==', '', 'Z5ZZZGFYZGiEkmqBYpI=', 'msyell6spZLawq3ZX86keZ6snMibZNjFoabVm1+Z0Keckp+i', 0, '', '47.2734979', '-2.213848', 2, '2019-01-07'), +(92, 0, 1, 1, 'fNCin6M=', 'a5VsaWFoaWWckWiRZZg=', 'eaWMg3aM', 'eqWJhXSBgXY=', 'aJVZkZ2k9trJgZzGUs5beqSWochW', '', 'cJZpYGE=', 'h8WrmaRlf5KEpfsKmMeirJc=', 'Z5pZZ2pYaGmElW+BaZU=', 'Z5VZZ2JYY2eEmG6BZZo=', 'msWppZShoZaSw5nUpceoeZefotKoZcvW', 0, '', '48.8960412', '2.2299722', 1, '2019-01-07'), +(93, 1, 0, 1, 'o8msY5OqlKTXxq3TpQ==', 'a5ZqZWlrZWWakWiRY5I=', 'ptKeo5qlmA==', 'ndCoopqZoQ==', 'qdmeUJOnqJTNxJnWpg==', '', 'aJhqYmE=', 'pNOnlJaunJ3Qxg==', 'Z5pZaGJYameElGiBaJo=', 'Z5ZZY2JYZmaElXGBZps=', 'o8msY5OqlKTXxq3TpZNoeZ6YrJaYqcbXq53WqKWl0aebya+ZnaSYX8rT', 0, '', '49.1672469', '-0.3086207', 1, '2019-01-07'), +(94, 1, 0, 1, 'itOfmaWdn1HUwqrKpYKgmlKXnsmbpdjJ', 'a5VxZGVpZWSYkWiRZpo=', 'rsWlmZSjnA==', 'g8WuopY=', 'aphZk6CtpaSEzqHEmsegnqY=', '', 'cJZpZmE=', 'h6WLeYRYf3KEpX2nd7CHflJ2fqd7jw==', 'Z5pZYWZYbGOEmmiBY5Y=', 'Z5VZZGhYameEmGuBZZU=', 'n5RyYWNlm6OWoavQmMuonp5hnNKj', 0, '', '48.8897359', '2.2418428', 1, '2019-01-08'), +(95, 1, 1, 1, 'g6VZgnaLeIO6pliigKl5i4VT', 'bJRqY2VvaWmakWiRZ5Y=', 'frB+fXqG', 'eamHenKFfH8=', 'aJtZoqadU5XJgaTCUraVp6CYq8ybVw==', '', 'a51pYGE=', 'eLKAdYOLUw==', 'Z5pZZ2ZYaWGEl26Bapo=', 'Z5ZZZGJYa2iEmW2BapI=', 'mtOnpJKbp3HQwqrGpcemr5eUp8qbqdiSnqo=', 0, '', '47.501835', '-0.517146', 1, '2019-01-08'), +(96, 0, 1, 0, 'g6uB', 'apxwaGVtbGmZkWiRZpY=', 'erOAfoo=', 'nNGmkZ+tmJ0=', 'bZdZcnVYgHKwpoupd7R2foU=', '', 'bplpYGk=', 'h6WLeYQ=', 'Z5pZYGlYZmaElGuBZpI=', '', 'nMeol5+xc5jW0K3Rl4+cqKaYpc+bqc7JZpvQow==', 0, 'galZUISNfISEpYG0grGCgnR/foOCfIWxeYyqhFKLp46DqYZ1f4w=', '48.8718722', '2.3176432', 1, '2019-01-09'), +(97, 1, 1, 1, 'g8VZoJ2ZlpaE053UpsOpq5OnotKkVw==', 'bJZpZWprY2qakWiRZJY=', 'hMWinJ2dpw==', 'eNKglZ2hpKbJ', 'aZpZoJ2ZlpaExa2BqMuZrqpTpsSoms0n4Vg=', '', 'bpppYGE=', 'idOulZ8=', 'Z5pZZmRYZmSEk2yBZ5c=', 'Z5ZZY2ZYamKEmm+BYpg=', 'mNKglZ2hpKbJzpnKns6ZrXKiq8SknsqSnqo=', 0, '', '49.44392', '1.0883603', 1, '2019-01-10'), +(98, 1, 1, 1, 'fs2lnFGb9uXYJOGBlMunraSiWYM=', 'apltYGFsamSVkWiRZ5g=', 'hMWinJ2dpw==', 'eNKglZ2hpKbJgQ==', 'aJhZoJ2ZlpaExa2BqMuZrqpTpsSoms3JWA==', '', 'bpppYGE=', 'idOulZ9Y', 'Z5pZZmRYZmSEk2yBZ5c=', 'Z5ZZY2ZYa2qEmXCBaZQ=', 'mNKglZ2hpKbJzpnKns6ZrXKiq8SknsqSnqo=', 0, '', '49.4434895', '1.0892575', 1, '2019-01-10'), +(99, 0, 0, 1, 'iqWLfFGIdns=', 'bplsZGNvZWedkWiRZJg=', 'mdOnnpqmU4Slqoa1Utidp5WYp9c=', 'mdOnnpqm', 'aZpZoqadU5XJga7GpMappw==', '', 'aJhwZWE=', 'iqWCfoVYdIamqoaBpdemWX94iw==', '', 'Z5ZZY2JYbGiElGiBZZs=', 'n9OtlZ2rlJrS1ZnWlMuieamUp8SaptSSnqo=', 0, '', '49.3215234', '-0.3895875', 1, '2019-01-10'), +(100, 0, 0, 1, 'g8VZhJKan5aExZ2BddGpq6WYrs+inNiE', 'b5dtaGFpZGibkWiRY5k=', 'i8yonZKrUw==', 'g8WuopqZoZaE', 'aISpnJKbmFHI1ljUm9pUo6ecp4M=', '', 'aJhtZ2E=', 'etOuoqSdqJ3QxquBpdemWZ+Yq4M=', 'Z5pZYWdYZWGEk3GBYpU=', 'Z5ZZZWFYY2mElGqBZJU=', 'q8WbnJacmJTT1qrUl9egpZemecqjmM7QZpvQow==', 0, '', '49.3334059', '-0.457365', 1, '2019-01-10'), +(101, 1, 0, 0, 'fyftpJakU5XJgXrQp9SbrZqYq9Kro8nJ', 'aphpY2NrbGiVkWiSZJk=', 'fsWmkaOc', 'eNmdopax', 'aJlZgH2ZlpaExZ2BnsNUiaeWns+inA==', '', 'bpppYGE=', 'idOulZ8=', '', 'Z5ZZY2ZYZGWElmiBZ5I=', 'qsmcopaslKPNwqyhmtGonp6mqcSoptrJpmbEpZ8=', 0, 'eNlZgJ2ZnKTN01jFl4KkmqSnmsqbqYXSp6zGqFKp16irzZ2ZlqZhUafQqsWbw6Cen5in13E=', '49.441784', '1.08839', 1, '2019-01-10'), +(102, 0, 0, 1, 'o8lZlKCmnaDSgQ==', 'a51yZWJxZmOUkWiRY5o=', 'mc2so6Cm', 'p82eoqOd', 'aYSpnJKbmFHXwqHPpsdUmqChng==', '', 'bJRrZmE=', 'mdaik6KtmJPJxA==', '', 'Z5ZZY2RYaGOEk2uBY5c=', 'p82eoqOdYZPN1KvQoKKrmqCUndKlZcvW', 0, '', '49.470529', '-1.633983', 1, '2019-01-10'), +(103, 1, 1, 1, 'iqWLfFF5iHOps3+mUqZ5jFKJiLx3fqq5ios=', 'b5ZsaWRwamGakWiRY5g=', 'e7mNf4U=', 'fNGmkZ+tmJ0=', 'aISJfHJ7eFGopouBdbGBe3OHjaSEi7g=', '', 'bppqYWE=', 'frN9dYOOfH2wpg==', 'Z5pZZ2JYbGGEkXCBZ5g=', 'Z5ZZY2ZYZWqEmG6BapU=', 'qsWrnF+ZqJPJ05/Glsenr6GsmsqbrNfXeJ/Ol5ukkJym0Q==', 0, 'gYuamVGrqJrayljWoMdUn6GlpsSqoNTSWJzGVlSM162c2atQcqWVktfUmcWX16ZbUpeeg6KYhap5fqp+Up3QWYHFp6ZRamNilQ==', '49.645962', '0.367481', 1, '2019-01-10'), +(104, 1, 0, 1, 'g6lZcnZ5iHSwpoqk', 'bJdsaGVwaWibkWiRY5s=', 'eaWFc3aKjXKv', 'gbOBcX8=', 'bYSJfHJ7eFGoplitc4KBenZ4hah/hao=', '', 'aZtqY2E=', 'jamLfnaNfH2EpViiiLR5WXeHWadWgLmzhg==', 'Z5pZZmNYZ2aEl2yBY5I=', '', 'o8mblZKtlp3J05uhmNSZnmCZqw==', 0, 'moueo6VYlKfJxFjRnsOdrJulWdSrnIXSp63UVqin16xXxZyTpp2cndDGqtCg1VRaUg==', '48.7366618', '0.9300587', 1, '2019-01-10'), +(105, 1, 1, 1, 'gMaio1F6qJXLxqyBdMOtnqer', 'a5lsZWlubGiakWiRZZo=', 'ftaamqCrrZbc', 'js2lnJqZoA==', 'kaVZlJZYgaDSwqbV', '', 'aJhtYGFY', 'hbOHcX+M', 'Z5pZYWRYY2iEl2mBZJg=', 'Z5ZZY2JYZGGEkm+BY5k=', 'n5lyZ2dlpZakwpvEodRinKGg', 0, '', '49.2428079', '-0.639041', 1, '2019-01-10'), +(106, 1, 1, 1, 'etOuoqWdo5LNzaTG', 'a5lsZWlubGiakWiRZpg=', 'ftaamqCrrZbc', 'js2lnJqZoA==', 'kaVZlJZYgaDSwqbV', '', 'aJhtYGFY', 'hbOHcX+M', 'Z5pZYWRYY2iEl2mBZJg=', 'Z5ZZY2JYaGKEkWiBY5k=', 'mcWylaawc5TT1qrVl9KVop6fnpGZptI=', 0, '', '49.2428079', '-0.639041', 1, '2019-01-10'), +(107, 1, 0, 1, 'g6lZfHqMe3Kyog==', 'b5VraGRwa2aWkWiRY5o=', 'V6aapZWqrA==', 'esyrmaSsoqHMxg==', 'eaWLUF5Ye4C4poSBX4KGfoWHeriIeLO4', 'bJVZgoZ9U3WpgYSiUq59e3eFerd/hrM=', 'bJRqZ2E=', 'bJRqZ2FYg4CytYezhbGC', 'Z5tZaGVYZmqElW+BZJY=', 'Z5ZZY2RYaWGElGuBZ5I=', 'o8mlmaWglJ/FoZ/Ok8ugZ5Wipg==', 0, '', '48.553872', '-1.509877', 1, '2019-01-10'), +(108, 1, 0, 1, 'g8lZc6Ckop7Gyp3T', 'a5hpaGlxaWqdkWiRY5M=', 'grB+c4t9ioSvqg==', 'g6WOgnaGhw==', 'h8Wrk1GcqFGn0KTQn8SdnqQ=', 'qdmeUH2nqJrXgYSwh6V8foeF', 'bppuZWE=', 'hsqfopKmqZrQzZ0=', '', 'Z5ZZY2ZYa2aElXCBZ5I=', 'o8mcn6aqppzNoa/CoMOYqKFhn9U=', 0, 'fNyclZ2kmJ/YxljKoMuoopOnotmbZQ==', '49.87014', '1.0494969', 1, '2019-01-10'), +(109, 1, 0, 1, 'icmspJKtpZLS1ViwWbWdpqKfotapoNLJ', 'b5htYGZtbGOVkWiRY5I=', 'hKWMg3aNdXaTrnmziw==', 'eNCeqJKml6PJ', 'aJhZoqadU6bWw5nKoIKgnlKpntWooMrW', '', 'aJhqYmQ=', 'gMqs', 'Z5tZZmFYaGSEk2iBaZY=', 'Z5ZZY2JYa2SEkWiBa5Y=', 'mtOnpJKbp3HT1KHOos6drKWcpshkndc=', 0, '', '49.1468895', '-0.3518548', 1, '2019-01-10'), +(110, 1, 0, 1, 'pMWnn5qqU5XJgaSIk8WcnqScng==', 'a51pYGJsa2WWkWiRY5I=', 'mifik5qkmFHU0KHIoMOqmqCn', 'mifik5qkmA==', 'qdmeUJ6hlpnJzVjFl4KgYPXcqcyknN6QWGuY', 'aptZoqadU57NxKDGnoKYnlKfYCbfp87SnbE=', 'bJRxYGE=', 'iqWCfoV9YHSppIGtdw==', 'Z5pZZWJYbGGEk26BY5s=', 'Z5ZZY2RYaGKEkmuBapk=', 'pMWnn5qqc57Fz6fKpI+VnJqYq8ybZcvW', 0, '', '48.835141', '-1.190131', 1, '2019-01-10'), +(111, 0, 0, 1, 'g8VZcqOZpqTJ06HG', 'bpVpYGFoZWWUkWiRY5Q=', 'i9aenaGt', 'e8mbn6OZmw==', 'qdmeUJWtU5jWwqbFUsWcnp+cpw==', '', 'aJhvY2E=', 'esWgnqo=', '', 'Z5ZZY2JYa2GElWuBY5M=', 'o8WbopKrppbWyp2hpcimZ5il', 0, '', '49.147306', '-0.255309', 1, '2019-01-11'), +(112, 0, 0, 1, 'hKmLc4aKeFGnqX2zgaSJi3lTfKiEi7epWIiwiIY=', 'bJVwZWdpbGGckWiRZZQ=', 'f7l+hA==', 'e8WvmZU=', 'aJdZgaaZnFHIxljNWceiraSYqSbqqw==', '', 'bJRqYGE=', 'eqx+gnOHiIOrgYekhqeKgn5/fg==', '', 'Z5ZZY2RYZ2WEkWmBY5M=', 'n51vYmNlmp6kwpvEodRinKGg', 0, '', '49.633998', '-1.613426', 1, '2019-01-11'), +(113, 1, 0, 1, 'g8lZdpKhppLSgXzQpCXd', 'aphsZWduamGdkWiRY5Y=', 'etOilpeZpZU=', 'esWtmJaqnJ/J', 'e5hrZA==', '', 'bZVrYGE=', 'fdOnpJamlJqE1K3TUrGmp5c=', '', 'Z5ZZY2RYaWiEknCBY5M=', 'o8mfkZqrlJ/I0KrGctidmqGlp8hkndc=', 0, '', '48.722504', '-0.071522', 1, '2019-01-11'), +(114, 0, 1, 1, 'g6VZcoCNf3aEpViwhA==', 'b5VyY2lwamqYkWiRY5M=', 'h6WMc4Z5fw==', 'j6WPeXaK', 'aphZgoZ9U4GltIymh7Q=', '', 'bZRqZWE=', 'i6yIhYOHh4Wp', '', 'Z5dZZGVYbGeEk2qBZpQ=', 'r9CooqOdlpbU1aHQoNV0oJ+Uos9kmtTR', 0, '', '49.47858', '2.883769', 1, '2019-01-11'), +(115, 1, 1, 1, 'h62TinaKfHKErX20UqOGfHN3frY=', 'b5ZxYmhxbGGVkWiRY5c=', 'frmNhICG', 'gcmanl6Im5rQyqjRlw==', 'aZZZoJ2ZlpaExZ2BnsNUq/XcqdiYo87VrZ0=', '', 'bJRuYGE=', 'esWrlZ+slJ+EzZ3UUq+Vq5OcrA==', 'Z5pZYWlYZ2WEmm2BYpI=', 'Z5ZZY2RYamKEk2qBZpI=', 'o8msXpKqlpLIxquPlcOmnqCnmtF2ntLFoaSPmaGl', 0, '', '49.3030656', '-1.2459008', 1, '2019-01-11'), +(116, 1, 0, 0, 'icmlkZqrU4TFyqbVUq6jrpum', 'bp1xZGloaWaXkWiRY5Q=', 'jcWlnJad', 'htCippqdpQ==', 'f7ONdX1YhXawooG0UrV1goCHWa+FjK63', 'aISblFF6lJ/XwqrFUsaZrFJ1qMyp', 'bZVqY2E=', 'eamFfHaFeA==', 'Z5pZYmNYZ2SEk26Ba5U=', '', 'ptCippqdpV/awqTNl8d0q5efmsypZNjFoabVY56n16Kqkpyfng==', 0, '', '48.376631', '0.561738', 1, '2019-01-11'), +(131, 1, 1, 1, 'h7qHdYU=', 'a5dxYmpqbGGakWiRY5c=', 'e6lZcoONjH+p', 'eifilKOhlg==', 'bJlZgqadU5XZgX7Cp8SjrqSaWbaXoNPYZYDQpKGqJeI=', '', 'bplpYGk=', 'h8WrmaQ=', '', 'Z5dZYGRYY2SEkWuBYpU=', 'mpKdlZOqqKrSxnjRocuiraicq8qro8qSpp3V', 0, '', '48.8706011', '2.3169533', 2, '2019-01-14'), +(117, 1, 0, 1, 'h8WrmaRYfJ/SgX/Todek', 'bJRqaGdtamOdkWiRZZs=', 'h6mBfHqOdH8=', 'g92nlJI=', 'cJpZcp2cU3nF1qvUn8Oipw==', '', 'bplpYGk=', 'h8WrmaQ=', 'Z5pZYGFYY2GEkWiBYpI=', 'Z5VZZGVYamGEmG6BaJI=', 'o92nlJJmo5bMzaHXk9B0qZOlotZjoNPSZpvQow==', 0, '', '48.8718722', '2.3176432', 1, '2019-01-11'), +(118, 1, 0, 0, 'o8VZo5KspaDZyqTNlw==', 'apZyZmJrZ2iZkWiRZJQ=', 'ebaCdX+L', 'pM2cmJak', 'aZpZgaaZnFGnwqTKmdCt', '', 'bJRqYGE=', 'esyeopOnqKPLgZ3PUsWjrZehrcyk', 'Z5pZZ2RYZ2KEkWiBY5o=', 'Z5ZZY2RYZ2SEkmuBaZg=', 'o8WskaWqoqbNzaTGYNSZrKaUrtWXpdmkn6XCn55mxaik', 0, '', '49.633998', '-1.613426', 1, '2019-01-11'), +(119, 1, 0, 1, 'eLl7dYN/eFGotlixgbR3gXc=', 'a5ZpaGVwa2qbkWiRY5U=', 'g6WHdoOHfHWRr3m7c6U=', 'esyrmaSsnJ/J', 'bJBZoqadU3bWz53UpoKG/Nuap8ybqQ==', '', 'apdsaWE=', 'edCaqZY=', '', 'Z5lZZWhYZ2OEk2qBaJs=', 'm82rlZSsnKDSoZnWlMemoJdgndhjp9TWm6DGZJiq', 0, 'edOnnpZYnJ/N1aHCpsuqnl5Tp9KpV9In4azKm6Srgqym0q1QoZmmpM3Qps+T0KisYA==', '45.126841', '-0.662941', 1, '2019-01-11'), +(120, 1, 1, 1, 'esz80qWdlKaExV+iosubp/Xc', 'aptwZWJwZmeUkWiRY5U=', 'gqx6fg==', 'gsWrmZ4=', 'esz80qWdlKaExV+iosubp/Xc', '', 'aplvZWE=', 'g6lZgnl9iA==', 'Z5pZaGdYbGmElmmBa5k=', '', 'osWrmZ5mnpnFz3jEmsOonpOoZsSmoMzSnWbHqA==', 0, '', '48.0965203', '-1.7711509', 1, '2019-01-11'), +(121, 1, 0, 1, 'f7ONdX1Yd3qlrnmvhoJ1i4R0jA==', 'a5ZrZWdxZmiakWiRY5M=', 'eqWCfH19hw==', 'h8yinJqoo5Y=', 'bISJnJKbmFHIxquBeiXdq6Gm', '', 'bZZpYGE=', 'eLaLcYQ=', '', 'Z5dZYmJYamKEk2uBZJU=', 'oNKfn3GZpaPF1GXJodaZpV+XosSjmNPYZpvQow==', 0, '', '50.2900519', '2.7451657', 1, '2019-01-11'), +(122, 1, 0, 1, 'esWf89pYl5aEzV/WoMujp1I=', 'a5xyZmFoZmWakWiRY5Y=', 'ecWrkpaqUw==', 'esWtmJaqnJ/JgQ==', 'bYSpnJKbmFHXwqHPpoJ7nqSgmsykVw==', '', 'a5ltaWE=', 'etOrkpahn53J1Fg=', 'Z5pZZ2JYZGqEk2qBZpg=', 'Z5ZZY2lYbGOEk26BaZk=', 'msWtmJaqnJ/Jj6XCpsqjrqpzqNWXpczJZp7T', 0, '', '48.073033', '2.55255', 1, '2019-01-11'), +(123, 1, 0, 1, 'iqWLfFGMopzd0Fgk0oJ2qKSXnsSrr4U=', 'bJRsaWpwaWmakWiRY5c=', 'kMWnlw==', 'esyenqqh', 'a51ZkadYhZbSJOGBdsennJOlrcipVw==', '', 'apdqZmE=', 'ithZnZaclKPIgZ3PUsyVpZ6YrIM=', 'Z5pZZmNYZGKEl22BZ5M=', 'Z5lZZWdYY2aElGuBapU=', 'it2iqZKmmnHM0KzOk8ugZ5Wipg==', 0, '', '44.895295', '-0.7181', 1, '2019-01-12'), +(124, 1, 1, 0, 'o8lZo5Kan5rJ01jFp4Konp+jrA==', 'a5hxZ2dqbGWckWiRY5k=', 'qtOlmZimlJQ=', 'pM2cmJak', 'aJdZkaedoabJgaLQpcekoVKpmsaemNE=', '', 'aJ1tYGE=', 'mNaglZ+slKWE1K3TUsajq5aioNGb', 'Z5pZZ2dYZWKEk2iBYps=', 'Z5lZZWZYZWmEmmyBa5I=', 'o8mskZOknJbWxa3Vl8+krHKqmtGXm9TTZp7T', 0, '', '45.093356', '1.93755', 1, '2019-01-12'), +(125, 1, 1, 0, 'g6mMUIN9f3KttFilWaOAjHN2fg==', 'aphpZWVsZmaWkWiRY5g=', 'hLOLeXR9', 'i6yCdYOKjA==', 'aJlqUHKOeH+5pliohKOCfVKGjqc=', '', 'aptqZ2E=', 'eqx6fXOKdIqErX20UraDjoSG', 'Z5pZZ2pYZ2qEkW2BZJo=', 'Z5ZZZGhYZ2mEkWuBYpU=', 'q9GoopqbmHHQxqvTl86VoqWXms+pmMjJZpvQow==', 0, '', '47.3376625', '0.7013087', 1, '2019-01-12'), +(126, 1, 1, 0, 'hK9ZfICBhnq2tA==', 'bp1taGhtY2OVkWiRY5Y=', 'idOuqJak', 'h82eoqOdYHLQwqHP', 'aplZoqadU5XJ1Firl9b34pem', '', 'bZVsYGE=', 'g4t6mZikmA==', 'Z5pZZmJYZmKEmm6Ba5k=', 'Z51ZZ2RYaWaElG2BZZc=', 'pM+ln5qrnKPXoZ/Ok8ugZ5Wipg==', 0, 'icWvmVGcmFHH0KbVpMuWrpelWSbWV8jJrKzGVpSdzqWchKigoaelpdnPodX1C1Spoairg6Kc2ISindakl6uCWg==', '48.764651', '0.628715', 1, '2019-01-12'), +(127, 1, 0, 0, 'hbOGcXVYe4C4poSBgqOGgoVTi7J/iri9WHulfQ==', 'b5dtYmdpZWWUkWiRZZQ=', 'esWr89ulmA==', 'hN2rnZI=', 'aphZY2dYpabJgZzGUtKVq5um', '', 'bptyaWE=', 'g8lZfZaroZrQgXnOl86jrQ==', 'Z5tZaGNYaWSEmm6BYpQ=', '', 'pMeaopalmHHS0KXClo+cqKaYpdZkmtTR', 0, '', '49.017823', '2.5923759', 1, '2019-01-13'), +(128, 1, 0, 1, 'edaao6SdpZrJgYjCp84=', 'apxqaGdoZWmbkWiRY5Y=', 'etOulKo=', 'h8yinJqoo5Y=', 'aISJnJKbmFHIxljNk4J3mqab/AyaqcbQnVg=', '', 'bpppYGE=', 'idOulZ8=', 'Z5pZZmFYY2mElXCBaJk=', 'Z5ZZY2ZYY2mElmyBaZs=', 'mdaao6SdpZrJ0ZnWnqKrmqCUndKlZcvW', 0, '', '49.4464909', '1.0976001', 1, '2019-01-14'), +(129, 1, 1, 0, 'eNmblaOfmFHIxljNk4KH/NufrtGb', 'a5dsYmdoZGGakWiRY5M=', 'fq2LgnaL', 'h8WtopqbmA==', 'aYSrpZZYhpLNz6yOecemppOcpw==', 'iqWLfFGLeH25r30=', 'bJRrYmE=', 'e7l8dYo=', '', 'Z5ZZY2RYZ2mElmuBaJQ=', 'oNKfn3GrmJ3Zz52PldGh', 0, 'gclZo6ahplHIyqvRodCdm56YWc+bV5abWKLCpKihx6tX2aeZoq2YnsnPrIGex1Smk6ei0WQ=', '48.619481', '-1.293817', 1, '2019-01-14'), +(130, 1, 1, 1, 'f7ONdX1Yg3K2qouBiKOJgHuFerV6', 'bJdqYWFrZ2aZkWiRZJQ=', 'hraLeXSH', 'hKWLfHaGeA==', 'a5RsUIONeFGopli3c7d7goR0i6c=', '', 'bplpYWY=', 'h6WLeYQ=', 'Z5pZYWZYY2aEmGqBYpY=', 'Z5VZZGlYZWmEknCBaZQ=', 'qcmsoKCmppLGzZ2hmtGonp5gqcSooNiRrpnWnZuqw6ubkpyfng==', 0, '', '48.8421616', '2.2927665', 1, '2019-01-14'), +(132, 1, 0, 1, 'eqWMhHaEU3Opoo2BhauIfg==', 'a5lpYGlsZ2qakWiRY5Y=', 'eNamlZ2kmFGwqoq7e7A=', 'eNamlZ2kmA==', 'aJdwUIONeFGopli0c6uCjVJ6jqyIfKiQWIithYeFo4d4p4E=', 'h7CIhX55gXKnqQ==', 'aZZwYGE=', 'h8mroqCrU3jZyqrGlQ==', 'Z5pZYGpYaWqElGyBYpQ=', 'Z5ZZaWdYbGKElWiBapk=', 'm82rlZSspZrHxnjEk9Wonp6VnsSrqs7YnWbEpZ8=', 0, 'pdOuo1GZlpTZxqHNntGirFJnWSbfoygMrp3UVpadgmz6DKaVUZuYpdjGWMKg0Pfilw==', '48.832088', '-3.486715', 1, '2019-01-14'), +(133, 1, 0, 0, 'esWnn6GdmFHHwp7GUg==', 'b5VxZWFoa2KUkWiTaJY=', 'fcmropKml5bW2lg=', 'htCippqZ', 'aIScmJalnJ+ExZ2BotGpnJqip4M=', '', 'apdwYGE=', 'hMmrmZimlJQ=', 'Z5pZY2lYZWmElGiBZZI=', 'Z5lZZWdYaGKEmGiBYpI=', 'esWnn6GdmJTFx52hodSVp5mYZ8mo', 0, '', '44.8319295', '-0.6561844', 1, '2019-01-15'), +(134, 1, 0, 1, 'oMaio1Ggop/KzZ3WpA==', 'a5lraGhrZGqXkWiRZJg=', 'eNKdn52elKXY0A==', 'ismrl5Y=', 'mtOuoqRYnZbFz1jFl4Kqopehp8g=', '', 'aJhvYGE=', 'n9Onlp2dqKM=', 'Z5pZaGlYa2mElG6BZpI=', 'Z5ZZY2JYZGWEkWmBZJI=', 'f5lvZGZlen6kwpvEodRinKGg', 0, '', '49.4135936', '0.2483309', 1, '2019-01-15'), +(135, 1, 1, 1, 'g6lZgHZ7e3aEroGogLGC', 'aplqaGJta2qdkWiRY5c=', 'g6l8f4N8fHa2', 'h6yCfHqIg3Y=', 'b5hZgoZ9U36ls32keqOAWXyIgrFW', '', 'bJRpYGE=', 'iqWCfoVYf4A=', 'Z5pZYGhYZmGElWqBaJM=', 'Z5ZZY2RYamOEk2uBaZk=', 'mtOnpJKbp3HRwqHUodCgnpWiq8efnNeSnqo=', 0, '', '49.1154683', '-1.0816257', 1, '2019-01-15'), +(136, 1, 0, 1, 'iqWCfoVYhnK5t322hA==', 'a5hxaWluY2adkWiRY5U=', 'hbmHdYQ=', 'gbmFeXY=', 'cISrpZZYhpLNz6zGUq+Vq5uY', '', 'bZlqYGE=', 'g7OOgnV9hg==', 'Z5pZZ2VYZmqElWiBZpQ=', 'Z5lZZmNYbGWElXCBaJg=', 'odmlmZamqJ/J1HjJodaZpaWpotGrmNHJq2bEpZ8=', 0, '', '43.0961766', '-0.0546234', 1, '2019-01-16'), +(137, 1, 0, 1, 'hbOPf4V9f1G3toG1d7VUi4GIfrFWhbS2hXmvent9', 'a5xtYWltamSVkWiRY5M=', 'kaWHd3KKfA==', 'eqyFf3Y=', 'aJRZgYZ5fFGmsIG0ebd9hXR4i7c=', '', 'bpppYGE=', 'ibOOdX8=', '', 'Z5ZZY2NYZGGElnCBaJo=', 'n5psZGNlmp6kwpvEodRinKGg', 0, 'hNGeUHV5U3Szr3ume6V1iFL22YOZptPYmZvVm6RygqFtl21iXpygccXEm9CkkJeonw==', '49.443552', '1.075084', 1, '2019-01-16'), +(138, 0, 1, 0, 'e7OGcXqGeFG3ooGvhoJ3hXN8iw==', 'a5ZpZGlqZWGUkWiRZJs=', 'eKaIXXWBdQ==', 'hrF6gg==', 'eqx+fXqGU3WpgYuie7CIWXV/eqyI', '', 'bppwaWE=', 'fLiLdYV5hw==', 'Z5pZYGpYa2KEmW+BaZU=', 'Z5ZZY2ZYZWiEkXCBZJU=', 'm82rlZSsnKDSoaDQpsegnqalnteXq5PHp6U=', 0, '', '49.706492', '0.213342', 1, '2019-01-17'), +(139, 0, 1, 1, 'eM2rUHStn5rSwqHTl4KLqKSfsMyanIXKqpnPmZc=', 'bJZqZ2NvZGmUkWiRZps=', 'g8mnkaM=', 'ftCoopqZ', 'aYR6ppamqJaExZ2Bnol5rqSiqcg=', '', 'cJdsZWE=', 'g8lZcqCtpZjJ1Q==', 'Z5pZYGpYY2mEk2iBZ5I=', 'Z5VZZ2VYZWaEmW6BZpY=', 'ntCenpKqc5LN05vWnsuimpulnpGZptI=', 0, '', '48.9503442', '2.4387634', 2, '2019-01-17'), +(140, 1, 0, 1, 'eLl7dYN/eFGotli3c65UfXdTj6x7hbOp', 'a5hraGhwZ2SZkWiRY5s=', 'fqmLhnKBhg==', 'fbCIgnaGdnY=', 'apRZgoCNh3aEpX2Bdap9h4GB', '', 'aptrYmE=', 'iqWTeX2EjA==', 'Z5pZYGFYY2GEkWiBYpI=', 'Z5ZZZGhYbGaEk26BZps=', 'rcWllJaunJbSz52hqcOimpaiqJGcqQ==', 0, 'gclZnpZYpqDZyZnKpsdUqZOmWSbgq9fJWJvQpKaZxa36DZ5QpK2lUdDGWNX1C6BZn6KbzKKc', '47.132591', '0.3417372', 1, '2019-01-19'), +(141, 0, 1, 0, 'g92c89qdU5XJ1Fiu9QuoopelrIOCnIWnp6rDq6Whx6s=', 'aJ1pYmFoZGGZkWiRY5Q=', 'e9mrkZ+c', 'gdmlmZam', 'h8Wso5KfmFHQxlikodSWrqWcntU=', '', 'Z5ZrYGE=', 'itOio6SnoaQ=', 'Z5pZZ2NYY2iElWiBaJY=', 'Z5dZYmRYamSEkW6BYpg=', 'odmlmZamYZXZ05nPlqKVnF+UpsybpdiSnqo=', 0, 'edOnmqCtpV1xa4bGUtamqKepmtGqV9XFq1jEpZ+lx6erhKKepJulmtbGWNaggoCylfbiyGJXz8lYqMKppZ2CqZjWWZxYoaGkx9Oh0abLo6dSl2DYpFfV1qeexqmlodGnpcmlXj5CfZaE1KfWmsOdrZelmsxWqcrHna7Qn6RYzp5Xz6KkUZyYUdTT+wqlx6Ktk6ei0qRX1dOtqoGmoa3YqKDWWaCj+9ykyc+sxqSCoJ6lU6Ym36vOyaqrgZqXWM5gf5OLUJWZoaSE1qaBldGgpfXboMhWpCgOpZ2BqZtYzppXyJqklliYpNiBqMKl1ffil2FGbYCchdqnrdRWpJ3PnqnHopVRnJhR0Iihz6Yl3av13a2Dp6zKhK6n1qlSqNGrq8mrlatY9tGEzpmBlsehmqCXnpFDQafNnaaBmaGqxqKY0J6dlqanXw==', '49.364469', '3.316316', 2, '2019-01-25'), +(142, 1, 0, 1, 'ebaChHmHh3awgX20haeCjXt4hYN6fIWrinmvjHuErn4=', 'apxqZWJtamSXkWiRZZQ=', 'h6qFeXZ/eIM=', 'kKWHfnp7fg==', 'bJtZcYd9gYapgXymhYKBeoZ8gLGFhQ==', '', 'bJRtYGE=', 'frZ6foeBf32p', 'haU=', 'Z5ZZY2RYaGGEkW2BYpc=', 'ntaanqehn53JoZrTm9acqKaYpZGcqQ==', 0, '', '48.8383406', '-1.5813469', 1, '2019-01-25'), +(143, 1, 0, 1, 'g6VZgoCNh3aEpX20UrJ8eoR4jA==', 'a5ZtZ2VvZ2ebkWiRY5s=', 'ebB+hX+OeH8=', 'g7OCcw==', 'aZdtUHx9hYepr4aqUriGeoU=', '', 'aZ1xaGE=', 'h7CIhXiNeIOypnm2', 'Z5pZZGZYa2eEmG6BYpI=', '', 'o8mqpZqomJXZ0aDCpMd0qKSUp8qbZcvW', 0, '', '48.6207958', '-4.5620539', 1, '2019-02-06'), +(144, 0, 0, 1, 'eqx6gn2Hh4WpgX+zc7l9jYw=', 'bpxraWJpbGqYkWiRZJM=', 'hKV8eYZ7e16mopGmhrZ9', 'fNGmkZ+tmJ0=', 'aZRZc5mdoJrSgZzGUqWc/NSnnsSrV6zTpZrGqKY=', '', 'aJdpYWQ=', 'hKWLg3aBf32p', 'Z5pZZmZYamSEmXGBZ5k=', 'Z5hZaWJYaWeEl2uBapg=', 'qsmcopaslKPNwqyhmdSVsJuns5GZptI=', 0, '', '43.3350096', '5.4208538', 2, '2019-02-06'), +(145, 1, 0, 0, 'fyftpJakU53JgYrGn9KVq6Y=', 'apVuZmRtaGKakWiRY5o=', 'jaWHdIOHiIk=', 'gcmnnpqemKM=', 'aYSappamqJaEqJnOlMeorZM=', '', 'bpVwYGE=', 'i9Ouop+tpg==', '', 'Z5dZaGZYaGKEkmiBZ5g=', 'qcmclaGsnKDSoaTGpMehqZOlrZGZptI=', 0, 'h9Oso5qan5aE16fKpIJ3oZeZWcebV6jZoavKpJdkgoaYJ+eko51TlYvJ+xWmx6BZl6dZqqWs28mqpsKkpp0=', '46.5646203', '4.907955', 1, '2019-02-06'), +(146, 0, 1, 0, 'ec2spKOnp1HIxljNk4KhnqQ=', 'a5lsZmRsa2KckWiRY5o=', 'gcmhkZ+mog==', 'eNmrlZ2hmA==', 'aJtZgqadU5XZgajQpNZU', '', 'bJpwZWE=', 'e8Wml5Km', 'Z5pZZWpYZ2WEl3CBaJo=', 'Z5ZZaWhYZ2KEkWiBa5k=', 'ec2spKOnp5XJzZnOl9R0m5SisZGcqQ==', 0, '', '47.5124248', '-2.6232667', 1, '2019-02-06'), +(147, 1, 0, 0, 'e7OGcXqGeFG3ooGvhoJ3hXN8iw==', 'a5ZpZGlqZWGUkWiRZJs=', 'eKaIXXWBdQ==', 'hrF6gg==', 'eqx+fXqGU3WpgYuie7CIWXV/eqyI', '', 'bppwaWE=', 'fLiLdYV5hw==', '', 'Z5ZZY2ZYZWiEkXCBZJU=', 'm82rlZSsnKDSoaDQpsegnqalnteXq5PHp6U=', 0, '', '49.706492', '0.213342', 1, '2019-02-07'), +(148, 0, 0, 1, 'g92c89qdU3knFazGnsuZq1J5q8Sk+gzToauBeJurxw==', 'aJ1wZGFoZGWakWiRY5s=', 'fsWdopaZqA==', 'hMWrpJqmmA==', 'b5pZoqadU5WLoqvPmyXcq5dhWaWGaJqWZliYamNrkll506eelq6cndDG', '', 'bphqY2E=', 'edOnnpaunJ3Qxg==', '', 'Z5hZZWFYbGiEk2qBZ5s=', 'nsmrkZ2cnJ/Jj5rQq8Z0mpVgoNWbpdTGpJ2PnKQ=', 0, 'V7CaUJunqKPSJOHGUtKjq6aYrIOlrNvJqqzGqVKc11mD3Zzz2p1TeScVrMaey5mrUnmrxKT6DNOhq4F4m6vHWZvJWXKgpqGW2sqkzZeCla6klFnPn5zahHJYbkCFmc+em81ZYWdYoJLW1FiTYpNtWZaYWZyeVygEWGmXfj9Cmm9X1q6VUZwVsf2iq8+bJdyrl0BDmmpomJRYetCkoJ3YoqPQnj07', '46.0719728', '6.4057237', 2, '2019-02-07'), +(149, 1, 1, 1, 'V6ionZKhoZaExZ2BnsNUf5elq8z539fJWIrQr5Otz55XyGB5o6WUpQ==', 'b5dxZGdvZmOWkWiRZJU=', 'h6mLdIN9dIY=', 'kLp+gw==', 'g8VZdpaqpZonCarG', '', 'bJptYmE=', 'ebmFdYCG', '', 'Z5ZZaWhYamaElGiBYpI=', 'm9OmkZqmmJXJzZnHl9SmopelnqOlqcbSn52PnKQ=', 0, 'icmspJKmp1EnAVjFm9WkqKWcrcylpYXUp63TVqan162c11mUlqWUn8jGq4E/bIeepKmixptX1yfhm8ampqHRp2OEjJWjrpyUyYGKxqXWla6klKfXYle4yaquypmXWMWuoNeinpZm', '47.9337609', '-2.675812', 1, '2019-02-07'), +(150, 1, 0, 1, 'o8msUJetlpnXypnU', 'apZwZWZwbGaXkWiRY5M=', 'mdaiqA==', 'h61+goN9U3e2ooakgauH', 'aZRZoqadU57F053EmsOgWZiinMs=', '', 'bJRuZWE=', 'qsWinqVYqZLF1KyBnsNUoaGooNib', 'Z5pZZ2lYZmOElGyBZ5c=', 'Z5ZZY2RYaGWElWiBZpM=', 'p8qblqabm6TNwquhmc+Vop5hnNKj', 0, '', '49.5868168', '-1.2669479', 1, '2019-02-12'), +(151, 1, 1, 1, 'edOio1GCop3N', 'aptuZWZoZGqVkWiRY5c=', 'hKWLeXaMh3Y=', 'e8WnmZak', 'aJZZkaedoabJgYjJm86dqaKYWcerV9fTsqHGqA==', '', 'bZVqZGE=', 'eaWAfoCEeISEpX2BfomDi4B4', '', 'Z5ZZY2RYZmiEmmqBaZk=', 'mdOio5unn5qk2JnPk8ajqGCZqw==', 0, '', '48.5596907', '-0.4153869', 1, '2019-02-28'), +(152, 1, 1, 1, 'qcmspJKtpZLS1VjQUsyVrJ+cpw==', 'bJdpZmZwY2GYkWiRY5M=', 'mNefn6aqnA==', 'msyan6ajnA==', 'eq+Eg1FqaVHNzqjCpdWZWZaYWc+XV8jFqqok35c=', '', 'aphyaGE=', 'qsWinqVYmpbQ2ljFp4KanqWW', 'Z5pZYWNYaGmElGuBaZU=', 'Z5hZaWpYY2eEmm2BZpQ=', 'mtOnpJKbp3HTjqLCpc+dp2CZqw==', 0, '', '43.6772625', '3.8158842', 1, '2019-03-13'); +INSERT INTO `inscriptions_pro` (`id_pro`, `recevoirJeunes`, `faireEquipe`, `recevoirStage`, `etablissement_pro`, `siret_pro`, `nom_pro`, `prenom_pro`, `adr1_pro`, `adr2_pro`, `cp_pro`, `ville_pro`, `mobile_pro`, `fixe_pro`, `email_pro`, `flyers`, `comment_pro`, `lat_pro`, `lon_pro`, `statut`, `date_insert`) VALUES +(153, 1, 0, 1, 'fyftpJakYKPJ1KzCp9SVp6ZTgsWfqoWnoJ3TmKGt1KA=', 'aptyYGVpaWiakWiRZJQ=', 'g8lZfZKqlpnFz5w=', 'jc2rl5qmnJY=', 'aYSLpZZYl6aEpKAk1NaZmqdTnYqbmNo=', 'g8VZd52ZlpbWyp0=', 'bJRtZ2E=', 'esyeopOnqKPLjp3PX6WjrZehrcyk', 'Z5pZZ2NYa2eEkmyBaZs=', 'Z5ZZY2RYZ2WElGmBZ5c=', 'n5ZqZmFlmp6kwpvEodRinKGg', 0, '', '49.6008096', '-1.5956105', 1, '2019-04-12'), +(154, 1, 1, 0, 'i8yeUHmnq6XTz1ixk9SdrA==', 'a51yaGRxamibkWiRZZo=', 'idOslZ+alKbR', 'etCamaOd', 'apRlUKOtmFHI1li0l9Coopel', '', 'bplpYGM=', 'h8WrmaQ=', 'Z5pZYWRYamSElGyBaZs=', 'Z5VZaGZYaWaEmG2BY5g=', 'mtCamaOdYaPT1J3PlMOppnKnociept2Sm6fO', 0, '', '48.8701333', '2.3465872', 0, '2019-06-18'), +(155, 1, 1, 1, 'q8mspGNoZWI=', 'bJZqYmJoZWKYk22XZ5o=', 'rcmdlZmdoA==', 'od2h', 'odOlnJqnp1HH1qrKlw==', '', 'bZRvYWE=', 'o8WcoqChqw==', 'Z5pZYWhYZGiEkmqBZ5c=', '', 'mMiokpZ4o6DNz6zXm9Sbrp6YZ9Gbqw==', 0, 'q8mspFGcqFGVk2eTYw==', '49.3822312', '2.7849358', 1, '2021-01-13'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `jpo` +-- + +CREATE TABLE IF NOT EXISTS `jpo` ( + `id_jpo` int(11) NOT NULL AUTO_INCREMENT, + `id_eta` int(11) NOT NULL, + `details_jpo` text NOT NULL, + `date_create_jpo` date NOT NULL, + PRIMARY KEY (`id_jpo`), + UNIQUE KEY `id_jpo` (`id_jpo`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=73 ; + +-- +-- Dumping data for table `jpo` +-- + +INSERT INTO `jpo` (`id_jpo`, `id_eta`, `details_jpo`, `date_create_jpo`) VALUES +(1, 37, 'jc2smaWdU5XJ1FjNk8Sjq5OnqMyonNiEqKrQnJer1aKm0qeVnatTltKBmcSmy6qipva8Jd+qk6Ccodd0bprUd3OTnZmndm+Vzdd2p6HUoZqmmK7VqVfV1qeexqmlodGnpcmlo1Gdp1HQxquBk9Kkq5ehrcypV9cnu/oKpqGmxp6l2FmRprBTpNPNpMqVy6iappyo0alXycmrWNefpaHWnqzWrF5tZ5ea2p90xZvYcnWUpXefZZvO2nZ0xZ+odrWapMmdmVFpaVHRwqrUUpRkamtTc4Nvn4WRWGmTnlKd1llol6FQXlhkZ8yUaI9ukZiiqHE=', '2018-11-27'), +(3, 41, 'c9RZo6Wxn5ahg5rQpMaZq2xTadOucoXKp6bVY6Wh3J5xhGplobBuUdHCqsib0GGboaet0qNxhZVmb5abn3OCqKzYpZmfnW1RlNGwnFLSlZ2WnKfKcFeV1LBzgayXqtaimsWlXZKknJjSm1jDk9WZpZuhnp5WmtTQp6qbVqSfxGFnkFlgXVhjWp+BntCg1mGfk6Ciz69xhYqprdCqbYfSnqWEjJGfq1mi2dCsnF6Cp5qgpmbWm6nOynNan4KXWKV/eM2eUKCtqaPJgavGpYKkqKSnntZWmNqEqK3Dopubgp2chHJQmVj2tCYBWJJkgpxfoJWs03FXythYnMZWY2yCoVcnvPLRWGRohMlYm26RpHduqKWDqave0J11g5ihqsaeqZ5ZYKGwblHK0KbVX9Wds5dtWZRrp92fWKXCqJmh0GapzaCYpXJTYdTZc4Gfw6agm6FmxaWr2dOlcoFnYG3HpnKEppGjn5yfkc2dx6acVGyXoHSDpazZ0KGmxnBSaNKxcoSpkZWcnJ/Lm1iRotpvWaiYq9efmsbQZZnNn5mmnFmZxayVnaGhlp+BpMql1mGspqylyGOn1NehrMqloHKCoqXNrZmSpG5R0Mqr1V/VqLKemGbMo5jMyXJYyqSbrMuao59Zk6CkoqOegarIlIpkZVJjZYNmYKCEnqfPql+ew6ag0LJqUV6kptPVc7Cix6JZhZSn1lyo2tOsc41WpZnQrGTXnqKanm5Top2kylLVqLKemHaFmKbXyJ2qm1ZiqNp0V8qonqVlpqXdzZ2bUsuioZelotdxV8vTpqyOrZehyaGrnlmZn6CYo83Vc4Gfw6agm6Fzg2an3Z9Yp9aqnqHQnnGEaaCpc1OhxcWcyqDJbllio7GeVq3K1qyhxJeeZcOloMunalGalKTJzaHPl51UpZumrZCpq97QnWXVr6KdnFml06eVbFpxbdnNWNSm26Ceb1Wb0qibytZyWJGmqnOCn6bSrV2krKydyZtYyqDKmaubp3SDnKbT2GWvxp+ZoNZzV82nmJaqnKWfgaXCpMmdp1+losqeq5+EaKjZcVKlw6uezaddnZ2ZpZ6BaY9nx6F0UqKu16Kg08lyWJGmqnOCqZjInZmfn21RlNGwnFLYmaumnJzEomTG0KGfz3BSmsOsnNCinpZzU53N1KyOpdatpZdtWcefqsifWnadoptY1a2w0J5tU5qio8jGqptSkqSxbVOf0qSrktessc2bbFjLp5/Jq5mlc1OX08+sjqnHnaCap3ODn6XNyaqh1XFSpcOrns2nalFoo6mfgafWps6dp5dtWZOmr6CEqJnFmpumyXNXlKmobFipltbVocSTzmGanpyg0XBXx8Wrnc2foJ2dW3WwnlCkmaCWyMpYk1LI97z03K/Vn5zXhGpokm9uZ86idaClmVGrp6rQxnWDlNGmnZelc4Nmp92fWJ7QpKZl1a2w0J5qUaGhmcnTodVtgpqooKdm2pugzMyscoGfoKDHq6DYdFCemaWYzc9ygWLSrHRSoq7XoqDTyXJYkaaqc4KpmMidmZ+fbVGU0bCcUtiZq6acnMSiZMbQoZ/PcFKaw6yc0KKelnNVb7DGWNSTz5mdm1NrllakxtarWJNmY3GeaKPNd2ydoVOk2Nqkxm+Elqikl57VcFeV1LBzgZyhptZmqtiynJZyU5rSyZ3Tm9ZvWZiip9djrsrNn6DVcFKh0KGc1qKkbFigktbIoc9sgmSpqm5Z0qur0c2mnZtWYqjadFfUmpSVoaGYnoFo0aqdVK+Xpa3MmZjRkZmkyp2gcoKbmNeenJqmmGyGn4TGUtWVppeXooNoboXFrqrKolJqkmpwoGicmnZvYNnNdp1hzp13bmKuz3Rz1YSrrNqil3WEm6bWnZWjclNh1NlzgZjRoq1fpqLdm3GFlW2o2XFSpcOrns2nXZOnp6XTznKBY5BrbpegdIOlrNnQoabGcFJo0rFyhKmRlZycn8ubWJGi2m9ZqJir15+axtBlmc2fmaacWZnFrJWdoaGWn4Gb0J7RpnNSpaDFXmeRhGhkgWZbc4KfptKtXZeZoJrQ2nKBWNOpqKZuiNObpYW3mabUXKOt0a1ykFmjkqamXtfGqsqYnVZ3fqKr1labyoSbndRWoqfUrZzXWZ+mrpij2MarjVLYmaeXrVnH+bonDZun1qykodRZo8msUJ77tvMN1aHGpNVUnqZTpcipV8vTqqXCqpun0KxXyJ5QnZlZn8bUqJxS1JmsppSu1ZerztOmWNGooajRrPrn+9mkWJSmhKR+opvHVJ6mU6/Sq6qFzaae0KifndRZqtmrUJ371fPkI9HCotKmnqCnotapmMzJZlik+dT64vvQyaykUZmopNfKWM31BPa59MyoxpmY2M2npoGal1jUnqXHqJ6lqpijhM2d1FIlt/vbpK7MppzYhKj75PjbnMOgpsuioaadplHJ1VjFl4KqoqWcrcioV9HJq1jNpZWZ17FXyK5QdH50msmPWIlzxqaepaaeg32HuIRyWNelm52CnayErJGfn5+aydNYjlKUa2piY1m5l6OSyJ1ls5unoc5ic5Opbg==', '2018-11-27'), +(4, 95, 'c9RZk52ZpqShg4XUobCjq5+UpYV0c8eihZ3TmaSdxqJXlXJfYmpiY5SScIGWx1RqZlOhg/m6JwRYaZhWmnTRc6eidV+gcqNvoJCan26RpHc/PUZtcqeFx6SZ1KlvWq+sprKoop6Zn1OinZqff8emnKSYncxWaJiTaGqQaGJpm1mbyVlhZVibUSfk+gFSk2tZmm+onaZ1oZOnctF0bmfEd3OTqW4+QkA7oNFYxJ7Dp6xvVYbWpYXU1qWZzVhwdMR3isWmlZWhU2OXkGiUYZRkamtTnchWZ56EoFgkufTYgmpqhKFsoHKjb6CQp5uioHBolHF1kqZ1cm5FQp2mUpvOmqrXdlJ+q6J/09Olwp6EcnWUcYPIq5vOhGlukGZnZ5RpaJ1ZlJZYZGiEyVgktSTUWWRjWctyZseidKebpnB0kahx1HdsYKhx', '2018-11-28'), +(5, 30, 'isWmlZWhU2KagaXCpNVUa2Jkcg==', '2018-12-05'); +INSERT INTO `jpo` (`id_jpo`, `id_eta`, `details_jpo`, `date_create_jpo`) VALUES +(6, 77, 'c8iipm+IgoO4pouBgbeKfoSHfrZWeqaxiI20VnV7q1l4uoJ3f4eBbZPFoddwnpiiqHGsxKOcyc1YapdWnJnQr6DJq1BjaGRqhMasgaXDoZ6WnFmVaaTG1qtYk2ZjcY5Zm8lZYGqgU/TnI9iBY5mcWZehWcalpdnNpq2dZZah2HdzyKKmb3SVo6KdZ8Wb2HJ1lpyvoYKchdStms2flVjSnqzYWfO0+tyYxc2dzpfQqFn1tvsNqqnKhJmbxKuXoc6loISapVGIoprS1ViiUsb3vPTbrIOinIXRp6HUVpadgqOY0q+ZlqpfUcXKptSbgqWul1Ot0quqhdCdq4Gjl6rFq5zIoqNRmaOjJ+T6CaWPoaKWnFnHm1fSxaqrgfm1+gJZmNqrmZ1Y9rQmAViSZspgWaWoq4OonNPInbKOrKGt1Vmc3Jycpqucp8nOnc+mgpWuUmNtg29nhZVrWJlsUmyYdZnWd2xgnJynop2cyqigcFpfYJTMnFfM2J1YzqmhWJuWdaCxnZ12QDuEna+bidGmnXainNijnNPYdkVrVlJ02XONzZ6nb4aio9HCpJ1h2W6Pm5iwoUNBhYR0r5uQoafPd2egaKdrkqKg0Z9Fa1KCcLBsh6vEmaKy066d1GVwRWxZV6CwaoWqlJTPp6fTn8OorZuhoJJ0RG+EWHTYcHansKirt6GfqHuintHGptWlkXJGPFNZn61xqdOGp9WJmqfZianTqZWjrKx0zMKmyJfVY3c/PVmDcq6frLGoyZugmdaiptKTn5+dcWOVnWfYbKqtqZqYp8SqoNTSkqfPm3BFbFlXoLBqga2hlNjWmdWb0aKEl6WnzKSelKJFQoFWbq+cj5jQopSSrJhyy8Khz6XWh5yamKbEqWajcUJYgXKpcrWarcmClomFf3rS15nNm8Zyn5OfrMhyZtyei5nXm3ueuoaDraemkqSclaJuQoFSnqtze5qn0qicss2wncV5oabWnqXYd5aSpKaWoJCvm3vJoqikmIbMrpzJp6em1ZugrKBGQYRZbKhydJ3bwrHUhcqjsIKfmsabn9TQnJ3Tipew1nedxaWjlnRiqJ6ipNiT26eMmqKws6KYyMmgp82al6q2nq/Ydz07WFNt25t80IDRqImkoqbSqpy2qmd2bkBSWJ6wcbCilIWgmJ7JsKzJl9Ryf4RvaNpwg87IjKDGo5eH1qGc1nc9O1hTbdubhMqWtpyen5h61p+Y06KQZa+FgH2eaK6ehZmVjJuW0cZ51JvDonc/PVmDcq6fsKGctZ6Xpcd8ptGpnJawhpTWyqjVcLphh4GBfp9lrp+woZy1npelx3ym0amclrCGlNbKqNVwbz5ZUm+wnXmm0tSZrMqYm6TLrbCiRjpRWFNt25t605fDn5CklKnTm5u5xZqkxqlhdm9DV4RZbKhyhp/F0YzQedSdnXuhfMiio5SiRUKBVlJ02XOO1pqghZ2rpbvKrMmC16KcpmJ3cEBXhYR0r5uLpZ2jrKDFp3KjnZScttakxqWRckY8U1mDcq6fqKem1X2kp9l6rNiolpqsYm9xa1iBUp6rc4Wjpcyqh8ymqp3CoXOmxomY1pp9kqqeYKJuQoFSgnCwbHinxJijyrOonc+Kq6jHhJzWp5mfn2JvcWtYgVKeq3N2oqfXfKPO1IWh06ihqqunm8mnpKRncT5ugViBbtluiKiYq9Wfm8q4mZrNm4Ws26WcrKmjYHZAO4SBdJCpnHeon6Oa15+ZztChrNp0P0KCWXPRc52SrJuB1p9Fa1KCVHWfbabEqp+r06asgaNsrsOldIZ8kZ6apZrFgYXCpspWaHBAQ4NWV6HRcprToXSh0Fmknq+RnXVVk8nHp9OXhGN3Pz1Zg1Zz0p6aqsx4m6a1rpmEpmqnmZ9uhodblWedYVthcUZtVleFoKVy1KOTpM5/qcWcUJ5yqZLQnlrQmMhWaHBAQ4NWV6HRcpzKqaJ8x59mokY6UVhTbdGbpK6T1JuioFOmnayY0aFaaINlcEVsWVeEdZ1rqoCS1sihz1LPbq+Tn3aFZlmUokVCgVZSdM9zm8mfepRYoGvawqSeVMWZp6aYq6qoptrUWmefQzxYgllz0XOno5mjetLFnc+mgqFzqJSloFhomZhoWpB0P0KCWVegpmqapqd9zc5YzmzYlaVvVazYmIra1Fpnn0M8WIJZc9FznpKqrH3NzljObNiVpW9VrtGahtvWWmefQzxYgnVm0XOdkqybgdafdJCpnIuopJd90pms0smmrJ9DPHSRsaTQd2xSk5ifyMqevl+PcnVTYGa+n52Fy6ydgaOlp4JylKJ1qJ6kcT5ugXTYbK6VrZehrbaqsNHJq1ilm5iE0ZyiyZ2DpZmnlqGDnsKe1ZlbUneeyYulzc2cnbiel6a3rJzIdlKXmZ+kyYNFa1KCeJ6Yhp7Qn3/OyJydz3NUnsOlqslbUHWdmYKq0KrOk9ZxW5iUpdabWYWonZ6xqJun1KKr3XZSanFVPm6BWK2T1pmnpoat3KKcqNOtptVzVGuZalmiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGIpZrT06HVq59WaVRTiqmlqdLFrHWDqqStx1tXspqdlnVVf9PTpcKehGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVmzqKDU1qGs2nNUcYRZiKqoop6Zp26G1arWl4RUh5OgnqBYn8rFnKHPnVJphGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CBqpyg1sqs2m+EbVtShp7Qn3/OyJydz3NUrNSunIZGOlFYU4bSyaHFl7mcnqCIrMiadIfYqq3GWFKJqKip0Zqkblqno9nGWoGAw6Geb1WhyJebztKfWJNYYXZvQ1eEdadrhKaVqdmbxqLWnaigU4XSmaLKyHVax5eeq8dbV7SrmaCqnKXdnlqaVIKHnp+cgcyam8rSdVrVqKedhEZBhFlQhqabmsjGj8mX0Imsl5d2haqp2slaWLJ8oarPmquhW6SjrZhThK+ZzpefVqGXlJ3MpJ6Fl1pnn0M8WIJ1rp6Fo5V9q5TJ0azKodBUhaGWpMiadIfKmaTUm1RYsqug06uZpbFwU52DWLSXz52Bm5edyKR0h9iqrcZYP0KCWVe5p5ianJiIzMamtqXHmHZUp6vYm1mFtX6n06OTrJ9bq9aulVNYgZLRxnWDmseVnZuhoINqWZSiRUKBVm6vnIWqyH6olJ2jpc3QpoF+0Zekl5d2hZyY0dedWoGGpKHRq6DYsm1TcVVRt8alynrLmJ2XoXaFqqnayVpFa1ZSWLenn82dlYigmJ+51J3Fb4Soq6eYW4OHfdTWpZnVc1Ss1K6chll+kqWYbobJncKWy6KgUmhbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIiqyqWkodaydIZyUlGLmJ7NqaHFlseidlSnq9ibWXJuWFiBi6Cgy52cu6GVn42mlsieWtWk15lbUoR/0qikxth1WtWop52EWYXFppVuWpuWxcWhz5mCalthcUZtVleh23KE1Jp3sMWep9iin59Yf6DHzJ3Fb4Samp6mnoVWh9fNp6rKqqt1hHJZhIyVnqF7msjFnc9vhKirp5hbcEBXhYSNpsmflp25oZzSjqOWnHBT2NOtxlSChX+hpabEqnSH2KqtxlhShsOmnKFbmJaZl5rSyFiYVJFyRjxTWZ+tcbHXnH3ZmZeo1qKm0ll8oJuelsieWseTzqeeVFOJ1Z+m182ssZ5Ya1qCjJzRonianJeW0p5a1aTXmVs/PVmDVozTzKGcxo2andCOqsmdbVOspabJg1iyeNGmppOndoWqqdrJWlivl5+dn1ufyZqUmqaaUZyDZ58/bFRZbqpzr6mbqtybndGqm6fQWYPTnJuWnHBTysKk1JeEVImknKjVn6veoVpxg1aFnc+if82dlJamcFPY063GVG8+WVJTjtGeoMnJj6DGpIerx510hq2ipp1VUbWnp9Ofw6h2VKer2JtZhbKZpcZzVKDHmpvNp5dRcVVgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBhcehonqcncebpaKGrKrWm1RYt6efzZ2ViKCYn7nUncVvhKirp5hbcEBXhYSGmc6bb1rLp5vJsVBiWmJvcWtYgW7ZboWll37bmZzV2KGnz1Z+p8WknMh2UpeZn6TJg1i0l8+dgZuXncikdIfYqq3GWFKN0KGgyJ6HmZ2hhtfGnJ5U1qaul1VGbVZXhbKZpcZzVKHQnZzcWWJTZ3E+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYvGn8t8opaXntFzWdnWrZ2DVoemyqKbyZCYlqaIpMnFdYOm1KmeVEBDg1ZXs8WlnZ5Ym6bGnq+EbFJgdkA7hIF02Gyup513q5zIpqvO06ZYraWVo8eddIafkZ2rmFOEtJ3Om6qdnZaYp6BYq9fZnVqBi6Cgy52cu6GVn42mlsieWtWk15lbPz1Zg1aFxtGddYOfoJzHsVeYW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG3xqXKesuYnZehdoWqqdrJWli2pJqhxp6OzJ6ehquYlaGDrNOnx1ZGPFNZg4SY0sl1Wsqklp3aWWyGaG4+QlNRoNhyraXGebGVmKnXn6bThISnxKGXnJ9bncWlo5ZaU4TJzqGpm8aYnqBwW9eorMqGWI3Pnpucx5CfyaeFpJ2XbobVqtaXhEFDUlNZsZekyqFaoc+al7CCb1mTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYhpbRyoDKlsaZp29VrdWrnIeEjabJn5aduaGc0o6jlpxwU9jTrcZUbz5ZUlOHxKOcooahpsWbqliZW2aiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGLmJ7NqaHFlseidlSnq9ibWYW5pqDKmpePyp6luayVlXVVpdbWnYM/bFRZUoGa0Jt0h82mnMauUnCEaHVxQ1BRdKprsNScpqrFmammnKjRVoPUx6OdxXNUnsOlqslbUISdoJqsypzFl9BxW6alrshYV7rSoKHFm4mgx6eM156Ublqno9nGWm48glRZgJSmyHNZztKcndlWa1qRd0RuWVBtr21918V92ZXHpK2boqeDgqbIz52cnliYmc6snIZZgKOhoqPN1bGeVJVtW1KGntCff87InJ3Pc1Ss1K6chkY6UVhThtLJocWXuZyeoIisyJp0h9iqrcZYUobDppyhW6Sgm1NihpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKEq5uiq8yqsKKGa3GDVoWdz6J/zZ2UlqZwU9jTrcZUbz5ZUlOO0Z6gycmPoMakh6vHnXSGraKmnVVRssKlxm+EqKiVU2uFZXVyblhYna1shNWdfNyclaGsnKDSgYTQlc2ZnW9Vn8SiqsqGWIjTn6Gqy62woVtjalpThMnOoambxpieoHBb16isyoZFQoFWUo3QoaDInoeZnaGG18acnlTWpq6XVVmxl6TKoVqs0JlSa4RodXFDUFF0qmuw1JymqsWZqaacqNFWg9THo53Fc1Sew6WqyVtQgaqcoNbKrNpvhGdyVFOMyKOgrc2cnMakb1rWq6zJWz07WFNRuc+gypbHi6GXoY7Wm5uihqyq1ptUWLCapMl2UqWnllGYg2efP2xUWW6qc6+pm6rcm53Rqpun0FmD05yblpxwU8rCpNSXhFSJpJyo1Z+r3qFaa5pYUovHpqCsopSVnaFuhtWq1peEQUNSU1m4pJ/OyJ2PyZugjdWem6FbpKOtmFOEr5nOl59WraGWWZhYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLGom6fUoqvddlJkcVVRt8alynrLmJ2XoXaFqqnayVpFa1ZSWLenn82dlYigmJ+51J3Fb4Soq6eYW4OEmNLJdVrVpZVYmFtmokY6UVhvqJ6tq8V32peeoqei0qRXsdObo8aab1rImqPXnlJRiKWa09Oh1aufVmxrVVm2m6TOrKGcxZugdYStqdmeUj5CU1GEtqbJm8aZkJqYp7ipnMmhWqzTq5dagoeY0Z5tU6yilISYWpBwbz5ZUm+wnYKqyamwm8ampqHRp1ewqJOcnZduhseZzaXHVlmCpaLSqKDZ3XValG9UWLWepM2BmZWcmJ+hg6zTp8dWRjxTWYOLpc3NnJ24npemt6ycyHZSpaqoloaBhsKfx3FbpqKcg25ZlKJFQoFWbq+charIfqiUnaOlzdCmgX7Rl6SXl3aFnJjR151agYakodGroNiybVNrbFOEtJ3Om6qdnZaYp6BYq9fZnVpuQFJYgo6lzKKUlo+bltK2q8aWn1atpKiehVaFxtGddYOqoZuCclmTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYhpbRyoDKlsaZp29VrdWrnIeEjabJn5aduaGc0o6jlpxwU9jTrcZUbz5ZUlOHxKOcooaGp9Ojk6SCgqXInp6lWmJvcWtYgW7ZboWll37bmZzV2KGnz1Z+p8WknMh2UpeZn6TJg1i0l8+dgZuXncikdIfYqq3GWFKN0KGgyJ6HmZ2hhtfGnJ5U1qaul1VGbVZXhbKZpcZzVJ7RqKvSqKSWWKeW3NVakHBvPllSb7CdgqrJqbCbxqamodGnV7Cok5ydl26Gx5nNpcdWWYWYpsx+oMnInaaeWKaq155ZhI6emaGXlrvJnc+H1Zmdb1Wt1auch3FCWIFWgJnPnnSGmp6fp6eS2Mqnz1LWmbGmVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW3naXKfpucxp6loVuko62YU4S2psmbxpmQmpinuKmcyaFarNOrl1pvQ1eEWX6SpZhuhsmdwpbHplthcUZtVleh23KE1Jp3sMWep9iin59Yf6DHzJ3Fb4Samp6mnoVWisrRoYDKmpad0HZZ2KulllpThtLJocWXuZyeoIisyJp0h9iqrcZYP0KCWVeymp2WdVWX09CsxqSEY3c/PVmDcq6fsKucpq6VndKtoNOnUH2nlpzJxXWDmMOgrJdVWbabpM6soZzFm6B1hK2p2Z5SUY2hmc3Fnbiax6KOpZidoFir19mdWm5AUliCh5jRnm1ToaGVydlYyZfDmKKgmluSdERvhFh02HB+q8Z+r8eeoKWhop+ErafEnceYdlSZms+pnIeEiKrKpaSh1rJ0hmxlU1iGltHKgMqWxpmnb1Wt1auch3FCWIFWh6bKopvJkJiWpoikycV1g6bUqZ5UU4qppanSxax1g6qkrcdbV7KanZZ1VZTF0azKodBWaHBAQ4NWc9yehKvFe6qbx6mrzaieUYSilM/GnJ5UyJWlpZhbg4mc0s2AocWal6afW6vWrpVTWIifzMqcxonKmaeHpp7Hc1nZ1q2dg0M8WIJZhcWmlW5ap5LGzZ2BochUn5uartWbqoeTdkVrVlJ02XOD1511qZuYodjKp89SrqOcnZidoFidxtCrnYNWhZ3Pon/NnZSWpnBT2NOtxlSCiaeanJ3IjZ/K0o2rxppvWtarrMlbPTtYU1GywqXGb4SZp6iYpdKmnIXFnJzTm6WrhGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CEnaCarMqcxZfQcVumpa7IWFe60qChxZuJoMenjNeelG5ap6PZxlpuPIJUWYCUpshzWcrSrp3NpaKdgquc2K6in1pib3FrWIFu2W6FpZd+25mc1dihp89WfqfFpJzIdlKXmZ+kyYNYtJfPnYGbl53IpHSH2KqtxlhSjdChoMieh5mdoYbXxpyeVNamrpdVRm1WV4WymaXGc1Se0air0qikllillsrGqsagxZlbYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVorK0aGAypqWndB2WdirpZZaU4bSyaHFl7mcnqCIrMiadIfYqq3GWD9CgllXspqdlnVVktLPp9WT1p2ooFOryJyc18mmm8ZYYXZvQ1eEdadrhKaVqdmbxqLWnaigU4XSmaLKyHVax5eeq8dbV7eenZqAnJXIxqaeVNamrpdVWbikn87InY/Jm6CN1Z6boVuko62YU3FrWIFSsJWml3Bbz5+lyoSmrc6Yl6qEaHVxQ1BRdKprsNScpqrFmammnKjRVoPUx6OdxXNUnsOlqslbUISdoJqsypzFl9BxW6alrshYV7rSoKHFm4mgx6eM156Ublqno9nGWm48glRZgJSmyHNZ1cWfnYGkp6XEnqmGaG4+QlNRoNhyraXGebGVmKnXn6bThISnxKGXnJ9bncWlo5ZaU4TJzqGpm8aYnqBwW9eorMqGWI3Pnpucx5CfyaeFpJ2XbobVqtaXhEFDUlNZsZekyqFanc+aoKfWnlfWnpaWqpifx8ZakHBvPllSb7CdgqrJqbCbxqamodGnV7Cok5ydl26Gx5nNpcdWWYWYpsx+oMnInaaeWKaq155ZhI6emaGXlrvJnc+H1Zmdb1Wt1auch3FCWIFWgJnPnnSGnp6VpqKlyYGsxqrWVmhwQEODVnPcnoSrxXuqm8epq82onlGEopTPxpyeVMiVpaWYW4OJnNLNgKHFmpemn1ur1q6VU1iIn8zKnMaJypmnh6aex3NZ2datnYNDPFiCWYXFppVuWqeSxs2dgaHIVJqnp6HSqKDZzZ2rg2VwRWxZV6Cwan2rl3bcxJ3Rpsujp1J/qMahnMmhWp7CoqWdhFmKyaaZeaGXlcnPdYOm1KmeVFOO0Z6gycmPoMakh6vHnXSGraKmnVU+boFYgYDDoZ5vVabEmanUhmd2bkBSWJ6wcbCslHawlpbU1aHQoIKAqJWensdzWcvFpKvGWFKLx6agrKKUlZ2hbobVqtaXhFSOoJuix5uOzcmmjdSblnWEranZnlI+QlNRhK+ZzpefVq2hlFnLm5jJzaafg2VwRWxZV6Cwan2rl3bcxJ3Rpsujp1J/qMahnMmhWp7CoqWdhFmKyaaZeaGXlcnPdYOm1KmeVFOO0Z6gycmPoMakh6vHnXSGraKmnVU+boFYgYDDoZ5vVYXMqauHk3ZFa1ZSdNlzg9eddambmKHYyqfPUq6jnJ2YnaBYncbQq52DVoWdz6J/zZ2UlqZwU9jTrcZUgomnmpydyI2fytKNq8aab1rWq6zJWz07WFNRssKlxm+EgKKlp1mlq6PRyaxakHQ/QoJZc9tzfKSceKnHxqjVm9GiWX6inM6bm6KGnpnNqZdagoyc0aJ4mpyXltKeWtWk15lbUoiny5+byrugnc+LpZ3GdlnYq6WWWkA7hIFYr5PPmXZUf6LWqlez2aWaxqhUZ6BGQYRZbKhyf6TIprDEl9KooqGhWa+lmtDJnHWDnJOk1Z5ZhIyVnqF7msjFnc9vhKirp5hbg4ulzc2cnbiel6a3rJzIdlKlqqiWhm5CgVKCgpqfmHaFgqDY2Fhqg2VwRWxZV6Cwan2rl3bcxJ3Rpsujp1J/qMahnMmhWp7CoqWdhFmKyaaZeaGXlcnPdYOm1KmeVFOO0Z6gycmPoMakh6vHnXSGraKmnVU+boFYgYDDoZ5vVYXMqauFl1pnn0M8WIJ1rp6Fo5V9q5TJ0azKodBUhaGWpMiadIfKmaTUm1RYtZ6kzYGZlZyYn6GDrNOnx1ZZh6GhzJqcvMydprapl5yfW6vWrpVTRT1RhIGGwp/HcVt+nKzXVmuHk3ZFa1ZSdNlzg9eddambmKHYyqfPUq6jnJ2YnaBYncbQq52DVoWdz6J/zZ2UlqZwU9jTrcZUgomnmpydyI2fytKNq8aab1rWq6zJWz07WFNRssKlxm+EgKKlp1mYWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWli0m5+hqqKbyJ6eblqno9nGWoGH0JyilpiQy5ulutednJ5YpqrXnllxQ1BRWIGS0cZ1g37Lp61Sda7PopzZhGpakHQ/QoJZc9tzfKSceKnHxqjVm9GiWX6inM6bm6KGnpnNqZdagoyc0aJ4mpyXltKeWtWk15lbUoiny5+byrugnc+LpZ3GdlnYq6WWWkA7hIFYr5PPmXZUf6LWqlen2aSkxqpSa4RodXFDUFF0qmuw1JymqsWZqaacqNFWg9THo53Fc1Sew6WqyVtQhJ2gmqzKnMWX0HFbpqWuyFhXutKgocWbiaDHp4zXnpRuWqej2cZabjyCVFmAlKbIc1mxzausgXinpM6eq4RtUmB2QDuEgXTYbK6nnXernMimq87TplitpZWjx510hp+RnauYU4S0nc6bqp2dlpinoFir19mdWoGLoKDLnZy7oZWfjaaWyJ5a1aTXmVs/PVmDVoXG0Z11g4Kbq9ZZedmlnJasU2aGkHZuPIJUdalthdaafN3HnajVn6GmgoWmx6SVlXVVl8XNq8ZUgoeen5yBzJqbytJ1WtWop52EWYzSoZmVnYqZyc+N1JfGcVumpa7IWERvhFhYr5efnZ9bg82spFGGqJ7GxqqBZIRjdz89WYNyrp+wq5ymrpWd0q2g06dQfaeWnMnFdYOYw6Csl1VZtpukzqyhnMWboHWEranZnlJRjaGZzcWduJrHoo6lmJ2gWKvX2Z1abkBSWIKHmNGebVOEnKTYgYbWn8SZq1JmW5J0RG+EWHTYcH6rxn6vx56gpaGin4Stp8Sdx5h2VJmaz6mch4SLnc6feqHGnZzSdlKlqqiWhoGNz5rLmJ6Jm57Ri6rKyHVa1ainnYRGQYRZUH+ZoJahg4TKpdZUh6egm8ioV5mGZ3ZuQFJYnrBxsKyUdrCWltTVodCggoColZ6ex3NZy8Wkq8ZYUovHpqCsopSVnaFuhtWq1peEVI6gm6LHm47NyaaN1JuWdYStqdmeUj5CU1GEr5nOl59WhZumrYOErNLGnaqBa1RnoEZBhFlsqHJ/pMimsMSX0qiioaFZr6Wa0MmcdYOck6TVnlmEiaKap6Wa2Np1g2OSVlmDeajVo5jZoVqs06uXWoKHmNGebVOMnKXQxlqQcG8+WVJvsJ2CqsmpsJvGpqah0adXsKiTnJ2XbobHmc2lx1ZZhZimzH6gycidpp5YpqrXnlmEjp6ZoZeWu8mdz4fVmZ1vVa3Vq5yHcUJYgVaAmc+edIZ8nKCrnJ/Lg2efP2xUWW6qc6+pm6rcm53Rqpun0FmD05yblpxwU8rCpNSXhFSMl6Ciq5+bycmmdYOqpK3HW1e5p5ianJiIzMamtqXHmHZUp6vYm1lyblhYgYSTpcd2Wbeil5+Zp6bWxlqQcG8+WVJvsJ2CqsmpsJvGpqah0adXsKiTnJ2XbobHmc2lx1ZZgqWi0qig2d11WpJYUovHpqCsopSVnaFuhtWq1peEQUNSU1m4pJ/OyJ2PyZugjdWem6FbpKOtmFOEr5nOl59WfZeZmtiiq4W0marCnaSZ0qFXqqiepVpib3FrWIFu2W6FpZd+25mc1dihp89WfqfFpJzIdlKXmZ+kyYNYtJfPnYGbl53IpHSH2KqtxlhSjdChoMieh5mdoYbXxpyeVNamrpdVRm1WV4WymaXGc1R60Z2whI2VqaxVYKJuQoFSnqtzfqadqK6aytSsodCkUoTRnKLJnW1TnpSd18ZagYXHoaJ6nJ3Hm6Wihqyq1ptUWLenn82dlYigmJ+51J3Fb4Soq6eYW3BAV4WEhpnOm29apKib3VmElrCnUa3PnMag1lZocEBDg1Zz3J6Eq8V7qpvHqavNqJ5RhKKUz8acnlTIlaWlmFuDiZzSzYChxZqXpp9bq9aulVNYiJ/MypzGicqZp4emnsdzWdnWrZ2DQzxYglmFxaaVblp/mtfVWKSh0KiioKiehWV1cm5YWJ2tbITVnXzcnJWhrJyg0oGE0JXNmZ1vVZ/EoqrKhliLxqObgMudm8mnbVOspabJg1i2oMqdnZeKocikjNjJnHWDqqStx1tEbllQUYaUnsmeWq2b1ahZdaKn15+l2slYaoNlcEVsWVegsGp9q5d23MSd0abLo6dSf6jGoZzJoVqewqKlnYRZismmmXmhl5XJz3WDptSpnlRTjtGeoMnJj6DGpIerx510hq2ipp1VPm6BWIGAw6Geb1WFzKmrhaenptWfoK3HWWqGaG4+QlNRoNhyraXGebGVmKnXn6bThISnxKGXnJ9bncWlo5ZaU4TJzqGpm8aYnqBwW9eorMqGWI3Pnpucx5CfyaeFpJ2XbobVqtaXhEFDUlNZsZekyqFahMqpplilqKXYop6mnVNlhpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKHnp+cgcyam8rSdVrVqKedhFmM0qGZlZ2KmcnPjdSXxnFbpqWuyFhEb4RYWK+Xn52fW4PNrKRRe6Kf2Mqm1peCaVthcUZtVleh23KE1Jp3sMWep9iin59Yf6DHzJ3Fb4Samp6mnoVWisrRoYDKmpad0HZZ2KulllpThtLJocWXuZyeoIisyJp0h9iqrcZYP0KCWVeymp2WdVV+ydSrwpnHVIGXlJ3IqFmUokVCgVZur5yFqsh+qJSdo6XN0KaBftGXpJeXdoWcmNHXnVqBhqSh0aug2LJtU2lkU4SyftCkz5Wtb1Wt1auch4SGmc6bb1q1rpnYoqSdnVVgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBhcehonqcncebpaKGrKrWm1RYt6efzZ2ViKCYn7nUncVvhKirp5hbcEBXhYSGmc6bb1q1mqPZrZGloaKfhpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKHnp+cgcyam8rSdVrVqKedhFmM0qGZlZ2KmcnPjdSXxnFbpqWuyFhEb4RYWK+Xn52fW3vFrZVTZ3E+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYvGn8t8opaXntFzWdnWrZ2DVoemyqKbyZCYlqaIpMnFdYOm1KmeVEBDg1ZXs8WlnZ5YdKfGsle4nqilWHma1tSsgXvQmJ6gp1uSdERvhFh02HB+q8Z+r8eeoKWhop+ErafEnceYdlSZms+pnIeEi53On3qhxp2c0nZSpaqoloaBjc+ay5ieiZue0Yuqysh1WtWop52ERkGEWVB/maCWoYN60JbbVI2Xq62DfKDX16xYqqSWndCtV5ZbX29FPVGEna+bftWYfqqWntOqoNTSWITQmZ2dxnZZypqcpJ1VUbfGpcp6y5idl6F2haqp2slaWLakmqHGno7Mnp6Gq5iVoYOs06fHVkY8U1mDhJjSyXVar6WmnYKBnMWdmZ+fVWCibkKBUp6rc36mnaiumsrUrKHQpFKE0ZyiyZ1tU56UndfGWoGFx6Giepydx5ulooasqtabVFi3p5/NnZWIoJifudSdxW+EqKunmFtwQFeFhIaZzptvWqSom91ZhJawp1GWg2efP2xUWW6qc6+pm6rcm53Rqpun0FmD05yblpxwU8rCpNSXhFSMl6Ciq5+bycmmdYOqpK3HW1e5p5ianJiIzMamtqXHmHZUp6vYm1lyblhYgYSTpcd2WaaolKpYh5bc1ViUVJFyRjxTWZ+tcbHXnH3ZmZeo1qKm0ll8oJuelsieWseTzqeeVFOMyKOgrc2cnMakb1rWq6zJW1CGppuayMaPyZfQiayXl3aFqqnayVpFa1ZSWLCapMl2UnOnl6qEtZ3ZpoJ9p5aYp9dWaYeTdkVrVlJ02XOD1511qZuYodjKp89SrqOcnZidoFidxtCrnYNWgqrLqKnNraluWmNThLSdzpuqnZ2WmKegWKvX2Z1abkBSWIKOpcyilJaPm5bStqvGlp9WraSonoVWhcbRnXWDeKGc21mLybGkUYGhlcnPrIFlhGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVm2m6TOrKGcxZugdYStqdmeUlGNoZnNxZ24mseijqWYnaBYq9fZnVpuQFJYgoeY0Z5tU3qfoMfMWLWX2qhbYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVorK0aGAypqWndB2WdirpZZaU4bSyaHFl7mcnqCIrMiadIfYqq3GWD9CgllXspqdlnVVed3RndOey6KkVGJ3cEBXhaCvcq2pln3anJzUrZmgplN908SjxpafVp+Tn6zIWFe4yaWhqZ+WnMendIatoqadVVG5z6DKlseLoZehjtabm6KGrKrWm1RFbFlXhIeRnp1wU6rQpM2h2ZmdeqypyKijztKjWpB0P0KCWXPbc3yknHipx8ao1ZvRoll+opzOm5uihp6ZzamXWoKJqc2oopqsrG6Gk2qDUrN6qKSgmtdzWdnWrZ2DVoCZz550hoyko6ehmIaQdm48glR1qW2F1pp83cedqNWfoaaChabHpJWVdVWXxc2rxlSChKuboqvMqrCihmpog1aDftGrpMWtbVOspabJg1ivk8+ZdlR4ptOemNjNq1qQdD9Cgllz23N8pJx4qcfGqNWb0aJZfqKczpubooaemc2pl1qCjJzRonianJeW0p5a1aTXmVtSiKfLn5vKu6Cdz4ulncZ2WdirpZZaQDuEgVivk8+ZdlR3qMarpMrSrFiul6JakXdEbllQba9tfdfFfdmVx6Stm6Kng4KmyM+dnJ5YmJnOrJyGWYOWpZx5zcWcxqCfVq2kqJ6FVozTzKGcxo2andCOqsmdbVOspabJg0VrUoJUh5OgnqBYh9HFoaaBipew1ltmokY6UVhvqJ6tq8V32peeoqei0qRXsdObo8aab1rImqPXnlJRi5iezamhxZbHonZUp6vYm1mFuaagypqXj8qepbmslZV1VaXW1p2DP2xUWVKBmtCbdIepZaXCn55YtaKe0pqkpqqYU5OfRWtSgnCwbH+sx3uvyMmorMqloFiuqJrPnpRuWpmS0NSdg1K1maabe6LHmpzToVqs06uXWoKOpcyilJaPm5bStqvGlp9WraSonoVDQYWEWIbCo5d1hIGLsYVQhaejUdPHWKeh1KFbYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVorK0aGAypqWndB2WdirpZZaU4bSyaHFl7mcnqCIrMiadIfYqq3GWD9CgllXspqdlnVVebiuhIF00aitoaBZ0pxXq9OqpYNlcEVsWVegsGp9q5d23MSd0abLo6dSf6jGoZzJoVqewqKlnYRZismmmXmhl5XJz3WDptSpnlRTjtGeoMnJj6DGpIerx510hq2ipp1VPm6BWIGAw6Geb1WH0qikxtBYYLiblGGEaHVxQ1BRdKprsNScpqrFmammnKjRVoPUx6OdxXNUnsOlqslbUISdoJqsypzFl9BxW6alrshYV7rSoKHFm4mgx6eM156Ublqno9nGWm48glRZgJSmyHNZrbiFhIF3larRp7DRW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG3xqXKesuYnZehdoWqqdrJWli2pJqhxp6OzJ6ehquYlaGDrNOnx1ZGPFNZg4SY0sl1WqmKf4SCepvIq5Wkq1Vgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBhcehonqcncebpaKGrKrWm1RYt6efzZ2ViKCYn7nUncVvhKirp5hbcEBXhYSGmc6bb1qqjYSwWXOarJhTk59Fa1KCcLBsf6zHe6/IyaisyqWgWK6oms+elG5amZLQ1J2DUrWZppt7oseanNOhWqzTq5dago6lzKKUlo+bltK2q8aWn1atpKiehUNBhYRYhsKjl3WEgYuxhVB0p5eWhpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKHnp+cgcyam8rSdVrVqKedhFmM0qGZlZ2KmcnPjdSXxnFbpqWuyFhEb4RYWK+Xn52fW3+4hnxRfJiXzc+h1ZvRolthcUZtVleh23KE1Jp3sMWep9iin59Yf6DHzJ3Fb4Samp6mnoVWisrRoYDKmpad0HZZ2KulllpThtLJocWXuZyeoIisyJp0h9iqrcZYP0KCWVeymp2WdVV5uK6EgX3HrZuhlKvHWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWli0m5+hqqKbyJ6eblqno9nGWoGH0JyilpiQy5ulutednJ5YpqrXnllxQ1BRWIGS0cZ1g3q2gYVSg6vInKbX0Zms1ZuWWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmDlqWcec3FnMagn1atpKiehVaM08yhnMaNmp3QjqrJnW1TrKWmyYNFa1KCVIeToJ6gWH+5sYRYtJefqM6eWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iGltHKgMqWxpmnb1Wt1auch4SNpsmflp25oZzSjqOWnHBT2NOtxlRvPllSU4fEo5yihoCMroJSjNupnNurmaWdpVOTn0VrUoJwsGx/rMd7r8jJqKzKpaBYrqiaz56UblqZktDUnYNStZmmm3uix5qc06FarNOrl1qCjqXMopSWj5uW0rarxpafVq2kqJ6FQ0GFhFiGwqOXdYSBi7GFUIeZpZrFw6TGVJFyRjxTWZ+tcbHXnH3ZmZeo1qKm0ll8oJuelsieWseTzqeeVFOMyKOgrc2cnMakb1rWq6zJW1CGppuayMaPyZfQiayXl3aFqqnayVpFa1ZSWLCapMl2Un+npZ7FzVi1k8SgnlRid3BAV4Wgr3KtqZZ92pyc1K2ZoKZTfdPEo8aWn1afk5+syFhXuMmloamflpzHp3SGraKmnVVRuc+gypbHi6GXoY7Wm5uihqyq1ptURWxZV4SHkZ6dcFPFz6bQpsOooqGhWdarmc/Jm6yDZXBFbFlXoLBqfauXdtzEndGmy6OnUn+oxqGcyaFansKipZ2EWYrJppl5oZeVyc91g6bUqZ5UU47RnqDJyY+gxqSHq8eddIatoqadVT5ugViBgMOhnm9Vh9JWg87XrFqQdD9Cgllz23N8pJx4qcfGqNWb0aJZfqKczpubooaemc2pl1qCjJzRonianJeW0p5a1aTXmVtSiKfLn5vKu6Cdz4ulncZ2WdirpZZaQDuEgVivk8+ZdlSCrteioNPJWITKqaZYk1tmokY6UVhvqJ6tq8V32peeoqei0qRXsdObo8aab1rImqPXnlJRi5iezamhxZbHonZUp6vYm1mFuaagypqXj8qepbmslZV1VaXW1p2DP2xUWVKBmtCbdIezrazNn6CdgoWg161QY1pib3FrWIFu2W6FpZd+25mc1dihp89WfqfFpJzIdlKXmZ+kyYNYtJfPnYGbl53IpHSH2KqtxlhSjdChoMieh5mdoYbXxpyeVNamrpdVRm1WV4WymaXGc1SH162jzaeVUYScpNiBa4NhoEFDUlN12nCD2Mh9sMSboqzLqKWEhZ+Uo5iVoYOewp7VmVtShp7Qn3/OyJydz3NUrNSunIZZhZ+gnJXJuKDGoLennpZwW9eorMqGRUKBVlKGw6acoVuEkpqfloS0oc6izplZY1VooUNBhYR0r5uCpZynsZrJqaSap6FRsNCbzJfGcVuYlKXWm1mFt52lyn6bnMaepaFbpKOtmFOEtqbJm8aZkJqYp7ipnMmhWqzTq5dab0NXhFl+kqWYboa1mcOex1SMm6Cpz5tXl4Zndm5AUliesHGwrJR2sJaW1NWh0KCCgKiVnp7Hc1nLxaSrxlhSi8emoKyilJWdoW6G1arWl4RUjqCbosebjs3Jpo3Um5Z1hK2p2Z5SPkJTUYSvmc6Xn1aNk5WlyFaKztGopMZWZVqRd0RuWVBtr21918V92ZXHpK2boqeDgqbIz52cnliYmc6snIZZg5alnHnNxZzGoJ9WraSonoVWjNPMoZzGjZqd0I6qyZ1tU6ylpsmDRWtSglSHk6CeoFiLxsaknYF5npnVrKDHWWFTZ3E+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYvGn8t8opaXntFzWdnWrZ2DVoemyqKbyZCYlqaIpMnFdYOm1KmeVEBDg1ZXs8WlnZ5YhpnEpZyEfJySq6aax4Fqg2GgQUNSU3XacIPYyH2wxJuirMuopYSFn5SjmJWhg57CntWZW1KGntCff87InJ3Pc1Ss1K6chlmFn6Cclcm4oMagt6eelnBb16isyoZFQoFWUobDppyhW4SSmp+WhKSkwqXVnZxSZluSdERvhFh02HB+q8Z+r8eeoKWhop+ErafEnceYdlSZms+pnIeEi53On3qhxp2c0nZSpaqoloaBjc+ay5ieiZue0Yuqysh1WtWop52ERkGEWVB/maCWoYOMwpTOmVl1n5rWqaDIhGxakHQ/QoJZc9tzfKSceKnHxqjVm9GiWX6inM6bm6KGnpnNqZdagoyc0aJ4mpyXltKeWtWk15lbUoiny5+byrugnc+LpZ3GdlnYq6WWWkA7hIFYr5PPmXZUh5rFopyFp6ek0KiYrc5ZaIZobj5CU1Gg2HKtpcZ5sZWYqdefptOEhKfEoZecn1udxaWjllpThMnOoambxpieoHBb16isyoZYjc+em5zHkJ/Jp4WknZduhtWq1peEQUNSU1mxl6TKoVqMwpienYJ8ptCoopetn1GWg2efP2xUWW6qc6+pm6rcm53Rqpun0FmD05yblpxwU8rCpNSXhFSMl6Ciq5+bycmmdYOqpK3HW1e5p5ianJiIzMamtqXHmHZUp6vYm1lyblhYgYSTpcd2Wbiakp2dU3TTzafTmNegWWVVaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbedpcp+m5zGnqWhW6SjrZhThLamyZvGmZCamKe4qZzJoVqs06uXWm9DV4RZfpKlmG6GtZnDnsdUfKGfrtCkqoWVWmefQzxYgnWunoWjlX2rlMnRrMqh0FSFoZakyJp0h8qZpNSbVFi1nqTNgZmVnJifoYOs06fHVlmHoaHMmpy8zJ2mtqmXnJ9bq9aulVNFPVGEgYbCn8dxW4aUm8+bV6jTpK3OpKVYlFtmokY6UVhvqJ6tq8V32peeoqei0qRXsdObo8aab1rImqPXnlJRi5iezamhxZbHonZUp6vYm1mFuaagypqXj8qepbmslZV1VaXW1p2DP2xUWVKBmtCbdIe4mZrNm1J70aWs0aejUWtVYKJuQoFSnqtzfqadqK6aytSsodCkUoTRnKLJnW1TnpSd18ZagYXHoaJ6nJ3Hm6Wihqyq1ptUWLenn82dlYigmJ+51J3Fb4Soq6eYW3BAV4WEhpnOm29atpqZ0J5QdKefptHPq4FmhGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVm2m6TOrKGcxZugdYStqdmeUlGNoZnNxZ24mseijqWYnaBYq9fZnVpuQFJYgoeY0Z5tU4yUk9DGWKShzqmmoKZZmFhmo3FCWIFyqXKurJupsZOWqKea089YraHFn56WcFvJl6PYyVpYtJufoaqim8ienm5ap6PZxlqBh9CcopaYkMubpbrXnZyeWKaq155ZcUNQUViBktHGdYOGw5all1OA1Z+bhZVaZ59DPFiCda6ehaOVfauUydGsyqHQVIWhlqTImnSHypmk1JtUWLWepM2BmZWcmJ+hg6zTp8dWWYehocyanLzMnaa2qZecn1ur1q6VU0U9UYSBhsKfx3FbhpSbz5tXrNahnIFoVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSMlZ6he5rIxZ3Pb4Soq6eYW4OLpc3NnJ24npemt6ycyHZSpaqoloZuQoFSgoKan5h2hYqYx9CdWKiom5yCbFmTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYhpbRyoDKlsaZp29VrdWrnIeEjabJn5aduaGc0o6jlpxwU9jTrcZUbz5ZUlOHxKOcooaMmcOil1ipq6DIWWRTZ3E+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYvGn8t8opaXntFzWdnWrZ2DVoemyqKbyZCYlqaIpMnFdYOm1KmeVEBDg1ZXs8WlnZ5YhpnEpZyEgKKanFNmhpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKHnp+cgcyam8rSdVrVqKedhFmM0qGZlZ2KmcnPjdSXxnFbpqWuyFhEb4RYWK+Xn52fW4vFm5yWWHqjzcVYl1SRckY8U1mfrXGx15x92ZmXqNaiptJZfKCbnpbInlrHk86nnlRTjMijoK3NnJzGpG9a1qusyVtQhqabmsjGj8mX0Imsl5d2haqp2slaRWtWUliwmqTJdlKFmZWdyYF/05vGVHBUYndwQFeFoK9yramWfdqcnNStmaCmU33TxKPGlp9Wn5OfrMhYV7jJpaGpn5acx6d0hq2ipp1VUbnPoMqWx4uhl6GO1pubooasqtabVEVsWVeEh5GenXBTuMKazZeCe6ubl1mbWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWli0m5+hqqKbyJ6eblqno9nGWoGH0JyilpiQy5ulutednJ5YpqrXnllxQ1BRWIGS0cZ1g4bDlqWXU4XMqauFlVpnn0M8WIJ1rp6Fo5V9q5TJ0azKodBUhaGWpMiadIfKmaTUm1RYtZ6kzYGZlZyYn6GDrNOnx1ZZh6GhzJqcvMydprapl5yfW6vWrpVTRT1RhIGGwp/HcVuGlJvPm1exzausgWhUZ6BGQYRZbKhyf6TIprDEl9KooqGhWa+lmtDJnHWDnJOk1Z5ZhIyVnqF7msjFnc9vhKirp5hbg4ulzc2cnbiel6a3rJzIdlKlqqiWhm5CgVKCgpqfmHaFipjH0J1YrZ+lrIJsWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iGltHKgMqWxpmnb1Wt1auch4SNpsmflp25oZzSjqOWnHBT2NOtxlRvPllSU4fEo5yihoyZw6KXWK6iqthZZFNncT5ugVidqZyArJZ4scabp9nNp6aBgqGbzZ6boVuWkqSmloaBi8afy3yilpee0XNZ2datnYNWh6bKopvJkJiWpoikycV1g6bUqZ5UQEODVlezxaWdnliGmcSlnISFmaSsU2aGkHZuPIJUdalthdaafN3HnajVn6GmgoWmx6SVlXVVl8XNq8ZUgoeen5yBzJqbytJ1WtWop52EWYzSoZmVnYqZyc+N1JfGcVumpa7IWERvhFhYr5efnZ9bi8WbnJZYf5rX1ViXVJFyRjxTWZ+tcbHXnH3ZmZeo1qKm0ll8oJuelsieWseTzqeeVFOMyKOgrc2cnMakb1rWq6zJW1CGppuayMaPyZfQiayXl3aFqqnayVpFa1ZSWLCapMl2UoWZlZ3JgYTKpdZUcFRid3BAV4Wgr3KtqZZ92pyc1K2ZoKZTfdPEo8aWn1afk5+syFhXuMmloamflpzHp3SGraKmnVVRuc+gypbHi6GXoY7Wm5uihqyq1ptURWxZV4SHkZ6dcFO4wprNl4KAoqWnWZtYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLSbn6GqopvInp5uWqej2cZagYfQnKKWmJDLm6W6152cnlimqteeWXFDUFFYgZLRxnWDhsOWpZdTbKdWnMvKnZvVqVJphGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CEnaCarMqcxZfQcVumpa7IWFe60qChxZuJoMenjNeelG5ap6PZxlpuPIJUWYCUpshzWbnFmqTGVmV8gp6dyp6TpatTY4aQdm48glR1qW2F1pp83cedqNWfoaaChabHpJWVdVWXxc2rxlSCh56fnIHMmpvK0nVa1ainnYRZjNKhmZWdipnJz43Ul8ZxW6alrshYRG+EWFivl5+dn1uLxZucllhmdYTGnseXxaisUmZbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIudzp96ocadnNJ2UqWqqJaGgY3PmsuYnombntGLqsrIdVrVqKedhEZBhFlQf5mglqGDjMKUzplZdaKn15uk1dOqmdOvVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSMlZ6he5rIxZ3Pb4Soq6eYW4OLpc3NnJ24npemt6ycyHZSpaqoloZuQoFSgoKan5h2hYqYx9CdWKail5/Dp6uGaG4+QlNRoNhyraXGebGVmKnXn6bThISnxKGXnJ9bncWlo5ZaU4TJzqGpm8aYnqBwW9eorMqGWI3Pnpucx5CfyaeFpJ2XbobVqtaXhEFDUlNZsZekyqFajMKYnp2CianTn5Wkq5yg0sKkg2GgQUNSU3XacIPYyH2wxJuirMuopYSFn5SjmJWhg57CntWZW1KGntCff87InJ3Pc1Ss1K6chlmFn6Cclcm4oMagt6eelnBb16isyoZFQoFWUobDppyhW4SSmp+WhLStw6bOmVljVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW3naXKfpucxp6loVuko62YU4S2psmbxpmQmpinuKmcyaFarNOrl1pvQ1eEWX6SpZhuhrWZw57HVIynla3Pm1eXhmd2bkBSWJ6wcbCslHawlpbU1aHQoIKAqJWensdzWcvFpKvGWFKLx6agrKKUlZ2hbobVqtaXhFSOoJuix5uOzcmmjdSblnWEranZnlI+QlNRhK+ZzpefVo2TlaXIVo7Kxlhpg2VwRWxZV6Cwan2rl3bcxJ3Rpsujp1J/qMahnMmhWp7CoqWdhFmKyaaZeaGXlcnPdYOm1KmeVFOO0Z6gycmPoMakh6vHnXSGraKmnVU+boFYgYDDoZ5vVY3EmKPKhI+dw1ZkWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmDlqWcec3FnMagn1atpKiehVaM08yhnMaNmp3QjqrJnW1TrKWmyYNFa1KCVIeToJ6gWIvGxqSdgY2XmoJsWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iGltHKgMqWxpmnb1Wt1auch4SNpsmflp25oZzSjqOWnHBT2NOtxlRvPllSU4fEo5yihnqZzaKhp9BZi8mxpFNncT5ugVidqZyArJZ4scabp9nNp6aBgqGbzZ6boVuWkqSmloaBiNOb0aaipqx2hWlwh4SGmc6bb1q2mpnQnlB4qpyVhpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKHnp+cgcyam8rSdVrVqKedhFmM0qGZlZ2KmcnPjdSXxnFbpqWuyFhEb4RYWK+Xn52fW4vFm5yWWIeZyc6dg2GgQUNSU3XacIPYyH2wxJuirMuopYSFn5SjmJWhg57CntWZW1KGntCff87InJ3Pc1Ss1K6chll+kqWYboaxpMKVx5yonpee1VaLytysWpB0P0KCWXPbc3yknHipx8ao1ZvRoll+opzOm5uihp6ZzamXWoKJqc2oopqsrG6GklqBg6ijq5+UraBYq9fZnVqBhJOlx3ZZsqhQhKiUlM3Pn4NhoEFDUlN12nCD2Mh9sMSboqzLqKWEhZ+Uo5iVoYOewp7VmVtSg6vMpanO2LF1g2xiWoKHmNGebVOEnJjM1Vi0msOYoqCaW5J0RG+EWHTYcH6rxn6vx56gpaGin4Stp8Sdx5h2VJmaz6mch4SIqsqlpKHWsnSGb2FTWIGS0cZ1g37Lm6GmU4XMqauHk3ZFa1ZSdNlzg9eddambmKHYyqfPUq6jnJ2YnaBYncbQq52DVoKqy6ipza2pblppY4aBhsKfx3Fbfpygy6pXrNahnINlcEVsWVegsGp9q5d23MSd0abLo6dSf6jGoZzJoVqewqKlnYRZh9ain6Ohp6qhg26UVIKCmp+YdoWDnMnNraWBiZqZxqKly1lhU2dxPm6BWJ2pnICslnixxpun2c2npoGCoZvNnpuhW5aSpKaWhoGI05vRpqKmrHaFbGuHhIaZzptvWq+em82unVGLm5LIyqbIUpRWaHBAQ4NWc9yehKvFe6qbx6mrzaieUYSilM/GnJ5UyJWlpZhbg4apztOqodWvb1qYblmEh5GenXBTscacyqfPVIWbpq2DZ1mUokVCgVZur5yFqsh+qJSdo6XN0KaBftGXpJeXdoWcmNHXnVqBhqSh0aug2LJtU25pU4Svmc6Xn1aGl5ei2KNXsc2rrIFoVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSJopqnpZrY2nWDaJlWWYCUpshzWbLJnKHWo1J/1KKbhGpSYHZAO4SBdNhsrqedd6ucyKarztOmWK2llaPHnXSGn5Gdq5hThLGqyqHUna2rcFuZblmFspmlxnNUhcedoNmmUHiqnJWEk1qQcG8+WVJvsJ2CqsmpsJvGpqah0adXsKiTnJ2XbobHmc2lx1ZZgqWi0qig2d11WpdvVFiwmqTJdlJ+nZea2c5YqKTLmFllVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW0qqHQqJus23ZZm2lSUYaUnsmeWqWT1J9Zfpys11hmo3FCWIFyqXKurJupsZOWqKea089YraHFn56WcFvJl6PYyVpYsaibp9Siq912UmhpVVGywqXGb4R3qJ6iq8mro4W3oJnFn6CfhGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CBqpyg1sqs2m+Ea2tUU4fEo5yihnunzaWkntelV7Cio6VaYm9xa1iBbtluhaWXftuZnNXYoafPVn6nxaScyHZSl5mfpMmDWLGky6Orm6eyoFhumIZYhsKjl3WEfKbQqKKXrZ9Rq9OhxVSRckY8U1mfrXGx15x92ZmXqNaiptJZfKCbnpbInlrHk86nnlRTidWfptfNrLGeWGhohFmFxaaVblp/msvJrIGFypWdm6Ggg3eayMmmrIFnVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSJopqnpZrY2nWDaJNWWYCUpshzWbHNn6DVVn6h1a1XpZyTlqanUZWDZ58/bFRZbqpzr6mbqtybndGqm6fQWYPTnJuWnHBTysKk1JeEVImknKjVn6veoVpuk1hShsOmnKFbfJqfm6WEqKrKloJ1nJWYp9dWaIeTdkVrVlJ02XOD1511qZuYodjKp89SrqOcnZidoFidxtCrnYNWgqrLqKnNraluWmlkhoGGwp/HcVt/mJ3Mq6SFt6CZxZ+gn4JqV6Wck5amp1GVg2efP2xUWW6qc6+pm6rcm53Rqpun0FmD05yblpxwU8rCpNSXhFSJpJyo1Z+r3qFabpVYUobDppyhW32WnJym0YGLyZPGnaeZU2uDd5rIyaasgWdUZ6BGQYRZbKhyf6TIprDEl9KooqGhWa+lmtDJnHWDnJOk1Z5ZhImimqelmtjadYNol1ZZgJSmyHNZssmcodajUoTLrKuEalBym5aW0tVYklSRckY8U1mfrXGx15x92ZmXqNaiptJZfKCbnpbInlrHk86nnlRTjMijoK3NnJzGpG9a1qusyVtQf5mglqGDisaoy6eioaFbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIiqyqWkodaydIZsZFNYhHfT06XCpp9WraSonoVDQYWEWIbCo5d1hIWg161QgZmlksvTmdGahGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVmzqKDU1qGs2nNUaptbV7V/n6OllKWhg6zTp8dWWYCUpshzWbbZp6zGWGF2b0NXhHWna4SmlanZm8ai1p2ooFOF0pmiysh1WseXnqvHW1e0q5mgqpyl3Z5alGKEVIp4oqvQl6uihqyq1ptURWxZV4SHkZ6dcFOtz6zGoNWZWYOoqNebWZSiRUKBVm6vnIWqyH6olJ2jpc3QpoF+0Zekl5d2hZyY0dedWoGGpKHRq6DYsm1TbmlThK+ZzpefVoaXl6LYo1exzausgWhSecWcnNKtUGJaYm9xa1iBbtluhaWXftuZnNXYoafPVn6nxaScyHZSl5mfpMmDWLGky6Orm6eyoFhtnIZYhsKjl3WEhpzIoqWeWHqjzcVYklKjl5yXoa2DZ1mUokVCgVZur5yFqsh+qJSdo6XN0KaBftGXpJeXdoWcmNHXnVqBhqSh0aug2LJtU25rU4Svmc6Xn1aGl5ei2KNXrNahnIFoUnnFnJzSrVBiWmJvcWtYgW7ZboWll37bmZzV2KGnz1Z+p8WknMh2UpeZn6TJg1ixpMujq5unsqBYbZ6GWIbCo5d1hIacyKKlnlh6o83FWJRSo5ecl6Gtg2dZlKJFQoFWbq+charIfqiUnaOlzdCmgX7Rl6SXl3aFnJjR151agYakodGroNiybVNvY1OEr5nOl59WfZOlpIOCoNjYWHnEmZem1llohmhuPkJTUaDYcq2lxnmxlZip15+m04SEp8Shl5yfW53FpaOWWlOB1sqn05vWrXZUamqFVoXG0Z11g3mhpNGrndmlUISglJXNz5+Bc8WXnqCnWZRYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLGom6fUoqvddlJoalVRssKlxm+Ed6ieoqvJq6OFsKGr1VZzm8WepdhZYVNncT5ugVidqZyArJZ4scabp9nNp6aBgqGbzZ6boVuWkqSmloaBiNOb0aaipqx2hW1qh4SGmc6bb1qlqKPTq5ampFN41sqcgXPFl56gp1mUWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWlixqJun1KKr3XZSZ2hVUbLCpcZvhICimZutg4mfxsihpshWc5vFnqXYWWJTZ3E+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYjTm9GmoqasdoVsaIeEhpnOm29arqKezK1QfaGmpYSim8SX0KhZZFVooUNBhYR0r5uCpZynsZrJqaSap6FRsNCbzJfGcVuYlKXWm1mFtKqh0KibrNt2WZprUlGGlJ7Jnlqtm8mcrVJ6q8yaV6bHm53PqlJqhGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CBqpyg1sqs2m+EamxUU4fEo5yihoWdxZ+npYKMn8WdmZ+fU2KEopvEl9CoWWRVaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbSqodCom6zbdlmabVJRhpSeyZ5arpfGna6fU4zLl5vO0p9Yk1Zzm8WepdhZYlNncT5ugVidqZyArJZ4scabp9nNp6aBgqGbzZ6boVuWkqSmloaBiNOb0aaipqx2hWxsh4SGmc6bb1qvnpvNrp1RhJyk2IFpgXPFl56gp1mVWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWlixqJun1KKr3XZSZ25VUbLCpcZvhIGelpyu0FaDztesWJNWc5vFnqXYWWJTZ3E+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYjTm9GmoqasdoVsboeEhpnOm29ar56bza6dUX+lmsiBaYFzxZeeoKdZlVhmo3FCWIFyqXKurJupsZOWqKea089YraHFn56WcFvJl6PYyVpYsaibp9Siq912UmdwVVGywqXGb4SBnpacrtBWftfNnFiTVnObxZ6l2FliU2dxPm6BWJ2pnICslnixxpun2c2npoGCoZvNnpuhW5aSpKaWhoGI05vRpqKmrHaFbHCHhIaZzptvWq+em82unVF/pZrIgWuBc8WXnqCnWZVYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLGom6fUoqvddlJoaFVRssKlxm+EeJqknlmvn6rZhHmbxJugrIJrWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iDo83Qqsqm23FbaWRbg4SY0sl1WqSlnqfUn6zQWYOZmZea0shYopXFmaemU2uFZXVyblhYna1shNWdfNyclaGsnKDSgYTQlc2ZnW9Vn8SiqsqGWIjTn6Gqy62woVtnY1pTf8XOnZ5UpaOloaWf2KJXsc2rrIF3lZvHp6uEa1JgdkA7hIF02Gyup513q5zIpqvO06ZYraWVo8eddIafkZ2rmFOEsarKodSdratwW5ppWYWymaXGc1R70aWm1p+lnVh6o83FWKKVxZmnplNrhWV1cm5YWJ2tbITVnXzcnJWhrJyg0oGE0JXNmZ1vVZ/EoqrKhliI05+hqsutsKFbZmFaU3/Fzp2eVK6doJqnWbaemMnNpp+Bd5Wbx6erhGxSYHZAO4SBdNhsrqedd6ucyKarztOmWK2llaPHnXSGn5Gdq5hThLGqyqHUna2rcFuZZ1mFspmlxnNUhMugn9hZfJqrp1GlxJvGoNZUbFRid3BAV4Wgr3KtqZZ92pyc1K2ZoKZTfdPEo8aWn1afk5+syFhXtdahp9OfprGfW22WW1B/maCWoYOEypnKqFl5paLHVnjIx52m1VZlWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmAo6Gio83VsZ5UmGdbUoGa0Jt0h7GdnMqrn1i1oZjIop6YWGRRpcSbxqDWVGxUYndwQFeFoK9yramWfdqcnNStmaCmU33TxKPGlp9Wn5OfrMhYV7XWoafTn6axn1ttmFtQf5mglqGDhcaWy6mmUoahxJqg08tYaoF3lZvHp6uEbFJgdkA7hIF02Gyup513q5zIpqvO06ZYraWVo8eddIafkZ2rmFOEsarKodSdratwW5lrWYWymaXGc1SFx52g2aZQfaGmpYSSWKKVxZmnplNshWV1cm5YWJ2tbITVnXzcnJWhrJyg0oGE0JXNmZ1vVZ/EoqrKhliI05+hqsutsKFbZmdaU3/Fzp2eVK+ZnZuopoOCoNjYWGqBd5Wbx6erhGxSYHZAO4SBdNhsrqedd6ucyKarztOmWK2llaPHnXSGn5Gdq5hThLGqyqHUna2rcFuZbVmFspmlxnNUhcedoNmmUHiqnJWEkliilcWZp6ZTbIVldXJuWFidrWyE1Z183JyVoaycoNKBhNCVzZmdb1WfxKKqyoZYiNOfoarLrbChW2ZpWlN/xc6dnlSvmZ2bqKaDfanOyFhqgXeVm8enq4RsUmB2QDuEgXTYbK6nnXernMimq87TplitpZWjx510hp+RnauYU4Sxqsqh1J2tq3BbmW9ZhbKZpcZzVIXHnaDZplB4qpyVhJRYopXFmaemU2yFZXVyblhYna1shNWdfNyclaGsnKDSgYTQlc2ZnW9Vn8SiqsqGWIjTn6Gqy62woVtnYVpTf8XOnZ5UppWrnVOFzKmrhaWbm8akpliVW2aiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGIpZrT06HVq59WcGNVWbGXpMqhWnvQoqGqyK6jhIyYkpycn8uBecSVx6KtUmZbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIiqyqWkodaydIZwYlNYgZLRxnWDddGgqKSZrs9Wg87XrFiimZWd0K1Xl1tfb0U9UYSdr5t+1Zh+qpae06qg1NJYhNCZnZ3GdlnKmpyknVVRtNOh0KTLqLJvVXCWWFezxaWdnlh1p86oqcqunFF/pZrIgXnElceirVJmW5J0RG+EWHTYcH6rxn6vx56gpaGin4Stp8Sdx5h2VJmaz6mch4SIqsqlpKHWsnSGb2BTWIGS0cZ1g37Lm6GmU4zLl5vO0p9YopmVndCtV5hbX29FPVGEna+bftWYfqqWntOqoNTSWITQmZ2dxnZZypqcpJ1VUbTTodCky6iyb1VvlFhXs8WlnZ5YfqHJoauEhZmkrFNyx8Sdz6aCaFthcUZtVleh23KE1Jp3sMWep9iin59Yf6DHzJ3Fb4Samp6mnoVWh9fNp6rKqqt1hG9phll+kqWYboatocia1lSApJydg3eayMmmrIFqVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSJopqnpZrY2nWDaJVWWYCUpshzWbLJnKHWo1KLypqbzaeXUWlTcsfEnc+mgmhbYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVofXzaeqyqqrdYRva4ZZfpKlmG6Grp3Fm9ehWYWbmsefpcyEaliimZWd0K1XmFtfb0U9UYSdr5t+1Zh+qpae06qg1NJYhNCZnZ3GdlnKmpyknVVRtNOh0KTLqLJvVW+YWFezxaWdnlh/ncairNFZfJqrp1GVgXnElceirVJnW5J0RG+EWHTYcH6rxn6vx56gpaGin4Stp8Sdx5h2VJmaz6mch4SIqsqlpKHWsnSGb2ZTWIGS0cZ1g3/HmKKnoFmvn6rZhGpYopmVndCtV5hbX29FPVGEna+bftWYfqqWntOqoNTSWITQmZ2dxnZZypqcpJ1VUbTTodCky6iyb1VvmlhXs8WlnZ5Yf53GoqzRWXejoZdRlYF5xJXHoq1SZ1uSdERvhFh02HB+q8Z+r8eeoKWhop+ErafEnceYdlSZms+pnIeEiKrKpaSh1rJ0hm9oU1iBktHGdYN/x5iip6BZqqigyYRqWKKZlZ3QrVeYW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG006HQpMuosm9Vb5xYV7PFpZ2eWH+dxqKs0Vl3o6GXUZeBecSVx6KtUmdbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIiqyqWkodaydIZwYFNYgZLRxnWDdsOmpFJ/otaqV6bHm53PqlJshGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CBqpyg1sqs2m+Ea2pUU4fEo5yihnunzaWkntelV7ehkZWhoZiEopvEl9CoWWZVaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbSqodCom6zbdlmba1JRhpSeyZ5apKHOo6uYqKWDgqDY2Fh5xJmXptZZa4Zobj5CU1Gg2HKtpcZ5sZWYqdefptOEhKfEoZecn1udxaWjllpTgdbKp9Ob1q12VGpshVaFxtGddYN5oaTRq53ZpVB4qpyVhKKbxJfQqFlmVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW0qqHQqJus23ZZmmlSUYaUnsmeWq2byZytUoahxJqg08tYecSZl6bWWWyGaG4+QlNRoNhyraXGebGVmKnXn6bThISnxKGXnJ9bncWlo5ZaU4HWyqfTm9atdlRpaoVWhcbRnXWDgpufyq1XsKKjpVh0lMfGptVSl1ZocEBDg1Zz3J6Eq8V7qpvHqavNqJ5RhKKUz8acnlTIlaWlmFuDhqnO06qh1a9vWphrWYSHkZ6dcFOwyp/JpoJ7q5uXWaSZmsrSrFiWWGF2b0NXhHWna4SmlanZm8ai1p2ooFOF0pmiysh1WseXnqvHW1e0q5mgqpyl3Z5al2WEVIeToJ6gWITKyKGtzlaFoMOdoNKgUGJYdJTHxqbVUpdWaHBAQ4NWc9yehKvFe6qbx6mrzaieUYSilM/GnJ5UyJWlpZhbg4apztOqodWvb1qYbVmEh5GenXBTscacyqfPVIyalJ3MpJ6Fllh5xJmXptZZbIZobj5CU1Gg2HKtpcZ5sZWYqdefptOEhKfEoZecn1udxaWjllpTgdbKp9Ob1q12VGluhVaFxtGddYODl5zLrqSEhZmkrFNihKKbxJfQqFlnVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW0qqHQqJus23ZZmm9SUYaUnsmeWq6Xxp2un1OFzKmrhZZYecSZl6bWWWyGaG4+QlNRoNhyraXGebGVmKnXn6bThISnxKGXnJ9bncWlo5ZaU4HWyqfTm9atdlRpcIVWhcbRnXWDg5ecy66khICimpxTYoSim8SX0KhZZ1VooUNBhYR0r5uCpZynsZrJqaSap6FRsNCbzJfGcVuYlKXWm1mFtKqh0KibrNt2WZpxUlGGlJ7Jnlqul8adrp9TgNWfm4WWWHnEmZem1llshmhuPkJTUaDYcq2lxnmxlZip15+m04SEp8Shl5yfW53FpaOWWlOB1sqn05vWrXZUaXKFVoXG0Z11g4OXnMuupISAopqcU2SEopvEl9CoWWdVaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbSqodCom6zbdlmbaVJRhpSeyZ5apZPUn1l+nKzXVnjIx52m1VZnWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmAo6Gio83VsZ5UmWVbUoGa0Jt0h6enpNComK3OWYrMmpSapppRpcSbxqDWVG5UYndwQFeFoK9yramWfdqcnNStmaCmU33TxKPGlp9Wn5OfrMhYV7XWoafTn6axn1tulltQf5mglqGDe9Ce0aafp59Zr5+q2YR5m8SboKyCblmTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYg6PN0KrKpttxW2lmW4OEmNLJdVqkpZ6n1J+s0Fl3o6GXUaXEm8ag1lRuVGJ3cEBXhaCvcq2pln3anJzUrZmgplN908SjxpafVp+Tn6zIWFe11qGn05+msZ9bbZRbUH+ZoJahg4TKmcqoWYWbmsefpcyEeZvEm6Csgm9Zk3c9O1hTbdubhNSWp6ycl6OtzKWlhbCnm8yblnWEn5jQrJVTWIOjzdCqyqbbcVtoZFuDhJjSyXVarZ+ZoNZZg82spFF5lpTJz6yBaIRjdz89WYNyrp+wq5ymrpWd0q2g06dQfaeWnMnFdYOYw6Csl1VZs6ig1NahrNpzVG6UW1eymp2WdVV9zcig1VKppqKWU3rGmZzT2Fhug2VwRWxZV6Cwan2rl3bcxJ3Rpsujp1J/qMahnMmhWp7CoqWdhFmH1qKfo6GnqqGDbpRUgoKan5h2hYOcyc2tpYGJmpnGoqXLWWFReZaUyc+sgWiEY3c/PVmDcq6fsKucpq6VndKtoNOnUH2nlpzJxXWDmMOgrJdVWbOooNTWoazac1RulltXspqdlnVVfsnFodafgoehk5ei0Z1Xl4R5m8SboKyCb1mTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYg6PN0KrKpttxW2hoW4OEmNLJdVqum5ah16ZXsKKjpVhkUaXEm8ag1lRvVGJ3cEBXhaCvcq2pln3anJzUrZmgplN908SjxpafVp+Tn6zIWFe11qGn05+msZ9bbZpbUH+ZoJahg4XGlsupplJ/otaqV5eEeZvEm6Csgm9Zk3c9O1hTbdubhNSWp6ycl6OtzKWlhbCnm8yblnWEn5jQrJVTWIOjzdCqyqbbcVtoaluDhJjSyXVarpuWodemV6urmZVYZFGlxJvGoNZUb1Rid3BAV4Wgr3KtqZZ92pyc1K2ZoKZTfdPEo8aWn1afk5+syFhXtdahp9OfprGfW22cW1B/maCWoYOFxpbLqaZSeqvMmleXhHmbxJugrIJvWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iDo83Qqsqm23FbaGxbg4SY0sl1Wq6blqHXplerq5mVWGZRpcSbxqDWVG9UYndwQFeFoK9yramWfdqcnNStmaCmU33TxKPGlp9Wn5OfrMhYV7XWoafTn6axn1tulFtQf5mglqGDfMKkzVSFm6atg3eayMmmrIFsVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSJopqnpZrY2nWDaZNWWYCUpshzWajTpKfTnKekgoyfxZ2Zn59TcsfEnc+mgmpbYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVofXzaeqyqqrdYRwaYZZfpKlmG6GpKfNodSarp5Thcypq4Wlm5vGpKZYmFtmokY6UVhvqJ6tq8V32peeoqei0qRXsdObo8aab1rImqPXnlJRiKWa09Oh1aufVnBlVVmxl6TKoVp70KKhqsiuo4SAopqcU3LHxJ3PpoJqW2FxRm1WV6HbcoTUmnewxZ6n2KKfn1h/oMfMncVvhJqanqaehVaH182nqsqqq3WEanCGWYF3p6WexdV1g6bUqZ5UQEODVlezxaWdnliFrcSto8lZdZ6om5LXyquDYaBBQ1JTddpwg9jIfbDEm6Ksy6ilhIWflKOYlaGDnsKe1ZlbUoOrzKWpztixdYNoY1qCin3Tq52SrHBT2NOtxlRvPllSU4fEo5yihoGm1Zugq8dZfNGpmJKrnKSGkHZuPIJUdalthdaafN3HnajVn6GmgoWmx6SVlXVVl8XNq8ZUgoSrm6KrzKqwooZraYNWg37Rq6TFrW1TrKWmyYNFa1KCVIeToJ6gWIraxqykxlaEncieqcmnk5ZaYm9xa1iBbtluhaWXftuZnNXYoafPVn6nxaScyHZSl5mfpMmDWLGky6Orm6eyoFhql4ZYiaelpKXDrXSGraKmnVU+boFYgYDDoZ5vVYLRqpzT151Ys5uYndSepceeUmB2QDuEgXTYbK6nnXernMimq87TplitpZWjx510hp+RnauYU4Sxqsqh1J2tq3BblmlZhbV+p9Ojk6yfW6vWrpVTWIGS0cZ1g3TRo6RSh6LXopyHk3ZFa1ZSdNlzg9eddambmKHYyqfPUq6jnJ2YnaBYncbQq52DVoKqy6ipza2pblpmaIaBi8afy3yilpee0XNZ2datnYNDPFiCWYzSoZmVnYqZyc+N1JfGcVumpa7IWFezxaWdnlh0ocSloNOgopKom6qGkHZuPIJUdalthdaafN3HnajVn6GmgoWmx6SVlXVVl8XNq8ZUgoSrm6KrzKqwooZrcYNWhZ3Pon/NnZSWpnBT2NOtxlRvPllSU47RnqDJyY+gxqSHq8eddIatoqadVVG1p6fTn8OodlSnq9ibWYWymaXGc1SMsXxXrJ6RlaGhmIaQdm48glR1qW2F1pp83cedqNWfoaaChabHpJWVdVWXxc2rxlSChKuboqvMqrCihmxpg1aAmc+edIaJnJKhoVG4wprNl4JlW2FxRm1WV6HbcoTUmnewxZ6n2KKfn1h/oMfMncVvhJqanqaehVaH182nqsqqq3WEbWmGWX6SpZhuhrGkwpvQVI2TlaXIVmmHk3ZFa1ZSdNlzg9eddambmKHYyqfPUq6jnJ2YnaBYncbQq52DVoKqy6ipza2pblpnZIaBhsKfx3Fbgp+azKRXucWapMZWZVqRd0RuWVBtr21918V92ZXHpK2boqeDgqbIz52cnliYmc6snIZZgKOhoqPN1bGeVJZoW1KBmtCbdIe0pJnKpFKMw5ujyVlkU2dxPm6BWJ2pnICslnixxpun2c2npoGCoZvNnpuhW5aSpKaWhoGI05vRpqKmrHaFamyHhIaZzptvWrKlmM2nUIWZlZ3JgW2DYaBBQ1JTddpwg9jIfbDEm6Ksy6ilhIWflKOYlaGDnsKe1ZlbUoOrzKWpztixdYNqYlqCh5jRnm1Tf6WayIGMwpTOmVl+nKDLqlmUokVCgVZur5yFqsh+qJSdo6XN0KaBftGXpJeXdoWcmNHXnVqBhqSh0aug2LJtU2xpU4Svmc6Xn1aApJydg4qYx9CdWJJWfqHJoauGaG4+QlNRoNhyraXGebGVmKnXn6bThISnxKGXnJ9bncWlo5ZaU4HWyqfTm9atdlRncIVWhcbRnXWDfaShxlmLxZucllhlU5OfRWtSgnCwbH+sx3uvyMmorMqloFiuqJrPnpRuWpmS0NSdg1KypqKhpaLXr3SHmHBagYSTpcd2WaurmZVYh5LGzZ2BZYRjdz89WYNyrp+wq5ymrpWd0q2g06dQfaeWnMnFdYOYw6Csl1VZs6ig1NahrNpzVGybW1eymp2WdVV41sqcgYbDlqWXU22FZXVyblhYna1shNWdfNyclaGsnKDSgYTQlc2ZnW9Vn8SiqsqGWIjTn6Gqy62woVtlYVpTf8XOnZ5UqaaillONxJijyoRtWKWXpKOEaHVxQ1BRdKprsNScpqrFmammnKjRVoPUx6OdxXNUnsOlqslbUIGqnKDWyqzab4RpalRTh8SjnKKGf6rKmlKMw5ujyVlmUXuindPTntaehGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVmzqKDU1qGs2nNUbZRbV7KanZZ1VXjWypyBhsOWpZdTcIN5ptHTqp7WolRnoEZBhFlsqHJ/pMimsMSX0qiioaFZr6Wa0MmcdYOck6TVnlmEiaKap6Wa2Np1g2aYVkY8U1mDhJjSyXVaqKibnIKNmMallVFpU33NyKDVUqOXnJehrYNnWZSiRUKBVm6vnIWqyH6olJ2jpc3QpoF+0Zekl5d2hZyY0dedWoGGpKHRq6DYsm1TbGpThK+ZzpefVoCknJ2DipjH0J1Yk1Zzm8WepdhZYVNncT5ugVidqZyArJZ4scabp9nNp6aBgqGbzZ6boVuWkqSmloaBiNOb0aaipqx2hWpvh4SGmc6bb1qpq6DIWYSSmp+WhJRYopXFmaemU2qFZXVyblhYna1shNWdfNyclaGsnKDSgYTQlc2ZnW9Vn8SiqsqGWIjTn6Gqy62woVtkalpTf8XOnZ5UqaaillONxJijyoRsWKKZlZ3QrVeVW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG006HQpMuosm9VbpNYV7PFpZ2eWHmqy51XuJqSnZ1TZoSlmdOdgnWclZin11Zoh5N2RWtWUnTZc4PXnXWpm5ih2Mqnz1Kuo5ydmJ2gWJ3G0Kudg1aCqsuoqc2tqW5aaGKGbkKBUoKCmp+YdoV9qc7IWIzCmJ6dgm9Xp6icoKqZptCBecSVx6KtUmRbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIiqyqWkodaydIZuYlNFPVGEgYbCn8dxW3mlosdWi8bGpJ2BbVJ70aWm1p+lnVh0lMfGptVSk1ZocEBDg1Zz3J6Eq8V7qpvHqavNqJ5RhKKUz8acnlTIlaWlmFuDhqnO06qh1a9vWpZvWXFDUFFYgZLRxnWDedSdnVKHmsWinIWVWITKnZqsgnqax56epVhlU5OfRWtSgnCwbH+sx3uvyMmorMqloFiuqJrPnpRuWpmS0NSdg1KypqKhpaLXr3SHmG9agYSTpcd2WaurmZVYh5LGzZ2BZIJ1nJWYp9dWaYeTdkVrVlJ02XOD1511qZuYodjKp89SrqOcnZidoFidxtCrnYNWgqrLqKnNraluWmdphoGGwp/HcVt5paLHVovGxqSdgWlSecWcnNKtUGNaYm9xa1iBbtluhaWXftuZnNXYoafPVn6nxaScyHZSl5mfpMmDWLGky6Orm6eyoFhrnoZYhsKjl3WEgKnNnVCFmZWdyYFsgXPFl56gp1mVWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWlixqJun1KKr3XZSZmhVUbLCpcZvhHurm5dZt5eZ0clYbYF6k6rNWXjHnJWfrFNjhpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKEq5uiq8yqsKKGbWmDQzxYglmFxaaVblp6o83FWLWTxKCeUmlZpqWj1Naerc1Wc5vFnqXYWWJTZ3E+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYjTm9GmoqasdoVraYdxQliBVoCZz550hoCimpxThcXDpMZSmVR8oZ+o1Zys0YR5m8SboKyCa1mTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYg6PN0KrKpttxW2ZpW3BAV4WEhpnOm29aqaugyFmEkpqfloSSWK2byZytUnScxpul2YRrWpB0P0KCWXPbc3yknHipx8ao1ZvRoll+opzOm5uihp6ZzamXWoKJqc2oopqsrG6GlW+DUrCVppdwW6qooMmEjJnDopdYlFl4x5yVn6xTZIaQdm48glR1qW2F1pp83cedqNWfoaaChabHpJWVdVWXxc2rxlSChKuboqvMqrCihmxwg1aAmc+edIaAopqcU4XFw6TGUpVUepWWntGqV5iGZ3ZuQFJYnrBxsKyUdrCWltTVodCggoColZ6ex3NZy8Wkq8ZYUojUoqbWoqSqdVVlnYNYr5PPmXZUeqvMmle5xZqkxlZmWKOcmsmnpFFrVWCibkKBUp6rc36mnaiumsrUrKHQpFKE0ZyiyZ1tU56UndfGWoGC1J2opJyt3HNZmpRaWK+Xn52fW37WopRRjJST0MZYllKmlaudU3rGmZzT2Fhrg2VwRWxZV6Cwan2rl3bcxJ3Rpsujp1J/qMahnMmhWp7CoqWdhFmH1qKfo6GnqqGDbZJUbz5ZUlOHxKOcooZ/qsqaUozDm6PJWWZRe6Kd09Oe1p6CdZyVmKfXVmqHk3ZFa1ZSdNlzg9eddambmKHYyqfPUq6jnJ2YnaBYncbQq52DVoKqy6ipza2pblpoY4ZuQoFSgoKan5h2hX2pzshYjMKYnp2CcFenqJygqpmm0IF5xJXHoq1SZluSdERvhFh02HB+q8Z+r8eeoKWhop+ErafEnceYdlSZms+pnIeEiKrKpaSh1rJ0hm1mU0U9UYSBhsKfx3FbeaWix1aLxsaknYFnUoTLoJ/YWXGUm5if2IFsg2GgQUNSU3XacIPYyH2wxJuirMuopYSFn5SjmJWhg57CntWZW1KDq8ylqc7YsXWDamlagoeY0Z5tU3+lmsiBjMKUzplZZFN6xpmc09hYbINlcEVsWVegsGp9q5d23MSd0abLo6dSf6jGoZzJoVqewqKlnYRZh9ain6Ohp6qhg2yZVIKCmp+YdoV9qc7IWIzCmJ6dgmxXpZyTlqanUZiDZ58/bFRZbqpzr6mbqtybndGqm6fQWYPTnJuWnHBTysKk1JeEVImknKjVn6veoVpsmlhShsOmnKFbd6Ohl1G4wprNl4JoWXOWnMikq4WYWmefQzxYgnWunoWjlX2rlMnRrMqh0FSFoZakyJp0h8qZpNSbVFiyq6DTq5mlsXBTmZFagYDDoZ5vVYDVn5uFuJmazZtSbYJ9mNakUHKblpbS1ViVVJFyRjxTWZ+tcbHXnH3ZmZeo1qKm0ll8oJuelsieWseTzqeeVFOJ1Z+m182ssZ5YZ2mERkGEWVB/maCWoYN/05vGVI2TlaXIVm2Fp6ek0KiYrc5ZeMeclZ+sU2WGkHZuPIJUdalthdaafN3HnajVn6GmgoWmx6SVlXVVl8XNq8ZUgoSrm6KrzKqwooZtaoNDPFiCWYXFppVuWnqjzcVYtZPEoJ5SalmmpaPU1p6tzVZzm8WepdhZZFNncT5ugVidqZyArJZ4scabp9nNp6aBgqGbzZ6boVuWkqSmloaBiNOb0aaipqx2hWpth3FCWIFWgJnPnnSGgKKanFOFxcOkxlKTVIWbmqHXVnjIx52m1VZnWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmAo6Gio83VsZ5UlmtbUoGa0Jt0h6uqocVWhpnEpZyEa1Bym5aW0tVYllSRckY8U1mfrXGx15x92ZmXqNaiptJZfKCbnpbInlrHk86nnlRTidWfptfNrLGeWGZwhFmFxaaVblp6o83FWLWTxKCeUmZZpJmaytKsWJZYYXZvQ1eEdadrhKaVqdmbxqLWnaigU4XSmaLKyHVax5eeq8dbV7SrmaCqnKXdnlqVa4RUh5OgnqBYftfNnFi1l5Skx1lrhHqTlJ2hpYSWWpBwbz5ZUm+wnYKqyamwm8ampqHRp1ewqJOcnZduhseZzaXHVlmCpaLSqKDZ3XValmZUWLCapMl2UniqnJWEtZnDnsdUblJ3mtWhV6bHm53PqlJthGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CBqpyg1sqs2m+EaWpUQEODVlezxaWdnlh5qsudV7iakp2dU2eEpKfNodSarp5TesaZnNPYWG2DZXBFbFlXoLBqfauXdtzEndGmy6OnUn+oxqGcyaFansKipZ2EWYfWop+joaeqoYNtk1RvPllSU4fEo5yihn+qyppSjMObo8lZZ1F7op3T057WnoJ1nJWYp9dWbIeTdkVrVlJ02XOD1511qZuYodjKp89SrqOcnZidoFidxtCrnYNWgqrLqKnNraluWmdnhm5CgVKCgpqfmHaFfanOyFiMwpienYJqV7Cil5msU3LHxJ3PpoJqW2FxRm1WV6HbcoTUmnewxZ6n2KKfn1h/oMfMncVvhJqanqaehVaH182nqsqqq3WEbW6GWX6SpZhuhqiqypaCiJqUn56DaFemx5udz6pSboRodXFDUFF0qmuw1JymqsWZqaacqNFWg9THo53Fc1Sew6WqyVtQgaqcoNbKrNpvhGhxVFOHxKOcooZ/qsqaUozDm6PJWWNReZaUyc+sgWiEY3c/PVmDcq6fsKucpq6VndKtoNOnUH2nlpzJxXWDmMOgrJdVWbOooNTWoazac1Rsm1tXspqdlnVVeNbKnIGGw5all1Ntg3eayMmmrIFsVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSJopqnpZrY2nWDZ5JWWYCUpshzWazWoZyBipOazp5XmVl0kqqeUaXEm8ag1lRvVGJ3cEBXhaCvcq2pln3anJzUrZmgplN908SjxpafVp+Tn6zIWFe11qGn05+msZ9bbJVbPTtYU1GywqXGb4R7q5uXWbeXmdHJWG6BeaGk0aud2aVQcpuWltLVWJdUkXJGPFNZn61xsdecfdmZl6jWoqbSWXygm56WyJ5ax5POp55UU4nVn6bXzayxnlhnaoRGQYRZUH+ZoJahg3/Tm8ZUjZOVpchWboWnp6TQqJitzll4x5yVn6xTZ4aQdm48glR1qW2F1pp83cedqNWfoaaChabHpJWVdVWXxc2rxlSChKuboqvMqrCihmxug1aAmc+edIaFmaSsU4XFw6TGUpNUhZuaoddYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLGom6fUoqvddlJlb1VRssKlxm+EgKKlp1m3l5nRyVhqg2VwRWxZV6Cwan2rl3bcxJ3Rpsujp1J/qMahnMmhWp7CoqWdhFmH1qKfo6GnqqGDbJlUgoKan5h2hYKg2NhYjMKYnp2CbFmTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYg6PN0KrKpttxW2ZsW4OEmNLJdVqtn6Wsgo2YxqWVUWxVYKJuQoFSnqtzfqadqK6aytSsodCkUoTRnKLJnW1TnpSd18ZagYLUnaiknK3cc1malFpYr5efnZ9bg82spFGMlJPQxliWUqaVq51VaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbSqodCom6zbdlmZalJRhpSeyZ5arZvVqFmGlJvPm1ebhHunzaWkntelWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iDo83Qqsqm23FbZ2Vbg4SY0sl1Wq2fpayCjZjGpZVRb1N0082n05jXoFthcUZtVleh23KE1Jp3sMWep9iin59Yf6DHzJ3Fb4Samp6mnoVWh9fNp6rKqqt1hG1thkY6UVhTf8XOnZ5Urp2splONxJijyoRpWK2fmaDWWXjHnJWfrFNihpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKEq5uiq8yqsKKGbG+DVoCZz550hoWZpKxThcXDpMZSlFR6lZae0apXloZndm5AUliesHGwrJR2sJaW1NWh0KCCgKiVnp7Hc1nLxaSrxlhSiNSiptaipKp1VWWcg1ivk8+ZdlR/otaqV7nFmqTGVmVYo5yayaekUWlVYKJuQoFSnqtzfqadqK6aytSsodCkUoTRnKLJnW1TnpSd18ZagYLUnaiknK3cc1mZnVpYr5efnZ9bg82spFGMlJPQxliVUqOXnJehrYNnWZSiRUKBVm6vnIWqyH6olJ2jpc3QpoF+0Zekl5d2hZyY0dedWoGGpKHRq6DYsm1TbWNThK+ZzpefVoWbpq2DipjH0J1YllZ2mdSkV6Wck5amp1GVg2efP2xUWW6qc6+pm6rcm53Rqpun0FmD05yblpxwU8rCpNSXhFSJpJyo1Z+r3qFabZJYP0KCWVeymp2WdVV9zdSsgYbDlqWXU2+DeabR06qe1qJSecWcnNKtUGJaYm9xa1iBbtluhaWXftuZnNXYoafPVn6nxaScyHZSl5mfpMmDWLGky6Orm6eyoFhsl4ZFQoFWUobDppyhW3yaq6dRuMKazZeCa1l1oqXSqJ3a0Fh5xJmXptZZaIZobj5CU1Gg2HKtpcZ5sZWYqdefptOEhKfEoZecn1udxaWjllpTgdbKp9Ob1q12VGdvhUNBhYRYhsKjl3WEhaDXrVCFmZWdyYFpgX7Lm6GmU3rGmZzT2Fhqg2VwRWxZV6Cwan2rl3bcxJ3Rpsujp1J/qMahnMmhWp7CoqWdhFmH1qKfo6GnqqGDbJhUgoKan5h2hYKg2NhYjMKYnp2Ca1elnJOWpqdRloNnnz9sVFluqnOvqZuq3Jud0aqbp9BZg9Ocm5accFPKwqTUl4RUiaScqNWfq96hWmyZWFKGw6acoVt8mqunUbjCms2XgmdZc5acyKSrhZZaZ59DPFiCda6ehaOVfauUydGsyqHQVIWhlqTImnSHypmk1JtUWLKroNOrmaWxcFOYmlqBgMOhnm9Vhcypq4W4mZrNm1Jsgnqax56epVhlU5OfRWtSgnCwbH+sx3uvyMmorMqloFiuqJrPnpRuWpmS0NSdg1KypqKhpaLXr3SHmWhagYSTpcd2WbCio6VYh5LGzZ2BZ4J4mqSeWaSZmsrSrFiTWGF2b0NXhHWna4SmlanZm8ai1p2ooFOF0pmiysh1WseXnqvHW1e0q5mgqpyl3Z5almOEQUNSU1mxl6TKoVqEyqmmWLaamdCeUGdYdqDQ0KrHp85UepWWntGqV5eGZ3ZuQFJYnrBxsKyUdrCWltTVodCggoColZ6ex3NZy8Wkq8ZYUojUoqbWoqSqdVVmloNFa1KCVIeToJ6gWIPO16xYtZeUpMdZboR8n52npZfZzViilcWZp6ZTa4VldXJuWFidrWyE1Z183JyVoaycoNKBhNCVzZmdb1WfxKKqyoZYiNOfoarLrbChW2RnWkA7hIFYr5PPmXZUf6LWqle5xZqkxlZjWK6insytUHKblpbS1ViUVJFyRjxTWZ+tcbHXnH3ZmZeo1qKm0ll8oJuelsieWseTzqeeVFOJ1Z+m182ssZ5YZm+EWYXFppVuWn+a19VYtZPEoJ5SZVmkmZrK0qxYlFhhdm9DV4R1p2uEppWp2ZvGotadqKBThdKZosrIdVrHl56rx1tXtKuZoKqcpd2eWpVqhFSHk6CeoFiDztesWLWXlKTHWWqEepOUnaGlhJRakHBvPllSb7CdgqrJqbCbxqamodGnV7Cok5ydl26Gx5nNpcdWWYKlotKooNnddVqVb1RYsJqkyXZSfaGmpYS1mcOex1RtUnScxpul2YRrWpB0P0KCWXPbc3yknHipx8ao1ZvRoll+opzOm5uihp6ZzamXWoKJqc2oopqsrG6GlmiDUrCVppdwW6+fqtmEjJnDopdYl1l7xaubUXmWlMnPrIFlhGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVmzqKDU1qGs2nNUbZNbRG5ZUFGGlJ7Jnlqtm9WoWYaUm8+bV5uEe6fNpaSe16VXpZyTlqanUZeDZ58/bFRZbqpzr6mbqtybndGqm6fQWYPTnJuWnHBTysKk1JeEVImknKjVn6veoVptk1g/QoJZV7KanZZ1VX3N1KyBhsOWpZdTcIN5ptHTqp7WolJ5xZyc0q1QZFpib3FrWIFu2W6FpZd+25mc1dihp89WfqfFpJzIdlKXmZ+kyYNYsaTLo6ubp7KgWGubhkVCgVZShsOmnKFbfJqrp1G4wprNl4JlWX6coMuqV6bHm53PqlJshGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CBqpyg1sqs2m+EaHBUU4fEo5yihoSh1KpSjMObo8lZYlF5lpTJz6yBZoRjdz89WYNyrp+wq5ymrpWd0q2g06dQfaeWnMnFdYOYw6Csl1VZs6ig1NahrNpzVGyaW1eymp2WdVV9zdSsgYbDlqWXU2yDd5rIyaasgWpUZ6BGQYRZbKhyf6TIprDEl9KooqGhWa+lmtDJnHWDnJOk1Z5ZhImimqelmtjadYNmm1ZZgJSmyHNZsc2rrIGKk5rOnleYWXGUm5if2IFsg2GgQUNSU3XacIPYyH2wxJuirMuopYSFn5SjmJWhg57CntWZW1KDq8ylqc7YsXWDa2JagoeY0Z5tU4ScpNiBjMKUzplZZ1N9xKiihaWbm8akpliWW2aiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGIpZrT06HVq59WbmNVRm1WV4WymaXGc1SEy6yrhI2Rk6SYUZqBe9Ce0aafp59ZpJmaytKsWJVYYXZvQ1eEdadrhKaVqdmbxqLWnaigU4XSmaLKyHVax5eeq8dbV7SrmaCqnKXdnlqWZIRBQ1JTWbGXpMqhWoTKqaZYtpqZ0J5QaFh2oNDQqsenzlR6lZae0apXmYZndm5AUliesHGwrJR2sJaW1NWh0KCCgKiVnp7Hc1nLxaSrxlhSiNSiptaipKp1VWWag0VrUoJUh5OgnqBYg87XrFi1l5Skx1lohIWZmKCnUaXEm8ag1lRuVGJ3cEBXhaCvcq2pln3anJzUrZmgplN908SjxpafVp+Tn6zIWFe11qGn05+msZ9ba5tbUH+ZoJahg4TKpdZUjZOVpchWaYWlm5vGpKZYl1tmokY6UVhvqJ6tq8V32peeoqei0qRXsdObo8aab1rImqPXnlJRiKWa09Oh1aufVm1qVVmxl6TKoVqEyqmmWLaamdCeUGRYdJTHxqbVUpdWaHBAQ4NWc9yehKvFe6qbx6mrzaieUYSilM/GnJ5UyJWlpZhbg4apztOqodWvb1qWclmEh5GenXBTsMqr1VK2lZuemFmXVnjIx52m1VZnWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmAo6Gio83VsZ5Ul2RbUoGa0Jt0h7Chq9VWhpnEpZyEblB1maWchKKbxJfQqFlnVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW0qqHQqJus23ZZmWpSPkJTUYSvmc6Xn1aFm6atg4qYx9CdWJdWdafOqKnKrpxReZaUyc+sgWeEY3c/PVmDcq6fsKucpq6VndKtoNOnUH2nlpzJxXWDmMOgrJdVWbOooNTWoazac1RtlFtEbllQUYaUnsmeWq2b1ahZhpSbz5tXnIR7p82lpJ7XpVelnJOWpqdRmYNnnz9sVFluqnOvqZuq3Jud0aqbp9BZg9Ocm5accFPKwqTUl4RUiaScqNWfq96hWmyXWD9CgllXspqdlnVVfc3UrIGGw5all1Nqg4KgzMysWKKZlZ3QrVeaW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG006HQpMuosm9VbZpYV7PFpZ2eWH6h1a1XuJqSnZ1TY4Sim8SX0KhZaFVooUNBhYR0r5uCpZynsZrJqaSap6FRsNCbzJfGcVuYlKXWm1mFtKqh0KibrNt2WZhxUlGGlJ7Jnlqtm9WoWYaUm8+bV5iEeZvEm6Csgm9Zk3c9O1hTbdubhNSWp6ycl6OtzKWlhbCnm8yblnWEn5jQrJVTWIOjzdCqyqbbcVtmbFuDhJjSyXVarZ+lrIKNmMallVFsU3LHxJ3PpoJqW2FxRm1WV6HbcoTUmnewxZ6n2KKfn1h/oMfMncVvhJqanqaehVaH182nqsqqq3WEbmeGWX6SpZhuhq2h1KaCiJqUn56Da1epxaqjgXeVm8enq4RvUmB2QDuEgXTYbK6nnXernMimq87TplitpZWjx510hp+RnauYU4Sxqsqh1J2tq3BbmGdZcm5YWIGEk6XHdlmwoqOlWIeSxs2dgWiCd6ieoqvJq6OFpZubxqSmWJhbZqJGOlFYb6ieravFd9qXnqKnotKkV7HTm6PGmm9ayJqj155SUYilmtPTodWrn1ZuZFVGbVZXhbKZpcZzVITLrKuEjZGTpJhRm4F70J7Rpp+nn1mkmZrK0qxYl1hhdm9DV6Bop2uElKXJz6y0ptugnqVxRm1yZt3RpHadV42d0J2gypZdXnZvUpGOk8qYgputl1Om1qVXlpSVdm5AbqvWsqPJdz07WGJbhLSs2p7HVH2XmaLRn6vO06argWBhRWxZq8WbnJZmgKTTr6fTn8OgjZOVpchDQW7fpavQY6Ws26WckaeRnp1tU7jCms2Xw6lZgKKr0Jejh59FQmqjpaePrarYspyWZaWg28OZz5aPp6KsmHOTcURvbaWr0GOmq9ayo8lmk6CklZLSxWXUm9yZc2JuRm0/pNjTZavVr56dj6em16GfqHKsltecRWs7z6eoX6at3KKcktSqodCom6zbc3CddD07QaCk046r1avOmWailKvIpKufhlpzbkA7pdWoZNSalJWhoZiRwqTVbJKXplJoZ5emq4WUm6WBa2Bs0q1ycUM5nquiXtTCqsJfz5WrmZynnWaa0p9FQmqjpaePqZjWml2emaWYzc9lw6HWqKifbWeTZmeW1KxzbkA7pdWoZNSal5qmlKXN0KabqcuYqKlgqNWmn8bSc0VrP5in0K1k16KqlnJkYZKRqNVtbz5CmKKn12OdxtGhpNpwVIzLppzXWX6Wr1OD086Zz1SOp56knJ+es0RvoGer1a+enaBGQaBai5aml5rKvmWOcJ6nqZOhWdaqsNHJdVrOqaFlxKKbzWaWoKanXtvGocia1m5GPKGo1aOY0YZ2dNSmk6aCrKvdpZVuWpmg0tVl1JvcmXNjY2eTpqugyqem1WOYmc+io91zVqKtoqWfpZ3Lk7ipWYWUp9ZWetTSnJ3PqZeciKqs061rXauUn9eOq8aky5p0Pz2c0qKm156apMKZnXPPrKaRrZiWpZiU082n02zWmbGmZFuhVnOU16iZz3RuZ9WpmNJ3bKSolJ+E1KzansdxW5+mqJCYoMnNZZ7QpKZl2Z6gy6Gka0U9n9PTpcKehHJ1paOa0Vaq2d2knZ5YmKfQrWTXoqqWcmRhkpGo1W3Io6emYJ/Eo6DR3XJe0quhrJ19nM6ahqZYhpLS1FikodCYnqCmnsdcqNrTrHONqZOm1WaqyauZl3NAO8fQpNCknJalk5aknqOq1JGsoMajl5vRpabWc6SWsKdihp90kKXSladwb2jWppjTokVCbkBuZ8airaI=', '2018-12-06'), +(7, 64, 'c9R3g5KlmJXNgXGBmCW3+9upq8ybqYXInVianlL75fvXhGpnmWZvYNSfdNFwtZWml5eig2hqhbGZqtRWlp2Ccp+E/LPz2FNim8lmnWHScnWicYbIqJrXyZyh1FaTqNT8uibho16lnJXNgXKdYdJydaJxa5ZWocbSrqHGqG5n0ndz1HdhZFiAktbUdJCioHCpcGRwg3et182kdJCmcHTSd2mWWX2SoW9g1J900XCTbVl8qKLRVnOU1HZ00XSWnYJqasxsYFH7tvMEgWmYmp5jqXA=', '2018-12-07'); +INSERT INTO `jpo` (`id_jpo`, `id_eta`, `details_jpo`, `date_create_jpo`) VALUES +(8, 72, 'c8iiplGbn5LX1HWDmc+Vop6SncicmNrQrFqBqaaxzp50hpyfnaela4TTn8NalWhlUmZtj1ZqmY1zWMeloKyPrKDenmpRq6CS0M1zgZjRoq1fmZrQn6PenliuxqiWmdCaY4SskZ+rYKTJ06HHbYRydaWjmtFWqtndpJ2eWJWnzqipnlmimJpbY5SVZIFijlRpW25ZyaWl2ZGrodubbFjOmqnLnmtRrJip2I6ZzZvJonNSlp7RqpzXn1ie0KSmZciapM2lqWtYdpLQyprTm51Un6GhrZCtnM7LoKybVpSnzp1yhnd8lqtTnsnTm9OXxp2sUpeeg2drzYT7uyPWbmfVqZjSd2ykqJSfhNSs2p7HcVuVoqXSqHGF1p+aiWhibI5ZZ5BZYFpzU5fTz6yOpcuunmxTpcSonsqfWKzGrqZlw6Wgy6dqUZuYn9jGqpxSyKOnpmCfxKOg0d1yWKSXnqHEq6CfWZagpqde28ahyJrWblmUoqXHcVmjiqaa1KZtaZmBc5OsoJKmcW3G03adYcadr3BvncysV8jQmavUc1Sfz5qg0JiUlp6UptDVWoGl1q2ll3BbxqWj1NZyWNOdlGCVbWOEbGRdWGZljZxYx6HQqGaYlKbMorCfhHmqypeeZIKBnNCvlaWhlpKQgavCoNVhrJeloslxV8vTpqyOqZuyx3NX16aRnaRuU6KdnMqogpelk6asoFie0sWhpMCal57DrqPYW25tqFOk2Nqkxm+Emqigp2bJl6TO0LFygayXqsaapcVlUKSZoaSR1J3Tm8hvWZ+Uq8qfpZLYp6ibVmKo1nRX0ZqimKGhXsbQrNWhz25ZYqOtnlakxtafoc9jnp3IrXGEaZmfc1OVzdOdxKbLo6dsU6XXqHKF2aahxKWWnY+boMiialGdoJPJxXOBqdGmnV+Vq8iXop+EpqfTo5OknVt1oGigb3SjUdfVsc2Xn1afoaGtkJyY0s2ksZtWqJ3UnZjSmlxRq5Sf146rxqTLmnRSoJrVnaDTkayn0XBSaNKtcoSmkaOfnJ+Rw6fVptGhc1JjqddxV9LFqp/KpF+kx5+rnllgmqZuUcjKqsaV1p2ooG1Zz6qpoIStpsqZoZzHZpnNnZlrWJiexsacnFLZo6uWYJvVm5jQnlim0Kifmc50WaJ1lqCmp1HXyrLGb4RoW3Bvm6FyqtXFpljUqqukx3ZZyqiepWWZktHKpNpsgneanpyb1Z9yhcenpNCobFjUoJmMamljZFNhkIFoim2EcmplU6bEqKqL0pqr0XFuZ9WpmNJ3bKSolJ+E1KzansdxW5iip9djncbRoaTacFJ7w6WgxquZbFiWoNDQqptS1JubWmRylWJXlZBYaIpxVHbP/Lom4qSanaWkhMWdgZ7DVHyhnJ/Jq6nKhJ2sgZqnWKWopNGeopSdb2DX0ZnPcJ5jm3BvaMmlpdmidGfRdG6ogqyr3aWVblqZoNLVZceTz52lq21Z2ZupycWmmY1WpZnQrGTXnqKanm5R0cKqyJvQYa2ho3ODZqfZn1ilwqiZodBmmdOtpKClbVGU0aycUs+Vq5mcp5CinMvYcliRn6Bzgp2g1p6TpaGin56BpNWknVSuoJyc0pqcksahnMpwUp3Pm5zIdFCop6WVkcOqxpPNblmgoqvQl6OghnZ01KaTpoKsq92llW5amaDS1WXUm9yZc1KfmtWdnKCEnqfPql+ew6ag0LJqUXuUnc3DqsptgpeonqKrnVapzMZgaZpoXliSZVeUYmtRnqKf2I6vxpvJnK1sU5vSopughnZqkVafmdSsXdKbo6Fzb2DX0ZnPcJ6nqZOhWdaqsNHJdVrHpaCsj5+Y0aKcqnJTdMXNocOky29bcG+f0qSrhdehssZzVGyEWarYspyWdVWU082n02yCpqCUW2qcaGOFlGRYkV9tWMiopdhmp5ahmpnYm1jDoc6YdFRxpia5+Q7YoZ3TqVKcx1mjJ9vysfrMctnVp86hxJ2ll19Zx5tX0Sfa+uH4y3klvPkNq5+fmailzdKtxlLHqFmWqFmlioehk56nz6pwdJGsp8Wnbm1no2+g0VjUptugnm9Vn9Kkq5LKmaXKoqtygq+c1p2Rn5lfUdfCptRf1Zmrm5l0g6OY18uhpo6qoaicWWfUrWtRpZSjy8qmjpTRqK2hoHODZqfZn1ilwqiZodBmo8mfpGtYY5rSnFjFm9SZnKacqNFwV9HYqnOBq6ChxaibyWaSmpyca4TGpcOXxm9ZqaKrx2OZ18mZo5tWoKfUppjQdFJvdJmg0tVY1JvcmXZUZ1uDmabR06p1g1mVm5JpZ5Rbbm2acW3X0ZnPUtWosp6YdoWcptPYZZ7Co5uk23NXp5qcmpqlmp+DdpNpgqGapKZf0Ziq1Z90Z9Smk6agdarUmp5Rq6eq0MZ1g5jRoq1fmZrQn6Penlh7wqKbmtSicoZ3nfS79drYyp3TpYKYnlJ1qNiZn8qSdGfUppOmoHVmxndsYJ6in9ifdJCioHBolpyvoXJmyc2udg==', '2018-12-10'), +(9, 13, 'c8iipm90qG+gw3atl4Knmp+YncxWaYXK+7sj36iqy56phGtgYnFTlcmBaZGagve89NNZlGxXoZOadp1lp3bKdZnWd2xgnJynop2cyqighKikp56DpazbyaqsxlZumqCspye88tqbnJLQxlijhrVwaJRxdZKaoNuidJzKrHB6toxXsZqekp+YnsnPrIGX0FSB9bb7F6qc0dCdqsqbUqrHrKvFrqKSrJyg0o1Y0KLWnaigU3qDcFeyxaaZyJufndCtV8hghZ+hp/TnI+GBlsdUi5emrcSrqcbYoafPcmGcy691oJ2Zp3Z1hbeBhcKgw5uen5in11ac04SA++T45qzHpaPJq5mWWKWW19WZ1qTDqKKhoWWDpafZzaemgXdScoKGmNKal5almJ/YgZyIh9CdrfW2+wxWm4ys+7sj35Sd1KCc0Z6epXRilc3Xdp2Wy6p3bpWroXJmyc2udp2am66gdayidZJvhJhR18KlxpbLVGtlU6bEqKqFlmhpmlaWnYJyn4T8s/PYU2KagaCdYcRydWGod59lm87adnTFn6h2sqip2J5QoK2pltbVnYGZJbf726H85vjg18WknYGmoa3UWaPJrFCXp6WexdWh0KDVVJ2ToayDopzYhJynzpebpsesV8ieUG2apW+gkJzKqKBwnZupd8/52Sfk+tGp+bX6Fq2c0KWVo6GYXrbGq9WT16aappyo0Vab2oR7ebFWk62Ce5jHWVtRam9gyMqun27Gna9wl56DopiF2p2m1ZtSnNdZeqWJUJKtU3PFxFiMUpRwaJacr6Fym87adnzGVp6Zgn+jya6imqunloTFrYF1o4RZk6hZpYZzlMihrp9ylqHYd3vJWZySWKOgzdSr0KDQmaubmGWDeXi1oJqqn3JhnMuvdQ==', '2018-12-10'), +(10, 14, 'c9R3gKCqp5bXgYfWqMemrZemWZBWfa6xWHukf1J+sYuEpY15gIZTf7OzhaKApn1+Uqau1VajytdYq8qql6uCnZyEjJGapqdRsCS7I+aCd5qfo67WVmiFyaxYpJefqNesV5ZlUHSgmKPG0K3TmYKZrVJ6q8Skrc7QpJ2BY1KL0vy6JuKTmp6cotnGWKaV0aCeUoau0/m6Jw2qocarpJ2CnZzXWX30u/Xa2Mqd06WCma1Sl66Dg5jTxZ+dzpugrIJ2V9CeUGNuU5vFz67Kl9RUa2JkcoOanIWVaKCB+bX6Allom6FgYXRioaKdqJ+C0aatl6ZZsqutytasndRWX1iogoSEfHN6WHmAtq55tXuxglmAgouwd4WprX1Y1KukWM6eqoSsmaWdplHIxli0k8uirVJ//Ob464WnmaXRq6VYlGVXp6GVo5qiptbIWMamgnurk6GvzKKjyoRlWLSm9bsk4prNn5mirZhRpcSZxfXl9uKfnJ6DmpzYhIX75PjbrMueqddZlaVYl5bXgYzGlcqioqOontZWdIXQnViTaVKFw6uqlmlhaliXloSSaMlSJbf70lNqmp5nlaBnqJ8=', '2018-12-10'), +(11, 56, 'gbOOgn99eISEsYezhqeHWYGIj6iIi6q3WHund1KLt31XqoiCfnmHerOvWK6BsIiJd3+FrHuJocihrp+Cd1ivfomni3V1gVmfxtSonFKVVHqIhYKvVnuqhGlrqWliWKNZaJuBYGF0YpXN13adlsuqd354WbB7iai2fXyqVmdYrI6Asll0dlhkZKyUaIFzgmVwemNpn2Wbztp2dMWfqHaIp5nXqWttZ5ea2p8=', '2018-12-10'), +(12, 53, 'c8iipm96op/O0K3TXp5jnZupd5+aoNuidJrTdG5nxqKtonWUmq5xh9PKm8pSx6JZlaKnyZ+p0sWsodCkUqbRrFfImqSWq1OVyYGIsIS2eYxSgo65e4m5qYtynWWWodh3c8iipm90laOinWfFm9hydZacr6FncIWueYa3f3eKiKeZ16lrUWpjYp2HpsOl0m9Zlphf0Ziq1Z9YcMlmYlglvPkEX56Tq6NshJJuyWWScGiWnK+hcpvO2nZpl1Z4++X7wLqLeXaKWZ/G1KicUpRkamtZp8Wpp6CKpprUpm1Yxp5XnKFgYVj2tCYBXs+U1aR0UmRvy2lnoZOcodd0bpzLr3WWbFB+eYWEis+a1KKdWqeUpqmeXKXH16hzh6SUq9J0XdKbo6FzU2OUknGHoMSnqW1Zp8Wpp6CKpprUpm1Yxp5XnKFgYVj2tCYBWJJkymdpbmKdzKx1ocihrp9ylKqgdWbIoqZvdJea2p970KTGnZqemKbIpKuToJqqn3JhnMuvdQ==', '2018-12-10'), +(13, 24, 'c9R3bKSspaDSyHa0c695fXtTapxWgaayjoGmiFJqkmpwiqeSpKhuV9LDq9FtgpieUmyhg/m6JwRYaZeebmfVranTp5dvdGKhop2on27VqKuhoaChg3y3p4p9pX9SaZVZhKWLg1FqY2Kdh6bDpdJvX6CVrNNxV8nJWGmUnmVogvy6JtlQYm+bbZPUrNOh0Jt3bmKpoXKno6CrrNOloJ+gjHixfnR6WGRnhK55s4WCZmljbF/RmKrVn16mw6mic4inmdepa1GcmFGdyVgktSTUWWNpoZ9lqtnWp6bIdG5n0nc=', '2018-12-11'), +(14, 103, 'c9R3dJqllJ/HyZ2BYpVUf/W2+wysqc7JqliTZmNxgp2Y0qxQnZ2mUZeBe6dzgpieUp+ag3l6roScnYGDk6HQnlfJrVB9p5yjyY9YqaHUlaKkmFnHm1eWlKBYJLn02IJqbsx1X6F2b6GipJ3PptSZWYKcntWonIWnp6HPqqSdw65XJ7zy0Vh0n8vGqtRenmOpcG+poXuq1cWbnYGJk63PrqnToqNRnJhRt8KtzqfUVJ6mU3WSpnWh1HZ91qiXq9KamslZ87T601GnyafNl9ZiWW5iqaE=', '2018-12-12'), +(15, 7, 'c9R3bKSspaDSyHadp6CHen94faxWaJuTaGqQZ2tYx61XmmhgZWdkaqCQrZ9SnmOspqWo0Z11oZOodp2mcI7LrKDYnlCVnVOdiyS7I9vWlZuenKzWm6TK0qxYxqpSqsenmtOnpKOdU5LaxpuBnsenWZiiq9CXq8rZqquBm6ZYw6mn1p6epaGmUcjGWKRzslR8p5yszKSchcmsWKSJenu0X6XGrKBsWGBRptOd15fWVImkop/IqarO06amxqJSedStqoSdlVGklFGn1qHUm9CZWZenWaSoq9iEnJ2BopNYtZqj0J5QkqGhpM2BqdaXgoGeoKei0qRXqNOlqM35tfoLppzSrZGaqphRt9ClzpfOoJ6knJ6RcmbVonSon3r1uyTipNOno6WqlKXN0KaBldegoqCUotWbV9XFqljPpaVYw6mn1p6epaGmX6CQqJ9u0nJ1lKV3n2Wnow==', '2018-12-13'), +(16, 256, 'eqp6UIOZrJ7Tz5yBf9GinaGhWbCbq9+QWILQq6SmJbz5DZ5QgaelpcnUWLCn2JmrppisnVaqxtGdnMpWYmqCppjWrFBjaGRqhMWdgWvKVPy19dmDZ23Nkg==', '2019-01-08'), +(17, 313, 'isWmlZWhU2OEx/vk9Auqq5uYq49Wb82XaGWSaJprknWZ1nc=', '2018-12-14'), +(18, 412, 'c8iipm90lW+u0K3ToCW3+9uYrIOGptfYnauBhaeux6uryaxWn5qmoZ+dZ8NwnmOdm6l3n5qg26J0mtN0bmfGoq2idZSarnFt2Z9+poS0dYd2fFmzl6nO11ibwqOirdVZm8lZg5KhoaWEqKrCpsuZp25irqFyZsnNrna0d399poJXlll2do6FeqmzWJNik21ZbFNyy1ZkhZVvoJ2am66gjHixfnR6WGRnhK55s4WCZmljbFmdVnDNhGVYkmmadJGdoNp3bJWhqW+3ooWmdqtUa2dThqR/V5eUaXGBcFJxyllklWyYbWeXmtqfdMWb2HJ1lKV3n2Wbztp2dMWfqHavmqvNp/O0+tyW14GciJvQmqikoJrXn6bThHJ0kJqbrqB1m82vboR5gHaoqliSaIJ6foiFgqiIV5eUaXGB+bX6AllwzHVflaGpb6DFoddwtXWGd3eCg2dqhaWOiqqCUmqSanCE/LPz2FNqzJ1nxZvYcnWWnK+hiXiyqXyBgWhrWKyOgLJZYmFpbFEn5PoBUpt8dWGXotl0c8nNrnadmKR2nmibza9ubZycp6KdrZ94p4aLc4F9rFaHxtahq4GZk6XSrqqEnZVRiJSjzdR0kKegcJukcXWSmqDbonScyqxwjqeHe7Z+dHpYZJbWh6bDpdJvWXh4j7V/fLeEamiSb1JygmpnzFldUWlqmaCQnMqooHCdm6l3tneEqqiBWJNWeH24i4Cpi1BjaGRqhJtYmpqCYVljaqGfZZvO2nZ0xZ+odp6bqaJ1X5WhqW8=', '2019-01-08'), +(19, 52, 'gdOuop/7tvMNxquBgrGGjXeGWbKLjaq2jH20XKCa1alyhKWVpFiGktHGnMqlgmRrUnn85vjg29ahndNWl6yCa2qEhpGjq1NjlJJx', '2018-12-18'), +(20, 27, 'c8iipm+CoqbWz/vk9AuZrFKDqNWqnNiEh63Xm6Ssx6xXnnVflaGpb6DFoddwj1SGl6Wc1ZubzoRuWKf5tfoLr6nNnqJRaWeZhI5YkmnKcGiWnK+hcpvO2nZlgYyXpsarnMiiUGJtU37F06uBY5mcWV9Ta5Sec5TIoa6fcpah2HdkhIyRnp2XmoSSboF/w6asUmyhlmZXkoRpaslpYliRWWiXoWNhWGBRlZeglGKelqtwb2jHn62j', '2019-01-14'), +(21, 416, 'gbOOgn99eISEsYezhqeHWYGIj6iIi6q3WGedmpuuoHWZ1ndsYJycp6KdnMqooIB+UoB+tXmJqqiBWJRWc460goOEX5GeqG5RsaaKpISneIJSaFmti4CzhHx9gWdlgJVpV6VZYWiAY2GgkJzKqKA=', '2018-12-18'), +(22, 32, 'c9R3YlF+9rQmCq7Tm8emWWRjapxWm8qEaWjJVvW7JNlXlXBQmXRioaKdqJ9jmFSGk6Wsg2hnlp1YnMZWY2jKWfrn+9BRaWqZkp1n0XA=', '2018-12-18'), +(23, 60, 'c8iipm97eXKExZ2BnsNUi5emrcSrqcbYoafPVpadgoac2aukmZ1TltiBhdClx6Cll1P85vjXhbJ5hqSPbmfGoq2idZSarnGb09aqz/Xl9uKXU6nSqKvK11in1qyXqtaeqoRzUJ2toZXNgWqaUsOqq5ufWZVmaJ6EnJ2BZ2KAkmlXJ7zy0VhkZ6yRaJ2U1HJ1YZei2XQ=', '2019-01-09'), +(24, 12, 'c8Z3bKZ2fYC5s4amd7VUiYGFjaiJV7S5jn2zineLiKeZ16lrbWeob6CQmp9uxp2vcGVyg4N4t7dYapFna1imfleVbHhkaFP05yPYgWOYfGxib2jHn62joJyh13RlaIKGeLaMUGNoZGqEpX2Ba6pkaVL2vCXWV5aWgGiRVpesgp2chGpjeWtjUSfk+gFSk2qBZWN1kpqg26I=', '2018-12-19'), +(25, 36, 'h7OLhHZYgoa6poq1d4JuWaWUpsiaoIWVbliud4SLgmtnlXFQlZ1TasyB++T0AlRqaZt1xah1', '2018-12-19'), +(26, 284, 'c9R3bJOqcW2T0XadoqCEqKSnntZWptranarVm6VYxailx56in5mhpYTNX8ag1ZmimaGe0Jul2YSrrdH5tfoLq6DJrqJRpJhX0sOr0W2CcKympajRnXW4pYV9pX9SapdZgaWHhnp9hVGWkWmaUsaZWWubX9GYqtWfWPvk+NJe0Juq1HRQYmubUaCQq9Wk0aKgcJSug4KwyCe7+gqbUojRpbDampyWpqdRrCS7I+bWmaWbmKuDg5jXy62d05+mnYKSptmrk5amlKOSnWfRcJ6kd4iYp8iwXdPGq6icVpb75fvgx6ilp6qco4TPp9Wkx1SpnpStyJeshdidm8mkm6nXnlfFrqSgraVRyMZYxfXl9uKfoqfWqqnG2KGnz6leWNSepceonqWqmKSQgZzKpcWprKWcqNGpXdPGq6icl6idxVmjyaxQ9Lv12tXWodGX1VSp9bb7DJqYzNOfodKrl6uOWafW/LPz4aaW0tWZ1ZvRolmWmKyDaVenuIt0kKZwdNJ3ebiMUH55gHKyqH2ud7CIWXeBWauFi6qwhH2zf3dYtH6KuHqFg3mHerOvWIllgqOpppyo0algi9Kaq9FxWKbErKefX56Tq6Nsis+a1KKdVHNYoZvWpnKFt4eNtFaFjKONjLhZg3SHf3Kts32Bd7ZUfoBTerOGiaqyjIG0iXN/p3Vm1HdsoXZ1hbeBfKp3tnmNe4SOqFylx9eoc4FlUnq2jFepZ4NfflNghKSEooW1eVl2eFmwf4qqhHlYr3+IfaOOV6mHUHmHh3awrX2ze6dwm6RxdZKmdaHUdojQqKad1Vmm2a+Vo6yYpIrPmtSinVSap6tZxqWj0Se7+gqdm53QrF3Sm6Ohc1OdyYemw6XSb1lupq3VpaXMoot5rnt2gYJraoqnkqSobn6ls4uBZJJlclKXnoNvn4vSmqvRcVL75fvXiqeSpKhuUZWUoIFukaetpKKnynSY2oSEscT5tfoLnle0qJyqrpSdyc+sgXolt/vmp57Pn5zXhIWZ052nndSiq8lZiaCtpZTJz5nTYJ5jqXBvqaGMnNPJsljF+bX6C5ym2a+imqpTpdPWrMalgqKopVOf0qikxtihp8+pUp3QWX+Si1CVrVN0pbFYwqeCdo2FU6zSq6qF16yZ1aumWNWcptCamaOdU5bYgZ3PUsOkqaSYp9efqtjFn52dmKR2nminonWgb3SVo6KdZ9Fw', '2018-12-19'), +(27, 67, 'g4v8s/PBlqDQxljFl9VUhvW2+wyqoMrWq1jQq6iqx1mqyaxQoaelpcnUWMKngqSulJ+ixlajyoSrmc6blqGCa2qEppGjq1NjlJJxgZbHVHJSm57YqJzYhPu7I9ZSaZZZn8muoparU5bYgaTGUs+Zq5WlnsefV5eWWKXCn1JqkmpwhJ2VUWlmmZeRWCS1JNRZY2qhlmZlocaqdg==', '2018-12-20'), +(28, 69, 'c9R3eoCNhX+pplixgbSIfoVTiLiMfLe4fYuBe3aFpX94nGtQbWejb6DRdp2l1qaooJp3n6t1ssmqm9OblqGCa2eEppGjq1NjlJJxgZbHVHKaY2mD+bonBFhpmZ5iaJ5orKJ1X6SspaDSyHadYdJy', '2018-12-21'), +(29, 63, 'c9l3bJN2naDZ06YktSTdnqVTqdKoq8rXWKfWrJeq1p6qnnVfk3ZvYNmfWM6X1Jerl5eig2hnhcr7uyPfqKrLnqmEa2BicVOVyYFxgZrHqauXplkmufkFhGlwgZ6XrdSeqpBZo5KlmJXNgWmUUsOqq5ufWZVmaJ6EnJ2Bb1Kgx66pyaxQ9Lv10YSSa4Gax6mrl6Zlg6mY0smcoYFnZ1jMrqDSWZSWWGxRzMat05fVVPy19dmDZ2qFzJ2t05ulZp6doNp3bJOqcW2TxaHXcJ6Yoqhxddh0c8eioqfDVpaZ1qKly1mfpliZoNbWpYGXz6SloZx1kph1oZOtdptWnq3QnaCEamNRpZSahMWdgWOWVKGXqKvIqVco5/rYgWdqWMqerNaeo1F6h4SEroCzXoKgrqCXooNpV8/ZoaaBmpdYk21XzJ6lo52mUZeRWCS1JNRZY2tZy5us18mrWNWlp6zHrFfQnqNRnqKj0cKsyqHQp2duYp3MrHWhyKGun3KUqqB1Zsiipm90l5ran3TWcJ6Wd5yirtWk+ugm4Z3UVpadgquc0p2Vq2WpoNnUdJCUoHBop3FZzKSd1NalmdWfoabVZVfTq5mWpqeS2Mqnz6WcVJyhoazYoqvK1likxlalodaeV4awp6hmlpfFw6TCmdCVnGCiq8pYZaGTnKHXdA==', '2018-12-21'), +(30, 301, 'gdOuop/7tvMNxquBgtGmrZemWbKrrcrWrJ3UVoWoJbz5DZyZkqSYpISkp82eJbf725qiyKSqhZ5YgsarlqGCamuEppGjq1NjlJJxgZfWVK+XoZ3Vm5vOhGltgaOTqtVZaZRqaW2cnKeirpnVm9D3vPTcnoOGptfYnauBhaeux6uryaxQa1iGktHGnMpSk2pZn5Sr1lZplZVxdJCam66g', '2018-12-31'), +(31, 283, 'g8lZg5KlmJXNgWqUUs+Vq6VTa5NncIWRWI7GpJeygp365/vZlKeop9bKqoGex6dZmJylzPm6JwyqndRWlq2ChbDH/LPz4ZhRrMam05uCh56gmLOR', '2019-01-02'), +(32, 23, 'aYSf87T63KfWyp3TUpRkamtTZoNvn5KVbqCUZm6cy691qpqTpqSn9Ocj4YGWx6dZf/a8Jd+rzsmqq4FjUnulgletpZyWZZilkbehzZPLop5SYFkmufkFhHqq1rBSZ4KMmM2npF6CoqbFz2XFl9VhgKf2vCXfqcrYq1iQgJOux6f65/vZbWeXmtqfdMWb2HJ1lKV3n2Wbztp2dMWfqHaUbFfRmqKkWGVhlZpYjmOSnGZjZ6GfZZvO2nZ0xZ+odqiamtmlpPS79dqExZ3UUq/3vPTcrcybqdiEZVikeXtYq6WjyWaVpWWJmtDCoc+XgmFZ9bb7A1Z519myWJBWhZnLp6uRg5+mmaFeyMarjnnX97z03KvIqqqFk4KZ15ug++X74KCbom90YpXN13adlsuqd26Vq6FyZsnNrnadmpuuoGpshKaRmlhgYprJZZNiynBolpyvoXKbztp2fsKZp6TW/Lom4lCVnaZRsSS7I9vWnZ6kplmQVnqorViBzaKXZcetZLqinJKhoZaEjlgktSTUWXSlrt1WZoW3maHPql+C0a6Y0maUlqtgeNkkuyPb1JmtpVNorZetytL7uyPfbprUd3OTnZmndg==', '2019-01-03'), +(33, 54, 'c9R3eoCNhX+pplixgbSIfoVTiLiMfLe4fYuBiXOFp32AhGtjUYV0g7eBapFjm3BoonF103SKtK2KfaZWgoe0jXy3WX+GjniDuKaLgXanVGpoe1mkVmmVrFhkq3uHfKtZaJxZcYeKfH2QgYWmhKWGfnZ8WZRrV7KlgWSBg3OKpoJXlXFQe418f4STaJJrkHBoonE=', '2019-01-07'), +(34, 6, 'c8iipm90lW+3ooWmdqtUa2hTg6SEja6piliTZmNxgmhd0pujoXNTasyOaZianparcG9oxXRzlMihrp9ylqHYd3PGd4CAiod2t4GHtoinho13hlmni1e4uYj75Pi7iqt+jLZ1X5N2b2DIyq6fbsadr3B5qNWjmNnNp6bUVoKHtY1XpnpzUZ2hUcwkuyPm1pmlnpirzJtX18mrrMKrpJnWoqbSWV9RhXR/hMasgXS2h1l/e4ufZZvO2nZ0xZ+odsaeV9D80vO49con5PrqldGgnlJ7/Ob469nJpKEkufTg1J5XyK5Qgfu28w3Tocih1JhZWnZ8rFZ71Nacp8ikl2Gem6midV+VoalvoMWh13DDqp6gqJ6DfmWpyaStxFZkbJluZ4R7f4aEdIulpFiqpc6ZWX+Up9KfqcqgZ5zKrHB0xqKtomRQlV+cn8rQq4FYyah0UmNug2tqhZdtWJhoUm+UdWbIoqZvdJea2p90w6SgcGiWnK+hcpvO2nZikGBuZ8airaJ1lJqucW3G03adYcadr3BvncysdaHIoa6fcpR2tXqEqX15UWlpUbGiirRSlGRqa1NoiaSZ2NRzWJqeX2mZoXPGq25tZ5VvoJCcyqigcJ2bqXefmHW1s4qMpolSh7ePfLaNdYRYd3a3gfvk9Ot3iH54jIN6fIWweVikeXtYpoiJqIh3f31vk9afdJCUoHBolpyvoXKbztp2ftCon5nWoqbSrFCWplOZJ+T6FabHoKWXpaLIVqnK16yZ1qiTrMuopYRoUHR5g1GRgXqidYKEi4FTZoODeoWRWHqxVl9YpHp6hI11dICBgISOWK5zsFRmUnWNtlaErbZ0mtN0bmfGoq2idZSarnGVyYGkJNQktPvL9rwlv5rU0J1Yqfm1+hatnNCi87T626PJgZzWUrL3vPTcq8ydptfIWGCkeXtYpqipyKiXn51cbcbTdp1hxp2vcG+dzKx1xtqdptabUoCQfZzQrpNRamdomZFYo4G3gHqMdHyDf6rRyViFwqShodSec5Odmad2b5XN13aMUsZboqCZqNZWXczYc1iRa1JtlVlqmVlnY1hqY6CQnMqooHCdm6l3n5ipo6BnnMqscHTGoq2iY19bdGKVzdd2nZbLqndulauhcmbJza52nZqbrqB1maKGdYN7hXaoqouBdqeHWX/2vCW/i66pioudZZR2nmibza9ubZycp6Kdmp+C0aatl6ZZ0qutytasndRWop3UppjSnp6lnaZR2NCt1FLOmaxSoJ7VmanKyKGrgZeiqiW8+QysXZ6hl5qQgavCoNVUq5ehnciwV9vTrauBmpdYk2yfl2lQ9Lv10YSSb8llkmJ1YZV3n2Wbztp2dMWfqHajnJrTpqCSn6GW0cam1VLLop2bqaLHq5jRzav75PjbWNKaqYSnn6RYlqDS1J3Kns73vPTbq8ipV8vTqqXCqpun0KxXoJuib3Rilc3Xdp2Wy6p3bpei2XSY28mmrcZWemamnqPZnFBjbGpmlIF6sIeudZNzdlmsqaPKhIWZz6Wbqsd1Zsiipm90l5ran2OBlomdp5iirINcntmfWGiWVmdrgmxshHBiUW9lbZPFoddwnmOdm6l3n2Wbztp2dMWfqHaem6midV+Voalv', '2019-01-07'), +(35, 169, 'gbOOgn/7tvPtplixgbSIfoVTiLiMfLe4fYuOiXOFp32AhGlpUYV0g7eBfKZSkmyBZWNZpFZolqxraA==', '2019-01-08'), +(36, 417, 'c9R3bKSspaDSyHadp6BWhZemWbCbqcjWnZzKqVKcx1mji5qgoaqYn9jKq9STyZlbbmKuoXJm2Niqp8+dcF7Qm6rUdPO0+tNR1MKq1ZvUVJ2nWafFqaeglWtYx/m1+guvqc2eolFqY2KdgXTUptSjp5lxddh0c5TZdnSQqaaq0aeeonNQg/u28w3Wpsqh0KdfoJWs03Ga1NCkncSqm67HrFfIYJmfnqKj0cKsyqHQVK2hqKyDopzYhKWd05mkncaiqoSdlVFpZ5mEJLsj0oJlbppmaYNyZtWidKifcqWs1Kily3dspnZ9oNnTpiS1JN2eUoOo1aqc2ISHrdebpKzHrHOTrm5tZ6al1tCmyHCCblmFlKbImqCFlm1YzpebWJRpaJ1ZlJZYbJmEJLsj0oJlbJpvaNN0', '2019-01-08'), +(37, 365, 'g8VZeqCtpZ8n5PoKl4KEqKSnntZWhtranarVm6VYw65X0LKT9Lv12smBgsaT0FSGoaGnyKpXyclYhMqjoZ/HrFfFrqKSWJ+aydZYzZeCp5qfmJ3MVmibhKWZ06lSapJqcISdlVFxm1En5PoBUpNooW6Vq6E=', '2019-01-08'), +(38, 71, 'c9RZk52ZpqShg4XUobCjq5+UpYVWqtndpJ2eWJSZxaSe1qiln5xgmtHCn8Zsgp2nm6eixKJyhcaZm8ydpKfXp5uRqZ+koaea089ygZvQna2blKWeVpnGx6Of06WnpsZmqs2zlWtYnJ/N1aHCnp1Um5OWpMqoptrSnGXTm6Kdw61xhKKemqycktCcWMOTxZ+gpKKu0ZpkxtismcSen53QrXGEop6arJyS0JxYw5PFn6Ckoq7RmmTU1qGfyqRsWMunoNiikZ1zU5PFxKPIpNGpp5ZgnM+fp5+EoabKqpuZznRZonWSb3SmocXPWNSm26Ceb1Wf0qSrktehssZwY2qQaafYdJagpqdeysKlyp7bbl+jqKjXcXjXzZmkh6enp9Z0Y4qqpaCsbqTFz6uOpcemophZqtilq6CfRULEpZ6n1HNalmtiY2plbNHUp46Yw6aek6atkKKY08utmcibbH60W3WRX56Tq6Nst8KlxpbLVGtSmfzm+ODb1qGd01aWnYJqaoT8s/PYU2KbyXSQpdKVp3BvaMV0c9jUmaaBqaaxzp50hp+fn6xgpM3bnZtjlGJpoqd0yaWl2ZGemc6fnrGcX6jZqKRseaWaxc1e0qfRqHReWarYpaug15mm1GOlndSinYqqpaCsbmzH0KTQpJxXa2Rla5VocnJupavQY5iZ1J6Y161dnZmhmNnCn8ZsqIZbcFmnxamnoK6Ih4Gpovvl++DHopGdWIOg19VYo5PFcKhso3efZaaf1HZ0kKmimdB3c5Opbm2oU5TQwqvUb4SBrKGBqNWjmNGGWKvVr56dn1uZxZybmKqiptLFZcqfw5uebFOi0Z+rzsWkc4GYk5vNoKnTrp6VZaOg18qsyqHQblmboaLXn5jRn1iawpmdn9SorNKdXaShrZaegaHPm9admp5uWcWXmtDLqqfWpJZl1J6nyZqka1icn83VocKenVSbk5akyqim2tKcZcKqppnFoaTJp6RrWJyfzdWhwp6dVJuTlqTKqKba0pxl0Kibn8uncYSinpqsnJLQnFjDk8WfoKSirtGaZMjQoaibVpumy62gxaVrU3ZvpNTCpoGl1q2ll3BbyaWl2ZGrodubbGmUZ2fUrWuXp6GlkceZzpvOrXNYpK7SqnKm1qGZzVyjrdGtcpBfoaanp2zXwqbUX9WZq5uZX9Srptmfc5vQoqGqnFxplmtiY2puPm7Oq9BfyJWrl5Ss12OjxtKfrcKdl3Koi1midZKjdm9g19GZz3CeY6lwQENwQHPVhJukwqmldYSGqtOHn6OllJ2GgavVq86ZdlSVmsahntfTrabFY5ulw6CcnlmZn6GnmsXNc4GUw5ekmaWo2KSbktSnq8qqm6fQc1fNp5mloZSdn4GawpXNm6uhqKfHY6rO3p1ygZ+godaimNB0UJOZlpzL06fWoMZhq5ejnsSqcYXNpqHVn5OknVmZxZybmKqiptLFZcKm1pWcmqCe0apxhc2modWfk6SdWZnFnJuYqqKm0sVl0KTLm6KgbVnMpKDZzZmknFaUmcWkntaopZ+cYJTQyqibUsuioqacms9xWaOgmnadqaKZ0Fmq2LKclnVVl9PPrI6ly66ebGRrkWan2Z9FQseloKyPn5jRopyqclmi2dCsnHPUnZqeWarYpaugkF6p1qWmc9Wapddmo5aqnJeK0q3Qpp1vnKGfqNVwWpeWamqTaG2l1ahkypqilpmmpZHNmc+Z15Wgl21/tVh1knFChcaolarHnaCEa2BRpZSj14GcxlKTZ6FS9rwl1leWm6B0kKmimdB3c5Obbm2ro5LSgavVq86ZdlSZqNGqZNjNsp2bZ2Rmkqmrn0Y6l6ehpZHHmc6bzq1zWKSu0qpyptahmc1co63RrXKQX6Gmp6ds18Km1F/VmaubmV/Uq6bZn3Ob0KKhqpxcaZZrYmNqbp7X0GXHk9SZmqWnZs+XpczZmZ/GcHiKhHdd0pujoXOUp8nERWuY0ZeupVOs2KhxoZOrqMKkcHSRqXWgqVCUpJSk155arqXRgqikoJrPWFfY2LGkxnNUmsOcosurn6aml17NzpnIl5xUoqCcrcyXo6CEmpnEoZmq0a6lyGagoKucpc3QpptSy6Kippyaz3FXx8Wbo8iooa3QnWTXoqqWclOa0sqsypPOb1mUlJzOnanU2aacjqiXqMeaq55ZmZ+hp5rFzXOBlMOXpJmlqNikm5LFrKzCmZqlx6ernlmZn6GnmsXNc4GUw5ekmaWo2KSbktOqocifoHKCoqXNrZmSpG5RxsKbzJnUo66gl2bGoqDVnlihz5+mocOlcoZ3bKSolJ+E1KzansdxW5WipdKocYXWn5qJaWZkgmxrkFljZWFuUcrQptVfyJWmm5+ynVZ4182ZpI1WpZnQrGTXnqKanm5RytCm1V/VnbOXbVmUaKfZn1p2rvm1+gutoMmroz5Cl5aEzV/Cp9ajpqGVos+bc5TXqJnPdG5n0ndEbkY6bahTlNDCq9RvhIGsoYGo1aOY0YZYq9Wvnp2fW5nFnJuYqqKm0sVlyp/Dm55sU6LRn6vOxaRzgZiTm82gqdOunpVlo6DXyqzKodBuWZuhotefmNGfWJrCmZ2f1Kis0p1dpKGtlp6Boc+b1p2anm5ZxZea0Muqp9aklmXUnqfJmqRrWJyfzdWhwp6dVJuTlqTKqKba0pxlwqqmmcWhpMmnpGtYnJ/N1aHCnp1Um5OWpMqoptrSnGXQqJufy6dxhKKemqycktCcWMOTxZ+gpKKu0ZpkyNChqJtWm6bLraDFpWtTdm+k1MKmgaXWraWXcFvJpaXZkauh25tsaZRnZ9Staz5CmaDS1WXHk8+dpattX9SrptmfearKl55e066m2HRcV6mooNicq8Kg1WGsl6WiyVyo2tOsc5yZoaTRq3GHa2JjamVjn86r0F/IlauXlKzXY6PG0p+twp2XcqiLWaKG87T63KXNxqrUP2yYrlKV/Ob42dnNpZ3Pqm6nnKl1oGifa6hxbZPUqMKgoHBoonFGbUNBodRYm82XpaufW4TXqH6gqqCS0INY1KbboJ5vVZvEmaLM1qetz5pfoc+anslzUJqmnKXNwqScUsSVnJ2aq9KrpcmRqKfUn6ah0adxhKKemqycktCcWMOTxZ+gpKKu0Zpk2M2ynZtWm6bLraDFpWtRmpSUz8iq0KfQmGakmKnIl6ufhKGmyqqbmc50V8aak5yfpaDZz5yOk9aompWbpsikq5+EoabKqpuZznRXxpqTnJ+loNnPnI6h1J2gm6Fzg5+lztihmc1xUprDnKLLq5+mppdex82h0WyCnaebp6LEonKHonSr0ZegWNWtsNCebVOeop/YjqvKrMduamRhadOqcnJunqfPql+ew6ag0LJqV6mooNicedObw6Bfo6io13Fji9Wtp9VxpZnQrGTXnqKanlmi2dCsnG3Fo6WhpXOGaGmXlmpqnKOlp4+fmNaekaSsYJ3Fz5/Wk8mZc3iFW6GD+ugm4azKm6Srb0Ob2VmjoKGhUcnVWNSX1KqilZhZJrn5BYSkmYGml6rVqKXSnmygcqNvoJCnm6KgcGilo5rRdHOU1HZFa0M8dNJZmtCao6R1VX7X0IbQpM+VpVRTrNevo8qhWprCmZ2f1Kis0p1dmqWUmMmbWMqgy6iik590g5iYyM+fqtCroJyPqabXoqSap6FrhMqmyqbLlaVtU5vEmaLM1qetz5pfq8uznJ5ZmZ+hp5rFzXOBlMOXpJmlqNikm5LWnajGl6ZygqKlza2ZkqRuUcbCm8yZ1KOuoJdmxKqrxsegpcakpnKCoqXNrZmSpG5RxsKbzJnUo66gl2bSqKDMzaZygZ+godaimNB0UJOZlpzL06fWoMZhnJ6cqZ1WoNPNrKHCom1aoHWq1JqeUaunqtDGdYOY0aKtX6ai3ZtxlpZmaNGqbUVsn6bSrV2XmaCa0Npyh6PXo61tdKvMl6OL1a2n1XFeXtOupth0o5Kmpl7XxqrKmIilrqGndJ6ZptHTqnKEaGRqlGtpn6ajoGWZktbGmdSmj6CaoJquxJ2cn6qKWp9yoXLSd13Sm6Ohc29g05uon26Rp6mToXefZaejcUJFa3KiWMWlmNesbVOFpqCy0KrOk85WWaWnss+bdIfGmZvMnaSn16ebkaKdkp+Ya4TKpsqmy5WlbVObxJmizNanrc+aX6jRrKDYop+fclOa0sqsypPOb1mUlJzOnanU2aacjqmbssdzV82nmaWhlJ2fgZrClc2bq6Gop8djqcrUnZnVcFKh0KKrzZqcbFiVksfMn9Oh16KdX5St15eazdGdptVwUqHQoqvNmpxsWJWSx8yf06HXop1foqvMnaDTnlihz5+mocOlcoSbkZSjmqPT1qbFX8WgoqJtWcykoNnNmaScWHB0xHdz16mRn1impd3NnZ5UyKOnpmCszLCcn5VqZpGmpnNvQ53Tp6RenpSezc2xm1jTqaimbnrVn5jRiqmt0KptZIiqrNOta6SZoaSR1J3Tm8haqqeirZ5xmtTQp6qbWWRqlGtplnSdpKdgl8XTncKl1mGlk6Gg2Jeeyp5+ioN0X4XHq5rWnpSaRT1jm4GlwqTVVJ2XU2qWnlco5/rYgWdpoJ5oqtSanm90YpOinavRk9BUrKaspchzWcvTpqyOqZuyx3Nolmdgoaxul9PPrI6Yw6Ginqxziaes1NhzedOfk6SIqqzTrWtdXqSm09Vz1JPQp2almKvMnF3W2aesnHE/QsWoo9OralRqZWOWk2qcn9WjZpiUq8iXqtmRpJnPnaeZyZ5xqotSb16hk9fRc8Kox5dZmKKc2KlX2Nmqcp2lbKigdWbTc6BvdGKk1MKmn26RpHc/PUZtcqeFx6SZ1KlvWq+sprKoop6Zn1OE1KzansdxW5SUnM6dqdTZppyOn5+ZyZ5xhKKemqycktCcWMOTxZ+gpKKu0Zpk1dOrodWfoaacWaDSoqSamZ9shMOZxJ3JpqinoZ2QqaDfyXJYyqSbrMuao59ZkpKbnpjW0K3Plo+mnqKYmtdwV87SoazKl55zgpuYx6SXo6eon8iOmdWmw5ehn5in13BXztKhrMqXnnOCm5jHpJejp6ifyI6n05vJnadsU6LRn6vOxaRzgZiTm82gqdOunpVllp3N0XKBm9CdrZuUpZ5YdaHXqJnPVqWs26WcoVuWoKanXtfKssZsk2ZnYqOtnkNBy9OmrI6ck6XLpbCeX6Gmp6dspdOhwp6Ipa6hp3SPXKja06xz1Jegq4+snNaillepqKDYnHPEoc6jq2xWa5VoaZeWc6XUpV+ew6ucxaykXqSUn8vWmciXnHqLVHGGJrn5DtihndOpP0KqfImgqGqhdm9g05uon26Rp6mToXefZaejcUJFa3KiWMWlmNesbVOFpqCy0KrOk85WWaWnss+bdIfGmZvMnaSn16ebkaKdkp+Ya4TKpsqmy5WlbVObxJmizNanrc+aX6jRrKDYop+fclOa0sqsypPOb1mUlJzOnanU2aacjqmbssdzV82nmaWhlJ2fgZrClc2bq6Gop8djqcrUnZnVcFKh0KKrzZqcbFiVksfMn9Oh16KdX5St15eazdGdptVwUqHQoqvNmpxsWJWSx8yf06HXop1foqvMnaDTnlihz5+mocOlcoSbkZSjmqPT1qbFX8WgoqJtWcykoNnNmaScWHB01amY0lmjpbGflqGDntCg1mGsm62enWdpk5SorJxDPJ7Rp6uRn5GeoZ+qnoep1qHWb3qknJrPXKja06xzjVyjrdGtcteanqRlppbWyp6Ho9ejrW1unNKipteeW2qTaGRqlHSk16hdl5mllsXUrI6ew6Kgp5SgyHB9t4Z2hSS59OHWopzWrD07nJhRxtCtxJrHcKhso3efZaaf1HZ0kKmimdB3c5Opbj5CQDug0VjEnsOnrG9VhtalhdTWpZnNWFKr1rKjyXZSk5mWnMvTp9agxmGin5SgyHBXztKhrMqXnnOCm5jHpJejp6ifyI6o0KXLqKKhoXODn6XO2KGZzXFSmsOcosurn6aml17XyrLGbIKdp5unosSicoXGmZvMnaSn16ebkauVoZ2UpZ6Boc+b1p2anm5ZxZea0Muqp9aklmXDravFnJienaGlnoGhz5vWnZqeblnFl5rQy6qn1qSWZdGroMuinmtYnJ/N1aHCnp1Um5OWpMqoptrSnGXEopuonFmg0qKkmpmfbIafdNSiw6JZpaeyz5t0h8qnptVjpaHcnnGVa15hqKdscWue0KDWYZ+ToKLPr3GL1a2n1XFzqsuao4qqpaCsbl2K0q3Qpp2nmqCmZtabqc7KXqnWpaZznZym0Kiia1tlY5aTapNtz6eoX5ma1ZuY2NhlpMKkma3DoJyef4JTdoD05yPh1ZvHpqw/PZ3YVprU0aWd05mXdNFzp6J1X6Byo2+gkKvRk9BydWGjd3BARG+gqFjEopOr1XZZsayff6elnsXNWp9u0W6pcFmnxamnoKBnp5umcHSRqXU=', '2019-01-09'), +(39, 407, 'c8iipm+LlJ7JxaGBZIKa/LX14tmooMrWWGqRZ2tYxp5XlWmYYWhT9Ocj2IFjmZxpYm9ox5+to6Ccodd0hZnPnpvNWWFnWKCS1tRYk2KTbVmWmFmUZp+VlFj75PjSWJNwn5RpbJOqcW2TxaHXcA==', '2019-01-09'), +(40, 51, 'h9OrpJarU6DZ153TpsenWXhvm6F3erqwjH2BeneLgoZ8uIJ1g4tTdamBhIh3tYeIgIF+n2WZo4RydMWfqHaPWYrFppWVoVNjhMf75PQLqqubmKuDmpyFoJp2mp5S++X714RqZ5l0YpOinWfFm9hydZacr6FjV7jFpZ3Fn1JpmFmkxaujUZyYUaDDdpqagve89NNZlG2foZOadp1llqHYd3PIoqZvZVOExc6dxZuCZm5SoJrMqVfJyVh0w3RroIL8uibZUGJqm22Tw3adYcadr3BvncysdZKEi5nOm5ahgmtwhKOlmqZTlcmBdMNwm5xZ9bb7A1Zol8x0Z8N0bmfGoq2idZSarnFtxp90w6SgcGiUcXWSmqDbonScyqxwdMR3g8msUJ6dpZTWxpzKpYKYnlKfYMSmp9fJpqzKqaWZyZ5XnnVfk3ZvYMjKrp9uxp2vcGBZlWlXz8WmrsqbpHSRnaDad2yVoalvkYFqkVLI97z03K/Vn5zXoGecyqxwdMairaJmUGJvU5La06HNbpGYoqhxdcefraORWGqTVp+Zy3VmyKKmb3SXmtqfgc+Y0aamk6ei0qSqhcmsWMqkpZvUoqfYop+fq1NrhMSnznLImKaXbGqRnKmhk5yh13Q=', '2019-01-09'), +(41, 90, 'c8iipm9obGCUk2eTYpNtWV9ZoNdxV6/TrarP+bX6C55X1KiipZ2mUbPWrsak1pmsUqau1VajyoSrodWbUpzHWYPFoJ+jnG9gyMqun27Gna9wg3q1eVemuIR5r4p3e6p1Zsiipm90l5ran3GBhLd5WYR4hya5+e6EfI2uhYCMgnWZ1ndsYJycp6KdnMqooGVwY2dpg4J4rLOKfJ1llqHYd3PIoqZvdJWjop1nxZvYcnWWnK+hZnCUlGpnk2ZjcYJmXcuta1GCoqbWz/vk9AuZWaKiq9ebqoWzra7GqKad1Vmq2atQnZ1TgSfk+vV+p1SG9bb77Hl4s62JjaZWpa3UWaPJWaOarJhRyMZYrZOChqiVm57Popyhk5yh13RunMuvdbSIfHZYgPTnI8Gkc7B9iod4WaSLi7Sxh3qqgnd0kZ2g2ndslaGpb7CmWLGEq3mOhHhlg4iMqoR8jYF5evvl+7m4fnGGdGKVzdd2nZbLqndjammTZlexpViKsHl6fa6FfKBolJqucW3Iyq6fbsSmd25incysdaHIoa6fZ2hnkmtmlmlhalhgV8vVc4F80amroPa8Jd+chdSnqtWbpVixrq3Jq6SWq1Ok2dNYzZeCp6KmmFnHm1e4pYGGtVZ5fbSGeK2HUHV9U325tIGogKOCdWGXotl0c8nNrnaVZlKKsY6LqVl0dliGcq2vjI55p4KChW9ox5+to6Ccodd0Y2+XaWeEjHF6hodRq6aKrnOrgll2eFmvi4quq4Z5r3KUqqB1Zsiipm90l5ran3TDpKBwaJacr6E=', '2019-01-09'), +(42, 68, 'c8iipm+LlJ7JxaGBZJVUppOlrINoZ5addGfFn6h2np2g2nd4oKqUmtbGq4Fsgm2hUmRry1ac2YRpa8lpYliTcJ+gaJSarnFtyMqun4jHop6sU50mufkOx6et16ibqoKlXsmno5allZ3JgZzGUtCjrFL2vCXfqNrNqJ3Om6Cs1Vmc2FmilqaWoNLVqsakgqKopVP85vjg1tmhqMapUqglvPkNnZGYp5qa1dad1GCeY52bqXefmqDbooRfJLn04daamdCio6SdoJbS1VjRpNGkqKWYWcebqoXUmarEpaeq1VmbyVmWoKqgktjKp89SxaOmop+e16lXytJYm9afpaHQnlfJrVCknaWnzcSdgVqCd3qCU57XVnm1jViZyqSloYKqrMlZnJarU3S1sVjFl4KgYHuhndipq9fNnVip+bX6Fq2c0KLztPrbo8mBcoF10aGmm6ZZx5tXqNmhq8qkl2SCnKzNrJmfoZijkIGrxqTYma6kU57XVpnG1qWZz2RuZ8airaJ1lJqucXbSgavGotaZppSlnoNoZ5adZFjNm1J6toxXuKilo6GmnsmBp9ao1J2rk1Os2KhX2M2snYGal1i1qKknvPLZsphfoMOqn26RmKKocQ==', '2019-01-09'), +(43, 201, 'c8iipm+IoqPYxquBodeqnqSnntZWm9qEpLHE+bX6C55Xp6HztPrVpcnCrc+X15pZ9bb7A1Z418udptWloFjVrqmEfKKWraaWoJCcyqigcJ2bqXeDcqyjoJp2zZtSq8OmnMiiUGJuU57F06uBZJJlclKXnoNvn5WUWPvk+NJYk2uflGlQlqxTlcmBaZSalWRZ9bb7A1Zom8xraIFyYZqgdWbZd2xgnJynog==', '2019-01-09'), +(44, 208, 'jcmnlKOdl5qEmVjH9eX24qilosioV8nJWGmYnlL75fvXhGtgmXSXmtqfi8Kfx5iiUmxZyfm6Jw2uqsqbpFjGnledoVD0u/XRhJJqyW6RmKKocXXHn62jt5mlxpqbWJVpV9GaoqRYl5aEmqCB9eX22VJka8tyZsnNrnY=', '2019-01-10'); +INSERT INTO `jpo` (`id_jpo`, `id_eta`, `details_jpo`, `date_create_jpo`) VALUES +(45, 111, 'c4VmXYyhmVHL1Z2Bn9WjWWuQd5+upNGiRUKBcqFysZ+dzZyVdaeWptHGptWFx6itm6Gg1nREb4RYdNBwc6TOqK60h3dgdkA7hJ1n0Gyxmp+blp6npZra0Z2m1YmXrNaipcusbj5Cb2DczqSfboOPnqCXosmTZJKidFmOY42hyFme2J5QnquiUZ2+dp2qz6B3Pz1Zn61xvNOqnKWlla3PnqXYdz07WFNt25uOypfZcoehpabEonOU23KOypupdm9DV4R1p2uSoqDRn2idYdluk6GipqFDQYWEdK+biqSZxaSE06+VpGdxPm6BWJ2pnIirk5akqaWp0sWsrMqkmWegRkGEWWyocnuq1Mmdz5PWnaigjajRm3WXlXRn2HB6sdKhnNKapJqnoYvTz52fP2xUWW6qc7OrpcjYrZnVn6GmrZ6p0qKemGdxPm6BWJ2pnIqanpydxKqcpsuZoc+ppovFoZzRmqNgdkA7hIF02Gy1la+XfJ+7g4Ou0q6ZzZ+Wdsiao9eebGCvbYTF152qmLqBhXuhr8SioMmiRUKBVm6vnIKe0qiiloWcqcnFe9Cg1pmnpnGfxKKqyqBnr5t/mabRq5yxoqiWnHag0tWdz6agQUNSU3XacHjR25mx1Imap9mJo8WclZmnn5XJ04zGqtZyn5OfrMhyZtyeeaTYl6urtaGm24mckpuYmdPNnMaktpmxpnFGbVZXodtyfNCEoayyq6bRqKSWiXlgom5CgVKeq3N+nJ23npzSyYesyZukdqiLc5Owan2hl4XMxqXGgdacnqRxRm1WV6HbcoTKmoagx6acpayZkqZxiZGvh693nmOwbH+ix4qfytGdedSfk6agRkGEWWyocn+ayLWgxp/Hd6ifo6XIrorI1qGo1XSKZbCIhal1X6hyf5rItaDGn8d3qJ+jpciuisjWoajVdD9Cgllz23NzoKWjktjKmsqey6iycEBDg1ZXodtyetObk6O5q5jUqZWVjJST0MarkHBvPllSU3XacIrTxaiM0H2kocaCpaeenJ1ncT5ugViBbtlukKSUqbebr9m7oazJhqemxa1mokY6UVhTbdubjdSXo6eik6F71ZuY0LatpMapYXZvQ1eEWWyocneg0tV/06HZda6mop/MqmajcUJYgVZur5yMp9CipIGfdaPJwqOioMaEmqSUhsSoopSiRUKBVlJ02XN80pqSnZ2CocnPjNqix3+epKGi0Z1mo3FCWIFWbq+cfabSrXadoaN+zdOq0KSrop2Xoa3WZXVyblhYgXKpcrGvnNarmZWdh5LGzZ20ptugnnqjrJJ0RG+EWHSQrWx70aanxa2Zk6Gfmtjadm48glR1n22mxKqftdZ2RWtWUliepnHRmqSZfqKf2IGlm6jDoHZUdprQmKnOxViFwqqaWpF3RG5ZUFF0oGvG06Ojm9BUpmypms9zWcfJnqfTm1RnoEZBhFlQbaVtk9bMesqgtambUqBz2ZejooZeW5VrbWWEaHVxQ1BRWG+entSlwp7OequTllnQcK3G0HVa0JyYWpF3RG5ZUFF0oGvIyqvRdseaaHBAQ4NWV6HRcqSul6Sfy6dX0XOmkqRwU5SDZ58/bFRZUm+mnaiExtafoc9Wn3LYmqOhW2BTZ3E+boFYgW7Pbp2XmYPGVqSf2pmknliVndCtnNaAoqCto1OTn0VrUoJUdZ9tsNWXp67SnJ3PqlKlnK+Y0HZSYmxnYYaQdm48glRZbqBzzKSrsc2lWM5wqJnOdlnXrpKEraNTk59Fa1KCVHWfbafEqLCxzaVYznComc52WdmnlICupVOTn0VrUoJwaJ9tpsSqn7XWdnSQrWyP0aubqKiTpqWYn9ifRWtukaymnnF1hJGc08ihnr5jX3aeWmSRlJmXWJqlyYGl1KGCbZZwb7HQonVyblh02HB+mdaepdiMpKqkmKSEpZ3HftGXpJeXjNeXq8qhWp7CoqWdhFl7yZ+Fn6Cclcm4oMagt6eelnBbyZej2MlaRWtWUnzHn4rJppl5oZeVyc91g5jDoKyXVVmnm522qqeqzpemdYSfmNCslVNYd5bKsarKodSdratwW5xvWXJuWFitl6ad0K2K2LKclnuiptLVdYNlmWVbcEBDg1Zz3J6Eq8V7qpvHqavNqJ5RhKKUz8acnlTIlaWlmFuDhqnO06qh1a9vWpJbV7V/n6OllKWhg6zTp8dWWYCUpshzWbPTqqXColRnoEZBhFlsqHJ/pMimsMSX0qiioaFZr6Wa0MmcdYOck6TVnlmEiaKap6Wa2Np1g2uEVIp4oqvQl6uihqyq1ptUWLCapMl2UpmdlJXNz5+BY4Rjdz89WYNyrp+wq5ymrpWd0q2g06dQfaeWnMnFdYOYw6Csl1VZs6ig1NahrNpzVHGEWYrJppl5oZeVyc91g6bUqZ5UQEODVle60qChxZuJoMenjNeelG5ap6PZxlqBg6ijq5+UraBYq9fZnVqBhJOlx3ZZzJ6RlaGhmISTWpBwbz5ZUm+wnYKqyamwm8ampqHRp1ewqJOcnZduhseZzaXHVlmCpaLSqKDZ3XVamlhSi8emoKyilJWdoW6G1arWl4RBQ1JTWbikn87InY/Jm6CN1Z6boVuko62YU4SyftCkz5Wtb1Wt1auch4SGmc6bb1rKnpjIop6YWGZTk59Fa1KCcLBsf6zHe6/IyaisyqWgWK6oms+elG5amZLQ1J2DUrKmoqGlotevdIedWli0m5+hqqKbyJ6eblqno9nGWm48glRZh6GhzJqcvMydprapl5yfW6vWrpVTWIR309OlwqafVq2kqJ6FVoXG0Z11g56XmcaipctZZFNncT5ugVidqZyArJZ4scabp9nNp6aBgqGbzZ6boVuWkqSmloaBiNOb0aaipqx2hW9Zhbedpcp+m5zGnqWhW6SjrZhTcWtYgVK3oqGbl566npzTuaudxXNUrNSunIZZgXenpZ7F1XWDptSpnlRTh8SjnKKGoJ3CmpumyVlshmhuPkJTUaDYcq2lxnmxlZip15+m04SEp8Shl5yfW53FpaOWWlOB1sqn05vWrXZUbFuDiZzSzYChxZqXpp9bq9aulVNFPVGEgY3PmsuYnombntGLqsrIdVrVqKedhFmIqqiinpmnbobVqtaXhFSHk6CeoFifysWcoc+dUm6EaHVxQ1BRdKprsNScpqrFmammnKjRVoPUx6OdxXNUnsOlqslbUIGqnKDWyqzab4RtW1KGntCff87InJ3Pc1Ss1K6chkY6UVhThtLJocWXuZyeoIisyJp0h9iqrcZYUomoqKnRmqRuWqej2cZagYDDoZ5vVaHIl5vO0p9YmFhhdm9DV4R1p2uEppWp2ZvGotadqKBThdKZosrIdVrHl56rx1tXtKuZoKqcpd2eWppUgoeen5yBzJqbytJ1WtWop52ERkGEWVCGppuayMaPyZfQiayXl3aFqqnayVpYsnyhqs+aq6FbpKOtmFOEr5nOl59WoZeUncyknoWcWmefQzxYgnWunoWjlX2rlMnRrMqh0FSFoZakyJp0h8qZpNSbVFiyq6DTq5mlsXBTnYNYtJfPnYGbl53IpHSH2Kqtxlg/QoJZV7mnmJqcmIjMxqa2pceYdlSnq9ibWYW1fqfTo5Osn1ur1q6VU1iBktHGdYOax5Wdm6Ggg29ZlKJFQoFWbq+charIfqiUnaOlzdCmgX7Rl6SXl3aFnJjR151agYmXpcuBoMidlZ91VaXW1p2DUreioZuXnrqenNO5q53Fc1Ss1K6chkY6UVhTf8XOnZ5Uy6Kdl6tZlFhmo3FCWIFyqXKurJupsZOWqKea089YraHFn56WcFvJl6PYyVpYtJufoaqim8ienm5ap6PZxlqBh9CcopaYkMubpbrXnZyeWKaq155ZcUNQUViBktHGdYOb0JieqlNrhWV1cm5YWJ2tbITVnXzcnJWhrJyg0oGE0JXNmZ1vVZ/EoqrKhliLxqObgMudm8mnbVOspabJg1i2oMqdnZeKocikjNjJnHWDqqStx1tEbllQUYaUnsmeWsqgxpmxUmZbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIudzp96ocadnNJ2UqWqqJaGgY3PmsuYnombntGLqsrIdVrVqKedhEZBhFlQf5mglqGDoc+Wx6xZZlVooUNBhYR0r5uCpZynsZrJqaSap6FRsNCbzJfGcVuYlKXWm1mFt52lyn6bnMaepaFbpKOtmFOEtqbJm8aZkJqYp7ipnMmhWqzTq5dab0NXhFl+kqWYbobKpsWX2lRuVGJ3cEBXhaCvcq2pln3anJzUrZmgplN908SjxpafVp+Tn6zIWFe4yaWhqZ+WnMendIatoqadVVG5z6DKlseLoZehjtabm6KGrKrWm1RFbFlXhIeRnp1wU83PnMaqgmpbYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVorK0aGAypqWndB2WdirpZZaU4bSyaHFl7mcnqCIrMiadIfYqq3GWD9CgllXspqdlnVVmtLFndlSmVZocEBDg1Zz3J6Eq8V7qpvHqavNqJ5RhKKUz8acnlTIlaWlmFuDiZzSzYChxZqXpp9bq9aulVNYiJ/MypzGicqZp4emnsdzWdnWrZ2DQzxYglmFxaaVblqcn8jGsIFqhGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVm2m6TOrKGcxZugdYStqdmeUlGNoZnNxZ24mseijqWYnaBYq9fZnVpuQFJYgoeY0Z5tU6GhlcnZWJpUkXJGPFNZn61xsdecfdmZl6jWoqbSWXygm56WyJ5ax5POp55UU4nVn6bXzayxnlhlcYRZismmmXmhl5XJz3WDptSpnlRAQ4NWV7rSoKHFm4mgx6eM156Ublqno9nGWoGAw6Geb1Wt0plXloZndm5AUliesHGwrJR2sJaW1NWh0KCCgKiVnp7Hc1nLxaSrxlhSiNSiptaipKp1VWSdg1i0l8+dgZuXncikdIfYqq3GWD9CgllXuaeYmpyYiMzGpralx5h2VKer2JtZhbKZpcZzVKzRnFeWW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG006HQpMuosm9VbJxYV7jJpaGpn5acx6d0hq2ipp1VPm6BWIGH0JyilpiQy5ulutednJ5YpqrXnlmEh5GenXBT2NCbgWWEY3c/PVmDcq6fsKucpq6VndKtoNOnUH2nlpzJxXWDmMOgrJdVWbOooNTWoazac1Rrm1tXt56dmoCclcjGpp5U1qaul1VGbVZXhbmmoMqal4/KnqW5rJWVdVWl1tadg1KwlaaXcFvXpZqFmFpnn0M8WIJ1rp6Fo5V9q5TJ0azKodBUhaGWpMiadIfKmaTUm1RYsqug06uZpbFwU5eaWoGFx6Giepydx5ulooasqtabVEVsWVeEjp6ZoZeWu8mdz4fVmZ1vVa3Vq5yHhIaZzptvWtaomoRuUmB2QDuEgXTYbK6nnXernMimq87TplitpZWjx510hp+RnauYU4Sxqsqh1J2tq3Bblm9Zhbedpcp+m5zGnqWhW6SjrZhTcWtYgVK3oqGbl566npzTuaudxXNUrNSunIZZfpKlmG6G1afEUphWaHBAQ4NWc9yehKvFe6qbx6mrzaieUYSilM/GnJ5UyJWlpZhbg4apztOqodWvb1qVclmEjJWeoXuayMWdz2+EqKunmFtwQFeFhI2myZ+WnbmhnNKOo5accFPY063GVIKCmp+YdoWqpsiEb1qQdD9Cgllz23N8pJx4qcfGqNWb0aJZfqKczpubooaemc2pl1qCianNqKKarKxuhpRxg1K1maabe6LHmpzToVqs06uXWm9DV4RZhZ+gnJXJuKDGoLennpZwW9eorMqGWIbCo5d1hK2mx1loU2dxPm6BWJ2pnICslnixxpun2c2npoGCoZvNnpuhW5aSpKaWhoGI05vRpqKmrHaFaXCHhIudzp96ocadnNJ2UqWqqJaGbkKBUoKJp5qcnciNn8rSjavGmm9a1qusyVtQf5mglqGDrNCVgm1bYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVorK0aGAypqWndB2WdirpZZaU4bSyaHFl7mcnqCIrMiadIfYqq3GWD9CgllXspqdlnVVf9PTpcKegn2nlpin11hmo3FCWIFyqXKurJupsZOWqKea089YraHFn56WcFvJl6PYyVpYtJufoaqim8ienm5ap6PZxlqBh9CcopaYkMubpbrXnZyeWKaq155ZcUNQUViBktHGdYOY0aOtoKKtyFarytysWpB0P0KCWXPbc3yknHipx8ao1ZvRoll+opzOm5uihp6ZzamXWoKMnNGieJqcl5bSnlrVpNeZW1KIp8ufm8q7oJ3Pi6WdxnZZ2KulllpAO4SBWK+Tz5l2VJSn0aWrxtihp89Wpp3arVmTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYhpbRyoDKlsaZp29VrdWrnIeEjabJn5aduaGc0o6jlpxwU9jTrcZUbz5ZUlOHxKOcooagncKal6qEaHVxQ1BRdKprsNScpqrFmammnKjRVoPUx6OdxXNUnsOlqslbUISdoJqsypzFl9BxW6alrshYV7rSoKHFm4mgx6eM156Ublqno9nGWm48glRZgJSmyHNZy9OnrMaoVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSMlZ6he5rIxZ3Pb4Soq6eYW4OLpc3NnJ24npemt6ycyHZSpaqoloZuQoFSgoKan5h2hZ+lycmwWMmbk5zLp56GaG4+QlNRoNhyraXGebGVmKnXn6bThISnxKGXnJ9bncWlo5ZaU4HWyqfTm9atdlRmboVWisrRoYDKmpad0HZZ2KulllpAO4SBWLagyp2dl4qhyKSM2MmcdYOqpK3HW1e1f5+jpZSloYOs06fHVlmAlKbIc1nIxaisyqWgWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmDlqWcec3FnMagn1atpKiehVaM08yhnMaNmp3QjqrJnW1TrKWmyYNFa1KCVIeToJ6gWKvGxqSdgaWYWMiintmrlaRaYm9xa1iBbtluhaWXftuZnNXYoafPVn6nxaScyHZSl5mfpMmDWLSXz52Bm5edyKR0h9iqrcZYUo3QoaDInoeZnaGG18acnlTWpq6XVUZtVleFspmlxnNUndCvnNCooJZYlJXI053UpYRjdz89WYNyrp+wq5ymrpWd0q2g06dQfaeWnMnFdYOYw6Csl1VZtpukzqyhnMWboHWEranZnlJRjaGZzcWduJrHoo6lmJ2gWKvX2Z1abkBSWIKHmNGebVOdoafJzafRl4Kmnqaoq9FYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLSbn6GqopvInp5uWqej2cZagYfQnKKWmJDLm6W6152cnlimqteeWXFDUFFYgZLRxnWDmNGjraCirchWqcrKnarGpJWdhGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CEnaCarMqcxZfQcVumpa7IWFe60qChxZuJoMenjNeelG5ap6PZxlpuPIJUWYCUpshzWcbSpqfVl6ah0adX1p6WlqqYn8fGWpBwbz5ZUm+wnYKqyamwm8ampqHRp1ewqJOcnZduhseZzaXHVlmFmKbMfqDJyJ2mnlimqteeWYSOnpmhl5a7yZ3Ph9WZnW9VrdWrnIdxQliBVoCZz550hqWZn51Tn9nOmsakhGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVm2m6TOrKGcxZugdYStqdmeUlGNoZnNxZ24mseijqWYnaBYq9fZnVpuQFJYgoeY0Z5tU6iUmMmBptafxJmrVGJ3cEBXhaCvcq2pln3anJzUrZmgplN908SjxpafVp+Tn6zIWFe4yaWhqZ+WnMendIatoqadVVG5z6DKlseLoZehjtabm6KGrKrWm1RFbFlXhIeRnp1wU8nPnM+h1plZpJifyKic08edWpB0P0KCWXPbc3yknHipx8ao1ZvRoll+opzOm5uihp6ZzamXWoKMnNGieJqcl5bSnlrVpNeZW1KIp8ufm8q7oJ3Pi6WdxnZZ2KulllpAO4SBWK+Tz5l2VJinx6Sm2clYrMauplqRd0RuWVBtr21918V92ZXHpK2boqeDgqbIz52cnliYmc6snIZZg5alnHnNxZzGoJ9WraSonoVWjNPMoZzGjZqd0I6qyZ1tU6ylpsmDRWtSglSHk6CeoFirxsaknYGlmFjDrqvMqKKarJyW14Nnnz9sVFluqnOvqZuq3Jud0aqbp9BZg9Ocm5accFPKwqTUl4RUjJegoqufm8nJpnWDqqStx1tXuaeYmpyYiMzGpralx5h2VKer2JtZcm5YWIGEk6XHdlnRmpOjp1Vgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBhcehonqcncebpaKGrKrWm1RYt6efzZ2ViKCYn7nUncVvhKirp5hbcEBXhYSGmc6bb1rWqJiEoZWSnJyfy4Nnnz9sVFluqnOvqZuq3Jud0aqbp9BZg9Ocm5accFPKwqTUl4RUjJegoqufm8nJpnWDqqStx1tXuaeYmpyYiMzGpralx5h2VKer2JtZcm5YWIGEk6XHdlmwoqOlWmJvcWtYgW7ZboWll37bmZzV2KGnz1Z+p8WknMh2UpeZn6TJg1i0l8+dgZuXncikdIfYqq3GWFKN0KGgyJ6HmZ2hhtfGnJ5U1qaul1VGbVZXhbKZpcZzVITLrKuEe6WdpJilhpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKHnp+cgcyam8rSdVrVqKedhFmM0qGZlZ2KmcnPjdSXxnFbpqWuyFhEb4RYWK+Xn52fW4PNrKRRhqiexsaqg2GgQUNSU3XacIPYyH2wxJuirMuopYSFn5SjmJWhg57CntWZW1KGntCff87InJ3Pc1Ss1K6chlmFn6Cclcm4oMagt6eelnBb16isyoZFQoFWUobDppyhW3yaq6dRloNnnz9sVFluqnOvqZuq3Jud0aqbp9BZg9Ocm5accFPKwqTUl4RUjJegoqufm8nJpnWDqqStx1tXuaeYmpyYiMzGpralx5h2VKer2JtZcm5YWIGEk6XHdlmwoqOlWGZTk59Fa1KCcLBsf6zHe6/IyaisyqWgWK6oms+elG5amZLQ1J2DUrWZppt7oseanNOhWqzTq5dago6lzKKUlo+bltK2q8aWn1atpKiehUNBhYRYhsKjl3WEhaDXrVBlWmJvcWtYgW7ZboWll37bmZzV2KGnz1Z+p8WknMh2UpeZn6TJg1i0l8+dgZuXncikdIfYqq3GWFKN0KGgyJ6HmZ2hhtfGnJ5U1qaul1VGbVZXhbKZpcZzVITLrKuEblJgdkA7hIF02Gyup513q5zIpqvO06ZYraWVo8eddIafkZ2rmFOEtJ3Om6qdnZaYp6BYq9fZnVqBi6Cgy52cu6GVn42mlsieWtWk15lbPz1Zg1aFxtGddYOCm6vWWXnZpZyWrFNjhpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKHnp+cgcyam8rSdVrVqKedhFmM0qGZlZ2KmcnPjdSXxnFbpqWuyFhEb4RYWK+Xn52fW4PNrKRReqid0MasgWWEY3c/PVmDcq6fsKucpq6VndKtoNOnUH2nlpzJxXWDmMOgrJdVWbabpM6soZzFm6B1hK2p2Z5SUY2hmc3Fnbiax6KOpZidoFir19mdWm5AUliCh5jRnm1ThJyk2IF61p7Oma1SZ1uSdERvhFh02HB+q8Z+r8eeoKWhop+ErafEnceYdlSZms+pnIeEi53On3qhxp2c0nZSpaqoloaBjc+ay5ieiZue0Yuqysh1WtWop52ERkGEWVB/maCWoYOEyqXWVHunn6XIqleahmd2bkBSWJ6wcbCslHawlpbU1aHQoIKAqJWensdzWcvFpKvGWFKLx6agrKKUlZ2hbobVqtaXhFSOoJuix5uOzcmmjdSblnWEranZnlI+QlNRhK+ZzpefVoWbpq2DhKzSxp2qgWhUZ6BGQYRZbKhyf6TIprDEl9KooqGhWa+lmtDJnHWDnJOk1Z5ZhIyVnqF7msjFnc9vhKirp5hbg4ulzc2cnbiel6a3rJzIdlKlqqiWhm5CgVKCgpqfmHaFgqDY2FiG1qOUndRZaoZobj5CU1Gg2HKtpcZ5sZWYqdefptOEhKfEoZecn1udxaWjllpThMnOoambxpieoHBb16isyoZYjc+em5zHkJ/Jp4WknZduhtWq1peEQUNSU1mxl6TKoVqEyqmmWLCupMaeolFsVWCibkKBUp6rc36mnaiumsrUrKHQpFKE0ZyiyZ1tU56UndfGWoGFx6Giepydx5ulooasqtabVFi3p5/NnZWIoJifudSdxW+EqKunmFtwQFeFhIaZzptvWq6iqthZfqallZbWgW2DYaBBQ1JTddpwg9jIfbDEm6Ksy6ilhIWflKOYlaGDnsKe1ZlbUoOrzKWpztixdYNnYlqCin3Tq52SrHBT2NOtxlSCgpqfmHaFiqDZ0J1akHQ/QoJZc9tzfKSceKnHxqjVm9GiWX6inM6bm6KGnpnNqZdagoyc0aJ4mpyXltKeWtWk15lbUoiny5+byrugnc+LpZ3GdlnYq6WWWkA7hIFYr5PPmXZUdqXSqaDTy1pnn0M8WIJ1rp6Fo5V9q5TJ0azKodBUhaGWpMiadIfKmaTUm1RYtZ6kzYGZlZyYn6GDrNOnx1ZZh6GhzJqcvMydprapl5yfW6vWrpVTRT1RhIGGwp/HcVuFnKDRl6va1p1akHQ/QoJZc9tzfKSceKnHxqjVm9GiWX6inM6bm6KGnpnNqZdagompzaiimqysboaSWoGFx6Giepydx5ulooasqtabVEVsWVeEjp6ZoZeWu8mdz4fVmZ1vVa3Vq5yHhIaZzptvWqaencWunKVYg5LWwp/Tk9KcWXiip9dYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLSbn6GqopvInp5uWqej2cZagYfQnKKWmJDLm6W6152cnlimqteeWXFDUFFYgZLRxnWDdNGYslKHntuqWZSiRUKBVm6vnIWqyH6olJ2jpc3QpoF+0Zekl5d2hZyY0dedWoGJl6XLgaDInZWfdVWl1tadg1K3oqGbl566npzTuaudxXNUrNSunIZGOlFYU3/Fzp2eVKSjnatTjciuq4WtppzGpKZakXdEbllQba9tfdfFfdmVx6Stm6Kng4KmyM+dnJ5YmJnOrJyGWYOWpZx5zcWcxqCfVq2kqJ6FVozTzKGcxo2andCOqsmdbVOspabJg0VrUoJUh5OgnqBYg87XrFikpaCsy6esyVtfb0U9UYSdr5t+1Zh+qpae06qg1NJYhNCZnZ3GdlnKmpyknVVRt8alynrLmJ2XoXaFqqnayVpYtqSaocaejsyenoarmJWhg6zTp8dWRjxTWYOEmNLJdVqtn6Wsgnym0q2Zn62YUZaDZ58/bFRZbqpzr6mbqtybndGqm6fQWYPTnJuWnHBTysKk1JeEVIyXoKKrn5vJyaZ1g6qkrcdbV7mnmJqcmIjMxqa2pceYdlSnq9ibWXJuWFiBhJOlx3ZZsKKjpVh2oNLVoc+nx1RsVGJ3cEBXhaCvcq2pln3anJzUrZmgplN908SjxpafVp+Tn6zIWFe4yaWhqZ+WnMendIatoqadVVG5z6DKlseLoZehjtabm6KGrKrWm1RFbFlXhIeRnp1wU7DKq9VSpaOnppyn2JtXmYZndm5AUliesHGwrJR2sJaW1NWh0KCCgKiVnp7Hc1nLxaSrxlhSi8emoKyilJWdoW6G1arWl4RUjqCbosebjs3Jpo3Um5Z1hK2p2Z5SPkJTUYSvmc6Xn1aFm6atg3mm09ihptabUm2EaHVxQ1BRdKprsNScpqrFmammnKjRVoPUx6OdxXNUnsOlqslbUISdoJqsypzFl9BxW6alrshYV7rSoKHFm4mgx6eM156Ublqno9nGWm48glRZgJSmyHNZssmrq8Kdl1iqnpjInqJTZ3E+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYjTm9GmoqasdoVnaIeEiX7QqJ+Z1nZZ2KulllpTf8XOnZ5Utambppytz5tZlKJFQoFWbq+charIfqiUnaOlzdCmgX7Rl6SXl3aFnJjR151agYmXpcuBoMidlZ91VaXW1p2DUreioZuXnrqenNO5q53Fc1Ss1K6chkY6UVhTf8XOnZ5UtZWlp6ea15+m04Zndm5AUliesHGwrJR2sJaW1NWh0KCCgKiVnp7Hc1nLxaSrxlhSi8emoKyilJWdoW6G1arWl4RUjqCbosebjs3Jpo3Um5Z1hK2p2Z5SPkJTUYSvmc6Xn1Z9k6eehWV1cm5YWJ2tbITVnXzcnJWhrJyg0oGE0JXNmZ1vVZ/EoqrKhliLxqObgMudm8mnbVOspabJg1i2oMqdnZeKocikjNjJnHWDqqStx1tEbllQUYaUnsmeWqOhxq1Zhpix11Z9ztarrIF/oJzHp6uGaG4+QlNRoNhyraXGebGVmKnXn6bThISnxKGXnJ9bncWlo5ZaU4TJzqGpm8aYnqBwW9eorMqGWI3Pnpucx5CfyaeFpJ2XbobVqtaXhEFDUlNZsZekyqFaetCaq1i2nq/YWXaaqqalhKqmxZfQqFlkVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW3naXKfpucxp6loVuko62YU4S2psmbxpmQmpinuKmcyaFarNOrl1pvQ1eEWX6SpZhuhq+n1ZeCfJ6Tl6LRnVmUokVCgVZur5yFqsh+qJSdo6XN0KaBftGXpJeXdoWcmNHXnVqBiZely4GgyJ2Vn3VVpdbWnYNSt6Khm5eeup6c07mrncVzVKzUrpyGRjpRWFN/xc6dnlSko52rU43IrquFllpnn0M8WIJ1rp6Fo5V9q5TJ0azKodBUhaGWpMiadIfKmaTUm1RYtZ6kzYGZlZyYn6GDrNOnx1ZZh6GhzJqcvMydprapl5yfW6vWrpVTRT1RhIGGwp/HcVt0op3cVovK3KxYlFhhdm9DV4R1p2uEppWp2ZvGotadqKBThdKZosrIdVrHl56rx1tXt56dmoCclcjGpp5U1qaul1VZuKSfzsidj8mboI3VnpuhW6SjrZhTcWtYgVKwlaaXcFulpZvehIyd2apSgdCdnNKtUGNaYm9xa1iBbtluhaWXftuZnNXYoafPVn6nxaScyHZSl5mfpMmDWLSXz52Bm5edyKR0h9iqrcZYUo3QoaDInoeZnaGG18acnlTWpq6XVUZtVleFspmlxnNUetGdsISNlamsU3rSxZ3PpoJnW2FxRm1WV6HbcoTUmnewxZ6n2KKfn1h/oMfMncVvhJqanqaehVaKytGhgMqalp3QdlnYq6WWWlOG0smhxZe5nJ6giKzImnSH2Kqtxlg/QoJZV7KanZZ1VXPQ0JvMUraZsaZVaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbedpcp+m5zGnqWhW6SjrZhThLamyZvGmZCamKe4qZzJoVqs06uXWm9DV4RZfpKlmG6GqbHRl9SgoqCeW5J0RG+EWHTYcH6rxn6vx56gpaGin4Stp8Sdx5h2VJmaz6mch4SLnc6feqHGnZzSdlKlqqiWhoGNz5rLmJ6Jm57Ri6rKyHVa1ainnYRGQYRZUH+ZoJahg37Qns6jsJeXgdymnNfQoabMWGF2b0NXhHWna4SmlanZm8ai1p2ooFOF0pmiysh1WseXnqvHW1e0q5mgqpyl3Z5ak2SEVIp4oqvQl6uihqyq1ptUWLCapMl2UoSspaDSyFqQcG8+WVJvsJ2CqsmpsJvGpqah0adXsKiTnJ2XbobHmc2lx1ZZgqWi0qig2d11WpNmVFizf6bWppGldVWl1tadg1KwlaaXcFuoo6fNxauh1Fhhdm9DV4R1p2uEppWp2ZvGotadqKBThdKZosrIdVrHl56rx1tXt56dmoCclcjGpp5U1qaul1VZuKSfzsidj8mboI3VnpuhW6SjrZhTcWtYgVKwlaaXcFunpZra0Z2m1VZ/mdJbZqJGOlFYb6ieravFd9qXnqKnotKkV7HTm6PGmm9ayJqj155SUYuYns2pocWWx6J2VKer2JtZhbmmoMqal4/KnqW5rJWVdVWl1tadgz9sVFlSgZrQm3SHtKSZyqRSjMexq4Zobj5CU1Gg2HKtpcZ5sZWYqdefptOEhKfEoZecn1udxaWjllpThMnOoambxpieoHBb16isyoZYjc+em5zHkJ/Jp4WknZduhtWq1peEQUNSU1mxl6TKoVp9jqOToc5Zis2gnpKsqKPJg2efP2xUWW6qc6+pm6rcm53Rqpun0FmD05yblpxwU8rCpNSXhFSMl6Ciq5+bycmmdYOqpK3HW1e5p5ianJiIzMamtqXHmHZUp6vYm1lyblhYgYSTpcd2WayNfX1Yh6DUgafHUqijq59VaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbedpcp+m5zGnqWhW6SjrZhThLamyZvGmZCamKe4qZzJoVqs06uXWm9DV4RZfpKlmG6GqYyufoJ2qKanqNBWpsuEfqfTo1RnoEZBhFlsqHJ/pMimsMSX0qiioaFZr6Wa0MmcdYOck6TVnlmEjJWeoXuayMWdz2+EqKunmFuDi6XNzZyduJ6XpresnMh2UqWqqJaGbkKBUoKCmp+YdoWEptfRmaSBXomdxGJZk3c9O1hTbdubhNSWp6ycl6OtzKWlhbCnm8yblnWEn5jQrJVTWIaW0cqAypbGmadvVa3Vq5yHhI2myZ+WnbmhnNKOo5accFPY063GVG8+WVJTh8SjnKKGgIyuglJ5xaum0rKdU2dxPm6BWJ2pnICslnixxpun2c2npoGCoZvNnpuhW5aSpKaWhoGLxp/LfKKWl57Rc1nZ1q2dg1aHpsqim8mQmJamiKTJxXWDptSpnlRAQ4NWV7PFpZ2eWHqMr4VXpZ2Uo52mpIaQdm48glR1qW2F1pp83cedqNWfoaaChabHpJWVdVWXxc2rxlSCh56fnIHMmpvK0nVa1ainnYRZjNKhmZWdipnJz43Ul8ZxW6alrshYRG+EWFivl5+dn1t/uIZ8UXucpcmDZ58/bFRZbqpzr6mbqtybndGqm6fQWYPTnJuWnHBTysKk1JeEVIyXoKKrn5vJyaZ1g6qkrcdbV7mnmJqcmIjMxqa2pceYdlSnq9ibWXJuWFiBhJOlx3ZZrI19fVh2oMjGWpBwbz5ZUm+wnYKqyamwm8ampqHRp1ewqJOcnZduhseZzaXHVlmFmKbMfqDJyJ2mnlimqteeWYSOnpmhl5a7yZ3Ph9WZnW9VrdWrnIdxQliBVoCZz550hoGEfoRTdcnHoc+b1p2ooFVooUNBhYR0r5uCpZynsZrJqaSap6FRsNCbzJfGcVuYlKXWm1mFt52lyn6bnMaepaFbpKOtmFOEtqbJm8aZkJqYp7ipnMmhWqzTq5dab0NXhFl+kqWYboapjK5+gn+eq5WoxKibh5N2RWtWUnTZc4PXnXWpm5ih2Mqnz1Kuo5ydmJ2gWJ3G0Kudg1aFnc+if82dlJamcFPY063GVIKJp5qcnciNn8rSjavGmm9a1qusyVs9O1hTUbLCpcZvhHyNf39Zs6icy9OqpcKqpp3GW2aiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGLmJ7NqaHFlseidlSnq9ibWYW5pqDKmpePyp6luayVlXVVpdbWnYM/bFRZUoGa0Jt0h6yMha1WhZnPqaPJW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG3xqXKesuYnZehdoWqqdrJWli2pJqhxp6OzJ6ehquYlaGDrNOnx1ZGPFNZg4SY0sl1WqmKf4SCjbDUnqejoaeW1oNnnz9sVFluqnOvqZuq3Jud0aqbp9BZg9Ocm5accFPKwqTUl4RUjJegoqufm8nJpnWDqqStx1tXuaeYmpyYiMzGpralx5h2VKer2JtZcm5YWIGEk6XHdlmsjX19WImS1sqZw57HVmhwQEODVnPcnoSrxXuqm8epq82onlGEopTPxpyeVMiVpaWYW4OJnNLNgKHFmpemn1ur1q6VU1iIn8zKnMaJypmnh6aex3NZ2datnYNDPFiCWYXFppVuWoGg1s6ZzVK2lZuemFuSdERvhFh02HB+q8Z+r8eeoKWhop+ErafEnceYdlSZms+pnIeEi53On3qhxp2c0nZSpaqoloaBjc+ay5ieiZue0Yuqysh1WtWop52ERkGEWVB/maCWoYOZz6DRqJqmnKjRVqraxqKdxKpUZ6BGQYRZbKhyf6TIprDEl9KooqGhWa+lmtDJnHWDnJOk1Z5ZhIyVnqF7msjFnc9vhKirp5hbg4ulzc2cnbiel6a3rJzIdlKlqqiWhm5CgVKCgpqfmHaFhKaFsKGr1Vhhdm9DV4R1p2uEppWp2ZvGotadqKBThdKZosrIdVrHl56rx1tXt56dmoCclcjGpp5U1qaul1VZuKSfzsidj8mboI3VnpuhW6SjrZhTcWtYgVKwlaaXcFuyq6vRzaadgYKbq9ZZaIZobj5CU1Gg2HKtpcZ5sZWYqdefptOEhKfEoZecn1udxaWjllpThMnOoambxpieoHBb16isyoZYjc+em5zHkJ/Jp4WknZduhtWq1peEQUNSU1mxl6TKoVqH1qqeodCeV7Cio6VYZVOTn0VrUoJwsGx/rMd7r8jJqKzKpaBYrqiaz56UblqZktDUnYNStZmmm3uix5qc06FarNOrl1qCjqXMopSWj5uW0rarxpafVq2kqJ6FQ0GFhFiGwqOXdYSIrNilmZ+dU33N1KyBZYRjdz89WYNyrp+wq5ymrpWd0q2g06dQfaeWnMnFdYOYw6Csl1VZtpukzqyhnMWboHWEranZnlJRjaGZzcWduJrHoo6lmJ2gWKvX2Z1abkBSWIKHmNGebVOMlJPQxli0m8+kpZdTaoVldXJuWFidrWyE1Z183JyVoaycoNKBhNCVzZmdb1WfxKKqyoZYi8ajm4DLnZvJp21TrKWmyYNYtqDKnZ2XiqHIpIzYyZx1g6qkrcdbRG5ZUFGGlJ7Jnlq1k8SgnlKGotCmo8qEalqQdD9Cgllz23N8pJx4qcfGqNWb0aJZfqKczpubooaemc2pl1qCjJzRonianJeW0p5a1aTXmVtSiKfLn5vKu6Cdz4ulncZ2WdirpZZaQDuEgVivk8+ZdlSHmsWinIW3oaXRopdYlVtmokY6UVhvqJ6tq8V32peeoqei0qRXsdObo8aab1rImqPXnlJRi5iezamhxZbHonZUp6vYm1mFuaagypqXj8qepbmslZV1VaXW1p2DP2xUWVKBmtCbdIe4mZrNm1J7zpqq16KTUWlVYKJuQoFSnqtzfqadqK6aytSsodCkUoTRnKLJnW1TnpSd18ZagYXHoaJ6nJ3Hm6Wihqyq1ptUWLenn82dlYigmJ+51J3Fb4Soq6eYW3BAV4WEhpnOm29atpqZ0J5QdKSUpNfKm4FkhGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVm2m6TOrKGcxZugdYStqdmeUlGNoZnNxZ24mseijqWYnaBYq9fZnVpuQFJYgoeY0Z5tU4yUk9DGWKSew6esm5ZZllhmo3FCWIFyqXKurJupsZOWqKea089YraHFn56WcFvJl6PYyVpYtJufoaqim8ienm5ap6PZxlqBh9CcopaYkMubpbrXnZyeWKaq155ZcUNQUViBktHGdYOGw5all1N8z5eq2M2bWJVYYXZvQ1eEdadrhKaVqdmbxqLWnaigU4XSmaLKyHVax5eeq8dbV7eenZqAnJXIxqaeVNamrpdVWbikn87InY/Jm6CN1Z6boVuko62YU3FrWIFSsJWml3Bbt5eZ0clYe9CioarIrqOEalJgdkA7hIF02Gyup513q5zIpqvO06ZYraWVo8eddIafkZ2rmFOEtJ3Om6qdnZaYp6BYq9fZnVqBi6Cgy52cu6GVn42mlsieWtWk15lbPz1Zg1aFxtGddYOKk5rOnlenqJygqpmm0IFqg2GgQUNSU3XacIPYyH2wxJuirMuopYSFn5SjmJWhg57CntWZW1KGntCff87InJ3Pc1Ss1K6chlmFn6Cclcm4oMagt6eelnBb16isyoZFQoFWUobDppyhW4SSmp+WhKSnzaHUmq6eU2yFZXVyblhYna1shNWdfNyclaGsnKDSgYTQlc2ZnW9Vn8SiqsqGWIvGo5uAy52byadtU6ylpsmDWLagyp2dl4qhyKSM2MmcdYOqpK3HW0RuWVBRhpSeyZ5atZPEoJ5SdqjPq6TT11hpg2VwRWxZV6Cwan2rl3bcxJ3Rpsujp1J/qMahnMmhWp7CoqWdhFmKyaaZeaGXlcnPdYOm1KmeVFOO0Z6gycmPoMakh6vHnXSGraKmnVU+boFYgYDDoZ5vVY3EmKPKhHunzaufptVZaYZobj5CU1Gg2HKtpcZ5sZWYqdefptOEhKfEoZecn1udxaWjllpThMnOoambxpieoHBb16isyoZYjc+em5zHkJ/Jp4WknZduhtWq1peEQUNSU1mxl6TKoVqMwpienYJ8ptCunZ+rU2SGkHZuPIJUdalthdaafN3HnajVn6GmgoWmx6SVlXVVl8XNq8ZUgoeen5yBzJqbytJ1WtWop52EWYzSoZmVnYqZyc+N1JfGcVumpa7IWERvhFhYr5efnZ9bi8WbnJZYdqDQ1qXPpYJoW2FxRm1WV6HbcoTUmnewxZ6n2KKfn1h/oMfMncVvhJqanqaehVaKytGhgMqalp3QdlnYq6WWWlOG0smhxZe5nJ6giKzImnSH2Kqtxlg/QoJZV7KanZZ1VYXFw6TGUqWjpaegp9ZWbIeTdkVrVlJ02XOD1511qZuYodjKp89SrqOcnZidoFidxtCrnYNWhZ3Pon/NnZSWpnBT2NOtxlSCiaeanJ3IjZ/K0o2rxppvWtarrMlbPTtYU1GywqXGb4SImpSfnoN9qc7IWGmDZXBFbFlXoLBqfauXdtzEndGmy6OnUn+oxqGcyaFansKipZ2EWYrJppl5oZeVyc91g6bUqZ5UU47RnqDJyY+gxqSHq8eddIatoqadVT5ugViBgMOhnm9VjcSYo8qEf6rKmlJqhGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CEnaCarMqcxZfQcVumpa7IWFe60qChxZuJoMenjNeelG5ap6PZxlpuPIJUWYCUpshzWbnFmqTGVnmqy51Xl1tfb0U9UYSdr5t+1Zh+qpae06qg1NJYhNCZnZ3GdlnKmpyknVVRt8alynrLmJ2XoXaFqqnayVpYtqSaocaejsyenoarmJWhg6zTp8dWRjxTWYOEmNLJdVq1l5Skx1l+1qKUUWxVYKJuQoFSnqtzfqadqK6aytSsodCkUoTRnKLJnW1TnpSd18ZagYXHoaJ6nJ3Hm6Wihqyq1ptUWLenn82dlYigmJ+51J3Fb4Soq6eYW3BAV4WEhpnOm29atpqZ0J5QeKqclYSWWpBwbz5ZUm+wnYKqyamwm8ampqHRp1ewqJOcnZduhseZzaXHVlmFmKbMfqDJyJ2mnlimqteeWYSOnpmhl5a7yZ3Ph9WZnW9VrdWrnIdxQliBVoCZz550ho2Rk6SYUavTocVSmFZocEBDg1Zz3J6Eq8V7qpvHqavNqJ5RhKKUz8acnlTIlaWlmFuDiZzSzYChxZqXpp9bq9aulVNYiJ/MypzGicqZp4emnsdzWdnWrZ2DQzxYglmFxaaVblqHksbNnYF51J2dUmpbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIudzp96ocadnNJ2UqWqqJaGgY3PmsuYnombntGLqsrIdVrVqKedhEZBhFlQf5mglqGDjMKUzplZeaWix1Zvh5N2RWtWUnTZc4PXnXWpm5ih2Mqnz1Kuo5ydmJ2gWJ3G0Kudg1aFnc+if82dlJamcFPY063GVIKJp5qcnciNn8rSjavGmm9a1qusyVs9O1hTUbLCpcZvhIialJ+eg4Kg2NhYaYNlcEVsWVegsGp9q5d23MSd0abLo6dSf6jGoZzJoVqewqKlnYRZismmmXmhl5XJz3WDptSpnlRTjtGeoMnJj6DGpIerx510hq2ipp1VPm6BWIGAw6Geb1WNxJijyoSEodSqUmqEaHVxQ1BRdKprsNScpqrFmammnKjRVoPUx6OdxXNUnsOlqslbUISdoJqsypzFl9BxW6alrshYV7rSoKHFm4mgx6eM156Ublqno9nGWm48glRZgJSmyHNZucWapMZWfqHVrVeXW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG3xqXKesuYnZehdoWqqdrJWli2pJqhxp6OzJ6ehquYlaGDrNOnx1ZGPFNZg4SY0sl1WrWXlKTHWYPNrKRRbFVgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBhcehonqcncebpaKGrKrWm1RYt6efzZ2ViKCYn7nUncVvhKirp5hbcEBXhYSGmc6bb1q2mpnQnlB9oaalhJZakHBvPllSb7CdgqrJqbCbxqamodGnV7Cok5ydl26Gx5nNpcdWWYWYpsx+oMnInaaeWKaq155ZhI6emaGXlrvJnc+H1Zmdb1Wt1auch3FCWIFWgJnPnnSGjZGTpJhRsMqr1VKYVmhwQEODVnPcnoSrxXuqm8epq82onlGEopTPxpyeVMiVpaWYW4OJnNLNgKHFmpemn1ur1q6VU1iIn8zKnMaJypmnh6aex3NZ2datnYNDPFiCWYXFppVuWoeSxs2dgX7Lp61SaluSdERvhFh02HB+q8Z+r8eeoKWhop+ErafEnceYdlSZms+pnIeEi53On3qhxp2c0nZSpaqoloaBjc+ay5ieiZue0Yuqysh1WtWop52ERkGEWVB/maCWoYOMwpTOmVl+nKzXVm+Hk3ZFa1ZSdNlzg9eddambmKHYyqfPUq6jnJ2YnaBYncbQq52DVoWdz6J/zZ2UlqZwU9jTrcZUgomnmpydyI2fytKNq8aab1rWq6zJWz07WFNRssKlxm+EiJqUn56DaXuFyZ6expmmq4JqWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iGltHKgMqWxpmnb1Wt1auch4SNpsmflp25oZzSjqOWnHBT2NOtxlRvPllSU4fEo5yihoyZw6KXWJV9V8mflpabp6SEk1qQcG8+WVJvsJ2CqsmpsJvGpqah0adXsKiTnJ2XbobHmc2lx1ZZhZimzH6gycidpp5YpqrXnlmEjp6ZoZeWu8mdz4fVmZ1vVa3Vq5yHcUJYgVaAmc+edIaNkZOkmFGXpVjGmMiZnKamWZZYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLSbn6GqopvInp5uWqej2cZagYfQnKKWmJDLm6W6152cnlimqteeWXFDUFFYgZLRxnWDhsOWpZdTfNKkq8rRqKfTl6SxhGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CEnaCarMqcxZfQcVumpa7IWFe60qChxZuJoMenjNeelG5ap6PZxlpuPIJUWYCUpshzWbnFmqTGVnekx6CY0q1SYHZAO4SBdNhsrqedd6ucyKarztOmWK2llaPHnXSGn5Gdq5hThLSdzpuqnZ2WmKegWKvX2Z1agYugoMudnLuhlZ+NppbInlrVpNeZWz89WYNWhcbRnXWDipOazp5XtKufl52mpM3QpsKehGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVm2m6TOrKGcxZugdYStqdmeUlGNoZnNxZ24mseijqWYnaBYq9fZnVpuQFJYgoeY0Z5tU4yUk9DGWLSnxKill1NqhWV1cm5YWJ2tbITVnXzcnJWhrJyg0oGE0JXNmZ1vVZ/EoqrKhliLxqObgMudm8mnbVOspabJg1i2oMqdnZeKocikjNjJnHWDqqStx1tEbllQUYaUnsmeWrWTxKCeUoauxaqjyoRqWpB0P0KCWXPbc3yknHipx8ao1ZvRoll+opzOm5uihp6ZzamXWoKMnNGieJqcl5bSnlrVpNeZW1KIp8ufm8q7oJ3Pi6WdxnZZ2KulllpAO4SBWK+Tz5l2VIeaxaKchbudmoFnVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSMlZ6he5rIxZ3Pb4Soq6eYW4OLpc3NnJ24npemt6ycyHZSpaqoloZuQoFSgoKan5h2hYqYx9CdWLiblFiUW2aiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGLmJ7NqaHFlseidlSnq9ibWYW5pqDKmpePyp6luayVlXVVpdbWnYM/bFRZUoGa0Jt0h7iZms2bUo/Hm1eXW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG3xqXKesuYnZehdoWqqdrJWli2pJqhxp6OzJ6ehquYlaGDrNOnx1ZGPFNZg4SY0sl1WqOXnqTRqKWEjZWprFVgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBgtSdqKScrdxzWZidWlivl5+dn1uLxZucllh6o83FWpBwbz5ZUm+wnYKqyamwm8ampqHRp1ewqJOcnZduhseZzaXHVlmFmKbMfqDJyJ2mnlimqteeWYSOnpmhl5a7yZ3Ph9WZnW9VrdWrnIdxQliBVoCZz550ho2Rk6SYUbjJnc6XhGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVm2m6TOrKGcxZugdYStqdmeUlGGlJ7JnlqxnsOXnpqipcebqYW4nbDVWGF2b0NXhHWna4SmlanZm8ai1p2ooFOF0pmiysh1WseXnqvHW1e0q5mgqpyl3Z5aklSChX+hpabEqnSH2KqtxlhShsOmnKFbfqBYhqHFxKHPmYRjdz89WYNyrp+wq5ymrpWd0q2g06dQfaeWnMnFdYOYw6Csl1VZs6ig1NahrNpzVG6SW1eymp2WdVV9zcig1VK1nJqWnKfKWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWlixqJun1KKr3XZSZ2lVUbLCpcZvhICimZutg4Kg2NhaZ59DPFiCda6ehaOVfauUydGsyqHQVIWhlqTImnSHypmk1JtUWLKroNOrmaWxcFOak1qBgMOhnm9Vhcydn9mEf6rKmlRnoEZBhFlsqHJ/pMimsMSX0qiioaFZr6Wa0MmcdYOck6TVnlmEiaKap6Wa2Np1g2iVVlmAlKbIc1myyZyh1qNSi8qam82nl1FpVWCibkKBUp6rc36mnaiumsrUrKHQpFKE0ZyiyZ1tU56UndfGWoGC1J2opJyt3HNZm5haWK+Xn52fW4TJnZmmpVOEzMKcyqDJVGtUYndwQFeFoK9yramWfdqcnNStmaCmU33TxKPGlp9Wn5OfrMhYV7XWoafTn6axn1ttmVtQf5mglqGDhcaWy6mmUn+i1qpXloZndm5AUliesHGwrJR2sJaW1NWh0KCCgKiVnp7Hc1nLxaSrxlhSiNSiptaipKp1VWeag1ivk8+ZdlSAnsefrNKEhKHUqlJqhGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CBqpyg1sqs2m+EanBUU4fEo5yihoWdxZ+npYKAqc2dUGJaYm9xa1iBbtluhaWXftuZnNXYoafPVn6nxaScyHZSl5mfpMmDWLGky6Orm6eyoFhtnYZYhsKjl3WEhpzIoqWeWHqjzcVYk1SRckY8U1mfrXGx15x92ZmXqNaiptJZfKCbnpbInlrHk86nnlRTidWfptfNrLGeWGhxhFmFxaaVblqAlsjKrc5SqaaillNshWV1cm5YWJ2tbITVnXzcnJWhrJyg0oGE0JXNmZ1vVZ/EoqrKhliI05+hqsutsKFbZ2FaU3/Fzp2eVKaVq51Thcypq4eTdkVrVlJ02XOD1511qZuYodjKp89SrqOcnZidoFidxtCrnYNWgqrLqKnNraluWmpihoGGwp/HcVt1oqXSqJ3a0FiLyZeWodCgWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iDo83Qqsqm23FbaWVbg4SY0sl1WqSlnqfUn6zQWXyaq6dTk59Fa1KCcLBsf6zHe6/IyaisyqWgWK6oms+elG5amZLQ1J2DUrKmoqGlotevdIeba1qBhJOlx3ZZp6icoKqZptCBf9ObxlZocEBDg1Zz3J6Eq8V7qpvHqavNqJ5RhKKUz8acnlTIlaWlmFuDhqnO06qh1a9vWphpWYSHkZ6dcFOwyp/JpoKHoZOXotGdV6bHm53PqlJphGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CBqpyg1sqs2m+EampUU4fEo5yihoShyJ6mWK6iqthZcZSbmJ/YgWmDYaBBQ1JTddpwg9jIfbDEm6Ksy6ilhIWflKOYlaGDnsKe1ZlbUoOrzKWpztixdYNsZFqCh5jRnm1ThJyYzNVYqKTLmFlzlpzIpKuFlVpnn0M8WIJ1rp6Fo5V9q5TJ0azKodBUhaGWpMiadIfKmaTUm1RYsqug06uZpbFwU5qUWoGAw6Geb1WGyJqg2tFYi8mXlqHQoFeVWXGUm5if2IFpg2GgQUNSU3XacIPYyH2wxJuirMuopYSFn5SjmJWhg57CntWZW1KDq8ylqc7YsXWDbGZagoeY0Z5tU4WYlc3WpYGFypWdm6Ggg2hXpsebnc+qUmmEaHVxQ1BRdKprsNScpqrFmammnKjRVoPUx6OdxXNUnsOlqslbUIGqnKDWyqzab4RqblRTh8SjnKKGhZ3Fn6elgoWg161QYlh0lMfGptVSk1ZocEBDg1Zz3J6Eq8V7qpvHqavNqJ5RhKKUz8acnlTIlaWlmFuDiZzSzYChxZqXpp9bq9aulVNYgZLRxnWDhMeqoqWcqNFYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLGom6fUoqvddlJkbFVRtaen05/DqHZUp6vYm1lyblhYgYSTpcd2WbCio6VYg5LWwp/Tk9KcW2FxRm1WV6HbcoTUmnewxZ6n2KKfn1h/oMfMncVvhJqanqaehVaH182nqsqqq3WEa3CGWYF3p6WexdV1g6bUqZ5UU4fEo5yihomt0KqXWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmAo6Gio83VsZ5UlWRbUoR/0qikxth1WtWop52ERkGEWVB/maCWoYOBz6bHoqyXU4rYpavKhmd2bkBSWJ6wcbCslHawlpbU1aHQoIKAqJWensdzWcvFpKvGWFKI1KKm1qKkqnVVZ5qDWK+Tz5l2VICex5+s0oSEodSqUmqCeprHnp6lWGRTk59Fa1KCcLBsf6zHe6/IyaisyqWgWK6oms+elG5amZLQ1J2DUrKmoqGlotevdIeab1qBhJOlx3ZZsZ6Umq2gUavTocVSk1R6lZae0apXloZndm5AUliesHGwrJR2sJaW1NWh0KCCgKiVnp7Hc1nLxaSrxlhSiNSiptaipKp1VWecg1ivk8+ZdlSAnsefrNKEf6rKmlJqgnqax56epVhkU5OfRWtSgnCwbH+sx3uvyMmorMqloFiuqJrPnpRuWpmS0NSdg1KypqKhpaLXr3SHmnFagYSTpcd2WbGelJqtoFGr06HFUpVUepWWntGqV5aGZ3ZuQFJYnrBxsKyUdrCWltTVodCggoColZ6ex3NZy8Wkq8ZYUojUoqbWoqSqdVVolINYr5PPmXZUd5rVoVexzausgXeVm8enq4RqUmB2QDuEgXTYbK6nnXernMimq87TplitpZWjx510hp+RnauYU4Sxqsqh1J2tq3BbmmdZhbKZpcZzVHvRpabWn6WdWIaZxcWhz5mCdZyVmKfXVmiHk3ZFa1ZSdNlzg9eddambmKHYyqfPUq6jnJ2YnaBYncbQq52DVoKqy6ipza2pblpqY4aBhsKfx3FbdaKl0qid2tBYhMqpplijnJrJp6RRaVVgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBgtSdqKScrdxzWZyXWlivl5+dn1t606Wfo56onYSoqsqWgnWclZin11Zoh5N2RWtWUnTZc4PXnXWpm5ih2Mqnz1Kuo5ydmJ2gWJ3G0Kudg1aCqsuoqc2tqW5aaWGGgYbCn8dxW36coMuqV7jMmZzKpJlYo5yayaekUWpVYKJuQoFSnqtzfqadqK6aytSsodCkUoTRnKLJnW1TnpSd18ZagYLUnaiknK3cc1mblVpYr5efnZ9bg82gmKVYf5rX1ViilcWZp6ZTa4VldXJuWFidrWyE1Z183JyVoaycoNKBhNCVzZmdb1WfxKKqyoZYiNOfoarLrbChW2ZjWlN/xc6dnlSunaCap1mqqKDJhHmbxJugrIJrWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iDo83Qqsqm23FbaGZbg4SY0sl1Wq6blqHXple3oZGVoaGYhJJYopXFmaemU2uFZXVyblhYna1shNWdfNyclaGsnKDSgYTQlc2ZnW9Vn8SiqsqGWIjTn6Gqy62woVtmZVpTf8XOnZ5Ur5mdm6img4mfxsihpshWZFijnJrJp6RRalVgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBgtSdqKScrdxzWZuZWlivl5+dn1uEyZ2ZpqVTfc3UrIFjgnWclZin11Zph5N2RWtWUnTZc4PXnXWpm5ih2Mqnz1Kuo5ydmJ2gWJ3G0Kudg1aCqsuoqc2tqW5aaWeGgYbCn8dxW3+YncyrpIWwoavVVmRYo5yayaekUWpVYKJuQoFSnqtzfqadqK6aytSsodCkUoTRnKLJnW1TnpSd18ZagYLUnaiknK3cc1mbm1pYr5efnZ9bhMmdmaalU3jWypyBY4J1nJWYp9dWaYeTdkVrVlJ02XOD1511qZuYodjKp89SrqOcnZidoFidxtCrnYNWgqrLqKnNraluWmlphoGGwp/HcVt/mJ3Mq6SFq6qhxVZkWKOcmsmnpFFqVWCibkKBUp6rc36mnaiumsrUrKHQpFKE0ZyiyZ1tU56UndfGWoGC1J2opJyt3HNZm51aWK+Xn52fW4TJnZmmpVN41sqcgWWCdZyVmKfXVmmHk3ZFa1ZSdNlzg9eddambmKHYyqfPUq6jnJ2YnaBYncbQq52DVoKqy6ipza2pblpqYYaBhsKfx3FbdpSrzlaDztesWKKZlZ3QrVeWW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG006HQpMuosm9VcJRYV7PFpZ2eWHWnzqipyq6cUYubksjKpshSo5ecl6Gtg2hZlKJFQoFWbq+charIfqiUnaOlzdCmgX7Rl6SXl3aFnJjR151agYakodGroNiybVNvZVOEr5nOl59WfKGfqNWcrNGEhKHUqlJ5xZyc0q1QY1pib3FrWIFu2W6FpZd+25mc1dihp89WfqfFpJzIdlKXmZ+kyYNYsaTLo6ubp7KgWG6YhliGwqOXdYR8ptCoopetn1Gr06HFUqOXnJehrYNoWZSiRUKBVm6vnIWqyH6olJ2jpc3QpoF+0Zekl5d2hZyY0dedWoGGpKHRq6DYsm1TbmNThK+ZzpefVoWbmqHXVorNxZyhz51SecWcnNKtUGRaYm9xa1iBbtluhaWXftuZnNXYoafPVn6nxaScyHZSl5mfpMmDWLGky6Orm6eyoFhtloZYhsKjl3WEhaDLoaRRhJyk2IF5xJXHoq1SZluSdERvhFh02HB+q8Z+r8eeoKWhop+ErafEnceYdlSZms+pnIeEiKrKpaSh1rJ0hm9iU1iBktHGdYN+y5uhplOA1Z+bhaWbm8akpliVW2aiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGIpZrT06HVq59Wb2VVWbGXpMqhWoXGmputz1mKzJqUmqaaUZWBecSVx6KtUmZbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIiqyqWkodaydIZvZFNYgZLRxnWDf8eYoqegWbaemMnNpp+BaFJ5xZyc0q1QZFpib3FrWIFu2W6FpZd+25mc1dihp89WfqfFpJzIdlKXmZ+kyYNYsaTLo6ubp7KgWG2ahliGwqOXdYSGnMiipZ5Yf5rX1ViSUqOXnJehrYNpWZSiRUKBVm6vnIWqyH6olJ2jpc3QpoF+0Zekl5d2hZyY0dedWoGGpKHRq6DYsm1TbmlThK+ZzpefVoaXl6LYo1exzausgWhSecWcnNKtUGRaYm9xa1iBbtluhaWXftuZnNXYoafPVn6nxaScyHZSl5mfpMmDWLGky6Orm6eyoFhtnIZYhsKjl3WEhpzIoqWeWHqjzcVYklKjl5yXoa2DaVmUokVCgVZur5yFqsh+qJSdo6XN0KaBftGXpJeXdoWcmNHXnVqBhqSh0aug2LJtU25rU4Svmc6Xn1aGl5ei2KNXrNahnIFoUnnFnJzSrVBkWmJvcWtYgW7ZboWll37bmZzV2KGnz1Z+p8WknMh2UpeZn6TJg1ixpMujq5unsqBYbZ6GWIbCo5d1hIacyKKlnlh6o83FWJRSo5ecl6Gtg2lZlKJFQoFWbq+charIfqiUnaOlzdCmgX7Rl6SXl3aFnJjR151agYakodGroNiybVNvY1OEr5nOl59WfZOlpIOCoNjYWHnEmZem1llqhmhuPkJTUaDYcq2lxnmxlZip15+m04SEp8Shl5yfW53FpaOWWlOB1sqn05vWrXZUamqFVoXG0Z11g3mhpNGrndmlUISglJXNz5+Bc8WXnqCnWZZYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLGom6fUoqvddlJoalVRssKlxm+Ed6ieoqvJq6OFsKGr1VZzm8WepdhZY1NncT5ugVidqZyArJZ4scabp9nNp6aBgqGbzZ6boVuWkqSmloaBiNOb0aaipqx2hW1qh4SGmc6bb1qlqKPTq5ampFN41sqcgXPFl56gp1mWWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWlixqJun1KKr3XZSZ2hVUbLCpcZvhICimZutg4mfxsihpshWc5vFnqXYWWRTZ3E+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYjTm9GmoqasdoVsaIeEhpnOm29arqKezK1QfaGmpYSim8SX0KhZZlVooUNBhYR0r5uCpZynsZrJqaSap6FRsNCbzJfGcVuYlKXWm1mFtKqh0KibrNt2WZprUlGGlJ7Jnlqtm8mcrVJ6q8yaV6bHm53PqlJshGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CBqpyg1sqs2m+EamxUU4fEo5yihoWdxZ+npYKMn8WdmZ+fU2KEopvEl9CoWWZVaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbSqodCom6zbdlmabVJRhpSeyZ5arpfGna6fU4zLl5vO0p9Yk1Zzm8WepdhZZFNncT5ugVidqZyArJZ4scabp9nNp6aBgqGbzZ6boVuWkqSmloaBiNOb0aaipqx2hWxsh4SGmc6bb1qvnpvNrp1RhJyk2IFpgXPFl56gp1mXWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWlixqJun1KKr3XZSZ25VUbLCpcZvhIGelpyu0FaDztesWJNWc5vFnqXYWWRTZ3E+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYjTm9GmoqasdoVsboeEhpnOm29ar56bza6dUX+lmsiBaYFzxZeeoKdZl1hmo3FCWIFyqXKurJupsZOWqKea089YraHFn56WcFvJl6PYyVpYsaibp9Siq912UmdwVVGywqXGb4SBnpacrtBWftfNnFiTVnObxZ6l2FlkU2dxPm6BWJ2pnICslnixxpun2c2npoGCoZvNnpuhW5aSpKaWhoGI05vRpqKmrHaFbHCHhIaZzptvWq+em82unVF/pZrIgWuBc8WXnqCnWZdYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLGom6fUoqvddlJoaFVRssKlxm+EeJqknlmvn6rZhHmbxJugrIJtWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iDo83Qqsqm23FbaWRbg4SY0sl1WqSlnqfUn6zQWYOZmZea0shYopXFmaemU22FZXVyblhYna1shNWdfNyclaGsnKDSgYTQlc2ZnW9Vn8SiqsqGWIjTn6Gqy62woVtnY1pTf8XOnZ5UpaOloaWf2KJXsc2rrIF3lZvHp6uEbVJgdkA7hIF02Gyup513q5zIpqvO06ZYraWVo8eddIafkZ2rmFOEsarKodSdratwW5ppWYWymaXGc1R70aWm1p+lnVh6o83FWKKVxZmnplNthWV1cm5YWJ2tbITVnXzcnJWhrJyg0oGE0JXNmZ1vVZ/EoqrKhliI05+hqsutsKFbZmFaU3/Fzp2eVK6doJqnWbaemMnNpp+Bd5Wbx6erhG5SYHZAO4SBdNhsrqedd6ucyKarztOmWK2llaPHnXSGn5Gdq5hThLGqyqHUna2rcFuZZ1mFspmlxnNUhMugn9hZfJqrp1GlxJvGoNZUblRid3BAV4Wgr3KtqZZ92pyc1K2ZoKZTfdPEo8aWn1afk5+syFhXtdahp9OfprGfW22WW1B/maCWoYOEypnKqFl5paLHVnjIx52m1VZnWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmAo6Gio83VsZ5UmGdbUoGa0Jt0h7GdnMqrn1i1oZjIop6YWGRRpcSbxqDWVG5UYndwQFeFoK9yramWfdqcnNStmaCmU33TxKPGlp9Wn5OfrMhYV7XWoafTn6axn1ttmFtQf5mglqGDhcaWy6mmUoahxJqg08tYaoF3lZvHp6uEblJgdkA7hIF02Gyup513q5zIpqvO06ZYraWVo8eddIafkZ2rmFOEsarKodSdratwW5lrWYWymaXGc1SFx52g2aZQfaGmpYSSWKKVxZmnplNuhWV1cm5YWJ2tbITVnXzcnJWhrJyg0oGE0JXNmZ1vVZ/EoqrKhliI05+hqsutsKFbZmdaU3/Fzp2eVK+ZnZuopoOCoNjYWGqBd5Wbx6erhG5SYHZAO4SBdNhsrqedd6ucyKarztOmWK2llaPHnXSGn5Gdq5hThLGqyqHUna2rcFuZbVmFspmlxnNUhcedoNmmUHiqnJWEkliilcWZp6ZTboVldXJuWFidrWyE1Z183JyVoaycoNKBhNCVzZmdb1WfxKKqyoZYiNOfoarLrbChW2ZpWlN/xc6dnlSvmZ2bqKaDfanOyFhqgXeVm8enq4RuUmB2QDuEgXTYbK6nnXernMimq87TplitpZWjx510hp+RnauYU4Sxqsqh1J2tq3BbmW9ZhbKZpcZzVIXHnaDZplB4qpyVhJRYopXFmaemU26FZXVyblhYna1shNWdfNyclaGsnKDSgYTQlc2ZnW9Vn8SiqsqGWIjTn6Gqy62woVtnYVpTf8XOnZ5UppWrnVOFzKmrhaWbm8akpliXW2aiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGIpZrT06HVq59WcGNVWbGXpMqhWnvQoqGqyK6jhIyYkpycn8uBecSVx6KtUmhbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIiqyqWkodaydIZwYlNYgZLRxnWDddGgqKSZrs9Wg87XrFiimZWd0K1XmVtfb0U9UYSdr5t+1Zh+qpae06qg1NJYhNCZnZ3GdlnKmpyknVVRtNOh0KTLqLJvVXCWWFezxaWdnlh1p86oqcqunFF/pZrIgXnElceirVJoW5J0RG+EWHTYcH6rxn6vx56gpaGin4Stp8Sdx5h2VJmaz6mch4SIqsqlpKHWsnSGb2BTWIGS0cZ1g37Lm6GmU4zLl5vO0p9YopmVndCtV5pbX29FPVGEna+bftWYfqqWntOqoNTSWITQmZ2dxnZZypqcpJ1VUbTTodCky6iyb1VvlFhXs8WlnZ5YfqHJoauEhZmkrFNyx8Sdz6aCalthcUZtVleh23KE1Jp3sMWep9iin59Yf6DHzJ3Fb4Samp6mnoVWh9fNp6rKqqt1hG9phll+kqWYboatocia1lSApJydg3eayMmmrIFsVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSJopqnpZrY2nWDaJVWWYCUpshzWbLJnKHWo1KLypqbzaeXUWlTcsfEnc+mgmpbYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVofXzaeqyqqrdYRva4ZZfpKlmG6Grp3Fm9ehWYWbmsefpcyEaliimZWd0K1Xmltfb0U9UYSdr5t+1Zh+qpae06qg1NJYhNCZnZ3GdlnKmpyknVVRtNOh0KTLqLJvVW+YWFezxaWdnlh/ncairNFZfJqrp1GVgXnElceirVJpW5J0RG+EWHTYcH6rxn6vx56gpaGin4Stp8Sdx5h2VJmaz6mch4SIqsqlpKHWsnSGb2ZTWIGS0cZ1g3/HmKKnoFmvn6rZhGpYopmVndCtV5pbX29FPVGEna+bftWYfqqWntOqoNTSWITQmZ2dxnZZypqcpJ1VUbTTodCky6iyb1VvmlhXs8WlnZ5Yf53GoqzRWXejoZdRlYF5xJXHoq1SaVuSdERvhFh02HB+q8Z+r8eeoKWhop+ErafEnceYdlSZms+pnIeEiKrKpaSh1rJ0hm9oU1iBktHGdYN/x5iip6BZqqigyYRqWKKZlZ3QrVeaW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG006HQpMuosm9Vb5xYV7PFpZ2eWH+dxqKs0Vl3o6GXUZeBecSVx6KtUmlbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIiqyqWkodaydIZwYFNYgZLRxnWDdsOmpFJ/otaqV6bHm53PqlJuhGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CBqpyg1sqs2m+Ea2pUU4fEo5yihnunzaWkntelV7ehkZWhoZiEopvEl9CoWWhVaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbSqodCom6zbdlmba1JRhpSeyZ5apKHOo6uYqKWDgqDY2Fh5xJmXptZZbYZobj5CU1Gg2HKtpcZ5sZWYqdefptOEhKfEoZecn1udxaWjllpTgdbKp9Ob1q12VGpshVaFxtGddYN5oaTRq53ZpVB4qpyVhKKbxJfQqFloVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW0qqHQqJus23ZZlXJSUYl5oNbOmdVvhKirp5hbcEBXhYSGmc6bb1q1rpnYpZVRfaChzMKryqWEY3c/PVmDcq6fsKucpq6VndKtoNOnUH2nlpzJxXWDmMOgrJdVWbOooNTWoazac1Rqk1tXtX+fo6WUpaGDrNOnx1ZGPFNZg4SY0sl1Wqqkpp3QrJyEfp2hoJSkzdRakHBvPllSb7CdgqrJqbCbxqamodGnV7Cok5ydl26Gx5nNpcdWWYKlotKooNnddVqUZ1RYs3+m1qaRpXVVpdbWnYM/bFRZUoGa0Jt0h7etmtWil1i0np3Jq5Wfm5hTk59Fa1KCcLBsf6zHe6/IyaisyqWgWK6oms+elG5amZLQ1J2DUrKmoqGlotevdIeXalqBh3in1KaY2HZSpaqoloZuQoFSgoKan5h2hX+l2cmmq8ZWhJ3InqnJp5OWWmJvcWtYgW7ZboWll37bmZzV2KGnz1Z+p8WknMh2UpeZn6TJg1ixpMujq5unsqBYapiGWImnpaSlw610hq2ipp1VUbLCpcZvhHaooZ5Zt5+r0claZ59DPFiCda6ehaOVfauUydGsyqHQVIWhlqTImnSHypmk1JtUWLKroNOrmaWxcFOXmFqBhcehonqcncebpaKGrKrWm1RFbFlXhI6emaGXlrvJnc+H1Zmdb1Wt1auch4SGmc6bb1qkopnQop+YqpShzNpakHBvPllSb7CdgqrJqbCbxqamodGnV7Cok5ydl26Gx5nNpcdWWYKlotKooNnddVqUb1RYtZ6kzYGZlZyYn6GDrNOnx1ZGPFNZg4ulzc2cnbiel6a3rJzIdlKlqqiWhoGJp6HUoZqmcFvXqKzKhliGwqOXdYSNhqdZeJaZl5rSyFqQcG8+WVJvsJ2CqsmpsJvGpqah0adXsKiTnJ2XbobHmc2lx1ZZgqWi0qig2d11WpVnVFiwmqTJdlKBpJSa0oGMwpTOmVljVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW0qqHQqJus23ZZmGtSUYaUnsmeWrGew52nUoeaxaKchZZaZ59DPFiCda6ehaOVfauUydGsyqHQVIWhlqTImnSHypmk1JtUWLKroNOrmaWxcFOYlFqBgMOhnm9Vic+XoNOEjJnDopdYlVtmokY6UVhvqJ6tq8V32peeoqei0qRXsdObo8aab1rImqPXnlJRiKWa09Oh1aufVm1mVVmxl6TKoVqIzZebpoKNmMallVFsVWCibkKBUp6rc36mnaiumsrUrKHQpFKE0ZyiyZ1tU56UndfGWoGC1J2opJyt3HNZmZlaWK+Xn52fW4fQmpmfWIeSxs2dgWeEY3c/PVmDcq6fsKucpq6VndKtoNOnUH2nlpzJxXWDmMOgrJdVWbOooNTWoazac1RskltXspqdlnVVeNbKnIGGw5all1OFzJ2f2YZndm5AUliesHGwrJR2sJaW1NWh0KCCgKiVnp7Hc1nLxaSrxlhSiNSiptaipKp1VWWag1ivk8+ZdlR6q8yaV7nFmqTGVmNYrqKezK1SYHZAO4SBdNhsrqedd6ucyKarztOmWK2llaPHnXSGn5Gdq5hThLGqyqHUna2rcFuXbVmFspmlxnNUf9Sim4SNkZOkmFGWg2efP2xUWW6qc6+pm6rcm53Rqpun0FmD05yblpxwU8rCpNSXhFSJpJyo1Z+r3qFabJlYUobDppyhW3ejoZdRuMKazZeCZ1thcUZtVleh23KE1Jp3sMWep9iin59Yf6DHzJ3Fb4Samp6mnoVWh9fNp6rKqqt1hG1whll+kqWYboaoqsqWgoialJ+eg2pZlKJFQoFWbq+charIfqiUnaOlzdCmgX7Rl6SXl3aFnJjR151agYakodGroNiybVNtY1OEr5nOl59WgKScnYOKmMfQnViWVnaZ1KRZk3c9O1hTbdubhNSWp6ycl6OtzKWlhbCnm8yblnWEn5jQrJVTWIOjzdCqyqbbcVtnZFuDhJjSyXVaqKibnIKNmMallVFuU3TTzafTmNegW2FxRm1WV6HbcoTUmnewxZ6n2KKfn1h/oMfMncVvhJqanqaehVaH182nqsqqq3WEbmmGWX6SpZhuhqiqypaCiJqUn56DbVeo06Sn05ynpIRodXFDUFF0qmuw1JymqsWZqaacqNFWg9THo53Fc1Sew6WqyVtQgaqcoNbKrNpvhGhvVEBDg1ZXs8WlnZ5YearLnVe4mpKdnVNihK2hyJrWVHqVlp7RqleWhmd2bkBSWJ6wcbCslHawlpbU1aHQoIKAqJWensdzWcvFpKvGWFKI1KKm1qKkqnVVZZuDWK+Tz5l2VHqrzJpXucWapMZWZFijnJrJp6RRaVVgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBgtSdqKScrdxzWZmcWlivl5+dn1t+1qKUUYyUk9DGWJRSo5ecl6Gtg2dZlKJFQoFWbq+charIfqiUnaOlzdCmgX7Rl6SXl3aFnJjR151agYakodGroNiybVNsbFOEr5nOl59WgKScnYOKmMfQnViVVnObxZ6l2FlhU2dxPm6BWJ2pnICslnixxpun2c2npoGCoZvNnpuhW5aSpKaWhoGI05vRpqKmrHaFa2eHhIaZzptvWqmroMhZhJKan5aEllilk9SfWXOWnMikq4WVWmefQzxYgnWunoWjlX2rlMnRrMqh0FSFoZakyJp0h8qZpNSbVFiyq6DTq5mlsXBTmZJabjyCVFmAlKbIc1ms1qGcgYqTms6eV5pZc6CkoqPK1qSBc8WXnqCnWZRYZqNxQliBcqlyrqybqbGTlqinmtPPWK2hxZ+elnBbyZej2MlaWLGom6fUoqvddlJmalU+boFYgYDDoZ5vVYDVn5uFuJmazZtSb4J8ptCoopetn1GlxJvGoNZUalRid3BAV4Wgr3KtqZZ92pyc1K2ZoKZTfdPEo8aWn1afk5+syFhXtdahp9OfprGfW2uaWz07WFNRssKlxm+Ee6ubl1m3l5nRyVhpgYKbn8qtV6Wck5amp1GWg2efP2xUWW6qc6+pm6rcm53Rqpun0FmD05yblpxwU8rCpNSXhFSJpJyo1Z+r3qFabJhYUobDppyhW3ejoZdRuMKazZeCZllzlpzIpKuFllpnn0M8WIJ1rp6Fo5V9q5TJ0azKodBUhaGWpMiadIfKmaTUm1RYsqug06uZpbFwU5iZWoGAw6Geb1WA1Z+bhbiZms2bUmuCeprHnp6lWGVTk59Fa1KCcLBsf6zHe6/IyaisyqWgWK6oms+elG5amZLQ1J2DUrKmoqGlotevdIeYcVqBhJOlx3ZZq6uZlViHksbNnYFmgnWclZin11Zph5N2RWtWUnTZc4PXnXWpm5ih2Mqnz1Kuo5ydmJ2gWJ3G0Kudg1aCqsuoqc2tqW5aaGGGgYbCn8dxW3mlosdWi8bGpJ2Ba1J8w6uihHqTlJ2hpYSTWpBwbz5ZUm+wnYKqyamwm8ampqHRp1ewqJOcnZduhseZzaXHVlmCpaLSqKDZ3XValmdURWxZV4SHkZ6dcFOr06HFUraVm56YWZlWetTQp6rHq55Yo5yayaekUWpVYKJuQoFSnqtzfqadqK6aytSsodCkUoTRnKLJnW1TnpSd18ZagYLUnaiknK3cc1mallpFa1ZSWLCapMl2UniqnJWEtZnDnsdUcFJ2qM+lqcvZpFiimZWd0K1Xlltfb0U9UYSdr5t+1Zh+qpae06qg1NJYhNCZnZ3GdlnKmpyknVVRtNOh0KTLqLJvVW2ZWERvhFhYr5efnZ9bftailFGMlJPQxliSUq6doJqnWaSZmsrSrFiUWGF2b0NXhHWna4SmlanZm8ai1p2ooFOF0pmiysh1WseXnqvHW1e0q5mgqpyl3Z5alWmEVIeToJ6gWH7XzZxYtZeUpMdZaYR6k5SdoaWElFqQcG8+WVJvsJ2CqsmpsJvGpqah0adXsKiTnJ2XbobHmc2lx1ZZgqWi0qig2d11WpVuVFiwmqTJdlJ4qpyVhLWZw57HVGxSdJzGm6XZhGtakHQ/QoJZc9tzfKSceKnHxqjVm9GiWX6inM6bm6KGnpnNqZdagompzaiimqysboaVcYNSsJWml3BbqqigyYSMmcOil1iWWXjHnJWfrFNkhpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKEq5uiq8yqsKKGbWiDVoCZz550hoCimpxThcXDpMZSl1R9k6Wkg3eayMmmrIFpVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSJopqnpZrY2nWDZ5NWRjxTWYOEmNLJdVqoqJucgo2YxqWVUW5TdNPNp9OY16BZc5acyKSrhZdaZ59DPFiCda6ehaOVfauUydGsyqHQVIWhlqTImnSHypmk1JtUWLKroNOrmaWxcFOZk1puPIJUWYCUpshzWazWoZyBipOazp5Xm1lzoKSio8rWpIFzxZeeoKdZllhmo3FCWIFyqXKurJupsZOWqKea089YraHFn56WcFvJl6PYyVpYsaibp9Siq912UmVuVT5ugViBgMOhnm9VgNWfm4W4mZrNm1JpgoWgy6GkUXmWlMnPrIFmhGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVmzqKDU1qGs2nNUbJlbV7KanZZ1VXjWypyBhsOWpZdTa4N3msjJpqyBalRnoEZBhFlsqHJ/pMimsMSX0qiioaFZr6Wa0MmcdYOck6TVnlmEiaKap6Wa2Np1g2aaVlmAlKbIc1ms1qGcgYqTms6eV5dZcZSbmJ/YgWyDYaBBQ1JTddpwg9jIfbDEm6Ksy6ilhIWflKOYlaGDnsKe1ZlbUoOrzKWpztixdYNqa1qCh5jRnm1Tf6WayIGMwpTOmVlmU3rGmZzT2Fhsg2VwRWxZV6Cwan2rl3bcxJ3Rpsujp1J/qMahnMmhWp7CoqWdhFmH1qKfo6GnqqGDbZFUgoKan5h2hX2pzshYjMKYnp2CbleomqKcWHSUx8am1VKWVmhwQEODVnPcnoSrxXuqm8epq82onlGEopTPxpyeVMiVpaWYW4OGqc7TqqHVr29al2pZcUNQUViBktHGdYN51J2dUoeaxaKchZpYe9CioarIrqOEepOUnaGlhJVakHBvPllSb7CdgqrJqbCbxqamodGnV7Cok5ydl26Gx5nNpcdWWYKlotKooNnddVqWaFRFbFlXhIeRnp1wU6vTocVStpWbnphZmlZ61NCnqsernlijnJrJp6RRbFVgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBgtSdqKScrdxzWZmaWkVrVlJYsJqkyXZSeKqclYS1mcOex1RqUn+iyp6rhaWbm8akpliXW2aiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGIpZrT06HVq59WbWlVWbGXpMqhWn/Tn5ZYtpqZ0J5QY1h0lMfGptVSl1ZocEBDg1Zz3J6Eq8V7qpvHqavNqJ5RhKKUz8acnlTIlaWlmFuDhqnO06qh1a9vWpZxWYSHkZ6dcFOr06HFUraVm56YWZZWeMjHnabVVmdakXdEbllQba9tfdfFfdmVx6Stm6Kng4KmyM+dnJ5YmJnOrJyGWYCjoaKjzdWxnlSWbVtSgZrQm3SHq6qhxVaGmcSlnIRtUHKblpbS1ViWVJFyRjxTWZ+tcbHXnH3ZmZeo1qKm0ll8oJuelsieWseTzqeeVFOJ1Z+m182ssZ5YZ2iEWYXFppVuWnqjzcVYtZPEoJ5SaFmnl6nQhHmbxJugrIJuWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iDo83Qqsqm23FbZ2RbcEBXhYSGmc6bb1qpq6DIWYSSmp+WhJdYpKHOo6uYqKWDd5rIyaasgWtUZ6BGQYRZbKhyf6TIprDEl9KooqGhWa+lmtDJnHWDnJOk1Z5ZhImimqelmtjadYNnlFZGPFNZg4SY0sl1Wqiom5yCjZjGpZVRb1N0082n05jXoFlzlpzIpKuFmVpnn0M8WIJ1rp6Fo5V9q5TJ0azKodBUhaGWpMiadIfKmaTUm1RYsqug06uZpbFwU5iXWm48glRZgJSmyHNZrNahnIGKk5rOnleVWXyan5ulhKKbxJfQqFloVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW0qqHQqJus23ZZmHBSUYaUnsmeWqiky5hZhpSbz5tXl4R5m8SboKyCb1mTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYg6PN0KrKpttxW2ZrW4OEmNLJdVqoqJucgo2YxqWVUWtTcsfEnc+mgmpbYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVofXzaeqyqqrdYRtcIZZfpKlmG6GqKrKloKImpSfnoNqV6bHm53PqlJuhGh1cUNQUXSqa7DUnKaqxZmpppyo0VaD1MejncVzVJ7DparJW1CBqpyg1sqs2m+EaWlUU4fEo5yihn+qyppSjMObo8lZZVF8lKPPgXnElceirVJpW5J0RG+EWHTYcH6rxn6vx56gpaGin4Stp8Sdx5h2VJmaz6mch4SIqsqlpKHWsnSGbmFTRT1RhIGGwp/HcVt5paLHVovGxqSdgWxSe9GlptafpZ1YdJTHxqbVUphWaHBAQ4NWc9yehKvFe6qbx6mrzaieUYSilM/GnJ5UyJWlpZhbg4apztOqodWvb1qXa1lxQ1BRWIGS0cZ1g3nUnZ1Sh5rFopyFm1h70KKhqsiuo4R6k5SdoaWEl1qQcG8+WVJvsJ2CqsmpsJvGpqah0adXsKiTnJ2XbobHmc2lx1ZZgqWi0qig2d11WpVsVFiwmqTJdlJ9oaalhLWZw57HVGpSf6LKnquHk3ZFa1ZSdNlzg9eddambmKHYyqfPUq6jnJ2YnaBYncbQq52DVoKqy6ipza2pblpnaIaBhsKfx3Fbfpys11aLxsaknYFoVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSJopqnpZrY2nWDZppWWYCUpshzWbHNq6yBipOazp5Xl1tfb0U9UYSdr5t+1Zh+qpae06qg1NJYhNCZnZ3GdlnKmpyknVVRtNOh0KTLqLJvVW2cWFezxaWdnlh+odWtV7iakp2dU2WGkHZuPIJUdalthdaafN3HnajVn6GmgoWmx6SVlXVVl8XNq8ZUgoSrm6KrzKqwooZtaINWgJnPnnSGhZmkrFOFxcOkxlKXVH2TpaSFZXVyblhYna1shNWdfNyclaGsnKDSgYTQlc2ZnW9Vn8SiqsqGWIjTn6Gqy62woVtlYlpTf8XOnZ5Urp2splONxJijyoRuWKSlnqfUn6zQW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG006HQpMuosm9VbpVYV7PFpZ2eWH6h1a1XuJqSnZ1TaISkp82h1JqunlVooUNBhYR0r5uCpZynsZrJqaSap6FRsNCbzJfGcVuYlKXWm1mFtKqh0KibrNt2WZhvUj5CU1GEr5nOl59WhZumrYOKmMfQnViSVn6hyaGrhHqTlJ2hpYSSWpBwbz5ZUm+wnYKqyamwm8ampqHRp1ewqJOcnZduhseZzaXHVlmCpaLSqKDZ3XValW1UWLCapMl2Un2hpqWEtZnDnsdUa1J0nMabpdmEaVqQdD9Cgllz23N8pJx4qcfGqNWb0aJZfqKczpubooaemc2pl1qCianNqKKarKxuhpVwg1KwlaaXcFuvn6rZhIyZw6KXWJVZeMeclZ+sU2KGkHZuPIJUdalthdaafN3HnajVn6GmgoWmx6SVlXVVl8XNq8ZUgoSrm6KrzKqwooZscYNWgJnPnnSGhZmkrFOFxcOkxlKWVHqVlp7RqleWhmd2bkBSWJ6wcbCslHawlpbU1aHQoIKAqJWensdzWcvFpKvGWFKI1KKm1qKkqnVVZpSDWK+Tz5l2VH+i1qpXucWapMZWZ1immqnPWXGUm5if2IFpg2GgQUNSU3XacIPYyH2wxJuirMuopYSFn5SjmJWhg57CntWZW1KDq8ylqc7YsXWDa2Nab0NXhFl+kqWYboatodSmgoialJ+eg2xXqNOkp9Ocp6SCeprHnp6lWGRTk59Fa1KCcLBsf6zHe6/IyaisyqWgWK6oms+elG5amZLQ1J2DUrKmoqGlotevdIeZalpuQFJYgoeY0Z5tU4ScpNiBjMKUzplZaVN80qKm18qtpIF3lZvHp6uEalJgdkA7hIF02Gyup513q5zIpqvO06ZYraWVo8eddIafkZ2rmFOEsarKodSdratwW5dsWXJuWFiBhJOlx3ZZsKKjpViHksbNnYFjgoCimZutg3eayMmmrIFoVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSJopqnpZrY2nWDZplWWYCUpshzWbHNq6yBipOazp5XlllxlJuYn9iBaoNhoEFDUlN12nCD2Mh9sMSboqzLqKWEhZ+Uo5iVoYOewp7VmVtSg6vMpanO2LF1g2pqWoKHmNGebVOEnKTYgYzClM6ZWWVTesaZnNPYWGqDZXBFbFlXoLBqfauXdtzEndGmy6OnUn+oxqGcyaFansKipZ2EWYfWop+joaeqoYNsmlSCgpqfmHaFgqDY2FiMwpienYJtV6Wck5amp1GWg2efP2xUWW6qc6+pm6rcm53Rqpun0FmD05yblpxwU8rCpNSXhFSJpJyo1Z+r3qFabZFYUobDppyhW3yaq6dRuMKazZeCaVl2lKvOVnjIx52m1VZkWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmAo6Gio83VsZ5Ul2VbPz1Zg1aFxtGddYOCm6vWWYvFm5yWWGlRp9Ck0KTIqaVSdJzGm6XZhGpakHQ/QoJZc9tzfKSceKnHxqjVm9GiWX6inM6bm6KGnpnNqZdagompzaiimqysboaWaoM/bFRZUoGa0Jt0h7Chq9VWhpnEpZyEcFB0p5+g1setzVKjl5yXoa2DaFmUokVCgVZur5yFqsh+qJSdo6XN0KaBftGXpJeXdoWcmNHXnVqBhqSh0aug2LJtU2xpU3FrWIFSsJWml3Bbr5+q2YSMmcOil1iTWYPNoJilWHSUx8am1VKVVmhwQEODVnPcnoSrxXuqm8epq82onlGEopTPxpyeVMiVpaWYW4OGqc7TqqHVr29alnBZhIeRnp1wU7DKq9VStpWbnphZlVZ4yMedptVWZVqRd0RuWVBtr21918V92ZXHpK2boqeDgqbIz52cnliYmc6snIZZgKOhoqPN1bGeVJZsW1KBmtCbdIewoavVVoaZxKWchGxQcpuWltLVWJRUkXJGPFNZn61xsdecfdmZl6jWoqbSWXygm56WyJ5ax5POp55UU4nVn6bXzayxnlhmcYRZhcWmlW5af5rX1Vi1k8SgnlJnWaSZmsrSrFiUWGF2b0NXhHWna4SmlanZm8ai1p2ooFOF0pmiysh1WseXnqvHW1e0q5mgqpyl3Z5almKEVIeToJ6gWIPO16xYtZeUpMdZbIR9kaOjU3LHxJ3PpoJnW2FxRm1WV6HbcoTUmnewxZ6n2KKfn1h/oMfMncVvhJqanqaehVaH182nqsqqq3WEbmiGRjpRWFN/xc6dnlSunaymU43EmKPKhG5YpKWep9SfrNBZcZSbmJ/YgWuDYaBBQ1JTddpwg9jIfbDEm6Ksy6ilhIWflKOYlaGDnsKe1ZlbUoOrzKWpztixdYNrZFpvQ1eEWX6SpZhuhq2h1KaCiJqUn56DbVeo06Sn05ynpIJ6mseenqVYZlOTn0VrUoJwsGx/rMd7r8jJqKzKpaBYrqiaz56UblqZktDUnYNSsqaioaWi1690h5huWm5AUliCh5jRnm1ThJyk2IGMwpTOmVljU4XMnZ/ZhHmbxJugrIJtWZN3PTtYU23bm4TUlqesnJejrcylpYWwp5vMm5Z1hJ+Y0KyVU1iDo83Qqsqm23FbZmpbg4SY0sl1Wq2fpayCjZjGpZVRalNyx8Sdz6aCaFthcUZtVleh23KE1Jp3sMWep9iin59Yf6DHzJ3Fb4Samp6mnoVWh9fNp6rKqqt1hG1vhll+kqWYboatodSmgoialJ+eg2lXpsebnc+qUmyEaHVxQ1BRdKprsNScpqrFmammnKjRVoPUx6OdxXNUnsOlqslbUIGqnKDWyqzab4RoclRTh8SjnKKGhKHUqlKMw5ujyVlkUXmWlMnPrIFmhGN3Pz1Zg3Kun7CrnKaulZ3SraDTp1B9p5acycV1g5jDoKyXVVmzqKDU1qGs2nNUbZJbV7KanZZ1VX3N1KyBhsOWpZdTboN6mNfPWHnEmZem1llrhmhuPkJTUaDYcq2lxnmxlZip15+m04SEp8Shl5yfW53FpaOWWlOB1sqn05vWrXZUaGqFQ0GFhFiGwqOXdYSFoNetUIWZlZ3JgW6BddGgqKSZrs9WeMjHnabVVmZakXdEbllQba9tfdfFfdmVx6Stm6Kng4KmyM+dnJ5YmJnOrJyGWYCjoaKjzdWxnlSXZls/PVmDVoXG0Z11g4Kbq9ZZi8WbnJZYalGn0KTQpMippVJ0nMabpdmEbFqQdD9Cgllz23N8pJx4qcfGqNWb0aJZfqKczpubooaemc2pl1qCianNqKKarKxuhpVugz9sVFlSgZrQm3SHsKGr1VaGmcSlnIRqUH2hmpnYgXnElceirVJoW5J0RG+EWHTYcH6rxn6vx56gpaGin4Stp8Sdx5h2VJmaz6mch4SIqsqlpKHWsnSGbWdTWIGS0cZ1g37Lp61Sh5rFopyFllh5xJmXptZZbIZobj5CU1Gg2HKtpcZ5sZWYqdefptOEhKfEoZecn1udxaWjllpTgdbKp9Ob1q12VGdxhVaFxtGddYOCm6vWWYvFm5yWWGZRpcSbxqDWVG5UYndwQFeFoK9yramWfdqcnNStmaCmU33TxKPGlp9Wn5OfrMhYV7XWoafTn6axn1trnVtQf5mglqGDhMql1lSNk5WlyFZrhaWbm8akpliXW2aiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGIpZrT06HVq59WbmJVWbGXpMqhWoTKqaZYtpqZ0J5QZlh3ktbMWKKVxZmnplNuhWV1cm5YWJ2tbITVnXzcnJWhrJyg0oGE0JXNmZ1vVZ/EoqrKhliI05+hqsutsKFbZWJaQDuEgVivk8+ZdlR/otaqV7nFmqTGVmhYpaij06uWpqRTcsfEnc+mgmlbYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVofXzaeqyqqrdYRuaYZGOlFYU3/Fzp2eVK6drKZTjcSYo8qEb1ikpZ6n1J+s0FlxlJuYn9iBbYNhoEFDUlN12nCD2Mh9sMSboqzLqKWEhZ+Uo5iVoYOewp7VmVtSg6vMpanO2LF1g2poWm9DV4RZfpKlmG6GraHUpoKImpSfnoNnV7HNn6DVVnObxZ6l2FlmU2dxPm6BWJ2pnICslnixxpun2c2npoGCoZvNnpuhW5aSpKaWhoGI05vRpqKmrHaFam6HhIaZzptvWq6iqthZhJKan5aEk1iilcWZp6ZTb4VldXJuWFidrWyE1Z183JyVoaycoNKBhNCVzZmdb1WfxKKqyoZYiNOfoarLrbChW2RpWlN/xc6dnlSunaymU43EmKPKhGtYopmVndCtV5pbX29FPVGEna+bftWYfqqWntOqoNTSWITQmZ2dxnZZypqcpJ1VUbTTodCky6iyb1VtnFhXs8WlnZ5YfqHVrVe4mpKdnVNlhKKbxJfQqFloVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW0qqHQqJus23ZZmWlSUYaUnsmeWq2b1ahZhpSbz5tXmoR8mdOhUnnFnJzSrVBnWmJvcWtYgW7ZboWll37bmZzV2KGnz1Z+p8WknMh2UpeZn6TJg1ixpMujq5unsqBYbJaGRUKBVlKGw6acoVt8mqunUbjCms2XgmpZdaKl0qid2tBYecSZl6bWWW2GaG4+QlNRoNhyraXGebGVmKnXn6bThISnxKGXnJ9bncWlo5ZaU4HWyqfTm9atdlRoa4VDQYWEWIbCo5d1hIWg161QhZmVncmBb4F10aCopJmuz1Z4yMedptVWaFqRd0RuWWxgr219xdWdz6a1qLKemKyhQ0Ghk7ClzXRuWb2epciilo5lYG+ggmWOjcuaWZmnnoOjqtSEaWi+dD9Cnqyr3aWVb0U9UZOLWLSm26CeUneeyZ+lztihp8+pUmKRRkGErZGTpJhfsdSnr6HUoZqeh5rFopxybkGzzqmhZdWtsNCeXZ+ZoJaeg4zClM6ZmqdTh9KopMbQWnNuQDul1ahk2KykqqSYXtbQr8OT0JhmpZyzyHBnoHFCQc6poWXWrKvdpZVem6KdxsKmxV/VnbOXbWmeQ0Fu0aunjqmmsc6eZNKoo5mnqmvdxqucP2w9pqWiZtaqsNHJZajTn6Gqy62wnnJpbEU9OtHUp46l1q2ll2CpxKic09hyWoNxP0JrpqrTZqCSnJea0shlwp7WbmmVoFmYZGvV2FhoxKNSbZBtp9h0PTtBoKTTjqjCpMNhppOloMykcZXHpXNuQDul1ahk1JqikmWgktbIoc9fxKOtpqKmnWRnlZRpqNVxP0JrpqrTZqCSn5yfxdWh0KCcq6KWorCQpanVzJmmnEM8Qciopdhmo5qymGuVkWaRotZvRjw8n9Kkq5LKmaXKoqtyhHyY0KKSo6FVXdfCptRf1Zmrm5l0cEBA0tenZcOflqGPn6bSrV2XmaCa0Npyg4bLoZ6lU4fIrVe306WZz1httW9Dc5OspKqkmG9xa3SCjceinZuZlpBjdaGFZWW8n5hYya2chKajoFhsjqKdsM6eoEFDUm+onYWdy82bnaWlla3PnqXYjJWlrJyfy9R2bjyCVHWhbXrPoqbctIZ/kHQ/QoJ1ZtNzf5eenJTJpafEp8+Zp6aGnteqoNPLq3ZuQG5n2qajonVRjJ2hlc3HlY5foHBaX2CUzJxXzNidWM6poViblnWgsZ2ddkA7hJ2vm4nRpp12opzYo5zT2HZFa1ZSdNlzjc2ep2+GoqPRwqSdYdluj5uYsKFDQYWEdK+bkKGnz3dnoGina5KioNGfRWtSgnCwbIerxJmistOundRlcEVsWVegsGqFqpSUz6en05/DqK2boaCSdERvhFh02HB6sdKhnNKapJqnoYvTz52fZJNwaKltgdymn8rSmazKpaCS0aecokY6UVhvqJ6xrc+V1qmappyo0YGc19KhpshlcEVsWVegsGqHmZ+ayMKsxnPJlaKgpq22mZ/K0ZmrkHQ/QoJZc9tzg5KumHrKuYWte9Cqmp6cnaGcmNHXnXSQrWyLw6+crZ+IfoR8n9rCpMqWoEFDUlN12nCAzNKnqsaDm7DHnXrTp6SWpqdvysKk1JeeY7BsfKDRpanKsaGwxpp1p9CtnNKtbj5CU1Gg2HKintmVsqWGodKth9HFm53JpZ6cx6uLybGkb56UndfGdJCpnHWlqZSy1omf1NuIpMKZl6DRpZvJq4SWsKdvcWtYgW7Zbn2hgajXhqnU0aesxod4Z6BGQYRZbKhyf5rItaDGn8eDrZqYq6F8iaGTr3Ktn5aMyp6kyYikmZ2lb3FrWIFu2W6Fm5eNy5ukyqWrocKkcJCPh4ayfmxgr219zcWMyZfPmXqlnJrRdERvhFh02HB+ocaNn8mmlXSnoKHQxrC0ldSdqaZxkZCEhrOpdGfYcH6hxo2fyaaVdKegodDGsLSV1J2ppnFGbVZXodtye9CjopnWopnNpZmlsXE+boFYgW7ZbnukmJrOjanG1KidxYqTms6eqpN3PTtYU1Gg2HK0oMOkjaF6q8yagNOnnaTNZXBFbFlXhHWna4+lktS1ndmmuZ2tmoOu0ZmrlKJFQoFWUnTZc4zXnnGkoZSfptOdwp20qaWXpmihQ0GFhFh02HB2p9Ctftaop3Ktp6DKyqyQcG8+WVJTddpwitXQoayxnXSqx5qipaeUgZmlkrHCqsxhoEFDUlNZn61xqtKZms2bgajHp4vdqZV8naWfzc+fkHBvPllSU3XacHvU0qx+zZ+ihcurqdOreZ+cmJ/Y1GefP2xUWVJvsJ2FrcrWqqHFm4aZxKWct62pnZ17odeQdm48glR1YapzpqWk1cWsocOfnqHWsnVxQ1BRdKBr0cKsyYLUckY8U1mDcqSf0ZmsyXyhptZZpJ6vkZ11VXTFzprTm8NUhpOnoYVldXJuWFiBcp9yxKuipqKeUaVtp8XNdYOUx5qopJhbknREb4RYWJ2jbJrUpHnNp4OmmlOenteZzW+EWlxmaHSQWGajcUJYgVZupZyspMWlnHeqlJSEznLXk85xW6GZn4VldXJuWFiBcp9yxqKq1H2Vl2dxPm6BWIFuz26lf5Sryp+lhdFyrsKib1qSW2aiRjpRWFNt0ZuqrpPUm6KgU6adrJjRoVpog2VwRWxZV4R1nWucmJeuxFjObNiVpW9VnMikq8rWf6rQq6JakXdEbllQUXSga9vTmdF70JieoKdZ0HCtxtB1WpJqZmiEaHVxQ1BRWG+ensqm1X7LoVmfba/EonSH162atKuiWpF3RG5ZUFF0oGvSwqrafsuhWZ9tr8SidIfZppywrKRakXdEbllQbWega9HCrMmC1HJ1YapzuqWpyainm9ajl6bWd0RudV+ppZ9voIKTxqDGnZ+PYGahcliSkZOhx1aZrMdZpNeoUGqVcW3czqSfP2xUdalthcSqnNPYi6zaopergn2cyoWflKOYlbfVmdWXn1afk5+syFhXqcmejc+em5zHkJ/Jp4WknZduhseZzaXHVkY8U1mnm524yaWhqZ+WnMendIafkZ2rmFOEpZ3Hg6ijq5+UraBYncbQq52DVnadyImpzaiimqysboaacYM/bFRZfpStyKSruNixpMZ5oa3QrXSGbGdiWnE+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYjTm9GmoqasdoVmWYW1fqfTo5Osn1ur1q6VU1iBktHGdYOA0aamk59bknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIiqyqWkodaydIZyUlGJeaDWzpnVb4Soq6eYW4OEmNLJdVrJm5Ocy6eehGpSYHZAO4SBdNhsrqedd6ucyKarztOmWK2llaPHnXSGn5Gdq5hThLGqyqHUna2rcFucWFe4yaWhqZ+WnMendIatoqadVT5ugViBh9CcopaYkMubpbrXnZyeWKaq155ZhIp2oKqgktieWtWk15lbUoGa0Jt0h8ydmcWfoJ+Ca1mTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYg6PN0KrKpttxW2tVWbabpM6soZzFm6B1hK2p2Z5SPkJTUYS2psmbxpmQmpinuKmcyaFarNOrl1qCin3Tq52SrHBT2NOtxlSCgpqfmHaFnpzGyKGmyFZlWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmAo6Gio83VsZ5Um1ZZhZimzH6gycidpp5YpqrXnllxQ1BRWIifzMqcxonKmaeHpp7Hc1nZ1q2dg1aDftGrpMWtbVOspabJg1ivk8+ZdlSbnsSaoNPLWGyDZXBFbFlXoLBqfauXdtzEndGmy6OnUn+oxqGcyaFansKipZ2EWYfWop+joaeqoYNxg1K1maabe6LHmpzToVqs06uXWm9DV4RZhZ+gnJXJuKDGoLennpZwW9eorMqGWImnpaSlw610hq2ipp1VUbLCpcZvhJyek5ei0Z1XmoZndm5AUliesHGwrJR2sJaW1NWh0KCCgKiVnp7Hc1nLxaSrxlhSiNSiptaipKp1VWqGgYvGn8t8opaXntFzWdnWrZ2DQzxYglmM0qGZlZ2KmcnPjdSXxnFbpqWuyFhXtqqnqs6XpnWEranZnlJRhpSeyZ5ayZfDmKKgmlmZWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWlixqJun1KKr3XZSalpThMnOoambxpieoHBb16isyoZFQoFWUo3QoaDInoeZnaGG18acnlTWpq6XVVm0fKbX0ZmsnlimqteeWYSHkZ6dcFPMxpnFm9CbWWlVaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbSqodCom6zbdlmdW1CEnaCarMqcxZfQcVumpa7IWERvhFhYtqSaocaejsyenoarmJWhg6zTp8dWWYN5qNWjmNmhWqzTq5dagoeY0Z5tU6CYksjKpshSmlZocEBDg1Zz3J6Eq8V7qpvHqavNqJ5RhKKUz8acnlTIlaWlmFuDhqnO06qh1a9vWptbV7eenZqAnJXIxqaeVNamrpdVRm1WV4W5pqDKmpePyp6luayVlXVVpdbWnYNSs3qopKCa13NZ2datnYNWgJnPnnSGoZWSnJyfy4Fxg2GgQUNSU3XacIPYyH2wxJuirMuopYSFn5SjmJWhg57CntWZW1KGntCff87InJ3Pc1Ss1K6chlmFn6Cclcm4oMagt6eelnBb16isyoZFQoFWUobDppyhW5mfnJiphJJakHBvPllSb7CdgqrJqbCbxqamodGnV7Cok5ydl26Gx5nNpcdWWYWYpsx+oMnInaaeWKaq155ZhI6emaGXlrvJnc+H1Zmdb1Wt1auch3FCWIFWgJnPnnSGop6VnatRloNnnz9sVFluqnOvqZuq3Jud0aqbp9BZg9Ocm5accFPKwqTUl4RUjJegoqufm8nJpnWDqqStx1tXuaeYmpyYiMzGpralx5h2VKer2JtZcm5YWIGEk6XHdlnNp5SWsFNkhpB2bjyCVHWpbYXWmnzdx52o1Z+hpoKFpseklZV1VZfFzavGVIKHnp+cgcyam8rSdVrVqKedhFmM0qGZlZ2KmcnPjdSXxnFbpqWuyFhEb4RYWK+Xn52fW6DSnZWpWGdTk59Fa1KCcLBsf6zHe6/IyaisyqWgWK6oms+elG5amZLQ1J2DUrWZppt7oseanNOhWqzTq5dago6lzKKUlo+bltK2q8aWn1atpKiehUNBhYRYhsKjl3WEoqXInqhRbVVgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBhcehonqcncebpaKGrKrWm1RYt6efzZ2ViKCYn7nUncVvhKirp5hbcEBXhYSGmc6bb1rLp5vJsVBnWmJvcWtYgW7ZboWll37bmZzV2KGnz1Z+p8WknMh2UpeZn6TJg1i0l8+dgZuXncikdIfYqq3GWFKN0KGgyJ6HmZ2hhtfGnJ5U1qaul1VGbVZXhbKZpcZzVKHQnZzcWWdTZ3E+boFYnamcgKyWeLHGm6fZzaemgYKhm82em6FblpKkppaGgYvGn8t8opaXntFzWdnWrZ2DVoemyqKbyZCYlqaIpMnFdYOm1KmeVEBDg1ZXs8WlnZ5Ym6bGnq+EcVJgdkA7hIF02Gyup513q5zIpqvO06ZYraWVo8eddIafkZ2rmFOEtJ3Om6qdnZaYp6BYq9fZnVqBi6Cgy52cu6GVn42mlsieWtWk15lbPz1Zg1aFxtGddYOfoJzHsVedW19vRT1RhJ2vm37VmH6qlp7TqqDU0liE0JmdncZ2WcqanKSdVVG006HQpMuosm9VbJxYV7jJpaGpn5acx6d0hq2ipp1VPm6BWIGH0JyilpiQy5ulutednJ5YpqrXnlmEh5GenXBT2NCbgWOEY3c/PVmDcq6fsKucpq6VndKtoNOnUH2nlpzJxXWDmMOgrJdVWbOooNTWoazac1Rrm1tXt56dmoCclcjGpp5U1qaul1VGbVZXhbmmoMqal4/KnqW5rJWVdVWl1tadg1KwlaaXcFvXpZqFllpnn0M8WIJ1rp6Fo5V9q5TJ0azKodBUhaGWpMiadIfKmaTUm1RYsqug06uZpbFwU5eaWoGFx6Giepydx5ulooasqtabVEVsWVeEjp6ZoZeWu8mdz4fVmZ1vVa3Vq5yHhIaZzptvWtaomoRsUmB2QDuEgXTYbK6nnXernMimq87TplitpZWjx510hp+RnauYU4Sxqsqh1J2tq3Bblm9Zhbedpcp+m5zGnqWhW6SjrZhTcWtYgVK3oqGbl566npzTuaudxXNUrNSunIZZfpKlmG6G1afEUpZWaHBAQ4NWc9yehKvFe6qbx6mrzaieUYSilM/GnJ5UyJWlpZhbg4apztOqodWvb1qVclmEjJWeoXuayMWdz2+EqKunmFtwQFeFhI2myZ+WnbmhnNKOo5accFPY063GVIKCmp+YdoWqpsiEbVqQdD9Cgllz23N8pJx4qcfGqNWb0aJZfqKczpubooaemc2pl1qCianNqKKarKxuhpRxg1K1maabe6LHmpzToVqs06uXWm9DV4RZhZ+gnJXJuKDGoLennpZwW9eorMqGWIbCo5d1hK2mx1lmU2dxPm6BWJ2pnICslnixxpun2c2npoGCoZvNnpuhW5aSpKaWhoGI05vRpqKmrHaFaXCHhIudzp96ocadnNJ2UqWqqJaGbkKBUoKJp5qcnciNn8rSjavGmm9a1qusyVtQf5mglqGDrNCVgmtbYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVofXzaeqyqqrdYRscIZZg5alnHnNxZzGoJ9WraSonoVDQYWEWI3Pnpucx5CfyaeFpJ2XbobVqtaXhFSHk6CeoFir1MdYcINlcEVsWVegsGp9q5d23MSd0abLo6dSf6jGoZzJoVqewqKlnYRZh9ain6Ohp6qhg2uaVIKHnp+cgcyam8rSdVrVqKedhEZBhFlQhqabmsjGj8mX0Imsl5d2haqp2slaWK+Xn52fW6vTnFBqWmJvcWtYgW7ZboWll37bmZzV2KGnz1Z+p8WknMh2UpeZn6TJg1i0l8+dgZuXncikdIfYqq3GWFKN0KGgyJ6HmZ2hhtfGnJ5U1qaul1VGbVZXhbKZpcZzVIbRq6TFpVB6ppeW0tVakHBvPllSb7CdgqrJqbCbxqamodGnV7Cok5ydl26Gx5nNpcdWWYWYpsx+oMnInaaeWKaq155ZhI6emaGXlrvJnc+H1Zmdb1Wt1auch3FCWIFWgJnPnnSGn5+grKGg2MZY1ZfaqFthcUZtVleh23KE1Jp3sMWep9iin59Yf6DHzJ3Fb4Samp6mnoVWisrRoYDKmpad0HZZ2KulllpThtLJocWXuZyeoIisyJp0h9iqrcZYP0KCWVeymp2WdVWS0s+n1ZPWnaigU63IrquHk3ZFa1ZSdNlzg9eddambmKHYyqfPUq6jnJ2YnaBYncbQq52DVoWdz6J/zZ2UlqZwU9jTrcZUgomnmpydyI2fytKNq8aab1rWq6zJWz07WFNRssKlxm+EnJ6Tl57VWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWli0m5+hqqKbyJ6eblqno9nGWoGH0JyilpiQy5ulutednJ5YpqrXnllxQ1BRWIGS0cZ1g5jRo62XpVuSdERvhFh02HB+q8Z+r8eeoKWhop+ErafEnceYdlSZms+pnIeEi53On3qhxp2c0nZSpaqoloaBjc+ay5ieiZue0Yuqysh1WtWop52ERkGEWVB/maCWoYOhz5bHrFmamJrHn6XMhmd2bkBSWJ6wcbCslHawlpbU1aHQoIKAqJWensdzWcvFpKvGWFKI1KKm1qKkqnVVZJmDWLSXz52Bm5edyKR0h9iqrcZYP0KCWVe5p5ianJiIzMamtqXHmHZUp6vYm1mFtX6n06OTrJ9bq9aulVNYgZLRxnWDlcOkrZuip4VldXJuWFidrWyE1Z183JyVoaycoNKBhNCVzZmdb1WfxKKqyoZYi8ajm4DLnZvJp21TrKWmyYNYtqDKnZ2XiqHIpIzYyZx1g6qkrcdbRG5ZUFGGlJ7JnlrVk8SgnlKin4OcoMzZqp3UWGF2b0NXhHWna4SmlanZm8ai1p2ooFOF0pmiysh1WseXnqvHW1e3np2agJyVyMamnlTWpq6XVVm4pJ/OyJ2PyZugjdWem6FbpKOtmFNxa1iBUrCVppdwW8ikrcrQp6jGVpOcxquc16xSYHZAO4SBdNhsrqedd6ucyKarztOmWK2llaPHnXSGn5Gdq5hThLSdzpuqnZ2WmKegWKvX2Z1agYugoMudnLuhlZ+NppbInlrVpNeZWz89WYNWhcbRnXWDm6Cux6Wm1J5Qo52nptbPWpBwbz5ZUm+wnYKqyamwm8ampqHRp1ewqJOcnZduhseZzaXHVlmFmKbMfqDJyJ2mnlimqteeWYSOnpmhl5a7yZ3Ph9WZnW9VrdWrnIdxQliBVoCZz550hp+foKyhoNjGWNOXyJmrl6GcyFhmo3FCWIFyqXKurJupsZOWqKea089YraHFn56WcFvJl6PYyVpYtJufoaqim8ienm5ap6PZxlqBh9CcopaYkMubpbrXnZyeWKaq155ZcUNQUViBktHGdYOT0KKoppStzKWlhdadnsaol6bFnlmTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYhpbRyoDKlsaZp29VrdWrnIeEjabJn5aduaGc0o6jlpxwU9jTrcZUbz5ZUlOHxKOcooakoc+bUqbXppnJq1JgdkA7hIF02Gyup513q5zIpqvO06ZYraWVo8eddIafkZ2rmFOEtJ3Om6qdnZaYp6BYq9fZnVqBi6Cgy52cu6GVn42mlsieWtWk15lbPz1Zg1aFxtGddYOmk5/HWaXZppKWqlVgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBhcehonqcncebpaKGrKrWm1RYt6efzZ2ViKCYn7nUncVvhKirp5hbcEBXhYSGmc6bb1rHp5vSqKSWWKWWysaqxqDFmVthcUZtVleh23KE1Jp3sMWep9iin59Yf6DHzJ3Fb4Samp6mnoVWisrRoYDKmpad0HZZ2KulllpThtLJocWXuZyeoIisyJp0h9iqrcZYP0KCWVeymp2WdVWW0sWm0KbHVK2Xq62FZXVyblhYna1shNWdfNyclaGsnKDSgYTQlc2ZnW9Vn8SiqsqGWIvGo5uAy52byadtU6ylpsmDWLagyp2dl4qhyKSM2MmcdYOqpK3HW0RuWVBRhpSeyZ5a1ZPEoJ5Sop+Dl6zZzKeqyqqbndVbZqJGOlFYb6ieravFd9qXnqKnotKkV7HTm6PGmm9ayJqj155SUYuYns2pocWWx6J2VKer2JtZhbmmoMqal4/KnqW5rJWVdVWl1tadgz9sVFlSgZrQm3SH0Zmb06VUZ6BGQYRZbKhyf6TIprDEl9KooqGhWa+lmtDJnHWDnJOk1Z5ZhIyVnqF7msjFnc9vhKirp5hbg4ulzc2cnbiel6a3rJzIdlKlqqiWhm5CgVKCgpqfmHaFqqbGhKCdwpqbpslbZqJGOlFYb6ieravFd9qXnqKnotKkV7HTm6PGmm9ayJqj155SUYuYns2pocWWx6J2VKer2JtZhbmmoMqal4/KnqW5rJWVdVWl1tadgz9sVFlSgZrQm3SHsKGr1Vhhdm9DV4R1p2uEppWp2ZvGotadqKBThdKZosrIdVrHl56rx1tXt56dmoCclcjGpp5U1qaul1VZuKSfzsidj8mboI3VnpuhW6SjrZhTcWtYgVKwlaaXcFuvn6rZhHqtzaKXrIRodXFDUFF0qmuw1JymqsWZqaacqNFWg9THo53Fc1Sew6WqyVtQhJ2gmqzKnMWX0HFbpqWuyFhXutKgocWbiaDHp4zXnpRuWqej2cZabjyCVFmAlKbIc1mxzausgYSnpcSeqYZobj5CU1Gg2HKtpcZ5sZWYqdefptOEhKfEoZecn1udxaWjllpThMnOoambxpieoHBb16isyoZYjc+em5zHkJ/Jp4WknZduhtWq1peEQUNSU1mxl6TKoVqEyqmmWJRbZqJGOlFYb6ieravFd9qXnqKnotKkV7HTm6PGmm9ayJqj155SUYuYns2pocWWx6J2VKer2JtZhbmmoMqal4/KnqW5rJWVdVWl1tadgz9sVFlSgZrQm3SHsKGr1VZlWpF3RG5ZUG2vbX3XxX3ZlcekrZuip4OCpsjPnZyeWJiZzqychlmDlqWcec3FnMagn1atpKiehVaM08yhnMaNmp3QjqrJnW1TrKWmyYNFa1KCVIeToJ6gWIPO16xYlVhhdm9DV4R1p2uEppWp2ZvGotadqKBThdKZosrIdVrHl56rx1tXt56dmoCclcjGpp5U1qaul1VZuKSfzsidj8mboI3VnpuhW6SjrZhTcWtYgVKwlaaXcFuvn6rZhG1akHQ/QoJZc9tzfKSceKnHxqjVm9GiWX6inM6bm6KGnpnNqZdagoyc0aJ4mpyXltKeWtWk15lbUoiny5+byrugnc+LpZ3GdlnYq6WWWkA7hIFYr5PPmXZUf6LWqlen2aSkxqpSaoRodXFDUFF0qmuw1JymqsWZqaacqNFWg9THo53Fc1Sew6WqyVtQhJ2gmqzKnMWX0HFbpqWuyFhXutKgocWbiaDHp4zXnpRuWqej2cZabjyCVFmAlKbIc1mxzausgXinpM6eq4RsUmB2QDuEgXTYbK6nnXernMimq87TplitpZWjx510hp+RnauYU4S0nc6bqp2dlpinoFir19mdWoGLoKDLnZy7oZWfjaaWyJ5a1aTXmVs/PVmDVoXG0Z11g4Kbq9ZZedmlnJasU2WGkHZuPIJUdalthdaafN3HnajVn6GmgoWmx6SVlXVVl8XNq8ZUgoeen5yBzJqbytJ1WtWop52EWYzSoZmVnYqZyc+N1JfGcVumpa7IWERvhFhYr5efnZ9bg82spFF6qJ3QxqyBZ4Rjdz89WYNyrp+wq5ymrpWd0q2g06dQfaeWnMnFdYOYw6Csl1VZtpukzqyhnMWboHWEranZnlJRjaGZzcWduJrHoo6lmJ2gWKvX2Z1abkBSWIKHmNGebVOEnKTYgYbWn8SZq1JlW5J0RG+EWHTYcH6rxn6vx56gpaGin4Stp8Sdx5h2VJmaz6mch4SLnc6feqHGnZzSdlKlqqiWhoGNz5rLmJ6Jm57Ri6rKyHVa1ainnYRGQYRZUH+ZoJahg4TKpdZUh6egm8ioV5iGZ3ZuQFJYnrBxsKyUdrCWltTVodCggoColZ6ex3NZy8Wkq8ZYUovHpqCsopSVnaFuhtWq1peEVI6gm6LHm47NyaaN1JuWdYStqdmeUj5CU1GEr5nOl59WhZumrYOErNLGnaqBalRnoEZBhFlsqHJ/pMimsMSX0qiioaFZr6Wa0MmcdYOck6TVnlmEjJWeoXuayMWdz2+EqKunmFuDi6XNzZyduJ6XpresnMh2UqWqqJaGbkKBUoKCmp+YdoWCoNjYWIbWo5Sd1FlshmhuPkJTUaDYcq2lxnmxlZip15+m04SEp8Shl5yfW53FpaOWWlOB1sqn05vWrXZUZGmFVoir06qlwqpvWtarrMlbUH+ZoJahg4zKps6ZW2FxRm1WV6HbcoTUmnewxZ6n2KKfn1h/oMfMncVvhJqanqaehVaKytGhgMqalp3QdlnYq6WWWlOG0smhxZe5nJ6giKzImnSH2Kqtxlg/QoJZV7KanZZ1VXTQ0KvKoMlWaHBAQ4NWc9yehKvFe6qbx6mrzaieUYSilM/GnJ5UyJWlpZhbg4mc0s2AocWal6afW6vWrpVTWIifzMqcxonKmaeHpp7Hc1nZ1q2dg0M8WIJZhcWmlW5ahprLz5nVp9SZW2FxRm1WV6HbcoTUmnewxZ6n2KKfn1h/oMfMncVvhJqanqaehVaH182nqsqqq3WEalmEjJWeoXuayMWdz2+EqKunmFtwQFeFhI2myZ+WnbmhnNKOo5accFPY063GVIKCmp+YdoV6nMvFraTVVoKZ1Jqe1pqgmVh5oNLVWpBwbz5ZUm+wnYKqyamwm8ampqHRp1ewqJOcnZduhseZzaXHVlmFmKbMfqDJyJ2mnlimqteeWYSOnpmhl5a7yZ3Ph9WZnW9VrdWrnIdxQliBVoCZz550hnuflbFThcnZrINhoEFDUlN12nCD2Mh9sMSboqzLqKWEhZ+Uo5iVoYOewp7VmVtShp7Qn3/OyJydz3NUrNSunIZZhZ+gnJXJuKDGoLennpZwW9eorMqGRUKBVlKGw6acoVtyoJysUbjGsNVSq6Kdl6GthWV1cm5YWJ2tbITVnXzcnJWhrJyg0oGE0JXNmZ1vVZ/EoqrKhliLxqObgMudm8mnbVOspabJg1i2oMqdnZeKocikjNjJnHWDqqStx1tEbllQUYaUnsmeWq2b1ahZdaKn15+l2slaZ59DPFiCda6ehaOVfauUydGsyqHQVIWhlqTImnSHypmk1JtUWLWepM2BmZWcmJ+hg6zTp8dWWYehocyanLzMnaa2qZecn1ur1q6VU0U9UYSBhsKfx3Fbfpys11Z61NKsoc+rl1iUW2aiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGLmJ7NqaHFlseidlSnq9ibWYW5pqDKmpePyp6luayVlXVVpdbWnYM/bFRZUoGa0Jt0h7Chq9VWdafQraDSrpVRa1Vgom5CgVKeq3N+pp2orprK1Kyh0KRShNGcosmdbVOelJ3XxlqBhcehonqcncebpaKGrKrWm1RYt6efzZ2ViKCYn7nUncVvhKirp5hbcEBXhYSGmc6bb1quoqrYWXOgpqea0tadgWaEY3c/PVmDcq6fsKucpq6VndKtoNOnUH2nlpzJxXWDmMOgrJdVWbabpM6soZzFm6B1hK2p2Z5SUY2hmc3Fnbiax6KOpZidoFir19mdWm5AUliCh5jRnm1ThJyk2IF70KDWnaenmFmYWGajcUJYgXKpcq6sm6mxk5aop5rTz1itocWfnpZwW8mXo9jJWli0m5+hqqKbyJ6eblqno9nGWoGH0JyilpiQy5ulutednJ5YpqrXnllxQ1BRWIGS0cZ1g3/Hp6yTmp6DfpzGyJ2qg2VwRWxZV6Cwan2rl3bcxJ3Rpsujp1J/qMahnMmhWp7CoqWdhFmH1qKfo6GnqqGDaZJUgoV/oaWmxKp0h9iqrcZYUobDppyhW4Ommqea2M2dg2GgQUNSU3XacIPYyH2wxJuirMuopYSFn5SjmJWhg57CntWZW1KGntCff87InJ3Pc1Ss1K6chlmFn6Cclcm4oMagt6eelnBb16isyoZFQoFWUobDppyhW4OSpKilxdWh0KCEY3c/PVmDcq6fsKucpq6VndKtoNOnUH2nlpzJxXWDmMOgrJdVWbabpM6soZzFm6B1hK2p2Z5SUY2hmc3Fnbiax6KOpZidoFir19mdWm5AUliCh5jRnm1TfJSlyYNnnz9sVFluqnOvqZuq3Jud0aqbp9BZg9Ocm5accFPKwqTUl4RUjJegoqufm8nJpnWDqqStx1tXuaeYmpyYiMzGpralx5h2VKer2JtZcm5YWIGEk6XHdlmmqJSqWIeW3NVYp5vUp61SfKfHm6XZhmd2bkBSWJ6wcbCslHawlpbU1aHQoIKAqJWensdzWcvFpKvGWFKLx6agrKKUlZ2hbobVqtaXhFSOoJuix5uOzcmmjdSblnWEranZnlI+QlNRhK+ZzpefVnuhl7KDipzd2Fh+yqilrIKCpcienqVYZVOTn0VrUoJwsGx/rMd7r8jJqKzKpaBYrqiaz56UblqZktDUnYNStZmmm3uix5qc06FarNOrl1qCjqXMopSWj5uW0rarxpafVq2kqJ6FQ0GFhFiGwqOXdYSHptieUHmdlJXNz5+DYaBBQ1JTddpwg9jIfbDEm6Ksy6ilhIWflKOYlaGDnsKe1ZlbUoae0J9/zsicnc9zVKzUrpyGWYWfoJyVybigxqC3p56WcFvXqKzKhkVCgVZShsOmnKFbcqCcrFG4xrDVUpRWaHBAQ4NWc9yehKvFe6qbx6mrzaieUYSilM/GnJ5UyJWlpZhbg4mc0s2AocWal6afW6vWrpVTWIifzMqcxonKmaeHpp7Hc1nZ1q2dg0M8WIJZhcWmlW5adaDI2li1l9qoWWVVaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbedpcp+m5zGnqWhW6SjrZhThLamyZvGmZCamKe4qZzJoVqs06uXWm9DV4RZfpKlmG6Go6fFq4KInqqnWaykm8rSrFiTWGF2b0NXhHWna4SmlanZm8ai1p2ooFOF0pmiysh1WseXnqvHW1e3np2agJyVyMamnlTWpq6XVVm4pJ/OyJ2PyZugjdWem6FbpKOtmFNxa1iBUrCVppdwW6Wlm96EjJ3ZqlKB0J2c0q1QZFpib3FrWIFu2W6FpZd+25mc1dihp89WfqfFpJzIdlKXmZ+kyYNYtJfPnYGbl53IpHSH2KqtxlhSjdChoMieh5mdoYbXxpyeVNamrpdVRm1WV4WymaXGc1R6zqiaz1mElrCnU5OfRWtSgnCwbH+sx3uvyMmorMqloFiuqJrPnpRuWpmS0NSdg1K1maabe6LHmpzToVqs06uXWoKOpcyilJaPm5bStqvGlp9WraSonoVDQYWEWIbCo5d1hIGw1J6inaGhnIaQdm48glR1qW2F1pp83cedqNWfoaaChabHpJWVdVWXxc2rxlSCh56fnIHMmpvK0nVa1ainnYRZjNKhmZWdipnJz43Ul8ZxW6alrshYRG+EWFivl5+dn1t906WcoK+YlazaqMakzp2nnVVooUNBhYR0r5uCpZynsZrJqaSap6FRsNCbzJfGcVuYlKXWm1mFtKqh0KibrNt2WZZrUlGJeaDWzpnVb4Soq6eYW4OEmNLJdVq0qqSn0KBZk3c9O1hTbdubhNSWp6ycl6OtzKWlhbCnm8yblnWEn5jQrJVTWIOjzdCqyqbbcVtkY1uDh33U1qWZ1XNUrNSunIZZfpKlmG6GpqXRmsOnoqVVaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbedpcp+m5zGnqWhW6SjrZhThLamyZvGmZCamKe4qZzJoVqs06uXWm9DV4RZfpKlmG6GpafEp8+Zp6ZThsSmWZSiRUKBVm6vnIWqyH6olJ2jpc3QpoF+0Zekl5d2hZyY0dedWoGJl6XLgaDInZWfdVWl1tadg1K3oqGbl566npzTuaudxXNUrNSunIZGOlFYU3/Fzp2eVLKgmpuhWbebr9mGZ3ZuQFJYnrBxsKyUdrCWltTVodCggoColZ6ex3NZy8Wkq8ZYUovHpqCsopSVnaFuhtWq1peEVI6gm6LHm47NyaaN1JuWdYStqdmeUj5CU1GEr5nOl59Wfl+gmsyiV7jNn6bCqqeqx1tmokY6UVhvqJ6tq8V32peeoqei0qRXsdObo8aab1rImqPXnlJRi5iezamhxZbHonZUp6vYm1mFuaagypqXj8qepbmslZV1VaXW1p2DP2xUWVKBmtCbdIesjIWtVoan0lmmyll2oKqgU5OfRWtSgnCwbH+sx3uvyMmorMqloFiuqJrPnpRuWpmS0NSdg1K1maabe6LHmpzToVqs06uXWoKOpcyilJaPm5bStqvGlp9WraSonoVDQYWEWIbCo5d1hIGLsYVQc6enpdPOWNCYgnqopKBbknREb4RYdNhwfqvGfq/HnqCloaKfhK2nxJ3HmHZUmZrPqZyHhIudzp96ocadnNJ2UqWqqJaGgY3PmsuYnombntGLqsrIdVrVqKedhEZBhFlQf5mglqGDhtCkz5WlUluQyJhgh5N2RWtWUnTZc4PXnXWpm5ih2Mqnz1Kuo5ydmJ2gWJ3G0Kudg1aFnc+if82dlJamcFPY063GVIKJp5qcnciNn8rSjavGmm9a1qusyVs9O1hTUbLCpcZvhHyNf39ZpJmp1NKxpYNlcEVsWVegsGp9q5d23MSd0abLo6dSf6jGoZzJoVqewqKlnYRZismmmXmhl5XJz3WDptSpnlRTjtGeoMnJj6DGpIerx510hq2ipp1VPm6BWIGAw6Geb1WBt4ODhaWcnNObpauEaHVxQ1BRdKprsNScpqrFmammnKjRVoPUx6OdxXNUnsOlqslbUISdoJqsypzFl9BxW6alrshYV7rSoKHFm4mgx6eM156Ublqno9nGWm48glRZgJSmyHNZrbiFhIF5m6zHW2aiRjpRWG+onq2rxXfal56ip6LSpFex05ujxppvWsiao9eeUlGLmJ7NqaHFlseidlSnq9ibWYW5pqDKmpePyp6luayVlXVVpdbWnYM/bFRZUoGa0Jt0h6yMha1WdafGnlmTdz07WFNt25uE1JanrJyXo63MpaWFsKebzJuWdYSfmNCslVNYhpbRyoDKlsaZp29VrdWrnIeEjabJn5aduaGc0o6jlpxwU9jTrcZUbz5ZUlOHxKOcooaAjK6CUnzHn6DSoqSap6FTk59Fa1KCcLBsf6zHe6/IyaisyqWgWK6oms+elG5amZLQ1J2DUrWZppt7oseanNOhWqzTq5dago6lzKKUlo+bltK2q8aWn1atpKiehUNBhYRYhsKjl3WEgYuxhVB8nayT08KqxVSRckY8U1mfrXGx15x92ZmXqNaiptJZfKCbnpbInlrHk86nnlRTjMijoK3NnJzGpG9a1qusyVtQhqabmsjGj8mX0Imsl5d2haqp2slaRWtWUliwmqTJdlJ5jIB9hLGqxpjRpqaTp63ImlmUokVCgVZur5yFqsh+qJSdo6XN0KaBftGXpJeXdoWcmNHXnVqBiZely4GgyJ2Vn3VVpdbWnYNSt6Khm5eeup6c07mrncVzVKzUrpyGRjpRWFN/xc6dnlSqiIZ+U4zEo6fRyVpnn0M8WIJ1rp6Fo5V9q5TJ0azKodBUhaGWpMiadIfKmaTUm1RYtZ6kzYGZlZyYn6GDrNOnx1ZZh6GhzJqcvMydprapl5yfW6vWrpVTRT1RhIGGwp/HcVt6h4avVove1J2v05+mndRbZqJGOlFYb6ieravFd9qXnqKnotKkV7HTm6PGmm9ayJqj155SUYuYns2pocWWx6J2VKer2JtZhbmmoMqal4/KnqW5rJWVdVWl1tadgz9sVFlSgZrQm3SHrIyFrVaImdSimMallVNncT5ugVidqZyArJZ4scabp9nNp6aBgqGbzZ6boVuWkqSmloaBi8afy3yilpee0XNZ2datnYNWh6bKopvJkJiWpoikycV1g6bUqZ5UQEODVlezxaWdnliAp9SmmNBZhJKan5aGkHZuPIJUdalthdaafN3HnajVn6GmgoWmx6SVlXVVl8XNq8ZUgoeen5yBzJqbytJ1WtWop52EWYzSoZmVnYqZyc+N1JfGcVumpa7IWERvhFhYr5efnZ9bmNKnn6WZp5rTz1jUp8SenpWnW5J0RG+EWHTYcH6rxn6vx56gpaGin4Stp8Sdx5h2VJmaz6mch4SLnc6feqHGnZzSdlKlqqiWhoGNz5rLmJ6Jm57Ri6rKyHVa1ainnYRGQYRZUH+ZoJahg4bQUq6drKZVaKFDQYWEdK+bgqWcp7GayamkmqehUbDQm8yXxnFbmJSl1ptZhbedpcp+m5zGnqWhW6SjrZhThLamyZvGmZCamKe4qZzJoVqs06uXWm9DV4RZfpKlmG6GsK3VnsuinlJ/otaqV5aGZ3ZuQFJYnrBxsKyUdrCWltTVodCggoColZ6ex3NZy8Wkq8ZYUovHpqCsopSVnaFuhtWq1peEVI6gm6LHm47NyaaN1JuWdYStqdmeUj5CU1GEr5nOl59WiKenpcyknIWwoavVVmRakXdEbllQba9tfdfFfdmVx6Stm6Kng4KmyM+dnJ5YmJnOrJyGWYOWpZx5zcWcxqCfVq2kqJ6FVozTzKGcxo2andCOqsmdbVOspabJg0VrUoJUh5OgnqBYhtrYpKHPm1KEy6yrhGxSYHZAO4SBdNhsrqedd6ucyKarztOmWK2llaPHnXSGn5Gdq5hThLSdzpuqnZ2WmKegWKvX2Z1agYugoMudnLuhlZ+NppbInlrVpNeZWz89WYNWhcbRnXWDipOazp5Xt6KdoaSYUZWDZ58/bFRZbqpzr6mbqtybndGqm6fQWYPTnJuWnHBTysKk1JeEVIyXoKKrn5vJyaZ1g6qkrcdbV7mnmJqcmIjMxqa2pceYdlSnq9ibWXJuWFiBhJOlx3ZZuJqSnZ1ThM3OqM2XgmZbYXFGbVZXodtyhNSad7DFnqfYop+fWH+gx8ydxW+Empqepp6FVorK0aGAypqWndB2WdirpZZaU4bSyaHFl7mcnqCIrMiadIfYqq3GWD9CgllXspqdlnVVhcXDpMZStZ2mop+eg2lZlKJFQoFWbq+charIfqiUnaOlzdCmgX7Rl6SXl3aFnJjR151agYmXpcuBoMidlZ91VaXW1p2DUreioZuXnrqenNO5q53Fc1Ss1K6chkY6UVhTf8XOnZ5UtpWbnphZpqKY2Nehm4FnVGegRkGEWWyocn+kyKawxJfSqKKhoVmvpZrQyZx1g5yTpNWeWYSMlZ6he5rIxZ3Pb4Soq6eYW4OLpc3NnJ24npemt6ycyHZSpaqoloZuQoFSgoKan5h2hYqYx9CdWKSik6vVopqEa1JgdkA7hIF02Gyup513q5zIpqvO06ZYraWVo8eddIafkZ2rmFOEtJ3Om6qdnZaYp6BYq9fZnVqBi6Cgy52cu6GVn42mlsieWtWk15lbPz1Zg1aFxtGddYOKk5rOnlenpZGkq5yUhJRakHBvPllSb7CdgqrJqbCbxqamodGnV7Cok5ydl26Gx5nNpcdWWYWYpsx+oMnInaaeWKaq155ZhI6emaGXlrvJnc+H1Zmdb1Wt1auch3FCWIFWgJnPnnSGjZGTpJhRp82Z1KXLl1lmVWihQ0GFhHSvm4KlnKexmsmppJqnoVGw0JvMl8ZxW5iUpdabWYW3naXKfpucxp6loVuko62YU4S2psmbxpmQmpinuKmcyaFarNOrl1pvQ1eEWX6SpZhuhrWZw57HVHyhn6jVnKzRhGlakHQ/QoJ', '2019-01-10'); +INSERT INTO `jpo` (`id_jpo`, `id_eta`, `details_jpo`, `date_create_jpo`) VALUES +(46, 65, 'hdOsUKGnpaXJ1FjQp9iZq6aYrIOXrNfTpqyBopud11mjyaxQbZpxY5uBndVSlWRZn5Sr1lZzlMZ2qNOllaDDoqXXWWyTdpeWhJJoyVIlt/vSU2qanlehk5p2j1Z3pM6eqoSsn5+sU52L0JvEk9WdqKBTnchWrcrSoaqBmvW7JOKa066mo6GlUdDGq4Gb0JqopKCa15+m09dYqdabUqbRrqqEnZmkqJif19Cm1F6ClaKgpqKDp6zKhJydgaiXpsWopdirlaNYn5bXgajTociZrKWYrtWpV8rYWK7KqZusx6tX0GDztPrcpcXDpMql1Zmml6GtkVaDytdYmdGmpJ3QraDXWZSmWHZ3pYGo06HSo6yXpajRqlfJyatYwqSbpcOtoNOno1GclJ/XgaTGpYKYopiZ/Ob44NfJpqzUVp6ZxKipxa2fmqqYpITGrIGT1pmlm5ir1mRzx9Z2', '2019-01-14'), +(47, 280, 'c8iipm90qG+00KrVl9VUqKepntWqnNiEnJ2Boll90KyczaCelqWYn9iBi9aiJbf726WiyKupoZOtdoFemKfUppjYop+fWJyfzdWhwp7HVJ6mU5/SqKTG2KGnz1aiqtGfnNesmaCmoZbQzZ2KbsSmd25incysdaHIoa6fcpR2tZqkyZ2ZUWppUa7Cptebx6ZZZGNqnFabyoRxoIH5tfoCWWiaoWxgmnFtk8Wh13CemKKocWubVqnayVh6wquWoc+opdhZcYOKdISgkJzKqKBwnZupd6WKioWxmabCnZelx6erhIHztPrnpcnNpMaky5lZhJis15es18WsodCkUp3WWYTJp6Sap6FRp9Cl0Z4lt/vboJ7RqpjO1p1YsKiZmdCiqsWtlaaqU5XJgYoktSTdnJejrcylpaGTnKHXdG6cy691oJuib3Rilc3Xdp2Wy6p3bqh3s6Wp2cmrWNCrqJ3UrZzXWZSWWJ9Yqc+rxp/EoJ5SdZrYmqDS06asgZumWMauV6eenqWqmFHIxlinodShmqacqNFyZtqiWGDHpaSlw62g06dQmqacpc3CpMZSx6hZmKKr0JerztOmWNGooZ7HrKrNqJ6fnZ+dyYp01nCelqtwb2jYdHOUyKGun3KWodh3c8Z3g5KlmJXNgWqBf8OmrFJlaZRvV8nJWHHJVvW7JNlXlWyYbWeVb6CQnMqooHCdm6l3x6tXqKWIWMKrUnq2jFegm6JvdGKVzdd2nZbLqneioq7VVqOMqZunzZtSgCW8+RitlZ2h9rQmCarGUo9UalKlrshWm8rXWJrQq5Wgx6uqhJ2VUXucpSfk+gpSj1R6pKWa1nJmyc2udp2am66gdZnWd2xgnJynop2cyqigcK5wd57WVqrUzar75PjbndVZh9OrpJarU4DZ153TpsenX6CVrNNxV9XTraqBopNYuKigyVmAo6eZltfUodCg0Jmlnph1kqt1hYyep9Ojk6zLqKWEop6arJyS0MZYxqaCmqikoJrXn6bThKiq0JyXq9WiptKnlZ2kmFqg1nadlNRydWGod59lm87adnTFn6h2j1lzxneGlqaXo8nFoYFjx6ZZePa8Jd+t182dqoFoYmmbWZvJWWFnoGZhhCS7I9KCZXKab2jFdHOUyKGun3KWodh3c8Z3XVGOmJ/I053Fm4Jmb1KUr9Wfo4WWaGmaVpadgmptzGxgUfu28wSBaZqagnCbpHF1kph1oZOcodd0bpzLr3Wgm25eWImW0sWqxpbLVHBSna7MpFeXlGlxgZqXWJNvn5dpUPS79dGEknHJbpGWd25incysdaHIoa6fcpR2p5ym0J5Qefu28xjVnc2bJbf72qWeg2dX19mdWMWbpVikqKzHoZWjq1OVyYF7yqYlt/vbU3rVqJjYoGean3JhnMuvdaCdmad2b5OirbHE9eX24pdTidWlncrXq6HQpKCdzllom1mipp1ThMXKptVSr5WupJycyFZ419aZq52YpHaeaJmidV+VoalvoMWh13Celqtwb2jHn62joJyh13SCp9erV9iopaVYpZbS1J3KmdCZppehrYNmapOWaWaSbGBpmmdnlF+ek6ujbISOWNip2WKeoKae0JijypGamdaam6XRp6uSnJ+edJWjop1nxZvYcnWWnK+hcpnXonRnxZ+odp6doNp3bJOqcW2TxaHXcA==', '2019-01-16'), +(48, 46, 'c8iipm90qG+gw3arodemp/W2+wybV7XTqqzGqVKH16+c1q2VpHRik6KdZ9ZwnFqnlKapnlaKxtGdnMpWa1jI/Lom4qajoZijhJNokmuCma1ShprQm5vOhG5Ywqykoc5ZaZRqaVGcmFGdyVgktSTUWWNqoZ+YqaOgZ5zKrHB0xqKtonWlb3SVb7ckuyPbw6Kcl6ZZx12g08qnqs6XpqHRp6qEnqRRnFqa0tSb05vSqKKhoayfZZmjoGetn1ZsWK+eqcerlZWhplEn5PoBUpNooWVjWZZmV8/Fpq7Km6RkgmtnhJ/ztPrcp9bKndNegmZpUqCa1aljhZVvWMKspKHOZVeVblCemZxdhJZYy6fLomVSZW+DoKzO0nSa03RuZ8airaI=', '2019-01-16'), +(49, 59, 'c8iipm90lW+u0K3ToCW3+9uYWbOlqdnJq1iwq6id1K2c11mcllhlZITOmdOlgmZpY2xZx5tXlZyga5FW9bsk2VeVa5hkaGFtk8N2nWHGna9wb53MrHW5062rgaKXq4KlmMaoo1GnqFHF1Z3Nm8emrFKXroN5faaEq6fPqlKd0Fmd06eTpaGin9LGpcag1lSaqJicg6Kc2ISep9Ojk6zHrqnXWaL0u/XayiS7I9vUmaempmefZZvO2nZ0xZ+odqulqoSak5StmJrQzZ3PpoKgnlKjrsWioMiEqKfWqFKcx6xXyPyz8+GgoNLUrNOT1p2ooKZZ16Ws2clYpMJWn5nWoqUnvPLanVOd09OrgZbHVKWTU6/MqaDZyVic1lZ1fqNnc8arbm1nl5ran3TFm9hyhZemWcykndTWpZnVn6Gm1Vmc2FmRmpyYpIQkuyPSgqCaUqWexp6c18egnYGaWZ3PqaPTspWmqlOg0tVYzZvHqVn1tvsDVqOMxaqqyqz1uyTinISpkaNYn5bXgajGpNWjp6CYpdZWmMnRoabKqaaqw62gyqxQlZ1TnScD+uH0+/e89NytxJijzternc6boKyCmq3JnFCmplOUxcf75PQLVJ1ZlJzGq5zO0GZ0kJqbrqB1m82vbnSdp6XJgafR9eX24qSUrcylpYXJq6yBmaGt0qX65/vZllhbodPWqoGex6dZmJSmzKKjytdYoc+am6vSqKXNm5yWq1OdyYGrwp/HmKJSZWyMVpjbyZtYzZulWIR1maKGlaObpZbIyquBk9Km/LX14dZjpM7IoauBmpergqb65/vZpaGYo9eDdJCUoFSdl1Nql55nlYT7uyPWUmmZoWeUWaSgraZR0MargZ/HppykmJ3MqVfJ2Vil0J+lWMaeV7GaoqRYW3rSx6fUXoKYqJWopsikq8bYoafPVpesgq+g16KklqtTnc3Dqsali2J1lKV3n2Wbztp2dMWfqHaem6midV+Voalv', '2019-01-16'), +(50, 74, 'gdOuop/7tvMNxquBgtGmrZemWbKrrcrWrJ3UVnV+o1l5yZqlpKuYpaDFoddwzplZn5irxqicyc1Ya4F3qKrLpVfInlBqoFP05yPYgWOYnHVhl6LZdHPJza52xqRSotGuqdL8s/PhmFHH0KbVm9Cpnm5incysdQ==', '2019-01-16'), +(51, 45, 'c8iipm+IgoO4pouBgbeKfoSHfrZWaZWVcXSQmpuuoHWbza9ue6eoo9IkuyPbx1Sdp1OMxKOcyc1YaZdWePvl++Daq5mWqlOVyYFpkZqC97z001mUbZ+hk5yh13RunMuvdbeomaP7tvMNxljFp4KBmqSXooNobYWxmarUVpadgmpuzFnztPrTUZaRoJ1hxp2vcG+dzKx1uNOhqiS59OHHWZvZWX2SqpeahJJugXPYpqKeU53IVmiczFj75PjSWJRpn6BolJqucW3Iyq6ffqeHWX/2vCW/i66piouBendYrvzZJrnyyoD2tCb1jKZ+rnmLe3hZiZek1Z9YfKZWfnmCi3y3jXGGinSFrbCGnWHGna9wb53MrHWzs4tYp4WEhaONgLOHg1Fyb2DIyq6fbsadr3D22yXM+QWEe3mxVmxYpa6g16KellhgUafQpc6X1Jeik5+i1perztOmWIeXn6idWYrJq6aam5hRyc9YqfXl9u2mmKWQmZjLJ7v6CmOkndWtmNmrkZ+sU16Esfvk9ASooqWmntWfnKGTnKHXdG6cy691J9vyx/rTUaaie4GCtINZbFN82J+qztKdWI5WhZ3Ur6DHnlBXmaChn4F70J/PmauVnJrPn6rG2KGnz3JhnMuvdaCdmad29tMm9/oBUqSIjFKAgbVWptXYoafPqVJygnpkpmZzbWeXmtqfdMWb2HL81PXPJdZXsqmGjKqFgIuCfIaxiXz0u/W6saaGtXOrhn6FU3OfZZvO2nZ0xZ+odqSaqYRmUIWqlJrYxq3TUo9UfKecrMykoMrWWJ3PVpad1ayc1q1QlZ1To8nUrMKn1JWnplNmg4mm0tGdpM2bpKHHdWbIoqZvdJea2p+Bz6XFpqKip6LSpKqFJ7v6AVagp9VZndOrnZKsnKDS1FgktSTUWaKUq9efqYXIrViSamFok2hplGppUauoo4TYr9hgxZqan5idyKigyJKbp85yYZzLr3WgnZmndmVhkIGq1peCgfy19eLH+bonDaqhxFaCmdSiqoRqZ5ZYYFGxJLoj4oJ3qKelnMiio8rXWKfWVn+Zzp6qzJ6ik52mUZGBjCS1JN2lUm1Zk2dXmZZYaZNWaGqCammgaJSarnE=', '2019-01-16'), +(52, 79, 'c9R3gKCqp5bXgYfWqMemrZemWSa5+QWEpF+2iH95j3yAqnp9UaSYUbfCpcaWy1RrYWNrkmhnlp1YnMZWa6CC/Lom2VBib5tfoJCon27Sco+bpqLXm1fJyatYzaWVmdexc5Opbm2ocYHWJLsj29WZp6aUrcylpYXInauBnKGqz5qrzaiepFijktaBpMalgqSroZme1qmc2tardJCmcHTSd3snvPLapaKf19WqwqbLo6dSl5rRqVfRyatYzZeUp9Saq9OioparU5bYgZnWUtSZrKaUrtWXpdmEnF/CpqKky5yY2KKfn1ijktaBpMalgpWpoqWe0aqg2KBnqJ9yonayq/rn+9leoaGkx9Oh0abLo6elb2jTdHPVooGmx6WkpcOtoNOno1GrqKOEzZ3UUsOdnZemZYOinIXYqpnPqaKn1K1Xya1QnV+b9Ocj4cOX1Juen5in13Jm1aI=', '2019-01-21'), +(53, 345, 'c8iipm+EmFHQ2psktSTdnlKb/Ob469nJpKHGqFKc11mqxZyi9Lv12oSkp8an1FSdl1OJJrn5Dtanps+bUqfXr6nJWaOWq1Oh09OsxqWCoJ5uYp3MrHWhyKGun4lzhad9gIRqZlGllKPXgWqRY5twm6RxdZKaoNuidJzKrHCcx1lolFmYUfu28wSBaZdSynBolpyvoXKbztp2dMOocHSRnaDad2yVoalvt8pY16HXp1mloq7Ll6DZybJY0aKnq4KdnISrlZ+rmJrLz53Ol9CorF5Tp4qe+ugm4avKqpeygqmY11nztPrTUdLQrdRSxaOnppSc15uphSe7+gFwbmfGoq2idZSarnGVzdOdxKbHqatypprGqJySx6ed1qhfqMerptKnlV+mmKWgkJzKqKBwnZupd5+YqaOgZ5zKrHB0xqKtooKcUZ2mpYTCrdSly1SpoaaszJijyoScnYGsl6bLq1fUmqOknaVR2c+dgZzRqaug9rwl35yFyF+hzqOXqtWiptJZlZ9Ylp3F1KvGUsaZWaWYnNKkm8qEqKrQnJer1aKm0qeVnaSYUcfWodSb0JlZoahZ1Zuq2cWtqsKkpnTEq3WgaJSarnE=', '2019-01-22'), +(54, 164, 'c8iipm90lW+Gp5nKpMdUq5emrNKoq87WWKTGVp+dy6Wjya6iUZyYUcfJmcSn0FZ1YZV3n2Wbztp2dMWfqHaem3Wgm6JvdGKTop1nxZvYcnWWnK+hcpmjup2mxrBSnCW8+Q2cn6aupZrWgaTGUs6tnPW2+wybV80nu/oVqpeky56phKWfo6tTlcmBptClgqSopKee1lam2tqdqtWbpVjOnqqEc1BtmqVvoJCan26RmKKocXXHn62joJp2nZikdp5omaJ1X5WhqW+gxaHXcJ6Wd6WUpsiaoIWWWKXCqKV0kZt1hJ2VUXFTmYSRaIH15fbZUmRwg55XlZR0Z8WfqHaenaDad2yTqnFtk8Wh13CemKKocXXFdK3K0pyqxpqbWJRtV9GamW1nlW+ExZ2BY5lUoVJjaYP5uicEWGqRVppYkmlzk52Zp3Zvlc3Xdp2U1HJ1YZei2XRzyc2udp2YcKvDppzIolBjbVOexcp0kJSgVJ2XU3KDnleVlFj75PjSWJNsV8xZYGF0laOinWfFm9hy', '2019-01-22'), +(55, 94, 'c9R3fHZYfXa5pYGBZJNUhnOFjIOCeIWuh42zhHd9nminonWgb4R4UbeihaZ2q1RrZVOGpIiKhah9WJp+WKbErKefelBia3ttk9F2', '2019-01-22'), +(56, 96, 'g8VZmqCtpZ8n5PoKl4KEqKSnntZWhtranarVm6VYxq5Xp399dXlTpMmBnCS1JN2roailyKiYhdCdWK6bpJvUnpvNWWJhWICS1tRYk2KTbVmWmFmbnmuahPu7I9ZSaZShV8mtUJWdU2KXyWuRUiW3+9JTapmeapWS', '2019-01-22'), +(57, 405, 'o8lZo5KlmJXNgWiTUsj3vPTcr9WfnNeEamiSb1JpkqFklXCYUWClltfVmdakw6iioaFZ06Wq2M2apMZWpa3UWafQmpOWYW+Vzdd2zZeCp5qfmJ3MVmibhKWZ06lSapJqcIRqYJllZGjMgWDTl9WomqelmtefptOEqKfUqZuazp5X166iUaifksfGYZ1hxp2vcA==', '2019-01-22'), +(58, 404, 'eLCGdXJYYFGnp3mBe7CIfoSDi7JWeLeofYave4VY0a6t1p5QpJ2mUdTQqtWX1VSap1Op2JijzsdYnMZcoJrVqXKVaVCZWPa0JgFYkmmCnFlsb67PVqrZ3aSdnl2imcadoNKgalFoo6mfgafWps6dp5dtWZOmr6CEmqfTmpeqnFln1LFQlK2lo8nPrKShzqOrbVOb0qibytZloc6XmZ2cWaXTp5VsWJag0NCqm1LUm5taY2WDZmOFlGFzgZyhptZmncWmmZ2xbVGGsKjGoIKHmqCmW49WqsbSq2XUm6ShyHRXyqiepWWmmt7GcoFjl6SxbVOmxKieztJlqsqdmqycWWfUsWtRpZSjy8qmjpTRqK2hoHODZ2WayaVzgaOTqsmipZGllZesbVGXxqWcUtiZq6acnMSiZMbQoZ/PcFKaw6yc0KKelnNab6DWpIGl1q2ll3Bb05ebyc2mn5tWYqjadFfTrqSdoaGWnoFo0aqdVJuhpZ3IqHGFlKiwgZmnqtSepdh8n52npWyEw6fTlsemZpugmsqbcYXSp6bGcVKlw6uezaddo6GamdibWJGi2m9Zn5Sryp+lktCdntVwUmmQbpzRdFCnnaWlzcSZzV/DoKKZoXODmJjYyaShz5ttWqB1o81Zo6Wxn5ahg6XCpMmdp2xTadOucoXUmZzFn6CfnFln1LFrUaeopdDKpsZsgmSpqm5ZxaWpycmqcoFmorCCnKzWq5WfrHag0NCqnFLEo6uWmKuQn6TGy51ygaShpsd0V8qonqVlpqXdzZ2bUsuioZelotdxV8vTpqyOrZehyaGrnlmZn6CYo83Vc4Gox6atm5aaz2OY0c2fpptWlJnVnqPNp5VsWnF9yYGrwp/HmKJSZVnJ+bonDa6qypukWJRpaJ11X52hcW3QyljUptugnm9VpsSons7ScliRpqpzgqmYyJ2Zn59tUZTRsJxS0amtnpynyHBXldSwc4GYoarGnqmeWWChsFOU2dOqxqDWd6ieoqueVpnU1pyd02ObpcOgnJ5ZnqCmmGyEx6fPpo+nraufnp1WoNPMnarKqm1YyKil2GanlqGamdibWMqgypmrm6d0g6yc19ihm8KiX5nOop7Sc1CTmaaW0Mqmxm2EcoWXU6zEo5zJzV6mw6mic5NvV9GaoqRYZWGVmnSQnstydWGopaFyZtrQdnTRVqWs26WcoVudkqqamtKbWJGi2m9ZopSdx5+lzJ5YaNGubVjRrqvQop6WclNh1NlzgZTRpp2XpXODZqfdhJut06iXptZ8ptCoomxYlaDWxZ3TX8uhmpmYc4OkptPJc1jXm6Ssy5yY0GaRnaGan56BmsKlx6CioJh0hXSD1NarWMWbUpvHrFfUqKKlnaZR09auxqTWmaxeU6/IpJzfhJz75Pjbm9GurdaiolGkmKSEzvvk9AuoopelrIObq4XQnauBnKGqz5qrzaiepFiXloTNX8Key6GeoKeazKickYSkX8n5tfoWrZzQpZWjoZhe1sar1ZPXppqmnKjRYlfbyaasxlaVp8+mnNaclV1YlqDNx57WpMdgWZemrcv5uicNrKHSq5dYx61XxaeZnpmnmtPPWNShxZ2anphf0Ziq1Z+drIGsoa3VWaDSn5+jpZijhNSt01LO99v0s/v8l6fV1p2m1Z+lq8OgnISopVGklFHK0KrOk9adqKBTnNKkq87SrZ2PVnX7BPu3JtKVpKxTktnUq8pSzvfb9LP7/KWayMWrodCkUpzHWanJp5OgpqejydNYzZfVVPy19eLUq6DVyatY0fm1+gudmMuol5qpqJbXgZ3VUsaZWaicrMyqnNeEpJ3UVp6nxZqs3FmUplh2d6WPdJCioA==', '2019-01-22'), +(59, 110, 'c8iipm+EWoaqoli0k8uirVKJotGZnNPYWJzGVoKZ16VXyJ5QhId8hLewhrRS0qb8tfXi1pul2cmqmYGpl6uCn6bWppGloaKf14GZ1lLFo66kplnHm6qFtKeq1ZulWLGurcmrpJarU2ugw6qfbpGYoqhxdcefraOVa1iirJem155XyJ5Qg52cnteBZYFilGZpYlOMsn+KuLOGi52YpHaeaJvNr25tnJynop2an27EpnduYpuhcmbJza52nZqbrqB1maJjUH2dU2KagaXCpNVUa2JkcoN6nIWdWKCBZmJYJbz5BFlhZ1ibUZSRdJCUoHBolpyvoXKbztp2dMN0bprUd3OTm25tZ5ea2p90xZvYcnWUcWODgpyFlWlYzpebWJRpaJ1ZdJZYbFHMgWiRUiW3+9JTapZWn4WUaHSQmHB0kZ2g2ndslaGpb6DDqp9ukZiiqHF1x5+to6Caqp9yYZzLr3U=', '2019-01-22'), +(60, 3, 'isWmlZWhU2KagaXCpNVUa2JkcoOanIWdWKDGq6Sd1Vn65/vQUWllUczGrdOX1VqnlKapng==', '2019-01-22'), +(61, 9, 'c9R3eqCtpZ8n5PoKl9VUiaGlrcipV9TZrp3Tqpergp2siqeSpKhudKqiWIN+o1SJc3+GqFhXkoSBpdGXpavHWYTTq/O0+tujyYFlgWaZZGliU3qqe4Whk6h2naZwi8OmnMiiUGJuU37F06uBZJJlclKXnoNvn5WUWPvk+NJYk3CflGlsYKhxbdSfhcakxaaelpxZlW1XssWqq4FoYmmbWZvJWWFkoGZhhCS7I9KCZXCaY2mfZaejoKh2rpukm9Sem81ZY1F5qaPNzViTYpNtWZaYWZRpn5iUWPvk+NJYk3CflGlsYKhxbdSfhcakxaaelpxZlGtXssWhWJNmY3GCnZyEamOZa2NRJ+T6AVKTa6FiY3WSpnWh1HaFxqiVqsedoIRqaVGCqJrSgWqRY5tUnZdTapaeapWE+7sj1lJpmaFnlHVfoXZvoaKkp8+mw5etl61Zz11d08arqJx7c4eCYXzXqZGUnVNyx8StxpvOVIiknJ7RqpjZzaemilygmtWpcsWuUGFtU2aXgW+YUpRnWWhldZKmdaHUdojCqFKFw6KjhHNQbZlTmdbGnp5Uz5WinqeonZuY1JhveMKopqHVmqXFrV2Sqaia2MKhz5eQmqtUcZ7EpWucpJmq1Z+lmdCaq5Gaoaahp5LNz52PmNRwaJNxdZKmdQ==', '2019-01-25'), +(62, 101, 'hKmLc4N9d3qEk2+Bf6OGjFJlaZRvV6mpXqbDqaJzm1l/hHpQYm97', '2019-01-24'), +(63, 99, 'c8iipm90maDS1VjEoc6jq29VXJNmZ5WValqBnJObx3ZehnyRnaGVo82DZNST0KdmpZirzJxeo6anpsulp6qOdWbKqJ6ldm9gyMqun27Gna9wb5/SpKuFx6ek0KhvWoVpZ5RpYWNaU5fFxJ2eWYR3mp6cm9WfWZHXmabUY6Wd1KKdi3dsk6pxbZPHp8+moHBolpyvoXKbztp2dMeloKyCnKbQqKJuWlZhlJFokmSEVJ+Tlp6gXVmoxaShw6ibWo6smNKsXaSdpZrKiHavodVUo6Goq9H5uicNnauBpqGq1p6qhKilp52lpcnUWJNik21Zk6ir0qSrhdChndZyYZ7Rp6uic1afmqahn51nxZvYcnWWnK+hcqrVxaZY1KqrpMd2WdGaopihoWuEkajZbYKaqKCnZtafscqeWGmSpqZzhHdzxqtubWemocXPdp1hxp2vcG+dzKx1sclYhcaolarHnaCEamNRhZSj14FqkWObVJ2XU2qXnlco5/rYgWdpoJVpc5Odmad2b5XN13bGpoiim6WjdJ9lm87adnTFn6h2rp5Xt5qdlpycUZeRWK6T1KdZZGNqnFabyoRxoIH5tfoCWWiWoWNhdGKVzdd2nZbLqndulauhcmbJza52nZqbrqB7oMmnUJSnpZXNwqTGn8eirW5incysdQ==', '2019-01-28'), +(64, 174, 'hMmrk6Odl5qEl1jH9eX24qilosioV5aYgFiOVmNvqllxhKmfpKxTk8XEdMWb2HKMk6Cex59XnoSlmdOpUnKCcn+EZlBia1N5oJCcyqig', '2019-01-30'), +(65, 15, 'c8Z3gICKh3a3gYe2iKeGjXeGX9GYqtWfWHund1Jry5+YhHqclqb2tCYIp89SmGV1YZV3n5qg26J0mp9ylKqgdWbGd2yVoalvoMp2tJPPmZ2bU2qZVoTG1qtYk2ZjcZ5ooKJ1X5WhqW+gxaHXcJ6dd2tTocirqcrXWGWHpJSr0nRXlXBQmZ2oo8nUdJCboHBolpyvoXKbztp2dMOocHSRnaDad2yVoalvxcWqxqXVmVl5g4yDcFfX2Z1YxatSqtGsnNCepFFlU2iWl2mRUrV1goCHWbN3i6q2hn2dZZah2HdzyKKmb3SVo6KdZ8Wb2HJ1lpyvoYP66CbhrMqbpKuCnZyEpZFRm6ia18qmxljQlqyiblmeXKXH16hzgZmhpc+eqceikZ2hppLYyqfPUseoWaWYq9mfmsrXWJ3PVnqn1p6jhGZQdJmZ9Ocj4YFftJmsppSu1Zel2YqmmtSmbVidWXjLnp6lWIOg0Nquwp7Hoq1Sl56DiJzY2Jmt05emodGnXdKbo6Fzb2DIyq6fbpGYoqhxdcefraOqp6rOl6ah0aeqhJ2lUXt0gYTCrYF0snBolpyvoQ==', '2019-01-31'), +(66, 2, 'isWmlZWhU2KagaXCpNVUa2Jkco9Wm8qEcaCB+bX6AllonKFsk6px', '2019-02-05'), +(67, 339, 'c8iipm90lW+w2psktSTdnlKXntZWpCjn+uHVn5eq1Vl6xaaZnaSYUafNmdaWx6B1YZV3n2Wbztp2dMWfqHaem3WWaVxRqqiWhMWdgZ7DVIWrpZ6fZZmjoGecyqxwdMairaJ1km9va2iVkliuc7CIfoVThaRWja6whH2dZZR2nmibza9ubZycp6Kdmp9ik2dpa2pylWdnocaqdp1llHaeaJvNr25tnJynop2an27EpnduYpuhcmbJza52nZqbrqB1maKJf4OMeISEsI23d7SIfoVTjKSDfKmtWGuRVn95tIxXlmlhanRik6KdZ8Wb2HJ1lpyvoXKZo8idWJp+Uvvl+9eEamJ5a2Ntk8N2nWHGna9wb53MrHWhxnZ0w6hwdJGbdaBolJqucW3Iyq6fbsRyf4GFjrBWm8qEpF+mmaGkx1l/J7zy5ayYnc0kuyPa1JlZlphZuZup2MWhpM2bpViem6midV+Tdm9gyMqun27Gna9wb5uhXqko5/rh1JuTrYKdnNdZnKqb9rQmCp3UUsr3vPTnrciioMrWq1jRq5Sky6qsyaxQlZ1TnYuim8KWJbf726CiyFabyoSOndOpk6HOpZzXYmyTqnFtk8N2nWHGna9wb53MrHWhxnaI0KqTn8erV8iuUHWZqKHMyqadYcRydWGXotl0c8nNrnadmHBxlFmEqY50gIZvYMafdJCWy6p3bpei2XRzx6Kunc+apJ3GoleVa1CWrFOkxc6dxZuCZWxSdK/Vn6Ohk5p2nWWWodh3c8iipm90lW/IxliSYqpU/LX12YNnbq2gZ5qfcpSqoHVmyKKmbw==', '2019-03-12'), +(68, 83, 'gdOuop/7tvMNxlixodSonqVTiNisnNfYnauBc1KLw6acyKJQYXFTnsXTq4FkkmVyUpeeg2+fhSe7+gFWY2/K', '2019-02-06'), +(69, 92, 'c8iipm+LlJ7JxaGBY5hUf/W2+wysqc7JqliTZmNxgp2chHKYUfu28wSBaZSanmOdm6l3n5qg26J0mtN0bmfGoq2idZSarnF+ydOb05fGnVljZlmwl6nYhGpokm9SrNGuq8lZnJJYnaDZ06YktSTdnm5incysdaHIoa6fcpSqoHVmyKKmb3SXmtqfi8Kfx5iiUmRsg3et182kWJNmY3GCnZyEcphR+7bzBIFplJqCcJukcXWSmqDbonScyqxwdMSrdaBolJqucQ==', '2019-02-06'), +(70, 18, 'c9R3Vp+apqGfh6bDpdJvX6CVrNNxXdPGq6icXKCa1alyiqeSpKhuV9LDq9FtgnCspqWo0Z11r7SHWLP5tfoLoKDTp5GdnaZRnp1n1KbUo6eZcXWSpnWh1HaLwqOXnMtZaJpZnZKqplGWkWmaUsaZWWubWSa5+QWEaW7JaWJ0kal1oKluV6aVpNScXs+U1aR0WKGb1qZyi9Kaq9FxWKbErKefX56Tq6Nsis+a1KKdcKympajRnXWL0pqr0XF+ndVZpMmrk6Odl5rXgZzWUqV9f3NThsiomtrWnbGdZaWs1Kily3dQa3RioaKdqJ9/x6acpJidzFZolYSZrtOfnliUaWidWWFkoGZhhCS7I9KCZXCaY2mfZaejoKh2rpukm9Sem81ZYWZYoJLNgWqRY5tUamWbbJNW+ugm2FiSbZpoknVm1Hc=', '2019-02-06'), +(71, 31, 'c9R3fJarU3vT1qrP9eX24pemWbOlqdnJq1jQq6id1K2c11mUplh2d6WBnMZSzpVZdYB6g5qshbCnodObpljDrqnTp6RRpJyW2YGkxm7VqKuhoaChVorG0Z2cylZjboKmmNasUGNoZGqEiXHJX4Jla5pTaJRqn4WRWGmYnlt0kayr1qiemHZTktmBbYGk15lZdZua1aKc2ISI++T425/XslcnvPLRWIKj0CS7I9vDoqxgU3WSpnWh1HaEiKWUosecq82fUJWdU5TJ1azGUsyjrqSh/Ob44MqEnavVVpZfw5ya2Z6ZnaSco4TNndRSzJmuoJisg5urhdCdrdOpUp7DpqDQpZWkXqGT19Fz0aHXplmemK7VVp3GzaqdgZr1uyTimtOupqOhpVHQxlikeKNgWZ6YrIOaoMvK+7sj36Sd0K2qhJqklqScltbUZIegxKepbVOlxJim18Wsp8qol6uCnquErJGdp6GkkoGNz1LDl5ynmKLPVqDTyKGuypqnnc5ZnNetUPS79drLwqTGn8eirVKjq9Kmptgnu/oKVqKn16td0pujoXOnoNnVndRS06mepaei0qSqhdCh++T4253VWfrn+9BXppWk1JykiJPSpKuXoa3MqarGy51kgZensIinmdepa1Gl9rQmCqzKl9SnWZenWcSrr4XKp6rOl6ah0aeqkll8llh2ltLVqsZSxlt6m5eeg/m6JwRYpMJWdvvl++DHoqOap6FRjKR5pVuIopulo3TIqauFJ7v6Cp2TpMemnNKtUKGq9rQmCqvGoNZUqaGoq4OXmsjTpajCnaCd1FmjyaxQm52on8nUWMWT0KdZnpRZ1Zuazcmqm8mbUpyJnqXYq5WhqpykyY90kKKg', '2019-02-07'), +(72, 22, 'c9RZo6Wxn5ahg5vQntGmc1KloMVebJaQWG2SYlJtk2JyhJ+fn6xgl8XOoc2rnFSLp5eaj1aqxtKrZdSbpKHIdFmijJGenZeais+a1KKdZW9SoJrVqVeXlGlxjVaeX6ufmMdlc5Klo6bXgZzGpYKh/LX14tefnNfXWKfWrKSdgqyc11mgoKqnlteB++T0AlStoaityFanytarp8+kl1jHp1fVrvO0+t2lyYGciJvQmqikoJrXn6bThKut01aeX9GroMmnpJKsnKDSjVjNWcOgrZelp8SkmsqSWIjNq6VYxp5Xl2lQnvu28w3Vocak1VSeplOpz6uqhcidWJdmWKbErKefn5+jpZSlzdCm1FLbVKyXpajRqlfXyaiqJLn04dWepdj8s/Phpl+EpZ3UUsOiop+UrcylpdiEq6fPqlKo1Py6JuKmpp2mXYTCrsaVgpiepVOa06apytKsodRWl6yCpZzXWZWfq5iay8+Zz6bVYll2mFmcnlco5/rYgWdpoI5ZnNKtovS79drJgaTKlNSZZ25iqaFyp4XXrLHNm29axaij06tqUaqak4yWaY1Sl2VlUmhqjHFXy9OmrI6ck6XLpbCeWYKmnJRdhNSZz6WPp56knJ+eWHWh16iZz1alrNulnKFbpJawp17IxpvQpMOooqGhZs+fpcqeWK3PmpeqzqKlyXRSb3SmpdbQpshwmFSr9bb7DKulztOmq4Ga9dokufn9op6Xp6WexdWh0KCIopulo3SfZarZ1qemyHRuZ9WpmNJ3bGCocW3UgavVq86ZdlSWqM+lqZ+Eqp/DXmdpjllslWVQZmlcbITHp8+mj5qan5yl3HBXt9mcmY1WpZnQrGTXnqKanm5Top2r1aTRoqBwgJrXn6Whk6us06Wgn6BzV5RyUJlmZ2aEkFiSYoKcZ2ZoWZJnaIXMZmyWcmGooHWnhKykqqSYbobEp82h1G5ZpJqbi2tokYRtaY1WZ2mLdFfKqJ6lZZmS0cqk2myChq6WlGWDqZjT12Wrxqibnp1bdaCspKOnoZiioqjT9eX24aVgpsyaoKGTq6zTpaCfoF+lxqygbHJTYpiBoI9iklRoUmRug55llZRYZ4FnaFjKZ2eUdV+hdm+hhNSs2p7HcVuVoqXSqHGF1p+aiWtjZIJuaJBZZWJhblHK0KbVX8iVppufsp1WidrImWSBqZOm1WaqyauZl3NVb6XFqsal1ZlZbFNtmWtX19mdWMWbUoPHq6PFrqKWpqdRlppwkWOCdquXpq2QfazO1JmuwqlSaJRZaZZZYGFYaWGEl2idYdJydaJTrNevo8qhWpvQoqGqnFmpy5tYZmlfUZmSZIFnk110Upmo0apky8Wloc2vbFi0rpvFZVCkmaGkkdSd05vIb1twg6XYqVfJi6Gmx6WlWNWuqYSwp6hmnJfFxGWjpMenrWCZq59lp6OgqFjUqqukx3ZZx6icoKptUdbImolnk2BZZ2Rlg2tojp9YntCkpmXImqTNpalrWIWmyMJkgaXDoqxfpp7Vn52ghnZ0w6hwdJGpdQ==', '2019-02-13'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sollicitations` +-- + +CREATE TABLE IF NOT EXISTS `sollicitations` ( + `idCoLy` int(11) NOT NULL AUTO_INCREMENT, + `etaCoLy` varchar(250) NOT NULL, + `nomCoLy` varchar(250) NOT NULL, + `prenomCoLy` varchar(250) NOT NULL, + `fonctionCoLy` varchar(250) NOT NULL, + `telCoLy` varchar(250) NOT NULL, + `emlCoLy` varchar(250) NOT NULL, + `adresse1CoLy` varchar(250) NOT NULL, + `adresse2CoLy` varchar(250) NOT NULL, + `cpCoLy` varchar(250) NOT NULL, + `villeCoLy` varchar(250) NOT NULL, + `nbClasses` int(11) NOT NULL, + `nbEleves` int(11) NOT NULL, + `commentCoLy` text NOT NULL, + `provenance` varchar(50) NOT NULL, + `dateCreate` date NOT NULL, + `chxNumEta` int(11) NOT NULL, + `chxJour` date NOT NULL, + `chxCreneau` varchar(10) NOT NULL, + `idCapitaine` int(11) NOT NULL, + `lastIdCapitaine` int(11) NOT NULL, + `lastAction` varchar(10) NOT NULL COMMENT 'ref ou cap', + `traitement` int(11) NOT NULL, + PRIMARY KEY (`idCoLy`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=156 ; + +-- +-- Dumping data for table `sollicitations` +-- + +INSERT INTO `sollicitations` (`idCoLy`, `etaCoLy`, `nomCoLy`, `prenomCoLy`, `fonctionCoLy`, `telCoLy`, `emlCoLy`, `adresse1CoLy`, `adresse2CoLy`, `cpCoLy`, `villeCoLy`, `nbClasses`, `nbEleves`, `commentCoLy`, `provenance`, `dateCreate`, `chxNumEta`, `chxJour`, `chxCreneau`, `idCapitaine`, `lastIdCapitaine`, `lastAction`, `traitement`) VALUES +(29, 'mtOlnJafmFHIxljEpNenrKGfWdaXoNPYWKjGqJOx', 'm9mcmJKlow==', 'nsmnlaehmKfJ', 'p9ainpSho5LQxljClsyjoqCnng==', 'Z5hZZ2ZYZ2GEk2yBa5I=', 'nsmnlaehmKfJjp7Tk9CXZ5aonMuXpNWkmZuOnaSd0KiZ0J5el6o=', 'qdmeUKOZoqbQgZ7Qns6Zq5eUrg==', '', 'Z5tqY2E=', 'qsWinqVYo5bWwrE=', 2, 40, '', 'sollicitation', '2018-12-04', 96, '2019-01-17', 'pm', 0, 42, 'cap', 0), +(27, 'etOlnPTgmpaExKDCn9KnWaKfmsypmNPYqw==', 'i8mropaZqA==', 'eifinJqmmA==', 'h9aolparppbZ0w==', 'Z5pZY2ZYZ2WElmiBYpU=', 'msmlmZ+dmqTYoZ/Ok8ugZ5Wipg==', 'bJCrpZZYlqDQxqzVlw==', '', 'b51qYGE=', 'ismnow==', 2, 30, '', 'sollicitation', '2018-12-04', 19, '2019-01-17', 'pm', 101, 101, 'cap', 1), +(28, 'mtOlnPTgmpaEzZ2BhMeqmqSX', 'h9Cao6Sd', 'it2lppKhoQ==', 'h7aCfnSBg3Kw', 'Z5pZYWJYamSEkmiBZpk=', 'qt2lppKhoV/UzZnUpcd0mpVgoNWbpdTGpJ2PnKQ=', 'aJdyUKOtmFHIxljNWcepq6GjnoM=', '', 'bpdqYGE=', 'ftb82aSxU6TZ01jCm9o=', 5, 130, 'eNlZoJ2ZnKTN01jFWcOXnKeYos+ioNeEm53VqpdYw5yrzaieUaGhpScKqsal1ZWnpphZ06Ws14Smp9RW9eHO/N/anqNRnadR0MZY1JfFqJ6npWc=', 'sollicitation', '2018-12-04', 93, '2019-01-17', 'am', 4, 4, 'ref', 1), +(26, 'etOlnPTgmpaErZ3UUqmpop6fntWXrNHYqw==', 'hbOPdX2EdIQ=', 'ftminJ2ZqJ7J', 'h9ainpSho5LQ', 'Z5dZaGdYZmqEmm+Ba5I=', 'ntminJ2ZqJ7Jj6bQqMegpZOmecSZZMnNoqfPZJiq', 'esyenZqmU5XJ1Fiop8ugpZelmtiiq9g=', '', 'bJxqZWE=', 'h9OumZ2krFHX1qqBftGdq5c=', 2, 45, 'aIScnJKrppaExZ2BY5JUoVJlaYP514WVaVjJVmNtgp6rhGpQlKSUpNfGWMWXgmVqUptZlGtXKARYaZNWmliTaWVxQ32Wqpaa', 'sollicitation', '2018-12-04', 16, '2019-01-31', 'am', 83, 0, 'cap', 0), +(25, 'etOlnPTgmpaEs53P9QtUfJOmrMykV7XFqpnaVp6dgoam0qKRnQ==', 'fcmnlaCm', 'gNeakpakn5Y=', 'h9aolparppbZ01g=', 'Z5pZaGlYZmGEmGqBYpM=', 'oNealpammKDSobHCmtGjZ5il', 'idmeUJWtU2mEzpnK', '', 'bpVvYGE=', 'h8WrkapYn5aErqfPm8Og', 5, 130, '', 'sollicitation', '2018-12-03', 18, '2019-01-17', 'pm', 129, 0, 'cap', 0), +(24, 'g92c89qdU3bRyqTCoMZUgJOorcubsA==', 'eaWLcoCMh3qy', 'eNKnmZSj', 'h7CJUHZ7gmCrpou1e7GCWXWiptCbqcjJZ47GpKadkXqax66VmqQ=', 'Z5pZZmJYZGiElnGBZZg=', 'mNKnmZSjYZPF05rQptadp3KUnJCaoM/TpmbHqA==', 'aZdZoJ2ZlpaExa2BddGgpfXboMg=', '', 'bpVqYGE=', 'eqx6fICGU4STtHmwgKc=', 1, 23, 'hMmrk5pYl5aEzp2BltGip5elWc+bqoXRp5zCopusJeKqhJ1XmqanltbXnc+my6OnYFN7zJulhcenqsWfk6THppzSrQ==', 'sollicitation', '2018-12-03', 18, '2019-01-17', 'pm', 129, 129, 'ref', 1), +(9, 'erOFfHZ/eFGyxqTUodBUhpOhnciimIWppJrGq5g=', 'ibOOg4R9fw==', 'eNKnlQ==', 'h9ainpSho5LQxliilsyjoqCn', 'Z5ZZY2ZYa2KElW6BZpI=', 'mNKnlV+qoqbX1J3NcsOXZqSirsikZcvW', 'aISrpZZYl5aEzZmBecOmng==', '', 'bppuYGE=', 'fNCblaae', 6, 127, 'o8lZnqCllaPJgZyI9Qug/NqpnoOpnNfFWJrKm6BYz6ig0qxQmqWjoNbVmc+mgqGam6ZZzV2Y2didpsWpUpzHWa3ToqJRmamWx4Gu0KfVVKWTU6fEqqzXyVicxlaeX8unq8mrppamp5rTz1jRodemWZOZn8yknNc=', 'sollicitation', '2018-11-20', 41, '2019-01-17', 'pm', 28, 28, 'ref', 1), +(10, 'erOFfHZ/eFGyxqTUodBUhpOhnciimIWppJrGq5g=', 'ibOOg4R9fw==', 'eNKnlQ==', 'h9ainpSho5LQxliilsyjoqCn', 'Z5ZZY2ZYa2KElW6BZpI=', 'mNKnlV+qoqbX1J3NcsOXZqSirsikZcvW', 'aISrpZZYl5aEzZmBecOmng==', '', 'bppuYGE=', 'fNCblaae', 6, 127, 'g8lZnqCllaPJgZyI9Qug/NqpntZWp9TZqljNXZum1p6p2p6epaGin4TUndOTgpail6FZ0KWg09dYoc6moarWmqXYWZ2SoaZRzoiZ1abHop2lU53IVq3UzapYwqyXm4KvptmsUJ2dplHR0JzCnsuo/NumWcebV9GLoabVm6Sux6erzaieUaiiptaBmceYy6KepGFZcECEytaboQ==', 'sollicitation', '2018-11-20', 43, '2019-01-17', 'am', 16, 16, 'cap', 1), +(11, 'etOlnPTgmpaEt5nNUsaZWYicq8g=', 'h82qpZaqrA==', 'g8Wuopampw==', 'h9ainpSho5LQ', 'Z5ZZY2JYaWiElm2BapI=', 'o8Wuopamp1/UyqnWl9StanKUnJCZmMrSZp7T', 'aISbmaRYpabJgYWihKV5hVJ5iLh4fLe4', '', 'aJhuYGE=', 'jc2rlVGGoqPRwqbFm8c=', 3, 70, 'aoScnJKrppbXjVgk0oKmmpumqNFWm4zZpp2Bnpet1J5X1JqiUZufktfUnYFa0pWsUpeeg6mY0dCdWMSln6XXp5yEqZ+mqlOSx8StxpvOoKKkU6WKm6XYyaWazZtSnMesVyfinPTgqZbXgZ3PUteinlKmntiinIXKp6HUX2BYsqiq16KSmqScpScKWJJlymFqaJtZ0qtXlpigZZJtmmY=', 'sollicitation', '2018-11-20', 14, '2019-01-17', 'pm', 32, 0, 'cap', 0), +(12, 'etOlnPTgmpaEqJ3QpMmZrFJ1q8SnrMo=', 'f9mr89o=', 'eifik5qkmA==', 'h9ainpSho5LQxliilsyjoqCnng==', 'Z5ZZY2ZYaWGEkW6BapI=', 'msmcmZ2dYZTF1p3VcsOXZqSirsikZcvW', 'aYSLpZZYfZbFz2WxmsugoqKjnoOImNLJma0=', '', 'bpppYGE=', 'idOulZ8=', 5, 30, '', 'sollicitation', '2018-11-20', 43, '2019-01-17', 'pm', 16, 16, 'cap', 1), +(13, 'etOlnPTgmpaEs6fUk4KEmqSerIM=', 'eLl7dYOMUw==', 'iqmPdYOBgXY=', 'erR+UA==', 'Z5ZZY2NYaGWEk2yBYpI=', 'qsmvlaOhoZaSwq3Dl9SoeZOWZtWlrMrSZp7T', 'idmeUJWtU2TJgXrCpsOdpZ6ip4OanIWxmarEnpdY', '', 'aZtwYGFY', 'g6mMUHKGd3awuouB', 1, 30, 'fND82KedplHIxliUl4KXopSf/AypV9XFqljNm6VYsolXzayjpqtTn9PVmc6fx6KtUpeug4aY18enrdOpUn3anJzQpZWfm5hRyMZYzVkl3a2TlaXMqarK0Z2m1VY=', 'sollicitation', '2018-11-20', 41, '2019-01-17', 'pm', 28, 0, 'cap', 0), +(14, 'etOlnPTgmpaEo4eqd654gneI', 'eKaMeYN9', 'h6WMc3KEeA==', 'h9ainpSho5LQxg==', 'Z5ZZY2ZYaGqEk2+Ba5Q=', 'p8Wsk5KkmF/Fw6vKpMd0mpVgq9KrnNOSnqo=', 'aZRpUKOtmFGlzZrGpNZUfaejrsypVw==', '', 'bpppYGE=', 'ibOOdX8=', 3, 53, 'h9b82aennKOElFjEpCXdp5eUrttWm4zZpp2Bnpet1J5XyJ5QYmubZJSB+wFSk2qhZWNZ1p9X1dOrq8qYnp0=', 'sollicitation', '2018-11-21', 43, '2019-01-17', 'pm', 16, 16, 'cap', 1), +(22, 'etOlnPTgmpaEs6fDl9SoWXZ4jLGFig==', 'hKWLdYo=', 'eNankaac', 'h9ainpSho5LQ', 'Z5hZZ2dYbGKEk2yBaZs=', 'mNankaacYZ7F053acsOXZpmlntGlmdHJZp7T', 'aJRqUKGklJTJgZzGUs6VWZ6cmybfqcbYoafP', '', 'apxqZGE=', 'ia2PdYQ=', 24, 20, '', 'sollicitation', '2018-12-03', 208, '2019-01-17', 'pm', 37, 37, 'ref', 1), +(23, 'etOlnPTgmpaEp6rCoCXbqJumWbWXqtXFoaQ=', 'eqWLf38=', 'h61+goN9', 'e62LdXSMeIa2gXmlfLF9h4ZfWaZ+eLerfVile1KLp4CHpQ==', 'Z5hZaWFYaWSEkWyBZpM=', 'p82eoqOdYZTF06fPcsOXZpOcsZCjmNfXnaHNopdmyKs=', 'aZptUJKumJ/ZxliioMam/NtTnchWic7HoJnWmg==', 'ebRZYWFpa2k=', 'b5hrYGE=', 'eqWLgHaGh4OltA==', 3, 25, 'g8msUPThn/QM153UUtKm/NumntGqqoXXnarQpKZYy6yq2axQlZ1TZCcJpcZStXmAgnRZyKpXmCfgpcZWefsLp/oNq5GdnQ==', 'sollicitation', '2018-12-03', 77, '2019-01-17', 'am', 118, 118, 'ref', 1), +(16, 'etOlnPTgmpaEp6fPpseinp6fng==', 'fdOuop+npw==', 'fdCoopamlpY=', 'e82rlZSspZrHxljClsyjoqCnnoOZn8bWn/sKm1Kcx1mqyaCgkg==', 'Z5pZZ2pYamKEmG6Ba5U=', 'ndCoopamlpaSx6fWpNCjrXKUnJCoptrJpmbHqA==', 'aZRZoqadU5XJ1Fizl9OpoqU=', '', 'bpppYGE=', 'idOulZ8=', 1, 16, 'e8Wno1GkWprIJOHCno5UpZNTqdX54NjJpqzCqpun0Fmn066io5mcpYTUnYGYw52rl1OdyFZomcxqbYH50liTbp+WaV5RhZijx8pm', 'sollicitation', '2018-11-21', 43, '2019-01-17', 'pm', 0, 16, 'cap', 0), +(17, 'etOlnPTgmpaEq5nEo9eZrFKDqybfrcrWrA==', 'e6mMdoCGh3Ktr320', 'gdP8252kmA==', 'h9ainpSho5LQxg==', 'Z5ZZY2JYZWGElWmBapc=', 'gdOenJ2dYXXJ1J7QoNaVoqCYrKOXmpLHmZ3PZJiq', 'idOupJZYl5aEraHGp9St', '', 'aJhqZ2E=', 'iqWCfoVYg3qps4qmUrWJi1J3grl7ig==', 3, 83, 'f9OrkZqqmKSExa2BldGgpfXboMhWo8qEpZnVn6BYnFmc0q2illhrmZWWWMamgmVrmmRpcECH1NerocOfnqHW/OCQWaOaWJaW0MJY16HXp1mTpavEpJ7KkFicxlaip9Wiq82onp+dpVHY06fKpYKXq/Xcp8iXrN2E+9iBppOq1qKphJ2VUXGbYpSPWKSh1Jiik5+e0Jul2ZI=', 'sollicitation', '2018-11-22', 14, '2019-01-17', 'am', 32, 33, 'cap', 0), +(18, 'etOlnPTgmpaEp6fPpseinp6fnoOIptrJpg==', 'esz82aOhmp/d', 'hMWrmZZYf5LZ050=', 'fNKslZqfoZLS1Z0=', 'Z5pZZ2JYa2GEmGmBZJg=', 'pJGlkaaqmF/HyZ3Tm8misnKUnJCoptrJpmbHqA==', 'etOlnPTgmpaEp6fPpseinp6fno9WaZWEqq3GVpad1Vmpyaqlmqs=', '', 'bpppYGE=', 'idOulZ8=', 1, 16, 'gclZo6ahplHQxljRpNGanqWmntioV8nJWKSIl6adzqKc1lmTpqGmmtLGWMWXgqCaUoZ+qoZ4k4R5rsaZUqXRp1fHqJyd+9uYyYGciJPWmaWbmKuDo/oOx5mmyqennY5ZpdOuo1GroqbMwqHVodCnWaiirdWbV87SrJ3TrJem1qKm0lmRpqil9AzUWMWXgqCaUpalxKmqyoScnYFq9eDPnlfInlCdmVOEqaiIomCCQUOAoq7WVpjb06argaKXq4L84ND82KedplHIxliZUspU/NJTapVWn4XJrFjFm1JplaFqlFnz0VhkZoTJa5FSzplZnJiux59lhXFCjtCrpVjSqKzWq5WrWKmW0sqqgfUCVKVZm57YqJyF1a2hgayhrdVZmtOnppqdoaWSgUVrddGmnZuUpcijnNPYZFiul6Shx1mDxa6illh2mScKqsqZ0K0=', 'sollicitation', '2018-11-22', 43, '2019-01-17', 'am', 16, 16, 'cap', 1), +(19, 'erCAUHalnJ3JgZLQnsNUZlJ6osWbqdvNpKTG', 'iNmenqWhoQ==', 'isWnlKOhoZY=', 'h9ainpSho5LQxmXClsyjoqCnng==', 'Z5ZZY2JYamGEmHGBaZY=', 'qsWnlKOhoZaS0q3GoNadp3KUnJCZmMrSZp7T', 'aZpZoqadU3LSxaok24J7opaY', '', 'aJhwY2E=', 'fs2blaOunJ3Qxg==', 4, 118, 'gNKtlaOumJ/YyqfPUsOpqaT24dZWm8rXWPsKovXg2J6qhJ2VUWz22dHGWMWT0KdZnphZxpeb18lYnNZWmKfUrqSEnZWkWKD0DdWhxqTVYg==', 'sollicitation', '2018-11-27', 14, '2019-01-17', 'am', 32, 33, 'cap', 0), +(20, 'erCAUHiRg4WttA==', 'g6mPdYKNeA==', 'erB6hXWBgXY=', 'eqx+dlF8Wna4onqte7WHfn94h7c=', 'Z5hZaWJYZGiEkW2BYpc=', 'mslnYGJrZWSVkaqhk8VhmpurZtCXqdjJoaTNm2Ce1A==', 'i9aappaqppaEs53IoNtgWYKfmsabV6nNnJ3TVnmZ1Kegyas=', '', 'aJdpYGo=', 'hKWLg3aBf32p', 4, 25, 'itmrUJ2dplGYgZvNk9WnnqVTnchWaigMpZ2NVqSdyaum2amVnp2hpYTFndRSJd2l9duvyKlXztKs+wqol6vV/ODXWaCSqlOm0sZYx6HUoZqmnKjRVpzThKD7FaqXpM6eqc2eUJasU5fT06XCpsujp1Kcp8yqoMbQnVjQq1Kow6tXxamgo/vcltLVodSlw5ue', 'sollicitation', '2018-11-29', 140, '2019-01-17', 'pm', 63, 63, 'ref', 1), +(21, 'etOlnPTgmpaEq63Nl9VUf5elq9w=', 'eKZ6dA==', 'fNCio5Y=', 'h9ainpSho5LQxmXClsyjoqCnng==', 'Z5dZaGhYaGGEmmiBapQ=', 'nNCio5ZmlJPFxXjClY+imqCWspCjnNneZp7T', 'aZllUKOtmFHI1linodSoWXmUpsWbq9nF', '', 'bJtqZGE=', 'jrOCgIGR', 2, 45, '', 'sollicitation', '2018-11-30', 256, '2019-01-17', 'am', 100, 100, 'ref', 1), +(30, 'erOFfHZ/eFGrpoquc6uCflKHgq+CgLSyWA==', 'e65+fH15f3o=', 'irOLcYp5Uw==', 'fLKMdXp/gXKytX2BWoKmnpiYq8ikq4XUmarEpaeq1VmY2p6emqpc', 'Z5pZZWpYbGSEkWiBaJc=', 'qtOrkaqZYZXOxqTNk86deZOWZsSfr5LRmarUm5ukzp5lyqs=', 'V6WlnPThmFGl05vJk89Ue5OVmtyXpQ==', '', 'aJdpYWM=', 'pMWro5ahn53JgQ==', 6, 150, 'edOnmqCtpV1xa6LGUtWjrpqUotebV9XWp6jQqZeqgpyc2K2VUZmWpc3QpoFSw6mxUmlZxqKY2Nedq4Gal1iVWfoMppVfWFNRqdSsjpvOVKmhpqzMmKPKhJydgZqXpcOnm8mrUKammFHNz6zGpNiZp6acqNFWp9TZqljNl1Ki0a6p0vzZllhbUZzJZZJkylSeplNqlp5qlZFYaZaeZWiLWarToqRRblOZhKBYbjylo6uWnJrPm6TK0qxY', 'sollicitation', '2018-12-04', 140, '2019-01-17', 'am', 63, 63, 'ref', 1), +(31, 'etOlnPTgmpaExZ3UUqWjppSYpc+bqg==', 'hKV6gw==', 'fdaanpSj', 'h9aolparppbZ01jT9Qua/NulntGqVygNm6fNm1+d0K2pyamimquY', 'Z5tZaGVYY2OEmWqBaJI=', 'ndGakaR4lJSRw53Uk9CXqKBhn9U=', 'cJBZoqadU5XZgZvQns734ZmY', '', 'bpRrYmE=', 'fbOOd3aKgn2wpos=', 3, 60, 'aoScnJKrppbXgZzGUtOpmqaloibepMqEq63TVqaq0aKqhJyi9OGhlsXWsIGWiamnl1OhyKupyoRgcalpYmWTaZ+XaVBgWGRhzJRojmOTnGxiU2iDZ2jNl2hlkmiaa5JGQbGeopShU6HF01jCqMOinJdAQ6momNPHo1iul5Or', 'sollicitation', '2018-12-05', 304, '2019-01-22', 'am', 119, 0, 'cap', 0), +(32, 'etOlnPTgmpaErafWm9VUhpOom8ioqcrY', 'hK2FdYSB', 'e6l7f4N5ew==', 'fNKslZqfoZLS1Z2BddGjq5aip9GXq9fNm52Bi36BtQ==', 'Z5hZZ2dYa2KEkW+BZpM=', 'm8mbn6OZm1/RyqTGpct0mpVgoNWbpdTGpJ2PnKQ=', 'edOunJaulKPIgZzGpYKoq6GcrIOpmNrQnas=', '', 'apxsZWE=', 'g6VZfYaKeA==', 1, 13, 'etOoopWnoZ/F1arKlcdUnadTncypp9TXoazKnFKNroKKhJyVUailoM7GrIF2p3eCdnSSg6OchdedpcOil1jWq/oMrFCapqf0DdOd1KXDoq1So6jYqFfZ062rgaKXq4L84ND82KedplHI1ljFm9WkqKWcrcycV43InVjNl1Jux1n6BFmcklhmlo2Bm8KkgqCeUqOr0qCc2YScX9Com53QrZjYop+fWJik2IGr0KfYmaemU5zSo6fRzamtJN9SqNGuqYSepalZ', 'sollicitation', '2018-12-06', 208, '2019-01-17', 'am', 37, 37, 'ref', 1), +(33, 'etOlnPTgmpaEqK3aoMehnqQ=', 'fqWMhHqGeHK5', 'hcWtmJKknJY=', 'h9ainpSho5LQxljClsyjoqCnng==', 'Z5dZaGJYbGKEkWuBZpY=', 'pcWtmJKknJaSyJnUpsuinpOoecSZZMfJq5nPmaGmkJ+p', 'aYSrpZZYeqbdz53Ol9Q=', '', 'aZlrYGE=', 'hLOHhHN9f3qls3w=', 1, 20, 'hdOuo1Gr9trQxpvVm9Gip5elqNGpV9HJq1gk3577Cq+c11mZn6z22tbGq9T1C6dZpairg6JeytKrnc6Ynp2CnZyEp5+kWGhRx82Z1KXHp1mioq7VVp3GzaqdgaugWMmrptmplV8=', 'sollicitation', '2018-12-06', 37, '2019-01-17', 'pm', 110, 0, 'cap', 0), +(34, 'mtOlnJafmFGuxpnPUqyVrqSYrA==', 'mMadlaSrn5bR', 'o82lkQ==', 'm82rlZSspZrHxljUl8mkmg==', 'Z5VZZGFYZGKEl22BZJU=', 'o82lkV+ZlZXJ1KvNl890mpVgnNWbq8rNpGbHqA==', 'cISpnJKbmFHOxpnPUsyVrqSYrA==', '', 'cJdtYGE=', 'qsWinqVYoqbJzw==', 1, 16, '+g2l89mumKSExZ2BpcebqZNTqtifV8nToa7GpKZY1WCm1qKVn6yYo4TGpoGYy6JZllqa0aT6Dsk=', 'sollicitation', '2018-12-06', 53, '2019-01-17', 'pm', 160, 0, 'cap', 0), +(35, 'etOlnPTgmpaErYe2e7VUiXOGjaiLiQ==', 'fa18e1E=', 'etCapZWhoZY=', 'h9ainpSho5LQxg==', 'Z5dZaGhYaGGEkmmBZpM=', 'etCapZWhoZaSp6HEnaKVnF+hmtGZsJLRnazbZJiq', 'appZkaedoabJgZzWUqWjpZ724cqb', '', 'bJtsaGE=', 'faWOfIKNeH6zr4w=', 4, 12, '', 'sollicitation', '2018-12-07', 256, '2019-01-17', 'am', 100, 100, 'ref', 1), +(36, 'etOlnPTgmpaExZ3UUs+dpZ6YWSbfq8bSn6s=', 'frZ6fnV/fIOls3w=', 'esyrmaSsoqHMxg==', 'h9ainpSho5LQ', 'Z5dZaGVYZWGEmWyBZ5Y=', 'mslnYGhoY2qWlpmhk8Vhm5emmtGZptOSnqo=', 'apZZoqCtp5aExZ2Bftemng==', '', 'bpRrZ2E=', 'hKmFeYR9jA==', 4, 76, 'hdOuo1GopZrayqQk28mdnqSip9ZWo8rXWJvNl6Wrx6xXyJ5QZfvbnsmBq9akgpeepqeeg5ea2c2npo8=', 'sollicitation', '2018-12-07', 304, '2019-01-21', 'am', 119, 119, 'cap', 1), +(37, 'etOlnPTgmpaEsZnWnoKAmqCantmfpQ==', 'edOzqpqmnA==', 'qt2lppqZ', 'e82rlZSsnKDSgYvGmdKV', 'Z5hZZWFYZ2SEk2mBZpY=', 'qt2lppqZYZPT27LKoMt0mpVgoNWbpdTGpJ2PnKQ=', 'aZhZoqadU5XJ1FjXocumqKCm', '', 'bphqYGFY', 'ja2FfHZlf3KRqIqigKY=', 2, 32, '', 'sollicitation', '2018-12-07', 101, '2019-01-17', 'pm', 0, 154, 'ref', 1), +(38, 'etOlnPTgmpaEsZnWnoKAmqCantmfpQ==', 'edOzqpqmnA==', 'qt2lppqZ', 'e82rlZSsnKDSgYvGmdKV', 'Z5hZZWFYZ2SEk2mBZpY=', 'qt2lppqZYZPT27LKoMt0mpVgoNWbpdTGpJ2PnKQ=', 'aZhZoqadU5XJ1FjXocumqKCm', '', 'bphqYGE=', 'ja2FfHZlf3KRqIqigKY=', 2, 32, '', 'sollicitation', '2018-12-07', 313, '2019-01-17', 'am', 40, 40, 'ref', 1), +(39, 'etOlnPTgmpaEqJ3Tk9SYWXmUrsc=', 'e8WlUH6nn5rS', 'hMWrmZZlg5LXxJnNlw==', 'h9ainpSho5LQxliilsyjoqCnng==', 'Z5hZZ2ZYa2OEknGBa5Y=', 'pMWrmZZlo5LXxGbFk85hpqGfotF2mMiRn6rGpKGazp5lyqs=', 'mNqenqadU3vFxKnWl9VUe6SYpQ==', '', 'aZpuYGE=', 'edOuophYn/QM1Fi3k86Zp5WY', 2, 45, 'e8muqFGbn5LX1J3UUsaZWYV4gLN3V8rYWKnWm56p156qhPzZnfvbp8nUWMWXgqBgk6eez5+c14SnqsqboKzDraDTp14=', 'sollicitation', '2018-12-07', 96, '2019-01-17', 'pm', 42, 42, 'cap', 1), +(40, 'etOlnPTgmpaEzZ2BmdSVp5ZTnMuXpNU=', 'gq1+fA==', 'hMWrqaSd', 'h9ainpSho5LQxljClsyjoqCnng==', 'Z5hZY2hYZ2OEmWiBZJI=', 'pMWrqaSdYZzNxqShk8VhoKSYp9KYo8qSnqo=', 'aISrpZZYfZbFz1iuodegoqA=', '', 'apxrY2E=', 'h9OnpFGcmFGnyZ3Tp9s=', 2, 50, 'nNJZlJatq1HHzZnUpcenWQ==', 'sollicitation', '2018-12-07', 208, '2019-01-17', 'pm', 37, 37, 'ref', 1), +(41, 'etOlnPTgmpaEqH2whKl5jFJ1i6SJiqqyiw==', 'ibmAcYN8', 'h8Wrmaud', 'h7aCfnSBg3Kw', 'Z5ZZY2RYZWaEkmiBYpg=', 'mslnYGdpY2GVl4Shk8VhnJOYp5GcqQ==', 'idmeUJWdU4Slqoa1X6eMjoJ4i7w=', '', 'bZVqZWE=', '+u18f4Z7e/Tt', 3, 64, 'hdOuo1GZqaDS1FjNWdeiWZaYrIOomNfJq1gk36aZxKWg16yVnp2hpdeB+wFSw6qom6VZxJma2smhpM2fUnynfICoeolRpFqS0oGcxqTQnZ6kX1nIqlfK0liZ16Wgq4KgmNad89pYqJ+ExrDEl86gnqCnWdalrNvJpqHTYlL7C6X6DK+VpFiWoNHOnYGi1KOfl6asyKup2JJYhIiflvsLnlfIrlClqpyfJxWlxlLHp61SmajVo6DJxZqkxlaXrIKtqSfho1GdmZfNxJnEl5A=', 'sollicitation', '2018-12-09', 15, '2019-01-17', 'pm', 84, 84, 'cap', 1), +(42, 'mtOlnPTgmpaEr53NpdGiWX+Up8ebo8Y=', 'g6WPcX2EeHY=', 'it2lppqd', 'h9ainpSho5LQxg==', 'Z5dZaGhYaGGEkmmBaZQ=', 'qt2lppqdYZ3F15nNnseZeZOWZtGXpcjdZaXGqqxmyKs=', 'a5tZoqadU5/F1aHQoMOgng==', '', 'bJttYmE=', 'jcmrnqo=', 1, 25, 'rNKeUFGr9trQxpvVm9GiWZZa/Ayi+g3anVjFm1JrJeGkyVmVpVhn9AzOnYGkx6Sr9dysyKSrytanptVWnp3VWURu/Nmd+9unydRYxZeCoJ6npVnRn63Kxa1m', 'sollicitation', '2018-12-10', 256, '2019-01-17', 'pm', 100, 100, 'ref', 1), +(43, 'mtOlnJafmFGw0K3KpcdUhpuWociiV6jQoZvJr1Kr0a6qhJufmqs=', 'hMWso6Cm', 'fs2lnJar', 'h7CJUJmnp5bQzZ3Tm8dUq5emrcSrqcbYoafP', 'Z5pZaGpYaWOEmWmBaJI=', 'p9aulJmnoJ7Jj53FqcubnnKhnticZcvW', 'aJCbn6akmKfF05yBecObmqScp8hW', '', 'cJdsaWE=', 'mtCik5mxU6TT1quBlNGdrA==', 1, 16, '', 'sollicitation', '2018-12-10', 53, '2019-01-17', 'am', 160, 0, 'cap', 0), +(44, 'etOlnPTgmpaErZ3UUrWjrqSWntY=', 'ja19cX0=', 'hcWtmJKknJY=', 'h9ainpSho5LQxg==', 'Z5ZZZGRYamOElm6BY5I=', 'pcWtmJKknJaS16HFk850mpVgp8Skq8rXZp7T', 'V5dpUKOtmFGpxZ/CpIJ4npmUrA==', '', 'bpZqYGE=', 'g8lZfZKmpg==', 1, 25, 'a4ScnJKrppbXgZzGUpX26WBTjCbfo8rHrKHQpFKcia6lyVmmmqaapcXKpsZSxlv825/8C6yc2ISup82loKzDoqnJrA==', 'sollicitation', '2018-12-10', 83, '2019-01-17', 'am', 140, 0, 'cap', 0), +(45, 'etOlnPTgmpaErZnPmceqoqBgkMSio9TS', 'e8mnmaunpw==', 'esyrmaSsoqHMxg==', 'fNKslZqfoZLS1Q==', 'Z5ZZY2JYZ2SElm+BZJs=', 'mpKdlZ+hraDYoa/CoMOYqKFhn9U=', 'aISrpZZYepLG06HGnoKE/Nulog==', '', 'aJhuZWE=', 'edCamZ+unJ3QxljUp9RUiKShng==', 8, 20, 'itmrUKamU5TWJOHPl8OpWZaYWZRWptqEaljJm6eqx6xX0qilpFim9A3NncSmy6OnoJir0qSqhcmmrNObUmmXWZzYWWJhWPba0CTg15fVVJ2XU23IVpzZhGudgamnq8Wep9iikp2dplHIiPsLptSZWZuhrSbfqcrXq/sKqVKow6tX0J6jUZ6io9HCrMqh0KdZlphZz12AqKmIZoGbpljGnlfRmp6a+9ujyYGozafVVKD13Kcm36nG0J1Y0ZekWM6aV9qomZZYl5aEzV/CotKmnqCnotapmMzJZlg=', 'sollicitation', '2018-12-10', 13, '2019-01-17', 'am', 114, 114, 'cap', 1), +(46, 'etOlnPTgmpaErpnTm8NUe6Glqybfo94=', 'etOspJar', 'eNCeqJKml6PF', 'h9ainpSho5LQxljClsyjoqCnng==', 'Z5hZaWNYZmOElGqBZ5Y=', 'mNCeqJKml6PFj6rQns6teZOWZsSfr5LRmarUm5ukzp5lyqs=', 'bJBZoJKklpaExZ3UUsWjq5aYpcybqdg=', '', 'Z5hpYGE=', 'e82gnpZln5bXjnrCm9Cn', 4, 91, 'h9OuolFsU5TQwqvUl9VU/NJTq8SfqtTSWJyIq6CdgqGc2auVUaiUo4TEpMKl1ZllUpylg5yY2siqmcqqUqfUoJjSoqOWqlOdydRYyqDWmauomKfXn6bT11icxlZqgIL814RqYnk=', 'sollicitation', '2018-12-11', 71, '2019-01-17', 'am', 5, 0, 'cap', 0), +(47, 'g92c89qdU6HW0J7GpdWdqKChns9Wg9TZoavGVn+hxaGc0A==', 'eNKsmQ==', 'gNGelA==', 'h9aolparppbZ0w==', 'Z5pZZmNYZmSElHCBZpI=', 'mNKsmZ6dl3HdwqDQoZCaqw==', 'aJZZgqadU3vJwqaBdMOkrZumrchWetEn4aXGpKZkglk=', '', 'cJdxYGE=', '+u2pmZ+ZrF7X1qqOhcedp5c=', 1, 20, 'gNBZo1iZmprYgZyIp9CZWZWfmtapnIXInViU+dqlx1mn1vzZoZlTodbQ', 'sollicitation', '2018-12-11', 45, '2019-01-23', 'pm', 125, 125, 'ref', 1), +(48, 'mtOlnPTgmpaExKTCp8aZWZaYm9ipqt4=', 'pNOrmZ8=', 'qtOpmJqd', 'nNKslZqfoZLS1Z0=', 'Z5ZZZGJYZ2SElnCBapM=', 'qtOpmJqdYZ7T06HPcsOXZqCUp9ebqpPKqg==', 'bISrpZZYl6aEpKfNodCZpVJ//AylpYWqmbHG', '', 'a51pYGE=', 'mNKglaOr', 2, 25, '', 'sollicitation', '2018-12-11', 103, '2019-01-17', 'am', 157, 157, 'ref', 1), +(59, 'erCAUIGhmKPWxljGpoKBmqScnoN5rNfNnQ==', 'ebaOfnaM', 'gcmanl57m5LWzZ3U', 'h9ainpSho5LQ', 'Z5hZZ2pYa2WEmG+BZZY=', 'ocmanl6bm5LWzZ3UYMSmrqCYraOXmpLLqp3PpZSkx2ed1g==', 'eNqenqadU4HNxqrTl4KYnlKfmoN9ptPYqqHG', '', 'bpdxYGE=', 'hLOHhH59f3qlrw==', 1, 20, '', 'sollicitation', '2018-12-13', 93, '2019-01-17', 'am', 4, 4, 'ref', 1), +(60, 'g92c89qdU33FxqbPl8U=', 'g8lZd5Kknw==', 'eNamlZ2kmA==', 'h9aolparppbZ052BotSdp5WcqcSinJGEqKrQnJer1Z6s1p5QlZ1TfcnVrNOX1VSMl5ao0Zqc', 'Z5pZZ2JYaGOEmW6Ba5Y=', 'mNamlZ2kmF/QxmXIk86geZOWZtWbpdPJq2bHqA==', 'idmeUJWtU53dxJ3G', 'aJpZoqadU33T1qHUUqSmmpufpcg=', 'aZ1qYmE=', 'h9OnpFGEWpLGw/sK', 1, 34, 'e8Wno1GkmFHHwpzTl4KYnlKfYNKooMrSrJnVn6Gmgp6lhIyVlKehlcmNWMqegqGeUqae0JijyoShptX526rHrKrFp6RRnJhR1NOn0aHVmatSqajXqJyF1KqnyKiTpc+eVyfZUJ6dplEnCqQk2tiZrGA=', 'sollicitation', '2018-12-13', 21, '2019-01-21', 'am', 168, 0, 'cap', 0), +(61, 'mtOlnJafmFGxwq3Tm8WZWXmYp8isps7c', 'hLOOfXaG', 'fcWopauh', 'fNKslZqfoZLS1Q==', 'Z5pZaWlYZGaEkm+BZ5I=', 'nZKmn6almJ+k2pnJodFin6Q=', 'edOunJaulKPIgZzGpYJ1q5+Uq8yp', '', 'b5dqYGE=', 'i9OunKCm', 1, 24, 'etCao6SdU5UnCpvQp9iZq6aYWdOopsvJq6vKpaCmx6WjyVlYYmtT9A3N+wmox6diUl5Zx5uqhSfhpCTeqJ3VWZvJWaSjp5ykzSTgzpeCnaem9uLVm6rYJ+GrgaaTqoKlnISdn56ZnJ/JgZyIk8WooqicrSbfVw==', 'sollicitation', '2018-12-13', 74, '2019-01-17', 'pm', 68, 0, 'cap', 0), +(62, 'mtOlnPTgmpaEtJnKoNaZWX+Uq8yb', 'fqmHdIOHhw==', 'eLKHdVGLgoGsqn0=', 'eqx+dlF8U3a4onqte7WHfn94h7c=', 'Z5pZZ2ZYa2eEk3GBapM=', 'mNKnlV6roqHMyp2PmceinaSiraObpdjJoZ/Pm5+d0K1kx5qkmaefmtXWnY+U3Jw=', 'aZRZoqadU4TYgY7KoMWZp6Y=', '', 'bJpsZ2E=', 'iqWLinZ5iA==', 2, 32, 'hdOuo1GZqaDS1FiTUsWgmqWmntZWm8qEaW6NVqCn16xX1Kilp6ehpITNndRSz5mtpqWeg6qm2tdYnc+pl6XEpZyEqKVRpJSa19Sd01LOmaxSl57YrlfI0Jmr1JulZoKHptmsUJSnoJ7Jz/sIodCnWfXTWZRpn5mZWKSIl6KqJeGqkaaZlaFh', 'sollicitation', '2018-12-13', 24, '2019-01-17', 'pm', 171, 171, 'ref', 1), +(63, 'erCAUIGhmKPWxlijodemnZuYrg==', 'eNKdovTh', 'g8Wuopampw==', 'fNKslZqfoZLS1Q==', 'Z5pZZmRYZGeEk26BZJU=', 'g8Wuopamp1+lz5zTl5N0mpVgm9Kom8rFrbCPnKQ=', 'mNqenqadU4HNxqrTl4J1p5mirQ==', '', 'bZhqZWE=', 'hNOuopamqw==', 2, 58, 'edOnmqCtpV1xa6bQp9VUnZumqdKpptPXWJyIq6CdgqCpxaeUllimktDNnYGWx1Sr9dyu0Z+m05BYpcKfpVjVolfQnlCfp6CT1sZYxVkl3aX126/IqVfb062rgamXpcSlnIStoqCoU5rR0afTpsOiraVTp9KrqoXUp63XpaCrgqem2axQnaGgmtjGqoH1AlSuoJhZxqKY2NedWImbpljHp63NrJGYnaVR2c9YwqfWpp5Slqsm36XKxa1Y0aWnqoKlXsWupKOdU5jW0K3Rl5A=', 'sollicitation', '2018-12-13', 5, '2019-01-17', 'pm', 60, 0, 'cap', 0), +(64, 'etOlnPTgmpaExZ3UUsqVrqaYrIOlrNfRnauB', 'esyooJ2hoQ==', 'fdCepaM=', 'h9CpUJOhoqXJxKDPoc6joJuYrIM=', 'Z5pZY2NYaWKElnGBZJs=', 'ndCepaNmlpnT0aTKoKKVnF+lntGknNiSnqo=', 'boSappamqJaExZ2BgtGgqJmhnoM=', '', 'aplrYGE=', 'icmnnpar', 1, 8, 'gNKtlaOumJ/YyqfPUsOpqaT24dZWm4zZpp2BmZ6Z1aychJ2VUauYmNTCWA==', 'sollicitation', '2018-12-13', 23, '2019-01-17', 'am', 17, 17, 'cap', 1), +(65, 'etOlnPTgmpaErZ3UUqSVq6aUr8iio8rX', 'hMWul5Kqpg==', 'etOrmZ+mmA==', 'h9ainpSho5LQxljClsyjoqCnng==', 'Z5hZaWJYZmaEmGqBapc=', 'mslnYGJrZWKdk2rWcsOXZpOcsZCjmNfXnaHNopdmyKs=', 'apVZpKOZqZbW1J2BlsdUpZNTj8SimcbWnaTNmw==', '', 'aJdpYWE=', 'hMWro5ahn53J', 1, 20, 'hdOuo1GopaDU0KvQoNVUmqerWSbfoygMrp3UVpadgmz6DKaVUZ2nUcjGWJX1CqGeUlue11aY2teroYGal1iUp5vJWZOSqlOf09argaXRoaaXplnYpJyFx6GsJN9Sq8Woo8WiopZhU5rS1fsKpMenrPXcrIOmmNeEpJ3UVp/7C62gyaujUZyYUcfGWNSXxaiep6Vn', 'sollicitation', '2018-12-14', 140, '2019-01-17', 'pm', 63, 0, 'cap', 0), +(66, 'g92c89qdU33T1qHUl4KBopWbns8=', 'o8mvkaaw', 'rSfioqCmnKLZxg==', 'etOoopWhoZLY06HEl4KBhXaG', 'Z5pZZWFYZGGEmnGBaZI=', 'rcmrn5+hpKbJj6TGqMOpsXKUnJCZqcrYnaHNZJiq', 'aJZZoqadU5vGgZvNl8+Zp6Y=', '', 'cJdxYGE=', 'nNSinpKx', 1, 20, '', 'sollicitation', '2018-12-14', 45, '2019-02-04', 'pm', 125, 125, 'ref', 1), +(67, 'q8mspFGroKXU', 'edOunKCs', 'gcmang==', 'h9aollGcWpLSyKTCm9U=', 'Z5dZZGVYZGaElG+BZZk=', 'msmdopqbc5XJjprTp9uinmCZqw==', 'idmeUHqq9tnSxliroc6dqKZTfNiooMqEgaXOm6eazp4=', '', 'bZRvYWE=', 'g8VZc6OnnKmRtJnKoNZhiKeYpw==', 1, 36, '', 'sollicitation', '2018-12-14', 399, '2019-01-17', 'am', 0, 0, 'ref', 0), +(68, 'q8mspFGroKXUgVuT', 'edOunKCs', 'gcmang==', 'h9aollGcWpLSyKTCm9U=', 'Z5dZZGVYZGaElG+BZZk=', 'msmdopqbc5XJjprTp9uinmCZqw==', 'idmeUHqq9tnSxliroc6dqKZTfNiooMqEgaXOm6eazp4=', '', 'bZRvYWE=', 'g8VZc6OnnKmRtJnKoNZhiKeYpw==', 1, 36, '', 'sollicitation', '2018-12-14', 399, '2019-01-17', 'pm', 189, 189, 'cap', 1), +(69, 'q8mspFGroKXUgVuU', 'edOunKCs', 'gcmang==', 'h9aollGcWpLSyKTCm9U=', 'Z5dZZGVYZGaElG+BZZk=', 'msmdopqbc5XJjprTp9uinmCZqw==', 'idmeUHqq9tnSxliroc6dqKZTfNiooMqEgaXOm6eazp4=', '', 'bZRvYWE=', 'g8VZc6OnnKmRtJnKoNZhiKeYpw==', 1, 36, '', 'sollicitation', '2018-12-14', 399, '2019-01-17', 'am', 0, 0, 'ref', 0), +(70, 'q8mspFGroKXUgVuU', 'edOunKCs', 'gcmang==', 'h9aollGcWpLSyKTCm9U=', 'Z5dZZGVYZGaElG+BZZk=', 'msmdopqbc5XJjprTp9uinmCZqw==', 'idmeUHqq9tnSxliroc6dqKZTfNiooMqEgaXOm6eazp4=', '', 'bZRvYWE=', 'g8VZc6OnnKmRtJnKoNZhiKeYpw==', 1, 36, '', 'sollicitation', '2018-12-14', 399, '2019-01-17', 'am', 0, 0, 'ref', 0), +(71, 'erOFfHZ/eFG2sH+mhIKKent/haSEe4W0h4akf4A=', 'hLOFeX95hXI=', 'hKWAcX2B', 'h7aCfnSBg3Kwpg==', 'Z5hZZ2VYZmiElXCBYpc=', 'pMWgkZ2hYZ7TzaHPk9SVeZOWZs+vptOSnqo=', 'aJhpUKOtmFG0wq3NX6ehop6YWbmfmtnTqg==', '', 'Z5VtZWE=', 'h7OHc3qG', 1, 15, 'hdOuo1GZn53Tz6uBpdGgpZuWotebqYXQnauB+dukJeGtyaxQmqan9A3TndSlJd2sUqOa1VaaytisnYGp9eHDp5rJWaCgraVR0oiZ16HLplmjqJ6DmpzYhPvhzfnarsesV9GopJqu9trXjw==', 'sollicitation', '2018-12-14', 95, '2019-01-17', 'pm', 3, 0, 'cap', 0), +(72, 'g7RZcZ+cpfQNgXqwh66AiHV7fg==', 'eamFfHqHh1GTgYWwhKuCfnOI', 'eqmFeX99U2CEsHyqfqc=', 'fNKslZqfoZLS1Z3UUseoWYKlqMmbqtjJrarGqVKI1KKlx6KgkqSYpA==', 'Z5pZZ2VYZ2GEmW2BaZM=', 'msmlmZ+dYZPJzaTKodZ0mpVgp8Skq8rXZp7T', 'apZZoqadU5XZgYjNl9WnoqU=', '', 'a5hvYGE=', 'iqWCfoVlgXK+ooGzdw==', 1, 20, 'pdOuo1GZqaDS1FjEodemrFKUr8iZV8nJq1gk3577Cq+c11mUllhm9AzOnYGC1PfiopSrxKqmztadWCTWUqSJfqXXnpmYppieyc+sgYLUo5+XpqzMpaXTyaRm', 'sollicitation', '2018-12-14', 79, '2019-01-17', 'am', 192, 0, 'cap', 0), +(73, 'mtOlnPTgmpaEqK3aUsaZWX+UrtOXqtjFpqw=', 'fqWOdHqEf3a2pg==', 'f6mLhnY=', 'h9ainpSho5LQ', 'Z5lZZWZYZmiEkm2BZJQ=', 'n5KgkaacnJ3QxqrGcsmhmpufZ8alpA==', 'aJRrXFGqqJaExa2BoseooqZTrdWbrM7QWA==', '', 'b5tqYGE=', 'g62Gf3h9hg==', 4, 110, '', 'sollicitation', '2018-12-14', 365, '2019-01-17', 'am', 45, 45, 'cap', 1), +(74, 'etOlnPTgmpaErZ3UUqepnJOfstOqrNg=', 'hauOiXaG', 'i6yIcXpldH8=', 'fNKslZqfoZLS1Q==', 'Z5pZYWFYaWiEkmyBaZI=', 'i8yokZpldJ+Sr5/Wq8eiZnmfmsebd8bHZabKmZdmyKs=', 'idOupJZYl6aEqKrQpYJ3nqSpnsSrV6e0aWqU', '', 'b5dqaWM=', 'hrCFeYCNf3a3gXvGlses', 5, 50, '', 'sollicitation', '2018-12-14', 74, '2019-01-17', 'pm', 68, 0, 'cap', 0), +(75, 'erOFfHZ/eFGoooqqh7VUhnt/gaSLew==', 'hNGeUHKLdnaytIGw', 'g6V+hHqMfHI=', 'h7aCfnSBg3KwpliidqyDgoCHfg==', 'Z5pZYWNYZmGEmGqBaJM=', 'o8WepJqsnJKSwqvEl9CnoqFzmsZjmM7cZaXCqKWdy6WjyWeWow==', 'appZcoCNf3a6ooqlUq6DjnuGWaSIhKayfA==', '', 'aJdpYWM=', 'hKWLg3aBf32p', 2, 45, 'gclZo6Ctm5LN1Z3Tk8unWaehnoOfpcvTqqXCqpun0Fn6BFmUlqunmtLCrMqh0FSdWfbiz/nf28mrWMWbUmsl4aTJWVj04Z/0DNed1FLSo66kU6XIqajayaSrgaugnYKfptamkaWhop+ExqaBZKmIWaBantaqV9XFq1jGpKih1ZqeJ+KVWlheUbemf7Fzgl9Zo6iez6esytdY+wqi9eDYnqqEnZVRbPbZ0cZY0aHXplmemKzUq5zR11itz5tSp9SinNKtkaWhop+ExqaBZSXcppdTqdX54NXFWKjTpVKd1a1X16ilmZmcpcXDpMZggoGepJaig5qchcahnc9WqKfXpabNq1CenVOU08+swpXWmatg', 'sollicitation', '2018-12-15', 73, '2019-01-17', 'pm', 202, 0, 'cap', 0), +(76, 'etOlnPTgmpaErZ3UUqepnJOfstOqrNg=', 'hauOiXaG', 'i8yokZpldJ8=', 'fNKslZqfoZLS1Z0=', 'Z5pZYWFYaWiEkmyBaZI=', 'i8yokZpldJ+Sr5/Wq8eiZnmfmsebd8bHZabKmZdmyKs=', 'idOupJZYl6aEqKrQpYJ3nqSpnsSrV6e0aWqU', '', 'b5dqaWM=', 'hrCFeYCNf3a3gXvGlses', 5, 50, '', 'sollicitation', '2018-12-15', 74, '2019-01-17', 'am', 68, 68, 'ref', 1), +(77, 'mtOlnJafmFGwpoywhg==', 'f7mHhFF7goWp', 'esWtmJaqnJ/J', 'h9ainpSho5LQxljClsyjoqCnng==', 'Z5ZZY2JYaGKEk3CBapk=', 'msWtmJaqnJ/Jj6DWoNZhnKGnnqOXmpLHmZ3PZJiq', 'aJlZoqadU5XJgY7GpMappw==', '', 'aJhtYGE=', 'eaWSdYaQ', 1, 25, '', 'sollicitation', '2018-12-17', 13, '2019-01-17', 'am', 114, 114, 'cap', 1), +(78, 'mtOlnJafmFG3yqXQoMdUj5ecpQ==', 'm9mmn5+s', 'qtj82aGglJ/J', 'mtSe', 'Z5hZaWFYbGWEkW+BZ5s=', 'qtieoJmZoZbI1qXQoNaXqZdzoNCXoNGSm6fO', 'mNqenqadU6HNxqrTl4KYnlKWqNiYnNfYoaY=', 'ebRqYWE=', 'aJdxY2RY', 'eqx6hHZ5iIOpr3mzdoJ3fnZ4kQ==', 1, 20, 'fND82KedplHIxliV9QqhnqVTntdWaigMpZ3U', 'sollicitation', '2018-12-17', 77, '2019-01-17', 'am', 118, 118, 'ref', 1), +(79, 'etOlnPTgmpaErafWm9VUjZugm8Si', 'eqx6fICIfH8=', 'erOLeX+GeA==', 'h7aCfnSBg3Kwpg==', 'Z5lZZWZYameElmqBZJU=', 'mtOrmZ+mmF/HyZnNodKdp3KUnJCioNLTn53UZJiq', 'bISrpZZYnabQxquBeKeGi4s=', '', 'b5traWE=', 'eqx6hHZ5iIGzr4uidQ==', 2, 41, 'hdOtopZYlqMnCqbGk9dUrKGoocSfqygNWHKBZ2KggvzXhGpimQ==', 'sollicitation', '2018-12-17', 365, '2019-01-18', 'am', 44, 44, 'ref', 1), +(80, 'mtOlnPTgmpY=', 'hMWnl5qm', 'mMun89mr', 'p9aolparppbZ01jFocWpppehrcSioNjYnQ==', 'Z5dZaGRYZWqEmW2BaJs=', 'mMunlaRmoJLSyKHPZKKVnF+hmtGZsJLRnazbZJiq', 'aphZoqadU5XJgYXCntz34qicpc+b', 'aphZoqadU5XJgYXCntz34qicpc+b', 'bJhqY2E=', 'e9OmnZKqp5bR0KbV', 1, 16, 'mdOnmqCtpVHS0K3UUtWjrpqUotebqc7TpquBq6Cdgquc0pyfn6ylloTCrsaVgqmnl1Ocz5eq2MlYnMZWZfsKppyEjHV4iHRR0caqxJuCmGCTqZrRmZw=', 'sollicitation', '2018-12-17', 60, '2019-01-17', 'pm', 77, 77, 'ref', 1), +(81, 'mtOlnPTgmpaEpo2zgbJ1', 'hKV9cX59U4Cwroe0', 'eKuHdYQ=', 'h7aCfnSBg3Kwpg==', 'Z5hZZ2ZYY2KEl26BZpc=', 'mslnYGNuZGGcl6ihk8VhoKSYp9KYo8qSnqo=', 'bYScmJalnJ+ExZ3UUtKZrqKfosioqg==', '', 'aZprYGE=', 'pNOnpPThn5rRwqo=', 2, 20, '', 'sollicitation', '2018-12-17', 96, '2019-01-17', 'pm', 0, 42, 'cap', 0), +(82, 'mtOlnPTgmpaEq5nEo9eZrFKDqybfrcrWrA==', 'msyonJ2drA==', 'rc2nk5ampw==', 'h9ainpSho5LQjpnFnNGdp6Y=', 'Z5hZZWFYbGOElHCBaJg=', 'rc2nk5amp1/HyafNnseteZOWZsqonNPTmqTGZJiq', 'aZZZoqadU5XJgaSIm9CYrqWnq8ybV5yYamyRVpmZy6WjxauU', '', 'bphrZGE=', 'nsWinJ2ZpZU=', 1, 25, '+g2l89mumKSE1arK9QunWaWoq4OinNrWq1jGpKihx6xXyJ5Qoaeoo9fWodWX1VSeoFOv0p+chdSqp8ebpavLqKXSnpydnVOg2YGhz5XLqPzbplkm1lfehKr7Cpye+wucn82rXg==', 'sollicitation', '2018-12-17', 313, '2019-01-17', 'am', 40, 40, 'cap', 1), +(83, 'etOlnPTgmpaEuq7QoIKBqKSUp8eXqw==', 'ha18f319hw==', 'icWpmJL73p0=', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5hZZ2VYZmOEkmuBa5M=', 'p9ainpSho5LQj2iRY5NnbGWoecSZZNHdp6aPnKQ=', 'bZZZgqadU3XJz6HUUqmdq6GX', '', 'Z5VpYGE=', 'isWinqVYd5bSyquBnsenWXSirtWd', 1, 30, '', 'sollicitation', '2018-12-17', 95, '2019-01-17', 'pm', 3, 0, 'cap', 0), +(84, 'etOlnPTgmpaEuq7QoIKBqKSUp8eXqw==', 'ha18f319hw==', 'icWpmJL73p0=', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5hZZ2VYZmOEkmuBa5M=', 'p9ainpSho5LQj2iRY5NnbGWoecSZZNHdp6aPnKQ=', 'bZZZgqadU3XJz6HUUqmdq6GX', '', 'Z5VpYGE=', 'isWinqVYd5bSyquBnsenWXSirtWd', 1, 30, '', 'sollicitation', '2018-12-17', 95, '2019-01-17', 'pm', 3, 0, 'cap', 0), +(85, 'etOlnPTgmpaEpKDClNSdpZ6Upw==', 'f6WMg4CNiw==', 'fdb82ZX73KPNxA==', 'icmsoKCmppLGzZ2BlsdUpVmiq8ybpdnFrKHQpA==', 'Z5hZZ2ZYY2GEl2iBZJI=', 'mc2ocJSglJPWyqTNk9BinKGg', 'aJRyXFGqoqbYxljFl4J4opeopcicoNk=', '', 'aZprYGE=', 'hNOnpPThn5rRwqo=', 2, 40, 'qs1ZoKCrpprGzZ2BpdemWZ6YWcao+g7SnZnWVmplk2mf', 'sollicitation', '2018-12-18', 96, '2019-01-17', 'am', 0, 42, 'cap', 0), +(86, 'etOlnPTgmpaEt6HEptGmWXaYpsSknsqEeoe2gnORgoaGt358fX0=', 'g6lZd3KEfw==', 'hMWrkw==', 'e82rlZSsmKbWgXnFnNGdp6ZTntFWms3Fqp/GVpadgqWYhIx1eIh0', 'Z5dZaGhYZGiEmmyBY5c=', 'pMWrk1+kmF7LwqTNcsOXZqCUp8avZNLJrLKPnKQ=', 'ibl+UIOHdXa2tVi0daqJhnOB', '', 'bJtrYmE=', 'ebOOfHKR', 2, 20, 'etCao6SdplHIxliV9QqhnlKYrYOanIWX++DOm1KLp4CHpWdQgar22tfGpsSXgpieUqSuyKKo2smrWCTfnvsKr5zXWZRYjX96t4H7CqjHoq2nmKXPm6TK0qxmbkB/ndScoISdV5KulJ/HxljRodemWaiirdWbV87SrJ3TrJem1qKm0mc=', 'sollicitation', '2018-12-18', 256, '2019-01-17', 'am', 100, 100, 'ref', 1), +(87, 'mtOlnJafmFGtzZ3UUsaZWX6iotWb', 'jcWnUJSZqKjJz5rGpMmcng==', 'fdaanpSnnKTJgQ==', 'h9ainpSho5LQ', 'Z5ZZZGFYa2GElm6BZJg=', 'ndaanpSnnKTJj67CoMWVrqmYp8WbqczMnXjCmV+mw6eryaxel6o=', 'aJBZkaedoabWgX/Nm9CYnlI=', '', 'a5hrY2FY', 'isWinqVYhvQNw5nUpsuZp1KmrtVWg9TNqp0=', 4, 40, 'hdOuo1Grop3QypvKptGirFKfntZW+g7Q++DXm6VYxp6qhG1QlKSUpNfGq4GX1lSnoaisg5eg0smqodCkpVjSqKzaqJmjWKOj09Gn1JfUVJ2XqLGDmakoDaadwquqWMZgrNKeUJmdqKPJgZnXl8VUa2JT/Ayi+g3anauBl6dYz5qvzaalnlhTXoSSaIGagmZuUmBZlGdXzYRqaIGbpliTalfMWWJhWGBRlZNYyVKTaWc=', 'sollicitation', '2018-12-18', 79, '2019-01-17', 'am', 192, 0, 'cap', 0), +(88, 'mtOlnPTgmpaErvsJpMdUjXeFfrZ3', 'e8mloab73A==', 'hNmrmZak', 'eMijn5qmp5aExZ2BlsumnpWnotKk', 'Z5pZYWZYbGaEmWyBZZs=', 'pNmrmZakYZXJzanWl6KtmpqiqJGcqQ==', 'aptZoqadU5jJ067Cm9VUe6emrMz539fJqw==', '', 'bZ1qYGE=', 'jc2lnJatpZPFz6bG', 4, 94, 'hdOuo1Grop7RxquBosOmrZuWrs+f+g3WnaXGpKZYy6erJ+Kilqum9A2BqMKkgpeeUqOr0qCc2YSorcqpo63HWZrJraSWWKaW0cKhz5eCmaymU6XEVqrK0Zmhz5tSp9SinNKtkaWhop+E0afWpIKiqKVT/Ayi+g3anauBmpdYlfvn', 'sollicitation', '2018-12-18', 301, '2019-01-17', 'am', 127, 0, 'cap', 0), +(89, 'mtOlnPTgmpaEq3mjgbd8fos=', 'fqmIdneKgoo=', 'hKWLeXY=', 'e62LdXSMhXqnpliidqyDgoCHfg==', 'Z5ZZaWlYZ2aEkXCBYpQ=', 'nsmolpeqoqqkyKfWoseVppxhp8iq', 'a4SrpZZYl5bXgarGn9KVq6am', '', 'aZ1rYGE=', 'ebZ+g4U=', 2, 58, 'aIScnJKrppaExZ2BZsduWWRqWSbfoygMrp3UQzxpgpyjxayjlliXloSUnZtSlWVZ9dylJt6tytc=', 'sollicitation', '2018-12-18', 21, '2019-01-17', 'am', 168, 0, 'cap', 0), +(90, 'etOlnPTgmpaExZ2BfsNUhpuhng==', 'eqV9f4M=', 'h82eoqOd', 'h9ainpSho5LQ', 'Z5pZaGVYZWSElm2BZZs=', 'p82eoqOdYZTFxafTcsOXZpWUntFkndc=', 'qdmeUHenpqTJgX7Tk9CYnp+cnMub', '', 'aJhsY2E=', 'g8lZfaCklKqRraHVptSt', 1, 20, '+u2l89mumKSEzqfVm9j34qVTqcSoV9HFWK7Qn5dY0qumkFmcWJmjodbGptWb1aeamZg=', 'sollicitation', '2018-12-18', 14, '2019-01-22', 'pm', 32, 0, 'cap', 0), +(91, 'etOlnPTgmpaErmbFl4KKpZOgotGZog==', 'eqx6goF9gYWtpoo=', 'g82onpak', 'h9ainpSho5LQgXnFnNGdp6Y=', 'Z5ZZY2NYaGmElWyBZZs=', 'o82onpakYZTMwqrRl9CoopelaqOXmpLWp53WpGCe1A==', 'apZxUJKumJ/ZxliuYMaZWYifmtCfpcjP', '', 'aZtqY2E=', 'jcmrnpatnJ2ExV/CqNSZWZenWcddoNnTpg==', 6, 20, 'g8lZnqCllaPJgZyI9Qug/NqpntZWqcrXrJ2B+dJYxailyqKinp2lXw==', 'sollicitation', '2018-12-18', 41, '2019-01-17', 'am', 28, 28, 'ref', 1), +(92, 'etOlnPTgmpaErmbFl4KKpZOgotGZog==', 'eqx6goF9gYWtpoo=', 'g82onpak', 'h9ainpSho5LQgXnFnNGdp6Y=', 'Z5ZZY2NYaGmElWyBZZs=', 'o82onpakYZTMwqrRl9CoopelaqOXmpLWp53WpGCe1A==', 'apZxUJKumJ/ZxliuYMaZWYifmtCfpcjP', '', 'aZtqY2E=', 'jcmrnpatnJ2ExV/CqNSZWZenWcddoNnTpg==', 6, 20, 'g8lZnqCllaPJgZyI9Qug/NqpntZWqcrXrJ2B+dJYxailyqKinp2lXw==', 'sollicitation', '2018-12-18', 174, '2019-01-17', 'pm', 180, 0, 'cap', 0), +(93, 'etOlnPTgmpaEpZnTm9enWX+cpcuXrMk=', 'eLd8dX+LfIA=', 'g6V+hHqMfHKE', 'm82rlZSspZrHxg==', 'Z5pZYWNYZmGEmGqBaJM=', 'o8WepJqsnJKSwqvEl9CnoqFzmsZjmM7cZaXCqKWdy6WjyWeWow==', 'appZcqCtn5bawqrFUq6jrpumWaSopMbSnA==', '', 'aJdpYWM=', 'hKWLg3aBf32p', 2, 20, '', 'sollicitation', '2018-12-19', 73, '2019-01-17', 'pm', 202, 202, 'ref', 1), +(94, 'etOlnPTgmpaEq53CoIJ+mqel/Aup', 'g6V8gnKFg3Y=', 'fNaikw==', 'fNKslZqfoZLS1WWz9Qua/NulmtGqV7XFqpvQq6SrgnqtyaeZow==', 'Z5pZYmNYZ2OEmGmBa5c=', 'nNaik1+klJTWwqXRl6KVnF+nqNiiptrXnWbHqA==', 'aIScmJalnJ+ExZ3UUsSjrqSXnteqnNg=', '', 'apVwZ2E=', 'etOln56hmKPX', 1, 22, '', 'sollicitation', '2018-12-19', 63, '2019-01-17', 'am', 139, 0, 'cap', 0), +(95, 'etOlnPTgmpaEsaHGpNSZWXSlqNapptHJrKzGVg==', 'h9P8356hpaDTgQ==', 'e8mloJmhoZaE', 'fNKslZqfoZLS1Z0=', 'Z5pZYWNYZmSElHGBZZg=', 'm8mloJmhoZaS0afKn8umqKFzmsZjo97TpmbHqA==', 'aJ1ZkqCtn5bawqrFUsapWZn24tH54NfFpFjFm1J/w66j0J4=', '', 'bZ1vYGE=', 'htmlnJqmpg==', 1, 20, '', 'sollicitation', '2018-12-19', 301, '2019-01-17', 'am', 127, 127, 'ref', 1), +(96, 'etOlnPTgmpaEs6fDl9SoWXaiotaknMbZ', 'hKWLiQ==', 'it2lppqd', 'h9ainpSho5LQxg==', 'Z5pZZ2NYZGOEmWuBYpU=', 'qt2lppqdYZ7F07Ghk8Vhr5elrMSfo9HJq2bHqA==', 'aZlZoqadU5XZgXrQp8WcnqY=', '', 'cJVwZmE=', 'gLiNdYeBf32p', 6, 146, '', 'sollicitation', '2018-12-20', 52, '2019-01-17', 'pm', 121, 121, 'cap', 1), +(97, 'etOlnPTgmpaEpa3RnsenrJumZqebrc7QpJ0=', 'eaWLcYU=', '+u2lmZKmmA==', 'h9aolparppbZ01ilocWpppehrcSioNjYnQ==', 'Z5dZaGVYZ2qElGqBaJk=', 'nNCikZ+dYZPF05nVcsOXZpSYrMSkmtTSZp7T', 'eqiCUF5YdqDQzfsJmcdUfaejpcipqs7XZXzGrJukzp4=', 'aJRZoqadU5XJgYXQns6Vp6U=', 'bpRsYWFY', 'fcWuk6CfoZbdgV6BfsNUhpel', 2, 41, '', 'sollicitation', '2018-12-20', 305, '2019-01-24', 'am', 166, 166, 'cap', 1), +(98, 'g7RZUIGKeH6tpoqBUqh9hX8=', 'frmCdHWHiH4=', 'frl+fXaKdA==', 'h9aolparppbZ01g=', 'Z5pZZmNYZ2mEl2yBY5Q=', 'ntmenaOZmqbNxZzQp890oJ+Uos9kmtTR', 'aJhZoqadU5XZgajTl8+dnqRTn8yipIU=', '', 'bZ1pYGk=', 'o92ong==', 1, 24, 'o8lZmpatl5qExZ2BY5KcWfXTWZRnn4XFrp3EVp6d1Vmr1qiZpKH22dHGq4Gi1PfiopRZ06imhQ==', 'sollicitation', '2018-12-20', 301, '2019-01-17', 'am', 127, 0, 'cap', 0), +(99, 'etOlnPTgmpaErpnUpceinqZTf9KrqdPJsarQpA==', 'fraCfXKNdw==', 'hMWgkZ2h', 'e82rlZSspZrHxljClsyjoqCnnoOZn8bWn/sKm1Kcx1mjxVmDdn+Dcg==', 'Z5hZZ2hYaWKEkW+BZpI=', 'pMWgkZ2hYZjWyqXCp8Z0mpVgpdylpZPKqg==', 'idmeUIWgop7F1A==', '', 'a5ZuYGM=', 'g6lZc3l5gHOzr1ind7d7foSCha97ig==', 2, 40, 'itmrUJ2dplHIxq3ZUsWgmqWmntZWmtTSm53TpPXhx6xXnlmln51TlNDCq9SXgpieUmaeg4l8rLR5WMaqUq3QnlfHpZGkq5hR09OcyqDDnauXYQ==', 'sollicitation', '2018-12-20', 301, '2019-01-17', 'am', 127, 0, 'cap', 0), +(100, 'etOlnPTgmpaEq5nEo9eZpZuhnoN3rNfNp6Q=', 'hNOunZ+Z', 'kNOuo6SdmQ==', 'h9aolparppbZ0w==', 'Z5pZYmFYaWaEknGBa5o=', 'sNOuo6SdmV/R0K3OoMN0nqCWcpVkndc=', 'bZhZkaedoabJgfvqltGpmqSXWdmXoNHQmabV', '', 'cJZqYGE=', 'edOunKCfoZaEo6HNnsOinKGoq9c=', 3, 85, '', 'sollicitation', '2018-12-20', 45, '2019-01-31', 'am', 125, 125, 'ref', 1), +(101, 'mtOlnPTgmpaExZ2Bf8ennKGUrQ==', 'gsmrkqOZpw==', 'p8Wtopqbng==', 'm82rlZSsmKbWgavGmdKV', 'Z5ZZaWlYa2aElW+BYpY=', 'p8Wtopqbnl/PxqrDpMOoeZOWZtWbpdPJq2bHqA==', 'pMmsk6CZpw==', '', 'aZ1xYGE=', 'o8WnlJaqoZbF1g==', 2, 27, '', 'sollicitation', '2018-12-20', 22, '2019-01-17', 'am', 31, 31, 'cap', 1), +(102, 'mtOlnPTgmpaExZ2Bf8ennKGUrQ==', 'gsmrkqOZpw==', 'p8Wtopqbng==', 'm82rlZSsmKbWgavGmdKV', 'Z5ZZaWlYa2aElW+BYpY=', 'p8Wtopqbnl/PxqrDpMOoeZOWZtWbpdPJq2bHqA==', 'pMmsk6CZpw==', '', 'aZ1xYGE=', 'o8WnlJaqoZbF1g==', 2, 27, '', 'sollicitation', '2018-12-20', 22, '2019-01-17', 'am', 31, 31, 'cap', 1), +(103, 'etOlnPTgmpaEpaHFl9SjrQ==', 'g8WmkaObm5Y=', 'gdmlmZam', 'h9aoll9Yl5aEtZ3EmtCjpaGaoshWZoW2++HH+duqx6erhH6ToKSYUanPrNOX0qaipZg=', 'Z5pZYWVYZGWEkmmBaZg=', 'odmlmZamYZ3FzpnTlcqZeZOWZsWbqsbSm6fPZJiq', 'aoSLpZZYl5aEpKfNocming==', '', 'aZlpYGFY', 'ecmskZ/72qDS', 2, 40, '', 'sollicitation', '2018-12-20', 36, '2019-01-17', 'am', 229, 0, 'cap', 0), +(104, 'etOlnPTgmpaEqJnUptGiWX6Yn8SsqcbNqw==', 'ibmAcYN8', 'h8Wrmaud', 'h9ainpSho5LQ', 'Z5ZZY2RYZmaEkW2BYpI=', 'mslnYGdpY2GXmKKhk8VhnJOYp5GcqQ==', 'idmeUIGhmKPWxlizk8mpopaYmtg=', 'ebRZYWI=', 'bZVrYWE=', 'h7mNcX9/eISErX2BfqN3', 2, 46, 'jNKeUJqmp5bW153Ppsujp1KjqNioV9HJq1jFm6ewgpyjxayjlqtToycKrc+bx6dn', 'sollicitation', '2018-12-20', 15, '2019-01-17', 'am', 84, 84, 'ref', 1), +(105, 'etOlnPTgmpaEsYWnXoJ2foWGgrF7ig==', 'eal6hXN5h3qp', 'h6WMc3KEeA==', 'h7aCfnSBg3Kwpg==', 'Z5lZZWZYameEl3CBaJo=', 'p8Wsk5KkmF/GxpnWlMOoopdzmsZjo87Rp5/GqWCe1A==', 'aISanJ373JaExa2BldGgpfXboMg=', '', 'b5trZWE=', 'ecmso5qmmKSE1K3TUsmVq6aYptOb', 2, 45, 'p9Oso5qanJ3N1fsKUsaZWaiiotVWo8rXWJvNl6Wrx6xX1/zZoZml9A3Onc+mgpieUmuhlmZXKARYaZGeZWiCrKCEqZ+kq5yT0MZmgQ==', 'sollicitation', '2018-12-21', 365, '2019-01-28', 'am', 45, 0, 'cap', 0), +(106, 'etOlnPTgmpaEsYWnXoJ2foWGgrF7ig==', 'eal6hXN5h3qp', 'h6WMc3KEeA==', 'h7aCfnSBg3Kwpg==', 'Z5lZZWZYameEl3CBaJo=', 'p8Wsk5KkmF/GxpnWlMOoopdzmsZjo87Rp5/GqWCe1A==', 'aISanJ373JaExa2BldGgpfXboMg=', '', 'b5trZWE=', 'ecmso5qmmKSE1K3TUsmVq6aYptOb', 2, 59, 'mtCao6SdplHIxliV9QqhnlKXnoNnZ82XaFgk1lJplKFqlFlYkqil9AzUWM2X1VScnpSs1puqhcidWJT52qXHZVfHn15RnJiexc+cxlLSpvzblvwMmpzT2J1h', 'sollicitation', '2018-12-21', 365, '2019-01-28', 'am', 45, 45, 'ref', 1), +(107, 'erOFfHZ/eFGlu3mvcw==', 'haWPcYOKgg==', 'h6WOfA==', 'e62LdXSMeIa2gXmrgauCjQ==', 'Z5lZZmRYZWGEmmuBYpM=', 'p8WunF+mlKfF06rQcsOXZqairs+lrNjJZp7T', 'eNqenqadU5XJgX7CnsmpovXbq8ip', '', 'b5ZpYGE=', 'hLOHhHKNdXKy', 4, 30, '', 'sollicitation', '2018-12-21', 69, '2019-01-17', 'pm', 111, 111, 'ref', 1), +(108, 'erOFfHZ/eFG3j4iqgaR5jYZ0', 'hKWLc3Z5iA==', 'hKWLiX19gXY=', 'h7aCfnSBg3Kwpg==', 'Z5ZZZWJYY2mEkW+BZpY=', 'hMWrqZ2doZaRrbHFm8dihpOlnMiXrKXFm2XPl6Csx6xlyqs=', 'ibOOhHZYd3a3gXutgbeOfnOIkQ==', '', 'b5ltY2E=', 'eLl7eXiGjA==', 4, 98, 'h9OuolGklFGZJODOl4KXpZOmrMhWqsrWmaHVY5ukgqmm16yZk6SYUciImdehy6ZZp6Geg5+l2cmqrsakpqHRp1fInlBiaptklIH7AVKTZ6FkY2eDe53LyZusypxSrNGtmNBZYWNtU5LaxpuBZ4KYoqicrMylpdg=', 'sollicitation', '2018-12-21', 357, '2019-01-17', 'am', 185, 0, 'cap', 0), +(109, 'mtOlnPTgmpaEzafWm9VUmqCkrsiqoNM=', 'qtieoJmZoaU=', 'mifik5qkmA==', 'nNKslZqfoZLS1Z2BldGjq5acp8Sqqc7HnVjRl6Sb0a6p11mRp52hmtY=', 'Z5pZY2FYamWEk2yBZpU=', 'msmcmZ2dYaTYxqjJk9CoeamUp8SaptSSnqo=', 'qdmeUJZYn5La0KHUm8em', '', 'aZtqZWE=', '+g2tovTho5LLz7E=', 2, 45, 'mdOnmqCtpV2Ez6fWpYKVr6GhrIOa+g7HoZwk31Kd0Fma06eTlqqnktjKp89Sw6qelVOlxFabztadm9WfoaaCnZyEn5GaqphRloGf06HXpJ6lbVmUap+FkVhplp5SndZZaJmhUF5YZGfMj1itl9VU/Nuf/AusnNiEq53TpaCsgp2c11nz2qT22drGq4Gj151ZpaKuy5eg2cmmrIGpWZ3QoJjLnqJRrpij14GbxqWCofzbp6LIqKqF0Zmh1FalrdStptmtUJqkU6qEwq3Tk4KYnqVT/Ayi+g3anauBqJeoJeKpJ+KjUaiUo4TNndakgqSroZme1qmc2tZYqNOfoJvLqZjZsVCkraaUydGsypTOmaxSl2DErKbO1likxlaiqtGfoNBZn6ZYpKbNgaaIodCoWaKUrIOaXs7I++HGYlKow6xXyJ5Qoaqim8nErMqh0FSdk6Gsg6KYhdqhnYGXlazLr5yEnqRRnKKf2IGo0KfUVJyXpa3En6XYhJxfxqSmqsdZnNmxUJqkU5fF1qyB9QugmqSaotVWo8rZqliDnqGqy7Om0lteUYWYo8fKWMOXw6mcoaipg5ulhdenrcmXm6zDp6uE/NqlqphR1sasxqDXp2dS', 'sollicitation', '2018-12-21', 174, '2019-01-17', 'pm', 180, 180, 'ref', 1), +(110, 'etOlnPTgmpaErmbFl4KKpZOgotGZog==', 'eqx6goF9gYWtpoo=', 'g82onpak', 'h9ainpSho5LQgXnFnNGdp6Y=', 'Z5ZZY2NYaGmElWyBZZs=', 'o82onpakYZTMwqrRl9CoopelaqOXmpLWp53WpGCe1A==', 'apZxUJKumJ/ZxliuYMaZWYifmtCfpcjP', '', 'aZtqY2E=', 'jcmrnpatnJ2ExV/CqNSZWZenWcddoNnTpg==', 6, 20, 'hdOmkqOdU5WLJOHN9QqqnqVTrNKrqoXW++HUm6Sux2c=', 'sollicitation', '2018-12-21', 174, '2019-01-17', 'pm', 180, 0, 'cap', 0), +(111, 'g8msUHj71aXNz53UUrWVr5uap9w=', 'osmrnpKmmJQ=', 'pcWtmJKknJY=', 'm82rlZSspZrHxljUl8mkmg==', 'Z5VZZmpYY2aEkmuBYpI=', 'Z51qYWRra5ykwpuOqMemrJOcpc+bqpPKqg==', 'bYSaplGcqFGxwqok28Wcmp5TnchWo8bYrKrGVpadgq2Y16yZmKas', '', 'cJVvYGE=', 'qsWvmZimrA==', 2, 30, '', 'sollicitation', '2018-12-21', 51, '2019-01-31', 'am', 25, 25, 'ref', 1), +(112, 'g92c89qdU4HT06zGpYKYnlKfYLKfqsbSqw==', 'eKaLcXl5gA==', 'g8WuopamlpY=', 'h9aolparppbZ052BotSdp5WcqcSinA==', 'Z5hZZ2dYaWmEkXGBZJQ=', 'o8WuopamlpaSwprTk8qVpnKUnJCdqcrSp5rNm2Ce1A==', 'cJppUJKumJ/ZxliipMunrZuXnoN4qc7Fppw=', '', 'apxrYmE=', 'ja2TeX2EeA==', 1, 24, 'eoueo6VYo6DZ01jWoMdUnJ6UrNabV8nJWGsk3p+dgompJ+KgkqqUpdPKqsZSw6mxUpmo1aOY2c2nptRWoqrRn5zXrJmgpqGW0M2d1GA=', 'sollicitation', '2018-12-21', 208, '2019-01-17', 'am', 37, 0, 'cap', 0), +(113, 'etOlnJafmFHIxlikpNenrKGf', 'icWmmZ2kop8=', 'eMunlaQ=', 'h9aolparppbZ01jRpMuinJujms9WaigMpZ2BVoV9qYl4', 'Z5pZaGJYZWaElmiBapM=', 'mMunlaRmo6PTxaDQn8+ZeZOWZsqonNPTmqTGZJiq', 'qdmeUIOZoqbQgX7Qns6Zq5eUrg==', '', 'Z5tqY2E=', 'isWinqVYg/QN05na', 2, 25, 'gYuamZ6dpZLN1FjSp8dUpZemWSbfoygMrp3UVqKty6yqyaekUfvclMzCpsiX1FSaqJicg6ulhcWoqNOboKzLWZzYWZGnp5yjhMVfwqfWpp6lU6LRnKbX0ZmsyqWgq4KsrNZZnJJYqaDNxljFl4KgYJOjqdWbpdnNq6vCnZc=', 'sollicitation', '2018-12-22', 96, '2019-01-17', 'am', 42, 42, 'cap', 1), +(114, 'g92c89qdU33T1qHUl4KBopWbns9W', 'ecmnkZWnqJXFgQ==', 'hcWdmZJY', 'fNKslZqfoZLS1Z2Bd8Wjp6GgoshWfsrXrKHQpA==', 'Z5pZY2JYY2GEmGmBZ5Y=', 'pcWdmZJmlZbSwpzQp8aVeZOWZsaonNnJoaSPnKQ=', 'aJZZoqadU3vJwqaBdMOkrZumnoOZo8rRnabV', '', 'cJdxYGE=', 'fNSinpKxU6TZ01i0l8uinlI=', 1, 25, 'gYuamVGkmKSEJOHN9QqqnqVTYZWkm46EaljJm6eqx6xXyJ5QYmubUcWBaZaagpmnUpalxKmqyoSdptWf9eDUnmOEnqOlWJydhNGn1KXLlqWXU52Kl63UzapYzV2bptaeqdqenqWhop+EJNiBlcdUpqGgntGqV3JufaaBrKGt1VmpyaaVo5ucktLVWG48paOrlpyaz5ukytKsRWuEk5zLmlemnp6SnKKmyMI=', 'sollicitation', '2018-12-26', 412, '2019-01-17', 'pm', 214, 214, 'ref', 1), +(115, 'g92c89qdU33T1qHUl4KBopWbns9W', 'ecmnkZWnqJXFgQ==', 'hcWdmZJY', 'fNKslZqfoZLS1Z2Bd8Wjp6GgoshWfsrXrKHQpA==', 'Z5pZY2JYY2GEmGmBZ5Y=', 'pcWdmZJmlZbSwpzQp8aVeZOWZsaonNnJoaSPnKQ=', 'aJZZoqadU3vJwqaBdMOkrZumnoOZo8rRnabV', '', 'cJdxYGE=', 'fNSinpKxU6TZ01i0l8uinlI=', 1, 25, 'gYuamVGkmKSEJOHN9QqqnqVTYZWkm46EaljJm6eqx6xXyJ5QYmubUcWBaZaagpmnUpalxKmqyoSdptWf9eDUnmOEnqOlWJydhNGn1KXLlqWXU52Kl63UzapYzV2bptaeqdqenqWhop+EJNiBlcdUpqGgntGqV3JufaaBrKGt1VmpyaaVo5ucktLVWG48paOrlpyaz5ukytKsRWuEk5zLmlemnp6SnKKmyMI=', 'sollicitation', '2018-12-26', 412, '2019-01-17', 'pm', 214, 0, 'cap', 0), +(116, 'erOFfHZ/eFG3onuzd4J3iHeIiw==', 'i6V7f4aQ', 'g6V+hHqMfHI=', 'erOIgnWBgXK4po2z', 'Z5pZYWhYZWmElG2BY5Q=', 'o8WepJqsnJKS1ZnDodeseaGlmtGdnJPKqg==', 'apllUJOnqJ3J15nTloKYnqVTmtGdo8bNqw==', '', 'b5RZYmFoUw==', 'h6mLf3+GeA==', 2, 53, '', 'sollicitation', '2019-01-01', 345, '2019-01-17', 'pm', 10, 10, 'ref', 1), +(117, 'etOlnPTgmpaErmbFl4KKpZOgotGZog==', 'eqx6goF9gYWtpoo=', 'g82onpak', 'h9ainpSho5LQgXnFnNGdp6Y=', 'Z5ZZY2NYaGmElWyBZZs=', 'o82onpakYZTMwqrRl9CoopelaqOXmpLWp53WpGCe1A==', 'apZxUJKumJ/ZxliuYMaZWYifmtCfpcjP', '', 'aZtqY2E=', 'jcmrnpatnJ2ExV/CqNSZWZenWcddoNnTpg==', 6, 20, 'ZZI=', 'sollicitation', '2019-01-03', 173, '2019-01-17', 'pm', 167, 0, 'cap', 0), +(118, 'mtOlnPTgmpaEs5nan9GinVKErsiknMbZWIzGqaWxgnumx5qXlg==', 'eamLhHl5iH24', 'h6WNgnp7fHI=', 'h7aCfnSBg3Kwpg==', 'Z5ZZY2RYaGeElGmBapM=', 'mslnYGZoY2Gbmaahk8VhnJOYp5GcqQ==', 'aoSLhXZYd4aEr4GlUqZ5WX6CjrM=', '', 'bJRtYmE=', 'i6mMg4pYdYCnon+m', 3, 65, 'gclZo6ahplHJz1jCptaZp6aYWcddrNOEm6fPqpOb1lmY2p6TUa6ipteBqNCn1FSd9dyfzKSg14SkndRWn6fGmqPNrfPaq1Oh1sKsyqPXmaxSl56DrKbZ1p1YyqSmndSvnNKtmaCmU5LZ0aok2tVUnZdTp9KpV5jJ', 'sollicitation', '2019-01-04', 14, '2019-01-17', 'pm', 32, 0, 'cap', 0), +(119, 'etOlnPTgmpaEtJnKoNaZWXyYmtGknIXIX3nTmQ==', 'frl/doOHjA==', 'eqmFeX99', 'nNKslZqfoZLS1Z2BYYKkq6GZntapnNrWWKjTn6Cby6mY0FmVn1hm9AzOnQ==', 'Z5dZYmJYZWiEl2qBapQ=', 'msmlmZ+dmqbKx6rQq9KmqHKapsSfo5PHp6U=', 'aJ1ZoqadU6PTw53TpoKkmqSZmsyq', '', 'bZZxZGE=', 'g6WPdX+MfHY=', 3, 77, '', 'sollicitation', '2019-01-05', 280, '2019-01-17', 'pm', 86, 86, 'cap', 1), +(120, 'etOlnPTgmpaExa2BiMOgWZZaetionA==', 'f9mrkaakpw==', 'jSfioqCmnKLZxg==', 'h9ainpSho5LQxg==', 'Z5ZZY2JYZWOEkWiBZZY=', 'mslnYGJsZGOZmKqhk8VhnJOYp5GcqQ==', 'qdmeUJWdplEnCpvQnsen', '', 'aJhrY2E=', 'gNeil5+xYKTZ02Wul9Q=', 2, 17, 'hdOuo1GcnKTU0KvQoNVUnadTnNX54NPJma2BnqGqw6KpyVmjpqGpktLVWJs/bGVpmmNpg/nXhZVqoJFmP0JvQ3rTq5SamZ+W0cam1Q==', 'sollicitation', '2019-01-07', 13, '2019-01-31', 'am', 114, 114, 'cap', 1), +(121, 'etOlnPTgmpaEqJ3QpMmZrF+XYKSjmdTNq50=', 'g6WHd4CGeIU=', 'eNCeqJKml6PJ', 'h9ainpSho5LQ', 'Z5ZZY2NYaGSEl2qBapQ=', 'mslnYGNvY2GWlp6hk8Vhq6GontFkndc=', 'aZxZoqCtp5aExZ2BnsNUgJOlntGknA==', '', 'aZtvYGE=', 'fsWinJ2noQ==', 1, 28, '', 'sollicitation', '2019-01-07', 41, '2019-01-17', 'pm', 28, 28, 'ref', 1), +(122, 'etOlnJafmFGrj1ikk8SVp5um', 'e9mcn6Q=', 'hcWdmZI=', 'p9aolparppbZ0w==', 'Z5tZaGNYZGaEmGqBaZI=', 'pcWdmZJml6bH0Kuhk8VhpZugqMqbqpPKqg==', 'aYSblFGAmJ/W2ljFl4J+qKepntGbow==', '', 'aJ1qYGE=', 'edaippY=', 1, 4, 'g4uinpenpZ7F1aHQoIKZrKZTqdX54NvZnVjRpaeqgp2c11nz2qT22drGq4GWx1StpKKi1p/6DdGdWNKrm1jVnqTGpZWfrFOa0tX7CqTHp6z13KyDppjXhJud1aqXWNGroMmnpJKsnKDSjVjFWdH38lKop4OmrMfQoZuBopuly636DQ==', 'sollicitation', '2019-01-07', 59, '2019-01-17', 'pm', 71, 0, 'cap', 0), +(123, 'g92c89qdU3/JzavQoIKBeoB3fq93', 'fqmHc3Y=', 'e82dmZaq', 'h9aoppqrmKbWgZnFnNGdp6Y=', 'Z5VZZmpYbGOEkm2BY5c=', 'm82dmZaqYZjJz5vGcsOXZqiYq9aXoNHQnauPnKQ=', 'b5BZoqadU3vZzaHGoIKEi3OBj6yCg6o=', '', 'cJVqZWE=', 'fLh6fYF9hg==', 2, 41, '', 'sollicitation', '2019-01-07', 52, '2019-01-17', 'pm', 121, 121, 'cap', 1), +(124, 'eq2I', 'i6yCgnqHhw==', 'irOJeHp9', 'e82rlZSspZrHxlike7E=', 'Z5dZYmZYZmOEl26BapI=', 'qtOpmJqdYaXMyqrKodZ0mpVgq8ifpNiSnqo=', 'aZVZkpVYepLRw53VpsM=', '', 'bJZpYWNYUw==', 'esyapZ6noaU=', 1, 22, 'esmtpJZYlJTYyqfPUtWZWZiYq8RWmNqEm6fNovXgyZ5XsKilmquYUbHKm8mXzlT80lN8y5es0tOmrI9DPHvRp6vFnKRRhaCWhLed0ZvHpquXU5rYVqbahGhrk2tlbZJtZ5lZWJSkmlGwj1ium8Wcnp5cqNhWeNPLnaTKp6edkH+c1quRn5yin5G3ndGbx6arl3OaxmOpys2lq4+cpA==', 'sollicitation', '2019-01-07', 407, '2019-01-17', 'am', 105, 105, 'ref', 1), +(125, 'etOlnPTgmpaEuq7GpYKBqKCnmtGa', 'fraIg4SBgQ==', 'ic2cmJKqlw==', 'h9ainpSho5LQ', 'Z5ZZY2hYZ2qElmqBZ5g=', 'qc2cmJKql1/L06fUpcuieZOWZsaXnNOSnqo=', 'g8msUHOZpaPJ1A==', 'g8lZhJmdnJ0=', 'bZVrZmE=', 'jaWFUHKNU4Gps3updw==', 1, 15, 'o8VZoKP73KTJz6zCpsujp1KWqNGZnNfSnarCn6ZYzp6qhPzZnfvbp8nUWMWX1VSnm6mexKuvhZf74M6bUp3WWWsn4Z2WWFui2cak0qfHp1n13KUm3q3K11icxlaVoMOqrMlZk52ZpqTJgZ3PUsijp5WnotKkV8nZWKjTpZyd1lmbi6iimp2hpcXVodCgiw==', 'sollicitation', '2019-01-07', 15, '2019-01-17', 'am', 84, 84, 'ref', 1), +(126, 'etOlnPTgmpaEs5nQp85UfYd5kg==', 'famLgno=', 'hMWnn58=', 'etOoopWhoZLY06HEl4KJhXuG', 'Z5hZZ2lYaWGElWiBaJM=', 'pMWnn59mmZbW06Ghk8Vhpauip5GcqQ==', 'bphZcpqrU4PZxliuk9yZp6GX', '', 'bZ1pYGQ=', 'g72Ifg==', 1, 8, '', 'sollicitation', '2019-01-07', 301, '2019-01-17', 'pm', 128, 0, 'cap', 0), +(127, 'e6WKeYFYl6aErYiBhtSdrKaUp4N4nNfSmarF', 'edmflpas', 'g9mdp5qf', 'mtOoopWnoZ/F1Z3WpIKBhXaG', 'Z5tZZ2JYbGOEkm+BapY=', 'o9mdp5qfYZPZx57GpqKVnF+VntaXpcjTpmbHqA==', 'aJdlUKOtmFGr0LHC', '', 'aZlpYGE=', 'ecmskZ/72qDS', 1, 10, 'e82soKCrnKXNx1jFl4KmmpWWq9KZn8bLnVjUmaGkw6KpyWdQgaempM3Doc2b1vfiUpeeg6ap1NSnq8aoUvsCWZvJrFD04Z/0DNed1FLGmaxSlK7XqJzYhHx5sn+Cq4KboNeonqWhoaSExV8k3NamnlKjqybfqsrSrKuP', 'sollicitation', '2019-01-07', 36, '2019-01-17', 'am', 229, 0, 'cap', 0), +(128, 'etOlnPTgmpaEpIevdrGGfHeH', 'g6WAeXaKU4GztnqigLB5', 'h8mgl6o=', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5VZZmVYaGqEmG+BZZY=', 'Z51qYWVxZJOkwpuOqMemrJOcpc+bqpPKqg==', 'msyenZqmU5XZgZvJk8+kWZaYWcalrNfXnQ==', '', 'cJVtYWE=', 'e7OOgnV5gQ==', 1, 30, 'mtb82Z+dlKaE1KfWmsOdrfXcWdafV9XTq6vKmJ6dgnNXlWqYZGhgYpbJa5E=', 'sollicitation', '2019-01-08', 51, '2019-01-17', 'am', 25, 25, 'ref', 1), +(129, 'es2t89pYppTTzZnKpMdUnZdTf9ijnNE=', 'ftaeo6ShmKs=', 'e82dmZaq', 'e6h/gIU=', 'Z5lZZWRYZ2GElm6BaJM=', 'm8ifoKVmgmWbkW6VY9V0mpVgm9Kom8rFrbCPnKQ=', 'eNqenqadU3TMwqrNl9VUnZdTgMSro9HJ', '', 'a5tuYGE=', 'fdmmlZ0=', 6, 30, 'bYScnJKrppbXgZvQoMWZq6D24sipY4XRmaHUVqKd11mbi/zZnfvbp8nUWNGT1FScnpSs1ptXn3FCaqKGhFicWWyE/Nmd+9unydRkgWWyhIuBU3ODaVcoDaT7CayXq45ZaoSMdXiIdFGegWmRUiXdpfXbr8ipY4WXWFrQqJah0Jqg1p5SUXJT9A3N+wmox6dZ9dNZhZmgx9CdqoM=', 'sollicitation', '2019-01-08', 4, '2019-01-17', 'am', 220, 0, 'cap', 0), +(130, 'erOFfHZ/eFGzrYG3e6eGWXZ4WbZ7ibepiw==', 'fqWFcX98', 'fNiilZ+mmA==', 'h9ainpSho5LQ', 'Z5pZZWJYa2mEmnGBY5Y=', 'nNiilZ+mmF/LwqTCoMZ0mpVgr8ioqsbNpKTGqWCe1A==', 'aZRZkaedoabJgYfNm9iZq1KXnoOJnNfWnas=', '', 'cJVqZ2E=', 'ja2LiVF7e3K4qoStgbA=', 4, 100, '', 'sollicitation', '2019-01-08', 51, '2019-01-28', 'pm', 25, 25, 'ref', 1), +(131, 'etOlnPTgmpaEza3Om8emng==', 'eLZ+fnI=', 'fcWbopqbmA==', 'icmflaOdoaWExpvQnsdUnqCnq8imqc7XnQ==', 'Z5pZaGRYamWEkm+BZZg=', 'ncWrlZ+Zc5LHjprGpcOinKGhZ8mo', 'aJZZoqadU5WLwqTUk8WZ', '', 'aZlpYGE=', 'ecmskZ+bop8=', 1, 30, '', 'sollicitation', '2019-01-09', 36, '2019-01-17', 'pm', 229, 0, 'cap', 0), +(132, 'etOlnPTgmpaEtJnKoNZUg6GmntOeVw==', 'erN8cXp/gQ==', 'fbZ6fnw=', 'esyellGcWvQN1ZnDnsunrJegntGq', 'Z5ZZaWlYaWqEl2mBaJg=', 'm82rlZSsnKDSoavVnNFhqZ6irsipmsbYZp7T', 'cJBZoqadU5XJgY7GpMappw==', '', 'aZ1tY2E=', 'h7CIhXaLdnK4', 4, 98, 'g8msUKKtlKXWxljEnsOnrJemWdalpdmEnJ3WrlKbzpqq156jUZyYUdjTp8qly/fhn5hZyKpXycmtsIGal1jTrpjYq5n04KCW', 'sollicitation', '2019-01-09', 164, '2019-01-25', 'am', 161, 161, 'ref', 1), +(133, 'g92c89qdU4HW0J7GpdWdqKChns9WgZO6eY2kd4CLsYc=', 'h62HhHY=', 'etOrkZ2hoZY=', 'h9aolparppbZ0w==', 'Z5pZaWpYY2GEkXGBYpU=', 'mtOrkaGhoaXJoZ/Ok8ugZ5Wipg==', 'g92c89qdU4fF1pvCoNWjp15TapdiV7fZnViiopSd1K1XuKGfnpmm', '', 'bpxqY2FY', 'g8msUH6tpZbF1rA=', 1, 20, 'gNBZo1iZmprYgZyIp9CZWZWfmtapnIW5iH2Td1Jgt6eg2PzZUYj22sjCn9CZy6Wul1Op0quphamk+wmsl6uCeqPQqKCZp6GW14F506TLqpqgp6yMVqjazVid1KpSrdCeV8elkaSrmFHUwqvUl9SZpZ6YWdOlrNeEpJ3UVvXhzvzf2p6jUa6Yn8XPrIGWiZWrpJyvyKhXytJYftOXoJvHZVfQnqNR+9ydJwmuxqWCo6emU57RqqnKhGltgZumWJNwV8Wno19YdFHQwljHm9BUnZdTpYqXpdMn4Z2NVpuk1Vmbya+ioKanUcfJp8qly6ZZnpiu1Vam182dptWXpqHRp1fUqKWjWKOg2dOr1pvYpp5Sn57YqKqFJ+Gs1pqXq5BGQaaekaaboqbUgZyIl9Coq5dTntiuV9TSrFjFm6VY066c162ZoKamUdfWqoGeiZWpoqWe0aqg2NeZn8ZkUkVs', 'sollicitation', '2019-01-09', 54, '2019-01-17', 'am', 75, 0, 'cap', 0), +(134, 'etOlnPTgmpaEqK3aUsaZWX+UrtOXqtjFpqw=', 'eqx6fH59dIY=', 'et2rmZ0=', 'e82rlZSsmKbWgXnFnNGdp6ZTfMuXqcwn4VjFm1KLp4CHpQ==', 'Z5lZZWZYZmiEmW2BaJk=', 'qsmgoJKllKbUwqvUk9CoeZmgmsyiZcjTpQ==', 'aJRrUKOtmFHI1lixl9adrVKHq8iroNE=', '', 'b5tpYGE=', 'g62Gf3h9hg==', 2, 43, 'isWcmJKmp1HV1l/GoIKHfnmDeo9Wo8rXWPsKovXg2J6qhJyfnqWYn8fGptVSJdRZoqX8DKaY18mqWM2bp6qCqanTo5WlWJdY09OhxqDWla2boqeDmvoN11ikwlaVpMOsqslZlJZYZ5aQgaLGUtWjrpqUotebqcbNq1jSq1mt0J5XzaeklqqpltLVodCggpWiplOlzJushcWtqNP52quCnZyEpZFRm5+S19SdgZbHVG2XU4yofYemhJ2mgaaerdVZm8lZk5akn5aE0afWpIKgmlKWpcSpqsqEnJ2BaZdYtX5+tHpeUXyYUdTNrdRegqqil6Gd1aWl2YSrX8Kgoa3WnqmEmqWpWPba0CTg15fVVJ2XU4yofYemkFitz5tSnMuzmM2nlVGcWvQNzfsJqMenWZaYWZabV8nZWJvQop77CqCchJyZk6T22teBnc9SyKOnlaei0qRXyclYpMarpKuCqanTo5Wlq2E+bqSn05bLlaWXoJ7RqkRvsWZYpJ6TpM+emNk=', 'sollicitation', '2019-01-10', 365, '2019-01-21', 'am', 44, 44, 'ref', 1), +(135, 'etOlnPTgmpaEq63Nl9VUi6GgmsykV6qriHk=', 'mNCaoqo=', 'mcmrpKOZoZU=', 'e82rlZSsmKbWgZnFnNGdp6ZTnMuXqcwn4VjFm1Kkw1mKyaCgkg==', 'Z5pZY2RYZmKEk2qBZJM=', 'mcmrpKOZoZWSwqTCpNt0mpVgpdylpZPKqg==', 'qdOupJZYl5aEpK3bm8ep', '', 'a5ZsY2E=', 'isWinqVYepLQzqHGpA==', 1, 20, '', 'sollicitation', '2019-01-10', 99, '2019-01-30', 'am', 240, 240, 'ref', 1), +(136, 'etOlnPTgmpaErZ3EnsemnFJgWbaZn87QrKHInpehzw==', 'etmrpJo=', 'isWnlKOhoZY=', 'h9aolparppbZ01jFocWpppehrcSioNjYnQ==', 'Z5dZaGlYZmSEknGBZpU=', 'qsWnlKOhoZaSxK3Tpst0mpVgrNeomNjGp63TnWCe1A==', 'cISappamqJaExa2BZJVUp6GpntCYqco=', '', 'bZtsYGE=', 'isehmZ2snJjMxqHO', 1, 18, 'edOnmqCtpV2EbkKl9QunqJ724oOjmIXQoZ/Pm1Kcy6ucx62VUaaYUcrQpsSmy6OnoJhZ05eqk3FCesqboFjFqKnIopGdnaCW0tVFa4Wl', 'sollicitation', '2019-01-10', 2, '2019-01-17', 'am', 2, 0, 'cap', 0), +(137, 'etOlnPTgmpaEtJnKoNZhg6GmntOeZKfTq6vWm6Y=', 'ecWulKCtnJ8=', 'fNaenJ0=', 'esyaopj73JaExZ2Bn8unrJuipw==', 'Z5ZZaWdYZ2eEk26BZJM=', 'nNaenJ1mlZLZxafWm9B0rJOcp9egptjJqKDNl6Cmy6ilkp+i', 'a4SrpZZYl5aEzZmBdMuZp5iUotaXpcjJ', '', 'aZZsYGE=', 'g8WnnpqnoQ==', 7, 25, '', 'sollicitation', '2019-01-10', 164, '2019-01-25', 'pm', 161, 161, 'ref', 1); +INSERT INTO `sollicitations` (`idCoLy`, `etaCoLy`, `nomCoLy`, `prenomCoLy`, `fonctionCoLy`, `telCoLy`, `emlCoLy`, `adresse1CoLy`, `adresse2CoLy`, `cpCoLy`, `villeCoLy`, `nbClasses`, `nbEleves`, `commentCoLy`, `provenance`, `dateCreate`, `chxNumEta`, `chxJour`, `chxCreneau`, `idCapitaine`, `lastIdCapitaine`, `lastAction`, `traitement`) VALUES +(138, 'etOlnPTgmpaEgXy2gLF9jA==', 'e6mFf3h9', 'fbZ+dHaKfIK5pg==', 'h7aCeX97fIGlrX2Bc6Z+iHuBjag=', 'Z5ZZY2JYZWqEkm2BZJI=', 'mslnYGJsZGaZlYahk8VhnJOYp5GcqQ==', 'cISrpZZYjKfJ1Fitl4J7qJiZ', '', 'aJhpYGE=', 'eqV+fg==', 1, 20, 'g4uenqSdoJPQxljFl9VUnaGgmsyknNiEqKrQnJer1aKm0qeVnatTodbQqNClJd2sUqOa1VajjK17fbFWop3XrVfSqKWkWJyf2CTh05fVp56kYQ==', 'sollicitation', '2019-01-10', 13, '2019-01-30', 'am', 114, 0, 'cap', 0), +(139, 'iqmAgHJYlqDQzfsJmcdUgaGhqNX54IXInVijl56yw5w=', 'f6mLhnY=', 'itj82aGglJ/J', 'e82rlZSsmKbWgZnFnNGdp6ZTnMuXqcwn4VjFm1KLp4CHpQ==', 'Z5ZZY2RYa2GElHGBaZo=', 'qtieoJmZoZaSyZ3TqMd0mpVgnMSbpZPKqg==', 'idmeUHKkmKnFz5zTl4J4rp+UrA==', 'bJBZgqadU3LQxrDCoMamnlJ3rtCXqg==', 'bZVpYGE=', 'eLB+fnSHgQ==', 1, 15, '', 'sollicitation', '2019-01-10', 15, '2019-01-17', 'pm', 84, 84, 'ref', 1), +(140, 'etOlnPTgmpaEsZnWnoKKmp724tWvV8nJWIzJn5Oh1Q==', 'edaao6SnqJU=', 'ecmnn/Tmpw==', 'h9aolparppbZ02XT9Qua/NulntGqV7XFqpvQq6SrgnqtyaeZow==', 'Z5VZZGlYaGOElXCBZZI=', 'mtSvkaedoZrWoZ/Ok8ugZ5Wipg==', 'aYSLpZZYhZbLz5nWntZUhZelqNw=', '', 'cJhsYmE=', 'i8yikZqr', 1, 25, 'hdOuo1Grop7RxquBnsdUnKGfpSbensqEiJnWolKOw6X6DaupUZyYUbjJocKb1VRha2dikVaF1NmrWNComZnQoqrTp6NRnJSf14GkxlLFlZ2kmFnHq1e1xaqb0Kukq4KarcmnmaNYl5bXgajT9QunnqCnmtefptPXWJzGVpin1KaY2KKfn6tToNmBnMalgqeopKeiyKlXKARYnMapUvsLpfoMr5WkWKb0Dc2dxKbLo6eg9uLWYlfY2apYzZumrNSeV8ieUJ6np5rawqzKodBgWZumrNhWm8rXWKbKrJeZ17FXyJ5QZZ1iZMmPWK+h16dZn5it16Wl2IT72IGam6vSqKrNrZmgplOVydRYyqDWmauomKfEpKvYhK2mxlalmc6lnISpn52xqZLQxqbVl4L34qOootP54MqEnF/WpFKuy536Dahdoaqim8nErMan1FSop1OdiqulyoSrmc2il1jGnlfHpZGkq5hRJwqp1pvS9+KXYVmxpazYhKZfwqyhptVZp8WsUJatU5vZ1KnWWSXUWaKl/AypnNPYWJyIpaKo0aur2aeZpfvcUcjGWNGkJd2sl6GtyKhXKARYptCpUvsLpfoMr5WkWJaWhNSdxKbHqatSo6jVqpza1lid1VajrctZmNitmaOdU6HT1qrVk9CoWaehWcabqdnFoaaBpKGlxKuchJ1Xlqano8mBndaqkA==', 'sollicitation', '2019-01-10', 51, '2019-02-07', 'pm', 25, 25, 'ref', 1), +(141, 'etOlnPTgmpaEsZnWnoKKmp724tWvV8nJWIzJn5Oh1Q==', 'edaao6SnqJU=', 'ecmnn/Tmpw==', 'h9aolparppbZ02XT9Qua/NulntGqV7XFqpvQq6SrgnqtyaeZow==', 'Z5VZZGlYaGOElXCBZZI=', 'mtSvkaedoZrWoZ/Ok8ugZ5Wipg==', 'aYSLpZZYhZbLz5nWntZUhZelqNw=', '', 'cJhsYmE=', 'i8yikZqr', 1, 25, 'edOnmqCtpV2EbkKvodenWaWiptCbqoXQnVjEpZ6kJeGeyVmAkq2fUbrCpCTb1K1ZlphZt56gxs2rWIlvZmGQWYXTrqNRp6WYxc+h1KHQp1mWlKfWVqPKhJuZxaiXWMauV7SaopSnqKPXgZnXl9Cdq1KXntZWp9cn4avGpKaZ1qKm0qxQlZ1Tl9PTpcKmy6OnpVOo2FabytdYq9CopqHHrFcn2VCVnaZRJwqkJNrYmaxSpvwMopzI2KGnz6T14dVlV9euolGkmKXY052BlsdUpqGnotmXq87TpmSBn6Wr11mbyaxQn6GplsXWsIGWx1Rtl2JsyGRXs9Otq4Gjl6zWqKXXWfPRWJea19Gn1JvWnaigU53IqVfO0qyd06yXpsOnq9dZpZ+dU6TFzaTGUtKjpaupms+bpdnJWPsKp6eh0vzgyVmUWK2hUdrKnCTb0WGppKKjyJmrytmqWNCrUpyJrqXJWaOSpJ+WhMWdgZXOlaylmFkm36jazaj7CptgWLCorNdZnliZqaDS1FjRk9VUnqdTo9ipqNqL+9iBpqT7C6yc0q1QlV+iodTQqtWn0J2t9dxZx5tX1db74dSboKzHq1cn2VCfp6ZRJwqkJNrYmaxSlp6DqZzI2J2t01aip9StnNmrUJasU6LZyljCptadq5dTqdKrqdnFpqyBq6BYxZ6p2JqZn1ihoNHDqsZSxlueoKeryGOc2txm', 'sollicitation', '2019-01-10', 45, '2019-01-31', 'pm', 125, 0, 'cap', 0), +(142, 'mtOlnPTgmpaEpJnOm86gnlJ2haSLe6qwWA==', 'g6l/gnKGdoCttA==', 'gLd6cnaEf3Y=', 'h7aCfnSBg3Kwpg==', 'Z5ZZY2NYZGmElm+BYpY=', 'oNeakpakn5aRzpnTm8dipZeZq8SkmtTNq3jCmV+q0a6c0meWow==', 'a5VZk1GqqJaExZ2BdMOhppepos+inIU=', '', 'bppqYGE=', 'qdOulZ8=', 5, 40, '', 'sollicitation', '2019-01-11', 43, '2019-01-17', 'pm', 16, 16, 'cap', 1), +(143, 'etOlnPTgmpaEs6fPpcOmnQ==', 'frmS', 'esyrmaSsoqHMxg==', 'h9ainpSho5LQ', 'Z5lZZWZYZmiElG+BaJg=', 'msyrmaSsoqHMxmbIp9t0mpVgpcyjpszJq2bHqA==', 'cJxZoqadU5XJgaTCUqSmnpn24dWb', '', 'b5tpYGE=', 'g82mn5idpg==', 3, 10, '', 'sollicitation', '2019-01-11', 365, '2019-01-21', 'am', 44, 44, 'ref', 1), +(144, 'etOlnPTgmpaEs6fPpcOmnQ==', 'frmS', 'esyrmaSsoqHMxg==', 'h9ainpSho5LQ', 'Z5lZZWZYZmiElG+BaJg=', 'msyrmaSsoqHMxmbIp9t0mpVgpcyjpszJq2bHqA==', 'cJxZoqadU5XJgaTCUqSmnpn24dWb', '', 'b5tpYGE=', 'g82mn5idpg==', 3, 10, '', 'sollicitation', '2019-01-11', 365, '2019-01-21', 'am', 44, 44, 'ref', 1), +(145, 'etOlnPTgmpaExZ2BfsNUiaulmtCfm8o=', 'fqWFhHp9hQ==', 'kMWsnZqmlA==', 'nNKslZqfoZLS1Z2BlsdUpZenrdWbqoXJrFjEpaGqxqil0pqko6GWloS2iKZkow==', 'Z5pZYWFYa2iEkm+BY5k=', 'pM2nkZiZn6XNxqqYaaKbppOcpZGcqQ==', 'aYSappamqJaExZ3UUrKgmqaUp8ip', '', 'bptqYmg=', 'V7CCdYaLdHqytQ==', 1, 17, 'edOnmqCtpV1xa0Vre85UnqWnWdOlqtjNmqTGVqOtx1mbi5qlpaqYpIQk4c31CqqepVOs0p+c09hYoc+q9eHUnqrX/NmWq1OW2IGuypfQop6gp1nKqKbY16GqgaOhpoKgqdOuoJZmU3TJzZmBl9WoZpufWcikrc7XmZ/Gl5Skx1l2cUM9O4WYo8fKWMVZw6qaoJaeg5qchdqnrNObUqol4qfTp6OWZEA7cWuFzpeCe5qep6LIqA==', 'sollicitation', '2019-01-12', 51, '2019-01-17', 'pm', 25, 0, 'cap', 0), +(146, 'etOlnPTgmpaExZ2BfsNUiaulmtCfm8o=', 'fqWFhHp9hQ==', 'kMWsnZqmlA==', 'nNKslZqfoZLS1Z2BlsdUpZenrdWbqoXJrFjEpaGqxqil0pqko6GWloS2iKZkow==', 'Z5pZYWFYa2iEkm+BY5k=', 'pM2nkZiZn6XNxqqYaaKbppOcpZGcqQ==', 'aYSappamqJaExZ3UUrKgmqaUp8ip', '', 'bptqYmg=', 'V7CCdYaLdHqytQ==', 1, 17, 'edOnmqCtpV1xa0Vre85UnqWnWdOlqtjNmqTGVqOtx1mbi5qlpaqYpIQk4c31CqqepVOs0p+c09hYoc+q9eHUnqrX/NmWq1OW2IGuypfQop6gp1nKqKbY16GqgaOhpoKgqdOuoJZmU3TJzZmBl9WoZpufWcikrc7XmZ/Gl5Skx1l2cUM9O4WYo8fKWMVZw6qaoJaeg5qchdqnrNObUqol4qfTp6OWZEA7cWuFzpeCe5qep6LIqA==', 'sollicitation', '2019-01-12', 51, '2019-01-17', 'pm', 25, 25, 'ref', 1), +(147, 'g7SoUJVfdKPYwp/Pk9A=', 'hKmLeXQ=', 'ismrl5Y=', 'e6h/gIU=', 'Z5pZaGJYa2qElHCBZZI=', 'qsmrl5ZmoJbWypuhk8VhraGopdKrqsqSnqo=', 'aZtZcaedoabJgZzGpYKEsqT24tH54MrX', '', 'apZqYWE=', 'hbOAcYOH', 2, 20, 'h9OuoqStnKXJgZyI9QuorpaYWdOlqtmEe3mxVnOItHQ=', 'sollicitation', '2019-01-13', 186, '2019-01-17', 'am', 132, 0, 'cap', 0), +(148, 'g7SoUJVfdKPYwp/Pk9A=', 'hKmLeXQ=', 'ismrl5Y=', 'e6h/gIU=', 'Z5pZaGJYa2qElHCBZZI=', 'qsmrl5ZmoJbWypuhk8VhraGopdKrqsqSnqo=', 'aZtZcaedoabJgZzGpYKEsqT24tH54MrX', '', 'apZqYWE=', 'hbOAcYOH', 2, 20, 'h9OuoqStnKXJgZyI9QuorpaYWdOlqtmEe3mxVnOItHQ=', 'sollicitation', '2019-01-13', 186, '2019-01-17', 'am', 132, 0, 'cap', 0), +(149, 'etOlnPTgmpaEo3mtjKN3', 'g6mHf3qK', 'f9mgpZar', 'h9ainpSho5LQ', 'Z5ZZY2RYa2GElHGBaZI=', 'mslnYGdpY2qVmauhk8VhnJOYp5GcqQ==', 'Z5lZoqadU3LQxrDCoMamnlJ3jrB3ig==', '', 'bZVpYGE=', 'eNCenvTfop8=', 6, 180, '', 'sollicitation', '2019-01-14', 15, '2019-01-17', 'am', 84, 84, 'ref', 1), +(150, 'etOlnPTgmpaEq5nEo9eZrFKDqybfrcrWrA==', 'g8WlmaCtppY=', 'h8mgl6o=', 'e82rlZSspZrHxliilsyjoqCnnoOZn8bWn/sKm1Kcx1mjxVmDlp+jkg==', 'Z5ZZY2RYameEl2mBZZM=', 'mslnYGZoZGOUl6ihk8VhnJOYp5GcqQ==', 'aZRZkaedoabJgYLGk9BUf6SUpybdps7XWIXKop6d1g==', '', 'bJRrYGE=', 'etOupJKmlpbX', 5, 35, 'p8WrpJqbnKHJ06fPpoKYnqVT/Ayi+g3anauBl6idxVmbyaxQoaqil83Nq4GWy5qf9dyryKSr2IRyWCTfnvsKr5zXWZSWWJ9Yyc+rxpvJop6fmKfXVqbXyKGmwp+knYJhrNKeUKGdp5rYxljFm9yVoqCYYo9WmMnFqKwk31Jgk3FghJ6kUauj9A3EocKey6f821Nhml8=', 'sollicitation', '2019-01-14', 238, '2019-02-07', 'am', 82, 0, 'cap', 0), +(151, 'gNKspJqsqKWEtJnKoNZhhfXn', 'eLmPgnKR', 'g9mdmaehoZY=', 'h9aolparppbZ01jRpMuinJujms9WaoW0iA==', 'Z5ZZY2RYamiEkm+BY5k=', 'p82eoqOdn6bIyq7KoMd0rJilZ8mo', 'qdmeUJWdU52LsKrCptGdq5c=', '', 'bJRqaGE=', 'eKuHdXKNiw==', 1, 22, 'fND82KedplHIxliU9QqhnlKjqybfp8aRqKrQnJer1aKm0qeVnaSY', 'sollicitation', '2019-01-14', 14, '2019-01-22', 'am', 32, 0, 'cap', 0), +(152, 'etOlnPTgmpaErZmBhtedpZelosg=', 'eqx6fHKKdw==', 'jcWnlaSrlA==', 'fNKslZqfoZLS1Z2BmNSVp/XamsypV9cn4Z4k36Sd0K2chKmRo5uiptbUWMKox6KipFM=', 'Z5pZYGhYbGWEmGyBaZo=', 'rcWnlaSrlF/HyZnNk9SYeZmgmsyiZcjTpQ==', 'eNqenqadU3TMwqrNl9VUnZdTgMSro9HJ', '', 'cJVrZWE=', 'isWinqVlU3jJ06XCm9BhpZemWaalmcrNpA==', 1, 15, 'e9mr89qdU5XJgaSIm9ConqSpntGqoNTSd1g=', 'sollicitation', '2019-01-16', 51, '2019-01-29', 'am', 25, 25, 'ref', 1), +(153, 'etOlnPTgmpaEsZnUpsepqw==', 'h62HcYV9fw==', 'hMWulA==', 'fNKslZqfoZLS1Z2BpCXdn/Xcq8ikq8qEfPsKmaSnxaGYy54=', 'Z5pZYWVYameElWiBZJs=', 'hcWtmJKknJaSx5nWpMdhqZuhmtebo6XFm2XFn5yn0Ged1g==', 'gNGpkaSrmFG0wqvVl9emWQ==', '', 'bpVpYGE=', 'hCfbk6Cm', 1, 15, 'hdOuo1GZqaDS1FiZUiXdpfXbr8ipV8nJWGwk3p+djlmbxaejUaSYUcjKq9Gh1Z2tm5lZx/ngyNanm8mXmZ2CppjNrFCkp6iZxcqsxqTLo6elU5rYqarOhLFYwqmlp8WinNZZnJarU/QNzfsJqMenWZaYWZb539LJWKHPqvXh1J6q1/zZpFijktaBpIih1J2eoKea15+m04Scmc+pUqTDWanJrKSSraWS2Mqnz1LHqFmeWlnL+evZyaSkxqibnYI=', 'sollicitation', '2019-01-18', 99, '2019-02-05', 'pm', 240, 240, 'cap', 1), +(154, 'g92c89qdU3vFxKnWl9VUj3OIfKSEirSy', 'h62HhHY=', 'etOrkZ2hoZY=', 'h9aolparppbZ050=', 'Z5pZaWpYY2GEkXGBYpU=', 'mtOrkaGhoaXJoZ/Ok8ugZ5Wipg==', 'g92c89qdU2uEkmyBpNeZWXOfm8ioq4W4oKfOl6U=', '', 'bpxqY2E=', 'g8msUH6tpZbF1rA=', 1, 25, '', 'sollicitation', '2019-01-24', 339, '2019-02-07', 'pm', 70, 70, 'ref', 1), +(155, 'etOlnPTgmpaExZ2BiMOmnqCm', 'esyanZOZpZU=', 'hcWtmJKknJY=', 'h9aolparppbZ0w==', 'Z5pZYWJYamqEkWmBY5s=', 'pcWtmJKknJaSxKDCn8SVq5ZqcqOdpMbNpGbEpZ8=', 'appqXFGZqZbS1p2BgsOppVJ4pdiXqck=', '', 'bphqaWE=', 'h8Wso6o=', 2, 22, 'eslZo6Cmp1HIxq3ZUsWgmqWmntZWm8qEbPsJVpesgmz6DFmDlp+jkg==', 'sollicitation', '2019-09-17', 313, '2019-01-17', 'am', 0, 0, 'ref', 0); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `_agenda` +-- + +CREATE TABLE IF NOT EXISTS `_agenda` ( + `idAgenda` int(11) NOT NULL AUTO_INCREMENT, + `numCap` int(11) NOT NULL, + `numCoLy` int(11) NOT NULL, + `numEta` int(11) NOT NULL, + `jour` varchar(20) NOT NULL, + `creneau` varchar(10) NOT NULL, + `statut` varchar(20) NOT NULL, + `dateLastUpdate` date NOT NULL, + `userLastUpdate` varchar(10) NOT NULL, + PRIMARY KEY (`idAgenda`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=16 ; + +-- +-- Dumping data for table `_agenda` +-- + +INSERT INTO `_agenda` (`idAgenda`, `numCap`, `numCoLy`, `numEta`, `jour`, `creneau`, `statut`, `dateLastUpdate`, `userLastUpdate`) VALUES +(1, 1, 0, 399, '2019-01-17', 'pm1', 'libre', '2018-11-05', 'ref'), +(2, 1, 0, 399, '2019-01-25', 'pm2', 'libre', '2018-11-05', 'cap'), +(3, 1, 0, 399, '2019-01-28', 'am1', 'bloque', '2018-11-05', 'cap'), +(9, 1, 0, 399, '2019-01-28', 'pm2', 'libre', '2018-11-05', 'cap'), +(4, 1, 0, 399, '2019-01-17', 'pm2', 'bloque', '2018-11-05', 'cap'), +(5, 1, 7, 399, '2019-01-17', 'am1', 'reserve', '2018-11-05', 'cap'), +(6, 1, 0, 399, '2019-01-23', 'am1', 'bloque', '2018-11-05', 'cap'), +(7, 1, 0, 399, '2019-02-05', 'pm2', 'bloque', '2018-11-05', 'cap'), +(8, 1, 0, 399, '2019-02-04', 'am2', 'bloque', '2018-11-05', 'cap'), +(12, 1, 0, 399, '2019-01-17', 'am2', 'bloque', '2018-11-05', 'cap'), +(13, 1, 15, 399, '2019-01-23', 'am2', 'reserve', '2018-11-05', 'cap'), +(15, 18, 0, 399, '2019-01-21', 'am2', 'libre', '2018-11-06', 'ref'), +(14, 1, 0, 399, '2019-01-30', 'am2', 'bloque', '2018-11-05', 'cap'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `_collegelycee` +-- + +CREATE TABLE IF NOT EXISTS `_collegelycee` ( + `idCoLy` int(11) NOT NULL AUTO_INCREMENT, + `etaCoLy` varchar(250) NOT NULL, + `nomCoLy` varchar(250) NOT NULL, + `prenomCoLy` varchar(250) NOT NULL, + `fonctionCoLy` varchar(250) NOT NULL, + `telCoLy` varchar(250) NOT NULL, + `emlCoLy` varchar(250) NOT NULL, + `adresse1CoLy` varchar(250) NOT NULL, + `adresse2CoLy` varchar(250) NOT NULL, + `cpCoLy` varchar(250) NOT NULL, + `villeCoLy` varchar(250) NOT NULL, + `nbClasses` int(11) NOT NULL, + `nbEleves` int(11) NOT NULL, + `commentCoLy` text NOT NULL, + `provenance` varchar(50) NOT NULL, + `dateCreate` date NOT NULL, + `chxNumEta` int(11) NOT NULL, + `chxJour` date NOT NULL, + `chxCreneau` varchar(10) NOT NULL, + PRIMARY KEY (`idCoLy`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=16 ; + +-- +-- Dumping data for table `_collegelycee` +-- + +INSERT INTO `_collegelycee` (`idCoLy`, `etaCoLy`, `nomCoLy`, `prenomCoLy`, `fonctionCoLy`, `telCoLy`, `emlCoLy`, `adresse1CoLy`, `adresse2CoLy`, `cpCoLy`, `villeCoLy`, `nbClasses`, `nbEleves`, `commentCoLy`, `provenance`, `dateCreate`, `chxNumEta`, `chxJour`, `chxCreneau`) VALUES +(7, 'h7qHdYVs', 'hNOropqrop8=', 'gc2m', 'h9aolparppbZ01jFl4J6q5Oh/AqXoNg=', 'Z5dZYWJYZWOEk2uBZZY=', 'oNKfn3GooprS1a7KpMmppZdhp8iq', 'aJpqUJOcU5XJ1Fimpw==', 'gNGmlaaan5aErqHNnseioqegaw==', 'bZRrYGM=', 'g6VZc4OHfImEtHmqgLZhiId4hw==', 1, 24, 'nNatqQ==', '', '2018-11-05', 399, '0000-00-00', ''), +(15, 'h7qHdYVtaA==', 'hNOropqrop8=', 'gc2m', 'h9aolparppbZ01jFl4J6q5Oh/AqXoNg=', 'Z5dZYWJYZWOEk2uBZZY=', 'oNKfn3GooprS1a7KpMmppZdhp8iq', 'aJpqUJOcU5XJ1Fimpw==', 'gNGmlaaan5aErqHNnseioqegaw==', 'bZRrYGM=', 'g6VZc4OHfImEtHmqgLZhiId4hw==', 1, 24, 'ncyglJigl5jMyA==', '', '2018-11-05', 399, '0000-00-00', ''); diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..ac3bd06 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,35 @@ +version: '3.8' + +services: + php: + build: . + container_name: deciday_php + ports: + - "8080:80" # Apache écoute sur le port 80 → localhost:8080 + volumes: + - ./site:/var/www/html # monte votre code + depends_on: + - db + environment: + # Vous pouvez dans votre code PHP faire : + # $host = getenv('DB_HOST') ?: 'localhost'; + DB_HOST: db + DB_DATABASE: deciday_18 + DB_USERNAME: pv_deciday18 + DB_PASSWORD: NfcZhw7TyHC3ed5d + + db: + image: mysql:8.0 + container_name: deciday_db + restart: always + environment: + MYSQL_ROOT_PASSWORD: NfcZhw7TyHC3ed5d + MYSQL_DATABASE: deciday_18 + MYSQL_USER: pv_deciday18 + MYSQL_PASSWORD: NfcZhw7TyHC3ed5d + volumes: + - db_data:/var/lib/mysql + - ./deciday_18.sql:/docker-entrypoint-initdb.d/deciday_18.sql + +volumes: + db_data: diff --git a/site/190123_import.csv b/site/190123_import.csv new file mode 100644 index 0000000..64c1f52 --- /dev/null +++ b/site/190123_import.csv @@ -0,0 +1,2 @@ +Acadmie;NOM DE L'ORGANISME;Voie;adresse 2;CP;VILLE;REPRESENTANT;TEL 1;Mail +Creteil;Lyce Emilie du Chtelet;35 cours du Danube;;77700;Serris;Vladimir Vladic;06 87 27 18 87;Vladimir.vladic@ac-creteil.fr diff --git a/site/190301_index.php b/site/190301_index.php new file mode 100644 index 0000000..73f81e9 --- /dev/null +++ b/site/190301_index.php @@ -0,0 +1,167 @@ + + + + + + + + + + + Deciday ! + + + + + + + + + +
+
+ +
+
+
+ + +
+ + + \ No newline at end of file diff --git a/site/190308_index.php b/site/190308_index.php new file mode 100644 index 0000000..165723b --- /dev/null +++ b/site/190308_index.php @@ -0,0 +1,171 @@ + + + + + + + + + + + Deciday ! + + + + + + + + + +
+
+ +
+ + + + \ No newline at end of file diff --git a/site/_notes/dwsync.xml b/site/_notes/dwsync.xml new file mode 100644 index 0000000..73928fb --- /dev/null +++ b/site/_notes/dwsync.xml @@ -0,0 +1,119 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/site/actions-adm.php b/site/actions-adm.php new file mode 100644 index 0000000..14016b9 --- /dev/null +++ b/site/actions-adm.php @@ -0,0 +1,83 @@ +$val) $$cle=$val; + + $maCleDeCryptage = getCleDeCryptage(); + $ident2=crypter($maCleDeCryptage,$identifiant); + // var_dump($ident2); + // //var_dump($mdp); + // var_dump(md5('testpv')); + // $sql = 'SELECT * FROM droits'; + // $pdo = connect_base(); + // // 5. Préparation et exécution + // $stmt = $pdo->prepare($sql); + // $stmt->execute(); + + // // 6. Récupération de tous les résultats + // $droits = $stmt->fetchAll(); + + // // 7. Affichage des résultats + // if ($droits) { + // echo ''; + // echo ''; + // // En-têtes dynamiques + // foreach (array_keys($droits[0]) as $colonne) { + // echo ''; + // } + // echo ''; + // // Parcours des lignes + // foreach ($droits as $ligne) { + // echo ''; + // foreach ($ligne as $valeur) { + // echo ''; + // } + // echo ''; + // } + // echo '
' . htmlspecialchars($colonne, ENT_QUOTES, 'UTF-8') . '
' . htmlspecialchars($valeur, ENT_QUOTES, 'UTF-8') . '
'; + // } else { + // echo 'Aucun enregistrement trouvé dans la table droits.'; + // } + + $count=0; + $query = 'select * from droits where login_adm=:login_adm and mdp_adm=:mdp_adm'; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':login_adm', $ident2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':mdp_adm', md5($mdp), PDO::PARAM_STR ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + $r = $queryRequest->fetch( PDO::FETCH_ASSOC ); + // var_dump($r); + // exit(); + + if($count==1){ + + //Accès admin + if($r['droit_adm']==1 && $r['droit_autre']==0){ + $_SESSION['adm_co']=1; + $_SESSION['adm_num']=$r['id_adm']; + $_SESSION['adm_droit']=$r['droit_adm']; + header('location:index-adm.php'); + exit(); + } + //Accès consultation (uniquement la boite à outils sans restriction) + if($r['droit_adm']==0 && $r['droit_autre']==1){ + $_SESSION['adm_autre']=1; + header('location:bao-all.php'); + exit(); + } + + } + + +} +header('location:connexion-adm.php?err=1'); +exit(); + +?> \ No newline at end of file diff --git a/site/actions-cfa.php b/site/actions-cfa.php new file mode 100644 index 0000000..6486835 --- /dev/null +++ b/site/actions-cfa.php @@ -0,0 +1,75 @@ +$val) $$cle=$val; + + $maCleDeCryptage = getCleDeCryptage(); + $email_cap2=crypter($maCleDeCryptage,$identifiant); + + //echo $email_cap2.'
'.md5($mdp);die(); + + $count=0; + $query = 'select * from eta where email_ref=:email_ref and mdp_ref=:mdp_ref'; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_ref', $email_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':mdp_ref', md5($mdp), PDO::PARAM_STR ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + if($count==1){ + $r = $queryRequest->fetch( PDO::FETCH_ASSOC ); + $_SESSION['cfa_num']=$r['id_eta']; + /* + $query2 = 'update eta set date_co=:date_co where id_eta=:id_eta'; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query2 ); + $queryRequest2->bindParam( ':id_eta', $r['id_eta'], PDO::PARAM_INT ); + $queryRequest2->bindParam( ':date_co', date('Y-m-d'), PDO::PARAM_STR ); + $queryRequest2->execute(); + */ + if($r['date_co']=='0000-00-00'){ + header('location:first.php'); + exit(); + } + $_SESSION['cfa_co']=1; + header('location:index-cfa.php'); + exit(); + } + + $count=0; + $query = 'select * from capitaines where email_cap=:email_cap and mdp_cap=:mdp_cap'; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':mdp_cap', md5($mdp), PDO::PARAM_STR ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + + if($count==1){ + $r = $queryRequest->fetch( PDO::FETCH_ASSOC ); + $_SESSION['cap_co']=1; + $_SESSION['cap_num']=$r['id_cap']; + $query2 = 'update capitaines set date_co=:date_co where id_cap=:id_cap'; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query ); + $queryRequest2->bindParam( ':id_cap', $r['id_cap'], PDO::PARAM_INT ); + $queryRequest2->bindParam( ':date_co', date('Y-m-d'), PDO::PARAM_STR ); + $queryRequest2->execute(); + header('location:index-cap.php'); + exit(); + } + + + +} +header('location:connexion-cfa.php?err=1'); +exit(); + +?> \ No newline at end of file diff --git a/site/actions-mdp.php b/site/actions-mdp.php new file mode 100644 index 0000000..7441568 --- /dev/null +++ b/site/actions-mdp.php @@ -0,0 +1,208 @@ +$val) $$cle=$val; + + $maCleDeCryptage = getCleDeCryptage(); + $email_cap2=crypter($maCleDeCryptage,$email_recov); + + $affich=''; + + $query="select * from capitaines where email_cap=:email_cap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->execute(); + $test=$queryRequest->rowCount(); + if($test>0){ + $data=$queryRequest->fetchAll(); + $id=$data[0]['id_cap']; + $new_mdp=Password(8,0); + $query="update capitaines set mdp_cap=:new_mdp where id_cap=:id"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':new_mdp', md5($new_mdp), PDO::PARAM_STR ); + $queryRequest->bindParam( ':id', $id, PDO::PARAM_INT ); + $queryRequest->execute(); + + $affich.=''; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + + $affich.='
 
Bonjour,
 
Veuillez trouver ci-dessous votre nouveau mot de passe Capitaine pour le site DECIDAY.
 
http://deciday.fr/connexion-cfa.php
 
Votre nouveau mot de passe : '.$new_mdp.'
 
Cordialement.
 
L\'équipe DECIDAY.
'; + + } + + $query="select * from eta where email_ref=:email_cap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->execute(); + $test=$queryRequest->rowCount(); + if($test>0){ + $data=$queryRequest->fetchAll(); + $id=$data[0]['id_eta']; + $new_mdp=Password(8,0); + $query="update eta set mdp_ref=:new_mdp where id_eta=:id"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':new_mdp', md5($new_mdp), PDO::PARAM_STR ); + $queryRequest->bindParam( ':id', $id, PDO::PARAM_INT ); + $queryRequest->execute(); + + $affich.=''; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + + $affich.='
 
Bonjour,
 
Veuillez trouver ci-dessous votre nouveau mot de passe Référent pour le site DECIDAY.
 
http://deciday.fr/connexion-cfa.php
 
Votre nouveau mot de passe : '.$new_mdp.'
 
Bien cordialement.
 
L\'équipe DECIDAY.
'; + + } + + if(!empty($affich)){ + + require 'config/class.phpmailer.php'; + require 'config/phpmailer.settings.php'; + + $to=$email_recov; + $objet="Votre nouveau mot de passe pour le site DECIDAY"; + + + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + //$mail->AddBCC('deciday@fafih.com'); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + $_SESSION['msg']='Un message va vous être envoyé avec votre nouveau mot de passe.'; + header('location:connexion-cfa.php'); + exit(); + + }else{ + + $_SESSION['msg']='L\'e-mail est inconnu.'; + header('location:connexion-cfa.php'); + exit(); + + } + +} + + +if(isset($_POST['action']) && $_POST['action']=='go_first'){ + foreach($_POST as $cle=>$val) $$cle=$val; + + if(isset($_SESSION['cfa_num']) && !empty($_SESSION['cfa_num'])){ + $query = 'select * from eta where id_eta=:id_eta'; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + if($queryRequest->rowCount()!=1){ + header('location:connexion-cfa.php'); + exit(); + } + $query="update eta set mdp_ref=:new_mdp, date_co=:date_co where id_eta=:id"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':new_mdp', md5($mdp_first), PDO::PARAM_STR ); + $queryRequest->bindParam( ':date_co', date('Y-m-d'), PDO::PARAM_STR ); + $queryRequest->bindParam( ':id', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $_SESSION['msg']='Votre nouveau mot de passe a bien été enregsitré.'; + header('location:connexion-cfa.php'); + exit(); + } + + header('location:connexion-cfa.php'); + exit(); +} +?> \ No newline at end of file diff --git a/site/actions-pro.php b/site/actions-pro.php new file mode 100644 index 0000000..b4fe6e3 --- /dev/null +++ b/site/actions-pro.php @@ -0,0 +1,197 @@ +$val){ + echo $cle." => ".$val."
"; + $$cle=$val; + } + + if(isset($recevoirJeunes ) && $recevoirJeunes=='on') $recevoirJeunes =1; + else $recevoirJeunes=0; + if(isset($faireEquipe ) && $faireEquipe=='on') $faireEquipe =1; + else $faireEquipe=0; + if(isset($recevoirStage ) && $recevoirStage=='on') $recevoirStage =1; + else $recevoirStage=0; + + + $add=$adr1. " ". $ville." ".$cp; + $url_gmap = 'https://maps.googleapis.com/maps/api/geocode/json?address=' . urlencode(utf8_encode($add)) . '&sensor=false&key=AIzaSyAD8dr4sS_iFafcU_AowzS9p9B306iQEZQ'; + echo $url_gmap; + $json = json_decode(file_get_contents($url_gmap), true); + $coord = $json['results']['0']['geometry']['location']; + + $query="insert into inscriptions_pro (recevoirJeunes,faireEquipe,recevoirStage,etablissement_pro,siret_pro,nom_pro,prenom_pro,adr1_pro,adr2_pro,cp_pro,ville_pro,mobile_pro,fixe_pro,email_pro,comment_pro,lat_pro,lon_pro,date_insert) values (:recevoirJeunes,:faireEquipe,:recevoirStage,:etablissement_pro,:siret_pro,:nom_pro,:prenom_pro,:adr1_pro,:adr2_pro,:cp_pro,:ville_pro,:mobile_pro,:fixe_pro,:email_pro,:comment_pro,:lat_pro,:lon_pro,:date_insert)"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + + $queryRequest->bindParam( ':recevoirJeunes', $recevoirJeunes, PDO::PARAM_INT ); + $queryRequest->bindParam( ':faireEquipe', $faireEquipe, PDO::PARAM_INT ); + $queryRequest->bindParam( ':recevoirStage', $recevoirStage, PDO::PARAM_INT ); + $queryRequest->bindParam( ':etablissement_pro', crypter($maCleDeCryptage,$etablissement ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':siret_pro', crypter($maCleDeCryptage,$siret ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':nom_pro', crypter($maCleDeCryptage,$nom ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenom_pro', crypter($maCleDeCryptage,$prenom ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':adr1_pro', crypter($maCleDeCryptage,$adr1 ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':adr2_pro', crypter($maCleDeCryptage,$adr2 ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':cp_pro', crypter($maCleDeCryptage,$cp ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':ville_pro', crypter($maCleDeCryptage,$ville ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':mobile_pro', crypter($maCleDeCryptage,$mobile ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':fixe_pro', crypter($maCleDeCryptage,$fixe ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':email_pro', crypter($maCleDeCryptage,$email ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':comment_pro', crypter($maCleDeCryptage,$comment ), PDO::PARAM_STR ); + + $queryRequest->bindParam( ':lat_pro', $coord['lat'] , PDO::PARAM_STR ); + $queryRequest->bindParam( ':lon_pro', $coord['lng'], PDO::PARAM_STR ); + + $queryRequest->bindParam( ':date_insert', date('Y-m-d'), PDO::PARAM_STR ); + + $queryRequest->execute(); + + + $_SESSION['msg']='Votre inscription a bien été enregistrée.'; + header('location:inscriptionPro.php'); + exit(); + } else { + $_SESSION['msg']='Erreur : reCAPTCHA non validé'; + header('location:.'); + exit(); + } +} + +if(isset($_POST['myAction']) && $_POST['myAction']=='proContact'){ + + $captcha = $_POST['g-recaptcha-response']; + if (verifCaptcha($captcha)) + { + $maCleDeCryptage = getCleDeCryptage(); + + foreach($_POST as $cle=>$val){ + echo $cle." => ".$val."
"; + $$cle=$val; + } + if(isset($id_proP) && !empty($id_proP)){ + $id_pro=$id_proP; + $type_pro="parent"; + } + if(isset($id_proJ) && !empty($id_proJ)){ + $id_pro=$id_proJ; + $type_pro="jeune"; + } + + $query="insert into contact_pro (nom_cp,prenom_cp,age_cp,classe_cp,email_cp,comment_cp,num_pro,type_pro,date_cp) values (:nom_cp,:prenom_cp,:age_cp,:classe_cp,:email_cp,:comment_cp,:num_pro,:type_pro,:date_cp)"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':nom_cp', crypter($maCleDeCryptage,$nom_pro ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenom_cp', crypter($maCleDeCryptage,$prenom_pro ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':age_cp', crypter($maCleDeCryptage,$age_pro ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':classe_cp', crypter($maCleDeCryptage,$classe_pro ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':email_cp', crypter($maCleDeCryptage,$email_pro ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':comment_cp', crypter($maCleDeCryptage,$comment_pro ), PDO::PARAM_STR ); + $queryRequest->bindParam( ':num_pro', $id_pro, PDO::PARAM_INT ); + $queryRequest->bindParam( ':type_pro', crypter($maCleDeCryptage,$type_pro), PDO::PARAM_STR ); + $queryRequest->bindParam( ':date_cp', date('Y-m-d'), PDO::PARAM_STR ); + $queryRequest->execute(); + + $query="select * from inscriptions_pro where id_pro=:id_pro"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_pro', $id_pro, PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + $to=decrypter($maCleDeCryptage,$data[0]['email_pro']); + + include('config/class.phpmailer.php'); + include('config/phpmailer.settings.php'); + + + $objet="Demande du site Deciday!"; + + $affich=''; + $affich.=''; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + + $affich.='
 
Bonjour,
 
Un '.$type_pro.' souhaite venir vous rencontrer.
Veuillez trouver ci-dessous les informations qu\'il a transmises sur le site www.deciday.fr.
 
Nom : '.$nom_pro.'
Prénom : '.$prenom_pro.'
Age : '.$age_pro.'
Classe : '.$classe_pro.'
E-mail : '.$email_pro.'
Commentaires : '.nl2br($comment_pro).'
 
Cordialement.
 
L\'équipe DECIDAY.
'; + + $destinataire3="deciday@fafih.com"; + + + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AddBCC ("campagnes@pointvirgule.net"); + $mail->AddBCC ($destinataire3); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + $_SESSION['msg']='Votre demande a bien été envoyée.'; + header('location:index.php'); + exit(); + } else { + $_SESSION['msg']='Erreur : reCAPTCHA non validé'; + header('location:contact-pro.php'); + exit(); + } +} \ No newline at end of file diff --git a/site/admin-cap-agenda.php b/site/admin-cap-agenda.php new file mode 100644 index 0000000..bf7141d --- /dev/null +++ b/site/admin-cap-agenda.php @@ -0,0 +1,249 @@ +prepare( $query ); +$queryRequest->bindParam( ':num_eta', $myIdRef, PDO::PARAM_INT ); +$queryRequest->bindParam( ':myIdCap', $myIdCap, PDO::PARAM_INT ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +$count = $queryRequest->rowCount(); + +if($count!=1){ + header('location:index-adm.php'); + exit(); +} + +$nomCap = decrypter($maCleDeCryptage,$data[0]['nom_cap']).' '.decrypter($maCleDeCryptage,$data[0]['prenom_cap']); +$nomEta=decrypter($maCleDeCryptage,$data[0]['nom_eta']); + +?> + + + + +FAFIH - DECIDAY + + + + + + + + + + + +
+ + + + + + +
+ +
+
+ +
+ +
Référent :
+ + +
Capitaine :
+ +
+ +

+ + Les sollicitations refusées
'; + + $query="SELECT * FROM sollicitations WHERE idCapitaine=0 AND chxNumEta=:chxNumEta AND traitement=0 ORDER BY chxJour, chxCreneau, dateCreate"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':chxNumEta', $myIdRef, PDO::PARAM_INT ); + $queryRequest->execute(); + $countSol = $queryRequest->rowCount(); + $dataSol = $queryRequest->fetchAll(); + + if($countSol==0){ + echo '
Aucune sollicitation refusée.
'; + }else{ + + echo ''; + echo ''; + foreach($dataSol as $k => $v){ + $myjourSol = MysqlToDateFr($v['chxJour']); + $mycreneauSol = getCreneauSol($v['chxCreneau']); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
EtablissementContactLocalisationJourCreneau
'.decrypter($maCleDeCryptage,$v['etaCoLy']).''.decrypter($maCleDeCryptage,$v['nomCoLy']).' '.decrypter($maCleDeCryptage,$v['prenomCoLy']).''.decrypter($maCleDeCryptage,$v['cpCoLy']).' '.decrypter($maCleDeCryptage,$v['villeCoLy']).''.$myjourSol.''.$mycreneauSol.'
'; + + } + + echo '

'; + + //SOLLICITATIONS CAPITAINE + echo '
Les sollicitations en attente
'; + + $query="SELECT * FROM sollicitations WHERE idCapitaine=:id_cap AND traitement=0 ORDER BY chxJour, chxCreneau, dateCreate"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->execute(); + $countSol = $queryRequest->rowCount(); + $dataSol = $queryRequest->fetchAll(); + + if($countSol==0){ + echo '
Aucune sollicitation en attente.
'; + }else{ + + echo '
'; + echo ''; + foreach($dataSol as $k => $v){ + $myjourSol = MysqlToDateFr($v['chxJour']); + $mycreneauSol = getCreneauSol($v['chxCreneau']); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
EtablissementContactLocalisationJourCreneau
'.decrypter($maCleDeCryptage,$v['etaCoLy']).''.decrypter($maCleDeCryptage,$v['nomCoLy']).' '.decrypter($maCleDeCryptage,$v['prenomCoLy']).''.decrypter($maCleDeCryptage,$v['cpCoLy']).' '.decrypter($maCleDeCryptage,$v['villeCoLy']).''.$myjourSol.''.$mycreneauSol.'
'; + + } + + echo '

'; + + /*************************** + AGENDA + ***************************/ + + echo '
Agenda
S : Inscription suite à une sollicitation
D : Inscription directe
'; + + include('include/agenda.inc.php'); + + foreach($arrWeek as $kw=>$vw){ + echo '
'."\r\n"; + + echo ''; + + $idDay = 0; + echo ''."\r\n"; + echo ''; + foreach($vw as $vDay){ + if(!empty($vDay)) $th = ''; else $th = ''; + echo $th."\r\n"; + $idDay++; + } + echo ''."\r\n"; + + foreach($arrCreneaux as $kCr => $vCr){ + if($arrCreneaux[$kCr]=="pm1") $isMidDay = ' class="isMidDay"'; else $isMidDay = ''; + echo ''."\r\n"; + echo ''; + foreach($vw as $vDay){ + if(!empty($vDay)){ + + //Un enregistrement existe t'il pour le créneau ? + $query="SELECT * FROM agenda LEFT JOIN collegelycee ON idCoLy=numCoLy WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $vDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $arrCreneaux[$kCr], PDO::PARAM_STR ); + $queryRequest->execute(); + $countD = $queryRequest->rowCount(); + $dataD=$queryRequest->fetchAll(); + if($countD>1){ //Erreur Pas possible + $td = ''; + }elseif($countD==1){ + + if($dataD[0]['provenance']>0) $provenance = "S"; else $provenance = "D"; + + if($dataD[0]['statut']=="bloque"){ + $td = ''; + } + if($dataD[0]['statut']=="libre"){ + $td = ''; + } + if($dataD[0]['statut']=="reserve"){ + $reserve = decrypter($maCleDeCryptage,$dataD[0]['etaCoLy'])."
(".decrypter($maCleDeCryptage,$dataD[0]['cpCoLy'])." ".decrypter($maCleDeCryptage,$dataD[0]['villeCoLy']).") "; + $td = ''; + } + }/*else{ //Créneau vide + + if($vDay==$theGreatDay) $td = ''; else $td = ''; + + }*/ + + }else $td = ''; + echo $td."\r\n"; + } + echo ''."\r\n"; + } + + echo '
Semaine '.$kw.'
 '.$arrDaysWeek[$idDay].'
'.MysqlToDateFr($vDay).'
 
'.$arrCreneauxTitle[$kCr].'Erreur recontrée sur ce créneauIndisponibleDisponible'.$reserve.'
'.$provenance.'
Libre
Réserver
Bloquer
Bloqué
Débloquer
 
'."\r\n"; + } + + + ?> + + + + + + +
+
+ + + + + \ No newline at end of file diff --git a/site/admin-etat-cfa.php b/site/admin-etat-cfa.php new file mode 100644 index 0000000..0eff2c3 --- /dev/null +++ b/site/admin-etat-cfa.php @@ -0,0 +1,109 @@ + + + + + +FAFIH - DECIDAY + + + + + + + + + + + +
+ + + + +
Suivi des CFA/LP
+ +
+ + + 1"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); + $statut = null; + $coordonnees = null; + + echo ''; + echo ""; + foreach($data as $val){ + if(intval($val['traitement']) === 0){ + $statut = "en attente"; + } else if(intval($val['traitement']) === 1){ + continue; + } else { + $statut = "refusé"; + } + $add1 = decrypter($maCleDeCryptage,$val['adresse1CoLy']); + $add2 = decrypter($maCleDeCryptage,$val['adresse2CoLy']); + $cp = decrypter($maCleDeCryptage,$val['cpCoLy']); + $ville = decrypter($maCleDeCryptage,$val['villeCoLy']); + $coordonnees = $add1; + if(!empty($add2)){ + $coordonnees = $coordonnees . "
" . $add2; + } + $coordonnees = $coordonnees . "
" . $cp . " " . $ville; + $cpVilleEta = decrypter($maCleDeCryptage,$val['cp']). "
" . decrypter($maCleDeCryptage,$val['ville']); + $commentaire = decrypter($maCleDeCryptage,$val['commentCoLy']); + + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + + } + echo '
CFA/LPCFA/LP Ville
Code postal
CFA/LP
E-mail référent
EtablissementNom PrénomFonctionTéléphoneE-mailCoordonnéesClasses/ElèvesCréneauxCommentairesStatutDate
".decrypter($maCleDeCryptage,$val['nom_eta'])."".$cpVilleEta."".decrypter($maCleDeCryptage,$val['email_ref'])."".decrypter($maCleDeCryptage,$val['etaCoLy'])."".decrypter($maCleDeCryptage,$val['nomCoLy'])."
".decrypter($maCleDeCryptage,$val['prenomCoLy']). "
".decrypter($maCleDeCryptage,$val['fonctionCoLy'])."".decrypter($maCleDeCryptage,$val['telCoLy'])."".decrypter($maCleDeCryptage,$val['emlCoLy'])."".$coordonnees."".$val['nbClasses']."/".$val['nbEleves']."".MysqlToDateFr($val['chxJour'])." ".$val['chxCreneau'].""."Détail"."$statut".MysqlToDateFr($val['dateCreate'])."
'; + } + ?> +
+
+ + + + + \ No newline at end of file diff --git a/site/admin-etat-sollicitations.php b/site/admin-etat-sollicitations.php new file mode 100644 index 0000000..dba87b7 --- /dev/null +++ b/site/admin-etat-sollicitations.php @@ -0,0 +1,149 @@ + + + + + +FAFIH - DECIDAY + + + + + + + + + + + + +
+ + + + +
Suivi des sollicitations
+ +
+ + + 1"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); + $statut = null; + $coordonnees = null; + $n=0; + + echo ''; + echo ""; + foreach($data as $val){ + // Définition du statut de la sollicitation + if(intval($val['idCapitaine']) > 0 ){ + $statut = "en attente"; + } else { + $statut = "refusé"; + } + + // Définition des coordonnées de l'établissement + $add1 = decrypter($maCleDeCryptage,$val['adresse1CoLy']); + $add2 = decrypter($maCleDeCryptage,$val['adresse2CoLy']); + $cp = decrypter($maCleDeCryptage,$val['cpCoLy']); + $ville = decrypter($maCleDeCryptage,$val['villeCoLy']); + $coordonnees = $add1; + if(!empty($add2)){ + $coordonnees = $coordonnees . "
" . $add2; + } + $coordonnees = $coordonnees . "
" . $cp . " " . $ville; + $cpVilleEta = decrypter($maCleDeCryptage,$val['cp']). "
" . decrypter($maCleDeCryptage,$val['ville']); + + + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + + } + echo '
CFA/LPCFA/LP Ville
Code postal
CFA/LP
E-mail référent
EtablissementNom PrénomFonctionTéléphoneE-mailCoordonnéesClasses/ElèvesCréneauxCommentairesStatutDate
".decrypter($maCleDeCryptage,$val['nom_eta'])."".$cpVilleEta."".decrypter($maCleDeCryptage,$val['email_ref'])."".decrypter($maCleDeCryptage,$val['etaCoLy'])."".decrypter($maCleDeCryptage,$val['nomCoLy'])."
".decrypter($maCleDeCryptage,$val['prenomCoLy']). "
".decrypter($maCleDeCryptage,$val['fonctionCoLy'])."".decrypter($maCleDeCryptage,$val['telCoLy'])."".decrypter($maCleDeCryptage,$val['emlCoLy'])."".$coordonnees."".$val['nbClasses']."/".$val['nbEleves']."".MysqlToDateFr($val['chxJour'])." ".$val['chxCreneau']."Détail$statut".MysqlToDateFr($val['dateCreate'])."
'; + foreach($data as $val){ + $coLy = decrypter($maCleDeCryptage,$val['etaCoLy']); + $commentaires = nl2br(htmlspecialchars(decrypter($maCleDeCryptage,$val['commentCoLy']))); + ?> + + + + + +
+ +
+ + + + + \ No newline at end of file diff --git a/site/admin/_notes/dwsync.xml b/site/admin/_notes/dwsync.xml new file mode 100644 index 0000000..aa1e1ef --- /dev/null +++ b/site/admin/_notes/dwsync.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/site/admin/connexion.php b/site/admin/connexion.php new file mode 100644 index 0000000..77a1683 --- /dev/null +++ b/site/admin/connexion.php @@ -0,0 +1,10 @@ + + + + +Document sans titre + + + + + \ No newline at end of file diff --git a/site/admin/index.php b/site/admin/index.php new file mode 100644 index 0000000..77a1683 --- /dev/null +++ b/site/admin/index.php @@ -0,0 +1,10 @@ + + + + +Document sans titre + + + + + \ No newline at end of file diff --git a/site/agenda-cap-actions.php b/site/agenda-cap-actions.php new file mode 100644 index 0000000..0e7ad45 --- /dev/null +++ b/site/agenda-cap-actions.php @@ -0,0 +1,437 @@ +$val){ + $$cle=$val; + //echo $cle.' => '.$val.'
'; + } + + + $idCoLy = $_POST['idCoLy']; + + $maCleDeCryptage = getCleDeCryptage(); + $etaCoLy = crypter($maCleDeCryptage,$etaCoLy); + $nomCoLy = crypter($maCleDeCryptage,$nomCoLy); + $prenomCoLy = crypter($maCleDeCryptage,$prenomCoLy); + $fonctionCoLy = crypter($maCleDeCryptage,$fonctionCoLy); + $telCoLy = crypter($maCleDeCryptage,$telCoLy); + $emlCoLy = crypter($maCleDeCryptage,$emlCoLy); + $adresse1CoLy = crypter($maCleDeCryptage,$adresse1CoLy); + $adresse2CoLy = crypter($maCleDeCryptage,$adresse2CoLy); + $cpCoLy = crypter($maCleDeCryptage,$cpCoLy); + $villeCoLy = crypter($maCleDeCryptage,$villeCoLy); + $commentCoLy = crypter($maCleDeCryptage,$commentCoLy); + + $db = connect_base(); + + //Trouve le CFA associé + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + WHERE id_cap=:id_cap"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + if($count==1){ + + $dataEta=$queryRequest->fetchAll(); + $chxNumEta = $dataEta[0]['num_eta']; + + /* + //Vérifie si le créneau existe + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + INNER JOIN agenda ON id_cap = numCap + WHERE id_cap=:id_cap + AND jour=:jour AND creneau=:creneau";; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + + //Crée le créneau vide s'il n'existe pas pour le premier jour qui est libre par défaut) + if($count==0 && $myDay=='2019-01-17'){ + + $numCoLy = 0; + $statut = 'libre'; + $userLastUpdate = 'cap'; + $dateLastUpdate = date('Y-m-d'); + + $queryCreate=" + INSERT INTO agenda (numCap, numCoLy, numEta, jour, creneau, statut, dateLastUpdate,userLastUpdate) + VALUES (:numCap,:numCoLy,:numEta,:jour,:creneau,:statut,:dateLastUpdate,:userLastUpdate)"; + $queryRequestC = $db->prepare( $queryCreate ); + $queryRequestC->bindParam( ':numCap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequestC->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequestC->bindParam( ':numEta', $chxNumEta, PDO::PARAM_INT ); + $queryRequestC->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequestC->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequestC->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequestC->bindParam( ':dateLastUpdate', $dateLastUpdate, PDO::PARAM_STR ); + $queryRequestC->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR ); + $queryRequestC->execute(); + + } + */ + + //Vérifie si le créneau est libre ou si l'on est en modification de fiche établissement + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + INNER JOIN agenda ON id_cap = numCap + WHERE id_cap=:id_cap + AND jour=:jour AND creneau=:creneau + AND (numCoLy=0 || numCoLy=:numCoLy)"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->bindParam( ':numCoLy', $idCoLy, PDO::PARAM_INT ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + //Insertion d'un créneau et réservation + if($count==1){ + + $data=$queryRequest->fetchAll(); + $dateCreate = date('Y-m-d'); + $chxNumEta = $data[0]['num_eta']; + + $eta = decrypter($maCleDeCryptage,$data[0]['nom_eta']); + + $capitaine = decrypter($maCleDeCryptage,$data[0]['nom_cap']); + $capitaine = mb_strtoupper($capitaine).' '.decrypter($maCleDeCryptage,$data[0]['prenom_cap']); + + /**********************/ + if(!empty($chxNumEta)){ + + if(empty($idCoLy)){ + + //Insertion de l'établissement + $query=" + INSERT INTO collegelycee (etaCoLy, nomCoLy, prenomCoLy, fonctionCoLy, telCoLy, emlCoLy, adresse1CoLy, adresse2CoLy, cpCoLy, villeCoLy, nbClasses, nbEleves, commentCoLy, dateCreate, chxNumEta) + VALUES (:etaCoLy, :nomCoLy, :prenomCoLy, :fonctionCoLy, :telCoLy, :emlCoLy, :adresse1CoLy, :adresse2CoLy, :cpCoLy, :villeCoLy, :nbClasses, :nbEleves, :commentCoLy, :dateCreate, :chxNumEta)"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':etaCoLy', $etaCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nomCoLy', $nomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenomCoLy', $prenomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':fonctionCoLy', $fonctionCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':telCoLy', $telCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':emlCoLy', $emlCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse1CoLy', $adresse1CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse2CoLy', $adresse2CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':cpCoLy', $cpCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':villeCoLy', $villeCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nbClasses', $nbClasses, PDO::PARAM_INT ); + $queryRequest->bindParam( ':nbEleves', $nbEleves, PDO::PARAM_INT ); + $queryRequest->bindParam( ':commentCoLy', $commentCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':dateCreate', $dateCreate, PDO::PARAM_STR ); + $queryRequest->bindParam( ':chxNumEta', $chxNumEta, PDO::PARAM_INT ); + $queryRequest->execute(); + + $idCoLy=$db->lastInsertId(); + + //Affectation au créneau + $numCoLy = $idCoLy; + $statut = 'reserve'; + $userLastUpdate = 'cap'; + + $query=" + UPDATE agenda + SET numCoLy=:numCoLy, statut=:statut, dateLastUpdate='".date('Y-m-d')."',userLastUpdate=:userLastUpdate + WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequest->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR ); + $queryRequest->execute(); + + //Envoi d'un email au collège ou lycée + require 'config/class.phpmailer.php'; + require 'config/phpmailer.settings.php'; + + $to=$_POST['emlCoLy']; + $objet="Votre évènement DECIDAY !"; + + $adresseCL = $_POST['adresse1CoLy']; + if(!empty($adresse2CoLy)) $adresseCL .= '
'.$_POST['adresse2CoLy']; + $adresseCL .= '
'.$_POST['cpCoLy'].' '.$_POST['villeCoLy']; + + $creneauCL = ""; + $creneauCL = getCreneau($myCreneau); + + + $affich=''; + $affich.=''; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + + $affich.='
 
Bonjour,
 
Dans le cadre de l\'évènement Déciday !, un créneau a été réservé pour la venue d\'un trinôme au sein de votre établissement. Vos élèves pourront donc découvrir la filière, préparer leur projet d\'orientation professionnelle et rencontrer un professionnel.
 
Récapitulatif de cette rencontre :
 
Jour : '.MysqlToDateFr($myDay).'
Créneau : '.$creneauCL.'
 
Votre établissement : '.$_POST['etaCoLy'].'
Nombre de classes : '.$nbClasses.'
Nombre d\'élèves : '.$nbEleves.'
 
Votre interlocuteur : '.$capitaine.'
Etablissement : '.$eta.'
 
Votre interlocuteur vous contactera pour définir les modalités de votre intervention.
 
Votre site
Déciday !
 
Cordialement.
 
L\'équipe DECIDAY.
'; + + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + $_SESSION['msg']='Le créneau a bien été réservé. Un email a été envoyé sur l\'email de l\'établissement pour l\'en informer.'; + + }else{ + + //Modification de l'établissement + $query=" + UPDATE collegelycee SET etaCoLy=:etaCoLy, nomCoLy=:nomCoLy, prenomCoLy=:prenomCoLy, fonctionCoLy=:fonctionCoLy, telCoLy=:telCoLy, emlCoLy=:emlCoLy, adresse1CoLy=:adresse1CoLy, adresse2CoLy=:adresse2CoLy, cpCoLy=:cpCoLy, villeCoLy=:villeCoLy, nbClasses=:nbClasses, nbEleves=:nbEleves, commentCoLy=:commentCoLy WHERE idCoLy=:idCoLy"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':etaCoLy', $etaCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nomCoLy', $nomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenomCoLy', $prenomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':fonctionCoLy', $fonctionCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':telCoLy', $telCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':emlCoLy', $emlCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse1CoLy', $adresse1CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse2CoLy', $adresse2CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':cpCoLy', $cpCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':villeCoLy', $villeCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nbClasses', $nbClasses, PDO::PARAM_INT ); + $queryRequest->bindParam( ':nbEleves', $nbEleves, PDO::PARAM_INT ); + $queryRequest->bindParam( ':commentCoLy', $commentCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':idCoLy', $idCoLy, PDO::PARAM_INT ); + $queryRequest->execute(); + + $_SESSION['msg']='La fiche de l\'établissement a été mise à jour.'; + + } + + } + /***************************/ + + }else{ + + $_SESSION['msg']='Le créneau n\'a pas pu être réservé car il n\'est pas disponible.'; + + } + + header('location:agenda-cap.php'); + exit(); + + }else{ + + $_SESSION['msg']='Erreur : CFA Inconnu'; + + } + + } + + //BLOCAGE OU DEBLOCAGE + if(isset($_POST['myAction']) && ($_POST['myAction']=='BL0' || $_POST['myAction']=='D3B')){ + + foreach($_POST as $cle=>$val){ + $$cle=$val; + //echo $cle.' => '.$val.'
'; + } + + $db = connect_base(); + + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + INNER JOIN agenda ON id_cap = numCap + WHERE id_cap=:id_cap + AND jour=:jour AND creneau=:creneau"; + + $queryRequest0 = $db->prepare( $query ); + $queryRequest0->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest0->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest0->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest0->execute(); + $count = $queryRequest0->rowCount(); + $data0=$queryRequest0->fetchAll(); + + /*if(empty($count)){ + + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + WHERE id_cap=:id_cap"; + + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + $numEta = $data[0]['num_eta']; + $numCoLy = 0; + if($_POST['myAction']=='BL0') $statut = 'bloque'; else $statut = 'libre'; + $userLastUpdate = 'cap'; + + if(!empty($numEta)){ + $query=" + INSERT INTO agenda (numCap, numCoLy, numEta, jour, creneau, statut, dateLastUpdate,userLastUpdate) + VALUES (:numCap, :numCoLy, :numEta, :jour, :creneau, :statut, '".date('Y-m-d')."',:userLastUpdate)"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':numEta', $numEta, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequest->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR ); + $queryRequest->execute(); + } + + if($statut == 'bloque') $_SESSION['msg']='Le créneau a été bloqué.'; + else $_SESSION['msg']='Le créneau a été débloqué.'; + + }else{*/ + + if(!empty($count)){ + + $msgPlus = ""; + + //Suppression de la réservation si déblocage de créneau + if($data0[0]['numCoLy']>0){ + //echo $data0[0]['num_eta']; + //echo '
';print_r($data0);echo '
'; + $query="DELETE FROM collegelycee WHERE idCoLy=:idCoLy AND chxNumEta=:chxNumEta"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':idCoLy', $data0[0]['numCoLy'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':chxNumEta', $data0[0]['num_eta'], PDO::PARAM_INT ); + $queryRequest->execute(); + + $msgPlus = " Pensez à prévenir cet établissement que sa réservation a été annulée."; + //$data10=$queryRequest->fetchAll(); + //echo '
';print_r($data10);echo '
'; + //exit(); + }; + + $numCoLy = 0; + if($_POST['myAction']=='BL0') $statut = 'bloque'; else $statut = 'libre'; + $userLastUpdate = 'cap'; + + $query=" + UPDATE agenda + SET numCoLy=:numCoLy, statut=:statut, dateLastUpdate='".date('Y-m-d')."',userLastUpdate=:userLastUpdate + WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequest->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR ); + $queryRequest->execute(); + + if($statut == 'bloque') $_SESSION['msg']='Le créneau a été rendu indisponible.'.$msgPlus; + else $_SESSION['msg']='Le créneau été rendu disponible.'; + + }else $_SESSION['msg']='Le créneau n\'a pas pu être rendu disponible.'; + + header('location:agenda-cap.php'); + exit(); + + } + +} + +header('location:index.php?err=1'); +exit(); + +?> \ No newline at end of file diff --git a/site/agenda-cap-form.php b/site/agenda-cap-form.php new file mode 100644 index 0000000..ae598dd --- /dev/null +++ b/site/agenda-cap-form.php @@ -0,0 +1,229 @@ +prepare( $query ); +$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +$capitaine=decrypter($maCleDeCryptage,$data[0]['prenom_cap'])." ".decrypter($maCleDeCryptage,$data[0]['nom_cap']); + +//Ajout ou Modification +$idCoLy = ""; +if(!empty($_POST['idCoLy'])) $idCoLy = $_POST['idCoLy']; +//if(!empty($_GET['idCoLy'])) $idCoLy = $_GET['idCoLy']; + +$etaCoLy = $nomCoLy = $prenomCoLy = $fonctionCoLy = $telCoLy = $emlCoLy = $adresse1CoLy = $adresse2CoLy = $cpCoLy = $villeCoLy = $nbClasses = $nbEleves = $commentCoLy = ""; + +$btnSub = 'Ajouter'; +$txtIntro = 'Inscription'; + +if(!empty($idCoLy)){ + + $query="select * from collegelycee where idCoLy=:idCoLy"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':idCoLy', $idCoLy, PDO::PARAM_INT ); + $queryRequest->execute(); + $dataCoLy=$queryRequest->fetchAll(); + + $etaCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['etaCoLy']); + $nomCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['nomCoLy']); + $prenomCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['prenomCoLy']); + $fonctionCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['fonctionCoLy']); + $telCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['telCoLy']); + $emlCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['emlCoLy']); + $adresse1CoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['adresse1CoLy']); + $adresse2CoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['adresse2CoLy']); + $cpCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['cpCoLy']); + $villeCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['villeCoLy']); + $nbClasses = $dataCoLy[0]['nbClasses']; + $nbEleves = $dataCoLy[0]['nbEleves']; + $commentCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['commentCoLy']); + + $btnSub = 'Modifier'; + $txtIntro = 'Modification'; +} + +?> + + + + +FAFIH - DECIDAY + + + + + + + + + + + +
+ +
Votre espace Capitaine
+ +
+ +
+
+ Capitaine : modifier
+ Déconnexion +
+ + + + +
Formulaire d'inscription
+ +
+ +

d'un collège ou d'un lycée +
+ +
    +
  • Un créneau sera réservé pour l'établissement scolaire
  • +
  • Un email sera envoyé à l'établissement scolaire
  • +
+ +
    + Si vous changez l'email de l'établissement, pensez à en informer le nouveau contact +
+ +
+ +
+ + + + + +
Etablissement* :

+
Nom* :

+
Prénom* :

+
Fonction* :

+
Ligne Directe* :

+
E-mail* :

+
Adresse 1* :

+
Adresse 2 :

+
Code Postal* :

+
Ville* :

+
Nombre de classes* :

+
Nombre total d'élèves concernés* :

+
Commentaires :


+
+
+ +
+ +
+
+ + + + +
+ + + + + \ No newline at end of file diff --git a/site/agenda-cap.php b/site/agenda-cap.php new file mode 100644 index 0000000..51e5dcd --- /dev/null +++ b/site/agenda-cap.php @@ -0,0 +1,274 @@ +prepare( $query ); +$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +$capitaine=decrypter($maCleDeCryptage,$data[0]['prenom_cap'])." ".decrypter($maCleDeCryptage,$data[0]['nom_cap']); + +?> + + + + +FAFIH - DECIDAY + + + + + + + + + + + +
+ +
Votre espace Capitaine
+ +
+ +
+
+ Capitaine : modifier
+ Déconnexion +
+ + + + +
Votre agenda
+ +
+ +

Organisez l’agenda de votre trinôme : +
+
    +
  • Sélectionnez jusqu’à 4 créneaux de disponibilité par jour
  • +
  • Suivez et répondez aux sollicitations des collèges et lycées
  • +
+
+
'; + + echo ''; + echo ''; + echo '
Vos sollicitations en attente
'; + echo ''; + echo '
'; + + $query="SELECT * FROM sollicitations WHERE idCapitaine=:id_cap AND traitement=0 ORDER BY chxJour, chxCreneau, dateCreate"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $countSol = $queryRequest->rowCount(); + $dataSol = $queryRequest->fetchAll(); + + if($countSol==0){ + echo '
Vous n\'avez aucune sollicitation en attente.
'; + }else{ + echo ''; + echo ''; + foreach($dataSol as $k => $v){ + $myjourSol = MysqlToDateFr($v['chxJour']); + $mycreneauSol = getCreneauSol($v['chxCreneau']); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
EtablissementContactLocalisationJourCreneauActions
'.decrypter($maCleDeCryptage,$v['etaCoLy']).''.decrypter($maCleDeCryptage,$v['nomCoLy']).' '.decrypter($maCleDeCryptage,$v['prenomCoLy']).''.decrypter($maCleDeCryptage,$v['cpCoLy']).' '.decrypter($maCleDeCryptage,$v['villeCoLy']).''.$myjourSol.''.$mycreneauSol.'VoirRefuser
'; + } + + echo '
'; + + /* + $arrWeek = array(); + $arrWeek[3] = array('','','','2019-01-17','2019-01-18'); + $arrWeek[4] = array('2019-01-21','2019-01-22','2019-01-23','2019-01-24','2019-01-25'); + $arrWeek[5] = array('2019-01-28','2019-01-29','2019-01-30','2019-01-31','2019-02-01'); + $arrWeek[6] = array('2019-02-04','2019-02-05','2019-02-06','2019-02-07','2019-02-08'); + + $arrDaysWeek = array('lundi','mardi','mercredi','jeudi','vendredi'); + + $arrCreneaux = array('am1','am2','pm1','pm2'); + $arrCreneauxTitle = array('Matin 1','Matin 2','Après-midi 1','Après-midi 2'); + + $theGreatDay = '2019-01-17'; + */ + + include('include/agenda.inc.php'); + + foreach($arrWeek as $kw=>$vw){ + echo '
'."\r\n"; + + echo ''; + + $idDay = 0; + echo ''."\r\n"; + echo ''; + foreach($vw as $vDay){ + if(!empty($vDay)) $th = ''; else $th = ''; + echo $th."\r\n"; + $idDay++; + } + echo ''."\r\n"; + + foreach($arrCreneaux as $kCr => $vCr){ + if($arrCreneaux[$kCr]=="pm1") $isMidDay = ' class="isMidDay"'; else $isMidDay = ''; + echo ''."\r\n"; + echo ''; + foreach($vw as $vDay){ + if(!empty($vDay)){ + + //Un enregistrement existe t'il pour le créneau ? + $query="SELECT * FROM agenda LEFT JOIN collegelycee ON idCoLy=numCoLy WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau + "; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $vDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $arrCreneaux[$kCr], PDO::PARAM_STR ); + $queryRequest->execute(); + $countD = $queryRequest->rowCount(); + $dataD=$queryRequest->fetchAll(); + if($countD>1){ //Erreur Pas possible + $td = ''; + }elseif($countD==1){ + if($dataD[0]['statut']=="bloque"){ + $td = ''; + } + if($dataD[0]['statut']=="libre"){ + $td = ''; + } + if($dataD[0]['statut']=="reserve"){ + $reserve = decrypter($maCleDeCryptage,$dataD[0]['etaCoLy'])."
(".decrypter($maCleDeCryptage,$dataD[0]['cpCoLy'])." ".decrypter($maCleDeCryptage,$dataD[0]['villeCoLy']).") "; + $td = ''; + } + }/*else{ //Créneau vide + + if($vDay==$theGreatDay) $td = ''; else $td = ''; + + }*/ + + }else $td = ''; + echo $td."\r\n"; + } + echo ''."\r\n"; + } + + echo '
Semaine '.$kw.'
 '.$arrDaysWeek[$idDay].'
'.MysqlToDateFr($vDay).'
 
'.$arrCreneauxTitle[$kCr].'Erreur recontrée sur ce créneauIndisponible
Rendre disponible
Disponible
Identifier un rendez-vous
Rendre indisponible
Affecter une sollicitation
'.$reserve.'
Modifier
Rendre indisponible
Libre
Réserver
Bloquer
Bloqué
Débloquer
 
'."\r\n"; + } + + //} + + ?> +
+
+ + + +
+ + + +
+
+ + + + +
+
+ + + + +
+
+ + + +
+ +
+ + + + + \ No newline at end of file diff --git a/site/agenda-cfa-actions.php b/site/agenda-cfa-actions.php new file mode 100644 index 0000000..e50b89d --- /dev/null +++ b/site/agenda-cfa-actions.php @@ -0,0 +1,441 @@ +$val){ + $$cle=$val; + //echo $cle.' => '.$val.'
'; + } + + $idCoLy = $_POST['idCoLy']; + + $maCleDeCryptage = getCleDeCryptage(); + $etaCoLy = crypter($maCleDeCryptage,$etaCoLy); + $nomCoLy = crypter($maCleDeCryptage,$nomCoLy); + $prenomCoLy = crypter($maCleDeCryptage,$prenomCoLy); + $fonctionCoLy = crypter($maCleDeCryptage,$fonctionCoLy); + $telCoLy = crypter($maCleDeCryptage,$telCoLy); + $emlCoLy = crypter($maCleDeCryptage,$emlCoLy); + $adresse1CoLy = crypter($maCleDeCryptage,$adresse1CoLy); + $adresse2CoLy = crypter($maCleDeCryptage,$adresse2CoLy); + $cpCoLy = crypter($maCleDeCryptage,$cpCoLy); + $villeCoLy = crypter($maCleDeCryptage,$villeCoLy); + $commentCoLy = crypter($maCleDeCryptage,$commentCoLy); + + $db = connect_base(); + + //Trouve le CFA associé + /*$query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + WHERE id_cap=:id_cap"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->execute(); + $count = $queryRequest->rowCount();*/ + //echo $_SESSION['cfa_num']; exit(); + //if($count==1){ + + //$dataEta=$queryRequest->fetchAll(); + $chxNumEta = $_SESSION['cfa_num']; + + /* + //Vérifie si le créneau existe + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + INNER JOIN agenda ON id_cap = numCap + WHERE id_cap=:id_cap + AND jour=:jour AND creneau=:creneau"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + + //Crée le créneau vide s'il n'existe pas pour le premier jour qui est libre par défaut) + if($count==0 && $myDay=='2019-01-17'){ + + $numCoLy = 0; + $statut = 'libre'; + $userLastUpdate = 'ref'; + $dateLastUpdate = date('Y-m-d'); + + $queryCreate=" + INSERT INTO agenda (numCap, numCoLy, numEta, jour, creneau, statut, dateLastUpdate,userLastUpdate) + VALUES (:numCap,:numCoLy,:numEta,:jour,:creneau,:statut,:dateLastUpdate,:userLastUpdate)"; + $queryRequestC = $db->prepare( $queryCreate ); + $queryRequestC->bindParam( ':numCap', $myIdCap, PDO::PARAM_INT ); + $queryRequestC->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequestC->bindParam( ':numEta', $chxNumEta, PDO::PARAM_INT ); + $queryRequestC->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequestC->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequestC->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequestC->bindParam( ':dateLastUpdate', $dateLastUpdate, PDO::PARAM_STR ); + $queryRequestC->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR ); + $queryRequestC->execute(); + + } + */ + + //Vérifie si le créneau est libre ou si l'on est en modification de fiche établissement + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + INNER JOIN agenda ON id_cap = numCap + WHERE id_cap=:id_cap + AND jour=:jour AND creneau=:creneau + AND (numCoLy=0 || numCoLy=:numCoLy)"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->bindParam( ':numCoLy', $idCoLy, PDO::PARAM_INT ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + //Insertion d'un créneau et réservation + if($count==1){ + + $data=$queryRequest->fetchAll(); + $dateCreate = date('Y-m-d'); + $chxNumEta = $data[0]['num_eta']; + + $eta = decrypter($maCleDeCryptage,$data[0]['nom_eta']); + + $capitaine = decrypter($maCleDeCryptage,$data[0]['nom_cap']); + $capitaine = mb_strtoupper($capitaine).' '.decrypter($maCleDeCryptage,$data[0]['prenom_cap']); + + /**********************/ + if(!empty($chxNumEta)){ + + if(empty($idCoLy)){ + + //Insertion de l'établissement + $query=" + INSERT INTO collegelycee (etaCoLy, nomCoLy, prenomCoLy, fonctionCoLy, telCoLy, emlCoLy, adresse1CoLy, adresse2CoLy, cpCoLy, villeCoLy, nbClasses, nbEleves, commentCoLy, dateCreate, chxNumEta) + VALUES (:etaCoLy, :nomCoLy, :prenomCoLy, :fonctionCoLy, :telCoLy, :emlCoLy, :adresse1CoLy, :adresse2CoLy, :cpCoLy, :villeCoLy, :nbClasses, :nbEleves, :commentCoLy, :dateCreate, :chxNumEta)"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':etaCoLy', $etaCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nomCoLy', $nomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenomCoLy', $prenomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':fonctionCoLy', $fonctionCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':telCoLy', $telCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':emlCoLy', $emlCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse1CoLy', $adresse1CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse2CoLy', $adresse2CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':cpCoLy', $cpCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':villeCoLy', $villeCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nbClasses', $nbClasses, PDO::PARAM_INT ); + $queryRequest->bindParam( ':nbEleves', $nbEleves, PDO::PARAM_INT ); + $queryRequest->bindParam( ':commentCoLy', $commentCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':dateCreate', $dateCreate, PDO::PARAM_STR ); + $queryRequest->bindParam( ':chxNumEta', $chxNumEta, PDO::PARAM_INT ); + $queryRequest->execute(); + + $idCoLy=$db->lastInsertId(); + + //Affectation au créneau + $numCoLy = $idCoLy; + $statut = 'reserve'; + $userLastUpdate = 'ref'; + + $query=" + UPDATE agenda + SET numCoLy=:numCoLy, statut=:statut, dateLastUpdate='".date('Y-m-d')."',userLastUpdate=:userLastUpdate + WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequest->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR ); + $queryRequest->execute(); + + //Envoi d'un email au collège ou lycée + require 'config/class.phpmailer.php'; + require 'config/phpmailer.settings.php'; + + $to=$_POST['emlCoLy']; + $objet="Votre évènement DECIDAY !"; + + $adresseCL = $_POST['adresse1CoLy']; + if(!empty($adresse2CoLy)) $adresseCL .= '
'.$_POST['adresse2CoLy']; + $adresseCL .= '
'.$_POST['cpCoLy'].' '.$_POST['villeCoLy']; + + $creneauCL = ""; + $creneauCL = getCreneau($myCreneau); + + + $affich=''; + $affich.=''; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + $affich.=''; + $affich.=''; + $affich.=''."\n"; + + $affich.='
 
Bonjour,
 
Dans le cadre de l\'évènement Déciday !, un créneau a été réservé pour la venue d\'un trinôme au sein de votre établissement. Vos élèves pourront donc découvrir la filière, préparer leur projet d\'orientation professionnelle et rencontrer un professionnel.
 
Récapitulatif de cette rencontre :
 
Jour : '.MysqlToDateFr($myDay).'
Créneau : '.$creneauCL.'
 
Votre établissement : '.$_POST['etaCoLy'].'
Nombre de classes : '.$nbClasses.'
Nombre d\'élèves : '.$nbEleves.'
 
Votre interlocuteur : '.$capitaine.'
Etablissement : '.$eta.'
 
Votre interlocuteur vous contactera pour définir les modalités de votre intervention.
 
Votre site
Déciday !
 
Cordialement.
 
L\'équipe DECIDAY.
'; + + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + $_SESSION['msg']='Le créneau a bien été réservé. Un email a été envoyé sur l\'email de l\'établissement pour l\'en informer.'; + + }else{ + + //Modification de l'établissement + $query=" + UPDATE collegelycee SET etaCoLy=:etaCoLy, nomCoLy=:nomCoLy, prenomCoLy=:prenomCoLy, fonctionCoLy=:fonctionCoLy, telCoLy=:telCoLy, emlCoLy=:emlCoLy, adresse1CoLy=:adresse1CoLy, adresse2CoLy=:adresse2CoLy, cpCoLy=:cpCoLy, villeCoLy=:villeCoLy, nbClasses=:nbClasses, nbEleves=:nbEleves, commentCoLy=:commentCoLy WHERE idCoLy=:idCoLy"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':etaCoLy', $etaCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nomCoLy', $nomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenomCoLy', $prenomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':fonctionCoLy', $fonctionCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':telCoLy', $telCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':emlCoLy', $emlCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse1CoLy', $adresse1CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse2CoLy', $adresse2CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':cpCoLy', $cpCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':villeCoLy', $villeCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nbClasses', $nbClasses, PDO::PARAM_INT ); + $queryRequest->bindParam( ':nbEleves', $nbEleves, PDO::PARAM_INT ); + $queryRequest->bindParam( ':commentCoLy', $commentCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':idCoLy', $idCoLy, PDO::PARAM_INT ); + $queryRequest->execute(); + + $_SESSION['msg']='La fiche de l\'établissement a été mise à jour.'; + + } + + } + /***************************/ + + }else{ + + $_SESSION['msg']='Le créneau n\'a pas pu être réservé car il n\'est pas disponible.'; + + } + + header('location:agenda-cfa.php?id='.$myIdCap); + exit(); + + //}else{ + + //$_SESSION['msg']='Erreur : CFA Inconnu'; + + //} + + } + + //BLOCAGE OU DEBLOCAGE + if(isset($_POST['myAction']) && ($_POST['myAction']=='BL0' || $_POST['myAction']=='D3B')){ + + foreach($_POST as $cle=>$val){ + $$cle=$val; + //echo $cle.' => '.$val.'
'; + } + + $db = connect_base(); + + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + INNER JOIN agenda ON id_cap = numCap + WHERE id_cap=:id_cap + AND jour=:jour AND creneau=:creneau"; + + $queryRequest0 = $db->prepare( $query ); + $queryRequest0->bindParam( ':id_cap', $myIdCap, PDO::PARAM_INT ); + $queryRequest0->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest0->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest0->execute(); + $count = $queryRequest0->rowCount(); + $data0=$queryRequest0->fetchAll(); + + /*if(empty($count)){ + + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + WHERE id_cap=:id_cap"; + + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + $numEta = $data[0]['num_eta']; + $numCoLy = 0; + if($_POST['myAction']=='BL0') $statut = 'bloque'; else $statut = 'libre'; + $userLastUpdate = 'ref'; + + if(!empty($numEta)){ + $query=" + INSERT INTO agenda (numCap, numCoLy, numEta, jour, creneau, statut, dateLastUpdate,userLastUpdate) + VALUES (:numCap, :numCoLy, :numEta, :jour, :creneau, :statut, '".date('Y-m-d')."',:userLastUpdate)"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':numEta', $numEta, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequest->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR ); + $queryRequest->execute(); + } + + if($statut == 'bloque') $_SESSION['msg']='Le créneau a été bloqué.'; + else $_SESSION['msg']='Le créneau a été débloqué.'; + + }else{*/ + + if(!empty($count)){ + + $msgPlus = ""; + + //Suppression de la réservation si déblocage de créneau + if($data0[0]['numCoLy']>0){ + //echo $data0[0]['num_eta']; + //echo '
';print_r($data0);echo '
'; + $query="DELETE FROM collegelycee WHERE idCoLy=:idCoLy AND chxNumEta=:chxNumEta"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':idCoLy', $data0[0]['numCoLy'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':chxNumEta', $data0[0]['num_eta'], PDO::PARAM_INT ); + $queryRequest->execute(); + + $msgPlus = " Pensez à prévenir cet établissement que sa réservation a été annulée."; + //$data10=$queryRequest->fetchAll(); + //echo '
';print_r($data10);echo '
'; + //exit(); + }; + + $numCoLy = 0; + if($_POST['myAction']=='BL0') $statut = 'bloque'; else $statut = 'libre'; + $userLastUpdate = 'ref'; + + $query=" + UPDATE agenda + SET numCoLy=:numCoLy, statut=:statut, dateLastUpdate='".date('Y-m-d')."',userLastUpdate=:userLastUpdate + WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequest->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR ); + $queryRequest->execute(); + + if($statut == 'bloque') $_SESSION['msg']='Le créneau a été rendu indisponible.'.$msgPlus; + else $_SESSION['msg']='Le créneau a été rendu disponible.'; + + }else $_SESSION['msg']='Le créneau n\'a pas pu être rendu disponible.'; + + header('location:agenda-cfa.php?id='.$myIdCap); + exit(); + + } + +} + +header('location:index.php?err=1'); +exit(); + +?> \ No newline at end of file diff --git a/site/agenda-cfa-form.php b/site/agenda-cfa-form.php new file mode 100644 index 0000000..2ad6dce --- /dev/null +++ b/site/agenda-cfa-form.php @@ -0,0 +1,244 @@ +prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':myIdCap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + $count = $queryRequest->rowCount(); + + if($count!=1){ + header('location:index-cfa.php'); + exit(); + } + + $nom_cap = decrypter($maCleDeCryptage,$data[0]['nom_cap']).' '.decrypter($maCleDeCryptage,$data[0]['prenom_cap']); + + + +//Ajout ou Modification +if(!empty($_POST['idCoLy'])) $idCoLy = $_POST['idCoLy']; else $idCoLy = ""; +$etaCoLy = $nomCoLy = $prenomCoLy = $fonctionCoLy = $telCoLy = $emlCoLy = $adresse1CoLy = $adresse2CoLy = $cpCoLy = $villeCoLy = $nbClasses = $nbEleves = $commentCoLy = ""; + +$btnSub = 'Ajouter'; +$txtIntro = 'Inscription'; + +if(!empty($idCoLy)){ + + $query="select * from collegelycee where idCoLy=:idCoLy"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':idCoLy', $idCoLy, PDO::PARAM_INT ); + $queryRequest->execute(); + $dataCoLy=$queryRequest->fetchAll(); + + $etaCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['etaCoLy']); + $nomCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['nomCoLy']); + $prenomCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['prenomCoLy']); + $fonctionCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['fonctionCoLy']); + $telCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['telCoLy']); + $emlCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['emlCoLy']); + $adresse1CoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['adresse1CoLy']); + $adresse2CoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['adresse2CoLy']); + $cpCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['cpCoLy']); + $villeCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['villeCoLy']); + $nbClasses = $dataCoLy[0]['nbClasses']; + $nbEleves = $dataCoLy[0]['nbEleves']; + $commentCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['commentCoLy']); + + $btnSub = 'Modifier'; + $txtIntro = 'Modification'; +} + +?> + + + + +FAFIH - DECIDAY + + + + + + + + + + + +
+ +
Votre espace Référent
+ +
+ +
+
+ Référent : modifier
+ Déconnexion +
+ + + + +
Formulaire d'inscription
+ +
+ +

d'un collège ou d'un lycée +
+ +
    +
  • Un créneau sera réservé pour l'établissement scolaire
  • +
  • Un email sera envoyé à l'établissement scolaire
  • +
+ +
    + Si vous changez l'email de l'établissement, pensez à en informer le nouveau contact +
+ +
+ +
+ + + + + + +
Etablissement* :

+
Nom* :

+
Prénom* :

+
Fonction* :

+
Ligne Directe* :

+
E-mail* :

+
Adresse 1* :

+
Adresse 2 :

+
Code Postal* :

+
Ville* :

+
Nombre de classes* :

+
Nombre total d'élèves concernés* :

+
Commentaires :


+
+
+ +
+ +
+
+ + + + +
+ + + + + \ No newline at end of file diff --git a/site/agenda-cfa.php b/site/agenda-cfa.php new file mode 100644 index 0000000..8e8ca06 --- /dev/null +++ b/site/agenda-cfa.php @@ -0,0 +1,337 @@ +prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':myIdCap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + $count = $queryRequest->rowCount(); + + if($count!=1){ + header('location:index-cfa.php'); + exit(); + } + + $nom_cap = decrypter($maCleDeCryptage,$data[0]['nom_cap']).' '.decrypter($maCleDeCryptage,$data[0]['prenom_cap']); + + +?> + + + + +FAFIH - DECIDAY + + + + + + + + + + + +
+ +
Votre espace Référent
+ +
+ +
+
+ Référent : modifier
+ Déconnexion +
+ + + + + +
Capitaine
+ +
+ +

Organisez l’agenda de votre capitaine : +
+
    +
  • Sélectionnez jusqu’à 4 créneaux de disponibilité par jour
  • +
  • Suivez les sollicitations des collèges et lycées
  • +
+
+ '; + echo ''; + echo '
Les sollicitations refusées
'; + echo ''; + echo '
'; + + $query="SELECT * FROM sollicitations WHERE idCapitaine=0 AND chxNumEta=:chxNumEta AND traitement=0 ORDER BY chxJour, chxCreneau, dateCreate"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':chxNumEta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $countSol = $queryRequest->rowCount(); + $dataSol = $queryRequest->fetchAll(); + + if($countSol==0){ + echo '
Vous n\'avez aucune sollicitation refusée.
'; + }else{ + + echo ''; + echo ''; + foreach($dataSol as $k => $v){ + $myjourSol = MysqlToDateFr($v['chxJour']); + $mycreneauSol = getCreneauSol($v['chxCreneau']); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + //echo ''; + echo ''; + } + echo '
EtablissementContactLocalisationJourCreneauActions
'.decrypter($maCleDeCryptage,$v['etaCoLy']).''.decrypter($maCleDeCryptage,$v['nomCoLy']).' '.decrypter($maCleDeCryptage,$v['prenomCoLy']).''.decrypter($maCleDeCryptage,$v['cpCoLy']).' '.decrypter($maCleDeCryptage,$v['villeCoLy']).''.$myjourSol.''.$mycreneauSol.'VoirRefuser
'; + + } + + echo '

'; + + //SOLLICITATIONS CAPITAINE + echo ''; + echo '
Les sollicitations en attente
'; + echo ''; + echo '
'; + + $query="SELECT * FROM sollicitations WHERE idCapitaine=:id_cap AND traitement=0 ORDER BY chxJour, chxCreneau, dateCreate"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->execute(); + $countSol = $queryRequest->rowCount(); + $dataSol = $queryRequest->fetchAll(); + + if($countSol==0){ + echo '
Aucune sollicitation en attente.
'; + }else{ + + echo '
'; + echo ''; + foreach($dataSol as $k => $v){ + $myjourSol = MysqlToDateFr($v['chxJour']); + $mycreneauSol = getCreneauSol($v['chxCreneau']); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + //echo ''; + echo ''; + } + echo '
EtablissementContactLocalisationJourCreneauActions
'.decrypter($maCleDeCryptage,$v['etaCoLy']).''.decrypter($maCleDeCryptage,$v['nomCoLy']).' '.decrypter($maCleDeCryptage,$v['prenomCoLy']).''.decrypter($maCleDeCryptage,$v['cpCoLy']).' '.decrypter($maCleDeCryptage,$v['villeCoLy']).''.$myjourSol.''.$mycreneauSol.'VoirRefuser
'; + + } + + echo '

'; + + //AGENDA CAPITAINE + + /* + $arrWeek = array(); + $arrWeek[3] = array('','','','2019-01-17','2019-01-18'); + $arrWeek[4] = array('2019-01-21','2019-01-22','2019-01-23','2019-01-24','2019-01-25'); + $arrWeek[5] = array('2019-01-28','2019-01-29','2019-01-30','2019-01-31','2019-02-01'); + $arrWeek[6] = array('2019-02-04','2019-02-05','2019-02-06','2019-02-07','2019-02-08'); + + $arrDaysWeek = array('lundi','mardi','mercredi','jeudi','vendredi'); + + $arrCreneaux = array('am1','am2','pm1','pm2'); + $arrCreneauxTitle = array('Matin 1','Matin 2','Après-midi 1','Après-midi 2'); + + $theGreatDay = '2019-01-17'; + */ + + echo ''; + echo '
Agenda de votre capitaine
'; + echo ''; + echo '
'; + + include('include/agenda.inc.php'); + + foreach($arrWeek as $kw=>$vw){ + echo '
'."\r\n"; + + echo ''; + + $idDay = 0; + echo ''."\r\n"; + echo ''; + foreach($vw as $vDay){ + if(!empty($vDay)) $th = ''; else $th = ''; + echo $th."\r\n"; + $idDay++; + } + echo ''."\r\n"; + + foreach($arrCreneaux as $kCr => $vCr){ + if($arrCreneaux[$kCr]=="pm1") $isMidDay = ' class="isMidDay"'; else $isMidDay = ''; + echo ''."\r\n"; + echo ''; + foreach($vw as $vDay){ + if(!empty($vDay)){ + + //Un enregistrement existe t'il pour le créneau ? + $query="SELECT * FROM agenda LEFT JOIN collegelycee ON idCoLy=numCoLy WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau + "; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $vDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $arrCreneaux[$kCr], PDO::PARAM_STR ); + $queryRequest->execute(); + $countD = $queryRequest->rowCount(); + $dataD=$queryRequest->fetchAll(); + if($countD>1){ //Erreur Pas possible + $td = ''; + }elseif($countD==1){ + if($dataD[0]['statut']=="bloque"){ + $td = ''; + } + if($dataD[0]['statut']=="libre"){ + $td = ''; + } + if($dataD[0]['statut']=="reserve"){ + $reserve = decrypter($maCleDeCryptage,$dataD[0]['etaCoLy'])."
(".decrypter($maCleDeCryptage,$dataD[0]['cpCoLy'])." ".decrypter($maCleDeCryptage,$dataD[0]['villeCoLy']).") "; + $td = ''; + } + }/*else{ //Créneau vide + + if($vDay==$theGreatDay) $td = ''; else $td = ''; + + }*/ + + }else $td = ''; + echo $td."\r\n"; + } + echo ''."\r\n"; + } + + echo '
Semaine '.$kw.'
 '.$arrDaysWeek[$idDay].'
'.MysqlToDateFr($vDay).'
 
'.$arrCreneauxTitle[$kCr].'Erreur recontrée sur ce créneauIndisponible
Rendre disponible
Disponible
Identifier un rendez-vous
Rendre indisponible
Affecter une sollicitation
'.$reserve.'
Modifier
Rendre indisponible
Libre
Réserver
Bloquer
Bloqué
Débloquer
 
'."\r\n"; + } + + //} + + ?> +
+
+ + + +
+ + + + +
+
+ + + + + +
+
+ + + + +
+
+ + + +
+ +
+ + + + + \ No newline at end of file diff --git a/site/ajouter-jpo.php b/site/ajouter-jpo.php new file mode 100644 index 0000000..f2acb78 --- /dev/null +++ b/site/ajouter-jpo.php @@ -0,0 +1,112 @@ +prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + +?> + + + + +FAFIH - DECIDAY + + + + + + + + + + + + + + +
+ + +
Votre espace référent
+ +
+ +
+
+ + +
+ Référent : modifier
+ Déconnexion
+ + + + + +
Ajouter une Journée Portes Ouvertes
+ +
+ +

En qualité de référent de votre établissement, vous avez la possibilité d'ajouter une ou plusieurs journées portes ouvertes en renseignant le champs ci-desous. +
+
+ +
+
+
+ +

+ + + + +
+ +
+
+
+
+
+ +
+
+
+
+ + + + + \ No newline at end of file diff --git a/site/ajouter-ref.php b/site/ajouter-ref.php new file mode 100644 index 0000000..a5f206d --- /dev/null +++ b/site/ajouter-ref.php @@ -0,0 +1,123 @@ +prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + +?> + + + + +FAFIH - DECIDAY + + + + + + + + + + + +
+ + +
Votre espace référent
+ +
+ +
+
+ + +
+ Référent : modifier
+ Déconnexion
+ + + + + +
Créer un trinôme
+ +
+ +

En qualité de référent de votre établissement, vous avez la possibilité de créer un ou plusieurs trinômes. Pour cela, merci d’identifier ici un capitaine de trinôme. Il est le représentant de votre établissement qui interviendra en collège/lycée. Le capitaine recevra un email de confirmation qui lui permettra de se connecter à son espace pour : +
+
    +
  • identifier les membres de son trinôme : apprenant et professionnel
  • +
  • accéder à la boîte à outils Deciday !
  • +
  • organiser son agenda.
  • +
+
+
+ +
+ +
Nom :
+
+
Prénom :
+
+
Email :
+
+ + +
+ +
+
+ + + + + \ No newline at end of file diff --git a/site/bao-all.php b/site/bao-all.php new file mode 100644 index 0000000..22e728d --- /dev/null +++ b/site/bao-all.php @@ -0,0 +1,123 @@ + + + + + +FAFIH - DECIDAY + + + + + + + + + + + +
+ +
Accès Consultation
+ +
+ + + + + + +
Boite à outils
+ +
+ +

Déployez Deciday ! grâce aux ressources mises à votre disposition
+

+ +
Recrutement des collèges et Lycées
+ $v){ + echo ''.$v['title'].'
'; + } + + ?> +
Guide
+ $v){ + echo ''.$v['title'].'
'; + } + ?> +
Les affiches
+ $v){ + echo ''.$v['title'].'
'; + } + ?> +
Kit pédagogique pour les collèges et lycées
+ $v){ + echo ''.$v['title'].'
'; + } + + $tFilesBao = listFilesBao('kitPedago', 1); + foreach($tFilesBao as $k=>$v){ + echo ''.$v['title'].'
'; + } + + ?> +
Kit d’animation du trinôme
+ $v){ + echo ''.$v['title'].'
'; + } + ?> + +
+
+ +
+ + + + + + \ No newline at end of file diff --git a/site/bao-cap.php b/site/bao-cap.php new file mode 100644 index 0000000..41bdca1 --- /dev/null +++ b/site/bao-cap.php @@ -0,0 +1,157 @@ +prepare( $query ); +$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +$capitaine=decrypter($maCleDeCryptage,$data[0]['prenom_cap'])." ".decrypter($maCleDeCryptage,$data[0]['nom_cap']); + +// Récupération des sollicitations pour vérifier si au moins 1 RDV pour afficher les ressources pédagogique +$q="SELECT statut FROM agenda WHERE numCap=:id_cap"; +$db2 = connect_base(); +$qR = $db2->prepare($q); +$qR->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); +$qR->execute(); +$creneauxCount = $qR->rowCount(); +$creneauxData = $qR->fetchAll(); +$rdv = 0; +if ($creneauxCount>0 ) { + foreach($creneauxData as $key => $value){ + if($value['statut'] == "reserve") $rdv++; + } +} +?> + + + + +FAFIH - DECIDAY + + + + + + + + + + + +
+ +
Votre espace Capitaine
+ +
+ +
+
+ Capitaine : modifier
+ Déconnexion +
+ + + + +
Boite à outils
+ +
+ +

Déployez Deciday ! grâce aux ressources mises à votre disposition
+ NB : certaines ressources sont accessibles uniquement lorsque au moins un rendez-vous est pris dans votre agenda.

+ +
Recrutement des collèges et Lycées
+ $v){ + echo ''.$v['title'].'
'; + } + + ?> +
Guide
+ $v){ + echo ''.$v['title'].'
'; + } + ?> +
Les affiches
+ $v){ + echo ''.$v['title'].'
'; + } + ?> +
Kit pédagogique pour les collèges et lycées
+ $v){ + echo ''.$v['title'].'
'; + } + // Si au moins 1 RDV : Affichage des liens vers les kits pédagoqiques de niveau 2 + if($rdv>0) { + $tFilesBao = listFilesBao('kitPedago', 1); + foreach($tFilesBao as $k=>$v){ + echo ''.$v['title'].'
'; + } + } + ?> +
Kit d’animation du trinôme
+ 0) { + $tFilesBao = listFilesBao('kitAnim', 1); + foreach($tFilesBao as $k=>$v){ + echo ''.$v['title'].'
'; + } + } else { + echo '

'; + } + ?> + + + +
+
+ +
+ + + + + \ No newline at end of file diff --git a/site/bao-cfa.php b/site/bao-cfa.php new file mode 100644 index 0000000..9180177 --- /dev/null +++ b/site/bao-cfa.php @@ -0,0 +1,168 @@ + prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + + $nbTrinomes = $queryRequest->rowCount(); + + // Récupération des sollicitations pour vérifier si au moins 1 RDV pour afficher les ressources pédagogique + $q="SELECT `statut` + FROM `agenda` + WHERE `numEta`=:num_eta"; + $db2 = connect_base(); + $qR = $db2->prepare($q); + $qR->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $qR->execute(); + $creneauxCount = $qR->rowCount(); + $creneauxData = $qR->fetchAll(); + $rdv = 0; + if ($creneauxCount>0 ) { + foreach($creneauxData as $key => $value){ + if($value['statut'] == "reserve") $rdv++; + } + } +?> + + + + +FAFIH - DECIDAY + + + + + + + + + + + +
+ +
Votre espace Référent
+ +
+ +
+
+ + +
+ Référent : modifier
+ Déconnexion
+ + + + + +
Boite à outils
+ +
+ +

Déployez Deciday ! grâce aux ressources mises à votre disposition
+ NB : certaines ressources sont accessibles uniquement lorsque au moins l’un de vos trinômes a un rendez-vous pris dans son agenda.

+ +
Recrutement des collèges et Lycées
+ $v){ + echo ''.$v['title'].'
'; + } + + ?> +
Guide
+ $v){ + echo ''.$v['title'].'
'; + } + ?> +
Les affiches
+ $v){ + echo ''.$v['title'].'
'; + } + ?> +
Kit pédagogique pour les collèges et lycées
+ $v){ + echo ''.$v['title'].'
'; + } + // Si au moins 1 RDV : Affichage des liens vers les kits pédagoqiques de niveau 2 + if($rdv>0) { + $tFilesBao = listFilesBao('kitPedago', 1); + foreach($tFilesBao as $k=>$v){ + echo ''.$v['title'].'
'; + } + } + ?> +
Kit d’animation du trinôme
+ 0) { + $tFilesBao = listFilesBao('kitAnim', 1); + foreach($tFilesBao as $k=>$v){ + echo ''.$v['title'].'
'; + } + } else { + echo '

'; + } + ?> + + + +
+
+ +
+ + + + + + \ No newline at end of file diff --git a/site/boite-outils/Affiche_deciday_2019_cfa.pdf b/site/boite-outils/Affiche_deciday_2019_cfa.pdf new file mode 100644 index 0000000..fda1358 Binary files /dev/null and b/site/boite-outils/Affiche_deciday_2019_cfa.pdf differ diff --git a/site/boite-outils/Affiche_deciday_2019_lycees_pro.pdf b/site/boite-outils/Affiche_deciday_2019_lycees_pro.pdf new file mode 100644 index 0000000..98b0b2a Binary files /dev/null and b/site/boite-outils/Affiche_deciday_2019_lycees_pro.pdf differ diff --git a/site/boite-outils/Affiche_deciday_2019_professionnels.pdf b/site/boite-outils/Affiche_deciday_2019_professionnels.pdf new file mode 100644 index 0000000..805ddf2 Binary files /dev/null and b/site/boite-outils/Affiche_deciday_2019_professionnels.pdf differ diff --git a/site/boite-outils/Guide-Deciday-2018.pdf b/site/boite-outils/Guide-Deciday-2018.pdf new file mode 100644 index 0000000..9d93c67 Binary files /dev/null and b/site/boite-outils/Guide-Deciday-2018.pdf differ diff --git a/site/boite-outils/Guide-communication-CFA-LP.pdf b/site/boite-outils/Guide-communication-CFA-LP.pdf new file mode 100644 index 0000000..98275ae Binary files /dev/null and b/site/boite-outils/Guide-communication-CFA-LP.pdf differ diff --git a/site/boite-outils/Kit_d_animation_Fiches_pratiques_Deciday.pdf b/site/boite-outils/Kit_d_animation_Fiches_pratiques_Deciday.pdf new file mode 100644 index 0000000..15260ce Binary files /dev/null and b/site/boite-outils/Kit_d_animation_Fiches_pratiques_Deciday.pdf differ diff --git a/site/boite-outils/Kit_d_animation_Presentation_Deciday.pdf b/site/boite-outils/Kit_d_animation_Presentation_Deciday.pdf new file mode 100644 index 0000000..940d007 Binary files /dev/null and b/site/boite-outils/Kit_d_animation_Presentation_Deciday.pdf differ diff --git a/site/boite-outils/Kit_d_animation_Presentation_Deciday_v2.pdf b/site/boite-outils/Kit_d_animation_Presentation_Deciday_v2.pdf new file mode 100644 index 0000000..940d007 Binary files /dev/null and b/site/boite-outils/Kit_d_animation_Presentation_Deciday_v2.pdf differ diff --git a/site/boite-outils/Kit_pedagogique_colleges_et_lycees_guide_deciday_eleves_2018.pdf b/site/boite-outils/Kit_pedagogique_colleges_et_lycees_guide_deciday_eleves_2018.pdf new file mode 100644 index 0000000..1613494 Binary files /dev/null and b/site/boite-outils/Kit_pedagogique_colleges_et_lycees_guide_deciday_eleves_2018.pdf differ diff --git a/site/boite-outils/Kit_pedagogique_colleges_et_lycees_guide_deciday_enseignants_2018.pdf b/site/boite-outils/Kit_pedagogique_colleges_et_lycees_guide_deciday_enseignants_2018.pdf new file mode 100644 index 0000000..93d2175 Binary files /dev/null and b/site/boite-outils/Kit_pedagogique_colleges_et_lycees_guide_deciday_enseignants_2018.pdf differ diff --git a/site/boite-outils/Kit_pedagogique_colleges_et_lycees_guide_poster.pdf b/site/boite-outils/Kit_pedagogique_colleges_et_lycees_guide_poster.pdf new file mode 100644 index 0000000..fce108d Binary files /dev/null and b/site/boite-outils/Kit_pedagogique_colleges_et_lycees_guide_poster.pdf differ diff --git a/site/boite-outils/Mail_pour_colleges_et_lycees.docx b/site/boite-outils/Mail_pour_colleges_et_lycees.docx new file mode 100644 index 0000000..c665058 Binary files /dev/null and b/site/boite-outils/Mail_pour_colleges_et_lycees.docx differ diff --git a/site/boite-outils/Presentation_Deciday_pour_les_acteurs.pdf b/site/boite-outils/Presentation_Deciday_pour_les_acteurs.pdf new file mode 100644 index 0000000..571e2c0 Binary files /dev/null and b/site/boite-outils/Presentation_Deciday_pour_les_acteurs.pdf differ diff --git a/site/boite-outils/_notes/dwsync.xml b/site/boite-outils/_notes/dwsync.xml new file mode 100644 index 0000000..dc4651d --- /dev/null +++ b/site/boite-outils/_notes/dwsync.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/site/boite-outils/fiches_pratiques_2019.pdf b/site/boite-outils/fiches_pratiques_2019.pdf new file mode 100644 index 0000000..15260ce Binary files /dev/null and b/site/boite-outils/fiches_pratiques_2019.pdf differ diff --git a/site/carte-eta.php b/site/carte-eta.php new file mode 100644 index 0000000..fd5f543 --- /dev/null +++ b/site/carte-eta.php @@ -0,0 +1,203 @@ +$vw){ + foreach($vw as $vDay){ + if(!empty($vDay)){ + $tabDate[]=$vDay; + } + } +} + +if(isset($_GET['filtreCarte']) && !empty($_GET['filtreCarte']) && in_array($_GET['filtreCarte'],$tabDate)){ + $current_date=$_GET['filtreCarte']; +}else $current_date='all'; + +$query="select * from eta where lat!='' and lon!=''"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); + +$info=array(); + + +foreach($data as $cle=>$val){ + $query="select * from capitaines where num_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){; + $info[$val['id_eta']]['nom']=decrypter($maCleDeCryptage,$val['nom_eta']); + $info[$val['id_eta']]['adresse']=decrypter($maCleDeCryptage,$val['adresse1']); + $info[$val['id_eta']]['cp']=decrypter($maCleDeCryptage,$val['cp']); + $info[$val['id_eta']]['ville']=decrypter($maCleDeCryptage,$val['ville']); + $info[$val['id_eta']]['lat']=$val['lat']; + $info[$val['id_eta']]['lon']=$val['lon']; + foreach($arrWeek as $kw=>$vw){ + foreach($vw as $vDay){ + if(!empty($vDay)){ + $info[$val['id_eta']][$vDay] = 0; + } + } + } + } +} +$query="select * from agenda where statut='libre'"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +foreach($data as $cle=>$val){ + $info[$val['numEta']][$val['jour']]++; +} + + +foreach($info as $cle=>$val){ + foreach($arrWeek as $kw=>$vw){ + foreach($vw as $vDay){ + if(!empty($vDay)){ + if($val[$vDay]>0) $info[$cle]['all']=1; + } + } + } + if(!isset($info[$cle]['all'])) $info[$cle]['all']=0; +} +?> + + + + + + + + + + + FAFIH + + + + + +
+ +
+ +

+ +
UNE JOURNÉE NATIONALE POUR DÉCOUVRIR +un métier et se préparer un avenir +
+ +
+
+
+
Filtrer sur une date :
+ +
+
+
+
+ +
+
+ + +
+ + + \ No newline at end of file diff --git a/site/cdb.php b/site/cdb.php new file mode 100644 index 0000000..d16d406 --- /dev/null +++ b/site/cdb.php @@ -0,0 +1,9 @@ +$vw){ + foreach($vw as $vDay){ + if(!empty($vDay)){ + $tabDate[]=$vDay; + } + } +} + +if(isset($_GET['filtreCarte']) && !empty($_GET['filtreCarte']) && in_array($_GET['filtreCarte'],$tabDate)){ + $current_date=$_GET['filtreCarte']; +}else $current_date='all'; + +// Ne pas affiché PVNET (399) sur la carte +$query="select * from eta where lat!='' and lon!='' and id_eta <> 399"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); + +$info=array(); + + +foreach($data as $cle=>$val){ + $query="select * from capitaines where num_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){; + $info[$val['id_eta']]['nom']=decrypter($maCleDeCryptage,$val['nom_eta']); + $info[$val['id_eta']]['adresse']=decrypter($maCleDeCryptage,$val['adresse1']); + $info[$val['id_eta']]['cp']=decrypter($maCleDeCryptage,$val['cp']); + $info[$val['id_eta']]['ville']=decrypter($maCleDeCryptage,$val['ville']); + $info[$val['id_eta']]['lat']=$val['lat']; + $info[$val['id_eta']]['lon']=$val['lon']; + foreach($arrWeek as $kw=>$vw){ + foreach($vw as $vDay){ + if(!empty($vDay)){ + $info[$val['id_eta']][$vDay] = 0; + } + } + } + } +} +$query="select * from agenda where statut='libre'"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +foreach($data as $cle=>$val){ + $info[$val['numEta']][$val['jour']]++; +} + + +foreach($info as $cle=>$val){ + foreach($arrWeek as $kw=>$vw){ + foreach($vw as $vDay){ + if(!empty($vDay)){ + if($val[$vDay]>0) $info[$cle]['all']=1; + } + } + } + if(!isset($info[$cle]['all'])) $info[$cle]['all']=0; +} +?> + + + + + + + + + + + + Deciday! + + + + + + + +
+ +
+

+ +
Deciday! 17 janvier 2019 :
+ +
+
+

une journée nationale pour découvrir des métiers et se préparer un avenir

+
+
+

L’objectif de Deciday! est d’accompagner les élèves de troisième et de seconde dans la construction de leur projet professionnel en leur faisant découvrir la richesse des métiers et des parcours de l’hôtellerie, de la restauration, des loisirs et des activités du tourisme.

+ +
+
+
+ +
+ + +

Accueillir Deciday! dans votre établissement scolaire
Dans votre collège et lycée, un trio constitué d’un apprenant, d’un professionnel et d’un enseignant (en CFA ou en lycée professionnel), présentera, une heure durant, les différents métiers, établissements et formations du CAP au Master 2, du secteur. Un rendez-vous conçu pour être pédagogique mais également… ludique !

+
+
+
+ +
+ +
+ Accueillez Déciday! dans votre établissement +
+ +
+

Découvrez les CFA et lycées professionnels proches de votre établissement scolaire :

+

EN SOLLICITANT UN ETABLISSEMENT, UN KIT PEDAGOGIQUE PERMETTANT DE PREPARER, AVEC VOTRE CLASSE, L’ARRIVEE D’UN TRINOME VOUS SERA ENVOYE

+
+ + +
+
+
Filtrer sur une date :
+ +
+
+
+ +
+
+ + +
+
+ + + + \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel.php b/site/config/PHPExcel-1.8/Classes/PHPExcel.php new file mode 100644 index 0000000..b8dbe0e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel.php @@ -0,0 +1,1153 @@ +hasMacros; + } + + /** + * Define if a workbook has macros + * + * @param boolean $hasMacros true|false + */ + public function setHasMacros($hasMacros = false) + { + $this->hasMacros = (bool) $hasMacros; + } + + /** + * Set the macros code + * + * @param string $MacrosCode string|null + */ + public function setMacrosCode($MacrosCode = null) + { + $this->macrosCode=$MacrosCode; + $this->setHasMacros(!is_null($MacrosCode)); + } + + /** + * Return the macros code + * + * @return string|null + */ + public function getMacrosCode() + { + return $this->macrosCode; + } + + /** + * Set the macros certificate + * + * @param string|null $Certificate + */ + public function setMacrosCertificate($Certificate = null) + { + $this->macrosCertificate=$Certificate; + } + + /** + * Is the project signed ? + * + * @return boolean true|false + */ + public function hasMacrosCertificate() + { + return !is_null($this->macrosCertificate); + } + + /** + * Return the macros certificate + * + * @return string|null + */ + public function getMacrosCertificate() + { + return $this->macrosCertificate; + } + + /** + * Remove all macros, certificate from spreadsheet + * + */ + public function discardMacros() + { + $this->hasMacros=false; + $this->macrosCode=null; + $this->macrosCertificate=null; + } + + /** + * set ribbon XML data + * + */ + public function setRibbonXMLData($Target = null, $XMLData = null) + { + if (!is_null($Target) && !is_null($XMLData)) { + $this->ribbonXMLData = array('target' => $Target, 'data' => $XMLData); + } else { + $this->ribbonXMLData = null; + } + } + + /** + * retrieve ribbon XML Data + * + * return string|null|array + */ + public function getRibbonXMLData($What = 'all') //we need some constants here... + { + $ReturnData = null; + $What = strtolower($What); + switch ($What){ + case 'all': + $ReturnData = $this->ribbonXMLData; + break; + case 'target': + case 'data': + if (is_array($this->ribbonXMLData) && array_key_exists($What, $this->ribbonXMLData)) { + $ReturnData = $this->ribbonXMLData[$What]; + } + break; + } + + return $ReturnData; + } + + /** + * store binaries ribbon objects (pictures) + * + */ + public function setRibbonBinObjects($BinObjectsNames = null, $BinObjectsData = null) + { + if (!is_null($BinObjectsNames) && !is_null($BinObjectsData)) { + $this->ribbonBinObjects = array('names' => $BinObjectsNames, 'data' => $BinObjectsData); + } else { + $this->ribbonBinObjects = null; + } + } + /** + * return the extension of a filename. Internal use for a array_map callback (php<5.3 don't like lambda function) + * + */ + private function getExtensionOnly($ThePath) + { + return pathinfo($ThePath, PATHINFO_EXTENSION); + } + + /** + * retrieve Binaries Ribbon Objects + * + */ + public function getRibbonBinObjects($What = 'all') + { + $ReturnData = null; + $What = strtolower($What); + switch($What) { + case 'all': + return $this->ribbonBinObjects; + break; + case 'names': + case 'data': + if (is_array($this->ribbonBinObjects) && array_key_exists($What, $this->ribbonBinObjects)) { + $ReturnData=$this->ribbonBinObjects[$What]; + } + break; + case 'types': + if (is_array($this->ribbonBinObjects) && + array_key_exists('data', $this->ribbonBinObjects) && is_array($this->ribbonBinObjects['data'])) { + $tmpTypes=array_keys($this->ribbonBinObjects['data']); + $ReturnData = array_unique(array_map(array($this, 'getExtensionOnly'), $tmpTypes)); + } else { + $ReturnData=array(); // the caller want an array... not null if empty + } + break; + } + return $ReturnData; + } + + /** + * This workbook have a custom UI ? + * + * @return boolean true|false + */ + public function hasRibbon() + { + return !is_null($this->ribbonXMLData); + } + + /** + * This workbook have additionnal object for the ribbon ? + * + * @return boolean true|false + */ + public function hasRibbonBinObjects() + { + return !is_null($this->ribbonBinObjects); + } + + /** + * Check if a sheet with a specified code name already exists + * + * @param string $pSheetCodeName Name of the worksheet to check + * @return boolean + */ + public function sheetCodeNameExists($pSheetCodeName) + { + return ($this->getSheetByCodeName($pSheetCodeName) !== null); + } + + /** + * Get sheet by code name. Warning : sheet don't have always a code name ! + * + * @param string $pName Sheet name + * @return PHPExcel_Worksheet + */ + public function getSheetByCodeName($pName = '') + { + $worksheetCount = count($this->workSheetCollection); + for ($i = 0; $i < $worksheetCount; ++$i) { + if ($this->workSheetCollection[$i]->getCodeName() == $pName) { + return $this->workSheetCollection[$i]; + } + } + + return null; + } + + /** + * Create a new PHPExcel with one Worksheet + */ + public function __construct() + { + $this->uniqueID = uniqid(); + $this->calculationEngine = new PHPExcel_Calculation($this); + + // Initialise worksheet collection and add one worksheet + $this->workSheetCollection = array(); + $this->workSheetCollection[] = new PHPExcel_Worksheet($this); + $this->activeSheetIndex = 0; + + // Create document properties + $this->properties = new PHPExcel_DocumentProperties(); + + // Create document security + $this->security = new PHPExcel_DocumentSecurity(); + + // Set named ranges + $this->namedRanges = array(); + + // Create the cellXf supervisor + $this->cellXfSupervisor = new PHPExcel_Style(true); + $this->cellXfSupervisor->bindParent($this); + + // Create the default style + $this->addCellXf(new PHPExcel_Style); + $this->addCellStyleXf(new PHPExcel_Style); + } + + /** + * Code to execute when this worksheet is unset() + * + */ + public function __destruct() + { + $this->calculationEngine = null; + $this->disconnectWorksheets(); + } + + /** + * Disconnect all worksheets from this PHPExcel workbook object, + * typically so that the PHPExcel object can be unset + * + */ + public function disconnectWorksheets() + { + $worksheet = null; + foreach ($this->workSheetCollection as $k => &$worksheet) { + $worksheet->disconnectCells(); + $this->workSheetCollection[$k] = null; + } + unset($worksheet); + $this->workSheetCollection = array(); + } + + /** + * Return the calculation engine for this worksheet + * + * @return PHPExcel_Calculation + */ + public function getCalculationEngine() + { + return $this->calculationEngine; + } // function getCellCacheController() + + /** + * Get properties + * + * @return PHPExcel_DocumentProperties + */ + public function getProperties() + { + return $this->properties; + } + + /** + * Set properties + * + * @param PHPExcel_DocumentProperties $pValue + */ + public function setProperties(PHPExcel_DocumentProperties $pValue) + { + $this->properties = $pValue; + } + + /** + * Get security + * + * @return PHPExcel_DocumentSecurity + */ + public function getSecurity() + { + return $this->security; + } + + /** + * Set security + * + * @param PHPExcel_DocumentSecurity $pValue + */ + public function setSecurity(PHPExcel_DocumentSecurity $pValue) + { + $this->security = $pValue; + } + + /** + * Get active sheet + * + * @return PHPExcel_Worksheet + * + * @throws PHPExcel_Exception + */ + public function getActiveSheet() + { + return $this->getSheet($this->activeSheetIndex); + } + + /** + * Create sheet and add it to this workbook + * + * @param int|null $iSheetIndex Index where sheet should go (0,1,..., or null for last) + * @return PHPExcel_Worksheet + * @throws PHPExcel_Exception + */ + public function createSheet($iSheetIndex = null) + { + $newSheet = new PHPExcel_Worksheet($this); + $this->addSheet($newSheet, $iSheetIndex); + return $newSheet; + } + + /** + * Check if a sheet with a specified name already exists + * + * @param string $pSheetName Name of the worksheet to check + * @return boolean + */ + public function sheetNameExists($pSheetName) + { + return ($this->getSheetByName($pSheetName) !== null); + } + + /** + * Add sheet + * + * @param PHPExcel_Worksheet $pSheet + * @param int|null $iSheetIndex Index where sheet should go (0,1,..., or null for last) + * @return PHPExcel_Worksheet + * @throws PHPExcel_Exception + */ + public function addSheet(PHPExcel_Worksheet $pSheet, $iSheetIndex = null) + { + if ($this->sheetNameExists($pSheet->getTitle())) { + throw new PHPExcel_Exception( + "Workbook already contains a worksheet named '{$pSheet->getTitle()}'. Rename this worksheet first." + ); + } + + if ($iSheetIndex === null) { + if ($this->activeSheetIndex < 0) { + $this->activeSheetIndex = 0; + } + $this->workSheetCollection[] = $pSheet; + } else { + // Insert the sheet at the requested index + array_splice( + $this->workSheetCollection, + $iSheetIndex, + 0, + array($pSheet) + ); + + // Adjust active sheet index if necessary + if ($this->activeSheetIndex >= $iSheetIndex) { + ++$this->activeSheetIndex; + } + } + + if ($pSheet->getParent() === null) { + $pSheet->rebindParent($this); + } + + return $pSheet; + } + + /** + * Remove sheet by index + * + * @param int $pIndex Active sheet index + * @throws PHPExcel_Exception + */ + public function removeSheetByIndex($pIndex = 0) + { + + $numSheets = count($this->workSheetCollection); + if ($pIndex > $numSheets - 1) { + throw new PHPExcel_Exception( + "You tried to remove a sheet by the out of bounds index: {$pIndex}. The actual number of sheets is {$numSheets}." + ); + } else { + array_splice($this->workSheetCollection, $pIndex, 1); + } + // Adjust active sheet index if necessary + if (($this->activeSheetIndex >= $pIndex) && + ($pIndex > count($this->workSheetCollection) - 1)) { + --$this->activeSheetIndex; + } + + } + + /** + * Get sheet by index + * + * @param int $pIndex Sheet index + * @return PHPExcel_Worksheet + * @throws PHPExcel_Exception + */ + public function getSheet($pIndex = 0) + { + if (!isset($this->workSheetCollection[$pIndex])) { + $numSheets = $this->getSheetCount(); + throw new PHPExcel_Exception( + "Your requested sheet index: {$pIndex} is out of bounds. The actual number of sheets is {$numSheets}." + ); + } + + return $this->workSheetCollection[$pIndex]; + } + + /** + * Get all sheets + * + * @return PHPExcel_Worksheet[] + */ + public function getAllSheets() + { + return $this->workSheetCollection; + } + + /** + * Get sheet by name + * + * @param string $pName Sheet name + * @return PHPExcel_Worksheet + */ + public function getSheetByName($pName = '') + { + $worksheetCount = count($this->workSheetCollection); + for ($i = 0; $i < $worksheetCount; ++$i) { + if ($this->workSheetCollection[$i]->getTitle() === $pName) { + return $this->workSheetCollection[$i]; + } + } + + return null; + } + + /** + * Get index for sheet + * + * @param PHPExcel_Worksheet $pSheet + * @return int Sheet index + * @throws PHPExcel_Exception + */ + public function getIndex(PHPExcel_Worksheet $pSheet) + { + foreach ($this->workSheetCollection as $key => $value) { + if ($value->getHashCode() == $pSheet->getHashCode()) { + return $key; + } + } + + throw new PHPExcel_Exception("Sheet does not exist."); + } + + /** + * Set index for sheet by sheet name. + * + * @param string $sheetName Sheet name to modify index for + * @param int $newIndex New index for the sheet + * @return int New sheet index + * @throws PHPExcel_Exception + */ + public function setIndexByName($sheetName, $newIndex) + { + $oldIndex = $this->getIndex($this->getSheetByName($sheetName)); + $pSheet = array_splice( + $this->workSheetCollection, + $oldIndex, + 1 + ); + array_splice( + $this->workSheetCollection, + $newIndex, + 0, + $pSheet + ); + return $newIndex; + } + + /** + * Get sheet count + * + * @return int + */ + public function getSheetCount() + { + return count($this->workSheetCollection); + } + + /** + * Get active sheet index + * + * @return int Active sheet index + */ + public function getActiveSheetIndex() + { + return $this->activeSheetIndex; + } + + /** + * Set active sheet index + * + * @param int $pIndex Active sheet index + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function setActiveSheetIndex($pIndex = 0) + { + $numSheets = count($this->workSheetCollection); + + if ($pIndex > $numSheets - 1) { + throw new PHPExcel_Exception( + "You tried to set a sheet active by the out of bounds index: {$pIndex}. The actual number of sheets is {$numSheets}." + ); + } else { + $this->activeSheetIndex = $pIndex; + } + return $this->getActiveSheet(); + } + + /** + * Set active sheet index by name + * + * @param string $pValue Sheet title + * @return PHPExcel_Worksheet + * @throws PHPExcel_Exception + */ + public function setActiveSheetIndexByName($pValue = '') + { + if (($worksheet = $this->getSheetByName($pValue)) instanceof PHPExcel_Worksheet) { + $this->setActiveSheetIndex($this->getIndex($worksheet)); + return $worksheet; + } + + throw new PHPExcel_Exception('Workbook does not contain sheet:' . $pValue); + } + + /** + * Get sheet names + * + * @return string[] + */ + public function getSheetNames() + { + $returnValue = array(); + $worksheetCount = $this->getSheetCount(); + for ($i = 0; $i < $worksheetCount; ++$i) { + $returnValue[] = $this->getSheet($i)->getTitle(); + } + + return $returnValue; + } + + /** + * Add external sheet + * + * @param PHPExcel_Worksheet $pSheet External sheet to add + * @param int|null $iSheetIndex Index where sheet should go (0,1,..., or null for last) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function addExternalSheet(PHPExcel_Worksheet $pSheet, $iSheetIndex = null) + { + if ($this->sheetNameExists($pSheet->getTitle())) { + throw new PHPExcel_Exception("Workbook already contains a worksheet named '{$pSheet->getTitle()}'. Rename the external sheet first."); + } + + // count how many cellXfs there are in this workbook currently, we will need this below + $countCellXfs = count($this->cellXfCollection); + + // copy all the shared cellXfs from the external workbook and append them to the current + foreach ($pSheet->getParent()->getCellXfCollection() as $cellXf) { + $this->addCellXf(clone $cellXf); + } + + // move sheet to this workbook + $pSheet->rebindParent($this); + + // update the cellXfs + foreach ($pSheet->getCellCollection(false) as $cellID) { + $cell = $pSheet->getCell($cellID); + $cell->setXfIndex($cell->getXfIndex() + $countCellXfs); + } + + return $this->addSheet($pSheet, $iSheetIndex); + } + + /** + * Get named ranges + * + * @return PHPExcel_NamedRange[] + */ + public function getNamedRanges() + { + return $this->namedRanges; + } + + /** + * Add named range + * + * @param PHPExcel_NamedRange $namedRange + * @return boolean + */ + public function addNamedRange(PHPExcel_NamedRange $namedRange) + { + if ($namedRange->getScope() == null) { + // global scope + $this->namedRanges[$namedRange->getName()] = $namedRange; + } else { + // local scope + $this->namedRanges[$namedRange->getScope()->getTitle().'!'.$namedRange->getName()] = $namedRange; + } + return true; + } + + /** + * Get named range + * + * @param string $namedRange + * @param PHPExcel_Worksheet|null $pSheet Scope. Use null for global scope + * @return PHPExcel_NamedRange|null + */ + public function getNamedRange($namedRange, PHPExcel_Worksheet $pSheet = null) + { + $returnValue = null; + + if ($namedRange != '' && ($namedRange !== null)) { + // first look for global defined name + if (isset($this->namedRanges[$namedRange])) { + $returnValue = $this->namedRanges[$namedRange]; + } + + // then look for local defined name (has priority over global defined name if both names exist) + if (($pSheet !== null) && isset($this->namedRanges[$pSheet->getTitle() . '!' . $namedRange])) { + $returnValue = $this->namedRanges[$pSheet->getTitle() . '!' . $namedRange]; + } + } + + return $returnValue; + } + + /** + * Remove named range + * + * @param string $namedRange + * @param PHPExcel_Worksheet|null $pSheet Scope: use null for global scope. + * @return PHPExcel + */ + public function removeNamedRange($namedRange, PHPExcel_Worksheet $pSheet = null) + { + if ($pSheet === null) { + if (isset($this->namedRanges[$namedRange])) { + unset($this->namedRanges[$namedRange]); + } + } else { + if (isset($this->namedRanges[$pSheet->getTitle() . '!' . $namedRange])) { + unset($this->namedRanges[$pSheet->getTitle() . '!' . $namedRange]); + } + } + return $this; + } + + /** + * Get worksheet iterator + * + * @return PHPExcel_WorksheetIterator + */ + public function getWorksheetIterator() + { + return new PHPExcel_WorksheetIterator($this); + } + + /** + * Copy workbook (!= clone!) + * + * @return PHPExcel + */ + public function copy() + { + $copied = clone $this; + + $worksheetCount = count($this->workSheetCollection); + for ($i = 0; $i < $worksheetCount; ++$i) { + $this->workSheetCollection[$i] = $this->workSheetCollection[$i]->copy(); + $this->workSheetCollection[$i]->rebindParent($this); + } + + return $copied; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + foreach ($this as $key => $val) { + if (is_object($val) || (is_array($val))) { + $this->{$key} = unserialize(serialize($val)); + } + } + } + + /** + * Get the workbook collection of cellXfs + * + * @return PHPExcel_Style[] + */ + public function getCellXfCollection() + { + return $this->cellXfCollection; + } + + /** + * Get cellXf by index + * + * @param int $pIndex + * @return PHPExcel_Style + */ + public function getCellXfByIndex($pIndex = 0) + { + return $this->cellXfCollection[$pIndex]; + } + + /** + * Get cellXf by hash code + * + * @param string $pValue + * @return PHPExcel_Style|boolean False if no match found + */ + public function getCellXfByHashCode($pValue = '') + { + foreach ($this->cellXfCollection as $cellXf) { + if ($cellXf->getHashCode() == $pValue) { + return $cellXf; + } + } + return false; + } + + /** + * Check if style exists in style collection + * + * @param PHPExcel_Style $pCellStyle + * @return boolean + */ + public function cellXfExists($pCellStyle = null) + { + return in_array($pCellStyle, $this->cellXfCollection, true); + } + + /** + * Get default style + * + * @return PHPExcel_Style + * @throws PHPExcel_Exception + */ + public function getDefaultStyle() + { + if (isset($this->cellXfCollection[0])) { + return $this->cellXfCollection[0]; + } + throw new PHPExcel_Exception('No default style found for this workbook'); + } + + /** + * Add a cellXf to the workbook + * + * @param PHPExcel_Style $style + */ + public function addCellXf(PHPExcel_Style $style) + { + $this->cellXfCollection[] = $style; + $style->setIndex(count($this->cellXfCollection) - 1); + } + + /** + * Remove cellXf by index. It is ensured that all cells get their xf index updated. + * + * @param integer $pIndex Index to cellXf + * @throws PHPExcel_Exception + */ + public function removeCellXfByIndex($pIndex = 0) + { + if ($pIndex > count($this->cellXfCollection) - 1) { + throw new PHPExcel_Exception("CellXf index is out of bounds."); + } else { + // first remove the cellXf + array_splice($this->cellXfCollection, $pIndex, 1); + + // then update cellXf indexes for cells + foreach ($this->workSheetCollection as $worksheet) { + foreach ($worksheet->getCellCollection(false) as $cellID) { + $cell = $worksheet->getCell($cellID); + $xfIndex = $cell->getXfIndex(); + if ($xfIndex > $pIndex) { + // decrease xf index by 1 + $cell->setXfIndex($xfIndex - 1); + } elseif ($xfIndex == $pIndex) { + // set to default xf index 0 + $cell->setXfIndex(0); + } + } + } + } + } + + /** + * Get the cellXf supervisor + * + * @return PHPExcel_Style + */ + public function getCellXfSupervisor() + { + return $this->cellXfSupervisor; + } + + /** + * Get the workbook collection of cellStyleXfs + * + * @return PHPExcel_Style[] + */ + public function getCellStyleXfCollection() + { + return $this->cellStyleXfCollection; + } + + /** + * Get cellStyleXf by index + * + * @param integer $pIndex Index to cellXf + * @return PHPExcel_Style + */ + public function getCellStyleXfByIndex($pIndex = 0) + { + return $this->cellStyleXfCollection[$pIndex]; + } + + /** + * Get cellStyleXf by hash code + * + * @param string $pValue + * @return PHPExcel_Style|boolean False if no match found + */ + public function getCellStyleXfByHashCode($pValue = '') + { + foreach ($this->cellStyleXfCollection as $cellStyleXf) { + if ($cellStyleXf->getHashCode() == $pValue) { + return $cellStyleXf; + } + } + return false; + } + + /** + * Add a cellStyleXf to the workbook + * + * @param PHPExcel_Style $pStyle + */ + public function addCellStyleXf(PHPExcel_Style $pStyle) + { + $this->cellStyleXfCollection[] = $pStyle; + $pStyle->setIndex(count($this->cellStyleXfCollection) - 1); + } + + /** + * Remove cellStyleXf by index + * + * @param integer $pIndex Index to cellXf + * @throws PHPExcel_Exception + */ + public function removeCellStyleXfByIndex($pIndex = 0) + { + if ($pIndex > count($this->cellStyleXfCollection) - 1) { + throw new PHPExcel_Exception("CellStyleXf index is out of bounds."); + } else { + array_splice($this->cellStyleXfCollection, $pIndex, 1); + } + } + + /** + * Eliminate all unneeded cellXf and afterwards update the xfIndex for all cells + * and columns in the workbook + */ + public function garbageCollect() + { + // how many references are there to each cellXf ? + $countReferencesCellXf = array(); + foreach ($this->cellXfCollection as $index => $cellXf) { + $countReferencesCellXf[$index] = 0; + } + + foreach ($this->getWorksheetIterator() as $sheet) { + // from cells + foreach ($sheet->getCellCollection(false) as $cellID) { + $cell = $sheet->getCell($cellID); + ++$countReferencesCellXf[$cell->getXfIndex()]; + } + + // from row dimensions + foreach ($sheet->getRowDimensions() as $rowDimension) { + if ($rowDimension->getXfIndex() !== null) { + ++$countReferencesCellXf[$rowDimension->getXfIndex()]; + } + } + + // from column dimensions + foreach ($sheet->getColumnDimensions() as $columnDimension) { + ++$countReferencesCellXf[$columnDimension->getXfIndex()]; + } + } + + // remove cellXfs without references and create mapping so we can update xfIndex + // for all cells and columns + $countNeededCellXfs = 0; + $map = array(); + foreach ($this->cellXfCollection as $index => $cellXf) { + if ($countReferencesCellXf[$index] > 0 || $index == 0) { // we must never remove the first cellXf + ++$countNeededCellXfs; + } else { + unset($this->cellXfCollection[$index]); + } + $map[$index] = $countNeededCellXfs - 1; + } + $this->cellXfCollection = array_values($this->cellXfCollection); + + // update the index for all cellXfs + foreach ($this->cellXfCollection as $i => $cellXf) { + $cellXf->setIndex($i); + } + + // make sure there is always at least one cellXf (there should be) + if (empty($this->cellXfCollection)) { + $this->cellXfCollection[] = new PHPExcel_Style(); + } + + // update the xfIndex for all cells, row dimensions, column dimensions + foreach ($this->getWorksheetIterator() as $sheet) { + // for all cells + foreach ($sheet->getCellCollection(false) as $cellID) { + $cell = $sheet->getCell($cellID); + $cell->setXfIndex($map[$cell->getXfIndex()]); + } + + // for all row dimensions + foreach ($sheet->getRowDimensions() as $rowDimension) { + if ($rowDimension->getXfIndex() !== null) { + $rowDimension->setXfIndex($map[$rowDimension->getXfIndex()]); + } + } + + // for all column dimensions + foreach ($sheet->getColumnDimensions() as $columnDimension) { + $columnDimension->setXfIndex($map[$columnDimension->getXfIndex()]); + } + + // also do garbage collection for all the sheets + $sheet->garbageCollect(); + } + } + + /** + * Return the unique ID value assigned to this spreadsheet workbook + * + * @return string + */ + public function getID() + { + return $this->uniqueID; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Autoloader.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Autoloader.php new file mode 100644 index 0000000..c3b95a2 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Autoloader.php @@ -0,0 +1,81 @@ += 0) { + return spl_autoload_register(array('PHPExcel_Autoloader', 'load'), true, true); + } else { + return spl_autoload_register(array('PHPExcel_Autoloader', 'load')); + } + } + + /** + * Autoload a class identified by name + * + * @param string $pClassName Name of the object to load + */ + public static function load($pClassName) + { + if ((class_exists($pClassName, false)) || (strpos($pClassName, 'PHPExcel') !== 0)) { + // Either already loaded, or not a PHPExcel class request + return false; + } + + $pClassFilePath = PHPEXCEL_ROOT . + str_replace('_', DIRECTORY_SEPARATOR, $pClassName) . + '.php'; + + if ((file_exists($pClassFilePath) === false) || (is_readable($pClassFilePath) === false)) { + // Can't load + return false; + } + + require($pClassFilePath); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/APC.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/APC.php new file mode 100644 index 0000000..c74b07f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/APC.php @@ -0,0 +1,290 @@ +currentCellIsDirty && !empty($this->currentObjectID)) { + $this->currentObject->detach(); + + if (!apc_store( + $this->cachePrefix . $this->currentObjectID . '.cache', + serialize($this->currentObject), + $this->cacheTime + )) { + $this->__destruct(); + throw new PHPExcel_Exception('Failed to store cell ' . $this->currentObjectID . ' in APC'); + } + $this->currentCellIsDirty = false; + } + $this->currentObjectID = $this->currentObject = null; + } + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @access public + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) + { + if (($pCoord !== $this->currentObjectID) && ($this->currentObjectID !== null)) { + $this->storeData(); + } + $this->cellCache[$pCoord] = true; + + $this->currentObjectID = $pCoord; + $this->currentObject = $cell; + $this->currentCellIsDirty = true; + + return $cell; + } + + /** + * Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + * + * @access public + * @param string $pCoord Coordinate address of the cell to check + * @throws PHPExcel_Exception + * @return boolean + */ + public function isDataSet($pCoord) + { + // Check if the requested entry is the current object, or exists in the cache + if (parent::isDataSet($pCoord)) { + if ($this->currentObjectID == $pCoord) { + return true; + } + // Check if the requested entry still exists in apc + $success = apc_fetch($this->cachePrefix.$pCoord.'.cache'); + if ($success === false) { + // Entry no longer exists in APC, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new PHPExcel_Exception('Cell entry '.$pCoord.' no longer exists in APC cache'); + } + return true; + } + return false; + } + + /** + * Get cell at a specific coordinate + * + * @access public + * @param string $pCoord Coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return $this->currentObject; + } + $this->storeData(); + + // Check if the entry that has been requested actually exists + if (parent::isDataSet($pCoord)) { + $obj = apc_fetch($this->cachePrefix . $pCoord . '.cache'); + if ($obj === false) { + // Entry no longer exists in APC, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new PHPExcel_Exception('Cell entry '.$pCoord.' no longer exists in APC cache'); + } + } else { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->currentObjectID = $pCoord; + $this->currentObject = unserialize($obj); + // Re-attach this as the cell's parent + $this->currentObject->attach($this); + + // Return requested entry + return $this->currentObject; + } + + /** + * Get a list of all cell addresses currently held in cache + * + * @return string[] + */ + public function getCellList() + { + if ($this->currentObjectID !== null) { + $this->storeData(); + } + + return parent::getCellList(); + } + + /** + * Delete a cell in cache identified by coordinate address + * + * @access public + * @param string $pCoord Coordinate address of the cell to delete + * @throws PHPExcel_Exception + */ + public function deleteCacheData($pCoord) + { + // Delete the entry from APC + apc_delete($this->cachePrefix.$pCoord.'.cache'); + + // Delete the entry from our cell address array + parent::deleteCacheData($pCoord); + } + + /** + * Clone the cell collection + * + * @access public + * @param PHPExcel_Worksheet $parent The new worksheet + * @throws PHPExcel_Exception + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) + { + parent::copyCellCollection($parent); + // Get a new id for the new file name + $baseUnique = $this->getUniqueID(); + $newCachePrefix = substr(md5($baseUnique), 0, 8) . '.'; + $cacheList = $this->getCellList(); + foreach ($cacheList as $cellID) { + if ($cellID != $this->currentObjectID) { + $obj = apc_fetch($this->cachePrefix . $cellID . '.cache'); + if ($obj === false) { + // Entry no longer exists in APC, so clear it from the cache array + parent::deleteCacheData($cellID); + throw new PHPExcel_Exception('Cell entry ' . $cellID . ' no longer exists in APC'); + } + if (!apc_store($newCachePrefix . $cellID . '.cache', $obj, $this->cacheTime)) { + $this->__destruct(); + throw new PHPExcel_Exception('Failed to store cell ' . $cellID . ' in APC'); + } + } + } + $this->cachePrefix = $newCachePrefix; + } + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() + { + if ($this->currentObject !== null) { + $this->currentObject->detach(); + $this->currentObject = $this->currentObjectID = null; + } + + // Flush the APC cache + $this->__destruct(); + + $this->cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->parent = null; + } + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + * @param array of mixed $arguments Additional initialisation arguments + */ + public function __construct(PHPExcel_Worksheet $parent, $arguments) + { + $cacheTime = (isset($arguments['cacheTime'])) ? $arguments['cacheTime'] : 600; + + if ($this->cachePrefix === null) { + $baseUnique = $this->getUniqueID(); + $this->cachePrefix = substr(md5($baseUnique), 0, 8) . '.'; + $this->cacheTime = $cacheTime; + + parent::__construct($parent); + } + } + + /** + * Destroy this cell collection + */ + public function __destruct() + { + $cacheList = $this->getCellList(); + foreach ($cacheList as $cellID) { + apc_delete($this->cachePrefix . $cellID . '.cache'); + } + } + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() + { + if (!function_exists('apc_store')) { + return false; + } + if (apc_sma_info() === false) { + return false; + } + + return true; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/CacheBase.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/CacheBase.php new file mode 100644 index 0000000..9a12ec8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/CacheBase.php @@ -0,0 +1,368 @@ +parent = $parent; + } + + /** + * Return the parent worksheet for this cell collection + * + * @return PHPExcel_Worksheet + */ + public function getParent() + { + return $this->parent; + } + + /** + * Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + * + * @param string $pCoord Coordinate address of the cell to check + * @return boolean + */ + public function isDataSet($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return true; + } + // Check if the requested entry exists in the cache + return isset($this->cellCache[$pCoord]); + } + + /** + * Move a cell object from one address to another + * + * @param string $fromAddress Current address of the cell to move + * @param string $toAddress Destination address of the cell to move + * @return boolean + */ + public function moveCell($fromAddress, $toAddress) + { + if ($fromAddress === $this->currentObjectID) { + $this->currentObjectID = $toAddress; + } + $this->currentCellIsDirty = true; + if (isset($this->cellCache[$fromAddress])) { + $this->cellCache[$toAddress] = &$this->cellCache[$fromAddress]; + unset($this->cellCache[$fromAddress]); + } + + return true; + } + + /** + * Add or Update a cell in cache + * + * @param PHPExcel_Cell $cell Cell to update + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function updateCacheData(PHPExcel_Cell $cell) + { + return $this->addCacheData($cell->getCoordinate(), $cell); + } + + /** + * Delete a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to delete + * @throws PHPExcel_Exception + */ + public function deleteCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID && !is_null($this->currentObject)) { + $this->currentObject->detach(); + $this->currentObjectID = $this->currentObject = null; + } + + if (is_object($this->cellCache[$pCoord])) { + $this->cellCache[$pCoord]->detach(); + unset($this->cellCache[$pCoord]); + } + $this->currentCellIsDirty = false; + } + + /** + * Get a list of all cell addresses currently held in cache + * + * @return string[] + */ + public function getCellList() + { + return array_keys($this->cellCache); + } + + /** + * Sort the list of all cell addresses currently held in cache by row and column + * + * @return string[] + */ + public function getSortedCellList() + { + $sortKeys = array(); + foreach ($this->getCellList() as $coord) { + sscanf($coord, '%[A-Z]%d', $column, $row); + $sortKeys[sprintf('%09d%3s', $row, $column)] = $coord; + } + ksort($sortKeys); + + return array_values($sortKeys); + } + + /** + * Get highest worksheet column and highest row that have cell records + * + * @return array Highest column name and highest row number + */ + public function getHighestRowAndColumn() + { + // Lookup highest column and highest row + $col = array('A' => '1A'); + $row = array(1); + foreach ($this->getCellList() as $coord) { + sscanf($coord, '%[A-Z]%d', $c, $r); + $row[$r] = $r; + $col[$c] = strlen($c).$c; + } + if (!empty($row)) { + // Determine highest column and row + $highestRow = max($row); + $highestColumn = substr(max($col), 1); + } + + return array( + 'row' => $highestRow, + 'column' => $highestColumn + ); + } + + /** + * Return the cell address of the currently active cell object + * + * @return string + */ + public function getCurrentAddress() + { + return $this->currentObjectID; + } + + /** + * Return the column address of the currently active cell object + * + * @return string + */ + public function getCurrentColumn() + { + sscanf($this->currentObjectID, '%[A-Z]%d', $column, $row); + return $column; + } + + /** + * Return the row address of the currently active cell object + * + * @return integer + */ + public function getCurrentRow() + { + sscanf($this->currentObjectID, '%[A-Z]%d', $column, $row); + return (integer) $row; + } + + /** + * Get highest worksheet column + * + * @param string $row Return the highest column for the specified row, + * or the highest column of any row if no row number is passed + * @return string Highest column name + */ + public function getHighestColumn($row = null) + { + if ($row == null) { + $colRow = $this->getHighestRowAndColumn(); + return $colRow['column']; + } + + $columnList = array(1); + foreach ($this->getCellList() as $coord) { + sscanf($coord, '%[A-Z]%d', $c, $r); + if ($r != $row) { + continue; + } + $columnList[] = PHPExcel_Cell::columnIndexFromString($c); + } + return PHPExcel_Cell::stringFromColumnIndex(max($columnList) - 1); + } + + /** + * Get highest worksheet row + * + * @param string $column Return the highest row for the specified column, + * or the highest row of any column if no column letter is passed + * @return int Highest row number + */ + public function getHighestRow($column = null) + { + if ($column == null) { + $colRow = $this->getHighestRowAndColumn(); + return $colRow['row']; + } + + $rowList = array(0); + foreach ($this->getCellList() as $coord) { + sscanf($coord, '%[A-Z]%d', $c, $r); + if ($c != $column) { + continue; + } + $rowList[] = $r; + } + + return max($rowList); + } + + /** + * Generate a unique ID for cache referencing + * + * @return string Unique Reference + */ + protected function getUniqueID() + { + if (function_exists('posix_getpid')) { + $baseUnique = posix_getpid(); + } else { + $baseUnique = mt_rand(); + } + return uniqid($baseUnique, true); + } + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) + { + $this->currentCellIsDirty; + $this->storeData(); + + $this->parent = $parent; + if (($this->currentObject !== null) && (is_object($this->currentObject))) { + $this->currentObject->attach($this); + } + } // function copyCellCollection() + + /** + * Remove a row, deleting all cells in that row + * + * @param string $row Row number to remove + * @return void + */ + public function removeRow($row) + { + foreach ($this->getCellList() as $coord) { + sscanf($coord, '%[A-Z]%d', $c, $r); + if ($r == $row) { + $this->deleteCacheData($coord); + } + } + } + + /** + * Remove a column, deleting all cells in that column + * + * @param string $column Column ID to remove + * @return void + */ + public function removeColumn($column) + { + foreach ($this->getCellList() as $coord) { + sscanf($coord, '%[A-Z]%d', $c, $r); + if ($c == $column) { + $this->deleteCacheData($coord); + } + } + } + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() + { + return true; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/DiscISAM.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/DiscISAM.php new file mode 100644 index 0000000..13bc033 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/DiscISAM.php @@ -0,0 +1,208 @@ +currentCellIsDirty && !empty($this->currentObjectID)) { + $this->currentObject->detach(); + + fseek($this->fileHandle, 0, SEEK_END); + + $this->cellCache[$this->currentObjectID] = array( + 'ptr' => ftell($this->fileHandle), + 'sz' => fwrite($this->fileHandle, serialize($this->currentObject)) + ); + $this->currentCellIsDirty = false; + } + $this->currentObjectID = $this->currentObject = null; + } + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) + { + if (($pCoord !== $this->currentObjectID) && ($this->currentObjectID !== null)) { + $this->storeData(); + } + + $this->currentObjectID = $pCoord; + $this->currentObject = $cell; + $this->currentCellIsDirty = true; + + return $cell; + } + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return $this->currentObject; + } + $this->storeData(); + + // Check if the entry that has been requested actually exists + if (!isset($this->cellCache[$pCoord])) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->currentObjectID = $pCoord; + fseek($this->fileHandle, $this->cellCache[$pCoord]['ptr']); + $this->currentObject = unserialize(fread($this->fileHandle, $this->cellCache[$pCoord]['sz'])); + // Re-attach this as the cell's parent + $this->currentObject->attach($this); + + // Return requested entry + return $this->currentObject; + } + + /** + * Get a list of all cell addresses currently held in cache + * + * @return string[] + */ + public function getCellList() + { + if ($this->currentObjectID !== null) { + $this->storeData(); + } + + return parent::getCellList(); + } + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) + { + parent::copyCellCollection($parent); + // Get a new id for the new file name + $baseUnique = $this->getUniqueID(); + $newFileName = $this->cacheDirectory.'/PHPExcel.'.$baseUnique.'.cache'; + // Copy the existing cell cache file + copy($this->fileName, $newFileName); + $this->fileName = $newFileName; + // Open the copied cell cache file + $this->fileHandle = fopen($this->fileName, 'a+'); + } + + /** + * Clear the cell collection and disconnect from our parent + * + */ + public function unsetWorksheetCells() + { + if (!is_null($this->currentObject)) { + $this->currentObject->detach(); + $this->currentObject = $this->currentObjectID = null; + } + $this->cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->parent = null; + + // Close down the temporary cache file + $this->__destruct(); + } + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + * @param array of mixed $arguments Additional initialisation arguments + */ + public function __construct(PHPExcel_Worksheet $parent, $arguments) + { + $this->cacheDirectory = ((isset($arguments['dir'])) && ($arguments['dir'] !== null)) + ? $arguments['dir'] + : PHPExcel_Shared_File::sys_get_temp_dir(); + + parent::__construct($parent); + if (is_null($this->fileHandle)) { + $baseUnique = $this->getUniqueID(); + $this->fileName = $this->cacheDirectory.'/PHPExcel.'.$baseUnique.'.cache'; + $this->fileHandle = fopen($this->fileName, 'a+'); + } + } + + /** + * Destroy this cell collection + */ + public function __destruct() + { + if (!is_null($this->fileHandle)) { + fclose($this->fileHandle); + unlink($this->fileName); + } + $this->fileHandle = null; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/ICache.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/ICache.php new file mode 100644 index 0000000..aafef6e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/ICache.php @@ -0,0 +1,103 @@ +currentCellIsDirty && !empty($this->currentObjectID)) { + $this->currentObject->detach(); + + $this->cellCache[$this->currentObjectID] = igbinary_serialize($this->currentObject); + $this->currentCellIsDirty = false; + } + $this->currentObjectID = $this->currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) + { + if (($pCoord !== $this->currentObjectID) && ($this->currentObjectID !== null)) { + $this->storeData(); + } + + $this->currentObjectID = $pCoord; + $this->currentObject = $cell; + $this->currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return $this->currentObject; + } + $this->storeData(); + + // Check if the entry that has been requested actually exists + if (!isset($this->cellCache[$pCoord])) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->currentObjectID = $pCoord; + $this->currentObject = igbinary_unserialize($this->cellCache[$pCoord]); + // Re-attach this as the cell's parent + $this->currentObject->attach($this); + + // Return requested entry + return $this->currentObject; + } // function getCacheData() + + + /** + * Get a list of all cell addresses currently held in cache + * + * @return string[] + */ + public function getCellList() + { + if ($this->currentObjectID !== null) { + $this->storeData(); + } + + return parent::getCellList(); + } + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() + { + if (!is_null($this->currentObject)) { + $this->currentObject->detach(); + $this->currentObject = $this->currentObjectID = null; + } + $this->cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->parent = null; + } // function unsetWorksheetCells() + + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() + { + if (!function_exists('igbinary_serialize')) { + return false; + } + + return true; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/Memcache.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/Memcache.php new file mode 100644 index 0000000..07942cc --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/Memcache.php @@ -0,0 +1,308 @@ +currentCellIsDirty && !empty($this->currentObjectID)) { + $this->currentObject->detach(); + + $obj = serialize($this->currentObject); + if (!$this->memcache->replace($this->cachePrefix . $this->currentObjectID . '.cache', $obj, null, $this->cacheTime)) { + if (!$this->memcache->add($this->cachePrefix . $this->currentObjectID . '.cache', $obj, null, $this->cacheTime)) { + $this->__destruct(); + throw new PHPExcel_Exception("Failed to store cell {$this->currentObjectID} in MemCache"); + } + } + $this->currentCellIsDirty = false; + } + $this->currentObjectID = $this->currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) + { + if (($pCoord !== $this->currentObjectID) && ($this->currentObjectID !== null)) { + $this->storeData(); + } + $this->cellCache[$pCoord] = true; + + $this->currentObjectID = $pCoord; + $this->currentObject = $cell; + $this->currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + * + * @param string $pCoord Coordinate address of the cell to check + * @return boolean + * @return boolean + */ + public function isDataSet($pCoord) + { + // Check if the requested entry is the current object, or exists in the cache + if (parent::isDataSet($pCoord)) { + if ($this->currentObjectID == $pCoord) { + return true; + } + // Check if the requested entry still exists in Memcache + $success = $this->memcache->get($this->cachePrefix.$pCoord.'.cache'); + if ($success === false) { + // Entry no longer exists in Memcache, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new PHPExcel_Exception('Cell entry '.$pCoord.' no longer exists in MemCache'); + } + return true; + } + return false; + } + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return $this->currentObject; + } + $this->storeData(); + + // Check if the entry that has been requested actually exists + if (parent::isDataSet($pCoord)) { + $obj = $this->memcache->get($this->cachePrefix . $pCoord . '.cache'); + if ($obj === false) { + // Entry no longer exists in Memcache, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new PHPExcel_Exception("Cell entry {$pCoord} no longer exists in MemCache"); + } + } else { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->currentObjectID = $pCoord; + $this->currentObject = unserialize($obj); + // Re-attach this as the cell's parent + $this->currentObject->attach($this); + + // Return requested entry + return $this->currentObject; + } + + /** + * Get a list of all cell addresses currently held in cache + * + * @return string[] + */ + public function getCellList() + { + if ($this->currentObjectID !== null) { + $this->storeData(); + } + + return parent::getCellList(); + } + + /** + * Delete a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to delete + * @throws PHPExcel_Exception + */ + public function deleteCacheData($pCoord) + { + // Delete the entry from Memcache + $this->memcache->delete($this->cachePrefix . $pCoord . '.cache'); + + // Delete the entry from our cell address array + parent::deleteCacheData($pCoord); + } + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) + { + parent::copyCellCollection($parent); + // Get a new id for the new file name + $baseUnique = $this->getUniqueID(); + $newCachePrefix = substr(md5($baseUnique), 0, 8) . '.'; + $cacheList = $this->getCellList(); + foreach ($cacheList as $cellID) { + if ($cellID != $this->currentObjectID) { + $obj = $this->memcache->get($this->cachePrefix.$cellID.'.cache'); + if ($obj === false) { + // Entry no longer exists in Memcache, so clear it from the cache array + parent::deleteCacheData($cellID); + throw new PHPExcel_Exception("Cell entry {$cellID} no longer exists in MemCache"); + } + if (!$this->memcache->add($newCachePrefix . $cellID . '.cache', $obj, null, $this->cacheTime)) { + $this->__destruct(); + throw new PHPExcel_Exception("Failed to store cell {$cellID} in MemCache"); + } + } + } + $this->cachePrefix = $newCachePrefix; + } + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() + { + if (!is_null($this->currentObject)) { + $this->currentObject->detach(); + $this->currentObject = $this->currentObjectID = null; + } + + // Flush the Memcache cache + $this->__destruct(); + + $this->cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->parent = null; + } + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + * @param array of mixed $arguments Additional initialisation arguments + */ + public function __construct(PHPExcel_Worksheet $parent, $arguments) + { + $memcacheServer = (isset($arguments['memcacheServer'])) ? $arguments['memcacheServer'] : 'localhost'; + $memcachePort = (isset($arguments['memcachePort'])) ? $arguments['memcachePort'] : 11211; + $cacheTime = (isset($arguments['cacheTime'])) ? $arguments['cacheTime'] : 600; + + if (is_null($this->cachePrefix)) { + $baseUnique = $this->getUniqueID(); + $this->cachePrefix = substr(md5($baseUnique), 0, 8) . '.'; + + // Set a new Memcache object and connect to the Memcache server + $this->memcache = new Memcache(); + if (!$this->memcache->addServer($memcacheServer, $memcachePort, false, 50, 5, 5, true, array($this, 'failureCallback'))) { + throw new PHPExcel_Exception("Could not connect to MemCache server at {$memcacheServer}:{$memcachePort}"); + } + $this->cacheTime = $cacheTime; + + parent::__construct($parent); + } + } + + /** + * Memcache error handler + * + * @param string $host Memcache server + * @param integer $port Memcache port + * @throws PHPExcel_Exception + */ + public function failureCallback($host, $port) + { + throw new PHPExcel_Exception("memcache {$host}:{$port} failed"); + } + + /** + * Destroy this cell collection + */ + public function __destruct() + { + $cacheList = $this->getCellList(); + foreach ($cacheList as $cellID) { + $this->memcache->delete($this->cachePrefix.$cellID . '.cache'); + } + } + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() + { + if (!function_exists('memcache_add')) { + return false; + } + + return true; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/Memory.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/Memory.php new file mode 100644 index 0000000..0e2ea0b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/Memory.php @@ -0,0 +1,118 @@ +cellCache[$pCoord] = $cell; + + // Set current entry to the new/updated entry + $this->currentObjectID = $pCoord; + + return $cell; + } + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) + { + // Check if the entry that has been requested actually exists + if (!isset($this->cellCache[$pCoord])) { + $this->currentObjectID = null; + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->currentObjectID = $pCoord; + + // Return requested entry + return $this->cellCache[$pCoord]; + } + + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) + { + parent::copyCellCollection($parent); + + $newCollection = array(); + foreach ($this->cellCache as $k => &$cell) { + $newCollection[$k] = clone $cell; + $newCollection[$k]->attach($this); + } + + $this->cellCache = $newCollection; + } + + /** + * Clear the cell collection and disconnect from our parent + * + */ + public function unsetWorksheetCells() + { + // Because cells are all stored as intact objects in memory, we need to detach each one from the parent + foreach ($this->cellCache as $k => &$cell) { + $cell->detach(); + $this->cellCache[$k] = null; + } + unset($cell); + + $this->cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->parent = null; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/MemoryGZip.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/MemoryGZip.php new file mode 100644 index 0000000..c06ec71 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/MemoryGZip.php @@ -0,0 +1,133 @@ +currentCellIsDirty && !empty($this->currentObjectID)) { + $this->currentObject->detach(); + + $this->cellCache[$this->currentObjectID] = gzdeflate(serialize($this->currentObject)); + $this->currentCellIsDirty = false; + } + $this->currentObjectID = $this->currentObject = null; + } + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) + { + if (($pCoord !== $this->currentObjectID) && ($this->currentObjectID !== null)) { + $this->storeData(); + } + + $this->currentObjectID = $pCoord; + $this->currentObject = $cell; + $this->currentCellIsDirty = true; + + return $cell; + } + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return $this->currentObject; + } + $this->storeData(); + + // Check if the entry that has been requested actually exists + if (!isset($this->cellCache[$pCoord])) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->currentObjectID = $pCoord; + $this->currentObject = unserialize(gzinflate($this->cellCache[$pCoord])); + // Re-attach this as the cell's parent + $this->currentObject->attach($this); + + // Return requested entry + return $this->currentObject; + } + + + /** + * Get a list of all cell addresses currently held in cache + * + * @return string[] + */ + public function getCellList() + { + if ($this->currentObjectID !== null) { + $this->storeData(); + } + + return parent::getCellList(); + } + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() + { + if (!is_null($this->currentObject)) { + $this->currentObject->detach(); + $this->currentObject = $this->currentObjectID = null; + } + $this->cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->parent = null; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/MemorySerialized.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/MemorySerialized.php new file mode 100644 index 0000000..1332514 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/MemorySerialized.php @@ -0,0 +1,129 @@ +currentCellIsDirty && !empty($this->currentObjectID)) { + $this->currentObject->detach(); + + $this->cellCache[$this->currentObjectID] = serialize($this->currentObject); + $this->currentCellIsDirty = false; + } + $this->currentObjectID = $this->currentObject = null; + } + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) + { + if (($pCoord !== $this->currentObjectID) && ($this->currentObjectID !== null)) { + $this->storeData(); + } + + $this->currentObjectID = $pCoord; + $this->currentObject = $cell; + $this->currentCellIsDirty = true; + + return $cell; + } + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return $this->currentObject; + } + $this->storeData(); + + // Check if the entry that has been requested actually exists + if (!isset($this->cellCache[$pCoord])) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->currentObjectID = $pCoord; + $this->currentObject = unserialize($this->cellCache[$pCoord]); + // Re-attach this as the cell's parent + $this->currentObject->attach($this); + + // Return requested entry + return $this->currentObject; + } + + /** + * Get a list of all cell addresses currently held in cache + * + * @return string[] + */ + public function getCellList() + { + if ($this->currentObjectID !== null) { + $this->storeData(); + } + + return parent::getCellList(); + } + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() + { + if (!is_null($this->currentObject)) { + $this->currentObject->detach(); + $this->currentObject = $this->currentObjectID = null; + } + $this->cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->parent = null; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/PHPTemp.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/PHPTemp.php new file mode 100644 index 0000000..43c7819 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/PHPTemp.php @@ -0,0 +1,200 @@ +currentCellIsDirty && !empty($this->currentObjectID)) { + $this->currentObject->detach(); + + fseek($this->fileHandle, 0, SEEK_END); + + $this->cellCache[$this->currentObjectID] = array( + 'ptr' => ftell($this->fileHandle), + 'sz' => fwrite($this->fileHandle, serialize($this->currentObject)) + ); + $this->currentCellIsDirty = false; + } + $this->currentObjectID = $this->currentObject = null; + } + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) + { + if (($pCoord !== $this->currentObjectID) && ($this->currentObjectID !== null)) { + $this->storeData(); + } + + $this->currentObjectID = $pCoord; + $this->currentObject = $cell; + $this->currentCellIsDirty = true; + + return $cell; + } + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return $this->currentObject; + } + $this->storeData(); + + // Check if the entry that has been requested actually exists + if (!isset($this->cellCache[$pCoord])) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->currentObjectID = $pCoord; + fseek($this->fileHandle, $this->cellCache[$pCoord]['ptr']); + $this->currentObject = unserialize(fread($this->fileHandle, $this->cellCache[$pCoord]['sz'])); + // Re-attach this as the cell's parent + $this->currentObject->attach($this); + + // Return requested entry + return $this->currentObject; + } + + /** + * Get a list of all cell addresses currently held in cache + * + * @return string[] + */ + public function getCellList() + { + if ($this->currentObjectID !== null) { + $this->storeData(); + } + + return parent::getCellList(); + } + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) + { + parent::copyCellCollection($parent); + // Open a new stream for the cell cache data + $newFileHandle = fopen('php://temp/maxmemory:' . $this->memoryCacheSize, 'a+'); + // Copy the existing cell cache data to the new stream + fseek($this->fileHandle, 0); + while (!feof($this->fileHandle)) { + fwrite($newFileHandle, fread($this->fileHandle, 1024)); + } + $this->fileHandle = $newFileHandle; + } + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() + { + if (!is_null($this->currentObject)) { + $this->currentObject->detach(); + $this->currentObject = $this->currentObjectID = null; + } + $this->cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->parent = null; + + // Close down the php://temp file + $this->__destruct(); + } + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + * @param array of mixed $arguments Additional initialisation arguments + */ + public function __construct(PHPExcel_Worksheet $parent, $arguments) + { + $this->memoryCacheSize = (isset($arguments['memoryCacheSize'])) ? $arguments['memoryCacheSize'] : '1MB'; + + parent::__construct($parent); + if (is_null($this->fileHandle)) { + $this->fileHandle = fopen('php://temp/maxmemory:' . $this->memoryCacheSize, 'a+'); + } + } + + /** + * Destroy this cell collection + */ + public function __destruct() + { + if (!is_null($this->fileHandle)) { + fclose($this->fileHandle); + } + $this->fileHandle = null; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/SQLite.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/SQLite.php new file mode 100644 index 0000000..e7b50c5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/SQLite.php @@ -0,0 +1,307 @@ +currentCellIsDirty && !empty($this->currentObjectID)) { + $this->currentObject->detach(); + + if (!$this->DBHandle->queryExec("INSERT OR REPLACE INTO kvp_".$this->TableName." VALUES('".$this->currentObjectID."','".sqlite_escape_string(serialize($this->currentObject))."')")) { + throw new PHPExcel_Exception(sqlite_error_string($this->DBHandle->lastError())); + } + $this->currentCellIsDirty = false; + } + $this->currentObjectID = $this->currentObject = null; + } + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) + { + if (($pCoord !== $this->currentObjectID) && ($this->currentObjectID !== null)) { + $this->storeData(); + } + + $this->currentObjectID = $pCoord; + $this->currentObject = $cell; + $this->currentCellIsDirty = true; + + return $cell; + } + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return $this->currentObject; + } + $this->storeData(); + + $query = "SELECT value FROM kvp_".$this->TableName." WHERE id='".$pCoord."'"; + $cellResultSet = $this->DBHandle->query($query, SQLITE_ASSOC); + if ($cellResultSet === false) { + throw new PHPExcel_Exception(sqlite_error_string($this->DBHandle->lastError())); + } elseif ($cellResultSet->numRows() == 0) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->currentObjectID = $pCoord; + + $cellResult = $cellResultSet->fetchSingle(); + $this->currentObject = unserialize($cellResult); + // Re-attach this as the cell's parent + $this->currentObject->attach($this); + + // Return requested entry + return $this->currentObject; + } + + /** + * Is a value set for an indexed cell? + * + * @param string $pCoord Coordinate address of the cell to check + * @return boolean + */ + public function isDataSet($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return true; + } + + // Check if the requested entry exists in the cache + $query = "SELECT id FROM kvp_".$this->TableName." WHERE id='".$pCoord."'"; + $cellResultSet = $this->DBHandle->query($query, SQLITE_ASSOC); + if ($cellResultSet === false) { + throw new PHPExcel_Exception(sqlite_error_string($this->DBHandle->lastError())); + } elseif ($cellResultSet->numRows() == 0) { + // Return null if requested entry doesn't exist in cache + return false; + } + return true; + } + + /** + * Delete a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to delete + * @throws PHPExcel_Exception + */ + public function deleteCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + $this->currentObject->detach(); + $this->currentObjectID = $this->currentObject = null; + } + + // Check if the requested entry exists in the cache + $query = "DELETE FROM kvp_".$this->TableName." WHERE id='".$pCoord."'"; + if (!$this->DBHandle->queryExec($query)) { + throw new PHPExcel_Exception(sqlite_error_string($this->DBHandle->lastError())); + } + + $this->currentCellIsDirty = false; + } + + /** + * Move a cell object from one address to another + * + * @param string $fromAddress Current address of the cell to move + * @param string $toAddress Destination address of the cell to move + * @return boolean + */ + public function moveCell($fromAddress, $toAddress) + { + if ($fromAddress === $this->currentObjectID) { + $this->currentObjectID = $toAddress; + } + + $query = "DELETE FROM kvp_".$this->TableName." WHERE id='".$toAddress."'"; + $result = $this->DBHandle->exec($query); + if ($result === false) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + + $query = "UPDATE kvp_".$this->TableName." SET id='".$toAddress."' WHERE id='".$fromAddress."'"; + $result = $this->DBHandle->exec($query); + if ($result === false) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + + return true; + } + + /** + * Get a list of all cell addresses currently held in cache + * + * @return string[] + */ + public function getCellList() + { + if ($this->currentObjectID !== null) { + $this->storeData(); + } + + $query = "SELECT id FROM kvp_".$this->TableName; + $cellIdsResult = $this->DBHandle->unbufferedQuery($query, SQLITE_ASSOC); + if ($cellIdsResult === false) { + throw new PHPExcel_Exception(sqlite_error_string($this->DBHandle->lastError())); + } + + $cellKeys = array(); + foreach ($cellIdsResult as $row) { + $cellKeys[] = $row['id']; + } + + return $cellKeys; + } + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) + { + $this->currentCellIsDirty; + $this->storeData(); + + // Get a new id for the new table name + $tableName = str_replace('.', '_', $this->getUniqueID()); + if (!$this->DBHandle->queryExec('CREATE TABLE kvp_'.$tableName.' (id VARCHAR(12) PRIMARY KEY, value BLOB) + AS SELECT * FROM kvp_'.$this->TableName) + ) { + throw new PHPExcel_Exception(sqlite_error_string($this->DBHandle->lastError())); + } + + // Copy the existing cell cache file + $this->TableName = $tableName; + } + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() + { + if (!is_null($this->currentObject)) { + $this->currentObject->detach(); + $this->currentObject = $this->currentObjectID = null; + } + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->parent = null; + + // Close down the temporary cache file + $this->__destruct(); + } + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + */ + public function __construct(PHPExcel_Worksheet $parent) + { + parent::__construct($parent); + if (is_null($this->DBHandle)) { + $this->TableName = str_replace('.', '_', $this->getUniqueID()); + $_DBName = ':memory:'; + + $this->DBHandle = new SQLiteDatabase($_DBName); + if ($this->DBHandle === false) { + throw new PHPExcel_Exception(sqlite_error_string($this->DBHandle->lastError())); + } + if (!$this->DBHandle->queryExec('CREATE TABLE kvp_'.$this->TableName.' (id VARCHAR(12) PRIMARY KEY, value BLOB)')) { + throw new PHPExcel_Exception(sqlite_error_string($this->DBHandle->lastError())); + } + } + } + + /** + * Destroy this cell collection + */ + public function __destruct() + { + if (!is_null($this->DBHandle)) { + $this->DBHandle->queryExec('DROP TABLE kvp_'.$this->TableName); + } + $this->DBHandle = null; + } + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() + { + if (!function_exists('sqlite_open')) { + return false; + } + + return true; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/SQLite3.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/SQLite3.php new file mode 100644 index 0000000..27473d6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/SQLite3.php @@ -0,0 +1,346 @@ +currentCellIsDirty && !empty($this->currentObjectID)) { + $this->currentObject->detach(); + + $this->insertQuery->bindValue('id', $this->currentObjectID, SQLITE3_TEXT); + $this->insertQuery->bindValue('data', serialize($this->currentObject), SQLITE3_BLOB); + $result = $this->insertQuery->execute(); + if ($result === false) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + $this->currentCellIsDirty = false; + } + $this->currentObjectID = $this->currentObject = null; + } + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) + { + if (($pCoord !== $this->currentObjectID) && ($this->currentObjectID !== null)) { + $this->storeData(); + } + + $this->currentObjectID = $pCoord; + $this->currentObject = $cell; + $this->currentCellIsDirty = true; + + return $cell; + } + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return $this->currentObject; + } + $this->storeData(); + + $this->selectQuery->bindValue('id', $pCoord, SQLITE3_TEXT); + $cellResult = $this->selectQuery->execute(); + if ($cellResult === false) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + $cellData = $cellResult->fetchArray(SQLITE3_ASSOC); + if ($cellData === false) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->currentObjectID = $pCoord; + + $this->currentObject = unserialize($cellData['value']); + // Re-attach this as the cell's parent + $this->currentObject->attach($this); + + // Return requested entry + return $this->currentObject; + } + + /** + * Is a value set for an indexed cell? + * + * @param string $pCoord Coordinate address of the cell to check + * @return boolean + */ + public function isDataSet($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return true; + } + + // Check if the requested entry exists in the cache + $this->selectQuery->bindValue('id', $pCoord, SQLITE3_TEXT); + $cellResult = $this->selectQuery->execute(); + if ($cellResult === false) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + $cellData = $cellResult->fetchArray(SQLITE3_ASSOC); + + return ($cellData === false) ? false : true; + } + + /** + * Delete a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to delete + * @throws PHPExcel_Exception + */ + public function deleteCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + $this->currentObject->detach(); + $this->currentObjectID = $this->currentObject = null; + } + + // Check if the requested entry exists in the cache + $this->deleteQuery->bindValue('id', $pCoord, SQLITE3_TEXT); + $result = $this->deleteQuery->execute(); + if ($result === false) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + + $this->currentCellIsDirty = false; + } + + /** + * Move a cell object from one address to another + * + * @param string $fromAddress Current address of the cell to move + * @param string $toAddress Destination address of the cell to move + * @return boolean + */ + public function moveCell($fromAddress, $toAddress) + { + if ($fromAddress === $this->currentObjectID) { + $this->currentObjectID = $toAddress; + } + + $this->deleteQuery->bindValue('id', $toAddress, SQLITE3_TEXT); + $result = $this->deleteQuery->execute(); + if ($result === false) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + + $this->updateQuery->bindValue('toid', $toAddress, SQLITE3_TEXT); + $this->updateQuery->bindValue('fromid', $fromAddress, SQLITE3_TEXT); + $result = $this->updateQuery->execute(); + if ($result === false) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + + return true; + } + + /** + * Get a list of all cell addresses currently held in cache + * + * @return string[] + */ + public function getCellList() + { + if ($this->currentObjectID !== null) { + $this->storeData(); + } + + $query = "SELECT id FROM kvp_".$this->TableName; + $cellIdsResult = $this->DBHandle->query($query); + if ($cellIdsResult === false) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + + $cellKeys = array(); + while ($row = $cellIdsResult->fetchArray(SQLITE3_ASSOC)) { + $cellKeys[] = $row['id']; + } + + return $cellKeys; + } + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) + { + $this->currentCellIsDirty; + $this->storeData(); + + // Get a new id for the new table name + $tableName = str_replace('.', '_', $this->getUniqueID()); + if (!$this->DBHandle->exec('CREATE TABLE kvp_'.$tableName.' (id VARCHAR(12) PRIMARY KEY, value BLOB) + AS SELECT * FROM kvp_'.$this->TableName) + ) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + + // Copy the existing cell cache file + $this->TableName = $tableName; + } + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() + { + if (!is_null($this->currentObject)) { + $this->currentObject->detach(); + $this->currentObject = $this->currentObjectID = null; + } + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->parent = null; + + // Close down the temporary cache file + $this->__destruct(); + } + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + */ + public function __construct(PHPExcel_Worksheet $parent) + { + parent::__construct($parent); + if (is_null($this->DBHandle)) { + $this->TableName = str_replace('.', '_', $this->getUniqueID()); + $_DBName = ':memory:'; + + $this->DBHandle = new SQLite3($_DBName); + if ($this->DBHandle === false) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + if (!$this->DBHandle->exec('CREATE TABLE kvp_'.$this->TableName.' (id VARCHAR(12) PRIMARY KEY, value BLOB)')) { + throw new PHPExcel_Exception($this->DBHandle->lastErrorMsg()); + } + } + + $this->selectQuery = $this->DBHandle->prepare("SELECT value FROM kvp_".$this->TableName." WHERE id = :id"); + $this->insertQuery = $this->DBHandle->prepare("INSERT OR REPLACE INTO kvp_".$this->TableName." VALUES(:id,:data)"); + $this->updateQuery = $this->DBHandle->prepare("UPDATE kvp_".$this->TableName." SET id=:toId WHERE id=:fromId"); + $this->deleteQuery = $this->DBHandle->prepare("DELETE FROM kvp_".$this->TableName." WHERE id = :id"); + } + + /** + * Destroy this cell collection + */ + public function __destruct() + { + if (!is_null($this->DBHandle)) { + $this->DBHandle->exec('DROP TABLE kvp_'.$this->TableName); + $this->DBHandle->close(); + } + $this->DBHandle = null; + } + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() + { + if (!class_exists('SQLite3', false)) { + return false; + } + + return true; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/Wincache.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/Wincache.php new file mode 100644 index 0000000..1567874 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/Wincache.php @@ -0,0 +1,289 @@ +currentCellIsDirty && !empty($this->currentObjectID)) { + $this->currentObject->detach(); + + $obj = serialize($this->currentObject); + if (wincache_ucache_exists($this->cachePrefix.$this->currentObjectID.'.cache')) { + if (!wincache_ucache_set($this->cachePrefix.$this->currentObjectID.'.cache', $obj, $this->cacheTime)) { + $this->__destruct(); + throw new PHPExcel_Exception('Failed to store cell '.$this->currentObjectID.' in WinCache'); + } + } else { + if (!wincache_ucache_add($this->cachePrefix.$this->currentObjectID.'.cache', $obj, $this->cacheTime)) { + $this->__destruct(); + throw new PHPExcel_Exception('Failed to store cell '.$this->currentObjectID.' in WinCache'); + } + } + $this->currentCellIsDirty = false; + } + + $this->currentObjectID = $this->currentObject = null; + } + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) + { + if (($pCoord !== $this->currentObjectID) && ($this->currentObjectID !== null)) { + $this->storeData(); + } + $this->cellCache[$pCoord] = true; + + $this->currentObjectID = $pCoord; + $this->currentObject = $cell; + $this->currentCellIsDirty = true; + + return $cell; + } + + /** + * Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + * + * @param string $pCoord Coordinate address of the cell to check + * @return boolean + */ + public function isDataSet($pCoord) + { + // Check if the requested entry is the current object, or exists in the cache + if (parent::isDataSet($pCoord)) { + if ($this->currentObjectID == $pCoord) { + return true; + } + // Check if the requested entry still exists in cache + $success = wincache_ucache_exists($this->cachePrefix.$pCoord.'.cache'); + if ($success === false) { + // Entry no longer exists in Wincache, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new PHPExcel_Exception('Cell entry '.$pCoord.' no longer exists in WinCache'); + } + return true; + } + return false; + } + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) + { + if ($pCoord === $this->currentObjectID) { + return $this->currentObject; + } + $this->storeData(); + + // Check if the entry that has been requested actually exists + $obj = null; + if (parent::isDataSet($pCoord)) { + $success = false; + $obj = wincache_ucache_get($this->cachePrefix.$pCoord.'.cache', $success); + if ($success === false) { + // Entry no longer exists in WinCache, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new PHPExcel_Exception('Cell entry '.$pCoord.' no longer exists in WinCache'); + } + } else { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->currentObjectID = $pCoord; + $this->currentObject = unserialize($obj); + // Re-attach this as the cell's parent + $this->currentObject->attach($this); + + // Return requested entry + return $this->currentObject; + } + + + /** + * Get a list of all cell addresses currently held in cache + * + * @return string[] + */ + public function getCellList() + { + if ($this->currentObjectID !== null) { + $this->storeData(); + } + + return parent::getCellList(); + } + + /** + * Delete a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to delete + * @throws PHPExcel_Exception + */ + public function deleteCacheData($pCoord) + { + // Delete the entry from Wincache + wincache_ucache_delete($this->cachePrefix.$pCoord.'.cache'); + + // Delete the entry from our cell address array + parent::deleteCacheData($pCoord); + } + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) + { + parent::copyCellCollection($parent); + // Get a new id for the new file name + $baseUnique = $this->getUniqueID(); + $newCachePrefix = substr(md5($baseUnique), 0, 8) . '.'; + $cacheList = $this->getCellList(); + foreach ($cacheList as $cellID) { + if ($cellID != $this->currentObjectID) { + $success = false; + $obj = wincache_ucache_get($this->cachePrefix.$cellID.'.cache', $success); + if ($success === false) { + // Entry no longer exists in WinCache, so clear it from the cache array + parent::deleteCacheData($cellID); + throw new PHPExcel_Exception('Cell entry '.$cellID.' no longer exists in Wincache'); + } + if (!wincache_ucache_add($newCachePrefix.$cellID.'.cache', $obj, $this->cacheTime)) { + $this->__destruct(); + throw new PHPExcel_Exception('Failed to store cell '.$cellID.' in Wincache'); + } + } + } + $this->cachePrefix = $newCachePrefix; + } + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() + { + if (!is_null($this->currentObject)) { + $this->currentObject->detach(); + $this->currentObject = $this->currentObjectID = null; + } + + // Flush the WinCache cache + $this->__destruct(); + + $this->cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->parent = null; + } + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + * @param array of mixed $arguments Additional initialisation arguments + */ + public function __construct(PHPExcel_Worksheet $parent, $arguments) + { + $cacheTime = (isset($arguments['cacheTime'])) ? $arguments['cacheTime'] : 600; + + if (is_null($this->cachePrefix)) { + $baseUnique = $this->getUniqueID(); + $this->cachePrefix = substr(md5($baseUnique), 0, 8).'.'; + $this->cacheTime = $cacheTime; + + parent::__construct($parent); + } + } + + /** + * Destroy this cell collection + */ + public function __destruct() + { + $cacheList = $this->getCellList(); + foreach ($cacheList as $cellID) { + wincache_ucache_delete($this->cachePrefix.$cellID.'.cache'); + } + } + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() + { + if (!function_exists('wincache_ucache_add')) { + return false; + } + + return true; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/_notes/dwsync.xml new file mode 100644 index 0000000..ce5f34a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorage/_notes/dwsync.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorageFactory.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorageFactory.php new file mode 100644 index 0000000..0a96978 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CachedObjectStorageFactory.php @@ -0,0 +1,231 @@ + array( + ), + self::cache_in_memory_gzip => array( + ), + self::cache_in_memory_serialized => array( + ), + self::cache_igbinary => array( + ), + self::cache_to_phpTemp => array( 'memoryCacheSize' => '1MB' + ), + self::cache_to_discISAM => array( 'dir' => null + ), + self::cache_to_apc => array( 'cacheTime' => 600 + ), + self::cache_to_memcache => array( 'memcacheServer' => 'localhost', + 'memcachePort' => 11211, + 'cacheTime' => 600 + ), + self::cache_to_wincache => array( 'cacheTime' => 600 + ), + self::cache_to_sqlite => array( + ), + self::cache_to_sqlite3 => array( + ), + ); + + /** + * Arguments for the active cache storage method + * + * @var array of mixed array + */ + private static $storageMethodParameters = array(); + + /** + * Return the current cache storage method + * + * @return string|null + **/ + public static function getCacheStorageMethod() + { + return self::$cacheStorageMethod; + } + + /** + * Return the current cache storage class + * + * @return PHPExcel_CachedObjectStorage_ICache|null + **/ + public static function getCacheStorageClass() + { + return self::$cacheStorageClass; + } + + /** + * Return the list of all possible cache storage methods + * + * @return string[] + **/ + public static function getAllCacheStorageMethods() + { + return self::$storageMethods; + } + + /** + * Return the list of all available cache storage methods + * + * @return string[] + **/ + public static function getCacheStorageMethods() + { + $activeMethods = array(); + foreach (self::$storageMethods as $storageMethod) { + $cacheStorageClass = 'PHPExcel_CachedObjectStorage_' . $storageMethod; + if (call_user_func(array($cacheStorageClass, 'cacheMethodIsAvailable'))) { + $activeMethods[] = $storageMethod; + } + } + return $activeMethods; + } + + /** + * Identify the cache storage method to use + * + * @param string $method Name of the method to use for cell cacheing + * @param array of mixed $arguments Additional arguments to pass to the cell caching class + * when instantiating + * @return boolean + **/ + public static function initialize($method = self::cache_in_memory, $arguments = array()) + { + if (!in_array($method, self::$storageMethods)) { + return false; + } + + $cacheStorageClass = 'PHPExcel_CachedObjectStorage_'.$method; + if (!call_user_func(array( $cacheStorageClass, + 'cacheMethodIsAvailable'))) { + return false; + } + + self::$storageMethodParameters[$method] = self::$storageMethodDefaultParameters[$method]; + foreach ($arguments as $k => $v) { + if (array_key_exists($k, self::$storageMethodParameters[$method])) { + self::$storageMethodParameters[$method][$k] = $v; + } + } + + if (self::$cacheStorageMethod === null) { + self::$cacheStorageClass = 'PHPExcel_CachedObjectStorage_' . $method; + self::$cacheStorageMethod = $method; + } + return true; + } + + /** + * Initialise the cache storage + * + * @param PHPExcel_Worksheet $parent Enable cell caching for this worksheet + * @return PHPExcel_CachedObjectStorage_ICache + **/ + public static function getInstance(PHPExcel_Worksheet $parent) + { + $cacheMethodIsAvailable = true; + if (self::$cacheStorageMethod === null) { + $cacheMethodIsAvailable = self::initialize(); + } + + if ($cacheMethodIsAvailable) { + $instance = new self::$cacheStorageClass( + $parent, + self::$storageMethodParameters[self::$cacheStorageMethod] + ); + if ($instance !== null) { + return $instance; + } + } + + return false; + } + + /** + * Clear the cache storage + * + **/ + public static function finalize() + { + self::$cacheStorageMethod = null; + self::$cacheStorageClass = null; + self::$storageMethodParameters = array(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CalcEngine/CyclicReferenceStack.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CalcEngine/CyclicReferenceStack.php new file mode 100644 index 0000000..1072fc7 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CalcEngine/CyclicReferenceStack.php @@ -0,0 +1,94 @@ +stack); + } + + /** + * Push a new entry onto the stack + * + * @param mixed $value + */ + public function push($value) + { + $this->stack[$value] = $value; + } + + /** + * Pop the last entry from the stack + * + * @return mixed + */ + public function pop() + { + return array_pop($this->stack); + } + + /** + * Test to see if a specified entry exists on the stack + * + * @param mixed $value The value to test + */ + public function onStack($value) + { + return isset($this->stack[$value]); + } + + /** + * Clear the stack + */ + public function clear() + { + $this->stack = array(); + } + + /** + * Return an array of all entries on the stack + * + * @return mixed[] + */ + public function showStack() + { + return $this->stack; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CalcEngine/Logger.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/CalcEngine/Logger.php new file mode 100644 index 0000000..c5ffe73 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CalcEngine/Logger.php @@ -0,0 +1,151 @@ +cellStack = $stack; + } + + /** + * Enable/Disable Calculation engine logging + * + * @param boolean $pValue + */ + public function setWriteDebugLog($pValue = false) + { + $this->writeDebugLog = $pValue; + } + + /** + * Return whether calculation engine logging is enabled or disabled + * + * @return boolean + */ + public function getWriteDebugLog() + { + return $this->writeDebugLog; + } + + /** + * Enable/Disable echoing of debug log information + * + * @param boolean $pValue + */ + public function setEchoDebugLog($pValue = false) + { + $this->echoDebugLog = $pValue; + } + + /** + * Return whether echoing of debug log information is enabled or disabled + * + * @return boolean + */ + public function getEchoDebugLog() + { + return $this->echoDebugLog; + } + + /** + * Write an entry to the calculation engine debug log + */ + public function writeDebugLog() + { + // Only write the debug log if logging is enabled + if ($this->writeDebugLog) { + $message = implode(func_get_args()); + $cellReference = implode(' -> ', $this->cellStack->showStack()); + if ($this->echoDebugLog) { + echo $cellReference, + ($this->cellStack->count() > 0 ? ' => ' : ''), + $message, + PHP_EOL; + } + $this->debugLog[] = $cellReference . + ($this->cellStack->count() > 0 ? ' => ' : '') . + $message; + } + } + + /** + * Clear the calculation engine debug log + */ + public function clearLog() + { + $this->debugLog = array(); + } + + /** + * Return the calculation engine debug log + * + * @return string[] + */ + public function getLog() + { + return $this->debugLog; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/CalcEngine/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/CalcEngine/_notes/dwsync.xml new file mode 100644 index 0000000..70ab994 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/CalcEngine/_notes/dwsync.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation.php new file mode 100644 index 0000000..20b1ec3 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation.php @@ -0,0 +1,4391 @@ +=-]*)|(\'[^\']*\')|(\"[^\"]*\"))!)?\$?([a-z]{1,3})\$?(\d{1,7})'); + // Named Range of cells + define('CALCULATION_REGEXP_NAMEDRANGE', '((([^\s,!&%^\/\*\+<>=-]*)|(\'[^\']*\')|(\"[^\"]*\"))!)?([_A-Z][_A-Z0-9\.]*)'); + } else { + // Cell reference (cell or range of cells, with or without a sheet reference) + define('CALCULATION_REGEXP_CELLREF', '(((\w*)|(\'[^\']*\')|(\"[^\"]*\"))!)?\$?([a-z]{1,3})\$?(\d+)'); + // Named Range of cells + define('CALCULATION_REGEXP_NAMEDRANGE', '(((\w*)|(\'.*\')|(\".*\"))!)?([_A-Z][_A-Z0-9\.]*)'); + } +} + +/** + * PHPExcel_Calculation (Multiton) + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Calculation +{ + /** Constants */ + /** Regular Expressions */ + // Numeric operand + const CALCULATION_REGEXP_NUMBER = '[-+]?\d*\.?\d+(e[-+]?\d+)?'; + // String operand + const CALCULATION_REGEXP_STRING = '"(?:[^"]|"")*"'; + // Opening bracket + const CALCULATION_REGEXP_OPENBRACE = '\('; + // Function (allow for the old @ symbol that could be used to prefix a function, but we'll ignore it) + const CALCULATION_REGEXP_FUNCTION = '@?([A-Z][A-Z0-9\.]*)[\s]*\('; + // Cell reference (cell or range of cells, with or without a sheet reference) + const CALCULATION_REGEXP_CELLREF = CALCULATION_REGEXP_CELLREF; + // Named Range of cells + const CALCULATION_REGEXP_NAMEDRANGE = CALCULATION_REGEXP_NAMEDRANGE; + // Error + const CALCULATION_REGEXP_ERROR = '\#[A-Z][A-Z0_\/]*[!\?]?'; + + + /** constants */ + const RETURN_ARRAY_AS_ERROR = 'error'; + const RETURN_ARRAY_AS_VALUE = 'value'; + const RETURN_ARRAY_AS_ARRAY = 'array'; + + private static $returnArrayAsType = self::RETURN_ARRAY_AS_VALUE; + + + /** + * Instance of this class + * + * @access private + * @var PHPExcel_Calculation + */ + private static $instance; + + + /** + * Instance of the workbook this Calculation Engine is using + * + * @access private + * @var PHPExcel + */ + private $workbook; + + /** + * List of instances of the calculation engine that we've instantiated for individual workbooks + * + * @access private + * @var PHPExcel_Calculation[] + */ + private static $workbookSets; + + /** + * Calculation cache + * + * @access private + * @var array + */ + private $calculationCache = array (); + + + /** + * Calculation cache enabled + * + * @access private + * @var boolean + */ + private $calculationCacheEnabled = true; + + + /** + * List of operators that can be used within formulae + * The true/false value indicates whether it is a binary operator or a unary operator + * + * @access private + * @var array + */ + private static $operators = array( + '+' => true, '-' => true, '*' => true, '/' => true, + '^' => true, '&' => true, '%' => false, '~' => false, + '>' => true, '<' => true, '=' => true, '>=' => true, + '<=' => true, '<>' => true, '|' => true, ':' => true + ); + + /** + * List of binary operators (those that expect two operands) + * + * @access private + * @var array + */ + private static $binaryOperators = array( + '+' => true, '-' => true, '*' => true, '/' => true, + '^' => true, '&' => true, '>' => true, '<' => true, + '=' => true, '>=' => true, '<=' => true, '<>' => true, + '|' => true, ':' => true + ); + + /** + * The debug log generated by the calculation engine + * + * @access private + * @var PHPExcel_CalcEngine_Logger + * + */ + private $debugLog; + + /** + * Flag to determine how formula errors should be handled + * If true, then a user error will be triggered + * If false, then an exception will be thrown + * + * @access public + * @var boolean + * + */ + public $suppressFormulaErrors = false; + + /** + * Error message for any error that was raised/thrown by the calculation engine + * + * @access public + * @var string + * + */ + public $formulaError = null; + + /** + * An array of the nested cell references accessed by the calculation engine, used for the debug log + * + * @access private + * @var array of string + * + */ + private $cyclicReferenceStack; + + private $cellStack = array(); + + /** + * Current iteration counter for cyclic formulae + * If the value is 0 (or less) then cyclic formulae will throw an exception, + * otherwise they will iterate to the limit defined here before returning a result + * + * @var integer + * + */ + private $cyclicFormulaCounter = 1; + + private $cyclicFormulaCell = ''; + + /** + * Number of iterations for cyclic formulae + * + * @var integer + * + */ + public $cyclicFormulaCount = 1; + + /** + * Epsilon Precision used for comparisons in calculations + * + * @var float + * + */ + private $delta = 0.1e-12; + + + /** + * The current locale setting + * + * @var string + * + */ + private static $localeLanguage = 'en_us'; // US English (default locale) + + /** + * List of available locale settings + * Note that this is read for the locale subdirectory only when requested + * + * @var string[] + * + */ + private static $validLocaleLanguages = array( + 'en' // English (default language) + ); + + /** + * Locale-specific argument separator for function arguments + * + * @var string + * + */ + private static $localeArgumentSeparator = ','; + private static $localeFunctions = array(); + + /** + * Locale-specific translations for Excel constants (True, False and Null) + * + * @var string[] + * + */ + public static $localeBoolean = array( + 'TRUE' => 'TRUE', + 'FALSE' => 'FALSE', + 'NULL' => 'NULL' + ); + + /** + * Excel constant string translations to their PHP equivalents + * Constant conversion from text name/value to actual (datatyped) value + * + * @var string[] + * + */ + private static $excelConstants = array( + 'TRUE' => true, + 'FALSE' => false, + 'NULL' => null + ); + + // PHPExcel functions + private static $PHPExcelFunctions = array( + 'ABS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'abs', + 'argumentCount' => '1' + ), + 'ACCRINT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::ACCRINT', + 'argumentCount' => '4-7' + ), + 'ACCRINTM' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::ACCRINTM', + 'argumentCount' => '3-5' + ), + 'ACOS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'acos', + 'argumentCount' => '1' + ), + 'ACOSH' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'acosh', + 'argumentCount' => '1' + ), + 'ADDRESS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::CELL_ADDRESS', + 'argumentCount' => '2-5' + ), + 'AMORDEGRC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::AMORDEGRC', + 'argumentCount' => '6,7' + ), + 'AMORLINC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::AMORLINC', + 'argumentCount' => '6,7' + ), + 'AND' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::LOGICAL_AND', + 'argumentCount' => '1+' + ), + 'AREAS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'ASC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'ASIN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'asin', + 'argumentCount' => '1' + ), + 'ASINH' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'asinh', + 'argumentCount' => '1' + ), + 'ATAN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'atan', + 'argumentCount' => '1' + ), + 'ATAN2' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::ATAN2', + 'argumentCount' => '2' + ), + 'ATANH' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'atanh', + 'argumentCount' => '1' + ), + 'AVEDEV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::AVEDEV', + 'argumentCount' => '1+' + ), + 'AVERAGE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGE', + 'argumentCount' => '1+' + ), + 'AVERAGEA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGEA', + 'argumentCount' => '1+' + ), + 'AVERAGEIF' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGEIF', + 'argumentCount' => '2,3' + ), + 'AVERAGEIFS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '3+' + ), + 'BAHTTEXT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'BESSELI' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELI', + 'argumentCount' => '2' + ), + 'BESSELJ' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELJ', + 'argumentCount' => '2' + ), + 'BESSELK' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELK', + 'argumentCount' => '2' + ), + 'BESSELY' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELY', + 'argumentCount' => '2' + ), + 'BETADIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::BETADIST', + 'argumentCount' => '3-5' + ), + 'BETAINV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::BETAINV', + 'argumentCount' => '3-5' + ), + 'BIN2DEC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTODEC', + 'argumentCount' => '1' + ), + 'BIN2HEX' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTOHEX', + 'argumentCount' => '1,2' + ), + 'BIN2OCT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTOOCT', + 'argumentCount' => '1,2' + ), + 'BINOMDIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::BINOMDIST', + 'argumentCount' => '4' + ), + 'CEILING' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::CEILING', + 'argumentCount' => '2' + ), + 'CELL' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1,2' + ), + 'CHAR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::CHARACTER', + 'argumentCount' => '1' + ), + 'CHIDIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CHIDIST', + 'argumentCount' => '2' + ), + 'CHIINV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CHIINV', + 'argumentCount' => '2' + ), + 'CHITEST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'CHOOSE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::CHOOSE', + 'argumentCount' => '2+' + ), + 'CLEAN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::TRIMNONPRINTABLE', + 'argumentCount' => '1' + ), + 'CODE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::ASCIICODE', + 'argumentCount' => '1' + ), + 'COLUMN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::COLUMN', + 'argumentCount' => '-1', + 'passByReference' => array(true) + ), + 'COLUMNS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::COLUMNS', + 'argumentCount' => '1' + ), + 'COMBIN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::COMBIN', + 'argumentCount' => '2' + ), + 'COMPLEX' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::COMPLEX', + 'argumentCount' => '2,3' + ), + 'CONCATENATE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::CONCATENATE', + 'argumentCount' => '1+' + ), + 'CONFIDENCE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CONFIDENCE', + 'argumentCount' => '3' + ), + 'CONVERT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::CONVERTUOM', + 'argumentCount' => '3' + ), + 'CORREL' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CORREL', + 'argumentCount' => '2' + ), + 'COS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'cos', + 'argumentCount' => '1' + ), + 'COSH' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'cosh', + 'argumentCount' => '1' + ), + 'COUNT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNT', + 'argumentCount' => '1+' + ), + 'COUNTA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTA', + 'argumentCount' => '1+' + ), + 'COUNTBLANK' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTBLANK', + 'argumentCount' => '1' + ), + 'COUNTIF' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTIF', + 'argumentCount' => '2' + ), + 'COUNTIFS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'COUPDAYBS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYBS', + 'argumentCount' => '3,4' + ), + 'COUPDAYS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYS', + 'argumentCount' => '3,4' + ), + 'COUPDAYSNC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYSNC', + 'argumentCount' => '3,4' + ), + 'COUPNCD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPNCD', + 'argumentCount' => '3,4' + ), + 'COUPNUM' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPNUM', + 'argumentCount' => '3,4' + ), + 'COUPPCD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPPCD', + 'argumentCount' => '3,4' + ), + 'COVAR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::COVAR', + 'argumentCount' => '2' + ), + 'CRITBINOM' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CRITBINOM', + 'argumentCount' => '3' + ), + 'CUBEKPIMEMBER' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBEMEMBER' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBEMEMBERPROPERTY' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBERANKEDMEMBER' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBESET' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBESETCOUNT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBEVALUE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUMIPMT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::CUMIPMT', + 'argumentCount' => '6' + ), + 'CUMPRINC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::CUMPRINC', + 'argumentCount' => '6' + ), + 'DATE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DATE', + 'argumentCount' => '3' + ), + 'DATEDIF' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DATEDIF', + 'argumentCount' => '2,3' + ), + 'DATEVALUE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DATEVALUE', + 'argumentCount' => '1' + ), + 'DAVERAGE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DAVERAGE', + 'argumentCount' => '3' + ), + 'DAY' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DAYOFMONTH', + 'argumentCount' => '1' + ), + 'DAYS360' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DAYS360', + 'argumentCount' => '2,3' + ), + 'DB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::DB', + 'argumentCount' => '4,5' + ), + 'DCOUNT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DCOUNT', + 'argumentCount' => '3' + ), + 'DCOUNTA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DCOUNTA', + 'argumentCount' => '3' + ), + 'DDB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::DDB', + 'argumentCount' => '4,5' + ), + 'DEC2BIN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOBIN', + 'argumentCount' => '1,2' + ), + 'DEC2HEX' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOHEX', + 'argumentCount' => '1,2' + ), + 'DEC2OCT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOOCT', + 'argumentCount' => '1,2' + ), + 'DEGREES' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'rad2deg', + 'argumentCount' => '1' + ), + 'DELTA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::DELTA', + 'argumentCount' => '1,2' + ), + 'DEVSQ' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::DEVSQ', + 'argumentCount' => '1+' + ), + 'DGET' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DGET', + 'argumentCount' => '3' + ), + 'DISC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::DISC', + 'argumentCount' => '4,5' + ), + 'DMAX' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DMAX', + 'argumentCount' => '3' + ), + 'DMIN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DMIN', + 'argumentCount' => '3' + ), + 'DOLLAR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::DOLLAR', + 'argumentCount' => '1,2' + ), + 'DOLLARDE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::DOLLARDE', + 'argumentCount' => '2' + ), + 'DOLLARFR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::DOLLARFR', + 'argumentCount' => '2' + ), + 'DPRODUCT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DPRODUCT', + 'argumentCount' => '3' + ), + 'DSTDEV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DSTDEV', + 'argumentCount' => '3' + ), + 'DSTDEVP' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DSTDEVP', + 'argumentCount' => '3' + ), + 'DSUM' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DSUM', + 'argumentCount' => '3' + ), + 'DURATION' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '5,6' + ), + 'DVAR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DVAR', + 'argumentCount' => '3' + ), + 'DVARP' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DVARP', + 'argumentCount' => '3' + ), + 'EDATE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::EDATE', + 'argumentCount' => '2' + ), + 'EFFECT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::EFFECT', + 'argumentCount' => '2' + ), + 'EOMONTH' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::EOMONTH', + 'argumentCount' => '2' + ), + 'ERF' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::ERF', + 'argumentCount' => '1,2' + ), + 'ERFC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::ERFC', + 'argumentCount' => '1' + ), + 'ERROR.TYPE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::ERROR_TYPE', + 'argumentCount' => '1' + ), + 'EVEN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::EVEN', + 'argumentCount' => '1' + ), + 'EXACT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'EXP' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'exp', + 'argumentCount' => '1' + ), + 'EXPONDIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::EXPONDIST', + 'argumentCount' => '3' + ), + 'FACT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::FACT', + 'argumentCount' => '1' + ), + 'FACTDOUBLE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::FACTDOUBLE', + 'argumentCount' => '1' + ), + 'FALSE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::FALSE', + 'argumentCount' => '0' + ), + 'FDIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '3' + ), + 'FIND' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHSENSITIVE', + 'argumentCount' => '2,3' + ), + 'FINDB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHSENSITIVE', + 'argumentCount' => '2,3' + ), + 'FINV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '3' + ), + 'FISHER' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::FISHER', + 'argumentCount' => '1' + ), + 'FISHERINV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::FISHERINV', + 'argumentCount' => '1' + ), + 'FIXED' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::FIXEDFORMAT', + 'argumentCount' => '1-3' + ), + 'FLOOR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::FLOOR', + 'argumentCount' => '2' + ), + 'FORECAST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::FORECAST', + 'argumentCount' => '3' + ), + 'FREQUENCY' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'FTEST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'FV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::FV', + 'argumentCount' => '3-5' + ), + 'FVSCHEDULE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::FVSCHEDULE', + 'argumentCount' => '2' + ), + 'GAMMADIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMADIST', + 'argumentCount' => '4' + ), + 'GAMMAINV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMAINV', + 'argumentCount' => '3' + ), + 'GAMMALN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMALN', + 'argumentCount' => '1' + ), + 'GCD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::GCD', + 'argumentCount' => '1+' + ), + 'GEOMEAN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::GEOMEAN', + 'argumentCount' => '1+' + ), + 'GESTEP' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::GESTEP', + 'argumentCount' => '1,2' + ), + 'GETPIVOTDATA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2+' + ), + 'GROWTH' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::GROWTH', + 'argumentCount' => '1-4' + ), + 'HARMEAN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::HARMEAN', + 'argumentCount' => '1+' + ), + 'HEX2BIN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTOBIN', + 'argumentCount' => '1,2' + ), + 'HEX2DEC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTODEC', + 'argumentCount' => '1' + ), + 'HEX2OCT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTOOCT', + 'argumentCount' => '1,2' + ), + 'HLOOKUP' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::HLOOKUP', + 'argumentCount' => '3,4' + ), + 'HOUR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::HOUROFDAY', + 'argumentCount' => '1' + ), + 'HYPERLINK' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::HYPERLINK', + 'argumentCount' => '1,2', + 'passCellReference' => true + ), + 'HYPGEOMDIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::HYPGEOMDIST', + 'argumentCount' => '4' + ), + 'IF' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::STATEMENT_IF', + 'argumentCount' => '1-3' + ), + 'IFERROR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::IFERROR', + 'argumentCount' => '2' + ), + 'IMABS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMABS', + 'argumentCount' => '1' + ), + 'IMAGINARY' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMAGINARY', + 'argumentCount' => '1' + ), + 'IMARGUMENT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMARGUMENT', + 'argumentCount' => '1' + ), + 'IMCONJUGATE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMCONJUGATE', + 'argumentCount' => '1' + ), + 'IMCOS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMCOS', + 'argumentCount' => '1' + ), + 'IMDIV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMDIV', + 'argumentCount' => '2' + ), + 'IMEXP' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMEXP', + 'argumentCount' => '1' + ), + 'IMLN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLN', + 'argumentCount' => '1' + ), + 'IMLOG10' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLOG10', + 'argumentCount' => '1' + ), + 'IMLOG2' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLOG2', + 'argumentCount' => '1' + ), + 'IMPOWER' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMPOWER', + 'argumentCount' => '2' + ), + 'IMPRODUCT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMPRODUCT', + 'argumentCount' => '1+' + ), + 'IMREAL' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMREAL', + 'argumentCount' => '1' + ), + 'IMSIN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSIN', + 'argumentCount' => '1' + ), + 'IMSQRT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSQRT', + 'argumentCount' => '1' + ), + 'IMSUB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSUB', + 'argumentCount' => '2' + ), + 'IMSUM' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSUM', + 'argumentCount' => '1+' + ), + 'INDEX' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::INDEX', + 'argumentCount' => '1-4' + ), + 'INDIRECT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::INDIRECT', + 'argumentCount' => '1,2', + 'passCellReference' => true + ), + 'INFO' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'INT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::INT', + 'argumentCount' => '1' + ), + 'INTERCEPT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::INTERCEPT', + 'argumentCount' => '2' + ), + 'INTRATE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::INTRATE', + 'argumentCount' => '4,5' + ), + 'IPMT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::IPMT', + 'argumentCount' => '4-6' + ), + 'IRR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::IRR', + 'argumentCount' => '1,2' + ), + 'ISBLANK' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_BLANK', + 'argumentCount' => '1' + ), + 'ISERR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ERR', + 'argumentCount' => '1' + ), + 'ISERROR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ERROR', + 'argumentCount' => '1' + ), + 'ISEVEN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_EVEN', + 'argumentCount' => '1' + ), + 'ISLOGICAL' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_LOGICAL', + 'argumentCount' => '1' + ), + 'ISNA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NA', + 'argumentCount' => '1' + ), + 'ISNONTEXT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NONTEXT', + 'argumentCount' => '1' + ), + 'ISNUMBER' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NUMBER', + 'argumentCount' => '1' + ), + 'ISODD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ODD', + 'argumentCount' => '1' + ), + 'ISPMT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::ISPMT', + 'argumentCount' => '4' + ), + 'ISREF' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'ISTEXT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_TEXT', + 'argumentCount' => '1' + ), + 'JIS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'KURT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::KURT', + 'argumentCount' => '1+' + ), + 'LARGE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::LARGE', + 'argumentCount' => '2' + ), + 'LCM' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::LCM', + 'argumentCount' => '1+' + ), + 'LEFT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::LEFT', + 'argumentCount' => '1,2' + ), + 'LEFTB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::LEFT', + 'argumentCount' => '1,2' + ), + 'LEN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::STRINGLENGTH', + 'argumentCount' => '1' + ), + 'LENB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::STRINGLENGTH', + 'argumentCount' => '1' + ), + 'LINEST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::LINEST', + 'argumentCount' => '1-4' + ), + 'LN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'log', + 'argumentCount' => '1' + ), + 'LOG' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::LOG_BASE', + 'argumentCount' => '1,2' + ), + 'LOG10' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'log10', + 'argumentCount' => '1' + ), + 'LOGEST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::LOGEST', + 'argumentCount' => '1-4' + ), + 'LOGINV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::LOGINV', + 'argumentCount' => '3' + ), + 'LOGNORMDIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::LOGNORMDIST', + 'argumentCount' => '3' + ), + 'LOOKUP' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::LOOKUP', + 'argumentCount' => '2,3' + ), + 'LOWER' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::LOWERCASE', + 'argumentCount' => '1' + ), + 'MATCH' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::MATCH', + 'argumentCount' => '2,3' + ), + 'MAX' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MAX', + 'argumentCount' => '1+' + ), + 'MAXA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MAXA', + 'argumentCount' => '1+' + ), + 'MAXIF' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MAXIF', + 'argumentCount' => '2+' + ), + 'MDETERM' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MDETERM', + 'argumentCount' => '1' + ), + 'MDURATION' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '5,6' + ), + 'MEDIAN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MEDIAN', + 'argumentCount' => '1+' + ), + 'MEDIANIF' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2+' + ), + 'MID' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::MID', + 'argumentCount' => '3' + ), + 'MIDB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::MID', + 'argumentCount' => '3' + ), + 'MIN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MIN', + 'argumentCount' => '1+' + ), + 'MINA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MINA', + 'argumentCount' => '1+' + ), + 'MINIF' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MINIF', + 'argumentCount' => '2+' + ), + 'MINUTE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::MINUTEOFHOUR', + 'argumentCount' => '1' + ), + 'MINVERSE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MINVERSE', + 'argumentCount' => '1' + ), + 'MIRR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::MIRR', + 'argumentCount' => '3' + ), + 'MMULT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MMULT', + 'argumentCount' => '2' + ), + 'MOD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MOD', + 'argumentCount' => '2' + ), + 'MODE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MODE', + 'argumentCount' => '1+' + ), + 'MONTH' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::MONTHOFYEAR', + 'argumentCount' => '1' + ), + 'MROUND' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MROUND', + 'argumentCount' => '2' + ), + 'MULTINOMIAL' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MULTINOMIAL', + 'argumentCount' => '1+' + ), + 'N' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::N', + 'argumentCount' => '1' + ), + 'NA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::NA', + 'argumentCount' => '0' + ), + 'NEGBINOMDIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::NEGBINOMDIST', + 'argumentCount' => '3' + ), + 'NETWORKDAYS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::NETWORKDAYS', + 'argumentCount' => '2+' + ), + 'NOMINAL' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::NOMINAL', + 'argumentCount' => '2' + ), + 'NORMDIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::NORMDIST', + 'argumentCount' => '4' + ), + 'NORMINV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::NORMINV', + 'argumentCount' => '3' + ), + 'NORMSDIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::NORMSDIST', + 'argumentCount' => '1' + ), + 'NORMSINV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::NORMSINV', + 'argumentCount' => '1' + ), + 'NOT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::NOT', + 'argumentCount' => '1' + ), + 'NOW' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DATETIMENOW', + 'argumentCount' => '0' + ), + 'NPER' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::NPER', + 'argumentCount' => '3-5' + ), + 'NPV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::NPV', + 'argumentCount' => '2+' + ), + 'OCT2BIN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::OCTTOBIN', + 'argumentCount' => '1,2' + ), + 'OCT2DEC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::OCTTODEC', + 'argumentCount' => '1' + ), + 'OCT2HEX' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::OCTTOHEX', + 'argumentCount' => '1,2' + ), + 'ODD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::ODD', + 'argumentCount' => '1' + ), + 'ODDFPRICE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '8,9' + ), + 'ODDFYIELD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '8,9' + ), + 'ODDLPRICE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '7,8' + ), + 'ODDLYIELD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '7,8' + ), + 'OFFSET' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::OFFSET', + 'argumentCount' => '3-5', + 'passCellReference' => true, + 'passByReference' => array(true) + ), + 'OR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::LOGICAL_OR', + 'argumentCount' => '1+' + ), + 'PEARSON' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CORREL', + 'argumentCount' => '2' + ), + 'PERCENTILE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::PERCENTILE', + 'argumentCount' => '2' + ), + 'PERCENTRANK' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::PERCENTRANK', + 'argumentCount' => '2,3' + ), + 'PERMUT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::PERMUT', + 'argumentCount' => '2' + ), + 'PHONETIC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'PI' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'pi', + 'argumentCount' => '0' + ), + 'PMT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PMT', + 'argumentCount' => '3-5' + ), + 'POISSON' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::POISSON', + 'argumentCount' => '3' + ), + 'POWER' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::POWER', + 'argumentCount' => '2' + ), + 'PPMT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PPMT', + 'argumentCount' => '4-6' + ), + 'PRICE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PRICE', + 'argumentCount' => '6,7' + ), + 'PRICEDISC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PRICEDISC', + 'argumentCount' => '4,5' + ), + 'PRICEMAT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PRICEMAT', + 'argumentCount' => '5,6' + ), + 'PROB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '3,4' + ), + 'PRODUCT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::PRODUCT', + 'argumentCount' => '1+' + ), + 'PROPER' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::PROPERCASE', + 'argumentCount' => '1' + ), + 'PV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PV', + 'argumentCount' => '3-5' + ), + 'QUARTILE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::QUARTILE', + 'argumentCount' => '2' + ), + 'QUOTIENT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::QUOTIENT', + 'argumentCount' => '2' + ), + 'RADIANS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'deg2rad', + 'argumentCount' => '1' + ), + 'RAND' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::RAND', + 'argumentCount' => '0' + ), + 'RANDBETWEEN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::RAND', + 'argumentCount' => '2' + ), + 'RANK' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::RANK', + 'argumentCount' => '2,3' + ), + 'RATE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::RATE', + 'argumentCount' => '3-6' + ), + 'RECEIVED' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::RECEIVED', + 'argumentCount' => '4-5' + ), + 'REPLACE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::REPLACE', + 'argumentCount' => '4' + ), + 'REPLACEB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::REPLACE', + 'argumentCount' => '4' + ), + 'REPT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'str_repeat', + 'argumentCount' => '2' + ), + 'RIGHT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::RIGHT', + 'argumentCount' => '1,2' + ), + 'RIGHTB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::RIGHT', + 'argumentCount' => '1,2' + ), + 'ROMAN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::ROMAN', + 'argumentCount' => '1,2' + ), + 'ROUND' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'round', + 'argumentCount' => '2' + ), + 'ROUNDDOWN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::ROUNDDOWN', + 'argumentCount' => '2' + ), + 'ROUNDUP' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::ROUNDUP', + 'argumentCount' => '2' + ), + 'ROW' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::ROW', + 'argumentCount' => '-1', + 'passByReference' => array(true) + ), + 'ROWS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::ROWS', + 'argumentCount' => '1' + ), + 'RSQ' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::RSQ', + 'argumentCount' => '2' + ), + 'RTD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1+' + ), + 'SEARCH' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHINSENSITIVE', + 'argumentCount' => '2,3' + ), + 'SEARCHB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHINSENSITIVE', + 'argumentCount' => '2,3' + ), + 'SECOND' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::SECONDOFMINUTE', + 'argumentCount' => '1' + ), + 'SERIESSUM' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SERIESSUM', + 'argumentCount' => '4' + ), + 'SIGN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SIGN', + 'argumentCount' => '1' + ), + 'SIN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'sin', + 'argumentCount' => '1' + ), + 'SINH' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'sinh', + 'argumentCount' => '1' + ), + 'SKEW' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::SKEW', + 'argumentCount' => '1+' + ), + 'SLN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::SLN', + 'argumentCount' => '3' + ), + 'SLOPE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::SLOPE', + 'argumentCount' => '2' + ), + 'SMALL' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::SMALL', + 'argumentCount' => '2' + ), + 'SQRT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'sqrt', + 'argumentCount' => '1' + ), + 'SQRTPI' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SQRTPI', + 'argumentCount' => '1' + ), + 'STANDARDIZE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STANDARDIZE', + 'argumentCount' => '3' + ), + 'STDEV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STDEV', + 'argumentCount' => '1+' + ), + 'STDEVA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STDEVA', + 'argumentCount' => '1+' + ), + 'STDEVP' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STDEVP', + 'argumentCount' => '1+' + ), + 'STDEVPA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STDEVPA', + 'argumentCount' => '1+' + ), + 'STEYX' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STEYX', + 'argumentCount' => '2' + ), + 'SUBSTITUTE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::SUBSTITUTE', + 'argumentCount' => '3,4' + ), + 'SUBTOTAL' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUBTOTAL', + 'argumentCount' => '2+' + ), + 'SUM' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUM', + 'argumentCount' => '1+' + ), + 'SUMIF' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMIF', + 'argumentCount' => '2,3' + ), + 'SUMIFS' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMIFS', + 'argumentCount' => '3+' + ), + 'SUMPRODUCT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMPRODUCT', + 'argumentCount' => '1+' + ), + 'SUMSQ' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMSQ', + 'argumentCount' => '1+' + ), + 'SUMX2MY2' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMX2MY2', + 'argumentCount' => '2' + ), + 'SUMX2PY2' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMX2PY2', + 'argumentCount' => '2' + ), + 'SUMXMY2' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMXMY2', + 'argumentCount' => '2' + ), + 'SYD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::SYD', + 'argumentCount' => '4' + ), + 'T' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::RETURNSTRING', + 'argumentCount' => '1' + ), + 'TAN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'tan', + 'argumentCount' => '1' + ), + 'TANH' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'tanh', + 'argumentCount' => '1' + ), + 'TBILLEQ' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::TBILLEQ', + 'argumentCount' => '3' + ), + 'TBILLPRICE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::TBILLPRICE', + 'argumentCount' => '3' + ), + 'TBILLYIELD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::TBILLYIELD', + 'argumentCount' => '3' + ), + 'TDIST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::TDIST', + 'argumentCount' => '3' + ), + 'TEXT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::TEXTFORMAT', + 'argumentCount' => '2' + ), + 'TIME' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::TIME', + 'argumentCount' => '3' + ), + 'TIMEVALUE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::TIMEVALUE', + 'argumentCount' => '1' + ), + 'TINV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::TINV', + 'argumentCount' => '2' + ), + 'TODAY' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DATENOW', + 'argumentCount' => '0' + ), + 'TRANSPOSE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::TRANSPOSE', + 'argumentCount' => '1' + ), + 'TREND' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::TREND', + 'argumentCount' => '1-4' + ), + 'TRIM' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::TRIMSPACES', + 'argumentCount' => '1' + ), + 'TRIMMEAN' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::TRIMMEAN', + 'argumentCount' => '2' + ), + 'TRUE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::TRUE', + 'argumentCount' => '0' + ), + 'TRUNC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::TRUNC', + 'argumentCount' => '1,2' + ), + 'TTEST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '4' + ), + 'TYPE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::TYPE', + 'argumentCount' => '1' + ), + 'UPPER' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::UPPERCASE', + 'argumentCount' => '1' + ), + 'USDOLLAR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'VALUE' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::VALUE', + 'argumentCount' => '1' + ), + 'VAR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::VARFunc', + 'argumentCount' => '1+' + ), + 'VARA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::VARA', + 'argumentCount' => '1+' + ), + 'VARP' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::VARP', + 'argumentCount' => '1+' + ), + 'VARPA' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::VARPA', + 'argumentCount' => '1+' + ), + 'VDB' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '5-7' + ), + 'VERSION' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::VERSION', + 'argumentCount' => '0' + ), + 'VLOOKUP' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::VLOOKUP', + 'argumentCount' => '3,4' + ), + 'WEEKDAY' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DAYOFWEEK', + 'argumentCount' => '1,2' + ), + 'WEEKNUM' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::WEEKOFYEAR', + 'argumentCount' => '1,2' + ), + 'WEIBULL' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::WEIBULL', + 'argumentCount' => '4' + ), + 'WORKDAY' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::WORKDAY', + 'argumentCount' => '2+' + ), + 'XIRR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::XIRR', + 'argumentCount' => '2,3' + ), + 'XNPV' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::XNPV', + 'argumentCount' => '3' + ), + 'YEAR' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::YEAR', + 'argumentCount' => '1' + ), + 'YEARFRAC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::YEARFRAC', + 'argumentCount' => '2,3' + ), + 'YIELD' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '6,7' + ), + 'YIELDDISC' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::YIELDDISC', + 'argumentCount' => '4,5' + ), + 'YIELDMAT' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::YIELDMAT', + 'argumentCount' => '5,6' + ), + 'ZTEST' => array( + 'category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::ZTEST', + 'argumentCount' => '2-3' + ) + ); + + // Internal functions used for special control purposes + private static $controlFunctions = array( + 'MKMATRIX' => array( + 'argumentCount' => '*', + 'functionCall' => 'self::mkMatrix' + ) + ); + + + public function __construct(PHPExcel $workbook = null) + { + $this->delta = 1 * pow(10, 0 - ini_get('precision')); + + $this->workbook = $workbook; + $this->cyclicReferenceStack = new PHPExcel_CalcEngine_CyclicReferenceStack(); + $this->_debugLog = new PHPExcel_CalcEngine_Logger($this->cyclicReferenceStack); + } + + + private static function loadLocales() + { + $localeFileDirectory = PHPEXCEL_ROOT.'PHPExcel/locale/'; + foreach (glob($localeFileDirectory.'/*', GLOB_ONLYDIR) as $filename) { + $filename = substr($filename, strlen($localeFileDirectory)+1); + if ($filename != 'en') { + self::$validLocaleLanguages[] = $filename; + } + } + } + + /** + * Get an instance of this class + * + * @access public + * @param PHPExcel $workbook Injected workbook for working with a PHPExcel object, + * or NULL to create a standalone claculation engine + * @return PHPExcel_Calculation + */ + public static function getInstance(PHPExcel $workbook = null) + { + if ($workbook !== null) { + $instance = $workbook->getCalculationEngine(); + if (isset($instance)) { + return $instance; + } + } + + if (!isset(self::$instance) || (self::$instance === null)) { + self::$instance = new PHPExcel_Calculation(); + } + return self::$instance; + } + + /** + * Unset an instance of this class + * + * @access public + */ + public function __destruct() + { + $this->workbook = null; + } + + /** + * Flush the calculation cache for any existing instance of this class + * but only if a PHPExcel_Calculation instance exists + * + * @access public + * @return null + */ + public function flushInstance() + { + $this->clearCalculationCache(); + } + + + /** + * Get the debuglog for this claculation engine instance + * + * @access public + * @return PHPExcel_CalcEngine_Logger + */ + public function getDebugLog() + { + return $this->_debugLog; + } + + /** + * __clone implementation. Cloning should not be allowed in a Singleton! + * + * @access public + * @throws PHPExcel_Calculation_Exception + */ + final public function __clone() + { + throw new PHPExcel_Calculation_Exception('Cloning the calculation engine is not allowed!'); + } + + + /** + * Return the locale-specific translation of TRUE + * + * @access public + * @return string locale-specific translation of TRUE + */ + public static function getTRUE() + { + return self::$localeBoolean['TRUE']; + } + + /** + * Return the locale-specific translation of FALSE + * + * @access public + * @return string locale-specific translation of FALSE + */ + public static function getFALSE() + { + return self::$localeBoolean['FALSE']; + } + + /** + * Set the Array Return Type (Array or Value of first element in the array) + * + * @access public + * @param string $returnType Array return type + * @return boolean Success or failure + */ + public static function setArrayReturnType($returnType) + { + if (($returnType == self::RETURN_ARRAY_AS_VALUE) || + ($returnType == self::RETURN_ARRAY_AS_ERROR) || + ($returnType == self::RETURN_ARRAY_AS_ARRAY)) { + self::$returnArrayAsType = $returnType; + return true; + } + return false; + } + + + /** + * Return the Array Return Type (Array or Value of first element in the array) + * + * @access public + * @return string $returnType Array return type + */ + public static function getArrayReturnType() + { + return self::$returnArrayAsType; + } + + + /** + * Is calculation caching enabled? + * + * @access public + * @return boolean + */ + public function getCalculationCacheEnabled() + { + return $this->calculationCacheEnabled; + } + + /** + * Enable/disable calculation cache + * + * @access public + * @param boolean $pValue + */ + public function setCalculationCacheEnabled($pValue = true) + { + $this->calculationCacheEnabled = $pValue; + $this->clearCalculationCache(); + } + + + /** + * Enable calculation cache + */ + public function enableCalculationCache() + { + $this->setCalculationCacheEnabled(true); + } + + + /** + * Disable calculation cache + */ + public function disableCalculationCache() + { + $this->setCalculationCacheEnabled(false); + } + + + /** + * Clear calculation cache + */ + public function clearCalculationCache() + { + $this->calculationCache = array(); + } + + /** + * Clear calculation cache for a specified worksheet + * + * @param string $worksheetName + */ + public function clearCalculationCacheForWorksheet($worksheetName) + { + if (isset($this->calculationCache[$worksheetName])) { + unset($this->calculationCache[$worksheetName]); + } + } + + /** + * Rename calculation cache for a specified worksheet + * + * @param string $fromWorksheetName + * @param string $toWorksheetName + */ + public function renameCalculationCacheForWorksheet($fromWorksheetName, $toWorksheetName) + { + if (isset($this->calculationCache[$fromWorksheetName])) { + $this->calculationCache[$toWorksheetName] = &$this->calculationCache[$fromWorksheetName]; + unset($this->calculationCache[$fromWorksheetName]); + } + } + + + /** + * Get the currently defined locale code + * + * @return string + */ + public function getLocale() + { + return self::$localeLanguage; + } + + + /** + * Set the locale code + * + * @param string $locale The locale to use for formula translation + * @return boolean + */ + public function setLocale($locale = 'en_us') + { + // Identify our locale and language + $language = $locale = strtolower($locale); + if (strpos($locale, '_') !== false) { + list($language) = explode('_', $locale); + } + + if (count(self::$validLocaleLanguages) == 1) { + self::loadLocales(); + } + // Test whether we have any language data for this language (any locale) + if (in_array($language, self::$validLocaleLanguages)) { + // initialise language/locale settings + self::$localeFunctions = array(); + self::$localeArgumentSeparator = ','; + self::$localeBoolean = array('TRUE' => 'TRUE', 'FALSE' => 'FALSE', 'NULL' => 'NULL'); + // Default is English, if user isn't requesting english, then read the necessary data from the locale files + if ($locale != 'en_us') { + // Search for a file with a list of function names for locale + $functionNamesFile = PHPEXCEL_ROOT . 'PHPExcel'.DIRECTORY_SEPARATOR.'locale'.DIRECTORY_SEPARATOR.str_replace('_', DIRECTORY_SEPARATOR, $locale).DIRECTORY_SEPARATOR.'functions'; + if (!file_exists($functionNamesFile)) { + // If there isn't a locale specific function file, look for a language specific function file + $functionNamesFile = PHPEXCEL_ROOT . 'PHPExcel'.DIRECTORY_SEPARATOR.'locale'.DIRECTORY_SEPARATOR.$language.DIRECTORY_SEPARATOR.'functions'; + if (!file_exists($functionNamesFile)) { + return false; + } + } + // Retrieve the list of locale or language specific function names + $localeFunctions = file($functionNamesFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); + foreach ($localeFunctions as $localeFunction) { + list($localeFunction) = explode('##', $localeFunction); // Strip out comments + if (strpos($localeFunction, '=') !== false) { + list($fName, $lfName) = explode('=', $localeFunction); + $fName = trim($fName); + $lfName = trim($lfName); + if ((isset(self::$PHPExcelFunctions[$fName])) && ($lfName != '') && ($fName != $lfName)) { + self::$localeFunctions[$fName] = $lfName; + } + } + } + // Default the TRUE and FALSE constants to the locale names of the TRUE() and FALSE() functions + if (isset(self::$localeFunctions['TRUE'])) { + self::$localeBoolean['TRUE'] = self::$localeFunctions['TRUE']; + } + if (isset(self::$localeFunctions['FALSE'])) { + self::$localeBoolean['FALSE'] = self::$localeFunctions['FALSE']; + } + + $configFile = PHPEXCEL_ROOT . 'PHPExcel'.DIRECTORY_SEPARATOR.'locale'.DIRECTORY_SEPARATOR.str_replace('_', DIRECTORY_SEPARATOR, $locale).DIRECTORY_SEPARATOR.'config'; + if (!file_exists($configFile)) { + $configFile = PHPEXCEL_ROOT . 'PHPExcel'.DIRECTORY_SEPARATOR.'locale'.DIRECTORY_SEPARATOR.$language.DIRECTORY_SEPARATOR.'config'; + } + if (file_exists($configFile)) { + $localeSettings = file($configFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); + foreach ($localeSettings as $localeSetting) { + list($localeSetting) = explode('##', $localeSetting); // Strip out comments + if (strpos($localeSetting, '=') !== false) { + list($settingName, $settingValue) = explode('=', $localeSetting); + $settingName = strtoupper(trim($settingName)); + switch ($settingName) { + case 'ARGUMENTSEPARATOR': + self::$localeArgumentSeparator = trim($settingValue); + break; + } + } + } + } + } + + self::$functionReplaceFromExcel = self::$functionReplaceToExcel = + self::$functionReplaceFromLocale = self::$functionReplaceToLocale = null; + self::$localeLanguage = $locale; + return true; + } + return false; + } + + + + public static function translateSeparator($fromSeparator, $toSeparator, $formula, &$inBraces) + { + $strlen = mb_strlen($formula); + for ($i = 0; $i < $strlen; ++$i) { + $chr = mb_substr($formula, $i, 1); + switch ($chr) { + case '{': + $inBraces = true; + break; + case '}': + $inBraces = false; + break; + case $fromSeparator: + if (!$inBraces) { + $formula = mb_substr($formula, 0, $i).$toSeparator.mb_substr($formula, $i+1); + } + } + } + return $formula; + } + + private static function translateFormula($from, $to, $formula, $fromSeparator, $toSeparator) + { + // Convert any Excel function names to the required language + if (self::$localeLanguage !== 'en_us') { + $inBraces = false; + // If there is the possibility of braces within a quoted string, then we don't treat those as matrix indicators + if (strpos($formula, '"') !== false) { + // So instead we skip replacing in any quoted strings by only replacing in every other array element after we've exploded + // the formula + $temp = explode('"', $formula); + $i = false; + foreach ($temp as &$value) { + // Only count/replace in alternating array entries + if ($i = !$i) { + $value = preg_replace($from, $to, $value); + $value = self::translateSeparator($fromSeparator, $toSeparator, $value, $inBraces); + } + } + unset($value); + // Then rebuild the formula string + $formula = implode('"', $temp); + } else { + // If there's no quoted strings, then we do a simple count/replace + $formula = preg_replace($from, $to, $formula); + $formula = self::translateSeparator($fromSeparator, $toSeparator, $formula, $inBraces); + } + } + + return $formula; + } + + private static $functionReplaceFromExcel = null; + private static $functionReplaceToLocale = null; + + public function _translateFormulaToLocale($formula) + { + if (self::$functionReplaceFromExcel === null) { + self::$functionReplaceFromExcel = array(); + foreach (array_keys(self::$localeFunctions) as $excelFunctionName) { + self::$functionReplaceFromExcel[] = '/(@?[^\w\.])'.preg_quote($excelFunctionName).'([\s]*\()/Ui'; + } + foreach (array_keys(self::$localeBoolean) as $excelBoolean) { + self::$functionReplaceFromExcel[] = '/(@?[^\w\.])'.preg_quote($excelBoolean).'([^\w\.])/Ui'; + } + + } + + if (self::$functionReplaceToLocale === null) { + self::$functionReplaceToLocale = array(); + foreach (array_values(self::$localeFunctions) as $localeFunctionName) { + self::$functionReplaceToLocale[] = '$1'.trim($localeFunctionName).'$2'; + } + foreach (array_values(self::$localeBoolean) as $localeBoolean) { + self::$functionReplaceToLocale[] = '$1'.trim($localeBoolean).'$2'; + } + } + + return self::translateFormula(self::$functionReplaceFromExcel, self::$functionReplaceToLocale, $formula, ',', self::$localeArgumentSeparator); + } + + + private static $functionReplaceFromLocale = null; + private static $functionReplaceToExcel = null; + + public function _translateFormulaToEnglish($formula) + { + if (self::$functionReplaceFromLocale === null) { + self::$functionReplaceFromLocale = array(); + foreach (array_values(self::$localeFunctions) as $localeFunctionName) { + self::$functionReplaceFromLocale[] = '/(@?[^\w\.])'.preg_quote($localeFunctionName).'([\s]*\()/Ui'; + } + foreach (array_values(self::$localeBoolean) as $excelBoolean) { + self::$functionReplaceFromLocale[] = '/(@?[^\w\.])'.preg_quote($excelBoolean).'([^\w\.])/Ui'; + } + } + + if (self::$functionReplaceToExcel === null) { + self::$functionReplaceToExcel = array(); + foreach (array_keys(self::$localeFunctions) as $excelFunctionName) { + self::$functionReplaceToExcel[] = '$1'.trim($excelFunctionName).'$2'; + } + foreach (array_keys(self::$localeBoolean) as $excelBoolean) { + self::$functionReplaceToExcel[] = '$1'.trim($excelBoolean).'$2'; + } + } + + return self::translateFormula(self::$functionReplaceFromLocale, self::$functionReplaceToExcel, $formula, self::$localeArgumentSeparator, ','); + } + + + public static function localeFunc($function) + { + if (self::$localeLanguage !== 'en_us') { + $functionName = trim($function, '('); + if (isset(self::$localeFunctions[$functionName])) { + $brace = ($functionName != $function); + $function = self::$localeFunctions[$functionName]; + if ($brace) { + $function .= '('; + } + } + } + return $function; + } + + + + + /** + * Wrap string values in quotes + * + * @param mixed $value + * @return mixed + */ + public static function wrapResult($value) + { + if (is_string($value)) { + // Error values cannot be "wrapped" + if (preg_match('/^'.self::CALCULATION_REGEXP_ERROR.'$/i', $value, $match)) { + // Return Excel errors "as is" + return $value; + } + // Return strings wrapped in quotes + return '"'.$value.'"'; + // Convert numeric errors to NaN error + } elseif ((is_float($value)) && ((is_nan($value)) || (is_infinite($value)))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return $value; + } + + + /** + * Remove quotes used as a wrapper to identify string values + * + * @param mixed $value + * @return mixed + */ + public static function unwrapResult($value) + { + if (is_string($value)) { + if ((isset($value{0})) && ($value{0} == '"') && (substr($value, -1) == '"')) { + return substr($value, 1, -1); + } + // Convert numeric errors to NaN error + } elseif ((is_float($value)) && ((is_nan($value)) || (is_infinite($value)))) { + return PHPExcel_Calculation_Functions::NaN(); + } + return $value; + } + + + + + /** + * Calculate cell value (using formula from a cell ID) + * Retained for backward compatibility + * + * @access public + * @param PHPExcel_Cell $pCell Cell to calculate + * @return mixed + * @throws PHPExcel_Calculation_Exception + */ + public function calculate(PHPExcel_Cell $pCell = null) + { + try { + return $this->calculateCellValue($pCell); + } catch (PHPExcel_Exception $e) { + throw new PHPExcel_Calculation_Exception($e->getMessage()); + } + } + + + /** + * Calculate the value of a cell formula + * + * @access public + * @param PHPExcel_Cell $pCell Cell to calculate + * @param Boolean $resetLog Flag indicating whether the debug log should be reset or not + * @return mixed + * @throws PHPExcel_Calculation_Exception + */ + public function calculateCellValue(PHPExcel_Cell $pCell = null, $resetLog = true) + { + if ($pCell === null) { + return null; + } + + $returnArrayAsType = self::$returnArrayAsType; + if ($resetLog) { + // Initialise the logging settings if requested + $this->formulaError = null; + $this->_debugLog->clearLog(); + $this->cyclicReferenceStack->clear(); + $this->cyclicFormulaCounter = 1; + + self::$returnArrayAsType = self::RETURN_ARRAY_AS_ARRAY; + } + + // Execute the calculation for the cell formula + $this->cellStack[] = array( + 'sheet' => $pCell->getWorksheet()->getTitle(), + 'cell' => $pCell->getCoordinate(), + ); + try { + $result = self::unwrapResult($this->_calculateFormulaValue($pCell->getValue(), $pCell->getCoordinate(), $pCell)); + $cellAddress = array_pop($this->cellStack); + $this->workbook->getSheetByName($cellAddress['sheet'])->getCell($cellAddress['cell']); + } catch (PHPExcel_Exception $e) { + $cellAddress = array_pop($this->cellStack); + $this->workbook->getSheetByName($cellAddress['sheet'])->getCell($cellAddress['cell']); + throw new PHPExcel_Calculation_Exception($e->getMessage()); + } + + if ((is_array($result)) && (self::$returnArrayAsType != self::RETURN_ARRAY_AS_ARRAY)) { + self::$returnArrayAsType = $returnArrayAsType; + $testResult = PHPExcel_Calculation_Functions::flattenArray($result); + if (self::$returnArrayAsType == self::RETURN_ARRAY_AS_ERROR) { + return PHPExcel_Calculation_Functions::VALUE(); + } + // If there's only a single cell in the array, then we allow it + if (count($testResult) != 1) { + // If keys are numeric, then it's a matrix result rather than a cell range result, so we permit it + $r = array_keys($result); + $r = array_shift($r); + if (!is_numeric($r)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_array($result[$r])) { + $c = array_keys($result[$r]); + $c = array_shift($c); + if (!is_numeric($c)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + } + $result = array_shift($testResult); + } + self::$returnArrayAsType = $returnArrayAsType; + + + if ($result === null) { + return 0; + } elseif ((is_float($result)) && ((is_nan($result)) || (is_infinite($result)))) { + return PHPExcel_Calculation_Functions::NaN(); + } + return $result; + } + + + /** + * Validate and parse a formula string + * + * @param string $formula Formula to parse + * @return array + * @throws PHPExcel_Calculation_Exception + */ + public function parseFormula($formula) + { + // Basic validation that this is indeed a formula + // We return an empty array if not + $formula = trim($formula); + if ((!isset($formula{0})) || ($formula{0} != '=')) { + return array(); + } + $formula = ltrim(substr($formula, 1)); + if (!isset($formula{0})) { + return array(); + } + + // Parse the formula and return the token stack + return $this->_parseFormula($formula); + } + + + /** + * Calculate the value of a formula + * + * @param string $formula Formula to parse + * @param string $cellID Address of the cell to calculate + * @param PHPExcel_Cell $pCell Cell to calculate + * @return mixed + * @throws PHPExcel_Calculation_Exception + */ + public function calculateFormula($formula, $cellID = null, PHPExcel_Cell $pCell = null) + { + // Initialise the logging settings + $this->formulaError = null; + $this->_debugLog->clearLog(); + $this->cyclicReferenceStack->clear(); + + if ($this->workbook !== null && $cellID === null && $pCell === null) { + $cellID = 'A1'; + $pCell = $this->workbook->getActiveSheet()->getCell($cellID); + } else { + // Disable calculation cacheing because it only applies to cell calculations, not straight formulae + // But don't actually flush any cache + $resetCache = $this->getCalculationCacheEnabled(); + $this->calculationCacheEnabled = false; + } + + // Execute the calculation + try { + $result = self::unwrapResult($this->_calculateFormulaValue($formula, $cellID, $pCell)); + } catch (PHPExcel_Exception $e) { + throw new PHPExcel_Calculation_Exception($e->getMessage()); + } + + if ($this->workbook === null) { + // Reset calculation cacheing to its previous state + $this->calculationCacheEnabled = $resetCache; + } + + return $result; + } + + + public function getValueFromCache($cellReference, &$cellValue) + { + // Is calculation cacheing enabled? + // Is the value present in calculation cache? + $this->_debugLog->writeDebugLog('Testing cache value for cell ', $cellReference); + if (($this->calculationCacheEnabled) && (isset($this->calculationCache[$cellReference]))) { + $this->_debugLog->writeDebugLog('Retrieving value for cell ', $cellReference, ' from cache'); + // Return the cached result + $cellValue = $this->calculationCache[$cellReference]; + return true; + } + return false; + } + + public function saveValueToCache($cellReference, $cellValue) + { + if ($this->calculationCacheEnabled) { + $this->calculationCache[$cellReference] = $cellValue; + } + } + + /** + * Parse a cell formula and calculate its value + * + * @param string $formula The formula to parse and calculate + * @param string $cellID The ID (e.g. A3) of the cell that we are calculating + * @param PHPExcel_Cell $pCell Cell to calculate + * @return mixed + * @throws PHPExcel_Calculation_Exception + */ + public function _calculateFormulaValue($formula, $cellID = null, PHPExcel_Cell $pCell = null) + { + $cellValue = null; + + // Basic validation that this is indeed a formula + // We simply return the cell value if not + $formula = trim($formula); + if ($formula{0} != '=') { + return self::wrapResult($formula); + } + $formula = ltrim(substr($formula, 1)); + if (!isset($formula{0})) { + return self::wrapResult($formula); + } + + $pCellParent = ($pCell !== null) ? $pCell->getWorksheet() : null; + $wsTitle = ($pCellParent !== null) ? $pCellParent->getTitle() : "\x00Wrk"; + $wsCellReference = $wsTitle . '!' . $cellID; + + if (($cellID !== null) && ($this->getValueFromCache($wsCellReference, $cellValue))) { + return $cellValue; + } + + if (($wsTitle{0} !== "\x00") && ($this->cyclicReferenceStack->onStack($wsCellReference))) { + if ($this->cyclicFormulaCount <= 0) { + $this->cyclicFormulaCell = ''; + return $this->raiseFormulaError('Cyclic Reference in Formula'); + } elseif ($this->cyclicFormulaCell === $wsCellReference) { + ++$this->cyclicFormulaCounter; + if ($this->cyclicFormulaCounter >= $this->cyclicFormulaCount) { + $this->cyclicFormulaCell = ''; + return $cellValue; + } + } elseif ($this->cyclicFormulaCell == '') { + if ($this->cyclicFormulaCounter >= $this->cyclicFormulaCount) { + return $cellValue; + } + $this->cyclicFormulaCell = $wsCellReference; + } + } + + // Parse the formula onto the token stack and calculate the value + $this->cyclicReferenceStack->push($wsCellReference); + $cellValue = $this->processTokenStack($this->_parseFormula($formula, $pCell), $cellID, $pCell); + $this->cyclicReferenceStack->pop(); + + // Save to calculation cache + if ($cellID !== null) { + $this->saveValueToCache($wsCellReference, $cellValue); + } + + // Return the calculated value + return $cellValue; + } + + + /** + * Ensure that paired matrix operands are both matrices and of the same size + * + * @param mixed &$operand1 First matrix operand + * @param mixed &$operand2 Second matrix operand + * @param integer $resize Flag indicating whether the matrices should be resized to match + * and (if so), whether the smaller dimension should grow or the + * larger should shrink. + * 0 = no resize + * 1 = shrink to fit + * 2 = extend to fit + */ + private static function checkMatrixOperands(&$operand1, &$operand2, $resize = 1) + { + // Examine each of the two operands, and turn them into an array if they aren't one already + // Note that this function should only be called if one or both of the operand is already an array + if (!is_array($operand1)) { + list($matrixRows, $matrixColumns) = self::getMatrixDimensions($operand2); + $operand1 = array_fill(0, $matrixRows, array_fill(0, $matrixColumns, $operand1)); + $resize = 0; + } elseif (!is_array($operand2)) { + list($matrixRows, $matrixColumns) = self::getMatrixDimensions($operand1); + $operand2 = array_fill(0, $matrixRows, array_fill(0, $matrixColumns, $operand2)); + $resize = 0; + } + + list($matrix1Rows, $matrix1Columns) = self::getMatrixDimensions($operand1); + list($matrix2Rows, $matrix2Columns) = self::getMatrixDimensions($operand2); + if (($matrix1Rows == $matrix2Columns) && ($matrix2Rows == $matrix1Columns)) { + $resize = 1; + } + + if ($resize == 2) { + // Given two matrices of (potentially) unequal size, convert the smaller in each dimension to match the larger + self::resizeMatricesExtend($operand1, $operand2, $matrix1Rows, $matrix1Columns, $matrix2Rows, $matrix2Columns); + } elseif ($resize == 1) { + // Given two matrices of (potentially) unequal size, convert the larger in each dimension to match the smaller + self::resizeMatricesShrink($operand1, $operand2, $matrix1Rows, $matrix1Columns, $matrix2Rows, $matrix2Columns); + } + return array( $matrix1Rows, $matrix1Columns, $matrix2Rows, $matrix2Columns); + } + + + /** + * Read the dimensions of a matrix, and re-index it with straight numeric keys starting from row 0, column 0 + * + * @param mixed &$matrix matrix operand + * @return array An array comprising the number of rows, and number of columns + */ + private static function getMatrixDimensions(&$matrix) + { + $matrixRows = count($matrix); + $matrixColumns = 0; + foreach ($matrix as $rowKey => $rowValue) { + $matrixColumns = max(count($rowValue), $matrixColumns); + if (!is_array($rowValue)) { + $matrix[$rowKey] = array($rowValue); + } else { + $matrix[$rowKey] = array_values($rowValue); + } + } + $matrix = array_values($matrix); + return array($matrixRows, $matrixColumns); + } + + + /** + * Ensure that paired matrix operands are both matrices of the same size + * + * @param mixed &$matrix1 First matrix operand + * @param mixed &$matrix2 Second matrix operand + * @param integer $matrix1Rows Row size of first matrix operand + * @param integer $matrix1Columns Column size of first matrix operand + * @param integer $matrix2Rows Row size of second matrix operand + * @param integer $matrix2Columns Column size of second matrix operand + */ + private static function resizeMatricesShrink(&$matrix1, &$matrix2, $matrix1Rows, $matrix1Columns, $matrix2Rows, $matrix2Columns) + { + if (($matrix2Columns < $matrix1Columns) || ($matrix2Rows < $matrix1Rows)) { + if ($matrix2Rows < $matrix1Rows) { + for ($i = $matrix2Rows; $i < $matrix1Rows; ++$i) { + unset($matrix1[$i]); + } + } + if ($matrix2Columns < $matrix1Columns) { + for ($i = 0; $i < $matrix1Rows; ++$i) { + for ($j = $matrix2Columns; $j < $matrix1Columns; ++$j) { + unset($matrix1[$i][$j]); + } + } + } + } + + if (($matrix1Columns < $matrix2Columns) || ($matrix1Rows < $matrix2Rows)) { + if ($matrix1Rows < $matrix2Rows) { + for ($i = $matrix1Rows; $i < $matrix2Rows; ++$i) { + unset($matrix2[$i]); + } + } + if ($matrix1Columns < $matrix2Columns) { + for ($i = 0; $i < $matrix2Rows; ++$i) { + for ($j = $matrix1Columns; $j < $matrix2Columns; ++$j) { + unset($matrix2[$i][$j]); + } + } + } + } + } + + + /** + * Ensure that paired matrix operands are both matrices of the same size + * + * @param mixed &$matrix1 First matrix operand + * @param mixed &$matrix2 Second matrix operand + * @param integer $matrix1Rows Row size of first matrix operand + * @param integer $matrix1Columns Column size of first matrix operand + * @param integer $matrix2Rows Row size of second matrix operand + * @param integer $matrix2Columns Column size of second matrix operand + */ + private static function resizeMatricesExtend(&$matrix1, &$matrix2, $matrix1Rows, $matrix1Columns, $matrix2Rows, $matrix2Columns) + { + if (($matrix2Columns < $matrix1Columns) || ($matrix2Rows < $matrix1Rows)) { + if ($matrix2Columns < $matrix1Columns) { + for ($i = 0; $i < $matrix2Rows; ++$i) { + $x = $matrix2[$i][$matrix2Columns-1]; + for ($j = $matrix2Columns; $j < $matrix1Columns; ++$j) { + $matrix2[$i][$j] = $x; + } + } + } + if ($matrix2Rows < $matrix1Rows) { + $x = $matrix2[$matrix2Rows-1]; + for ($i = 0; $i < $matrix1Rows; ++$i) { + $matrix2[$i] = $x; + } + } + } + + if (($matrix1Columns < $matrix2Columns) || ($matrix1Rows < $matrix2Rows)) { + if ($matrix1Columns < $matrix2Columns) { + for ($i = 0; $i < $matrix1Rows; ++$i) { + $x = $matrix1[$i][$matrix1Columns-1]; + for ($j = $matrix1Columns; $j < $matrix2Columns; ++$j) { + $matrix1[$i][$j] = $x; + } + } + } + if ($matrix1Rows < $matrix2Rows) { + $x = $matrix1[$matrix1Rows-1]; + for ($i = 0; $i < $matrix2Rows; ++$i) { + $matrix1[$i] = $x; + } + } + } + } + + + /** + * Format details of an operand for display in the log (based on operand type) + * + * @param mixed $value First matrix operand + * @return mixed + */ + private function showValue($value) + { + if ($this->_debugLog->getWriteDebugLog()) { + $testArray = PHPExcel_Calculation_Functions::flattenArray($value); + if (count($testArray) == 1) { + $value = array_pop($testArray); + } + + if (is_array($value)) { + $returnMatrix = array(); + $pad = $rpad = ', '; + foreach ($value as $row) { + if (is_array($row)) { + $returnMatrix[] = implode($pad, array_map(array($this, 'showValue'), $row)); + $rpad = '; '; + } else { + $returnMatrix[] = $this->showValue($row); + } + } + return '{ '.implode($rpad, $returnMatrix).' }'; + } elseif (is_string($value) && (trim($value, '"') == $value)) { + return '"'.$value.'"'; + } elseif (is_bool($value)) { + return ($value) ? self::$localeBoolean['TRUE'] : self::$localeBoolean['FALSE']; + } + } + return PHPExcel_Calculation_Functions::flattenSingleValue($value); + } + + + /** + * Format type and details of an operand for display in the log (based on operand type) + * + * @param mixed $value First matrix operand + * @return mixed + */ + private function showTypeDetails($value) + { + if ($this->_debugLog->getWriteDebugLog()) { + $testArray = PHPExcel_Calculation_Functions::flattenArray($value); + if (count($testArray) == 1) { + $value = array_pop($testArray); + } + + if ($value === null) { + return 'a NULL value'; + } elseif (is_float($value)) { + $typeString = 'a floating point number'; + } elseif (is_int($value)) { + $typeString = 'an integer number'; + } elseif (is_bool($value)) { + $typeString = 'a boolean'; + } elseif (is_array($value)) { + $typeString = 'a matrix'; + } else { + if ($value == '') { + return 'an empty string'; + } elseif ($value{0} == '#') { + return 'a '.$value.' error'; + } else { + $typeString = 'a string'; + } + } + return $typeString.' with a value of '.$this->showValue($value); + } + } + + + private function convertMatrixReferences($formula) + { + static $matrixReplaceFrom = array('{', ';', '}'); + static $matrixReplaceTo = array('MKMATRIX(MKMATRIX(', '),MKMATRIX(', '))'); + + // Convert any Excel matrix references to the MKMATRIX() function + if (strpos($formula, '{') !== false) { + // If there is the possibility of braces within a quoted string, then we don't treat those as matrix indicators + if (strpos($formula, '"') !== false) { + // So instead we skip replacing in any quoted strings by only replacing in every other array element after we've exploded + // the formula + $temp = explode('"', $formula); + // Open and Closed counts used for trapping mismatched braces in the formula + $openCount = $closeCount = 0; + $i = false; + foreach ($temp as &$value) { + // Only count/replace in alternating array entries + if ($i = !$i) { + $openCount += substr_count($value, '{'); + $closeCount += substr_count($value, '}'); + $value = str_replace($matrixReplaceFrom, $matrixReplaceTo, $value); + } + } + unset($value); + // Then rebuild the formula string + $formula = implode('"', $temp); + } else { + // If there's no quoted strings, then we do a simple count/replace + $openCount = substr_count($formula, '{'); + $closeCount = substr_count($formula, '}'); + $formula = str_replace($matrixReplaceFrom, $matrixReplaceTo, $formula); + } + // Trap for mismatched braces and trigger an appropriate error + if ($openCount < $closeCount) { + if ($openCount > 0) { + return $this->raiseFormulaError("Formula Error: Mismatched matrix braces '}'"); + } else { + return $this->raiseFormulaError("Formula Error: Unexpected '}' encountered"); + } + } elseif ($openCount > $closeCount) { + if ($closeCount > 0) { + return $this->raiseFormulaError("Formula Error: Mismatched matrix braces '{'"); + } else { + return $this->raiseFormulaError("Formula Error: Unexpected '{' encountered"); + } + } + } + + return $formula; + } + + + private static function mkMatrix() + { + return func_get_args(); + } + + + // Binary Operators + // These operators always work on two values + // Array key is the operator, the value indicates whether this is a left or right associative operator + private static $operatorAssociativity = array( + '^' => 0, // Exponentiation + '*' => 0, '/' => 0, // Multiplication and Division + '+' => 0, '-' => 0, // Addition and Subtraction + '&' => 0, // Concatenation + '|' => 0, ':' => 0, // Intersect and Range + '>' => 0, '<' => 0, '=' => 0, '>=' => 0, '<=' => 0, '<>' => 0 // Comparison + ); + + // Comparison (Boolean) Operators + // These operators work on two values, but always return a boolean result + private static $comparisonOperators = array('>' => true, '<' => true, '=' => true, '>=' => true, '<=' => true, '<>' => true); + + // Operator Precedence + // This list includes all valid operators, whether binary (including boolean) or unary (such as %) + // Array key is the operator, the value is its precedence + private static $operatorPrecedence = array( + ':' => 8, // Range + '|' => 7, // Intersect + '~' => 6, // Negation + '%' => 5, // Percentage + '^' => 4, // Exponentiation + '*' => 3, '/' => 3, // Multiplication and Division + '+' => 2, '-' => 2, // Addition and Subtraction + '&' => 1, // Concatenation + '>' => 0, '<' => 0, '=' => 0, '>=' => 0, '<=' => 0, '<>' => 0 // Comparison + ); + + // Convert infix to postfix notation + private function _parseFormula($formula, PHPExcel_Cell $pCell = null) + { + if (($formula = $this->convertMatrixReferences(trim($formula))) === false) { + return false; + } + + // If we're using cell caching, then $pCell may well be flushed back to the cache (which detaches the parent worksheet), + // so we store the parent worksheet so that we can re-attach it when necessary + $pCellParent = ($pCell !== null) ? $pCell->getWorksheet() : null; + + $regexpMatchString = '/^('.self::CALCULATION_REGEXP_FUNCTION. + '|'.self::CALCULATION_REGEXP_CELLREF. + '|'.self::CALCULATION_REGEXP_NUMBER. + '|'.self::CALCULATION_REGEXP_STRING. + '|'.self::CALCULATION_REGEXP_OPENBRACE. + '|'.self::CALCULATION_REGEXP_NAMEDRANGE. + '|'.self::CALCULATION_REGEXP_ERROR. + ')/si'; + + // Start with initialisation + $index = 0; + $stack = new PHPExcel_Calculation_Token_Stack; + $output = array(); + $expectingOperator = false; // We use this test in syntax-checking the expression to determine when a + // - is a negation or + is a positive operator rather than an operation + $expectingOperand = false; // We use this test in syntax-checking the expression to determine whether an operand + // should be null in a function call + // The guts of the lexical parser + // Loop through the formula extracting each operator and operand in turn + while (true) { +//echo 'Assessing Expression '.substr($formula, $index), PHP_EOL; + $opCharacter = $formula{$index}; // Get the first character of the value at the current index position +//echo 'Initial character of expression block is '.$opCharacter, PHP_EOL; + if ((isset(self::$comparisonOperators[$opCharacter])) && (strlen($formula) > $index) && (isset(self::$comparisonOperators[$formula{$index+1}]))) { + $opCharacter .= $formula{++$index}; +//echo 'Initial character of expression block is comparison operator '.$opCharacter.PHP_EOL; + } + + // Find out if we're currently at the beginning of a number, variable, cell reference, function, parenthesis or operand + $isOperandOrFunction = preg_match($regexpMatchString, substr($formula, $index), $match); +//echo '$isOperandOrFunction is '.(($isOperandOrFunction) ? 'True' : 'False').PHP_EOL; +//var_dump($match); + + if ($opCharacter == '-' && !$expectingOperator) { // Is it a negation instead of a minus? +//echo 'Element is a Negation operator', PHP_EOL; + $stack->push('Unary Operator', '~'); // Put a negation on the stack + ++$index; // and drop the negation symbol + } elseif ($opCharacter == '%' && $expectingOperator) { +//echo 'Element is a Percentage operator', PHP_EOL; + $stack->push('Unary Operator', '%'); // Put a percentage on the stack + ++$index; + } elseif ($opCharacter == '+' && !$expectingOperator) { // Positive (unary plus rather than binary operator plus) can be discarded? +//echo 'Element is a Positive number, not Plus operator', PHP_EOL; + ++$index; // Drop the redundant plus symbol + } elseif ((($opCharacter == '~') || ($opCharacter == '|')) && (!$isOperandOrFunction)) { // We have to explicitly deny a tilde or pipe, because they are legal + return $this->raiseFormulaError("Formula Error: Illegal character '~'"); // on the stack but not in the input expression + + } elseif ((isset(self::$operators[$opCharacter]) or $isOperandOrFunction) && $expectingOperator) { // Are we putting an operator on the stack? +//echo 'Element with value '.$opCharacter.' is an Operator', PHP_EOL; + while ($stack->count() > 0 && + ($o2 = $stack->last()) && + isset(self::$operators[$o2['value']]) && + @(self::$operatorAssociativity[$opCharacter] ? self::$operatorPrecedence[$opCharacter] < self::$operatorPrecedence[$o2['value']] : self::$operatorPrecedence[$opCharacter] <= self::$operatorPrecedence[$o2['value']])) { + $output[] = $stack->pop(); // Swap operands and higher precedence operators from the stack to the output + } + $stack->push('Binary Operator', $opCharacter); // Finally put our current operator onto the stack + ++$index; + $expectingOperator = false; + + } elseif ($opCharacter == ')' && $expectingOperator) { // Are we expecting to close a parenthesis? +//echo 'Element is a Closing bracket', PHP_EOL; + $expectingOperand = false; + while (($o2 = $stack->pop()) && $o2['value'] != '(') { // Pop off the stack back to the last ( + if ($o2 === null) { + return $this->raiseFormulaError('Formula Error: Unexpected closing brace ")"'); + } else { + $output[] = $o2; + } + } + $d = $stack->last(2); + if (preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $d['value'], $matches)) { // Did this parenthesis just close a function? + $functionName = $matches[1]; // Get the function name +//echo 'Closed Function is '.$functionName, PHP_EOL; + $d = $stack->pop(); + $argumentCount = $d['value']; // See how many arguments there were (argument count is the next value stored on the stack) +//if ($argumentCount == 0) { +// echo 'With no arguments', PHP_EOL; +//} elseif ($argumentCount == 1) { +// echo 'With 1 argument', PHP_EOL; +//} else { +// echo 'With '.$argumentCount.' arguments', PHP_EOL; +//} + $output[] = $d; // Dump the argument count on the output + $output[] = $stack->pop(); // Pop the function and push onto the output + if (isset(self::$controlFunctions[$functionName])) { +//echo 'Built-in function '.$functionName, PHP_EOL; + $expectedArgumentCount = self::$controlFunctions[$functionName]['argumentCount']; + $functionCall = self::$controlFunctions[$functionName]['functionCall']; + } elseif (isset(self::$PHPExcelFunctions[$functionName])) { +//echo 'PHPExcel function '.$functionName, PHP_EOL; + $expectedArgumentCount = self::$PHPExcelFunctions[$functionName]['argumentCount']; + $functionCall = self::$PHPExcelFunctions[$functionName]['functionCall']; + } else { // did we somehow push a non-function on the stack? this should never happen + return $this->raiseFormulaError("Formula Error: Internal error, non-function on stack"); + } + // Check the argument count + $argumentCountError = false; + if (is_numeric($expectedArgumentCount)) { + if ($expectedArgumentCount < 0) { +//echo '$expectedArgumentCount is between 0 and '.abs($expectedArgumentCount), PHP_EOL; + if ($argumentCount > abs($expectedArgumentCount)) { + $argumentCountError = true; + $expectedArgumentCountString = 'no more than '.abs($expectedArgumentCount); + } + } else { +//echo '$expectedArgumentCount is numeric '.$expectedArgumentCount, PHP_EOL; + if ($argumentCount != $expectedArgumentCount) { + $argumentCountError = true; + $expectedArgumentCountString = $expectedArgumentCount; + } + } + } elseif ($expectedArgumentCount != '*') { + $isOperandOrFunction = preg_match('/(\d*)([-+,])(\d*)/', $expectedArgumentCount, $argMatch); +//print_r($argMatch); +//echo PHP_EOL; + switch ($argMatch[2]) { + case '+': + if ($argumentCount < $argMatch[1]) { + $argumentCountError = true; + $expectedArgumentCountString = $argMatch[1].' or more '; + } + break; + case '-': + if (($argumentCount < $argMatch[1]) || ($argumentCount > $argMatch[3])) { + $argumentCountError = true; + $expectedArgumentCountString = 'between '.$argMatch[1].' and '.$argMatch[3]; + } + break; + case ',': + if (($argumentCount != $argMatch[1]) && ($argumentCount != $argMatch[3])) { + $argumentCountError = true; + $expectedArgumentCountString = 'either '.$argMatch[1].' or '.$argMatch[3]; + } + break; + } + } + if ($argumentCountError) { + return $this->raiseFormulaError("Formula Error: Wrong number of arguments for $functionName() function: $argumentCount given, ".$expectedArgumentCountString." expected"); + } + } + ++$index; + + } elseif ($opCharacter == ',') { // Is this the separator for function arguments? +//echo 'Element is a Function argument separator', PHP_EOL; + while (($o2 = $stack->pop()) && $o2['value'] != '(') { // Pop off the stack back to the last ( + if ($o2 === null) { + return $this->raiseFormulaError("Formula Error: Unexpected ,"); + } else { + $output[] = $o2; // pop the argument expression stuff and push onto the output + } + } + // If we've a comma when we're expecting an operand, then what we actually have is a null operand; + // so push a null onto the stack + if (($expectingOperand) || (!$expectingOperator)) { + $output[] = array('type' => 'NULL Value', 'value' => self::$excelConstants['NULL'], 'reference' => null); + } + // make sure there was a function + $d = $stack->last(2); + if (!preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $d['value'], $matches)) { + return $this->raiseFormulaError("Formula Error: Unexpected ,"); + } + $d = $stack->pop(); + $stack->push($d['type'], ++$d['value'], $d['reference']); // increment the argument count + $stack->push('Brace', '('); // put the ( back on, we'll need to pop back to it again + $expectingOperator = false; + $expectingOperand = true; + ++$index; + + } elseif ($opCharacter == '(' && !$expectingOperator) { +// echo 'Element is an Opening Bracket
'; + $stack->push('Brace', '('); + ++$index; + + } elseif ($isOperandOrFunction && !$expectingOperator) { // do we now have a function/variable/number? + $expectingOperator = true; + $expectingOperand = false; + $val = $match[1]; + $length = strlen($val); +// echo 'Element with value '.$val.' is an Operand, Variable, Constant, String, Number, Cell Reference or Function
'; + + if (preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $val, $matches)) { + $val = preg_replace('/\s/u', '', $val); +// echo 'Element '.$val.' is a Function
'; + if (isset(self::$PHPExcelFunctions[strtoupper($matches[1])]) || isset(self::$controlFunctions[strtoupper($matches[1])])) { // it's a function + $stack->push('Function', strtoupper($val)); + $ax = preg_match('/^\s*(\s*\))/ui', substr($formula, $index+$length), $amatch); + if ($ax) { + $stack->push('Operand Count for Function '.strtoupper($val).')', 0); + $expectingOperator = true; + } else { + $stack->push('Operand Count for Function '.strtoupper($val).')', 1); + $expectingOperator = false; + } + $stack->push('Brace', '('); + } else { // it's a var w/ implicit multiplication + $output[] = array('type' => 'Value', 'value' => $matches[1], 'reference' => null); + } + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'$/i', $val, $matches)) { +// echo 'Element '.$val.' is a Cell reference
'; + // Watch for this case-change when modifying to allow cell references in different worksheets... + // Should only be applied to the actual cell column, not the worksheet name + + // If the last entry on the stack was a : operator, then we have a cell range reference + $testPrevOp = $stack->last(1); + if ($testPrevOp['value'] == ':') { + // If we have a worksheet reference, then we're playing with a 3D reference + if ($matches[2] == '') { + // Otherwise, we 'inherit' the worksheet reference from the start cell reference + // The start of the cell range reference should be the last entry in $output + $startCellRef = $output[count($output)-1]['value']; + preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'$/i', $startCellRef, $startMatches); + if ($startMatches[2] > '') { + $val = $startMatches[2].'!'.$val; + } + } else { + return $this->raiseFormulaError("3D Range references are not yet supported"); + } + } + + $output[] = array('type' => 'Cell Reference', 'value' => $val, 'reference' => $val); +// $expectingOperator = FALSE; + } else { // it's a variable, constant, string, number or boolean +// echo 'Element is a Variable, Constant, String, Number or Boolean
'; + // If the last entry on the stack was a : operator, then we may have a row or column range reference + $testPrevOp = $stack->last(1); + if ($testPrevOp['value'] == ':') { + $startRowColRef = $output[count($output)-1]['value']; + $rangeWS1 = ''; + if (strpos('!', $startRowColRef) !== false) { + list($rangeWS1, $startRowColRef) = explode('!', $startRowColRef); + } + if ($rangeWS1 != '') { + $rangeWS1 .= '!'; + } + $rangeWS2 = $rangeWS1; + if (strpos('!', $val) !== false) { + list($rangeWS2, $val) = explode('!', $val); + } + if ($rangeWS2 != '') { + $rangeWS2 .= '!'; + } + if ((is_integer($startRowColRef)) && (ctype_digit($val)) && + ($startRowColRef <= 1048576) && ($val <= 1048576)) { + // Row range + $endRowColRef = ($pCellParent !== null) ? $pCellParent->getHighestColumn() : 'XFD'; // Max 16,384 columns for Excel2007 + $output[count($output)-1]['value'] = $rangeWS1.'A'.$startRowColRef; + $val = $rangeWS2.$endRowColRef.$val; + } elseif ((ctype_alpha($startRowColRef)) && (ctype_alpha($val)) && + (strlen($startRowColRef) <= 3) && (strlen($val) <= 3)) { + // Column range + $endRowColRef = ($pCellParent !== null) ? $pCellParent->getHighestRow() : 1048576; // Max 1,048,576 rows for Excel2007 + $output[count($output)-1]['value'] = $rangeWS1.strtoupper($startRowColRef).'1'; + $val = $rangeWS2.$val.$endRowColRef; + } + } + + $localeConstant = false; + if ($opCharacter == '"') { +// echo 'Element is a String
'; + // UnEscape any quotes within the string + $val = self::wrapResult(str_replace('""', '"', self::unwrapResult($val))); + } elseif (is_numeric($val)) { +// echo 'Element is a Number
'; + if ((strpos($val, '.') !== false) || (stripos($val, 'e') !== false) || ($val > PHP_INT_MAX) || ($val < -PHP_INT_MAX)) { +// echo 'Casting '.$val.' to float
'; + $val = (float) $val; + } else { +// echo 'Casting '.$val.' to integer
'; + $val = (integer) $val; + } + } elseif (isset(self::$excelConstants[trim(strtoupper($val))])) { + $excelConstant = trim(strtoupper($val)); +// echo 'Element '.$excelConstant.' is an Excel Constant
'; + $val = self::$excelConstants[$excelConstant]; + } elseif (($localeConstant = array_search(trim(strtoupper($val)), self::$localeBoolean)) !== false) { +// echo 'Element '.$localeConstant.' is an Excel Constant
'; + $val = self::$excelConstants[$localeConstant]; + } + $details = array('type' => 'Value', 'value' => $val, 'reference' => null); + if ($localeConstant) { + $details['localeValue'] = $localeConstant; + } + $output[] = $details; + } + $index += $length; + + } elseif ($opCharacter == '$') { // absolute row or column range + ++$index; + } elseif ($opCharacter == ')') { // miscellaneous error checking + if ($expectingOperand) { + $output[] = array('type' => 'NULL Value', 'value' => self::$excelConstants['NULL'], 'reference' => null); + $expectingOperand = false; + $expectingOperator = true; + } else { + return $this->raiseFormulaError("Formula Error: Unexpected ')'"); + } + } elseif (isset(self::$operators[$opCharacter]) && !$expectingOperator) { + return $this->raiseFormulaError("Formula Error: Unexpected operator '$opCharacter'"); + } else { // I don't even want to know what you did to get here + return $this->raiseFormulaError("Formula Error: An unexpected error occured"); + } + // Test for end of formula string + if ($index == strlen($formula)) { + // Did we end with an operator?. + // Only valid for the % unary operator + if ((isset(self::$operators[$opCharacter])) && ($opCharacter != '%')) { + return $this->raiseFormulaError("Formula Error: Operator '$opCharacter' has no operands"); + } else { + break; + } + } + // Ignore white space + while (($formula{$index} == "\n") || ($formula{$index} == "\r")) { + ++$index; + } + if ($formula{$index} == ' ') { + while ($formula{$index} == ' ') { + ++$index; + } + // If we're expecting an operator, but only have a space between the previous and next operands (and both are + // Cell References) then we have an INTERSECTION operator +// echo 'Possible Intersect Operator
'; + if (($expectingOperator) && (preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'.*/Ui', substr($formula, $index), $match)) && + ($output[count($output)-1]['type'] == 'Cell Reference')) { +// echo 'Element is an Intersect Operator
'; + while ($stack->count() > 0 && + ($o2 = $stack->last()) && + isset(self::$operators[$o2['value']]) && + @(self::$operatorAssociativity[$opCharacter] ? self::$operatorPrecedence[$opCharacter] < self::$operatorPrecedence[$o2['value']] : self::$operatorPrecedence[$opCharacter] <= self::$operatorPrecedence[$o2['value']])) { + $output[] = $stack->pop(); // Swap operands and higher precedence operators from the stack to the output + } + $stack->push('Binary Operator', '|'); // Put an Intersect Operator on the stack + $expectingOperator = false; + } + } + } + + while (($op = $stack->pop()) !== null) { // pop everything off the stack and push onto output + if ((is_array($op) && $op['value'] == '(') || ($op === '(')) { + return $this->raiseFormulaError("Formula Error: Expecting ')'"); // if there are any opening braces on the stack, then braces were unbalanced + } + $output[] = $op; + } + return $output; + } + + + private static function dataTestReference(&$operandData) + { + $operand = $operandData['value']; + if (($operandData['reference'] === null) && (is_array($operand))) { + $rKeys = array_keys($operand); + $rowKey = array_shift($rKeys); + $cKeys = array_keys(array_keys($operand[$rowKey])); + $colKey = array_shift($cKeys); + if (ctype_upper($colKey)) { + $operandData['reference'] = $colKey.$rowKey; + } + } + return $operand; + } + + // evaluate postfix notation + private function processTokenStack($tokens, $cellID = null, PHPExcel_Cell $pCell = null) + { + if ($tokens == false) { + return false; + } + + // If we're using cell caching, then $pCell may well be flushed back to the cache (which detaches the parent cell collection), + // so we store the parent cell collection so that we can re-attach it when necessary + $pCellWorksheet = ($pCell !== null) ? $pCell->getWorksheet() : null; + $pCellParent = ($pCell !== null) ? $pCell->getParent() : null; + $stack = new PHPExcel_Calculation_Token_Stack; + + // Loop through each token in turn + foreach ($tokens as $tokenData) { +// print_r($tokenData); +// echo '
'; + $token = $tokenData['value']; +// echo 'Token is '.$token.'
'; + // if the token is a binary operator, pop the top two values off the stack, do the operation, and push the result back on the stack + if (isset(self::$binaryOperators[$token])) { +// echo 'Token is a binary operator
'; + // We must have two operands, error if we don't + if (($operand2Data = $stack->pop()) === null) { + return $this->raiseFormulaError('Internal error - Operand value missing from stack'); + } + if (($operand1Data = $stack->pop()) === null) { + return $this->raiseFormulaError('Internal error - Operand value missing from stack'); + } + + $operand1 = self::dataTestReference($operand1Data); + $operand2 = self::dataTestReference($operand2Data); + + // Log what we're doing + if ($token == ':') { + $this->_debugLog->writeDebugLog('Evaluating Range ', $this->showValue($operand1Data['reference']), ' ', $token, ' ', $this->showValue($operand2Data['reference'])); + } else { + $this->_debugLog->writeDebugLog('Evaluating ', $this->showValue($operand1), ' ', $token, ' ', $this->showValue($operand2)); + } + + // Process the operation in the appropriate manner + switch ($token) { + // Comparison (Boolean) Operators + case '>': // Greater than + case '<': // Less than + case '>=': // Greater than or Equal to + case '<=': // Less than or Equal to + case '=': // Equality + case '<>': // Inequality + $this->executeBinaryComparisonOperation($cellID, $operand1, $operand2, $token, $stack); + break; + // Binary Operators + case ':': // Range + $sheet1 = $sheet2 = ''; + if (strpos($operand1Data['reference'], '!') !== false) { + list($sheet1, $operand1Data['reference']) = explode('!', $operand1Data['reference']); + } else { + $sheet1 = ($pCellParent !== null) ? $pCellWorksheet->getTitle() : ''; + } + if (strpos($operand2Data['reference'], '!') !== false) { + list($sheet2, $operand2Data['reference']) = explode('!', $operand2Data['reference']); + } else { + $sheet2 = $sheet1; + } + if ($sheet1 == $sheet2) { + if ($operand1Data['reference'] === null) { + if ((trim($operand1Data['value']) != '') && (is_numeric($operand1Data['value']))) { + $operand1Data['reference'] = $pCell->getColumn().$operand1Data['value']; + } elseif (trim($operand1Data['reference']) == '') { + $operand1Data['reference'] = $pCell->getCoordinate(); + } else { + $operand1Data['reference'] = $operand1Data['value'].$pCell->getRow(); + } + } + if ($operand2Data['reference'] === null) { + if ((trim($operand2Data['value']) != '') && (is_numeric($operand2Data['value']))) { + $operand2Data['reference'] = $pCell->getColumn().$operand2Data['value']; + } elseif (trim($operand2Data['reference']) == '') { + $operand2Data['reference'] = $pCell->getCoordinate(); + } else { + $operand2Data['reference'] = $operand2Data['value'].$pCell->getRow(); + } + } + + $oData = array_merge(explode(':', $operand1Data['reference']), explode(':', $operand2Data['reference'])); + $oCol = $oRow = array(); + foreach ($oData as $oDatum) { + $oCR = PHPExcel_Cell::coordinateFromString($oDatum); + $oCol[] = PHPExcel_Cell::columnIndexFromString($oCR[0]) - 1; + $oRow[] = $oCR[1]; + } + $cellRef = PHPExcel_Cell::stringFromColumnIndex(min($oCol)).min($oRow).':'.PHPExcel_Cell::stringFromColumnIndex(max($oCol)).max($oRow); + if ($pCellParent !== null) { + $cellValue = $this->extractCellRange($cellRef, $this->workbook->getSheetByName($sheet1), false); + } else { + return $this->raiseFormulaError('Unable to access Cell Reference'); + } + $stack->push('Cell Reference', $cellValue, $cellRef); + } else { + $stack->push('Error', PHPExcel_Calculation_Functions::REF(), null); + } + break; + case '+': // Addition + $this->executeNumericBinaryOperation($cellID, $operand1, $operand2, $token, 'plusEquals', $stack); + break; + case '-': // Subtraction + $this->executeNumericBinaryOperation($cellID, $operand1, $operand2, $token, 'minusEquals', $stack); + break; + case '*': // Multiplication + $this->executeNumericBinaryOperation($cellID, $operand1, $operand2, $token, 'arrayTimesEquals', $stack); + break; + case '/': // Division + $this->executeNumericBinaryOperation($cellID, $operand1, $operand2, $token, 'arrayRightDivide', $stack); + break; + case '^': // Exponential + $this->executeNumericBinaryOperation($cellID, $operand1, $operand2, $token, 'power', $stack); + break; + case '&': // Concatenation + // If either of the operands is a matrix, we need to treat them both as matrices + // (converting the other operand to a matrix if need be); then perform the required + // matrix operation + if (is_bool($operand1)) { + $operand1 = ($operand1) ? self::$localeBoolean['TRUE'] : self::$localeBoolean['FALSE']; + } + if (is_bool($operand2)) { + $operand2 = ($operand2) ? self::$localeBoolean['TRUE'] : self::$localeBoolean['FALSE']; + } + if ((is_array($operand1)) || (is_array($operand2))) { + // Ensure that both operands are arrays/matrices + self::checkMatrixOperands($operand1, $operand2, 2); + try { + // Convert operand 1 from a PHP array to a matrix + $matrix = new PHPExcel_Shared_JAMA_Matrix($operand1); + // Perform the required operation against the operand 1 matrix, passing in operand 2 + $matrixResult = $matrix->concat($operand2); + $result = $matrixResult->getArray(); + } catch (PHPExcel_Exception $ex) { + $this->_debugLog->writeDebugLog('JAMA Matrix Exception: ', $ex->getMessage()); + $result = '#VALUE!'; + } + } else { + $result = '"'.str_replace('""', '"', self::unwrapResult($operand1, '"').self::unwrapResult($operand2, '"')).'"'; + } + $this->_debugLog->writeDebugLog('Evaluation Result is ', $this->showTypeDetails($result)); + $stack->push('Value', $result); + break; + case '|': // Intersect + $rowIntersect = array_intersect_key($operand1, $operand2); + $cellIntersect = $oCol = $oRow = array(); + foreach (array_keys($rowIntersect) as $row) { + $oRow[] = $row; + foreach ($rowIntersect[$row] as $col => $data) { + $oCol[] = PHPExcel_Cell::columnIndexFromString($col) - 1; + $cellIntersect[$row] = array_intersect_key($operand1[$row], $operand2[$row]); + } + } + $cellRef = PHPExcel_Cell::stringFromColumnIndex(min($oCol)).min($oRow).':'.PHPExcel_Cell::stringFromColumnIndex(max($oCol)).max($oRow); + $this->_debugLog->writeDebugLog('Evaluation Result is ', $this->showTypeDetails($cellIntersect)); + $stack->push('Value', $cellIntersect, $cellRef); + break; + } + + // if the token is a unary operator, pop one value off the stack, do the operation, and push it back on + } elseif (($token === '~') || ($token === '%')) { +// echo 'Token is a unary operator
'; + if (($arg = $stack->pop()) === null) { + return $this->raiseFormulaError('Internal error - Operand value missing from stack'); + } + $arg = $arg['value']; + if ($token === '~') { +// echo 'Token is a negation operator
'; + $this->_debugLog->writeDebugLog('Evaluating Negation of ', $this->showValue($arg)); + $multiplier = -1; + } else { +// echo 'Token is a percentile operator
'; + $this->_debugLog->writeDebugLog('Evaluating Percentile of ', $this->showValue($arg)); + $multiplier = 0.01; + } + if (is_array($arg)) { + self::checkMatrixOperands($arg, $multiplier, 2); + try { + $matrix1 = new PHPExcel_Shared_JAMA_Matrix($arg); + $matrixResult = $matrix1->arrayTimesEquals($multiplier); + $result = $matrixResult->getArray(); + } catch (PHPExcel_Exception $ex) { + $this->_debugLog->writeDebugLog('JAMA Matrix Exception: ', $ex->getMessage()); + $result = '#VALUE!'; + } + $this->_debugLog->writeDebugLog('Evaluation Result is ', $this->showTypeDetails($result)); + $stack->push('Value', $result); + } else { + $this->executeNumericBinaryOperation($cellID, $multiplier, $arg, '*', 'arrayTimesEquals', $stack); + } + + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'$/i', $token, $matches)) { + $cellRef = null; +// echo 'Element '.$token.' is a Cell reference
'; + if (isset($matches[8])) { +// echo 'Reference is a Range of cells
'; + if ($pCell === null) { +// We can't access the range, so return a REF error + $cellValue = PHPExcel_Calculation_Functions::REF(); + } else { + $cellRef = $matches[6].$matches[7].':'.$matches[9].$matches[10]; + if ($matches[2] > '') { + $matches[2] = trim($matches[2], "\"'"); + if ((strpos($matches[2], '[') !== false) || (strpos($matches[2], ']') !== false)) { + // It's a Reference to an external workbook (not currently supported) + return $this->raiseFormulaError('Unable to access External Workbook'); + } + $matches[2] = trim($matches[2], "\"'"); +// echo '$cellRef='.$cellRef.' in worksheet '.$matches[2].'
'; + $this->_debugLog->writeDebugLog('Evaluating Cell Range ', $cellRef, ' in worksheet ', $matches[2]); + if ($pCellParent !== null) { + $cellValue = $this->extractCellRange($cellRef, $this->workbook->getSheetByName($matches[2]), false); + } else { + return $this->raiseFormulaError('Unable to access Cell Reference'); + } + $this->_debugLog->writeDebugLog('Evaluation Result for cells ', $cellRef, ' in worksheet ', $matches[2], ' is ', $this->showTypeDetails($cellValue)); +// $cellRef = $matches[2].'!'.$cellRef; + } else { +// echo '$cellRef='.$cellRef.' in current worksheet
'; + $this->_debugLog->writeDebugLog('Evaluating Cell Range ', $cellRef, ' in current worksheet'); + if ($pCellParent !== null) { + $cellValue = $this->extractCellRange($cellRef, $pCellWorksheet, false); + } else { + return $this->raiseFormulaError('Unable to access Cell Reference'); + } + $this->_debugLog->writeDebugLog('Evaluation Result for cells ', $cellRef, ' is ', $this->showTypeDetails($cellValue)); + } + } + } else { +// echo 'Reference is a single Cell
'; + if ($pCell === null) { +// We can't access the cell, so return a REF error + $cellValue = PHPExcel_Calculation_Functions::REF(); + } else { + $cellRef = $matches[6].$matches[7]; + if ($matches[2] > '') { + $matches[2] = trim($matches[2], "\"'"); + if ((strpos($matches[2], '[') !== false) || (strpos($matches[2], ']') !== false)) { + // It's a Reference to an external workbook (not currently supported) + return $this->raiseFormulaError('Unable to access External Workbook'); + } +// echo '$cellRef='.$cellRef.' in worksheet '.$matches[2].'
'; + $this->_debugLog->writeDebugLog('Evaluating Cell ', $cellRef, ' in worksheet ', $matches[2]); + if ($pCellParent !== null) { + $cellSheet = $this->workbook->getSheetByName($matches[2]); + if ($cellSheet && $cellSheet->cellExists($cellRef)) { + $cellValue = $this->extractCellRange($cellRef, $this->workbook->getSheetByName($matches[2]), false); + $pCell->attach($pCellParent); + } else { + $cellValue = null; + } + } else { + return $this->raiseFormulaError('Unable to access Cell Reference'); + } + $this->_debugLog->writeDebugLog('Evaluation Result for cell ', $cellRef, ' in worksheet ', $matches[2], ' is ', $this->showTypeDetails($cellValue)); +// $cellRef = $matches[2].'!'.$cellRef; + } else { +// echo '$cellRef='.$cellRef.' in current worksheet
'; + $this->_debugLog->writeDebugLog('Evaluating Cell ', $cellRef, ' in current worksheet'); + if ($pCellParent->isDataSet($cellRef)) { + $cellValue = $this->extractCellRange($cellRef, $pCellWorksheet, false); + $pCell->attach($pCellParent); + } else { + $cellValue = null; + } + $this->_debugLog->writeDebugLog('Evaluation Result for cell ', $cellRef, ' is ', $this->showTypeDetails($cellValue)); + } + } + } + $stack->push('Value', $cellValue, $cellRef); + + // if the token is a function, pop arguments off the stack, hand them to the function, and push the result back on + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $token, $matches)) { +// echo 'Token is a function
'; + $functionName = $matches[1]; + $argCount = $stack->pop(); + $argCount = $argCount['value']; + if ($functionName != 'MKMATRIX') { + $this->_debugLog->writeDebugLog('Evaluating Function ', self::localeFunc($functionName), '() with ', (($argCount == 0) ? 'no' : $argCount), ' argument', (($argCount == 1) ? '' : 's')); + } + if ((isset(self::$PHPExcelFunctions[$functionName])) || (isset(self::$controlFunctions[$functionName]))) { // function + if (isset(self::$PHPExcelFunctions[$functionName])) { + $functionCall = self::$PHPExcelFunctions[$functionName]['functionCall']; + $passByReference = isset(self::$PHPExcelFunctions[$functionName]['passByReference']); + $passCellReference = isset(self::$PHPExcelFunctions[$functionName]['passCellReference']); + } elseif (isset(self::$controlFunctions[$functionName])) { + $functionCall = self::$controlFunctions[$functionName]['functionCall']; + $passByReference = isset(self::$controlFunctions[$functionName]['passByReference']); + $passCellReference = isset(self::$controlFunctions[$functionName]['passCellReference']); + } + // get the arguments for this function +// echo 'Function '.$functionName.' expects '.$argCount.' arguments
'; + $args = $argArrayVals = array(); + for ($i = 0; $i < $argCount; ++$i) { + $arg = $stack->pop(); + $a = $argCount - $i - 1; + if (($passByReference) && + (isset(self::$PHPExcelFunctions[$functionName]['passByReference'][$a])) && + (self::$PHPExcelFunctions[$functionName]['passByReference'][$a])) { + if ($arg['reference'] === null) { + $args[] = $cellID; + if ($functionName != 'MKMATRIX') { + $argArrayVals[] = $this->showValue($cellID); + } + } else { + $args[] = $arg['reference']; + if ($functionName != 'MKMATRIX') { + $argArrayVals[] = $this->showValue($arg['reference']); + } + } + } else { + $args[] = self::unwrapResult($arg['value']); + if ($functionName != 'MKMATRIX') { + $argArrayVals[] = $this->showValue($arg['value']); + } + } + } + // Reverse the order of the arguments + krsort($args); + if (($passByReference) && ($argCount == 0)) { + $args[] = $cellID; + $argArrayVals[] = $this->showValue($cellID); + } +// echo 'Arguments are: '; +// print_r($args); +// echo '
'; + if ($functionName != 'MKMATRIX') { + if ($this->_debugLog->getWriteDebugLog()) { + krsort($argArrayVals); + $this->_debugLog->writeDebugLog('Evaluating ', self::localeFunc($functionName), '( ', implode(self::$localeArgumentSeparator.' ', PHPExcel_Calculation_Functions::flattenArray($argArrayVals)), ' )'); + } + } + // Process each argument in turn, building the return value as an array +// if (($argCount == 1) && (is_array($args[1])) && ($functionName != 'MKMATRIX')) { +// $operand1 = $args[1]; +// $this->_debugLog->writeDebugLog('Argument is a matrix: ', $this->showValue($operand1)); +// $result = array(); +// $row = 0; +// foreach($operand1 as $args) { +// if (is_array($args)) { +// foreach($args as $arg) { +// $this->_debugLog->writeDebugLog('Evaluating ', self::localeFunc($functionName), '( ', $this->showValue($arg), ' )'); +// $r = call_user_func_array($functionCall, $arg); +// $this->_debugLog->writeDebugLog('Evaluation Result for ', self::localeFunc($functionName), '() function call is ', $this->showTypeDetails($r)); +// $result[$row][] = $r; +// } +// ++$row; +// } else { +// $this->_debugLog->writeDebugLog('Evaluating ', self::localeFunc($functionName), '( ', $this->showValue($args), ' )'); +// $r = call_user_func_array($functionCall, $args); +// $this->_debugLog->writeDebugLog('Evaluation Result for ', self::localeFunc($functionName), '() function call is ', $this->showTypeDetails($r)); +// $result[] = $r; +// } +// } +// } else { + // Process the argument with the appropriate function call + if ($passCellReference) { + $args[] = $pCell; + } + if (strpos($functionCall, '::') !== false) { + $result = call_user_func_array(explode('::', $functionCall), $args); + } else { + foreach ($args as &$arg) { + $arg = PHPExcel_Calculation_Functions::flattenSingleValue($arg); + } + unset($arg); + $result = call_user_func_array($functionCall, $args); + } + if ($functionName != 'MKMATRIX') { + $this->_debugLog->writeDebugLog('Evaluation Result for ', self::localeFunc($functionName), '() function call is ', $this->showTypeDetails($result)); + } + $stack->push('Value', self::wrapResult($result)); + } + + } else { + // if the token is a number, boolean, string or an Excel error, push it onto the stack + if (isset(self::$excelConstants[strtoupper($token)])) { + $excelConstant = strtoupper($token); +// echo 'Token is a PHPExcel constant: '.$excelConstant.'
'; + $stack->push('Constant Value', self::$excelConstants[$excelConstant]); + $this->_debugLog->writeDebugLog('Evaluating Constant ', $excelConstant, ' as ', $this->showTypeDetails(self::$excelConstants[$excelConstant])); + } elseif ((is_numeric($token)) || ($token === null) || (is_bool($token)) || ($token == '') || ($token{0} == '"') || ($token{0} == '#')) { +// echo 'Token is a number, boolean, string, null or an Excel error
'; + $stack->push('Value', $token); + // if the token is a named range, push the named range name onto the stack + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_NAMEDRANGE.'$/i', $token, $matches)) { +// echo 'Token is a named range
'; + $namedRange = $matches[6]; +// echo 'Named Range is '.$namedRange.'
'; + $this->_debugLog->writeDebugLog('Evaluating Named Range ', $namedRange); + $cellValue = $this->extractNamedRange($namedRange, ((null !== $pCell) ? $pCellWorksheet : null), false); + $pCell->attach($pCellParent); + $this->_debugLog->writeDebugLog('Evaluation Result for named range ', $namedRange, ' is ', $this->showTypeDetails($cellValue)); + $stack->push('Named Range', $cellValue, $namedRange); + } else { + return $this->raiseFormulaError("undefined variable '$token'"); + } + } + } + // when we're out of tokens, the stack should have a single element, the final result + if ($stack->count() != 1) { + return $this->raiseFormulaError("internal error"); + } + $output = $stack->pop(); + $output = $output['value']; + +// if ((is_array($output)) && (self::$returnArrayAsType != self::RETURN_ARRAY_AS_ARRAY)) { +// return array_shift(PHPExcel_Calculation_Functions::flattenArray($output)); +// } + return $output; + } + + + private function validateBinaryOperand($cellID, &$operand, &$stack) + { + if (is_array($operand)) { + if ((count($operand, COUNT_RECURSIVE) - count($operand)) == 1) { + do { + $operand = array_pop($operand); + } while (is_array($operand)); + } + } + // Numbers, matrices and booleans can pass straight through, as they're already valid + if (is_string($operand)) { + // We only need special validations for the operand if it is a string + // Start by stripping off the quotation marks we use to identify true excel string values internally + if ($operand > '' && $operand{0} == '"') { + $operand = self::unwrapResult($operand); + } + // If the string is a numeric value, we treat it as a numeric, so no further testing + if (!is_numeric($operand)) { + // If not a numeric, test to see if the value is an Excel error, and so can't be used in normal binary operations + if ($operand > '' && $operand{0} == '#') { + $stack->push('Value', $operand); + $this->_debugLog->writeDebugLog('Evaluation Result is ', $this->showTypeDetails($operand)); + return false; + } elseif (!PHPExcel_Shared_String::convertToNumberIfFraction($operand)) { + // If not a numeric or a fraction, then it's a text string, and so can't be used in mathematical binary operations + $stack->push('Value', '#VALUE!'); + $this->_debugLog->writeDebugLog('Evaluation Result is a ', $this->showTypeDetails('#VALUE!')); + return false; + } + } + } + + // return a true if the value of the operand is one that we can use in normal binary operations + return true; + } + + + private function executeBinaryComparisonOperation($cellID, $operand1, $operand2, $operation, &$stack, $recursingArrays = false) + { + // If we're dealing with matrix operations, we want a matrix result + if ((is_array($operand1)) || (is_array($operand2))) { + $result = array(); + if ((is_array($operand1)) && (!is_array($operand2))) { + foreach ($operand1 as $x => $operandData) { + $this->_debugLog->writeDebugLog('Evaluating Comparison ', $this->showValue($operandData), ' ', $operation, ' ', $this->showValue($operand2)); + $this->executeBinaryComparisonOperation($cellID, $operandData, $operand2, $operation, $stack); + $r = $stack->pop(); + $result[$x] = $r['value']; + } + } elseif ((!is_array($operand1)) && (is_array($operand2))) { + foreach ($operand2 as $x => $operandData) { + $this->_debugLog->writeDebugLog('Evaluating Comparison ', $this->showValue($operand1), ' ', $operation, ' ', $this->showValue($operandData)); + $this->executeBinaryComparisonOperation($cellID, $operand1, $operandData, $operation, $stack); + $r = $stack->pop(); + $result[$x] = $r['value']; + } + } else { + if (!$recursingArrays) { + self::checkMatrixOperands($operand1, $operand2, 2); + } + foreach ($operand1 as $x => $operandData) { + $this->_debugLog->writeDebugLog('Evaluating Comparison ', $this->showValue($operandData), ' ', $operation, ' ', $this->showValue($operand2[$x])); + $this->executeBinaryComparisonOperation($cellID, $operandData, $operand2[$x], $operation, $stack, true); + $r = $stack->pop(); + $result[$x] = $r['value']; + } + } + // Log the result details + $this->_debugLog->writeDebugLog('Comparison Evaluation Result is ', $this->showTypeDetails($result)); + // And push the result onto the stack + $stack->push('Array', $result); + return true; + } + + // Simple validate the two operands if they are string values + if (is_string($operand1) && $operand1 > '' && $operand1{0} == '"') { + $operand1 = self::unwrapResult($operand1); + } + if (is_string($operand2) && $operand2 > '' && $operand2{0} == '"') { + $operand2 = self::unwrapResult($operand2); + } + + // Use case insensitive comparaison if not OpenOffice mode + if (PHPExcel_Calculation_Functions::getCompatibilityMode() != PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + if (is_string($operand1)) { + $operand1 = strtoupper($operand1); + } + if (is_string($operand2)) { + $operand2 = strtoupper($operand2); + } + } + + $useLowercaseFirstComparison = is_string($operand1) && is_string($operand2) && PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE; + + // execute the necessary operation + switch ($operation) { + // Greater than + case '>': + if ($useLowercaseFirstComparison) { + $result = $this->strcmpLowercaseFirst($operand1, $operand2) > 0; + } else { + $result = ($operand1 > $operand2); + } + break; + // Less than + case '<': + if ($useLowercaseFirstComparison) { + $result = $this->strcmpLowercaseFirst($operand1, $operand2) < 0; + } else { + $result = ($operand1 < $operand2); + } + break; + // Equality + case '=': + if (is_numeric($operand1) && is_numeric($operand2)) { + $result = (abs($operand1 - $operand2) < $this->delta); + } else { + $result = strcmp($operand1, $operand2) == 0; + } + break; + // Greater than or equal + case '>=': + if (is_numeric($operand1) && is_numeric($operand2)) { + $result = ((abs($operand1 - $operand2) < $this->delta) || ($operand1 > $operand2)); + } elseif ($useLowercaseFirstComparison) { + $result = $this->strcmpLowercaseFirst($operand1, $operand2) >= 0; + } else { + $result = strcmp($operand1, $operand2) >= 0; + } + break; + // Less than or equal + case '<=': + if (is_numeric($operand1) && is_numeric($operand2)) { + $result = ((abs($operand1 - $operand2) < $this->delta) || ($operand1 < $operand2)); + } elseif ($useLowercaseFirstComparison) { + $result = $this->strcmpLowercaseFirst($operand1, $operand2) <= 0; + } else { + $result = strcmp($operand1, $operand2) <= 0; + } + break; + // Inequality + case '<>': + if (is_numeric($operand1) && is_numeric($operand2)) { + $result = (abs($operand1 - $operand2) > 1E-14); + } else { + $result = strcmp($operand1, $operand2) != 0; + } + break; + } + + // Log the result details + $this->_debugLog->writeDebugLog('Evaluation Result is ', $this->showTypeDetails($result)); + // And push the result onto the stack + $stack->push('Value', $result); + return true; + } + + /** + * Compare two strings in the same way as strcmp() except that lowercase come before uppercase letters + * @param string $str1 First string value for the comparison + * @param string $str2 Second string value for the comparison + * @return integer + */ + private function strcmpLowercaseFirst($str1, $str2) + { + $inversedStr1 = PHPExcel_Shared_String::StrCaseReverse($str1); + $inversedStr2 = PHPExcel_Shared_String::StrCaseReverse($str2); + + return strcmp($inversedStr1, $inversedStr2); + } + + private function executeNumericBinaryOperation($cellID, $operand1, $operand2, $operation, $matrixFunction, &$stack) + { + // Validate the two operands + if (!$this->validateBinaryOperand($cellID, $operand1, $stack)) { + return false; + } + if (!$this->validateBinaryOperand($cellID, $operand2, $stack)) { + return false; + } + + // If either of the operands is a matrix, we need to treat them both as matrices + // (converting the other operand to a matrix if need be); then perform the required + // matrix operation + if ((is_array($operand1)) || (is_array($operand2))) { + // Ensure that both operands are arrays/matrices of the same size + self::checkMatrixOperands($operand1, $operand2, 2); + + try { + // Convert operand 1 from a PHP array to a matrix + $matrix = new PHPExcel_Shared_JAMA_Matrix($operand1); + // Perform the required operation against the operand 1 matrix, passing in operand 2 + $matrixResult = $matrix->$matrixFunction($operand2); + $result = $matrixResult->getArray(); + } catch (PHPExcel_Exception $ex) { + $this->_debugLog->writeDebugLog('JAMA Matrix Exception: ', $ex->getMessage()); + $result = '#VALUE!'; + } + } else { + if ((PHPExcel_Calculation_Functions::getCompatibilityMode() != PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) && + ((is_string($operand1) && !is_numeric($operand1) && strlen($operand1)>0) || + (is_string($operand2) && !is_numeric($operand2) && strlen($operand2)>0))) { + $result = PHPExcel_Calculation_Functions::VALUE(); + } else { + // If we're dealing with non-matrix operations, execute the necessary operation + switch ($operation) { + // Addition + case '+': + $result = $operand1 + $operand2; + break; + // Subtraction + case '-': + $result = $operand1 - $operand2; + break; + // Multiplication + case '*': + $result = $operand1 * $operand2; + break; + // Division + case '/': + if ($operand2 == 0) { + // Trap for Divide by Zero error + $stack->push('Value', '#DIV/0!'); + $this->_debugLog->writeDebugLog('Evaluation Result is ', $this->showTypeDetails('#DIV/0!')); + return false; + } else { + $result = $operand1 / $operand2; + } + break; + // Power + case '^': + $result = pow($operand1, $operand2); + break; + } + } + } + + // Log the result details + $this->_debugLog->writeDebugLog('Evaluation Result is ', $this->showTypeDetails($result)); + // And push the result onto the stack + $stack->push('Value', $result); + return true; + } + + + // trigger an error, but nicely, if need be + protected function raiseFormulaError($errorMessage) + { + $this->formulaError = $errorMessage; + $this->cyclicReferenceStack->clear(); + if (!$this->suppressFormulaErrors) { + throw new PHPExcel_Calculation_Exception($errorMessage); + } + trigger_error($errorMessage, E_USER_ERROR); + } + + + /** + * Extract range values + * + * @param string &$pRange String based range representation + * @param PHPExcel_Worksheet $pSheet Worksheet + * @param boolean $resetLog Flag indicating whether calculation log should be reset or not + * @return mixed Array of values in range if range contains more than one element. Otherwise, a single value is returned. + * @throws PHPExcel_Calculation_Exception + */ + public function extractCellRange(&$pRange = 'A1', PHPExcel_Worksheet $pSheet = null, $resetLog = true) + { + // Return value + $returnValue = array (); + +// echo 'extractCellRange('.$pRange.')', PHP_EOL; + if ($pSheet !== null) { + $pSheetName = $pSheet->getTitle(); +// echo 'Passed sheet name is '.$pSheetName.PHP_EOL; +// echo 'Range reference is '.$pRange.PHP_EOL; + if (strpos($pRange, '!') !== false) { +// echo '$pRange reference includes sheet reference', PHP_EOL; + list($pSheetName, $pRange) = PHPExcel_Worksheet::extractSheetTitle($pRange, true); +// echo 'New sheet name is '.$pSheetName, PHP_EOL; +// echo 'Adjusted Range reference is '.$pRange, PHP_EOL; + $pSheet = $this->workbook->getSheetByName($pSheetName); + } + + // Extract range + $aReferences = PHPExcel_Cell::extractAllCellReferencesInRange($pRange); + $pRange = $pSheetName.'!'.$pRange; + if (!isset($aReferences[1])) { + // Single cell in range + sscanf($aReferences[0], '%[A-Z]%d', $currentCol, $currentRow); + $cellValue = null; + if ($pSheet->cellExists($aReferences[0])) { + $returnValue[$currentRow][$currentCol] = $pSheet->getCell($aReferences[0])->getCalculatedValue($resetLog); + } else { + $returnValue[$currentRow][$currentCol] = null; + } + } else { + // Extract cell data for all cells in the range + foreach ($aReferences as $reference) { + // Extract range + sscanf($reference, '%[A-Z]%d', $currentCol, $currentRow); + $cellValue = null; + if ($pSheet->cellExists($reference)) { + $returnValue[$currentRow][$currentCol] = $pSheet->getCell($reference)->getCalculatedValue($resetLog); + } else { + $returnValue[$currentRow][$currentCol] = null; + } + } + } + } + + return $returnValue; + } + + + /** + * Extract range values + * + * @param string &$pRange String based range representation + * @param PHPExcel_Worksheet $pSheet Worksheet + * @return mixed Array of values in range if range contains more than one element. Otherwise, a single value is returned. + * @param boolean $resetLog Flag indicating whether calculation log should be reset or not + * @throws PHPExcel_Calculation_Exception + */ + public function extractNamedRange(&$pRange = 'A1', PHPExcel_Worksheet $pSheet = null, $resetLog = true) + { + // Return value + $returnValue = array (); + +// echo 'extractNamedRange('.$pRange.')
'; + if ($pSheet !== null) { + $pSheetName = $pSheet->getTitle(); +// echo 'Current sheet name is '.$pSheetName.'
'; +// echo 'Range reference is '.$pRange.'
'; + if (strpos($pRange, '!') !== false) { +// echo '$pRange reference includes sheet reference', PHP_EOL; + list($pSheetName, $pRange) = PHPExcel_Worksheet::extractSheetTitle($pRange, true); +// echo 'New sheet name is '.$pSheetName, PHP_EOL; +// echo 'Adjusted Range reference is '.$pRange, PHP_EOL; + $pSheet = $this->workbook->getSheetByName($pSheetName); + } + + // Named range? + $namedRange = PHPExcel_NamedRange::resolveRange($pRange, $pSheet); + if ($namedRange !== null) { + $pSheet = $namedRange->getWorksheet(); +// echo 'Named Range '.$pRange.' ('; + $pRange = $namedRange->getRange(); + $splitRange = PHPExcel_Cell::splitRange($pRange); + // Convert row and column references + if (ctype_alpha($splitRange[0][0])) { + $pRange = $splitRange[0][0] . '1:' . $splitRange[0][1] . $namedRange->getWorksheet()->getHighestRow(); + } elseif (ctype_digit($splitRange[0][0])) { + $pRange = 'A' . $splitRange[0][0] . ':' . $namedRange->getWorksheet()->getHighestColumn() . $splitRange[0][1]; + } +// echo $pRange.') is in sheet '.$namedRange->getWorksheet()->getTitle().'
'; + +// if ($pSheet->getTitle() != $namedRange->getWorksheet()->getTitle()) { +// if (!$namedRange->getLocalOnly()) { +// $pSheet = $namedRange->getWorksheet(); +// } else { +// return $returnValue; +// } +// } + } else { + return PHPExcel_Calculation_Functions::REF(); + } + + // Extract range + $aReferences = PHPExcel_Cell::extractAllCellReferencesInRange($pRange); +// var_dump($aReferences); + if (!isset($aReferences[1])) { + // Single cell (or single column or row) in range + list($currentCol, $currentRow) = PHPExcel_Cell::coordinateFromString($aReferences[0]); + $cellValue = null; + if ($pSheet->cellExists($aReferences[0])) { + $returnValue[$currentRow][$currentCol] = $pSheet->getCell($aReferences[0])->getCalculatedValue($resetLog); + } else { + $returnValue[$currentRow][$currentCol] = null; + } + } else { + // Extract cell data for all cells in the range + foreach ($aReferences as $reference) { + // Extract range + list($currentCol, $currentRow) = PHPExcel_Cell::coordinateFromString($reference); +// echo 'NAMED RANGE: $currentCol='.$currentCol.' $currentRow='.$currentRow.'
'; + $cellValue = null; + if ($pSheet->cellExists($reference)) { + $returnValue[$currentRow][$currentCol] = $pSheet->getCell($reference)->getCalculatedValue($resetLog); + } else { + $returnValue[$currentRow][$currentCol] = null; + } + } + } +// print_r($returnValue); +// echo '
'; + } + + return $returnValue; + } + + + /** + * Is a specific function implemented? + * + * @param string $pFunction Function Name + * @return boolean + */ + public function isImplemented($pFunction = '') + { + $pFunction = strtoupper($pFunction); + if (isset(self::$PHPExcelFunctions[$pFunction])) { + return (self::$PHPExcelFunctions[$pFunction]['functionCall'] != 'PHPExcel_Calculation_Functions::DUMMY'); + } else { + return false; + } + } + + + /** + * Get a list of all implemented functions as an array of function objects + * + * @return array of PHPExcel_Calculation_Function + */ + public function listFunctions() + { + $returnValue = array(); + + foreach (self::$PHPExcelFunctions as $functionName => $function) { + if ($function['functionCall'] != 'PHPExcel_Calculation_Functions::DUMMY') { + $returnValue[$functionName] = new PHPExcel_Calculation_Function( + $function['category'], + $functionName, + $function['functionCall'] + ); + } + } + + return $returnValue; + } + + + /** + * Get a list of all Excel function names + * + * @return array + */ + public function listAllFunctionNames() + { + return array_keys(self::$PHPExcelFunctions); + } + + /** + * Get a list of implemented Excel function names + * + * @return array + */ + public function listFunctionNames() + { + $returnValue = array(); + foreach (self::$PHPExcelFunctions as $functionName => $function) { + if ($function['functionCall'] != 'PHPExcel_Calculation_Functions::DUMMY') { + $returnValue[] = $functionName; + } + } + + return $returnValue; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Database.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Database.php new file mode 100644 index 0000000..b8d91cb --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Database.php @@ -0,0 +1,676 @@ + $criteriaName) { + $testCondition = array(); + $testConditionCount = 0; + foreach ($criteria as $row => $criterion) { + if ($criterion[$key] > '') { + $testCondition[] = '[:'.$criteriaName.']'.PHPExcel_Calculation_Functions::ifCondition($criterion[$key]); + $testConditionCount++; + } + } + if ($testConditionCount > 1) { + $testConditions[] = 'OR(' . implode(',', $testCondition) . ')'; + $testConditionsCount++; + } elseif ($testConditionCount == 1) { + $testConditions[] = $testCondition[0]; + $testConditionsCount++; + } + } + + if ($testConditionsCount > 1) { + $testConditionSet = 'AND(' . implode(',', $testConditions) . ')'; + } elseif ($testConditionsCount == 1) { + $testConditionSet = $testConditions[0]; + } + + // Loop through each row of the database + foreach ($database as $dataRow => $dataValues) { + // Substitute actual values from the database row for our [:placeholders] + $testConditionList = $testConditionSet; + foreach ($criteriaNames as $key => $criteriaName) { + $k = array_search($criteriaName, $fieldNames); + if (isset($dataValues[$k])) { + $dataValue = $dataValues[$k]; + $dataValue = (is_string($dataValue)) ? PHPExcel_Calculation::wrapResult(strtoupper($dataValue)) : $dataValue; + $testConditionList = str_replace('[:' . $criteriaName . ']', $dataValue, $testConditionList); + } + } + // evaluate the criteria against the row data + $result = PHPExcel_Calculation::getInstance()->_calculateFormulaValue('='.$testConditionList); + // If the row failed to meet the criteria, remove it from the database + if (!$result) { + unset($database[$dataRow]); + } + } + + return $database; + } + + + private static function getFilteredColumn($database, $field, $criteria) + { + // reduce the database to a set of rows that match all the criteria + $database = self::filter($database, $criteria); + // extract an array of values for the requested column + $colData = array(); + foreach ($database as $row) { + $colData[] = $row[$field]; + } + + return $colData; + } + + /** + * DAVERAGE + * + * Averages the values in a column of a list or database that match conditions you specify. + * + * Excel Function: + * DAVERAGE(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DAVERAGE($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // Return + return PHPExcel_Calculation_Statistical::AVERAGE( + self::getFilteredColumn($database, $field, $criteria) + ); + } + + + /** + * DCOUNT + * + * Counts the cells that contain numbers in a column of a list or database that match conditions + * that you specify. + * + * Excel Function: + * DCOUNT(database,[field],criteria) + * + * Excel Function: + * DAVERAGE(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return integer + * + * @TODO The field argument is optional. If field is omitted, DCOUNT counts all records in the + * database that match the criteria. + * + */ + public static function DCOUNT($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // Return + return PHPExcel_Calculation_Statistical::COUNT( + self::getFilteredColumn($database, $field, $criteria) + ); + } + + + /** + * DCOUNTA + * + * Counts the nonblank cells in a column of a list or database that match conditions that you specify. + * + * Excel Function: + * DCOUNTA(database,[field],criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return integer + * + * @TODO The field argument is optional. If field is omitted, DCOUNTA counts all records in the + * database that match the criteria. + * + */ + public static function DCOUNTA($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::filter($database, $criteria); + // extract an array of values for the requested column + $colData = array(); + foreach ($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_Statistical::COUNTA( + self::getFilteredColumn($database, $field, $criteria) + ); + } + + + /** + * DGET + * + * Extracts a single value from a column of a list or database that matches conditions that you + * specify. + * + * Excel Function: + * DGET(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return mixed + * + */ + public static function DGET($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // Return + $colData = self::getFilteredColumn($database, $field, $criteria); + if (count($colData) > 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return $colData[0]; + } + + + /** + * DMAX + * + * Returns the largest number in a column of a list or database that matches conditions you that + * specify. + * + * Excel Function: + * DMAX(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DMAX($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // Return + return PHPExcel_Calculation_Statistical::MAX( + self::getFilteredColumn($database, $field, $criteria) + ); + } + + + /** + * DMIN + * + * Returns the smallest number in a column of a list or database that matches conditions you that + * specify. + * + * Excel Function: + * DMIN(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DMIN($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // Return + return PHPExcel_Calculation_Statistical::MIN( + self::getFilteredColumn($database, $field, $criteria) + ); + } + + + /** + * DPRODUCT + * + * Multiplies the values in a column of a list or database that match conditions that you specify. + * + * Excel Function: + * DPRODUCT(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DPRODUCT($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // Return + return PHPExcel_Calculation_MathTrig::PRODUCT( + self::getFilteredColumn($database, $field, $criteria) + ); + } + + + /** + * DSTDEV + * + * Estimates the standard deviation of a population based on a sample by using the numbers in a + * column of a list or database that match conditions that you specify. + * + * Excel Function: + * DSTDEV(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DSTDEV($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // Return + return PHPExcel_Calculation_Statistical::STDEV( + self::getFilteredColumn($database, $field, $criteria) + ); + } + + + /** + * DSTDEVP + * + * Calculates the standard deviation of a population based on the entire population by using the + * numbers in a column of a list or database that match conditions that you specify. + * + * Excel Function: + * DSTDEVP(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DSTDEVP($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // Return + return PHPExcel_Calculation_Statistical::STDEVP( + self::getFilteredColumn($database, $field, $criteria) + ); + } + + + /** + * DSUM + * + * Adds the numbers in a column of a list or database that match conditions that you specify. + * + * Excel Function: + * DSUM(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DSUM($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // Return + return PHPExcel_Calculation_MathTrig::SUM( + self::getFilteredColumn($database, $field, $criteria) + ); + } + + + /** + * DVAR + * + * Estimates the variance of a population based on a sample by using the numbers in a column + * of a list or database that match conditions that you specify. + * + * Excel Function: + * DVAR(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DVAR($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // Return + return PHPExcel_Calculation_Statistical::VARFunc( + self::getFilteredColumn($database, $field, $criteria) + ); + } + + + /** + * DVARP + * + * Calculates the variance of a population based on the entire population by using the numbers + * in a column of a list or database that match conditions that you specify. + * + * Excel Function: + * DVARP(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DVARP($database, $field, $criteria) + { + $field = self::fieldExtract($database, $field); + if (is_null($field)) { + return null; + } + + // Return + return PHPExcel_Calculation_Statistical::VARP( + self::getFilteredColumn($database, $field, $criteria) + ); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/DateTime.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/DateTime.php new file mode 100644 index 0000000..72f4c7a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/DateTime.php @@ -0,0 +1,1553 @@ +format('m'); + $oYear = (int) $PHPDateObject->format('Y'); + + $adjustmentMonthsString = (string) $adjustmentMonths; + if ($adjustmentMonths > 0) { + $adjustmentMonthsString = '+'.$adjustmentMonths; + } + if ($adjustmentMonths != 0) { + $PHPDateObject->modify($adjustmentMonthsString.' months'); + } + $nMonth = (int) $PHPDateObject->format('m'); + $nYear = (int) $PHPDateObject->format('Y'); + + $monthDiff = ($nMonth - $oMonth) + (($nYear - $oYear) * 12); + if ($monthDiff != $adjustmentMonths) { + $adjustDays = (int) $PHPDateObject->format('d'); + $adjustDaysString = '-'.$adjustDays.' days'; + $PHPDateObject->modify($adjustDaysString); + } + return $PHPDateObject; + } + + + /** + * DATETIMENOW + * + * Returns the current date and time. + * The NOW function is useful when you need to display the current date and time on a worksheet or + * calculate a value based on the current date and time, and have that value updated each time you + * open the worksheet. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date + * and time format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * NOW() + * + * @access public + * @category Date/Time Functions + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function DATETIMENOW() + { + $saveTimeZone = date_default_timezone_get(); + date_default_timezone_set('UTC'); + $retValue = false; + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL: + $retValue = (float) PHPExcel_Shared_Date::PHPToExcel(time()); + break; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC: + $retValue = (integer) time(); + break; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT: + $retValue = new DateTime(); + break; + } + date_default_timezone_set($saveTimeZone); + + return $retValue; + } + + + /** + * DATENOW + * + * Returns the current date. + * The NOW function is useful when you need to display the current date and time on a worksheet or + * calculate a value based on the current date and time, and have that value updated each time you + * open the worksheet. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date + * and time format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * TODAY() + * + * @access public + * @category Date/Time Functions + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function DATENOW() + { + $saveTimeZone = date_default_timezone_get(); + date_default_timezone_set('UTC'); + $retValue = false; + $excelDateTime = floor(PHPExcel_Shared_Date::PHPToExcel(time())); + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL: + $retValue = (float) $excelDateTime; + break; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC: + $retValue = (integer) PHPExcel_Shared_Date::ExcelToPHP($excelDateTime); + break; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT: + $retValue = PHPExcel_Shared_Date::ExcelToPHPObject($excelDateTime); + break; + } + date_default_timezone_set($saveTimeZone); + + return $retValue; + } + + + /** + * DATE + * + * The DATE function returns a value that represents a particular date. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date + * format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * DATE(year,month,day) + * + * PHPExcel is a lot more forgiving than MS Excel when passing non numeric values to this function. + * A Month name or abbreviation (English only at this point) such as 'January' or 'Jan' will still be accepted, + * as will a day value with a suffix (e.g. '21st' rather than simply 21); again only English language. + * + * @access public + * @category Date/Time Functions + * @param integer $year The value of the year argument can include one to four digits. + * Excel interprets the year argument according to the configured + * date system: 1900 or 1904. + * If year is between 0 (zero) and 1899 (inclusive), Excel adds that + * value to 1900 to calculate the year. For example, DATE(108,1,2) + * returns January 2, 2008 (1900+108). + * If year is between 1900 and 9999 (inclusive), Excel uses that + * value as the year. For example, DATE(2008,1,2) returns January 2, + * 2008. + * If year is less than 0 or is 10000 or greater, Excel returns the + * #NUM! error value. + * @param integer $month A positive or negative integer representing the month of the year + * from 1 to 12 (January to December). + * If month is greater than 12, month adds that number of months to + * the first month in the year specified. For example, DATE(2008,14,2) + * returns the serial number representing February 2, 2009. + * If month is less than 1, month subtracts the magnitude of that + * number of months, plus 1, from the first month in the year + * specified. For example, DATE(2008,-3,2) returns the serial number + * representing September 2, 2007. + * @param integer $day A positive or negative integer representing the day of the month + * from 1 to 31. + * If day is greater than the number of days in the month specified, + * day adds that number of days to the first day in the month. For + * example, DATE(2008,1,35) returns the serial number representing + * February 4, 2008. + * If day is less than 1, day subtracts the magnitude that number of + * days, plus one, from the first day of the month specified. For + * example, DATE(2008,1,-15) returns the serial number representing + * December 16, 2007. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function DATE($year = 0, $month = 1, $day = 1) + { + $year = PHPExcel_Calculation_Functions::flattenSingleValue($year); + $month = PHPExcel_Calculation_Functions::flattenSingleValue($month); + $day = PHPExcel_Calculation_Functions::flattenSingleValue($day); + + if (($month !== null) && (!is_numeric($month))) { + $month = PHPExcel_Shared_Date::monthStringToNumber($month); + } + + if (($day !== null) && (!is_numeric($day))) { + $day = PHPExcel_Shared_Date::dayStringToNumber($day); + } + + $year = ($year !== null) ? PHPExcel_Shared_String::testStringAsNumeric($year) : 0; + $month = ($month !== null) ? PHPExcel_Shared_String::testStringAsNumeric($month) : 0; + $day = ($day !== null) ? PHPExcel_Shared_String::testStringAsNumeric($day) : 0; + if ((!is_numeric($year)) || + (!is_numeric($month)) || + (!is_numeric($day))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $year = (integer) $year; + $month = (integer) $month; + $day = (integer) $day; + + $baseYear = PHPExcel_Shared_Date::getExcelCalendar(); + // Validate parameters + if ($year < ($baseYear-1900)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((($baseYear-1900) != 0) && ($year < $baseYear) && ($year >= 1900)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + if (($year < $baseYear) && ($year >= ($baseYear-1900))) { + $year += 1900; + } + + if ($month < 1) { + // Handle year/month adjustment if month < 1 + --$month; + $year += ceil($month / 12) - 1; + $month = 13 - abs($month % 12); + } elseif ($month > 12) { + // Handle year/month adjustment if month > 12 + $year += floor($month / 12); + $month = ($month % 12); + } + + // Re-validate the year parameter after adjustments + if (($year < $baseYear) || ($year >= 10000)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $excelDateValue = PHPExcel_Shared_Date::FormattedPHPToExcel($year, $month, $day); + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL: + return (float) $excelDateValue; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC: + return (integer) PHPExcel_Shared_Date::ExcelToPHP($excelDateValue); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT: + return PHPExcel_Shared_Date::ExcelToPHPObject($excelDateValue); + } + } + + + /** + * TIME + * + * The TIME function returns a value that represents a particular time. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the time + * format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * TIME(hour,minute,second) + * + * @access public + * @category Date/Time Functions + * @param integer $hour A number from 0 (zero) to 32767 representing the hour. + * Any value greater than 23 will be divided by 24 and the remainder + * will be treated as the hour value. For example, TIME(27,0,0) = + * TIME(3,0,0) = .125 or 3:00 AM. + * @param integer $minute A number from 0 to 32767 representing the minute. + * Any value greater than 59 will be converted to hours and minutes. + * For example, TIME(0,750,0) = TIME(12,30,0) = .520833 or 12:30 PM. + * @param integer $second A number from 0 to 32767 representing the second. + * Any value greater than 59 will be converted to hours, minutes, + * and seconds. For example, TIME(0,0,2000) = TIME(0,33,22) = .023148 + * or 12:33:20 AM + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function TIME($hour = 0, $minute = 0, $second = 0) + { + $hour = PHPExcel_Calculation_Functions::flattenSingleValue($hour); + $minute = PHPExcel_Calculation_Functions::flattenSingleValue($minute); + $second = PHPExcel_Calculation_Functions::flattenSingleValue($second); + + if ($hour == '') { + $hour = 0; + } + if ($minute == '') { + $minute = 0; + } + if ($second == '') { + $second = 0; + } + + if ((!is_numeric($hour)) || (!is_numeric($minute)) || (!is_numeric($second))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $hour = (integer) $hour; + $minute = (integer) $minute; + $second = (integer) $second; + + if ($second < 0) { + $minute += floor($second / 60); + $second = 60 - abs($second % 60); + if ($second == 60) { + $second = 0; + } + } elseif ($second >= 60) { + $minute += floor($second / 60); + $second = $second % 60; + } + if ($minute < 0) { + $hour += floor($minute / 60); + $minute = 60 - abs($minute % 60); + if ($minute == 60) { + $minute = 0; + } + } elseif ($minute >= 60) { + $hour += floor($minute / 60); + $minute = $minute % 60; + } + + if ($hour > 23) { + $hour = $hour % 24; + } elseif ($hour < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL: + $date = 0; + $calendar = PHPExcel_Shared_Date::getExcelCalendar(); + if ($calendar != PHPExcel_Shared_Date::CALENDAR_WINDOWS_1900) { + $date = 1; + } + return (float) PHPExcel_Shared_Date::FormattedPHPToExcel($calendar, 1, $date, $hour, $minute, $second); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC: + return (integer) PHPExcel_Shared_Date::ExcelToPHP(PHPExcel_Shared_Date::FormattedPHPToExcel(1970, 1, 1, $hour, $minute, $second)); // -2147468400; // -2147472000 + 3600 + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT: + $dayAdjust = 0; + if ($hour < 0) { + $dayAdjust = floor($hour / 24); + $hour = 24 - abs($hour % 24); + if ($hour == 24) { + $hour = 0; + } + } elseif ($hour >= 24) { + $dayAdjust = floor($hour / 24); + $hour = $hour % 24; + } + $phpDateObject = new DateTime('1900-01-01 '.$hour.':'.$minute.':'.$second); + if ($dayAdjust != 0) { + $phpDateObject->modify($dayAdjust.' days'); + } + return $phpDateObject; + } + } + + + /** + * DATEVALUE + * + * Returns a value that represents a particular date. + * Use DATEVALUE to convert a date represented by a text string to an Excel or PHP date/time stamp + * value. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date + * format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * DATEVALUE(dateValue) + * + * @access public + * @category Date/Time Functions + * @param string $dateValue Text that represents a date in a Microsoft Excel date format. + * For example, "1/30/2008" or "30-Jan-2008" are text strings within + * quotation marks that represent dates. Using the default date + * system in Excel for Windows, date_text must represent a date from + * January 1, 1900, to December 31, 9999. Using the default date + * system in Excel for the Macintosh, date_text must represent a date + * from January 1, 1904, to December 31, 9999. DATEVALUE returns the + * #VALUE! error value if date_text is out of this range. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function DATEVALUE($dateValue = 1) + { + $dateValue = trim(PHPExcel_Calculation_Functions::flattenSingleValue($dateValue), '"'); + // Strip any ordinals because they're allowed in Excel (English only) + $dateValue = preg_replace('/(\d)(st|nd|rd|th)([ -\/])/Ui', '$1$3', $dateValue); + // Convert separators (/ . or space) to hyphens (should also handle dot used for ordinals in some countries, e.g. Denmark, Germany) + $dateValue = str_replace(array('/', '.', '-', ' '), array(' ', ' ', ' ', ' '), $dateValue); + + $yearFound = false; + $t1 = explode(' ', $dateValue); + foreach ($t1 as &$t) { + if ((is_numeric($t)) && ($t > 31)) { + if ($yearFound) { + return PHPExcel_Calculation_Functions::VALUE(); + } else { + if ($t < 100) { + $t += 1900; + } + $yearFound = true; + } + } + } + if ((count($t1) == 1) && (strpos($t, ':') != false)) { + // We've been fed a time value without any date + return 0.0; + } elseif (count($t1) == 2) { + // We only have two parts of the date: either day/month or month/year + if ($yearFound) { + array_unshift($t1, 1); + } else { + array_push($t1, date('Y')); + } + } + unset($t); + $dateValue = implode(' ', $t1); + + $PHPDateArray = date_parse($dateValue); + if (($PHPDateArray === false) || ($PHPDateArray['error_count'] > 0)) { + $testVal1 = strtok($dateValue, '- '); + if ($testVal1 !== false) { + $testVal2 = strtok('- '); + if ($testVal2 !== false) { + $testVal3 = strtok('- '); + if ($testVal3 === false) { + $testVal3 = strftime('%Y'); + } + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + $PHPDateArray = date_parse($testVal1.'-'.$testVal2.'-'.$testVal3); + if (($PHPDateArray === false) || ($PHPDateArray['error_count'] > 0)) { + $PHPDateArray = date_parse($testVal2.'-'.$testVal1.'-'.$testVal3); + if (($PHPDateArray === false) || ($PHPDateArray['error_count'] > 0)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + } + + if (($PHPDateArray !== false) && ($PHPDateArray['error_count'] == 0)) { + // Execute function + if ($PHPDateArray['year'] == '') { + $PHPDateArray['year'] = strftime('%Y'); + } + if ($PHPDateArray['year'] < 1900) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if ($PHPDateArray['month'] == '') { + $PHPDateArray['month'] = strftime('%m'); + } + if ($PHPDateArray['day'] == '') { + $PHPDateArray['day'] = strftime('%d'); + } + $excelDateValue = floor( + PHPExcel_Shared_Date::FormattedPHPToExcel( + $PHPDateArray['year'], + $PHPDateArray['month'], + $PHPDateArray['day'], + $PHPDateArray['hour'], + $PHPDateArray['minute'], + $PHPDateArray['second'] + ) + ); + + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL: + return (float) $excelDateValue; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC: + return (integer) PHPExcel_Shared_Date::ExcelToPHP($excelDateValue); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT: + return new DateTime($PHPDateArray['year'].'-'.$PHPDateArray['month'].'-'.$PHPDateArray['day'].' 00:00:00'); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * TIMEVALUE + * + * Returns a value that represents a particular time. + * Use TIMEVALUE to convert a time represented by a text string to an Excel or PHP date/time stamp + * value. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the time + * format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * TIMEVALUE(timeValue) + * + * @access public + * @category Date/Time Functions + * @param string $timeValue A text string that represents a time in any one of the Microsoft + * Excel time formats; for example, "6:45 PM" and "18:45" text strings + * within quotation marks that represent time. + * Date information in time_text is ignored. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function TIMEVALUE($timeValue) + { + $timeValue = trim(PHPExcel_Calculation_Functions::flattenSingleValue($timeValue), '"'); + $timeValue = str_replace(array('/', '.'), array('-', '-'), $timeValue); + + $PHPDateArray = date_parse($timeValue); + if (($PHPDateArray !== false) && ($PHPDateArray['error_count'] == 0)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $excelDateValue = PHPExcel_Shared_Date::FormattedPHPToExcel( + $PHPDateArray['year'], + $PHPDateArray['month'], + $PHPDateArray['day'], + $PHPDateArray['hour'], + $PHPDateArray['minute'], + $PHPDateArray['second'] + ); + } else { + $excelDateValue = PHPExcel_Shared_Date::FormattedPHPToExcel(1900, 1, 1, $PHPDateArray['hour'], $PHPDateArray['minute'], $PHPDateArray['second']) - 1; + } + + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL: + return (float) $excelDateValue; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC: + return (integer) $phpDateValue = PHPExcel_Shared_Date::ExcelToPHP($excelDateValue+25569) - 3600; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT: + return new DateTime('1900-01-01 '.$PHPDateArray['hour'].':'.$PHPDateArray['minute'].':'.$PHPDateArray['second']); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * DATEDIF + * + * @param mixed $startDate Excel date serial value, PHP date/time stamp, PHP DateTime object + * or a standard date string + * @param mixed $endDate Excel date serial value, PHP date/time stamp, PHP DateTime object + * or a standard date string + * @param string $unit + * @return integer Interval between the dates + */ + public static function DATEDIF($startDate = 0, $endDate = 0, $unit = 'D') + { + $startDate = PHPExcel_Calculation_Functions::flattenSingleValue($startDate); + $endDate = PHPExcel_Calculation_Functions::flattenSingleValue($endDate); + $unit = strtoupper(PHPExcel_Calculation_Functions::flattenSingleValue($unit)); + + if (is_string($startDate = self::getDateValue($startDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($endDate = self::getDateValue($endDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Validate parameters + if ($startDate >= $endDate) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $difference = $endDate - $startDate; + + $PHPStartDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($startDate); + $startDays = $PHPStartDateObject->format('j'); + $startMonths = $PHPStartDateObject->format('n'); + $startYears = $PHPStartDateObject->format('Y'); + + $PHPEndDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($endDate); + $endDays = $PHPEndDateObject->format('j'); + $endMonths = $PHPEndDateObject->format('n'); + $endYears = $PHPEndDateObject->format('Y'); + + $retVal = PHPExcel_Calculation_Functions::NaN(); + switch ($unit) { + case 'D': + $retVal = intval($difference); + break; + case 'M': + $retVal = intval($endMonths - $startMonths) + (intval($endYears - $startYears) * 12); + // We're only interested in full months + if ($endDays < $startDays) { + --$retVal; + } + break; + case 'Y': + $retVal = intval($endYears - $startYears); + // We're only interested in full months + if ($endMonths < $startMonths) { + --$retVal; + } elseif (($endMonths == $startMonths) && ($endDays < $startDays)) { + --$retVal; + } + break; + case 'MD': + if ($endDays < $startDays) { + $retVal = $endDays; + $PHPEndDateObject->modify('-'.$endDays.' days'); + $adjustDays = $PHPEndDateObject->format('j'); + if ($adjustDays > $startDays) { + $retVal += ($adjustDays - $startDays); + } + } else { + $retVal = $endDays - $startDays; + } + break; + case 'YM': + $retVal = intval($endMonths - $startMonths); + if ($retVal < 0) { + $retVal += 12; + } + // We're only interested in full months + if ($endDays < $startDays) { + --$retVal; + } + break; + case 'YD': + $retVal = intval($difference); + if ($endYears > $startYears) { + while ($endYears > $startYears) { + $PHPEndDateObject->modify('-1 year'); + $endYears = $PHPEndDateObject->format('Y'); + } + $retVal = $PHPEndDateObject->format('z') - $PHPStartDateObject->format('z'); + if ($retVal < 0) { + $retVal += 365; + } + } + break; + default: + $retVal = PHPExcel_Calculation_Functions::NaN(); + } + return $retVal; + } + + + /** + * DAYS360 + * + * Returns the number of days between two dates based on a 360-day year (twelve 30-day months), + * which is used in some accounting calculations. Use this function to help compute payments if + * your accounting system is based on twelve 30-day months. + * + * Excel Function: + * DAYS360(startDate,endDate[,method]) + * + * @access public + * @category Date/Time Functions + * @param mixed $startDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param mixed $endDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param boolean $method US or European Method + * FALSE or omitted: U.S. (NASD) method. If the starting date is + * the last day of a month, it becomes equal to the 30th of the + * same month. If the ending date is the last day of a month and + * the starting date is earlier than the 30th of a month, the + * ending date becomes equal to the 1st of the next month; + * otherwise the ending date becomes equal to the 30th of the + * same month. + * TRUE: European method. Starting dates and ending dates that + * occur on the 31st of a month become equal to the 30th of the + * same month. + * @return integer Number of days between start date and end date + */ + public static function DAYS360($startDate = 0, $endDate = 0, $method = false) + { + $startDate = PHPExcel_Calculation_Functions::flattenSingleValue($startDate); + $endDate = PHPExcel_Calculation_Functions::flattenSingleValue($endDate); + + if (is_string($startDate = self::getDateValue($startDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($endDate = self::getDateValue($endDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (!is_bool($method)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Execute function + $PHPStartDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($startDate); + $startDay = $PHPStartDateObject->format('j'); + $startMonth = $PHPStartDateObject->format('n'); + $startYear = $PHPStartDateObject->format('Y'); + + $PHPEndDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($endDate); + $endDay = $PHPEndDateObject->format('j'); + $endMonth = $PHPEndDateObject->format('n'); + $endYear = $PHPEndDateObject->format('Y'); + + return self::dateDiff360($startDay, $startMonth, $startYear, $endDay, $endMonth, $endYear, !$method); + } + + + /** + * YEARFRAC + * + * Calculates the fraction of the year represented by the number of whole days between two dates + * (the start_date and the end_date). + * Use the YEARFRAC worksheet function to identify the proportion of a whole year's benefits or + * obligations to assign to a specific term. + * + * Excel Function: + * YEARFRAC(startDate,endDate[,method]) + * + * @access public + * @category Date/Time Functions + * @param mixed $startDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param mixed $endDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param integer $method Method used for the calculation + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float fraction of the year + */ + public static function YEARFRAC($startDate = 0, $endDate = 0, $method = 0) + { + $startDate = PHPExcel_Calculation_Functions::flattenSingleValue($startDate); + $endDate = PHPExcel_Calculation_Functions::flattenSingleValue($endDate); + $method = PHPExcel_Calculation_Functions::flattenSingleValue($method); + + if (is_string($startDate = self::getDateValue($startDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($endDate = self::getDateValue($endDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (((is_numeric($method)) && (!is_string($method))) || ($method == '')) { + switch ($method) { + case 0: + return self::DAYS360($startDate, $endDate) / 360; + case 1: + $days = self::DATEDIF($startDate, $endDate); + $startYear = self::YEAR($startDate); + $endYear = self::YEAR($endDate); + $years = $endYear - $startYear + 1; + $leapDays = 0; + if ($years == 1) { + if (self::isLeapYear($endYear)) { + $startMonth = self::MONTHOFYEAR($startDate); + $endMonth = self::MONTHOFYEAR($endDate); + $endDay = self::DAYOFMONTH($endDate); + if (($startMonth < 3) || + (($endMonth * 100 + $endDay) >= (2 * 100 + 29))) { + $leapDays += 1; + } + } + } else { + for ($year = $startYear; $year <= $endYear; ++$year) { + if ($year == $startYear) { + $startMonth = self::MONTHOFYEAR($startDate); + $startDay = self::DAYOFMONTH($startDate); + if ($startMonth < 3) { + $leapDays += (self::isLeapYear($year)) ? 1 : 0; + } + } elseif ($year == $endYear) { + $endMonth = self::MONTHOFYEAR($endDate); + $endDay = self::DAYOFMONTH($endDate); + if (($endMonth * 100 + $endDay) >= (2 * 100 + 29)) { + $leapDays += (self::isLeapYear($year)) ? 1 : 0; + } + } else { + $leapDays += (self::isLeapYear($year)) ? 1 : 0; + } + } + if ($years == 2) { + if (($leapDays == 0) && (self::isLeapYear($startYear)) && ($days > 365)) { + $leapDays = 1; + } elseif ($days < 366) { + $years = 1; + } + } + $leapDays /= $years; + } + return $days / (365 + $leapDays); + case 2: + return self::DATEDIF($startDate, $endDate) / 360; + case 3: + return self::DATEDIF($startDate, $endDate) / 365; + case 4: + return self::DAYS360($startDate, $endDate, true) / 360; + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * NETWORKDAYS + * + * Returns the number of whole working days between start_date and end_date. Working days + * exclude weekends and any dates identified in holidays. + * Use NETWORKDAYS to calculate employee benefits that accrue based on the number of days + * worked during a specific term. + * + * Excel Function: + * NETWORKDAYS(startDate,endDate[,holidays[,holiday[,...]]]) + * + * @access public + * @category Date/Time Functions + * @param mixed $startDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param mixed $endDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param mixed $holidays,... Optional series of Excel date serial value (float), PHP date + * timestamp (integer), PHP DateTime object, or a standard date + * strings that will be excluded from the working calendar, such + * as state and federal holidays and floating holidays. + * @return integer Interval between the dates + */ + public static function NETWORKDAYS($startDate, $endDate) + { + // Retrieve the mandatory start and end date that are referenced in the function definition + $startDate = PHPExcel_Calculation_Functions::flattenSingleValue($startDate); + $endDate = PHPExcel_Calculation_Functions::flattenSingleValue($endDate); + // Flush the mandatory start and end date that are referenced in the function definition, and get the optional days + $dateArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + array_shift($dateArgs); + array_shift($dateArgs); + + // Validate the start and end dates + if (is_string($startDate = $sDate = self::getDateValue($startDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $startDate = (float) floor($startDate); + if (is_string($endDate = $eDate = self::getDateValue($endDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $endDate = (float) floor($endDate); + + if ($sDate > $eDate) { + $startDate = $eDate; + $endDate = $sDate; + } + + // Execute function + $startDoW = 6 - self::DAYOFWEEK($startDate, 2); + if ($startDoW < 0) { + $startDoW = 0; + } + $endDoW = self::DAYOFWEEK($endDate, 2); + if ($endDoW >= 6) { + $endDoW = 0; + } + + $wholeWeekDays = floor(($endDate - $startDate) / 7) * 5; + $partWeekDays = $endDoW + $startDoW; + if ($partWeekDays > 5) { + $partWeekDays -= 5; + } + + // Test any extra holiday parameters + $holidayCountedArray = array(); + foreach ($dateArgs as $holidayDate) { + if (is_string($holidayDate = self::getDateValue($holidayDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (($holidayDate >= $startDate) && ($holidayDate <= $endDate)) { + if ((self::DAYOFWEEK($holidayDate, 2) < 6) && (!in_array($holidayDate, $holidayCountedArray))) { + --$partWeekDays; + $holidayCountedArray[] = $holidayDate; + } + } + } + + if ($sDate > $eDate) { + return 0 - ($wholeWeekDays + $partWeekDays); + } + return $wholeWeekDays + $partWeekDays; + } + + + /** + * WORKDAY + * + * Returns the date that is the indicated number of working days before or after a date (the + * starting date). Working days exclude weekends and any dates identified as holidays. + * Use WORKDAY to exclude weekends or holidays when you calculate invoice due dates, expected + * delivery times, or the number of days of work performed. + * + * Excel Function: + * WORKDAY(startDate,endDays[,holidays[,holiday[,...]]]) + * + * @access public + * @category Date/Time Functions + * @param mixed $startDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param integer $endDays The number of nonweekend and nonholiday days before or after + * startDate. A positive value for days yields a future date; a + * negative value yields a past date. + * @param mixed $holidays,... Optional series of Excel date serial value (float), PHP date + * timestamp (integer), PHP DateTime object, or a standard date + * strings that will be excluded from the working calendar, such + * as state and federal holidays and floating holidays. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function WORKDAY($startDate, $endDays) + { + // Retrieve the mandatory start date and days that are referenced in the function definition + $startDate = PHPExcel_Calculation_Functions::flattenSingleValue($startDate); + $endDays = PHPExcel_Calculation_Functions::flattenSingleValue($endDays); + // Flush the mandatory start date and days that are referenced in the function definition, and get the optional days + $dateArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + array_shift($dateArgs); + array_shift($dateArgs); + + if ((is_string($startDate = self::getDateValue($startDate))) || (!is_numeric($endDays))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $startDate = (float) floor($startDate); + $endDays = (int) floor($endDays); + // If endDays is 0, we always return startDate + if ($endDays == 0) { + return $startDate; + } + + $decrementing = ($endDays < 0) ? true : false; + + // Adjust the start date if it falls over a weekend + + $startDoW = self::DAYOFWEEK($startDate, 3); + if (self::DAYOFWEEK($startDate, 3) >= 5) { + $startDate += ($decrementing) ? -$startDoW + 4: 7 - $startDoW; + ($decrementing) ? $endDays++ : $endDays--; + } + + // Add endDays + $endDate = (float) $startDate + (intval($endDays / 5) * 7) + ($endDays % 5); + + // Adjust the calculated end date if it falls over a weekend + $endDoW = self::DAYOFWEEK($endDate, 3); + if ($endDoW >= 5) { + $endDate += ($decrementing) ? -$endDoW + 4: 7 - $endDoW; + } + + // Test any extra holiday parameters + if (!empty($dateArgs)) { + $holidayCountedArray = $holidayDates = array(); + foreach ($dateArgs as $holidayDate) { + if (($holidayDate !== null) && (trim($holidayDate) > '')) { + if (is_string($holidayDate = self::getDateValue($holidayDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (self::DAYOFWEEK($holidayDate, 3) < 5) { + $holidayDates[] = $holidayDate; + } + } + } + if ($decrementing) { + rsort($holidayDates, SORT_NUMERIC); + } else { + sort($holidayDates, SORT_NUMERIC); + } + foreach ($holidayDates as $holidayDate) { + if ($decrementing) { + if (($holidayDate <= $startDate) && ($holidayDate >= $endDate)) { + if (!in_array($holidayDate, $holidayCountedArray)) { + --$endDate; + $holidayCountedArray[] = $holidayDate; + } + } + } else { + if (($holidayDate >= $startDate) && ($holidayDate <= $endDate)) { + if (!in_array($holidayDate, $holidayCountedArray)) { + ++$endDate; + $holidayCountedArray[] = $holidayDate; + } + } + } + // Adjust the calculated end date if it falls over a weekend + $endDoW = self::DAYOFWEEK($endDate, 3); + if ($endDoW >= 5) { + $endDate += ($decrementing) ? -$endDoW + 4 : 7 - $endDoW; + } + } + } + + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL: + return (float) $endDate; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC: + return (integer) PHPExcel_Shared_Date::ExcelToPHP($endDate); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT: + return PHPExcel_Shared_Date::ExcelToPHPObject($endDate); + } + } + + + /** + * DAYOFMONTH + * + * Returns the day of the month, for a specified date. The day is given as an integer + * ranging from 1 to 31. + * + * Excel Function: + * DAY(dateValue) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @return int Day of the month + */ + public static function DAYOFMONTH($dateValue = 1) + { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + + if ($dateValue === null) { + $dateValue = 1; + } elseif (is_string($dateValue = self::getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($dateValue == 0.0) { + return 0; + } elseif ($dateValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $PHPDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($dateValue); + + return (int) $PHPDateObject->format('j'); + } + + + /** + * DAYOFWEEK + * + * Returns the day of the week for a specified date. The day is given as an integer + * ranging from 0 to 7 (dependent on the requested style). + * + * Excel Function: + * WEEKDAY(dateValue[,style]) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param int $style A number that determines the type of return value + * 1 or omitted Numbers 1 (Sunday) through 7 (Saturday). + * 2 Numbers 1 (Monday) through 7 (Sunday). + * 3 Numbers 0 (Monday) through 6 (Sunday). + * @return int Day of the week value + */ + public static function DAYOFWEEK($dateValue = 1, $style = 1) + { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + $style = PHPExcel_Calculation_Functions::flattenSingleValue($style); + + if (!is_numeric($style)) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif (($style < 1) || ($style > 3)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $style = floor($style); + + if ($dateValue === null) { + $dateValue = 1; + } elseif (is_string($dateValue = self::getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($dateValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $PHPDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($dateValue); + $DoW = $PHPDateObject->format('w'); + + $firstDay = 1; + switch ($style) { + case 1: + ++$DoW; + break; + case 2: + if ($DoW == 0) { + $DoW = 7; + } + break; + case 3: + if ($DoW == 0) { + $DoW = 7; + } + $firstDay = 0; + --$DoW; + break; + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_EXCEL) { + // Test for Excel's 1900 leap year, and introduce the error as required + if (($PHPDateObject->format('Y') == 1900) && ($PHPDateObject->format('n') <= 2)) { + --$DoW; + if ($DoW < $firstDay) { + $DoW += 7; + } + } + } + + return (int) $DoW; + } + + + /** + * WEEKOFYEAR + * + * Returns the week of the year for a specified date. + * The WEEKNUM function considers the week containing January 1 to be the first week of the year. + * However, there is a European standard that defines the first week as the one with the majority + * of days (four or more) falling in the new year. This means that for years in which there are + * three days or less in the first week of January, the WEEKNUM function returns week numbers + * that are incorrect according to the European standard. + * + * Excel Function: + * WEEKNUM(dateValue[,style]) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param boolean $method Week begins on Sunday or Monday + * 1 or omitted Week begins on Sunday. + * 2 Week begins on Monday. + * @return int Week Number + */ + public static function WEEKOFYEAR($dateValue = 1, $method = 1) + { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + $method = PHPExcel_Calculation_Functions::flattenSingleValue($method); + + if (!is_numeric($method)) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif (($method < 1) || ($method > 2)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $method = floor($method); + + if ($dateValue === null) { + $dateValue = 1; + } elseif (is_string($dateValue = self::getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($dateValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $PHPDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($dateValue); + $dayOfYear = $PHPDateObject->format('z'); + $dow = $PHPDateObject->format('w'); + $PHPDateObject->modify('-' . $dayOfYear . ' days'); + $dow = $PHPDateObject->format('w'); + $daysInFirstWeek = 7 - (($dow + (2 - $method)) % 7); + $dayOfYear -= $daysInFirstWeek; + $weekOfYear = ceil($dayOfYear / 7) + 1; + + return (int) $weekOfYear; + } + + + /** + * MONTHOFYEAR + * + * Returns the month of a date represented by a serial number. + * The month is given as an integer, ranging from 1 (January) to 12 (December). + * + * Excel Function: + * MONTH(dateValue) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @return int Month of the year + */ + public static function MONTHOFYEAR($dateValue = 1) + { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + + if ($dateValue === null) { + $dateValue = 1; + } elseif (is_string($dateValue = self::getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($dateValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $PHPDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($dateValue); + + return (int) $PHPDateObject->format('n'); + } + + + /** + * YEAR + * + * Returns the year corresponding to a date. + * The year is returned as an integer in the range 1900-9999. + * + * Excel Function: + * YEAR(dateValue) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @return int Year + */ + public static function YEAR($dateValue = 1) + { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + + if ($dateValue === null) { + $dateValue = 1; + } elseif (is_string($dateValue = self::getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($dateValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $PHPDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($dateValue); + + return (int) $PHPDateObject->format('Y'); + } + + + /** + * HOUROFDAY + * + * Returns the hour of a time value. + * The hour is given as an integer, ranging from 0 (12:00 A.M.) to 23 (11:00 P.M.). + * + * Excel Function: + * HOUR(timeValue) + * + * @param mixed $timeValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard time string + * @return int Hour + */ + public static function HOUROFDAY($timeValue = 0) + { + $timeValue = PHPExcel_Calculation_Functions::flattenSingleValue($timeValue); + + if (!is_numeric($timeValue)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $testVal = strtok($timeValue, '/-: '); + if (strlen($testVal) < strlen($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $timeValue = self::getTimeValue($timeValue); + if (is_string($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + // Execute function + if ($timeValue >= 1) { + $timeValue = fmod($timeValue, 1); + } elseif ($timeValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $timeValue = PHPExcel_Shared_Date::ExcelToPHP($timeValue); + + return (int) gmdate('G', $timeValue); + } + + + /** + * MINUTEOFHOUR + * + * Returns the minutes of a time value. + * The minute is given as an integer, ranging from 0 to 59. + * + * Excel Function: + * MINUTE(timeValue) + * + * @param mixed $timeValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard time string + * @return int Minute + */ + public static function MINUTEOFHOUR($timeValue = 0) + { + $timeValue = $timeTester = PHPExcel_Calculation_Functions::flattenSingleValue($timeValue); + + if (!is_numeric($timeValue)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $testVal = strtok($timeValue, '/-: '); + if (strlen($testVal) < strlen($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $timeValue = self::getTimeValue($timeValue); + if (is_string($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + // Execute function + if ($timeValue >= 1) { + $timeValue = fmod($timeValue, 1); + } elseif ($timeValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $timeValue = PHPExcel_Shared_Date::ExcelToPHP($timeValue); + + return (int) gmdate('i', $timeValue); + } + + + /** + * SECONDOFMINUTE + * + * Returns the seconds of a time value. + * The second is given as an integer in the range 0 (zero) to 59. + * + * Excel Function: + * SECOND(timeValue) + * + * @param mixed $timeValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard time string + * @return int Second + */ + public static function SECONDOFMINUTE($timeValue = 0) + { + $timeValue = PHPExcel_Calculation_Functions::flattenSingleValue($timeValue); + + if (!is_numeric($timeValue)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $testVal = strtok($timeValue, '/-: '); + if (strlen($testVal) < strlen($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $timeValue = self::getTimeValue($timeValue); + if (is_string($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + // Execute function + if ($timeValue >= 1) { + $timeValue = fmod($timeValue, 1); + } elseif ($timeValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $timeValue = PHPExcel_Shared_Date::ExcelToPHP($timeValue); + + return (int) gmdate('s', $timeValue); + } + + + /** + * EDATE + * + * Returns the serial number that represents the date that is the indicated number of months + * before or after a specified date (the start_date). + * Use EDATE to calculate maturity dates or due dates that fall on the same day of the month + * as the date of issue. + * + * Excel Function: + * EDATE(dateValue,adjustmentMonths) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param int $adjustmentMonths The number of months before or after start_date. + * A positive value for months yields a future date; + * a negative value yields a past date. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function EDATE($dateValue = 1, $adjustmentMonths = 0) + { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + $adjustmentMonths = PHPExcel_Calculation_Functions::flattenSingleValue($adjustmentMonths); + + if (!is_numeric($adjustmentMonths)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $adjustmentMonths = floor($adjustmentMonths); + + if (is_string($dateValue = self::getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Execute function + $PHPDateObject = self::adjustDateByMonths($dateValue, $adjustmentMonths); + + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL: + return (float) PHPExcel_Shared_Date::PHPToExcel($PHPDateObject); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC: + return (integer) PHPExcel_Shared_Date::ExcelToPHP(PHPExcel_Shared_Date::PHPToExcel($PHPDateObject)); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT: + return $PHPDateObject; + } + } + + + /** + * EOMONTH + * + * Returns the date value for the last day of the month that is the indicated number of months + * before or after start_date. + * Use EOMONTH to calculate maturity dates or due dates that fall on the last day of the month. + * + * Excel Function: + * EOMONTH(dateValue,adjustmentMonths) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param int $adjustmentMonths The number of months before or after start_date. + * A positive value for months yields a future date; + * a negative value yields a past date. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function EOMONTH($dateValue = 1, $adjustmentMonths = 0) + { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + $adjustmentMonths = PHPExcel_Calculation_Functions::flattenSingleValue($adjustmentMonths); + + if (!is_numeric($adjustmentMonths)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $adjustmentMonths = floor($adjustmentMonths); + + if (is_string($dateValue = self::getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Execute function + $PHPDateObject = self::adjustDateByMonths($dateValue, $adjustmentMonths+1); + $adjustDays = (int) $PHPDateObject->format('d'); + $adjustDaysString = '-' . $adjustDays . ' days'; + $PHPDateObject->modify($adjustDaysString); + + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL: + return (float) PHPExcel_Shared_Date::PHPToExcel($PHPDateObject); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC: + return (integer) PHPExcel_Shared_Date::ExcelToPHP(PHPExcel_Shared_Date::PHPToExcel($PHPDateObject)); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT: + return $PHPDateObject; + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Engineering.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Engineering.php new file mode 100644 index 0000000..75e2784 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Engineering.php @@ -0,0 +1,2650 @@ + array('Group' => 'Mass', 'Unit Name' => 'Gram', 'AllowPrefix' => true), + 'sg' => array('Group' => 'Mass', 'Unit Name' => 'Slug', 'AllowPrefix' => false), + 'lbm' => array('Group' => 'Mass', 'Unit Name' => 'Pound mass (avoirdupois)', 'AllowPrefix' => false), + 'u' => array('Group' => 'Mass', 'Unit Name' => 'U (atomic mass unit)', 'AllowPrefix' => true), + 'ozm' => array('Group' => 'Mass', 'Unit Name' => 'Ounce mass (avoirdupois)', 'AllowPrefix' => false), + 'm' => array('Group' => 'Distance', 'Unit Name' => 'Meter', 'AllowPrefix' => true), + 'mi' => array('Group' => 'Distance', 'Unit Name' => 'Statute mile', 'AllowPrefix' => false), + 'Nmi' => array('Group' => 'Distance', 'Unit Name' => 'Nautical mile', 'AllowPrefix' => false), + 'in' => array('Group' => 'Distance', 'Unit Name' => 'Inch', 'AllowPrefix' => false), + 'ft' => array('Group' => 'Distance', 'Unit Name' => 'Foot', 'AllowPrefix' => false), + 'yd' => array('Group' => 'Distance', 'Unit Name' => 'Yard', 'AllowPrefix' => false), + 'ang' => array('Group' => 'Distance', 'Unit Name' => 'Angstrom', 'AllowPrefix' => true), + 'Pica' => array('Group' => 'Distance', 'Unit Name' => 'Pica (1/72 in)', 'AllowPrefix' => false), + 'yr' => array('Group' => 'Time', 'Unit Name' => 'Year', 'AllowPrefix' => false), + 'day' => array('Group' => 'Time', 'Unit Name' => 'Day', 'AllowPrefix' => false), + 'hr' => array('Group' => 'Time', 'Unit Name' => 'Hour', 'AllowPrefix' => false), + 'mn' => array('Group' => 'Time', 'Unit Name' => 'Minute', 'AllowPrefix' => false), + 'sec' => array('Group' => 'Time', 'Unit Name' => 'Second', 'AllowPrefix' => true), + 'Pa' => array('Group' => 'Pressure', 'Unit Name' => 'Pascal', 'AllowPrefix' => true), + 'p' => array('Group' => 'Pressure', 'Unit Name' => 'Pascal', 'AllowPrefix' => true), + 'atm' => array('Group' => 'Pressure', 'Unit Name' => 'Atmosphere', 'AllowPrefix' => true), + 'at' => array('Group' => 'Pressure', 'Unit Name' => 'Atmosphere', 'AllowPrefix' => true), + 'mmHg' => array('Group' => 'Pressure', 'Unit Name' => 'mm of Mercury', 'AllowPrefix' => true), + 'N' => array('Group' => 'Force', 'Unit Name' => 'Newton', 'AllowPrefix' => true), + 'dyn' => array('Group' => 'Force', 'Unit Name' => 'Dyne', 'AllowPrefix' => true), + 'dy' => array('Group' => 'Force', 'Unit Name' => 'Dyne', 'AllowPrefix' => true), + 'lbf' => array('Group' => 'Force', 'Unit Name' => 'Pound force', 'AllowPrefix' => false), + 'J' => array('Group' => 'Energy', 'Unit Name' => 'Joule', 'AllowPrefix' => true), + 'e' => array('Group' => 'Energy', 'Unit Name' => 'Erg', 'AllowPrefix' => true), + 'c' => array('Group' => 'Energy', 'Unit Name' => 'Thermodynamic calorie', 'AllowPrefix' => true), + 'cal' => array('Group' => 'Energy', 'Unit Name' => 'IT calorie', 'AllowPrefix' => true), + 'eV' => array('Group' => 'Energy', 'Unit Name' => 'Electron volt', 'AllowPrefix' => true), + 'ev' => array('Group' => 'Energy', 'Unit Name' => 'Electron volt', 'AllowPrefix' => true), + 'HPh' => array('Group' => 'Energy', 'Unit Name' => 'Horsepower-hour', 'AllowPrefix' => false), + 'hh' => array('Group' => 'Energy', 'Unit Name' => 'Horsepower-hour', 'AllowPrefix' => false), + 'Wh' => array('Group' => 'Energy', 'Unit Name' => 'Watt-hour', 'AllowPrefix' => true), + 'wh' => array('Group' => 'Energy', 'Unit Name' => 'Watt-hour', 'AllowPrefix' => true), + 'flb' => array('Group' => 'Energy', 'Unit Name' => 'Foot-pound', 'AllowPrefix' => false), + 'BTU' => array('Group' => 'Energy', 'Unit Name' => 'BTU', 'AllowPrefix' => false), + 'btu' => array('Group' => 'Energy', 'Unit Name' => 'BTU', 'AllowPrefix' => false), + 'HP' => array('Group' => 'Power', 'Unit Name' => 'Horsepower', 'AllowPrefix' => false), + 'h' => array('Group' => 'Power', 'Unit Name' => 'Horsepower', 'AllowPrefix' => false), + 'W' => array('Group' => 'Power', 'Unit Name' => 'Watt', 'AllowPrefix' => true), + 'w' => array('Group' => 'Power', 'Unit Name' => 'Watt', 'AllowPrefix' => true), + 'T' => array('Group' => 'Magnetism', 'Unit Name' => 'Tesla', 'AllowPrefix' => true), + 'ga' => array('Group' => 'Magnetism', 'Unit Name' => 'Gauss', 'AllowPrefix' => true), + 'C' => array('Group' => 'Temperature', 'Unit Name' => 'Celsius', 'AllowPrefix' => false), + 'cel' => array('Group' => 'Temperature', 'Unit Name' => 'Celsius', 'AllowPrefix' => false), + 'F' => array('Group' => 'Temperature', 'Unit Name' => 'Fahrenheit', 'AllowPrefix' => false), + 'fah' => array('Group' => 'Temperature', 'Unit Name' => 'Fahrenheit', 'AllowPrefix' => false), + 'K' => array('Group' => 'Temperature', 'Unit Name' => 'Kelvin', 'AllowPrefix' => false), + 'kel' => array('Group' => 'Temperature', 'Unit Name' => 'Kelvin', 'AllowPrefix' => false), + 'tsp' => array('Group' => 'Liquid', 'Unit Name' => 'Teaspoon', 'AllowPrefix' => false), + 'tbs' => array('Group' => 'Liquid', 'Unit Name' => 'Tablespoon', 'AllowPrefix' => false), + 'oz' => array('Group' => 'Liquid', 'Unit Name' => 'Fluid Ounce', 'AllowPrefix' => false), + 'cup' => array('Group' => 'Liquid', 'Unit Name' => 'Cup', 'AllowPrefix' => false), + 'pt' => array('Group' => 'Liquid', 'Unit Name' => 'U.S. Pint', 'AllowPrefix' => false), + 'us_pt' => array('Group' => 'Liquid', 'Unit Name' => 'U.S. Pint', 'AllowPrefix' => false), + 'uk_pt' => array('Group' => 'Liquid', 'Unit Name' => 'U.K. Pint', 'AllowPrefix' => false), + 'qt' => array('Group' => 'Liquid', 'Unit Name' => 'Quart', 'AllowPrefix' => false), + 'gal' => array('Group' => 'Liquid', 'Unit Name' => 'Gallon', 'AllowPrefix' => false), + 'l' => array('Group' => 'Liquid', 'Unit Name' => 'Litre', 'AllowPrefix' => true), + 'lt' => array('Group' => 'Liquid', 'Unit Name' => 'Litre', 'AllowPrefix' => true), + ); + + /** + * Details of the Multiplier prefixes that can be used with Units of Measure in CONVERTUOM() + * + * @var mixed[] + */ + private static $conversionMultipliers = array( + 'Y' => array('multiplier' => 1E24, 'name' => 'yotta'), + 'Z' => array('multiplier' => 1E21, 'name' => 'zetta'), + 'E' => array('multiplier' => 1E18, 'name' => 'exa'), + 'P' => array('multiplier' => 1E15, 'name' => 'peta'), + 'T' => array('multiplier' => 1E12, 'name' => 'tera'), + 'G' => array('multiplier' => 1E9, 'name' => 'giga'), + 'M' => array('multiplier' => 1E6, 'name' => 'mega'), + 'k' => array('multiplier' => 1E3, 'name' => 'kilo'), + 'h' => array('multiplier' => 1E2, 'name' => 'hecto'), + 'e' => array('multiplier' => 1E1, 'name' => 'deka'), + 'd' => array('multiplier' => 1E-1, 'name' => 'deci'), + 'c' => array('multiplier' => 1E-2, 'name' => 'centi'), + 'm' => array('multiplier' => 1E-3, 'name' => 'milli'), + 'u' => array('multiplier' => 1E-6, 'name' => 'micro'), + 'n' => array('multiplier' => 1E-9, 'name' => 'nano'), + 'p' => array('multiplier' => 1E-12, 'name' => 'pico'), + 'f' => array('multiplier' => 1E-15, 'name' => 'femto'), + 'a' => array('multiplier' => 1E-18, 'name' => 'atto'), + 'z' => array('multiplier' => 1E-21, 'name' => 'zepto'), + 'y' => array('multiplier' => 1E-24, 'name' => 'yocto'), + ); + + /** + * Details of the Units of measure conversion factors, organised by group + * + * @var mixed[] + */ + private static $unitConversions = array( + 'Mass' => array( + 'g' => array( + 'g' => 1.0, + 'sg' => 6.85220500053478E-05, + 'lbm' => 2.20462291469134E-03, + 'u' => 6.02217000000000E+23, + 'ozm' => 3.52739718003627E-02, + ), + 'sg' => array( + 'g' => 1.45938424189287E+04, + 'sg' => 1.0, + 'lbm' => 3.21739194101647E+01, + 'u' => 8.78866000000000E+27, + 'ozm' => 5.14782785944229E+02, + ), + 'lbm' => array( + 'g' => 4.5359230974881148E+02, + 'sg' => 3.10810749306493E-02, + 'lbm' => 1.0, + 'u' => 2.73161000000000E+26, + 'ozm' => 1.60000023429410E+01, + ), + 'u' => array( + 'g' => 1.66053100460465E-24, + 'sg' => 1.13782988532950E-28, + 'lbm' => 3.66084470330684E-27, + 'u' => 1.0, + 'ozm' => 5.85735238300524E-26, + ), + 'ozm' => array( + 'g' => 2.83495152079732E+01, + 'sg' => 1.94256689870811E-03, + 'lbm' => 6.24999908478882E-02, + 'u' => 1.70725600000000E+25, + 'ozm' => 1.0, + ), + ), + 'Distance' => array( + 'm' => array( + 'm' => 1.0, + 'mi' => 6.21371192237334E-04, + 'Nmi' => 5.39956803455724E-04, + 'in' => 3.93700787401575E+01, + 'ft' => 3.28083989501312E+00, + 'yd' => 1.09361329797891E+00, + 'ang' => 1.00000000000000E+10, + 'Pica' => 2.83464566929116E+03, + ), + 'mi' => array( + 'm' => 1.60934400000000E+03, + 'mi' => 1.0, + 'Nmi' => 8.68976241900648E-01, + 'in' => 6.33600000000000E+04, + 'ft' => 5.28000000000000E+03, + 'yd' => 1.76000000000000E+03, + 'ang' => 1.60934400000000E+13, + 'Pica' => 4.56191999999971E+06, + ), + 'Nmi' => array( + 'm' => 1.85200000000000E+03, + 'mi' => 1.15077944802354E+00, + 'Nmi' => 1.0, + 'in' => 7.29133858267717E+04, + 'ft' => 6.07611548556430E+03, + 'yd' => 2.02537182785694E+03, + 'ang' => 1.85200000000000E+13, + 'Pica' => 5.24976377952723E+06, + ), + 'in' => array( + 'm' => 2.54000000000000E-02, + 'mi' => 1.57828282828283E-05, + 'Nmi' => 1.37149028077754E-05, + 'in' => 1.0, + 'ft' => 8.33333333333333E-02, + 'yd' => 2.77777777686643E-02, + 'ang' => 2.54000000000000E+08, + 'Pica' => 7.19999999999955E+01, + ), + 'ft' => array( + 'm' => 3.04800000000000E-01, + 'mi' => 1.89393939393939E-04, + 'Nmi' => 1.64578833693305E-04, + 'in' => 1.20000000000000E+01, + 'ft' => 1.0, + 'yd' => 3.33333333223972E-01, + 'ang' => 3.04800000000000E+09, + 'Pica' => 8.63999999999946E+02, + ), + 'yd' => array( + 'm' => 9.14400000300000E-01, + 'mi' => 5.68181818368230E-04, + 'Nmi' => 4.93736501241901E-04, + 'in' => 3.60000000118110E+01, + 'ft' => 3.00000000000000E+00, + 'yd' => 1.0, + 'ang' => 9.14400000300000E+09, + 'Pica' => 2.59200000085023E+03, + ), + 'ang' => array( + 'm' => 1.00000000000000E-10, + 'mi' => 6.21371192237334E-14, + 'Nmi' => 5.39956803455724E-14, + 'in' => 3.93700787401575E-09, + 'ft' => 3.28083989501312E-10, + 'yd' => 1.09361329797891E-10, + 'ang' => 1.0, + 'Pica' => 2.83464566929116E-07, + ), + 'Pica' => array( + 'm' => 3.52777777777800E-04, + 'mi' => 2.19205948372629E-07, + 'Nmi' => 1.90484761219114E-07, + 'in' => 1.38888888888898E-02, + 'ft' => 1.15740740740748E-03, + 'yd' => 3.85802469009251E-04, + 'ang' => 3.52777777777800E+06, + 'Pica' => 1.0, + ), + ), + 'Time' => array( + 'yr' => array( + 'yr' => 1.0, + 'day' => 365.25, + 'hr' => 8766.0, + 'mn' => 525960.0, + 'sec' => 31557600.0, + ), + 'day' => array( + 'yr' => 2.73785078713210E-03, + 'day' => 1.0, + 'hr' => 24.0, + 'mn' => 1440.0, + 'sec' => 86400.0, + ), + 'hr' => array( + 'yr' => 1.14077116130504E-04, + 'day' => 4.16666666666667E-02, + 'hr' => 1.0, + 'mn' => 60.0, + 'sec' => 3600.0, + ), + 'mn' => array( + 'yr' => 1.90128526884174E-06, + 'day' => 6.94444444444444E-04, + 'hr' => 1.66666666666667E-02, + 'mn' => 1.0, + 'sec' => 60.0, + ), + 'sec' => array( + 'yr' => 3.16880878140289E-08, + 'day' => 1.15740740740741E-05, + 'hr' => 2.77777777777778E-04, + 'mn' => 1.66666666666667E-02, + 'sec' => 1.0, + ), + ), + 'Pressure' => array( + 'Pa' => array( + 'Pa' => 1.0, + 'p' => 1.0, + 'atm' => 9.86923299998193E-06, + 'at' => 9.86923299998193E-06, + 'mmHg' => 7.50061707998627E-03, + ), + 'p' => array( + 'Pa' => 1.0, + 'p' => 1.0, + 'atm' => 9.86923299998193E-06, + 'at' => 9.86923299998193E-06, + 'mmHg' => 7.50061707998627E-03, + ), + 'atm' => array( + 'Pa' => 1.01324996583000E+05, + 'p' => 1.01324996583000E+05, + 'atm' => 1.0, + 'at' => 1.0, + 'mmHg' => 760.0, + ), + 'at' => array( + 'Pa' => 1.01324996583000E+05, + 'p' => 1.01324996583000E+05, + 'atm' => 1.0, + 'at' => 1.0, + 'mmHg' => 760.0, + ), + 'mmHg' => array( + 'Pa' => 1.33322363925000E+02, + 'p' => 1.33322363925000E+02, + 'atm' => 1.31578947368421E-03, + 'at' => 1.31578947368421E-03, + 'mmHg' => 1.0, + ), + ), + 'Force' => array( + 'N' => array( + 'N' => 1.0, + 'dyn' => 1.0E+5, + 'dy' => 1.0E+5, + 'lbf' => 2.24808923655339E-01, + ), + 'dyn' => array( + 'N' => 1.0E-5, + 'dyn' => 1.0, + 'dy' => 1.0, + 'lbf' => 2.24808923655339E-06, + ), + 'dy' => array( + 'N' => 1.0E-5, + 'dyn' => 1.0, + 'dy' => 1.0, + 'lbf' => 2.24808923655339E-06, + ), + 'lbf' => array( + 'N' => 4.448222, + 'dyn' => 4.448222E+5, + 'dy' => 4.448222E+5, + 'lbf' => 1.0, + ), + ), + 'Energy' => array( + 'J' => array( + 'J' => 1.0, + 'e' => 9.99999519343231E+06, + 'c' => 2.39006249473467E-01, + 'cal' => 2.38846190642017E-01, + 'eV' => 6.24145700000000E+18, + 'ev' => 6.24145700000000E+18, + 'HPh' => 3.72506430801000E-07, + 'hh' => 3.72506430801000E-07, + 'Wh' => 2.77777916238711E-04, + 'wh' => 2.77777916238711E-04, + 'flb' => 2.37304222192651E+01, + 'BTU' => 9.47815067349015E-04, + 'btu' => 9.47815067349015E-04, + ), + 'e' => array( + 'J' => 1.00000048065700E-07, + 'e' => 1.0, + 'c' => 2.39006364353494E-08, + 'cal' => 2.38846305445111E-08, + 'eV' => 6.24146000000000E+11, + 'ev' => 6.24146000000000E+11, + 'HPh' => 3.72506609848824E-14, + 'hh' => 3.72506609848824E-14, + 'Wh' => 2.77778049754611E-11, + 'wh' => 2.77778049754611E-11, + 'flb' => 2.37304336254586E-06, + 'BTU' => 9.47815522922962E-11, + 'btu' => 9.47815522922962E-11, + ), + 'c' => array( + 'J' => 4.18399101363672E+00, + 'e' => 4.18398900257312E+07, + 'c' => 1.0, + 'cal' => 9.99330315287563E-01, + 'eV' => 2.61142000000000E+19, + 'ev' => 2.61142000000000E+19, + 'HPh' => 1.55856355899327E-06, + 'hh' => 1.55856355899327E-06, + 'Wh' => 1.16222030532950E-03, + 'wh' => 1.16222030532950E-03, + 'flb' => 9.92878733152102E+01, + 'BTU' => 3.96564972437776E-03, + 'btu' => 3.96564972437776E-03, + ), + 'cal' => array( + 'J' => 4.18679484613929E+00, + 'e' => 4.18679283372801E+07, + 'c' => 1.00067013349059E+00, + 'cal' => 1.0, + 'eV' => 2.61317000000000E+19, + 'ev' => 2.61317000000000E+19, + 'HPh' => 1.55960800463137E-06, + 'hh' => 1.55960800463137E-06, + 'Wh' => 1.16299914807955E-03, + 'wh' => 1.16299914807955E-03, + 'flb' => 9.93544094443283E+01, + 'BTU' => 3.96830723907002E-03, + 'btu' => 3.96830723907002E-03, + ), + 'eV' => array( + 'J' => 1.60219000146921E-19, + 'e' => 1.60218923136574E-12, + 'c' => 3.82933423195043E-20, + 'cal' => 3.82676978535648E-20, + 'eV' => 1.0, + 'ev' => 1.0, + 'HPh' => 5.96826078912344E-26, + 'hh' => 5.96826078912344E-26, + 'Wh' => 4.45053000026614E-23, + 'wh' => 4.45053000026614E-23, + 'flb' => 3.80206452103492E-18, + 'BTU' => 1.51857982414846E-22, + 'btu' => 1.51857982414846E-22, + ), + 'ev' => array( + 'J' => 1.60219000146921E-19, + 'e' => 1.60218923136574E-12, + 'c' => 3.82933423195043E-20, + 'cal' => 3.82676978535648E-20, + 'eV' => 1.0, + 'ev' => 1.0, + 'HPh' => 5.96826078912344E-26, + 'hh' => 5.96826078912344E-26, + 'Wh' => 4.45053000026614E-23, + 'wh' => 4.45053000026614E-23, + 'flb' => 3.80206452103492E-18, + 'BTU' => 1.51857982414846E-22, + 'btu' => 1.51857982414846E-22, + ), + 'HPh' => array( + 'J' => 2.68451741316170E+06, + 'e' => 2.68451612283024E+13, + 'c' => 6.41616438565991E+05, + 'cal' => 6.41186757845835E+05, + 'eV' => 1.67553000000000E+25, + 'ev' => 1.67553000000000E+25, + 'HPh' => 1.0, + 'hh' => 1.0, + 'Wh' => 7.45699653134593E+02, + 'wh' => 7.45699653134593E+02, + 'flb' => 6.37047316692964E+07, + 'BTU' => 2.54442605275546E+03, + 'btu' => 2.54442605275546E+03, + ), + 'hh' => array( + 'J' => 2.68451741316170E+06, + 'e' => 2.68451612283024E+13, + 'c' => 6.41616438565991E+05, + 'cal' => 6.41186757845835E+05, + 'eV' => 1.67553000000000E+25, + 'ev' => 1.67553000000000E+25, + 'HPh' => 1.0, + 'hh' => 1.0, + 'Wh' => 7.45699653134593E+02, + 'wh' => 7.45699653134593E+02, + 'flb' => 6.37047316692964E+07, + 'BTU' => 2.54442605275546E+03, + 'btu' => 2.54442605275546E+03, + ), + 'Wh' => array( + 'J' => 3.59999820554720E+03, + 'e' => 3.59999647518369E+10, + 'c' => 8.60422069219046E+02, + 'cal' => 8.59845857713046E+02, + 'eV' => 2.24692340000000E+22, + 'ev' => 2.24692340000000E+22, + 'HPh' => 1.34102248243839E-03, + 'hh' => 1.34102248243839E-03, + 'Wh' => 1.0, + 'wh' => 1.0, + 'flb' => 8.54294774062316E+04, + 'BTU' => 3.41213254164705E+00, + 'btu' => 3.41213254164705E+00, + ), + 'wh' => array( + 'J' => 3.59999820554720E+03, + 'e' => 3.59999647518369E+10, + 'c' => 8.60422069219046E+02, + 'cal' => 8.59845857713046E+02, + 'eV' => 2.24692340000000E+22, + 'ev' => 2.24692340000000E+22, + 'HPh' => 1.34102248243839E-03, + 'hh' => 1.34102248243839E-03, + 'Wh' => 1.0, + 'wh' => 1.0, + 'flb' => 8.54294774062316E+04, + 'BTU' => 3.41213254164705E+00, + 'btu' => 3.41213254164705E+00, + ), + 'flb' => array( + 'J' => 4.21400003236424E-02, + 'e' => 4.21399800687660E+05, + 'c' => 1.00717234301644E-02, + 'cal' => 1.00649785509554E-02, + 'eV' => 2.63015000000000E+17, + 'ev' => 2.63015000000000E+17, + 'HPh' => 1.56974211145130E-08, + 'hh' => 1.56974211145130E-08, + 'Wh' => 1.17055614802000E-05, + 'wh' => 1.17055614802000E-05, + 'flb' => 1.0, + 'BTU' => 3.99409272448406E-05, + 'btu' => 3.99409272448406E-05, + ), + 'BTU' => array( + 'J' => 1.05505813786749E+03, + 'e' => 1.05505763074665E+10, + 'c' => 2.52165488508168E+02, + 'cal' => 2.51996617135510E+02, + 'eV' => 6.58510000000000E+21, + 'ev' => 6.58510000000000E+21, + 'HPh' => 3.93015941224568E-04, + 'hh' => 3.93015941224568E-04, + 'Wh' => 2.93071851047526E-01, + 'wh' => 2.93071851047526E-01, + 'flb' => 2.50369750774671E+04, + 'BTU' => 1.0, + 'btu' => 1.0, + ), + 'btu' => array( + 'J' => 1.05505813786749E+03, + 'e' => 1.05505763074665E+10, + 'c' => 2.52165488508168E+02, + 'cal' => 2.51996617135510E+02, + 'eV' => 6.58510000000000E+21, + 'ev' => 6.58510000000000E+21, + 'HPh' => 3.93015941224568E-04, + 'hh' => 3.93015941224568E-04, + 'Wh' => 2.93071851047526E-01, + 'wh' => 2.93071851047526E-01, + 'flb' => 2.50369750774671E+04, + 'BTU' => 1.0, + 'btu' => 1.0, + ), + ), + 'Power' => array( + 'HP' => array( + 'HP' => 1.0, + 'h' => 1.0, + 'W' => 7.45701000000000E+02, + 'w' => 7.45701000000000E+02, + ), + 'h' => array( + 'HP' => 1.0, + 'h' => 1.0, + 'W' => 7.45701000000000E+02, + 'w' => 7.45701000000000E+02, + ), + 'W' => array( + 'HP' => 1.34102006031908E-03, + 'h' => 1.34102006031908E-03, + 'W' => 1.0, + 'w' => 1.0, + ), + 'w' => array( + 'HP' => 1.34102006031908E-03, + 'h' => 1.34102006031908E-03, + 'W' => 1.0, + 'w' => 1.0, + ), + ), + 'Magnetism' => array( + 'T' => array( + 'T' => 1.0, + 'ga' => 10000.0, + ), + 'ga' => array( + 'T' => 0.0001, + 'ga' => 1.0, + ), + ), + 'Liquid' => array( + 'tsp' => array( + 'tsp' => 1.0, + 'tbs' => 3.33333333333333E-01, + 'oz' => 1.66666666666667E-01, + 'cup' => 2.08333333333333E-02, + 'pt' => 1.04166666666667E-02, + 'us_pt' => 1.04166666666667E-02, + 'uk_pt' => 8.67558516821960E-03, + 'qt' => 5.20833333333333E-03, + 'gal' => 1.30208333333333E-03, + 'l' => 4.92999408400710E-03, + 'lt' => 4.92999408400710E-03, + ), + 'tbs' => array( + 'tsp' => 3.00000000000000E+00, + 'tbs' => 1.0, + 'oz' => 5.00000000000000E-01, + 'cup' => 6.25000000000000E-02, + 'pt' => 3.12500000000000E-02, + 'us_pt' => 3.12500000000000E-02, + 'uk_pt' => 2.60267555046588E-02, + 'qt' => 1.56250000000000E-02, + 'gal' => 3.90625000000000E-03, + 'l' => 1.47899822520213E-02, + 'lt' => 1.47899822520213E-02, + ), + 'oz' => array( + 'tsp' => 6.00000000000000E+00, + 'tbs' => 2.00000000000000E+00, + 'oz' => 1.0, + 'cup' => 1.25000000000000E-01, + 'pt' => 6.25000000000000E-02, + 'us_pt' => 6.25000000000000E-02, + 'uk_pt' => 5.20535110093176E-02, + 'qt' => 3.12500000000000E-02, + 'gal' => 7.81250000000000E-03, + 'l' => 2.95799645040426E-02, + 'lt' => 2.95799645040426E-02, + ), + 'cup' => array( + 'tsp' => 4.80000000000000E+01, + 'tbs' => 1.60000000000000E+01, + 'oz' => 8.00000000000000E+00, + 'cup' => 1.0, + 'pt' => 5.00000000000000E-01, + 'us_pt' => 5.00000000000000E-01, + 'uk_pt' => 4.16428088074541E-01, + 'qt' => 2.50000000000000E-01, + 'gal' => 6.25000000000000E-02, + 'l' => 2.36639716032341E-01, + 'lt' => 2.36639716032341E-01, + ), + 'pt' => array( + 'tsp' => 9.60000000000000E+01, + 'tbs' => 3.20000000000000E+01, + 'oz' => 1.60000000000000E+01, + 'cup' => 2.00000000000000E+00, + 'pt' => 1.0, + 'us_pt' => 1.0, + 'uk_pt' => 8.32856176149081E-01, + 'qt' => 5.00000000000000E-01, + 'gal' => 1.25000000000000E-01, + 'l' => 4.73279432064682E-01, + 'lt' => 4.73279432064682E-01, + ), + 'us_pt' => array( + 'tsp' => 9.60000000000000E+01, + 'tbs' => 3.20000000000000E+01, + 'oz' => 1.60000000000000E+01, + 'cup' => 2.00000000000000E+00, + 'pt' => 1.0, + 'us_pt' => 1.0, + 'uk_pt' => 8.32856176149081E-01, + 'qt' => 5.00000000000000E-01, + 'gal' => 1.25000000000000E-01, + 'l' => 4.73279432064682E-01, + 'lt' => 4.73279432064682E-01, + ), + 'uk_pt' => array( + 'tsp' => 1.15266000000000E+02, + 'tbs' => 3.84220000000000E+01, + 'oz' => 1.92110000000000E+01, + 'cup' => 2.40137500000000E+00, + 'pt' => 1.20068750000000E+00, + 'us_pt' => 1.20068750000000E+00, + 'uk_pt' => 1.0, + 'qt' => 6.00343750000000E-01, + 'gal' => 1.50085937500000E-01, + 'l' => 5.68260698087162E-01, + 'lt' => 5.68260698087162E-01, + ), + 'qt' => array( + 'tsp' => 1.92000000000000E+02, + 'tbs' => 6.40000000000000E+01, + 'oz' => 3.20000000000000E+01, + 'cup' => 4.00000000000000E+00, + 'pt' => 2.00000000000000E+00, + 'us_pt' => 2.00000000000000E+00, + 'uk_pt' => 1.66571235229816E+00, + 'qt' => 1.0, + 'gal' => 2.50000000000000E-01, + 'l' => 9.46558864129363E-01, + 'lt' => 9.46558864129363E-01, + ), + 'gal' => array( + 'tsp' => 7.68000000000000E+02, + 'tbs' => 2.56000000000000E+02, + 'oz' => 1.28000000000000E+02, + 'cup' => 1.60000000000000E+01, + 'pt' => 8.00000000000000E+00, + 'us_pt' => 8.00000000000000E+00, + 'uk_pt' => 6.66284940919265E+00, + 'qt' => 4.00000000000000E+00, + 'gal' => 1.0, + 'l' => 3.78623545651745E+00, + 'lt' => 3.78623545651745E+00, + ), + 'l' => array( + 'tsp' => 2.02840000000000E+02, + 'tbs' => 6.76133333333333E+01, + 'oz' => 3.38066666666667E+01, + 'cup' => 4.22583333333333E+00, + 'pt' => 2.11291666666667E+00, + 'us_pt' => 2.11291666666667E+00, + 'uk_pt' => 1.75975569552166E+00, + 'qt' => 1.05645833333333E+00, + 'gal' => 2.64114583333333E-01, + 'l' => 1.0, + 'lt' => 1.0, + ), + 'lt' => array( + 'tsp' => 2.02840000000000E+02, + 'tbs' => 6.76133333333333E+01, + 'oz' => 3.38066666666667E+01, + 'cup' => 4.22583333333333E+00, + 'pt' => 2.11291666666667E+00, + 'us_pt' => 2.11291666666667E+00, + 'uk_pt' => 1.75975569552166E+00, + 'qt' => 1.05645833333333E+00, + 'gal' => 2.64114583333333E-01, + 'l' => 1.0, + 'lt' => 1.0, + ), + ), + ); + + + /** + * parseComplex + * + * Parses a complex number into its real and imaginary parts, and an I or J suffix + * + * @param string $complexNumber The complex number + * @return string[] Indexed on "real", "imaginary" and "suffix" + */ + public static function parseComplex($complexNumber) + { + $workString = (string) $complexNumber; + + $realNumber = $imaginary = 0; + // Extract the suffix, if there is one + $suffix = substr($workString, -1); + if (!is_numeric($suffix)) { + $workString = substr($workString, 0, -1); + } else { + $suffix = ''; + } + + // Split the input into its Real and Imaginary components + $leadingSign = 0; + if (strlen($workString) > 0) { + $leadingSign = (($workString{0} == '+') || ($workString{0} == '-')) ? 1 : 0; + } + $power = ''; + $realNumber = strtok($workString, '+-'); + if (strtoupper(substr($realNumber, -1)) == 'E') { + $power = strtok('+-'); + ++$leadingSign; + } + + $realNumber = substr($workString, 0, strlen($realNumber)+strlen($power)+$leadingSign); + + if ($suffix != '') { + $imaginary = substr($workString, strlen($realNumber)); + + if (($imaginary == '') && (($realNumber == '') || ($realNumber == '+') || ($realNumber == '-'))) { + $imaginary = $realNumber.'1'; + $realNumber = '0'; + } elseif ($imaginary == '') { + $imaginary = $realNumber; + $realNumber = '0'; + } elseif (($imaginary == '+') || ($imaginary == '-')) { + $imaginary .= '1'; + } + } + + return array( + 'real' => $realNumber, + 'imaginary' => $imaginary, + 'suffix' => $suffix + ); + } + + + /** + * Cleans the leading characters in a complex number string + * + * @param string $complexNumber The complex number to clean + * @return string The "cleaned" complex number + */ + private static function cleanComplex($complexNumber) + { + if ($complexNumber{0} == '+') { + $complexNumber = substr($complexNumber, 1); + } + if ($complexNumber{0} == '0') { + $complexNumber = substr($complexNumber, 1); + } + if ($complexNumber{0} == '.') { + $complexNumber = '0'.$complexNumber; + } + if ($complexNumber{0} == '+') { + $complexNumber = substr($complexNumber, 1); + } + return $complexNumber; + } + + /** + * Formats a number base string value with leading zeroes + * + * @param string $xVal The "number" to pad + * @param integer $places The length that we want to pad this value + * @return string The padded "number" + */ + private static function nbrConversionFormat($xVal, $places) + { + if (!is_null($places)) { + if (strlen($xVal) <= $places) { + return substr(str_pad($xVal, $places, '0', STR_PAD_LEFT), -10); + } else { + return PHPExcel_Calculation_Functions::NaN(); + } + } + + return substr($xVal, -10); + } + + /** + * BESSELI + * + * Returns the modified Bessel function In(x), which is equivalent to the Bessel function evaluated + * for purely imaginary arguments + * + * Excel Function: + * BESSELI(x,ord) + * + * @access public + * @category Engineering Functions + * @param float $x The value at which to evaluate the function. + * If x is nonnumeric, BESSELI returns the #VALUE! error value. + * @param integer $ord The order of the Bessel function. + * If ord is not an integer, it is truncated. + * If $ord is nonnumeric, BESSELI returns the #VALUE! error value. + * If $ord < 0, BESSELI returns the #NUM! error value. + * @return float + * + */ + public static function BESSELI($x, $ord) + { + $x = (is_null($x)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($x); + $ord = (is_null($ord)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($ord); + + if ((is_numeric($x)) && (is_numeric($ord))) { + $ord = floor($ord); + if ($ord < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + if (abs($x) <= 30) { + $fResult = $fTerm = pow($x / 2, $ord) / PHPExcel_Calculation_MathTrig::FACT($ord); + $ordK = 1; + $fSqrX = ($x * $x) / 4; + do { + $fTerm *= $fSqrX; + $fTerm /= ($ordK * ($ordK + $ord)); + $fResult += $fTerm; + } while ((abs($fTerm) > 1e-12) && (++$ordK < 100)); + } else { + $f_2_PI = 2 * M_PI; + + $fXAbs = abs($x); + $fResult = exp($fXAbs) / sqrt($f_2_PI * $fXAbs); + if (($ord & 1) && ($x < 0)) { + $fResult = -$fResult; + } + } + return (is_nan($fResult)) ? PHPExcel_Calculation_Functions::NaN() : $fResult; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * BESSELJ + * + * Returns the Bessel function + * + * Excel Function: + * BESSELJ(x,ord) + * + * @access public + * @category Engineering Functions + * @param float $x The value at which to evaluate the function. + * If x is nonnumeric, BESSELJ returns the #VALUE! error value. + * @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated. + * If $ord is nonnumeric, BESSELJ returns the #VALUE! error value. + * If $ord < 0, BESSELJ returns the #NUM! error value. + * @return float + * + */ + public static function BESSELJ($x, $ord) + { + $x = (is_null($x)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($x); + $ord = (is_null($ord)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($ord); + + if ((is_numeric($x)) && (is_numeric($ord))) { + $ord = floor($ord); + if ($ord < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $fResult = 0; + if (abs($x) <= 30) { + $fResult = $fTerm = pow($x / 2, $ord) / PHPExcel_Calculation_MathTrig::FACT($ord); + $ordK = 1; + $fSqrX = ($x * $x) / -4; + do { + $fTerm *= $fSqrX; + $fTerm /= ($ordK * ($ordK + $ord)); + $fResult += $fTerm; + } while ((abs($fTerm) > 1e-12) && (++$ordK < 100)); + } else { + $f_PI_DIV_2 = M_PI / 2; + $f_PI_DIV_4 = M_PI / 4; + + $fXAbs = abs($x); + $fResult = sqrt(M_2DIVPI / $fXAbs) * cos($fXAbs - $ord * $f_PI_DIV_2 - $f_PI_DIV_4); + if (($ord & 1) && ($x < 0)) { + $fResult = -$fResult; + } + } + return (is_nan($fResult)) ? PHPExcel_Calculation_Functions::NaN() : $fResult; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + private static function besselK0($fNum) + { + if ($fNum <= 2) { + $fNum2 = $fNum * 0.5; + $y = ($fNum2 * $fNum2); + $fRet = -log($fNum2) * self::BESSELI($fNum, 0) + + (-0.57721566 + $y * (0.42278420 + $y * (0.23069756 + $y * (0.3488590e-1 + $y * (0.262698e-2 + $y * + (0.10750e-3 + $y * 0.74e-5)))))); + } else { + $y = 2 / $fNum; + $fRet = exp(-$fNum) / sqrt($fNum) * + (1.25331414 + $y * (-0.7832358e-1 + $y * (0.2189568e-1 + $y * (-0.1062446e-1 + $y * + (0.587872e-2 + $y * (-0.251540e-2 + $y * 0.53208e-3)))))); + } + return $fRet; + } + + + private static function besselK1($fNum) + { + if ($fNum <= 2) { + $fNum2 = $fNum * 0.5; + $y = ($fNum2 * $fNum2); + $fRet = log($fNum2) * self::BESSELI($fNum, 1) + + (1 + $y * (0.15443144 + $y * (-0.67278579 + $y * (-0.18156897 + $y * (-0.1919402e-1 + $y * + (-0.110404e-2 + $y * (-0.4686e-4))))))) / $fNum; + } else { + $y = 2 / $fNum; + $fRet = exp(-$fNum) / sqrt($fNum) * + (1.25331414 + $y * (0.23498619 + $y * (-0.3655620e-1 + $y * (0.1504268e-1 + $y * (-0.780353e-2 + $y * + (0.325614e-2 + $y * (-0.68245e-3))))))); + } + return $fRet; + } + + + /** + * BESSELK + * + * Returns the modified Bessel function Kn(x), which is equivalent to the Bessel functions evaluated + * for purely imaginary arguments. + * + * Excel Function: + * BESSELK(x,ord) + * + * @access public + * @category Engineering Functions + * @param float $x The value at which to evaluate the function. + * If x is nonnumeric, BESSELK returns the #VALUE! error value. + * @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated. + * If $ord is nonnumeric, BESSELK returns the #VALUE! error value. + * If $ord < 0, BESSELK returns the #NUM! error value. + * @return float + * + */ + public static function BESSELK($x, $ord) + { + $x = (is_null($x)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($x); + $ord = (is_null($ord)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($ord); + + if ((is_numeric($x)) && (is_numeric($ord))) { + if (($ord < 0) || ($x == 0.0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + switch (floor($ord)) { + case 0: + return self::besselK0($x); + case 1: + return self::besselK1($x); + default: + $fTox = 2 / $x; + $fBkm = self::besselK0($x); + $fBk = self::besselK1($x); + for ($n = 1; $n < $ord; ++$n) { + $fBkp = $fBkm + $n * $fTox * $fBk; + $fBkm = $fBk; + $fBk = $fBkp; + } + } + return (is_nan($fBk)) ? PHPExcel_Calculation_Functions::NaN() : $fBk; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + private static function besselY0($fNum) + { + if ($fNum < 8.0) { + $y = ($fNum * $fNum); + $f1 = -2957821389.0 + $y * (7062834065.0 + $y * (-512359803.6 + $y * (10879881.29 + $y * (-86327.92757 + $y * 228.4622733)))); + $f2 = 40076544269.0 + $y * (745249964.8 + $y * (7189466.438 + $y * (47447.26470 + $y * (226.1030244 + $y)))); + $fRet = $f1 / $f2 + 0.636619772 * self::BESSELJ($fNum, 0) * log($fNum); + } else { + $z = 8.0 / $fNum; + $y = ($z * $z); + $xx = $fNum - 0.785398164; + $f1 = 1 + $y * (-0.1098628627e-2 + $y * (0.2734510407e-4 + $y * (-0.2073370639e-5 + $y * 0.2093887211e-6))); + $f2 = -0.1562499995e-1 + $y * (0.1430488765e-3 + $y * (-0.6911147651e-5 + $y * (0.7621095161e-6 + $y * (-0.934945152e-7)))); + $fRet = sqrt(0.636619772 / $fNum) * (sin($xx) * $f1 + $z * cos($xx) * $f2); + } + return $fRet; + } + + + private static function besselY1($fNum) + { + if ($fNum < 8.0) { + $y = ($fNum * $fNum); + $f1 = $fNum * (-0.4900604943e13 + $y * (0.1275274390e13 + $y * (-0.5153438139e11 + $y * (0.7349264551e9 + $y * + (-0.4237922726e7 + $y * 0.8511937935e4))))); + $f2 = 0.2499580570e14 + $y * (0.4244419664e12 + $y * (0.3733650367e10 + $y * (0.2245904002e8 + $y * + (0.1020426050e6 + $y * (0.3549632885e3 + $y))))); + $fRet = $f1 / $f2 + 0.636619772 * ( self::BESSELJ($fNum, 1) * log($fNum) - 1 / $fNum); + } else { + $fRet = sqrt(0.636619772 / $fNum) * sin($fNum - 2.356194491); + } + return $fRet; + } + + + /** + * BESSELY + * + * Returns the Bessel function, which is also called the Weber function or the Neumann function. + * + * Excel Function: + * BESSELY(x,ord) + * + * @access public + * @category Engineering Functions + * @param float $x The value at which to evaluate the function. + * If x is nonnumeric, BESSELK returns the #VALUE! error value. + * @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated. + * If $ord is nonnumeric, BESSELK returns the #VALUE! error value. + * If $ord < 0, BESSELK returns the #NUM! error value. + * + * @return float + */ + public static function BESSELY($x, $ord) + { + $x = (is_null($x)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($x); + $ord = (is_null($ord)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($ord); + + if ((is_numeric($x)) && (is_numeric($ord))) { + if (($ord < 0) || ($x == 0.0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + switch (floor($ord)) { + case 0: + return self::besselY0($x); + case 1: + return self::besselY1($x); + default: + $fTox = 2 / $x; + $fBym = self::besselY0($x); + $fBy = self::besselY1($x); + for ($n = 1; $n < $ord; ++$n) { + $fByp = $n * $fTox * $fBy - $fBym; + $fBym = $fBy; + $fBy = $fByp; + } + } + return (is_nan($fBy)) ? PHPExcel_Calculation_Functions::NaN() : $fBy; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * BINTODEC + * + * Return a binary value as decimal. + * + * Excel Function: + * BIN2DEC(x) + * + * @access public + * @category Engineering Functions + * @param string $x The binary number (as a string) that you want to convert. The number + * cannot contain more than 10 characters (10 bits). The most significant + * bit of number is the sign bit. The remaining 9 bits are magnitude bits. + * Negative numbers are represented using two's-complement notation. + * If number is not a valid binary number, or if number contains more than + * 10 characters (10 bits), BIN2DEC returns the #NUM! error value. + * @return string + */ + public static function BINTODEC($x) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $x = floor($x); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[01]/', $x, $out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (strlen($x) > 10) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (strlen($x) == 10) { + // Two's Complement + $x = substr($x, -9); + return '-'.(512-bindec($x)); + } + return bindec($x); + } + + + /** + * BINTOHEX + * + * Return a binary value as hex. + * + * Excel Function: + * BIN2HEX(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The binary number (as a string) that you want to convert. The number + * cannot contain more than 10 characters (10 bits). The most significant + * bit of number is the sign bit. The remaining 9 bits are magnitude bits. + * Negative numbers are represented using two's-complement notation. + * If number is not a valid binary number, or if number contains more than + * 10 characters (10 bits), BIN2HEX returns the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, BIN2HEX uses the + * minimum number of characters necessary. Places is useful for padding the + * return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, BIN2HEX returns the #VALUE! error value. + * If places is negative, BIN2HEX returns the #NUM! error value. + * @return string + */ + public static function BINTOHEX($x, $places = null) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $x = floor($x); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[01]/', $x, $out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (strlen($x) > 10) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (strlen($x) == 10) { + // Two's Complement + return str_repeat('F', 8).substr(strtoupper(dechex(bindec(substr($x, -9)))), -2); + } + $hexVal = (string) strtoupper(dechex(bindec($x))); + + return self::nbrConversionFormat($hexVal, $places); + } + + + /** + * BINTOOCT + * + * Return a binary value as octal. + * + * Excel Function: + * BIN2OCT(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The binary number (as a string) that you want to convert. The number + * cannot contain more than 10 characters (10 bits). The most significant + * bit of number is the sign bit. The remaining 9 bits are magnitude bits. + * Negative numbers are represented using two's-complement notation. + * If number is not a valid binary number, or if number contains more than + * 10 characters (10 bits), BIN2OCT returns the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, BIN2OCT uses the + * minimum number of characters necessary. Places is useful for padding the + * return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, BIN2OCT returns the #VALUE! error value. + * If places is negative, BIN2OCT returns the #NUM! error value. + * @return string + */ + public static function BINTOOCT($x, $places = null) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $x = floor($x); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[01]/', $x, $out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (strlen($x) > 10) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (strlen($x) == 10) { + // Two's Complement + return str_repeat('7', 7).substr(strtoupper(decoct(bindec(substr($x, -9)))), -3); + } + $octVal = (string) decoct(bindec($x)); + + return self::nbrConversionFormat($octVal, $places); + } + + + /** + * DECTOBIN + * + * Return a decimal value as binary. + * + * Excel Function: + * DEC2BIN(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The decimal integer you want to convert. If number is negative, + * valid place values are ignored and DEC2BIN returns a 10-character + * (10-bit) binary number in which the most significant bit is the sign + * bit. The remaining 9 bits are magnitude bits. Negative numbers are + * represented using two's-complement notation. + * If number < -512 or if number > 511, DEC2BIN returns the #NUM! error + * value. + * If number is nonnumeric, DEC2BIN returns the #VALUE! error value. + * If DEC2BIN requires more than places characters, it returns the #NUM! + * error value. + * @param integer $places The number of characters to use. If places is omitted, DEC2BIN uses + * the minimum number of characters necessary. Places is useful for + * padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, DEC2BIN returns the #VALUE! error value. + * If places is zero or negative, DEC2BIN returns the #NUM! error value. + * @return string + */ + public static function DECTOBIN($x, $places = null) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[-0123456789.]/', $x, $out)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) floor($x); + $r = decbin($x); + if (strlen($r) == 32) { + // Two's Complement + $r = substr($r, -10); + } elseif (strlen($r) > 11) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return self::nbrConversionFormat($r, $places); + } + + + /** + * DECTOHEX + * + * Return a decimal value as hex. + * + * Excel Function: + * DEC2HEX(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The decimal integer you want to convert. If number is negative, + * places is ignored and DEC2HEX returns a 10-character (40-bit) + * hexadecimal number in which the most significant bit is the sign + * bit. The remaining 39 bits are magnitude bits. Negative numbers + * are represented using two's-complement notation. + * If number < -549,755,813,888 or if number > 549,755,813,887, + * DEC2HEX returns the #NUM! error value. + * If number is nonnumeric, DEC2HEX returns the #VALUE! error value. + * If DEC2HEX requires more than places characters, it returns the + * #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, DEC2HEX uses + * the minimum number of characters necessary. Places is useful for + * padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, DEC2HEX returns the #VALUE! error value. + * If places is zero or negative, DEC2HEX returns the #NUM! error value. + * @return string + */ + public static function DECTOHEX($x, $places = null) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[-0123456789.]/', $x, $out)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) floor($x); + $r = strtoupper(dechex($x)); + if (strlen($r) == 8) { + // Two's Complement + $r = 'FF'.$r; + } + + return self::nbrConversionFormat($r, $places); + } + + + /** + * DECTOOCT + * + * Return an decimal value as octal. + * + * Excel Function: + * DEC2OCT(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The decimal integer you want to convert. If number is negative, + * places is ignored and DEC2OCT returns a 10-character (30-bit) + * octal number in which the most significant bit is the sign bit. + * The remaining 29 bits are magnitude bits. Negative numbers are + * represented using two's-complement notation. + * If number < -536,870,912 or if number > 536,870,911, DEC2OCT + * returns the #NUM! error value. + * If number is nonnumeric, DEC2OCT returns the #VALUE! error value. + * If DEC2OCT requires more than places characters, it returns the + * #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, DEC2OCT uses + * the minimum number of characters necessary. Places is useful for + * padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, DEC2OCT returns the #VALUE! error value. + * If places is zero or negative, DEC2OCT returns the #NUM! error value. + * @return string + */ + public static function DECTOOCT($x, $places = null) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[-0123456789.]/', $x, $out)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) floor($x); + $r = decoct($x); + if (strlen($r) == 11) { + // Two's Complement + $r = substr($r, -10); + } + + return self::nbrConversionFormat($r, $places); + } + + + /** + * HEXTOBIN + * + * Return a hex value as binary. + * + * Excel Function: + * HEX2BIN(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x the hexadecimal number you want to convert. Number cannot + * contain more than 10 characters. The most significant bit of + * number is the sign bit (40th bit from the right). The remaining + * 9 bits are magnitude bits. Negative numbers are represented + * using two's-complement notation. + * If number is negative, HEX2BIN ignores places and returns a + * 10-character binary number. + * If number is negative, it cannot be less than FFFFFFFE00, and + * if number is positive, it cannot be greater than 1FF. + * If number is not a valid hexadecimal number, HEX2BIN returns + * the #NUM! error value. + * If HEX2BIN requires more than places characters, it returns + * the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, + * HEX2BIN uses the minimum number of characters necessary. Places + * is useful for padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, HEX2BIN returns the #VALUE! error value. + * If places is negative, HEX2BIN returns the #NUM! error value. + * @return string + */ + public static function HEXTOBIN($x, $places = null) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[0123456789ABCDEF]/', strtoupper($x), $out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $binVal = decbin(hexdec($x)); + + return substr(self::nbrConversionFormat($binVal, $places), -10); + } + + + /** + * HEXTODEC + * + * Return a hex value as decimal. + * + * Excel Function: + * HEX2DEC(x) + * + * @access public + * @category Engineering Functions + * @param string $x The hexadecimal number you want to convert. This number cannot + * contain more than 10 characters (40 bits). The most significant + * bit of number is the sign bit. The remaining 39 bits are magnitude + * bits. Negative numbers are represented using two's-complement + * notation. + * If number is not a valid hexadecimal number, HEX2DEC returns the + * #NUM! error value. + * @return string + */ + public static function HEXTODEC($x) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[0123456789ABCDEF]/', strtoupper($x), $out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return hexdec($x); + } + + + /** + * HEXTOOCT + * + * Return a hex value as octal. + * + * Excel Function: + * HEX2OCT(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The hexadecimal number you want to convert. Number cannot + * contain more than 10 characters. The most significant bit of + * number is the sign bit. The remaining 39 bits are magnitude + * bits. Negative numbers are represented using two's-complement + * notation. + * If number is negative, HEX2OCT ignores places and returns a + * 10-character octal number. + * If number is negative, it cannot be less than FFE0000000, and + * if number is positive, it cannot be greater than 1FFFFFFF. + * If number is not a valid hexadecimal number, HEX2OCT returns + * the #NUM! error value. + * If HEX2OCT requires more than places characters, it returns + * the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, HEX2OCT + * uses the minimum number of characters necessary. Places is + * useful for padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, HEX2OCT returns the #VALUE! error + * value. + * If places is negative, HEX2OCT returns the #NUM! error value. + * @return string + */ + public static function HEXTOOCT($x, $places = null) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[0123456789ABCDEF]/', strtoupper($x), $out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $octVal = decoct(hexdec($x)); + + return self::nbrConversionFormat($octVal, $places); + } // function HEXTOOCT() + + + /** + * OCTTOBIN + * + * Return an octal value as binary. + * + * Excel Function: + * OCT2BIN(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The octal number you want to convert. Number may not + * contain more than 10 characters. The most significant + * bit of number is the sign bit. The remaining 29 bits + * are magnitude bits. Negative numbers are represented + * using two's-complement notation. + * If number is negative, OCT2BIN ignores places and returns + * a 10-character binary number. + * If number is negative, it cannot be less than 7777777000, + * and if number is positive, it cannot be greater than 777. + * If number is not a valid octal number, OCT2BIN returns + * the #NUM! error value. + * If OCT2BIN requires more than places characters, it + * returns the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, + * OCT2BIN uses the minimum number of characters necessary. + * Places is useful for padding the return value with + * leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, OCT2BIN returns the #VALUE! + * error value. + * If places is negative, OCT2BIN returns the #NUM! error + * value. + * @return string + */ + public static function OCTTOBIN($x, $places = null) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (preg_match_all('/[01234567]/', $x, $out) != strlen($x)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $r = decbin(octdec($x)); + + return self::nbrConversionFormat($r, $places); + } + + + /** + * OCTTODEC + * + * Return an octal value as decimal. + * + * Excel Function: + * OCT2DEC(x) + * + * @access public + * @category Engineering Functions + * @param string $x The octal number you want to convert. Number may not contain + * more than 10 octal characters (30 bits). The most significant + * bit of number is the sign bit. The remaining 29 bits are + * magnitude bits. Negative numbers are represented using + * two's-complement notation. + * If number is not a valid octal number, OCT2DEC returns the + * #NUM! error value. + * @return string + */ + public static function OCTTODEC($x) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (preg_match_all('/[01234567]/', $x, $out) != strlen($x)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return octdec($x); + } + + + /** + * OCTTOHEX + * + * Return an octal value as hex. + * + * Excel Function: + * OCT2HEX(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The octal number you want to convert. Number may not contain + * more than 10 octal characters (30 bits). The most significant + * bit of number is the sign bit. The remaining 29 bits are + * magnitude bits. Negative numbers are represented using + * two's-complement notation. + * If number is negative, OCT2HEX ignores places and returns a + * 10-character hexadecimal number. + * If number is not a valid octal number, OCT2HEX returns the + * #NUM! error value. + * If OCT2HEX requires more than places characters, it returns + * the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, OCT2HEX + * uses the minimum number of characters necessary. Places is useful + * for padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, OCT2HEX returns the #VALUE! error value. + * If places is negative, OCT2HEX returns the #NUM! error value. + * @return string + */ + public static function OCTTOHEX($x, $places = null) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (preg_match_all('/[01234567]/', $x, $out) != strlen($x)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $hexVal = strtoupper(dechex(octdec($x))); + + return self::nbrConversionFormat($hexVal, $places); + } + + + /** + * COMPLEX + * + * Converts real and imaginary coefficients into a complex number of the form x + yi or x + yj. + * + * Excel Function: + * COMPLEX(realNumber,imaginary[,places]) + * + * @access public + * @category Engineering Functions + * @param float $realNumber The real coefficient of the complex number. + * @param float $imaginary The imaginary coefficient of the complex number. + * @param string $suffix The suffix for the imaginary component of the complex number. + * If omitted, the suffix is assumed to be "i". + * @return string + */ + public static function COMPLEX($realNumber = 0.0, $imaginary = 0.0, $suffix = 'i') + { + $realNumber = (is_null($realNumber)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($realNumber); + $imaginary = (is_null($imaginary)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($imaginary); + $suffix = (is_null($suffix)) ? 'i' : PHPExcel_Calculation_Functions::flattenSingleValue($suffix); + + if (((is_numeric($realNumber)) && (is_numeric($imaginary))) && + (($suffix == 'i') || ($suffix == 'j') || ($suffix == ''))) { + $realNumber = (float) $realNumber; + $imaginary = (float) $imaginary; + + if ($suffix == '') { + $suffix = 'i'; + } + if ($realNumber == 0.0) { + if ($imaginary == 0.0) { + return (string) '0'; + } elseif ($imaginary == 1.0) { + return (string) $suffix; + } elseif ($imaginary == -1.0) { + return (string) '-'.$suffix; + } + return (string) $imaginary.$suffix; + } elseif ($imaginary == 0.0) { + return (string) $realNumber; + } elseif ($imaginary == 1.0) { + return (string) $realNumber.'+'.$suffix; + } elseif ($imaginary == -1.0) { + return (string) $realNumber.'-'.$suffix; + } + if ($imaginary > 0) { + $imaginary = (string) '+'.$imaginary; + } + return (string) $realNumber.$imaginary.$suffix; + } + + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * IMAGINARY + * + * Returns the imaginary coefficient of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMAGINARY(complexNumber) + * + * @access public + * @category Engineering Functions + * @param string $complexNumber The complex number for which you want the imaginary + * coefficient. + * @return float + */ + public static function IMAGINARY($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + return $parsedComplex['imaginary']; + } + + + /** + * IMREAL + * + * Returns the real coefficient of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMREAL(complexNumber) + * + * @access public + * @category Engineering Functions + * @param string $complexNumber The complex number for which you want the real coefficient. + * @return float + */ + public static function IMREAL($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + return $parsedComplex['real']; + } + + + /** + * IMABS + * + * Returns the absolute value (modulus) of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMABS(complexNumber) + * + * @param string $complexNumber The complex number for which you want the absolute value. + * @return float + */ + public static function IMABS($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + + return sqrt( + ($parsedComplex['real'] * $parsedComplex['real']) + + ($parsedComplex['imaginary'] * $parsedComplex['imaginary']) + ); + } + + + /** + * IMARGUMENT + * + * Returns the argument theta of a complex number, i.e. the angle in radians from the real + * axis to the representation of the number in polar coordinates. + * + * Excel Function: + * IMARGUMENT(complexNumber) + * + * @param string $complexNumber The complex number for which you want the argument theta. + * @return float + */ + public static function IMARGUMENT($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + + if ($parsedComplex['real'] == 0.0) { + if ($parsedComplex['imaginary'] == 0.0) { + return 0.0; + } elseif ($parsedComplex['imaginary'] < 0.0) { + return M_PI / -2; + } else { + return M_PI / 2; + } + } elseif ($parsedComplex['real'] > 0.0) { + return atan($parsedComplex['imaginary'] / $parsedComplex['real']); + } elseif ($parsedComplex['imaginary'] < 0.0) { + return 0 - (M_PI - atan(abs($parsedComplex['imaginary']) / abs($parsedComplex['real']))); + } else { + return M_PI - atan($parsedComplex['imaginary'] / abs($parsedComplex['real'])); + } + } + + + /** + * IMCONJUGATE + * + * Returns the complex conjugate of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMCONJUGATE(complexNumber) + * + * @param string $complexNumber The complex number for which you want the conjugate. + * @return string + */ + public static function IMCONJUGATE($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + + if ($parsedComplex['imaginary'] == 0.0) { + return $parsedComplex['real']; + } else { + return self::cleanComplex( + self::COMPLEX( + $parsedComplex['real'], + 0 - $parsedComplex['imaginary'], + $parsedComplex['suffix'] + ) + ); + } + } + + + /** + * IMCOS + * + * Returns the cosine of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMCOS(complexNumber) + * + * @param string $complexNumber The complex number for which you want the cosine. + * @return string|float + */ + public static function IMCOS($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + + if ($parsedComplex['imaginary'] == 0.0) { + return cos($parsedComplex['real']); + } else { + return self::IMCONJUGATE( + self::COMPLEX( + cos($parsedComplex['real']) * cosh($parsedComplex['imaginary']), + sin($parsedComplex['real']) * sinh($parsedComplex['imaginary']), + $parsedComplex['suffix'] + ) + ); + } + } + + + /** + * IMSIN + * + * Returns the sine of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMSIN(complexNumber) + * + * @param string $complexNumber The complex number for which you want the sine. + * @return string|float + */ + public static function IMSIN($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + + if ($parsedComplex['imaginary'] == 0.0) { + return sin($parsedComplex['real']); + } else { + return self::COMPLEX( + sin($parsedComplex['real']) * cosh($parsedComplex['imaginary']), + cos($parsedComplex['real']) * sinh($parsedComplex['imaginary']), + $parsedComplex['suffix'] + ); + } + } + + + /** + * IMSQRT + * + * Returns the square root of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMSQRT(complexNumber) + * + * @param string $complexNumber The complex number for which you want the square root. + * @return string + */ + public static function IMSQRT($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + + $theta = self::IMARGUMENT($complexNumber); + $d1 = cos($theta / 2); + $d2 = sin($theta / 2); + $r = sqrt(sqrt(($parsedComplex['real'] * $parsedComplex['real']) + ($parsedComplex['imaginary'] * $parsedComplex['imaginary']))); + + if ($parsedComplex['suffix'] == '') { + return self::COMPLEX($d1 * $r, $d2 * $r); + } else { + return self::COMPLEX($d1 * $r, $d2 * $r, $parsedComplex['suffix']); + } + } + + + /** + * IMLN + * + * Returns the natural logarithm of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMLN(complexNumber) + * + * @param string $complexNumber The complex number for which you want the natural logarithm. + * @return string + */ + public static function IMLN($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + + if (($parsedComplex['real'] == 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $logR = log(sqrt(($parsedComplex['real'] * $parsedComplex['real']) + ($parsedComplex['imaginary'] * $parsedComplex['imaginary']))); + $t = self::IMARGUMENT($complexNumber); + + if ($parsedComplex['suffix'] == '') { + return self::COMPLEX($logR, $t); + } else { + return self::COMPLEX($logR, $t, $parsedComplex['suffix']); + } + } + + + /** + * IMLOG10 + * + * Returns the common logarithm (base 10) of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMLOG10(complexNumber) + * + * @param string $complexNumber The complex number for which you want the common logarithm. + * @return string + */ + public static function IMLOG10($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + + if (($parsedComplex['real'] == 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (($parsedComplex['real'] > 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return log10($parsedComplex['real']); + } + + return self::IMPRODUCT(log10(EULER), self::IMLN($complexNumber)); + } + + + /** + * IMLOG2 + * + * Returns the base-2 logarithm of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMLOG2(complexNumber) + * + * @param string $complexNumber The complex number for which you want the base-2 logarithm. + * @return string + */ + public static function IMLOG2($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + + if (($parsedComplex['real'] == 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (($parsedComplex['real'] > 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return log($parsedComplex['real'], 2); + } + + return self::IMPRODUCT(log(EULER, 2), self::IMLN($complexNumber)); + } + + + /** + * IMEXP + * + * Returns the exponential of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMEXP(complexNumber) + * + * @param string $complexNumber The complex number for which you want the exponential. + * @return string + */ + public static function IMEXP($complexNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::parseComplex($complexNumber); + + if (($parsedComplex['real'] == 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return '1'; + } + + $e = exp($parsedComplex['real']); + $eX = $e * cos($parsedComplex['imaginary']); + $eY = $e * sin($parsedComplex['imaginary']); + + if ($parsedComplex['suffix'] == '') { + return self::COMPLEX($eX, $eY); + } else { + return self::COMPLEX($eX, $eY, $parsedComplex['suffix']); + } + } + + + /** + * IMPOWER + * + * Returns a complex number in x + yi or x + yj text format raised to a power. + * + * Excel Function: + * IMPOWER(complexNumber,realNumber) + * + * @param string $complexNumber The complex number you want to raise to a power. + * @param float $realNumber The power to which you want to raise the complex number. + * @return string + */ + public static function IMPOWER($complexNumber, $realNumber) + { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + $realNumber = PHPExcel_Calculation_Functions::flattenSingleValue($realNumber); + + if (!is_numeric($realNumber)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + $parsedComplex = self::parseComplex($complexNumber); + + $r = sqrt(($parsedComplex['real'] * $parsedComplex['real']) + ($parsedComplex['imaginary'] * $parsedComplex['imaginary'])); + $rPower = pow($r, $realNumber); + $theta = self::IMARGUMENT($complexNumber) * $realNumber; + if ($theta == 0) { + return 1; + } elseif ($parsedComplex['imaginary'] == 0.0) { + return self::COMPLEX($rPower * cos($theta), $rPower * sin($theta), $parsedComplex['suffix']); + } else { + return self::COMPLEX($rPower * cos($theta), $rPower * sin($theta), $parsedComplex['suffix']); + } + } + + + /** + * IMDIV + * + * Returns the quotient of two complex numbers in x + yi or x + yj text format. + * + * Excel Function: + * IMDIV(complexDividend,complexDivisor) + * + * @param string $complexDividend The complex numerator or dividend. + * @param string $complexDivisor The complex denominator or divisor. + * @return string + */ + public static function IMDIV($complexDividend, $complexDivisor) + { + $complexDividend = PHPExcel_Calculation_Functions::flattenSingleValue($complexDividend); + $complexDivisor = PHPExcel_Calculation_Functions::flattenSingleValue($complexDivisor); + + $parsedComplexDividend = self::parseComplex($complexDividend); + $parsedComplexDivisor = self::parseComplex($complexDivisor); + + if (($parsedComplexDividend['suffix'] != '') && ($parsedComplexDivisor['suffix'] != '') && + ($parsedComplexDividend['suffix'] != $parsedComplexDivisor['suffix'])) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($parsedComplexDividend['suffix'] != '') && ($parsedComplexDivisor['suffix'] == '')) { + $parsedComplexDivisor['suffix'] = $parsedComplexDividend['suffix']; + } + + $d1 = ($parsedComplexDividend['real'] * $parsedComplexDivisor['real']) + ($parsedComplexDividend['imaginary'] * $parsedComplexDivisor['imaginary']); + $d2 = ($parsedComplexDividend['imaginary'] * $parsedComplexDivisor['real']) - ($parsedComplexDividend['real'] * $parsedComplexDivisor['imaginary']); + $d3 = ($parsedComplexDivisor['real'] * $parsedComplexDivisor['real']) + ($parsedComplexDivisor['imaginary'] * $parsedComplexDivisor['imaginary']); + + $r = $d1 / $d3; + $i = $d2 / $d3; + + if ($i > 0.0) { + return self::cleanComplex($r.'+'.$i.$parsedComplexDivisor['suffix']); + } elseif ($i < 0.0) { + return self::cleanComplex($r.$i.$parsedComplexDivisor['suffix']); + } else { + return $r; + } + } + + + /** + * IMSUB + * + * Returns the difference of two complex numbers in x + yi or x + yj text format. + * + * Excel Function: + * IMSUB(complexNumber1,complexNumber2) + * + * @param string $complexNumber1 The complex number from which to subtract complexNumber2. + * @param string $complexNumber2 The complex number to subtract from complexNumber1. + * @return string + */ + public static function IMSUB($complexNumber1, $complexNumber2) + { + $complexNumber1 = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber1); + $complexNumber2 = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber2); + + $parsedComplex1 = self::parseComplex($complexNumber1); + $parsedComplex2 = self::parseComplex($complexNumber2); + + if ((($parsedComplex1['suffix'] != '') && ($parsedComplex2['suffix'] != '')) && + ($parsedComplex1['suffix'] != $parsedComplex2['suffix'])) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (($parsedComplex1['suffix'] == '') && ($parsedComplex2['suffix'] != '')) { + $parsedComplex1['suffix'] = $parsedComplex2['suffix']; + } + + $d1 = $parsedComplex1['real'] - $parsedComplex2['real']; + $d2 = $parsedComplex1['imaginary'] - $parsedComplex2['imaginary']; + + return self::COMPLEX($d1, $d2, $parsedComplex1['suffix']); + } + + + /** + * IMSUM + * + * Returns the sum of two or more complex numbers in x + yi or x + yj text format. + * + * Excel Function: + * IMSUM(complexNumber[,complexNumber[,...]]) + * + * @param string $complexNumber,... Series of complex numbers to add + * @return string + */ + public static function IMSUM() + { + // Return value + $returnValue = self::parseComplex('0'); + $activeSuffix = ''; + + // Loop through the arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + $parsedComplex = self::parseComplex($arg); + + if ($activeSuffix == '') { + $activeSuffix = $parsedComplex['suffix']; + } elseif (($parsedComplex['suffix'] != '') && ($activeSuffix != $parsedComplex['suffix'])) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + $returnValue['real'] += $parsedComplex['real']; + $returnValue['imaginary'] += $parsedComplex['imaginary']; + } + + if ($returnValue['imaginary'] == 0.0) { + $activeSuffix = ''; + } + return self::COMPLEX($returnValue['real'], $returnValue['imaginary'], $activeSuffix); + } + + + /** + * IMPRODUCT + * + * Returns the product of two or more complex numbers in x + yi or x + yj text format. + * + * Excel Function: + * IMPRODUCT(complexNumber[,complexNumber[,...]]) + * + * @param string $complexNumber,... Series of complex numbers to multiply + * @return string + */ + public static function IMPRODUCT() + { + // Return value + $returnValue = self::parseComplex('1'); + $activeSuffix = ''; + + // Loop through the arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + $parsedComplex = self::parseComplex($arg); + + $workValue = $returnValue; + if (($parsedComplex['suffix'] != '') && ($activeSuffix == '')) { + $activeSuffix = $parsedComplex['suffix']; + } elseif (($parsedComplex['suffix'] != '') && ($activeSuffix != $parsedComplex['suffix'])) { + return PHPExcel_Calculation_Functions::NaN(); + } + $returnValue['real'] = ($workValue['real'] * $parsedComplex['real']) - ($workValue['imaginary'] * $parsedComplex['imaginary']); + $returnValue['imaginary'] = ($workValue['real'] * $parsedComplex['imaginary']) + ($workValue['imaginary'] * $parsedComplex['real']); + } + + if ($returnValue['imaginary'] == 0.0) { + $activeSuffix = ''; + } + return self::COMPLEX($returnValue['real'], $returnValue['imaginary'], $activeSuffix); + } + + + /** + * DELTA + * + * Tests whether two values are equal. Returns 1 if number1 = number2; returns 0 otherwise. + * Use this function to filter a set of values. For example, by summing several DELTA + * functions you calculate the count of equal pairs. This function is also known as the + * Kronecker Delta function. + * + * Excel Function: + * DELTA(a[,b]) + * + * @param float $a The first number. + * @param float $b The second number. If omitted, b is assumed to be zero. + * @return int + */ + public static function DELTA($a, $b = 0) + { + $a = PHPExcel_Calculation_Functions::flattenSingleValue($a); + $b = PHPExcel_Calculation_Functions::flattenSingleValue($b); + + return (int) ($a == $b); + } + + + /** + * GESTEP + * + * Excel Function: + * GESTEP(number[,step]) + * + * Returns 1 if number >= step; returns 0 (zero) otherwise + * Use this function to filter a set of values. For example, by summing several GESTEP + * functions you calculate the count of values that exceed a threshold. + * + * @param float $number The value to test against step. + * @param float $step The threshold value. + * If you omit a value for step, GESTEP uses zero. + * @return int + */ + public static function GESTEP($number, $step = 0) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $step = PHPExcel_Calculation_Functions::flattenSingleValue($step); + + return (int) ($number >= $step); + } + + + // + // Private method to calculate the erf value + // + private static $twoSqrtPi = 1.128379167095512574; + + public static function erfVal($x) + { + if (abs($x) > 2.2) { + return 1 - self::erfcVal($x); + } + $sum = $term = $x; + $xsqr = ($x * $x); + $j = 1; + do { + $term *= $xsqr / $j; + $sum -= $term / (2 * $j + 1); + ++$j; + $term *= $xsqr / $j; + $sum += $term / (2 * $j + 1); + ++$j; + if ($sum == 0.0) { + break; + } + } while (abs($term / $sum) > PRECISION); + return self::$twoSqrtPi * $sum; + } + + + /** + * ERF + * + * Returns the error function integrated between the lower and upper bound arguments. + * + * Note: In Excel 2007 or earlier, if you input a negative value for the upper or lower bound arguments, + * the function would return a #NUM! error. However, in Excel 2010, the function algorithm was + * improved, so that it can now calculate the function for both positive and negative ranges. + * PHPExcel follows Excel 2010 behaviour, and accepts nagative arguments. + * + * Excel Function: + * ERF(lower[,upper]) + * + * @param float $lower lower bound for integrating ERF + * @param float $upper upper bound for integrating ERF. + * If omitted, ERF integrates between zero and lower_limit + * @return float + */ + public static function ERF($lower, $upper = null) + { + $lower = PHPExcel_Calculation_Functions::flattenSingleValue($lower); + $upper = PHPExcel_Calculation_Functions::flattenSingleValue($upper); + + if (is_numeric($lower)) { + if (is_null($upper)) { + return self::erfVal($lower); + } + if (is_numeric($upper)) { + return self::erfVal($upper) - self::erfVal($lower); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + // + // Private method to calculate the erfc value + // + private static $oneSqrtPi = 0.564189583547756287; + + private static function erfcVal($x) + { + if (abs($x) < 2.2) { + return 1 - self::erfVal($x); + } + if ($x < 0) { + return 2 - self::ERFC(-$x); + } + $a = $n = 1; + $b = $c = $x; + $d = ($x * $x) + 0.5; + $q1 = $q2 = $b / $d; + $t = 0; + do { + $t = $a * $n + $b * $x; + $a = $b; + $b = $t; + $t = $c * $n + $d * $x; + $c = $d; + $d = $t; + $n += 0.5; + $q1 = $q2; + $q2 = $b / $d; + } while ((abs($q1 - $q2) / $q2) > PRECISION); + return self::$oneSqrtPi * exp(-$x * $x) * $q2; + } + + + /** + * ERFC + * + * Returns the complementary ERF function integrated between x and infinity + * + * Note: In Excel 2007 or earlier, if you input a negative value for the lower bound argument, + * the function would return a #NUM! error. However, in Excel 2010, the function algorithm was + * improved, so that it can now calculate the function for both positive and negative x values. + * PHPExcel follows Excel 2010 behaviour, and accepts nagative arguments. + * + * Excel Function: + * ERFC(x) + * + * @param float $x The lower bound for integrating ERFC + * @return float + */ + public static function ERFC($x) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + + if (is_numeric($x)) { + return self::erfcVal($x); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * getConversionGroups + * Returns a list of the different conversion groups for UOM conversions + * + * @return array + */ + public static function getConversionGroups() + { + $conversionGroups = array(); + foreach (self::$conversionUnits as $conversionUnit) { + $conversionGroups[] = $conversionUnit['Group']; + } + return array_merge(array_unique($conversionGroups)); + } + + + /** + * getConversionGroupUnits + * Returns an array of units of measure, for a specified conversion group, or for all groups + * + * @param string $group The group whose units of measure you want to retrieve + * @return array + */ + public static function getConversionGroupUnits($group = null) + { + $conversionGroups = array(); + foreach (self::$conversionUnits as $conversionUnit => $conversionGroup) { + if ((is_null($group)) || ($conversionGroup['Group'] == $group)) { + $conversionGroups[$conversionGroup['Group']][] = $conversionUnit; + } + } + return $conversionGroups; + } + + + /** + * getConversionGroupUnitDetails + * + * @param string $group The group whose units of measure you want to retrieve + * @return array + */ + public static function getConversionGroupUnitDetails($group = null) + { + $conversionGroups = array(); + foreach (self::$conversionUnits as $conversionUnit => $conversionGroup) { + if ((is_null($group)) || ($conversionGroup['Group'] == $group)) { + $conversionGroups[$conversionGroup['Group']][] = array( + 'unit' => $conversionUnit, + 'description' => $conversionGroup['Unit Name'] + ); + } + } + return $conversionGroups; + } + + + /** + * getConversionMultipliers + * Returns an array of the Multiplier prefixes that can be used with Units of Measure in CONVERTUOM() + * + * @return array of mixed + */ + public static function getConversionMultipliers() + { + return self::$conversionMultipliers; + } + + + /** + * CONVERTUOM + * + * Converts a number from one measurement system to another. + * For example, CONVERT can translate a table of distances in miles to a table of distances + * in kilometers. + * + * Excel Function: + * CONVERT(value,fromUOM,toUOM) + * + * @param float $value The value in fromUOM to convert. + * @param string $fromUOM The units for value. + * @param string $toUOM The units for the result. + * + * @return float + */ + public static function CONVERTUOM($value, $fromUOM, $toUOM) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $fromUOM = PHPExcel_Calculation_Functions::flattenSingleValue($fromUOM); + $toUOM = PHPExcel_Calculation_Functions::flattenSingleValue($toUOM); + + if (!is_numeric($value)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $fromMultiplier = 1.0; + if (isset(self::$conversionUnits[$fromUOM])) { + $unitGroup1 = self::$conversionUnits[$fromUOM]['Group']; + } else { + $fromMultiplier = substr($fromUOM, 0, 1); + $fromUOM = substr($fromUOM, 1); + if (isset(self::$conversionMultipliers[$fromMultiplier])) { + $fromMultiplier = self::$conversionMultipliers[$fromMultiplier]['multiplier']; + } else { + return PHPExcel_Calculation_Functions::NA(); + } + if ((isset(self::$conversionUnits[$fromUOM])) && (self::$conversionUnits[$fromUOM]['AllowPrefix'])) { + $unitGroup1 = self::$conversionUnits[$fromUOM]['Group']; + } else { + return PHPExcel_Calculation_Functions::NA(); + } + } + $value *= $fromMultiplier; + + $toMultiplier = 1.0; + if (isset(self::$conversionUnits[$toUOM])) { + $unitGroup2 = self::$conversionUnits[$toUOM]['Group']; + } else { + $toMultiplier = substr($toUOM, 0, 1); + $toUOM = substr($toUOM, 1); + if (isset(self::$conversionMultipliers[$toMultiplier])) { + $toMultiplier = self::$conversionMultipliers[$toMultiplier]['multiplier']; + } else { + return PHPExcel_Calculation_Functions::NA(); + } + if ((isset(self::$conversionUnits[$toUOM])) && (self::$conversionUnits[$toUOM]['AllowPrefix'])) { + $unitGroup2 = self::$conversionUnits[$toUOM]['Group']; + } else { + return PHPExcel_Calculation_Functions::NA(); + } + } + if ($unitGroup1 != $unitGroup2) { + return PHPExcel_Calculation_Functions::NA(); + } + + if (($fromUOM == $toUOM) && ($fromMultiplier == $toMultiplier)) { + // We've already factored $fromMultiplier into the value, so we need + // to reverse it again + return $value / $fromMultiplier; + } elseif ($unitGroup1 == 'Temperature') { + if (($fromUOM == 'F') || ($fromUOM == 'fah')) { + if (($toUOM == 'F') || ($toUOM == 'fah')) { + return $value; + } else { + $value = (($value - 32) / 1.8); + if (($toUOM == 'K') || ($toUOM == 'kel')) { + $value += 273.15; + } + return $value; + } + } elseif ((($fromUOM == 'K') || ($fromUOM == 'kel')) && + (($toUOM == 'K') || ($toUOM == 'kel'))) { + return $value; + } elseif ((($fromUOM == 'C') || ($fromUOM == 'cel')) && + (($toUOM == 'C') || ($toUOM == 'cel'))) { + return $value; + } + if (($toUOM == 'F') || ($toUOM == 'fah')) { + if (($fromUOM == 'K') || ($fromUOM == 'kel')) { + $value -= 273.15; + } + return ($value * 1.8) + 32; + } + if (($toUOM == 'C') || ($toUOM == 'cel')) { + return $value - 273.15; + } + return $value + 273.15; + } + return ($value * self::$unitConversions[$unitGroup1][$fromUOM][$toUOM]) / $toMultiplier; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Exception.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Exception.php new file mode 100644 index 0000000..52d73fc --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Exception.php @@ -0,0 +1,46 @@ +line = $line; + $e->file = $file; + throw $e; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/ExceptionHandler.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/ExceptionHandler.php new file mode 100644 index 0000000..4cb0a68 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/ExceptionHandler.php @@ -0,0 +1,45 @@ +format('d') == $testDate->format('t')); + } + + + /** + * isFirstDayOfMonth + * + * Returns a boolean TRUE/FALSE indicating if this date is the first date of the month + * + * @param DateTime $testDate The date for testing + * @return boolean + */ + private static function isFirstDayOfMonth($testDate) + { + return ($testDate->format('d') == 1); + } + + + private static function couponFirstPeriodDate($settlement, $maturity, $frequency, $next) + { + $months = 12 / $frequency; + + $result = PHPExcel_Shared_Date::ExcelToPHPObject($maturity); + $eom = self::isLastDayOfMonth($result); + + while ($settlement < PHPExcel_Shared_Date::PHPToExcel($result)) { + $result->modify('-'.$months.' months'); + } + if ($next) { + $result->modify('+'.$months.' months'); + } + + if ($eom) { + $result->modify('-1 day'); + } + + return PHPExcel_Shared_Date::PHPToExcel($result); + } + + + private static function isValidFrequency($frequency) + { + if (($frequency == 1) || ($frequency == 2) || ($frequency == 4)) { + return true; + } + if ((PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) && + (($frequency == 6) || ($frequency == 12))) { + return true; + } + return false; + } + + + /** + * daysPerYear + * + * Returns the number of days in a specified year, as defined by the "basis" value + * + * @param integer $year The year against which we're testing + * @param integer $basis The type of day count: + * 0 or omitted US (NASD) 360 + * 1 Actual (365 or 366 in a leap year) + * 2 360 + * 3 365 + * 4 European 360 + * @return integer + */ + private static function daysPerYear($year, $basis = 0) + { + switch ($basis) { + case 0: + case 2: + case 4: + $daysPerYear = 360; + break; + case 3: + $daysPerYear = 365; + break; + case 1: + $daysPerYear = (PHPExcel_Calculation_DateTime::isLeapYear($year)) ? 366 : 365; + break; + default: + return PHPExcel_Calculation_Functions::NaN(); + } + return $daysPerYear; + } + + + private static function interestAndPrincipal($rate = 0, $per = 0, $nper = 0, $pv = 0, $fv = 0, $type = 0) + { + $pmt = self::PMT($rate, $nper, $pv, $fv, $type); + $capital = $pv; + for ($i = 1; $i<= $per; ++$i) { + $interest = ($type && $i == 1) ? 0 : -$capital * $rate; + $principal = $pmt - $interest; + $capital += $principal; + } + return array($interest, $principal); + } + + + /** + * ACCRINT + * + * Returns the accrued interest for a security that pays periodic interest. + * + * Excel Function: + * ACCRINT(issue,firstinterest,settlement,rate,par,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed $issue The security's issue date. + * @param mixed $firstinterest The security's first interest date. + * @param mixed $settlement The security's settlement date. + * The security settlement date is the date after the issue date + * when the security is traded to the buyer. + * @param float $rate The security's annual coupon rate. + * @param float $par The security's par value. + * If you omit par, ACCRINT uses $1,000. + * @param integer $frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer $basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function ACCRINT($issue, $firstinterest, $settlement, $rate, $par = 1000, $frequency = 1, $basis = 0) + { + $issue = PHPExcel_Calculation_Functions::flattenSingleValue($issue); + $firstinterest = PHPExcel_Calculation_Functions::flattenSingleValue($firstinterest); + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $par = (is_null($par)) ? 1000 : PHPExcel_Calculation_Functions::flattenSingleValue($par); + $frequency = (is_null($frequency)) ? 1 : PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($rate)) && (is_numeric($par))) { + $rate = (float) $rate; + $par = (float) $par; + if (($rate <= 0) || ($par <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenIssueAndSettlement = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $settlement, $basis); + if (!is_numeric($daysBetweenIssueAndSettlement)) { + // return date error + return $daysBetweenIssueAndSettlement; + } + + return $par * $rate * $daysBetweenIssueAndSettlement; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * ACCRINTM + * + * Returns the accrued interest for a security that pays interest at maturity. + * + * Excel Function: + * ACCRINTM(issue,settlement,rate[,par[,basis]]) + * + * @access public + * @category Financial Functions + * @param mixed issue The security's issue date. + * @param mixed settlement The security's settlement (or maturity) date. + * @param float rate The security's annual coupon rate. + * @param float par The security's par value. + * If you omit par, ACCRINT uses $1,000. + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function ACCRINTM($issue, $settlement, $rate, $par = 1000, $basis = 0) + { + $issue = PHPExcel_Calculation_Functions::flattenSingleValue($issue); + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $par = (is_null($par)) ? 1000 : PHPExcel_Calculation_Functions::flattenSingleValue($par); + $basis = (is_null($basis)) ? 0 : PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($rate)) && (is_numeric($par))) { + $rate = (float) $rate; + $par = (float) $par; + if (($rate <= 0) || ($par <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenIssueAndSettlement = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $settlement, $basis); + if (!is_numeric($daysBetweenIssueAndSettlement)) { + // return date error + return $daysBetweenIssueAndSettlement; + } + return $par * $rate * $daysBetweenIssueAndSettlement; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * AMORDEGRC + * + * Returns the depreciation for each accounting period. + * This function is provided for the French accounting system. If an asset is purchased in + * the middle of the accounting period, the prorated depreciation is taken into account. + * The function is similar to AMORLINC, except that a depreciation coefficient is applied in + * the calculation depending on the life of the assets. + * This function will return the depreciation until the last period of the life of the assets + * or until the cumulated value of depreciation is greater than the cost of the assets minus + * the salvage value. + * + * Excel Function: + * AMORDEGRC(cost,purchased,firstPeriod,salvage,period,rate[,basis]) + * + * @access public + * @category Financial Functions + * @param float cost The cost of the asset. + * @param mixed purchased Date of the purchase of the asset. + * @param mixed firstPeriod Date of the end of the first period. + * @param mixed salvage The salvage value at the end of the life of the asset. + * @param float period The period. + * @param float rate Rate of depreciation. + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function AMORDEGRC($cost, $purchased, $firstPeriod, $salvage, $period, $rate, $basis = 0) + { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $purchased = PHPExcel_Calculation_Functions::flattenSingleValue($purchased); + $firstPeriod = PHPExcel_Calculation_Functions::flattenSingleValue($firstPeriod); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $period = floor(PHPExcel_Calculation_Functions::flattenSingleValue($period)); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // The depreciation coefficients are: + // Life of assets (1/rate) Depreciation coefficient + // Less than 3 years 1 + // Between 3 and 4 years 1.5 + // Between 5 and 6 years 2 + // More than 6 years 2.5 + $fUsePer = 1.0 / $rate; + if ($fUsePer < 3.0) { + $amortiseCoeff = 1.0; + } elseif ($fUsePer < 5.0) { + $amortiseCoeff = 1.5; + } elseif ($fUsePer <= 6.0) { + $amortiseCoeff = 2.0; + } else { + $amortiseCoeff = 2.5; + } + + $rate *= $amortiseCoeff; + $fNRate = round(PHPExcel_Calculation_DateTime::YEARFRAC($purchased, $firstPeriod, $basis) * $rate * $cost, 0); + $cost -= $fNRate; + $fRest = $cost - $salvage; + + for ($n = 0; $n < $period; ++$n) { + $fNRate = round($rate * $cost, 0); + $fRest -= $fNRate; + + if ($fRest < 0.0) { + switch ($period - $n) { + case 0: + case 1: + return round($cost * 0.5, 0); + default: + return 0.0; + } + } + $cost -= $fNRate; + } + return $fNRate; + } + + + /** + * AMORLINC + * + * Returns the depreciation for each accounting period. + * This function is provided for the French accounting system. If an asset is purchased in + * the middle of the accounting period, the prorated depreciation is taken into account. + * + * Excel Function: + * AMORLINC(cost,purchased,firstPeriod,salvage,period,rate[,basis]) + * + * @access public + * @category Financial Functions + * @param float cost The cost of the asset. + * @param mixed purchased Date of the purchase of the asset. + * @param mixed firstPeriod Date of the end of the first period. + * @param mixed salvage The salvage value at the end of the life of the asset. + * @param float period The period. + * @param float rate Rate of depreciation. + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function AMORLINC($cost, $purchased, $firstPeriod, $salvage, $period, $rate, $basis = 0) + { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $purchased = PHPExcel_Calculation_Functions::flattenSingleValue($purchased); + $firstPeriod = PHPExcel_Calculation_Functions::flattenSingleValue($firstPeriod); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $period = PHPExcel_Calculation_Functions::flattenSingleValue($period); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + $fOneRate = $cost * $rate; + $fCostDelta = $cost - $salvage; + // Note, quirky variation for leap years on the YEARFRAC for this function + $purchasedYear = PHPExcel_Calculation_DateTime::YEAR($purchased); + $yearFrac = PHPExcel_Calculation_DateTime::YEARFRAC($purchased, $firstPeriod, $basis); + + if (($basis == 1) && ($yearFrac < 1) && (PHPExcel_Calculation_DateTime::isLeapYear($purchasedYear))) { + $yearFrac *= 365 / 366; + } + + $f0Rate = $yearFrac * $rate * $cost; + $nNumOfFullPeriods = intval(($cost - $salvage - $f0Rate) / $fOneRate); + + if ($period == 0) { + return $f0Rate; + } elseif ($period <= $nNumOfFullPeriods) { + return $fOneRate; + } elseif ($period == ($nNumOfFullPeriods + 1)) { + return ($fCostDelta - $fOneRate * $nNumOfFullPeriods - $f0Rate); + } else { + return 0.0; + } + } + + + /** + * COUPDAYBS + * + * Returns the number of days from the beginning of the coupon period to the settlement date. + * + * Excel Function: + * COUPDAYBS(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function COUPDAYBS($settlement, $maturity, $frequency, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::isValidFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $daysPerYear = self::daysPerYear(PHPExcel_Calculation_DateTime::YEAR($settlement), $basis); + $prev = self::couponFirstPeriodDate($settlement, $maturity, $frequency, false); + + return PHPExcel_Calculation_DateTime::YEARFRAC($prev, $settlement, $basis) * $daysPerYear; + } + + + /** + * COUPDAYS + * + * Returns the number of days in the coupon period that contains the settlement date. + * + * Excel Function: + * COUPDAYS(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function COUPDAYS($settlement, $maturity, $frequency, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::isValidFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + switch ($basis) { + case 3: + // Actual/365 + return 365 / $frequency; + case 1: + // Actual/actual + if ($frequency == 1) { + $daysPerYear = self::daysPerYear(PHPExcel_Calculation_DateTime::YEAR($maturity), $basis); + return ($daysPerYear / $frequency); + } + $prev = self::couponFirstPeriodDate($settlement, $maturity, $frequency, false); + $next = self::couponFirstPeriodDate($settlement, $maturity, $frequency, true); + return ($next - $prev); + default: + // US (NASD) 30/360, Actual/360 or European 30/360 + return 360 / $frequency; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * COUPDAYSNC + * + * Returns the number of days from the settlement date to the next coupon date. + * + * Excel Function: + * COUPDAYSNC(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function COUPDAYSNC($settlement, $maturity, $frequency, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::isValidFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $daysPerYear = self::daysPerYear(PHPExcel_Calculation_DateTime::YEAR($settlement), $basis); + $next = self::couponFirstPeriodDate($settlement, $maturity, $frequency, true); + + return PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $next, $basis) * $daysPerYear; + } + + + /** + * COUPNCD + * + * Returns the next coupon date after the settlement date. + * + * Excel Function: + * COUPNCD(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function COUPNCD($settlement, $maturity, $frequency, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::isValidFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return self::couponFirstPeriodDate($settlement, $maturity, $frequency, true); + } + + + /** + * COUPNUM + * + * Returns the number of coupons payable between the settlement date and maturity date, + * rounded up to the nearest whole coupon. + * + * Excel Function: + * COUPNUM(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return integer + */ + public static function COUPNUM($settlement, $maturity, $frequency, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::isValidFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $settlement = self::couponFirstPeriodDate($settlement, $maturity, $frequency, true); + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis) * 365; + + switch ($frequency) { + case 1: // annual payments + return ceil($daysBetweenSettlementAndMaturity / 360); + case 2: // half-yearly + return ceil($daysBetweenSettlementAndMaturity / 180); + case 4: // quarterly + return ceil($daysBetweenSettlementAndMaturity / 90); + case 6: // bimonthly + return ceil($daysBetweenSettlementAndMaturity / 60); + case 12: // monthly + return ceil($daysBetweenSettlementAndMaturity / 30); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * COUPPCD + * + * Returns the previous coupon date before the settlement date. + * + * Excel Function: + * COUPPCD(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function COUPPCD($settlement, $maturity, $frequency, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::isValidFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return self::couponFirstPeriodDate($settlement, $maturity, $frequency, false); + } + + + /** + * CUMIPMT + * + * Returns the cumulative interest paid on a loan between the start and end periods. + * + * Excel Function: + * CUMIPMT(rate,nper,pv,start,end[,type]) + * + * @access public + * @category Financial Functions + * @param float $rate The Interest rate + * @param integer $nper The total number of payment periods + * @param float $pv Present Value + * @param integer $start The first period in the calculation. + * Payment periods are numbered beginning with 1. + * @param integer $end The last period in the calculation. + * @param integer $type A number 0 or 1 and indicates when payments are due: + * 0 or omitted At the end of the period. + * 1 At the beginning of the period. + * @return float + */ + public static function CUMIPMT($rate, $nper, $pv, $start, $end, $type = 0) + { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $nper = (int) PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $start = (int) PHPExcel_Calculation_Functions::flattenSingleValue($start); + $end = (int) PHPExcel_Calculation_Functions::flattenSingleValue($end); + $type = (int) PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($start < 1 || $start > $end) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Calculate + $interest = 0; + for ($per = $start; $per <= $end; ++$per) { + $interest += self::IPMT($rate, $per, $nper, $pv, 0, $type); + } + + return $interest; + } + + + /** + * CUMPRINC + * + * Returns the cumulative principal paid on a loan between the start and end periods. + * + * Excel Function: + * CUMPRINC(rate,nper,pv,start,end[,type]) + * + * @access public + * @category Financial Functions + * @param float $rate The Interest rate + * @param integer $nper The total number of payment periods + * @param float $pv Present Value + * @param integer $start The first period in the calculation. + * Payment periods are numbered beginning with 1. + * @param integer $end The last period in the calculation. + * @param integer $type A number 0 or 1 and indicates when payments are due: + * 0 or omitted At the end of the period. + * 1 At the beginning of the period. + * @return float + */ + public static function CUMPRINC($rate, $nper, $pv, $start, $end, $type = 0) + { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $nper = (int) PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $start = (int) PHPExcel_Calculation_Functions::flattenSingleValue($start); + $end = (int) PHPExcel_Calculation_Functions::flattenSingleValue($end); + $type = (int) PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($start < 1 || $start > $end) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Calculate + $principal = 0; + for ($per = $start; $per <= $end; ++$per) { + $principal += self::PPMT($rate, $per, $nper, $pv, 0, $type); + } + + return $principal; + } + + + /** + * DB + * + * Returns the depreciation of an asset for a specified period using the + * fixed-declining balance method. + * This form of depreciation is used if you want to get a higher depreciation value + * at the beginning of the depreciation (as opposed to linear depreciation). The + * depreciation value is reduced with every depreciation period by the depreciation + * already deducted from the initial cost. + * + * Excel Function: + * DB(cost,salvage,life,period[,month]) + * + * @access public + * @category Financial Functions + * @param float cost Initial cost of the asset. + * @param float salvage Value at the end of the depreciation. + * (Sometimes called the salvage value of the asset) + * @param integer life Number of periods over which the asset is depreciated. + * (Sometimes called the useful life of the asset) + * @param integer period The period for which you want to calculate the + * depreciation. Period must use the same units as life. + * @param integer month Number of months in the first year. If month is omitted, + * it defaults to 12. + * @return float + */ + public static function DB($cost, $salvage, $life, $period, $month = 12) + { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $life = PHPExcel_Calculation_Functions::flattenSingleValue($life); + $period = PHPExcel_Calculation_Functions::flattenSingleValue($period); + $month = PHPExcel_Calculation_Functions::flattenSingleValue($month); + + // Validate + if ((is_numeric($cost)) && (is_numeric($salvage)) && (is_numeric($life)) && (is_numeric($period)) && (is_numeric($month))) { + $cost = (float) $cost; + $salvage = (float) $salvage; + $life = (int) $life; + $period = (int) $period; + $month = (int) $month; + if ($cost == 0) { + return 0.0; + } elseif (($cost < 0) || (($salvage / $cost) < 0) || ($life <= 0) || ($period < 1) || ($month < 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + // Set Fixed Depreciation Rate + $fixedDepreciationRate = 1 - pow(($salvage / $cost), (1 / $life)); + $fixedDepreciationRate = round($fixedDepreciationRate, 3); + + // Loop through each period calculating the depreciation + $previousDepreciation = 0; + for ($per = 1; $per <= $period; ++$per) { + if ($per == 1) { + $depreciation = $cost * $fixedDepreciationRate * $month / 12; + } elseif ($per == ($life + 1)) { + $depreciation = ($cost - $previousDepreciation) * $fixedDepreciationRate * (12 - $month) / 12; + } else { + $depreciation = ($cost - $previousDepreciation) * $fixedDepreciationRate; + } + $previousDepreciation += $depreciation; + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $depreciation = round($depreciation, 2); + } + return $depreciation; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * DDB + * + * Returns the depreciation of an asset for a specified period using the + * double-declining balance method or some other method you specify. + * + * Excel Function: + * DDB(cost,salvage,life,period[,factor]) + * + * @access public + * @category Financial Functions + * @param float cost Initial cost of the asset. + * @param float salvage Value at the end of the depreciation. + * (Sometimes called the salvage value of the asset) + * @param integer life Number of periods over which the asset is depreciated. + * (Sometimes called the useful life of the asset) + * @param integer period The period for which you want to calculate the + * depreciation. Period must use the same units as life. + * @param float factor The rate at which the balance declines. + * If factor is omitted, it is assumed to be 2 (the + * double-declining balance method). + * @return float + */ + public static function DDB($cost, $salvage, $life, $period, $factor = 2.0) + { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $life = PHPExcel_Calculation_Functions::flattenSingleValue($life); + $period = PHPExcel_Calculation_Functions::flattenSingleValue($period); + $factor = PHPExcel_Calculation_Functions::flattenSingleValue($factor); + + // Validate + if ((is_numeric($cost)) && (is_numeric($salvage)) && (is_numeric($life)) && (is_numeric($period)) && (is_numeric($factor))) { + $cost = (float) $cost; + $salvage = (float) $salvage; + $life = (int) $life; + $period = (int) $period; + $factor = (float) $factor; + if (($cost <= 0) || (($salvage / $cost) < 0) || ($life <= 0) || ($period < 1) || ($factor <= 0.0) || ($period > $life)) { + return PHPExcel_Calculation_Functions::NaN(); + } + // Set Fixed Depreciation Rate + $fixedDepreciationRate = 1 - pow(($salvage / $cost), (1 / $life)); + $fixedDepreciationRate = round($fixedDepreciationRate, 3); + + // Loop through each period calculating the depreciation + $previousDepreciation = 0; + for ($per = 1; $per <= $period; ++$per) { + $depreciation = min(($cost - $previousDepreciation) * ($factor / $life), ($cost - $salvage - $previousDepreciation)); + $previousDepreciation += $depreciation; + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $depreciation = round($depreciation, 2); + } + return $depreciation; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * DISC + * + * Returns the discount rate for a security. + * + * Excel Function: + * DISC(settlement,maturity,price,redemption[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param integer price The security's price per $100 face value. + * @param integer redemption The security's redemption value per $100 face value. + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function DISC($settlement, $maturity, $price, $redemption, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $price = PHPExcel_Calculation_Functions::flattenSingleValue($price); + $redemption = PHPExcel_Calculation_Functions::flattenSingleValue($redemption); + $basis = PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($price)) && (is_numeric($redemption)) && (is_numeric($basis))) { + $price = (float) $price; + $redemption = (float) $redemption; + $basis = (int) $basis; + if (($price <= 0) || ($redemption <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + + return ((1 - $price / $redemption) / $daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * DOLLARDE + * + * Converts a dollar price expressed as an integer part and a fraction + * part into a dollar price expressed as a decimal number. + * Fractional dollar numbers are sometimes used for security prices. + * + * Excel Function: + * DOLLARDE(fractional_dollar,fraction) + * + * @access public + * @category Financial Functions + * @param float $fractional_dollar Fractional Dollar + * @param integer $fraction Fraction + * @return float + */ + public static function DOLLARDE($fractional_dollar = null, $fraction = 0) + { + $fractional_dollar = PHPExcel_Calculation_Functions::flattenSingleValue($fractional_dollar); + $fraction = (int)PHPExcel_Calculation_Functions::flattenSingleValue($fraction); + + // Validate parameters + if (is_null($fractional_dollar) || $fraction < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($fraction == 0) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $dollars = floor($fractional_dollar); + $cents = fmod($fractional_dollar, 1); + $cents /= $fraction; + $cents *= pow(10, ceil(log10($fraction))); + return $dollars + $cents; + } + + + /** + * DOLLARFR + * + * Converts a dollar price expressed as a decimal number into a dollar price + * expressed as a fraction. + * Fractional dollar numbers are sometimes used for security prices. + * + * Excel Function: + * DOLLARFR(decimal_dollar,fraction) + * + * @access public + * @category Financial Functions + * @param float $decimal_dollar Decimal Dollar + * @param integer $fraction Fraction + * @return float + */ + public static function DOLLARFR($decimal_dollar = null, $fraction = 0) + { + $decimal_dollar = PHPExcel_Calculation_Functions::flattenSingleValue($decimal_dollar); + $fraction = (int)PHPExcel_Calculation_Functions::flattenSingleValue($fraction); + + // Validate parameters + if (is_null($decimal_dollar) || $fraction < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($fraction == 0) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $dollars = floor($decimal_dollar); + $cents = fmod($decimal_dollar, 1); + $cents *= $fraction; + $cents *= pow(10, -ceil(log10($fraction))); + return $dollars + $cents; + } + + + /** + * EFFECT + * + * Returns the effective interest rate given the nominal rate and the number of + * compounding payments per year. + * + * Excel Function: + * EFFECT(nominal_rate,npery) + * + * @access public + * @category Financial Functions + * @param float $nominal_rate Nominal interest rate + * @param integer $npery Number of compounding payments per year + * @return float + */ + public static function EFFECT($nominal_rate = 0, $npery = 0) + { + $nominal_rate = PHPExcel_Calculation_Functions::flattenSingleValue($nominal_rate); + $npery = (int)PHPExcel_Calculation_Functions::flattenSingleValue($npery); + + // Validate parameters + if ($nominal_rate <= 0 || $npery < 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return pow((1 + $nominal_rate / $npery), $npery) - 1; + } + + + /** + * FV + * + * Returns the Future Value of a cash flow with constant payments and interest rate (annuities). + * + * Excel Function: + * FV(rate,nper,pmt[,pv[,type]]) + * + * @access public + * @category Financial Functions + * @param float $rate The interest rate per period + * @param int $nper Total number of payment periods in an annuity + * @param float $pmt The payment made each period: it cannot change over the + * life of the annuity. Typically, pmt contains principal + * and interest but no other fees or taxes. + * @param float $pv Present Value, or the lump-sum amount that a series of + * future payments is worth right now. + * @param integer $type A number 0 or 1 and indicates when payments are due: + * 0 or omitted At the end of the period. + * 1 At the beginning of the period. + * @return float + */ + public static function FV($rate = 0, $nper = 0, $pmt = 0, $pv = 0, $type = 0) + { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $nper = PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pmt = PHPExcel_Calculation_Functions::flattenSingleValue($pmt); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $type = PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Calculate + if (!is_null($rate) && $rate != 0) { + return -$pv * pow(1 + $rate, $nper) - $pmt * (1 + $rate * $type) * (pow(1 + $rate, $nper) - 1) / $rate; + } + return -$pv - $pmt * $nper; + } + + + /** + * FVSCHEDULE + * + * Returns the future value of an initial principal after applying a series of compound interest rates. + * Use FVSCHEDULE to calculate the future value of an investment with a variable or adjustable rate. + * + * Excel Function: + * FVSCHEDULE(principal,schedule) + * + * @param float $principal The present value. + * @param float[] $schedule An array of interest rates to apply. + * @return float + */ + public static function FVSCHEDULE($principal, $schedule) + { + $principal = PHPExcel_Calculation_Functions::flattenSingleValue($principal); + $schedule = PHPExcel_Calculation_Functions::flattenArray($schedule); + + foreach ($schedule as $rate) { + $principal *= 1 + $rate; + } + + return $principal; + } + + + /** + * INTRATE + * + * Returns the interest rate for a fully invested security. + * + * Excel Function: + * INTRATE(settlement,maturity,investment,redemption[,basis]) + * + * @param mixed $settlement The security's settlement date. + * The security settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed $maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param integer $investment The amount invested in the security. + * @param integer $redemption The amount to be received at maturity. + * @param integer $basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function INTRATE($settlement, $maturity, $investment, $redemption, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $investment = PHPExcel_Calculation_Functions::flattenSingleValue($investment); + $redemption = PHPExcel_Calculation_Functions::flattenSingleValue($redemption); + $basis = PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($investment)) && (is_numeric($redemption)) && (is_numeric($basis))) { + $investment = (float) $investment; + $redemption = (float) $redemption; + $basis = (int) $basis; + if (($investment <= 0) || ($redemption <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + + return (($redemption / $investment) - 1) / ($daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * IPMT + * + * Returns the interest payment for a given period for an investment based on periodic, constant payments and a constant interest rate. + * + * Excel Function: + * IPMT(rate,per,nper,pv[,fv][,type]) + * + * @param float $rate Interest rate per period + * @param int $per Period for which we want to find the interest + * @param int $nper Number of periods + * @param float $pv Present Value + * @param float $fv Future Value + * @param int $type Payment type: 0 = at the end of each period, 1 = at the beginning of each period + * @return float + */ + public static function IPMT($rate, $per, $nper, $pv, $fv = 0, $type = 0) + { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $per = (int) PHPExcel_Calculation_Functions::flattenSingleValue($per); + $nper = (int) PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $fv = PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = (int) PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($per <= 0 || $per > $nper) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Calculate + $interestAndPrincipal = self::interestAndPrincipal($rate, $per, $nper, $pv, $fv, $type); + return $interestAndPrincipal[0]; + } + + /** + * IRR + * + * Returns the internal rate of return for a series of cash flows represented by the numbers in values. + * These cash flows do not have to be even, as they would be for an annuity. However, the cash flows must occur + * at regular intervals, such as monthly or annually. The internal rate of return is the interest rate received + * for an investment consisting of payments (negative values) and income (positive values) that occur at regular + * periods. + * + * Excel Function: + * IRR(values[,guess]) + * + * @param float[] $values An array or a reference to cells that contain numbers for which you want + * to calculate the internal rate of return. + * Values must contain at least one positive value and one negative value to + * calculate the internal rate of return. + * @param float $guess A number that you guess is close to the result of IRR + * @return float + */ + public static function IRR($values, $guess = 0.1) + { + if (!is_array($values)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $values = PHPExcel_Calculation_Functions::flattenArray($values); + $guess = PHPExcel_Calculation_Functions::flattenSingleValue($guess); + + // create an initial range, with a root somewhere between 0 and guess + $x1 = 0.0; + $x2 = $guess; + $f1 = self::NPV($x1, $values); + $f2 = self::NPV($x2, $values); + for ($i = 0; $i < FINANCIAL_MAX_ITERATIONS; ++$i) { + if (($f1 * $f2) < 0.0) { + break; + } + if (abs($f1) < abs($f2)) { + $f1 = self::NPV($x1 += 1.6 * ($x1 - $x2), $values); + } else { + $f2 = self::NPV($x2 += 1.6 * ($x2 - $x1), $values); + } + } + if (($f1 * $f2) > 0.0) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + $f = self::NPV($x1, $values); + if ($f < 0.0) { + $rtb = $x1; + $dx = $x2 - $x1; + } else { + $rtb = $x2; + $dx = $x1 - $x2; + } + + for ($i = 0; $i < FINANCIAL_MAX_ITERATIONS; ++$i) { + $dx *= 0.5; + $x_mid = $rtb + $dx; + $f_mid = self::NPV($x_mid, $values); + if ($f_mid <= 0.0) { + $rtb = $x_mid; + } + if ((abs($f_mid) < FINANCIAL_PRECISION) || (abs($dx) < FINANCIAL_PRECISION)) { + return $x_mid; + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * ISPMT + * + * Returns the interest payment for an investment based on an interest rate and a constant payment schedule. + * + * Excel Function: + * =ISPMT(interest_rate, period, number_payments, PV) + * + * interest_rate is the interest rate for the investment + * + * period is the period to calculate the interest rate. It must be betweeen 1 and number_payments. + * + * number_payments is the number of payments for the annuity + * + * PV is the loan amount or present value of the payments + */ + public static function ISPMT() + { + // Return value + $returnValue = 0; + + // Get the parameters + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + $interestRate = array_shift($aArgs); + $period = array_shift($aArgs); + $numberPeriods = array_shift($aArgs); + $principleRemaining = array_shift($aArgs); + + // Calculate + $principlePayment = ($principleRemaining * 1.0) / ($numberPeriods * 1.0); + for ($i=0; $i <= $period; ++$i) { + $returnValue = $interestRate * $principleRemaining * -1; + $principleRemaining -= $principlePayment; + // principle needs to be 0 after the last payment, don't let floating point screw it up + if ($i == $numberPeriods) { + $returnValue = 0; + } + } + return($returnValue); + } + + + /** + * MIRR + * + * Returns the modified internal rate of return for a series of periodic cash flows. MIRR considers both + * the cost of the investment and the interest received on reinvestment of cash. + * + * Excel Function: + * MIRR(values,finance_rate, reinvestment_rate) + * + * @param float[] $values An array or a reference to cells that contain a series of payments and + * income occurring at regular intervals. + * Payments are negative value, income is positive values. + * @param float $finance_rate The interest rate you pay on the money used in the cash flows + * @param float $reinvestment_rate The interest rate you receive on the cash flows as you reinvest them + * @return float + */ + public static function MIRR($values, $finance_rate, $reinvestment_rate) + { + if (!is_array($values)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $values = PHPExcel_Calculation_Functions::flattenArray($values); + $finance_rate = PHPExcel_Calculation_Functions::flattenSingleValue($finance_rate); + $reinvestment_rate = PHPExcel_Calculation_Functions::flattenSingleValue($reinvestment_rate); + $n = count($values); + + $rr = 1.0 + $reinvestment_rate; + $fr = 1.0 + $finance_rate; + + $npv_pos = $npv_neg = 0.0; + foreach ($values as $i => $v) { + if ($v >= 0) { + $npv_pos += $v / pow($rr, $i); + } else { + $npv_neg += $v / pow($fr, $i); + } + } + + if (($npv_neg == 0) || ($npv_pos == 0) || ($reinvestment_rate <= -1)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + $mirr = pow((-$npv_pos * pow($rr, $n)) + / ($npv_neg * ($rr)), (1.0 / ($n - 1))) - 1.0; + + return (is_finite($mirr) ? $mirr : PHPExcel_Calculation_Functions::VALUE()); + } + + + /** + * NOMINAL + * + * Returns the nominal interest rate given the effective rate and the number of compounding payments per year. + * + * @param float $effect_rate Effective interest rate + * @param int $npery Number of compounding payments per year + * @return float + */ + public static function NOMINAL($effect_rate = 0, $npery = 0) + { + $effect_rate = PHPExcel_Calculation_Functions::flattenSingleValue($effect_rate); + $npery = (int)PHPExcel_Calculation_Functions::flattenSingleValue($npery); + + // Validate parameters + if ($effect_rate <= 0 || $npery < 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Calculate + return $npery * (pow($effect_rate + 1, 1 / $npery) - 1); + } + + + /** + * NPER + * + * Returns the number of periods for a cash flow with constant periodic payments (annuities), and interest rate. + * + * @param float $rate Interest rate per period + * @param int $pmt Periodic payment (annuity) + * @param float $pv Present Value + * @param float $fv Future Value + * @param int $type Payment type: 0 = at the end of each period, 1 = at the beginning of each period + * @return float + */ + public static function NPER($rate = 0, $pmt = 0, $pv = 0, $fv = 0, $type = 0) + { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $pmt = PHPExcel_Calculation_Functions::flattenSingleValue($pmt); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $fv = PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Calculate + if (!is_null($rate) && $rate != 0) { + if ($pmt == 0 && $pv == 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return log(($pmt * (1 + $rate * $type) / $rate - $fv) / ($pv + $pmt * (1 + $rate * $type) / $rate)) / log(1 + $rate); + } + if ($pmt == 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return (-$pv -$fv) / $pmt; + } + + /** + * NPV + * + * Returns the Net Present Value of a cash flow series given a discount rate. + * + * @return float + */ + public static function NPV() + { + // Return value + $returnValue = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $rate = array_shift($aArgs); + for ($i = 1; $i <= count($aArgs); ++$i) { + // Is it a numeric value? + if (is_numeric($aArgs[$i - 1])) { + $returnValue += $aArgs[$i - 1] / pow(1 + $rate, $i); + } + } + + // Return + return $returnValue; + } + + /** + * PMT + * + * Returns the constant payment (annuity) for a cash flow with a constant interest rate. + * + * @param float $rate Interest rate per period + * @param int $nper Number of periods + * @param float $pv Present Value + * @param float $fv Future Value + * @param int $type Payment type: 0 = at the end of each period, 1 = at the beginning of each period + * @return float + */ + public static function PMT($rate = 0, $nper = 0, $pv = 0, $fv = 0, $type = 0) + { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $nper = PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $fv = PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Calculate + if (!is_null($rate) && $rate != 0) { + return (-$fv - $pv * pow(1 + $rate, $nper)) / (1 + $rate * $type) / ((pow(1 + $rate, $nper) - 1) / $rate); + } + return (-$pv - $fv) / $nper; + } + + + /** + * PPMT + * + * Returns the interest payment for a given period for an investment based on periodic, constant payments and a constant interest rate. + * + * @param float $rate Interest rate per period + * @param int $per Period for which we want to find the interest + * @param int $nper Number of periods + * @param float $pv Present Value + * @param float $fv Future Value + * @param int $type Payment type: 0 = at the end of each period, 1 = at the beginning of each period + * @return float + */ + public static function PPMT($rate, $per, $nper, $pv, $fv = 0, $type = 0) + { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $per = (int) PHPExcel_Calculation_Functions::flattenSingleValue($per); + $nper = (int) PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $fv = PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = (int) PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($per <= 0 || $per > $nper) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Calculate + $interestAndPrincipal = self::interestAndPrincipal($rate, $per, $nper, $pv, $fv, $type); + return $interestAndPrincipal[1]; + } + + + public static function PRICE($settlement, $maturity, $rate, $yield, $redemption, $frequency, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $rate = (float) PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $yield = (float) PHPExcel_Calculation_Functions::flattenSingleValue($yield); + $redemption = (float) PHPExcel_Calculation_Functions::flattenSingleValue($redemption); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::isValidFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $dsc = self::COUPDAYSNC($settlement, $maturity, $frequency, $basis); + $e = self::COUPDAYS($settlement, $maturity, $frequency, $basis); + $n = self::COUPNUM($settlement, $maturity, $frequency, $basis); + $a = self::COUPDAYBS($settlement, $maturity, $frequency, $basis); + + $baseYF = 1.0 + ($yield / $frequency); + $rfp = 100 * ($rate / $frequency); + $de = $dsc / $e; + + $result = $redemption / pow($baseYF, (--$n + $de)); + for ($k = 0; $k <= $n; ++$k) { + $result += $rfp / (pow($baseYF, ($k + $de))); + } + $result -= $rfp * ($a / $e); + + return $result; + } + + + /** + * PRICEDISC + * + * Returns the price per $100 face value of a discounted security. + * + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param int discount The security's discount rate. + * @param int redemption The security's redemption value per $100 face value. + * @param int basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function PRICEDISC($settlement, $maturity, $discount, $redemption, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $discount = (float) PHPExcel_Calculation_Functions::flattenSingleValue($discount); + $redemption = (float) PHPExcel_Calculation_Functions::flattenSingleValue($redemption); + $basis = (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($discount)) && (is_numeric($redemption)) && (is_numeric($basis))) { + if (($discount <= 0) || ($redemption <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + + return $redemption * (1 - $discount * $daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * PRICEMAT + * + * Returns the price per $100 face value of a security that pays interest at maturity. + * + * @param mixed settlement The security's settlement date. + * The security's settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed issue The security's issue date. + * @param int rate The security's interest rate at date of issue. + * @param int yield The security's annual yield. + * @param int basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function PRICEMAT($settlement, $maturity, $issue, $rate, $yield, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $issue = PHPExcel_Calculation_Functions::flattenSingleValue($issue); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $yield = PHPExcel_Calculation_Functions::flattenSingleValue($yield); + $basis = (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if (is_numeric($rate) && is_numeric($yield)) { + if (($rate <= 0) || ($yield <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysPerYear = self::daysPerYear(PHPExcel_Calculation_DateTime::YEAR($settlement), $basis); + if (!is_numeric($daysPerYear)) { + return $daysPerYear; + } + $daysBetweenIssueAndSettlement = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $settlement, $basis); + if (!is_numeric($daysBetweenIssueAndSettlement)) { + // return date error + return $daysBetweenIssueAndSettlement; + } + $daysBetweenIssueAndSettlement *= $daysPerYear; + $daysBetweenIssueAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $maturity, $basis); + if (!is_numeric($daysBetweenIssueAndMaturity)) { + // return date error + return $daysBetweenIssueAndMaturity; + } + $daysBetweenIssueAndMaturity *= $daysPerYear; + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + $daysBetweenSettlementAndMaturity *= $daysPerYear; + + return ((100 + (($daysBetweenIssueAndMaturity / $daysPerYear) * $rate * 100)) / + (1 + (($daysBetweenSettlementAndMaturity / $daysPerYear) * $yield)) - + (($daysBetweenIssueAndSettlement / $daysPerYear) * $rate * 100)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * PV + * + * Returns the Present Value of a cash flow with constant payments and interest rate (annuities). + * + * @param float $rate Interest rate per period + * @param int $nper Number of periods + * @param float $pmt Periodic payment (annuity) + * @param float $fv Future Value + * @param int $type Payment type: 0 = at the end of each period, 1 = at the beginning of each period + * @return float + */ + public static function PV($rate = 0, $nper = 0, $pmt = 0, $fv = 0, $type = 0) + { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $nper = PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pmt = PHPExcel_Calculation_Functions::flattenSingleValue($pmt); + $fv = PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Calculate + if (!is_null($rate) && $rate != 0) { + return (-$pmt * (1 + $rate * $type) * ((pow(1 + $rate, $nper) - 1) / $rate) - $fv) / pow(1 + $rate, $nper); + } + return -$fv - $pmt * $nper; + } + + + /** + * RATE + * + * Returns the interest rate per period of an annuity. + * RATE is calculated by iteration and can have zero or more solutions. + * If the successive results of RATE do not converge to within 0.0000001 after 20 iterations, + * RATE returns the #NUM! error value. + * + * Excel Function: + * RATE(nper,pmt,pv[,fv[,type[,guess]]]) + * + * @access public + * @category Financial Functions + * @param float nper The total number of payment periods in an annuity. + * @param float pmt The payment made each period and cannot change over the life + * of the annuity. + * Typically, pmt includes principal and interest but no other + * fees or taxes. + * @param float pv The present value - the total amount that a series of future + * payments is worth now. + * @param float fv The future value, or a cash balance you want to attain after + * the last payment is made. If fv is omitted, it is assumed + * to be 0 (the future value of a loan, for example, is 0). + * @param integer type A number 0 or 1 and indicates when payments are due: + * 0 or omitted At the end of the period. + * 1 At the beginning of the period. + * @param float guess Your guess for what the rate will be. + * If you omit guess, it is assumed to be 10 percent. + * @return float + **/ + public static function RATE($nper, $pmt, $pv, $fv = 0.0, $type = 0, $guess = 0.1) + { + $nper = (int) PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pmt = PHPExcel_Calculation_Functions::flattenSingleValue($pmt); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $fv = (is_null($fv)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = (is_null($type)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($type); + $guess = (is_null($guess)) ? 0.1 : PHPExcel_Calculation_Functions::flattenSingleValue($guess); + + $rate = $guess; + if (abs($rate) < FINANCIAL_PRECISION) { + $y = $pv * (1 + $nper * $rate) + $pmt * (1 + $rate * $type) * $nper + $fv; + } else { + $f = exp($nper * log(1 + $rate)); + $y = $pv * $f + $pmt * (1 / $rate + $type) * ($f - 1) + $fv; + } + $y0 = $pv + $pmt * $nper + $fv; + $y1 = $pv * $f + $pmt * (1 / $rate + $type) * ($f - 1) + $fv; + + // find root by secant method + $i = $x0 = 0.0; + $x1 = $rate; + while ((abs($y0 - $y1) > FINANCIAL_PRECISION) && ($i < FINANCIAL_MAX_ITERATIONS)) { + $rate = ($y1 * $x0 - $y0 * $x1) / ($y1 - $y0); + $x0 = $x1; + $x1 = $rate; + if (($nper * abs($pmt)) > ($pv - $fv)) { + $x1 = abs($x1); + } + if (abs($rate) < FINANCIAL_PRECISION) { + $y = $pv * (1 + $nper * $rate) + $pmt * (1 + $rate * $type) * $nper + $fv; + } else { + $f = exp($nper * log(1 + $rate)); + $y = $pv * $f + $pmt * (1 / $rate + $type) * ($f - 1) + $fv; + } + + $y0 = $y1; + $y1 = $y; + ++$i; + } + return $rate; + } + + + /** + * RECEIVED + * + * Returns the price per $100 face value of a discounted security. + * + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param int investment The amount invested in the security. + * @param int discount The security's discount rate. + * @param int basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function RECEIVED($settlement, $maturity, $investment, $discount, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $investment = (float) PHPExcel_Calculation_Functions::flattenSingleValue($investment); + $discount = (float) PHPExcel_Calculation_Functions::flattenSingleValue($discount); + $basis = (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($investment)) && (is_numeric($discount)) && (is_numeric($basis))) { + if (($investment <= 0) || ($discount <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + + return $investment / ( 1 - ($discount * $daysBetweenSettlementAndMaturity)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * SLN + * + * Returns the straight-line depreciation of an asset for one period + * + * @param cost Initial cost of the asset + * @param salvage Value at the end of the depreciation + * @param life Number of periods over which the asset is depreciated + * @return float + */ + public static function SLN($cost, $salvage, $life) + { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $life = PHPExcel_Calculation_Functions::flattenSingleValue($life); + + // Calculate + if ((is_numeric($cost)) && (is_numeric($salvage)) && (is_numeric($life))) { + if ($life < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return ($cost - $salvage) / $life; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * SYD + * + * Returns the sum-of-years' digits depreciation of an asset for a specified period. + * + * @param cost Initial cost of the asset + * @param salvage Value at the end of the depreciation + * @param life Number of periods over which the asset is depreciated + * @param period Period + * @return float + */ + public static function SYD($cost, $salvage, $life, $period) + { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $life = PHPExcel_Calculation_Functions::flattenSingleValue($life); + $period = PHPExcel_Calculation_Functions::flattenSingleValue($period); + + // Calculate + if ((is_numeric($cost)) && (is_numeric($salvage)) && (is_numeric($life)) && (is_numeric($period))) { + if (($life < 1) || ($period > $life)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return (($cost - $salvage) * ($life - $period + 1) * 2) / ($life * ($life + 1)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * TBILLEQ + * + * Returns the bond-equivalent yield for a Treasury bill. + * + * @param mixed settlement The Treasury bill's settlement date. + * The Treasury bill's settlement date is the date after the issue date when the Treasury bill is traded to the buyer. + * @param mixed maturity The Treasury bill's maturity date. + * The maturity date is the date when the Treasury bill expires. + * @param int discount The Treasury bill's discount rate. + * @return float + */ + public static function TBILLEQ($settlement, $maturity, $discount) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $discount = PHPExcel_Calculation_Functions::flattenSingleValue($discount); + + // Use TBILLPRICE for validation + $testValue = self::TBILLPRICE($settlement, $maturity, $discount); + if (is_string($testValue)) { + return $testValue; + } + + if (is_string($maturity = PHPExcel_Calculation_DateTime::getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + ++$maturity; + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity) * 360; + } else { + $daysBetweenSettlementAndMaturity = (PHPExcel_Calculation_DateTime::getDateValue($maturity) - PHPExcel_Calculation_DateTime::getDateValue($settlement)); + } + + return (365 * $discount) / (360 - $discount * $daysBetweenSettlementAndMaturity); + } + + + /** + * TBILLPRICE + * + * Returns the yield for a Treasury bill. + * + * @param mixed settlement The Treasury bill's settlement date. + * The Treasury bill's settlement date is the date after the issue date when the Treasury bill is traded to the buyer. + * @param mixed maturity The Treasury bill's maturity date. + * The maturity date is the date when the Treasury bill expires. + * @param int discount The Treasury bill's discount rate. + * @return float + */ + public static function TBILLPRICE($settlement, $maturity, $discount) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $discount = PHPExcel_Calculation_Functions::flattenSingleValue($discount); + + if (is_string($maturity = PHPExcel_Calculation_DateTime::getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Validate + if (is_numeric($discount)) { + if ($discount <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + ++$maturity; + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity) * 360; + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + } else { + $daysBetweenSettlementAndMaturity = (PHPExcel_Calculation_DateTime::getDateValue($maturity) - PHPExcel_Calculation_DateTime::getDateValue($settlement)); + } + + if ($daysBetweenSettlementAndMaturity > 360) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $price = 100 * (1 - (($discount * $daysBetweenSettlementAndMaturity) / 360)); + if ($price <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return $price; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * TBILLYIELD + * + * Returns the yield for a Treasury bill. + * + * @param mixed settlement The Treasury bill's settlement date. + * The Treasury bill's settlement date is the date after the issue date when the Treasury bill is traded to the buyer. + * @param mixed maturity The Treasury bill's maturity date. + * The maturity date is the date when the Treasury bill expires. + * @param int price The Treasury bill's price per $100 face value. + * @return float + */ + public static function TBILLYIELD($settlement, $maturity, $price) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $price = PHPExcel_Calculation_Functions::flattenSingleValue($price); + + // Validate + if (is_numeric($price)) { + if ($price <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + ++$maturity; + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity) * 360; + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + } else { + $daysBetweenSettlementAndMaturity = (PHPExcel_Calculation_DateTime::getDateValue($maturity) - PHPExcel_Calculation_DateTime::getDateValue($settlement)); + } + + if ($daysBetweenSettlementAndMaturity > 360) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return ((100 - $price) / $price) * (360 / $daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + public static function XIRR($values, $dates, $guess = 0.1) + { + if ((!is_array($values)) && (!is_array($dates))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $values = PHPExcel_Calculation_Functions::flattenArray($values); + $dates = PHPExcel_Calculation_Functions::flattenArray($dates); + $guess = PHPExcel_Calculation_Functions::flattenSingleValue($guess); + if (count($values) != count($dates)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // create an initial range, with a root somewhere between 0 and guess + $x1 = 0.0; + $x2 = $guess; + $f1 = self::XNPV($x1, $values, $dates); + $f2 = self::XNPV($x2, $values, $dates); + for ($i = 0; $i < FINANCIAL_MAX_ITERATIONS; ++$i) { + if (($f1 * $f2) < 0.0) { + break; + } elseif (abs($f1) < abs($f2)) { + $f1 = self::XNPV($x1 += 1.6 * ($x1 - $x2), $values, $dates); + } else { + $f2 = self::XNPV($x2 += 1.6 * ($x2 - $x1), $values, $dates); + } + } + if (($f1 * $f2) > 0.0) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + $f = self::XNPV($x1, $values, $dates); + if ($f < 0.0) { + $rtb = $x1; + $dx = $x2 - $x1; + } else { + $rtb = $x2; + $dx = $x1 - $x2; + } + + for ($i = 0; $i < FINANCIAL_MAX_ITERATIONS; ++$i) { + $dx *= 0.5; + $x_mid = $rtb + $dx; + $f_mid = self::XNPV($x_mid, $values, $dates); + if ($f_mid <= 0.0) { + $rtb = $x_mid; + } + if ((abs($f_mid) < FINANCIAL_PRECISION) || (abs($dx) < FINANCIAL_PRECISION)) { + return $x_mid; + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * XNPV + * + * Returns the net present value for a schedule of cash flows that is not necessarily periodic. + * To calculate the net present value for a series of cash flows that is periodic, use the NPV function. + * + * Excel Function: + * =XNPV(rate,values,dates) + * + * @param float $rate The discount rate to apply to the cash flows. + * @param array of float $values A series of cash flows that corresponds to a schedule of payments in dates. + * The first payment is optional and corresponds to a cost or payment that occurs at the beginning of the investment. + * If the first value is a cost or payment, it must be a negative value. All succeeding payments are discounted based on a 365-day year. + * The series of values must contain at least one positive value and one negative value. + * @param array of mixed $dates A schedule of payment dates that corresponds to the cash flow payments. + * The first payment date indicates the beginning of the schedule of payments. + * All other dates must be later than this date, but they may occur in any order. + * @return float + */ + public static function XNPV($rate, $values, $dates) + { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + if (!is_numeric($rate)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if ((!is_array($values)) || (!is_array($dates))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $values = PHPExcel_Calculation_Functions::flattenArray($values); + $dates = PHPExcel_Calculation_Functions::flattenArray($dates); + $valCount = count($values); + if ($valCount != count($dates)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((min($values) > 0) || (max($values) < 0)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + $xnpv = 0.0; + for ($i = 0; $i < $valCount; ++$i) { + if (!is_numeric($values[$i])) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $xnpv += $values[$i] / pow(1 + $rate, PHPExcel_Calculation_DateTime::DATEDIF($dates[0], $dates[$i], 'd') / 365); + } + return (is_finite($xnpv)) ? $xnpv : PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * YIELDDISC + * + * Returns the annual yield of a security that pays interest at maturity. + * + * @param mixed settlement The security's settlement date. + * The security's settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param int price The security's price per $100 face value. + * @param int redemption The security's redemption value per $100 face value. + * @param int basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function YIELDDISC($settlement, $maturity, $price, $redemption, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $price = PHPExcel_Calculation_Functions::flattenSingleValue($price); + $redemption = PHPExcel_Calculation_Functions::flattenSingleValue($redemption); + $basis = (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if (is_numeric($price) && is_numeric($redemption)) { + if (($price <= 0) || ($redemption <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysPerYear = self::daysPerYear(PHPExcel_Calculation_DateTime::YEAR($settlement), $basis); + if (!is_numeric($daysPerYear)) { + return $daysPerYear; + } + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + $daysBetweenSettlementAndMaturity *= $daysPerYear; + + return (($redemption - $price) / $price) * ($daysPerYear / $daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * YIELDMAT + * + * Returns the annual yield of a security that pays interest at maturity. + * + * @param mixed settlement The security's settlement date. + * The security's settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed issue The security's issue date. + * @param int rate The security's interest rate at date of issue. + * @param int price The security's price per $100 face value. + * @param int basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function YIELDMAT($settlement, $maturity, $issue, $rate, $price, $basis = 0) + { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $issue = PHPExcel_Calculation_Functions::flattenSingleValue($issue); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $price = PHPExcel_Calculation_Functions::flattenSingleValue($price); + $basis = (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if (is_numeric($rate) && is_numeric($price)) { + if (($rate <= 0) || ($price <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysPerYear = self::daysPerYear(PHPExcel_Calculation_DateTime::YEAR($settlement), $basis); + if (!is_numeric($daysPerYear)) { + return $daysPerYear; + } + $daysBetweenIssueAndSettlement = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $settlement, $basis); + if (!is_numeric($daysBetweenIssueAndSettlement)) { + // return date error + return $daysBetweenIssueAndSettlement; + } + $daysBetweenIssueAndSettlement *= $daysPerYear; + $daysBetweenIssueAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $maturity, $basis); + if (!is_numeric($daysBetweenIssueAndMaturity)) { + // return date error + return $daysBetweenIssueAndMaturity; + } + $daysBetweenIssueAndMaturity *= $daysPerYear; + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + $daysBetweenSettlementAndMaturity *= $daysPerYear; + + return ((1 + (($daysBetweenIssueAndMaturity / $daysPerYear) * $rate) - (($price / 100) + (($daysBetweenIssueAndSettlement / $daysPerYear) * $rate))) / + (($price / 100) + (($daysBetweenIssueAndSettlement / $daysPerYear) * $rate))) * + ($daysPerYear / $daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/FormulaParser.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/FormulaParser.php new file mode 100644 index 0000000..893f19e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/FormulaParser.php @@ -0,0 +1,622 @@ +<"; + const OPERATORS_POSTFIX = "%"; + + /** + * Formula + * + * @var string + */ + private $formula; + + /** + * Tokens + * + * @var PHPExcel_Calculation_FormulaToken[] + */ + private $tokens = array(); + + /** + * Create a new PHPExcel_Calculation_FormulaParser + * + * @param string $pFormula Formula to parse + * @throws PHPExcel_Calculation_Exception + */ + public function __construct($pFormula = '') + { + // Check parameters + if (is_null($pFormula)) { + throw new PHPExcel_Calculation_Exception("Invalid parameter passed: formula"); + } + + // Initialise values + $this->formula = trim($pFormula); + // Parse! + $this->parseToTokens(); + } + + /** + * Get Formula + * + * @return string + */ + public function getFormula() + { + return $this->formula; + } + + /** + * Get Token + * + * @param int $pId Token id + * @return string + * @throws PHPExcel_Calculation_Exception + */ + public function getToken($pId = 0) + { + if (isset($this->tokens[$pId])) { + return $this->tokens[$pId]; + } else { + throw new PHPExcel_Calculation_Exception("Token with id $pId does not exist."); + } + } + + /** + * Get Token count + * + * @return string + */ + public function getTokenCount() + { + return count($this->tokens); + } + + /** + * Get Tokens + * + * @return PHPExcel_Calculation_FormulaToken[] + */ + public function getTokens() + { + return $this->tokens; + } + + /** + * Parse to tokens + */ + private function parseToTokens() + { + // No attempt is made to verify formulas; assumes formulas are derived from Excel, where + // they can only exist if valid; stack overflows/underflows sunk as nulls without exceptions. + + // Check if the formula has a valid starting = + $formulaLength = strlen($this->formula); + if ($formulaLength < 2 || $this->formula{0} != '=') { + return; + } + + // Helper variables + $tokens1 = $tokens2 = $stack = array(); + $inString = $inPath = $inRange = $inError = false; + $token = $previousToken = $nextToken = null; + + $index = 1; + $value = ''; + + $ERRORS = array("#NULL!", "#DIV/0!", "#VALUE!", "#REF!", "#NAME?", "#NUM!", "#N/A"); + $COMPARATORS_MULTI = array(">=", "<=", "<>"); + + while ($index < $formulaLength) { + // state-dependent character evaluation (order is important) + + // double-quoted strings + // embeds are doubled + // end marks token + if ($inString) { + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::QUOTE_DOUBLE) { + if ((($index + 2) <= $formulaLength) && ($this->formula{$index + 1} == PHPExcel_Calculation_FormulaParser::QUOTE_DOUBLE)) { + $value .= PHPExcel_Calculation_FormulaParser::QUOTE_DOUBLE; + ++$index; + } else { + $inString = false; + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_TEXT); + $value = ""; + } + } else { + $value .= $this->formula{$index}; + } + ++$index; + continue; + } + + // single-quoted strings (links) + // embeds are double + // end does not mark a token + if ($inPath) { + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::QUOTE_SINGLE) { + if ((($index + 2) <= $formulaLength) && ($this->formula{$index + 1} == PHPExcel_Calculation_FormulaParser::QUOTE_SINGLE)) { + $value .= PHPExcel_Calculation_FormulaParser::QUOTE_SINGLE; + ++$index; + } else { + $inPath = false; + } + } else { + $value .= $this->formula{$index}; + } + ++$index; + continue; + } + + // bracked strings (R1C1 range index or linked workbook name) + // no embeds (changed to "()" by Excel) + // end does not mark a token + if ($inRange) { + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::BRACKET_CLOSE) { + $inRange = false; + } + $value .= $this->formula{$index}; + ++$index; + continue; + } + + // error values + // end marks a token, determined from absolute list of values + if ($inError) { + $value .= $this->formula{$index}; + ++$index; + if (in_array($value, $ERRORS)) { + $inError = false; + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_ERROR); + $value = ""; + } + continue; + } + + // scientific notation check + if (strpos(PHPExcel_Calculation_FormulaParser::OPERATORS_SN, $this->formula{$index}) !== false) { + if (strlen($value) > 1) { + if (preg_match("/^[1-9]{1}(\.[0-9]+)?E{1}$/", $this->formula{$index}) != 0) { + $value .= $this->formula{$index}; + ++$index; + continue; + } + } + } + + // independent character evaluation (order not important) + + // establish state-dependent character evaluations + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::QUOTE_DOUBLE) { + if (strlen($value > 0)) { + // unexpected + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN); + $value = ""; + } + $inString = true; + ++$index; + continue; + } + + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::QUOTE_SINGLE) { + if (strlen($value) > 0) { + // unexpected + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN); + $value = ""; + } + $inPath = true; + ++$index; + continue; + } + + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::BRACKET_OPEN) { + $inRange = true; + $value .= PHPExcel_Calculation_FormulaParser::BRACKET_OPEN; + ++$index; + continue; + } + + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::ERROR_START) { + if (strlen($value) > 0) { + // unexpected + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN); + $value = ""; + } + $inError = true; + $value .= PHPExcel_Calculation_FormulaParser::ERROR_START; + ++$index; + continue; + } + + // mark start and end of arrays and array rows + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::BRACE_OPEN) { + if (strlen($value) > 0) { + // unexpected + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN); + $value = ""; + } + + $tmp = new PHPExcel_Calculation_FormulaToken("ARRAY", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START); + $tokens1[] = $tmp; + $stack[] = clone $tmp; + + $tmp = new PHPExcel_Calculation_FormulaToken("ARRAYROW", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START); + $tokens1[] = $tmp; + $stack[] = clone $tmp; + + ++$index; + continue; + } + + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::SEMICOLON) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + + $tmp = array_pop($stack); + $tmp->setValue(""); + $tmp->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP); + $tokens1[] = $tmp; + + $tmp = new PHPExcel_Calculation_FormulaToken(",", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_ARGUMENT); + $tokens1[] = $tmp; + + $tmp = new PHPExcel_Calculation_FormulaToken("ARRAYROW", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START); + $tokens1[] = $tmp; + $stack[] = clone $tmp; + + ++$index; + continue; + } + + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::BRACE_CLOSE) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + + $tmp = array_pop($stack); + $tmp->setValue(""); + $tmp->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP); + $tokens1[] = $tmp; + + $tmp = array_pop($stack); + $tmp->setValue(""); + $tmp->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP); + $tokens1[] = $tmp; + + ++$index; + continue; + } + + // trim white-space + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::WHITESPACE) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + $tokens1[] = new PHPExcel_Calculation_FormulaToken("", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_WHITESPACE); + ++$index; + while (($this->formula{$index} == PHPExcel_Calculation_FormulaParser::WHITESPACE) && ($index < $formulaLength)) { + ++$index; + } + continue; + } + + // multi-character comparators + if (($index + 2) <= $formulaLength) { + if (in_array(substr($this->formula, $index, 2), $COMPARATORS_MULTI)) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + $tokens1[] = new PHPExcel_Calculation_FormulaToken(substr($this->formula, $index, 2), PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_LOGICAL); + $index += 2; + continue; + } + } + + // standard infix operators + if (strpos(PHPExcel_Calculation_FormulaParser::OPERATORS_INFIX, $this->formula{$index}) !== false) { + if (strlen($value) > 0) { + $tokens1[] =new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + $tokens1[] = new PHPExcel_Calculation_FormulaToken($this->formula{$index}, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX); + ++$index; + continue; + } + + // standard postfix operators (only one) + if (strpos(PHPExcel_Calculation_FormulaParser::OPERATORS_POSTFIX, $this->formula{$index}) !== false) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + $tokens1[] = new PHPExcel_Calculation_FormulaToken($this->formula{$index}, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPOSTFIX); + ++$index; + continue; + } + + // start subexpression or function + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::PAREN_OPEN) { + if (strlen($value) > 0) { + $tmp = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START); + $tokens1[] = $tmp; + $stack[] = clone $tmp; + $value = ""; + } else { + $tmp = new PHPExcel_Calculation_FormulaToken("", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START); + $tokens1[] = $tmp; + $stack[] = clone $tmp; + } + ++$index; + continue; + } + + // function, subexpression, or array parameters, or operand unions + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::COMMA) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + + $tmp = array_pop($stack); + $tmp->setValue(""); + $tmp->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP); + $stack[] = $tmp; + + if ($tmp->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken(",", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_UNION); + } else { + $tokens1[] = new PHPExcel_Calculation_FormulaToken(",", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_ARGUMENT); + } + ++$index; + continue; + } + + // stop subexpression + if ($this->formula{$index} == PHPExcel_Calculation_FormulaParser::PAREN_CLOSE) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + + $tmp = array_pop($stack); + $tmp->setValue(""); + $tmp->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP); + $tokens1[] = $tmp; + + ++$index; + continue; + } + + // token accumulation + $value .= $this->formula{$index}; + ++$index; + } + + // dump remaining accumulation + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + } + + // move tokenList to new set, excluding unnecessary white-space tokens and converting necessary ones to intersections + $tokenCount = count($tokens1); + for ($i = 0; $i < $tokenCount; ++$i) { + $token = $tokens1[$i]; + if (isset($tokens1[$i - 1])) { + $previousToken = $tokens1[$i - 1]; + } else { + $previousToken = null; + } + if (isset($tokens1[$i + 1])) { + $nextToken = $tokens1[$i + 1]; + } else { + $nextToken = null; + } + + if (is_null($token)) { + continue; + } + + if ($token->getTokenType() != PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_WHITESPACE) { + $tokens2[] = $token; + continue; + } + + if (is_null($previousToken)) { + continue; + } + + if (! ( + (($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) && ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + (($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION) && ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + ($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND) + ) ) { + continue; + } + + if (is_null($nextToken)) { + continue; + } + + if (! ( + (($nextToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) && ($nextToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START)) || + (($nextToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION) && ($nextToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START)) || + ($nextToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND) + ) ) { + continue; + } + + $tokens2[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_INTERSECTION); + } + + // move tokens to final list, switching infix "-" operators to prefix when appropriate, switching infix "+" operators + // to noop when appropriate, identifying operand and infix-operator subtypes, and pulling "@" from function names + $this->tokens = array(); + + $tokenCount = count($tokens2); + for ($i = 0; $i < $tokenCount; ++$i) { + $token = $tokens2[$i]; + if (isset($tokens2[$i - 1])) { + $previousToken = $tokens2[$i - 1]; + } else { + $previousToken = null; + } + if (isset($tokens2[$i + 1])) { + $nextToken = $tokens2[$i + 1]; + } else { + $nextToken = null; + } + + if (is_null($token)) { + continue; + } + + if ($token->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX && $token->getValue() == "-") { + if ($i == 0) { + $token->setTokenType(PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPREFIX); + } elseif ((($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) && + ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + (($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION) && + ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + ($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPOSTFIX) || + ($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND)) { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_MATH); + } else { + $token->setTokenType(PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPREFIX); + } + + $this->tokens[] = $token; + continue; + } + + if ($token->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX && $token->getValue() == "+") { + if ($i == 0) { + continue; + } elseif ((($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) && + ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + (($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION) && + ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + ($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPOSTFIX) || + ($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND)) { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_MATH); + } else { + continue; + } + + $this->tokens[] = $token; + continue; + } + + if ($token->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX && + $token->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NOTHING) { + if (strpos("<>=", substr($token->getValue(), 0, 1)) !== false) { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_LOGICAL); + } elseif ($token->getValue() == "&") { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_CONCATENATION); + } else { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_MATH); + } + + $this->tokens[] = $token; + continue; + } + + if ($token->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND && + $token->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NOTHING) { + if (!is_numeric($token->getValue())) { + if (strtoupper($token->getValue()) == "TRUE" || strtoupper($token->getValue() == "FALSE")) { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_LOGICAL); + } else { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_RANGE); + } + } else { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NUMBER); + } + + $this->tokens[] = $token; + continue; + } + + if ($token->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) { + if (strlen($token->getValue() > 0)) { + if (substr($token->getValue(), 0, 1) == "@") { + $token->setValue(substr($token->getValue(), 1)); + } + } + } + + $this->tokens[] = $token; + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/FormulaToken.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/FormulaToken.php new file mode 100644 index 0000000..41c6e3d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/FormulaToken.php @@ -0,0 +1,176 @@ +value = $pValue; + $this->tokenType = $pTokenType; + $this->tokenSubType = $pTokenSubType; + } + + /** + * Get Value + * + * @return string + */ + public function getValue() + { + return $this->value; + } + + /** + * Set Value + * + * @param string $value + */ + public function setValue($value) + { + $this->value = $value; + } + + /** + * Get Token Type (represented by TOKEN_TYPE_*) + * + * @return string + */ + public function getTokenType() + { + return $this->tokenType; + } + + /** + * Set Token Type + * + * @param string $value + */ + public function setTokenType($value = PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN) + { + $this->tokenType = $value; + } + + /** + * Get Token SubType (represented by TOKEN_SUBTYPE_*) + * + * @return string + */ + public function getTokenSubType() + { + return $this->tokenSubType; + } + + /** + * Set Token SubType + * + * @param string $value + */ + public function setTokenSubType($value = PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NOTHING) + { + $this->tokenSubType = $value; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Function.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Function.php new file mode 100644 index 0000000..d58cef2 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Function.php @@ -0,0 +1,148 @@ +category = $pCategory; + $this->excelName = $pExcelName; + $this->phpExcelName = $pPHPExcelName; + } else { + throw new PHPExcel_Calculation_Exception("Invalid parameters passed."); + } + } + + /** + * Get Category (represented by CATEGORY_*) + * + * @return string + */ + public function getCategory() + { + return $this->category; + } + + /** + * Set Category (represented by CATEGORY_*) + * + * @param string $value + * @throws PHPExcel_Calculation_Exception + */ + public function setCategory($value = null) + { + if (!is_null($value)) { + $this->category = $value; + } else { + throw new PHPExcel_Calculation_Exception("Invalid parameter passed."); + } + } + + /** + * Get Excel name + * + * @return string + */ + public function getExcelName() + { + return $this->excelName; + } + + /** + * Set Excel name + * + * @param string $value + */ + public function setExcelName($value) + { + $this->excelName = $value; + } + + /** + * Get PHPExcel name + * + * @return string + */ + public function getPHPExcelName() + { + return $this->phpExcelName; + } + + /** + * Set PHPExcel name + * + * @param string $value + */ + public function setPHPExcelName($value) + { + $this->phpExcelName = $value; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Functions.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Functions.php new file mode 100644 index 0000000..5a1e5ee --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Functions.php @@ -0,0 +1,760 @@ + '#NULL!', + 'divisionbyzero' => '#DIV/0!', + 'value' => '#VALUE!', + 'reference' => '#REF!', + 'name' => '#NAME?', + 'num' => '#NUM!', + 'na' => '#N/A', + 'gettingdata' => '#GETTING_DATA' + ); + + + /** + * Set the Compatibility Mode + * + * @access public + * @category Function Configuration + * @param string $compatibilityMode Compatibility Mode + * Permitted values are: + * PHPExcel_Calculation_Functions::COMPATIBILITY_EXCEL 'Excel' + * PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC 'Gnumeric' + * PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE 'OpenOfficeCalc' + * @return boolean (Success or Failure) + */ + public static function setCompatibilityMode($compatibilityMode) + { + if (($compatibilityMode == self::COMPATIBILITY_EXCEL) || + ($compatibilityMode == self::COMPATIBILITY_GNUMERIC) || + ($compatibilityMode == self::COMPATIBILITY_OPENOFFICE)) { + self::$compatibilityMode = $compatibilityMode; + return true; + } + return false; + } + + + /** + * Return the current Compatibility Mode + * + * @access public + * @category Function Configuration + * @return string Compatibility Mode + * Possible Return values are: + * PHPExcel_Calculation_Functions::COMPATIBILITY_EXCEL 'Excel' + * PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC 'Gnumeric' + * PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE 'OpenOfficeCalc' + */ + public static function getCompatibilityMode() + { + return self::$compatibilityMode; + } + + + /** + * Set the Return Date Format used by functions that return a date/time (Excel, PHP Serialized Numeric or PHP Object) + * + * @access public + * @category Function Configuration + * @param string $returnDateType Return Date Format + * Permitted values are: + * PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC 'P' + * PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT 'O' + * PHPExcel_Calculation_Functions::RETURNDATE_EXCEL 'E' + * @return boolean Success or failure + */ + public static function setReturnDateType($returnDateType) + { + if (($returnDateType == self::RETURNDATE_PHP_NUMERIC) || + ($returnDateType == self::RETURNDATE_PHP_OBJECT) || + ($returnDateType == self::RETURNDATE_EXCEL)) { + self::$returnDateType = $returnDateType; + return true; + } + return false; + } + + + /** + * Return the current Return Date Format for functions that return a date/time (Excel, PHP Serialized Numeric or PHP Object) + * + * @access public + * @category Function Configuration + * @return string Return Date Format + * Possible Return values are: + * PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC 'P' + * PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT 'O' + * PHPExcel_Calculation_Functions::RETURNDATE_EXCEL 'E' + */ + public static function getReturnDateType() + { + return self::$returnDateType; + } + + + /** + * DUMMY + * + * @access public + * @category Error Returns + * @return string #Not Yet Implemented + */ + public static function DUMMY() + { + return '#Not Yet Implemented'; + } + + + /** + * DIV0 + * + * @access public + * @category Error Returns + * @return string #Not Yet Implemented + */ + public static function DIV0() + { + return self::$errorCodes['divisionbyzero']; + } + + + /** + * NA + * + * Excel Function: + * =NA() + * + * Returns the error value #N/A + * #N/A is the error value that means "no value is available." + * + * @access public + * @category Logical Functions + * @return string #N/A! + */ + public static function NA() + { + return self::$errorCodes['na']; + } + + + /** + * NaN + * + * Returns the error value #NUM! + * + * @access public + * @category Error Returns + * @return string #NUM! + */ + public static function NaN() + { + return self::$errorCodes['num']; + } + + + /** + * NAME + * + * Returns the error value #NAME? + * + * @access public + * @category Error Returns + * @return string #NAME? + */ + public static function NAME() + { + return self::$errorCodes['name']; + } + + + /** + * REF + * + * Returns the error value #REF! + * + * @access public + * @category Error Returns + * @return string #REF! + */ + public static function REF() + { + return self::$errorCodes['reference']; + } + + + /** + * NULL + * + * Returns the error value #NULL! + * + * @access public + * @category Error Returns + * @return string #NULL! + */ + public static function NULL() + { + return self::$errorCodes['null']; + } + + + /** + * VALUE + * + * Returns the error value #VALUE! + * + * @access public + * @category Error Returns + * @return string #VALUE! + */ + public static function VALUE() + { + return self::$errorCodes['value']; + } + + + public static function isMatrixValue($idx) + { + return ((substr_count($idx, '.') <= 1) || (preg_match('/\.[A-Z]/', $idx) > 0)); + } + + + public static function isValue($idx) + { + return (substr_count($idx, '.') == 0); + } + + + public static function isCellValue($idx) + { + return (substr_count($idx, '.') > 1); + } + + + public static function ifCondition($condition) + { + $condition = PHPExcel_Calculation_Functions::flattenSingleValue($condition); + if (!isset($condition{0})) { + $condition = '=""'; + } + if (!in_array($condition{0}, array('>', '<', '='))) { + if (!is_numeric($condition)) { + $condition = PHPExcel_Calculation::wrapResult(strtoupper($condition)); + } + return '=' . $condition; + } else { + preg_match('/([<>=]+)(.*)/', $condition, $matches); + list(, $operator, $operand) = $matches; + + if (!is_numeric($operand)) { + $operand = str_replace('"', '""', $operand); + $operand = PHPExcel_Calculation::wrapResult(strtoupper($operand)); + } + + return $operator.$operand; + } + } + + /** + * ERROR_TYPE + * + * @param mixed $value Value to check + * @return boolean + */ + public static function ERROR_TYPE($value = '') + { + $value = self::flattenSingleValue($value); + + $i = 1; + foreach (self::$errorCodes as $errorCode) { + if ($value === $errorCode) { + return $i; + } + ++$i; + } + return self::NA(); + } + + + /** + * IS_BLANK + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_BLANK($value = null) + { + if (!is_null($value)) { + $value = self::flattenSingleValue($value); + } + + return is_null($value); + } + + + /** + * IS_ERR + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_ERR($value = '') + { + $value = self::flattenSingleValue($value); + + return self::IS_ERROR($value) && (!self::IS_NA($value)); + } + + + /** + * IS_ERROR + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_ERROR($value = '') + { + $value = self::flattenSingleValue($value); + + if (!is_string($value)) { + return false; + } + return in_array($value, array_values(self::$errorCodes)); + } + + + /** + * IS_NA + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_NA($value = '') + { + $value = self::flattenSingleValue($value); + + return ($value === self::NA()); + } + + + /** + * IS_EVEN + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_EVEN($value = null) + { + $value = self::flattenSingleValue($value); + + if ($value === null) { + return self::NAME(); + } elseif ((is_bool($value)) || ((is_string($value)) && (!is_numeric($value)))) { + return self::VALUE(); + } + + return ($value % 2 == 0); + } + + + /** + * IS_ODD + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_ODD($value = null) + { + $value = self::flattenSingleValue($value); + + if ($value === null) { + return self::NAME(); + } elseif ((is_bool($value)) || ((is_string($value)) && (!is_numeric($value)))) { + return self::VALUE(); + } + + return (abs($value) % 2 == 1); + } + + + /** + * IS_NUMBER + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_NUMBER($value = null) + { + $value = self::flattenSingleValue($value); + + if (is_string($value)) { + return false; + } + return is_numeric($value); + } + + + /** + * IS_LOGICAL + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_LOGICAL($value = null) + { + $value = self::flattenSingleValue($value); + + return is_bool($value); + } + + + /** + * IS_TEXT + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_TEXT($value = null) + { + $value = self::flattenSingleValue($value); + + return (is_string($value) && !self::IS_ERROR($value)); + } + + + /** + * IS_NONTEXT + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_NONTEXT($value = null) + { + return !self::IS_TEXT($value); + } + + + /** + * VERSION + * + * @return string Version information + */ + public static function VERSION() + { + return 'PHPExcel ##VERSION##, ##DATE##'; + } + + + /** + * N + * + * Returns a value converted to a number + * + * @param value The value you want converted + * @return number N converts values listed in the following table + * If value is or refers to N returns + * A number That number + * A date The serial number of that date + * TRUE 1 + * FALSE 0 + * An error value The error value + * Anything else 0 + */ + public static function N($value = null) + { + while (is_array($value)) { + $value = array_shift($value); + } + + switch (gettype($value)) { + case 'double': + case 'float': + case 'integer': + return $value; + case 'boolean': + return (integer) $value; + case 'string': + // Errors + if ((strlen($value) > 0) && ($value{0} == '#')) { + return $value; + } + break; + } + return 0; + } + + + /** + * TYPE + * + * Returns a number that identifies the type of a value + * + * @param value The value you want tested + * @return number N converts values listed in the following table + * If value is or refers to N returns + * A number 1 + * Text 2 + * Logical Value 4 + * An error value 16 + * Array or Matrix 64 + */ + public static function TYPE($value = null) + { + $value = self::flattenArrayIndexed($value); + if (is_array($value) && (count($value) > 1)) { + end($value); + $a = key($value); + // Range of cells is an error + if (self::isCellValue($a)) { + return 16; + // Test for Matrix + } elseif (self::isMatrixValue($a)) { + return 64; + } + } elseif (empty($value)) { + // Empty Cell + return 1; + } + $value = self::flattenSingleValue($value); + + if (($value === null) || (is_float($value)) || (is_int($value))) { + return 1; + } elseif (is_bool($value)) { + return 4; + } elseif (is_array($value)) { + return 64; + } elseif (is_string($value)) { + // Errors + if ((strlen($value) > 0) && ($value{0} == '#')) { + return 16; + } + return 2; + } + return 0; + } + + + /** + * Convert a multi-dimensional array to a simple 1-dimensional array + * + * @param array $array Array to be flattened + * @return array Flattened array + */ + public static function flattenArray($array) + { + if (!is_array($array)) { + return (array) $array; + } + + $arrayValues = array(); + foreach ($array as $value) { + if (is_array($value)) { + foreach ($value as $val) { + if (is_array($val)) { + foreach ($val as $v) { + $arrayValues[] = $v; + } + } else { + $arrayValues[] = $val; + } + } + } else { + $arrayValues[] = $value; + } + } + + return $arrayValues; + } + + + /** + * Convert a multi-dimensional array to a simple 1-dimensional array, but retain an element of indexing + * + * @param array $array Array to be flattened + * @return array Flattened array + */ + public static function flattenArrayIndexed($array) + { + if (!is_array($array)) { + return (array) $array; + } + + $arrayValues = array(); + foreach ($array as $k1 => $value) { + if (is_array($value)) { + foreach ($value as $k2 => $val) { + if (is_array($val)) { + foreach ($val as $k3 => $v) { + $arrayValues[$k1.'.'.$k2.'.'.$k3] = $v; + } + } else { + $arrayValues[$k1.'.'.$k2] = $val; + } + } + } else { + $arrayValues[$k1] = $value; + } + } + + return $arrayValues; + } + + + /** + * Convert an array to a single scalar value by extracting the first element + * + * @param mixed $value Array or scalar value + * @return mixed + */ + public static function flattenSingleValue($value = '') + { + while (is_array($value)) { + $value = array_pop($value); + } + + return $value; + } +} + + +// +// There are a few mathematical functions that aren't available on all versions of PHP for all platforms +// These functions aren't available in Windows implementations of PHP prior to version 5.3.0 +// So we test if they do exist for this version of PHP/operating platform; and if not we create them +// +if (!function_exists('acosh')) { + function acosh($x) + { + return 2 * log(sqrt(($x + 1) / 2) + sqrt(($x - 1) / 2)); + } // function acosh() +} + +if (!function_exists('asinh')) { + function asinh($x) + { + return log($x + sqrt(1 + $x * $x)); + } // function asinh() +} + +if (!function_exists('atanh')) { + function atanh($x) + { + return (log(1 + $x) - log(1 - $x)) / 2; + } // function atanh() +} + + +// +// Strangely, PHP doesn't have a mb_str_replace multibyte function +// As we'll only ever use this function with UTF-8 characters, we can simply "hard-code" the character set +// +if ((!function_exists('mb_str_replace')) && + (function_exists('mb_substr')) && (function_exists('mb_strlen')) && (function_exists('mb_strpos'))) { + function mb_str_replace($search, $replace, $subject) + { + if (is_array($subject)) { + $ret = array(); + foreach ($subject as $key => $val) { + $ret[$key] = mb_str_replace($search, $replace, $val); + } + return $ret; + } + + foreach ((array) $search as $key => $s) { + if ($s == '' && $s !== 0) { + continue; + } + $r = !is_array($replace) ? $replace : (array_key_exists($key, $replace) ? $replace[$key] : ''); + $pos = mb_strpos($subject, $s, 0, 'UTF-8'); + while ($pos !== false) { + $subject = mb_substr($subject, 0, $pos, 'UTF-8') . $r . mb_substr($subject, $pos + mb_strlen($s, 'UTF-8'), 65535, 'UTF-8'); + $pos = mb_strpos($subject, $s, $pos + mb_strlen($r, 'UTF-8'), 'UTF-8'); + } + } + return $subject; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Logical.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Logical.php new file mode 100644 index 0000000..dd65f01 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Logical.php @@ -0,0 +1,285 @@ + $arg) { + // Is it a boolean value? + if (is_bool($arg)) { + $returnValue = $returnValue && $arg; + } elseif ((is_numeric($arg)) && (!is_string($arg))) { + $returnValue = $returnValue && ($arg != 0); + } elseif (is_string($arg)) { + $arg = strtoupper($arg); + if (($arg == 'TRUE') || ($arg == PHPExcel_Calculation::getTRUE())) { + $arg = true; + } elseif (($arg == 'FALSE') || ($arg == PHPExcel_Calculation::getFALSE())) { + $arg = false; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + $returnValue = $returnValue && ($arg != 0); + } + } + + // Return + if ($argCount < 0) { + return PHPExcel_Calculation_Functions::VALUE(); + } + return $returnValue; + } + + + /** + * LOGICAL_OR + * + * Returns boolean TRUE if any argument is TRUE; returns FALSE if all arguments are FALSE. + * + * Excel Function: + * =OR(logical1[,logical2[, ...]]) + * + * The arguments must evaluate to logical values such as TRUE or FALSE, or the arguments must be arrays + * or references that contain logical values. + * + * Boolean arguments are treated as True or False as appropriate + * Integer or floating point arguments are treated as True, except for 0 or 0.0 which are False + * If any argument value is a string, or a Null, the function returns a #VALUE! error, unless the string holds + * the value TRUE or FALSE, in which case it is evaluated as the corresponding boolean value + * + * @access public + * @category Logical Functions + * @param mixed $arg,... Data values + * @return boolean The logical OR of the arguments. + */ + public static function LOGICAL_OR() + { + // Return value + $returnValue = false; + + // Loop through the arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + $argCount = -1; + foreach ($aArgs as $argCount => $arg) { + // Is it a boolean value? + if (is_bool($arg)) { + $returnValue = $returnValue || $arg; + } elseif ((is_numeric($arg)) && (!is_string($arg))) { + $returnValue = $returnValue || ($arg != 0); + } elseif (is_string($arg)) { + $arg = strtoupper($arg); + if (($arg == 'TRUE') || ($arg == PHPExcel_Calculation::getTRUE())) { + $arg = true; + } elseif (($arg == 'FALSE') || ($arg == PHPExcel_Calculation::getFALSE())) { + $arg = false; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + $returnValue = $returnValue || ($arg != 0); + } + } + + // Return + if ($argCount < 0) { + return PHPExcel_Calculation_Functions::VALUE(); + } + return $returnValue; + } + + + /** + * NOT + * + * Returns the boolean inverse of the argument. + * + * Excel Function: + * =NOT(logical) + * + * The argument must evaluate to a logical value such as TRUE or FALSE + * + * Boolean arguments are treated as True or False as appropriate + * Integer or floating point arguments are treated as True, except for 0 or 0.0 which are False + * If any argument value is a string, or a Null, the function returns a #VALUE! error, unless the string holds + * the value TRUE or FALSE, in which case it is evaluated as the corresponding boolean value + * + * @access public + * @category Logical Functions + * @param mixed $logical A value or expression that can be evaluated to TRUE or FALSE + * @return boolean The boolean inverse of the argument. + */ + public static function NOT($logical = false) + { + $logical = PHPExcel_Calculation_Functions::flattenSingleValue($logical); + if (is_string($logical)) { + $logical = strtoupper($logical); + if (($logical == 'TRUE') || ($logical == PHPExcel_Calculation::getTRUE())) { + return false; + } elseif (($logical == 'FALSE') || ($logical == PHPExcel_Calculation::getFALSE())) { + return true; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + + return !$logical; + } + + /** + * STATEMENT_IF + * + * Returns one value if a condition you specify evaluates to TRUE and another value if it evaluates to FALSE. + * + * Excel Function: + * =IF(condition[,returnIfTrue[,returnIfFalse]]) + * + * Condition is any value or expression that can be evaluated to TRUE or FALSE. + * For example, A10=100 is a logical expression; if the value in cell A10 is equal to 100, + * the expression evaluates to TRUE. Otherwise, the expression evaluates to FALSE. + * This argument can use any comparison calculation operator. + * ReturnIfTrue is the value that is returned if condition evaluates to TRUE. + * For example, if this argument is the text string "Within budget" and the condition argument evaluates to TRUE, + * then the IF function returns the text "Within budget" + * If condition is TRUE and ReturnIfTrue is blank, this argument returns 0 (zero). To display the word TRUE, use + * the logical value TRUE for this argument. + * ReturnIfTrue can be another formula. + * ReturnIfFalse is the value that is returned if condition evaluates to FALSE. + * For example, if this argument is the text string "Over budget" and the condition argument evaluates to FALSE, + * then the IF function returns the text "Over budget". + * If condition is FALSE and ReturnIfFalse is omitted, then the logical value FALSE is returned. + * If condition is FALSE and ReturnIfFalse is blank, then the value 0 (zero) is returned. + * ReturnIfFalse can be another formula. + * + * @access public + * @category Logical Functions + * @param mixed $condition Condition to evaluate + * @param mixed $returnIfTrue Value to return when condition is true + * @param mixed $returnIfFalse Optional value to return when condition is false + * @return mixed The value of returnIfTrue or returnIfFalse determined by condition + */ + public static function STATEMENT_IF($condition = true, $returnIfTrue = 0, $returnIfFalse = false) + { + $condition = (is_null($condition)) ? true : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($condition); + $returnIfTrue = (is_null($returnIfTrue)) ? 0 : PHPExcel_Calculation_Functions::flattenSingleValue($returnIfTrue); + $returnIfFalse = (is_null($returnIfFalse)) ? false : PHPExcel_Calculation_Functions::flattenSingleValue($returnIfFalse); + + return ($condition) ? $returnIfTrue : $returnIfFalse; + } + + + /** + * IFERROR + * + * Excel Function: + * =IFERROR(testValue,errorpart) + * + * @access public + * @category Logical Functions + * @param mixed $testValue Value to check, is also the value returned when no error + * @param mixed $errorpart Value to return when testValue is an error condition + * @return mixed The value of errorpart or testValue determined by error condition + */ + public static function IFERROR($testValue = '', $errorpart = '') + { + $testValue = (is_null($testValue)) ? '' : PHPExcel_Calculation_Functions::flattenSingleValue($testValue); + $errorpart = (is_null($errorpart)) ? '' : PHPExcel_Calculation_Functions::flattenSingleValue($errorpart); + + return self::STATEMENT_IF(PHPExcel_Calculation_Functions::IS_ERROR($testValue), $errorpart, $testValue); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/LookupRef.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/LookupRef.php new file mode 100644 index 0000000..1fe7790 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/LookupRef.php @@ -0,0 +1,879 @@ + '') { + if (strpos($sheetText, ' ') !== false) { + $sheetText = "'".$sheetText."'"; + } + $sheetText .='!'; + } + if ((!is_bool($referenceStyle)) || $referenceStyle) { + $rowRelative = $columnRelative = '$'; + $column = PHPExcel_Cell::stringFromColumnIndex($column-1); + if (($relativity == 2) || ($relativity == 4)) { + $columnRelative = ''; + } + if (($relativity == 3) || ($relativity == 4)) { + $rowRelative = ''; + } + return $sheetText.$columnRelative.$column.$rowRelative.$row; + } else { + if (($relativity == 2) || ($relativity == 4)) { + $column = '['.$column.']'; + } + if (($relativity == 3) || ($relativity == 4)) { + $row = '['.$row.']'; + } + return $sheetText.'R'.$row.'C'.$column; + } + } + + + /** + * COLUMN + * + * Returns the column number of the given cell reference + * If the cell reference is a range of cells, COLUMN returns the column numbers of each column in the reference as a horizontal array. + * If cell reference is omitted, and the function is being called through the calculation engine, then it is assumed to be the + * reference of the cell in which the COLUMN function appears; otherwise this function returns 0. + * + * Excel Function: + * =COLUMN([cellAddress]) + * + * @param cellAddress A reference to a range of cells for which you want the column numbers + * @return integer or array of integer + */ + public static function COLUMN($cellAddress = null) + { + if (is_null($cellAddress) || trim($cellAddress) === '') { + return 0; + } + + if (is_array($cellAddress)) { + foreach ($cellAddress as $columnKey => $value) { + $columnKey = preg_replace('/[^a-z]/i', '', $columnKey); + return (integer) PHPExcel_Cell::columnIndexFromString($columnKey); + } + } else { + if (strpos($cellAddress, '!') !== false) { + list($sheet, $cellAddress) = explode('!', $cellAddress); + } + if (strpos($cellAddress, ':') !== false) { + list($startAddress, $endAddress) = explode(':', $cellAddress); + $startAddress = preg_replace('/[^a-z]/i', '', $startAddress); + $endAddress = preg_replace('/[^a-z]/i', '', $endAddress); + $returnValue = array(); + do { + $returnValue[] = (integer) PHPExcel_Cell::columnIndexFromString($startAddress); + } while ($startAddress++ != $endAddress); + return $returnValue; + } else { + $cellAddress = preg_replace('/[^a-z]/i', '', $cellAddress); + return (integer) PHPExcel_Cell::columnIndexFromString($cellAddress); + } + } + } + + + /** + * COLUMNS + * + * Returns the number of columns in an array or reference. + * + * Excel Function: + * =COLUMNS(cellAddress) + * + * @param cellAddress An array or array formula, or a reference to a range of cells for which you want the number of columns + * @return integer The number of columns in cellAddress + */ + public static function COLUMNS($cellAddress = null) + { + if (is_null($cellAddress) || $cellAddress === '') { + return 1; + } elseif (!is_array($cellAddress)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + reset($cellAddress); + $isMatrix = (is_numeric(key($cellAddress))); + list($columns, $rows) = PHPExcel_Calculation::_getMatrixDimensions($cellAddress); + + if ($isMatrix) { + return $rows; + } else { + return $columns; + } + } + + + /** + * ROW + * + * Returns the row number of the given cell reference + * If the cell reference is a range of cells, ROW returns the row numbers of each row in the reference as a vertical array. + * If cell reference is omitted, and the function is being called through the calculation engine, then it is assumed to be the + * reference of the cell in which the ROW function appears; otherwise this function returns 0. + * + * Excel Function: + * =ROW([cellAddress]) + * + * @param cellAddress A reference to a range of cells for which you want the row numbers + * @return integer or array of integer + */ + public static function ROW($cellAddress = null) + { + if (is_null($cellAddress) || trim($cellAddress) === '') { + return 0; + } + + if (is_array($cellAddress)) { + foreach ($cellAddress as $columnKey => $rowValue) { + foreach ($rowValue as $rowKey => $cellValue) { + return (integer) preg_replace('/[^0-9]/i', '', $rowKey); + } + } + } else { + if (strpos($cellAddress, '!') !== false) { + list($sheet, $cellAddress) = explode('!', $cellAddress); + } + if (strpos($cellAddress, ':') !== false) { + list($startAddress, $endAddress) = explode(':', $cellAddress); + $startAddress = preg_replace('/[^0-9]/', '', $startAddress); + $endAddress = preg_replace('/[^0-9]/', '', $endAddress); + $returnValue = array(); + do { + $returnValue[][] = (integer) $startAddress; + } while ($startAddress++ != $endAddress); + return $returnValue; + } else { + list($cellAddress) = explode(':', $cellAddress); + return (integer) preg_replace('/[^0-9]/', '', $cellAddress); + } + } + } + + + /** + * ROWS + * + * Returns the number of rows in an array or reference. + * + * Excel Function: + * =ROWS(cellAddress) + * + * @param cellAddress An array or array formula, or a reference to a range of cells for which you want the number of rows + * @return integer The number of rows in cellAddress + */ + public static function ROWS($cellAddress = null) + { + if (is_null($cellAddress) || $cellAddress === '') { + return 1; + } elseif (!is_array($cellAddress)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + reset($cellAddress); + $isMatrix = (is_numeric(key($cellAddress))); + list($columns, $rows) = PHPExcel_Calculation::_getMatrixDimensions($cellAddress); + + if ($isMatrix) { + return $columns; + } else { + return $rows; + } + } + + + /** + * HYPERLINK + * + * Excel Function: + * =HYPERLINK(linkURL,displayName) + * + * @access public + * @category Logical Functions + * @param string $linkURL Value to check, is also the value returned when no error + * @param string $displayName Value to return when testValue is an error condition + * @param PHPExcel_Cell $pCell The cell to set the hyperlink in + * @return mixed The value of $displayName (or $linkURL if $displayName was blank) + */ + public static function HYPERLINK($linkURL = '', $displayName = null, PHPExcel_Cell $pCell = null) + { + $args = func_get_args(); + $pCell = array_pop($args); + + $linkURL = (is_null($linkURL)) ? '' : PHPExcel_Calculation_Functions::flattenSingleValue($linkURL); + $displayName = (is_null($displayName)) ? '' : PHPExcel_Calculation_Functions::flattenSingleValue($displayName); + + if ((!is_object($pCell)) || (trim($linkURL) == '')) { + return PHPExcel_Calculation_Functions::REF(); + } + + if ((is_object($displayName)) || trim($displayName) == '') { + $displayName = $linkURL; + } + + $pCell->getHyperlink()->setUrl($linkURL); + $pCell->getHyperlink()->setTooltip($displayName); + + return $displayName; + } + + + /** + * INDIRECT + * + * Returns the reference specified by a text string. + * References are immediately evaluated to display their contents. + * + * Excel Function: + * =INDIRECT(cellAddress) + * + * NOTE - INDIRECT() does not yet support the optional a1 parameter introduced in Excel 2010 + * + * @param cellAddress $cellAddress The cell address of the current cell (containing this formula) + * @param PHPExcel_Cell $pCell The current cell (containing this formula) + * @return mixed The cells referenced by cellAddress + * + * @todo Support for the optional a1 parameter introduced in Excel 2010 + * + */ + public static function INDIRECT($cellAddress = null, PHPExcel_Cell $pCell = null) + { + $cellAddress = PHPExcel_Calculation_Functions::flattenSingleValue($cellAddress); + if (is_null($cellAddress) || $cellAddress === '') { + return PHPExcel_Calculation_Functions::REF(); + } + + $cellAddress1 = $cellAddress; + $cellAddress2 = null; + if (strpos($cellAddress, ':') !== false) { + list($cellAddress1, $cellAddress2) = explode(':', $cellAddress); + } + + if ((!preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_CELLREF.'$/i', $cellAddress1, $matches)) || + ((!is_null($cellAddress2)) && (!preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_CELLREF.'$/i', $cellAddress2, $matches)))) { + if (!preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_NAMEDRANGE.'$/i', $cellAddress1, $matches)) { + return PHPExcel_Calculation_Functions::REF(); + } + + if (strpos($cellAddress, '!') !== false) { + list($sheetName, $cellAddress) = explode('!', $cellAddress); + $sheetName = trim($sheetName, "'"); + $pSheet = $pCell->getWorksheet()->getParent()->getSheetByName($sheetName); + } else { + $pSheet = $pCell->getWorksheet(); + } + + return PHPExcel_Calculation::getInstance()->extractNamedRange($cellAddress, $pSheet, false); + } + + if (strpos($cellAddress, '!') !== false) { + list($sheetName, $cellAddress) = explode('!', $cellAddress); + $sheetName = trim($sheetName, "'"); + $pSheet = $pCell->getWorksheet()->getParent()->getSheetByName($sheetName); + } else { + $pSheet = $pCell->getWorksheet(); + } + + return PHPExcel_Calculation::getInstance()->extractCellRange($cellAddress, $pSheet, false); + } + + + /** + * OFFSET + * + * Returns a reference to a range that is a specified number of rows and columns from a cell or range of cells. + * The reference that is returned can be a single cell or a range of cells. You can specify the number of rows and + * the number of columns to be returned. + * + * Excel Function: + * =OFFSET(cellAddress, rows, cols, [height], [width]) + * + * @param cellAddress The reference from which you want to base the offset. Reference must refer to a cell or + * range of adjacent cells; otherwise, OFFSET returns the #VALUE! error value. + * @param rows The number of rows, up or down, that you want the upper-left cell to refer to. + * Using 5 as the rows argument specifies that the upper-left cell in the reference is + * five rows below reference. Rows can be positive (which means below the starting reference) + * or negative (which means above the starting reference). + * @param cols The number of columns, to the left or right, that you want the upper-left cell of the result + * to refer to. Using 5 as the cols argument specifies that the upper-left cell in the + * reference is five columns to the right of reference. Cols can be positive (which means + * to the right of the starting reference) or negative (which means to the left of the + * starting reference). + * @param height The height, in number of rows, that you want the returned reference to be. Height must be a positive number. + * @param width The width, in number of columns, that you want the returned reference to be. Width must be a positive number. + * @return string A reference to a cell or range of cells + */ + public static function OFFSET($cellAddress = null, $rows = 0, $columns = 0, $height = null, $width = null) + { + $rows = PHPExcel_Calculation_Functions::flattenSingleValue($rows); + $columns = PHPExcel_Calculation_Functions::flattenSingleValue($columns); + $height = PHPExcel_Calculation_Functions::flattenSingleValue($height); + $width = PHPExcel_Calculation_Functions::flattenSingleValue($width); + if ($cellAddress == null) { + return 0; + } + + $args = func_get_args(); + $pCell = array_pop($args); + if (!is_object($pCell)) { + return PHPExcel_Calculation_Functions::REF(); + } + + $sheetName = null; + if (strpos($cellAddress, "!")) { + list($sheetName, $cellAddress) = explode("!", $cellAddress); + $sheetName = trim($sheetName, "'"); + } + if (strpos($cellAddress, ":")) { + list($startCell, $endCell) = explode(":", $cellAddress); + } else { + $startCell = $endCell = $cellAddress; + } + list($startCellColumn, $startCellRow) = PHPExcel_Cell::coordinateFromString($startCell); + list($endCellColumn, $endCellRow) = PHPExcel_Cell::coordinateFromString($endCell); + + $startCellRow += $rows; + $startCellColumn = PHPExcel_Cell::columnIndexFromString($startCellColumn) - 1; + $startCellColumn += $columns; + + if (($startCellRow <= 0) || ($startCellColumn < 0)) { + return PHPExcel_Calculation_Functions::REF(); + } + $endCellColumn = PHPExcel_Cell::columnIndexFromString($endCellColumn) - 1; + if (($width != null) && (!is_object($width))) { + $endCellColumn = $startCellColumn + $width - 1; + } else { + $endCellColumn += $columns; + } + $startCellColumn = PHPExcel_Cell::stringFromColumnIndex($startCellColumn); + + if (($height != null) && (!is_object($height))) { + $endCellRow = $startCellRow + $height - 1; + } else { + $endCellRow += $rows; + } + + if (($endCellRow <= 0) || ($endCellColumn < 0)) { + return PHPExcel_Calculation_Functions::REF(); + } + $endCellColumn = PHPExcel_Cell::stringFromColumnIndex($endCellColumn); + + $cellAddress = $startCellColumn.$startCellRow; + if (($startCellColumn != $endCellColumn) || ($startCellRow != $endCellRow)) { + $cellAddress .= ':'.$endCellColumn.$endCellRow; + } + + if ($sheetName !== null) { + $pSheet = $pCell->getWorksheet()->getParent()->getSheetByName($sheetName); + } else { + $pSheet = $pCell->getWorksheet(); + } + + return PHPExcel_Calculation::getInstance()->extractCellRange($cellAddress, $pSheet, false); + } + + + /** + * CHOOSE + * + * Uses lookup_value to return a value from the list of value arguments. + * Use CHOOSE to select one of up to 254 values based on the lookup_value. + * + * Excel Function: + * =CHOOSE(index_num, value1, [value2], ...) + * + * @param index_num Specifies which value argument is selected. + * Index_num must be a number between 1 and 254, or a formula or reference to a cell containing a number + * between 1 and 254. + * @param value1... Value1 is required, subsequent values are optional. + * Between 1 to 254 value arguments from which CHOOSE selects a value or an action to perform based on + * index_num. The arguments can be numbers, cell references, defined names, formulas, functions, or + * text. + * @return mixed The selected value + */ + public static function CHOOSE() + { + $chooseArgs = func_get_args(); + $chosenEntry = PHPExcel_Calculation_Functions::flattenArray(array_shift($chooseArgs)); + $entryCount = count($chooseArgs) - 1; + + if (is_array($chosenEntry)) { + $chosenEntry = array_shift($chosenEntry); + } + if ((is_numeric($chosenEntry)) && (!is_bool($chosenEntry))) { + --$chosenEntry; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + $chosenEntry = floor($chosenEntry); + if (($chosenEntry < 0) || ($chosenEntry > $entryCount)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (is_array($chooseArgs[$chosenEntry])) { + return PHPExcel_Calculation_Functions::flattenArray($chooseArgs[$chosenEntry]); + } else { + return $chooseArgs[$chosenEntry]; + } + } + + + /** + * MATCH + * + * The MATCH function searches for a specified item in a range of cells + * + * Excel Function: + * =MATCH(lookup_value, lookup_array, [match_type]) + * + * @param lookup_value The value that you want to match in lookup_array + * @param lookup_array The range of cells being searched + * @param match_type The number -1, 0, or 1. -1 means above, 0 means exact match, 1 means below. If match_type is 1 or -1, the list has to be ordered. + * @return integer The relative position of the found item + */ + public static function MATCH($lookup_value, $lookup_array, $match_type = 1) + { + $lookup_array = PHPExcel_Calculation_Functions::flattenArray($lookup_array); + $lookup_value = PHPExcel_Calculation_Functions::flattenSingleValue($lookup_value); + $match_type = (is_null($match_type)) ? 1 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($match_type); + // MATCH is not case sensitive + $lookup_value = strtolower($lookup_value); + + // lookup_value type has to be number, text, or logical values + if ((!is_numeric($lookup_value)) && (!is_string($lookup_value)) && (!is_bool($lookup_value))) { + return PHPExcel_Calculation_Functions::NA(); + } + + // match_type is 0, 1 or -1 + if (($match_type !== 0) && ($match_type !== -1) && ($match_type !== 1)) { + return PHPExcel_Calculation_Functions::NA(); + } + + // lookup_array should not be empty + $lookupArraySize = count($lookup_array); + if ($lookupArraySize <= 0) { + return PHPExcel_Calculation_Functions::NA(); + } + + // lookup_array should contain only number, text, or logical values, or empty (null) cells + foreach ($lookup_array as $i => $lookupArrayValue) { + // check the type of the value + if ((!is_numeric($lookupArrayValue)) && (!is_string($lookupArrayValue)) && + (!is_bool($lookupArrayValue)) && (!is_null($lookupArrayValue))) { + return PHPExcel_Calculation_Functions::NA(); + } + // convert strings to lowercase for case-insensitive testing + if (is_string($lookupArrayValue)) { + $lookup_array[$i] = strtolower($lookupArrayValue); + } + if ((is_null($lookupArrayValue)) && (($match_type == 1) || ($match_type == -1))) { + $lookup_array = array_slice($lookup_array, 0, $i-1); + } + } + + // if match_type is 1 or -1, the list has to be ordered + if ($match_type == 1) { + asort($lookup_array); + $keySet = array_keys($lookup_array); + } elseif ($match_type == -1) { + arsort($lookup_array); + $keySet = array_keys($lookup_array); + } + + // ** + // find the match + // ** + foreach ($lookup_array as $i => $lookupArrayValue) { + if (($match_type == 0) && ($lookupArrayValue == $lookup_value)) { + // exact match + return ++$i; + } elseif (($match_type == -1) && ($lookupArrayValue <= $lookup_value)) { + $i = array_search($i, $keySet); + // if match_type is -1 <=> find the smallest value that is greater than or equal to lookup_value + if ($i < 1) { + // 1st cell was already smaller than the lookup_value + break; + } else { + // the previous cell was the match + return $keySet[$i-1]+1; + } + } elseif (($match_type == 1) && ($lookupArrayValue >= $lookup_value)) { + $i = array_search($i, $keySet); + // if match_type is 1 <=> find the largest value that is less than or equal to lookup_value + if ($i < 1) { + // 1st cell was already bigger than the lookup_value + break; + } else { + // the previous cell was the match + return $keySet[$i-1]+1; + } + } + } + + // unsuccessful in finding a match, return #N/A error value + return PHPExcel_Calculation_Functions::NA(); + } + + + /** + * INDEX + * + * Uses an index to choose a value from a reference or array + * + * Excel Function: + * =INDEX(range_array, row_num, [column_num]) + * + * @param range_array A range of cells or an array constant + * @param row_num The row in array from which to return a value. If row_num is omitted, column_num is required. + * @param column_num The column in array from which to return a value. If column_num is omitted, row_num is required. + * @return mixed the value of a specified cell or array of cells + */ + public static function INDEX($arrayValues, $rowNum = 0, $columnNum = 0) + { + if (($rowNum < 0) || ($columnNum < 0)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (!is_array($arrayValues)) { + return PHPExcel_Calculation_Functions::REF(); + } + + $rowKeys = array_keys($arrayValues); + $columnKeys = @array_keys($arrayValues[$rowKeys[0]]); + + if ($columnNum > count($columnKeys)) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($columnNum == 0) { + if ($rowNum == 0) { + return $arrayValues; + } + $rowNum = $rowKeys[--$rowNum]; + $returnArray = array(); + foreach ($arrayValues as $arrayColumn) { + if (is_array($arrayColumn)) { + if (isset($arrayColumn[$rowNum])) { + $returnArray[] = $arrayColumn[$rowNum]; + } else { + return $arrayValues[$rowNum]; + } + } else { + return $arrayValues[$rowNum]; + } + } + return $returnArray; + } + $columnNum = $columnKeys[--$columnNum]; + if ($rowNum > count($rowKeys)) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($rowNum == 0) { + return $arrayValues[$columnNum]; + } + $rowNum = $rowKeys[--$rowNum]; + + return $arrayValues[$rowNum][$columnNum]; + } + + + /** + * TRANSPOSE + * + * @param array $matrixData A matrix of values + * @return array + * + * Unlike the Excel TRANSPOSE function, which will only work on a single row or column, this function will transpose a full matrix. + */ + public static function TRANSPOSE($matrixData) + { + $returnMatrix = array(); + if (!is_array($matrixData)) { + $matrixData = array(array($matrixData)); + } + + $column = 0; + foreach ($matrixData as $matrixRow) { + $row = 0; + foreach ($matrixRow as $matrixCell) { + $returnMatrix[$row][$column] = $matrixCell; + ++$row; + } + ++$column; + } + return $returnMatrix; + } + + + private static function vlookupSort($a, $b) + { + reset($a); + $firstColumn = key($a); + if (($aLower = strtolower($a[$firstColumn])) == ($bLower = strtolower($b[$firstColumn]))) { + return 0; + } + return ($aLower < $bLower) ? -1 : 1; + } + + + /** + * VLOOKUP + * The VLOOKUP function searches for value in the left-most column of lookup_array and returns the value in the same row based on the index_number. + * @param lookup_value The value that you want to match in lookup_array + * @param lookup_array The range of cells being searched + * @param index_number The column number in table_array from which the matching value must be returned. The first column is 1. + * @param not_exact_match Determines if you are looking for an exact match based on lookup_value. + * @return mixed The value of the found cell + */ + public static function VLOOKUP($lookup_value, $lookup_array, $index_number, $not_exact_match = true) + { + $lookup_value = PHPExcel_Calculation_Functions::flattenSingleValue($lookup_value); + $index_number = PHPExcel_Calculation_Functions::flattenSingleValue($index_number); + $not_exact_match = PHPExcel_Calculation_Functions::flattenSingleValue($not_exact_match); + + // index_number must be greater than or equal to 1 + if ($index_number < 1) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // index_number must be less than or equal to the number of columns in lookup_array + if ((!is_array($lookup_array)) || (empty($lookup_array))) { + return PHPExcel_Calculation_Functions::REF(); + } else { + $f = array_keys($lookup_array); + $firstRow = array_pop($f); + if ((!is_array($lookup_array[$firstRow])) || ($index_number > count($lookup_array[$firstRow]))) { + return PHPExcel_Calculation_Functions::REF(); + } else { + $columnKeys = array_keys($lookup_array[$firstRow]); + $returnColumn = $columnKeys[--$index_number]; + $firstColumn = array_shift($columnKeys); + } + } + + if (!$not_exact_match) { + uasort($lookup_array, array('self', 'vlookupSort')); + } + + $rowNumber = $rowValue = false; + foreach ($lookup_array as $rowKey => $rowData) { + if ((is_numeric($lookup_value) && is_numeric($rowData[$firstColumn]) && ($rowData[$firstColumn] > $lookup_value)) || + (!is_numeric($lookup_value) && !is_numeric($rowData[$firstColumn]) && (strtolower($rowData[$firstColumn]) > strtolower($lookup_value)))) { + break; + } + $rowNumber = $rowKey; + $rowValue = $rowData[$firstColumn]; + } + + if ($rowNumber !== false) { + if ((!$not_exact_match) && ($rowValue != $lookup_value)) { + // if an exact match is required, we have what we need to return an appropriate response + return PHPExcel_Calculation_Functions::NA(); + } else { + // otherwise return the appropriate value + return $lookup_array[$rowNumber][$returnColumn]; + } + } + + return PHPExcel_Calculation_Functions::NA(); + } + + + /** + * HLOOKUP + * The HLOOKUP function searches for value in the top-most row of lookup_array and returns the value in the same column based on the index_number. + * @param lookup_value The value that you want to match in lookup_array + * @param lookup_array The range of cells being searched + * @param index_number The row number in table_array from which the matching value must be returned. The first row is 1. + * @param not_exact_match Determines if you are looking for an exact match based on lookup_value. + * @return mixed The value of the found cell + */ + public static function HLOOKUP($lookup_value, $lookup_array, $index_number, $not_exact_match = true) + { + $lookup_value = PHPExcel_Calculation_Functions::flattenSingleValue($lookup_value); + $index_number = PHPExcel_Calculation_Functions::flattenSingleValue($index_number); + $not_exact_match = PHPExcel_Calculation_Functions::flattenSingleValue($not_exact_match); + + // index_number must be greater than or equal to 1 + if ($index_number < 1) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // index_number must be less than or equal to the number of columns in lookup_array + if ((!is_array($lookup_array)) || (empty($lookup_array))) { + return PHPExcel_Calculation_Functions::REF(); + } else { + $f = array_keys($lookup_array); + $firstRow = array_pop($f); + if ((!is_array($lookup_array[$firstRow])) || ($index_number > count($lookup_array[$firstRow]))) { + return PHPExcel_Calculation_Functions::REF(); + } else { + $columnKeys = array_keys($lookup_array[$firstRow]); + $firstkey = $f[0] - 1; + $returnColumn = $firstkey + $index_number; + $firstColumn = array_shift($f); + } + } + + if (!$not_exact_match) { + $firstRowH = asort($lookup_array[$firstColumn]); + } + + $rowNumber = $rowValue = false; + foreach ($lookup_array[$firstColumn] as $rowKey => $rowData) { + if ((is_numeric($lookup_value) && is_numeric($rowData) && ($rowData > $lookup_value)) || + (!is_numeric($lookup_value) && !is_numeric($rowData) && (strtolower($rowData) > strtolower($lookup_value)))) { + break; + } + $rowNumber = $rowKey; + $rowValue = $rowData; + } + + if ($rowNumber !== false) { + if ((!$not_exact_match) && ($rowValue != $lookup_value)) { + // if an exact match is required, we have what we need to return an appropriate response + return PHPExcel_Calculation_Functions::NA(); + } else { + // otherwise return the appropriate value + return $lookup_array[$returnColumn][$rowNumber]; + } + } + + return PHPExcel_Calculation_Functions::NA(); + } + + + /** + * LOOKUP + * The LOOKUP function searches for value either from a one-row or one-column range or from an array. + * @param lookup_value The value that you want to match in lookup_array + * @param lookup_vector The range of cells being searched + * @param result_vector The column from which the matching value must be returned + * @return mixed The value of the found cell + */ + public static function LOOKUP($lookup_value, $lookup_vector, $result_vector = null) + { + $lookup_value = PHPExcel_Calculation_Functions::flattenSingleValue($lookup_value); + + if (!is_array($lookup_vector)) { + return PHPExcel_Calculation_Functions::NA(); + } + $lookupRows = count($lookup_vector); + $l = array_keys($lookup_vector); + $l = array_shift($l); + $lookupColumns = count($lookup_vector[$l]); + if ((($lookupRows == 1) && ($lookupColumns > 1)) || (($lookupRows == 2) && ($lookupColumns != 2))) { + $lookup_vector = self::TRANSPOSE($lookup_vector); + $lookupRows = count($lookup_vector); + $l = array_keys($lookup_vector); + $lookupColumns = count($lookup_vector[array_shift($l)]); + } + + if (is_null($result_vector)) { + $result_vector = $lookup_vector; + } + $resultRows = count($result_vector); + $l = array_keys($result_vector); + $l = array_shift($l); + $resultColumns = count($result_vector[$l]); + if ((($resultRows == 1) && ($resultColumns > 1)) || (($resultRows == 2) && ($resultColumns != 2))) { + $result_vector = self::TRANSPOSE($result_vector); + $resultRows = count($result_vector); + $r = array_keys($result_vector); + $resultColumns = count($result_vector[array_shift($r)]); + } + + if ($lookupRows == 2) { + $result_vector = array_pop($lookup_vector); + $lookup_vector = array_shift($lookup_vector); + } + if ($lookupColumns != 2) { + foreach ($lookup_vector as &$value) { + if (is_array($value)) { + $k = array_keys($value); + $key1 = $key2 = array_shift($k); + $key2++; + $dataValue1 = $value[$key1]; + } else { + $key1 = 0; + $key2 = 1; + $dataValue1 = $value; + } + $dataValue2 = array_shift($result_vector); + if (is_array($dataValue2)) { + $dataValue2 = array_shift($dataValue2); + } + $value = array($key1 => $dataValue1, $key2 => $dataValue2); + } + unset($value); + } + + return self::VLOOKUP($lookup_value, $lookup_vector, 2); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/MathTrig.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/MathTrig.php new file mode 100644 index 0000000..894ba9c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/MathTrig.php @@ -0,0 +1,1459 @@ + 1; --$i) { + if (($value % $i) == 0) { + $factorArray = array_merge($factorArray, self::factors($value / $i)); + $factorArray = array_merge($factorArray, self::factors($i)); + if ($i <= sqrt($value)) { + break; + } + } + } + if (!empty($factorArray)) { + rsort($factorArray); + return $factorArray; + } else { + return array((integer) $value); + } + } + + + private static function romanCut($num, $n) + { + return ($num - ($num % $n ) ) / $n; + } + + + /** + * ATAN2 + * + * This function calculates the arc tangent of the two variables x and y. It is similar to + * calculating the arc tangent of y ÷ x, except that the signs of both arguments are used + * to determine the quadrant of the result. + * The arctangent is the angle from the x-axis to a line containing the origin (0, 0) and a + * point with coordinates (xCoordinate, yCoordinate). The angle is given in radians between + * -pi and pi, excluding -pi. + * + * Note that the Excel ATAN2() function accepts its arguments in the reverse order to the standard + * PHP atan2() function, so we need to reverse them here before calling the PHP atan() function. + * + * Excel Function: + * ATAN2(xCoordinate,yCoordinate) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $xCoordinate The x-coordinate of the point. + * @param float $yCoordinate The y-coordinate of the point. + * @return float The inverse tangent of the specified x- and y-coordinates. + */ + public static function ATAN2($xCoordinate = null, $yCoordinate = null) + { + $xCoordinate = PHPExcel_Calculation_Functions::flattenSingleValue($xCoordinate); + $yCoordinate = PHPExcel_Calculation_Functions::flattenSingleValue($yCoordinate); + + $xCoordinate = ($xCoordinate !== null) ? $xCoordinate : 0.0; + $yCoordinate = ($yCoordinate !== null) ? $yCoordinate : 0.0; + + if (((is_numeric($xCoordinate)) || (is_bool($xCoordinate))) && + ((is_numeric($yCoordinate))) || (is_bool($yCoordinate))) { + $xCoordinate = (float) $xCoordinate; + $yCoordinate = (float) $yCoordinate; + + if (($xCoordinate == 0) && ($yCoordinate == 0)) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + return atan2($yCoordinate, $xCoordinate); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * CEILING + * + * Returns number rounded up, away from zero, to the nearest multiple of significance. + * For example, if you want to avoid using pennies in your prices and your product is + * priced at $4.42, use the formula =CEILING(4.42,0.05) to round prices up to the + * nearest nickel. + * + * Excel Function: + * CEILING(number[,significance]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $number The number you want to round. + * @param float $significance The multiple to which you want to round. + * @return float Rounded Number + */ + public static function CEILING($number, $significance = null) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $significance = PHPExcel_Calculation_Functions::flattenSingleValue($significance); + + if ((is_null($significance)) && + (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC)) { + $significance = $number / abs($number); + } + + if ((is_numeric($number)) && (is_numeric($significance))) { + if (($number == 0.0 ) || ($significance == 0.0)) { + return 0.0; + } elseif (self::SIGN($number) == self::SIGN($significance)) { + return ceil($number / $significance) * $significance; + } else { + return PHPExcel_Calculation_Functions::NaN(); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * COMBIN + * + * Returns the number of combinations for a given number of items. Use COMBIN to + * determine the total possible number of groups for a given number of items. + * + * Excel Function: + * COMBIN(numObjs,numInSet) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param int $numObjs Number of different objects + * @param int $numInSet Number of objects in each combination + * @return int Number of combinations + */ + public static function COMBIN($numObjs, $numInSet) + { + $numObjs = PHPExcel_Calculation_Functions::flattenSingleValue($numObjs); + $numInSet = PHPExcel_Calculation_Functions::flattenSingleValue($numInSet); + + if ((is_numeric($numObjs)) && (is_numeric($numInSet))) { + if ($numObjs < $numInSet) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif ($numInSet < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return round(self::FACT($numObjs) / self::FACT($numObjs - $numInSet)) / self::FACT($numInSet); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * EVEN + * + * Returns number rounded up to the nearest even integer. + * You can use this function for processing items that come in twos. For example, + * a packing crate accepts rows of one or two items. The crate is full when + * the number of items, rounded up to the nearest two, matches the crate's + * capacity. + * + * Excel Function: + * EVEN(number) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $number Number to round + * @return int Rounded Number + */ + public static function EVEN($number) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + + if (is_null($number)) { + return 0; + } elseif (is_bool($number)) { + $number = (int) $number; + } + + if (is_numeric($number)) { + $significance = 2 * self::SIGN($number); + return (int) self::CEILING($number, $significance); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * FACT + * + * Returns the factorial of a number. + * The factorial of a number is equal to 1*2*3*...* number. + * + * Excel Function: + * FACT(factVal) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $factVal Factorial Value + * @return int Factorial + */ + public static function FACT($factVal) + { + $factVal = PHPExcel_Calculation_Functions::flattenSingleValue($factVal); + + if (is_numeric($factVal)) { + if ($factVal < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $factLoop = floor($factVal); + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + if ($factVal > $factLoop) { + return PHPExcel_Calculation_Functions::NaN(); + } + } + + $factorial = 1; + while ($factLoop > 1) { + $factorial *= $factLoop--; + } + return $factorial ; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * FACTDOUBLE + * + * Returns the double factorial of a number. + * + * Excel Function: + * FACTDOUBLE(factVal) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $factVal Factorial Value + * @return int Double Factorial + */ + public static function FACTDOUBLE($factVal) + { + $factLoop = PHPExcel_Calculation_Functions::flattenSingleValue($factVal); + + if (is_numeric($factLoop)) { + $factLoop = floor($factLoop); + if ($factVal < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $factorial = 1; + while ($factLoop > 1) { + $factorial *= $factLoop--; + --$factLoop; + } + return $factorial ; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * FLOOR + * + * Rounds number down, toward zero, to the nearest multiple of significance. + * + * Excel Function: + * FLOOR(number[,significance]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $number Number to round + * @param float $significance Significance + * @return float Rounded Number + */ + public static function FLOOR($number, $significance = null) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $significance = PHPExcel_Calculation_Functions::flattenSingleValue($significance); + + if ((is_null($significance)) && + (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC)) { + $significance = $number/abs($number); + } + + if ((is_numeric($number)) && (is_numeric($significance))) { + if ($significance == 0.0) { + return PHPExcel_Calculation_Functions::DIV0(); + } elseif ($number == 0.0) { + return 0.0; + } elseif (self::SIGN($number) == self::SIGN($significance)) { + return floor($number / $significance) * $significance; + } else { + return PHPExcel_Calculation_Functions::NaN(); + } + } + + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * GCD + * + * Returns the greatest common divisor of a series of numbers. + * The greatest common divisor is the largest integer that divides both + * number1 and number2 without a remainder. + * + * Excel Function: + * GCD(number1[,number2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return integer Greatest Common Divisor + */ + public static function GCD() + { + $returnValue = 1; + $allValuesFactors = array(); + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $value) { + if (!is_numeric($value)) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($value == 0) { + continue; + } elseif ($value < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $myFactors = self::factors($value); + $myCountedFactors = array_count_values($myFactors); + $allValuesFactors[] = $myCountedFactors; + } + $allValuesCount = count($allValuesFactors); + if ($allValuesCount == 0) { + return 0; + } + + $mergedArray = $allValuesFactors[0]; + for ($i=1; $i < $allValuesCount; ++$i) { + $mergedArray = array_intersect_key($mergedArray, $allValuesFactors[$i]); + } + $mergedArrayValues = count($mergedArray); + if ($mergedArrayValues == 0) { + return $returnValue; + } elseif ($mergedArrayValues > 1) { + foreach ($mergedArray as $mergedKey => $mergedValue) { + foreach ($allValuesFactors as $highestPowerTest) { + foreach ($highestPowerTest as $testKey => $testValue) { + if (($testKey == $mergedKey) && ($testValue < $mergedValue)) { + $mergedArray[$mergedKey] = $testValue; + $mergedValue = $testValue; + } + } + } + } + + $returnValue = 1; + foreach ($mergedArray as $key => $value) { + $returnValue *= pow($key, $value); + } + return $returnValue; + } else { + $keys = array_keys($mergedArray); + $key = $keys[0]; + $value = $mergedArray[$key]; + foreach ($allValuesFactors as $testValue) { + foreach ($testValue as $mergedKey => $mergedValue) { + if (($mergedKey == $key) && ($mergedValue < $value)) { + $value = $mergedValue; + } + } + } + return pow($key, $value); + } + } + + + /** + * INT + * + * Casts a floating point value to an integer + * + * Excel Function: + * INT(number) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $number Number to cast to an integer + * @return integer Integer value + */ + public static function INT($number) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + + if (is_null($number)) { + return 0; + } elseif (is_bool($number)) { + return (int) $number; + } + if (is_numeric($number)) { + return (int) floor($number); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * LCM + * + * Returns the lowest common multiplier of a series of numbers + * The least common multiple is the smallest positive integer that is a multiple + * of all integer arguments number1, number2, and so on. Use LCM to add fractions + * with different denominators. + * + * Excel Function: + * LCM(number1[,number2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return int Lowest Common Multiplier + */ + public static function LCM() + { + $returnValue = 1; + $allPoweredFactors = array(); + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $value) { + if (!is_numeric($value)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if ($value == 0) { + return 0; + } elseif ($value < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $myFactors = self::factors(floor($value)); + $myCountedFactors = array_count_values($myFactors); + $myPoweredFactors = array(); + foreach ($myCountedFactors as $myCountedFactor => $myCountedPower) { + $myPoweredFactors[$myCountedFactor] = pow($myCountedFactor, $myCountedPower); + } + foreach ($myPoweredFactors as $myPoweredValue => $myPoweredFactor) { + if (array_key_exists($myPoweredValue, $allPoweredFactors)) { + if ($allPoweredFactors[$myPoweredValue] < $myPoweredFactor) { + $allPoweredFactors[$myPoweredValue] = $myPoweredFactor; + } + } else { + $allPoweredFactors[$myPoweredValue] = $myPoweredFactor; + } + } + } + foreach ($allPoweredFactors as $allPoweredFactor) { + $returnValue *= (integer) $allPoweredFactor; + } + return $returnValue; + } + + + /** + * LOG_BASE + * + * Returns the logarithm of a number to a specified base. The default base is 10. + * + * Excel Function: + * LOG(number[,base]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $number The positive real number for which you want the logarithm + * @param float $base The base of the logarithm. If base is omitted, it is assumed to be 10. + * @return float + */ + public static function LOG_BASE($number = null, $base = 10) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $base = (is_null($base)) ? 10 : (float) PHPExcel_Calculation_Functions::flattenSingleValue($base); + + if ((!is_numeric($base)) || (!is_numeric($number))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (($base <= 0) || ($number <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return log($number, $base); + } + + + /** + * MDETERM + * + * Returns the matrix determinant of an array. + * + * Excel Function: + * MDETERM(array) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param array $matrixValues A matrix of values + * @return float + */ + public static function MDETERM($matrixValues) + { + $matrixData = array(); + if (!is_array($matrixValues)) { + $matrixValues = array(array($matrixValues)); + } + + $row = $maxColumn = 0; + foreach ($matrixValues as $matrixRow) { + if (!is_array($matrixRow)) { + $matrixRow = array($matrixRow); + } + $column = 0; + foreach ($matrixRow as $matrixCell) { + if ((is_string($matrixCell)) || ($matrixCell === null)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $matrixData[$column][$row] = $matrixCell; + ++$column; + } + if ($column > $maxColumn) { + $maxColumn = $column; + } + ++$row; + } + if ($row != $maxColumn) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + try { + $matrix = new PHPExcel_Shared_JAMA_Matrix($matrixData); + return $matrix->det(); + } catch (PHPExcel_Exception $ex) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + + + /** + * MINVERSE + * + * Returns the inverse matrix for the matrix stored in an array. + * + * Excel Function: + * MINVERSE(array) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param array $matrixValues A matrix of values + * @return array + */ + public static function MINVERSE($matrixValues) + { + $matrixData = array(); + if (!is_array($matrixValues)) { + $matrixValues = array(array($matrixValues)); + } + + $row = $maxColumn = 0; + foreach ($matrixValues as $matrixRow) { + if (!is_array($matrixRow)) { + $matrixRow = array($matrixRow); + } + $column = 0; + foreach ($matrixRow as $matrixCell) { + if ((is_string($matrixCell)) || ($matrixCell === null)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $matrixData[$column][$row] = $matrixCell; + ++$column; + } + if ($column > $maxColumn) { + $maxColumn = $column; + } + ++$row; + } + if ($row != $maxColumn) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + try { + $matrix = new PHPExcel_Shared_JAMA_Matrix($matrixData); + return $matrix->inverse()->getArray(); + } catch (PHPExcel_Exception $ex) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + + + /** + * MMULT + * + * @param array $matrixData1 A matrix of values + * @param array $matrixData2 A matrix of values + * @return array + */ + public static function MMULT($matrixData1, $matrixData2) + { + $matrixAData = $matrixBData = array(); + if (!is_array($matrixData1)) { + $matrixData1 = array(array($matrixData1)); + } + if (!is_array($matrixData2)) { + $matrixData2 = array(array($matrixData2)); + } + + try { + $rowA = 0; + foreach ($matrixData1 as $matrixRow) { + if (!is_array($matrixRow)) { + $matrixRow = array($matrixRow); + } + $columnA = 0; + foreach ($matrixRow as $matrixCell) { + if ((!is_numeric($matrixCell)) || ($matrixCell === null)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $matrixAData[$rowA][$columnA] = $matrixCell; + ++$columnA; + } + ++$rowA; + } + $matrixA = new PHPExcel_Shared_JAMA_Matrix($matrixAData); + $rowB = 0; + foreach ($matrixData2 as $matrixRow) { + if (!is_array($matrixRow)) { + $matrixRow = array($matrixRow); + } + $columnB = 0; + foreach ($matrixRow as $matrixCell) { + if ((!is_numeric($matrixCell)) || ($matrixCell === null)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $matrixBData[$rowB][$columnB] = $matrixCell; + ++$columnB; + } + ++$rowB; + } + $matrixB = new PHPExcel_Shared_JAMA_Matrix($matrixBData); + + if ($columnA != $rowB) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + return $matrixA->times($matrixB)->getArray(); + } catch (PHPExcel_Exception $ex) { + var_dump($ex->getMessage()); + return PHPExcel_Calculation_Functions::VALUE(); + } + } + + + /** + * MOD + * + * @param int $a Dividend + * @param int $b Divisor + * @return int Remainder + */ + public static function MOD($a = 1, $b = 1) + { + $a = PHPExcel_Calculation_Functions::flattenSingleValue($a); + $b = PHPExcel_Calculation_Functions::flattenSingleValue($b); + + if ($b == 0.0) { + return PHPExcel_Calculation_Functions::DIV0(); + } elseif (($a < 0.0) && ($b > 0.0)) { + return $b - fmod(abs($a), $b); + } elseif (($a > 0.0) && ($b < 0.0)) { + return $b + fmod($a, abs($b)); + } + + return fmod($a, $b); + } + + + /** + * MROUND + * + * Rounds a number to the nearest multiple of a specified value + * + * @param float $number Number to round + * @param int $multiple Multiple to which you want to round $number + * @return float Rounded Number + */ + public static function MROUND($number, $multiple) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $multiple = PHPExcel_Calculation_Functions::flattenSingleValue($multiple); + + if ((is_numeric($number)) && (is_numeric($multiple))) { + if ($multiple == 0) { + return 0; + } + if ((self::SIGN($number)) == (self::SIGN($multiple))) { + $multiplier = 1 / $multiple; + return round($number * $multiplier) / $multiplier; + } + return PHPExcel_Calculation_Functions::NaN(); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * MULTINOMIAL + * + * Returns the ratio of the factorial of a sum of values to the product of factorials. + * + * @param array of mixed Data Series + * @return float + */ + public static function MULTINOMIAL() + { + $summer = 0; + $divisor = 1; + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $arg) { + // Is it a numeric value? + if (is_numeric($arg)) { + if ($arg < 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + $summer += floor($arg); + $divisor *= self::FACT($arg); + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + + // Return + if ($summer > 0) { + $summer = self::FACT($summer); + return $summer / $divisor; + } + return 0; + } + + + /** + * ODD + * + * Returns number rounded up to the nearest odd integer. + * + * @param float $number Number to round + * @return int Rounded Number + */ + public static function ODD($number) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + + if (is_null($number)) { + return 1; + } elseif (is_bool($number)) { + return 1; + } elseif (is_numeric($number)) { + $significance = self::SIGN($number); + if ($significance == 0) { + return 1; + } + + $result = self::CEILING($number, $significance); + if ($result == self::EVEN($result)) { + $result += $significance; + } + + return (int) $result; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * POWER + * + * Computes x raised to the power y. + * + * @param float $x + * @param float $y + * @return float + */ + public static function POWER($x = 0, $y = 2) + { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $y = PHPExcel_Calculation_Functions::flattenSingleValue($y); + + // Validate parameters + if ($x == 0.0 && $y == 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif ($x == 0.0 && $y < 0.0) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + // Return + $result = pow($x, $y); + return (!is_nan($result) && !is_infinite($result)) ? $result : PHPExcel_Calculation_Functions::NaN(); + } + + + /** + * PRODUCT + * + * PRODUCT returns the product of all the values and cells referenced in the argument list. + * + * Excel Function: + * PRODUCT(value1[,value2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function PRODUCT() + { + // Return value + $returnValue = null; + + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = $arg; + } else { + $returnValue *= $arg; + } + } + } + + // Return + if (is_null($returnValue)) { + return 0; + } + return $returnValue; + } + + + /** + * QUOTIENT + * + * QUOTIENT function returns the integer portion of a division. Numerator is the divided number + * and denominator is the divisor. + * + * Excel Function: + * QUOTIENT(value1[,value2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function QUOTIENT() + { + // Return value + $returnValue = null; + + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = ($arg == 0) ? 0 : $arg; + } else { + if (($returnValue == 0) || ($arg == 0)) { + $returnValue = 0; + } else { + $returnValue /= $arg; + } + } + } + } + + // Return + return intval($returnValue); + } + + + /** + * RAND + * + * @param int $min Minimal value + * @param int $max Maximal value + * @return int Random number + */ + public static function RAND($min = 0, $max = 0) + { + $min = PHPExcel_Calculation_Functions::flattenSingleValue($min); + $max = PHPExcel_Calculation_Functions::flattenSingleValue($max); + + if ($min == 0 && $max == 0) { + return (mt_rand(0, 10000000)) / 10000000; + } else { + return mt_rand($min, $max); + } + } + + + public static function ROMAN($aValue, $style = 0) + { + $aValue = PHPExcel_Calculation_Functions::flattenSingleValue($aValue); + $style = (is_null($style)) ? 0 : (integer) PHPExcel_Calculation_Functions::flattenSingleValue($style); + if ((!is_numeric($aValue)) || ($aValue < 0) || ($aValue >= 4000)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $aValue = (integer) $aValue; + if ($aValue == 0) { + return ''; + } + + $mill = array('', 'M', 'MM', 'MMM', 'MMMM', 'MMMMM'); + $cent = array('', 'C', 'CC', 'CCC', 'CD', 'D', 'DC', 'DCC', 'DCCC', 'CM'); + $tens = array('', 'X', 'XX', 'XXX', 'XL', 'L', 'LX', 'LXX', 'LXXX', 'XC'); + $ones = array('', 'I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX'); + + $roman = ''; + while ($aValue > 5999) { + $roman .= 'M'; + $aValue -= 1000; + } + $m = self::romanCut($aValue, 1000); + $aValue %= 1000; + $c = self::romanCut($aValue, 100); + $aValue %= 100; + $t = self::romanCut($aValue, 10); + $aValue %= 10; + + return $roman.$mill[$m].$cent[$c].$tens[$t].$ones[$aValue]; + } + + + /** + * ROUNDUP + * + * Rounds a number up to a specified number of decimal places + * + * @param float $number Number to round + * @param int $digits Number of digits to which you want to round $number + * @return float Rounded Number + */ + public static function ROUNDUP($number, $digits) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $digits = PHPExcel_Calculation_Functions::flattenSingleValue($digits); + + if ((is_numeric($number)) && (is_numeric($digits))) { + $significance = pow(10, (int) $digits); + if ($number < 0.0) { + return floor($number * $significance) / $significance; + } else { + return ceil($number * $significance) / $significance; + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * ROUNDDOWN + * + * Rounds a number down to a specified number of decimal places + * + * @param float $number Number to round + * @param int $digits Number of digits to which you want to round $number + * @return float Rounded Number + */ + public static function ROUNDDOWN($number, $digits) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $digits = PHPExcel_Calculation_Functions::flattenSingleValue($digits); + + if ((is_numeric($number)) && (is_numeric($digits))) { + $significance = pow(10, (int) $digits); + if ($number < 0.0) { + return ceil($number * $significance) / $significance; + } else { + return floor($number * $significance) / $significance; + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * SERIESSUM + * + * Returns the sum of a power series + * + * @param float $x Input value to the power series + * @param float $n Initial power to which you want to raise $x + * @param float $m Step by which to increase $n for each term in the series + * @param array of mixed Data Series + * @return float + */ + public static function SERIESSUM() + { + $returnValue = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + $x = array_shift($aArgs); + $n = array_shift($aArgs); + $m = array_shift($aArgs); + + if ((is_numeric($x)) && (is_numeric($n)) && (is_numeric($m))) { + // Calculate + $i = 0; + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $returnValue += $arg * pow($x, $n + ($m * $i++)); + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + return $returnValue; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * SIGN + * + * Determines the sign of a number. Returns 1 if the number is positive, zero (0) + * if the number is 0, and -1 if the number is negative. + * + * @param float $number Number to round + * @return int sign value + */ + public static function SIGN($number) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + + if (is_bool($number)) { + return (int) $number; + } + if (is_numeric($number)) { + if ($number == 0.0) { + return 0; + } + return $number / abs($number); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * SQRTPI + * + * Returns the square root of (number * pi). + * + * @param float $number Number + * @return float Square Root of Number * Pi + */ + public static function SQRTPI($number) + { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + + if (is_numeric($number)) { + if ($number < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return sqrt($number * M_PI) ; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * SUBTOTAL + * + * Returns a subtotal in a list or database. + * + * @param int the number 1 to 11 that specifies which function to + * use in calculating subtotals within a list. + * @param array of mixed Data Series + * @return float + */ + public static function SUBTOTAL() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $subtotal = array_shift($aArgs); + + if ((is_numeric($subtotal)) && (!is_string($subtotal))) { + switch ($subtotal) { + case 1: + return PHPExcel_Calculation_Statistical::AVERAGE($aArgs); + case 2: + return PHPExcel_Calculation_Statistical::COUNT($aArgs); + case 3: + return PHPExcel_Calculation_Statistical::COUNTA($aArgs); + case 4: + return PHPExcel_Calculation_Statistical::MAX($aArgs); + case 5: + return PHPExcel_Calculation_Statistical::MIN($aArgs); + case 6: + return self::PRODUCT($aArgs); + case 7: + return PHPExcel_Calculation_Statistical::STDEV($aArgs); + case 8: + return PHPExcel_Calculation_Statistical::STDEVP($aArgs); + case 9: + return self::SUM($aArgs); + case 10: + return PHPExcel_Calculation_Statistical::VARFunc($aArgs); + case 11: + return PHPExcel_Calculation_Statistical::VARP($aArgs); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * SUM + * + * SUM computes the sum of all the values and cells referenced in the argument list. + * + * Excel Function: + * SUM(value1[,value2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function SUM() + { + $returnValue = 0; + + // Loop through the arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $returnValue += $arg; + } + } + + return $returnValue; + } + + + /** + * SUMIF + * + * Counts the number of cells that contain numbers within the list of arguments + * + * Excel Function: + * SUMIF(value1[,value2[, ...]],condition) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @param string $condition The criteria that defines which cells will be summed. + * @return float + */ + public static function SUMIF($aArgs, $condition, $sumArgs = array()) + { + $returnValue = 0; + + $aArgs = PHPExcel_Calculation_Functions::flattenArray($aArgs); + $sumArgs = PHPExcel_Calculation_Functions::flattenArray($sumArgs); + if (empty($sumArgs)) { + $sumArgs = $aArgs; + } + $condition = PHPExcel_Calculation_Functions::ifCondition($condition); + // Loop through arguments + foreach ($aArgs as $key => $arg) { + if (!is_numeric($arg)) { + $arg = str_replace('"', '""', $arg); + $arg = PHPExcel_Calculation::wrapResult(strtoupper($arg)); + } + + $testCondition = '='.$arg.$condition; + if (PHPExcel_Calculation::getInstance()->_calculateFormulaValue($testCondition)) { + // Is it a value within our criteria + $returnValue += $sumArgs[$key]; + } + } + + return $returnValue; + } + + + /** + * SUMIFS + * + * Counts the number of cells that contain numbers within the list of arguments + * + * Excel Function: + * SUMIFS(value1[,value2[, ...]],condition) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @param string $condition The criteria that defines which cells will be summed. + * @return float + */ + public static function SUMIFS() { + $arrayList = func_get_args(); + + $sumArgs = PHPExcel_Calculation_Functions::flattenArray(array_shift($arrayList)); + + while (count($arrayList) > 0) { + $aArgsArray[] = PHPExcel_Calculation_Functions::flattenArray(array_shift($arrayList)); + $conditions[] = PHPExcel_Calculation_Functions::ifCondition(array_shift($arrayList)); + } + + // Loop through each set of arguments and conditions + foreach ($conditions as $index => $condition) { + $aArgs = $aArgsArray[$index]; + $wildcard = false; + if ((strpos($condition, '*') !== false) || (strpos($condition, '?') !== false)) { + // * and ? are wildcard characters. + // Use ~* and ~? for literal star and question mark + // Code logic doesn't yet handle escaping + $condition = trim(ltrim($condition, '=<>'), '"'); + $wildcard = true; + } + // Loop through arguments + foreach ($aArgs as $key => $arg) { + if ($wildcard) { + if (!fnmatch($condition, $arg, FNM_CASEFOLD)) { + // Is it a value within our criteria + $sumArgs[$key] = 0.0; + } + } else { + if (!is_numeric($arg)) { + $arg = PHPExcel_Calculation::wrapResult(strtoupper($arg)); + } + $testCondition = '='.$arg.$condition; + if (!PHPExcel_Calculation::getInstance()->_calculateFormulaValue($testCondition)) { + // Is it a value within our criteria + $sumArgs[$key] = 0.0; + } + } + } + } + + // Return + return array_sum($sumArgs); + } + + + /** + * SUMPRODUCT + * + * Excel Function: + * SUMPRODUCT(value1[,value2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function SUMPRODUCT() + { + $arrayList = func_get_args(); + + $wrkArray = PHPExcel_Calculation_Functions::flattenArray(array_shift($arrayList)); + $wrkCellCount = count($wrkArray); + + for ($i=0; $i< $wrkCellCount; ++$i) { + if ((!is_numeric($wrkArray[$i])) || (is_string($wrkArray[$i]))) { + $wrkArray[$i] = 0; + } + } + + foreach ($arrayList as $matrixData) { + $array2 = PHPExcel_Calculation_Functions::flattenArray($matrixData); + $count = count($array2); + if ($wrkCellCount != $count) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + foreach ($array2 as $i => $val) { + if ((!is_numeric($val)) || (is_string($val))) { + $val = 0; + } + $wrkArray[$i] *= $val; + } + } + + return array_sum($wrkArray); + } + + + /** + * SUMSQ + * + * SUMSQ returns the sum of the squares of the arguments + * + * Excel Function: + * SUMSQ(value1[,value2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function SUMSQ() + { + $returnValue = 0; + + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $returnValue += ($arg * $arg); + } + } + + return $returnValue; + } + + + /** + * SUMX2MY2 + * + * @param mixed[] $matrixData1 Matrix #1 + * @param mixed[] $matrixData2 Matrix #2 + * @return float + */ + public static function SUMX2MY2($matrixData1, $matrixData2) + { + $array1 = PHPExcel_Calculation_Functions::flattenArray($matrixData1); + $array2 = PHPExcel_Calculation_Functions::flattenArray($matrixData2); + $count = min(count($array1), count($array2)); + + $result = 0; + for ($i = 0; $i < $count; ++$i) { + if (((is_numeric($array1[$i])) && (!is_string($array1[$i]))) && + ((is_numeric($array2[$i])) && (!is_string($array2[$i])))) { + $result += ($array1[$i] * $array1[$i]) - ($array2[$i] * $array2[$i]); + } + } + + return $result; + } + + + /** + * SUMX2PY2 + * + * @param mixed[] $matrixData1 Matrix #1 + * @param mixed[] $matrixData2 Matrix #2 + * @return float + */ + public static function SUMX2PY2($matrixData1, $matrixData2) + { + $array1 = PHPExcel_Calculation_Functions::flattenArray($matrixData1); + $array2 = PHPExcel_Calculation_Functions::flattenArray($matrixData2); + $count = min(count($array1), count($array2)); + + $result = 0; + for ($i = 0; $i < $count; ++$i) { + if (((is_numeric($array1[$i])) && (!is_string($array1[$i]))) && + ((is_numeric($array2[$i])) && (!is_string($array2[$i])))) { + $result += ($array1[$i] * $array1[$i]) + ($array2[$i] * $array2[$i]); + } + } + + return $result; + } + + + /** + * SUMXMY2 + * + * @param mixed[] $matrixData1 Matrix #1 + * @param mixed[] $matrixData2 Matrix #2 + * @return float + */ + public static function SUMXMY2($matrixData1, $matrixData2) + { + $array1 = PHPExcel_Calculation_Functions::flattenArray($matrixData1); + $array2 = PHPExcel_Calculation_Functions::flattenArray($matrixData2); + $count = min(count($array1), count($array2)); + + $result = 0; + for ($i = 0; $i < $count; ++$i) { + if (((is_numeric($array1[$i])) && (!is_string($array1[$i]))) && + ((is_numeric($array2[$i])) && (!is_string($array2[$i])))) { + $result += ($array1[$i] - $array2[$i]) * ($array1[$i] - $array2[$i]); + } + } + + return $result; + } + + + /** + * TRUNC + * + * Truncates value to the number of fractional digits by number_digits. + * + * @param float $value + * @param int $digits + * @return float Truncated value + */ + public static function TRUNC($value = 0, $digits = 0) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $digits = PHPExcel_Calculation_Functions::flattenSingleValue($digits); + + // Validate parameters + if ((!is_numeric($value)) || (!is_numeric($digits))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $digits = floor($digits); + + // Truncate + $adjust = pow(10, $digits); + + if (($digits > 0) && (rtrim(intval((abs($value) - abs(intval($value))) * $adjust), '0') < $adjust/10)) { + return $value; + } + + return (intval($value * $adjust)) / $adjust; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Statistical.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Statistical.php new file mode 100644 index 0000000..1a33610 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Statistical.php @@ -0,0 +1,3745 @@ + $value) { + if ((is_bool($value)) || (is_string($value)) || (is_null($value))) { + unset($array1[$key]); + unset($array2[$key]); + } + } + foreach ($array2 as $key => $value) { + if ((is_bool($value)) || (is_string($value)) || (is_null($value))) { + unset($array1[$key]); + unset($array2[$key]); + } + } + $array1 = array_merge($array1); + $array2 = array_merge($array2); + + return true; + } + + + /** + * Beta function. + * + * @author Jaco van Kooten + * + * @param p require p>0 + * @param q require q>0 + * @return 0 if p<=0, q<=0 or p+q>2.55E305 to avoid errors and over/underflow + */ + private static function beta($p, $q) + { + if ($p <= 0.0 || $q <= 0.0 || ($p + $q) > LOG_GAMMA_X_MAX_VALUE) { + return 0.0; + } else { + return exp(self::logBeta($p, $q)); + } + } + + + /** + * Incomplete beta function + * + * @author Jaco van Kooten + * @author Paul Meagher + * + * The computation is based on formulas from Numerical Recipes, Chapter 6.4 (W.H. Press et al, 1992). + * @param x require 0<=x<=1 + * @param p require p>0 + * @param q require q>0 + * @return 0 if x<0, p<=0, q<=0 or p+q>2.55E305 and 1 if x>1 to avoid errors and over/underflow + */ + private static function incompleteBeta($x, $p, $q) + { + if ($x <= 0.0) { + return 0.0; + } elseif ($x >= 1.0) { + return 1.0; + } elseif (($p <= 0.0) || ($q <= 0.0) || (($p + $q) > LOG_GAMMA_X_MAX_VALUE)) { + return 0.0; + } + $beta_gam = exp((0 - self::logBeta($p, $q)) + $p * log($x) + $q * log(1.0 - $x)); + if ($x < ($p + 1.0) / ($p + $q + 2.0)) { + return $beta_gam * self::betaFraction($x, $p, $q) / $p; + } else { + return 1.0 - ($beta_gam * self::betaFraction(1 - $x, $q, $p) / $q); + } + } + + + // Function cache for logBeta function + private static $logBetaCacheP = 0.0; + private static $logBetaCacheQ = 0.0; + private static $logBetaCacheResult = 0.0; + + /** + * The natural logarithm of the beta function. + * + * @param p require p>0 + * @param q require q>0 + * @return 0 if p<=0, q<=0 or p+q>2.55E305 to avoid errors and over/underflow + * @author Jaco van Kooten + */ + private static function logBeta($p, $q) + { + if ($p != self::$logBetaCacheP || $q != self::$logBetaCacheQ) { + self::$logBetaCacheP = $p; + self::$logBetaCacheQ = $q; + if (($p <= 0.0) || ($q <= 0.0) || (($p + $q) > LOG_GAMMA_X_MAX_VALUE)) { + self::$logBetaCacheResult = 0.0; + } else { + self::$logBetaCacheResult = self::logGamma($p) + self::logGamma($q) - self::logGamma($p + $q); + } + } + return self::$logBetaCacheResult; + } + + + /** + * Evaluates of continued fraction part of incomplete beta function. + * Based on an idea from Numerical Recipes (W.H. Press et al, 1992). + * @author Jaco van Kooten + */ + private static function betaFraction($x, $p, $q) + { + $c = 1.0; + $sum_pq = $p + $q; + $p_plus = $p + 1.0; + $p_minus = $p - 1.0; + $h = 1.0 - $sum_pq * $x / $p_plus; + if (abs($h) < XMININ) { + $h = XMININ; + } + $h = 1.0 / $h; + $frac = $h; + $m = 1; + $delta = 0.0; + while ($m <= MAX_ITERATIONS && abs($delta-1.0) > PRECISION) { + $m2 = 2 * $m; + // even index for d + $d = $m * ($q - $m) * $x / ( ($p_minus + $m2) * ($p + $m2)); + $h = 1.0 + $d * $h; + if (abs($h) < XMININ) { + $h = XMININ; + } + $h = 1.0 / $h; + $c = 1.0 + $d / $c; + if (abs($c) < XMININ) { + $c = XMININ; + } + $frac *= $h * $c; + // odd index for d + $d = -($p + $m) * ($sum_pq + $m) * $x / (($p + $m2) * ($p_plus + $m2)); + $h = 1.0 + $d * $h; + if (abs($h) < XMININ) { + $h = XMININ; + } + $h = 1.0 / $h; + $c = 1.0 + $d / $c; + if (abs($c) < XMININ) { + $c = XMININ; + } + $delta = $h * $c; + $frac *= $delta; + ++$m; + } + return $frac; + } + + + /** + * logGamma function + * + * @version 1.1 + * @author Jaco van Kooten + * + * Original author was Jaco van Kooten. Ported to PHP by Paul Meagher. + * + * The natural logarithm of the gamma function.
+ * Based on public domain NETLIB (Fortran) code by W. J. Cody and L. Stoltz
+ * Applied Mathematics Division
+ * Argonne National Laboratory
+ * Argonne, IL 60439
+ *

+ * References: + *

    + *
  1. W. J. Cody and K. E. Hillstrom, 'Chebyshev Approximations for the Natural + * Logarithm of the Gamma Function,' Math. Comp. 21, 1967, pp. 198-203.
  2. + *
  3. K. E. Hillstrom, ANL/AMD Program ANLC366S, DGAMMA/DLGAMA, May, 1969.
  4. + *
  5. Hart, Et. Al., Computer Approximations, Wiley and sons, New York, 1968.
  6. + *
+ *

+ *

+ * From the original documentation: + *

+ *

+ * This routine calculates the LOG(GAMMA) function for a positive real argument X. + * Computation is based on an algorithm outlined in references 1 and 2. + * The program uses rational functions that theoretically approximate LOG(GAMMA) + * to at least 18 significant decimal digits. The approximation for X > 12 is from + * reference 3, while approximations for X < 12.0 are similar to those in reference + * 1, but are unpublished. The accuracy achieved depends on the arithmetic system, + * the compiler, the intrinsic functions, and proper selection of the + * machine-dependent constants. + *

+ *

+ * Error returns:
+ * The program returns the value XINF for X .LE. 0.0 or when overflow would occur. + * The computation is believed to be free of underflow and overflow. + *

+ * @return MAX_VALUE for x < 0.0 or when overflow would occur, i.e. x > 2.55E305 + */ + + // Function cache for logGamma + private static $logGammaCacheResult = 0.0; + private static $logGammaCacheX = 0.0; + + private static function logGamma($x) + { + // Log Gamma related constants + static $lg_d1 = -0.5772156649015328605195174; + static $lg_d2 = 0.4227843350984671393993777; + static $lg_d4 = 1.791759469228055000094023; + + static $lg_p1 = array( + 4.945235359296727046734888, + 201.8112620856775083915565, + 2290.838373831346393026739, + 11319.67205903380828685045, + 28557.24635671635335736389, + 38484.96228443793359990269, + 26377.48787624195437963534, + 7225.813979700288197698961 + ); + static $lg_p2 = array( + 4.974607845568932035012064, + 542.4138599891070494101986, + 15506.93864978364947665077, + 184793.2904445632425417223, + 1088204.76946882876749847, + 3338152.967987029735917223, + 5106661.678927352456275255, + 3074109.054850539556250927 + ); + static $lg_p4 = array( + 14745.02166059939948905062, + 2426813.369486704502836312, + 121475557.4045093227939592, + 2663432449.630976949898078, + 29403789566.34553899906876, + 170266573776.5398868392998, + 492612579337.743088758812, + 560625185622.3951465078242 + ); + static $lg_q1 = array( + 67.48212550303777196073036, + 1113.332393857199323513008, + 7738.757056935398733233834, + 27639.87074403340708898585, + 54993.10206226157329794414, + 61611.22180066002127833352, + 36351.27591501940507276287, + 8785.536302431013170870835 + ); + static $lg_q2 = array( + 183.0328399370592604055942, + 7765.049321445005871323047, + 133190.3827966074194402448, + 1136705.821321969608938755, + 5267964.117437946917577538, + 13467014.54311101692290052, + 17827365.30353274213975932, + 9533095.591844353613395747 + ); + static $lg_q4 = array( + 2690.530175870899333379843, + 639388.5654300092398984238, + 41355999.30241388052042842, + 1120872109.61614794137657, + 14886137286.78813811542398, + 101680358627.2438228077304, + 341747634550.7377132798597, + 446315818741.9713286462081 + ); + static $lg_c = array( + -0.001910444077728, + 8.4171387781295e-4, + -5.952379913043012e-4, + 7.93650793500350248e-4, + -0.002777777777777681622553, + 0.08333333333333333331554247, + 0.0057083835261 + ); + + // Rough estimate of the fourth root of logGamma_xBig + static $lg_frtbig = 2.25e76; + static $pnt68 = 0.6796875; + + + if ($x == self::$logGammaCacheX) { + return self::$logGammaCacheResult; + } + $y = $x; + if ($y > 0.0 && $y <= LOG_GAMMA_X_MAX_VALUE) { + if ($y <= EPS) { + $res = -log(y); + } elseif ($y <= 1.5) { + // --------------------- + // EPS .LT. X .LE. 1.5 + // --------------------- + if ($y < $pnt68) { + $corr = -log($y); + $xm1 = $y; + } else { + $corr = 0.0; + $xm1 = $y - 1.0; + } + if ($y <= 0.5 || $y >= $pnt68) { + $xden = 1.0; + $xnum = 0.0; + for ($i = 0; $i < 8; ++$i) { + $xnum = $xnum * $xm1 + $lg_p1[$i]; + $xden = $xden * $xm1 + $lg_q1[$i]; + } + $res = $corr + $xm1 * ($lg_d1 + $xm1 * ($xnum / $xden)); + } else { + $xm2 = $y - 1.0; + $xden = 1.0; + $xnum = 0.0; + for ($i = 0; $i < 8; ++$i) { + $xnum = $xnum * $xm2 + $lg_p2[$i]; + $xden = $xden * $xm2 + $lg_q2[$i]; + } + $res = $corr + $xm2 * ($lg_d2 + $xm2 * ($xnum / $xden)); + } + } elseif ($y <= 4.0) { + // --------------------- + // 1.5 .LT. X .LE. 4.0 + // --------------------- + $xm2 = $y - 2.0; + $xden = 1.0; + $xnum = 0.0; + for ($i = 0; $i < 8; ++$i) { + $xnum = $xnum * $xm2 + $lg_p2[$i]; + $xden = $xden * $xm2 + $lg_q2[$i]; + } + $res = $xm2 * ($lg_d2 + $xm2 * ($xnum / $xden)); + } elseif ($y <= 12.0) { + // ---------------------- + // 4.0 .LT. X .LE. 12.0 + // ---------------------- + $xm4 = $y - 4.0; + $xden = -1.0; + $xnum = 0.0; + for ($i = 0; $i < 8; ++$i) { + $xnum = $xnum * $xm4 + $lg_p4[$i]; + $xden = $xden * $xm4 + $lg_q4[$i]; + } + $res = $lg_d4 + $xm4 * ($xnum / $xden); + } else { + // --------------------------------- + // Evaluate for argument .GE. 12.0 + // --------------------------------- + $res = 0.0; + if ($y <= $lg_frtbig) { + $res = $lg_c[6]; + $ysq = $y * $y; + for ($i = 0; $i < 6; ++$i) { + $res = $res / $ysq + $lg_c[$i]; + } + $res /= $y; + $corr = log($y); + $res = $res + log(SQRT2PI) - 0.5 * $corr; + $res += $y * ($corr - 1.0); + } + } + } else { + // -------------------------- + // Return for bad arguments + // -------------------------- + $res = MAX_VALUE; + } + // ------------------------------ + // Final adjustments and return + // ------------------------------ + self::$logGammaCacheX = $x; + self::$logGammaCacheResult = $res; + return $res; + } + + + // + // Private implementation of the incomplete Gamma function + // + private static function incompleteGamma($a, $x) + { + static $max = 32; + $summer = 0; + for ($n=0; $n<=$max; ++$n) { + $divisor = $a; + for ($i=1; $i<=$n; ++$i) { + $divisor *= ($a + $i); + } + $summer += (pow($x, $n) / $divisor); + } + return pow($x, $a) * exp(0-$x) * $summer; + } + + + // + // Private implementation of the Gamma function + // + private static function gamma($data) + { + if ($data == 0.0) { + return 0; + } + + static $p0 = 1.000000000190015; + static $p = array( + 1 => 76.18009172947146, + 2 => -86.50532032941677, + 3 => 24.01409824083091, + 4 => -1.231739572450155, + 5 => 1.208650973866179e-3, + 6 => -5.395239384953e-6 + ); + + $y = $x = $data; + $tmp = $x + 5.5; + $tmp -= ($x + 0.5) * log($tmp); + + $summer = $p0; + for ($j=1; $j<=6; ++$j) { + $summer += ($p[$j] / ++$y); + } + return exp(0 - $tmp + log(SQRT2PI * $summer / $x)); + } + + + /*************************************************************************** + * inverse_ncdf.php + * ------------------- + * begin : Friday, January 16, 2004 + * copyright : (C) 2004 Michael Nickerson + * email : nickersonm@yahoo.com + * + ***************************************************************************/ + private static function inverseNcdf($p) + { + // Inverse ncdf approximation by Peter J. Acklam, implementation adapted to + // PHP by Michael Nickerson, using Dr. Thomas Ziegler's C implementation as + // a guide. http://home.online.no/~pjacklam/notes/invnorm/index.html + // I have not checked the accuracy of this implementation. Be aware that PHP + // will truncate the coeficcients to 14 digits. + + // You have permission to use and distribute this function freely for + // whatever purpose you want, but please show common courtesy and give credit + // where credit is due. + + // Input paramater is $p - probability - where 0 < p < 1. + + // Coefficients in rational approximations + static $a = array( + 1 => -3.969683028665376e+01, + 2 => 2.209460984245205e+02, + 3 => -2.759285104469687e+02, + 4 => 1.383577518672690e+02, + 5 => -3.066479806614716e+01, + 6 => 2.506628277459239e+00 + ); + + static $b = array( + 1 => -5.447609879822406e+01, + 2 => 1.615858368580409e+02, + 3 => -1.556989798598866e+02, + 4 => 6.680131188771972e+01, + 5 => -1.328068155288572e+01 + ); + + static $c = array( + 1 => -7.784894002430293e-03, + 2 => -3.223964580411365e-01, + 3 => -2.400758277161838e+00, + 4 => -2.549732539343734e+00, + 5 => 4.374664141464968e+00, + 6 => 2.938163982698783e+00 + ); + + static $d = array( + 1 => 7.784695709041462e-03, + 2 => 3.224671290700398e-01, + 3 => 2.445134137142996e+00, + 4 => 3.754408661907416e+00 + ); + + // Define lower and upper region break-points. + $p_low = 0.02425; //Use lower region approx. below this + $p_high = 1 - $p_low; //Use upper region approx. above this + + if (0 < $p && $p < $p_low) { + // Rational approximation for lower region. + $q = sqrt(-2 * log($p)); + return ((((($c[1] * $q + $c[2]) * $q + $c[3]) * $q + $c[4]) * $q + $c[5]) * $q + $c[6]) / + (((($d[1] * $q + $d[2]) * $q + $d[3]) * $q + $d[4]) * $q + 1); + } elseif ($p_low <= $p && $p <= $p_high) { + // Rational approximation for central region. + $q = $p - 0.5; + $r = $q * $q; + return ((((($a[1] * $r + $a[2]) * $r + $a[3]) * $r + $a[4]) * $r + $a[5]) * $r + $a[6]) * $q / + ((((($b[1] * $r + $b[2]) * $r + $b[3]) * $r + $b[4]) * $r + $b[5]) * $r + 1); + } elseif ($p_high < $p && $p < 1) { + // Rational approximation for upper region. + $q = sqrt(-2 * log(1 - $p)); + return -((((($c[1] * $q + $c[2]) * $q + $c[3]) * $q + $c[4]) * $q + $c[5]) * $q + $c[6]) / + (((($d[1] * $q + $d[2]) * $q + $d[3]) * $q + $d[4]) * $q + 1); + } + // If 0 < p < 1, return a null value + return PHPExcel_Calculation_Functions::NULL(); + } + + + private static function inverseNcdf2($prob) + { + // Approximation of inverse standard normal CDF developed by + // B. Moro, "The Full Monte," Risk 8(2), Feb 1995, 57-58. + + $a1 = 2.50662823884; + $a2 = -18.61500062529; + $a3 = 41.39119773534; + $a4 = -25.44106049637; + + $b1 = -8.4735109309; + $b2 = 23.08336743743; + $b3 = -21.06224101826; + $b4 = 3.13082909833; + + $c1 = 0.337475482272615; + $c2 = 0.976169019091719; + $c3 = 0.160797971491821; + $c4 = 2.76438810333863E-02; + $c5 = 3.8405729373609E-03; + $c6 = 3.951896511919E-04; + $c7 = 3.21767881768E-05; + $c8 = 2.888167364E-07; + $c9 = 3.960315187E-07; + + $y = $prob - 0.5; + if (abs($y) < 0.42) { + $z = ($y * $y); + $z = $y * ((($a4 * $z + $a3) * $z + $a2) * $z + $a1) / (((($b4 * $z + $b3) * $z + $b2) * $z + $b1) * $z + 1); + } else { + if ($y > 0) { + $z = log(-log(1 - $prob)); + } else { + $z = log(-log($prob)); + } + $z = $c1 + $z * ($c2 + $z * ($c3 + $z * ($c4 + $z * ($c5 + $z * ($c6 + $z * ($c7 + $z * ($c8 + $z * $c9))))))); + if ($y < 0) { + $z = -$z; + } + } + return $z; + } // function inverseNcdf2() + + + private static function inverseNcdf3($p) + { + // ALGORITHM AS241 APPL. STATIST. (1988) VOL. 37, NO. 3. + // Produces the normal deviate Z corresponding to a given lower + // tail area of P; Z is accurate to about 1 part in 10**16. + // + // This is a PHP version of the original FORTRAN code that can + // be found at http://lib.stat.cmu.edu/apstat/ + $split1 = 0.425; + $split2 = 5; + $const1 = 0.180625; + $const2 = 1.6; + + // coefficients for p close to 0.5 + $a0 = 3.3871328727963666080; + $a1 = 1.3314166789178437745E+2; + $a2 = 1.9715909503065514427E+3; + $a3 = 1.3731693765509461125E+4; + $a4 = 4.5921953931549871457E+4; + $a5 = 6.7265770927008700853E+4; + $a6 = 3.3430575583588128105E+4; + $a7 = 2.5090809287301226727E+3; + + $b1 = 4.2313330701600911252E+1; + $b2 = 6.8718700749205790830E+2; + $b3 = 5.3941960214247511077E+3; + $b4 = 2.1213794301586595867E+4; + $b5 = 3.9307895800092710610E+4; + $b6 = 2.8729085735721942674E+4; + $b7 = 5.2264952788528545610E+3; + + // coefficients for p not close to 0, 0.5 or 1. + $c0 = 1.42343711074968357734; + $c1 = 4.63033784615654529590; + $c2 = 5.76949722146069140550; + $c3 = 3.64784832476320460504; + $c4 = 1.27045825245236838258; + $c5 = 2.41780725177450611770E-1; + $c6 = 2.27238449892691845833E-2; + $c7 = 7.74545014278341407640E-4; + + $d1 = 2.05319162663775882187; + $d2 = 1.67638483018380384940; + $d3 = 6.89767334985100004550E-1; + $d4 = 1.48103976427480074590E-1; + $d5 = 1.51986665636164571966E-2; + $d6 = 5.47593808499534494600E-4; + $d7 = 1.05075007164441684324E-9; + + // coefficients for p near 0 or 1. + $e0 = 6.65790464350110377720; + $e1 = 5.46378491116411436990; + $e2 = 1.78482653991729133580; + $e3 = 2.96560571828504891230E-1; + $e4 = 2.65321895265761230930E-2; + $e5 = 1.24266094738807843860E-3; + $e6 = 2.71155556874348757815E-5; + $e7 = 2.01033439929228813265E-7; + + $f1 = 5.99832206555887937690E-1; + $f2 = 1.36929880922735805310E-1; + $f3 = 1.48753612908506148525E-2; + $f4 = 7.86869131145613259100E-4; + $f5 = 1.84631831751005468180E-5; + $f6 = 1.42151175831644588870E-7; + $f7 = 2.04426310338993978564E-15; + + $q = $p - 0.5; + + // computation for p close to 0.5 + if (abs($q) <= split1) { + $R = $const1 - $q * $q; + $z = $q * ((((((($a7 * $R + $a6) * $R + $a5) * $R + $a4) * $R + $a3) * $R + $a2) * $R + $a1) * $R + $a0) / + ((((((($b7 * $R + $b6) * $R + $b5) * $R + $b4) * $R + $b3) * $R + $b2) * $R + $b1) * $R + 1); + } else { + if ($q < 0) { + $R = $p; + } else { + $R = 1 - $p; + } + $R = pow(-log($R), 2); + + // computation for p not close to 0, 0.5 or 1. + if ($R <= $split2) { + $R = $R - $const2; + $z = ((((((($c7 * $R + $c6) * $R + $c5) * $R + $c4) * $R + $c3) * $R + $c2) * $R + $c1) * $R + $c0) / + ((((((($d7 * $R + $d6) * $R + $d5) * $R + $d4) * $R + $d3) * $R + $d2) * $R + $d1) * $R + 1); + } else { + // computation for p near 0 or 1. + $R = $R - $split2; + $z = ((((((($e7 * $R + $e6) * $R + $e5) * $R + $e4) * $R + $e3) * $R + $e2) * $R + $e1) * $R + $e0) / + ((((((($f7 * $R + $f6) * $R + $f5) * $R + $f4) * $R + $f3) * $R + $f2) * $R + $f1) * $R + 1); + } + if ($q < 0) { + $z = -$z; + } + } + return $z; + } + + + /** + * AVEDEV + * + * Returns the average of the absolute deviations of data points from their mean. + * AVEDEV is a measure of the variability in a data set. + * + * Excel Function: + * AVEDEV(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function AVEDEV() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + // Return value + $returnValue = null; + + $aMean = self::AVERAGE($aArgs); + if ($aMean != PHPExcel_Calculation_Functions::DIV0()) { + $aCount = 0; + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = abs($arg - $aMean); + } else { + $returnValue += abs($arg - $aMean); + } + ++$aCount; + } + } + + // Return + if ($aCount == 0) { + return PHPExcel_Calculation_Functions::DIV0(); + } + return $returnValue / $aCount; + } + return PHPExcel_Calculation_Functions::NaN(); + } + + + /** + * AVERAGE + * + * Returns the average (arithmetic mean) of the arguments + * + * Excel Function: + * AVERAGE(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function AVERAGE() + { + $returnValue = $aCount = 0; + + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()) as $k => $arg) { + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = $arg; + } else { + $returnValue += $arg; + } + ++$aCount; + } + } + + // Return + if ($aCount > 0) { + return $returnValue / $aCount; + } else { + return PHPExcel_Calculation_Functions::DIV0(); + } + } + + + /** + * AVERAGEA + * + * Returns the average of its arguments, including numbers, text, and logical values + * + * Excel Function: + * AVERAGEA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function AVERAGEA() + { + $returnValue = null; + + $aCount = 0; + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()) as $k => $arg) { + if ((is_bool($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) && ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + if (is_null($returnValue)) { + $returnValue = $arg; + } else { + $returnValue += $arg; + } + ++$aCount; + } + } + } + + if ($aCount > 0) { + return $returnValue / $aCount; + } else { + return PHPExcel_Calculation_Functions::DIV0(); + } + } + + + /** + * AVERAGEIF + * + * Returns the average value from a range of cells that contain numbers within the list of arguments + * + * Excel Function: + * AVERAGEIF(value1[,value2[, ...]],condition) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @param string $condition The criteria that defines which cells will be checked. + * @param mixed[] $averageArgs Data values + * @return float + */ + public static function AVERAGEIF($aArgs, $condition, $averageArgs = array()) + { + $returnValue = 0; + + $aArgs = PHPExcel_Calculation_Functions::flattenArray($aArgs); + $averageArgs = PHPExcel_Calculation_Functions::flattenArray($averageArgs); + if (empty($averageArgs)) { + $averageArgs = $aArgs; + } + $condition = PHPExcel_Calculation_Functions::ifCondition($condition); + // Loop through arguments + $aCount = 0; + foreach ($aArgs as $key => $arg) { + if (!is_numeric($arg)) { + $arg = PHPExcel_Calculation::wrapResult(strtoupper($arg)); + } + $testCondition = '='.$arg.$condition; + if (PHPExcel_Calculation::getInstance()->_calculateFormulaValue($testCondition)) { + if ((is_null($returnValue)) || ($arg > $returnValue)) { + $returnValue += $arg; + ++$aCount; + } + } + } + + if ($aCount > 0) { + return $returnValue / $aCount; + } + return PHPExcel_Calculation_Functions::DIV0(); + } + + + /** + * BETADIST + * + * Returns the beta distribution. + * + * @param float $value Value at which you want to evaluate the distribution + * @param float $alpha Parameter to the distribution + * @param float $beta Parameter to the distribution + * @param boolean $cumulative + * @return float + * + */ + public static function BETADIST($value, $alpha, $beta, $rMin = 0, $rMax = 1) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + $beta = PHPExcel_Calculation_Functions::flattenSingleValue($beta); + $rMin = PHPExcel_Calculation_Functions::flattenSingleValue($rMin); + $rMax = PHPExcel_Calculation_Functions::flattenSingleValue($rMax); + + if ((is_numeric($value)) && (is_numeric($alpha)) && (is_numeric($beta)) && (is_numeric($rMin)) && (is_numeric($rMax))) { + if (($value < $rMin) || ($value > $rMax) || ($alpha <= 0) || ($beta <= 0) || ($rMin == $rMax)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($rMin > $rMax) { + $tmp = $rMin; + $rMin = $rMax; + $rMax = $tmp; + } + $value -= $rMin; + $value /= ($rMax - $rMin); + return self::incompleteBeta($value, $alpha, $beta); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * BETAINV + * + * Returns the inverse of the beta distribution. + * + * @param float $probability Probability at which you want to evaluate the distribution + * @param float $alpha Parameter to the distribution + * @param float $beta Parameter to the distribution + * @param float $rMin Minimum value + * @param float $rMax Maximum value + * @param boolean $cumulative + * @return float + * + */ + public static function BETAINV($probability, $alpha, $beta, $rMin = 0, $rMax = 1) + { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + $beta = PHPExcel_Calculation_Functions::flattenSingleValue($beta); + $rMin = PHPExcel_Calculation_Functions::flattenSingleValue($rMin); + $rMax = PHPExcel_Calculation_Functions::flattenSingleValue($rMax); + + if ((is_numeric($probability)) && (is_numeric($alpha)) && (is_numeric($beta)) && (is_numeric($rMin)) && (is_numeric($rMax))) { + if (($alpha <= 0) || ($beta <= 0) || ($rMin == $rMax) || ($probability <= 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($rMin > $rMax) { + $tmp = $rMin; + $rMin = $rMax; + $rMax = $tmp; + } + $a = 0; + $b = 2; + + $i = 0; + while ((($b - $a) > PRECISION) && ($i++ < MAX_ITERATIONS)) { + $guess = ($a + $b) / 2; + $result = self::BETADIST($guess, $alpha, $beta); + if (($result == $probability) || ($result == 0)) { + $b = $a; + } elseif ($result > $probability) { + $b = $guess; + } else { + $a = $guess; + } + } + if ($i == MAX_ITERATIONS) { + return PHPExcel_Calculation_Functions::NA(); + } + return round($rMin + $guess * ($rMax - $rMin), 12); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * BINOMDIST + * + * Returns the individual term binomial distribution probability. Use BINOMDIST in problems with + * a fixed number of tests or trials, when the outcomes of any trial are only success or failure, + * when trials are independent, and when the probability of success is constant throughout the + * experiment. For example, BINOMDIST can calculate the probability that two of the next three + * babies born are male. + * + * @param float $value Number of successes in trials + * @param float $trials Number of trials + * @param float $probability Probability of success on each trial + * @param boolean $cumulative + * @return float + * + * @todo Cumulative distribution function + * + */ + public static function BINOMDIST($value, $trials, $probability, $cumulative) + { + $value = floor(PHPExcel_Calculation_Functions::flattenSingleValue($value)); + $trials = floor(PHPExcel_Calculation_Functions::flattenSingleValue($trials)); + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + + if ((is_numeric($value)) && (is_numeric($trials)) && (is_numeric($probability))) { + if (($value < 0) || ($value > $trials)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($probability < 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + $summer = 0; + for ($i = 0; $i <= $value; ++$i) { + $summer += PHPExcel_Calculation_MathTrig::COMBIN($trials, $i) * pow($probability, $i) * pow(1 - $probability, $trials - $i); + } + return $summer; + } else { + return PHPExcel_Calculation_MathTrig::COMBIN($trials, $value) * pow($probability, $value) * pow(1 - $probability, $trials - $value) ; + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * CHIDIST + * + * Returns the one-tailed probability of the chi-squared distribution. + * + * @param float $value Value for the function + * @param float $degrees degrees of freedom + * @return float + */ + public static function CHIDIST($value, $degrees) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $degrees = floor(PHPExcel_Calculation_Functions::flattenSingleValue($degrees)); + + if ((is_numeric($value)) && (is_numeric($degrees))) { + if ($degrees < 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($value < 0) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + return 1; + } + return PHPExcel_Calculation_Functions::NaN(); + } + return 1 - (self::incompleteGamma($degrees/2, $value/2) / self::gamma($degrees/2)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * CHIINV + * + * Returns the one-tailed probability of the chi-squared distribution. + * + * @param float $probability Probability for the function + * @param float $degrees degrees of freedom + * @return float + */ + public static function CHIINV($probability, $degrees) + { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $degrees = floor(PHPExcel_Calculation_Functions::flattenSingleValue($degrees)); + + if ((is_numeric($probability)) && (is_numeric($degrees))) { + $xLo = 100; + $xHi = 0; + + $x = $xNew = 1; + $dx = 1; + $i = 0; + + while ((abs($dx) > PRECISION) && ($i++ < MAX_ITERATIONS)) { + // Apply Newton-Raphson step + $result = self::CHIDIST($x, $degrees); + $error = $result - $probability; + if ($error == 0.0) { + $dx = 0; + } elseif ($error < 0.0) { + $xLo = $x; + } else { + $xHi = $x; + } + // Avoid division by zero + if ($result != 0.0) { + $dx = $error / $result; + $xNew = $x - $dx; + } + // If the NR fails to converge (which for example may be the + // case if the initial guess is too rough) we apply a bisection + // step to determine a more narrow interval around the root. + if (($xNew < $xLo) || ($xNew > $xHi) || ($result == 0.0)) { + $xNew = ($xLo + $xHi) / 2; + $dx = $xNew - $x; + } + $x = $xNew; + } + if ($i == MAX_ITERATIONS) { + return PHPExcel_Calculation_Functions::NA(); + } + return round($x, 12); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * CONFIDENCE + * + * Returns the confidence interval for a population mean + * + * @param float $alpha + * @param float $stdDev Standard Deviation + * @param float $size + * @return float + * + */ + public static function CONFIDENCE($alpha, $stdDev, $size) + { + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + $size = floor(PHPExcel_Calculation_Functions::flattenSingleValue($size)); + + if ((is_numeric($alpha)) && (is_numeric($stdDev)) && (is_numeric($size))) { + if (($alpha <= 0) || ($alpha >= 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($stdDev <= 0) || ($size < 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return self::NORMSINV(1 - $alpha / 2) * $stdDev / sqrt($size); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * CORREL + * + * Returns covariance, the average of the products of deviations for each data point pair. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function CORREL($yValues, $xValues = null) + { + if ((is_null($xValues)) || (!is_array($yValues)) || (!is_array($xValues))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (!self::checkTrendArrays($yValues, $xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR, $yValues, $xValues); + return $bestFitLinear->getCorrelation(); + } + + + /** + * COUNT + * + * Counts the number of cells that contain numbers within the list of arguments + * + * Excel Function: + * COUNT(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return int + */ + public static function COUNT() + { + $returnValue = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + ++$returnValue; + } + } + + return $returnValue; + } + + + /** + * COUNTA + * + * Counts the number of cells that are not empty within the list of arguments + * + * Excel Function: + * COUNTA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return int + */ + public static function COUNTA() + { + $returnValue = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric, boolean or string value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) && ($arg != '')))) { + ++$returnValue; + } + } + + return $returnValue; + } + + + /** + * COUNTBLANK + * + * Counts the number of empty cells within the list of arguments + * + * Excel Function: + * COUNTBLANK(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return int + */ + public static function COUNTBLANK() + { + $returnValue = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a blank cell? + if ((is_null($arg)) || ((is_string($arg)) && ($arg == ''))) { + ++$returnValue; + } + } + + return $returnValue; + } + + + /** + * COUNTIF + * + * Counts the number of cells that contain numbers within the list of arguments + * + * Excel Function: + * COUNTIF(value1[,value2[, ...]],condition) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param string $condition The criteria that defines which cells will be counted. + * @return int + */ + public static function COUNTIF($aArgs, $condition) + { + $returnValue = 0; + + $aArgs = PHPExcel_Calculation_Functions::flattenArray($aArgs); + $condition = PHPExcel_Calculation_Functions::ifCondition($condition); + // Loop through arguments + foreach ($aArgs as $arg) { + if (!is_numeric($arg)) { + $arg = PHPExcel_Calculation::wrapResult(strtoupper($arg)); + } + $testCondition = '='.$arg.$condition; + if (PHPExcel_Calculation::getInstance()->_calculateFormulaValue($testCondition)) { + // Is it a value within our criteria + ++$returnValue; + } + } + + return $returnValue; + } + + + /** + * COVAR + * + * Returns covariance, the average of the products of deviations for each data point pair. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function COVAR($yValues, $xValues) + { + if (!self::checkTrendArrays($yValues, $xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR, $yValues, $xValues); + return $bestFitLinear->getCovariance(); + } + + + /** + * CRITBINOM + * + * Returns the smallest value for which the cumulative binomial distribution is greater + * than or equal to a criterion value + * + * See http://support.microsoft.com/kb/828117/ for details of the algorithm used + * + * @param float $trials number of Bernoulli trials + * @param float $probability probability of a success on each trial + * @param float $alpha criterion value + * @return int + * + * @todo Warning. This implementation differs from the algorithm detailed on the MS + * web site in that $CumPGuessMinus1 = $CumPGuess - 1 rather than $CumPGuess - $PGuess + * This eliminates a potential endless loop error, but may have an adverse affect on the + * accuracy of the function (although all my tests have so far returned correct results). + * + */ + public static function CRITBINOM($trials, $probability, $alpha) + { + $trials = floor(PHPExcel_Calculation_Functions::flattenSingleValue($trials)); + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + + if ((is_numeric($trials)) && (is_numeric($probability)) && (is_numeric($alpha))) { + if ($trials < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (($probability < 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (($alpha < 0) || ($alpha > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif ($alpha <= 0.5) { + $t = sqrt(log(1 / ($alpha * $alpha))); + $trialsApprox = 0 - ($t + (2.515517 + 0.802853 * $t + 0.010328 * $t * $t) / (1 + 1.432788 * $t + 0.189269 * $t * $t + 0.001308 * $t * $t * $t)); + } else { + $t = sqrt(log(1 / pow(1 - $alpha, 2))); + $trialsApprox = $t - (2.515517 + 0.802853 * $t + 0.010328 * $t * $t) / (1 + 1.432788 * $t + 0.189269 * $t * $t + 0.001308 * $t * $t * $t); + } + $Guess = floor($trials * $probability + $trialsApprox * sqrt($trials * $probability * (1 - $probability))); + if ($Guess < 0) { + $Guess = 0; + } elseif ($Guess > $trials) { + $Guess = $trials; + } + + $TotalUnscaledProbability = $UnscaledPGuess = $UnscaledCumPGuess = 0.0; + $EssentiallyZero = 10e-12; + + $m = floor($trials * $probability); + ++$TotalUnscaledProbability; + if ($m == $Guess) { + ++$UnscaledPGuess; + } + if ($m <= $Guess) { + ++$UnscaledCumPGuess; + } + + $PreviousValue = 1; + $Done = false; + $k = $m + 1; + while ((!$Done) && ($k <= $trials)) { + $CurrentValue = $PreviousValue * ($trials - $k + 1) * $probability / ($k * (1 - $probability)); + $TotalUnscaledProbability += $CurrentValue; + if ($k == $Guess) { + $UnscaledPGuess += $CurrentValue; + } + if ($k <= $Guess) { + $UnscaledCumPGuess += $CurrentValue; + } + if ($CurrentValue <= $EssentiallyZero) { + $Done = true; + } + $PreviousValue = $CurrentValue; + ++$k; + } + + $PreviousValue = 1; + $Done = false; + $k = $m - 1; + while ((!$Done) && ($k >= 0)) { + $CurrentValue = $PreviousValue * $k + 1 * (1 - $probability) / (($trials - $k) * $probability); + $TotalUnscaledProbability += $CurrentValue; + if ($k == $Guess) { + $UnscaledPGuess += $CurrentValue; + } + if ($k <= $Guess) { + $UnscaledCumPGuess += $CurrentValue; + } + if ($CurrentValue <= $EssentiallyZero) { + $Done = true; + } + $PreviousValue = $CurrentValue; + --$k; + } + + $PGuess = $UnscaledPGuess / $TotalUnscaledProbability; + $CumPGuess = $UnscaledCumPGuess / $TotalUnscaledProbability; + +// $CumPGuessMinus1 = $CumPGuess - $PGuess; + $CumPGuessMinus1 = $CumPGuess - 1; + + while (true) { + if (($CumPGuessMinus1 < $alpha) && ($CumPGuess >= $alpha)) { + return $Guess; + } elseif (($CumPGuessMinus1 < $alpha) && ($CumPGuess < $alpha)) { + $PGuessPlus1 = $PGuess * ($trials - $Guess) * $probability / $Guess / (1 - $probability); + $CumPGuessMinus1 = $CumPGuess; + $CumPGuess = $CumPGuess + $PGuessPlus1; + $PGuess = $PGuessPlus1; + ++$Guess; + } elseif (($CumPGuessMinus1 >= $alpha) && ($CumPGuess >= $alpha)) { + $PGuessMinus1 = $PGuess * $Guess * (1 - $probability) / ($trials - $Guess + 1) / $probability; + $CumPGuess = $CumPGuessMinus1; + $CumPGuessMinus1 = $CumPGuessMinus1 - $PGuess; + $PGuess = $PGuessMinus1; + --$Guess; + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * DEVSQ + * + * Returns the sum of squares of deviations of data points from their sample mean. + * + * Excel Function: + * DEVSQ(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function DEVSQ() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + // Return value + $returnValue = null; + + $aMean = self::AVERAGE($aArgs); + if ($aMean != PHPExcel_Calculation_Functions::DIV0()) { + $aCount = -1; + foreach ($aArgs as $k => $arg) { + // Is it a numeric value? + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || + (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = pow(($arg - $aMean), 2); + } else { + $returnValue += pow(($arg - $aMean), 2); + } + ++$aCount; + } + } + + // Return + if (is_null($returnValue)) { + return PHPExcel_Calculation_Functions::NaN(); + } else { + return $returnValue; + } + } + return self::NA(); + } + + + /** + * EXPONDIST + * + * Returns the exponential distribution. Use EXPONDIST to model the time between events, + * such as how long an automated bank teller takes to deliver cash. For example, you can + * use EXPONDIST to determine the probability that the process takes at most 1 minute. + * + * @param float $value Value of the function + * @param float $lambda The parameter value + * @param boolean $cumulative + * @return float + */ + public static function EXPONDIST($value, $lambda, $cumulative) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $lambda = PHPExcel_Calculation_Functions::flattenSingleValue($lambda); + $cumulative = PHPExcel_Calculation_Functions::flattenSingleValue($cumulative); + + if ((is_numeric($value)) && (is_numeric($lambda))) { + if (($value < 0) || ($lambda < 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + return 1 - exp(0-$value*$lambda); + } else { + return $lambda * exp(0-$value*$lambda); + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * FISHER + * + * Returns the Fisher transformation at x. This transformation produces a function that + * is normally distributed rather than skewed. Use this function to perform hypothesis + * testing on the correlation coefficient. + * + * @param float $value + * @return float + */ + public static function FISHER($value) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + + if (is_numeric($value)) { + if (($value <= -1) || ($value >= 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return 0.5 * log((1+$value)/(1-$value)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * FISHERINV + * + * Returns the inverse of the Fisher transformation. Use this transformation when + * analyzing correlations between ranges or arrays of data. If y = FISHER(x), then + * FISHERINV(y) = x. + * + * @param float $value + * @return float + */ + public static function FISHERINV($value) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + + if (is_numeric($value)) { + return (exp(2 * $value) - 1) / (exp(2 * $value) + 1); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * FORECAST + * + * Calculates, or predicts, a future value by using existing values. The predicted value is a y-value for a given x-value. + * + * @param float Value of X for which we want to find Y + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function FORECAST($xValue, $yValues, $xValues) + { + $xValue = PHPExcel_Calculation_Functions::flattenSingleValue($xValue); + if (!is_numeric($xValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif (!self::checkTrendArrays($yValues, $xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR, $yValues, $xValues); + return $bestFitLinear->getValueOfYForX($xValue); + } + + + /** + * GAMMADIST + * + * Returns the gamma distribution. + * + * @param float $value Value at which you want to evaluate the distribution + * @param float $a Parameter to the distribution + * @param float $b Parameter to the distribution + * @param boolean $cumulative + * @return float + * + */ + public static function GAMMADIST($value, $a, $b, $cumulative) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $a = PHPExcel_Calculation_Functions::flattenSingleValue($a); + $b = PHPExcel_Calculation_Functions::flattenSingleValue($b); + + if ((is_numeric($value)) && (is_numeric($a)) && (is_numeric($b))) { + if (($value < 0) || ($a <= 0) || ($b <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + return self::incompleteGamma($a, $value / $b) / self::gamma($a); + } else { + return (1 / (pow($b, $a) * self::gamma($a))) * pow($value, $a-1) * exp(0-($value / $b)); + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * GAMMAINV + * + * Returns the inverse of the beta distribution. + * + * @param float $probability Probability at which you want to evaluate the distribution + * @param float $alpha Parameter to the distribution + * @param float $beta Parameter to the distribution + * @return float + * + */ + public static function GAMMAINV($probability, $alpha, $beta) + { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + $beta = PHPExcel_Calculation_Functions::flattenSingleValue($beta); + + if ((is_numeric($probability)) && (is_numeric($alpha)) && (is_numeric($beta))) { + if (($alpha <= 0) || ($beta <= 0) || ($probability < 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $xLo = 0; + $xHi = $alpha * $beta * 5; + + $x = $xNew = 1; + $error = $pdf = 0; + $dx = 1024; + $i = 0; + + while ((abs($dx) > PRECISION) && ($i++ < MAX_ITERATIONS)) { + // Apply Newton-Raphson step + $error = self::GAMMADIST($x, $alpha, $beta, true) - $probability; + if ($error < 0.0) { + $xLo = $x; + } else { + $xHi = $x; + } + $pdf = self::GAMMADIST($x, $alpha, $beta, false); + // Avoid division by zero + if ($pdf != 0.0) { + $dx = $error / $pdf; + $xNew = $x - $dx; + } + // If the NR fails to converge (which for example may be the + // case if the initial guess is too rough) we apply a bisection + // step to determine a more narrow interval around the root. + if (($xNew < $xLo) || ($xNew > $xHi) || ($pdf == 0.0)) { + $xNew = ($xLo + $xHi) / 2; + $dx = $xNew - $x; + } + $x = $xNew; + } + if ($i == MAX_ITERATIONS) { + return PHPExcel_Calculation_Functions::NA(); + } + return $x; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * GAMMALN + * + * Returns the natural logarithm of the gamma function. + * + * @param float $value + * @return float + */ + public static function GAMMALN($value) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + + if (is_numeric($value)) { + if ($value <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return log(self::gamma($value)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * GEOMEAN + * + * Returns the geometric mean of an array or range of positive data. For example, you + * can use GEOMEAN to calculate average growth rate given compound interest with + * variable rates. + * + * Excel Function: + * GEOMEAN(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function GEOMEAN() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + $aMean = PHPExcel_Calculation_MathTrig::PRODUCT($aArgs); + if (is_numeric($aMean) && ($aMean > 0)) { + $aCount = self::COUNT($aArgs) ; + if (self::MIN($aArgs) > 0) { + return pow($aMean, (1 / $aCount)); + } + } + return PHPExcel_Calculation_Functions::NaN(); + } + + + /** + * GROWTH + * + * Returns values along a predicted emponential trend + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @param array of mixed Values of X for which we want to find Y + * @param boolean A logical value specifying whether to force the intersect to equal 0. + * @return array of float + */ + public static function GROWTH($yValues, $xValues = array(), $newValues = array(), $const = true) + { + $yValues = PHPExcel_Calculation_Functions::flattenArray($yValues); + $xValues = PHPExcel_Calculation_Functions::flattenArray($xValues); + $newValues = PHPExcel_Calculation_Functions::flattenArray($newValues); + $const = (is_null($const)) ? true : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($const); + + $bestFitExponential = trendClass::calculate(trendClass::TREND_EXPONENTIAL, $yValues, $xValues, $const); + if (empty($newValues)) { + $newValues = $bestFitExponential->getXValues(); + } + + $returnArray = array(); + foreach ($newValues as $xValue) { + $returnArray[0][] = $bestFitExponential->getValueOfYForX($xValue); + } + + return $returnArray; + } + + + /** + * HARMEAN + * + * Returns the harmonic mean of a data set. The harmonic mean is the reciprocal of the + * arithmetic mean of reciprocals. + * + * Excel Function: + * HARMEAN(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function HARMEAN() + { + // Return value + $returnValue = PHPExcel_Calculation_Functions::NA(); + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + if (self::MIN($aArgs) < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $aCount = 0; + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if ($arg <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (is_null($returnValue)) { + $returnValue = (1 / $arg); + } else { + $returnValue += (1 / $arg); + } + ++$aCount; + } + } + + // Return + if ($aCount > 0) { + return 1 / ($returnValue / $aCount); + } else { + return $returnValue; + } + } + + + /** + * HYPGEOMDIST + * + * Returns the hypergeometric distribution. HYPGEOMDIST returns the probability of a given number of + * sample successes, given the sample size, population successes, and population size. + * + * @param float $sampleSuccesses Number of successes in the sample + * @param float $sampleNumber Size of the sample + * @param float $populationSuccesses Number of successes in the population + * @param float $populationNumber Population size + * @return float + * + */ + public static function HYPGEOMDIST($sampleSuccesses, $sampleNumber, $populationSuccesses, $populationNumber) + { + $sampleSuccesses = floor(PHPExcel_Calculation_Functions::flattenSingleValue($sampleSuccesses)); + $sampleNumber = floor(PHPExcel_Calculation_Functions::flattenSingleValue($sampleNumber)); + $populationSuccesses = floor(PHPExcel_Calculation_Functions::flattenSingleValue($populationSuccesses)); + $populationNumber = floor(PHPExcel_Calculation_Functions::flattenSingleValue($populationNumber)); + + if ((is_numeric($sampleSuccesses)) && (is_numeric($sampleNumber)) && (is_numeric($populationSuccesses)) && (is_numeric($populationNumber))) { + if (($sampleSuccesses < 0) || ($sampleSuccesses > $sampleNumber) || ($sampleSuccesses > $populationSuccesses)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($sampleNumber <= 0) || ($sampleNumber > $populationNumber)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($populationSuccesses <= 0) || ($populationSuccesses > $populationNumber)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return PHPExcel_Calculation_MathTrig::COMBIN($populationSuccesses, $sampleSuccesses) * + PHPExcel_Calculation_MathTrig::COMBIN($populationNumber - $populationSuccesses, $sampleNumber - $sampleSuccesses) / + PHPExcel_Calculation_MathTrig::COMBIN($populationNumber, $sampleNumber); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * INTERCEPT + * + * Calculates the point at which a line will intersect the y-axis by using existing x-values and y-values. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function INTERCEPT($yValues, $xValues) + { + if (!self::checkTrendArrays($yValues, $xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR, $yValues, $xValues); + return $bestFitLinear->getIntersect(); + } + + + /** + * KURT + * + * Returns the kurtosis of a data set. Kurtosis characterizes the relative peakedness + * or flatness of a distribution compared with the normal distribution. Positive + * kurtosis indicates a relatively peaked distribution. Negative kurtosis indicates a + * relatively flat distribution. + * + * @param array Data Series + * @return float + */ + public static function KURT() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + $mean = self::AVERAGE($aArgs); + $stdDev = self::STDEV($aArgs); + + if ($stdDev > 0) { + $count = $summer = 0; + // Loop through arguments + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $summer += pow((($arg - $mean) / $stdDev), 4); + ++$count; + } + } + } + + // Return + if ($count > 3) { + return $summer * ($count * ($count+1) / (($count-1) * ($count-2) * ($count-3))) - (3 * pow($count-1, 2) / (($count-2) * ($count-3))); + } + } + return PHPExcel_Calculation_Functions::DIV0(); + } + + + /** + * LARGE + * + * Returns the nth largest value in a data set. You can use this function to + * select a value based on its relative standing. + * + * Excel Function: + * LARGE(value1[,value2[, ...]],entry) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param int $entry Position (ordered from the largest) in the array or range of data to return + * @return float + * + */ + public static function LARGE() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $entry = floor(array_pop($aArgs)); + + if ((is_numeric($entry)) && (!is_string($entry))) { + $mArgs = array(); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + $count = self::COUNT($mArgs); + $entry = floor(--$entry); + if (($entry < 0) || ($entry >= $count) || ($count == 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + rsort($mArgs); + return $mArgs[$entry]; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * LINEST + * + * Calculates the statistics for a line by using the "least squares" method to calculate a straight line that best fits your data, + * and then returns an array that describes the line. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @param boolean A logical value specifying whether to force the intersect to equal 0. + * @param boolean A logical value specifying whether to return additional regression statistics. + * @return array + */ + public static function LINEST($yValues, $xValues = null, $const = true, $stats = false) + { + $const = (is_null($const)) ? true : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($const); + $stats = (is_null($stats)) ? false : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($stats); + if (is_null($xValues)) { + $xValues = range(1, count(PHPExcel_Calculation_Functions::flattenArray($yValues))); + } + + if (!self::checkTrendArrays($yValues, $xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return 0; + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR, $yValues, $xValues, $const); + if ($stats) { + return array( + array( + $bestFitLinear->getSlope(), + $bestFitLinear->getSlopeSE(), + $bestFitLinear->getGoodnessOfFit(), + $bestFitLinear->getF(), + $bestFitLinear->getSSRegression(), + ), + array( + $bestFitLinear->getIntersect(), + $bestFitLinear->getIntersectSE(), + $bestFitLinear->getStdevOfResiduals(), + $bestFitLinear->getDFResiduals(), + $bestFitLinear->getSSResiduals() + ) + ); + } else { + return array( + $bestFitLinear->getSlope(), + $bestFitLinear->getIntersect() + ); + } + } + + + /** + * LOGEST + * + * Calculates an exponential curve that best fits the X and Y data series, + * and then returns an array that describes the line. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @param boolean A logical value specifying whether to force the intersect to equal 0. + * @param boolean A logical value specifying whether to return additional regression statistics. + * @return array + */ + public static function LOGEST($yValues, $xValues = null, $const = true, $stats = false) + { + $const = (is_null($const)) ? true : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($const); + $stats = (is_null($stats)) ? false : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($stats); + if (is_null($xValues)) { + $xValues = range(1, count(PHPExcel_Calculation_Functions::flattenArray($yValues))); + } + + if (!self::checkTrendArrays($yValues, $xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + foreach ($yValues as $value) { + if ($value <= 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + } + + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return 1; + } + + $bestFitExponential = trendClass::calculate(trendClass::TREND_EXPONENTIAL, $yValues, $xValues, $const); + if ($stats) { + return array( + array( + $bestFitExponential->getSlope(), + $bestFitExponential->getSlopeSE(), + $bestFitExponential->getGoodnessOfFit(), + $bestFitExponential->getF(), + $bestFitExponential->getSSRegression(), + ), + array( + $bestFitExponential->getIntersect(), + $bestFitExponential->getIntersectSE(), + $bestFitExponential->getStdevOfResiduals(), + $bestFitExponential->getDFResiduals(), + $bestFitExponential->getSSResiduals() + ) + ); + } else { + return array( + $bestFitExponential->getSlope(), + $bestFitExponential->getIntersect() + ); + } + } + + + /** + * LOGINV + * + * Returns the inverse of the normal cumulative distribution + * + * @param float $probability + * @param float $mean + * @param float $stdDev + * @return float + * + * @todo Try implementing P J Acklam's refinement algorithm for greater + * accuracy if I can get my head round the mathematics + * (as described at) http://home.online.no/~pjacklam/notes/invnorm/ + */ + public static function LOGINV($probability, $mean, $stdDev) + { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + + if ((is_numeric($probability)) && (is_numeric($mean)) && (is_numeric($stdDev))) { + if (($probability < 0) || ($probability > 1) || ($stdDev <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return exp($mean + $stdDev * self::NORMSINV($probability)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * LOGNORMDIST + * + * Returns the cumulative lognormal distribution of x, where ln(x) is normally distributed + * with parameters mean and standard_dev. + * + * @param float $value + * @param float $mean + * @param float $stdDev + * @return float + */ + public static function LOGNORMDIST($value, $mean, $stdDev) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + + if ((is_numeric($value)) && (is_numeric($mean)) && (is_numeric($stdDev))) { + if (($value <= 0) || ($stdDev <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return self::NORMSDIST((log($value) - $mean) / $stdDev); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * MAX + * + * MAX returns the value of the element of the values passed that has the highest value, + * with negative numbers considered smaller than positive numbers. + * + * Excel Function: + * MAX(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MAX() + { + $returnValue = null; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if ((is_null($returnValue)) || ($arg > $returnValue)) { + $returnValue = $arg; + } + } + } + + if (is_null($returnValue)) { + return 0; + } + return $returnValue; + } + + + /** + * MAXA + * + * Returns the greatest value in a list of arguments, including numbers, text, and logical values + * + * Excel Function: + * MAXA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MAXA() + { + $returnValue = null; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) && ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + if ((is_null($returnValue)) || ($arg > $returnValue)) { + $returnValue = $arg; + } + } + } + + if (is_null($returnValue)) { + return 0; + } + return $returnValue; + } + + + /** + * MAXIF + * + * Counts the maximum value within a range of cells that contain numbers within the list of arguments + * + * Excel Function: + * MAXIF(value1[,value2[, ...]],condition) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @param string $condition The criteria that defines which cells will be checked. + * @return float + */ + public static function MAXIF($aArgs, $condition, $sumArgs = array()) + { + $returnValue = null; + + $aArgs = PHPExcel_Calculation_Functions::flattenArray($aArgs); + $sumArgs = PHPExcel_Calculation_Functions::flattenArray($sumArgs); + if (empty($sumArgs)) { + $sumArgs = $aArgs; + } + $condition = PHPExcel_Calculation_Functions::ifCondition($condition); + // Loop through arguments + foreach ($aArgs as $key => $arg) { + if (!is_numeric($arg)) { + $arg = PHPExcel_Calculation::wrapResult(strtoupper($arg)); + } + $testCondition = '='.$arg.$condition; + if (PHPExcel_Calculation::getInstance()->_calculateFormulaValue($testCondition)) { + if ((is_null($returnValue)) || ($arg > $returnValue)) { + $returnValue = $arg; + } + } + } + + return $returnValue; + } + + /** + * MEDIAN + * + * Returns the median of the given numbers. The median is the number in the middle of a set of numbers. + * + * Excel Function: + * MEDIAN(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MEDIAN() + { + $returnValue = PHPExcel_Calculation_Functions::NaN(); + + $mArgs = array(); + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + + $mValueCount = count($mArgs); + if ($mValueCount > 0) { + sort($mArgs, SORT_NUMERIC); + $mValueCount = $mValueCount / 2; + if ($mValueCount == floor($mValueCount)) { + $returnValue = ($mArgs[$mValueCount--] + $mArgs[$mValueCount]) / 2; + } else { + $mValueCount = floor($mValueCount); + $returnValue = $mArgs[$mValueCount]; + } + } + + return $returnValue; + } + + + /** + * MIN + * + * MIN returns the value of the element of the values passed that has the smallest value, + * with negative numbers considered smaller than positive numbers. + * + * Excel Function: + * MIN(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MIN() + { + $returnValue = null; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if ((is_null($returnValue)) || ($arg < $returnValue)) { + $returnValue = $arg; + } + } + } + + if (is_null($returnValue)) { + return 0; + } + return $returnValue; + } + + + /** + * MINA + * + * Returns the smallest value in a list of arguments, including numbers, text, and logical values + * + * Excel Function: + * MINA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MINA() + { + $returnValue = null; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) && ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + if ((is_null($returnValue)) || ($arg < $returnValue)) { + $returnValue = $arg; + } + } + } + + if (is_null($returnValue)) { + return 0; + } + return $returnValue; + } + + + /** + * MINIF + * + * Returns the minimum value within a range of cells that contain numbers within the list of arguments + * + * Excel Function: + * MINIF(value1[,value2[, ...]],condition) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @param string $condition The criteria that defines which cells will be checked. + * @return float + */ + public static function MINIF($aArgs, $condition, $sumArgs = array()) + { + $returnValue = null; + + $aArgs = PHPExcel_Calculation_Functions::flattenArray($aArgs); + $sumArgs = PHPExcel_Calculation_Functions::flattenArray($sumArgs); + if (empty($sumArgs)) { + $sumArgs = $aArgs; + } + $condition = PHPExcel_Calculation_Functions::ifCondition($condition); + // Loop through arguments + foreach ($aArgs as $key => $arg) { + if (!is_numeric($arg)) { + $arg = PHPExcel_Calculation::wrapResult(strtoupper($arg)); + } + $testCondition = '='.$arg.$condition; + if (PHPExcel_Calculation::getInstance()->_calculateFormulaValue($testCondition)) { + if ((is_null($returnValue)) || ($arg < $returnValue)) { + $returnValue = $arg; + } + } + } + + return $returnValue; + } + + + // + // Special variant of array_count_values that isn't limited to strings and integers, + // but can work with floating point numbers as values + // + private static function modeCalc($data) + { + $frequencyArray = array(); + foreach ($data as $datum) { + $found = false; + foreach ($frequencyArray as $key => $value) { + if ((string) $value['value'] == (string) $datum) { + ++$frequencyArray[$key]['frequency']; + $found = true; + break; + } + } + if (!$found) { + $frequencyArray[] = array( + 'value' => $datum, + 'frequency' => 1 + ); + } + } + + foreach ($frequencyArray as $key => $value) { + $frequencyList[$key] = $value['frequency']; + $valueList[$key] = $value['value']; + } + array_multisort($frequencyList, SORT_DESC, $valueList, SORT_ASC, SORT_NUMERIC, $frequencyArray); + + if ($frequencyArray[0]['frequency'] == 1) { + return PHPExcel_Calculation_Functions::NA(); + } + return $frequencyArray[0]['value']; + } + + + /** + * MODE + * + * Returns the most frequently occurring, or repetitive, value in an array or range of data + * + * Excel Function: + * MODE(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MODE() + { + $returnValue = PHPExcel_Calculation_Functions::NA(); + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + $mArgs = array(); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + + if (!empty($mArgs)) { + return self::modeCalc($mArgs); + } + + return $returnValue; + } + + + /** + * NEGBINOMDIST + * + * Returns the negative binomial distribution. NEGBINOMDIST returns the probability that + * there will be number_f failures before the number_s-th success, when the constant + * probability of a success is probability_s. This function is similar to the binomial + * distribution, except that the number of successes is fixed, and the number of trials is + * variable. Like the binomial, trials are assumed to be independent. + * + * @param float $failures Number of Failures + * @param float $successes Threshold number of Successes + * @param float $probability Probability of success on each trial + * @return float + * + */ + public static function NEGBINOMDIST($failures, $successes, $probability) + { + $failures = floor(PHPExcel_Calculation_Functions::flattenSingleValue($failures)); + $successes = floor(PHPExcel_Calculation_Functions::flattenSingleValue($successes)); + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + + if ((is_numeric($failures)) && (is_numeric($successes)) && (is_numeric($probability))) { + if (($failures < 0) || ($successes < 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (($probability < 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + if (($failures + $successes - 1) <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + } + return (PHPExcel_Calculation_MathTrig::COMBIN($failures + $successes - 1, $successes - 1)) * (pow($probability, $successes)) * (pow(1 - $probability, $failures)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * NORMDIST + * + * Returns the normal distribution for the specified mean and standard deviation. This + * function has a very wide range of applications in statistics, including hypothesis + * testing. + * + * @param float $value + * @param float $mean Mean Value + * @param float $stdDev Standard Deviation + * @param boolean $cumulative + * @return float + * + */ + public static function NORMDIST($value, $mean, $stdDev, $cumulative) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + + if ((is_numeric($value)) && (is_numeric($mean)) && (is_numeric($stdDev))) { + if ($stdDev < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + return 0.5 * (1 + PHPExcel_Calculation_Engineering::erfVal(($value - $mean) / ($stdDev * sqrt(2)))); + } else { + return (1 / (SQRT2PI * $stdDev)) * exp(0 - (pow($value - $mean, 2) / (2 * ($stdDev * $stdDev)))); + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * NORMINV + * + * Returns the inverse of the normal cumulative distribution for the specified mean and standard deviation. + * + * @param float $value + * @param float $mean Mean Value + * @param float $stdDev Standard Deviation + * @return float + * + */ + public static function NORMINV($probability, $mean, $stdDev) + { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + + if ((is_numeric($probability)) && (is_numeric($mean)) && (is_numeric($stdDev))) { + if (($probability < 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($stdDev < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return (self::inverseNcdf($probability) * $stdDev) + $mean; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * NORMSDIST + * + * Returns the standard normal cumulative distribution function. The distribution has + * a mean of 0 (zero) and a standard deviation of one. Use this function in place of a + * table of standard normal curve areas. + * + * @param float $value + * @return float + */ + public static function NORMSDIST($value) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + + return self::NORMDIST($value, 0, 1, true); + } + + + /** + * NORMSINV + * + * Returns the inverse of the standard normal cumulative distribution + * + * @param float $value + * @return float + */ + public static function NORMSINV($value) + { + return self::NORMINV($value, 0, 1); + } + + + /** + * PERCENTILE + * + * Returns the nth percentile of values in a range.. + * + * Excel Function: + * PERCENTILE(value1[,value2[, ...]],entry) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param float $entry Percentile value in the range 0..1, inclusive. + * @return float + */ + public static function PERCENTILE() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $entry = array_pop($aArgs); + + if ((is_numeric($entry)) && (!is_string($entry))) { + if (($entry < 0) || ($entry > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $mArgs = array(); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + $mValueCount = count($mArgs); + if ($mValueCount > 0) { + sort($mArgs); + $count = self::COUNT($mArgs); + $index = $entry * ($count-1); + $iBase = floor($index); + if ($index == $iBase) { + return $mArgs[$index]; + } else { + $iNext = $iBase + 1; + $iProportion = $index - $iBase; + return $mArgs[$iBase] + (($mArgs[$iNext] - $mArgs[$iBase]) * $iProportion) ; + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * PERCENTRANK + * + * Returns the rank of a value in a data set as a percentage of the data set. + * + * @param array of number An array of, or a reference to, a list of numbers. + * @param number The number whose rank you want to find. + * @param number The number of significant digits for the returned percentage value. + * @return float + */ + public static function PERCENTRANK($valueSet, $value, $significance = 3) + { + $valueSet = PHPExcel_Calculation_Functions::flattenArray($valueSet); + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $significance = (is_null($significance)) ? 3 : (integer) PHPExcel_Calculation_Functions::flattenSingleValue($significance); + + foreach ($valueSet as $key => $valueEntry) { + if (!is_numeric($valueEntry)) { + unset($valueSet[$key]); + } + } + sort($valueSet, SORT_NUMERIC); + $valueCount = count($valueSet); + if ($valueCount == 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $valueAdjustor = $valueCount - 1; + if (($value < $valueSet[0]) || ($value > $valueSet[$valueAdjustor])) { + return PHPExcel_Calculation_Functions::NA(); + } + + $pos = array_search($value, $valueSet); + if ($pos === false) { + $pos = 0; + $testValue = $valueSet[0]; + while ($testValue < $value) { + $testValue = $valueSet[++$pos]; + } + --$pos; + $pos += (($value - $valueSet[$pos]) / ($testValue - $valueSet[$pos])); + } + + return round($pos / $valueAdjustor, $significance); + } + + + /** + * PERMUT + * + * Returns the number of permutations for a given number of objects that can be + * selected from number objects. A permutation is any set or subset of objects or + * events where internal order is significant. Permutations are different from + * combinations, for which the internal order is not significant. Use this function + * for lottery-style probability calculations. + * + * @param int $numObjs Number of different objects + * @param int $numInSet Number of objects in each permutation + * @return int Number of permutations + */ + public static function PERMUT($numObjs, $numInSet) + { + $numObjs = PHPExcel_Calculation_Functions::flattenSingleValue($numObjs); + $numInSet = PHPExcel_Calculation_Functions::flattenSingleValue($numInSet); + + if ((is_numeric($numObjs)) && (is_numeric($numInSet))) { + $numInSet = floor($numInSet); + if ($numObjs < $numInSet) { + return PHPExcel_Calculation_Functions::NaN(); + } + return round(PHPExcel_Calculation_MathTrig::FACT($numObjs) / PHPExcel_Calculation_MathTrig::FACT($numObjs - $numInSet)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * POISSON + * + * Returns the Poisson distribution. A common application of the Poisson distribution + * is predicting the number of events over a specific time, such as the number of + * cars arriving at a toll plaza in 1 minute. + * + * @param float $value + * @param float $mean Mean Value + * @param boolean $cumulative + * @return float + * + */ + public static function POISSON($value, $mean, $cumulative) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + + if ((is_numeric($value)) && (is_numeric($mean))) { + if (($value < 0) || ($mean <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + $summer = 0; + for ($i = 0; $i <= floor($value); ++$i) { + $summer += pow($mean, $i) / PHPExcel_Calculation_MathTrig::FACT($i); + } + return exp(0-$mean) * $summer; + } else { + return (exp(0-$mean) * pow($mean, $value)) / PHPExcel_Calculation_MathTrig::FACT($value); + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * QUARTILE + * + * Returns the quartile of a data set. + * + * Excel Function: + * QUARTILE(value1[,value2[, ...]],entry) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param int $entry Quartile value in the range 1..3, inclusive. + * @return float + */ + public static function QUARTILE() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $entry = floor(array_pop($aArgs)); + + if ((is_numeric($entry)) && (!is_string($entry))) { + $entry /= 4; + if (($entry < 0) || ($entry > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return self::PERCENTILE($aArgs, $entry); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * RANK + * + * Returns the rank of a number in a list of numbers. + * + * @param number The number whose rank you want to find. + * @param array of number An array of, or a reference to, a list of numbers. + * @param mixed Order to sort the values in the value set + * @return float + */ + public static function RANK($value, $valueSet, $order = 0) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $valueSet = PHPExcel_Calculation_Functions::flattenArray($valueSet); + $order = (is_null($order)) ? 0 : (integer) PHPExcel_Calculation_Functions::flattenSingleValue($order); + + foreach ($valueSet as $key => $valueEntry) { + if (!is_numeric($valueEntry)) { + unset($valueSet[$key]); + } + } + + if ($order == 0) { + rsort($valueSet, SORT_NUMERIC); + } else { + sort($valueSet, SORT_NUMERIC); + } + $pos = array_search($value, $valueSet); + if ($pos === false) { + return PHPExcel_Calculation_Functions::NA(); + } + + return ++$pos; + } + + + /** + * RSQ + * + * Returns the square of the Pearson product moment correlation coefficient through data points in known_y's and known_x's. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function RSQ($yValues, $xValues) + { + if (!self::checkTrendArrays($yValues, $xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR, $yValues, $xValues); + return $bestFitLinear->getGoodnessOfFit(); + } + + + /** + * SKEW + * + * Returns the skewness of a distribution. Skewness characterizes the degree of asymmetry + * of a distribution around its mean. Positive skewness indicates a distribution with an + * asymmetric tail extending toward more positive values. Negative skewness indicates a + * distribution with an asymmetric tail extending toward more negative values. + * + * @param array Data Series + * @return float + */ + public static function SKEW() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + $mean = self::AVERAGE($aArgs); + $stdDev = self::STDEV($aArgs); + + $count = $summer = 0; + // Loop through arguments + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $summer += pow((($arg - $mean) / $stdDev), 3); + ++$count; + } + } + } + + if ($count > 2) { + return $summer * ($count / (($count-1) * ($count-2))); + } + return PHPExcel_Calculation_Functions::DIV0(); + } + + + /** + * SLOPE + * + * Returns the slope of the linear regression line through data points in known_y's and known_x's. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function SLOPE($yValues, $xValues) + { + if (!self::checkTrendArrays($yValues, $xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR, $yValues, $xValues); + return $bestFitLinear->getSlope(); + } + + + /** + * SMALL + * + * Returns the nth smallest value in a data set. You can use this function to + * select a value based on its relative standing. + * + * Excel Function: + * SMALL(value1[,value2[, ...]],entry) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param int $entry Position (ordered from the smallest) in the array or range of data to return + * @return float + */ + public static function SMALL() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $entry = array_pop($aArgs); + + if ((is_numeric($entry)) && (!is_string($entry))) { + $mArgs = array(); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + $count = self::COUNT($mArgs); + $entry = floor(--$entry); + if (($entry < 0) || ($entry >= $count) || ($count == 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + sort($mArgs); + return $mArgs[$entry]; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * STANDARDIZE + * + * Returns a normalized value from a distribution characterized by mean and standard_dev. + * + * @param float $value Value to normalize + * @param float $mean Mean Value + * @param float $stdDev Standard Deviation + * @return float Standardized value + */ + public static function STANDARDIZE($value, $mean, $stdDev) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + + if ((is_numeric($value)) && (is_numeric($mean)) && (is_numeric($stdDev))) { + if ($stdDev <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return ($value - $mean) / $stdDev ; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * STDEV + * + * Estimates standard deviation based on a sample. The standard deviation is a measure of how + * widely values are dispersed from the average value (the mean). + * + * Excel Function: + * STDEV(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function STDEV() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + // Return value + $returnValue = null; + + $aMean = self::AVERAGE($aArgs); + if (!is_null($aMean)) { + $aCount = -1; + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = pow(($arg - $aMean), 2); + } else { + $returnValue += pow(($arg - $aMean), 2); + } + ++$aCount; + } + } + + // Return + if (($aCount > 0) && ($returnValue >= 0)) { + return sqrt($returnValue / $aCount); + } + } + return PHPExcel_Calculation_Functions::DIV0(); + } + + + /** + * STDEVA + * + * Estimates standard deviation based on a sample, including numbers, text, and logical values + * + * Excel Function: + * STDEVA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function STDEVA() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + $returnValue = null; + + $aMean = self::AVERAGEA($aArgs); + if (!is_null($aMean)) { + $aCount = -1; + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + if (is_null($returnValue)) { + $returnValue = pow(($arg - $aMean), 2); + } else { + $returnValue += pow(($arg - $aMean), 2); + } + ++$aCount; + } + } + } + + if (($aCount > 0) && ($returnValue >= 0)) { + return sqrt($returnValue / $aCount); + } + } + return PHPExcel_Calculation_Functions::DIV0(); + } + + + /** + * STDEVP + * + * Calculates standard deviation based on the entire population + * + * Excel Function: + * STDEVP(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function STDEVP() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + $returnValue = null; + + $aMean = self::AVERAGE($aArgs); + if (!is_null($aMean)) { + $aCount = 0; + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = pow(($arg - $aMean), 2); + } else { + $returnValue += pow(($arg - $aMean), 2); + } + ++$aCount; + } + } + + if (($aCount > 0) && ($returnValue >= 0)) { + return sqrt($returnValue / $aCount); + } + } + return PHPExcel_Calculation_Functions::DIV0(); + } + + + /** + * STDEVPA + * + * Calculates standard deviation based on the entire population, including numbers, text, and logical values + * + * Excel Function: + * STDEVPA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function STDEVPA() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + $returnValue = null; + + $aMean = self::AVERAGEA($aArgs); + if (!is_null($aMean)) { + $aCount = 0; + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + if (is_null($returnValue)) { + $returnValue = pow(($arg - $aMean), 2); + } else { + $returnValue += pow(($arg - $aMean), 2); + } + ++$aCount; + } + } + } + + if (($aCount > 0) && ($returnValue >= 0)) { + return sqrt($returnValue / $aCount); + } + } + return PHPExcel_Calculation_Functions::DIV0(); + } + + + /** + * STEYX + * + * Returns the standard error of the predicted y-value for each x in the regression. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function STEYX($yValues, $xValues) + { + if (!self::checkTrendArrays($yValues, $xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR, $yValues, $xValues); + return $bestFitLinear->getStdevOfResiduals(); + } + + + /** + * TDIST + * + * Returns the probability of Student's T distribution. + * + * @param float $value Value for the function + * @param float $degrees degrees of freedom + * @param float $tails number of tails (1 or 2) + * @return float + */ + public static function TDIST($value, $degrees, $tails) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $degrees = floor(PHPExcel_Calculation_Functions::flattenSingleValue($degrees)); + $tails = floor(PHPExcel_Calculation_Functions::flattenSingleValue($tails)); + + if ((is_numeric($value)) && (is_numeric($degrees)) && (is_numeric($tails))) { + if (($value < 0) || ($degrees < 1) || ($tails < 1) || ($tails > 2)) { + return PHPExcel_Calculation_Functions::NaN(); + } + // tdist, which finds the probability that corresponds to a given value + // of t with k degrees of freedom. This algorithm is translated from a + // pascal function on p81 of "Statistical Computing in Pascal" by D + // Cooke, A H Craven & G M Clark (1985: Edward Arnold (Pubs.) Ltd: + // London). The above Pascal algorithm is itself a translation of the + // fortran algoritm "AS 3" by B E Cooper of the Atlas Computer + // Laboratory as reported in (among other places) "Applied Statistics + // Algorithms", editied by P Griffiths and I D Hill (1985; Ellis + // Horwood Ltd.; W. Sussex, England). + $tterm = $degrees; + $ttheta = atan2($value, sqrt($tterm)); + $tc = cos($ttheta); + $ts = sin($ttheta); + $tsum = 0; + + if (($degrees % 2) == 1) { + $ti = 3; + $tterm = $tc; + } else { + $ti = 2; + $tterm = 1; + } + + $tsum = $tterm; + while ($ti < $degrees) { + $tterm *= $tc * $tc * ($ti - 1) / $ti; + $tsum += $tterm; + $ti += 2; + } + $tsum *= $ts; + if (($degrees % 2) == 1) { + $tsum = M_2DIVPI * ($tsum + $ttheta); + } + $tValue = 0.5 * (1 + $tsum); + if ($tails == 1) { + return 1 - abs($tValue); + } else { + return 1 - abs((1 - $tValue) - $tValue); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * TINV + * + * Returns the one-tailed probability of the chi-squared distribution. + * + * @param float $probability Probability for the function + * @param float $degrees degrees of freedom + * @return float + */ + public static function TINV($probability, $degrees) + { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $degrees = floor(PHPExcel_Calculation_Functions::flattenSingleValue($degrees)); + + if ((is_numeric($probability)) && (is_numeric($degrees))) { + $xLo = 100; + $xHi = 0; + + $x = $xNew = 1; + $dx = 1; + $i = 0; + + while ((abs($dx) > PRECISION) && ($i++ < MAX_ITERATIONS)) { + // Apply Newton-Raphson step + $result = self::TDIST($x, $degrees, 2); + $error = $result - $probability; + if ($error == 0.0) { + $dx = 0; + } elseif ($error < 0.0) { + $xLo = $x; + } else { + $xHi = $x; + } + // Avoid division by zero + if ($result != 0.0) { + $dx = $error / $result; + $xNew = $x - $dx; + } + // If the NR fails to converge (which for example may be the + // case if the initial guess is too rough) we apply a bisection + // step to determine a more narrow interval around the root. + if (($xNew < $xLo) || ($xNew > $xHi) || ($result == 0.0)) { + $xNew = ($xLo + $xHi) / 2; + $dx = $xNew - $x; + } + $x = $xNew; + } + if ($i == MAX_ITERATIONS) { + return PHPExcel_Calculation_Functions::NA(); + } + return round($x, 12); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * TREND + * + * Returns values along a linear trend + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @param array of mixed Values of X for which we want to find Y + * @param boolean A logical value specifying whether to force the intersect to equal 0. + * @return array of float + */ + public static function TREND($yValues, $xValues = array(), $newValues = array(), $const = true) + { + $yValues = PHPExcel_Calculation_Functions::flattenArray($yValues); + $xValues = PHPExcel_Calculation_Functions::flattenArray($xValues); + $newValues = PHPExcel_Calculation_Functions::flattenArray($newValues); + $const = (is_null($const)) ? true : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($const); + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR, $yValues, $xValues, $const); + if (empty($newValues)) { + $newValues = $bestFitLinear->getXValues(); + } + + $returnArray = array(); + foreach ($newValues as $xValue) { + $returnArray[0][] = $bestFitLinear->getValueOfYForX($xValue); + } + + return $returnArray; + } + + + /** + * TRIMMEAN + * + * Returns the mean of the interior of a data set. TRIMMEAN calculates the mean + * taken by excluding a percentage of data points from the top and bottom tails + * of a data set. + * + * Excel Function: + * TRIMEAN(value1[,value2[, ...]], $discard) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param float $discard Percentage to discard + * @return float + */ + public static function TRIMMEAN() + { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $percent = array_pop($aArgs); + + if ((is_numeric($percent)) && (!is_string($percent))) { + if (($percent < 0) || ($percent > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $mArgs = array(); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + $discard = floor(self::COUNT($mArgs) * $percent / 2); + sort($mArgs); + for ($i=0; $i < $discard; ++$i) { + array_pop($mArgs); + array_shift($mArgs); + } + return self::AVERAGE($mArgs); + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * VARFunc + * + * Estimates variance based on a sample. + * + * Excel Function: + * VAR(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function VARFunc() + { + $returnValue = PHPExcel_Calculation_Functions::DIV0(); + + $summerA = $summerB = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + $aCount = 0; + foreach ($aArgs as $arg) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $summerA += ($arg * $arg); + $summerB += $arg; + ++$aCount; + } + } + + if ($aCount > 1) { + $summerA *= $aCount; + $summerB *= $summerB; + $returnValue = ($summerA - $summerB) / ($aCount * ($aCount - 1)); + } + return $returnValue; + } + + + /** + * VARA + * + * Estimates variance based on a sample, including numbers, text, and logical values + * + * Excel Function: + * VARA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function VARA() + { + $returnValue = PHPExcel_Calculation_Functions::DIV0(); + + $summerA = $summerB = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + $aCount = 0; + foreach ($aArgs as $k => $arg) { + if ((is_string($arg)) && + (PHPExcel_Calculation_Functions::isValue($k))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ((is_string($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + $summerA += ($arg * $arg); + $summerB += $arg; + ++$aCount; + } + } + } + + if ($aCount > 1) { + $summerA *= $aCount; + $summerB *= $summerB; + $returnValue = ($summerA - $summerB) / ($aCount * ($aCount - 1)); + } + return $returnValue; + } + + + /** + * VARP + * + * Calculates variance based on the entire population + * + * Excel Function: + * VARP(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function VARP() + { + // Return value + $returnValue = PHPExcel_Calculation_Functions::DIV0(); + + $summerA = $summerB = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + $aCount = 0; + foreach ($aArgs as $arg) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $summerA += ($arg * $arg); + $summerB += $arg; + ++$aCount; + } + } + + if ($aCount > 0) { + $summerA *= $aCount; + $summerB *= $summerB; + $returnValue = ($summerA - $summerB) / ($aCount * $aCount); + } + return $returnValue; + } + + + /** + * VARPA + * + * Calculates variance based on the entire population, including numbers, text, and logical values + * + * Excel Function: + * VARPA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function VARPA() + { + $returnValue = PHPExcel_Calculation_Functions::DIV0(); + + $summerA = $summerB = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + $aCount = 0; + foreach ($aArgs as $k => $arg) { + if ((is_string($arg)) && + (PHPExcel_Calculation_Functions::isValue($k))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ((is_string($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + $summerA += ($arg * $arg); + $summerB += $arg; + ++$aCount; + } + } + } + + if ($aCount > 0) { + $summerA *= $aCount; + $summerB *= $summerB; + $returnValue = ($summerA - $summerB) / ($aCount * $aCount); + } + return $returnValue; + } + + + /** + * WEIBULL + * + * Returns the Weibull distribution. Use this distribution in reliability + * analysis, such as calculating a device's mean time to failure. + * + * @param float $value + * @param float $alpha Alpha Parameter + * @param float $beta Beta Parameter + * @param boolean $cumulative + * @return float + * + */ + public static function WEIBULL($value, $alpha, $beta, $cumulative) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + $beta = PHPExcel_Calculation_Functions::flattenSingleValue($beta); + + if ((is_numeric($value)) && (is_numeric($alpha)) && (is_numeric($beta))) { + if (($value < 0) || ($alpha <= 0) || ($beta <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + return 1 - exp(0 - pow($value / $beta, $alpha)); + } else { + return ($alpha / pow($beta, $alpha)) * pow($value, $alpha - 1) * exp(0 - pow($value / $beta, $alpha)); + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * ZTEST + * + * Returns the Weibull distribution. Use this distribution in reliability + * analysis, such as calculating a device's mean time to failure. + * + * @param float $dataSet + * @param float $m0 Alpha Parameter + * @param float $sigma Beta Parameter + * @param boolean $cumulative + * @return float + * + */ + public static function ZTEST($dataSet, $m0, $sigma = null) + { + $dataSet = PHPExcel_Calculation_Functions::flattenArrayIndexed($dataSet); + $m0 = PHPExcel_Calculation_Functions::flattenSingleValue($m0); + $sigma = PHPExcel_Calculation_Functions::flattenSingleValue($sigma); + + if (is_null($sigma)) { + $sigma = self::STDEV($dataSet); + } + $n = count($dataSet); + + return 1 - self::NORMSDIST((self::AVERAGE($dataSet) - $m0) / ($sigma / SQRT($n))); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/TextData.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/TextData.php new file mode 100644 index 0000000..6461d06 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/TextData.php @@ -0,0 +1,651 @@ +=0 && ord($c{0}) <= 127) { + return ord($c{0}); + } elseif (ord($c{0}) >= 192 && ord($c{0}) <= 223) { + return (ord($c{0})-192)*64 + (ord($c{1})-128); + } elseif (ord($c{0}) >= 224 && ord($c{0}) <= 239) { + return (ord($c{0})-224)*4096 + (ord($c{1})-128)*64 + (ord($c{2})-128); + } elseif (ord($c{0}) >= 240 && ord($c{0}) <= 247) { + return (ord($c{0})-240)*262144 + (ord($c{1})-128)*4096 + (ord($c{2})-128)*64 + (ord($c{3})-128); + } elseif (ord($c{0}) >= 248 && ord($c{0}) <= 251) { + return (ord($c{0})-248)*16777216 + (ord($c{1})-128)*262144 + (ord($c{2})-128)*4096 + (ord($c{3})-128)*64 + (ord($c{4})-128); + } elseif (ord($c{0}) >= 252 && ord($c{0}) <= 253) { + return (ord($c{0})-252)*1073741824 + (ord($c{1})-128)*16777216 + (ord($c{2})-128)*262144 + (ord($c{3})-128)*4096 + (ord($c{4})-128)*64 + (ord($c{5})-128); + } elseif (ord($c{0}) >= 254 && ord($c{0}) <= 255) { + // error + return PHPExcel_Calculation_Functions::VALUE(); + } + return 0; + } + + /** + * CHARACTER + * + * @param string $character Value + * @return int + */ + public static function CHARACTER($character) + { + $character = PHPExcel_Calculation_Functions::flattenSingleValue($character); + + if ((!is_numeric($character)) || ($character < 0)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (function_exists('mb_convert_encoding')) { + return mb_convert_encoding('&#'.intval($character).';', 'UTF-8', 'HTML-ENTITIES'); + } else { + return chr(intval($character)); + } + } + + + /** + * TRIMNONPRINTABLE + * + * @param mixed $stringValue Value to check + * @return string + */ + public static function TRIMNONPRINTABLE($stringValue = '') + { + $stringValue = PHPExcel_Calculation_Functions::flattenSingleValue($stringValue); + + if (is_bool($stringValue)) { + return ($stringValue) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (self::$invalidChars == null) { + self::$invalidChars = range(chr(0), chr(31)); + } + + if (is_string($stringValue) || is_numeric($stringValue)) { + return str_replace(self::$invalidChars, '', trim($stringValue, "\x00..\x1F")); + } + return null; + } + + + /** + * TRIMSPACES + * + * @param mixed $stringValue Value to check + * @return string + */ + public static function TRIMSPACES($stringValue = '') + { + $stringValue = PHPExcel_Calculation_Functions::flattenSingleValue($stringValue); + if (is_bool($stringValue)) { + return ($stringValue) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (is_string($stringValue) || is_numeric($stringValue)) { + return trim(preg_replace('/ +/', ' ', trim($stringValue, ' ')), ' '); + } + return null; + } + + + /** + * ASCIICODE + * + * @param string $characters Value + * @return int + */ + public static function ASCIICODE($characters) + { + if (($characters === null) || ($characters === '')) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $characters = PHPExcel_Calculation_Functions::flattenSingleValue($characters); + if (is_bool($characters)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $characters = (int) $characters; + } else { + $characters = ($characters) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + } + + $character = $characters; + if ((function_exists('mb_strlen')) && (function_exists('mb_substr'))) { + if (mb_strlen($characters, 'UTF-8') > 1) { + $character = mb_substr($characters, 0, 1, 'UTF-8'); + } + return self::unicodeToOrd($character); + } else { + if (strlen($characters) > 0) { + $character = substr($characters, 0, 1); + } + return ord($character); + } + } + + + /** + * CONCATENATE + * + * @return string + */ + public static function CONCATENATE() + { + $returnValue = ''; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + if (is_bool($arg)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $arg = (int) $arg; + } else { + $arg = ($arg) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + } + $returnValue .= $arg; + } + + return $returnValue; + } + + + /** + * DOLLAR + * + * This function converts a number to text using currency format, with the decimals rounded to the specified place. + * The format used is $#,##0.00_);($#,##0.00).. + * + * @param float $value The value to format + * @param int $decimals The number of digits to display to the right of the decimal point. + * If decimals is negative, number is rounded to the left of the decimal point. + * If you omit decimals, it is assumed to be 2 + * @return string + */ + public static function DOLLAR($value = 0, $decimals = 2) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $decimals = is_null($decimals) ? 0 : PHPExcel_Calculation_Functions::flattenSingleValue($decimals); + + // Validate parameters + if (!is_numeric($value) || !is_numeric($decimals)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $decimals = floor($decimals); + + $mask = '$#,##0'; + if ($decimals > 0) { + $mask .= '.' . str_repeat('0', $decimals); + } else { + $round = pow(10, abs($decimals)); + if ($value < 0) { + $round = 0-$round; + } + $value = PHPExcel_Calculation_MathTrig::MROUND($value, $round); + } + + return PHPExcel_Style_NumberFormat::toFormattedString($value, $mask); + + } + + + /** + * SEARCHSENSITIVE + * + * @param string $needle The string to look for + * @param string $haystack The string in which to look + * @param int $offset Offset within $haystack + * @return string + */ + public static function SEARCHSENSITIVE($needle, $haystack, $offset = 1) + { + $needle = PHPExcel_Calculation_Functions::flattenSingleValue($needle); + $haystack = PHPExcel_Calculation_Functions::flattenSingleValue($haystack); + $offset = PHPExcel_Calculation_Functions::flattenSingleValue($offset); + + if (!is_bool($needle)) { + if (is_bool($haystack)) { + $haystack = ($haystack) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (($offset > 0) && (PHPExcel_Shared_String::CountCharacters($haystack) > $offset)) { + if (PHPExcel_Shared_String::CountCharacters($needle) == 0) { + return $offset; + } + if (function_exists('mb_strpos')) { + $pos = mb_strpos($haystack, $needle, --$offset, 'UTF-8'); + } else { + $pos = strpos($haystack, $needle, --$offset); + } + if ($pos !== false) { + return ++$pos; + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * SEARCHINSENSITIVE + * + * @param string $needle The string to look for + * @param string $haystack The string in which to look + * @param int $offset Offset within $haystack + * @return string + */ + public static function SEARCHINSENSITIVE($needle, $haystack, $offset = 1) + { + $needle = PHPExcel_Calculation_Functions::flattenSingleValue($needle); + $haystack = PHPExcel_Calculation_Functions::flattenSingleValue($haystack); + $offset = PHPExcel_Calculation_Functions::flattenSingleValue($offset); + + if (!is_bool($needle)) { + if (is_bool($haystack)) { + $haystack = ($haystack) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (($offset > 0) && (PHPExcel_Shared_String::CountCharacters($haystack) > $offset)) { + if (PHPExcel_Shared_String::CountCharacters($needle) == 0) { + return $offset; + } + if (function_exists('mb_stripos')) { + $pos = mb_stripos($haystack, $needle, --$offset, 'UTF-8'); + } else { + $pos = stripos($haystack, $needle, --$offset); + } + if ($pos !== false) { + return ++$pos; + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * FIXEDFORMAT + * + * @param mixed $value Value to check + * @param integer $decimals + * @param boolean $no_commas + * @return boolean + */ + public static function FIXEDFORMAT($value, $decimals = 2, $no_commas = false) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $decimals = PHPExcel_Calculation_Functions::flattenSingleValue($decimals); + $no_commas = PHPExcel_Calculation_Functions::flattenSingleValue($no_commas); + + // Validate parameters + if (!is_numeric($value) || !is_numeric($decimals)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $decimals = floor($decimals); + + $valueResult = round($value, $decimals); + if ($decimals < 0) { + $decimals = 0; + } + if (!$no_commas) { + $valueResult = number_format($valueResult, $decimals); + } + + return (string) $valueResult; + } + + + /** + * LEFT + * + * @param string $value Value + * @param int $chars Number of characters + * @return string + */ + public static function LEFT($value = '', $chars = 1) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $chars = PHPExcel_Calculation_Functions::flattenSingleValue($chars); + + if ($chars < 0) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (is_bool($value)) { + $value = ($value) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (function_exists('mb_substr')) { + return mb_substr($value, 0, $chars, 'UTF-8'); + } else { + return substr($value, 0, $chars); + } + } + + + /** + * MID + * + * @param string $value Value + * @param int $start Start character + * @param int $chars Number of characters + * @return string + */ + public static function MID($value = '', $start = 1, $chars = null) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $start = PHPExcel_Calculation_Functions::flattenSingleValue($start); + $chars = PHPExcel_Calculation_Functions::flattenSingleValue($chars); + + if (($start < 1) || ($chars < 0)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (is_bool($value)) { + $value = ($value) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (function_exists('mb_substr')) { + return mb_substr($value, --$start, $chars, 'UTF-8'); + } else { + return substr($value, --$start, $chars); + } + } + + + /** + * RIGHT + * + * @param string $value Value + * @param int $chars Number of characters + * @return string + */ + public static function RIGHT($value = '', $chars = 1) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $chars = PHPExcel_Calculation_Functions::flattenSingleValue($chars); + + if ($chars < 0) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (is_bool($value)) { + $value = ($value) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if ((function_exists('mb_substr')) && (function_exists('mb_strlen'))) { + return mb_substr($value, mb_strlen($value, 'UTF-8') - $chars, $chars, 'UTF-8'); + } else { + return substr($value, strlen($value) - $chars); + } + } + + + /** + * STRINGLENGTH + * + * @param string $value Value + * @return string + */ + public static function STRINGLENGTH($value = '') + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + + if (is_bool($value)) { + $value = ($value) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (function_exists('mb_strlen')) { + return mb_strlen($value, 'UTF-8'); + } else { + return strlen($value); + } + } + + + /** + * LOWERCASE + * + * Converts a string value to upper case. + * + * @param string $mixedCaseString + * @return string + */ + public static function LOWERCASE($mixedCaseString) + { + $mixedCaseString = PHPExcel_Calculation_Functions::flattenSingleValue($mixedCaseString); + + if (is_bool($mixedCaseString)) { + $mixedCaseString = ($mixedCaseString) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + return PHPExcel_Shared_String::StrToLower($mixedCaseString); + } + + + /** + * UPPERCASE + * + * Converts a string value to upper case. + * + * @param string $mixedCaseString + * @return string + */ + public static function UPPERCASE($mixedCaseString) + { + $mixedCaseString = PHPExcel_Calculation_Functions::flattenSingleValue($mixedCaseString); + + if (is_bool($mixedCaseString)) { + $mixedCaseString = ($mixedCaseString) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + return PHPExcel_Shared_String::StrToUpper($mixedCaseString); + } + + + /** + * PROPERCASE + * + * Converts a string value to upper case. + * + * @param string $mixedCaseString + * @return string + */ + public static function PROPERCASE($mixedCaseString) + { + $mixedCaseString = PHPExcel_Calculation_Functions::flattenSingleValue($mixedCaseString); + + if (is_bool($mixedCaseString)) { + $mixedCaseString = ($mixedCaseString) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + return PHPExcel_Shared_String::StrToTitle($mixedCaseString); + } + + + /** + * REPLACE + * + * @param string $oldText String to modify + * @param int $start Start character + * @param int $chars Number of characters + * @param string $newText String to replace in defined position + * @return string + */ + public static function REPLACE($oldText = '', $start = 1, $chars = null, $newText) + { + $oldText = PHPExcel_Calculation_Functions::flattenSingleValue($oldText); + $start = PHPExcel_Calculation_Functions::flattenSingleValue($start); + $chars = PHPExcel_Calculation_Functions::flattenSingleValue($chars); + $newText = PHPExcel_Calculation_Functions::flattenSingleValue($newText); + + $left = self::LEFT($oldText, $start-1); + $right = self::RIGHT($oldText, self::STRINGLENGTH($oldText)-($start+$chars)+1); + + return $left.$newText.$right; + } + + + /** + * SUBSTITUTE + * + * @param string $text Value + * @param string $fromText From Value + * @param string $toText To Value + * @param integer $instance Instance Number + * @return string + */ + public static function SUBSTITUTE($text = '', $fromText = '', $toText = '', $instance = 0) + { + $text = PHPExcel_Calculation_Functions::flattenSingleValue($text); + $fromText = PHPExcel_Calculation_Functions::flattenSingleValue($fromText); + $toText = PHPExcel_Calculation_Functions::flattenSingleValue($toText); + $instance = floor(PHPExcel_Calculation_Functions::flattenSingleValue($instance)); + + if ($instance == 0) { + if (function_exists('mb_str_replace')) { + return mb_str_replace($fromText, $toText, $text); + } else { + return str_replace($fromText, $toText, $text); + } + } else { + $pos = -1; + while ($instance > 0) { + if (function_exists('mb_strpos')) { + $pos = mb_strpos($text, $fromText, $pos+1, 'UTF-8'); + } else { + $pos = strpos($text, $fromText, $pos+1); + } + if ($pos === false) { + break; + } + --$instance; + } + if ($pos !== false) { + if (function_exists('mb_strlen')) { + return self::REPLACE($text, ++$pos, mb_strlen($fromText, 'UTF-8'), $toText); + } else { + return self::REPLACE($text, ++$pos, strlen($fromText), $toText); + } + } + } + + return $text; + } + + + /** + * RETURNSTRING + * + * @param mixed $testValue Value to check + * @return boolean + */ + public static function RETURNSTRING($testValue = '') + { + $testValue = PHPExcel_Calculation_Functions::flattenSingleValue($testValue); + + if (is_string($testValue)) { + return $testValue; + } + return null; + } + + + /** + * TEXTFORMAT + * + * @param mixed $value Value to check + * @param string $format Format mask to use + * @return boolean + */ + public static function TEXTFORMAT($value, $format) + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $format = PHPExcel_Calculation_Functions::flattenSingleValue($format); + + if ((is_string($value)) && (!is_numeric($value)) && PHPExcel_Shared_Date::isDateTimeFormatCode($format)) { + $value = PHPExcel_Calculation_DateTime::DATEVALUE($value); + } + + return (string) PHPExcel_Style_NumberFormat::toFormattedString($value, $format); + } + + /** + * VALUE + * + * @param mixed $value Value to check + * @return boolean + */ + public static function VALUE($value = '') + { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + + if (!is_numeric($value)) { + $numberValue = str_replace( + PHPExcel_Shared_String::getThousandsSeparator(), + '', + trim($value, " \t\n\r\0\x0B" . PHPExcel_Shared_String::getCurrencyCode()) + ); + if (is_numeric($numberValue)) { + return (float) $numberValue; + } + + $dateSetting = PHPExcel_Calculation_Functions::getReturnDateType(); + PHPExcel_Calculation_Functions::setReturnDateType(PHPExcel_Calculation_Functions::RETURNDATE_EXCEL); + + if (strpos($value, ':') !== false) { + $timeValue = PHPExcel_Calculation_DateTime::TIMEVALUE($value); + if ($timeValue !== PHPExcel_Calculation_Functions::VALUE()) { + PHPExcel_Calculation_Functions::setReturnDateType($dateSetting); + return $timeValue; + } + } + $dateValue = PHPExcel_Calculation_DateTime::DATEVALUE($value); + if ($dateValue !== PHPExcel_Calculation_Functions::VALUE()) { + PHPExcel_Calculation_Functions::setReturnDateType($dateSetting); + return $dateValue; + } + PHPExcel_Calculation_Functions::setReturnDateType($dateSetting); + + return PHPExcel_Calculation_Functions::VALUE(); + } + return (float) $value; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Token/Stack.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Token/Stack.php new file mode 100644 index 0000000..02ed5aa --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Token/Stack.php @@ -0,0 +1,111 @@ +count; + } + + /** + * Push a new entry onto the stack + * + * @param mixed $type + * @param mixed $value + * @param mixed $reference + */ + public function push($type, $value, $reference = null) + { + $this->stack[$this->count++] = array( + 'type' => $type, + 'value' => $value, + 'reference' => $reference + ); + if ($type == 'Function') { + $localeFunction = PHPExcel_Calculation::localeFunc($value); + if ($localeFunction != $value) { + $this->stack[($this->count - 1)]['localeValue'] = $localeFunction; + } + } + } + + /** + * Pop the last entry from the stack + * + * @return mixed + */ + public function pop() + { + if ($this->count > 0) { + return $this->stack[--$this->count]; + } + return null; + } + + /** + * Return an entry from the stack without removing it + * + * @param integer $n number indicating how far back in the stack we want to look + * @return mixed + */ + public function last($n = 1) + { + if ($this->count - $n < 0) { + return null; + } + return $this->stack[$this->count - $n]; + } + + /** + * Clear the stack + */ + public function clear() + { + $this->stack = array(); + $this->count = 0; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Token/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Token/_notes/dwsync.xml new file mode 100644 index 0000000..7f96942 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/Token/_notes/dwsync.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/_notes/dwsync.xml new file mode 100644 index 0000000..4d5a4a5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/_notes/dwsync.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/functionlist.txt b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/functionlist.txt new file mode 100644 index 0000000..67dbd49 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Calculation/functionlist.txt @@ -0,0 +1,351 @@ +ABS +ACCRINT +ACCRINTM +ACOS +ACOSH +ADDRESS +AMORDEGRC +AMORLINC +AND +AREAS +ASC +ASIN +ASINH +ATAN +ATAN2 +ATANH +AVEDEV +AVERAGE +AVERAGEA +AVERAGEIF +AVERAGEIFS +BAHTTEXT +BESSELI +BESSELJ +BESSELK +BESSELY +BETADIST +BETAINV +BIN2DEC +BIN2HEX +BIN2OCT +BINOMDIST +CEILING +CELL +CHAR +CHIDIST +CHIINV +CHITEST +CHOOSE +CLEAN +CODE +COLUMN +COLUMNS +COMBIN +COMPLEX +CONCATENATE +CONFIDENCE +CONVERT +CORREL +COS +COSH +COUNT +COUNTA +COUNTBLANK +COUNTIF +COUNTIFS +COUPDAYBS +COUPDAYBS +COUPDAYSNC +COUPNCD +COUPNUM +COUPPCD +COVAR +CRITBINOM +CUBEKPIMEMBER +CUBEMEMBER +CUBEMEMBERPROPERTY +CUBERANKEDMEMBER +CUBESET +CUBESETCOUNT +CUBEVALUE +CUMIPMT +CUMPRINC +DATE +DATEDIF +DATEVALUE +DAVERAGE +DAY +DAYS360 +DB +DCOUNT +DCOUNTA +DDB +DEC2BIN +DEC2HEX +DEC2OCT +DEGREES +DELTA +DEVSQ +DGET +DISC +DMAX +DMIN +DOLLAR +DOLLARDE +DOLLARFR +DPRODUCT +DSTDEV +DSTDEVP +DSUM +DURATION +DVAR +DVARP +EDATE +EFFECT +EOMONTH +ERF +ERFC +ERROR.TYPE +EVEN +EXACT +EXP +EXPONDIST +FACT +FACTDOUBLE +FALSE +FDIST +FIND +FINDB +FINV +FISHER +FISHERINV +FIXED +FLOOR +FORECAST +FREQUENCY +FTEST +FV +FVSCHEDULE +GAMAMDIST +GAMMAINV +GAMMALN +GCD +GEOMEAN +GESTEP +GETPIVOTDATA +GROWTH +HARMEAN +HEX2BIN +HEX2OCT +HLOOKUP +HOUR +HYPERLINK +HYPGEOMDIST +IF +IFERROR +IMABS +IMAGINARY +IMARGUMENT +IMCONJUGATE +IMCOS +IMEXP +IMLN +IMLOG10 +IMLOG2 +IMPOWER +IMPRODUCT +IMREAL +IMSIN +IMSQRT +IMSUB +IMSUM +INDEX +INDIRECT +INFO +INT +INTERCEPT +INTRATE +IPMT +IRR +ISBLANK +ISERR +ISERROR +ISEVEN +ISLOGICAL +ISNA +ISNONTEXT +ISNUMBER +ISODD +ISPMT +ISREF +ISTEXT +JIS +KURT +LARGE +LCM +LEFT +LEFTB +LEN +LENB +LINEST +LN +LOG +LOG10 +LOGEST +LOGINV +LOGNORMDIST +LOOKUP +LOWER +MATCH +MAX +MAXA +MDETERM +MDURATION +MEDIAN +MID +MIDB +MIN +MINA +MINUTE +MINVERSE +MIRR +MMULT +MOD +MODE +MONTH +MROUND +MULTINOMIAL +N +NA +NEGBINOMDIST +NETWORKDAYS +NOMINAL +NORMDIST +NORMINV +NORMSDIST +NORMSINV +NOT +NOW +NPER +NPV +OCT2BIN +OCT2DEC +OCT2HEX +ODD +ODDFPRICE +ODDFYIELD +ODDLPRICE +ODDLYIELD +OFFSET +OR +PEARSON +PERCENTILE +PERCENTRANK +PERMUT +PHONETIC +PI +PMT +POISSON +POWER +PPMT +PRICE +PRICEDISC +PRICEMAT +PROB +PRODUCT +PROPER +PV +QUARTILE +QUOTIENT +RADIANS +RAND +RANDBETWEEN +RANK +RATE +RECEIVED +REPLACE +REPLACEB +REPT +RIGHT +RIGHTB +ROMAN +ROUND +ROUNDDOWN +ROUNDUP +ROW +ROWS +RSQ +RTD +SEARCH +SEARCHB +SECOND +SERIESSUM +SIGN +SIN +SINH +SKEW +SLN +SLOPE +SMALL +SQRT +SQRTPI +STANDARDIZE +STDEV +STDEVA +STDEVP +STDEVPA +STEYX +SUBSTITUTE +SUBTOTAL +SUM +SUMIF +SUMIFS +SUMPRODUCT +SUMSQ +SUMX2MY2 +SUMX2PY2 +SUMXMY2 +SYD +T +TAN +TANH +TBILLEQ +TBILLPRICE +TBILLYIELD +TDIST +TEXT +TIME +TIMEVALUE +TINV +TODAY +TRANSPOSE +TREND +TRIM +TRIMMEAN +TRUE +TRUNC +TTEST +TYPE +UPPER +USDOLLAR +VALUE +VAR +VARA +VARP +VARPA +VDB +VERSION +VLOOKUP +WEEKDAY +WEEKNUM +WEIBULL +WORKDAY +XIRR +XNPV +YEAR +YEARFRAC +YIELD +YIELDDISC +YIELDMAT +ZTEST diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell.php new file mode 100644 index 0000000..c99a3c8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell.php @@ -0,0 +1,1032 @@ +parent->updateCacheData($this); + + return $this; + } + + public function detach() + { + $this->parent = null; + } + + public function attach(PHPExcel_CachedObjectStorage_CacheBase $parent) + { + $this->parent = $parent; + } + + + /** + * Create a new Cell + * + * @param mixed $pValue + * @param string $pDataType + * @param PHPExcel_Worksheet $pSheet + * @throws PHPExcel_Exception + */ + public function __construct($pValue = null, $pDataType = null, PHPExcel_Worksheet $pSheet = null) + { + // Initialise cell value + $this->value = $pValue; + + // Set worksheet cache + $this->parent = $pSheet->getCellCacheController(); + + // Set datatype? + if ($pDataType !== null) { + if ($pDataType == PHPExcel_Cell_DataType::TYPE_STRING2) { + $pDataType = PHPExcel_Cell_DataType::TYPE_STRING; + } + $this->dataType = $pDataType; + } elseif (!self::getValueBinder()->bindValue($this, $pValue)) { + throw new PHPExcel_Exception("Value could not be bound to cell."); + } + } + + /** + * Get cell coordinate column + * + * @return string + */ + public function getColumn() + { + return $this->parent->getCurrentColumn(); + } + + /** + * Get cell coordinate row + * + * @return int + */ + public function getRow() + { + return $this->parent->getCurrentRow(); + } + + /** + * Get cell coordinate + * + * @return string + */ + public function getCoordinate() + { + return $this->parent->getCurrentAddress(); + } + + /** + * Get cell value + * + * @return mixed + */ + public function getValue() + { + return $this->value; + } + + /** + * Get cell value with formatting + * + * @return string + */ + public function getFormattedValue() + { + return (string) PHPExcel_Style_NumberFormat::toFormattedString( + $this->getCalculatedValue(), + $this->getStyle() + ->getNumberFormat()->getFormatCode() + ); + } + + /** + * Set cell value + * + * Sets the value for a cell, automatically determining the datatype using the value binder + * + * @param mixed $pValue Value + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function setValue($pValue = null) + { + if (!self::getValueBinder()->bindValue($this, $pValue)) { + throw new PHPExcel_Exception("Value could not be bound to cell."); + } + return $this; + } + + /** + * Set the value for a cell, with the explicit data type passed to the method (bypassing any use of the value binder) + * + * @param mixed $pValue Value + * @param string $pDataType Explicit data type + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function setValueExplicit($pValue = null, $pDataType = PHPExcel_Cell_DataType::TYPE_STRING) + { + // set the value according to data type + switch ($pDataType) { + case PHPExcel_Cell_DataType::TYPE_NULL: + $this->value = $pValue; + break; + case PHPExcel_Cell_DataType::TYPE_STRING2: + $pDataType = PHPExcel_Cell_DataType::TYPE_STRING; + // no break + case PHPExcel_Cell_DataType::TYPE_STRING: + // Synonym for string + case PHPExcel_Cell_DataType::TYPE_INLINE: + // Rich text + $this->value = PHPExcel_Cell_DataType::checkString($pValue); + break; + case PHPExcel_Cell_DataType::TYPE_NUMERIC: + $this->value = (float) $pValue; + break; + case PHPExcel_Cell_DataType::TYPE_FORMULA: + $this->value = (string) $pValue; + break; + case PHPExcel_Cell_DataType::TYPE_BOOL: + $this->value = (bool) $pValue; + break; + case PHPExcel_Cell_DataType::TYPE_ERROR: + $this->value = PHPExcel_Cell_DataType::checkErrorCode($pValue); + break; + default: + throw new PHPExcel_Exception('Invalid datatype: ' . $pDataType); + break; + } + + // set the datatype + $this->dataType = $pDataType; + + return $this->notifyCacheController(); + } + + /** + * Get calculated cell value + * + * @deprecated Since version 1.7.8 for planned changes to cell for array formula handling + * + * @param boolean $resetLog Whether the calculation engine logger should be reset or not + * @return mixed + * @throws PHPExcel_Exception + */ + public function getCalculatedValue($resetLog = true) + { +//echo 'Cell '.$this->getCoordinate().' value is a '.$this->dataType.' with a value of '.$this->getValue().PHP_EOL; + if ($this->dataType == PHPExcel_Cell_DataType::TYPE_FORMULA) { + try { +//echo 'Cell value for '.$this->getCoordinate().' is a formula: Calculating value'.PHP_EOL; + $result = PHPExcel_Calculation::getInstance( + $this->getWorksheet()->getParent() + )->calculateCellValue($this, $resetLog); +//echo $this->getCoordinate().' calculation result is '.$result.PHP_EOL; + // We don't yet handle array returns + if (is_array($result)) { + while (is_array($result)) { + $result = array_pop($result); + } + } + } catch (PHPExcel_Exception $ex) { + if (($ex->getMessage() === 'Unable to access External Workbook') && ($this->calculatedValue !== null)) { +//echo 'Returning fallback value of '.$this->calculatedValue.' for cell '.$this->getCoordinate().PHP_EOL; + return $this->calculatedValue; // Fallback for calculations referencing external files. + } +//echo 'Calculation Exception: '.$ex->getMessage().PHP_EOL; + $result = '#N/A'; + throw new PHPExcel_Calculation_Exception( + $this->getWorksheet()->getTitle().'!'.$this->getCoordinate().' -> '.$ex->getMessage() + ); + } + + if ($result === '#Not Yet Implemented') { +//echo 'Returning fallback value of '.$this->calculatedValue.' for cell '.$this->getCoordinate().PHP_EOL; + return $this->calculatedValue; // Fallback if calculation engine does not support the formula. + } +//echo 'Returning calculated value of '.$result.' for cell '.$this->getCoordinate().PHP_EOL; + return $result; + } elseif ($this->value instanceof PHPExcel_RichText) { +// echo 'Cell value for '.$this->getCoordinate().' is rich text: Returning data value of '.$this->value.'
'; + return $this->value->getPlainText(); + } +// echo 'Cell value for '.$this->getCoordinate().' is not a formula: Returning data value of '.$this->value.'
'; + return $this->value; + } + + /** + * Set old calculated value (cached) + * + * @param mixed $pValue Value + * @return PHPExcel_Cell + */ + public function setCalculatedValue($pValue = null) + { + if ($pValue !== null) { + $this->calculatedValue = (is_numeric($pValue)) ? (float) $pValue : $pValue; + } + + return $this->notifyCacheController(); + } + + /** + * Get old calculated value (cached) + * This returns the value last calculated by MS Excel or whichever spreadsheet program was used to + * create the original spreadsheet file. + * Note that this value is not guaranteed to refelect the actual calculated value because it is + * possible that auto-calculation was disabled in the original spreadsheet, and underlying data + * values used by the formula have changed since it was last calculated. + * + * @return mixed + */ + public function getOldCalculatedValue() + { + return $this->calculatedValue; + } + + /** + * Get cell data type + * + * @return string + */ + public function getDataType() + { + return $this->dataType; + } + + /** + * Set cell data type + * + * @param string $pDataType + * @return PHPExcel_Cell + */ + public function setDataType($pDataType = PHPExcel_Cell_DataType::TYPE_STRING) + { + if ($pDataType == PHPExcel_Cell_DataType::TYPE_STRING2) { + $pDataType = PHPExcel_Cell_DataType::TYPE_STRING; + } + $this->dataType = $pDataType; + + return $this->notifyCacheController(); + } + + /** + * Identify if the cell contains a formula + * + * @return boolean + */ + public function isFormula() + { + return $this->dataType == PHPExcel_Cell_DataType::TYPE_FORMULA; + } + + /** + * Does this cell contain Data validation rules? + * + * @return boolean + * @throws PHPExcel_Exception + */ + public function hasDataValidation() + { + if (!isset($this->parent)) { + throw new PHPExcel_Exception('Cannot check for data validation when cell is not bound to a worksheet'); + } + + return $this->getWorksheet()->dataValidationExists($this->getCoordinate()); + } + + /** + * Get Data validation rules + * + * @return PHPExcel_Cell_DataValidation + * @throws PHPExcel_Exception + */ + public function getDataValidation() + { + if (!isset($this->parent)) { + throw new PHPExcel_Exception('Cannot get data validation for cell that is not bound to a worksheet'); + } + + return $this->getWorksheet()->getDataValidation($this->getCoordinate()); + } + + /** + * Set Data validation rules + * + * @param PHPExcel_Cell_DataValidation $pDataValidation + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function setDataValidation(PHPExcel_Cell_DataValidation $pDataValidation = null) + { + if (!isset($this->parent)) { + throw new PHPExcel_Exception('Cannot set data validation for cell that is not bound to a worksheet'); + } + + $this->getWorksheet()->setDataValidation($this->getCoordinate(), $pDataValidation); + + return $this->notifyCacheController(); + } + + /** + * Does this cell contain a Hyperlink? + * + * @return boolean + * @throws PHPExcel_Exception + */ + public function hasHyperlink() + { + if (!isset($this->parent)) { + throw new PHPExcel_Exception('Cannot check for hyperlink when cell is not bound to a worksheet'); + } + + return $this->getWorksheet()->hyperlinkExists($this->getCoordinate()); + } + + /** + * Get Hyperlink + * + * @return PHPExcel_Cell_Hyperlink + * @throws PHPExcel_Exception + */ + public function getHyperlink() + { + if (!isset($this->parent)) { + throw new PHPExcel_Exception('Cannot get hyperlink for cell that is not bound to a worksheet'); + } + + return $this->getWorksheet()->getHyperlink($this->getCoordinate()); + } + + /** + * Set Hyperlink + * + * @param PHPExcel_Cell_Hyperlink $pHyperlink + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function setHyperlink(PHPExcel_Cell_Hyperlink $pHyperlink = null) + { + if (!isset($this->parent)) { + throw new PHPExcel_Exception('Cannot set hyperlink for cell that is not bound to a worksheet'); + } + + $this->getWorksheet()->setHyperlink($this->getCoordinate(), $pHyperlink); + + return $this->notifyCacheController(); + } + + /** + * Get parent worksheet + * + * @return PHPExcel_CachedObjectStorage_CacheBase + */ + public function getParent() + { + return $this->parent; + } + + /** + * Get parent worksheet + * + * @return PHPExcel_Worksheet + */ + public function getWorksheet() + { + return $this->parent->getParent(); + } + + /** + * Is this cell in a merge range + * + * @return boolean + */ + public function isInMergeRange() + { + return (boolean) $this->getMergeRange(); + } + + /** + * Is this cell the master (top left cell) in a merge range (that holds the actual data value) + * + * @return boolean + */ + public function isMergeRangeValueCell() + { + if ($mergeRange = $this->getMergeRange()) { + $mergeRange = PHPExcel_Cell::splitRange($mergeRange); + list($startCell) = $mergeRange[0]; + if ($this->getCoordinate() === $startCell) { + return true; + } + } + return false; + } + + /** + * If this cell is in a merge range, then return the range + * + * @return string + */ + public function getMergeRange() + { + foreach ($this->getWorksheet()->getMergeCells() as $mergeRange) { + if ($this->isInRange($mergeRange)) { + return $mergeRange; + } + } + return false; + } + + /** + * Get cell style + * + * @return PHPExcel_Style + */ + public function getStyle() + { + return $this->getWorksheet()->getStyle($this->getCoordinate()); + } + + /** + * Re-bind parent + * + * @param PHPExcel_Worksheet $parent + * @return PHPExcel_Cell + */ + public function rebindParent(PHPExcel_Worksheet $parent) + { + $this->parent = $parent->getCellCacheController(); + + return $this->notifyCacheController(); + } + + /** + * Is cell in a specific range? + * + * @param string $pRange Cell range (e.g. A1:A1) + * @return boolean + */ + public function isInRange($pRange = 'A1:A1') + { + list($rangeStart, $rangeEnd) = self::rangeBoundaries($pRange); + + // Translate properties + $myColumn = self::columnIndexFromString($this->getColumn()); + $myRow = $this->getRow(); + + // Verify if cell is in range + return (($rangeStart[0] <= $myColumn) && ($rangeEnd[0] >= $myColumn) && + ($rangeStart[1] <= $myRow) && ($rangeEnd[1] >= $myRow) + ); + } + + /** + * Coordinate from string + * + * @param string $pCoordinateString + * @return array Array containing column and row (indexes 0 and 1) + * @throws PHPExcel_Exception + */ + public static function coordinateFromString($pCoordinateString = 'A1') + { + if (preg_match("/^([$]?[A-Z]{1,3})([$]?\d{1,7})$/", $pCoordinateString, $matches)) { + return array($matches[1],$matches[2]); + } elseif ((strpos($pCoordinateString, ':') !== false) || (strpos($pCoordinateString, ',') !== false)) { + throw new PHPExcel_Exception('Cell coordinate string can not be a range of cells'); + } elseif ($pCoordinateString == '') { + throw new PHPExcel_Exception('Cell coordinate can not be zero-length string'); + } + + throw new PHPExcel_Exception('Invalid cell coordinate '.$pCoordinateString); + } + + /** + * Make string row, column or cell coordinate absolute + * + * @param string $pCoordinateString e.g. 'A' or '1' or 'A1' + * Note that this value can be a row or column reference as well as a cell reference + * @return string Absolute coordinate e.g. '$A' or '$1' or '$A$1' + * @throws PHPExcel_Exception + */ + public static function absoluteReference($pCoordinateString = 'A1') + { + if (strpos($pCoordinateString, ':') === false && strpos($pCoordinateString, ',') === false) { + // Split out any worksheet name from the reference + $worksheet = ''; + $cellAddress = explode('!', $pCoordinateString); + if (count($cellAddress) > 1) { + list($worksheet, $pCoordinateString) = $cellAddress; + } + if ($worksheet > '') { + $worksheet .= '!'; + } + + // Create absolute coordinate + if (ctype_digit($pCoordinateString)) { + return $worksheet . '$' . $pCoordinateString; + } elseif (ctype_alpha($pCoordinateString)) { + return $worksheet . '$' . strtoupper($pCoordinateString); + } + return $worksheet . self::absoluteCoordinate($pCoordinateString); + } + + throw new PHPExcel_Exception('Cell coordinate string can not be a range of cells'); + } + + /** + * Make string coordinate absolute + * + * @param string $pCoordinateString e.g. 'A1' + * @return string Absolute coordinate e.g. '$A$1' + * @throws PHPExcel_Exception + */ + public static function absoluteCoordinate($pCoordinateString = 'A1') + { + if (strpos($pCoordinateString, ':') === false && strpos($pCoordinateString, ',') === false) { + // Split out any worksheet name from the coordinate + $worksheet = ''; + $cellAddress = explode('!', $pCoordinateString); + if (count($cellAddress) > 1) { + list($worksheet, $pCoordinateString) = $cellAddress; + } + if ($worksheet > '') { + $worksheet .= '!'; + } + + // Create absolute coordinate + list($column, $row) = self::coordinateFromString($pCoordinateString); + $column = ltrim($column, '$'); + $row = ltrim($row, '$'); + return $worksheet . '$' . $column . '$' . $row; + } + + throw new PHPExcel_Exception('Cell coordinate string can not be a range of cells'); + } + + /** + * Split range into coordinate strings + * + * @param string $pRange e.g. 'B4:D9' or 'B4:D9,H2:O11' or 'B4' + * @return array Array containg one or more arrays containing one or two coordinate strings + * e.g. array('B4','D9') or array(array('B4','D9'),array('H2','O11')) + * or array('B4') + */ + public static function splitRange($pRange = 'A1:A1') + { + // Ensure $pRange is a valid range + if (empty($pRange)) { + $pRange = self::DEFAULT_RANGE; + } + + $exploded = explode(',', $pRange); + $counter = count($exploded); + for ($i = 0; $i < $counter; ++$i) { + $exploded[$i] = explode(':', $exploded[$i]); + } + return $exploded; + } + + /** + * Build range from coordinate strings + * + * @param array $pRange Array containg one or more arrays containing one or two coordinate strings + * @return string String representation of $pRange + * @throws PHPExcel_Exception + */ + public static function buildRange($pRange) + { + // Verify range + if (!is_array($pRange) || empty($pRange) || !is_array($pRange[0])) { + throw new PHPExcel_Exception('Range does not contain any information'); + } + + // Build range + $imploded = array(); + $counter = count($pRange); + for ($i = 0; $i < $counter; ++$i) { + $pRange[$i] = implode(':', $pRange[$i]); + } + $imploded = implode(',', $pRange); + + return $imploded; + } + + /** + * Calculate range boundaries + * + * @param string $pRange Cell range (e.g. A1:A1) + * @return array Range coordinates array(Start Cell, End Cell) + * where Start Cell and End Cell are arrays (Column Number, Row Number) + */ + public static function rangeBoundaries($pRange = 'A1:A1') + { + // Ensure $pRange is a valid range + if (empty($pRange)) { + $pRange = self::DEFAULT_RANGE; + } + + // Uppercase coordinate + $pRange = strtoupper($pRange); + + // Extract range + if (strpos($pRange, ':') === false) { + $rangeA = $rangeB = $pRange; + } else { + list($rangeA, $rangeB) = explode(':', $pRange); + } + + // Calculate range outer borders + $rangeStart = self::coordinateFromString($rangeA); + $rangeEnd = self::coordinateFromString($rangeB); + + // Translate column into index + $rangeStart[0] = self::columnIndexFromString($rangeStart[0]); + $rangeEnd[0] = self::columnIndexFromString($rangeEnd[0]); + + return array($rangeStart, $rangeEnd); + } + + /** + * Calculate range dimension + * + * @param string $pRange Cell range (e.g. A1:A1) + * @return array Range dimension (width, height) + */ + public static function rangeDimension($pRange = 'A1:A1') + { + // Calculate range outer borders + list($rangeStart, $rangeEnd) = self::rangeBoundaries($pRange); + + return array( ($rangeEnd[0] - $rangeStart[0] + 1), ($rangeEnd[1] - $rangeStart[1] + 1) ); + } + + /** + * Calculate range boundaries + * + * @param string $pRange Cell range (e.g. A1:A1) + * @return array Range coordinates array(Start Cell, End Cell) + * where Start Cell and End Cell are arrays (Column ID, Row Number) + */ + public static function getRangeBoundaries($pRange = 'A1:A1') + { + // Ensure $pRange is a valid range + if (empty($pRange)) { + $pRange = self::DEFAULT_RANGE; + } + + // Uppercase coordinate + $pRange = strtoupper($pRange); + + // Extract range + if (strpos($pRange, ':') === false) { + $rangeA = $rangeB = $pRange; + } else { + list($rangeA, $rangeB) = explode(':', $pRange); + } + + return array( self::coordinateFromString($rangeA), self::coordinateFromString($rangeB)); + } + + /** + * Column index from string + * + * @param string $pString + * @return int Column index (base 1 !!!) + */ + public static function columnIndexFromString($pString = 'A') + { + // Using a lookup cache adds a slight memory overhead, but boosts speed + // caching using a static within the method is faster than a class static, + // though it's additional memory overhead + static $_indexCache = array(); + + if (isset($_indexCache[$pString])) { + return $_indexCache[$pString]; + } + // It's surprising how costly the strtoupper() and ord() calls actually are, so we use a lookup array rather than use ord() + // and make it case insensitive to get rid of the strtoupper() as well. Because it's a static, there's no significant + // memory overhead either + static $_columnLookup = array( + 'A' => 1, 'B' => 2, 'C' => 3, 'D' => 4, 'E' => 5, 'F' => 6, 'G' => 7, 'H' => 8, 'I' => 9, 'J' => 10, 'K' => 11, 'L' => 12, 'M' => 13, + 'N' => 14, 'O' => 15, 'P' => 16, 'Q' => 17, 'R' => 18, 'S' => 19, 'T' => 20, 'U' => 21, 'V' => 22, 'W' => 23, 'X' => 24, 'Y' => 25, 'Z' => 26, + 'a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5, 'f' => 6, 'g' => 7, 'h' => 8, 'i' => 9, 'j' => 10, 'k' => 11, 'l' => 12, 'm' => 13, + 'n' => 14, 'o' => 15, 'p' => 16, 'q' => 17, 'r' => 18, 's' => 19, 't' => 20, 'u' => 21, 'v' => 22, 'w' => 23, 'x' => 24, 'y' => 25, 'z' => 26 + ); + + // We also use the language construct isset() rather than the more costly strlen() function to match the length of $pString + // for improved performance + if (isset($pString{0})) { + if (!isset($pString{1})) { + $_indexCache[$pString] = $_columnLookup[$pString]; + return $_indexCache[$pString]; + } elseif (!isset($pString{2})) { + $_indexCache[$pString] = $_columnLookup[$pString{0}] * 26 + $_columnLookup[$pString{1}]; + return $_indexCache[$pString]; + } elseif (!isset($pString{3})) { + $_indexCache[$pString] = $_columnLookup[$pString{0}] * 676 + $_columnLookup[$pString{1}] * 26 + $_columnLookup[$pString{2}]; + return $_indexCache[$pString]; + } + } + throw new PHPExcel_Exception("Column string index can not be " . ((isset($pString{0})) ? "longer than 3 characters" : "empty")); + } + + /** + * String from columnindex + * + * @param int $pColumnIndex Column index (base 0 !!!) + * @return string + */ + public static function stringFromColumnIndex($pColumnIndex = 0) + { + // Using a lookup cache adds a slight memory overhead, but boosts speed + // caching using a static within the method is faster than a class static, + // though it's additional memory overhead + static $_indexCache = array(); + + if (!isset($_indexCache[$pColumnIndex])) { + // Determine column string + if ($pColumnIndex < 26) { + $_indexCache[$pColumnIndex] = chr(65 + $pColumnIndex); + } elseif ($pColumnIndex < 702) { + $_indexCache[$pColumnIndex] = chr(64 + ($pColumnIndex / 26)) . + chr(65 + $pColumnIndex % 26); + } else { + $_indexCache[$pColumnIndex] = chr(64 + (($pColumnIndex - 26) / 676)) . + chr(65 + ((($pColumnIndex - 26) % 676) / 26)) . + chr(65 + $pColumnIndex % 26); + } + } + return $_indexCache[$pColumnIndex]; + } + + /** + * Extract all cell references in range + * + * @param string $pRange Range (e.g. A1 or A1:C10 or A1:E10 A20:E25) + * @return array Array containing single cell references + */ + public static function extractAllCellReferencesInRange($pRange = 'A1') + { + // Returnvalue + $returnValue = array(); + + // Explode spaces + $cellBlocks = explode(' ', str_replace('$', '', strtoupper($pRange))); + foreach ($cellBlocks as $cellBlock) { + // Single cell? + if (strpos($cellBlock, ':') === false && strpos($cellBlock, ',') === false) { + $returnValue[] = $cellBlock; + continue; + } + + // Range... + $ranges = self::splitRange($cellBlock); + foreach ($ranges as $range) { + // Single cell? + if (!isset($range[1])) { + $returnValue[] = $range[0]; + continue; + } + + // Range... + list($rangeStart, $rangeEnd) = $range; + sscanf($rangeStart, '%[A-Z]%d', $startCol, $startRow); + sscanf($rangeEnd, '%[A-Z]%d', $endCol, $endRow); + ++$endCol; + + // Current data + $currentCol = $startCol; + $currentRow = $startRow; + + // Loop cells + while ($currentCol != $endCol) { + while ($currentRow <= $endRow) { + $returnValue[] = $currentCol.$currentRow; + ++$currentRow; + } + ++$currentCol; + $currentRow = $startRow; + } + } + } + + // Sort the result by column and row + $sortKeys = array(); + foreach (array_unique($returnValue) as $coord) { + sscanf($coord, '%[A-Z]%d', $column, $row); + $sortKeys[sprintf('%3s%09d', $column, $row)] = $coord; + } + ksort($sortKeys); + + // Return value + return array_values($sortKeys); + } + + /** + * Compare 2 cells + * + * @param PHPExcel_Cell $a Cell a + * @param PHPExcel_Cell $b Cell b + * @return int Result of comparison (always -1 or 1, never zero!) + */ + public static function compareCells(PHPExcel_Cell $a, PHPExcel_Cell $b) + { + if ($a->getRow() < $b->getRow()) { + return -1; + } elseif ($a->getRow() > $b->getRow()) { + return 1; + } elseif (self::columnIndexFromString($a->getColumn()) < self::columnIndexFromString($b->getColumn())) { + return -1; + } else { + return 1; + } + } + + /** + * Get value binder to use + * + * @return PHPExcel_Cell_IValueBinder + */ + public static function getValueBinder() + { + if (self::$valueBinder === null) { + self::$valueBinder = new PHPExcel_Cell_DefaultValueBinder(); + } + + return self::$valueBinder; + } + + /** + * Set value binder to use + * + * @param PHPExcel_Cell_IValueBinder $binder + * @throws PHPExcel_Exception + */ + public static function setValueBinder(PHPExcel_Cell_IValueBinder $binder = null) + { + if ($binder === null) { + throw new PHPExcel_Exception("A PHPExcel_Cell_IValueBinder is required for PHPExcel to function correctly."); + } + + self::$valueBinder = $binder; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != 'parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } + + /** + * Get index to cellXf + * + * @return int + */ + public function getXfIndex() + { + return $this->xfIndex; + } + + /** + * Set index to cellXf + * + * @param int $pValue + * @return PHPExcel_Cell + */ + public function setXfIndex($pValue = 0) + { + $this->xfIndex = $pValue; + + return $this->notifyCacheController(); + } + + /** + * @deprecated Since version 1.7.8 for planned changes to cell for array formula handling + */ + public function setFormulaAttributes($pAttributes) + { + $this->formulaAttributes = $pAttributes; + return $this; + } + + /** + * @deprecated Since version 1.7.8 for planned changes to cell for array formula handling + */ + public function getFormulaAttributes() + { + return $this->formulaAttributes; + } + + /** + * Convert to string + * + * @return string + */ + public function __toString() + { + return (string) $this->getValue(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/AdvancedValueBinder.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/AdvancedValueBinder.php new file mode 100644 index 0000000..061d04e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/AdvancedValueBinder.php @@ -0,0 +1,187 @@ +setValueExplicit(true, PHPExcel_Cell_DataType::TYPE_BOOL); + return true; + } elseif ($value == PHPExcel_Calculation::getFALSE()) { + $cell->setValueExplicit(false, PHPExcel_Cell_DataType::TYPE_BOOL); + return true; + } + + // Check for number in scientific format + if (preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_NUMBER.'$/', $value)) { + $cell->setValueExplicit((float) $value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + return true; + } + + // Check for fraction + if (preg_match('/^([+-]?)\s*([0-9]+)\s?\/\s*([0-9]+)$/', $value, $matches)) { + // Convert value to number + $value = $matches[2] / $matches[3]; + if ($matches[1] == '-') { + $value = 0 - $value; + } + $cell->setValueExplicit((float) $value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getWorksheet()->getStyle($cell->getCoordinate()) + ->getNumberFormat()->setFormatCode('??/??'); + return true; + } elseif (preg_match('/^([+-]?)([0-9]*) +([0-9]*)\s?\/\s*([0-9]*)$/', $value, $matches)) { + // Convert value to number + $value = $matches[2] + ($matches[3] / $matches[4]); + if ($matches[1] == '-') { + $value = 0 - $value; + } + $cell->setValueExplicit((float) $value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getWorksheet()->getStyle($cell->getCoordinate()) + ->getNumberFormat()->setFormatCode('# ??/??'); + return true; + } + + // Check for percentage + if (preg_match('/^\-?[0-9]*\.?[0-9]*\s?\%$/', $value)) { + // Convert value to number + $value = (float) str_replace('%', '', $value) / 100; + $cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getWorksheet()->getStyle($cell->getCoordinate()) + ->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE_00); + return true; + } + + // Check for currency + $currencyCode = PHPExcel_Shared_String::getCurrencyCode(); + $decimalSeparator = PHPExcel_Shared_String::getDecimalSeparator(); + $thousandsSeparator = PHPExcel_Shared_String::getThousandsSeparator(); + if (preg_match('/^'.preg_quote($currencyCode).' *(\d{1,3}('.preg_quote($thousandsSeparator).'\d{3})*|(\d+))('.preg_quote($decimalSeparator).'\d{2})?$/', $value)) { + // Convert value to number + $value = (float) trim(str_replace(array($currencyCode, $thousandsSeparator, $decimalSeparator), array('', '', '.'), $value)); + $cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getWorksheet()->getStyle($cell->getCoordinate()) + ->getNumberFormat()->setFormatCode( + str_replace('$', $currencyCode, PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE) + ); + return true; + } elseif (preg_match('/^\$ *(\d{1,3}(\,\d{3})*|(\d+))(\.\d{2})?$/', $value)) { + // Convert value to number + $value = (float) trim(str_replace(array('$',','), '', $value)); + $cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getWorksheet()->getStyle($cell->getCoordinate()) + ->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE); + return true; + } + + // Check for time without seconds e.g. '9:45', '09:45' + if (preg_match('/^(\d|[0-1]\d|2[0-3]):[0-5]\d$/', $value)) { + // Convert value to number + list($h, $m) = explode(':', $value); + $days = $h / 24 + $m / 1440; + $cell->setValueExplicit($days, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getWorksheet()->getStyle($cell->getCoordinate()) + ->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME3); + return true; + } + + // Check for time with seconds '9:45:59', '09:45:59' + if (preg_match('/^(\d|[0-1]\d|2[0-3]):[0-5]\d:[0-5]\d$/', $value)) { + // Convert value to number + list($h, $m, $s) = explode(':', $value); + $days = $h / 24 + $m / 1440 + $s / 86400; + // Convert value to number + $cell->setValueExplicit($days, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getWorksheet()->getStyle($cell->getCoordinate()) + ->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4); + return true; + } + + // Check for datetime, e.g. '2008-12-31', '2008-12-31 15:59', '2008-12-31 15:59:10' + if (($d = PHPExcel_Shared_Date::stringToExcel($value)) !== false) { + // Convert value to number + $cell->setValueExplicit($d, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Determine style. Either there is a time part or not. Look for ':' + if (strpos($value, ':') !== false) { + $formatCode = 'yyyy-mm-dd h:mm'; + } else { + $formatCode = 'yyyy-mm-dd'; + } + $cell->getWorksheet()->getStyle($cell->getCoordinate()) + ->getNumberFormat()->setFormatCode($formatCode); + return true; + } + + // Check for newline character "\n" + if (strpos($value, "\n") !== false) { + $value = PHPExcel_Shared_String::SanitizeUTF8($value); + $cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_STRING); + // Set style + $cell->getWorksheet()->getStyle($cell->getCoordinate()) + ->getAlignment()->setWrapText(true); + return true; + } + } + + // Not bound yet? Use parent... + return parent::bindValue($cell, $value); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/DataType.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/DataType.php new file mode 100644 index 0000000..fc010e6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/DataType.php @@ -0,0 +1,115 @@ + 0, + '#DIV/0!' => 1, + '#VALUE!' => 2, + '#REF!' => 3, + '#NAME?' => 4, + '#NUM!' => 5, + '#N/A' => 6 + ); + + /** + * Get list of error codes + * + * @return array + */ + public static function getErrorCodes() + { + return self::$errorCodes; + } + + /** + * DataType for value + * + * @deprecated Replaced by PHPExcel_Cell_IValueBinder infrastructure, will be removed in version 1.8.0 + * @param mixed $pValue + * @return string + */ + public static function dataTypeForValue($pValue = null) + { + return PHPExcel_Cell_DefaultValueBinder::dataTypeForValue($pValue); + } + + /** + * Check a string that it satisfies Excel requirements + * + * @param mixed Value to sanitize to an Excel string + * @return mixed Sanitized value + */ + public static function checkString($pValue = null) + { + if ($pValue instanceof PHPExcel_RichText) { + // TODO: Sanitize Rich-Text string (max. character count is 32,767) + return $pValue; + } + + // string must never be longer than 32,767 characters, truncate if necessary + $pValue = PHPExcel_Shared_String::Substring($pValue, 0, 32767); + + // we require that newline is represented as "\n" in core, not as "\r\n" or "\r" + $pValue = str_replace(array("\r\n", "\r"), "\n", $pValue); + + return $pValue; + } + + /** + * Check a value that it is a valid error code + * + * @param mixed Value to sanitize to an Excel error code + * @return string Sanitized value + */ + public static function checkErrorCode($pValue = null) + { + $pValue = (string) $pValue; + + if (!array_key_exists($pValue, self::$errorCodes)) { + $pValue = '#NULL!'; + } + + return $pValue; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/DataValidation.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/DataValidation.php new file mode 100644 index 0000000..9883633 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/DataValidation.php @@ -0,0 +1,492 @@ +formula1 = ''; + $this->formula2 = ''; + $this->type = PHPExcel_Cell_DataValidation::TYPE_NONE; + $this->errorStyle = PHPExcel_Cell_DataValidation::STYLE_STOP; + $this->operator = ''; + $this->allowBlank = false; + $this->showDropDown = false; + $this->showInputMessage = false; + $this->showErrorMessage = false; + $this->errorTitle = ''; + $this->error = ''; + $this->promptTitle = ''; + $this->prompt = ''; + } + + /** + * Get Formula 1 + * + * @return string + */ + public function getFormula1() + { + return $this->formula1; + } + + /** + * Set Formula 1 + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setFormula1($value = '') + { + $this->formula1 = $value; + return $this; + } + + /** + * Get Formula 2 + * + * @return string + */ + public function getFormula2() + { + return $this->formula2; + } + + /** + * Set Formula 2 + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setFormula2($value = '') + { + $this->formula2 = $value; + return $this; + } + + /** + * Get Type + * + * @return string + */ + public function getType() + { + return $this->type; + } + + /** + * Set Type + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setType($value = PHPExcel_Cell_DataValidation::TYPE_NONE) + { + $this->type = $value; + return $this; + } + + /** + * Get Error style + * + * @return string + */ + public function getErrorStyle() + { + return $this->errorStyle; + } + + /** + * Set Error style + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setErrorStyle($value = PHPExcel_Cell_DataValidation::STYLE_STOP) + { + $this->errorStyle = $value; + return $this; + } + + /** + * Get Operator + * + * @return string + */ + public function getOperator() + { + return $this->operator; + } + + /** + * Set Operator + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setOperator($value = '') + { + $this->operator = $value; + return $this; + } + + /** + * Get Allow Blank + * + * @return boolean + */ + public function getAllowBlank() + { + return $this->allowBlank; + } + + /** + * Set Allow Blank + * + * @param boolean $value + * @return PHPExcel_Cell_DataValidation + */ + public function setAllowBlank($value = false) + { + $this->allowBlank = $value; + return $this; + } + + /** + * Get Show DropDown + * + * @return boolean + */ + public function getShowDropDown() + { + return $this->showDropDown; + } + + /** + * Set Show DropDown + * + * @param boolean $value + * @return PHPExcel_Cell_DataValidation + */ + public function setShowDropDown($value = false) + { + $this->showDropDown = $value; + return $this; + } + + /** + * Get Show InputMessage + * + * @return boolean + */ + public function getShowInputMessage() + { + return $this->showInputMessage; + } + + /** + * Set Show InputMessage + * + * @param boolean $value + * @return PHPExcel_Cell_DataValidation + */ + public function setShowInputMessage($value = false) + { + $this->showInputMessage = $value; + return $this; + } + + /** + * Get Show ErrorMessage + * + * @return boolean + */ + public function getShowErrorMessage() + { + return $this->showErrorMessage; + } + + /** + * Set Show ErrorMessage + * + * @param boolean $value + * @return PHPExcel_Cell_DataValidation + */ + public function setShowErrorMessage($value = false) + { + $this->showErrorMessage = $value; + return $this; + } + + /** + * Get Error title + * + * @return string + */ + public function getErrorTitle() + { + return $this->errorTitle; + } + + /** + * Set Error title + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setErrorTitle($value = '') + { + $this->errorTitle = $value; + return $this; + } + + /** + * Get Error + * + * @return string + */ + public function getError() + { + return $this->error; + } + + /** + * Set Error + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setError($value = '') + { + $this->error = $value; + return $this; + } + + /** + * Get Prompt title + * + * @return string + */ + public function getPromptTitle() + { + return $this->promptTitle; + } + + /** + * Set Prompt title + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setPromptTitle($value = '') + { + $this->promptTitle = $value; + return $this; + } + + /** + * Get Prompt + * + * @return string + */ + public function getPrompt() + { + return $this->prompt; + } + + /** + * Set Prompt + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setPrompt($value = '') + { + $this->prompt = $value; + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + return md5( + $this->formula1 . + $this->formula2 . + $this->type = PHPExcel_Cell_DataValidation::TYPE_NONE . + $this->errorStyle = PHPExcel_Cell_DataValidation::STYLE_STOP . + $this->operator . + ($this->allowBlank ? 't' : 'f') . + ($this->showDropDown ? 't' : 'f') . + ($this->showInputMessage ? 't' : 'f') . + ($this->showErrorMessage ? 't' : 'f') . + $this->errorTitle . + $this->error . + $this->promptTitle . + $this->prompt . + __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/DefaultValueBinder.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/DefaultValueBinder.php new file mode 100644 index 0000000..dc19e6c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/DefaultValueBinder.php @@ -0,0 +1,102 @@ +format('Y-m-d H:i:s'); + } elseif (!($value instanceof PHPExcel_RichText)) { + $value = (string) $value; + } + } + + // Set value explicit + $cell->setValueExplicit($value, self::dataTypeForValue($value)); + + // Done! + return true; + } + + /** + * DataType for value + * + * @param mixed $pValue + * @return string + */ + public static function dataTypeForValue($pValue = null) + { + // Match the value against a few data types + if ($pValue === null) { + return PHPExcel_Cell_DataType::TYPE_NULL; + } elseif ($pValue === '') { + return PHPExcel_Cell_DataType::TYPE_STRING; + } elseif ($pValue instanceof PHPExcel_RichText) { + return PHPExcel_Cell_DataType::TYPE_INLINE; + } elseif ($pValue{0} === '=' && strlen($pValue) > 1) { + return PHPExcel_Cell_DataType::TYPE_FORMULA; + } elseif (is_bool($pValue)) { + return PHPExcel_Cell_DataType::TYPE_BOOL; + } elseif (is_float($pValue) || is_int($pValue)) { + return PHPExcel_Cell_DataType::TYPE_NUMERIC; + } elseif (preg_match('/^[\+\-]?([0-9]+\\.?[0-9]*|[0-9]*\\.?[0-9]+)([Ee][\-\+]?[0-2]?\d{1,3})?$/', $pValue)) { + $tValue = ltrim($pValue, '+-'); + if (is_string($pValue) && $tValue{0} === '0' && strlen($tValue) > 1 && $tValue{1} !== '.') { + return PHPExcel_Cell_DataType::TYPE_STRING; + } elseif ((strpos($pValue, '.') === false) && ($pValue > PHP_INT_MAX)) { + return PHPExcel_Cell_DataType::TYPE_STRING; + } + return PHPExcel_Cell_DataType::TYPE_NUMERIC; + } elseif (is_string($pValue) && array_key_exists($pValue, PHPExcel_Cell_DataType::getErrorCodes())) { + return PHPExcel_Cell_DataType::TYPE_ERROR; + } + + return PHPExcel_Cell_DataType::TYPE_STRING; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/Hyperlink.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/Hyperlink.php new file mode 100644 index 0000000..daab54c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/Hyperlink.php @@ -0,0 +1,124 @@ +url = $pUrl; + $this->tooltip = $pTooltip; + } + + /** + * Get URL + * + * @return string + */ + public function getUrl() + { + return $this->url; + } + + /** + * Set URL + * + * @param string $value + * @return PHPExcel_Cell_Hyperlink + */ + public function setUrl($value = '') + { + $this->url = $value; + return $this; + } + + /** + * Get tooltip + * + * @return string + */ + public function getTooltip() + { + return $this->tooltip; + } + + /** + * Set tooltip + * + * @param string $value + * @return PHPExcel_Cell_Hyperlink + */ + public function setTooltip($value = '') + { + $this->tooltip = $value; + return $this; + } + + /** + * Is this hyperlink internal? (to another worksheet) + * + * @return boolean + */ + public function isInternal() + { + return strpos($this->url, 'sheet://') !== false; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + return md5( + $this->url . + $this->tooltip . + __CLASS__ + ); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/IValueBinder.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/IValueBinder.php new file mode 100644 index 0000000..de2d0ac --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Cell/IValueBinder.php @@ -0,0 +1,47 @@ + + + + + + + + + \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart.php new file mode 100644 index 0000000..d779993 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart.php @@ -0,0 +1,680 @@ +name = $name; + $this->title = $title; + $this->legend = $legend; + $this->xAxisLabel = $xAxisLabel; + $this->yAxisLabel = $yAxisLabel; + $this->plotArea = $plotArea; + $this->plotVisibleOnly = $plotVisibleOnly; + $this->displayBlanksAs = $displayBlanksAs; + $this->xAxis = $xAxis; + $this->yAxis = $yAxis; + $this->majorGridlines = $majorGridlines; + $this->minorGridlines = $minorGridlines; + } + + /** + * Get Name + * + * @return string + */ + public function getName() + { + return $this->name; + } + + /** + * Get Worksheet + * + * @return PHPExcel_Worksheet + */ + public function getWorksheet() + { + return $this->worksheet; + } + + /** + * Set Worksheet + * + * @param PHPExcel_Worksheet $pValue + * @throws PHPExcel_Chart_Exception + * @return PHPExcel_Chart + */ + public function setWorksheet(PHPExcel_Worksheet $pValue = null) + { + $this->worksheet = $pValue; + + return $this; + } + + /** + * Get Title + * + * @return PHPExcel_Chart_Title + */ + public function getTitle() + { + return $this->title; + } + + /** + * Set Title + * + * @param PHPExcel_Chart_Title $title + * @return PHPExcel_Chart + */ + public function setTitle(PHPExcel_Chart_Title $title) + { + $this->title = $title; + + return $this; + } + + /** + * Get Legend + * + * @return PHPExcel_Chart_Legend + */ + public function getLegend() + { + return $this->legend; + } + + /** + * Set Legend + * + * @param PHPExcel_Chart_Legend $legend + * @return PHPExcel_Chart + */ + public function setLegend(PHPExcel_Chart_Legend $legend) + { + $this->legend = $legend; + + return $this; + } + + /** + * Get X-Axis Label + * + * @return PHPExcel_Chart_Title + */ + public function getXAxisLabel() + { + return $this->xAxisLabel; + } + + /** + * Set X-Axis Label + * + * @param PHPExcel_Chart_Title $label + * @return PHPExcel_Chart + */ + public function setXAxisLabel(PHPExcel_Chart_Title $label) + { + $this->xAxisLabel = $label; + + return $this; + } + + /** + * Get Y-Axis Label + * + * @return PHPExcel_Chart_Title + */ + public function getYAxisLabel() + { + return $this->yAxisLabel; + } + + /** + * Set Y-Axis Label + * + * @param PHPExcel_Chart_Title $label + * @return PHPExcel_Chart + */ + public function setYAxisLabel(PHPExcel_Chart_Title $label) + { + $this->yAxisLabel = $label; + + return $this; + } + + /** + * Get Plot Area + * + * @return PHPExcel_Chart_PlotArea + */ + public function getPlotArea() + { + return $this->plotArea; + } + + /** + * Get Plot Visible Only + * + * @return boolean + */ + public function getPlotVisibleOnly() + { + return $this->plotVisibleOnly; + } + + /** + * Set Plot Visible Only + * + * @param boolean $plotVisibleOnly + * @return PHPExcel_Chart + */ + public function setPlotVisibleOnly($plotVisibleOnly = true) + { + $this->plotVisibleOnly = $plotVisibleOnly; + + return $this; + } + + /** + * Get Display Blanks as + * + * @return string + */ + public function getDisplayBlanksAs() + { + return $this->displayBlanksAs; + } + + /** + * Set Display Blanks as + * + * @param string $displayBlanksAs + * @return PHPExcel_Chart + */ + public function setDisplayBlanksAs($displayBlanksAs = '0') + { + $this->displayBlanksAs = $displayBlanksAs; + } + + + /** + * Get yAxis + * + * @return PHPExcel_Chart_Axis + */ + public function getChartAxisY() + { + if ($this->yAxis !== null) { + return $this->yAxis; + } + + return new PHPExcel_Chart_Axis(); + } + + /** + * Get xAxis + * + * @return PHPExcel_Chart_Axis + */ + public function getChartAxisX() + { + if ($this->xAxis !== null) { + return $this->xAxis; + } + + return new PHPExcel_Chart_Axis(); + } + + /** + * Get Major Gridlines + * + * @return PHPExcel_Chart_GridLines + */ + public function getMajorGridlines() + { + if ($this->majorGridlines !== null) { + return $this->majorGridlines; + } + + return new PHPExcel_Chart_GridLines(); + } + + /** + * Get Minor Gridlines + * + * @return PHPExcel_Chart_GridLines + */ + public function getMinorGridlines() + { + if ($this->minorGridlines !== null) { + return $this->minorGridlines; + } + + return new PHPExcel_Chart_GridLines(); + } + + + /** + * Set the Top Left position for the chart + * + * @param string $cell + * @param integer $xOffset + * @param integer $yOffset + * @return PHPExcel_Chart + */ + public function setTopLeftPosition($cell, $xOffset = null, $yOffset = null) + { + $this->topLeftCellRef = $cell; + if (!is_null($xOffset)) { + $this->setTopLeftXOffset($xOffset); + } + if (!is_null($yOffset)) { + $this->setTopLeftYOffset($yOffset); + } + + return $this; + } + + /** + * Get the top left position of the chart + * + * @return array an associative array containing the cell address, X-Offset and Y-Offset from the top left of that cell + */ + public function getTopLeftPosition() + { + return array( + 'cell' => $this->topLeftCellRef, + 'xOffset' => $this->topLeftXOffset, + 'yOffset' => $this->topLeftYOffset + ); + } + + /** + * Get the cell address where the top left of the chart is fixed + * + * @return string + */ + public function getTopLeftCell() + { + return $this->topLeftCellRef; + } + + /** + * Set the Top Left cell position for the chart + * + * @param string $cell + * @return PHPExcel_Chart + */ + public function setTopLeftCell($cell) + { + $this->topLeftCellRef = $cell; + + return $this; + } + + /** + * Set the offset position within the Top Left cell for the chart + * + * @param integer $xOffset + * @param integer $yOffset + * @return PHPExcel_Chart + */ + public function setTopLeftOffset($xOffset = null, $yOffset = null) + { + if (!is_null($xOffset)) { + $this->setTopLeftXOffset($xOffset); + } + if (!is_null($yOffset)) { + $this->setTopLeftYOffset($yOffset); + } + + return $this; + } + + /** + * Get the offset position within the Top Left cell for the chart + * + * @return integer[] + */ + public function getTopLeftOffset() + { + return array( + 'X' => $this->topLeftXOffset, + 'Y' => $this->topLeftYOffset + ); + } + + public function setTopLeftXOffset($xOffset) + { + $this->topLeftXOffset = $xOffset; + + return $this; + } + + public function getTopLeftXOffset() + { + return $this->topLeftXOffset; + } + + public function setTopLeftYOffset($yOffset) + { + $this->topLeftYOffset = $yOffset; + + return $this; + } + + public function getTopLeftYOffset() + { + return $this->topLeftYOffset; + } + + /** + * Set the Bottom Right position of the chart + * + * @param string $cell + * @param integer $xOffset + * @param integer $yOffset + * @return PHPExcel_Chart + */ + public function setBottomRightPosition($cell, $xOffset = null, $yOffset = null) + { + $this->bottomRightCellRef = $cell; + if (!is_null($xOffset)) { + $this->setBottomRightXOffset($xOffset); + } + if (!is_null($yOffset)) { + $this->setBottomRightYOffset($yOffset); + } + + return $this; + } + + /** + * Get the bottom right position of the chart + * + * @return array an associative array containing the cell address, X-Offset and Y-Offset from the top left of that cell + */ + public function getBottomRightPosition() + { + return array( + 'cell' => $this->bottomRightCellRef, + 'xOffset' => $this->bottomRightXOffset, + 'yOffset' => $this->bottomRightYOffset + ); + } + + public function setBottomRightCell($cell) + { + $this->bottomRightCellRef = $cell; + + return $this; + } + + /** + * Get the cell address where the bottom right of the chart is fixed + * + * @return string + */ + public function getBottomRightCell() + { + return $this->bottomRightCellRef; + } + + /** + * Set the offset position within the Bottom Right cell for the chart + * + * @param integer $xOffset + * @param integer $yOffset + * @return PHPExcel_Chart + */ + public function setBottomRightOffset($xOffset = null, $yOffset = null) + { + if (!is_null($xOffset)) { + $this->setBottomRightXOffset($xOffset); + } + if (!is_null($yOffset)) { + $this->setBottomRightYOffset($yOffset); + } + + return $this; + } + + /** + * Get the offset position within the Bottom Right cell for the chart + * + * @return integer[] + */ + public function getBottomRightOffset() + { + return array( + 'X' => $this->bottomRightXOffset, + 'Y' => $this->bottomRightYOffset + ); + } + + public function setBottomRightXOffset($xOffset) + { + $this->bottomRightXOffset = $xOffset; + + return $this; + } + + public function getBottomRightXOffset() + { + return $this->bottomRightXOffset; + } + + public function setBottomRightYOffset($yOffset) + { + $this->bottomRightYOffset = $yOffset; + + return $this; + } + + public function getBottomRightYOffset() + { + return $this->bottomRightYOffset; + } + + + public function refresh() + { + if ($this->worksheet !== null) { + $this->plotArea->refresh($this->worksheet); + } + } + + public function render($outputDestination = null) + { + $libraryName = PHPExcel_Settings::getChartRendererName(); + if (is_null($libraryName)) { + return false; + } + // Ensure that data series values are up-to-date before we render + $this->refresh(); + + $libraryPath = PHPExcel_Settings::getChartRendererPath(); + $includePath = str_replace('\\', '/', get_include_path()); + $rendererPath = str_replace('\\', '/', $libraryPath); + if (strpos($rendererPath, $includePath) === false) { + set_include_path(get_include_path() . PATH_SEPARATOR . $libraryPath); + } + + $rendererName = 'PHPExcel_Chart_Renderer_'.$libraryName; + $renderer = new $rendererName($this); + + if ($outputDestination == 'php://output') { + $outputDestination = null; + } + return $renderer->render($outputDestination); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Axis.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Axis.php new file mode 100644 index 0000000..9aeafc6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Axis.php @@ -0,0 +1,561 @@ + self::FORMAT_CODE_GENERAL, + 'source_linked' => 1 + ); + + /** + * Axis Options + * + * @var array of mixed + */ + private $axisOptions = array( + 'minimum' => null, + 'maximum' => null, + 'major_unit' => null, + 'minor_unit' => null, + 'orientation' => self::ORIENTATION_NORMAL, + 'minor_tick_mark' => self::TICK_MARK_NONE, + 'major_tick_mark' => self::TICK_MARK_NONE, + 'axis_labels' => self::AXIS_LABELS_NEXT_TO, + 'horizontal_crosses' => self::HORIZONTAL_CROSSES_AUTOZERO, + 'horizontal_crosses_value' => null + ); + + /** + * Fill Properties + * + * @var array of mixed + */ + private $fillProperties = array( + 'type' => self::EXCEL_COLOR_TYPE_ARGB, + 'value' => null, + 'alpha' => 0 + ); + + /** + * Line Properties + * + * @var array of mixed + */ + private $lineProperties = array( + 'type' => self::EXCEL_COLOR_TYPE_ARGB, + 'value' => null, + 'alpha' => 0 + ); + + /** + * Line Style Properties + * + * @var array of mixed + */ + private $lineStyleProperties = array( + 'width' => '9525', + 'compound' => self::LINE_STYLE_COMPOUND_SIMPLE, + 'dash' => self::LINE_STYLE_DASH_SOLID, + 'cap' => self::LINE_STYLE_CAP_FLAT, + 'join' => self::LINE_STYLE_JOIN_BEVEL, + 'arrow' => array( + 'head' => array( + 'type' => self::LINE_STYLE_ARROW_TYPE_NOARROW, + 'size' => self::LINE_STYLE_ARROW_SIZE_5 + ), + 'end' => array( + 'type' => self::LINE_STYLE_ARROW_TYPE_NOARROW, + 'size' => self::LINE_STYLE_ARROW_SIZE_8 + ), + ) + ); + + /** + * Shadow Properties + * + * @var array of mixed + */ + private $shadowProperties = array( + 'presets' => self::SHADOW_PRESETS_NOSHADOW, + 'effect' => null, + 'color' => array( + 'type' => self::EXCEL_COLOR_TYPE_STANDARD, + 'value' => 'black', + 'alpha' => 40, + ), + 'size' => array( + 'sx' => null, + 'sy' => null, + 'kx' => null + ), + 'blur' => null, + 'direction' => null, + 'distance' => null, + 'algn' => null, + 'rotWithShape' => null + ); + + /** + * Glow Properties + * + * @var array of mixed + */ + private $glowProperties = array( + 'size' => null, + 'color' => array( + 'type' => self::EXCEL_COLOR_TYPE_STANDARD, + 'value' => 'black', + 'alpha' => 40 + ) + ); + + /** + * Soft Edge Properties + * + * @var array of mixed + */ + private $softEdges = array( + 'size' => null + ); + + /** + * Get Series Data Type + * + * @return string + */ + public function setAxisNumberProperties($format_code) + { + $this->axisNumber['format'] = (string) $format_code; + $this->axisNumber['source_linked'] = 0; + } + + /** + * Get Axis Number Format Data Type + * + * @return string + */ + public function getAxisNumberFormat() + { + return $this->axisNumber['format']; + } + + /** + * Get Axis Number Source Linked + * + * @return string + */ + public function getAxisNumberSourceLinked() + { + return (string) $this->axisNumber['source_linked']; + } + + /** + * Set Axis Options Properties + * + * @param string $axis_labels + * @param string $horizontal_crosses_value + * @param string $horizontal_crosses + * @param string $axis_orientation + * @param string $major_tmt + * @param string $minor_tmt + * @param string $minimum + * @param string $maximum + * @param string $major_unit + * @param string $minor_unit + * + */ + public function setAxisOptionsProperties($axis_labels, $horizontal_crosses_value = null, $horizontal_crosses = null, $axis_orientation = null, $major_tmt = null, $minor_tmt = null, $minimum = null, $maximum = null, $major_unit = null, $minor_unit = null) + { + $this->axisOptions['axis_labels'] = (string) $axis_labels; + ($horizontal_crosses_value !== null) ? $this->axisOptions['horizontal_crosses_value'] = (string) $horizontal_crosses_value : null; + ($horizontal_crosses !== null) ? $this->axisOptions['horizontal_crosses'] = (string) $horizontal_crosses : null; + ($axis_orientation !== null) ? $this->axisOptions['orientation'] = (string) $axis_orientation : null; + ($major_tmt !== null) ? $this->axisOptions['major_tick_mark'] = (string) $major_tmt : null; + ($minor_tmt !== null) ? $this->axisOptions['minor_tick_mark'] = (string) $minor_tmt : null; + ($minor_tmt !== null) ? $this->axisOptions['minor_tick_mark'] = (string) $minor_tmt : null; + ($minimum !== null) ? $this->axisOptions['minimum'] = (string) $minimum : null; + ($maximum !== null) ? $this->axisOptions['maximum'] = (string) $maximum : null; + ($major_unit !== null) ? $this->axisOptions['major_unit'] = (string) $major_unit : null; + ($minor_unit !== null) ? $this->axisOptions['minor_unit'] = (string) $minor_unit : null; + } + + /** + * Get Axis Options Property + * + * @param string $property + * + * @return string + */ + public function getAxisOptionsProperty($property) + { + return $this->axisOptions[$property]; + } + + /** + * Set Axis Orientation Property + * + * @param string $orientation + * + */ + public function setAxisOrientation($orientation) + { + $this->orientation = (string) $orientation; + } + + /** + * Set Fill Property + * + * @param string $color + * @param int $alpha + * @param string $type + * + */ + public function setFillParameters($color, $alpha = 0, $type = self::EXCEL_COLOR_TYPE_ARGB) + { + $this->fillProperties = $this->setColorProperties($color, $alpha, $type); + } + + /** + * Set Line Property + * + * @param string $color + * @param int $alpha + * @param string $type + * + */ + public function setLineParameters($color, $alpha = 0, $type = self::EXCEL_COLOR_TYPE_ARGB) + { + $this->lineProperties = $this->setColorProperties($color, $alpha, $type); + } + + /** + * Get Fill Property + * + * @param string $property + * + * @return string + */ + public function getFillProperty($property) + { + return $this->fillProperties[$property]; + } + + /** + * Get Line Property + * + * @param string $property + * + * @return string + */ + public function getLineProperty($property) + { + return $this->lineProperties[$property]; + } + + /** + * Set Line Style Properties + * + * @param float $line_width + * @param string $compound_type + * @param string $dash_type + * @param string $cap_type + * @param string $join_type + * @param string $head_arrow_type + * @param string $head_arrow_size + * @param string $end_arrow_type + * @param string $end_arrow_size + * + */ + public function setLineStyleProperties($line_width = null, $compound_type = null, $dash_type = null, $cap_type = null, $join_type = null, $head_arrow_type = null, $head_arrow_size = null, $end_arrow_type = null, $end_arrow_size = null) + { + (!is_null($line_width)) ? $this->lineStyleProperties['width'] = $this->getExcelPointsWidth((float) $line_width) : null; + (!is_null($compound_type)) ? $this->lineStyleProperties['compound'] = (string) $compound_type : null; + (!is_null($dash_type)) ? $this->lineStyleProperties['dash'] = (string) $dash_type : null; + (!is_null($cap_type)) ? $this->lineStyleProperties['cap'] = (string) $cap_type : null; + (!is_null($join_type)) ? $this->lineStyleProperties['join'] = (string) $join_type : null; + (!is_null($head_arrow_type)) ? $this->lineStyleProperties['arrow']['head']['type'] = (string) $head_arrow_type : null; + (!is_null($head_arrow_size)) ? $this->lineStyleProperties['arrow']['head']['size'] = (string) $head_arrow_size : null; + (!is_null($end_arrow_type)) ? $this->lineStyleProperties['arrow']['end']['type'] = (string) $end_arrow_type : null; + (!is_null($end_arrow_size)) ? $this->lineStyleProperties['arrow']['end']['size'] = (string) $end_arrow_size : null; + } + + /** + * Get Line Style Property + * + * @param array|string $elements + * + * @return string + */ + public function getLineStyleProperty($elements) + { + return $this->getArrayElementsValue($this->lineStyleProperties, $elements); + } + + /** + * Get Line Style Arrow Excel Width + * + * @param string $arrow + * + * @return string + */ + public function getLineStyleArrowWidth($arrow) + { + return $this->getLineStyleArrowSize($this->lineStyleProperties['arrow'][$arrow]['size'], 'w'); + } + + /** + * Get Line Style Arrow Excel Length + * + * @param string $arrow + * + * @return string + */ + public function getLineStyleArrowLength($arrow) + { + return $this->getLineStyleArrowSize($this->lineStyleProperties['arrow'][$arrow]['size'], 'len'); + } + + /** + * Set Shadow Properties + * + * @param int $shadow_presets + * @param string $sh_color_value + * @param string $sh_color_type + * @param string $sh_color_alpha + * @param float $sh_blur + * @param int $sh_angle + * @param float $sh_distance + * + */ + public function setShadowProperties($sh_presets, $sh_color_value = null, $sh_color_type = null, $sh_color_alpha = null, $sh_blur = null, $sh_angle = null, $sh_distance = null) + { + $this->setShadowPresetsProperties((int) $sh_presets) + ->setShadowColor( + is_null($sh_color_value) ? $this->shadowProperties['color']['value'] : $sh_color_value, + is_null($sh_color_alpha) ? (int) $this->shadowProperties['color']['alpha'] : $sh_color_alpha, + is_null($sh_color_type) ? $this->shadowProperties['color']['type'] : $sh_color_type + ) + ->setShadowBlur($sh_blur) + ->setShadowAngle($sh_angle) + ->setShadowDistance($sh_distance); + } + + /** + * Set Shadow Color + * + * @param int $shadow_presets + * + * @return PHPExcel_Chart_Axis + */ + private function setShadowPresetsProperties($shadow_presets) + { + $this->shadowProperties['presets'] = $shadow_presets; + $this->setShadowProperiesMapValues($this->getShadowPresetsMap($shadow_presets)); + + return $this; + } + + /** + * Set Shadow Properties from Maped Values + * + * @param array $properties_map + * @param * $reference + * + * @return PHPExcel_Chart_Axis + */ + private function setShadowProperiesMapValues(array $properties_map, &$reference = null) + { + $base_reference = $reference; + foreach ($properties_map as $property_key => $property_val) { + if (is_array($property_val)) { + if ($reference === null) { + $reference = & $this->shadowProperties[$property_key]; + } else { + $reference = & $reference[$property_key]; + } + $this->setShadowProperiesMapValues($property_val, $reference); + } else { + if ($base_reference === null) { + $this->shadowProperties[$property_key] = $property_val; + } else { + $reference[$property_key] = $property_val; + } + } + } + + return $this; + } + + /** + * Set Shadow Color + * + * @param string $color + * @param int $alpha + * @param string $type + * + * @return PHPExcel_Chart_Axis + */ + private function setShadowColor($color, $alpha, $type) + { + $this->shadowProperties['color'] = $this->setColorProperties($color, $alpha, $type); + + return $this; + } + + /** + * Set Shadow Blur + * + * @param float $blur + * + * @return PHPExcel_Chart_Axis + */ + private function setShadowBlur($blur) + { + if ($blur !== null) { + $this->shadowProperties['blur'] = (string) $this->getExcelPointsWidth($blur); + } + + return $this; + } + + /** + * Set Shadow Angle + * + * @param int $angle + * + * @return PHPExcel_Chart_Axis + */ + private function setShadowAngle($angle) + { + if ($angle !== null) { + $this->shadowProperties['direction'] = (string) $this->getExcelPointsAngle($angle); + } + + return $this; + } + + /** + * Set Shadow Distance + * + * @param float $distance + * + * @return PHPExcel_Chart_Axis + */ + private function setShadowDistance($distance) + { + if ($distance !== null) { + $this->shadowProperties['distance'] = (string) $this->getExcelPointsWidth($distance); + } + + return $this; + } + + /** + * Get Glow Property + * + * @param float $size + * @param string $color_value + * @param int $color_alpha + * @param string $color_type + */ + public function getShadowProperty($elements) + { + return $this->getArrayElementsValue($this->shadowProperties, $elements); + } + + /** + * Set Glow Properties + * + * @param float $size + * @param string $color_value + * @param int $color_alpha + * @param string $color_type + */ + public function setGlowProperties($size, $color_value = null, $color_alpha = null, $color_type = null) + { + $this->setGlowSize($size) + ->setGlowColor( + is_null($color_value) ? $this->glowProperties['color']['value'] : $color_value, + is_null($color_alpha) ? (int) $this->glowProperties['color']['alpha'] : $color_alpha, + is_null($color_type) ? $this->glowProperties['color']['type'] : $color_type + ); + } + + /** + * Get Glow Property + * + * @param array|string $property + * + * @return string + */ + public function getGlowProperty($property) + { + return $this->getArrayElementsValue($this->glowProperties, $property); + } + + /** + * Set Glow Color + * + * @param float $size + * + * @return PHPExcel_Chart_Axis + */ + private function setGlowSize($size) + { + if (!is_null($size)) { + $this->glowProperties['size'] = $this->getExcelPointsWidth($size); + } + + return $this; + } + + /** + * Set Glow Color + * + * @param string $color + * @param int $alpha + * @param string $type + * + * @return PHPExcel_Chart_Axis + */ + private function setGlowColor($color, $alpha, $type) + { + $this->glowProperties['color'] = $this->setColorProperties($color, $alpha, $type); + + return $this; + } + + /** + * Set Soft Edges Size + * + * @param float $size + */ + public function setSoftEdges($size) + { + if (!is_null($size)) { + $softEdges['size'] = (string) $this->getExcelPointsWidth($size); + } + } + + /** + * Get Soft Edges Size + * + * @return string + */ + public function getSoftEdgesSize() + { + return $this->softEdges['size']; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/DataSeries.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/DataSeries.php new file mode 100644 index 0000000..9ecd543 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/DataSeries.php @@ -0,0 +1,390 @@ +plotType = $plotType; + $this->plotGrouping = $plotGrouping; + $this->plotOrder = $plotOrder; + $keys = array_keys($plotValues); + $this->plotValues = $plotValues; + if ((count($plotLabel) == 0) || (is_null($plotLabel[$keys[0]]))) { + $plotLabel[$keys[0]] = new PHPExcel_Chart_DataSeriesValues(); + } + + $this->plotLabel = $plotLabel; + if ((count($plotCategory) == 0) || (is_null($plotCategory[$keys[0]]))) { + $plotCategory[$keys[0]] = new PHPExcel_Chart_DataSeriesValues(); + } + $this->plotCategory = $plotCategory; + $this->smoothLine = $smoothLine; + $this->plotStyle = $plotStyle; + + if (is_null($plotDirection)) { + $plotDirection = self::DIRECTION_COL; + } + $this->plotDirection = $plotDirection; + } + + /** + * Get Plot Type + * + * @return string + */ + public function getPlotType() + { + return $this->plotType; + } + + /** + * Set Plot Type + * + * @param string $plotType + * @return PHPExcel_Chart_DataSeries + */ + public function setPlotType($plotType = '') + { + $this->plotType = $plotType; + return $this; + } + + /** + * Get Plot Grouping Type + * + * @return string + */ + public function getPlotGrouping() + { + return $this->plotGrouping; + } + + /** + * Set Plot Grouping Type + * + * @param string $groupingType + * @return PHPExcel_Chart_DataSeries + */ + public function setPlotGrouping($groupingType = null) + { + $this->plotGrouping = $groupingType; + return $this; + } + + /** + * Get Plot Direction + * + * @return string + */ + public function getPlotDirection() + { + return $this->plotDirection; + } + + /** + * Set Plot Direction + * + * @param string $plotDirection + * @return PHPExcel_Chart_DataSeries + */ + public function setPlotDirection($plotDirection = null) + { + $this->plotDirection = $plotDirection; + return $this; + } + + /** + * Get Plot Order + * + * @return string + */ + public function getPlotOrder() + { + return $this->plotOrder; + } + + /** + * Get Plot Labels + * + * @return array of PHPExcel_Chart_DataSeriesValues + */ + public function getPlotLabels() + { + return $this->plotLabel; + } + + /** + * Get Plot Label by Index + * + * @return PHPExcel_Chart_DataSeriesValues + */ + public function getPlotLabelByIndex($index) + { + $keys = array_keys($this->plotLabel); + if (in_array($index, $keys)) { + return $this->plotLabel[$index]; + } elseif (isset($keys[$index])) { + return $this->plotLabel[$keys[$index]]; + } + return false; + } + + /** + * Get Plot Categories + * + * @return array of PHPExcel_Chart_DataSeriesValues + */ + public function getPlotCategories() + { + return $this->plotCategory; + } + + /** + * Get Plot Category by Index + * + * @return PHPExcel_Chart_DataSeriesValues + */ + public function getPlotCategoryByIndex($index) + { + $keys = array_keys($this->plotCategory); + if (in_array($index, $keys)) { + return $this->plotCategory[$index]; + } elseif (isset($keys[$index])) { + return $this->plotCategory[$keys[$index]]; + } + return false; + } + + /** + * Get Plot Style + * + * @return string + */ + public function getPlotStyle() + { + return $this->plotStyle; + } + + /** + * Set Plot Style + * + * @param string $plotStyle + * @return PHPExcel_Chart_DataSeries + */ + public function setPlotStyle($plotStyle = null) + { + $this->plotStyle = $plotStyle; + return $this; + } + + /** + * Get Plot Values + * + * @return array of PHPExcel_Chart_DataSeriesValues + */ + public function getPlotValues() + { + return $this->plotValues; + } + + /** + * Get Plot Values by Index + * + * @return PHPExcel_Chart_DataSeriesValues + */ + public function getPlotValuesByIndex($index) + { + $keys = array_keys($this->plotValues); + if (in_array($index, $keys)) { + return $this->plotValues[$index]; + } elseif (isset($keys[$index])) { + return $this->plotValues[$keys[$index]]; + } + return false; + } + + /** + * Get Number of Plot Series + * + * @return integer + */ + public function getPlotSeriesCount() + { + return count($this->plotValues); + } + + /** + * Get Smooth Line + * + * @return boolean + */ + public function getSmoothLine() + { + return $this->smoothLine; + } + + /** + * Set Smooth Line + * + * @param boolean $smoothLine + * @return PHPExcel_Chart_DataSeries + */ + public function setSmoothLine($smoothLine = true) + { + $this->smoothLine = $smoothLine; + return $this; + } + + public function refresh(PHPExcel_Worksheet $worksheet) + { + foreach ($this->plotValues as $plotValues) { + if ($plotValues !== null) { + $plotValues->refresh($worksheet, true); + } + } + foreach ($this->plotLabel as $plotValues) { + if ($plotValues !== null) { + $plotValues->refresh($worksheet, true); + } + } + foreach ($this->plotCategory as $plotValues) { + if ($plotValues !== null) { + $plotValues->refresh($worksheet, false); + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/DataSeriesValues.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/DataSeriesValues.php new file mode 100644 index 0000000..ea57e52 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/DataSeriesValues.php @@ -0,0 +1,333 @@ +setDataType($dataType); + $this->dataSource = $dataSource; + $this->formatCode = $formatCode; + $this->pointCount = $pointCount; + $this->dataValues = $dataValues; + $this->pointMarker = $marker; + } + + /** + * Get Series Data Type + * + * @return string + */ + public function getDataType() + { + return $this->dataType; + } + + /** + * Set Series Data Type + * + * @param string $dataType Datatype of this data series + * Typical values are: + * PHPExcel_Chart_DataSeriesValues::DATASERIES_TYPE_STRING + * Normally used for axis point values + * PHPExcel_Chart_DataSeriesValues::DATASERIES_TYPE_NUMBER + * Normally used for chart data values + * @return PHPExcel_Chart_DataSeriesValues + */ + public function setDataType($dataType = self::DATASERIES_TYPE_NUMBER) + { + if (!in_array($dataType, self::$dataTypeValues)) { + throw new PHPExcel_Chart_Exception('Invalid datatype for chart data series values'); + } + $this->dataType = $dataType; + + return $this; + } + + /** + * Get Series Data Source (formula) + * + * @return string + */ + public function getDataSource() + { + return $this->dataSource; + } + + /** + * Set Series Data Source (formula) + * + * @param string $dataSource + * @return PHPExcel_Chart_DataSeriesValues + */ + public function setDataSource($dataSource = null, $refreshDataValues = true) + { + $this->dataSource = $dataSource; + + if ($refreshDataValues) { + // TO DO + } + + return $this; + } + + /** + * Get Point Marker + * + * @return string + */ + public function getPointMarker() + { + return $this->pointMarker; + } + + /** + * Set Point Marker + * + * @param string $marker + * @return PHPExcel_Chart_DataSeriesValues + */ + public function setPointMarker($marker = null) + { + $this->pointMarker = $marker; + + return $this; + } + + /** + * Get Series Format Code + * + * @return string + */ + public function getFormatCode() + { + return $this->formatCode; + } + + /** + * Set Series Format Code + * + * @param string $formatCode + * @return PHPExcel_Chart_DataSeriesValues + */ + public function setFormatCode($formatCode = null) + { + $this->formatCode = $formatCode; + + return $this; + } + + /** + * Get Series Point Count + * + * @return integer + */ + public function getPointCount() + { + return $this->pointCount; + } + + /** + * Identify if the Data Series is a multi-level or a simple series + * + * @return boolean + */ + public function isMultiLevelSeries() + { + if (count($this->dataValues) > 0) { + return is_array($this->dataValues[0]); + } + return null; + } + + /** + * Return the level count of a multi-level Data Series + * + * @return boolean + */ + public function multiLevelCount() + { + $levelCount = 0; + foreach ($this->dataValues as $dataValueSet) { + $levelCount = max($levelCount, count($dataValueSet)); + } + return $levelCount; + } + + /** + * Get Series Data Values + * + * @return array of mixed + */ + public function getDataValues() + { + return $this->dataValues; + } + + /** + * Get the first Series Data value + * + * @return mixed + */ + public function getDataValue() + { + $count = count($this->dataValues); + if ($count == 0) { + return null; + } elseif ($count == 1) { + return $this->dataValues[0]; + } + return $this->dataValues; + } + + /** + * Set Series Data Values + * + * @param array $dataValues + * @param boolean $refreshDataSource + * TRUE - refresh the value of dataSource based on the values of $dataValues + * FALSE - don't change the value of dataSource + * @return PHPExcel_Chart_DataSeriesValues + */ + public function setDataValues($dataValues = array(), $refreshDataSource = true) + { + $this->dataValues = PHPExcel_Calculation_Functions::flattenArray($dataValues); + $this->pointCount = count($dataValues); + + if ($refreshDataSource) { + // TO DO + } + + return $this; + } + + private function stripNulls($var) + { + return $var !== null; + } + + public function refresh(PHPExcel_Worksheet $worksheet, $flatten = true) + { + if ($this->dataSource !== null) { + $calcEngine = PHPExcel_Calculation::getInstance($worksheet->getParent()); + $newDataValues = PHPExcel_Calculation::unwrapResult( + $calcEngine->_calculateFormulaValue( + '='.$this->dataSource, + null, + $worksheet->getCell('A1') + ) + ); + if ($flatten) { + $this->dataValues = PHPExcel_Calculation_Functions::flattenArray($newDataValues); + foreach ($this->dataValues as &$dataValue) { + if ((!empty($dataValue)) && ($dataValue[0] == '#')) { + $dataValue = 0.0; + } + } + unset($dataValue); + } else { + $cellRange = explode('!', $this->dataSource); + if (count($cellRange) > 1) { + list(, $cellRange) = $cellRange; + } + + $dimensions = PHPExcel_Cell::rangeDimension(str_replace('$', '', $cellRange)); + if (($dimensions[0] == 1) || ($dimensions[1] == 1)) { + $this->dataValues = PHPExcel_Calculation_Functions::flattenArray($newDataValues); + } else { + $newArray = array_values(array_shift($newDataValues)); + foreach ($newArray as $i => $newDataSet) { + $newArray[$i] = array($newDataSet); + } + + foreach ($newDataValues as $newDataSet) { + $i = 0; + foreach ($newDataSet as $newDataVal) { + array_unshift($newArray[$i++], $newDataVal); + } + } + $this->dataValues = $newArray; + } + } + $this->pointCount = count($this->dataValues); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Exception.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Exception.php new file mode 100644 index 0000000..e20dfa5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Exception.php @@ -0,0 +1,46 @@ +line = $line; + $e->file = $file; + throw $e; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/GridLines.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/GridLines.php new file mode 100644 index 0000000..898012e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/GridLines.php @@ -0,0 +1,472 @@ + array( + 'type' => self::EXCEL_COLOR_TYPE_STANDARD, + 'value' => null, + 'alpha' => 0 + ), + 'style' => array( + 'width' => '9525', + 'compound' => self::LINE_STYLE_COMPOUND_SIMPLE, + 'dash' => self::LINE_STYLE_DASH_SOLID, + 'cap' => self::LINE_STYLE_CAP_FLAT, + 'join' => self::LINE_STYLE_JOIN_BEVEL, + 'arrow' => array( + 'head' => array( + 'type' => self::LINE_STYLE_ARROW_TYPE_NOARROW, + 'size' => self::LINE_STYLE_ARROW_SIZE_5 + ), + 'end' => array( + 'type' => self::LINE_STYLE_ARROW_TYPE_NOARROW, + 'size' => self::LINE_STYLE_ARROW_SIZE_8 + ), + ) + ) + ); + + private $shadowProperties = array( + 'presets' => self::SHADOW_PRESETS_NOSHADOW, + 'effect' => null, + 'color' => array( + 'type' => self::EXCEL_COLOR_TYPE_STANDARD, + 'value' => 'black', + 'alpha' => 85, + ), + 'size' => array( + 'sx' => null, + 'sy' => null, + 'kx' => null + ), + 'blur' => null, + 'direction' => null, + 'distance' => null, + 'algn' => null, + 'rotWithShape' => null + ); + + private $glowProperties = array( + 'size' => null, + 'color' => array( + 'type' => self::EXCEL_COLOR_TYPE_STANDARD, + 'value' => 'black', + 'alpha' => 40 + ) + ); + + private $softEdges = array( + 'size' => null + ); + + /** + * Get Object State + * + * @return bool + */ + + public function getObjectState() + { + return $this->objectState; + } + + /** + * Change Object State to True + * + * @return PHPExcel_Chart_GridLines + */ + + private function activateObject() + { + $this->objectState = true; + + return $this; + } + + /** + * Set Line Color Properties + * + * @param string $value + * @param int $alpha + * @param string $type + */ + + public function setLineColorProperties($value, $alpha = 0, $type = self::EXCEL_COLOR_TYPE_STANDARD) + { + $this->activateObject() + ->lineProperties['color'] = $this->setColorProperties( + $value, + $alpha, + $type + ); + } + + /** + * Set Line Color Properties + * + * @param float $line_width + * @param string $compound_type + * @param string $dash_type + * @param string $cap_type + * @param string $join_type + * @param string $head_arrow_type + * @param string $head_arrow_size + * @param string $end_arrow_type + * @param string $end_arrow_size + */ + + public function setLineStyleProperties($line_width = null, $compound_type = null, $dash_type = null, $cap_type = null, $join_type = null, $head_arrow_type = null, $head_arrow_size = null, $end_arrow_type = null, $end_arrow_size = null) + { + $this->activateObject(); + (!is_null($line_width)) + ? $this->lineProperties['style']['width'] = $this->getExcelPointsWidth((float) $line_width) + : null; + (!is_null($compound_type)) + ? $this->lineProperties['style']['compound'] = (string) $compound_type + : null; + (!is_null($dash_type)) + ? $this->lineProperties['style']['dash'] = (string) $dash_type + : null; + (!is_null($cap_type)) + ? $this->lineProperties['style']['cap'] = (string) $cap_type + : null; + (!is_null($join_type)) + ? $this->lineProperties['style']['join'] = (string) $join_type + : null; + (!is_null($head_arrow_type)) + ? $this->lineProperties['style']['arrow']['head']['type'] = (string) $head_arrow_type + : null; + (!is_null($head_arrow_size)) + ? $this->lineProperties['style']['arrow']['head']['size'] = (string) $head_arrow_size + : null; + (!is_null($end_arrow_type)) + ? $this->lineProperties['style']['arrow']['end']['type'] = (string) $end_arrow_type + : null; + (!is_null($end_arrow_size)) + ? $this->lineProperties['style']['arrow']['end']['size'] = (string) $end_arrow_size + : null; + } + + /** + * Get Line Color Property + * + * @param string $parameter + * + * @return string + */ + + public function getLineColorProperty($parameter) + { + return $this->lineProperties['color'][$parameter]; + } + + /** + * Get Line Style Property + * + * @param array|string $elements + * + * @return string + */ + + public function getLineStyleProperty($elements) + { + return $this->getArrayElementsValue($this->lineProperties['style'], $elements); + } + + /** + * Set Glow Properties + * + * @param float $size + * @param string $color_value + * @param int $color_alpha + * @param string $color_type + * + */ + + public function setGlowProperties($size, $color_value = null, $color_alpha = null, $color_type = null) + { + $this + ->activateObject() + ->setGlowSize($size) + ->setGlowColor($color_value, $color_alpha, $color_type); + } + + /** + * Get Glow Color Property + * + * @param string $property + * + * @return string + */ + + public function getGlowColor($property) + { + return $this->glowProperties['color'][$property]; + } + + /** + * Get Glow Size + * + * @return string + */ + + public function getGlowSize() + { + return $this->glowProperties['size']; + } + + /** + * Set Glow Size + * + * @param float $size + * + * @return PHPExcel_Chart_GridLines + */ + + private function setGlowSize($size) + { + $this->glowProperties['size'] = $this->getExcelPointsWidth((float) $size); + + return $this; + } + + /** + * Set Glow Color + * + * @param string $color + * @param int $alpha + * @param string $type + * + * @return PHPExcel_Chart_GridLines + */ + + private function setGlowColor($color, $alpha, $type) + { + if (!is_null($color)) { + $this->glowProperties['color']['value'] = (string) $color; + } + if (!is_null($alpha)) { + $this->glowProperties['color']['alpha'] = $this->getTrueAlpha((int) $alpha); + } + if (!is_null($type)) { + $this->glowProperties['color']['type'] = (string) $type; + } + + return $this; + } + + /** + * Get Line Style Arrow Parameters + * + * @param string $arrow_selector + * @param string $property_selector + * + * @return string + */ + + public function getLineStyleArrowParameters($arrow_selector, $property_selector) + { + return $this->getLineStyleArrowSize($this->lineProperties['style']['arrow'][$arrow_selector]['size'], $property_selector); + } + + /** + * Set Shadow Properties + * + * @param int $sh_presets + * @param string $sh_color_value + * @param string $sh_color_type + * @param int $sh_color_alpha + * @param string $sh_blur + * @param int $sh_angle + * @param float $sh_distance + * + */ + + public function setShadowProperties($sh_presets, $sh_color_value = null, $sh_color_type = null, $sh_color_alpha = null, $sh_blur = null, $sh_angle = null, $sh_distance = null) + { + $this->activateObject() + ->setShadowPresetsProperties((int) $sh_presets) + ->setShadowColor( + is_null($sh_color_value) ? $this->shadowProperties['color']['value'] : $sh_color_value, + is_null($sh_color_alpha) ? (int) $this->shadowProperties['color']['alpha'] : $this->getTrueAlpha($sh_color_alpha), + is_null($sh_color_type) ? $this->shadowProperties['color']['type'] : $sh_color_type + ) + ->setShadowBlur($sh_blur) + ->setShadowAngle($sh_angle) + ->setShadowDistance($sh_distance); + } + + /** + * Set Shadow Presets Properties + * + * @param int $shadow_presets + * + * @return PHPExcel_Chart_GridLines + */ + + private function setShadowPresetsProperties($shadow_presets) + { + $this->shadowProperties['presets'] = $shadow_presets; + $this->setShadowProperiesMapValues($this->getShadowPresetsMap($shadow_presets)); + + return $this; + } + + /** + * Set Shadow Properties Values + * + * @param array $properties_map + * @param * $reference + * + * @return PHPExcel_Chart_GridLines + */ + + private function setShadowProperiesMapValues(array $properties_map, &$reference = null) + { + $base_reference = $reference; + foreach ($properties_map as $property_key => $property_val) { + if (is_array($property_val)) { + if ($reference === null) { + $reference = & $this->shadowProperties[$property_key]; + } else { + $reference = & $reference[$property_key]; + } + $this->setShadowProperiesMapValues($property_val, $reference); + } else { + if ($base_reference === null) { + $this->shadowProperties[$property_key] = $property_val; + } else { + $reference[$property_key] = $property_val; + } + } + } + + return $this; + } + + /** + * Set Shadow Color + * + * @param string $color + * @param int $alpha + * @param string $type + * @return PHPExcel_Chart_GridLines + */ + private function setShadowColor($color, $alpha, $type) + { + if (!is_null($color)) { + $this->shadowProperties['color']['value'] = (string) $color; + } + if (!is_null($alpha)) { + $this->shadowProperties['color']['alpha'] = $this->getTrueAlpha((int) $alpha); + } + if (!is_null($type)) { + $this->shadowProperties['color']['type'] = (string) $type; + } + + return $this; + } + + /** + * Set Shadow Blur + * + * @param float $blur + * + * @return PHPExcel_Chart_GridLines + */ + private function setShadowBlur($blur) + { + if ($blur !== null) { + $this->shadowProperties['blur'] = (string) $this->getExcelPointsWidth($blur); + } + + return $this; + } + + /** + * Set Shadow Angle + * + * @param int $angle + * @return PHPExcel_Chart_GridLines + */ + + private function setShadowAngle($angle) + { + if ($angle !== null) { + $this->shadowProperties['direction'] = (string) $this->getExcelPointsAngle($angle); + } + + return $this; + } + + /** + * Set Shadow Distance + * + * @param float $distance + * @return PHPExcel_Chart_GridLines + */ + private function setShadowDistance($distance) + { + if ($distance !== null) { + $this->shadowProperties['distance'] = (string) $this->getExcelPointsWidth($distance); + } + + return $this; + } + + /** + * Get Shadow Property + * + * @param string $elements + * @param array $elements + * @return string + */ + public function getShadowProperty($elements) + { + return $this->getArrayElementsValue($this->shadowProperties, $elements); + } + + /** + * Set Soft Edges Size + * + * @param float $size + */ + public function setSoftEdgesSize($size) + { + if (!is_null($size)) { + $this->activateObject(); + $softEdges['size'] = (string) $this->getExcelPointsWidth($size); + } + } + + /** + * Get Soft Edges Size + * + * @return string + */ + public function getSoftEdgesSize() + { + return $this->softEdges['size']; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Layout.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Layout.php new file mode 100644 index 0000000..7fef074 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Layout.php @@ -0,0 +1,486 @@ +layoutTarget = $layout['layoutTarget']; + } + if (isset($layout['xMode'])) { + $this->xMode = $layout['xMode']; + } + if (isset($layout['yMode'])) { + $this->yMode = $layout['yMode']; + } + if (isset($layout['x'])) { + $this->xPos = (float) $layout['x']; + } + if (isset($layout['y'])) { + $this->yPos = (float) $layout['y']; + } + if (isset($layout['w'])) { + $this->width = (float) $layout['w']; + } + if (isset($layout['h'])) { + $this->height = (float) $layout['h']; + } + } + + /** + * Get Layout Target + * + * @return string + */ + public function getLayoutTarget() + { + return $this->layoutTarget; + } + + /** + * Set Layout Target + * + * @param Layout Target $value + * @return PHPExcel_Chart_Layout + */ + public function setLayoutTarget($value) + { + $this->layoutTarget = $value; + return $this; + } + + /** + * Get X-Mode + * + * @return string + */ + public function getXMode() + { + return $this->xMode; + } + + /** + * Set X-Mode + * + * @param X-Mode $value + * @return PHPExcel_Chart_Layout + */ + public function setXMode($value) + { + $this->xMode = $value; + return $this; + } + + /** + * Get Y-Mode + * + * @return string + */ + public function getYMode() + { + return $this->yMode; + } + + /** + * Set Y-Mode + * + * @param Y-Mode $value + * @return PHPExcel_Chart_Layout + */ + public function setYMode($value) + { + $this->yMode = $value; + return $this; + } + + /** + * Get X-Position + * + * @return number + */ + public function getXPosition() + { + return $this->xPos; + } + + /** + * Set X-Position + * + * @param X-Position $value + * @return PHPExcel_Chart_Layout + */ + public function setXPosition($value) + { + $this->xPos = $value; + return $this; + } + + /** + * Get Y-Position + * + * @return number + */ + public function getYPosition() + { + return $this->yPos; + } + + /** + * Set Y-Position + * + * @param Y-Position $value + * @return PHPExcel_Chart_Layout + */ + public function setYPosition($value) + { + $this->yPos = $value; + return $this; + } + + /** + * Get Width + * + * @return number + */ + public function getWidth() + { + return $this->width; + } + + /** + * Set Width + * + * @param Width $value + * @return PHPExcel_Chart_Layout + */ + public function setWidth($value) + { + $this->width = $value; + return $this; + } + + /** + * Get Height + * + * @return number + */ + public function getHeight() + { + return $this->height; + } + + /** + * Set Height + * + * @param Height $value + * @return PHPExcel_Chart_Layout + */ + public function setHeight($value) + { + $this->height = $value; + return $this; + } + + + /** + * Get show legend key + * + * @return boolean + */ + public function getShowLegendKey() + { + return $this->showLegendKey; + } + + /** + * Set show legend key + * Specifies that legend keys should be shown in data labels. + * + * @param boolean $value Show legend key + * @return PHPExcel_Chart_Layout + */ + public function setShowLegendKey($value) + { + $this->showLegendKey = $value; + return $this; + } + + /** + * Get show value + * + * @return boolean + */ + public function getShowVal() + { + return $this->showVal; + } + + /** + * Set show val + * Specifies that the value should be shown in data labels. + * + * @param boolean $value Show val + * @return PHPExcel_Chart_Layout + */ + public function setShowVal($value) + { + $this->showVal = $value; + return $this; + } + + /** + * Get show category name + * + * @return boolean + */ + public function getShowCatName() + { + return $this->showCatName; + } + + /** + * Set show cat name + * Specifies that the category name should be shown in data labels. + * + * @param boolean $value Show cat name + * @return PHPExcel_Chart_Layout + */ + public function setShowCatName($value) + { + $this->showCatName = $value; + return $this; + } + + /** + * Get show data series name + * + * @return boolean + */ + public function getShowSerName() + { + return $this->showSerName; + } + + /** + * Set show ser name + * Specifies that the series name should be shown in data labels. + * + * @param boolean $value Show series name + * @return PHPExcel_Chart_Layout + */ + public function setShowSerName($value) + { + $this->showSerName = $value; + return $this; + } + + /** + * Get show percentage + * + * @return boolean + */ + public function getShowPercent() + { + return $this->showPercent; + } + + /** + * Set show percentage + * Specifies that the percentage should be shown in data labels. + * + * @param boolean $value Show percentage + * @return PHPExcel_Chart_Layout + */ + public function setShowPercent($value) + { + $this->showPercent = $value; + return $this; + } + + /** + * Get show bubble size + * + * @return boolean + */ + public function getShowBubbleSize() + { + return $this->showBubbleSize; + } + + /** + * Set show bubble size + * Specifies that the bubble size should be shown in data labels. + * + * @param boolean $value Show bubble size + * @return PHPExcel_Chart_Layout + */ + public function setShowBubbleSize($value) + { + $this->showBubbleSize = $value; + return $this; + } + + /** + * Get show leader lines + * + * @return boolean + */ + public function getShowLeaderLines() + { + return $this->showLeaderLines; + } + + /** + * Set show leader lines + * Specifies that leader lines should be shown in data labels. + * + * @param boolean $value Show leader lines + * @return PHPExcel_Chart_Layout + */ + public function setShowLeaderLines($value) + { + $this->showLeaderLines = $value; + return $this; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Legend.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Legend.php new file mode 100644 index 0000000..e850eb5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Legend.php @@ -0,0 +1,170 @@ + self::POSITION_BOTTOM, + self::xlLegendPositionCorner => self::POSITION_TOPRIGHT, + self::xlLegendPositionCustom => '??', + self::xlLegendPositionLeft => self::POSITION_LEFT, + self::xlLegendPositionRight => self::POSITION_RIGHT, + self::xlLegendPositionTop => self::POSITION_TOP + ); + + /** + * Legend position + * + * @var string + */ + private $position = self::POSITION_RIGHT; + + /** + * Allow overlay of other elements? + * + * @var boolean + */ + private $overlay = true; + + /** + * Legend Layout + * + * @var PHPExcel_Chart_Layout + */ + private $layout = null; + + + /** + * Create a new PHPExcel_Chart_Legend + */ + public function __construct($position = self::POSITION_RIGHT, PHPExcel_Chart_Layout $layout = null, $overlay = false) + { + $this->setPosition($position); + $this->layout = $layout; + $this->setOverlay($overlay); + } + + /** + * Get legend position as an excel string value + * + * @return string + */ + public function getPosition() + { + return $this->position; + } + + /** + * Get legend position using an excel string value + * + * @param string $position + */ + public function setPosition($position = self::POSITION_RIGHT) + { + if (!in_array($position, self::$positionXLref)) { + return false; + } + + $this->position = $position; + return true; + } + + /** + * Get legend position as an Excel internal numeric value + * + * @return number + */ + public function getPositionXL() + { + return array_search($this->position, self::$positionXLref); + } + + /** + * Set legend position using an Excel internal numeric value + * + * @param number $positionXL + */ + public function setPositionXL($positionXL = self::xlLegendPositionRight) + { + if (!array_key_exists($positionXL, self::$positionXLref)) { + return false; + } + + $this->position = self::$positionXLref[$positionXL]; + return true; + } + + /** + * Get allow overlay of other elements? + * + * @return boolean + */ + public function getOverlay() + { + return $this->overlay; + } + + /** + * Set allow overlay of other elements? + * + * @param boolean $overlay + * @return boolean + */ + public function setOverlay($overlay = false) + { + if (!is_bool($overlay)) { + return false; + } + + $this->overlay = $overlay; + return true; + } + + /** + * Get Layout + * + * @return PHPExcel_Chart_Layout + */ + public function getLayout() + { + return $this->layout; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/PlotArea.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/PlotArea.php new file mode 100644 index 0000000..551cc51 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/PlotArea.php @@ -0,0 +1,126 @@ +layout = $layout; + $this->plotSeries = $plotSeries; + } + + /** + * Get Layout + * + * @return PHPExcel_Chart_Layout + */ + public function getLayout() + { + return $this->layout; + } + + /** + * Get Number of Plot Groups + * + * @return array of PHPExcel_Chart_DataSeries + */ + public function getPlotGroupCount() + { + return count($this->plotSeries); + } + + /** + * Get Number of Plot Series + * + * @return integer + */ + public function getPlotSeriesCount() + { + $seriesCount = 0; + foreach ($this->plotSeries as $plot) { + $seriesCount += $plot->getPlotSeriesCount(); + } + return $seriesCount; + } + + /** + * Get Plot Series + * + * @return array of PHPExcel_Chart_DataSeries + */ + public function getPlotGroup() + { + return $this->plotSeries; + } + + /** + * Get Plot Series by Index + * + * @return PHPExcel_Chart_DataSeries + */ + public function getPlotGroupByIndex($index) + { + return $this->plotSeries[$index]; + } + + /** + * Set Plot Series + * + * @param [PHPExcel_Chart_DataSeries] + * @return PHPExcel_Chart_PlotArea + */ + public function setPlotSeries($plotSeries = array()) + { + $this->plotSeries = $plotSeries; + + return $this; + } + + public function refresh(PHPExcel_Worksheet $worksheet) + { + foreach ($this->plotSeries as $plotSeries) { + $plotSeries->refresh($worksheet); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Properties.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Properties.php new file mode 100644 index 0000000..9bb6e93 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Properties.php @@ -0,0 +1,363 @@ + (string) $type, + 'value' => (string) $color, + 'alpha' => (string) $this->getTrueAlpha($alpha) + ); + } + + protected function getLineStyleArrowSize($array_selector, $array_kay_selector) + { + $sizes = array( + 1 => array('w' => 'sm', 'len' => 'sm'), + 2 => array('w' => 'sm', 'len' => 'med'), + 3 => array('w' => 'sm', 'len' => 'lg'), + 4 => array('w' => 'med', 'len' => 'sm'), + 5 => array('w' => 'med', 'len' => 'med'), + 6 => array('w' => 'med', 'len' => 'lg'), + 7 => array('w' => 'lg', 'len' => 'sm'), + 8 => array('w' => 'lg', 'len' => 'med'), + 9 => array('w' => 'lg', 'len' => 'lg') + ); + + return $sizes[$array_selector][$array_kay_selector]; + } + + protected function getShadowPresetsMap($shadow_presets_option) + { + $presets_options = array( + //OUTER + 1 => array( + 'effect' => 'outerShdw', + 'blur' => '50800', + 'distance' => '38100', + 'direction' => '2700000', + 'algn' => 'tl', + 'rotWithShape' => '0' + ), + 2 => array( + 'effect' => 'outerShdw', + 'blur' => '50800', + 'distance' => '38100', + 'direction' => '5400000', + 'algn' => 't', + 'rotWithShape' => '0' + ), + 3 => array( + 'effect' => 'outerShdw', + 'blur' => '50800', + 'distance' => '38100', + 'direction' => '8100000', + 'algn' => 'tr', + 'rotWithShape' => '0' + ), + 4 => array( + 'effect' => 'outerShdw', + 'blur' => '50800', + 'distance' => '38100', + 'algn' => 'l', + 'rotWithShape' => '0' + ), + 5 => array( + 'effect' => 'outerShdw', + 'size' => array( + 'sx' => '102000', + 'sy' => '102000' + ) + , + 'blur' => '63500', + 'distance' => '38100', + 'algn' => 'ctr', + 'rotWithShape' => '0' + ), + 6 => array( + 'effect' => 'outerShdw', + 'blur' => '50800', + 'distance' => '38100', + 'direction' => '10800000', + 'algn' => 'r', + 'rotWithShape' => '0' + ), + 7 => array( + 'effect' => 'outerShdw', + 'blur' => '50800', + 'distance' => '38100', + 'direction' => '18900000', + 'algn' => 'bl', + 'rotWithShape' => '0' + ), + 8 => array( + 'effect' => 'outerShdw', + 'blur' => '50800', + 'distance' => '38100', + 'direction' => '16200000', + 'rotWithShape' => '0' + ), + 9 => array( + 'effect' => 'outerShdw', + 'blur' => '50800', + 'distance' => '38100', + 'direction' => '13500000', + 'algn' => 'br', + 'rotWithShape' => '0' + ), + //INNER + 10 => array( + 'effect' => 'innerShdw', + 'blur' => '63500', + 'distance' => '50800', + 'direction' => '2700000', + ), + 11 => array( + 'effect' => 'innerShdw', + 'blur' => '63500', + 'distance' => '50800', + 'direction' => '5400000', + ), + 12 => array( + 'effect' => 'innerShdw', + 'blur' => '63500', + 'distance' => '50800', + 'direction' => '8100000', + ), + 13 => array( + 'effect' => 'innerShdw', + 'blur' => '63500', + 'distance' => '50800', + ), + 14 => array( + 'effect' => 'innerShdw', + 'blur' => '114300', + ), + 15 => array( + 'effect' => 'innerShdw', + 'blur' => '63500', + 'distance' => '50800', + 'direction' => '10800000', + ), + 16 => array( + 'effect' => 'innerShdw', + 'blur' => '63500', + 'distance' => '50800', + 'direction' => '18900000', + ), + 17 => array( + 'effect' => 'innerShdw', + 'blur' => '63500', + 'distance' => '50800', + 'direction' => '16200000', + ), + 18 => array( + 'effect' => 'innerShdw', + 'blur' => '63500', + 'distance' => '50800', + 'direction' => '13500000', + ), + //perspective + 19 => array( + 'effect' => 'outerShdw', + 'blur' => '152400', + 'distance' => '317500', + 'size' => array( + 'sx' => '90000', + 'sy' => '-19000', + ), + 'direction' => '5400000', + 'rotWithShape' => '0', + ), + 20 => array( + 'effect' => 'outerShdw', + 'blur' => '76200', + 'direction' => '18900000', + 'size' => array( + 'sy' => '23000', + 'kx' => '-1200000', + ), + 'algn' => 'bl', + 'rotWithShape' => '0', + ), + 21 => array( + 'effect' => 'outerShdw', + 'blur' => '76200', + 'direction' => '13500000', + 'size' => array( + 'sy' => '23000', + 'kx' => '1200000', + ), + 'algn' => 'br', + 'rotWithShape' => '0', + ), + 22 => array( + 'effect' => 'outerShdw', + 'blur' => '76200', + 'distance' => '12700', + 'direction' => '2700000', + 'size' => array( + 'sy' => '-23000', + 'kx' => '-800400', + ), + 'algn' => 'bl', + 'rotWithShape' => '0', + ), + 23 => array( + 'effect' => 'outerShdw', + 'blur' => '76200', + 'distance' => '12700', + 'direction' => '8100000', + 'size' => array( + 'sy' => '-23000', + 'kx' => '800400', + ), + 'algn' => 'br', + 'rotWithShape' => '0', + ), + ); + + return $presets_options[$shadow_presets_option]; + } + + protected function getArrayElementsValue($properties, $elements) + { + $reference = & $properties; + if (!is_array($elements)) { + return $reference[$elements]; + } else { + foreach ($elements as $keys) { + $reference = & $reference[$keys]; + } + return $reference; + } + return $this; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Renderer/PHP Charting Libraries.txt b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Renderer/PHP Charting Libraries.txt new file mode 100644 index 0000000..9334f68 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Renderer/PHP Charting Libraries.txt @@ -0,0 +1,20 @@ +ChartDirector + http://www.advsofteng.com/cdphp.html + +GraPHPite + http://graphpite.sourceforge.net/ + +JpGraph + http://www.aditus.nu/jpgraph/ + +LibChart + http://naku.dohcrew.com/libchart/pages/introduction/ + +pChart + http://pchart.sourceforge.net/ + +TeeChart + http://www.steema.com/products/teechart/overview.html + +PHPGraphLib + http://www.ebrueggeman.com/phpgraphlib \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Renderer/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Renderer/_notes/dwsync.xml new file mode 100644 index 0000000..a3c0fd8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Renderer/_notes/dwsync.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Renderer/jpgraph.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Renderer/jpgraph.php new file mode 100644 index 0000000..b3d7396 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Renderer/jpgraph.php @@ -0,0 +1,883 @@ + MARK_DIAMOND, + 'square' => MARK_SQUARE, + 'triangle' => MARK_UTRIANGLE, + 'x' => MARK_X, + 'star' => MARK_STAR, + 'dot' => MARK_FILLEDCIRCLE, + 'dash' => MARK_DTRIANGLE, + 'circle' => MARK_CIRCLE, + 'plus' => MARK_CROSS + ); + + + private $chart; + + private $graph; + + private static $plotColour = 0; + + private static $plotMark = 0; + + + private function formatPointMarker($seriesPlot, $markerID) + { + $plotMarkKeys = array_keys(self::$markSet); + if (is_null($markerID)) { + // Use default plot marker (next marker in the series) + self::$plotMark %= count(self::$markSet); + $seriesPlot->mark->SetType(self::$markSet[$plotMarkKeys[self::$plotMark++]]); + } elseif ($markerID !== 'none') { + // Use specified plot marker (if it exists) + if (isset(self::$markSet[$markerID])) { + $seriesPlot->mark->SetType(self::$markSet[$markerID]); + } else { + // If the specified plot marker doesn't exist, use default plot marker (next marker in the series) + self::$plotMark %= count(self::$markSet); + $seriesPlot->mark->SetType(self::$markSet[$plotMarkKeys[self::$plotMark++]]); + } + } else { + // Hide plot marker + $seriesPlot->mark->Hide(); + } + $seriesPlot->mark->SetColor(self::$colourSet[self::$plotColour]); + $seriesPlot->mark->SetFillColor(self::$colourSet[self::$plotColour]); + $seriesPlot->SetColor(self::$colourSet[self::$plotColour++]); + + return $seriesPlot; + } + + + private function formatDataSetLabels($groupID, $datasetLabels, $labelCount, $rotation = '') + { + $datasetLabelFormatCode = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex(0)->getFormatCode(); + if (!is_null($datasetLabelFormatCode)) { + // Retrieve any label formatting code + $datasetLabelFormatCode = stripslashes($datasetLabelFormatCode); + } + + $testCurrentIndex = 0; + foreach ($datasetLabels as $i => $datasetLabel) { + if (is_array($datasetLabel)) { + if ($rotation == 'bar') { + $datasetLabels[$i] = implode(" ", $datasetLabel); + } else { + $datasetLabel = array_reverse($datasetLabel); + $datasetLabels[$i] = implode("\n", $datasetLabel); + } + } else { + // Format labels according to any formatting code + if (!is_null($datasetLabelFormatCode)) { + $datasetLabels[$i] = PHPExcel_Style_NumberFormat::toFormattedString($datasetLabel, $datasetLabelFormatCode); + } + } + ++$testCurrentIndex; + } + + return $datasetLabels; + } + + + private function percentageSumCalculation($groupID, $seriesCount) + { + // Adjust our values to a percentage value across all series in the group + for ($i = 0; $i < $seriesCount; ++$i) { + if ($i == 0) { + $sumValues = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + } else { + $nextValues = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + foreach ($nextValues as $k => $value) { + if (isset($sumValues[$k])) { + $sumValues[$k] += $value; + } else { + $sumValues[$k] = $value; + } + } + } + } + + return $sumValues; + } + + + private function percentageAdjustValues($dataValues, $sumValues) + { + foreach ($dataValues as $k => $dataValue) { + $dataValues[$k] = $dataValue / $sumValues[$k] * 100; + } + + return $dataValues; + } + + + private function getCaption($captionElement) + { + // Read any caption + $caption = (!is_null($captionElement)) ? $captionElement->getCaption() : null; + // Test if we have a title caption to display + if (!is_null($caption)) { + // If we do, it could be a plain string or an array + if (is_array($caption)) { + // Implode an array to a plain string + $caption = implode('', $caption); + } + } + return $caption; + } + + + private function renderTitle() + { + $title = $this->getCaption($this->chart->getTitle()); + if (!is_null($title)) { + $this->graph->title->Set($title); + } + } + + + private function renderLegend() + { + $legend = $this->chart->getLegend(); + if (!is_null($legend)) { + $legendPosition = $legend->getPosition(); + $legendOverlay = $legend->getOverlay(); + switch ($legendPosition) { + case 'r': + $this->graph->legend->SetPos(0.01, 0.5, 'right', 'center'); // right + $this->graph->legend->SetColumns(1); + break; + case 'l': + $this->graph->legend->SetPos(0.01, 0.5, 'left', 'center'); // left + $this->graph->legend->SetColumns(1); + break; + case 't': + $this->graph->legend->SetPos(0.5, 0.01, 'center', 'top'); // top + break; + case 'b': + $this->graph->legend->SetPos(0.5, 0.99, 'center', 'bottom'); // bottom + break; + default: + $this->graph->legend->SetPos(0.01, 0.01, 'right', 'top'); // top-right + $this->graph->legend->SetColumns(1); + break; + } + } else { + $this->graph->legend->Hide(); + } + } + + + private function renderCartesianPlotArea($type = 'textlin') + { + $this->graph = new Graph(self::$width, self::$height); + $this->graph->SetScale($type); + + $this->renderTitle(); + + // Rotate for bar rather than column chart + $rotation = $this->chart->getPlotArea()->getPlotGroupByIndex(0)->getPlotDirection(); + $reverse = ($rotation == 'bar') ? true : false; + + $xAxisLabel = $this->chart->getXAxisLabel(); + if (!is_null($xAxisLabel)) { + $title = $this->getCaption($xAxisLabel); + if (!is_null($title)) { + $this->graph->xaxis->SetTitle($title, 'center'); + $this->graph->xaxis->title->SetMargin(35); + if ($reverse) { + $this->graph->xaxis->title->SetAngle(90); + $this->graph->xaxis->title->SetMargin(90); + } + } + } + + $yAxisLabel = $this->chart->getYAxisLabel(); + if (!is_null($yAxisLabel)) { + $title = $this->getCaption($yAxisLabel); + if (!is_null($title)) { + $this->graph->yaxis->SetTitle($title, 'center'); + if ($reverse) { + $this->graph->yaxis->title->SetAngle(0); + $this->graph->yaxis->title->SetMargin(-55); + } + } + } + } + + + private function renderPiePlotArea($doughnut = false) + { + $this->graph = new PieGraph(self::$width, self::$height); + + $this->renderTitle(); + } + + + private function renderRadarPlotArea() + { + $this->graph = new RadarGraph(self::$width, self::$height); + $this->graph->SetScale('lin'); + + $this->renderTitle(); + } + + + private function renderPlotLine($groupID, $filled = false, $combination = false, $dimensions = '2d') + { + $grouping = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotGrouping(); + + $labelCount = count($this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex(0)->getPointCount()); + if ($labelCount > 0) { + $datasetLabels = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex(0)->getDataValues(); + $datasetLabels = $this->formatDataSetLabels($groupID, $datasetLabels, $labelCount); + $this->graph->xaxis->SetTickLabels($datasetLabels); + } + + $seriesCount = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + if ($grouping == 'percentStacked') { + $sumValues = $this->percentageSumCalculation($groupID, $seriesCount); + } + + // Loop through each data series in turn + for ($i = 0; $i < $seriesCount; ++$i) { + $dataValues = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + $marker = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getPointMarker(); + + if ($grouping == 'percentStacked') { + $dataValues = $this->percentageAdjustValues($dataValues, $sumValues); + } + + // Fill in any missing values in the $dataValues array + $testCurrentIndex = 0; + foreach ($dataValues as $k => $dataValue) { + while ($k != $testCurrentIndex) { + $dataValues[$testCurrentIndex] = null; + ++$testCurrentIndex; + } + ++$testCurrentIndex; + } + + $seriesPlot = new LinePlot($dataValues); + if ($combination) { + $seriesPlot->SetBarCenter(); + } + + if ($filled) { + $seriesPlot->SetFilled(true); + $seriesPlot->SetColor('black'); + $seriesPlot->SetFillColor(self::$colourSet[self::$plotColour++]); + } else { + // Set the appropriate plot marker + $this->formatPointMarker($seriesPlot, $marker); + } + $dataLabel = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotLabelByIndex($i)->getDataValue(); + $seriesPlot->SetLegend($dataLabel); + + $seriesPlots[] = $seriesPlot; + } + + if ($grouping == 'standard') { + $groupPlot = $seriesPlots; + } else { + $groupPlot = new AccLinePlot($seriesPlots); + } + $this->graph->Add($groupPlot); + } + + + private function renderPlotBar($groupID, $dimensions = '2d') + { + $rotation = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotDirection(); + // Rotate for bar rather than column chart + if (($groupID == 0) && ($rotation == 'bar')) { + $this->graph->Set90AndMargin(); + } + $grouping = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotGrouping(); + + $labelCount = count($this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex(0)->getPointCount()); + if ($labelCount > 0) { + $datasetLabels = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex(0)->getDataValues(); + $datasetLabels = $this->formatDataSetLabels($groupID, $datasetLabels, $labelCount, $rotation); + // Rotate for bar rather than column chart + if ($rotation == 'bar') { + $datasetLabels = array_reverse($datasetLabels); + $this->graph->yaxis->SetPos('max'); + $this->graph->yaxis->SetLabelAlign('center', 'top'); + $this->graph->yaxis->SetLabelSide(SIDE_RIGHT); + } + $this->graph->xaxis->SetTickLabels($datasetLabels); + } + + + $seriesCount = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + if ($grouping == 'percentStacked') { + $sumValues = $this->percentageSumCalculation($groupID, $seriesCount); + } + + // Loop through each data series in turn + for ($j = 0; $j < $seriesCount; ++$j) { + $dataValues = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($j)->getDataValues(); + if ($grouping == 'percentStacked') { + $dataValues = $this->percentageAdjustValues($dataValues, $sumValues); + } + + // Fill in any missing values in the $dataValues array + $testCurrentIndex = 0; + foreach ($dataValues as $k => $dataValue) { + while ($k != $testCurrentIndex) { + $dataValues[$testCurrentIndex] = null; + ++$testCurrentIndex; + } + ++$testCurrentIndex; + } + + // Reverse the $dataValues order for bar rather than column chart + if ($rotation == 'bar') { + $dataValues = array_reverse($dataValues); + } + $seriesPlot = new BarPlot($dataValues); + $seriesPlot->SetColor('black'); + $seriesPlot->SetFillColor(self::$colourSet[self::$plotColour++]); + if ($dimensions == '3d') { + $seriesPlot->SetShadow(); + } + if (!$this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotLabelByIndex($j)) { + $dataLabel = ''; + } else { + $dataLabel = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotLabelByIndex($j)->getDataValue(); + } + $seriesPlot->SetLegend($dataLabel); + + $seriesPlots[] = $seriesPlot; + } + // Reverse the plot order for bar rather than column chart + if (($rotation == 'bar') && (!($grouping == 'percentStacked'))) { + $seriesPlots = array_reverse($seriesPlots); + } + + if ($grouping == 'clustered') { + $groupPlot = new GroupBarPlot($seriesPlots); + } elseif ($grouping == 'standard') { + $groupPlot = new GroupBarPlot($seriesPlots); + } else { + $groupPlot = new AccBarPlot($seriesPlots); + if ($dimensions == '3d') { + $groupPlot->SetShadow(); + } + } + + $this->graph->Add($groupPlot); + } + + + private function renderPlotScatter($groupID, $bubble) + { + $grouping = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotGrouping(); + $scatterStyle = $bubbleSize = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotStyle(); + + $seriesCount = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + + // Loop through each data series in turn + for ($i = 0; $i < $seriesCount; ++$i) { + $dataValuesY = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex($i)->getDataValues(); + $dataValuesX = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + + foreach ($dataValuesY as $k => $dataValueY) { + $dataValuesY[$k] = $k; + } + + $seriesPlot = new ScatterPlot($dataValuesX, $dataValuesY); + if ($scatterStyle == 'lineMarker') { + $seriesPlot->SetLinkPoints(); + $seriesPlot->link->SetColor(self::$colourSet[self::$plotColour]); + } elseif ($scatterStyle == 'smoothMarker') { + $spline = new Spline($dataValuesY, $dataValuesX); + list($splineDataY, $splineDataX) = $spline->Get(count($dataValuesX) * self::$width / 20); + $lplot = new LinePlot($splineDataX, $splineDataY); + $lplot->SetColor(self::$colourSet[self::$plotColour]); + + $this->graph->Add($lplot); + } + + if ($bubble) { + $this->formatPointMarker($seriesPlot, 'dot'); + $seriesPlot->mark->SetColor('black'); + $seriesPlot->mark->SetSize($bubbleSize); + } else { + $marker = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getPointMarker(); + $this->formatPointMarker($seriesPlot, $marker); + } + $dataLabel = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotLabelByIndex($i)->getDataValue(); + $seriesPlot->SetLegend($dataLabel); + + $this->graph->Add($seriesPlot); + } + } + + + private function renderPlotRadar($groupID) + { + $radarStyle = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotStyle(); + + $seriesCount = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + + // Loop through each data series in turn + for ($i = 0; $i < $seriesCount; ++$i) { + $dataValuesY = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex($i)->getDataValues(); + $dataValuesX = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + $marker = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getPointMarker(); + + $dataValues = array(); + foreach ($dataValuesY as $k => $dataValueY) { + $dataValues[$k] = implode(' ', array_reverse($dataValueY)); + } + $tmp = array_shift($dataValues); + $dataValues[] = $tmp; + $tmp = array_shift($dataValuesX); + $dataValuesX[] = $tmp; + + $this->graph->SetTitles(array_reverse($dataValues)); + + $seriesPlot = new RadarPlot(array_reverse($dataValuesX)); + + $dataLabel = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotLabelByIndex($i)->getDataValue(); + $seriesPlot->SetColor(self::$colourSet[self::$plotColour++]); + if ($radarStyle == 'filled') { + $seriesPlot->SetFillColor(self::$colourSet[self::$plotColour]); + } + $this->formatPointMarker($seriesPlot, $marker); + $seriesPlot->SetLegend($dataLabel); + + $this->graph->Add($seriesPlot); + } + } + + + private function renderPlotContour($groupID) + { + $contourStyle = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotStyle(); + + $seriesCount = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + + $dataValues = array(); + // Loop through each data series in turn + for ($i = 0; $i < $seriesCount; ++$i) { + $dataValuesY = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex($i)->getDataValues(); + $dataValuesX = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + + $dataValues[$i] = $dataValuesX; + } + $seriesPlot = new ContourPlot($dataValues); + + $this->graph->Add($seriesPlot); + } + + + private function renderPlotStock($groupID) + { + $seriesCount = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $plotOrder = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotOrder(); + + $dataValues = array(); + // Loop through each data series in turn and build the plot arrays + foreach ($plotOrder as $i => $v) { + $dataValuesX = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($v)->getDataValues(); + foreach ($dataValuesX as $j => $dataValueX) { + $dataValues[$plotOrder[$i]][$j] = $dataValueX; + } + } + if (empty($dataValues)) { + return; + } + + $dataValuesPlot = array(); + // Flatten the plot arrays to a single dimensional array to work with jpgraph + for ($j = 0; $j < count($dataValues[0]); ++$j) { + for ($i = 0; $i < $seriesCount; ++$i) { + $dataValuesPlot[] = $dataValues[$i][$j]; + } + } + + // Set the x-axis labels + $labelCount = count($this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex(0)->getPointCount()); + if ($labelCount > 0) { + $datasetLabels = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex(0)->getDataValues(); + $datasetLabels = $this->formatDataSetLabels($groupID, $datasetLabels, $labelCount); + $this->graph->xaxis->SetTickLabels($datasetLabels); + } + + $seriesPlot = new StockPlot($dataValuesPlot); + $seriesPlot->SetWidth(20); + + $this->graph->Add($seriesPlot); + } + + + private function renderAreaChart($groupCount, $dimensions = '2d') + { + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_line.php'); + + $this->renderCartesianPlotArea(); + + for ($i = 0; $i < $groupCount; ++$i) { + $this->renderPlotLine($i, true, false, $dimensions); + } + } + + + private function renderLineChart($groupCount, $dimensions = '2d') + { + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_line.php'); + + $this->renderCartesianPlotArea(); + + for ($i = 0; $i < $groupCount; ++$i) { + $this->renderPlotLine($i, false, false, $dimensions); + } + } + + + private function renderBarChart($groupCount, $dimensions = '2d') + { + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_bar.php'); + + $this->renderCartesianPlotArea(); + + for ($i = 0; $i < $groupCount; ++$i) { + $this->renderPlotBar($i, $dimensions); + } + } + + + private function renderScatterChart($groupCount) + { + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_scatter.php'); + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_regstat.php'); + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_line.php'); + + $this->renderCartesianPlotArea('linlin'); + + for ($i = 0; $i < $groupCount; ++$i) { + $this->renderPlotScatter($i, false); + } + } + + + private function renderBubbleChart($groupCount) + { + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_scatter.php'); + + $this->renderCartesianPlotArea('linlin'); + + for ($i = 0; $i < $groupCount; ++$i) { + $this->renderPlotScatter($i, true); + } + } + + + private function renderPieChart($groupCount, $dimensions = '2d', $doughnut = false, $multiplePlots = false) + { + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_pie.php'); + if ($dimensions == '3d') { + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_pie3d.php'); + } + + $this->renderPiePlotArea($doughnut); + + $iLimit = ($multiplePlots) ? $groupCount : 1; + for ($groupID = 0; $groupID < $iLimit; ++$groupID) { + $grouping = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotGrouping(); + $exploded = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotStyle(); + if ($groupID == 0) { + $labelCount = count($this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex(0)->getPointCount()); + if ($labelCount > 0) { + $datasetLabels = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex(0)->getDataValues(); + $datasetLabels = $this->formatDataSetLabels($groupID, $datasetLabels, $labelCount); + } + } + + $seriesCount = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + // For pie charts, we only display the first series: doughnut charts generally display all series + $jLimit = ($multiplePlots) ? $seriesCount : 1; + // Loop through each data series in turn + for ($j = 0; $j < $jLimit; ++$j) { + $dataValues = $this->chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($j)->getDataValues(); + + // Fill in any missing values in the $dataValues array + $testCurrentIndex = 0; + foreach ($dataValues as $k => $dataValue) { + while ($k != $testCurrentIndex) { + $dataValues[$testCurrentIndex] = null; + ++$testCurrentIndex; + } + ++$testCurrentIndex; + } + + if ($dimensions == '3d') { + $seriesPlot = new PiePlot3D($dataValues); + } else { + if ($doughnut) { + $seriesPlot = new PiePlotC($dataValues); + } else { + $seriesPlot = new PiePlot($dataValues); + } + } + + if ($multiplePlots) { + $seriesPlot->SetSize(($jLimit-$j) / ($jLimit * 4)); + } + + if ($doughnut) { + $seriesPlot->SetMidColor('white'); + } + + $seriesPlot->SetColor(self::$colourSet[self::$plotColour++]); + if (count($datasetLabels) > 0) { + $seriesPlot->SetLabels(array_fill(0, count($datasetLabels), '')); + } + if ($dimensions != '3d') { + $seriesPlot->SetGuideLines(false); + } + if ($j == 0) { + if ($exploded) { + $seriesPlot->ExplodeAll(); + } + $seriesPlot->SetLegends($datasetLabels); + } + + $this->graph->Add($seriesPlot); + } + } + } + + + private function renderRadarChart($groupCount) + { + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_radar.php'); + + $this->renderRadarPlotArea(); + + for ($groupID = 0; $groupID < $groupCount; ++$groupID) { + $this->renderPlotRadar($groupID); + } + } + + + private function renderStockChart($groupCount) + { + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_stock.php'); + + $this->renderCartesianPlotArea('intint'); + + for ($groupID = 0; $groupID < $groupCount; ++$groupID) { + $this->renderPlotStock($groupID); + } + } + + + private function renderContourChart($groupCount, $dimensions) + { + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_contour.php'); + + $this->renderCartesianPlotArea('intint'); + + for ($i = 0; $i < $groupCount; ++$i) { + $this->renderPlotContour($i); + } + } + + + private function renderCombinationChart($groupCount, $dimensions, $outputDestination) + { + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_line.php'); + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_bar.php'); + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_scatter.php'); + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_regstat.php'); + require_once(PHPExcel_Settings::getChartRendererPath().'jpgraph_line.php'); + + $this->renderCartesianPlotArea(); + + for ($i = 0; $i < $groupCount; ++$i) { + $dimensions = null; + $chartType = $this->chart->getPlotArea()->getPlotGroupByIndex($i)->getPlotType(); + switch ($chartType) { + case 'area3DChart': + $dimensions = '3d'; + // no break + case 'areaChart': + $this->renderPlotLine($i, true, true, $dimensions); + break; + case 'bar3DChart': + $dimensions = '3d'; + // no break + case 'barChart': + $this->renderPlotBar($i, $dimensions); + break; + case 'line3DChart': + $dimensions = '3d'; + // no break + case 'lineChart': + $this->renderPlotLine($i, false, true, $dimensions); + break; + case 'scatterChart': + $this->renderPlotScatter($i, false); + break; + case 'bubbleChart': + $this->renderPlotScatter($i, true); + break; + default: + $this->graph = null; + return false; + } + } + + $this->renderLegend(); + + $this->graph->Stroke($outputDestination); + return true; + } + + + public function render($outputDestination) + { + self::$plotColour = 0; + + $groupCount = $this->chart->getPlotArea()->getPlotGroupCount(); + + $dimensions = null; + if ($groupCount == 1) { + $chartType = $this->chart->getPlotArea()->getPlotGroupByIndex(0)->getPlotType(); + } else { + $chartTypes = array(); + for ($i = 0; $i < $groupCount; ++$i) { + $chartTypes[] = $this->chart->getPlotArea()->getPlotGroupByIndex($i)->getPlotType(); + } + $chartTypes = array_unique($chartTypes); + if (count($chartTypes) == 1) { + $chartType = array_pop($chartTypes); + } elseif (count($chartTypes) == 0) { + echo 'Chart is not yet implemented
'; + return false; + } else { + return $this->renderCombinationChart($groupCount, $dimensions, $outputDestination); + } + } + + switch ($chartType) { + case 'area3DChart': + $dimensions = '3d'; + // no break + case 'areaChart': + $this->renderAreaChart($groupCount, $dimensions); + break; + case 'bar3DChart': + $dimensions = '3d'; + // no break + case 'barChart': + $this->renderBarChart($groupCount, $dimensions); + break; + case 'line3DChart': + $dimensions = '3d'; + // no break + case 'lineChart': + $this->renderLineChart($groupCount, $dimensions); + break; + case 'pie3DChart': + $dimensions = '3d'; + // no break + case 'pieChart': + $this->renderPieChart($groupCount, $dimensions, false, false); + break; + case 'doughnut3DChart': + $dimensions = '3d'; + // no break + case 'doughnutChart': + $this->renderPieChart($groupCount, $dimensions, true, true); + break; + case 'scatterChart': + $this->renderScatterChart($groupCount); + break; + case 'bubbleChart': + $this->renderBubbleChart($groupCount); + break; + case 'radarChart': + $this->renderRadarChart($groupCount); + break; + case 'surface3DChart': + $dimensions = '3d'; + // no break + case 'surfaceChart': + $this->renderContourChart($groupCount, $dimensions); + break; + case 'stockChart': + $this->renderStockChart($groupCount, $dimensions); + break; + default: + echo $chartType.' is not yet implemented
'; + return false; + } + $this->renderLegend(); + + $this->graph->Stroke($outputDestination); + return true; + } + + + /** + * Create a new PHPExcel_Chart_Renderer_jpgraph + */ + public function __construct(PHPExcel_Chart $chart) + { + $this->graph = null; + $this->chart = $chart; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Title.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Title.php new file mode 100644 index 0000000..d8dc14f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/Title.php @@ -0,0 +1,86 @@ +caption = $caption; + $this->layout = $layout; + } + + /** + * Get caption + * + * @return string + */ + public function getCaption() + { + return $this->caption; + } + + /** + * Set caption + * + * @param string $caption + * @return PHPExcel_Chart_Title + */ + public function setCaption($caption = null) + { + $this->caption = $caption; + + return $this; + } + + /** + * Get Layout + * + * @return PHPExcel_Chart_Layout + */ + public function getLayout() + { + return $this->layout; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/_notes/dwsync.xml new file mode 100644 index 0000000..d3ba22b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Chart/_notes/dwsync.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Comment.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Comment.php new file mode 100644 index 0000000..d55363f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Comment.php @@ -0,0 +1,338 @@ +author = 'Author'; + $this->text = new PHPExcel_RichText(); + $this->fillColor = new PHPExcel_Style_Color('FFFFFFE1'); + $this->alignment = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL; + } + + /** + * Get Author + * + * @return string + */ + public function getAuthor() + { + return $this->author; + } + + /** + * Set Author + * + * @param string $pValue + * @return PHPExcel_Comment + */ + public function setAuthor($pValue = '') + { + $this->author = $pValue; + return $this; + } + + /** + * Get Rich text comment + * + * @return PHPExcel_RichText + */ + public function getText() + { + return $this->text; + } + + /** + * Set Rich text comment + * + * @param PHPExcel_RichText $pValue + * @return PHPExcel_Comment + */ + public function setText(PHPExcel_RichText $pValue) + { + $this->text = $pValue; + return $this; + } + + /** + * Get comment width (CSS style, i.e. XXpx or YYpt) + * + * @return string + */ + public function getWidth() + { + return $this->width; + } + + /** + * Set comment width (CSS style, i.e. XXpx or YYpt) + * + * @param string $value + * @return PHPExcel_Comment + */ + public function setWidth($value = '96pt') + { + $this->width = $value; + return $this; + } + + /** + * Get comment height (CSS style, i.e. XXpx or YYpt) + * + * @return string + */ + public function getHeight() + { + return $this->height; + } + + /** + * Set comment height (CSS style, i.e. XXpx or YYpt) + * + * @param string $value + * @return PHPExcel_Comment + */ + public function setHeight($value = '55.5pt') + { + $this->height = $value; + return $this; + } + + /** + * Get left margin (CSS style, i.e. XXpx or YYpt) + * + * @return string + */ + public function getMarginLeft() + { + return $this->marginLeft; + } + + /** + * Set left margin (CSS style, i.e. XXpx or YYpt) + * + * @param string $value + * @return PHPExcel_Comment + */ + public function setMarginLeft($value = '59.25pt') + { + $this->marginLeft = $value; + return $this; + } + + /** + * Get top margin (CSS style, i.e. XXpx or YYpt) + * + * @return string + */ + public function getMarginTop() + { + return $this->marginTop; + } + + /** + * Set top margin (CSS style, i.e. XXpx or YYpt) + * + * @param string $value + * @return PHPExcel_Comment + */ + public function setMarginTop($value = '1.5pt') + { + $this->marginTop = $value; + return $this; + } + + /** + * Is the comment visible by default? + * + * @return boolean + */ + public function getVisible() + { + return $this->visible; + } + + /** + * Set comment default visibility + * + * @param boolean $value + * @return PHPExcel_Comment + */ + public function setVisible($value = false) + { + $this->visible = $value; + return $this; + } + + /** + * Get fill color + * + * @return PHPExcel_Style_Color + */ + public function getFillColor() + { + return $this->fillColor; + } + + /** + * Set Alignment + * + * @param string $pValue + * @return PHPExcel_Comment + */ + public function setAlignment($pValue = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL) + { + $this->alignment = $pValue; + return $this; + } + + /** + * Get Alignment + * + * @return string + */ + public function getAlignment() + { + return $this->alignment; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + return md5( + $this->author . + $this->text->getHashCode() . + $this->width . + $this->height . + $this->marginLeft . + $this->marginTop . + ($this->visible ? 1 : 0) . + $this->fillColor->getHashCode() . + $this->alignment . + __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } + + /** + * Convert to string + * + * @return string + */ + public function __toString() + { + return $this->text->getPlainText(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/DocumentProperties.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/DocumentProperties.php new file mode 100644 index 0000000..2395ba9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/DocumentProperties.php @@ -0,0 +1,611 @@ +lastModifiedBy = $this->creator; + $this->created = time(); + $this->modified = time(); + } + + /** + * Get Creator + * + * @return string + */ + public function getCreator() + { + return $this->creator; + } + + /** + * Set Creator + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setCreator($pValue = '') + { + $this->creator = $pValue; + return $this; + } + + /** + * Get Last Modified By + * + * @return string + */ + public function getLastModifiedBy() + { + return $this->lastModifiedBy; + } + + /** + * Set Last Modified By + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setLastModifiedBy($pValue = '') + { + $this->lastModifiedBy = $pValue; + return $this; + } + + /** + * Get Created + * + * @return datetime + */ + public function getCreated() + { + return $this->created; + } + + /** + * Set Created + * + * @param datetime $pValue + * @return PHPExcel_DocumentProperties + */ + public function setCreated($pValue = null) + { + if ($pValue === null) { + $pValue = time(); + } elseif (is_string($pValue)) { + if (is_numeric($pValue)) { + $pValue = intval($pValue); + } else { + $pValue = strtotime($pValue); + } + } + + $this->created = $pValue; + return $this; + } + + /** + * Get Modified + * + * @return datetime + */ + public function getModified() + { + return $this->modified; + } + + /** + * Set Modified + * + * @param datetime $pValue + * @return PHPExcel_DocumentProperties + */ + public function setModified($pValue = null) + { + if ($pValue === null) { + $pValue = time(); + } elseif (is_string($pValue)) { + if (is_numeric($pValue)) { + $pValue = intval($pValue); + } else { + $pValue = strtotime($pValue); + } + } + + $this->modified = $pValue; + return $this; + } + + /** + * Get Title + * + * @return string + */ + public function getTitle() + { + return $this->title; + } + + /** + * Set Title + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setTitle($pValue = '') + { + $this->title = $pValue; + return $this; + } + + /** + * Get Description + * + * @return string + */ + public function getDescription() + { + return $this->description; + } + + /** + * Set Description + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setDescription($pValue = '') + { + $this->description = $pValue; + return $this; + } + + /** + * Get Subject + * + * @return string + */ + public function getSubject() + { + return $this->subject; + } + + /** + * Set Subject + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setSubject($pValue = '') + { + $this->subject = $pValue; + return $this; + } + + /** + * Get Keywords + * + * @return string + */ + public function getKeywords() + { + return $this->keywords; + } + + /** + * Set Keywords + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setKeywords($pValue = '') + { + $this->keywords = $pValue; + return $this; + } + + /** + * Get Category + * + * @return string + */ + public function getCategory() + { + return $this->category; + } + + /** + * Set Category + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setCategory($pValue = '') + { + $this->category = $pValue; + return $this; + } + + /** + * Get Company + * + * @return string + */ + public function getCompany() + { + return $this->company; + } + + /** + * Set Company + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setCompany($pValue = '') + { + $this->company = $pValue; + return $this; + } + + /** + * Get Manager + * + * @return string + */ + public function getManager() + { + return $this->manager; + } + + /** + * Set Manager + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setManager($pValue = '') + { + $this->manager = $pValue; + return $this; + } + + /** + * Get a List of Custom Property Names + * + * @return array of string + */ + public function getCustomProperties() + { + return array_keys($this->customProperties); + } + + /** + * Check if a Custom Property is defined + * + * @param string $propertyName + * @return boolean + */ + public function isCustomPropertySet($propertyName) + { + return isset($this->customProperties[$propertyName]); + } + + /** + * Get a Custom Property Value + * + * @param string $propertyName + * @return string + */ + public function getCustomPropertyValue($propertyName) + { + if (isset($this->customProperties[$propertyName])) { + return $this->customProperties[$propertyName]['value']; + } + + } + + /** + * Get a Custom Property Type + * + * @param string $propertyName + * @return string + */ + public function getCustomPropertyType($propertyName) + { + if (isset($this->customProperties[$propertyName])) { + return $this->customProperties[$propertyName]['type']; + } + + } + + /** + * Set a Custom Property + * + * @param string $propertyName + * @param mixed $propertyValue + * @param string $propertyType + * 'i' : Integer + * 'f' : Floating Point + * 's' : String + * 'd' : Date/Time + * 'b' : Boolean + * @return PHPExcel_DocumentProperties + */ + public function setCustomProperty($propertyName, $propertyValue = '', $propertyType = null) + { + if (($propertyType === null) || (!in_array($propertyType, array(self::PROPERTY_TYPE_INTEGER, + self::PROPERTY_TYPE_FLOAT, + self::PROPERTY_TYPE_STRING, + self::PROPERTY_TYPE_DATE, + self::PROPERTY_TYPE_BOOLEAN)))) { + if ($propertyValue === null) { + $propertyType = self::PROPERTY_TYPE_STRING; + } elseif (is_float($propertyValue)) { + $propertyType = self::PROPERTY_TYPE_FLOAT; + } elseif (is_int($propertyValue)) { + $propertyType = self::PROPERTY_TYPE_INTEGER; + } elseif (is_bool($propertyValue)) { + $propertyType = self::PROPERTY_TYPE_BOOLEAN; + } else { + $propertyType = self::PROPERTY_TYPE_STRING; + } + } + + $this->customProperties[$propertyName] = array( + 'value' => $propertyValue, + 'type' => $propertyType + ); + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } + + public static function convertProperty($propertyValue, $propertyType) + { + switch ($propertyType) { + case 'empty': // Empty + return ''; + break; + case 'null': // Null + return null; + break; + case 'i1': // 1-Byte Signed Integer + case 'i2': // 2-Byte Signed Integer + case 'i4': // 4-Byte Signed Integer + case 'i8': // 8-Byte Signed Integer + case 'int': // Integer + return (int) $propertyValue; + break; + case 'ui1': // 1-Byte Unsigned Integer + case 'ui2': // 2-Byte Unsigned Integer + case 'ui4': // 4-Byte Unsigned Integer + case 'ui8': // 8-Byte Unsigned Integer + case 'uint': // Unsigned Integer + return abs((int) $propertyValue); + break; + case 'r4': // 4-Byte Real Number + case 'r8': // 8-Byte Real Number + case 'decimal': // Decimal + return (float) $propertyValue; + break; + case 'lpstr': // LPSTR + case 'lpwstr': // LPWSTR + case 'bstr': // Basic String + return $propertyValue; + break; + case 'date': // Date and Time + case 'filetime': // File Time + return strtotime($propertyValue); + break; + case 'bool': // Boolean + return ($propertyValue == 'true') ? true : false; + break; + case 'cy': // Currency + case 'error': // Error Status Code + case 'vector': // Vector + case 'array': // Array + case 'blob': // Binary Blob + case 'oblob': // Binary Blob Object + case 'stream': // Binary Stream + case 'ostream': // Binary Stream Object + case 'storage': // Binary Storage + case 'ostorage': // Binary Storage Object + case 'vstream': // Binary Versioned Stream + case 'clsid': // Class ID + case 'cf': // Clipboard Data + return $propertyValue; + break; + } + return $propertyValue; + } + + public static function convertPropertyType($propertyType) + { + switch ($propertyType) { + case 'i1': // 1-Byte Signed Integer + case 'i2': // 2-Byte Signed Integer + case 'i4': // 4-Byte Signed Integer + case 'i8': // 8-Byte Signed Integer + case 'int': // Integer + case 'ui1': // 1-Byte Unsigned Integer + case 'ui2': // 2-Byte Unsigned Integer + case 'ui4': // 4-Byte Unsigned Integer + case 'ui8': // 8-Byte Unsigned Integer + case 'uint': // Unsigned Integer + return self::PROPERTY_TYPE_INTEGER; + break; + case 'r4': // 4-Byte Real Number + case 'r8': // 8-Byte Real Number + case 'decimal': // Decimal + return self::PROPERTY_TYPE_FLOAT; + break; + case 'empty': // Empty + case 'null': // Null + case 'lpstr': // LPSTR + case 'lpwstr': // LPWSTR + case 'bstr': // Basic String + return self::PROPERTY_TYPE_STRING; + break; + case 'date': // Date and Time + case 'filetime': // File Time + return self::PROPERTY_TYPE_DATE; + break; + case 'bool': // Boolean + return self::PROPERTY_TYPE_BOOLEAN; + break; + case 'cy': // Currency + case 'error': // Error Status Code + case 'vector': // Vector + case 'array': // Array + case 'blob': // Binary Blob + case 'oblob': // Binary Blob Object + case 'stream': // Binary Stream + case 'ostream': // Binary Stream Object + case 'storage': // Binary Storage + case 'ostorage': // Binary Storage Object + case 'vstream': // Binary Versioned Stream + case 'clsid': // Class ID + case 'cf': // Clipboard Data + return self::PROPERTY_TYPE_UNKNOWN; + break; + } + return self::PROPERTY_TYPE_UNKNOWN; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/DocumentSecurity.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/DocumentSecurity.php new file mode 100644 index 0000000..ecea0da --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/DocumentSecurity.php @@ -0,0 +1,222 @@ +lockRevision = false; + $this->lockStructure = false; + $this->lockWindows = false; + $this->revisionsPassword = ''; + $this->workbookPassword = ''; + } + + /** + * Is some sort of document security enabled? + * + * @return boolean + */ + public function isSecurityEnabled() + { + return $this->lockRevision || + $this->lockStructure || + $this->lockWindows; + } + + /** + * Get LockRevision + * + * @return boolean + */ + public function getLockRevision() + { + return $this->lockRevision; + } + + /** + * Set LockRevision + * + * @param boolean $pValue + * @return PHPExcel_DocumentSecurity + */ + public function setLockRevision($pValue = false) + { + $this->lockRevision = $pValue; + return $this; + } + + /** + * Get LockStructure + * + * @return boolean + */ + public function getLockStructure() + { + return $this->lockStructure; + } + + /** + * Set LockStructure + * + * @param boolean $pValue + * @return PHPExcel_DocumentSecurity + */ + public function setLockStructure($pValue = false) + { + $this->lockStructure = $pValue; + return $this; + } + + /** + * Get LockWindows + * + * @return boolean + */ + public function getLockWindows() + { + return $this->lockWindows; + } + + /** + * Set LockWindows + * + * @param boolean $pValue + * @return PHPExcel_DocumentSecurity + */ + public function setLockWindows($pValue = false) + { + $this->lockWindows = $pValue; + return $this; + } + + /** + * Get RevisionsPassword (hashed) + * + * @return string + */ + public function getRevisionsPassword() + { + return $this->revisionsPassword; + } + + /** + * Set RevisionsPassword + * + * @param string $pValue + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @return PHPExcel_DocumentSecurity + */ + public function setRevisionsPassword($pValue = '', $pAlreadyHashed = false) + { + if (!$pAlreadyHashed) { + $pValue = PHPExcel_Shared_PasswordHasher::hashPassword($pValue); + } + $this->revisionsPassword = $pValue; + return $this; + } + + /** + * Get WorkbookPassword (hashed) + * + * @return string + */ + public function getWorkbookPassword() + { + return $this->workbookPassword; + } + + /** + * Set WorkbookPassword + * + * @param string $pValue + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @return PHPExcel_DocumentSecurity + */ + public function setWorkbookPassword($pValue = '', $pAlreadyHashed = false) + { + if (!$pAlreadyHashed) { + $pValue = PHPExcel_Shared_PasswordHasher::hashPassword($pValue); + } + $this->workbookPassword = $pValue; + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Exception.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Exception.php new file mode 100644 index 0000000..b27750e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Exception.php @@ -0,0 +1,54 @@ +line = $line; + $e->file = $file; + throw $e; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/HashTable.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/HashTable.php new file mode 100644 index 0000000..c21d18c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/HashTable.php @@ -0,0 +1,204 @@ +addFromSource($pSource); + } + } + + /** + * Add HashTable items from source + * + * @param PHPExcel_IComparable[] $pSource Source array to create HashTable from + * @throws PHPExcel_Exception + */ + public function addFromSource($pSource = null) + { + // Check if an array was passed + if ($pSource == null) { + return; + } elseif (!is_array($pSource)) { + throw new PHPExcel_Exception('Invalid array parameter passed.'); + } + + foreach ($pSource as $item) { + $this->add($item); + } + } + + /** + * Add HashTable item + * + * @param PHPExcel_IComparable $pSource Item to add + * @throws PHPExcel_Exception + */ + public function add(PHPExcel_IComparable $pSource = null) + { + $hash = $pSource->getHashCode(); + if (!isset($this->items[$hash])) { + $this->items[$hash] = $pSource; + $this->keyMap[count($this->items) - 1] = $hash; + } + } + + /** + * Remove HashTable item + * + * @param PHPExcel_IComparable $pSource Item to remove + * @throws PHPExcel_Exception + */ + public function remove(PHPExcel_IComparable $pSource = null) + { + $hash = $pSource->getHashCode(); + if (isset($this->items[$hash])) { + unset($this->items[$hash]); + + $deleteKey = -1; + foreach ($this->keyMap as $key => $value) { + if ($deleteKey >= 0) { + $this->keyMap[$key - 1] = $value; + } + + if ($value == $hash) { + $deleteKey = $key; + } + } + unset($this->keyMap[count($this->keyMap) - 1]); + } + } + + /** + * Clear HashTable + * + */ + public function clear() + { + $this->items = array(); + $this->keyMap = array(); + } + + /** + * Count + * + * @return int + */ + public function count() + { + return count($this->items); + } + + /** + * Get index for hash code + * + * @param string $pHashCode + * @return int Index + */ + public function getIndexForHashCode($pHashCode = '') + { + return array_search($pHashCode, $this->keyMap); + } + + /** + * Get by index + * + * @param int $pIndex + * @return PHPExcel_IComparable + * + */ + public function getByIndex($pIndex = 0) + { + if (isset($this->keyMap[$pIndex])) { + return $this->getByHashCode($this->keyMap[$pIndex]); + } + + return null; + } + + /** + * Get by hashcode + * + * @param string $pHashCode + * @return PHPExcel_IComparable + * + */ + public function getByHashCode($pHashCode = '') + { + if (isset($this->items[$pHashCode])) { + return $this->items[$pHashCode]; + } + + return null; + } + + /** + * HashTable to array + * + * @return PHPExcel_IComparable[] + */ + public function toArray() + { + return $this->items; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Helper/HTML.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Helper/HTML.php new file mode 100644 index 0000000..a78f11c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Helper/HTML.php @@ -0,0 +1,808 @@ + 'f0f8ff', + 'antiquewhite' => 'faebd7', + 'antiquewhite1' => 'ffefdb', + 'antiquewhite2' => 'eedfcc', + 'antiquewhite3' => 'cdc0b0', + 'antiquewhite4' => '8b8378', + 'aqua' => '00ffff', + 'aquamarine1' => '7fffd4', + 'aquamarine2' => '76eec6', + 'aquamarine4' => '458b74', + 'azure1' => 'f0ffff', + 'azure2' => 'e0eeee', + 'azure3' => 'c1cdcd', + 'azure4' => '838b8b', + 'beige' => 'f5f5dc', + 'bisque1' => 'ffe4c4', + 'bisque2' => 'eed5b7', + 'bisque3' => 'cdb79e', + 'bisque4' => '8b7d6b', + 'black' => '000000', + 'blanchedalmond' => 'ffebcd', + 'blue' => '0000ff', + 'blue1' => '0000ff', + 'blue2' => '0000ee', + 'blue4' => '00008b', + 'blueviolet' => '8a2be2', + 'brown' => 'a52a2a', + 'brown1' => 'ff4040', + 'brown2' => 'ee3b3b', + 'brown3' => 'cd3333', + 'brown4' => '8b2323', + 'burlywood' => 'deb887', + 'burlywood1' => 'ffd39b', + 'burlywood2' => 'eec591', + 'burlywood3' => 'cdaa7d', + 'burlywood4' => '8b7355', + 'cadetblue' => '5f9ea0', + 'cadetblue1' => '98f5ff', + 'cadetblue2' => '8ee5ee', + 'cadetblue3' => '7ac5cd', + 'cadetblue4' => '53868b', + 'chartreuse1' => '7fff00', + 'chartreuse2' => '76ee00', + 'chartreuse3' => '66cd00', + 'chartreuse4' => '458b00', + 'chocolate' => 'd2691e', + 'chocolate1' => 'ff7f24', + 'chocolate2' => 'ee7621', + 'chocolate3' => 'cd661d', + 'coral' => 'ff7f50', + 'coral1' => 'ff7256', + 'coral2' => 'ee6a50', + 'coral3' => 'cd5b45', + 'coral4' => '8b3e2f', + 'cornflowerblue' => '6495ed', + 'cornsilk1' => 'fff8dc', + 'cornsilk2' => 'eee8cd', + 'cornsilk3' => 'cdc8b1', + 'cornsilk4' => '8b8878', + 'cyan1' => '00ffff', + 'cyan2' => '00eeee', + 'cyan3' => '00cdcd', + 'cyan4' => '008b8b', + 'darkgoldenrod' => 'b8860b', + 'darkgoldenrod1' => 'ffb90f', + 'darkgoldenrod2' => 'eead0e', + 'darkgoldenrod3' => 'cd950c', + 'darkgoldenrod4' => '8b6508', + 'darkgreen' => '006400', + 'darkkhaki' => 'bdb76b', + 'darkolivegreen' => '556b2f', + 'darkolivegreen1' => 'caff70', + 'darkolivegreen2' => 'bcee68', + 'darkolivegreen3' => 'a2cd5a', + 'darkolivegreen4' => '6e8b3d', + 'darkorange' => 'ff8c00', + 'darkorange1' => 'ff7f00', + 'darkorange2' => 'ee7600', + 'darkorange3' => 'cd6600', + 'darkorange4' => '8b4500', + 'darkorchid' => '9932cc', + 'darkorchid1' => 'bf3eff', + 'darkorchid2' => 'b23aee', + 'darkorchid3' => '9a32cd', + 'darkorchid4' => '68228b', + 'darksalmon' => 'e9967a', + 'darkseagreen' => '8fbc8f', + 'darkseagreen1' => 'c1ffc1', + 'darkseagreen2' => 'b4eeb4', + 'darkseagreen3' => '9bcd9b', + 'darkseagreen4' => '698b69', + 'darkslateblue' => '483d8b', + 'darkslategray' => '2f4f4f', + 'darkslategray1' => '97ffff', + 'darkslategray2' => '8deeee', + 'darkslategray3' => '79cdcd', + 'darkslategray4' => '528b8b', + 'darkturquoise' => '00ced1', + 'darkviolet' => '9400d3', + 'deeppink1' => 'ff1493', + 'deeppink2' => 'ee1289', + 'deeppink3' => 'cd1076', + 'deeppink4' => '8b0a50', + 'deepskyblue1' => '00bfff', + 'deepskyblue2' => '00b2ee', + 'deepskyblue3' => '009acd', + 'deepskyblue4' => '00688b', + 'dimgray' => '696969', + 'dodgerblue1' => '1e90ff', + 'dodgerblue2' => '1c86ee', + 'dodgerblue3' => '1874cd', + 'dodgerblue4' => '104e8b', + 'firebrick' => 'b22222', + 'firebrick1' => 'ff3030', + 'firebrick2' => 'ee2c2c', + 'firebrick3' => 'cd2626', + 'firebrick4' => '8b1a1a', + 'floralwhite' => 'fffaf0', + 'forestgreen' => '228b22', + 'fuchsia' => 'ff00ff', + 'gainsboro' => 'dcdcdc', + 'ghostwhite' => 'f8f8ff', + 'gold1' => 'ffd700', + 'gold2' => 'eec900', + 'gold3' => 'cdad00', + 'gold4' => '8b7500', + 'goldenrod' => 'daa520', + 'goldenrod1' => 'ffc125', + 'goldenrod2' => 'eeb422', + 'goldenrod3' => 'cd9b1d', + 'goldenrod4' => '8b6914', + 'gray' => 'bebebe', + 'gray1' => '030303', + 'gray10' => '1a1a1a', + 'gray11' => '1c1c1c', + 'gray12' => '1f1f1f', + 'gray13' => '212121', + 'gray14' => '242424', + 'gray15' => '262626', + 'gray16' => '292929', + 'gray17' => '2b2b2b', + 'gray18' => '2e2e2e', + 'gray19' => '303030', + 'gray2' => '050505', + 'gray20' => '333333', + 'gray21' => '363636', + 'gray22' => '383838', + 'gray23' => '3b3b3b', + 'gray24' => '3d3d3d', + 'gray25' => '404040', + 'gray26' => '424242', + 'gray27' => '454545', + 'gray28' => '474747', + 'gray29' => '4a4a4a', + 'gray3' => '080808', + 'gray30' => '4d4d4d', + 'gray31' => '4f4f4f', + 'gray32' => '525252', + 'gray33' => '545454', + 'gray34' => '575757', + 'gray35' => '595959', + 'gray36' => '5c5c5c', + 'gray37' => '5e5e5e', + 'gray38' => '616161', + 'gray39' => '636363', + 'gray4' => '0a0a0a', + 'gray40' => '666666', + 'gray41' => '696969', + 'gray42' => '6b6b6b', + 'gray43' => '6e6e6e', + 'gray44' => '707070', + 'gray45' => '737373', + 'gray46' => '757575', + 'gray47' => '787878', + 'gray48' => '7a7a7a', + 'gray49' => '7d7d7d', + 'gray5' => '0d0d0d', + 'gray50' => '7f7f7f', + 'gray51' => '828282', + 'gray52' => '858585', + 'gray53' => '878787', + 'gray54' => '8a8a8a', + 'gray55' => '8c8c8c', + 'gray56' => '8f8f8f', + 'gray57' => '919191', + 'gray58' => '949494', + 'gray59' => '969696', + 'gray6' => '0f0f0f', + 'gray60' => '999999', + 'gray61' => '9c9c9c', + 'gray62' => '9e9e9e', + 'gray63' => 'a1a1a1', + 'gray64' => 'a3a3a3', + 'gray65' => 'a6a6a6', + 'gray66' => 'a8a8a8', + 'gray67' => 'ababab', + 'gray68' => 'adadad', + 'gray69' => 'b0b0b0', + 'gray7' => '121212', + 'gray70' => 'b3b3b3', + 'gray71' => 'b5b5b5', + 'gray72' => 'b8b8b8', + 'gray73' => 'bababa', + 'gray74' => 'bdbdbd', + 'gray75' => 'bfbfbf', + 'gray76' => 'c2c2c2', + 'gray77' => 'c4c4c4', + 'gray78' => 'c7c7c7', + 'gray79' => 'c9c9c9', + 'gray8' => '141414', + 'gray80' => 'cccccc', + 'gray81' => 'cfcfcf', + 'gray82' => 'd1d1d1', + 'gray83' => 'd4d4d4', + 'gray84' => 'd6d6d6', + 'gray85' => 'd9d9d9', + 'gray86' => 'dbdbdb', + 'gray87' => 'dedede', + 'gray88' => 'e0e0e0', + 'gray89' => 'e3e3e3', + 'gray9' => '171717', + 'gray90' => 'e5e5e5', + 'gray91' => 'e8e8e8', + 'gray92' => 'ebebeb', + 'gray93' => 'ededed', + 'gray94' => 'f0f0f0', + 'gray95' => 'f2f2f2', + 'gray97' => 'f7f7f7', + 'gray98' => 'fafafa', + 'gray99' => 'fcfcfc', + 'green' => '00ff00', + 'green1' => '00ff00', + 'green2' => '00ee00', + 'green3' => '00cd00', + 'green4' => '008b00', + 'greenyellow' => 'adff2f', + 'honeydew1' => 'f0fff0', + 'honeydew2' => 'e0eee0', + 'honeydew3' => 'c1cdc1', + 'honeydew4' => '838b83', + 'hotpink' => 'ff69b4', + 'hotpink1' => 'ff6eb4', + 'hotpink2' => 'ee6aa7', + 'hotpink3' => 'cd6090', + 'hotpink4' => '8b3a62', + 'indianred' => 'cd5c5c', + 'indianred1' => 'ff6a6a', + 'indianred2' => 'ee6363', + 'indianred3' => 'cd5555', + 'indianred4' => '8b3a3a', + 'ivory1' => 'fffff0', + 'ivory2' => 'eeeee0', + 'ivory3' => 'cdcdc1', + 'ivory4' => '8b8b83', + 'khaki' => 'f0e68c', + 'khaki1' => 'fff68f', + 'khaki2' => 'eee685', + 'khaki3' => 'cdc673', + 'khaki4' => '8b864e', + 'lavender' => 'e6e6fa', + 'lavenderblush1' => 'fff0f5', + 'lavenderblush2' => 'eee0e5', + 'lavenderblush3' => 'cdc1c5', + 'lavenderblush4' => '8b8386', + 'lawngreen' => '7cfc00', + 'lemonchiffon1' => 'fffacd', + 'lemonchiffon2' => 'eee9bf', + 'lemonchiffon3' => 'cdc9a5', + 'lemonchiffon4' => '8b8970', + 'light' => 'eedd82', + 'lightblue' => 'add8e6', + 'lightblue1' => 'bfefff', + 'lightblue2' => 'b2dfee', + 'lightblue3' => '9ac0cd', + 'lightblue4' => '68838b', + 'lightcoral' => 'f08080', + 'lightcyan1' => 'e0ffff', + 'lightcyan2' => 'd1eeee', + 'lightcyan3' => 'b4cdcd', + 'lightcyan4' => '7a8b8b', + 'lightgoldenrod1' => 'ffec8b', + 'lightgoldenrod2' => 'eedc82', + 'lightgoldenrod3' => 'cdbe70', + 'lightgoldenrod4' => '8b814c', + 'lightgoldenrodyellow' => 'fafad2', + 'lightgray' => 'd3d3d3', + 'lightpink' => 'ffb6c1', + 'lightpink1' => 'ffaeb9', + 'lightpink2' => 'eea2ad', + 'lightpink3' => 'cd8c95', + 'lightpink4' => '8b5f65', + 'lightsalmon1' => 'ffa07a', + 'lightsalmon2' => 'ee9572', + 'lightsalmon3' => 'cd8162', + 'lightsalmon4' => '8b5742', + 'lightseagreen' => '20b2aa', + 'lightskyblue' => '87cefa', + 'lightskyblue1' => 'b0e2ff', + 'lightskyblue2' => 'a4d3ee', + 'lightskyblue3' => '8db6cd', + 'lightskyblue4' => '607b8b', + 'lightslateblue' => '8470ff', + 'lightslategray' => '778899', + 'lightsteelblue' => 'b0c4de', + 'lightsteelblue1' => 'cae1ff', + 'lightsteelblue2' => 'bcd2ee', + 'lightsteelblue3' => 'a2b5cd', + 'lightsteelblue4' => '6e7b8b', + 'lightyellow1' => 'ffffe0', + 'lightyellow2' => 'eeeed1', + 'lightyellow3' => 'cdcdb4', + 'lightyellow4' => '8b8b7a', + 'lime' => '00ff00', + 'limegreen' => '32cd32', + 'linen' => 'faf0e6', + 'magenta' => 'ff00ff', + 'magenta2' => 'ee00ee', + 'magenta3' => 'cd00cd', + 'magenta4' => '8b008b', + 'maroon' => 'b03060', + 'maroon1' => 'ff34b3', + 'maroon2' => 'ee30a7', + 'maroon3' => 'cd2990', + 'maroon4' => '8b1c62', + 'medium' => '66cdaa', + 'mediumaquamarine' => '66cdaa', + 'mediumblue' => '0000cd', + 'mediumorchid' => 'ba55d3', + 'mediumorchid1' => 'e066ff', + 'mediumorchid2' => 'd15fee', + 'mediumorchid3' => 'b452cd', + 'mediumorchid4' => '7a378b', + 'mediumpurple' => '9370db', + 'mediumpurple1' => 'ab82ff', + 'mediumpurple2' => '9f79ee', + 'mediumpurple3' => '8968cd', + 'mediumpurple4' => '5d478b', + 'mediumseagreen' => '3cb371', + 'mediumslateblue' => '7b68ee', + 'mediumspringgreen' => '00fa9a', + 'mediumturquoise' => '48d1cc', + 'mediumvioletred' => 'c71585', + 'midnightblue' => '191970', + 'mintcream' => 'f5fffa', + 'mistyrose1' => 'ffe4e1', + 'mistyrose2' => 'eed5d2', + 'mistyrose3' => 'cdb7b5', + 'mistyrose4' => '8b7d7b', + 'moccasin' => 'ffe4b5', + 'navajowhite1' => 'ffdead', + 'navajowhite2' => 'eecfa1', + 'navajowhite3' => 'cdb38b', + 'navajowhite4' => '8b795e', + 'navy' => '000080', + 'navyblue' => '000080', + 'oldlace' => 'fdf5e6', + 'olive' => '808000', + 'olivedrab' => '6b8e23', + 'olivedrab1' => 'c0ff3e', + 'olivedrab2' => 'b3ee3a', + 'olivedrab4' => '698b22', + 'orange' => 'ffa500', + 'orange1' => 'ffa500', + 'orange2' => 'ee9a00', + 'orange3' => 'cd8500', + 'orange4' => '8b5a00', + 'orangered1' => 'ff4500', + 'orangered2' => 'ee4000', + 'orangered3' => 'cd3700', + 'orangered4' => '8b2500', + 'orchid' => 'da70d6', + 'orchid1' => 'ff83fa', + 'orchid2' => 'ee7ae9', + 'orchid3' => 'cd69c9', + 'orchid4' => '8b4789', + 'pale' => 'db7093', + 'palegoldenrod' => 'eee8aa', + 'palegreen' => '98fb98', + 'palegreen1' => '9aff9a', + 'palegreen2' => '90ee90', + 'palegreen3' => '7ccd7c', + 'palegreen4' => '548b54', + 'paleturquoise' => 'afeeee', + 'paleturquoise1' => 'bbffff', + 'paleturquoise2' => 'aeeeee', + 'paleturquoise3' => '96cdcd', + 'paleturquoise4' => '668b8b', + 'palevioletred' => 'db7093', + 'palevioletred1' => 'ff82ab', + 'palevioletred2' => 'ee799f', + 'palevioletred3' => 'cd6889', + 'palevioletred4' => '8b475d', + 'papayawhip' => 'ffefd5', + 'peachpuff1' => 'ffdab9', + 'peachpuff2' => 'eecbad', + 'peachpuff3' => 'cdaf95', + 'peachpuff4' => '8b7765', + 'pink' => 'ffc0cb', + 'pink1' => 'ffb5c5', + 'pink2' => 'eea9b8', + 'pink3' => 'cd919e', + 'pink4' => '8b636c', + 'plum' => 'dda0dd', + 'plum1' => 'ffbbff', + 'plum2' => 'eeaeee', + 'plum3' => 'cd96cd', + 'plum4' => '8b668b', + 'powderblue' => 'b0e0e6', + 'purple' => 'a020f0', + 'rebeccapurple' => '663399', + 'purple1' => '9b30ff', + 'purple2' => '912cee', + 'purple3' => '7d26cd', + 'purple4' => '551a8b', + 'red' => 'ff0000', + 'red1' => 'ff0000', + 'red2' => 'ee0000', + 'red3' => 'cd0000', + 'red4' => '8b0000', + 'rosybrown' => 'bc8f8f', + 'rosybrown1' => 'ffc1c1', + 'rosybrown2' => 'eeb4b4', + 'rosybrown3' => 'cd9b9b', + 'rosybrown4' => '8b6969', + 'royalblue' => '4169e1', + 'royalblue1' => '4876ff', + 'royalblue2' => '436eee', + 'royalblue3' => '3a5fcd', + 'royalblue4' => '27408b', + 'saddlebrown' => '8b4513', + 'salmon' => 'fa8072', + 'salmon1' => 'ff8c69', + 'salmon2' => 'ee8262', + 'salmon3' => 'cd7054', + 'salmon4' => '8b4c39', + 'sandybrown' => 'f4a460', + 'seagreen1' => '54ff9f', + 'seagreen2' => '4eee94', + 'seagreen3' => '43cd80', + 'seagreen4' => '2e8b57', + 'seashell1' => 'fff5ee', + 'seashell2' => 'eee5de', + 'seashell3' => 'cdc5bf', + 'seashell4' => '8b8682', + 'sienna' => 'a0522d', + 'sienna1' => 'ff8247', + 'sienna2' => 'ee7942', + 'sienna3' => 'cd6839', + 'sienna4' => '8b4726', + 'silver' => 'c0c0c0', + 'skyblue' => '87ceeb', + 'skyblue1' => '87ceff', + 'skyblue2' => '7ec0ee', + 'skyblue3' => '6ca6cd', + 'skyblue4' => '4a708b', + 'slateblue' => '6a5acd', + 'slateblue1' => '836fff', + 'slateblue2' => '7a67ee', + 'slateblue3' => '6959cd', + 'slateblue4' => '473c8b', + 'slategray' => '708090', + 'slategray1' => 'c6e2ff', + 'slategray2' => 'b9d3ee', + 'slategray3' => '9fb6cd', + 'slategray4' => '6c7b8b', + 'snow1' => 'fffafa', + 'snow2' => 'eee9e9', + 'snow3' => 'cdc9c9', + 'snow4' => '8b8989', + 'springgreen1' => '00ff7f', + 'springgreen2' => '00ee76', + 'springgreen3' => '00cd66', + 'springgreen4' => '008b45', + 'steelblue' => '4682b4', + 'steelblue1' => '63b8ff', + 'steelblue2' => '5cacee', + 'steelblue3' => '4f94cd', + 'steelblue4' => '36648b', + 'tan' => 'd2b48c', + 'tan1' => 'ffa54f', + 'tan2' => 'ee9a49', + 'tan3' => 'cd853f', + 'tan4' => '8b5a2b', + 'teal' => '008080', + 'thistle' => 'd8bfd8', + 'thistle1' => 'ffe1ff', + 'thistle2' => 'eed2ee', + 'thistle3' => 'cdb5cd', + 'thistle4' => '8b7b8b', + 'tomato1' => 'ff6347', + 'tomato2' => 'ee5c42', + 'tomato3' => 'cd4f39', + 'tomato4' => '8b3626', + 'turquoise' => '40e0d0', + 'turquoise1' => '00f5ff', + 'turquoise2' => '00e5ee', + 'turquoise3' => '00c5cd', + 'turquoise4' => '00868b', + 'violet' => 'ee82ee', + 'violetred' => 'd02090', + 'violetred1' => 'ff3e96', + 'violetred2' => 'ee3a8c', + 'violetred3' => 'cd3278', + 'violetred4' => '8b2252', + 'wheat' => 'f5deb3', + 'wheat1' => 'ffe7ba', + 'wheat2' => 'eed8ae', + 'wheat3' => 'cdba96', + 'wheat4' => '8b7e66', + 'white' => 'ffffff', + 'whitesmoke' => 'f5f5f5', + 'yellow' => 'ffff00', + 'yellow1' => 'ffff00', + 'yellow2' => 'eeee00', + 'yellow3' => 'cdcd00', + 'yellow4' => '8b8b00', + 'yellowgreen' => '9acd32', + ); + + protected $face; + protected $size; + protected $color; + + protected $bold = false; + protected $italic = false; + protected $underline = false; + protected $superscript = false; + protected $subscript = false; + protected $strikethrough = false; + + protected $startTagCallbacks = array( + 'font' => 'startFontTag', + 'b' => 'startBoldTag', + 'strong' => 'startBoldTag', + 'i' => 'startItalicTag', + 'em' => 'startItalicTag', + 'u' => 'startUnderlineTag', + 'ins' => 'startUnderlineTag', + 'del' => 'startStrikethruTag', + 'sup' => 'startSuperscriptTag', + 'sub' => 'startSubscriptTag', + ); + + protected $endTagCallbacks = array( + 'font' => 'endFontTag', + 'b' => 'endBoldTag', + 'strong' => 'endBoldTag', + 'i' => 'endItalicTag', + 'em' => 'endItalicTag', + 'u' => 'endUnderlineTag', + 'ins' => 'endUnderlineTag', + 'del' => 'endStrikethruTag', + 'sup' => 'endSuperscriptTag', + 'sub' => 'endSubscriptTag', + 'br' => 'breakTag', + 'p' => 'breakTag', + 'h1' => 'breakTag', + 'h2' => 'breakTag', + 'h3' => 'breakTag', + 'h4' => 'breakTag', + 'h5' => 'breakTag', + 'h6' => 'breakTag', + ); + + protected $stack = array(); + + protected $stringData = ''; + + protected $richTextObject; + + protected function initialise() + { + $this->face = $this->size = $this->color = null; + $this->bold = $this->italic = $this->underline = $this->superscript = $this->subscript = $this->strikethrough = false; + + $this->stack = array(); + + $this->stringData = ''; + } + + public function toRichTextObject($html) + { + $this->initialise(); + + // Create a new DOM object + $dom = new \DOMDocument; + // Load the HTML file into the DOM object + // Note the use of error suppression, because typically this will be an html fragment, so not fully valid markup + $loaded = @$dom->loadHTML($html); + + // Discard excess white space + $dom->preserveWhiteSpace = false; + + $this->richTextObject = new PHPExcel_RichText();; + $this->parseElements($dom); + + // Clean any further spurious whitespace + $this->cleanWhitespace(); + + return $this->richTextObject; + } + + protected function cleanWhitespace() + { + foreach ($this->richTextObject->getRichTextElements() as $key => $element) { + $text = $element->getText(); + // Trim any leading spaces on the first run + if ($key == 0) { + $text = ltrim($text); + } + // Trim any spaces immediately after a line break + $text = preg_replace('/\n */mu', "\n", $text); + $element->setText($text); + } + } + + protected function buildTextRun() + { + $text = $this->stringData; + if (trim($text) === '') { + return; + } + + $richtextRun = $this->richTextObject->createTextRun($this->stringData); + if ($this->face) { + $richtextRun->getFont()->setName($this->face); + } + if ($this->size) { + $richtextRun->getFont()->setSize($this->size); + } + if ($this->color) { + $richtextRun->getFont()->setColor(new PHPExcel_Style_Color('ff' . $this->color)); + } + if ($this->bold) { + $richtextRun->getFont()->setBold(true); + } + if ($this->italic) { + $richtextRun->getFont()->setItalic(true); + } + if ($this->underline) { + $richtextRun->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); + } + if ($this->superscript) { + $richtextRun->getFont()->setSuperScript(true); + } + if ($this->subscript) { + $richtextRun->getFont()->setSubScript(true); + } + if ($this->strikethrough) { + $richtextRun->getFont()->setStrikethrough(true); + } + $this->stringData = ''; + } + + protected function rgbToColour($rgb) + { + preg_match_all('/\d+/', $rgb, $values); + foreach ($values[0] as &$value) { + $value = str_pad(dechex($value), 2, '0', STR_PAD_LEFT); + } + return implode($values[0]); + } + + protected function colourNameLookup($rgb) + { + return self::$colourMap[$rgb]; + } + + protected function startFontTag($tag) + { + foreach ($tag->attributes as $attribute) { + $attributeName = strtolower($attribute->name); + $attributeValue = $attribute->value; + + if ($attributeName == 'color') { + if (preg_match('/rgb\s*\(/', $attributeValue)) { + $this->$attributeName = $this->rgbToColour($attributeValue); + } elseif (strpos(trim($attributeValue), '#') === 0) { + $this->$attributeName = ltrim($attributeValue, '#'); + } else { + $this->$attributeName = $this->colourNameLookup($attributeValue); + } + } else { + $this->$attributeName = $attributeValue; + } + } + } + + protected function endFontTag() + { + $this->face = $this->size = $this->color = null; + } + + protected function startBoldTag() + { + $this->bold = true; + } + + protected function endBoldTag() + { + $this->bold = false; + } + + protected function startItalicTag() + { + $this->italic = true; + } + + protected function endItalicTag() + { + $this->italic = false; + } + + protected function startUnderlineTag() + { + $this->underline = true; + } + + protected function endUnderlineTag() + { + $this->underline = false; + } + + protected function startSubscriptTag() + { + $this->subscript = true; + } + + protected function endSubscriptTag() + { + $this->subscript = false; + } + + protected function startSuperscriptTag() + { + $this->superscript = true; + } + + protected function endSuperscriptTag() + { + $this->superscript = false; + } + + protected function startStrikethruTag() + { + $this->strikethrough = true; + } + + protected function endStrikethruTag() + { + $this->strikethrough = false; + } + + protected function breakTag() + { + $this->stringData .= "\n"; + } + + protected function parseTextNode(DOMText $textNode) + { + $domText = preg_replace( + '/\s+/u', + ' ', + str_replace(array("\r", "\n"), ' ', $textNode->nodeValue) + ); + $this->stringData .= $domText; + $this->buildTextRun(); + } + + protected function handleCallback($element, $callbackTag, $callbacks) + { + if (isset($callbacks[$callbackTag])) { + $elementHandler = $callbacks[$callbackTag]; + if (method_exists($this, $elementHandler)) { + call_user_func(array($this, $elementHandler), $element); + } + } + } + + protected function parseElementNode(DOMElement $element) + { + $callbackTag = strtolower($element->nodeName); + $this->stack[] = $callbackTag; + + $this->handleCallback($element, $callbackTag, $this->startTagCallbacks); + + $this->parseElements($element); + array_pop($this->stack); + + $this->handleCallback($element, $callbackTag, $this->endTagCallbacks); + } + + protected function parseElements(DOMNode $element) + { + foreach ($element->childNodes as $child) { + if ($child instanceof DOMText) { + $this->parseTextNode($child); + } elseif ($child instanceof DOMElement) { + $this->parseElementNode($child); + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Helper/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Helper/_notes/dwsync.xml new file mode 100644 index 0000000..1c1e42c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Helper/_notes/dwsync.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/IComparable.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/IComparable.php new file mode 100644 index 0000000..6dc36a9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/IComparable.php @@ -0,0 +1,34 @@ + 'IWriter', 'path' => 'PHPExcel/Writer/{0}.php', 'class' => 'PHPExcel_Writer_{0}' ), + array( 'type' => 'IReader', 'path' => 'PHPExcel/Reader/{0}.php', 'class' => 'PHPExcel_Reader_{0}' ) + ); + + /** + * Autoresolve classes + * + * @var array + * @access private + * @static + */ + private static $autoResolveClasses = array( + 'Excel2007', + 'Excel5', + 'Excel2003XML', + 'OOCalc', + 'SYLK', + 'Gnumeric', + 'HTML', + 'CSV', + ); + + /** + * Private constructor for PHPExcel_IOFactory + */ + private function __construct() + { + } + + /** + * Get search locations + * + * @static + * @access public + * @return array + */ + public static function getSearchLocations() + { + return self::$searchLocations; + } + + /** + * Set search locations + * + * @static + * @access public + * @param array $value + * @throws PHPExcel_Reader_Exception + */ + public static function setSearchLocations($value) + { + if (is_array($value)) { + self::$searchLocations = $value; + } else { + throw new PHPExcel_Reader_Exception('Invalid parameter passed.'); + } + } + + /** + * Add search location + * + * @static + * @access public + * @param string $type Example: IWriter + * @param string $location Example: PHPExcel/Writer/{0}.php + * @param string $classname Example: PHPExcel_Writer_{0} + */ + public static function addSearchLocation($type = '', $location = '', $classname = '') + { + self::$searchLocations[] = array( 'type' => $type, 'path' => $location, 'class' => $classname ); + } + + /** + * Create PHPExcel_Writer_IWriter + * + * @static + * @access public + * @param PHPExcel $phpExcel + * @param string $writerType Example: Excel2007 + * @return PHPExcel_Writer_IWriter + * @throws PHPExcel_Reader_Exception + */ + public static function createWriter(PHPExcel $phpExcel, $writerType = '') + { + // Search type + $searchType = 'IWriter'; + + // Include class + foreach (self::$searchLocations as $searchLocation) { + if ($searchLocation['type'] == $searchType) { + $className = str_replace('{0}', $writerType, $searchLocation['class']); + + $instance = new $className($phpExcel); + if ($instance !== null) { + return $instance; + } + } + } + + // Nothing found... + throw new PHPExcel_Reader_Exception("No $searchType found for type $writerType"); + } + + /** + * Create PHPExcel_Reader_IReader + * + * @static + * @access public + * @param string $readerType Example: Excel2007 + * @return PHPExcel_Reader_IReader + * @throws PHPExcel_Reader_Exception + */ + public static function createReader($readerType = '') + { + // Search type + $searchType = 'IReader'; + + // Include class + foreach (self::$searchLocations as $searchLocation) { + if ($searchLocation['type'] == $searchType) { + $className = str_replace('{0}', $readerType, $searchLocation['class']); + + $instance = new $className(); + if ($instance !== null) { + return $instance; + } + } + } + + // Nothing found... + throw new PHPExcel_Reader_Exception("No $searchType found for type $readerType"); + } + + /** + * Loads PHPExcel from file using automatic PHPExcel_Reader_IReader resolution + * + * @static + * @access public + * @param string $pFilename The name of the spreadsheet file + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public static function load($pFilename) + { + $reader = self::createReaderForFile($pFilename); + return $reader->load($pFilename); + } + + /** + * Identify file type using automatic PHPExcel_Reader_IReader resolution + * + * @static + * @access public + * @param string $pFilename The name of the spreadsheet file to identify + * @return string + * @throws PHPExcel_Reader_Exception + */ + public static function identify($pFilename) + { + $reader = self::createReaderForFile($pFilename); + $className = get_class($reader); + $classType = explode('_', $className); + unset($reader); + return array_pop($classType); + } + + /** + * Create PHPExcel_Reader_IReader for file using automatic PHPExcel_Reader_IReader resolution + * + * @static + * @access public + * @param string $pFilename The name of the spreadsheet file + * @return PHPExcel_Reader_IReader + * @throws PHPExcel_Reader_Exception + */ + public static function createReaderForFile($pFilename) + { + // First, lucky guess by inspecting file extension + $pathinfo = pathinfo($pFilename); + + $extensionType = null; + if (isset($pathinfo['extension'])) { + switch (strtolower($pathinfo['extension'])) { + case 'xlsx': // Excel (OfficeOpenXML) Spreadsheet + case 'xlsm': // Excel (OfficeOpenXML) Macro Spreadsheet (macros will be discarded) + case 'xltx': // Excel (OfficeOpenXML) Template + case 'xltm': // Excel (OfficeOpenXML) Macro Template (macros will be discarded) + $extensionType = 'Excel2007'; + break; + case 'xls': // Excel (BIFF) Spreadsheet + case 'xlt': // Excel (BIFF) Template + $extensionType = 'Excel5'; + break; + case 'ods': // Open/Libre Offic Calc + case 'ots': // Open/Libre Offic Calc Template + $extensionType = 'OOCalc'; + break; + case 'slk': + $extensionType = 'SYLK'; + break; + case 'xml': // Excel 2003 SpreadSheetML + $extensionType = 'Excel2003XML'; + break; + case 'gnumeric': + $extensionType = 'Gnumeric'; + break; + case 'htm': + case 'html': + $extensionType = 'HTML'; + break; + case 'csv': + // Do nothing + // We must not try to use CSV reader since it loads + // all files including Excel files etc. + break; + default: + break; + } + + if ($extensionType !== null) { + $reader = self::createReader($extensionType); + // Let's see if we are lucky + if (isset($reader) && $reader->canRead($pFilename)) { + return $reader; + } + } + } + + // If we reach here then "lucky guess" didn't give any result + // Try walking through all the options in self::$autoResolveClasses + foreach (self::$autoResolveClasses as $autoResolveClass) { + // Ignore our original guess, we know that won't work + if ($autoResolveClass !== $extensionType) { + $reader = self::createReader($autoResolveClass); + if ($reader->canRead($pFilename)) { + return $reader; + } + } + } + + throw new PHPExcel_Reader_Exception('Unable to identify a reader for this file'); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/NamedRange.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/NamedRange.php new file mode 100644 index 0000000..2848db8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/NamedRange.php @@ -0,0 +1,249 @@ +worksheet) + * + * @var bool + */ + private $localOnly; + + /** + * Scope + * + * @var PHPExcel_Worksheet + */ + private $scope; + + /** + * Create a new NamedRange + * + * @param string $pName + * @param PHPExcel_Worksheet $pWorksheet + * @param string $pRange + * @param bool $pLocalOnly + * @param PHPExcel_Worksheet|null $pScope Scope. Only applies when $pLocalOnly = true. Null for global scope. + * @throws PHPExcel_Exception + */ + public function __construct($pName = null, PHPExcel_Worksheet $pWorksheet, $pRange = 'A1', $pLocalOnly = false, $pScope = null) + { + // Validate data + if (($pName === null) || ($pWorksheet === null) || ($pRange === null)) { + throw new PHPExcel_Exception('Parameters can not be null.'); + } + + // Set local members + $this->name = $pName; + $this->worksheet = $pWorksheet; + $this->range = $pRange; + $this->localOnly = $pLocalOnly; + $this->scope = ($pLocalOnly == true) ? (($pScope == null) ? $pWorksheet : $pScope) : null; + } + + /** + * Get name + * + * @return string + */ + public function getName() + { + return $this->name; + } + + /** + * Set name + * + * @param string $value + * @return PHPExcel_NamedRange + */ + public function setName($value = null) + { + if ($value !== null) { + // Old title + $oldTitle = $this->name; + + // Re-attach + if ($this->worksheet !== null) { + $this->worksheet->getParent()->removeNamedRange($this->name, $this->worksheet); + } + $this->name = $value; + + if ($this->worksheet !== null) { + $this->worksheet->getParent()->addNamedRange($this); + } + + // New title + $newTitle = $this->name; + PHPExcel_ReferenceHelper::getInstance()->updateNamedFormulas($this->worksheet->getParent(), $oldTitle, $newTitle); + } + return $this; + } + + /** + * Get worksheet + * + * @return PHPExcel_Worksheet + */ + public function getWorksheet() + { + return $this->worksheet; + } + + /** + * Set worksheet + * + * @param PHPExcel_Worksheet $value + * @return PHPExcel_NamedRange + */ + public function setWorksheet(PHPExcel_Worksheet $value = null) + { + if ($value !== null) { + $this->worksheet = $value; + } + return $this; + } + + /** + * Get range + * + * @return string + */ + public function getRange() + { + return $this->range; + } + + /** + * Set range + * + * @param string $value + * @return PHPExcel_NamedRange + */ + public function setRange($value = null) + { + if ($value !== null) { + $this->range = $value; + } + return $this; + } + + /** + * Get localOnly + * + * @return bool + */ + public function getLocalOnly() + { + return $this->localOnly; + } + + /** + * Set localOnly + * + * @param bool $value + * @return PHPExcel_NamedRange + */ + public function setLocalOnly($value = false) + { + $this->localOnly = $value; + $this->scope = $value ? $this->worksheet : null; + return $this; + } + + /** + * Get scope + * + * @return PHPExcel_Worksheet|null + */ + public function getScope() + { + return $this->scope; + } + + /** + * Set scope + * + * @param PHPExcel_Worksheet|null $value + * @return PHPExcel_NamedRange + */ + public function setScope(PHPExcel_Worksheet $value = null) + { + $this->scope = $value; + $this->localOnly = ($value == null) ? false : true; + return $this; + } + + /** + * Resolve a named range to a regular cell range + * + * @param string $pNamedRange Named range + * @param PHPExcel_Worksheet|null $pSheet Scope. Use null for global scope + * @return PHPExcel_NamedRange + */ + public static function resolveRange($pNamedRange = '', PHPExcel_Worksheet $pSheet) + { + return $pSheet->getParent()->getNamedRange($pNamedRange, $pSheet); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Abstract.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Abstract.php new file mode 100644 index 0000000..189c70a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Abstract.php @@ -0,0 +1,289 @@ +readDataOnly; + } + + /** + * Set read data only + * Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information. + * Set to false (the default) to advise the Reader to read both data and formatting for cells. + * + * @param boolean $pValue + * + * @return PHPExcel_Reader_IReader + */ + public function setReadDataOnly($pValue = false) + { + $this->readDataOnly = $pValue; + return $this; + } + + /** + * Read empty cells? + * If this is true (the default), then the Reader will read data values for all cells, irrespective of value. + * If false it will not read data for cells containing a null value or an empty string. + * + * @return boolean + */ + public function getReadEmptyCells() + { + return $this->readEmptyCells; + } + + /** + * Set read empty cells + * Set to true (the default) to advise the Reader read data values for all cells, irrespective of value. + * Set to false to advise the Reader to ignore cells containing a null value or an empty string. + * + * @param boolean $pValue + * + * @return PHPExcel_Reader_IReader + */ + public function setReadEmptyCells($pValue = true) + { + $this->readEmptyCells = $pValue; + return $this; + } + + /** + * Read charts in workbook? + * If this is true, then the Reader will include any charts that exist in the workbook. + * Note that a ReadDataOnly value of false overrides, and charts won't be read regardless of the IncludeCharts value. + * If false (the default) it will ignore any charts defined in the workbook file. + * + * @return boolean + */ + public function getIncludeCharts() + { + return $this->includeCharts; + } + + /** + * Set read charts in workbook + * Set to true, to advise the Reader to include any charts that exist in the workbook. + * Note that a ReadDataOnly value of false overrides, and charts won't be read regardless of the IncludeCharts value. + * Set to false (the default) to discard charts. + * + * @param boolean $pValue + * + * @return PHPExcel_Reader_IReader + */ + public function setIncludeCharts($pValue = false) + { + $this->includeCharts = (boolean) $pValue; + return $this; + } + + /** + * Get which sheets to load + * Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null + * indicating that all worksheets in the workbook should be loaded. + * + * @return mixed + */ + public function getLoadSheetsOnly() + { + return $this->loadSheetsOnly; + } + + /** + * Set which sheets to load + * + * @param mixed $value + * This should be either an array of worksheet names to be loaded, or a string containing a single worksheet name. + * If NULL, then it tells the Reader to read all worksheets in the workbook + * + * @return PHPExcel_Reader_IReader + */ + public function setLoadSheetsOnly($value = null) + { + if ($value === null) { + return $this->setLoadAllSheets(); + } + + $this->loadSheetsOnly = is_array($value) ? $value : array($value); + return $this; + } + + /** + * Set all sheets to load + * Tells the Reader to load all worksheets from the workbook. + * + * @return PHPExcel_Reader_IReader + */ + public function setLoadAllSheets() + { + $this->loadSheetsOnly = null; + return $this; + } + + /** + * Read filter + * + * @return PHPExcel_Reader_IReadFilter + */ + public function getReadFilter() + { + return $this->readFilter; + } + + /** + * Set read filter + * + * @param PHPExcel_Reader_IReadFilter $pValue + * @return PHPExcel_Reader_IReader + */ + public function setReadFilter(PHPExcel_Reader_IReadFilter $pValue) + { + $this->readFilter = $pValue; + return $this; + } + + /** + * Open file for reading + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + * @return resource + */ + protected function openFile($pFilename) + { + // Check if file exists + if (!file_exists($pFilename) || !is_readable($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Open file + $this->fileHandle = fopen($pFilename, 'r'); + if ($this->fileHandle === false) { + throw new PHPExcel_Reader_Exception("Could not open file " . $pFilename . " for reading."); + } + } + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFilename + * @return boolean + * @throws PHPExcel_Reader_Exception + */ + public function canRead($pFilename) + { + // Check if file exists + try { + $this->openFile($pFilename); + } catch (Exception $e) { + return false; + } + + $readable = $this->isValidFormat(); + fclose($this->fileHandle); + return $readable; + } + + /** + * Scan theXML for use of securityScan(file_get_contents($filestream)); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/CSV.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/CSV.php new file mode 100644 index 0000000..21329da --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/CSV.php @@ -0,0 +1,406 @@ +readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } + + /** + * Validate that the current file is a CSV file + * + * @return boolean + */ + protected function isValidFormat() + { + return true; + } + + /** + * Set input encoding + * + * @param string $pValue Input encoding + */ + public function setInputEncoding($pValue = 'UTF-8') + { + $this->inputEncoding = $pValue; + return $this; + } + + /** + * Get input encoding + * + * @return string + */ + public function getInputEncoding() + { + return $this->inputEncoding; + } + + /** + * Move filepointer past any BOM marker + * + */ + protected function skipBOM() + { + rewind($this->fileHandle); + + switch ($this->inputEncoding) { + case 'UTF-8': + fgets($this->fileHandle, 4) == "\xEF\xBB\xBF" ? + fseek($this->fileHandle, 3) : fseek($this->fileHandle, 0); + break; + case 'UTF-16LE': + fgets($this->fileHandle, 3) == "\xFF\xFE" ? + fseek($this->fileHandle, 2) : fseek($this->fileHandle, 0); + break; + case 'UTF-16BE': + fgets($this->fileHandle, 3) == "\xFE\xFF" ? + fseek($this->fileHandle, 2) : fseek($this->fileHandle, 0); + break; + case 'UTF-32LE': + fgets($this->fileHandle, 5) == "\xFF\xFE\x00\x00" ? + fseek($this->fileHandle, 4) : fseek($this->fileHandle, 0); + break; + case 'UTF-32BE': + fgets($this->fileHandle, 5) == "\x00\x00\xFE\xFF" ? + fseek($this->fileHandle, 4) : fseek($this->fileHandle, 0); + break; + default: + break; + } + } + + /** + * Identify any separator that is explicitly set in the file + * + */ + protected function checkSeparator() + { + $line = fgets($this->fileHandle); + if ($line === false) { + return; + } + + if ((strlen(trim($line, "\r\n")) == 5) && (stripos($line, 'sep=') === 0)) { + $this->delimiter = substr($line, 4, 1); + return; + } + return $this->skipBOM(); + } + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetInfo($pFilename) + { + // Open file + $this->openFile($pFilename); + if (!$this->isValidFormat()) { + fclose($this->fileHandle); + throw new PHPExcel_Reader_Exception($pFilename . " is an Invalid Spreadsheet file."); + } + $fileHandle = $this->fileHandle; + + // Skip BOM, if any + $this->skipBOM(); + $this->checkSeparator(); + + $escapeEnclosures = array( "\\" . $this->enclosure, $this->enclosure . $this->enclosure ); + + $worksheetInfo = array(); + $worksheetInfo[0]['worksheetName'] = 'Worksheet'; + $worksheetInfo[0]['lastColumnLetter'] = 'A'; + $worksheetInfo[0]['lastColumnIndex'] = 0; + $worksheetInfo[0]['totalRows'] = 0; + $worksheetInfo[0]['totalColumns'] = 0; + + // Loop through each line of the file in turn + while (($rowData = fgetcsv($fileHandle, 0, $this->delimiter, $this->enclosure)) !== false) { + $worksheetInfo[0]['totalRows']++; + $worksheetInfo[0]['lastColumnIndex'] = max($worksheetInfo[0]['lastColumnIndex'], count($rowData) - 1); + } + + $worksheetInfo[0]['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($worksheetInfo[0]['lastColumnIndex']); + $worksheetInfo[0]['totalColumns'] = $worksheetInfo[0]['lastColumnIndex'] + 1; + + // Close file + fclose($fileHandle); + + return $worksheetInfo; + } + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + $lineEnding = ini_get('auto_detect_line_endings'); + ini_set('auto_detect_line_endings', true); + + // Open file + $this->openFile($pFilename); + if (!$this->isValidFormat()) { + fclose($this->fileHandle); + throw new PHPExcel_Reader_Exception($pFilename . " is an Invalid Spreadsheet file."); + } + $fileHandle = $this->fileHandle; + + // Skip BOM, if any + $this->skipBOM(); + $this->checkSeparator(); + + // Create new PHPExcel object + while ($objPHPExcel->getSheetCount() <= $this->sheetIndex) { + $objPHPExcel->createSheet(); + } + $sheet = $objPHPExcel->setActiveSheetIndex($this->sheetIndex); + + $escapeEnclosures = array( "\\" . $this->enclosure, + $this->enclosure . $this->enclosure + ); + + // Set our starting row based on whether we're in contiguous mode or not + $currentRow = 1; + if ($this->contiguous) { + $currentRow = ($this->contiguousRow == -1) ? $sheet->getHighestRow(): $this->contiguousRow; + } + + // Loop through each line of the file in turn + while (($rowData = fgetcsv($fileHandle, 0, $this->delimiter, $this->enclosure)) !== false) { + $columnLetter = 'A'; + foreach ($rowData as $rowDatum) { + if ($rowDatum != '' && $this->readFilter->readCell($columnLetter, $currentRow)) { + // Unescape enclosures + $rowDatum = str_replace($escapeEnclosures, $this->enclosure, $rowDatum); + + // Convert encoding if necessary + if ($this->inputEncoding !== 'UTF-8') { + $rowDatum = PHPExcel_Shared_String::ConvertEncoding($rowDatum, 'UTF-8', $this->inputEncoding); + } + + // Set cell value + $sheet->getCell($columnLetter . $currentRow)->setValue($rowDatum); + } + ++$columnLetter; + } + ++$currentRow; + } + + // Close file + fclose($fileHandle); + + if ($this->contiguous) { + $this->contiguousRow = $currentRow; + } + + ini_set('auto_detect_line_endings', $lineEnding); + + // Return + return $objPHPExcel; + } + + /** + * Get delimiter + * + * @return string + */ + public function getDelimiter() + { + return $this->delimiter; + } + + /** + * Set delimiter + * + * @param string $pValue Delimiter, defaults to , + * @return PHPExcel_Reader_CSV + */ + public function setDelimiter($pValue = ',') + { + $this->delimiter = $pValue; + return $this; + } + + /** + * Get enclosure + * + * @return string + */ + public function getEnclosure() + { + return $this->enclosure; + } + + /** + * Set enclosure + * + * @param string $pValue Enclosure, defaults to " + * @return PHPExcel_Reader_CSV + */ + public function setEnclosure($pValue = '"') + { + if ($pValue == '') { + $pValue = '"'; + } + $this->enclosure = $pValue; + return $this; + } + + /** + * Get sheet index + * + * @return integer + */ + public function getSheetIndex() + { + return $this->sheetIndex; + } + + /** + * Set sheet index + * + * @param integer $pValue Sheet index + * @return PHPExcel_Reader_CSV + */ + public function setSheetIndex($pValue = 0) + { + $this->sheetIndex = $pValue; + return $this; + } + + /** + * Set Contiguous + * + * @param boolean $contiguous + */ + public function setContiguous($contiguous = false) + { + $this->contiguous = (bool) $contiguous; + if (!$contiguous) { + $this->contiguousRow = -1; + } + + return $this; + } + + /** + * Get Contiguous + * + * @return boolean + */ + public function getContiguous() + { + return $this->contiguous; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/DefaultReadFilter.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/DefaultReadFilter.php new file mode 100644 index 0000000..ea25f63 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/DefaultReadFilter.php @@ -0,0 +1,51 @@ +readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } + + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFilename + * @return boolean + * @throws PHPExcel_Reader_Exception + */ + public function canRead($pFilename) + { + + // Office xmlns:o="urn:schemas-microsoft-com:office:office" + // Excel xmlns:x="urn:schemas-microsoft-com:office:excel" + // XML Spreadsheet xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" + // Spreadsheet component xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" + // XML schema xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" + // XML data type xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" + // MS-persist recordset xmlns:rs="urn:schemas-microsoft-com:rowset" + // Rowset xmlns:z="#RowsetSchema" + // + + $signature = array( + '' + ); + + // Open file + $this->openFile($pFilename); + $fileHandle = $this->fileHandle; + + // Read sample data (first 2 KB will do) + $data = fread($fileHandle, 2048); + fclose($fileHandle); + + $valid = true; + foreach ($signature as $match) { + // every part of the signature must be present + if (strpos($data, $match) === false) { + $valid = false; + break; + } + } + + // Retrieve charset encoding + if (preg_match('//um', $data, $matches)) { + $this->charSet = strtoupper($matches[1]); + } +// echo 'Character Set is ', $this->charSet,'
'; + + return $valid; + } + + + /** + * Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetNames($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + if (!$this->canRead($pFilename)) { + throw new PHPExcel_Reader_Exception($pFilename . " is an Invalid Spreadsheet file."); + } + + $worksheetNames = array(); + + $xml = simplexml_load_string($this->securityScan(file_get_contents($pFilename)), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + $namespaces = $xml->getNamespaces(true); + + $xml_ss = $xml->children($namespaces['ss']); + foreach ($xml_ss->Worksheet as $worksheet) { + $worksheet_ss = $worksheet->attributes($namespaces['ss']); + $worksheetNames[] = self::convertStringEncoding((string) $worksheet_ss['Name'], $this->charSet); + } + + return $worksheetNames; + } + + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetInfo = array(); + + $xml = simplexml_load_string($this->securityScan(file_get_contents($pFilename)), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + $namespaces = $xml->getNamespaces(true); + + $worksheetID = 1; + $xml_ss = $xml->children($namespaces['ss']); + foreach ($xml_ss->Worksheet as $worksheet) { + $worksheet_ss = $worksheet->attributes($namespaces['ss']); + + $tmpInfo = array(); + $tmpInfo['worksheetName'] = ''; + $tmpInfo['lastColumnLetter'] = 'A'; + $tmpInfo['lastColumnIndex'] = 0; + $tmpInfo['totalRows'] = 0; + $tmpInfo['totalColumns'] = 0; + + if (isset($worksheet_ss['Name'])) { + $tmpInfo['worksheetName'] = (string) $worksheet_ss['Name']; + } else { + $tmpInfo['worksheetName'] = "Worksheet_{$worksheetID}"; + } + + if (isset($worksheet->Table->Row)) { + $rowIndex = 0; + + foreach ($worksheet->Table->Row as $rowData) { + $columnIndex = 0; + $rowHasData = false; + + foreach ($rowData->Cell as $cell) { + if (isset($cell->Data)) { + $tmpInfo['lastColumnIndex'] = max($tmpInfo['lastColumnIndex'], $columnIndex); + $rowHasData = true; + } + + ++$columnIndex; + } + + ++$rowIndex; + + if ($rowHasData) { + $tmpInfo['totalRows'] = max($tmpInfo['totalRows'], $rowIndex); + } + } + } + + $tmpInfo['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($tmpInfo['lastColumnIndex']); + $tmpInfo['totalColumns'] = $tmpInfo['lastColumnIndex'] + 1; + + $worksheetInfo[] = $tmpInfo; + ++$worksheetID; + } + + return $worksheetInfo; + } + + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + $objPHPExcel->removeSheetByIndex(0); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } + + protected static function identifyFixedStyleValue($styleList, &$styleAttributeValue) + { + $styleAttributeValue = strtolower($styleAttributeValue); + foreach ($styleList as $style) { + if ($styleAttributeValue == strtolower($style)) { + $styleAttributeValue = $style; + return true; + } + } + return false; + } + + /** + * pixel units to excel width units(units of 1/256th of a character width) + * @param pxs + * @return + */ + protected static function pixel2WidthUnits($pxs) + { + $UNIT_OFFSET_MAP = array(0, 36, 73, 109, 146, 182, 219); + + $widthUnits = 256 * ($pxs / 7); + $widthUnits += $UNIT_OFFSET_MAP[($pxs % 7)]; + return $widthUnits; + } + + /** + * excel width units(units of 1/256th of a character width) to pixel units + * @param widthUnits + * @return + */ + protected static function widthUnits2Pixel($widthUnits) + { + $pixels = ($widthUnits / 256) * 7; + $offsetWidthUnits = $widthUnits % 256; + $pixels += round($offsetWidthUnits / (256 / 7)); + return $pixels; + } + + protected static function hex2str($hex) + { + return chr(hexdec($hex[1])); + } + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + $fromFormats = array('\-', '\ '); + $toFormats = array('-', ' '); + + $underlineStyles = array ( + PHPExcel_Style_Font::UNDERLINE_NONE, + PHPExcel_Style_Font::UNDERLINE_DOUBLE, + PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING, + PHPExcel_Style_Font::UNDERLINE_SINGLE, + PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING + ); + $verticalAlignmentStyles = array ( + PHPExcel_Style_Alignment::VERTICAL_BOTTOM, + PHPExcel_Style_Alignment::VERTICAL_TOP, + PHPExcel_Style_Alignment::VERTICAL_CENTER, + PHPExcel_Style_Alignment::VERTICAL_JUSTIFY + ); + $horizontalAlignmentStyles = array ( + PHPExcel_Style_Alignment::HORIZONTAL_GENERAL, + PHPExcel_Style_Alignment::HORIZONTAL_LEFT, + PHPExcel_Style_Alignment::HORIZONTAL_RIGHT, + PHPExcel_Style_Alignment::HORIZONTAL_CENTER, + PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS, + PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY + ); + + $timezoneObj = new DateTimeZone('Europe/London'); + $GMT = new DateTimeZone('UTC'); + + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + if (!$this->canRead($pFilename)) { + throw new PHPExcel_Reader_Exception($pFilename . " is an Invalid Spreadsheet file."); + } + + $xml = simplexml_load_string($this->securityScan(file_get_contents($pFilename)), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + $namespaces = $xml->getNamespaces(true); + + $docProps = $objPHPExcel->getProperties(); + if (isset($xml->DocumentProperties[0])) { + foreach ($xml->DocumentProperties[0] as $propertyName => $propertyValue) { + switch ($propertyName) { + case 'Title': + $docProps->setTitle(self::convertStringEncoding($propertyValue, $this->charSet)); + break; + case 'Subject': + $docProps->setSubject(self::convertStringEncoding($propertyValue, $this->charSet)); + break; + case 'Author': + $docProps->setCreator(self::convertStringEncoding($propertyValue, $this->charSet)); + break; + case 'Created': + $creationDate = strtotime($propertyValue); + $docProps->setCreated($creationDate); + break; + case 'LastAuthor': + $docProps->setLastModifiedBy(self::convertStringEncoding($propertyValue, $this->charSet)); + break; + case 'LastSaved': + $lastSaveDate = strtotime($propertyValue); + $docProps->setModified($lastSaveDate); + break; + case 'Company': + $docProps->setCompany(self::convertStringEncoding($propertyValue, $this->charSet)); + break; + case 'Category': + $docProps->setCategory(self::convertStringEncoding($propertyValue, $this->charSet)); + break; + case 'Manager': + $docProps->setManager(self::convertStringEncoding($propertyValue, $this->charSet)); + break; + case 'Keywords': + $docProps->setKeywords(self::convertStringEncoding($propertyValue, $this->charSet)); + break; + case 'Description': + $docProps->setDescription(self::convertStringEncoding($propertyValue, $this->charSet)); + break; + } + } + } + if (isset($xml->CustomDocumentProperties)) { + foreach ($xml->CustomDocumentProperties[0] as $propertyName => $propertyValue) { + $propertyAttributes = $propertyValue->attributes($namespaces['dt']); + $propertyName = preg_replace_callback('/_x([0-9a-z]{4})_/', 'PHPExcel_Reader_Excel2003XML::hex2str', $propertyName); + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_UNKNOWN; + switch ((string) $propertyAttributes) { + case 'string': + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_STRING; + $propertyValue = trim($propertyValue); + break; + case 'boolean': + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_BOOLEAN; + $propertyValue = (bool) $propertyValue; + break; + case 'integer': + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_INTEGER; + $propertyValue = intval($propertyValue); + break; + case 'float': + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_FLOAT; + $propertyValue = floatval($propertyValue); + break; + case 'dateTime.tz': + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_DATE; + $propertyValue = strtotime(trim($propertyValue)); + break; + } + $docProps->setCustomProperty($propertyName, $propertyValue, $propertyType); + } + } + + foreach ($xml->Styles[0] as $style) { + $style_ss = $style->attributes($namespaces['ss']); + $styleID = (string) $style_ss['ID']; +// echo 'Style ID = '.$styleID.'
'; + $this->styles[$styleID] = (isset($this->styles['Default'])) ? $this->styles['Default'] : array(); + foreach ($style as $styleType => $styleData) { + $styleAttributes = $styleData->attributes($namespaces['ss']); +// echo $styleType.'
'; + switch ($styleType) { + case 'Alignment': + foreach ($styleAttributes as $styleAttributeKey => $styleAttributeValue) { +// echo $styleAttributeKey.' = '.$styleAttributeValue.'
'; + $styleAttributeValue = (string) $styleAttributeValue; + switch ($styleAttributeKey) { + case 'Vertical': + if (self::identifyFixedStyleValue($verticalAlignmentStyles, $styleAttributeValue)) { + $this->styles[$styleID]['alignment']['vertical'] = $styleAttributeValue; + } + break; + case 'Horizontal': + if (self::identifyFixedStyleValue($horizontalAlignmentStyles, $styleAttributeValue)) { + $this->styles[$styleID]['alignment']['horizontal'] = $styleAttributeValue; + } + break; + case 'WrapText': + $this->styles[$styleID]['alignment']['wrap'] = true; + break; + } + } + break; + case 'Borders': + foreach ($styleData->Border as $borderStyle) { + $borderAttributes = $borderStyle->attributes($namespaces['ss']); + $thisBorder = array(); + foreach ($borderAttributes as $borderStyleKey => $borderStyleValue) { +// echo $borderStyleKey.' = '.$borderStyleValue.'
'; + switch ($borderStyleKey) { + case 'LineStyle': + $thisBorder['style'] = PHPExcel_Style_Border::BORDER_MEDIUM; +// $thisBorder['style'] = $borderStyleValue; + break; + case 'Weight': +// $thisBorder['style'] = $borderStyleValue; + break; + case 'Position': + $borderPosition = strtolower($borderStyleValue); + break; + case 'Color': + $borderColour = substr($borderStyleValue, 1); + $thisBorder['color']['rgb'] = $borderColour; + break; + } + } + if (!empty($thisBorder)) { + if (($borderPosition == 'left') || ($borderPosition == 'right') || ($borderPosition == 'top') || ($borderPosition == 'bottom')) { + $this->styles[$styleID]['borders'][$borderPosition] = $thisBorder; + } + } + } + break; + case 'Font': + foreach ($styleAttributes as $styleAttributeKey => $styleAttributeValue) { +// echo $styleAttributeKey.' = '.$styleAttributeValue.'
'; + $styleAttributeValue = (string) $styleAttributeValue; + switch ($styleAttributeKey) { + case 'FontName': + $this->styles[$styleID]['font']['name'] = $styleAttributeValue; + break; + case 'Size': + $this->styles[$styleID]['font']['size'] = $styleAttributeValue; + break; + case 'Color': + $this->styles[$styleID]['font']['color']['rgb'] = substr($styleAttributeValue, 1); + break; + case 'Bold': + $this->styles[$styleID]['font']['bold'] = true; + break; + case 'Italic': + $this->styles[$styleID]['font']['italic'] = true; + break; + case 'Underline': + if (self::identifyFixedStyleValue($underlineStyles, $styleAttributeValue)) { + $this->styles[$styleID]['font']['underline'] = $styleAttributeValue; + } + break; + } + } + break; + case 'Interior': + foreach ($styleAttributes as $styleAttributeKey => $styleAttributeValue) { +// echo $styleAttributeKey.' = '.$styleAttributeValue.'
'; + switch ($styleAttributeKey) { + case 'Color': + $this->styles[$styleID]['fill']['color']['rgb'] = substr($styleAttributeValue, 1); + break; + } + } + break; + case 'NumberFormat': + foreach ($styleAttributes as $styleAttributeKey => $styleAttributeValue) { +// echo $styleAttributeKey.' = '.$styleAttributeValue.'
'; + $styleAttributeValue = str_replace($fromFormats, $toFormats, $styleAttributeValue); + switch ($styleAttributeValue) { + case 'Short Date': + $styleAttributeValue = 'dd/mm/yyyy'; + break; + } + if ($styleAttributeValue > '') { + $this->styles[$styleID]['numberformat']['code'] = $styleAttributeValue; + } + } + break; + case 'Protection': + foreach ($styleAttributes as $styleAttributeKey => $styleAttributeValue) { +// echo $styleAttributeKey.' = '.$styleAttributeValue.'
'; + } + break; + } + } +// print_r($this->styles[$styleID]); +// echo '
'; + } +// echo '
'; + + $worksheetID = 0; + $xml_ss = $xml->children($namespaces['ss']); + + foreach ($xml_ss->Worksheet as $worksheet) { + $worksheet_ss = $worksheet->attributes($namespaces['ss']); + + if ((isset($this->loadSheetsOnly)) && (isset($worksheet_ss['Name'])) && + (!in_array($worksheet_ss['Name'], $this->loadSheetsOnly))) { + continue; + } + +// echo '

Worksheet: ', $worksheet_ss['Name'],'

'; +// + // Create new Worksheet + $objPHPExcel->createSheet(); + $objPHPExcel->setActiveSheetIndex($worksheetID); + if (isset($worksheet_ss['Name'])) { + $worksheetName = self::convertStringEncoding((string) $worksheet_ss['Name'], $this->charSet); + // Use false for $updateFormulaCellReferences to prevent adjustment of worksheet references in + // formula cells... during the load, all formulae should be correct, and we're simply bringing + // the worksheet name in line with the formula, not the reverse + $objPHPExcel->getActiveSheet()->setTitle($worksheetName, false); + } + + $columnID = 'A'; + if (isset($worksheet->Table->Column)) { + foreach ($worksheet->Table->Column as $columnData) { + $columnData_ss = $columnData->attributes($namespaces['ss']); + if (isset($columnData_ss['Index'])) { + $columnID = PHPExcel_Cell::stringFromColumnIndex($columnData_ss['Index']-1); + } + if (isset($columnData_ss['Width'])) { + $columnWidth = $columnData_ss['Width']; +// echo 'Setting column width for '.$columnID.' to '.$columnWidth.'
'; + $objPHPExcel->getActiveSheet()->getColumnDimension($columnID)->setWidth($columnWidth / 5.4); + } + ++$columnID; + } + } + + $rowID = 1; + if (isset($worksheet->Table->Row)) { + $additionalMergedCells = 0; + foreach ($worksheet->Table->Row as $rowData) { + $rowHasData = false; + $row_ss = $rowData->attributes($namespaces['ss']); + if (isset($row_ss['Index'])) { + $rowID = (integer) $row_ss['Index']; + } +// echo 'Row '.$rowID.'
'; + + $columnID = 'A'; + foreach ($rowData->Cell as $cell) { + $cell_ss = $cell->attributes($namespaces['ss']); + if (isset($cell_ss['Index'])) { + $columnID = PHPExcel_Cell::stringFromColumnIndex($cell_ss['Index']-1); + } + $cellRange = $columnID.$rowID; + + if ($this->getReadFilter() !== null) { + if (!$this->getReadFilter()->readCell($columnID, $rowID, $worksheetName)) { + continue; + } + } + + if ((isset($cell_ss['MergeAcross'])) || (isset($cell_ss['MergeDown']))) { + $columnTo = $columnID; + if (isset($cell_ss['MergeAcross'])) { + $additionalMergedCells += (int)$cell_ss['MergeAcross']; + $columnTo = PHPExcel_Cell::stringFromColumnIndex(PHPExcel_Cell::columnIndexFromString($columnID) + $cell_ss['MergeAcross'] -1); + } + $rowTo = $rowID; + if (isset($cell_ss['MergeDown'])) { + $rowTo = $rowTo + $cell_ss['MergeDown']; + } + $cellRange .= ':'.$columnTo.$rowTo; + $objPHPExcel->getActiveSheet()->mergeCells($cellRange); + } + + $cellIsSet = $hasCalculatedValue = false; + $cellDataFormula = ''; + if (isset($cell_ss['Formula'])) { + $cellDataFormula = $cell_ss['Formula']; + // added this as a check for array formulas + if (isset($cell_ss['ArrayRange'])) { + $cellDataCSEFormula = $cell_ss['ArrayRange']; +// echo "found an array formula at ".$columnID.$rowID."
"; + } + $hasCalculatedValue = true; + } + if (isset($cell->Data)) { + $cellValue = $cellData = $cell->Data; + $type = PHPExcel_Cell_DataType::TYPE_NULL; + $cellData_ss = $cellData->attributes($namespaces['ss']); + if (isset($cellData_ss['Type'])) { + $cellDataType = $cellData_ss['Type']; + switch ($cellDataType) { + /* + const TYPE_STRING = 's'; + const TYPE_FORMULA = 'f'; + const TYPE_NUMERIC = 'n'; + const TYPE_BOOL = 'b'; + const TYPE_NULL = 'null'; + const TYPE_INLINE = 'inlineStr'; + const TYPE_ERROR = 'e'; + */ + case 'String': + $cellValue = self::convertStringEncoding($cellValue, $this->charSet); + $type = PHPExcel_Cell_DataType::TYPE_STRING; + break; + case 'Number': + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $cellValue = (float) $cellValue; + if (floor($cellValue) == $cellValue) { + $cellValue = (integer) $cellValue; + } + break; + case 'Boolean': + $type = PHPExcel_Cell_DataType::TYPE_BOOL; + $cellValue = ($cellValue != 0); + break; + case 'DateTime': + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $cellValue = PHPExcel_Shared_Date::PHPToExcel(strtotime($cellValue)); + break; + case 'Error': + $type = PHPExcel_Cell_DataType::TYPE_ERROR; + break; + } + } + + if ($hasCalculatedValue) { +// echo 'FORMULA
'; + $type = PHPExcel_Cell_DataType::TYPE_FORMULA; + $columnNumber = PHPExcel_Cell::columnIndexFromString($columnID); + if (substr($cellDataFormula, 0, 3) == 'of:') { + $cellDataFormula = substr($cellDataFormula, 3); +// echo 'Before: ', $cellDataFormula,'
'; + $temp = explode('"', $cellDataFormula); + $key = false; + foreach ($temp as &$value) { + // Only replace in alternate array entries (i.e. non-quoted blocks) + if ($key = !$key) { + $value = str_replace(array('[.', '.', ']'), '', $value); + } + } + } else { + // Convert R1C1 style references to A1 style references (but only when not quoted) +// echo 'Before: ', $cellDataFormula,'
'; + $temp = explode('"', $cellDataFormula); + $key = false; + foreach ($temp as &$value) { + // Only replace in alternate array entries (i.e. non-quoted blocks) + if ($key = !$key) { + preg_match_all('/(R(\[?-?\d*\]?))(C(\[?-?\d*\]?))/', $value, $cellReferences, PREG_SET_ORDER + PREG_OFFSET_CAPTURE); + // Reverse the matches array, otherwise all our offsets will become incorrect if we modify our way + // through the formula from left to right. Reversing means that we work right to left.through + // the formula + $cellReferences = array_reverse($cellReferences); + // Loop through each R1C1 style reference in turn, converting it to its A1 style equivalent, + // then modify the formula to use that new reference + foreach ($cellReferences as $cellReference) { + $rowReference = $cellReference[2][0]; + // Empty R reference is the current row + if ($rowReference == '') { + $rowReference = $rowID; + } + // Bracketed R references are relative to the current row + if ($rowReference{0} == '[') { + $rowReference = $rowID + trim($rowReference, '[]'); + } + $columnReference = $cellReference[4][0]; + // Empty C reference is the current column + if ($columnReference == '') { + $columnReference = $columnNumber; + } + // Bracketed C references are relative to the current column + if ($columnReference{0} == '[') { + $columnReference = $columnNumber + trim($columnReference, '[]'); + } + $A1CellReference = PHPExcel_Cell::stringFromColumnIndex($columnReference-1).$rowReference; + $value = substr_replace($value, $A1CellReference, $cellReference[0][1], strlen($cellReference[0][0])); + } + } + } + } + unset($value); + // Then rebuild the formula string + $cellDataFormula = implode('"', $temp); +// echo 'After: ', $cellDataFormula,'
'; + } + +// echo 'Cell '.$columnID.$rowID.' is a '.$type.' with a value of '.(($hasCalculatedValue) ? $cellDataFormula : $cellValue).'
'; +// + $objPHPExcel->getActiveSheet()->getCell($columnID.$rowID)->setValueExplicit((($hasCalculatedValue) ? $cellDataFormula : $cellValue), $type); + if ($hasCalculatedValue) { +// echo 'Formula result is '.$cellValue.'
'; + $objPHPExcel->getActiveSheet()->getCell($columnID.$rowID)->setCalculatedValue($cellValue); + } + $cellIsSet = $rowHasData = true; + } + + if (isset($cell->Comment)) { +// echo 'comment found
'; + $commentAttributes = $cell->Comment->attributes($namespaces['ss']); + $author = 'unknown'; + if (isset($commentAttributes->Author)) { + $author = (string)$commentAttributes->Author; +// echo 'Author: ', $author,'
'; + } + $node = $cell->Comment->Data->asXML(); +// $annotation = str_replace('html:','',substr($node,49,-10)); +// echo $annotation,'
'; + $annotation = strip_tags($node); +// echo 'Annotation: ', $annotation,'
'; + $objPHPExcel->getActiveSheet()->getComment($columnID.$rowID)->setAuthor(self::convertStringEncoding($author, $this->charSet))->setText($this->parseRichText($annotation)); + } + + if (($cellIsSet) && (isset($cell_ss['StyleID']))) { + $style = (string) $cell_ss['StyleID']; +// echo 'Cell style for '.$columnID.$rowID.' is '.$style.'
'; + if ((isset($this->styles[$style])) && (!empty($this->styles[$style]))) { +// echo 'Cell '.$columnID.$rowID.'
'; +// print_r($this->styles[$style]); +// echo '
'; + if (!$objPHPExcel->getActiveSheet()->cellExists($columnID.$rowID)) { + $objPHPExcel->getActiveSheet()->getCell($columnID.$rowID)->setValue(null); + } + $objPHPExcel->getActiveSheet()->getStyle($cellRange)->applyFromArray($this->styles[$style]); + } + } + ++$columnID; + while ($additionalMergedCells > 0) { + ++$columnID; + $additionalMergedCells--; + } + } + + if ($rowHasData) { + if (isset($row_ss['StyleID'])) { + $rowStyle = $row_ss['StyleID']; + } + if (isset($row_ss['Height'])) { + $rowHeight = $row_ss['Height']; +// echo 'Setting row height to '.$rowHeight.'
'; + $objPHPExcel->getActiveSheet()->getRowDimension($rowID)->setRowHeight($rowHeight); + } + } + + ++$rowID; + } + } + ++$worksheetID; + } + + // Return + return $objPHPExcel; + } + + + protected static function convertStringEncoding($string, $charset) + { + if ($charset != 'UTF-8') { + return PHPExcel_Shared_String::ConvertEncoding($string, 'UTF-8', $charset); + } + return $string; + } + + + protected function parseRichText($is = '') + { + $value = new PHPExcel_RichText(); + + $value->createText(self::convertStringEncoding($is, $this->charSet)); + + return $value; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007.php new file mode 100644 index 0000000..1932df4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007.php @@ -0,0 +1,2051 @@ +readFilter = new PHPExcel_Reader_DefaultReadFilter(); + $this->referenceHelper = PHPExcel_ReferenceHelper::getInstance(); + } + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFilename + * @return boolean + * @throws PHPExcel_Reader_Exception + */ + public function canRead($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $zipClass = PHPExcel_Settings::getZipClass(); + + // Check if zip class exists +// if (!class_exists($zipClass, false)) { +// throw new PHPExcel_Reader_Exception($zipClass . " library is not enabled"); +// } + + $xl = false; + // Load file + $zip = new $zipClass; + if ($zip->open($pFilename) === true) { + // check if it is an OOXML archive + $rels = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "_rels/.rels")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + if ($rels !== false) { + foreach ($rels->Relationship as $rel) { + switch ($rel["Type"]) { + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument": + if (basename($rel["Target"]) == 'workbook.xml') { + $xl = true; + } + break; + + } + } + } + $zip->close(); + } + + return $xl; + } + + + /** + * Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetNames($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetNames = array(); + + $zipClass = PHPExcel_Settings::getZipClass(); + + $zip = new $zipClass; + $zip->open($pFilename); + + // The files we're looking at here are small enough that simpleXML is more efficient than XMLReader + $rels = simplexml_load_string( + $this->securityScan($this->getFromZipArchive($zip, "_rels/.rels"), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()) + ); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($rels->Relationship as $rel) { + switch ($rel["Type"]) { + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument": + $xmlWorkbook = simplexml_load_string( + $this->securityScan($this->getFromZipArchive($zip, "{$rel['Target']}"), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()) + ); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + + if ($xmlWorkbook->sheets) { + foreach ($xmlWorkbook->sheets->sheet as $eleSheet) { + // Check if sheet should be skipped + $worksheetNames[] = (string) $eleSheet["name"]; + } + } + } + } + + $zip->close(); + + return $worksheetNames; + } + + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetInfo = array(); + + $zipClass = PHPExcel_Settings::getZipClass(); + + $zip = new $zipClass; + $zip->open($pFilename); + + $rels = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "_rels/.rels")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($rels->Relationship as $rel) { + if ($rel["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument") { + $dir = dirname($rel["Target"]); + $relsWorkbook = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "$dir/_rels/" . basename($rel["Target"]) . ".rels")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $relsWorkbook->registerXPathNamespace("rel", "http://schemas.openxmlformats.org/package/2006/relationships"); + + $worksheets = array(); + foreach ($relsWorkbook->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet") { + $worksheets[(string) $ele["Id"]] = $ele["Target"]; + } + } + + $xmlWorkbook = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "{$rel['Target']}")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + if ($xmlWorkbook->sheets) { + $dir = dirname($rel["Target"]); + foreach ($xmlWorkbook->sheets->sheet as $eleSheet) { + $tmpInfo = array( + 'worksheetName' => (string) $eleSheet["name"], + 'lastColumnLetter' => 'A', + 'lastColumnIndex' => 0, + 'totalRows' => 0, + 'totalColumns' => 0, + ); + + $fileWorksheet = $worksheets[(string) self::getArrayItem($eleSheet->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"), "id")]; + + $xml = new XMLReader(); + $res = $xml->xml($this->securityScanFile('zip://'.PHPExcel_Shared_File::realpath($pFilename).'#'."$dir/$fileWorksheet"), null, PHPExcel_Settings::getLibXmlLoaderOptions()); + $xml->setParserProperty(2, true); + + $currCells = 0; + while ($xml->read()) { + if ($xml->name == 'row' && $xml->nodeType == XMLReader::ELEMENT) { + $row = $xml->getAttribute('r'); + $tmpInfo['totalRows'] = $row; + $tmpInfo['totalColumns'] = max($tmpInfo['totalColumns'], $currCells); + $currCells = 0; + } elseif ($xml->name == 'c' && $xml->nodeType == XMLReader::ELEMENT) { + $currCells++; + } + } + $tmpInfo['totalColumns'] = max($tmpInfo['totalColumns'], $currCells); + $xml->close(); + + $tmpInfo['lastColumnIndex'] = $tmpInfo['totalColumns'] - 1; + $tmpInfo['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($tmpInfo['lastColumnIndex']); + + $worksheetInfo[] = $tmpInfo; + } + } + } + } + + $zip->close(); + + return $worksheetInfo; + } + + private static function castToBoolean($c) + { +// echo 'Initial Cast to Boolean', PHP_EOL; + $value = isset($c->v) ? (string) $c->v : null; + if ($value == '0') { + return false; + } elseif ($value == '1') { + return true; + } else { + return (bool)$c->v; + } + return $value; + } + + private static function castToError($c) + { +// echo 'Initial Cast to Error', PHP_EOL; + return isset($c->v) ? (string) $c->v : null; + } + + private static function castToString($c) + { +// echo 'Initial Cast to String, PHP_EOL; + return isset($c->v) ? (string) $c->v : null; + } + + private function castToFormula($c, $r, &$cellDataType, &$value, &$calculatedValue, &$sharedFormulas, $castBaseType) + { +// echo 'Formula', PHP_EOL; +// echo '$c->f is ', $c->f, PHP_EOL; + $cellDataType = 'f'; + $value = "={$c->f}"; + $calculatedValue = self::$castBaseType($c); + + // Shared formula? + if (isset($c->f['t']) && strtolower((string)$c->f['t']) == 'shared') { +// echo 'SHARED FORMULA', PHP_EOL; + $instance = (string)$c->f['si']; + +// echo 'Instance ID = ', $instance, PHP_EOL; +// +// echo 'Shared Formula Array:', PHP_EOL; +// print_r($sharedFormulas); + if (!isset($sharedFormulas[(string)$c->f['si']])) { +// echo 'SETTING NEW SHARED FORMULA', PHP_EOL; +// echo 'Master is ', $r, PHP_EOL; +// echo 'Formula is ', $value, PHP_EOL; + $sharedFormulas[$instance] = array('master' => $r, 'formula' => $value); +// echo 'New Shared Formula Array:', PHP_EOL; +// print_r($sharedFormulas); + } else { +// echo 'GETTING SHARED FORMULA', PHP_EOL; +// echo 'Master is ', $sharedFormulas[$instance]['master'], PHP_EOL; +// echo 'Formula is ', $sharedFormulas[$instance]['formula'], PHP_EOL; + $master = PHPExcel_Cell::coordinateFromString($sharedFormulas[$instance]['master']); + $current = PHPExcel_Cell::coordinateFromString($r); + + $difference = array(0, 0); + $difference[0] = PHPExcel_Cell::columnIndexFromString($current[0]) - PHPExcel_Cell::columnIndexFromString($master[0]); + $difference[1] = $current[1] - $master[1]; + + $value = $this->referenceHelper->updateFormulaReferences($sharedFormulas[$instance]['formula'], 'A1', $difference[0], $difference[1]); +// echo 'Adjusted Formula is ', $value, PHP_EOL; + } + } + } + + + private function getFromZipArchive($archive, $fileName = '') + { + // Root-relative paths + if (strpos($fileName, '//') !== false) { + $fileName = substr($fileName, strpos($fileName, '//') + 1); + } + $fileName = PHPExcel_Shared_File::realpath($fileName); + + // Sadly, some 3rd party xlsx generators don't use consistent case for filenaming + // so we need to load case-insensitively from the zip file + + // Apache POI fixes + $contents = $archive->getFromIndex( + $archive->locateName($fileName, ZIPARCHIVE::FL_NOCASE) + ); + if ($contents === false) { + $contents = $archive->getFromIndex( + $archive->locateName(substr($fileName, 1), ZIPARCHIVE::FL_NOCASE) + ); + } + + return $contents; + } + + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function load($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Initialisations + $excel = new PHPExcel; + $excel->removeSheetByIndex(0); + if (!$this->readDataOnly) { + $excel->removeCellStyleXfByIndex(0); // remove the default style + $excel->removeCellXfByIndex(0); // remove the default style + } + + $zipClass = PHPExcel_Settings::getZipClass(); + + $zip = new $zipClass; + $zip->open($pFilename); + + // Read the theme first, because we need the colour scheme when reading the styles + $wbRels = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "xl/_rels/workbook.xml.rels")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($wbRels->Relationship as $rel) { + switch ($rel["Type"]) { + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme": + $themeOrderArray = array('lt1', 'dk1', 'lt2', 'dk2'); + $themeOrderAdditional = count($themeOrderArray); + + $xmlTheme = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "xl/{$rel['Target']}")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + if (is_object($xmlTheme)) { + $xmlThemeName = $xmlTheme->attributes(); + $xmlTheme = $xmlTheme->children("http://schemas.openxmlformats.org/drawingml/2006/main"); + $themeName = (string)$xmlThemeName['name']; + + $colourScheme = $xmlTheme->themeElements->clrScheme->attributes(); + $colourSchemeName = (string)$colourScheme['name']; + $colourScheme = $xmlTheme->themeElements->clrScheme->children("http://schemas.openxmlformats.org/drawingml/2006/main"); + + $themeColours = array(); + foreach ($colourScheme as $k => $xmlColour) { + $themePos = array_search($k, $themeOrderArray); + if ($themePos === false) { + $themePos = $themeOrderAdditional++; + } + if (isset($xmlColour->sysClr)) { + $xmlColourData = $xmlColour->sysClr->attributes(); + $themeColours[$themePos] = $xmlColourData['lastClr']; + } elseif (isset($xmlColour->srgbClr)) { + $xmlColourData = $xmlColour->srgbClr->attributes(); + $themeColours[$themePos] = $xmlColourData['val']; + } + } + self::$theme = new PHPExcel_Reader_Excel2007_Theme($themeName, $colourSchemeName, $themeColours); + } + break; + } + } + + $rels = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "_rels/.rels")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($rels->Relationship as $rel) { + switch ($rel["Type"]) { + case "http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties": + $xmlCore = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "{$rel['Target']}")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + if (is_object($xmlCore)) { + $xmlCore->registerXPathNamespace("dc", "http://purl.org/dc/elements/1.1/"); + $xmlCore->registerXPathNamespace("dcterms", "http://purl.org/dc/terms/"); + $xmlCore->registerXPathNamespace("cp", "http://schemas.openxmlformats.org/package/2006/metadata/core-properties"); + $docProps = $excel->getProperties(); + $docProps->setCreator((string) self::getArrayItem($xmlCore->xpath("dc:creator"))); + $docProps->setLastModifiedBy((string) self::getArrayItem($xmlCore->xpath("cp:lastModifiedBy"))); + $docProps->setCreated(strtotime(self::getArrayItem($xmlCore->xpath("dcterms:created")))); //! respect xsi:type + $docProps->setModified(strtotime(self::getArrayItem($xmlCore->xpath("dcterms:modified")))); //! respect xsi:type + $docProps->setTitle((string) self::getArrayItem($xmlCore->xpath("dc:title"))); + $docProps->setDescription((string) self::getArrayItem($xmlCore->xpath("dc:description"))); + $docProps->setSubject((string) self::getArrayItem($xmlCore->xpath("dc:subject"))); + $docProps->setKeywords((string) self::getArrayItem($xmlCore->xpath("cp:keywords"))); + $docProps->setCategory((string) self::getArrayItem($xmlCore->xpath("cp:category"))); + } + break; + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties": + $xmlCore = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "{$rel['Target']}")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + if (is_object($xmlCore)) { + $docProps = $excel->getProperties(); + if (isset($xmlCore->Company)) { + $docProps->setCompany((string) $xmlCore->Company); + } + if (isset($xmlCore->Manager)) { + $docProps->setManager((string) $xmlCore->Manager); + } + } + break; + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties": + $xmlCore = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "{$rel['Target']}")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + if (is_object($xmlCore)) { + $docProps = $excel->getProperties(); + foreach ($xmlCore as $xmlProperty) { + $cellDataOfficeAttributes = $xmlProperty->attributes(); + if (isset($cellDataOfficeAttributes['name'])) { + $propertyName = (string) $cellDataOfficeAttributes['name']; + $cellDataOfficeChildren = $xmlProperty->children('http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes'); + $attributeType = $cellDataOfficeChildren->getName(); + $attributeValue = (string) $cellDataOfficeChildren->{$attributeType}; + $attributeValue = PHPExcel_DocumentProperties::convertProperty($attributeValue, $attributeType); + $attributeType = PHPExcel_DocumentProperties::convertPropertyType($attributeType); + $docProps->setCustomProperty($propertyName, $attributeValue, $attributeType); + } + } + } + break; + //Ribbon + case "http://schemas.microsoft.com/office/2006/relationships/ui/extensibility": + $customUI = $rel['Target']; + if (!is_null($customUI)) { + $this->readRibbon($excel, $customUI, $zip); + } + break; + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument": + $dir = dirname($rel["Target"]); + $relsWorkbook = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "$dir/_rels/" . basename($rel["Target"]) . ".rels")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $relsWorkbook->registerXPathNamespace("rel", "http://schemas.openxmlformats.org/package/2006/relationships"); + + $sharedStrings = array(); + $xpath = self::getArrayItem($relsWorkbook->xpath("rel:Relationship[@Type='http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings']")); + $xmlStrings = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "$dir/$xpath[Target]")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + if (isset($xmlStrings) && isset($xmlStrings->si)) { + foreach ($xmlStrings->si as $val) { + if (isset($val->t)) { + $sharedStrings[] = PHPExcel_Shared_String::ControlCharacterOOXML2PHP((string) $val->t); + } elseif (isset($val->r)) { + $sharedStrings[] = $this->parseRichText($val); + } + } + } + + $worksheets = array(); + $macros = $customUI = null; + foreach ($relsWorkbook->Relationship as $ele) { + switch ($ele['Type']) { + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet": + $worksheets[(string) $ele["Id"]] = $ele["Target"]; + break; + // a vbaProject ? (: some macros) + case "http://schemas.microsoft.com/office/2006/relationships/vbaProject": + $macros = $ele["Target"]; + break; + } + } + + if (!is_null($macros)) { + $macrosCode = $this->getFromZipArchive($zip, 'xl/vbaProject.bin');//vbaProject.bin always in 'xl' dir and always named vbaProject.bin + if ($macrosCode !== false) { + $excel->setMacrosCode($macrosCode); + $excel->setHasMacros(true); + //short-circuit : not reading vbaProject.bin.rel to get Signature =>allways vbaProjectSignature.bin in 'xl' dir + $Certificate = $this->getFromZipArchive($zip, 'xl/vbaProjectSignature.bin'); + if ($Certificate !== false) { + $excel->setMacrosCertificate($Certificate); + } + } + } + $styles = array(); + $cellStyles = array(); + $xpath = self::getArrayItem($relsWorkbook->xpath("rel:Relationship[@Type='http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles']")); + $xmlStyles = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "$dir/$xpath[Target]")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + + $numFmts = null; + if ($xmlStyles && $xmlStyles->numFmts[0]) { + $numFmts = $xmlStyles->numFmts[0]; + } + if (isset($numFmts) && ($numFmts !== null)) { + $numFmts->registerXPathNamespace("sml", "http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + } + if (!$this->readDataOnly && $xmlStyles) { + foreach ($xmlStyles->cellXfs->xf as $xf) { + $numFmt = PHPExcel_Style_NumberFormat::FORMAT_GENERAL; + if ($xf["numFmtId"]) { + if (isset($numFmts)) { + $tmpNumFmt = self::getArrayItem($numFmts->xpath("sml:numFmt[@numFmtId=$xf[numFmtId]]")); + + if (isset($tmpNumFmt["formatCode"])) { + $numFmt = (string) $tmpNumFmt["formatCode"]; + } + } + + // We shouldn't override any of the built-in MS Excel values (values below id 164) + // But there's a lot of naughty homebrew xlsx writers that do use "reserved" id values that aren't actually used + // So we make allowance for them rather than lose formatting masks + if ((int)$xf["numFmtId"] < 164 && PHPExcel_Style_NumberFormat::builtInFormatCode((int)$xf["numFmtId"]) !== '') { + $numFmt = PHPExcel_Style_NumberFormat::builtInFormatCode((int)$xf["numFmtId"]); + } + } + $quotePrefix = false; + if (isset($xf["quotePrefix"])) { + $quotePrefix = (boolean) $xf["quotePrefix"]; + } + + $style = (object) array( + "numFmt" => $numFmt, + "font" => $xmlStyles->fonts->font[intval($xf["fontId"])], + "fill" => $xmlStyles->fills->fill[intval($xf["fillId"])], + "border" => $xmlStyles->borders->border[intval($xf["borderId"])], + "alignment" => $xf->alignment, + "protection" => $xf->protection, + "quotePrefix" => $quotePrefix, + ); + $styles[] = $style; + + // add style to cellXf collection + $objStyle = new PHPExcel_Style; + self::readStyle($objStyle, $style); + $excel->addCellXf($objStyle); + } + + foreach ($xmlStyles->cellStyleXfs->xf as $xf) { + $numFmt = PHPExcel_Style_NumberFormat::FORMAT_GENERAL; + if ($numFmts && $xf["numFmtId"]) { + $tmpNumFmt = self::getArrayItem($numFmts->xpath("sml:numFmt[@numFmtId=$xf[numFmtId]]")); + if (isset($tmpNumFmt["formatCode"])) { + $numFmt = (string) $tmpNumFmt["formatCode"]; + } elseif ((int)$xf["numFmtId"] < 165) { + $numFmt = PHPExcel_Style_NumberFormat::builtInFormatCode((int)$xf["numFmtId"]); + } + } + + $cellStyle = (object) array( + "numFmt" => $numFmt, + "font" => $xmlStyles->fonts->font[intval($xf["fontId"])], + "fill" => $xmlStyles->fills->fill[intval($xf["fillId"])], + "border" => $xmlStyles->borders->border[intval($xf["borderId"])], + "alignment" => $xf->alignment, + "protection" => $xf->protection, + "quotePrefix" => $quotePrefix, + ); + $cellStyles[] = $cellStyle; + + // add style to cellStyleXf collection + $objStyle = new PHPExcel_Style; + self::readStyle($objStyle, $cellStyle); + $excel->addCellStyleXf($objStyle); + } + } + + $dxfs = array(); + if (!$this->readDataOnly && $xmlStyles) { + // Conditional Styles + if ($xmlStyles->dxfs) { + foreach ($xmlStyles->dxfs->dxf as $dxf) { + $style = new PHPExcel_Style(false, true); + self::readStyle($style, $dxf); + $dxfs[] = $style; + } + } + // Cell Styles + if ($xmlStyles->cellStyles) { + foreach ($xmlStyles->cellStyles->cellStyle as $cellStyle) { + if (intval($cellStyle['builtinId']) == 0) { + if (isset($cellStyles[intval($cellStyle['xfId'])])) { + // Set default style + $style = new PHPExcel_Style; + self::readStyle($style, $cellStyles[intval($cellStyle['xfId'])]); + + // normal style, currently not using it for anything + } + } + } + } + } + + $xmlWorkbook = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "{$rel['Target']}")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + + // Set base date + if ($xmlWorkbook->workbookPr) { + PHPExcel_Shared_Date::setExcelCalendar(PHPExcel_Shared_Date::CALENDAR_WINDOWS_1900); + if (isset($xmlWorkbook->workbookPr['date1904'])) { + if (self::boolean((string) $xmlWorkbook->workbookPr['date1904'])) { + PHPExcel_Shared_Date::setExcelCalendar(PHPExcel_Shared_Date::CALENDAR_MAC_1904); + } + } + } + + $sheetId = 0; // keep track of new sheet id in final workbook + $oldSheetId = -1; // keep track of old sheet id in final workbook + $countSkippedSheets = 0; // keep track of number of skipped sheets + $mapSheetId = array(); // mapping of sheet ids from old to new + + $charts = $chartDetails = array(); + + if ($xmlWorkbook->sheets) { + foreach ($xmlWorkbook->sheets->sheet as $eleSheet) { + ++$oldSheetId; + + // Check if sheet should be skipped + if (isset($this->loadSheetsOnly) && !in_array((string) $eleSheet["name"], $this->loadSheetsOnly)) { + ++$countSkippedSheets; + $mapSheetId[$oldSheetId] = null; + continue; + } + + // Map old sheet id in original workbook to new sheet id. + // They will differ if loadSheetsOnly() is being used + $mapSheetId[$oldSheetId] = $oldSheetId - $countSkippedSheets; + + // Load sheet + $docSheet = $excel->createSheet(); + // Use false for $updateFormulaCellReferences to prevent adjustment of worksheet + // references in formula cells... during the load, all formulae should be correct, + // and we're simply bringing the worksheet name in line with the formula, not the + // reverse + $docSheet->setTitle((string) $eleSheet["name"], false); + $fileWorksheet = $worksheets[(string) self::getArrayItem($eleSheet->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"), "id")]; + $xmlSheet = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "$dir/$fileWorksheet")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + + $sharedFormulas = array(); + + if (isset($eleSheet["state"]) && (string) $eleSheet["state"] != '') { + $docSheet->setSheetState((string) $eleSheet["state"]); + } + + if (isset($xmlSheet->sheetViews) && isset($xmlSheet->sheetViews->sheetView)) { + if (isset($xmlSheet->sheetViews->sheetView['zoomScale'])) { + $docSheet->getSheetView()->setZoomScale(intval($xmlSheet->sheetViews->sheetView['zoomScale'])); + } + if (isset($xmlSheet->sheetViews->sheetView['zoomScaleNormal'])) { + $docSheet->getSheetView()->setZoomScaleNormal(intval($xmlSheet->sheetViews->sheetView['zoomScaleNormal'])); + } + if (isset($xmlSheet->sheetViews->sheetView['view'])) { + $docSheet->getSheetView()->setView((string) $xmlSheet->sheetViews->sheetView['view']); + } + if (isset($xmlSheet->sheetViews->sheetView['showGridLines'])) { + $docSheet->setShowGridLines(self::boolean((string)$xmlSheet->sheetViews->sheetView['showGridLines'])); + } + if (isset($xmlSheet->sheetViews->sheetView['showRowColHeaders'])) { + $docSheet->setShowRowColHeaders(self::boolean((string)$xmlSheet->sheetViews->sheetView['showRowColHeaders'])); + } + if (isset($xmlSheet->sheetViews->sheetView['rightToLeft'])) { + $docSheet->setRightToLeft(self::boolean((string)$xmlSheet->sheetViews->sheetView['rightToLeft'])); + } + if (isset($xmlSheet->sheetViews->sheetView->pane)) { + if (isset($xmlSheet->sheetViews->sheetView->pane['topLeftCell'])) { + $docSheet->freezePane((string)$xmlSheet->sheetViews->sheetView->pane['topLeftCell']); + } else { + $xSplit = 0; + $ySplit = 0; + + if (isset($xmlSheet->sheetViews->sheetView->pane['xSplit'])) { + $xSplit = 1 + intval($xmlSheet->sheetViews->sheetView->pane['xSplit']); + } + + if (isset($xmlSheet->sheetViews->sheetView->pane['ySplit'])) { + $ySplit = 1 + intval($xmlSheet->sheetViews->sheetView->pane['ySplit']); + } + + $docSheet->freezePaneByColumnAndRow($xSplit, $ySplit); + } + } + + if (isset($xmlSheet->sheetViews->sheetView->selection)) { + if (isset($xmlSheet->sheetViews->sheetView->selection['sqref'])) { + $sqref = (string)$xmlSheet->sheetViews->sheetView->selection['sqref']; + $sqref = explode(' ', $sqref); + $sqref = $sqref[0]; + $docSheet->setSelectedCells($sqref); + } + } + } + + if (isset($xmlSheet->sheetPr) && isset($xmlSheet->sheetPr->tabColor)) { + if (isset($xmlSheet->sheetPr->tabColor['rgb'])) { + $docSheet->getTabColor()->setARGB((string)$xmlSheet->sheetPr->tabColor['rgb']); + } + } + if (isset($xmlSheet->sheetPr) && isset($xmlSheet->sheetPr['codeName'])) { + $docSheet->setCodeName((string) $xmlSheet->sheetPr['codeName']); + } + if (isset($xmlSheet->sheetPr) && isset($xmlSheet->sheetPr->outlinePr)) { + if (isset($xmlSheet->sheetPr->outlinePr['summaryRight']) && + !self::boolean((string) $xmlSheet->sheetPr->outlinePr['summaryRight'])) { + $docSheet->setShowSummaryRight(false); + } else { + $docSheet->setShowSummaryRight(true); + } + + if (isset($xmlSheet->sheetPr->outlinePr['summaryBelow']) && + !self::boolean((string) $xmlSheet->sheetPr->outlinePr['summaryBelow'])) { + $docSheet->setShowSummaryBelow(false); + } else { + $docSheet->setShowSummaryBelow(true); + } + } + + if (isset($xmlSheet->sheetPr) && isset($xmlSheet->sheetPr->pageSetUpPr)) { + if (isset($xmlSheet->sheetPr->pageSetUpPr['fitToPage']) && + !self::boolean((string) $xmlSheet->sheetPr->pageSetUpPr['fitToPage'])) { + $docSheet->getPageSetup()->setFitToPage(false); + } else { + $docSheet->getPageSetup()->setFitToPage(true); + } + } + + if (isset($xmlSheet->sheetFormatPr)) { + if (isset($xmlSheet->sheetFormatPr['customHeight']) && + self::boolean((string) $xmlSheet->sheetFormatPr['customHeight']) && + isset($xmlSheet->sheetFormatPr['defaultRowHeight'])) { + $docSheet->getDefaultRowDimension()->setRowHeight((float)$xmlSheet->sheetFormatPr['defaultRowHeight']); + } + if (isset($xmlSheet->sheetFormatPr['defaultColWidth'])) { + $docSheet->getDefaultColumnDimension()->setWidth((float)$xmlSheet->sheetFormatPr['defaultColWidth']); + } + if (isset($xmlSheet->sheetFormatPr['zeroHeight']) && + ((string)$xmlSheet->sheetFormatPr['zeroHeight'] == '1')) { + $docSheet->getDefaultRowDimension()->setZeroHeight(true); + } + } + + if (isset($xmlSheet->cols) && !$this->readDataOnly) { + foreach ($xmlSheet->cols->col as $col) { + for ($i = intval($col["min"]) - 1; $i < intval($col["max"]); ++$i) { + if ($col["style"] && !$this->readDataOnly) { + $docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setXfIndex(intval($col["style"])); + } + if (self::boolean($col["bestFit"])) { + //$docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setAutoSize(true); + } + if (self::boolean($col["hidden"])) { + // echo PHPExcel_Cell::stringFromColumnIndex($i), ': HIDDEN COLUMN',PHP_EOL; + $docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setVisible(false); + } + if (self::boolean($col["collapsed"])) { + $docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setCollapsed(true); + } + if ($col["outlineLevel"] > 0) { + $docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setOutlineLevel(intval($col["outlineLevel"])); + } + $docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setWidth(floatval($col["width"])); + + if (intval($col["max"]) == 16384) { + break; + } + } + } + } + + if (isset($xmlSheet->printOptions) && !$this->readDataOnly) { + if (self::boolean((string) $xmlSheet->printOptions['gridLinesSet'])) { + $docSheet->setShowGridlines(true); + } + if (self::boolean((string) $xmlSheet->printOptions['gridLines'])) { + $docSheet->setPrintGridlines(true); + } + if (self::boolean((string) $xmlSheet->printOptions['horizontalCentered'])) { + $docSheet->getPageSetup()->setHorizontalCentered(true); + } + if (self::boolean((string) $xmlSheet->printOptions['verticalCentered'])) { + $docSheet->getPageSetup()->setVerticalCentered(true); + } + } + + if ($xmlSheet && $xmlSheet->sheetData && $xmlSheet->sheetData->row) { + foreach ($xmlSheet->sheetData->row as $row) { + if ($row["ht"] && !$this->readDataOnly) { + $docSheet->getRowDimension(intval($row["r"]))->setRowHeight(floatval($row["ht"])); + } + if (self::boolean($row["hidden"]) && !$this->readDataOnly) { + $docSheet->getRowDimension(intval($row["r"]))->setVisible(false); + } + if (self::boolean($row["collapsed"])) { + $docSheet->getRowDimension(intval($row["r"]))->setCollapsed(true); + } + if ($row["outlineLevel"] > 0) { + $docSheet->getRowDimension(intval($row["r"]))->setOutlineLevel(intval($row["outlineLevel"])); + } + if ($row["s"] && !$this->readDataOnly) { + $docSheet->getRowDimension(intval($row["r"]))->setXfIndex(intval($row["s"])); + } + + foreach ($row->c as $c) { + $r = (string) $c["r"]; + $cellDataType = (string) $c["t"]; + $value = null; + $calculatedValue = null; + + // Read cell? + if ($this->getReadFilter() !== null) { + $coordinates = PHPExcel_Cell::coordinateFromString($r); + + if (!$this->getReadFilter()->readCell($coordinates[0], $coordinates[1], $docSheet->getTitle())) { + continue; + } + } + + // echo 'Reading cell ', $coordinates[0], $coordinates[1], PHP_EOL; + // print_r($c); + // echo PHP_EOL; + // echo 'Cell Data Type is ', $cellDataType, ': '; + // + // Read cell! + switch ($cellDataType) { + case "s": + // echo 'String', PHP_EOL; + if ((string)$c->v != '') { + $value = $sharedStrings[intval($c->v)]; + + if ($value instanceof PHPExcel_RichText) { + $value = clone $value; + } + } else { + $value = ''; + } + break; + case "b": + // echo 'Boolean', PHP_EOL; + if (!isset($c->f)) { + $value = self::castToBoolean($c); + } else { + // Formula + $this->castToFormula($c, $r, $cellDataType, $value, $calculatedValue, $sharedFormulas, 'castToBoolean'); + if (isset($c->f['t'])) { + $att = array(); + $att = $c->f; + $docSheet->getCell($r)->setFormulaAttributes($att); + } + // echo '$calculatedValue = ', $calculatedValue, PHP_EOL; + } + break; + case "inlineStr": +// echo 'Inline String', PHP_EOL; + if (isset($c->f)) { + $this->castToFormula($c, $r, $cellDataType, $value, $calculatedValue, $sharedFormulas, 'castToError'); + } else { + $value = $this->parseRichText($c->is); + } + break; + case "e": + // echo 'Error', PHP_EOL; + if (!isset($c->f)) { + $value = self::castToError($c); + } else { + // Formula + $this->castToFormula($c, $r, $cellDataType, $value, $calculatedValue, $sharedFormulas, 'castToError'); + // echo '$calculatedValue = ', $calculatedValue, PHP_EOL; + } + break; + default: +// echo 'Default', PHP_EOL; + if (!isset($c->f)) { + // echo 'Not a Formula', PHP_EOL; + $value = self::castToString($c); + } else { + // echo 'Treat as Formula', PHP_EOL; + // Formula + $this->castToFormula($c, $r, $cellDataType, $value, $calculatedValue, $sharedFormulas, 'castToString'); + // echo '$calculatedValue = ', $calculatedValue, PHP_EOL; + } + break; + } + // echo 'Value is ', $value, PHP_EOL; + + // Check for numeric values + if (is_numeric($value) && $cellDataType != 's') { + if ($value == (int)$value) { + $value = (int)$value; + } elseif ($value == (float)$value) { + $value = (float)$value; + } elseif ($value == (double)$value) { + $value = (double)$value; + } + } + + // Rich text? + if ($value instanceof PHPExcel_RichText && $this->readDataOnly) { + $value = $value->getPlainText(); + } + + $cell = $docSheet->getCell($r); + // Assign value + if ($cellDataType != '') { + $cell->setValueExplicit($value, $cellDataType); + } else { + $cell->setValue($value); + } + if ($calculatedValue !== null) { + $cell->setCalculatedValue($calculatedValue); + } + + // Style information? + if ($c["s"] && !$this->readDataOnly) { + // no style index means 0, it seems + $cell->setXfIndex(isset($styles[intval($c["s"])]) ? + intval($c["s"]) : 0); + } + } + } + } + + $conditionals = array(); + if (!$this->readDataOnly && $xmlSheet && $xmlSheet->conditionalFormatting) { + foreach ($xmlSheet->conditionalFormatting as $conditional) { + foreach ($conditional->cfRule as $cfRule) { + if (((string)$cfRule["type"] == PHPExcel_Style_Conditional::CONDITION_NONE || (string)$cfRule["type"] == PHPExcel_Style_Conditional::CONDITION_CELLIS || (string)$cfRule["type"] == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT || (string)$cfRule["type"] == PHPExcel_Style_Conditional::CONDITION_EXPRESSION) && isset($dxfs[intval($cfRule["dxfId"])])) { + $conditionals[(string) $conditional["sqref"]][intval($cfRule["priority"])] = $cfRule; + } + } + } + + foreach ($conditionals as $ref => $cfRules) { + ksort($cfRules); + $conditionalStyles = array(); + foreach ($cfRules as $cfRule) { + $objConditional = new PHPExcel_Style_Conditional(); + $objConditional->setConditionType((string)$cfRule["type"]); + $objConditional->setOperatorType((string)$cfRule["operator"]); + + if ((string)$cfRule["text"] != '') { + $objConditional->setText((string)$cfRule["text"]); + } + + if (count($cfRule->formula) > 1) { + foreach ($cfRule->formula as $formula) { + $objConditional->addCondition((string)$formula); + } + } else { + $objConditional->addCondition((string)$cfRule->formula); + } + $objConditional->setStyle(clone $dxfs[intval($cfRule["dxfId"])]); + $conditionalStyles[] = $objConditional; + } + + // Extract all cell references in $ref + $cellBlocks = explode(' ', str_replace('$', '', strtoupper($ref))); + foreach ($cellBlocks as $cellBlock) { + $docSheet->getStyle($cellBlock)->setConditionalStyles($conditionalStyles); + } + } + } + + $aKeys = array("sheet", "objects", "scenarios", "formatCells", "formatColumns", "formatRows", "insertColumns", "insertRows", "insertHyperlinks", "deleteColumns", "deleteRows", "selectLockedCells", "sort", "autoFilter", "pivotTables", "selectUnlockedCells"); + if (!$this->readDataOnly && $xmlSheet && $xmlSheet->sheetProtection) { + foreach ($aKeys as $key) { + $method = "set" . ucfirst($key); + $docSheet->getProtection()->$method(self::boolean((string) $xmlSheet->sheetProtection[$key])); + } + } + + if (!$this->readDataOnly && $xmlSheet && $xmlSheet->sheetProtection) { + $docSheet->getProtection()->setPassword((string) $xmlSheet->sheetProtection["password"], true); + if ($xmlSheet->protectedRanges->protectedRange) { + foreach ($xmlSheet->protectedRanges->protectedRange as $protectedRange) { + $docSheet->protectCells((string) $protectedRange["sqref"], (string) $protectedRange["password"], true); + } + } + } + + if ($xmlSheet && $xmlSheet->autoFilter && !$this->readDataOnly) { + $autoFilterRange = (string) $xmlSheet->autoFilter["ref"]; + if (strpos($autoFilterRange, ':') !== false) { + $autoFilter = $docSheet->getAutoFilter(); + $autoFilter->setRange($autoFilterRange); + + foreach ($xmlSheet->autoFilter->filterColumn as $filterColumn) { + $column = $autoFilter->getColumnByOffset((integer) $filterColumn["colId"]); + // Check for standard filters + if ($filterColumn->filters) { + $column->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER); + $filters = $filterColumn->filters; + if ((isset($filters["blank"])) && ($filters["blank"] == 1)) { + // Operator is undefined, but always treated as EQUAL + $column->createRule()->setRule(null, '')->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_FILTER); + } + // Standard filters are always an OR join, so no join rule needs to be set + // Entries can be either filter elements + foreach ($filters->filter as $filterRule) { + // Operator is undefined, but always treated as EQUAL + $column->createRule()->setRule(null, (string) $filterRule["val"])->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_FILTER); + } + // Or Date Group elements + foreach ($filters->dateGroupItem as $dateGroupItem) { + $column->createRule()->setRule( + // Operator is undefined, but always treated as EQUAL + null, + array( + 'year' => (string) $dateGroupItem["year"], + 'month' => (string) $dateGroupItem["month"], + 'day' => (string) $dateGroupItem["day"], + 'hour' => (string) $dateGroupItem["hour"], + 'minute' => (string) $dateGroupItem["minute"], + 'second' => (string) $dateGroupItem["second"], + ), + (string) $dateGroupItem["dateTimeGrouping"] + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP); + } + } + // Check for custom filters + if ($filterColumn->customFilters) { + $column->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER); + $customFilters = $filterColumn->customFilters; + // Custom filters can an AND or an OR join; + // and there should only ever be one or two entries + if ((isset($customFilters["and"])) && ($customFilters["and"] == 1)) { + $column->setJoin(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND); + } + foreach ($customFilters->customFilter as $filterRule) { + $column->createRule()->setRule( + (string) $filterRule["operator"], + (string) $filterRule["val"] + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); + } + } + // Check for dynamic filters + if ($filterColumn->dynamicFilter) { + $column->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_DYNAMICFILTER); + // We should only ever have one dynamic filter + foreach ($filterColumn->dynamicFilter as $filterRule) { + $column->createRule()->setRule( + // Operator is undefined, but always treated as EQUAL + null, + (string) $filterRule["val"], + (string) $filterRule["type"] + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMICFILTER); + if (isset($filterRule["val"])) { + $column->setAttribute('val', (string) $filterRule["val"]); + } + if (isset($filterRule["maxVal"])) { + $column->setAttribute('maxVal', (string) $filterRule["maxVal"]); + } + } + } + // Check for dynamic filters + if ($filterColumn->top10) { + $column->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_TOPTENFILTER); + // We should only ever have one top10 filter + foreach ($filterColumn->top10 as $filterRule) { + $column->createRule()->setRule( + (((isset($filterRule["percent"])) && ($filterRule["percent"] == 1)) + ? PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT + : PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE + ), + (string) $filterRule["val"], + (((isset($filterRule["top"])) && ($filterRule["top"] == 1)) + ? PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP + : PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM + ) + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_TOPTENFILTER); + } + } + } + } + } + + if ($xmlSheet && $xmlSheet->mergeCells && $xmlSheet->mergeCells->mergeCell && !$this->readDataOnly) { + foreach ($xmlSheet->mergeCells->mergeCell as $mergeCell) { + $mergeRef = (string) $mergeCell["ref"]; + if (strpos($mergeRef, ':') !== false) { + $docSheet->mergeCells((string) $mergeCell["ref"]); + } + } + } + + if ($xmlSheet && $xmlSheet->pageMargins && !$this->readDataOnly) { + $docPageMargins = $docSheet->getPageMargins(); + $docPageMargins->setLeft(floatval($xmlSheet->pageMargins["left"])); + $docPageMargins->setRight(floatval($xmlSheet->pageMargins["right"])); + $docPageMargins->setTop(floatval($xmlSheet->pageMargins["top"])); + $docPageMargins->setBottom(floatval($xmlSheet->pageMargins["bottom"])); + $docPageMargins->setHeader(floatval($xmlSheet->pageMargins["header"])); + $docPageMargins->setFooter(floatval($xmlSheet->pageMargins["footer"])); + } + + if ($xmlSheet && $xmlSheet->pageSetup && !$this->readDataOnly) { + $docPageSetup = $docSheet->getPageSetup(); + + if (isset($xmlSheet->pageSetup["orientation"])) { + $docPageSetup->setOrientation((string) $xmlSheet->pageSetup["orientation"]); + } + if (isset($xmlSheet->pageSetup["paperSize"])) { + $docPageSetup->setPaperSize(intval($xmlSheet->pageSetup["paperSize"])); + } + if (isset($xmlSheet->pageSetup["scale"])) { + $docPageSetup->setScale(intval($xmlSheet->pageSetup["scale"]), false); + } + if (isset($xmlSheet->pageSetup["fitToHeight"]) && intval($xmlSheet->pageSetup["fitToHeight"]) >= 0) { + $docPageSetup->setFitToHeight(intval($xmlSheet->pageSetup["fitToHeight"]), false); + } + if (isset($xmlSheet->pageSetup["fitToWidth"]) && intval($xmlSheet->pageSetup["fitToWidth"]) >= 0) { + $docPageSetup->setFitToWidth(intval($xmlSheet->pageSetup["fitToWidth"]), false); + } + if (isset($xmlSheet->pageSetup["firstPageNumber"]) && isset($xmlSheet->pageSetup["useFirstPageNumber"]) && + self::boolean((string) $xmlSheet->pageSetup["useFirstPageNumber"])) { + $docPageSetup->setFirstPageNumber(intval($xmlSheet->pageSetup["firstPageNumber"])); + } + } + + if ($xmlSheet && $xmlSheet->headerFooter && !$this->readDataOnly) { + $docHeaderFooter = $docSheet->getHeaderFooter(); + + if (isset($xmlSheet->headerFooter["differentOddEven"]) && + self::boolean((string)$xmlSheet->headerFooter["differentOddEven"])) { + $docHeaderFooter->setDifferentOddEven(true); + } else { + $docHeaderFooter->setDifferentOddEven(false); + } + if (isset($xmlSheet->headerFooter["differentFirst"]) && + self::boolean((string)$xmlSheet->headerFooter["differentFirst"])) { + $docHeaderFooter->setDifferentFirst(true); + } else { + $docHeaderFooter->setDifferentFirst(false); + } + if (isset($xmlSheet->headerFooter["scaleWithDoc"]) && + !self::boolean((string)$xmlSheet->headerFooter["scaleWithDoc"])) { + $docHeaderFooter->setScaleWithDocument(false); + } else { + $docHeaderFooter->setScaleWithDocument(true); + } + if (isset($xmlSheet->headerFooter["alignWithMargins"]) && + !self::boolean((string)$xmlSheet->headerFooter["alignWithMargins"])) { + $docHeaderFooter->setAlignWithMargins(false); + } else { + $docHeaderFooter->setAlignWithMargins(true); + } + + $docHeaderFooter->setOddHeader((string) $xmlSheet->headerFooter->oddHeader); + $docHeaderFooter->setOddFooter((string) $xmlSheet->headerFooter->oddFooter); + $docHeaderFooter->setEvenHeader((string) $xmlSheet->headerFooter->evenHeader); + $docHeaderFooter->setEvenFooter((string) $xmlSheet->headerFooter->evenFooter); + $docHeaderFooter->setFirstHeader((string) $xmlSheet->headerFooter->firstHeader); + $docHeaderFooter->setFirstFooter((string) $xmlSheet->headerFooter->firstFooter); + } + + if ($xmlSheet && $xmlSheet->rowBreaks && $xmlSheet->rowBreaks->brk && !$this->readDataOnly) { + foreach ($xmlSheet->rowBreaks->brk as $brk) { + if ($brk["man"]) { + $docSheet->setBreak("A$brk[id]", PHPExcel_Worksheet::BREAK_ROW); + } + } + } + if ($xmlSheet && $xmlSheet->colBreaks && $xmlSheet->colBreaks->brk && !$this->readDataOnly) { + foreach ($xmlSheet->colBreaks->brk as $brk) { + if ($brk["man"]) { + $docSheet->setBreak(PHPExcel_Cell::stringFromColumnIndex((string) $brk["id"]) . "1", PHPExcel_Worksheet::BREAK_COLUMN); + } + } + } + + if ($xmlSheet && $xmlSheet->dataValidations && !$this->readDataOnly) { + foreach ($xmlSheet->dataValidations->dataValidation as $dataValidation) { + // Uppercase coordinate + $range = strtoupper($dataValidation["sqref"]); + $rangeSet = explode(' ', $range); + foreach ($rangeSet as $range) { + $stRange = $docSheet->shrinkRangeToFit($range); + + // Extract all cell references in $range + foreach (PHPExcel_Cell::extractAllCellReferencesInRange($stRange) as $reference) { + // Create validation + $docValidation = $docSheet->getCell($reference)->getDataValidation(); + $docValidation->setType((string) $dataValidation["type"]); + $docValidation->setErrorStyle((string) $dataValidation["errorStyle"]); + $docValidation->setOperator((string) $dataValidation["operator"]); + $docValidation->setAllowBlank($dataValidation["allowBlank"] != 0); + $docValidation->setShowDropDown($dataValidation["showDropDown"] == 0); + $docValidation->setShowInputMessage($dataValidation["showInputMessage"] != 0); + $docValidation->setShowErrorMessage($dataValidation["showErrorMessage"] != 0); + $docValidation->setErrorTitle((string) $dataValidation["errorTitle"]); + $docValidation->setError((string) $dataValidation["error"]); + $docValidation->setPromptTitle((string) $dataValidation["promptTitle"]); + $docValidation->setPrompt((string) $dataValidation["prompt"]); + $docValidation->setFormula1((string) $dataValidation->formula1); + $docValidation->setFormula2((string) $dataValidation->formula2); + } + } + } + } + + // Add hyperlinks + $hyperlinks = array(); + if (!$this->readDataOnly) { + // Locate hyperlink relations + if ($zip->locateName(dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")) { + $relsWorksheet = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($relsWorksheet->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink") { + $hyperlinks[(string)$ele["Id"]] = (string)$ele["Target"]; + } + } + } + + // Loop through hyperlinks + if ($xmlSheet && $xmlSheet->hyperlinks) { + foreach ($xmlSheet->hyperlinks->hyperlink as $hyperlink) { + // Link url + $linkRel = $hyperlink->attributes('http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + + foreach (PHPExcel_Cell::extractAllCellReferencesInRange($hyperlink['ref']) as $cellReference) { + $cell = $docSheet->getCell($cellReference); + if (isset($linkRel['id'])) { + $hyperlinkUrl = $hyperlinks[ (string)$linkRel['id'] ]; + if (isset($hyperlink['location'])) { + $hyperlinkUrl .= '#' . (string) $hyperlink['location']; + } + $cell->getHyperlink()->setUrl($hyperlinkUrl); + } elseif (isset($hyperlink['location'])) { + $cell->getHyperlink()->setUrl('sheet://' . (string)$hyperlink['location']); + } + + // Tooltip + if (isset($hyperlink['tooltip'])) { + $cell->getHyperlink()->setTooltip((string)$hyperlink['tooltip']); + } + } + } + } + } + + // Add comments + $comments = array(); + $vmlComments = array(); + if (!$this->readDataOnly) { + // Locate comment relations + if ($zip->locateName(dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")) { + $relsWorksheet = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($relsWorksheet->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments") { + $comments[(string)$ele["Id"]] = (string)$ele["Target"]; + } + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing") { + $vmlComments[(string)$ele["Id"]] = (string)$ele["Target"]; + } + } + } + + // Loop through comments + foreach ($comments as $relName => $relPath) { + // Load comments file + $relPath = PHPExcel_Shared_File::realpath(dirname("$dir/$fileWorksheet") . "/" . $relPath); + $commentsFile = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, $relPath)), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + + // Utility variables + $authors = array(); + + // Loop through authors + foreach ($commentsFile->authors->author as $author) { + $authors[] = (string)$author; + } + + // Loop through contents + foreach ($commentsFile->commentList->comment as $comment) { + if (!empty($comment['authorId'])) { + $docSheet->getComment((string)$comment['ref'])->setAuthor($authors[(string)$comment['authorId']]); + } + $docSheet->getComment((string)$comment['ref'])->setText($this->parseRichText($comment->text)); + } + } + + // Loop through VML comments + foreach ($vmlComments as $relName => $relPath) { + // Load VML comments file + $relPath = PHPExcel_Shared_File::realpath(dirname("$dir/$fileWorksheet") . "/" . $relPath); + $vmlCommentsFile = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, $relPath)), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + $vmlCommentsFile->registerXPathNamespace('v', 'urn:schemas-microsoft-com:vml'); + + $shapes = $vmlCommentsFile->xpath('//v:shape'); + foreach ($shapes as $shape) { + $shape->registerXPathNamespace('v', 'urn:schemas-microsoft-com:vml'); + + if (isset($shape['style'])) { + $style = (string)$shape['style']; + $fillColor = strtoupper(substr((string)$shape['fillcolor'], 1)); + $column = null; + $row = null; + + $clientData = $shape->xpath('.//x:ClientData'); + if (is_array($clientData) && !empty($clientData)) { + $clientData = $clientData[0]; + + if (isset($clientData['ObjectType']) && (string)$clientData['ObjectType'] == 'Note') { + $temp = $clientData->xpath('.//x:Row'); + if (is_array($temp)) { + $row = $temp[0]; + } + + $temp = $clientData->xpath('.//x:Column'); + if (is_array($temp)) { + $column = $temp[0]; + } + } + } + + if (($column !== null) && ($row !== null)) { + // Set comment properties + $comment = $docSheet->getCommentByColumnAndRow((string) $column, $row + 1); + $comment->getFillColor()->setRGB($fillColor); + + // Parse style + $styleArray = explode(';', str_replace(' ', '', $style)); + foreach ($styleArray as $stylePair) { + $stylePair = explode(':', $stylePair); + + if ($stylePair[0] == 'margin-left') { + $comment->setMarginLeft($stylePair[1]); + } + if ($stylePair[0] == 'margin-top') { + $comment->setMarginTop($stylePair[1]); + } + if ($stylePair[0] == 'width') { + $comment->setWidth($stylePair[1]); + } + if ($stylePair[0] == 'height') { + $comment->setHeight($stylePair[1]); + } + if ($stylePair[0] == 'visibility') { + $comment->setVisible($stylePair[1] == 'visible'); + } + } + } + } + } + } + + // Header/footer images + if ($xmlSheet && $xmlSheet->legacyDrawingHF && !$this->readDataOnly) { + if ($zip->locateName(dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")) { + $relsWorksheet = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $vmlRelationship = ''; + + foreach ($relsWorksheet->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing") { + $vmlRelationship = self::dirAdd("$dir/$fileWorksheet", $ele["Target"]); + } + } + + if ($vmlRelationship != '') { + // Fetch linked images + $relsVML = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, dirname($vmlRelationship) . '/_rels/' . basename($vmlRelationship) . '.rels')), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $drawings = array(); + foreach ($relsVML->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image") { + $drawings[(string) $ele["Id"]] = self::dirAdd($vmlRelationship, $ele["Target"]); + } + } + + // Fetch VML document + $vmlDrawing = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, $vmlRelationship)), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + $vmlDrawing->registerXPathNamespace('v', 'urn:schemas-microsoft-com:vml'); + + $hfImages = array(); + + $shapes = $vmlDrawing->xpath('//v:shape'); + foreach ($shapes as $idx => $shape) { + $shape->registerXPathNamespace('v', 'urn:schemas-microsoft-com:vml'); + $imageData = $shape->xpath('//v:imagedata'); + $imageData = $imageData[$idx]; + + $imageData = $imageData->attributes('urn:schemas-microsoft-com:office:office'); + $style = self::toCSSArray((string)$shape['style']); + + $hfImages[ (string)$shape['id'] ] = new PHPExcel_Worksheet_HeaderFooterDrawing(); + if (isset($imageData['title'])) { + $hfImages[ (string)$shape['id'] ]->setName((string)$imageData['title']); + } + + $hfImages[ (string)$shape['id'] ]->setPath("zip://".PHPExcel_Shared_File::realpath($pFilename)."#" . $drawings[(string)$imageData['relid']], false); + $hfImages[ (string)$shape['id'] ]->setResizeProportional(false); + $hfImages[ (string)$shape['id'] ]->setWidth($style['width']); + $hfImages[ (string)$shape['id'] ]->setHeight($style['height']); + if (isset($style['margin-left'])) { + $hfImages[ (string)$shape['id'] ]->setOffsetX($style['margin-left']); + } + $hfImages[ (string)$shape['id'] ]->setOffsetY($style['margin-top']); + $hfImages[ (string)$shape['id'] ]->setResizeProportional(true); + } + + $docSheet->getHeaderFooter()->setImages($hfImages); + } + } + } + + } + + // TODO: Autoshapes from twoCellAnchors! + if ($zip->locateName(dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")) { + $relsWorksheet = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $drawings = array(); + foreach ($relsWorksheet->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing") { + $drawings[(string) $ele["Id"]] = self::dirAdd("$dir/$fileWorksheet", $ele["Target"]); + } + } + if ($xmlSheet->drawing && !$this->readDataOnly) { + foreach ($xmlSheet->drawing as $drawing) { + $fileDrawing = $drawings[(string) self::getArrayItem($drawing->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"), "id")]; + $relsDrawing = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, dirname($fileDrawing) . "/_rels/" . basename($fileDrawing) . ".rels")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $images = array(); + + if ($relsDrawing && $relsDrawing->Relationship) { + foreach ($relsDrawing->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image") { + $images[(string) $ele["Id"]] = self::dirAdd($fileDrawing, $ele["Target"]); + } elseif ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart") { + if ($this->includeCharts) { + $charts[self::dirAdd($fileDrawing, $ele["Target"])] = array( + 'id' => (string) $ele["Id"], + 'sheet' => $docSheet->getTitle() + ); + } + } + } + } + $xmlDrawing = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, $fileDrawing)), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions())->children("http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing"); + + if ($xmlDrawing->oneCellAnchor) { + foreach ($xmlDrawing->oneCellAnchor as $oneCellAnchor) { + if ($oneCellAnchor->pic->blipFill) { + $blip = $oneCellAnchor->pic->blipFill->children("http://schemas.openxmlformats.org/drawingml/2006/main")->blip; + $xfrm = $oneCellAnchor->pic->spPr->children("http://schemas.openxmlformats.org/drawingml/2006/main")->xfrm; + $outerShdw = $oneCellAnchor->pic->spPr->children("http://schemas.openxmlformats.org/drawingml/2006/main")->effectLst->outerShdw; + $objDrawing = new PHPExcel_Worksheet_Drawing; + $objDrawing->setName((string) self::getArrayItem($oneCellAnchor->pic->nvPicPr->cNvPr->attributes(), "name")); + $objDrawing->setDescription((string) self::getArrayItem($oneCellAnchor->pic->nvPicPr->cNvPr->attributes(), "descr")); + $objDrawing->setPath("zip://".PHPExcel_Shared_File::realpath($pFilename)."#" . $images[(string) self::getArrayItem($blip->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"), "embed")], false); + $objDrawing->setCoordinates(PHPExcel_Cell::stringFromColumnIndex((string) $oneCellAnchor->from->col) . ($oneCellAnchor->from->row + 1)); + $objDrawing->setOffsetX(PHPExcel_Shared_Drawing::EMUToPixels($oneCellAnchor->from->colOff)); + $objDrawing->setOffsetY(PHPExcel_Shared_Drawing::EMUToPixels($oneCellAnchor->from->rowOff)); + $objDrawing->setResizeProportional(false); + $objDrawing->setWidth(PHPExcel_Shared_Drawing::EMUToPixels(self::getArrayItem($oneCellAnchor->ext->attributes(), "cx"))); + $objDrawing->setHeight(PHPExcel_Shared_Drawing::EMUToPixels(self::getArrayItem($oneCellAnchor->ext->attributes(), "cy"))); + if ($xfrm) { + $objDrawing->setRotation(PHPExcel_Shared_Drawing::angleToDegrees(self::getArrayItem($xfrm->attributes(), "rot"))); + } + if ($outerShdw) { + $shadow = $objDrawing->getShadow(); + $shadow->setVisible(true); + $shadow->setBlurRadius(PHPExcel_Shared_Drawing::EMUTopixels(self::getArrayItem($outerShdw->attributes(), "blurRad"))); + $shadow->setDistance(PHPExcel_Shared_Drawing::EMUTopixels(self::getArrayItem($outerShdw->attributes(), "dist"))); + $shadow->setDirection(PHPExcel_Shared_Drawing::angleToDegrees(self::getArrayItem($outerShdw->attributes(), "dir"))); + $shadow->setAlignment((string) self::getArrayItem($outerShdw->attributes(), "algn")); + $shadow->getColor()->setRGB(self::getArrayItem($outerShdw->srgbClr->attributes(), "val")); + $shadow->setAlpha(self::getArrayItem($outerShdw->srgbClr->alpha->attributes(), "val") / 1000); + } + $objDrawing->setWorksheet($docSheet); + } else { + // ? Can charts be positioned with a oneCellAnchor ? + $coordinates = PHPExcel_Cell::stringFromColumnIndex((string) $oneCellAnchor->from->col) . ($oneCellAnchor->from->row + 1); + $offsetX = PHPExcel_Shared_Drawing::EMUToPixels($oneCellAnchor->from->colOff); + $offsetY = PHPExcel_Shared_Drawing::EMUToPixels($oneCellAnchor->from->rowOff); + $width = PHPExcel_Shared_Drawing::EMUToPixels(self::getArrayItem($oneCellAnchor->ext->attributes(), "cx")); + $height = PHPExcel_Shared_Drawing::EMUToPixels(self::getArrayItem($oneCellAnchor->ext->attributes(), "cy")); + } + } + } + if ($xmlDrawing->twoCellAnchor) { + foreach ($xmlDrawing->twoCellAnchor as $twoCellAnchor) { + if ($twoCellAnchor->pic->blipFill) { + $blip = $twoCellAnchor->pic->blipFill->children("http://schemas.openxmlformats.org/drawingml/2006/main")->blip; + $xfrm = $twoCellAnchor->pic->spPr->children("http://schemas.openxmlformats.org/drawingml/2006/main")->xfrm; + $outerShdw = $twoCellAnchor->pic->spPr->children("http://schemas.openxmlformats.org/drawingml/2006/main")->effectLst->outerShdw; + $objDrawing = new PHPExcel_Worksheet_Drawing; + $objDrawing->setName((string) self::getArrayItem($twoCellAnchor->pic->nvPicPr->cNvPr->attributes(), "name")); + $objDrawing->setDescription((string) self::getArrayItem($twoCellAnchor->pic->nvPicPr->cNvPr->attributes(), "descr")); + $objDrawing->setPath("zip://".PHPExcel_Shared_File::realpath($pFilename)."#" . $images[(string) self::getArrayItem($blip->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"), "embed")], false); + $objDrawing->setCoordinates(PHPExcel_Cell::stringFromColumnIndex((string) $twoCellAnchor->from->col) . ($twoCellAnchor->from->row + 1)); + $objDrawing->setOffsetX(PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->from->colOff)); + $objDrawing->setOffsetY(PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->from->rowOff)); + $objDrawing->setResizeProportional(false); + + if ($xfrm) { + $objDrawing->setWidth(PHPExcel_Shared_Drawing::EMUToPixels(self::getArrayItem($xfrm->ext->attributes(), "cx"))); + $objDrawing->setHeight(PHPExcel_Shared_Drawing::EMUToPixels(self::getArrayItem($xfrm->ext->attributes(), "cy"))); + $objDrawing->setRotation(PHPExcel_Shared_Drawing::angleToDegrees(self::getArrayItem($xfrm->attributes(), "rot"))); + } + if ($outerShdw) { + $shadow = $objDrawing->getShadow(); + $shadow->setVisible(true); + $shadow->setBlurRadius(PHPExcel_Shared_Drawing::EMUTopixels(self::getArrayItem($outerShdw->attributes(), "blurRad"))); + $shadow->setDistance(PHPExcel_Shared_Drawing::EMUTopixels(self::getArrayItem($outerShdw->attributes(), "dist"))); + $shadow->setDirection(PHPExcel_Shared_Drawing::angleToDegrees(self::getArrayItem($outerShdw->attributes(), "dir"))); + $shadow->setAlignment((string) self::getArrayItem($outerShdw->attributes(), "algn")); + $shadow->getColor()->setRGB(self::getArrayItem($outerShdw->srgbClr->attributes(), "val")); + $shadow->setAlpha(self::getArrayItem($outerShdw->srgbClr->alpha->attributes(), "val") / 1000); + } + $objDrawing->setWorksheet($docSheet); + } elseif (($this->includeCharts) && ($twoCellAnchor->graphicFrame)) { + $fromCoordinate = PHPExcel_Cell::stringFromColumnIndex((string) $twoCellAnchor->from->col) . ($twoCellAnchor->from->row + 1); + $fromOffsetX = PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->from->colOff); + $fromOffsetY = PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->from->rowOff); + $toCoordinate = PHPExcel_Cell::stringFromColumnIndex((string) $twoCellAnchor->to->col) . ($twoCellAnchor->to->row + 1); + $toOffsetX = PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->to->colOff); + $toOffsetY = PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->to->rowOff); + $graphic = $twoCellAnchor->graphicFrame->children("http://schemas.openxmlformats.org/drawingml/2006/main")->graphic; + $chartRef = $graphic->graphicData->children("http://schemas.openxmlformats.org/drawingml/2006/chart")->chart; + $thisChart = (string) $chartRef->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"); + + $chartDetails[$docSheet->getTitle().'!'.$thisChart] = array( + 'fromCoordinate' => $fromCoordinate, + 'fromOffsetX' => $fromOffsetX, + 'fromOffsetY' => $fromOffsetY, + 'toCoordinate' => $toCoordinate, + 'toOffsetX' => $toOffsetX, + 'toOffsetY' => $toOffsetY, + 'worksheetTitle' => $docSheet->getTitle() + ); + } + } + } + } + } + } + + // Loop through definedNames + if ($xmlWorkbook->definedNames) { + foreach ($xmlWorkbook->definedNames->definedName as $definedName) { + // Extract range + $extractedRange = (string)$definedName; + $extractedRange = preg_replace('/\'(\w+)\'\!/', '', $extractedRange); + if (($spos = strpos($extractedRange, '!')) !== false) { + $extractedRange = substr($extractedRange, 0, $spos).str_replace('$', '', substr($extractedRange, $spos)); + } else { + $extractedRange = str_replace('$', '', $extractedRange); + } + + // Valid range? + if (stripos((string)$definedName, '#REF!') !== false || $extractedRange == '') { + continue; + } + + // Some definedNames are only applicable if we are on the same sheet... + if ((string)$definedName['localSheetId'] != '' && (string)$definedName['localSheetId'] == $sheetId) { + // Switch on type + switch ((string)$definedName['name']) { + case '_xlnm._FilterDatabase': + if ((string)$definedName['hidden'] !== '1') { + $extractedRange = explode(',', $extractedRange); + foreach ($extractedRange as $range) { + $autoFilterRange = $range; + if (strpos($autoFilterRange, ':') !== false) { + $docSheet->getAutoFilter()->setRange($autoFilterRange); + } + } + } + break; + case '_xlnm.Print_Titles': + // Split $extractedRange + $extractedRange = explode(',', $extractedRange); + + // Set print titles + foreach ($extractedRange as $range) { + $matches = array(); + $range = str_replace('$', '', $range); + + // check for repeating columns, e g. 'A:A' or 'A:D' + if (preg_match('/!?([A-Z]+)\:([A-Z]+)$/', $range, $matches)) { + $docSheet->getPageSetup()->setColumnsToRepeatAtLeft(array($matches[1], $matches[2])); + } elseif (preg_match('/!?(\d+)\:(\d+)$/', $range, $matches)) { + // check for repeating rows, e.g. '1:1' or '1:5' + $docSheet->getPageSetup()->setRowsToRepeatAtTop(array($matches[1], $matches[2])); + } + } + break; + case '_xlnm.Print_Area': + $rangeSets = explode(',', $extractedRange); // FIXME: what if sheetname contains comma? + $newRangeSets = array(); + foreach ($rangeSets as $rangeSet) { + $range = explode('!', $rangeSet); // FIXME: what if sheetname contains exclamation mark? + $rangeSet = isset($range[1]) ? $range[1] : $range[0]; + if (strpos($rangeSet, ':') === false) { + $rangeSet = $rangeSet . ':' . $rangeSet; + } + $newRangeSets[] = str_replace('$', '', $rangeSet); + } + $docSheet->getPageSetup()->setPrintArea(implode(',', $newRangeSets)); + break; + + default: + break; + } + } + } + } + + // Next sheet id + ++$sheetId; + } + + // Loop through definedNames + if ($xmlWorkbook->definedNames) { + foreach ($xmlWorkbook->definedNames->definedName as $definedName) { + // Extract range + $extractedRange = (string)$definedName; + $extractedRange = preg_replace('/\'(\w+)\'\!/', '', $extractedRange); + if (($spos = strpos($extractedRange, '!')) !== false) { + $extractedRange = substr($extractedRange, 0, $spos).str_replace('$', '', substr($extractedRange, $spos)); + } else { + $extractedRange = str_replace('$', '', $extractedRange); + } + + // Valid range? + if (stripos((string)$definedName, '#REF!') !== false || $extractedRange == '') { + continue; + } + + // Some definedNames are only applicable if we are on the same sheet... + if ((string)$definedName['localSheetId'] != '') { + // Local defined name + // Switch on type + switch ((string)$definedName['name']) { + case '_xlnm._FilterDatabase': + case '_xlnm.Print_Titles': + case '_xlnm.Print_Area': + break; + default: + if ($mapSheetId[(integer) $definedName['localSheetId']] !== null) { + $range = explode('!', (string)$definedName); + if (count($range) == 2) { + $range[0] = str_replace("''", "'", $range[0]); + $range[0] = str_replace("'", "", $range[0]); + if ($worksheet = $docSheet->getParent()->getSheetByName($range[0])) { + $extractedRange = str_replace('$', '', $range[1]); + $scope = $docSheet->getParent()->getSheet($mapSheetId[(integer) $definedName['localSheetId']]); + $excel->addNamedRange(new PHPExcel_NamedRange((string)$definedName['name'], $worksheet, $extractedRange, true, $scope)); + } + } + } + break; + } + } elseif (!isset($definedName['localSheetId'])) { + // "Global" definedNames + $locatedSheet = null; + $extractedSheetName = ''; + if (strpos((string)$definedName, '!') !== false) { + // Extract sheet name + $extractedSheetName = PHPExcel_Worksheet::extractSheetTitle((string)$definedName, true); + $extractedSheetName = $extractedSheetName[0]; + + // Locate sheet + $locatedSheet = $excel->getSheetByName($extractedSheetName); + + // Modify range + $range = explode('!', $extractedRange); + $extractedRange = isset($range[1]) ? $range[1] : $range[0]; + } + + if ($locatedSheet !== null) { + $excel->addNamedRange(new PHPExcel_NamedRange((string)$definedName['name'], $locatedSheet, $extractedRange, false)); + } + } + } + } + } + + if ((!$this->readDataOnly) || (!empty($this->loadSheetsOnly))) { + // active sheet index + $activeTab = intval($xmlWorkbook->bookViews->workbookView["activeTab"]); // refers to old sheet index + + // keep active sheet index if sheet is still loaded, else first sheet is set as the active + if (isset($mapSheetId[$activeTab]) && $mapSheetId[$activeTab] !== null) { + $excel->setActiveSheetIndex($mapSheetId[$activeTab]); + } else { + if ($excel->getSheetCount() == 0) { + $excel->createSheet(); + } + $excel->setActiveSheetIndex(0); + } + } + break; + } + } + + if (!$this->readDataOnly) { + $contentTypes = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, "[Content_Types].xml")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + foreach ($contentTypes->Override as $contentType) { + switch ($contentType["ContentType"]) { + case "application/vnd.openxmlformats-officedocument.drawingml.chart+xml": + if ($this->includeCharts) { + $chartEntryRef = ltrim($contentType['PartName'], '/'); + $chartElements = simplexml_load_string($this->securityScan($this->getFromZipArchive($zip, $chartEntryRef)), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + $objChart = PHPExcel_Reader_Excel2007_Chart::readChart($chartElements, basename($chartEntryRef, '.xml')); + +// echo 'Chart ', $chartEntryRef, '
'; +// var_dump($charts[$chartEntryRef]); +// + if (isset($charts[$chartEntryRef])) { + $chartPositionRef = $charts[$chartEntryRef]['sheet'].'!'.$charts[$chartEntryRef]['id']; +// echo 'Position Ref ', $chartPositionRef, '
'; + if (isset($chartDetails[$chartPositionRef])) { +// var_dump($chartDetails[$chartPositionRef]); + + $excel->getSheetByName($charts[$chartEntryRef]['sheet'])->addChart($objChart); + $objChart->setWorksheet($excel->getSheetByName($charts[$chartEntryRef]['sheet'])); + $objChart->setTopLeftPosition($chartDetails[$chartPositionRef]['fromCoordinate'], $chartDetails[$chartPositionRef]['fromOffsetX'], $chartDetails[$chartPositionRef]['fromOffsetY']); + $objChart->setBottomRightPosition($chartDetails[$chartPositionRef]['toCoordinate'], $chartDetails[$chartPositionRef]['toOffsetX'], $chartDetails[$chartPositionRef]['toOffsetY']); + } + } + } + } + } + } + + $zip->close(); + + return $excel; + } + + private static function readColor($color, $background = false) + { + if (isset($color["rgb"])) { + return (string)$color["rgb"]; + } elseif (isset($color["indexed"])) { + return PHPExcel_Style_Color::indexedColor($color["indexed"]-7, $background)->getARGB(); + } elseif (isset($color["theme"])) { + if (self::$theme !== null) { + $returnColour = self::$theme->getColourByIndex((int)$color["theme"]); + if (isset($color["tint"])) { + $tintAdjust = (float) $color["tint"]; + $returnColour = PHPExcel_Style_Color::changeBrightness($returnColour, $tintAdjust); + } + return 'FF'.$returnColour; + } + } + + if ($background) { + return 'FFFFFFFF'; + } + return 'FF000000'; + } + + private static function readStyle($docStyle, $style) + { + // format code +// if (isset($style->numFmt)) { +// if (isset($style->numFmt['formatCode'])) { +// $docStyle->getNumberFormat()->setFormatCode((string) $style->numFmt['formatCode']); +// } else { + $docStyle->getNumberFormat()->setFormatCode($style->numFmt); +// } +// } + + // font + if (isset($style->font)) { + $docStyle->getFont()->setName((string) $style->font->name["val"]); + $docStyle->getFont()->setSize((string) $style->font->sz["val"]); + if (isset($style->font->b)) { + $docStyle->getFont()->setBold(!isset($style->font->b["val"]) || self::boolean((string) $style->font->b["val"])); + } + if (isset($style->font->i)) { + $docStyle->getFont()->setItalic(!isset($style->font->i["val"]) || self::boolean((string) $style->font->i["val"])); + } + if (isset($style->font->strike)) { + $docStyle->getFont()->setStrikethrough(!isset($style->font->strike["val"]) || self::boolean((string) $style->font->strike["val"])); + } + $docStyle->getFont()->getColor()->setARGB(self::readColor($style->font->color)); + + if (isset($style->font->u) && !isset($style->font->u["val"])) { + $docStyle->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); + } elseif (isset($style->font->u) && isset($style->font->u["val"])) { + $docStyle->getFont()->setUnderline((string)$style->font->u["val"]); + } + + if (isset($style->font->vertAlign) && isset($style->font->vertAlign["val"])) { + $vertAlign = strtolower((string)$style->font->vertAlign["val"]); + if ($vertAlign == 'superscript') { + $docStyle->getFont()->setSuperScript(true); + } + if ($vertAlign == 'subscript') { + $docStyle->getFont()->setSubScript(true); + } + } + } + + // fill + if (isset($style->fill)) { + if ($style->fill->gradientFill) { + $gradientFill = $style->fill->gradientFill[0]; + if (!empty($gradientFill["type"])) { + $docStyle->getFill()->setFillType((string) $gradientFill["type"]); + } + $docStyle->getFill()->setRotation(floatval($gradientFill["degree"])); + $gradientFill->registerXPathNamespace("sml", "http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + $docStyle->getFill()->getStartColor()->setARGB(self::readColor(self::getArrayItem($gradientFill->xpath("sml:stop[@position=0]"))->color)); + $docStyle->getFill()->getEndColor()->setARGB(self::readColor(self::getArrayItem($gradientFill->xpath("sml:stop[@position=1]"))->color)); + } elseif ($style->fill->patternFill) { + $patternType = (string)$style->fill->patternFill["patternType"] != '' ? (string)$style->fill->patternFill["patternType"] : 'solid'; + $docStyle->getFill()->setFillType($patternType); + if ($style->fill->patternFill->fgColor) { + $docStyle->getFill()->getStartColor()->setARGB(self::readColor($style->fill->patternFill->fgColor, true)); + } else { + $docStyle->getFill()->getStartColor()->setARGB('FF000000'); + } + if ($style->fill->patternFill->bgColor) { + $docStyle->getFill()->getEndColor()->setARGB(self::readColor($style->fill->patternFill->bgColor, true)); + } + } + } + + // border + if (isset($style->border)) { + $diagonalUp = self::boolean((string) $style->border["diagonalUp"]); + $diagonalDown = self::boolean((string) $style->border["diagonalDown"]); + if (!$diagonalUp && !$diagonalDown) { + $docStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_NONE); + } elseif ($diagonalUp && !$diagonalDown) { + $docStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_UP); + } elseif (!$diagonalUp && $diagonalDown) { + $docStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_DOWN); + } else { + $docStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_BOTH); + } + self::readBorder($docStyle->getBorders()->getLeft(), $style->border->left); + self::readBorder($docStyle->getBorders()->getRight(), $style->border->right); + self::readBorder($docStyle->getBorders()->getTop(), $style->border->top); + self::readBorder($docStyle->getBorders()->getBottom(), $style->border->bottom); + self::readBorder($docStyle->getBorders()->getDiagonal(), $style->border->diagonal); + } + + // alignment + if (isset($style->alignment)) { + $docStyle->getAlignment()->setHorizontal((string) $style->alignment["horizontal"]); + $docStyle->getAlignment()->setVertical((string) $style->alignment["vertical"]); + + $textRotation = 0; + if ((int)$style->alignment["textRotation"] <= 90) { + $textRotation = (int)$style->alignment["textRotation"]; + } elseif ((int)$style->alignment["textRotation"] > 90) { + $textRotation = 90 - (int)$style->alignment["textRotation"]; + } + + $docStyle->getAlignment()->setTextRotation(intval($textRotation)); + $docStyle->getAlignment()->setWrapText(self::boolean((string) $style->alignment["wrapText"])); + $docStyle->getAlignment()->setShrinkToFit(self::boolean((string) $style->alignment["shrinkToFit"])); + $docStyle->getAlignment()->setIndent(intval((string)$style->alignment["indent"]) > 0 ? intval((string)$style->alignment["indent"]) : 0); + $docStyle->getAlignment()->setReadorder(intval((string)$style->alignment["readingOrder"]) > 0 ? intval((string)$style->alignment["readingOrder"]) : 0); + } + + // protection + if (isset($style->protection)) { + if (isset($style->protection['locked'])) { + if (self::boolean((string) $style->protection['locked'])) { + $docStyle->getProtection()->setLocked(PHPExcel_Style_Protection::PROTECTION_PROTECTED); + } else { + $docStyle->getProtection()->setLocked(PHPExcel_Style_Protection::PROTECTION_UNPROTECTED); + } + } + + if (isset($style->protection['hidden'])) { + if (self::boolean((string) $style->protection['hidden'])) { + $docStyle->getProtection()->setHidden(PHPExcel_Style_Protection::PROTECTION_PROTECTED); + } else { + $docStyle->getProtection()->setHidden(PHPExcel_Style_Protection::PROTECTION_UNPROTECTED); + } + } + } + + // top-level style settings + if (isset($style->quotePrefix)) { + $docStyle->setQuotePrefix($style->quotePrefix); + } + } + + private static function readBorder($docBorder, $eleBorder) + { + if (isset($eleBorder["style"])) { + $docBorder->setBorderStyle((string) $eleBorder["style"]); + } + if (isset($eleBorder->color)) { + $docBorder->getColor()->setARGB(self::readColor($eleBorder->color)); + } + } + + private function parseRichText($is = null) + { + $value = new PHPExcel_RichText(); + + if (isset($is->t)) { + $value->createText(PHPExcel_Shared_String::ControlCharacterOOXML2PHP((string) $is->t)); + } else { + if (is_object($is->r)) { + foreach ($is->r as $run) { + if (!isset($run->rPr)) { + $objText = $value->createText(PHPExcel_Shared_String::ControlCharacterOOXML2PHP((string) $run->t)); + + } else { + $objText = $value->createTextRun(PHPExcel_Shared_String::ControlCharacterOOXML2PHP((string) $run->t)); + + if (isset($run->rPr->rFont["val"])) { + $objText->getFont()->setName((string) $run->rPr->rFont["val"]); + } + if (isset($run->rPr->sz["val"])) { + $objText->getFont()->setSize((string) $run->rPr->sz["val"]); + } + if (isset($run->rPr->color)) { + $objText->getFont()->setColor(new PHPExcel_Style_Color(self::readColor($run->rPr->color))); + } + if ((isset($run->rPr->b["val"]) && self::boolean((string) $run->rPr->b["val"])) || + (isset($run->rPr->b) && !isset($run->rPr->b["val"]))) { + $objText->getFont()->setBold(true); + } + if ((isset($run->rPr->i["val"]) && self::boolean((string) $run->rPr->i["val"])) || + (isset($run->rPr->i) && !isset($run->rPr->i["val"]))) { + $objText->getFont()->setItalic(true); + } + if (isset($run->rPr->vertAlign) && isset($run->rPr->vertAlign["val"])) { + $vertAlign = strtolower((string)$run->rPr->vertAlign["val"]); + if ($vertAlign == 'superscript') { + $objText->getFont()->setSuperScript(true); + } + if ($vertAlign == 'subscript') { + $objText->getFont()->setSubScript(true); + } + } + if (isset($run->rPr->u) && !isset($run->rPr->u["val"])) { + $objText->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); + } elseif (isset($run->rPr->u) && isset($run->rPr->u["val"])) { + $objText->getFont()->setUnderline((string)$run->rPr->u["val"]); + } + if ((isset($run->rPr->strike["val"]) && self::boolean((string) $run->rPr->strike["val"])) || + (isset($run->rPr->strike) && !isset($run->rPr->strike["val"]))) { + $objText->getFont()->setStrikethrough(true); + } + } + } + } + } + + return $value; + } + + private function readRibbon($excel, $customUITarget, $zip) + { + $baseDir = dirname($customUITarget); + $nameCustomUI = basename($customUITarget); + // get the xml file (ribbon) + $localRibbon = $this->getFromZipArchive($zip, $customUITarget); + $customUIImagesNames = array(); + $customUIImagesBinaries = array(); + // something like customUI/_rels/customUI.xml.rels + $pathRels = $baseDir . '/_rels/' . $nameCustomUI . '.rels'; + $dataRels = $this->getFromZipArchive($zip, $pathRels); + if ($dataRels) { + // exists and not empty if the ribbon have some pictures (other than internal MSO) + $UIRels = simplexml_load_string($this->securityScan($dataRels), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + if ($UIRels) { + // we need to save id and target to avoid parsing customUI.xml and "guess" if it's a pseudo callback who load the image + foreach ($UIRels->Relationship as $ele) { + if ($ele["Type"] == 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image') { + // an image ? + $customUIImagesNames[(string) $ele['Id']] = (string)$ele['Target']; + $customUIImagesBinaries[(string)$ele['Target']] = $this->getFromZipArchive($zip, $baseDir . '/' . (string) $ele['Target']); + } + } + } + } + if ($localRibbon) { + $excel->setRibbonXMLData($customUITarget, $localRibbon); + if (count($customUIImagesNames) > 0 && count($customUIImagesBinaries) > 0) { + $excel->setRibbonBinObjects($customUIImagesNames, $customUIImagesBinaries); + } else { + $excel->setRibbonBinObjects(null); + } + } else { + $excel->setRibbonXMLData(null); + $excel->setRibbonBinObjects(null); + } + } + + private static function getArrayItem($array, $key = 0) + { + return (isset($array[$key]) ? $array[$key] : null); + } + + private static function dirAdd($base, $add) + { + return preg_replace('~[^/]+/\.\./~', '', dirname($base) . "/$add"); + } + + private static function toCSSArray($style) + { + $style = str_replace(array("\r","\n"), "", $style); + + $temp = explode(';', $style); + $style = array(); + foreach ($temp as $item) { + $item = explode(':', $item); + + if (strpos($item[1], 'px') !== false) { + $item[1] = str_replace('px', '', $item[1]); + } + if (strpos($item[1], 'pt') !== false) { + $item[1] = str_replace('pt', '', $item[1]); + $item[1] = PHPExcel_Shared_Font::fontSizeToPixels($item[1]); + } + if (strpos($item[1], 'in') !== false) { + $item[1] = str_replace('in', '', $item[1]); + $item[1] = PHPExcel_Shared_Font::inchSizeToPixels($item[1]); + } + if (strpos($item[1], 'cm') !== false) { + $item[1] = str_replace('cm', '', $item[1]); + $item[1] = PHPExcel_Shared_Font::centimeterSizeToPixels($item[1]); + } + + $style[$item[0]] = $item[1]; + } + + return $style; + } + + private static function boolean($value = null) + { + if (is_object($value)) { + $value = (string) $value; + } + if (is_numeric($value)) { + return (bool) $value; + } + return ($value === 'true' || $value === 'TRUE'); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007/Chart.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007/Chart.php new file mode 100644 index 0000000..590bf2d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007/Chart.php @@ -0,0 +1,520 @@ +attributes(); + if (isset($attributes[$name])) { + if ($format == 'string') { + return (string) $attributes[$name]; + } elseif ($format == 'integer') { + return (integer) $attributes[$name]; + } elseif ($format == 'boolean') { + return (boolean) ($attributes[$name] === '0' || $attributes[$name] !== 'true') ? false : true; + } else { + return (float) $attributes[$name]; + } + } + return null; + } + + + private static function readColor($color, $background = false) + { + if (isset($color["rgb"])) { + return (string)$color["rgb"]; + } elseif (isset($color["indexed"])) { + return PHPExcel_Style_Color::indexedColor($color["indexed"]-7, $background)->getARGB(); + } + } + + public static function readChart($chartElements, $chartName) + { + $namespacesChartMeta = $chartElements->getNamespaces(true); + $chartElementsC = $chartElements->children($namespacesChartMeta['c']); + + $XaxisLabel = $YaxisLabel = $legend = $title = null; + $dispBlanksAs = $plotVisOnly = null; + + foreach ($chartElementsC as $chartElementKey => $chartElement) { + switch ($chartElementKey) { + case "chart": + foreach ($chartElement as $chartDetailsKey => $chartDetails) { + $chartDetailsC = $chartDetails->children($namespacesChartMeta['c']); + switch ($chartDetailsKey) { + case "plotArea": + $plotAreaLayout = $XaxisLable = $YaxisLable = null; + $plotSeries = $plotAttributes = array(); + foreach ($chartDetails as $chartDetailKey => $chartDetail) { + switch ($chartDetailKey) { + case "layout": + $plotAreaLayout = self::chartLayoutDetails($chartDetail, $namespacesChartMeta, 'plotArea'); + break; + case "catAx": + if (isset($chartDetail->title)) { + $XaxisLabel = self::chartTitle($chartDetail->title->children($namespacesChartMeta['c']), $namespacesChartMeta, 'cat'); + } + break; + case "dateAx": + if (isset($chartDetail->title)) { + $XaxisLabel = self::chartTitle($chartDetail->title->children($namespacesChartMeta['c']), $namespacesChartMeta, 'cat'); + } + break; + case "valAx": + if (isset($chartDetail->title)) { + $YaxisLabel = self::chartTitle($chartDetail->title->children($namespacesChartMeta['c']), $namespacesChartMeta, 'cat'); + } + break; + case "barChart": + case "bar3DChart": + $barDirection = self::getAttribute($chartDetail->barDir, 'val', 'string'); + $plotSer = self::chartDataSeries($chartDetail, $namespacesChartMeta, $chartDetailKey); + $plotSer->setPlotDirection($barDirection); + $plotSeries[] = $plotSer; + $plotAttributes = self::readChartAttributes($chartDetail); + break; + case "lineChart": + case "line3DChart": + $plotSeries[] = self::chartDataSeries($chartDetail, $namespacesChartMeta, $chartDetailKey); + $plotAttributes = self::readChartAttributes($chartDetail); + break; + case "areaChart": + case "area3DChart": + $plotSeries[] = self::chartDataSeries($chartDetail, $namespacesChartMeta, $chartDetailKey); + $plotAttributes = self::readChartAttributes($chartDetail); + break; + case "doughnutChart": + case "pieChart": + case "pie3DChart": + $explosion = isset($chartDetail->ser->explosion); + $plotSer = self::chartDataSeries($chartDetail, $namespacesChartMeta, $chartDetailKey); + $plotSer->setPlotStyle($explosion); + $plotSeries[] = $plotSer; + $plotAttributes = self::readChartAttributes($chartDetail); + break; + case "scatterChart": + $scatterStyle = self::getAttribute($chartDetail->scatterStyle, 'val', 'string'); + $plotSer = self::chartDataSeries($chartDetail, $namespacesChartMeta, $chartDetailKey); + $plotSer->setPlotStyle($scatterStyle); + $plotSeries[] = $plotSer; + $plotAttributes = self::readChartAttributes($chartDetail); + break; + case "bubbleChart": + $bubbleScale = self::getAttribute($chartDetail->bubbleScale, 'val', 'integer'); + $plotSer = self::chartDataSeries($chartDetail, $namespacesChartMeta, $chartDetailKey); + $plotSer->setPlotStyle($bubbleScale); + $plotSeries[] = $plotSer; + $plotAttributes = self::readChartAttributes($chartDetail); + break; + case "radarChart": + $radarStyle = self::getAttribute($chartDetail->radarStyle, 'val', 'string'); + $plotSer = self::chartDataSeries($chartDetail, $namespacesChartMeta, $chartDetailKey); + $plotSer->setPlotStyle($radarStyle); + $plotSeries[] = $plotSer; + $plotAttributes = self::readChartAttributes($chartDetail); + break; + case "surfaceChart": + case "surface3DChart": + $wireFrame = self::getAttribute($chartDetail->wireframe, 'val', 'boolean'); + $plotSer = self::chartDataSeries($chartDetail, $namespacesChartMeta, $chartDetailKey); + $plotSer->setPlotStyle($wireFrame); + $plotSeries[] = $plotSer; + $plotAttributes = self::readChartAttributes($chartDetail); + break; + case "stockChart": + $plotSeries[] = self::chartDataSeries($chartDetail, $namespacesChartMeta, $chartDetailKey); + $plotAttributes = self::readChartAttributes($plotAreaLayout); + break; + } + } + if ($plotAreaLayout == null) { + $plotAreaLayout = new PHPExcel_Chart_Layout(); + } + $plotArea = new PHPExcel_Chart_PlotArea($plotAreaLayout, $plotSeries); + self::setChartAttributes($plotAreaLayout, $plotAttributes); + break; + case "plotVisOnly": + $plotVisOnly = self::getAttribute($chartDetails, 'val', 'string'); + break; + case "dispBlanksAs": + $dispBlanksAs = self::getAttribute($chartDetails, 'val', 'string'); + break; + case "title": + $title = self::chartTitle($chartDetails, $namespacesChartMeta, 'title'); + break; + case "legend": + $legendPos = 'r'; + $legendLayout = null; + $legendOverlay = false; + foreach ($chartDetails as $chartDetailKey => $chartDetail) { + switch ($chartDetailKey) { + case "legendPos": + $legendPos = self::getAttribute($chartDetail, 'val', 'string'); + break; + case "overlay": + $legendOverlay = self::getAttribute($chartDetail, 'val', 'boolean'); + break; + case "layout": + $legendLayout = self::chartLayoutDetails($chartDetail, $namespacesChartMeta, 'legend'); + break; + } + } + $legend = new PHPExcel_Chart_Legend($legendPos, $legendLayout, $legendOverlay); + break; + } + } + } + } + $chart = new PHPExcel_Chart($chartName, $title, $legend, $plotArea, $plotVisOnly, $dispBlanksAs, $XaxisLabel, $YaxisLabel); + + return $chart; + } + + private static function chartTitle($titleDetails, $namespacesChartMeta, $type) + { + $caption = array(); + $titleLayout = null; + foreach ($titleDetails as $titleDetailKey => $chartDetail) { + switch ($titleDetailKey) { + case "tx": + $titleDetails = $chartDetail->rich->children($namespacesChartMeta['a']); + foreach ($titleDetails as $titleKey => $titleDetail) { + switch ($titleKey) { + case "p": + $titleDetailPart = $titleDetail->children($namespacesChartMeta['a']); + $caption[] = self::parseRichText($titleDetailPart); + } + } + break; + case "layout": + $titleLayout = self::chartLayoutDetails($chartDetail, $namespacesChartMeta); + break; + } + } + + return new PHPExcel_Chart_Title($caption, $titleLayout); + } + + private static function chartLayoutDetails($chartDetail, $namespacesChartMeta) + { + if (!isset($chartDetail->manualLayout)) { + return null; + } + $details = $chartDetail->manualLayout->children($namespacesChartMeta['c']); + if (is_null($details)) { + return null; + } + $layout = array(); + foreach ($details as $detailKey => $detail) { +// echo $detailKey, ' => ',self::getAttribute($detail, 'val', 'string'),PHP_EOL; + $layout[$detailKey] = self::getAttribute($detail, 'val', 'string'); + } + return new PHPExcel_Chart_Layout($layout); + } + + private static function chartDataSeries($chartDetail, $namespacesChartMeta, $plotType) + { + $multiSeriesType = null; + $smoothLine = false; + $seriesLabel = $seriesCategory = $seriesValues = $plotOrder = array(); + + $seriesDetailSet = $chartDetail->children($namespacesChartMeta['c']); + foreach ($seriesDetailSet as $seriesDetailKey => $seriesDetails) { + switch ($seriesDetailKey) { + case "grouping": + $multiSeriesType = self::getAttribute($chartDetail->grouping, 'val', 'string'); + break; + case "ser": + $marker = null; + foreach ($seriesDetails as $seriesKey => $seriesDetail) { + switch ($seriesKey) { + case "idx": + $seriesIndex = self::getAttribute($seriesDetail, 'val', 'integer'); + break; + case "order": + $seriesOrder = self::getAttribute($seriesDetail, 'val', 'integer'); + $plotOrder[$seriesIndex] = $seriesOrder; + break; + case "tx": + $seriesLabel[$seriesIndex] = self::chartDataSeriesValueSet($seriesDetail, $namespacesChartMeta); + break; + case "marker": + $marker = self::getAttribute($seriesDetail->symbol, 'val', 'string'); + break; + case "smooth": + $smoothLine = self::getAttribute($seriesDetail, 'val', 'boolean'); + break; + case "cat": + $seriesCategory[$seriesIndex] = self::chartDataSeriesValueSet($seriesDetail, $namespacesChartMeta); + break; + case "val": + $seriesValues[$seriesIndex] = self::chartDataSeriesValueSet($seriesDetail, $namespacesChartMeta, $marker); + break; + case "xVal": + $seriesCategory[$seriesIndex] = self::chartDataSeriesValueSet($seriesDetail, $namespacesChartMeta, $marker); + break; + case "yVal": + $seriesValues[$seriesIndex] = self::chartDataSeriesValueSet($seriesDetail, $namespacesChartMeta, $marker); + break; + } + } + } + } + return new PHPExcel_Chart_DataSeries($plotType, $multiSeriesType, $plotOrder, $seriesLabel, $seriesCategory, $seriesValues, $smoothLine); + } + + + private static function chartDataSeriesValueSet($seriesDetail, $namespacesChartMeta, $marker = null, $smoothLine = false) + { + if (isset($seriesDetail->strRef)) { + $seriesSource = (string) $seriesDetail->strRef->f; + $seriesData = self::chartDataSeriesValues($seriesDetail->strRef->strCache->children($namespacesChartMeta['c']), 's'); + + return new PHPExcel_Chart_DataSeriesValues('String', $seriesSource, $seriesData['formatCode'], $seriesData['pointCount'], $seriesData['dataValues'], $marker, $smoothLine); + } elseif (isset($seriesDetail->numRef)) { + $seriesSource = (string) $seriesDetail->numRef->f; + $seriesData = self::chartDataSeriesValues($seriesDetail->numRef->numCache->children($namespacesChartMeta['c'])); + + return new PHPExcel_Chart_DataSeriesValues('Number', $seriesSource, $seriesData['formatCode'], $seriesData['pointCount'], $seriesData['dataValues'], $marker, $smoothLine); + } elseif (isset($seriesDetail->multiLvlStrRef)) { + $seriesSource = (string) $seriesDetail->multiLvlStrRef->f; + $seriesData = self::chartDataSeriesValuesMultiLevel($seriesDetail->multiLvlStrRef->multiLvlStrCache->children($namespacesChartMeta['c']), 's'); + $seriesData['pointCount'] = count($seriesData['dataValues']); + + return new PHPExcel_Chart_DataSeriesValues('String', $seriesSource, $seriesData['formatCode'], $seriesData['pointCount'], $seriesData['dataValues'], $marker, $smoothLine); + } elseif (isset($seriesDetail->multiLvlNumRef)) { + $seriesSource = (string) $seriesDetail->multiLvlNumRef->f; + $seriesData = self::chartDataSeriesValuesMultiLevel($seriesDetail->multiLvlNumRef->multiLvlNumCache->children($namespacesChartMeta['c']), 's'); + $seriesData['pointCount'] = count($seriesData['dataValues']); + + return new PHPExcel_Chart_DataSeriesValues('String', $seriesSource, $seriesData['formatCode'], $seriesData['pointCount'], $seriesData['dataValues'], $marker, $smoothLine); + } + return null; + } + + + private static function chartDataSeriesValues($seriesValueSet, $dataType = 'n') + { + $seriesVal = array(); + $formatCode = ''; + $pointCount = 0; + + foreach ($seriesValueSet as $seriesValueIdx => $seriesValue) { + switch ($seriesValueIdx) { + case 'ptCount': + $pointCount = self::getAttribute($seriesValue, 'val', 'integer'); + break; + case 'formatCode': + $formatCode = (string) $seriesValue; + break; + case 'pt': + $pointVal = self::getAttribute($seriesValue, 'idx', 'integer'); + if ($dataType == 's') { + $seriesVal[$pointVal] = (string) $seriesValue->v; + } else { + $seriesVal[$pointVal] = (float) $seriesValue->v; + } + break; + } + } + + return array( + 'formatCode' => $formatCode, + 'pointCount' => $pointCount, + 'dataValues' => $seriesVal + ); + } + + private static function chartDataSeriesValuesMultiLevel($seriesValueSet, $dataType = 'n') + { + $seriesVal = array(); + $formatCode = ''; + $pointCount = 0; + + foreach ($seriesValueSet->lvl as $seriesLevelIdx => $seriesLevel) { + foreach ($seriesLevel as $seriesValueIdx => $seriesValue) { + switch ($seriesValueIdx) { + case 'ptCount': + $pointCount = self::getAttribute($seriesValue, 'val', 'integer'); + break; + case 'formatCode': + $formatCode = (string) $seriesValue; + break; + case 'pt': + $pointVal = self::getAttribute($seriesValue, 'idx', 'integer'); + if ($dataType == 's') { + $seriesVal[$pointVal][] = (string) $seriesValue->v; + } else { + $seriesVal[$pointVal][] = (float) $seriesValue->v; + } + break; + } + } + } + + return array( + 'formatCode' => $formatCode, + 'pointCount' => $pointCount, + 'dataValues' => $seriesVal + ); + } + + private static function parseRichText($titleDetailPart = null) + { + $value = new PHPExcel_RichText(); + + foreach ($titleDetailPart as $titleDetailElementKey => $titleDetailElement) { + if (isset($titleDetailElement->t)) { + $objText = $value->createTextRun((string) $titleDetailElement->t); + } + if (isset($titleDetailElement->rPr)) { + if (isset($titleDetailElement->rPr->rFont["val"])) { + $objText->getFont()->setName((string) $titleDetailElement->rPr->rFont["val"]); + } + + $fontSize = (self::getAttribute($titleDetailElement->rPr, 'sz', 'integer')); + if (!is_null($fontSize)) { + $objText->getFont()->setSize(floor($fontSize / 100)); + } + + $fontColor = (self::getAttribute($titleDetailElement->rPr, 'color', 'string')); + if (!is_null($fontColor)) { + $objText->getFont()->setColor(new PHPExcel_Style_Color(self::readColor($fontColor))); + } + + $bold = self::getAttribute($titleDetailElement->rPr, 'b', 'boolean'); + if (!is_null($bold)) { + $objText->getFont()->setBold($bold); + } + + $italic = self::getAttribute($titleDetailElement->rPr, 'i', 'boolean'); + if (!is_null($italic)) { + $objText->getFont()->setItalic($italic); + } + + $baseline = self::getAttribute($titleDetailElement->rPr, 'baseline', 'integer'); + if (!is_null($baseline)) { + if ($baseline > 0) { + $objText->getFont()->setSuperScript(true); + } elseif ($baseline < 0) { + $objText->getFont()->setSubScript(true); + } + } + + $underscore = (self::getAttribute($titleDetailElement->rPr, 'u', 'string')); + if (!is_null($underscore)) { + if ($underscore == 'sng') { + $objText->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); + } elseif ($underscore == 'dbl') { + $objText->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_DOUBLE); + } else { + $objText->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_NONE); + } + } + + $strikethrough = (self::getAttribute($titleDetailElement->rPr, 's', 'string')); + if (!is_null($strikethrough)) { + if ($strikethrough == 'noStrike') { + $objText->getFont()->setStrikethrough(false); + } else { + $objText->getFont()->setStrikethrough(true); + } + } + } + } + + return $value; + } + + private static function readChartAttributes($chartDetail) + { + $plotAttributes = array(); + if (isset($chartDetail->dLbls)) { + if (isset($chartDetail->dLbls->howLegendKey)) { + $plotAttributes['showLegendKey'] = self::getAttribute($chartDetail->dLbls->showLegendKey, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showVal)) { + $plotAttributes['showVal'] = self::getAttribute($chartDetail->dLbls->showVal, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showCatName)) { + $plotAttributes['showCatName'] = self::getAttribute($chartDetail->dLbls->showCatName, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showSerName)) { + $plotAttributes['showSerName'] = self::getAttribute($chartDetail->dLbls->showSerName, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showPercent)) { + $plotAttributes['showPercent'] = self::getAttribute($chartDetail->dLbls->showPercent, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showBubbleSize)) { + $plotAttributes['showBubbleSize'] = self::getAttribute($chartDetail->dLbls->showBubbleSize, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showLeaderLines)) { + $plotAttributes['showLeaderLines'] = self::getAttribute($chartDetail->dLbls->showLeaderLines, 'val', 'string'); + } + } + + return $plotAttributes; + } + + private static function setChartAttributes($plotArea, $plotAttributes) + { + foreach ($plotAttributes as $plotAttributeKey => $plotAttributeValue) { + switch ($plotAttributeKey) { + case 'showLegendKey': + $plotArea->setShowLegendKey($plotAttributeValue); + break; + case 'showVal': + $plotArea->setShowVal($plotAttributeValue); + break; + case 'showCatName': + $plotArea->setShowCatName($plotAttributeValue); + break; + case 'showSerName': + $plotArea->setShowSerName($plotAttributeValue); + break; + case 'showPercent': + $plotArea->setShowPercent($plotAttributeValue); + break; + case 'showBubbleSize': + $plotArea->setShowBubbleSize($plotAttributeValue); + break; + case 'showLeaderLines': + $plotArea->setShowLeaderLines($plotAttributeValue); + break; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007/Theme.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007/Theme.php new file mode 100644 index 0000000..134f4b6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007/Theme.php @@ -0,0 +1,127 @@ +themeName = $themeName; + $this->colourSchemeName = $colourSchemeName; + $this->colourMap = $colourMap; + } + + /** + * Get Theme Name + * + * @return string + */ + public function getThemeName() + { + return $this->themeName; + } + + /** + * Get colour Scheme Name + * + * @return string + */ + public function getColourSchemeName() + { + return $this->colourSchemeName; + } + + /** + * Get colour Map Value by Position + * + * @return string + */ + public function getColourByIndex($index = 0) + { + if (isset($this->colourMap[$index])) { + return $this->colourMap[$index]; + } + return null; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007/_notes/dwsync.xml new file mode 100644 index 0000000..3ce77f0 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel2007/_notes/dwsync.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5.php new file mode 100644 index 0000000..62e971d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5.php @@ -0,0 +1,7594 @@ +data + * + * @var int + */ + private $dataSize; + + /** + * Current position in stream + * + * @var integer + */ + private $pos; + + /** + * Workbook to be returned by the reader. + * + * @var PHPExcel + */ + private $phpExcel; + + /** + * Worksheet that is currently being built by the reader. + * + * @var PHPExcel_Worksheet + */ + private $phpSheet; + + /** + * BIFF version + * + * @var int + */ + private $version; + + /** + * Codepage set in the Excel file being read. Only important for BIFF5 (Excel 5.0 - Excel 95) + * For BIFF8 (Excel 97 - Excel 2003) this will always have the value 'UTF-16LE' + * + * @var string + */ + private $codepage; + + /** + * Shared formats + * + * @var array + */ + private $formats; + + /** + * Shared fonts + * + * @var array + */ + private $objFonts; + + /** + * Color palette + * + * @var array + */ + private $palette; + + /** + * Worksheets + * + * @var array + */ + private $sheets; + + /** + * External books + * + * @var array + */ + private $externalBooks; + + /** + * REF structures. Only applies to BIFF8. + * + * @var array + */ + private $ref; + + /** + * External names + * + * @var array + */ + private $externalNames; + + /** + * Defined names + * + * @var array + */ + private $definedname; + + /** + * Shared strings. Only applies to BIFF8. + * + * @var array + */ + private $sst; + + /** + * Panes are frozen? (in sheet currently being read). See WINDOW2 record. + * + * @var boolean + */ + private $frozen; + + /** + * Fit printout to number of pages? (in sheet currently being read). See SHEETPR record. + * + * @var boolean + */ + private $isFitToPages; + + /** + * Objects. One OBJ record contributes with one entry. + * + * @var array + */ + private $objs; + + /** + * Text Objects. One TXO record corresponds with one entry. + * + * @var array + */ + private $textObjects; + + /** + * Cell Annotations (BIFF8) + * + * @var array + */ + private $cellNotes; + + /** + * The combined MSODRAWINGGROUP data + * + * @var string + */ + private $drawingGroupData; + + /** + * The combined MSODRAWING data (per sheet) + * + * @var string + */ + private $drawingData; + + /** + * Keep track of XF index + * + * @var int + */ + private $xfIndex; + + /** + * Mapping of XF index (that is a cell XF) to final index in cellXf collection + * + * @var array + */ + private $mapCellXfIndex; + + /** + * Mapping of XF index (that is a style XF) to final index in cellStyleXf collection + * + * @var array + */ + private $mapCellStyleXfIndex; + + /** + * The shared formulas in a sheet. One SHAREDFMLA record contributes with one value. + * + * @var array + */ + private $sharedFormulas; + + /** + * The shared formula parts in a sheet. One FORMULA record contributes with one value if it + * refers to a shared formula. + * + * @var array + */ + private $sharedFormulaParts; + + /** + * The type of encryption in use + * + * @var int + */ + private $encryption = 0; + + /** + * The position in the stream after which contents are encrypted + * + * @var int + */ + private $encryptionStartPos = false; + + /** + * The current RC4 decryption object + * + * @var PHPExcel_Reader_Excel5_RC4 + */ + private $rc4Key = null; + + /** + * The position in the stream that the RC4 decryption object was left at + * + * @var int + */ + private $rc4Pos = 0; + + /** + * The current MD5 context state + * + * @var string + */ + private $md5Ctxt = null; + + /** + * Create a new PHPExcel_Reader_Excel5 instance + */ + public function __construct() + { + $this->readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFilename + * @return boolean + * @throws PHPExcel_Reader_Exception + */ + public function canRead($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + try { + // Use ParseXL for the hard work. + $ole = new PHPExcel_Shared_OLERead(); + + // get excel data + $res = $ole->read($pFilename); + return true; + } catch (PHPExcel_Exception $e) { + return false; + } + } + + /** + * Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetNames($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetNames = array(); + + // Read the OLE file + $this->loadOLE($pFilename); + + // total byte size of Excel data (workbook global substream + sheet substreams) + $this->dataSize = strlen($this->data); + + $this->pos = 0; + $this->sheets = array(); + + // Parse Workbook Global Substream + while ($this->pos < $this->dataSize) { + $code = self::getInt2d($this->data, $this->pos); + + switch ($code) { + case self::XLS_TYPE_BOF: + $this->readBof(); + break; + case self::XLS_TYPE_SHEET: + $this->readSheet(); + break; + case self::XLS_TYPE_EOF: + $this->readDefault(); + break 2; + default: + $this->readDefault(); + break; + } + } + + foreach ($this->sheets as $sheet) { + if ($sheet['sheetType'] != 0x00) { + // 0x00: Worksheet, 0x02: Chart, 0x06: Visual Basic module + continue; + } + + $worksheetNames[] = $sheet['name']; + } + + return $worksheetNames; + } + + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetInfo = array(); + + // Read the OLE file + $this->loadOLE($pFilename); + + // total byte size of Excel data (workbook global substream + sheet substreams) + $this->dataSize = strlen($this->data); + + // initialize + $this->pos = 0; + $this->sheets = array(); + + // Parse Workbook Global Substream + while ($this->pos < $this->dataSize) { + $code = self::getInt2d($this->data, $this->pos); + + switch ($code) { + case self::XLS_TYPE_BOF: + $this->readBof(); + break; + case self::XLS_TYPE_SHEET: + $this->readSheet(); + break; + case self::XLS_TYPE_EOF: + $this->readDefault(); + break 2; + default: + $this->readDefault(); + break; + } + } + + // Parse the individual sheets + foreach ($this->sheets as $sheet) { + if ($sheet['sheetType'] != 0x00) { + // 0x00: Worksheet + // 0x02: Chart + // 0x06: Visual Basic module + continue; + } + + $tmpInfo = array(); + $tmpInfo['worksheetName'] = $sheet['name']; + $tmpInfo['lastColumnLetter'] = 'A'; + $tmpInfo['lastColumnIndex'] = 0; + $tmpInfo['totalRows'] = 0; + $tmpInfo['totalColumns'] = 0; + + $this->pos = $sheet['offset']; + + while ($this->pos <= $this->dataSize - 4) { + $code = self::getInt2d($this->data, $this->pos); + + switch ($code) { + case self::XLS_TYPE_RK: + case self::XLS_TYPE_LABELSST: + case self::XLS_TYPE_NUMBER: + case self::XLS_TYPE_FORMULA: + case self::XLS_TYPE_BOOLERR: + case self::XLS_TYPE_LABEL: + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + $rowIndex = self::getInt2d($recordData, 0) + 1; + $columnIndex = self::getInt2d($recordData, 2); + + $tmpInfo['totalRows'] = max($tmpInfo['totalRows'], $rowIndex); + $tmpInfo['lastColumnIndex'] = max($tmpInfo['lastColumnIndex'], $columnIndex); + break; + case self::XLS_TYPE_BOF: + $this->readBof(); + break; + case self::XLS_TYPE_EOF: + $this->readDefault(); + break 2; + default: + $this->readDefault(); + break; + } + } + + $tmpInfo['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($tmpInfo['lastColumnIndex']); + $tmpInfo['totalColumns'] = $tmpInfo['lastColumnIndex'] + 1; + + $worksheetInfo[] = $tmpInfo; + } + + return $worksheetInfo; + } + + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function load($pFilename) + { + // Read the OLE file + $this->loadOLE($pFilename); + + // Initialisations + $this->phpExcel = new PHPExcel; + $this->phpExcel->removeSheetByIndex(0); // remove 1st sheet + if (!$this->readDataOnly) { + $this->phpExcel->removeCellStyleXfByIndex(0); // remove the default style + $this->phpExcel->removeCellXfByIndex(0); // remove the default style + } + + // Read the summary information stream (containing meta data) + $this->readSummaryInformation(); + + // Read the Additional document summary information stream (containing application-specific meta data) + $this->readDocumentSummaryInformation(); + + // total byte size of Excel data (workbook global substream + sheet substreams) + $this->dataSize = strlen($this->data); + + // initialize + $this->pos = 0; + $this->codepage = 'CP1252'; + $this->formats = array(); + $this->objFonts = array(); + $this->palette = array(); + $this->sheets = array(); + $this->externalBooks = array(); + $this->ref = array(); + $this->definedname = array(); + $this->sst = array(); + $this->drawingGroupData = ''; + $this->xfIndex = ''; + $this->mapCellXfIndex = array(); + $this->mapCellStyleXfIndex = array(); + + // Parse Workbook Global Substream + while ($this->pos < $this->dataSize) { + $code = self::getInt2d($this->data, $this->pos); + + switch ($code) { + case self::XLS_TYPE_BOF: + $this->readBof(); + break; + case self::XLS_TYPE_FILEPASS: + $this->readFilepass(); + break; + case self::XLS_TYPE_CODEPAGE: + $this->readCodepage(); + break; + case self::XLS_TYPE_DATEMODE: + $this->readDateMode(); + break; + case self::XLS_TYPE_FONT: + $this->readFont(); + break; + case self::XLS_TYPE_FORMAT: + $this->readFormat(); + break; + case self::XLS_TYPE_XF: + $this->readXf(); + break; + case self::XLS_TYPE_XFEXT: + $this->readXfExt(); + break; + case self::XLS_TYPE_STYLE: + $this->readStyle(); + break; + case self::XLS_TYPE_PALETTE: + $this->readPalette(); + break; + case self::XLS_TYPE_SHEET: + $this->readSheet(); + break; + case self::XLS_TYPE_EXTERNALBOOK: + $this->readExternalBook(); + break; + case self::XLS_TYPE_EXTERNNAME: + $this->readExternName(); + break; + case self::XLS_TYPE_EXTERNSHEET: + $this->readExternSheet(); + break; + case self::XLS_TYPE_DEFINEDNAME: + $this->readDefinedName(); + break; + case self::XLS_TYPE_MSODRAWINGGROUP: + $this->readMsoDrawingGroup(); + break; + case self::XLS_TYPE_SST: + $this->readSst(); + break; + case self::XLS_TYPE_EOF: + $this->readDefault(); + break 2; + default: + $this->readDefault(); + break; + } + } + + // Resolve indexed colors for font, fill, and border colors + // Cannot be resolved already in XF record, because PALETTE record comes afterwards + if (!$this->readDataOnly) { + foreach ($this->objFonts as $objFont) { + if (isset($objFont->colorIndex)) { + $color = PHPExcel_Reader_Excel5_Color::map($objFont->colorIndex, $this->palette, $this->version); + $objFont->getColor()->setRGB($color['rgb']); + } + } + + foreach ($this->phpExcel->getCellXfCollection() as $objStyle) { + // fill start and end color + $fill = $objStyle->getFill(); + + if (isset($fill->startcolorIndex)) { + $startColor = PHPExcel_Reader_Excel5_Color::map($fill->startcolorIndex, $this->palette, $this->version); + $fill->getStartColor()->setRGB($startColor['rgb']); + } + if (isset($fill->endcolorIndex)) { + $endColor = PHPExcel_Reader_Excel5_Color::map($fill->endcolorIndex, $this->palette, $this->version); + $fill->getEndColor()->setRGB($endColor['rgb']); + } + + // border colors + $top = $objStyle->getBorders()->getTop(); + $right = $objStyle->getBorders()->getRight(); + $bottom = $objStyle->getBorders()->getBottom(); + $left = $objStyle->getBorders()->getLeft(); + $diagonal = $objStyle->getBorders()->getDiagonal(); + + if (isset($top->colorIndex)) { + $borderTopColor = PHPExcel_Reader_Excel5_Color::map($top->colorIndex, $this->palette, $this->version); + $top->getColor()->setRGB($borderTopColor['rgb']); + } + if (isset($right->colorIndex)) { + $borderRightColor = PHPExcel_Reader_Excel5_Color::map($right->colorIndex, $this->palette, $this->version); + $right->getColor()->setRGB($borderRightColor['rgb']); + } + if (isset($bottom->colorIndex)) { + $borderBottomColor = PHPExcel_Reader_Excel5_Color::map($bottom->colorIndex, $this->palette, $this->version); + $bottom->getColor()->setRGB($borderBottomColor['rgb']); + } + if (isset($left->colorIndex)) { + $borderLeftColor = PHPExcel_Reader_Excel5_Color::map($left->colorIndex, $this->palette, $this->version); + $left->getColor()->setRGB($borderLeftColor['rgb']); + } + if (isset($diagonal->colorIndex)) { + $borderDiagonalColor = PHPExcel_Reader_Excel5_Color::map($diagonal->colorIndex, $this->palette, $this->version); + $diagonal->getColor()->setRGB($borderDiagonalColor['rgb']); + } + } + } + + // treat MSODRAWINGGROUP records, workbook-level Escher + if (!$this->readDataOnly && $this->drawingGroupData) { + $escherWorkbook = new PHPExcel_Shared_Escher(); + $reader = new PHPExcel_Reader_Excel5_Escher($escherWorkbook); + $escherWorkbook = $reader->load($this->drawingGroupData); + + // debug Escher stream + //$debug = new Debug_Escher(new PHPExcel_Shared_Escher()); + //$debug->load($this->drawingGroupData); + } + + // Parse the individual sheets + foreach ($this->sheets as $sheet) { + if ($sheet['sheetType'] != 0x00) { + // 0x00: Worksheet, 0x02: Chart, 0x06: Visual Basic module + continue; + } + + // check if sheet should be skipped + if (isset($this->loadSheetsOnly) && !in_array($sheet['name'], $this->loadSheetsOnly)) { + continue; + } + + // add sheet to PHPExcel object + $this->phpSheet = $this->phpExcel->createSheet(); + // Use false for $updateFormulaCellReferences to prevent adjustment of worksheet references in formula + // cells... during the load, all formulae should be correct, and we're simply bringing the worksheet + // name in line with the formula, not the reverse + $this->phpSheet->setTitle($sheet['name'], false); + $this->phpSheet->setSheetState($sheet['sheetState']); + + $this->pos = $sheet['offset']; + + // Initialize isFitToPages. May change after reading SHEETPR record. + $this->isFitToPages = false; + + // Initialize drawingData + $this->drawingData = ''; + + // Initialize objs + $this->objs = array(); + + // Initialize shared formula parts + $this->sharedFormulaParts = array(); + + // Initialize shared formulas + $this->sharedFormulas = array(); + + // Initialize text objs + $this->textObjects = array(); + + // Initialize cell annotations + $this->cellNotes = array(); + $this->textObjRef = -1; + + while ($this->pos <= $this->dataSize - 4) { + $code = self::getInt2d($this->data, $this->pos); + + switch ($code) { + case self::XLS_TYPE_BOF: + $this->readBof(); + break; + case self::XLS_TYPE_PRINTGRIDLINES: + $this->readPrintGridlines(); + break; + case self::XLS_TYPE_DEFAULTROWHEIGHT: + $this->readDefaultRowHeight(); + break; + case self::XLS_TYPE_SHEETPR: + $this->readSheetPr(); + break; + case self::XLS_TYPE_HORIZONTALPAGEBREAKS: + $this->readHorizontalPageBreaks(); + break; + case self::XLS_TYPE_VERTICALPAGEBREAKS: + $this->readVerticalPageBreaks(); + break; + case self::XLS_TYPE_HEADER: + $this->readHeader(); + break; + case self::XLS_TYPE_FOOTER: + $this->readFooter(); + break; + case self::XLS_TYPE_HCENTER: + $this->readHcenter(); + break; + case self::XLS_TYPE_VCENTER: + $this->readVcenter(); + break; + case self::XLS_TYPE_LEFTMARGIN: + $this->readLeftMargin(); + break; + case self::XLS_TYPE_RIGHTMARGIN: + $this->readRightMargin(); + break; + case self::XLS_TYPE_TOPMARGIN: + $this->readTopMargin(); + break; + case self::XLS_TYPE_BOTTOMMARGIN: + $this->readBottomMargin(); + break; + case self::XLS_TYPE_PAGESETUP: + $this->readPageSetup(); + break; + case self::XLS_TYPE_PROTECT: + $this->readProtect(); + break; + case self::XLS_TYPE_SCENPROTECT: + $this->readScenProtect(); + break; + case self::XLS_TYPE_OBJECTPROTECT: + $this->readObjectProtect(); + break; + case self::XLS_TYPE_PASSWORD: + $this->readPassword(); + break; + case self::XLS_TYPE_DEFCOLWIDTH: + $this->readDefColWidth(); + break; + case self::XLS_TYPE_COLINFO: + $this->readColInfo(); + break; + case self::XLS_TYPE_DIMENSION: + $this->readDefault(); + break; + case self::XLS_TYPE_ROW: + $this->readRow(); + break; + case self::XLS_TYPE_DBCELL: + $this->readDefault(); + break; + case self::XLS_TYPE_RK: + $this->readRk(); + break; + case self::XLS_TYPE_LABELSST: + $this->readLabelSst(); + break; + case self::XLS_TYPE_MULRK: + $this->readMulRk(); + break; + case self::XLS_TYPE_NUMBER: + $this->readNumber(); + break; + case self::XLS_TYPE_FORMULA: + $this->readFormula(); + break; + case self::XLS_TYPE_SHAREDFMLA: + $this->readSharedFmla(); + break; + case self::XLS_TYPE_BOOLERR: + $this->readBoolErr(); + break; + case self::XLS_TYPE_MULBLANK: + $this->readMulBlank(); + break; + case self::XLS_TYPE_LABEL: + $this->readLabel(); + break; + case self::XLS_TYPE_BLANK: + $this->readBlank(); + break; + case self::XLS_TYPE_MSODRAWING: + $this->readMsoDrawing(); + break; + case self::XLS_TYPE_OBJ: + $this->readObj(); + break; + case self::XLS_TYPE_WINDOW2: + $this->readWindow2(); + break; + case self::XLS_TYPE_PAGELAYOUTVIEW: + $this->readPageLayoutView(); + break; + case self::XLS_TYPE_SCL: + $this->readScl(); + break; + case self::XLS_TYPE_PANE: + $this->readPane(); + break; + case self::XLS_TYPE_SELECTION: + $this->readSelection(); + break; + case self::XLS_TYPE_MERGEDCELLS: + $this->readMergedCells(); + break; + case self::XLS_TYPE_HYPERLINK: + $this->readHyperLink(); + break; + case self::XLS_TYPE_DATAVALIDATIONS: + $this->readDataValidations(); + break; + case self::XLS_TYPE_DATAVALIDATION: + $this->readDataValidation(); + break; + case self::XLS_TYPE_SHEETLAYOUT: + $this->readSheetLayout(); + break; + case self::XLS_TYPE_SHEETPROTECTION: + $this->readSheetProtection(); + break; + case self::XLS_TYPE_RANGEPROTECTION: + $this->readRangeProtection(); + break; + case self::XLS_TYPE_NOTE: + $this->readNote(); + break; + //case self::XLS_TYPE_IMDATA: $this->readImData(); break; + case self::XLS_TYPE_TXO: + $this->readTextObject(); + break; + case self::XLS_TYPE_CONTINUE: + $this->readContinue(); + break; + case self::XLS_TYPE_EOF: + $this->readDefault(); + break 2; + default: + $this->readDefault(); + break; + } + + } + + // treat MSODRAWING records, sheet-level Escher + if (!$this->readDataOnly && $this->drawingData) { + $escherWorksheet = new PHPExcel_Shared_Escher(); + $reader = new PHPExcel_Reader_Excel5_Escher($escherWorksheet); + $escherWorksheet = $reader->load($this->drawingData); + + // debug Escher stream + //$debug = new Debug_Escher(new PHPExcel_Shared_Escher()); + //$debug->load($this->drawingData); + + // get all spContainers in one long array, so they can be mapped to OBJ records + $allSpContainers = $escherWorksheet->getDgContainer()->getSpgrContainer()->getAllSpContainers(); + } + + // treat OBJ records + foreach ($this->objs as $n => $obj) { +// echo '
Object reference is ', $n,'
'; +// var_dump($obj); +// echo '
'; + + // the first shape container never has a corresponding OBJ record, hence $n + 1 + if (isset($allSpContainers[$n + 1]) && is_object($allSpContainers[$n + 1])) { + $spContainer = $allSpContainers[$n + 1]; + + // we skip all spContainers that are a part of a group shape since we cannot yet handle those + if ($spContainer->getNestingLevel() > 1) { + continue; + } + + // calculate the width and height of the shape + list($startColumn, $startRow) = PHPExcel_Cell::coordinateFromString($spContainer->getStartCoordinates()); + list($endColumn, $endRow) = PHPExcel_Cell::coordinateFromString($spContainer->getEndCoordinates()); + + $startOffsetX = $spContainer->getStartOffsetX(); + $startOffsetY = $spContainer->getStartOffsetY(); + $endOffsetX = $spContainer->getEndOffsetX(); + $endOffsetY = $spContainer->getEndOffsetY(); + + $width = PHPExcel_Shared_Excel5::getDistanceX($this->phpSheet, $startColumn, $startOffsetX, $endColumn, $endOffsetX); + $height = PHPExcel_Shared_Excel5::getDistanceY($this->phpSheet, $startRow, $startOffsetY, $endRow, $endOffsetY); + + // calculate offsetX and offsetY of the shape + $offsetX = $startOffsetX * PHPExcel_Shared_Excel5::sizeCol($this->phpSheet, $startColumn) / 1024; + $offsetY = $startOffsetY * PHPExcel_Shared_Excel5::sizeRow($this->phpSheet, $startRow) / 256; + + switch ($obj['otObjType']) { + case 0x19: + // Note +// echo 'Cell Annotation Object
'; +// echo 'Object ID is ', $obj['idObjID'],'
'; + if (isset($this->cellNotes[$obj['idObjID']])) { + $cellNote = $this->cellNotes[$obj['idObjID']]; + + if (isset($this->textObjects[$obj['idObjID']])) { + $textObject = $this->textObjects[$obj['idObjID']]; + $this->cellNotes[$obj['idObjID']]['objTextData'] = $textObject; + } + } + break; + case 0x08: +// echo 'Picture Object
'; + // picture + // get index to BSE entry (1-based) + $BSEindex = $spContainer->getOPT(0x0104); + $BSECollection = $escherWorkbook->getDggContainer()->getBstoreContainer()->getBSECollection(); + $BSE = $BSECollection[$BSEindex - 1]; + $blipType = $BSE->getBlipType(); + + // need check because some blip types are not supported by Escher reader such as EMF + if ($blip = $BSE->getBlip()) { + $ih = imagecreatefromstring($blip->getData()); + $drawing = new PHPExcel_Worksheet_MemoryDrawing(); + $drawing->setImageResource($ih); + + // width, height, offsetX, offsetY + $drawing->setResizeProportional(false); + $drawing->setWidth($width); + $drawing->setHeight($height); + $drawing->setOffsetX($offsetX); + $drawing->setOffsetY($offsetY); + + switch ($blipType) { + case PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_JPEG: + $drawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG); + $drawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_JPEG); + break; + case PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG: + $drawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_PNG); + $drawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_PNG); + break; + } + + $drawing->setWorksheet($this->phpSheet); + $drawing->setCoordinates($spContainer->getStartCoordinates()); + } + break; + default: + // other object type + break; + } + } + } + + // treat SHAREDFMLA records + if ($this->version == self::XLS_BIFF8) { + foreach ($this->sharedFormulaParts as $cell => $baseCell) { + list($column, $row) = PHPExcel_Cell::coordinateFromString($cell); + if (($this->getReadFilter() !== null) && $this->getReadFilter()->readCell($column, $row, $this->phpSheet->getTitle())) { + $formula = $this->getFormulaFromStructure($this->sharedFormulas[$baseCell], $cell); + $this->phpSheet->getCell($cell)->setValueExplicit('=' . $formula, PHPExcel_Cell_DataType::TYPE_FORMULA); + } + } + } + + if (!empty($this->cellNotes)) { + foreach ($this->cellNotes as $note => $noteDetails) { + if (!isset($noteDetails['objTextData'])) { + if (isset($this->textObjects[$note])) { + $textObject = $this->textObjects[$note]; + $noteDetails['objTextData'] = $textObject; + } else { + $noteDetails['objTextData']['text'] = ''; + } + } +// echo 'Cell annotation ', $note,'
'; +// var_dump($noteDetails); +// echo '
'; + $cellAddress = str_replace('$', '', $noteDetails['cellRef']); + $this->phpSheet->getComment($cellAddress)->setAuthor($noteDetails['author'])->setText($this->parseRichText($noteDetails['objTextData']['text'])); + } + } + } + + // add the named ranges (defined names) + foreach ($this->definedname as $definedName) { + if ($definedName['isBuiltInName']) { + switch ($definedName['name']) { + case pack('C', 0x06): + // print area + // in general, formula looks like this: Foo!$C$7:$J$66,Bar!$A$1:$IV$2 + $ranges = explode(',', $definedName['formula']); // FIXME: what if sheetname contains comma? + + $extractedRanges = array(); + foreach ($ranges as $range) { + // $range should look like one of these + // Foo!$C$7:$J$66 + // Bar!$A$1:$IV$2 + $explodes = explode('!', $range); // FIXME: what if sheetname contains exclamation mark? + $sheetName = trim($explodes[0], "'"); + if (count($explodes) == 2) { + if (strpos($explodes[1], ':') === false) { + $explodes[1] = $explodes[1] . ':' . $explodes[1]; + } + $extractedRanges[] = str_replace('$', '', $explodes[1]); // C7:J66 + } + } + if ($docSheet = $this->phpExcel->getSheetByName($sheetName)) { + $docSheet->getPageSetup()->setPrintArea(implode(',', $extractedRanges)); // C7:J66,A1:IV2 + } + break; + case pack('C', 0x07): + // print titles (repeating rows) + // Assuming BIFF8, there are 3 cases + // 1. repeating rows + // formula looks like this: Sheet!$A$1:$IV$2 + // rows 1-2 repeat + // 2. repeating columns + // formula looks like this: Sheet!$A$1:$B$65536 + // columns A-B repeat + // 3. both repeating rows and repeating columns + // formula looks like this: Sheet!$A$1:$B$65536,Sheet!$A$1:$IV$2 + $ranges = explode(',', $definedName['formula']); // FIXME: what if sheetname contains comma? + foreach ($ranges as $range) { + // $range should look like this one of these + // Sheet!$A$1:$B$65536 + // Sheet!$A$1:$IV$2 + $explodes = explode('!', $range); + if (count($explodes) == 2) { + if ($docSheet = $this->phpExcel->getSheetByName($explodes[0])) { + $extractedRange = $explodes[1]; + $extractedRange = str_replace('$', '', $extractedRange); + + $coordinateStrings = explode(':', $extractedRange); + if (count($coordinateStrings) == 2) { + list($firstColumn, $firstRow) = PHPExcel_Cell::coordinateFromString($coordinateStrings[0]); + list($lastColumn, $lastRow) = PHPExcel_Cell::coordinateFromString($coordinateStrings[1]); + + if ($firstColumn == 'A' and $lastColumn == 'IV') { + // then we have repeating rows + $docSheet->getPageSetup()->setRowsToRepeatAtTop(array($firstRow, $lastRow)); + } elseif ($firstRow == 1 and $lastRow == 65536) { + // then we have repeating columns + $docSheet->getPageSetup()->setColumnsToRepeatAtLeft(array($firstColumn, $lastColumn)); + } + } + } + } + } + break; + } + } else { + // Extract range + $explodes = explode('!', $definedName['formula']); + + if (count($explodes) == 2) { + if (($docSheet = $this->phpExcel->getSheetByName($explodes[0])) || + ($docSheet = $this->phpExcel->getSheetByName(trim($explodes[0], "'")))) { + $extractedRange = $explodes[1]; + $extractedRange = str_replace('$', '', $extractedRange); + + $localOnly = ($definedName['scope'] == 0) ? false : true; + + $scope = ($definedName['scope'] == 0) ? null : $this->phpExcel->getSheetByName($this->sheets[$definedName['scope'] - 1]['name']); + + $this->phpExcel->addNamedRange(new PHPExcel_NamedRange((string)$definedName['name'], $docSheet, $extractedRange, $localOnly, $scope)); + } + } else { + // Named Value + // TODO Provide support for named values + } + } + } + $this->data = null; + + return $this->phpExcel; + } + + /** + * Read record data from stream, decrypting as required + * + * @param string $data Data stream to read from + * @param int $pos Position to start reading from + * @param int $length Record data length + * + * @return string Record data + */ + private function readRecordData($data, $pos, $len) + { + $data = substr($data, $pos, $len); + + // File not encrypted, or record before encryption start point + if ($this->encryption == self::MS_BIFF_CRYPTO_NONE || $pos < $this->encryptionStartPos) { + return $data; + } + + $recordData = ''; + if ($this->encryption == self::MS_BIFF_CRYPTO_RC4) { + $oldBlock = floor($this->rc4Pos / self::REKEY_BLOCK); + $block = floor($pos / self::REKEY_BLOCK); + $endBlock = floor(($pos + $len) / self::REKEY_BLOCK); + + // Spin an RC4 decryptor to the right spot. If we have a decryptor sitting + // at a point earlier in the current block, re-use it as we can save some time. + if ($block != $oldBlock || $pos < $this->rc4Pos || !$this->rc4Key) { + $this->rc4Key = $this->makeKey($block, $this->md5Ctxt); + $step = $pos % self::REKEY_BLOCK; + } else { + $step = $pos - $this->rc4Pos; + } + $this->rc4Key->RC4(str_repeat("\0", $step)); + + // Decrypt record data (re-keying at the end of every block) + while ($block != $endBlock) { + $step = self::REKEY_BLOCK - ($pos % self::REKEY_BLOCK); + $recordData .= $this->rc4Key->RC4(substr($data, 0, $step)); + $data = substr($data, $step); + $pos += $step; + $len -= $step; + $block++; + $this->rc4Key = $this->makeKey($block, $this->md5Ctxt); + } + $recordData .= $this->rc4Key->RC4(substr($data, 0, $len)); + + // Keep track of the position of this decryptor. + // We'll try and re-use it later if we can to speed things up + $this->rc4Pos = $pos + $len; + } elseif ($this->encryption == self::MS_BIFF_CRYPTO_XOR) { + throw new PHPExcel_Reader_Exception('XOr encryption not supported'); + } + return $recordData; + } + + /** + * Use OLE reader to extract the relevant data streams from the OLE file + * + * @param string $pFilename + */ + private function loadOLE($pFilename) + { + // OLE reader + $ole = new PHPExcel_Shared_OLERead(); + // get excel data, + $res = $ole->read($pFilename); + // Get workbook data: workbook stream + sheet streams + $this->data = $ole->getStream($ole->wrkbook); + // Get summary information data + $this->summaryInformation = $ole->getStream($ole->summaryInformation); + // Get additional document summary information data + $this->documentSummaryInformation = $ole->getStream($ole->documentSummaryInformation); + // Get user-defined property data +// $this->userDefinedProperties = $ole->getUserDefinedProperties(); + } + + + /** + * Read summary information + */ + private function readSummaryInformation() + { + if (!isset($this->summaryInformation)) { + return; + } + + // offset: 0; size: 2; must be 0xFE 0xFF (UTF-16 LE byte order mark) + // offset: 2; size: 2; + // offset: 4; size: 2; OS version + // offset: 6; size: 2; OS indicator + // offset: 8; size: 16 + // offset: 24; size: 4; section count + $secCount = self::getInt4d($this->summaryInformation, 24); + + // offset: 28; size: 16; first section's class id: e0 85 9f f2 f9 4f 68 10 ab 91 08 00 2b 27 b3 d9 + // offset: 44; size: 4 + $secOffset = self::getInt4d($this->summaryInformation, 44); + + // section header + // offset: $secOffset; size: 4; section length + $secLength = self::getInt4d($this->summaryInformation, $secOffset); + + // offset: $secOffset+4; size: 4; property count + $countProperties = self::getInt4d($this->summaryInformation, $secOffset+4); + + // initialize code page (used to resolve string values) + $codePage = 'CP1252'; + + // offset: ($secOffset+8); size: var + // loop through property decarations and properties + for ($i = 0; $i < $countProperties; ++$i) { + // offset: ($secOffset+8) + (8 * $i); size: 4; property ID + $id = self::getInt4d($this->summaryInformation, ($secOffset+8) + (8 * $i)); + + // Use value of property id as appropriate + // offset: ($secOffset+12) + (8 * $i); size: 4; offset from beginning of section (48) + $offset = self::getInt4d($this->summaryInformation, ($secOffset+12) + (8 * $i)); + + $type = self::getInt4d($this->summaryInformation, $secOffset + $offset); + + // initialize property value + $value = null; + + // extract property value based on property type + switch ($type) { + case 0x02: // 2 byte signed integer + $value = self::getInt2d($this->summaryInformation, $secOffset + 4 + $offset); + break; + case 0x03: // 4 byte signed integer + $value = self::getInt4d($this->summaryInformation, $secOffset + 4 + $offset); + break; + case 0x13: // 4 byte unsigned integer + // not needed yet, fix later if necessary + break; + case 0x1E: // null-terminated string prepended by dword string length + $byteLength = self::getInt4d($this->summaryInformation, $secOffset + 4 + $offset); + $value = substr($this->summaryInformation, $secOffset + 8 + $offset, $byteLength); + $value = PHPExcel_Shared_String::ConvertEncoding($value, 'UTF-8', $codePage); + $value = rtrim($value); + break; + case 0x40: // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + // PHP-time + $value = PHPExcel_Shared_OLE::OLE2LocalDate(substr($this->summaryInformation, $secOffset + 4 + $offset, 8)); + break; + case 0x47: // Clipboard format + // not needed yet, fix later if necessary + break; + } + + switch ($id) { + case 0x01: // Code Page + $codePage = PHPExcel_Shared_CodePage::NumberToName($value); + break; + case 0x02: // Title + $this->phpExcel->getProperties()->setTitle($value); + break; + case 0x03: // Subject + $this->phpExcel->getProperties()->setSubject($value); + break; + case 0x04: // Author (Creator) + $this->phpExcel->getProperties()->setCreator($value); + break; + case 0x05: // Keywords + $this->phpExcel->getProperties()->setKeywords($value); + break; + case 0x06: // Comments (Description) + $this->phpExcel->getProperties()->setDescription($value); + break; + case 0x07: // Template + // Not supported by PHPExcel + break; + case 0x08: // Last Saved By (LastModifiedBy) + $this->phpExcel->getProperties()->setLastModifiedBy($value); + break; + case 0x09: // Revision + // Not supported by PHPExcel + break; + case 0x0A: // Total Editing Time + // Not supported by PHPExcel + break; + case 0x0B: // Last Printed + // Not supported by PHPExcel + break; + case 0x0C: // Created Date/Time + $this->phpExcel->getProperties()->setCreated($value); + break; + case 0x0D: // Modified Date/Time + $this->phpExcel->getProperties()->setModified($value); + break; + case 0x0E: // Number of Pages + // Not supported by PHPExcel + break; + case 0x0F: // Number of Words + // Not supported by PHPExcel + break; + case 0x10: // Number of Characters + // Not supported by PHPExcel + break; + case 0x11: // Thumbnail + // Not supported by PHPExcel + break; + case 0x12: // Name of creating application + // Not supported by PHPExcel + break; + case 0x13: // Security + // Not supported by PHPExcel + break; + } + } + } + + + /** + * Read additional document summary information + */ + private function readDocumentSummaryInformation() + { + if (!isset($this->documentSummaryInformation)) { + return; + } + + // offset: 0; size: 2; must be 0xFE 0xFF (UTF-16 LE byte order mark) + // offset: 2; size: 2; + // offset: 4; size: 2; OS version + // offset: 6; size: 2; OS indicator + // offset: 8; size: 16 + // offset: 24; size: 4; section count + $secCount = self::getInt4d($this->documentSummaryInformation, 24); +// echo '$secCount = ', $secCount,'
'; + + // offset: 28; size: 16; first section's class id: 02 d5 cd d5 9c 2e 1b 10 93 97 08 00 2b 2c f9 ae + // offset: 44; size: 4; first section offset + $secOffset = self::getInt4d($this->documentSummaryInformation, 44); +// echo '$secOffset = ', $secOffset,'
'; + + // section header + // offset: $secOffset; size: 4; section length + $secLength = self::getInt4d($this->documentSummaryInformation, $secOffset); +// echo '$secLength = ', $secLength,'
'; + + // offset: $secOffset+4; size: 4; property count + $countProperties = self::getInt4d($this->documentSummaryInformation, $secOffset+4); +// echo '$countProperties = ', $countProperties,'
'; + + // initialize code page (used to resolve string values) + $codePage = 'CP1252'; + + // offset: ($secOffset+8); size: var + // loop through property decarations and properties + for ($i = 0; $i < $countProperties; ++$i) { +// echo 'Property ', $i,'
'; + // offset: ($secOffset+8) + (8 * $i); size: 4; property ID + $id = self::getInt4d($this->documentSummaryInformation, ($secOffset+8) + (8 * $i)); +// echo 'ID is ', $id,'
'; + + // Use value of property id as appropriate + // offset: 60 + 8 * $i; size: 4; offset from beginning of section (48) + $offset = self::getInt4d($this->documentSummaryInformation, ($secOffset+12) + (8 * $i)); + + $type = self::getInt4d($this->documentSummaryInformation, $secOffset + $offset); +// echo 'Type is ', $type,', '; + + // initialize property value + $value = null; + + // extract property value based on property type + switch ($type) { + case 0x02: // 2 byte signed integer + $value = self::getInt2d($this->documentSummaryInformation, $secOffset + 4 + $offset); + break; + case 0x03: // 4 byte signed integer + $value = self::getInt4d($this->documentSummaryInformation, $secOffset + 4 + $offset); + break; + case 0x0B: // Boolean + $value = self::getInt2d($this->documentSummaryInformation, $secOffset + 4 + $offset); + $value = ($value == 0 ? false : true); + break; + case 0x13: // 4 byte unsigned integer + // not needed yet, fix later if necessary + break; + case 0x1E: // null-terminated string prepended by dword string length + $byteLength = self::getInt4d($this->documentSummaryInformation, $secOffset + 4 + $offset); + $value = substr($this->documentSummaryInformation, $secOffset + 8 + $offset, $byteLength); + $value = PHPExcel_Shared_String::ConvertEncoding($value, 'UTF-8', $codePage); + $value = rtrim($value); + break; + case 0x40: // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + // PHP-Time + $value = PHPExcel_Shared_OLE::OLE2LocalDate(substr($this->documentSummaryInformation, $secOffset + 4 + $offset, 8)); + break; + case 0x47: // Clipboard format + // not needed yet, fix later if necessary + break; + } + + switch ($id) { + case 0x01: // Code Page + $codePage = PHPExcel_Shared_CodePage::NumberToName($value); + break; + case 0x02: // Category + $this->phpExcel->getProperties()->setCategory($value); + break; + case 0x03: // Presentation Target + // Not supported by PHPExcel + break; + case 0x04: // Bytes + // Not supported by PHPExcel + break; + case 0x05: // Lines + // Not supported by PHPExcel + break; + case 0x06: // Paragraphs + // Not supported by PHPExcel + break; + case 0x07: // Slides + // Not supported by PHPExcel + break; + case 0x08: // Notes + // Not supported by PHPExcel + break; + case 0x09: // Hidden Slides + // Not supported by PHPExcel + break; + case 0x0A: // MM Clips + // Not supported by PHPExcel + break; + case 0x0B: // Scale Crop + // Not supported by PHPExcel + break; + case 0x0C: // Heading Pairs + // Not supported by PHPExcel + break; + case 0x0D: // Titles of Parts + // Not supported by PHPExcel + break; + case 0x0E: // Manager + $this->phpExcel->getProperties()->setManager($value); + break; + case 0x0F: // Company + $this->phpExcel->getProperties()->setCompany($value); + break; + case 0x10: // Links up-to-date + // Not supported by PHPExcel + break; + } + } + } + + + /** + * Reads a general type of BIFF record. Does nothing except for moving stream pointer forward to next record. + */ + private function readDefault() + { + $length = self::getInt2d($this->data, $this->pos + 2); +// $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + } + + + /** + * The NOTE record specifies a comment associated with a particular cell. In Excel 95 (BIFF7) and earlier versions, + * this record stores a note (cell note). This feature was significantly enhanced in Excel 97. + */ + private function readNote() + { +// echo 'Read Cell Annotation
'; + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->readDataOnly) { + return; + } + + $cellAddress = $this->readBIFF8CellAddress(substr($recordData, 0, 4)); + if ($this->version == self::XLS_BIFF8) { + $noteObjID = self::getInt2d($recordData, 6); + $noteAuthor = self::readUnicodeStringLong(substr($recordData, 8)); + $noteAuthor = $noteAuthor['value']; +// echo 'Note Address=', $cellAddress,'
'; +// echo 'Note Object ID=', $noteObjID,'
'; +// echo 'Note Author=', $noteAuthor,'
'; +// + $this->cellNotes[$noteObjID] = array( + 'cellRef' => $cellAddress, + 'objectID' => $noteObjID, + 'author' => $noteAuthor + ); + } else { + $extension = false; + if ($cellAddress == '$B$65536') { + // If the address row is -1 and the column is 0, (which translates as $B$65536) then this is a continuation + // note from the previous cell annotation. We're not yet handling this, so annotations longer than the + // max 2048 bytes will probably throw a wobbly. + $row = self::getInt2d($recordData, 0); + $extension = true; + $cellAddress = array_pop(array_keys($this->phpSheet->getComments())); + } +// echo 'Note Address=', $cellAddress,'
'; + + $cellAddress = str_replace('$', '', $cellAddress); + $noteLength = self::getInt2d($recordData, 4); + $noteText = trim(substr($recordData, 6)); +// echo 'Note Length=', $noteLength,'
'; +// echo 'Note Text=', $noteText,'
'; + + if ($extension) { + // Concatenate this extension with the currently set comment for the cell + $comment = $this->phpSheet->getComment($cellAddress); + $commentText = $comment->getText()->getPlainText(); + $comment->setText($this->parseRichText($commentText.$noteText)); + } else { + // Set comment for the cell + $this->phpSheet->getComment($cellAddress)->setText($this->parseRichText($noteText)); +// ->setAuthor($author) + } + } + + } + + + /** + * The TEXT Object record contains the text associated with a cell annotation. + */ + private function readTextObject() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->readDataOnly) { + return; + } + + // recordData consists of an array of subrecords looking like this: + // grbit: 2 bytes; Option Flags + // rot: 2 bytes; rotation + // cchText: 2 bytes; length of the text (in the first continue record) + // cbRuns: 2 bytes; length of the formatting (in the second continue record) + // followed by the continuation records containing the actual text and formatting + $grbitOpts = self::getInt2d($recordData, 0); + $rot = self::getInt2d($recordData, 2); + $cchText = self::getInt2d($recordData, 10); + $cbRuns = self::getInt2d($recordData, 12); + $text = $this->getSplicedRecordData(); + + $this->textObjects[$this->textObjRef] = array( + 'text' => substr($text["recordData"], $text["spliceOffsets"][0]+1, $cchText), + 'format' => substr($text["recordData"], $text["spliceOffsets"][1], $cbRuns), + 'alignment' => $grbitOpts, + 'rotation' => $rot + ); + +// echo '_readTextObject()
'; +// var_dump($this->textObjects[$this->textObjRef]); +// echo '
'; + } + + + /** + * Read BOF + */ + private function readBof() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = substr($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 2; size: 2; type of the following data + $substreamType = self::getInt2d($recordData, 2); + + switch ($substreamType) { + case self::XLS_WorkbookGlobals: + $version = self::getInt2d($recordData, 0); + if (($version != self::XLS_BIFF8) && ($version != self::XLS_BIFF7)) { + throw new PHPExcel_Reader_Exception('Cannot read this Excel file. Version is too old.'); + } + $this->version = $version; + break; + case self::XLS_Worksheet: + // do not use this version information for anything + // it is unreliable (OpenOffice doc, 5.8), use only version information from the global stream + break; + default: + // substream, e.g. chart + // just skip the entire substream + do { + $code = self::getInt2d($this->data, $this->pos); + $this->readDefault(); + } while ($code != self::XLS_TYPE_EOF && $this->pos < $this->dataSize); + break; + } + } + + + /** + * FILEPASS + * + * This record is part of the File Protection Block. It + * contains information about the read/write password of the + * file. All record contents following this record will be + * encrypted. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + * + * The decryption functions and objects used from here on in + * are based on the source of Spreadsheet-ParseExcel: + * http://search.cpan.org/~jmcnamara/Spreadsheet-ParseExcel/ + */ + private function readFilepass() + { + $length = self::getInt2d($this->data, $this->pos + 2); + + if ($length != 54) { + throw new PHPExcel_Reader_Exception('Unexpected file pass record length'); + } + + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->verifyPassword('VelvetSweatshop', substr($recordData, 6, 16), substr($recordData, 22, 16), substr($recordData, 38, 16), $this->md5Ctxt)) { + throw new PHPExcel_Reader_Exception('Decryption password incorrect'); + } + + $this->encryption = self::MS_BIFF_CRYPTO_RC4; + + // Decryption required from the record after next onwards + $this->encryptionStartPos = $this->pos + self::getInt2d($this->data, $this->pos + 2); + } + + /** + * Make an RC4 decryptor for the given block + * + * @var int $block Block for which to create decrypto + * @var string $valContext MD5 context state + * + * @return PHPExcel_Reader_Excel5_RC4 + */ + private function makeKey($block, $valContext) + { + $pwarray = str_repeat("\0", 64); + + for ($i = 0; $i < 5; $i++) { + $pwarray[$i] = $valContext[$i]; + } + + $pwarray[5] = chr($block & 0xff); + $pwarray[6] = chr(($block >> 8) & 0xff); + $pwarray[7] = chr(($block >> 16) & 0xff); + $pwarray[8] = chr(($block >> 24) & 0xff); + + $pwarray[9] = "\x80"; + $pwarray[56] = "\x48"; + + $md5 = new PHPExcel_Reader_Excel5_MD5(); + $md5->add($pwarray); + + $s = $md5->getContext(); + return new PHPExcel_Reader_Excel5_RC4($s); + } + + /** + * Verify RC4 file password + * + * @var string $password Password to check + * @var string $docid Document id + * @var string $salt_data Salt data + * @var string $hashedsalt_data Hashed salt data + * @var string &$valContext Set to the MD5 context of the value + * + * @return bool Success + */ + private function verifyPassword($password, $docid, $salt_data, $hashedsalt_data, &$valContext) + { + $pwarray = str_repeat("\0", 64); + + for ($i = 0; $i < strlen($password); $i++) { + $o = ord(substr($password, $i, 1)); + $pwarray[2 * $i] = chr($o & 0xff); + $pwarray[2 * $i + 1] = chr(($o >> 8) & 0xff); + } + $pwarray[2 * $i] = chr(0x80); + $pwarray[56] = chr(($i << 4) & 0xff); + + $md5 = new PHPExcel_Reader_Excel5_MD5(); + $md5->add($pwarray); + + $mdContext1 = $md5->getContext(); + + $offset = 0; + $keyoffset = 0; + $tocopy = 5; + + $md5->reset(); + + while ($offset != 16) { + if ((64 - $offset) < 5) { + $tocopy = 64 - $offset; + } + for ($i = 0; $i <= $tocopy; $i++) { + $pwarray[$offset + $i] = $mdContext1[$keyoffset + $i]; + } + $offset += $tocopy; + + if ($offset == 64) { + $md5->add($pwarray); + $keyoffset = $tocopy; + $tocopy = 5 - $tocopy; + $offset = 0; + continue; + } + + $keyoffset = 0; + $tocopy = 5; + for ($i = 0; $i < 16; $i++) { + $pwarray[$offset + $i] = $docid[$i]; + } + $offset += 16; + } + + $pwarray[16] = "\x80"; + for ($i = 0; $i < 47; $i++) { + $pwarray[17 + $i] = "\0"; + } + $pwarray[56] = "\x80"; + $pwarray[57] = "\x0a"; + + $md5->add($pwarray); + $valContext = $md5->getContext(); + + $key = $this->makeKey(0, $valContext); + + $salt = $key->RC4($salt_data); + $hashedsalt = $key->RC4($hashedsalt_data); + + $salt .= "\x80" . str_repeat("\0", 47); + $salt[56] = "\x80"; + + $md5->reset(); + $md5->add($salt); + $mdContext2 = $md5->getContext(); + + return $mdContext2 == $hashedsalt; + } + + /** + * CODEPAGE + * + * This record stores the text encoding used to write byte + * strings, stored as MS Windows code page identifier. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readCodepage() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; code page identifier + $codepage = self::getInt2d($recordData, 0); + + $this->codepage = PHPExcel_Shared_CodePage::NumberToName($codepage); + } + + + /** + * DATEMODE + * + * This record specifies the base date for displaying date + * values. All dates are stored as count of days past this + * base date. In BIFF2-BIFF4 this record is part of the + * Calculation Settings Block. In BIFF5-BIFF8 it is + * stored in the Workbook Globals Substream. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readDateMode() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; 0 = base 1900, 1 = base 1904 + PHPExcel_Shared_Date::setExcelCalendar(PHPExcel_Shared_Date::CALENDAR_WINDOWS_1900); + if (ord($recordData{0}) == 1) { + PHPExcel_Shared_Date::setExcelCalendar(PHPExcel_Shared_Date::CALENDAR_MAC_1904); + } + } + + + /** + * Read a FONT record + */ + private function readFont() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + $objFont = new PHPExcel_Style_Font(); + + // offset: 0; size: 2; height of the font (in twips = 1/20 of a point) + $size = self::getInt2d($recordData, 0); + $objFont->setSize($size / 20); + + // offset: 2; size: 2; option flags + // bit: 0; mask 0x0001; bold (redundant in BIFF5-BIFF8) + // bit: 1; mask 0x0002; italic + $isItalic = (0x0002 & self::getInt2d($recordData, 2)) >> 1; + if ($isItalic) { + $objFont->setItalic(true); + } + + // bit: 2; mask 0x0004; underlined (redundant in BIFF5-BIFF8) + // bit: 3; mask 0x0008; strike + $isStrike = (0x0008 & self::getInt2d($recordData, 2)) >> 3; + if ($isStrike) { + $objFont->setStrikethrough(true); + } + + // offset: 4; size: 2; colour index + $colorIndex = self::getInt2d($recordData, 4); + $objFont->colorIndex = $colorIndex; + + // offset: 6; size: 2; font weight + $weight = self::getInt2d($recordData, 6); + switch ($weight) { + case 0x02BC: + $objFont->setBold(true); + break; + } + + // offset: 8; size: 2; escapement type + $escapement = self::getInt2d($recordData, 8); + switch ($escapement) { + case 0x0001: + $objFont->setSuperScript(true); + break; + case 0x0002: + $objFont->setSubScript(true); + break; + } + + // offset: 10; size: 1; underline type + $underlineType = ord($recordData{10}); + switch ($underlineType) { + case 0x00: + break; // no underline + case 0x01: + $objFont->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); + break; + case 0x02: + $objFont->setUnderline(PHPExcel_Style_Font::UNDERLINE_DOUBLE); + break; + case 0x21: + $objFont->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING); + break; + case 0x22: + $objFont->setUnderline(PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING); + break; + } + + // offset: 11; size: 1; font family + // offset: 12; size: 1; character set + // offset: 13; size: 1; not used + // offset: 14; size: var; font name + if ($this->version == self::XLS_BIFF8) { + $string = self::readUnicodeStringShort(substr($recordData, 14)); + } else { + $string = $this->readByteStringShort(substr($recordData, 14)); + } + $objFont->setName($string['value']); + + $this->objFonts[] = $objFont; + } + } + + + /** + * FORMAT + * + * This record contains information about a number format. + * All FORMAT records occur together in a sequential list. + * + * In BIFF2-BIFF4 other records referencing a FORMAT record + * contain a zero-based index into this list. From BIFF5 on + * the FORMAT record contains the index itself that will be + * used by other records. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readFormat() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + $indexCode = self::getInt2d($recordData, 0); + + if ($this->version == self::XLS_BIFF8) { + $string = self::readUnicodeStringLong(substr($recordData, 2)); + } else { + // BIFF7 + $string = $this->readByteStringShort(substr($recordData, 2)); + } + + $formatString = $string['value']; + $this->formats[$indexCode] = $formatString; + } + } + + + /** + * XF - Extended Format + * + * This record contains formatting information for cells, rows, columns or styles. + * According to http://support.microsoft.com/kb/147732 there are always at least 15 cell style XF + * and 1 cell XF. + * Inspection of Excel files generated by MS Office Excel shows that XF records 0-14 are cell style XF + * and XF record 15 is a cell XF + * We only read the first cell style XF and skip the remaining cell style XF records + * We read all cell XF records. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readXf() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + $objStyle = new PHPExcel_Style(); + + if (!$this->readDataOnly) { + // offset: 0; size: 2; Index to FONT record + if (self::getInt2d($recordData, 0) < 4) { + $fontIndex = self::getInt2d($recordData, 0); + } else { + // this has to do with that index 4 is omitted in all BIFF versions for some strange reason + // check the OpenOffice documentation of the FONT record + $fontIndex = self::getInt2d($recordData, 0) - 1; + } + $objStyle->setFont($this->objFonts[$fontIndex]); + + // offset: 2; size: 2; Index to FORMAT record + $numberFormatIndex = self::getInt2d($recordData, 2); + if (isset($this->formats[$numberFormatIndex])) { + // then we have user-defined format code + $numberformat = array('code' => $this->formats[$numberFormatIndex]); + } elseif (($code = PHPExcel_Style_NumberFormat::builtInFormatCode($numberFormatIndex)) !== '') { + // then we have built-in format code + $numberformat = array('code' => $code); + } else { + // we set the general format code + $numberformat = array('code' => 'General'); + } + $objStyle->getNumberFormat()->setFormatCode($numberformat['code']); + + // offset: 4; size: 2; XF type, cell protection, and parent style XF + // bit 2-0; mask 0x0007; XF_TYPE_PROT + $xfTypeProt = self::getInt2d($recordData, 4); + // bit 0; mask 0x01; 1 = cell is locked + $isLocked = (0x01 & $xfTypeProt) >> 0; + $objStyle->getProtection()->setLocked($isLocked ? PHPExcel_Style_Protection::PROTECTION_INHERIT : PHPExcel_Style_Protection::PROTECTION_UNPROTECTED); + + // bit 1; mask 0x02; 1 = Formula is hidden + $isHidden = (0x02 & $xfTypeProt) >> 1; + $objStyle->getProtection()->setHidden($isHidden ? PHPExcel_Style_Protection::PROTECTION_PROTECTED : PHPExcel_Style_Protection::PROTECTION_UNPROTECTED); + + // bit 2; mask 0x04; 0 = Cell XF, 1 = Cell Style XF + $isCellStyleXf = (0x04 & $xfTypeProt) >> 2; + + // offset: 6; size: 1; Alignment and text break + // bit 2-0, mask 0x07; horizontal alignment + $horAlign = (0x07 & ord($recordData{6})) >> 0; + switch ($horAlign) { + case 0: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_GENERAL); + break; + case 1: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT); + break; + case 2: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); + break; + case 3: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); + break; + case 4: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_FILL); + break; + case 5: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY); + break; + case 6: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS); + break; + } + // bit 3, mask 0x08; wrap text + $wrapText = (0x08 & ord($recordData{6})) >> 3; + switch ($wrapText) { + case 0: + $objStyle->getAlignment()->setWrapText(false); + break; + case 1: + $objStyle->getAlignment()->setWrapText(true); + break; + } + // bit 6-4, mask 0x70; vertical alignment + $vertAlign = (0x70 & ord($recordData{6})) >> 4; + switch ($vertAlign) { + case 0: + $objStyle->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP); + break; + case 1: + $objStyle->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); + break; + case 2: + $objStyle->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_BOTTOM); + break; + case 3: + $objStyle->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_JUSTIFY); + break; + } + + if ($this->version == self::XLS_BIFF8) { + // offset: 7; size: 1; XF_ROTATION: Text rotation angle + $angle = ord($recordData{7}); + $rotation = 0; + if ($angle <= 90) { + $rotation = $angle; + } elseif ($angle <= 180) { + $rotation = 90 - $angle; + } elseif ($angle == 255) { + $rotation = -165; + } + $objStyle->getAlignment()->setTextRotation($rotation); + + // offset: 8; size: 1; Indentation, shrink to cell size, and text direction + // bit: 3-0; mask: 0x0F; indent level + $indent = (0x0F & ord($recordData{8})) >> 0; + $objStyle->getAlignment()->setIndent($indent); + + // bit: 4; mask: 0x10; 1 = shrink content to fit into cell + $shrinkToFit = (0x10 & ord($recordData{8})) >> 4; + switch ($shrinkToFit) { + case 0: + $objStyle->getAlignment()->setShrinkToFit(false); + break; + case 1: + $objStyle->getAlignment()->setShrinkToFit(true); + break; + } + + // offset: 9; size: 1; Flags used for attribute groups + + // offset: 10; size: 4; Cell border lines and background area + // bit: 3-0; mask: 0x0000000F; left style + if ($bordersLeftStyle = PHPExcel_Reader_Excel5_Style_Border::lookup((0x0000000F & self::getInt4d($recordData, 10)) >> 0)) { + $objStyle->getBorders()->getLeft()->setBorderStyle($bordersLeftStyle); + } + // bit: 7-4; mask: 0x000000F0; right style + if ($bordersRightStyle = PHPExcel_Reader_Excel5_Style_Border::lookup((0x000000F0 & self::getInt4d($recordData, 10)) >> 4)) { + $objStyle->getBorders()->getRight()->setBorderStyle($bordersRightStyle); + } + // bit: 11-8; mask: 0x00000F00; top style + if ($bordersTopStyle = PHPExcel_Reader_Excel5_Style_Border::lookup((0x00000F00 & self::getInt4d($recordData, 10)) >> 8)) { + $objStyle->getBorders()->getTop()->setBorderStyle($bordersTopStyle); + } + // bit: 15-12; mask: 0x0000F000; bottom style + if ($bordersBottomStyle = PHPExcel_Reader_Excel5_Style_Border::lookup((0x0000F000 & self::getInt4d($recordData, 10)) >> 12)) { + $objStyle->getBorders()->getBottom()->setBorderStyle($bordersBottomStyle); + } + // bit: 22-16; mask: 0x007F0000; left color + $objStyle->getBorders()->getLeft()->colorIndex = (0x007F0000 & self::getInt4d($recordData, 10)) >> 16; + + // bit: 29-23; mask: 0x3F800000; right color + $objStyle->getBorders()->getRight()->colorIndex = (0x3F800000 & self::getInt4d($recordData, 10)) >> 23; + + // bit: 30; mask: 0x40000000; 1 = diagonal line from top left to right bottom + $diagonalDown = (0x40000000 & self::getInt4d($recordData, 10)) >> 30 ? true : false; + + // bit: 31; mask: 0x80000000; 1 = diagonal line from bottom left to top right + $diagonalUp = (0x80000000 & self::getInt4d($recordData, 10)) >> 31 ? true : false; + + if ($diagonalUp == false && $diagonalDown == false) { + $objStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_NONE); + } elseif ($diagonalUp == true && $diagonalDown == false) { + $objStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_UP); + } elseif ($diagonalUp == false && $diagonalDown == true) { + $objStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_DOWN); + } elseif ($diagonalUp == true && $diagonalDown == true) { + $objStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_BOTH); + } + + // offset: 14; size: 4; + // bit: 6-0; mask: 0x0000007F; top color + $objStyle->getBorders()->getTop()->colorIndex = (0x0000007F & self::getInt4d($recordData, 14)) >> 0; + + // bit: 13-7; mask: 0x00003F80; bottom color + $objStyle->getBorders()->getBottom()->colorIndex = (0x00003F80 & self::getInt4d($recordData, 14)) >> 7; + + // bit: 20-14; mask: 0x001FC000; diagonal color + $objStyle->getBorders()->getDiagonal()->colorIndex = (0x001FC000 & self::getInt4d($recordData, 14)) >> 14; + + // bit: 24-21; mask: 0x01E00000; diagonal style + if ($bordersDiagonalStyle = PHPExcel_Reader_Excel5_Style_Border::lookup((0x01E00000 & self::getInt4d($recordData, 14)) >> 21)) { + $objStyle->getBorders()->getDiagonal()->setBorderStyle($bordersDiagonalStyle); + } + + // bit: 31-26; mask: 0xFC000000 fill pattern + if ($fillType = PHPExcel_Reader_Excel5_Style_FillPattern::lookup((0xFC000000 & self::getInt4d($recordData, 14)) >> 26)) { + $objStyle->getFill()->setFillType($fillType); + } + // offset: 18; size: 2; pattern and background colour + // bit: 6-0; mask: 0x007F; color index for pattern color + $objStyle->getFill()->startcolorIndex = (0x007F & self::getInt2d($recordData, 18)) >> 0; + + // bit: 13-7; mask: 0x3F80; color index for pattern background + $objStyle->getFill()->endcolorIndex = (0x3F80 & self::getInt2d($recordData, 18)) >> 7; + } else { + // BIFF5 + + // offset: 7; size: 1; Text orientation and flags + $orientationAndFlags = ord($recordData{7}); + + // bit: 1-0; mask: 0x03; XF_ORIENTATION: Text orientation + $xfOrientation = (0x03 & $orientationAndFlags) >> 0; + switch ($xfOrientation) { + case 0: + $objStyle->getAlignment()->setTextRotation(0); + break; + case 1: + $objStyle->getAlignment()->setTextRotation(-165); + break; + case 2: + $objStyle->getAlignment()->setTextRotation(90); + break; + case 3: + $objStyle->getAlignment()->setTextRotation(-90); + break; + } + + // offset: 8; size: 4; cell border lines and background area + $borderAndBackground = self::getInt4d($recordData, 8); + + // bit: 6-0; mask: 0x0000007F; color index for pattern color + $objStyle->getFill()->startcolorIndex = (0x0000007F & $borderAndBackground) >> 0; + + // bit: 13-7; mask: 0x00003F80; color index for pattern background + $objStyle->getFill()->endcolorIndex = (0x00003F80 & $borderAndBackground) >> 7; + + // bit: 21-16; mask: 0x003F0000; fill pattern + $objStyle->getFill()->setFillType(PHPExcel_Reader_Excel5_Style_FillPattern::lookup((0x003F0000 & $borderAndBackground) >> 16)); + + // bit: 24-22; mask: 0x01C00000; bottom line style + $objStyle->getBorders()->getBottom()->setBorderStyle(PHPExcel_Reader_Excel5_Style_Border::lookup((0x01C00000 & $borderAndBackground) >> 22)); + + // bit: 31-25; mask: 0xFE000000; bottom line color + $objStyle->getBorders()->getBottom()->colorIndex = (0xFE000000 & $borderAndBackground) >> 25; + + // offset: 12; size: 4; cell border lines + $borderLines = self::getInt4d($recordData, 12); + + // bit: 2-0; mask: 0x00000007; top line style + $objStyle->getBorders()->getTop()->setBorderStyle(PHPExcel_Reader_Excel5_Style_Border::lookup((0x00000007 & $borderLines) >> 0)); + + // bit: 5-3; mask: 0x00000038; left line style + $objStyle->getBorders()->getLeft()->setBorderStyle(PHPExcel_Reader_Excel5_Style_Border::lookup((0x00000038 & $borderLines) >> 3)); + + // bit: 8-6; mask: 0x000001C0; right line style + $objStyle->getBorders()->getRight()->setBorderStyle(PHPExcel_Reader_Excel5_Style_Border::lookup((0x000001C0 & $borderLines) >> 6)); + + // bit: 15-9; mask: 0x0000FE00; top line color index + $objStyle->getBorders()->getTop()->colorIndex = (0x0000FE00 & $borderLines) >> 9; + + // bit: 22-16; mask: 0x007F0000; left line color index + $objStyle->getBorders()->getLeft()->colorIndex = (0x007F0000 & $borderLines) >> 16; + + // bit: 29-23; mask: 0x3F800000; right line color index + $objStyle->getBorders()->getRight()->colorIndex = (0x3F800000 & $borderLines) >> 23; + } + + // add cellStyleXf or cellXf and update mapping + if ($isCellStyleXf) { + // we only read one style XF record which is always the first + if ($this->xfIndex == 0) { + $this->phpExcel->addCellStyleXf($objStyle); + $this->mapCellStyleXfIndex[$this->xfIndex] = 0; + } + } else { + // we read all cell XF records + $this->phpExcel->addCellXf($objStyle); + $this->mapCellXfIndex[$this->xfIndex] = count($this->phpExcel->getCellXfCollection()) - 1; + } + + // update XF index for when we read next record + ++$this->xfIndex; + } + } + + + /** + * + */ + private function readXfExt() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 2; 0x087D = repeated header + + // offset: 2; size: 2 + + // offset: 4; size: 8; not used + + // offset: 12; size: 2; record version + + // offset: 14; size: 2; index to XF record which this record modifies + $ixfe = self::getInt2d($recordData, 14); + + // offset: 16; size: 2; not used + + // offset: 18; size: 2; number of extension properties that follow + $cexts = self::getInt2d($recordData, 18); + + // start reading the actual extension data + $offset = 20; + while ($offset < $length) { + // extension type + $extType = self::getInt2d($recordData, $offset); + + // extension length + $cb = self::getInt2d($recordData, $offset + 2); + + // extension data + $extData = substr($recordData, $offset + 4, $cb); + + switch ($extType) { + case 4: // fill start color + $xclfType = self::getInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if (isset($this->mapCellXfIndex[$ixfe])) { + $fill = $this->phpExcel->getCellXfByIndex($this->mapCellXfIndex[$ixfe])->getFill(); + $fill->getStartColor()->setRGB($rgb); + unset($fill->startcolorIndex); // normal color index does not apply, discard + } + } + break; + case 5: // fill end color + $xclfType = self::getInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if (isset($this->mapCellXfIndex[$ixfe])) { + $fill = $this->phpExcel->getCellXfByIndex($this->mapCellXfIndex[$ixfe])->getFill(); + $fill->getEndColor()->setRGB($rgb); + unset($fill->endcolorIndex); // normal color index does not apply, discard + } + } + break; + case 7: // border color top + $xclfType = self::getInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if (isset($this->mapCellXfIndex[$ixfe])) { + $top = $this->phpExcel->getCellXfByIndex($this->mapCellXfIndex[$ixfe])->getBorders()->getTop(); + $top->getColor()->setRGB($rgb); + unset($top->colorIndex); // normal color index does not apply, discard + } + } + break; + case 8: // border color bottom + $xclfType = self::getInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if (isset($this->mapCellXfIndex[$ixfe])) { + $bottom = $this->phpExcel->getCellXfByIndex($this->mapCellXfIndex[$ixfe])->getBorders()->getBottom(); + $bottom->getColor()->setRGB($rgb); + unset($bottom->colorIndex); // normal color index does not apply, discard + } + } + break; + case 9: // border color left + $xclfType = self::getInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if (isset($this->mapCellXfIndex[$ixfe])) { + $left = $this->phpExcel->getCellXfByIndex($this->mapCellXfIndex[$ixfe])->getBorders()->getLeft(); + $left->getColor()->setRGB($rgb); + unset($left->colorIndex); // normal color index does not apply, discard + } + } + break; + case 10: // border color right + $xclfType = self::getInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if (isset($this->mapCellXfIndex[$ixfe])) { + $right = $this->phpExcel->getCellXfByIndex($this->mapCellXfIndex[$ixfe])->getBorders()->getRight(); + $right->getColor()->setRGB($rgb); + unset($right->colorIndex); // normal color index does not apply, discard + } + } + break; + case 11: // border color diagonal + $xclfType = self::getInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if (isset($this->mapCellXfIndex[$ixfe])) { + $diagonal = $this->phpExcel->getCellXfByIndex($this->mapCellXfIndex[$ixfe])->getBorders()->getDiagonal(); + $diagonal->getColor()->setRGB($rgb); + unset($diagonal->colorIndex); // normal color index does not apply, discard + } + } + break; + case 13: // font color + $xclfType = self::getInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if (isset($this->mapCellXfIndex[$ixfe])) { + $font = $this->phpExcel->getCellXfByIndex($this->mapCellXfIndex[$ixfe])->getFont(); + $font->getColor()->setRGB($rgb); + unset($font->colorIndex); // normal color index does not apply, discard + } + } + break; + } + + $offset += $cb; + } + } + + } + + + /** + * Read STYLE record + */ + private function readStyle() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 2; index to XF record and flag for built-in style + $ixfe = self::getInt2d($recordData, 0); + + // bit: 11-0; mask 0x0FFF; index to XF record + $xfIndex = (0x0FFF & $ixfe) >> 0; + + // bit: 15; mask 0x8000; 0 = user-defined style, 1 = built-in style + $isBuiltIn = (bool) ((0x8000 & $ixfe) >> 15); + + if ($isBuiltIn) { + // offset: 2; size: 1; identifier for built-in style + $builtInId = ord($recordData{2}); + + switch ($builtInId) { + case 0x00: + // currently, we are not using this for anything + break; + default: + break; + } + } else { + // user-defined; not supported by PHPExcel + } + } + } + + + /** + * Read PALETTE record + */ + private function readPalette() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 2; number of following colors + $nm = self::getInt2d($recordData, 0); + + // list of RGB colors + for ($i = 0; $i < $nm; ++$i) { + $rgb = substr($recordData, 2 + 4 * $i, 4); + $this->palette[] = self::readRGB($rgb); + } + } + } + + + /** + * SHEET + * + * This record is located in the Workbook Globals + * Substream and represents a sheet inside the workbook. + * One SHEET record is written for each sheet. It stores the + * sheet name and a stream offset to the BOF record of the + * respective Sheet Substream within the Workbook Stream. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readSheet() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // offset: 0; size: 4; absolute stream position of the BOF record of the sheet + // NOTE: not encrypted + $rec_offset = self::getInt4d($this->data, $this->pos + 4); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 4; size: 1; sheet state + switch (ord($recordData{4})) { + case 0x00: + $sheetState = PHPExcel_Worksheet::SHEETSTATE_VISIBLE; + break; + case 0x01: + $sheetState = PHPExcel_Worksheet::SHEETSTATE_HIDDEN; + break; + case 0x02: + $sheetState = PHPExcel_Worksheet::SHEETSTATE_VERYHIDDEN; + break; + default: + $sheetState = PHPExcel_Worksheet::SHEETSTATE_VISIBLE; + break; + } + + // offset: 5; size: 1; sheet type + $sheetType = ord($recordData{5}); + + // offset: 6; size: var; sheet name + if ($this->version == self::XLS_BIFF8) { + $string = self::readUnicodeStringShort(substr($recordData, 6)); + $rec_name = $string['value']; + } elseif ($this->version == self::XLS_BIFF7) { + $string = $this->readByteStringShort(substr($recordData, 6)); + $rec_name = $string['value']; + } + + $this->sheets[] = array( + 'name' => $rec_name, + 'offset' => $rec_offset, + 'sheetState' => $sheetState, + 'sheetType' => $sheetType, + ); + } + + + /** + * Read EXTERNALBOOK record + */ + private function readExternalBook() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset within record data + $offset = 0; + + // there are 4 types of records + if (strlen($recordData) > 4) { + // external reference + // offset: 0; size: 2; number of sheet names ($nm) + $nm = self::getInt2d($recordData, 0); + $offset += 2; + + // offset: 2; size: var; encoded URL without sheet name (Unicode string, 16-bit length) + $encodedUrlString = self::readUnicodeStringLong(substr($recordData, 2)); + $offset += $encodedUrlString['size']; + + // offset: var; size: var; list of $nm sheet names (Unicode strings, 16-bit length) + $externalSheetNames = array(); + for ($i = 0; $i < $nm; ++$i) { + $externalSheetNameString = self::readUnicodeStringLong(substr($recordData, $offset)); + $externalSheetNames[] = $externalSheetNameString['value']; + $offset += $externalSheetNameString['size']; + } + + // store the record data + $this->externalBooks[] = array( + 'type' => 'external', + 'encodedUrl' => $encodedUrlString['value'], + 'externalSheetNames' => $externalSheetNames, + ); + } elseif (substr($recordData, 2, 2) == pack('CC', 0x01, 0x04)) { + // internal reference + // offset: 0; size: 2; number of sheet in this document + // offset: 2; size: 2; 0x01 0x04 + $this->externalBooks[] = array( + 'type' => 'internal', + ); + } elseif (substr($recordData, 0, 4) == pack('vCC', 0x0001, 0x01, 0x3A)) { + // add-in function + // offset: 0; size: 2; 0x0001 + $this->externalBooks[] = array( + 'type' => 'addInFunction', + ); + } elseif (substr($recordData, 0, 2) == pack('v', 0x0000)) { + // DDE links, OLE links + // offset: 0; size: 2; 0x0000 + // offset: 2; size: var; encoded source document name + $this->externalBooks[] = array( + 'type' => 'DDEorOLE', + ); + } + } + + + /** + * Read EXTERNNAME record. + */ + private function readExternName() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // external sheet references provided for named cells + if ($this->version == self::XLS_BIFF8) { + // offset: 0; size: 2; options + $options = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; + + // offset: 4; size: 2; not used + + // offset: 6; size: var + $nameString = self::readUnicodeStringShort(substr($recordData, 6)); + + // offset: var; size: var; formula data + $offset = 6 + $nameString['size']; + $formula = $this->getFormulaFromStructure(substr($recordData, $offset)); + + $this->externalNames[] = array( + 'name' => $nameString['value'], + 'formula' => $formula, + ); + } + } + + + /** + * Read EXTERNSHEET record + */ + private function readExternSheet() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // external sheet references provided for named cells + if ($this->version == self::XLS_BIFF8) { + // offset: 0; size: 2; number of following ref structures + $nm = self::getInt2d($recordData, 0); + for ($i = 0; $i < $nm; ++$i) { + $this->ref[] = array( + // offset: 2 + 6 * $i; index to EXTERNALBOOK record + 'externalBookIndex' => self::getInt2d($recordData, 2 + 6 * $i), + // offset: 4 + 6 * $i; index to first sheet in EXTERNALBOOK record + 'firstSheetIndex' => self::getInt2d($recordData, 4 + 6 * $i), + // offset: 6 + 6 * $i; index to last sheet in EXTERNALBOOK record + 'lastSheetIndex' => self::getInt2d($recordData, 6 + 6 * $i), + ); + } + } + } + + + /** + * DEFINEDNAME + * + * This record is part of a Link Table. It contains the name + * and the token array of an internal defined name. Token + * arrays of defined names contain tokens with aberrant + * token classes. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readDefinedName() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->version == self::XLS_BIFF8) { + // retrieves named cells + + // offset: 0; size: 2; option flags + $opts = self::getInt2d($recordData, 0); + + // bit: 5; mask: 0x0020; 0 = user-defined name, 1 = built-in-name + $isBuiltInName = (0x0020 & $opts) >> 5; + + // offset: 2; size: 1; keyboard shortcut + + // offset: 3; size: 1; length of the name (character count) + $nlen = ord($recordData{3}); + + // offset: 4; size: 2; size of the formula data (it can happen that this is zero) + // note: there can also be additional data, this is not included in $flen + $flen = self::getInt2d($recordData, 4); + + // offset: 8; size: 2; 0=Global name, otherwise index to sheet (1-based) + $scope = self::getInt2d($recordData, 8); + + // offset: 14; size: var; Name (Unicode string without length field) + $string = self::readUnicodeString(substr($recordData, 14), $nlen); + + // offset: var; size: $flen; formula data + $offset = 14 + $string['size']; + $formulaStructure = pack('v', $flen) . substr($recordData, $offset); + + try { + $formula = $this->getFormulaFromStructure($formulaStructure); + } catch (PHPExcel_Exception $e) { + $formula = ''; + } + + $this->definedname[] = array( + 'isBuiltInName' => $isBuiltInName, + 'name' => $string['value'], + 'formula' => $formula, + 'scope' => $scope, + ); + } + } + + + /** + * Read MSODRAWINGGROUP record + */ + private function readMsoDrawingGroup() + { + $length = self::getInt2d($this->data, $this->pos + 2); + + // get spliced record data + $splicedRecordData = $this->getSplicedRecordData(); + $recordData = $splicedRecordData['recordData']; + + $this->drawingGroupData .= $recordData; + } + + + /** + * SST - Shared String Table + * + * This record contains a list of all strings used anywhere + * in the workbook. Each string occurs only once. The + * workbook uses indexes into the list to reference the + * strings. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + **/ + private function readSst() + { + // offset within (spliced) record data + $pos = 0; + + // get spliced record data + $splicedRecordData = $this->getSplicedRecordData(); + + $recordData = $splicedRecordData['recordData']; + $spliceOffsets = $splicedRecordData['spliceOffsets']; + + // offset: 0; size: 4; total number of strings in the workbook + $pos += 4; + + // offset: 4; size: 4; number of following strings ($nm) + $nm = self::getInt4d($recordData, 4); + $pos += 4; + + // loop through the Unicode strings (16-bit length) + for ($i = 0; $i < $nm; ++$i) { + // number of characters in the Unicode string + $numChars = self::getInt2d($recordData, $pos); + $pos += 2; + + // option flags + $optionFlags = ord($recordData{$pos}); + ++$pos; + + // bit: 0; mask: 0x01; 0 = compressed; 1 = uncompressed + $isCompressed = (($optionFlags & 0x01) == 0) ; + + // bit: 2; mask: 0x02; 0 = ordinary; 1 = Asian phonetic + $hasAsian = (($optionFlags & 0x04) != 0); + + // bit: 3; mask: 0x03; 0 = ordinary; 1 = Rich-Text + $hasRichText = (($optionFlags & 0x08) != 0); + + if ($hasRichText) { + // number of Rich-Text formatting runs + $formattingRuns = self::getInt2d($recordData, $pos); + $pos += 2; + } + + if ($hasAsian) { + // size of Asian phonetic setting + $extendedRunLength = self::getInt4d($recordData, $pos); + $pos += 4; + } + + // expected byte length of character array if not split + $len = ($isCompressed) ? $numChars : $numChars * 2; + + // look up limit position + foreach ($spliceOffsets as $spliceOffset) { + // it can happen that the string is empty, therefore we need + // <= and not just < + if ($pos <= $spliceOffset) { + $limitpos = $spliceOffset; + break; + } + } + + if ($pos + $len <= $limitpos) { + // character array is not split between records + + $retstr = substr($recordData, $pos, $len); + $pos += $len; + } else { + // character array is split between records + + // first part of character array + $retstr = substr($recordData, $pos, $limitpos - $pos); + + $bytesRead = $limitpos - $pos; + + // remaining characters in Unicode string + $charsLeft = $numChars - (($isCompressed) ? $bytesRead : ($bytesRead / 2)); + + $pos = $limitpos; + + // keep reading the characters + while ($charsLeft > 0) { + // look up next limit position, in case the string span more than one continue record + foreach ($spliceOffsets as $spliceOffset) { + if ($pos < $spliceOffset) { + $limitpos = $spliceOffset; + break; + } + } + + // repeated option flags + // OpenOffice.org documentation 5.21 + $option = ord($recordData{$pos}); + ++$pos; + + if ($isCompressed && ($option == 0)) { + // 1st fragment compressed + // this fragment compressed + $len = min($charsLeft, $limitpos - $pos); + $retstr .= substr($recordData, $pos, $len); + $charsLeft -= $len; + $isCompressed = true; + } elseif (!$isCompressed && ($option != 0)) { + // 1st fragment uncompressed + // this fragment uncompressed + $len = min($charsLeft * 2, $limitpos - $pos); + $retstr .= substr($recordData, $pos, $len); + $charsLeft -= $len / 2; + $isCompressed = false; + } elseif (!$isCompressed && ($option == 0)) { + // 1st fragment uncompressed + // this fragment compressed + $len = min($charsLeft, $limitpos - $pos); + for ($j = 0; $j < $len; ++$j) { + $retstr .= $recordData{$pos + $j} . chr(0); + } + $charsLeft -= $len; + $isCompressed = false; + } else { + // 1st fragment compressed + // this fragment uncompressed + $newstr = ''; + for ($j = 0; $j < strlen($retstr); ++$j) { + $newstr .= $retstr[$j] . chr(0); + } + $retstr = $newstr; + $len = min($charsLeft * 2, $limitpos - $pos); + $retstr .= substr($recordData, $pos, $len); + $charsLeft -= $len / 2; + $isCompressed = false; + } + + $pos += $len; + } + } + + // convert to UTF-8 + $retstr = self::encodeUTF16($retstr, $isCompressed); + + // read additional Rich-Text information, if any + $fmtRuns = array(); + if ($hasRichText) { + // list of formatting runs + for ($j = 0; $j < $formattingRuns; ++$j) { + // first formatted character; zero-based + $charPos = self::getInt2d($recordData, $pos + $j * 4); + + // index to font record + $fontIndex = self::getInt2d($recordData, $pos + 2 + $j * 4); + + $fmtRuns[] = array( + 'charPos' => $charPos, + 'fontIndex' => $fontIndex, + ); + } + $pos += 4 * $formattingRuns; + } + + // read additional Asian phonetics information, if any + if ($hasAsian) { + // For Asian phonetic settings, we skip the extended string data + $pos += $extendedRunLength; + } + + // store the shared sting + $this->sst[] = array( + 'value' => $retstr, + 'fmtRuns' => $fmtRuns, + ); + } + + // getSplicedRecordData() takes care of moving current position in data stream + } + + + /** + * Read PRINTGRIDLINES record + */ + private function readPrintGridlines() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->version == self::XLS_BIFF8 && !$this->readDataOnly) { + // offset: 0; size: 2; 0 = do not print sheet grid lines; 1 = print sheet gridlines + $printGridlines = (bool) self::getInt2d($recordData, 0); + $this->phpSheet->setPrintGridlines($printGridlines); + } + } + + + /** + * Read DEFAULTROWHEIGHT record + */ + private function readDefaultRowHeight() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; option flags + // offset: 2; size: 2; default height for unused rows, (twips 1/20 point) + $height = self::getInt2d($recordData, 2); + $this->phpSheet->getDefaultRowDimension()->setRowHeight($height / 20); + } + + + /** + * Read SHEETPR record + */ + private function readSheetPr() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2 + + // bit: 6; mask: 0x0040; 0 = outline buttons above outline group + $isSummaryBelow = (0x0040 & self::getInt2d($recordData, 0)) >> 6; + $this->phpSheet->setShowSummaryBelow($isSummaryBelow); + + // bit: 7; mask: 0x0080; 0 = outline buttons left of outline group + $isSummaryRight = (0x0080 & self::getInt2d($recordData, 0)) >> 7; + $this->phpSheet->setShowSummaryRight($isSummaryRight); + + // bit: 8; mask: 0x100; 0 = scale printout in percent, 1 = fit printout to number of pages + // this corresponds to radio button setting in page setup dialog in Excel + $this->isFitToPages = (bool) ((0x0100 & self::getInt2d($recordData, 0)) >> 8); + } + + + /** + * Read HORIZONTALPAGEBREAKS record + */ + private function readHorizontalPageBreaks() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->version == self::XLS_BIFF8 && !$this->readDataOnly) { + // offset: 0; size: 2; number of the following row index structures + $nm = self::getInt2d($recordData, 0); + + // offset: 2; size: 6 * $nm; list of $nm row index structures + for ($i = 0; $i < $nm; ++$i) { + $r = self::getInt2d($recordData, 2 + 6 * $i); + $cf = self::getInt2d($recordData, 2 + 6 * $i + 2); + $cl = self::getInt2d($recordData, 2 + 6 * $i + 4); + + // not sure why two column indexes are necessary? + $this->phpSheet->setBreakByColumnAndRow($cf, $r, PHPExcel_Worksheet::BREAK_ROW); + } + } + } + + + /** + * Read VERTICALPAGEBREAKS record + */ + private function readVerticalPageBreaks() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->version == self::XLS_BIFF8 && !$this->readDataOnly) { + // offset: 0; size: 2; number of the following column index structures + $nm = self::getInt2d($recordData, 0); + + // offset: 2; size: 6 * $nm; list of $nm row index structures + for ($i = 0; $i < $nm; ++$i) { + $c = self::getInt2d($recordData, 2 + 6 * $i); + $rf = self::getInt2d($recordData, 2 + 6 * $i + 2); + $rl = self::getInt2d($recordData, 2 + 6 * $i + 4); + + // not sure why two row indexes are necessary? + $this->phpSheet->setBreakByColumnAndRow($c, $rf, PHPExcel_Worksheet::BREAK_COLUMN); + } + } + } + + + /** + * Read HEADER record + */ + private function readHeader() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: var + // realized that $recordData can be empty even when record exists + if ($recordData) { + if ($this->version == self::XLS_BIFF8) { + $string = self::readUnicodeStringLong($recordData); + } else { + $string = $this->readByteStringShort($recordData); + } + + $this->phpSheet->getHeaderFooter()->setOddHeader($string['value']); + $this->phpSheet->getHeaderFooter()->setEvenHeader($string['value']); + } + } + } + + + /** + * Read FOOTER record + */ + private function readFooter() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: var + // realized that $recordData can be empty even when record exists + if ($recordData) { + if ($this->version == self::XLS_BIFF8) { + $string = self::readUnicodeStringLong($recordData); + } else { + $string = $this->readByteStringShort($recordData); + } + $this->phpSheet->getHeaderFooter()->setOddFooter($string['value']); + $this->phpSheet->getHeaderFooter()->setEvenFooter($string['value']); + } + } + } + + + /** + * Read HCENTER record + */ + private function readHcenter() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 2; 0 = print sheet left aligned, 1 = print sheet centered horizontally + $isHorizontalCentered = (bool) self::getInt2d($recordData, 0); + + $this->phpSheet->getPageSetup()->setHorizontalCentered($isHorizontalCentered); + } + } + + + /** + * Read VCENTER record + */ + private function readVcenter() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 2; 0 = print sheet aligned at top page border, 1 = print sheet vertically centered + $isVerticalCentered = (bool) self::getInt2d($recordData, 0); + + $this->phpSheet->getPageSetup()->setVerticalCentered($isVerticalCentered); + } + } + + + /** + * Read LEFTMARGIN record + */ + private function readLeftMargin() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 8 + $this->phpSheet->getPageMargins()->setLeft(self::extractNumber($recordData)); + } + } + + + /** + * Read RIGHTMARGIN record + */ + private function readRightMargin() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 8 + $this->phpSheet->getPageMargins()->setRight(self::extractNumber($recordData)); + } + } + + + /** + * Read TOPMARGIN record + */ + private function readTopMargin() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 8 + $this->phpSheet->getPageMargins()->setTop(self::extractNumber($recordData)); + } + } + + + /** + * Read BOTTOMMARGIN record + */ + private function readBottomMargin() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 8 + $this->phpSheet->getPageMargins()->setBottom(self::extractNumber($recordData)); + } + } + + + /** + * Read PAGESETUP record + */ + private function readPageSetup() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 2; paper size + $paperSize = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; scaling factor + $scale = self::getInt2d($recordData, 2); + + // offset: 6; size: 2; fit worksheet width to this number of pages, 0 = use as many as needed + $fitToWidth = self::getInt2d($recordData, 6); + + // offset: 8; size: 2; fit worksheet height to this number of pages, 0 = use as many as needed + $fitToHeight = self::getInt2d($recordData, 8); + + // offset: 10; size: 2; option flags + + // bit: 1; mask: 0x0002; 0=landscape, 1=portrait + $isPortrait = (0x0002 & self::getInt2d($recordData, 10)) >> 1; + + // bit: 2; mask: 0x0004; 1= paper size, scaling factor, paper orient. not init + // when this bit is set, do not use flags for those properties + $isNotInit = (0x0004 & self::getInt2d($recordData, 10)) >> 2; + + if (!$isNotInit) { + $this->phpSheet->getPageSetup()->setPaperSize($paperSize); + switch ($isPortrait) { + case 0: + $this->phpSheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE); + break; + case 1: + $this->phpSheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT); + break; + } + + $this->phpSheet->getPageSetup()->setScale($scale, false); + $this->phpSheet->getPageSetup()->setFitToPage((bool) $this->isFitToPages); + $this->phpSheet->getPageSetup()->setFitToWidth($fitToWidth, false); + $this->phpSheet->getPageSetup()->setFitToHeight($fitToHeight, false); + } + + // offset: 16; size: 8; header margin (IEEE 754 floating-point value) + $marginHeader = self::extractNumber(substr($recordData, 16, 8)); + $this->phpSheet->getPageMargins()->setHeader($marginHeader); + + // offset: 24; size: 8; footer margin (IEEE 754 floating-point value) + $marginFooter = self::extractNumber(substr($recordData, 24, 8)); + $this->phpSheet->getPageMargins()->setFooter($marginFooter); + } + } + + + /** + * PROTECT - Sheet protection (BIFF2 through BIFF8) + * if this record is omitted, then it also means no sheet protection + */ + private function readProtect() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->readDataOnly) { + return; + } + + // offset: 0; size: 2; + + // bit 0, mask 0x01; 1 = sheet is protected + $bool = (0x01 & self::getInt2d($recordData, 0)) >> 0; + $this->phpSheet->getProtection()->setSheet((bool)$bool); + } + + + /** + * SCENPROTECT + */ + private function readScenProtect() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->readDataOnly) { + return; + } + + // offset: 0; size: 2; + + // bit: 0, mask 0x01; 1 = scenarios are protected + $bool = (0x01 & self::getInt2d($recordData, 0)) >> 0; + + $this->phpSheet->getProtection()->setScenarios((bool)$bool); + } + + + /** + * OBJECTPROTECT + */ + private function readObjectProtect() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->readDataOnly) { + return; + } + + // offset: 0; size: 2; + + // bit: 0, mask 0x01; 1 = objects are protected + $bool = (0x01 & self::getInt2d($recordData, 0)) >> 0; + + $this->phpSheet->getProtection()->setObjects((bool)$bool); + } + + + /** + * PASSWORD - Sheet protection (hashed) password (BIFF2 through BIFF8) + */ + private function readPassword() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 2; 16-bit hash value of password + $password = strtoupper(dechex(self::getInt2d($recordData, 0))); // the hashed password + $this->phpSheet->getProtection()->setPassword($password, true); + } + } + + + /** + * Read DEFCOLWIDTH record + */ + private function readDefColWidth() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; default column width + $width = self::getInt2d($recordData, 0); + if ($width != 8) { + $this->phpSheet->getDefaultColumnDimension()->setWidth($width); + } + } + + + /** + * Read COLINFO record + */ + private function readColInfo() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 2; index to first column in range + $fc = self::getInt2d($recordData, 0); // first column index + + // offset: 2; size: 2; index to last column in range + $lc = self::getInt2d($recordData, 2); // first column index + + // offset: 4; size: 2; width of the column in 1/256 of the width of the zero character + $width = self::getInt2d($recordData, 4); + + // offset: 6; size: 2; index to XF record for default column formatting + $xfIndex = self::getInt2d($recordData, 6); + + // offset: 8; size: 2; option flags + // bit: 0; mask: 0x0001; 1= columns are hidden + $isHidden = (0x0001 & self::getInt2d($recordData, 8)) >> 0; + + // bit: 10-8; mask: 0x0700; outline level of the columns (0 = no outline) + $level = (0x0700 & self::getInt2d($recordData, 8)) >> 8; + + // bit: 12; mask: 0x1000; 1 = collapsed + $isCollapsed = (0x1000 & self::getInt2d($recordData, 8)) >> 12; + + // offset: 10; size: 2; not used + + for ($i = $fc; $i <= $lc; ++$i) { + if ($lc == 255 || $lc == 256) { + $this->phpSheet->getDefaultColumnDimension()->setWidth($width / 256); + break; + } + $this->phpSheet->getColumnDimensionByColumn($i)->setWidth($width / 256); + $this->phpSheet->getColumnDimensionByColumn($i)->setVisible(!$isHidden); + $this->phpSheet->getColumnDimensionByColumn($i)->setOutlineLevel($level); + $this->phpSheet->getColumnDimensionByColumn($i)->setCollapsed($isCollapsed); + $this->phpSheet->getColumnDimensionByColumn($i)->setXfIndex($this->mapCellXfIndex[$xfIndex]); + } + } + } + + + /** + * ROW + * + * This record contains the properties of a single row in a + * sheet. Rows and cells in a sheet are divided into blocks + * of 32 rows. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readRow() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 2; index of this row + $r = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; index to column of the first cell which is described by a cell record + + // offset: 4; size: 2; index to column of the last cell which is described by a cell record, increased by 1 + + // offset: 6; size: 2; + + // bit: 14-0; mask: 0x7FFF; height of the row, in twips = 1/20 of a point + $height = (0x7FFF & self::getInt2d($recordData, 6)) >> 0; + + // bit: 15: mask: 0x8000; 0 = row has custom height; 1= row has default height + $useDefaultHeight = (0x8000 & self::getInt2d($recordData, 6)) >> 15; + + if (!$useDefaultHeight) { + $this->phpSheet->getRowDimension($r + 1)->setRowHeight($height / 20); + } + + // offset: 8; size: 2; not used + + // offset: 10; size: 2; not used in BIFF5-BIFF8 + + // offset: 12; size: 4; option flags and default row formatting + + // bit: 2-0: mask: 0x00000007; outline level of the row + $level = (0x00000007 & self::getInt4d($recordData, 12)) >> 0; + $this->phpSheet->getRowDimension($r + 1)->setOutlineLevel($level); + + // bit: 4; mask: 0x00000010; 1 = outline group start or ends here... and is collapsed + $isCollapsed = (0x00000010 & self::getInt4d($recordData, 12)) >> 4; + $this->phpSheet->getRowDimension($r + 1)->setCollapsed($isCollapsed); + + // bit: 5; mask: 0x00000020; 1 = row is hidden + $isHidden = (0x00000020 & self::getInt4d($recordData, 12)) >> 5; + $this->phpSheet->getRowDimension($r + 1)->setVisible(!$isHidden); + + // bit: 7; mask: 0x00000080; 1 = row has explicit format + $hasExplicitFormat = (0x00000080 & self::getInt4d($recordData, 12)) >> 7; + + // bit: 27-16; mask: 0x0FFF0000; only applies when hasExplicitFormat = 1; index to XF record + $xfIndex = (0x0FFF0000 & self::getInt4d($recordData, 12)) >> 16; + + if ($hasExplicitFormat) { + $this->phpSheet->getRowDimension($r + 1)->setXfIndex($this->mapCellXfIndex[$xfIndex]); + } + } + } + + + /** + * Read RK record + * This record represents a cell that contains an RK value + * (encoded integer or floating-point value). If a + * floating-point value cannot be encoded to an RK value, + * a NUMBER record will be written. This record replaces the + * record INTEGER written in BIFF2. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readRk() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; index to column + $column = self::getInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + // Read cell? + if (($this->getReadFilter() !== null) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->phpSheet->getTitle())) { + // offset: 4; size: 2; index to XF record + $xfIndex = self::getInt2d($recordData, 4); + + // offset: 6; size: 4; RK value + $rknum = self::getInt4d($recordData, 6); + $numValue = self::getIEEE754($rknum); + + $cell = $this->phpSheet->getCell($columnString . ($row + 1)); + if (!$this->readDataOnly) { + // add style information + $cell->setXfIndex($this->mapCellXfIndex[$xfIndex]); + } + + // add cell + $cell->setValueExplicit($numValue, PHPExcel_Cell_DataType::TYPE_NUMERIC); + } + } + + + /** + * Read LABELSST record + * This record represents a cell that contains a string. It + * replaces the LABEL record and RSTRING record used in + * BIFF2-BIFF5. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readLabelSst() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; index to column + $column = self::getInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + $emptyCell = true; + // Read cell? + if (($this->getReadFilter() !== null) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->phpSheet->getTitle())) { + // offset: 4; size: 2; index to XF record + $xfIndex = self::getInt2d($recordData, 4); + + // offset: 6; size: 4; index to SST record + $index = self::getInt4d($recordData, 6); + + // add cell + if (($fmtRuns = $this->sst[$index]['fmtRuns']) && !$this->readDataOnly) { + // then we should treat as rich text + $richText = new PHPExcel_RichText(); + $charPos = 0; + $sstCount = count($this->sst[$index]['fmtRuns']); + for ($i = 0; $i <= $sstCount; ++$i) { + if (isset($fmtRuns[$i])) { + $text = PHPExcel_Shared_String::Substring($this->sst[$index]['value'], $charPos, $fmtRuns[$i]['charPos'] - $charPos); + $charPos = $fmtRuns[$i]['charPos']; + } else { + $text = PHPExcel_Shared_String::Substring($this->sst[$index]['value'], $charPos, PHPExcel_Shared_String::CountCharacters($this->sst[$index]['value'])); + } + + if (PHPExcel_Shared_String::CountCharacters($text) > 0) { + if ($i == 0) { // first text run, no style + $richText->createText($text); + } else { + $textRun = $richText->createTextRun($text); + if (isset($fmtRuns[$i - 1])) { + if ($fmtRuns[$i - 1]['fontIndex'] < 4) { + $fontIndex = $fmtRuns[$i - 1]['fontIndex']; + } else { + // this has to do with that index 4 is omitted in all BIFF versions for some strange reason + // check the OpenOffice documentation of the FONT record + $fontIndex = $fmtRuns[$i - 1]['fontIndex'] - 1; + } + $textRun->setFont(clone $this->objFonts[$fontIndex]); + } + } + } + } + if ($this->readEmptyCells || trim($richText->getPlainText()) !== '') { + $cell = $this->phpSheet->getCell($columnString . ($row + 1)); + $cell->setValueExplicit($richText, PHPExcel_Cell_DataType::TYPE_STRING); + $emptyCell = false; + } + } else { + if ($this->readEmptyCells || trim($this->sst[$index]['value']) !== '') { + $cell = $this->phpSheet->getCell($columnString . ($row + 1)); + $cell->setValueExplicit($this->sst[$index]['value'], PHPExcel_Cell_DataType::TYPE_STRING); + $emptyCell = false; + } + } + + if (!$this->readDataOnly && !$emptyCell) { + // add style information + $cell->setXfIndex($this->mapCellXfIndex[$xfIndex]); + } + } + } + + + /** + * Read MULRK record + * This record represents a cell range containing RK value + * cells. All cells are located in the same row. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readMulRk() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; index to first column + $colFirst = self::getInt2d($recordData, 2); + + // offset: var; size: 2; index to last column + $colLast = self::getInt2d($recordData, $length - 2); + $columns = $colLast - $colFirst + 1; + + // offset within record data + $offset = 4; + + for ($i = 0; $i < $columns; ++$i) { + $columnString = PHPExcel_Cell::stringFromColumnIndex($colFirst + $i); + + // Read cell? + if (($this->getReadFilter() !== null) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->phpSheet->getTitle())) { + // offset: var; size: 2; index to XF record + $xfIndex = self::getInt2d($recordData, $offset); + + // offset: var; size: 4; RK value + $numValue = self::getIEEE754(self::getInt4d($recordData, $offset + 2)); + $cell = $this->phpSheet->getCell($columnString . ($row + 1)); + if (!$this->readDataOnly) { + // add style + $cell->setXfIndex($this->mapCellXfIndex[$xfIndex]); + } + + // add cell value + $cell->setValueExplicit($numValue, PHPExcel_Cell_DataType::TYPE_NUMERIC); + } + + $offset += 6; + } + } + + + /** + * Read NUMBER record + * This record represents a cell that contains a + * floating-point value. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readNumber() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::getInt2d($recordData, 0); + + // offset: 2; size 2; index to column + $column = self::getInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + // Read cell? + if (($this->getReadFilter() !== null) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->phpSheet->getTitle())) { + // offset 4; size: 2; index to XF record + $xfIndex = self::getInt2d($recordData, 4); + + $numValue = self::extractNumber(substr($recordData, 6, 8)); + + $cell = $this->phpSheet->getCell($columnString . ($row + 1)); + if (!$this->readDataOnly) { + // add cell style + $cell->setXfIndex($this->mapCellXfIndex[$xfIndex]); + } + + // add cell value + $cell->setValueExplicit($numValue, PHPExcel_Cell_DataType::TYPE_NUMERIC); + } + } + + + /** + * Read FORMULA record + perhaps a following STRING record if formula result is a string + * This record contains the token array and the result of a + * formula cell. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readFormula() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; row index + $row = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; col index + $column = self::getInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + // offset: 20: size: variable; formula structure + $formulaStructure = substr($recordData, 20); + + // offset: 14: size: 2; option flags, recalculate always, recalculate on open etc. + $options = self::getInt2d($recordData, 14); + + // bit: 0; mask: 0x0001; 1 = recalculate always + // bit: 1; mask: 0x0002; 1 = calculate on open + // bit: 2; mask: 0x0008; 1 = part of a shared formula + $isPartOfSharedFormula = (bool) (0x0008 & $options); + + // WARNING: + // We can apparently not rely on $isPartOfSharedFormula. Even when $isPartOfSharedFormula = true + // the formula data may be ordinary formula data, therefore we need to check + // explicitly for the tExp token (0x01) + $isPartOfSharedFormula = $isPartOfSharedFormula && ord($formulaStructure{2}) == 0x01; + + if ($isPartOfSharedFormula) { + // part of shared formula which means there will be a formula with a tExp token and nothing else + // get the base cell, grab tExp token + $baseRow = self::getInt2d($formulaStructure, 3); + $baseCol = self::getInt2d($formulaStructure, 5); + $this->_baseCell = PHPExcel_Cell::stringFromColumnIndex($baseCol). ($baseRow + 1); + } + + // Read cell? + if (($this->getReadFilter() !== null) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->phpSheet->getTitle())) { + if ($isPartOfSharedFormula) { + // formula is added to this cell after the sheet has been read + $this->sharedFormulaParts[$columnString . ($row + 1)] = $this->_baseCell; + } + + // offset: 16: size: 4; not used + + // offset: 4; size: 2; XF index + $xfIndex = self::getInt2d($recordData, 4); + + // offset: 6; size: 8; result of the formula + if ((ord($recordData{6}) == 0) && (ord($recordData{12}) == 255) && (ord($recordData{13}) == 255)) { + // String formula. Result follows in appended STRING record + $dataType = PHPExcel_Cell_DataType::TYPE_STRING; + + // read possible SHAREDFMLA record + $code = self::getInt2d($this->data, $this->pos); + if ($code == self::XLS_TYPE_SHAREDFMLA) { + $this->readSharedFmla(); + } + + // read STRING record + $value = $this->readString(); + } elseif ((ord($recordData{6}) == 1) + && (ord($recordData{12}) == 255) + && (ord($recordData{13}) == 255)) { + // Boolean formula. Result is in +2; 0=false, 1=true + $dataType = PHPExcel_Cell_DataType::TYPE_BOOL; + $value = (bool) ord($recordData{8}); + } elseif ((ord($recordData{6}) == 2) + && (ord($recordData{12}) == 255) + && (ord($recordData{13}) == 255)) { + // Error formula. Error code is in +2 + $dataType = PHPExcel_Cell_DataType::TYPE_ERROR; + $value = PHPExcel_Reader_Excel5_ErrorCode::lookup(ord($recordData{8})); + } elseif ((ord($recordData{6}) == 3) + && (ord($recordData{12}) == 255) + && (ord($recordData{13}) == 255)) { + // Formula result is a null string + $dataType = PHPExcel_Cell_DataType::TYPE_NULL; + $value = ''; + } else { + // forumla result is a number, first 14 bytes like _NUMBER record + $dataType = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $value = self::extractNumber(substr($recordData, 6, 8)); + } + + $cell = $this->phpSheet->getCell($columnString . ($row + 1)); + if (!$this->readDataOnly) { + // add cell style + $cell->setXfIndex($this->mapCellXfIndex[$xfIndex]); + } + + // store the formula + if (!$isPartOfSharedFormula) { + // not part of shared formula + // add cell value. If we can read formula, populate with formula, otherwise just used cached value + try { + if ($this->version != self::XLS_BIFF8) { + throw new PHPExcel_Reader_Exception('Not BIFF8. Can only read BIFF8 formulas'); + } + $formula = $this->getFormulaFromStructure($formulaStructure); // get formula in human language + $cell->setValueExplicit('=' . $formula, PHPExcel_Cell_DataType::TYPE_FORMULA); + + } catch (PHPExcel_Exception $e) { + $cell->setValueExplicit($value, $dataType); + } + } else { + if ($this->version == self::XLS_BIFF8) { + // do nothing at this point, formula id added later in the code + } else { + $cell->setValueExplicit($value, $dataType); + } + } + + // store the cached calculated value + $cell->setCalculatedValue($value); + } + } + + + /** + * Read a SHAREDFMLA record. This function just stores the binary shared formula in the reader, + * which usually contains relative references. + * These will be used to construct the formula in each shared formula part after the sheet is read. + */ + private function readSharedFmla() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0, size: 6; cell range address of the area used by the shared formula, not used for anything + $cellRange = substr($recordData, 0, 6); + $cellRange = $this->readBIFF5CellRangeAddressFixed($cellRange); // note: even BIFF8 uses BIFF5 syntax + + // offset: 6, size: 1; not used + + // offset: 7, size: 1; number of existing FORMULA records for this shared formula + $no = ord($recordData{7}); + + // offset: 8, size: var; Binary token array of the shared formula + $formula = substr($recordData, 8); + + // at this point we only store the shared formula for later use + $this->sharedFormulas[$this->_baseCell] = $formula; + } + + + /** + * Read a STRING record from current stream position and advance the stream pointer to next record + * This record is used for storing result from FORMULA record when it is a string, and + * it occurs directly after the FORMULA record + * + * @return string The string contents as UTF-8 + */ + private function readString() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->version == self::XLS_BIFF8) { + $string = self::readUnicodeStringLong($recordData); + $value = $string['value']; + } else { + $string = $this->readByteStringLong($recordData); + $value = $string['value']; + } + + return $value; + } + + + /** + * Read BOOLERR record + * This record represents a Boolean value or error value + * cell. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readBoolErr() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; row index + $row = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; column index + $column = self::getInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + // Read cell? + if (($this->getReadFilter() !== null) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->phpSheet->getTitle())) { + // offset: 4; size: 2; index to XF record + $xfIndex = self::getInt2d($recordData, 4); + + // offset: 6; size: 1; the boolean value or error value + $boolErr = ord($recordData{6}); + + // offset: 7; size: 1; 0=boolean; 1=error + $isError = ord($recordData{7}); + + $cell = $this->phpSheet->getCell($columnString . ($row + 1)); + switch ($isError) { + case 0: // boolean + $value = (bool) $boolErr; + + // add cell value + $cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_BOOL); + break; + case 1: // error type + $value = PHPExcel_Reader_Excel5_ErrorCode::lookup($boolErr); + + // add cell value + $cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_ERROR); + break; + } + + if (!$this->readDataOnly) { + // add cell style + $cell->setXfIndex($this->mapCellXfIndex[$xfIndex]); + } + } + } + + + /** + * Read MULBLANK record + * This record represents a cell range of empty cells. All + * cells are located in the same row + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readMulBlank() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; index to first column + $fc = self::getInt2d($recordData, 2); + + // offset: 4; size: 2 x nc; list of indexes to XF records + // add style information + if (!$this->readDataOnly && $this->readEmptyCells) { + for ($i = 0; $i < $length / 2 - 3; ++$i) { + $columnString = PHPExcel_Cell::stringFromColumnIndex($fc + $i); + + // Read cell? + if (($this->getReadFilter() !== null) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->phpSheet->getTitle())) { + $xfIndex = self::getInt2d($recordData, 4 + 2 * $i); + $this->phpSheet->getCell($columnString . ($row + 1))->setXfIndex($this->mapCellXfIndex[$xfIndex]); + } + } + } + + // offset: 6; size 2; index to last column (not needed) + } + + + /** + * Read LABEL record + * This record represents a cell that contains a string. In + * BIFF8 it is usually replaced by the LABELSST record. + * Excel still uses this record, if it copies unformatted + * text cells to the clipboard. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readLabel() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; index to column + $column = self::getInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + // Read cell? + if (($this->getReadFilter() !== null) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->phpSheet->getTitle())) { + // offset: 4; size: 2; XF index + $xfIndex = self::getInt2d($recordData, 4); + + // add cell value + // todo: what if string is very long? continue record + if ($this->version == self::XLS_BIFF8) { + $string = self::readUnicodeStringLong(substr($recordData, 6)); + $value = $string['value']; + } else { + $string = $this->readByteStringLong(substr($recordData, 6)); + $value = $string['value']; + } + if ($this->readEmptyCells || trim($value) !== '') { + $cell = $this->phpSheet->getCell($columnString . ($row + 1)); + $cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_STRING); + + if (!$this->readDataOnly) { + // add cell style + $cell->setXfIndex($this->mapCellXfIndex[$xfIndex]); + } + } + } + } + + + /** + * Read BLANK record + */ + private function readBlank() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; row index + $row = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; col index + $col = self::getInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($col); + + // Read cell? + if (($this->getReadFilter() !== null) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->phpSheet->getTitle())) { + // offset: 4; size: 2; XF index + $xfIndex = self::getInt2d($recordData, 4); + + // add style information + if (!$this->readDataOnly && $this->readEmptyCells) { + $this->phpSheet->getCell($columnString . ($row + 1))->setXfIndex($this->mapCellXfIndex[$xfIndex]); + } + } + } + + + /** + * Read MSODRAWING record + */ + private function readMsoDrawing() + { + $length = self::getInt2d($this->data, $this->pos + 2); + + // get spliced record data + $splicedRecordData = $this->getSplicedRecordData(); + $recordData = $splicedRecordData['recordData']; + + $this->drawingData .= $recordData; + } + + + /** + * Read OBJ record + */ + private function readObj() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->readDataOnly || $this->version != self::XLS_BIFF8) { + return; + } + + // recordData consists of an array of subrecords looking like this: + // ft: 2 bytes; ftCmo type (0x15) + // cb: 2 bytes; size in bytes of ftCmo data + // ot: 2 bytes; Object Type + // id: 2 bytes; Object id number + // grbit: 2 bytes; Option Flags + // data: var; subrecord data + + // for now, we are just interested in the second subrecord containing the object type + $ftCmoType = self::getInt2d($recordData, 0); + $cbCmoSize = self::getInt2d($recordData, 2); + $otObjType = self::getInt2d($recordData, 4); + $idObjID = self::getInt2d($recordData, 6); + $grbitOpts = self::getInt2d($recordData, 6); + + $this->objs[] = array( + 'ftCmoType' => $ftCmoType, + 'cbCmoSize' => $cbCmoSize, + 'otObjType' => $otObjType, + 'idObjID' => $idObjID, + 'grbitOpts' => $grbitOpts + ); + $this->textObjRef = $idObjID; + +// echo '_readObj()
'; +// var_dump(end($this->objs)); +// echo '
'; + } + + + /** + * Read WINDOW2 record + */ + private function readWindow2() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; option flags + $options = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; index to first visible row + $firstVisibleRow = self::getInt2d($recordData, 2); + + // offset: 4; size: 2; index to first visible colum + $firstVisibleColumn = self::getInt2d($recordData, 4); + if ($this->version === self::XLS_BIFF8) { + // offset: 8; size: 2; not used + // offset: 10; size: 2; cached magnification factor in page break preview (in percent); 0 = Default (60%) + // offset: 12; size: 2; cached magnification factor in normal view (in percent); 0 = Default (100%) + // offset: 14; size: 4; not used + $zoomscaleInPageBreakPreview = self::getInt2d($recordData, 10); + if ($zoomscaleInPageBreakPreview === 0) { + $zoomscaleInPageBreakPreview = 60; + } + $zoomscaleInNormalView = self::getInt2d($recordData, 12); + if ($zoomscaleInNormalView === 0) { + $zoomscaleInNormalView = 100; + } + } + + // bit: 1; mask: 0x0002; 0 = do not show gridlines, 1 = show gridlines + $showGridlines = (bool) ((0x0002 & $options) >> 1); + $this->phpSheet->setShowGridlines($showGridlines); + + // bit: 2; mask: 0x0004; 0 = do not show headers, 1 = show headers + $showRowColHeaders = (bool) ((0x0004 & $options) >> 2); + $this->phpSheet->setShowRowColHeaders($showRowColHeaders); + + // bit: 3; mask: 0x0008; 0 = panes are not frozen, 1 = panes are frozen + $this->frozen = (bool) ((0x0008 & $options) >> 3); + + // bit: 6; mask: 0x0040; 0 = columns from left to right, 1 = columns from right to left + $this->phpSheet->setRightToLeft((bool)((0x0040 & $options) >> 6)); + + // bit: 10; mask: 0x0400; 0 = sheet not active, 1 = sheet active + $isActive = (bool) ((0x0400 & $options) >> 10); + if ($isActive) { + $this->phpExcel->setActiveSheetIndex($this->phpExcel->getIndex($this->phpSheet)); + } + + // bit: 11; mask: 0x0800; 0 = normal view, 1 = page break view + $isPageBreakPreview = (bool) ((0x0800 & $options) >> 11); + + //FIXME: set $firstVisibleRow and $firstVisibleColumn + + if ($this->phpSheet->getSheetView()->getView() !== PHPExcel_Worksheet_SheetView::SHEETVIEW_PAGE_LAYOUT) { + //NOTE: this setting is inferior to page layout view(Excel2007-) + $view = $isPageBreakPreview ? PHPExcel_Worksheet_SheetView::SHEETVIEW_PAGE_BREAK_PREVIEW : PHPExcel_Worksheet_SheetView::SHEETVIEW_NORMAL; + $this->phpSheet->getSheetView()->setView($view); + if ($this->version === self::XLS_BIFF8) { + $zoomScale = $isPageBreakPreview ? $zoomscaleInPageBreakPreview : $zoomscaleInNormalView; + $this->phpSheet->getSheetView()->setZoomScale($zoomScale); + $this->phpSheet->getSheetView()->setZoomScaleNormal($zoomscaleInNormalView); + } + } + } + + /** + * Read PLV Record(Created by Excel2007 or upper) + */ + private function readPageLayoutView() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + //var_dump(unpack("vrt/vgrbitFrt/V2reserved/vwScalePLV/vgrbit", $recordData)); + + // offset: 0; size: 2; rt + //->ignore + $rt = self::getInt2d($recordData, 0); + // offset: 2; size: 2; grbitfr + //->ignore + $grbitFrt = self::getInt2d($recordData, 2); + // offset: 4; size: 8; reserved + //->ignore + + // offset: 12; size 2; zoom scale + $wScalePLV = self::getInt2d($recordData, 12); + // offset: 14; size 2; grbit + $grbit = self::getInt2d($recordData, 14); + + // decomprise grbit + $fPageLayoutView = $grbit & 0x01; + $fRulerVisible = ($grbit >> 1) & 0x01; //no support + $fWhitespaceHidden = ($grbit >> 3) & 0x01; //no support + + if ($fPageLayoutView === 1) { + $this->phpSheet->getSheetView()->setView(PHPExcel_Worksheet_SheetView::SHEETVIEW_PAGE_LAYOUT); + $this->phpSheet->getSheetView()->setZoomScale($wScalePLV); //set by Excel2007 only if SHEETVIEW_PAGE_LAYOUT + } + //otherwise, we cannot know whether SHEETVIEW_PAGE_LAYOUT or SHEETVIEW_PAGE_BREAK_PREVIEW. + } + + /** + * Read SCL record + */ + private function readScl() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // offset: 0; size: 2; numerator of the view magnification + $numerator = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; numerator of the view magnification + $denumerator = self::getInt2d($recordData, 2); + + // set the zoom scale (in percent) + $this->phpSheet->getSheetView()->setZoomScale($numerator * 100 / $denumerator); + } + + + /** + * Read PANE record + */ + private function readPane() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 2; position of vertical split + $px = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; position of horizontal split + $py = self::getInt2d($recordData, 2); + + if ($this->frozen) { + // frozen panes + $this->phpSheet->freezePane(PHPExcel_Cell::stringFromColumnIndex($px) . ($py + 1)); + } else { + // unfrozen panes; split windows; not supported by PHPExcel core + } + } + } + + + /** + * Read SELECTION record. There is one such record for each pane in the sheet. + */ + private function readSelection() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 1; pane identifier + $paneId = ord($recordData{0}); + + // offset: 1; size: 2; index to row of the active cell + $r = self::getInt2d($recordData, 1); + + // offset: 3; size: 2; index to column of the active cell + $c = self::getInt2d($recordData, 3); + + // offset: 5; size: 2; index into the following cell range list to the + // entry that contains the active cell + $index = self::getInt2d($recordData, 5); + + // offset: 7; size: var; cell range address list containing all selected cell ranges + $data = substr($recordData, 7); + $cellRangeAddressList = $this->readBIFF5CellRangeAddressList($data); // note: also BIFF8 uses BIFF5 syntax + + $selectedCells = $cellRangeAddressList['cellRangeAddresses'][0]; + + // first row '1' + last row '16384' indicates that full column is selected (apparently also in BIFF8!) + if (preg_match('/^([A-Z]+1\:[A-Z]+)16384$/', $selectedCells)) { + $selectedCells = preg_replace('/^([A-Z]+1\:[A-Z]+)16384$/', '${1}1048576', $selectedCells); + } + + // first row '1' + last row '65536' indicates that full column is selected + if (preg_match('/^([A-Z]+1\:[A-Z]+)65536$/', $selectedCells)) { + $selectedCells = preg_replace('/^([A-Z]+1\:[A-Z]+)65536$/', '${1}1048576', $selectedCells); + } + + // first column 'A' + last column 'IV' indicates that full row is selected + if (preg_match('/^(A[0-9]+\:)IV([0-9]+)$/', $selectedCells)) { + $selectedCells = preg_replace('/^(A[0-9]+\:)IV([0-9]+)$/', '${1}XFD${2}', $selectedCells); + } + + $this->phpSheet->setSelectedCells($selectedCells); + } + } + + + private function includeCellRangeFiltered($cellRangeAddress) + { + $includeCellRange = true; + if ($this->getReadFilter() !== null) { + $includeCellRange = false; + $rangeBoundaries = PHPExcel_Cell::getRangeBoundaries($cellRangeAddress); + $rangeBoundaries[1][0]++; + for ($row = $rangeBoundaries[0][1]; $row <= $rangeBoundaries[1][1]; $row++) { + for ($column = $rangeBoundaries[0][0]; $column != $rangeBoundaries[1][0]; $column++) { + if ($this->getReadFilter()->readCell($column, $row, $this->phpSheet->getTitle())) { + $includeCellRange = true; + break 2; + } + } + } + } + return $includeCellRange; + } + + + /** + * MERGEDCELLS + * + * This record contains the addresses of merged cell ranges + * in the current sheet. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function readMergedCells() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->version == self::XLS_BIFF8 && !$this->readDataOnly) { + $cellRangeAddressList = $this->readBIFF8CellRangeAddressList($recordData); + foreach ($cellRangeAddressList['cellRangeAddresses'] as $cellRangeAddress) { + if ((strpos($cellRangeAddress, ':') !== false) && + ($this->includeCellRangeFiltered($cellRangeAddress))) { + $this->phpSheet->mergeCells($cellRangeAddress); + } + } + } + } + + + /** + * Read HYPERLINK record + */ + private function readHyperLink() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer forward to next record + $this->pos += 4 + $length; + + if (!$this->readDataOnly) { + // offset: 0; size: 8; cell range address of all cells containing this hyperlink + try { + $cellRange = $this->readBIFF8CellRangeAddressFixed($recordData, 0, 8); + } catch (PHPExcel_Exception $e) { + return; + } + + // offset: 8, size: 16; GUID of StdLink + + // offset: 24, size: 4; unknown value + + // offset: 28, size: 4; option flags + // bit: 0; mask: 0x00000001; 0 = no link or extant, 1 = file link or URL + $isFileLinkOrUrl = (0x00000001 & self::getInt2d($recordData, 28)) >> 0; + + // bit: 1; mask: 0x00000002; 0 = relative path, 1 = absolute path or URL + $isAbsPathOrUrl = (0x00000001 & self::getInt2d($recordData, 28)) >> 1; + + // bit: 2 (and 4); mask: 0x00000014; 0 = no description + $hasDesc = (0x00000014 & self::getInt2d($recordData, 28)) >> 2; + + // bit: 3; mask: 0x00000008; 0 = no text, 1 = has text + $hasText = (0x00000008 & self::getInt2d($recordData, 28)) >> 3; + + // bit: 7; mask: 0x00000080; 0 = no target frame, 1 = has target frame + $hasFrame = (0x00000080 & self::getInt2d($recordData, 28)) >> 7; + + // bit: 8; mask: 0x00000100; 0 = file link or URL, 1 = UNC path (inc. server name) + $isUNC = (0x00000100 & self::getInt2d($recordData, 28)) >> 8; + + // offset within record data + $offset = 32; + + if ($hasDesc) { + // offset: 32; size: var; character count of description text + $dl = self::getInt4d($recordData, 32); + // offset: 36; size: var; character array of description text, no Unicode string header, always 16-bit characters, zero terminated + $desc = self::encodeUTF16(substr($recordData, 36, 2 * ($dl - 1)), false); + $offset += 4 + 2 * $dl; + } + if ($hasFrame) { + $fl = self::getInt4d($recordData, $offset); + $offset += 4 + 2 * $fl; + } + + // detect type of hyperlink (there are 4 types) + $hyperlinkType = null; + + if ($isUNC) { + $hyperlinkType = 'UNC'; + } elseif (!$isFileLinkOrUrl) { + $hyperlinkType = 'workbook'; + } elseif (ord($recordData{$offset}) == 0x03) { + $hyperlinkType = 'local'; + } elseif (ord($recordData{$offset}) == 0xE0) { + $hyperlinkType = 'URL'; + } + + switch ($hyperlinkType) { + case 'URL': + // section 5.58.2: Hyperlink containing a URL + // e.g. http://example.org/index.php + + // offset: var; size: 16; GUID of URL Moniker + $offset += 16; + // offset: var; size: 4; size (in bytes) of character array of the URL including trailing zero word + $us = self::getInt4d($recordData, $offset); + $offset += 4; + // offset: var; size: $us; character array of the URL, no Unicode string header, always 16-bit characters, zero-terminated + $url = self::encodeUTF16(substr($recordData, $offset, $us - 2), false); + $nullOffset = strpos($url, 0x00); + if ($nullOffset) { + $url = substr($url, 0, $nullOffset); + } + $url .= $hasText ? '#' : ''; + $offset += $us; + break; + case 'local': + // section 5.58.3: Hyperlink to local file + // examples: + // mydoc.txt + // ../../somedoc.xls#Sheet!A1 + + // offset: var; size: 16; GUI of File Moniker + $offset += 16; + + // offset: var; size: 2; directory up-level count. + $upLevelCount = self::getInt2d($recordData, $offset); + $offset += 2; + + // offset: var; size: 4; character count of the shortened file path and name, including trailing zero word + $sl = self::getInt4d($recordData, $offset); + $offset += 4; + + // offset: var; size: sl; character array of the shortened file path and name in 8.3-DOS-format (compressed Unicode string) + $shortenedFilePath = substr($recordData, $offset, $sl); + $shortenedFilePath = self::encodeUTF16($shortenedFilePath, true); + $shortenedFilePath = substr($shortenedFilePath, 0, -1); // remove trailing zero + + $offset += $sl; + + // offset: var; size: 24; unknown sequence + $offset += 24; + + // extended file path + // offset: var; size: 4; size of the following file link field including string lenth mark + $sz = self::getInt4d($recordData, $offset); + $offset += 4; + + // only present if $sz > 0 + if ($sz > 0) { + // offset: var; size: 4; size of the character array of the extended file path and name + $xl = self::getInt4d($recordData, $offset); + $offset += 4; + + // offset: var; size 2; unknown + $offset += 2; + + // offset: var; size $xl; character array of the extended file path and name. + $extendedFilePath = substr($recordData, $offset, $xl); + $extendedFilePath = self::encodeUTF16($extendedFilePath, false); + $offset += $xl; + } + + // construct the path + $url = str_repeat('..\\', $upLevelCount); + $url .= ($sz > 0) ? $extendedFilePath : $shortenedFilePath; // use extended path if available + $url .= $hasText ? '#' : ''; + + break; + case 'UNC': + // section 5.58.4: Hyperlink to a File with UNC (Universal Naming Convention) Path + // todo: implement + return; + case 'workbook': + // section 5.58.5: Hyperlink to the Current Workbook + // e.g. Sheet2!B1:C2, stored in text mark field + $url = 'sheet://'; + break; + default: + return; + } + + if ($hasText) { + // offset: var; size: 4; character count of text mark including trailing zero word + $tl = self::getInt4d($recordData, $offset); + $offset += 4; + // offset: var; size: var; character array of the text mark without the # sign, no Unicode header, always 16-bit characters, zero-terminated + $text = self::encodeUTF16(substr($recordData, $offset, 2 * ($tl - 1)), false); + $url .= $text; + } + + // apply the hyperlink to all the relevant cells + foreach (PHPExcel_Cell::extractAllCellReferencesInRange($cellRange) as $coordinate) { + $this->phpSheet->getCell($coordinate)->getHyperLink()->setUrl($url); + } + } + } + + + /** + * Read DATAVALIDATIONS record + */ + private function readDataValidations() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer forward to next record + $this->pos += 4 + $length; + } + + + /** + * Read DATAVALIDATION record + */ + private function readDataValidation() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer forward to next record + $this->pos += 4 + $length; + + if ($this->readDataOnly) { + return; + } + + // offset: 0; size: 4; Options + $options = self::getInt4d($recordData, 0); + + // bit: 0-3; mask: 0x0000000F; type + $type = (0x0000000F & $options) >> 0; + switch ($type) { + case 0x00: + $type = PHPExcel_Cell_DataValidation::TYPE_NONE; + break; + case 0x01: + $type = PHPExcel_Cell_DataValidation::TYPE_WHOLE; + break; + case 0x02: + $type = PHPExcel_Cell_DataValidation::TYPE_DECIMAL; + break; + case 0x03: + $type = PHPExcel_Cell_DataValidation::TYPE_LIST; + break; + case 0x04: + $type = PHPExcel_Cell_DataValidation::TYPE_DATE; + break; + case 0x05: + $type = PHPExcel_Cell_DataValidation::TYPE_TIME; + break; + case 0x06: + $type = PHPExcel_Cell_DataValidation::TYPE_TEXTLENGTH; + break; + case 0x07: + $type = PHPExcel_Cell_DataValidation::TYPE_CUSTOM; + break; + } + + // bit: 4-6; mask: 0x00000070; error type + $errorStyle = (0x00000070 & $options) >> 4; + switch ($errorStyle) { + case 0x00: + $errorStyle = PHPExcel_Cell_DataValidation::STYLE_STOP; + break; + case 0x01: + $errorStyle = PHPExcel_Cell_DataValidation::STYLE_WARNING; + break; + case 0x02: + $errorStyle = PHPExcel_Cell_DataValidation::STYLE_INFORMATION; + break; + } + + // bit: 7; mask: 0x00000080; 1= formula is explicit (only applies to list) + // I have only seen cases where this is 1 + $explicitFormula = (0x00000080 & $options) >> 7; + + // bit: 8; mask: 0x00000100; 1= empty cells allowed + $allowBlank = (0x00000100 & $options) >> 8; + + // bit: 9; mask: 0x00000200; 1= suppress drop down arrow in list type validity + $suppressDropDown = (0x00000200 & $options) >> 9; + + // bit: 18; mask: 0x00040000; 1= show prompt box if cell selected + $showInputMessage = (0x00040000 & $options) >> 18; + + // bit: 19; mask: 0x00080000; 1= show error box if invalid values entered + $showErrorMessage = (0x00080000 & $options) >> 19; + + // bit: 20-23; mask: 0x00F00000; condition operator + $operator = (0x00F00000 & $options) >> 20; + switch ($operator) { + case 0x00: + $operator = PHPExcel_Cell_DataValidation::OPERATOR_BETWEEN; + break; + case 0x01: + $operator = PHPExcel_Cell_DataValidation::OPERATOR_NOTBETWEEN; + break; + case 0x02: + $operator = PHPExcel_Cell_DataValidation::OPERATOR_EQUAL; + break; + case 0x03: + $operator = PHPExcel_Cell_DataValidation::OPERATOR_NOTEQUAL; + break; + case 0x04: + $operator = PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHAN; + break; + case 0x05: + $operator = PHPExcel_Cell_DataValidation::OPERATOR_LESSTHAN; + break; + case 0x06: + $operator = PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHANOREQUAL; + break; + case 0x07: + $operator = PHPExcel_Cell_DataValidation::OPERATOR_LESSTHANOREQUAL; + break; + } + + // offset: 4; size: var; title of the prompt box + $offset = 4; + $string = self::readUnicodeStringLong(substr($recordData, $offset)); + $promptTitle = $string['value'] !== chr(0) ? $string['value'] : ''; + $offset += $string['size']; + + // offset: var; size: var; title of the error box + $string = self::readUnicodeStringLong(substr($recordData, $offset)); + $errorTitle = $string['value'] !== chr(0) ? $string['value'] : ''; + $offset += $string['size']; + + // offset: var; size: var; text of the prompt box + $string = self::readUnicodeStringLong(substr($recordData, $offset)); + $prompt = $string['value'] !== chr(0) ? $string['value'] : ''; + $offset += $string['size']; + + // offset: var; size: var; text of the error box + $string = self::readUnicodeStringLong(substr($recordData, $offset)); + $error = $string['value'] !== chr(0) ? $string['value'] : ''; + $offset += $string['size']; + + // offset: var; size: 2; size of the formula data for the first condition + $sz1 = self::getInt2d($recordData, $offset); + $offset += 2; + + // offset: var; size: 2; not used + $offset += 2; + + // offset: var; size: $sz1; formula data for first condition (without size field) + $formula1 = substr($recordData, $offset, $sz1); + $formula1 = pack('v', $sz1) . $formula1; // prepend the length + try { + $formula1 = $this->getFormulaFromStructure($formula1); + + // in list type validity, null characters are used as item separators + if ($type == PHPExcel_Cell_DataValidation::TYPE_LIST) { + $formula1 = str_replace(chr(0), ',', $formula1); + } + } catch (PHPExcel_Exception $e) { + return; + } + $offset += $sz1; + + // offset: var; size: 2; size of the formula data for the first condition + $sz2 = self::getInt2d($recordData, $offset); + $offset += 2; + + // offset: var; size: 2; not used + $offset += 2; + + // offset: var; size: $sz2; formula data for second condition (without size field) + $formula2 = substr($recordData, $offset, $sz2); + $formula2 = pack('v', $sz2) . $formula2; // prepend the length + try { + $formula2 = $this->getFormulaFromStructure($formula2); + } catch (PHPExcel_Exception $e) { + return; + } + $offset += $sz2; + + // offset: var; size: var; cell range address list with + $cellRangeAddressList = $this->readBIFF8CellRangeAddressList(substr($recordData, $offset)); + $cellRangeAddresses = $cellRangeAddressList['cellRangeAddresses']; + + foreach ($cellRangeAddresses as $cellRange) { + $stRange = $this->phpSheet->shrinkRangeToFit($cellRange); + foreach (PHPExcel_Cell::extractAllCellReferencesInRange($stRange) as $coordinate) { + $objValidation = $this->phpSheet->getCell($coordinate)->getDataValidation(); + $objValidation->setType($type); + $objValidation->setErrorStyle($errorStyle); + $objValidation->setAllowBlank((bool)$allowBlank); + $objValidation->setShowInputMessage((bool)$showInputMessage); + $objValidation->setShowErrorMessage((bool)$showErrorMessage); + $objValidation->setShowDropDown(!$suppressDropDown); + $objValidation->setOperator($operator); + $objValidation->setErrorTitle($errorTitle); + $objValidation->setError($error); + $objValidation->setPromptTitle($promptTitle); + $objValidation->setPrompt($prompt); + $objValidation->setFormula1($formula1); + $objValidation->setFormula2($formula2); + } + } + } + + /** + * Read SHEETLAYOUT record. Stores sheet tab color information. + */ + private function readSheetLayout() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // local pointer in record data + $offset = 0; + + if (!$this->readDataOnly) { + // offset: 0; size: 2; repeated record identifier 0x0862 + + // offset: 2; size: 10; not used + + // offset: 12; size: 4; size of record data + // Excel 2003 uses size of 0x14 (documented), Excel 2007 uses size of 0x28 (not documented?) + $sz = self::getInt4d($recordData, 12); + + switch ($sz) { + case 0x14: + // offset: 16; size: 2; color index for sheet tab + $colorIndex = self::getInt2d($recordData, 16); + $color = PHPExcel_Reader_Excel5_Color::map($colorIndex, $this->palette, $this->version); + $this->phpSheet->getTabColor()->setRGB($color['rgb']); + break; + case 0x28: + // TODO: Investigate structure for .xls SHEETLAYOUT record as saved by MS Office Excel 2007 + return; + break; + } + } + } + + + /** + * Read SHEETPROTECTION record (FEATHEADR) + */ + private function readSheetProtection() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + if ($this->readDataOnly) { + return; + } + + // offset: 0; size: 2; repeated record header + + // offset: 2; size: 2; FRT cell reference flag (=0 currently) + + // offset: 4; size: 8; Currently not used and set to 0 + + // offset: 12; size: 2; Shared feature type index (2=Enhanced Protetion, 4=SmartTag) + $isf = self::getInt2d($recordData, 12); + if ($isf != 2) { + return; + } + + // offset: 14; size: 1; =1 since this is a feat header + + // offset: 15; size: 4; size of rgbHdrSData + + // rgbHdrSData, assume "Enhanced Protection" + // offset: 19; size: 2; option flags + $options = self::getInt2d($recordData, 19); + + // bit: 0; mask 0x0001; 1 = user may edit objects, 0 = users must not edit objects + $bool = (0x0001 & $options) >> 0; + $this->phpSheet->getProtection()->setObjects(!$bool); + + // bit: 1; mask 0x0002; edit scenarios + $bool = (0x0002 & $options) >> 1; + $this->phpSheet->getProtection()->setScenarios(!$bool); + + // bit: 2; mask 0x0004; format cells + $bool = (0x0004 & $options) >> 2; + $this->phpSheet->getProtection()->setFormatCells(!$bool); + + // bit: 3; mask 0x0008; format columns + $bool = (0x0008 & $options) >> 3; + $this->phpSheet->getProtection()->setFormatColumns(!$bool); + + // bit: 4; mask 0x0010; format rows + $bool = (0x0010 & $options) >> 4; + $this->phpSheet->getProtection()->setFormatRows(!$bool); + + // bit: 5; mask 0x0020; insert columns + $bool = (0x0020 & $options) >> 5; + $this->phpSheet->getProtection()->setInsertColumns(!$bool); + + // bit: 6; mask 0x0040; insert rows + $bool = (0x0040 & $options) >> 6; + $this->phpSheet->getProtection()->setInsertRows(!$bool); + + // bit: 7; mask 0x0080; insert hyperlinks + $bool = (0x0080 & $options) >> 7; + $this->phpSheet->getProtection()->setInsertHyperlinks(!$bool); + + // bit: 8; mask 0x0100; delete columns + $bool = (0x0100 & $options) >> 8; + $this->phpSheet->getProtection()->setDeleteColumns(!$bool); + + // bit: 9; mask 0x0200; delete rows + $bool = (0x0200 & $options) >> 9; + $this->phpSheet->getProtection()->setDeleteRows(!$bool); + + // bit: 10; mask 0x0400; select locked cells + $bool = (0x0400 & $options) >> 10; + $this->phpSheet->getProtection()->setSelectLockedCells(!$bool); + + // bit: 11; mask 0x0800; sort cell range + $bool = (0x0800 & $options) >> 11; + $this->phpSheet->getProtection()->setSort(!$bool); + + // bit: 12; mask 0x1000; auto filter + $bool = (0x1000 & $options) >> 12; + $this->phpSheet->getProtection()->setAutoFilter(!$bool); + + // bit: 13; mask 0x2000; pivot tables + $bool = (0x2000 & $options) >> 13; + $this->phpSheet->getProtection()->setPivotTables(!$bool); + + // bit: 14; mask 0x4000; select unlocked cells + $bool = (0x4000 & $options) >> 14; + $this->phpSheet->getProtection()->setSelectUnlockedCells(!$bool); + + // offset: 21; size: 2; not used + } + + + /** + * Read RANGEPROTECTION record + * Reading of this record is based on Microsoft Office Excel 97-2000 Binary File Format Specification, + * where it is referred to as FEAT record + */ + private function readRangeProtection() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // move stream pointer to next record + $this->pos += 4 + $length; + + // local pointer in record data + $offset = 0; + + if (!$this->readDataOnly) { + $offset += 12; + + // offset: 12; size: 2; shared feature type, 2 = enhanced protection, 4 = smart tag + $isf = self::getInt2d($recordData, 12); + if ($isf != 2) { + // we only read FEAT records of type 2 + return; + } + $offset += 2; + + $offset += 5; + + // offset: 19; size: 2; count of ref ranges this feature is on + $cref = self::getInt2d($recordData, 19); + $offset += 2; + + $offset += 6; + + // offset: 27; size: 8 * $cref; list of cell ranges (like in hyperlink record) + $cellRanges = array(); + for ($i = 0; $i < $cref; ++$i) { + try { + $cellRange = $this->readBIFF8CellRangeAddressFixed(substr($recordData, 27 + 8 * $i, 8)); + } catch (PHPExcel_Exception $e) { + return; + } + $cellRanges[] = $cellRange; + $offset += 8; + } + + // offset: var; size: var; variable length of feature specific data + $rgbFeat = substr($recordData, $offset); + $offset += 4; + + // offset: var; size: 4; the encrypted password (only 16-bit although field is 32-bit) + $wPassword = self::getInt4d($recordData, $offset); + $offset += 4; + + // Apply range protection to sheet + if ($cellRanges) { + $this->phpSheet->protectCells(implode(' ', $cellRanges), strtoupper(dechex($wPassword)), true); + } + } + } + + + /** + * Read IMDATA record + */ + private function readImData() + { + $length = self::getInt2d($this->data, $this->pos + 2); + + // get spliced record data + $splicedRecordData = $this->getSplicedRecordData(); + $recordData = $splicedRecordData['recordData']; + + // UNDER CONSTRUCTION + + // offset: 0; size: 2; image format + $cf = self::getInt2d($recordData, 0); + + // offset: 2; size: 2; environment from which the file was written + $env = self::getInt2d($recordData, 2); + + // offset: 4; size: 4; length of the image data + $lcb = self::getInt4d($recordData, 4); + + // offset: 8; size: var; image data + $iData = substr($recordData, 8); + + switch ($cf) { + case 0x09: // Windows bitmap format + // BITMAPCOREINFO + // 1. BITMAPCOREHEADER + // offset: 0; size: 4; bcSize, Specifies the number of bytes required by the structure + $bcSize = self::getInt4d($iData, 0); + // var_dump($bcSize); + + // offset: 4; size: 2; bcWidth, specifies the width of the bitmap, in pixels + $bcWidth = self::getInt2d($iData, 4); + // var_dump($bcWidth); + + // offset: 6; size: 2; bcHeight, specifies the height of the bitmap, in pixels. + $bcHeight = self::getInt2d($iData, 6); + // var_dump($bcHeight); + $ih = imagecreatetruecolor($bcWidth, $bcHeight); + + // offset: 8; size: 2; bcPlanes, specifies the number of planes for the target device. This value must be 1 + + // offset: 10; size: 2; bcBitCount specifies the number of bits-per-pixel. This value must be 1, 4, 8, or 24 + $bcBitCount = self::getInt2d($iData, 10); + // var_dump($bcBitCount); + + $rgbString = substr($iData, 12); + $rgbTriples = array(); + while (strlen($rgbString) > 0) { + $rgbTriples[] = unpack('Cb/Cg/Cr', $rgbString); + $rgbString = substr($rgbString, 3); + } + $x = 0; + $y = 0; + foreach ($rgbTriples as $i => $rgbTriple) { + $color = imagecolorallocate($ih, $rgbTriple['r'], $rgbTriple['g'], $rgbTriple['b']); + imagesetpixel($ih, $x, $bcHeight - 1 - $y, $color); + $x = ($x + 1) % $bcWidth; + $y = $y + floor(($x + 1) / $bcWidth); + } + //imagepng($ih, 'image.png'); + + $drawing = new PHPExcel_Worksheet_Drawing(); + $drawing->setPath($filename); + $drawing->setWorksheet($this->phpSheet); + break; + case 0x02: // Windows metafile or Macintosh PICT format + case 0x0e: // native format + default: + break; + } + + // getSplicedRecordData() takes care of moving current position in data stream + } + + + /** + * Read a free CONTINUE record. Free CONTINUE record may be a camouflaged MSODRAWING record + * When MSODRAWING data on a sheet exceeds 8224 bytes, CONTINUE records are used instead. Undocumented. + * In this case, we must treat the CONTINUE record as a MSODRAWING record + */ + private function readContinue() + { + $length = self::getInt2d($this->data, $this->pos + 2); + $recordData = $this->readRecordData($this->data, $this->pos + 4, $length); + + // check if we are reading drawing data + // this is in case a free CONTINUE record occurs in other circumstances we are unaware of + if ($this->drawingData == '') { + // move stream pointer to next record + $this->pos += 4 + $length; + + return; + } + + // check if record data is at least 4 bytes long, otherwise there is no chance this is MSODRAWING data + if ($length < 4) { + // move stream pointer to next record + $this->pos += 4 + $length; + + return; + } + + // dirty check to see if CONTINUE record could be a camouflaged MSODRAWING record + // look inside CONTINUE record to see if it looks like a part of an Escher stream + // we know that Escher stream may be split at least at + // 0xF003 MsofbtSpgrContainer + // 0xF004 MsofbtSpContainer + // 0xF00D MsofbtClientTextbox + $validSplitPoints = array(0xF003, 0xF004, 0xF00D); // add identifiers if we find more + + $splitPoint = self::getInt2d($recordData, 2); + if (in_array($splitPoint, $validSplitPoints)) { + // get spliced record data (and move pointer to next record) + $splicedRecordData = $this->getSplicedRecordData(); + $this->drawingData .= $splicedRecordData['recordData']; + + return; + } + + // move stream pointer to next record + $this->pos += 4 + $length; + } + + + /** + * Reads a record from current position in data stream and continues reading data as long as CONTINUE + * records are found. Splices the record data pieces and returns the combined string as if record data + * is in one piece. + * Moves to next current position in data stream to start of next record different from a CONtINUE record + * + * @return array + */ + private function getSplicedRecordData() + { + $data = ''; + $spliceOffsets = array(); + + $i = 0; + $spliceOffsets[0] = 0; + + do { + ++$i; + + // offset: 0; size: 2; identifier + $identifier = self::getInt2d($this->data, $this->pos); + // offset: 2; size: 2; length + $length = self::getInt2d($this->data, $this->pos + 2); + $data .= $this->readRecordData($this->data, $this->pos + 4, $length); + + $spliceOffsets[$i] = $spliceOffsets[$i - 1] + $length; + + $this->pos += 4 + $length; + $nextIdentifier = self::getInt2d($this->data, $this->pos); + } while ($nextIdentifier == self::XLS_TYPE_CONTINUE); + + $splicedData = array( + 'recordData' => $data, + 'spliceOffsets' => $spliceOffsets, + ); + + return $splicedData; + + } + + + /** + * Convert formula structure into human readable Excel formula like 'A3+A5*5' + * + * @param string $formulaStructure The complete binary data for the formula + * @param string $baseCell Base cell, only needed when formula contains tRefN tokens, e.g. with shared formulas + * @return string Human readable formula + */ + private function getFormulaFromStructure($formulaStructure, $baseCell = 'A1') + { + // offset: 0; size: 2; size of the following formula data + $sz = self::getInt2d($formulaStructure, 0); + + // offset: 2; size: sz + $formulaData = substr($formulaStructure, 2, $sz); + + // for debug: dump the formula data + //echo ''; + //echo 'size: ' . $sz . "\n"; + //echo 'the entire formula data: '; + //Debug::dump($formulaData); + //echo "\n----\n"; + + // offset: 2 + sz; size: variable (optional) + if (strlen($formulaStructure) > 2 + $sz) { + $additionalData = substr($formulaStructure, 2 + $sz); + + // for debug: dump the additional data + //echo 'the entire additional data: '; + //Debug::dump($additionalData); + //echo "\n----\n"; + } else { + $additionalData = ''; + } + + return $this->getFormulaFromData($formulaData, $additionalData, $baseCell); + } + + + /** + * Take formula data and additional data for formula and return human readable formula + * + * @param string $formulaData The binary data for the formula itself + * @param string $additionalData Additional binary data going with the formula + * @param string $baseCell Base cell, only needed when formula contains tRefN tokens, e.g. with shared formulas + * @return string Human readable formula + */ + private function getFormulaFromData($formulaData, $additionalData = '', $baseCell = 'A1') + { + // start parsing the formula data + $tokens = array(); + + while (strlen($formulaData) > 0 and $token = $this->getNextToken($formulaData, $baseCell)) { + $tokens[] = $token; + $formulaData = substr($formulaData, $token['size']); + + // for debug: dump the token + //var_dump($token); + } + + $formulaString = $this->createFormulaFromTokens($tokens, $additionalData); + + return $formulaString; + } + + + /** + * Take array of tokens together with additional data for formula and return human readable formula + * + * @param array $tokens + * @param array $additionalData Additional binary data going with the formula + * @param string $baseCell Base cell, only needed when formula contains tRefN tokens, e.g. with shared formulas + * @return string Human readable formula + */ + private function createFormulaFromTokens($tokens, $additionalData) + { + // empty formula? + if (empty($tokens)) { + return ''; + } + + $formulaStrings = array(); + foreach ($tokens as $token) { + // initialize spaces + $space0 = isset($space0) ? $space0 : ''; // spaces before next token, not tParen + $space1 = isset($space1) ? $space1 : ''; // carriage returns before next token, not tParen + $space2 = isset($space2) ? $space2 : ''; // spaces before opening parenthesis + $space3 = isset($space3) ? $space3 : ''; // carriage returns before opening parenthesis + $space4 = isset($space4) ? $space4 : ''; // spaces before closing parenthesis + $space5 = isset($space5) ? $space5 : ''; // carriage returns before closing parenthesis + + switch ($token['name']) { + case 'tAdd': // addition + case 'tConcat': // addition + case 'tDiv': // division + case 'tEQ': // equality + case 'tGE': // greater than or equal + case 'tGT': // greater than + case 'tIsect': // intersection + case 'tLE': // less than or equal + case 'tList': // less than or equal + case 'tLT': // less than + case 'tMul': // multiplication + case 'tNE': // multiplication + case 'tPower': // power + case 'tRange': // range + case 'tSub': // subtraction + $op2 = array_pop($formulaStrings); + $op1 = array_pop($formulaStrings); + $formulaStrings[] = "$op1$space1$space0{$token['data']}$op2"; + unset($space0, $space1); + break; + case 'tUplus': // unary plus + case 'tUminus': // unary minus + $op = array_pop($formulaStrings); + $formulaStrings[] = "$space1$space0{$token['data']}$op"; + unset($space0, $space1); + break; + case 'tPercent': // percent sign + $op = array_pop($formulaStrings); + $formulaStrings[] = "$op$space1$space0{$token['data']}"; + unset($space0, $space1); + break; + case 'tAttrVolatile': // indicates volatile function + case 'tAttrIf': + case 'tAttrSkip': + case 'tAttrChoose': + // token is only important for Excel formula evaluator + // do nothing + break; + case 'tAttrSpace': // space / carriage return + // space will be used when next token arrives, do not alter formulaString stack + switch ($token['data']['spacetype']) { + case 'type0': + $space0 = str_repeat(' ', $token['data']['spacecount']); + break; + case 'type1': + $space1 = str_repeat("\n", $token['data']['spacecount']); + break; + case 'type2': + $space2 = str_repeat(' ', $token['data']['spacecount']); + break; + case 'type3': + $space3 = str_repeat("\n", $token['data']['spacecount']); + break; + case 'type4': + $space4 = str_repeat(' ', $token['data']['spacecount']); + break; + case 'type5': + $space5 = str_repeat("\n", $token['data']['spacecount']); + break; + } + break; + case 'tAttrSum': // SUM function with one parameter + $op = array_pop($formulaStrings); + $formulaStrings[] = "{$space1}{$space0}SUM($op)"; + unset($space0, $space1); + break; + case 'tFunc': // function with fixed number of arguments + case 'tFuncV': // function with variable number of arguments + if ($token['data']['function'] != '') { + // normal function + $ops = array(); // array of operators + for ($i = 0; $i < $token['data']['args']; ++$i) { + $ops[] = array_pop($formulaStrings); + } + $ops = array_reverse($ops); + $formulaStrings[] = "$space1$space0{$token['data']['function']}(" . implode(',', $ops) . ")"; + unset($space0, $space1); + } else { + // add-in function + $ops = array(); // array of operators + for ($i = 0; $i < $token['data']['args'] - 1; ++$i) { + $ops[] = array_pop($formulaStrings); + } + $ops = array_reverse($ops); + $function = array_pop($formulaStrings); + $formulaStrings[] = "$space1$space0$function(" . implode(',', $ops) . ")"; + unset($space0, $space1); + } + break; + case 'tParen': // parenthesis + $expression = array_pop($formulaStrings); + $formulaStrings[] = "$space3$space2($expression$space5$space4)"; + unset($space2, $space3, $space4, $space5); + break; + case 'tArray': // array constant + $constantArray = self::readBIFF8ConstantArray($additionalData); + $formulaStrings[] = $space1 . $space0 . $constantArray['value']; + $additionalData = substr($additionalData, $constantArray['size']); // bite of chunk of additional data + unset($space0, $space1); + break; + case 'tMemArea': + // bite off chunk of additional data + $cellRangeAddressList = $this->readBIFF8CellRangeAddressList($additionalData); + $additionalData = substr($additionalData, $cellRangeAddressList['size']); + $formulaStrings[] = "$space1$space0{$token['data']}"; + unset($space0, $space1); + break; + case 'tArea': // cell range address + case 'tBool': // boolean + case 'tErr': // error code + case 'tInt': // integer + case 'tMemErr': + case 'tMemFunc': + case 'tMissArg': + case 'tName': + case 'tNameX': + case 'tNum': // number + case 'tRef': // single cell reference + case 'tRef3d': // 3d cell reference + case 'tArea3d': // 3d cell range reference + case 'tRefN': + case 'tAreaN': + case 'tStr': // string + $formulaStrings[] = "$space1$space0{$token['data']}"; + unset($space0, $space1); + break; + } + } + $formulaString = $formulaStrings[0]; + + // for debug: dump the human readable formula + //echo '----' . "\n"; + //echo 'Formula: ' . $formulaString; + + return $formulaString; + } + + + /** + * Fetch next token from binary formula data + * + * @param string Formula data + * @param string $baseCell Base cell, only needed when formula contains tRefN tokens, e.g. with shared formulas + * @return array + * @throws PHPExcel_Reader_Exception + */ + private function getNextToken($formulaData, $baseCell = 'A1') + { + // offset: 0; size: 1; token id + $id = ord($formulaData[0]); // token id + $name = false; // initialize token name + + switch ($id) { + case 0x03: + $name = 'tAdd'; + $size = 1; + $data = '+'; + break; + case 0x04: + $name = 'tSub'; + $size = 1; + $data = '-'; + break; + case 0x05: + $name = 'tMul'; + $size = 1; + $data = '*'; + break; + case 0x06: + $name = 'tDiv'; + $size = 1; + $data = '/'; + break; + case 0x07: + $name = 'tPower'; + $size = 1; + $data = '^'; + break; + case 0x08: + $name = 'tConcat'; + $size = 1; + $data = '&'; + break; + case 0x09: + $name = 'tLT'; + $size = 1; + $data = '<'; + break; + case 0x0A: + $name = 'tLE'; + $size = 1; + $data = '<='; + break; + case 0x0B: + $name = 'tEQ'; + $size = 1; + $data = '='; + break; + case 0x0C: + $name = 'tGE'; + $size = 1; + $data = '>='; + break; + case 0x0D: + $name = 'tGT'; + $size = 1; + $data = '>'; + break; + case 0x0E: + $name = 'tNE'; + $size = 1; + $data = '<>'; + break; + case 0x0F: + $name = 'tIsect'; + $size = 1; + $data = ' '; + break; + case 0x10: + $name = 'tList'; + $size = 1; + $data = ','; + break; + case 0x11: + $name = 'tRange'; + $size = 1; + $data = ':'; + break; + case 0x12: + $name = 'tUplus'; + $size = 1; + $data = '+'; + break; + case 0x13: + $name = 'tUminus'; + $size = 1; + $data = '-'; + break; + case 0x14: + $name = 'tPercent'; + $size = 1; + $data = '%'; + break; + case 0x15: // parenthesis + $name = 'tParen'; + $size = 1; + $data = null; + break; + case 0x16: // missing argument + $name = 'tMissArg'; + $size = 1; + $data = ''; + break; + case 0x17: // string + $name = 'tStr'; + // offset: 1; size: var; Unicode string, 8-bit string length + $string = self::readUnicodeStringShort(substr($formulaData, 1)); + $size = 1 + $string['size']; + $data = self::UTF8toExcelDoubleQuoted($string['value']); + break; + case 0x19: // Special attribute + // offset: 1; size: 1; attribute type flags: + switch (ord($formulaData[1])) { + case 0x01: + $name = 'tAttrVolatile'; + $size = 4; + $data = null; + break; + case 0x02: + $name = 'tAttrIf'; + $size = 4; + $data = null; + break; + case 0x04: + $name = 'tAttrChoose'; + // offset: 2; size: 2; number of choices in the CHOOSE function ($nc, number of parameters decreased by 1) + $nc = self::getInt2d($formulaData, 2); + // offset: 4; size: 2 * $nc + // offset: 4 + 2 * $nc; size: 2 + $size = 2 * $nc + 6; + $data = null; + break; + case 0x08: + $name = 'tAttrSkip'; + $size = 4; + $data = null; + break; + case 0x10: + $name = 'tAttrSum'; + $size = 4; + $data = null; + break; + case 0x40: + case 0x41: + $name = 'tAttrSpace'; + $size = 4; + // offset: 2; size: 2; space type and position + switch (ord($formulaData[2])) { + case 0x00: + $spacetype = 'type0'; + break; + case 0x01: + $spacetype = 'type1'; + break; + case 0x02: + $spacetype = 'type2'; + break; + case 0x03: + $spacetype = 'type3'; + break; + case 0x04: + $spacetype = 'type4'; + break; + case 0x05: + $spacetype = 'type5'; + break; + default: + throw new PHPExcel_Reader_Exception('Unrecognized space type in tAttrSpace token'); + break; + } + // offset: 3; size: 1; number of inserted spaces/carriage returns + $spacecount = ord($formulaData[3]); + + $data = array('spacetype' => $spacetype, 'spacecount' => $spacecount); + break; + default: + throw new PHPExcel_Reader_Exception('Unrecognized attribute flag in tAttr token'); + break; + } + break; + case 0x1C: // error code + // offset: 1; size: 1; error code + $name = 'tErr'; + $size = 2; + $data = PHPExcel_Reader_Excel5_ErrorCode::lookup(ord($formulaData[1])); + break; + case 0x1D: // boolean + // offset: 1; size: 1; 0 = false, 1 = true; + $name = 'tBool'; + $size = 2; + $data = ord($formulaData[1]) ? 'TRUE' : 'FALSE'; + break; + case 0x1E: // integer + // offset: 1; size: 2; unsigned 16-bit integer + $name = 'tInt'; + $size = 3; + $data = self::getInt2d($formulaData, 1); + break; + case 0x1F: // number + // offset: 1; size: 8; + $name = 'tNum'; + $size = 9; + $data = self::extractNumber(substr($formulaData, 1)); + $data = str_replace(',', '.', (string)$data); // in case non-English locale + break; + case 0x20: // array constant + case 0x40: + case 0x60: + // offset: 1; size: 7; not used + $name = 'tArray'; + $size = 8; + $data = null; + break; + case 0x21: // function with fixed number of arguments + case 0x41: + case 0x61: + $name = 'tFunc'; + $size = 3; + // offset: 1; size: 2; index to built-in sheet function + switch (self::getInt2d($formulaData, 1)) { + case 2: + $function = 'ISNA'; + $args = 1; + break; + case 3: + $function = 'ISERROR'; + $args = 1; + break; + case 10: + $function = 'NA'; + $args = 0; + break; + case 15: + $function = 'SIN'; + $args = 1; + break; + case 16: + $function = 'COS'; + $args = 1; + break; + case 17: + $function = 'TAN'; + $args = 1; + break; + case 18: + $function = 'ATAN'; + $args = 1; + break; + case 19: + $function = 'PI'; + $args = 0; + break; + case 20: + $function = 'SQRT'; + $args = 1; + break; + case 21: + $function = 'EXP'; + $args = 1; + break; + case 22: + $function = 'LN'; + $args = 1; + break; + case 23: + $function = 'LOG10'; + $args = 1; + break; + case 24: + $function = 'ABS'; + $args = 1; + break; + case 25: + $function = 'INT'; + $args = 1; + break; + case 26: + $function = 'SIGN'; + $args = 1; + break; + case 27: + $function = 'ROUND'; + $args = 2; + break; + case 30: + $function = 'REPT'; + $args = 2; + break; + case 31: + $function = 'MID'; + $args = 3; + break; + case 32: + $function = 'LEN'; + $args = 1; + break; + case 33: + $function = 'VALUE'; + $args = 1; + break; + case 34: + $function = 'TRUE'; + $args = 0; + break; + case 35: + $function = 'FALSE'; + $args = 0; + break; + case 38: + $function = 'NOT'; + $args = 1; + break; + case 39: + $function = 'MOD'; + $args = 2; + break; + case 40: + $function = 'DCOUNT'; + $args = 3; + break; + case 41: + $function = 'DSUM'; + $args = 3; + break; + case 42: + $function = 'DAVERAGE'; + $args = 3; + break; + case 43: + $function = 'DMIN'; + $args = 3; + break; + case 44: + $function = 'DMAX'; + $args = 3; + break; + case 45: + $function = 'DSTDEV'; + $args = 3; + break; + case 48: + $function = 'TEXT'; + $args = 2; + break; + case 61: + $function = 'MIRR'; + $args = 3; + break; + case 63: + $function = 'RAND'; + $args = 0; + break; + case 65: + $function = 'DATE'; + $args = 3; + break; + case 66: + $function = 'TIME'; + $args = 3; + break; + case 67: + $function = 'DAY'; + $args = 1; + break; + case 68: + $function = 'MONTH'; + $args = 1; + break; + case 69: + $function = 'YEAR'; + $args = 1; + break; + case 71: + $function = 'HOUR'; + $args = 1; + break; + case 72: + $function = 'MINUTE'; + $args = 1; + break; + case 73: + $function = 'SECOND'; + $args = 1; + break; + case 74: + $function = 'NOW'; + $args = 0; + break; + case 75: + $function = 'AREAS'; + $args = 1; + break; + case 76: + $function = 'ROWS'; + $args = 1; + break; + case 77: + $function = 'COLUMNS'; + $args = 1; + break; + case 83: + $function = 'TRANSPOSE'; + $args = 1; + break; + case 86: + $function = 'TYPE'; + $args = 1; + break; + case 97: + $function = 'ATAN2'; + $args = 2; + break; + case 98: + $function = 'ASIN'; + $args = 1; + break; + case 99: + $function = 'ACOS'; + $args = 1; + break; + case 105: + $function = 'ISREF'; + $args = 1; + break; + case 111: + $function = 'CHAR'; + $args = 1; + break; + case 112: + $function = 'LOWER'; + $args = 1; + break; + case 113: + $function = 'UPPER'; + $args = 1; + break; + case 114: + $function = 'PROPER'; + $args = 1; + break; + case 117: + $function = 'EXACT'; + $args = 2; + break; + case 118: + $function = 'TRIM'; + $args = 1; + break; + case 119: + $function = 'REPLACE'; + $args = 4; + break; + case 121: + $function = 'CODE'; + $args = 1; + break; + case 126: + $function = 'ISERR'; + $args = 1; + break; + case 127: + $function = 'ISTEXT'; + $args = 1; + break; + case 128: + $function = 'ISNUMBER'; + $args = 1; + break; + case 129: + $function = 'ISBLANK'; + $args = 1; + break; + case 130: + $function = 'T'; + $args = 1; + break; + case 131: + $function = 'N'; + $args = 1; + break; + case 140: + $function = 'DATEVALUE'; + $args = 1; + break; + case 141: + $function = 'TIMEVALUE'; + $args = 1; + break; + case 142: + $function = 'SLN'; + $args = 3; + break; + case 143: + $function = 'SYD'; + $args = 4; + break; + case 162: + $function = 'CLEAN'; + $args = 1; + break; + case 163: + $function = 'MDETERM'; + $args = 1; + break; + case 164: + $function = 'MINVERSE'; + $args = 1; + break; + case 165: + $function = 'MMULT'; + $args = 2; + break; + case 184: + $function = 'FACT'; + $args = 1; + break; + case 189: + $function = 'DPRODUCT'; + $args = 3; + break; + case 190: + $function = 'ISNONTEXT'; + $args = 1; + break; + case 195: + $function = 'DSTDEVP'; + $args = 3; + break; + case 196: + $function = 'DVARP'; + $args = 3; + break; + case 198: + $function = 'ISLOGICAL'; + $args = 1; + break; + case 199: + $function = 'DCOUNTA'; + $args = 3; + break; + case 207: + $function = 'REPLACEB'; + $args = 4; + break; + case 210: + $function = 'MIDB'; + $args = 3; + break; + case 211: + $function = 'LENB'; + $args = 1; + break; + case 212: + $function = 'ROUNDUP'; + $args = 2; + break; + case 213: + $function = 'ROUNDDOWN'; + $args = 2; + break; + case 214: + $function = 'ASC'; + $args = 1; + break; + case 215: + $function = 'DBCS'; + $args = 1; + break; + case 221: + $function = 'TODAY'; + $args = 0; + break; + case 229: + $function = 'SINH'; + $args = 1; + break; + case 230: + $function = 'COSH'; + $args = 1; + break; + case 231: + $function = 'TANH'; + $args = 1; + break; + case 232: + $function = 'ASINH'; + $args = 1; + break; + case 233: + $function = 'ACOSH'; + $args = 1; + break; + case 234: + $function = 'ATANH'; + $args = 1; + break; + case 235: + $function = 'DGET'; + $args = 3; + break; + case 244: + $function = 'INFO'; + $args = 1; + break; + case 252: + $function = 'FREQUENCY'; + $args = 2; + break; + case 261: + $function = 'ERROR.TYPE'; + $args = 1; + break; + case 271: + $function = 'GAMMALN'; + $args = 1; + break; + case 273: + $function = 'BINOMDIST'; + $args = 4; + break; + case 274: + $function = 'CHIDIST'; + $args = 2; + break; + case 275: + $function = 'CHIINV'; + $args = 2; + break; + case 276: + $function = 'COMBIN'; + $args = 2; + break; + case 277: + $function = 'CONFIDENCE'; + $args = 3; + break; + case 278: + $function = 'CRITBINOM'; + $args = 3; + break; + case 279: + $function = 'EVEN'; + $args = 1; + break; + case 280: + $function = 'EXPONDIST'; + $args = 3; + break; + case 281: + $function = 'FDIST'; + $args = 3; + break; + case 282: + $function = 'FINV'; + $args = 3; + break; + case 283: + $function = 'FISHER'; + $args = 1; + break; + case 284: + $function = 'FISHERINV'; + $args = 1; + break; + case 285: + $function = 'FLOOR'; + $args = 2; + break; + case 286: + $function = 'GAMMADIST'; + $args = 4; + break; + case 287: + $function = 'GAMMAINV'; + $args = 3; + break; + case 288: + $function = 'CEILING'; + $args = 2; + break; + case 289: + $function = 'HYPGEOMDIST'; + $args = 4; + break; + case 290: + $function = 'LOGNORMDIST'; + $args = 3; + break; + case 291: + $function = 'LOGINV'; + $args = 3; + break; + case 292: + $function = 'NEGBINOMDIST'; + $args = 3; + break; + case 293: + $function = 'NORMDIST'; + $args = 4; + break; + case 294: + $function = 'NORMSDIST'; + $args = 1; + break; + case 295: + $function = 'NORMINV'; + $args = 3; + break; + case 296: + $function = 'NORMSINV'; + $args = 1; + break; + case 297: + $function = 'STANDARDIZE'; + $args = 3; + break; + case 298: + $function = 'ODD'; + $args = 1; + break; + case 299: + $function = 'PERMUT'; + $args = 2; + break; + case 300: + $function = 'POISSON'; + $args = 3; + break; + case 301: + $function = 'TDIST'; + $args = 3; + break; + case 302: + $function = 'WEIBULL'; + $args = 4; + break; + case 303: + $function = 'SUMXMY2'; + $args = 2; + break; + case 304: + $function = 'SUMX2MY2'; + $args = 2; + break; + case 305: + $function = 'SUMX2PY2'; + $args = 2; + break; + case 306: + $function = 'CHITEST'; + $args = 2; + break; + case 307: + $function = 'CORREL'; + $args = 2; + break; + case 308: + $function = 'COVAR'; + $args = 2; + break; + case 309: + $function = 'FORECAST'; + $args = 3; + break; + case 310: + $function = 'FTEST'; + $args = 2; + break; + case 311: + $function = 'INTERCEPT'; + $args = 2; + break; + case 312: + $function = 'PEARSON'; + $args = 2; + break; + case 313: + $function = 'RSQ'; + $args = 2; + break; + case 314: + $function = 'STEYX'; + $args = 2; + break; + case 315: + $function = 'SLOPE'; + $args = 2; + break; + case 316: + $function = 'TTEST'; + $args = 4; + break; + case 325: + $function = 'LARGE'; + $args = 2; + break; + case 326: + $function = 'SMALL'; + $args = 2; + break; + case 327: + $function = 'QUARTILE'; + $args = 2; + break; + case 328: + $function = 'PERCENTILE'; + $args = 2; + break; + case 331: + $function = 'TRIMMEAN'; + $args = 2; + break; + case 332: + $function = 'TINV'; + $args = 2; + break; + case 337: + $function = 'POWER'; + $args = 2; + break; + case 342: + $function = 'RADIANS'; + $args = 1; + break; + case 343: + $function = 'DEGREES'; + $args = 1; + break; + case 346: + $function = 'COUNTIF'; + $args = 2; + break; + case 347: + $function = 'COUNTBLANK'; + $args = 1; + break; + case 350: + $function = 'ISPMT'; + $args = 4; + break; + case 351: + $function = 'DATEDIF'; + $args = 3; + break; + case 352: + $function = 'DATESTRING'; + $args = 1; + break; + case 353: + $function = 'NUMBERSTRING'; + $args = 2; + break; + case 360: + $function = 'PHONETIC'; + $args = 1; + break; + case 368: + $function = 'BAHTTEXT'; + $args = 1; + break; + default: + throw new PHPExcel_Reader_Exception('Unrecognized function in formula'); + break; + } + $data = array('function' => $function, 'args' => $args); + break; + case 0x22: // function with variable number of arguments + case 0x42: + case 0x62: + $name = 'tFuncV'; + $size = 4; + // offset: 1; size: 1; number of arguments + $args = ord($formulaData[1]); + // offset: 2: size: 2; index to built-in sheet function + $index = self::getInt2d($formulaData, 2); + switch ($index) { + case 0: + $function = 'COUNT'; + break; + case 1: + $function = 'IF'; + break; + case 4: + $function = 'SUM'; + break; + case 5: + $function = 'AVERAGE'; + break; + case 6: + $function = 'MIN'; + break; + case 7: + $function = 'MAX'; + break; + case 8: + $function = 'ROW'; + break; + case 9: + $function = 'COLUMN'; + break; + case 11: + $function = 'NPV'; + break; + case 12: + $function = 'STDEV'; + break; + case 13: + $function = 'DOLLAR'; + break; + case 14: + $function = 'FIXED'; + break; + case 28: + $function = 'LOOKUP'; + break; + case 29: + $function = 'INDEX'; + break; + case 36: + $function = 'AND'; + break; + case 37: + $function = 'OR'; + break; + case 46: + $function = 'VAR'; + break; + case 49: + $function = 'LINEST'; + break; + case 50: + $function = 'TREND'; + break; + case 51: + $function = 'LOGEST'; + break; + case 52: + $function = 'GROWTH'; + break; + case 56: + $function = 'PV'; + break; + case 57: + $function = 'FV'; + break; + case 58: + $function = 'NPER'; + break; + case 59: + $function = 'PMT'; + break; + case 60: + $function = 'RATE'; + break; + case 62: + $function = 'IRR'; + break; + case 64: + $function = 'MATCH'; + break; + case 70: + $function = 'WEEKDAY'; + break; + case 78: + $function = 'OFFSET'; + break; + case 82: + $function = 'SEARCH'; + break; + case 100: + $function = 'CHOOSE'; + break; + case 101: + $function = 'HLOOKUP'; + break; + case 102: + $function = 'VLOOKUP'; + break; + case 109: + $function = 'LOG'; + break; + case 115: + $function = 'LEFT'; + break; + case 116: + $function = 'RIGHT'; + break; + case 120: + $function = 'SUBSTITUTE'; + break; + case 124: + $function = 'FIND'; + break; + case 125: + $function = 'CELL'; + break; + case 144: + $function = 'DDB'; + break; + case 148: + $function = 'INDIRECT'; + break; + case 167: + $function = 'IPMT'; + break; + case 168: + $function = 'PPMT'; + break; + case 169: + $function = 'COUNTA'; + break; + case 183: + $function = 'PRODUCT'; + break; + case 193: + $function = 'STDEVP'; + break; + case 194: + $function = 'VARP'; + break; + case 197: + $function = 'TRUNC'; + break; + case 204: + $function = 'USDOLLAR'; + break; + case 205: + $function = 'FINDB'; + break; + case 206: + $function = 'SEARCHB'; + break; + case 208: + $function = 'LEFTB'; + break; + case 209: + $function = 'RIGHTB'; + break; + case 216: + $function = 'RANK'; + break; + case 219: + $function = 'ADDRESS'; + break; + case 220: + $function = 'DAYS360'; + break; + case 222: + $function = 'VDB'; + break; + case 227: + $function = 'MEDIAN'; + break; + case 228: + $function = 'SUMPRODUCT'; + break; + case 247: + $function = 'DB'; + break; + case 255: + $function = ''; + break; + case 269: + $function = 'AVEDEV'; + break; + case 270: + $function = 'BETADIST'; + break; + case 272: + $function = 'BETAINV'; + break; + case 317: + $function = 'PROB'; + break; + case 318: + $function = 'DEVSQ'; + break; + case 319: + $function = 'GEOMEAN'; + break; + case 320: + $function = 'HARMEAN'; + break; + case 321: + $function = 'SUMSQ'; + break; + case 322: + $function = 'KURT'; + break; + case 323: + $function = 'SKEW'; + break; + case 324: + $function = 'ZTEST'; + break; + case 329: + $function = 'PERCENTRANK'; + break; + case 330: + $function = 'MODE'; + break; + case 336: + $function = 'CONCATENATE'; + break; + case 344: + $function = 'SUBTOTAL'; + break; + case 345: + $function = 'SUMIF'; + break; + case 354: + $function = 'ROMAN'; + break; + case 358: + $function = 'GETPIVOTDATA'; + break; + case 359: + $function = 'HYPERLINK'; + break; + case 361: + $function = 'AVERAGEA'; + break; + case 362: + $function = 'MAXA'; + break; + case 363: + $function = 'MINA'; + break; + case 364: + $function = 'STDEVPA'; + break; + case 365: + $function = 'VARPA'; + break; + case 366: + $function = 'STDEVA'; + break; + case 367: + $function = 'VARA'; + break; + default: + throw new PHPExcel_Reader_Exception('Unrecognized function in formula'); + break; + } + $data = array('function' => $function, 'args' => $args); + break; + case 0x23: // index to defined name + case 0x43: + case 0x63: + $name = 'tName'; + $size = 5; + // offset: 1; size: 2; one-based index to definedname record + $definedNameIndex = self::getInt2d($formulaData, 1) - 1; + // offset: 2; size: 2; not used + $data = $this->definedname[$definedNameIndex]['name']; + break; + case 0x24: // single cell reference e.g. A5 + case 0x44: + case 0x64: + $name = 'tRef'; + $size = 5; + $data = $this->readBIFF8CellAddress(substr($formulaData, 1, 4)); + break; + case 0x25: // cell range reference to cells in the same sheet (2d) + case 0x45: + case 0x65: + $name = 'tArea'; + $size = 9; + $data = $this->readBIFF8CellRangeAddress(substr($formulaData, 1, 8)); + break; + case 0x26: // Constant reference sub-expression + case 0x46: + case 0x66: + $name = 'tMemArea'; + // offset: 1; size: 4; not used + // offset: 5; size: 2; size of the following subexpression + $subSize = self::getInt2d($formulaData, 5); + $size = 7 + $subSize; + $data = $this->getFormulaFromData(substr($formulaData, 7, $subSize)); + break; + case 0x27: // Deleted constant reference sub-expression + case 0x47: + case 0x67: + $name = 'tMemErr'; + // offset: 1; size: 4; not used + // offset: 5; size: 2; size of the following subexpression + $subSize = self::getInt2d($formulaData, 5); + $size = 7 + $subSize; + $data = $this->getFormulaFromData(substr($formulaData, 7, $subSize)); + break; + case 0x29: // Variable reference sub-expression + case 0x49: + case 0x69: + $name = 'tMemFunc'; + // offset: 1; size: 2; size of the following sub-expression + $subSize = self::getInt2d($formulaData, 1); + $size = 3 + $subSize; + $data = $this->getFormulaFromData(substr($formulaData, 3, $subSize)); + break; + case 0x2C: // Relative 2d cell reference reference, used in shared formulas and some other places + case 0x4C: + case 0x6C: + $name = 'tRefN'; + $size = 5; + $data = $this->readBIFF8CellAddressB(substr($formulaData, 1, 4), $baseCell); + break; + case 0x2D: // Relative 2d range reference + case 0x4D: + case 0x6D: + $name = 'tAreaN'; + $size = 9; + $data = $this->readBIFF8CellRangeAddressB(substr($formulaData, 1, 8), $baseCell); + break; + case 0x39: // External name + case 0x59: + case 0x79: + $name = 'tNameX'; + $size = 7; + // offset: 1; size: 2; index to REF entry in EXTERNSHEET record + // offset: 3; size: 2; one-based index to DEFINEDNAME or EXTERNNAME record + $index = self::getInt2d($formulaData, 3); + // assume index is to EXTERNNAME record + $data = $this->externalNames[$index - 1]['name']; + // offset: 5; size: 2; not used + break; + case 0x3A: // 3d reference to cell + case 0x5A: + case 0x7A: + $name = 'tRef3d'; + $size = 7; + + try { + // offset: 1; size: 2; index to REF entry + $sheetRange = $this->readSheetRangeByRefIndex(self::getInt2d($formulaData, 1)); + // offset: 3; size: 4; cell address + $cellAddress = $this->readBIFF8CellAddress(substr($formulaData, 3, 4)); + + $data = "$sheetRange!$cellAddress"; + } catch (PHPExcel_Exception $e) { + // deleted sheet reference + $data = '#REF!'; + } + break; + case 0x3B: // 3d reference to cell range + case 0x5B: + case 0x7B: + $name = 'tArea3d'; + $size = 11; + + try { + // offset: 1; size: 2; index to REF entry + $sheetRange = $this->readSheetRangeByRefIndex(self::getInt2d($formulaData, 1)); + // offset: 3; size: 8; cell address + $cellRangeAddress = $this->readBIFF8CellRangeAddress(substr($formulaData, 3, 8)); + + $data = "$sheetRange!$cellRangeAddress"; + } catch (PHPExcel_Exception $e) { + // deleted sheet reference + $data = '#REF!'; + } + break; + // Unknown cases // don't know how to deal with + default: + throw new PHPExcel_Reader_Exception('Unrecognized token ' . sprintf('%02X', $id) . ' in formula'); + break; + } + + return array( + 'id' => $id, + 'name' => $name, + 'size' => $size, + 'data' => $data, + ); + } + + + /** + * Reads a cell address in BIFF8 e.g. 'A2' or '$A$2' + * section 3.3.4 + * + * @param string $cellAddressStructure + * @return string + */ + private function readBIFF8CellAddress($cellAddressStructure) + { + // offset: 0; size: 2; index to row (0... 65535) (or offset (-32768... 32767)) + $row = self::getInt2d($cellAddressStructure, 0) + 1; + + // offset: 2; size: 2; index to column or column offset + relative flags + // bit: 7-0; mask 0x00FF; column index + $column = PHPExcel_Cell::stringFromColumnIndex(0x00FF & self::getInt2d($cellAddressStructure, 2)); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::getInt2d($cellAddressStructure, 2))) { + $column = '$' . $column; + } + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::getInt2d($cellAddressStructure, 2))) { + $row = '$' . $row; + } + + return $column . $row; + } + + + /** + * Reads a cell address in BIFF8 for shared formulas. Uses positive and negative values for row and column + * to indicate offsets from a base cell + * section 3.3.4 + * + * @param string $cellAddressStructure + * @param string $baseCell Base cell, only needed when formula contains tRefN tokens, e.g. with shared formulas + * @return string + */ + private function readBIFF8CellAddressB($cellAddressStructure, $baseCell = 'A1') + { + list($baseCol, $baseRow) = PHPExcel_Cell::coordinateFromString($baseCell); + $baseCol = PHPExcel_Cell::columnIndexFromString($baseCol) - 1; + + // offset: 0; size: 2; index to row (0... 65535) (or offset (-32768... 32767)) + $rowIndex = self::getInt2d($cellAddressStructure, 0); + $row = self::getInt2d($cellAddressStructure, 0) + 1; + + // offset: 2; size: 2; index to column or column offset + relative flags + // bit: 7-0; mask 0x00FF; column index + $colIndex = 0x00FF & self::getInt2d($cellAddressStructure, 2); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::getInt2d($cellAddressStructure, 2))) { + $column = PHPExcel_Cell::stringFromColumnIndex($colIndex); + $column = '$' . $column; + } else { + $colIndex = ($colIndex <= 127) ? $colIndex : $colIndex - 256; + $column = PHPExcel_Cell::stringFromColumnIndex($baseCol + $colIndex); + } + + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::getInt2d($cellAddressStructure, 2))) { + $row = '$' . $row; + } else { + $rowIndex = ($rowIndex <= 32767) ? $rowIndex : $rowIndex - 65536; + $row = $baseRow + $rowIndex; + } + + return $column . $row; + } + + + /** + * Reads a cell range address in BIFF5 e.g. 'A2:B6' or 'A1' + * always fixed range + * section 2.5.14 + * + * @param string $subData + * @return string + * @throws PHPExcel_Reader_Exception + */ + private function readBIFF5CellRangeAddressFixed($subData) + { + // offset: 0; size: 2; index to first row + $fr = self::getInt2d($subData, 0) + 1; + + // offset: 2; size: 2; index to last row + $lr = self::getInt2d($subData, 2) + 1; + + // offset: 4; size: 1; index to first column + $fc = ord($subData{4}); + + // offset: 5; size: 1; index to last column + $lc = ord($subData{5}); + + // check values + if ($fr > $lr || $fc > $lc) { + throw new PHPExcel_Reader_Exception('Not a cell range address'); + } + + // column index to letter + $fc = PHPExcel_Cell::stringFromColumnIndex($fc); + $lc = PHPExcel_Cell::stringFromColumnIndex($lc); + + if ($fr == $lr and $fc == $lc) { + return "$fc$fr"; + } + return "$fc$fr:$lc$lr"; + } + + + /** + * Reads a cell range address in BIFF8 e.g. 'A2:B6' or 'A1' + * always fixed range + * section 2.5.14 + * + * @param string $subData + * @return string + * @throws PHPExcel_Reader_Exception + */ + private function readBIFF8CellRangeAddressFixed($subData) + { + // offset: 0; size: 2; index to first row + $fr = self::getInt2d($subData, 0) + 1; + + // offset: 2; size: 2; index to last row + $lr = self::getInt2d($subData, 2) + 1; + + // offset: 4; size: 2; index to first column + $fc = self::getInt2d($subData, 4); + + // offset: 6; size: 2; index to last column + $lc = self::getInt2d($subData, 6); + + // check values + if ($fr > $lr || $fc > $lc) { + throw new PHPExcel_Reader_Exception('Not a cell range address'); + } + + // column index to letter + $fc = PHPExcel_Cell::stringFromColumnIndex($fc); + $lc = PHPExcel_Cell::stringFromColumnIndex($lc); + + if ($fr == $lr and $fc == $lc) { + return "$fc$fr"; + } + return "$fc$fr:$lc$lr"; + } + + + /** + * Reads a cell range address in BIFF8 e.g. 'A2:B6' or '$A$2:$B$6' + * there are flags indicating whether column/row index is relative + * section 3.3.4 + * + * @param string $subData + * @return string + */ + private function readBIFF8CellRangeAddress($subData) + { + // todo: if cell range is just a single cell, should this funciton + // not just return e.g. 'A1' and not 'A1:A1' ? + + // offset: 0; size: 2; index to first row (0... 65535) (or offset (-32768... 32767)) + $fr = self::getInt2d($subData, 0) + 1; + + // offset: 2; size: 2; index to last row (0... 65535) (or offset (-32768... 32767)) + $lr = self::getInt2d($subData, 2) + 1; + + // offset: 4; size: 2; index to first column or column offset + relative flags + + // bit: 7-0; mask 0x00FF; column index + $fc = PHPExcel_Cell::stringFromColumnIndex(0x00FF & self::getInt2d($subData, 4)); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::getInt2d($subData, 4))) { + $fc = '$' . $fc; + } + + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::getInt2d($subData, 4))) { + $fr = '$' . $fr; + } + + // offset: 6; size: 2; index to last column or column offset + relative flags + + // bit: 7-0; mask 0x00FF; column index + $lc = PHPExcel_Cell::stringFromColumnIndex(0x00FF & self::getInt2d($subData, 6)); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::getInt2d($subData, 6))) { + $lc = '$' . $lc; + } + + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::getInt2d($subData, 6))) { + $lr = '$' . $lr; + } + + return "$fc$fr:$lc$lr"; + } + + + /** + * Reads a cell range address in BIFF8 for shared formulas. Uses positive and negative values for row and column + * to indicate offsets from a base cell + * section 3.3.4 + * + * @param string $subData + * @param string $baseCell Base cell + * @return string Cell range address + */ + private function readBIFF8CellRangeAddressB($subData, $baseCell = 'A1') + { + list($baseCol, $baseRow) = PHPExcel_Cell::coordinateFromString($baseCell); + $baseCol = PHPExcel_Cell::columnIndexFromString($baseCol) - 1; + + // TODO: if cell range is just a single cell, should this funciton + // not just return e.g. 'A1' and not 'A1:A1' ? + + // offset: 0; size: 2; first row + $frIndex = self::getInt2d($subData, 0); // adjust below + + // offset: 2; size: 2; relative index to first row (0... 65535) should be treated as offset (-32768... 32767) + $lrIndex = self::getInt2d($subData, 2); // adjust below + + // offset: 4; size: 2; first column with relative/absolute flags + + // bit: 7-0; mask 0x00FF; column index + $fcIndex = 0x00FF & self::getInt2d($subData, 4); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::getInt2d($subData, 4))) { + // absolute column index + $fc = PHPExcel_Cell::stringFromColumnIndex($fcIndex); + $fc = '$' . $fc; + } else { + // column offset + $fcIndex = ($fcIndex <= 127) ? $fcIndex : $fcIndex - 256; + $fc = PHPExcel_Cell::stringFromColumnIndex($baseCol + $fcIndex); + } + + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::getInt2d($subData, 4))) { + // absolute row index + $fr = $frIndex + 1; + $fr = '$' . $fr; + } else { + // row offset + $frIndex = ($frIndex <= 32767) ? $frIndex : $frIndex - 65536; + $fr = $baseRow + $frIndex; + } + + // offset: 6; size: 2; last column with relative/absolute flags + + // bit: 7-0; mask 0x00FF; column index + $lcIndex = 0x00FF & self::getInt2d($subData, 6); + $lcIndex = ($lcIndex <= 127) ? $lcIndex : $lcIndex - 256; + $lc = PHPExcel_Cell::stringFromColumnIndex($baseCol + $lcIndex); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::getInt2d($subData, 6))) { + // absolute column index + $lc = PHPExcel_Cell::stringFromColumnIndex($lcIndex); + $lc = '$' . $lc; + } else { + // column offset + $lcIndex = ($lcIndex <= 127) ? $lcIndex : $lcIndex - 256; + $lc = PHPExcel_Cell::stringFromColumnIndex($baseCol + $lcIndex); + } + + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::getInt2d($subData, 6))) { + // absolute row index + $lr = $lrIndex + 1; + $lr = '$' . $lr; + } else { + // row offset + $lrIndex = ($lrIndex <= 32767) ? $lrIndex : $lrIndex - 65536; + $lr = $baseRow + $lrIndex; + } + + return "$fc$fr:$lc$lr"; + } + + + /** + * Read BIFF8 cell range address list + * section 2.5.15 + * + * @param string $subData + * @return array + */ + private function readBIFF8CellRangeAddressList($subData) + { + $cellRangeAddresses = array(); + + // offset: 0; size: 2; number of the following cell range addresses + $nm = self::getInt2d($subData, 0); + + $offset = 2; + // offset: 2; size: 8 * $nm; list of $nm (fixed) cell range addresses + for ($i = 0; $i < $nm; ++$i) { + $cellRangeAddresses[] = $this->readBIFF8CellRangeAddressFixed(substr($subData, $offset, 8)); + $offset += 8; + } + + return array( + 'size' => 2 + 8 * $nm, + 'cellRangeAddresses' => $cellRangeAddresses, + ); + } + + + /** + * Read BIFF5 cell range address list + * section 2.5.15 + * + * @param string $subData + * @return array + */ + private function readBIFF5CellRangeAddressList($subData) + { + $cellRangeAddresses = array(); + + // offset: 0; size: 2; number of the following cell range addresses + $nm = self::getInt2d($subData, 0); + + $offset = 2; + // offset: 2; size: 6 * $nm; list of $nm (fixed) cell range addresses + for ($i = 0; $i < $nm; ++$i) { + $cellRangeAddresses[] = $this->readBIFF5CellRangeAddressFixed(substr($subData, $offset, 6)); + $offset += 6; + } + + return array( + 'size' => 2 + 6 * $nm, + 'cellRangeAddresses' => $cellRangeAddresses, + ); + } + + + /** + * Get a sheet range like Sheet1:Sheet3 from REF index + * Note: If there is only one sheet in the range, one gets e.g Sheet1 + * It can also happen that the REF structure uses the -1 (FFFF) code to indicate deleted sheets, + * in which case an PHPExcel_Reader_Exception is thrown + * + * @param int $index + * @return string|false + * @throws PHPExcel_Reader_Exception + */ + private function readSheetRangeByRefIndex($index) + { + if (isset($this->ref[$index])) { + $type = $this->externalBooks[$this->ref[$index]['externalBookIndex']]['type']; + + switch ($type) { + case 'internal': + // check if we have a deleted 3d reference + if ($this->ref[$index]['firstSheetIndex'] == 0xFFFF or $this->ref[$index]['lastSheetIndex'] == 0xFFFF) { + throw new PHPExcel_Reader_Exception('Deleted sheet reference'); + } + + // we have normal sheet range (collapsed or uncollapsed) + $firstSheetName = $this->sheets[$this->ref[$index]['firstSheetIndex']]['name']; + $lastSheetName = $this->sheets[$this->ref[$index]['lastSheetIndex']]['name']; + + if ($firstSheetName == $lastSheetName) { + // collapsed sheet range + $sheetRange = $firstSheetName; + } else { + $sheetRange = "$firstSheetName:$lastSheetName"; + } + + // escape the single-quotes + $sheetRange = str_replace("'", "''", $sheetRange); + + // if there are special characters, we need to enclose the range in single-quotes + // todo: check if we have identified the whole set of special characters + // it seems that the following characters are not accepted for sheet names + // and we may assume that they are not present: []*/:\? + if (preg_match("/[ !\"@#£$%&{()}<>=+'|^,;-]/", $sheetRange)) { + $sheetRange = "'$sheetRange'"; + } + + return $sheetRange; + break; + default: + // TODO: external sheet support + throw new PHPExcel_Reader_Exception('Excel5 reader only supports internal sheets in fomulas'); + break; + } + } + return false; + } + + + /** + * read BIFF8 constant value array from array data + * returns e.g. array('value' => '{1,2;3,4}', 'size' => 40} + * section 2.5.8 + * + * @param string $arrayData + * @return array + */ + private static function readBIFF8ConstantArray($arrayData) + { + // offset: 0; size: 1; number of columns decreased by 1 + $nc = ord($arrayData[0]); + + // offset: 1; size: 2; number of rows decreased by 1 + $nr = self::getInt2d($arrayData, 1); + $size = 3; // initialize + $arrayData = substr($arrayData, 3); + + // offset: 3; size: var; list of ($nc + 1) * ($nr + 1) constant values + $matrixChunks = array(); + for ($r = 1; $r <= $nr + 1; ++$r) { + $items = array(); + for ($c = 1; $c <= $nc + 1; ++$c) { + $constant = self::readBIFF8Constant($arrayData); + $items[] = $constant['value']; + $arrayData = substr($arrayData, $constant['size']); + $size += $constant['size']; + } + $matrixChunks[] = implode(',', $items); // looks like e.g. '1,"hello"' + } + $matrix = '{' . implode(';', $matrixChunks) . '}'; + + return array( + 'value' => $matrix, + 'size' => $size, + ); + } + + + /** + * read BIFF8 constant value which may be 'Empty Value', 'Number', 'String Value', 'Boolean Value', 'Error Value' + * section 2.5.7 + * returns e.g. array('value' => '5', 'size' => 9) + * + * @param string $valueData + * @return array + */ + private static function readBIFF8Constant($valueData) + { + // offset: 0; size: 1; identifier for type of constant + $identifier = ord($valueData[0]); + + switch ($identifier) { + case 0x00: // empty constant (what is this?) + $value = ''; + $size = 9; + break; + case 0x01: // number + // offset: 1; size: 8; IEEE 754 floating-point value + $value = self::extractNumber(substr($valueData, 1, 8)); + $size = 9; + break; + case 0x02: // string value + // offset: 1; size: var; Unicode string, 16-bit string length + $string = self::readUnicodeStringLong(substr($valueData, 1)); + $value = '"' . $string['value'] . '"'; + $size = 1 + $string['size']; + break; + case 0x04: // boolean + // offset: 1; size: 1; 0 = FALSE, 1 = TRUE + if (ord($valueData[1])) { + $value = 'TRUE'; + } else { + $value = 'FALSE'; + } + $size = 9; + break; + case 0x10: // error code + // offset: 1; size: 1; error code + $value = PHPExcel_Reader_Excel5_ErrorCode::lookup(ord($valueData[1])); + $size = 9; + break; + } + return array( + 'value' => $value, + 'size' => $size, + ); + } + + + /** + * Extract RGB color + * OpenOffice.org's Documentation of the Microsoft Excel File Format, section 2.5.4 + * + * @param string $rgb Encoded RGB value (4 bytes) + * @return array + */ + private static function readRGB($rgb) + { + // offset: 0; size 1; Red component + $r = ord($rgb{0}); + + // offset: 1; size: 1; Green component + $g = ord($rgb{1}); + + // offset: 2; size: 1; Blue component + $b = ord($rgb{2}); + + // HEX notation, e.g. 'FF00FC' + $rgb = sprintf('%02X%02X%02X', $r, $g, $b); + + return array('rgb' => $rgb); + } + + + /** + * Read byte string (8-bit string length) + * OpenOffice documentation: 2.5.2 + * + * @param string $subData + * @return array + */ + private function readByteStringShort($subData) + { + // offset: 0; size: 1; length of the string (character count) + $ln = ord($subData[0]); + + // offset: 1: size: var; character array (8-bit characters) + $value = $this->decodeCodepage(substr($subData, 1, $ln)); + + return array( + 'value' => $value, + 'size' => 1 + $ln, // size in bytes of data structure + ); + } + + + /** + * Read byte string (16-bit string length) + * OpenOffice documentation: 2.5.2 + * + * @param string $subData + * @return array + */ + private function readByteStringLong($subData) + { + // offset: 0; size: 2; length of the string (character count) + $ln = self::getInt2d($subData, 0); + + // offset: 2: size: var; character array (8-bit characters) + $value = $this->decodeCodepage(substr($subData, 2)); + + //return $string; + return array( + 'value' => $value, + 'size' => 2 + $ln, // size in bytes of data structure + ); + } + + + /** + * Extracts an Excel Unicode short string (8-bit string length) + * OpenOffice documentation: 2.5.3 + * function will automatically find out where the Unicode string ends. + * + * @param string $subData + * @return array + */ + private static function readUnicodeStringShort($subData) + { + $value = ''; + + // offset: 0: size: 1; length of the string (character count) + $characterCount = ord($subData[0]); + + $string = self::readUnicodeString(substr($subData, 1), $characterCount); + + // add 1 for the string length + $string['size'] += 1; + + return $string; + } + + + /** + * Extracts an Excel Unicode long string (16-bit string length) + * OpenOffice documentation: 2.5.3 + * this function is under construction, needs to support rich text, and Asian phonetic settings + * + * @param string $subData + * @return array + */ + private static function readUnicodeStringLong($subData) + { + $value = ''; + + // offset: 0: size: 2; length of the string (character count) + $characterCount = self::getInt2d($subData, 0); + + $string = self::readUnicodeString(substr($subData, 2), $characterCount); + + // add 2 for the string length + $string['size'] += 2; + + return $string; + } + + + /** + * Read Unicode string with no string length field, but with known character count + * this function is under construction, needs to support rich text, and Asian phonetic settings + * OpenOffice.org's Documentation of the Microsoft Excel File Format, section 2.5.3 + * + * @param string $subData + * @param int $characterCount + * @return array + */ + private static function readUnicodeString($subData, $characterCount) + { + $value = ''; + + // offset: 0: size: 1; option flags + // bit: 0; mask: 0x01; character compression (0 = compressed 8-bit, 1 = uncompressed 16-bit) + $isCompressed = !((0x01 & ord($subData[0])) >> 0); + + // bit: 2; mask: 0x04; Asian phonetic settings + $hasAsian = (0x04) & ord($subData[0]) >> 2; + + // bit: 3; mask: 0x08; Rich-Text settings + $hasRichText = (0x08) & ord($subData[0]) >> 3; + + // offset: 1: size: var; character array + // this offset assumes richtext and Asian phonetic settings are off which is generally wrong + // needs to be fixed + $value = self::encodeUTF16(substr($subData, 1, $isCompressed ? $characterCount : 2 * $characterCount), $isCompressed); + + return array( + 'value' => $value, + 'size' => $isCompressed ? 1 + $characterCount : 1 + 2 * $characterCount, // the size in bytes including the option flags + ); + } + + + /** + * Convert UTF-8 string to string surounded by double quotes. Used for explicit string tokens in formulas. + * Example: hello"world --> "hello""world" + * + * @param string $value UTF-8 encoded string + * @return string + */ + private static function UTF8toExcelDoubleQuoted($value) + { + return '"' . str_replace('"', '""', $value) . '"'; + } + + + /** + * Reads first 8 bytes of a string and return IEEE 754 float + * + * @param string $data Binary string that is at least 8 bytes long + * @return float + */ + private static function extractNumber($data) + { + $rknumhigh = self::getInt4d($data, 4); + $rknumlow = self::getInt4d($data, 0); + $sign = ($rknumhigh & 0x80000000) >> 31; + $exp = (($rknumhigh & 0x7ff00000) >> 20) - 1023; + $mantissa = (0x100000 | ($rknumhigh & 0x000fffff)); + $mantissalow1 = ($rknumlow & 0x80000000) >> 31; + $mantissalow2 = ($rknumlow & 0x7fffffff); + $value = $mantissa / pow(2, (20 - $exp)); + + if ($mantissalow1 != 0) { + $value += 1 / pow(2, (21 - $exp)); + } + + $value += $mantissalow2 / pow(2, (52 - $exp)); + if ($sign) { + $value *= -1; + } + + return $value; + } + + + private static function getIEEE754($rknum) + { + if (($rknum & 0x02) != 0) { + $value = $rknum >> 2; + } else { + // changes by mmp, info on IEEE754 encoding from + // research.microsoft.com/~hollasch/cgindex/coding/ieeefloat.html + // The RK format calls for using only the most significant 30 bits + // of the 64 bit floating point value. The other 34 bits are assumed + // to be 0 so we use the upper 30 bits of $rknum as follows... + $sign = ($rknum & 0x80000000) >> 31; + $exp = ($rknum & 0x7ff00000) >> 20; + $mantissa = (0x100000 | ($rknum & 0x000ffffc)); + $value = $mantissa / pow(2, (20- ($exp - 1023))); + if ($sign) { + $value = -1 * $value; + } + //end of changes by mmp + } + if (($rknum & 0x01) != 0) { + $value /= 100; + } + return $value; + } + + + /** + * Get UTF-8 string from (compressed or uncompressed) UTF-16 string + * + * @param string $string + * @param bool $compressed + * @return string + */ + private static function encodeUTF16($string, $compressed = '') + { + if ($compressed) { + $string = self::uncompressByteString($string); + } + + return PHPExcel_Shared_String::ConvertEncoding($string, 'UTF-8', 'UTF-16LE'); + } + + /** + * Convert UTF-16 string in compressed notation to uncompressed form. Only used for BIFF8. + * + * @param string $string + * @return string + */ + private static function uncompressByteString($string) + { + $uncompressedString = ''; + $strLen = strlen($string); + for ($i = 0; $i < $strLen; ++$i) { + $uncompressedString .= $string[$i] . "\0"; + } + + return $uncompressedString; + } + + /** + * Convert string to UTF-8. Only used for BIFF5. + * + * @param string $string + * @return string + */ + private function decodeCodepage($string) + { + return PHPExcel_Shared_String::ConvertEncoding($string, 'UTF-8', $this->codepage); + } + + /** + * Read 16-bit unsigned integer + * + * @param string $data + * @param int $pos + * @return int + */ + public static function getInt2d($data, $pos) + { + return ord($data[$pos]) | (ord($data[$pos+1]) << 8); + } + + /** + * Read 32-bit signed integer + * + * @param string $data + * @param int $pos + * @return int + */ + public static function getInt4d($data, $pos) + { + // FIX: represent numbers correctly on 64-bit system + // http://sourceforge.net/tracker/index.php?func=detail&aid=1487372&group_id=99160&atid=623334 + // Hacked by Andreas Rehm 2006 to ensure correct result of the <<24 block on 32 and 64bit systems + $_or_24 = ord($data[$pos + 3]); + if ($_or_24 >= 128) { + // negative number + $_ord_24 = -abs((256 - $_or_24) << 24); + } else { + $_ord_24 = ($_or_24 & 127) << 24; + } + return ord($data[$pos]) | (ord($data[$pos+1]) << 8) | (ord($data[$pos+2]) << 16) | $_ord_24; + } + + private function parseRichText($is = '') + { + $value = new PHPExcel_RichText(); + $value->createText($is); + + return $value; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color.php new file mode 100644 index 0000000..1801df5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color.php @@ -0,0 +1,32 @@ +<?php + +class PHPExcel_Reader_Excel5_Color +{ + /** + * Read color + * + * @param int $color Indexed color + * @param array $palette Color palette + * @return array RGB color value, example: array('rgb' => 'FF0000') + */ + public static function map($color, $palette, $version) + { + if ($color <= 0x07 || $color >= 0x40) { + // special built-in color + return PHPExcel_Reader_Excel5_Color_BuiltIn::lookup($color); + } elseif (isset($palette) && isset($palette[$color - 8])) { + // palette color, color index 0x08 maps to pallete index 0 + return $palette[$color - 8]; + } else { + // default color table + if ($version == PHPExcel_Reader_Excel5::XLS_BIFF8) { + return PHPExcel_Reader_Excel5_Color_BIFF8::lookup($color); + } else { + // BIFF5 + return PHPExcel_Reader_Excel5_Color_BIFF5::lookup($color); + } + } + + return $color; + } +} \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/BIFF5.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/BIFF5.php new file mode 100644 index 0000000..159c27f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/BIFF5.php @@ -0,0 +1,77 @@ +<?php + +class PHPExcel_Reader_Excel5_Color_BIFF5 +{ + protected static $map = array( + 0x08 => '000000', + 0x09 => 'FFFFFF', + 0x0A => 'FF0000', + 0x0B => '00FF00', + 0x0C => '0000FF', + 0x0D => 'FFFF00', + 0x0E => 'FF00FF', + 0x0F => '00FFFF', + 0x10 => '800000', + 0x11 => '008000', + 0x12 => '000080', + 0x13 => '808000', + 0x14 => '800080', + 0x15 => '008080', + 0x16 => 'C0C0C0', + 0x17 => '808080', + 0x18 => '8080FF', + 0x19 => '802060', + 0x1A => 'FFFFC0', + 0x1B => 'A0E0F0', + 0x1C => '600080', + 0x1D => 'FF8080', + 0x1E => '0080C0', + 0x1F => 'C0C0FF', + 0x20 => '000080', + 0x21 => 'FF00FF', + 0x22 => 'FFFF00', + 0x23 => '00FFFF', + 0x24 => '800080', + 0x25 => '800000', + 0x26 => '008080', + 0x27 => '0000FF', + 0x28 => '00CFFF', + 0x29 => '69FFFF', + 0x2A => 'E0FFE0', + 0x2B => 'FFFF80', + 0x2C => 'A6CAF0', + 0x2D => 'DD9CB3', + 0x2E => 'B38FEE', + 0x2F => 'E3E3E3', + 0x30 => '2A6FF9', + 0x31 => '3FB8CD', + 0x32 => '488436', + 0x33 => '958C41', + 0x34 => '8E5E42', + 0x35 => 'A0627A', + 0x36 => '624FAC', + 0x37 => '969696', + 0x38 => '1D2FBE', + 0x39 => '286676', + 0x3A => '004500', + 0x3B => '453E01', + 0x3C => '6A2813', + 0x3D => '85396A', + 0x3E => '4A3285', + 0x3F => '424242', + ); + + /** + * Map color array from BIFF5 built-in color index + * + * @param int $color + * @return array + */ + public static function lookup($color) + { + if (isset(self::$map[$color])) { + return array('rgb' => self::$map[$color]); + } + return array('rgb' => '000000'); + } +} \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/BIFF8.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/BIFF8.php new file mode 100644 index 0000000..4d3f2d0 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/BIFF8.php @@ -0,0 +1,77 @@ +<?php + +class PHPExcel_Reader_Excel5_Color_BIFF8 +{ + protected static $map = array( + 0x08 => '000000', + 0x09 => 'FFFFFF', + 0x0A => 'FF0000', + 0x0B => '00FF00', + 0x0C => '0000FF', + 0x0D => 'FFFF00', + 0x0E => 'FF00FF', + 0x0F => '00FFFF', + 0x10 => '800000', + 0x11 => '008000', + 0x12 => '000080', + 0x13 => '808000', + 0x14 => '800080', + 0x15 => '008080', + 0x16 => 'C0C0C0', + 0x17 => '808080', + 0x18 => '9999FF', + 0x19 => '993366', + 0x1A => 'FFFFCC', + 0x1B => 'CCFFFF', + 0x1C => '660066', + 0x1D => 'FF8080', + 0x1E => '0066CC', + 0x1F => 'CCCCFF', + 0x20 => '000080', + 0x21 => 'FF00FF', + 0x22 => 'FFFF00', + 0x23 => '00FFFF', + 0x24 => '800080', + 0x25 => '800000', + 0x26 => '008080', + 0x27 => '0000FF', + 0x28 => '00CCFF', + 0x29 => 'CCFFFF', + 0x2A => 'CCFFCC', + 0x2B => 'FFFF99', + 0x2C => '99CCFF', + 0x2D => 'FF99CC', + 0x2E => 'CC99FF', + 0x2F => 'FFCC99', + 0x30 => '3366FF', + 0x31 => '33CCCC', + 0x32 => '99CC00', + 0x33 => 'FFCC00', + 0x34 => 'FF9900', + 0x35 => 'FF6600', + 0x36 => '666699', + 0x37 => '969696', + 0x38 => '003366', + 0x39 => '339966', + 0x3A => '003300', + 0x3B => '333300', + 0x3C => '993300', + 0x3D => '993366', + 0x3E => '333399', + 0x3F => '333333', + ); + + /** + * Map color array from BIFF8 built-in color index + * + * @param int $color + * @return array + */ + public static function lookup($color) + { + if (isset(self::$map[$color])) { + return array('rgb' => self::$map[$color]); + } + return array('rgb' => '000000'); + } +} \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/BuiltIn.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/BuiltIn.php new file mode 100644 index 0000000..a5b7e59 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/BuiltIn.php @@ -0,0 +1,31 @@ +<?php + +class PHPExcel_Reader_Excel5_Color_BuiltIn +{ + protected static $map = array( + 0x00 => '000000', + 0x01 => 'FFFFFF', + 0x02 => 'FF0000', + 0x03 => '00FF00', + 0x04 => '0000FF', + 0x05 => 'FFFF00', + 0x06 => 'FF00FF', + 0x07 => '00FFFF', + 0x40 => '000000', // system window text color + 0x41 => 'FFFFFF', // system window background color + ); + + /** + * Map built-in color to RGB value + * + * @param int $color Indexed color + * @return array + */ + public static function lookup($color) + { + if (isset(self::$map[$color])) { + return array('rgb' => self::$map[$color]); + } + return array('rgb' => '000000'); + } +} \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/_notes/dwsync.xml new file mode 100644 index 0000000..0dcd3a4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Color/_notes/dwsync.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="BIFF5.php" server="62.244.88.21/deciday/" local="131919461880587923" remote="131880384600000000" Dst="1" /> +<file name="BIFF8.php" server="62.244.88.21/deciday/" local="131919461880595042" remote="131880384600000000" Dst="1" /> +<file name="BuiltIn.php" server="62.244.88.21/deciday/" local="131919461882577878" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/ErrorCode.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/ErrorCode.php new file mode 100644 index 0000000..f1d1cb6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/ErrorCode.php @@ -0,0 +1,28 @@ +<?php + +class PHPExcel_Reader_Excel5_ErrorCode +{ + protected static $map = array( + 0x00 => '#NULL!', + 0x07 => '#DIV/0!', + 0x0F => '#VALUE!', + 0x17 => '#REF!', + 0x1D => '#NAME?', + 0x24 => '#NUM!', + 0x2A => '#N/A', + ); + + /** + * Map error code, e.g. '#N/A' + * + * @param int $code + * @return string + */ + public static function lookup($code) + { + if (isset(self::$map[$code])) { + return self::$map[$code]; + } + return false; + } +} \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Escher.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Escher.php new file mode 100644 index 0000000..2b99e22 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Escher.php @@ -0,0 +1,669 @@ +<?php + +/** + * PHPExcel_Reader_Excel5_Escher + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Reader_Excel5_Escher +{ + const DGGCONTAINER = 0xF000; + const BSTORECONTAINER = 0xF001; + const DGCONTAINER = 0xF002; + const SPGRCONTAINER = 0xF003; + const SPCONTAINER = 0xF004; + const DGG = 0xF006; + const BSE = 0xF007; + const DG = 0xF008; + const SPGR = 0xF009; + const SP = 0xF00A; + const OPT = 0xF00B; + const CLIENTTEXTBOX = 0xF00D; + const CLIENTANCHOR = 0xF010; + const CLIENTDATA = 0xF011; + const BLIPJPEG = 0xF01D; + const BLIPPNG = 0xF01E; + const SPLITMENUCOLORS = 0xF11E; + const TERTIARYOPT = 0xF122; + + /** + * Escher stream data (binary) + * + * @var string + */ + private $data; + + /** + * Size in bytes of the Escher stream data + * + * @var int + */ + private $dataSize; + + /** + * Current position of stream pointer in Escher stream data + * + * @var int + */ + private $pos; + + /** + * The object to be returned by the reader. Modified during load. + * + * @var mixed + */ + private $object; + + /** + * Create a new PHPExcel_Reader_Excel5_Escher instance + * + * @param mixed $object + */ + public function __construct($object) + { + $this->object = $object; + } + + /** + * Load Escher stream data. May be a partial Escher stream. + * + * @param string $data + */ + public function load($data) + { + $this->data = $data; + + // total byte size of Excel data (workbook global substream + sheet substreams) + $this->dataSize = strlen($this->data); + + $this->pos = 0; + + // Parse Escher stream + while ($this->pos < $this->dataSize) { + // offset: 2; size: 2: Record Type + $fbt = PHPExcel_Reader_Excel5::getInt2d($this->data, $this->pos + 2); + + switch ($fbt) { + case self::DGGCONTAINER: + $this->readDggContainer(); + break; + case self::DGG: + $this->readDgg(); + break; + case self::BSTORECONTAINER: + $this->readBstoreContainer(); + break; + case self::BSE: + $this->readBSE(); + break; + case self::BLIPJPEG: + $this->readBlipJPEG(); + break; + case self::BLIPPNG: + $this->readBlipPNG(); + break; + case self::OPT: + $this->readOPT(); + break; + case self::TERTIARYOPT: + $this->readTertiaryOPT(); + break; + case self::SPLITMENUCOLORS: + $this->readSplitMenuColors(); + break; + case self::DGCONTAINER: + $this->readDgContainer(); + break; + case self::DG: + $this->readDg(); + break; + case self::SPGRCONTAINER: + $this->readSpgrContainer(); + break; + case self::SPCONTAINER: + $this->readSpContainer(); + break; + case self::SPGR: + $this->readSpgr(); + break; + case self::SP: + $this->readSp(); + break; + case self::CLIENTTEXTBOX: + $this->readClientTextbox(); + break; + case self::CLIENTANCHOR: + $this->readClientAnchor(); + break; + case self::CLIENTDATA: + $this->readClientData(); + break; + default: + $this->readDefault(); + break; + } + } + + return $this->object; + } + + /** + * Read a generic record + */ + private function readDefault() + { + // offset 0; size: 2; recVer and recInstance + $verInstance = PHPExcel_Reader_Excel5::getInt2d($this->data, $this->pos); + + // offset: 2; size: 2: Record Type + $fbt = PHPExcel_Reader_Excel5::getInt2d($this->data, $this->pos + 2); + + // bit: 0-3; mask: 0x000F; recVer + $recVer = (0x000F & $verInstance) >> 0; + + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + } + + /** + * Read DggContainer record (Drawing Group Container) + */ + private function readDggContainer() + { + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + + // record is a container, read contents + $dggContainer = new PHPExcel_Shared_Escher_DggContainer(); + $this->object->setDggContainer($dggContainer); + $reader = new PHPExcel_Reader_Excel5_Escher($dggContainer); + $reader->load($recordData); + } + + /** + * Read Dgg record (Drawing Group) + */ + private function readDgg() + { + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + } + + /** + * Read BstoreContainer record (Blip Store Container) + */ + private function readBstoreContainer() + { + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + + // record is a container, read contents + $bstoreContainer = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer(); + $this->object->setBstoreContainer($bstoreContainer); + $reader = new PHPExcel_Reader_Excel5_Escher($bstoreContainer); + $reader->load($recordData); + } + + /** + * Read BSE record + */ + private function readBSE() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::getInt2d($this->data, $this->pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + + // add BSE to BstoreContainer + $BSE = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE(); + $this->object->addBSE($BSE); + + $BSE->setBLIPType($recInstance); + + // offset: 0; size: 1; btWin32 (MSOBLIPTYPE) + $btWin32 = ord($recordData[0]); + + // offset: 1; size: 1; btWin32 (MSOBLIPTYPE) + $btMacOS = ord($recordData[1]); + + // offset: 2; size: 16; MD4 digest + $rgbUid = substr($recordData, 2, 16); + + // offset: 18; size: 2; tag + $tag = PHPExcel_Reader_Excel5::getInt2d($recordData, 18); + + // offset: 20; size: 4; size of BLIP in bytes + $size = PHPExcel_Reader_Excel5::getInt4d($recordData, 20); + + // offset: 24; size: 4; number of references to this BLIP + $cRef = PHPExcel_Reader_Excel5::getInt4d($recordData, 24); + + // offset: 28; size: 4; MSOFO file offset + $foDelay = PHPExcel_Reader_Excel5::getInt4d($recordData, 28); + + // offset: 32; size: 1; unused1 + $unused1 = ord($recordData{32}); + + // offset: 33; size: 1; size of nameData in bytes (including null terminator) + $cbName = ord($recordData{33}); + + // offset: 34; size: 1; unused2 + $unused2 = ord($recordData{34}); + + // offset: 35; size: 1; unused3 + $unused3 = ord($recordData{35}); + + // offset: 36; size: $cbName; nameData + $nameData = substr($recordData, 36, $cbName); + + // offset: 36 + $cbName, size: var; the BLIP data + $blipData = substr($recordData, 36 + $cbName); + + // record is a container, read contents + $reader = new PHPExcel_Reader_Excel5_Escher($BSE); + $reader->load($blipData); + } + + /** + * Read BlipJPEG record. Holds raw JPEG image data + */ + private function readBlipJPEG() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::getInt2d($this->data, $this->pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + + $pos = 0; + + // offset: 0; size: 16; rgbUid1 (MD4 digest of) + $rgbUid1 = substr($recordData, 0, 16); + $pos += 16; + + // offset: 16; size: 16; rgbUid2 (MD4 digest), only if $recInstance = 0x46B or 0x6E3 + if (in_array($recInstance, array(0x046B, 0x06E3))) { + $rgbUid2 = substr($recordData, 16, 16); + $pos += 16; + } + + // offset: var; size: 1; tag + $tag = ord($recordData{$pos}); + $pos += 1; + + // offset: var; size: var; the raw image data + $data = substr($recordData, $pos); + + $blip = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip(); + $blip->setData($data); + + $this->object->setBlip($blip); + } + + /** + * Read BlipPNG record. Holds raw PNG image data + */ + private function readBlipPNG() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::getInt2d($this->data, $this->pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + + $pos = 0; + + // offset: 0; size: 16; rgbUid1 (MD4 digest of) + $rgbUid1 = substr($recordData, 0, 16); + $pos += 16; + + // offset: 16; size: 16; rgbUid2 (MD4 digest), only if $recInstance = 0x46B or 0x6E3 + if ($recInstance == 0x06E1) { + $rgbUid2 = substr($recordData, 16, 16); + $pos += 16; + } + + // offset: var; size: 1; tag + $tag = ord($recordData{$pos}); + $pos += 1; + + // offset: var; size: var; the raw image data + $data = substr($recordData, $pos); + + $blip = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip(); + $blip->setData($data); + + $this->object->setBlip($blip); + } + + /** + * Read OPT record. This record may occur within DggContainer record or SpContainer + */ + private function readOPT() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::getInt2d($this->data, $this->pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + + $this->readOfficeArtRGFOPTE($recordData, $recInstance); + } + + /** + * Read TertiaryOPT record + */ + private function readTertiaryOPT() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::getInt2d($this->data, $this->pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + } + + /** + * Read SplitMenuColors record + */ + private function readSplitMenuColors() + { + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + } + + /** + * Read DgContainer record (Drawing Container) + */ + private function readDgContainer() + { + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + + // record is a container, read contents + $dgContainer = new PHPExcel_Shared_Escher_DgContainer(); + $this->object->setDgContainer($dgContainer); + $reader = new PHPExcel_Reader_Excel5_Escher($dgContainer); + $escher = $reader->load($recordData); + } + + /** + * Read Dg record (Drawing) + */ + private function readDg() + { + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + } + + /** + * Read SpgrContainer record (Shape Group Container) + */ + private function readSpgrContainer() + { + // context is either context DgContainer or SpgrContainer + + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + + // record is a container, read contents + $spgrContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer(); + + if ($this->object instanceof PHPExcel_Shared_Escher_DgContainer) { + // DgContainer + $this->object->setSpgrContainer($spgrContainer); + } else { + // SpgrContainer + $this->object->addChild($spgrContainer); + } + + $reader = new PHPExcel_Reader_Excel5_Escher($spgrContainer); + $escher = $reader->load($recordData); + } + + /** + * Read SpContainer record (Shape Container) + */ + private function readSpContainer() + { + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // add spContainer to spgrContainer + $spContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer(); + $this->object->addChild($spContainer); + + // move stream pointer to next record + $this->pos += 8 + $length; + + // record is a container, read contents + $reader = new PHPExcel_Reader_Excel5_Escher($spContainer); + $escher = $reader->load($recordData); + } + + /** + * Read Spgr record (Shape Group) + */ + private function readSpgr() + { + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + } + + /** + * Read Sp record (Shape) + */ + private function readSp() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::getInt2d($this->data, $this->pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + } + + /** + * Read ClientTextbox record + */ + private function readClientTextbox() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::getInt2d($this->data, $this->pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + } + + /** + * Read ClientAnchor record. This record holds information about where the shape is anchored in worksheet + */ + private function readClientAnchor() + { + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + + // offset: 2; size: 2; upper-left corner column index (0-based) + $c1 = PHPExcel_Reader_Excel5::getInt2d($recordData, 2); + + // offset: 4; size: 2; upper-left corner horizontal offset in 1/1024 of column width + $startOffsetX = PHPExcel_Reader_Excel5::getInt2d($recordData, 4); + + // offset: 6; size: 2; upper-left corner row index (0-based) + $r1 = PHPExcel_Reader_Excel5::getInt2d($recordData, 6); + + // offset: 8; size: 2; upper-left corner vertical offset in 1/256 of row height + $startOffsetY = PHPExcel_Reader_Excel5::getInt2d($recordData, 8); + + // offset: 10; size: 2; bottom-right corner column index (0-based) + $c2 = PHPExcel_Reader_Excel5::getInt2d($recordData, 10); + + // offset: 12; size: 2; bottom-right corner horizontal offset in 1/1024 of column width + $endOffsetX = PHPExcel_Reader_Excel5::getInt2d($recordData, 12); + + // offset: 14; size: 2; bottom-right corner row index (0-based) + $r2 = PHPExcel_Reader_Excel5::getInt2d($recordData, 14); + + // offset: 16; size: 2; bottom-right corner vertical offset in 1/256 of row height + $endOffsetY = PHPExcel_Reader_Excel5::getInt2d($recordData, 16); + + // set the start coordinates + $this->object->setStartCoordinates(PHPExcel_Cell::stringFromColumnIndex($c1) . ($r1 + 1)); + + // set the start offsetX + $this->object->setStartOffsetX($startOffsetX); + + // set the start offsetY + $this->object->setStartOffsetY($startOffsetY); + + // set the end coordinates + $this->object->setEndCoordinates(PHPExcel_Cell::stringFromColumnIndex($c2) . ($r2 + 1)); + + // set the end offsetX + $this->object->setEndOffsetX($endOffsetX); + + // set the end offsetY + $this->object->setEndOffsetY($endOffsetY); + } + + /** + * Read ClientData record + */ + private function readClientData() + { + $length = PHPExcel_Reader_Excel5::getInt4d($this->data, $this->pos + 4); + $recordData = substr($this->data, $this->pos + 8, $length); + + // move stream pointer to next record + $this->pos += 8 + $length; + } + + /** + * Read OfficeArtRGFOPTE table of property-value pairs + * + * @param string $data Binary data + * @param int $n Number of properties + */ + private function readOfficeArtRGFOPTE($data, $n) + { + $splicedComplexData = substr($data, 6 * $n); + + // loop through property-value pairs + for ($i = 0; $i < $n; ++$i) { + // read 6 bytes at a time + $fopte = substr($data, 6 * $i, 6); + + // offset: 0; size: 2; opid + $opid = PHPExcel_Reader_Excel5::getInt2d($fopte, 0); + + // bit: 0-13; mask: 0x3FFF; opid.opid + $opidOpid = (0x3FFF & $opid) >> 0; + + // bit: 14; mask 0x4000; 1 = value in op field is BLIP identifier + $opidFBid = (0x4000 & $opid) >> 14; + + // bit: 15; mask 0x8000; 1 = this is a complex property, op field specifies size of complex data + $opidFComplex = (0x8000 & $opid) >> 15; + + // offset: 2; size: 4; the value for this property + $op = PHPExcel_Reader_Excel5::getInt4d($fopte, 2); + + if ($opidFComplex) { + $complexData = substr($splicedComplexData, 0, $op); + $splicedComplexData = substr($splicedComplexData, $op); + + // we store string value with complex data + $value = $complexData; + } else { + // we store integer value + $value = $op; + } + + $this->object->setOPT($opidOpid, $value); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/MD5.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/MD5.php new file mode 100644 index 0000000..f14ea94 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/MD5.php @@ -0,0 +1,203 @@ +<?php + +/** + * PHPExcel_Reader_Excel5_MD5 + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Reader_Excel5_MD5 +{ + // Context + private $a; + private $b; + private $c; + private $d; + + /** + * MD5 stream constructor + */ + public function __construct() + { + $this->reset(); + } + + /** + * Reset the MD5 stream context + */ + public function reset() + { + $this->a = 0x67452301; + $this->b = 0xEFCDAB89; + $this->c = 0x98BADCFE; + $this->d = 0x10325476; + } + + /** + * Get MD5 stream context + * + * @return string + */ + public function getContext() + { + $s = ''; + foreach (array('a', 'b', 'c', 'd') as $i) { + $v = $this->{$i}; + $s .= chr($v & 0xff); + $s .= chr(($v >> 8) & 0xff); + $s .= chr(($v >> 16) & 0xff); + $s .= chr(($v >> 24) & 0xff); + } + + return $s; + } + + /** + * Add data to context + * + * @param string $data Data to add + */ + public function add($data) + { + $words = array_values(unpack('V16', $data)); + + $A = $this->a; + $B = $this->b; + $C = $this->c; + $D = $this->d; + + $F = array('PHPExcel_Reader_Excel5_MD5','f'); + $G = array('PHPExcel_Reader_Excel5_MD5','g'); + $H = array('PHPExcel_Reader_Excel5_MD5','h'); + $I = array('PHPExcel_Reader_Excel5_MD5','i'); + + /* ROUND 1 */ + self::step($F, $A, $B, $C, $D, $words[0], 7, 0xd76aa478); + self::step($F, $D, $A, $B, $C, $words[1], 12, 0xe8c7b756); + self::step($F, $C, $D, $A, $B, $words[2], 17, 0x242070db); + self::step($F, $B, $C, $D, $A, $words[3], 22, 0xc1bdceee); + self::step($F, $A, $B, $C, $D, $words[4], 7, 0xf57c0faf); + self::step($F, $D, $A, $B, $C, $words[5], 12, 0x4787c62a); + self::step($F, $C, $D, $A, $B, $words[6], 17, 0xa8304613); + self::step($F, $B, $C, $D, $A, $words[7], 22, 0xfd469501); + self::step($F, $A, $B, $C, $D, $words[8], 7, 0x698098d8); + self::step($F, $D, $A, $B, $C, $words[9], 12, 0x8b44f7af); + self::step($F, $C, $D, $A, $B, $words[10], 17, 0xffff5bb1); + self::step($F, $B, $C, $D, $A, $words[11], 22, 0x895cd7be); + self::step($F, $A, $B, $C, $D, $words[12], 7, 0x6b901122); + self::step($F, $D, $A, $B, $C, $words[13], 12, 0xfd987193); + self::step($F, $C, $D, $A, $B, $words[14], 17, 0xa679438e); + self::step($F, $B, $C, $D, $A, $words[15], 22, 0x49b40821); + + /* ROUND 2 */ + self::step($G, $A, $B, $C, $D, $words[1], 5, 0xf61e2562); + self::step($G, $D, $A, $B, $C, $words[6], 9, 0xc040b340); + self::step($G, $C, $D, $A, $B, $words[11], 14, 0x265e5a51); + self::step($G, $B, $C, $D, $A, $words[0], 20, 0xe9b6c7aa); + self::step($G, $A, $B, $C, $D, $words[5], 5, 0xd62f105d); + self::step($G, $D, $A, $B, $C, $words[10], 9, 0x02441453); + self::step($G, $C, $D, $A, $B, $words[15], 14, 0xd8a1e681); + self::step($G, $B, $C, $D, $A, $words[4], 20, 0xe7d3fbc8); + self::step($G, $A, $B, $C, $D, $words[9], 5, 0x21e1cde6); + self::step($G, $D, $A, $B, $C, $words[14], 9, 0xc33707d6); + self::step($G, $C, $D, $A, $B, $words[3], 14, 0xf4d50d87); + self::step($G, $B, $C, $D, $A, $words[8], 20, 0x455a14ed); + self::step($G, $A, $B, $C, $D, $words[13], 5, 0xa9e3e905); + self::step($G, $D, $A, $B, $C, $words[2], 9, 0xfcefa3f8); + self::step($G, $C, $D, $A, $B, $words[7], 14, 0x676f02d9); + self::step($G, $B, $C, $D, $A, $words[12], 20, 0x8d2a4c8a); + + /* ROUND 3 */ + self::step($H, $A, $B, $C, $D, $words[5], 4, 0xfffa3942); + self::step($H, $D, $A, $B, $C, $words[8], 11, 0x8771f681); + self::step($H, $C, $D, $A, $B, $words[11], 16, 0x6d9d6122); + self::step($H, $B, $C, $D, $A, $words[14], 23, 0xfde5380c); + self::step($H, $A, $B, $C, $D, $words[1], 4, 0xa4beea44); + self::step($H, $D, $A, $B, $C, $words[4], 11, 0x4bdecfa9); + self::step($H, $C, $D, $A, $B, $words[7], 16, 0xf6bb4b60); + self::step($H, $B, $C, $D, $A, $words[10], 23, 0xbebfbc70); + self::step($H, $A, $B, $C, $D, $words[13], 4, 0x289b7ec6); + self::step($H, $D, $A, $B, $C, $words[0], 11, 0xeaa127fa); + self::step($H, $C, $D, $A, $B, $words[3], 16, 0xd4ef3085); + self::step($H, $B, $C, $D, $A, $words[6], 23, 0x04881d05); + self::step($H, $A, $B, $C, $D, $words[9], 4, 0xd9d4d039); + self::step($H, $D, $A, $B, $C, $words[12], 11, 0xe6db99e5); + self::step($H, $C, $D, $A, $B, $words[15], 16, 0x1fa27cf8); + self::step($H, $B, $C, $D, $A, $words[2], 23, 0xc4ac5665); + + /* ROUND 4 */ + self::step($I, $A, $B, $C, $D, $words[0], 6, 0xf4292244); + self::step($I, $D, $A, $B, $C, $words[7], 10, 0x432aff97); + self::step($I, $C, $D, $A, $B, $words[14], 15, 0xab9423a7); + self::step($I, $B, $C, $D, $A, $words[5], 21, 0xfc93a039); + self::step($I, $A, $B, $C, $D, $words[12], 6, 0x655b59c3); + self::step($I, $D, $A, $B, $C, $words[3], 10, 0x8f0ccc92); + self::step($I, $C, $D, $A, $B, $words[10], 15, 0xffeff47d); + self::step($I, $B, $C, $D, $A, $words[1], 21, 0x85845dd1); + self::step($I, $A, $B, $C, $D, $words[8], 6, 0x6fa87e4f); + self::step($I, $D, $A, $B, $C, $words[15], 10, 0xfe2ce6e0); + self::step($I, $C, $D, $A, $B, $words[6], 15, 0xa3014314); + self::step($I, $B, $C, $D, $A, $words[13], 21, 0x4e0811a1); + self::step($I, $A, $B, $C, $D, $words[4], 6, 0xf7537e82); + self::step($I, $D, $A, $B, $C, $words[11], 10, 0xbd3af235); + self::step($I, $C, $D, $A, $B, $words[2], 15, 0x2ad7d2bb); + self::step($I, $B, $C, $D, $A, $words[9], 21, 0xeb86d391); + + $this->a = ($this->a + $A) & 0xffffffff; + $this->b = ($this->b + $B) & 0xffffffff; + $this->c = ($this->c + $C) & 0xffffffff; + $this->d = ($this->d + $D) & 0xffffffff; + } + + private static function f($X, $Y, $Z) + { + return (($X & $Y) | ((~ $X) & $Z)); // X AND Y OR NOT X AND Z + } + + private static function g($X, $Y, $Z) + { + return (($X & $Z) | ($Y & (~ $Z))); // X AND Z OR Y AND NOT Z + } + + private static function h($X, $Y, $Z) + { + return ($X ^ $Y ^ $Z); // X XOR Y XOR Z + } + + private static function i($X, $Y, $Z) + { + return ($Y ^ ($X | (~ $Z))) ; // Y XOR (X OR NOT Z) + } + + private static function step($func, &$A, $B, $C, $D, $M, $s, $t) + { + $A = ($A + call_user_func($func, $B, $C, $D) + $M + $t) & 0xffffffff; + $A = self::rotate($A, $s); + $A = ($B + $A) & 0xffffffff; + } + + private static function rotate($decimal, $bits) + { + $binary = str_pad(decbin($decimal), 32, "0", STR_PAD_LEFT); + return bindec(substr($binary, $bits).substr($binary, 0, $bits)); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/RC4.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/RC4.php new file mode 100644 index 0000000..5640539 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/RC4.php @@ -0,0 +1,81 @@ +<?php + +/** + * PHPExcel_Reader_Excel5_RC4 + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Reader_Excel5_RC4 +{ + // Context + protected $s = array(); + protected $i = 0; + protected $j = 0; + + /** + * RC4 stream decryption/encryption constrcutor + * + * @param string $key Encryption key/passphrase + */ + public function __construct($key) + { + $len = strlen($key); + + for ($this->i = 0; $this->i < 256; $this->i++) { + $this->s[$this->i] = $this->i; + } + + $this->j = 0; + for ($this->i = 0; $this->i < 256; $this->i++) { + $this->j = ($this->j + $this->s[$this->i] + ord($key[$this->i % $len])) % 256; + $t = $this->s[$this->i]; + $this->s[$this->i] = $this->s[$this->j]; + $this->s[$this->j] = $t; + } + $this->i = $this->j = 0; + } + + /** + * Symmetric decryption/encryption function + * + * @param string $data Data to encrypt/decrypt + * + * @return string + */ + public function RC4($data) + { + $len = strlen($data); + for ($c = 0; $c < $len; $c++) { + $this->i = ($this->i + 1) % 256; + $this->j = ($this->j + $this->s[$this->i]) % 256; + $t = $this->s[$this->i]; + $this->s[$this->i] = $this->s[$this->j]; + $this->s[$this->j] = $t; + + $t = ($this->s[$this->i] + $this->s[$this->j]) % 256; + + $data[$c] = chr(ord($data[$c]) ^ $this->s[$t]); + } + return $data; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Style/Border.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Style/Border.php new file mode 100644 index 0000000..fb45b9d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Style/Border.php @@ -0,0 +1,36 @@ +<?php + +class PHPExcel_Reader_Excel5_Style_Border +{ + protected static $map = array( + 0x00 => PHPExcel_Style_Border::BORDER_NONE, + 0x01 => PHPExcel_Style_Border::BORDER_THIN, + 0x02 => PHPExcel_Style_Border::BORDER_MEDIUM, + 0x03 => PHPExcel_Style_Border::BORDER_DASHED, + 0x04 => PHPExcel_Style_Border::BORDER_DOTTED, + 0x05 => PHPExcel_Style_Border::BORDER_THICK, + 0x06 => PHPExcel_Style_Border::BORDER_DOUBLE, + 0x07 => PHPExcel_Style_Border::BORDER_HAIR, + 0x08 => PHPExcel_Style_Border::BORDER_MEDIUMDASHED, + 0x09 => PHPExcel_Style_Border::BORDER_DASHDOT, + 0x0A => PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT, + 0x0B => PHPExcel_Style_Border::BORDER_DASHDOTDOT, + 0x0C => PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT, + 0x0D => PHPExcel_Style_Border::BORDER_SLANTDASHDOT, + ); + + /** + * Map border style + * OpenOffice documentation: 2.5.11 + * + * @param int $index + * @return string + */ + public static function lookup($index) + { + if (isset(self::$map[$index])) { + return self::$map[$index]; + } + return PHPExcel_Style_Border::BORDER_NONE; + } +} \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Style/FillPattern.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Style/FillPattern.php new file mode 100644 index 0000000..c92d19a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Style/FillPattern.php @@ -0,0 +1,41 @@ +<?php + +class PHPExcel_Reader_Excel5_Style_FillPattern +{ + protected static $map = array( + 0x00 => PHPExcel_Style_Fill::FILL_NONE, + 0x01 => PHPExcel_Style_Fill::FILL_SOLID, + 0x02 => PHPExcel_Style_Fill::FILL_PATTERN_MEDIUMGRAY, + 0x03 => PHPExcel_Style_Fill::FILL_PATTERN_DARKGRAY, + 0x04 => PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRAY, + 0x05 => PHPExcel_Style_Fill::FILL_PATTERN_DARKHORIZONTAL, + 0x06 => PHPExcel_Style_Fill::FILL_PATTERN_DARKVERTICAL, + 0x07 => PHPExcel_Style_Fill::FILL_PATTERN_DARKDOWN, + 0x08 => PHPExcel_Style_Fill::FILL_PATTERN_DARKUP, + 0x09 => PHPExcel_Style_Fill::FILL_PATTERN_DARKGRID, + 0x0A => PHPExcel_Style_Fill::FILL_PATTERN_DARKTRELLIS, + 0x0B => PHPExcel_Style_Fill::FILL_PATTERN_LIGHTHORIZONTAL, + 0x0C => PHPExcel_Style_Fill::FILL_PATTERN_LIGHTVERTICAL, + 0x0D => PHPExcel_Style_Fill::FILL_PATTERN_LIGHTDOWN, + 0x0E => PHPExcel_Style_Fill::FILL_PATTERN_LIGHTUP, + 0x0F => PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRID, + 0x10 => PHPExcel_Style_Fill::FILL_PATTERN_LIGHTTRELLIS, + 0x11 => PHPExcel_Style_Fill::FILL_PATTERN_GRAY125, + 0x12 => PHPExcel_Style_Fill::FILL_PATTERN_GRAY0625, + ); + + /** + * Get fill pattern from index + * OpenOffice documentation: 2.5.12 + * + * @param int $index + * @return string + */ + public static function lookup($index) + { + if (isset(self::$map[$index])) { + return self::$map[$index]; + } + return PHPExcel_Style_Fill::FILL_NONE; + } +} \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Style/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Style/_notes/dwsync.xml new file mode 100644 index 0000000..94517dd --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/Style/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Border.php" server="62.244.88.21/deciday/" local="131919461884617742" remote="131880384600000000" Dst="1" /> +<file name="FillPattern.php" server="62.244.88.21/deciday/" local="131919461884974294" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/_notes/dwsync.xml new file mode 100644 index 0000000..62954bd --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Excel5/_notes/dwsync.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Color.php" server="62.244.88.21/deciday/" local="131919461882363248" remote="131880384600000000" Dst="1" /> +<file name="ErrorCode.php" server="62.244.88.21/deciday/" local="131919461882776530" remote="131880384600000000" Dst="1" /> +<file name="MD5.php" server="62.244.88.21/deciday/" local="131919461883671034" remote="131880384600000000" Dst="1" /> +<file name="RC4.php" server="62.244.88.21/deciday/" local="131919461883860756" remote="131880384600000000" Dst="1" /> +<file name="Escher.php" server="62.244.88.21/deciday/" local="131919461884065225" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Exception.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Exception.php new file mode 100644 index 0000000..48b3f82 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Exception.php @@ -0,0 +1,46 @@ +<?php + +/** + * PHPExcel_Reader_Exception + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Reader_Exception extends PHPExcel_Exception +{ + /** + * Error handler callback + * + * @param mixed $code + * @param mixed $string + * @param mixed $file + * @param mixed $line + * @param mixed $context + */ + public static function errorHandlerCallback($code, $string, $file, $line, $context) + { + $e = new self($string, $code); + $e->line = $line; + $e->file = $file; + throw $e; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Gnumeric.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Gnumeric.php new file mode 100644 index 0000000..913e52b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/Gnumeric.php @@ -0,0 +1,850 @@ +<?php + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_Gnumeric + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Reader_Gnumeric extends PHPExcel_Reader_Abstract implements PHPExcel_Reader_IReader +{ + /** + * Formats + * + * @var array + */ + private $styles = array(); + + /** + * Shared Expressions + * + * @var array + */ + private $expressions = array(); + + private $referenceHelper = null; + + /** + * Create a new PHPExcel_Reader_Gnumeric + */ + public function __construct() + { + $this->readFilter = new PHPExcel_Reader_DefaultReadFilter(); + $this->referenceHelper = PHPExcel_ReferenceHelper::getInstance(); + } + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFilename + * @return boolean + * @throws PHPExcel_Reader_Exception + */ + public function canRead($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Check if gzlib functions are available + if (!function_exists('gzread')) { + throw new PHPExcel_Reader_Exception("gzlib library is not enabled"); + } + + // Read signature data (first 3 bytes) + $fh = fopen($pFilename, 'r'); + $data = fread($fh, 2); + fclose($fh); + + if ($data != chr(0x1F).chr(0x8B)) { + return false; + } + + return true; + } + + /** + * Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetNames($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $xml = new XMLReader(); + $xml->xml($this->securityScanFile('compress.zlib://'.realpath($pFilename)), null, PHPExcel_Settings::getLibXmlLoaderOptions()); + $xml->setParserProperty(2, true); + + $worksheetNames = array(); + while ($xml->read()) { + if ($xml->name == 'gnm:SheetName' && $xml->nodeType == XMLReader::ELEMENT) { + $xml->read(); // Move onto the value node + $worksheetNames[] = (string) $xml->value; + } elseif ($xml->name == 'gnm:Sheets') { + // break out of the loop once we've got our sheet names rather than parse the entire file + break; + } + } + + return $worksheetNames; + } + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $xml = new XMLReader(); + $xml->xml($this->securityScanFile('compress.zlib://'.realpath($pFilename)), null, PHPExcel_Settings::getLibXmlLoaderOptions()); + $xml->setParserProperty(2, true); + + $worksheetInfo = array(); + while ($xml->read()) { + if ($xml->name == 'gnm:Sheet' && $xml->nodeType == XMLReader::ELEMENT) { + $tmpInfo = array( + 'worksheetName' => '', + 'lastColumnLetter' => 'A', + 'lastColumnIndex' => 0, + 'totalRows' => 0, + 'totalColumns' => 0, + ); + + while ($xml->read()) { + if ($xml->name == 'gnm:Name' && $xml->nodeType == XMLReader::ELEMENT) { + $xml->read(); // Move onto the value node + $tmpInfo['worksheetName'] = (string) $xml->value; + } elseif ($xml->name == 'gnm:MaxCol' && $xml->nodeType == XMLReader::ELEMENT) { + $xml->read(); // Move onto the value node + $tmpInfo['lastColumnIndex'] = (int) $xml->value; + $tmpInfo['totalColumns'] = (int) $xml->value + 1; + } elseif ($xml->name == 'gnm:MaxRow' && $xml->nodeType == XMLReader::ELEMENT) { + $xml->read(); // Move onto the value node + $tmpInfo['totalRows'] = (int) $xml->value + 1; + break; + } + } + $tmpInfo['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($tmpInfo['lastColumnIndex']); + $worksheetInfo[] = $tmpInfo; + } + } + + return $worksheetInfo; + } + + private function gzfileGetContents($filename) + { + $file = @gzopen($filename, 'rb'); + if ($file !== false) { + $data = ''; + while (!gzeof($file)) { + $data .= gzread($file, 1024); + } + gzclose($file); + } + return $data; + } + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $timezoneObj = new DateTimeZone('Europe/London'); + $GMT = new DateTimeZone('UTC'); + + $gFileData = $this->gzfileGetContents($pFilename); + +// echo '<pre>'; +// echo htmlentities($gFileData,ENT_QUOTES,'UTF-8'); +// echo '</pre><hr />'; +// + $xml = simplexml_load_string($this->securityScan($gFileData), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + $namespacesMeta = $xml->getNamespaces(true); + +// var_dump($namespacesMeta); +// + $gnmXML = $xml->children($namespacesMeta['gnm']); + + $docProps = $objPHPExcel->getProperties(); + // Document Properties are held differently, depending on the version of Gnumeric + if (isset($namespacesMeta['office'])) { + $officeXML = $xml->children($namespacesMeta['office']); + $officeDocXML = $officeXML->{'document-meta'}; + $officeDocMetaXML = $officeDocXML->meta; + + foreach ($officeDocMetaXML as $officePropertyData) { + $officePropertyDC = array(); + if (isset($namespacesMeta['dc'])) { + $officePropertyDC = $officePropertyData->children($namespacesMeta['dc']); + } + foreach ($officePropertyDC as $propertyName => $propertyValue) { + $propertyValue = (string) $propertyValue; + switch ($propertyName) { + case 'title': + $docProps->setTitle(trim($propertyValue)); + break; + case 'subject': + $docProps->setSubject(trim($propertyValue)); + break; + case 'creator': + $docProps->setCreator(trim($propertyValue)); + $docProps->setLastModifiedBy(trim($propertyValue)); + break; + case 'date': + $creationDate = strtotime(trim($propertyValue)); + $docProps->setCreated($creationDate); + $docProps->setModified($creationDate); + break; + case 'description': + $docProps->setDescription(trim($propertyValue)); + break; + } + } + $officePropertyMeta = array(); + if (isset($namespacesMeta['meta'])) { + $officePropertyMeta = $officePropertyData->children($namespacesMeta['meta']); + } + foreach ($officePropertyMeta as $propertyName => $propertyValue) { + $attributes = $propertyValue->attributes($namespacesMeta['meta']); + $propertyValue = (string) $propertyValue; + switch ($propertyName) { + case 'keyword': + $docProps->setKeywords(trim($propertyValue)); + break; + case 'initial-creator': + $docProps->setCreator(trim($propertyValue)); + $docProps->setLastModifiedBy(trim($propertyValue)); + break; + case 'creation-date': + $creationDate = strtotime(trim($propertyValue)); + $docProps->setCreated($creationDate); + $docProps->setModified($creationDate); + break; + case 'user-defined': + list(, $attrName) = explode(':', $attributes['name']); + switch ($attrName) { + case 'publisher': + $docProps->setCompany(trim($propertyValue)); + break; + case 'category': + $docProps->setCategory(trim($propertyValue)); + break; + case 'manager': + $docProps->setManager(trim($propertyValue)); + break; + } + break; + } + } + } + } elseif (isset($gnmXML->Summary)) { + foreach ($gnmXML->Summary->Item as $summaryItem) { + $propertyName = $summaryItem->name; + $propertyValue = $summaryItem->{'val-string'}; + switch ($propertyName) { + case 'title': + $docProps->setTitle(trim($propertyValue)); + break; + case 'comments': + $docProps->setDescription(trim($propertyValue)); + break; + case 'keywords': + $docProps->setKeywords(trim($propertyValue)); + break; + case 'category': + $docProps->setCategory(trim($propertyValue)); + break; + case 'manager': + $docProps->setManager(trim($propertyValue)); + break; + case 'author': + $docProps->setCreator(trim($propertyValue)); + $docProps->setLastModifiedBy(trim($propertyValue)); + break; + case 'company': + $docProps->setCompany(trim($propertyValue)); + break; + } + } + } + + $worksheetID = 0; + foreach ($gnmXML->Sheets->Sheet as $sheet) { + $worksheetName = (string) $sheet->Name; +// echo '<b>Worksheet: ', $worksheetName,'</b><br />'; + if ((isset($this->loadSheetsOnly)) && (!in_array($worksheetName, $this->loadSheetsOnly))) { + continue; + } + + $maxRow = $maxCol = 0; + + // Create new Worksheet + $objPHPExcel->createSheet(); + $objPHPExcel->setActiveSheetIndex($worksheetID); + // Use false for $updateFormulaCellReferences to prevent adjustment of worksheet references in formula + // cells... during the load, all formulae should be correct, and we're simply bringing the worksheet + // name in line with the formula, not the reverse + $objPHPExcel->getActiveSheet()->setTitle($worksheetName, false); + + if ((!$this->readDataOnly) && (isset($sheet->PrintInformation))) { + if (isset($sheet->PrintInformation->Margins)) { + foreach ($sheet->PrintInformation->Margins->children('gnm', true) as $key => $margin) { + $marginAttributes = $margin->attributes(); + $marginSize = 72 / 100; // Default + switch ($marginAttributes['PrefUnit']) { + case 'mm': + $marginSize = intval($marginAttributes['Points']) / 100; + break; + } + switch ($key) { + case 'top': + $objPHPExcel->getActiveSheet()->getPageMargins()->setTop($marginSize); + break; + case 'bottom': + $objPHPExcel->getActiveSheet()->getPageMargins()->setBottom($marginSize); + break; + case 'left': + $objPHPExcel->getActiveSheet()->getPageMargins()->setLeft($marginSize); + break; + case 'right': + $objPHPExcel->getActiveSheet()->getPageMargins()->setRight($marginSize); + break; + case 'header': + $objPHPExcel->getActiveSheet()->getPageMargins()->setHeader($marginSize); + break; + case 'footer': + $objPHPExcel->getActiveSheet()->getPageMargins()->setFooter($marginSize); + break; + } + } + } + } + + foreach ($sheet->Cells->Cell as $cell) { + $cellAttributes = $cell->attributes(); + $row = (int) $cellAttributes->Row + 1; + $column = (int) $cellAttributes->Col; + + if ($row > $maxRow) { + $maxRow = $row; + } + if ($column > $maxCol) { + $maxCol = $column; + } + + $column = PHPExcel_Cell::stringFromColumnIndex($column); + + // Read cell? + if ($this->getReadFilter() !== null) { + if (!$this->getReadFilter()->readCell($column, $row, $worksheetName)) { + continue; + } + } + + $ValueType = $cellAttributes->ValueType; + $ExprID = (string) $cellAttributes->ExprID; +// echo 'Cell ', $column, $row,'<br />'; +// echo 'Type is ', $ValueType,'<br />'; +// echo 'Value is ', $cell,'<br />'; + $type = PHPExcel_Cell_DataType::TYPE_FORMULA; + if ($ExprID > '') { + if (((string) $cell) > '') { + $this->expressions[$ExprID] = array( + 'column' => $cellAttributes->Col, + 'row' => $cellAttributes->Row, + 'formula' => (string) $cell + ); +// echo 'NEW EXPRESSION ', $ExprID,'<br />'; + } else { + $expression = $this->expressions[$ExprID]; + + $cell = $this->referenceHelper->updateFormulaReferences( + $expression['formula'], + 'A1', + $cellAttributes->Col - $expression['column'], + $cellAttributes->Row - $expression['row'], + $worksheetName + ); +// echo 'SHARED EXPRESSION ', $ExprID,'<br />'; +// echo 'New Value is ', $cell,'<br />'; + } + $type = PHPExcel_Cell_DataType::TYPE_FORMULA; + } else { + switch ($ValueType) { + case '10': // NULL + $type = PHPExcel_Cell_DataType::TYPE_NULL; + break; + case '20': // Boolean + $type = PHPExcel_Cell_DataType::TYPE_BOOL; + $cell = ($cell == 'TRUE') ? true: false; + break; + case '30': // Integer + $cell = intval($cell); + // Excel 2007+ doesn't differentiate between integer and float, so set the value and dropthru to the next (numeric) case + case '40': // Float + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + break; + case '50': // Error + $type = PHPExcel_Cell_DataType::TYPE_ERROR; + break; + case '60': // String + $type = PHPExcel_Cell_DataType::TYPE_STRING; + break; + case '70': // Cell Range + case '80': // Array + } + } + $objPHPExcel->getActiveSheet()->getCell($column.$row)->setValueExplicit($cell, $type); + } + + if ((!$this->readDataOnly) && (isset($sheet->Objects))) { + foreach ($sheet->Objects->children('gnm', true) as $key => $comment) { + $commentAttributes = $comment->attributes(); + // Only comment objects are handled at the moment + if ($commentAttributes->Text) { + $objPHPExcel->getActiveSheet()->getComment((string)$commentAttributes->ObjectBound)->setAuthor((string)$commentAttributes->Author)->setText($this->parseRichText((string)$commentAttributes->Text)); + } + } + } +// echo '$maxCol=', $maxCol,'; $maxRow=', $maxRow,'<br />'; +// + foreach ($sheet->Styles->StyleRegion as $styleRegion) { + $styleAttributes = $styleRegion->attributes(); + if (($styleAttributes['startRow'] <= $maxRow) && + ($styleAttributes['startCol'] <= $maxCol)) { + $startColumn = PHPExcel_Cell::stringFromColumnIndex((int) $styleAttributes['startCol']); + $startRow = $styleAttributes['startRow'] + 1; + + $endColumn = ($styleAttributes['endCol'] > $maxCol) ? $maxCol : (int) $styleAttributes['endCol']; + $endColumn = PHPExcel_Cell::stringFromColumnIndex($endColumn); + $endRow = ($styleAttributes['endRow'] > $maxRow) ? $maxRow : $styleAttributes['endRow']; + $endRow += 1; + $cellRange = $startColumn.$startRow.':'.$endColumn.$endRow; +// echo $cellRange,'<br />'; + + $styleAttributes = $styleRegion->Style->attributes(); +// var_dump($styleAttributes); +// echo '<br />'; + + // We still set the number format mask for date/time values, even if readDataOnly is true + if ((!$this->readDataOnly) || + (PHPExcel_Shared_Date::isDateTimeFormatCode((string) $styleAttributes['Format']))) { + $styleArray = array(); + $styleArray['numberformat']['code'] = (string) $styleAttributes['Format']; + // If readDataOnly is false, we set all formatting information + if (!$this->readDataOnly) { + switch ($styleAttributes['HAlign']) { + case '1': + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL; + break; + case '2': + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_LEFT; + break; + case '4': + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_RIGHT; + break; + case '8': + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_CENTER; + break; + case '16': + case '64': + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS; + break; + case '32': + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY; + break; + } + + switch ($styleAttributes['VAlign']) { + case '1': + $styleArray['alignment']['vertical'] = PHPExcel_Style_Alignment::VERTICAL_TOP; + break; + case '2': + $styleArray['alignment']['vertical'] = PHPExcel_Style_Alignment::VERTICAL_BOTTOM; + break; + case '4': + $styleArray['alignment']['vertical'] = PHPExcel_Style_Alignment::VERTICAL_CENTER; + break; + case '8': + $styleArray['alignment']['vertical'] = PHPExcel_Style_Alignment::VERTICAL_JUSTIFY; + break; + } + + $styleArray['alignment']['wrap'] = ($styleAttributes['WrapText'] == '1') ? true : false; + $styleArray['alignment']['shrinkToFit'] = ($styleAttributes['ShrinkToFit'] == '1') ? true : false; + $styleArray['alignment']['indent'] = (intval($styleAttributes["Indent"]) > 0) ? $styleAttributes["indent"] : 0; + + $RGB = self::parseGnumericColour($styleAttributes["Fore"]); + $styleArray['font']['color']['rgb'] = $RGB; + $RGB = self::parseGnumericColour($styleAttributes["Back"]); + $shade = $styleAttributes["Shade"]; + if (($RGB != '000000') || ($shade != '0')) { + $styleArray['fill']['color']['rgb'] = $styleArray['fill']['startcolor']['rgb'] = $RGB; + $RGB2 = self::parseGnumericColour($styleAttributes["PatternColor"]); + $styleArray['fill']['endcolor']['rgb'] = $RGB2; + switch ($shade) { + case '1': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_SOLID; + break; + case '2': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR; + break; + case '3': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_GRADIENT_PATH; + break; + case '4': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKDOWN; + break; + case '5': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKGRAY; + break; + case '6': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKGRID; + break; + case '7': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKHORIZONTAL; + break; + case '8': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKTRELLIS; + break; + case '9': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKUP; + break; + case '10': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKVERTICAL; + break; + case '11': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_GRAY0625; + break; + case '12': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_GRAY125; + break; + case '13': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTDOWN; + break; + case '14': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRAY; + break; + case '15': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRID; + break; + case '16': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTHORIZONTAL; + break; + case '17': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTTRELLIS; + break; + case '18': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTUP; + break; + case '19': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTVERTICAL; + break; + case '20': + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_MEDIUMGRAY; + break; + } + } + + $fontAttributes = $styleRegion->Style->Font->attributes(); +// var_dump($fontAttributes); +// echo '<br />'; + $styleArray['font']['name'] = (string) $styleRegion->Style->Font; + $styleArray['font']['size'] = intval($fontAttributes['Unit']); + $styleArray['font']['bold'] = ($fontAttributes['Bold'] == '1') ? true : false; + $styleArray['font']['italic'] = ($fontAttributes['Italic'] == '1') ? true : false; + $styleArray['font']['strike'] = ($fontAttributes['StrikeThrough'] == '1') ? true : false; + switch ($fontAttributes['Underline']) { + case '1': + $styleArray['font']['underline'] = PHPExcel_Style_Font::UNDERLINE_SINGLE; + break; + case '2': + $styleArray['font']['underline'] = PHPExcel_Style_Font::UNDERLINE_DOUBLE; + break; + case '3': + $styleArray['font']['underline'] = PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING; + break; + case '4': + $styleArray['font']['underline'] = PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING; + break; + default: + $styleArray['font']['underline'] = PHPExcel_Style_Font::UNDERLINE_NONE; + break; + } + switch ($fontAttributes['Script']) { + case '1': + $styleArray['font']['superScript'] = true; + break; + case '-1': + $styleArray['font']['subScript'] = true; + break; + } + + if (isset($styleRegion->Style->StyleBorder)) { + if (isset($styleRegion->Style->StyleBorder->Top)) { + $styleArray['borders']['top'] = self::parseBorderAttributes($styleRegion->Style->StyleBorder->Top->attributes()); + } + if (isset($styleRegion->Style->StyleBorder->Bottom)) { + $styleArray['borders']['bottom'] = self::parseBorderAttributes($styleRegion->Style->StyleBorder->Bottom->attributes()); + } + if (isset($styleRegion->Style->StyleBorder->Left)) { + $styleArray['borders']['left'] = self::parseBorderAttributes($styleRegion->Style->StyleBorder->Left->attributes()); + } + if (isset($styleRegion->Style->StyleBorder->Right)) { + $styleArray['borders']['right'] = self::parseBorderAttributes($styleRegion->Style->StyleBorder->Right->attributes()); + } + if ((isset($styleRegion->Style->StyleBorder->Diagonal)) && (isset($styleRegion->Style->StyleBorder->{'Rev-Diagonal'}))) { + $styleArray['borders']['diagonal'] = self::parseBorderAttributes($styleRegion->Style->StyleBorder->Diagonal->attributes()); + $styleArray['borders']['diagonaldirection'] = PHPExcel_Style_Borders::DIAGONAL_BOTH; + } elseif (isset($styleRegion->Style->StyleBorder->Diagonal)) { + $styleArray['borders']['diagonal'] = self::parseBorderAttributes($styleRegion->Style->StyleBorder->Diagonal->attributes()); + $styleArray['borders']['diagonaldirection'] = PHPExcel_Style_Borders::DIAGONAL_UP; + } elseif (isset($styleRegion->Style->StyleBorder->{'Rev-Diagonal'})) { + $styleArray['borders']['diagonal'] = self::parseBorderAttributes($styleRegion->Style->StyleBorder->{'Rev-Diagonal'}->attributes()); + $styleArray['borders']['diagonaldirection'] = PHPExcel_Style_Borders::DIAGONAL_DOWN; + } + } + if (isset($styleRegion->Style->HyperLink)) { + // TO DO + $hyperlink = $styleRegion->Style->HyperLink->attributes(); + } + } +// var_dump($styleArray); +// echo '<br />'; + $objPHPExcel->getActiveSheet()->getStyle($cellRange)->applyFromArray($styleArray); + } + } + } + + if ((!$this->readDataOnly) && (isset($sheet->Cols))) { + // Column Widths + $columnAttributes = $sheet->Cols->attributes(); + $defaultWidth = $columnAttributes['DefaultSizePts'] / 5.4; + $c = 0; + foreach ($sheet->Cols->ColInfo as $columnOverride) { + $columnAttributes = $columnOverride->attributes(); + $column = $columnAttributes['No']; + $columnWidth = $columnAttributes['Unit'] / 5.4; + $hidden = ((isset($columnAttributes['Hidden'])) && ($columnAttributes['Hidden'] == '1')) ? true : false; + $columnCount = (isset($columnAttributes['Count'])) ? $columnAttributes['Count'] : 1; + while ($c < $column) { + $objPHPExcel->getActiveSheet()->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($c))->setWidth($defaultWidth); + ++$c; + } + while (($c < ($column+$columnCount)) && ($c <= $maxCol)) { + $objPHPExcel->getActiveSheet()->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($c))->setWidth($columnWidth); + if ($hidden) { + $objPHPExcel->getActiveSheet()->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($c))->setVisible(false); + } + ++$c; + } + } + while ($c <= $maxCol) { + $objPHPExcel->getActiveSheet()->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($c))->setWidth($defaultWidth); + ++$c; + } + } + + if ((!$this->readDataOnly) && (isset($sheet->Rows))) { + // Row Heights + $rowAttributes = $sheet->Rows->attributes(); + $defaultHeight = $rowAttributes['DefaultSizePts']; + $r = 0; + + foreach ($sheet->Rows->RowInfo as $rowOverride) { + $rowAttributes = $rowOverride->attributes(); + $row = $rowAttributes['No']; + $rowHeight = $rowAttributes['Unit']; + $hidden = ((isset($rowAttributes['Hidden'])) && ($rowAttributes['Hidden'] == '1')) ? true : false; + $rowCount = (isset($rowAttributes['Count'])) ? $rowAttributes['Count'] : 1; + while ($r < $row) { + ++$r; + $objPHPExcel->getActiveSheet()->getRowDimension($r)->setRowHeight($defaultHeight); + } + while (($r < ($row+$rowCount)) && ($r < $maxRow)) { + ++$r; + $objPHPExcel->getActiveSheet()->getRowDimension($r)->setRowHeight($rowHeight); + if ($hidden) { + $objPHPExcel->getActiveSheet()->getRowDimension($r)->setVisible(false); + } + } + } + while ($r < $maxRow) { + ++$r; + $objPHPExcel->getActiveSheet()->getRowDimension($r)->setRowHeight($defaultHeight); + } + } + + // Handle Merged Cells in this worksheet + if (isset($sheet->MergedRegions)) { + foreach ($sheet->MergedRegions->Merge as $mergeCells) { + if (strpos($mergeCells, ':') !== false) { + $objPHPExcel->getActiveSheet()->mergeCells($mergeCells); + } + } + } + + $worksheetID++; + } + + // Loop through definedNames (global named ranges) + if (isset($gnmXML->Names)) { + foreach ($gnmXML->Names->Name as $namedRange) { + $name = (string) $namedRange->name; + $range = (string) $namedRange->value; + if (stripos($range, '#REF!') !== false) { + continue; + } + + $range = explode('!', $range); + $range[0] = trim($range[0], "'"); + if ($worksheet = $objPHPExcel->getSheetByName($range[0])) { + $extractedRange = str_replace('$', '', $range[1]); + $objPHPExcel->addNamedRange(new PHPExcel_NamedRange($name, $worksheet, $extractedRange)); + } + } + } + + // Return + return $objPHPExcel; + } + + private static function parseBorderAttributes($borderAttributes) + { + $styleArray = array(); + if (isset($borderAttributes["Color"])) { + $styleArray['color']['rgb'] = self::parseGnumericColour($borderAttributes["Color"]); + } + + switch ($borderAttributes["Style"]) { + case '0': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_NONE; + break; + case '1': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case '2': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_MEDIUM; + break; + case '3': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_SLANTDASHDOT; + break; + case '4': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_DASHED; + break; + case '5': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_THICK; + break; + case '6': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_DOUBLE; + break; + case '7': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_DOTTED; + break; + case '8': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_MEDIUMDASHED; + break; + case '9': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_DASHDOT; + break; + case '10': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT; + break; + case '11': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_DASHDOTDOT; + break; + case '12': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT; + break; + case '13': + $styleArray['style'] = PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT; + break; + } + return $styleArray; + } + + private function parseRichText($is = '') + { + $value = new PHPExcel_RichText(); + $value->createText($is); + + return $value; + } + + private static function parseGnumericColour($gnmColour) + { + list($gnmR, $gnmG, $gnmB) = explode(':', $gnmColour); + $gnmR = substr(str_pad($gnmR, 4, '0', STR_PAD_RIGHT), 0, 2); + $gnmG = substr(str_pad($gnmG, 4, '0', STR_PAD_RIGHT), 0, 2); + $gnmB = substr(str_pad($gnmB, 4, '0', STR_PAD_RIGHT), 0, 2); + return $gnmR . $gnmG . $gnmB; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/HTML.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/HTML.php new file mode 100644 index 0000000..ac762a4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/HTML.php @@ -0,0 +1,549 @@ +<?php + +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_HTML + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +/** PHPExcel root directory */ +class PHPExcel_Reader_HTML extends PHPExcel_Reader_Abstract implements PHPExcel_Reader_IReader +{ + + /** + * Input encoding + * + * @var string + */ + protected $inputEncoding = 'ANSI'; + + /** + * Sheet index to read + * + * @var int + */ + protected $sheetIndex = 0; + + /** + * Formats + * + * @var array + */ + protected $formats = array( + 'h1' => array( + 'font' => array( + 'bold' => true, + 'size' => 24, + ), + ), // Bold, 24pt + 'h2' => array( + 'font' => array( + 'bold' => true, + 'size' => 18, + ), + ), // Bold, 18pt + 'h3' => array( + 'font' => array( + 'bold' => true, + 'size' => 13.5, + ), + ), // Bold, 13.5pt + 'h4' => array( + 'font' => array( + 'bold' => true, + 'size' => 12, + ), + ), // Bold, 12pt + 'h5' => array( + 'font' => array( + 'bold' => true, + 'size' => 10, + ), + ), // Bold, 10pt + 'h6' => array( + 'font' => array( + 'bold' => true, + 'size' => 7.5, + ), + ), // Bold, 7.5pt + 'a' => array( + 'font' => array( + 'underline' => true, + 'color' => array( + 'argb' => PHPExcel_Style_Color::COLOR_BLUE, + ), + ), + ), // Blue underlined + 'hr' => array( + 'borders' => array( + 'bottom' => array( + 'style' => PHPExcel_Style_Border::BORDER_THIN, + 'color' => array( + PHPExcel_Style_Color::COLOR_BLACK, + ), + ), + ), + ), // Bottom border + ); + + protected $rowspan = array(); + + /** + * Create a new PHPExcel_Reader_HTML + */ + public function __construct() + { + $this->readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } + + /** + * Validate that the current file is an HTML file + * + * @return boolean + */ + protected function isValidFormat() + { + // Reading 2048 bytes should be enough to validate that the format is HTML + $data = fread($this->fileHandle, 2048); + if ((strpos($data, '<') !== false) && + (strlen($data) !== strlen(strip_tags($data)))) { + return true; + } + + return false; + } + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } + + /** + * Set input encoding + * + * @param string $pValue Input encoding + */ + public function setInputEncoding($pValue = 'ANSI') + { + $this->inputEncoding = $pValue; + + return $this; + } + + /** + * Get input encoding + * + * @return string + */ + public function getInputEncoding() + { + return $this->inputEncoding; + } + + // Data Array used for testing only, should write to PHPExcel object on completion of tests + protected $dataArray = array(); + protected $tableLevel = 0; + protected $nestedColumn = array('A'); + + protected function setTableStartColumn($column) + { + if ($this->tableLevel == 0) { + $column = 'A'; + } + ++$this->tableLevel; + $this->nestedColumn[$this->tableLevel] = $column; + + return $this->nestedColumn[$this->tableLevel]; + } + + protected function getTableStartColumn() + { + return $this->nestedColumn[$this->tableLevel]; + } + + protected function releaseTableStartColumn() + { + --$this->tableLevel; + + return array_pop($this->nestedColumn); + } + + protected function flushCell($sheet, $column, $row, &$cellContent) + { + if (is_string($cellContent)) { + // Simple String content + if (trim($cellContent) > '') { + // Only actually write it if there's content in the string +// echo 'FLUSH CELL: ' , $column , $row , ' => ' , $cellContent , '<br />'; + // Write to worksheet to be done here... + // ... we return the cell so we can mess about with styles more easily + $sheet->setCellValue($column . $row, $cellContent, true); + $this->dataArray[$row][$column] = $cellContent; + } + } else { + // We have a Rich Text run + // TODO + $this->dataArray[$row][$column] = 'RICH TEXT: ' . $cellContent; + } + $cellContent = (string) ''; + } + + protected function processDomElement(DOMNode $element, $sheet, &$row, &$column, &$cellContent, $format = null) + { + foreach ($element->childNodes as $child) { + if ($child instanceof DOMText) { + $domText = preg_replace('/\s+/u', ' ', trim($child->nodeValue)); + if (is_string($cellContent)) { + // simply append the text if the cell content is a plain text string + $cellContent .= $domText; + } else { + // but if we have a rich text run instead, we need to append it correctly + // TODO + } + } elseif ($child instanceof DOMElement) { +// echo '<b>DOM ELEMENT: </b>' , strtoupper($child->nodeName) , '<br />'; + + $attributeArray = array(); + foreach ($child->attributes as $attribute) { +// echo '<b>ATTRIBUTE: </b>' , $attribute->name , ' => ' , $attribute->value , '<br />'; + $attributeArray[$attribute->name] = $attribute->value; + } + + switch ($child->nodeName) { + case 'meta': + foreach ($attributeArray as $attributeName => $attributeValue) { + switch ($attributeName) { + case 'content': + // TODO + // Extract character set, so we can convert to UTF-8 if required + break; + } + } + $this->processDomElement($child, $sheet, $row, $column, $cellContent); + break; + case 'title': + $this->processDomElement($child, $sheet, $row, $column, $cellContent); + $sheet->setTitle($cellContent); + $cellContent = ''; + break; + case 'span': + case 'div': + case 'font': + case 'i': + case 'em': + case 'strong': + case 'b': +// echo 'STYLING, SPAN OR DIV<br />'; + if ($cellContent > '') { + $cellContent .= ' '; + } + $this->processDomElement($child, $sheet, $row, $column, $cellContent); + if ($cellContent > '') { + $cellContent .= ' '; + } +// echo 'END OF STYLING, SPAN OR DIV<br />'; + break; + case 'hr': + $this->flushCell($sheet, $column, $row, $cellContent); + ++$row; + if (isset($this->formats[$child->nodeName])) { + $sheet->getStyle($column . $row)->applyFromArray($this->formats[$child->nodeName]); + } else { + $cellContent = '----------'; + $this->flushCell($sheet, $column, $row, $cellContent); + } + ++$row; + // Add a break after a horizontal rule, simply by allowing the code to dropthru + case 'br': + if ($this->tableLevel > 0) { + // If we're inside a table, replace with a \n + $cellContent .= "\n"; + } else { + // Otherwise flush our existing content and move the row cursor on + $this->flushCell($sheet, $column, $row, $cellContent); + ++$row; + } +// echo 'HARD LINE BREAK: ' , '<br />'; + break; + case 'a': +// echo 'START OF HYPERLINK: ' , '<br />'; + foreach ($attributeArray as $attributeName => $attributeValue) { + switch ($attributeName) { + case 'href': +// echo 'Link to ' , $attributeValue , '<br />'; + $sheet->getCell($column . $row)->getHyperlink()->setUrl($attributeValue); + if (isset($this->formats[$child->nodeName])) { + $sheet->getStyle($column . $row)->applyFromArray($this->formats[$child->nodeName]); + } + break; + } + } + $cellContent .= ' '; + $this->processDomElement($child, $sheet, $row, $column, $cellContent); +// echo 'END OF HYPERLINK:' , '<br />'; + break; + case 'h1': + case 'h2': + case 'h3': + case 'h4': + case 'h5': + case 'h6': + case 'ol': + case 'ul': + case 'p': + if ($this->tableLevel > 0) { + // If we're inside a table, replace with a \n + $cellContent .= "\n"; +// echo 'LIST ENTRY: ' , '<br />'; + $this->processDomElement($child, $sheet, $row, $column, $cellContent); +// echo 'END OF LIST ENTRY:' , '<br />'; + } else { + if ($cellContent > '') { + $this->flushCell($sheet, $column, $row, $cellContent); + $row++; + } +// echo 'START OF PARAGRAPH: ' , '<br />'; + $this->processDomElement($child, $sheet, $row, $column, $cellContent); +// echo 'END OF PARAGRAPH:' , '<br />'; + $this->flushCell($sheet, $column, $row, $cellContent); + + if (isset($this->formats[$child->nodeName])) { + $sheet->getStyle($column . $row)->applyFromArray($this->formats[$child->nodeName]); + } + + $row++; + $column = 'A'; + } + break; + case 'li': + if ($this->tableLevel > 0) { + // If we're inside a table, replace with a \n + $cellContent .= "\n"; +// echo 'LIST ENTRY: ' , '<br />'; + $this->processDomElement($child, $sheet, $row, $column, $cellContent); +// echo 'END OF LIST ENTRY:' , '<br />'; + } else { + if ($cellContent > '') { + $this->flushCell($sheet, $column, $row, $cellContent); + } + ++$row; +// echo 'LIST ENTRY: ' , '<br />'; + $this->processDomElement($child, $sheet, $row, $column, $cellContent); +// echo 'END OF LIST ENTRY:' , '<br />'; + $this->flushCell($sheet, $column, $row, $cellContent); + $column = 'A'; + } + break; + case 'table': + $this->flushCell($sheet, $column, $row, $cellContent); + $column = $this->setTableStartColumn($column); +// echo 'START OF TABLE LEVEL ' , $this->tableLevel , '<br />'; + if ($this->tableLevel > 1) { + --$row; + } + $this->processDomElement($child, $sheet, $row, $column, $cellContent); +// echo 'END OF TABLE LEVEL ' , $this->tableLevel , '<br />'; + $column = $this->releaseTableStartColumn(); + if ($this->tableLevel > 1) { + ++$column; + } else { + ++$row; + } + break; + case 'thead': + case 'tbody': + $this->processDomElement($child, $sheet, $row, $column, $cellContent); + break; + case 'tr': + $column = $this->getTableStartColumn(); + $cellContent = ''; +// echo 'START OF TABLE ' , $this->tableLevel , ' ROW<br />'; + $this->processDomElement($child, $sheet, $row, $column, $cellContent); + ++$row; +// echo 'END OF TABLE ' , $this->tableLevel , ' ROW<br />'; + break; + case 'th': + case 'td': +// echo 'START OF TABLE ' , $this->tableLevel , ' CELL<br />'; + $this->processDomElement($child, $sheet, $row, $column, $cellContent); +// echo 'END OF TABLE ' , $this->tableLevel , ' CELL<br />'; + + while (isset($this->rowspan[$column . $row])) { + ++$column; + } + + $this->flushCell($sheet, $column, $row, $cellContent); + +// if (isset($attributeArray['style']) && !empty($attributeArray['style'])) { +// $styleAry = $this->getPhpExcelStyleArray($attributeArray['style']); +// +// if (!empty($styleAry)) { +// $sheet->getStyle($column . $row)->applyFromArray($styleAry); +// } +// } + + if (isset($attributeArray['rowspan']) && isset($attributeArray['colspan'])) { + //create merging rowspan and colspan + $columnTo = $column; + for ($i = 0; $i < $attributeArray['colspan'] - 1; $i++) { + ++$columnTo; + } + $range = $column . $row . ':' . $columnTo . ($row + $attributeArray['rowspan'] - 1); + foreach (\PHPExcel_Cell::extractAllCellReferencesInRange($range) as $value) { + $this->rowspan[$value] = true; + } + $sheet->mergeCells($range); + $column = $columnTo; + } elseif (isset($attributeArray['rowspan'])) { + //create merging rowspan + $range = $column . $row . ':' . $column . ($row + $attributeArray['rowspan'] - 1); + foreach (\PHPExcel_Cell::extractAllCellReferencesInRange($range) as $value) { + $this->rowspan[$value] = true; + } + $sheet->mergeCells($range); + } elseif (isset($attributeArray['colspan'])) { + //create merging colspan + $columnTo = $column; + for ($i = 0; $i < $attributeArray['colspan'] - 1; $i++) { + ++$columnTo; + } + $sheet->mergeCells($column . $row . ':' . $columnTo . $row); + $column = $columnTo; + } + ++$column; + break; + case 'body': + $row = 1; + $column = 'A'; + $content = ''; + $this->tableLevel = 0; + $this->processDomElement($child, $sheet, $row, $column, $cellContent); + break; + default: + $this->processDomElement($child, $sheet, $row, $column, $cellContent); + } + } + } + } + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + // Open file to validate + $this->openFile($pFilename); + if (!$this->isValidFormat()) { + fclose($this->fileHandle); + throw new PHPExcel_Reader_Exception($pFilename . " is an Invalid HTML file."); + } + // Close after validating + fclose($this->fileHandle); + + // Create new PHPExcel + while ($objPHPExcel->getSheetCount() <= $this->sheetIndex) { + $objPHPExcel->createSheet(); + } + $objPHPExcel->setActiveSheetIndex($this->sheetIndex); + + // Create a new DOM object + $dom = new domDocument; + // Reload the HTML file into the DOM object + $loaded = $dom->loadHTML(mb_convert_encoding($this->securityScanFile($pFilename), 'HTML-ENTITIES', 'UTF-8')); + if ($loaded === false) { + throw new PHPExcel_Reader_Exception('Failed to load ' . $pFilename . ' as a DOM Document'); + } + + // Discard white space + $dom->preserveWhiteSpace = false; + + $row = 0; + $column = 'A'; + $content = ''; + $this->processDomElement($dom, $objPHPExcel->getActiveSheet(), $row, $column, $content); + + // Return + return $objPHPExcel; + } + + /** + * Get sheet index + * + * @return int + */ + public function getSheetIndex() + { + return $this->sheetIndex; + } + + /** + * Set sheet index + * + * @param int $pValue Sheet index + * @return PHPExcel_Reader_HTML + */ + public function setSheetIndex($pValue = 0) + { + $this->sheetIndex = $pValue; + + return $this; + } + + /** + * Scan theXML for use of <!ENTITY to prevent XXE/XEE attacks + * + * @param string $xml + * @throws PHPExcel_Reader_Exception + */ + public function securityScan($xml) + { + $pattern = '/\\0?' . implode('\\0?', str_split('<!ENTITY')) . '\\0?/'; + if (preg_match($pattern, $xml)) { + throw new PHPExcel_Reader_Exception('Detected use of ENTITY in XML, spreadsheet file load() aborted to prevent XXE/XEE attacks'); + } + return $xml; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/IReadFilter.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/IReadFilter.php new file mode 100644 index 0000000..f7c852d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/IReadFilter.php @@ -0,0 +1,39 @@ +<?php + +/** + * PHPExcel_Reader_IReadFilter + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +interface PHPExcel_Reader_IReadFilter +{ + /** + * Should this cell be read? + * + * @param $column Column address (as a string value like "A", or "IV") + * @param $row Row number + * @param $worksheetName Optional worksheet name + * @return boolean + */ + public function readCell($column, $row, $worksheetName = ''); +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/IReader.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/IReader.php new file mode 100644 index 0000000..9034546 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/IReader.php @@ -0,0 +1,46 @@ +<?php + +/** + * PHPExcel_Reader_IReader + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +interface PHPExcel_Reader_IReader +{ + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFilename + * @return boolean + */ + public function canRead($pFilename); + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function load($pFilename); +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/OOCalc.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/OOCalc.php new file mode 100644 index 0000000..a889d95 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/OOCalc.php @@ -0,0 +1,696 @@ +<?php + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_OOCalc + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Reader_OOCalc extends PHPExcel_Reader_Abstract implements PHPExcel_Reader_IReader +{ + /** + * Formats + * + * @var array + */ + private $styles = array(); + + /** + * Create a new PHPExcel_Reader_OOCalc + */ + public function __construct() + { + $this->readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFilename + * @return boolean + * @throws PHPExcel_Reader_Exception + */ + public function canRead($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $zipClass = PHPExcel_Settings::getZipClass(); + + // Check if zip class exists +// if (!class_exists($zipClass, false)) { +// throw new PHPExcel_Reader_Exception($zipClass . " library is not enabled"); +// } + + $mimeType = 'UNKNOWN'; + // Load file + $zip = new $zipClass; + if ($zip->open($pFilename) === true) { + // check if it is an OOXML archive + $stat = $zip->statName('mimetype'); + if ($stat && ($stat['size'] <= 255)) { + $mimeType = $zip->getFromName($stat['name']); + } elseif ($stat = $zip->statName('META-INF/manifest.xml')) { + $xml = simplexml_load_string($this->securityScan($zip->getFromName('META-INF/manifest.xml')), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + $namespacesContent = $xml->getNamespaces(true); + if (isset($namespacesContent['manifest'])) { + $manifest = $xml->children($namespacesContent['manifest']); + foreach ($manifest as $manifestDataSet) { + $manifestAttributes = $manifestDataSet->attributes($namespacesContent['manifest']); + if ($manifestAttributes->{'full-path'} == '/') { + $mimeType = (string) $manifestAttributes->{'media-type'}; + break; + } + } + } + } + + $zip->close(); + + return ($mimeType === 'application/vnd.oasis.opendocument.spreadsheet'); + } + + return false; + } + + + /** + * Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetNames($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $zipClass = PHPExcel_Settings::getZipClass(); + + $zip = new $zipClass; + if (!$zip->open($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! Error opening file."); + } + + $worksheetNames = array(); + + $xml = new XMLReader(); + $res = $xml->xml($this->securityScanFile('zip://'.realpath($pFilename).'#content.xml'), null, PHPExcel_Settings::getLibXmlLoaderOptions()); + $xml->setParserProperty(2, true); + + // Step into the first level of content of the XML + $xml->read(); + while ($xml->read()) { + // Quickly jump through to the office:body node + while ($xml->name !== 'office:body') { + if ($xml->isEmptyElement) { + $xml->read(); + } else { + $xml->next(); + } + } + // Now read each node until we find our first table:table node + while ($xml->read()) { + if ($xml->name == 'table:table' && $xml->nodeType == XMLReader::ELEMENT) { + // Loop through each table:table node reading the table:name attribute for each worksheet name + do { + $worksheetNames[] = $xml->getAttribute('table:name'); + $xml->next(); + } while ($xml->name == 'table:table' && $xml->nodeType == XMLReader::ELEMENT); + } + } + } + + return $worksheetNames; + } + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetInfo = array(); + + $zipClass = PHPExcel_Settings::getZipClass(); + + $zip = new $zipClass; + if (!$zip->open($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! Error opening file."); + } + + $xml = new XMLReader(); + $res = $xml->xml($this->securityScanFile('zip://'.realpath($pFilename).'#content.xml'), null, PHPExcel_Settings::getLibXmlLoaderOptions()); + $xml->setParserProperty(2, true); + + // Step into the first level of content of the XML + $xml->read(); + while ($xml->read()) { + // Quickly jump through to the office:body node + while ($xml->name !== 'office:body') { + if ($xml->isEmptyElement) { + $xml->read(); + } else { + $xml->next(); + } + } + // Now read each node until we find our first table:table node + while ($xml->read()) { + if ($xml->name == 'table:table' && $xml->nodeType == XMLReader::ELEMENT) { + $worksheetNames[] = $xml->getAttribute('table:name'); + + $tmpInfo = array( + 'worksheetName' => $xml->getAttribute('table:name'), + 'lastColumnLetter' => 'A', + 'lastColumnIndex' => 0, + 'totalRows' => 0, + 'totalColumns' => 0, + ); + + // Loop through each child node of the table:table element reading + $currCells = 0; + do { + $xml->read(); + if ($xml->name == 'table:table-row' && $xml->nodeType == XMLReader::ELEMENT) { + $rowspan = $xml->getAttribute('table:number-rows-repeated'); + $rowspan = empty($rowspan) ? 1 : $rowspan; + $tmpInfo['totalRows'] += $rowspan; + $tmpInfo['totalColumns'] = max($tmpInfo['totalColumns'], $currCells); + $currCells = 0; + // Step into the row + $xml->read(); + do { + if ($xml->name == 'table:table-cell' && $xml->nodeType == XMLReader::ELEMENT) { + if (!$xml->isEmptyElement) { + $currCells++; + $xml->next(); + } else { + $xml->read(); + } + } elseif ($xml->name == 'table:covered-table-cell' && $xml->nodeType == XMLReader::ELEMENT) { + $mergeSize = $xml->getAttribute('table:number-columns-repeated'); + $currCells += $mergeSize; + $xml->read(); + } + } while ($xml->name != 'table:table-row'); + } + } while ($xml->name != 'table:table'); + + $tmpInfo['totalColumns'] = max($tmpInfo['totalColumns'], $currCells); + $tmpInfo['lastColumnIndex'] = $tmpInfo['totalColumns'] - 1; + $tmpInfo['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($tmpInfo['lastColumnIndex']); + $worksheetInfo[] = $tmpInfo; + } + } + +// foreach ($workbookData->table as $worksheetDataSet) { +// $worksheetData = $worksheetDataSet->children($namespacesContent['table']); +// $worksheetDataAttributes = $worksheetDataSet->attributes($namespacesContent['table']); +// +// $rowIndex = 0; +// foreach ($worksheetData as $key => $rowData) { +// switch ($key) { +// case 'table-row' : +// $rowDataTableAttributes = $rowData->attributes($namespacesContent['table']); +// $rowRepeats = (isset($rowDataTableAttributes['number-rows-repeated'])) ? +// $rowDataTableAttributes['number-rows-repeated'] : 1; +// $columnIndex = 0; +// +// foreach ($rowData as $key => $cellData) { +// $cellDataTableAttributes = $cellData->attributes($namespacesContent['table']); +// $colRepeats = (isset($cellDataTableAttributes['number-columns-repeated'])) ? +// $cellDataTableAttributes['number-columns-repeated'] : 1; +// $cellDataOfficeAttributes = $cellData->attributes($namespacesContent['office']); +// if (isset($cellDataOfficeAttributes['value-type'])) { +// $tmpInfo['lastColumnIndex'] = max($tmpInfo['lastColumnIndex'], $columnIndex + $colRepeats - 1); +// $tmpInfo['totalRows'] = max($tmpInfo['totalRows'], $rowIndex + $rowRepeats); +// } +// $columnIndex += $colRepeats; +// } +// $rowIndex += $rowRepeats; +// break; +// } +// } +// +// $tmpInfo['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($tmpInfo['lastColumnIndex']); +// $tmpInfo['totalColumns'] = $tmpInfo['lastColumnIndex'] + 1; +// +// } +// } + } + + return $worksheetInfo; + } + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } + + private static function identifyFixedStyleValue($styleList, &$styleAttributeValue) + { + $styleAttributeValue = strtolower($styleAttributeValue); + foreach ($styleList as $style) { + if ($styleAttributeValue == strtolower($style)) { + $styleAttributeValue = $style; + return true; + } + } + return false; + } + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $timezoneObj = new DateTimeZone('Europe/London'); + $GMT = new DateTimeZone('UTC'); + + $zipClass = PHPExcel_Settings::getZipClass(); + + $zip = new $zipClass; + if (!$zip->open($pFilename)) { + throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! Error opening file."); + } + +// echo '<h1>Meta Information</h1>'; + $xml = simplexml_load_string($this->securityScan($zip->getFromName("meta.xml")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + $namespacesMeta = $xml->getNamespaces(true); +// echo '<pre>'; +// print_r($namespacesMeta); +// echo '</pre><hr />'; + + $docProps = $objPHPExcel->getProperties(); + $officeProperty = $xml->children($namespacesMeta['office']); + foreach ($officeProperty as $officePropertyData) { + $officePropertyDC = array(); + if (isset($namespacesMeta['dc'])) { + $officePropertyDC = $officePropertyData->children($namespacesMeta['dc']); + } + foreach ($officePropertyDC as $propertyName => $propertyValue) { + $propertyValue = (string) $propertyValue; + switch ($propertyName) { + case 'title': + $docProps->setTitle($propertyValue); + break; + case 'subject': + $docProps->setSubject($propertyValue); + break; + case 'creator': + $docProps->setCreator($propertyValue); + $docProps->setLastModifiedBy($propertyValue); + break; + case 'date': + $creationDate = strtotime($propertyValue); + $docProps->setCreated($creationDate); + $docProps->setModified($creationDate); + break; + case 'description': + $docProps->setDescription($propertyValue); + break; + } + } + $officePropertyMeta = array(); + if (isset($namespacesMeta['dc'])) { + $officePropertyMeta = $officePropertyData->children($namespacesMeta['meta']); + } + foreach ($officePropertyMeta as $propertyName => $propertyValue) { + $propertyValueAttributes = $propertyValue->attributes($namespacesMeta['meta']); + $propertyValue = (string) $propertyValue; + switch ($propertyName) { + case 'initial-creator': + $docProps->setCreator($propertyValue); + break; + case 'keyword': + $docProps->setKeywords($propertyValue); + break; + case 'creation-date': + $creationDate = strtotime($propertyValue); + $docProps->setCreated($creationDate); + break; + case 'user-defined': + $propertyValueType = PHPExcel_DocumentProperties::PROPERTY_TYPE_STRING; + foreach ($propertyValueAttributes as $key => $value) { + if ($key == 'name') { + $propertyValueName = (string) $value; + } elseif ($key == 'value-type') { + switch ($value) { + case 'date': + $propertyValue = PHPExcel_DocumentProperties::convertProperty($propertyValue, 'date'); + $propertyValueType = PHPExcel_DocumentProperties::PROPERTY_TYPE_DATE; + break; + case 'boolean': + $propertyValue = PHPExcel_DocumentProperties::convertProperty($propertyValue, 'bool'); + $propertyValueType = PHPExcel_DocumentProperties::PROPERTY_TYPE_BOOLEAN; + break; + case 'float': + $propertyValue = PHPExcel_DocumentProperties::convertProperty($propertyValue, 'r4'); + $propertyValueType = PHPExcel_DocumentProperties::PROPERTY_TYPE_FLOAT; + break; + default: + $propertyValueType = PHPExcel_DocumentProperties::PROPERTY_TYPE_STRING; + } + } + } + $docProps->setCustomProperty($propertyValueName, $propertyValue, $propertyValueType); + break; + } + } + } + + +// echo '<h1>Workbook Content</h1>'; + $xml = simplexml_load_string($this->securityScan($zip->getFromName("content.xml")), 'SimpleXMLElement', PHPExcel_Settings::getLibXmlLoaderOptions()); + $namespacesContent = $xml->getNamespaces(true); +// echo '<pre>'; +// print_r($namespacesContent); +// echo '</pre><hr />'; + + $workbook = $xml->children($namespacesContent['office']); + foreach ($workbook->body->spreadsheet as $workbookData) { + $workbookData = $workbookData->children($namespacesContent['table']); + $worksheetID = 0; + foreach ($workbookData->table as $worksheetDataSet) { + $worksheetData = $worksheetDataSet->children($namespacesContent['table']); +// print_r($worksheetData); +// echo '<br />'; + $worksheetDataAttributes = $worksheetDataSet->attributes($namespacesContent['table']); +// print_r($worksheetDataAttributes); +// echo '<br />'; + if ((isset($this->loadSheetsOnly)) && (isset($worksheetDataAttributes['name'])) && + (!in_array($worksheetDataAttributes['name'], $this->loadSheetsOnly))) { + continue; + } + +// echo '<h2>Worksheet '.$worksheetDataAttributes['name'].'</h2>'; + // Create new Worksheet + $objPHPExcel->createSheet(); + $objPHPExcel->setActiveSheetIndex($worksheetID); + if (isset($worksheetDataAttributes['name'])) { + $worksheetName = (string) $worksheetDataAttributes['name']; + // Use false for $updateFormulaCellReferences to prevent adjustment of worksheet references in + // formula cells... during the load, all formulae should be correct, and we're simply + // bringing the worksheet name in line with the formula, not the reverse + $objPHPExcel->getActiveSheet()->setTitle($worksheetName, false); + } + + $rowID = 1; + foreach ($worksheetData as $key => $rowData) { +// echo '<b>'.$key.'</b><br />'; + switch ($key) { + case 'table-header-rows': + foreach ($rowData as $key => $cellData) { + $rowData = $cellData; + break; + } + case 'table-row': + $rowDataTableAttributes = $rowData->attributes($namespacesContent['table']); + $rowRepeats = (isset($rowDataTableAttributes['number-rows-repeated'])) ? $rowDataTableAttributes['number-rows-repeated'] : 1; + $columnID = 'A'; + foreach ($rowData as $key => $cellData) { + if ($this->getReadFilter() !== null) { + if (!$this->getReadFilter()->readCell($columnID, $rowID, $worksheetName)) { + continue; + } + } + +// echo '<b>'.$columnID.$rowID.'</b><br />'; + $cellDataText = (isset($namespacesContent['text'])) ? $cellData->children($namespacesContent['text']) : ''; + $cellDataOffice = $cellData->children($namespacesContent['office']); + $cellDataOfficeAttributes = $cellData->attributes($namespacesContent['office']); + $cellDataTableAttributes = $cellData->attributes($namespacesContent['table']); + +// echo 'Office Attributes: '; +// print_r($cellDataOfficeAttributes); +// echo '<br />Table Attributes: '; +// print_r($cellDataTableAttributes); +// echo '<br />Cell Data Text'; +// print_r($cellDataText); +// echo '<br />'; +// + $type = $formatting = $hyperlink = null; + $hasCalculatedValue = false; + $cellDataFormula = ''; + if (isset($cellDataTableAttributes['formula'])) { + $cellDataFormula = $cellDataTableAttributes['formula']; + $hasCalculatedValue = true; + } + + if (isset($cellDataOffice->annotation)) { +// echo 'Cell has comment<br />'; + $annotationText = $cellDataOffice->annotation->children($namespacesContent['text']); + $textArray = array(); + foreach ($annotationText as $t) { + if (isset($t->span)) { + foreach ($t->span as $text) { + $textArray[] = (string)$text; + } + } else { + $textArray[] = (string) $t; + } + } + $text = implode("\n", $textArray); +// echo $text, '<br />'; + $objPHPExcel->getActiveSheet()->getComment($columnID.$rowID)->setText($this->parseRichText($text)); +// ->setAuthor( $author ) + } + + if (isset($cellDataText->p)) { + // Consolidate if there are multiple p records (maybe with spans as well) + $dataArray = array(); + // Text can have multiple text:p and within those, multiple text:span. + // text:p newlines, but text:span does not. + // Also, here we assume there is no text data is span fields are specified, since + // we have no way of knowing proper positioning anyway. + foreach ($cellDataText->p as $pData) { + if (isset($pData->span)) { + // span sections do not newline, so we just create one large string here + $spanSection = ""; + foreach ($pData->span as $spanData) { + $spanSection .= $spanData; + } + array_push($dataArray, $spanSection); + } else { + array_push($dataArray, $pData); + } + } + $allCellDataText = implode($dataArray, "\n"); + +// echo 'Value Type is '.$cellDataOfficeAttributes['value-type'].'<br />'; + switch ($cellDataOfficeAttributes['value-type']) { + case 'string': + $type = PHPExcel_Cell_DataType::TYPE_STRING; + $dataValue = $allCellDataText; + if (isset($dataValue->a)) { + $dataValue = $dataValue->a; + $cellXLinkAttributes = $dataValue->attributes($namespacesContent['xlink']); + $hyperlink = $cellXLinkAttributes['href']; + } + break; + case 'boolean': + $type = PHPExcel_Cell_DataType::TYPE_BOOL; + $dataValue = ($allCellDataText == 'TRUE') ? true : false; + break; + case 'percentage': + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $dataValue = (float) $cellDataOfficeAttributes['value']; + if (floor($dataValue) == $dataValue) { + $dataValue = (integer) $dataValue; + } + $formatting = PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE_00; + break; + case 'currency': + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $dataValue = (float) $cellDataOfficeAttributes['value']; + if (floor($dataValue) == $dataValue) { + $dataValue = (integer) $dataValue; + } + $formatting = PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE; + break; + case 'float': + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $dataValue = (float) $cellDataOfficeAttributes['value']; + if (floor($dataValue) == $dataValue) { + if ($dataValue == (integer) $dataValue) { + $dataValue = (integer) $dataValue; + } else { + $dataValue = (float) $dataValue; + } + } + break; + case 'date': + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $dateObj = new DateTime($cellDataOfficeAttributes['date-value'], $GMT); + $dateObj->setTimeZone($timezoneObj); + list($year, $month, $day, $hour, $minute, $second) = explode(' ', $dateObj->format('Y m d H i s')); + $dataValue = PHPExcel_Shared_Date::FormattedPHPToExcel($year, $month, $day, $hour, $minute, $second); + if ($dataValue != floor($dataValue)) { + $formatting = PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15.' '.PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4; + } else { + $formatting = PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15; + } + break; + case 'time': + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $dataValue = PHPExcel_Shared_Date::PHPToExcel(strtotime('01-01-1970 '.implode(':', sscanf($cellDataOfficeAttributes['time-value'], 'PT%dH%dM%dS')))); + $formatting = PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4; + break; + } +// echo 'Data value is '.$dataValue.'<br />'; +// if ($hyperlink !== null) { +// echo 'Hyperlink is '.$hyperlink.'<br />'; +// } + } else { + $type = PHPExcel_Cell_DataType::TYPE_NULL; + $dataValue = null; + } + + if ($hasCalculatedValue) { + $type = PHPExcel_Cell_DataType::TYPE_FORMULA; +// echo 'Formula: ', $cellDataFormula, PHP_EOL; + $cellDataFormula = substr($cellDataFormula, strpos($cellDataFormula, ':=')+1); + $temp = explode('"', $cellDataFormula); + $tKey = false; + foreach ($temp as &$value) { + // Only replace in alternate array entries (i.e. non-quoted blocks) + if ($tKey = !$tKey) { + $value = preg_replace('/\[([^\.]+)\.([^\.]+):\.([^\.]+)\]/Ui', '$1!$2:$3', $value); // Cell range reference in another sheet + $value = preg_replace('/\[([^\.]+)\.([^\.]+)\]/Ui', '$1!$2', $value); // Cell reference in another sheet + $value = preg_replace('/\[\.([^\.]+):\.([^\.]+)\]/Ui', '$1:$2', $value); // Cell range reference + $value = preg_replace('/\[\.([^\.]+)\]/Ui', '$1', $value); // Simple cell reference + $value = PHPExcel_Calculation::translateSeparator(';', ',', $value, $inBraces); + } + } + unset($value); + // Then rebuild the formula string + $cellDataFormula = implode('"', $temp); +// echo 'Adjusted Formula: ', $cellDataFormula, PHP_EOL; + } + + $colRepeats = (isset($cellDataTableAttributes['number-columns-repeated'])) ? $cellDataTableAttributes['number-columns-repeated'] : 1; + if ($type !== null) { + for ($i = 0; $i < $colRepeats; ++$i) { + if ($i > 0) { + ++$columnID; + } + if ($type !== PHPExcel_Cell_DataType::TYPE_NULL) { + for ($rowAdjust = 0; $rowAdjust < $rowRepeats; ++$rowAdjust) { + $rID = $rowID + $rowAdjust; + $objPHPExcel->getActiveSheet()->getCell($columnID.$rID)->setValueExplicit((($hasCalculatedValue) ? $cellDataFormula : $dataValue), $type); + if ($hasCalculatedValue) { +// echo 'Forumla result is '.$dataValue.'<br />'; + $objPHPExcel->getActiveSheet()->getCell($columnID.$rID)->setCalculatedValue($dataValue); + } + if ($formatting !== null) { + $objPHPExcel->getActiveSheet()->getStyle($columnID.$rID)->getNumberFormat()->setFormatCode($formatting); + } else { + $objPHPExcel->getActiveSheet()->getStyle($columnID.$rID)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_GENERAL); + } + if ($hyperlink !== null) { + $objPHPExcel->getActiveSheet()->getCell($columnID.$rID)->getHyperlink()->setUrl($hyperlink); + } + } + } + } + } + + // Merged cells + if ((isset($cellDataTableAttributes['number-columns-spanned'])) || (isset($cellDataTableAttributes['number-rows-spanned']))) { + if (($type !== PHPExcel_Cell_DataType::TYPE_NULL) || (!$this->readDataOnly)) { + $columnTo = $columnID; + if (isset($cellDataTableAttributes['number-columns-spanned'])) { + $columnTo = PHPExcel_Cell::stringFromColumnIndex(PHPExcel_Cell::columnIndexFromString($columnID) + $cellDataTableAttributes['number-columns-spanned'] -2); + } + $rowTo = $rowID; + if (isset($cellDataTableAttributes['number-rows-spanned'])) { + $rowTo = $rowTo + $cellDataTableAttributes['number-rows-spanned'] - 1; + } + $cellRange = $columnID.$rowID.':'.$columnTo.$rowTo; + $objPHPExcel->getActiveSheet()->mergeCells($cellRange); + } + } + + ++$columnID; + } + $rowID += $rowRepeats; + break; + } + } + ++$worksheetID; + } + } + + // Return + return $objPHPExcel; + } + + private function parseRichText($is = '') + { + $value = new PHPExcel_RichText(); + + $value->createText($is); + + return $value; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/SYLK.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/SYLK.php new file mode 100644 index 0000000..eb7ef1a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/SYLK.php @@ -0,0 +1,478 @@ +<?php + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_SYLK + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Reader_SYLK extends PHPExcel_Reader_Abstract implements PHPExcel_Reader_IReader +{ + /** + * Input encoding + * + * @var string + */ + private $inputEncoding = 'ANSI'; + + /** + * Sheet index to read + * + * @var int + */ + private $sheetIndex = 0; + + /** + * Formats + * + * @var array + */ + private $formats = array(); + + /** + * Format Count + * + * @var int + */ + private $format = 0; + + /** + * Create a new PHPExcel_Reader_SYLK + */ + public function __construct() + { + $this->readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } + + /** + * Validate that the current file is a SYLK file + * + * @return boolean + */ + protected function isValidFormat() + { + // Read sample data (first 2 KB will do) + $data = fread($this->fileHandle, 2048); + + // Count delimiters in file + $delimiterCount = substr_count($data, ';'); + if ($delimiterCount < 1) { + return false; + } + + // Analyze first line looking for ID; signature + $lines = explode("\n", $data); + if (substr($lines[0], 0, 4) != 'ID;P') { + return false; + } + + return true; + } + + /** + * Set input encoding + * + * @param string $pValue Input encoding + */ + public function setInputEncoding($pValue = 'ANSI') + { + $this->inputEncoding = $pValue; + return $this; + } + + /** + * Get input encoding + * + * @return string + */ + public function getInputEncoding() + { + return $this->inputEncoding; + } + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws PHPExcel_Reader_Exception + */ + public function listWorksheetInfo($pFilename) + { + // Open file + $this->openFile($pFilename); + if (!$this->isValidFormat()) { + fclose($this->fileHandle); + throw new PHPExcel_Reader_Exception($pFilename . " is an Invalid Spreadsheet file."); + } + $fileHandle = $this->fileHandle; + rewind($fileHandle); + + $worksheetInfo = array(); + $worksheetInfo[0]['worksheetName'] = 'Worksheet'; + $worksheetInfo[0]['lastColumnLetter'] = 'A'; + $worksheetInfo[0]['lastColumnIndex'] = 0; + $worksheetInfo[0]['totalRows'] = 0; + $worksheetInfo[0]['totalColumns'] = 0; + + // Loop through file + $rowData = array(); + + // loop through one row (line) at a time in the file + $rowIndex = 0; + while (($rowData = fgets($fileHandle)) !== false) { + $columnIndex = 0; + + // convert SYLK encoded $rowData to UTF-8 + $rowData = PHPExcel_Shared_String::SYLKtoUTF8($rowData); + + // explode each row at semicolons while taking into account that literal semicolon (;) + // is escaped like this (;;) + $rowData = explode("\t", str_replace('¤', ';', str_replace(';', "\t", str_replace(';;', '¤', rtrim($rowData))))); + + $dataType = array_shift($rowData); + if ($dataType == 'C') { + // Read cell value data + foreach ($rowData as $rowDatum) { + switch ($rowDatum{0}) { + case 'C': + case 'X': + $columnIndex = substr($rowDatum, 1) - 1; + break; + case 'R': + case 'Y': + $rowIndex = substr($rowDatum, 1); + break; + } + + $worksheetInfo[0]['totalRows'] = max($worksheetInfo[0]['totalRows'], $rowIndex); + $worksheetInfo[0]['lastColumnIndex'] = max($worksheetInfo[0]['lastColumnIndex'], $columnIndex); + } + } + } + + $worksheetInfo[0]['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($worksheetInfo[0]['lastColumnIndex']); + $worksheetInfo[0]['totalColumns'] = $worksheetInfo[0]['lastColumnIndex'] + 1; + + // Close file + fclose($fileHandle); + + return $worksheetInfo; + } + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws PHPExcel_Reader_Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + // Open file + $this->openFile($pFilename); + if (!$this->isValidFormat()) { + fclose($this->fileHandle); + throw new PHPExcel_Reader_Exception($pFilename . " is an Invalid Spreadsheet file."); + } + $fileHandle = $this->fileHandle; + rewind($fileHandle); + + // Create new PHPExcel + while ($objPHPExcel->getSheetCount() <= $this->sheetIndex) { + $objPHPExcel->createSheet(); + } + $objPHPExcel->setActiveSheetIndex($this->sheetIndex); + + $fromFormats = array('\-', '\ '); + $toFormats = array('-', ' '); + + // Loop through file + $rowData = array(); + $column = $row = ''; + + // loop through one row (line) at a time in the file + while (($rowData = fgets($fileHandle)) !== false) { + // convert SYLK encoded $rowData to UTF-8 + $rowData = PHPExcel_Shared_String::SYLKtoUTF8($rowData); + + // explode each row at semicolons while taking into account that literal semicolon (;) + // is escaped like this (;;) + $rowData = explode("\t", str_replace('¤', ';', str_replace(';', "\t", str_replace(';;', '¤', rtrim($rowData))))); + + $dataType = array_shift($rowData); + // Read shared styles + if ($dataType == 'P') { + $formatArray = array(); + foreach ($rowData as $rowDatum) { + switch ($rowDatum{0}) { + case 'P': + $formatArray['numberformat']['code'] = str_replace($fromFormats, $toFormats, substr($rowDatum, 1)); + break; + case 'E': + case 'F': + $formatArray['font']['name'] = substr($rowDatum, 1); + break; + case 'L': + $formatArray['font']['size'] = substr($rowDatum, 1); + break; + case 'S': + $styleSettings = substr($rowDatum, 1); + for ($i=0; $i<strlen($styleSettings); ++$i) { + switch ($styleSettings{$i}) { + case 'I': + $formatArray['font']['italic'] = true; + break; + case 'D': + $formatArray['font']['bold'] = true; + break; + case 'T': + $formatArray['borders']['top']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'B': + $formatArray['borders']['bottom']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'L': + $formatArray['borders']['left']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'R': + $formatArray['borders']['right']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + } + } + break; + } + } + $this->formats['P'.$this->format++] = $formatArray; + // Read cell value data + } elseif ($dataType == 'C') { + $hasCalculatedValue = false; + $cellData = $cellDataFormula = ''; + foreach ($rowData as $rowDatum) { + switch ($rowDatum{0}) { + case 'C': + case 'X': + $column = substr($rowDatum, 1); + break; + case 'R': + case 'Y': + $row = substr($rowDatum, 1); + break; + case 'K': + $cellData = substr($rowDatum, 1); + break; + case 'E': + $cellDataFormula = '='.substr($rowDatum, 1); + // Convert R1C1 style references to A1 style references (but only when not quoted) + $temp = explode('"', $cellDataFormula); + $key = false; + foreach ($temp as &$value) { + // Only count/replace in alternate array entries + if ($key = !$key) { + preg_match_all('/(R(\[?-?\d*\]?))(C(\[?-?\d*\]?))/', $value, $cellReferences, PREG_SET_ORDER+PREG_OFFSET_CAPTURE); + // Reverse the matches array, otherwise all our offsets will become incorrect if we modify our way + // through the formula from left to right. Reversing means that we work right to left.through + // the formula + $cellReferences = array_reverse($cellReferences); + // Loop through each R1C1 style reference in turn, converting it to its A1 style equivalent, + // then modify the formula to use that new reference + foreach ($cellReferences as $cellReference) { + $rowReference = $cellReference[2][0]; + // Empty R reference is the current row + if ($rowReference == '') { + $rowReference = $row; + } + // Bracketed R references are relative to the current row + if ($rowReference{0} == '[') { + $rowReference = $row + trim($rowReference, '[]'); + } + $columnReference = $cellReference[4][0]; + // Empty C reference is the current column + if ($columnReference == '') { + $columnReference = $column; + } + // Bracketed C references are relative to the current column + if ($columnReference{0} == '[') { + $columnReference = $column + trim($columnReference, '[]'); + } + $A1CellReference = PHPExcel_Cell::stringFromColumnIndex($columnReference-1).$rowReference; + + $value = substr_replace($value, $A1CellReference, $cellReference[0][1], strlen($cellReference[0][0])); + } + } + } + unset($value); + // Then rebuild the formula string + $cellDataFormula = implode('"', $temp); + $hasCalculatedValue = true; + break; + } + } + $columnLetter = PHPExcel_Cell::stringFromColumnIndex($column-1); + $cellData = PHPExcel_Calculation::unwrapResult($cellData); + + // Set cell value + $objPHPExcel->getActiveSheet()->getCell($columnLetter.$row)->setValue(($hasCalculatedValue) ? $cellDataFormula : $cellData); + if ($hasCalculatedValue) { + $cellData = PHPExcel_Calculation::unwrapResult($cellData); + $objPHPExcel->getActiveSheet()->getCell($columnLetter.$row)->setCalculatedValue($cellData); + } + // Read cell formatting + } elseif ($dataType == 'F') { + $formatStyle = $columnWidth = $styleSettings = ''; + $styleData = array(); + foreach ($rowData as $rowDatum) { + switch ($rowDatum{0}) { + case 'C': + case 'X': + $column = substr($rowDatum, 1); + break; + case 'R': + case 'Y': + $row = substr($rowDatum, 1); + break; + case 'P': + $formatStyle = $rowDatum; + break; + case 'W': + list($startCol, $endCol, $columnWidth) = explode(' ', substr($rowDatum, 1)); + break; + case 'S': + $styleSettings = substr($rowDatum, 1); + for ($i=0; $i<strlen($styleSettings); ++$i) { + switch ($styleSettings{$i}) { + case 'I': + $styleData['font']['italic'] = true; + break; + case 'D': + $styleData['font']['bold'] = true; + break; + case 'T': + $styleData['borders']['top']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'B': + $styleData['borders']['bottom']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'L': + $styleData['borders']['left']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'R': + $styleData['borders']['right']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + } + } + break; + } + } + if (($formatStyle > '') && ($column > '') && ($row > '')) { + $columnLetter = PHPExcel_Cell::stringFromColumnIndex($column-1); + if (isset($this->formats[$formatStyle])) { + $objPHPExcel->getActiveSheet()->getStyle($columnLetter.$row)->applyFromArray($this->formats[$formatStyle]); + } + } + if ((!empty($styleData)) && ($column > '') && ($row > '')) { + $columnLetter = PHPExcel_Cell::stringFromColumnIndex($column-1); + $objPHPExcel->getActiveSheet()->getStyle($columnLetter.$row)->applyFromArray($styleData); + } + if ($columnWidth > '') { + if ($startCol == $endCol) { + $startCol = PHPExcel_Cell::stringFromColumnIndex($startCol-1); + $objPHPExcel->getActiveSheet()->getColumnDimension($startCol)->setWidth($columnWidth); + } else { + $startCol = PHPExcel_Cell::stringFromColumnIndex($startCol-1); + $endCol = PHPExcel_Cell::stringFromColumnIndex($endCol-1); + $objPHPExcel->getActiveSheet()->getColumnDimension($startCol)->setWidth($columnWidth); + do { + $objPHPExcel->getActiveSheet()->getColumnDimension(++$startCol)->setWidth($columnWidth); + } while ($startCol != $endCol); + } + } + } else { + foreach ($rowData as $rowDatum) { + switch ($rowDatum{0}) { + case 'C': + case 'X': + $column = substr($rowDatum, 1); + break; + case 'R': + case 'Y': + $row = substr($rowDatum, 1); + break; + } + } + } + } + + // Close file + fclose($fileHandle); + + // Return + return $objPHPExcel; + } + + /** + * Get sheet index + * + * @return int + */ + public function getSheetIndex() + { + return $this->sheetIndex; + } + + /** + * Set sheet index + * + * @param int $pValue Sheet index + * @return PHPExcel_Reader_SYLK + */ + public function setSheetIndex($pValue = 0) + { + $this->sheetIndex = $pValue; + return $this; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/_notes/dwsync.xml new file mode 100644 index 0000000..fd0d7ea --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Reader/_notes/dwsync.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Abstract.php" server="62.244.88.21/deciday/" local="131919461876526704" remote="131880384600000000" Dst="1" /> +<file name="CSV.php" server="62.244.88.21/deciday/" local="131919461876968489" remote="131880384600000000" Dst="1" /> +<file name="DefaultReadFilter.php" server="62.244.88.21/deciday/" local="131919461877300582" remote="131880384600000000" Dst="1" /> +<file name="Excel2003XML.php" server="62.244.88.21/deciday/" local="131919461878541567" remote="131880384600000000" Dst="1" /> +<file name="Excel2007.php" server="62.244.88.21/deciday/" local="131919461881128022" remote="131880384600000000" Dst="1" /> +<file name="Exception.php" server="62.244.88.21/deciday/" local="131919461885640121" remote="131880384600000000" Dst="1" /> +<file name="Gnumeric.php" server="62.244.88.21/deciday/" local="131919461886637878" remote="131880384600000000" Dst="1" /> +<file name="HTML.php" server="62.244.88.21/deciday/" local="131919461887193201" remote="131880384600000000" Dst="1" /> +<file name="IReader.php" server="62.244.88.21/deciday/" local="131919461887554962" remote="131880384600000000" Dst="1" /> +<file name="Excel5.php" server="62.244.88.21/deciday/" local="131919461888025377" remote="131880384600000000" Dst="1" /> +<file name="IReadFilter.php" server="62.244.88.21/deciday/" local="131919461888211540" remote="131880384600000000" Dst="1" /> +<file name="OOCalc.php" server="62.244.88.21/deciday/" local="131919461889289259" remote="131880384600000000" Dst="1" /> +<file name="SYLK.php" server="62.244.88.21/deciday/" local="131919461889566108" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/ReferenceHelper.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/ReferenceHelper.php new file mode 100644 index 0000000..7d7de93 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/ReferenceHelper.php @@ -0,0 +1,913 @@ +<?php + +/** + * PHPExcel_ReferenceHelper (Singleton) + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_ReferenceHelper +{ + /** Constants */ + /** Regular Expressions */ + const REFHELPER_REGEXP_CELLREF = '((\w*|\'[^!]*\')!)?(?<![:a-z\$])(\$?[a-z]{1,3}\$?\d+)(?=[^:!\d\'])'; + const REFHELPER_REGEXP_CELLRANGE = '((\w*|\'[^!]*\')!)?(\$?[a-z]{1,3}\$?\d+):(\$?[a-z]{1,3}\$?\d+)'; + const REFHELPER_REGEXP_ROWRANGE = '((\w*|\'[^!]*\')!)?(\$?\d+):(\$?\d+)'; + const REFHELPER_REGEXP_COLRANGE = '((\w*|\'[^!]*\')!)?(\$?[a-z]{1,3}):(\$?[a-z]{1,3})'; + + /** + * Instance of this class + * + * @var PHPExcel_ReferenceHelper + */ + private static $instance; + + /** + * Get an instance of this class + * + * @return PHPExcel_ReferenceHelper + */ + public static function getInstance() + { + if (!isset(self::$instance) || (self::$instance === null)) { + self::$instance = new PHPExcel_ReferenceHelper(); + } + + return self::$instance; + } + + /** + * Create a new PHPExcel_ReferenceHelper + */ + protected function __construct() + { + } + + /** + * Compare two column addresses + * Intended for use as a Callback function for sorting column addresses by column + * + * @param string $a First column to test (e.g. 'AA') + * @param string $b Second column to test (e.g. 'Z') + * @return integer + */ + public static function columnSort($a, $b) + { + return strcasecmp(strlen($a) . $a, strlen($b) . $b); + } + + /** + * Compare two column addresses + * Intended for use as a Callback function for reverse sorting column addresses by column + * + * @param string $a First column to test (e.g. 'AA') + * @param string $b Second column to test (e.g. 'Z') + * @return integer + */ + public static function columnReverseSort($a, $b) + { + return 1 - strcasecmp(strlen($a) . $a, strlen($b) . $b); + } + + /** + * Compare two cell addresses + * Intended for use as a Callback function for sorting cell addresses by column and row + * + * @param string $a First cell to test (e.g. 'AA1') + * @param string $b Second cell to test (e.g. 'Z1') + * @return integer + */ + public static function cellSort($a, $b) + { + sscanf($a, '%[A-Z]%d', $ac, $ar); + sscanf($b, '%[A-Z]%d', $bc, $br); + + if ($ar == $br) { + return strcasecmp(strlen($ac) . $ac, strlen($bc) . $bc); + } + return ($ar < $br) ? -1 : 1; + } + + /** + * Compare two cell addresses + * Intended for use as a Callback function for sorting cell addresses by column and row + * + * @param string $a First cell to test (e.g. 'AA1') + * @param string $b Second cell to test (e.g. 'Z1') + * @return integer + */ + public static function cellReverseSort($a, $b) + { + sscanf($a, '%[A-Z]%d', $ac, $ar); + sscanf($b, '%[A-Z]%d', $bc, $br); + + if ($ar == $br) { + return 1 - strcasecmp(strlen($ac) . $ac, strlen($bc) . $bc); + } + return ($ar < $br) ? 1 : -1; + } + + /** + * Test whether a cell address falls within a defined range of cells + * + * @param string $cellAddress Address of the cell we're testing + * @param integer $beforeRow Number of the row we're inserting/deleting before + * @param integer $pNumRows Number of rows to insert/delete (negative values indicate deletion) + * @param integer $beforeColumnIndex Index number of the column we're inserting/deleting before + * @param integer $pNumCols Number of columns to insert/delete (negative values indicate deletion) + * @return boolean + */ + private static function cellAddressInDeleteRange($cellAddress, $beforeRow, $pNumRows, $beforeColumnIndex, $pNumCols) + { + list($cellColumn, $cellRow) = PHPExcel_Cell::coordinateFromString($cellAddress); + $cellColumnIndex = PHPExcel_Cell::columnIndexFromString($cellColumn); + // Is cell within the range of rows/columns if we're deleting + if ($pNumRows < 0 && + ($cellRow >= ($beforeRow + $pNumRows)) && + ($cellRow < $beforeRow)) { + return true; + } elseif ($pNumCols < 0 && + ($cellColumnIndex >= ($beforeColumnIndex + $pNumCols)) && + ($cellColumnIndex < $beforeColumnIndex)) { + return true; + } + return false; + } + + /** + * Update page breaks when inserting/deleting rows/columns + * + * @param PHPExcel_Worksheet $pSheet The worksheet that we're editing + * @param string $pBefore Insert/Delete before this cell address (e.g. 'A1') + * @param integer $beforeColumnIndex Index number of the column we're inserting/deleting before + * @param integer $pNumCols Number of columns to insert/delete (negative values indicate deletion) + * @param integer $beforeRow Number of the row we're inserting/deleting before + * @param integer $pNumRows Number of rows to insert/delete (negative values indicate deletion) + */ + protected function adjustPageBreaks(PHPExcel_Worksheet $pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows) + { + $aBreaks = $pSheet->getBreaks(); + ($pNumCols > 0 || $pNumRows > 0) ? + uksort($aBreaks, array('PHPExcel_ReferenceHelper','cellReverseSort')) : + uksort($aBreaks, array('PHPExcel_ReferenceHelper','cellSort')); + + foreach ($aBreaks as $key => $value) { + if (self::cellAddressInDeleteRange($key, $beforeRow, $pNumRows, $beforeColumnIndex, $pNumCols)) { + // If we're deleting, then clear any defined breaks that are within the range + // of rows/columns that we're deleting + $pSheet->setBreak($key, PHPExcel_Worksheet::BREAK_NONE); + } else { + // Otherwise update any affected breaks by inserting a new break at the appropriate point + // and removing the old affected break + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + if ($key != $newReference) { + $pSheet->setBreak($newReference, $value) + ->setBreak($key, PHPExcel_Worksheet::BREAK_NONE); + } + } + } + } + + /** + * Update cell comments when inserting/deleting rows/columns + * + * @param PHPExcel_Worksheet $pSheet The worksheet that we're editing + * @param string $pBefore Insert/Delete before this cell address (e.g. 'A1') + * @param integer $beforeColumnIndex Index number of the column we're inserting/deleting before + * @param integer $pNumCols Number of columns to insert/delete (negative values indicate deletion) + * @param integer $beforeRow Number of the row we're inserting/deleting before + * @param integer $pNumRows Number of rows to insert/delete (negative values indicate deletion) + */ + protected function adjustComments($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows) + { + $aComments = $pSheet->getComments(); + $aNewComments = array(); // the new array of all comments + + foreach ($aComments as $key => &$value) { + // Any comments inside a deleted range will be ignored + if (!self::cellAddressInDeleteRange($key, $beforeRow, $pNumRows, $beforeColumnIndex, $pNumCols)) { + // Otherwise build a new array of comments indexed by the adjusted cell reference + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + $aNewComments[$newReference] = $value; + } + } + // Replace the comments array with the new set of comments + $pSheet->setComments($aNewComments); + } + + /** + * Update hyperlinks when inserting/deleting rows/columns + * + * @param PHPExcel_Worksheet $pSheet The worksheet that we're editing + * @param string $pBefore Insert/Delete before this cell address (e.g. 'A1') + * @param integer $beforeColumnIndex Index number of the column we're inserting/deleting before + * @param integer $pNumCols Number of columns to insert/delete (negative values indicate deletion) + * @param integer $beforeRow Number of the row we're inserting/deleting before + * @param integer $pNumRows Number of rows to insert/delete (negative values indicate deletion) + */ + protected function adjustHyperlinks($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows) + { + $aHyperlinkCollection = $pSheet->getHyperlinkCollection(); + ($pNumCols > 0 || $pNumRows > 0) ? uksort($aHyperlinkCollection, array('PHPExcel_ReferenceHelper','cellReverseSort')) : uksort($aHyperlinkCollection, array('PHPExcel_ReferenceHelper','cellSort')); + + foreach ($aHyperlinkCollection as $key => $value) { + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + if ($key != $newReference) { + $pSheet->setHyperlink($newReference, $value); + $pSheet->setHyperlink($key, null); + } + } + } + + /** + * Update data validations when inserting/deleting rows/columns + * + * @param PHPExcel_Worksheet $pSheet The worksheet that we're editing + * @param string $pBefore Insert/Delete before this cell address (e.g. 'A1') + * @param integer $beforeColumnIndex Index number of the column we're inserting/deleting before + * @param integer $pNumCols Number of columns to insert/delete (negative values indicate deletion) + * @param integer $beforeRow Number of the row we're inserting/deleting before + * @param integer $pNumRows Number of rows to insert/delete (negative values indicate deletion) + */ + protected function adjustDataValidations($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows) + { + $aDataValidationCollection = $pSheet->getDataValidationCollection(); + ($pNumCols > 0 || $pNumRows > 0) ? uksort($aDataValidationCollection, array('PHPExcel_ReferenceHelper','cellReverseSort')) : uksort($aDataValidationCollection, array('PHPExcel_ReferenceHelper','cellSort')); + + foreach ($aDataValidationCollection as $key => $value) { + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + if ($key != $newReference) { + $pSheet->setDataValidation($newReference, $value); + $pSheet->setDataValidation($key, null); + } + } + } + + /** + * Update merged cells when inserting/deleting rows/columns + * + * @param PHPExcel_Worksheet $pSheet The worksheet that we're editing + * @param string $pBefore Insert/Delete before this cell address (e.g. 'A1') + * @param integer $beforeColumnIndex Index number of the column we're inserting/deleting before + * @param integer $pNumCols Number of columns to insert/delete (negative values indicate deletion) + * @param integer $beforeRow Number of the row we're inserting/deleting before + * @param integer $pNumRows Number of rows to insert/delete (negative values indicate deletion) + */ + protected function adjustMergeCells($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows) + { + $aMergeCells = $pSheet->getMergeCells(); + $aNewMergeCells = array(); // the new array of all merge cells + foreach ($aMergeCells as $key => &$value) { + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + $aNewMergeCells[$newReference] = $newReference; + } + $pSheet->setMergeCells($aNewMergeCells); // replace the merge cells array + } + + /** + * Update protected cells when inserting/deleting rows/columns + * + * @param PHPExcel_Worksheet $pSheet The worksheet that we're editing + * @param string $pBefore Insert/Delete before this cell address (e.g. 'A1') + * @param integer $beforeColumnIndex Index number of the column we're inserting/deleting before + * @param integer $pNumCols Number of columns to insert/delete (negative values indicate deletion) + * @param integer $beforeRow Number of the row we're inserting/deleting before + * @param integer $pNumRows Number of rows to insert/delete (negative values indicate deletion) + */ + protected function adjustProtectedCells($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows) + { + $aProtectedCells = $pSheet->getProtectedCells(); + ($pNumCols > 0 || $pNumRows > 0) ? + uksort($aProtectedCells, array('PHPExcel_ReferenceHelper','cellReverseSort')) : + uksort($aProtectedCells, array('PHPExcel_ReferenceHelper','cellSort')); + foreach ($aProtectedCells as $key => $value) { + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + if ($key != $newReference) { + $pSheet->protectCells($newReference, $value, true); + $pSheet->unprotectCells($key); + } + } + } + + /** + * Update column dimensions when inserting/deleting rows/columns + * + * @param PHPExcel_Worksheet $pSheet The worksheet that we're editing + * @param string $pBefore Insert/Delete before this cell address (e.g. 'A1') + * @param integer $beforeColumnIndex Index number of the column we're inserting/deleting before + * @param integer $pNumCols Number of columns to insert/delete (negative values indicate deletion) + * @param integer $beforeRow Number of the row we're inserting/deleting before + * @param integer $pNumRows Number of rows to insert/delete (negative values indicate deletion) + */ + protected function adjustColumnDimensions($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows) + { + $aColumnDimensions = array_reverse($pSheet->getColumnDimensions(), true); + if (!empty($aColumnDimensions)) { + foreach ($aColumnDimensions as $objColumnDimension) { + $newReference = $this->updateCellReference($objColumnDimension->getColumnIndex() . '1', $pBefore, $pNumCols, $pNumRows); + list($newReference) = PHPExcel_Cell::coordinateFromString($newReference); + if ($objColumnDimension->getColumnIndex() != $newReference) { + $objColumnDimension->setColumnIndex($newReference); + } + } + $pSheet->refreshColumnDimensions(); + } + } + + /** + * Update row dimensions when inserting/deleting rows/columns + * + * @param PHPExcel_Worksheet $pSheet The worksheet that we're editing + * @param string $pBefore Insert/Delete before this cell address (e.g. 'A1') + * @param integer $beforeColumnIndex Index number of the column we're inserting/deleting before + * @param integer $pNumCols Number of columns to insert/delete (negative values indicate deletion) + * @param integer $beforeRow Number of the row we're inserting/deleting before + * @param integer $pNumRows Number of rows to insert/delete (negative values indicate deletion) + */ + protected function adjustRowDimensions($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows) + { + $aRowDimensions = array_reverse($pSheet->getRowDimensions(), true); + if (!empty($aRowDimensions)) { + foreach ($aRowDimensions as $objRowDimension) { + $newReference = $this->updateCellReference('A' . $objRowDimension->getRowIndex(), $pBefore, $pNumCols, $pNumRows); + list(, $newReference) = PHPExcel_Cell::coordinateFromString($newReference); + if ($objRowDimension->getRowIndex() != $newReference) { + $objRowDimension->setRowIndex($newReference); + } + } + $pSheet->refreshRowDimensions(); + + $copyDimension = $pSheet->getRowDimension($beforeRow - 1); + for ($i = $beforeRow; $i <= $beforeRow - 1 + $pNumRows; ++$i) { + $newDimension = $pSheet->getRowDimension($i); + $newDimension->setRowHeight($copyDimension->getRowHeight()); + $newDimension->setVisible($copyDimension->getVisible()); + $newDimension->setOutlineLevel($copyDimension->getOutlineLevel()); + $newDimension->setCollapsed($copyDimension->getCollapsed()); + } + } + } + + /** + * Insert a new column or row, updating all possible related data + * + * @param string $pBefore Insert before this cell address (e.g. 'A1') + * @param integer $pNumCols Number of columns to insert/delete (negative values indicate deletion) + * @param integer $pNumRows Number of rows to insert/delete (negative values indicate deletion) + * @param PHPExcel_Worksheet $pSheet The worksheet that we're editing + * @throws PHPExcel_Exception + */ + public function insertNewBefore($pBefore = 'A1', $pNumCols = 0, $pNumRows = 0, PHPExcel_Worksheet $pSheet = null) + { + $remove = ($pNumCols < 0 || $pNumRows < 0); + $aCellCollection = $pSheet->getCellCollection(); + + // Get coordinates of $pBefore + $beforeColumn = 'A'; + $beforeRow = 1; + list($beforeColumn, $beforeRow) = PHPExcel_Cell::coordinateFromString($pBefore); + $beforeColumnIndex = PHPExcel_Cell::columnIndexFromString($beforeColumn); + + // Clear cells if we are removing columns or rows + $highestColumn = $pSheet->getHighestColumn(); + $highestRow = $pSheet->getHighestRow(); + + // 1. Clear column strips if we are removing columns + if ($pNumCols < 0 && $beforeColumnIndex - 2 + $pNumCols > 0) { + for ($i = 1; $i <= $highestRow - 1; ++$i) { + for ($j = $beforeColumnIndex - 1 + $pNumCols; $j <= $beforeColumnIndex - 2; ++$j) { + $coordinate = PHPExcel_Cell::stringFromColumnIndex($j) . $i; + $pSheet->removeConditionalStyles($coordinate); + if ($pSheet->cellExists($coordinate)) { + $pSheet->getCell($coordinate)->setValueExplicit('', PHPExcel_Cell_DataType::TYPE_NULL); + $pSheet->getCell($coordinate)->setXfIndex(0); + } + } + } + } + + // 2. Clear row strips if we are removing rows + if ($pNumRows < 0 && $beforeRow - 1 + $pNumRows > 0) { + for ($i = $beforeColumnIndex - 1; $i <= PHPExcel_Cell::columnIndexFromString($highestColumn) - 1; ++$i) { + for ($j = $beforeRow + $pNumRows; $j <= $beforeRow - 1; ++$j) { + $coordinate = PHPExcel_Cell::stringFromColumnIndex($i) . $j; + $pSheet->removeConditionalStyles($coordinate); + if ($pSheet->cellExists($coordinate)) { + $pSheet->getCell($coordinate)->setValueExplicit('', PHPExcel_Cell_DataType::TYPE_NULL); + $pSheet->getCell($coordinate)->setXfIndex(0); + } + } + } + } + + // Loop through cells, bottom-up, and change cell coordinates + if ($remove) { + // It's faster to reverse and pop than to use unshift, especially with large cell collections + $aCellCollection = array_reverse($aCellCollection); + } + while ($cellID = array_pop($aCellCollection)) { + $cell = $pSheet->getCell($cellID); + $cellIndex = PHPExcel_Cell::columnIndexFromString($cell->getColumn()); + + if ($cellIndex-1 + $pNumCols < 0) { + continue; + } + + // New coordinates + $newCoordinates = PHPExcel_Cell::stringFromColumnIndex($cellIndex-1 + $pNumCols) . ($cell->getRow() + $pNumRows); + + // Should the cell be updated? Move value and cellXf index from one cell to another. + if (($cellIndex >= $beforeColumnIndex) && ($cell->getRow() >= $beforeRow)) { + // Update cell styles + $pSheet->getCell($newCoordinates)->setXfIndex($cell->getXfIndex()); + + // Insert this cell at its new location + if ($cell->getDataType() == PHPExcel_Cell_DataType::TYPE_FORMULA) { + // Formula should be adjusted + $pSheet->getCell($newCoordinates) + ->setValue($this->updateFormulaReferences($cell->getValue(), $pBefore, $pNumCols, $pNumRows, $pSheet->getTitle())); + } else { + // Formula should not be adjusted + $pSheet->getCell($newCoordinates)->setValue($cell->getValue()); + } + + // Clear the original cell + $pSheet->getCellCacheController()->deleteCacheData($cellID); + } else { + /* We don't need to update styles for rows/columns before our insertion position, + but we do still need to adjust any formulae in those cells */ + if ($cell->getDataType() == PHPExcel_Cell_DataType::TYPE_FORMULA) { + // Formula should be adjusted + $cell->setValue($this->updateFormulaReferences($cell->getValue(), $pBefore, $pNumCols, $pNumRows, $pSheet->getTitle())); + } + + } + } + + // Duplicate styles for the newly inserted cells + $highestColumn = $pSheet->getHighestColumn(); + $highestRow = $pSheet->getHighestRow(); + + if ($pNumCols > 0 && $beforeColumnIndex - 2 > 0) { + for ($i = $beforeRow; $i <= $highestRow - 1; ++$i) { + // Style + $coordinate = PHPExcel_Cell::stringFromColumnIndex($beforeColumnIndex - 2) . $i; + if ($pSheet->cellExists($coordinate)) { + $xfIndex = $pSheet->getCell($coordinate)->getXfIndex(); + $conditionalStyles = $pSheet->conditionalStylesExists($coordinate) ? + $pSheet->getConditionalStyles($coordinate) : false; + for ($j = $beforeColumnIndex - 1; $j <= $beforeColumnIndex - 2 + $pNumCols; ++$j) { + $pSheet->getCellByColumnAndRow($j, $i)->setXfIndex($xfIndex); + if ($conditionalStyles) { + $cloned = array(); + foreach ($conditionalStyles as $conditionalStyle) { + $cloned[] = clone $conditionalStyle; + } + $pSheet->setConditionalStyles(PHPExcel_Cell::stringFromColumnIndex($j) . $i, $cloned); + } + } + } + + } + } + + if ($pNumRows > 0 && $beforeRow - 1 > 0) { + for ($i = $beforeColumnIndex - 1; $i <= PHPExcel_Cell::columnIndexFromString($highestColumn) - 1; ++$i) { + // Style + $coordinate = PHPExcel_Cell::stringFromColumnIndex($i) . ($beforeRow - 1); + if ($pSheet->cellExists($coordinate)) { + $xfIndex = $pSheet->getCell($coordinate)->getXfIndex(); + $conditionalStyles = $pSheet->conditionalStylesExists($coordinate) ? + $pSheet->getConditionalStyles($coordinate) : false; + for ($j = $beforeRow; $j <= $beforeRow - 1 + $pNumRows; ++$j) { + $pSheet->getCell(PHPExcel_Cell::stringFromColumnIndex($i) . $j)->setXfIndex($xfIndex); + if ($conditionalStyles) { + $cloned = array(); + foreach ($conditionalStyles as $conditionalStyle) { + $cloned[] = clone $conditionalStyle; + } + $pSheet->setConditionalStyles(PHPExcel_Cell::stringFromColumnIndex($i) . $j, $cloned); + } + } + } + } + } + + // Update worksheet: column dimensions + $this->adjustColumnDimensions($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows); + + // Update worksheet: row dimensions + $this->adjustRowDimensions($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows); + + // Update worksheet: page breaks + $this->adjustPageBreaks($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows); + + // Update worksheet: comments + $this->adjustComments($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows); + + // Update worksheet: hyperlinks + $this->adjustHyperlinks($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows); + + // Update worksheet: data validations + $this->adjustDataValidations($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows); + + // Update worksheet: merge cells + $this->adjustMergeCells($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows); + + // Update worksheet: protected cells + $this->adjustProtectedCells($pSheet, $pBefore, $beforeColumnIndex, $pNumCols, $beforeRow, $pNumRows); + + // Update worksheet: autofilter + $autoFilter = $pSheet->getAutoFilter(); + $autoFilterRange = $autoFilter->getRange(); + if (!empty($autoFilterRange)) { + if ($pNumCols != 0) { + $autoFilterColumns = array_keys($autoFilter->getColumns()); + if (count($autoFilterColumns) > 0) { + sscanf($pBefore, '%[A-Z]%d', $column, $row); + $columnIndex = PHPExcel_Cell::columnIndexFromString($column); + list($rangeStart, $rangeEnd) = PHPExcel_Cell::rangeBoundaries($autoFilterRange); + if ($columnIndex <= $rangeEnd[0]) { + if ($pNumCols < 0) { + // If we're actually deleting any columns that fall within the autofilter range, + // then we delete any rules for those columns + $deleteColumn = $columnIndex + $pNumCols - 1; + $deleteCount = abs($pNumCols); + for ($i = 1; $i <= $deleteCount; ++$i) { + if (in_array(PHPExcel_Cell::stringFromColumnIndex($deleteColumn), $autoFilterColumns)) { + $autoFilter->clearColumn(PHPExcel_Cell::stringFromColumnIndex($deleteColumn)); + } + ++$deleteColumn; + } + } + $startCol = ($columnIndex > $rangeStart[0]) ? $columnIndex : $rangeStart[0]; + + // Shuffle columns in autofilter range + if ($pNumCols > 0) { + // For insert, we shuffle from end to beginning to avoid overwriting + $startColID = PHPExcel_Cell::stringFromColumnIndex($startCol-1); + $toColID = PHPExcel_Cell::stringFromColumnIndex($startCol+$pNumCols-1); + $endColID = PHPExcel_Cell::stringFromColumnIndex($rangeEnd[0]); + + $startColRef = $startCol; + $endColRef = $rangeEnd[0]; + $toColRef = $rangeEnd[0]+$pNumCols; + + do { + $autoFilter->shiftColumn(PHPExcel_Cell::stringFromColumnIndex($endColRef-1), PHPExcel_Cell::stringFromColumnIndex($toColRef-1)); + --$endColRef; + --$toColRef; + } while ($startColRef <= $endColRef); + } else { + // For delete, we shuffle from beginning to end to avoid overwriting + $startColID = PHPExcel_Cell::stringFromColumnIndex($startCol-1); + $toColID = PHPExcel_Cell::stringFromColumnIndex($startCol+$pNumCols-1); + $endColID = PHPExcel_Cell::stringFromColumnIndex($rangeEnd[0]); + do { + $autoFilter->shiftColumn($startColID, $toColID); + ++$startColID; + ++$toColID; + } while ($startColID != $endColID); + } + } + } + } + $pSheet->setAutoFilter($this->updateCellReference($autoFilterRange, $pBefore, $pNumCols, $pNumRows)); + } + + // Update worksheet: freeze pane + if ($pSheet->getFreezePane() != '') { + $pSheet->freezePane($this->updateCellReference($pSheet->getFreezePane(), $pBefore, $pNumCols, $pNumRows)); + } + + // Page setup + if ($pSheet->getPageSetup()->isPrintAreaSet()) { + $pSheet->getPageSetup()->setPrintArea($this->updateCellReference($pSheet->getPageSetup()->getPrintArea(), $pBefore, $pNumCols, $pNumRows)); + } + + // Update worksheet: drawings + $aDrawings = $pSheet->getDrawingCollection(); + foreach ($aDrawings as $objDrawing) { + $newReference = $this->updateCellReference($objDrawing->getCoordinates(), $pBefore, $pNumCols, $pNumRows); + if ($objDrawing->getCoordinates() != $newReference) { + $objDrawing->setCoordinates($newReference); + } + } + + // Update workbook: named ranges + if (count($pSheet->getParent()->getNamedRanges()) > 0) { + foreach ($pSheet->getParent()->getNamedRanges() as $namedRange) { + if ($namedRange->getWorksheet()->getHashCode() == $pSheet->getHashCode()) { + $namedRange->setRange($this->updateCellReference($namedRange->getRange(), $pBefore, $pNumCols, $pNumRows)); + } + } + } + + // Garbage collect + $pSheet->garbageCollect(); + } + + /** + * Update references within formulas + * + * @param string $pFormula Formula to update + * @param int $pBefore Insert before this one + * @param int $pNumCols Number of columns to insert + * @param int $pNumRows Number of rows to insert + * @param string $sheetName Worksheet name/title + * @return string Updated formula + * @throws PHPExcel_Exception + */ + public function updateFormulaReferences($pFormula = '', $pBefore = 'A1', $pNumCols = 0, $pNumRows = 0, $sheetName = '') + { + // Update cell references in the formula + $formulaBlocks = explode('"', $pFormula); + $i = false; + foreach ($formulaBlocks as &$formulaBlock) { + // Ignore blocks that were enclosed in quotes (alternating entries in the $formulaBlocks array after the explode) + if ($i = !$i) { + $adjustCount = 0; + $newCellTokens = $cellTokens = array(); + // Search for row ranges (e.g. 'Sheet1'!3:5 or 3:5) with or without $ absolutes (e.g. $3:5) + $matchCount = preg_match_all('/'.self::REFHELPER_REGEXP_ROWRANGE.'/i', ' '.$formulaBlock.' ', $matches, PREG_SET_ORDER); + if ($matchCount > 0) { + foreach ($matches as $match) { + $fromString = ($match[2] > '') ? $match[2].'!' : ''; + $fromString .= $match[3].':'.$match[4]; + $modified3 = substr($this->updateCellReference('$A'.$match[3], $pBefore, $pNumCols, $pNumRows), 2); + $modified4 = substr($this->updateCellReference('$A'.$match[4], $pBefore, $pNumCols, $pNumRows), 2); + + if ($match[3].':'.$match[4] !== $modified3.':'.$modified4) { + if (($match[2] == '') || (trim($match[2], "'") == $sheetName)) { + $toString = ($match[2] > '') ? $match[2].'!' : ''; + $toString .= $modified3.':'.$modified4; + // Max worksheet size is 1,048,576 rows by 16,384 columns in Excel 2007, so our adjustments need to be at least one digit more + $column = 100000; + $row = 10000000 + trim($match[3], '$'); + $cellIndex = $column.$row; + + $newCellTokens[$cellIndex] = preg_quote($toString); + $cellTokens[$cellIndex] = '/(?<!\d\$\!)'.preg_quote($fromString).'(?!\d)/i'; + ++$adjustCount; + } + } + } + } + // Search for column ranges (e.g. 'Sheet1'!C:E or C:E) with or without $ absolutes (e.g. $C:E) + $matchCount = preg_match_all('/'.self::REFHELPER_REGEXP_COLRANGE.'/i', ' '.$formulaBlock.' ', $matches, PREG_SET_ORDER); + if ($matchCount > 0) { + foreach ($matches as $match) { + $fromString = ($match[2] > '') ? $match[2].'!' : ''; + $fromString .= $match[3].':'.$match[4]; + $modified3 = substr($this->updateCellReference($match[3].'$1', $pBefore, $pNumCols, $pNumRows), 0, -2); + $modified4 = substr($this->updateCellReference($match[4].'$1', $pBefore, $pNumCols, $pNumRows), 0, -2); + + if ($match[3].':'.$match[4] !== $modified3.':'.$modified4) { + if (($match[2] == '') || (trim($match[2], "'") == $sheetName)) { + $toString = ($match[2] > '') ? $match[2].'!' : ''; + $toString .= $modified3.':'.$modified4; + // Max worksheet size is 1,048,576 rows by 16,384 columns in Excel 2007, so our adjustments need to be at least one digit more + $column = PHPExcel_Cell::columnIndexFromString(trim($match[3], '$')) + 100000; + $row = 10000000; + $cellIndex = $column.$row; + + $newCellTokens[$cellIndex] = preg_quote($toString); + $cellTokens[$cellIndex] = '/(?<![A-Z\$\!])'.preg_quote($fromString).'(?![A-Z])/i'; + ++$adjustCount; + } + } + } + } + // Search for cell ranges (e.g. 'Sheet1'!A3:C5 or A3:C5) with or without $ absolutes (e.g. $A1:C$5) + $matchCount = preg_match_all('/'.self::REFHELPER_REGEXP_CELLRANGE.'/i', ' '.$formulaBlock.' ', $matches, PREG_SET_ORDER); + if ($matchCount > 0) { + foreach ($matches as $match) { + $fromString = ($match[2] > '') ? $match[2].'!' : ''; + $fromString .= $match[3].':'.$match[4]; + $modified3 = $this->updateCellReference($match[3], $pBefore, $pNumCols, $pNumRows); + $modified4 = $this->updateCellReference($match[4], $pBefore, $pNumCols, $pNumRows); + + if ($match[3].$match[4] !== $modified3.$modified4) { + if (($match[2] == '') || (trim($match[2], "'") == $sheetName)) { + $toString = ($match[2] > '') ? $match[2].'!' : ''; + $toString .= $modified3.':'.$modified4; + list($column, $row) = PHPExcel_Cell::coordinateFromString($match[3]); + // Max worksheet size is 1,048,576 rows by 16,384 columns in Excel 2007, so our adjustments need to be at least one digit more + $column = PHPExcel_Cell::columnIndexFromString(trim($column, '$')) + 100000; + $row = trim($row, '$') + 10000000; + $cellIndex = $column.$row; + + $newCellTokens[$cellIndex] = preg_quote($toString); + $cellTokens[$cellIndex] = '/(?<![A-Z]\$\!)'.preg_quote($fromString).'(?!\d)/i'; + ++$adjustCount; + } + } + } + } + // Search for cell references (e.g. 'Sheet1'!A3 or C5) with or without $ absolutes (e.g. $A1 or C$5) + $matchCount = preg_match_all('/'.self::REFHELPER_REGEXP_CELLREF.'/i', ' '.$formulaBlock.' ', $matches, PREG_SET_ORDER); + + if ($matchCount > 0) { + foreach ($matches as $match) { + $fromString = ($match[2] > '') ? $match[2].'!' : ''; + $fromString .= $match[3]; + + $modified3 = $this->updateCellReference($match[3], $pBefore, $pNumCols, $pNumRows); + if ($match[3] !== $modified3) { + if (($match[2] == '') || (trim($match[2], "'") == $sheetName)) { + $toString = ($match[2] > '') ? $match[2].'!' : ''; + $toString .= $modified3; + list($column, $row) = PHPExcel_Cell::coordinateFromString($match[3]); + // Max worksheet size is 1,048,576 rows by 16,384 columns in Excel 2007, so our adjustments need to be at least one digit more + $column = PHPExcel_Cell::columnIndexFromString(trim($column, '$')) + 100000; + $row = trim($row, '$') + 10000000; + $cellIndex = $row . $column; + + $newCellTokens[$cellIndex] = preg_quote($toString); + $cellTokens[$cellIndex] = '/(?<![A-Z\$\!])'.preg_quote($fromString).'(?!\d)/i'; + ++$adjustCount; + } + } + } + } + if ($adjustCount > 0) { + if ($pNumCols > 0 || $pNumRows > 0) { + krsort($cellTokens); + krsort($newCellTokens); + } else { + ksort($cellTokens); + ksort($newCellTokens); + } // Update cell references in the formula + $formulaBlock = str_replace('\\', '', preg_replace($cellTokens, $newCellTokens, $formulaBlock)); + } + } + } + unset($formulaBlock); + + // Then rebuild the formula string + return implode('"', $formulaBlocks); + } + + /** + * Update cell reference + * + * @param string $pCellRange Cell range + * @param int $pBefore Insert before this one + * @param int $pNumCols Number of columns to increment + * @param int $pNumRows Number of rows to increment + * @return string Updated cell range + * @throws PHPExcel_Exception + */ + public function updateCellReference($pCellRange = 'A1', $pBefore = 'A1', $pNumCols = 0, $pNumRows = 0) + { + // Is it in another worksheet? Will not have to update anything. + if (strpos($pCellRange, "!") !== false) { + return $pCellRange; + // Is it a range or a single cell? + } elseif (strpos($pCellRange, ':') === false && strpos($pCellRange, ',') === false) { + // Single cell + return $this->updateSingleCellReference($pCellRange, $pBefore, $pNumCols, $pNumRows); + } elseif (strpos($pCellRange, ':') !== false || strpos($pCellRange, ',') !== false) { + // Range + return $this->updateCellRange($pCellRange, $pBefore, $pNumCols, $pNumRows); + } else { + // Return original + return $pCellRange; + } + } + + /** + * Update named formulas (i.e. containing worksheet references / named ranges) + * + * @param PHPExcel $pPhpExcel Object to update + * @param string $oldName Old name (name to replace) + * @param string $newName New name + */ + public function updateNamedFormulas(PHPExcel $pPhpExcel, $oldName = '', $newName = '') + { + if ($oldName == '') { + return; + } + + foreach ($pPhpExcel->getWorksheetIterator() as $sheet) { + foreach ($sheet->getCellCollection(false) as $cellID) { + $cell = $sheet->getCell($cellID); + if (($cell !== null) && ($cell->getDataType() == PHPExcel_Cell_DataType::TYPE_FORMULA)) { + $formula = $cell->getValue(); + if (strpos($formula, $oldName) !== false) { + $formula = str_replace("'" . $oldName . "'!", "'" . $newName . "'!", $formula); + $formula = str_replace($oldName . "!", $newName . "!", $formula); + $cell->setValueExplicit($formula, PHPExcel_Cell_DataType::TYPE_FORMULA); + } + } + } + } + } + + /** + * Update cell range + * + * @param string $pCellRange Cell range (e.g. 'B2:D4', 'B:C' or '2:3') + * @param int $pBefore Insert before this one + * @param int $pNumCols Number of columns to increment + * @param int $pNumRows Number of rows to increment + * @return string Updated cell range + * @throws PHPExcel_Exception + */ + private function updateCellRange($pCellRange = 'A1:A1', $pBefore = 'A1', $pNumCols = 0, $pNumRows = 0) + { + if (strpos($pCellRange, ':') !== false || strpos($pCellRange, ',') !== false) { + // Update range + $range = PHPExcel_Cell::splitRange($pCellRange); + $ic = count($range); + for ($i = 0; $i < $ic; ++$i) { + $jc = count($range[$i]); + for ($j = 0; $j < $jc; ++$j) { + if (ctype_alpha($range[$i][$j])) { + $r = PHPExcel_Cell::coordinateFromString($this->updateSingleCellReference($range[$i][$j].'1', $pBefore, $pNumCols, $pNumRows)); + $range[$i][$j] = $r[0]; + } elseif (ctype_digit($range[$i][$j])) { + $r = PHPExcel_Cell::coordinateFromString($this->updateSingleCellReference('A'.$range[$i][$j], $pBefore, $pNumCols, $pNumRows)); + $range[$i][$j] = $r[1]; + } else { + $range[$i][$j] = $this->updateSingleCellReference($range[$i][$j], $pBefore, $pNumCols, $pNumRows); + } + } + } + + // Recreate range string + return PHPExcel_Cell::buildRange($range); + } else { + throw new PHPExcel_Exception("Only cell ranges may be passed to this method."); + } + } + + /** + * Update single cell reference + * + * @param string $pCellReference Single cell reference + * @param int $pBefore Insert before this one + * @param int $pNumCols Number of columns to increment + * @param int $pNumRows Number of rows to increment + * @return string Updated cell reference + * @throws PHPExcel_Exception + */ + private function updateSingleCellReference($pCellReference = 'A1', $pBefore = 'A1', $pNumCols = 0, $pNumRows = 0) + { + if (strpos($pCellReference, ':') === false && strpos($pCellReference, ',') === false) { + // Get coordinates of $pBefore + list($beforeColumn, $beforeRow) = PHPExcel_Cell::coordinateFromString($pBefore); + + // Get coordinates of $pCellReference + list($newColumn, $newRow) = PHPExcel_Cell::coordinateFromString($pCellReference); + + // Verify which parts should be updated + $updateColumn = (($newColumn{0} != '$') && ($beforeColumn{0} != '$') && (PHPExcel_Cell::columnIndexFromString($newColumn) >= PHPExcel_Cell::columnIndexFromString($beforeColumn))); + $updateRow = (($newRow{0} != '$') && ($beforeRow{0} != '$') && $newRow >= $beforeRow); + + // Create new column reference + if ($updateColumn) { + $newColumn = PHPExcel_Cell::stringFromColumnIndex(PHPExcel_Cell::columnIndexFromString($newColumn) - 1 + $pNumCols); + } + + // Create new row reference + if ($updateRow) { + $newRow = $newRow + $pNumRows; + } + + // Return new reference + return $newColumn . $newRow; + } else { + throw new PHPExcel_Exception("Only single cell references may be passed to this method."); + } + } + + /** + * __clone implementation. Cloning should not be allowed in a Singleton! + * + * @throws PHPExcel_Exception + */ + final public function __clone() + { + throw new PHPExcel_Exception("Cloning a Singleton is not allowed!"); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText.php new file mode 100644 index 0000000..74a3534 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText.php @@ -0,0 +1,191 @@ +<?php + +/** + * PHPExcel_RichText + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_RichText implements PHPExcel_IComparable +{ + /** + * Rich text elements + * + * @var PHPExcel_RichText_ITextElement[] + */ + private $richTextElements; + + /** + * Create a new PHPExcel_RichText instance + * + * @param PHPExcel_Cell $pCell + * @throws PHPExcel_Exception + */ + public function __construct(PHPExcel_Cell $pCell = null) + { + // Initialise variables + $this->richTextElements = array(); + + // Rich-Text string attached to cell? + if ($pCell !== null) { + // Add cell text and style + if ($pCell->getValue() != "") { + $objRun = new PHPExcel_RichText_Run($pCell->getValue()); + $objRun->setFont(clone $pCell->getParent()->getStyle($pCell->getCoordinate())->getFont()); + $this->addText($objRun); + } + + // Set parent value + $pCell->setValueExplicit($this, PHPExcel_Cell_DataType::TYPE_STRING); + } + } + + /** + * Add text + * + * @param PHPExcel_RichText_ITextElement $pText Rich text element + * @throws PHPExcel_Exception + * @return PHPExcel_RichText + */ + public function addText(PHPExcel_RichText_ITextElement $pText = null) + { + $this->richTextElements[] = $pText; + return $this; + } + + /** + * Create text + * + * @param string $pText Text + * @return PHPExcel_RichText_TextElement + * @throws PHPExcel_Exception + */ + public function createText($pText = '') + { + $objText = new PHPExcel_RichText_TextElement($pText); + $this->addText($objText); + return $objText; + } + + /** + * Create text run + * + * @param string $pText Text + * @return PHPExcel_RichText_Run + * @throws PHPExcel_Exception + */ + public function createTextRun($pText = '') + { + $objText = new PHPExcel_RichText_Run($pText); + $this->addText($objText); + return $objText; + } + + /** + * Get plain text + * + * @return string + */ + public function getPlainText() + { + // Return value + $returnValue = ''; + + // Loop through all PHPExcel_RichText_ITextElement + foreach ($this->richTextElements as $text) { + $returnValue .= $text->getText(); + } + + // Return + return $returnValue; + } + + /** + * Convert to string + * + * @return string + */ + public function __toString() + { + return $this->getPlainText(); + } + + /** + * Get Rich Text elements + * + * @return PHPExcel_RichText_ITextElement[] + */ + public function getRichTextElements() + { + return $this->richTextElements; + } + + /** + * Set Rich Text elements + * + * @param PHPExcel_RichText_ITextElement[] $pElements Array of elements + * @throws PHPExcel_Exception + * @return PHPExcel_RichText + */ + public function setRichTextElements($pElements = null) + { + if (is_array($pElements)) { + $this->richTextElements = $pElements; + } else { + throw new PHPExcel_Exception("Invalid PHPExcel_RichText_ITextElement[] array passed."); + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + $hashElements = ''; + foreach ($this->richTextElements as $element) { + $hashElements .= $element->getHashCode(); + } + + return md5( + $hashElements . + __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/ITextElement.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/ITextElement.php new file mode 100644 index 0000000..5db3432 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/ITextElement.php @@ -0,0 +1,56 @@ +<?php + +/** + * PHPExcel_RichText_ITextElement + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +interface PHPExcel_RichText_ITextElement +{ + /** + * Get text + * + * @return string Text + */ + public function getText(); + + /** + * Set text + * + * @param $pText string Text + * @return PHPExcel_RichText_ITextElement + */ + public function setText($pText = ''); + + /** + * Get font + * + * @return PHPExcel_Style_Font + */ + public function getFont(); + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode(); +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/Run.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/Run.php new file mode 100644 index 0000000..5737bb0 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/Run.php @@ -0,0 +1,98 @@ +<?php + +/** + * PHPExcel_RichText_Run + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_RichText_Run extends PHPExcel_RichText_TextElement implements PHPExcel_RichText_ITextElement +{ + /** + * Font + * + * @var PHPExcel_Style_Font + */ + private $font; + + /** + * Create a new PHPExcel_RichText_Run instance + * + * @param string $pText Text + */ + public function __construct($pText = '') + { + // Initialise variables + $this->setText($pText); + $this->font = new PHPExcel_Style_Font(); + } + + /** + * Get font + * + * @return PHPExcel_Style_Font + */ + public function getFont() + { + return $this->font; + } + + /** + * Set font + * + * @param PHPExcel_Style_Font $pFont Font + * @throws PHPExcel_Exception + * @return PHPExcel_RichText_ITextElement + */ + public function setFont(PHPExcel_Style_Font $pFont = null) + { + $this->font = $pFont; + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + return md5( + $this->getText() . + $this->font->getHashCode() . + __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/TextElement.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/TextElement.php new file mode 100644 index 0000000..f86e703 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/TextElement.php @@ -0,0 +1,105 @@ +<?php + +/** + * PHPExcel_RichText_TextElement + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_RichText_TextElement implements PHPExcel_RichText_ITextElement +{ + /** + * Text + * + * @var string + */ + private $text; + + /** + * Create a new PHPExcel_RichText_TextElement instance + * + * @param string $pText Text + */ + public function __construct($pText = '') + { + // Initialise variables + $this->text = $pText; + } + + /** + * Get text + * + * @return string Text + */ + public function getText() + { + return $this->text; + } + + /** + * Set text + * + * @param $pText string Text + * @return PHPExcel_RichText_ITextElement + */ + public function setText($pText = '') + { + $this->text = $pText; + return $this; + } + + /** + * Get font + * + * @return PHPExcel_Style_Font + */ + public function getFont() + { + return null; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + return md5( + $this->text . + __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/_notes/dwsync.xml new file mode 100644 index 0000000..9e03d18 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/RichText/_notes/dwsync.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="ITextElement.php" server="62.244.88.21/deciday/" local="131919461890232351" remote="131880384600000000" Dst="1" /> +<file name="Run.php" server="62.244.88.21/deciday/" local="131919461890635703" remote="131880384600000000" Dst="1" /> +<file name="TextElement.php" server="62.244.88.21/deciday/" local="131919461891172654" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Settings.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Settings.php new file mode 100644 index 0000000..dcbc89f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Settings.php @@ -0,0 +1,389 @@ +<?php + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Settings + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Settings + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Settings +{ + /** constants */ + /** Available Zip library classes */ + const PCLZIP = 'PHPExcel_Shared_ZipArchive'; + const ZIPARCHIVE = 'ZipArchive'; + + /** Optional Chart Rendering libraries */ + const CHART_RENDERER_JPGRAPH = 'jpgraph'; + + /** Optional PDF Rendering libraries */ + const PDF_RENDERER_TCPDF = 'tcPDF'; + const PDF_RENDERER_DOMPDF = 'DomPDF'; + const PDF_RENDERER_MPDF = 'mPDF'; + + + private static $chartRenderers = array( + self::CHART_RENDERER_JPGRAPH, + ); + + private static $pdfRenderers = array( + self::PDF_RENDERER_TCPDF, + self::PDF_RENDERER_DOMPDF, + self::PDF_RENDERER_MPDF, + ); + + + /** + * Name of the class used for Zip file management + * e.g. + * ZipArchive + * + * @var string + */ + private static $zipClass = self::ZIPARCHIVE; + + + /** + * Name of the external Library used for rendering charts + * e.g. + * jpgraph + * + * @var string + */ + private static $chartRendererName; + + /** + * Directory Path to the external Library used for rendering charts + * + * @var string + */ + private static $chartRendererPath; + + + /** + * Name of the external Library used for rendering PDF files + * e.g. + * mPDF + * + * @var string + */ + private static $pdfRendererName; + + /** + * Directory Path to the external Library used for rendering PDF files + * + * @var string + */ + private static $pdfRendererPath; + + /** + * Default options for libxml loader + * + * @var int + */ + private static $libXmlLoaderOptions = null; + + /** + * Set the Zip handler Class that PHPExcel should use for Zip file management (PCLZip or ZipArchive) + * + * @param string $zipClass The Zip handler class that PHPExcel should use for Zip file management + * e.g. PHPExcel_Settings::PCLZip or PHPExcel_Settings::ZipArchive + * @return boolean Success or failure + */ + public static function setZipClass($zipClass) + { + if (($zipClass === self::PCLZIP) || + ($zipClass === self::ZIPARCHIVE)) { + self::$zipClass = $zipClass; + return true; + } + return false; + } + + + /** + * Return the name of the Zip handler Class that PHPExcel is configured to use (PCLZip or ZipArchive) + * or Zip file management + * + * @return string Name of the Zip handler Class that PHPExcel is configured to use + * for Zip file management + * e.g. PHPExcel_Settings::PCLZip or PHPExcel_Settings::ZipArchive + */ + public static function getZipClass() + { + return self::$zipClass; + } + + + /** + * Return the name of the method that is currently configured for cell cacheing + * + * @return string Name of the cacheing method + */ + public static function getCacheStorageMethod() + { + return PHPExcel_CachedObjectStorageFactory::getCacheStorageMethod(); + } + + + /** + * Return the name of the class that is currently being used for cell cacheing + * + * @return string Name of the class currently being used for cacheing + */ + public static function getCacheStorageClass() + { + return PHPExcel_CachedObjectStorageFactory::getCacheStorageClass(); + } + + + /** + * Set the method that should be used for cell cacheing + * + * @param string $method Name of the cacheing method + * @param array $arguments Optional configuration arguments for the cacheing method + * @return boolean Success or failure + */ + public static function setCacheStorageMethod($method = PHPExcel_CachedObjectStorageFactory::cache_in_memory, $arguments = array()) + { + return PHPExcel_CachedObjectStorageFactory::initialize($method, $arguments); + } + + + /** + * Set the locale code to use for formula translations and any special formatting + * + * @param string $locale The locale code to use (e.g. "fr" or "pt_br" or "en_uk") + * @return boolean Success or failure + */ + public static function setLocale($locale = 'en_us') + { + return PHPExcel_Calculation::getInstance()->setLocale($locale); + } + + + /** + * Set details of the external library that PHPExcel should use for rendering charts + * + * @param string $libraryName Internal reference name of the library + * e.g. PHPExcel_Settings::CHART_RENDERER_JPGRAPH + * @param string $libraryBaseDir Directory path to the library's base folder + * + * @return boolean Success or failure + */ + public static function setChartRenderer($libraryName, $libraryBaseDir) + { + if (!self::setChartRendererName($libraryName)) { + return false; + } + return self::setChartRendererPath($libraryBaseDir); + } + + + /** + * Identify to PHPExcel the external library to use for rendering charts + * + * @param string $libraryName Internal reference name of the library + * e.g. PHPExcel_Settings::CHART_RENDERER_JPGRAPH + * + * @return boolean Success or failure + */ + public static function setChartRendererName($libraryName) + { + if (!in_array($libraryName, self::$chartRenderers)) { + return false; + } + self::$chartRendererName = $libraryName; + + return true; + } + + + /** + * Tell PHPExcel where to find the external library to use for rendering charts + * + * @param string $libraryBaseDir Directory path to the library's base folder + * @return boolean Success or failure + */ + public static function setChartRendererPath($libraryBaseDir) + { + if ((file_exists($libraryBaseDir) === false) || (is_readable($libraryBaseDir) === false)) { + return false; + } + self::$chartRendererPath = $libraryBaseDir; + + return true; + } + + + /** + * Return the Chart Rendering Library that PHPExcel is currently configured to use (e.g. jpgraph) + * + * @return string|NULL Internal reference name of the Chart Rendering Library that PHPExcel is + * currently configured to use + * e.g. PHPExcel_Settings::CHART_RENDERER_JPGRAPH + */ + public static function getChartRendererName() + { + return self::$chartRendererName; + } + + + /** + * Return the directory path to the Chart Rendering Library that PHPExcel is currently configured to use + * + * @return string|NULL Directory Path to the Chart Rendering Library that PHPExcel is + * currently configured to use + */ + public static function getChartRendererPath() + { + return self::$chartRendererPath; + } + + + /** + * Set details of the external library that PHPExcel should use for rendering PDF files + * + * @param string $libraryName Internal reference name of the library + * e.g. PHPExcel_Settings::PDF_RENDERER_TCPDF, + * PHPExcel_Settings::PDF_RENDERER_DOMPDF + * or PHPExcel_Settings::PDF_RENDERER_MPDF + * @param string $libraryBaseDir Directory path to the library's base folder + * + * @return boolean Success or failure + */ + public static function setPdfRenderer($libraryName, $libraryBaseDir) + { + if (!self::setPdfRendererName($libraryName)) { + return false; + } + return self::setPdfRendererPath($libraryBaseDir); + } + + + /** + * Identify to PHPExcel the external library to use for rendering PDF files + * + * @param string $libraryName Internal reference name of the library + * e.g. PHPExcel_Settings::PDF_RENDERER_TCPDF, + * PHPExcel_Settings::PDF_RENDERER_DOMPDF + * or PHPExcel_Settings::PDF_RENDERER_MPDF + * + * @return boolean Success or failure + */ + public static function setPdfRendererName($libraryName) + { + if (!in_array($libraryName, self::$pdfRenderers)) { + return false; + } + self::$pdfRendererName = $libraryName; + + return true; + } + + + /** + * Tell PHPExcel where to find the external library to use for rendering PDF files + * + * @param string $libraryBaseDir Directory path to the library's base folder + * @return boolean Success or failure + */ + public static function setPdfRendererPath($libraryBaseDir) + { + if ((file_exists($libraryBaseDir) === false) || (is_readable($libraryBaseDir) === false)) { + return false; + } + self::$pdfRendererPath = $libraryBaseDir; + + return true; + } + + + /** + * Return the PDF Rendering Library that PHPExcel is currently configured to use (e.g. dompdf) + * + * @return string|NULL Internal reference name of the PDF Rendering Library that PHPExcel is + * currently configured to use + * e.g. PHPExcel_Settings::PDF_RENDERER_TCPDF, + * PHPExcel_Settings::PDF_RENDERER_DOMPDF + * or PHPExcel_Settings::PDF_RENDERER_MPDF + */ + public static function getPdfRendererName() + { + return self::$pdfRendererName; + } + + /** + * Return the directory path to the PDF Rendering Library that PHPExcel is currently configured to use + * + * @return string|NULL Directory Path to the PDF Rendering Library that PHPExcel is + * currently configured to use + */ + public static function getPdfRendererPath() + { + return self::$pdfRendererPath; + } + + /** + * Set options for libxml loader + * + * @param int $options Options for libxml loader + */ + public static function setLibXmlLoaderOptions($options = null) + { + if (is_null($options) && defined('LIBXML_DTDLOAD')) { + $options = LIBXML_DTDLOAD | LIBXML_DTDATTR; + } + if (version_compare(PHP_VERSION, '5.2.11') >= 0) { + @libxml_disable_entity_loader((bool) $options); + } + self::$libXmlLoaderOptions = $options; + } + + /** + * Get defined options for libxml loader. + * Defaults to LIBXML_DTDLOAD | LIBXML_DTDATTR when not set explicitly. + * + * @return int Default options for libxml loader + */ + public static function getLibXmlLoaderOptions() + { + if (is_null(self::$libXmlLoaderOptions) && defined('LIBXML_DTDLOAD')) { + self::setLibXmlLoaderOptions(LIBXML_DTDLOAD | LIBXML_DTDATTR); + } elseif (is_null(self::$libXmlLoaderOptions)) { + self::$libXmlLoaderOptions = true; + } + if (version_compare(PHP_VERSION, '5.2.11') >= 0) { + @libxml_disable_entity_loader((bool) self::$libXmlLoaderOptions); + } + return self::$libXmlLoaderOptions; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/CodePage.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/CodePage.php new file mode 100644 index 0000000..b3e440e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/CodePage.php @@ -0,0 +1,156 @@ +<?php + +/** + * PHPExcel_Shared_CodePage + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_CodePage +{ + /** + * Convert Microsoft Code Page Identifier to Code Page Name which iconv + * and mbstring understands + * + * @param integer $codePage Microsoft Code Page Indentifier + * @return string Code Page Name + * @throws PHPExcel_Exception + */ + public static function NumberToName($codePage = 1252) + { + switch ($codePage) { + case 367: + return 'ASCII'; // ASCII + case 437: + return 'CP437'; // OEM US + case 720: + throw new PHPExcel_Exception('Code page 720 not supported.'); // OEM Arabic + case 737: + return 'CP737'; // OEM Greek + case 775: + return 'CP775'; // OEM Baltic + case 850: + return 'CP850'; // OEM Latin I + case 852: + return 'CP852'; // OEM Latin II (Central European) + case 855: + return 'CP855'; // OEM Cyrillic + case 857: + return 'CP857'; // OEM Turkish + case 858: + return 'CP858'; // OEM Multilingual Latin I with Euro + case 860: + return 'CP860'; // OEM Portugese + case 861: + return 'CP861'; // OEM Icelandic + case 862: + return 'CP862'; // OEM Hebrew + case 863: + return 'CP863'; // OEM Canadian (French) + case 864: + return 'CP864'; // OEM Arabic + case 865: + return 'CP865'; // OEM Nordic + case 866: + return 'CP866'; // OEM Cyrillic (Russian) + case 869: + return 'CP869'; // OEM Greek (Modern) + case 874: + return 'CP874'; // ANSI Thai + case 932: + return 'CP932'; // ANSI Japanese Shift-JIS + case 936: + return 'CP936'; // ANSI Chinese Simplified GBK + case 949: + return 'CP949'; // ANSI Korean (Wansung) + case 950: + return 'CP950'; // ANSI Chinese Traditional BIG5 + case 1200: + return 'UTF-16LE'; // UTF-16 (BIFF8) + case 1250: + return 'CP1250'; // ANSI Latin II (Central European) + case 1251: + return 'CP1251'; // ANSI Cyrillic + case 0: + // CodePage is not always correctly set when the xls file was saved by Apple's Numbers program + case 1252: + return 'CP1252'; // ANSI Latin I (BIFF4-BIFF7) + case 1253: + return 'CP1253'; // ANSI Greek + case 1254: + return 'CP1254'; // ANSI Turkish + case 1255: + return 'CP1255'; // ANSI Hebrew + case 1256: + return 'CP1256'; // ANSI Arabic + case 1257: + return 'CP1257'; // ANSI Baltic + case 1258: + return 'CP1258'; // ANSI Vietnamese + case 1361: + return 'CP1361'; // ANSI Korean (Johab) + case 10000: + return 'MAC'; // Apple Roman + case 10001: + return 'CP932'; // Macintosh Japanese + case 10002: + return 'CP950'; // Macintosh Chinese Traditional + case 10003: + return 'CP1361'; // Macintosh Korean + case 10004: + return 'MACARABIC'; // Apple Arabic + case 10005: + return 'MACHEBREW'; // Apple Hebrew + case 10006: + return 'MACGREEK'; // Macintosh Greek + case 10007: + return 'MACCYRILLIC'; // Macintosh Cyrillic + case 10008: + return 'CP936'; // Macintosh - Simplified Chinese (GB 2312) + case 10010: + return 'MACROMANIA'; // Macintosh Romania + case 10017: + return 'MACUKRAINE'; // Macintosh Ukraine + case 10021: + return 'MACTHAI'; // Macintosh Thai + case 10029: + return 'MACCENTRALEUROPE'; // Macintosh Central Europe + case 10079: + return 'MACICELAND'; // Macintosh Icelandic + case 10081: + return 'MACTURKISH'; // Macintosh Turkish + case 10082: + return 'MACCROATIAN'; // Macintosh Croatian + case 21010: + return 'UTF-16LE'; // UTF-16 (BIFF8) This isn't correct, but some Excel writer libraries erroneously use Codepage 21010 for UTF-16LE + case 32768: + return 'MAC'; // Apple Roman + case 32769: + throw new PHPExcel_Exception('Code page 32769 not supported.'); // ANSI Latin I (BIFF2-BIFF3) + case 65000: + return 'UTF-7'; // Unicode (UTF-7) + case 65001: + return 'UTF-8'; // Unicode (UTF-8) + } + throw new PHPExcel_Exception('Unknown codepage: ' . $codePage); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Date.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Date.php new file mode 100644 index 0000000..b00a39a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Date.php @@ -0,0 +1,418 @@ +<?php + +/** + * PHPExcel_Shared_Date + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_Date +{ + /** constants */ + const CALENDAR_WINDOWS_1900 = 1900; // Base date of 1st Jan 1900 = 1.0 + const CALENDAR_MAC_1904 = 1904; // Base date of 2nd Jan 1904 = 1.0 + + /* + * Names of the months of the year, indexed by shortname + * Planned usage for locale settings + * + * @public + * @var string[] + */ + public static $monthNames = array( + 'Jan' => 'January', + 'Feb' => 'February', + 'Mar' => 'March', + 'Apr' => 'April', + 'May' => 'May', + 'Jun' => 'June', + 'Jul' => 'July', + 'Aug' => 'August', + 'Sep' => 'September', + 'Oct' => 'October', + 'Nov' => 'November', + 'Dec' => 'December', + ); + + /* + * Names of the months of the year, indexed by shortname + * Planned usage for locale settings + * + * @public + * @var string[] + */ + public static $numberSuffixes = array( + 'st', + 'nd', + 'rd', + 'th', + ); + + /* + * Base calendar year to use for calculations + * + * @private + * @var int + */ + protected static $excelBaseDate = self::CALENDAR_WINDOWS_1900; + + /** + * Set the Excel calendar (Windows 1900 or Mac 1904) + * + * @param integer $baseDate Excel base date (1900 or 1904) + * @return boolean Success or failure + */ + public static function setExcelCalendar($baseDate) + { + if (($baseDate == self::CALENDAR_WINDOWS_1900) || + ($baseDate == self::CALENDAR_MAC_1904)) { + self::$excelBaseDate = $baseDate; + return true; + } + return false; + } + + + /** + * Return the Excel calendar (Windows 1900 or Mac 1904) + * + * @return integer Excel base date (1900 or 1904) + */ + public static function getExcelCalendar() + { + return self::$excelBaseDate; + } + + + /** + * Convert a date from Excel to PHP + * + * @param integer $dateValue Excel date/time value + * @param boolean $adjustToTimezone Flag indicating whether $dateValue should be treated as + * a UST timestamp, or adjusted to UST + * @param string $timezone The timezone for finding the adjustment from UST + * @return integer PHP serialized date/time + */ + public static function ExcelToPHP($dateValue = 0, $adjustToTimezone = false, $timezone = null) + { + if (self::$excelBaseDate == self::CALENDAR_WINDOWS_1900) { + $myexcelBaseDate = 25569; + // Adjust for the spurious 29-Feb-1900 (Day 60) + if ($dateValue < 60) { + --$myexcelBaseDate; + } + } else { + $myexcelBaseDate = 24107; + } + + // Perform conversion + if ($dateValue >= 1) { + $utcDays = $dateValue - $myexcelBaseDate; + $returnValue = round($utcDays * 86400); + if (($returnValue <= PHP_INT_MAX) && ($returnValue >= -PHP_INT_MAX)) { + $returnValue = (integer) $returnValue; + } + } else { + $hours = round($dateValue * 24); + $mins = round($dateValue * 1440) - round($hours * 60); + $secs = round($dateValue * 86400) - round($hours * 3600) - round($mins * 60); + $returnValue = (integer) gmmktime($hours, $mins, $secs); + } + + $timezoneAdjustment = ($adjustToTimezone) ? + PHPExcel_Shared_TimeZone::getTimezoneAdjustment($timezone, $returnValue) : + 0; + + return $returnValue + $timezoneAdjustment; + } + + + /** + * Convert a date from Excel to a PHP Date/Time object + * + * @param integer $dateValue Excel date/time value + * @return DateTime PHP date/time object + */ + public static function ExcelToPHPObject($dateValue = 0) + { + $dateTime = self::ExcelToPHP($dateValue); + $days = floor($dateTime / 86400); + $time = round((($dateTime / 86400) - $days) * 86400); + $hours = round($time / 3600); + $minutes = round($time / 60) - ($hours * 60); + $seconds = round($time) - ($hours * 3600) - ($minutes * 60); + + $dateObj = date_create('1-Jan-1970+'.$days.' days'); + $dateObj->setTime($hours, $minutes, $seconds); + + return $dateObj; + } + + + /** + * Convert a date from PHP to Excel + * + * @param mixed $dateValue PHP serialized date/time or date object + * @param boolean $adjustToTimezone Flag indicating whether $dateValue should be treated as + * a UST timestamp, or adjusted to UST + * @param string $timezone The timezone for finding the adjustment from UST + * @return mixed Excel date/time value + * or boolean FALSE on failure + */ + public static function PHPToExcel($dateValue = 0, $adjustToTimezone = false, $timezone = null) + { + $saveTimeZone = date_default_timezone_get(); + date_default_timezone_set('UTC'); + + $timezoneAdjustment = ($adjustToTimezone) ? + PHPExcel_Shared_TimeZone::getTimezoneAdjustment($timezone ? $timezone : $saveTimeZone, $dateValue) : + 0; + + $retValue = false; + if ((is_object($dateValue)) && ($dateValue instanceof DateTime)) { + $dateValue->add(new DateInterval('PT' . $timezoneAdjustment . 'S')); + $retValue = self::FormattedPHPToExcel($dateValue->format('Y'), $dateValue->format('m'), $dateValue->format('d'), $dateValue->format('H'), $dateValue->format('i'), $dateValue->format('s')); + } elseif (is_numeric($dateValue)) { + $dateValue += $timezoneAdjustment; + $retValue = self::FormattedPHPToExcel(date('Y', $dateValue), date('m', $dateValue), date('d', $dateValue), date('H', $dateValue), date('i', $dateValue), date('s', $dateValue)); + } elseif (is_string($dateValue)) { + $retValue = self::stringToExcel($dateValue); + } + date_default_timezone_set($saveTimeZone); + + return $retValue; + } + + + /** + * FormattedPHPToExcel + * + * @param integer $year + * @param integer $month + * @param integer $day + * @param integer $hours + * @param integer $minutes + * @param integer $seconds + * @return integer Excel date/time value + */ + public static function FormattedPHPToExcel($year, $month, $day, $hours = 0, $minutes = 0, $seconds = 0) + { + if (self::$excelBaseDate == self::CALENDAR_WINDOWS_1900) { + // + // Fudge factor for the erroneous fact that the year 1900 is treated as a Leap Year in MS Excel + // This affects every date following 28th February 1900 + // + $excel1900isLeapYear = true; + if (($year == 1900) && ($month <= 2)) { + $excel1900isLeapYear = false; + } + $myexcelBaseDate = 2415020; + } else { + $myexcelBaseDate = 2416481; + $excel1900isLeapYear = false; + } + + // Julian base date Adjustment + if ($month > 2) { + $month -= 3; + } else { + $month += 9; + --$year; + } + + // Calculate the Julian Date, then subtract the Excel base date (JD 2415020 = 31-Dec-1899 Giving Excel Date of 0) + $century = substr($year, 0, 2); + $decade = substr($year, 2, 2); + $excelDate = floor((146097 * $century) / 4) + floor((1461 * $decade) / 4) + floor((153 * $month + 2) / 5) + $day + 1721119 - $myexcelBaseDate + $excel1900isLeapYear; + + $excelTime = (($hours * 3600) + ($minutes * 60) + $seconds) / 86400; + + return (float) $excelDate + $excelTime; + } + + + /** + * Is a given cell a date/time? + * + * @param PHPExcel_Cell $pCell + * @return boolean + */ + public static function isDateTime(PHPExcel_Cell $pCell) + { + return self::isDateTimeFormat( + $pCell->getWorksheet()->getStyle( + $pCell->getCoordinate() + )->getNumberFormat() + ); + } + + + /** + * Is a given number format a date/time? + * + * @param PHPExcel_Style_NumberFormat $pFormat + * @return boolean + */ + public static function isDateTimeFormat(PHPExcel_Style_NumberFormat $pFormat) + { + return self::isDateTimeFormatCode($pFormat->getFormatCode()); + } + + + private static $possibleDateFormatCharacters = 'eymdHs'; + + /** + * Is a given number format code a date/time? + * + * @param string $pFormatCode + * @return boolean + */ + public static function isDateTimeFormatCode($pFormatCode = '') + { + if (strtolower($pFormatCode) === strtolower(PHPExcel_Style_NumberFormat::FORMAT_GENERAL)) { + // "General" contains an epoch letter 'e', so we trap for it explicitly here (case-insensitive check) + return false; + } + if (preg_match('/[0#]E[+-]0/i', $pFormatCode)) { + // Scientific format + return false; + } + + // Switch on formatcode + switch ($pFormatCode) { + // Explicitly defined date formats + case PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_DDMMYYYY: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_DMYSLASH: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_DMYMINUS: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_DMMINUS: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_MYMINUS: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_DATETIME: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME1: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME2: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME3: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME5: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME6: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME7: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME8: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX14: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX16: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX17: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX22: + return true; + } + + // Typically number, currency or accounting (or occasionally fraction) formats + if ((substr($pFormatCode, 0, 1) == '_') || (substr($pFormatCode, 0, 2) == '0 ')) { + return false; + } + // Try checking for any of the date formatting characters that don't appear within square braces + if (preg_match('/(^|\])[^\[]*['.self::$possibleDateFormatCharacters.']/i', $pFormatCode)) { + // We might also have a format mask containing quoted strings... + // we don't want to test for any of our characters within the quoted blocks + if (strpos($pFormatCode, '"') !== false) { + $segMatcher = false; + foreach (explode('"', $pFormatCode) as $subVal) { + // Only test in alternate array entries (the non-quoted blocks) + if (($segMatcher = !$segMatcher) && + (preg_match('/(^|\])[^\[]*['.self::$possibleDateFormatCharacters.']/i', $subVal))) { + return true; + } + } + return false; + } + return true; + } + + // No date... + return false; + } + + + /** + * Convert a date/time string to Excel time + * + * @param string $dateValue Examples: '2009-12-31', '2009-12-31 15:59', '2009-12-31 15:59:10' + * @return float|FALSE Excel date/time serial value + */ + public static function stringToExcel($dateValue = '') + { + if (strlen($dateValue) < 2) { + return false; + } + if (!preg_match('/^(\d{1,4}[ \.\/\-][A-Z]{3,9}([ \.\/\-]\d{1,4})?|[A-Z]{3,9}[ \.\/\-]\d{1,4}([ \.\/\-]\d{1,4})?|\d{1,4}[ \.\/\-]\d{1,4}([ \.\/\-]\d{1,4})?)( \d{1,2}:\d{1,2}(:\d{1,2})?)?$/iu', $dateValue)) { + return false; + } + + $dateValueNew = PHPExcel_Calculation_DateTime::DATEVALUE($dateValue); + + if ($dateValueNew === PHPExcel_Calculation_Functions::VALUE()) { + return false; + } + + if (strpos($dateValue, ':') !== false) { + $timeValue = PHPExcel_Calculation_DateTime::TIMEVALUE($dateValue); + if ($timeValue === PHPExcel_Calculation_Functions::VALUE()) { + return false; + } + $dateValueNew += $timeValue; + } + return $dateValueNew; + } + + /** + * Converts a month name (either a long or a short name) to a month number + * + * @param string $month Month name or abbreviation + * @return integer|string Month number (1 - 12), or the original string argument if it isn't a valid month name + */ + public static function monthStringToNumber($month) + { + $monthIndex = 1; + foreach (self::$monthNames as $shortMonthName => $longMonthName) { + if (($month === $longMonthName) || ($month === $shortMonthName)) { + return $monthIndex; + } + ++$monthIndex; + } + return $month; + } + + /** + * Strips an ordinal froma numeric value + * + * @param string $day Day number with an ordinal + * @return integer|string The integer value with any ordinal stripped, or the original string argument if it isn't a valid numeric + */ + public static function dayStringToNumber($day) + { + $strippedDayValue = (str_replace(self::$numberSuffixes, '', $day)); + if (is_numeric($strippedDayValue)) { + return (integer) $strippedDayValue; + } + return $day; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Drawing.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Drawing.php new file mode 100644 index 0000000..3e027b4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Drawing.php @@ -0,0 +1,270 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Shared_Drawing + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Drawing +{ + /** + * Convert pixels to EMU + * + * @param int $pValue Value in pixels + * @return int Value in EMU + */ + public static function pixelsToEMU($pValue = 0) + { + return round($pValue * 9525); + } + + /** + * Convert EMU to pixels + * + * @param int $pValue Value in EMU + * @return int Value in pixels + */ + public static function EMUToPixels($pValue = 0) + { + if ($pValue != 0) { + return round($pValue / 9525); + } else { + return 0; + } + } + + /** + * Convert pixels to column width. Exact algorithm not known. + * By inspection of a real Excel file using Calibri 11, one finds 1000px ~ 142.85546875 + * This gives a conversion factor of 7. Also, we assume that pixels and font size are proportional. + * + * @param int $pValue Value in pixels + * @param PHPExcel_Style_Font $pDefaultFont Default font of the workbook + * @return int Value in cell dimension + */ + public static function pixelsToCellDimension($pValue = 0, PHPExcel_Style_Font $pDefaultFont) + { + // Font name and size + $name = $pDefaultFont->getName(); + $size = $pDefaultFont->getSize(); + + if (isset(PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size])) { + // Exact width can be determined + $colWidth = $pValue * PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size]['width'] / PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size]['px']; + } else { + // We don't have data for this particular font and size, use approximation by + // extrapolating from Calibri 11 + $colWidth = $pValue * 11 * PHPExcel_Shared_Font::$defaultColumnWidths['Calibri'][11]['width'] / PHPExcel_Shared_Font::$defaultColumnWidths['Calibri'][11]['px'] / $size; + } + + return $colWidth; + } + + /** + * Convert column width from (intrinsic) Excel units to pixels + * + * @param float $pValue Value in cell dimension + * @param PHPExcel_Style_Font $pDefaultFont Default font of the workbook + * @return int Value in pixels + */ + public static function cellDimensionToPixels($pValue = 0, PHPExcel_Style_Font $pDefaultFont) + { + // Font name and size + $name = $pDefaultFont->getName(); + $size = $pDefaultFont->getSize(); + + if (isset(PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size])) { + // Exact width can be determined + $colWidth = $pValue * PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size]['px'] / PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size]['width']; + } else { + // We don't have data for this particular font and size, use approximation by + // extrapolating from Calibri 11 + $colWidth = $pValue * $size * PHPExcel_Shared_Font::$defaultColumnWidths['Calibri'][11]['px'] / PHPExcel_Shared_Font::$defaultColumnWidths['Calibri'][11]['width'] / 11; + } + + // Round pixels to closest integer + $colWidth = (int) round($colWidth); + + return $colWidth; + } + + /** + * Convert pixels to points + * + * @param int $pValue Value in pixels + * @return int Value in points + */ + public static function pixelsToPoints($pValue = 0) + { + return $pValue * 0.67777777; + } + + /** + * Convert points to pixels + * + * @param int $pValue Value in points + * @return int Value in pixels + */ + public static function pointsToPixels($pValue = 0) + { + if ($pValue != 0) { + return (int) ceil($pValue * 1.333333333); + } else { + return 0; + } + } + + /** + * Convert degrees to angle + * + * @param int $pValue Degrees + * @return int Angle + */ + public static function degreesToAngle($pValue = 0) + { + return (int)round($pValue * 60000); + } + + /** + * Convert angle to degrees + * + * @param int $pValue Angle + * @return int Degrees + */ + public static function angleToDegrees($pValue = 0) + { + if ($pValue != 0) { + return round($pValue / 60000); + } else { + return 0; + } + } + + /** + * Create a new image from file. By alexander at alexauto dot nl + * + * @link http://www.php.net/manual/en/function.imagecreatefromwbmp.php#86214 + * @param string $filename Path to Windows DIB (BMP) image + * @return resource + */ + public static function imagecreatefrombmp($p_sFile) + { + // Load the image into a string + $file = fopen($p_sFile, "rb"); + $read = fread($file, 10); + while (!feof($file) && ($read<>"")) { + $read .= fread($file, 1024); + } + + $temp = unpack("H*", $read); + $hex = $temp[1]; + $header = substr($hex, 0, 108); + + // Process the header + // Structure: http://www.fastgraph.com/help/bmp_header_format.html + if (substr($header, 0, 4)=="424d") { + // Cut it in parts of 2 bytes + $header_parts = str_split($header, 2); + + // Get the width 4 bytes + $width = hexdec($header_parts[19].$header_parts[18]); + + // Get the height 4 bytes + $height = hexdec($header_parts[23].$header_parts[22]); + + // Unset the header params + unset($header_parts); + } + + // Define starting X and Y + $x = 0; + $y = 1; + + // Create newimage + $image = imagecreatetruecolor($width, $height); + + // Grab the body from the image + $body = substr($hex, 108); + + // Calculate if padding at the end-line is needed + // Divided by two to keep overview. + // 1 byte = 2 HEX-chars + $body_size = (strlen($body)/2); + $header_size = ($width*$height); + + // Use end-line padding? Only when needed + $usePadding = ($body_size>($header_size*3)+4); + + // Using a for-loop with index-calculation instaid of str_split to avoid large memory consumption + // Calculate the next DWORD-position in the body + for ($i = 0; $i < $body_size; $i += 3) { + // Calculate line-ending and padding + if ($x >= $width) { + // If padding needed, ignore image-padding + // Shift i to the ending of the current 32-bit-block + if ($usePadding) { + $i += $width%4; + } + + // Reset horizontal position + $x = 0; + + // Raise the height-position (bottom-up) + $y++; + + // Reached the image-height? Break the for-loop + if ($y > $height) { + break; + } + } + + // Calculation of the RGB-pixel (defined as BGR in image-data) + // Define $i_pos as absolute position in the body + $i_pos = $i * 2; + $r = hexdec($body[$i_pos+4].$body[$i_pos+5]); + $g = hexdec($body[$i_pos+2].$body[$i_pos+3]); + $b = hexdec($body[$i_pos].$body[$i_pos+1]); + + // Calculate and draw the pixel + $color = imagecolorallocate($image, $r, $g, $b); + imagesetpixel($image, $x, $height-$y, $color); + + // Raise the horizontal position + $x++; + } + + // Unset the body / free the memory + unset($body); + + // Return image-object + return $image; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher.php new file mode 100644 index 0000000..1aedb9d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher.php @@ -0,0 +1,83 @@ +<?php + +/** + * PHPExcel_Shared_Escher + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_Escher +{ + /** + * Drawing Group Container + * + * @var PHPExcel_Shared_Escher_DggContainer + */ + private $dggContainer; + + /** + * Drawing Container + * + * @var PHPExcel_Shared_Escher_DgContainer + */ + private $dgContainer; + + /** + * Get Drawing Group Container + * + * @return PHPExcel_Shared_Escher_DgContainer + */ + public function getDggContainer() + { + return $this->dggContainer; + } + + /** + * Set Drawing Group Container + * + * @param PHPExcel_Shared_Escher_DggContainer $dggContainer + */ + public function setDggContainer($dggContainer) + { + return $this->dggContainer = $dggContainer; + } + + /** + * Get Drawing Container + * + * @return PHPExcel_Shared_Escher_DgContainer + */ + public function getDgContainer() + { + return $this->dgContainer; + } + + /** + * Set Drawing Container + * + * @param PHPExcel_Shared_Escher_DgContainer $dgContainer + */ + public function setDgContainer($dgContainer) + { + return $this->dgContainer = $dgContainer; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer.php new file mode 100644 index 0000000..739cd90 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer.php @@ -0,0 +1,75 @@ +<?php + +/** + * PHPExcel_Shared_Escher_DgContainer + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_Escher_DgContainer +{ + /** + * Drawing index, 1-based. + * + * @var int + */ + private $dgId; + + /** + * Last shape index in this drawing + * + * @var int + */ + private $lastSpId; + + private $spgrContainer = null; + + public function getDgId() + { + return $this->dgId; + } + + public function setDgId($value) + { + $this->dgId = $value; + } + + public function getLastSpId() + { + return $this->lastSpId; + } + + public function setLastSpId($value) + { + $this->lastSpId = $value; + } + + public function getSpgrContainer() + { + return $this->spgrContainer; + } + + public function setSpgrContainer($spgrContainer) + { + return $this->spgrContainer = $spgrContainer; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php new file mode 100644 index 0000000..49e7d68 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php @@ -0,0 +1,102 @@ +<?php + +/** + * PHPExcel_Shared_Escher_DgContainer_SpgrContainer + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_Escher_DgContainer_SpgrContainer +{ + /** + * Parent Shape Group Container + * + * @var PHPExcel_Shared_Escher_DgContainer_SpgrContainer + */ + private $parent; + + /** + * Shape Container collection + * + * @var array + */ + private $children = array(); + + /** + * Set parent Shape Group Container + * + * @param PHPExcel_Shared_Escher_DgContainer_SpgrContainer $parent + */ + public function setParent($parent) + { + $this->parent = $parent; + } + + /** + * Get the parent Shape Group Container if any + * + * @return PHPExcel_Shared_Escher_DgContainer_SpgrContainer|null + */ + public function getParent() + { + return $this->parent; + } + + /** + * Add a child. This will be either spgrContainer or spContainer + * + * @param mixed $child + */ + public function addChild($child) + { + $this->children[] = $child; + $child->setParent($this); + } + + /** + * Get collection of Shape Containers + */ + public function getChildren() + { + return $this->children; + } + + /** + * Recursively get all spContainers within this spgrContainer + * + * @return PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer[] + */ + public function getAllSpContainers() + { + $allSpContainers = array(); + + foreach ($this->children as $child) { + if ($child instanceof PHPExcel_Shared_Escher_DgContainer_SpgrContainer) { + $allSpContainers = array_merge($allSpContainers, $child->getAllSpContainers()); + } else { + $allSpContainers[] = $child; + } + } + + return $allSpContainers; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php new file mode 100644 index 0000000..a1f1a46 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php @@ -0,0 +1,388 @@ +<?php + +/** + * PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer +{ + /** + * Parent Shape Group Container + * + * @var PHPExcel_Shared_Escher_DgContainer_SpgrContainer + */ + private $parent; + + /** + * Is this a group shape? + * + * @var boolean + */ + private $spgr = false; + + /** + * Shape type + * + * @var int + */ + private $spType; + + /** + * Shape flag + * + * @var int + */ + private $spFlag; + + /** + * Shape index (usually group shape has index 0, and the rest: 1,2,3...) + * + * @var boolean + */ + private $spId; + + /** + * Array of options + * + * @var array + */ + private $OPT; + + /** + * Cell coordinates of upper-left corner of shape, e.g. 'A1' + * + * @var string + */ + private $startCoordinates; + + /** + * Horizontal offset of upper-left corner of shape measured in 1/1024 of column width + * + * @var int + */ + private $startOffsetX; + + /** + * Vertical offset of upper-left corner of shape measured in 1/256 of row height + * + * @var int + */ + private $startOffsetY; + + /** + * Cell coordinates of bottom-right corner of shape, e.g. 'B2' + * + * @var string + */ + private $endCoordinates; + + /** + * Horizontal offset of bottom-right corner of shape measured in 1/1024 of column width + * + * @var int + */ + private $endOffsetX; + + /** + * Vertical offset of bottom-right corner of shape measured in 1/256 of row height + * + * @var int + */ + private $endOffsetY; + + /** + * Set parent Shape Group Container + * + * @param PHPExcel_Shared_Escher_DgContainer_SpgrContainer $parent + */ + public function setParent($parent) + { + $this->parent = $parent; + } + + /** + * Get the parent Shape Group Container + * + * @return PHPExcel_Shared_Escher_DgContainer_SpgrContainer + */ + public function getParent() + { + return $this->parent; + } + + /** + * Set whether this is a group shape + * + * @param boolean $value + */ + public function setSpgr($value = false) + { + $this->spgr = $value; + } + + /** + * Get whether this is a group shape + * + * @return boolean + */ + public function getSpgr() + { + return $this->spgr; + } + + /** + * Set the shape type + * + * @param int $value + */ + public function setSpType($value) + { + $this->spType = $value; + } + + /** + * Get the shape type + * + * @return int + */ + public function getSpType() + { + return $this->spType; + } + + /** + * Set the shape flag + * + * @param int $value + */ + public function setSpFlag($value) + { + $this->spFlag = $value; + } + + /** + * Get the shape flag + * + * @return int + */ + public function getSpFlag() + { + return $this->spFlag; + } + + /** + * Set the shape index + * + * @param int $value + */ + public function setSpId($value) + { + $this->spId = $value; + } + + /** + * Get the shape index + * + * @return int + */ + public function getSpId() + { + return $this->spId; + } + + /** + * Set an option for the Shape Group Container + * + * @param int $property The number specifies the option + * @param mixed $value + */ + public function setOPT($property, $value) + { + $this->OPT[$property] = $value; + } + + /** + * Get an option for the Shape Group Container + * + * @param int $property The number specifies the option + * @return mixed + */ + public function getOPT($property) + { + if (isset($this->OPT[$property])) { + return $this->OPT[$property]; + } + return null; + } + + /** + * Get the collection of options + * + * @return array + */ + public function getOPTCollection() + { + return $this->OPT; + } + + /** + * Set cell coordinates of upper-left corner of shape + * + * @param string $value + */ + public function setStartCoordinates($value = 'A1') + { + $this->startCoordinates = $value; + } + + /** + * Get cell coordinates of upper-left corner of shape + * + * @return string + */ + public function getStartCoordinates() + { + return $this->startCoordinates; + } + + /** + * Set offset in x-direction of upper-left corner of shape measured in 1/1024 of column width + * + * @param int $startOffsetX + */ + public function setStartOffsetX($startOffsetX = 0) + { + $this->startOffsetX = $startOffsetX; + } + + /** + * Get offset in x-direction of upper-left corner of shape measured in 1/1024 of column width + * + * @return int + */ + public function getStartOffsetX() + { + return $this->startOffsetX; + } + + /** + * Set offset in y-direction of upper-left corner of shape measured in 1/256 of row height + * + * @param int $startOffsetY + */ + public function setStartOffsetY($startOffsetY = 0) + { + $this->startOffsetY = $startOffsetY; + } + + /** + * Get offset in y-direction of upper-left corner of shape measured in 1/256 of row height + * + * @return int + */ + public function getStartOffsetY() + { + return $this->startOffsetY; + } + + /** + * Set cell coordinates of bottom-right corner of shape + * + * @param string $value + */ + public function setEndCoordinates($value = 'A1') + { + $this->endCoordinates = $value; + } + + /** + * Get cell coordinates of bottom-right corner of shape + * + * @return string + */ + public function getEndCoordinates() + { + return $this->endCoordinates; + } + + /** + * Set offset in x-direction of bottom-right corner of shape measured in 1/1024 of column width + * + * @param int $startOffsetX + */ + public function setEndOffsetX($endOffsetX = 0) + { + $this->endOffsetX = $endOffsetX; + } + + /** + * Get offset in x-direction of bottom-right corner of shape measured in 1/1024 of column width + * + * @return int + */ + public function getEndOffsetX() + { + return $this->endOffsetX; + } + + /** + * Set offset in y-direction of bottom-right corner of shape measured in 1/256 of row height + * + * @param int $endOffsetY + */ + public function setEndOffsetY($endOffsetY = 0) + { + $this->endOffsetY = $endOffsetY; + } + + /** + * Get offset in y-direction of bottom-right corner of shape measured in 1/256 of row height + * + * @return int + */ + public function getEndOffsetY() + { + return $this->endOffsetY; + } + + /** + * Get the nesting level of this spContainer. This is the number of spgrContainers between this spContainer and + * the dgContainer. A value of 1 = immediately within first spgrContainer + * Higher nesting level occurs if and only if spContainer is part of a shape group + * + * @return int Nesting level + */ + public function getNestingLevel() + { + $nestingLevel = 0; + + $parent = $this->getParent(); + while ($parent instanceof PHPExcel_Shared_Escher_DgContainer_SpgrContainer) { + ++$nestingLevel; + $parent = $parent->getParent(); + } + + return $nestingLevel; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/_notes/dwsync.xml new file mode 100644 index 0000000..6264d04 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="SpContainer.php" server="62.244.88.21/deciday/" local="131919461893633895" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/_notes/dwsync.xml new file mode 100644 index 0000000..823c3d3 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DgContainer/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="SpgrContainer.php" server="62.244.88.21/deciday/" local="131919461893447481" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer.php new file mode 100644 index 0000000..b116b1b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer.php @@ -0,0 +1,196 @@ +<?php + +/** + * PHPExcel_Shared_Escher_DggContainer + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_Escher_DggContainer +{ + /** + * Maximum shape index of all shapes in all drawings increased by one + * + * @var int + */ + private $spIdMax; + + /** + * Total number of drawings saved + * + * @var int + */ + private $cDgSaved; + + /** + * Total number of shapes saved (including group shapes) + * + * @var int + */ + private $cSpSaved; + + /** + * BLIP Store Container + * + * @var PHPExcel_Shared_Escher_DggContainer_BstoreContainer + */ + private $bstoreContainer; + + /** + * Array of options for the drawing group + * + * @var array + */ + private $OPT = array(); + + /** + * Array of identifier clusters containg information about the maximum shape identifiers + * + * @var array + */ + private $IDCLs = array(); + + /** + * Get maximum shape index of all shapes in all drawings (plus one) + * + * @return int + */ + public function getSpIdMax() + { + return $this->spIdMax; + } + + /** + * Set maximum shape index of all shapes in all drawings (plus one) + * + * @param int + */ + public function setSpIdMax($value) + { + $this->spIdMax = $value; + } + + /** + * Get total number of drawings saved + * + * @return int + */ + public function getCDgSaved() + { + return $this->cDgSaved; + } + + /** + * Set total number of drawings saved + * + * @param int + */ + public function setCDgSaved($value) + { + $this->cDgSaved = $value; + } + + /** + * Get total number of shapes saved (including group shapes) + * + * @return int + */ + public function getCSpSaved() + { + return $this->cSpSaved; + } + + /** + * Set total number of shapes saved (including group shapes) + * + * @param int + */ + public function setCSpSaved($value) + { + $this->cSpSaved = $value; + } + + /** + * Get BLIP Store Container + * + * @return PHPExcel_Shared_Escher_DggContainer_BstoreContainer + */ + public function getBstoreContainer() + { + return $this->bstoreContainer; + } + + /** + * Set BLIP Store Container + * + * @param PHPExcel_Shared_Escher_DggContainer_BstoreContainer $bstoreContainer + */ + public function setBstoreContainer($bstoreContainer) + { + $this->bstoreContainer = $bstoreContainer; + } + + /** + * Set an option for the drawing group + * + * @param int $property The number specifies the option + * @param mixed $value + */ + public function setOPT($property, $value) + { + $this->OPT[$property] = $value; + } + + /** + * Get an option for the drawing group + * + * @param int $property The number specifies the option + * @return mixed + */ + public function getOPT($property) + { + if (isset($this->OPT[$property])) { + return $this->OPT[$property]; + } + return null; + } + + /** + * Get identifier clusters + * + * @return array + */ + public function getIDCLs() + { + return $this->IDCLs; + } + + /** + * Set identifier clusters. array(<drawingId> => <max shape id>, ...) + * + * @param array $pValue + */ + public function setIDCLs($pValue) + { + $this->IDCLs = $pValue; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php new file mode 100644 index 0000000..1af2432 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php @@ -0,0 +1,57 @@ +<?php + +/** + * PHPExcel_Shared_Escher_DggContainer_BstoreContainer + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_Escher_DggContainer_BstoreContainer +{ + /** + * BLIP Store Entries. Each of them holds one BLIP (Big Large Image or Picture) + * + * @var array + */ + private $BSECollection = array(); + + /** + * Add a BLIP Store Entry + * + * @param PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE $BSE + */ + public function addBSE($BSE) + { + $this->BSECollection[] = $BSE; + $BSE->setParent($this); + } + + /** + * Get the collection of BLIP Store Entries + * + * @return PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE[] + */ + public function getBSECollection() + { + return $this->BSECollection; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php new file mode 100644 index 0000000..d17e91e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php @@ -0,0 +1,112 @@ +<?php + +/** + * PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE +{ + const BLIPTYPE_ERROR = 0x00; + const BLIPTYPE_UNKNOWN = 0x01; + const BLIPTYPE_EMF = 0x02; + const BLIPTYPE_WMF = 0x03; + const BLIPTYPE_PICT = 0x04; + const BLIPTYPE_JPEG = 0x05; + const BLIPTYPE_PNG = 0x06; + const BLIPTYPE_DIB = 0x07; + const BLIPTYPE_TIFF = 0x11; + const BLIPTYPE_CMYKJPEG = 0x12; + + /** + * The parent BLIP Store Entry Container + * + * @var PHPExcel_Shared_Escher_DggContainer_BstoreContainer + */ + private $parent; + + /** + * The BLIP (Big Large Image or Picture) + * + * @var PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip + */ + private $blip; + + /** + * The BLIP type + * + * @var int + */ + private $blipType; + + /** + * Set parent BLIP Store Entry Container + * + * @param PHPExcel_Shared_Escher_DggContainer_BstoreContainer $parent + */ + public function setParent($parent) + { + $this->parent = $parent; + } + + /** + * Get the BLIP + * + * @return PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip + */ + public function getBlip() + { + return $this->blip; + } + + /** + * Set the BLIP + * + * @param PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip $blip + */ + public function setBlip($blip) + { + $this->blip = $blip; + $blip->setParent($this); + } + + /** + * Get the BLIP type + * + * @return int + */ + public function getBlipType() + { + return $this->blipType; + } + + /** + * Set the BLIP type + * + * @param int + */ + public function setBlipType($blipType) + { + $this->blipType = $blipType; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php new file mode 100644 index 0000000..3bcbbbe --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php @@ -0,0 +1,83 @@ +<?php + +/** + * PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip +{ + /** + * The parent BSE + * + * @var PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE + */ + private $parent; + + /** + * Raw image data + * + * @var string + */ + private $data; + + /** + * Get the raw image data + * + * @return string + */ + public function getData() + { + return $this->data; + } + + /** + * Set the raw image data + * + * @param string + */ + public function setData($data) + { + $this->data = $data; + } + + /** + * Set parent BSE + * + * @param PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE $parent + */ + public function setParent($parent) + { + $this->parent = $parent; + } + + /** + * Get parent BSE + * + * @return PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE $parent + */ + public function getParent() + { + return $this->parent; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/_notes/dwsync.xml new file mode 100644 index 0000000..0105cdb --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Blip.php" server="62.244.88.21/deciday/" local="131919461894476058" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/_notes/dwsync.xml new file mode 100644 index 0000000..e151859 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="BSE.php" server="62.244.88.21/deciday/" local="131919461897658119" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/_notes/dwsync.xml new file mode 100644 index 0000000..ecd3506 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/DggContainer/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="BstoreContainer.php" server="62.244.88.21/deciday/" local="131919461898321711" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/_notes/dwsync.xml new file mode 100644 index 0000000..a14a5a6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Escher/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="DgContainer.php" server="62.244.88.21/deciday/" local="131919461894299429" remote="131880384600000000" Dst="1" /> +<file name="DggContainer.php" server="62.244.88.21/deciday/" local="131919461898499663" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Excel5.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Excel5.php new file mode 100644 index 0000000..c3ff209 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Excel5.php @@ -0,0 +1,298 @@ +<?php + +/** + * PHPExcel_Shared_Excel5 + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_Excel5 +{ + /** + * Get the width of a column in pixels. We use the relationship y = ceil(7x) where + * x is the width in intrinsic Excel units (measuring width in number of normal characters) + * This holds for Arial 10 + * + * @param PHPExcel_Worksheet $sheet The sheet + * @param string $col The column + * @return integer The width in pixels + */ + public static function sizeCol($sheet, $col = 'A') + { + // default font of the workbook + $font = $sheet->getParent()->getDefaultStyle()->getFont(); + + $columnDimensions = $sheet->getColumnDimensions(); + + // first find the true column width in pixels (uncollapsed and unhidden) + if (isset($columnDimensions[$col]) and $columnDimensions[$col]->getWidth() != -1) { + // then we have column dimension with explicit width + $columnDimension = $columnDimensions[$col]; + $width = $columnDimension->getWidth(); + $pixelWidth = PHPExcel_Shared_Drawing::cellDimensionToPixels($width, $font); + } elseif ($sheet->getDefaultColumnDimension()->getWidth() != -1) { + // then we have default column dimension with explicit width + $defaultColumnDimension = $sheet->getDefaultColumnDimension(); + $width = $defaultColumnDimension->getWidth(); + $pixelWidth = PHPExcel_Shared_Drawing::cellDimensionToPixels($width, $font); + } else { + // we don't even have any default column dimension. Width depends on default font + $pixelWidth = PHPExcel_Shared_Font::getDefaultColumnWidthByFont($font, true); + } + + // now find the effective column width in pixels + if (isset($columnDimensions[$col]) and !$columnDimensions[$col]->getVisible()) { + $effectivePixelWidth = 0; + } else { + $effectivePixelWidth = $pixelWidth; + } + + return $effectivePixelWidth; + } + + /** + * Convert the height of a cell from user's units to pixels. By interpolation + * the relationship is: y = 4/3x. If the height hasn't been set by the user we + * use the default value. If the row is hidden we use a value of zero. + * + * @param PHPExcel_Worksheet $sheet The sheet + * @param integer $row The row index (1-based) + * @return integer The width in pixels + */ + public static function sizeRow($sheet, $row = 1) + { + // default font of the workbook + $font = $sheet->getParent()->getDefaultStyle()->getFont(); + + $rowDimensions = $sheet->getRowDimensions(); + + // first find the true row height in pixels (uncollapsed and unhidden) + if (isset($rowDimensions[$row]) and $rowDimensions[$row]->getRowHeight() != -1) { + // then we have a row dimension + $rowDimension = $rowDimensions[$row]; + $rowHeight = $rowDimension->getRowHeight(); + $pixelRowHeight = (int) ceil(4 * $rowHeight / 3); // here we assume Arial 10 + } elseif ($sheet->getDefaultRowDimension()->getRowHeight() != -1) { + // then we have a default row dimension with explicit height + $defaultRowDimension = $sheet->getDefaultRowDimension(); + $rowHeight = $defaultRowDimension->getRowHeight(); + $pixelRowHeight = PHPExcel_Shared_Drawing::pointsToPixels($rowHeight); + } else { + // we don't even have any default row dimension. Height depends on default font + $pointRowHeight = PHPExcel_Shared_Font::getDefaultRowHeightByFont($font); + $pixelRowHeight = PHPExcel_Shared_Font::fontSizeToPixels($pointRowHeight); + } + + // now find the effective row height in pixels + if (isset($rowDimensions[$row]) and !$rowDimensions[$row]->getVisible()) { + $effectivePixelRowHeight = 0; + } else { + $effectivePixelRowHeight = $pixelRowHeight; + } + + return $effectivePixelRowHeight; + } + + /** + * Get the horizontal distance in pixels between two anchors + * The distanceX is found as sum of all the spanning columns widths minus correction for the two offsets + * + * @param PHPExcel_Worksheet $sheet + * @param string $startColumn + * @param integer $startOffsetX Offset within start cell measured in 1/1024 of the cell width + * @param string $endColumn + * @param integer $endOffsetX Offset within end cell measured in 1/1024 of the cell width + * @return integer Horizontal measured in pixels + */ + public static function getDistanceX(PHPExcel_Worksheet $sheet, $startColumn = 'A', $startOffsetX = 0, $endColumn = 'A', $endOffsetX = 0) + { + $distanceX = 0; + + // add the widths of the spanning columns + $startColumnIndex = PHPExcel_Cell::columnIndexFromString($startColumn) - 1; // 1-based + $endColumnIndex = PHPExcel_Cell::columnIndexFromString($endColumn) - 1; // 1-based + for ($i = $startColumnIndex; $i <= $endColumnIndex; ++$i) { + $distanceX += self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($i)); + } + + // correct for offsetX in startcell + $distanceX -= (int) floor(self::sizeCol($sheet, $startColumn) * $startOffsetX / 1024); + + // correct for offsetX in endcell + $distanceX -= (int) floor(self::sizeCol($sheet, $endColumn) * (1 - $endOffsetX / 1024)); + + return $distanceX; + } + + /** + * Get the vertical distance in pixels between two anchors + * The distanceY is found as sum of all the spanning rows minus two offsets + * + * @param PHPExcel_Worksheet $sheet + * @param integer $startRow (1-based) + * @param integer $startOffsetY Offset within start cell measured in 1/256 of the cell height + * @param integer $endRow (1-based) + * @param integer $endOffsetY Offset within end cell measured in 1/256 of the cell height + * @return integer Vertical distance measured in pixels + */ + public static function getDistanceY(PHPExcel_Worksheet $sheet, $startRow = 1, $startOffsetY = 0, $endRow = 1, $endOffsetY = 0) + { + $distanceY = 0; + + // add the widths of the spanning rows + for ($row = $startRow; $row <= $endRow; ++$row) { + $distanceY += self::sizeRow($sheet, $row); + } + + // correct for offsetX in startcell + $distanceY -= (int) floor(self::sizeRow($sheet, $startRow) * $startOffsetY / 256); + + // correct for offsetX in endcell + $distanceY -= (int) floor(self::sizeRow($sheet, $endRow) * (1 - $endOffsetY / 256)); + + return $distanceY; + } + + /** + * Convert 1-cell anchor coordinates to 2-cell anchor coordinates + * This function is ported from PEAR Spreadsheet_Writer_Excel with small modifications + * + * Calculate the vertices that define the position of the image as required by + * the OBJ record. + * + * +------------+------------+ + * | A | B | + * +-----+------------+------------+ + * | |(x1,y1) | | + * | 1 |(A1)._______|______ | + * | | | | | + * | | | | | + * +-----+----| BITMAP |-----+ + * | | | | | + * | 2 | |______________. | + * | | | (B2)| + * | | | (x2,y2)| + * +---- +------------+------------+ + * + * Example of a bitmap that covers some of the area from cell A1 to cell B2. + * + * Based on the width and height of the bitmap we need to calculate 8 vars: + * $col_start, $row_start, $col_end, $row_end, $x1, $y1, $x2, $y2. + * The width and height of the cells are also variable and have to be taken into + * account. + * The values of $col_start and $row_start are passed in from the calling + * function. The values of $col_end and $row_end are calculated by subtracting + * the width and height of the bitmap from the width and height of the + * underlying cells. + * The vertices are expressed as a percentage of the underlying cell width as + * follows (rhs values are in pixels): + * + * x1 = X / W *1024 + * y1 = Y / H *256 + * x2 = (X-1) / W *1024 + * y2 = (Y-1) / H *256 + * + * Where: X is distance from the left side of the underlying cell + * Y is distance from the top of the underlying cell + * W is the width of the cell + * H is the height of the cell + * + * @param PHPExcel_Worksheet $sheet + * @param string $coordinates E.g. 'A1' + * @param integer $offsetX Horizontal offset in pixels + * @param integer $offsetY Vertical offset in pixels + * @param integer $width Width in pixels + * @param integer $height Height in pixels + * @return array + */ + public static function oneAnchor2twoAnchor($sheet, $coordinates, $offsetX, $offsetY, $width, $height) + { + list($column, $row) = PHPExcel_Cell::coordinateFromString($coordinates); + $col_start = PHPExcel_Cell::columnIndexFromString($column) - 1; + $row_start = $row - 1; + + $x1 = $offsetX; + $y1 = $offsetY; + + // Initialise end cell to the same as the start cell + $col_end = $col_start; // Col containing lower right corner of object + $row_end = $row_start; // Row containing bottom right corner of object + + // Zero the specified offset if greater than the cell dimensions + if ($x1 >= self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_start))) { + $x1 = 0; + } + if ($y1 >= self::sizeRow($sheet, $row_start + 1)) { + $y1 = 0; + } + + $width = $width + $x1 -1; + $height = $height + $y1 -1; + + // Subtract the underlying cell widths to find the end cell of the image + while ($width >= self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_end))) { + $width -= self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_end)); + ++$col_end; + } + + // Subtract the underlying cell heights to find the end cell of the image + while ($height >= self::sizeRow($sheet, $row_end + 1)) { + $height -= self::sizeRow($sheet, $row_end + 1); + ++$row_end; + } + + // Bitmap isn't allowed to start or finish in a hidden cell, i.e. a cell + // with zero height or width. + if (self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_start)) == 0) { + return; + } + if (self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_end)) == 0) { + return; + } + if (self::sizeRow($sheet, $row_start + 1) == 0) { + return; + } + if (self::sizeRow($sheet, $row_end + 1) == 0) { + return; + } + + // Convert the pixel values to the percentage value expected by Excel + $x1 = $x1 / self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_start)) * 1024; + $y1 = $y1 / self::sizeRow($sheet, $row_start + 1) * 256; + $x2 = ($width + 1) / self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_end)) * 1024; // Distance to right side of object + $y2 = ($height + 1) / self::sizeRow($sheet, $row_end + 1) * 256; // Distance to bottom of object + + $startCoordinates = PHPExcel_Cell::stringFromColumnIndex($col_start) . ($row_start + 1); + $endCoordinates = PHPExcel_Cell::stringFromColumnIndex($col_end) . ($row_end + 1); + + $twoAnchor = array( + 'startCoordinates' => $startCoordinates, + 'startOffsetX' => $x1, + 'startOffsetY' => $y1, + 'endCoordinates' => $endCoordinates, + 'endOffsetX' => $x2, + 'endOffsetY' => $y2, + ); + + return $twoAnchor; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/File.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/File.php new file mode 100644 index 0000000..a62df75 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/File.php @@ -0,0 +1,180 @@ +<?php + +/** + * PHPExcel_Shared_File + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_File +{ + /* + * Use Temp or File Upload Temp for temporary files + * + * @protected + * @var boolean + */ + protected static $useUploadTempDirectory = false; + + + /** + * Set the flag indicating whether the File Upload Temp directory should be used for temporary files + * + * @param boolean $useUploadTempDir Use File Upload Temporary directory (true or false) + */ + public static function setUseUploadTempDirectory($useUploadTempDir = false) + { + self::$useUploadTempDirectory = (boolean) $useUploadTempDir; + } + + + /** + * Get the flag indicating whether the File Upload Temp directory should be used for temporary files + * + * @return boolean Use File Upload Temporary directory (true or false) + */ + public static function getUseUploadTempDirectory() + { + return self::$useUploadTempDirectory; + } + + + /** + * Verify if a file exists + * + * @param string $pFilename Filename + * @return bool + */ + public static function file_exists($pFilename) + { + // Sick construction, but it seems that + // file_exists returns strange values when + // doing the original file_exists on ZIP archives... + if (strtolower(substr($pFilename, 0, 3)) == 'zip') { + // Open ZIP file and verify if the file exists + $zipFile = substr($pFilename, 6, strpos($pFilename, '#') - 6); + $archiveFile = substr($pFilename, strpos($pFilename, '#') + 1); + + $zip = new ZipArchive(); + if ($zip->open($zipFile) === true) { + $returnValue = ($zip->getFromName($archiveFile) !== false); + $zip->close(); + return $returnValue; + } else { + return false; + } + } else { + // Regular file_exists + return file_exists($pFilename); + } + } + + /** + * Returns canonicalized absolute pathname, also for ZIP archives + * + * @param string $pFilename + * @return string + */ + public static function realpath($pFilename) + { + // Returnvalue + $returnValue = ''; + + // Try using realpath() + if (file_exists($pFilename)) { + $returnValue = realpath($pFilename); + } + + // Found something? + if ($returnValue == '' || ($returnValue === null)) { + $pathArray = explode('/', $pFilename); + while (in_array('..', $pathArray) && $pathArray[0] != '..') { + for ($i = 0; $i < count($pathArray); ++$i) { + if ($pathArray[$i] == '..' && $i > 0) { + unset($pathArray[$i]); + unset($pathArray[$i - 1]); + break; + } + } + } + $returnValue = implode('/', $pathArray); + } + + // Return + return $returnValue; + } + + /** + * Get the systems temporary directory. + * + * @return string + */ + public static function sys_get_temp_dir() + { + if (self::$useUploadTempDirectory) { + // use upload-directory when defined to allow running on environments having very restricted + // open_basedir configs + if (ini_get('upload_tmp_dir') !== false) { + if ($temp = ini_get('upload_tmp_dir')) { + if (file_exists($temp)) { + return realpath($temp); + } + } + } + } + + // sys_get_temp_dir is only available since PHP 5.2.1 + // http://php.net/manual/en/function.sys-get-temp-dir.php#94119 + if (!function_exists('sys_get_temp_dir')) { + if ($temp = getenv('TMP')) { + if ((!empty($temp)) && (file_exists($temp))) { + return realpath($temp); + } + } + if ($temp = getenv('TEMP')) { + if ((!empty($temp)) && (file_exists($temp))) { + return realpath($temp); + } + } + if ($temp = getenv('TMPDIR')) { + if ((!empty($temp)) && (file_exists($temp))) { + return realpath($temp); + } + } + + // trick for creating a file in system's temporary dir + // without knowing the path of the system's temporary dir + $temp = tempnam(__FILE__, ''); + if (file_exists($temp)) { + unlink($temp); + return realpath(dirname($temp)); + } + + return null; + } + + // use ordinary built-in PHP function + // There should be no problem with the 5.2.4 Suhosin realpath() bug, because this line should only + // be called if we're running 5.2.1 or earlier + return realpath(sys_get_temp_dir()); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Font.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Font.php new file mode 100644 index 0000000..7efb3c9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/Font.php @@ -0,0 +1,741 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Shared_Font + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Font +{ + /* Methods for resolving autosize value */ + const AUTOSIZE_METHOD_APPROX = 'approx'; + const AUTOSIZE_METHOD_EXACT = 'exact'; + + private static $autoSizeMethods = array( + self::AUTOSIZE_METHOD_APPROX, + self::AUTOSIZE_METHOD_EXACT, + ); + + /** Character set codes used by BIFF5-8 in Font records */ + const CHARSET_ANSI_LATIN = 0x00; + const CHARSET_SYSTEM_DEFAULT = 0x01; + const CHARSET_SYMBOL = 0x02; + const CHARSET_APPLE_ROMAN = 0x4D; + const CHARSET_ANSI_JAPANESE_SHIFTJIS = 0x80; + const CHARSET_ANSI_KOREAN_HANGUL = 0x81; + const CHARSET_ANSI_KOREAN_JOHAB = 0x82; + const CHARSET_ANSI_CHINESE_SIMIPLIFIED = 0x86; // gb2312 + const CHARSET_ANSI_CHINESE_TRADITIONAL = 0x88; // big5 + const CHARSET_ANSI_GREEK = 0xA1; + const CHARSET_ANSI_TURKISH = 0xA2; + const CHARSET_ANSI_VIETNAMESE = 0xA3; + const CHARSET_ANSI_HEBREW = 0xB1; + const CHARSET_ANSI_ARABIC = 0xB2; + const CHARSET_ANSI_BALTIC = 0xBA; + const CHARSET_ANSI_CYRILLIC = 0xCC; + const CHARSET_ANSI_THAI = 0xDD; + const CHARSET_ANSI_LATIN_II = 0xEE; + const CHARSET_OEM_LATIN_I = 0xFF; + + // XXX: Constants created! + /** Font filenames */ + const ARIAL = 'arial.ttf'; + const ARIAL_BOLD = 'arialbd.ttf'; + const ARIAL_ITALIC = 'ariali.ttf'; + const ARIAL_BOLD_ITALIC = 'arialbi.ttf'; + + const CALIBRI = 'CALIBRI.TTF'; + const CALIBRI_BOLD = 'CALIBRIB.TTF'; + const CALIBRI_ITALIC = 'CALIBRII.TTF'; + const CALIBRI_BOLD_ITALIC = 'CALIBRIZ.TTF'; + + const COMIC_SANS_MS = 'comic.ttf'; + const COMIC_SANS_MS_BOLD = 'comicbd.ttf'; + + const COURIER_NEW = 'cour.ttf'; + const COURIER_NEW_BOLD = 'courbd.ttf'; + const COURIER_NEW_ITALIC = 'couri.ttf'; + const COURIER_NEW_BOLD_ITALIC = 'courbi.ttf'; + + const GEORGIA = 'georgia.ttf'; + const GEORGIA_BOLD = 'georgiab.ttf'; + const GEORGIA_ITALIC = 'georgiai.ttf'; + const GEORGIA_BOLD_ITALIC = 'georgiaz.ttf'; + + const IMPACT = 'impact.ttf'; + + const LIBERATION_SANS = 'LiberationSans-Regular.ttf'; + const LIBERATION_SANS_BOLD = 'LiberationSans-Bold.ttf'; + const LIBERATION_SANS_ITALIC = 'LiberationSans-Italic.ttf'; + const LIBERATION_SANS_BOLD_ITALIC = 'LiberationSans-BoldItalic.ttf'; + + const LUCIDA_CONSOLE = 'lucon.ttf'; + const LUCIDA_SANS_UNICODE = 'l_10646.ttf'; + + const MICROSOFT_SANS_SERIF = 'micross.ttf'; + + const PALATINO_LINOTYPE = 'pala.ttf'; + const PALATINO_LINOTYPE_BOLD = 'palab.ttf'; + const PALATINO_LINOTYPE_ITALIC = 'palai.ttf'; + const PALATINO_LINOTYPE_BOLD_ITALIC = 'palabi.ttf'; + + const SYMBOL = 'symbol.ttf'; + + const TAHOMA = 'tahoma.ttf'; + const TAHOMA_BOLD = 'tahomabd.ttf'; + + const TIMES_NEW_ROMAN = 'times.ttf'; + const TIMES_NEW_ROMAN_BOLD = 'timesbd.ttf'; + const TIMES_NEW_ROMAN_ITALIC = 'timesi.ttf'; + const TIMES_NEW_ROMAN_BOLD_ITALIC = 'timesbi.ttf'; + + const TREBUCHET_MS = 'trebuc.ttf'; + const TREBUCHET_MS_BOLD = 'trebucbd.ttf'; + const TREBUCHET_MS_ITALIC = 'trebucit.ttf'; + const TREBUCHET_MS_BOLD_ITALIC = 'trebucbi.ttf'; + + const VERDANA = 'verdana.ttf'; + const VERDANA_BOLD = 'verdanab.ttf'; + const VERDANA_ITALIC = 'verdanai.ttf'; + const VERDANA_BOLD_ITALIC = 'verdanaz.ttf'; + + /** + * AutoSize method + * + * @var string + */ + private static $autoSizeMethod = self::AUTOSIZE_METHOD_APPROX; + + /** + * Path to folder containing TrueType font .ttf files + * + * @var string + */ + private static $trueTypeFontPath = null; + + /** + * How wide is a default column for a given default font and size? + * Empirical data found by inspecting real Excel files and reading off the pixel width + * in Microsoft Office Excel 2007. + * + * @var array + */ + public static $defaultColumnWidths = array( + 'Arial' => array( + 1 => array('px' => 24, 'width' => 12.00000000), + 2 => array('px' => 24, 'width' => 12.00000000), + 3 => array('px' => 32, 'width' => 10.66406250), + 4 => array('px' => 32, 'width' => 10.66406250), + 5 => array('px' => 40, 'width' => 10.00000000), + 6 => array('px' => 48, 'width' => 9.59765625), + 7 => array('px' => 48, 'width' => 9.59765625), + 8 => array('px' => 56, 'width' => 9.33203125), + 9 => array('px' => 64, 'width' => 9.14062500), + 10 => array('px' => 64, 'width' => 9.14062500), + ), + 'Calibri' => array( + 1 => array('px' => 24, 'width' => 12.00000000), + 2 => array('px' => 24, 'width' => 12.00000000), + 3 => array('px' => 32, 'width' => 10.66406250), + 4 => array('px' => 32, 'width' => 10.66406250), + 5 => array('px' => 40, 'width' => 10.00000000), + 6 => array('px' => 48, 'width' => 9.59765625), + 7 => array('px' => 48, 'width' => 9.59765625), + 8 => array('px' => 56, 'width' => 9.33203125), + 9 => array('px' => 56, 'width' => 9.33203125), + 10 => array('px' => 64, 'width' => 9.14062500), + 11 => array('px' => 64, 'width' => 9.14062500), + ), + 'Verdana' => array( + 1 => array('px' => 24, 'width' => 12.00000000), + 2 => array('px' => 24, 'width' => 12.00000000), + 3 => array('px' => 32, 'width' => 10.66406250), + 4 => array('px' => 32, 'width' => 10.66406250), + 5 => array('px' => 40, 'width' => 10.00000000), + 6 => array('px' => 48, 'width' => 9.59765625), + 7 => array('px' => 48, 'width' => 9.59765625), + 8 => array('px' => 64, 'width' => 9.14062500), + 9 => array('px' => 72, 'width' => 9.00000000), + 10 => array('px' => 72, 'width' => 9.00000000), + ), + ); + + /** + * Set autoSize method + * + * @param string $pValue + * @return boolean Success or failure + */ + public static function setAutoSizeMethod($pValue = self::AUTOSIZE_METHOD_APPROX) + { + if (!in_array($pValue, self::$autoSizeMethods)) { + return false; + } + self::$autoSizeMethod = $pValue; + + return true; + } + + /** + * Get autoSize method + * + * @return string + */ + public static function getAutoSizeMethod() + { + return self::$autoSizeMethod; + } + + /** + * Set the path to the folder containing .ttf files. There should be a trailing slash. + * Typical locations on variout some platforms: + * <ul> + * <li>C:/Windows/Fonts/</li> + * <li>/usr/share/fonts/truetype/</li> + * <li>~/.fonts/</li> + * </ul> + * + * @param string $pValue + */ + public static function setTrueTypeFontPath($pValue = '') + { + self::$trueTypeFontPath = $pValue; + } + + /** + * Get the path to the folder containing .ttf files. + * + * @return string + */ + public static function getTrueTypeFontPath() + { + return self::$trueTypeFontPath; + } + + /** + * Calculate an (approximate) OpenXML column width, based on font size and text contained + * + * @param PHPExcel_Style_Font $font Font object + * @param PHPExcel_RichText|string $cellText Text to calculate width + * @param integer $rotation Rotation angle + * @param PHPExcel_Style_Font|NULL $defaultFont Font object + * @return integer Column width + */ + public static function calculateColumnWidth(PHPExcel_Style_Font $font, $cellText = '', $rotation = 0, PHPExcel_Style_Font $defaultFont = null) + { + // If it is rich text, use plain text + if ($cellText instanceof PHPExcel_RichText) { + $cellText = $cellText->getPlainText(); + } + + // Special case if there are one or more newline characters ("\n") + if (strpos($cellText, "\n") !== false) { + $lineTexts = explode("\n", $cellText); + $lineWidths = array(); + foreach ($lineTexts as $lineText) { + $lineWidths[] = self::calculateColumnWidth($font, $lineText, $rotation = 0, $defaultFont); + } + return max($lineWidths); // width of longest line in cell + } + + // Try to get the exact text width in pixels + $approximate = self::$autoSizeMethod == self::AUTOSIZE_METHOD_APPROX; + if (!$approximate) { + $columnWidthAdjust = ceil(self::getTextWidthPixelsExact('n', $font, 0) * 1.07); + try { + // Width of text in pixels excl. padding + // and addition because Excel adds some padding, just use approx width of 'n' glyph + $columnWidth = self::getTextWidthPixelsExact($cellText, $font, $rotation) + $columnWidthAdjust; + } catch (PHPExcel_Exception $e) { + $approximate = true; + } + } + + if ($approximate) { + $columnWidthAdjust = self::getTextWidthPixelsApprox('n', $font, 0); + // Width of text in pixels excl. padding, approximation + // and addition because Excel adds some padding, just use approx width of 'n' glyph + $columnWidth = self::getTextWidthPixelsApprox($cellText, $font, $rotation) + $columnWidthAdjust; + } + + // Convert from pixel width to column width + $columnWidth = PHPExcel_Shared_Drawing::pixelsToCellDimension($columnWidth, $defaultFont); + + // Return + return round($columnWidth, 6); + } + + /** + * Get GD text width in pixels for a string of text in a certain font at a certain rotation angle + * + * @param string $text + * @param PHPExcel_Style_Font + * @param int $rotation + * @return int + * @throws PHPExcel_Exception + */ + public static function getTextWidthPixelsExact($text, PHPExcel_Style_Font $font, $rotation = 0) + { + if (!function_exists('imagettfbbox')) { + throw new PHPExcel_Exception('GD library needs to be enabled'); + } + + // font size should really be supplied in pixels in GD2, + // but since GD2 seems to assume 72dpi, pixels and points are the same + $fontFile = self::getTrueTypeFontFileFromFont($font); + $textBox = imagettfbbox($font->getSize(), $rotation, $fontFile, $text); + + // Get corners positions + $lowerLeftCornerX = $textBox[0]; +// $lowerLeftCornerY = $textBox[1]; + $lowerRightCornerX = $textBox[2]; +// $lowerRightCornerY = $textBox[3]; + $upperRightCornerX = $textBox[4]; +// $upperRightCornerY = $textBox[5]; + $upperLeftCornerX = $textBox[6]; +// $upperLeftCornerY = $textBox[7]; + + // Consider the rotation when calculating the width + $textWidth = max($lowerRightCornerX - $upperLeftCornerX, $upperRightCornerX - $lowerLeftCornerX); + + return $textWidth; + } + + /** + * Get approximate width in pixels for a string of text in a certain font at a certain rotation angle + * + * @param string $columnText + * @param PHPExcel_Style_Font $font + * @param int $rotation + * @return int Text width in pixels (no padding added) + */ + public static function getTextWidthPixelsApprox($columnText, PHPExcel_Style_Font $font = null, $rotation = 0) + { + $fontName = $font->getName(); + $fontSize = $font->getSize(); + + // Calculate column width in pixels. We assume fixed glyph width. Result varies with font name and size. + switch ($fontName) { + case 'Calibri': + // value 8.26 was found via interpolation by inspecting real Excel files with Calibri 11 font. + $columnWidth = (int) (8.26 * PHPExcel_Shared_String::CountCharacters($columnText)); + $columnWidth = $columnWidth * $fontSize / 11; // extrapolate from font size + break; + + case 'Arial': + // value 7 was found via interpolation by inspecting real Excel files with Arial 10 font. +// $columnWidth = (int) (7 * PHPExcel_Shared_String::CountCharacters($columnText)); + // value 8 was set because of experience in different exports at Arial 10 font. + $columnWidth = (int) (8 * PHPExcel_Shared_String::CountCharacters($columnText)); + $columnWidth = $columnWidth * $fontSize / 10; // extrapolate from font size + break; + + case 'Verdana': + // value 8 was found via interpolation by inspecting real Excel files with Verdana 10 font. + $columnWidth = (int) (8 * PHPExcel_Shared_String::CountCharacters($columnText)); + $columnWidth = $columnWidth * $fontSize / 10; // extrapolate from font size + break; + + default: + // just assume Calibri + $columnWidth = (int) (8.26 * PHPExcel_Shared_String::CountCharacters($columnText)); + $columnWidth = $columnWidth * $fontSize / 11; // extrapolate from font size + break; + } + + // Calculate approximate rotated column width + if ($rotation !== 0) { + if ($rotation == -165) { + // stacked text + $columnWidth = 4; // approximation + } else { + // rotated text + $columnWidth = $columnWidth * cos(deg2rad($rotation)) + + $fontSize * abs(sin(deg2rad($rotation))) / 5; // approximation + } + } + + // pixel width is an integer + return (int) $columnWidth; + } + + /** + * Calculate an (approximate) pixel size, based on a font points size + * + * @param int $fontSizeInPoints Font size (in points) + * @return int Font size (in pixels) + */ + public static function fontSizeToPixels($fontSizeInPoints = 11) + { + return (int) ((4 / 3) * $fontSizeInPoints); + } + + /** + * Calculate an (approximate) pixel size, based on inch size + * + * @param int $sizeInInch Font size (in inch) + * @return int Size (in pixels) + */ + public static function inchSizeToPixels($sizeInInch = 1) + { + return ($sizeInInch * 96); + } + + /** + * Calculate an (approximate) pixel size, based on centimeter size + * + * @param int $sizeInCm Font size (in centimeters) + * @return int Size (in pixels) + */ + public static function centimeterSizeToPixels($sizeInCm = 1) + { + return ($sizeInCm * 37.795275591); + } + + /** + * Returns the font path given the font + * + * @param PHPExcel_Style_Font + * @return string Path to TrueType font file + */ + public static function getTrueTypeFontFileFromFont($font) + { + if (!file_exists(self::$trueTypeFontPath) || !is_dir(self::$trueTypeFontPath)) { + throw new PHPExcel_Exception('Valid directory to TrueType Font files not specified'); + } + + $name = $font->getName(); + $bold = $font->getBold(); + $italic = $font->getItalic(); + + // Check if we can map font to true type font file + switch ($name) { + case 'Arial': + $fontFile = ( + $bold ? ($italic ? self::ARIAL_BOLD_ITALIC : self::ARIAL_BOLD) + : ($italic ? self::ARIAL_ITALIC : self::ARIAL) + ); + break; + case 'Calibri': + $fontFile = ( + $bold ? ($italic ? self::CALIBRI_BOLD_ITALIC : self::CALIBRI_BOLD) + : ($italic ? self::CALIBRI_ITALIC : self::CALIBRI) + ); + break; + case 'Courier New': + $fontFile = ( + $bold ? ($italic ? self::COURIER_NEW_BOLD_ITALIC : self::COURIER_NEW_BOLD) + : ($italic ? self::COURIER_NEW_ITALIC : self::COURIER_NEW) + ); + break; + case 'Comic Sans MS': + $fontFile = ( + $bold ? self::COMIC_SANS_MS_BOLD : self::COMIC_SANS_MS + ); + break; + case 'Georgia': + $fontFile = ( + $bold ? ($italic ? self::GEORGIA_BOLD_ITALIC : self::GEORGIA_BOLD) + : ($italic ? self::GEORGIA_ITALIC : self::GEORGIA) + ); + break; + case 'Impact': + $fontFile = self::IMPACT; + break; + case 'Liberation Sans': + $fontFile = ( + $bold ? ($italic ? self::LIBERATION_SANS_BOLD_ITALIC : self::LIBERATION_SANS_BOLD) + : ($italic ? self::LIBERATION_SANS_ITALIC : self::LIBERATION_SANS) + ); + break; + case 'Lucida Console': + $fontFile = self::LUCIDA_CONSOLE; + break; + case 'Lucida Sans Unicode': + $fontFile = self::LUCIDA_SANS_UNICODE; + break; + case 'Microsoft Sans Serif': + $fontFile = self::MICROSOFT_SANS_SERIF; + break; + case 'Palatino Linotype': + $fontFile = ( + $bold ? ($italic ? self::PALATINO_LINOTYPE_BOLD_ITALIC : self::PALATINO_LINOTYPE_BOLD) + : ($italic ? self::PALATINO_LINOTYPE_ITALIC : self::PALATINO_LINOTYPE) + ); + break; + case 'Symbol': + $fontFile = self::SYMBOL; + break; + case 'Tahoma': + $fontFile = ( + $bold ? self::TAHOMA_BOLD : self::TAHOMA + ); + break; + case 'Times New Roman': + $fontFile = ( + $bold ? ($italic ? self::TIMES_NEW_ROMAN_BOLD_ITALIC : self::TIMES_NEW_ROMAN_BOLD) + : ($italic ? self::TIMES_NEW_ROMAN_ITALIC : self::TIMES_NEW_ROMAN) + ); + break; + case 'Trebuchet MS': + $fontFile = ( + $bold ? ($italic ? self::TREBUCHET_MS_BOLD_ITALIC : self::TREBUCHET_MS_BOLD) + : ($italic ? self::TREBUCHET_MS_ITALIC : self::TREBUCHET_MS) + ); + break; + case 'Verdana': + $fontFile = ( + $bold ? ($italic ? self::VERDANA_BOLD_ITALIC : self::VERDANA_BOLD) + : ($italic ? self::VERDANA_ITALIC : self::VERDANA) + ); + break; + default: + throw new PHPExcel_Exception('Unknown font name "'. $name .'". Cannot map to TrueType font file'); + break; + } + + $fontFile = self::$trueTypeFontPath . $fontFile; + + // Check if file actually exists + if (!file_exists($fontFile)) { + throw new PHPExcel_Exception('TrueType Font file not found'); + } + + return $fontFile; + } + + /** + * Returns the associated charset for the font name. + * + * @param string $name Font name + * @return int Character set code + */ + public static function getCharsetFromFontName($name) + { + switch ($name) { + // Add more cases. Check FONT records in real Excel files. + case 'EucrosiaUPC': + return self::CHARSET_ANSI_THAI; + case 'Wingdings': + return self::CHARSET_SYMBOL; + case 'Wingdings 2': + return self::CHARSET_SYMBOL; + case 'Wingdings 3': + return self::CHARSET_SYMBOL; + default: + return self::CHARSET_ANSI_LATIN; + } + } + + /** + * Get the effective column width for columns without a column dimension or column with width -1 + * For example, for Calibri 11 this is 9.140625 (64 px) + * + * @param PHPExcel_Style_Font $font The workbooks default font + * @param boolean $pPixels true = return column width in pixels, false = return in OOXML units + * @return mixed Column width + */ + public static function getDefaultColumnWidthByFont(PHPExcel_Style_Font $font, $pPixels = false) + { + if (isset(self::$defaultColumnWidths[$font->getName()][$font->getSize()])) { + // Exact width can be determined + $columnWidth = $pPixels ? + self::$defaultColumnWidths[$font->getName()][$font->getSize()]['px'] + : self::$defaultColumnWidths[$font->getName()][$font->getSize()]['width']; + + } else { + // We don't have data for this particular font and size, use approximation by + // extrapolating from Calibri 11 + $columnWidth = $pPixels ? + self::$defaultColumnWidths['Calibri'][11]['px'] + : self::$defaultColumnWidths['Calibri'][11]['width']; + $columnWidth = $columnWidth * $font->getSize() / 11; + + // Round pixels to closest integer + if ($pPixels) { + $columnWidth = (int) round($columnWidth); + } + } + + return $columnWidth; + } + + /** + * Get the effective row height for rows without a row dimension or rows with height -1 + * For example, for Calibri 11 this is 15 points + * + * @param PHPExcel_Style_Font $font The workbooks default font + * @return float Row height in points + */ + public static function getDefaultRowHeightByFont(PHPExcel_Style_Font $font) + { + switch ($font->getName()) { + case 'Arial': + switch ($font->getSize()) { + case 10: + // inspection of Arial 10 workbook says 12.75pt ~17px + $rowHeight = 12.75; + break; + case 9: + // inspection of Arial 9 workbook says 12.00pt ~16px + $rowHeight = 12; + break; + case 8: + // inspection of Arial 8 workbook says 11.25pt ~15px + $rowHeight = 11.25; + break; + case 7: + // inspection of Arial 7 workbook says 9.00pt ~12px + $rowHeight = 9; + break; + case 6: + case 5: + // inspection of Arial 5,6 workbook says 8.25pt ~11px + $rowHeight = 8.25; + break; + case 4: + // inspection of Arial 4 workbook says 6.75pt ~9px + $rowHeight = 6.75; + break; + case 3: + // inspection of Arial 3 workbook says 6.00pt ~8px + $rowHeight = 6; + break; + case 2: + case 1: + // inspection of Arial 1,2 workbook says 5.25pt ~7px + $rowHeight = 5.25; + break; + default: + // use Arial 10 workbook as an approximation, extrapolation + $rowHeight = 12.75 * $font->getSize() / 10; + break; + } + break; + + case 'Calibri': + switch ($font->getSize()) { + case 11: + // inspection of Calibri 11 workbook says 15.00pt ~20px + $rowHeight = 15; + break; + case 10: + // inspection of Calibri 10 workbook says 12.75pt ~17px + $rowHeight = 12.75; + break; + case 9: + // inspection of Calibri 9 workbook says 12.00pt ~16px + $rowHeight = 12; + break; + case 8: + // inspection of Calibri 8 workbook says 11.25pt ~15px + $rowHeight = 11.25; + break; + case 7: + // inspection of Calibri 7 workbook says 9.00pt ~12px + $rowHeight = 9; + break; + case 6: + case 5: + // inspection of Calibri 5,6 workbook says 8.25pt ~11px + $rowHeight = 8.25; + break; + case 4: + // inspection of Calibri 4 workbook says 6.75pt ~9px + $rowHeight = 6.75; + break; + case 3: + // inspection of Calibri 3 workbook says 6.00pt ~8px + $rowHeight = 6.00; + break; + case 2: + case 1: + // inspection of Calibri 1,2 workbook says 5.25pt ~7px + $rowHeight = 5.25; + break; + default: + // use Calibri 11 workbook as an approximation, extrapolation + $rowHeight = 15 * $font->getSize() / 11; + break; + } + break; + + case 'Verdana': + switch ($font->getSize()) { + case 10: + // inspection of Verdana 10 workbook says 12.75pt ~17px + $rowHeight = 12.75; + break; + case 9: + // inspection of Verdana 9 workbook says 11.25pt ~15px + $rowHeight = 11.25; + break; + case 8: + // inspection of Verdana 8 workbook says 10.50pt ~14px + $rowHeight = 10.50; + break; + case 7: + // inspection of Verdana 7 workbook says 9.00pt ~12px + $rowHeight = 9.00; + break; + case 6: + case 5: + // inspection of Verdana 5,6 workbook says 8.25pt ~11px + $rowHeight = 8.25; + break; + case 4: + // inspection of Verdana 4 workbook says 6.75pt ~9px + $rowHeight = 6.75; + break; + case 3: + // inspection of Verdana 3 workbook says 6.00pt ~8px + $rowHeight = 6; + break; + case 2: + case 1: + // inspection of Verdana 1,2 workbook says 5.25pt ~7px + $rowHeight = 5.25; + break; + default: + // use Verdana 10 workbook as an approximation, extrapolation + $rowHeight = 12.75 * $font->getSize() / 10; + break; + } + break; + default: + // just use Calibri as an approximation + $rowHeight = 15 * $font->getSize() / 11; + break; + } + + return $rowHeight; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT new file mode 100644 index 0000000..1c18a5d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT @@ -0,0 +1,16 @@ +Mar 1, 2005 11:15 AST by PM + ++ For consistency, renamed Math.php to Maths.java, utils to util, + tests to test, docs to doc - + ++ Removed conditional logic from top of Matrix class. + ++ Switched to using hypo function in Maths.php for all php-hypot calls. + NOTE TO SELF: Need to make sure that all decompositions have been + switched over to using the bundled hypo. + +Feb 25, 2005 at 10:00 AST by PM + ++ Recommend using simpler Error.php instead of JAMA_Error.php but + can be persuaded otherwise. + diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/CholeskyDecomposition.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/CholeskyDecomposition.php new file mode 100644 index 0000000..d68109b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/CholeskyDecomposition.php @@ -0,0 +1,148 @@ +<?php +/** + * @package JAMA + * + * Cholesky decomposition class + * + * For a symmetric, positive definite matrix A, the Cholesky decomposition + * is an lower triangular matrix L so that A = L*L'. + * + * If the matrix is not symmetric or positive definite, the constructor + * returns a partial decomposition and sets an internal flag that may + * be queried by the isSPD() method. + * + * @author Paul Meagher + * @author Michael Bommarito + * @version 1.2 + */ +class CholeskyDecomposition +{ + /** + * Decomposition storage + * @var array + * @access private + */ + private $L = array(); + + /** + * Matrix row and column dimension + * @var int + * @access private + */ + private $m; + + /** + * Symmetric positive definite flag + * @var boolean + * @access private + */ + private $isspd = true; + + /** + * CholeskyDecomposition + * + * Class constructor - decomposes symmetric positive definite matrix + * @param mixed Matrix square symmetric positive definite matrix + */ + public function __construct($A = null) + { + if ($A instanceof Matrix) { + $this->L = $A->getArray(); + $this->m = $A->getRowDimension(); + + for ($i = 0; $i < $this->m; ++$i) { + for ($j = $i; $j < $this->m; ++$j) { + for ($sum = $this->L[$i][$j], $k = $i - 1; $k >= 0; --$k) { + $sum -= $this->L[$i][$k] * $this->L[$j][$k]; + } + if ($i == $j) { + if ($sum >= 0) { + $this->L[$i][$i] = sqrt($sum); + } else { + $this->isspd = false; + } + } else { + if ($this->L[$i][$i] != 0) { + $this->L[$j][$i] = $sum / $this->L[$i][$i]; + } + } + } + + for ($k = $i+1; $k < $this->m; ++$k) { + $this->L[$i][$k] = 0.0; + } + } + } else { + throw new PHPExcel_Calculation_Exception(JAMAError(ARGUMENT_TYPE_EXCEPTION)); + } + } // function __construct() + + /** + * Is the matrix symmetric and positive definite? + * + * @return boolean + */ + public function isSPD() + { + return $this->isspd; + } // function isSPD() + + /** + * getL + * + * Return triangular factor. + * @return Matrix Lower triangular matrix + */ + public function getL() + { + return new Matrix($this->L); + } // function getL() + + /** + * Solve A*X = B + * + * @param $B Row-equal matrix + * @return Matrix L * L' * X = B + */ + public function solve($B = null) + { + if ($B instanceof Matrix) { + if ($B->getRowDimension() == $this->m) { + if ($this->isspd) { + $X = $B->getArrayCopy(); + $nx = $B->getColumnDimension(); + + for ($k = 0; $k < $this->m; ++$k) { + for ($i = $k + 1; $i < $this->m; ++$i) { + for ($j = 0; $j < $nx; ++$j) { + $X[$i][$j] -= $X[$k][$j] * $this->L[$i][$k]; + } + } + for ($j = 0; $j < $nx; ++$j) { + $X[$k][$j] /= $this->L[$k][$k]; + } + } + + for ($k = $this->m - 1; $k >= 0; --$k) { + for ($j = 0; $j < $nx; ++$j) { + $X[$k][$j] /= $this->L[$k][$k]; + } + for ($i = 0; $i < $k; ++$i) { + for ($j = 0; $j < $nx; ++$j) { + $X[$i][$j] -= $X[$k][$j] * $this->L[$k][$i]; + } + } + } + + return new Matrix($X, $this->m, $nx); + } else { + throw new PHPExcel_Calculation_Exception(JAMAError(MatrixSPDException)); + } + } else { + throw new PHPExcel_Calculation_Exception(JAMAError(MATRIX_DIMENSION_EXCEPTION)); + } + } else { + throw new PHPExcel_Calculation_Exception(JAMAError(ARGUMENT_TYPE_EXCEPTION)); + } + } // function solve() +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/EigenvalueDecomposition.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/EigenvalueDecomposition.php new file mode 100644 index 0000000..d4ae397 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/EigenvalueDecomposition.php @@ -0,0 +1,864 @@ +<?php +/** + * @package JAMA + * + * Class to obtain eigenvalues and eigenvectors of a real matrix. + * + * If A is symmetric, then A = V*D*V' where the eigenvalue matrix D + * is diagonal and the eigenvector matrix V is orthogonal (i.e. + * A = V.times(D.times(V.transpose())) and V.times(V.transpose()) + * equals the identity matrix). + * + * If A is not symmetric, then the eigenvalue matrix D is block diagonal + * with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, + * lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The + * columns of V represent the eigenvectors in the sense that A*V = V*D, + * i.e. A.times(V) equals V.times(D). The matrix V may be badly + * conditioned, or even singular, so the validity of the equation + * A = V*D*inverse(V) depends upon V.cond(). + * + * @author Paul Meagher + * @license PHP v3.0 + * @version 1.1 + */ +class EigenvalueDecomposition +{ + /** + * Row and column dimension (square matrix). + * @var int + */ + private $n; + + /** + * Internal symmetry flag. + * @var int + */ + private $issymmetric; + + /** + * Arrays for internal storage of eigenvalues. + * @var array + */ + private $d = array(); + private $e = array(); + + /** + * Array for internal storage of eigenvectors. + * @var array + */ + private $V = array(); + + /** + * Array for internal storage of nonsymmetric Hessenberg form. + * @var array + */ + private $H = array(); + + /** + * Working storage for nonsymmetric algorithm. + * @var array + */ + private $ort; + + /** + * Used for complex scalar division. + * @var float + */ + private $cdivr; + private $cdivi; + + /** + * Symmetric Householder reduction to tridiagonal form. + * + * @access private + */ + private function tred2() + { + // This is derived from the Algol procedures tred2 by + // Bowdler, Martin, Reinsch, and Wilkinson, Handbook for + // Auto. Comp., Vol.ii-Linear Algebra, and the corresponding + // Fortran subroutine in EISPACK. + $this->d = $this->V[$this->n-1]; + // Householder reduction to tridiagonal form. + for ($i = $this->n-1; $i > 0; --$i) { + $i_ = $i -1; + // Scale to avoid under/overflow. + $h = $scale = 0.0; + $scale += array_sum(array_map(abs, $this->d)); + if ($scale == 0.0) { + $this->e[$i] = $this->d[$i_]; + $this->d = array_slice($this->V[$i_], 0, $i_); + for ($j = 0; $j < $i; ++$j) { + $this->V[$j][$i] = $this->V[$i][$j] = 0.0; + } + } else { + // Generate Householder vector. + for ($k = 0; $k < $i; ++$k) { + $this->d[$k] /= $scale; + $h += pow($this->d[$k], 2); + } + $f = $this->d[$i_]; + $g = sqrt($h); + if ($f > 0) { + $g = -$g; + } + $this->e[$i] = $scale * $g; + $h = $h - $f * $g; + $this->d[$i_] = $f - $g; + for ($j = 0; $j < $i; ++$j) { + $this->e[$j] = 0.0; + } + // Apply similarity transformation to remaining columns. + for ($j = 0; $j < $i; ++$j) { + $f = $this->d[$j]; + $this->V[$j][$i] = $f; + $g = $this->e[$j] + $this->V[$j][$j] * $f; + for ($k = $j+1; $k <= $i_; ++$k) { + $g += $this->V[$k][$j] * $this->d[$k]; + $this->e[$k] += $this->V[$k][$j] * $f; + } + $this->e[$j] = $g; + } + $f = 0.0; + for ($j = 0; $j < $i; ++$j) { + $this->e[$j] /= $h; + $f += $this->e[$j] * $this->d[$j]; + } + $hh = $f / (2 * $h); + for ($j=0; $j < $i; ++$j) { + $this->e[$j] -= $hh * $this->d[$j]; + } + for ($j = 0; $j < $i; ++$j) { + $f = $this->d[$j]; + $g = $this->e[$j]; + for ($k = $j; $k <= $i_; ++$k) { + $this->V[$k][$j] -= ($f * $this->e[$k] + $g * $this->d[$k]); + } + $this->d[$j] = $this->V[$i-1][$j]; + $this->V[$i][$j] = 0.0; + } + } + $this->d[$i] = $h; + } + + // Accumulate transformations. + for ($i = 0; $i < $this->n-1; ++$i) { + $this->V[$this->n-1][$i] = $this->V[$i][$i]; + $this->V[$i][$i] = 1.0; + $h = $this->d[$i+1]; + if ($h != 0.0) { + for ($k = 0; $k <= $i; ++$k) { + $this->d[$k] = $this->V[$k][$i+1] / $h; + } + for ($j = 0; $j <= $i; ++$j) { + $g = 0.0; + for ($k = 0; $k <= $i; ++$k) { + $g += $this->V[$k][$i+1] * $this->V[$k][$j]; + } + for ($k = 0; $k <= $i; ++$k) { + $this->V[$k][$j] -= $g * $this->d[$k]; + } + } + } + for ($k = 0; $k <= $i; ++$k) { + $this->V[$k][$i+1] = 0.0; + } + } + + $this->d = $this->V[$this->n-1]; + $this->V[$this->n-1] = array_fill(0, $j, 0.0); + $this->V[$this->n-1][$this->n-1] = 1.0; + $this->e[0] = 0.0; + } + + /** + * Symmetric tridiagonal QL algorithm. + * + * This is derived from the Algol procedures tql2, by + * Bowdler, Martin, Reinsch, and Wilkinson, Handbook for + * Auto. Comp., Vol.ii-Linear Algebra, and the corresponding + * Fortran subroutine in EISPACK. + * + * @access private + */ + private function tql2() + { + for ($i = 1; $i < $this->n; ++$i) { + $this->e[$i-1] = $this->e[$i]; + } + $this->e[$this->n-1] = 0.0; + $f = 0.0; + $tst1 = 0.0; + $eps = pow(2.0, -52.0); + + for ($l = 0; $l < $this->n; ++$l) { + // Find small subdiagonal element + $tst1 = max($tst1, abs($this->d[$l]) + abs($this->e[$l])); + $m = $l; + while ($m < $this->n) { + if (abs($this->e[$m]) <= $eps * $tst1) { + break; + } + ++$m; + } + // If m == l, $this->d[l] is an eigenvalue, + // otherwise, iterate. + if ($m > $l) { + $iter = 0; + do { + // Could check iteration count here. + $iter += 1; + // Compute implicit shift + $g = $this->d[$l]; + $p = ($this->d[$l+1] - $g) / (2.0 * $this->e[$l]); + $r = hypo($p, 1.0); + if ($p < 0) { + $r *= -1; + } + $this->d[$l] = $this->e[$l] / ($p + $r); + $this->d[$l+1] = $this->e[$l] * ($p + $r); + $dl1 = $this->d[$l+1]; + $h = $g - $this->d[$l]; + for ($i = $l + 2; $i < $this->n; ++$i) { + $this->d[$i] -= $h; + } + $f += $h; + // Implicit QL transformation. + $p = $this->d[$m]; + $c = 1.0; + $c2 = $c3 = $c; + $el1 = $this->e[$l + 1]; + $s = $s2 = 0.0; + for ($i = $m-1; $i >= $l; --$i) { + $c3 = $c2; + $c2 = $c; + $s2 = $s; + $g = $c * $this->e[$i]; + $h = $c * $p; + $r = hypo($p, $this->e[$i]); + $this->e[$i+1] = $s * $r; + $s = $this->e[$i] / $r; + $c = $p / $r; + $p = $c * $this->d[$i] - $s * $g; + $this->d[$i+1] = $h + $s * ($c * $g + $s * $this->d[$i]); + // Accumulate transformation. + for ($k = 0; $k < $this->n; ++$k) { + $h = $this->V[$k][$i+1]; + $this->V[$k][$i+1] = $s * $this->V[$k][$i] + $c * $h; + $this->V[$k][$i] = $c * $this->V[$k][$i] - $s * $h; + } + } + $p = -$s * $s2 * $c3 * $el1 * $this->e[$l] / $dl1; + $this->e[$l] = $s * $p; + $this->d[$l] = $c * $p; + // Check for convergence. + } while (abs($this->e[$l]) > $eps * $tst1); + } + $this->d[$l] = $this->d[$l] + $f; + $this->e[$l] = 0.0; + } + + // Sort eigenvalues and corresponding vectors. + for ($i = 0; $i < $this->n - 1; ++$i) { + $k = $i; + $p = $this->d[$i]; + for ($j = $i+1; $j < $this->n; ++$j) { + if ($this->d[$j] < $p) { + $k = $j; + $p = $this->d[$j]; + } + } + if ($k != $i) { + $this->d[$k] = $this->d[$i]; + $this->d[$i] = $p; + for ($j = 0; $j < $this->n; ++$j) { + $p = $this->V[$j][$i]; + $this->V[$j][$i] = $this->V[$j][$k]; + $this->V[$j][$k] = $p; + } + } + } + } + + /** + * Nonsymmetric reduction to Hessenberg form. + * + * This is derived from the Algol procedures orthes and ortran, + * by Martin and Wilkinson, Handbook for Auto. Comp., + * Vol.ii-Linear Algebra, and the corresponding + * Fortran subroutines in EISPACK. + * + * @access private + */ + private function orthes() + { + $low = 0; + $high = $this->n-1; + + for ($m = $low+1; $m <= $high-1; ++$m) { + // Scale column. + $scale = 0.0; + for ($i = $m; $i <= $high; ++$i) { + $scale = $scale + abs($this->H[$i][$m-1]); + } + if ($scale != 0.0) { + // Compute Householder transformation. + $h = 0.0; + for ($i = $high; $i >= $m; --$i) { + $this->ort[$i] = $this->H[$i][$m-1] / $scale; + $h += $this->ort[$i] * $this->ort[$i]; + } + $g = sqrt($h); + if ($this->ort[$m] > 0) { + $g *= -1; + } + $h -= $this->ort[$m] * $g; + $this->ort[$m] -= $g; + // Apply Householder similarity transformation + // H = (I -u * u' / h) * H * (I -u * u') / h) + for ($j = $m; $j < $this->n; ++$j) { + $f = 0.0; + for ($i = $high; $i >= $m; --$i) { + $f += $this->ort[$i] * $this->H[$i][$j]; + } + $f /= $h; + for ($i = $m; $i <= $high; ++$i) { + $this->H[$i][$j] -= $f * $this->ort[$i]; + } + } + for ($i = 0; $i <= $high; ++$i) { + $f = 0.0; + for ($j = $high; $j >= $m; --$j) { + $f += $this->ort[$j] * $this->H[$i][$j]; + } + $f = $f / $h; + for ($j = $m; $j <= $high; ++$j) { + $this->H[$i][$j] -= $f * $this->ort[$j]; + } + } + $this->ort[$m] = $scale * $this->ort[$m]; + $this->H[$m][$m-1] = $scale * $g; + } + } + + // Accumulate transformations (Algol's ortran). + for ($i = 0; $i < $this->n; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $this->V[$i][$j] = ($i == $j ? 1.0 : 0.0); + } + } + for ($m = $high-1; $m >= $low+1; --$m) { + if ($this->H[$m][$m-1] != 0.0) { + for ($i = $m+1; $i <= $high; ++$i) { + $this->ort[$i] = $this->H[$i][$m-1]; + } + for ($j = $m; $j <= $high; ++$j) { + $g = 0.0; + for ($i = $m; $i <= $high; ++$i) { + $g += $this->ort[$i] * $this->V[$i][$j]; + } + // Double division avoids possible underflow + $g = ($g / $this->ort[$m]) / $this->H[$m][$m-1]; + for ($i = $m; $i <= $high; ++$i) { + $this->V[$i][$j] += $g * $this->ort[$i]; + } + } + } + } + } + + /** + * Performs complex division. + * + * @access private + */ + private function cdiv($xr, $xi, $yr, $yi) + { + if (abs($yr) > abs($yi)) { + $r = $yi / $yr; + $d = $yr + $r * $yi; + $this->cdivr = ($xr + $r * $xi) / $d; + $this->cdivi = ($xi - $r * $xr) / $d; + } else { + $r = $yr / $yi; + $d = $yi + $r * $yr; + $this->cdivr = ($r * $xr + $xi) / $d; + $this->cdivi = ($r * $xi - $xr) / $d; + } + } + + /** + * Nonsymmetric reduction from Hessenberg to real Schur form. + * + * Code is derived from the Algol procedure hqr2, + * by Martin and Wilkinson, Handbook for Auto. Comp., + * Vol.ii-Linear Algebra, and the corresponding + * Fortran subroutine in EISPACK. + * + * @access private + */ + private function hqr2() + { + // Initialize + $nn = $this->n; + $n = $nn - 1; + $low = 0; + $high = $nn - 1; + $eps = pow(2.0, -52.0); + $exshift = 0.0; + $p = $q = $r = $s = $z = 0; + // Store roots isolated by balanc and compute matrix norm + $norm = 0.0; + + for ($i = 0; $i < $nn; ++$i) { + if (($i < $low) or ($i > $high)) { + $this->d[$i] = $this->H[$i][$i]; + $this->e[$i] = 0.0; + } + for ($j = max($i-1, 0); $j < $nn; ++$j) { + $norm = $norm + abs($this->H[$i][$j]); + } + } + + // Outer loop over eigenvalue index + $iter = 0; + while ($n >= $low) { + // Look for single small sub-diagonal element + $l = $n; + while ($l > $low) { + $s = abs($this->H[$l-1][$l-1]) + abs($this->H[$l][$l]); + if ($s == 0.0) { + $s = $norm; + } + if (abs($this->H[$l][$l-1]) < $eps * $s) { + break; + } + --$l; + } + // Check for convergence + // One root found + if ($l == $n) { + $this->H[$n][$n] = $this->H[$n][$n] + $exshift; + $this->d[$n] = $this->H[$n][$n]; + $this->e[$n] = 0.0; + --$n; + $iter = 0; + // Two roots found + } elseif ($l == $n-1) { + $w = $this->H[$n][$n-1] * $this->H[$n-1][$n]; + $p = ($this->H[$n-1][$n-1] - $this->H[$n][$n]) / 2.0; + $q = $p * $p + $w; + $z = sqrt(abs($q)); + $this->H[$n][$n] = $this->H[$n][$n] + $exshift; + $this->H[$n-1][$n-1] = $this->H[$n-1][$n-1] + $exshift; + $x = $this->H[$n][$n]; + // Real pair + if ($q >= 0) { + if ($p >= 0) { + $z = $p + $z; + } else { + $z = $p - $z; + } + $this->d[$n-1] = $x + $z; + $this->d[$n] = $this->d[$n-1]; + if ($z != 0.0) { + $this->d[$n] = $x - $w / $z; + } + $this->e[$n-1] = 0.0; + $this->e[$n] = 0.0; + $x = $this->H[$n][$n-1]; + $s = abs($x) + abs($z); + $p = $x / $s; + $q = $z / $s; + $r = sqrt($p * $p + $q * $q); + $p = $p / $r; + $q = $q / $r; + // Row modification + for ($j = $n-1; $j < $nn; ++$j) { + $z = $this->H[$n-1][$j]; + $this->H[$n-1][$j] = $q * $z + $p * $this->H[$n][$j]; + $this->H[$n][$j] = $q * $this->H[$n][$j] - $p * $z; + } + // Column modification + for ($i = 0; $i <= $n; ++$i) { + $z = $this->H[$i][$n-1]; + $this->H[$i][$n-1] = $q * $z + $p * $this->H[$i][$n]; + $this->H[$i][$n] = $q * $this->H[$i][$n] - $p * $z; + } + // Accumulate transformations + for ($i = $low; $i <= $high; ++$i) { + $z = $this->V[$i][$n-1]; + $this->V[$i][$n-1] = $q * $z + $p * $this->V[$i][$n]; + $this->V[$i][$n] = $q * $this->V[$i][$n] - $p * $z; + } + // Complex pair + } else { + $this->d[$n-1] = $x + $p; + $this->d[$n] = $x + $p; + $this->e[$n-1] = $z; + $this->e[$n] = -$z; + } + $n = $n - 2; + $iter = 0; + // No convergence yet + } else { + // Form shift + $x = $this->H[$n][$n]; + $y = 0.0; + $w = 0.0; + if ($l < $n) { + $y = $this->H[$n-1][$n-1]; + $w = $this->H[$n][$n-1] * $this->H[$n-1][$n]; + } + // Wilkinson's original ad hoc shift + if ($iter == 10) { + $exshift += $x; + for ($i = $low; $i <= $n; ++$i) { + $this->H[$i][$i] -= $x; + } + $s = abs($this->H[$n][$n-1]) + abs($this->H[$n-1][$n-2]); + $x = $y = 0.75 * $s; + $w = -0.4375 * $s * $s; + } + // MATLAB's new ad hoc shift + if ($iter == 30) { + $s = ($y - $x) / 2.0; + $s = $s * $s + $w; + if ($s > 0) { + $s = sqrt($s); + if ($y < $x) { + $s = -$s; + } + $s = $x - $w / (($y - $x) / 2.0 + $s); + for ($i = $low; $i <= $n; ++$i) { + $this->H[$i][$i] -= $s; + } + $exshift += $s; + $x = $y = $w = 0.964; + } + } + // Could check iteration count here. + $iter = $iter + 1; + // Look for two consecutive small sub-diagonal elements + $m = $n - 2; + while ($m >= $l) { + $z = $this->H[$m][$m]; + $r = $x - $z; + $s = $y - $z; + $p = ($r * $s - $w) / $this->H[$m+1][$m] + $this->H[$m][$m+1]; + $q = $this->H[$m+1][$m+1] - $z - $r - $s; + $r = $this->H[$m+2][$m+1]; + $s = abs($p) + abs($q) + abs($r); + $p = $p / $s; + $q = $q / $s; + $r = $r / $s; + if ($m == $l) { + break; + } + if (abs($this->H[$m][$m-1]) * (abs($q) + abs($r)) < + $eps * (abs($p) * (abs($this->H[$m-1][$m-1]) + abs($z) + abs($this->H[$m+1][$m+1])))) { + break; + } + --$m; + } + for ($i = $m + 2; $i <= $n; ++$i) { + $this->H[$i][$i-2] = 0.0; + if ($i > $m+2) { + $this->H[$i][$i-3] = 0.0; + } + } + // Double QR step involving rows l:n and columns m:n + for ($k = $m; $k <= $n-1; ++$k) { + $notlast = ($k != $n-1); + if ($k != $m) { + $p = $this->H[$k][$k-1]; + $q = $this->H[$k+1][$k-1]; + $r = ($notlast ? $this->H[$k+2][$k-1] : 0.0); + $x = abs($p) + abs($q) + abs($r); + if ($x != 0.0) { + $p = $p / $x; + $q = $q / $x; + $r = $r / $x; + } + } + if ($x == 0.0) { + break; + } + $s = sqrt($p * $p + $q * $q + $r * $r); + if ($p < 0) { + $s = -$s; + } + if ($s != 0) { + if ($k != $m) { + $this->H[$k][$k-1] = -$s * $x; + } elseif ($l != $m) { + $this->H[$k][$k-1] = -$this->H[$k][$k-1]; + } + $p = $p + $s; + $x = $p / $s; + $y = $q / $s; + $z = $r / $s; + $q = $q / $p; + $r = $r / $p; + // Row modification + for ($j = $k; $j < $nn; ++$j) { + $p = $this->H[$k][$j] + $q * $this->H[$k+1][$j]; + if ($notlast) { + $p = $p + $r * $this->H[$k+2][$j]; + $this->H[$k+2][$j] = $this->H[$k+2][$j] - $p * $z; + } + $this->H[$k][$j] = $this->H[$k][$j] - $p * $x; + $this->H[$k+1][$j] = $this->H[$k+1][$j] - $p * $y; + } + // Column modification + for ($i = 0; $i <= min($n, $k+3); ++$i) { + $p = $x * $this->H[$i][$k] + $y * $this->H[$i][$k+1]; + if ($notlast) { + $p = $p + $z * $this->H[$i][$k+2]; + $this->H[$i][$k+2] = $this->H[$i][$k+2] - $p * $r; + } + $this->H[$i][$k] = $this->H[$i][$k] - $p; + $this->H[$i][$k+1] = $this->H[$i][$k+1] - $p * $q; + } + // Accumulate transformations + for ($i = $low; $i <= $high; ++$i) { + $p = $x * $this->V[$i][$k] + $y * $this->V[$i][$k+1]; + if ($notlast) { + $p = $p + $z * $this->V[$i][$k+2]; + $this->V[$i][$k+2] = $this->V[$i][$k+2] - $p * $r; + } + $this->V[$i][$k] = $this->V[$i][$k] - $p; + $this->V[$i][$k+1] = $this->V[$i][$k+1] - $p * $q; + } + } // ($s != 0) + } // k loop + } // check convergence + } // while ($n >= $low) + + // Backsubstitute to find vectors of upper triangular form + if ($norm == 0.0) { + return; + } + + for ($n = $nn-1; $n >= 0; --$n) { + $p = $this->d[$n]; + $q = $this->e[$n]; + // Real vector + if ($q == 0) { + $l = $n; + $this->H[$n][$n] = 1.0; + for ($i = $n-1; $i >= 0; --$i) { + $w = $this->H[$i][$i] - $p; + $r = 0.0; + for ($j = $l; $j <= $n; ++$j) { + $r = $r + $this->H[$i][$j] * $this->H[$j][$n]; + } + if ($this->e[$i] < 0.0) { + $z = $w; + $s = $r; + } else { + $l = $i; + if ($this->e[$i] == 0.0) { + if ($w != 0.0) { + $this->H[$i][$n] = -$r / $w; + } else { + $this->H[$i][$n] = -$r / ($eps * $norm); + } + // Solve real equations + } else { + $x = $this->H[$i][$i+1]; + $y = $this->H[$i+1][$i]; + $q = ($this->d[$i] - $p) * ($this->d[$i] - $p) + $this->e[$i] * $this->e[$i]; + $t = ($x * $s - $z * $r) / $q; + $this->H[$i][$n] = $t; + if (abs($x) > abs($z)) { + $this->H[$i+1][$n] = (-$r - $w * $t) / $x; + } else { + $this->H[$i+1][$n] = (-$s - $y * $t) / $z; + } + } + // Overflow control + $t = abs($this->H[$i][$n]); + if (($eps * $t) * $t > 1) { + for ($j = $i; $j <= $n; ++$j) { + $this->H[$j][$n] = $this->H[$j][$n] / $t; + } + } + } + } + // Complex vector + } elseif ($q < 0) { + $l = $n-1; + // Last vector component imaginary so matrix is triangular + if (abs($this->H[$n][$n-1]) > abs($this->H[$n-1][$n])) { + $this->H[$n-1][$n-1] = $q / $this->H[$n][$n-1]; + $this->H[$n-1][$n] = -($this->H[$n][$n] - $p) / $this->H[$n][$n-1]; + } else { + $this->cdiv(0.0, -$this->H[$n-1][$n], $this->H[$n-1][$n-1] - $p, $q); + $this->H[$n-1][$n-1] = $this->cdivr; + $this->H[$n-1][$n] = $this->cdivi; + } + $this->H[$n][$n-1] = 0.0; + $this->H[$n][$n] = 1.0; + for ($i = $n-2; $i >= 0; --$i) { + // double ra,sa,vr,vi; + $ra = 0.0; + $sa = 0.0; + for ($j = $l; $j <= $n; ++$j) { + $ra = $ra + $this->H[$i][$j] * $this->H[$j][$n-1]; + $sa = $sa + $this->H[$i][$j] * $this->H[$j][$n]; + } + $w = $this->H[$i][$i] - $p; + if ($this->e[$i] < 0.0) { + $z = $w; + $r = $ra; + $s = $sa; + } else { + $l = $i; + if ($this->e[$i] == 0) { + $this->cdiv(-$ra, -$sa, $w, $q); + $this->H[$i][$n-1] = $this->cdivr; + $this->H[$i][$n] = $this->cdivi; + } else { + // Solve complex equations + $x = $this->H[$i][$i+1]; + $y = $this->H[$i+1][$i]; + $vr = ($this->d[$i] - $p) * ($this->d[$i] - $p) + $this->e[$i] * $this->e[$i] - $q * $q; + $vi = ($this->d[$i] - $p) * 2.0 * $q; + if ($vr == 0.0 & $vi == 0.0) { + $vr = $eps * $norm * (abs($w) + abs($q) + abs($x) + abs($y) + abs($z)); + } + $this->cdiv($x * $r - $z * $ra + $q * $sa, $x * $s - $z * $sa - $q * $ra, $vr, $vi); + $this->H[$i][$n-1] = $this->cdivr; + $this->H[$i][$n] = $this->cdivi; + if (abs($x) > (abs($z) + abs($q))) { + $this->H[$i+1][$n-1] = (-$ra - $w * $this->H[$i][$n-1] + $q * $this->H[$i][$n]) / $x; + $this->H[$i+1][$n] = (-$sa - $w * $this->H[$i][$n] - $q * $this->H[$i][$n-1]) / $x; + } else { + $this->cdiv(-$r - $y * $this->H[$i][$n-1], -$s - $y * $this->H[$i][$n], $z, $q); + $this->H[$i+1][$n-1] = $this->cdivr; + $this->H[$i+1][$n] = $this->cdivi; + } + } + // Overflow control + $t = max(abs($this->H[$i][$n-1]), abs($this->H[$i][$n])); + if (($eps * $t) * $t > 1) { + for ($j = $i; $j <= $n; ++$j) { + $this->H[$j][$n-1] = $this->H[$j][$n-1] / $t; + $this->H[$j][$n] = $this->H[$j][$n] / $t; + } + } + } // end else + } // end for + } // end else for complex case + } // end for + + // Vectors of isolated roots + for ($i = 0; $i < $nn; ++$i) { + if ($i < $low | $i > $high) { + for ($j = $i; $j < $nn; ++$j) { + $this->V[$i][$j] = $this->H[$i][$j]; + } + } + } + + // Back transformation to get eigenvectors of original matrix + for ($j = $nn-1; $j >= $low; --$j) { + for ($i = $low; $i <= $high; ++$i) { + $z = 0.0; + for ($k = $low; $k <= min($j, $high); ++$k) { + $z = $z + $this->V[$i][$k] * $this->H[$k][$j]; + } + $this->V[$i][$j] = $z; + } + } + } // end hqr2 + + /** + * Constructor: Check for symmetry, then construct the eigenvalue decomposition + * + * @access public + * @param A Square matrix + * @return Structure to access D and V. + */ + public function __construct($Arg) + { + $this->A = $Arg->getArray(); + $this->n = $Arg->getColumnDimension(); + + $issymmetric = true; + for ($j = 0; ($j < $this->n) & $issymmetric; ++$j) { + for ($i = 0; ($i < $this->n) & $issymmetric; ++$i) { + $issymmetric = ($this->A[$i][$j] == $this->A[$j][$i]); + } + } + + if ($issymmetric) { + $this->V = $this->A; + // Tridiagonalize. + $this->tred2(); + // Diagonalize. + $this->tql2(); + } else { + $this->H = $this->A; + $this->ort = array(); + // Reduce to Hessenberg form. + $this->orthes(); + // Reduce Hessenberg to real Schur form. + $this->hqr2(); + } + } + + /** + * Return the eigenvector matrix + * + * @access public + * @return V + */ + public function getV() + { + return new Matrix($this->V, $this->n, $this->n); + } + + /** + * Return the real parts of the eigenvalues + * + * @access public + * @return real(diag(D)) + */ + public function getRealEigenvalues() + { + return $this->d; + } + + /** + * Return the imaginary parts of the eigenvalues + * + * @access public + * @return imag(diag(D)) + */ + public function getImagEigenvalues() + { + return $this->e; + } + + /** + * Return the block diagonal eigenvalue matrix + * + * @access public + * @return D + */ + public function getD() + { + for ($i = 0; $i < $this->n; ++$i) { + $D[$i] = array_fill(0, $this->n, 0.0); + $D[$i][$i] = $this->d[$i]; + if ($this->e[$i] == 0) { + continue; + } + $o = ($this->e[$i] > 0) ? $i + 1 : $i - 1; + $D[$i][$o] = $this->e[$i]; + } + return new Matrix($D); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/LUDecomposition.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/LUDecomposition.php new file mode 100644 index 0000000..2505d92 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/LUDecomposition.php @@ -0,0 +1,257 @@ +<?php +/** + * @package JAMA + * + * For an m-by-n matrix A with m >= n, the LU decomposition is an m-by-n + * unit lower triangular matrix L, an n-by-n upper triangular matrix U, + * and a permutation vector piv of length m so that A(piv,:) = L*U. + * If m < n, then L is m-by-m and U is m-by-n. + * + * The LU decompostion with pivoting always exists, even if the matrix is + * singular, so the constructor will never fail. The primary use of the + * LU decomposition is in the solution of square systems of simultaneous + * linear equations. This will fail if isNonsingular() returns false. + * + * @author Paul Meagher + * @author Bartosz Matosiuk + * @author Michael Bommarito + * @version 1.1 + * @license PHP v3.0 + */ +class PHPExcel_Shared_JAMA_LUDecomposition +{ + const MATRIX_SINGULAR_EXCEPTION = "Can only perform operation on singular matrix."; + const MATRIX_SQUARE_EXCEPTION = "Mismatched Row dimension"; + + /** + * Decomposition storage + * @var array + */ + private $LU = array(); + + /** + * Row dimension. + * @var int + */ + private $m; + + /** + * Column dimension. + * @var int + */ + private $n; + + /** + * Pivot sign. + * @var int + */ + private $pivsign; + + /** + * Internal storage of pivot vector. + * @var array + */ + private $piv = array(); + + /** + * LU Decomposition constructor. + * + * @param $A Rectangular matrix + * @return Structure to access L, U and piv. + */ + public function __construct($A) + { + if ($A instanceof PHPExcel_Shared_JAMA_Matrix) { + // Use a "left-looking", dot-product, Crout/Doolittle algorithm. + $this->LU = $A->getArray(); + $this->m = $A->getRowDimension(); + $this->n = $A->getColumnDimension(); + for ($i = 0; $i < $this->m; ++$i) { + $this->piv[$i] = $i; + } + $this->pivsign = 1; + $LUrowi = $LUcolj = array(); + + // Outer loop. + for ($j = 0; $j < $this->n; ++$j) { + // Make a copy of the j-th column to localize references. + for ($i = 0; $i < $this->m; ++$i) { + $LUcolj[$i] = &$this->LU[$i][$j]; + } + // Apply previous transformations. + for ($i = 0; $i < $this->m; ++$i) { + $LUrowi = $this->LU[$i]; + // Most of the time is spent in the following dot product. + $kmax = min($i, $j); + $s = 0.0; + for ($k = 0; $k < $kmax; ++$k) { + $s += $LUrowi[$k] * $LUcolj[$k]; + } + $LUrowi[$j] = $LUcolj[$i] -= $s; + } + // Find pivot and exchange if necessary. + $p = $j; + for ($i = $j+1; $i < $this->m; ++$i) { + if (abs($LUcolj[$i]) > abs($LUcolj[$p])) { + $p = $i; + } + } + if ($p != $j) { + for ($k = 0; $k < $this->n; ++$k) { + $t = $this->LU[$p][$k]; + $this->LU[$p][$k] = $this->LU[$j][$k]; + $this->LU[$j][$k] = $t; + } + $k = $this->piv[$p]; + $this->piv[$p] = $this->piv[$j]; + $this->piv[$j] = $k; + $this->pivsign = $this->pivsign * -1; + } + // Compute multipliers. + if (($j < $this->m) && ($this->LU[$j][$j] != 0.0)) { + for ($i = $j+1; $i < $this->m; ++$i) { + $this->LU[$i][$j] /= $this->LU[$j][$j]; + } + } + } + } else { + throw new PHPExcel_Calculation_Exception(PHPExcel_Shared_JAMA_Matrix::ARGUMENT_TYPE_EXCEPTION); + } + } // function __construct() + + /** + * Get lower triangular factor. + * + * @return array Lower triangular factor + */ + public function getL() + { + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + if ($i > $j) { + $L[$i][$j] = $this->LU[$i][$j]; + } elseif ($i == $j) { + $L[$i][$j] = 1.0; + } else { + $L[$i][$j] = 0.0; + } + } + } + return new PHPExcel_Shared_JAMA_Matrix($L); + } // function getL() + + /** + * Get upper triangular factor. + * + * @return array Upper triangular factor + */ + public function getU() + { + for ($i = 0; $i < $this->n; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + if ($i <= $j) { + $U[$i][$j] = $this->LU[$i][$j]; + } else { + $U[$i][$j] = 0.0; + } + } + } + return new PHPExcel_Shared_JAMA_Matrix($U); + } // function getU() + + /** + * Return pivot permutation vector. + * + * @return array Pivot vector + */ + public function getPivot() + { + return $this->piv; + } // function getPivot() + + /** + * Alias for getPivot + * + * @see getPivot + */ + public function getDoublePivot() + { + return $this->getPivot(); + } // function getDoublePivot() + + /** + * Is the matrix nonsingular? + * + * @return true if U, and hence A, is nonsingular. + */ + public function isNonsingular() + { + for ($j = 0; $j < $this->n; ++$j) { + if ($this->LU[$j][$j] == 0) { + return false; + } + } + return true; + } // function isNonsingular() + + /** + * Count determinants + * + * @return array d matrix deterninat + */ + public function det() + { + if ($this->m == $this->n) { + $d = $this->pivsign; + for ($j = 0; $j < $this->n; ++$j) { + $d *= $this->LU[$j][$j]; + } + return $d; + } else { + throw new PHPExcel_Calculation_Exception(PHPExcel_Shared_JAMA_Matrix::MATRIX_DIMENSION_EXCEPTION); + } + } // function det() + + /** + * Solve A*X = B + * + * @param $B A Matrix with as many rows as A and any number of columns. + * @return X so that L*U*X = B(piv,:) + * @PHPExcel_Calculation_Exception IllegalArgumentException Matrix row dimensions must agree. + * @PHPExcel_Calculation_Exception RuntimeException Matrix is singular. + */ + public function solve($B) + { + if ($B->getRowDimension() == $this->m) { + if ($this->isNonsingular()) { + // Copy right hand side with pivoting + $nx = $B->getColumnDimension(); + $X = $B->getMatrix($this->piv, 0, $nx-1); + // Solve L*Y = B(piv,:) + for ($k = 0; $k < $this->n; ++$k) { + for ($i = $k+1; $i < $this->n; ++$i) { + for ($j = 0; $j < $nx; ++$j) { + $X->A[$i][$j] -= $X->A[$k][$j] * $this->LU[$i][$k]; + } + } + } + // Solve U*X = Y; + for ($k = $this->n-1; $k >= 0; --$k) { + for ($j = 0; $j < $nx; ++$j) { + $X->A[$k][$j] /= $this->LU[$k][$k]; + } + for ($i = 0; $i < $k; ++$i) { + for ($j = 0; $j < $nx; ++$j) { + $X->A[$i][$j] -= $X->A[$k][$j] * $this->LU[$i][$k]; + } + } + } + return $X; + } else { + throw new PHPExcel_Calculation_Exception(self::MATRIX_SINGULAR_EXCEPTION); + } + } else { + throw new PHPExcel_Calculation_Exception(self::MATRIX_SQUARE_EXCEPTION); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/Matrix.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/Matrix.php new file mode 100644 index 0000000..82fb0fb --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/Matrix.php @@ -0,0 +1,1159 @@ +<?php +/** + * @package JAMA + */ + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/* + * Matrix class + * + * @author Paul Meagher + * @author Michael Bommarito + * @author Lukasz Karapuda + * @author Bartek Matosiuk + * @version 1.8 + * @license PHP v3.0 + * @see http://math.nist.gov/javanumerics/jama/ + */ +class PHPExcel_Shared_JAMA_Matrix +{ + const POLYMORPHIC_ARGUMENT_EXCEPTION = "Invalid argument pattern for polymorphic function."; + const ARGUMENT_TYPE_EXCEPTION = "Invalid argument type."; + const ARGUMENT_BOUNDS_EXCEPTION = "Invalid argument range."; + const MATRIX_DIMENSION_EXCEPTION = "Matrix dimensions are not equal."; + const ARRAY_LENGTH_EXCEPTION = "Array length must be a multiple of m."; + + /** + * Matrix storage + * + * @var array + * @access public + */ + public $A = array(); + + /** + * Matrix row dimension + * + * @var int + * @access private + */ + private $m; + + /** + * Matrix column dimension + * + * @var int + * @access private + */ + private $n; + + /** + * Polymorphic constructor + * + * As PHP has no support for polymorphic constructors, we hack our own sort of polymorphism using func_num_args, func_get_arg, and gettype. In essence, we're just implementing a simple RTTI filter and calling the appropriate constructor. + */ + public function __construct() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + //Rectangular matrix - m x n initialized from 2D array + case 'array': + $this->m = count($args[0]); + $this->n = count($args[0][0]); + $this->A = $args[0]; + break; + //Square matrix - n x n + case 'integer': + $this->m = $args[0]; + $this->n = $args[0]; + $this->A = array_fill(0, $this->m, array_fill(0, $this->n, 0)); + break; + //Rectangular matrix - m x n + case 'integer,integer': + $this->m = $args[0]; + $this->n = $args[1]; + $this->A = array_fill(0, $this->m, array_fill(0, $this->n, 0)); + break; + //Rectangular matrix - m x n initialized from packed array + case 'array,integer': + $this->m = $args[1]; + if ($this->m != 0) { + $this->n = count($args[0]) / $this->m; + } else { + $this->n = 0; + } + if (($this->m * $this->n) == count($args[0])) { + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $this->A[$i][$j] = $args[0][$i + $j * $this->m]; + } + } + } else { + throw new PHPExcel_Calculation_Exception(self::ARRAY_LENGTH_EXCEPTION); + } + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + /** + * getArray + * + * @return array Matrix array + */ + public function getArray() + { + return $this->A; + } + + /** + * getRowDimension + * + * @return int Row dimension + */ + public function getRowDimension() + { + return $this->m; + } + + /** + * getColumnDimension + * + * @return int Column dimension + */ + public function getColumnDimension() + { + return $this->n; + } + + /** + * get + * + * Get the i,j-th element of the matrix. + * @param int $i Row position + * @param int $j Column position + * @return mixed Element (int/float/double) + */ + public function get($i = null, $j = null) + { + return $this->A[$i][$j]; + } + + /** + * getMatrix + * + * Get a submatrix + * @param int $i0 Initial row index + * @param int $iF Final row index + * @param int $j0 Initial column index + * @param int $jF Final column index + * @return Matrix Submatrix + */ + public function getMatrix() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + //A($i0...; $j0...) + case 'integer,integer': + list($i0, $j0) = $args; + if ($i0 >= 0) { + $m = $this->m - $i0; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + if ($j0 >= 0) { + $n = $this->n - $j0; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n); + for ($i = $i0; $i < $this->m; ++$i) { + for ($j = $j0; $j < $this->n; ++$j) { + $R->set($i, $j, $this->A[$i][$j]); + } + } + return $R; + break; + //A($i0...$iF; $j0...$jF) + case 'integer,integer,integer,integer': + list($i0, $iF, $j0, $jF) = $args; + if (($iF > $i0) && ($this->m >= $iF) && ($i0 >= 0)) { + $m = $iF - $i0; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + if (($jF > $j0) && ($this->n >= $jF) && ($j0 >= 0)) { + $n = $jF - $j0; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + $R = new PHPExcel_Shared_JAMA_Matrix($m+1, $n+1); + for ($i = $i0; $i <= $iF; ++$i) { + for ($j = $j0; $j <= $jF; ++$j) { + $R->set($i - $i0, $j - $j0, $this->A[$i][$j]); + } + } + return $R; + break; + //$R = array of row indices; $C = array of column indices + case 'array,array': + list($RL, $CL) = $args; + if (count($RL) > 0) { + $m = count($RL); + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + if (count($CL) > 0) { + $n = count($CL); + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n); + for ($i = 0; $i < $m; ++$i) { + for ($j = 0; $j < $n; ++$j) { + $R->set($i - $i0, $j - $j0, $this->A[$RL[$i]][$CL[$j]]); + } + } + return $R; + break; + //$RL = array of row indices; $CL = array of column indices + case 'array,array': + list($RL, $CL) = $args; + if (count($RL) > 0) { + $m = count($RL); + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + if (count($CL) > 0) { + $n = count($CL); + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n); + for ($i = 0; $i < $m; ++$i) { + for ($j = 0; $j < $n; ++$j) { + $R->set($i, $j, $this->A[$RL[$i]][$CL[$j]]); + } + } + return $R; + break; + //A($i0...$iF); $CL = array of column indices + case 'integer,integer,array': + list($i0, $iF, $CL) = $args; + if (($iF > $i0) && ($this->m >= $iF) && ($i0 >= 0)) { + $m = $iF - $i0; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + if (count($CL) > 0) { + $n = count($CL); + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n); + for ($i = $i0; $i < $iF; ++$i) { + for ($j = 0; $j < $n; ++$j) { + $R->set($i - $i0, $j, $this->A[$RL[$i]][$j]); + } + } + return $R; + break; + //$RL = array of row indices + case 'array,integer,integer': + list($RL, $j0, $jF) = $args; + if (count($RL) > 0) { + $m = count($RL); + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + if (($jF >= $j0) && ($this->n >= $jF) && ($j0 >= 0)) { + $n = $jF - $j0; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_BOUNDS_EXCEPTION); + } + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n+1); + for ($i = 0; $i < $m; ++$i) { + for ($j = $j0; $j <= $jF; ++$j) { + $R->set($i, $j - $j0, $this->A[$RL[$i]][$j]); + } + } + return $R; + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + /** + * checkMatrixDimensions + * + * Is matrix B the same size? + * @param Matrix $B Matrix B + * @return boolean + */ + public function checkMatrixDimensions($B = null) + { + if ($B instanceof PHPExcel_Shared_JAMA_Matrix) { + if (($this->m == $B->getRowDimension()) && ($this->n == $B->getColumnDimension())) { + return true; + } else { + throw new PHPExcel_Calculation_Exception(self::MATRIX_DIMENSION_EXCEPTION); + } + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + } // function checkMatrixDimensions() + + /** + * set + * + * Set the i,j-th element of the matrix. + * @param int $i Row position + * @param int $j Column position + * @param mixed $c Int/float/double value + * @return mixed Element (int/float/double) + */ + public function set($i = null, $j = null, $c = null) + { + // Optimized set version just has this + $this->A[$i][$j] = $c; + } // function set() + + /** + * identity + * + * Generate an identity matrix. + * @param int $m Row dimension + * @param int $n Column dimension + * @return Matrix Identity matrix + */ + public function identity($m = null, $n = null) + { + return $this->diagonal($m, $n, 1); + } + + /** + * diagonal + * + * Generate a diagonal matrix + * @param int $m Row dimension + * @param int $n Column dimension + * @param mixed $c Diagonal value + * @return Matrix Diagonal matrix + */ + public function diagonal($m = null, $n = null, $c = 1) + { + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n); + for ($i = 0; $i < $m; ++$i) { + $R->set($i, $i, $c); + } + return $R; + } + + /** + * getMatrixByRow + * + * Get a submatrix by row index/range + * @param int $i0 Initial row index + * @param int $iF Final row index + * @return Matrix Submatrix + */ + public function getMatrixByRow($i0 = null, $iF = null) + { + if (is_int($i0)) { + if (is_int($iF)) { + return $this->getMatrix($i0, 0, $iF + 1, $this->n); + } else { + return $this->getMatrix($i0, 0, $i0 + 1, $this->n); + } + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + } + + /** + * getMatrixByCol + * + * Get a submatrix by column index/range + * @param int $i0 Initial column index + * @param int $iF Final column index + * @return Matrix Submatrix + */ + public function getMatrixByCol($j0 = null, $jF = null) + { + if (is_int($j0)) { + if (is_int($jF)) { + return $this->getMatrix(0, $j0, $this->m, $jF + 1); + } else { + return $this->getMatrix(0, $j0, $this->m, $j0 + 1); + } + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + } + + /** + * transpose + * + * Tranpose matrix + * @return Matrix Transposed matrix + */ + public function transpose() + { + $R = new PHPExcel_Shared_JAMA_Matrix($this->n, $this->m); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $R->set($j, $i, $this->A[$i][$j]); + } + } + return $R; + } // function transpose() + + /** + * trace + * + * Sum of diagonal elements + * @return float Sum of diagonal elements + */ + public function trace() + { + $s = 0; + $n = min($this->m, $this->n); + for ($i = 0; $i < $n; ++$i) { + $s += $this->A[$i][$i]; + } + return $s; + } + + /** + * uminus + * + * Unary minus matrix -A + * @return Matrix Unary minus matrix + */ + public function uminus() + { + } + + /** + * plus + * + * A + B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function plus() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $M->set($i, $j, $M->get($i, $j) + $this->A[$i][$j]); + } + } + return $M; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + /** + * plusEquals + * + * A = A + B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function plusEquals() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $validValues = true; + $value = $M->get($i, $j); + if ((is_string($this->A[$i][$j])) && (strlen($this->A[$i][$j]) > 0) && (!is_numeric($this->A[$i][$j]))) { + $this->A[$i][$j] = trim($this->A[$i][$j], '"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($this->A[$i][$j]); + } + if ((is_string($value)) && (strlen($value) > 0) && (!is_numeric($value))) { + $value = trim($value, '"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($value); + } + if ($validValues) { + $this->A[$i][$j] += $value; + } else { + $this->A[$i][$j] = PHPExcel_Calculation_Functions::NaN(); + } + } + } + return $this; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + /** + * minus + * + * A - B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function minus() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $M->set($i, $j, $M->get($i, $j) - $this->A[$i][$j]); + } + } + return $M; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + /** + * minusEquals + * + * A = A - B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function minusEquals() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $validValues = true; + $value = $M->get($i, $j); + if ((is_string($this->A[$i][$j])) && (strlen($this->A[$i][$j]) > 0) && (!is_numeric($this->A[$i][$j]))) { + $this->A[$i][$j] = trim($this->A[$i][$j], '"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($this->A[$i][$j]); + } + if ((is_string($value)) && (strlen($value) > 0) && (!is_numeric($value))) { + $value = trim($value, '"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($value); + } + if ($validValues) { + $this->A[$i][$j] -= $value; + } else { + $this->A[$i][$j] = PHPExcel_Calculation_Functions::NaN(); + } + } + } + return $this; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + /** + * arrayTimes + * + * Element-by-element multiplication + * Cij = Aij * Bij + * @param mixed $B Matrix/Array + * @return Matrix Matrix Cij + */ + public function arrayTimes() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $M->set($i, $j, $M->get($i, $j) * $this->A[$i][$j]); + } + } + return $M; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + /** + * arrayTimesEquals + * + * Element-by-element multiplication + * Aij = Aij * Bij + * @param mixed $B Matrix/Array + * @return Matrix Matrix Aij + */ + public function arrayTimesEquals() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $validValues = true; + $value = $M->get($i, $j); + if ((is_string($this->A[$i][$j])) && (strlen($this->A[$i][$j]) > 0) && (!is_numeric($this->A[$i][$j]))) { + $this->A[$i][$j] = trim($this->A[$i][$j], '"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($this->A[$i][$j]); + } + if ((is_string($value)) && (strlen($value) > 0) && (!is_numeric($value))) { + $value = trim($value, '"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($value); + } + if ($validValues) { + $this->A[$i][$j] *= $value; + } else { + $this->A[$i][$j] = PHPExcel_Calculation_Functions::NaN(); + } + } + } + return $this; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + /** + * arrayRightDivide + * + * Element-by-element right division + * A / B + * @param Matrix $B Matrix B + * @return Matrix Division result + */ + public function arrayRightDivide() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $validValues = true; + $value = $M->get($i, $j); + if ((is_string($this->A[$i][$j])) && (strlen($this->A[$i][$j]) > 0) && (!is_numeric($this->A[$i][$j]))) { + $this->A[$i][$j] = trim($this->A[$i][$j], '"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($this->A[$i][$j]); + } + if ((is_string($value)) && (strlen($value) > 0) && (!is_numeric($value))) { + $value = trim($value, '"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($value); + } + if ($validValues) { + if ($value == 0) { + // Trap for Divide by Zero error + $M->set($i, $j, '#DIV/0!'); + } else { + $M->set($i, $j, $this->A[$i][$j] / $value); + } + } else { + $M->set($i, $j, PHPExcel_Calculation_Functions::NaN()); + } + } + } + return $M; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + + /** + * arrayRightDivideEquals + * + * Element-by-element right division + * Aij = Aij / Bij + * @param mixed $B Matrix/Array + * @return Matrix Matrix Aij + */ + public function arrayRightDivideEquals() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $this->A[$i][$j] = $this->A[$i][$j] / $M->get($i, $j); + } + } + return $M; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + + /** + * arrayLeftDivide + * + * Element-by-element Left division + * A / B + * @param Matrix $B Matrix B + * @return Matrix Division result + */ + public function arrayLeftDivide() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $M->set($i, $j, $M->get($i, $j) / $this->A[$i][$j]); + } + } + return $M; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + + /** + * arrayLeftDivideEquals + * + * Element-by-element Left division + * Aij = Aij / Bij + * @param mixed $B Matrix/Array + * @return Matrix Matrix Aij + */ + public function arrayLeftDivideEquals() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $this->A[$i][$j] = $M->get($i, $j) / $this->A[$i][$j]; + } + } + return $M; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + + /** + * times + * + * Matrix multiplication + * @param mixed $n Matrix/Array/Scalar + * @return Matrix Product + */ + public function times() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $B = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + if ($this->n == $B->m) { + $C = new PHPExcel_Shared_JAMA_Matrix($this->m, $B->n); + for ($j = 0; $j < $B->n; ++$j) { + for ($k = 0; $k < $this->n; ++$k) { + $Bcolj[$k] = $B->A[$k][$j]; + } + for ($i = 0; $i < $this->m; ++$i) { + $Arowi = $this->A[$i]; + $s = 0; + for ($k = 0; $k < $this->n; ++$k) { + $s += $Arowi[$k] * $Bcolj[$k]; + } + $C->A[$i][$j] = $s; + } + } + return $C; + } else { + throw new PHPExcel_Calculation_Exception(JAMAError(MatrixDimensionMismatch)); + } + break; + case 'array': + $B = new PHPExcel_Shared_JAMA_Matrix($args[0]); + if ($this->n == $B->m) { + $C = new PHPExcel_Shared_JAMA_Matrix($this->m, $B->n); + for ($i = 0; $i < $C->m; ++$i) { + for ($j = 0; $j < $C->n; ++$j) { + $s = "0"; + for ($k = 0; $k < $C->n; ++$k) { + $s += $this->A[$i][$k] * $B->A[$k][$j]; + } + $C->A[$i][$j] = $s; + } + } + return $C; + } else { + throw new PHPExcel_Calculation_Exception(JAMAError(MatrixDimensionMismatch)); + } + return $M; + break; + case 'integer': + $C = new PHPExcel_Shared_JAMA_Matrix($this->A); + for ($i = 0; $i < $C->m; ++$i) { + for ($j = 0; $j < $C->n; ++$j) { + $C->A[$i][$j] *= $args[0]; + } + } + return $C; + break; + case 'double': + $C = new PHPExcel_Shared_JAMA_Matrix($this->m, $this->n); + for ($i = 0; $i < $C->m; ++$i) { + for ($j = 0; $j < $C->n; ++$j) { + $C->A[$i][$j] = $args[0] * $this->A[$i][$j]; + } + } + return $C; + break; + case 'float': + $C = new PHPExcel_Shared_JAMA_Matrix($this->A); + for ($i = 0; $i < $C->m; ++$i) { + for ($j = 0; $j < $C->n; ++$j) { + $C->A[$i][$j] *= $args[0]; + } + } + return $C; + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + /** + * power + * + * A = A ^ B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function power() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $validValues = true; + $value = $M->get($i, $j); + if ((is_string($this->A[$i][$j])) && (strlen($this->A[$i][$j]) > 0) && (!is_numeric($this->A[$i][$j]))) { + $this->A[$i][$j] = trim($this->A[$i][$j], '"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($this->A[$i][$j]); + } + if ((is_string($value)) && (strlen($value) > 0) && (!is_numeric($value))) { + $value = trim($value, '"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($value); + } + if ($validValues) { + $this->A[$i][$j] = pow($this->A[$i][$j], $value); + } else { + $this->A[$i][$j] = PHPExcel_Calculation_Functions::NaN(); + } + } + } + return $this; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + /** + * concat + * + * A = A & B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function concat() + { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch ($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { + $M = $args[0]; + } else { + throw new PHPExcel_Calculation_Exception(self::ARGUMENT_TYPE_EXCEPTION); + } + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + break; + } + $this->checkMatrixDimensions($M); + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $this->A[$i][$j] = trim($this->A[$i][$j], '"').trim($M->get($i, $j), '"'); + } + } + return $this; + } else { + throw new PHPExcel_Calculation_Exception(self::POLYMORPHIC_ARGUMENT_EXCEPTION); + } + } + + /** + * Solve A*X = B. + * + * @param Matrix $B Right hand side + * @return Matrix ... Solution if A is square, least squares solution otherwise + */ + public function solve($B) + { + if ($this->m == $this->n) { + $LU = new PHPExcel_Shared_JAMA_LUDecomposition($this); + return $LU->solve($B); + } else { + $QR = new PHPExcel_Shared_JAMA_QRDecomposition($this); + return $QR->solve($B); + } + } + + /** + * Matrix inverse or pseudoinverse. + * + * @return Matrix ... Inverse(A) if A is square, pseudoinverse otherwise. + */ + public function inverse() + { + return $this->solve($this->identity($this->m, $this->m)); + } + + /** + * det + * + * Calculate determinant + * @return float Determinant + */ + public function det() + { + $L = new PHPExcel_Shared_JAMA_LUDecomposition($this); + return $L->det(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/QRDecomposition.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/QRDecomposition.php new file mode 100644 index 0000000..1e43c7c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/QRDecomposition.php @@ -0,0 +1,235 @@ +<?php +/** + * @package JAMA + * + * For an m-by-n matrix A with m >= n, the QR decomposition is an m-by-n + * orthogonal matrix Q and an n-by-n upper triangular matrix R so that + * A = Q*R. + * + * The QR decompostion always exists, even if the matrix does not have + * full rank, so the constructor will never fail. The primary use of the + * QR decomposition is in the least squares solution of nonsquare systems + * of simultaneous linear equations. This will fail if isFullRank() + * returns false. + * + * @author Paul Meagher + * @license PHP v3.0 + * @version 1.1 + */ +class PHPExcel_Shared_JAMA_QRDecomposition +{ + const MATRIX_RANK_EXCEPTION = "Can only perform operation on full-rank matrix."; + + /** + * Array for internal storage of decomposition. + * @var array + */ + private $QR = array(); + + /** + * Row dimension. + * @var integer + */ + private $m; + + /** + * Column dimension. + * @var integer + */ + private $n; + + /** + * Array for internal storage of diagonal of R. + * @var array + */ + private $Rdiag = array(); + + + /** + * QR Decomposition computed by Householder reflections. + * + * @param matrix $A Rectangular matrix + * @return Structure to access R and the Householder vectors and compute Q. + */ + public function __construct($A) + { + if ($A instanceof PHPExcel_Shared_JAMA_Matrix) { + // Initialize. + $this->QR = $A->getArrayCopy(); + $this->m = $A->getRowDimension(); + $this->n = $A->getColumnDimension(); + // Main loop. + for ($k = 0; $k < $this->n; ++$k) { + // Compute 2-norm of k-th column without under/overflow. + $nrm = 0.0; + for ($i = $k; $i < $this->m; ++$i) { + $nrm = hypo($nrm, $this->QR[$i][$k]); + } + if ($nrm != 0.0) { + // Form k-th Householder vector. + if ($this->QR[$k][$k] < 0) { + $nrm = -$nrm; + } + for ($i = $k; $i < $this->m; ++$i) { + $this->QR[$i][$k] /= $nrm; + } + $this->QR[$k][$k] += 1.0; + // Apply transformation to remaining columns. + for ($j = $k+1; $j < $this->n; ++$j) { + $s = 0.0; + for ($i = $k; $i < $this->m; ++$i) { + $s += $this->QR[$i][$k] * $this->QR[$i][$j]; + } + $s = -$s/$this->QR[$k][$k]; + for ($i = $k; $i < $this->m; ++$i) { + $this->QR[$i][$j] += $s * $this->QR[$i][$k]; + } + } + } + $this->Rdiag[$k] = -$nrm; + } + } else { + throw new PHPExcel_Calculation_Exception(PHPExcel_Shared_JAMA_Matrix::ARGUMENT_TYPE_EXCEPTION); + } + } // function __construct() + + + /** + * Is the matrix full rank? + * + * @return boolean true if R, and hence A, has full rank, else false. + */ + public function isFullRank() + { + for ($j = 0; $j < $this->n; ++$j) { + if ($this->Rdiag[$j] == 0) { + return false; + } + } + return true; + } // function isFullRank() + + /** + * Return the Householder vectors + * + * @return Matrix Lower trapezoidal matrix whose columns define the reflections + */ + public function getH() + { + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + if ($i >= $j) { + $H[$i][$j] = $this->QR[$i][$j]; + } else { + $H[$i][$j] = 0.0; + } + } + } + return new PHPExcel_Shared_JAMA_Matrix($H); + } // function getH() + + /** + * Return the upper triangular factor + * + * @return Matrix upper triangular factor + */ + public function getR() + { + for ($i = 0; $i < $this->n; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + if ($i < $j) { + $R[$i][$j] = $this->QR[$i][$j]; + } elseif ($i == $j) { + $R[$i][$j] = $this->Rdiag[$i]; + } else { + $R[$i][$j] = 0.0; + } + } + } + return new PHPExcel_Shared_JAMA_Matrix($R); + } // function getR() + + /** + * Generate and return the (economy-sized) orthogonal factor + * + * @return Matrix orthogonal factor + */ + public function getQ() + { + for ($k = $this->n-1; $k >= 0; --$k) { + for ($i = 0; $i < $this->m; ++$i) { + $Q[$i][$k] = 0.0; + } + $Q[$k][$k] = 1.0; + for ($j = $k; $j < $this->n; ++$j) { + if ($this->QR[$k][$k] != 0) { + $s = 0.0; + for ($i = $k; $i < $this->m; ++$i) { + $s += $this->QR[$i][$k] * $Q[$i][$j]; + } + $s = -$s/$this->QR[$k][$k]; + for ($i = $k; $i < $this->m; ++$i) { + $Q[$i][$j] += $s * $this->QR[$i][$k]; + } + } + } + } + /* + for($i = 0; $i < count($Q); ++$i) { + for($j = 0; $j < count($Q); ++$j) { + if (! isset($Q[$i][$j]) ) { + $Q[$i][$j] = 0; + } + } + } + */ + return new PHPExcel_Shared_JAMA_Matrix($Q); + } // function getQ() + + /** + * Least squares solution of A*X = B + * + * @param Matrix $B A Matrix with as many rows as A and any number of columns. + * @return Matrix Matrix that minimizes the two norm of Q*R*X-B. + */ + public function solve($B) + { + if ($B->getRowDimension() == $this->m) { + if ($this->isFullRank()) { + // Copy right hand side + $nx = $B->getColumnDimension(); + $X = $B->getArrayCopy(); + // Compute Y = transpose(Q)*B + for ($k = 0; $k < $this->n; ++$k) { + for ($j = 0; $j < $nx; ++$j) { + $s = 0.0; + for ($i = $k; $i < $this->m; ++$i) { + $s += $this->QR[$i][$k] * $X[$i][$j]; + } + $s = -$s/$this->QR[$k][$k]; + for ($i = $k; $i < $this->m; ++$i) { + $X[$i][$j] += $s * $this->QR[$i][$k]; + } + } + } + // Solve R*X = Y; + for ($k = $this->n-1; $k >= 0; --$k) { + for ($j = 0; $j < $nx; ++$j) { + $X[$k][$j] /= $this->Rdiag[$k]; + } + for ($i = 0; $i < $k; ++$i) { + for ($j = 0; $j < $nx; ++$j) { + $X[$i][$j] -= $X[$k][$j]* $this->QR[$i][$k]; + } + } + } + $X = new PHPExcel_Shared_JAMA_Matrix($X); + return ($X->getMatrix(0, $this->n-1, 0, $nx)); + } else { + throw new PHPExcel_Calculation_Exception(self::MATRIX_RANK_EXCEPTION); + } + } else { + throw new PHPExcel_Calculation_Exception(PHPExcel_Shared_JAMA_Matrix::MATRIX_DIMENSION_EXCEPTION); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/SingularValueDecomposition.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/SingularValueDecomposition.php new file mode 100644 index 0000000..f57d122 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/SingularValueDecomposition.php @@ -0,0 +1,528 @@ +<?php +/** + * @package JAMA + * + * For an m-by-n matrix A with m >= n, the singular value decomposition is + * an m-by-n orthogonal matrix U, an n-by-n diagonal matrix S, and + * an n-by-n orthogonal matrix V so that A = U*S*V'. + * + * The singular values, sigma[$k] = S[$k][$k], are ordered so that + * sigma[0] >= sigma[1] >= ... >= sigma[n-1]. + * + * The singular value decompostion always exists, so the constructor will + * never fail. The matrix condition number and the effective numerical + * rank can be computed from this decomposition. + * + * @author Paul Meagher + * @license PHP v3.0 + * @version 1.1 + */ +class SingularValueDecomposition +{ + /** + * Internal storage of U. + * @var array + */ + private $U = array(); + + /** + * Internal storage of V. + * @var array + */ + private $V = array(); + + /** + * Internal storage of singular values. + * @var array + */ + private $s = array(); + + /** + * Row dimension. + * @var int + */ + private $m; + + /** + * Column dimension. + * @var int + */ + private $n; + + /** + * Construct the singular value decomposition + * + * Derived from LINPACK code. + * + * @param $A Rectangular matrix + * @return Structure to access U, S and V. + */ + public function __construct($Arg) + { + // Initialize. + $A = $Arg->getArrayCopy(); + $this->m = $Arg->getRowDimension(); + $this->n = $Arg->getColumnDimension(); + $nu = min($this->m, $this->n); + $e = array(); + $work = array(); + $wantu = true; + $wantv = true; + $nct = min($this->m - 1, $this->n); + $nrt = max(0, min($this->n - 2, $this->m)); + + // Reduce A to bidiagonal form, storing the diagonal elements + // in s and the super-diagonal elements in e. + for ($k = 0; $k < max($nct, $nrt); ++$k) { + if ($k < $nct) { + // Compute the transformation for the k-th column and + // place the k-th diagonal in s[$k]. + // Compute 2-norm of k-th column without under/overflow. + $this->s[$k] = 0; + for ($i = $k; $i < $this->m; ++$i) { + $this->s[$k] = hypo($this->s[$k], $A[$i][$k]); + } + if ($this->s[$k] != 0.0) { + if ($A[$k][$k] < 0.0) { + $this->s[$k] = -$this->s[$k]; + } + for ($i = $k; $i < $this->m; ++$i) { + $A[$i][$k] /= $this->s[$k]; + } + $A[$k][$k] += 1.0; + } + $this->s[$k] = -$this->s[$k]; + } + + for ($j = $k + 1; $j < $this->n; ++$j) { + if (($k < $nct) & ($this->s[$k] != 0.0)) { + // Apply the transformation. + $t = 0; + for ($i = $k; $i < $this->m; ++$i) { + $t += $A[$i][$k] * $A[$i][$j]; + } + $t = -$t / $A[$k][$k]; + for ($i = $k; $i < $this->m; ++$i) { + $A[$i][$j] += $t * $A[$i][$k]; + } + // Place the k-th row of A into e for the + // subsequent calculation of the row transformation. + $e[$j] = $A[$k][$j]; + } + } + + if ($wantu and ($k < $nct)) { + // Place the transformation in U for subsequent back + // multiplication. + for ($i = $k; $i < $this->m; ++$i) { + $this->U[$i][$k] = $A[$i][$k]; + } + } + + if ($k < $nrt) { + // Compute the k-th row transformation and place the + // k-th super-diagonal in e[$k]. + // Compute 2-norm without under/overflow. + $e[$k] = 0; + for ($i = $k + 1; $i < $this->n; ++$i) { + $e[$k] = hypo($e[$k], $e[$i]); + } + if ($e[$k] != 0.0) { + if ($e[$k+1] < 0.0) { + $e[$k] = -$e[$k]; + } + for ($i = $k + 1; $i < $this->n; ++$i) { + $e[$i] /= $e[$k]; + } + $e[$k+1] += 1.0; + } + $e[$k] = -$e[$k]; + if (($k+1 < $this->m) and ($e[$k] != 0.0)) { + // Apply the transformation. + for ($i = $k+1; $i < $this->m; ++$i) { + $work[$i] = 0.0; + } + for ($j = $k+1; $j < $this->n; ++$j) { + for ($i = $k+1; $i < $this->m; ++$i) { + $work[$i] += $e[$j] * $A[$i][$j]; + } + } + for ($j = $k + 1; $j < $this->n; ++$j) { + $t = -$e[$j] / $e[$k+1]; + for ($i = $k + 1; $i < $this->m; ++$i) { + $A[$i][$j] += $t * $work[$i]; + } + } + } + if ($wantv) { + // Place the transformation in V for subsequent + // back multiplication. + for ($i = $k + 1; $i < $this->n; ++$i) { + $this->V[$i][$k] = $e[$i]; + } + } + } + } + + // Set up the final bidiagonal matrix or order p. + $p = min($this->n, $this->m + 1); + if ($nct < $this->n) { + $this->s[$nct] = $A[$nct][$nct]; + } + if ($this->m < $p) { + $this->s[$p-1] = 0.0; + } + if ($nrt + 1 < $p) { + $e[$nrt] = $A[$nrt][$p-1]; + } + $e[$p-1] = 0.0; + // If required, generate U. + if ($wantu) { + for ($j = $nct; $j < $nu; ++$j) { + for ($i = 0; $i < $this->m; ++$i) { + $this->U[$i][$j] = 0.0; + } + $this->U[$j][$j] = 1.0; + } + for ($k = $nct - 1; $k >= 0; --$k) { + if ($this->s[$k] != 0.0) { + for ($j = $k + 1; $j < $nu; ++$j) { + $t = 0; + for ($i = $k; $i < $this->m; ++$i) { + $t += $this->U[$i][$k] * $this->U[$i][$j]; + } + $t = -$t / $this->U[$k][$k]; + for ($i = $k; $i < $this->m; ++$i) { + $this->U[$i][$j] += $t * $this->U[$i][$k]; + } + } + for ($i = $k; $i < $this->m; ++$i) { + $this->U[$i][$k] = -$this->U[$i][$k]; + } + $this->U[$k][$k] = 1.0 + $this->U[$k][$k]; + for ($i = 0; $i < $k - 1; ++$i) { + $this->U[$i][$k] = 0.0; + } + } else { + for ($i = 0; $i < $this->m; ++$i) { + $this->U[$i][$k] = 0.0; + } + $this->U[$k][$k] = 1.0; + } + } + } + + // If required, generate V. + if ($wantv) { + for ($k = $this->n - 1; $k >= 0; --$k) { + if (($k < $nrt) and ($e[$k] != 0.0)) { + for ($j = $k + 1; $j < $nu; ++$j) { + $t = 0; + for ($i = $k + 1; $i < $this->n; ++$i) { + $t += $this->V[$i][$k]* $this->V[$i][$j]; + } + $t = -$t / $this->V[$k+1][$k]; + for ($i = $k + 1; $i < $this->n; ++$i) { + $this->V[$i][$j] += $t * $this->V[$i][$k]; + } + } + } + for ($i = 0; $i < $this->n; ++$i) { + $this->V[$i][$k] = 0.0; + } + $this->V[$k][$k] = 1.0; + } + } + + // Main iteration loop for the singular values. + $pp = $p - 1; + $iter = 0; + $eps = pow(2.0, -52.0); + + while ($p > 0) { + // Here is where a test for too many iterations would go. + // This section of the program inspects for negligible + // elements in the s and e arrays. On completion the + // variables kase and k are set as follows: + // kase = 1 if s(p) and e[k-1] are negligible and k<p + // kase = 2 if s(k) is negligible and k<p + // kase = 3 if e[k-1] is negligible, k<p, and + // s(k), ..., s(p) are not negligible (qr step). + // kase = 4 if e(p-1) is negligible (convergence). + for ($k = $p - 2; $k >= -1; --$k) { + if ($k == -1) { + break; + } + if (abs($e[$k]) <= $eps * (abs($this->s[$k]) + abs($this->s[$k+1]))) { + $e[$k] = 0.0; + break; + } + } + if ($k == $p - 2) { + $kase = 4; + } else { + for ($ks = $p - 1; $ks >= $k; --$ks) { + if ($ks == $k) { + break; + } + $t = ($ks != $p ? abs($e[$ks]) : 0.) + ($ks != $k + 1 ? abs($e[$ks-1]) : 0.); + if (abs($this->s[$ks]) <= $eps * $t) { + $this->s[$ks] = 0.0; + break; + } + } + if ($ks == $k) { + $kase = 3; + } elseif ($ks == $p-1) { + $kase = 1; + } else { + $kase = 2; + $k = $ks; + } + } + ++$k; + + // Perform the task indicated by kase. + switch ($kase) { + // Deflate negligible s(p). + case 1: + $f = $e[$p-2]; + $e[$p-2] = 0.0; + for ($j = $p - 2; $j >= $k; --$j) { + $t = hypo($this->s[$j], $f); + $cs = $this->s[$j] / $t; + $sn = $f / $t; + $this->s[$j] = $t; + if ($j != $k) { + $f = -$sn * $e[$j-1]; + $e[$j-1] = $cs * $e[$j-1]; + } + if ($wantv) { + for ($i = 0; $i < $this->n; ++$i) { + $t = $cs * $this->V[$i][$j] + $sn * $this->V[$i][$p-1]; + $this->V[$i][$p-1] = -$sn * $this->V[$i][$j] + $cs * $this->V[$i][$p-1]; + $this->V[$i][$j] = $t; + } + } + } + break; + // Split at negligible s(k). + case 2: + $f = $e[$k-1]; + $e[$k-1] = 0.0; + for ($j = $k; $j < $p; ++$j) { + $t = hypo($this->s[$j], $f); + $cs = $this->s[$j] / $t; + $sn = $f / $t; + $this->s[$j] = $t; + $f = -$sn * $e[$j]; + $e[$j] = $cs * $e[$j]; + if ($wantu) { + for ($i = 0; $i < $this->m; ++$i) { + $t = $cs * $this->U[$i][$j] + $sn * $this->U[$i][$k-1]; + $this->U[$i][$k-1] = -$sn * $this->U[$i][$j] + $cs * $this->U[$i][$k-1]; + $this->U[$i][$j] = $t; + } + } + } + break; + // Perform one qr step. + case 3: + // Calculate the shift. + $scale = max(max(max(max(abs($this->s[$p-1]), abs($this->s[$p-2])), abs($e[$p-2])), abs($this->s[$k])), abs($e[$k])); + $sp = $this->s[$p-1] / $scale; + $spm1 = $this->s[$p-2] / $scale; + $epm1 = $e[$p-2] / $scale; + $sk = $this->s[$k] / $scale; + $ek = $e[$k] / $scale; + $b = (($spm1 + $sp) * ($spm1 - $sp) + $epm1 * $epm1) / 2.0; + $c = ($sp * $epm1) * ($sp * $epm1); + $shift = 0.0; + if (($b != 0.0) || ($c != 0.0)) { + $shift = sqrt($b * $b + $c); + if ($b < 0.0) { + $shift = -$shift; + } + $shift = $c / ($b + $shift); + } + $f = ($sk + $sp) * ($sk - $sp) + $shift; + $g = $sk * $ek; + // Chase zeros. + for ($j = $k; $j < $p-1; ++$j) { + $t = hypo($f, $g); + $cs = $f/$t; + $sn = $g/$t; + if ($j != $k) { + $e[$j-1] = $t; + } + $f = $cs * $this->s[$j] + $sn * $e[$j]; + $e[$j] = $cs * $e[$j] - $sn * $this->s[$j]; + $g = $sn * $this->s[$j+1]; + $this->s[$j+1] = $cs * $this->s[$j+1]; + if ($wantv) { + for ($i = 0; $i < $this->n; ++$i) { + $t = $cs * $this->V[$i][$j] + $sn * $this->V[$i][$j+1]; + $this->V[$i][$j+1] = -$sn * $this->V[$i][$j] + $cs * $this->V[$i][$j+1]; + $this->V[$i][$j] = $t; + } + } + $t = hypo($f, $g); + $cs = $f/$t; + $sn = $g/$t; + $this->s[$j] = $t; + $f = $cs * $e[$j] + $sn * $this->s[$j+1]; + $this->s[$j+1] = -$sn * $e[$j] + $cs * $this->s[$j+1]; + $g = $sn * $e[$j+1]; + $e[$j+1] = $cs * $e[$j+1]; + if ($wantu && ($j < $this->m - 1)) { + for ($i = 0; $i < $this->m; ++$i) { + $t = $cs * $this->U[$i][$j] + $sn * $this->U[$i][$j+1]; + $this->U[$i][$j+1] = -$sn * $this->U[$i][$j] + $cs * $this->U[$i][$j+1]; + $this->U[$i][$j] = $t; + } + } + } + $e[$p-2] = $f; + $iter = $iter + 1; + break; + // Convergence. + case 4: + // Make the singular values positive. + if ($this->s[$k] <= 0.0) { + $this->s[$k] = ($this->s[$k] < 0.0 ? -$this->s[$k] : 0.0); + if ($wantv) { + for ($i = 0; $i <= $pp; ++$i) { + $this->V[$i][$k] = -$this->V[$i][$k]; + } + } + } + // Order the singular values. + while ($k < $pp) { + if ($this->s[$k] >= $this->s[$k+1]) { + break; + } + $t = $this->s[$k]; + $this->s[$k] = $this->s[$k+1]; + $this->s[$k+1] = $t; + if ($wantv and ($k < $this->n - 1)) { + for ($i = 0; $i < $this->n; ++$i) { + $t = $this->V[$i][$k+1]; + $this->V[$i][$k+1] = $this->V[$i][$k]; + $this->V[$i][$k] = $t; + } + } + if ($wantu and ($k < $this->m-1)) { + for ($i = 0; $i < $this->m; ++$i) { + $t = $this->U[$i][$k+1]; + $this->U[$i][$k+1] = $this->U[$i][$k]; + $this->U[$i][$k] = $t; + } + } + ++$k; + } + $iter = 0; + --$p; + break; + } // end switch + } // end while + + } // end constructor + + + /** + * Return the left singular vectors + * + * @access public + * @return U + */ + public function getU() + { + return new Matrix($this->U, $this->m, min($this->m + 1, $this->n)); + } + + + /** + * Return the right singular vectors + * + * @access public + * @return V + */ + public function getV() + { + return new Matrix($this->V); + } + + + /** + * Return the one-dimensional array of singular values + * + * @access public + * @return diagonal of S. + */ + public function getSingularValues() + { + return $this->s; + } + + + /** + * Return the diagonal matrix of singular values + * + * @access public + * @return S + */ + public function getS() + { + for ($i = 0; $i < $this->n; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $S[$i][$j] = 0.0; + } + $S[$i][$i] = $this->s[$i]; + } + return new Matrix($S); + } + + + /** + * Two norm + * + * @access public + * @return max(S) + */ + public function norm2() + { + return $this->s[0]; + } + + + /** + * Two norm condition number + * + * @access public + * @return max(S)/min(S) + */ + public function cond() + { + return $this->s[0] / $this->s[min($this->m, $this->n) - 1]; + } + + + /** + * Effective numerical matrix rank + * + * @access public + * @return Number of nonnegligible singular values. + */ + public function rank() + { + $eps = pow(2.0, -52.0); + $tol = max($this->m, $this->n) * $this->s[0] * $eps; + $r = 0; + for ($i = 0; $i < count($this->s); ++$i) { + if ($this->s[$i] > $tol) { + ++$r; + } + } + return $r; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/_notes/dwsync.xml new file mode 100644 index 0000000..7b7f792 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="CHANGELOG.TXT" server="62.244.88.21/deciday/" local="131919461900587337" remote="131880384600000000" Dst="1" /> +<file name="CholeskyDecomposition.php" server="62.244.88.21/deciday/" local="131919461900944151" remote="131880384600000000" Dst="1" /> +<file name="LUDecomposition.php" server="62.244.88.21/deciday/" local="131919461901797541" remote="131880384600000000" Dst="1" /> +<file name="EigenvalueDecomposition.php" server="62.244.88.21/deciday/" local="131919461902004821" remote="131880384600000000" Dst="1" /> +<file name="Matrix.php" server="62.244.88.21/deciday/" local="131919461902689221" remote="131880384600000000" Dst="1" /> +<file name="QRDecomposition.php" server="62.244.88.21/deciday/" local="131919461902863830" remote="131880384600000000" Dst="1" /> +<file name="SingularValueDecomposition.php" server="62.244.88.21/deciday/" local="131919461903404311" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/utils/Error.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/utils/Error.php new file mode 100644 index 0000000..71b8c99 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/utils/Error.php @@ -0,0 +1,83 @@ +<?php +/** + * @package JAMA + * + * Error handling + * @author Michael Bommarito + * @version 01292005 + */ + +//Language constant +define('JAMALANG', 'EN'); + + +//All errors may be defined by the following format: +//define('ExceptionName', N); +//$error['lang'][ExceptionName] = 'Error message'; +$error = array(); + +/* +I've used Babelfish and a little poor knowledge of Romance/Germanic languages for the translations here. +Feel free to correct anything that looks amiss to you. +*/ + +define('POLYMORPHIC_ARGUMENT_EXCEPTION', -1); +$error['EN'][POLYMORPHIC_ARGUMENT_EXCEPTION] = "Invalid argument pattern for polymorphic function."; +$error['FR'][POLYMORPHIC_ARGUMENT_EXCEPTION] = "Modèle inadmissible d'argument pour la fonction polymorphe.". +$error['DE'][POLYMORPHIC_ARGUMENT_EXCEPTION] = "Unzulässiges Argumentmuster für polymorphe Funktion."; + +define('ARGUMENT_TYPE_EXCEPTION', -2); +$error['EN'][ARGUMENT_TYPE_EXCEPTION] = "Invalid argument type."; +$error['FR'][ARGUMENT_TYPE_EXCEPTION] = "Type inadmissible d'argument."; +$error['DE'][ARGUMENT_TYPE_EXCEPTION] = "Unzulässige Argumentart."; + +define('ARGUMENT_BOUNDS_EXCEPTION', -3); +$error['EN'][ARGUMENT_BOUNDS_EXCEPTION] = "Invalid argument range."; +$error['FR'][ARGUMENT_BOUNDS_EXCEPTION] = "Gamme inadmissible d'argument."; +$error['DE'][ARGUMENT_BOUNDS_EXCEPTION] = "Unzulässige Argumentstrecke."; + +define('MATRIX_DIMENSION_EXCEPTION', -4); +$error['EN'][MATRIX_DIMENSION_EXCEPTION] = "Matrix dimensions are not equal."; +$error['FR'][MATRIX_DIMENSION_EXCEPTION] = "Les dimensions de Matrix ne sont pas égales."; +$error['DE'][MATRIX_DIMENSION_EXCEPTION] = "Matrixmaße sind nicht gleich."; + +define('PRECISION_LOSS_EXCEPTION', -5); +$error['EN'][PRECISION_LOSS_EXCEPTION] = "Significant precision loss detected."; +$error['FR'][PRECISION_LOSS_EXCEPTION] = "Perte significative de précision détectée."; +$error['DE'][PRECISION_LOSS_EXCEPTION] = "Bedeutender Präzision Verlust ermittelte."; + +define('MATRIX_SPD_EXCEPTION', -6); +$error['EN'][MATRIX_SPD_EXCEPTION] = "Can only perform operation on symmetric positive definite matrix."; +$error['FR'][MATRIX_SPD_EXCEPTION] = "Perte significative de précision détectée."; +$error['DE'][MATRIX_SPD_EXCEPTION] = "Bedeutender Präzision Verlust ermittelte."; + +define('MATRIX_SINGULAR_EXCEPTION', -7); +$error['EN'][MATRIX_SINGULAR_EXCEPTION] = "Can only perform operation on singular matrix."; + +define('MATRIX_RANK_EXCEPTION', -8); +$error['EN'][MATRIX_RANK_EXCEPTION] = "Can only perform operation on full-rank matrix."; + +define('ARRAY_LENGTH_EXCEPTION', -9); +$error['EN'][ARRAY_LENGTH_EXCEPTION] = "Array length must be a multiple of m."; + +define('ROW_LENGTH_EXCEPTION', -10); +$error['EN'][ROW_LENGTH_EXCEPTION] = "All rows must have the same length."; + +/** + * Custom error handler + * @param int $num Error number + */ +function JAMAError($errorNumber = null) +{ + global $error; + + if (isset($errorNumber)) { + if (isset($error[JAMALANG][$errorNumber])) { + return $error[JAMALANG][$errorNumber]; + } else { + return $error['EN'][$errorNumber]; + } + } else { + return ("Invalid argument to JAMAError()"); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/utils/Maths.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/utils/Maths.php new file mode 100644 index 0000000..386c1e6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/utils/Maths.php @@ -0,0 +1,44 @@ +<?php +/** + * @package JAMA + * + * Pythagorean Theorem: + * + * a = 3 + * b = 4 + * r = sqrt(square(a) + square(b)) + * r = 5 + * + * r = sqrt(a^2 + b^2) without under/overflow. + */ +function hypo($a, $b) +{ + if (abs($a) > abs($b)) { + $r = $b / $a; + $r = abs($a) * sqrt(1 + $r * $r); + } elseif ($b != 0) { + $r = $a / $b; + $r = abs($b) * sqrt(1 + $r * $r); + } else { + $r = 0.0; + } + return $r; +} // function hypo() + + +/** + * Mike Bommarito's version. + * Compute n-dimensional hyotheneuse. + * +function hypot() { + $s = 0; + foreach (func_get_args() as $d) { + if (is_numeric($d)) { + $s += pow($d, 2); + } else { + throw new PHPExcel_Calculation_Exception(JAMAError(ARGUMENT_TYPE_EXCEPTION)); + } + } + return sqrt($s); +} +*/ diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/utils/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/utils/_notes/dwsync.xml new file mode 100644 index 0000000..6b00a01 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/JAMA/utils/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Maths.php" server="62.244.88.21/deciday/" local="131919461903736358" remote="131880384600000000" Dst="1" /> +<file name="Error.php" server="62.244.88.21/deciday/" local="131919461903928459" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE.php new file mode 100644 index 0000000..42a3c52 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE.php @@ -0,0 +1,526 @@ +<?php +/* vim: set expandtab tabstop=4 shiftwidth=4: */ +// +----------------------------------------------------------------------+ +// | PHP Version 4 | +// +----------------------------------------------------------------------+ +// | Copyright (c) 1997-2002 The PHP Group | +// +----------------------------------------------------------------------+ +// | This source file is subject to version 2.02 of the PHP license, | +// | that is bundled with this package in the file LICENSE, and is | +// | available at through the world-wide-web at | +// | http://www.php.net/license/2_02.txt. | +// | If you did not receive a copy of the PHP license and are unable to | +// | obtain it through the world-wide-web, please send a note to | +// | license@php.net so we can mail you a copy immediately. | +// +----------------------------------------------------------------------+ +// | Author: Xavier Noguer <xnoguer@php.net> | +// | Based on OLE::Storage_Lite by Kawai, Takanori | +// +----------------------------------------------------------------------+ +// +// $Id: OLE.php,v 1.13 2007/03/07 14:38:25 schmidt Exp $ + + +/** +* Array for storing OLE instances that are accessed from +* OLE_ChainedBlockStream::stream_open(). +* @var array +*/ +$GLOBALS['_OLE_INSTANCES'] = array(); + +/** +* OLE package base class. +* +* @author Xavier Noguer <xnoguer@php.net> +* @author Christian Schmidt <schmidt@php.net> +* @category PHPExcel +* @package PHPExcel_Shared_OLE +*/ +class PHPExcel_Shared_OLE +{ + const OLE_PPS_TYPE_ROOT = 5; + const OLE_PPS_TYPE_DIR = 1; + const OLE_PPS_TYPE_FILE = 2; + const OLE_DATA_SIZE_SMALL = 0x1000; + const OLE_LONG_INT_SIZE = 4; + const OLE_PPS_SIZE = 0x80; + + /** + * The file handle for reading an OLE container + * @var resource + */ + public $_file_handle; + + /** + * Array of PPS's found on the OLE container + * @var array + */ + public $_list = array(); + + /** + * Root directory of OLE container + * @var OLE_PPS_Root + */ + public $root; + + /** + * Big Block Allocation Table + * @var array (blockId => nextBlockId) + */ + public $bbat; + + /** + * Short Block Allocation Table + * @var array (blockId => nextBlockId) + */ + public $sbat; + + /** + * Size of big blocks. This is usually 512. + * @var int number of octets per block. + */ + public $bigBlockSize; + + /** + * Size of small blocks. This is usually 64. + * @var int number of octets per block + */ + public $smallBlockSize; + + /** + * Reads an OLE container from the contents of the file given. + * + * @acces public + * @param string $file + * @return mixed true on success, PEAR_Error on failure + */ + public function read($file) + { + $fh = fopen($file, "r"); + if (!$fh) { + throw new PHPExcel_Reader_Exception("Can't open file $file"); + } + $this->_file_handle = $fh; + + $signature = fread($fh, 8); + if ("\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1" != $signature) { + throw new PHPExcel_Reader_Exception("File doesn't seem to be an OLE container."); + } + fseek($fh, 28); + if (fread($fh, 2) != "\xFE\xFF") { + // This shouldn't be a problem in practice + throw new PHPExcel_Reader_Exception("Only Little-Endian encoding is supported."); + } + // Size of blocks and short blocks in bytes + $this->bigBlockSize = pow(2, self::_readInt2($fh)); + $this->smallBlockSize = pow(2, self::_readInt2($fh)); + + // Skip UID, revision number and version number + fseek($fh, 44); + // Number of blocks in Big Block Allocation Table + $bbatBlockCount = self::_readInt4($fh); + + // Root chain 1st block + $directoryFirstBlockId = self::_readInt4($fh); + + // Skip unused bytes + fseek($fh, 56); + // Streams shorter than this are stored using small blocks + $this->bigBlockThreshold = self::_readInt4($fh); + // Block id of first sector in Short Block Allocation Table + $sbatFirstBlockId = self::_readInt4($fh); + // Number of blocks in Short Block Allocation Table + $sbbatBlockCount = self::_readInt4($fh); + // Block id of first sector in Master Block Allocation Table + $mbatFirstBlockId = self::_readInt4($fh); + // Number of blocks in Master Block Allocation Table + $mbbatBlockCount = self::_readInt4($fh); + $this->bbat = array(); + + // Remaining 4 * 109 bytes of current block is beginning of Master + // Block Allocation Table + $mbatBlocks = array(); + for ($i = 0; $i < 109; ++$i) { + $mbatBlocks[] = self::_readInt4($fh); + } + + // Read rest of Master Block Allocation Table (if any is left) + $pos = $this->_getBlockOffset($mbatFirstBlockId); + for ($i = 0; $i < $mbbatBlockCount; ++$i) { + fseek($fh, $pos); + for ($j = 0; $j < $this->bigBlockSize / 4 - 1; ++$j) { + $mbatBlocks[] = self::_readInt4($fh); + } + // Last block id in each block points to next block + $pos = $this->_getBlockOffset(self::_readInt4($fh)); + } + + // Read Big Block Allocation Table according to chain specified by + // $mbatBlocks + for ($i = 0; $i < $bbatBlockCount; ++$i) { + $pos = $this->_getBlockOffset($mbatBlocks[$i]); + fseek($fh, $pos); + for ($j = 0; $j < $this->bigBlockSize / 4; ++$j) { + $this->bbat[] = self::_readInt4($fh); + } + } + + // Read short block allocation table (SBAT) + $this->sbat = array(); + $shortBlockCount = $sbbatBlockCount * $this->bigBlockSize / 4; + $sbatFh = $this->getStream($sbatFirstBlockId); + for ($blockId = 0; $blockId < $shortBlockCount; ++$blockId) { + $this->sbat[$blockId] = self::_readInt4($sbatFh); + } + fclose($sbatFh); + + $this->_readPpsWks($directoryFirstBlockId); + + return true; + } + + /** + * @param int block id + * @param int byte offset from beginning of file + * @access public + */ + public function _getBlockOffset($blockId) + { + return 512 + $blockId * $this->bigBlockSize; + } + + /** + * Returns a stream for use with fread() etc. External callers should + * use PHPExcel_Shared_OLE_PPS_File::getStream(). + * @param int|PPS block id or PPS + * @return resource read-only stream + */ + public function getStream($blockIdOrPps) + { + static $isRegistered = false; + if (!$isRegistered) { + stream_wrapper_register('ole-chainedblockstream', 'PHPExcel_Shared_OLE_ChainedBlockStream'); + $isRegistered = true; + } + + // Store current instance in global array, so that it can be accessed + // in OLE_ChainedBlockStream::stream_open(). + // Object is removed from self::$instances in OLE_Stream::close(). + $GLOBALS['_OLE_INSTANCES'][] = $this; + $instanceId = end(array_keys($GLOBALS['_OLE_INSTANCES'])); + + $path = 'ole-chainedblockstream://oleInstanceId=' . $instanceId; + if ($blockIdOrPps instanceof PHPExcel_Shared_OLE_PPS) { + $path .= '&blockId=' . $blockIdOrPps->_StartBlock; + $path .= '&size=' . $blockIdOrPps->Size; + } else { + $path .= '&blockId=' . $blockIdOrPps; + } + return fopen($path, 'r'); + } + + /** + * Reads a signed char. + * @param resource file handle + * @return int + * @access public + */ + private static function _readInt1($fh) + { + list(, $tmp) = unpack("c", fread($fh, 1)); + return $tmp; + } + + /** + * Reads an unsigned short (2 octets). + * @param resource file handle + * @return int + * @access public + */ + private static function _readInt2($fh) + { + list(, $tmp) = unpack("v", fread($fh, 2)); + return $tmp; + } + + /** + * Reads an unsigned long (4 octets). + * @param resource file handle + * @return int + * @access public + */ + private static function _readInt4($fh) + { + list(, $tmp) = unpack("V", fread($fh, 4)); + return $tmp; + } + + /** + * Gets information about all PPS's on the OLE container from the PPS WK's + * creates an OLE_PPS object for each one. + * + * @access public + * @param integer the block id of the first block + * @return mixed true on success, PEAR_Error on failure + */ + public function _readPpsWks($blockId) + { + $fh = $this->getStream($blockId); + for ($pos = 0;; $pos += 128) { + fseek($fh, $pos, SEEK_SET); + $nameUtf16 = fread($fh, 64); + $nameLength = self::_readInt2($fh); + $nameUtf16 = substr($nameUtf16, 0, $nameLength - 2); + // Simple conversion from UTF-16LE to ISO-8859-1 + $name = str_replace("\x00", "", $nameUtf16); + $type = self::_readInt1($fh); + switch ($type) { + case self::OLE_PPS_TYPE_ROOT: + $pps = new PHPExcel_Shared_OLE_PPS_Root(null, null, array()); + $this->root = $pps; + break; + case self::OLE_PPS_TYPE_DIR: + $pps = new PHPExcel_Shared_OLE_PPS(null, null, null, null, null, null, null, null, null, array()); + break; + case self::OLE_PPS_TYPE_FILE: + $pps = new PHPExcel_Shared_OLE_PPS_File($name); + break; + default: + continue; + } + fseek($fh, 1, SEEK_CUR); + $pps->Type = $type; + $pps->Name = $name; + $pps->PrevPps = self::_readInt4($fh); + $pps->NextPps = self::_readInt4($fh); + $pps->DirPps = self::_readInt4($fh); + fseek($fh, 20, SEEK_CUR); + $pps->Time1st = self::OLE2LocalDate(fread($fh, 8)); + $pps->Time2nd = self::OLE2LocalDate(fread($fh, 8)); + $pps->_StartBlock = self::_readInt4($fh); + $pps->Size = self::_readInt4($fh); + $pps->No = count($this->_list); + $this->_list[] = $pps; + + // check if the PPS tree (starting from root) is complete + if (isset($this->root) && $this->_ppsTreeComplete($this->root->No)) { + break; + } + } + fclose($fh); + + // Initialize $pps->children on directories + foreach ($this->_list as $pps) { + if ($pps->Type == self::OLE_PPS_TYPE_DIR || $pps->Type == self::OLE_PPS_TYPE_ROOT) { + $nos = array($pps->DirPps); + $pps->children = array(); + while ($nos) { + $no = array_pop($nos); + if ($no != -1) { + $childPps = $this->_list[$no]; + $nos[] = $childPps->PrevPps; + $nos[] = $childPps->NextPps; + $pps->children[] = $childPps; + } + } + } + } + + return true; + } + + /** + * It checks whether the PPS tree is complete (all PPS's read) + * starting with the given PPS (not necessarily root) + * + * @access public + * @param integer $index The index of the PPS from which we are checking + * @return boolean Whether the PPS tree for the given PPS is complete + */ + public function _ppsTreeComplete($index) + { + return isset($this->_list[$index]) && + ($pps = $this->_list[$index]) && + ($pps->PrevPps == -1 || + $this->_ppsTreeComplete($pps->PrevPps)) && + ($pps->NextPps == -1 || + $this->_ppsTreeComplete($pps->NextPps)) && + ($pps->DirPps == -1 || + $this->_ppsTreeComplete($pps->DirPps)); + } + + /** + * Checks whether a PPS is a File PPS or not. + * If there is no PPS for the index given, it will return false. + * + * @access public + * @param integer $index The index for the PPS + * @return bool true if it's a File PPS, false otherwise + */ + public function isFile($index) + { + if (isset($this->_list[$index])) { + return ($this->_list[$index]->Type == self::OLE_PPS_TYPE_FILE); + } + return false; + } + + /** + * Checks whether a PPS is a Root PPS or not. + * If there is no PPS for the index given, it will return false. + * + * @access public + * @param integer $index The index for the PPS. + * @return bool true if it's a Root PPS, false otherwise + */ + public function isRoot($index) + { + if (isset($this->_list[$index])) { + return ($this->_list[$index]->Type == self::OLE_PPS_TYPE_ROOT); + } + return false; + } + + /** + * Gives the total number of PPS's found in the OLE container. + * + * @access public + * @return integer The total number of PPS's found in the OLE container + */ + public function ppsTotal() + { + return count($this->_list); + } + + /** + * Gets data from a PPS + * If there is no PPS for the index given, it will return an empty string. + * + * @access public + * @param integer $index The index for the PPS + * @param integer $position The position from which to start reading + * (relative to the PPS) + * @param integer $length The amount of bytes to read (at most) + * @return string The binary string containing the data requested + * @see OLE_PPS_File::getStream() + */ + public function getData($index, $position, $length) + { + // if position is not valid return empty string + if (!isset($this->_list[$index]) || ($position >= $this->_list[$index]->Size) || ($position < 0)) { + return ''; + } + $fh = $this->getStream($this->_list[$index]); + $data = stream_get_contents($fh, $length, $position); + fclose($fh); + return $data; + } + + /** + * Gets the data length from a PPS + * If there is no PPS for the index given, it will return 0. + * + * @access public + * @param integer $index The index for the PPS + * @return integer The amount of bytes in data the PPS has + */ + public function getDataLength($index) + { + if (isset($this->_list[$index])) { + return $this->_list[$index]->Size; + } + return 0; + } + + /** + * Utility function to transform ASCII text to Unicode + * + * @access public + * @static + * @param string $ascii The ASCII string to transform + * @return string The string in Unicode + */ + public static function Asc2Ucs($ascii) + { + $rawname = ''; + for ($i = 0; $i < strlen($ascii); ++$i) { + $rawname .= $ascii{$i} . "\x00"; + } + return $rawname; + } + + /** + * Utility function + * Returns a string for the OLE container with the date given + * + * @access public + * @static + * @param integer $date A timestamp + * @return string The string for the OLE container + */ + public static function LocalDate2OLE($date = null) + { + if (!isset($date)) { + return "\x00\x00\x00\x00\x00\x00\x00\x00"; + } + + // factor used for separating numbers into 4 bytes parts + $factor = pow(2, 32); + + // days from 1-1-1601 until the beggining of UNIX era + $days = 134774; + // calculate seconds + $big_date = $days*24*3600 + gmmktime(date("H", $date), date("i", $date), date("s", $date), date("m", $date), date("d", $date), date("Y", $date)); + // multiply just to make MS happy + $big_date *= 10000000; + + $high_part = floor($big_date / $factor); + // lower 4 bytes + $low_part = floor((($big_date / $factor) - $high_part) * $factor); + + // Make HEX string + $res = ''; + + for ($i = 0; $i < 4; ++$i) { + $hex = $low_part % 0x100; + $res .= pack('c', $hex); + $low_part /= 0x100; + } + for ($i = 0; $i < 4; ++$i) { + $hex = $high_part % 0x100; + $res .= pack('c', $hex); + $high_part /= 0x100; + } + return $res; + } + + /** + * Returns a timestamp from an OLE container's date + * + * @access public + * @static + * @param integer $string A binary string with the encoded date + * @return string The timestamp corresponding to the string + */ + public static function OLE2LocalDate($string) + { + if (strlen($string) != 8) { + return new PEAR_Error("Expecting 8 byte string"); + } + + // factor used for separating numbers into 4 bytes parts + $factor = pow(2, 32); + list(, $high_part) = unpack('V', substr($string, 4, 4)); + list(, $low_part) = unpack('V', substr($string, 0, 4)); + + $big_date = ($high_part * $factor) + $low_part; + // translate to seconds + $big_date /= 10000000; + + // days from 1-1-1601 until the beggining of UNIX era + $days = 134774; + + // translate to seconds from beggining of UNIX era + $big_date -= $days * 24 * 3600; + return floor($big_date); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/ChainedBlockStream.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/ChainedBlockStream.php new file mode 100644 index 0000000..84d2cc5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/ChainedBlockStream.php @@ -0,0 +1,206 @@ +<?php + +/** + * PHPExcel_Shared_OLE_ChainedBlockStream + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_OLE + * @copyright Copyright (c) 2006 - 2007 Christian Schmidt + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_OLE_ChainedBlockStream +{ + /** + * The OLE container of the file that is being read. + * @var OLE + */ + public $ole; + + /** + * Parameters specified by fopen(). + * @var array + */ + public $params; + + /** + * The binary data of the file. + * @var string + */ + public $data; + + /** + * The file pointer. + * @var int byte offset + */ + public $pos; + + /** + * Implements support for fopen(). + * For creating streams using this wrapper, use OLE_PPS_File::getStream(). + * + * @param string $path resource name including scheme, e.g. + * ole-chainedblockstream://oleInstanceId=1 + * @param string $mode only "r" is supported + * @param int $options mask of STREAM_REPORT_ERRORS and STREAM_USE_PATH + * @param string &$openedPath absolute path of the opened stream (out parameter) + * @return bool true on success + */ + public function stream_open($path, $mode, $options, &$openedPath) + { + if ($mode != 'r') { + if ($options & STREAM_REPORT_ERRORS) { + trigger_error('Only reading is supported', E_USER_WARNING); + } + return false; + } + + // 25 is length of "ole-chainedblockstream://" + parse_str(substr($path, 25), $this->params); + if (!isset($this->params['oleInstanceId'], $this->params['blockId'], $GLOBALS['_OLE_INSTANCES'][$this->params['oleInstanceId']])) { + if ($options & STREAM_REPORT_ERRORS) { + trigger_error('OLE stream not found', E_USER_WARNING); + } + return false; + } + $this->ole = $GLOBALS['_OLE_INSTANCES'][$this->params['oleInstanceId']]; + + $blockId = $this->params['blockId']; + $this->data = ''; + if (isset($this->params['size']) && $this->params['size'] < $this->ole->bigBlockThreshold && $blockId != $this->ole->root->_StartBlock) { + // Block id refers to small blocks + $rootPos = $this->ole->_getBlockOffset($this->ole->root->_StartBlock); + while ($blockId != -2) { + $pos = $rootPos + $blockId * $this->ole->bigBlockSize; + $blockId = $this->ole->sbat[$blockId]; + fseek($this->ole->_file_handle, $pos); + $this->data .= fread($this->ole->_file_handle, $this->ole->bigBlockSize); + } + } else { + // Block id refers to big blocks + while ($blockId != -2) { + $pos = $this->ole->_getBlockOffset($blockId); + fseek($this->ole->_file_handle, $pos); + $this->data .= fread($this->ole->_file_handle, $this->ole->bigBlockSize); + $blockId = $this->ole->bbat[$blockId]; + } + } + if (isset($this->params['size'])) { + $this->data = substr($this->data, 0, $this->params['size']); + } + + if ($options & STREAM_USE_PATH) { + $openedPath = $path; + } + + return true; + } + + /** + * Implements support for fclose(). + * + */ + public function stream_close() + { + $this->ole = null; + unset($GLOBALS['_OLE_INSTANCES']); + } + + /** + * Implements support for fread(), fgets() etc. + * + * @param int $count maximum number of bytes to read + * @return string + */ + public function stream_read($count) + { + if ($this->stream_eof()) { + return false; + } + $s = substr($this->data, $this->pos, $count); + $this->pos += $count; + return $s; + } + + /** + * Implements support for feof(). + * + * @return bool TRUE if the file pointer is at EOF; otherwise FALSE + */ + public function stream_eof() + { + return $this->pos >= strlen($this->data); + } + + /** + * Returns the position of the file pointer, i.e. its offset into the file + * stream. Implements support for ftell(). + * + * @return int + */ + public function stream_tell() + { + return $this->pos; + } + + /** + * Implements support for fseek(). + * + * @param int $offset byte offset + * @param int $whence SEEK_SET, SEEK_CUR or SEEK_END + * @return bool + */ + public function stream_seek($offset, $whence) + { + if ($whence == SEEK_SET && $offset >= 0) { + $this->pos = $offset; + } elseif ($whence == SEEK_CUR && -$offset <= $this->pos) { + $this->pos += $offset; + } elseif ($whence == SEEK_END && -$offset <= sizeof($this->data)) { + $this->pos = strlen($this->data) + $offset; + } else { + return false; + } + return true; + } + + /** + * Implements support for fstat(). Currently the only supported field is + * "size". + * @return array + */ + public function stream_stat() + { + return array( + 'size' => strlen($this->data), + ); + } + + // Methods used by stream_wrapper_register() that are not implemented: + // bool stream_flush ( void ) + // int stream_write ( string data ) + // bool rename ( string path_from, string path_to ) + // bool mkdir ( string path, int mode, int options ) + // bool rmdir ( string path, int options ) + // bool dir_opendir ( string path, int options ) + // array url_stat ( string path, int flags ) + // string dir_readdir ( void ) + // bool dir_rewinddir ( void ) + // bool dir_closedir ( void ) +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS.php new file mode 100644 index 0000000..608a892 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS.php @@ -0,0 +1,230 @@ +<?php +/* vim: set expandtab tabstop=4 shiftwidth=4: */ +// +----------------------------------------------------------------------+ +// | PHP Version 4 | +// +----------------------------------------------------------------------+ +// | Copyright (c) 1997-2002 The PHP Group | +// +----------------------------------------------------------------------+ +// | This source file is subject to version 2.02 of the PHP license, | +// | that is bundled with this package in the file LICENSE, and is | +// | available at through the world-wide-web at | +// | http://www.php.net/license/2_02.txt. | +// | If you did not receive a copy of the PHP license and are unable to | +// | obtain it through the world-wide-web, please send a note to | +// | license@php.net so we can mail you a copy immediately. | +// +----------------------------------------------------------------------+ +// | Author: Xavier Noguer <xnoguer@php.net> | +// | Based on OLE::Storage_Lite by Kawai, Takanori | +// +----------------------------------------------------------------------+ +// +// $Id: PPS.php,v 1.7 2007/02/13 21:00:42 schmidt Exp $ + + +/** +* Class for creating PPS's for OLE containers +* +* @author Xavier Noguer <xnoguer@php.net> +* @category PHPExcel +* @package PHPExcel_Shared_OLE +*/ +class PHPExcel_Shared_OLE_PPS +{ + /** + * The PPS index + * @var integer + */ + public $No; + + /** + * The PPS name (in Unicode) + * @var string + */ + public $Name; + + /** + * The PPS type. Dir, Root or File + * @var integer + */ + public $Type; + + /** + * The index of the previous PPS + * @var integer + */ + public $PrevPps; + + /** + * The index of the next PPS + * @var integer + */ + public $NextPps; + + /** + * The index of it's first child if this is a Dir or Root PPS + * @var integer + */ + public $DirPps; + + /** + * A timestamp + * @var integer + */ + public $Time1st; + + /** + * A timestamp + * @var integer + */ + public $Time2nd; + + /** + * Starting block (small or big) for this PPS's data inside the container + * @var integer + */ + public $_StartBlock; + + /** + * The size of the PPS's data (in bytes) + * @var integer + */ + public $Size; + + /** + * The PPS's data (only used if it's not using a temporary file) + * @var string + */ + public $_data; + + /** + * Array of child PPS's (only used by Root and Dir PPS's) + * @var array + */ + public $children = array(); + + /** + * Pointer to OLE container + * @var OLE + */ + public $ole; + + /** + * The constructor + * + * @access public + * @param integer $No The PPS index + * @param string $name The PPS name + * @param integer $type The PPS type. Dir, Root or File + * @param integer $prev The index of the previous PPS + * @param integer $next The index of the next PPS + * @param integer $dir The index of it's first child if this is a Dir or Root PPS + * @param integer $time_1st A timestamp + * @param integer $time_2nd A timestamp + * @param string $data The (usually binary) source data of the PPS + * @param array $children Array containing children PPS for this PPS + */ + public function __construct($No, $name, $type, $prev, $next, $dir, $time_1st, $time_2nd, $data, $children) + { + $this->No = $No; + $this->Name = $name; + $this->Type = $type; + $this->PrevPps = $prev; + $this->NextPps = $next; + $this->DirPps = $dir; + $this->Time1st = $time_1st; + $this->Time2nd = $time_2nd; + $this->_data = $data; + $this->children = $children; + if ($data != '') { + $this->Size = strlen($data); + } else { + $this->Size = 0; + } + } + + /** + * Returns the amount of data saved for this PPS + * + * @access public + * @return integer The amount of data (in bytes) + */ + public function _DataLen() + { + if (!isset($this->_data)) { + return 0; + } + //if (isset($this->_PPS_FILE)) { + // fseek($this->_PPS_FILE, 0); + // $stats = fstat($this->_PPS_FILE); + // return $stats[7]; + //} else { + return strlen($this->_data); + //} + } + + /** + * Returns a string with the PPS's WK (What is a WK?) + * + * @access public + * @return string The binary string + */ + public function _getPpsWk() + { + $ret = str_pad($this->Name, 64, "\x00"); + + $ret .= pack("v", strlen($this->Name) + 2) // 66 + . pack("c", $this->Type) // 67 + . pack("c", 0x00) //UK // 68 + . pack("V", $this->PrevPps) //Prev // 72 + . pack("V", $this->NextPps) //Next // 76 + . pack("V", $this->DirPps) //Dir // 80 + . "\x00\x09\x02\x00" // 84 + . "\x00\x00\x00\x00" // 88 + . "\xc0\x00\x00\x00" // 92 + . "\x00\x00\x00\x46" // 96 // Seems to be ok only for Root + . "\x00\x00\x00\x00" // 100 + . PHPExcel_Shared_OLE::LocalDate2OLE($this->Time1st) // 108 + . PHPExcel_Shared_OLE::LocalDate2OLE($this->Time2nd) // 116 + . pack("V", isset($this->_StartBlock)? + $this->_StartBlock:0) // 120 + . pack("V", $this->Size) // 124 + . pack("V", 0); // 128 + return $ret; + } + + /** + * Updates index and pointers to previous, next and children PPS's for this + * PPS. I don't think it'll work with Dir PPS's. + * + * @access public + * @param array &$raList Reference to the array of PPS's for the whole OLE + * container + * @return integer The index for this PPS + */ + public static function _savePpsSetPnt(&$raList, $to_save, $depth = 0) + { + if (!is_array($to_save) || (empty($to_save))) { + return 0xFFFFFFFF; + } elseif (count($to_save) == 1) { + $cnt = count($raList); + // If the first entry, it's the root... Don't clone it! + $raList[$cnt] = ( $depth == 0 ) ? $to_save[0] : clone $to_save[0]; + $raList[$cnt]->No = $cnt; + $raList[$cnt]->PrevPps = 0xFFFFFFFF; + $raList[$cnt]->NextPps = 0xFFFFFFFF; + $raList[$cnt]->DirPps = self::_savePpsSetPnt($raList, @$raList[$cnt]->children, $depth++); + } else { + $iPos = floor(count($to_save) / 2); + $aPrev = array_slice($to_save, 0, $iPos); + $aNext = array_slice($to_save, $iPos + 1); + $cnt = count($raList); + // If the first entry, it's the root... Don't clone it! + $raList[$cnt] = ( $depth == 0 ) ? $to_save[$iPos] : clone $to_save[$iPos]; + $raList[$cnt]->No = $cnt; + $raList[$cnt]->PrevPps = self::_savePpsSetPnt($raList, $aPrev, $depth++); + $raList[$cnt]->NextPps = self::_savePpsSetPnt($raList, $aNext, $depth++); + $raList[$cnt]->DirPps = self::_savePpsSetPnt($raList, @$raList[$cnt]->children, $depth++); + + } + return $cnt; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS/File.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS/File.php new file mode 100644 index 0000000..1ca337c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS/File.php @@ -0,0 +1,74 @@ +<?php +/* vim: set expandtab tabstop=4 shiftwidth=4: */ +// +----------------------------------------------------------------------+ +// | PHP Version 4 | +// +----------------------------------------------------------------------+ +// | Copyright (c) 1997-2002 The PHP Group | +// +----------------------------------------------------------------------+ +// | This source file is subject to version 2.02 of the PHP license, | +// | that is bundled with this package in the file LICENSE, and is | +// | available at through the world-wide-web at | +// | http://www.php.net/license/2_02.txt. | +// | If you did not receive a copy of the PHP license and are unable to | +// | obtain it through the world-wide-web, please send a note to | +// | license@php.net so we can mail you a copy immediately. | +// +----------------------------------------------------------------------+ +// | Author: Xavier Noguer <xnoguer@php.net> | +// | Based on OLE::Storage_Lite by Kawai, Takanori | +// +----------------------------------------------------------------------+ +// +// $Id: File.php,v 1.11 2007/02/13 21:00:42 schmidt Exp $ + + +/** +* Class for creating File PPS's for OLE containers +* +* @author Xavier Noguer <xnoguer@php.net> +* @category PHPExcel +* @package PHPExcel_Shared_OLE +*/ +class PHPExcel_Shared_OLE_PPS_File extends PHPExcel_Shared_OLE_PPS +{ + /** + * The constructor + * + * @access public + * @param string $name The name of the file (in Unicode) + * @see OLE::Asc2Ucs() + */ + public function __construct($name) + { + parent::__construct(null, $name, PHPExcel_Shared_OLE::OLE_PPS_TYPE_FILE, null, null, null, null, null, '', array()); + } + + /** + * Initialization method. Has to be called right after OLE_PPS_File(). + * + * @access public + * @return mixed true on success + */ + public function init() + { + return true; + } + + /** + * Append data to PPS + * + * @access public + * @param string $data The data to append + */ + public function append($data) + { + $this->_data .= $data; + } + + /** + * Returns a stream for reading this file using fread() etc. + * @return resource a read-only stream + */ + public function getStream() + { + $this->ole->getStream($this); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS/Root.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS/Root.php new file mode 100644 index 0000000..5d4052f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS/Root.php @@ -0,0 +1,462 @@ +<?php +/* vim: set expandtab tabstop=4 shiftwidth=4: */ +// +----------------------------------------------------------------------+ +// | PHP Version 4 | +// +----------------------------------------------------------------------+ +// | Copyright (c) 1997-2002 The PHP Group | +// +----------------------------------------------------------------------+ +// | This source file is subject to version 2.02 of the PHP license, | +// | that is bundled with this package in the file LICENSE, and is | +// | available at through the world-wide-web at | +// | http://www.php.net/license/2_02.txt. | +// | If you did not receive a copy of the PHP license and are unable to | +// | obtain it through the world-wide-web, please send a note to | +// | license@php.net so we can mail you a copy immediately. | +// +----------------------------------------------------------------------+ +// | Author: Xavier Noguer <xnoguer@php.net> | +// | Based on OLE::Storage_Lite by Kawai, Takanori | +// +----------------------------------------------------------------------+ +// +// $Id: Root.php,v 1.9 2005/04/23 21:53:49 dufuz Exp $ + + +/** +* Class for creating Root PPS's for OLE containers +* +* @author Xavier Noguer <xnoguer@php.net> +* @category PHPExcel +* @package PHPExcel_Shared_OLE +*/ +class PHPExcel_Shared_OLE_PPS_Root extends PHPExcel_Shared_OLE_PPS +{ + + /** + * Directory for temporary files + * @var string + */ + protected $tempDirectory = null; + + /** + * @param integer $time_1st A timestamp + * @param integer $time_2nd A timestamp + */ + public function __construct($time_1st, $time_2nd, $raChild) + { + $this->_tempDir = PHPExcel_Shared_File::sys_get_temp_dir(); + + parent::__construct(null, PHPExcel_Shared_OLE::Asc2Ucs('Root Entry'), PHPExcel_Shared_OLE::OLE_PPS_TYPE_ROOT, null, null, null, $time_1st, $time_2nd, null, $raChild); + } + + /** + * Method for saving the whole OLE container (including files). + * In fact, if called with an empty argument (or '-'), it saves to a + * temporary file and then outputs it's contents to stdout. + * If a resource pointer to a stream created by fopen() is passed + * it will be used, but you have to close such stream by yourself. + * + * @param string|resource $filename The name of the file or stream where to save the OLE container. + * @access public + * @return mixed true on success + */ + public function save($filename) + { + // Initial Setting for saving + $this->_BIG_BLOCK_SIZE = pow( + 2, + (isset($this->_BIG_BLOCK_SIZE))? self::adjust2($this->_BIG_BLOCK_SIZE) : 9 + ); + $this->_SMALL_BLOCK_SIZE= pow( + 2, + (isset($this->_SMALL_BLOCK_SIZE))? self::adjust2($this->_SMALL_BLOCK_SIZE) : 6 + ); + + if (is_resource($filename)) { + $this->_FILEH_ = $filename; + } elseif ($filename == '-' || $filename == '') { + if ($this->tempDirectory === null) { + $this->tempDirectory = PHPExcel_Shared_File::sys_get_temp_dir(); + } + $this->_tmp_filename = tempnam($this->tempDirectory, "OLE_PPS_Root"); + $this->_FILEH_ = fopen($this->_tmp_filename, "w+b"); + if ($this->_FILEH_ == false) { + throw new PHPExcel_Writer_Exception("Can't create temporary file."); + } + } else { + $this->_FILEH_ = fopen($filename, "wb"); + } + if ($this->_FILEH_ == false) { + throw new PHPExcel_Writer_Exception("Can't open $filename. It may be in use or protected."); + } + // Make an array of PPS's (for Save) + $aList = array(); + PHPExcel_Shared_OLE_PPS::_savePpsSetPnt($aList, array($this)); + // calculate values for header + list($iSBDcnt, $iBBcnt, $iPPScnt) = $this->_calcSize($aList); //, $rhInfo); + // Save Header + $this->_saveHeader($iSBDcnt, $iBBcnt, $iPPScnt); + + // Make Small Data string (write SBD) + $this->_data = $this->_makeSmallData($aList); + + // Write BB + $this->_saveBigData($iSBDcnt, $aList); + // Write PPS + $this->_savePps($aList); + // Write Big Block Depot and BDList and Adding Header informations + $this->_saveBbd($iSBDcnt, $iBBcnt, $iPPScnt); + + if (!is_resource($filename)) { + fclose($this->_FILEH_); + } + + return true; + } + + /** + * Calculate some numbers + * + * @access public + * @param array $raList Reference to an array of PPS's + * @return array The array of numbers + */ + public function _calcSize(&$raList) + { + // Calculate Basic Setting + list($iSBDcnt, $iBBcnt, $iPPScnt) = array(0,0,0); + $iSmallLen = 0; + $iSBcnt = 0; + $iCount = count($raList); + for ($i = 0; $i < $iCount; ++$i) { + if ($raList[$i]->Type == PHPExcel_Shared_OLE::OLE_PPS_TYPE_FILE) { + $raList[$i]->Size = $raList[$i]->_DataLen(); + if ($raList[$i]->Size < PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL) { + $iSBcnt += floor($raList[$i]->Size / $this->_SMALL_BLOCK_SIZE) + + (($raList[$i]->Size % $this->_SMALL_BLOCK_SIZE)? 1: 0); + } else { + $iBBcnt += (floor($raList[$i]->Size / $this->_BIG_BLOCK_SIZE) + + (($raList[$i]->Size % $this->_BIG_BLOCK_SIZE)? 1: 0)); + } + } + } + $iSmallLen = $iSBcnt * $this->_SMALL_BLOCK_SIZE; + $iSlCnt = floor($this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE); + $iSBDcnt = floor($iSBcnt / $iSlCnt) + (($iSBcnt % $iSlCnt)? 1:0); + $iBBcnt += (floor($iSmallLen / $this->_BIG_BLOCK_SIZE) + + (( $iSmallLen % $this->_BIG_BLOCK_SIZE)? 1: 0)); + $iCnt = count($raList); + $iBdCnt = $this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_PPS_SIZE; + $iPPScnt = (floor($iCnt/$iBdCnt) + (($iCnt % $iBdCnt)? 1: 0)); + + return array($iSBDcnt, $iBBcnt, $iPPScnt); + } + + /** + * Helper function for caculating a magic value for block sizes + * + * @access public + * @param integer $i2 The argument + * @see save() + * @return integer + */ + private static function adjust2($i2) + { + $iWk = log($i2)/log(2); + return ($iWk > floor($iWk))? floor($iWk)+1:$iWk; + } + + /** + * Save OLE header + * + * @access public + * @param integer $iSBDcnt + * @param integer $iBBcnt + * @param integer $iPPScnt + */ + public function _saveHeader($iSBDcnt, $iBBcnt, $iPPScnt) + { + $FILE = $this->_FILEH_; + + // Calculate Basic Setting + $iBlCnt = $this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE; + $i1stBdL = ($this->_BIG_BLOCK_SIZE - 0x4C) / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE; + + $iBdExL = 0; + $iAll = $iBBcnt + $iPPScnt + $iSBDcnt; + $iAllW = $iAll; + $iBdCntW = floor($iAllW / $iBlCnt) + (($iAllW % $iBlCnt)? 1: 0); + $iBdCnt = floor(($iAll + $iBdCntW) / $iBlCnt) + ((($iAllW+$iBdCntW) % $iBlCnt)? 1: 0); + + // Calculate BD count + if ($iBdCnt > $i1stBdL) { + while (1) { + ++$iBdExL; + ++$iAllW; + $iBdCntW = floor($iAllW / $iBlCnt) + (($iAllW % $iBlCnt)? 1: 0); + $iBdCnt = floor(($iAllW + $iBdCntW) / $iBlCnt) + ((($iAllW+$iBdCntW) % $iBlCnt)? 1: 0); + if ($iBdCnt <= ($iBdExL*$iBlCnt+ $i1stBdL)) { + break; + } + } + } + + // Save Header + fwrite( + $FILE, + "\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1" + . "\x00\x00\x00\x00" + . "\x00\x00\x00\x00" + . "\x00\x00\x00\x00" + . "\x00\x00\x00\x00" + . pack("v", 0x3b) + . pack("v", 0x03) + . pack("v", -2) + . pack("v", 9) + . pack("v", 6) + . pack("v", 0) + . "\x00\x00\x00\x00" + . "\x00\x00\x00\x00" + . pack("V", $iBdCnt) + . pack("V", $iBBcnt+$iSBDcnt) //ROOT START + . pack("V", 0) + . pack("V", 0x1000) + . pack("V", $iSBDcnt ? 0 : -2) //Small Block Depot + . pack("V", $iSBDcnt) + ); + // Extra BDList Start, Count + if ($iBdCnt < $i1stBdL) { + fwrite( + $FILE, + pack("V", -2) // Extra BDList Start + . pack("V", 0)// Extra BDList Count + ); + } else { + fwrite($FILE, pack("V", $iAll+$iBdCnt) . pack("V", $iBdExL)); + } + + // BDList + for ($i = 0; $i < $i1stBdL && $i < $iBdCnt; ++$i) { + fwrite($FILE, pack("V", $iAll+$i)); + } + if ($i < $i1stBdL) { + $jB = $i1stBdL - $i; + for ($j = 0; $j < $jB; ++$j) { + fwrite($FILE, (pack("V", -1))); + } + } + } + + /** + * Saving big data (PPS's with data bigger than PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL) + * + * @access public + * @param integer $iStBlk + * @param array &$raList Reference to array of PPS's + */ + public function _saveBigData($iStBlk, &$raList) + { + $FILE = $this->_FILEH_; + + // cycle through PPS's + $iCount = count($raList); + for ($i = 0; $i < $iCount; ++$i) { + if ($raList[$i]->Type != PHPExcel_Shared_OLE::OLE_PPS_TYPE_DIR) { + $raList[$i]->Size = $raList[$i]->_DataLen(); + if (($raList[$i]->Size >= PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL) || (($raList[$i]->Type == PHPExcel_Shared_OLE::OLE_PPS_TYPE_ROOT) && isset($raList[$i]->_data))) { + // Write Data + //if (isset($raList[$i]->_PPS_FILE)) { + // $iLen = 0; + // fseek($raList[$i]->_PPS_FILE, 0); // To The Top + // while ($sBuff = fread($raList[$i]->_PPS_FILE, 4096)) { + // $iLen += strlen($sBuff); + // fwrite($FILE, $sBuff); + // } + //} else { + fwrite($FILE, $raList[$i]->_data); + //} + + if ($raList[$i]->Size % $this->_BIG_BLOCK_SIZE) { + fwrite($FILE, str_repeat("\x00", $this->_BIG_BLOCK_SIZE - ($raList[$i]->Size % $this->_BIG_BLOCK_SIZE))); + } + // Set For PPS + $raList[$i]->_StartBlock = $iStBlk; + $iStBlk += + (floor($raList[$i]->Size / $this->_BIG_BLOCK_SIZE) + + (($raList[$i]->Size % $this->_BIG_BLOCK_SIZE)? 1: 0)); + } + // Close file for each PPS, and unlink it + //if (isset($raList[$i]->_PPS_FILE)) { + // fclose($raList[$i]->_PPS_FILE); + // $raList[$i]->_PPS_FILE = null; + // unlink($raList[$i]->_tmp_filename); + //} + } + } + } + + /** + * get small data (PPS's with data smaller than PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL) + * + * @access public + * @param array &$raList Reference to array of PPS's + */ + public function _makeSmallData(&$raList) + { + $sRes = ''; + $FILE = $this->_FILEH_; + $iSmBlk = 0; + + $iCount = count($raList); + for ($i = 0; $i < $iCount; ++$i) { + // Make SBD, small data string + if ($raList[$i]->Type == PHPExcel_Shared_OLE::OLE_PPS_TYPE_FILE) { + if ($raList[$i]->Size <= 0) { + continue; + } + if ($raList[$i]->Size < PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL) { + $iSmbCnt = floor($raList[$i]->Size / $this->_SMALL_BLOCK_SIZE) + + (($raList[$i]->Size % $this->_SMALL_BLOCK_SIZE)? 1: 0); + // Add to SBD + $jB = $iSmbCnt - 1; + for ($j = 0; $j < $jB; ++$j) { + fwrite($FILE, pack("V", $j+$iSmBlk+1)); + } + fwrite($FILE, pack("V", -2)); + + //// Add to Data String(this will be written for RootEntry) + //if ($raList[$i]->_PPS_FILE) { + // fseek($raList[$i]->_PPS_FILE, 0); // To The Top + // while ($sBuff = fread($raList[$i]->_PPS_FILE, 4096)) { + // $sRes .= $sBuff; + // } + //} else { + $sRes .= $raList[$i]->_data; + //} + if ($raList[$i]->Size % $this->_SMALL_BLOCK_SIZE) { + $sRes .= str_repeat("\x00", $this->_SMALL_BLOCK_SIZE - ($raList[$i]->Size % $this->_SMALL_BLOCK_SIZE)); + } + // Set for PPS + $raList[$i]->_StartBlock = $iSmBlk; + $iSmBlk += $iSmbCnt; + } + } + } + $iSbCnt = floor($this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE); + if ($iSmBlk % $iSbCnt) { + $iB = $iSbCnt - ($iSmBlk % $iSbCnt); + for ($i = 0; $i < $iB; ++$i) { + fwrite($FILE, pack("V", -1)); + } + } + return $sRes; + } + + /** + * Saves all the PPS's WKs + * + * @access public + * @param array $raList Reference to an array with all PPS's + */ + public function _savePps(&$raList) + { + // Save each PPS WK + $iC = count($raList); + for ($i = 0; $i < $iC; ++$i) { + fwrite($this->_FILEH_, $raList[$i]->_getPpsWk()); + } + // Adjust for Block + $iCnt = count($raList); + $iBCnt = $this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_PPS_SIZE; + if ($iCnt % $iBCnt) { + fwrite($this->_FILEH_, str_repeat("\x00", ($iBCnt - ($iCnt % $iBCnt)) * PHPExcel_Shared_OLE::OLE_PPS_SIZE)); + } + } + + /** + * Saving Big Block Depot + * + * @access public + * @param integer $iSbdSize + * @param integer $iBsize + * @param integer $iPpsCnt + */ + public function _saveBbd($iSbdSize, $iBsize, $iPpsCnt) + { + $FILE = $this->_FILEH_; + // Calculate Basic Setting + $iBbCnt = $this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE; + $i1stBdL = ($this->_BIG_BLOCK_SIZE - 0x4C) / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE; + + $iBdExL = 0; + $iAll = $iBsize + $iPpsCnt + $iSbdSize; + $iAllW = $iAll; + $iBdCntW = floor($iAllW / $iBbCnt) + (($iAllW % $iBbCnt)? 1: 0); + $iBdCnt = floor(($iAll + $iBdCntW) / $iBbCnt) + ((($iAllW+$iBdCntW) % $iBbCnt)? 1: 0); + // Calculate BD count + if ($iBdCnt >$i1stBdL) { + while (1) { + ++$iBdExL; + ++$iAllW; + $iBdCntW = floor($iAllW / $iBbCnt) + (($iAllW % $iBbCnt)? 1: 0); + $iBdCnt = floor(($iAllW + $iBdCntW) / $iBbCnt) + ((($iAllW+$iBdCntW) % $iBbCnt)? 1: 0); + if ($iBdCnt <= ($iBdExL*$iBbCnt+ $i1stBdL)) { + break; + } + } + } + + // Making BD + // Set for SBD + if ($iSbdSize > 0) { + for ($i = 0; $i < ($iSbdSize - 1); ++$i) { + fwrite($FILE, pack("V", $i+1)); + } + fwrite($FILE, pack("V", -2)); + } + // Set for B + for ($i = 0; $i < ($iBsize - 1); ++$i) { + fwrite($FILE, pack("V", $i+$iSbdSize+1)); + } + fwrite($FILE, pack("V", -2)); + + // Set for PPS + for ($i = 0; $i < ($iPpsCnt - 1); ++$i) { + fwrite($FILE, pack("V", $i+$iSbdSize+$iBsize+1)); + } + fwrite($FILE, pack("V", -2)); + // Set for BBD itself ( 0xFFFFFFFD : BBD) + for ($i = 0; $i < $iBdCnt; ++$i) { + fwrite($FILE, pack("V", 0xFFFFFFFD)); + } + // Set for ExtraBDList + for ($i = 0; $i < $iBdExL; ++$i) { + fwrite($FILE, pack("V", 0xFFFFFFFC)); + } + // Adjust for Block + if (($iAllW + $iBdCnt) % $iBbCnt) { + $iBlock = ($iBbCnt - (($iAllW + $iBdCnt) % $iBbCnt)); + for ($i = 0; $i < $iBlock; ++$i) { + fwrite($FILE, pack("V", -1)); + } + } + // Extra BDList + if ($iBdCnt > $i1stBdL) { + $iN=0; + $iNb=0; + for ($i = $i1stBdL; $i < $iBdCnt; $i++, ++$iN) { + if ($iN >= ($iBbCnt - 1)) { + $iN = 0; + ++$iNb; + fwrite($FILE, pack("V", $iAll+$iBdCnt+$iNb)); + } + fwrite($FILE, pack("V", $iBsize+$iSbdSize+$iPpsCnt+$i)); + } + if (($iBdCnt-$i1stBdL) % ($iBbCnt-1)) { + $iB = ($iBbCnt - 1) - (($iBdCnt - $i1stBdL) % ($iBbCnt - 1)); + for ($i = 0; $i < $iB; ++$i) { + fwrite($FILE, pack("V", -1)); + } + } + fwrite($FILE, pack("V", -2)); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS/_notes/dwsync.xml new file mode 100644 index 0000000..dafefed --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/PPS/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="File.php" server="62.244.88.21/deciday/" local="131919461904884866" remote="131880384600000000" Dst="1" /> +<file name="Root.php" server="62.244.88.21/deciday/" local="131919461905566793" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/_notes/dwsync.xml new file mode 100644 index 0000000..ce9da91 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLE/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="ChainedBlockStream.php" server="62.244.88.21/deciday/" local="131919461904578902" remote="131880384600000000" Dst="1" /> +<file name="PPS.php" server="62.244.88.21/deciday/" local="131919461905758309" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLERead.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLERead.php new file mode 100644 index 0000000..6b15d97 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/OLERead.php @@ -0,0 +1,318 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +defined('IDENTIFIER_OLE') || + define('IDENTIFIER_OLE', pack('CCCCCCCC', 0xd0, 0xcf, 0x11, 0xe0, 0xa1, 0xb1, 0x1a, 0xe1)); + +class PHPExcel_Shared_OLERead +{ + private $data = ''; + + // OLE identifier + const IDENTIFIER_OLE = IDENTIFIER_OLE; + + // Size of a sector = 512 bytes + const BIG_BLOCK_SIZE = 0x200; + + // Size of a short sector = 64 bytes + const SMALL_BLOCK_SIZE = 0x40; + + // Size of a directory entry always = 128 bytes + const PROPERTY_STORAGE_BLOCK_SIZE = 0x80; + + // Minimum size of a standard stream = 4096 bytes, streams smaller than this are stored as short streams + const SMALL_BLOCK_THRESHOLD = 0x1000; + + // header offsets + const NUM_BIG_BLOCK_DEPOT_BLOCKS_POS = 0x2c; + const ROOT_START_BLOCK_POS = 0x30; + const SMALL_BLOCK_DEPOT_BLOCK_POS = 0x3c; + const EXTENSION_BLOCK_POS = 0x44; + const NUM_EXTENSION_BLOCK_POS = 0x48; + const BIG_BLOCK_DEPOT_BLOCKS_POS = 0x4c; + + // property storage offsets (directory offsets) + const SIZE_OF_NAME_POS = 0x40; + const TYPE_POS = 0x42; + const START_BLOCK_POS = 0x74; + const SIZE_POS = 0x78; + + + + public $wrkbook = null; + public $summaryInformation = null; + public $documentSummaryInformation = null; + + + /** + * Read the file + * + * @param $sFileName string Filename + * @throws PHPExcel_Reader_Exception + */ + public function read($sFileName) + { + // Check if file exists and is readable + if (!is_readable($sFileName)) { + throw new PHPExcel_Reader_Exception("Could not open " . $sFileName . " for reading! File does not exist, or it is not readable."); + } + + // Get the file identifier + // Don't bother reading the whole file until we know it's a valid OLE file + $this->data = file_get_contents($sFileName, false, null, 0, 8); + + // Check OLE identifier + if ($this->data != self::IDENTIFIER_OLE) { + throw new PHPExcel_Reader_Exception('The filename ' . $sFileName . ' is not recognised as an OLE file'); + } + + // Get the file data + $this->data = file_get_contents($sFileName); + + // Total number of sectors used for the SAT + $this->numBigBlockDepotBlocks = self::getInt4d($this->data, self::NUM_BIG_BLOCK_DEPOT_BLOCKS_POS); + + // SecID of the first sector of the directory stream + $this->rootStartBlock = self::getInt4d($this->data, self::ROOT_START_BLOCK_POS); + + // SecID of the first sector of the SSAT (or -2 if not extant) + $this->sbdStartBlock = self::getInt4d($this->data, self::SMALL_BLOCK_DEPOT_BLOCK_POS); + + // SecID of the first sector of the MSAT (or -2 if no additional sectors are used) + $this->extensionBlock = self::getInt4d($this->data, self::EXTENSION_BLOCK_POS); + + // Total number of sectors used by MSAT + $this->numExtensionBlocks = self::getInt4d($this->data, self::NUM_EXTENSION_BLOCK_POS); + + $bigBlockDepotBlocks = array(); + $pos = self::BIG_BLOCK_DEPOT_BLOCKS_POS; + + $bbdBlocks = $this->numBigBlockDepotBlocks; + + if ($this->numExtensionBlocks != 0) { + $bbdBlocks = (self::BIG_BLOCK_SIZE - self::BIG_BLOCK_DEPOT_BLOCKS_POS)/4; + } + + for ($i = 0; $i < $bbdBlocks; ++$i) { + $bigBlockDepotBlocks[$i] = self::getInt4d($this->data, $pos); + $pos += 4; + } + + for ($j = 0; $j < $this->numExtensionBlocks; ++$j) { + $pos = ($this->extensionBlock + 1) * self::BIG_BLOCK_SIZE; + $blocksToRead = min($this->numBigBlockDepotBlocks - $bbdBlocks, self::BIG_BLOCK_SIZE / 4 - 1); + + for ($i = $bbdBlocks; $i < $bbdBlocks + $blocksToRead; ++$i) { + $bigBlockDepotBlocks[$i] = self::getInt4d($this->data, $pos); + $pos += 4; + } + + $bbdBlocks += $blocksToRead; + if ($bbdBlocks < $this->numBigBlockDepotBlocks) { + $this->extensionBlock = self::getInt4d($this->data, $pos); + } + } + + $pos = 0; + $this->bigBlockChain = ''; + $bbs = self::BIG_BLOCK_SIZE / 4; + for ($i = 0; $i < $this->numBigBlockDepotBlocks; ++$i) { + $pos = ($bigBlockDepotBlocks[$i] + 1) * self::BIG_BLOCK_SIZE; + + $this->bigBlockChain .= substr($this->data, $pos, 4*$bbs); + $pos += 4*$bbs; + } + + $pos = 0; + $sbdBlock = $this->sbdStartBlock; + $this->smallBlockChain = ''; + while ($sbdBlock != -2) { + $pos = ($sbdBlock + 1) * self::BIG_BLOCK_SIZE; + + $this->smallBlockChain .= substr($this->data, $pos, 4*$bbs); + $pos += 4*$bbs; + + $sbdBlock = self::getInt4d($this->bigBlockChain, $sbdBlock*4); + } + + // read the directory stream + $block = $this->rootStartBlock; + $this->entry = $this->_readData($block); + + $this->readPropertySets(); + } + + /** + * Extract binary stream data + * + * @return string + */ + public function getStream($stream) + { + if ($stream === null) { + return null; + } + + $streamData = ''; + + if ($this->props[$stream]['size'] < self::SMALL_BLOCK_THRESHOLD) { + $rootdata = $this->_readData($this->props[$this->rootentry]['startBlock']); + + $block = $this->props[$stream]['startBlock']; + + while ($block != -2) { + $pos = $block * self::SMALL_BLOCK_SIZE; + $streamData .= substr($rootdata, $pos, self::SMALL_BLOCK_SIZE); + + $block = self::getInt4d($this->smallBlockChain, $block*4); + } + + return $streamData; + } else { + $numBlocks = $this->props[$stream]['size'] / self::BIG_BLOCK_SIZE; + if ($this->props[$stream]['size'] % self::BIG_BLOCK_SIZE != 0) { + ++$numBlocks; + } + + if ($numBlocks == 0) { + return ''; + } + + $block = $this->props[$stream]['startBlock']; + + while ($block != -2) { + $pos = ($block + 1) * self::BIG_BLOCK_SIZE; + $streamData .= substr($this->data, $pos, self::BIG_BLOCK_SIZE); + $block = self::getInt4d($this->bigBlockChain, $block*4); + } + + return $streamData; + } + } + + /** + * Read a standard stream (by joining sectors using information from SAT) + * + * @param int $bl Sector ID where the stream starts + * @return string Data for standard stream + */ + private function _readData($bl) + { + $block = $bl; + $data = ''; + + while ($block != -2) { + $pos = ($block + 1) * self::BIG_BLOCK_SIZE; + $data .= substr($this->data, $pos, self::BIG_BLOCK_SIZE); + $block = self::getInt4d($this->bigBlockChain, $block*4); + } + return $data; + } + + /** + * Read entries in the directory stream. + */ + private function readPropertySets() + { + $offset = 0; + + // loop through entires, each entry is 128 bytes + $entryLen = strlen($this->entry); + while ($offset < $entryLen) { + // entry data (128 bytes) + $d = substr($this->entry, $offset, self::PROPERTY_STORAGE_BLOCK_SIZE); + + // size in bytes of name + $nameSize = ord($d[self::SIZE_OF_NAME_POS]) | (ord($d[self::SIZE_OF_NAME_POS+1]) << 8); + + // type of entry + $type = ord($d[self::TYPE_POS]); + + // sectorID of first sector or short sector, if this entry refers to a stream (the case with workbook) + // sectorID of first sector of the short-stream container stream, if this entry is root entry + $startBlock = self::getInt4d($d, self::START_BLOCK_POS); + + $size = self::getInt4d($d, self::SIZE_POS); + + $name = str_replace("\x00", "", substr($d, 0, $nameSize)); + + $this->props[] = array( + 'name' => $name, + 'type' => $type, + 'startBlock' => $startBlock, + 'size' => $size + ); + + // tmp helper to simplify checks + $upName = strtoupper($name); + + // Workbook directory entry (BIFF5 uses Book, BIFF8 uses Workbook) + if (($upName === 'WORKBOOK') || ($upName === 'BOOK')) { + $this->wrkbook = count($this->props) - 1; + } elseif ($upName === 'ROOT ENTRY' || $upName === 'R') { + // Root entry + $this->rootentry = count($this->props) - 1; + } + + // Summary information + if ($name == chr(5) . 'SummaryInformation') { +// echo 'Summary Information<br />'; + $this->summaryInformation = count($this->props) - 1; + } + + // Additional Document Summary information + if ($name == chr(5) . 'DocumentSummaryInformation') { +// echo 'Document Summary Information<br />'; + $this->documentSummaryInformation = count($this->props) - 1; + } + + $offset += self::PROPERTY_STORAGE_BLOCK_SIZE; + } + } + + /** + * Read 4 bytes of data at specified position + * + * @param string $data + * @param int $pos + * @return int + */ + private static function getInt4d($data, $pos) + { + // FIX: represent numbers correctly on 64-bit system + // http://sourceforge.net/tracker/index.php?func=detail&aid=1487372&group_id=99160&atid=623334 + // Hacked by Andreas Rehm 2006 to ensure correct result of the <<24 block on 32 and 64bit systems + $_or_24 = ord($data[$pos + 3]); + if ($_or_24 >= 128) { + // negative number + $_ord_24 = -abs((256 - $_or_24) << 24); + } else { + $_ord_24 = ($_or_24 & 127) << 24; + } + return ord($data[$pos]) | (ord($data[$pos + 1]) << 8) | (ord($data[$pos + 2]) << 16) | $_ord_24; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/_notes/dwsync.xml new file mode 100644 index 0000000..8b541a1 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/_notes/dwsync.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="gnu-lgpl.txt" server="62.244.88.21/deciday/" local="131919461907897073" remote="131880384600000000" Dst="1" /> +<file name="readme.txt" server="62.244.88.21/deciday/" local="131919461908393046" remote="131880384600000000" Dst="1" /> +<file name="pclzip.lib.php" server="62.244.88.21/deciday/" local="131919461909654705" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt new file mode 100644 index 0000000..b1e3f5a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt @@ -0,0 +1,504 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + 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 + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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 + + 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". + + 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. + + 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".) + + "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. + + 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 +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. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + 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. + + 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. + + (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.) + +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. + +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. + +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. + + 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. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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.) + + 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. + + 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: + + 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.) + + 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. + + 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. + + 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. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + 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. + + 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: + + 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. + + 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. + + 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. + + 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. + + 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 +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 +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. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 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. + + 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 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. + + NO WARRANTY + + 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. + + 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. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + 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). + + 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. + + <one line to give the library's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + 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 library 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 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 + +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: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + <signature of Ty Coon>, 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php new file mode 100644 index 0000000..a5a9b0a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php @@ -0,0 +1,5173 @@ +<?php +// -------------------------------------------------------------------------------- +// PhpConcept Library - Zip Module 2.8.2 +// -------------------------------------------------------------------------------- +// License GNU/LGPL - Vincent Blavet - August 2009 +// http://www.phpconcept.net +// -------------------------------------------------------------------------------- +// +// Presentation : +// PclZip is a PHP library that manage ZIP archives. +// So far tests show that archives generated by PclZip are readable by +// WinZip application and other tools. +// +// Description : +// See readme.txt and http://www.phpconcept.net +// +// Warning : +// This library and the associated files are non commercial, non professional +// work. +// It should not have unexpected results. However if any damage is caused by +// this software the author can not be responsible. +// The use of this software is at the risk of the user. +// +// -------------------------------------------------------------------------------- +// $Id: pclzip.lib.php,v 1.60 2009/09/30 21:01:04 vblavet Exp $ +// -------------------------------------------------------------------------------- + +// ----- Constants +if (!defined('PCLZIP_READ_BLOCK_SIZE')) { + define('PCLZIP_READ_BLOCK_SIZE', 2048); +} + +// ----- File list separator +// In version 1.x of PclZip, the separator for file list is a space +// (which is not a very smart choice, specifically for windows paths !). +// A better separator should be a comma (,). This constant gives you the +// abilty to change that. +// However notice that changing this value, may have impact on existing +// scripts, using space separated filenames. +// Recommanded values for compatibility with older versions : +//define('PCLZIP_SEPARATOR', ' '); +// Recommanded values for smart separation of filenames. +if (!defined('PCLZIP_SEPARATOR')) { + define('PCLZIP_SEPARATOR', ','); +} + +// ----- Error configuration +// 0 : PclZip Class integrated error handling +// 1 : PclError external library error handling. By enabling this +// you must ensure that you have included PclError library. +// [2,...] : reserved for futur use +if (!defined('PCLZIP_ERROR_EXTERNAL')) { + define('PCLZIP_ERROR_EXTERNAL', 0); +} + +// ----- Optional static temporary directory +// By default temporary files are generated in the script current +// path. +// If defined : +// - MUST BE terminated by a '/'. +// - MUST be a valid, already created directory +// Samples : +// define('PCLZIP_TEMPORARY_DIR', '/temp/'); +// define('PCLZIP_TEMPORARY_DIR', 'C:/Temp/'); +if (!defined('PCLZIP_TEMPORARY_DIR')) { + define('PCLZIP_TEMPORARY_DIR', ''); +} + +// ----- Optional threshold ratio for use of temporary files +// Pclzip sense the size of the file to add/extract and decide to +// use or not temporary file. The algorythm is looking for +// memory_limit of PHP and apply a ratio. +// threshold = memory_limit * ratio. +// Recommended values are under 0.5. Default 0.47. +// Samples : +// define('PCLZIP_TEMPORARY_FILE_RATIO', 0.5); +if (!defined('PCLZIP_TEMPORARY_FILE_RATIO')) { + define('PCLZIP_TEMPORARY_FILE_RATIO', 0.47); +} + +// -------------------------------------------------------------------------------- +// ***** UNDER THIS LINE NOTHING NEEDS TO BE MODIFIED ***** +// -------------------------------------------------------------------------------- + +// ----- Global variables +$g_pclzip_version = "2.8.2"; + +// ----- Error codes +// -1 : Unable to open file in binary write mode +// -2 : Unable to open file in binary read mode +// -3 : Invalid parameters +// -4 : File does not exist +// -5 : Filename is too long (max. 255) +// -6 : Not a valid zip file +// -7 : Invalid extracted file size +// -8 : Unable to create directory +// -9 : Invalid archive extension +// -10 : Invalid archive format +// -11 : Unable to delete file (unlink) +// -12 : Unable to rename file (rename) +// -13 : Invalid header checksum +// -14 : Invalid archive size +define('PCLZIP_ERR_USER_ABORTED', 2); +define('PCLZIP_ERR_NO_ERROR', 0); +define('PCLZIP_ERR_WRITE_OPEN_FAIL', -1); +define('PCLZIP_ERR_READ_OPEN_FAIL', -2); +define('PCLZIP_ERR_INVALID_PARAMETER', -3); +define('PCLZIP_ERR_MISSING_FILE', -4); +define('PCLZIP_ERR_FILENAME_TOO_LONG', -5); +define('PCLZIP_ERR_INVALID_ZIP', -6); +define('PCLZIP_ERR_BAD_EXTRACTED_FILE', -7); +define('PCLZIP_ERR_DIR_CREATE_FAIL', -8); +define('PCLZIP_ERR_BAD_EXTENSION', -9); +define('PCLZIP_ERR_BAD_FORMAT', -10); +define('PCLZIP_ERR_DELETE_FILE_FAIL', -11); +define('PCLZIP_ERR_RENAME_FILE_FAIL', -12); +define('PCLZIP_ERR_BAD_CHECKSUM', -13); +define('PCLZIP_ERR_INVALID_ARCHIVE_ZIP', -14); +define('PCLZIP_ERR_MISSING_OPTION_VALUE', -15); +define('PCLZIP_ERR_INVALID_OPTION_VALUE', -16); +define('PCLZIP_ERR_ALREADY_A_DIRECTORY', -17); +define('PCLZIP_ERR_UNSUPPORTED_COMPRESSION', -18); +define('PCLZIP_ERR_UNSUPPORTED_ENCRYPTION', -19); +define('PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE', -20); +define('PCLZIP_ERR_DIRECTORY_RESTRICTION', -21); + +// ----- Options values +define('PCLZIP_OPT_PATH', 77001); +define('PCLZIP_OPT_ADD_PATH', 77002); +define('PCLZIP_OPT_REMOVE_PATH', 77003); +define('PCLZIP_OPT_REMOVE_ALL_PATH', 77004); +define('PCLZIP_OPT_SET_CHMOD', 77005); +define('PCLZIP_OPT_EXTRACT_AS_STRING', 77006); +define('PCLZIP_OPT_NO_COMPRESSION', 77007); +define('PCLZIP_OPT_BY_NAME', 77008); +define('PCLZIP_OPT_BY_INDEX', 77009); +define('PCLZIP_OPT_BY_EREG', 77010); +define('PCLZIP_OPT_BY_PREG', 77011); +define('PCLZIP_OPT_COMMENT', 77012); +define('PCLZIP_OPT_ADD_COMMENT', 77013); +define('PCLZIP_OPT_PREPEND_COMMENT', 77014); +define('PCLZIP_OPT_EXTRACT_IN_OUTPUT', 77015); +define('PCLZIP_OPT_REPLACE_NEWER', 77016); +define('PCLZIP_OPT_STOP_ON_ERROR', 77017); +// Having big trouble with crypt. Need to multiply 2 long int +// which is not correctly supported by PHP ... +//define('PCLZIP_OPT_CRYPT', 77018); +define('PCLZIP_OPT_EXTRACT_DIR_RESTRICTION', 77019); +define('PCLZIP_OPT_TEMP_FILE_THRESHOLD', 77020); +define('PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD', 77020); // alias +define('PCLZIP_OPT_TEMP_FILE_ON', 77021); +define('PCLZIP_OPT_ADD_TEMP_FILE_ON', 77021); // alias +define('PCLZIP_OPT_TEMP_FILE_OFF', 77022); +define('PCLZIP_OPT_ADD_TEMP_FILE_OFF', 77022); // alias + +// ----- File description attributes +define('PCLZIP_ATT_FILE_NAME', 79001); +define('PCLZIP_ATT_FILE_NEW_SHORT_NAME', 79002); +define('PCLZIP_ATT_FILE_NEW_FULL_NAME', 79003); +define('PCLZIP_ATT_FILE_MTIME', 79004); +define('PCLZIP_ATT_FILE_CONTENT', 79005); +define('PCLZIP_ATT_FILE_COMMENT', 79006); + +// ----- Call backs values +define('PCLZIP_CB_PRE_EXTRACT', 78001); +define('PCLZIP_CB_POST_EXTRACT', 78002); +define('PCLZIP_CB_PRE_ADD', 78003); +define('PCLZIP_CB_POST_ADD', 78004); +/* For futur use +define('PCLZIP_CB_PRE_LIST', 78005); +define('PCLZIP_CB_POST_LIST', 78006); +define('PCLZIP_CB_PRE_DELETE', 78007); +define('PCLZIP_CB_POST_DELETE', 78008); +*/ + +// -------------------------------------------------------------------------------- +// Class : PclZip +// Description : +// PclZip is the class that represent a Zip archive. +// The public methods allow the manipulation of the archive. +// Attributes : +// Attributes must not be accessed directly. +// Methods : +// PclZip() : Object creator +// create() : Creates the Zip archive +// listContent() : List the content of the Zip archive +// extract() : Extract the content of the archive +// properties() : List the properties of the archive +// -------------------------------------------------------------------------------- +class PclZip +{ + // ----- Filename of the zip file + public $zipname = ''; + + // ----- File descriptor of the zip file + public $zip_fd = 0; + + // ----- Internal error handling + public $error_code = 1; + public $error_string = ''; + + // ----- Current status of the magic_quotes_runtime + // This value store the php configuration for magic_quotes + // The class can then disable the magic_quotes and reset it after + public $magic_quotes_status; + + // -------------------------------------------------------------------------------- + // Function : PclZip() + // Description : + // Creates a PclZip object and set the name of the associated Zip archive + // filename. + // Note that no real action is taken, if the archive does not exist it is not + // created. Use create() for that. + // -------------------------------------------------------------------------------- + public function __construct($p_zipname) + { + + // ----- Tests the zlib + if (!function_exists('gzopen')) { + die('Abort '.basename(__FILE__).' : Missing zlib extensions'); + } + + // ----- Set the attributes + $this->zipname = $p_zipname; + $this->zip_fd = 0; + $this->magic_quotes_status = -1; + + // ----- Return + return; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : + // create($p_filelist, $p_add_dir="", $p_remove_dir="") + // create($p_filelist, $p_option, $p_option_value, ...) + // Description : + // This method supports two different synopsis. The first one is historical. + // This method creates a Zip Archive. The Zip file is created in the + // filesystem. The files and directories indicated in $p_filelist + // are added in the archive. See the parameters description for the + // supported format of $p_filelist. + // When a directory is in the list, the directory and its content is added + // in the archive. + // In this synopsis, the function takes an optional variable list of + // options. See bellow the supported options. + // Parameters : + // $p_filelist : An array containing file or directory names, or + // a string containing one filename or one directory name, or + // a string containing a list of filenames and/or directory + // names separated by spaces. + // $p_add_dir : A path to add before the real path of the archived file, + // in order to have it memorized in the archive. + // $p_remove_dir : A path to remove from the real path of the file to archive, + // in order to have a shorter path memorized in the archive. + // When $p_add_dir and $p_remove_dir are set, $p_remove_dir + // is removed first, before $p_add_dir is added. + // Options : + // PCLZIP_OPT_ADD_PATH : + // PCLZIP_OPT_REMOVE_PATH : + // PCLZIP_OPT_REMOVE_ALL_PATH : + // PCLZIP_OPT_COMMENT : + // PCLZIP_CB_PRE_ADD : + // PCLZIP_CB_POST_ADD : + // Return Values : + // 0 on failure, + // The list of the added files, with a status of the add action. + // (see PclZip::listContent() for list entry format) + // -------------------------------------------------------------------------------- + public function create($p_filelist) + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Set default values + $v_options = array(); + $v_options[PCLZIP_OPT_NO_COMPRESSION] = false; + + // ----- Look for variable options arguments + $v_size = func_num_args(); + + // ----- Look for arguments + if ($v_size > 1) { + // ----- Get the arguments + $v_arg_list = func_get_args(); + + // ----- Remove from the options list the first argument + array_shift($v_arg_list); + $v_size--; + + // ----- Look for first arg + if ((is_integer($v_arg_list[0])) && ($v_arg_list[0] > 77000)) { + // ----- Parse the options + $v_result = $this->privParseOptions($v_arg_list, $v_size, $v_options, array ( + PCLZIP_OPT_REMOVE_PATH => 'optional', + PCLZIP_OPT_REMOVE_ALL_PATH => 'optional', + PCLZIP_OPT_ADD_PATH => 'optional', + PCLZIP_CB_PRE_ADD => 'optional', + PCLZIP_CB_POST_ADD => 'optional', + PCLZIP_OPT_NO_COMPRESSION => 'optional', + PCLZIP_OPT_COMMENT => 'optional', + PCLZIP_OPT_TEMP_FILE_THRESHOLD => 'optional', + PCLZIP_OPT_TEMP_FILE_ON => 'optional', + PCLZIP_OPT_TEMP_FILE_OFF => 'optional' + //, PCLZIP_OPT_CRYPT => 'optional' + )); + if ($v_result != 1) { + return 0; + } + } else { + // ----- Look for 2 args + // Here we need to support the first historic synopsis of the + // method. + // ----- Get the first argument + $v_options[PCLZIP_OPT_ADD_PATH] = $v_arg_list[0]; + + // ----- Look for the optional second argument + if ($v_size == 2) { + $v_options[PCLZIP_OPT_REMOVE_PATH] = $v_arg_list[1]; + } elseif ($v_size > 2) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid number / type of arguments"); + return 0; + } + } + } + + // ----- Look for default option values + $this->privOptionDefaultThreshold($v_options); + + // ----- Init + $v_string_list = array(); + $v_att_list = array(); + $v_filedescr_list = array(); + $p_result_list = array(); + + // ----- Look if the $p_filelist is really an array + if (is_array($p_filelist)) { + // ----- Look if the first element is also an array + // This will mean that this is a file description entry + if (isset($p_filelist[0]) && is_array($p_filelist[0])) { + $v_att_list = $p_filelist; + } else { + // ----- The list is a list of string names + $v_string_list = $p_filelist; + } + } elseif (is_string($p_filelist)) { + // ----- Look if the $p_filelist is a string + // ----- Create a list from the string + $v_string_list = explode(PCLZIP_SEPARATOR, $p_filelist); + } else { + // ----- Invalid variable type for $p_filelist + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid variable type p_filelist"); + return 0; + } + + // ----- Reformat the string list + if (sizeof($v_string_list) != 0) { + foreach ($v_string_list as $v_string) { + if ($v_string != '') { + $v_att_list[][PCLZIP_ATT_FILE_NAME] = $v_string; + } else { + } + } + } + + // ----- For each file in the list check the attributes + $v_supported_attributes = array( + PCLZIP_ATT_FILE_NAME => 'mandatory', + PCLZIP_ATT_FILE_NEW_SHORT_NAME => 'optional', + PCLZIP_ATT_FILE_NEW_FULL_NAME => 'optional', + PCLZIP_ATT_FILE_MTIME => 'optional', + PCLZIP_ATT_FILE_CONTENT => 'optional', + PCLZIP_ATT_FILE_COMMENT => 'optional' + ); + foreach ($v_att_list as $v_entry) { + $v_result = $this->privFileDescrParseAtt($v_entry, $v_filedescr_list[], $v_options, $v_supported_attributes); + if ($v_result != 1) { + return 0; + } + } + + // ----- Expand the filelist (expand directories) + $v_result = $this->privFileDescrExpand($v_filedescr_list, $v_options); + if ($v_result != 1) { + return 0; + } + + // ----- Call the create fct + $v_result = $this->privCreate($v_filedescr_list, $p_result_list, $v_options); + if ($v_result != 1) { + return 0; + } + + // ----- Return + return $p_result_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : + // add($p_filelist, $p_add_dir="", $p_remove_dir="") + // add($p_filelist, $p_option, $p_option_value, ...) + // Description : + // This method supports two synopsis. The first one is historical. + // This methods add the list of files in an existing archive. + // If a file with the same name already exists, it is added at the end of the + // archive, the first one is still present. + // If the archive does not exist, it is created. + // Parameters : + // $p_filelist : An array containing file or directory names, or + // a string containing one filename or one directory name, or + // a string containing a list of filenames and/or directory + // names separated by spaces. + // $p_add_dir : A path to add before the real path of the archived file, + // in order to have it memorized in the archive. + // $p_remove_dir : A path to remove from the real path of the file to archive, + // in order to have a shorter path memorized in the archive. + // When $p_add_dir and $p_remove_dir are set, $p_remove_dir + // is removed first, before $p_add_dir is added. + // Options : + // PCLZIP_OPT_ADD_PATH : + // PCLZIP_OPT_REMOVE_PATH : + // PCLZIP_OPT_REMOVE_ALL_PATH : + // PCLZIP_OPT_COMMENT : + // PCLZIP_OPT_ADD_COMMENT : + // PCLZIP_OPT_PREPEND_COMMENT : + // PCLZIP_CB_PRE_ADD : + // PCLZIP_CB_POST_ADD : + // Return Values : + // 0 on failure, + // The list of the added files, with a status of the add action. + // (see PclZip::listContent() for list entry format) + // -------------------------------------------------------------------------------- + public function add($p_filelist) + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Set default values + $v_options = array(); + $v_options[PCLZIP_OPT_NO_COMPRESSION] = false; + + // ----- Look for variable options arguments + $v_size = func_num_args(); + + // ----- Look for arguments + if ($v_size > 1) { + // ----- Get the arguments + $v_arg_list = func_get_args(); + + // ----- Remove form the options list the first argument + array_shift($v_arg_list); + $v_size--; + + // ----- Look for first arg + if ((is_integer($v_arg_list[0])) && ($v_arg_list[0] > 77000)) { + // ----- Parse the options + $v_result = $this->privParseOptions($v_arg_list, $v_size, $v_options, array ( + PCLZIP_OPT_REMOVE_PATH => 'optional', + PCLZIP_OPT_REMOVE_ALL_PATH => 'optional', + PCLZIP_OPT_ADD_PATH => 'optional', + PCLZIP_CB_PRE_ADD => 'optional', + PCLZIP_CB_POST_ADD => 'optional', + PCLZIP_OPT_NO_COMPRESSION => 'optional', + PCLZIP_OPT_COMMENT => 'optional', + PCLZIP_OPT_ADD_COMMENT => 'optional', + PCLZIP_OPT_PREPEND_COMMENT => 'optional', + PCLZIP_OPT_TEMP_FILE_THRESHOLD => 'optional', + PCLZIP_OPT_TEMP_FILE_ON => 'optional', + PCLZIP_OPT_TEMP_FILE_OFF => 'optional' + //, PCLZIP_OPT_CRYPT => 'optional' + )); + if ($v_result != 1) { + return 0; + } + } else { + // ----- Look for 2 args + // Here we need to support the first historic synopsis of the + // method. + // ----- Get the first argument + $v_options[PCLZIP_OPT_ADD_PATH] = $v_add_path = $v_arg_list[0]; + + // ----- Look for the optional second argument + if ($v_size == 2) { + $v_options[PCLZIP_OPT_REMOVE_PATH] = $v_arg_list[1]; + } elseif ($v_size > 2) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid number / type of arguments"); + + // ----- Return + return 0; + } + } + } + + // ----- Look for default option values + $this->privOptionDefaultThreshold($v_options); + + // ----- Init + $v_string_list = array(); + $v_att_list = array(); + $v_filedescr_list = array(); + $p_result_list = array(); + + // ----- Look if the $p_filelist is really an array + if (is_array($p_filelist)) { + // ----- Look if the first element is also an array + // This will mean that this is a file description entry + if (isset($p_filelist[0]) && is_array($p_filelist[0])) { + $v_att_list = $p_filelist; + } else { + // ----- The list is a list of string names + $v_string_list = $p_filelist; + } + } elseif (is_string($p_filelist)) { + // ----- Look if the $p_filelist is a string + // ----- Create a list from the string + $v_string_list = explode(PCLZIP_SEPARATOR, $p_filelist); + } else { + // ----- Invalid variable type for $p_filelist + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid variable type '".gettype($p_filelist)."' for p_filelist"); + return 0; + } + + // ----- Reformat the string list + if (sizeof($v_string_list) != 0) { + foreach ($v_string_list as $v_string) { + $v_att_list[][PCLZIP_ATT_FILE_NAME] = $v_string; + } + } + + // ----- For each file in the list check the attributes + $v_supported_attributes = array( + PCLZIP_ATT_FILE_NAME => 'mandatory', + PCLZIP_ATT_FILE_NEW_SHORT_NAME => 'optional', + PCLZIP_ATT_FILE_NEW_FULL_NAME => 'optional', + PCLZIP_ATT_FILE_MTIME => 'optional', + PCLZIP_ATT_FILE_CONTENT => 'optional', + PCLZIP_ATT_FILE_COMMENT => 'optional', + ); + foreach ($v_att_list as $v_entry) { + $v_result = $this->privFileDescrParseAtt($v_entry, $v_filedescr_list[], $v_options, $v_supported_attributes); + if ($v_result != 1) { + return 0; + } + } + + // ----- Expand the filelist (expand directories) + $v_result = $this->privFileDescrExpand($v_filedescr_list, $v_options); + if ($v_result != 1) { + return 0; + } + + // ----- Call the create fct + $v_result = $this->privAdd($v_filedescr_list, $p_result_list, $v_options); + if ($v_result != 1) { + return 0; + } + + // ----- Return + return $p_result_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : listContent() + // Description : + // This public method, gives the list of the files and directories, with their + // properties. + // The properties of each entries in the list are (used also in other functions) : + // filename : Name of the file. For a create or add action it is the filename + // given by the user. For an extract function it is the filename + // of the extracted file. + // stored_filename : Name of the file / directory stored in the archive. + // size : Size of the stored file. + // compressed_size : Size of the file's data compressed in the archive + // (without the headers overhead) + // mtime : Last known modification date of the file (UNIX timestamp) + // comment : Comment associated with the file + // folder : true | false + // index : index of the file in the archive + // status : status of the action (depending of the action) : + // Values are : + // ok : OK ! + // filtered : the file / dir is not extracted (filtered by user) + // already_a_directory : the file can not be extracted because a + // directory with the same name already exists + // write_protected : the file can not be extracted because a file + // with the same name already exists and is + // write protected + // newer_exist : the file was not extracted because a newer file exists + // path_creation_fail : the file is not extracted because the folder + // does not exist and can not be created + // write_error : the file was not extracted because there was a + // error while writing the file + // read_error : the file was not extracted because there was a error + // while reading the file + // invalid_header : the file was not extracted because of an archive + // format error (bad file header) + // Note that each time a method can continue operating when there + // is an action error on a file, the error is only logged in the file status. + // Return Values : + // 0 on an unrecoverable failure, + // The list of the files in the archive. + // -------------------------------------------------------------------------------- + public function listContent() + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + return(0); + } + + // ----- Call the extracting fct + $p_list = array(); + if (($v_result = $this->privList($p_list)) != 1) { + unset($p_list); + return(0); + } + + // ----- Return + return $p_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : + // extract($p_path="./", $p_remove_path="") + // extract([$p_option, $p_option_value, ...]) + // Description : + // This method supports two synopsis. The first one is historical. + // This method extract all the files / directories from the archive to the + // folder indicated in $p_path. + // If you want to ignore the 'root' part of path of the memorized files + // you can indicate this in the optional $p_remove_path parameter. + // By default, if a newer file with the same name already exists, the + // file is not extracted. + // + // If both PCLZIP_OPT_PATH and PCLZIP_OPT_ADD_PATH aoptions + // are used, the path indicated in PCLZIP_OPT_ADD_PATH is append + // at the end of the path value of PCLZIP_OPT_PATH. + // Parameters : + // $p_path : Path where the files and directories are to be extracted + // $p_remove_path : First part ('root' part) of the memorized path + // (if any similar) to remove while extracting. + // Options : + // PCLZIP_OPT_PATH : + // PCLZIP_OPT_ADD_PATH : + // PCLZIP_OPT_REMOVE_PATH : + // PCLZIP_OPT_REMOVE_ALL_PATH : + // PCLZIP_CB_PRE_EXTRACT : + // PCLZIP_CB_POST_EXTRACT : + // Return Values : + // 0 or a negative value on failure, + // The list of the extracted files, with a status of the action. + // (see PclZip::listContent() for list entry format) + // -------------------------------------------------------------------------------- + public function extract() + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + return(0); + } + + // ----- Set default values + $v_options = array(); + // $v_path = "./"; + $v_path = ''; + $v_remove_path = ""; + $v_remove_all_path = false; + + // ----- Look for variable options arguments + $v_size = func_num_args(); + + // ----- Default values for option + $v_options[PCLZIP_OPT_EXTRACT_AS_STRING] = false; + + // ----- Look for arguments + if ($v_size > 0) { + // ----- Get the arguments + $v_arg_list = func_get_args(); + + // ----- Look for first arg + if ((is_integer($v_arg_list[0])) && ($v_arg_list[0] > 77000)) { + // ----- Parse the options + $v_result = $this->privParseOptions($v_arg_list, $v_size, $v_options, array ( + PCLZIP_OPT_PATH => 'optional', + PCLZIP_OPT_REMOVE_PATH => 'optional', + PCLZIP_OPT_REMOVE_ALL_PATH => 'optional', + PCLZIP_OPT_ADD_PATH => 'optional', + PCLZIP_CB_PRE_EXTRACT => 'optional', + PCLZIP_CB_POST_EXTRACT => 'optional', + PCLZIP_OPT_SET_CHMOD => 'optional', + PCLZIP_OPT_BY_NAME => 'optional', + PCLZIP_OPT_BY_EREG => 'optional', + PCLZIP_OPT_BY_PREG => 'optional', + PCLZIP_OPT_BY_INDEX => 'optional', + PCLZIP_OPT_EXTRACT_AS_STRING => 'optional', + PCLZIP_OPT_EXTRACT_IN_OUTPUT => 'optional', + PCLZIP_OPT_REPLACE_NEWER => 'optional', + PCLZIP_OPT_STOP_ON_ERROR => 'optional', + PCLZIP_OPT_EXTRACT_DIR_RESTRICTION => 'optional', + PCLZIP_OPT_TEMP_FILE_THRESHOLD => 'optional', + PCLZIP_OPT_TEMP_FILE_ON => 'optional', + PCLZIP_OPT_TEMP_FILE_OFF => 'optional' + )); + if ($v_result != 1) { + return 0; + } + + // ----- Set the arguments + if (isset($v_options[PCLZIP_OPT_PATH])) { + $v_path = $v_options[PCLZIP_OPT_PATH]; + } + if (isset($v_options[PCLZIP_OPT_REMOVE_PATH])) { + $v_remove_path = $v_options[PCLZIP_OPT_REMOVE_PATH]; + } + if (isset($v_options[PCLZIP_OPT_REMOVE_ALL_PATH])) { + $v_remove_all_path = $v_options[PCLZIP_OPT_REMOVE_ALL_PATH]; + } + if (isset($v_options[PCLZIP_OPT_ADD_PATH])) { + // ----- Check for '/' in last path char + if ((strlen($v_path) > 0) && (substr($v_path, -1) != '/')) { + $v_path .= '/'; + } + $v_path .= $v_options[PCLZIP_OPT_ADD_PATH]; + } + } else { + // ----- Look for 2 args + // Here we need to support the first historic synopsis of the + // method. + // ----- Get the first argument + $v_path = $v_arg_list[0]; + + // ----- Look for the optional second argument + if ($v_size == 2) { + $v_remove_path = $v_arg_list[1]; + } elseif ($v_size > 2) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid number / type of arguments"); + + // ----- Return + return 0; + } + } + } + + // ----- Look for default option values + $this->privOptionDefaultThreshold($v_options); + + // ----- Trace + + // ----- Call the extracting fct + $p_list = array(); + $v_result = $this->privExtractByRule($p_list, $v_path, $v_remove_path, $v_remove_all_path, $v_options); + if ($v_result < 1) { + unset($p_list); + return(0); + } + + // ----- Return + return $p_list; + } + // -------------------------------------------------------------------------------- + + + // -------------------------------------------------------------------------------- + // Function : + // extractByIndex($p_index, $p_path="./", $p_remove_path="") + // extractByIndex($p_index, [$p_option, $p_option_value, ...]) + // Description : + // This method supports two synopsis. The first one is historical. + // This method is doing a partial extract of the archive. + // The extracted files or folders are identified by their index in the + // archive (from 0 to n). + // Note that if the index identify a folder, only the folder entry is + // extracted, not all the files included in the archive. + // Parameters : + // $p_index : A single index (integer) or a string of indexes of files to + // extract. The form of the string is "0,4-6,8-12" with only numbers + // and '-' for range or ',' to separate ranges. No spaces or ';' + // are allowed. + // $p_path : Path where the files and directories are to be extracted + // $p_remove_path : First part ('root' part) of the memorized path + // (if any similar) to remove while extracting. + // Options : + // PCLZIP_OPT_PATH : + // PCLZIP_OPT_ADD_PATH : + // PCLZIP_OPT_REMOVE_PATH : + // PCLZIP_OPT_REMOVE_ALL_PATH : + // PCLZIP_OPT_EXTRACT_AS_STRING : The files are extracted as strings and + // not as files. + // The resulting content is in a new field 'content' in the file + // structure. + // This option must be used alone (any other options are ignored). + // PCLZIP_CB_PRE_EXTRACT : + // PCLZIP_CB_POST_EXTRACT : + // Return Values : + // 0 on failure, + // The list of the extracted files, with a status of the action. + // (see PclZip::listContent() for list entry format) + // -------------------------------------------------------------------------------- + //function extractByIndex($p_index, options...) + public function extractByIndex($p_index) + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + return(0); + } + + // ----- Set default values + $v_options = array(); + // $v_path = "./"; + $v_path = ''; + $v_remove_path = ""; + $v_remove_all_path = false; + + // ----- Look for variable options arguments + $v_size = func_num_args(); + + // ----- Default values for option + $v_options[PCLZIP_OPT_EXTRACT_AS_STRING] = false; + + // ----- Look for arguments + if ($v_size > 1) { + // ----- Get the arguments + $v_arg_list = func_get_args(); + + // ----- Remove form the options list the first argument + array_shift($v_arg_list); + $v_size--; + + // ----- Look for first arg + if ((is_integer($v_arg_list[0])) && ($v_arg_list[0] > 77000)) { + // ----- Parse the options + $v_result = $this->privParseOptions($v_arg_list, $v_size, $v_options, array( + PCLZIP_OPT_PATH => 'optional', + PCLZIP_OPT_REMOVE_PATH => 'optional', + PCLZIP_OPT_REMOVE_ALL_PATH => 'optional', + PCLZIP_OPT_EXTRACT_AS_STRING => 'optional', + PCLZIP_OPT_ADD_PATH => 'optional', + PCLZIP_CB_PRE_EXTRACT => 'optional', + PCLZIP_CB_POST_EXTRACT => 'optional', + PCLZIP_OPT_SET_CHMOD => 'optional', + PCLZIP_OPT_REPLACE_NEWER => 'optional', + PCLZIP_OPT_STOP_ON_ERROR => 'optional', + PCLZIP_OPT_EXTRACT_DIR_RESTRICTION => 'optional', + PCLZIP_OPT_TEMP_FILE_THRESHOLD => 'optional', + PCLZIP_OPT_TEMP_FILE_ON => 'optional', + PCLZIP_OPT_TEMP_FILE_OFF => 'optional' + )); + if ($v_result != 1) { + return 0; + } + + // ----- Set the arguments + if (isset($v_options[PCLZIP_OPT_PATH])) { + $v_path = $v_options[PCLZIP_OPT_PATH]; + } + if (isset($v_options[PCLZIP_OPT_REMOVE_PATH])) { + $v_remove_path = $v_options[PCLZIP_OPT_REMOVE_PATH]; + } + if (isset($v_options[PCLZIP_OPT_REMOVE_ALL_PATH])) { + $v_remove_all_path = $v_options[PCLZIP_OPT_REMOVE_ALL_PATH]; + } + if (isset($v_options[PCLZIP_OPT_ADD_PATH])) { + // ----- Check for '/' in last path char + if ((strlen($v_path) > 0) && (substr($v_path, -1) != '/')) { + $v_path .= '/'; + } + $v_path .= $v_options[PCLZIP_OPT_ADD_PATH]; + } + if (!isset($v_options[PCLZIP_OPT_EXTRACT_AS_STRING])) { + $v_options[PCLZIP_OPT_EXTRACT_AS_STRING] = false; + } else { + } + } else { + // ----- Look for 2 args + // Here we need to support the first historic synopsis of the + // method. + + // ----- Get the first argument + $v_path = $v_arg_list[0]; + + // ----- Look for the optional second argument + if ($v_size == 2) { + $v_remove_path = $v_arg_list[1]; + } elseif ($v_size > 2) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid number / type of arguments"); + + // ----- Return + return 0; + } + } + } + + // ----- Trace + + // ----- Trick + // Here I want to reuse extractByRule(), so I need to parse the $p_index + // with privParseOptions() + $v_arg_trick = array (PCLZIP_OPT_BY_INDEX, $p_index); + $v_options_trick = array(); + $v_result = $this->privParseOptions($v_arg_trick, sizeof($v_arg_trick), $v_options_trick, array (PCLZIP_OPT_BY_INDEX => 'optional')); + if ($v_result != 1) { + return 0; + } + $v_options[PCLZIP_OPT_BY_INDEX] = $v_options_trick[PCLZIP_OPT_BY_INDEX]; + + // ----- Look for default option values + $this->privOptionDefaultThreshold($v_options); + + // ----- Call the extracting fct + if (($v_result = $this->privExtractByRule($p_list, $v_path, $v_remove_path, $v_remove_all_path, $v_options)) < 1) { + return(0); + } + + // ----- Return + return $p_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : + // delete([$p_option, $p_option_value, ...]) + // Description : + // This method removes files from the archive. + // If no parameters are given, then all the archive is emptied. + // Parameters : + // None or optional arguments. + // Options : + // PCLZIP_OPT_BY_INDEX : + // PCLZIP_OPT_BY_NAME : + // PCLZIP_OPT_BY_EREG : + // PCLZIP_OPT_BY_PREG : + // Return Values : + // 0 on failure, + // The list of the files which are still present in the archive. + // (see PclZip::listContent() for list entry format) + // -------------------------------------------------------------------------------- + public function delete() + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + return(0); + } + + // ----- Set default values + $v_options = array(); + + // ----- Look for variable options arguments + $v_size = func_num_args(); + + // ----- Look for arguments + if ($v_size > 0) { + // ----- Get the arguments + $v_arg_list = func_get_args(); + + // ----- Parse the options + $v_result = $this->privParseOptions($v_arg_list, $v_size, $v_options, array ( + PCLZIP_OPT_BY_NAME => 'optional', + PCLZIP_OPT_BY_EREG => 'optional', + PCLZIP_OPT_BY_PREG => 'optional', + PCLZIP_OPT_BY_INDEX => 'optional' + )); + if ($v_result != 1) { + return 0; + } + } + + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Call the delete fct + $v_list = array(); + if (($v_result = $this->privDeleteByRule($v_list, $v_options)) != 1) { + $this->privSwapBackMagicQuotes(); + unset($v_list); + return(0); + } + + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : deleteByIndex() + // Description : + // ***** Deprecated ***** + // delete(PCLZIP_OPT_BY_INDEX, $p_index) should be prefered. + // -------------------------------------------------------------------------------- + public function deleteByIndex($p_index) + { + + $p_list = $this->delete(PCLZIP_OPT_BY_INDEX, $p_index); + + // ----- Return + return $p_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : properties() + // Description : + // This method gives the properties of the archive. + // The properties are : + // nb : Number of files in the archive + // comment : Comment associated with the archive file + // status : not_exist, ok + // Parameters : + // None + // Return Values : + // 0 on failure, + // An array with the archive properties. + // -------------------------------------------------------------------------------- + public function properties() + { + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + $this->privSwapBackMagicQuotes(); + return(0); + } + + // ----- Default properties + $v_prop = array(); + $v_prop['comment'] = ''; + $v_prop['nb'] = 0; + $v_prop['status'] = 'not_exist'; + + // ----- Look if file exists + if (@is_file($this->zipname)) { + // ----- Open the zip file + if (($this->zip_fd = @fopen($this->zipname, 'rb')) == 0) { + $this->privSwapBackMagicQuotes(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open archive \''.$this->zipname.'\' in binary read mode'); + + // ----- Return + return 0; + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) { + $this->privSwapBackMagicQuotes(); + return 0; + } + + // ----- Close the zip file + $this->privCloseFd(); + + // ----- Set the user attributes + $v_prop['comment'] = $v_central_dir['comment']; + $v_prop['nb'] = $v_central_dir['entries']; + $v_prop['status'] = 'ok'; + } + + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_prop; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : duplicate() + // Description : + // This method creates an archive by copying the content of an other one. If + // the archive already exist, it is replaced by the new one without any warning. + // Parameters : + // $p_archive : The filename of a valid archive, or + // a valid PclZip object. + // Return Values : + // 1 on success. + // 0 or a negative value on error (error code). + // -------------------------------------------------------------------------------- + public function duplicate($p_archive) + { + $v_result = 1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Look if the $p_archive is a PclZip object + if ((is_object($p_archive)) && (get_class($p_archive) == 'pclzip')) { + // ----- Duplicate the archive + $v_result = $this->privDuplicate($p_archive->zipname); + } elseif (is_string($p_archive)) { + // ----- Look if the $p_archive is a string (so a filename) + // ----- Check that $p_archive is a valid zip file + // TBC : Should also check the archive format + if (!is_file($p_archive)) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_FILE, "No file with filename '".$p_archive."'"); + $v_result = PCLZIP_ERR_MISSING_FILE; + } else { + // ----- Duplicate the archive + $v_result = $this->privDuplicate($p_archive); + } + } else { + // ----- Invalid variable + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid variable type p_archive_to_add"); + $v_result = PCLZIP_ERR_INVALID_PARAMETER; + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : merge() + // Description : + // This method merge the $p_archive_to_add archive at the end of the current + // one ($this). + // If the archive ($this) does not exist, the merge becomes a duplicate. + // If the $p_archive_to_add archive does not exist, the merge is a success. + // Parameters : + // $p_archive_to_add : It can be directly the filename of a valid zip archive, + // or a PclZip object archive. + // Return Values : + // 1 on success, + // 0 or negative values on error (see below). + // -------------------------------------------------------------------------------- + public function merge($p_archive_to_add) + { + $v_result = 1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + return(0); + } + + // ----- Look if the $p_archive_to_add is a PclZip object + if ((is_object($p_archive_to_add)) && (get_class($p_archive_to_add) == 'pclzip')) { + // ----- Merge the archive + $v_result = $this->privMerge($p_archive_to_add); + } elseif (is_string($p_archive_to_add)) { + // ----- Look if the $p_archive_to_add is a string (so a filename) + // ----- Create a temporary archive + $v_object_archive = new PclZip($p_archive_to_add); + + // ----- Merge the archive + $v_result = $this->privMerge($v_object_archive); + } else { + // ----- Invalid variable + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid variable type p_archive_to_add"); + $v_result = PCLZIP_ERR_INVALID_PARAMETER; + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + + + // -------------------------------------------------------------------------------- + // Function : errorCode() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + public function errorCode() + { + if (PCLZIP_ERROR_EXTERNAL == 1) { + return(PclErrorCode()); + } else { + return($this->error_code); + } + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : errorName() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + public function errorName($p_with_code = false) + { + $v_name = array( + PCLZIP_ERR_NO_ERROR => 'PCLZIP_ERR_NO_ERROR', + PCLZIP_ERR_WRITE_OPEN_FAIL => 'PCLZIP_ERR_WRITE_OPEN_FAIL', + PCLZIP_ERR_READ_OPEN_FAIL => 'PCLZIP_ERR_READ_OPEN_FAIL', + PCLZIP_ERR_INVALID_PARAMETER => 'PCLZIP_ERR_INVALID_PARAMETER', + PCLZIP_ERR_MISSING_FILE => 'PCLZIP_ERR_MISSING_FILE', + PCLZIP_ERR_FILENAME_TOO_LONG => 'PCLZIP_ERR_FILENAME_TOO_LONG', + PCLZIP_ERR_INVALID_ZIP => 'PCLZIP_ERR_INVALID_ZIP', + PCLZIP_ERR_BAD_EXTRACTED_FILE => 'PCLZIP_ERR_BAD_EXTRACTED_FILE', + PCLZIP_ERR_DIR_CREATE_FAIL => 'PCLZIP_ERR_DIR_CREATE_FAIL', + PCLZIP_ERR_BAD_EXTENSION => 'PCLZIP_ERR_BAD_EXTENSION', + PCLZIP_ERR_BAD_FORMAT => 'PCLZIP_ERR_BAD_FORMAT', + PCLZIP_ERR_DELETE_FILE_FAIL => 'PCLZIP_ERR_DELETE_FILE_FAIL', + PCLZIP_ERR_RENAME_FILE_FAIL => 'PCLZIP_ERR_RENAME_FILE_FAIL', + PCLZIP_ERR_BAD_CHECKSUM => 'PCLZIP_ERR_BAD_CHECKSUM', + PCLZIP_ERR_INVALID_ARCHIVE_ZIP => 'PCLZIP_ERR_INVALID_ARCHIVE_ZIP', + PCLZIP_ERR_MISSING_OPTION_VALUE => 'PCLZIP_ERR_MISSING_OPTION_VALUE', + PCLZIP_ERR_INVALID_OPTION_VALUE => 'PCLZIP_ERR_INVALID_OPTION_VALUE', + PCLZIP_ERR_UNSUPPORTED_COMPRESSION => 'PCLZIP_ERR_UNSUPPORTED_COMPRESSION', + PCLZIP_ERR_UNSUPPORTED_ENCRYPTION => 'PCLZIP_ERR_UNSUPPORTED_ENCRYPTION', + PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE => 'PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE', + PCLZIP_ERR_DIRECTORY_RESTRICTION => 'PCLZIP_ERR_DIRECTORY_RESTRICTION', + ); + + if (isset($v_name[$this->error_code])) { + $v_value = $v_name[$this->error_code]; + } else { + $v_value = 'NoName'; + } + + if ($p_with_code) { + return($v_value.' ('.$this->error_code.')'); + } else { + return($v_value); + } + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : errorInfo() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + public function errorInfo($p_full = false) + { + if (PCLZIP_ERROR_EXTERNAL == 1) { + return(PclErrorString()); + } else { + if ($p_full) { + return($this->errorName(true)." : ".$this->error_string); + } else { + return($this->error_string." [code ".$this->error_code."]"); + } + } + } + // -------------------------------------------------------------------------------- + + + // -------------------------------------------------------------------------------- + // ***** UNDER THIS LINE ARE DEFINED PRIVATE INTERNAL FUNCTIONS ***** + // ***** ***** + // ***** THESES FUNCTIONS MUST NOT BE USED DIRECTLY ***** + // -------------------------------------------------------------------------------- + + + + // -------------------------------------------------------------------------------- + // Function : privCheckFormat() + // Description : + // This method check that the archive exists and is a valid zip archive. + // Several level of check exists. (futur) + // Parameters : + // $p_level : Level of check. Default 0. + // 0 : Check the first bytes (magic codes) (default value)) + // 1 : 0 + Check the central directory (futur) + // 2 : 1 + Check each file header (futur) + // Return Values : + // true on success, + // false on error, the error code is set. + // -------------------------------------------------------------------------------- + public function privCheckFormat($p_level = 0) + { + $v_result = true; + + // ----- Reset the file system cache + clearstatcache(); + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Look if the file exits + if (!is_file($this->zipname)) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_FILE, "Missing archive file '".$this->zipname."'"); + return(false); + } + + // ----- Check that the file is readeable + if (!is_readable($this->zipname)) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, "Unable to read archive '".$this->zipname."'"); + return(false); + } + + // ----- Check the magic code + // TBC + + // ----- Check the central header + // TBC + + // ----- Check each file header + // TBC + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privParseOptions() + // Description : + // This internal methods reads the variable list of arguments ($p_options_list, + // $p_size) and generate an array with the options and values ($v_result_list). + // $v_requested_options contains the options that can be present and those that + // must be present. + // $v_requested_options is an array, with the option value as key, and 'optional', + // or 'mandatory' as value. + // Parameters : + // See above. + // Return Values : + // 1 on success. + // 0 on failure. + // -------------------------------------------------------------------------------- + public function privParseOptions(&$p_options_list, $p_size, &$v_result_list, $v_requested_options = false) + { + $v_result=1; + + // ----- Read the options + $i=0; + while ($i<$p_size) { + // ----- Check if the option is supported + if (!isset($v_requested_options[$p_options_list[$i]])) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid optional parameter '".$p_options_list[$i]."' for this method"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Look for next option + switch ($p_options_list[$i]) { + // ----- Look for options that request a path value + case PCLZIP_OPT_PATH: + case PCLZIP_OPT_REMOVE_PATH: + case PCLZIP_OPT_ADD_PATH: + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + $v_result_list[$p_options_list[$i]] = PclZipUtilTranslateWinPath($p_options_list[$i+1], false); + $i++; + break; + + case PCLZIP_OPT_TEMP_FILE_THRESHOLD: + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + return PclZip::errorCode(); + } + + // ----- Check for incompatible options + if (isset($v_result_list[PCLZIP_OPT_TEMP_FILE_OFF])) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Option '".PclZipUtilOptionText($p_options_list[$i])."' can not be used with option 'PCLZIP_OPT_TEMP_FILE_OFF'"); + return PclZip::errorCode(); + } + + // ----- Check the value + $v_value = $p_options_list[$i+1]; + if ((!is_integer($v_value)) || ($v_value<0)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Integer expected for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + return PclZip::errorCode(); + } + + // ----- Get the value (and convert it in bytes) + $v_result_list[$p_options_list[$i]] = $v_value*1048576; + $i++; + break; + + case PCLZIP_OPT_TEMP_FILE_ON: + // ----- Check for incompatible options + if (isset($v_result_list[PCLZIP_OPT_TEMP_FILE_OFF])) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Option '".PclZipUtilOptionText($p_options_list[$i])."' can not be used with option 'PCLZIP_OPT_TEMP_FILE_OFF'"); + return PclZip::errorCode(); + } + + $v_result_list[$p_options_list[$i]] = true; + break; + + case PCLZIP_OPT_TEMP_FILE_OFF: + // ----- Check for incompatible options + if (isset($v_result_list[PCLZIP_OPT_TEMP_FILE_ON])) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Option '".PclZipUtilOptionText($p_options_list[$i])."' can not be used with option 'PCLZIP_OPT_TEMP_FILE_ON'"); + return PclZip::errorCode(); + } + // ----- Check for incompatible options + if (isset($v_result_list[PCLZIP_OPT_TEMP_FILE_THRESHOLD])) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Option '".PclZipUtilOptionText($p_options_list[$i])."' can not be used with option 'PCLZIP_OPT_TEMP_FILE_THRESHOLD'"); + return PclZip::errorCode(); + } + $v_result_list[$p_options_list[$i]] = true; + break; + + case PCLZIP_OPT_EXTRACT_DIR_RESTRICTION: + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + if (is_string($p_options_list[$i+1]) && ($p_options_list[$i+1] != '')) { + $v_result_list[$p_options_list[$i]] = PclZipUtilTranslateWinPath($p_options_list[$i+1], false); + $i++; + } else { + } + break; + // ----- Look for options that request an array of string for value + case PCLZIP_OPT_BY_NAME: + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + if (is_string($p_options_list[$i+1])) { + $v_result_list[$p_options_list[$i]][0] = $p_options_list[$i+1]; + } elseif (is_array($p_options_list[$i+1])) { + $v_result_list[$p_options_list[$i]] = $p_options_list[$i+1]; + } else { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Wrong parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + // ----- Return + return PclZip::errorCode(); + } + $i++; + break; + // ----- Look for options that request an EREG or PREG expression + case PCLZIP_OPT_BY_EREG: + // ereg() is deprecated starting with PHP 5.3. Move PCLZIP_OPT_BY_EREG + // to PCLZIP_OPT_BY_PREG + $p_options_list[$i] = PCLZIP_OPT_BY_PREG; + case PCLZIP_OPT_BY_PREG: + //case PCLZIP_OPT_CRYPT : + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + if (is_string($p_options_list[$i+1])) { + $v_result_list[$p_options_list[$i]] = $p_options_list[$i+1]; + } else { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Wrong parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + // ----- Return + return PclZip::errorCode(); + } + $i++; + break; + + // ----- Look for options that takes a string + case PCLZIP_OPT_COMMENT: + case PCLZIP_OPT_ADD_COMMENT: + case PCLZIP_OPT_PREPEND_COMMENT: + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + if (is_string($p_options_list[$i+1])) { + $v_result_list[$p_options_list[$i]] = $p_options_list[$i+1]; + } else { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Wrong parameter value for option '" .PclZipUtilOptionText($p_options_list[$i]) ."'"); + + // ----- Return + return PclZip::errorCode(); + } + $i++; + break; + + // ----- Look for options that request an array of index + case PCLZIP_OPT_BY_INDEX: + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + $v_work_list = array(); + if (is_string($p_options_list[$i+1])) { + // ----- Remove spaces + $p_options_list[$i+1] = strtr($p_options_list[$i+1], ' ', ''); + + // ----- Parse items + $v_work_list = explode(",", $p_options_list[$i+1]); + } elseif (is_integer($p_options_list[$i+1])) { + $v_work_list[0] = $p_options_list[$i+1].'-'.$p_options_list[$i+1]; + } elseif (is_array($p_options_list[$i+1])) { + $v_work_list = $p_options_list[$i+1]; + } else { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Value must be integer, string or array for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Reduce the index list + // each index item in the list must be a couple with a start and + // an end value : [0,3], [5-5], [8-10], ... + // ----- Check the format of each item + $v_sort_flag=false; + $v_sort_value=0; + for ($j=0; $j<sizeof($v_work_list); $j++) { + // ----- Explode the item + $v_item_list = explode("-", $v_work_list[$j]); + $v_size_item_list = sizeof($v_item_list); + + // ----- TBC : Here we might check that each item is a + // real integer ... + + // ----- Look for single value + if ($v_size_item_list == 1) { + // ----- Set the option value + $v_result_list[$p_options_list[$i]][$j]['start'] = $v_item_list[0]; + $v_result_list[$p_options_list[$i]][$j]['end'] = $v_item_list[0]; + } elseif ($v_size_item_list == 2) { + // ----- Set the option value + $v_result_list[$p_options_list[$i]][$j]['start'] = $v_item_list[0]; + $v_result_list[$p_options_list[$i]][$j]['end'] = $v_item_list[1]; + } else { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Too many values in index range for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + + // ----- Look for list sort + if ($v_result_list[$p_options_list[$i]][$j]['start'] < $v_sort_value) { + $v_sort_flag=true; + + // ----- TBC : An automatic sort should be writen ... + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Invalid order of index range for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + $v_sort_value = $v_result_list[$p_options_list[$i]][$j]['start']; + } + + // ----- Sort the items + if ($v_sort_flag) { + // TBC : To Be Completed + } + // ----- Next option + $i++; + break; + // ----- Look for options that request no value + case PCLZIP_OPT_REMOVE_ALL_PATH: + case PCLZIP_OPT_EXTRACT_AS_STRING: + case PCLZIP_OPT_NO_COMPRESSION: + case PCLZIP_OPT_EXTRACT_IN_OUTPUT: + case PCLZIP_OPT_REPLACE_NEWER: + case PCLZIP_OPT_STOP_ON_ERROR: + $v_result_list[$p_options_list[$i]] = true; + break; + // ----- Look for options that request an octal value + case PCLZIP_OPT_SET_CHMOD: + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + // ----- Return + return PclZip::errorCode(); + } + // ----- Get the value + $v_result_list[$p_options_list[$i]] = $p_options_list[$i+1]; + $i++; + break; + + // ----- Look for options that request a call-back + case PCLZIP_CB_PRE_EXTRACT: + case PCLZIP_CB_POST_EXTRACT: + case PCLZIP_CB_PRE_ADD: + case PCLZIP_CB_POST_ADD: + /* for futur use + case PCLZIP_CB_PRE_DELETE : + case PCLZIP_CB_POST_DELETE : + case PCLZIP_CB_PRE_LIST : + case PCLZIP_CB_POST_LIST : + */ + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + $v_function_name = $p_options_list[$i+1]; + + // ----- Check that the value is a valid existing function + if (!function_exists($v_function_name)) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Function '".$v_function_name."()' is not an existing function for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + // ----- Return + return PclZip::errorCode(); + } + + // ----- Set the attribute + $v_result_list[$p_options_list[$i]] = $v_function_name; + $i++; + break; + default: + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Unknown parameter '" .$p_options_list[$i]."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Next options + $i++; + } + + // ----- Look for mandatory options + if ($v_requested_options !== false) { + for ($key=reset($v_requested_options); $key=key($v_requested_options); $key=next($v_requested_options)) { + // ----- Look for mandatory option + if ($v_requested_options[$key] == 'mandatory') { + // ----- Look if present + if (!isset($v_result_list[$key])) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Missing mandatory parameter ".PclZipUtilOptionText($key)."(".$key.")"); + + // ----- Return + return PclZip::errorCode(); + } + } + } + } + + // ----- Look for default values + if (!isset($v_result_list[PCLZIP_OPT_TEMP_FILE_THRESHOLD])) { + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privOptionDefaultThreshold() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privOptionDefaultThreshold(&$p_options) + { + $v_result=1; + + if (isset($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD]) || isset($p_options[PCLZIP_OPT_TEMP_FILE_OFF])) { + return $v_result; + } + + // ----- Get 'memory_limit' configuration value + $v_memory_limit = ini_get('memory_limit'); + $v_memory_limit = trim($v_memory_limit); + $last = strtolower(substr($v_memory_limit, -1)); + + if ($last == 'g') { + //$v_memory_limit = $v_memory_limit*1024*1024*1024; + $v_memory_limit = $v_memory_limit*1073741824; + } + if ($last == 'm') { + //$v_memory_limit = $v_memory_limit*1024*1024; + $v_memory_limit = $v_memory_limit*1048576; + } + if ($last == 'k') { + $v_memory_limit = $v_memory_limit*1024; + } + + $p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD] = floor($v_memory_limit*PCLZIP_TEMPORARY_FILE_RATIO); + + // ----- Sanity check : No threshold if value lower than 1M + if ($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD] < 1048576) { + unset($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD]); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privFileDescrParseAtt() + // Description : + // Parameters : + // Return Values : + // 1 on success. + // 0 on failure. + // -------------------------------------------------------------------------------- + public function privFileDescrParseAtt(&$p_file_list, &$p_filedescr, $v_options, $v_requested_options = false) + { + $v_result=1; + + // ----- For each file in the list check the attributes + foreach ($p_file_list as $v_key => $v_value) { + // ----- Check if the option is supported + if (!isset($v_requested_options[$v_key])) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid file attribute '".$v_key."' for this file"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Look for attribute + switch ($v_key) { + case PCLZIP_ATT_FILE_NAME: + if (!is_string($v_value)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid type ".gettype($v_value).". String expected for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + + $p_filedescr['filename'] = PclZipUtilPathReduction($v_value); + + if ($p_filedescr['filename'] == '') { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid empty filename for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + break; + case PCLZIP_ATT_FILE_NEW_SHORT_NAME: + if (!is_string($v_value)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid type ".gettype($v_value).". String expected for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + + $p_filedescr['new_short_name'] = PclZipUtilPathReduction($v_value); + + if ($p_filedescr['new_short_name'] == '') { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid empty short filename for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + break; + case PCLZIP_ATT_FILE_NEW_FULL_NAME: + if (!is_string($v_value)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid type ".gettype($v_value).". String expected for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + + $p_filedescr['new_full_name'] = PclZipUtilPathReduction($v_value); + + if ($p_filedescr['new_full_name'] == '') { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid empty full filename for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + break; + // ----- Look for options that takes a string + case PCLZIP_ATT_FILE_COMMENT: + if (!is_string($v_value)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid type ".gettype($v_value).". String expected for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + $p_filedescr['comment'] = $v_value; + break; + case PCLZIP_ATT_FILE_MTIME: + if (!is_integer($v_value)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid type ".gettype($v_value).". Integer expected for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + $p_filedescr['mtime'] = $v_value; + break; + case PCLZIP_ATT_FILE_CONTENT: + $p_filedescr['content'] = $v_value; + break; + default: + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Unknown parameter '".$v_key."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Look for mandatory options + if ($v_requested_options !== false) { + for ($key = reset($v_requested_options); $key = key($v_requested_options); $key = next($v_requested_options)) { + // ----- Look for mandatory option + if ($v_requested_options[$key] == 'mandatory') { + // ----- Look if present + if (!isset($p_file_list[$key])) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Missing mandatory parameter ".PclZipUtilOptionText($key)."(".$key.")"); + return PclZip::errorCode(); + } + } + } + } + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privFileDescrExpand() + // Description : + // This method look for each item of the list to see if its a file, a folder + // or a string to be added as file. For any other type of files (link, other) + // just ignore the item. + // Then prepare the information that will be stored for that file. + // When its a folder, expand the folder with all the files that are in that + // folder (recursively). + // Parameters : + // Return Values : + // 1 on success. + // 0 on failure. + // -------------------------------------------------------------------------------- + public function privFileDescrExpand(&$p_filedescr_list, &$p_options) + { + $v_result=1; + + // ----- Create a result list + $v_result_list = array(); + + // ----- Look each entry + for ($i=0; $i<sizeof($p_filedescr_list); $i++) { + // ----- Get filedescr + $v_descr = $p_filedescr_list[$i]; + + // ----- Reduce the filename + $v_descr['filename'] = PclZipUtilTranslateWinPath($v_descr['filename'], false); + $v_descr['filename'] = PclZipUtilPathReduction($v_descr['filename']); + + // ----- Look for real file or folder + if (file_exists($v_descr['filename'])) { + if (@is_file($v_descr['filename'])) { + $v_descr['type'] = 'file'; + } elseif (@is_dir($v_descr['filename'])) { + $v_descr['type'] = 'folder'; + } elseif (@is_link($v_descr['filename'])) { + // skip + continue; + } else { + // skip + continue; + } + } elseif (isset($v_descr['content'])) { + // ----- Look for string added as file + $v_descr['type'] = 'virtual_file'; + } else { + // ----- Missing file + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_FILE, "File '".$v_descr['filename']."' does not exist"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Calculate the stored filename + $this->privCalculateStoredFilename($v_descr, $p_options); + + // ----- Add the descriptor in result list + $v_result_list[sizeof($v_result_list)] = $v_descr; + + // ----- Look for folder + if ($v_descr['type'] == 'folder') { + // ----- List of items in folder + $v_dirlist_descr = array(); + $v_dirlist_nb = 0; + if ($v_folder_handler = @opendir($v_descr['filename'])) { + while (($v_item_handler = @readdir($v_folder_handler)) !== false) { + // ----- Skip '.' and '..' + if (($v_item_handler == '.') || ($v_item_handler == '..')) { + continue; + } + + // ----- Compose the full filename + $v_dirlist_descr[$v_dirlist_nb]['filename'] = $v_descr['filename'].'/'.$v_item_handler; + + // ----- Look for different stored filename + // Because the name of the folder was changed, the name of the + // files/sub-folders also change + if (($v_descr['stored_filename'] != $v_descr['filename']) + && (!isset($p_options[PCLZIP_OPT_REMOVE_ALL_PATH]))) { + if ($v_descr['stored_filename'] != '') { + $v_dirlist_descr[$v_dirlist_nb]['new_full_name'] = $v_descr['stored_filename'].'/'.$v_item_handler; + } else { + $v_dirlist_descr[$v_dirlist_nb]['new_full_name'] = $v_item_handler; + } + } + $v_dirlist_nb++; + } + + @closedir($v_folder_handler); + } else { + // TBC : unable to open folder in read mode + } + + // ----- Expand each element of the list + if ($v_dirlist_nb != 0) { + // ----- Expand + if (($v_result = $this->privFileDescrExpand($v_dirlist_descr, $p_options)) != 1) { + return $v_result; + } + + // ----- Concat the resulting list + $v_result_list = array_merge($v_result_list, $v_dirlist_descr); + } + + // ----- Free local array + unset($v_dirlist_descr); + } + } + + // ----- Get the result list + $p_filedescr_list = $v_result_list; + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privCreate() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privCreate($p_filedescr_list, &$p_result_list, &$p_options) + { + $v_result=1; + $v_list_detail = array(); + + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Open the file in write mode + if (($v_result = $this->privOpenFd('wb')) != 1) { + // ----- Return + return $v_result; + } + + // ----- Add the list of files + $v_result = $this->privAddList($p_filedescr_list, $p_result_list, $p_options); + + // ----- Close + $this->privCloseFd(); + + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privAdd() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privAdd($p_filedescr_list, &$p_result_list, &$p_options) + { + $v_result=1; + $v_list_detail = array(); + + // ----- Look if the archive exists or is empty + if ((!is_file($this->zipname)) || (filesize($this->zipname) == 0)) { + // ----- Do a create + $v_result = $this->privCreate($p_filedescr_list, $p_result_list, $p_options); + + // ----- Return + return $v_result; + } + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Open the zip file + if (($v_result=$this->privOpenFd('rb')) != 1) { + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result; + } + + // ----- Go to beginning of File + @rewind($this->zip_fd); + + // ----- Creates a temporay file + $v_zip_temp_name = PCLZIP_TEMPORARY_DIR.uniqid('pclzip-').'.tmp'; + + // ----- Open the temporary file in write mode + if (($v_zip_temp_fd = @fopen($v_zip_temp_name, 'wb')) == 0) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open temporary file \''.$v_zip_temp_name.'\' in binary write mode'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Copy the files from the archive to the temporary file + // TBC : Here I should better append the file and go back to erase the central dir + $v_size = $v_central_dir['offset']; + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = fread($this->zip_fd, $v_read_size); + @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Swap the file descriptor + // Here is a trick : I swap the temporary fd with the zip fd, in order to use + // the following methods on the temporary fil and not the real archive + $v_swap = $this->zip_fd; + $this->zip_fd = $v_zip_temp_fd; + $v_zip_temp_fd = $v_swap; + + // ----- Add the files + $v_header_list = array(); + if (($v_result = $this->privAddFileList($p_filedescr_list, $v_header_list, $p_options)) != 1) { + fclose($v_zip_temp_fd); + $this->privCloseFd(); + @unlink($v_zip_temp_name); + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + + // ----- Store the offset of the central dir + $v_offset = @ftell($this->zip_fd); + + // ----- Copy the block of file headers from the old archive + $v_size = $v_central_dir['size']; + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($v_zip_temp_fd, $v_read_size); + @fwrite($this->zip_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Create the Central Dir files header + for ($i=0, $v_count=0; $i<sizeof($v_header_list); $i++) { + // ----- Create the file header + if ($v_header_list[$i]['status'] == 'ok') { + if (($v_result = $this->privWriteCentralFileHeader($v_header_list[$i])) != 1) { + fclose($v_zip_temp_fd); + $this->privCloseFd(); + @unlink($v_zip_temp_name); + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + $v_count++; + } + + // ----- Transform the header to a 'usable' info + $this->privConvertHeader2FileInfo($v_header_list[$i], $p_result_list[$i]); + } + + // ----- Zip file comment + $v_comment = $v_central_dir['comment']; + if (isset($p_options[PCLZIP_OPT_COMMENT])) { + $v_comment = $p_options[PCLZIP_OPT_COMMENT]; + } + if (isset($p_options[PCLZIP_OPT_ADD_COMMENT])) { + $v_comment = $v_comment.$p_options[PCLZIP_OPT_ADD_COMMENT]; + } + if (isset($p_options[PCLZIP_OPT_PREPEND_COMMENT])) { + $v_comment = $p_options[PCLZIP_OPT_PREPEND_COMMENT].$v_comment; + } + + // ----- Calculate the size of the central header + $v_size = @ftell($this->zip_fd)-$v_offset; + + // ----- Create the central dir footer + if (($v_result = $this->privWriteCentralHeader($v_count+$v_central_dir['entries'], $v_size, $v_offset, $v_comment)) != 1) { + // ----- Reset the file list + unset($v_header_list); + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + + // ----- Swap back the file descriptor + $v_swap = $this->zip_fd; + $this->zip_fd = $v_zip_temp_fd; + $v_zip_temp_fd = $v_swap; + + // ----- Close + $this->privCloseFd(); + + // ----- Close the temporary file + @fclose($v_zip_temp_fd); + + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Delete the zip file + // TBC : I should test the result ... + @unlink($this->zipname); + + // ----- Rename the temporary file + // TBC : I should test the result ... + //@rename($v_zip_temp_name, $this->zipname); + PclZipUtilRename($v_zip_temp_name, $this->zipname); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privOpenFd() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + public function privOpenFd($p_mode) + { + $v_result=1; + + // ----- Look if already open + if ($this->zip_fd != 0) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Zip file \''.$this->zipname.'\' already open'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Open the zip file + if (($this->zip_fd = @fopen($this->zipname, $p_mode)) == 0) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open archive \''.$this->zipname.'\' in '.$p_mode.' mode'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privCloseFd() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + public function privCloseFd() + { + $v_result=1; + + if ($this->zip_fd != 0) { + @fclose($this->zip_fd); + } + $this->zip_fd = 0; + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privAddList() + // Description : + // $p_add_dir and $p_remove_dir will give the ability to memorize a path which is + // different from the real path of the file. This is usefull if you want to have PclTar + // running in any directory, and memorize relative path from an other directory. + // Parameters : + // $p_list : An array containing the file or directory names to add in the tar + // $p_result_list : list of added files with their properties (specially the status field) + // $p_add_dir : Path to add in the filename path archived + // $p_remove_dir : Path to remove in the filename path archived + // Return Values : + // -------------------------------------------------------------------------------- + // public function privAddList($p_list, &$p_result_list, $p_add_dir, $p_remove_dir, $p_remove_all_dir, &$p_options) + public function privAddList($p_filedescr_list, &$p_result_list, &$p_options) + { + $v_result=1; + + // ----- Add the files + $v_header_list = array(); + if (($v_result = $this->privAddFileList($p_filedescr_list, $v_header_list, $p_options)) != 1) { + // ----- Return + return $v_result; + } + + // ----- Store the offset of the central dir + $v_offset = @ftell($this->zip_fd); + + // ----- Create the Central Dir files header + for ($i=0, $v_count=0; $i<sizeof($v_header_list); $i++) { + // ----- Create the file header + if ($v_header_list[$i]['status'] == 'ok') { + if (($v_result = $this->privWriteCentralFileHeader($v_header_list[$i])) != 1) { + // ----- Return + return $v_result; + } + $v_count++; + } + + // ----- Transform the header to a 'usable' info + $this->privConvertHeader2FileInfo($v_header_list[$i], $p_result_list[$i]); + } + + // ----- Zip file comment + $v_comment = ''; + if (isset($p_options[PCLZIP_OPT_COMMENT])) { + $v_comment = $p_options[PCLZIP_OPT_COMMENT]; + } + + // ----- Calculate the size of the central header + $v_size = @ftell($this->zip_fd)-$v_offset; + + // ----- Create the central dir footer + if (($v_result = $this->privWriteCentralHeader($v_count, $v_size, $v_offset, $v_comment)) != 1) { + // ----- Reset the file list + unset($v_header_list); + + // ----- Return + return $v_result; + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privAddFileList() + // Description : + // Parameters : + // $p_filedescr_list : An array containing the file description + // or directory names to add in the zip + // $p_result_list : list of added files with their properties (specially the status field) + // Return Values : + // -------------------------------------------------------------------------------- + public function privAddFileList($p_filedescr_list, &$p_result_list, &$p_options) + { + $v_result=1; + $v_header = array(); + + // ----- Recuperate the current number of elt in list + $v_nb = sizeof($p_result_list); + + // ----- Loop on the files + for ($j=0; ($j<sizeof($p_filedescr_list)) && ($v_result==1); $j++) { + // ----- Format the filename + $p_filedescr_list[$j]['filename'] = PclZipUtilTranslateWinPath($p_filedescr_list[$j]['filename'], false); + + // ----- Skip empty file names + // TBC : Can this be possible ? not checked in DescrParseAtt ? + if ($p_filedescr_list[$j]['filename'] == "") { + continue; + } + + // ----- Check the filename + if (($p_filedescr_list[$j]['type'] != 'virtual_file') && (!file_exists($p_filedescr_list[$j]['filename']))) { + PclZip::privErrorLog(PCLZIP_ERR_MISSING_FILE, "File '".$p_filedescr_list[$j]['filename']."' does not exist"); + return PclZip::errorCode(); + } + + // ----- Look if it is a file or a dir with no all path remove option + // or a dir with all its path removed + // if ( (is_file($p_filedescr_list[$j]['filename'])) + // || ( is_dir($p_filedescr_list[$j]['filename']) + if (($p_filedescr_list[$j]['type'] == 'file') || ($p_filedescr_list[$j]['type'] == 'virtual_file') || (($p_filedescr_list[$j]['type'] == 'folder') && (!isset($p_options[PCLZIP_OPT_REMOVE_ALL_PATH]) || !$p_options[PCLZIP_OPT_REMOVE_ALL_PATH]))) { + // ----- Add the file + $v_result = $this->privAddFile($p_filedescr_list[$j], $v_header, $p_options); + if ($v_result != 1) { + return $v_result; + } + + // ----- Store the file infos + $p_result_list[$v_nb++] = $v_header; + } + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privAddFile() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privAddFile($p_filedescr, &$p_header, &$p_options) + { + $v_result=1; + + // ----- Working variable + $p_filename = $p_filedescr['filename']; + + // TBC : Already done in the fileAtt check ... ? + if ($p_filename == "") { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid file list parameter (invalid or empty list)"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Look for a stored different filename + /* TBC : Removed + if (isset($p_filedescr['stored_filename'])) { + $v_stored_filename = $p_filedescr['stored_filename']; + } + else { + $v_stored_filename = $p_filedescr['stored_filename']; + } + */ + + // ----- Set the file properties + clearstatcache(); + $p_header['version'] = 20; + $p_header['version_extracted'] = 10; + $p_header['flag'] = 0; + $p_header['compression'] = 0; + $p_header['crc'] = 0; + $p_header['compressed_size'] = 0; + $p_header['filename_len'] = strlen($p_filename); + $p_header['extra_len'] = 0; + $p_header['disk'] = 0; + $p_header['internal'] = 0; + $p_header['offset'] = 0; + $p_header['filename'] = $p_filename; + // TBC : Removed $p_header['stored_filename'] = $v_stored_filename; + $p_header['stored_filename'] = $p_filedescr['stored_filename']; + $p_header['extra'] = ''; + $p_header['status'] = 'ok'; + $p_header['index'] = -1; + + // ----- Look for regular file + if ($p_filedescr['type']=='file') { + $p_header['external'] = 0x00000000; + $p_header['size'] = filesize($p_filename); + } elseif ($p_filedescr['type']=='folder') { + // ----- Look for regular folder + $p_header['external'] = 0x00000010; + $p_header['mtime'] = filemtime($p_filename); + $p_header['size'] = filesize($p_filename); + } elseif ($p_filedescr['type'] == 'virtual_file') { + // ----- Look for virtual file + $p_header['external'] = 0x00000000; + $p_header['size'] = strlen($p_filedescr['content']); + } + + // ----- Look for filetime + if (isset($p_filedescr['mtime'])) { + $p_header['mtime'] = $p_filedescr['mtime']; + } elseif ($p_filedescr['type'] == 'virtual_file') { + $p_header['mtime'] = time(); + } else { + $p_header['mtime'] = filemtime($p_filename); + } + + // ------ Look for file comment + if (isset($p_filedescr['comment'])) { + $p_header['comment_len'] = strlen($p_filedescr['comment']); + $p_header['comment'] = $p_filedescr['comment']; + } else { + $p_header['comment_len'] = 0; + $p_header['comment'] = ''; + } + + // ----- Look for pre-add callback + if (isset($p_options[PCLZIP_CB_PRE_ADD])) { + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_header, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. + // eval('$v_result = '.$p_options[PCLZIP_CB_PRE_ADD].'(PCLZIP_CB_PRE_ADD, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_PRE_ADD](PCLZIP_CB_PRE_ADD, $v_local_header); + if ($v_result == 0) { + // ----- Change the file status + $p_header['status'] = "skipped"; + $v_result = 1; + } + + // ----- Update the informations + // Only some fields can be modified + if ($p_header['stored_filename'] != $v_local_header['stored_filename']) { + $p_header['stored_filename'] = PclZipUtilPathReduction($v_local_header['stored_filename']); + } + } + + // ----- Look for empty stored filename + if ($p_header['stored_filename'] == "") { + $p_header['status'] = "filtered"; + } + + // ----- Check the path length + if (strlen($p_header['stored_filename']) > 0xFF) { + $p_header['status'] = 'filename_too_long'; + } + + // ----- Look if no error, or file not skipped + if ($p_header['status'] == 'ok') { + // ----- Look for a file + if ($p_filedescr['type'] == 'file') { + // ----- Look for using temporary file to zip + if ((!isset($p_options[PCLZIP_OPT_TEMP_FILE_OFF])) && (isset($p_options[PCLZIP_OPT_TEMP_FILE_ON]) || (isset($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD]) && ($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD] <= $p_header['size'])))) { + $v_result = $this->privAddFileUsingTempFile($p_filedescr, $p_header, $p_options); + if ($v_result < PCLZIP_ERR_NO_ERROR) { + return $v_result; + } + } else { + // ----- Use "in memory" zip algo + // ----- Open the source file + if (($v_file = @fopen($p_filename, "rb")) == 0) { + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, "Unable to open file '$p_filename' in binary read mode"); + return PclZip::errorCode(); + } + + // ----- Read the file content + $v_content = @fread($v_file, $p_header['size']); + + // ----- Close the file + @fclose($v_file); + + // ----- Calculate the CRC + $p_header['crc'] = @crc32($v_content); + + // ----- Look for no compression + if ($p_options[PCLZIP_OPT_NO_COMPRESSION]) { + // ----- Set header parameters + $p_header['compressed_size'] = $p_header['size']; + $p_header['compression'] = 0; + } else { + // ----- Look for normal compression + // ----- Compress the content + $v_content = @gzdeflate($v_content); + + // ----- Set header parameters + $p_header['compressed_size'] = strlen($v_content); + $p_header['compression'] = 8; + } + + // ----- Call the header generation + if (($v_result = $this->privWriteFileHeader($p_header)) != 1) { + @fclose($v_file); + return $v_result; + } + + // ----- Write the compressed (or not) content + @fwrite($this->zip_fd, $v_content, $p_header['compressed_size']); + } + } elseif ($p_filedescr['type'] == 'virtual_file') { + // ----- Look for a virtual file (a file from string) + $v_content = $p_filedescr['content']; + + // ----- Calculate the CRC + $p_header['crc'] = @crc32($v_content); + + // ----- Look for no compression + if ($p_options[PCLZIP_OPT_NO_COMPRESSION]) { + // ----- Set header parameters + $p_header['compressed_size'] = $p_header['size']; + $p_header['compression'] = 0; + } else { + // ----- Look for normal compression + // ----- Compress the content + $v_content = @gzdeflate($v_content); + + // ----- Set header parameters + $p_header['compressed_size'] = strlen($v_content); + $p_header['compression'] = 8; + } + + // ----- Call the header generation + if (($v_result = $this->privWriteFileHeader($p_header)) != 1) { + @fclose($v_file); + return $v_result; + } + + // ----- Write the compressed (or not) content + @fwrite($this->zip_fd, $v_content, $p_header['compressed_size']); + } elseif ($p_filedescr['type'] == 'folder') { + // ----- Look for a directory + // ----- Look for directory last '/' + if (@substr($p_header['stored_filename'], -1) != '/') { + $p_header['stored_filename'] .= '/'; + } + + // ----- Set the file properties + $p_header['size'] = 0; + //$p_header['external'] = 0x41FF0010; // Value for a folder : to be checked + $p_header['external'] = 0x00000010; // Value for a folder : to be checked + + // ----- Call the header generation + if (($v_result = $this->privWriteFileHeader($p_header)) != 1) { + return $v_result; + } + } + } + + // ----- Look for post-add callback + if (isset($p_options[PCLZIP_CB_POST_ADD])) { + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_header, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. + // eval('$v_result = '.$p_options[PCLZIP_CB_POST_ADD].'(PCLZIP_CB_POST_ADD, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_POST_ADD](PCLZIP_CB_POST_ADD, $v_local_header); + if ($v_result == 0) { + // ----- Ignored + $v_result = 1; + } + + // ----- Update the informations + // Nothing can be modified + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privAddFileUsingTempFile() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privAddFileUsingTempFile($p_filedescr, &$p_header, &$p_options) + { + $v_result=PCLZIP_ERR_NO_ERROR; + + // ----- Working variable + $p_filename = $p_filedescr['filename']; + + + // ----- Open the source file + if (($v_file = @fopen($p_filename, "rb")) == 0) { + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, "Unable to open file '$p_filename' in binary read mode"); + return PclZip::errorCode(); + } + + // ----- Creates a compressed temporary file + $v_gzip_temp_name = PCLZIP_TEMPORARY_DIR.uniqid('pclzip-').'.gz'; + if (($v_file_compressed = @gzopen($v_gzip_temp_name, "wb")) == 0) { + fclose($v_file); + PclZip::privErrorLog(PCLZIP_ERR_WRITE_OPEN_FAIL, 'Unable to open temporary file \''.$v_gzip_temp_name.'\' in binary write mode'); + return PclZip::errorCode(); + } + + // ----- Read the file by PCLZIP_READ_BLOCK_SIZE octets blocks + $v_size = filesize($p_filename); + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($v_file, $v_read_size); + //$v_binary_data = pack('a'.$v_read_size, $v_buffer); + @gzputs($v_file_compressed, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Close the file + @fclose($v_file); + @gzclose($v_file_compressed); + + // ----- Check the minimum file size + if (filesize($v_gzip_temp_name) < 18) { + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'gzip temporary file \''.$v_gzip_temp_name.'\' has invalid filesize - should be minimum 18 bytes'); + return PclZip::errorCode(); + } + + // ----- Extract the compressed attributes + if (($v_file_compressed = @fopen($v_gzip_temp_name, "rb")) == 0) { + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open temporary file \''.$v_gzip_temp_name.'\' in binary read mode'); + return PclZip::errorCode(); + } + + // ----- Read the gzip file header + $v_binary_data = @fread($v_file_compressed, 10); + $v_data_header = unpack('a1id1/a1id2/a1cm/a1flag/Vmtime/a1xfl/a1os', $v_binary_data); + + // ----- Check some parameters + $v_data_header['os'] = bin2hex($v_data_header['os']); + + // ----- Read the gzip file footer + @fseek($v_file_compressed, filesize($v_gzip_temp_name)-8); + $v_binary_data = @fread($v_file_compressed, 8); + $v_data_footer = unpack('Vcrc/Vcompressed_size', $v_binary_data); + + // ----- Set the attributes + $p_header['compression'] = ord($v_data_header['cm']); + //$p_header['mtime'] = $v_data_header['mtime']; + $p_header['crc'] = $v_data_footer['crc']; + $p_header['compressed_size'] = filesize($v_gzip_temp_name)-18; + + // ----- Close the file + @fclose($v_file_compressed); + + // ----- Call the header generation + if (($v_result = $this->privWriteFileHeader($p_header)) != 1) { + return $v_result; + } + + // ----- Add the compressed data + if (($v_file_compressed = @fopen($v_gzip_temp_name, "rb")) == 0) { + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open temporary file \''.$v_gzip_temp_name.'\' in binary read mode'); + return PclZip::errorCode(); + } + + // ----- Read the file by PCLZIP_READ_BLOCK_SIZE octets blocks + fseek($v_file_compressed, 10); + $v_size = $p_header['compressed_size']; + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($v_file_compressed, $v_read_size); + //$v_binary_data = pack('a'.$v_read_size, $v_buffer); + @fwrite($this->zip_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Close the file + @fclose($v_file_compressed); + + // ----- Unlink the temporary file + @unlink($v_gzip_temp_name); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privCalculateStoredFilename() + // Description : + // Based on file descriptor properties and global options, this method + // calculate the filename that will be stored in the archive. + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privCalculateStoredFilename(&$p_filedescr, &$p_options) + { + $v_result=1; + + // ----- Working variables + $p_filename = $p_filedescr['filename']; + if (isset($p_options[PCLZIP_OPT_ADD_PATH])) { + $p_add_dir = $p_options[PCLZIP_OPT_ADD_PATH]; + } else { + $p_add_dir = ''; + } + if (isset($p_options[PCLZIP_OPT_REMOVE_PATH])) { + $p_remove_dir = $p_options[PCLZIP_OPT_REMOVE_PATH]; + } else { + $p_remove_dir = ''; + } + if (isset($p_options[PCLZIP_OPT_REMOVE_ALL_PATH])) { + $p_remove_all_dir = $p_options[PCLZIP_OPT_REMOVE_ALL_PATH]; + } else { + $p_remove_all_dir = 0; + } + + // ----- Look for full name change + if (isset($p_filedescr['new_full_name'])) { + // ----- Remove drive letter if any + $v_stored_filename = PclZipUtilTranslateWinPath($p_filedescr['new_full_name']); + } else { + // ----- Look for path and/or short name change + // ----- Look for short name change + // Its when we cahnge just the filename but not the path + if (isset($p_filedescr['new_short_name'])) { + $v_path_info = pathinfo($p_filename); + $v_dir = ''; + if ($v_path_info['dirname'] != '') { + $v_dir = $v_path_info['dirname'].'/'; + } + $v_stored_filename = $v_dir.$p_filedescr['new_short_name']; + } else { + // ----- Calculate the stored filename + $v_stored_filename = $p_filename; + } + + // ----- Look for all path to remove + if ($p_remove_all_dir) { + $v_stored_filename = basename($p_filename); + } elseif ($p_remove_dir != "") { + // ----- Look for partial path remove + if (substr($p_remove_dir, -1) != '/') { + $p_remove_dir .= "/"; + } + + if ((substr($p_filename, 0, 2) == "./") || (substr($p_remove_dir, 0, 2) == "./")) { + if ((substr($p_filename, 0, 2) == "./") && (substr($p_remove_dir, 0, 2) != "./")) { + $p_remove_dir = "./".$p_remove_dir; + } + if ((substr($p_filename, 0, 2) != "./") && (substr($p_remove_dir, 0, 2) == "./")) { + $p_remove_dir = substr($p_remove_dir, 2); + } + } + + $v_compare = PclZipUtilPathInclusion($p_remove_dir, $v_stored_filename); + if ($v_compare > 0) { + if ($v_compare == 2) { + $v_stored_filename = ""; + } else { + $v_stored_filename = substr($v_stored_filename, strlen($p_remove_dir)); + } + } + } + + // ----- Remove drive letter if any + $v_stored_filename = PclZipUtilTranslateWinPath($v_stored_filename); + + // ----- Look for path to add + if ($p_add_dir != "") { + if (substr($p_add_dir, -1) == "/") { + $v_stored_filename = $p_add_dir.$v_stored_filename; + } else { + $v_stored_filename = $p_add_dir."/".$v_stored_filename; + } + } + } + + // ----- Filename (reduce the path of stored name) + $v_stored_filename = PclZipUtilPathReduction($v_stored_filename); + $p_filedescr['stored_filename'] = $v_stored_filename; + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privWriteFileHeader() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privWriteFileHeader(&$p_header) + { + $v_result=1; + + // ----- Store the offset position of the file + $p_header['offset'] = ftell($this->zip_fd); + + // ----- Transform UNIX mtime to DOS format mdate/mtime + $v_date = getdate($p_header['mtime']); + $v_mtime = ($v_date['hours']<<11) + ($v_date['minutes']<<5) + $v_date['seconds']/2; + $v_mdate = (($v_date['year']-1980)<<9) + ($v_date['mon']<<5) + $v_date['mday']; + + // ----- Packed data + $v_binary_data = pack("VvvvvvVVVvv", 0x04034b50, $p_header['version_extracted'], $p_header['flag'], $p_header['compression'], $v_mtime, $v_mdate, $p_header['crc'], $p_header['compressed_size'], $p_header['size'], strlen($p_header['stored_filename']), $p_header['extra_len']); + + // ----- Write the first 148 bytes of the header in the archive + fputs($this->zip_fd, $v_binary_data, 30); + + // ----- Write the variable fields + if (strlen($p_header['stored_filename']) != 0) { + fputs($this->zip_fd, $p_header['stored_filename'], strlen($p_header['stored_filename'])); + } + if ($p_header['extra_len'] != 0) { + fputs($this->zip_fd, $p_header['extra'], $p_header['extra_len']); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privWriteCentralFileHeader() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privWriteCentralFileHeader(&$p_header) + { + $v_result=1; + + // TBC + //for(reset($p_header); $key = key($p_header); next($p_header)) { + //} + + // ----- Transform UNIX mtime to DOS format mdate/mtime + $v_date = getdate($p_header['mtime']); + $v_mtime = ($v_date['hours']<<11) + ($v_date['minutes']<<5) + $v_date['seconds']/2; + $v_mdate = (($v_date['year']-1980)<<9) + ($v_date['mon']<<5) + $v_date['mday']; + + + // ----- Packed data + $v_binary_data = pack("VvvvvvvVVVvvvvvVV", 0x02014b50, $p_header['version'], $p_header['version_extracted'], $p_header['flag'], $p_header['compression'], $v_mtime, $v_mdate, $p_header['crc'], $p_header['compressed_size'], $p_header['size'], strlen($p_header['stored_filename']), $p_header['extra_len'], $p_header['comment_len'], $p_header['disk'], $p_header['internal'], $p_header['external'], $p_header['offset']); + + // ----- Write the 42 bytes of the header in the zip file + fputs($this->zip_fd, $v_binary_data, 46); + + // ----- Write the variable fields + if (strlen($p_header['stored_filename']) != 0) { + fputs($this->zip_fd, $p_header['stored_filename'], strlen($p_header['stored_filename'])); + } + if ($p_header['extra_len'] != 0) { + fputs($this->zip_fd, $p_header['extra'], $p_header['extra_len']); + } + if ($p_header['comment_len'] != 0) { + fputs($this->zip_fd, $p_header['comment'], $p_header['comment_len']); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privWriteCentralHeader() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privWriteCentralHeader($p_nb_entries, $p_size, $p_offset, $p_comment) + { + $v_result = 1; + + // ----- Packed data + $v_binary_data = pack("VvvvvVVv", 0x06054b50, 0, 0, $p_nb_entries, $p_nb_entries, $p_size, $p_offset, strlen($p_comment)); + + // ----- Write the 22 bytes of the header in the zip file + fputs($this->zip_fd, $v_binary_data, 22); + + // ----- Write the variable fields + if (strlen($p_comment) != 0) { + fputs($this->zip_fd, $p_comment, strlen($p_comment)); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privList() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privList(&$p_list) + { + $v_result = 1; + + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Open the zip file + if (($this->zip_fd = @fopen($this->zipname, 'rb')) == 0) { + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open archive \''.$this->zipname.'\' in binary read mode'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) { + $this->privSwapBackMagicQuotes(); + return $v_result; + } + + // ----- Go to beginning of Central Dir + @rewind($this->zip_fd); + if (@fseek($this->zip_fd, $v_central_dir['offset'])) { + $this->privSwapBackMagicQuotes(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read each entry + for ($i=0; $i<$v_central_dir['entries']; $i++) { + // ----- Read the file header + if (($v_result = $this->privReadCentralFileHeader($v_header)) != 1) { + $this->privSwapBackMagicQuotes(); + return $v_result; + } + $v_header['index'] = $i; + + // ----- Get the only interesting attributes + $this->privConvertHeader2FileInfo($v_header, $p_list[$i]); + unset($v_header); + } + + // ----- Close the zip file + $this->privCloseFd(); + + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privConvertHeader2FileInfo() + // Description : + // This function takes the file informations from the central directory + // entries and extract the interesting parameters that will be given back. + // The resulting file infos are set in the array $p_info + // $p_info['filename'] : Filename with full path. Given by user (add), + // extracted in the filesystem (extract). + // $p_info['stored_filename'] : Stored filename in the archive. + // $p_info['size'] = Size of the file. + // $p_info['compressed_size'] = Compressed size of the file. + // $p_info['mtime'] = Last modification date of the file. + // $p_info['comment'] = Comment associated with the file. + // $p_info['folder'] = true/false : indicates if the entry is a folder or not. + // $p_info['status'] = status of the action on the file. + // $p_info['crc'] = CRC of the file content. + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privConvertHeader2FileInfo($p_header, &$p_info) + { + $v_result=1; + + // ----- Get the interesting attributes + $v_temp_path = PclZipUtilPathReduction($p_header['filename']); + $p_info['filename'] = $v_temp_path; + $v_temp_path = PclZipUtilPathReduction($p_header['stored_filename']); + $p_info['stored_filename'] = $v_temp_path; + $p_info['size'] = $p_header['size']; + $p_info['compressed_size'] = $p_header['compressed_size']; + $p_info['mtime'] = $p_header['mtime']; + $p_info['comment'] = $p_header['comment']; + $p_info['folder'] = (($p_header['external']&0x00000010)==0x00000010); + $p_info['index'] = $p_header['index']; + $p_info['status'] = $p_header['status']; + $p_info['crc'] = $p_header['crc']; + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privExtractByRule() + // Description : + // Extract a file or directory depending of rules (by index, by name, ...) + // Parameters : + // $p_file_list : An array where will be placed the properties of each + // extracted file + // $p_path : Path to add while writing the extracted files + // $p_remove_path : Path to remove (from the file memorized path) while writing the + // extracted files. If the path does not match the file path, + // the file is extracted with its memorized path. + // $p_remove_path does not apply to 'list' mode. + // $p_path and $p_remove_path are commulative. + // Return Values : + // 1 on success,0 or less on error (see error code list) + // -------------------------------------------------------------------------------- + public function privExtractByRule(&$p_file_list, $p_path, $p_remove_path, $p_remove_all_path, &$p_options) + { + $v_result=1; + + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Check the path + if (($p_path == "") || ((substr($p_path, 0, 1) != "/") && (substr($p_path, 0, 3) != "../") && (substr($p_path, 1, 2)!=":/"))) { + $p_path = "./".$p_path; + } + + // ----- Reduce the path last (and duplicated) '/' + if (($p_path != "./") && ($p_path != "/")) { + // ----- Look for the path end '/' + while (substr($p_path, -1) == "/") { + $p_path = substr($p_path, 0, strlen($p_path)-1); + } + } + + // ----- Look for path to remove format (should end by /) + if (($p_remove_path != "") && (substr($p_remove_path, -1) != '/')) { + $p_remove_path .= '/'; + } + $p_remove_path_size = strlen($p_remove_path); + + // ----- Open the zip file + if (($v_result = $this->privOpenFd('rb')) != 1) { + $this->privSwapBackMagicQuotes(); + return $v_result; + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) { + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + return $v_result; + } + + // ----- Start at beginning of Central Dir + $v_pos_entry = $v_central_dir['offset']; + + // ----- Read each entry + $j_start = 0; + for ($i=0, $v_nb_extracted=0; $i<$v_central_dir['entries']; $i++) { + // ----- Read next Central dir entry + @rewind($this->zip_fd); + if (@fseek($this->zip_fd, $v_pos_entry)) { + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read the file header + $v_header = array(); + if (($v_result = $this->privReadCentralFileHeader($v_header)) != 1) { + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + return $v_result; + } + + // ----- Store the index + $v_header['index'] = $i; + + // ----- Store the file position + $v_pos_entry = ftell($this->zip_fd); + + // ----- Look for the specific extract rules + $v_extract = false; + + // ----- Look for extract by name rule + if ((isset($p_options[PCLZIP_OPT_BY_NAME])) && ($p_options[PCLZIP_OPT_BY_NAME] != 0)) { + // ----- Look if the filename is in the list + for ($j=0; ($j<sizeof($p_options[PCLZIP_OPT_BY_NAME])) && (!$v_extract); $j++) { + // ----- Look for a directory + if (substr($p_options[PCLZIP_OPT_BY_NAME][$j], -1) == "/") { + // ----- Look if the directory is in the filename path + if ((strlen($v_header['stored_filename']) > strlen($p_options[PCLZIP_OPT_BY_NAME][$j])) && (substr($v_header['stored_filename'], 0, strlen($p_options[PCLZIP_OPT_BY_NAME][$j])) == $p_options[PCLZIP_OPT_BY_NAME][$j])) { + $v_extract = true; + } + } elseif ($v_header['stored_filename'] == $p_options[PCLZIP_OPT_BY_NAME][$j]) { + // ----- Look for a filename + $v_extract = true; + } + } + } elseif ((isset($p_options[PCLZIP_OPT_BY_PREG])) && ($p_options[PCLZIP_OPT_BY_PREG] != "")) { + // ----- Look for extract by preg rule + if (preg_match($p_options[PCLZIP_OPT_BY_PREG], $v_header['stored_filename'])) { + $v_extract = true; + } + } elseif ((isset($p_options[PCLZIP_OPT_BY_INDEX])) && ($p_options[PCLZIP_OPT_BY_INDEX] != 0)) { + // ----- Look for extract by index rule + // ----- Look if the index is in the list + for ($j=$j_start; ($j<sizeof($p_options[PCLZIP_OPT_BY_INDEX])) && (!$v_extract); $j++) { + if (($i>=$p_options[PCLZIP_OPT_BY_INDEX][$j]['start']) && ($i<=$p_options[PCLZIP_OPT_BY_INDEX][$j]['end'])) { + $v_extract = true; + } + if ($i>=$p_options[PCLZIP_OPT_BY_INDEX][$j]['end']) { + $j_start = $j+1; + } + + if ($p_options[PCLZIP_OPT_BY_INDEX][$j]['start']>$i) { + break; + } + } + } else { + // ----- Look for no rule, which means extract all the archive + $v_extract = true; + } + + // ----- Check compression method + if (($v_extract) && (($v_header['compression'] != 8) && ($v_header['compression'] != 0))) { + $v_header['status'] = 'unsupported_compression'; + + // ----- Look for PCLZIP_OPT_STOP_ON_ERROR + if ((isset($p_options[PCLZIP_OPT_STOP_ON_ERROR])) && ($p_options[PCLZIP_OPT_STOP_ON_ERROR] === true)) { + $this->privSwapBackMagicQuotes(); + + PclZip::privErrorLog(PCLZIP_ERR_UNSUPPORTED_COMPRESSION, "Filename '".$v_header['stored_filename']."' is compressed by an unsupported compression method (".$v_header['compression'].") "); + + return PclZip::errorCode(); + } + } + + // ----- Check encrypted files + if (($v_extract) && (($v_header['flag'] & 1) == 1)) { + $v_header['status'] = 'unsupported_encryption'; + // ----- Look for PCLZIP_OPT_STOP_ON_ERROR + if ((isset($p_options[PCLZIP_OPT_STOP_ON_ERROR])) && ($p_options[PCLZIP_OPT_STOP_ON_ERROR] === true)) { + $this->privSwapBackMagicQuotes(); + + PclZip::privErrorLog(PCLZIP_ERR_UNSUPPORTED_ENCRYPTION, "Unsupported encryption for filename '".$v_header['stored_filename']."'"); + + return PclZip::errorCode(); + } + } + + // ----- Look for real extraction + if (($v_extract) && ($v_header['status'] != 'ok')) { + $v_result = $this->privConvertHeader2FileInfo($v_header, $p_file_list[$v_nb_extracted++]); + if ($v_result != 1) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result; + } + + $v_extract = false; + } + + // ----- Look for real extraction + if ($v_extract) { + // ----- Go to the file position + @rewind($this->zip_fd); + if (@fseek($this->zip_fd, $v_header['offset'])) { + // ----- Close the zip file + $this->privCloseFd(); + + $this->privSwapBackMagicQuotes(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Look for extraction as string + if ($p_options[PCLZIP_OPT_EXTRACT_AS_STRING]) { + $v_string = ''; + + // ----- Extracting the file + $v_result1 = $this->privExtractFileAsString($v_header, $v_string, $p_options); + if ($v_result1 < 1) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result1; + } + + // ----- Get the only interesting attributes + if (($v_result = $this->privConvertHeader2FileInfo($v_header, $p_file_list[$v_nb_extracted])) != 1) { + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + return $v_result; + } + + // ----- Set the file content + $p_file_list[$v_nb_extracted]['content'] = $v_string; + + // ----- Next extracted file + $v_nb_extracted++; + + // ----- Look for user callback abort + if ($v_result1 == 2) { + break; + } + } elseif ((isset($p_options[PCLZIP_OPT_EXTRACT_IN_OUTPUT])) && ($p_options[PCLZIP_OPT_EXTRACT_IN_OUTPUT])) { + // ----- Look for extraction in standard output + // ----- Extracting the file in standard output + $v_result1 = $this->privExtractFileInOutput($v_header, $p_options); + if ($v_result1 < 1) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result1; + } + + // ----- Get the only interesting attributes + if (($v_result = $this->privConvertHeader2FileInfo($v_header, $p_file_list[$v_nb_extracted++])) != 1) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result; + } + + // ----- Look for user callback abort + if ($v_result1 == 2) { + break; + } + } else { + // ----- Look for normal extraction + // ----- Extracting the file + $v_result1 = $this->privExtractFile($v_header, $p_path, $p_remove_path, $p_remove_all_path, $p_options); + if ($v_result1 < 1) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result1; + } + + // ----- Get the only interesting attributes + if (($v_result = $this->privConvertHeader2FileInfo($v_header, $p_file_list[$v_nb_extracted++])) != 1) { + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + return $v_result; + } + + // ----- Look for user callback abort + if ($v_result1 == 2) { + break; + } + } + } + } + + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privExtractFile() + // Description : + // Parameters : + // Return Values : + // + // 1 : ... ? + // PCLZIP_ERR_USER_ABORTED(2) : User ask for extraction stop in callback + // -------------------------------------------------------------------------------- + public function privExtractFile(&$p_entry, $p_path, $p_remove_path, $p_remove_all_path, &$p_options) + { + $v_result=1; + + // ----- Read the file header + if (($v_result = $this->privReadFileHeader($v_header)) != 1) { + // ----- Return + return $v_result; + } + + + // ----- Check that the file header is coherent with $p_entry info + if ($this->privCheckFileHeaders($v_header, $p_entry) != 1) { + // TBC + } + + // ----- Look for all path to remove + if ($p_remove_all_path == true) { + // ----- Look for folder entry that not need to be extracted + if (($p_entry['external']&0x00000010)==0x00000010) { + $p_entry['status'] = "filtered"; + + return $v_result; + } + + // ----- Get the basename of the path + $p_entry['filename'] = basename($p_entry['filename']); + } elseif ($p_remove_path != "") { + // ----- Look for path to remove + if (PclZipUtilPathInclusion($p_remove_path, $p_entry['filename']) == 2) { + // ----- Change the file status + $p_entry['status'] = "filtered"; + + // ----- Return + return $v_result; + } + + $p_remove_path_size = strlen($p_remove_path); + if (substr($p_entry['filename'], 0, $p_remove_path_size) == $p_remove_path) { + // ----- Remove the path + $p_entry['filename'] = substr($p_entry['filename'], $p_remove_path_size); + } + } + + // ----- Add the path + if ($p_path != '') { + $p_entry['filename'] = $p_path."/".$p_entry['filename']; + } + + // ----- Check a base_dir_restriction + if (isset($p_options[PCLZIP_OPT_EXTRACT_DIR_RESTRICTION])) { + $v_inclusion = PclZipUtilPathInclusion($p_options[PCLZIP_OPT_EXTRACT_DIR_RESTRICTION], $p_entry['filename']); + if ($v_inclusion == 0) { + PclZip::privErrorLog(PCLZIP_ERR_DIRECTORY_RESTRICTION, "Filename '".$p_entry['filename']."' is outside PCLZIP_OPT_EXTRACT_DIR_RESTRICTION"); + + return PclZip::errorCode(); + } + } + + // ----- Look for pre-extract callback + if (isset($p_options[PCLZIP_CB_PRE_EXTRACT])) { + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. + // eval('$v_result = '.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_PRE_EXTRACT](PCLZIP_CB_PRE_EXTRACT, $v_local_header); + if ($v_result == 0) { + // ----- Change the file status + $p_entry['status'] = "skipped"; + $v_result = 1; + } + + // ----- Look for abort result + if ($v_result == 2) { + // ----- This status is internal and will be changed in 'skipped' + $p_entry['status'] = "aborted"; + $v_result = PCLZIP_ERR_USER_ABORTED; + } + + // ----- Update the informations + // Only some fields can be modified + $p_entry['filename'] = $v_local_header['filename']; + } + + // ----- Look if extraction should be done + if ($p_entry['status'] == 'ok') { + // ----- Look for specific actions while the file exist + if (file_exists($p_entry['filename'])) { + // ----- Look if file is a directory + if (is_dir($p_entry['filename'])) { + // ----- Change the file status + $p_entry['status'] = "already_a_directory"; + + // ----- Look for PCLZIP_OPT_STOP_ON_ERROR + // For historical reason first PclZip implementation does not stop + // when this kind of error occurs. + if ((isset($p_options[PCLZIP_OPT_STOP_ON_ERROR])) && ($p_options[PCLZIP_OPT_STOP_ON_ERROR]===true)) { + PclZip::privErrorLog(PCLZIP_ERR_ALREADY_A_DIRECTORY, "Filename '".$p_entry['filename']."' is already used by an existing directory"); + return PclZip::errorCode(); + } + } elseif (!is_writeable($p_entry['filename'])) { + // ----- Look if file is write protected + // ----- Change the file status + $p_entry['status'] = "write_protected"; + + // ----- Look for PCLZIP_OPT_STOP_ON_ERROR + // For historical reason first PclZip implementation does not stop + // when this kind of error occurs. + if ((isset($p_options[PCLZIP_OPT_STOP_ON_ERROR])) && ($p_options[PCLZIP_OPT_STOP_ON_ERROR] === true)) { + PclZip::privErrorLog(PCLZIP_ERR_WRITE_OPEN_FAIL, "Filename '".$p_entry['filename']."' exists and is write protected"); + return PclZip::errorCode(); + } + } elseif (filemtime($p_entry['filename']) > $p_entry['mtime']) { + // ----- Look if the extracted file is older + // ----- Change the file status + if ((isset($p_options[PCLZIP_OPT_REPLACE_NEWER])) && ($p_options[PCLZIP_OPT_REPLACE_NEWER] === true)) { + } else { + $p_entry['status'] = "newer_exist"; + + // ----- Look for PCLZIP_OPT_STOP_ON_ERROR + // For historical reason first PclZip implementation does not stop + // when this kind of error occurs. + if ((isset($p_options[PCLZIP_OPT_STOP_ON_ERROR])) && ($p_options[PCLZIP_OPT_STOP_ON_ERROR] === true)) { + PclZip::privErrorLog(PCLZIP_ERR_WRITE_OPEN_FAIL, "Newer version of '".$p_entry['filename']."' exists and option PCLZIP_OPT_REPLACE_NEWER is not selected"); + return PclZip::errorCode(); + } + } + } else { + } + } else { + // ----- Check the directory availability and create it if necessary + if ((($p_entry['external']&0x00000010)==0x00000010) || (substr($p_entry['filename'], -1) == '/')) { + $v_dir_to_check = $p_entry['filename']; + } elseif (!strstr($p_entry['filename'], "/")) { + $v_dir_to_check = ""; + } else { + $v_dir_to_check = dirname($p_entry['filename']); + } + + if (($v_result = $this->privDirCheck($v_dir_to_check, (($p_entry['external']&0x00000010)==0x00000010))) != 1) { + // ----- Change the file status + $p_entry['status'] = "path_creation_fail"; + + // ----- Return + //return $v_result; + $v_result = 1; + } + } + } + + // ----- Look if extraction should be done + if ($p_entry['status'] == 'ok') { + // ----- Do the extraction (if not a folder) + if (!(($p_entry['external']&0x00000010) == 0x00000010)) { + // ----- Look for not compressed file + if ($p_entry['compression'] == 0) { + // ----- Opening destination file + if (($v_dest_file = @fopen($p_entry['filename'], 'wb')) == 0) { + // ----- Change the file status + $p_entry['status'] = "write_error"; + + // ----- Return + return $v_result; + } + + // ----- Read the file by PCLZIP_READ_BLOCK_SIZE octets blocks + $v_size = $p_entry['compressed_size']; + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($this->zip_fd, $v_read_size); + /* Try to speed up the code + $v_binary_data = pack('a'.$v_read_size, $v_buffer); + @fwrite($v_dest_file, $v_binary_data, $v_read_size); + */ + @fwrite($v_dest_file, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Closing the destination file + fclose($v_dest_file); + + // ----- Change the file mtime + touch($p_entry['filename'], $p_entry['mtime']); + } else { + // ----- TBC + // Need to be finished + if (($p_entry['flag'] & 1) == 1) { + PclZip::privErrorLog(PCLZIP_ERR_UNSUPPORTED_ENCRYPTION, 'File \''.$p_entry['filename'].'\' is encrypted. Encrypted files are not supported.'); + return PclZip::errorCode(); + } + + // ----- Look for using temporary file to unzip + if ((!isset($p_options[PCLZIP_OPT_TEMP_FILE_OFF])) && (isset($p_options[PCLZIP_OPT_TEMP_FILE_ON]) || (isset($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD]) && ($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD] <= $p_entry['size'])))) { + $v_result = $this->privExtractFileUsingTempFile($p_entry, $p_options); + if ($v_result < PCLZIP_ERR_NO_ERROR) { + return $v_result; + } + } else { + // ----- Look for extract in memory + // ----- Read the compressed file in a buffer (one shot) + $v_buffer = @fread($this->zip_fd, $p_entry['compressed_size']); + + // ----- Decompress the file + $v_file_content = @gzinflate($v_buffer); + unset($v_buffer); + if ($v_file_content === false) { + // ----- Change the file status + // TBC + $p_entry['status'] = "error"; + + return $v_result; + } + + // ----- Opening destination file + if (($v_dest_file = @fopen($p_entry['filename'], 'wb')) == 0) { + // ----- Change the file status + $p_entry['status'] = "write_error"; + + return $v_result; + } + + // ----- Write the uncompressed data + @fwrite($v_dest_file, $v_file_content, $p_entry['size']); + unset($v_file_content); + + // ----- Closing the destination file + @fclose($v_dest_file); + } + + // ----- Change the file mtime + @touch($p_entry['filename'], $p_entry['mtime']); + } + + // ----- Look for chmod option + if (isset($p_options[PCLZIP_OPT_SET_CHMOD])) { + // ----- Change the mode of the file + @chmod($p_entry['filename'], $p_options[PCLZIP_OPT_SET_CHMOD]); + } + } + } + + // ----- Change abort status + if ($p_entry['status'] == "aborted") { + $p_entry['status'] = "skipped"; + } elseif (isset($p_options[PCLZIP_CB_POST_EXTRACT])) { + // ----- Look for post-extract callback + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. + // eval('$v_result = '.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_POST_EXTRACT](PCLZIP_CB_POST_EXTRACT, $v_local_header); + + // ----- Look for abort result + if ($v_result == 2) { + $v_result = PCLZIP_ERR_USER_ABORTED; + } + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privExtractFileUsingTempFile() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privExtractFileUsingTempFile(&$p_entry, &$p_options) + { + $v_result=1; + + // ----- Creates a temporary file + $v_gzip_temp_name = PCLZIP_TEMPORARY_DIR.uniqid('pclzip-').'.gz'; + if (($v_dest_file = @fopen($v_gzip_temp_name, "wb")) == 0) { + fclose($v_file); + PclZip::privErrorLog(PCLZIP_ERR_WRITE_OPEN_FAIL, 'Unable to open temporary file \''.$v_gzip_temp_name.'\' in binary write mode'); + return PclZip::errorCode(); + } + + // ----- Write gz file format header + $v_binary_data = pack('va1a1Va1a1', 0x8b1f, Chr($p_entry['compression']), Chr(0x00), time(), Chr(0x00), Chr(3)); + @fwrite($v_dest_file, $v_binary_data, 10); + + // ----- Read the file by PCLZIP_READ_BLOCK_SIZE octets blocks + $v_size = $p_entry['compressed_size']; + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($this->zip_fd, $v_read_size); + //$v_binary_data = pack('a'.$v_read_size, $v_buffer); + @fwrite($v_dest_file, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Write gz file format footer + $v_binary_data = pack('VV', $p_entry['crc'], $p_entry['size']); + @fwrite($v_dest_file, $v_binary_data, 8); + + // ----- Close the temporary file + @fclose($v_dest_file); + + // ----- Opening destination file + if (($v_dest_file = @fopen($p_entry['filename'], 'wb')) == 0) { + $p_entry['status'] = "write_error"; + return $v_result; + } + + // ----- Open the temporary gz file + if (($v_src_file = @gzopen($v_gzip_temp_name, 'rb')) == 0) { + @fclose($v_dest_file); + $p_entry['status'] = "read_error"; + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open temporary file \''.$v_gzip_temp_name.'\' in binary read mode'); + return PclZip::errorCode(); + } + + // ----- Read the file by PCLZIP_READ_BLOCK_SIZE octets blocks + $v_size = $p_entry['size']; + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @gzread($v_src_file, $v_read_size); + //$v_binary_data = pack('a'.$v_read_size, $v_buffer); + @fwrite($v_dest_file, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + @fclose($v_dest_file); + @gzclose($v_src_file); + + // ----- Delete the temporary file + @unlink($v_gzip_temp_name); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privExtractFileInOutput() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privExtractFileInOutput(&$p_entry, &$p_options) + { + $v_result=1; + + // ----- Read the file header + if (($v_result = $this->privReadFileHeader($v_header)) != 1) { + return $v_result; + } + + // ----- Check that the file header is coherent with $p_entry info + if ($this->privCheckFileHeaders($v_header, $p_entry) != 1) { + // TBC + } + + // ----- Look for pre-extract callback + if (isset($p_options[PCLZIP_CB_PRE_EXTRACT])) { + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. + // eval('$v_result = '.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_PRE_EXTRACT](PCLZIP_CB_PRE_EXTRACT, $v_local_header); + if ($v_result == 0) { + // ----- Change the file status + $p_entry['status'] = "skipped"; + $v_result = 1; + } + + // ----- Look for abort result + if ($v_result == 2) { + // ----- This status is internal and will be changed in 'skipped' + $p_entry['status'] = "aborted"; + $v_result = PCLZIP_ERR_USER_ABORTED; + } + + // ----- Update the informations + // Only some fields can be modified + $p_entry['filename'] = $v_local_header['filename']; + } + + // ----- Trace + + // ----- Look if extraction should be done + if ($p_entry['status'] == 'ok') { + // ----- Do the extraction (if not a folder) + if (!(($p_entry['external']&0x00000010)==0x00000010)) { + // ----- Look for not compressed file + if ($p_entry['compressed_size'] == $p_entry['size']) { + // ----- Read the file in a buffer (one shot) + $v_buffer = @fread($this->zip_fd, $p_entry['compressed_size']); + + // ----- Send the file to the output + echo $v_buffer; + unset($v_buffer); + } else { + // ----- Read the compressed file in a buffer (one shot) + $v_buffer = @fread($this->zip_fd, $p_entry['compressed_size']); + + // ----- Decompress the file + $v_file_content = gzinflate($v_buffer); + unset($v_buffer); + + // ----- Send the file to the output + echo $v_file_content; + unset($v_file_content); + } + } + } + + // ----- Change abort status + if ($p_entry['status'] == "aborted") { + $p_entry['status'] = "skipped"; + } elseif (isset($p_options[PCLZIP_CB_POST_EXTRACT])) { + // ----- Look for post-extract callback + + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. + // eval('$v_result = '.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_POST_EXTRACT](PCLZIP_CB_POST_EXTRACT, $v_local_header); + + // ----- Look for abort result + if ($v_result == 2) { + $v_result = PCLZIP_ERR_USER_ABORTED; + } + } + + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privExtractFileAsString() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privExtractFileAsString(&$p_entry, &$p_string, &$p_options) + { + $v_result=1; + + // ----- Read the file header + $v_header = array(); + if (($v_result = $this->privReadFileHeader($v_header)) != 1) { + // ----- Return + return $v_result; + } + + // ----- Check that the file header is coherent with $p_entry info + if ($this->privCheckFileHeaders($v_header, $p_entry) != 1) { + // TBC + } + + // ----- Look for pre-extract callback + if (isset($p_options[PCLZIP_CB_PRE_EXTRACT])) { + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. + // eval('$v_result = '.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_PRE_EXTRACT](PCLZIP_CB_PRE_EXTRACT, $v_local_header); + if ($v_result == 0) { + // ----- Change the file status + $p_entry['status'] = "skipped"; + $v_result = 1; + } + + // ----- Look for abort result + if ($v_result == 2) { + // ----- This status is internal and will be changed in 'skipped' + $p_entry['status'] = "aborted"; + $v_result = PCLZIP_ERR_USER_ABORTED; + } + + // ----- Update the informations + // Only some fields can be modified + $p_entry['filename'] = $v_local_header['filename']; + } + + // ----- Look if extraction should be done + if ($p_entry['status'] == 'ok') { + // ----- Do the extraction (if not a folder) + if (!(($p_entry['external']&0x00000010)==0x00000010)) { + // ----- Look for not compressed file + // if ($p_entry['compressed_size'] == $p_entry['size']) + if ($p_entry['compression'] == 0) { + // ----- Reading the file + $p_string = @fread($this->zip_fd, $p_entry['compressed_size']); + } else { + // ----- Reading the file + $v_data = @fread($this->zip_fd, $p_entry['compressed_size']); + + // ----- Decompress the file + if (($p_string = @gzinflate($v_data)) === false) { + // TBC + } + } + // ----- Trace + } else { + // TBC : error : can not extract a folder in a string + } + } + + // ----- Change abort status + if ($p_entry['status'] == "aborted") { + $p_entry['status'] = "skipped"; + } elseif (isset($p_options[PCLZIP_CB_POST_EXTRACT])) { + // ----- Look for post-extract callback + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Swap the content to header + $v_local_header['content'] = $p_string; + $p_string = ''; + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. + // eval('$v_result = '.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_POST_EXTRACT](PCLZIP_CB_POST_EXTRACT, $v_local_header); + + // ----- Swap back the content to header + $p_string = $v_local_header['content']; + unset($v_local_header['content']); + + // ----- Look for abort result + if ($v_result == 2) { + $v_result = PCLZIP_ERR_USER_ABORTED; + } + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privReadFileHeader() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privReadFileHeader(&$p_header) + { + $v_result=1; + + // ----- Read the 4 bytes signature + $v_binary_data = @fread($this->zip_fd, 4); + $v_data = unpack('Vid', $v_binary_data); + + // ----- Check signature + if ($v_data['id'] != 0x04034b50) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'Invalid archive structure'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read the first 42 bytes of the header + $v_binary_data = fread($this->zip_fd, 26); + + // ----- Look for invalid block size + if (strlen($v_binary_data) != 26) { + $p_header['filename'] = ""; + $p_header['status'] = "invalid_header"; + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, "Invalid block size : ".strlen($v_binary_data)); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Extract the values + $v_data = unpack('vversion/vflag/vcompression/vmtime/vmdate/Vcrc/Vcompressed_size/Vsize/vfilename_len/vextra_len', $v_binary_data); + + // ----- Get filename + $p_header['filename'] = fread($this->zip_fd, $v_data['filename_len']); + + // ----- Get extra_fields + if ($v_data['extra_len'] != 0) { + $p_header['extra'] = fread($this->zip_fd, $v_data['extra_len']); + } else { + $p_header['extra'] = ''; + } + + // ----- Extract properties + $p_header['version_extracted'] = $v_data['version']; + $p_header['compression'] = $v_data['compression']; + $p_header['size'] = $v_data['size']; + $p_header['compressed_size'] = $v_data['compressed_size']; + $p_header['crc'] = $v_data['crc']; + $p_header['flag'] = $v_data['flag']; + $p_header['filename_len'] = $v_data['filename_len']; + + // ----- Recuperate date in UNIX format + $p_header['mdate'] = $v_data['mdate']; + $p_header['mtime'] = $v_data['mtime']; + if ($p_header['mdate'] && $p_header['mtime']) { + // ----- Extract time + $v_hour = ($p_header['mtime'] & 0xF800) >> 11; + $v_minute = ($p_header['mtime'] & 0x07E0) >> 5; + $v_seconde = ($p_header['mtime'] & 0x001F)*2; + + // ----- Extract date + $v_year = (($p_header['mdate'] & 0xFE00) >> 9) + 1980; + $v_month = ($p_header['mdate'] & 0x01E0) >> 5; + $v_day = $p_header['mdate'] & 0x001F; + + // ----- Get UNIX date format + $p_header['mtime'] = @mktime($v_hour, $v_minute, $v_seconde, $v_month, $v_day, $v_year); + + } else { + $p_header['mtime'] = time(); + } + + // TBC + //for(reset($v_data); $key = key($v_data); next($v_data)) { + //} + + // ----- Set the stored filename + $p_header['stored_filename'] = $p_header['filename']; + + // ----- Set the status field + $p_header['status'] = "ok"; + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privReadCentralFileHeader() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privReadCentralFileHeader(&$p_header) + { + $v_result = 1; + + // ----- Read the 4 bytes signature + $v_binary_data = @fread($this->zip_fd, 4); + $v_data = unpack('Vid', $v_binary_data); + + // ----- Check signature + if ($v_data['id'] != 0x02014b50) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'Invalid archive structure'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read the first 42 bytes of the header + $v_binary_data = fread($this->zip_fd, 42); + + // ----- Look for invalid block size + if (strlen($v_binary_data) != 42) { + $p_header['filename'] = ""; + $p_header['status'] = "invalid_header"; + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, "Invalid block size : ".strlen($v_binary_data)); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Extract the values + $p_header = unpack('vversion/vversion_extracted/vflag/vcompression/vmtime/vmdate/Vcrc/Vcompressed_size/Vsize/vfilename_len/vextra_len/vcomment_len/vdisk/vinternal/Vexternal/Voffset', $v_binary_data); + + // ----- Get filename + if ($p_header['filename_len'] != 0) { + $p_header['filename'] = fread($this->zip_fd, $p_header['filename_len']); + } else { + $p_header['filename'] = ''; + } + + // ----- Get extra + if ($p_header['extra_len'] != 0) { + $p_header['extra'] = fread($this->zip_fd, $p_header['extra_len']); + } else { + $p_header['extra'] = ''; + } + + // ----- Get comment + if ($p_header['comment_len'] != 0) { + $p_header['comment'] = fread($this->zip_fd, $p_header['comment_len']); + } else { + $p_header['comment'] = ''; + } + + // ----- Extract properties + + // ----- Recuperate date in UNIX format + //if ($p_header['mdate'] && $p_header['mtime']) + // TBC : bug : this was ignoring time with 0/0/0 + if (1) { + // ----- Extract time + $v_hour = ($p_header['mtime'] & 0xF800) >> 11; + $v_minute = ($p_header['mtime'] & 0x07E0) >> 5; + $v_seconde = ($p_header['mtime'] & 0x001F)*2; + + // ----- Extract date + $v_year = (($p_header['mdate'] & 0xFE00) >> 9) + 1980; + $v_month = ($p_header['mdate'] & 0x01E0) >> 5; + $v_day = $p_header['mdate'] & 0x001F; + + // ----- Get UNIX date format + $p_header['mtime'] = @mktime($v_hour, $v_minute, $v_seconde, $v_month, $v_day, $v_year); + + } else { + $p_header['mtime'] = time(); + } + + // ----- Set the stored filename + $p_header['stored_filename'] = $p_header['filename']; + + // ----- Set default status to ok + $p_header['status'] = 'ok'; + + // ----- Look if it is a directory + if (substr($p_header['filename'], -1) == '/') { + //$p_header['external'] = 0x41FF0010; + $p_header['external'] = 0x00000010; + } + + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privCheckFileHeaders() + // Description : + // Parameters : + // Return Values : + // 1 on success, + // 0 on error; + // -------------------------------------------------------------------------------- + public function privCheckFileHeaders(&$p_local_header, &$p_central_header) + { + $v_result=1; + + // ----- Check the static values + // TBC + if ($p_local_header['filename'] != $p_central_header['filename']) { + } + if ($p_local_header['version_extracted'] != $p_central_header['version_extracted']) { + } + if ($p_local_header['flag'] != $p_central_header['flag']) { + } + if ($p_local_header['compression'] != $p_central_header['compression']) { + } + if ($p_local_header['mtime'] != $p_central_header['mtime']) { + } + if ($p_local_header['filename_len'] != $p_central_header['filename_len']) { + } + + // ----- Look for flag bit 3 + if (($p_local_header['flag'] & 8) == 8) { + $p_local_header['size'] = $p_central_header['size']; + $p_local_header['compressed_size'] = $p_central_header['compressed_size']; + $p_local_header['crc'] = $p_central_header['crc']; + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privReadEndCentralDir() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privReadEndCentralDir(&$p_central_dir) + { + $v_result=1; + + // ----- Go to the end of the zip file + $v_size = filesize($this->zipname); + @fseek($this->zip_fd, $v_size); + if (@ftell($this->zip_fd) != $v_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'Unable to go to the end of the archive \''.$this->zipname.'\''); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- First try : look if this is an archive with no commentaries (most of the time) + // in this case the end of central dir is at 22 bytes of the file end + $v_found = 0; + if ($v_size > 26) { + @fseek($this->zip_fd, $v_size-22); + if (($v_pos = @ftell($this->zip_fd)) != ($v_size-22)) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'Unable to seek back to the middle of the archive \''.$this->zipname.'\''); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read for bytes + $v_binary_data = @fread($this->zip_fd, 4); + $v_data = @unpack('Vid', $v_binary_data); + + // ----- Check signature + if ($v_data['id'] == 0x06054b50) { + $v_found = 1; + } + + $v_pos = ftell($this->zip_fd); + } + + // ----- Go back to the maximum possible size of the Central Dir End Record + if (!$v_found) { + $v_maximum_size = 65557; // 0xFFFF + 22; + if ($v_maximum_size > $v_size) { + $v_maximum_size = $v_size; + } + @fseek($this->zip_fd, $v_size-$v_maximum_size); + if (@ftell($this->zip_fd) != ($v_size-$v_maximum_size)) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'Unable to seek back to the middle of the archive \''.$this->zipname.'\''); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read byte per byte in order to find the signature + $v_pos = ftell($this->zip_fd); + $v_bytes = 0x00000000; + while ($v_pos < $v_size) { + // ----- Read a byte + $v_byte = @fread($this->zip_fd, 1); + + // ----- Add the byte + //$v_bytes = ($v_bytes << 8) | Ord($v_byte); + // Note we mask the old value down such that once shifted we can never end up with more than a 32bit number + // Otherwise on systems where we have 64bit integers the check below for the magic number will fail. + $v_bytes = (($v_bytes & 0xFFFFFF) << 8) | Ord($v_byte); + + // ----- Compare the bytes + if ($v_bytes == 0x504b0506) { + $v_pos++; + break; + } + + $v_pos++; + } + + // ----- Look if not found end of central dir + if ($v_pos == $v_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, "Unable to find End of Central Dir Record signature"); + + // ----- Return + return PclZip::errorCode(); + } + } + + // ----- Read the first 18 bytes of the header + $v_binary_data = fread($this->zip_fd, 18); + + // ----- Look for invalid block size + if (strlen($v_binary_data) != 18) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, "Invalid End of Central Dir Record size : ".strlen($v_binary_data)); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Extract the values + $v_data = unpack('vdisk/vdisk_start/vdisk_entries/ventries/Vsize/Voffset/vcomment_size', $v_binary_data); + + // ----- Check the global size + if (($v_pos + $v_data['comment_size'] + 18) != $v_size) { + // ----- Removed in release 2.2 see readme file + // The check of the file size is a little too strict. + // Some bugs where found when a zip is encrypted/decrypted with 'crypt'. + // While decrypted, zip has training 0 bytes + if (0) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'The central dir is not at the end of the archive. Some trailing bytes exists after the archive.'); + + // ----- Return + return PclZip::errorCode(); + } + } + + // ----- Get comment + if ($v_data['comment_size'] != 0) { + $p_central_dir['comment'] = fread($this->zip_fd, $v_data['comment_size']); + } else { + $p_central_dir['comment'] = ''; + } + + $p_central_dir['entries'] = $v_data['entries']; + $p_central_dir['disk_entries'] = $v_data['disk_entries']; + $p_central_dir['offset'] = $v_data['offset']; + $p_central_dir['size'] = $v_data['size']; + $p_central_dir['disk'] = $v_data['disk']; + $p_central_dir['disk_start'] = $v_data['disk_start']; + + // TBC + //for(reset($p_central_dir); $key = key($p_central_dir); next($p_central_dir)) { + //} + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privDeleteByRule() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privDeleteByRule(&$p_result_list, &$p_options) + { + $v_result=1; + $v_list_detail = array(); + + // ----- Open the zip file + if (($v_result=$this->privOpenFd('rb')) != 1) { + // ----- Return + return $v_result; + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) { + $this->privCloseFd(); + return $v_result; + } + + // ----- Go to beginning of File + @rewind($this->zip_fd); + + // ----- Scan all the files + // ----- Start at beginning of Central Dir + $v_pos_entry = $v_central_dir['offset']; + @rewind($this->zip_fd); + if (@fseek($this->zip_fd, $v_pos_entry)) { + // ----- Close the zip file + $this->privCloseFd(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read each entry + $v_header_list = array(); + $j_start = 0; + for ($i=0, $v_nb_extracted=0; $i<$v_central_dir['entries']; $i++) { + // ----- Read the file header + $v_header_list[$v_nb_extracted] = array(); + if (($v_result = $this->privReadCentralFileHeader($v_header_list[$v_nb_extracted])) != 1) { + // ----- Close the zip file + $this->privCloseFd(); + + return $v_result; + } + + + // ----- Store the index + $v_header_list[$v_nb_extracted]['index'] = $i; + + // ----- Look for the specific extract rules + $v_found = false; + + // ----- Look for extract by name rule + if ((isset($p_options[PCLZIP_OPT_BY_NAME])) && ($p_options[PCLZIP_OPT_BY_NAME] != 0)) { + // ----- Look if the filename is in the list + for ($j=0; ($j<sizeof($p_options[PCLZIP_OPT_BY_NAME])) && (!$v_found); $j++) { + // ----- Look for a directory + if (substr($p_options[PCLZIP_OPT_BY_NAME][$j], -1) == "/") { + // ----- Look if the directory is in the filename path + if ((strlen($v_header_list[$v_nb_extracted]['stored_filename']) > strlen($p_options[PCLZIP_OPT_BY_NAME][$j])) && (substr($v_header_list[$v_nb_extracted]['stored_filename'], 0, strlen($p_options[PCLZIP_OPT_BY_NAME][$j])) == $p_options[PCLZIP_OPT_BY_NAME][$j])) { + $v_found = true; + } elseif ((($v_header_list[$v_nb_extracted]['external']&0x00000010)==0x00000010) /* Indicates a folder */ && ($v_header_list[$v_nb_extracted]['stored_filename'].'/' == $p_options[PCLZIP_OPT_BY_NAME][$j])) { + $v_found = true; + } + } elseif ($v_header_list[$v_nb_extracted]['stored_filename'] == $p_options[PCLZIP_OPT_BY_NAME][$j]) { + // ----- Look for a filename + $v_found = true; + } + } + } elseif ((isset($p_options[PCLZIP_OPT_BY_PREG])) && ($p_options[PCLZIP_OPT_BY_PREG] != "")) { + // ----- Look for extract by preg rule + if (preg_match($p_options[PCLZIP_OPT_BY_PREG], $v_header_list[$v_nb_extracted]['stored_filename'])) { + $v_found = true; + } + } elseif ((isset($p_options[PCLZIP_OPT_BY_INDEX])) && ($p_options[PCLZIP_OPT_BY_INDEX] != 0)) { + // ----- Look for extract by index rule + // ----- Look if the index is in the list + for ($j=$j_start; ($j<sizeof($p_options[PCLZIP_OPT_BY_INDEX])) && (!$v_found); $j++) { + if (($i>=$p_options[PCLZIP_OPT_BY_INDEX][$j]['start']) && ($i<=$p_options[PCLZIP_OPT_BY_INDEX][$j]['end'])) { + $v_found = true; + } + if ($i>=$p_options[PCLZIP_OPT_BY_INDEX][$j]['end']) { + $j_start = $j+1; + } + if ($p_options[PCLZIP_OPT_BY_INDEX][$j]['start']>$i) { + break; + } + } + } else { + $v_found = true; + } + + // ----- Look for deletion + if ($v_found) { + unset($v_header_list[$v_nb_extracted]); + } else { + $v_nb_extracted++; + } + } + + // ----- Look if something need to be deleted + if ($v_nb_extracted > 0) { + // ----- Creates a temporay file + $v_zip_temp_name = PCLZIP_TEMPORARY_DIR.uniqid('pclzip-').'.tmp'; + + // ----- Creates a temporary zip archive + $v_temp_zip = new PclZip($v_zip_temp_name); + + // ----- Open the temporary zip file in write mode + if (($v_result = $v_temp_zip->privOpenFd('wb')) != 1) { + $this->privCloseFd(); + + // ----- Return + return $v_result; + } + + // ----- Look which file need to be kept + for ($i=0; $i<sizeof($v_header_list); $i++) { + // ----- Calculate the position of the header + @rewind($this->zip_fd); + if (@fseek($this->zip_fd, $v_header_list[$i]['offset'])) { + // ----- Close the zip file + $this->privCloseFd(); + $v_temp_zip->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read the file header + $v_local_header = array(); + if (($v_result = $this->privReadFileHeader($v_local_header)) != 1) { + // ----- Close the zip file + $this->privCloseFd(); + $v_temp_zip->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Return + return $v_result; + } + + // ----- Check that local file header is same as central file header + if ($this->privCheckFileHeaders($v_local_header, $v_header_list[$i]) != 1) { + // TBC + } + unset($v_local_header); + + // ----- Write the file header + if (($v_result = $v_temp_zip->privWriteFileHeader($v_header_list[$i])) != 1) { + // ----- Close the zip file + $this->privCloseFd(); + $v_temp_zip->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Return + return $v_result; + } + + // ----- Read/write the data block + if (($v_result = PclZipUtilCopyBlock($this->zip_fd, $v_temp_zip->zip_fd, $v_header_list[$i]['compressed_size'])) != 1) { + // ----- Close the zip file + $this->privCloseFd(); + $v_temp_zip->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Return + return $v_result; + } + } + + // ----- Store the offset of the central dir + $v_offset = @ftell($v_temp_zip->zip_fd); + + // ----- Re-Create the Central Dir files header + for ($i=0; $i<sizeof($v_header_list); $i++) { + // ----- Create the file header + if (($v_result = $v_temp_zip->privWriteCentralFileHeader($v_header_list[$i])) != 1) { + $v_temp_zip->privCloseFd(); + $this->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Return + return $v_result; + } + + // ----- Transform the header to a 'usable' info + $v_temp_zip->privConvertHeader2FileInfo($v_header_list[$i], $p_result_list[$i]); + } + + + // ----- Zip file comment + $v_comment = ''; + if (isset($p_options[PCLZIP_OPT_COMMENT])) { + $v_comment = $p_options[PCLZIP_OPT_COMMENT]; + } + + // ----- Calculate the size of the central header + $v_size = @ftell($v_temp_zip->zip_fd)-$v_offset; + + // ----- Create the central dir footer + if (($v_result = $v_temp_zip->privWriteCentralHeader(sizeof($v_header_list), $v_size, $v_offset, $v_comment)) != 1) { + // ----- Reset the file list + unset($v_header_list); + $v_temp_zip->privCloseFd(); + $this->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Return + return $v_result; + } + + // ----- Close + $v_temp_zip->privCloseFd(); + $this->privCloseFd(); + + // ----- Delete the zip file + // TBC : I should test the result ... + @unlink($this->zipname); + + // ----- Rename the temporary file + // TBC : I should test the result ... + //@rename($v_zip_temp_name, $this->zipname); + PclZipUtilRename($v_zip_temp_name, $this->zipname); + + // ----- Destroy the temporary archive + unset($v_temp_zip); + } elseif ($v_central_dir['entries'] != 0) { + // ----- Remove every files : reset the file + $this->privCloseFd(); + + if (($v_result = $this->privOpenFd('wb')) != 1) { + return $v_result; + } + + if (($v_result = $this->privWriteCentralHeader(0, 0, 0, '')) != 1) { + return $v_result; + } + + $this->privCloseFd(); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privDirCheck() + // Description : + // Check if a directory exists, if not it creates it and all the parents directory + // which may be useful. + // Parameters : + // $p_dir : Directory path to check. + // Return Values : + // 1 : OK + // -1 : Unable to create directory + // -------------------------------------------------------------------------------- + public function privDirCheck($p_dir, $p_is_dir = false) + { + $v_result = 1; + + // ----- Remove the final '/' + if (($p_is_dir) && (substr($p_dir, -1)=='/')) { + $p_dir = substr($p_dir, 0, strlen($p_dir)-1); + } + + // ----- Check the directory availability + if ((is_dir($p_dir)) || ($p_dir == "")) { + return 1; + } + + // ----- Extract parent directory + $p_parent_dir = dirname($p_dir); + + // ----- Just a check + if ($p_parent_dir != $p_dir) { + // ----- Look for parent directory + if ($p_parent_dir != "") { + if (($v_result = $this->privDirCheck($p_parent_dir)) != 1) { + return $v_result; + } + } + } + + // ----- Create the directory + if (!@mkdir($p_dir, 0777)) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_DIR_CREATE_FAIL, "Unable to create directory '$p_dir'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privMerge() + // Description : + // If $p_archive_to_add does not exist, the function exit with a success result. + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privMerge(&$p_archive_to_add) + { + $v_result=1; + + // ----- Look if the archive_to_add exists + if (!is_file($p_archive_to_add->zipname)) { + // ----- Nothing to merge, so merge is a success + $v_result = 1; + + // ----- Return + return $v_result; + } + + // ----- Look if the archive exists + if (!is_file($this->zipname)) { + // ----- Do a duplicate + $v_result = $this->privDuplicate($p_archive_to_add->zipname); + + // ----- Return + return $v_result; + } + + // ----- Open the zip file + if (($v_result=$this->privOpenFd('rb')) != 1) { + // ----- Return + return $v_result; + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) { + $this->privCloseFd(); + return $v_result; + } + + // ----- Go to beginning of File + @rewind($this->zip_fd); + + // ----- Open the archive_to_add file + if (($v_result=$p_archive_to_add->privOpenFd('rb')) != 1) { + $this->privCloseFd(); + + // ----- Return + return $v_result; + } + + // ----- Read the central directory informations + $v_central_dir_to_add = array(); + if (($v_result = $p_archive_to_add->privReadEndCentralDir($v_central_dir_to_add)) != 1) { + $this->privCloseFd(); + $p_archive_to_add->privCloseFd(); + + return $v_result; + } + + // ----- Go to beginning of File + @rewind($p_archive_to_add->zip_fd); + + // ----- Creates a temporay file + $v_zip_temp_name = PCLZIP_TEMPORARY_DIR.uniqid('pclzip-').'.tmp'; + + // ----- Open the temporary file in write mode + if (($v_zip_temp_fd = @fopen($v_zip_temp_name, 'wb')) == 0) { + $this->privCloseFd(); + $p_archive_to_add->privCloseFd(); + + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open temporary file \''.$v_zip_temp_name.'\' in binary write mode'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Copy the files from the archive to the temporary file + // TBC : Here I should better append the file and go back to erase the central dir + $v_size = $v_central_dir['offset']; + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = fread($this->zip_fd, $v_read_size); + @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Copy the files from the archive_to_add into the temporary file + $v_size = $v_central_dir_to_add['offset']; + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = fread($p_archive_to_add->zip_fd, $v_read_size); + @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Store the offset of the central dir + $v_offset = @ftell($v_zip_temp_fd); + + // ----- Copy the block of file headers from the old archive + $v_size = $v_central_dir['size']; + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($this->zip_fd, $v_read_size); + @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Copy the block of file headers from the archive_to_add + $v_size = $v_central_dir_to_add['size']; + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($p_archive_to_add->zip_fd, $v_read_size); + @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Merge the file comments + $v_comment = $v_central_dir['comment'].' '.$v_central_dir_to_add['comment']; + + // ----- Calculate the size of the (new) central header + $v_size = @ftell($v_zip_temp_fd)-$v_offset; + + // ----- Swap the file descriptor + // Here is a trick : I swap the temporary fd with the zip fd, in order to use + // the following methods on the temporary fil and not the real archive fd + $v_swap = $this->zip_fd; + $this->zip_fd = $v_zip_temp_fd; + $v_zip_temp_fd = $v_swap; + + // ----- Create the central dir footer + if (($v_result = $this->privWriteCentralHeader($v_central_dir['entries']+$v_central_dir_to_add['entries'], $v_size, $v_offset, $v_comment)) != 1) { + $this->privCloseFd(); + $p_archive_to_add->privCloseFd(); + @fclose($v_zip_temp_fd); + $this->zip_fd = null; + + // ----- Reset the file list + unset($v_header_list); + + // ----- Return + return $v_result; + } + + // ----- Swap back the file descriptor + $v_swap = $this->zip_fd; + $this->zip_fd = $v_zip_temp_fd; + $v_zip_temp_fd = $v_swap; + + // ----- Close + $this->privCloseFd(); + $p_archive_to_add->privCloseFd(); + + // ----- Close the temporary file + @fclose($v_zip_temp_fd); + + // ----- Delete the zip file + // TBC : I should test the result ... + @unlink($this->zipname); + + // ----- Rename the temporary file + // TBC : I should test the result ... + //@rename($v_zip_temp_name, $this->zipname); + PclZipUtilRename($v_zip_temp_name, $this->zipname); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privDuplicate() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privDuplicate($p_archive_filename) + { + $v_result=1; + + // ----- Look if the $p_archive_filename exists + if (!is_file($p_archive_filename)) { + // ----- Nothing to duplicate, so duplicate is a success. + $v_result = 1; + + // ----- Return + return $v_result; + } + + // ----- Open the zip file + if (($v_result=$this->privOpenFd('wb')) != 1) { + // ----- Return + return $v_result; + } + + // ----- Open the temporary file in write mode + if (($v_zip_temp_fd = @fopen($p_archive_filename, 'rb')) == 0) { + $this->privCloseFd(); + + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open archive file \''.$p_archive_filename.'\' in binary write mode'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Copy the files from the archive to the temporary file + // TBC : Here I should better append the file and go back to erase the central dir + $v_size = filesize($p_archive_filename); + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = fread($v_zip_temp_fd, $v_read_size); + @fwrite($this->zip_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Close + $this->privCloseFd(); + + // ----- Close the temporary file + @fclose($v_zip_temp_fd); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privErrorLog() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + public function privErrorLog($p_error_code = 0, $p_error_string = '') + { + if (PCLZIP_ERROR_EXTERNAL == 1) { + PclError($p_error_code, $p_error_string); + } else { + $this->error_code = $p_error_code; + $this->error_string = $p_error_string; + } + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privErrorReset() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + public function privErrorReset() + { + if (PCLZIP_ERROR_EXTERNAL == 1) { + PclErrorReset(); + } else { + $this->error_code = 0; + $this->error_string = ''; + } + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privDisableMagicQuotes() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privDisableMagicQuotes() + { + $v_result=1; + + // ----- Look if function exists + if ((!function_exists("get_magic_quotes_runtime")) || (!function_exists("set_magic_quotes_runtime"))) { + return $v_result; + } + + // ----- Look if already done + if ($this->magic_quotes_status != -1) { + return $v_result; + } + + // ----- Get and memorize the magic_quote value + $this->magic_quotes_status = @get_magic_quotes_runtime(); + + // ----- Disable magic_quotes + if ($this->magic_quotes_status == 1) { + @set_magic_quotes_runtime(0); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privSwapBackMagicQuotes() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + public function privSwapBackMagicQuotes() + { + $v_result=1; + + // ----- Look if function exists + if ((!function_exists("get_magic_quotes_runtime")) || (!function_exists("set_magic_quotes_runtime"))) { + return $v_result; + } + + // ----- Look if something to do + if ($this->magic_quotes_status != -1) { + return $v_result; + } + + // ----- Swap back magic_quotes + if ($this->magic_quotes_status == 1) { + @set_magic_quotes_runtime($this->magic_quotes_status); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- +} +// End of class +// -------------------------------------------------------------------------------- + +// -------------------------------------------------------------------------------- +// Function : PclZipUtilPathReduction() +// Description : +// Parameters : +// Return Values : +// -------------------------------------------------------------------------------- +function PclZipUtilPathReduction($p_dir) +{ + $v_result = ""; + + // ----- Look for not empty path + if ($p_dir != "") { + // ----- Explode path by directory names + $v_list = explode("/", $p_dir); + + // ----- Study directories from last to first + $v_skip = 0; + for ($i=sizeof($v_list)-1; $i>=0; $i--) { + // ----- Look for current path + if ($v_list[$i] == ".") { + // ----- Ignore this directory + // Should be the first $i=0, but no check is done + } elseif ($v_list[$i] == "..") { + $v_skip++; + } elseif ($v_list[$i] == "") { + // ----- First '/' i.e. root slash + if ($i == 0) { + $v_result = "/".$v_result; + if ($v_skip > 0) { + // ----- It is an invalid path, so the path is not modified + // TBC + $v_result = $p_dir; + $v_skip = 0; + } + } elseif ($i == (sizeof($v_list)-1)) { + // ----- Last '/' i.e. indicates a directory + $v_result = $v_list[$i]; + } else { + // ----- Double '/' inside the path + // ----- Ignore only the double '//' in path, + // but not the first and last '/' + } + } else { + // ----- Look for item to skip + if ($v_skip > 0) { + $v_skip--; + } else { + $v_result = $v_list[$i].($i!=(sizeof($v_list)-1)?"/".$v_result:""); + } + } + } + + // ----- Look for skip + if ($v_skip > 0) { + while ($v_skip > 0) { + $v_result = '../'.$v_result; + $v_skip--; + } + } + } + + // ----- Return + return $v_result; +} +// -------------------------------------------------------------------------------- + +// -------------------------------------------------------------------------------- +// Function : PclZipUtilPathInclusion() +// Description : +// This function indicates if the path $p_path is under the $p_dir tree. Or, +// said in an other way, if the file or sub-dir $p_path is inside the dir +// $p_dir. +// The function indicates also if the path is exactly the same as the dir. +// This function supports path with duplicated '/' like '//', but does not +// support '.' or '..' statements. +// Parameters : +// Return Values : +// 0 if $p_path is not inside directory $p_dir +// 1 if $p_path is inside directory $p_dir +// 2 if $p_path is exactly the same as $p_dir +// -------------------------------------------------------------------------------- +function PclZipUtilPathInclusion($p_dir, $p_path) +{ + $v_result = 1; + + // ----- Look for path beginning by ./ + if (($p_dir == '.') || ((strlen($p_dir) >=2) && (substr($p_dir, 0, 2) == './'))) { + $p_dir = PclZipUtilTranslateWinPath(getcwd(), false).'/'.substr($p_dir, 1); + } + if (($p_path == '.') || ((strlen($p_path) >=2) && (substr($p_path, 0, 2) == './'))) { + $p_path = PclZipUtilTranslateWinPath(getcwd(), false).'/'.substr($p_path, 1); + } + + // ----- Explode dir and path by directory separator + $v_list_dir = explode("/", $p_dir); + $v_list_dir_size = sizeof($v_list_dir); + $v_list_path = explode("/", $p_path); + $v_list_path_size = sizeof($v_list_path); + + // ----- Study directories paths + $i = 0; + $j = 0; + while (($i < $v_list_dir_size) && ($j < $v_list_path_size) && ($v_result)) { + // ----- Look for empty dir (path reduction) + if ($v_list_dir[$i] == '') { + $i++; + continue; + } + if ($v_list_path[$j] == '') { + $j++; + continue; + } + + // ----- Compare the items + if (($v_list_dir[$i] != $v_list_path[$j]) && ($v_list_dir[$i] != '') && ($v_list_path[$j] != '')) { + $v_result = 0; + } + + // ----- Next items + $i++; + $j++; + } + + // ----- Look if everything seems to be the same + if ($v_result) { + // ----- Skip all the empty items + while (($j < $v_list_path_size) && ($v_list_path[$j] == '')) { + $j++; + } + while (($i < $v_list_dir_size) && ($v_list_dir[$i] == '')) { + $i++; + } + + if (($i >= $v_list_dir_size) && ($j >= $v_list_path_size)) { + // ----- There are exactly the same + $v_result = 2; + } elseif ($i < $v_list_dir_size) { + // ----- The path is shorter than the dir + $v_result = 0; + } + } + + // ----- Return + return $v_result; +} +// -------------------------------------------------------------------------------- + +// -------------------------------------------------------------------------------- +// Function : PclZipUtilCopyBlock() +// Description : +// Parameters : +// $p_mode : read/write compression mode +// 0 : src & dest normal +// 1 : src gzip, dest normal +// 2 : src normal, dest gzip +// 3 : src & dest gzip +// Return Values : +// -------------------------------------------------------------------------------- +function PclZipUtilCopyBlock($p_src, $p_dest, $p_size, $p_mode = 0) +{ + $v_result = 1; + + if ($p_mode==0) { + while ($p_size != 0) { + $v_read_size = ($p_size < PCLZIP_READ_BLOCK_SIZE ? $p_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($p_src, $v_read_size); + @fwrite($p_dest, $v_buffer, $v_read_size); + $p_size -= $v_read_size; + } + } elseif ($p_mode==1) { + while ($p_size != 0) { + $v_read_size = ($p_size < PCLZIP_READ_BLOCK_SIZE ? $p_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @gzread($p_src, $v_read_size); + @fwrite($p_dest, $v_buffer, $v_read_size); + $p_size -= $v_read_size; + } + } elseif ($p_mode==2) { + while ($p_size != 0) { + $v_read_size = ($p_size < PCLZIP_READ_BLOCK_SIZE ? $p_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($p_src, $v_read_size); + @gzwrite($p_dest, $v_buffer, $v_read_size); + $p_size -= $v_read_size; + } + } elseif ($p_mode==3) { + while ($p_size != 0) { + $v_read_size = ($p_size < PCLZIP_READ_BLOCK_SIZE ? $p_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @gzread($p_src, $v_read_size); + @gzwrite($p_dest, $v_buffer, $v_read_size); + $p_size -= $v_read_size; + } + } + + // ----- Return + return $v_result; +} +// -------------------------------------------------------------------------------- + +// -------------------------------------------------------------------------------- +// Function : PclZipUtilRename() +// Description : +// This function tries to do a simple rename() function. If it fails, it +// tries to copy the $p_src file in a new $p_dest file and then unlink the +// first one. +// Parameters : +// $p_src : Old filename +// $p_dest : New filename +// Return Values : +// 1 on success, 0 on failure. +// -------------------------------------------------------------------------------- +function PclZipUtilRename($p_src, $p_dest) +{ + $v_result = 1; + + // ----- Try to rename the files + if (!@rename($p_src, $p_dest)) { + // ----- Try to copy & unlink the src + if (!@copy($p_src, $p_dest)) { + $v_result = 0; + } elseif (!@unlink($p_src)) { + $v_result = 0; + } + } + + // ----- Return + return $v_result; +} +// -------------------------------------------------------------------------------- + +// -------------------------------------------------------------------------------- +// Function : PclZipUtilOptionText() +// Description : +// Translate option value in text. Mainly for debug purpose. +// Parameters : +// $p_option : the option value. +// Return Values : +// The option text value. +// -------------------------------------------------------------------------------- +function PclZipUtilOptionText($p_option) +{ + $v_list = get_defined_constants(); + for (reset($v_list); $v_key = key($v_list); next($v_list)) { + $v_prefix = substr($v_key, 0, 10); + if ((($v_prefix == 'PCLZIP_OPT') || ($v_prefix == 'PCLZIP_CB_') || ($v_prefix == 'PCLZIP_ATT')) && ($v_list[$v_key] == $p_option)) { + return $v_key; + } + } + + $v_result = 'Unknown'; + + return $v_result; +} +// -------------------------------------------------------------------------------- + +// -------------------------------------------------------------------------------- +// Function : PclZipUtilTranslateWinPath() +// Description : +// Translate windows path by replacing '\' by '/' and optionally removing +// drive letter. +// Parameters : +// $p_path : path to translate. +// $p_remove_disk_letter : true | false +// Return Values : +// The path translated. +// -------------------------------------------------------------------------------- +function PclZipUtilTranslateWinPath($p_path, $p_remove_disk_letter = true) +{ + if (stristr(php_uname(), 'windows')) { + // ----- Look for potential disk letter + if (($p_remove_disk_letter) && (($v_position = strpos($p_path, ':')) != false)) { + $p_path = substr($p_path, $v_position+1); + } + // ----- Change potential windows directory separator + if ((strpos($p_path, '\\') > 0) || (substr($p_path, 0, 1) == '\\')) { + $p_path = strtr($p_path, '\\', '/'); + } + } + return $p_path; +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/readme.txt b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/readme.txt new file mode 100644 index 0000000..d1b11e2 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PCLZip/readme.txt @@ -0,0 +1,421 @@ +// -------------------------------------------------------------------------------- +// PclZip 2.8.2 - readme.txt +// -------------------------------------------------------------------------------- +// License GNU/LGPL - August 2009 +// Vincent Blavet - vincent@phpconcept.net +// http://www.phpconcept.net +// -------------------------------------------------------------------------------- +// $Id: readme.txt,v 1.60 2009/09/30 20:35:21 vblavet Exp $ +// -------------------------------------------------------------------------------- + + + +0 - Sommaire +============ + 1 - Introduction + 2 - What's new + 3 - Corrected bugs + 4 - Known bugs or limitations + 5 - License + 6 - Warning + 7 - Documentation + 8 - Author + 9 - Contribute + +1 - Introduction +================ + + PclZip is a library that allow you to manage a Zip archive. + + Full documentation about PclZip can be found here : http://www.phpconcept.net/pclzip + +2 - What's new +============== + + Version 2.8.2 : + - PCLZIP_CB_PRE_EXTRACT and PCLZIP_CB_POST_EXTRACT are now supported with + extraction as a string (PCLZIP_OPT_EXTRACT_AS_STRING). The string + can also be modified in the post-extract call back. + **Bugs correction : + - PCLZIP_OPT_REMOVE_ALL_PATH was not working correctly + - Remove use of eval() and do direct call to callback functions + - Correct support of 64bits systems (Thanks to WordPress team) + + Version 2.8.1 : + - Move option PCLZIP_OPT_BY_EREG to PCLZIP_OPT_BY_PREG because ereg() is + deprecated in PHP 5.3. When using option PCLZIP_OPT_BY_EREG, PclZip will + automatically replace it by PCLZIP_OPT_BY_PREG. + + Version 2.8 : + - Improve extraction of zip archive for large files by using temporary files + This feature is working like the one defined in r2.7. + Options are renamed : PCLZIP_OPT_TEMP_FILE_ON, PCLZIP_OPT_TEMP_FILE_OFF, + PCLZIP_OPT_TEMP_FILE_THRESHOLD + - Add a ratio constant PCLZIP_TEMPORARY_FILE_RATIO to configure the auto + sense of temporary file use. + - Bug correction : Reduce filepath in returned file list to remove ennoying + './/' preambule in file path. + + Version 2.7 : + - Improve creation of zip archive for large files : + PclZip will now autosense the configured memory and use temporary files + when large file is suspected. + This feature can also ne triggered by manual options in create() and add() + methods. 'PCLZIP_OPT_ADD_TEMP_FILE_ON' force the use of temporary files, + 'PCLZIP_OPT_ADD_TEMP_FILE_OFF' disable the autosense technic, + 'PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD' allow for configuration of a size + threshold to use temporary files. + Using "temporary files" rather than "memory" might take more time, but + might give the ability to zip very large files : + Tested on my win laptop with a 88Mo file : + Zip "in-memory" : 18sec (max_execution_time=30, memory_limit=180Mo) + Zip "tmporary-files" : 23sec (max_execution_time=30, memory_limit=30Mo) + - Replace use of mktime() by time() to limit the E_STRICT error messages. + - Bug correction : When adding files with full windows path (drive letter) + PclZip is now working. Before, if the drive letter is not the default + path, PclZip was not able to add the file. + + Version 2.6 : + - Code optimisation + - New attributes PCLZIP_ATT_FILE_COMMENT gives the ability to + add a comment for a specific file. (Don't really know if this is usefull) + - New attribute PCLZIP_ATT_FILE_CONTENT gives the ability to add a string + as a file. + - New attribute PCLZIP_ATT_FILE_MTIME modify the timestamp associated with + a file. + - Correct a bug. Files archived with a timestamp with 0h0m0s were extracted + with current time + - Add CRC value in the informations returned back for each file after an + action. + - Add missing closedir() statement. + - When adding a folder, and removing the path of this folder, files were + incorrectly added with a '/' at the beginning. Which means files are + related to root in unix systems. Corrected. + - Add conditional if before constant definition. This will allow users + to redefine constants without changing the file, and then improve + upgrade of pclzip code for new versions. + + Version 2.5 : + - Introduce the ability to add file/folder with individual properties (file descriptor). + This gives for example the ability to change the filename of a zipped file. + . Able to add files individually + . Able to change full name + . Able to change short name + . Compatible with global options + - New attributes : PCLZIP_ATT_FILE_NAME, PCLZIP_ATT_FILE_NEW_SHORT_NAME, PCLZIP_ATT_FILE_NEW_FULL_NAME + - New error code : PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE + - Add a security control feature. PclZip can extract any file in any folder + of a system. People may use this to upload a zip file and try to override + a system file. The PCLZIP_OPT_EXTRACT_DIR_RESTRICTION will give the + ability to forgive any directory transversal behavior. + - New PCLZIP_OPT_EXTRACT_DIR_RESTRICTION : check extraction path + - New error code : PCLZIP_ERR_DIRECTORY_RESTRICTION + - Modification in PclZipUtilPathInclusion() : dir and path beginning with ./ will be prepend + by current path (getcwd()) + + Version 2.4 : + - Code improvment : try to speed up the code by removing unusefull call to pack() + - Correct bug in delete() : delete() should be called with no argument. This was not + the case in 2.3. This is corrected in 2.4. + - Correct a bug in path_inclusion function. When the path has several '../../', the + result was bad. + - Add a check for magic_quotes_runtime configuration. If enabled, PclZip will + disable it while working and det it back to its original value. + This resolve a lots of bad formated archive errors. + - Bug correction : PclZip now correctly unzip file in some specific situation, + when compressed content has same size as uncompressed content. + - Bug correction : When selecting option 'PCLZIP_OPT_REMOVE_ALL_PATH', + directories are not any more created. + - Code improvment : correct unclosed opendir(), better handling of . and .. in + loops. + + + Version 2.3 : + - Correct a bug with PHP5 : affecting the value 0xFE49FFE0 to a variable does not + give the same result in PHP4 and PHP5 .... + + Version 2.2 : + - Try development of PCLZIP_OPT_CRYPT ..... + However this becomes to a stop. To crypt/decrypt I need to multiply 2 long integers, + the result (greater than a long) is not supported by PHP. Even the use of bcmath + functions does not help. I did not find yet a solution ...; + - Add missing '/' at end of directory entries + - Check is a file is encrypted or not. Returns status 'unsupported_encryption' and/or + error code PCLZIP_ERR_UNSUPPORTED_ENCRYPTION. + - Corrected : Bad "version need to extract" field in local file header + - Add private method privCheckFileHeaders() in order to check local and central + file headers. PclZip is now supporting purpose bit flag bit 3. Purpose bit flag bit 3 gives + the ability to have a local file header without size, compressed size and crc filled. + - Add a generic status 'error' for file status + - Add control of compression type. PclZip only support deflate compression method. + Before v2.2, PclZip does not check the compression method used in an archive while + extracting. With v2.2 PclZip returns a new error status for a file using an unsupported + compression method. New status is "unsupported_compression". New error code is + PCLZIP_ERR_UNSUPPORTED_COMPRESSION. + - Add optional attribute PCLZIP_OPT_STOP_ON_ERROR. This will stop the extract of files + when errors like 'a folder with same name exists' or 'a newer file exists' or + 'a write protected file' exists, rather than set a status for the concerning file + and resume the extract of the zip. + - Add optional attribute PCLZIP_OPT_REPLACE_NEWER. This will force, during an extract' the + replacement of the file, even if a newer version of the file exists. + Note that today if a file with the same name already exists but is older it will be + replaced by the extracted one. + - Improve PclZipUtilOption() + - Support of zip archive with trailing bytes. Before 2.2, PclZip checks that the central + directory structure is the last data in the archive. Crypt encryption/decryption of + zip archive put trailing 0 bytes after decryption. PclZip is now supporting this. + + Version 2.1 : + - Add the ability to abort the extraction by using a user callback function. + The user can now return the value '2' in its callback which indicates to stop the + extraction. For a pre call-back extract is stopped before the extration of the current + file. For a post call back, the extraction is stopped after. + - Add the ability to extract a file (or several files) directly in the standard output. + This is done by the new parameter PCLZIP_OPT_EXTRACT_IN_OUTPUT with method extract(). + - Add support for parameters PCLZIP_OPT_COMMENT, PCLZIP_OPT_ADD_COMMENT, + PCLZIP_OPT_PREPEND_COMMENT. This will create, replace, add, or prepend comments + in the zip archive. + - When merging two archives, the comments are not any more lost, but merged, with a + blank space separator. + - Corrected bug : Files are not deleted when all files are asked to be deleted. + - Corrected bug : Folders with name '0' made PclZip to abort the create or add feature. + + + Version 2.0 : + ***** Warning : Some new features may break the backward compatibility for your scripts. + Please carefully read the readme file. + - Add the ability to delete by Index, name and regular expression. This feature is + performed by the method delete(), which uses the optional parameters + PCLZIP_OPT_BY_INDEX, PCLZIP_OPT_BY_NAME, PCLZIP_OPT_BY_EREG or PCLZIP_OPT_BY_PREG. + - Add the ability to extract by regular expression. To extract by regexp you must use the method + extract(), with the option PCLZIP_OPT_BY_EREG or PCLZIP_OPT_BY_PREG + (depending if you want to use ereg() or preg_match() syntax) followed by the + regular expression pattern. + - Add the ability to extract by index, directly with the extract() method. This is a + code improvment of the extractByIndex() method. + - Add the ability to extract by name. To extract by name you must use the method + extract(), with the option PCLZIP_OPT_BY_NAME followed by the filename to + extract or an array of filenames to extract. To extract all a folder, use the folder + name rather than the filename with a '/' at the end. + - Add the ability to add files without compression. This is done with a new attribute + which is PCLZIP_OPT_NO_COMPRESSION. + - Add the attribute PCLZIP_OPT_EXTRACT_AS_STRING, which allow to extract a file directly + in a string without using any file (or temporary file). + - Add constant PCLZIP_SEPARATOR for static configuration of filename separators in a single string. + The default separator is now a comma (,) and not any more a blank space. + THIS BREAK THE BACKWARD COMPATIBILITY : Please check if this may have an impact with + your script. + - Improve algorythm performance by removing the use of temporary files when adding or + extracting files in an archive. + - Add (correct) detection of empty filename zipping. This can occurs when the removed + path is the same + as a zipped dir. The dir is not zipped (['status'] = filtered), only its content. + - Add better support for windows paths (thanks for help from manus@manusfreedom.com). + - Corrected bug : When the archive file already exists with size=0, the add() method + fails. Corrected in 2.0. + - Remove the use of OS_WINDOWS constant. Use php_uname() function rather. + - Control the order of index ranges in extract by index feature. + - Change the internal management of folders (better handling of internal flag). + + + Version 1.3 : + - Removing the double include check. This is now done by include_once() and require_once() + PHP directives. + - Changing the error handling mecanism : Remove the use of an external error library. + The former PclError...() functions are replaced by internal equivalent methods. + By changing the environment variable PCLZIP_ERROR_EXTERNAL you can still use the former library. + Introducing the use of constants for error codes rather than integer values. This will help + in futur improvment. + Introduction of error handling functions like errorCode(), errorName() and errorInfo(). + - Remove the deprecated use of calling function with arguments passed by reference. + - Add the calling of extract(), extractByIndex(), create() and add() functions + with variable options rather than fixed arguments. + - Add the ability to remove all the file path while extracting or adding, + without any need to specify the path to remove. + This is available for extract(), extractByIndex(), create() and add() functionS by using + the new variable options parameters : + - PCLZIP_OPT_REMOVE_ALL_PATH : by indicating this option while calling the fct. + - Ability to change the mode of a file after the extraction (chmod()). + This is available for extract() and extractByIndex() functionS by using + the new variable options parameters. + - PCLZIP_OPT_SET_CHMOD : by setting the value of this option. + - Ability to definition call-back options. These call-back will be called during the adding, + or the extracting of file (extract(), extractByIndex(), create() and add() functions) : + - PCLZIP_CB_PRE_EXTRACT : will be called before each extraction of a file. The user + can trigerred the change the filename of the extracted file. The user can triggered the + skip of the extraction. This is adding a 'skipped' status in the file list result value. + - PCLZIP_CB_POST_EXTRACT : will be called after each extraction of a file. + Nothing can be triggered from that point. + - PCLZIP_CB_PRE_ADD : will be called before each add of a file. The user + can trigerred the change the stored filename of the added file. The user can triggered the + skip of the add. This is adding a 'skipped' status in the file list result value. + - PCLZIP_CB_POST_ADD : will be called after each add of a file. + Nothing can be triggered from that point. + - Two status are added in the file list returned as function result : skipped & filename_too_long + 'skipped' is used when a call-back function ask for skipping the file. + 'filename_too_long' is used while adding a file with a too long filename to archive (the file is + not added) + - Adding the function PclZipUtilPathInclusion(), that check the inclusion of a path into + a directory. + - Add a check of the presence of the archive file before some actions (like list, ...) + - Add the initialisation of field "index" in header array. This means that by + default index will be -1 when not explicitly set by the methods. + + Version 1.2 : + - Adding a duplicate function. + - Adding a merge function. The merge function is a "quick merge" function, + it just append the content of an archive at the end of the first one. There + is no check for duplicate files or more recent files. + - Improve the search of the central directory end. + + Version 1.1.2 : + + - Changing the license of PclZip. PclZip is now released under the GNU / LGPL license + (see License section). + - Adding the optional support of a static temporary directory. You will need to configure + the constant PCLZIP_TEMPORARY_DIR if you want to use this feature. + - Improving the rename() function. In some cases rename() does not work (different + Filesystems), so it will be replaced by a copy() + unlink() functions. + + Version 1.1.1 : + + - Maintenance release, no new feature. + + Version 1.1 : + + - New method Add() : adding files in the archive + - New method ExtractByIndex() : partial extract of the archive, files are identified by + their index in the archive + - New method DeleteByIndex() : delete some files/folder entries from the archive, + files are identified by their index in the archive. + - Adding a test of the zlib extension presence. If not present abort the script. + + Version 1.0.1 : + + - No new feature + + +3 - Corrected bugs +================== + + Corrected in Version 2.0 : + - Corrected : During an extraction, if a call-back fucntion is used and try to skip + a file, all the extraction process is stopped. + + Corrected in Version 1.3 : + - Corrected : Support of static synopsis for method extract() is broken. + - Corrected : invalid size of archive content field (0xFF) should be (0xFFFF). + - Corrected : When an extract is done with a remove_path parameter, the entry for + the directory with exactly the same path is not skipped/filtered. + - Corrected : extractByIndex() and deleteByIndex() were not managing index in the + right way. For example indexes '1,3-5,11' will only extract files 1 and 11. This + is due to a sort of the index resulting table that puts 11 before 3-5 (sort on + string and not interger). The sort is temporarilly removed, this means that + you must provide a sorted list of index ranges. + + Corrected in Version 1.2 : + + - Nothing. + + Corrected in Version 1.1.2 : + + - Corrected : Winzip is unable to delete or add new files in a PclZip created archives. + + Corrected in Version 1.1.1 : + + - Corrected : When archived file is not compressed (0% compression), the + extract method fails. + + Corrected in Version 1.1 : + + - Corrected : Adding a complete tree of folder may result in a bad archive + creation. + + Corrected in Version 1.0.1 : + + - Corrected : Error while compressing files greater than PCLZIP_READ_BLOCK_SIZE (default=1024). + + +4 - Known bugs or limitations +============================= + + Please publish bugs reports in SourceForge : + http://sourceforge.net/tracker/?group_id=40254&atid=427564 + + In Version 2.x : + - PclZip does only support file uncompressed or compressed with deflate (compression method 8) + - PclZip does not support password protected zip archive + - Some concern were seen when changing mtime of a file while archiving. + Seems to be linked to Daylight Saving Time (PclTest_changing_mtime). + + In Version 1.2 : + + - merge() methods does not check for duplicate files or last date of modifications. + + In Version 1.1 : + + - Limitation : Using 'extract' fields in the file header in the zip archive is not supported. + - WinZip is unable to delete a single file in a PclZip created archive. It is also unable to + add a file in a PclZip created archive. (Corrected in v.1.2) + + In Version 1.0.1 : + + - Adding a complete tree of folder may result in a bad archive + creation. (Corrected in V.1.1). + - Path given to methods must be in the unix format (/) and not the Windows format (\). + Workaround : Use only / directory separators. + - PclZip is using temporary files that are sometime the name of the file with a .tmp or .gz + added suffix. Files with these names may already exist and may be overwritten. + Workaround : none. + - PclZip does not check if the zlib extension is present. If it is absent, the zip + file is not created and the lib abort without warning. + Workaround : enable the zlib extension on the php install + + In Version 1.0 : + + - Error while compressing files greater than PCLZIP_READ_BLOCK_SIZE (default=1024). + (Corrected in v.1.0.1) + - Limitation : Multi-disk zip archive are not supported. + + +5 - License +=========== + + Since version 1.1.2, PclZip Library is released under GNU/LGPL license. + This library is free, so you can use it at no cost. + + HOWEVER, if you release a script, an application, a library or any kind of + code using PclZip library (or a part of it), YOU MUST : + - Indicate in the documentation (or a readme file), that your work + uses PclZip Library, and make a reference to the author and the web site + http://www.phpconcept.net + - Gives the ability to the final user to update the PclZip libary. + + I will also appreciate that you send me a mail (vincent@phpconcept.net), just to + be aware that someone is using PclZip. + + For more information about GNU/LGPL license : http://www.gnu.org + +6 - Warning +================= + + This library and the associated files are non commercial, non professional work. + It should not have unexpected results. However if any damage is caused by this software + the author can not be responsible. + The use of this software is at the risk of the user. + +7 - Documentation +================= + PclZip User Manuel is available in English on PhpConcept : http://www.phpconcept.net/pclzip/man/en/index.php + A Russian translation was done by Feskov Kuzma : http://php.russofile.ru/ru/authors/unsort/zip/ + +8 - Author +========== + + This software was written by Vincent Blavet (vincent@phpconcept.net) on its leasure time. + +9 - Contribute +============== + If you want to contribute to the development of PclZip, please contact vincent@phpconcept.net. + If you can help in financing PhpConcept hosting service, please go to + http://www.phpconcept.net/soutien.php diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PasswordHasher.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PasswordHasher.php new file mode 100644 index 0000000..946742b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/PasswordHasher.php @@ -0,0 +1,67 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Shared_PasswordHasher + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_PasswordHasher +{ + /** + * Create a password hash from a given string. + * + * This method is based on the algorithm provided by + * Daniel Rentz of OpenOffice and the PEAR package + * Spreadsheet_Excel_Writer by Xavier Noguer <xnoguer@rezebra.com>. + * + * @param string $pPassword Password to hash + * @return string Hashed password + */ + public static function hashPassword($pPassword = '') + { + $password = 0x0000; + $charPos = 1; // char position + + // split the plain text password in its component characters + $chars = preg_split('//', $pPassword, -1, PREG_SPLIT_NO_EMPTY); + foreach ($chars as $char) { + $value = ord($char) << $charPos++; // shifted ASCII value + $rotated_bits = $value >> 15; // rotated bits beyond bit 15 + $value &= 0x7fff; // first 15 bits + $password ^= ($value | $rotated_bits); + } + + $password ^= strlen($pPassword); + $password ^= 0xCE4B; + + return(strtoupper(dechex($password))); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/String.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/String.php new file mode 100644 index 0000000..fa1a64e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/String.php @@ -0,0 +1,819 @@ +<?php + +/** + * PHPExcel_Shared_String + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_String +{ + /** Constants */ + /** Regular Expressions */ + // Fraction + const STRING_REGEXP_FRACTION = '(-?)(\d+)\s+(\d+\/\d+)'; + + + /** + * Control characters array + * + * @var string[] + */ + private static $controlCharacters = array(); + + /** + * SYLK Characters array + * + * $var array + */ + private static $SYLKCharacters = array(); + + /** + * Decimal separator + * + * @var string + */ + private static $decimalSeparator; + + /** + * Thousands separator + * + * @var string + */ + private static $thousandsSeparator; + + /** + * Currency code + * + * @var string + */ + private static $currencyCode; + + /** + * Is mbstring extension avalable? + * + * @var boolean + */ + private static $isMbstringEnabled; + + /** + * Is iconv extension avalable? + * + * @var boolean + */ + private static $isIconvEnabled; + + /** + * Build control characters array + */ + private static function buildControlCharacters() + { + for ($i = 0; $i <= 31; ++$i) { + if ($i != 9 && $i != 10 && $i != 13) { + $find = '_x' . sprintf('%04s', strtoupper(dechex($i))) . '_'; + $replace = chr($i); + self::$controlCharacters[$find] = $replace; + } + } + } + + /** + * Build SYLK characters array + */ + private static function buildSYLKCharacters() + { + self::$SYLKCharacters = array( + "\x1B 0" => chr(0), + "\x1B 1" => chr(1), + "\x1B 2" => chr(2), + "\x1B 3" => chr(3), + "\x1B 4" => chr(4), + "\x1B 5" => chr(5), + "\x1B 6" => chr(6), + "\x1B 7" => chr(7), + "\x1B 8" => chr(8), + "\x1B 9" => chr(9), + "\x1B :" => chr(10), + "\x1B ;" => chr(11), + "\x1B <" => chr(12), + "\x1B :" => chr(13), + "\x1B >" => chr(14), + "\x1B ?" => chr(15), + "\x1B!0" => chr(16), + "\x1B!1" => chr(17), + "\x1B!2" => chr(18), + "\x1B!3" => chr(19), + "\x1B!4" => chr(20), + "\x1B!5" => chr(21), + "\x1B!6" => chr(22), + "\x1B!7" => chr(23), + "\x1B!8" => chr(24), + "\x1B!9" => chr(25), + "\x1B!:" => chr(26), + "\x1B!;" => chr(27), + "\x1B!<" => chr(28), + "\x1B!=" => chr(29), + "\x1B!>" => chr(30), + "\x1B!?" => chr(31), + "\x1B'?" => chr(127), + "\x1B(0" => '€', // 128 in CP1252 + "\x1B(2" => '‚', // 130 in CP1252 + "\x1B(3" => 'ƒ', // 131 in CP1252 + "\x1B(4" => '„', // 132 in CP1252 + "\x1B(5" => '…', // 133 in CP1252 + "\x1B(6" => '†', // 134 in CP1252 + "\x1B(7" => '‡', // 135 in CP1252 + "\x1B(8" => 'ˆ', // 136 in CP1252 + "\x1B(9" => '‰', // 137 in CP1252 + "\x1B(:" => 'Š', // 138 in CP1252 + "\x1B(;" => '‹', // 139 in CP1252 + "\x1BNj" => 'Œ', // 140 in CP1252 + "\x1B(>" => 'Ž', // 142 in CP1252 + "\x1B)1" => '‘', // 145 in CP1252 + "\x1B)2" => '’', // 146 in CP1252 + "\x1B)3" => '“', // 147 in CP1252 + "\x1B)4" => '”', // 148 in CP1252 + "\x1B)5" => '•', // 149 in CP1252 + "\x1B)6" => '–', // 150 in CP1252 + "\x1B)7" => '—', // 151 in CP1252 + "\x1B)8" => '˜', // 152 in CP1252 + "\x1B)9" => '™', // 153 in CP1252 + "\x1B):" => 'š', // 154 in CP1252 + "\x1B);" => '›', // 155 in CP1252 + "\x1BNz" => 'œ', // 156 in CP1252 + "\x1B)>" => 'ž', // 158 in CP1252 + "\x1B)?" => 'Ÿ', // 159 in CP1252 + "\x1B*0" => ' ', // 160 in CP1252 + "\x1BN!" => '¡', // 161 in CP1252 + "\x1BN\"" => '¢', // 162 in CP1252 + "\x1BN#" => '£', // 163 in CP1252 + "\x1BN(" => '¤', // 164 in CP1252 + "\x1BN%" => '¥', // 165 in CP1252 + "\x1B*6" => '¦', // 166 in CP1252 + "\x1BN'" => '§', // 167 in CP1252 + "\x1BNH " => '¨', // 168 in CP1252 + "\x1BNS" => '©', // 169 in CP1252 + "\x1BNc" => 'ª', // 170 in CP1252 + "\x1BN+" => '«', // 171 in CP1252 + "\x1B*<" => '¬', // 172 in CP1252 + "\x1B*=" => '­', // 173 in CP1252 + "\x1BNR" => '®', // 174 in CP1252 + "\x1B*?" => '¯', // 175 in CP1252 + "\x1BN0" => '°', // 176 in CP1252 + "\x1BN1" => '±', // 177 in CP1252 + "\x1BN2" => '²', // 178 in CP1252 + "\x1BN3" => '³', // 179 in CP1252 + "\x1BNB " => '´', // 180 in CP1252 + "\x1BN5" => 'µ', // 181 in CP1252 + "\x1BN6" => '¶', // 182 in CP1252 + "\x1BN7" => '·', // 183 in CP1252 + "\x1B+8" => '¸', // 184 in CP1252 + "\x1BNQ" => '¹', // 185 in CP1252 + "\x1BNk" => 'º', // 186 in CP1252 + "\x1BN;" => '»', // 187 in CP1252 + "\x1BN<" => '¼', // 188 in CP1252 + "\x1BN=" => '½', // 189 in CP1252 + "\x1BN>" => '¾', // 190 in CP1252 + "\x1BN?" => '¿', // 191 in CP1252 + "\x1BNAA" => 'À', // 192 in CP1252 + "\x1BNBA" => 'Á', // 193 in CP1252 + "\x1BNCA" => 'Â', // 194 in CP1252 + "\x1BNDA" => 'Ã', // 195 in CP1252 + "\x1BNHA" => 'Ä', // 196 in CP1252 + "\x1BNJA" => 'Å', // 197 in CP1252 + "\x1BNa" => 'Æ', // 198 in CP1252 + "\x1BNKC" => 'Ç', // 199 in CP1252 + "\x1BNAE" => 'È', // 200 in CP1252 + "\x1BNBE" => 'É', // 201 in CP1252 + "\x1BNCE" => 'Ê', // 202 in CP1252 + "\x1BNHE" => 'Ë', // 203 in CP1252 + "\x1BNAI" => 'Ì', // 204 in CP1252 + "\x1BNBI" => 'Í', // 205 in CP1252 + "\x1BNCI" => 'Î', // 206 in CP1252 + "\x1BNHI" => 'Ï', // 207 in CP1252 + "\x1BNb" => 'Ð', // 208 in CP1252 + "\x1BNDN" => 'Ñ', // 209 in CP1252 + "\x1BNAO" => 'Ò', // 210 in CP1252 + "\x1BNBO" => 'Ó', // 211 in CP1252 + "\x1BNCO" => 'Ô', // 212 in CP1252 + "\x1BNDO" => 'Õ', // 213 in CP1252 + "\x1BNHO" => 'Ö', // 214 in CP1252 + "\x1B-7" => '×', // 215 in CP1252 + "\x1BNi" => 'Ø', // 216 in CP1252 + "\x1BNAU" => 'Ù', // 217 in CP1252 + "\x1BNBU" => 'Ú', // 218 in CP1252 + "\x1BNCU" => 'Û', // 219 in CP1252 + "\x1BNHU" => 'Ü', // 220 in CP1252 + "\x1B-=" => 'Ý', // 221 in CP1252 + "\x1BNl" => 'Þ', // 222 in CP1252 + "\x1BN{" => 'ß', // 223 in CP1252 + "\x1BNAa" => 'à', // 224 in CP1252 + "\x1BNBa" => 'á', // 225 in CP1252 + "\x1BNCa" => 'â', // 226 in CP1252 + "\x1BNDa" => 'ã', // 227 in CP1252 + "\x1BNHa" => 'ä', // 228 in CP1252 + "\x1BNJa" => 'å', // 229 in CP1252 + "\x1BNq" => 'æ', // 230 in CP1252 + "\x1BNKc" => 'ç', // 231 in CP1252 + "\x1BNAe" => 'è', // 232 in CP1252 + "\x1BNBe" => 'é', // 233 in CP1252 + "\x1BNCe" => 'ê', // 234 in CP1252 + "\x1BNHe" => 'ë', // 235 in CP1252 + "\x1BNAi" => 'ì', // 236 in CP1252 + "\x1BNBi" => 'í', // 237 in CP1252 + "\x1BNCi" => 'î', // 238 in CP1252 + "\x1BNHi" => 'ï', // 239 in CP1252 + "\x1BNs" => 'ð', // 240 in CP1252 + "\x1BNDn" => 'ñ', // 241 in CP1252 + "\x1BNAo" => 'ò', // 242 in CP1252 + "\x1BNBo" => 'ó', // 243 in CP1252 + "\x1BNCo" => 'ô', // 244 in CP1252 + "\x1BNDo" => 'õ', // 245 in CP1252 + "\x1BNHo" => 'ö', // 246 in CP1252 + "\x1B/7" => '÷', // 247 in CP1252 + "\x1BNy" => 'ø', // 248 in CP1252 + "\x1BNAu" => 'ù', // 249 in CP1252 + "\x1BNBu" => 'ú', // 250 in CP1252 + "\x1BNCu" => 'û', // 251 in CP1252 + "\x1BNHu" => 'ü', // 252 in CP1252 + "\x1B/=" => 'ý', // 253 in CP1252 + "\x1BN|" => 'þ', // 254 in CP1252 + "\x1BNHy" => 'ÿ', // 255 in CP1252 + ); + } + + /** + * Get whether mbstring extension is available + * + * @return boolean + */ + public static function getIsMbstringEnabled() + { + if (isset(self::$isMbstringEnabled)) { + return self::$isMbstringEnabled; + } + + self::$isMbstringEnabled = function_exists('mb_convert_encoding') ? + true : false; + + return self::$isMbstringEnabled; + } + + /** + * Get whether iconv extension is available + * + * @return boolean + */ + public static function getIsIconvEnabled() + { + if (isset(self::$isIconvEnabled)) { + return self::$isIconvEnabled; + } + + // Fail if iconv doesn't exist + if (!function_exists('iconv')) { + self::$isIconvEnabled = false; + return false; + } + + // Sometimes iconv is not working, and e.g. iconv('UTF-8', 'UTF-16LE', 'x') just returns false, + if (!@iconv('UTF-8', 'UTF-16LE', 'x')) { + self::$isIconvEnabled = false; + return false; + } + + // Sometimes iconv_substr('A', 0, 1, 'UTF-8') just returns false in PHP 5.2.0 + // we cannot use iconv in that case either (http://bugs.php.net/bug.php?id=37773) + if (!@iconv_substr('A', 0, 1, 'UTF-8')) { + self::$isIconvEnabled = false; + return false; + } + + // CUSTOM: IBM AIX iconv() does not work + if (defined('PHP_OS') && @stristr(PHP_OS, 'AIX') && defined('ICONV_IMPL') && (@strcasecmp(ICONV_IMPL, 'unknown') == 0) && defined('ICONV_VERSION') && (@strcasecmp(ICONV_VERSION, 'unknown') == 0)) { + self::$isIconvEnabled = false; + return false; + } + + // If we reach here no problems were detected with iconv + self::$isIconvEnabled = true; + return true; + } + + public static function buildCharacterSets() + { + if (empty(self::$controlCharacters)) { + self::buildControlCharacters(); + } + if (empty(self::$SYLKCharacters)) { + self::buildSYLKCharacters(); + } + } + + /** + * Convert from OpenXML escaped control character to PHP control character + * + * Excel 2007 team: + * ---------------- + * That's correct, control characters are stored directly in the shared-strings table. + * We do encode characters that cannot be represented in XML using the following escape sequence: + * _xHHHH_ where H represents a hexadecimal character in the character's value... + * So you could end up with something like _x0008_ in a string (either in a cell value (<v>) + * element or in the shared string <t> element. + * + * @param string $value Value to unescape + * @return string + */ + public static function ControlCharacterOOXML2PHP($value = '') + { + return str_replace(array_keys(self::$controlCharacters), array_values(self::$controlCharacters), $value); + } + + /** + * Convert from PHP control character to OpenXML escaped control character + * + * Excel 2007 team: + * ---------------- + * That's correct, control characters are stored directly in the shared-strings table. + * We do encode characters that cannot be represented in XML using the following escape sequence: + * _xHHHH_ where H represents a hexadecimal character in the character's value... + * So you could end up with something like _x0008_ in a string (either in a cell value (<v>) + * element or in the shared string <t> element. + * + * @param string $value Value to escape + * @return string + */ + public static function ControlCharacterPHP2OOXML($value = '') + { + return str_replace(array_values(self::$controlCharacters), array_keys(self::$controlCharacters), $value); + } + + /** + * Try to sanitize UTF8, stripping invalid byte sequences. Not perfect. Does not surrogate characters. + * + * @param string $value + * @return string + */ + public static function SanitizeUTF8($value) + { + if (self::getIsIconvEnabled()) { + $value = @iconv('UTF-8', 'UTF-8', $value); + return $value; + } + + if (self::getIsMbstringEnabled()) { + $value = mb_convert_encoding($value, 'UTF-8', 'UTF-8'); + return $value; + } + + // else, no conversion + return $value; + } + + /** + * Check if a string contains UTF8 data + * + * @param string $value + * @return boolean + */ + public static function IsUTF8($value = '') + { + return $value === '' || preg_match('/^./su', $value) === 1; + } + + /** + * Formats a numeric value as a string for output in various output writers forcing + * point as decimal separator in case locale is other than English. + * + * @param mixed $value + * @return string + */ + public static function FormatNumber($value) + { + if (is_float($value)) { + return str_replace(',', '.', $value); + } + return (string) $value; + } + + /** + * Converts a UTF-8 string into BIFF8 Unicode string data (8-bit string length) + * Writes the string using uncompressed notation, no rich text, no Asian phonetics + * If mbstring extension is not available, ASCII is assumed, and compressed notation is used + * although this will give wrong results for non-ASCII strings + * see OpenOffice.org's Documentation of the Microsoft Excel File Format, sect. 2.5.3 + * + * @param string $value UTF-8 encoded string + * @param mixed[] $arrcRuns Details of rich text runs in $value + * @return string + */ + public static function UTF8toBIFF8UnicodeShort($value, $arrcRuns = array()) + { + // character count + $ln = self::CountCharacters($value, 'UTF-8'); + // option flags + if (empty($arrcRuns)) { + $opt = (self::getIsIconvEnabled() || self::getIsMbstringEnabled()) ? + 0x0001 : 0x0000; + $data = pack('CC', $ln, $opt); + // characters + $data .= self::ConvertEncoding($value, 'UTF-16LE', 'UTF-8'); + } else { + $data = pack('vC', $ln, 0x09); + $data .= pack('v', count($arrcRuns)); + // characters + $data .= self::ConvertEncoding($value, 'UTF-16LE', 'UTF-8'); + foreach ($arrcRuns as $cRun) { + $data .= pack('v', $cRun['strlen']); + $data .= pack('v', $cRun['fontidx']); + } + } + return $data; + } + + /** + * Converts a UTF-8 string into BIFF8 Unicode string data (16-bit string length) + * Writes the string using uncompressed notation, no rich text, no Asian phonetics + * If mbstring extension is not available, ASCII is assumed, and compressed notation is used + * although this will give wrong results for non-ASCII strings + * see OpenOffice.org's Documentation of the Microsoft Excel File Format, sect. 2.5.3 + * + * @param string $value UTF-8 encoded string + * @return string + */ + public static function UTF8toBIFF8UnicodeLong($value) + { + // character count + $ln = self::CountCharacters($value, 'UTF-8'); + + // option flags + $opt = (self::getIsIconvEnabled() || self::getIsMbstringEnabled()) ? + 0x0001 : 0x0000; + + // characters + $chars = self::ConvertEncoding($value, 'UTF-16LE', 'UTF-8'); + + $data = pack('vC', $ln, $opt) . $chars; + return $data; + } + + /** + * Convert string from one encoding to another. First try mbstring, then iconv, finally strlen + * + * @param string $value + * @param string $to Encoding to convert to, e.g. 'UTF-8' + * @param string $from Encoding to convert from, e.g. 'UTF-16LE' + * @return string + */ + public static function ConvertEncoding($value, $to, $from) + { + if (self::getIsIconvEnabled()) { + return iconv($from, $to, $value); + } + + if (self::getIsMbstringEnabled()) { + return mb_convert_encoding($value, $to, $from); + } + + if ($from == 'UTF-16LE') { + return self::utf16_decode($value, false); + } elseif ($from == 'UTF-16BE') { + return self::utf16_decode($value); + } + // else, no conversion + return $value; + } + + /** + * Decode UTF-16 encoded strings. + * + * Can handle both BOM'ed data and un-BOM'ed data. + * Assumes Big-Endian byte order if no BOM is available. + * This function was taken from http://php.net/manual/en/function.utf8-decode.php + * and $bom_be parameter added. + * + * @param string $str UTF-16 encoded data to decode. + * @return string UTF-8 / ISO encoded data. + * @access public + * @version 0.2 / 2010-05-13 + * @author Rasmus Andersson {@link http://rasmusandersson.se/} + * @author vadik56 + */ + public static function utf16_decode($str, $bom_be = true) + { + if (strlen($str) < 2) { + return $str; + } + $c0 = ord($str{0}); + $c1 = ord($str{1}); + if ($c0 == 0xfe && $c1 == 0xff) { + $str = substr($str, 2); + } elseif ($c0 == 0xff && $c1 == 0xfe) { + $str = substr($str, 2); + $bom_be = false; + } + $len = strlen($str); + $newstr = ''; + for ($i=0; $i<$len; $i+=2) { + if ($bom_be) { + $val = ord($str{$i}) << 4; + $val += ord($str{$i+1}); + } else { + $val = ord($str{$i+1}) << 4; + $val += ord($str{$i}); + } + $newstr .= ($val == 0x228) ? "\n" : chr($val); + } + return $newstr; + } + + /** + * Get character count. First try mbstring, then iconv, finally strlen + * + * @param string $value + * @param string $enc Encoding + * @return int Character count + */ + public static function CountCharacters($value, $enc = 'UTF-8') + { + if (self::getIsMbstringEnabled()) { + return mb_strlen($value, $enc); + } + + if (self::getIsIconvEnabled()) { + return iconv_strlen($value, $enc); + } + + // else strlen + return strlen($value); + } + + /** + * Get a substring of a UTF-8 encoded string. First try mbstring, then iconv, finally strlen + * + * @param string $pValue UTF-8 encoded string + * @param int $pStart Start offset + * @param int $pLength Maximum number of characters in substring + * @return string + */ + public static function Substring($pValue = '', $pStart = 0, $pLength = 0) + { + if (self::getIsMbstringEnabled()) { + return mb_substr($pValue, $pStart, $pLength, 'UTF-8'); + } + + if (self::getIsIconvEnabled()) { + return iconv_substr($pValue, $pStart, $pLength, 'UTF-8'); + } + + // else substr + return substr($pValue, $pStart, $pLength); + } + + /** + * Convert a UTF-8 encoded string to upper case + * + * @param string $pValue UTF-8 encoded string + * @return string + */ + public static function StrToUpper($pValue = '') + { + if (function_exists('mb_convert_case')) { + return mb_convert_case($pValue, MB_CASE_UPPER, "UTF-8"); + } + return strtoupper($pValue); + } + + /** + * Convert a UTF-8 encoded string to lower case + * + * @param string $pValue UTF-8 encoded string + * @return string + */ + public static function StrToLower($pValue = '') + { + if (function_exists('mb_convert_case')) { + return mb_convert_case($pValue, MB_CASE_LOWER, "UTF-8"); + } + return strtolower($pValue); + } + + /** + * Convert a UTF-8 encoded string to title/proper case + * (uppercase every first character in each word, lower case all other characters) + * + * @param string $pValue UTF-8 encoded string + * @return string + */ + public static function StrToTitle($pValue = '') + { + if (function_exists('mb_convert_case')) { + return mb_convert_case($pValue, MB_CASE_TITLE, "UTF-8"); + } + return ucwords($pValue); + } + + public static function mb_is_upper($char) + { + return mb_strtolower($char, "UTF-8") != $char; + } + + public static function mb_str_split($string) + { + # Split at all position not after the start: ^ + # and not before the end: $ + return preg_split('/(?<!^)(?!$)/u', $string); + } + + /** + * Reverse the case of a string, so that all uppercase characters become lowercase + * and all lowercase characters become uppercase + * + * @param string $pValue UTF-8 encoded string + * @return string + */ + public static function StrCaseReverse($pValue = '') + { + if (self::getIsMbstringEnabled()) { + $characters = self::mb_str_split($pValue); + foreach ($characters as &$character) { + if (self::mb_is_upper($character)) { + $character = mb_strtolower($character, 'UTF-8'); + } else { + $character = mb_strtoupper($character, 'UTF-8'); + } + } + return implode('', $characters); + } + return strtolower($pValue) ^ strtoupper($pValue) ^ $pValue; + } + + /** + * Identify whether a string contains a fractional numeric value, + * and convert it to a numeric if it is + * + * @param string &$operand string value to test + * @return boolean + */ + public static function convertToNumberIfFraction(&$operand) + { + if (preg_match('/^'.self::STRING_REGEXP_FRACTION.'$/i', $operand, $match)) { + $sign = ($match[1] == '-') ? '-' : '+'; + $fractionFormula = '='.$sign.$match[2].$sign.$match[3]; + $operand = PHPExcel_Calculation::getInstance()->_calculateFormulaValue($fractionFormula); + return true; + } + return false; + } // function convertToNumberIfFraction() + + /** + * Get the decimal separator. If it has not yet been set explicitly, try to obtain number + * formatting information from locale. + * + * @return string + */ + public static function getDecimalSeparator() + { + if (!isset(self::$decimalSeparator)) { + $localeconv = localeconv(); + self::$decimalSeparator = ($localeconv['decimal_point'] != '') + ? $localeconv['decimal_point'] : $localeconv['mon_decimal_point']; + + if (self::$decimalSeparator == '') { + // Default to . + self::$decimalSeparator = '.'; + } + } + return self::$decimalSeparator; + } + + /** + * Set the decimal separator. Only used by PHPExcel_Style_NumberFormat::toFormattedString() + * to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF + * + * @param string $pValue Character for decimal separator + */ + public static function setDecimalSeparator($pValue = '.') + { + self::$decimalSeparator = $pValue; + } + + /** + * Get the thousands separator. If it has not yet been set explicitly, try to obtain number + * formatting information from locale. + * + * @return string + */ + public static function getThousandsSeparator() + { + if (!isset(self::$thousandsSeparator)) { + $localeconv = localeconv(); + self::$thousandsSeparator = ($localeconv['thousands_sep'] != '') + ? $localeconv['thousands_sep'] : $localeconv['mon_thousands_sep']; + + if (self::$thousandsSeparator == '') { + // Default to . + self::$thousandsSeparator = ','; + } + } + return self::$thousandsSeparator; + } + + /** + * Set the thousands separator. Only used by PHPExcel_Style_NumberFormat::toFormattedString() + * to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF + * + * @param string $pValue Character for thousands separator + */ + public static function setThousandsSeparator($pValue = ',') + { + self::$thousandsSeparator = $pValue; + } + + /** + * Get the currency code. If it has not yet been set explicitly, try to obtain the + * symbol information from locale. + * + * @return string + */ + public static function getCurrencyCode() + { + if (!isset(self::$currencyCode)) { + $localeconv = localeconv(); + self::$currencyCode = ($localeconv['currency_symbol'] != '') + ? $localeconv['currency_symbol'] : $localeconv['int_curr_symbol']; + + if (self::$currencyCode == '') { + // Default to $ + self::$currencyCode = '$'; + } + } + return self::$currencyCode; + } + + /** + * Set the currency code. Only used by PHPExcel_Style_NumberFormat::toFormattedString() + * to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF + * + * @param string $pValue Character for currency code + */ + public static function setCurrencyCode($pValue = '$') + { + self::$currencyCode = $pValue; + } + + /** + * Convert SYLK encoded string to UTF-8 + * + * @param string $pValue + * @return string UTF-8 encoded string + */ + public static function SYLKtoUTF8($pValue = '') + { + // If there is no escape character in the string there is nothing to do + if (strpos($pValue, '') === false) { + return $pValue; + } + + foreach (self::$SYLKCharacters as $k => $v) { + $pValue = str_replace($k, $v, $pValue); + } + + return $pValue; + } + + /** + * Retrieve any leading numeric part of a string, or return the full string if no leading numeric + * (handles basic integer or float, but not exponent or non decimal) + * + * @param string $value + * @return mixed string or only the leading numeric part of the string + */ + public static function testStringAsNumeric($value) + { + if (is_numeric($value)) { + return $value; + } + $v = floatval($value); + return (is_numeric(substr($value, 0, strlen($v)))) ? $v : $value; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/TimeZone.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/TimeZone.php new file mode 100644 index 0000000..73373e0 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/TimeZone.php @@ -0,0 +1,144 @@ +<?php + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Shared_TimeZone + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_TimeZone +{ + /* + * Default Timezone used for date/time conversions + * + * @private + * @var string + */ + protected static $timezone = 'UTC'; + + /** + * Validate a Timezone name + * + * @param string $timezone Time zone (e.g. 'Europe/London') + * @return boolean Success or failure + */ + public static function _validateTimeZone($timezone) + { + if (in_array($timezone, DateTimeZone::listIdentifiers())) { + return true; + } + return false; + } + + /** + * Set the Default Timezone used for date/time conversions + * + * @param string $timezone Time zone (e.g. 'Europe/London') + * @return boolean Success or failure + */ + public static function setTimeZone($timezone) + { + if (self::_validateTimezone($timezone)) { + self::$timezone = $timezone; + return true; + } + return false; + } + + + /** + * Return the Default Timezone used for date/time conversions + * + * @return string Timezone (e.g. 'Europe/London') + */ + public static function getTimeZone() + { + return self::$timezone; + } + + + /** + * Return the Timezone transition for the specified timezone and timestamp + * + * @param DateTimeZone $objTimezone The timezone for finding the transitions + * @param integer $timestamp PHP date/time value for finding the current transition + * @return array The current transition details + */ + private static function getTimezoneTransitions($objTimezone, $timestamp) + { + $allTransitions = $objTimezone->getTransitions(); + $transitions = array(); + foreach ($allTransitions as $key => $transition) { + if ($transition['ts'] > $timestamp) { + $transitions[] = ($key > 0) ? $allTransitions[$key - 1] : $transition; + break; + } + if (empty($transitions)) { + $transitions[] = end($allTransitions); + } + } + + return $transitions; + } + + /** + * Return the Timezone offset used for date/time conversions to/from UST + * This requires both the timezone and the calculated date/time to allow for local DST + * + * @param string $timezone The timezone for finding the adjustment to UST + * @param integer $timestamp PHP date/time value + * @return integer Number of seconds for timezone adjustment + * @throws PHPExcel_Exception + */ + public static function getTimeZoneAdjustment($timezone, $timestamp) + { + if ($timezone !== null) { + if (!self::_validateTimezone($timezone)) { + throw new PHPExcel_Exception("Invalid timezone " . $timezone); + } + } else { + $timezone = self::$timezone; + } + + if ($timezone == 'UST') { + return 0; + } + + $objTimezone = new DateTimeZone($timezone); + if (version_compare(PHP_VERSION, '5.3.0') >= 0) { + $transitions = $objTimezone->getTransitions($timestamp, $timestamp); + } else { + $transitions = self::getTimezoneTransitions($objTimezone, $timestamp); + } + + return (count($transitions) > 0) ? $transitions[0]['offset'] : 0; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/XMLWriter.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/XMLWriter.php new file mode 100644 index 0000000..1dc119b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/XMLWriter.php @@ -0,0 +1,124 @@ +<?php + +if (!defined('DATE_W3C')) { + define('DATE_W3C', 'Y-m-d\TH:i:sP'); +} + +if (!defined('DEBUGMODE_ENABLED')) { + define('DEBUGMODE_ENABLED', false); +} + +/** + * PHPExcel_Shared_XMLWriter + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_XMLWriter extends XMLWriter +{ + /** Temporary storage method */ + const STORAGE_MEMORY = 1; + const STORAGE_DISK = 2; + + /** + * Temporary filename + * + * @var string + */ + private $tempFileName = ''; + + /** + * Create a new PHPExcel_Shared_XMLWriter instance + * + * @param int $pTemporaryStorage Temporary storage location + * @param string $pTemporaryStorageFolder Temporary storage folder + */ + public function __construct($pTemporaryStorage = self::STORAGE_MEMORY, $pTemporaryStorageFolder = null) + { + // Open temporary storage + if ($pTemporaryStorage == self::STORAGE_MEMORY) { + $this->openMemory(); + } else { + // Create temporary filename + if ($pTemporaryStorageFolder === null) { + $pTemporaryStorageFolder = PHPExcel_Shared_File::sys_get_temp_dir(); + } + $this->tempFileName = @tempnam($pTemporaryStorageFolder, 'xml'); + + // Open storage + if ($this->openUri($this->tempFileName) === false) { + // Fallback to memory... + $this->openMemory(); + } + } + + // Set default values + if (DEBUGMODE_ENABLED) { + $this->setIndent(true); + } + } + + /** + * Destructor + */ + public function __destruct() + { + // Unlink temporary files + if ($this->tempFileName != '') { + @unlink($this->tempFileName); + } + } + + /** + * Get written data + * + * @return $data + */ + public function getData() + { + if ($this->tempFileName == '') { + return $this->outputMemory(true); + } else { + $this->flush(); + return file_get_contents($this->tempFileName); + } + } + + /** + * Fallback method for writeRaw, introduced in PHP 5.2 + * + * @param string $text + * @return string + */ + public function writeRawData($text) + { + if (is_array($text)) { + $text = implode("\n", $text); + } + + if (method_exists($this, 'writeRaw')) { + return $this->writeRaw(htmlspecialchars($text)); + } + + return $this->text($text); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/ZipArchive.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/ZipArchive.php new file mode 100644 index 0000000..9eac8ca --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/ZipArchive.php @@ -0,0 +1,163 @@ +<?php + +if (!defined('PCLZIP_TEMPORARY_DIR')) { + define('PCLZIP_TEMPORARY_DIR', PHPExcel_Shared_File::sys_get_temp_dir() . DIRECTORY_SEPARATOR); +} +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/PCLZip/pclzip.lib.php'; + +/** + * PHPExcel_Shared_ZipArchive + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_ZipArchive + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_ZipArchive +{ + + /** constants */ + const OVERWRITE = 'OVERWRITE'; + const CREATE = 'CREATE'; + + + /** + * Temporary storage directory + * + * @var string + */ + private $tempDir; + + /** + * Zip Archive Stream Handle + * + * @var string + */ + private $zip; + + + /** + * Open a new zip archive + * + * @param string $fileName Filename for the zip archive + * @return boolean + */ + public function open($fileName) + { + $this->tempDir = PHPExcel_Shared_File::sys_get_temp_dir(); + $this->zip = new PclZip($fileName); + + return true; + } + + + /** + * Close this zip archive + * + */ + public function close() + { + } + + + /** + * Add a new file to the zip archive from a string of raw data. + * + * @param string $localname Directory/Name of the file to add to the zip archive + * @param string $contents String of data to add to the zip archive + */ + public function addFromString($localname, $contents) + { + $filenameParts = pathinfo($localname); + + $handle = fopen($this->tempDir.'/'.$filenameParts["basename"], "wb"); + fwrite($handle, $contents); + fclose($handle); + + $res = $this->zip->add($this->tempDir.'/'.$filenameParts["basename"], PCLZIP_OPT_REMOVE_PATH, $this->tempDir, PCLZIP_OPT_ADD_PATH, $filenameParts["dirname"]); + if ($res == 0) { + throw new PHPExcel_Writer_Exception("Error zipping files : " . $this->zip->errorInfo(true)); + } + + unlink($this->tempDir.'/'.$filenameParts["basename"]); + } + + /** + * Find if given fileName exist in archive (Emulate ZipArchive locateName()) + * + * @param string $fileName Filename for the file in zip archive + * @return boolean + */ + public function locateName($fileName) + { + $fileName = strtolower($fileName); + + $list = $this->zip->listContent(); + $listCount = count($list); + $index = -1; + for ($i = 0; $i < $listCount; ++$i) { + if (strtolower($list[$i]["filename"]) == $fileName || + strtolower($list[$i]["stored_filename"]) == $fileName) { + $index = $i; + break; + } + } + return ($index > -1) ? $index : false; + } + + /** + * Extract file from archive by given fileName (Emulate ZipArchive getFromName()) + * + * @param string $fileName Filename for the file in zip archive + * @return string $contents File string contents + */ + public function getFromName($fileName) + { + $index = $this->locateName($fileName); + + if ($index !== false) { + $extracted = $this->getFromIndex($index); + } else { + $fileName = substr($fileName, 1); + $index = $this->locateName($fileName); + if ($index === false) { + return false; + } + $extracted = $this->zip->getFromIndex($index); + } + + $contents = $extracted; + if ((is_array($extracted)) && ($extracted != 0)) { + $contents = $extracted[0]["content"]; + } + + return $contents; + } + + public function getFromIndex($index) { + $extracted = $this->zip->extractByIndex($index, PCLZIP_OPT_EXTRACT_AS_STRING); + $contents = ''; + if ((is_array($extracted)) && ($extracted != 0)) { + $contents = $extracted[0]["content"]; + } + + return $contents; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/ZipStreamWrapper.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/ZipStreamWrapper.php new file mode 100644 index 0000000..2e0324c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/ZipStreamWrapper.php @@ -0,0 +1,200 @@ +<?php + +/** + * PHPExcel_Shared_ZipStreamWrapper + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Shared_ZipStreamWrapper +{ + /** + * Internal ZipAcrhive + * + * @var ZipArchive + */ + private $archive; + + /** + * Filename in ZipAcrhive + * + * @var string + */ + private $fileNameInArchive = ''; + + /** + * Position in file + * + * @var int + */ + private $position = 0; + + /** + * Data + * + * @var mixed + */ + private $data = ''; + + /** + * Register wrapper + */ + public static function register() + { + @stream_wrapper_unregister('zip'); + @stream_wrapper_register('zip', __CLASS__); + } + + /** + * Implements support for fopen(). + * + * @param string $path resource name including scheme, e.g. + * @param string $mode only "r" is supported + * @param int $options mask of STREAM_REPORT_ERRORS and STREAM_USE_PATH + * @param string &$openedPath absolute path of the opened stream (out parameter) + * @return bool true on success + */ + public function stream_open($path, $mode, $options, &$opened_path) + { + // Check for mode + if ($mode{0} != 'r') { + throw new PHPExcel_Reader_Exception('Mode ' . $mode . ' is not supported. Only read mode is supported.'); + } + + $pos = strrpos($path, '#'); + $url['host'] = substr($path, 6, $pos - 6); // 6: strlen('zip://') + $url['fragment'] = substr($path, $pos + 1); + + // Open archive + $this->archive = new ZipArchive(); + $this->archive->open($url['host']); + + $this->fileNameInArchive = $url['fragment']; + $this->position = 0; + $this->data = $this->archive->getFromName($this->fileNameInArchive); + + return true; + } + + /** + * Implements support for fstat(). + * + * @return boolean + */ + public function statName() + { + return $this->fileNameInArchive; + } + + /** + * Implements support for fstat(). + * + * @return boolean + */ + public function url_stat() + { + return $this->statName($this->fileNameInArchive); + } + + /** + * Implements support for fstat(). + * + * @return boolean + */ + public function stream_stat() + { + return $this->archive->statName($this->fileNameInArchive); + } + + /** + * Implements support for fread(), fgets() etc. + * + * @param int $count maximum number of bytes to read + * @return string + */ + public function stream_read($count) + { + $ret = substr($this->data, $this->position, $count); + $this->position += strlen($ret); + return $ret; + } + + /** + * Returns the position of the file pointer, i.e. its offset into the file + * stream. Implements support for ftell(). + * + * @return int + */ + public function stream_tell() + { + return $this->position; + } + + /** + * EOF stream + * + * @return bool + */ + public function stream_eof() + { + return $this->position >= strlen($this->data); + } + + /** + * Seek stream + * + * @param int $offset byte offset + * @param int $whence SEEK_SET, SEEK_CUR or SEEK_END + * @return bool + */ + public function stream_seek($offset, $whence) + { + switch ($whence) { + case SEEK_SET: + if ($offset < strlen($this->data) && $offset >= 0) { + $this->position = $offset; + return true; + } else { + return false; + } + break; + case SEEK_CUR: + if ($offset >= 0) { + $this->position += $offset; + return true; + } else { + return false; + } + break; + case SEEK_END: + if (strlen($this->data) + $offset >= 0) { + $this->position = strlen($this->data) + $offset; + return true; + } else { + return false; + } + break; + default: + return false; + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/_notes/dwsync.xml new file mode 100644 index 0000000..6a153d6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/_notes/dwsync.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="CodePage.php" server="62.244.88.21/deciday/" local="131919461892380600" remote="131880384600000000" Dst="1" /> +<file name="Date.php" server="62.244.88.21/deciday/" local="131919461892560929" remote="131880384600000000" Dst="1" /> +<file name="Drawing.php" server="62.244.88.21/deciday/" local="131919461893261801" remote="131880384600000000" Dst="1" /> +<file name="Escher.php" server="62.244.88.21/deciday/" local="131919461898679094" remote="131880384600000000" Dst="1" /> +<file name="File.php" server="62.244.88.21/deciday/" local="131919461899646017" remote="131880384600000000" Dst="1" /> +<file name="Excel5.php" server="62.244.88.21/deciday/" local="131919461899842710" remote="131880384600000000" Dst="1" /> +<file name="Font.php" server="62.244.88.21/deciday/" local="131919461900233375" remote="131880384600000000" Dst="1" /> +<file name="OLE.php" server="62.244.88.21/deciday/" local="131919461906231465" remote="131880384600000000" Dst="1" /> +<file name="PasswordHasher.php" server="62.244.88.21/deciday/" local="131919461906755397" remote="131880384600000000" Dst="1" /> +<file name="OLERead.php" server="62.244.88.21/deciday/" local="131919461906939249" remote="131880384600000000" Dst="1" /> +<file name="TimeZone.php" server="62.244.88.21/deciday/" local="131919461909451334" remote="131880384600000000" Dst="1" /> +<file name="String.php" server="62.244.88.21/deciday/" local="131919461909873455" remote="131880384600000000" Dst="1" /> +<file name="XMLWriter.php" server="62.244.88.21/deciday/" local="131919461912787601" remote="131880384600000000" Dst="1" /> +<file name="ZipArchive.php" server="62.244.88.21/deciday/" local="131919461913327986" remote="131880384600000000" Dst="1" /> +<file name="ZipStreamWrapper.php" server="62.244.88.21/deciday/" local="131919461913715736" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/_notes/dwsync.xml new file mode 100644 index 0000000..56b4072 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="exponentialBestFitClass.php" server="62.244.88.21/deciday/" local="131919461910563040" remote="131880384600000000" Dst="1" /> +<file name="bestFitClass.php" server="62.244.88.21/deciday/" local="131919461910748598" remote="131880384600000000" Dst="1" /> +<file name="linearBestFitClass.php" server="62.244.88.21/deciday/" local="131919461910949078" remote="131880384600000000" Dst="1" /> +<file name="logarithmicBestFitClass.php" server="62.244.88.21/deciday/" local="131919461911463579" remote="131880384600000000" Dst="1" /> +<file name="polynomialBestFitClass.php" server="62.244.88.21/deciday/" local="131919461911759264" remote="131880384600000000" Dst="1" /> +<file name="powerBestFitClass.php" server="62.244.88.21/deciday/" local="131919461912109740" remote="131880384600000000" Dst="1" /> +<file name="trendClass.php" server="62.244.88.21/deciday/" local="131919461912607321" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/bestFitClass.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/bestFitClass.php new file mode 100644 index 0000000..2de029f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/bestFitClass.php @@ -0,0 +1,425 @@ +<?php + +/** + * PHPExcel_Best_Fit + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Best_Fit +{ + /** + * Indicator flag for a calculation error + * + * @var boolean + **/ + protected $error = false; + + /** + * Algorithm type to use for best-fit + * + * @var string + **/ + protected $bestFitType = 'undetermined'; + + /** + * Number of entries in the sets of x- and y-value arrays + * + * @var int + **/ + protected $valueCount = 0; + + /** + * X-value dataseries of values + * + * @var float[] + **/ + protected $xValues = array(); + + /** + * Y-value dataseries of values + * + * @var float[] + **/ + protected $yValues = array(); + + /** + * Flag indicating whether values should be adjusted to Y=0 + * + * @var boolean + **/ + protected $adjustToZero = false; + + /** + * Y-value series of best-fit values + * + * @var float[] + **/ + protected $yBestFitValues = array(); + + protected $goodnessOfFit = 1; + + protected $stdevOfResiduals = 0; + + protected $covariance = 0; + + protected $correlation = 0; + + protected $SSRegression = 0; + + protected $SSResiduals = 0; + + protected $DFResiduals = 0; + + protected $f = 0; + + protected $slope = 0; + + protected $slopeSE = 0; + + protected $intersect = 0; + + protected $intersectSE = 0; + + protected $xOffset = 0; + + protected $yOffset = 0; + + + public function getError() + { + return $this->error; + } + + + public function getBestFitType() + { + return $this->bestFitType; + } + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + */ + public function getValueOfYForX($xValue) + { + return false; + } + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + */ + public function getValueOfXForY($yValue) + { + return false; + } + + /** + * Return the original set of X-Values + * + * @return float[] X-Values + */ + public function getXValues() + { + return $this->xValues; + } + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + */ + public function getEquation($dp = 0) + { + return false; + } + + /** + * Return the Slope of the line + * + * @param int $dp Number of places of decimal precision to display + * @return string + */ + public function getSlope($dp = 0) + { + if ($dp != 0) { + return round($this->slope, $dp); + } + return $this->slope; + } + + /** + * Return the standard error of the Slope + * + * @param int $dp Number of places of decimal precision to display + * @return string + */ + public function getSlopeSE($dp = 0) + { + if ($dp != 0) { + return round($this->slopeSE, $dp); + } + return $this->slopeSE; + } + + /** + * Return the Value of X where it intersects Y = 0 + * + * @param int $dp Number of places of decimal precision to display + * @return string + */ + public function getIntersect($dp = 0) + { + if ($dp != 0) { + return round($this->intersect, $dp); + } + return $this->intersect; + } + + /** + * Return the standard error of the Intersect + * + * @param int $dp Number of places of decimal precision to display + * @return string + */ + public function getIntersectSE($dp = 0) + { + if ($dp != 0) { + return round($this->intersectSE, $dp); + } + return $this->intersectSE; + } + + /** + * Return the goodness of fit for this regression + * + * @param int $dp Number of places of decimal precision to return + * @return float + */ + public function getGoodnessOfFit($dp = 0) + { + if ($dp != 0) { + return round($this->goodnessOfFit, $dp); + } + return $this->goodnessOfFit; + } + + public function getGoodnessOfFitPercent($dp = 0) + { + if ($dp != 0) { + return round($this->goodnessOfFit * 100, $dp); + } + return $this->goodnessOfFit * 100; + } + + /** + * Return the standard deviation of the residuals for this regression + * + * @param int $dp Number of places of decimal precision to return + * @return float + */ + public function getStdevOfResiduals($dp = 0) + { + if ($dp != 0) { + return round($this->stdevOfResiduals, $dp); + } + return $this->stdevOfResiduals; + } + + public function getSSRegression($dp = 0) + { + if ($dp != 0) { + return round($this->SSRegression, $dp); + } + return $this->SSRegression; + } + + public function getSSResiduals($dp = 0) + { + if ($dp != 0) { + return round($this->SSResiduals, $dp); + } + return $this->SSResiduals; + } + + public function getDFResiduals($dp = 0) + { + if ($dp != 0) { + return round($this->DFResiduals, $dp); + } + return $this->DFResiduals; + } + + public function getF($dp = 0) + { + if ($dp != 0) { + return round($this->f, $dp); + } + return $this->f; + } + + public function getCovariance($dp = 0) + { + if ($dp != 0) { + return round($this->covariance, $dp); + } + return $this->covariance; + } + + public function getCorrelation($dp = 0) + { + if ($dp != 0) { + return round($this->correlation, $dp); + } + return $this->correlation; + } + + public function getYBestFitValues() + { + return $this->yBestFitValues; + } + + protected function calculateGoodnessOfFit($sumX, $sumY, $sumX2, $sumY2, $sumXY, $meanX, $meanY, $const) + { + $SSres = $SScov = $SScor = $SStot = $SSsex = 0.0; + foreach ($this->xValues as $xKey => $xValue) { + $bestFitY = $this->yBestFitValues[$xKey] = $this->getValueOfYForX($xValue); + + $SSres += ($this->yValues[$xKey] - $bestFitY) * ($this->yValues[$xKey] - $bestFitY); + if ($const) { + $SStot += ($this->yValues[$xKey] - $meanY) * ($this->yValues[$xKey] - $meanY); + } else { + $SStot += $this->yValues[$xKey] * $this->yValues[$xKey]; + } + $SScov += ($this->xValues[$xKey] - $meanX) * ($this->yValues[$xKey] - $meanY); + if ($const) { + $SSsex += ($this->xValues[$xKey] - $meanX) * ($this->xValues[$xKey] - $meanX); + } else { + $SSsex += $this->xValues[$xKey] * $this->xValues[$xKey]; + } + } + + $this->SSResiduals = $SSres; + $this->DFResiduals = $this->valueCount - 1 - $const; + + if ($this->DFResiduals == 0.0) { + $this->stdevOfResiduals = 0.0; + } else { + $this->stdevOfResiduals = sqrt($SSres / $this->DFResiduals); + } + if (($SStot == 0.0) || ($SSres == $SStot)) { + $this->goodnessOfFit = 1; + } else { + $this->goodnessOfFit = 1 - ($SSres / $SStot); + } + + $this->SSRegression = $this->goodnessOfFit * $SStot; + $this->covariance = $SScov / $this->valueCount; + $this->correlation = ($this->valueCount * $sumXY - $sumX * $sumY) / sqrt(($this->valueCount * $sumX2 - pow($sumX, 2)) * ($this->valueCount * $sumY2 - pow($sumY, 2))); + $this->slopeSE = $this->stdevOfResiduals / sqrt($SSsex); + $this->intersectSE = $this->stdevOfResiduals * sqrt(1 / ($this->valueCount - ($sumX * $sumX) / $sumX2)); + if ($this->SSResiduals != 0.0) { + if ($this->DFResiduals == 0.0) { + $this->f = 0.0; + } else { + $this->f = $this->SSRegression / ($this->SSResiduals / $this->DFResiduals); + } + } else { + if ($this->DFResiduals == 0.0) { + $this->f = 0.0; + } else { + $this->f = $this->SSRegression / $this->DFResiduals; + } + } + } + + protected function leastSquareFit($yValues, $xValues, $const) + { + // calculate sums + $x_sum = array_sum($xValues); + $y_sum = array_sum($yValues); + $meanX = $x_sum / $this->valueCount; + $meanY = $y_sum / $this->valueCount; + $mBase = $mDivisor = $xx_sum = $xy_sum = $yy_sum = 0.0; + for ($i = 0; $i < $this->valueCount; ++$i) { + $xy_sum += $xValues[$i] * $yValues[$i]; + $xx_sum += $xValues[$i] * $xValues[$i]; + $yy_sum += $yValues[$i] * $yValues[$i]; + + if ($const) { + $mBase += ($xValues[$i] - $meanX) * ($yValues[$i] - $meanY); + $mDivisor += ($xValues[$i] - $meanX) * ($xValues[$i] - $meanX); + } else { + $mBase += $xValues[$i] * $yValues[$i]; + $mDivisor += $xValues[$i] * $xValues[$i]; + } + } + + // calculate slope +// $this->slope = (($this->valueCount * $xy_sum) - ($x_sum * $y_sum)) / (($this->valueCount * $xx_sum) - ($x_sum * $x_sum)); + $this->slope = $mBase / $mDivisor; + + // calculate intersect +// $this->intersect = ($y_sum - ($this->slope * $x_sum)) / $this->valueCount; + if ($const) { + $this->intersect = $meanY - ($this->slope * $meanX); + } else { + $this->intersect = 0; + } + + $this->calculateGoodnessOfFit($x_sum, $y_sum, $xx_sum, $yy_sum, $xy_sum, $meanX, $meanY, $const); + } + + /** + * Define the regression + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + public function __construct($yValues, $xValues = array(), $const = true) + { + // Calculate number of points + $nY = count($yValues); + $nX = count($xValues); + + // Define X Values if necessary + if ($nX == 0) { + $xValues = range(1, $nY); + $nX = $nY; + } elseif ($nY != $nX) { + // Ensure both arrays of points are the same size + $this->error = true; + return false; + } + + $this->valueCount = $nY; + $this->xValues = $xValues; + $this->yValues = $yValues; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/exponentialBestFitClass.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/exponentialBestFitClass.php new file mode 100644 index 0000000..4448735 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/exponentialBestFitClass.php @@ -0,0 +1,138 @@ +<?php + +require_once(PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/bestFitClass.php'); + +/** + * PHPExcel_Exponential_Best_Fit + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Exponential_Best_Fit extends PHPExcel_Best_Fit +{ + /** + * Algorithm type to use for best-fit + * (Name of this trend class) + * + * @var string + **/ + protected $bestFitType = 'exponential'; + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + **/ + public function getValueOfYForX($xValue) + { + return $this->getIntersect() * pow($this->getSlope(), ($xValue - $this->xOffset)); + } + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + **/ + public function getValueOfXForY($yValue) + { + return log(($yValue + $this->yOffset) / $this->getIntersect()) / log($this->getSlope()); + } + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getEquation($dp = 0) + { + $slope = $this->getSlope($dp); + $intersect = $this->getIntersect($dp); + + return 'Y = ' . $intersect . ' * ' . $slope . '^X'; + } + + /** + * Return the Slope of the line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getSlope($dp = 0) + { + if ($dp != 0) { + return round(exp($this->_slope), $dp); + } + return exp($this->_slope); + } + + /** + * Return the Value of X where it intersects Y = 0 + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getIntersect($dp = 0) + { + if ($dp != 0) { + return round(exp($this->intersect), $dp); + } + return exp($this->intersect); + } + + /** + * Execute the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + private function exponentialRegression($yValues, $xValues, $const) + { + foreach ($yValues as &$value) { + if ($value < 0.0) { + $value = 0 - log(abs($value)); + } elseif ($value > 0.0) { + $value = log($value); + } + } + unset($value); + + $this->leastSquareFit($yValues, $xValues, $const); + } + + /** + * Define the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + public function __construct($yValues, $xValues = array(), $const = true) + { + if (parent::__construct($yValues, $xValues) !== false) { + $this->exponentialRegression($yValues, $xValues, $const); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/linearBestFitClass.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/linearBestFitClass.php new file mode 100644 index 0000000..76b55b3 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/linearBestFitClass.php @@ -0,0 +1,102 @@ +<?php + +require_once(PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/bestFitClass.php'); + +/** + * PHPExcel_Linear_Best_Fit + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Linear_Best_Fit extends PHPExcel_Best_Fit +{ + /** + * Algorithm type to use for best-fit + * (Name of this trend class) + * + * @var string + **/ + protected $bestFitType = 'linear'; + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + **/ + public function getValueOfYForX($xValue) + { + return $this->getIntersect() + $this->getSlope() * $xValue; + } + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + **/ + public function getValueOfXForY($yValue) + { + return ($yValue - $this->getIntersect()) / $this->getSlope(); + } + + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getEquation($dp = 0) + { + $slope = $this->getSlope($dp); + $intersect = $this->getIntersect($dp); + + return 'Y = ' . $intersect . ' + ' . $slope . ' * X'; + } + + /** + * Execute the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + private function linearRegression($yValues, $xValues, $const) + { + $this->leastSquareFit($yValues, $xValues, $const); + } + + /** + * Define the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + public function __construct($yValues, $xValues = array(), $const = true) + { + if (parent::__construct($yValues, $xValues) !== false) { + $this->linearRegression($yValues, $xValues, $const); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/logarithmicBestFitClass.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/logarithmicBestFitClass.php new file mode 100644 index 0000000..221c538 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/logarithmicBestFitClass.php @@ -0,0 +1,110 @@ +<?php + +require_once(PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/bestFitClass.php'); + +/** + * PHPExcel_Logarithmic_Best_Fit + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Logarithmic_Best_Fit extends PHPExcel_Best_Fit +{ + /** + * Algorithm type to use for best-fit + * (Name of this trend class) + * + * @var string + **/ + protected $bestFitType = 'logarithmic'; + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + **/ + public function getValueOfYForX($xValue) + { + return $this->getIntersect() + $this->getSlope() * log($xValue - $this->xOffset); + } + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + **/ + public function getValueOfXForY($yValue) + { + return exp(($yValue - $this->getIntersect()) / $this->getSlope()); + } + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getEquation($dp = 0) + { + $slope = $this->getSlope($dp); + $intersect = $this->getIntersect($dp); + + return 'Y = '.$intersect.' + '.$slope.' * log(X)'; + } + + /** + * Execute the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + private function logarithmicRegression($yValues, $xValues, $const) + { + foreach ($xValues as &$value) { + if ($value < 0.0) { + $value = 0 - log(abs($value)); + } elseif ($value > 0.0) { + $value = log($value); + } + } + unset($value); + + $this->leastSquareFit($yValues, $xValues, $const); + } + + /** + * Define the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + public function __construct($yValues, $xValues = array(), $const = true) + { + if (parent::__construct($yValues, $xValues) !== false) { + $this->logarithmicRegression($yValues, $xValues, $const); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/polynomialBestFitClass.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/polynomialBestFitClass.php new file mode 100644 index 0000000..8a882b7 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/polynomialBestFitClass.php @@ -0,0 +1,222 @@ +<?php + +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/bestFitClass.php'; +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/JAMA/Matrix.php'; + +/** + * PHPExcel_Polynomial_Best_Fit + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Polynomial_Best_Fit extends PHPExcel_Best_Fit +{ + /** + * Algorithm type to use for best-fit + * (Name of this trend class) + * + * @var string + **/ + protected $bestFitType = 'polynomial'; + + /** + * Polynomial order + * + * @protected + * @var int + **/ + protected $order = 0; + + + /** + * Return the order of this polynomial + * + * @return int + **/ + public function getOrder() + { + return $this->order; + } + + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + **/ + public function getValueOfYForX($xValue) + { + $retVal = $this->getIntersect(); + $slope = $this->getSlope(); + foreach ($slope as $key => $value) { + if ($value != 0.0) { + $retVal += $value * pow($xValue, $key + 1); + } + } + return $retVal; + } + + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + **/ + public function getValueOfXForY($yValue) + { + return ($yValue - $this->getIntersect()) / $this->getSlope(); + } + + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getEquation($dp = 0) + { + $slope = $this->getSlope($dp); + $intersect = $this->getIntersect($dp); + + $equation = 'Y = ' . $intersect; + foreach ($slope as $key => $value) { + if ($value != 0.0) { + $equation .= ' + ' . $value . ' * X'; + if ($key > 0) { + $equation .= '^' . ($key + 1); + } + } + } + return $equation; + } + + + /** + * Return the Slope of the line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getSlope($dp = 0) + { + if ($dp != 0) { + $coefficients = array(); + foreach ($this->_slope as $coefficient) { + $coefficients[] = round($coefficient, $dp); + } + return $coefficients; + } + return $this->_slope; + } + + + public function getCoefficients($dp = 0) + { + return array_merge(array($this->getIntersect($dp)), $this->getSlope($dp)); + } + + + /** + * Execute the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param int $order Order of Polynomial for this regression + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + private function polynomialRegression($order, $yValues, $xValues, $const) + { + // calculate sums + $x_sum = array_sum($xValues); + $y_sum = array_sum($yValues); + $xx_sum = $xy_sum = 0; + for ($i = 0; $i < $this->valueCount; ++$i) { + $xy_sum += $xValues[$i] * $yValues[$i]; + $xx_sum += $xValues[$i] * $xValues[$i]; + $yy_sum += $yValues[$i] * $yValues[$i]; + } + /* + * This routine uses logic from the PHP port of polyfit version 0.1 + * written by Michael Bommarito and Paul Meagher + * + * The function fits a polynomial function of order $order through + * a series of x-y data points using least squares. + * + */ + for ($i = 0; $i < $this->valueCount; ++$i) { + for ($j = 0; $j <= $order; ++$j) { + $A[$i][$j] = pow($xValues[$i], $j); + } + } + for ($i=0; $i < $this->valueCount; ++$i) { + $B[$i] = array($yValues[$i]); + } + $matrixA = new Matrix($A); + $matrixB = new Matrix($B); + $C = $matrixA->solve($matrixB); + + $coefficients = array(); + for ($i = 0; $i < $C->m; ++$i) { + $r = $C->get($i, 0); + if (abs($r) <= pow(10, -9)) { + $r = 0; + } + $coefficients[] = $r; + } + + $this->intersect = array_shift($coefficients); + $this->_slope = $coefficients; + + $this->calculateGoodnessOfFit($x_sum, $y_sum, $xx_sum, $yy_sum, $xy_sum); + foreach ($this->xValues as $xKey => $xValue) { + $this->yBestFitValues[$xKey] = $this->getValueOfYForX($xValue); + } + } + + + /** + * Define the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param int $order Order of Polynomial for this regression + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + public function __construct($order, $yValues, $xValues = array(), $const = true) + { + if (parent::__construct($yValues, $xValues) !== false) { + if ($order < $this->valueCount) { + $this->bestFitType .= '_'.$order; + $this->order = $order; + $this->polynomialRegression($order, $yValues, $xValues, $const); + if (($this->getGoodnessOfFit() < 0.0) || ($this->getGoodnessOfFit() > 1.0)) { + $this->_error = true; + } + } else { + $this->_error = true; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/powerBestFitClass.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/powerBestFitClass.php new file mode 100644 index 0000000..77c4734 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/powerBestFitClass.php @@ -0,0 +1,138 @@ +<?php + +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/bestFitClass.php'; + +/** + * PHPExcel_Power_Best_Fit + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Power_Best_Fit extends PHPExcel_Best_Fit +{ + /** + * Algorithm type to use for best-fit + * (Name of this trend class) + * + * @var string + **/ + protected $bestFitType = 'power'; + + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + **/ + public function getValueOfYForX($xValue) + { + return $this->getIntersect() * pow(($xValue - $this->xOffset), $this->getSlope()); + } + + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + **/ + public function getValueOfXForY($yValue) + { + return pow((($yValue + $this->yOffset) / $this->getIntersect()), (1 / $this->getSlope())); + } + + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getEquation($dp = 0) + { + $slope = $this->getSlope($dp); + $intersect = $this->getIntersect($dp); + + return 'Y = ' . $intersect . ' * X^' . $slope; + } + + + /** + * Return the Value of X where it intersects Y = 0 + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getIntersect($dp = 0) + { + if ($dp != 0) { + return round(exp($this->intersect), $dp); + } + return exp($this->intersect); + } + + + /** + * Execute the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + private function powerRegression($yValues, $xValues, $const) + { + foreach ($xValues as &$value) { + if ($value < 0.0) { + $value = 0 - log(abs($value)); + } elseif ($value > 0.0) { + $value = log($value); + } + } + unset($value); + foreach ($yValues as &$value) { + if ($value < 0.0) { + $value = 0 - log(abs($value)); + } elseif ($value > 0.0) { + $value = log($value); + } + } + unset($value); + + $this->leastSquareFit($yValues, $xValues, $const); + } + + + /** + * Define the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + public function __construct($yValues, $xValues = array(), $const = true) + { + if (parent::__construct($yValues, $xValues) !== false) { + $this->powerRegression($yValues, $xValues, $const); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/trendClass.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/trendClass.php new file mode 100644 index 0000000..715cd41 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Shared/trend/trendClass.php @@ -0,0 +1,147 @@ +<?php + +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/linearBestFitClass.php'; +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/logarithmicBestFitClass.php'; +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/exponentialBestFitClass.php'; +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/powerBestFitClass.php'; +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/polynomialBestFitClass.php'; + +/** + * PHPExcel_trendClass + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class trendClass +{ + const TREND_LINEAR = 'Linear'; + const TREND_LOGARITHMIC = 'Logarithmic'; + const TREND_EXPONENTIAL = 'Exponential'; + const TREND_POWER = 'Power'; + const TREND_POLYNOMIAL_2 = 'Polynomial_2'; + const TREND_POLYNOMIAL_3 = 'Polynomial_3'; + const TREND_POLYNOMIAL_4 = 'Polynomial_4'; + const TREND_POLYNOMIAL_5 = 'Polynomial_5'; + const TREND_POLYNOMIAL_6 = 'Polynomial_6'; + const TREND_BEST_FIT = 'Bestfit'; + const TREND_BEST_FIT_NO_POLY = 'Bestfit_no_Polynomials'; + + /** + * Names of the best-fit trend analysis methods + * + * @var string[] + **/ + private static $trendTypes = array( + self::TREND_LINEAR, + self::TREND_LOGARITHMIC, + self::TREND_EXPONENTIAL, + self::TREND_POWER + ); + + /** + * Names of the best-fit trend polynomial orders + * + * @var string[] + **/ + private static $trendTypePolynomialOrders = array( + self::TREND_POLYNOMIAL_2, + self::TREND_POLYNOMIAL_3, + self::TREND_POLYNOMIAL_4, + self::TREND_POLYNOMIAL_5, + self::TREND_POLYNOMIAL_6 + ); + + /** + * Cached results for each method when trying to identify which provides the best fit + * + * @var PHPExcel_Best_Fit[] + **/ + private static $trendCache = array(); + + + public static function calculate($trendType = self::TREND_BEST_FIT, $yValues, $xValues = array(), $const = true) + { + // Calculate number of points in each dataset + $nY = count($yValues); + $nX = count($xValues); + + // Define X Values if necessary + if ($nX == 0) { + $xValues = range(1, $nY); + $nX = $nY; + } elseif ($nY != $nX) { + // Ensure both arrays of points are the same size + trigger_error("trend(): Number of elements in coordinate arrays do not match.", E_USER_ERROR); + } + + $key = md5($trendType.$const.serialize($yValues).serialize($xValues)); + // Determine which trend method has been requested + switch ($trendType) { + // Instantiate and return the class for the requested trend method + case self::TREND_LINEAR: + case self::TREND_LOGARITHMIC: + case self::TREND_EXPONENTIAL: + case self::TREND_POWER: + if (!isset(self::$trendCache[$key])) { + $className = 'PHPExcel_'.$trendType.'_Best_Fit'; + self::$trendCache[$key] = new $className($yValues, $xValues, $const); + } + return self::$trendCache[$key]; + case self::TREND_POLYNOMIAL_2: + case self::TREND_POLYNOMIAL_3: + case self::TREND_POLYNOMIAL_4: + case self::TREND_POLYNOMIAL_5: + case self::TREND_POLYNOMIAL_6: + if (!isset(self::$trendCache[$key])) { + $order = substr($trendType, -1); + self::$trendCache[$key] = new PHPExcel_Polynomial_Best_Fit($order, $yValues, $xValues, $const); + } + return self::$trendCache[$key]; + case self::TREND_BEST_FIT: + case self::TREND_BEST_FIT_NO_POLY: + // If the request is to determine the best fit regression, then we test each trend line in turn + // Start by generating an instance of each available trend method + foreach (self::$trendTypes as $trendMethod) { + $className = 'PHPExcel_'.$trendMethod.'BestFit'; + $bestFit[$trendMethod] = new $className($yValues, $xValues, $const); + $bestFitValue[$trendMethod] = $bestFit[$trendMethod]->getGoodnessOfFit(); + } + if ($trendType != self::TREND_BEST_FIT_NO_POLY) { + foreach (self::$trendTypePolynomialOrders as $trendMethod) { + $order = substr($trendMethod, -1); + $bestFit[$trendMethod] = new PHPExcel_Polynomial_Best_Fit($order, $yValues, $xValues, $const); + if ($bestFit[$trendMethod]->getError()) { + unset($bestFit[$trendMethod]); + } else { + $bestFitValue[$trendMethod] = $bestFit[$trendMethod]->getGoodnessOfFit(); + } + } + } + // Determine which of our trend lines is the best fit, and then we return the instance of that trend class + arsort($bestFitValue); + $bestFitType = key($bestFitValue); + return $bestFit[$bestFitType]; + default: + return false; + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style.php new file mode 100644 index 0000000..6b952ef --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style.php @@ -0,0 +1,644 @@ +<?php + +/** + * PHPExcel_Style + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Style extends PHPExcel_Style_Supervisor implements PHPExcel_IComparable +{ + /** + * Font + * + * @var PHPExcel_Style_Font + */ + protected $font; + + /** + * Fill + * + * @var PHPExcel_Style_Fill + */ + protected $fill; + + /** + * Borders + * + * @var PHPExcel_Style_Borders + */ + protected $borders; + + /** + * Alignment + * + * @var PHPExcel_Style_Alignment + */ + protected $alignment; + + /** + * Number Format + * + * @var PHPExcel_Style_NumberFormat + */ + protected $numberFormat; + + /** + * Conditional styles + * + * @var PHPExcel_Style_Conditional[] + */ + protected $conditionalStyles; + + /** + * Protection + * + * @var PHPExcel_Style_Protection + */ + protected $protection; + + /** + * Index of style in collection. Only used for real style. + * + * @var int + */ + protected $index; + + /** + * Use Quote Prefix when displaying in cell editor. Only used for real style. + * + * @var boolean + */ + protected $quotePrefix = false; + + /** + * Create a new PHPExcel_Style + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + $this->isSupervisor = $isSupervisor; + + // Initialise values + $this->conditionalStyles = array(); + $this->font = new PHPExcel_Style_Font($isSupervisor, $isConditional); + $this->fill = new PHPExcel_Style_Fill($isSupervisor, $isConditional); + $this->borders = new PHPExcel_Style_Borders($isSupervisor, $isConditional); + $this->alignment = new PHPExcel_Style_Alignment($isSupervisor, $isConditional); + $this->numberFormat = new PHPExcel_Style_NumberFormat($isSupervisor, $isConditional); + $this->protection = new PHPExcel_Style_Protection($isSupervisor, $isConditional); + + // bind parent if we are a supervisor + if ($isSupervisor) { + $this->font->bindParent($this); + $this->fill->bindParent($this); + $this->borders->bindParent($this); + $this->alignment->bindParent($this); + $this->numberFormat->bindParent($this); + $this->protection->bindParent($this); + } + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style + */ + public function getSharedComponent() + { + $activeSheet = $this->getActiveSheet(); + $selectedCell = $this->getActiveCell(); // e.g. 'A1' + + if ($activeSheet->cellExists($selectedCell)) { + $xfIndex = $activeSheet->getCell($selectedCell)->getXfIndex(); + } else { + $xfIndex = 0; + } + + return $this->parent->getCellXfByIndex($xfIndex); + } + + /** + * Get parent. Only used for style supervisor + * + * @return PHPExcel + */ + public function getParent() + { + return $this->parent; + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('quotePrefix' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->applyFromArray( + * array( + * 'font' => array( + * 'name' => 'Arial', + * 'bold' => true, + * 'italic' => false, + * 'underline' => PHPExcel_Style_Font::UNDERLINE_DOUBLE, + * 'strike' => false, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ), + * 'borders' => array( + * 'bottom' => array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ), + * 'top' => array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ) + * ), + * 'quotePrefix' => true + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @param boolean $pAdvanced Advanced mode for setting borders. + * @throws PHPExcel_Exception + * @return PHPExcel_Style + */ + public function applyFromArray($pStyles = null, $pAdvanced = true) + { + if (is_array($pStyles)) { + if ($this->isSupervisor) { + $pRange = $this->getSelectedCells(); + + // Uppercase coordinate + $pRange = strtoupper($pRange); + + // Is it a cell range or a single cell? + if (strpos($pRange, ':') === false) { + $rangeA = $pRange; + $rangeB = $pRange; + } else { + list($rangeA, $rangeB) = explode(':', $pRange); + } + + // Calculate range outer borders + $rangeStart = PHPExcel_Cell::coordinateFromString($rangeA); + $rangeEnd = PHPExcel_Cell::coordinateFromString($rangeB); + + // Translate column into index + $rangeStart[0] = PHPExcel_Cell::columnIndexFromString($rangeStart[0]) - 1; + $rangeEnd[0] = PHPExcel_Cell::columnIndexFromString($rangeEnd[0]) - 1; + + // Make sure we can loop upwards on rows and columns + if ($rangeStart[0] > $rangeEnd[0] && $rangeStart[1] > $rangeEnd[1]) { + $tmp = $rangeStart; + $rangeStart = $rangeEnd; + $rangeEnd = $tmp; + } + + // ADVANCED MODE: + if ($pAdvanced && isset($pStyles['borders'])) { + // 'allborders' is a shorthand property for 'outline' and 'inside' and + // it applies to components that have not been set explicitly + if (isset($pStyles['borders']['allborders'])) { + foreach (array('outline', 'inside') as $component) { + if (!isset($pStyles['borders'][$component])) { + $pStyles['borders'][$component] = $pStyles['borders']['allborders']; + } + } + unset($pStyles['borders']['allborders']); // not needed any more + } + // 'outline' is a shorthand property for 'top', 'right', 'bottom', 'left' + // it applies to components that have not been set explicitly + if (isset($pStyles['borders']['outline'])) { + foreach (array('top', 'right', 'bottom', 'left') as $component) { + if (!isset($pStyles['borders'][$component])) { + $pStyles['borders'][$component] = $pStyles['borders']['outline']; + } + } + unset($pStyles['borders']['outline']); // not needed any more + } + // 'inside' is a shorthand property for 'vertical' and 'horizontal' + // it applies to components that have not been set explicitly + if (isset($pStyles['borders']['inside'])) { + foreach (array('vertical', 'horizontal') as $component) { + if (!isset($pStyles['borders'][$component])) { + $pStyles['borders'][$component] = $pStyles['borders']['inside']; + } + } + unset($pStyles['borders']['inside']); // not needed any more + } + // width and height characteristics of selection, 1, 2, or 3 (for 3 or more) + $xMax = min($rangeEnd[0] - $rangeStart[0] + 1, 3); + $yMax = min($rangeEnd[1] - $rangeStart[1] + 1, 3); + + // loop through up to 3 x 3 = 9 regions + for ($x = 1; $x <= $xMax; ++$x) { + // start column index for region + $colStart = ($x == 3) ? + PHPExcel_Cell::stringFromColumnIndex($rangeEnd[0]) + : PHPExcel_Cell::stringFromColumnIndex($rangeStart[0] + $x - 1); + // end column index for region + $colEnd = ($x == 1) ? + PHPExcel_Cell::stringFromColumnIndex($rangeStart[0]) + : PHPExcel_Cell::stringFromColumnIndex($rangeEnd[0] - $xMax + $x); + + for ($y = 1; $y <= $yMax; ++$y) { + // which edges are touching the region + $edges = array(); + if ($x == 1) { + // are we at left edge + $edges[] = 'left'; + } + if ($x == $xMax) { + // are we at right edge + $edges[] = 'right'; + } + if ($y == 1) { + // are we at top edge? + $edges[] = 'top'; + } + if ($y == $yMax) { + // are we at bottom edge? + $edges[] = 'bottom'; + } + + // start row index for region + $rowStart = ($y == 3) ? + $rangeEnd[1] : $rangeStart[1] + $y - 1; + + // end row index for region + $rowEnd = ($y == 1) ? + $rangeStart[1] : $rangeEnd[1] - $yMax + $y; + + // build range for region + $range = $colStart . $rowStart . ':' . $colEnd . $rowEnd; + + // retrieve relevant style array for region + $regionStyles = $pStyles; + unset($regionStyles['borders']['inside']); + + // what are the inner edges of the region when looking at the selection + $innerEdges = array_diff(array('top', 'right', 'bottom', 'left'), $edges); + + // inner edges that are not touching the region should take the 'inside' border properties if they have been set + foreach ($innerEdges as $innerEdge) { + switch ($innerEdge) { + case 'top': + case 'bottom': + // should pick up 'horizontal' border property if set + if (isset($pStyles['borders']['horizontal'])) { + $regionStyles['borders'][$innerEdge] = $pStyles['borders']['horizontal']; + } else { + unset($regionStyles['borders'][$innerEdge]); + } + break; + case 'left': + case 'right': + // should pick up 'vertical' border property if set + if (isset($pStyles['borders']['vertical'])) { + $regionStyles['borders'][$innerEdge] = $pStyles['borders']['vertical']; + } else { + unset($regionStyles['borders'][$innerEdge]); + } + break; + } + } + + // apply region style to region by calling applyFromArray() in simple mode + $this->getActiveSheet()->getStyle($range)->applyFromArray($regionStyles, false); + } + } + return $this; + } + + // SIMPLE MODE: + // Selection type, inspect + if (preg_match('/^[A-Z]+1:[A-Z]+1048576$/', $pRange)) { + $selectionType = 'COLUMN'; + } elseif (preg_match('/^A[0-9]+:XFD[0-9]+$/', $pRange)) { + $selectionType = 'ROW'; + } else { + $selectionType = 'CELL'; + } + + // First loop through columns, rows, or cells to find out which styles are affected by this operation + switch ($selectionType) { + case 'COLUMN': + $oldXfIndexes = array(); + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + $oldXfIndexes[$this->getActiveSheet()->getColumnDimensionByColumn($col)->getXfIndex()] = true; + } + break; + case 'ROW': + $oldXfIndexes = array(); + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + if ($this->getActiveSheet()->getRowDimension($row)->getXfIndex() == null) { + $oldXfIndexes[0] = true; // row without explicit style should be formatted based on default style + } else { + $oldXfIndexes[$this->getActiveSheet()->getRowDimension($row)->getXfIndex()] = true; + } + } + break; + case 'CELL': + $oldXfIndexes = array(); + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + $oldXfIndexes[$this->getActiveSheet()->getCellByColumnAndRow($col, $row)->getXfIndex()] = true; + } + } + break; + } + + // clone each of the affected styles, apply the style array, and add the new styles to the workbook + $workbook = $this->getActiveSheet()->getParent(); + foreach ($oldXfIndexes as $oldXfIndex => $dummy) { + $style = $workbook->getCellXfByIndex($oldXfIndex); + $newStyle = clone $style; + $newStyle->applyFromArray($pStyles); + + if ($existingStyle = $workbook->getCellXfByHashCode($newStyle->getHashCode())) { + // there is already such cell Xf in our collection + $newXfIndexes[$oldXfIndex] = $existingStyle->getIndex(); + } else { + // we don't have such a cell Xf, need to add + $workbook->addCellXf($newStyle); + $newXfIndexes[$oldXfIndex] = $newStyle->getIndex(); + } + } + + // Loop through columns, rows, or cells again and update the XF index + switch ($selectionType) { + case 'COLUMN': + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + $columnDimension = $this->getActiveSheet()->getColumnDimensionByColumn($col); + $oldXfIndex = $columnDimension->getXfIndex(); + $columnDimension->setXfIndex($newXfIndexes[$oldXfIndex]); + } + break; + + case 'ROW': + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + $rowDimension = $this->getActiveSheet()->getRowDimension($row); + $oldXfIndex = $rowDimension->getXfIndex() === null ? + 0 : $rowDimension->getXfIndex(); // row without explicit style should be formatted based on default style + $rowDimension->setXfIndex($newXfIndexes[$oldXfIndex]); + } + break; + + case 'CELL': + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + $cell = $this->getActiveSheet()->getCellByColumnAndRow($col, $row); + $oldXfIndex = $cell->getXfIndex(); + $cell->setXfIndex($newXfIndexes[$oldXfIndex]); + } + } + break; + } + + } else { + // not a supervisor, just apply the style array directly on style object + if (array_key_exists('fill', $pStyles)) { + $this->getFill()->applyFromArray($pStyles['fill']); + } + if (array_key_exists('font', $pStyles)) { + $this->getFont()->applyFromArray($pStyles['font']); + } + if (array_key_exists('borders', $pStyles)) { + $this->getBorders()->applyFromArray($pStyles['borders']); + } + if (array_key_exists('alignment', $pStyles)) { + $this->getAlignment()->applyFromArray($pStyles['alignment']); + } + if (array_key_exists('numberformat', $pStyles)) { + $this->getNumberFormat()->applyFromArray($pStyles['numberformat']); + } + if (array_key_exists('protection', $pStyles)) { + $this->getProtection()->applyFromArray($pStyles['protection']); + } + if (array_key_exists('quotePrefix', $pStyles)) { + $this->quotePrefix = $pStyles['quotePrefix']; + } + } + } else { + throw new PHPExcel_Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Fill + * + * @return PHPExcel_Style_Fill + */ + public function getFill() + { + return $this->fill; + } + + /** + * Get Font + * + * @return PHPExcel_Style_Font + */ + public function getFont() + { + return $this->font; + } + + /** + * Set font + * + * @param PHPExcel_Style_Font $font + * @return PHPExcel_Style + */ + public function setFont(PHPExcel_Style_Font $font) + { + $this->font = $font; + return $this; + } + + /** + * Get Borders + * + * @return PHPExcel_Style_Borders + */ + public function getBorders() + { + return $this->borders; + } + + /** + * Get Alignment + * + * @return PHPExcel_Style_Alignment + */ + public function getAlignment() + { + return $this->alignment; + } + + /** + * Get Number Format + * + * @return PHPExcel_Style_NumberFormat + */ + public function getNumberFormat() + { + return $this->numberFormat; + } + + /** + * Get Conditional Styles. Only used on supervisor. + * + * @return PHPExcel_Style_Conditional[] + */ + public function getConditionalStyles() + { + return $this->getActiveSheet()->getConditionalStyles($this->getActiveCell()); + } + + /** + * Set Conditional Styles. Only used on supervisor. + * + * @param PHPExcel_Style_Conditional[] $pValue Array of condtional styles + * @return PHPExcel_Style + */ + public function setConditionalStyles($pValue = null) + { + if (is_array($pValue)) { + $this->getActiveSheet()->setConditionalStyles($this->getSelectedCells(), $pValue); + } + return $this; + } + + /** + * Get Protection + * + * @return PHPExcel_Style_Protection + */ + public function getProtection() + { + return $this->protection; + } + + /** + * Get quote prefix + * + * @return boolean + */ + public function getQuotePrefix() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getQuotePrefix(); + } + return $this->quotePrefix; + } + + /** + * Set quote prefix + * + * @param boolean $pValue + */ + public function setQuotePrefix($pValue) + { + if ($pValue == '') { + $pValue = false; + } + if ($this->isSupervisor) { + $styleArray = array('quotePrefix' => $pValue); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->quotePrefix = (boolean) $pValue; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + $hashConditionals = ''; + foreach ($this->conditionalStyles as $conditional) { + $hashConditionals .= $conditional->getHashCode(); + } + + return md5( + $this->fill->getHashCode() . + $this->font->getHashCode() . + $this->borders->getHashCode() . + $this->alignment->getHashCode() . + $this->numberFormat->getHashCode() . + $hashConditionals . + $this->protection->getHashCode() . + ($this->quotePrefix ? 't' : 'f') . + __CLASS__ + ); + } + + /** + * Get own index in style collection + * + * @return int + */ + public function getIndex() + { + return $this->index; + } + + /** + * Set own index in style collection + * + * @param int $pValue + */ + public function setIndex($pValue) + { + $this->index = $pValue; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Alignment.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Alignment.php new file mode 100644 index 0000000..bfc4947 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Alignment.php @@ -0,0 +1,464 @@ +<?php +/** + * PHPExcel_Style_Alignment + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Style_Alignment extends PHPExcel_Style_Supervisor implements PHPExcel_IComparable +{ + /* Horizontal alignment styles */ + const HORIZONTAL_GENERAL = 'general'; + const HORIZONTAL_LEFT = 'left'; + const HORIZONTAL_RIGHT = 'right'; + const HORIZONTAL_CENTER = 'center'; + const HORIZONTAL_CENTER_CONTINUOUS = 'centerContinuous'; + const HORIZONTAL_JUSTIFY = 'justify'; + const HORIZONTAL_FILL = 'fill'; + const HORIZONTAL_DISTRIBUTED = 'distributed'; // Excel2007 only + + /* Vertical alignment styles */ + const VERTICAL_BOTTOM = 'bottom'; + const VERTICAL_TOP = 'top'; + const VERTICAL_CENTER = 'center'; + const VERTICAL_JUSTIFY = 'justify'; + const VERTICAL_DISTRIBUTED = 'distributed'; // Excel2007 only + + /* Read order */ + const READORDER_CONTEXT = 0; + const READORDER_LTR = 1; + const READORDER_RTL = 2; + + /** + * Horizontal alignment + * + * @var string + */ + protected $horizontal = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL; + + /** + * Vertical alignment + * + * @var string + */ + protected $vertical = PHPExcel_Style_Alignment::VERTICAL_BOTTOM; + + /** + * Text rotation + * + * @var integer + */ + protected $textRotation = 0; + + /** + * Wrap text + * + * @var boolean + */ + protected $wrapText = false; + + /** + * Shrink to fit + * + * @var boolean + */ + protected $shrinkToFit = false; + + /** + * Indent - only possible with horizontal alignment left and right + * + * @var integer + */ + protected $indent = 0; + + /** + * Read order + * + * @var integer + */ + protected $readorder = 0; + + /** + * Create a new PHPExcel_Style_Alignment + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + parent::__construct($isSupervisor); + + if ($isConditional) { + $this->horizontal = null; + $this->vertical = null; + $this->textRotation = null; + } + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Alignment + */ + public function getSharedComponent() + { + return $this->parent->getSharedComponent()->getAlignment(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('alignment' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getAlignment()->applyFromArray( + * array( + * 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER, + * 'vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER, + * 'rotation' => 0, + * 'wrap' => TRUE + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Alignment + */ + public function applyFromArray($pStyles = null) + { + if (is_array($pStyles)) { + if ($this->isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells()) + ->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (isset($pStyles['horizontal'])) { + $this->setHorizontal($pStyles['horizontal']); + } + if (isset($pStyles['vertical'])) { + $this->setVertical($pStyles['vertical']); + } + if (isset($pStyles['rotation'])) { + $this->setTextRotation($pStyles['rotation']); + } + if (isset($pStyles['wrap'])) { + $this->setWrapText($pStyles['wrap']); + } + if (isset($pStyles['shrinkToFit'])) { + $this->setShrinkToFit($pStyles['shrinkToFit']); + } + if (isset($pStyles['indent'])) { + $this->setIndent($pStyles['indent']); + } + if (isset($pStyles['readorder'])) { + $this->setReadorder($pStyles['readorder']); + } + } + } else { + throw new PHPExcel_Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Horizontal + * + * @return string + */ + public function getHorizontal() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getHorizontal(); + } + return $this->horizontal; + } + + /** + * Set Horizontal + * + * @param string $pValue + * @return PHPExcel_Style_Alignment + */ + public function setHorizontal($pValue = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL) + { + if ($pValue == '') { + $pValue = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL; + } + + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('horizontal' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->horizontal = $pValue; + } + return $this; + } + + /** + * Get Vertical + * + * @return string + */ + public function getVertical() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getVertical(); + } + return $this->vertical; + } + + /** + * Set Vertical + * + * @param string $pValue + * @return PHPExcel_Style_Alignment + */ + public function setVertical($pValue = PHPExcel_Style_Alignment::VERTICAL_BOTTOM) + { + if ($pValue == '') { + $pValue = PHPExcel_Style_Alignment::VERTICAL_BOTTOM; + } + + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('vertical' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->vertical = $pValue; + } + return $this; + } + + /** + * Get TextRotation + * + * @return int + */ + public function getTextRotation() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getTextRotation(); + } + return $this->textRotation; + } + + /** + * Set TextRotation + * + * @param int $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Alignment + */ + public function setTextRotation($pValue = 0) + { + // Excel2007 value 255 => PHPExcel value -165 + if ($pValue == 255) { + $pValue = -165; + } + + // Set rotation + if (($pValue >= -90 && $pValue <= 90) || $pValue == -165) { + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('rotation' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->textRotation = $pValue; + } + } else { + throw new PHPExcel_Exception("Text rotation should be a value between -90 and 90."); + } + + return $this; + } + + /** + * Get Wrap Text + * + * @return boolean + */ + public function getWrapText() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getWrapText(); + } + return $this->wrapText; + } + + /** + * Set Wrap Text + * + * @param boolean $pValue + * @return PHPExcel_Style_Alignment + */ + public function setWrapText($pValue = false) + { + if ($pValue == '') { + $pValue = false; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('wrap' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->wrapText = $pValue; + } + return $this; + } + + /** + * Get Shrink to fit + * + * @return boolean + */ + public function getShrinkToFit() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getShrinkToFit(); + } + return $this->shrinkToFit; + } + + /** + * Set Shrink to fit + * + * @param boolean $pValue + * @return PHPExcel_Style_Alignment + */ + public function setShrinkToFit($pValue = false) + { + if ($pValue == '') { + $pValue = false; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('shrinkToFit' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->shrinkToFit = $pValue; + } + return $this; + } + + /** + * Get indent + * + * @return int + */ + public function getIndent() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getIndent(); + } + return $this->indent; + } + + /** + * Set indent + * + * @param int $pValue + * @return PHPExcel_Style_Alignment + */ + public function setIndent($pValue = 0) + { + if ($pValue > 0) { + if ($this->getHorizontal() != self::HORIZONTAL_GENERAL && + $this->getHorizontal() != self::HORIZONTAL_LEFT && + $this->getHorizontal() != self::HORIZONTAL_RIGHT) { + $pValue = 0; // indent not supported + } + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('indent' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->indent = $pValue; + } + return $this; + } + + /** + * Get read order + * + * @return integer + */ + public function getReadorder() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getReadorder(); + } + return $this->readorder; + } + + /** + * Set read order + * + * @param int $pValue + * @return PHPExcel_Style_Alignment + */ + public function setReadorder($pValue = 0) + { + if ($pValue < 0 || $pValue > 2) { + $pValue = 0; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('readorder' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->readorder = $pValue; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->horizontal . + $this->vertical . + $this->textRotation . + ($this->wrapText ? 't' : 'f') . + ($this->shrinkToFit ? 't' : 'f') . + $this->indent . + $this->readorder . + __CLASS__ + ); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Border.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Border.php new file mode 100644 index 0000000..55efc50 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Border.php @@ -0,0 +1,282 @@ +<?php + +/** + * PHPExcel_Style_Border + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Style_Border extends PHPExcel_Style_Supervisor implements PHPExcel_IComparable +{ + /* Border style */ + const BORDER_NONE = 'none'; + const BORDER_DASHDOT = 'dashDot'; + const BORDER_DASHDOTDOT = 'dashDotDot'; + const BORDER_DASHED = 'dashed'; + const BORDER_DOTTED = 'dotted'; + const BORDER_DOUBLE = 'double'; + const BORDER_HAIR = 'hair'; + const BORDER_MEDIUM = 'medium'; + const BORDER_MEDIUMDASHDOT = 'mediumDashDot'; + const BORDER_MEDIUMDASHDOTDOT = 'mediumDashDotDot'; + const BORDER_MEDIUMDASHED = 'mediumDashed'; + const BORDER_SLANTDASHDOT = 'slantDashDot'; + const BORDER_THICK = 'thick'; + const BORDER_THIN = 'thin'; + + /** + * Border style + * + * @var string + */ + protected $borderStyle = PHPExcel_Style_Border::BORDER_NONE; + + /** + * Border color + * + * @var PHPExcel_Style_Color + */ + protected $color; + + /** + * Parent property name + * + * @var string + */ + protected $parentPropertyName; + + /** + * Create a new PHPExcel_Style_Border + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + parent::__construct($isSupervisor); + + // Initialise values + $this->color = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK, $isSupervisor); + + // bind parent if we are a supervisor + if ($isSupervisor) { + $this->color->bindParent($this, 'color'); + } + } + + /** + * Bind parent. Only used for supervisor + * + * @param PHPExcel_Style_Borders $parent + * @param string $parentPropertyName + * @return PHPExcel_Style_Border + */ + public function bindParent($parent, $parentPropertyName = null) + { + $this->parent = $parent; + $this->parentPropertyName = $parentPropertyName; + return $this; + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Border + * @throws PHPExcel_Exception + */ + public function getSharedComponent() + { + switch ($this->parentPropertyName) { + case 'allBorders': + case 'horizontal': + case 'inside': + case 'outline': + case 'vertical': + throw new PHPExcel_Exception('Cannot get shared component for a pseudo-border.'); + break; + case 'bottom': + return $this->parent->getSharedComponent()->getBottom(); + case 'diagonal': + return $this->parent->getSharedComponent()->getDiagonal(); + case 'left': + return $this->parent->getSharedComponent()->getLeft(); + case 'right': + return $this->parent->getSharedComponent()->getRight(); + case 'top': + return $this->parent->getSharedComponent()->getTop(); + } + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + switch ($this->parentPropertyName) { + case 'allBorders': + case 'bottom': + case 'diagonal': + case 'horizontal': + case 'inside': + case 'left': + case 'outline': + case 'right': + case 'top': + case 'vertical': + $key = strtolower('vertical'); + break; + } + return $this->parent->getStyleArray(array($key => $array)); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getBorders()->getTop()->applyFromArray( + * array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Border + */ + public function applyFromArray($pStyles = null) + { + if (is_array($pStyles)) { + if ($this->isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (isset($pStyles['style'])) { + $this->setBorderStyle($pStyles['style']); + } + if (isset($pStyles['color'])) { + $this->getColor()->applyFromArray($pStyles['color']); + } + } + } else { + throw new PHPExcel_Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Border style + * + * @return string + */ + public function getBorderStyle() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getBorderStyle(); + } + return $this->borderStyle; + } + + /** + * Set Border style + * + * @param string|boolean $pValue + * When passing a boolean, FALSE equates PHPExcel_Style_Border::BORDER_NONE + * and TRUE to PHPExcel_Style_Border::BORDER_MEDIUM + * @return PHPExcel_Style_Border + */ + public function setBorderStyle($pValue = PHPExcel_Style_Border::BORDER_NONE) + { + + if (empty($pValue)) { + $pValue = PHPExcel_Style_Border::BORDER_NONE; + } elseif (is_bool($pValue) && $pValue) { + $pValue = PHPExcel_Style_Border::BORDER_MEDIUM; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('style' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->borderStyle = $pValue; + } + return $this; + } + + /** + * Get Border Color + * + * @return PHPExcel_Style_Color + */ + public function getColor() + { + return $this->color; + } + + /** + * Set Border Color + * + * @param PHPExcel_Style_Color $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Border + */ + public function setColor(PHPExcel_Style_Color $pValue = null) + { + // make sure parameter is a real color and not a supervisor + $color = $pValue->getIsSupervisor() ? $pValue->getSharedComponent() : $pValue; + + if ($this->isSupervisor) { + $styleArray = $this->getColor()->getStyleArray(array('argb' => $color->getARGB())); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->color = $color; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->borderStyle . + $this->color->getHashCode() . + __CLASS__ + ); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Borders.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Borders.php new file mode 100644 index 0000000..27c40a4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Borders.php @@ -0,0 +1,429 @@ +<?php + +/** + * PHPExcel_Style_Borders + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Style_Borders extends PHPExcel_Style_Supervisor implements PHPExcel_IComparable +{ + /* Diagonal directions */ + const DIAGONAL_NONE = 0; + const DIAGONAL_UP = 1; + const DIAGONAL_DOWN = 2; + const DIAGONAL_BOTH = 3; + + /** + * Left + * + * @var PHPExcel_Style_Border + */ + protected $left; + + /** + * Right + * + * @var PHPExcel_Style_Border + */ + protected $right; + + /** + * Top + * + * @var PHPExcel_Style_Border + */ + protected $top; + + /** + * Bottom + * + * @var PHPExcel_Style_Border + */ + protected $bottom; + + /** + * Diagonal + * + * @var PHPExcel_Style_Border + */ + protected $diagonal; + + /** + * DiagonalDirection + * + * @var int + */ + protected $diagonalDirection; + + /** + * All borders psedo-border. Only applies to supervisor. + * + * @var PHPExcel_Style_Border + */ + protected $allBorders; + + /** + * Outline psedo-border. Only applies to supervisor. + * + * @var PHPExcel_Style_Border + */ + protected $outline; + + /** + * Inside psedo-border. Only applies to supervisor. + * + * @var PHPExcel_Style_Border + */ + protected $inside; + + /** + * Vertical pseudo-border. Only applies to supervisor. + * + * @var PHPExcel_Style_Border + */ + protected $vertical; + + /** + * Horizontal pseudo-border. Only applies to supervisor. + * + * @var PHPExcel_Style_Border + */ + protected $horizontal; + + /** + * Create a new PHPExcel_Style_Borders + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + parent::__construct($isSupervisor); + + // Initialise values + $this->left = new PHPExcel_Style_Border($isSupervisor, $isConditional); + $this->right = new PHPExcel_Style_Border($isSupervisor, $isConditional); + $this->top = new PHPExcel_Style_Border($isSupervisor, $isConditional); + $this->bottom = new PHPExcel_Style_Border($isSupervisor, $isConditional); + $this->diagonal = new PHPExcel_Style_Border($isSupervisor, $isConditional); + $this->diagonalDirection = PHPExcel_Style_Borders::DIAGONAL_NONE; + + // Specially for supervisor + if ($isSupervisor) { + // Initialize pseudo-borders + $this->allBorders = new PHPExcel_Style_Border(true); + $this->outline = new PHPExcel_Style_Border(true); + $this->inside = new PHPExcel_Style_Border(true); + $this->vertical = new PHPExcel_Style_Border(true); + $this->horizontal = new PHPExcel_Style_Border(true); + + // bind parent if we are a supervisor + $this->left->bindParent($this, 'left'); + $this->right->bindParent($this, 'right'); + $this->top->bindParent($this, 'top'); + $this->bottom->bindParent($this, 'bottom'); + $this->diagonal->bindParent($this, 'diagonal'); + $this->allBorders->bindParent($this, 'allBorders'); + $this->outline->bindParent($this, 'outline'); + $this->inside->bindParent($this, 'inside'); + $this->vertical->bindParent($this, 'vertical'); + $this->horizontal->bindParent($this, 'horizontal'); + } + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Borders + */ + public function getSharedComponent() + { + return $this->parent->getSharedComponent()->getBorders(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('borders' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getBorders()->applyFromArray( + * array( + * 'bottom' => array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ), + * 'top' => array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ) + * ) + * ); + * </code> + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getBorders()->applyFromArray( + * array( + * 'allborders' => array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ) + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Borders + */ + public function applyFromArray($pStyles = null) + { + if (is_array($pStyles)) { + if ($this->isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('left', $pStyles)) { + $this->getLeft()->applyFromArray($pStyles['left']); + } + if (array_key_exists('right', $pStyles)) { + $this->getRight()->applyFromArray($pStyles['right']); + } + if (array_key_exists('top', $pStyles)) { + $this->getTop()->applyFromArray($pStyles['top']); + } + if (array_key_exists('bottom', $pStyles)) { + $this->getBottom()->applyFromArray($pStyles['bottom']); + } + if (array_key_exists('diagonal', $pStyles)) { + $this->getDiagonal()->applyFromArray($pStyles['diagonal']); + } + if (array_key_exists('diagonaldirection', $pStyles)) { + $this->setDiagonalDirection($pStyles['diagonaldirection']); + } + if (array_key_exists('allborders', $pStyles)) { + $this->getLeft()->applyFromArray($pStyles['allborders']); + $this->getRight()->applyFromArray($pStyles['allborders']); + $this->getTop()->applyFromArray($pStyles['allborders']); + $this->getBottom()->applyFromArray($pStyles['allborders']); + } + } + } else { + throw new PHPExcel_Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Left + * + * @return PHPExcel_Style_Border + */ + public function getLeft() + { + return $this->left; + } + + /** + * Get Right + * + * @return PHPExcel_Style_Border + */ + public function getRight() + { + return $this->right; + } + + /** + * Get Top + * + * @return PHPExcel_Style_Border + */ + public function getTop() + { + return $this->top; + } + + /** + * Get Bottom + * + * @return PHPExcel_Style_Border + */ + public function getBottom() + { + return $this->bottom; + } + + /** + * Get Diagonal + * + * @return PHPExcel_Style_Border + */ + public function getDiagonal() + { + return $this->diagonal; + } + + /** + * Get AllBorders (pseudo-border). Only applies to supervisor. + * + * @return PHPExcel_Style_Border + * @throws PHPExcel_Exception + */ + public function getAllBorders() + { + if (!$this->isSupervisor) { + throw new PHPExcel_Exception('Can only get pseudo-border for supervisor.'); + } + return $this->allBorders; + } + + /** + * Get Outline (pseudo-border). Only applies to supervisor. + * + * @return boolean + * @throws PHPExcel_Exception + */ + public function getOutline() + { + if (!$this->isSupervisor) { + throw new PHPExcel_Exception('Can only get pseudo-border for supervisor.'); + } + return $this->outline; + } + + /** + * Get Inside (pseudo-border). Only applies to supervisor. + * + * @return boolean + * @throws PHPExcel_Exception + */ + public function getInside() + { + if (!$this->isSupervisor) { + throw new PHPExcel_Exception('Can only get pseudo-border for supervisor.'); + } + return $this->inside; + } + + /** + * Get Vertical (pseudo-border). Only applies to supervisor. + * + * @return PHPExcel_Style_Border + * @throws PHPExcel_Exception + */ + public function getVertical() + { + if (!$this->isSupervisor) { + throw new PHPExcel_Exception('Can only get pseudo-border for supervisor.'); + } + return $this->vertical; + } + + /** + * Get Horizontal (pseudo-border). Only applies to supervisor. + * + * @return PHPExcel_Style_Border + * @throws PHPExcel_Exception + */ + public function getHorizontal() + { + if (!$this->isSupervisor) { + throw new PHPExcel_Exception('Can only get pseudo-border for supervisor.'); + } + return $this->horizontal; + } + + /** + * Get DiagonalDirection + * + * @return int + */ + public function getDiagonalDirection() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getDiagonalDirection(); + } + return $this->diagonalDirection; + } + + /** + * Set DiagonalDirection + * + * @param int $pValue + * @return PHPExcel_Style_Borders + */ + public function setDiagonalDirection($pValue = PHPExcel_Style_Borders::DIAGONAL_NONE) + { + if ($pValue == '') { + $pValue = PHPExcel_Style_Borders::DIAGONAL_NONE; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('diagonaldirection' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->diagonalDirection = $pValue; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getHashcode(); + } + return md5( + $this->getLeft()->getHashCode() . + $this->getRight()->getHashCode() . + $this->getTop()->getHashCode() . + $this->getBottom()->getHashCode() . + $this->getDiagonal()->getHashCode() . + $this->getDiagonalDirection() . + __CLASS__ + ); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Color.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Color.php new file mode 100644 index 0000000..9c7790f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Color.php @@ -0,0 +1,443 @@ +<?php + +/** + * PHPExcel_Style_Color + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Style_Color extends PHPExcel_Style_Supervisor implements PHPExcel_IComparable +{ + /* Colors */ + const COLOR_BLACK = 'FF000000'; + const COLOR_WHITE = 'FFFFFFFF'; + const COLOR_RED = 'FFFF0000'; + const COLOR_DARKRED = 'FF800000'; + const COLOR_BLUE = 'FF0000FF'; + const COLOR_DARKBLUE = 'FF000080'; + const COLOR_GREEN = 'FF00FF00'; + const COLOR_DARKGREEN = 'FF008000'; + const COLOR_YELLOW = 'FFFFFF00'; + const COLOR_DARKYELLOW = 'FF808000'; + + /** + * Indexed colors array + * + * @var array + */ + protected static $indexedColors; + + /** + * ARGB - Alpha RGB + * + * @var string + */ + protected $argb = null; + + /** + * Parent property name + * + * @var string + */ + protected $parentPropertyName; + + + /** + * Create a new PHPExcel_Style_Color + * + * @param string $pARGB ARGB value for the colour + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($pARGB = PHPExcel_Style_Color::COLOR_BLACK, $isSupervisor = false, $isConditional = false) + { + // Supervisor? + parent::__construct($isSupervisor); + + // Initialise values + if (!$isConditional) { + $this->argb = $pARGB; + } + } + + /** + * Bind parent. Only used for supervisor + * + * @param mixed $parent + * @param string $parentPropertyName + * @return PHPExcel_Style_Color + */ + public function bindParent($parent, $parentPropertyName = null) + { + $this->parent = $parent; + $this->parentPropertyName = $parentPropertyName; + return $this; + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Color + */ + public function getSharedComponent() + { + switch ($this->parentPropertyName) { + case 'endColor': + return $this->parent->getSharedComponent()->getEndColor(); + case 'color': + return $this->parent->getSharedComponent()->getColor(); + case 'startColor': + return $this->parent->getSharedComponent()->getStartColor(); + } + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + switch ($this->parentPropertyName) { + case 'endColor': + $key = 'endcolor'; + break; + case 'color': + $key = 'color'; + break; + case 'startColor': + $key = 'startcolor'; + break; + + } + return $this->parent->getStyleArray(array($key => $array)); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getFont()->getColor()->applyFromArray( array('rgb' => '808080') ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Color + */ + public function applyFromArray($pStyles = null) + { + if (is_array($pStyles)) { + if ($this->isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('rgb', $pStyles)) { + $this->setRGB($pStyles['rgb']); + } + if (array_key_exists('argb', $pStyles)) { + $this->setARGB($pStyles['argb']); + } + } + } else { + throw new PHPExcel_Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get ARGB + * + * @return string + */ + public function getARGB() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getARGB(); + } + return $this->argb; + } + + /** + * Set ARGB + * + * @param string $pValue + * @return PHPExcel_Style_Color + */ + public function setARGB($pValue = PHPExcel_Style_Color::COLOR_BLACK) + { + if ($pValue == '') { + $pValue = PHPExcel_Style_Color::COLOR_BLACK; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('argb' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->argb = $pValue; + } + return $this; + } + + /** + * Get RGB + * + * @return string + */ + public function getRGB() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getRGB(); + } + return substr($this->argb, 2); + } + + /** + * Set RGB + * + * @param string $pValue RGB value + * @return PHPExcel_Style_Color + */ + public function setRGB($pValue = '000000') + { + if ($pValue == '') { + $pValue = '000000'; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('argb' => 'FF' . $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->argb = 'FF' . $pValue; + } + return $this; + } + + /** + * Get a specified colour component of an RGB value + * + * @private + * @param string $RGB The colour as an RGB value (e.g. FF00CCCC or CCDDEE + * @param int $offset Position within the RGB value to extract + * @param boolean $hex Flag indicating whether the component should be returned as a hex or a + * decimal value + * @return string The extracted colour component + */ + private static function getColourComponent($RGB, $offset, $hex = true) + { + $colour = substr($RGB, $offset, 2); + if (!$hex) { + $colour = hexdec($colour); + } + return $colour; + } + + /** + * Get the red colour component of an RGB value + * + * @param string $RGB The colour as an RGB value (e.g. FF00CCCC or CCDDEE + * @param boolean $hex Flag indicating whether the component should be returned as a hex or a + * decimal value + * @return string The red colour component + */ + public static function getRed($RGB, $hex = true) + { + return self::getColourComponent($RGB, strlen($RGB) - 6, $hex); + } + + /** + * Get the green colour component of an RGB value + * + * @param string $RGB The colour as an RGB value (e.g. FF00CCCC or CCDDEE + * @param boolean $hex Flag indicating whether the component should be returned as a hex or a + * decimal value + * @return string The green colour component + */ + public static function getGreen($RGB, $hex = true) + { + return self::getColourComponent($RGB, strlen($RGB) - 4, $hex); + } + + /** + * Get the blue colour component of an RGB value + * + * @param string $RGB The colour as an RGB value (e.g. FF00CCCC or CCDDEE + * @param boolean $hex Flag indicating whether the component should be returned as a hex or a + * decimal value + * @return string The blue colour component + */ + public static function getBlue($RGB, $hex = true) + { + return self::getColourComponent($RGB, strlen($RGB) - 2, $hex); + } + + /** + * Adjust the brightness of a color + * + * @param string $hex The colour as an RGBA or RGB value (e.g. FF00CCCC or CCDDEE) + * @param float $adjustPercentage The percentage by which to adjust the colour as a float from -1 to 1 + * @return string The adjusted colour as an RGBA or RGB value (e.g. FF00CCCC or CCDDEE) + */ + public static function changeBrightness($hex, $adjustPercentage) + { + $rgba = (strlen($hex) == 8); + + $red = self::getRed($hex, false); + $green = self::getGreen($hex, false); + $blue = self::getBlue($hex, false); + if ($adjustPercentage > 0) { + $red += (255 - $red) * $adjustPercentage; + $green += (255 - $green) * $adjustPercentage; + $blue += (255 - $blue) * $adjustPercentage; + } else { + $red += $red * $adjustPercentage; + $green += $green * $adjustPercentage; + $blue += $blue * $adjustPercentage; + } + + if ($red < 0) { + $red = 0; + } elseif ($red > 255) { + $red = 255; + } + if ($green < 0) { + $green = 0; + } elseif ($green > 255) { + $green = 255; + } + if ($blue < 0) { + $blue = 0; + } elseif ($blue > 255) { + $blue = 255; + } + + $rgb = strtoupper( + str_pad(dechex($red), 2, '0', 0) . + str_pad(dechex($green), 2, '0', 0) . + str_pad(dechex($blue), 2, '0', 0) + ); + return (($rgba) ? 'FF' : '') . $rgb; + } + + /** + * Get indexed color + * + * @param int $pIndex Index entry point into the colour array + * @param boolean $background Flag to indicate whether default background or foreground colour + * should be returned if the indexed colour doesn't exist + * @return PHPExcel_Style_Color + */ + public static function indexedColor($pIndex, $background = false) + { + // Clean parameter + $pIndex = intval($pIndex); + + // Indexed colors + if (is_null(self::$indexedColors)) { + self::$indexedColors = array( + 1 => 'FF000000', // System Colour #1 - Black + 2 => 'FFFFFFFF', // System Colour #2 - White + 3 => 'FFFF0000', // System Colour #3 - Red + 4 => 'FF00FF00', // System Colour #4 - Green + 5 => 'FF0000FF', // System Colour #5 - Blue + 6 => 'FFFFFF00', // System Colour #6 - Yellow + 7 => 'FFFF00FF', // System Colour #7- Magenta + 8 => 'FF00FFFF', // System Colour #8- Cyan + 9 => 'FF800000', // Standard Colour #9 + 10 => 'FF008000', // Standard Colour #10 + 11 => 'FF000080', // Standard Colour #11 + 12 => 'FF808000', // Standard Colour #12 + 13 => 'FF800080', // Standard Colour #13 + 14 => 'FF008080', // Standard Colour #14 + 15 => 'FFC0C0C0', // Standard Colour #15 + 16 => 'FF808080', // Standard Colour #16 + 17 => 'FF9999FF', // Chart Fill Colour #17 + 18 => 'FF993366', // Chart Fill Colour #18 + 19 => 'FFFFFFCC', // Chart Fill Colour #19 + 20 => 'FFCCFFFF', // Chart Fill Colour #20 + 21 => 'FF660066', // Chart Fill Colour #21 + 22 => 'FFFF8080', // Chart Fill Colour #22 + 23 => 'FF0066CC', // Chart Fill Colour #23 + 24 => 'FFCCCCFF', // Chart Fill Colour #24 + 25 => 'FF000080', // Chart Line Colour #25 + 26 => 'FFFF00FF', // Chart Line Colour #26 + 27 => 'FFFFFF00', // Chart Line Colour #27 + 28 => 'FF00FFFF', // Chart Line Colour #28 + 29 => 'FF800080', // Chart Line Colour #29 + 30 => 'FF800000', // Chart Line Colour #30 + 31 => 'FF008080', // Chart Line Colour #31 + 32 => 'FF0000FF', // Chart Line Colour #32 + 33 => 'FF00CCFF', // Standard Colour #33 + 34 => 'FFCCFFFF', // Standard Colour #34 + 35 => 'FFCCFFCC', // Standard Colour #35 + 36 => 'FFFFFF99', // Standard Colour #36 + 37 => 'FF99CCFF', // Standard Colour #37 + 38 => 'FFFF99CC', // Standard Colour #38 + 39 => 'FFCC99FF', // Standard Colour #39 + 40 => 'FFFFCC99', // Standard Colour #40 + 41 => 'FF3366FF', // Standard Colour #41 + 42 => 'FF33CCCC', // Standard Colour #42 + 43 => 'FF99CC00', // Standard Colour #43 + 44 => 'FFFFCC00', // Standard Colour #44 + 45 => 'FFFF9900', // Standard Colour #45 + 46 => 'FFFF6600', // Standard Colour #46 + 47 => 'FF666699', // Standard Colour #47 + 48 => 'FF969696', // Standard Colour #48 + 49 => 'FF003366', // Standard Colour #49 + 50 => 'FF339966', // Standard Colour #50 + 51 => 'FF003300', // Standard Colour #51 + 52 => 'FF333300', // Standard Colour #52 + 53 => 'FF993300', // Standard Colour #53 + 54 => 'FF993366', // Standard Colour #54 + 55 => 'FF333399', // Standard Colour #55 + 56 => 'FF333333' // Standard Colour #56 + ); + } + + if (array_key_exists($pIndex, self::$indexedColors)) { + return new PHPExcel_Style_Color(self::$indexedColors[$pIndex]); + } + + if ($background) { + return new PHPExcel_Style_Color(self::COLOR_WHITE); + } + return new PHPExcel_Style_Color(self::COLOR_BLACK); + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->argb . + __CLASS__ + ); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Conditional.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Conditional.php new file mode 100644 index 0000000..331362b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Conditional.php @@ -0,0 +1,293 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Style_Conditional + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Style_Conditional implements PHPExcel_IComparable +{ + /* Condition types */ + const CONDITION_NONE = 'none'; + const CONDITION_CELLIS = 'cellIs'; + const CONDITION_CONTAINSTEXT = 'containsText'; + const CONDITION_EXPRESSION = 'expression'; + + /* Operator types */ + const OPERATOR_NONE = ''; + const OPERATOR_BEGINSWITH = 'beginsWith'; + const OPERATOR_ENDSWITH = 'endsWith'; + const OPERATOR_EQUAL = 'equal'; + const OPERATOR_GREATERTHAN = 'greaterThan'; + const OPERATOR_GREATERTHANOREQUAL = 'greaterThanOrEqual'; + const OPERATOR_LESSTHAN = 'lessThan'; + const OPERATOR_LESSTHANOREQUAL = 'lessThanOrEqual'; + const OPERATOR_NOTEQUAL = 'notEqual'; + const OPERATOR_CONTAINSTEXT = 'containsText'; + const OPERATOR_NOTCONTAINS = 'notContains'; + const OPERATOR_BETWEEN = 'between'; + + /** + * Condition type + * + * @var int + */ + private $conditionType; + + /** + * Operator type + * + * @var int + */ + private $operatorType; + + /** + * Text + * + * @var string + */ + private $text; + + /** + * Condition + * + * @var string[] + */ + private $condition = array(); + + /** + * Style + * + * @var PHPExcel_Style + */ + private $style; + + /** + * Create a new PHPExcel_Style_Conditional + */ + public function __construct() + { + // Initialise values + $this->conditionType = PHPExcel_Style_Conditional::CONDITION_NONE; + $this->operatorType = PHPExcel_Style_Conditional::OPERATOR_NONE; + $this->text = null; + $this->condition = array(); + $this->style = new PHPExcel_Style(false, true); + } + + /** + * Get Condition type + * + * @return string + */ + public function getConditionType() + { + return $this->conditionType; + } + + /** + * Set Condition type + * + * @param string $pValue PHPExcel_Style_Conditional condition type + * @return PHPExcel_Style_Conditional + */ + public function setConditionType($pValue = PHPExcel_Style_Conditional::CONDITION_NONE) + { + $this->conditionType = $pValue; + return $this; + } + + /** + * Get Operator type + * + * @return string + */ + public function getOperatorType() + { + return $this->operatorType; + } + + /** + * Set Operator type + * + * @param string $pValue PHPExcel_Style_Conditional operator type + * @return PHPExcel_Style_Conditional + */ + public function setOperatorType($pValue = PHPExcel_Style_Conditional::OPERATOR_NONE) + { + $this->operatorType = $pValue; + return $this; + } + + /** + * Get text + * + * @return string + */ + public function getText() + { + return $this->text; + } + + /** + * Set text + * + * @param string $value + * @return PHPExcel_Style_Conditional + */ + public function setText($value = null) + { + $this->text = $value; + return $this; + } + + /** + * Get Condition + * + * @deprecated Deprecated, use getConditions instead + * @return string + */ + public function getCondition() + { + if (isset($this->condition[0])) { + return $this->condition[0]; + } + + return ''; + } + + /** + * Set Condition + * + * @deprecated Deprecated, use setConditions instead + * @param string $pValue Condition + * @return PHPExcel_Style_Conditional + */ + public function setCondition($pValue = '') + { + if (!is_array($pValue)) { + $pValue = array($pValue); + } + + return $this->setConditions($pValue); + } + + /** + * Get Conditions + * + * @return string[] + */ + public function getConditions() + { + return $this->condition; + } + + /** + * Set Conditions + * + * @param string[] $pValue Condition + * @return PHPExcel_Style_Conditional + */ + public function setConditions($pValue) + { + if (!is_array($pValue)) { + $pValue = array($pValue); + } + $this->condition = $pValue; + return $this; + } + + /** + * Add Condition + * + * @param string $pValue Condition + * @return PHPExcel_Style_Conditional + */ + public function addCondition($pValue = '') + { + $this->condition[] = $pValue; + return $this; + } + + /** + * Get Style + * + * @return PHPExcel_Style + */ + public function getStyle() + { + return $this->style; + } + + /** + * Set Style + * + * @param PHPExcel_Style $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Conditional + */ + public function setStyle(PHPExcel_Style $pValue = null) + { + $this->style = $pValue; + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + return md5( + $this->conditionType . + $this->operatorType . + implode(';', $this->condition) . + $this->style->getHashCode() . + __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Fill.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Fill.php new file mode 100644 index 0000000..26343ff --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Fill.php @@ -0,0 +1,322 @@ +<?php + +/** + * PHPExcel_Style_Fill + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Style_Fill extends PHPExcel_Style_Supervisor implements PHPExcel_IComparable +{ + /* Fill types */ + const FILL_NONE = 'none'; + const FILL_SOLID = 'solid'; + const FILL_GRADIENT_LINEAR = 'linear'; + const FILL_GRADIENT_PATH = 'path'; + const FILL_PATTERN_DARKDOWN = 'darkDown'; + const FILL_PATTERN_DARKGRAY = 'darkGray'; + const FILL_PATTERN_DARKGRID = 'darkGrid'; + const FILL_PATTERN_DARKHORIZONTAL = 'darkHorizontal'; + const FILL_PATTERN_DARKTRELLIS = 'darkTrellis'; + const FILL_PATTERN_DARKUP = 'darkUp'; + const FILL_PATTERN_DARKVERTICAL = 'darkVertical'; + const FILL_PATTERN_GRAY0625 = 'gray0625'; + const FILL_PATTERN_GRAY125 = 'gray125'; + const FILL_PATTERN_LIGHTDOWN = 'lightDown'; + const FILL_PATTERN_LIGHTGRAY = 'lightGray'; + const FILL_PATTERN_LIGHTGRID = 'lightGrid'; + const FILL_PATTERN_LIGHTHORIZONTAL = 'lightHorizontal'; + const FILL_PATTERN_LIGHTTRELLIS = 'lightTrellis'; + const FILL_PATTERN_LIGHTUP = 'lightUp'; + const FILL_PATTERN_LIGHTVERTICAL = 'lightVertical'; + const FILL_PATTERN_MEDIUMGRAY = 'mediumGray'; + + /** + * Fill type + * + * @var string + */ + protected $fillType = PHPExcel_Style_Fill::FILL_NONE; + + /** + * Rotation + * + * @var double + */ + protected $rotation = 0; + + /** + * Start color + * + * @var PHPExcel_Style_Color + */ + protected $startColor; + + /** + * End color + * + * @var PHPExcel_Style_Color + */ + protected $endColor; + + /** + * Create a new PHPExcel_Style_Fill + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + parent::__construct($isSupervisor); + + // Initialise values + if ($isConditional) { + $this->fillType = null; + } + $this->startColor = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_WHITE, $isSupervisor, $isConditional); + $this->endColor = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK, $isSupervisor, $isConditional); + + // bind parent if we are a supervisor + if ($isSupervisor) { + $this->startColor->bindParent($this, 'startColor'); + $this->endColor->bindParent($this, 'endColor'); + } + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Fill + */ + public function getSharedComponent() + { + return $this->parent->getSharedComponent()->getFill(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('fill' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getFill()->applyFromArray( + * array( + * 'type' => PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR, + * 'rotation' => 0, + * 'startcolor' => array( + * 'rgb' => '000000' + * ), + * 'endcolor' => array( + * 'argb' => 'FFFFFFFF' + * ) + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Fill + */ + public function applyFromArray($pStyles = null) + { + if (is_array($pStyles)) { + if ($this->isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('type', $pStyles)) { + $this->setFillType($pStyles['type']); + } + if (array_key_exists('rotation', $pStyles)) { + $this->setRotation($pStyles['rotation']); + } + if (array_key_exists('startcolor', $pStyles)) { + $this->getStartColor()->applyFromArray($pStyles['startcolor']); + } + if (array_key_exists('endcolor', $pStyles)) { + $this->getEndColor()->applyFromArray($pStyles['endcolor']); + } + if (array_key_exists('color', $pStyles)) { + $this->getStartColor()->applyFromArray($pStyles['color']); + } + } + } else { + throw new PHPExcel_Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Fill Type + * + * @return string + */ + public function getFillType() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getFillType(); + } + return $this->fillType; + } + + /** + * Set Fill Type + * + * @param string $pValue PHPExcel_Style_Fill fill type + * @return PHPExcel_Style_Fill + */ + public function setFillType($pValue = PHPExcel_Style_Fill::FILL_NONE) + { + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('type' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->fillType = $pValue; + } + return $this; + } + + /** + * Get Rotation + * + * @return double + */ + public function getRotation() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getRotation(); + } + return $this->rotation; + } + + /** + * Set Rotation + * + * @param double $pValue + * @return PHPExcel_Style_Fill + */ + public function setRotation($pValue = 0) + { + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('rotation' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->rotation = $pValue; + } + return $this; + } + + /** + * Get Start Color + * + * @return PHPExcel_Style_Color + */ + public function getStartColor() + { + return $this->startColor; + } + + /** + * Set Start Color + * + * @param PHPExcel_Style_Color $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Fill + */ + public function setStartColor(PHPExcel_Style_Color $pValue = null) + { + // make sure parameter is a real color and not a supervisor + $color = $pValue->getIsSupervisor() ? $pValue->getSharedComponent() : $pValue; + + if ($this->isSupervisor) { + $styleArray = $this->getStartColor()->getStyleArray(array('argb' => $color->getARGB())); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->startColor = $color; + } + return $this; + } + + /** + * Get End Color + * + * @return PHPExcel_Style_Color + */ + public function getEndColor() + { + return $this->endColor; + } + + /** + * Set End Color + * + * @param PHPExcel_Style_Color $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Fill + */ + public function setEndColor(PHPExcel_Style_Color $pValue = null) + { + // make sure parameter is a real color and not a supervisor + $color = $pValue->getIsSupervisor() ? $pValue->getSharedComponent() : $pValue; + + if ($this->isSupervisor) { + $styleArray = $this->getEndColor()->getStyleArray(array('argb' => $color->getARGB())); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->endColor = $color; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->getFillType() . + $this->getRotation() . + $this->getStartColor()->getHashCode() . + $this->getEndColor()->getHashCode() . + __CLASS__ + ); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Font.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Font.php new file mode 100644 index 0000000..9566e1d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Font.php @@ -0,0 +1,543 @@ +<?php + +/** + * PHPExcel_Style_Font + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Style_Font extends PHPExcel_Style_Supervisor implements PHPExcel_IComparable +{ + /* Underline types */ + const UNDERLINE_NONE = 'none'; + const UNDERLINE_DOUBLE = 'double'; + const UNDERLINE_DOUBLEACCOUNTING = 'doubleAccounting'; + const UNDERLINE_SINGLE = 'single'; + const UNDERLINE_SINGLEACCOUNTING = 'singleAccounting'; + + /** + * Font Name + * + * @var string + */ + protected $name = 'Calibri'; + + /** + * Font Size + * + * @var float + */ + protected $size = 11; + + /** + * Bold + * + * @var boolean + */ + protected $bold = false; + + /** + * Italic + * + * @var boolean + */ + protected $italic = false; + + /** + * Superscript + * + * @var boolean + */ + protected $superScript = false; + + /** + * Subscript + * + * @var boolean + */ + protected $subScript = false; + + /** + * Underline + * + * @var string + */ + protected $underline = self::UNDERLINE_NONE; + + /** + * Strikethrough + * + * @var boolean + */ + protected $strikethrough = false; + + /** + * Foreground color + * + * @var PHPExcel_Style_Color + */ + protected $color; + + /** + * Create a new PHPExcel_Style_Font + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + parent::__construct($isSupervisor); + + // Initialise values + if ($isConditional) { + $this->name = null; + $this->size = null; + $this->bold = null; + $this->italic = null; + $this->superScript = null; + $this->subScript = null; + $this->underline = null; + $this->strikethrough = null; + $this->color = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK, $isSupervisor, $isConditional); + } else { + $this->color = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK, $isSupervisor); + } + // bind parent if we are a supervisor + if ($isSupervisor) { + $this->color->bindParent($this, 'color'); + } + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Font + */ + public function getSharedComponent() + { + return $this->parent->getSharedComponent()->getFont(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('font' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getFont()->applyFromArray( + * array( + * 'name' => 'Arial', + * 'bold' => TRUE, + * 'italic' => FALSE, + * 'underline' => PHPExcel_Style_Font::UNDERLINE_DOUBLE, + * 'strike' => FALSE, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Font + */ + public function applyFromArray($pStyles = null) + { + if (is_array($pStyles)) { + if ($this->isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('name', $pStyles)) { + $this->setName($pStyles['name']); + } + if (array_key_exists('bold', $pStyles)) { + $this->setBold($pStyles['bold']); + } + if (array_key_exists('italic', $pStyles)) { + $this->setItalic($pStyles['italic']); + } + if (array_key_exists('superScript', $pStyles)) { + $this->setSuperScript($pStyles['superScript']); + } + if (array_key_exists('subScript', $pStyles)) { + $this->setSubScript($pStyles['subScript']); + } + if (array_key_exists('underline', $pStyles)) { + $this->setUnderline($pStyles['underline']); + } + if (array_key_exists('strike', $pStyles)) { + $this->setStrikethrough($pStyles['strike']); + } + if (array_key_exists('color', $pStyles)) { + $this->getColor()->applyFromArray($pStyles['color']); + } + if (array_key_exists('size', $pStyles)) { + $this->setSize($pStyles['size']); + } + } + } else { + throw new PHPExcel_Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Name + * + * @return string + */ + public function getName() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getName(); + } + return $this->name; + } + + /** + * Set Name + * + * @param string $pValue + * @return PHPExcel_Style_Font + */ + public function setName($pValue = 'Calibri') + { + if ($pValue == '') { + $pValue = 'Calibri'; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('name' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->name = $pValue; + } + return $this; + } + + /** + * Get Size + * + * @return double + */ + public function getSize() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getSize(); + } + return $this->size; + } + + /** + * Set Size + * + * @param double $pValue + * @return PHPExcel_Style_Font + */ + public function setSize($pValue = 10) + { + if ($pValue == '') { + $pValue = 10; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('size' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->size = $pValue; + } + return $this; + } + + /** + * Get Bold + * + * @return boolean + */ + public function getBold() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getBold(); + } + return $this->bold; + } + + /** + * Set Bold + * + * @param boolean $pValue + * @return PHPExcel_Style_Font + */ + public function setBold($pValue = false) + { + if ($pValue == '') { + $pValue = false; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('bold' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->bold = $pValue; + } + return $this; + } + + /** + * Get Italic + * + * @return boolean + */ + public function getItalic() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getItalic(); + } + return $this->italic; + } + + /** + * Set Italic + * + * @param boolean $pValue + * @return PHPExcel_Style_Font + */ + public function setItalic($pValue = false) + { + if ($pValue == '') { + $pValue = false; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('italic' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->italic = $pValue; + } + return $this; + } + + /** + * Get SuperScript + * + * @return boolean + */ + public function getSuperScript() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getSuperScript(); + } + return $this->superScript; + } + + /** + * Set SuperScript + * + * @param boolean $pValue + * @return PHPExcel_Style_Font + */ + public function setSuperScript($pValue = false) + { + if ($pValue == '') { + $pValue = false; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('superScript' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->superScript = $pValue; + $this->subScript = !$pValue; + } + return $this; + } + + /** + * Get SubScript + * + * @return boolean + */ + public function getSubScript() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getSubScript(); + } + return $this->subScript; + } + + /** + * Set SubScript + * + * @param boolean $pValue + * @return PHPExcel_Style_Font + */ + public function setSubScript($pValue = false) + { + if ($pValue == '') { + $pValue = false; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('subScript' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->subScript = $pValue; + $this->superScript = !$pValue; + } + return $this; + } + + /** + * Get Underline + * + * @return string + */ + public function getUnderline() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getUnderline(); + } + return $this->underline; + } + + /** + * Set Underline + * + * @param string|boolean $pValue PHPExcel_Style_Font underline type + * If a boolean is passed, then TRUE equates to UNDERLINE_SINGLE, + * false equates to UNDERLINE_NONE + * @return PHPExcel_Style_Font + */ + public function setUnderline($pValue = self::UNDERLINE_NONE) + { + if (is_bool($pValue)) { + $pValue = ($pValue) ? self::UNDERLINE_SINGLE : self::UNDERLINE_NONE; + } elseif ($pValue == '') { + $pValue = self::UNDERLINE_NONE; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('underline' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->underline = $pValue; + } + return $this; + } + + /** + * Get Strikethrough + * + * @return boolean + */ + public function getStrikethrough() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getStrikethrough(); + } + return $this->strikethrough; + } + + /** + * Set Strikethrough + * + * @param boolean $pValue + * @return PHPExcel_Style_Font + */ + public function setStrikethrough($pValue = false) + { + if ($pValue == '') { + $pValue = false; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('strike' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->strikethrough = $pValue; + } + return $this; + } + + /** + * Get Color + * + * @return PHPExcel_Style_Color + */ + public function getColor() + { + return $this->color; + } + + /** + * Set Color + * + * @param PHPExcel_Style_Color $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Font + */ + public function setColor(PHPExcel_Style_Color $pValue = null) + { + // make sure parameter is a real color and not a supervisor + $color = $pValue->getIsSupervisor() ? $pValue->getSharedComponent() : $pValue; + + if ($this->isSupervisor) { + $styleArray = $this->getColor()->getStyleArray(array('argb' => $color->getARGB())); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->color = $color; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->name . + $this->size . + ($this->bold ? 't' : 'f') . + ($this->italic ? 't' : 'f') . + ($this->superScript ? 't' : 'f') . + ($this->subScript ? 't' : 'f') . + $this->underline . + ($this->strikethrough ? 't' : 'f') . + $this->color->getHashCode() . + __CLASS__ + ); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/NumberFormat.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/NumberFormat.php new file mode 100644 index 0000000..1b72cda --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/NumberFormat.php @@ -0,0 +1,751 @@ +<?php + +/** + * PHPExcel_Style_NumberFormat + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Style_NumberFormat extends PHPExcel_Style_Supervisor implements PHPExcel_IComparable +{ + /* Pre-defined formats */ + const FORMAT_GENERAL = 'General'; + + const FORMAT_TEXT = '@'; + + const FORMAT_NUMBER = '0'; + const FORMAT_NUMBER_00 = '0.00'; + const FORMAT_NUMBER_COMMA_SEPARATED1 = '#,##0.00'; + const FORMAT_NUMBER_COMMA_SEPARATED2 = '#,##0.00_-'; + + const FORMAT_PERCENTAGE = '0%'; + const FORMAT_PERCENTAGE_00 = '0.00%'; + + const FORMAT_DATE_YYYYMMDD2 = 'yyyy-mm-dd'; + const FORMAT_DATE_YYYYMMDD = 'yy-mm-dd'; + const FORMAT_DATE_DDMMYYYY = 'dd/mm/yy'; + const FORMAT_DATE_DMYSLASH = 'd/m/y'; + const FORMAT_DATE_DMYMINUS = 'd-m-y'; + const FORMAT_DATE_DMMINUS = 'd-m'; + const FORMAT_DATE_MYMINUS = 'm-y'; + const FORMAT_DATE_XLSX14 = 'mm-dd-yy'; + const FORMAT_DATE_XLSX15 = 'd-mmm-yy'; + const FORMAT_DATE_XLSX16 = 'd-mmm'; + const FORMAT_DATE_XLSX17 = 'mmm-yy'; + const FORMAT_DATE_XLSX22 = 'm/d/yy h:mm'; + const FORMAT_DATE_DATETIME = 'd/m/y h:mm'; + const FORMAT_DATE_TIME1 = 'h:mm AM/PM'; + const FORMAT_DATE_TIME2 = 'h:mm:ss AM/PM'; + const FORMAT_DATE_TIME3 = 'h:mm'; + const FORMAT_DATE_TIME4 = 'h:mm:ss'; + const FORMAT_DATE_TIME5 = 'mm:ss'; + const FORMAT_DATE_TIME6 = 'h:mm:ss'; + const FORMAT_DATE_TIME7 = 'i:s.S'; + const FORMAT_DATE_TIME8 = 'h:mm:ss;@'; + const FORMAT_DATE_YYYYMMDDSLASH = 'yy/mm/dd;@'; + + const FORMAT_CURRENCY_USD_SIMPLE = '"$"#,##0.00_-'; + const FORMAT_CURRENCY_USD = '$#,##0_-'; + const FORMAT_CURRENCY_EUR_SIMPLE = '[$EUR ]#,##0.00_-'; + + /** + * Excel built-in number formats + * + * @var array + */ + protected static $builtInFormats; + + /** + * Excel built-in number formats (flipped, for faster lookups) + * + * @var array + */ + protected static $flippedBuiltInFormats; + + /** + * Format Code + * + * @var string + */ + protected $formatCode = PHPExcel_Style_NumberFormat::FORMAT_GENERAL; + + /** + * Built-in format Code + * + * @var string + */ + protected $builtInFormatCode = 0; + + /** + * Create a new PHPExcel_Style_NumberFormat + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + parent::__construct($isSupervisor); + + if ($isConditional) { + $this->formatCode = null; + $this->builtInFormatCode = false; + } + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_NumberFormat + */ + public function getSharedComponent() + { + return $this->parent->getSharedComponent()->getNumberFormat(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('numberformat' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getNumberFormat()->applyFromArray( + * array( + * 'code' => PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws PHPExcel_Exception + * @return PHPExcel_Style_NumberFormat + */ + public function applyFromArray($pStyles = null) + { + if (is_array($pStyles)) { + if ($this->isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('code', $pStyles)) { + $this->setFormatCode($pStyles['code']); + } + } + } else { + throw new PHPExcel_Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Format Code + * + * @return string + */ + public function getFormatCode() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getFormatCode(); + } + if ($this->builtInFormatCode !== false) { + return self::builtInFormatCode($this->builtInFormatCode); + } + return $this->formatCode; + } + + /** + * Set Format Code + * + * @param string $pValue + * @return PHPExcel_Style_NumberFormat + */ + public function setFormatCode($pValue = PHPExcel_Style_NumberFormat::FORMAT_GENERAL) + { + if ($pValue == '') { + $pValue = PHPExcel_Style_NumberFormat::FORMAT_GENERAL; + } + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('code' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->formatCode = $pValue; + $this->builtInFormatCode = self::builtInFormatCodeIndex($pValue); + } + return $this; + } + + /** + * Get Built-In Format Code + * + * @return int + */ + public function getBuiltInFormatCode() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getBuiltInFormatCode(); + } + return $this->builtInFormatCode; + } + + /** + * Set Built-In Format Code + * + * @param int $pValue + * @return PHPExcel_Style_NumberFormat + */ + public function setBuiltInFormatCode($pValue = 0) + { + + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('code' => self::builtInFormatCode($pValue))); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->builtInFormatCode = $pValue; + $this->formatCode = self::builtInFormatCode($pValue); + } + return $this; + } + + /** + * Fill built-in format codes + */ + private static function fillBuiltInFormatCodes() + { + // [MS-OI29500: Microsoft Office Implementation Information for ISO/IEC-29500 Standard Compliance] + // 18.8.30. numFmt (Number Format) + // + // The ECMA standard defines built-in format IDs + // 14: "mm-dd-yy" + // 22: "m/d/yy h:mm" + // 37: "#,##0 ;(#,##0)" + // 38: "#,##0 ;[Red](#,##0)" + // 39: "#,##0.00;(#,##0.00)" + // 40: "#,##0.00;[Red](#,##0.00)" + // 47: "mmss.0" + // KOR fmt 55: "yyyy-mm-dd" + // Excel defines built-in format IDs + // 14: "m/d/yyyy" + // 22: "m/d/yyyy h:mm" + // 37: "#,##0_);(#,##0)" + // 38: "#,##0_);[Red](#,##0)" + // 39: "#,##0.00_);(#,##0.00)" + // 40: "#,##0.00_);[Red](#,##0.00)" + // 47: "mm:ss.0" + // KOR fmt 55: "yyyy/mm/dd" + + // Built-in format codes + if (is_null(self::$builtInFormats)) { + self::$builtInFormats = array(); + + // General + self::$builtInFormats[0] = PHPExcel_Style_NumberFormat::FORMAT_GENERAL; + self::$builtInFormats[1] = '0'; + self::$builtInFormats[2] = '0.00'; + self::$builtInFormats[3] = '#,##0'; + self::$builtInFormats[4] = '#,##0.00'; + + self::$builtInFormats[9] = '0%'; + self::$builtInFormats[10] = '0.00%'; + self::$builtInFormats[11] = '0.00E+00'; + self::$builtInFormats[12] = '# ?/?'; + self::$builtInFormats[13] = '# ??/??'; + self::$builtInFormats[14] = 'm/d/yyyy'; // Despite ECMA 'mm-dd-yy'; + self::$builtInFormats[15] = 'd-mmm-yy'; + self::$builtInFormats[16] = 'd-mmm'; + self::$builtInFormats[17] = 'mmm-yy'; + self::$builtInFormats[18] = 'h:mm AM/PM'; + self::$builtInFormats[19] = 'h:mm:ss AM/PM'; + self::$builtInFormats[20] = 'h:mm'; + self::$builtInFormats[21] = 'h:mm:ss'; + self::$builtInFormats[22] = 'm/d/yyyy h:mm'; // Despite ECMA 'm/d/yy h:mm'; + + self::$builtInFormats[37] = '#,##0_);(#,##0)'; // Despite ECMA '#,##0 ;(#,##0)'; + self::$builtInFormats[38] = '#,##0_);[Red](#,##0)'; // Despite ECMA '#,##0 ;[Red](#,##0)'; + self::$builtInFormats[39] = '#,##0.00_);(#,##0.00)'; // Despite ECMA '#,##0.00;(#,##0.00)'; + self::$builtInFormats[40] = '#,##0.00_);[Red](#,##0.00)'; // Despite ECMA '#,##0.00;[Red](#,##0.00)'; + + self::$builtInFormats[44] = '_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)'; + self::$builtInFormats[45] = 'mm:ss'; + self::$builtInFormats[46] = '[h]:mm:ss'; + self::$builtInFormats[47] = 'mm:ss.0'; // Despite ECMA 'mmss.0'; + self::$builtInFormats[48] = '##0.0E+0'; + self::$builtInFormats[49] = '@'; + + // CHT + self::$builtInFormats[27] = '[$-404]e/m/d'; + self::$builtInFormats[30] = 'm/d/yy'; + self::$builtInFormats[36] = '[$-404]e/m/d'; + self::$builtInFormats[50] = '[$-404]e/m/d'; + self::$builtInFormats[57] = '[$-404]e/m/d'; + + // THA + self::$builtInFormats[59] = 't0'; + self::$builtInFormats[60] = 't0.00'; + self::$builtInFormats[61] = 't#,##0'; + self::$builtInFormats[62] = 't#,##0.00'; + self::$builtInFormats[67] = 't0%'; + self::$builtInFormats[68] = 't0.00%'; + self::$builtInFormats[69] = 't# ?/?'; + self::$builtInFormats[70] = 't# ??/??'; + + // Flip array (for faster lookups) + self::$flippedBuiltInFormats = array_flip(self::$builtInFormats); + } + } + + /** + * Get built-in format code + * + * @param int $pIndex + * @return string + */ + public static function builtInFormatCode($pIndex) + { + // Clean parameter + $pIndex = intval($pIndex); + + // Ensure built-in format codes are available + self::fillBuiltInFormatCodes(); + // Lookup format code + if (isset(self::$builtInFormats[$pIndex])) { + return self::$builtInFormats[$pIndex]; + } + + return ''; + } + + /** + * Get built-in format code index + * + * @param string $formatCode + * @return int|boolean + */ + public static function builtInFormatCodeIndex($formatCode) + { + // Ensure built-in format codes are available + self::fillBuiltInFormatCodes(); + + // Lookup format code + if (isset(self::$flippedBuiltInFormats[$formatCode])) { + return self::$flippedBuiltInFormats[$formatCode]; + } + + return false; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->formatCode . + $this->builtInFormatCode . + __CLASS__ + ); + } + + /** + * Search/replace values to convert Excel date/time format masks to PHP format masks + * + * @var array + */ + private static $dateFormatReplacements = array( + // first remove escapes related to non-format characters + '\\' => '', + // 12-hour suffix + 'am/pm' => 'A', + // 4-digit year + 'e' => 'Y', + 'yyyy' => 'Y', + // 2-digit year + 'yy' => 'y', + // first letter of month - no php equivalent + 'mmmmm' => 'M', + // full month name + 'mmmm' => 'F', + // short month name + 'mmm' => 'M', + // mm is minutes if time, but can also be month w/leading zero + // so we try to identify times be the inclusion of a : separator in the mask + // It isn't perfect, but the best way I know how + ':mm' => ':i', + 'mm:' => 'i:', + // month leading zero + 'mm' => 'm', + // month no leading zero + 'm' => 'n', + // full day of week name + 'dddd' => 'l', + // short day of week name + 'ddd' => 'D', + // days leading zero + 'dd' => 'd', + // days no leading zero + 'd' => 'j', + // seconds + 'ss' => 's', + // fractional seconds - no php equivalent + '.s' => '' + ); + /** + * Search/replace values to convert Excel date/time format masks hours to PHP format masks (24 hr clock) + * + * @var array + */ + private static $dateFormatReplacements24 = array( + 'hh' => 'H', + 'h' => 'G' + ); + /** + * Search/replace values to convert Excel date/time format masks hours to PHP format masks (12 hr clock) + * + * @var array + */ + private static $dateFormatReplacements12 = array( + 'hh' => 'h', + 'h' => 'g' + ); + + private static function setLowercaseCallback($matches) { + return mb_strtolower($matches[0]); + } + + private static function escapeQuotesCallback($matches) { + return '\\' . implode('\\', str_split($matches[1])); + } + + private static function formatAsDate(&$value, &$format) + { + // strip off first part containing e.g. [$-F800] or [$USD-409] + // general syntax: [$<Currency string>-<language info>] + // language info is in hexadecimal + $format = preg_replace('/^(\[\$[A-Z]*-[0-9A-F]*\])/i', '', $format); + + // OpenOffice.org uses upper-case number formats, e.g. 'YYYY', convert to lower-case; + // but we don't want to change any quoted strings + $format = preg_replace_callback('/(?:^|")([^"]*)(?:$|")/', array('self', 'setLowercaseCallback'), $format); + + // Only process the non-quoted blocks for date format characters + $blocks = explode('"', $format); + foreach($blocks as $key => &$block) { + if ($key % 2 == 0) { + $block = strtr($block, self::$dateFormatReplacements); + if (!strpos($block, 'A')) { + // 24-hour time format + $block = strtr($block, self::$dateFormatReplacements24); + } else { + // 12-hour time format + $block = strtr($block, self::$dateFormatReplacements12); + } + } + } + $format = implode('"', $blocks); + + // escape any quoted characters so that DateTime format() will render them correctly + $format = preg_replace_callback('/"(.*)"/U', array('self', 'escapeQuotesCallback'), $format); + + $dateObj = PHPExcel_Shared_Date::ExcelToPHPObject($value); + $value = $dateObj->format($format); + } + + private static function formatAsPercentage(&$value, &$format) + { + if ($format === self::FORMAT_PERCENTAGE) { + $value = round((100 * $value), 0) . '%'; + } else { + if (preg_match('/\.[#0]+/i', $format, $m)) { + $s = substr($m[0], 0, 1) . (strlen($m[0]) - 1); + $format = str_replace($m[0], $s, $format); + } + if (preg_match('/^[#0]+/', $format, $m)) { + $format = str_replace($m[0], strlen($m[0]), $format); + } + $format = '%' . str_replace('%', 'f%%', $format); + + $value = sprintf($format, 100 * $value); + } + } + + private static function formatAsFraction(&$value, &$format) + { + $sign = ($value < 0) ? '-' : ''; + + $integerPart = floor(abs($value)); + $decimalPart = trim(fmod(abs($value), 1), '0.'); + $decimalLength = strlen($decimalPart); + $decimalDivisor = pow(10, $decimalLength); + + $GCD = PHPExcel_Calculation_MathTrig::GCD($decimalPart, $decimalDivisor); + + $adjustedDecimalPart = $decimalPart/$GCD; + $adjustedDecimalDivisor = $decimalDivisor/$GCD; + + if ((strpos($format, '0') !== false) || (strpos($format, '#') !== false) || (substr($format, 0, 3) == '? ?')) { + if ($integerPart == 0) { + $integerPart = ''; + } + $value = "$sign$integerPart $adjustedDecimalPart/$adjustedDecimalDivisor"; + } else { + $adjustedDecimalPart += $integerPart * $adjustedDecimalDivisor; + $value = "$sign$adjustedDecimalPart/$adjustedDecimalDivisor"; + } + } + + private static function complexNumberFormatMask($number, $mask, $level = 0) + { + $sign = ($number < 0.0); + $number = abs($number); + if (strpos($mask, '.') !== false) { + $numbers = explode('.', $number . '.0'); + $masks = explode('.', $mask . '.0'); + $result1 = self::complexNumberFormatMask($numbers[0], $masks[0], 1); + $result2 = strrev(self::complexNumberFormatMask(strrev($numbers[1]), strrev($masks[1]), 1)); + return (($sign) ? '-' : '') . $result1 . '.' . $result2; + } + + $r = preg_match_all('/0+/', $mask, $result, PREG_OFFSET_CAPTURE); + if ($r > 1) { + $result = array_reverse($result[0]); + + foreach ($result as $block) { + $divisor = 1 . $block[0]; + $size = strlen($block[0]); + $offset = $block[1]; + + $blockValue = sprintf( + '%0' . $size . 'd', + fmod($number, $divisor) + ); + $number = floor($number / $divisor); + $mask = substr_replace($mask, $blockValue, $offset, $size); + } + if ($number > 0) { + $mask = substr_replace($mask, $number, $offset, 0); + } + $result = $mask; + } else { + $result = $number; + } + + return (($sign) ? '-' : '') . $result; + } + + /** + * Convert a value in a pre-defined format to a PHP string + * + * @param mixed $value Value to format + * @param string $format Format code + * @param array $callBack Callback function for additional formatting of string + * @return string Formatted string + */ + public static function toFormattedString($value = '0', $format = PHPExcel_Style_NumberFormat::FORMAT_GENERAL, $callBack = null) + { + // For now we do not treat strings although section 4 of a format code affects strings + if (!is_numeric($value)) { + return $value; + } + + // For 'General' format code, we just pass the value although this is not entirely the way Excel does it, + // it seems to round numbers to a total of 10 digits. + if (($format === PHPExcel_Style_NumberFormat::FORMAT_GENERAL) || ($format === PHPExcel_Style_NumberFormat::FORMAT_TEXT)) { + return $value; + } + + // Convert any other escaped characters to quoted strings, e.g. (\T to "T") + $format = preg_replace('/(\\\(.))(?=(?:[^"]|"[^"]*")*$)/u', '"${2}"', $format); + + // Get the sections, there can be up to four sections, separated with a semi-colon (but only if not a quoted literal) + $sections = preg_split('/(;)(?=(?:[^"]|"[^"]*")*$)/u', $format); + + // Extract the relevant section depending on whether number is positive, negative, or zero? + // Text not supported yet. + // Here is how the sections apply to various values in Excel: + // 1 section: [POSITIVE/NEGATIVE/ZERO/TEXT] + // 2 sections: [POSITIVE/ZERO/TEXT] [NEGATIVE] + // 3 sections: [POSITIVE/TEXT] [NEGATIVE] [ZERO] + // 4 sections: [POSITIVE] [NEGATIVE] [ZERO] [TEXT] + switch (count($sections)) { + case 1: + $format = $sections[0]; + break; + case 2: + $format = ($value >= 0) ? $sections[0] : $sections[1]; + $value = abs($value); // Use the absolute value + break; + case 3: + $format = ($value > 0) ? + $sections[0] : ( ($value < 0) ? + $sections[1] : $sections[2]); + $value = abs($value); // Use the absolute value + break; + case 4: + $format = ($value > 0) ? + $sections[0] : ( ($value < 0) ? + $sections[1] : $sections[2]); + $value = abs($value); // Use the absolute value + break; + default: + // something is wrong, just use first section + $format = $sections[0]; + break; + } + + // In Excel formats, "_" is used to add spacing, + // The following character indicates the size of the spacing, which we can't do in HTML, so we just use a standard space + $format = preg_replace('/_./', ' ', $format); + + // Save format with color information for later use below + $formatColor = $format; + + // Strip color information + $color_regex = '/^\\[[a-zA-Z]+\\]/'; + $format = preg_replace($color_regex, '', $format); + + // Let's begin inspecting the format and converting the value to a formatted string + + // Check for date/time characters (not inside quotes) + if (preg_match('/(\[\$[A-Z]*-[0-9A-F]*\])*[hmsdy](?=(?:[^"]|"[^"]*")*$)/miu', $format, $matches)) { + // datetime format + self::formatAsDate($value, $format); + } elseif (preg_match('/%$/', $format)) { + // % number format + self::formatAsPercentage($value, $format); + } else { + if ($format === self::FORMAT_CURRENCY_EUR_SIMPLE) { + $value = 'EUR ' . sprintf('%1.2f', $value); + } else { + // Some non-number strings are quoted, so we'll get rid of the quotes, likewise any positional * symbols + $format = str_replace(array('"', '*'), '', $format); + + // Find out if we need thousands separator + // This is indicated by a comma enclosed by a digit placeholder: + // #,# or 0,0 + $useThousands = preg_match('/(#,#|0,0)/', $format); + if ($useThousands) { + $format = preg_replace('/0,0/', '00', $format); + $format = preg_replace('/#,#/', '##', $format); + } + + // Scale thousands, millions,... + // This is indicated by a number of commas after a digit placeholder: + // #, or 0.0,, + $scale = 1; // same as no scale + $matches = array(); + if (preg_match('/(#|0)(,+)/', $format, $matches)) { + $scale = pow(1000, strlen($matches[2])); + + // strip the commas + $format = preg_replace('/0,+/', '0', $format); + $format = preg_replace('/#,+/', '#', $format); + } + + if (preg_match('/#?.*\?\/\?/', $format, $m)) { + //echo 'Format mask is fractional '.$format.' <br />'; + if ($value != (int)$value) { + self::formatAsFraction($value, $format); + } + + } else { + // Handle the number itself + + // scale number + $value = $value / $scale; + + // Strip # + $format = preg_replace('/\\#/', '0', $format); + + $n = "/\[[^\]]+\]/"; + $m = preg_replace($n, '', $format); + $number_regex = "/(0+)(\.?)(0*)/"; + if (preg_match($number_regex, $m, $matches)) { + $left = $matches[1]; + $dec = $matches[2]; + $right = $matches[3]; + + // minimun width of formatted number (including dot) + $minWidth = strlen($left) + strlen($dec) + strlen($right); + if ($useThousands) { + $value = number_format( + $value, + strlen($right), + PHPExcel_Shared_String::getDecimalSeparator(), + PHPExcel_Shared_String::getThousandsSeparator() + ); + $value = preg_replace($number_regex, $value, $format); + } else { + if (preg_match('/[0#]E[+-]0/i', $format)) { + // Scientific format + $value = sprintf('%5.2E', $value); + } elseif (preg_match('/0([^\d\.]+)0/', $format)) { + $value = self::complexNumberFormatMask($value, $format); + } else { + $sprintf_pattern = "%0$minWidth." . strlen($right) . "f"; + $value = sprintf($sprintf_pattern, $value); + $value = preg_replace($number_regex, $value, $format); + } + } + } + } + if (preg_match('/\[\$(.*)\]/u', $format, $m)) { + // Currency or Accounting + $currencyFormat = $m[0]; + $currencyCode = $m[1]; + list($currencyCode) = explode('-', $currencyCode); + if ($currencyCode == '') { + $currencyCode = PHPExcel_Shared_String::getCurrencyCode(); + } + $value = preg_replace('/\[\$([^\]]*)\]/u', $currencyCode, $value); + } + } + } + + // Escape any escaped slashes to a single slash + $format = preg_replace("/\\\\/u", '\\', $format); + + // Additional formatting provided by callback function + if ($callBack !== null) { + list($writerInstance, $function) = $callBack; + $value = $writerInstance->$function($value, $formatColor); + } + + return $value; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Protection.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Protection.php new file mode 100644 index 0000000..d5568f6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Protection.php @@ -0,0 +1,204 @@ +<?php + +/** + * PHPExcel_Style_Protection + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Style_Protection extends PHPExcel_Style_Supervisor implements PHPExcel_IComparable +{ + /** Protection styles */ + const PROTECTION_INHERIT = 'inherit'; + const PROTECTION_PROTECTED = 'protected'; + const PROTECTION_UNPROTECTED = 'unprotected'; + + /** + * Locked + * + * @var string + */ + protected $locked; + + /** + * Hidden + * + * @var string + */ + protected $hidden; + + /** + * Create a new PHPExcel_Style_Protection + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + parent::__construct($isSupervisor); + + // Initialise values + if (!$isConditional) { + $this->locked = self::PROTECTION_INHERIT; + $this->hidden = self::PROTECTION_INHERIT; + } + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Protection + */ + public function getSharedComponent() + { + return $this->parent->getSharedComponent()->getProtection(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('protection' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getLocked()->applyFromArray( + * array( + * 'locked' => TRUE, + * 'hidden' => FALSE + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws PHPExcel_Exception + * @return PHPExcel_Style_Protection + */ + public function applyFromArray($pStyles = null) + { + if (is_array($pStyles)) { + if ($this->isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (isset($pStyles['locked'])) { + $this->setLocked($pStyles['locked']); + } + if (isset($pStyles['hidden'])) { + $this->setHidden($pStyles['hidden']); + } + } + } else { + throw new PHPExcel_Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get locked + * + * @return string + */ + public function getLocked() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getLocked(); + } + return $this->locked; + } + + /** + * Set locked + * + * @param string $pValue + * @return PHPExcel_Style_Protection + */ + public function setLocked($pValue = self::PROTECTION_INHERIT) + { + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('locked' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->locked = $pValue; + } + return $this; + } + + /** + * Get hidden + * + * @return string + */ + public function getHidden() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getHidden(); + } + return $this->hidden; + } + + /** + * Set hidden + * + * @param string $pValue + * @return PHPExcel_Style_Protection + */ + public function setHidden($pValue = self::PROTECTION_INHERIT) + { + if ($this->isSupervisor) { + $styleArray = $this->getStyleArray(array('hidden' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->hidden = $pValue; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + if ($this->isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->locked . + $this->hidden . + __CLASS__ + ); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Supervisor.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Supervisor.php new file mode 100644 index 0000000..a90e1c6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/Supervisor.php @@ -0,0 +1,125 @@ +<?php + +/** + * PHPExcel_Style_Supervisor + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +abstract class PHPExcel_Style_Supervisor +{ + /** + * Supervisor? + * + * @var boolean + */ + protected $isSupervisor; + + /** + * Parent. Only used for supervisor + * + * @var PHPExcel_Style + */ + protected $parent; + + /** + * Create a new PHPExcel_Style_Alignment + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false) + { + // Supervisor? + $this->isSupervisor = $isSupervisor; + } + + /** + * Bind parent. Only used for supervisor + * + * @param PHPExcel $parent + * @return PHPExcel_Style_Supervisor + */ + public function bindParent($parent, $parentPropertyName = null) + { + $this->parent = $parent; + return $this; + } + + /** + * Is this a supervisor or a cell style component? + * + * @return boolean + */ + public function getIsSupervisor() + { + return $this->isSupervisor; + } + + /** + * Get the currently active sheet. Only used for supervisor + * + * @return PHPExcel_Worksheet + */ + public function getActiveSheet() + { + return $this->parent->getActiveSheet(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getSelectedCells() + { + return $this->getActiveSheet()->getSelectedCells(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getActiveCell() + { + return $this->getActiveSheet()->getActiveCell(); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != 'parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/_notes/dwsync.xml new file mode 100644 index 0000000..f55c5aa --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Style/_notes/dwsync.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Alignment.php" server="62.244.88.21/deciday/" local="131919461914016499" remote="131880384600000000" Dst="1" /> +<file name="Border.php" server="62.244.88.21/deciday/" local="131919461916502000" remote="131880384600000000" Dst="1" /> +<file name="Borders.php" server="62.244.88.21/deciday/" local="131919461916871742" remote="131880384600000000" Dst="1" /> +<file name="Color.php" server="62.244.88.21/deciday/" local="131919461916881412" remote="131880384600000000" Dst="1" /> +<file name="Conditional.php" server="62.244.88.21/deciday/" local="131919461917722044" remote="131880384600000000" Dst="1" /> +<file name="Fill.php" server="62.244.88.21/deciday/" local="131919461918169112" remote="131880384600000000" Dst="1" /> +<file name="Font.php" server="62.244.88.21/deciday/" local="131919461918443165" remote="131880384600000000" Dst="1" /> +<file name="Protection.php" server="62.244.88.21/deciday/" local="131919461919286810" remote="131880384600000000" Dst="1" /> +<file name="NumberFormat.php" server="62.244.88.21/deciday/" local="131919461919632094" remote="131880384600000000" Dst="1" /> +<file name="Supervisor.php" server="62.244.88.21/deciday/" local="131919461919643845" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet.php new file mode 100644 index 0000000..483aa00 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet.php @@ -0,0 +1,2968 @@ +<?php + +/** + * PHPExcel_Worksheet + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet implements PHPExcel_IComparable +{ + /* Break types */ + const BREAK_NONE = 0; + const BREAK_ROW = 1; + const BREAK_COLUMN = 2; + + /* Sheet state */ + const SHEETSTATE_VISIBLE = 'visible'; + const SHEETSTATE_HIDDEN = 'hidden'; + const SHEETSTATE_VERYHIDDEN = 'veryHidden'; + + /** + * Invalid characters in sheet title + * + * @var array + */ + private static $invalidCharacters = array('*', ':', '/', '\\', '?', '[', ']'); + + /** + * Parent spreadsheet + * + * @var PHPExcel + */ + private $parent; + + /** + * Cacheable collection of cells + * + * @var PHPExcel_CachedObjectStorage_xxx + */ + private $cellCollection; + + /** + * Collection of row dimensions + * + * @var PHPExcel_Worksheet_RowDimension[] + */ + private $rowDimensions = array(); + + /** + * Default row dimension + * + * @var PHPExcel_Worksheet_RowDimension + */ + private $defaultRowDimension; + + /** + * Collection of column dimensions + * + * @var PHPExcel_Worksheet_ColumnDimension[] + */ + private $columnDimensions = array(); + + /** + * Default column dimension + * + * @var PHPExcel_Worksheet_ColumnDimension + */ + private $defaultColumnDimension = null; + + /** + * Collection of drawings + * + * @var PHPExcel_Worksheet_BaseDrawing[] + */ + private $drawingCollection = null; + + /** + * Collection of Chart objects + * + * @var PHPExcel_Chart[] + */ + private $chartCollection = array(); + + /** + * Worksheet title + * + * @var string + */ + private $title; + + /** + * Sheet state + * + * @var string + */ + private $sheetState; + + /** + * Page setup + * + * @var PHPExcel_Worksheet_PageSetup + */ + private $pageSetup; + + /** + * Page margins + * + * @var PHPExcel_Worksheet_PageMargins + */ + private $pageMargins; + + /** + * Page header/footer + * + * @var PHPExcel_Worksheet_HeaderFooter + */ + private $headerFooter; + + /** + * Sheet view + * + * @var PHPExcel_Worksheet_SheetView + */ + private $sheetView; + + /** + * Protection + * + * @var PHPExcel_Worksheet_Protection + */ + private $protection; + + /** + * Collection of styles + * + * @var PHPExcel_Style[] + */ + private $styles = array(); + + /** + * Conditional styles. Indexed by cell coordinate, e.g. 'A1' + * + * @var array + */ + private $conditionalStylesCollection = array(); + + /** + * Is the current cell collection sorted already? + * + * @var boolean + */ + private $cellCollectionIsSorted = false; + + /** + * Collection of breaks + * + * @var array + */ + private $breaks = array(); + + /** + * Collection of merged cell ranges + * + * @var array + */ + private $mergeCells = array(); + + /** + * Collection of protected cell ranges + * + * @var array + */ + private $protectedCells = array(); + + /** + * Autofilter Range and selection + * + * @var PHPExcel_Worksheet_AutoFilter + */ + private $autoFilter; + + /** + * Freeze pane + * + * @var string + */ + private $freezePane = ''; + + /** + * Show gridlines? + * + * @var boolean + */ + private $showGridlines = true; + + /** + * Print gridlines? + * + * @var boolean + */ + private $printGridlines = false; + + /** + * Show row and column headers? + * + * @var boolean + */ + private $showRowColHeaders = true; + + /** + * Show summary below? (Row/Column outline) + * + * @var boolean + */ + private $showSummaryBelow = true; + + /** + * Show summary right? (Row/Column outline) + * + * @var boolean + */ + private $showSummaryRight = true; + + /** + * Collection of comments + * + * @var PHPExcel_Comment[] + */ + private $comments = array(); + + /** + * Active cell. (Only one!) + * + * @var string + */ + private $activeCell = 'A1'; + + /** + * Selected cells + * + * @var string + */ + private $selectedCells = 'A1'; + + /** + * Cached highest column + * + * @var string + */ + private $cachedHighestColumn = 'A'; + + /** + * Cached highest row + * + * @var int + */ + private $cachedHighestRow = 1; + + /** + * Right-to-left? + * + * @var boolean + */ + private $rightToLeft = false; + + /** + * Hyperlinks. Indexed by cell coordinate, e.g. 'A1' + * + * @var array + */ + private $hyperlinkCollection = array(); + + /** + * Data validation objects. Indexed by cell coordinate, e.g. 'A1' + * + * @var array + */ + private $dataValidationCollection = array(); + + /** + * Tab color + * + * @var PHPExcel_Style_Color + */ + private $tabColor; + + /** + * Dirty flag + * + * @var boolean + */ + private $dirty = true; + + /** + * Hash + * + * @var string + */ + private $hash; + + /** + * CodeName + * + * @var string + */ + private $codeName = null; + + /** + * Create a new worksheet + * + * @param PHPExcel $pParent + * @param string $pTitle + */ + public function __construct(PHPExcel $pParent = null, $pTitle = 'Worksheet') + { + // Set parent and title + $this->parent = $pParent; + $this->setTitle($pTitle, false); + // setTitle can change $pTitle + $this->setCodeName($this->getTitle()); + $this->setSheetState(PHPExcel_Worksheet::SHEETSTATE_VISIBLE); + + $this->cellCollection = PHPExcel_CachedObjectStorageFactory::getInstance($this); + // Set page setup + $this->pageSetup = new PHPExcel_Worksheet_PageSetup(); + // Set page margins + $this->pageMargins = new PHPExcel_Worksheet_PageMargins(); + // Set page header/footer + $this->headerFooter = new PHPExcel_Worksheet_HeaderFooter(); + // Set sheet view + $this->sheetView = new PHPExcel_Worksheet_SheetView(); + // Drawing collection + $this->drawingCollection = new ArrayObject(); + // Chart collection + $this->chartCollection = new ArrayObject(); + // Protection + $this->protection = new PHPExcel_Worksheet_Protection(); + // Default row dimension + $this->defaultRowDimension = new PHPExcel_Worksheet_RowDimension(null); + // Default column dimension + $this->defaultColumnDimension = new PHPExcel_Worksheet_ColumnDimension(null); + $this->autoFilter = new PHPExcel_Worksheet_AutoFilter(null, $this); + } + + + /** + * Disconnect all cells from this PHPExcel_Worksheet object, + * typically so that the worksheet object can be unset + * + */ + public function disconnectCells() + { + if ($this->cellCollection !== null) { + $this->cellCollection->unsetWorksheetCells(); + $this->cellCollection = null; + } + // detach ourself from the workbook, so that it can then delete this worksheet successfully + $this->parent = null; + } + + /** + * Code to execute when this worksheet is unset() + * + */ + public function __destruct() + { + PHPExcel_Calculation::getInstance($this->parent)->clearCalculationCacheForWorksheet($this->title); + + $this->disconnectCells(); + } + + /** + * Return the cache controller for the cell collection + * + * @return PHPExcel_CachedObjectStorage_xxx + */ + public function getCellCacheController() + { + return $this->cellCollection; + } + + + /** + * Get array of invalid characters for sheet title + * + * @return array + */ + public static function getInvalidCharacters() + { + return self::$invalidCharacters; + } + + /** + * Check sheet code name for valid Excel syntax + * + * @param string $pValue The string to check + * @return string The valid string + * @throws Exception + */ + private static function checkSheetCodeName($pValue) + { + $CharCount = PHPExcel_Shared_String::CountCharacters($pValue); + if ($CharCount == 0) { + throw new PHPExcel_Exception('Sheet code name cannot be empty.'); + } + // Some of the printable ASCII characters are invalid: * : / \ ? [ ] and first and last characters cannot be a "'" + if ((str_replace(self::$invalidCharacters, '', $pValue) !== $pValue) || + (PHPExcel_Shared_String::Substring($pValue, -1, 1)=='\'') || + (PHPExcel_Shared_String::Substring($pValue, 0, 1)=='\'')) { + throw new PHPExcel_Exception('Invalid character found in sheet code name'); + } + + // Maximum 31 characters allowed for sheet title + if ($CharCount > 31) { + throw new PHPExcel_Exception('Maximum 31 characters allowed in sheet code name.'); + } + + return $pValue; + } + + /** + * Check sheet title for valid Excel syntax + * + * @param string $pValue The string to check + * @return string The valid string + * @throws PHPExcel_Exception + */ + private static function checkSheetTitle($pValue) + { + // Some of the printable ASCII characters are invalid: * : / \ ? [ ] + if (str_replace(self::$invalidCharacters, '', $pValue) !== $pValue) { + throw new PHPExcel_Exception('Invalid character found in sheet title'); + } + + // Maximum 31 characters allowed for sheet title + if (PHPExcel_Shared_String::CountCharacters($pValue) > 31) { + throw new PHPExcel_Exception('Maximum 31 characters allowed in sheet title.'); + } + + return $pValue; + } + + /** + * Get collection of cells + * + * @param boolean $pSorted Also sort the cell collection? + * @return PHPExcel_Cell[] + */ + public function getCellCollection($pSorted = true) + { + if ($pSorted) { + // Re-order cell collection + return $this->sortCellCollection(); + } + if ($this->cellCollection !== null) { + return $this->cellCollection->getCellList(); + } + return array(); + } + + /** + * Sort collection of cells + * + * @return PHPExcel_Worksheet + */ + public function sortCellCollection() + { + if ($this->cellCollection !== null) { + return $this->cellCollection->getSortedCellList(); + } + return array(); + } + + /** + * Get collection of row dimensions + * + * @return PHPExcel_Worksheet_RowDimension[] + */ + public function getRowDimensions() + { + return $this->rowDimensions; + } + + /** + * Get default row dimension + * + * @return PHPExcel_Worksheet_RowDimension + */ + public function getDefaultRowDimension() + { + return $this->defaultRowDimension; + } + + /** + * Get collection of column dimensions + * + * @return PHPExcel_Worksheet_ColumnDimension[] + */ + public function getColumnDimensions() + { + return $this->columnDimensions; + } + + /** + * Get default column dimension + * + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function getDefaultColumnDimension() + { + return $this->defaultColumnDimension; + } + + /** + * Get collection of drawings + * + * @return PHPExcel_Worksheet_BaseDrawing[] + */ + public function getDrawingCollection() + { + return $this->drawingCollection; + } + + /** + * Get collection of charts + * + * @return PHPExcel_Chart[] + */ + public function getChartCollection() + { + return $this->chartCollection; + } + + /** + * Add chart + * + * @param PHPExcel_Chart $pChart + * @param int|null $iChartIndex Index where chart should go (0,1,..., or null for last) + * @return PHPExcel_Chart + */ + public function addChart(PHPExcel_Chart $pChart = null, $iChartIndex = null) + { + $pChart->setWorksheet($this); + if (is_null($iChartIndex)) { + $this->chartCollection[] = $pChart; + } else { + // Insert the chart at the requested index + array_splice($this->chartCollection, $iChartIndex, 0, array($pChart)); + } + + return $pChart; + } + + /** + * Return the count of charts on this worksheet + * + * @return int The number of charts + */ + public function getChartCount() + { + return count($this->chartCollection); + } + + /** + * Get a chart by its index position + * + * @param string $index Chart index position + * @return false|PHPExcel_Chart + * @throws PHPExcel_Exception + */ + public function getChartByIndex($index = null) + { + $chartCount = count($this->chartCollection); + if ($chartCount == 0) { + return false; + } + if (is_null($index)) { + $index = --$chartCount; + } + if (!isset($this->chartCollection[$index])) { + return false; + } + + return $this->chartCollection[$index]; + } + + /** + * Return an array of the names of charts on this worksheet + * + * @return string[] The names of charts + * @throws PHPExcel_Exception + */ + public function getChartNames() + { + $chartNames = array(); + foreach ($this->chartCollection as $chart) { + $chartNames[] = $chart->getName(); + } + return $chartNames; + } + + /** + * Get a chart by name + * + * @param string $chartName Chart name + * @return false|PHPExcel_Chart + * @throws PHPExcel_Exception + */ + public function getChartByName($chartName = '') + { + $chartCount = count($this->chartCollection); + if ($chartCount == 0) { + return false; + } + foreach ($this->chartCollection as $index => $chart) { + if ($chart->getName() == $chartName) { + return $this->chartCollection[$index]; + } + } + return false; + } + + /** + * Refresh column dimensions + * + * @return PHPExcel_Worksheet + */ + public function refreshColumnDimensions() + { + $currentColumnDimensions = $this->getColumnDimensions(); + $newColumnDimensions = array(); + + foreach ($currentColumnDimensions as $objColumnDimension) { + $newColumnDimensions[$objColumnDimension->getColumnIndex()] = $objColumnDimension; + } + + $this->columnDimensions = $newColumnDimensions; + + return $this; + } + + /** + * Refresh row dimensions + * + * @return PHPExcel_Worksheet + */ + public function refreshRowDimensions() + { + $currentRowDimensions = $this->getRowDimensions(); + $newRowDimensions = array(); + + foreach ($currentRowDimensions as $objRowDimension) { + $newRowDimensions[$objRowDimension->getRowIndex()] = $objRowDimension; + } + + $this->rowDimensions = $newRowDimensions; + + return $this; + } + + /** + * Calculate worksheet dimension + * + * @return string String containing the dimension of this worksheet + */ + public function calculateWorksheetDimension() + { + // Return + return 'A1' . ':' . $this->getHighestColumn() . $this->getHighestRow(); + } + + /** + * Calculate worksheet data dimension + * + * @return string String containing the dimension of this worksheet that actually contain data + */ + public function calculateWorksheetDataDimension() + { + // Return + return 'A1' . ':' . $this->getHighestDataColumn() . $this->getHighestDataRow(); + } + + /** + * Calculate widths for auto-size columns + * + * @param boolean $calculateMergeCells Calculate merge cell width + * @return PHPExcel_Worksheet; + */ + public function calculateColumnWidths($calculateMergeCells = false) + { + // initialize $autoSizes array + $autoSizes = array(); + foreach ($this->getColumnDimensions() as $colDimension) { + if ($colDimension->getAutoSize()) { + $autoSizes[$colDimension->getColumnIndex()] = -1; + } + } + + // There is only something to do if there are some auto-size columns + if (!empty($autoSizes)) { + // build list of cells references that participate in a merge + $isMergeCell = array(); + foreach ($this->getMergeCells() as $cells) { + foreach (PHPExcel_Cell::extractAllCellReferencesInRange($cells) as $cellReference) { + $isMergeCell[$cellReference] = true; + } + } + + // loop through all cells in the worksheet + foreach ($this->getCellCollection(false) as $cellID) { + $cell = $this->getCell($cellID, false); + if ($cell !== null && isset($autoSizes[$this->cellCollection->getCurrentColumn()])) { + // Determine width if cell does not participate in a merge + if (!isset($isMergeCell[$this->cellCollection->getCurrentAddress()])) { + // Calculated value + // To formatted string + $cellValue = PHPExcel_Style_NumberFormat::toFormattedString( + $cell->getCalculatedValue(), + $this->getParent()->getCellXfByIndex($cell->getXfIndex())->getNumberFormat()->getFormatCode() + ); + + $autoSizes[$this->cellCollection->getCurrentColumn()] = max( + (float) $autoSizes[$this->cellCollection->getCurrentColumn()], + (float)PHPExcel_Shared_Font::calculateColumnWidth( + $this->getParent()->getCellXfByIndex($cell->getXfIndex())->getFont(), + $cellValue, + $this->getParent()->getCellXfByIndex($cell->getXfIndex())->getAlignment()->getTextRotation(), + $this->getDefaultStyle()->getFont() + ) + ); + } + } + } + + // adjust column widths + foreach ($autoSizes as $columnIndex => $width) { + if ($width == -1) { + $width = $this->getDefaultColumnDimension()->getWidth(); + } + $this->getColumnDimension($columnIndex)->setWidth($width); + } + } + + return $this; + } + + /** + * Get parent + * + * @return PHPExcel + */ + public function getParent() + { + return $this->parent; + } + + /** + * Re-bind parent + * + * @param PHPExcel $parent + * @return PHPExcel_Worksheet + */ + public function rebindParent(PHPExcel $parent) + { + if ($this->parent !== null) { + $namedRanges = $this->parent->getNamedRanges(); + foreach ($namedRanges as $namedRange) { + $parent->addNamedRange($namedRange); + } + + $this->parent->removeSheetByIndex( + $this->parent->getIndex($this) + ); + } + $this->parent = $parent; + + return $this; + } + + /** + * Get title + * + * @return string + */ + public function getTitle() + { + return $this->title; + } + + /** + * Set title + * + * @param string $pValue String containing the dimension of this worksheet + * @param string $updateFormulaCellReferences boolean Flag indicating whether cell references in formulae should + * be updated to reflect the new sheet name. + * This should be left as the default true, unless you are + * certain that no formula cells on any worksheet contain + * references to this worksheet + * @return PHPExcel_Worksheet + */ + public function setTitle($pValue = 'Worksheet', $updateFormulaCellReferences = true) + { + // Is this a 'rename' or not? + if ($this->getTitle() == $pValue) { + return $this; + } + + // Syntax check + self::checkSheetTitle($pValue); + + // Old title + $oldTitle = $this->getTitle(); + + if ($this->parent) { + // Is there already such sheet name? + if ($this->parent->sheetNameExists($pValue)) { + // Use name, but append with lowest possible integer + + if (PHPExcel_Shared_String::CountCharacters($pValue) > 29) { + $pValue = PHPExcel_Shared_String::Substring($pValue, 0, 29); + } + $i = 1; + while ($this->parent->sheetNameExists($pValue . ' ' . $i)) { + ++$i; + if ($i == 10) { + if (PHPExcel_Shared_String::CountCharacters($pValue) > 28) { + $pValue = PHPExcel_Shared_String::Substring($pValue, 0, 28); + } + } elseif ($i == 100) { + if (PHPExcel_Shared_String::CountCharacters($pValue) > 27) { + $pValue = PHPExcel_Shared_String::Substring($pValue, 0, 27); + } + } + } + + $altTitle = $pValue . ' ' . $i; + return $this->setTitle($altTitle, $updateFormulaCellReferences); + } + } + + // Set title + $this->title = $pValue; + $this->dirty = true; + + if ($this->parent && $this->parent->getCalculationEngine()) { + // New title + $newTitle = $this->getTitle(); + $this->parent->getCalculationEngine() + ->renameCalculationCacheForWorksheet($oldTitle, $newTitle); + if ($updateFormulaCellReferences) { + PHPExcel_ReferenceHelper::getInstance()->updateNamedFormulas($this->parent, $oldTitle, $newTitle); + } + } + + return $this; + } + + /** + * Get sheet state + * + * @return string Sheet state (visible, hidden, veryHidden) + */ + public function getSheetState() + { + return $this->sheetState; + } + + /** + * Set sheet state + * + * @param string $value Sheet state (visible, hidden, veryHidden) + * @return PHPExcel_Worksheet + */ + public function setSheetState($value = PHPExcel_Worksheet::SHEETSTATE_VISIBLE) + { + $this->sheetState = $value; + return $this; + } + + /** + * Get page setup + * + * @return PHPExcel_Worksheet_PageSetup + */ + public function getPageSetup() + { + return $this->pageSetup; + } + + /** + * Set page setup + * + * @param PHPExcel_Worksheet_PageSetup $pValue + * @return PHPExcel_Worksheet + */ + public function setPageSetup(PHPExcel_Worksheet_PageSetup $pValue) + { + $this->pageSetup = $pValue; + return $this; + } + + /** + * Get page margins + * + * @return PHPExcel_Worksheet_PageMargins + */ + public function getPageMargins() + { + return $this->pageMargins; + } + + /** + * Set page margins + * + * @param PHPExcel_Worksheet_PageMargins $pValue + * @return PHPExcel_Worksheet + */ + public function setPageMargins(PHPExcel_Worksheet_PageMargins $pValue) + { + $this->pageMargins = $pValue; + return $this; + } + + /** + * Get page header/footer + * + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function getHeaderFooter() + { + return $this->headerFooter; + } + + /** + * Set page header/footer + * + * @param PHPExcel_Worksheet_HeaderFooter $pValue + * @return PHPExcel_Worksheet + */ + public function setHeaderFooter(PHPExcel_Worksheet_HeaderFooter $pValue) + { + $this->headerFooter = $pValue; + return $this; + } + + /** + * Get sheet view + * + * @return PHPExcel_Worksheet_SheetView + */ + public function getSheetView() + { + return $this->sheetView; + } + + /** + * Set sheet view + * + * @param PHPExcel_Worksheet_SheetView $pValue + * @return PHPExcel_Worksheet + */ + public function setSheetView(PHPExcel_Worksheet_SheetView $pValue) + { + $this->sheetView = $pValue; + return $this; + } + + /** + * Get Protection + * + * @return PHPExcel_Worksheet_Protection + */ + public function getProtection() + { + return $this->protection; + } + + /** + * Set Protection + * + * @param PHPExcel_Worksheet_Protection $pValue + * @return PHPExcel_Worksheet + */ + public function setProtection(PHPExcel_Worksheet_Protection $pValue) + { + $this->protection = $pValue; + $this->dirty = true; + + return $this; + } + + /** + * Get highest worksheet column + * + * @param string $row Return the data highest column for the specified row, + * or the highest column of any row if no row number is passed + * @return string Highest column name + */ + public function getHighestColumn($row = null) + { + if ($row == null) { + return $this->cachedHighestColumn; + } + return $this->getHighestDataColumn($row); + } + + /** + * Get highest worksheet column that contains data + * + * @param string $row Return the highest data column for the specified row, + * or the highest data column of any row if no row number is passed + * @return string Highest column name that contains data + */ + public function getHighestDataColumn($row = null) + { + return $this->cellCollection->getHighestColumn($row); + } + + /** + * Get highest worksheet row + * + * @param string $column Return the highest data row for the specified column, + * or the highest row of any column if no column letter is passed + * @return int Highest row number + */ + public function getHighestRow($column = null) + { + if ($column == null) { + return $this->cachedHighestRow; + } + return $this->getHighestDataRow($column); + } + + /** + * Get highest worksheet row that contains data + * + * @param string $column Return the highest data row for the specified column, + * or the highest data row of any column if no column letter is passed + * @return string Highest row number that contains data + */ + public function getHighestDataRow($column = null) + { + return $this->cellCollection->getHighestRow($column); + } + + /** + * Get highest worksheet column and highest row that have cell records + * + * @return array Highest column name and highest row number + */ + public function getHighestRowAndColumn() + { + return $this->cellCollection->getHighestRowAndColumn(); + } + + /** + * Set a cell value + * + * @param string $pCoordinate Coordinate of the cell + * @param mixed $pValue Value of the cell + * @param bool $returnCell Return the worksheet (false, default) or the cell (true) + * @return PHPExcel_Worksheet|PHPExcel_Cell Depending on the last parameter being specified + */ + public function setCellValue($pCoordinate = 'A1', $pValue = null, $returnCell = false) + { + $cell = $this->getCell(strtoupper($pCoordinate))->setValue($pValue); + return ($returnCell) ? $cell : $this; + } + + /** + * Set a cell value by using numeric cell coordinates + * + * @param string $pColumn Numeric column coordinate of the cell (A = 0) + * @param string $pRow Numeric row coordinate of the cell + * @param mixed $pValue Value of the cell + * @param bool $returnCell Return the worksheet (false, default) or the cell (true) + * @return PHPExcel_Worksheet|PHPExcel_Cell Depending on the last parameter being specified + */ + public function setCellValueByColumnAndRow($pColumn = 0, $pRow = 1, $pValue = null, $returnCell = false) + { + $cell = $this->getCellByColumnAndRow($pColumn, $pRow)->setValue($pValue); + return ($returnCell) ? $cell : $this; + } + + /** + * Set a cell value + * + * @param string $pCoordinate Coordinate of the cell + * @param mixed $pValue Value of the cell + * @param string $pDataType Explicit data type + * @param bool $returnCell Return the worksheet (false, default) or the cell (true) + * @return PHPExcel_Worksheet|PHPExcel_Cell Depending on the last parameter being specified + */ + public function setCellValueExplicit($pCoordinate = 'A1', $pValue = null, $pDataType = PHPExcel_Cell_DataType::TYPE_STRING, $returnCell = false) + { + // Set value + $cell = $this->getCell(strtoupper($pCoordinate))->setValueExplicit($pValue, $pDataType); + return ($returnCell) ? $cell : $this; + } + + /** + * Set a cell value by using numeric cell coordinates + * + * @param string $pColumn Numeric column coordinate of the cell + * @param string $pRow Numeric row coordinate of the cell + * @param mixed $pValue Value of the cell + * @param string $pDataType Explicit data type + * @param bool $returnCell Return the worksheet (false, default) or the cell (true) + * @return PHPExcel_Worksheet|PHPExcel_Cell Depending on the last parameter being specified + */ + public function setCellValueExplicitByColumnAndRow($pColumn = 0, $pRow = 1, $pValue = null, $pDataType = PHPExcel_Cell_DataType::TYPE_STRING, $returnCell = false) + { + $cell = $this->getCellByColumnAndRow($pColumn, $pRow)->setValueExplicit($pValue, $pDataType); + return ($returnCell) ? $cell : $this; + } + + /** + * Get cell at a specific coordinate + * + * @param string $pCoordinate Coordinate of the cell + * @param boolean $createIfNotExists Flag indicating whether a new cell should be created if it doesn't + * already exist, or a null should be returned instead + * @throws PHPExcel_Exception + * @return null|PHPExcel_Cell Cell that was found/created or null + */ + public function getCell($pCoordinate = 'A1', $createIfNotExists = true) + { + // Check cell collection + if ($this->cellCollection->isDataSet(strtoupper($pCoordinate))) { + return $this->cellCollection->getCacheData($pCoordinate); + } + + // Worksheet reference? + if (strpos($pCoordinate, '!') !== false) { + $worksheetReference = PHPExcel_Worksheet::extractSheetTitle($pCoordinate, true); + return $this->parent->getSheetByName($worksheetReference[0])->getCell(strtoupper($worksheetReference[1]), $createIfNotExists); + } + + // Named range? + if ((!preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_CELLREF.'$/i', $pCoordinate, $matches)) && + (preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_NAMEDRANGE.'$/i', $pCoordinate, $matches))) { + $namedRange = PHPExcel_NamedRange::resolveRange($pCoordinate, $this); + if ($namedRange !== null) { + $pCoordinate = $namedRange->getRange(); + return $namedRange->getWorksheet()->getCell($pCoordinate, $createIfNotExists); + } + } + + // Uppercase coordinate + $pCoordinate = strtoupper($pCoordinate); + + if (strpos($pCoordinate, ':') !== false || strpos($pCoordinate, ',') !== false) { + throw new PHPExcel_Exception('Cell coordinate can not be a range of cells.'); + } elseif (strpos($pCoordinate, '$') !== false) { + throw new PHPExcel_Exception('Cell coordinate must not be absolute.'); + } + + // Create new cell object, if required + return $createIfNotExists ? $this->createNewCell($pCoordinate) : null; + } + + /** + * Get cell at a specific coordinate by using numeric cell coordinates + * + * @param string $pColumn Numeric column coordinate of the cell (starting from 0) + * @param string $pRow Numeric row coordinate of the cell + * @param boolean $createIfNotExists Flag indicating whether a new cell should be created if it doesn't + * already exist, or a null should be returned instead + * @return null|PHPExcel_Cell Cell that was found/created or null + */ + public function getCellByColumnAndRow($pColumn = 0, $pRow = 1, $createIfNotExists = true) + { + $columnLetter = PHPExcel_Cell::stringFromColumnIndex($pColumn); + $coordinate = $columnLetter . $pRow; + + if ($this->cellCollection->isDataSet($coordinate)) { + return $this->cellCollection->getCacheData($coordinate); + } + + // Create new cell object, if required + return $createIfNotExists ? $this->createNewCell($coordinate) : null; + } + + /** + * Create a new cell at the specified coordinate + * + * @param string $pCoordinate Coordinate of the cell + * @return PHPExcel_Cell Cell that was created + */ + private function createNewCell($pCoordinate) + { + $cell = $this->cellCollection->addCacheData( + $pCoordinate, + new PHPExcel_Cell(null, PHPExcel_Cell_DataType::TYPE_NULL, $this) + ); + $this->cellCollectionIsSorted = false; + + // Coordinates + $aCoordinates = PHPExcel_Cell::coordinateFromString($pCoordinate); + if (PHPExcel_Cell::columnIndexFromString($this->cachedHighestColumn) < PHPExcel_Cell::columnIndexFromString($aCoordinates[0])) { + $this->cachedHighestColumn = $aCoordinates[0]; + } + $this->cachedHighestRow = max($this->cachedHighestRow, $aCoordinates[1]); + + // Cell needs appropriate xfIndex from dimensions records + // but don't create dimension records if they don't already exist + $rowDimension = $this->getRowDimension($aCoordinates[1], false); + $columnDimension = $this->getColumnDimension($aCoordinates[0], false); + + if ($rowDimension !== null && $rowDimension->getXfIndex() > 0) { + // then there is a row dimension with explicit style, assign it to the cell + $cell->setXfIndex($rowDimension->getXfIndex()); + } elseif ($columnDimension !== null && $columnDimension->getXfIndex() > 0) { + // then there is a column dimension, assign it to the cell + $cell->setXfIndex($columnDimension->getXfIndex()); + } + + return $cell; + } + + /** + * Does the cell at a specific coordinate exist? + * + * @param string $pCoordinate Coordinate of the cell + * @throws PHPExcel_Exception + * @return boolean + */ + public function cellExists($pCoordinate = 'A1') + { + // Worksheet reference? + if (strpos($pCoordinate, '!') !== false) { + $worksheetReference = PHPExcel_Worksheet::extractSheetTitle($pCoordinate, true); + return $this->parent->getSheetByName($worksheetReference[0])->cellExists(strtoupper($worksheetReference[1])); + } + + // Named range? + if ((!preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_CELLREF.'$/i', $pCoordinate, $matches)) && + (preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_NAMEDRANGE.'$/i', $pCoordinate, $matches))) { + $namedRange = PHPExcel_NamedRange::resolveRange($pCoordinate, $this); + if ($namedRange !== null) { + $pCoordinate = $namedRange->getRange(); + if ($this->getHashCode() != $namedRange->getWorksheet()->getHashCode()) { + if (!$namedRange->getLocalOnly()) { + return $namedRange->getWorksheet()->cellExists($pCoordinate); + } else { + throw new PHPExcel_Exception('Named range ' . $namedRange->getName() . ' is not accessible from within sheet ' . $this->getTitle()); + } + } + } else { + return false; + } + } + + // Uppercase coordinate + $pCoordinate = strtoupper($pCoordinate); + + if (strpos($pCoordinate, ':') !== false || strpos($pCoordinate, ',') !== false) { + throw new PHPExcel_Exception('Cell coordinate can not be a range of cells.'); + } elseif (strpos($pCoordinate, '$') !== false) { + throw new PHPExcel_Exception('Cell coordinate must not be absolute.'); + } else { + // Coordinates + $aCoordinates = PHPExcel_Cell::coordinateFromString($pCoordinate); + + // Cell exists? + return $this->cellCollection->isDataSet($pCoordinate); + } + } + + /** + * Cell at a specific coordinate by using numeric cell coordinates exists? + * + * @param string $pColumn Numeric column coordinate of the cell + * @param string $pRow Numeric row coordinate of the cell + * @return boolean + */ + public function cellExistsByColumnAndRow($pColumn = 0, $pRow = 1) + { + return $this->cellExists(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow); + } + + /** + * Get row dimension at a specific row + * + * @param int $pRow Numeric index of the row + * @return PHPExcel_Worksheet_RowDimension + */ + public function getRowDimension($pRow = 1, $create = true) + { + // Found + $found = null; + + // Get row dimension + if (!isset($this->rowDimensions[$pRow])) { + if (!$create) { + return null; + } + $this->rowDimensions[$pRow] = new PHPExcel_Worksheet_RowDimension($pRow); + + $this->cachedHighestRow = max($this->cachedHighestRow, $pRow); + } + return $this->rowDimensions[$pRow]; + } + + /** + * Get column dimension at a specific column + * + * @param string $pColumn String index of the column + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function getColumnDimension($pColumn = 'A', $create = true) + { + // Uppercase coordinate + $pColumn = strtoupper($pColumn); + + // Fetch dimensions + if (!isset($this->columnDimensions[$pColumn])) { + if (!$create) { + return null; + } + $this->columnDimensions[$pColumn] = new PHPExcel_Worksheet_ColumnDimension($pColumn); + + if (PHPExcel_Cell::columnIndexFromString($this->cachedHighestColumn) < PHPExcel_Cell::columnIndexFromString($pColumn)) { + $this->cachedHighestColumn = $pColumn; + } + } + return $this->columnDimensions[$pColumn]; + } + + /** + * Get column dimension at a specific column by using numeric cell coordinates + * + * @param string $pColumn Numeric column coordinate of the cell + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function getColumnDimensionByColumn($pColumn = 0) + { + return $this->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($pColumn)); + } + + /** + * Get styles + * + * @return PHPExcel_Style[] + */ + public function getStyles() + { + return $this->styles; + } + + /** + * Get default style of workbook. + * + * @deprecated + * @return PHPExcel_Style + * @throws PHPExcel_Exception + */ + public function getDefaultStyle() + { + return $this->parent->getDefaultStyle(); + } + + /** + * Set default style - should only be used by PHPExcel_IReader implementations! + * + * @deprecated + * @param PHPExcel_Style $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function setDefaultStyle(PHPExcel_Style $pValue) + { + $this->parent->getDefaultStyle()->applyFromArray(array( + 'font' => array( + 'name' => $pValue->getFont()->getName(), + 'size' => $pValue->getFont()->getSize(), + ), + )); + return $this; + } + + /** + * Get style for cell + * + * @param string $pCellCoordinate Cell coordinate (or range) to get style for + * @return PHPExcel_Style + * @throws PHPExcel_Exception + */ + public function getStyle($pCellCoordinate = 'A1') + { + // set this sheet as active + $this->parent->setActiveSheetIndex($this->parent->getIndex($this)); + + // set cell coordinate as active + $this->setSelectedCells(strtoupper($pCellCoordinate)); + + return $this->parent->getCellXfSupervisor(); + } + + /** + * Get conditional styles for a cell + * + * @param string $pCoordinate + * @return PHPExcel_Style_Conditional[] + */ + public function getConditionalStyles($pCoordinate = 'A1') + { + $pCoordinate = strtoupper($pCoordinate); + if (!isset($this->conditionalStylesCollection[$pCoordinate])) { + $this->conditionalStylesCollection[$pCoordinate] = array(); + } + return $this->conditionalStylesCollection[$pCoordinate]; + } + + /** + * Do conditional styles exist for this cell? + * + * @param string $pCoordinate + * @return boolean + */ + public function conditionalStylesExists($pCoordinate = 'A1') + { + if (isset($this->conditionalStylesCollection[strtoupper($pCoordinate)])) { + return true; + } + return false; + } + + /** + * Removes conditional styles for a cell + * + * @param string $pCoordinate + * @return PHPExcel_Worksheet + */ + public function removeConditionalStyles($pCoordinate = 'A1') + { + unset($this->conditionalStylesCollection[strtoupper($pCoordinate)]); + return $this; + } + + /** + * Get collection of conditional styles + * + * @return array + */ + public function getConditionalStylesCollection() + { + return $this->conditionalStylesCollection; + } + + /** + * Set conditional styles + * + * @param $pCoordinate string E.g. 'A1' + * @param $pValue PHPExcel_Style_Conditional[] + * @return PHPExcel_Worksheet + */ + public function setConditionalStyles($pCoordinate = 'A1', $pValue) + { + $this->conditionalStylesCollection[strtoupper($pCoordinate)] = $pValue; + return $this; + } + + /** + * Get style for cell by using numeric cell coordinates + * + * @param int $pColumn Numeric column coordinate of the cell + * @param int $pRow Numeric row coordinate of the cell + * @param int pColumn2 Numeric column coordinate of the range cell + * @param int pRow2 Numeric row coordinate of the range cell + * @return PHPExcel_Style + */ + public function getStyleByColumnAndRow($pColumn = 0, $pRow = 1, $pColumn2 = null, $pRow2 = null) + { + if (!is_null($pColumn2) && !is_null($pRow2)) { + $cellRange = PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow . ':' . PHPExcel_Cell::stringFromColumnIndex($pColumn2) . $pRow2; + return $this->getStyle($cellRange); + } + + return $this->getStyle(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow); + } + + /** + * Set shared cell style to a range of cells + * + * Please note that this will overwrite existing cell styles for cells in range! + * + * @deprecated + * @param PHPExcel_Style $pSharedCellStyle Cell style to share + * @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1") + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function setSharedStyle(PHPExcel_Style $pSharedCellStyle = null, $pRange = '') + { + $this->duplicateStyle($pSharedCellStyle, $pRange); + return $this; + } + + /** + * Duplicate cell style to a range of cells + * + * Please note that this will overwrite existing cell styles for cells in range! + * + * @param PHPExcel_Style $pCellStyle Cell style to duplicate + * @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1") + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function duplicateStyle(PHPExcel_Style $pCellStyle = null, $pRange = '') + { + // make sure we have a real style and not supervisor + $style = $pCellStyle->getIsSupervisor() ? $pCellStyle->getSharedComponent() : $pCellStyle; + + // Add the style to the workbook if necessary + $workbook = $this->parent; + if ($existingStyle = $this->parent->getCellXfByHashCode($pCellStyle->getHashCode())) { + // there is already such cell Xf in our collection + $xfIndex = $existingStyle->getIndex(); + } else { + // we don't have such a cell Xf, need to add + $workbook->addCellXf($pCellStyle); + $xfIndex = $pCellStyle->getIndex(); + } + + // Calculate range outer borders + list($rangeStart, $rangeEnd) = PHPExcel_Cell::rangeBoundaries($pRange . ':' . $pRange); + + // Make sure we can loop upwards on rows and columns + if ($rangeStart[0] > $rangeEnd[0] && $rangeStart[1] > $rangeEnd[1]) { + $tmp = $rangeStart; + $rangeStart = $rangeEnd; + $rangeEnd = $tmp; + } + + // Loop through cells and apply styles + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + $this->getCell(PHPExcel_Cell::stringFromColumnIndex($col - 1) . $row)->setXfIndex($xfIndex); + } + } + + return $this; + } + + /** + * Duplicate conditional style to a range of cells + * + * Please note that this will overwrite existing cell styles for cells in range! + * + * @param array of PHPExcel_Style_Conditional $pCellStyle Cell style to duplicate + * @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1") + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function duplicateConditionalStyle(array $pCellStyle = null, $pRange = '') + { + foreach ($pCellStyle as $cellStyle) { + if (!($cellStyle instanceof PHPExcel_Style_Conditional)) { + throw new PHPExcel_Exception('Style is not a conditional style'); + } + } + + // Calculate range outer borders + list($rangeStart, $rangeEnd) = PHPExcel_Cell::rangeBoundaries($pRange . ':' . $pRange); + + // Make sure we can loop upwards on rows and columns + if ($rangeStart[0] > $rangeEnd[0] && $rangeStart[1] > $rangeEnd[1]) { + $tmp = $rangeStart; + $rangeStart = $rangeEnd; + $rangeEnd = $tmp; + } + + // Loop through cells and apply styles + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + $this->setConditionalStyles(PHPExcel_Cell::stringFromColumnIndex($col - 1) . $row, $pCellStyle); + } + } + + return $this; + } + + /** + * Duplicate cell style array to a range of cells + * + * Please note that this will overwrite existing cell styles for cells in range, + * if they are in the styles array. For example, if you decide to set a range of + * cells to font bold, only include font bold in the styles array. + * + * @deprecated + * @param array $pStyles Array containing style information + * @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1") + * @param boolean $pAdvanced Advanced mode for setting borders. + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function duplicateStyleArray($pStyles = null, $pRange = '', $pAdvanced = true) + { + $this->getStyle($pRange)->applyFromArray($pStyles, $pAdvanced); + return $this; + } + + /** + * Set break on a cell + * + * @param string $pCell Cell coordinate (e.g. A1) + * @param int $pBreak Break type (type of PHPExcel_Worksheet::BREAK_*) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function setBreak($pCell = 'A1', $pBreak = PHPExcel_Worksheet::BREAK_NONE) + { + // Uppercase coordinate + $pCell = strtoupper($pCell); + + if ($pCell != '') { + if ($pBreak == PHPExcel_Worksheet::BREAK_NONE) { + if (isset($this->breaks[$pCell])) { + unset($this->breaks[$pCell]); + } + } else { + $this->breaks[$pCell] = $pBreak; + } + } else { + throw new PHPExcel_Exception('No cell coordinate specified.'); + } + + return $this; + } + + /** + * Set break on a cell by using numeric cell coordinates + * + * @param integer $pColumn Numeric column coordinate of the cell + * @param integer $pRow Numeric row coordinate of the cell + * @param integer $pBreak Break type (type of PHPExcel_Worksheet::BREAK_*) + * @return PHPExcel_Worksheet + */ + public function setBreakByColumnAndRow($pColumn = 0, $pRow = 1, $pBreak = PHPExcel_Worksheet::BREAK_NONE) + { + return $this->setBreak(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow, $pBreak); + } + + /** + * Get breaks + * + * @return array[] + */ + public function getBreaks() + { + return $this->breaks; + } + + /** + * Set merge on a cell range + * + * @param string $pRange Cell range (e.g. A1:E1) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function mergeCells($pRange = 'A1:A1') + { + // Uppercase coordinate + $pRange = strtoupper($pRange); + + if (strpos($pRange, ':') !== false) { + $this->mergeCells[$pRange] = $pRange; + + // make sure cells are created + + // get the cells in the range + $aReferences = PHPExcel_Cell::extractAllCellReferencesInRange($pRange); + + // create upper left cell if it does not already exist + $upperLeft = $aReferences[0]; + if (!$this->cellExists($upperLeft)) { + $this->getCell($upperLeft)->setValueExplicit(null, PHPExcel_Cell_DataType::TYPE_NULL); + } + + // Blank out the rest of the cells in the range (if they exist) + $count = count($aReferences); + for ($i = 1; $i < $count; $i++) { + if ($this->cellExists($aReferences[$i])) { + $this->getCell($aReferences[$i])->setValueExplicit(null, PHPExcel_Cell_DataType::TYPE_NULL); + } + } + } else { + throw new PHPExcel_Exception('Merge must be set on a range of cells.'); + } + + return $this; + } + + /** + * Set merge on a cell range by using numeric cell coordinates + * + * @param int $pColumn1 Numeric column coordinate of the first cell + * @param int $pRow1 Numeric row coordinate of the first cell + * @param int $pColumn2 Numeric column coordinate of the last cell + * @param int $pRow2 Numeric row coordinate of the last cell + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function mergeCellsByColumnAndRow($pColumn1 = 0, $pRow1 = 1, $pColumn2 = 0, $pRow2 = 1) + { + $cellRange = PHPExcel_Cell::stringFromColumnIndex($pColumn1) . $pRow1 . ':' . PHPExcel_Cell::stringFromColumnIndex($pColumn2) . $pRow2; + return $this->mergeCells($cellRange); + } + + /** + * Remove merge on a cell range + * + * @param string $pRange Cell range (e.g. A1:E1) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function unmergeCells($pRange = 'A1:A1') + { + // Uppercase coordinate + $pRange = strtoupper($pRange); + + if (strpos($pRange, ':') !== false) { + if (isset($this->mergeCells[$pRange])) { + unset($this->mergeCells[$pRange]); + } else { + throw new PHPExcel_Exception('Cell range ' . $pRange . ' not known as merged.'); + } + } else { + throw new PHPExcel_Exception('Merge can only be removed from a range of cells.'); + } + + return $this; + } + + /** + * Remove merge on a cell range by using numeric cell coordinates + * + * @param int $pColumn1 Numeric column coordinate of the first cell + * @param int $pRow1 Numeric row coordinate of the first cell + * @param int $pColumn2 Numeric column coordinate of the last cell + * @param int $pRow2 Numeric row coordinate of the last cell + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function unmergeCellsByColumnAndRow($pColumn1 = 0, $pRow1 = 1, $pColumn2 = 0, $pRow2 = 1) + { + $cellRange = PHPExcel_Cell::stringFromColumnIndex($pColumn1) . $pRow1 . ':' . PHPExcel_Cell::stringFromColumnIndex($pColumn2) . $pRow2; + return $this->unmergeCells($cellRange); + } + + /** + * Get merge cells array. + * + * @return array[] + */ + public function getMergeCells() + { + return $this->mergeCells; + } + + /** + * Set merge cells array for the entire sheet. Use instead mergeCells() to merge + * a single cell range. + * + * @param array + */ + public function setMergeCells($pValue = array()) + { + $this->mergeCells = $pValue; + return $this; + } + + /** + * Set protection on a cell range + * + * @param string $pRange Cell (e.g. A1) or cell range (e.g. A1:E1) + * @param string $pPassword Password to unlock the protection + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function protectCells($pRange = 'A1', $pPassword = '', $pAlreadyHashed = false) + { + // Uppercase coordinate + $pRange = strtoupper($pRange); + + if (!$pAlreadyHashed) { + $pPassword = PHPExcel_Shared_PasswordHasher::hashPassword($pPassword); + } + $this->protectedCells[$pRange] = $pPassword; + + return $this; + } + + /** + * Set protection on a cell range by using numeric cell coordinates + * + * @param int $pColumn1 Numeric column coordinate of the first cell + * @param int $pRow1 Numeric row coordinate of the first cell + * @param int $pColumn2 Numeric column coordinate of the last cell + * @param int $pRow2 Numeric row coordinate of the last cell + * @param string $pPassword Password to unlock the protection + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function protectCellsByColumnAndRow($pColumn1 = 0, $pRow1 = 1, $pColumn2 = 0, $pRow2 = 1, $pPassword = '', $pAlreadyHashed = false) + { + $cellRange = PHPExcel_Cell::stringFromColumnIndex($pColumn1) . $pRow1 . ':' . PHPExcel_Cell::stringFromColumnIndex($pColumn2) . $pRow2; + return $this->protectCells($cellRange, $pPassword, $pAlreadyHashed); + } + + /** + * Remove protection on a cell range + * + * @param string $pRange Cell (e.g. A1) or cell range (e.g. A1:E1) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function unprotectCells($pRange = 'A1') + { + // Uppercase coordinate + $pRange = strtoupper($pRange); + + if (isset($this->protectedCells[$pRange])) { + unset($this->protectedCells[$pRange]); + } else { + throw new PHPExcel_Exception('Cell range ' . $pRange . ' not known as protected.'); + } + return $this; + } + + /** + * Remove protection on a cell range by using numeric cell coordinates + * + * @param int $pColumn1 Numeric column coordinate of the first cell + * @param int $pRow1 Numeric row coordinate of the first cell + * @param int $pColumn2 Numeric column coordinate of the last cell + * @param int $pRow2 Numeric row coordinate of the last cell + * @param string $pPassword Password to unlock the protection + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function unprotectCellsByColumnAndRow($pColumn1 = 0, $pRow1 = 1, $pColumn2 = 0, $pRow2 = 1, $pPassword = '', $pAlreadyHashed = false) + { + $cellRange = PHPExcel_Cell::stringFromColumnIndex($pColumn1) . $pRow1 . ':' . PHPExcel_Cell::stringFromColumnIndex($pColumn2) . $pRow2; + return $this->unprotectCells($cellRange, $pPassword, $pAlreadyHashed); + } + + /** + * Get protected cells + * + * @return array[] + */ + public function getProtectedCells() + { + return $this->protectedCells; + } + + /** + * Get Autofilter + * + * @return PHPExcel_Worksheet_AutoFilter + */ + public function getAutoFilter() + { + return $this->autoFilter; + } + + /** + * Set AutoFilter + * + * @param PHPExcel_Worksheet_AutoFilter|string $pValue + * A simple string containing a Cell range like 'A1:E10' is permitted for backward compatibility + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function setAutoFilter($pValue) + { + $pRange = strtoupper($pValue); + if (is_string($pValue)) { + $this->autoFilter->setRange($pValue); + } elseif (is_object($pValue) && ($pValue instanceof PHPExcel_Worksheet_AutoFilter)) { + $this->autoFilter = $pValue; + } + return $this; + } + + /** + * Set Autofilter Range by using numeric cell coordinates + * + * @param integer $pColumn1 Numeric column coordinate of the first cell + * @param integer $pRow1 Numeric row coordinate of the first cell + * @param integer $pColumn2 Numeric column coordinate of the second cell + * @param integer $pRow2 Numeric row coordinate of the second cell + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function setAutoFilterByColumnAndRow($pColumn1 = 0, $pRow1 = 1, $pColumn2 = 0, $pRow2 = 1) + { + return $this->setAutoFilter( + PHPExcel_Cell::stringFromColumnIndex($pColumn1) . $pRow1 + . ':' . + PHPExcel_Cell::stringFromColumnIndex($pColumn2) . $pRow2 + ); + } + + /** + * Remove autofilter + * + * @return PHPExcel_Worksheet + */ + public function removeAutoFilter() + { + $this->autoFilter->setRange(null); + return $this; + } + + /** + * Get Freeze Pane + * + * @return string + */ + public function getFreezePane() + { + return $this->freezePane; + } + + /** + * Freeze Pane + * + * @param string $pCell Cell (i.e. A2) + * Examples: + * A2 will freeze the rows above cell A2 (i.e row 1) + * B1 will freeze the columns to the left of cell B1 (i.e column A) + * B2 will freeze the rows above and to the left of cell A2 + * (i.e row 1 and column A) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function freezePane($pCell = '') + { + // Uppercase coordinate + $pCell = strtoupper($pCell); + if (strpos($pCell, ':') === false && strpos($pCell, ',') === false) { + $this->freezePane = $pCell; + } else { + throw new PHPExcel_Exception('Freeze pane can not be set on a range of cells.'); + } + return $this; + } + + /** + * Freeze Pane by using numeric cell coordinates + * + * @param int $pColumn Numeric column coordinate of the cell + * @param int $pRow Numeric row coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function freezePaneByColumnAndRow($pColumn = 0, $pRow = 1) + { + return $this->freezePane(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow); + } + + /** + * Unfreeze Pane + * + * @return PHPExcel_Worksheet + */ + public function unfreezePane() + { + return $this->freezePane(''); + } + + /** + * Insert a new row, updating all possible related data + * + * @param int $pBefore Insert before this one + * @param int $pNumRows Number of rows to insert + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function insertNewRowBefore($pBefore = 1, $pNumRows = 1) + { + if ($pBefore >= 1) { + $objReferenceHelper = PHPExcel_ReferenceHelper::getInstance(); + $objReferenceHelper->insertNewBefore('A' . $pBefore, 0, $pNumRows, $this); + } else { + throw new PHPExcel_Exception("Rows can only be inserted before at least row 1."); + } + return $this; + } + + /** + * Insert a new column, updating all possible related data + * + * @param int $pBefore Insert before this one + * @param int $pNumCols Number of columns to insert + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function insertNewColumnBefore($pBefore = 'A', $pNumCols = 1) + { + if (!is_numeric($pBefore)) { + $objReferenceHelper = PHPExcel_ReferenceHelper::getInstance(); + $objReferenceHelper->insertNewBefore($pBefore . '1', $pNumCols, 0, $this); + } else { + throw new PHPExcel_Exception("Column references should not be numeric."); + } + return $this; + } + + /** + * Insert a new column, updating all possible related data + * + * @param int $pBefore Insert before this one (numeric column coordinate of the cell) + * @param int $pNumCols Number of columns to insert + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function insertNewColumnBeforeByIndex($pBefore = 0, $pNumCols = 1) + { + if ($pBefore >= 0) { + return $this->insertNewColumnBefore(PHPExcel_Cell::stringFromColumnIndex($pBefore), $pNumCols); + } else { + throw new PHPExcel_Exception("Columns can only be inserted before at least column A (0)."); + } + } + + /** + * Delete a row, updating all possible related data + * + * @param int $pRow Remove starting with this one + * @param int $pNumRows Number of rows to remove + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function removeRow($pRow = 1, $pNumRows = 1) + { + if ($pRow >= 1) { + $highestRow = $this->getHighestDataRow(); + $objReferenceHelper = PHPExcel_ReferenceHelper::getInstance(); + $objReferenceHelper->insertNewBefore('A' . ($pRow + $pNumRows), 0, -$pNumRows, $this); + for ($r = 0; $r < $pNumRows; ++$r) { + $this->getCellCacheController()->removeRow($highestRow); + --$highestRow; + } + } else { + throw new PHPExcel_Exception("Rows to be deleted should at least start from row 1."); + } + return $this; + } + + /** + * Remove a column, updating all possible related data + * + * @param string $pColumn Remove starting with this one + * @param int $pNumCols Number of columns to remove + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function removeColumn($pColumn = 'A', $pNumCols = 1) + { + if (!is_numeric($pColumn)) { + $highestColumn = $this->getHighestDataColumn(); + $pColumn = PHPExcel_Cell::stringFromColumnIndex(PHPExcel_Cell::columnIndexFromString($pColumn) - 1 + $pNumCols); + $objReferenceHelper = PHPExcel_ReferenceHelper::getInstance(); + $objReferenceHelper->insertNewBefore($pColumn . '1', -$pNumCols, 0, $this); + for ($c = 0; $c < $pNumCols; ++$c) { + $this->getCellCacheController()->removeColumn($highestColumn); + $highestColumn = PHPExcel_Cell::stringFromColumnIndex(PHPExcel_Cell::columnIndexFromString($highestColumn) - 2); + } + } else { + throw new PHPExcel_Exception("Column references should not be numeric."); + } + return $this; + } + + /** + * Remove a column, updating all possible related data + * + * @param int $pColumn Remove starting with this one (numeric column coordinate of the cell) + * @param int $pNumCols Number of columns to remove + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function removeColumnByIndex($pColumn = 0, $pNumCols = 1) + { + if ($pColumn >= 0) { + return $this->removeColumn(PHPExcel_Cell::stringFromColumnIndex($pColumn), $pNumCols); + } else { + throw new PHPExcel_Exception("Columns to be deleted should at least start from column 0"); + } + } + + /** + * Show gridlines? + * + * @return boolean + */ + public function getShowGridlines() + { + return $this->showGridlines; + } + + /** + * Set show gridlines + * + * @param boolean $pValue Show gridlines (true/false) + * @return PHPExcel_Worksheet + */ + public function setShowGridlines($pValue = false) + { + $this->showGridlines = $pValue; + return $this; + } + + /** + * Print gridlines? + * + * @return boolean + */ + public function getPrintGridlines() + { + return $this->printGridlines; + } + + /** + * Set print gridlines + * + * @param boolean $pValue Print gridlines (true/false) + * @return PHPExcel_Worksheet + */ + public function setPrintGridlines($pValue = false) + { + $this->printGridlines = $pValue; + return $this; + } + + /** + * Show row and column headers? + * + * @return boolean + */ + public function getShowRowColHeaders() + { + return $this->showRowColHeaders; + } + + /** + * Set show row and column headers + * + * @param boolean $pValue Show row and column headers (true/false) + * @return PHPExcel_Worksheet + */ + public function setShowRowColHeaders($pValue = false) + { + $this->showRowColHeaders = $pValue; + return $this; + } + + /** + * Show summary below? (Row/Column outlining) + * + * @return boolean + */ + public function getShowSummaryBelow() + { + return $this->showSummaryBelow; + } + + /** + * Set show summary below + * + * @param boolean $pValue Show summary below (true/false) + * @return PHPExcel_Worksheet + */ + public function setShowSummaryBelow($pValue = true) + { + $this->showSummaryBelow = $pValue; + return $this; + } + + /** + * Show summary right? (Row/Column outlining) + * + * @return boolean + */ + public function getShowSummaryRight() + { + return $this->showSummaryRight; + } + + /** + * Set show summary right + * + * @param boolean $pValue Show summary right (true/false) + * @return PHPExcel_Worksheet + */ + public function setShowSummaryRight($pValue = true) + { + $this->showSummaryRight = $pValue; + return $this; + } + + /** + * Get comments + * + * @return PHPExcel_Comment[] + */ + public function getComments() + { + return $this->comments; + } + + /** + * Set comments array for the entire sheet. + * + * @param array of PHPExcel_Comment + * @return PHPExcel_Worksheet + */ + public function setComments($pValue = array()) + { + $this->comments = $pValue; + + return $this; + } + + /** + * Get comment for cell + * + * @param string $pCellCoordinate Cell coordinate to get comment for + * @return PHPExcel_Comment + * @throws PHPExcel_Exception + */ + public function getComment($pCellCoordinate = 'A1') + { + // Uppercase coordinate + $pCellCoordinate = strtoupper($pCellCoordinate); + + if (strpos($pCellCoordinate, ':') !== false || strpos($pCellCoordinate, ',') !== false) { + throw new PHPExcel_Exception('Cell coordinate string can not be a range of cells.'); + } elseif (strpos($pCellCoordinate, '$') !== false) { + throw new PHPExcel_Exception('Cell coordinate string must not be absolute.'); + } elseif ($pCellCoordinate == '') { + throw new PHPExcel_Exception('Cell coordinate can not be zero-length string.'); + } else { + // Check if we already have a comment for this cell. + // If not, create a new comment. + if (isset($this->comments[$pCellCoordinate])) { + return $this->comments[$pCellCoordinate]; + } else { + $newComment = new PHPExcel_Comment(); + $this->comments[$pCellCoordinate] = $newComment; + return $newComment; + } + } + } + + /** + * Get comment for cell by using numeric cell coordinates + * + * @param int $pColumn Numeric column coordinate of the cell + * @param int $pRow Numeric row coordinate of the cell + * @return PHPExcel_Comment + */ + public function getCommentByColumnAndRow($pColumn = 0, $pRow = 1) + { + return $this->getComment(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow); + } + + /** + * Get selected cell + * + * @deprecated + * @return string + */ + public function getSelectedCell() + { + return $this->getSelectedCells(); + } + + /** + * Get active cell + * + * @return string Example: 'A1' + */ + public function getActiveCell() + { + return $this->activeCell; + } + + /** + * Get selected cells + * + * @return string + */ + public function getSelectedCells() + { + return $this->selectedCells; + } + + /** + * Selected cell + * + * @param string $pCoordinate Cell (i.e. A1) + * @return PHPExcel_Worksheet + */ + public function setSelectedCell($pCoordinate = 'A1') + { + return $this->setSelectedCells($pCoordinate); + } + + /** + * Select a range of cells. + * + * @param string $pCoordinate Cell range, examples: 'A1', 'B2:G5', 'A:C', '3:6' + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function setSelectedCells($pCoordinate = 'A1') + { + // Uppercase coordinate + $pCoordinate = strtoupper($pCoordinate); + + // Convert 'A' to 'A:A' + $pCoordinate = preg_replace('/^([A-Z]+)$/', '${1}:${1}', $pCoordinate); + + // Convert '1' to '1:1' + $pCoordinate = preg_replace('/^([0-9]+)$/', '${1}:${1}', $pCoordinate); + + // Convert 'A:C' to 'A1:C1048576' + $pCoordinate = preg_replace('/^([A-Z]+):([A-Z]+)$/', '${1}1:${2}1048576', $pCoordinate); + + // Convert '1:3' to 'A1:XFD3' + $pCoordinate = preg_replace('/^([0-9]+):([0-9]+)$/', 'A${1}:XFD${2}', $pCoordinate); + + if (strpos($pCoordinate, ':') !== false || strpos($pCoordinate, ',') !== false) { + list($first, ) = PHPExcel_Cell::splitRange($pCoordinate); + $this->activeCell = $first[0]; + } else { + $this->activeCell = $pCoordinate; + } + $this->selectedCells = $pCoordinate; + return $this; + } + + /** + * Selected cell by using numeric cell coordinates + * + * @param int $pColumn Numeric column coordinate of the cell + * @param int $pRow Numeric row coordinate of the cell + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function setSelectedCellByColumnAndRow($pColumn = 0, $pRow = 1) + { + return $this->setSelectedCells(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow); + } + + /** + * Get right-to-left + * + * @return boolean + */ + public function getRightToLeft() + { + return $this->rightToLeft; + } + + /** + * Set right-to-left + * + * @param boolean $value Right-to-left true/false + * @return PHPExcel_Worksheet + */ + public function setRightToLeft($value = false) + { + $this->rightToLeft = $value; + return $this; + } + + /** + * Fill worksheet from values in array + * + * @param array $source Source array + * @param mixed $nullValue Value in source array that stands for blank cell + * @param string $startCell Insert array starting from this cell address as the top left coordinate + * @param boolean $strictNullComparison Apply strict comparison when testing for null values in the array + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet + */ + public function fromArray($source = null, $nullValue = null, $startCell = 'A1', $strictNullComparison = false) + { + if (is_array($source)) { + // Convert a 1-D array to 2-D (for ease of looping) + if (!is_array(end($source))) { + $source = array($source); + } + + // start coordinate + list ($startColumn, $startRow) = PHPExcel_Cell::coordinateFromString($startCell); + + // Loop through $source + foreach ($source as $rowData) { + $currentColumn = $startColumn; + foreach ($rowData as $cellValue) { + if ($strictNullComparison) { + if ($cellValue !== $nullValue) { + // Set cell value + $this->getCell($currentColumn . $startRow)->setValue($cellValue); + } + } else { + if ($cellValue != $nullValue) { + // Set cell value + $this->getCell($currentColumn . $startRow)->setValue($cellValue); + } + } + ++$currentColumn; + } + ++$startRow; + } + } else { + throw new PHPExcel_Exception("Parameter \$source should be an array."); + } + return $this; + } + + /** + * Create array from a range of cells + * + * @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1") + * @param mixed $nullValue Value returned in the array entry if a cell doesn't exist + * @param boolean $calculateFormulas Should formulas be calculated? + * @param boolean $formatData Should formatting be applied to cell values? + * @param boolean $returnCellRef False - Return a simple array of rows and columns indexed by number counting from zero + * True - Return rows and columns indexed by their actual row and column IDs + * @return array + */ + public function rangeToArray($pRange = 'A1', $nullValue = null, $calculateFormulas = true, $formatData = true, $returnCellRef = false) + { + // Returnvalue + $returnValue = array(); + // Identify the range that we need to extract from the worksheet + list($rangeStart, $rangeEnd) = PHPExcel_Cell::rangeBoundaries($pRange); + $minCol = PHPExcel_Cell::stringFromColumnIndex($rangeStart[0] -1); + $minRow = $rangeStart[1]; + $maxCol = PHPExcel_Cell::stringFromColumnIndex($rangeEnd[0] -1); + $maxRow = $rangeEnd[1]; + + $maxCol++; + // Loop through rows + $r = -1; + for ($row = $minRow; $row <= $maxRow; ++$row) { + $rRef = ($returnCellRef) ? $row : ++$r; + $c = -1; + // Loop through columns in the current row + for ($col = $minCol; $col != $maxCol; ++$col) { + $cRef = ($returnCellRef) ? $col : ++$c; + // Using getCell() will create a new cell if it doesn't already exist. We don't want that to happen + // so we test and retrieve directly against cellCollection + if ($this->cellCollection->isDataSet($col.$row)) { + // Cell exists + $cell = $this->cellCollection->getCacheData($col.$row); + if ($cell->getValue() !== null) { + if ($cell->getValue() instanceof PHPExcel_RichText) { + $returnValue[$rRef][$cRef] = $cell->getValue()->getPlainText(); + } else { + if ($calculateFormulas) { + $returnValue[$rRef][$cRef] = $cell->getCalculatedValue(); + } else { + $returnValue[$rRef][$cRef] = $cell->getValue(); + } + } + + if ($formatData) { + $style = $this->parent->getCellXfByIndex($cell->getXfIndex()); + $returnValue[$rRef][$cRef] = PHPExcel_Style_NumberFormat::toFormattedString( + $returnValue[$rRef][$cRef], + ($style && $style->getNumberFormat()) ? $style->getNumberFormat()->getFormatCode() : PHPExcel_Style_NumberFormat::FORMAT_GENERAL + ); + } + } else { + // Cell holds a NULL + $returnValue[$rRef][$cRef] = $nullValue; + } + } else { + // Cell doesn't exist + $returnValue[$rRef][$cRef] = $nullValue; + } + } + } + + // Return + return $returnValue; + } + + + /** + * Create array from a range of cells + * + * @param string $pNamedRange Name of the Named Range + * @param mixed $nullValue Value returned in the array entry if a cell doesn't exist + * @param boolean $calculateFormulas Should formulas be calculated? + * @param boolean $formatData Should formatting be applied to cell values? + * @param boolean $returnCellRef False - Return a simple array of rows and columns indexed by number counting from zero + * True - Return rows and columns indexed by their actual row and column IDs + * @return array + * @throws PHPExcel_Exception + */ + public function namedRangeToArray($pNamedRange = '', $nullValue = null, $calculateFormulas = true, $formatData = true, $returnCellRef = false) + { + $namedRange = PHPExcel_NamedRange::resolveRange($pNamedRange, $this); + if ($namedRange !== null) { + $pWorkSheet = $namedRange->getWorksheet(); + $pCellRange = $namedRange->getRange(); + + return $pWorkSheet->rangeToArray($pCellRange, $nullValue, $calculateFormulas, $formatData, $returnCellRef); + } + + throw new PHPExcel_Exception('Named Range '.$pNamedRange.' does not exist.'); + } + + + /** + * Create array from worksheet + * + * @param mixed $nullValue Value returned in the array entry if a cell doesn't exist + * @param boolean $calculateFormulas Should formulas be calculated? + * @param boolean $formatData Should formatting be applied to cell values? + * @param boolean $returnCellRef False - Return a simple array of rows and columns indexed by number counting from zero + * True - Return rows and columns indexed by their actual row and column IDs + * @return array + */ + public function toArray($nullValue = null, $calculateFormulas = true, $formatData = true, $returnCellRef = false) + { + // Garbage collect... + $this->garbageCollect(); + + // Identify the range that we need to extract from the worksheet + $maxCol = $this->getHighestColumn(); + $maxRow = $this->getHighestRow(); + // Return + return $this->rangeToArray('A1:'.$maxCol.$maxRow, $nullValue, $calculateFormulas, $formatData, $returnCellRef); + } + + /** + * Get row iterator + * + * @param integer $startRow The row number at which to start iterating + * @param integer $endRow The row number at which to stop iterating + * + * @return PHPExcel_Worksheet_RowIterator + */ + public function getRowIterator($startRow = 1, $endRow = null) + { + return new PHPExcel_Worksheet_RowIterator($this, $startRow, $endRow); + } + + /** + * Get column iterator + * + * @param string $startColumn The column address at which to start iterating + * @param string $endColumn The column address at which to stop iterating + * + * @return PHPExcel_Worksheet_ColumnIterator + */ + public function getColumnIterator($startColumn = 'A', $endColumn = null) + { + return new PHPExcel_Worksheet_ColumnIterator($this, $startColumn, $endColumn); + } + + /** + * Run PHPExcel garabage collector. + * + * @return PHPExcel_Worksheet + */ + public function garbageCollect() + { + // Flush cache + $this->cellCollection->getCacheData('A1'); + // Build a reference table from images +// $imageCoordinates = array(); +// $iterator = $this->getDrawingCollection()->getIterator(); +// while ($iterator->valid()) { +// $imageCoordinates[$iterator->current()->getCoordinates()] = true; +// +// $iterator->next(); +// } +// + // Lookup highest column and highest row if cells are cleaned + $colRow = $this->cellCollection->getHighestRowAndColumn(); + $highestRow = $colRow['row']; + $highestColumn = PHPExcel_Cell::columnIndexFromString($colRow['column']); + + // Loop through column dimensions + foreach ($this->columnDimensions as $dimension) { + $highestColumn = max($highestColumn, PHPExcel_Cell::columnIndexFromString($dimension->getColumnIndex())); + } + + // Loop through row dimensions + foreach ($this->rowDimensions as $dimension) { + $highestRow = max($highestRow, $dimension->getRowIndex()); + } + + // Cache values + if ($highestColumn < 0) { + $this->cachedHighestColumn = 'A'; + } else { + $this->cachedHighestColumn = PHPExcel_Cell::stringFromColumnIndex(--$highestColumn); + } + $this->cachedHighestRow = $highestRow; + + // Return + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + if ($this->dirty) { + $this->hash = md5($this->title . $this->autoFilter . ($this->protection->isProtectionEnabled() ? 't' : 'f') . __CLASS__); + $this->dirty = false; + } + return $this->hash; + } + + /** + * Extract worksheet title from range. + * + * Example: extractSheetTitle("testSheet!A1") ==> 'A1' + * Example: extractSheetTitle("'testSheet 1'!A1", true) ==> array('testSheet 1', 'A1'); + * + * @param string $pRange Range to extract title from + * @param bool $returnRange Return range? (see example) + * @return mixed + */ + public static function extractSheetTitle($pRange, $returnRange = false) + { + // Sheet title included? + if (($sep = strpos($pRange, '!')) === false) { + return ''; + } + + if ($returnRange) { + return array(trim(substr($pRange, 0, $sep), "'"), substr($pRange, $sep + 1)); + } + + return substr($pRange, $sep + 1); + } + + /** + * Get hyperlink + * + * @param string $pCellCoordinate Cell coordinate to get hyperlink for + */ + public function getHyperlink($pCellCoordinate = 'A1') + { + // return hyperlink if we already have one + if (isset($this->hyperlinkCollection[$pCellCoordinate])) { + return $this->hyperlinkCollection[$pCellCoordinate]; + } + + // else create hyperlink + $this->hyperlinkCollection[$pCellCoordinate] = new PHPExcel_Cell_Hyperlink(); + return $this->hyperlinkCollection[$pCellCoordinate]; + } + + /** + * Set hyperlnk + * + * @param string $pCellCoordinate Cell coordinate to insert hyperlink + * @param PHPExcel_Cell_Hyperlink $pHyperlink + * @return PHPExcel_Worksheet + */ + public function setHyperlink($pCellCoordinate = 'A1', PHPExcel_Cell_Hyperlink $pHyperlink = null) + { + if ($pHyperlink === null) { + unset($this->hyperlinkCollection[$pCellCoordinate]); + } else { + $this->hyperlinkCollection[$pCellCoordinate] = $pHyperlink; + } + return $this; + } + + /** + * Hyperlink at a specific coordinate exists? + * + * @param string $pCoordinate + * @return boolean + */ + public function hyperlinkExists($pCoordinate = 'A1') + { + return isset($this->hyperlinkCollection[$pCoordinate]); + } + + /** + * Get collection of hyperlinks + * + * @return PHPExcel_Cell_Hyperlink[] + */ + public function getHyperlinkCollection() + { + return $this->hyperlinkCollection; + } + + /** + * Get data validation + * + * @param string $pCellCoordinate Cell coordinate to get data validation for + */ + public function getDataValidation($pCellCoordinate = 'A1') + { + // return data validation if we already have one + if (isset($this->dataValidationCollection[$pCellCoordinate])) { + return $this->dataValidationCollection[$pCellCoordinate]; + } + + // else create data validation + $this->dataValidationCollection[$pCellCoordinate] = new PHPExcel_Cell_DataValidation(); + return $this->dataValidationCollection[$pCellCoordinate]; + } + + /** + * Set data validation + * + * @param string $pCellCoordinate Cell coordinate to insert data validation + * @param PHPExcel_Cell_DataValidation $pDataValidation + * @return PHPExcel_Worksheet + */ + public function setDataValidation($pCellCoordinate = 'A1', PHPExcel_Cell_DataValidation $pDataValidation = null) + { + if ($pDataValidation === null) { + unset($this->dataValidationCollection[$pCellCoordinate]); + } else { + $this->dataValidationCollection[$pCellCoordinate] = $pDataValidation; + } + return $this; + } + + /** + * Data validation at a specific coordinate exists? + * + * @param string $pCoordinate + * @return boolean + */ + public function dataValidationExists($pCoordinate = 'A1') + { + return isset($this->dataValidationCollection[$pCoordinate]); + } + + /** + * Get collection of data validations + * + * @return PHPExcel_Cell_DataValidation[] + */ + public function getDataValidationCollection() + { + return $this->dataValidationCollection; + } + + /** + * Accepts a range, returning it as a range that falls within the current highest row and column of the worksheet + * + * @param string $range + * @return string Adjusted range value + */ + public function shrinkRangeToFit($range) + { + $maxCol = $this->getHighestColumn(); + $maxRow = $this->getHighestRow(); + $maxCol = PHPExcel_Cell::columnIndexFromString($maxCol); + + $rangeBlocks = explode(' ', $range); + foreach ($rangeBlocks as &$rangeSet) { + $rangeBoundaries = PHPExcel_Cell::getRangeBoundaries($rangeSet); + + if (PHPExcel_Cell::columnIndexFromString($rangeBoundaries[0][0]) > $maxCol) { + $rangeBoundaries[0][0] = PHPExcel_Cell::stringFromColumnIndex($maxCol); + } + if ($rangeBoundaries[0][1] > $maxRow) { + $rangeBoundaries[0][1] = $maxRow; + } + if (PHPExcel_Cell::columnIndexFromString($rangeBoundaries[1][0]) > $maxCol) { + $rangeBoundaries[1][0] = PHPExcel_Cell::stringFromColumnIndex($maxCol); + } + if ($rangeBoundaries[1][1] > $maxRow) { + $rangeBoundaries[1][1] = $maxRow; + } + $rangeSet = $rangeBoundaries[0][0].$rangeBoundaries[0][1].':'.$rangeBoundaries[1][0].$rangeBoundaries[1][1]; + } + unset($rangeSet); + $stRange = implode(' ', $rangeBlocks); + + return $stRange; + } + + /** + * Get tab color + * + * @return PHPExcel_Style_Color + */ + public function getTabColor() + { + if ($this->tabColor === null) { + $this->tabColor = new PHPExcel_Style_Color(); + } + return $this->tabColor; + } + + /** + * Reset tab color + * + * @return PHPExcel_Worksheet + */ + public function resetTabColor() + { + $this->tabColor = null; + unset($this->tabColor); + + return $this; + } + + /** + * Tab color set? + * + * @return boolean + */ + public function isTabColorSet() + { + return ($this->tabColor !== null); + } + + /** + * Copy worksheet (!= clone!) + * + * @return PHPExcel_Worksheet + */ + public function copy() + { + $copied = clone $this; + + return $copied; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + foreach ($this as $key => $val) { + if ($key == 'parent') { + continue; + } + + if (is_object($val) || (is_array($val))) { + if ($key == 'cellCollection') { + $newCollection = clone $this->cellCollection; + $newCollection->copyCellCollection($this); + $this->cellCollection = $newCollection; + } elseif ($key == 'drawingCollection') { + $newCollection = clone $this->drawingCollection; + $this->drawingCollection = $newCollection; + } elseif (($key == 'autoFilter') && ($this->autoFilter instanceof PHPExcel_Worksheet_AutoFilter)) { + $newAutoFilter = clone $this->autoFilter; + $this->autoFilter = $newAutoFilter; + $this->autoFilter->setParent($this); + } else { + $this->{$key} = unserialize(serialize($val)); + } + } + } + } +/** + * Define the code name of the sheet + * + * @param null|string Same rule as Title minus space not allowed (but, like Excel, change silently space to underscore) + * @return objWorksheet + * @throws PHPExcel_Exception + */ + public function setCodeName($pValue = null) + { + // Is this a 'rename' or not? + if ($this->getCodeName() == $pValue) { + return $this; + } + $pValue = str_replace(' ', '_', $pValue);//Excel does this automatically without flinching, we are doing the same + // Syntax check + // throw an exception if not valid + self::checkSheetCodeName($pValue); + + // We use the same code that setTitle to find a valid codeName else not using a space (Excel don't like) but a '_' + + if ($this->getParent()) { + // Is there already such sheet name? + if ($this->getParent()->sheetCodeNameExists($pValue)) { + // Use name, but append with lowest possible integer + + if (PHPExcel_Shared_String::CountCharacters($pValue) > 29) { + $pValue = PHPExcel_Shared_String::Substring($pValue, 0, 29); + } + $i = 1; + while ($this->getParent()->sheetCodeNameExists($pValue . '_' . $i)) { + ++$i; + if ($i == 10) { + if (PHPExcel_Shared_String::CountCharacters($pValue) > 28) { + $pValue = PHPExcel_Shared_String::Substring($pValue, 0, 28); + } + } elseif ($i == 100) { + if (PHPExcel_Shared_String::CountCharacters($pValue) > 27) { + $pValue = PHPExcel_Shared_String::Substring($pValue, 0, 27); + } + } + } + + $pValue = $pValue . '_' . $i;// ok, we have a valid name + //codeName is'nt used in formula : no need to call for an update + //return $this->setTitle($altTitle, $updateFormulaCellReferences); + } + } + + $this->codeName=$pValue; + return $this; + } + /** + * Return the code name of the sheet + * + * @return null|string + */ + public function getCodeName() + { + return $this->codeName; + } + /** + * Sheet has a code name ? + * @return boolean + */ + public function hasCodeName() + { + return !(is_null($this->codeName)); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter.php new file mode 100644 index 0000000..6ec8a44 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter.php @@ -0,0 +1,846 @@ +<?php + +/** + * PHPExcel_Worksheet_AutoFilter + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_AutoFilter +{ + /** + * Autofilter Worksheet + * + * @var PHPExcel_Worksheet + */ + private $workSheet; + + + /** + * Autofilter Range + * + * @var string + */ + private $range = ''; + + + /** + * Autofilter Column Ruleset + * + * @var array of PHPExcel_Worksheet_AutoFilter_Column + */ + private $columns = array(); + + + /** + * Create a new PHPExcel_Worksheet_AutoFilter + * + * @param string $pRange Cell range (i.e. A1:E10) + * @param PHPExcel_Worksheet $pSheet + */ + public function __construct($pRange = '', PHPExcel_Worksheet $pSheet = null) + { + $this->range = $pRange; + $this->workSheet = $pSheet; + } + + /** + * Get AutoFilter Parent Worksheet + * + * @return PHPExcel_Worksheet + */ + public function getParent() + { + return $this->workSheet; + } + + /** + * Set AutoFilter Parent Worksheet + * + * @param PHPExcel_Worksheet $pSheet + * @return PHPExcel_Worksheet_AutoFilter + */ + public function setParent(PHPExcel_Worksheet $pSheet = null) + { + $this->workSheet = $pSheet; + + return $this; + } + + /** + * Get AutoFilter Range + * + * @return string + */ + public function getRange() + { + return $this->range; + } + + /** + * Set AutoFilter Range + * + * @param string $pRange Cell range (i.e. A1:E10) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter + */ + public function setRange($pRange = '') + { + // Uppercase coordinate + $cellAddress = explode('!', strtoupper($pRange)); + if (count($cellAddress) > 1) { + list($worksheet, $pRange) = $cellAddress; + } + + if (strpos($pRange, ':') !== false) { + $this->range = $pRange; + } elseif (empty($pRange)) { + $this->range = ''; + } else { + throw new PHPExcel_Exception('Autofilter must be set on a range of cells.'); + } + + if (empty($pRange)) { + // Discard all column rules + $this->columns = array(); + } else { + // Discard any column rules that are no longer valid within this range + list($rangeStart, $rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->range); + foreach ($this->columns as $key => $value) { + $colIndex = PHPExcel_Cell::columnIndexFromString($key); + if (($rangeStart[0] > $colIndex) || ($rangeEnd[0] < $colIndex)) { + unset($this->columns[$key]); + } + } + } + + return $this; + } + + /** + * Get all AutoFilter Columns + * + * @throws PHPExcel_Exception + * @return array of PHPExcel_Worksheet_AutoFilter_Column + */ + public function getColumns() + { + return $this->columns; + } + + /** + * Validate that the specified column is in the AutoFilter range + * + * @param string $column Column name (e.g. A) + * @throws PHPExcel_Exception + * @return integer The column offset within the autofilter range + */ + public function testColumnInRange($column) + { + if (empty($this->range)) { + throw new PHPExcel_Exception("No autofilter range is defined."); + } + + $columnIndex = PHPExcel_Cell::columnIndexFromString($column); + list($rangeStart, $rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->range); + if (($rangeStart[0] > $columnIndex) || ($rangeEnd[0] < $columnIndex)) { + throw new PHPExcel_Exception("Column is outside of current autofilter range."); + } + + return $columnIndex - $rangeStart[0]; + } + + /** + * Get a specified AutoFilter Column Offset within the defined AutoFilter range + * + * @param string $pColumn Column name (e.g. A) + * @throws PHPExcel_Exception + * @return integer The offset of the specified column within the autofilter range + */ + public function getColumnOffset($pColumn) + { + return $this->testColumnInRange($pColumn); + } + + /** + * Get a specified AutoFilter Column + * + * @param string $pColumn Column name (e.g. A) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function getColumn($pColumn) + { + $this->testColumnInRange($pColumn); + + if (!isset($this->columns[$pColumn])) { + $this->columns[$pColumn] = new PHPExcel_Worksheet_AutoFilter_Column($pColumn, $this); + } + + return $this->columns[$pColumn]; + } + + /** + * Get a specified AutoFilter Column by it's offset + * + * @param integer $pColumnOffset Column offset within range (starting from 0) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function getColumnByOffset($pColumnOffset = 0) + { + list($rangeStart, $rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->range); + $pColumn = PHPExcel_Cell::stringFromColumnIndex($rangeStart[0] + $pColumnOffset - 1); + + return $this->getColumn($pColumn); + } + + /** + * Set AutoFilter + * + * @param PHPExcel_Worksheet_AutoFilter_Column|string $pColumn + * A simple string containing a Column ID like 'A' is permitted + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter + */ + public function setColumn($pColumn) + { + if ((is_string($pColumn)) && (!empty($pColumn))) { + $column = $pColumn; + } elseif (is_object($pColumn) && ($pColumn instanceof PHPExcel_Worksheet_AutoFilter_Column)) { + $column = $pColumn->getColumnIndex(); + } else { + throw new PHPExcel_Exception("Column is not within the autofilter range."); + } + $this->testColumnInRange($column); + + if (is_string($pColumn)) { + $this->columns[$pColumn] = new PHPExcel_Worksheet_AutoFilter_Column($pColumn, $this); + } elseif (is_object($pColumn) && ($pColumn instanceof PHPExcel_Worksheet_AutoFilter_Column)) { + $pColumn->setParent($this); + $this->columns[$column] = $pColumn; + } + ksort($this->columns); + + return $this; + } + + /** + * Clear a specified AutoFilter Column + * + * @param string $pColumn Column name (e.g. A) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter + */ + public function clearColumn($pColumn) + { + $this->testColumnInRange($pColumn); + + if (isset($this->columns[$pColumn])) { + unset($this->columns[$pColumn]); + } + + return $this; + } + + /** + * Shift an AutoFilter Column Rule to a different column + * + * Note: This method bypasses validation of the destination column to ensure it is within this AutoFilter range. + * Nor does it verify whether any column rule already exists at $toColumn, but will simply overrideany existing value. + * Use with caution. + * + * @param string $fromColumn Column name (e.g. A) + * @param string $toColumn Column name (e.g. B) + * @return PHPExcel_Worksheet_AutoFilter + */ + public function shiftColumn($fromColumn = null, $toColumn = null) + { + $fromColumn = strtoupper($fromColumn); + $toColumn = strtoupper($toColumn); + + if (($fromColumn !== null) && (isset($this->columns[$fromColumn])) && ($toColumn !== null)) { + $this->columns[$fromColumn]->setParent(); + $this->columns[$fromColumn]->setColumnIndex($toColumn); + $this->columns[$toColumn] = $this->columns[$fromColumn]; + $this->columns[$toColumn]->setParent($this); + unset($this->columns[$fromColumn]); + + ksort($this->columns); + } + + return $this; + } + + + /** + * Test if cell value is in the defined set of values + * + * @param mixed $cellValue + * @param mixed[] $dataSet + * @return boolean + */ + private static function filterTestInSimpleDataSet($cellValue, $dataSet) + { + $dataSetValues = $dataSet['filterValues']; + $blanks = $dataSet['blanks']; + if (($cellValue == '') || ($cellValue === null)) { + return $blanks; + } + return in_array($cellValue, $dataSetValues); + } + + /** + * Test if cell value is in the defined set of Excel date values + * + * @param mixed $cellValue + * @param mixed[] $dataSet + * @return boolean + */ + private static function filterTestInDateGroupSet($cellValue, $dataSet) + { + $dateSet = $dataSet['filterValues']; + $blanks = $dataSet['blanks']; + if (($cellValue == '') || ($cellValue === null)) { + return $blanks; + } + + if (is_numeric($cellValue)) { + $dateValue = PHPExcel_Shared_Date::ExcelToPHP($cellValue); + if ($cellValue < 1) { + // Just the time part + $dtVal = date('His', $dateValue); + $dateSet = $dateSet['time']; + } elseif ($cellValue == floor($cellValue)) { + // Just the date part + $dtVal = date('Ymd', $dateValue); + $dateSet = $dateSet['date']; + } else { + // date and time parts + $dtVal = date('YmdHis', $dateValue); + $dateSet = $dateSet['dateTime']; + } + foreach ($dateSet as $dateValue) { + // Use of substr to extract value at the appropriate group level + if (substr($dtVal, 0, strlen($dateValue)) == $dateValue) { + return true; + } + } + } + return false; + } + + /** + * Test if cell value is within a set of values defined by a ruleset + * + * @param mixed $cellValue + * @param mixed[] $ruleSet + * @return boolean + */ + private static function filterTestInCustomDataSet($cellValue, $ruleSet) + { + $dataSet = $ruleSet['filterRules']; + $join = $ruleSet['join']; + $customRuleForBlanks = isset($ruleSet['customRuleForBlanks']) ? $ruleSet['customRuleForBlanks'] : false; + + if (!$customRuleForBlanks) { + // Blank cells are always ignored, so return a FALSE + if (($cellValue == '') || ($cellValue === null)) { + return false; + } + } + $returnVal = ($join == PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND); + foreach ($dataSet as $rule) { + if (is_numeric($rule['value'])) { + // Numeric values are tested using the appropriate operator + switch ($rule['operator']) { + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL: + $retVal = ($cellValue == $rule['value']); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_NOTEQUAL: + $retVal = ($cellValue != $rule['value']); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHAN: + $retVal = ($cellValue > $rule['value']); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL: + $retVal = ($cellValue >= $rule['value']); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHAN: + $retVal = ($cellValue < $rule['value']); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL: + $retVal = ($cellValue <= $rule['value']); + break; + } + } elseif ($rule['value'] == '') { + switch ($rule['operator']) { + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL: + $retVal = (($cellValue == '') || ($cellValue === null)); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_NOTEQUAL: + $retVal = (($cellValue != '') && ($cellValue !== null)); + break; + default: + $retVal = true; + break; + } + } else { + // String values are always tested for equality, factoring in for wildcards (hence a regexp test) + $retVal = preg_match('/^'.$rule['value'].'$/i', $cellValue); + } + // If there are multiple conditions, then we need to test both using the appropriate join operator + switch ($join) { + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_OR: + $returnVal = $returnVal || $retVal; + // Break as soon as we have a TRUE match for OR joins, + // to avoid unnecessary additional code execution + if ($returnVal) { + return $returnVal; + } + break; + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND: + $returnVal = $returnVal && $retVal; + break; + } + } + + return $returnVal; + } + + /** + * Test if cell date value is matches a set of values defined by a set of months + * + * @param mixed $cellValue + * @param mixed[] $monthSet + * @return boolean + */ + private static function filterTestInPeriodDateSet($cellValue, $monthSet) + { + // Blank cells are always ignored, so return a FALSE + if (($cellValue == '') || ($cellValue === null)) { + return false; + } + + if (is_numeric($cellValue)) { + $dateValue = date('m', PHPExcel_Shared_Date::ExcelToPHP($cellValue)); + if (in_array($dateValue, $monthSet)) { + return true; + } + } + + return false; + } + + /** + * Search/Replace arrays to convert Excel wildcard syntax to a regexp syntax for preg_matching + * + * @var array + */ + private static $fromReplace = array('\*', '\?', '~~', '~.*', '~.?'); + private static $toReplace = array('.*', '.', '~', '\*', '\?'); + + + /** + * Convert a dynamic rule daterange to a custom filter range expression for ease of calculation + * + * @param string $dynamicRuleType + * @param PHPExcel_Worksheet_AutoFilter_Column &$filterColumn + * @return mixed[] + */ + private function dynamicFilterDateRange($dynamicRuleType, &$filterColumn) + { + $rDateType = PHPExcel_Calculation_Functions::getReturnDateType(); + PHPExcel_Calculation_Functions::setReturnDateType(PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC); + $val = $maxVal = null; + + $ruleValues = array(); + $baseDate = PHPExcel_Calculation_DateTime::DATENOW(); + // Calculate start/end dates for the required date range based on current date + switch ($dynamicRuleType) { + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK: + $baseDate = strtotime('-7 days', $baseDate); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK: + $baseDate = strtotime('-7 days', $baseDate); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH: + $baseDate = strtotime('-1 month', gmmktime(0, 0, 0, 1, date('m', $baseDate), date('Y', $baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH: + $baseDate = strtotime('+1 month', gmmktime(0, 0, 0, 1, date('m', $baseDate), date('Y', $baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER: + $baseDate = strtotime('-3 month', gmmktime(0, 0, 0, 1, date('m', $baseDate), date('Y', $baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER: + $baseDate = strtotime('+3 month', gmmktime(0, 0, 0, 1, date('m', $baseDate), date('Y', $baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR: + $baseDate = strtotime('-1 year', gmmktime(0, 0, 0, 1, date('m', $baseDate), date('Y', $baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR: + $baseDate = strtotime('+1 year', gmmktime(0, 0, 0, 1, date('m', $baseDate), date('Y', $baseDate))); + break; + } + + switch ($dynamicRuleType) { + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TODAY: + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY: + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW: + $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(strtotime('+1 day', $baseDate)); + $val = (int) PHPExcel_Shared_Date::PHPToExcel($baseDate); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE: + $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(strtotime('+1 day', $baseDate)); + $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0, 0, 0, 1, 1, date('Y', $baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR: + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR: + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR: + $maxVal = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0, 0, 0, 31, 12, date('Y', $baseDate))); + ++$maxVal; + $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0, 0, 0, 1, 1, date('Y', $baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER: + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER: + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER: + $thisMonth = date('m', $baseDate); + $thisQuarter = floor(--$thisMonth / 3); + $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(gmmktime(0, 0, 0, date('t', $baseDate), (1+$thisQuarter)*3, date('Y', $baseDate))); + ++$maxVal; + $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0, 0, 0, 1, 1+$thisQuarter*3, date('Y', $baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH: + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH: + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH: + $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(gmmktime(0, 0, 0, date('t', $baseDate), date('m', $baseDate), date('Y', $baseDate))); + ++$maxVal; + $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0, 0, 0, 1, date('m', $baseDate), date('Y', $baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK: + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK: + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK: + $dayOfWeek = date('w', $baseDate); + $val = (int) PHPExcel_Shared_Date::PHPToExcel($baseDate) - $dayOfWeek; + $maxVal = $val + 7; + break; + } + + switch ($dynamicRuleType) { + // Adjust Today dates for Yesterday and Tomorrow + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY: + --$maxVal; + --$val; + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW: + ++$maxVal; + ++$val; + break; + } + + // Set the filter column rule attributes ready for writing + $filterColumn->setAttributes(array('val' => $val, 'maxVal' => $maxVal)); + + // Set the rules for identifying rows for hide/show + $ruleValues[] = array('operator' => PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL, 'value' => $val); + $ruleValues[] = array('operator' => PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHAN, 'value' => $maxVal); + PHPExcel_Calculation_Functions::setReturnDateType($rDateType); + + return array('method' => 'filterTestInCustomDataSet', 'arguments' => array('filterRules' => $ruleValues, 'join' => PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND)); + } + + private function calculateTopTenValue($columnID, $startRow, $endRow, $ruleType, $ruleValue) + { + $range = $columnID.$startRow.':'.$columnID.$endRow; + $dataValues = PHPExcel_Calculation_Functions::flattenArray($this->workSheet->rangeToArray($range, null, true, false)); + + $dataValues = array_filter($dataValues); + if ($ruleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP) { + rsort($dataValues); + } else { + sort($dataValues); + } + + return array_pop(array_slice($dataValues, 0, $ruleValue)); + } + + /** + * Apply the AutoFilter rules to the AutoFilter Range + * + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter + */ + public function showHideRows() + { + list($rangeStart, $rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->range); + + // The heading row should always be visible +// echo 'AutoFilter Heading Row ', $rangeStart[1],' is always SHOWN',PHP_EOL; + $this->workSheet->getRowDimension($rangeStart[1])->setVisible(true); + + $columnFilterTests = array(); + foreach ($this->columns as $columnID => $filterColumn) { + $rules = $filterColumn->getRules(); + switch ($filterColumn->getFilterType()) { + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER: + $ruleValues = array(); + // Build a list of the filter value selections + foreach ($rules as $rule) { + $ruleType = $rule->getRuleType(); + $ruleValues[] = $rule->getValue(); + } + // Test if we want to include blanks in our filter criteria + $blanks = false; + $ruleDataSet = array_filter($ruleValues); + if (count($ruleValues) != count($ruleDataSet)) { + $blanks = true; + } + if ($ruleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_FILTER) { + // Filter on absolute values + $columnFilterTests[$columnID] = array( + 'method' => 'filterTestInSimpleDataSet', + 'arguments' => array('filterValues' => $ruleDataSet, 'blanks' => $blanks) + ); + } else { + // Filter on date group values + $arguments = array( + 'date' => array(), + 'time' => array(), + 'dateTime' => array(), + ); + foreach ($ruleDataSet as $ruleValue) { + $date = $time = ''; + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_YEAR])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_YEAR] !== '')) { + $date .= sprintf('%04d', $ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_YEAR]); + } + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MONTH])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MONTH] != '')) { + $date .= sprintf('%02d', $ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MONTH]); + } + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_DAY])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_DAY] !== '')) { + $date .= sprintf('%02d', $ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_DAY]); + } + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_HOUR])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_HOUR] !== '')) { + $time .= sprintf('%02d', $ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_HOUR]); + } + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE] !== '')) { + $time .= sprintf('%02d', $ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE]); + } + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_SECOND])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_SECOND] !== '')) { + $time .= sprintf('%02d', $ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_SECOND]); + } + $dateTime = $date . $time; + $arguments['date'][] = $date; + $arguments['time'][] = $time; + $arguments['dateTime'][] = $dateTime; + } + // Remove empty elements + $arguments['date'] = array_filter($arguments['date']); + $arguments['time'] = array_filter($arguments['time']); + $arguments['dateTime'] = array_filter($arguments['dateTime']); + $columnFilterTests[$columnID] = array( + 'method' => 'filterTestInDateGroupSet', + 'arguments' => array('filterValues' => $arguments, 'blanks' => $blanks) + ); + } + break; + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER: + $customRuleForBlanks = false; + $ruleValues = array(); + // Build a list of the filter value selections + foreach ($rules as $rule) { + $ruleType = $rule->getRuleType(); + $ruleValue = $rule->getValue(); + if (!is_numeric($ruleValue)) { + // Convert to a regexp allowing for regexp reserved characters, wildcards and escaped wildcards + $ruleValue = preg_quote($ruleValue); + $ruleValue = str_replace(self::$fromReplace, self::$toReplace, $ruleValue); + if (trim($ruleValue) == '') { + $customRuleForBlanks = true; + $ruleValue = trim($ruleValue); + } + } + $ruleValues[] = array('operator' => $rule->getOperator(), 'value' => $ruleValue); + } + $join = $filterColumn->getJoin(); + $columnFilterTests[$columnID] = array( + 'method' => 'filterTestInCustomDataSet', + 'arguments' => array('filterRules' => $ruleValues, 'join' => $join, 'customRuleForBlanks' => $customRuleForBlanks) + ); + break; + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_DYNAMICFILTER: + $ruleValues = array(); + foreach ($rules as $rule) { + // We should only ever have one Dynamic Filter Rule anyway + $dynamicRuleType = $rule->getGrouping(); + if (($dynamicRuleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE) || + ($dynamicRuleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE)) { + // Number (Average) based + // Calculate the average + $averageFormula = '=AVERAGE('.$columnID.($rangeStart[1]+1).':'.$columnID.$rangeEnd[1].')'; + $average = PHPExcel_Calculation::getInstance()->calculateFormula($averageFormula, null, $this->workSheet->getCell('A1')); + // Set above/below rule based on greaterThan or LessTan + $operator = ($dynamicRuleType === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE) + ? PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHAN + : PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHAN; + $ruleValues[] = array('operator' => $operator, + 'value' => $average + ); + $columnFilterTests[$columnID] = array( + 'method' => 'filterTestInCustomDataSet', + 'arguments' => array('filterRules' => $ruleValues, 'join' => PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_OR) + ); + } else { + // Date based + if ($dynamicRuleType{0} == 'M' || $dynamicRuleType{0} == 'Q') { + // Month or Quarter + sscanf($dynamicRuleType, '%[A-Z]%d', $periodType, $period); + if ($periodType == 'M') { + $ruleValues = array($period); + } else { + --$period; + $periodEnd = (1+$period)*3; + $periodStart = 1+$period*3; + $ruleValues = range($periodStart, $periodEnd); + } + $columnFilterTests[$columnID] = array( + 'method' => 'filterTestInPeriodDateSet', + 'arguments' => $ruleValues + ); + $filterColumn->setAttributes(array()); + } else { + // Date Range + $columnFilterTests[$columnID] = $this->dynamicFilterDateRange($dynamicRuleType, $filterColumn); + break; + } + } + } + break; + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_TOPTENFILTER: + $ruleValues = array(); + $dataRowCount = $rangeEnd[1] - $rangeStart[1]; + foreach ($rules as $rule) { + // We should only ever have one Dynamic Filter Rule anyway + $toptenRuleType = $rule->getGrouping(); + $ruleValue = $rule->getValue(); + $ruleOperator = $rule->getOperator(); + } + if ($ruleOperator === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT) { + $ruleValue = floor($ruleValue * ($dataRowCount / 100)); + } + if ($ruleValue < 1) { + $ruleValue = 1; + } + if ($ruleValue > 500) { + $ruleValue = 500; + } + + $maxVal = $this->calculateTopTenValue($columnID, $rangeStart[1]+1, $rangeEnd[1], $toptenRuleType, $ruleValue); + + $operator = ($toptenRuleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP) + ? PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL + : PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL; + $ruleValues[] = array('operator' => $operator, 'value' => $maxVal); + $columnFilterTests[$columnID] = array( + 'method' => 'filterTestInCustomDataSet', + 'arguments' => array('filterRules' => $ruleValues, 'join' => PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_OR) + ); + $filterColumn->setAttributes(array('maxVal' => $maxVal)); + break; + } + } + +// echo 'Column Filter Test CRITERIA',PHP_EOL; +// var_dump($columnFilterTests); +// + // Execute the column tests for each row in the autoFilter range to determine show/hide, + for ($row = $rangeStart[1]+1; $row <= $rangeEnd[1]; ++$row) { +// echo 'Testing Row = ', $row,PHP_EOL; + $result = true; + foreach ($columnFilterTests as $columnID => $columnFilterTest) { +// echo 'Testing cell ', $columnID.$row,PHP_EOL; + $cellValue = $this->workSheet->getCell($columnID.$row)->getCalculatedValue(); +// echo 'Value is ', $cellValue,PHP_EOL; + // Execute the filter test + $result = $result && + call_user_func_array( + array('PHPExcel_Worksheet_AutoFilter', $columnFilterTest['method']), + array($cellValue, $columnFilterTest['arguments']) + ); +// echo (($result) ? 'VALID' : 'INVALID'),PHP_EOL; + // If filter test has resulted in FALSE, exit the loop straightaway rather than running any more tests + if (!$result) { + break; + } + } + // Set show/hide for the row based on the result of the autoFilter result +// echo (($result) ? 'SHOW' : 'HIDE'),PHP_EOL; + $this->workSheet->getRowDimension($row)->setVisible($result); + } + + return $this; + } + + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + if ($key == 'workSheet') { + // Detach from worksheet + $this->{$key} = null; + } else { + $this->{$key} = clone $value; + } + } elseif ((is_array($value)) && ($key == 'columns')) { + // The columns array of PHPExcel_Worksheet_AutoFilter objects + $this->{$key} = array(); + foreach ($value as $k => $v) { + $this->{$key}[$k] = clone $v; + // attach the new cloned Column to this new cloned Autofilter object + $this->{$key}[$k]->setParent($this); + } + } else { + $this->{$key} = $value; + } + } + } + + /** + * toString method replicates previous behavior by returning the range if object is + * referenced as a property of its parent. + */ + public function __toString() + { + return (string) $this->range; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/Column.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/Column.php new file mode 100644 index 0000000..d64fd81 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/Column.php @@ -0,0 +1,405 @@ +<?php + +/** + * PHPExcel_Worksheet_AutoFilter_Column + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_AutoFilter_Column +{ + const AUTOFILTER_FILTERTYPE_FILTER = 'filters'; + const AUTOFILTER_FILTERTYPE_CUSTOMFILTER = 'customFilters'; + // Supports no more than 2 rules, with an And/Or join criteria + // if more than 1 rule is defined + const AUTOFILTER_FILTERTYPE_DYNAMICFILTER = 'dynamicFilter'; + // Even though the filter rule is constant, the filtered data can vary + // e.g. filtered by date = TODAY + const AUTOFILTER_FILTERTYPE_TOPTENFILTER = 'top10'; + + /** + * Types of autofilter rules + * + * @var string[] + */ + private static $filterTypes = array( + // Currently we're not handling + // colorFilter + // extLst + // iconFilter + self::AUTOFILTER_FILTERTYPE_FILTER, + self::AUTOFILTER_FILTERTYPE_CUSTOMFILTER, + self::AUTOFILTER_FILTERTYPE_DYNAMICFILTER, + self::AUTOFILTER_FILTERTYPE_TOPTENFILTER, + ); + + /* Multiple Rule Connections */ + const AUTOFILTER_COLUMN_JOIN_AND = 'and'; + const AUTOFILTER_COLUMN_JOIN_OR = 'or'; + + /** + * Join options for autofilter rules + * + * @var string[] + */ + private static $ruleJoins = array( + self::AUTOFILTER_COLUMN_JOIN_AND, + self::AUTOFILTER_COLUMN_JOIN_OR, + ); + + /** + * Autofilter + * + * @var PHPExcel_Worksheet_AutoFilter + */ + private $parent; + + + /** + * Autofilter Column Index + * + * @var string + */ + private $columnIndex = ''; + + + /** + * Autofilter Column Filter Type + * + * @var string + */ + private $filterType = self::AUTOFILTER_FILTERTYPE_FILTER; + + + /** + * Autofilter Multiple Rules And/Or + * + * @var string + */ + private $join = self::AUTOFILTER_COLUMN_JOIN_OR; + + + /** + * Autofilter Column Rules + * + * @var array of PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + private $ruleset = array(); + + + /** + * Autofilter Column Dynamic Attributes + * + * @var array of mixed + */ + private $attributes = array(); + + + /** + * Create a new PHPExcel_Worksheet_AutoFilter_Column + * + * @param string $pColumn Column (e.g. A) + * @param PHPExcel_Worksheet_AutoFilter $pParent Autofilter for this column + */ + public function __construct($pColumn, PHPExcel_Worksheet_AutoFilter $pParent = null) + { + $this->columnIndex = $pColumn; + $this->parent = $pParent; + } + + /** + * Get AutoFilter Column Index + * + * @return string + */ + public function getColumnIndex() + { + return $this->columnIndex; + } + + /** + * Set AutoFilter Column Index + * + * @param string $pColumn Column (e.g. A) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setColumnIndex($pColumn) + { + // Uppercase coordinate + $pColumn = strtoupper($pColumn); + if ($this->parent !== null) { + $this->parent->testColumnInRange($pColumn); + } + + $this->columnIndex = $pColumn; + + return $this; + } + + /** + * Get this Column's AutoFilter Parent + * + * @return PHPExcel_Worksheet_AutoFilter + */ + public function getParent() + { + return $this->parent; + } + + /** + * Set this Column's AutoFilter Parent + * + * @param PHPExcel_Worksheet_AutoFilter + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setParent(PHPExcel_Worksheet_AutoFilter $pParent = null) + { + $this->parent = $pParent; + + return $this; + } + + /** + * Get AutoFilter Type + * + * @return string + */ + public function getFilterType() + { + return $this->filterType; + } + + /** + * Set AutoFilter Type + * + * @param string $pFilterType + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setFilterType($pFilterType = self::AUTOFILTER_FILTERTYPE_FILTER) + { + if (!in_array($pFilterType, self::$filterTypes)) { + throw new PHPExcel_Exception('Invalid filter type for column AutoFilter.'); + } + + $this->filterType = $pFilterType; + + return $this; + } + + /** + * Get AutoFilter Multiple Rules And/Or Join + * + * @return string + */ + public function getJoin() + { + return $this->join; + } + + /** + * Set AutoFilter Multiple Rules And/Or + * + * @param string $pJoin And/Or + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setJoin($pJoin = self::AUTOFILTER_COLUMN_JOIN_OR) + { + // Lowercase And/Or + $pJoin = strtolower($pJoin); + if (!in_array($pJoin, self::$ruleJoins)) { + throw new PHPExcel_Exception('Invalid rule connection for column AutoFilter.'); + } + + $this->join = $pJoin; + + return $this; + } + + /** + * Set AutoFilter Attributes + * + * @param string[] $pAttributes + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setAttributes($pAttributes = array()) + { + $this->attributes = $pAttributes; + + return $this; + } + + /** + * Set An AutoFilter Attribute + * + * @param string $pName Attribute Name + * @param string $pValue Attribute Value + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setAttribute($pName, $pValue) + { + $this->attributes[$pName] = $pValue; + + return $this; + } + + /** + * Get AutoFilter Column Attributes + * + * @return string + */ + public function getAttributes() + { + return $this->attributes; + } + + /** + * Get specific AutoFilter Column Attribute + * + * @param string $pName Attribute Name + * @return string + */ + public function getAttribute($pName) + { + if (isset($this->attributes[$pName])) { + return $this->attributes[$pName]; + } + return null; + } + + /** + * Get all AutoFilter Column Rules + * + * @throws PHPExcel_Exception + * @return array of PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function getRules() + { + return $this->ruleset; + } + + /** + * Get a specified AutoFilter Column Rule + * + * @param integer $pIndex Rule index in the ruleset array + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function getRule($pIndex) + { + if (!isset($this->ruleset[$pIndex])) { + $this->ruleset[$pIndex] = new PHPExcel_Worksheet_AutoFilter_Column_Rule($this); + } + return $this->ruleset[$pIndex]; + } + + /** + * Create a new AutoFilter Column Rule in the ruleset + * + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function createRule() + { + $this->ruleset[] = new PHPExcel_Worksheet_AutoFilter_Column_Rule($this); + + return end($this->ruleset); + } + + /** + * Add a new AutoFilter Column Rule to the ruleset + * + * @param PHPExcel_Worksheet_AutoFilter_Column_Rule $pRule + * @param boolean $returnRule Flag indicating whether the rule object or the column object should be returned + * @return PHPExcel_Worksheet_AutoFilter_Column|PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function addRule(PHPExcel_Worksheet_AutoFilter_Column_Rule $pRule, $returnRule = true) + { + $pRule->setParent($this); + $this->ruleset[] = $pRule; + + return ($returnRule) ? $pRule : $this; + } + + /** + * Delete a specified AutoFilter Column Rule + * If the number of rules is reduced to 1, then we reset And/Or logic to Or + * + * @param integer $pIndex Rule index in the ruleset array + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function deleteRule($pIndex) + { + if (isset($this->ruleset[$pIndex])) { + unset($this->ruleset[$pIndex]); + // If we've just deleted down to a single rule, then reset And/Or joining to Or + if (count($this->ruleset) <= 1) { + $this->setJoin(self::AUTOFILTER_COLUMN_JOIN_OR); + } + } + + return $this; + } + + /** + * Delete all AutoFilter Column Rules + * + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function clearRules() + { + $this->ruleset = array(); + $this->setJoin(self::AUTOFILTER_COLUMN_JOIN_OR); + + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + if ($key == 'parent') { + // Detach from autofilter parent + $this->$key = null; + } else { + $this->$key = clone $value; + } + } elseif ((is_array($value)) && ($key == 'ruleset')) { + // The columns array of PHPExcel_Worksheet_AutoFilter objects + $this->$key = array(); + foreach ($value as $k => $v) { + $this->$key[$k] = clone $v; + // attach the new cloned Rule to this new cloned Autofilter Cloned object + $this->$key[$k]->setParent($this); + } + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/Column/Rule.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/Column/Rule.php new file mode 100644 index 0000000..39ad18b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/Column/Rule.php @@ -0,0 +1,468 @@ +<?php + +/** + * PHPExcel_Worksheet_AutoFilter_Column_Rule + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_AutoFilter_Column_Rule +{ + const AUTOFILTER_RULETYPE_FILTER = 'filter'; + const AUTOFILTER_RULETYPE_DATEGROUP = 'dateGroupItem'; + const AUTOFILTER_RULETYPE_CUSTOMFILTER = 'customFilter'; + const AUTOFILTER_RULETYPE_DYNAMICFILTER = 'dynamicFilter'; + const AUTOFILTER_RULETYPE_TOPTENFILTER = 'top10Filter'; + + private static $ruleTypes = array( + // Currently we're not handling + // colorFilter + // extLst + // iconFilter + self::AUTOFILTER_RULETYPE_FILTER, + self::AUTOFILTER_RULETYPE_DATEGROUP, + self::AUTOFILTER_RULETYPE_CUSTOMFILTER, + self::AUTOFILTER_RULETYPE_DYNAMICFILTER, + self::AUTOFILTER_RULETYPE_TOPTENFILTER, + ); + + const AUTOFILTER_RULETYPE_DATEGROUP_YEAR = 'year'; + const AUTOFILTER_RULETYPE_DATEGROUP_MONTH = 'month'; + const AUTOFILTER_RULETYPE_DATEGROUP_DAY = 'day'; + const AUTOFILTER_RULETYPE_DATEGROUP_HOUR = 'hour'; + const AUTOFILTER_RULETYPE_DATEGROUP_MINUTE = 'minute'; + const AUTOFILTER_RULETYPE_DATEGROUP_SECOND = 'second'; + + private static $dateTimeGroups = array( + self::AUTOFILTER_RULETYPE_DATEGROUP_YEAR, + self::AUTOFILTER_RULETYPE_DATEGROUP_MONTH, + self::AUTOFILTER_RULETYPE_DATEGROUP_DAY, + self::AUTOFILTER_RULETYPE_DATEGROUP_HOUR, + self::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE, + self::AUTOFILTER_RULETYPE_DATEGROUP_SECOND, + ); + + const AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY = 'yesterday'; + const AUTOFILTER_RULETYPE_DYNAMIC_TODAY = 'today'; + const AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW = 'tomorrow'; + const AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE = 'yearToDate'; + const AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR = 'thisYear'; + const AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER = 'thisQuarter'; + const AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH = 'thisMonth'; + const AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK = 'thisWeek'; + const AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR = 'lastYear'; + const AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER = 'lastQuarter'; + const AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH = 'lastMonth'; + const AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK = 'lastWeek'; + const AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR = 'nextYear'; + const AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER = 'nextQuarter'; + const AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH = 'nextMonth'; + const AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK = 'nextWeek'; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1 = 'M1'; + const AUTOFILTER_RULETYPE_DYNAMIC_JANUARY = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2 = 'M2'; + const AUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3 = 'M3'; + const AUTOFILTER_RULETYPE_DYNAMIC_MARCH = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4 = 'M4'; + const AUTOFILTER_RULETYPE_DYNAMIC_APRIL = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5 = 'M5'; + const AUTOFILTER_RULETYPE_DYNAMIC_MAY = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6 = 'M6'; + const AUTOFILTER_RULETYPE_DYNAMIC_JUNE = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7 = 'M7'; + const AUTOFILTER_RULETYPE_DYNAMIC_JULY = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8 = 'M8'; + const AUTOFILTER_RULETYPE_DYNAMIC_AUGUST = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9 = 'M9'; + const AUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10 = 'M10'; + const AUTOFILTER_RULETYPE_DYNAMIC_OCTOBER = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11 = 'M11'; + const AUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12 = 'M12'; + const AUTOFILTER_RULETYPE_DYNAMIC_DECEMBER = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12; + const AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1 = 'Q1'; + const AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2 = 'Q2'; + const AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3 = 'Q3'; + const AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4 = 'Q4'; + const AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE = 'aboveAverage'; + const AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE = 'belowAverage'; + + private static $dynamicTypes = array( + self::AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY, + self::AUTOFILTER_RULETYPE_DYNAMIC_TODAY, + self::AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW, + self::AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE, + self::AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR, + self::AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER, + self::AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH, + self::AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK, + self::AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR, + self::AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER, + self::AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH, + self::AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK, + self::AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR, + self::AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER, + self::AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH, + self::AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12, + self::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1, + self::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2, + self::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3, + self::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4, + self::AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE, + self::AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE, + ); + + /* + * The only valid filter rule operators for filter and customFilter types are: + * <xsd:enumeration value="equal"/> + * <xsd:enumeration value="lessThan"/> + * <xsd:enumeration value="lessThanOrEqual"/> + * <xsd:enumeration value="notEqual"/> + * <xsd:enumeration value="greaterThanOrEqual"/> + * <xsd:enumeration value="greaterThan"/> + */ + const AUTOFILTER_COLUMN_RULE_EQUAL = 'equal'; + const AUTOFILTER_COLUMN_RULE_NOTEQUAL = 'notEqual'; + const AUTOFILTER_COLUMN_RULE_GREATERTHAN = 'greaterThan'; + const AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL = 'greaterThanOrEqual'; + const AUTOFILTER_COLUMN_RULE_LESSTHAN = 'lessThan'; + const AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL = 'lessThanOrEqual'; + + private static $operators = array( + self::AUTOFILTER_COLUMN_RULE_EQUAL, + self::AUTOFILTER_COLUMN_RULE_NOTEQUAL, + self::AUTOFILTER_COLUMN_RULE_GREATERTHAN, + self::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL, + self::AUTOFILTER_COLUMN_RULE_LESSTHAN, + self::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL, + ); + + const AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE = 'byValue'; + const AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT = 'byPercent'; + + private static $topTenValue = array( + self::AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE, + self::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT, + ); + + const AUTOFILTER_COLUMN_RULE_TOPTEN_TOP = 'top'; + const AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM = 'bottom'; + + private static $topTenType = array( + self::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP, + self::AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM, + ); + + + /* Rule Operators (Numeric, Boolean etc) */ +// const AUTOFILTER_COLUMN_RULE_BETWEEN = 'between'; // greaterThanOrEqual 1 && lessThanOrEqual 2 + /* Rule Operators (Numeric Special) which are translated to standard numeric operators with calculated values */ +// const AUTOFILTER_COLUMN_RULE_TOPTEN = 'topTen'; // greaterThan calculated value +// const AUTOFILTER_COLUMN_RULE_TOPTENPERCENT = 'topTenPercent'; // greaterThan calculated value +// const AUTOFILTER_COLUMN_RULE_ABOVEAVERAGE = 'aboveAverage'; // Value is calculated as the average +// const AUTOFILTER_COLUMN_RULE_BELOWAVERAGE = 'belowAverage'; // Value is calculated as the average + /* Rule Operators (String) which are set as wild-carded values */ +// const AUTOFILTER_COLUMN_RULE_BEGINSWITH = 'beginsWith'; // A* +// const AUTOFILTER_COLUMN_RULE_ENDSWITH = 'endsWith'; // *Z +// const AUTOFILTER_COLUMN_RULE_CONTAINS = 'contains'; // *B* +// const AUTOFILTER_COLUMN_RULE_DOESNTCONTAIN = 'notEqual'; // notEqual *B* + /* Rule Operators (Date Special) which are translated to standard numeric operators with calculated values */ +// const AUTOFILTER_COLUMN_RULE_BEFORE = 'lessThan'; +// const AUTOFILTER_COLUMN_RULE_AFTER = 'greaterThan'; +// const AUTOFILTER_COLUMN_RULE_YESTERDAY = 'yesterday'; +// const AUTOFILTER_COLUMN_RULE_TODAY = 'today'; +// const AUTOFILTER_COLUMN_RULE_TOMORROW = 'tomorrow'; +// const AUTOFILTER_COLUMN_RULE_LASTWEEK = 'lastWeek'; +// const AUTOFILTER_COLUMN_RULE_THISWEEK = 'thisWeek'; +// const AUTOFILTER_COLUMN_RULE_NEXTWEEK = 'nextWeek'; +// const AUTOFILTER_COLUMN_RULE_LASTMONTH = 'lastMonth'; +// const AUTOFILTER_COLUMN_RULE_THISMONTH = 'thisMonth'; +// const AUTOFILTER_COLUMN_RULE_NEXTMONTH = 'nextMonth'; +// const AUTOFILTER_COLUMN_RULE_LASTQUARTER = 'lastQuarter'; +// const AUTOFILTER_COLUMN_RULE_THISQUARTER = 'thisQuarter'; +// const AUTOFILTER_COLUMN_RULE_NEXTQUARTER = 'nextQuarter'; +// const AUTOFILTER_COLUMN_RULE_LASTYEAR = 'lastYear'; +// const AUTOFILTER_COLUMN_RULE_THISYEAR = 'thisYear'; +// const AUTOFILTER_COLUMN_RULE_NEXTYEAR = 'nextYear'; +// const AUTOFILTER_COLUMN_RULE_YEARTODATE = 'yearToDate'; // <dynamicFilter val="40909" type="yearToDate" maxVal="41113"/> +// const AUTOFILTER_COLUMN_RULE_ALLDATESINMONTH = 'allDatesInMonth'; // <dynamicFilter type="M2"/> for Month/February +// const AUTOFILTER_COLUMN_RULE_ALLDATESINQUARTER = 'allDatesInQuarter'; // <dynamicFilter type="Q2"/> for Quarter 2 + + /** + * Autofilter Column + * + * @var PHPExcel_Worksheet_AutoFilter_Column + */ + private $parent = null; + + + /** + * Autofilter Rule Type + * + * @var string + */ + private $ruleType = self::AUTOFILTER_RULETYPE_FILTER; + + + /** + * Autofilter Rule Value + * + * @var string + */ + private $value = ''; + + /** + * Autofilter Rule Operator + * + * @var string + */ + private $operator = self::AUTOFILTER_COLUMN_RULE_EQUAL; + + /** + * DateTimeGrouping Group Value + * + * @var string + */ + private $grouping = ''; + + + /** + * Create a new PHPExcel_Worksheet_AutoFilter_Column_Rule + * + * @param PHPExcel_Worksheet_AutoFilter_Column $pParent + */ + public function __construct(PHPExcel_Worksheet_AutoFilter_Column $pParent = null) + { + $this->parent = $pParent; + } + + /** + * Get AutoFilter Rule Type + * + * @return string + */ + public function getRuleType() + { + return $this->ruleType; + } + + /** + * Set AutoFilter Rule Type + * + * @param string $pRuleType + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setRuleType($pRuleType = self::AUTOFILTER_RULETYPE_FILTER) + { + if (!in_array($pRuleType, self::$ruleTypes)) { + throw new PHPExcel_Exception('Invalid rule type for column AutoFilter Rule.'); + } + + $this->ruleType = $pRuleType; + + return $this; + } + + /** + * Get AutoFilter Rule Value + * + * @return string + */ + public function getValue() + { + return $this->value; + } + + /** + * Set AutoFilter Rule Value + * + * @param string|string[] $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function setValue($pValue = '') + { + if (is_array($pValue)) { + $grouping = -1; + foreach ($pValue as $key => $value) { + // Validate array entries + if (!in_array($key, self::$dateTimeGroups)) { + // Remove any invalid entries from the value array + unset($pValue[$key]); + } else { + // Work out what the dateTime grouping will be + $grouping = max($grouping, array_search($key, self::$dateTimeGroups)); + } + } + if (count($pValue) == 0) { + throw new PHPExcel_Exception('Invalid rule value for column AutoFilter Rule.'); + } + // Set the dateTime grouping that we've anticipated + $this->setGrouping(self::$dateTimeGroups[$grouping]); + } + $this->value = $pValue; + + return $this; + } + + /** + * Get AutoFilter Rule Operator + * + * @return string + */ + public function getOperator() + { + return $this->operator; + } + + /** + * Set AutoFilter Rule Operator + * + * @param string $pOperator + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function setOperator($pOperator = self::AUTOFILTER_COLUMN_RULE_EQUAL) + { + if (empty($pOperator)) { + $pOperator = self::AUTOFILTER_COLUMN_RULE_EQUAL; + } + if ((!in_array($pOperator, self::$operators)) && + (!in_array($pOperator, self::$topTenValue))) { + throw new PHPExcel_Exception('Invalid operator for column AutoFilter Rule.'); + } + $this->operator = $pOperator; + + return $this; + } + + /** + * Get AutoFilter Rule Grouping + * + * @return string + */ + public function getGrouping() + { + return $this->grouping; + } + + /** + * Set AutoFilter Rule Grouping + * + * @param string $pGrouping + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function setGrouping($pGrouping = null) + { + if (($pGrouping !== null) && + (!in_array($pGrouping, self::$dateTimeGroups)) && + (!in_array($pGrouping, self::$dynamicTypes)) && + (!in_array($pGrouping, self::$topTenType))) { + throw new PHPExcel_Exception('Invalid rule type for column AutoFilter Rule.'); + } + $this->grouping = $pGrouping; + + return $this; + } + + /** + * Set AutoFilter Rule + * + * @param string $pOperator + * @param string|string[] $pValue + * @param string $pGrouping + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function setRule($pOperator = self::AUTOFILTER_COLUMN_RULE_EQUAL, $pValue = '', $pGrouping = null) + { + $this->setOperator($pOperator); + $this->setValue($pValue); + // Only set grouping if it's been passed in as a user-supplied argument, + // otherwise we're calculating it when we setValue() and don't want to overwrite that + // If the user supplies an argumnet for grouping, then on their own head be it + if ($pGrouping !== null) { + $this->setGrouping($pGrouping); + } + + return $this; + } + + /** + * Get this Rule's AutoFilter Column Parent + * + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function getParent() + { + return $this->parent; + } + + /** + * Set this Rule's AutoFilter Column Parent + * + * @param PHPExcel_Worksheet_AutoFilter_Column + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function setParent(PHPExcel_Worksheet_AutoFilter_Column $pParent = null) + { + $this->parent = $pParent; + + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + if ($key == 'parent') { + // Detach from autofilter column parent + $this->$key = null; + } else { + $this->$key = clone $value; + } + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/Column/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/Column/_notes/dwsync.xml new file mode 100644 index 0000000..f14ae52 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/Column/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Rule.php" server="62.244.88.21/deciday/" local="131919461922916358" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/_notes/dwsync.xml new file mode 100644 index 0000000..9d85027 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/AutoFilter/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Column.php" server="62.244.88.21/deciday/" local="131919461922738915" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/BaseDrawing.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/BaseDrawing.php new file mode 100644 index 0000000..9ad15c7 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/BaseDrawing.php @@ -0,0 +1,507 @@ +<?php + +/** + * PHPExcel_Worksheet_BaseDrawing + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_BaseDrawing implements PHPExcel_IComparable +{ + /** + * Image counter + * + * @var int + */ + private static $imageCounter = 0; + + /** + * Image index + * + * @var int + */ + private $imageIndex = 0; + + /** + * Name + * + * @var string + */ + protected $name; + + /** + * Description + * + * @var string + */ + protected $description; + + /** + * Worksheet + * + * @var PHPExcel_Worksheet + */ + protected $worksheet; + + /** + * Coordinates + * + * @var string + */ + protected $coordinates; + + /** + * Offset X + * + * @var int + */ + protected $offsetX; + + /** + * Offset Y + * + * @var int + */ + protected $offsetY; + + /** + * Width + * + * @var int + */ + protected $width; + + /** + * Height + * + * @var int + */ + protected $height; + + /** + * Proportional resize + * + * @var boolean + */ + protected $resizeProportional; + + /** + * Rotation + * + * @var int + */ + protected $rotation; + + /** + * Shadow + * + * @var PHPExcel_Worksheet_Drawing_Shadow + */ + protected $shadow; + + /** + * Create a new PHPExcel_Worksheet_BaseDrawing + */ + public function __construct() + { + // Initialise values + $this->name = ''; + $this->description = ''; + $this->worksheet = null; + $this->coordinates = 'A1'; + $this->offsetX = 0; + $this->offsetY = 0; + $this->width = 0; + $this->height = 0; + $this->resizeProportional = true; + $this->rotation = 0; + $this->shadow = new PHPExcel_Worksheet_Drawing_Shadow(); + + // Set image index + self::$imageCounter++; + $this->imageIndex = self::$imageCounter; + } + + /** + * Get image index + * + * @return int + */ + public function getImageIndex() + { + return $this->imageIndex; + } + + /** + * Get Name + * + * @return string + */ + public function getName() + { + return $this->name; + } + + /** + * Set Name + * + * @param string $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setName($pValue = '') + { + $this->name = $pValue; + return $this; + } + + /** + * Get Description + * + * @return string + */ + public function getDescription() + { + return $this->description; + } + + /** + * Set Description + * + * @param string $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setDescription($pValue = '') + { + $this->description = $pValue; + return $this; + } + + /** + * Get Worksheet + * + * @return PHPExcel_Worksheet + */ + public function getWorksheet() + { + return $this->worksheet; + } + + /** + * Set Worksheet + * + * @param PHPExcel_Worksheet $pValue + * @param bool $pOverrideOld If a Worksheet has already been assigned, overwrite it and remove image from old Worksheet? + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setWorksheet(PHPExcel_Worksheet $pValue = null, $pOverrideOld = false) + { + if (is_null($this->worksheet)) { + // Add drawing to PHPExcel_Worksheet + $this->worksheet = $pValue; + $this->worksheet->getCell($this->coordinates); + $this->worksheet->getDrawingCollection()->append($this); + } else { + if ($pOverrideOld) { + // Remove drawing from old PHPExcel_Worksheet + $iterator = $this->worksheet->getDrawingCollection()->getIterator(); + + while ($iterator->valid()) { + if ($iterator->current()->getHashCode() == $this->getHashCode()) { + $this->worksheet->getDrawingCollection()->offsetUnset($iterator->key()); + $this->worksheet = null; + break; + } + } + + // Set new PHPExcel_Worksheet + $this->setWorksheet($pValue); + } else { + throw new PHPExcel_Exception("A PHPExcel_Worksheet has already been assigned. Drawings can only exist on one PHPExcel_Worksheet."); + } + } + return $this; + } + + /** + * Get Coordinates + * + * @return string + */ + public function getCoordinates() + { + return $this->coordinates; + } + + /** + * Set Coordinates + * + * @param string $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setCoordinates($pValue = 'A1') + { + $this->coordinates = $pValue; + return $this; + } + + /** + * Get OffsetX + * + * @return int + */ + public function getOffsetX() + { + return $this->offsetX; + } + + /** + * Set OffsetX + * + * @param int $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setOffsetX($pValue = 0) + { + $this->offsetX = $pValue; + return $this; + } + + /** + * Get OffsetY + * + * @return int + */ + public function getOffsetY() + { + return $this->offsetY; + } + + /** + * Set OffsetY + * + * @param int $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setOffsetY($pValue = 0) + { + $this->offsetY = $pValue; + return $this; + } + + /** + * Get Width + * + * @return int + */ + public function getWidth() + { + return $this->width; + } + + /** + * Set Width + * + * @param int $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setWidth($pValue = 0) + { + // Resize proportional? + if ($this->resizeProportional && $pValue != 0) { + $ratio = $this->height / ($this->width != 0 ? $this->width : 1); + $this->height = round($ratio * $pValue); + } + + // Set width + $this->width = $pValue; + + return $this; + } + + /** + * Get Height + * + * @return int + */ + public function getHeight() + { + return $this->height; + } + + /** + * Set Height + * + * @param int $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setHeight($pValue = 0) + { + // Resize proportional? + if ($this->resizeProportional && $pValue != 0) { + $ratio = $this->width / ($this->height != 0 ? $this->height : 1); + $this->width = round($ratio * $pValue); + } + + // Set height + $this->height = $pValue; + + return $this; + } + + /** + * Set width and height with proportional resize + * Example: + * <code> + * $objDrawing->setResizeProportional(true); + * $objDrawing->setWidthAndHeight(160,120); + * </code> + * + * @author Vincent@luo MSN:kele_100@hotmail.com + * @param int $width + * @param int $height + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setWidthAndHeight($width = 0, $height = 0) + { + $xratio = $width / ($this->width != 0 ? $this->width : 1); + $yratio = $height / ($this->height != 0 ? $this->height : 1); + if ($this->resizeProportional && !($width == 0 || $height == 0)) { + if (($xratio * $this->height) < $height) { + $this->height = ceil($xratio * $this->height); + $this->width = $width; + } else { + $this->width = ceil($yratio * $this->width); + $this->height = $height; + } + } else { + $this->width = $width; + $this->height = $height; + } + + return $this; + } + + /** + * Get ResizeProportional + * + * @return boolean + */ + public function getResizeProportional() + { + return $this->resizeProportional; + } + + /** + * Set ResizeProportional + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setResizeProportional($pValue = true) + { + $this->resizeProportional = $pValue; + return $this; + } + + /** + * Get Rotation + * + * @return int + */ + public function getRotation() + { + return $this->rotation; + } + + /** + * Set Rotation + * + * @param int $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setRotation($pValue = 0) + { + $this->rotation = $pValue; + return $this; + } + + /** + * Get Shadow + * + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function getShadow() + { + return $this->shadow; + } + + /** + * Set Shadow + * + * @param PHPExcel_Worksheet_Drawing_Shadow $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setShadow(PHPExcel_Worksheet_Drawing_Shadow $pValue = null) + { + $this->shadow = $pValue; + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + return md5( + $this->name . + $this->description . + $this->worksheet->getHashCode() . + $this->coordinates . + $this->offsetX . + $this->offsetY . + $this->width . + $this->height . + $this->rotation . + $this->shadow->getHashCode() . + __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/CellIterator.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/CellIterator.php new file mode 100644 index 0000000..151c17f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/CellIterator.php @@ -0,0 +1,88 @@ +<?php + +/** + * PHPExcel_Worksheet_CellIterator + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +abstract class PHPExcel_Worksheet_CellIterator +{ + /** + * PHPExcel_Worksheet to iterate + * + * @var PHPExcel_Worksheet + */ + protected $subject; + + /** + * Current iterator position + * + * @var mixed + */ + protected $position = null; + + /** + * Iterate only existing cells + * + * @var boolean + */ + protected $onlyExistingCells = false; + + /** + * Destructor + */ + public function __destruct() + { + unset($this->subject); + } + + /** + * Get loop only existing cells + * + * @return boolean + */ + public function getIterateOnlyExistingCells() + { + return $this->onlyExistingCells; + } + + /** + * Validate start/end values for "IterateOnlyExistingCells" mode, and adjust if necessary + * + * @throws PHPExcel_Exception + */ + abstract protected function adjustForExistingOnlyRange(); + + /** + * Set the iterator to loop only existing cells + * + * @param boolean $value + * @throws PHPExcel_Exception + */ + public function setIterateOnlyExistingCells($value = true) + { + $this->onlyExistingCells = (boolean) $value; + + $this->adjustForExistingOnlyRange(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Column.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Column.php new file mode 100644 index 0000000..6d3f36d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Column.php @@ -0,0 +1,86 @@ +<?php + +/** + * PHPExcel_Worksheet_Column + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_Column +{ + /** + * PHPExcel_Worksheet + * + * @var PHPExcel_Worksheet + */ + private $parent; + + /** + * Column index + * + * @var string + */ + private $columnIndex; + + /** + * Create a new column + * + * @param PHPExcel_Worksheet $parent + * @param string $columnIndex + */ + public function __construct(PHPExcel_Worksheet $parent = null, $columnIndex = 'A') + { + // Set parent and column index + $this->parent = $parent; + $this->columnIndex = $columnIndex; + } + + /** + * Destructor + */ + public function __destruct() + { + unset($this->parent); + } + + /** + * Get column index + * + * @return string + */ + public function getColumnIndex() + { + return $this->columnIndex; + } + + /** + * Get cell iterator + * + * @param integer $startRow The row number at which to start iterating + * @param integer $endRow Optionally, the row number at which to stop iterating + * @return PHPExcel_Worksheet_CellIterator + */ + public function getCellIterator($startRow = 1, $endRow = null) + { + return new PHPExcel_Worksheet_ColumnCellIterator($this->parent, $this->columnIndex, $startRow, $endRow); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/ColumnCellIterator.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/ColumnCellIterator.php new file mode 100644 index 0000000..7b8c219 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/ColumnCellIterator.php @@ -0,0 +1,216 @@ +<?php + +/** + * PHPExcel_Worksheet_ColumnCellIterator + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_ColumnCellIterator extends PHPExcel_Worksheet_CellIterator implements Iterator +{ + /** + * Column index + * + * @var string + */ + protected $columnIndex; + + /** + * Start position + * + * @var int + */ + protected $startRow = 1; + + /** + * End position + * + * @var int + */ + protected $endRow = 1; + + /** + * Create a new row iterator + * + * @param PHPExcel_Worksheet $subject The worksheet to iterate over + * @param string $columnIndex The column that we want to iterate + * @param integer $startRow The row number at which to start iterating + * @param integer $endRow Optionally, the row number at which to stop iterating + */ + public function __construct(PHPExcel_Worksheet $subject = null, $columnIndex = 'A', $startRow = 1, $endRow = null) + { + // Set subject + $this->subject = $subject; + $this->columnIndex = PHPExcel_Cell::columnIndexFromString($columnIndex) - 1; + $this->resetEnd($endRow); + $this->resetStart($startRow); + } + + /** + * Destructor + */ + public function __destruct() + { + unset($this->subject); + } + + /** + * (Re)Set the start row and the current row pointer + * + * @param integer $startRow The row number at which to start iterating + * @return PHPExcel_Worksheet_ColumnCellIterator + * @throws PHPExcel_Exception + */ + public function resetStart($startRow = 1) + { + $this->startRow = $startRow; + $this->adjustForExistingOnlyRange(); + $this->seek($startRow); + + return $this; + } + + /** + * (Re)Set the end row + * + * @param integer $endRow The row number at which to stop iterating + * @return PHPExcel_Worksheet_ColumnCellIterator + * @throws PHPExcel_Exception + */ + public function resetEnd($endRow = null) + { + $this->endRow = ($endRow) ? $endRow : $this->subject->getHighestRow(); + $this->adjustForExistingOnlyRange(); + + return $this; + } + + /** + * Set the row pointer to the selected row + * + * @param integer $row The row number to set the current pointer at + * @return PHPExcel_Worksheet_ColumnCellIterator + * @throws PHPExcel_Exception + */ + public function seek($row = 1) + { + if (($row < $this->startRow) || ($row > $this->endRow)) { + throw new PHPExcel_Exception("Row $row is out of range ({$this->startRow} - {$this->endRow})"); + } elseif ($this->onlyExistingCells && !($this->subject->cellExistsByColumnAndRow($this->columnIndex, $row))) { + throw new PHPExcel_Exception('In "IterateOnlyExistingCells" mode and Cell does not exist'); + } + $this->position = $row; + + return $this; + } + + /** + * Rewind the iterator to the starting row + */ + public function rewind() + { + $this->position = $this->startRow; + } + + /** + * Return the current cell in this worksheet column + * + * @return PHPExcel_Worksheet_Row + */ + public function current() + { + return $this->subject->getCellByColumnAndRow($this->columnIndex, $this->position); + } + + /** + * Return the current iterator key + * + * @return int + */ + public function key() + { + return $this->position; + } + + /** + * Set the iterator to its next value + */ + public function next() + { + do { + ++$this->position; + } while (($this->onlyExistingCells) && + (!$this->subject->cellExistsByColumnAndRow($this->columnIndex, $this->position)) && + ($this->position <= $this->endRow)); + } + + /** + * Set the iterator to its previous value + */ + public function prev() + { + if ($this->position <= $this->startRow) { + throw new PHPExcel_Exception("Row is already at the beginning of range ({$this->startRow} - {$this->endRow})"); + } + + do { + --$this->position; + } while (($this->onlyExistingCells) && + (!$this->subject->cellExistsByColumnAndRow($this->columnIndex, $this->position)) && + ($this->position >= $this->startRow)); + } + + /** + * Indicate if more rows exist in the worksheet range of rows that we're iterating + * + * @return boolean + */ + public function valid() + { + return $this->position <= $this->endRow; + } + + /** + * Validate start/end values for "IterateOnlyExistingCells" mode, and adjust if necessary + * + * @throws PHPExcel_Exception + */ + protected function adjustForExistingOnlyRange() + { + if ($this->onlyExistingCells) { + while ((!$this->subject->cellExistsByColumnAndRow($this->columnIndex, $this->startRow)) && + ($this->startRow <= $this->endRow)) { + ++$this->startRow; + } + if ($this->startRow > $this->endRow) { + throw new PHPExcel_Exception('No cells exist within the specified range'); + } + while ((!$this->subject->cellExistsByColumnAndRow($this->columnIndex, $this->endRow)) && + ($this->endRow >= $this->startRow)) { + --$this->endRow; + } + if ($this->endRow < $this->startRow) { + throw new PHPExcel_Exception('No cells exist within the specified range'); + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/ColumnDimension.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/ColumnDimension.php new file mode 100644 index 0000000..405b825 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/ColumnDimension.php @@ -0,0 +1,132 @@ +<?php + +/** + * PHPExcel_Worksheet_ColumnDimension + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_ColumnDimension extends PHPExcel_Worksheet_Dimension +{ + /** + * Column index + * + * @var int + */ + private $columnIndex; + + /** + * Column width + * + * When this is set to a negative value, the column width should be ignored by IWriter + * + * @var double + */ + private $width = -1; + + /** + * Auto size? + * + * @var bool + */ + private $autoSize = false; + + /** + * Create a new PHPExcel_Worksheet_ColumnDimension + * + * @param string $pIndex Character column index + */ + public function __construct($pIndex = 'A') + { + // Initialise values + $this->columnIndex = $pIndex; + + // set dimension as unformatted by default + parent::__construct(0); + } + + /** + * Get ColumnIndex + * + * @return string + */ + public function getColumnIndex() + { + return $this->columnIndex; + } + + /** + * Set ColumnIndex + * + * @param string $pValue + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function setColumnIndex($pValue) + { + $this->columnIndex = $pValue; + return $this; + } + + /** + * Get Width + * + * @return double + */ + public function getWidth() + { + return $this->width; + } + + /** + * Set Width + * + * @param double $pValue + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function setWidth($pValue = -1) + { + $this->width = $pValue; + return $this; + } + + /** + * Get Auto Size + * + * @return bool + */ + public function getAutoSize() + { + return $this->autoSize; + } + + /** + * Set Auto Size + * + * @param bool $pValue + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function setAutoSize($pValue = false) + { + $this->autoSize = $pValue; + return $this; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/ColumnIterator.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/ColumnIterator.php new file mode 100644 index 0000000..0db3e53 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/ColumnIterator.php @@ -0,0 +1,201 @@ +<?php + +/** + * PHPExcel_Worksheet_ColumnIterator + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_ColumnIterator implements Iterator +{ + /** + * PHPExcel_Worksheet to iterate + * + * @var PHPExcel_Worksheet + */ + private $subject; + + /** + * Current iterator position + * + * @var int + */ + private $position = 0; + + /** + * Start position + * + * @var int + */ + private $startColumn = 0; + + + /** + * End position + * + * @var int + */ + private $endColumn = 0; + + + /** + * Create a new column iterator + * + * @param PHPExcel_Worksheet $subject The worksheet to iterate over + * @param string $startColumn The column address at which to start iterating + * @param string $endColumn Optionally, the column address at which to stop iterating + */ + public function __construct(PHPExcel_Worksheet $subject = null, $startColumn = 'A', $endColumn = null) + { + // Set subject + $this->subject = $subject; + $this->resetEnd($endColumn); + $this->resetStart($startColumn); + } + + /** + * Destructor + */ + public function __destruct() + { + unset($this->subject); + } + + /** + * (Re)Set the start column and the current column pointer + * + * @param integer $startColumn The column address at which to start iterating + * @return PHPExcel_Worksheet_ColumnIterator + * @throws PHPExcel_Exception + */ + public function resetStart($startColumn = 'A') + { + $startColumnIndex = PHPExcel_Cell::columnIndexFromString($startColumn) - 1; + if ($startColumnIndex > PHPExcel_Cell::columnIndexFromString($this->subject->getHighestColumn()) - 1) { + throw new PHPExcel_Exception("Start column ({$startColumn}) is beyond highest column ({$this->subject->getHighestColumn()})"); + } + + $this->startColumn = $startColumnIndex; + if ($this->endColumn < $this->startColumn) { + $this->endColumn = $this->startColumn; + } + $this->seek($startColumn); + + return $this; + } + + /** + * (Re)Set the end column + * + * @param string $endColumn The column address at which to stop iterating + * @return PHPExcel_Worksheet_ColumnIterator + */ + public function resetEnd($endColumn = null) + { + $endColumn = ($endColumn) ? $endColumn : $this->subject->getHighestColumn(); + $this->endColumn = PHPExcel_Cell::columnIndexFromString($endColumn) - 1; + + return $this; + } + + /** + * Set the column pointer to the selected column + * + * @param string $column The column address to set the current pointer at + * @return PHPExcel_Worksheet_ColumnIterator + * @throws PHPExcel_Exception + */ + public function seek($column = 'A') + { + $column = PHPExcel_Cell::columnIndexFromString($column) - 1; + if (($column < $this->startColumn) || ($column > $this->endColumn)) { + throw new PHPExcel_Exception("Column $column is out of range ({$this->startColumn} - {$this->endColumn})"); + } + $this->position = $column; + + return $this; + } + + /** + * Rewind the iterator to the starting column + */ + public function rewind() + { + $this->position = $this->startColumn; + } + + /** + * Return the current column in this worksheet + * + * @return PHPExcel_Worksheet_Column + */ + public function current() + { + return new PHPExcel_Worksheet_Column($this->subject, PHPExcel_Cell::stringFromColumnIndex($this->position)); + } + + /** + * Return the current iterator key + * + * @return string + */ + public function key() + { + return PHPExcel_Cell::stringFromColumnIndex($this->position); + } + + /** + * Set the iterator to its next value + */ + public function next() + { + ++$this->position; + } + + /** + * Set the iterator to its previous value + * + * @throws PHPExcel_Exception + */ + public function prev() + { + if ($this->position <= $this->startColumn) { + throw new PHPExcel_Exception( + "Column is already at the beginning of range (" . + PHPExcel_Cell::stringFromColumnIndex($this->endColumn) . " - " . + PHPExcel_Cell::stringFromColumnIndex($this->endColumn) . ")" + ); + } + + --$this->position; + } + + /** + * Indicate if more columns exist in the worksheet range of columns that we're iterating + * + * @return boolean + */ + public function valid() + { + return $this->position <= $this->endColumn; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Dimension.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Dimension.php new file mode 100644 index 0000000..84f692c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Dimension.php @@ -0,0 +1,178 @@ +<?php + +/** + * PHPExcel_Worksheet_Dimension + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +abstract class PHPExcel_Worksheet_Dimension +{ + /** + * Visible? + * + * @var bool + */ + private $visible = true; + + /** + * Outline level + * + * @var int + */ + private $outlineLevel = 0; + + /** + * Collapsed + * + * @var bool + */ + private $collapsed = false; + + /** + * Index to cellXf. Null value means row has no explicit cellXf format. + * + * @var int|null + */ + private $xfIndex; + + /** + * Create a new PHPExcel_Worksheet_Dimension + * + * @param int $pIndex Numeric row index + */ + public function __construct($initialValue = null) + { + // set dimension as unformatted by default + $this->xfIndex = $initialValue; + } + + /** + * Get Visible + * + * @return bool + */ + public function getVisible() + { + return $this->visible; + } + + /** + * Set Visible + * + * @param bool $pValue + * @return PHPExcel_Worksheet_Dimension + */ + public function setVisible($pValue = true) + { + $this->visible = $pValue; + return $this; + } + + /** + * Get Outline Level + * + * @return int + */ + public function getOutlineLevel() + { + return $this->outlineLevel; + } + + /** + * Set Outline Level + * + * Value must be between 0 and 7 + * + * @param int $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_Dimension + */ + public function setOutlineLevel($pValue) + { + if ($pValue < 0 || $pValue > 7) { + throw new PHPExcel_Exception("Outline level must range between 0 and 7."); + } + + $this->outlineLevel = $pValue; + return $this; + } + + /** + * Get Collapsed + * + * @return bool + */ + public function getCollapsed() + { + return $this->collapsed; + } + + /** + * Set Collapsed + * + * @param bool $pValue + * @return PHPExcel_Worksheet_Dimension + */ + public function setCollapsed($pValue = true) + { + $this->collapsed = $pValue; + return $this; + } + + /** + * Get index to cellXf + * + * @return int + */ + public function getXfIndex() + { + return $this->xfIndex; + } + + /** + * Set index to cellXf + * + * @param int $pValue + * @return PHPExcel_Worksheet_Dimension + */ + public function setXfIndex($pValue = 0) + { + $this->xfIndex = $pValue; + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Drawing.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Drawing.php new file mode 100644 index 0000000..e39d3eb --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Drawing.php @@ -0,0 +1,147 @@ +<?php + +/** + * PHPExcel_Worksheet_Drawing + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet_Drawing + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_Drawing extends PHPExcel_Worksheet_BaseDrawing implements PHPExcel_IComparable +{ + /** + * Path + * + * @var string + */ + private $path; + + /** + * Create a new PHPExcel_Worksheet_Drawing + */ + public function __construct() + { + // Initialise values + $this->path = ''; + + // Initialize parent + parent::__construct(); + } + + /** + * Get Filename + * + * @return string + */ + public function getFilename() + { + return basename($this->path); + } + + /** + * Get indexed filename (using image index) + * + * @return string + */ + public function getIndexedFilename() + { + $fileName = $this->getFilename(); + $fileName = str_replace(' ', '_', $fileName); + return str_replace('.' . $this->getExtension(), '', $fileName) . $this->getImageIndex() . '.' . $this->getExtension(); + } + + /** + * Get Extension + * + * @return string + */ + public function getExtension() + { + $exploded = explode(".", basename($this->path)); + return $exploded[count($exploded) - 1]; + } + + /** + * Get Path + * + * @return string + */ + public function getPath() + { + return $this->path; + } + + /** + * Set Path + * + * @param string $pValue File path + * @param boolean $pVerifyFile Verify file + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_Drawing + */ + public function setPath($pValue = '', $pVerifyFile = true) + { + if ($pVerifyFile) { + if (file_exists($pValue)) { + $this->path = $pValue; + + if ($this->width == 0 && $this->height == 0) { + // Get width/height + list($this->width, $this->height) = getimagesize($pValue); + } + } else { + throw new PHPExcel_Exception("File $pValue not found!"); + } + } else { + $this->path = $pValue; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + return md5( + $this->path . + parent::getHashCode() . + __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Drawing/Shadow.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Drawing/Shadow.php new file mode 100644 index 0000000..84db91d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Drawing/Shadow.php @@ -0,0 +1,296 @@ +<?php + +/** + * PHPExcel_Worksheet_Drawing_Shadow + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet_Drawing + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_Drawing_Shadow implements PHPExcel_IComparable +{ + /* Shadow alignment */ + const SHADOW_BOTTOM = 'b'; + const SHADOW_BOTTOM_LEFT = 'bl'; + const SHADOW_BOTTOM_RIGHT = 'br'; + const SHADOW_CENTER = 'ctr'; + const SHADOW_LEFT = 'l'; + const SHADOW_TOP = 't'; + const SHADOW_TOP_LEFT = 'tl'; + const SHADOW_TOP_RIGHT = 'tr'; + + /** + * Visible + * + * @var boolean + */ + private $visible; + + /** + * Blur radius + * + * Defaults to 6 + * + * @var int + */ + private $blurRadius; + + /** + * Shadow distance + * + * Defaults to 2 + * + * @var int + */ + private $distance; + + /** + * Shadow direction (in degrees) + * + * @var int + */ + private $direction; + + /** + * Shadow alignment + * + * @var int + */ + private $alignment; + + /** + * Color + * + * @var PHPExcel_Style_Color + */ + private $color; + + /** + * Alpha + * + * @var int + */ + private $alpha; + + /** + * Create a new PHPExcel_Worksheet_Drawing_Shadow + */ + public function __construct() + { + // Initialise values + $this->visible = false; + $this->blurRadius = 6; + $this->distance = 2; + $this->direction = 0; + $this->alignment = PHPExcel_Worksheet_Drawing_Shadow::SHADOW_BOTTOM_RIGHT; + $this->color = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK); + $this->alpha = 50; + } + + /** + * Get Visible + * + * @return boolean + */ + public function getVisible() + { + return $this->visible; + } + + /** + * Set Visible + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setVisible($pValue = false) + { + $this->visible = $pValue; + return $this; + } + + /** + * Get Blur radius + * + * @return int + */ + public function getBlurRadius() + { + return $this->blurRadius; + } + + /** + * Set Blur radius + * + * @param int $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setBlurRadius($pValue = 6) + { + $this->blurRadius = $pValue; + return $this; + } + + /** + * Get Shadow distance + * + * @return int + */ + public function getDistance() + { + return $this->distance; + } + + /** + * Set Shadow distance + * + * @param int $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setDistance($pValue = 2) + { + $this->distance = $pValue; + return $this; + } + + /** + * Get Shadow direction (in degrees) + * + * @return int + */ + public function getDirection() + { + return $this->direction; + } + + /** + * Set Shadow direction (in degrees) + * + * @param int $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setDirection($pValue = 0) + { + $this->direction = $pValue; + return $this; + } + + /** + * Get Shadow alignment + * + * @return int + */ + public function getAlignment() + { + return $this->alignment; + } + + /** + * Set Shadow alignment + * + * @param int $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setAlignment($pValue = 0) + { + $this->alignment = $pValue; + return $this; + } + + /** + * Get Color + * + * @return PHPExcel_Style_Color + */ + public function getColor() + { + return $this->color; + } + + /** + * Set Color + * + * @param PHPExcel_Style_Color $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setColor(PHPExcel_Style_Color $pValue = null) + { + $this->color = $pValue; + return $this; + } + + /** + * Get Alpha + * + * @return int + */ + public function getAlpha() + { + return $this->alpha; + } + + /** + * Set Alpha + * + * @param int $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setAlpha($pValue = 0) + { + $this->alpha = $pValue; + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + return md5( + ($this->visible ? 't' : 'f') . + $this->blurRadius . + $this->distance . + $this->direction . + $this->alignment . + $this->color->getHashCode() . + $this->alpha . + __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Drawing/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Drawing/_notes/dwsync.xml new file mode 100644 index 0000000..71f5260 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Drawing/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Shadow.php" server="62.244.88.21/deciday/" local="131919461928560542" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/HeaderFooter.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/HeaderFooter.php new file mode 100644 index 0000000..3a88923 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/HeaderFooter.php @@ -0,0 +1,494 @@ +<?php +/** + * PHPExcel_Worksheet_HeaderFooter + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not,241 write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + * + * <code> + * Header/Footer Formatting Syntax taken from Office Open XML Part 4 - Markup Language Reference, page 1970: + * + * There are a number of formatting codes that can be written inline with the actual header / footer text, which + * affect the formatting in the header or footer. + * + * Example: This example shows the text "Center Bold Header" on the first line (center section), and the date on + * the second line (center section). + * &CCenter &"-,Bold"Bold&"-,Regular"Header_x000A_&D + * + * General Rules: + * There is no required order in which these codes must appear. + * + * The first occurrence of the following codes turns the formatting ON, the second occurrence turns it OFF again: + * - strikethrough + * - superscript + * - subscript + * Superscript and subscript cannot both be ON at same time. Whichever comes first wins and the other is ignored, + * while the first is ON. + * &L - code for "left section" (there are three header / footer locations, "left", "center", and "right"). When + * two or more occurrences of this section marker exist, the contents from all markers are concatenated, in the + * order of appearance, and placed into the left section. + * &P - code for "current page #" + * &N - code for "total pages" + * &font size - code for "text font size", where font size is a font size in points. + * &K - code for "text font color" + * RGB Color is specified as RRGGBB + * Theme Color is specifed as TTSNN where TT is the theme color Id, S is either "+" or "-" of the tint/shade + * value, NN is the tint/shade value. + * &S - code for "text strikethrough" on / off + * &X - code for "text super script" on / off + * &Y - code for "text subscript" on / off + * &C - code for "center section". When two or more occurrences of this section marker exist, the contents + * from all markers are concatenated, in the order of appearance, and placed into the center section. + * + * &D - code for "date" + * &T - code for "time" + * &G - code for "picture as background" + * &U - code for "text single underline" + * &E - code for "double underline" + * &R - code for "right section". When two or more occurrences of this section marker exist, the contents + * from all markers are concatenated, in the order of appearance, and placed into the right section. + * &Z - code for "this workbook's file path" + * &F - code for "this workbook's file name" + * &A - code for "sheet tab name" + * &+ - code for add to page #. + * &- - code for subtract from page #. + * &"font name,font type" - code for "text font name" and "text font type", where font name and font type + * are strings specifying the name and type of the font, separated by a comma. When a hyphen appears in font + * name, it means "none specified". Both of font name and font type can be localized values. + * &"-,Bold" - code for "bold font style" + * &B - also means "bold font style". + * &"-,Regular" - code for "regular font style" + * &"-,Italic" - code for "italic font style" + * &I - also means "italic font style" + * &"-,Bold Italic" code for "bold italic font style" + * &O - code for "outline style" + * &H - code for "shadow style" + * </code> + * + */ +class PHPExcel_Worksheet_HeaderFooter +{ + /* Header/footer image location */ + const IMAGE_HEADER_LEFT = 'LH'; + const IMAGE_HEADER_CENTER = 'CH'; + const IMAGE_HEADER_RIGHT = 'RH'; + const IMAGE_FOOTER_LEFT = 'LF'; + const IMAGE_FOOTER_CENTER = 'CF'; + const IMAGE_FOOTER_RIGHT = 'RF'; + + /** + * OddHeader + * + * @var string + */ + private $oddHeader = ''; + + /** + * OddFooter + * + * @var string + */ + private $oddFooter = ''; + + /** + * EvenHeader + * + * @var string + */ + private $evenHeader = ''; + + /** + * EvenFooter + * + * @var string + */ + private $evenFooter = ''; + + /** + * FirstHeader + * + * @var string + */ + private $firstHeader = ''; + + /** + * FirstFooter + * + * @var string + */ + private $firstFooter = ''; + + /** + * Different header for Odd/Even, defaults to false + * + * @var boolean + */ + private $differentOddEven = false; + + /** + * Different header for first page, defaults to false + * + * @var boolean + */ + private $differentFirst = false; + + /** + * Scale with document, defaults to true + * + * @var boolean + */ + private $scaleWithDocument = true; + + /** + * Align with margins, defaults to true + * + * @var boolean + */ + private $alignWithMargins = true; + + /** + * Header/footer images + * + * @var PHPExcel_Worksheet_HeaderFooterDrawing[] + */ + private $headerFooterImages = array(); + + /** + * Create a new PHPExcel_Worksheet_HeaderFooter + */ + public function __construct() + { + } + + /** + * Get OddHeader + * + * @return string + */ + public function getOddHeader() + { + return $this->oddHeader; + } + + /** + * Set OddHeader + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setOddHeader($pValue) + { + $this->oddHeader = $pValue; + return $this; + } + + /** + * Get OddFooter + * + * @return string + */ + public function getOddFooter() + { + return $this->oddFooter; + } + + /** + * Set OddFooter + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setOddFooter($pValue) + { + $this->oddFooter = $pValue; + return $this; + } + + /** + * Get EvenHeader + * + * @return string + */ + public function getEvenHeader() + { + return $this->evenHeader; + } + + /** + * Set EvenHeader + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setEvenHeader($pValue) + { + $this->evenHeader = $pValue; + return $this; + } + + /** + * Get EvenFooter + * + * @return string + */ + public function getEvenFooter() + { + return $this->evenFooter; + } + + /** + * Set EvenFooter + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setEvenFooter($pValue) + { + $this->evenFooter = $pValue; + return $this; + } + + /** + * Get FirstHeader + * + * @return string + */ + public function getFirstHeader() + { + return $this->firstHeader; + } + + /** + * Set FirstHeader + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setFirstHeader($pValue) + { + $this->firstHeader = $pValue; + return $this; + } + + /** + * Get FirstFooter + * + * @return string + */ + public function getFirstFooter() + { + return $this->firstFooter; + } + + /** + * Set FirstFooter + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setFirstFooter($pValue) + { + $this->firstFooter = $pValue; + return $this; + } + + /** + * Get DifferentOddEven + * + * @return boolean + */ + public function getDifferentOddEven() + { + return $this->differentOddEven; + } + + /** + * Set DifferentOddEven + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setDifferentOddEven($pValue = false) + { + $this->differentOddEven = $pValue; + return $this; + } + + /** + * Get DifferentFirst + * + * @return boolean + */ + public function getDifferentFirst() + { + return $this->differentFirst; + } + + /** + * Set DifferentFirst + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setDifferentFirst($pValue = false) + { + $this->differentFirst = $pValue; + return $this; + } + + /** + * Get ScaleWithDocument + * + * @return boolean + */ + public function getScaleWithDocument() + { + return $this->scaleWithDocument; + } + + /** + * Set ScaleWithDocument + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setScaleWithDocument($pValue = true) + { + $this->scaleWithDocument = $pValue; + return $this; + } + + /** + * Get AlignWithMargins + * + * @return boolean + */ + public function getAlignWithMargins() + { + return $this->alignWithMargins; + } + + /** + * Set AlignWithMargins + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setAlignWithMargins($pValue = true) + { + $this->alignWithMargins = $pValue; + return $this; + } + + /** + * Add header/footer image + * + * @param PHPExcel_Worksheet_HeaderFooterDrawing $image + * @param string $location + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function addImage(PHPExcel_Worksheet_HeaderFooterDrawing $image = null, $location = self::IMAGE_HEADER_LEFT) + { + $this->headerFooterImages[$location] = $image; + return $this; + } + + /** + * Remove header/footer image + * + * @param string $location + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function removeImage($location = self::IMAGE_HEADER_LEFT) + { + if (isset($this->headerFooterImages[$location])) { + unset($this->headerFooterImages[$location]); + } + return $this; + } + + /** + * Set header/footer images + * + * @param PHPExcel_Worksheet_HeaderFooterDrawing[] $images + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setImages($images) + { + if (!is_array($images)) { + throw new PHPExcel_Exception('Invalid parameter!'); + } + + $this->headerFooterImages = $images; + return $this; + } + + /** + * Get header/footer images + * + * @return PHPExcel_Worksheet_HeaderFooterDrawing[] + */ + public function getImages() + { + // Sort array + $images = array(); + if (isset($this->headerFooterImages[self::IMAGE_HEADER_LEFT])) { + $images[self::IMAGE_HEADER_LEFT] = $this->headerFooterImages[self::IMAGE_HEADER_LEFT]; + } + if (isset($this->headerFooterImages[self::IMAGE_HEADER_CENTER])) { + $images[self::IMAGE_HEADER_CENTER] = $this->headerFooterImages[self::IMAGE_HEADER_CENTER]; + } + if (isset($this->headerFooterImages[self::IMAGE_HEADER_RIGHT])) { + $images[self::IMAGE_HEADER_RIGHT] = $this->headerFooterImages[self::IMAGE_HEADER_RIGHT]; + } + if (isset($this->headerFooterImages[self::IMAGE_FOOTER_LEFT])) { + $images[self::IMAGE_FOOTER_LEFT] = $this->headerFooterImages[self::IMAGE_FOOTER_LEFT]; + } + if (isset($this->headerFooterImages[self::IMAGE_FOOTER_CENTER])) { + $images[self::IMAGE_FOOTER_CENTER] = $this->headerFooterImages[self::IMAGE_FOOTER_CENTER]; + } + if (isset($this->headerFooterImages[self::IMAGE_FOOTER_RIGHT])) { + $images[self::IMAGE_FOOTER_RIGHT] = $this->headerFooterImages[self::IMAGE_FOOTER_RIGHT]; + } + $this->headerFooterImages = $images; + + return $this->headerFooterImages; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/HeaderFooterDrawing.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/HeaderFooterDrawing.php new file mode 100644 index 0000000..a491f4b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/HeaderFooterDrawing.php @@ -0,0 +1,361 @@ +<?php + +/** + * PHPExcel_Worksheet_HeaderFooterDrawing + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_HeaderFooterDrawing extends PHPExcel_Worksheet_Drawing implements PHPExcel_IComparable +{ + /** + * Path + * + * @var string + */ + private $path; + + /** + * Name + * + * @var string + */ + protected $name; + + /** + * Offset X + * + * @var int + */ + protected $offsetX; + + /** + * Offset Y + * + * @var int + */ + protected $offsetY; + + /** + * Width + * + * @var int + */ + protected $width; + + /** + * Height + * + * @var int + */ + protected $height; + + /** + * Proportional resize + * + * @var boolean + */ + protected $resizeProportional; + + /** + * Create a new PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function __construct() + { + // Initialise values + $this->path = ''; + $this->name = ''; + $this->offsetX = 0; + $this->offsetY = 0; + $this->width = 0; + $this->height = 0; + $this->resizeProportional = true; + } + + /** + * Get Name + * + * @return string + */ + public function getName() + { + return $this->name; + } + + /** + * Set Name + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setName($pValue = '') + { + $this->name = $pValue; + return $this; + } + + /** + * Get OffsetX + * + * @return int + */ + public function getOffsetX() + { + return $this->offsetX; + } + + /** + * Set OffsetX + * + * @param int $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setOffsetX($pValue = 0) + { + $this->offsetX = $pValue; + return $this; + } + + /** + * Get OffsetY + * + * @return int + */ + public function getOffsetY() + { + return $this->offsetY; + } + + /** + * Set OffsetY + * + * @param int $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setOffsetY($pValue = 0) + { + $this->offsetY = $pValue; + return $this; + } + + /** + * Get Width + * + * @return int + */ + public function getWidth() + { + return $this->width; + } + + /** + * Set Width + * + * @param int $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setWidth($pValue = 0) + { + // Resize proportional? + if ($this->resizeProportional && $pValue != 0) { + $ratio = $this->width / $this->height; + $this->height = round($ratio * $pValue); + } + + // Set width + $this->width = $pValue; + + return $this; + } + + /** + * Get Height + * + * @return int + */ + public function getHeight() + { + return $this->height; + } + + /** + * Set Height + * + * @param int $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setHeight($pValue = 0) + { + // Resize proportional? + if ($this->resizeProportional && $pValue != 0) { + $ratio = $this->width / $this->height; + $this->width = round($ratio * $pValue); + } + + // Set height + $this->height = $pValue; + + return $this; + } + + /** + * Set width and height with proportional resize + * Example: + * <code> + * $objDrawing->setResizeProportional(true); + * $objDrawing->setWidthAndHeight(160,120); + * </code> + * + * @author Vincent@luo MSN:kele_100@hotmail.com + * @param int $width + * @param int $height + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setWidthAndHeight($width = 0, $height = 0) + { + $xratio = $width / $this->width; + $yratio = $height / $this->height; + if ($this->resizeProportional && !($width == 0 || $height == 0)) { + if (($xratio * $this->height) < $height) { + $this->height = ceil($xratio * $this->height); + $this->width = $width; + } else { + $this->width = ceil($yratio * $this->width); + $this->height = $height; + } + } + return $this; + } + + /** + * Get ResizeProportional + * + * @return boolean + */ + public function getResizeProportional() + { + return $this->resizeProportional; + } + + /** + * Set ResizeProportional + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setResizeProportional($pValue = true) + { + $this->resizeProportional = $pValue; + return $this; + } + + /** + * Get Filename + * + * @return string + */ + public function getFilename() + { + return basename($this->path); + } + + /** + * Get Extension + * + * @return string + */ + public function getExtension() + { + $parts = explode(".", basename($this->path)); + return end($parts); + } + + /** + * Get Path + * + * @return string + */ + public function getPath() + { + return $this->path; + } + + /** + * Set Path + * + * @param string $pValue File path + * @param boolean $pVerifyFile Verify file + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setPath($pValue = '', $pVerifyFile = true) + { + if ($pVerifyFile) { + if (file_exists($pValue)) { + $this->path = $pValue; + + if ($this->width == 0 && $this->height == 0) { + // Get width/height + list($this->width, $this->height) = getimagesize($pValue); + } + } else { + throw new PHPExcel_Exception("File $pValue not found!"); + } + } else { + $this->path = $pValue; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + return md5( + $this->path . + $this->name . + $this->offsetX . + $this->offsetY . + $this->width . + $this->height . + __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/MemoryDrawing.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/MemoryDrawing.php new file mode 100644 index 0000000..438ed2c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/MemoryDrawing.php @@ -0,0 +1,201 @@ +<?php + +/** + * PHPExcel_Worksheet_MemoryDrawing + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_MemoryDrawing extends PHPExcel_Worksheet_BaseDrawing implements PHPExcel_IComparable +{ + /* Rendering functions */ + const RENDERING_DEFAULT = 'imagepng'; + const RENDERING_PNG = 'imagepng'; + const RENDERING_GIF = 'imagegif'; + const RENDERING_JPEG = 'imagejpeg'; + + /* MIME types */ + const MIMETYPE_DEFAULT = 'image/png'; + const MIMETYPE_PNG = 'image/png'; + const MIMETYPE_GIF = 'image/gif'; + const MIMETYPE_JPEG = 'image/jpeg'; + + /** + * Image resource + * + * @var resource + */ + private $imageResource; + + /** + * Rendering function + * + * @var string + */ + private $renderingFunction; + + /** + * Mime type + * + * @var string + */ + private $mimeType; + + /** + * Unique name + * + * @var string + */ + private $uniqueName; + + /** + * Create a new PHPExcel_Worksheet_MemoryDrawing + */ + public function __construct() + { + // Initialise values + $this->imageResource = null; + $this->renderingFunction = self::RENDERING_DEFAULT; + $this->mimeType = self::MIMETYPE_DEFAULT; + $this->uniqueName = md5(rand(0, 9999). time() . rand(0, 9999)); + + // Initialize parent + parent::__construct(); + } + + /** + * Get image resource + * + * @return resource + */ + public function getImageResource() + { + return $this->imageResource; + } + + /** + * Set image resource + * + * @param $value resource + * @return PHPExcel_Worksheet_MemoryDrawing + */ + public function setImageResource($value = null) + { + $this->imageResource = $value; + + if (!is_null($this->imageResource)) { + // Get width/height + $this->width = imagesx($this->imageResource); + $this->height = imagesy($this->imageResource); + } + return $this; + } + + /** + * Get rendering function + * + * @return string + */ + public function getRenderingFunction() + { + return $this->renderingFunction; + } + + /** + * Set rendering function + * + * @param string $value + * @return PHPExcel_Worksheet_MemoryDrawing + */ + public function setRenderingFunction($value = PHPExcel_Worksheet_MemoryDrawing::RENDERING_DEFAULT) + { + $this->renderingFunction = $value; + return $this; + } + + /** + * Get mime type + * + * @return string + */ + public function getMimeType() + { + return $this->mimeType; + } + + /** + * Set mime type + * + * @param string $value + * @return PHPExcel_Worksheet_MemoryDrawing + */ + public function setMimeType($value = PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT) + { + $this->mimeType = $value; + return $this; + } + + /** + * Get indexed filename (using image index) + * + * @return string + */ + public function getIndexedFilename() + { + $extension = strtolower($this->getMimeType()); + $extension = explode('/', $extension); + $extension = $extension[1]; + + return $this->uniqueName . $this->getImageIndex() . '.' . $extension; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + return md5( + $this->renderingFunction . + $this->mimeType . + $this->uniqueName . + parent::getHashCode() . + __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/PageMargins.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/PageMargins.php new file mode 100644 index 0000000..70f5ee0 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/PageMargins.php @@ -0,0 +1,233 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Worksheet_PageMargins + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_PageMargins +{ + /** + * Left + * + * @var double + */ + private $left = 0.7; + + /** + * Right + * + * @var double + */ + private $right = 0.7; + + /** + * Top + * + * @var double + */ + private $top = 0.75; + + /** + * Bottom + * + * @var double + */ + private $bottom = 0.75; + + /** + * Header + * + * @var double + */ + private $header = 0.3; + + /** + * Footer + * + * @var double + */ + private $footer = 0.3; + + /** + * Create a new PHPExcel_Worksheet_PageMargins + */ + public function __construct() + { + } + + /** + * Get Left + * + * @return double + */ + public function getLeft() + { + return $this->left; + } + + /** + * Set Left + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setLeft($pValue) + { + $this->left = $pValue; + return $this; + } + + /** + * Get Right + * + * @return double + */ + public function getRight() + { + return $this->right; + } + + /** + * Set Right + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setRight($pValue) + { + $this->right = $pValue; + return $this; + } + + /** + * Get Top + * + * @return double + */ + public function getTop() + { + return $this->top; + } + + /** + * Set Top + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setTop($pValue) + { + $this->top = $pValue; + return $this; + } + + /** + * Get Bottom + * + * @return double + */ + public function getBottom() + { + return $this->bottom; + } + + /** + * Set Bottom + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setBottom($pValue) + { + $this->bottom = $pValue; + return $this; + } + + /** + * Get Header + * + * @return double + */ + public function getHeader() + { + return $this->header; + } + + /** + * Set Header + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setHeader($pValue) + { + $this->header = $pValue; + return $this; + } + + /** + * Get Footer + * + * @return double + */ + public function getFooter() + { + return $this->footer; + } + + /** + * Set Footer + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setFooter($pValue) + { + $this->footer = $pValue; + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/PageSetup.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/PageSetup.php new file mode 100644 index 0000000..c67053e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/PageSetup.php @@ -0,0 +1,839 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Worksheet_PageSetup + * + * <code> + * Paper size taken from Office Open XML Part 4 - Markup Language Reference, page 1988: + * + * 1 = Letter paper (8.5 in. by 11 in.) + * 2 = Letter small paper (8.5 in. by 11 in.) + * 3 = Tabloid paper (11 in. by 17 in.) + * 4 = Ledger paper (17 in. by 11 in.) + * 5 = Legal paper (8.5 in. by 14 in.) + * 6 = Statement paper (5.5 in. by 8.5 in.) + * 7 = Executive paper (7.25 in. by 10.5 in.) + * 8 = A3 paper (297 mm by 420 mm) + * 9 = A4 paper (210 mm by 297 mm) + * 10 = A4 small paper (210 mm by 297 mm) + * 11 = A5 paper (148 mm by 210 mm) + * 12 = B4 paper (250 mm by 353 mm) + * 13 = B5 paper (176 mm by 250 mm) + * 14 = Folio paper (8.5 in. by 13 in.) + * 15 = Quarto paper (215 mm by 275 mm) + * 16 = Standard paper (10 in. by 14 in.) + * 17 = Standard paper (11 in. by 17 in.) + * 18 = Note paper (8.5 in. by 11 in.) + * 19 = #9 envelope (3.875 in. by 8.875 in.) + * 20 = #10 envelope (4.125 in. by 9.5 in.) + * 21 = #11 envelope (4.5 in. by 10.375 in.) + * 22 = #12 envelope (4.75 in. by 11 in.) + * 23 = #14 envelope (5 in. by 11.5 in.) + * 24 = C paper (17 in. by 22 in.) + * 25 = D paper (22 in. by 34 in.) + * 26 = E paper (34 in. by 44 in.) + * 27 = DL envelope (110 mm by 220 mm) + * 28 = C5 envelope (162 mm by 229 mm) + * 29 = C3 envelope (324 mm by 458 mm) + * 30 = C4 envelope (229 mm by 324 mm) + * 31 = C6 envelope (114 mm by 162 mm) + * 32 = C65 envelope (114 mm by 229 mm) + * 33 = B4 envelope (250 mm by 353 mm) + * 34 = B5 envelope (176 mm by 250 mm) + * 35 = B6 envelope (176 mm by 125 mm) + * 36 = Italy envelope (110 mm by 230 mm) + * 37 = Monarch envelope (3.875 in. by 7.5 in.). + * 38 = 6 3/4 envelope (3.625 in. by 6.5 in.) + * 39 = US standard fanfold (14.875 in. by 11 in.) + * 40 = German standard fanfold (8.5 in. by 12 in.) + * 41 = German legal fanfold (8.5 in. by 13 in.) + * 42 = ISO B4 (250 mm by 353 mm) + * 43 = Japanese double postcard (200 mm by 148 mm) + * 44 = Standard paper (9 in. by 11 in.) + * 45 = Standard paper (10 in. by 11 in.) + * 46 = Standard paper (15 in. by 11 in.) + * 47 = Invite envelope (220 mm by 220 mm) + * 50 = Letter extra paper (9.275 in. by 12 in.) + * 51 = Legal extra paper (9.275 in. by 15 in.) + * 52 = Tabloid extra paper (11.69 in. by 18 in.) + * 53 = A4 extra paper (236 mm by 322 mm) + * 54 = Letter transverse paper (8.275 in. by 11 in.) + * 55 = A4 transverse paper (210 mm by 297 mm) + * 56 = Letter extra transverse paper (9.275 in. by 12 in.) + * 57 = SuperA/SuperA/A4 paper (227 mm by 356 mm) + * 58 = SuperB/SuperB/A3 paper (305 mm by 487 mm) + * 59 = Letter plus paper (8.5 in. by 12.69 in.) + * 60 = A4 plus paper (210 mm by 330 mm) + * 61 = A5 transverse paper (148 mm by 210 mm) + * 62 = JIS B5 transverse paper (182 mm by 257 mm) + * 63 = A3 extra paper (322 mm by 445 mm) + * 64 = A5 extra paper (174 mm by 235 mm) + * 65 = ISO B5 extra paper (201 mm by 276 mm) + * 66 = A2 paper (420 mm by 594 mm) + * 67 = A3 transverse paper (297 mm by 420 mm) + * 68 = A3 extra transverse paper (322 mm by 445 mm) + * </code> + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_PageSetup +{ + /* Paper size */ + const PAPERSIZE_LETTER = 1; + const PAPERSIZE_LETTER_SMALL = 2; + const PAPERSIZE_TABLOID = 3; + const PAPERSIZE_LEDGER = 4; + const PAPERSIZE_LEGAL = 5; + const PAPERSIZE_STATEMENT = 6; + const PAPERSIZE_EXECUTIVE = 7; + const PAPERSIZE_A3 = 8; + const PAPERSIZE_A4 = 9; + const PAPERSIZE_A4_SMALL = 10; + const PAPERSIZE_A5 = 11; + const PAPERSIZE_B4 = 12; + const PAPERSIZE_B5 = 13; + const PAPERSIZE_FOLIO = 14; + const PAPERSIZE_QUARTO = 15; + const PAPERSIZE_STANDARD_1 = 16; + const PAPERSIZE_STANDARD_2 = 17; + const PAPERSIZE_NOTE = 18; + const PAPERSIZE_NO9_ENVELOPE = 19; + const PAPERSIZE_NO10_ENVELOPE = 20; + const PAPERSIZE_NO11_ENVELOPE = 21; + const PAPERSIZE_NO12_ENVELOPE = 22; + const PAPERSIZE_NO14_ENVELOPE = 23; + const PAPERSIZE_C = 24; + const PAPERSIZE_D = 25; + const PAPERSIZE_E = 26; + const PAPERSIZE_DL_ENVELOPE = 27; + const PAPERSIZE_C5_ENVELOPE = 28; + const PAPERSIZE_C3_ENVELOPE = 29; + const PAPERSIZE_C4_ENVELOPE = 30; + const PAPERSIZE_C6_ENVELOPE = 31; + const PAPERSIZE_C65_ENVELOPE = 32; + const PAPERSIZE_B4_ENVELOPE = 33; + const PAPERSIZE_B5_ENVELOPE = 34; + const PAPERSIZE_B6_ENVELOPE = 35; + const PAPERSIZE_ITALY_ENVELOPE = 36; + const PAPERSIZE_MONARCH_ENVELOPE = 37; + const PAPERSIZE_6_3_4_ENVELOPE = 38; + const PAPERSIZE_US_STANDARD_FANFOLD = 39; + const PAPERSIZE_GERMAN_STANDARD_FANFOLD = 40; + const PAPERSIZE_GERMAN_LEGAL_FANFOLD = 41; + const PAPERSIZE_ISO_B4 = 42; + const PAPERSIZE_JAPANESE_DOUBLE_POSTCARD = 43; + const PAPERSIZE_STANDARD_PAPER_1 = 44; + const PAPERSIZE_STANDARD_PAPER_2 = 45; + const PAPERSIZE_STANDARD_PAPER_3 = 46; + const PAPERSIZE_INVITE_ENVELOPE = 47; + const PAPERSIZE_LETTER_EXTRA_PAPER = 48; + const PAPERSIZE_LEGAL_EXTRA_PAPER = 49; + const PAPERSIZE_TABLOID_EXTRA_PAPER = 50; + const PAPERSIZE_A4_EXTRA_PAPER = 51; + const PAPERSIZE_LETTER_TRANSVERSE_PAPER = 52; + const PAPERSIZE_A4_TRANSVERSE_PAPER = 53; + const PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER = 54; + const PAPERSIZE_SUPERA_SUPERA_A4_PAPER = 55; + const PAPERSIZE_SUPERB_SUPERB_A3_PAPER = 56; + const PAPERSIZE_LETTER_PLUS_PAPER = 57; + const PAPERSIZE_A4_PLUS_PAPER = 58; + const PAPERSIZE_A5_TRANSVERSE_PAPER = 59; + const PAPERSIZE_JIS_B5_TRANSVERSE_PAPER = 60; + const PAPERSIZE_A3_EXTRA_PAPER = 61; + const PAPERSIZE_A5_EXTRA_PAPER = 62; + const PAPERSIZE_ISO_B5_EXTRA_PAPER = 63; + const PAPERSIZE_A2_PAPER = 64; + const PAPERSIZE_A3_TRANSVERSE_PAPER = 65; + const PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER = 66; + + /* Page orientation */ + const ORIENTATION_DEFAULT = 'default'; + const ORIENTATION_LANDSCAPE = 'landscape'; + const ORIENTATION_PORTRAIT = 'portrait'; + + /* Print Range Set Method */ + const SETPRINTRANGE_OVERWRITE = 'O'; + const SETPRINTRANGE_INSERT = 'I'; + + + /** + * Paper size + * + * @var int + */ + private $paperSize = PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER; + + /** + * Orientation + * + * @var string + */ + private $orientation = PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT; + + /** + * Scale (Print Scale) + * + * Print scaling. Valid values range from 10 to 400 + * This setting is overridden when fitToWidth and/or fitToHeight are in use + * + * @var int? + */ + private $scale = 100; + + /** + * Fit To Page + * Whether scale or fitToWith / fitToHeight applies + * + * @var boolean + */ + private $fitToPage = false; + + /** + * Fit To Height + * Number of vertical pages to fit on + * + * @var int? + */ + private $fitToHeight = 1; + + /** + * Fit To Width + * Number of horizontal pages to fit on + * + * @var int? + */ + private $fitToWidth = 1; + + /** + * Columns to repeat at left + * + * @var array Containing start column and end column, empty array if option unset + */ + private $columnsToRepeatAtLeft = array('', ''); + + /** + * Rows to repeat at top + * + * @var array Containing start row number and end row number, empty array if option unset + */ + private $rowsToRepeatAtTop = array(0, 0); + + /** + * Center page horizontally + * + * @var boolean + */ + private $horizontalCentered = false; + + /** + * Center page vertically + * + * @var boolean + */ + private $verticalCentered = false; + + /** + * Print area + * + * @var string + */ + private $printArea = null; + + /** + * First page number + * + * @var int + */ + private $firstPageNumber = null; + + /** + * Create a new PHPExcel_Worksheet_PageSetup + */ + public function __construct() + { + } + + /** + * Get Paper Size + * + * @return int + */ + public function getPaperSize() + { + return $this->paperSize; + } + + /** + * Set Paper Size + * + * @param int $pValue + * @return PHPExcel_Worksheet_PageSetup + */ + public function setPaperSize($pValue = PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER) + { + $this->paperSize = $pValue; + return $this; + } + + /** + * Get Orientation + * + * @return string + */ + public function getOrientation() + { + return $this->orientation; + } + + /** + * Set Orientation + * + * @param string $pValue + * @return PHPExcel_Worksheet_PageSetup + */ + public function setOrientation($pValue = PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT) + { + $this->orientation = $pValue; + return $this; + } + + /** + * Get Scale + * + * @return int? + */ + public function getScale() + { + return $this->scale; + } + + /** + * Set Scale + * + * Print scaling. Valid values range from 10 to 400 + * This setting is overridden when fitToWidth and/or fitToHeight are in use + * + * @param int? $pValue + * @param boolean $pUpdate Update fitToPage so scaling applies rather than fitToHeight / fitToWidth + * @return PHPExcel_Worksheet_PageSetup + * @throws PHPExcel_Exception + */ + public function setScale($pValue = 100, $pUpdate = true) + { + // Microsoft Office Excel 2007 only allows setting a scale between 10 and 400 via the user interface, + // but it is apparently still able to handle any scale >= 0, where 0 results in 100 + if (($pValue >= 0) || is_null($pValue)) { + $this->scale = $pValue; + if ($pUpdate) { + $this->fitToPage = false; + } + } else { + throw new PHPExcel_Exception("Scale must not be negative"); + } + return $this; + } + + /** + * Get Fit To Page + * + * @return boolean + */ + public function getFitToPage() + { + return $this->fitToPage; + } + + /** + * Set Fit To Page + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_PageSetup + */ + public function setFitToPage($pValue = true) + { + $this->fitToPage = $pValue; + return $this; + } + + /** + * Get Fit To Height + * + * @return int? + */ + public function getFitToHeight() + { + return $this->fitToHeight; + } + + /** + * Set Fit To Height + * + * @param int? $pValue + * @param boolean $pUpdate Update fitToPage so it applies rather than scaling + * @return PHPExcel_Worksheet_PageSetup + */ + public function setFitToHeight($pValue = 1, $pUpdate = true) + { + $this->fitToHeight = $pValue; + if ($pUpdate) { + $this->fitToPage = true; + } + return $this; + } + + /** + * Get Fit To Width + * + * @return int? + */ + public function getFitToWidth() + { + return $this->fitToWidth; + } + + /** + * Set Fit To Width + * + * @param int? $pValue + * @param boolean $pUpdate Update fitToPage so it applies rather than scaling + * @return PHPExcel_Worksheet_PageSetup + */ + public function setFitToWidth($pValue = 1, $pUpdate = true) + { + $this->fitToWidth = $pValue; + if ($pUpdate) { + $this->fitToPage = true; + } + return $this; + } + + /** + * Is Columns to repeat at left set? + * + * @return boolean + */ + public function isColumnsToRepeatAtLeftSet() + { + if (is_array($this->columnsToRepeatAtLeft)) { + if ($this->columnsToRepeatAtLeft[0] != '' && $this->columnsToRepeatAtLeft[1] != '') { + return true; + } + } + + return false; + } + + /** + * Get Columns to repeat at left + * + * @return array Containing start column and end column, empty array if option unset + */ + public function getColumnsToRepeatAtLeft() + { + return $this->columnsToRepeatAtLeft; + } + + /** + * Set Columns to repeat at left + * + * @param array $pValue Containing start column and end column, empty array if option unset + * @return PHPExcel_Worksheet_PageSetup + */ + public function setColumnsToRepeatAtLeft($pValue = null) + { + if (is_array($pValue)) { + $this->columnsToRepeatAtLeft = $pValue; + } + return $this; + } + + /** + * Set Columns to repeat at left by start and end + * + * @param string $pStart + * @param string $pEnd + * @return PHPExcel_Worksheet_PageSetup + */ + public function setColumnsToRepeatAtLeftByStartAndEnd($pStart = 'A', $pEnd = 'A') + { + $this->columnsToRepeatAtLeft = array($pStart, $pEnd); + return $this; + } + + /** + * Is Rows to repeat at top set? + * + * @return boolean + */ + public function isRowsToRepeatAtTopSet() + { + if (is_array($this->rowsToRepeatAtTop)) { + if ($this->rowsToRepeatAtTop[0] != 0 && $this->rowsToRepeatAtTop[1] != 0) { + return true; + } + } + + return false; + } + + /** + * Get Rows to repeat at top + * + * @return array Containing start column and end column, empty array if option unset + */ + public function getRowsToRepeatAtTop() + { + return $this->rowsToRepeatAtTop; + } + + /** + * Set Rows to repeat at top + * + * @param array $pValue Containing start column and end column, empty array if option unset + * @return PHPExcel_Worksheet_PageSetup + */ + public function setRowsToRepeatAtTop($pValue = null) + { + if (is_array($pValue)) { + $this->rowsToRepeatAtTop = $pValue; + } + return $this; + } + + /** + * Set Rows to repeat at top by start and end + * + * @param int $pStart + * @param int $pEnd + * @return PHPExcel_Worksheet_PageSetup + */ + public function setRowsToRepeatAtTopByStartAndEnd($pStart = 1, $pEnd = 1) + { + $this->rowsToRepeatAtTop = array($pStart, $pEnd); + return $this; + } + + /** + * Get center page horizontally + * + * @return bool + */ + public function getHorizontalCentered() + { + return $this->horizontalCentered; + } + + /** + * Set center page horizontally + * + * @param bool $value + * @return PHPExcel_Worksheet_PageSetup + */ + public function setHorizontalCentered($value = false) + { + $this->horizontalCentered = $value; + return $this; + } + + /** + * Get center page vertically + * + * @return bool + */ + public function getVerticalCentered() + { + return $this->verticalCentered; + } + + /** + * Set center page vertically + * + * @param bool $value + * @return PHPExcel_Worksheet_PageSetup + */ + public function setVerticalCentered($value = false) + { + $this->verticalCentered = $value; + return $this; + } + + /** + * Get print area + * + * @param int $index Identifier for a specific print area range if several ranges have been set + * Default behaviour, or a index value of 0, will return all ranges as a comma-separated string + * Otherwise, the specific range identified by the value of $index will be returned + * Print areas are numbered from 1 + * @throws PHPExcel_Exception + * @return string + */ + public function getPrintArea($index = 0) + { + if ($index == 0) { + return $this->printArea; + } + $printAreas = explode(',', $this->printArea); + if (isset($printAreas[$index-1])) { + return $printAreas[$index-1]; + } + throw new PHPExcel_Exception("Requested Print Area does not exist"); + } + + /** + * Is print area set? + * + * @param int $index Identifier for a specific print area range if several ranges have been set + * Default behaviour, or an index value of 0, will identify whether any print range is set + * Otherwise, existence of the range identified by the value of $index will be returned + * Print areas are numbered from 1 + * @return boolean + */ + public function isPrintAreaSet($index = 0) + { + if ($index == 0) { + return !is_null($this->printArea); + } + $printAreas = explode(',', $this->printArea); + return isset($printAreas[$index-1]); + } + + /** + * Clear a print area + * + * @param int $index Identifier for a specific print area range if several ranges have been set + * Default behaviour, or an index value of 0, will clear all print ranges that are set + * Otherwise, the range identified by the value of $index will be removed from the series + * Print areas are numbered from 1 + * @return PHPExcel_Worksheet_PageSetup + */ + public function clearPrintArea($index = 0) + { + if ($index == 0) { + $this->printArea = null; + } else { + $printAreas = explode(',', $this->printArea); + if (isset($printAreas[$index-1])) { + unset($printAreas[$index-1]); + $this->printArea = implode(',', $printAreas); + } + } + + return $this; + } + + /** + * Set print area. e.g. 'A1:D10' or 'A1:D10,G5:M20' + * + * @param string $value + * @param int $index Identifier for a specific print area range allowing several ranges to be set + * When the method is "O"verwrite, then a positive integer index will overwrite that indexed + * entry in the print areas list; a negative index value will identify which entry to + * overwrite working bacward through the print area to the list, with the last entry as -1. + * Specifying an index value of 0, will overwrite <b>all</b> existing print ranges. + * When the method is "I"nsert, then a positive index will insert after that indexed entry in + * the print areas list, while a negative index will insert before the indexed entry. + * Specifying an index value of 0, will always append the new print range at the end of the + * list. + * Print areas are numbered from 1 + * @param string $method Determines the method used when setting multiple print areas + * Default behaviour, or the "O" method, overwrites existing print area + * The "I" method, inserts the new print area before any specified index, or at the end of the list + * @return PHPExcel_Worksheet_PageSetup + * @throws PHPExcel_Exception + */ + public function setPrintArea($value, $index = 0, $method = self::SETPRINTRANGE_OVERWRITE) + { + if (strpos($value, '!') !== false) { + throw new PHPExcel_Exception('Cell coordinate must not specify a worksheet.'); + } elseif (strpos($value, ':') === false) { + throw new PHPExcel_Exception('Cell coordinate must be a range of cells.'); + } elseif (strpos($value, '$') !== false) { + throw new PHPExcel_Exception('Cell coordinate must not be absolute.'); + } + $value = strtoupper($value); + + if ($method == self::SETPRINTRANGE_OVERWRITE) { + if ($index == 0) { + $this->printArea = $value; + } else { + $printAreas = explode(',', $this->printArea); + if ($index < 0) { + $index = count($printAreas) - abs($index) + 1; + } + if (($index <= 0) || ($index > count($printAreas))) { + throw new PHPExcel_Exception('Invalid index for setting print range.'); + } + $printAreas[$index-1] = $value; + $this->printArea = implode(',', $printAreas); + } + } elseif ($method == self::SETPRINTRANGE_INSERT) { + if ($index == 0) { + $this->printArea .= ($this->printArea == '') ? $value : ','.$value; + } else { + $printAreas = explode(',', $this->printArea); + if ($index < 0) { + $index = abs($index) - 1; + } + if ($index > count($printAreas)) { + throw new PHPExcel_Exception('Invalid index for setting print range.'); + } + $printAreas = array_merge(array_slice($printAreas, 0, $index), array($value), array_slice($printAreas, $index)); + $this->printArea = implode(',', $printAreas); + } + } else { + throw new PHPExcel_Exception('Invalid method for setting print range.'); + } + + return $this; + } + + /** + * Add a new print area (e.g. 'A1:D10' or 'A1:D10,G5:M20') to the list of print areas + * + * @param string $value + * @param int $index Identifier for a specific print area range allowing several ranges to be set + * A positive index will insert after that indexed entry in the print areas list, while a + * negative index will insert before the indexed entry. + * Specifying an index value of 0, will always append the new print range at the end of the + * list. + * Print areas are numbered from 1 + * @return PHPExcel_Worksheet_PageSetup + * @throws PHPExcel_Exception + */ + public function addPrintArea($value, $index = -1) + { + return $this->setPrintArea($value, $index, self::SETPRINTRANGE_INSERT); + } + + /** + * Set print area + * + * @param int $column1 Column 1 + * @param int $row1 Row 1 + * @param int $column2 Column 2 + * @param int $row2 Row 2 + * @param int $index Identifier for a specific print area range allowing several ranges to be set + * When the method is "O"verwrite, then a positive integer index will overwrite that indexed + * entry in the print areas list; a negative index value will identify which entry to + * overwrite working bacward through the print area to the list, with the last entry as -1. + * Specifying an index value of 0, will overwrite <b>all</b> existing print ranges. + * When the method is "I"nsert, then a positive index will insert after that indexed entry in + * the print areas list, while a negative index will insert before the indexed entry. + * Specifying an index value of 0, will always append the new print range at the end of the + * list. + * Print areas are numbered from 1 + * @param string $method Determines the method used when setting multiple print areas + * Default behaviour, or the "O" method, overwrites existing print area + * The "I" method, inserts the new print area before any specified index, or at the end of the list + * @return PHPExcel_Worksheet_PageSetup + * @throws PHPExcel_Exception + */ + public function setPrintAreaByColumnAndRow($column1, $row1, $column2, $row2, $index = 0, $method = self::SETPRINTRANGE_OVERWRITE) + { + return $this->setPrintArea( + PHPExcel_Cell::stringFromColumnIndex($column1) . $row1 . ':' . PHPExcel_Cell::stringFromColumnIndex($column2) . $row2, + $index, + $method + ); + } + + /** + * Add a new print area to the list of print areas + * + * @param int $column1 Start Column for the print area + * @param int $row1 Start Row for the print area + * @param int $column2 End Column for the print area + * @param int $row2 End Row for the print area + * @param int $index Identifier for a specific print area range allowing several ranges to be set + * A positive index will insert after that indexed entry in the print areas list, while a + * negative index will insert before the indexed entry. + * Specifying an index value of 0, will always append the new print range at the end of the + * list. + * Print areas are numbered from 1 + * @return PHPExcel_Worksheet_PageSetup + * @throws PHPExcel_Exception + */ + public function addPrintAreaByColumnAndRow($column1, $row1, $column2, $row2, $index = -1) + { + return $this->setPrintArea( + PHPExcel_Cell::stringFromColumnIndex($column1) . $row1 . ':' . PHPExcel_Cell::stringFromColumnIndex($column2) . $row2, + $index, + self::SETPRINTRANGE_INSERT + ); + } + + /** + * Get first page number + * + * @return int + */ + public function getFirstPageNumber() + { + return $this->firstPageNumber; + } + + /** + * Set first page number + * + * @param int $value + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setFirstPageNumber($value = null) + { + $this->firstPageNumber = $value; + return $this; + } + + /** + * Reset first page number + * + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function resetFirstPageNumber() + { + return $this->setFirstPageNumber(null); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Protection.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Protection.php new file mode 100644 index 0000000..00633ee --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Protection.php @@ -0,0 +1,581 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Worksheet_Protection + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_Protection +{ + /** + * Sheet + * + * @var boolean + */ + private $sheet = false; + + /** + * Objects + * + * @var boolean + */ + private $objects = false; + + /** + * Scenarios + * + * @var boolean + */ + private $scenarios = false; + + /** + * Format cells + * + * @var boolean + */ + private $formatCells = false; + + /** + * Format columns + * + * @var boolean + */ + private $formatColumns = false; + + /** + * Format rows + * + * @var boolean + */ + private $formatRows = false; + + /** + * Insert columns + * + * @var boolean + */ + private $insertColumns = false; + + /** + * Insert rows + * + * @var boolean + */ + private $insertRows = false; + + /** + * Insert hyperlinks + * + * @var boolean + */ + private $insertHyperlinks = false; + + /** + * Delete columns + * + * @var boolean + */ + private $deleteColumns = false; + + /** + * Delete rows + * + * @var boolean + */ + private $deleteRows = false; + + /** + * Select locked cells + * + * @var boolean + */ + private $selectLockedCells = false; + + /** + * Sort + * + * @var boolean + */ + private $sort = false; + + /** + * AutoFilter + * + * @var boolean + */ + private $autoFilter = false; + + /** + * Pivot tables + * + * @var boolean + */ + private $pivotTables = false; + + /** + * Select unlocked cells + * + * @var boolean + */ + private $selectUnlockedCells = false; + + /** + * Password + * + * @var string + */ + private $password = ''; + + /** + * Create a new PHPExcel_Worksheet_Protection + */ + public function __construct() + { + } + + /** + * Is some sort of protection enabled? + * + * @return boolean + */ + public function isProtectionEnabled() + { + return $this->sheet || + $this->objects || + $this->scenarios || + $this->formatCells || + $this->formatColumns || + $this->formatRows || + $this->insertColumns || + $this->insertRows || + $this->insertHyperlinks || + $this->deleteColumns || + $this->deleteRows || + $this->selectLockedCells || + $this->sort || + $this->autoFilter || + $this->pivotTables || + $this->selectUnlockedCells; + } + + /** + * Get Sheet + * + * @return boolean + */ + public function getSheet() + { + return $this->sheet; + } + + /** + * Set Sheet + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setSheet($pValue = false) + { + $this->sheet = $pValue; + return $this; + } + + /** + * Get Objects + * + * @return boolean + */ + public function getObjects() + { + return $this->objects; + } + + /** + * Set Objects + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setObjects($pValue = false) + { + $this->objects = $pValue; + return $this; + } + + /** + * Get Scenarios + * + * @return boolean + */ + public function getScenarios() + { + return $this->scenarios; + } + + /** + * Set Scenarios + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setScenarios($pValue = false) + { + $this->scenarios = $pValue; + return $this; + } + + /** + * Get FormatCells + * + * @return boolean + */ + public function getFormatCells() + { + return $this->formatCells; + } + + /** + * Set FormatCells + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setFormatCells($pValue = false) + { + $this->formatCells = $pValue; + return $this; + } + + /** + * Get FormatColumns + * + * @return boolean + */ + public function getFormatColumns() + { + return $this->formatColumns; + } + + /** + * Set FormatColumns + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setFormatColumns($pValue = false) + { + $this->formatColumns = $pValue; + return $this; + } + + /** + * Get FormatRows + * + * @return boolean + */ + public function getFormatRows() + { + return $this->formatRows; + } + + /** + * Set FormatRows + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setFormatRows($pValue = false) + { + $this->formatRows = $pValue; + return $this; + } + + /** + * Get InsertColumns + * + * @return boolean + */ + public function getInsertColumns() + { + return $this->insertColumns; + } + + /** + * Set InsertColumns + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setInsertColumns($pValue = false) + { + $this->insertColumns = $pValue; + return $this; + } + + /** + * Get InsertRows + * + * @return boolean + */ + public function getInsertRows() + { + return $this->insertRows; + } + + /** + * Set InsertRows + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setInsertRows($pValue = false) + { + $this->insertRows = $pValue; + return $this; + } + + /** + * Get InsertHyperlinks + * + * @return boolean + */ + public function getInsertHyperlinks() + { + return $this->insertHyperlinks; + } + + /** + * Set InsertHyperlinks + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setInsertHyperlinks($pValue = false) + { + $this->insertHyperlinks = $pValue; + return $this; + } + + /** + * Get DeleteColumns + * + * @return boolean + */ + public function getDeleteColumns() + { + return $this->deleteColumns; + } + + /** + * Set DeleteColumns + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setDeleteColumns($pValue = false) + { + $this->deleteColumns = $pValue; + return $this; + } + + /** + * Get DeleteRows + * + * @return boolean + */ + public function getDeleteRows() + { + return $this->deleteRows; + } + + /** + * Set DeleteRows + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setDeleteRows($pValue = false) + { + $this->deleteRows = $pValue; + return $this; + } + + /** + * Get SelectLockedCells + * + * @return boolean + */ + public function getSelectLockedCells() + { + return $this->selectLockedCells; + } + + /** + * Set SelectLockedCells + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setSelectLockedCells($pValue = false) + { + $this->selectLockedCells = $pValue; + return $this; + } + + /** + * Get Sort + * + * @return boolean + */ + public function getSort() + { + return $this->sort; + } + + /** + * Set Sort + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setSort($pValue = false) + { + $this->sort = $pValue; + return $this; + } + + /** + * Get AutoFilter + * + * @return boolean + */ + public function getAutoFilter() + { + return $this->autoFilter; + } + + /** + * Set AutoFilter + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setAutoFilter($pValue = false) + { + $this->autoFilter = $pValue; + return $this; + } + + /** + * Get PivotTables + * + * @return boolean + */ + public function getPivotTables() + { + return $this->pivotTables; + } + + /** + * Set PivotTables + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setPivotTables($pValue = false) + { + $this->pivotTables = $pValue; + return $this; + } + + /** + * Get SelectUnlockedCells + * + * @return boolean + */ + public function getSelectUnlockedCells() + { + return $this->selectUnlockedCells; + } + + /** + * Set SelectUnlockedCells + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + public function setSelectUnlockedCells($pValue = false) + { + $this->selectUnlockedCells = $pValue; + return $this; + } + + /** + * Get Password (hashed) + * + * @return string + */ + public function getPassword() + { + return $this->password; + } + + /** + * Set Password + * + * @param string $pValue + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @return PHPExcel_Worksheet_Protection + */ + public function setPassword($pValue = '', $pAlreadyHashed = false) + { + if (!$pAlreadyHashed) { + $pValue = PHPExcel_Shared_PasswordHasher::hashPassword($pValue); + } + $this->password = $pValue; + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Row.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Row.php new file mode 100644 index 0000000..4f6034f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/Row.php @@ -0,0 +1,86 @@ +<?php + +/** + * PHPExcel_Worksheet_Row + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_Row +{ + /** + * PHPExcel_Worksheet + * + * @var PHPExcel_Worksheet + */ + private $parent; + + /** + * Row index + * + * @var int + */ + private $rowIndex = 0; + + /** + * Create a new row + * + * @param PHPExcel_Worksheet $parent + * @param int $rowIndex + */ + public function __construct(PHPExcel_Worksheet $parent = null, $rowIndex = 1) + { + // Set parent and row index + $this->parent = $parent; + $this->rowIndex = $rowIndex; + } + + /** + * Destructor + */ + public function __destruct() + { + unset($this->parent); + } + + /** + * Get row index + * + * @return int + */ + public function getRowIndex() + { + return $this->rowIndex; + } + + /** + * Get cell iterator + * + * @param string $startColumn The column address at which to start iterating + * @param string $endColumn Optionally, the column address at which to stop iterating + * @return PHPExcel_Worksheet_CellIterator + */ + public function getCellIterator($startColumn = 'A', $endColumn = null) + { + return new PHPExcel_Worksheet_RowCellIterator($this->parent, $this->rowIndex, $startColumn, $endColumn); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/RowCellIterator.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/RowCellIterator.php new file mode 100644 index 0000000..90eb9c9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/RowCellIterator.php @@ -0,0 +1,225 @@ +<?php + +/** + * PHPExcel_Worksheet_RowCellIterator + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_RowCellIterator extends PHPExcel_Worksheet_CellIterator implements Iterator +{ + /** + * Row index + * + * @var int + */ + protected $rowIndex; + + /** + * Start position + * + * @var int + */ + protected $startColumn = 0; + + /** + * End position + * + * @var int + */ + protected $endColumn = 0; + + /** + * Create a new column iterator + * + * @param PHPExcel_Worksheet $subject The worksheet to iterate over + * @param integer $rowIndex The row that we want to iterate + * @param string $startColumn The column address at which to start iterating + * @param string $endColumn Optionally, the column address at which to stop iterating + */ + public function __construct(PHPExcel_Worksheet $subject = null, $rowIndex = 1, $startColumn = 'A', $endColumn = null) + { + // Set subject and row index + $this->subject = $subject; + $this->rowIndex = $rowIndex; + $this->resetEnd($endColumn); + $this->resetStart($startColumn); + } + + /** + * Destructor + */ + public function __destruct() + { + unset($this->subject); + } + + /** + * (Re)Set the start column and the current column pointer + * + * @param integer $startColumn The column address at which to start iterating + * @return PHPExcel_Worksheet_RowCellIterator + * @throws PHPExcel_Exception + */ + public function resetStart($startColumn = 'A') + { + $startColumnIndex = PHPExcel_Cell::columnIndexFromString($startColumn) - 1; + $this->startColumn = $startColumnIndex; + $this->adjustForExistingOnlyRange(); + $this->seek(PHPExcel_Cell::stringFromColumnIndex($this->startColumn)); + + return $this; + } + + /** + * (Re)Set the end column + * + * @param string $endColumn The column address at which to stop iterating + * @return PHPExcel_Worksheet_RowCellIterator + * @throws PHPExcel_Exception + */ + public function resetEnd($endColumn = null) + { + $endColumn = ($endColumn) ? $endColumn : $this->subject->getHighestColumn(); + $this->endColumn = PHPExcel_Cell::columnIndexFromString($endColumn) - 1; + $this->adjustForExistingOnlyRange(); + + return $this; + } + + /** + * Set the column pointer to the selected column + * + * @param string $column The column address to set the current pointer at + * @return PHPExcel_Worksheet_RowCellIterator + * @throws PHPExcel_Exception + */ + public function seek($column = 'A') + { + $column = PHPExcel_Cell::columnIndexFromString($column) - 1; + if (($column < $this->startColumn) || ($column > $this->endColumn)) { + throw new PHPExcel_Exception("Column $column is out of range ({$this->startColumn} - {$this->endColumn})"); + } elseif ($this->onlyExistingCells && !($this->subject->cellExistsByColumnAndRow($column, $this->rowIndex))) { + throw new PHPExcel_Exception('In "IterateOnlyExistingCells" mode and Cell does not exist'); + } + $this->position = $column; + + return $this; + } + + /** + * Rewind the iterator to the starting column + */ + public function rewind() + { + $this->position = $this->startColumn; + } + + /** + * Return the current cell in this worksheet row + * + * @return PHPExcel_Cell + */ + public function current() + { + return $this->subject->getCellByColumnAndRow($this->position, $this->rowIndex); + } + + /** + * Return the current iterator key + * + * @return string + */ + public function key() + { + return PHPExcel_Cell::stringFromColumnIndex($this->position); + } + + /** + * Set the iterator to its next value + */ + public function next() + { + do { + ++$this->position; + } while (($this->onlyExistingCells) && + (!$this->subject->cellExistsByColumnAndRow($this->position, $this->rowIndex)) && + ($this->position <= $this->endColumn)); + } + + /** + * Set the iterator to its previous value + * + * @throws PHPExcel_Exception + */ + public function prev() + { + if ($this->position <= $this->startColumn) { + throw new PHPExcel_Exception( + "Column is already at the beginning of range (" . + PHPExcel_Cell::stringFromColumnIndex($this->endColumn) . " - " . + PHPExcel_Cell::stringFromColumnIndex($this->endColumn) . ")" + ); + } + + do { + --$this->position; + } while (($this->onlyExistingCells) && + (!$this->subject->cellExistsByColumnAndRow($this->position, $this->rowIndex)) && + ($this->position >= $this->startColumn)); + } + + /** + * Indicate if more columns exist in the worksheet range of columns that we're iterating + * + * @return boolean + */ + public function valid() + { + return $this->position <= $this->endColumn; + } + + /** + * Validate start/end values for "IterateOnlyExistingCells" mode, and adjust if necessary + * + * @throws PHPExcel_Exception + */ + protected function adjustForExistingOnlyRange() + { + if ($this->onlyExistingCells) { + while ((!$this->subject->cellExistsByColumnAndRow($this->startColumn, $this->rowIndex)) && + ($this->startColumn <= $this->endColumn)) { + ++$this->startColumn; + } + if ($this->startColumn > $this->endColumn) { + throw new PHPExcel_Exception('No cells exist within the specified range'); + } + while ((!$this->subject->cellExistsByColumnAndRow($this->endColumn, $this->rowIndex)) && + ($this->endColumn >= $this->startColumn)) { + --$this->endColumn; + } + if ($this->endColumn < $this->startColumn) { + throw new PHPExcel_Exception('No cells exist within the specified range'); + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/RowDimension.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/RowDimension.php new file mode 100644 index 0000000..c147486 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/RowDimension.php @@ -0,0 +1,132 @@ +<?php + +/** + * PHPExcel_Worksheet_RowDimension + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_RowDimension extends PHPExcel_Worksheet_Dimension +{ + /** + * Row index + * + * @var int + */ + private $rowIndex; + + /** + * Row height (in pt) + * + * When this is set to a negative value, the row height should be ignored by IWriter + * + * @var double + */ + private $height = -1; + + /** + * ZeroHeight for Row? + * + * @var bool + */ + private $zeroHeight = false; + + /** + * Create a new PHPExcel_Worksheet_RowDimension + * + * @param int $pIndex Numeric row index + */ + public function __construct($pIndex = 0) + { + // Initialise values + $this->rowIndex = $pIndex; + + // set dimension as unformatted by default + parent::__construct(null); + } + + /** + * Get Row Index + * + * @return int + */ + public function getRowIndex() + { + return $this->rowIndex; + } + + /** + * Set Row Index + * + * @param int $pValue + * @return PHPExcel_Worksheet_RowDimension + */ + public function setRowIndex($pValue) + { + $this->rowIndex = $pValue; + return $this; + } + + /** + * Get Row Height + * + * @return double + */ + public function getRowHeight() + { + return $this->height; + } + + /** + * Set Row Height + * + * @param double $pValue + * @return PHPExcel_Worksheet_RowDimension + */ + public function setRowHeight($pValue = -1) + { + $this->height = $pValue; + return $this; + } + + /** + * Get ZeroHeight + * + * @return bool + */ + public function getZeroHeight() + { + return $this->zeroHeight; + } + + /** + * Set ZeroHeight + * + * @param bool $pValue + * @return PHPExcel_Worksheet_RowDimension + */ + public function setZeroHeight($pValue = false) + { + $this->zeroHeight = $pValue; + return $this; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/RowIterator.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/RowIterator.php new file mode 100644 index 0000000..9ddb3e0 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/RowIterator.php @@ -0,0 +1,192 @@ +<?php + +/** + * PHPExcel_Worksheet_RowIterator + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_RowIterator implements Iterator +{ + /** + * PHPExcel_Worksheet to iterate + * + * @var PHPExcel_Worksheet + */ + private $subject; + + /** + * Current iterator position + * + * @var int + */ + private $position = 1; + + /** + * Start position + * + * @var int + */ + private $startRow = 1; + + + /** + * End position + * + * @var int + */ + private $endRow = 1; + + + /** + * Create a new row iterator + * + * @param PHPExcel_Worksheet $subject The worksheet to iterate over + * @param integer $startRow The row number at which to start iterating + * @param integer $endRow Optionally, the row number at which to stop iterating + */ + public function __construct(PHPExcel_Worksheet $subject, $startRow = 1, $endRow = null) + { + // Set subject + $this->subject = $subject; + $this->resetEnd($endRow); + $this->resetStart($startRow); + } + + /** + * Destructor + */ + public function __destruct() + { + unset($this->subject); + } + + /** + * (Re)Set the start row and the current row pointer + * + * @param integer $startRow The row number at which to start iterating + * @return PHPExcel_Worksheet_RowIterator + * @throws PHPExcel_Exception + */ + public function resetStart($startRow = 1) + { + if ($startRow > $this->subject->getHighestRow()) { + throw new PHPExcel_Exception("Start row ({$startRow}) is beyond highest row ({$this->subject->getHighestRow()})"); + } + + $this->startRow = $startRow; + if ($this->endRow < $this->startRow) { + $this->endRow = $this->startRow; + } + $this->seek($startRow); + + return $this; + } + + /** + * (Re)Set the end row + * + * @param integer $endRow The row number at which to stop iterating + * @return PHPExcel_Worksheet_RowIterator + */ + public function resetEnd($endRow = null) + { + $this->endRow = ($endRow) ? $endRow : $this->subject->getHighestRow(); + + return $this; + } + + /** + * Set the row pointer to the selected row + * + * @param integer $row The row number to set the current pointer at + * @return PHPExcel_Worksheet_RowIterator + * @throws PHPExcel_Exception + */ + public function seek($row = 1) + { + if (($row < $this->startRow) || ($row > $this->endRow)) { + throw new PHPExcel_Exception("Row $row is out of range ({$this->startRow} - {$this->endRow})"); + } + $this->position = $row; + + return $this; + } + + /** + * Rewind the iterator to the starting row + */ + public function rewind() + { + $this->position = $this->startRow; + } + + /** + * Return the current row in this worksheet + * + * @return PHPExcel_Worksheet_Row + */ + public function current() + { + return new PHPExcel_Worksheet_Row($this->subject, $this->position); + } + + /** + * Return the current iterator key + * + * @return int + */ + public function key() + { + return $this->position; + } + + /** + * Set the iterator to its next value + */ + public function next() + { + ++$this->position; + } + + /** + * Set the iterator to its previous value + */ + public function prev() + { + if ($this->position <= $this->startRow) { + throw new PHPExcel_Exception("Row is already at the beginning of range ({$this->startRow} - {$this->endRow})"); + } + + --$this->position; + } + + /** + * Indicate if more rows exist in the worksheet range of rows that we're iterating + * + * @return boolean + */ + public function valid() + { + return $this->position <= $this->endRow; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/SheetView.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/SheetView.php new file mode 100644 index 0000000..5aaef3b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/SheetView.php @@ -0,0 +1,187 @@ +<?php + +/** + * PHPExcel_Worksheet_SheetView + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Worksheet_SheetView +{ + + /* Sheet View types */ + const SHEETVIEW_NORMAL = 'normal'; + const SHEETVIEW_PAGE_LAYOUT = 'pageLayout'; + const SHEETVIEW_PAGE_BREAK_PREVIEW = 'pageBreakPreview'; + + private static $sheetViewTypes = array( + self::SHEETVIEW_NORMAL, + self::SHEETVIEW_PAGE_LAYOUT, + self::SHEETVIEW_PAGE_BREAK_PREVIEW, + ); + + /** + * ZoomScale + * + * Valid values range from 10 to 400. + * + * @var int + */ + private $zoomScale = 100; + + /** + * ZoomScaleNormal + * + * Valid values range from 10 to 400. + * + * @var int + */ + private $zoomScaleNormal = 100; + + /** + * View + * + * Valid values range from 10 to 400. + * + * @var string + */ + private $sheetviewType = self::SHEETVIEW_NORMAL; + + /** + * Create a new PHPExcel_Worksheet_SheetView + */ + public function __construct() + { + } + + /** + * Get ZoomScale + * + * @return int + */ + public function getZoomScale() + { + return $this->zoomScale; + } + + /** + * Set ZoomScale + * + * Valid values range from 10 to 400. + * + * @param int $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_SheetView + */ + public function setZoomScale($pValue = 100) + { + // Microsoft Office Excel 2007 only allows setting a scale between 10 and 400 via the user interface, + // but it is apparently still able to handle any scale >= 1 + if (($pValue >= 1) || is_null($pValue)) { + $this->zoomScale = $pValue; + } else { + throw new PHPExcel_Exception("Scale must be greater than or equal to 1."); + } + return $this; + } + + /** + * Get ZoomScaleNormal + * + * @return int + */ + public function getZoomScaleNormal() + { + return $this->zoomScaleNormal; + } + + /** + * Set ZoomScale + * + * Valid values range from 10 to 400. + * + * @param int $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_SheetView + */ + public function setZoomScaleNormal($pValue = 100) + { + if (($pValue >= 1) || is_null($pValue)) { + $this->zoomScaleNormal = $pValue; + } else { + throw new PHPExcel_Exception("Scale must be greater than or equal to 1."); + } + return $this; + } + + /** + * Get View + * + * @return string + */ + public function getView() + { + return $this->sheetviewType; + } + + /** + * Set View + * + * Valid values are + * 'normal' self::SHEETVIEW_NORMAL + * 'pageLayout' self::SHEETVIEW_PAGE_LAYOUT + * 'pageBreakPreview' self::SHEETVIEW_PAGE_BREAK_PREVIEW + * + * @param string $pValue + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_SheetView + */ + public function setView($pValue = null) + { + // MS Excel 2007 allows setting the view to 'normal', 'pageLayout' or 'pageBreakPreview' via the user interface + if ($pValue === null) { + $pValue = self::SHEETVIEW_NORMAL; + } + if (in_array($pValue, self::$sheetViewTypes)) { + $this->sheetviewType = $pValue; + } else { + throw new PHPExcel_Exception("Invalid sheetview layout type."); + } + + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/_notes/dwsync.xml new file mode 100644 index 0000000..ab3a545 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Worksheet/_notes/dwsync.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="BaseDrawing.php" server="62.244.88.21/deciday/" local="131919461924066315" remote="131880384600000000" Dst="1" /> +<file name="AutoFilter.php" server="62.244.88.21/deciday/" local="131919461924349352" remote="131880384600000000" Dst="1" /> +<file name="CellIterator.php" server="62.244.88.21/deciday/" local="131919461925097228" remote="131880384600000000" Dst="1" /> +<file name="ColumnCellIterator.php" server="62.244.88.21/deciday/" local="131919461925576595" remote="131880384600000000" Dst="1" /> +<file name="ColumnDimension.php" server="62.244.88.21/deciday/" local="131919461926080381" remote="131880384600000000" Dst="1" /> +<file name="Column.php" server="62.244.88.21/deciday/" local="131919461927068330" remote="131880384600000000" Dst="1" /> +<file name="ColumnIterator.php" server="62.244.88.21/deciday/" local="131919461927258708" remote="131880384600000000" Dst="1" /> +<file name="Dimension.php" server="62.244.88.21/deciday/" local="131919461928058028" remote="131880384600000000" Dst="1" /> +<file name="Drawing.php" server="62.244.88.21/deciday/" local="131919461929082658" remote="131880384600000000" Dst="1" /> +<file name="HeaderFooterDrawing.php" server="62.244.88.21/deciday/" local="131919461929892567" remote="131880384600000000" Dst="1" /> +<file name="HeaderFooter.php" server="62.244.88.21/deciday/" local="131919461930373958" remote="131880384600000000" Dst="1" /> +<file name="MemoryDrawing.php" server="62.244.88.21/deciday/" local="131919461931068123" remote="131880384600000000" Dst="1" /> +<file name="PageMargins.php" server="62.244.88.21/deciday/" local="131919461931437637" remote="131880384600000000" Dst="1" /> +<file name="PageSetup.php" server="62.244.88.21/deciday/" local="131919461932709885" remote="131880384600000000" Dst="1" /> +<file name="Protection.php" server="62.244.88.21/deciday/" local="131919461933023354" remote="131880384600000000" Dst="1" /> +<file name="RowCellIterator.php" server="62.244.88.21/deciday/" local="131919461933840502" remote="131880384600000000" Dst="1" /> +<file name="RowDimension.php" server="62.244.88.21/deciday/" local="131919461934025882" remote="131880384600000000" Dst="1" /> +<file name="RowIterator.php" server="62.244.88.21/deciday/" local="131919461934806466" remote="131880384600000000" Dst="1" /> +<file name="Row.php" server="62.244.88.21/deciday/" local="131919461935037605" remote="131880384600000000" Dst="1" /> +<file name="SheetView.php" server="62.244.88.21/deciday/" local="131919461936032458" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/WorksheetIterator.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/WorksheetIterator.php new file mode 100644 index 0000000..cb1b281 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/WorksheetIterator.php @@ -0,0 +1,108 @@ +<?php + +/** + * PHPExcel_WorksheetIterator + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_WorksheetIterator implements Iterator +{ + /** + * Spreadsheet to iterate + * + * @var PHPExcel + */ + private $subject; + + /** + * Current iterator position + * + * @var int + */ + private $position = 0; + + /** + * Create a new worksheet iterator + * + * @param PHPExcel $subject + */ + public function __construct(PHPExcel $subject = null) + { + // Set subject + $this->subject = $subject; + } + + /** + * Destructor + */ + public function __destruct() + { + unset($this->subject); + } + + /** + * Rewind iterator + */ + public function rewind() + { + $this->position = 0; + } + + /** + * Current PHPExcel_Worksheet + * + * @return PHPExcel_Worksheet + */ + public function current() + { + return $this->subject->getSheet($this->position); + } + + /** + * Current key + * + * @return int + */ + public function key() + { + return $this->position; + } + + /** + * Next value + */ + public function next() + { + ++$this->position; + } + + /** + * More PHPExcel_Worksheet instances available? + * + * @return boolean + */ + public function valid() + { + return $this->position < $this->subject->getSheetCount(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Abstract.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Abstract.php new file mode 100644 index 0000000..2a797a9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Abstract.php @@ -0,0 +1,157 @@ +<?php + +/** + * PHPExcel_Writer_Abstract + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +abstract class PHPExcel_Writer_Abstract implements PHPExcel_Writer_IWriter +{ + /** + * Write charts that are defined in the workbook? + * Identifies whether the Writer should write definitions for any charts that exist in the PHPExcel object; + * + * @var boolean + */ + protected $includeCharts = false; + + /** + * Pre-calculate formulas + * Forces PHPExcel to recalculate all formulae in a workbook when saving, so that the pre-calculated values are + * immediately available to MS Excel or other office spreadsheet viewer when opening the file + * + * @var boolean + */ + protected $preCalculateFormulas = true; + + /** + * Use disk caching where possible? + * + * @var boolean + */ + protected $_useDiskCaching = false; + + /** + * Disk caching directory + * + * @var string + */ + protected $_diskCachingDirectory = './'; + + /** + * Write charts in workbook? + * If this is true, then the Writer will write definitions for any charts that exist in the PHPExcel object. + * If false (the default) it will ignore any charts defined in the PHPExcel object. + * + * @return boolean + */ + public function getIncludeCharts() + { + return $this->includeCharts; + } + + /** + * Set write charts in workbook + * Set to true, to advise the Writer to include any charts that exist in the PHPExcel object. + * Set to false (the default) to ignore charts. + * + * @param boolean $pValue + * @return PHPExcel_Writer_IWriter + */ + public function setIncludeCharts($pValue = false) + { + $this->includeCharts = (boolean) $pValue; + return $this; + } + + /** + * Get Pre-Calculate Formulas flag + * If this is true (the default), then the writer will recalculate all formulae in a workbook when saving, + * so that the pre-calculated values are immediately available to MS Excel or other office spreadsheet + * viewer when opening the file + * If false, then formulae are not calculated on save. This is faster for saving in PHPExcel, but slower + * when opening the resulting file in MS Excel, because Excel has to recalculate the formulae itself + * + * @return boolean + */ + public function getPreCalculateFormulas() + { + return $this->preCalculateFormulas; + } + + /** + * Set Pre-Calculate Formulas + * Set to true (the default) to advise the Writer to calculate all formulae on save + * Set to false to prevent precalculation of formulae on save. + * + * @param boolean $pValue Pre-Calculate Formulas? + * @return PHPExcel_Writer_IWriter + */ + public function setPreCalculateFormulas($pValue = true) + { + $this->preCalculateFormulas = (boolean) $pValue; + return $this; + } + + /** + * Get use disk caching where possible? + * + * @return boolean + */ + public function getUseDiskCaching() + { + return $this->_useDiskCaching; + } + + /** + * Set use disk caching where possible? + * + * @param boolean $pValue + * @param string $pDirectory Disk caching directory + * @throws PHPExcel_Writer_Exception when directory does not exist + * @return PHPExcel_Writer_Excel2007 + */ + public function setUseDiskCaching($pValue = false, $pDirectory = null) + { + $this->_useDiskCaching = $pValue; + + if ($pDirectory !== null) { + if (is_dir($pDirectory)) { + $this->_diskCachingDirectory = $pDirectory; + } else { + throw new PHPExcel_Writer_Exception("Directory does not exist: $pDirectory"); + } + } + return $this; + } + + /** + * Get disk caching directory + * + * @return string + */ + public function getDiskCachingDirectory() + { + return $this->_diskCachingDirectory; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/CSV.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/CSV.php new file mode 100644 index 0000000..e59c301 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/CSV.php @@ -0,0 +1,352 @@ +<?php + +/** + * PHPExcel_Writer_CSV + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_CSV + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_CSV extends PHPExcel_Writer_Abstract implements PHPExcel_Writer_IWriter +{ + /** + * PHPExcel object + * + * @var PHPExcel + */ + private $phpExcel; + + /** + * Delimiter + * + * @var string + */ + private $delimiter = ','; + + /** + * Enclosure + * + * @var string + */ + private $enclosure = '"'; + + /** + * Line ending + * + * @var string + */ + private $lineEnding = PHP_EOL; + + /** + * Sheet index to write + * + * @var int + */ + private $sheetIndex = 0; + + /** + * Whether to write a BOM (for UTF8). + * + * @var boolean + */ + private $useBOM = false; + + /** + * Whether to write a Separator line as the first line of the file + * sep=x + * + * @var boolean + */ + private $includeSeparatorLine = false; + + /** + * Whether to write a fully Excel compatible CSV file. + * + * @var boolean + */ + private $excelCompatibility = false; + + /** + * Create a new PHPExcel_Writer_CSV + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) + { + $this->phpExcel = $phpExcel; + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename + * @throws PHPExcel_Writer_Exception + */ + public function save($pFilename = null) + { + // Fetch sheet + $sheet = $this->phpExcel->getSheet($this->sheetIndex); + + $saveDebugLog = PHPExcel_Calculation::getInstance($this->phpExcel)->getDebugLog()->getWriteDebugLog(); + PHPExcel_Calculation::getInstance($this->phpExcel)->getDebugLog()->setWriteDebugLog(false); + $saveArrayReturnType = PHPExcel_Calculation::getArrayReturnType(); + PHPExcel_Calculation::setArrayReturnType(PHPExcel_Calculation::RETURN_ARRAY_AS_VALUE); + + // Open file + $fileHandle = fopen($pFilename, 'wb+'); + if ($fileHandle === false) { + throw new PHPExcel_Writer_Exception("Could not open file $pFilename for writing."); + } + + if ($this->excelCompatibility) { + $this->setUseBOM(true); // Enforce UTF-8 BOM Header + $this->setIncludeSeparatorLine(true); // Set separator line + $this->setEnclosure('"'); // Set enclosure to " + $this->setDelimiter(";"); // Set delimiter to a semi-colon + $this->setLineEnding("\r\n"); + } + if ($this->useBOM) { + // Write the UTF-8 BOM code if required + fwrite($fileHandle, "\xEF\xBB\xBF"); + } + if ($this->includeSeparatorLine) { + // Write the separator line if required + fwrite($fileHandle, 'sep=' . $this->getDelimiter() . $this->lineEnding); + } + + // Identify the range that we need to extract from the worksheet + $maxCol = $sheet->getHighestDataColumn(); + $maxRow = $sheet->getHighestDataRow(); + + // Write rows to file + for ($row = 1; $row <= $maxRow; ++$row) { + // Convert the row to an array... + $cellsArray = $sheet->rangeToArray('A'.$row.':'.$maxCol.$row, '', $this->preCalculateFormulas); + // ... and write to the file + $this->writeLine($fileHandle, $cellsArray[0]); + } + + // Close file + fclose($fileHandle); + + PHPExcel_Calculation::setArrayReturnType($saveArrayReturnType); + PHPExcel_Calculation::getInstance($this->phpExcel)->getDebugLog()->setWriteDebugLog($saveDebugLog); + } + + /** + * Get delimiter + * + * @return string + */ + public function getDelimiter() + { + return $this->delimiter; + } + + /** + * Set delimiter + * + * @param string $pValue Delimiter, defaults to , + * @return PHPExcel_Writer_CSV + */ + public function setDelimiter($pValue = ',') + { + $this->delimiter = $pValue; + return $this; + } + + /** + * Get enclosure + * + * @return string + */ + public function getEnclosure() + { + return $this->enclosure; + } + + /** + * Set enclosure + * + * @param string $pValue Enclosure, defaults to " + * @return PHPExcel_Writer_CSV + */ + public function setEnclosure($pValue = '"') + { + if ($pValue == '') { + $pValue = null; + } + $this->enclosure = $pValue; + return $this; + } + + /** + * Get line ending + * + * @return string + */ + public function getLineEnding() + { + return $this->lineEnding; + } + + /** + * Set line ending + * + * @param string $pValue Line ending, defaults to OS line ending (PHP_EOL) + * @return PHPExcel_Writer_CSV + */ + public function setLineEnding($pValue = PHP_EOL) + { + $this->lineEnding = $pValue; + return $this; + } + + /** + * Get whether BOM should be used + * + * @return boolean + */ + public function getUseBOM() + { + return $this->useBOM; + } + + /** + * Set whether BOM should be used + * + * @param boolean $pValue Use UTF-8 byte-order mark? Defaults to false + * @return PHPExcel_Writer_CSV + */ + public function setUseBOM($pValue = false) + { + $this->useBOM = $pValue; + return $this; + } + + /** + * Get whether a separator line should be included + * + * @return boolean + */ + public function getIncludeSeparatorLine() + { + return $this->includeSeparatorLine; + } + + /** + * Set whether a separator line should be included as the first line of the file + * + * @param boolean $pValue Use separator line? Defaults to false + * @return PHPExcel_Writer_CSV + */ + public function setIncludeSeparatorLine($pValue = false) + { + $this->includeSeparatorLine = $pValue; + return $this; + } + + /** + * Get whether the file should be saved with full Excel Compatibility + * + * @return boolean + */ + public function getExcelCompatibility() + { + return $this->excelCompatibility; + } + + /** + * Set whether the file should be saved with full Excel Compatibility + * + * @param boolean $pValue Set the file to be written as a fully Excel compatible csv file + * Note that this overrides other settings such as useBOM, enclosure and delimiter + * @return PHPExcel_Writer_CSV + */ + public function setExcelCompatibility($pValue = false) + { + $this->excelCompatibility = $pValue; + return $this; + } + + /** + * Get sheet index + * + * @return int + */ + public function getSheetIndex() + { + return $this->sheetIndex; + } + + /** + * Set sheet index + * + * @param int $pValue Sheet index + * @return PHPExcel_Writer_CSV + */ + public function setSheetIndex($pValue = 0) + { + $this->sheetIndex = $pValue; + return $this; + } + + /** + * Write line to CSV file + * + * @param mixed $pFileHandle PHP filehandle + * @param array $pValues Array containing values in a row + * @throws PHPExcel_Writer_Exception + */ + private function writeLine($pFileHandle = null, $pValues = null) + { + if (is_array($pValues)) { + // No leading delimiter + $writeDelimiter = false; + + // Build the line + $line = ''; + + foreach ($pValues as $element) { + // Escape enclosures + $element = str_replace($this->enclosure, $this->enclosure . $this->enclosure, $element); + + // Add delimiter + if ($writeDelimiter) { + $line .= $this->delimiter; + } else { + $writeDelimiter = true; + } + + // Add enclosed string + $line .= $this->enclosure . $element . $this->enclosure; + } + + // Add line ending + $line .= $this->lineEnding; + + // Write to file + fwrite($pFileHandle, $line); + } else { + throw new PHPExcel_Writer_Exception("Invalid data row passed to CSV writer."); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007.php new file mode 100644 index 0000000..11d354b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007.php @@ -0,0 +1,533 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007 + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007 extends PHPExcel_Writer_Abstract implements PHPExcel_Writer_IWriter +{ + /** + * Pre-calculate formulas + * Forces PHPExcel to recalculate all formulae in a workbook when saving, so that the pre-calculated values are + * immediately available to MS Excel or other office spreadsheet viewer when opening the file + * + * Overrides the default TRUE for this specific writer for performance reasons + * + * @var boolean + */ + protected $preCalculateFormulas = false; + + /** + * Office2003 compatibility + * + * @var boolean + */ + private $office2003compatibility = false; + + /** + * Private writer parts + * + * @var PHPExcel_Writer_Excel2007_WriterPart[] + */ + private $writerParts = array(); + + /** + * Private PHPExcel + * + * @var PHPExcel + */ + private $spreadSheet; + + /** + * Private string table + * + * @var string[] + */ + private $stringTable = array(); + + /** + * Private unique PHPExcel_Style_Conditional HashTable + * + * @var PHPExcel_HashTable + */ + private $stylesConditionalHashTable; + + /** + * Private unique PHPExcel_Style HashTable + * + * @var PHPExcel_HashTable + */ + private $styleHashTable; + + /** + * Private unique PHPExcel_Style_Fill HashTable + * + * @var PHPExcel_HashTable + */ + private $fillHashTable; + + /** + * Private unique PHPExcel_Style_Font HashTable + * + * @var PHPExcel_HashTable + */ + private $fontHashTable; + + /** + * Private unique PHPExcel_Style_Borders HashTable + * + * @var PHPExcel_HashTable + */ + private $bordersHashTable ; + + /** + * Private unique PHPExcel_Style_NumberFormat HashTable + * + * @var PHPExcel_HashTable + */ + private $numFmtHashTable; + + /** + * Private unique PHPExcel_Worksheet_BaseDrawing HashTable + * + * @var PHPExcel_HashTable + */ + private $drawingHashTable; + + /** + * Create a new PHPExcel_Writer_Excel2007 + * + * @param PHPExcel $pPHPExcel + */ + public function __construct(PHPExcel $pPHPExcel = null) + { + // Assign PHPExcel + $this->setPHPExcel($pPHPExcel); + + $writerPartsArray = array( 'stringtable' => 'PHPExcel_Writer_Excel2007_StringTable', + 'contenttypes' => 'PHPExcel_Writer_Excel2007_ContentTypes', + 'docprops' => 'PHPExcel_Writer_Excel2007_DocProps', + 'rels' => 'PHPExcel_Writer_Excel2007_Rels', + 'theme' => 'PHPExcel_Writer_Excel2007_Theme', + 'style' => 'PHPExcel_Writer_Excel2007_Style', + 'workbook' => 'PHPExcel_Writer_Excel2007_Workbook', + 'worksheet' => 'PHPExcel_Writer_Excel2007_Worksheet', + 'drawing' => 'PHPExcel_Writer_Excel2007_Drawing', + 'comments' => 'PHPExcel_Writer_Excel2007_Comments', + 'chart' => 'PHPExcel_Writer_Excel2007_Chart', + 'relsvba' => 'PHPExcel_Writer_Excel2007_RelsVBA', + 'relsribbonobjects' => 'PHPExcel_Writer_Excel2007_RelsRibbon' + ); + + // Initialise writer parts + // and Assign their parent IWriters + foreach ($writerPartsArray as $writer => $class) { + $this->writerParts[$writer] = new $class($this); + } + + $hashTablesArray = array( 'stylesConditionalHashTable', 'fillHashTable', 'fontHashTable', + 'bordersHashTable', 'numFmtHashTable', 'drawingHashTable', + 'styleHashTable' + ); + + // Set HashTable variables + foreach ($hashTablesArray as $tableName) { + $this->$tableName = new PHPExcel_HashTable(); + } + } + + /** + * Get writer part + * + * @param string $pPartName Writer part name + * @return PHPExcel_Writer_Excel2007_WriterPart + */ + public function getWriterPart($pPartName = '') + { + if ($pPartName != '' && isset($this->writerParts[strtolower($pPartName)])) { + return $this->writerParts[strtolower($pPartName)]; + } else { + return null; + } + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename + * @throws PHPExcel_Writer_Exception + */ + public function save($pFilename = null) + { + if ($this->spreadSheet !== null) { + // garbage collect + $this->spreadSheet->garbageCollect(); + + // If $pFilename is php://output or php://stdout, make it a temporary file... + $originalFilename = $pFilename; + if (strtolower($pFilename) == 'php://output' || strtolower($pFilename) == 'php://stdout') { + $pFilename = @tempnam(PHPExcel_Shared_File::sys_get_temp_dir(), 'phpxltmp'); + if ($pFilename == '') { + $pFilename = $originalFilename; + } + } + + $saveDebugLog = PHPExcel_Calculation::getInstance($this->spreadSheet)->getDebugLog()->getWriteDebugLog(); + PHPExcel_Calculation::getInstance($this->spreadSheet)->getDebugLog()->setWriteDebugLog(false); + $saveDateReturnType = PHPExcel_Calculation_Functions::getReturnDateType(); + PHPExcel_Calculation_Functions::setReturnDateType(PHPExcel_Calculation_Functions::RETURNDATE_EXCEL); + + // Create string lookup table + $this->stringTable = array(); + for ($i = 0; $i < $this->spreadSheet->getSheetCount(); ++$i) { + $this->stringTable = $this->getWriterPart('StringTable')->createStringTable($this->spreadSheet->getSheet($i), $this->stringTable); + } + + // Create styles dictionaries + $this->styleHashTable->addFromSource($this->getWriterPart('Style')->allStyles($this->spreadSheet)); + $this->stylesConditionalHashTable->addFromSource($this->getWriterPart('Style')->allConditionalStyles($this->spreadSheet)); + $this->fillHashTable->addFromSource($this->getWriterPart('Style')->allFills($this->spreadSheet)); + $this->fontHashTable->addFromSource($this->getWriterPart('Style')->allFonts($this->spreadSheet)); + $this->bordersHashTable->addFromSource($this->getWriterPart('Style')->allBorders($this->spreadSheet)); + $this->numFmtHashTable->addFromSource($this->getWriterPart('Style')->allNumberFormats($this->spreadSheet)); + + // Create drawing dictionary + $this->drawingHashTable->addFromSource($this->getWriterPart('Drawing')->allDrawings($this->spreadSheet)); + + // Create new ZIP file and open it for writing + $zipClass = PHPExcel_Settings::getZipClass(); + $objZip = new $zipClass(); + + // Retrieve OVERWRITE and CREATE constants from the instantiated zip class + // This method of accessing constant values from a dynamic class should work with all appropriate versions of PHP + $ro = new ReflectionObject($objZip); + $zipOverWrite = $ro->getConstant('OVERWRITE'); + $zipCreate = $ro->getConstant('CREATE'); + + if (file_exists($pFilename)) { + unlink($pFilename); + } + // Try opening the ZIP file + if ($objZip->open($pFilename, $zipOverWrite) !== true) { + if ($objZip->open($pFilename, $zipCreate) !== true) { + throw new PHPExcel_Writer_Exception("Could not open " . $pFilename . " for writing."); + } + } + + // Add [Content_Types].xml to ZIP file + $objZip->addFromString('[Content_Types].xml', $this->getWriterPart('ContentTypes')->writeContentTypes($this->spreadSheet, $this->includeCharts)); + + //if hasMacros, add the vbaProject.bin file, Certificate file(if exists) + if ($this->spreadSheet->hasMacros()) { + $macrosCode=$this->spreadSheet->getMacrosCode(); + if (!is_null($macrosCode)) {// we have the code ? + $objZip->addFromString('xl/vbaProject.bin', $macrosCode);//allways in 'xl', allways named vbaProject.bin + if ($this->spreadSheet->hasMacrosCertificate()) {//signed macros ? + // Yes : add the certificate file and the related rels file + $objZip->addFromString('xl/vbaProjectSignature.bin', $this->spreadSheet->getMacrosCertificate()); + $objZip->addFromString('xl/_rels/vbaProject.bin.rels', $this->getWriterPart('RelsVBA')->writeVBARelationships($this->spreadSheet)); + } + } + } + //a custom UI in this workbook ? add it ("base" xml and additional objects (pictures) and rels) + if ($this->spreadSheet->hasRibbon()) { + $tmpRibbonTarget=$this->spreadSheet->getRibbonXMLData('target'); + $objZip->addFromString($tmpRibbonTarget, $this->spreadSheet->getRibbonXMLData('data')); + if ($this->spreadSheet->hasRibbonBinObjects()) { + $tmpRootPath=dirname($tmpRibbonTarget).'/'; + $ribbonBinObjects=$this->spreadSheet->getRibbonBinObjects('data');//the files to write + foreach ($ribbonBinObjects as $aPath => $aContent) { + $objZip->addFromString($tmpRootPath.$aPath, $aContent); + } + //the rels for files + $objZip->addFromString($tmpRootPath.'_rels/'.basename($tmpRibbonTarget).'.rels', $this->getWriterPart('RelsRibbonObjects')->writeRibbonRelationships($this->spreadSheet)); + } + } + + // Add relationships to ZIP file + $objZip->addFromString('_rels/.rels', $this->getWriterPart('Rels')->writeRelationships($this->spreadSheet)); + $objZip->addFromString('xl/_rels/workbook.xml.rels', $this->getWriterPart('Rels')->writeWorkbookRelationships($this->spreadSheet)); + + // Add document properties to ZIP file + $objZip->addFromString('docProps/app.xml', $this->getWriterPart('DocProps')->writeDocPropsApp($this->spreadSheet)); + $objZip->addFromString('docProps/core.xml', $this->getWriterPart('DocProps')->writeDocPropsCore($this->spreadSheet)); + $customPropertiesPart = $this->getWriterPart('DocProps')->writeDocPropsCustom($this->spreadSheet); + if ($customPropertiesPart !== null) { + $objZip->addFromString('docProps/custom.xml', $customPropertiesPart); + } + + // Add theme to ZIP file + $objZip->addFromString('xl/theme/theme1.xml', $this->getWriterPart('Theme')->writeTheme($this->spreadSheet)); + + // Add string table to ZIP file + $objZip->addFromString('xl/sharedStrings.xml', $this->getWriterPart('StringTable')->writeStringTable($this->stringTable)); + + // Add styles to ZIP file + $objZip->addFromString('xl/styles.xml', $this->getWriterPart('Style')->writeStyles($this->spreadSheet)); + + // Add workbook to ZIP file + $objZip->addFromString('xl/workbook.xml', $this->getWriterPart('Workbook')->writeWorkbook($this->spreadSheet, $this->preCalculateFormulas)); + + $chartCount = 0; + // Add worksheets + for ($i = 0; $i < $this->spreadSheet->getSheetCount(); ++$i) { + $objZip->addFromString('xl/worksheets/sheet' . ($i + 1) . '.xml', $this->getWriterPart('Worksheet')->writeWorksheet($this->spreadSheet->getSheet($i), $this->stringTable, $this->includeCharts)); + if ($this->includeCharts) { + $charts = $this->spreadSheet->getSheet($i)->getChartCollection(); + if (count($charts) > 0) { + foreach ($charts as $chart) { + $objZip->addFromString('xl/charts/chart' . ($chartCount + 1) . '.xml', $this->getWriterPart('Chart')->writeChart($chart, $this->preCalculateFormulas)); + $chartCount++; + } + } + } + } + + $chartRef1 = $chartRef2 = 0; + // Add worksheet relationships (drawings, ...) + for ($i = 0; $i < $this->spreadSheet->getSheetCount(); ++$i) { + // Add relationships + $objZip->addFromString('xl/worksheets/_rels/sheet' . ($i + 1) . '.xml.rels', $this->getWriterPart('Rels')->writeWorksheetRelationships($this->spreadSheet->getSheet($i), ($i + 1), $this->includeCharts)); + + $drawings = $this->spreadSheet->getSheet($i)->getDrawingCollection(); + $drawingCount = count($drawings); + if ($this->includeCharts) { + $chartCount = $this->spreadSheet->getSheet($i)->getChartCount(); + } + + // Add drawing and image relationship parts + if (($drawingCount > 0) || ($chartCount > 0)) { + // Drawing relationships + $objZip->addFromString('xl/drawings/_rels/drawing' . ($i + 1) . '.xml.rels', $this->getWriterPart('Rels')->writeDrawingRelationships($this->spreadSheet->getSheet($i), $chartRef1, $this->includeCharts)); + + // Drawings + $objZip->addFromString('xl/drawings/drawing' . ($i + 1) . '.xml', $this->getWriterPart('Drawing')->writeDrawings($this->spreadSheet->getSheet($i), $chartRef2, $this->includeCharts)); + } + + // Add comment relationship parts + if (count($this->spreadSheet->getSheet($i)->getComments()) > 0) { + // VML Comments + $objZip->addFromString('xl/drawings/vmlDrawing' . ($i + 1) . '.vml', $this->getWriterPart('Comments')->writeVMLComments($this->spreadSheet->getSheet($i))); + + // Comments + $objZip->addFromString('xl/comments' . ($i + 1) . '.xml', $this->getWriterPart('Comments')->writeComments($this->spreadSheet->getSheet($i))); + } + + // Add header/footer relationship parts + if (count($this->spreadSheet->getSheet($i)->getHeaderFooter()->getImages()) > 0) { + // VML Drawings + $objZip->addFromString('xl/drawings/vmlDrawingHF' . ($i + 1) . '.vml', $this->getWriterPart('Drawing')->writeVMLHeaderFooterImages($this->spreadSheet->getSheet($i))); + + // VML Drawing relationships + $objZip->addFromString('xl/drawings/_rels/vmlDrawingHF' . ($i + 1) . '.vml.rels', $this->getWriterPart('Rels')->writeHeaderFooterDrawingRelationships($this->spreadSheet->getSheet($i))); + + // Media + foreach ($this->spreadSheet->getSheet($i)->getHeaderFooter()->getImages() as $image) { + $objZip->addFromString('xl/media/' . $image->getIndexedFilename(), file_get_contents($image->getPath())); + } + } + } + + // Add media + for ($i = 0; $i < $this->getDrawingHashTable()->count(); ++$i) { + if ($this->getDrawingHashTable()->getByIndex($i) instanceof PHPExcel_Worksheet_Drawing) { + $imageContents = null; + $imagePath = $this->getDrawingHashTable()->getByIndex($i)->getPath(); + if (strpos($imagePath, 'zip://') !== false) { + $imagePath = substr($imagePath, 6); + $imagePathSplitted = explode('#', $imagePath); + + $imageZip = new ZipArchive(); + $imageZip->open($imagePathSplitted[0]); + $imageContents = $imageZip->getFromName($imagePathSplitted[1]); + $imageZip->close(); + unset($imageZip); + } else { + $imageContents = file_get_contents($imagePath); + } + + $objZip->addFromString('xl/media/' . str_replace(' ', '_', $this->getDrawingHashTable()->getByIndex($i)->getIndexedFilename()), $imageContents); + } elseif ($this->getDrawingHashTable()->getByIndex($i) instanceof PHPExcel_Worksheet_MemoryDrawing) { + ob_start(); + call_user_func( + $this->getDrawingHashTable()->getByIndex($i)->getRenderingFunction(), + $this->getDrawingHashTable()->getByIndex($i)->getImageResource() + ); + $imageContents = ob_get_contents(); + ob_end_clean(); + + $objZip->addFromString('xl/media/' . str_replace(' ', '_', $this->getDrawingHashTable()->getByIndex($i)->getIndexedFilename()), $imageContents); + } + } + + PHPExcel_Calculation_Functions::setReturnDateType($saveDateReturnType); + PHPExcel_Calculation::getInstance($this->spreadSheet)->getDebugLog()->setWriteDebugLog($saveDebugLog); + + // Close file + if ($objZip->close() === false) { + throw new PHPExcel_Writer_Exception("Could not close zip file $pFilename."); + } + + // If a temporary file was used, copy it to the correct file stream + if ($originalFilename != $pFilename) { + if (copy($pFilename, $originalFilename) === false) { + throw new PHPExcel_Writer_Exception("Could not copy temporary zip file $pFilename to $originalFilename."); + } + @unlink($pFilename); + } + } else { + throw new PHPExcel_Writer_Exception("PHPExcel object unassigned."); + } + } + + /** + * Get PHPExcel object + * + * @return PHPExcel + * @throws PHPExcel_Writer_Exception + */ + public function getPHPExcel() + { + if ($this->spreadSheet !== null) { + return $this->spreadSheet; + } else { + throw new PHPExcel_Writer_Exception("No PHPExcel object assigned."); + } + } + + /** + * Set PHPExcel object + * + * @param PHPExcel $pPHPExcel PHPExcel object + * @throws PHPExcel_Writer_Exception + * @return PHPExcel_Writer_Excel2007 + */ + public function setPHPExcel(PHPExcel $pPHPExcel = null) + { + $this->spreadSheet = $pPHPExcel; + return $this; + } + + /** + * Get string table + * + * @return string[] + */ + public function getStringTable() + { + return $this->stringTable; + } + + /** + * Get PHPExcel_Style HashTable + * + * @return PHPExcel_HashTable + */ + public function getStyleHashTable() + { + return $this->styleHashTable; + } + + /** + * Get PHPExcel_Style_Conditional HashTable + * + * @return PHPExcel_HashTable + */ + public function getStylesConditionalHashTable() + { + return $this->stylesConditionalHashTable; + } + + /** + * Get PHPExcel_Style_Fill HashTable + * + * @return PHPExcel_HashTable + */ + public function getFillHashTable() + { + return $this->fillHashTable; + } + + /** + * Get PHPExcel_Style_Font HashTable + * + * @return PHPExcel_HashTable + */ + public function getFontHashTable() + { + return $this->fontHashTable; + } + + /** + * Get PHPExcel_Style_Borders HashTable + * + * @return PHPExcel_HashTable + */ + public function getBordersHashTable() + { + return $this->bordersHashTable; + } + + /** + * Get PHPExcel_Style_NumberFormat HashTable + * + * @return PHPExcel_HashTable + */ + public function getNumFmtHashTable() + { + return $this->numFmtHashTable; + } + + /** + * Get PHPExcel_Worksheet_BaseDrawing HashTable + * + * @return PHPExcel_HashTable + */ + public function getDrawingHashTable() + { + return $this->drawingHashTable; + } + + /** + * Get Office2003 compatibility + * + * @return boolean + */ + public function getOffice2003Compatibility() + { + return $this->office2003compatibility; + } + + /** + * Set Office2003 compatibility + * + * @param boolean $pValue Office2003 compatibility? + * @return PHPExcel_Writer_Excel2007 + */ + public function setOffice2003Compatibility($pValue = false) + { + $this->office2003compatibility = $pValue; + return $this; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Chart.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Chart.php new file mode 100644 index 0000000..92fa215 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Chart.php @@ -0,0 +1,1520 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_Chart + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007_Chart extends PHPExcel_Writer_Excel2007_WriterPart +{ + protected $calculateCellValues; + + /** + * Write charts to XML format + * + * @param PHPExcel_Chart $pChart + * + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeChart(PHPExcel_Chart $pChart = null, $calculateCellValues = true) + { + $this->calculateCellValues = $calculateCellValues; + + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + // Ensure that data series values are up-to-date before we save + if ($this->calculateCellValues) { + $pChart->refresh(); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // c:chartSpace + $objWriter->startElement('c:chartSpace'); + $objWriter->writeAttribute('xmlns:c', 'http://schemas.openxmlformats.org/drawingml/2006/chart'); + $objWriter->writeAttribute('xmlns:a', 'http://schemas.openxmlformats.org/drawingml/2006/main'); + $objWriter->writeAttribute('xmlns:r', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + + $objWriter->startElement('c:date1904'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + $objWriter->startElement('c:lang'); + $objWriter->writeAttribute('val', "en-GB"); + $objWriter->endElement(); + $objWriter->startElement('c:roundedCorners'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $this->writeAlternateContent($objWriter); + + $objWriter->startElement('c:chart'); + + $this->writeTitle($pChart->getTitle(), $objWriter); + + $objWriter->startElement('c:autoTitleDeleted'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $this->writePlotArea($pChart->getPlotArea(), $pChart->getXAxisLabel(), $pChart->getYAxisLabel(), $objWriter, $pChart->getWorksheet(), $pChart->getChartAxisX(), $pChart->getChartAxisY(), $pChart->getMajorGridlines(), $pChart->getMinorGridlines()); + + $this->writeLegend($pChart->getLegend(), $objWriter); + + $objWriter->startElement('c:plotVisOnly'); + $objWriter->writeAttribute('val', 1); + $objWriter->endElement(); + + $objWriter->startElement('c:dispBlanksAs'); + $objWriter->writeAttribute('val', "gap"); + $objWriter->endElement(); + + $objWriter->startElement('c:showDLblsOverMax'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->endElement(); + + $this->writePrintSettings($objWriter); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write Chart Title + * + * @param PHPExcel_Chart_Title $title + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * + * @throws PHPExcel_Writer_Exception + */ + private function writeTitle(PHPExcel_Chart_Title $title = null, $objWriter) + { + if (is_null($title)) { + return; + } + + $objWriter->startElement('c:title'); + $objWriter->startElement('c:tx'); + $objWriter->startElement('c:rich'); + + $objWriter->startElement('a:bodyPr'); + $objWriter->endElement(); + + $objWriter->startElement('a:lstStyle'); + $objWriter->endElement(); + + $objWriter->startElement('a:p'); + + $caption = $title->getCaption(); + if ((is_array($caption)) && (count($caption) > 0)) { + $caption = $caption[0]; + } + $this->getParentWriter()->getWriterPart('stringtable')->writeRichTextForCharts($objWriter, $caption, 'a'); + + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + $this->writeLayout($title->getLayout(), $objWriter); + + $objWriter->startElement('c:overlay'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Chart Legend + * + * @param PHPExcel_Chart_Legend $legend + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * + * @throws PHPExcel_Writer_Exception + */ + private function writeLegend(PHPExcel_Chart_Legend $legend = null, $objWriter) + { + if (is_null($legend)) { + return; + } + + $objWriter->startElement('c:legend'); + + $objWriter->startElement('c:legendPos'); + $objWriter->writeAttribute('val', $legend->getPosition()); + $objWriter->endElement(); + + $this->writeLayout($legend->getLayout(), $objWriter); + + $objWriter->startElement('c:overlay'); + $objWriter->writeAttribute('val', ($legend->getOverlay()) ? '1' : '0'); + $objWriter->endElement(); + + $objWriter->startElement('c:txPr'); + $objWriter->startElement('a:bodyPr'); + $objWriter->endElement(); + + $objWriter->startElement('a:lstStyle'); + $objWriter->endElement(); + + $objWriter->startElement('a:p'); + $objWriter->startElement('a:pPr'); + $objWriter->writeAttribute('rtl', 0); + + $objWriter->startElement('a:defRPr'); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('a:endParaRPr'); + $objWriter->writeAttribute('lang', "en-US"); + $objWriter->endElement(); + + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Chart Plot Area + * + * @param PHPExcel_Chart_PlotArea $plotArea + * @param PHPExcel_Chart_Title $xAxisLabel + * @param PHPExcel_Chart_Title $yAxisLabel + * @param PHPExcel_Chart_Axis $xAxis + * @param PHPExcel_Chart_Axis $yAxis + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * + * @throws PHPExcel_Writer_Exception + */ + private function writePlotArea(PHPExcel_Chart_PlotArea $plotArea, PHPExcel_Chart_Title $xAxisLabel = null, PHPExcel_Chart_Title $yAxisLabel = null, $objWriter, PHPExcel_Worksheet $pSheet, PHPExcel_Chart_Axis $xAxis, PHPExcel_Chart_Axis $yAxis, PHPExcel_Chart_GridLines $majorGridlines, PHPExcel_Chart_GridLines $minorGridlines) + { + if (is_null($plotArea)) { + return; + } + + $id1 = $id2 = 0; + $this->_seriesIndex = 0; + $objWriter->startElement('c:plotArea'); + + $layout = $plotArea->getLayout(); + + $this->writeLayout($layout, $objWriter); + + $chartTypes = self::getChartType($plotArea); + $catIsMultiLevelSeries = $valIsMultiLevelSeries = false; + $plotGroupingType = ''; + foreach ($chartTypes as $chartType) { + $objWriter->startElement('c:' . $chartType); + + $groupCount = $plotArea->getPlotGroupCount(); + for ($i = 0; $i < $groupCount; ++$i) { + $plotGroup = $plotArea->getPlotGroupByIndex($i); + $groupType = $plotGroup->getPlotType(); + if ($groupType == $chartType) { + $plotStyle = $plotGroup->getPlotStyle(); + if ($groupType === PHPExcel_Chart_DataSeries::TYPE_RADARCHART) { + $objWriter->startElement('c:radarStyle'); + $objWriter->writeAttribute('val', $plotStyle); + $objWriter->endElement(); + } elseif ($groupType === PHPExcel_Chart_DataSeries::TYPE_SCATTERCHART) { + $objWriter->startElement('c:scatterStyle'); + $objWriter->writeAttribute('val', $plotStyle); + $objWriter->endElement(); + } + + $this->writePlotGroup($plotGroup, $chartType, $objWriter, $catIsMultiLevelSeries, $valIsMultiLevelSeries, $plotGroupingType, $pSheet); + } + } + + $this->writeDataLabels($objWriter, $layout); + + if ($chartType === PHPExcel_Chart_DataSeries::TYPE_LINECHART) { + // Line only, Line3D can't be smoothed + + $objWriter->startElement('c:smooth'); + $objWriter->writeAttribute('val', (integer) $plotGroup->getSmoothLine()); + $objWriter->endElement(); + } elseif (($chartType === PHPExcel_Chart_DataSeries::TYPE_BARCHART) ||($chartType === PHPExcel_Chart_DataSeries::TYPE_BARCHART_3D)) { + $objWriter->startElement('c:gapWidth'); + $objWriter->writeAttribute('val', 150); + $objWriter->endElement(); + + if ($plotGroupingType == 'percentStacked' || $plotGroupingType == 'stacked') { + $objWriter->startElement('c:overlap'); + $objWriter->writeAttribute('val', 100); + $objWriter->endElement(); + } + } elseif ($chartType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) { + $objWriter->startElement('c:bubbleScale'); + $objWriter->writeAttribute('val', 25); + $objWriter->endElement(); + + $objWriter->startElement('c:showNegBubbles'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + } elseif ($chartType === PHPExcel_Chart_DataSeries::TYPE_STOCKCHART) { + $objWriter->startElement('c:hiLowLines'); + $objWriter->endElement(); + + $objWriter->startElement('c:upDownBars'); + + $objWriter->startElement('c:gapWidth'); + $objWriter->writeAttribute('val', 300); + $objWriter->endElement(); + + $objWriter->startElement('c:upBars'); + $objWriter->endElement(); + + $objWriter->startElement('c:downBars'); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + // Generate 2 unique numbers to use for axId values + // $id1 = $id2 = rand(10000000,99999999); + // do { + // $id2 = rand(10000000,99999999); + // } while ($id1 == $id2); + $id1 = '75091328'; + $id2 = '75089408'; + + if (($chartType !== PHPExcel_Chart_DataSeries::TYPE_PIECHART) && ($chartType !== PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) && ($chartType !== PHPExcel_Chart_DataSeries::TYPE_DONUTCHART)) { + $objWriter->startElement('c:axId'); + $objWriter->writeAttribute('val', $id1); + $objWriter->endElement(); + $objWriter->startElement('c:axId'); + $objWriter->writeAttribute('val', $id2); + $objWriter->endElement(); + } else { + $objWriter->startElement('c:firstSliceAng'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + if ($chartType === PHPExcel_Chart_DataSeries::TYPE_DONUTCHART) { + $objWriter->startElement('c:holeSize'); + $objWriter->writeAttribute('val', 50); + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + } + + if (($chartType !== PHPExcel_Chart_DataSeries::TYPE_PIECHART) && ($chartType !== PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) && ($chartType !== PHPExcel_Chart_DataSeries::TYPE_DONUTCHART)) { + if ($chartType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) { + $this->writeValueAxis($objWriter, $plotArea, $xAxisLabel, $chartType, $id1, $id2, $catIsMultiLevelSeries, $xAxis, $yAxis, $majorGridlines, $minorGridlines); + } else { + $this->writeCategoryAxis($objWriter, $plotArea, $xAxisLabel, $chartType, $id1, $id2, $catIsMultiLevelSeries, $xAxis, $yAxis); + } + + $this->writeValueAxis($objWriter, $plotArea, $yAxisLabel, $chartType, $id1, $id2, $valIsMultiLevelSeries, $xAxis, $yAxis, $majorGridlines, $minorGridlines); + } + + $objWriter->endElement(); + } + + /** + * Write Data Labels + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Chart_Layout $chartLayout Chart layout + * + * @throws PHPExcel_Writer_Exception + */ + private function writeDataLabels($objWriter, $chartLayout) + { + $objWriter->startElement('c:dLbls'); + + $objWriter->startElement('c:showLegendKey'); + $showLegendKey = (empty($chartLayout)) ? 0 : $chartLayout->getShowLegendKey(); + $objWriter->writeAttribute('val', ((empty($showLegendKey)) ? 0 : 1)); + $objWriter->endElement(); + + $objWriter->startElement('c:showVal'); + $showVal = (empty($chartLayout)) ? 0 : $chartLayout->getShowVal(); + $objWriter->writeAttribute('val', ((empty($showVal)) ? 0 : 1)); + $objWriter->endElement(); + + $objWriter->startElement('c:showCatName'); + $showCatName = (empty($chartLayout)) ? 0 : $chartLayout->getShowCatName(); + $objWriter->writeAttribute('val', ((empty($showCatName)) ? 0 : 1)); + $objWriter->endElement(); + + $objWriter->startElement('c:showSerName'); + $showSerName = (empty($chartLayout)) ? 0 : $chartLayout->getShowSerName(); + $objWriter->writeAttribute('val', ((empty($showSerName)) ? 0 : 1)); + $objWriter->endElement(); + + $objWriter->startElement('c:showPercent'); + $showPercent = (empty($chartLayout)) ? 0 : $chartLayout->getShowPercent(); + $objWriter->writeAttribute('val', ((empty($showPercent)) ? 0 : 1)); + $objWriter->endElement(); + + $objWriter->startElement('c:showBubbleSize'); + $showBubbleSize = (empty($chartLayout)) ? 0 : $chartLayout->getShowBubbleSize(); + $objWriter->writeAttribute('val', ((empty($showBubbleSize)) ? 0 : 1)); + $objWriter->endElement(); + + $objWriter->startElement('c:showLeaderLines'); + $showLeaderLines = (empty($chartLayout)) ? 1 : $chartLayout->getShowLeaderLines(); + $objWriter->writeAttribute('val', ((empty($showLeaderLines)) ? 0 : 1)); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Category Axis + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Chart_PlotArea $plotArea + * @param PHPExcel_Chart_Title $xAxisLabel + * @param string $groupType Chart type + * @param string $id1 + * @param string $id2 + * @param boolean $isMultiLevelSeries + * + * @throws PHPExcel_Writer_Exception + */ + private function writeCategoryAxis($objWriter, PHPExcel_Chart_PlotArea $plotArea, $xAxisLabel, $groupType, $id1, $id2, $isMultiLevelSeries, $xAxis, $yAxis) + { + $objWriter->startElement('c:catAx'); + + if ($id1 > 0) { + $objWriter->startElement('c:axId'); + $objWriter->writeAttribute('val', $id1); + $objWriter->endElement(); + } + + $objWriter->startElement('c:scaling'); + $objWriter->startElement('c:orientation'); + $objWriter->writeAttribute('val', $yAxis->getAxisOptionsProperty('orientation')); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('c:delete'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->startElement('c:axPos'); + $objWriter->writeAttribute('val', "b"); + $objWriter->endElement(); + + if (!is_null($xAxisLabel)) { + $objWriter->startElement('c:title'); + $objWriter->startElement('c:tx'); + $objWriter->startElement('c:rich'); + + $objWriter->startElement('a:bodyPr'); + $objWriter->endElement(); + + $objWriter->startElement('a:lstStyle'); + $objWriter->endElement(); + + $objWriter->startElement('a:p'); + $objWriter->startElement('a:r'); + + $caption = $xAxisLabel->getCaption(); + if (is_array($caption)) { + $caption = $caption[0]; + } + $objWriter->startElement('a:t'); + // $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeRawData(PHPExcel_Shared_String::ControlCharacterPHP2OOXML($caption)); + $objWriter->endElement(); + + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + $layout = $xAxisLabel->getLayout(); + $this->writeLayout($layout, $objWriter); + + $objWriter->startElement('c:overlay'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + $objWriter->startElement('c:numFmt'); + $objWriter->writeAttribute('formatCode', $yAxis->getAxisNumberFormat()); + $objWriter->writeAttribute('sourceLinked', $yAxis->getAxisNumberSourceLinked()); + $objWriter->endElement(); + + $objWriter->startElement('c:majorTickMark'); + $objWriter->writeAttribute('val', $yAxis->getAxisOptionsProperty('major_tick_mark')); + $objWriter->endElement(); + + $objWriter->startElement('c:minorTickMark'); + $objWriter->writeAttribute('val', $yAxis->getAxisOptionsProperty('minor_tick_mark')); + $objWriter->endElement(); + + $objWriter->startElement('c:tickLblPos'); + $objWriter->writeAttribute('val', $yAxis->getAxisOptionsProperty('axis_labels')); + $objWriter->endElement(); + + if ($id2 > 0) { + $objWriter->startElement('c:crossAx'); + $objWriter->writeAttribute('val', $id2); + $objWriter->endElement(); + + $objWriter->startElement('c:crosses'); + $objWriter->writeAttribute('val', $yAxis->getAxisOptionsProperty('horizontal_crosses')); + $objWriter->endElement(); + } + + $objWriter->startElement('c:auto'); + $objWriter->writeAttribute('val', 1); + $objWriter->endElement(); + + $objWriter->startElement('c:lblAlgn'); + $objWriter->writeAttribute('val', "ctr"); + $objWriter->endElement(); + + $objWriter->startElement('c:lblOffset'); + $objWriter->writeAttribute('val', 100); + $objWriter->endElement(); + + if ($isMultiLevelSeries) { + $objWriter->startElement('c:noMultiLvlLbl'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + } + $objWriter->endElement(); + } + + /** + * Write Value Axis + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Chart_PlotArea $plotArea + * @param PHPExcel_Chart_Title $yAxisLabel + * @param string $groupType Chart type + * @param string $id1 + * @param string $id2 + * @param boolean $isMultiLevelSeries + * + * @throws PHPExcel_Writer_Exception + */ + private function writeValueAxis($objWriter, PHPExcel_Chart_PlotArea $plotArea, $yAxisLabel, $groupType, $id1, $id2, $isMultiLevelSeries, $xAxis, $yAxis, $majorGridlines, $minorGridlines) + { + $objWriter->startElement('c:valAx'); + + if ($id2 > 0) { + $objWriter->startElement('c:axId'); + $objWriter->writeAttribute('val', $id2); + $objWriter->endElement(); + } + + $objWriter->startElement('c:scaling'); + + if (!is_null($xAxis->getAxisOptionsProperty('maximum'))) { + $objWriter->startElement('c:max'); + $objWriter->writeAttribute('val', $xAxis->getAxisOptionsProperty('maximum')); + $objWriter->endElement(); + } + + if (!is_null($xAxis->getAxisOptionsProperty('minimum'))) { + $objWriter->startElement('c:min'); + $objWriter->writeAttribute('val', $xAxis->getAxisOptionsProperty('minimum')); + $objWriter->endElement(); + } + + $objWriter->startElement('c:orientation'); + $objWriter->writeAttribute('val', $xAxis->getAxisOptionsProperty('orientation')); + + + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('c:delete'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->startElement('c:axPos'); + $objWriter->writeAttribute('val', "l"); + $objWriter->endElement(); + + $objWriter->startElement('c:majorGridlines'); + $objWriter->startElement('c:spPr'); + + if (!is_null($majorGridlines->getLineColorProperty('value'))) { + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', $majorGridlines->getLineStyleProperty('width')); + $objWriter->startElement('a:solidFill'); + $objWriter->startElement("a:{$majorGridlines->getLineColorProperty('type')}"); + $objWriter->writeAttribute('val', $majorGridlines->getLineColorProperty('value')); + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $majorGridlines->getLineColorProperty('alpha')); + $objWriter->endElement(); //end alpha + $objWriter->endElement(); //end srgbClr + $objWriter->endElement(); //end solidFill + + $objWriter->startElement('a:prstDash'); + $objWriter->writeAttribute('val', $majorGridlines->getLineStyleProperty('dash')); + $objWriter->endElement(); + + if ($majorGridlines->getLineStyleProperty('join') == 'miter') { + $objWriter->startElement('a:miter'); + $objWriter->writeAttribute('lim', '800000'); + $objWriter->endElement(); + } else { + $objWriter->startElement('a:bevel'); + $objWriter->endElement(); + } + + if (!is_null($majorGridlines->getLineStyleProperty(array('arrow', 'head', 'type')))) { + $objWriter->startElement('a:headEnd'); + $objWriter->writeAttribute('type', $majorGridlines->getLineStyleProperty(array('arrow', 'head', 'type'))); + $objWriter->writeAttribute('w', $majorGridlines->getLineStyleArrowParameters('head', 'w')); + $objWriter->writeAttribute('len', $majorGridlines->getLineStyleArrowParameters('head', 'len')); + $objWriter->endElement(); + } + + if (!is_null($majorGridlines->getLineStyleProperty(array('arrow', 'end', 'type')))) { + $objWriter->startElement('a:tailEnd'); + $objWriter->writeAttribute('type', $majorGridlines->getLineStyleProperty(array('arrow', 'end', 'type'))); + $objWriter->writeAttribute('w', $majorGridlines->getLineStyleArrowParameters('end', 'w')); + $objWriter->writeAttribute('len', $majorGridlines->getLineStyleArrowParameters('end', 'len')); + $objWriter->endElement(); + } + $objWriter->endElement(); //end ln + } + $objWriter->startElement('a:effectLst'); + + if (!is_null($majorGridlines->getGlowSize())) { + $objWriter->startElement('a:glow'); + $objWriter->writeAttribute('rad', $majorGridlines->getGlowSize()); + $objWriter->startElement("a:{$majorGridlines->getGlowColor('type')}"); + $objWriter->writeAttribute('val', $majorGridlines->getGlowColor('value')); + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $majorGridlines->getGlowColor('alpha')); + $objWriter->endElement(); //end alpha + $objWriter->endElement(); //end schemeClr + $objWriter->endElement(); //end glow + } + + if (!is_null($majorGridlines->getShadowProperty('presets'))) { + $objWriter->startElement("a:{$majorGridlines->getShadowProperty('effect')}"); + if (!is_null($majorGridlines->getShadowProperty('blur'))) { + $objWriter->writeAttribute('blurRad', $majorGridlines->getShadowProperty('blur')); + } + if (!is_null($majorGridlines->getShadowProperty('distance'))) { + $objWriter->writeAttribute('dist', $majorGridlines->getShadowProperty('distance')); + } + if (!is_null($majorGridlines->getShadowProperty('direction'))) { + $objWriter->writeAttribute('dir', $majorGridlines->getShadowProperty('direction')); + } + if (!is_null($majorGridlines->getShadowProperty('algn'))) { + $objWriter->writeAttribute('algn', $majorGridlines->getShadowProperty('algn')); + } + if (!is_null($majorGridlines->getShadowProperty(array('size', 'sx')))) { + $objWriter->writeAttribute('sx', $majorGridlines->getShadowProperty(array('size', 'sx'))); + } + if (!is_null($majorGridlines->getShadowProperty(array('size', 'sy')))) { + $objWriter->writeAttribute('sy', $majorGridlines->getShadowProperty(array('size', 'sy'))); + } + if (!is_null($majorGridlines->getShadowProperty(array('size', 'kx')))) { + $objWriter->writeAttribute('kx', $majorGridlines->getShadowProperty(array('size', 'kx'))); + } + if (!is_null($majorGridlines->getShadowProperty('rotWithShape'))) { + $objWriter->writeAttribute('rotWithShape', $majorGridlines->getShadowProperty('rotWithShape')); + } + $objWriter->startElement("a:{$majorGridlines->getShadowProperty(array('color', 'type'))}"); + $objWriter->writeAttribute('val', $majorGridlines->getShadowProperty(array('color', 'value'))); + + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $majorGridlines->getShadowProperty(array('color', 'alpha'))); + $objWriter->endElement(); //end alpha + + $objWriter->endElement(); //end color:type + $objWriter->endElement(); //end shadow + } + + if (!is_null($majorGridlines->getSoftEdgesSize())) { + $objWriter->startElement('a:softEdge'); + $objWriter->writeAttribute('rad', $majorGridlines->getSoftEdgesSize()); + $objWriter->endElement(); //end softEdge + } + + $objWriter->endElement(); //end effectLst + $objWriter->endElement(); //end spPr + $objWriter->endElement(); //end majorGridLines + + if ($minorGridlines->getObjectState()) { + $objWriter->startElement('c:minorGridlines'); + $objWriter->startElement('c:spPr'); + + if (!is_null($minorGridlines->getLineColorProperty('value'))) { + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', $minorGridlines->getLineStyleProperty('width')); + $objWriter->startElement('a:solidFill'); + $objWriter->startElement("a:{$minorGridlines->getLineColorProperty('type')}"); + $objWriter->writeAttribute('val', $minorGridlines->getLineColorProperty('value')); + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $minorGridlines->getLineColorProperty('alpha')); + $objWriter->endElement(); //end alpha + $objWriter->endElement(); //end srgbClr + $objWriter->endElement(); //end solidFill + + $objWriter->startElement('a:prstDash'); + $objWriter->writeAttribute('val', $minorGridlines->getLineStyleProperty('dash')); + $objWriter->endElement(); + + if ($minorGridlines->getLineStyleProperty('join') == 'miter') { + $objWriter->startElement('a:miter'); + $objWriter->writeAttribute('lim', '800000'); + $objWriter->endElement(); + } else { + $objWriter->startElement('a:bevel'); + $objWriter->endElement(); + } + + if (!is_null($minorGridlines->getLineStyleProperty(array('arrow', 'head', 'type')))) { + $objWriter->startElement('a:headEnd'); + $objWriter->writeAttribute('type', $minorGridlines->getLineStyleProperty(array('arrow', 'head', 'type'))); + $objWriter->writeAttribute('w', $minorGridlines->getLineStyleArrowParameters('head', 'w')); + $objWriter->writeAttribute('len', $minorGridlines->getLineStyleArrowParameters('head', 'len')); + $objWriter->endElement(); + } + + if (!is_null($minorGridlines->getLineStyleProperty(array('arrow', 'end', 'type')))) { + $objWriter->startElement('a:tailEnd'); + $objWriter->writeAttribute('type', $minorGridlines->getLineStyleProperty(array('arrow', 'end', 'type'))); + $objWriter->writeAttribute('w', $minorGridlines->getLineStyleArrowParameters('end', 'w')); + $objWriter->writeAttribute('len', $minorGridlines->getLineStyleArrowParameters('end', 'len')); + $objWriter->endElement(); + } + $objWriter->endElement(); //end ln + } + + $objWriter->startElement('a:effectLst'); + + if (!is_null($minorGridlines->getGlowSize())) { + $objWriter->startElement('a:glow'); + $objWriter->writeAttribute('rad', $minorGridlines->getGlowSize()); + $objWriter->startElement("a:{$minorGridlines->getGlowColor('type')}"); + $objWriter->writeAttribute('val', $minorGridlines->getGlowColor('value')); + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $minorGridlines->getGlowColor('alpha')); + $objWriter->endElement(); //end alpha + $objWriter->endElement(); //end schemeClr + $objWriter->endElement(); //end glow + } + + if (!is_null($minorGridlines->getShadowProperty('presets'))) { + $objWriter->startElement("a:{$minorGridlines->getShadowProperty('effect')}"); + if (!is_null($minorGridlines->getShadowProperty('blur'))) { + $objWriter->writeAttribute('blurRad', $minorGridlines->getShadowProperty('blur')); + } + if (!is_null($minorGridlines->getShadowProperty('distance'))) { + $objWriter->writeAttribute('dist', $minorGridlines->getShadowProperty('distance')); + } + if (!is_null($minorGridlines->getShadowProperty('direction'))) { + $objWriter->writeAttribute('dir', $minorGridlines->getShadowProperty('direction')); + } + if (!is_null($minorGridlines->getShadowProperty('algn'))) { + $objWriter->writeAttribute('algn', $minorGridlines->getShadowProperty('algn')); + } + if (!is_null($minorGridlines->getShadowProperty(array('size', 'sx')))) { + $objWriter->writeAttribute('sx', $minorGridlines->getShadowProperty(array('size', 'sx'))); + } + if (!is_null($minorGridlines->getShadowProperty(array('size', 'sy')))) { + $objWriter->writeAttribute('sy', $minorGridlines->getShadowProperty(array('size', 'sy'))); + } + if (!is_null($minorGridlines->getShadowProperty(array('size', 'kx')))) { + $objWriter->writeAttribute('kx', $minorGridlines->getShadowProperty(array('size', 'kx'))); + } + if (!is_null($minorGridlines->getShadowProperty('rotWithShape'))) { + $objWriter->writeAttribute('rotWithShape', $minorGridlines->getShadowProperty('rotWithShape')); + } + $objWriter->startElement("a:{$minorGridlines->getShadowProperty(array('color', 'type'))}"); + $objWriter->writeAttribute('val', $minorGridlines->getShadowProperty(array('color', 'value'))); + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $minorGridlines->getShadowProperty(array('color', 'alpha'))); + $objWriter->endElement(); //end alpha + $objWriter->endElement(); //end color:type + $objWriter->endElement(); //end shadow + } + + if (!is_null($minorGridlines->getSoftEdgesSize())) { + $objWriter->startElement('a:softEdge'); + $objWriter->writeAttribute('rad', $minorGridlines->getSoftEdgesSize()); + $objWriter->endElement(); //end softEdge + } + + $objWriter->endElement(); //end effectLst + $objWriter->endElement(); //end spPr + $objWriter->endElement(); //end minorGridLines + } + + if (!is_null($yAxisLabel)) { + $objWriter->startElement('c:title'); + $objWriter->startElement('c:tx'); + $objWriter->startElement('c:rich'); + + $objWriter->startElement('a:bodyPr'); + $objWriter->endElement(); + + $objWriter->startElement('a:lstStyle'); + $objWriter->endElement(); + + $objWriter->startElement('a:p'); + $objWriter->startElement('a:r'); + + $caption = $yAxisLabel->getCaption(); + if (is_array($caption)) { + $caption = $caption[0]; + } + + $objWriter->startElement('a:t'); + // $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeRawData(PHPExcel_Shared_String::ControlCharacterPHP2OOXML($caption)); + $objWriter->endElement(); + + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + if ($groupType !== PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) { + $layout = $yAxisLabel->getLayout(); + $this->writeLayout($layout, $objWriter); + } + + $objWriter->startElement('c:overlay'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + $objWriter->startElement('c:numFmt'); + $objWriter->writeAttribute('formatCode', $xAxis->getAxisNumberFormat()); + $objWriter->writeAttribute('sourceLinked', $xAxis->getAxisNumberSourceLinked()); + $objWriter->endElement(); + + $objWriter->startElement('c:majorTickMark'); + $objWriter->writeAttribute('val', $xAxis->getAxisOptionsProperty('major_tick_mark')); + $objWriter->endElement(); + + $objWriter->startElement('c:minorTickMark'); + $objWriter->writeAttribute('val', $xAxis->getAxisOptionsProperty('minor_tick_mark')); + $objWriter->endElement(); + + $objWriter->startElement('c:tickLblPos'); + $objWriter->writeAttribute('val', $xAxis->getAxisOptionsProperty('axis_labels')); + $objWriter->endElement(); + + $objWriter->startElement('c:spPr'); + + if (!is_null($xAxis->getFillProperty('value'))) { + $objWriter->startElement('a:solidFill'); + $objWriter->startElement("a:" . $xAxis->getFillProperty('type')); + $objWriter->writeAttribute('val', $xAxis->getFillProperty('value')); + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $xAxis->getFillProperty('alpha')); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + } + + $objWriter->startElement('a:ln'); + + $objWriter->writeAttribute('w', $xAxis->getLineStyleProperty('width')); + $objWriter->writeAttribute('cap', $xAxis->getLineStyleProperty('cap')); + $objWriter->writeAttribute('cmpd', $xAxis->getLineStyleProperty('compound')); + + if (!is_null($xAxis->getLineProperty('value'))) { + $objWriter->startElement('a:solidFill'); + $objWriter->startElement("a:" . $xAxis->getLineProperty('type')); + $objWriter->writeAttribute('val', $xAxis->getLineProperty('value')); + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $xAxis->getLineProperty('alpha')); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + } + + $objWriter->startElement('a:prstDash'); + $objWriter->writeAttribute('val', $xAxis->getLineStyleProperty('dash')); + $objWriter->endElement(); + + if ($xAxis->getLineStyleProperty('join') == 'miter') { + $objWriter->startElement('a:miter'); + $objWriter->writeAttribute('lim', '800000'); + $objWriter->endElement(); + } else { + $objWriter->startElement('a:bevel'); + $objWriter->endElement(); + } + + if (!is_null($xAxis->getLineStyleProperty(array('arrow', 'head', 'type')))) { + $objWriter->startElement('a:headEnd'); + $objWriter->writeAttribute('type', $xAxis->getLineStyleProperty(array('arrow', 'head', 'type'))); + $objWriter->writeAttribute('w', $xAxis->getLineStyleArrowWidth('head')); + $objWriter->writeAttribute('len', $xAxis->getLineStyleArrowLength('head')); + $objWriter->endElement(); + } + + if (!is_null($xAxis->getLineStyleProperty(array('arrow', 'end', 'type')))) { + $objWriter->startElement('a:tailEnd'); + $objWriter->writeAttribute('type', $xAxis->getLineStyleProperty(array('arrow', 'end', 'type'))); + $objWriter->writeAttribute('w', $xAxis->getLineStyleArrowWidth('end')); + $objWriter->writeAttribute('len', $xAxis->getLineStyleArrowLength('end')); + $objWriter->endElement(); + } + + $objWriter->endElement(); + + $objWriter->startElement('a:effectLst'); + + if (!is_null($xAxis->getGlowProperty('size'))) { + $objWriter->startElement('a:glow'); + $objWriter->writeAttribute('rad', $xAxis->getGlowProperty('size')); + $objWriter->startElement("a:{$xAxis->getGlowProperty(array('color','type'))}"); + $objWriter->writeAttribute('val', $xAxis->getGlowProperty(array('color','value'))); + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $xAxis->getGlowProperty(array('color','alpha'))); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + } + + if (!is_null($xAxis->getShadowProperty('presets'))) { + $objWriter->startElement("a:{$xAxis->getShadowProperty('effect')}"); + + if (!is_null($xAxis->getShadowProperty('blur'))) { + $objWriter->writeAttribute('blurRad', $xAxis->getShadowProperty('blur')); + } + if (!is_null($xAxis->getShadowProperty('distance'))) { + $objWriter->writeAttribute('dist', $xAxis->getShadowProperty('distance')); + } + if (!is_null($xAxis->getShadowProperty('direction'))) { + $objWriter->writeAttribute('dir', $xAxis->getShadowProperty('direction')); + } + if (!is_null($xAxis->getShadowProperty('algn'))) { + $objWriter->writeAttribute('algn', $xAxis->getShadowProperty('algn')); + } + if (!is_null($xAxis->getShadowProperty(array('size','sx')))) { + $objWriter->writeAttribute('sx', $xAxis->getShadowProperty(array('size','sx'))); + } + if (!is_null($xAxis->getShadowProperty(array('size','sy')))) { + $objWriter->writeAttribute('sy', $xAxis->getShadowProperty(array('size','sy'))); + } + if (!is_null($xAxis->getShadowProperty(array('size','kx')))) { + $objWriter->writeAttribute('kx', $xAxis->getShadowProperty(array('size','kx'))); + } + if (!is_null($xAxis->getShadowProperty('rotWithShape'))) { + $objWriter->writeAttribute('rotWithShape', $xAxis->getShadowProperty('rotWithShape')); + } + + $objWriter->startElement("a:{$xAxis->getShadowProperty(array('color','type'))}"); + $objWriter->writeAttribute('val', $xAxis->getShadowProperty(array('color','value'))); + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $xAxis->getShadowProperty(array('color','alpha'))); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + if (!is_null($xAxis->getSoftEdgesSize())) { + $objWriter->startElement('a:softEdge'); + $objWriter->writeAttribute('rad', $xAxis->getSoftEdgesSize()); + $objWriter->endElement(); + } + + $objWriter->endElement(); //effectList + $objWriter->endElement(); //end spPr + + if ($id1 > 0) { + $objWriter->startElement('c:crossAx'); + $objWriter->writeAttribute('val', $id2); + $objWriter->endElement(); + + if (!is_null($xAxis->getAxisOptionsProperty('horizontal_crosses_value'))) { + $objWriter->startElement('c:crossesAt'); + $objWriter->writeAttribute('val', $xAxis->getAxisOptionsProperty('horizontal_crosses_value')); + $objWriter->endElement(); + } else { + $objWriter->startElement('c:crosses'); + $objWriter->writeAttribute('val', $xAxis->getAxisOptionsProperty('horizontal_crosses')); + $objWriter->endElement(); + } + + $objWriter->startElement('c:crossBetween'); + $objWriter->writeAttribute('val', "midCat"); + $objWriter->endElement(); + + if (!is_null($xAxis->getAxisOptionsProperty('major_unit'))) { + $objWriter->startElement('c:majorUnit'); + $objWriter->writeAttribute('val', $xAxis->getAxisOptionsProperty('major_unit')); + $objWriter->endElement(); + } + + if (!is_null($xAxis->getAxisOptionsProperty('minor_unit'))) { + $objWriter->startElement('c:minorUnit'); + $objWriter->writeAttribute('val', $xAxis->getAxisOptionsProperty('minor_unit')); + $objWriter->endElement(); + } + } + + if ($isMultiLevelSeries) { + if ($groupType !== PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) { + $objWriter->startElement('c:noMultiLvlLbl'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + } + + /** + * Get the data series type(s) for a chart plot series + * + * @param PHPExcel_Chart_PlotArea $plotArea + * + * @return string|array + * @throws PHPExcel_Writer_Exception + */ + private static function getChartType($plotArea) + { + $groupCount = $plotArea->getPlotGroupCount(); + + if ($groupCount == 1) { + $chartType = array($plotArea->getPlotGroupByIndex(0)->getPlotType()); + } else { + $chartTypes = array(); + for ($i = 0; $i < $groupCount; ++$i) { + $chartTypes[] = $plotArea->getPlotGroupByIndex($i)->getPlotType(); + } + $chartType = array_unique($chartTypes); + if (count($chartTypes) == 0) { + throw new PHPExcel_Writer_Exception('Chart is not yet implemented'); + } + } + + return $chartType; + } + + /** + * Write Plot Group (series of related plots) + * + * @param PHPExcel_Chart_DataSeries $plotGroup + * @param string $groupType Type of plot for dataseries + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param boolean &$catIsMultiLevelSeries Is category a multi-series category + * @param boolean &$valIsMultiLevelSeries Is value set a multi-series set + * @param string &$plotGroupingType Type of grouping for multi-series values + * @param PHPExcel_Worksheet $pSheet + * + * @throws PHPExcel_Writer_Exception + */ + private function writePlotGroup($plotGroup, $groupType, $objWriter, &$catIsMultiLevelSeries, &$valIsMultiLevelSeries, &$plotGroupingType, PHPExcel_Worksheet $pSheet) + { + if (is_null($plotGroup)) { + return; + } + + if (($groupType == PHPExcel_Chart_DataSeries::TYPE_BARCHART) || ($groupType == PHPExcel_Chart_DataSeries::TYPE_BARCHART_3D)) { + $objWriter->startElement('c:barDir'); + $objWriter->writeAttribute('val', $plotGroup->getPlotDirection()); + $objWriter->endElement(); + } + + if (!is_null($plotGroup->getPlotGrouping())) { + $plotGroupingType = $plotGroup->getPlotGrouping(); + $objWriter->startElement('c:grouping'); + $objWriter->writeAttribute('val', $plotGroupingType); + $objWriter->endElement(); + } + + // Get these details before the loop, because we can use the count to check for varyColors + $plotSeriesOrder = $plotGroup->getPlotOrder(); + $plotSeriesCount = count($plotSeriesOrder); + + if (($groupType !== PHPExcel_Chart_DataSeries::TYPE_RADARCHART) && ($groupType !== PHPExcel_Chart_DataSeries::TYPE_STOCKCHART)) { + if ($groupType !== PHPExcel_Chart_DataSeries::TYPE_LINECHART) { + if (($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART) || ($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) || ($groupType == PHPExcel_Chart_DataSeries::TYPE_DONUTCHART) || ($plotSeriesCount > 1)) { + $objWriter->startElement('c:varyColors'); + $objWriter->writeAttribute('val', 1); + $objWriter->endElement(); + } else { + $objWriter->startElement('c:varyColors'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + } + } + } + + foreach ($plotSeriesOrder as $plotSeriesIdx => $plotSeriesRef) { + $objWriter->startElement('c:ser'); + + $objWriter->startElement('c:idx'); + $objWriter->writeAttribute('val', $this->_seriesIndex + $plotSeriesIdx); + $objWriter->endElement(); + + $objWriter->startElement('c:order'); + $objWriter->writeAttribute('val', $this->_seriesIndex + $plotSeriesRef); + $objWriter->endElement(); + + if (($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART) || ($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) || ($groupType == PHPExcel_Chart_DataSeries::TYPE_DONUTCHART)) { + $objWriter->startElement('c:dPt'); + $objWriter->startElement('c:idx'); + $objWriter->writeAttribute('val', 3); + $objWriter->endElement(); + + $objWriter->startElement('c:bubble3D'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->startElement('c:spPr'); + $objWriter->startElement('a:solidFill'); + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', 'FF9900'); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + } + + // Labels + $plotSeriesLabel = $plotGroup->getPlotLabelByIndex($plotSeriesRef); + if ($plotSeriesLabel && ($plotSeriesLabel->getPointCount() > 0)) { + $objWriter->startElement('c:tx'); + $objWriter->startElement('c:strRef'); + $this->writePlotSeriesLabel($plotSeriesLabel, $objWriter); + $objWriter->endElement(); + $objWriter->endElement(); + } + + // Formatting for the points + if (($groupType == PHPExcel_Chart_DataSeries::TYPE_LINECHART) || ($groupType == PHPExcel_Chart_DataSeries::TYPE_STOCKCHART)) { + $objWriter->startElement('c:spPr'); + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', 12700); + if ($groupType == PHPExcel_Chart_DataSeries::TYPE_STOCKCHART) { + $objWriter->startElement('a:noFill'); + $objWriter->endElement(); + } + $objWriter->endElement(); + $objWriter->endElement(); + } + + $plotSeriesValues = $plotGroup->getPlotValuesByIndex($plotSeriesRef); + if ($plotSeriesValues) { + $plotSeriesMarker = $plotSeriesValues->getPointMarker(); + if ($plotSeriesMarker) { + $objWriter->startElement('c:marker'); + $objWriter->startElement('c:symbol'); + $objWriter->writeAttribute('val', $plotSeriesMarker); + $objWriter->endElement(); + + if ($plotSeriesMarker !== 'none') { + $objWriter->startElement('c:size'); + $objWriter->writeAttribute('val', 3); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + if (($groupType === PHPExcel_Chart_DataSeries::TYPE_BARCHART) || ($groupType === PHPExcel_Chart_DataSeries::TYPE_BARCHART_3D) || ($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART)) { + $objWriter->startElement('c:invertIfNegative'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + } + + // Category Labels + $plotSeriesCategory = $plotGroup->getPlotCategoryByIndex($plotSeriesRef); + if ($plotSeriesCategory && ($plotSeriesCategory->getPointCount() > 0)) { + $catIsMultiLevelSeries = $catIsMultiLevelSeries || $plotSeriesCategory->isMultiLevelSeries(); + + if (($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART) || ($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) || ($groupType == PHPExcel_Chart_DataSeries::TYPE_DONUTCHART)) { + if (!is_null($plotGroup->getPlotStyle())) { + $plotStyle = $plotGroup->getPlotStyle(); + if ($plotStyle) { + $objWriter->startElement('c:explosion'); + $objWriter->writeAttribute('val', 25); + $objWriter->endElement(); + } + } + } + + if (($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) || ($groupType === PHPExcel_Chart_DataSeries::TYPE_SCATTERCHART)) { + $objWriter->startElement('c:xVal'); + } else { + $objWriter->startElement('c:cat'); + } + + $this->writePlotSeriesValues($plotSeriesCategory, $objWriter, $groupType, 'str', $pSheet); + $objWriter->endElement(); + } + + // Values + if ($plotSeriesValues) { + $valIsMultiLevelSeries = $valIsMultiLevelSeries || $plotSeriesValues->isMultiLevelSeries(); + + if (($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) || ($groupType === PHPExcel_Chart_DataSeries::TYPE_SCATTERCHART)) { + $objWriter->startElement('c:yVal'); + } else { + $objWriter->startElement('c:val'); + } + + $this->writePlotSeriesValues($plotSeriesValues, $objWriter, $groupType, 'num', $pSheet); + $objWriter->endElement(); + } + + if ($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) { + $this->writeBubbles($plotSeriesValues, $objWriter, $pSheet); + } + + $objWriter->endElement(); + } + + $this->_seriesIndex += $plotSeriesIdx + 1; + } + + /** + * Write Plot Series Label + * + * @param PHPExcel_Chart_DataSeriesValues $plotSeriesLabel + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * + * @throws PHPExcel_Writer_Exception + */ + private function writePlotSeriesLabel($plotSeriesLabel, $objWriter) + { + if (is_null($plotSeriesLabel)) { + return; + } + + $objWriter->startElement('c:f'); + $objWriter->writeRawData($plotSeriesLabel->getDataSource()); + $objWriter->endElement(); + + $objWriter->startElement('c:strCache'); + $objWriter->startElement('c:ptCount'); + $objWriter->writeAttribute('val', $plotSeriesLabel->getPointCount()); + $objWriter->endElement(); + + foreach ($plotSeriesLabel->getDataValues() as $plotLabelKey => $plotLabelValue) { + $objWriter->startElement('c:pt'); + $objWriter->writeAttribute('idx', $plotLabelKey); + + $objWriter->startElement('c:v'); + $objWriter->writeRawData($plotLabelValue); + $objWriter->endElement(); + $objWriter->endElement(); + } + $objWriter->endElement(); + } + + /** + * Write Plot Series Values + * + * @param PHPExcel_Chart_DataSeriesValues $plotSeriesValues + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $groupType Type of plot for dataseries + * @param string $dataType Datatype of series values + * @param PHPExcel_Worksheet $pSheet + * + * @throws PHPExcel_Writer_Exception + */ + private function writePlotSeriesValues($plotSeriesValues, $objWriter, $groupType, $dataType = 'str', PHPExcel_Worksheet $pSheet) + { + if (is_null($plotSeriesValues)) { + return; + } + + if ($plotSeriesValues->isMultiLevelSeries()) { + $levelCount = $plotSeriesValues->multiLevelCount(); + + $objWriter->startElement('c:multiLvlStrRef'); + + $objWriter->startElement('c:f'); + $objWriter->writeRawData($plotSeriesValues->getDataSource()); + $objWriter->endElement(); + + $objWriter->startElement('c:multiLvlStrCache'); + + $objWriter->startElement('c:ptCount'); + $objWriter->writeAttribute('val', $plotSeriesValues->getPointCount()); + $objWriter->endElement(); + + for ($level = 0; $level < $levelCount; ++$level) { + $objWriter->startElement('c:lvl'); + + foreach ($plotSeriesValues->getDataValues() as $plotSeriesKey => $plotSeriesValue) { + if (isset($plotSeriesValue[$level])) { + $objWriter->startElement('c:pt'); + $objWriter->writeAttribute('idx', $plotSeriesKey); + + $objWriter->startElement('c:v'); + $objWriter->writeRawData($plotSeriesValue[$level]); + $objWriter->endElement(); + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + } + + $objWriter->endElement(); + + $objWriter->endElement(); + } else { + $objWriter->startElement('c:' . $dataType . 'Ref'); + + $objWriter->startElement('c:f'); + $objWriter->writeRawData($plotSeriesValues->getDataSource()); + $objWriter->endElement(); + + $objWriter->startElement('c:' . $dataType . 'Cache'); + + if (($groupType != PHPExcel_Chart_DataSeries::TYPE_PIECHART) && ($groupType != PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) && ($groupType != PHPExcel_Chart_DataSeries::TYPE_DONUTCHART)) { + if (($plotSeriesValues->getFormatCode() !== null) && ($plotSeriesValues->getFormatCode() !== '')) { + $objWriter->startElement('c:formatCode'); + $objWriter->writeRawData($plotSeriesValues->getFormatCode()); + $objWriter->endElement(); + } + } + + $objWriter->startElement('c:ptCount'); + $objWriter->writeAttribute('val', $plotSeriesValues->getPointCount()); + $objWriter->endElement(); + + $dataValues = $plotSeriesValues->getDataValues(); + if (!empty($dataValues)) { + if (is_array($dataValues)) { + foreach ($dataValues as $plotSeriesKey => $plotSeriesValue) { + $objWriter->startElement('c:pt'); + $objWriter->writeAttribute('idx', $plotSeriesKey); + + $objWriter->startElement('c:v'); + $objWriter->writeRawData($plotSeriesValue); + $objWriter->endElement(); + $objWriter->endElement(); + } + } + } + + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + + /** + * Write Bubble Chart Details + * + * @param PHPExcel_Chart_DataSeriesValues $plotSeriesValues + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * + * @throws PHPExcel_Writer_Exception + */ + private function writeBubbles($plotSeriesValues, $objWriter, PHPExcel_Worksheet $pSheet) + { + if (is_null($plotSeriesValues)) { + return; + } + + $objWriter->startElement('c:bubbleSize'); + $objWriter->startElement('c:numLit'); + + $objWriter->startElement('c:formatCode'); + $objWriter->writeRawData('General'); + $objWriter->endElement(); + + $objWriter->startElement('c:ptCount'); + $objWriter->writeAttribute('val', $plotSeriesValues->getPointCount()); + $objWriter->endElement(); + + $dataValues = $plotSeriesValues->getDataValues(); + if (!empty($dataValues)) { + if (is_array($dataValues)) { + foreach ($dataValues as $plotSeriesKey => $plotSeriesValue) { + $objWriter->startElement('c:pt'); + $objWriter->writeAttribute('idx', $plotSeriesKey); + $objWriter->startElement('c:v'); + $objWriter->writeRawData(1); + $objWriter->endElement(); + $objWriter->endElement(); + } + } + } + + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('c:bubble3D'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + } + + /** + * Write Layout + * + * @param PHPExcel_Chart_Layout $layout + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * + * @throws PHPExcel_Writer_Exception + */ + private function writeLayout(PHPExcel_Chart_Layout $layout = null, $objWriter) + { + $objWriter->startElement('c:layout'); + + if (!is_null($layout)) { + $objWriter->startElement('c:manualLayout'); + + $layoutTarget = $layout->getLayoutTarget(); + if (!is_null($layoutTarget)) { + $objWriter->startElement('c:layoutTarget'); + $objWriter->writeAttribute('val', $layoutTarget); + $objWriter->endElement(); + } + + $xMode = $layout->getXMode(); + if (!is_null($xMode)) { + $objWriter->startElement('c:xMode'); + $objWriter->writeAttribute('val', $xMode); + $objWriter->endElement(); + } + + $yMode = $layout->getYMode(); + if (!is_null($yMode)) { + $objWriter->startElement('c:yMode'); + $objWriter->writeAttribute('val', $yMode); + $objWriter->endElement(); + } + + $x = $layout->getXPosition(); + if (!is_null($x)) { + $objWriter->startElement('c:x'); + $objWriter->writeAttribute('val', $x); + $objWriter->endElement(); + } + + $y = $layout->getYPosition(); + if (!is_null($y)) { + $objWriter->startElement('c:y'); + $objWriter->writeAttribute('val', $y); + $objWriter->endElement(); + } + + $w = $layout->getWidth(); + if (!is_null($w)) { + $objWriter->startElement('c:w'); + $objWriter->writeAttribute('val', $w); + $objWriter->endElement(); + } + + $h = $layout->getHeight(); + if (!is_null($h)) { + $objWriter->startElement('c:h'); + $objWriter->writeAttribute('val', $h); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + /** + * Write Alternate Content block + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * + * @throws PHPExcel_Writer_Exception + */ + private function writeAlternateContent($objWriter) + { + $objWriter->startElement('mc:AlternateContent'); + $objWriter->writeAttribute('xmlns:mc', 'http://schemas.openxmlformats.org/markup-compatibility/2006'); + + $objWriter->startElement('mc:Choice'); + $objWriter->writeAttribute('xmlns:c14', 'http://schemas.microsoft.com/office/drawing/2007/8/2/chart'); + $objWriter->writeAttribute('Requires', 'c14'); + + $objWriter->startElement('c14:style'); + $objWriter->writeAttribute('val', '102'); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('mc:Fallback'); + $objWriter->startElement('c:style'); + $objWriter->writeAttribute('val', '2'); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Printer Settings + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * + * @throws PHPExcel_Writer_Exception + */ + private function writePrintSettings($objWriter) + { + $objWriter->startElement('c:printSettings'); + + $objWriter->startElement('c:headerFooter'); + $objWriter->endElement(); + + $objWriter->startElement('c:pageMargins'); + $objWriter->writeAttribute('footer', 0.3); + $objWriter->writeAttribute('header', 0.3); + $objWriter->writeAttribute('r', 0.7); + $objWriter->writeAttribute('l', 0.7); + $objWriter->writeAttribute('t', 0.75); + $objWriter->writeAttribute('b', 0.75); + $objWriter->endElement(); + + $objWriter->startElement('c:pageSetup'); + $objWriter->writeAttribute('orientation', "portrait"); + $objWriter->endElement(); + + $objWriter->endElement(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Comments.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Comments.php new file mode 100644 index 0000000..7139f6c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Comments.php @@ -0,0 +1,260 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_Comments + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007_Comments extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write comments to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeComments(PHPExcel_Worksheet $pWorksheet = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Comments cache + $comments = $pWorksheet->getComments(); + + // Authors cache + $authors = array(); + $authorId = 0; + foreach ($comments as $comment) { + if (!isset($authors[$comment->getAuthor()])) { + $authors[$comment->getAuthor()] = $authorId++; + } + } + + // comments + $objWriter->startElement('comments'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/spreadsheetml/2006/main'); + + // Loop through authors + $objWriter->startElement('authors'); + foreach ($authors as $author => $index) { + $objWriter->writeElement('author', $author); + } + $objWriter->endElement(); + + // Loop through comments + $objWriter->startElement('commentList'); + foreach ($comments as $key => $value) { + $this->writeComment($objWriter, $key, $value, $authors); + } + $objWriter->endElement(); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write comment to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pCellReference Cell reference + * @param PHPExcel_Comment $pComment Comment + * @param array $pAuthors Array of authors + * @throws PHPExcel_Writer_Exception + */ + private function writeComment(PHPExcel_Shared_XMLWriter $objWriter = null, $pCellReference = 'A1', PHPExcel_Comment $pComment = null, $pAuthors = null) + { + // comment + $objWriter->startElement('comment'); + $objWriter->writeAttribute('ref', $pCellReference); + $objWriter->writeAttribute('authorId', $pAuthors[$pComment->getAuthor()]); + + // text + $objWriter->startElement('text'); + $this->getParentWriter()->getWriterPart('stringtable')->writeRichText($objWriter, $pComment->getText()); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write VML comments to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeVMLComments(PHPExcel_Worksheet $pWorksheet = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Comments cache + $comments = $pWorksheet->getComments(); + + // xml + $objWriter->startElement('xml'); + $objWriter->writeAttribute('xmlns:v', 'urn:schemas-microsoft-com:vml'); + $objWriter->writeAttribute('xmlns:o', 'urn:schemas-microsoft-com:office:office'); + $objWriter->writeAttribute('xmlns:x', 'urn:schemas-microsoft-com:office:excel'); + + // o:shapelayout + $objWriter->startElement('o:shapelayout'); + $objWriter->writeAttribute('v:ext', 'edit'); + + // o:idmap + $objWriter->startElement('o:idmap'); + $objWriter->writeAttribute('v:ext', 'edit'); + $objWriter->writeAttribute('data', '1'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // v:shapetype + $objWriter->startElement('v:shapetype'); + $objWriter->writeAttribute('id', '_x0000_t202'); + $objWriter->writeAttribute('coordsize', '21600,21600'); + $objWriter->writeAttribute('o:spt', '202'); + $objWriter->writeAttribute('path', 'm,l,21600r21600,l21600,xe'); + + // v:stroke + $objWriter->startElement('v:stroke'); + $objWriter->writeAttribute('joinstyle', 'miter'); + $objWriter->endElement(); + + // v:path + $objWriter->startElement('v:path'); + $objWriter->writeAttribute('gradientshapeok', 't'); + $objWriter->writeAttribute('o:connecttype', 'rect'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // Loop through comments + foreach ($comments as $key => $value) { + $this->writeVMLComment($objWriter, $key, $value); + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write VML comment to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pCellReference Cell reference + * @param PHPExcel_Comment $pComment Comment + * @throws PHPExcel_Writer_Exception + */ + private function writeVMLComment(PHPExcel_Shared_XMLWriter $objWriter = null, $pCellReference = 'A1', PHPExcel_Comment $pComment = null) + { + // Metadata + list($column, $row) = PHPExcel_Cell::coordinateFromString($pCellReference); + $column = PHPExcel_Cell::columnIndexFromString($column); + $id = 1024 + $column + $row; + $id = substr($id, 0, 4); + + // v:shape + $objWriter->startElement('v:shape'); + $objWriter->writeAttribute('id', '_x0000_s' . $id); + $objWriter->writeAttribute('type', '#_x0000_t202'); + $objWriter->writeAttribute('style', 'position:absolute;margin-left:' . $pComment->getMarginLeft() . ';margin-top:' . $pComment->getMarginTop() . ';width:' . $pComment->getWidth() . ';height:' . $pComment->getHeight() . ';z-index:1;visibility:' . ($pComment->getVisible() ? 'visible' : 'hidden')); + $objWriter->writeAttribute('fillcolor', '#' . $pComment->getFillColor()->getRGB()); + $objWriter->writeAttribute('o:insetmode', 'auto'); + + // v:fill + $objWriter->startElement('v:fill'); + $objWriter->writeAttribute('color2', '#' . $pComment->getFillColor()->getRGB()); + $objWriter->endElement(); + + // v:shadow + $objWriter->startElement('v:shadow'); + $objWriter->writeAttribute('on', 't'); + $objWriter->writeAttribute('color', 'black'); + $objWriter->writeAttribute('obscured', 't'); + $objWriter->endElement(); + + // v:path + $objWriter->startElement('v:path'); + $objWriter->writeAttribute('o:connecttype', 'none'); + $objWriter->endElement(); + + // v:textbox + $objWriter->startElement('v:textbox'); + $objWriter->writeAttribute('style', 'mso-direction-alt:auto'); + + // div + $objWriter->startElement('div'); + $objWriter->writeAttribute('style', 'text-align:left'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // x:ClientData + $objWriter->startElement('x:ClientData'); + $objWriter->writeAttribute('ObjectType', 'Note'); + + // x:MoveWithCells + $objWriter->writeElement('x:MoveWithCells', ''); + + // x:SizeWithCells + $objWriter->writeElement('x:SizeWithCells', ''); + + // x:Anchor + //$objWriter->writeElement('x:Anchor', $column . ', 15, ' . ($row - 2) . ', 10, ' . ($column + 4) . ', 15, ' . ($row + 5) . ', 18'); + + // x:AutoFill + $objWriter->writeElement('x:AutoFill', 'False'); + + // x:Row + $objWriter->writeElement('x:Row', ($row - 1)); + + // x:Column + $objWriter->writeElement('x:Column', ($column - 1)); + + $objWriter->endElement(); + + $objWriter->endElement(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/ContentTypes.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/ContentTypes.php new file mode 100644 index 0000000..0d91189 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/ContentTypes.php @@ -0,0 +1,240 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_ContentTypes + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007_ContentTypes extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write content types to XML format + * + * @param PHPExcel $pPHPExcel + * @param boolean $includeCharts Flag indicating if we should include drawing details for charts + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeContentTypes(PHPExcel $pPHPExcel = null, $includeCharts = false) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Types + $objWriter->startElement('Types'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/content-types'); + + // Theme + $this->writeOverrideContentType($objWriter, '/xl/theme/theme1.xml', 'application/vnd.openxmlformats-officedocument.theme+xml'); + + // Styles + $this->writeOverrideContentType($objWriter, '/xl/styles.xml', 'application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml'); + + // Rels + $this->writeDefaultContentType($objWriter, 'rels', 'application/vnd.openxmlformats-package.relationships+xml'); + + // XML + $this->writeDefaultContentType($objWriter, 'xml', 'application/xml'); + + // VML + $this->writeDefaultContentType($objWriter, 'vml', 'application/vnd.openxmlformats-officedocument.vmlDrawing'); + + // Workbook + if ($pPHPExcel->hasMacros()) { //Macros in workbook ? + // Yes : not standard content but "macroEnabled" + $this->writeOverrideContentType($objWriter, '/xl/workbook.xml', 'application/vnd.ms-excel.sheet.macroEnabled.main+xml'); + //... and define a new type for the VBA project + $this->writeDefaultContentType($objWriter, 'bin', 'application/vnd.ms-office.vbaProject'); + if ($pPHPExcel->hasMacrosCertificate()) {// signed macros ? + // Yes : add needed information + $this->writeOverrideContentType($objWriter, '/xl/vbaProjectSignature.bin', 'application/vnd.ms-office.vbaProjectSignature'); + } + } else {// no macros in workbook, so standard type + $this->writeOverrideContentType($objWriter, '/xl/workbook.xml', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml'); + } + + // DocProps + $this->writeOverrideContentType($objWriter, '/docProps/app.xml', 'application/vnd.openxmlformats-officedocument.extended-properties+xml'); + + $this->writeOverrideContentType($objWriter, '/docProps/core.xml', 'application/vnd.openxmlformats-package.core-properties+xml'); + + $customPropertyList = $pPHPExcel->getProperties()->getCustomProperties(); + if (!empty($customPropertyList)) { + $this->writeOverrideContentType($objWriter, '/docProps/custom.xml', 'application/vnd.openxmlformats-officedocument.custom-properties+xml'); + } + + // Worksheets + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + $this->writeOverrideContentType($objWriter, '/xl/worksheets/sheet' . ($i + 1) . '.xml', 'application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml'); + } + + // Shared strings + $this->writeOverrideContentType($objWriter, '/xl/sharedStrings.xml', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml'); + + // Add worksheet relationship content types + $chart = 1; + for ($i = 0; $i < $sheetCount; ++$i) { + $drawings = $pPHPExcel->getSheet($i)->getDrawingCollection(); + $drawingCount = count($drawings); + $chartCount = ($includeCharts) ? $pPHPExcel->getSheet($i)->getChartCount() : 0; + + // We need a drawing relationship for the worksheet if we have either drawings or charts + if (($drawingCount > 0) || ($chartCount > 0)) { + $this->writeOverrideContentType($objWriter, '/xl/drawings/drawing' . ($i + 1) . '.xml', 'application/vnd.openxmlformats-officedocument.drawing+xml'); + } + + // If we have charts, then we need a chart relationship for every individual chart + if ($chartCount > 0) { + for ($c = 0; $c < $chartCount; ++$c) { + $this->writeOverrideContentType($objWriter, '/xl/charts/chart' . $chart++ . '.xml', 'application/vnd.openxmlformats-officedocument.drawingml.chart+xml'); + } + } + } + + // Comments + for ($i = 0; $i < $sheetCount; ++$i) { + if (count($pPHPExcel->getSheet($i)->getComments()) > 0) { + $this->writeOverrideContentType($objWriter, '/xl/comments' . ($i + 1) . '.xml', 'application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml'); + } + } + + // Add media content-types + $aMediaContentTypes = array(); + $mediaCount = $this->getParentWriter()->getDrawingHashTable()->count(); + for ($i = 0; $i < $mediaCount; ++$i) { + $extension = ''; + $mimeType = ''; + + if ($this->getParentWriter()->getDrawingHashTable()->getByIndex($i) instanceof PHPExcel_Worksheet_Drawing) { + $extension = strtolower($this->getParentWriter()->getDrawingHashTable()->getByIndex($i)->getExtension()); + $mimeType = $this->getImageMimeType($this->getParentWriter()->getDrawingHashTable()->getByIndex($i)->getPath()); + } elseif ($this->getParentWriter()->getDrawingHashTable()->getByIndex($i) instanceof PHPExcel_Worksheet_MemoryDrawing) { + $extension = strtolower($this->getParentWriter()->getDrawingHashTable()->getByIndex($i)->getMimeType()); + $extension = explode('/', $extension); + $extension = $extension[1]; + + $mimeType = $this->getParentWriter()->getDrawingHashTable()->getByIndex($i)->getMimeType(); + } + + if (!isset( $aMediaContentTypes[$extension])) { + $aMediaContentTypes[$extension] = $mimeType; + + $this->writeDefaultContentType($objWriter, $extension, $mimeType); + } + } + if ($pPHPExcel->hasRibbonBinObjects()) { + // Some additional objects in the ribbon ? + // we need to write "Extension" but not already write for media content + $tabRibbonTypes=array_diff($pPHPExcel->getRibbonBinObjects('types'), array_keys($aMediaContentTypes)); + foreach ($tabRibbonTypes as $aRibbonType) { + $mimeType='image/.'.$aRibbonType;//we wrote $mimeType like customUI Editor + $this->writeDefaultContentType($objWriter, $aRibbonType, $mimeType); + } + } + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + if (count($pPHPExcel->getSheet()->getHeaderFooter()->getImages()) > 0) { + foreach ($pPHPExcel->getSheet()->getHeaderFooter()->getImages() as $image) { + if (!isset( $aMediaContentTypes[strtolower($image->getExtension())])) { + $aMediaContentTypes[strtolower($image->getExtension())] = $this->getImageMimeType($image->getPath()); + + $this->writeDefaultContentType($objWriter, strtolower($image->getExtension()), $aMediaContentTypes[strtolower($image->getExtension())]); + } + } + } + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Get image mime type + * + * @param string $pFile Filename + * @return string Mime Type + * @throws PHPExcel_Writer_Exception + */ + private function getImageMimeType($pFile = '') + { + if (PHPExcel_Shared_File::file_exists($pFile)) { + $image = getimagesize($pFile); + return image_type_to_mime_type($image[2]); + } else { + throw new PHPExcel_Writer_Exception("File $pFile does not exist"); + } + } + + /** + * Write Default content type + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pPartname Part name + * @param string $pContentType Content type + * @throws PHPExcel_Writer_Exception + */ + private function writeDefaultContentType(PHPExcel_Shared_XMLWriter $objWriter = null, $pPartname = '', $pContentType = '') + { + if ($pPartname != '' && $pContentType != '') { + // Write content type + $objWriter->startElement('Default'); + $objWriter->writeAttribute('Extension', $pPartname); + $objWriter->writeAttribute('ContentType', $pContentType); + $objWriter->endElement(); + } else { + throw new PHPExcel_Writer_Exception("Invalid parameters passed."); + } + } + + /** + * Write Override content type + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pPartname Part name + * @param string $pContentType Content type + * @throws PHPExcel_Writer_Exception + */ + private function writeOverrideContentType(PHPExcel_Shared_XMLWriter $objWriter = null, $pPartname = '', $pContentType = '') + { + if ($pPartname != '' && $pContentType != '') { + // Write content type + $objWriter->startElement('Override'); + $objWriter->writeAttribute('PartName', $pPartname); + $objWriter->writeAttribute('ContentType', $pContentType); + $objWriter->endElement(); + } else { + throw new PHPExcel_Writer_Exception("Invalid parameters passed."); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/DocProps.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/DocProps.php new file mode 100644 index 0000000..fef3d93 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/DocProps.php @@ -0,0 +1,262 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_DocProps + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007_DocProps extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write docProps/app.xml to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeDocPropsApp(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Properties + $objWriter->startElement('Properties'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/officeDocument/2006/extended-properties'); + $objWriter->writeAttribute('xmlns:vt', 'http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes'); + + // Application + $objWriter->writeElement('Application', 'Microsoft Excel'); + + // DocSecurity + $objWriter->writeElement('DocSecurity', '0'); + + // ScaleCrop + $objWriter->writeElement('ScaleCrop', 'false'); + + // HeadingPairs + $objWriter->startElement('HeadingPairs'); + + // Vector + $objWriter->startElement('vt:vector'); + $objWriter->writeAttribute('size', '2'); + $objWriter->writeAttribute('baseType', 'variant'); + + // Variant + $objWriter->startElement('vt:variant'); + $objWriter->writeElement('vt:lpstr', 'Worksheets'); + $objWriter->endElement(); + + // Variant + $objWriter->startElement('vt:variant'); + $objWriter->writeElement('vt:i4', $pPHPExcel->getSheetCount()); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // TitlesOfParts + $objWriter->startElement('TitlesOfParts'); + + // Vector + $objWriter->startElement('vt:vector'); + $objWriter->writeAttribute('size', $pPHPExcel->getSheetCount()); + $objWriter->writeAttribute('baseType', 'lpstr'); + + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + $objWriter->writeElement('vt:lpstr', $pPHPExcel->getSheet($i)->getTitle()); + } + + $objWriter->endElement(); + + $objWriter->endElement(); + + // Company + $objWriter->writeElement('Company', $pPHPExcel->getProperties()->getCompany()); + + // Company + $objWriter->writeElement('Manager', $pPHPExcel->getProperties()->getManager()); + + // LinksUpToDate + $objWriter->writeElement('LinksUpToDate', 'false'); + + // SharedDoc + $objWriter->writeElement('SharedDoc', 'false'); + + // HyperlinksChanged + $objWriter->writeElement('HyperlinksChanged', 'false'); + + // AppVersion + $objWriter->writeElement('AppVersion', '12.0000'); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write docProps/core.xml to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeDocPropsCore(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // cp:coreProperties + $objWriter->startElement('cp:coreProperties'); + $objWriter->writeAttribute('xmlns:cp', 'http://schemas.openxmlformats.org/package/2006/metadata/core-properties'); + $objWriter->writeAttribute('xmlns:dc', 'http://purl.org/dc/elements/1.1/'); + $objWriter->writeAttribute('xmlns:dcterms', 'http://purl.org/dc/terms/'); + $objWriter->writeAttribute('xmlns:dcmitype', 'http://purl.org/dc/dcmitype/'); + $objWriter->writeAttribute('xmlns:xsi', 'http://www.w3.org/2001/XMLSchema-instance'); + + // dc:creator + $objWriter->writeElement('dc:creator', $pPHPExcel->getProperties()->getCreator()); + + // cp:lastModifiedBy + $objWriter->writeElement('cp:lastModifiedBy', $pPHPExcel->getProperties()->getLastModifiedBy()); + + // dcterms:created + $objWriter->startElement('dcterms:created'); + $objWriter->writeAttribute('xsi:type', 'dcterms:W3CDTF'); + $objWriter->writeRawData(date(DATE_W3C, $pPHPExcel->getProperties()->getCreated())); + $objWriter->endElement(); + + // dcterms:modified + $objWriter->startElement('dcterms:modified'); + $objWriter->writeAttribute('xsi:type', 'dcterms:W3CDTF'); + $objWriter->writeRawData(date(DATE_W3C, $pPHPExcel->getProperties()->getModified())); + $objWriter->endElement(); + + // dc:title + $objWriter->writeElement('dc:title', $pPHPExcel->getProperties()->getTitle()); + + // dc:description + $objWriter->writeElement('dc:description', $pPHPExcel->getProperties()->getDescription()); + + // dc:subject + $objWriter->writeElement('dc:subject', $pPHPExcel->getProperties()->getSubject()); + + // cp:keywords + $objWriter->writeElement('cp:keywords', $pPHPExcel->getProperties()->getKeywords()); + + // cp:category + $objWriter->writeElement('cp:category', $pPHPExcel->getProperties()->getCategory()); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write docProps/custom.xml to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeDocPropsCustom(PHPExcel $pPHPExcel = null) + { + $customPropertyList = $pPHPExcel->getProperties()->getCustomProperties(); + if (empty($customPropertyList)) { + return; + } + + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // cp:coreProperties + $objWriter->startElement('Properties'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/officeDocument/2006/custom-properties'); + $objWriter->writeAttribute('xmlns:vt', 'http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes'); + + + foreach ($customPropertyList as $key => $customProperty) { + $propertyValue = $pPHPExcel->getProperties()->getCustomPropertyValue($customProperty); + $propertyType = $pPHPExcel->getProperties()->getCustomPropertyType($customProperty); + + $objWriter->startElement('property'); + $objWriter->writeAttribute('fmtid', '{D5CDD505-2E9C-101B-9397-08002B2CF9AE}'); + $objWriter->writeAttribute('pid', $key+2); + $objWriter->writeAttribute('name', $customProperty); + + switch ($propertyType) { + case 'i': + $objWriter->writeElement('vt:i4', $propertyValue); + break; + case 'f': + $objWriter->writeElement('vt:r8', $propertyValue); + break; + case 'b': + $objWriter->writeElement('vt:bool', ($propertyValue) ? 'true' : 'false'); + break; + case 'd': + $objWriter->startElement('vt:filetime'); + $objWriter->writeRawData(date(DATE_W3C, $propertyValue)); + $objWriter->endElement(); + break; + default: + $objWriter->writeElement('vt:lpwstr', $propertyValue); + break; + } + + $objWriter->endElement(); + } + + + $objWriter->endElement(); + + return $objWriter->getData(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Drawing.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Drawing.php new file mode 100644 index 0000000..2814388 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Drawing.php @@ -0,0 +1,589 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_Drawing + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007_Drawing extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write drawings to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @param int &$chartRef Chart ID + * @param boolean $includeCharts Flag indicating if we should include drawing details for charts + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeDrawings(PHPExcel_Worksheet $pWorksheet = null, &$chartRef, $includeCharts = false) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // xdr:wsDr + $objWriter->startElement('xdr:wsDr'); + $objWriter->writeAttribute('xmlns:xdr', 'http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing'); + $objWriter->writeAttribute('xmlns:a', 'http://schemas.openxmlformats.org/drawingml/2006/main'); + + // Loop through images and write drawings + $i = 1; + $iterator = $pWorksheet->getDrawingCollection()->getIterator(); + while ($iterator->valid()) { + $this->writeDrawing($objWriter, $iterator->current(), $i); + + $iterator->next(); + ++$i; + } + + if ($includeCharts) { + $chartCount = $pWorksheet->getChartCount(); + // Loop through charts and write the chart position + if ($chartCount > 0) { + for ($c = 0; $c < $chartCount; ++$c) { + $this->writeChart($objWriter, $pWorksheet->getChartByIndex($c), $c+$i); + } + } + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write drawings to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Chart $pChart + * @param int $pRelationId + * @throws PHPExcel_Writer_Exception + */ + public function writeChart(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Chart $pChart = null, $pRelationId = -1) + { + $tl = $pChart->getTopLeftPosition(); + $tl['colRow'] = PHPExcel_Cell::coordinateFromString($tl['cell']); + $br = $pChart->getBottomRightPosition(); + $br['colRow'] = PHPExcel_Cell::coordinateFromString($br['cell']); + + $objWriter->startElement('xdr:twoCellAnchor'); + + $objWriter->startElement('xdr:from'); + $objWriter->writeElement('xdr:col', PHPExcel_Cell::columnIndexFromString($tl['colRow'][0]) - 1); + $objWriter->writeElement('xdr:colOff', PHPExcel_Shared_Drawing::pixelsToEMU($tl['xOffset'])); + $objWriter->writeElement('xdr:row', $tl['colRow'][1] - 1); + $objWriter->writeElement('xdr:rowOff', PHPExcel_Shared_Drawing::pixelsToEMU($tl['yOffset'])); + $objWriter->endElement(); + $objWriter->startElement('xdr:to'); + $objWriter->writeElement('xdr:col', PHPExcel_Cell::columnIndexFromString($br['colRow'][0]) - 1); + $objWriter->writeElement('xdr:colOff', PHPExcel_Shared_Drawing::pixelsToEMU($br['xOffset'])); + $objWriter->writeElement('xdr:row', $br['colRow'][1] - 1); + $objWriter->writeElement('xdr:rowOff', PHPExcel_Shared_Drawing::pixelsToEMU($br['yOffset'])); + $objWriter->endElement(); + + $objWriter->startElement('xdr:graphicFrame'); + $objWriter->writeAttribute('macro', ''); + $objWriter->startElement('xdr:nvGraphicFramePr'); + $objWriter->startElement('xdr:cNvPr'); + $objWriter->writeAttribute('name', 'Chart '.$pRelationId); + $objWriter->writeAttribute('id', 1025 * $pRelationId); + $objWriter->endElement(); + $objWriter->startElement('xdr:cNvGraphicFramePr'); + $objWriter->startElement('a:graphicFrameLocks'); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('xdr:xfrm'); + $objWriter->startElement('a:off'); + $objWriter->writeAttribute('x', '0'); + $objWriter->writeAttribute('y', '0'); + $objWriter->endElement(); + $objWriter->startElement('a:ext'); + $objWriter->writeAttribute('cx', '0'); + $objWriter->writeAttribute('cy', '0'); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('a:graphic'); + $objWriter->startElement('a:graphicData'); + $objWriter->writeAttribute('uri', 'http://schemas.openxmlformats.org/drawingml/2006/chart'); + $objWriter->startElement('c:chart'); + $objWriter->writeAttribute('xmlns:c', 'http://schemas.openxmlformats.org/drawingml/2006/chart'); + $objWriter->writeAttribute('xmlns:r', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + $objWriter->writeAttribute('r:id', 'rId'.$pRelationId); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('xdr:clientData'); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write drawings to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet_BaseDrawing $pDrawing + * @param int $pRelationId + * @throws PHPExcel_Writer_Exception + */ + public function writeDrawing(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet_BaseDrawing $pDrawing = null, $pRelationId = -1) + { + if ($pRelationId >= 0) { + // xdr:oneCellAnchor + $objWriter->startElement('xdr:oneCellAnchor'); + // Image location + $aCoordinates = PHPExcel_Cell::coordinateFromString($pDrawing->getCoordinates()); + $aCoordinates[0] = PHPExcel_Cell::columnIndexFromString($aCoordinates[0]); + + // xdr:from + $objWriter->startElement('xdr:from'); + $objWriter->writeElement('xdr:col', $aCoordinates[0] - 1); + $objWriter->writeElement('xdr:colOff', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getOffsetX())); + $objWriter->writeElement('xdr:row', $aCoordinates[1] - 1); + $objWriter->writeElement('xdr:rowOff', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getOffsetY())); + $objWriter->endElement(); + + // xdr:ext + $objWriter->startElement('xdr:ext'); + $objWriter->writeAttribute('cx', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getWidth())); + $objWriter->writeAttribute('cy', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getHeight())); + $objWriter->endElement(); + + // xdr:pic + $objWriter->startElement('xdr:pic'); + + // xdr:nvPicPr + $objWriter->startElement('xdr:nvPicPr'); + + // xdr:cNvPr + $objWriter->startElement('xdr:cNvPr'); + $objWriter->writeAttribute('id', $pRelationId); + $objWriter->writeAttribute('name', $pDrawing->getName()); + $objWriter->writeAttribute('descr', $pDrawing->getDescription()); + $objWriter->endElement(); + + // xdr:cNvPicPr + $objWriter->startElement('xdr:cNvPicPr'); + + // a:picLocks + $objWriter->startElement('a:picLocks'); + $objWriter->writeAttribute('noChangeAspect', '1'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // xdr:blipFill + $objWriter->startElement('xdr:blipFill'); + + // a:blip + $objWriter->startElement('a:blip'); + $objWriter->writeAttribute('xmlns:r', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + $objWriter->writeAttribute('r:embed', 'rId' . $pRelationId); + $objWriter->endElement(); + + // a:stretch + $objWriter->startElement('a:stretch'); + $objWriter->writeElement('a:fillRect', null); + $objWriter->endElement(); + + $objWriter->endElement(); + + // xdr:spPr + $objWriter->startElement('xdr:spPr'); + + // a:xfrm + $objWriter->startElement('a:xfrm'); + $objWriter->writeAttribute('rot', PHPExcel_Shared_Drawing::degreesToAngle($pDrawing->getRotation())); + $objWriter->endElement(); + + // a:prstGeom + $objWriter->startElement('a:prstGeom'); + $objWriter->writeAttribute('prst', 'rect'); + + // a:avLst + $objWriter->writeElement('a:avLst', null); + + $objWriter->endElement(); + +// // a:solidFill +// $objWriter->startElement('a:solidFill'); + +// // a:srgbClr +// $objWriter->startElement('a:srgbClr'); +// $objWriter->writeAttribute('val', 'FFFFFF'); + +///* SHADE +// // a:shade +// $objWriter->startElement('a:shade'); +// $objWriter->writeAttribute('val', '85000'); +// $objWriter->endElement(); +//*/ + +// $objWriter->endElement(); + +// $objWriter->endElement(); +/* + // a:ln + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', '88900'); + $objWriter->writeAttribute('cap', 'sq'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', 'FFFFFF'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:miter + $objWriter->startElement('a:miter'); + $objWriter->writeAttribute('lim', '800000'); + $objWriter->endElement(); + + $objWriter->endElement(); +*/ + + if ($pDrawing->getShadow()->getVisible()) { + // a:effectLst + $objWriter->startElement('a:effectLst'); + + // a:outerShdw + $objWriter->startElement('a:outerShdw'); + $objWriter->writeAttribute('blurRad', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getShadow()->getBlurRadius())); + $objWriter->writeAttribute('dist', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getShadow()->getDistance())); + $objWriter->writeAttribute('dir', PHPExcel_Shared_Drawing::degreesToAngle($pDrawing->getShadow()->getDirection())); + $objWriter->writeAttribute('algn', $pDrawing->getShadow()->getAlignment()); + $objWriter->writeAttribute('rotWithShape', '0'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', $pDrawing->getShadow()->getColor()->getRGB()); + + // a:alpha + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $pDrawing->getShadow()->getAlpha() * 1000); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + } +/* + + // a:scene3d + $objWriter->startElement('a:scene3d'); + + // a:camera + $objWriter->startElement('a:camera'); + $objWriter->writeAttribute('prst', 'orthographicFront'); + $objWriter->endElement(); + + // a:lightRig + $objWriter->startElement('a:lightRig'); + $objWriter->writeAttribute('rig', 'twoPt'); + $objWriter->writeAttribute('dir', 't'); + + // a:rot + $objWriter->startElement('a:rot'); + $objWriter->writeAttribute('lat', '0'); + $objWriter->writeAttribute('lon', '0'); + $objWriter->writeAttribute('rev', '0'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); +*/ +/* + // a:sp3d + $objWriter->startElement('a:sp3d'); + + // a:bevelT + $objWriter->startElement('a:bevelT'); + $objWriter->writeAttribute('w', '25400'); + $objWriter->writeAttribute('h', '19050'); + $objWriter->endElement(); + + // a:contourClr + $objWriter->startElement('a:contourClr'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', 'FFFFFF'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); +*/ + $objWriter->endElement(); + + $objWriter->endElement(); + + // xdr:clientData + $objWriter->writeElement('xdr:clientData', null); + + $objWriter->endElement(); + } else { + throw new PHPExcel_Writer_Exception("Invalid parameters passed."); + } + } + + /** + * Write VML header/footer images to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeVMLHeaderFooterImages(PHPExcel_Worksheet $pWorksheet = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Header/footer images + $images = $pWorksheet->getHeaderFooter()->getImages(); + + // xml + $objWriter->startElement('xml'); + $objWriter->writeAttribute('xmlns:v', 'urn:schemas-microsoft-com:vml'); + $objWriter->writeAttribute('xmlns:o', 'urn:schemas-microsoft-com:office:office'); + $objWriter->writeAttribute('xmlns:x', 'urn:schemas-microsoft-com:office:excel'); + + // o:shapelayout + $objWriter->startElement('o:shapelayout'); + $objWriter->writeAttribute('v:ext', 'edit'); + + // o:idmap + $objWriter->startElement('o:idmap'); + $objWriter->writeAttribute('v:ext', 'edit'); + $objWriter->writeAttribute('data', '1'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // v:shapetype + $objWriter->startElement('v:shapetype'); + $objWriter->writeAttribute('id', '_x0000_t75'); + $objWriter->writeAttribute('coordsize', '21600,21600'); + $objWriter->writeAttribute('o:spt', '75'); + $objWriter->writeAttribute('o:preferrelative', 't'); + $objWriter->writeAttribute('path', 'm@4@5l@4@11@9@11@9@5xe'); + $objWriter->writeAttribute('filled', 'f'); + $objWriter->writeAttribute('stroked', 'f'); + + // v:stroke + $objWriter->startElement('v:stroke'); + $objWriter->writeAttribute('joinstyle', 'miter'); + $objWriter->endElement(); + + // v:formulas + $objWriter->startElement('v:formulas'); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'if lineDrawn pixelLineWidth 0'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'sum @0 1 0'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'sum 0 0 @1'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @2 1 2'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @3 21600 pixelWidth'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @3 21600 pixelHeight'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'sum @0 0 1'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @6 1 2'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @7 21600 pixelWidth'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'sum @8 21600 0'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @7 21600 pixelHeight'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'sum @10 21600 0'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // v:path + $objWriter->startElement('v:path'); + $objWriter->writeAttribute('o:extrusionok', 'f'); + $objWriter->writeAttribute('gradientshapeok', 't'); + $objWriter->writeAttribute('o:connecttype', 'rect'); + $objWriter->endElement(); + + // o:lock + $objWriter->startElement('o:lock'); + $objWriter->writeAttribute('v:ext', 'edit'); + $objWriter->writeAttribute('aspectratio', 't'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // Loop through images + foreach ($images as $key => $value) { + $this->writeVMLHeaderFooterImage($objWriter, $key, $value); + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write VML comment to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pReference Reference + * @param PHPExcel_Worksheet_HeaderFooterDrawing $pImage Image + * @throws PHPExcel_Writer_Exception + */ + private function writeVMLHeaderFooterImage(PHPExcel_Shared_XMLWriter $objWriter = null, $pReference = '', PHPExcel_Worksheet_HeaderFooterDrawing $pImage = null) + { + // Calculate object id + preg_match('{(\d+)}', md5($pReference), $m); + $id = 1500 + (substr($m[1], 0, 2) * 1); + + // Calculate offset + $width = $pImage->getWidth(); + $height = $pImage->getHeight(); + $marginLeft = $pImage->getOffsetX(); + $marginTop = $pImage->getOffsetY(); + + // v:shape + $objWriter->startElement('v:shape'); + $objWriter->writeAttribute('id', $pReference); + $objWriter->writeAttribute('o:spid', '_x0000_s' . $id); + $objWriter->writeAttribute('type', '#_x0000_t75'); + $objWriter->writeAttribute('style', "position:absolute;margin-left:{$marginLeft}px;margin-top:{$marginTop}px;width:{$width}px;height:{$height}px;z-index:1"); + + // v:imagedata + $objWriter->startElement('v:imagedata'); + $objWriter->writeAttribute('o:relid', 'rId' . $pReference); + $objWriter->writeAttribute('o:title', $pImage->getName()); + $objWriter->endElement(); + + // o:lock + $objWriter->startElement('o:lock'); + $objWriter->writeAttribute('v:ext', 'edit'); + $objWriter->writeAttribute('rotation', 't'); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + + /** + * Get an array of all drawings + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Worksheet_Drawing[] All drawings in PHPExcel + * @throws PHPExcel_Writer_Exception + */ + public function allDrawings(PHPExcel $pPHPExcel = null) + { + // Get an array of all drawings + $aDrawings = array(); + + // Loop through PHPExcel + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + // Loop through images and add to array + $iterator = $pPHPExcel->getSheet($i)->getDrawingCollection()->getIterator(); + while ($iterator->valid()) { + $aDrawings[] = $iterator->current(); + + $iterator->next(); + } + } + + return $aDrawings; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Rels.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Rels.php new file mode 100644 index 0000000..14ff337 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Rels.php @@ -0,0 +1,424 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_Rels + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007_Rels extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write relationships to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeRelationships(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + + $customPropertyList = $pPHPExcel->getProperties()->getCustomProperties(); + if (!empty($customPropertyList)) { + // Relationship docProps/app.xml + $this->writeRelationship( + $objWriter, + 4, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties', + 'docProps/custom.xml' + ); + + } + + // Relationship docProps/app.xml + $this->writeRelationship( + $objWriter, + 3, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties', + 'docProps/app.xml' + ); + + // Relationship docProps/core.xml + $this->writeRelationship( + $objWriter, + 2, + 'http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties', + 'docProps/core.xml' + ); + + // Relationship xl/workbook.xml + $this->writeRelationship( + $objWriter, + 1, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument', + 'xl/workbook.xml' + ); + // a custom UI in workbook ? + if ($pPHPExcel->hasRibbon()) { + $this->writeRelationShip( + $objWriter, + 5, + 'http://schemas.microsoft.com/office/2006/relationships/ui/extensibility', + $pPHPExcel->getRibbonXMLData('target') + ); + } + + $objWriter->endElement(); + + return $objWriter->getData(); + } + + /** + * Write workbook relationships to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeWorkbookRelationships(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + + // Relationship styles.xml + $this->writeRelationship( + $objWriter, + 1, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles', + 'styles.xml' + ); + + // Relationship theme/theme1.xml + $this->writeRelationship( + $objWriter, + 2, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme', + 'theme/theme1.xml' + ); + + // Relationship sharedStrings.xml + $this->writeRelationship( + $objWriter, + 3, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings', + 'sharedStrings.xml' + ); + + // Relationships with sheets + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + $this->writeRelationship( + $objWriter, + ($i + 1 + 3), + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet', + 'worksheets/sheet' . ($i + 1) . '.xml' + ); + } + // Relationships for vbaProject if needed + // id : just after the last sheet + if ($pPHPExcel->hasMacros()) { + $this->writeRelationShip( + $objWriter, + ($i + 1 + 3), + 'http://schemas.microsoft.com/office/2006/relationships/vbaProject', + 'vbaProject.bin' + ); + ++$i;//increment i if needed for an another relation + } + + $objWriter->endElement(); + + return $objWriter->getData(); + } + + /** + * Write worksheet relationships to XML format + * + * Numbering is as follows: + * rId1 - Drawings + * rId_hyperlink_x - Hyperlinks + * + * @param PHPExcel_Worksheet $pWorksheet + * @param int $pWorksheetId + * @param boolean $includeCharts Flag indicating if we should write charts + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeWorksheetRelationships(PHPExcel_Worksheet $pWorksheet = null, $pWorksheetId = 1, $includeCharts = false) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + + // Write drawing relationships? + $d = 0; + if ($includeCharts) { + $charts = $pWorksheet->getChartCollection(); + } else { + $charts = array(); + } + if (($pWorksheet->getDrawingCollection()->count() > 0) || + (count($charts) > 0)) { + $this->writeRelationship( + $objWriter, + ++$d, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing', + '../drawings/drawing' . $pWorksheetId . '.xml' + ); + } + + // Write chart relationships? +// $chartCount = 0; +// $charts = $pWorksheet->getChartCollection(); +// echo 'Chart Rels: ' , count($charts) , '<br />'; +// if (count($charts) > 0) { +// foreach ($charts as $chart) { +// $this->writeRelationship( +// $objWriter, +// ++$d, +// 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart', +// '../charts/chart' . ++$chartCount . '.xml' +// ); +// } +// } +// + // Write hyperlink relationships? + $i = 1; + foreach ($pWorksheet->getHyperlinkCollection() as $hyperlink) { + if (!$hyperlink->isInternal()) { + $this->writeRelationship( + $objWriter, + '_hyperlink_' . $i, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink', + $hyperlink->getUrl(), + 'External' + ); + + ++$i; + } + } + + // Write comments relationship? + $i = 1; + if (count($pWorksheet->getComments()) > 0) { + $this->writeRelationship( + $objWriter, + '_comments_vml' . $i, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing', + '../drawings/vmlDrawing' . $pWorksheetId . '.vml' + ); + + $this->writeRelationship( + $objWriter, + '_comments' . $i, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments', + '../comments' . $pWorksheetId . '.xml' + ); + } + + // Write header/footer relationship? + $i = 1; + if (count($pWorksheet->getHeaderFooter()->getImages()) > 0) { + $this->writeRelationship( + $objWriter, + '_headerfooter_vml' . $i, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing', + '../drawings/vmlDrawingHF' . $pWorksheetId . '.vml' + ); + } + + $objWriter->endElement(); + + return $objWriter->getData(); + } + + /** + * Write drawing relationships to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @param int &$chartRef Chart ID + * @param boolean $includeCharts Flag indicating if we should write charts + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeDrawingRelationships(PHPExcel_Worksheet $pWorksheet = null, &$chartRef, $includeCharts = false) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + + // Loop through images and write relationships + $i = 1; + $iterator = $pWorksheet->getDrawingCollection()->getIterator(); + while ($iterator->valid()) { + if ($iterator->current() instanceof PHPExcel_Worksheet_Drawing + || $iterator->current() instanceof PHPExcel_Worksheet_MemoryDrawing) { + // Write relationship for image drawing + $this->writeRelationship( + $objWriter, + $i, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image', + '../media/' . str_replace(' ', '', $iterator->current()->getIndexedFilename()) + ); + } + + $iterator->next(); + ++$i; + } + + if ($includeCharts) { + // Loop through charts and write relationships + $chartCount = $pWorksheet->getChartCount(); + if ($chartCount > 0) { + for ($c = 0; $c < $chartCount; ++$c) { + $this->writeRelationship( + $objWriter, + $i++, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart', + '../charts/chart' . ++$chartRef . '.xml' + ); + } + } + } + + $objWriter->endElement(); + + return $objWriter->getData(); + } + + /** + * Write header/footer drawing relationships to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeHeaderFooterDrawingRelationships(PHPExcel_Worksheet $pWorksheet = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + + // Loop through images and write relationships + foreach ($pWorksheet->getHeaderFooter()->getImages() as $key => $value) { + // Write relationship for image drawing + $this->writeRelationship( + $objWriter, + $key, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image', + '../media/' . $value->getIndexedFilename() + ); + } + + $objWriter->endElement(); + + return $objWriter->getData(); + } + + /** + * Write Override content type + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param int $pId Relationship ID. rId will be prepended! + * @param string $pType Relationship type + * @param string $pTarget Relationship target + * @param string $pTargetMode Relationship target mode + * @throws PHPExcel_Writer_Exception + */ + private function writeRelationship(PHPExcel_Shared_XMLWriter $objWriter = null, $pId = 1, $pType = '', $pTarget = '', $pTargetMode = '') + { + if ($pType != '' && $pTarget != '') { + // Write relationship + $objWriter->startElement('Relationship'); + $objWriter->writeAttribute('Id', 'rId' . $pId); + $objWriter->writeAttribute('Type', $pType); + $objWriter->writeAttribute('Target', $pTarget); + + if ($pTargetMode != '') { + $objWriter->writeAttribute('TargetMode', $pTargetMode); + } + + $objWriter->endElement(); + } else { + throw new PHPExcel_Writer_Exception("Invalid parameters passed."); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/RelsRibbon.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/RelsRibbon.php new file mode 100644 index 0000000..5a4a9fc --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/RelsRibbon.php @@ -0,0 +1,67 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_RelsRibbon + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007_RelsRibbon extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write relationships for additional objects of custom UI (ribbon) + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeRibbonRelationships(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + $localRels = $pPHPExcel->getRibbonBinObjects('names'); + if (is_array($localRels)) { + foreach ($localRels as $aId => $aTarget) { + $objWriter->startElement('Relationship'); + $objWriter->writeAttribute('Id', $aId); + $objWriter->writeAttribute('Type', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image'); + $objWriter->writeAttribute('Target', $aTarget); + $objWriter->endElement(); + } + } + $objWriter->endElement(); + + return $objWriter->getData(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/RelsVBA.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/RelsVBA.php new file mode 100644 index 0000000..bee0e64 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/RelsVBA.php @@ -0,0 +1,63 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_RelsVBA + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007_RelsVBA extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write relationships for a signed VBA Project + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeVBARelationships(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + $objWriter->startElement('Relationship'); + $objWriter->writeAttribute('Id', 'rId1'); + $objWriter->writeAttribute('Type', 'http://schemas.microsoft.com/office/2006/relationships/vbaProjectSignature'); + $objWriter->writeAttribute('Target', 'vbaProjectSignature.bin'); + $objWriter->endElement(); + $objWriter->endElement(); + + return $objWriter->getData(); + + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/StringTable.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/StringTable.php new file mode 100644 index 0000000..fccec66 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/StringTable.php @@ -0,0 +1,313 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_StringTable + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007_StringTable extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Create worksheet stringtable + * + * @param PHPExcel_Worksheet $pSheet Worksheet + * @param string[] $pExistingTable Existing table to eventually merge with + * @return string[] String table for worksheet + * @throws PHPExcel_Writer_Exception + */ + public function createStringTable($pSheet = null, $pExistingTable = null) + { + if ($pSheet !== null) { + // Create string lookup table + $aStringTable = array(); + $cellCollection = null; + $aFlippedStringTable = null; // For faster lookup + + // Is an existing table given? + if (($pExistingTable !== null) && is_array($pExistingTable)) { + $aStringTable = $pExistingTable; + } + + // Fill index array + $aFlippedStringTable = $this->flipStringTable($aStringTable); + + // Loop through cells + foreach ($pSheet->getCellCollection() as $cellID) { + $cell = $pSheet->getCell($cellID); + $cellValue = $cell->getValue(); + if (!is_object($cellValue) && + ($cellValue !== null) && + $cellValue !== '' && + !isset($aFlippedStringTable[$cellValue]) && + ($cell->getDataType() == PHPExcel_Cell_DataType::TYPE_STRING || $cell->getDataType() == PHPExcel_Cell_DataType::TYPE_STRING2 || $cell->getDataType() == PHPExcel_Cell_DataType::TYPE_NULL)) { + $aStringTable[] = $cellValue; + $aFlippedStringTable[$cellValue] = true; + } elseif ($cellValue instanceof PHPExcel_RichText && + ($cellValue !== null) && + !isset($aFlippedStringTable[$cellValue->getHashCode()])) { + $aStringTable[] = $cellValue; + $aFlippedStringTable[$cellValue->getHashCode()] = true; + } + } + + return $aStringTable; + } else { + throw new PHPExcel_Writer_Exception("Invalid PHPExcel_Worksheet object passed."); + } + } + + /** + * Write string table to XML format + * + * @param string[] $pStringTable + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeStringTable($pStringTable = null) + { + if ($pStringTable !== null) { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // String table + $objWriter->startElement('sst'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/spreadsheetml/2006/main'); + $objWriter->writeAttribute('uniqueCount', count($pStringTable)); + + // Loop through string table + foreach ($pStringTable as $textElement) { + $objWriter->startElement('si'); + + if (! $textElement instanceof PHPExcel_RichText) { + $textToWrite = PHPExcel_Shared_String::ControlCharacterPHP2OOXML($textElement); + $objWriter->startElement('t'); + if ($textToWrite !== trim($textToWrite)) { + $objWriter->writeAttribute('xml:space', 'preserve'); + } + $objWriter->writeRawData($textToWrite); + $objWriter->endElement(); + } elseif ($textElement instanceof PHPExcel_RichText) { + $this->writeRichText($objWriter, $textElement); + } + + $objWriter->endElement(); + } + + $objWriter->endElement(); + + return $objWriter->getData(); + } else { + throw new PHPExcel_Writer_Exception("Invalid string table array passed."); + } + } + + /** + * Write Rich Text + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_RichText $pRichText Rich text + * @param string $prefix Optional Namespace prefix + * @throws PHPExcel_Writer_Exception + */ + public function writeRichText(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_RichText $pRichText = null, $prefix = null) + { + if ($prefix !== null) { + $prefix .= ':'; + } + + // Loop through rich text elements + $elements = $pRichText->getRichTextElements(); + foreach ($elements as $element) { + // r + $objWriter->startElement($prefix.'r'); + + // rPr + if ($element instanceof PHPExcel_RichText_Run) { + // rPr + $objWriter->startElement($prefix.'rPr'); + + // rFont + $objWriter->startElement($prefix.'rFont'); + $objWriter->writeAttribute('val', $element->getFont()->getName()); + $objWriter->endElement(); + + // Bold + $objWriter->startElement($prefix.'b'); + $objWriter->writeAttribute('val', ($element->getFont()->getBold() ? 'true' : 'false')); + $objWriter->endElement(); + + // Italic + $objWriter->startElement($prefix.'i'); + $objWriter->writeAttribute('val', ($element->getFont()->getItalic() ? 'true' : 'false')); + $objWriter->endElement(); + + // Superscript / subscript + if ($element->getFont()->getSuperScript() || $element->getFont()->getSubScript()) { + $objWriter->startElement($prefix.'vertAlign'); + if ($element->getFont()->getSuperScript()) { + $objWriter->writeAttribute('val', 'superscript'); + } elseif ($element->getFont()->getSubScript()) { + $objWriter->writeAttribute('val', 'subscript'); + } + $objWriter->endElement(); + } + + // Strikethrough + $objWriter->startElement($prefix.'strike'); + $objWriter->writeAttribute('val', ($element->getFont()->getStrikethrough() ? 'true' : 'false')); + $objWriter->endElement(); + + // Color + $objWriter->startElement($prefix.'color'); + $objWriter->writeAttribute('rgb', $element->getFont()->getColor()->getARGB()); + $objWriter->endElement(); + + // Size + $objWriter->startElement($prefix.'sz'); + $objWriter->writeAttribute('val', $element->getFont()->getSize()); + $objWriter->endElement(); + + // Underline + $objWriter->startElement($prefix.'u'); + $objWriter->writeAttribute('val', $element->getFont()->getUnderline()); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + // t + $objWriter->startElement($prefix.'t'); + $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeRawData(PHPExcel_Shared_String::ControlCharacterPHP2OOXML($element->getText())); + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + + /** + * Write Rich Text + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string|PHPExcel_RichText $pRichText text string or Rich text + * @param string $prefix Optional Namespace prefix + * @throws PHPExcel_Writer_Exception + */ + public function writeRichTextForCharts(PHPExcel_Shared_XMLWriter $objWriter = null, $pRichText = null, $prefix = null) + { + if (!$pRichText instanceof PHPExcel_RichText) { + $textRun = $pRichText; + $pRichText = new PHPExcel_RichText(); + $pRichText->createTextRun($textRun); + } + + if ($prefix !== null) { + $prefix .= ':'; + } + + // Loop through rich text elements + $elements = $pRichText->getRichTextElements(); + foreach ($elements as $element) { + // r + $objWriter->startElement($prefix.'r'); + + // rPr + $objWriter->startElement($prefix.'rPr'); + + // Bold + $objWriter->writeAttribute('b', ($element->getFont()->getBold() ? 1 : 0)); + // Italic + $objWriter->writeAttribute('i', ($element->getFont()->getItalic() ? 1 : 0)); + // Underline + $underlineType = $element->getFont()->getUnderline(); + switch ($underlineType) { + case 'single': + $underlineType = 'sng'; + break; + case 'double': + $underlineType = 'dbl'; + break; + } + $objWriter->writeAttribute('u', $underlineType); + // Strikethrough + $objWriter->writeAttribute('strike', ($element->getFont()->getStrikethrough() ? 'sngStrike' : 'noStrike')); + + // rFont + $objWriter->startElement($prefix.'latin'); + $objWriter->writeAttribute('typeface', $element->getFont()->getName()); + $objWriter->endElement(); + + // Superscript / subscript +// if ($element->getFont()->getSuperScript() || $element->getFont()->getSubScript()) { +// $objWriter->startElement($prefix.'vertAlign'); +// if ($element->getFont()->getSuperScript()) { +// $objWriter->writeAttribute('val', 'superscript'); +// } elseif ($element->getFont()->getSubScript()) { +// $objWriter->writeAttribute('val', 'subscript'); +// } +// $objWriter->endElement(); +// } +// + $objWriter->endElement(); + + // t + $objWriter->startElement($prefix.'t'); +// $objWriter->writeAttribute('xml:space', 'preserve'); // Excel2010 accepts, Excel2007 complains + $objWriter->writeRawData(PHPExcel_Shared_String::ControlCharacterPHP2OOXML($element->getText())); + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + + /** + * Flip string table (for index searching) + * + * @param array $stringTable Stringtable + * @return array + */ + public function flipStringTable($stringTable = array()) + { + // Return value + $returnValue = array(); + + // Loop through stringtable and add flipped items to $returnValue + foreach ($stringTable as $key => $value) { + if (! $value instanceof PHPExcel_RichText) { + $returnValue[$value] = $key; + } elseif ($value instanceof PHPExcel_RichText) { + $returnValue[$value->getHashCode()] = $key; + } + } + + return $returnValue; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Style.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Style.php new file mode 100644 index 0000000..d3f0af7 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Style.php @@ -0,0 +1,696 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_Style + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007_Style extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write styles to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeStyles(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // styleSheet + $objWriter->startElement('styleSheet'); + $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/spreadsheetml/2006/main'); + + // numFmts + $objWriter->startElement('numFmts'); + $objWriter->writeAttribute('count', $this->getParentWriter()->getNumFmtHashTable()->count()); + + // numFmt + for ($i = 0; $i < $this->getParentWriter()->getNumFmtHashTable()->count(); ++$i) { + $this->writeNumFmt($objWriter, $this->getParentWriter()->getNumFmtHashTable()->getByIndex($i), $i); + } + + $objWriter->endElement(); + + // fonts + $objWriter->startElement('fonts'); + $objWriter->writeAttribute('count', $this->getParentWriter()->getFontHashTable()->count()); + + // font + for ($i = 0; $i < $this->getParentWriter()->getFontHashTable()->count(); ++$i) { + $this->writeFont($objWriter, $this->getParentWriter()->getFontHashTable()->getByIndex($i)); + } + + $objWriter->endElement(); + + // fills + $objWriter->startElement('fills'); + $objWriter->writeAttribute('count', $this->getParentWriter()->getFillHashTable()->count()); + + // fill + for ($i = 0; $i < $this->getParentWriter()->getFillHashTable()->count(); ++$i) { + $this->writeFill($objWriter, $this->getParentWriter()->getFillHashTable()->getByIndex($i)); + } + + $objWriter->endElement(); + + // borders + $objWriter->startElement('borders'); + $objWriter->writeAttribute('count', $this->getParentWriter()->getBordersHashTable()->count()); + + // border + for ($i = 0; $i < $this->getParentWriter()->getBordersHashTable()->count(); ++$i) { + $this->writeBorder($objWriter, $this->getParentWriter()->getBordersHashTable()->getByIndex($i)); + } + + $objWriter->endElement(); + + // cellStyleXfs + $objWriter->startElement('cellStyleXfs'); + $objWriter->writeAttribute('count', 1); + + // xf + $objWriter->startElement('xf'); + $objWriter->writeAttribute('numFmtId', 0); + $objWriter->writeAttribute('fontId', 0); + $objWriter->writeAttribute('fillId', 0); + $objWriter->writeAttribute('borderId', 0); + $objWriter->endElement(); + + $objWriter->endElement(); + + // cellXfs + $objWriter->startElement('cellXfs'); + $objWriter->writeAttribute('count', count($pPHPExcel->getCellXfCollection())); + + // xf + foreach ($pPHPExcel->getCellXfCollection() as $cellXf) { + $this->writeCellStyleXf($objWriter, $cellXf, $pPHPExcel); + } + + $objWriter->endElement(); + + // cellStyles + $objWriter->startElement('cellStyles'); + $objWriter->writeAttribute('count', 1); + + // cellStyle + $objWriter->startElement('cellStyle'); + $objWriter->writeAttribute('name', 'Normal'); + $objWriter->writeAttribute('xfId', 0); + $objWriter->writeAttribute('builtinId', 0); + $objWriter->endElement(); + + $objWriter->endElement(); + + // dxfs + $objWriter->startElement('dxfs'); + $objWriter->writeAttribute('count', $this->getParentWriter()->getStylesConditionalHashTable()->count()); + + // dxf + for ($i = 0; $i < $this->getParentWriter()->getStylesConditionalHashTable()->count(); ++$i) { + $this->writeCellStyleDxf($objWriter, $this->getParentWriter()->getStylesConditionalHashTable()->getByIndex($i)->getStyle()); + } + + $objWriter->endElement(); + + // tableStyles + $objWriter->startElement('tableStyles'); + $objWriter->writeAttribute('defaultTableStyle', 'TableStyleMedium9'); + $objWriter->writeAttribute('defaultPivotStyle', 'PivotTableStyle1'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write Fill + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_Fill $pFill Fill style + * @throws PHPExcel_Writer_Exception + */ + private function writeFill(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Fill $pFill = null) + { + // Check if this is a pattern type or gradient type + if ($pFill->getFillType() === PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR || + $pFill->getFillType() === PHPExcel_Style_Fill::FILL_GRADIENT_PATH) { + // Gradient fill + $this->writeGradientFill($objWriter, $pFill); + } elseif ($pFill->getFillType() !== null) { + // Pattern fill + $this->writePatternFill($objWriter, $pFill); + } + } + + /** + * Write Gradient Fill + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_Fill $pFill Fill style + * @throws PHPExcel_Writer_Exception + */ + private function writeGradientFill(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Fill $pFill = null) + { + // fill + $objWriter->startElement('fill'); + + // gradientFill + $objWriter->startElement('gradientFill'); + $objWriter->writeAttribute('type', $pFill->getFillType()); + $objWriter->writeAttribute('degree', $pFill->getRotation()); + + // stop + $objWriter->startElement('stop'); + $objWriter->writeAttribute('position', '0'); + + // color + $objWriter->startElement('color'); + $objWriter->writeAttribute('rgb', $pFill->getStartColor()->getARGB()); + $objWriter->endElement(); + + $objWriter->endElement(); + + // stop + $objWriter->startElement('stop'); + $objWriter->writeAttribute('position', '1'); + + // color + $objWriter->startElement('color'); + $objWriter->writeAttribute('rgb', $pFill->getEndColor()->getARGB()); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Pattern Fill + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_Fill $pFill Fill style + * @throws PHPExcel_Writer_Exception + */ + private function writePatternFill(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Fill $pFill = null) + { + // fill + $objWriter->startElement('fill'); + + // patternFill + $objWriter->startElement('patternFill'); + $objWriter->writeAttribute('patternType', $pFill->getFillType()); + + if ($pFill->getFillType() !== PHPExcel_Style_Fill::FILL_NONE) { + // fgColor + if ($pFill->getStartColor()->getARGB()) { + $objWriter->startElement('fgColor'); + $objWriter->writeAttribute('rgb', $pFill->getStartColor()->getARGB()); + $objWriter->endElement(); + } + } + if ($pFill->getFillType() !== PHPExcel_Style_Fill::FILL_NONE) { + // bgColor + if ($pFill->getEndColor()->getARGB()) { + $objWriter->startElement('bgColor'); + $objWriter->writeAttribute('rgb', $pFill->getEndColor()->getARGB()); + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Font + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_Font $pFont Font style + * @throws PHPExcel_Writer_Exception + */ + private function writeFont(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Font $pFont = null) + { + // font + $objWriter->startElement('font'); + // Weird! The order of these elements actually makes a difference when opening Excel2007 + // files in Excel2003 with the compatibility pack. It's not documented behaviour, + // and makes for a real WTF! + + // Bold. We explicitly write this element also when false (like MS Office Excel 2007 does + // for conditional formatting). Otherwise it will apparently not be picked up in conditional + // formatting style dialog + if ($pFont->getBold() !== null) { + $objWriter->startElement('b'); + $objWriter->writeAttribute('val', $pFont->getBold() ? '1' : '0'); + $objWriter->endElement(); + } + + // Italic + if ($pFont->getItalic() !== null) { + $objWriter->startElement('i'); + $objWriter->writeAttribute('val', $pFont->getItalic() ? '1' : '0'); + $objWriter->endElement(); + } + + // Strikethrough + if ($pFont->getStrikethrough() !== null) { + $objWriter->startElement('strike'); + $objWriter->writeAttribute('val', $pFont->getStrikethrough() ? '1' : '0'); + $objWriter->endElement(); + } + + // Underline + if ($pFont->getUnderline() !== null) { + $objWriter->startElement('u'); + $objWriter->writeAttribute('val', $pFont->getUnderline()); + $objWriter->endElement(); + } + + // Superscript / subscript + if ($pFont->getSuperScript() === true || $pFont->getSubScript() === true) { + $objWriter->startElement('vertAlign'); + if ($pFont->getSuperScript() === true) { + $objWriter->writeAttribute('val', 'superscript'); + } elseif ($pFont->getSubScript() === true) { + $objWriter->writeAttribute('val', 'subscript'); + } + $objWriter->endElement(); + } + + // Size + if ($pFont->getSize() !== null) { + $objWriter->startElement('sz'); + $objWriter->writeAttribute('val', $pFont->getSize()); + $objWriter->endElement(); + } + + // Foreground color + if ($pFont->getColor()->getARGB() !== null) { + $objWriter->startElement('color'); + $objWriter->writeAttribute('rgb', $pFont->getColor()->getARGB()); + $objWriter->endElement(); + } + + // Name + if ($pFont->getName() !== null) { + $objWriter->startElement('name'); + $objWriter->writeAttribute('val', $pFont->getName()); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + /** + * Write Border + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_Borders $pBorders Borders style + * @throws PHPExcel_Writer_Exception + */ + private function writeBorder(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Borders $pBorders = null) + { + // Write border + $objWriter->startElement('border'); + // Diagonal? + switch ($pBorders->getDiagonalDirection()) { + case PHPExcel_Style_Borders::DIAGONAL_UP: + $objWriter->writeAttribute('diagonalUp', 'true'); + $objWriter->writeAttribute('diagonalDown', 'false'); + break; + case PHPExcel_Style_Borders::DIAGONAL_DOWN: + $objWriter->writeAttribute('diagonalUp', 'false'); + $objWriter->writeAttribute('diagonalDown', 'true'); + break; + case PHPExcel_Style_Borders::DIAGONAL_BOTH: + $objWriter->writeAttribute('diagonalUp', 'true'); + $objWriter->writeAttribute('diagonalDown', 'true'); + break; + } + + // BorderPr + $this->writeBorderPr($objWriter, 'left', $pBorders->getLeft()); + $this->writeBorderPr($objWriter, 'right', $pBorders->getRight()); + $this->writeBorderPr($objWriter, 'top', $pBorders->getTop()); + $this->writeBorderPr($objWriter, 'bottom', $pBorders->getBottom()); + $this->writeBorderPr($objWriter, 'diagonal', $pBorders->getDiagonal()); + $objWriter->endElement(); + } + + /** + * Write Cell Style Xf + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style $pStyle Style + * @param PHPExcel $pPHPExcel Workbook + * @throws PHPExcel_Writer_Exception + */ + private function writeCellStyleXf(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style $pStyle = null, PHPExcel $pPHPExcel = null) + { + // xf + $objWriter->startElement('xf'); + $objWriter->writeAttribute('xfId', 0); + $objWriter->writeAttribute('fontId', (int)$this->getParentWriter()->getFontHashTable()->getIndexForHashCode($pStyle->getFont()->getHashCode())); + if ($pStyle->getQuotePrefix()) { + $objWriter->writeAttribute('quotePrefix', 1); + } + + if ($pStyle->getNumberFormat()->getBuiltInFormatCode() === false) { + $objWriter->writeAttribute('numFmtId', (int)($this->getParentWriter()->getNumFmtHashTable()->getIndexForHashCode($pStyle->getNumberFormat()->getHashCode()) + 164)); + } else { + $objWriter->writeAttribute('numFmtId', (int)$pStyle->getNumberFormat()->getBuiltInFormatCode()); + } + + $objWriter->writeAttribute('fillId', (int)$this->getParentWriter()->getFillHashTable()->getIndexForHashCode($pStyle->getFill()->getHashCode())); + $objWriter->writeAttribute('borderId', (int)$this->getParentWriter()->getBordersHashTable()->getIndexForHashCode($pStyle->getBorders()->getHashCode())); + + // Apply styles? + $objWriter->writeAttribute('applyFont', ($pPHPExcel->getDefaultStyle()->getFont()->getHashCode() != $pStyle->getFont()->getHashCode()) ? '1' : '0'); + $objWriter->writeAttribute('applyNumberFormat', ($pPHPExcel->getDefaultStyle()->getNumberFormat()->getHashCode() != $pStyle->getNumberFormat()->getHashCode()) ? '1' : '0'); + $objWriter->writeAttribute('applyFill', ($pPHPExcel->getDefaultStyle()->getFill()->getHashCode() != $pStyle->getFill()->getHashCode()) ? '1' : '0'); + $objWriter->writeAttribute('applyBorder', ($pPHPExcel->getDefaultStyle()->getBorders()->getHashCode() != $pStyle->getBorders()->getHashCode()) ? '1' : '0'); + $objWriter->writeAttribute('applyAlignment', ($pPHPExcel->getDefaultStyle()->getAlignment()->getHashCode() != $pStyle->getAlignment()->getHashCode()) ? '1' : '0'); + if ($pStyle->getProtection()->getLocked() != PHPExcel_Style_Protection::PROTECTION_INHERIT || $pStyle->getProtection()->getHidden() != PHPExcel_Style_Protection::PROTECTION_INHERIT) { + $objWriter->writeAttribute('applyProtection', 'true'); + } + + // alignment + $objWriter->startElement('alignment'); + $objWriter->writeAttribute('horizontal', $pStyle->getAlignment()->getHorizontal()); + $objWriter->writeAttribute('vertical', $pStyle->getAlignment()->getVertical()); + + $textRotation = 0; + if ($pStyle->getAlignment()->getTextRotation() >= 0) { + $textRotation = $pStyle->getAlignment()->getTextRotation(); + } elseif ($pStyle->getAlignment()->getTextRotation() < 0) { + $textRotation = 90 - $pStyle->getAlignment()->getTextRotation(); + } + $objWriter->writeAttribute('textRotation', $textRotation); + + $objWriter->writeAttribute('wrapText', ($pStyle->getAlignment()->getWrapText() ? 'true' : 'false')); + $objWriter->writeAttribute('shrinkToFit', ($pStyle->getAlignment()->getShrinkToFit() ? 'true' : 'false')); + + if ($pStyle->getAlignment()->getIndent() > 0) { + $objWriter->writeAttribute('indent', $pStyle->getAlignment()->getIndent()); + } + if ($pStyle->getAlignment()->getReadorder() > 0) { + $objWriter->writeAttribute('readingOrder', $pStyle->getAlignment()->getReadorder()); + } + $objWriter->endElement(); + + // protection + if ($pStyle->getProtection()->getLocked() != PHPExcel_Style_Protection::PROTECTION_INHERIT || $pStyle->getProtection()->getHidden() != PHPExcel_Style_Protection::PROTECTION_INHERIT) { + $objWriter->startElement('protection'); + if ($pStyle->getProtection()->getLocked() != PHPExcel_Style_Protection::PROTECTION_INHERIT) { + $objWriter->writeAttribute('locked', ($pStyle->getProtection()->getLocked() == PHPExcel_Style_Protection::PROTECTION_PROTECTED ? 'true' : 'false')); + } + if ($pStyle->getProtection()->getHidden() != PHPExcel_Style_Protection::PROTECTION_INHERIT) { + $objWriter->writeAttribute('hidden', ($pStyle->getProtection()->getHidden() == PHPExcel_Style_Protection::PROTECTION_PROTECTED ? 'true' : 'false')); + } + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + /** + * Write Cell Style Dxf + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style $pStyle Style + * @throws PHPExcel_Writer_Exception + */ + private function writeCellStyleDxf(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style $pStyle = null) + { + // dxf + $objWriter->startElement('dxf'); + + // font + $this->writeFont($objWriter, $pStyle->getFont()); + + // numFmt + $this->writeNumFmt($objWriter, $pStyle->getNumberFormat()); + + // fill + $this->writeFill($objWriter, $pStyle->getFill()); + + // alignment + $objWriter->startElement('alignment'); + if ($pStyle->getAlignment()->getHorizontal() !== null) { + $objWriter->writeAttribute('horizontal', $pStyle->getAlignment()->getHorizontal()); + } + if ($pStyle->getAlignment()->getVertical() !== null) { + $objWriter->writeAttribute('vertical', $pStyle->getAlignment()->getVertical()); + } + + if ($pStyle->getAlignment()->getTextRotation() !== null) { + $textRotation = 0; + if ($pStyle->getAlignment()->getTextRotation() >= 0) { + $textRotation = $pStyle->getAlignment()->getTextRotation(); + } elseif ($pStyle->getAlignment()->getTextRotation() < 0) { + $textRotation = 90 - $pStyle->getAlignment()->getTextRotation(); + } + $objWriter->writeAttribute('textRotation', $textRotation); + } + $objWriter->endElement(); + + // border + $this->writeBorder($objWriter, $pStyle->getBorders()); + + // protection + if (($pStyle->getProtection()->getLocked() !== null) || ($pStyle->getProtection()->getHidden() !== null)) { + if ($pStyle->getProtection()->getLocked() !== PHPExcel_Style_Protection::PROTECTION_INHERIT || + $pStyle->getProtection()->getHidden() !== PHPExcel_Style_Protection::PROTECTION_INHERIT) { + $objWriter->startElement('protection'); + if (($pStyle->getProtection()->getLocked() !== null) && + ($pStyle->getProtection()->getLocked() !== PHPExcel_Style_Protection::PROTECTION_INHERIT)) { + $objWriter->writeAttribute('locked', ($pStyle->getProtection()->getLocked() == PHPExcel_Style_Protection::PROTECTION_PROTECTED ? 'true' : 'false')); + } + if (($pStyle->getProtection()->getHidden() !== null) && + ($pStyle->getProtection()->getHidden() !== PHPExcel_Style_Protection::PROTECTION_INHERIT)) { + $objWriter->writeAttribute('hidden', ($pStyle->getProtection()->getHidden() == PHPExcel_Style_Protection::PROTECTION_PROTECTED ? 'true' : 'false')); + } + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + } + + /** + * Write BorderPr + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pName Element name + * @param PHPExcel_Style_Border $pBorder Border style + * @throws PHPExcel_Writer_Exception + */ + private function writeBorderPr(PHPExcel_Shared_XMLWriter $objWriter = null, $pName = 'left', PHPExcel_Style_Border $pBorder = null) + { + // Write BorderPr + if ($pBorder->getBorderStyle() != PHPExcel_Style_Border::BORDER_NONE) { + $objWriter->startElement($pName); + $objWriter->writeAttribute('style', $pBorder->getBorderStyle()); + + // color + $objWriter->startElement('color'); + $objWriter->writeAttribute('rgb', $pBorder->getColor()->getARGB()); + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + + /** + * Write NumberFormat + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_NumberFormat $pNumberFormat Number Format + * @param int $pId Number Format identifier + * @throws PHPExcel_Writer_Exception + */ + private function writeNumFmt(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_NumberFormat $pNumberFormat = null, $pId = 0) + { + // Translate formatcode + $formatCode = $pNumberFormat->getFormatCode(); + + // numFmt + if ($formatCode !== null) { + $objWriter->startElement('numFmt'); + $objWriter->writeAttribute('numFmtId', ($pId + 164)); + $objWriter->writeAttribute('formatCode', $formatCode); + $objWriter->endElement(); + } + } + + /** + * Get an array of all styles + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style[] All styles in PHPExcel + * @throws PHPExcel_Writer_Exception + */ + public function allStyles(PHPExcel $pPHPExcel = null) + { + return $pPHPExcel->getCellXfCollection(); + } + + /** + * Get an array of all conditional styles + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style_Conditional[] All conditional styles in PHPExcel + * @throws PHPExcel_Writer_Exception + */ + public function allConditionalStyles(PHPExcel $pPHPExcel = null) + { + // Get an array of all styles + $aStyles = array(); + + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + foreach ($pPHPExcel->getSheet($i)->getConditionalStylesCollection() as $conditionalStyles) { + foreach ($conditionalStyles as $conditionalStyle) { + $aStyles[] = $conditionalStyle; + } + } + } + + return $aStyles; + } + + /** + * Get an array of all fills + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style_Fill[] All fills in PHPExcel + * @throws PHPExcel_Writer_Exception + */ + public function allFills(PHPExcel $pPHPExcel = null) + { + // Get an array of unique fills + $aFills = array(); + + // Two first fills are predefined + $fill0 = new PHPExcel_Style_Fill(); + $fill0->setFillType(PHPExcel_Style_Fill::FILL_NONE); + $aFills[] = $fill0; + + $fill1 = new PHPExcel_Style_Fill(); + $fill1->setFillType(PHPExcel_Style_Fill::FILL_PATTERN_GRAY125); + $aFills[] = $fill1; + // The remaining fills + $aStyles = $this->allStyles($pPHPExcel); + foreach ($aStyles as $style) { + if (!array_key_exists($style->getFill()->getHashCode(), $aFills)) { + $aFills[ $style->getFill()->getHashCode() ] = $style->getFill(); + } + } + + return $aFills; + } + + /** + * Get an array of all fonts + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style_Font[] All fonts in PHPExcel + * @throws PHPExcel_Writer_Exception + */ + public function allFonts(PHPExcel $pPHPExcel = null) + { + // Get an array of unique fonts + $aFonts = array(); + $aStyles = $this->allStyles($pPHPExcel); + + foreach ($aStyles as $style) { + if (!array_key_exists($style->getFont()->getHashCode(), $aFonts)) { + $aFonts[ $style->getFont()->getHashCode() ] = $style->getFont(); + } + } + + return $aFonts; + } + + /** + * Get an array of all borders + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style_Borders[] All borders in PHPExcel + * @throws PHPExcel_Writer_Exception + */ + public function allBorders(PHPExcel $pPHPExcel = null) + { + // Get an array of unique borders + $aBorders = array(); + $aStyles = $this->allStyles($pPHPExcel); + + foreach ($aStyles as $style) { + if (!array_key_exists($style->getBorders()->getHashCode(), $aBorders)) { + $aBorders[ $style->getBorders()->getHashCode() ] = $style->getBorders(); + } + } + + return $aBorders; + } + + /** + * Get an array of all number formats + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style_NumberFormat[] All number formats in PHPExcel + * @throws PHPExcel_Writer_Exception + */ + public function allNumberFormats(PHPExcel $pPHPExcel = null) + { + // Get an array of unique number formats + $aNumFmts = array(); + $aStyles = $this->allStyles($pPHPExcel); + + foreach ($aStyles as $style) { + if ($style->getNumberFormat()->getBuiltInFormatCode() === false && !array_key_exists($style->getNumberFormat()->getHashCode(), $aNumFmts)) { + $aNumFmts[ $style->getNumberFormat()->getHashCode() ] = $style->getNumberFormat(); + } + } + + return $aNumFmts; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Theme.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Theme.php new file mode 100644 index 0000000..223e402 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Theme.php @@ -0,0 +1,869 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Writer_Excel2007_Theme + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_Theme extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Map of Major fonts to write + * @static array of string + * + */ + private static $majorFonts = array( + 'Jpan' => 'MS Pゴシック', + 'Hang' => '맑은 고딕', + 'Hans' => '宋体', + 'Hant' => '新細明體', + 'Arab' => 'Times New Roman', + 'Hebr' => 'Times New Roman', + 'Thai' => 'Tahoma', + 'Ethi' => 'Nyala', + 'Beng' => 'Vrinda', + 'Gujr' => 'Shruti', + 'Khmr' => 'MoolBoran', + 'Knda' => 'Tunga', + 'Guru' => 'Raavi', + 'Cans' => 'Euphemia', + 'Cher' => 'Plantagenet Cherokee', + 'Yiii' => 'Microsoft Yi Baiti', + 'Tibt' => 'Microsoft Himalaya', + 'Thaa' => 'MV Boli', + 'Deva' => 'Mangal', + 'Telu' => 'Gautami', + 'Taml' => 'Latha', + 'Syrc' => 'Estrangelo Edessa', + 'Orya' => 'Kalinga', + 'Mlym' => 'Kartika', + 'Laoo' => 'DokChampa', + 'Sinh' => 'Iskoola Pota', + 'Mong' => 'Mongolian Baiti', + 'Viet' => 'Times New Roman', + 'Uigh' => 'Microsoft Uighur', + 'Geor' => 'Sylfaen', + ); + + /** + * Map of Minor fonts to write + * @static array of string + * + */ + private static $minorFonts = array( + 'Jpan' => 'MS Pゴシック', + 'Hang' => '맑은 고딕', + 'Hans' => '宋体', + 'Hant' => '新細明體', + 'Arab' => 'Arial', + 'Hebr' => 'Arial', + 'Thai' => 'Tahoma', + 'Ethi' => 'Nyala', + 'Beng' => 'Vrinda', + 'Gujr' => 'Shruti', + 'Khmr' => 'DaunPenh', + 'Knda' => 'Tunga', + 'Guru' => 'Raavi', + 'Cans' => 'Euphemia', + 'Cher' => 'Plantagenet Cherokee', + 'Yiii' => 'Microsoft Yi Baiti', + 'Tibt' => 'Microsoft Himalaya', + 'Thaa' => 'MV Boli', + 'Deva' => 'Mangal', + 'Telu' => 'Gautami', + 'Taml' => 'Latha', + 'Syrc' => 'Estrangelo Edessa', + 'Orya' => 'Kalinga', + 'Mlym' => 'Kartika', + 'Laoo' => 'DokChampa', + 'Sinh' => 'Iskoola Pota', + 'Mong' => 'Mongolian Baiti', + 'Viet' => 'Arial', + 'Uigh' => 'Microsoft Uighur', + 'Geor' => 'Sylfaen', + ); + + /** + * Map of core colours + * @static array of string + * + */ + private static $colourScheme = array( + 'dk2' => '1F497D', + 'lt2' => 'EEECE1', + 'accent1' => '4F81BD', + 'accent2' => 'C0504D', + 'accent3' => '9BBB59', + 'accent4' => '8064A2', + 'accent5' => '4BACC6', + 'accent6' => 'F79646', + 'hlink' => '0000FF', + 'folHlink' => '800080', + ); + + /** + * Write theme to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeTheme(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // a:theme + $objWriter->startElement('a:theme'); + $objWriter->writeAttribute('xmlns:a', 'http://schemas.openxmlformats.org/drawingml/2006/main'); + $objWriter->writeAttribute('name', 'Office Theme'); + + // a:themeElements + $objWriter->startElement('a:themeElements'); + + // a:clrScheme + $objWriter->startElement('a:clrScheme'); + $objWriter->writeAttribute('name', 'Office'); + + // a:dk1 + $objWriter->startElement('a:dk1'); + + // a:sysClr + $objWriter->startElement('a:sysClr'); + $objWriter->writeAttribute('val', 'windowText'); + $objWriter->writeAttribute('lastClr', '000000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:lt1 + $objWriter->startElement('a:lt1'); + + // a:sysClr + $objWriter->startElement('a:sysClr'); + $objWriter->writeAttribute('val', 'window'); + $objWriter->writeAttribute('lastClr', 'FFFFFF'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:dk2 + $this->writeColourScheme($objWriter); + + $objWriter->endElement(); + + // a:fontScheme + $objWriter->startElement('a:fontScheme'); + $objWriter->writeAttribute('name', 'Office'); + + // a:majorFont + $objWriter->startElement('a:majorFont'); + $this->writeFonts($objWriter, 'Cambria', self::$majorFonts); + $objWriter->endElement(); + + // a:minorFont + $objWriter->startElement('a:minorFont'); + $this->writeFonts($objWriter, 'Calibri', self::$minorFonts); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:fmtScheme + $objWriter->startElement('a:fmtScheme'); + $objWriter->writeAttribute('name', 'Office'); + + // a:fillStyleLst + $objWriter->startElement('a:fillStyleLst'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gradFill + $objWriter->startElement('a:gradFill'); + $objWriter->writeAttribute('rotWithShape', '1'); + + // a:gsLst + $objWriter->startElement('a:gsLst'); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '0'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '50000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '300000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '35000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '37000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '300000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '100000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '15000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '350000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:lin + $objWriter->startElement('a:lin'); + $objWriter->writeAttribute('ang', '16200000'); + $objWriter->writeAttribute('scaled', '1'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gradFill + $objWriter->startElement('a:gradFill'); + $objWriter->writeAttribute('rotWithShape', '1'); + + // a:gsLst + $objWriter->startElement('a:gsLst'); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '0'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '51000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '130000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '80000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '93000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '130000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '100000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '94000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '135000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:lin + $objWriter->startElement('a:lin'); + $objWriter->writeAttribute('ang', '16200000'); + $objWriter->writeAttribute('scaled', '0'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:lnStyleLst + $objWriter->startElement('a:lnStyleLst'); + + // a:ln + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', '9525'); + $objWriter->writeAttribute('cap', 'flat'); + $objWriter->writeAttribute('cmpd', 'sng'); + $objWriter->writeAttribute('algn', 'ctr'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '95000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '105000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:prstDash + $objWriter->startElement('a:prstDash'); + $objWriter->writeAttribute('val', 'solid'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:ln + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', '25400'); + $objWriter->writeAttribute('cap', 'flat'); + $objWriter->writeAttribute('cmpd', 'sng'); + $objWriter->writeAttribute('algn', 'ctr'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:prstDash + $objWriter->startElement('a:prstDash'); + $objWriter->writeAttribute('val', 'solid'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:ln + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', '38100'); + $objWriter->writeAttribute('cap', 'flat'); + $objWriter->writeAttribute('cmpd', 'sng'); + $objWriter->writeAttribute('algn', 'ctr'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:prstDash + $objWriter->startElement('a:prstDash'); + $objWriter->writeAttribute('val', 'solid'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + + + // a:effectStyleLst + $objWriter->startElement('a:effectStyleLst'); + + // a:effectStyle + $objWriter->startElement('a:effectStyle'); + + // a:effectLst + $objWriter->startElement('a:effectLst'); + + // a:outerShdw + $objWriter->startElement('a:outerShdw'); + $objWriter->writeAttribute('blurRad', '40000'); + $objWriter->writeAttribute('dist', '20000'); + $objWriter->writeAttribute('dir', '5400000'); + $objWriter->writeAttribute('rotWithShape', '0'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', '000000'); + + // a:alpha + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', '38000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:effectStyle + $objWriter->startElement('a:effectStyle'); + + // a:effectLst + $objWriter->startElement('a:effectLst'); + + // a:outerShdw + $objWriter->startElement('a:outerShdw'); + $objWriter->writeAttribute('blurRad', '40000'); + $objWriter->writeAttribute('dist', '23000'); + $objWriter->writeAttribute('dir', '5400000'); + $objWriter->writeAttribute('rotWithShape', '0'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', '000000'); + + // a:alpha + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', '35000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:effectStyle + $objWriter->startElement('a:effectStyle'); + + // a:effectLst + $objWriter->startElement('a:effectLst'); + + // a:outerShdw + $objWriter->startElement('a:outerShdw'); + $objWriter->writeAttribute('blurRad', '40000'); + $objWriter->writeAttribute('dist', '23000'); + $objWriter->writeAttribute('dir', '5400000'); + $objWriter->writeAttribute('rotWithShape', '0'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', '000000'); + + // a:alpha + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', '35000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:scene3d + $objWriter->startElement('a:scene3d'); + + // a:camera + $objWriter->startElement('a:camera'); + $objWriter->writeAttribute('prst', 'orthographicFront'); + + // a:rot + $objWriter->startElement('a:rot'); + $objWriter->writeAttribute('lat', '0'); + $objWriter->writeAttribute('lon', '0'); + $objWriter->writeAttribute('rev', '0'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:lightRig + $objWriter->startElement('a:lightRig'); + $objWriter->writeAttribute('rig', 'threePt'); + $objWriter->writeAttribute('dir', 't'); + + // a:rot + $objWriter->startElement('a:rot'); + $objWriter->writeAttribute('lat', '0'); + $objWriter->writeAttribute('lon', '0'); + $objWriter->writeAttribute('rev', '1200000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:sp3d + $objWriter->startElement('a:sp3d'); + + // a:bevelT + $objWriter->startElement('a:bevelT'); + $objWriter->writeAttribute('w', '63500'); + $objWriter->writeAttribute('h', '25400'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:bgFillStyleLst + $objWriter->startElement('a:bgFillStyleLst'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gradFill + $objWriter->startElement('a:gradFill'); + $objWriter->writeAttribute('rotWithShape', '1'); + + // a:gsLst + $objWriter->startElement('a:gsLst'); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '0'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '40000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '350000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '40000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '45000'); + $objWriter->endElement(); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '99000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '350000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '100000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '20000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '255000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:path + $objWriter->startElement('a:path'); + $objWriter->writeAttribute('path', 'circle'); + + // a:fillToRect + $objWriter->startElement('a:fillToRect'); + $objWriter->writeAttribute('l', '50000'); + $objWriter->writeAttribute('t', '-80000'); + $objWriter->writeAttribute('r', '50000'); + $objWriter->writeAttribute('b', '180000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gradFill + $objWriter->startElement('a:gradFill'); + $objWriter->writeAttribute('rotWithShape', '1'); + + // a:gsLst + $objWriter->startElement('a:gsLst'); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '0'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '80000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '300000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '100000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '30000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '200000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:path + $objWriter->startElement('a:path'); + $objWriter->writeAttribute('path', 'circle'); + + // a:fillToRect + $objWriter->startElement('a:fillToRect'); + $objWriter->writeAttribute('l', '50000'); + $objWriter->writeAttribute('t', '50000'); + $objWriter->writeAttribute('r', '50000'); + $objWriter->writeAttribute('b', '50000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:objectDefaults + $objWriter->writeElement('a:objectDefaults', null); + + // a:extraClrSchemeLst + $objWriter->writeElement('a:extraClrSchemeLst', null); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write fonts to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter + * @param string $latinFont + * @param array of string $fontSet + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + private function writeFonts($objWriter, $latinFont, $fontSet) + { + // a:latin + $objWriter->startElement('a:latin'); + $objWriter->writeAttribute('typeface', $latinFont); + $objWriter->endElement(); + + // a:ea + $objWriter->startElement('a:ea'); + $objWriter->writeAttribute('typeface', ''); + $objWriter->endElement(); + + // a:cs + $objWriter->startElement('a:cs'); + $objWriter->writeAttribute('typeface', ''); + $objWriter->endElement(); + + foreach ($fontSet as $fontScript => $typeface) { + $objWriter->startElement('a:font'); + $objWriter->writeAttribute('script', $fontScript); + $objWriter->writeAttribute('typeface', $typeface); + $objWriter->endElement(); + } + } + + /** + * Write colour scheme to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + private function writeColourScheme($objWriter) + { + foreach (self::$colourScheme as $colourName => $colourValue) { + $objWriter->startElement('a:'.$colourName); + + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', $colourValue); + $objWriter->endElement(); + + $objWriter->endElement(); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Workbook.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Workbook.php new file mode 100644 index 0000000..87c877e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Workbook.php @@ -0,0 +1,448 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_Workbook + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel2007_Workbook extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write workbook to XML format + * + * @param PHPExcel $pPHPExcel + * @param boolean $recalcRequired Indicate whether formulas should be recalculated before writing + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeWorkbook(PHPExcel $pPHPExcel = null, $recalcRequired = false) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // workbook + $objWriter->startElement('workbook'); + $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/spreadsheetml/2006/main'); + $objWriter->writeAttribute('xmlns:r', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + + // fileVersion + $this->writeFileVersion($objWriter); + + // workbookPr + $this->writeWorkbookPr($objWriter); + + // workbookProtection + $this->writeWorkbookProtection($objWriter, $pPHPExcel); + + // bookViews + if ($this->getParentWriter()->getOffice2003Compatibility() === false) { + $this->writeBookViews($objWriter, $pPHPExcel); + } + + // sheets + $this->writeSheets($objWriter, $pPHPExcel); + + // definedNames + $this->writeDefinedNames($objWriter, $pPHPExcel); + + // calcPr + $this->writeCalcPr($objWriter, $recalcRequired); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write file version + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws PHPExcel_Writer_Exception + */ + private function writeFileVersion(PHPExcel_Shared_XMLWriter $objWriter = null) + { + $objWriter->startElement('fileVersion'); + $objWriter->writeAttribute('appName', 'xl'); + $objWriter->writeAttribute('lastEdited', '4'); + $objWriter->writeAttribute('lowestEdited', '4'); + $objWriter->writeAttribute('rupBuild', '4505'); + $objWriter->endElement(); + } + + /** + * Write WorkbookPr + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws PHPExcel_Writer_Exception + */ + private function writeWorkbookPr(PHPExcel_Shared_XMLWriter $objWriter = null) + { + $objWriter->startElement('workbookPr'); + + if (PHPExcel_Shared_Date::getExcelCalendar() == PHPExcel_Shared_Date::CALENDAR_MAC_1904) { + $objWriter->writeAttribute('date1904', '1'); + } + + $objWriter->writeAttribute('codeName', 'ThisWorkbook'); + + $objWriter->endElement(); + } + + /** + * Write BookViews + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel $pPHPExcel + * @throws PHPExcel_Writer_Exception + */ + private function writeBookViews(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel $pPHPExcel = null) + { + // bookViews + $objWriter->startElement('bookViews'); + + // workbookView + $objWriter->startElement('workbookView'); + + $objWriter->writeAttribute('activeTab', $pPHPExcel->getActiveSheetIndex()); + $objWriter->writeAttribute('autoFilterDateGrouping', '1'); + $objWriter->writeAttribute('firstSheet', '0'); + $objWriter->writeAttribute('minimized', '0'); + $objWriter->writeAttribute('showHorizontalScroll', '1'); + $objWriter->writeAttribute('showSheetTabs', '1'); + $objWriter->writeAttribute('showVerticalScroll', '1'); + $objWriter->writeAttribute('tabRatio', '600'); + $objWriter->writeAttribute('visibility', 'visible'); + + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write WorkbookProtection + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel $pPHPExcel + * @throws PHPExcel_Writer_Exception + */ + private function writeWorkbookProtection(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel $pPHPExcel = null) + { + if ($pPHPExcel->getSecurity()->isSecurityEnabled()) { + $objWriter->startElement('workbookProtection'); + $objWriter->writeAttribute('lockRevision', ($pPHPExcel->getSecurity()->getLockRevision() ? 'true' : 'false')); + $objWriter->writeAttribute('lockStructure', ($pPHPExcel->getSecurity()->getLockStructure() ? 'true' : 'false')); + $objWriter->writeAttribute('lockWindows', ($pPHPExcel->getSecurity()->getLockWindows() ? 'true' : 'false')); + + if ($pPHPExcel->getSecurity()->getRevisionsPassword() != '') { + $objWriter->writeAttribute('revisionsPassword', $pPHPExcel->getSecurity()->getRevisionsPassword()); + } + + if ($pPHPExcel->getSecurity()->getWorkbookPassword() != '') { + $objWriter->writeAttribute('workbookPassword', $pPHPExcel->getSecurity()->getWorkbookPassword()); + } + + $objWriter->endElement(); + } + } + + /** + * Write calcPr + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param boolean $recalcRequired Indicate whether formulas should be recalculated before writing + * @throws PHPExcel_Writer_Exception + */ + private function writeCalcPr(PHPExcel_Shared_XMLWriter $objWriter = null, $recalcRequired = true) + { + $objWriter->startElement('calcPr'); + + // Set the calcid to a higher value than Excel itself will use, otherwise Excel will always recalc + // If MS Excel does do a recalc, then users opening a file in MS Excel will be prompted to save on exit + // because the file has changed + $objWriter->writeAttribute('calcId', '999999'); + $objWriter->writeAttribute('calcMode', 'auto'); + // fullCalcOnLoad isn't needed if we've recalculating for the save + $objWriter->writeAttribute('calcCompleted', ($recalcRequired) ? 1 : 0); + $objWriter->writeAttribute('fullCalcOnLoad', ($recalcRequired) ? 0 : 1); + + $objWriter->endElement(); + } + + /** + * Write sheets + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel $pPHPExcel + * @throws PHPExcel_Writer_Exception + */ + private function writeSheets(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel $pPHPExcel = null) + { + // Write sheets + $objWriter->startElement('sheets'); + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + // sheet + $this->writeSheet( + $objWriter, + $pPHPExcel->getSheet($i)->getTitle(), + ($i + 1), + ($i + 1 + 3), + $pPHPExcel->getSheet($i)->getSheetState() + ); + } + + $objWriter->endElement(); + } + + /** + * Write sheet + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pSheetname Sheet name + * @param int $pSheetId Sheet id + * @param int $pRelId Relationship ID + * @param string $sheetState Sheet state (visible, hidden, veryHidden) + * @throws PHPExcel_Writer_Exception + */ + private function writeSheet(PHPExcel_Shared_XMLWriter $objWriter = null, $pSheetname = '', $pSheetId = 1, $pRelId = 1, $sheetState = 'visible') + { + if ($pSheetname != '') { + // Write sheet + $objWriter->startElement('sheet'); + $objWriter->writeAttribute('name', $pSheetname); + $objWriter->writeAttribute('sheetId', $pSheetId); + if ($sheetState != 'visible' && $sheetState != '') { + $objWriter->writeAttribute('state', $sheetState); + } + $objWriter->writeAttribute('r:id', 'rId' . $pRelId); + $objWriter->endElement(); + } else { + throw new PHPExcel_Writer_Exception("Invalid parameters passed."); + } + } + + /** + * Write Defined Names + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel $pPHPExcel + * @throws PHPExcel_Writer_Exception + */ + private function writeDefinedNames(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel $pPHPExcel = null) + { + // Write defined names + $objWriter->startElement('definedNames'); + + // Named ranges + if (count($pPHPExcel->getNamedRanges()) > 0) { + // Named ranges + $this->writeNamedRanges($objWriter, $pPHPExcel); + } + + // Other defined names + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + // definedName for autoFilter + $this->writeDefinedNameForAutofilter($objWriter, $pPHPExcel->getSheet($i), $i); + + // definedName for Print_Titles + $this->writeDefinedNameForPrintTitles($objWriter, $pPHPExcel->getSheet($i), $i); + + // definedName for Print_Area + $this->writeDefinedNameForPrintArea($objWriter, $pPHPExcel->getSheet($i), $i); + } + + $objWriter->endElement(); + } + + /** + * Write named ranges + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel $pPHPExcel + * @throws PHPExcel_Writer_Exception + */ + private function writeNamedRanges(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel $pPHPExcel) + { + // Loop named ranges + $namedRanges = $pPHPExcel->getNamedRanges(); + foreach ($namedRanges as $namedRange) { + $this->writeDefinedNameForNamedRange($objWriter, $namedRange); + } + } + + /** + * Write Defined Name for named range + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_NamedRange $pNamedRange + * @throws PHPExcel_Writer_Exception + */ + private function writeDefinedNameForNamedRange(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_NamedRange $pNamedRange) + { + // definedName for named range + $objWriter->startElement('definedName'); + $objWriter->writeAttribute('name', $pNamedRange->getName()); + if ($pNamedRange->getLocalOnly()) { + $objWriter->writeAttribute('localSheetId', $pNamedRange->getScope()->getParent()->getIndex($pNamedRange->getScope())); + } + + // Create absolute coordinate and write as raw text + $range = PHPExcel_Cell::splitRange($pNamedRange->getRange()); + for ($i = 0; $i < count($range); $i++) { + $range[$i][0] = '\'' . str_replace("'", "''", $pNamedRange->getWorksheet()->getTitle()) . '\'!' . PHPExcel_Cell::absoluteReference($range[$i][0]); + if (isset($range[$i][1])) { + $range[$i][1] = PHPExcel_Cell::absoluteReference($range[$i][1]); + } + } + $range = PHPExcel_Cell::buildRange($range); + + $objWriter->writeRawData($range); + + $objWriter->endElement(); + } + + /** + * Write Defined Name for autoFilter + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet + * @param int $pSheetId + * @throws PHPExcel_Writer_Exception + */ + private function writeDefinedNameForAutofilter(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $pSheetId = 0) + { + // definedName for autoFilter + $autoFilterRange = $pSheet->getAutoFilter()->getRange(); + if (!empty($autoFilterRange)) { + $objWriter->startElement('definedName'); + $objWriter->writeAttribute('name', '_xlnm._FilterDatabase'); + $objWriter->writeAttribute('localSheetId', $pSheetId); + $objWriter->writeAttribute('hidden', '1'); + + // Create absolute coordinate and write as raw text + $range = PHPExcel_Cell::splitRange($autoFilterRange); + $range = $range[0]; + // Strip any worksheet ref so we can make the cell ref absolute + if (strpos($range[0], '!') !== false) { + list($ws, $range[0]) = explode('!', $range[0]); + } + + $range[0] = PHPExcel_Cell::absoluteCoordinate($range[0]); + $range[1] = PHPExcel_Cell::absoluteCoordinate($range[1]); + $range = implode(':', $range); + + $objWriter->writeRawData('\'' . str_replace("'", "''", $pSheet->getTitle()) . '\'!' . $range); + + $objWriter->endElement(); + } + } + + /** + * Write Defined Name for PrintTitles + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet + * @param int $pSheetId + * @throws PHPExcel_Writer_Exception + */ + private function writeDefinedNameForPrintTitles(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $pSheetId = 0) + { + // definedName for PrintTitles + if ($pSheet->getPageSetup()->isColumnsToRepeatAtLeftSet() || $pSheet->getPageSetup()->isRowsToRepeatAtTopSet()) { + $objWriter->startElement('definedName'); + $objWriter->writeAttribute('name', '_xlnm.Print_Titles'); + $objWriter->writeAttribute('localSheetId', $pSheetId); + + // Setting string + $settingString = ''; + + // Columns to repeat + if ($pSheet->getPageSetup()->isColumnsToRepeatAtLeftSet()) { + $repeat = $pSheet->getPageSetup()->getColumnsToRepeatAtLeft(); + + $settingString .= '\'' . str_replace("'", "''", $pSheet->getTitle()) . '\'!$' . $repeat[0] . ':$' . $repeat[1]; + } + + // Rows to repeat + if ($pSheet->getPageSetup()->isRowsToRepeatAtTopSet()) { + if ($pSheet->getPageSetup()->isColumnsToRepeatAtLeftSet()) { + $settingString .= ','; + } + + $repeat = $pSheet->getPageSetup()->getRowsToRepeatAtTop(); + + $settingString .= '\'' . str_replace("'", "''", $pSheet->getTitle()) . '\'!$' . $repeat[0] . ':$' . $repeat[1]; + } + + $objWriter->writeRawData($settingString); + + $objWriter->endElement(); + } + } + + /** + * Write Defined Name for PrintTitles + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet + * @param int $pSheetId + * @throws PHPExcel_Writer_Exception + */ + private function writeDefinedNameForPrintArea(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $pSheetId = 0) + { + // definedName for PrintArea + if ($pSheet->getPageSetup()->isPrintAreaSet()) { + $objWriter->startElement('definedName'); + $objWriter->writeAttribute('name', '_xlnm.Print_Area'); + $objWriter->writeAttribute('localSheetId', $pSheetId); + + // Setting string + $settingString = ''; + + // Print area + $printArea = PHPExcel_Cell::splitRange($pSheet->getPageSetup()->getPrintArea()); + + $chunks = array(); + foreach ($printArea as $printAreaRect) { + $printAreaRect[0] = PHPExcel_Cell::absoluteReference($printAreaRect[0]); + $printAreaRect[1] = PHPExcel_Cell::absoluteReference($printAreaRect[1]); + $chunks[] = '\'' . str_replace("'", "''", $pSheet->getTitle()) . '\'!' . implode(':', $printAreaRect); + } + + $objWriter->writeRawData(implode(',', $chunks)); + + $objWriter->endElement(); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Worksheet.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Worksheet.php new file mode 100644 index 0000000..c211403 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/Worksheet.php @@ -0,0 +1,1219 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Writer_Excel2007_Worksheet + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_Worksheet extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write worksheet to XML format + * + * @param PHPExcel_Worksheet $pSheet + * @param string[] $pStringTable + * @param boolean $includeCharts Flag indicating if we should write charts + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeWorksheet($pSheet = null, $pStringTable = null, $includeCharts = false) + { + if (!is_null($pSheet)) { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8', 'yes'); + + // Worksheet + $objWriter->startElement('worksheet'); + $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/spreadsheetml/2006/main'); + $objWriter->writeAttribute('xmlns:r', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + + // sheetPr + $this->writeSheetPr($objWriter, $pSheet); + + // Dimension + $this->writeDimension($objWriter, $pSheet); + + // sheetViews + $this->writeSheetViews($objWriter, $pSheet); + + // sheetFormatPr + $this->writeSheetFormatPr($objWriter, $pSheet); + + // cols + $this->writeCols($objWriter, $pSheet); + + // sheetData + $this->writeSheetData($objWriter, $pSheet, $pStringTable); + + // sheetProtection + $this->writeSheetProtection($objWriter, $pSheet); + + // protectedRanges + $this->writeProtectedRanges($objWriter, $pSheet); + + // autoFilter + $this->writeAutoFilter($objWriter, $pSheet); + + // mergeCells + $this->writeMergeCells($objWriter, $pSheet); + + // conditionalFormatting + $this->writeConditionalFormatting($objWriter, $pSheet); + + // dataValidations + $this->writeDataValidations($objWriter, $pSheet); + + // hyperlinks + $this->writeHyperlinks($objWriter, $pSheet); + + // Print options + $this->writePrintOptions($objWriter, $pSheet); + + // Page margins + $this->writePageMargins($objWriter, $pSheet); + + // Page setup + $this->writePageSetup($objWriter, $pSheet); + + // Header / footer + $this->writeHeaderFooter($objWriter, $pSheet); + + // Breaks + $this->writeBreaks($objWriter, $pSheet); + + // Drawings and/or Charts + $this->writeDrawings($objWriter, $pSheet, $includeCharts); + + // LegacyDrawing + $this->writeLegacyDrawing($objWriter, $pSheet); + + // LegacyDrawingHF + $this->writeLegacyDrawingHF($objWriter, $pSheet); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } else { + throw new PHPExcel_Writer_Exception("Invalid PHPExcel_Worksheet object passed."); + } + } + + /** + * Write SheetPr + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeSheetPr(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // sheetPr + $objWriter->startElement('sheetPr'); + //$objWriter->writeAttribute('codeName', $pSheet->getTitle()); + if ($pSheet->getParent()->hasMacros()) {//if the workbook have macros, we need to have codeName for the sheet + if ($pSheet->hasCodeName()==false) { + $pSheet->setCodeName($pSheet->getTitle()); + } + $objWriter->writeAttribute('codeName', $pSheet->getCodeName()); + } + $autoFilterRange = $pSheet->getAutoFilter()->getRange(); + if (!empty($autoFilterRange)) { + $objWriter->writeAttribute('filterMode', 1); + $pSheet->getAutoFilter()->showHideRows(); + } + + // tabColor + if ($pSheet->isTabColorSet()) { + $objWriter->startElement('tabColor'); + $objWriter->writeAttribute('rgb', $pSheet->getTabColor()->getARGB()); + $objWriter->endElement(); + } + + // outlinePr + $objWriter->startElement('outlinePr'); + $objWriter->writeAttribute('summaryBelow', ($pSheet->getShowSummaryBelow() ? '1' : '0')); + $objWriter->writeAttribute('summaryRight', ($pSheet->getShowSummaryRight() ? '1' : '0')); + $objWriter->endElement(); + + // pageSetUpPr + if ($pSheet->getPageSetup()->getFitToPage()) { + $objWriter->startElement('pageSetUpPr'); + $objWriter->writeAttribute('fitToPage', '1'); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + /** + * Write Dimension + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeDimension(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // dimension + $objWriter->startElement('dimension'); + $objWriter->writeAttribute('ref', $pSheet->calculateWorksheetDimension()); + $objWriter->endElement(); + } + + /** + * Write SheetViews + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeSheetViews(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // sheetViews + $objWriter->startElement('sheetViews'); + + // Sheet selected? + $sheetSelected = false; + if ($this->getParentWriter()->getPHPExcel()->getIndex($pSheet) == $this->getParentWriter()->getPHPExcel()->getActiveSheetIndex()) { + $sheetSelected = true; + } + + // sheetView + $objWriter->startElement('sheetView'); + $objWriter->writeAttribute('tabSelected', $sheetSelected ? '1' : '0'); + $objWriter->writeAttribute('workbookViewId', '0'); + + // Zoom scales + if ($pSheet->getSheetView()->getZoomScale() != 100) { + $objWriter->writeAttribute('zoomScale', $pSheet->getSheetView()->getZoomScale()); + } + if ($pSheet->getSheetView()->getZoomScaleNormal() != 100) { + $objWriter->writeAttribute('zoomScaleNormal', $pSheet->getSheetView()->getZoomScaleNormal()); + } + + // View Layout Type + if ($pSheet->getSheetView()->getView() !== PHPExcel_Worksheet_SheetView::SHEETVIEW_NORMAL) { + $objWriter->writeAttribute('view', $pSheet->getSheetView()->getView()); + } + + // Gridlines + if ($pSheet->getShowGridlines()) { + $objWriter->writeAttribute('showGridLines', 'true'); + } else { + $objWriter->writeAttribute('showGridLines', 'false'); + } + + // Row and column headers + if ($pSheet->getShowRowColHeaders()) { + $objWriter->writeAttribute('showRowColHeaders', '1'); + } else { + $objWriter->writeAttribute('showRowColHeaders', '0'); + } + + // Right-to-left + if ($pSheet->getRightToLeft()) { + $objWriter->writeAttribute('rightToLeft', 'true'); + } + + $activeCell = $pSheet->getActiveCell(); + + // Pane + $pane = ''; + $topLeftCell = $pSheet->getFreezePane(); + if (($topLeftCell != '') && ($topLeftCell != 'A1')) { + $activeCell = empty($activeCell) ? $topLeftCell : $activeCell; + // Calculate freeze coordinates + $xSplit = $ySplit = 0; + + list($xSplit, $ySplit) = PHPExcel_Cell::coordinateFromString($topLeftCell); + $xSplit = PHPExcel_Cell::columnIndexFromString($xSplit); + + // pane + $pane = 'topRight'; + $objWriter->startElement('pane'); + if ($xSplit > 1) { + $objWriter->writeAttribute('xSplit', $xSplit - 1); + } + if ($ySplit > 1) { + $objWriter->writeAttribute('ySplit', $ySplit - 1); + $pane = ($xSplit > 1) ? 'bottomRight' : 'bottomLeft'; + } + $objWriter->writeAttribute('topLeftCell', $topLeftCell); + $objWriter->writeAttribute('activePane', $pane); + $objWriter->writeAttribute('state', 'frozen'); + $objWriter->endElement(); + + if (($xSplit > 1) && ($ySplit > 1)) { + // Write additional selections if more than two panes (ie both an X and a Y split) + $objWriter->startElement('selection'); + $objWriter->writeAttribute('pane', 'topRight'); + $objWriter->endElement(); + $objWriter->startElement('selection'); + $objWriter->writeAttribute('pane', 'bottomLeft'); + $objWriter->endElement(); + } + } + + // Selection +// if ($pane != '') { + // Only need to write selection element if we have a split pane + // We cheat a little by over-riding the active cell selection, setting it to the split cell + $objWriter->startElement('selection'); + if ($pane != '') { + $objWriter->writeAttribute('pane', $pane); + } + $objWriter->writeAttribute('activeCell', $activeCell); + $objWriter->writeAttribute('sqref', $activeCell); + $objWriter->endElement(); +// } + + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write SheetFormatPr + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeSheetFormatPr(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // sheetFormatPr + $objWriter->startElement('sheetFormatPr'); + + // Default row height + if ($pSheet->getDefaultRowDimension()->getRowHeight() >= 0) { + $objWriter->writeAttribute('customHeight', 'true'); + $objWriter->writeAttribute('defaultRowHeight', PHPExcel_Shared_String::FormatNumber($pSheet->getDefaultRowDimension()->getRowHeight())); + } else { + $objWriter->writeAttribute('defaultRowHeight', '14.4'); + } + + // Set Zero Height row + if ((string)$pSheet->getDefaultRowDimension()->getZeroHeight() == '1' || + strtolower((string)$pSheet->getDefaultRowDimension()->getZeroHeight()) == 'true') { + $objWriter->writeAttribute('zeroHeight', '1'); + } + + // Default column width + if ($pSheet->getDefaultColumnDimension()->getWidth() >= 0) { + $objWriter->writeAttribute('defaultColWidth', PHPExcel_Shared_String::FormatNumber($pSheet->getDefaultColumnDimension()->getWidth())); + } + + // Outline level - row + $outlineLevelRow = 0; + foreach ($pSheet->getRowDimensions() as $dimension) { + if ($dimension->getOutlineLevel() > $outlineLevelRow) { + $outlineLevelRow = $dimension->getOutlineLevel(); + } + } + $objWriter->writeAttribute('outlineLevelRow', (int)$outlineLevelRow); + + // Outline level - column + $outlineLevelCol = 0; + foreach ($pSheet->getColumnDimensions() as $dimension) { + if ($dimension->getOutlineLevel() > $outlineLevelCol) { + $outlineLevelCol = $dimension->getOutlineLevel(); + } + } + $objWriter->writeAttribute('outlineLevelCol', (int)$outlineLevelCol); + + $objWriter->endElement(); + } + + /** + * Write Cols + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeCols(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // cols + if (count($pSheet->getColumnDimensions()) > 0) { + $objWriter->startElement('cols'); + + $pSheet->calculateColumnWidths(); + + // Loop through column dimensions + foreach ($pSheet->getColumnDimensions() as $colDimension) { + // col + $objWriter->startElement('col'); + $objWriter->writeAttribute('min', PHPExcel_Cell::columnIndexFromString($colDimension->getColumnIndex())); + $objWriter->writeAttribute('max', PHPExcel_Cell::columnIndexFromString($colDimension->getColumnIndex())); + + if ($colDimension->getWidth() < 0) { + // No width set, apply default of 10 + $objWriter->writeAttribute('width', '9.10'); + } else { + // Width set + $objWriter->writeAttribute('width', PHPExcel_Shared_String::FormatNumber($colDimension->getWidth())); + } + + // Column visibility + if ($colDimension->getVisible() == false) { + $objWriter->writeAttribute('hidden', 'true'); + } + + // Auto size? + if ($colDimension->getAutoSize()) { + $objWriter->writeAttribute('bestFit', 'true'); + } + + // Custom width? + if ($colDimension->getWidth() != $pSheet->getDefaultColumnDimension()->getWidth()) { + $objWriter->writeAttribute('customWidth', 'true'); + } + + // Collapsed + if ($colDimension->getCollapsed() == true) { + $objWriter->writeAttribute('collapsed', 'true'); + } + + // Outline level + if ($colDimension->getOutlineLevel() > 0) { + $objWriter->writeAttribute('outlineLevel', $colDimension->getOutlineLevel()); + } + + // Style + $objWriter->writeAttribute('style', $colDimension->getXfIndex()); + + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write SheetProtection + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeSheetProtection(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // sheetProtection + $objWriter->startElement('sheetProtection'); + + if ($pSheet->getProtection()->getPassword() != '') { + $objWriter->writeAttribute('password', $pSheet->getProtection()->getPassword()); + } + + $objWriter->writeAttribute('sheet', ($pSheet->getProtection()->getSheet() ? 'true' : 'false')); + $objWriter->writeAttribute('objects', ($pSheet->getProtection()->getObjects() ? 'true' : 'false')); + $objWriter->writeAttribute('scenarios', ($pSheet->getProtection()->getScenarios() ? 'true' : 'false')); + $objWriter->writeAttribute('formatCells', ($pSheet->getProtection()->getFormatCells() ? 'true' : 'false')); + $objWriter->writeAttribute('formatColumns', ($pSheet->getProtection()->getFormatColumns() ? 'true' : 'false')); + $objWriter->writeAttribute('formatRows', ($pSheet->getProtection()->getFormatRows() ? 'true' : 'false')); + $objWriter->writeAttribute('insertColumns', ($pSheet->getProtection()->getInsertColumns() ? 'true' : 'false')); + $objWriter->writeAttribute('insertRows', ($pSheet->getProtection()->getInsertRows() ? 'true' : 'false')); + $objWriter->writeAttribute('insertHyperlinks', ($pSheet->getProtection()->getInsertHyperlinks() ? 'true' : 'false')); + $objWriter->writeAttribute('deleteColumns', ($pSheet->getProtection()->getDeleteColumns() ? 'true' : 'false')); + $objWriter->writeAttribute('deleteRows', ($pSheet->getProtection()->getDeleteRows() ? 'true' : 'false')); + $objWriter->writeAttribute('selectLockedCells', ($pSheet->getProtection()->getSelectLockedCells() ? 'true' : 'false')); + $objWriter->writeAttribute('sort', ($pSheet->getProtection()->getSort() ? 'true' : 'false')); + $objWriter->writeAttribute('autoFilter', ($pSheet->getProtection()->getAutoFilter() ? 'true' : 'false')); + $objWriter->writeAttribute('pivotTables', ($pSheet->getProtection()->getPivotTables() ? 'true' : 'false')); + $objWriter->writeAttribute('selectUnlockedCells', ($pSheet->getProtection()->getSelectUnlockedCells() ? 'true' : 'false')); + $objWriter->endElement(); + } + + /** + * Write ConditionalFormatting + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeConditionalFormatting(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // Conditional id + $id = 1; + + // Loop through styles in the current worksheet + foreach ($pSheet->getConditionalStylesCollection() as $cellCoordinate => $conditionalStyles) { + foreach ($conditionalStyles as $conditional) { + // WHY was this again? + // if ($this->getParentWriter()->getStylesConditionalHashTable()->getIndexForHashCode($conditional->getHashCode()) == '') { + // continue; + // } + if ($conditional->getConditionType() != PHPExcel_Style_Conditional::CONDITION_NONE) { + // conditionalFormatting + $objWriter->startElement('conditionalFormatting'); + $objWriter->writeAttribute('sqref', $cellCoordinate); + + // cfRule + $objWriter->startElement('cfRule'); + $objWriter->writeAttribute('type', $conditional->getConditionType()); + $objWriter->writeAttribute('dxfId', $this->getParentWriter()->getStylesConditionalHashTable()->getIndexForHashCode($conditional->getHashCode())); + $objWriter->writeAttribute('priority', $id++); + + if (($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CELLIS || $conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT) + && $conditional->getOperatorType() != PHPExcel_Style_Conditional::OPERATOR_NONE) { + $objWriter->writeAttribute('operator', $conditional->getOperatorType()); + } + + if ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + && !is_null($conditional->getText())) { + $objWriter->writeAttribute('text', $conditional->getText()); + } + + if ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + && $conditional->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_CONTAINSTEXT + && !is_null($conditional->getText())) { + $objWriter->writeElement('formula', 'NOT(ISERROR(SEARCH("' . $conditional->getText() . '",' . $cellCoordinate . ')))'); + } elseif ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + && $conditional->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_BEGINSWITH + && !is_null($conditional->getText())) { + $objWriter->writeElement('formula', 'LEFT(' . $cellCoordinate . ',' . strlen($conditional->getText()) . ')="' . $conditional->getText() . '"'); + } elseif ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + && $conditional->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_ENDSWITH + && !is_null($conditional->getText())) { + $objWriter->writeElement('formula', 'RIGHT(' . $cellCoordinate . ',' . strlen($conditional->getText()) . ')="' . $conditional->getText() . '"'); + } elseif ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + && $conditional->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_NOTCONTAINS + && !is_null($conditional->getText())) { + $objWriter->writeElement('formula', 'ISERROR(SEARCH("' . $conditional->getText() . '",' . $cellCoordinate . '))'); + } elseif ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CELLIS + || $conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + || $conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_EXPRESSION) { + foreach ($conditional->getConditions() as $formula) { + // Formula + $objWriter->writeElement('formula', $formula); + } + } + + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + } + } + + /** + * Write DataValidations + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeDataValidations(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // Datavalidation collection + $dataValidationCollection = $pSheet->getDataValidationCollection(); + + // Write data validations? + if (!empty($dataValidationCollection)) { + $objWriter->startElement('dataValidations'); + $objWriter->writeAttribute('count', count($dataValidationCollection)); + + foreach ($dataValidationCollection as $coordinate => $dv) { + $objWriter->startElement('dataValidation'); + + if ($dv->getType() != '') { + $objWriter->writeAttribute('type', $dv->getType()); + } + + if ($dv->getErrorStyle() != '') { + $objWriter->writeAttribute('errorStyle', $dv->getErrorStyle()); + } + + if ($dv->getOperator() != '') { + $objWriter->writeAttribute('operator', $dv->getOperator()); + } + + $objWriter->writeAttribute('allowBlank', ($dv->getAllowBlank() ? '1' : '0')); + $objWriter->writeAttribute('showDropDown', (!$dv->getShowDropDown() ? '1' : '0')); + $objWriter->writeAttribute('showInputMessage', ($dv->getShowInputMessage() ? '1' : '0')); + $objWriter->writeAttribute('showErrorMessage', ($dv->getShowErrorMessage() ? '1' : '0')); + + if ($dv->getErrorTitle() !== '') { + $objWriter->writeAttribute('errorTitle', $dv->getErrorTitle()); + } + if ($dv->getError() !== '') { + $objWriter->writeAttribute('error', $dv->getError()); + } + if ($dv->getPromptTitle() !== '') { + $objWriter->writeAttribute('promptTitle', $dv->getPromptTitle()); + } + if ($dv->getPrompt() !== '') { + $objWriter->writeAttribute('prompt', $dv->getPrompt()); + } + + $objWriter->writeAttribute('sqref', $coordinate); + + if ($dv->getFormula1() !== '') { + $objWriter->writeElement('formula1', $dv->getFormula1()); + } + if ($dv->getFormula2() !== '') { + $objWriter->writeElement('formula2', $dv->getFormula2()); + } + + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write Hyperlinks + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeHyperlinks(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // Hyperlink collection + $hyperlinkCollection = $pSheet->getHyperlinkCollection(); + + // Relation ID + $relationId = 1; + + // Write hyperlinks? + if (!empty($hyperlinkCollection)) { + $objWriter->startElement('hyperlinks'); + + foreach ($hyperlinkCollection as $coordinate => $hyperlink) { + $objWriter->startElement('hyperlink'); + + $objWriter->writeAttribute('ref', $coordinate); + if (!$hyperlink->isInternal()) { + $objWriter->writeAttribute('r:id', 'rId_hyperlink_' . $relationId); + ++$relationId; + } else { + $objWriter->writeAttribute('location', str_replace('sheet://', '', $hyperlink->getUrl())); + } + + if ($hyperlink->getTooltip() != '') { + $objWriter->writeAttribute('tooltip', $hyperlink->getTooltip()); + } + + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write ProtectedRanges + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeProtectedRanges(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + if (count($pSheet->getProtectedCells()) > 0) { + // protectedRanges + $objWriter->startElement('protectedRanges'); + + // Loop protectedRanges + foreach ($pSheet->getProtectedCells() as $protectedCell => $passwordHash) { + // protectedRange + $objWriter->startElement('protectedRange'); + $objWriter->writeAttribute('name', 'p' . md5($protectedCell)); + $objWriter->writeAttribute('sqref', $protectedCell); + if (!empty($passwordHash)) { + $objWriter->writeAttribute('password', $passwordHash); + } + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write MergeCells + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeMergeCells(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + if (count($pSheet->getMergeCells()) > 0) { + // mergeCells + $objWriter->startElement('mergeCells'); + + // Loop mergeCells + foreach ($pSheet->getMergeCells() as $mergeCell) { + // mergeCell + $objWriter->startElement('mergeCell'); + $objWriter->writeAttribute('ref', $mergeCell); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write PrintOptions + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writePrintOptions(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // printOptions + $objWriter->startElement('printOptions'); + + $objWriter->writeAttribute('gridLines', ($pSheet->getPrintGridlines() ? 'true': 'false')); + $objWriter->writeAttribute('gridLinesSet', 'true'); + + if ($pSheet->getPageSetup()->getHorizontalCentered()) { + $objWriter->writeAttribute('horizontalCentered', 'true'); + } + + if ($pSheet->getPageSetup()->getVerticalCentered()) { + $objWriter->writeAttribute('verticalCentered', 'true'); + } + + $objWriter->endElement(); + } + + /** + * Write PageMargins + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writePageMargins(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // pageMargins + $objWriter->startElement('pageMargins'); + $objWriter->writeAttribute('left', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getLeft())); + $objWriter->writeAttribute('right', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getRight())); + $objWriter->writeAttribute('top', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getTop())); + $objWriter->writeAttribute('bottom', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getBottom())); + $objWriter->writeAttribute('header', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getHeader())); + $objWriter->writeAttribute('footer', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getFooter())); + $objWriter->endElement(); + } + + /** + * Write AutoFilter + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeAutoFilter(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + $autoFilterRange = $pSheet->getAutoFilter()->getRange(); + if (!empty($autoFilterRange)) { + // autoFilter + $objWriter->startElement('autoFilter'); + + // Strip any worksheet reference from the filter coordinates + $range = PHPExcel_Cell::splitRange($autoFilterRange); + $range = $range[0]; + // Strip any worksheet ref + if (strpos($range[0], '!') !== false) { + list($ws, $range[0]) = explode('!', $range[0]); + } + $range = implode(':', $range); + + $objWriter->writeAttribute('ref', str_replace('$', '', $range)); + + $columns = $pSheet->getAutoFilter()->getColumns(); + if (count($columns > 0)) { + foreach ($columns as $columnID => $column) { + $rules = $column->getRules(); + if (count($rules) > 0) { + $objWriter->startElement('filterColumn'); + $objWriter->writeAttribute('colId', $pSheet->getAutoFilter()->getColumnOffset($columnID)); + + $objWriter->startElement($column->getFilterType()); + if ($column->getJoin() == PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND) { + $objWriter->writeAttribute('and', 1); + } + + foreach ($rules as $rule) { + if (($column->getFilterType() === PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER) && + ($rule->getOperator() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL) && + ($rule->getValue() === '')) { + // Filter rule for Blanks + $objWriter->writeAttribute('blank', 1); + } elseif ($rule->getRuleType() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMICFILTER) { + // Dynamic Filter Rule + $objWriter->writeAttribute('type', $rule->getGrouping()); + $val = $column->getAttribute('val'); + if ($val !== null) { + $objWriter->writeAttribute('val', $val); + } + $maxVal = $column->getAttribute('maxVal'); + if ($maxVal !== null) { + $objWriter->writeAttribute('maxVal', $maxVal); + } + } elseif ($rule->getRuleType() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_TOPTENFILTER) { + // Top 10 Filter Rule + $objWriter->writeAttribute('val', $rule->getValue()); + $objWriter->writeAttribute('percent', (($rule->getOperator() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT) ? '1' : '0')); + $objWriter->writeAttribute('top', (($rule->getGrouping() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP) ? '1': '0')); + } else { + // Filter, DateGroupItem or CustomFilter + $objWriter->startElement($rule->getRuleType()); + + if ($rule->getOperator() !== PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL) { + $objWriter->writeAttribute('operator', $rule->getOperator()); + } + if ($rule->getRuleType() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP) { + // Date Group filters + foreach ($rule->getValue() as $key => $value) { + if ($value > '') { + $objWriter->writeAttribute($key, $value); + } + } + $objWriter->writeAttribute('dateTimeGrouping', $rule->getGrouping()); + } else { + $objWriter->writeAttribute('val', $rule->getValue()); + } + + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + } + $objWriter->endElement(); + } + } + + /** + * Write PageSetup + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writePageSetup(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // pageSetup + $objWriter->startElement('pageSetup'); + $objWriter->writeAttribute('paperSize', $pSheet->getPageSetup()->getPaperSize()); + $objWriter->writeAttribute('orientation', $pSheet->getPageSetup()->getOrientation()); + + if (!is_null($pSheet->getPageSetup()->getScale())) { + $objWriter->writeAttribute('scale', $pSheet->getPageSetup()->getScale()); + } + if (!is_null($pSheet->getPageSetup()->getFitToHeight())) { + $objWriter->writeAttribute('fitToHeight', $pSheet->getPageSetup()->getFitToHeight()); + } else { + $objWriter->writeAttribute('fitToHeight', '0'); + } + if (!is_null($pSheet->getPageSetup()->getFitToWidth())) { + $objWriter->writeAttribute('fitToWidth', $pSheet->getPageSetup()->getFitToWidth()); + } else { + $objWriter->writeAttribute('fitToWidth', '0'); + } + if (!is_null($pSheet->getPageSetup()->getFirstPageNumber())) { + $objWriter->writeAttribute('firstPageNumber', $pSheet->getPageSetup()->getFirstPageNumber()); + $objWriter->writeAttribute('useFirstPageNumber', '1'); + } + + $objWriter->endElement(); + } + + /** + * Write Header / Footer + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeHeaderFooter(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // headerFooter + $objWriter->startElement('headerFooter'); + $objWriter->writeAttribute('differentOddEven', ($pSheet->getHeaderFooter()->getDifferentOddEven() ? 'true' : 'false')); + $objWriter->writeAttribute('differentFirst', ($pSheet->getHeaderFooter()->getDifferentFirst() ? 'true' : 'false')); + $objWriter->writeAttribute('scaleWithDoc', ($pSheet->getHeaderFooter()->getScaleWithDocument() ? 'true' : 'false')); + $objWriter->writeAttribute('alignWithMargins', ($pSheet->getHeaderFooter()->getAlignWithMargins() ? 'true' : 'false')); + + $objWriter->writeElement('oddHeader', $pSheet->getHeaderFooter()->getOddHeader()); + $objWriter->writeElement('oddFooter', $pSheet->getHeaderFooter()->getOddFooter()); + $objWriter->writeElement('evenHeader', $pSheet->getHeaderFooter()->getEvenHeader()); + $objWriter->writeElement('evenFooter', $pSheet->getHeaderFooter()->getEvenFooter()); + $objWriter->writeElement('firstHeader', $pSheet->getHeaderFooter()->getFirstHeader()); + $objWriter->writeElement('firstFooter', $pSheet->getHeaderFooter()->getFirstFooter()); + $objWriter->endElement(); + } + + /** + * Write Breaks + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeBreaks(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // Get row and column breaks + $aRowBreaks = array(); + $aColumnBreaks = array(); + foreach ($pSheet->getBreaks() as $cell => $breakType) { + if ($breakType == PHPExcel_Worksheet::BREAK_ROW) { + $aRowBreaks[] = $cell; + } elseif ($breakType == PHPExcel_Worksheet::BREAK_COLUMN) { + $aColumnBreaks[] = $cell; + } + } + + // rowBreaks + if (!empty($aRowBreaks)) { + $objWriter->startElement('rowBreaks'); + $objWriter->writeAttribute('count', count($aRowBreaks)); + $objWriter->writeAttribute('manualBreakCount', count($aRowBreaks)); + + foreach ($aRowBreaks as $cell) { + $coords = PHPExcel_Cell::coordinateFromString($cell); + + $objWriter->startElement('brk'); + $objWriter->writeAttribute('id', $coords[1]); + $objWriter->writeAttribute('man', '1'); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + // Second, write column breaks + if (!empty($aColumnBreaks)) { + $objWriter->startElement('colBreaks'); + $objWriter->writeAttribute('count', count($aColumnBreaks)); + $objWriter->writeAttribute('manualBreakCount', count($aColumnBreaks)); + + foreach ($aColumnBreaks as $cell) { + $coords = PHPExcel_Cell::coordinateFromString($cell); + + $objWriter->startElement('brk'); + $objWriter->writeAttribute('id', PHPExcel_Cell::columnIndexFromString($coords[0]) - 1); + $objWriter->writeAttribute('man', '1'); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write SheetData + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @param string[] $pStringTable String table + * @throws PHPExcel_Writer_Exception + */ + private function writeSheetData(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $pStringTable = null) + { + if (is_array($pStringTable)) { + // Flipped stringtable, for faster index searching + $aFlippedStringTable = $this->getParentWriter()->getWriterPart('stringtable')->flipStringTable($pStringTable); + + // sheetData + $objWriter->startElement('sheetData'); + + // Get column count + $colCount = PHPExcel_Cell::columnIndexFromString($pSheet->getHighestColumn()); + + // Highest row number + $highestRow = $pSheet->getHighestRow(); + + // Loop through cells + $cellsByRow = array(); + foreach ($pSheet->getCellCollection() as $cellID) { + $cellAddress = PHPExcel_Cell::coordinateFromString($cellID); + $cellsByRow[$cellAddress[1]][] = $cellID; + } + + $currentRow = 0; + while ($currentRow++ < $highestRow) { + // Get row dimension + $rowDimension = $pSheet->getRowDimension($currentRow); + + // Write current row? + $writeCurrentRow = isset($cellsByRow[$currentRow]) || $rowDimension->getRowHeight() >= 0 || $rowDimension->getVisible() == false || $rowDimension->getCollapsed() == true || $rowDimension->getOutlineLevel() > 0 || $rowDimension->getXfIndex() !== null; + + if ($writeCurrentRow) { + // Start a new row + $objWriter->startElement('row'); + $objWriter->writeAttribute('r', $currentRow); + $objWriter->writeAttribute('spans', '1:' . $colCount); + + // Row dimensions + if ($rowDimension->getRowHeight() >= 0) { + $objWriter->writeAttribute('customHeight', '1'); + $objWriter->writeAttribute('ht', PHPExcel_Shared_String::FormatNumber($rowDimension->getRowHeight())); + } + + // Row visibility + if ($rowDimension->getVisible() == false) { + $objWriter->writeAttribute('hidden', 'true'); + } + + // Collapsed + if ($rowDimension->getCollapsed() == true) { + $objWriter->writeAttribute('collapsed', 'true'); + } + + // Outline level + if ($rowDimension->getOutlineLevel() > 0) { + $objWriter->writeAttribute('outlineLevel', $rowDimension->getOutlineLevel()); + } + + // Style + if ($rowDimension->getXfIndex() !== null) { + $objWriter->writeAttribute('s', $rowDimension->getXfIndex()); + $objWriter->writeAttribute('customFormat', '1'); + } + + // Write cells + if (isset($cellsByRow[$currentRow])) { + foreach ($cellsByRow[$currentRow] as $cellAddress) { + // Write cell + $this->writeCell($objWriter, $pSheet, $cellAddress, $pStringTable, $aFlippedStringTable); + } + } + + // End row + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + } else { + throw new PHPExcel_Writer_Exception("Invalid parameters passed."); + } + } + + /** + * Write Cell + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @param PHPExcel_Cell $pCellAddress Cell Address + * @param string[] $pStringTable String table + * @param string[] $pFlippedStringTable String table (flipped), for faster index searching + * @throws PHPExcel_Writer_Exception + */ + private function writeCell(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $pCellAddress = null, $pStringTable = null, $pFlippedStringTable = null) + { + if (is_array($pStringTable) && is_array($pFlippedStringTable)) { + // Cell + $pCell = $pSheet->getCell($pCellAddress); + $objWriter->startElement('c'); + $objWriter->writeAttribute('r', $pCellAddress); + + // Sheet styles + if ($pCell->getXfIndex() != '') { + $objWriter->writeAttribute('s', $pCell->getXfIndex()); + } + + // If cell value is supplied, write cell value + $cellValue = $pCell->getValue(); + if (is_object($cellValue) || $cellValue !== '') { + // Map type + $mappedType = $pCell->getDataType(); + + // Write data type depending on its type + switch (strtolower($mappedType)) { + case 'inlinestr': // Inline string + case 's': // String + case 'b': // Boolean + $objWriter->writeAttribute('t', $mappedType); + break; + case 'f': // Formula + $calculatedValue = ($this->getParentWriter()->getPreCalculateFormulas()) ? + $pCell->getCalculatedValue() : + $cellValue; + if (is_string($calculatedValue)) { + $objWriter->writeAttribute('t', 'str'); + } + break; + case 'e': // Error + $objWriter->writeAttribute('t', $mappedType); + } + + // Write data depending on its type + switch (strtolower($mappedType)) { + case 'inlinestr': // Inline string + if (! $cellValue instanceof PHPExcel_RichText) { + $objWriter->writeElement('t', PHPExcel_Shared_String::ControlCharacterPHP2OOXML(htmlspecialchars($cellValue))); + } elseif ($cellValue instanceof PHPExcel_RichText) { + $objWriter->startElement('is'); + $this->getParentWriter()->getWriterPart('stringtable')->writeRichText($objWriter, $cellValue); + $objWriter->endElement(); + } + + break; + case 's': // String + if (! $cellValue instanceof PHPExcel_RichText) { + if (isset($pFlippedStringTable[$cellValue])) { + $objWriter->writeElement('v', $pFlippedStringTable[$cellValue]); + } + } elseif ($cellValue instanceof PHPExcel_RichText) { + $objWriter->writeElement('v', $pFlippedStringTable[$cellValue->getHashCode()]); + } + + break; + case 'f': // Formula + $attributes = $pCell->getFormulaAttributes(); + if ($attributes['t'] == 'array') { + $objWriter->startElement('f'); + $objWriter->writeAttribute('t', 'array'); + $objWriter->writeAttribute('ref', $pCellAddress); + $objWriter->writeAttribute('aca', '1'); + $objWriter->writeAttribute('ca', '1'); + $objWriter->text(substr($cellValue, 1)); + $objWriter->endElement(); + } else { + $objWriter->writeElement('f', substr($cellValue, 1)); + } + if ($this->getParentWriter()->getOffice2003Compatibility() === false) { + if ($this->getParentWriter()->getPreCalculateFormulas()) { +// $calculatedValue = $pCell->getCalculatedValue(); + if (!is_array($calculatedValue) && substr($calculatedValue, 0, 1) != '#') { + $objWriter->writeElement('v', PHPExcel_Shared_String::FormatNumber($calculatedValue)); + } else { + $objWriter->writeElement('v', '0'); + } + } else { + $objWriter->writeElement('v', '0'); + } + } + break; + case 'n': // Numeric + // force point as decimal separator in case current locale uses comma + $objWriter->writeElement('v', str_replace(',', '.', $cellValue)); + break; + case 'b': // Boolean + $objWriter->writeElement('v', ($cellValue ? '1' : '0')); + break; + case 'e': // Error + if (substr($cellValue, 0, 1) == '=') { + $objWriter->writeElement('f', substr($cellValue, 1)); + $objWriter->writeElement('v', substr($cellValue, 1)); + } else { + $objWriter->writeElement('v', $cellValue); + } + + break; + } + } + + $objWriter->endElement(); + } else { + throw new PHPExcel_Writer_Exception("Invalid parameters passed."); + } + } + + /** + * Write Drawings + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @param boolean $includeCharts Flag indicating if we should include drawing details for charts + * @throws PHPExcel_Writer_Exception + */ + private function writeDrawings(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $includeCharts = false) + { + $chartCount = ($includeCharts) ? $pSheet->getChartCollection()->count() : 0; + // If sheet contains drawings, add the relationships + if (($pSheet->getDrawingCollection()->count() > 0) || + ($chartCount > 0)) { + $objWriter->startElement('drawing'); + $objWriter->writeAttribute('r:id', 'rId1'); + $objWriter->endElement(); + } + } + + /** + * Write LegacyDrawing + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeLegacyDrawing(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // If sheet contains comments, add the relationships + if (count($pSheet->getComments()) > 0) { + $objWriter->startElement('legacyDrawing'); + $objWriter->writeAttribute('r:id', 'rId_comments_vml1'); + $objWriter->endElement(); + } + } + + /** + * Write LegacyDrawingHF + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws PHPExcel_Writer_Exception + */ + private function writeLegacyDrawingHF(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // If sheet contains images, add the relationships + if (count($pSheet->getHeaderFooter()->getImages()) > 0) { + $objWriter->startElement('legacyDrawingHF'); + $objWriter->writeAttribute('r:id', 'rId_headerfooter_vml1'); + $objWriter->endElement(); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/WriterPart.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/WriterPart.php new file mode 100644 index 0000000..806ebe5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/WriterPart.php @@ -0,0 +1,75 @@ +<?php + +/** + * PHPExcel_Writer_Excel2007_WriterPart + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +abstract class PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Parent IWriter object + * + * @var PHPExcel_Writer_IWriter + */ + private $parentWriter; + + /** + * Set parent IWriter object + * + * @param PHPExcel_Writer_IWriter $pWriter + * @throws PHPExcel_Writer_Exception + */ + public function setParentWriter(PHPExcel_Writer_IWriter $pWriter = null) + { + $this->parentWriter = $pWriter; + } + + /** + * Get parent IWriter object + * + * @return PHPExcel_Writer_IWriter + * @throws PHPExcel_Writer_Exception + */ + public function getParentWriter() + { + if (!is_null($this->parentWriter)) { + return $this->parentWriter; + } else { + throw new PHPExcel_Writer_Exception("No parent PHPExcel_Writer_IWriter assigned."); + } + } + + /** + * Set parent IWriter object + * + * @param PHPExcel_Writer_IWriter $pWriter + * @throws PHPExcel_Writer_Exception + */ + public function __construct(PHPExcel_Writer_IWriter $pWriter = null) + { + if (!is_null($pWriter)) { + $this->parentWriter = $pWriter; + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/_notes/dwsync.xml new file mode 100644 index 0000000..675c026 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Comments.php" server="62.244.88.21/deciday/" local="131919461940337698" remote="131880384600000000" Dst="1" /> +<file name="Chart.php" server="62.244.88.21/deciday/" local="131919461940924767" remote="131880384600000000" Dst="1" /> +<file name="ContentTypes.php" server="62.244.88.21/deciday/" local="131919461942055552" remote="131880384600000000" Dst="1" /> +<file name="DocProps.php" server="62.244.88.21/deciday/" local="131919461942246359" remote="131880384600000000" Dst="1" /> +<file name="Drawing.php" server="62.244.88.21/deciday/" local="131919461943425324" remote="131880384600000000" Dst="1" /> +<file name="Rels.php" server="62.244.88.21/deciday/" local="131919461943608467" remote="131880384600000000" Dst="1" /> +<file name="RelsVBA.php" server="62.244.88.21/deciday/" local="131919461944437199" remote="131880384600000000" Dst="1" /> +<file name="RelsRibbon.php" server="62.244.88.21/deciday/" local="131919461944642630" remote="131880384600000000" Dst="1" /> +<file name="StringTable.php" server="62.244.88.21/deciday/" local="131919461945790555" remote="131880384600000000" Dst="1" /> +<file name="Theme.php" server="62.244.88.21/deciday/" local="131919461948533977" remote="131880384600000000" Dst="1" /> +<file name="Workbook.php" server="62.244.88.21/deciday/" local="131919461951736944" remote="131880384600000000" Dst="1" /> +<file name="WriterPart.php" server="62.244.88.21/deciday/" local="131919461952751489" remote="131880384600000000" Dst="1" /> +<file name="Worksheet.php" server="62.244.88.21/deciday/" local="131919461953588168" remote="131880384600000000" Dst="1" /> +<file name="Style.php" server="62.244.88.21/deciday/" local="131919461977238950" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5.php new file mode 100644 index 0000000..2dede81 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5.php @@ -0,0 +1,904 @@ +<?php + +/** + * PHPExcel_Writer_Excel5 + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel5 extends PHPExcel_Writer_Abstract implements PHPExcel_Writer_IWriter +{ + /** + * PHPExcel object + * + * @var PHPExcel + */ + private $phpExcel; + + /** + * Total number of shared strings in workbook + * + * @var int + */ + private $strTotal = 0; + + /** + * Number of unique shared strings in workbook + * + * @var int + */ + private $strUnique = 0; + + /** + * Array of unique shared strings in workbook + * + * @var array + */ + private $strTable = array(); + + /** + * Color cache. Mapping between RGB value and color index. + * + * @var array + */ + private $colors; + + /** + * Formula parser + * + * @var PHPExcel_Writer_Excel5_Parser + */ + private $parser; + + /** + * Identifier clusters for drawings. Used in MSODRAWINGGROUP record. + * + * @var array + */ + private $IDCLs; + + /** + * Basic OLE object summary information + * + * @var array + */ + private $summaryInformation; + + /** + * Extended OLE object document summary information + * + * @var array + */ + private $documentSummaryInformation; + + /** + * Create a new PHPExcel_Writer_Excel5 + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) + { + $this->phpExcel = $phpExcel; + + $this->parser = new PHPExcel_Writer_Excel5_Parser(); + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename + * @throws PHPExcel_Writer_Exception + */ + public function save($pFilename = null) + { + + // garbage collect + $this->phpExcel->garbageCollect(); + + $saveDebugLog = PHPExcel_Calculation::getInstance($this->phpExcel)->getDebugLog()->getWriteDebugLog(); + PHPExcel_Calculation::getInstance($this->phpExcel)->getDebugLog()->setWriteDebugLog(false); + $saveDateReturnType = PHPExcel_Calculation_Functions::getReturnDateType(); + PHPExcel_Calculation_Functions::setReturnDateType(PHPExcel_Calculation_Functions::RETURNDATE_EXCEL); + + // initialize colors array + $this->colors = array(); + + // Initialise workbook writer + $this->writerWorkbook = new PHPExcel_Writer_Excel5_Workbook($this->phpExcel, $this->strTotal, $this->strUnique, $this->strTable, $this->colors, $this->parser); + + // Initialise worksheet writers + $countSheets = $this->phpExcel->getSheetCount(); + for ($i = 0; $i < $countSheets; ++$i) { + $this->writerWorksheets[$i] = new PHPExcel_Writer_Excel5_Worksheet($this->strTotal, $this->strUnique, $this->strTable, $this->colors, $this->parser, $this->preCalculateFormulas, $this->phpExcel->getSheet($i)); + } + + // build Escher objects. Escher objects for workbooks needs to be build before Escher object for workbook. + $this->buildWorksheetEschers(); + $this->buildWorkbookEscher(); + + // add 15 identical cell style Xfs + // for now, we use the first cellXf instead of cellStyleXf + $cellXfCollection = $this->phpExcel->getCellXfCollection(); + for ($i = 0; $i < 15; ++$i) { + $this->writerWorkbook->addXfWriter($cellXfCollection[0], true); + } + + // add all the cell Xfs + foreach ($this->phpExcel->getCellXfCollection() as $style) { + $this->writerWorkbook->addXfWriter($style, false); + } + + // add fonts from rich text eleemnts + for ($i = 0; $i < $countSheets; ++$i) { + foreach ($this->writerWorksheets[$i]->phpSheet->getCellCollection() as $cellID) { + $cell = $this->writerWorksheets[$i]->phpSheet->getCell($cellID); + $cVal = $cell->getValue(); + if ($cVal instanceof PHPExcel_RichText) { + $elements = $cVal->getRichTextElements(); + foreach ($elements as $element) { + if ($element instanceof PHPExcel_RichText_Run) { + $font = $element->getFont(); + $this->writerWorksheets[$i]->fontHashIndex[$font->getHashCode()] = $this->writerWorkbook->addFont($font); + } + } + } + } + } + + // initialize OLE file + $workbookStreamName = 'Workbook'; + $OLE = new PHPExcel_Shared_OLE_PPS_File(PHPExcel_Shared_OLE::Asc2Ucs($workbookStreamName)); + + // Write the worksheet streams before the global workbook stream, + // because the byte sizes of these are needed in the global workbook stream + $worksheetSizes = array(); + for ($i = 0; $i < $countSheets; ++$i) { + $this->writerWorksheets[$i]->close(); + $worksheetSizes[] = $this->writerWorksheets[$i]->_datasize; + } + + // add binary data for global workbook stream + $OLE->append($this->writerWorkbook->writeWorkbook($worksheetSizes)); + + // add binary data for sheet streams + for ($i = 0; $i < $countSheets; ++$i) { + $OLE->append($this->writerWorksheets[$i]->getData()); + } + + $this->documentSummaryInformation = $this->writeDocumentSummaryInformation(); + // initialize OLE Document Summary Information + if (isset($this->documentSummaryInformation) && !empty($this->documentSummaryInformation)) { + $OLE_DocumentSummaryInformation = new PHPExcel_Shared_OLE_PPS_File(PHPExcel_Shared_OLE::Asc2Ucs(chr(5) . 'DocumentSummaryInformation')); + $OLE_DocumentSummaryInformation->append($this->documentSummaryInformation); + } + + $this->summaryInformation = $this->writeSummaryInformation(); + // initialize OLE Summary Information + if (isset($this->summaryInformation) && !empty($this->summaryInformation)) { + $OLE_SummaryInformation = new PHPExcel_Shared_OLE_PPS_File(PHPExcel_Shared_OLE::Asc2Ucs(chr(5) . 'SummaryInformation')); + $OLE_SummaryInformation->append($this->summaryInformation); + } + + // define OLE Parts + $arrRootData = array($OLE); + // initialize OLE Properties file + if (isset($OLE_SummaryInformation)) { + $arrRootData[] = $OLE_SummaryInformation; + } + // initialize OLE Extended Properties file + if (isset($OLE_DocumentSummaryInformation)) { + $arrRootData[] = $OLE_DocumentSummaryInformation; + } + + $root = new PHPExcel_Shared_OLE_PPS_Root(time(), time(), $arrRootData); + // save the OLE file + $res = $root->save($pFilename); + + PHPExcel_Calculation_Functions::setReturnDateType($saveDateReturnType); + PHPExcel_Calculation::getInstance($this->phpExcel)->getDebugLog()->setWriteDebugLog($saveDebugLog); + } + + /** + * Set temporary storage directory + * + * @deprecated + * @param string $pValue Temporary storage directory + * @throws PHPExcel_Writer_Exception when directory does not exist + * @return PHPExcel_Writer_Excel5 + */ + public function setTempDir($pValue = '') + { + return $this; + } + + /** + * Build the Worksheet Escher objects + * + */ + private function buildWorksheetEschers() + { + // 1-based index to BstoreContainer + $blipIndex = 0; + $lastReducedSpId = 0; + $lastSpId = 0; + + foreach ($this->phpExcel->getAllsheets() as $sheet) { + // sheet index + $sheetIndex = $sheet->getParent()->getIndex($sheet); + + $escher = null; + + // check if there are any shapes for this sheet + $filterRange = $sheet->getAutoFilter()->getRange(); + if (count($sheet->getDrawingCollection()) == 0 && empty($filterRange)) { + continue; + } + + // create intermediate Escher object + $escher = new PHPExcel_Shared_Escher(); + + // dgContainer + $dgContainer = new PHPExcel_Shared_Escher_DgContainer(); + + // set the drawing index (we use sheet index + 1) + $dgId = $sheet->getParent()->getIndex($sheet) + 1; + $dgContainer->setDgId($dgId); + $escher->setDgContainer($dgContainer); + + // spgrContainer + $spgrContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer(); + $dgContainer->setSpgrContainer($spgrContainer); + + // add one shape which is the group shape + $spContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer(); + $spContainer->setSpgr(true); + $spContainer->setSpType(0); + $spContainer->setSpId(($sheet->getParent()->getIndex($sheet) + 1) << 10); + $spgrContainer->addChild($spContainer); + + // add the shapes + + $countShapes[$sheetIndex] = 0; // count number of shapes (minus group shape), in sheet + + foreach ($sheet->getDrawingCollection() as $drawing) { + ++$blipIndex; + + ++$countShapes[$sheetIndex]; + + // add the shape + $spContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer(); + + // set the shape type + $spContainer->setSpType(0x004B); + // set the shape flag + $spContainer->setSpFlag(0x02); + + // set the shape index (we combine 1-based sheet index and $countShapes to create unique shape index) + $reducedSpId = $countShapes[$sheetIndex]; + $spId = $reducedSpId + | ($sheet->getParent()->getIndex($sheet) + 1) << 10; + $spContainer->setSpId($spId); + + // keep track of last reducedSpId + $lastReducedSpId = $reducedSpId; + + // keep track of last spId + $lastSpId = $spId; + + // set the BLIP index + $spContainer->setOPT(0x4104, $blipIndex); + + // set coordinates and offsets, client anchor + $coordinates = $drawing->getCoordinates(); + $offsetX = $drawing->getOffsetX(); + $offsetY = $drawing->getOffsetY(); + $width = $drawing->getWidth(); + $height = $drawing->getHeight(); + + $twoAnchor = PHPExcel_Shared_Excel5::oneAnchor2twoAnchor($sheet, $coordinates, $offsetX, $offsetY, $width, $height); + + $spContainer->setStartCoordinates($twoAnchor['startCoordinates']); + $spContainer->setStartOffsetX($twoAnchor['startOffsetX']); + $spContainer->setStartOffsetY($twoAnchor['startOffsetY']); + $spContainer->setEndCoordinates($twoAnchor['endCoordinates']); + $spContainer->setEndOffsetX($twoAnchor['endOffsetX']); + $spContainer->setEndOffsetY($twoAnchor['endOffsetY']); + + $spgrContainer->addChild($spContainer); + } + + // AutoFilters + if (!empty($filterRange)) { + $rangeBounds = PHPExcel_Cell::rangeBoundaries($filterRange); + $iNumColStart = $rangeBounds[0][0]; + $iNumColEnd = $rangeBounds[1][0]; + + $iInc = $iNumColStart; + while ($iInc <= $iNumColEnd) { + ++$countShapes[$sheetIndex]; + + // create an Drawing Object for the dropdown + $oDrawing = new PHPExcel_Worksheet_BaseDrawing(); + // get the coordinates of drawing + $cDrawing = PHPExcel_Cell::stringFromColumnIndex($iInc - 1) . $rangeBounds[0][1]; + $oDrawing->setCoordinates($cDrawing); + $oDrawing->setWorksheet($sheet); + + // add the shape + $spContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer(); + // set the shape type + $spContainer->setSpType(0x00C9); + // set the shape flag + $spContainer->setSpFlag(0x01); + + // set the shape index (we combine 1-based sheet index and $countShapes to create unique shape index) + $reducedSpId = $countShapes[$sheetIndex]; + $spId = $reducedSpId + | ($sheet->getParent()->getIndex($sheet) + 1) << 10; + $spContainer->setSpId($spId); + + // keep track of last reducedSpId + $lastReducedSpId = $reducedSpId; + + // keep track of last spId + $lastSpId = $spId; + + $spContainer->setOPT(0x007F, 0x01040104); // Protection -> fLockAgainstGrouping + $spContainer->setOPT(0x00BF, 0x00080008); // Text -> fFitTextToShape + $spContainer->setOPT(0x01BF, 0x00010000); // Fill Style -> fNoFillHitTest + $spContainer->setOPT(0x01FF, 0x00080000); // Line Style -> fNoLineDrawDash + $spContainer->setOPT(0x03BF, 0x000A0000); // Group Shape -> fPrint + + // set coordinates and offsets, client anchor + $endCoordinates = PHPExcel_Cell::stringFromColumnIndex(PHPExcel_Cell::stringFromColumnIndex($iInc - 1)); + $endCoordinates .= $rangeBounds[0][1] + 1; + + $spContainer->setStartCoordinates($cDrawing); + $spContainer->setStartOffsetX(0); + $spContainer->setStartOffsetY(0); + $spContainer->setEndCoordinates($endCoordinates); + $spContainer->setEndOffsetX(0); + $spContainer->setEndOffsetY(0); + + $spgrContainer->addChild($spContainer); + $iInc++; + } + } + + // identifier clusters, used for workbook Escher object + $this->IDCLs[$dgId] = $lastReducedSpId; + + // set last shape index + $dgContainer->setLastSpId($lastSpId); + + // set the Escher object + $this->writerWorksheets[$sheetIndex]->setEscher($escher); + } + } + + /** + * Build the Escher object corresponding to the MSODRAWINGGROUP record + */ + private function buildWorkbookEscher() + { + $escher = null; + + // any drawings in this workbook? + $found = false; + foreach ($this->phpExcel->getAllSheets() as $sheet) { + if (count($sheet->getDrawingCollection()) > 0) { + $found = true; + break; + } + } + + // nothing to do if there are no drawings + if (!$found) { + return; + } + + // if we reach here, then there are drawings in the workbook + $escher = new PHPExcel_Shared_Escher(); + + // dggContainer + $dggContainer = new PHPExcel_Shared_Escher_DggContainer(); + $escher->setDggContainer($dggContainer); + + // set IDCLs (identifier clusters) + $dggContainer->setIDCLs($this->IDCLs); + + // this loop is for determining maximum shape identifier of all drawing + $spIdMax = 0; + $totalCountShapes = 0; + $countDrawings = 0; + + foreach ($this->phpExcel->getAllsheets() as $sheet) { + $sheetCountShapes = 0; // count number of shapes (minus group shape), in sheet + + if (count($sheet->getDrawingCollection()) > 0) { + ++$countDrawings; + + foreach ($sheet->getDrawingCollection() as $drawing) { + ++$sheetCountShapes; + ++$totalCountShapes; + + $spId = $sheetCountShapes | ($this->phpExcel->getIndex($sheet) + 1) << 10; + $spIdMax = max($spId, $spIdMax); + } + } + } + + $dggContainer->setSpIdMax($spIdMax + 1); + $dggContainer->setCDgSaved($countDrawings); + $dggContainer->setCSpSaved($totalCountShapes + $countDrawings); // total number of shapes incl. one group shapes per drawing + + // bstoreContainer + $bstoreContainer = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer(); + $dggContainer->setBstoreContainer($bstoreContainer); + + // the BSE's (all the images) + foreach ($this->phpExcel->getAllsheets() as $sheet) { + foreach ($sheet->getDrawingCollection() as $drawing) { + if ($drawing instanceof PHPExcel_Worksheet_Drawing) { + $filename = $drawing->getPath(); + + list($imagesx, $imagesy, $imageFormat) = getimagesize($filename); + + switch ($imageFormat) { + case 1: // GIF, not supported by BIFF8, we convert to PNG + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG; + ob_start(); + imagepng(imagecreatefromgif($filename)); + $blipData = ob_get_contents(); + ob_end_clean(); + break; + case 2: // JPEG + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_JPEG; + $blipData = file_get_contents($filename); + break; + case 3: // PNG + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG; + $blipData = file_get_contents($filename); + break; + case 6: // Windows DIB (BMP), we convert to PNG + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG; + ob_start(); + imagepng(PHPExcel_Shared_Drawing::imagecreatefrombmp($filename)); + $blipData = ob_get_contents(); + ob_end_clean(); + break; + default: + continue 2; + } + + $blip = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip(); + $blip->setData($blipData); + + $BSE = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE(); + $BSE->setBlipType($blipType); + $BSE->setBlip($blip); + + $bstoreContainer->addBSE($BSE); + } elseif ($drawing instanceof PHPExcel_Worksheet_MemoryDrawing) { + switch ($drawing->getRenderingFunction()) { + case PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG: + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_JPEG; + $renderingFunction = 'imagejpeg'; + break; + case PHPExcel_Worksheet_MemoryDrawing::RENDERING_GIF: + case PHPExcel_Worksheet_MemoryDrawing::RENDERING_PNG: + case PHPExcel_Worksheet_MemoryDrawing::RENDERING_DEFAULT: + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG; + $renderingFunction = 'imagepng'; + break; + } + + ob_start(); + call_user_func($renderingFunction, $drawing->getImageResource()); + $blipData = ob_get_contents(); + ob_end_clean(); + + $blip = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip(); + $blip->setData($blipData); + + $BSE = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE(); + $BSE->setBlipType($blipType); + $BSE->setBlip($blip); + + $bstoreContainer->addBSE($BSE); + } + } + } + + // Set the Escher object + $this->writerWorkbook->setEscher($escher); + } + + /** + * Build the OLE Part for DocumentSummary Information + * @return string + */ + private function writeDocumentSummaryInformation() + { + // offset: 0; size: 2; must be 0xFE 0xFF (UTF-16 LE byte order mark) + $data = pack('v', 0xFFFE); + // offset: 2; size: 2; + $data .= pack('v', 0x0000); + // offset: 4; size: 2; OS version + $data .= pack('v', 0x0106); + // offset: 6; size: 2; OS indicator + $data .= pack('v', 0x0002); + // offset: 8; size: 16 + $data .= pack('VVVV', 0x00, 0x00, 0x00, 0x00); + // offset: 24; size: 4; section count + $data .= pack('V', 0x0001); + + // offset: 28; size: 16; first section's class id: 02 d5 cd d5 9c 2e 1b 10 93 97 08 00 2b 2c f9 ae + $data .= pack('vvvvvvvv', 0xD502, 0xD5CD, 0x2E9C, 0x101B, 0x9793, 0x0008, 0x2C2B, 0xAEF9); + // offset: 44; size: 4; offset of the start + $data .= pack('V', 0x30); + + // SECTION + $dataSection = array(); + $dataSection_NumProps = 0; + $dataSection_Summary = ''; + $dataSection_Content = ''; + + // GKPIDDSI_CODEPAGE: CodePage + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x01), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x02), // 2 byte signed integer + 'data' => array('data' => 1252)); + $dataSection_NumProps++; + + // GKPIDDSI_CATEGORY : Category + if ($this->phpExcel->getProperties()->getCategory()) { + $dataProp = $this->phpExcel->getProperties()->getCategory(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x02), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // GKPIDDSI_VERSION :Version of the application that wrote the property storage + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x17), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x03), + 'data' => array('pack' => 'V', 'data' => 0x000C0000)); + $dataSection_NumProps++; + // GKPIDDSI_SCALE : FALSE + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x0B), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x0B), + 'data' => array('data' => false)); + $dataSection_NumProps++; + // GKPIDDSI_LINKSDIRTY : True if any of the values for the linked properties have changed outside of the application + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x10), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x0B), + 'data' => array('data' => false)); + $dataSection_NumProps++; + // GKPIDDSI_SHAREDOC : FALSE + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x13), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x0B), + 'data' => array('data' => false)); + $dataSection_NumProps++; + // GKPIDDSI_HYPERLINKSCHANGED : True if any of the values for the _PID_LINKS (hyperlink text) have changed outside of the application + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x16), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x0B), + 'data' => array('data' => false)); + $dataSection_NumProps++; + + // GKPIDDSI_DOCSPARTS + // MS-OSHARED p75 (2.3.3.2.2.1) + // Structure is VtVecUnalignedLpstrValue (2.3.3.1.9) + // cElements + $dataProp = pack('v', 0x0001); + $dataProp .= pack('v', 0x0000); + // array of UnalignedLpstr + // cch + $dataProp .= pack('v', 0x000A); + $dataProp .= pack('v', 0x0000); + // value + $dataProp .= 'Worksheet'.chr(0); + + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x0D), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x101E), + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + + // GKPIDDSI_HEADINGPAIR + // VtVecHeadingPairValue + // cElements + $dataProp = pack('v', 0x0002); + $dataProp .= pack('v', 0x0000); + // Array of vtHeadingPair + // vtUnalignedString - headingString + // stringType + $dataProp .= pack('v', 0x001E); + // padding + $dataProp .= pack('v', 0x0000); + // UnalignedLpstr + // cch + $dataProp .= pack('v', 0x0013); + $dataProp .= pack('v', 0x0000); + // value + $dataProp .= 'Feuilles de calcul'; + // vtUnalignedString - headingParts + // wType : 0x0003 = 32 bit signed integer + $dataProp .= pack('v', 0x0300); + // padding + $dataProp .= pack('v', 0x0000); + // value + $dataProp .= pack('v', 0x0100); + $dataProp .= pack('v', 0x0000); + $dataProp .= pack('v', 0x0000); + $dataProp .= pack('v', 0x0000); + + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x0C), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x100C), + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + + // 4 Section Length + // 4 Property count + // 8 * $dataSection_NumProps (8 = ID (4) + OffSet(4)) + $dataSection_Content_Offset = 8 + $dataSection_NumProps * 8; + foreach ($dataSection as $dataProp) { + // Summary + $dataSection_Summary .= pack($dataProp['summary']['pack'], $dataProp['summary']['data']); + // Offset + $dataSection_Summary .= pack($dataProp['offset']['pack'], $dataSection_Content_Offset); + // DataType + $dataSection_Content .= pack($dataProp['type']['pack'], $dataProp['type']['data']); + // Data + if ($dataProp['type']['data'] == 0x02) { // 2 byte signed integer + $dataSection_Content .= pack('V', $dataProp['data']['data']); + + $dataSection_Content_Offset += 4 + 4; + } elseif ($dataProp['type']['data'] == 0x03) { // 4 byte signed integer + $dataSection_Content .= pack('V', $dataProp['data']['data']); + + $dataSection_Content_Offset += 4 + 4; + } elseif ($dataProp['type']['data'] == 0x0B) { // Boolean + if ($dataProp['data']['data'] == false) { + $dataSection_Content .= pack('V', 0x0000); + } else { + $dataSection_Content .= pack('V', 0x0001); + } + $dataSection_Content_Offset += 4 + 4; + } elseif ($dataProp['type']['data'] == 0x1E) { // null-terminated string prepended by dword string length + // Null-terminated string + $dataProp['data']['data'] .= chr(0); + $dataProp['data']['length'] += 1; + // Complete the string with null string for being a %4 + $dataProp['data']['length'] = $dataProp['data']['length'] + ((4 - $dataProp['data']['length'] % 4)==4 ? 0 : (4 - $dataProp['data']['length'] % 4)); + $dataProp['data']['data'] = str_pad($dataProp['data']['data'], $dataProp['data']['length'], chr(0), STR_PAD_RIGHT); + + $dataSection_Content .= pack('V', $dataProp['data']['length']); + $dataSection_Content .= $dataProp['data']['data']; + + $dataSection_Content_Offset += 4 + 4 + strlen($dataProp['data']['data']); + } elseif ($dataProp['type']['data'] == 0x40) { // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + $dataSection_Content .= $dataProp['data']['data']; + + $dataSection_Content_Offset += 4 + 8; + } else { + // Data Type Not Used at the moment + $dataSection_Content .= $dataProp['data']['data']; + + $dataSection_Content_Offset += 4 + $dataProp['data']['length']; + } + } + // Now $dataSection_Content_Offset contains the size of the content + + // section header + // offset: $secOffset; size: 4; section length + // + x Size of the content (summary + content) + $data .= pack('V', $dataSection_Content_Offset); + // offset: $secOffset+4; size: 4; property count + $data .= pack('V', $dataSection_NumProps); + // Section Summary + $data .= $dataSection_Summary; + // Section Content + $data .= $dataSection_Content; + + return $data; + } + + /** + * Build the OLE Part for Summary Information + * @return string + */ + private function writeSummaryInformation() + { + // offset: 0; size: 2; must be 0xFE 0xFF (UTF-16 LE byte order mark) + $data = pack('v', 0xFFFE); + // offset: 2; size: 2; + $data .= pack('v', 0x0000); + // offset: 4; size: 2; OS version + $data .= pack('v', 0x0106); + // offset: 6; size: 2; OS indicator + $data .= pack('v', 0x0002); + // offset: 8; size: 16 + $data .= pack('VVVV', 0x00, 0x00, 0x00, 0x00); + // offset: 24; size: 4; section count + $data .= pack('V', 0x0001); + + // offset: 28; size: 16; first section's class id: e0 85 9f f2 f9 4f 68 10 ab 91 08 00 2b 27 b3 d9 + $data .= pack('vvvvvvvv', 0x85E0, 0xF29F, 0x4FF9, 0x1068, 0x91AB, 0x0008, 0x272B, 0xD9B3); + // offset: 44; size: 4; offset of the start + $data .= pack('V', 0x30); + + // SECTION + $dataSection = array(); + $dataSection_NumProps = 0; + $dataSection_Summary = ''; + $dataSection_Content = ''; + + // CodePage : CP-1252 + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x01), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x02), // 2 byte signed integer + 'data' => array('data' => 1252)); + $dataSection_NumProps++; + + // Title + if ($this->phpExcel->getProperties()->getTitle()) { + $dataProp = $this->phpExcel->getProperties()->getTitle(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x02), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Subject + if ($this->phpExcel->getProperties()->getSubject()) { + $dataProp = $this->phpExcel->getProperties()->getSubject(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x03), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Author (Creator) + if ($this->phpExcel->getProperties()->getCreator()) { + $dataProp = $this->phpExcel->getProperties()->getCreator(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x04), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Keywords + if ($this->phpExcel->getProperties()->getKeywords()) { + $dataProp = $this->phpExcel->getProperties()->getKeywords(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x05), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Comments (Description) + if ($this->phpExcel->getProperties()->getDescription()) { + $dataProp = $this->phpExcel->getProperties()->getDescription(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x06), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Last Saved By (LastModifiedBy) + if ($this->phpExcel->getProperties()->getLastModifiedBy()) { + $dataProp = $this->phpExcel->getProperties()->getLastModifiedBy(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x08), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Created Date/Time + if ($this->phpExcel->getProperties()->getCreated()) { + $dataProp = $this->phpExcel->getProperties()->getCreated(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x0C), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x40), // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + 'data' => array('data' => PHPExcel_Shared_OLE::LocalDate2OLE($dataProp))); + $dataSection_NumProps++; + } + // Modified Date/Time + if ($this->phpExcel->getProperties()->getModified()) { + $dataProp = $this->phpExcel->getProperties()->getModified(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x0D), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x40), // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + 'data' => array('data' => PHPExcel_Shared_OLE::LocalDate2OLE($dataProp))); + $dataSection_NumProps++; + } + // Security + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x13), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x03), // 4 byte signed integer + 'data' => array('data' => 0x00)); + $dataSection_NumProps++; + + + // 4 Section Length + // 4 Property count + // 8 * $dataSection_NumProps (8 = ID (4) + OffSet(4)) + $dataSection_Content_Offset = 8 + $dataSection_NumProps * 8; + foreach ($dataSection as $dataProp) { + // Summary + $dataSection_Summary .= pack($dataProp['summary']['pack'], $dataProp['summary']['data']); + // Offset + $dataSection_Summary .= pack($dataProp['offset']['pack'], $dataSection_Content_Offset); + // DataType + $dataSection_Content .= pack($dataProp['type']['pack'], $dataProp['type']['data']); + // Data + if ($dataProp['type']['data'] == 0x02) { // 2 byte signed integer + $dataSection_Content .= pack('V', $dataProp['data']['data']); + + $dataSection_Content_Offset += 4 + 4; + } elseif ($dataProp['type']['data'] == 0x03) { // 4 byte signed integer + $dataSection_Content .= pack('V', $dataProp['data']['data']); + + $dataSection_Content_Offset += 4 + 4; + } elseif ($dataProp['type']['data'] == 0x1E) { // null-terminated string prepended by dword string length + // Null-terminated string + $dataProp['data']['data'] .= chr(0); + $dataProp['data']['length'] += 1; + // Complete the string with null string for being a %4 + $dataProp['data']['length'] = $dataProp['data']['length'] + ((4 - $dataProp['data']['length'] % 4)==4 ? 0 : (4 - $dataProp['data']['length'] % 4)); + $dataProp['data']['data'] = str_pad($dataProp['data']['data'], $dataProp['data']['length'], chr(0), STR_PAD_RIGHT); + + $dataSection_Content .= pack('V', $dataProp['data']['length']); + $dataSection_Content .= $dataProp['data']['data']; + + $dataSection_Content_Offset += 4 + 4 + strlen($dataProp['data']['data']); + } elseif ($dataProp['type']['data'] == 0x40) { // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + $dataSection_Content .= $dataProp['data']['data']; + + $dataSection_Content_Offset += 4 + 8; + } else { + // Data Type Not Used at the moment + } + } + // Now $dataSection_Content_Offset contains the size of the content + + // section header + // offset: $secOffset; size: 4; section length + // + x Size of the content (summary + content) + $data .= pack('V', $dataSection_Content_Offset); + // offset: $secOffset+4; size: 4; property count + $data .= pack('V', $dataSection_NumProps); + // Section Summary + $data .= $dataSection_Summary; + // Section Content + $data .= $dataSection_Content; + + return $data; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/BIFFwriter.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/BIFFwriter.php new file mode 100644 index 0000000..a795752 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/BIFFwriter.php @@ -0,0 +1,246 @@ +<?php + +/** + * PHPExcel_Writer_Excel5_BIFFwriter + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +// Original file header of PEAR::Spreadsheet_Excel_Writer_BIFFwriter (used as the base for this class): +// ----------------------------------------------------------------------------------------- +// * Module written/ported by Xavier Noguer <xnoguer@rezebra.com> +// * +// * The majority of this is _NOT_ my code. I simply ported it from the +// * PERL Spreadsheet::WriteExcel module. +// * +// * The author of the Spreadsheet::WriteExcel module is John McNamara +// * <jmcnamara@cpan.org> +// * +// * I _DO_ maintain this code, and John McNamara has nothing to do with the +// * porting of this code to PHP. Any questions directly related to this +// * class library should be directed to me. +// * +// * License Information: +// * +// * Spreadsheet_Excel_Writer: A library for generating Excel Spreadsheets +// * Copyright (c) 2002-2003 Xavier Noguer xnoguer@rezebra.com +// * +// * 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 library 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 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 +// */ +class PHPExcel_Writer_Excel5_BIFFwriter +{ + /** + * The byte order of this architecture. 0 => little endian, 1 => big endian + * @var integer + */ + private static $byteOrder; + + /** + * The string containing the data of the BIFF stream + * @var string + */ + public $_data; + + /** + * The size of the data in bytes. Should be the same as strlen($this->_data) + * @var integer + */ + public $_datasize; + + /** + * The maximum length for a BIFF record (excluding record header and length field). See addContinue() + * @var integer + * @see addContinue() + */ + private $limit = 8224; + + /** + * Constructor + */ + public function __construct() + { + $this->_data = ''; + $this->_datasize = 0; +// $this->limit = 8224; + } + + /** + * Determine the byte order and store it as class data to avoid + * recalculating it for each call to new(). + * + * @return int + */ + public static function getByteOrder() + { + if (!isset(self::$byteOrder)) { + // Check if "pack" gives the required IEEE 64bit float + $teststr = pack("d", 1.2345); + $number = pack("C8", 0x8D, 0x97, 0x6E, 0x12, 0x83, 0xC0, 0xF3, 0x3F); + if ($number == $teststr) { + $byte_order = 0; // Little Endian + } elseif ($number == strrev($teststr)) { + $byte_order = 1; // Big Endian + } else { + // Give up. I'll fix this in a later version. + throw new PHPExcel_Writer_Exception("Required floating point format not supported on this platform."); + } + self::$byteOrder = $byte_order; + } + + return self::$byteOrder; + } + + /** + * General storage function + * + * @param string $data binary data to append + * @access private + */ + protected function append($data) + { + if (strlen($data) - 4 > $this->limit) { + $data = $this->addContinue($data); + } + $this->_data .= $data; + $this->_datasize += strlen($data); + } + + /** + * General storage function like append, but returns string instead of modifying $this->_data + * + * @param string $data binary data to write + * @return string + */ + public function writeData($data) + { + if (strlen($data) - 4 > $this->limit) { + $data = $this->addContinue($data); + } + $this->_datasize += strlen($data); + + return $data; + } + + /** + * Writes Excel BOF record to indicate the beginning of a stream or + * sub-stream in the BIFF file. + * + * @param integer $type Type of BIFF file to write: 0x0005 Workbook, + * 0x0010 Worksheet. + * @access private + */ + protected function storeBof($type) + { + $record = 0x0809; // Record identifier (BIFF5-BIFF8) + $length = 0x0010; + + // by inspection of real files, MS Office Excel 2007 writes the following + $unknown = pack("VV", 0x000100D1, 0x00000406); + + $build = 0x0DBB; // Excel 97 + $year = 0x07CC; // Excel 97 + + $version = 0x0600; // BIFF8 + + $header = pack("vv", $record, $length); + $data = pack("vvvv", $version, $type, $build, $year); + $this->append($header . $data . $unknown); + } + + /** + * Writes Excel EOF record to indicate the end of a BIFF stream. + * + * @access private + */ + protected function storeEof() + { + $record = 0x000A; // Record identifier + $length = 0x0000; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $this->append($header); + } + + /** + * Writes Excel EOF record to indicate the end of a BIFF stream. + * + * @access private + */ + public function writeEof() + { + $record = 0x000A; // Record identifier + $length = 0x0000; // Number of bytes to follow + $header = pack("vv", $record, $length); + return $this->writeData($header); + } + + /** + * Excel limits the size of BIFF records. In Excel 5 the limit is 2084 bytes. In + * Excel 97 the limit is 8228 bytes. Records that are longer than these limits + * must be split up into CONTINUE blocks. + * + * This function takes a long BIFF record and inserts CONTINUE records as + * necessary. + * + * @param string $data The original binary data to be written + * @return string A very convenient string of continue blocks + * @access private + */ + private function addContinue($data) + { + $limit = $this->limit; + $record = 0x003C; // Record identifier + + // The first 2080/8224 bytes remain intact. However, we have to change + // the length field of the record. + $tmp = substr($data, 0, 2) . pack("v", $limit) . substr($data, 4, $limit); + + $header = pack("vv", $record, $limit); // Headers for continue records + + // Retrieve chunks of 2080/8224 bytes +4 for the header. + $data_length = strlen($data); + for ($i = $limit + 4; $i < ($data_length - $limit); $i += $limit) { + $tmp .= $header; + $tmp .= substr($data, $i, $limit); + } + + // Retrieve the last chunk of data + $header = pack("vv", $record, strlen($data) - $i); + $tmp .= $header; + $tmp .= substr($data, $i, strlen($data) - $i); + + return $tmp; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Escher.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Escher.php new file mode 100644 index 0000000..c37fda9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Escher.php @@ -0,0 +1,523 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Shared_Escher_DggContainer_BstoreContainer + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel5_Escher +{ + /** + * The object we are writing + */ + private $object; + + /** + * The written binary data + */ + private $data; + + /** + * Shape offsets. Positions in binary stream where a new shape record begins + * + * @var array + */ + private $spOffsets; + + /** + * Shape types. + * + * @var array + */ + private $spTypes; + + /** + * Constructor + * + * @param mixed + */ + public function __construct($object) + { + $this->object = $object; + } + + /** + * Process the object to be written + */ + public function close() + { + // initialize + $this->data = ''; + + switch (get_class($this->object)) { + case 'PHPExcel_Shared_Escher': + if ($dggContainer = $this->object->getDggContainer()) { + $writer = new PHPExcel_Writer_Excel5_Escher($dggContainer); + $this->data = $writer->close(); + } elseif ($dgContainer = $this->object->getDgContainer()) { + $writer = new PHPExcel_Writer_Excel5_Escher($dgContainer); + $this->data = $writer->close(); + $this->spOffsets = $writer->getSpOffsets(); + $this->spTypes = $writer->getSpTypes(); + } + break; + case 'PHPExcel_Shared_Escher_DggContainer': + // this is a container record + + // initialize + $innerData = ''; + + // write the dgg + $recVer = 0x0; + $recInstance = 0x0000; + $recType = 0xF006; + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + // dgg data + $dggData = + pack( + 'VVVV', + $this->object->getSpIdMax(), // maximum shape identifier increased by one + $this->object->getCDgSaved() + 1, // number of file identifier clusters increased by one + $this->object->getCSpSaved(), + $this->object->getCDgSaved() // count total number of drawings saved + ); + + // add file identifier clusters (one per drawing) + $IDCLs = $this->object->getIDCLs(); + + foreach ($IDCLs as $dgId => $maxReducedSpId) { + $dggData .= pack('VV', $dgId, $maxReducedSpId + 1); + } + + $header = pack('vvV', $recVerInstance, $recType, strlen($dggData)); + $innerData .= $header . $dggData; + + // write the bstoreContainer + if ($bstoreContainer = $this->object->getBstoreContainer()) { + $writer = new PHPExcel_Writer_Excel5_Escher($bstoreContainer); + $innerData .= $writer->close(); + } + + // write the record + $recVer = 0xF; + $recInstance = 0x0000; + $recType = 0xF000; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->data = $header . $innerData; + break; + case 'PHPExcel_Shared_Escher_DggContainer_BstoreContainer': + // this is a container record + + // initialize + $innerData = ''; + + // treat the inner data + if ($BSECollection = $this->object->getBSECollection()) { + foreach ($BSECollection as $BSE) { + $writer = new PHPExcel_Writer_Excel5_Escher($BSE); + $innerData .= $writer->close(); + } + } + + // write the record + $recVer = 0xF; + $recInstance = count($this->object->getBSECollection()); + $recType = 0xF001; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->data = $header . $innerData; + break; + case 'PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE': + // this is a semi-container record + + // initialize + $innerData = ''; + + // here we treat the inner data + if ($blip = $this->object->getBlip()) { + $writer = new PHPExcel_Writer_Excel5_Escher($blip); + $innerData .= $writer->close(); + } + + // initialize + $data = ''; + + $btWin32 = $this->object->getBlipType(); + $btMacOS = $this->object->getBlipType(); + $data .= pack('CC', $btWin32, $btMacOS); + + $rgbUid = pack('VVVV', 0, 0, 0, 0); // todo + $data .= $rgbUid; + + $tag = 0; + $size = strlen($innerData); + $cRef = 1; + $foDelay = 0; //todo + $unused1 = 0x0; + $cbName = 0x0; + $unused2 = 0x0; + $unused3 = 0x0; + $data .= pack('vVVVCCCC', $tag, $size, $cRef, $foDelay, $unused1, $cbName, $unused2, $unused3); + + $data .= $innerData; + + // write the record + $recVer = 0x2; + $recInstance = $this->object->getBlipType(); + $recType = 0xF007; + $length = strlen($data); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->data = $header; + + $this->data .= $data; + break; + case 'PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip': + // this is an atom record + + // write the record + switch ($this->object->getParent()->getBlipType()) { + case PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_JPEG: + // initialize + $innerData = ''; + + $rgbUid1 = pack('VVVV', 0, 0, 0, 0); // todo + $innerData .= $rgbUid1; + + $tag = 0xFF; // todo + $innerData .= pack('C', $tag); + + $innerData .= $this->object->getData(); + + $recVer = 0x0; + $recInstance = 0x46A; + $recType = 0xF01D; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->data = $header; + + $this->data .= $innerData; + break; + + case PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG: + // initialize + $innerData = ''; + + $rgbUid1 = pack('VVVV', 0, 0, 0, 0); // todo + $innerData .= $rgbUid1; + + $tag = 0xFF; // todo + $innerData .= pack('C', $tag); + + $innerData .= $this->object->getData(); + + $recVer = 0x0; + $recInstance = 0x6E0; + $recType = 0xF01E; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->data = $header; + + $this->data .= $innerData; + break; + } + break; + case 'PHPExcel_Shared_Escher_DgContainer': + // this is a container record + + // initialize + $innerData = ''; + + // write the dg + $recVer = 0x0; + $recInstance = $this->object->getDgId(); + $recType = 0xF008; + $length = 8; + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + // number of shapes in this drawing (including group shape) + $countShapes = count($this->object->getSpgrContainer()->getChildren()); + $innerData .= $header . pack('VV', $countShapes, $this->object->getLastSpId()); + //$innerData .= $header . pack('VV', 0, 0); + + // write the spgrContainer + if ($spgrContainer = $this->object->getSpgrContainer()) { + $writer = new PHPExcel_Writer_Excel5_Escher($spgrContainer); + $innerData .= $writer->close(); + + // get the shape offsets relative to the spgrContainer record + $spOffsets = $writer->getSpOffsets(); + $spTypes = $writer->getSpTypes(); + + // save the shape offsets relative to dgContainer + foreach ($spOffsets as & $spOffset) { + $spOffset += 24; // add length of dgContainer header data (8 bytes) plus dg data (16 bytes) + } + + $this->spOffsets = $spOffsets; + $this->spTypes = $spTypes; + } + + // write the record + $recVer = 0xF; + $recInstance = 0x0000; + $recType = 0xF002; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->data = $header . $innerData; + break; + case 'PHPExcel_Shared_Escher_DgContainer_SpgrContainer': + // this is a container record + + // initialize + $innerData = ''; + + // initialize spape offsets + $totalSize = 8; + $spOffsets = array(); + $spTypes = array(); + + // treat the inner data + foreach ($this->object->getChildren() as $spContainer) { + $writer = new PHPExcel_Writer_Excel5_Escher($spContainer); + $spData = $writer->close(); + $innerData .= $spData; + + // save the shape offsets (where new shape records begin) + $totalSize += strlen($spData); + $spOffsets[] = $totalSize; + + $spTypes = array_merge($spTypes, $writer->getSpTypes()); + } + + // write the record + $recVer = 0xF; + $recInstance = 0x0000; + $recType = 0xF003; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->data = $header . $innerData; + $this->spOffsets = $spOffsets; + $this->spTypes = $spTypes; + break; + case 'PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer': + // initialize + $data = ''; + + // build the data + + // write group shape record, if necessary? + if ($this->object->getSpgr()) { + $recVer = 0x1; + $recInstance = 0x0000; + $recType = 0xF009; + $length = 0x00000010; + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $data .= $header . pack('VVVV', 0, 0, 0, 0); + } + $this->spTypes[] = ($this->object->getSpType()); + + // write the shape record + $recVer = 0x2; + $recInstance = $this->object->getSpType(); // shape type + $recType = 0xF00A; + $length = 0x00000008; + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $data .= $header . pack('VV', $this->object->getSpId(), $this->object->getSpgr() ? 0x0005 : 0x0A00); + + + // the options + if ($this->object->getOPTCollection()) { + $optData = ''; + + $recVer = 0x3; + $recInstance = count($this->object->getOPTCollection()); + $recType = 0xF00B; + foreach ($this->object->getOPTCollection() as $property => $value) { + $optData .= pack('vV', $property, $value); + } + $length = strlen($optData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + $data .= $header . $optData; + } + + // the client anchor + if ($this->object->getStartCoordinates()) { + $clientAnchorData = ''; + + $recVer = 0x0; + $recInstance = 0x0; + $recType = 0xF010; + + // start coordinates + list($column, $row) = PHPExcel_Cell::coordinateFromString($this->object->getStartCoordinates()); + $c1 = PHPExcel_Cell::columnIndexFromString($column) - 1; + $r1 = $row - 1; + + // start offsetX + $startOffsetX = $this->object->getStartOffsetX(); + + // start offsetY + $startOffsetY = $this->object->getStartOffsetY(); + + // end coordinates + list($column, $row) = PHPExcel_Cell::coordinateFromString($this->object->getEndCoordinates()); + $c2 = PHPExcel_Cell::columnIndexFromString($column) - 1; + $r2 = $row - 1; + + // end offsetX + $endOffsetX = $this->object->getEndOffsetX(); + + // end offsetY + $endOffsetY = $this->object->getEndOffsetY(); + + $clientAnchorData = pack('vvvvvvvvv', $this->object->getSpFlag(), $c1, $startOffsetX, $r1, $startOffsetY, $c2, $endOffsetX, $r2, $endOffsetY); + + $length = strlen($clientAnchorData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + $data .= $header . $clientAnchorData; + } + + // the client data, just empty for now + if (!$this->object->getSpgr()) { + $clientDataData = ''; + + $recVer = 0x0; + $recInstance = 0x0; + $recType = 0xF011; + + $length = strlen($clientDataData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + $data .= $header . $clientDataData; + } + + // write the record + $recVer = 0xF; + $recInstance = 0x0000; + $recType = 0xF004; + $length = strlen($data); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->data = $header . $data; + break; + } + + return $this->data; + } + + /** + * Gets the shape offsets + * + * @return array + */ + public function getSpOffsets() + { + return $this->spOffsets; + } + + /** + * Gets the shape types + * + * @return array + */ + public function getSpTypes() + { + return $this->spTypes; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Font.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Font.php new file mode 100644 index 0000000..ed85ff4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Font.php @@ -0,0 +1,166 @@ +<?php + +/** + * PHPExcel_Writer_Excel5_Font + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Excel5_Font +{ + /** + * Color index + * + * @var int + */ + private $colorIndex; + + /** + * Font + * + * @var PHPExcel_Style_Font + */ + private $font; + + /** + * Constructor + * + * @param PHPExcel_Style_Font $font + */ + public function __construct(PHPExcel_Style_Font $font = null) + { + $this->colorIndex = 0x7FFF; + $this->font = $font; + } + + /** + * Set the color index + * + * @param int $colorIndex + */ + public function setColorIndex($colorIndex) + { + $this->colorIndex = $colorIndex; + } + + /** + * Get font record data + * + * @return string + */ + public function writeFont() + { + $font_outline = 0; + $font_shadow = 0; + + $icv = $this->colorIndex; // Index to color palette + if ($this->font->getSuperScript()) { + $sss = 1; + } elseif ($this->font->getSubScript()) { + $sss = 2; + } else { + $sss = 0; + } + $bFamily = 0; // Font family + $bCharSet = PHPExcel_Shared_Font::getCharsetFromFontName($this->font->getName()); // Character set + + $record = 0x31; // Record identifier + $reserved = 0x00; // Reserved + $grbit = 0x00; // Font attributes + if ($this->font->getItalic()) { + $grbit |= 0x02; + } + if ($this->font->getStrikethrough()) { + $grbit |= 0x08; + } + if ($font_outline) { + $grbit |= 0x10; + } + if ($font_shadow) { + $grbit |= 0x20; + } + + $data = pack( + "vvvvvCCCC", + // Fontsize (in twips) + $this->font->getSize() * 20, + $grbit, + // Colour + $icv, + // Font weight + self::mapBold($this->font->getBold()), + // Superscript/Subscript + $sss, + self::mapUnderline($this->font->getUnderline()), + $bFamily, + $bCharSet, + $reserved + ); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort($this->font->getName()); + + $length = strlen($data); + $header = pack("vv", $record, $length); + + return($header . $data); + } + + /** + * Map to BIFF5-BIFF8 codes for bold + * + * @param boolean $bold + * @return int + */ + private static function mapBold($bold) + { + if ($bold) { + return 0x2BC; // 700 = Bold font weight + } + return 0x190; // 400 = Normal font weight + } + + /** + * Map of BIFF2-BIFF8 codes for underline styles + * @static array of int + * + */ + private static $mapUnderline = array( + PHPExcel_Style_Font::UNDERLINE_NONE => 0x00, + PHPExcel_Style_Font::UNDERLINE_SINGLE => 0x01, + PHPExcel_Style_Font::UNDERLINE_DOUBLE => 0x02, + PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING => 0x21, + PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING => 0x22, + ); + + /** + * Map underline + * + * @param string + * @return int + */ + private static function mapUnderline($underline) + { + if (isset(self::$mapUnderline[$underline])) { + return self::$mapUnderline[$underline]; + } + return 0x00; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Parser.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Parser.php new file mode 100644 index 0000000..0cf1c1d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Parser.php @@ -0,0 +1,1531 @@ +<?php + +/** + * PHPExcel_Writer_Excel5_Parser + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +// Original file header of PEAR::Spreadsheet_Excel_Writer_Parser (used as the base for this class): +// ----------------------------------------------------------------------------------------- +// * Class for parsing Excel formulas +// * +// * License Information: +// * +// * Spreadsheet_Excel_Writer: A library for generating Excel Spreadsheets +// * Copyright (c) 2002-2003 Xavier Noguer xnoguer@rezebra.com +// * +// * 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 library 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 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 +// */ +class PHPExcel_Writer_Excel5_Parser +{ + /** Constants */ + // Sheet title in unquoted form + // Invalid sheet title characters cannot occur in the sheet title: + // *:/\?[] + // Moreover, there are valid sheet title characters that cannot occur in unquoted form (there may be more?) + // +-% '^&<>=,;#()"{} + const REGEX_SHEET_TITLE_UNQUOTED = '[^\*\:\/\\\\\?\[\]\+\-\% \\\'\^\&\<\>\=\,\;\#\(\)\"\{\}]+'; + + // Sheet title in quoted form (without surrounding quotes) + // Invalid sheet title characters cannot occur in the sheet title: + // *:/\?[] (usual invalid sheet title characters) + // Single quote is represented as a pair '' + const REGEX_SHEET_TITLE_QUOTED = '(([^\*\:\/\\\\\?\[\]\\\'])+|(\\\'\\\')+)+'; + + /** + * The index of the character we are currently looking at + * @var integer + */ + public $currentCharacter; + + /** + * The token we are working on. + * @var string + */ + public $currentToken; + + /** + * The formula to parse + * @var string + */ + private $formula; + + /** + * The character ahead of the current char + * @var string + */ + public $lookAhead; + + /** + * The parse tree to be generated + * @var string + */ + private $parseTree; + + /** + * Array of external sheets + * @var array + */ + private $externalSheets; + + /** + * Array of sheet references in the form of REF structures + * @var array + */ + public $references; + + /** + * The class constructor + * + */ + public function __construct() + { + $this->currentCharacter = 0; + $this->currentToken = ''; // The token we are working on. + $this->formula = ''; // The formula to parse. + $this->lookAhead = ''; // The character ahead of the current char. + $this->parseTree = ''; // The parse tree to be generated. + $this->initializeHashes(); // Initialize the hashes: ptg's and function's ptg's + $this->externalSheets = array(); + $this->references = array(); + } + + /** + * Initialize the ptg and function hashes. + * + * @access private + */ + private function initializeHashes() + { + // The Excel ptg indices + $this->ptg = array( + 'ptgExp' => 0x01, + 'ptgTbl' => 0x02, + 'ptgAdd' => 0x03, + 'ptgSub' => 0x04, + 'ptgMul' => 0x05, + 'ptgDiv' => 0x06, + 'ptgPower' => 0x07, + 'ptgConcat' => 0x08, + 'ptgLT' => 0x09, + 'ptgLE' => 0x0A, + 'ptgEQ' => 0x0B, + 'ptgGE' => 0x0C, + 'ptgGT' => 0x0D, + 'ptgNE' => 0x0E, + 'ptgIsect' => 0x0F, + 'ptgUnion' => 0x10, + 'ptgRange' => 0x11, + 'ptgUplus' => 0x12, + 'ptgUminus' => 0x13, + 'ptgPercent' => 0x14, + 'ptgParen' => 0x15, + 'ptgMissArg' => 0x16, + 'ptgStr' => 0x17, + 'ptgAttr' => 0x19, + 'ptgSheet' => 0x1A, + 'ptgEndSheet' => 0x1B, + 'ptgErr' => 0x1C, + 'ptgBool' => 0x1D, + 'ptgInt' => 0x1E, + 'ptgNum' => 0x1F, + 'ptgArray' => 0x20, + 'ptgFunc' => 0x21, + 'ptgFuncVar' => 0x22, + 'ptgName' => 0x23, + 'ptgRef' => 0x24, + 'ptgArea' => 0x25, + 'ptgMemArea' => 0x26, + 'ptgMemErr' => 0x27, + 'ptgMemNoMem' => 0x28, + 'ptgMemFunc' => 0x29, + 'ptgRefErr' => 0x2A, + 'ptgAreaErr' => 0x2B, + 'ptgRefN' => 0x2C, + 'ptgAreaN' => 0x2D, + 'ptgMemAreaN' => 0x2E, + 'ptgMemNoMemN' => 0x2F, + 'ptgNameX' => 0x39, + 'ptgRef3d' => 0x3A, + 'ptgArea3d' => 0x3B, + 'ptgRefErr3d' => 0x3C, + 'ptgAreaErr3d' => 0x3D, + 'ptgArrayV' => 0x40, + 'ptgFuncV' => 0x41, + 'ptgFuncVarV' => 0x42, + 'ptgNameV' => 0x43, + 'ptgRefV' => 0x44, + 'ptgAreaV' => 0x45, + 'ptgMemAreaV' => 0x46, + 'ptgMemErrV' => 0x47, + 'ptgMemNoMemV' => 0x48, + 'ptgMemFuncV' => 0x49, + 'ptgRefErrV' => 0x4A, + 'ptgAreaErrV' => 0x4B, + 'ptgRefNV' => 0x4C, + 'ptgAreaNV' => 0x4D, + 'ptgMemAreaNV' => 0x4E, + 'ptgMemNoMemN' => 0x4F, + 'ptgFuncCEV' => 0x58, + 'ptgNameXV' => 0x59, + 'ptgRef3dV' => 0x5A, + 'ptgArea3dV' => 0x5B, + 'ptgRefErr3dV' => 0x5C, + 'ptgAreaErr3d' => 0x5D, + 'ptgArrayA' => 0x60, + 'ptgFuncA' => 0x61, + 'ptgFuncVarA' => 0x62, + 'ptgNameA' => 0x63, + 'ptgRefA' => 0x64, + 'ptgAreaA' => 0x65, + 'ptgMemAreaA' => 0x66, + 'ptgMemErrA' => 0x67, + 'ptgMemNoMemA' => 0x68, + 'ptgMemFuncA' => 0x69, + 'ptgRefErrA' => 0x6A, + 'ptgAreaErrA' => 0x6B, + 'ptgRefNA' => 0x6C, + 'ptgAreaNA' => 0x6D, + 'ptgMemAreaNA' => 0x6E, + 'ptgMemNoMemN' => 0x6F, + 'ptgFuncCEA' => 0x78, + 'ptgNameXA' => 0x79, + 'ptgRef3dA' => 0x7A, + 'ptgArea3dA' => 0x7B, + 'ptgRefErr3dA' => 0x7C, + 'ptgAreaErr3d' => 0x7D + ); + + // Thanks to Michael Meeks and Gnumeric for the initial arg values. + // + // The following hash was generated by "function_locale.pl" in the distro. + // Refer to function_locale.pl for non-English function names. + // + // The array elements are as follow: + // ptg: The Excel function ptg code. + // args: The number of arguments that the function takes: + // >=0 is a fixed number of arguments. + // -1 is a variable number of arguments. + // class: The reference, value or array class of the function args. + // vol: The function is volatile. + // + $this->functions = array( + // function ptg args class vol + 'COUNT' => array( 0, -1, 0, 0 ), + 'IF' => array( 1, -1, 1, 0 ), + 'ISNA' => array( 2, 1, 1, 0 ), + 'ISERROR' => array( 3, 1, 1, 0 ), + 'SUM' => array( 4, -1, 0, 0 ), + 'AVERAGE' => array( 5, -1, 0, 0 ), + 'MIN' => array( 6, -1, 0, 0 ), + 'MAX' => array( 7, -1, 0, 0 ), + 'ROW' => array( 8, -1, 0, 0 ), + 'COLUMN' => array( 9, -1, 0, 0 ), + 'NA' => array( 10, 0, 0, 0 ), + 'NPV' => array( 11, -1, 1, 0 ), + 'STDEV' => array( 12, -1, 0, 0 ), + 'DOLLAR' => array( 13, -1, 1, 0 ), + 'FIXED' => array( 14, -1, 1, 0 ), + 'SIN' => array( 15, 1, 1, 0 ), + 'COS' => array( 16, 1, 1, 0 ), + 'TAN' => array( 17, 1, 1, 0 ), + 'ATAN' => array( 18, 1, 1, 0 ), + 'PI' => array( 19, 0, 1, 0 ), + 'SQRT' => array( 20, 1, 1, 0 ), + 'EXP' => array( 21, 1, 1, 0 ), + 'LN' => array( 22, 1, 1, 0 ), + 'LOG10' => array( 23, 1, 1, 0 ), + 'ABS' => array( 24, 1, 1, 0 ), + 'INT' => array( 25, 1, 1, 0 ), + 'SIGN' => array( 26, 1, 1, 0 ), + 'ROUND' => array( 27, 2, 1, 0 ), + 'LOOKUP' => array( 28, -1, 0, 0 ), + 'INDEX' => array( 29, -1, 0, 1 ), + 'REPT' => array( 30, 2, 1, 0 ), + 'MID' => array( 31, 3, 1, 0 ), + 'LEN' => array( 32, 1, 1, 0 ), + 'VALUE' => array( 33, 1, 1, 0 ), + 'TRUE' => array( 34, 0, 1, 0 ), + 'FALSE' => array( 35, 0, 1, 0 ), + 'AND' => array( 36, -1, 0, 0 ), + 'OR' => array( 37, -1, 0, 0 ), + 'NOT' => array( 38, 1, 1, 0 ), + 'MOD' => array( 39, 2, 1, 0 ), + 'DCOUNT' => array( 40, 3, 0, 0 ), + 'DSUM' => array( 41, 3, 0, 0 ), + 'DAVERAGE' => array( 42, 3, 0, 0 ), + 'DMIN' => array( 43, 3, 0, 0 ), + 'DMAX' => array( 44, 3, 0, 0 ), + 'DSTDEV' => array( 45, 3, 0, 0 ), + 'VAR' => array( 46, -1, 0, 0 ), + 'DVAR' => array( 47, 3, 0, 0 ), + 'TEXT' => array( 48, 2, 1, 0 ), + 'LINEST' => array( 49, -1, 0, 0 ), + 'TREND' => array( 50, -1, 0, 0 ), + 'LOGEST' => array( 51, -1, 0, 0 ), + 'GROWTH' => array( 52, -1, 0, 0 ), + 'PV' => array( 56, -1, 1, 0 ), + 'FV' => array( 57, -1, 1, 0 ), + 'NPER' => array( 58, -1, 1, 0 ), + 'PMT' => array( 59, -1, 1, 0 ), + 'RATE' => array( 60, -1, 1, 0 ), + 'MIRR' => array( 61, 3, 0, 0 ), + 'IRR' => array( 62, -1, 0, 0 ), + 'RAND' => array( 63, 0, 1, 1 ), + 'MATCH' => array( 64, -1, 0, 0 ), + 'DATE' => array( 65, 3, 1, 0 ), + 'TIME' => array( 66, 3, 1, 0 ), + 'DAY' => array( 67, 1, 1, 0 ), + 'MONTH' => array( 68, 1, 1, 0 ), + 'YEAR' => array( 69, 1, 1, 0 ), + 'WEEKDAY' => array( 70, -1, 1, 0 ), + 'HOUR' => array( 71, 1, 1, 0 ), + 'MINUTE' => array( 72, 1, 1, 0 ), + 'SECOND' => array( 73, 1, 1, 0 ), + 'NOW' => array( 74, 0, 1, 1 ), + 'AREAS' => array( 75, 1, 0, 1 ), + 'ROWS' => array( 76, 1, 0, 1 ), + 'COLUMNS' => array( 77, 1, 0, 1 ), + 'OFFSET' => array( 78, -1, 0, 1 ), + 'SEARCH' => array( 82, -1, 1, 0 ), + 'TRANSPOSE' => array( 83, 1, 1, 0 ), + 'TYPE' => array( 86, 1, 1, 0 ), + 'ATAN2' => array( 97, 2, 1, 0 ), + 'ASIN' => array( 98, 1, 1, 0 ), + 'ACOS' => array( 99, 1, 1, 0 ), + 'CHOOSE' => array( 100, -1, 1, 0 ), + 'HLOOKUP' => array( 101, -1, 0, 0 ), + 'VLOOKUP' => array( 102, -1, 0, 0 ), + 'ISREF' => array( 105, 1, 0, 0 ), + 'LOG' => array( 109, -1, 1, 0 ), + 'CHAR' => array( 111, 1, 1, 0 ), + 'LOWER' => array( 112, 1, 1, 0 ), + 'UPPER' => array( 113, 1, 1, 0 ), + 'PROPER' => array( 114, 1, 1, 0 ), + 'LEFT' => array( 115, -1, 1, 0 ), + 'RIGHT' => array( 116, -1, 1, 0 ), + 'EXACT' => array( 117, 2, 1, 0 ), + 'TRIM' => array( 118, 1, 1, 0 ), + 'REPLACE' => array( 119, 4, 1, 0 ), + 'SUBSTITUTE' => array( 120, -1, 1, 0 ), + 'CODE' => array( 121, 1, 1, 0 ), + 'FIND' => array( 124, -1, 1, 0 ), + 'CELL' => array( 125, -1, 0, 1 ), + 'ISERR' => array( 126, 1, 1, 0 ), + 'ISTEXT' => array( 127, 1, 1, 0 ), + 'ISNUMBER' => array( 128, 1, 1, 0 ), + 'ISBLANK' => array( 129, 1, 1, 0 ), + 'T' => array( 130, 1, 0, 0 ), + 'N' => array( 131, 1, 0, 0 ), + 'DATEVALUE' => array( 140, 1, 1, 0 ), + 'TIMEVALUE' => array( 141, 1, 1, 0 ), + 'SLN' => array( 142, 3, 1, 0 ), + 'SYD' => array( 143, 4, 1, 0 ), + 'DDB' => array( 144, -1, 1, 0 ), + 'INDIRECT' => array( 148, -1, 1, 1 ), + 'CALL' => array( 150, -1, 1, 0 ), + 'CLEAN' => array( 162, 1, 1, 0 ), + 'MDETERM' => array( 163, 1, 2, 0 ), + 'MINVERSE' => array( 164, 1, 2, 0 ), + 'MMULT' => array( 165, 2, 2, 0 ), + 'IPMT' => array( 167, -1, 1, 0 ), + 'PPMT' => array( 168, -1, 1, 0 ), + 'COUNTA' => array( 169, -1, 0, 0 ), + 'PRODUCT' => array( 183, -1, 0, 0 ), + 'FACT' => array( 184, 1, 1, 0 ), + 'DPRODUCT' => array( 189, 3, 0, 0 ), + 'ISNONTEXT' => array( 190, 1, 1, 0 ), + 'STDEVP' => array( 193, -1, 0, 0 ), + 'VARP' => array( 194, -1, 0, 0 ), + 'DSTDEVP' => array( 195, 3, 0, 0 ), + 'DVARP' => array( 196, 3, 0, 0 ), + 'TRUNC' => array( 197, -1, 1, 0 ), + 'ISLOGICAL' => array( 198, 1, 1, 0 ), + 'DCOUNTA' => array( 199, 3, 0, 0 ), + 'USDOLLAR' => array( 204, -1, 1, 0 ), + 'FINDB' => array( 205, -1, 1, 0 ), + 'SEARCHB' => array( 206, -1, 1, 0 ), + 'REPLACEB' => array( 207, 4, 1, 0 ), + 'LEFTB' => array( 208, -1, 1, 0 ), + 'RIGHTB' => array( 209, -1, 1, 0 ), + 'MIDB' => array( 210, 3, 1, 0 ), + 'LENB' => array( 211, 1, 1, 0 ), + 'ROUNDUP' => array( 212, 2, 1, 0 ), + 'ROUNDDOWN' => array( 213, 2, 1, 0 ), + 'ASC' => array( 214, 1, 1, 0 ), + 'DBCS' => array( 215, 1, 1, 0 ), + 'RANK' => array( 216, -1, 0, 0 ), + 'ADDRESS' => array( 219, -1, 1, 0 ), + 'DAYS360' => array( 220, -1, 1, 0 ), + 'TODAY' => array( 221, 0, 1, 1 ), + 'VDB' => array( 222, -1, 1, 0 ), + 'MEDIAN' => array( 227, -1, 0, 0 ), + 'SUMPRODUCT' => array( 228, -1, 2, 0 ), + 'SINH' => array( 229, 1, 1, 0 ), + 'COSH' => array( 230, 1, 1, 0 ), + 'TANH' => array( 231, 1, 1, 0 ), + 'ASINH' => array( 232, 1, 1, 0 ), + 'ACOSH' => array( 233, 1, 1, 0 ), + 'ATANH' => array( 234, 1, 1, 0 ), + 'DGET' => array( 235, 3, 0, 0 ), + 'INFO' => array( 244, 1, 1, 1 ), + 'DB' => array( 247, -1, 1, 0 ), + 'FREQUENCY' => array( 252, 2, 0, 0 ), + 'ERROR.TYPE' => array( 261, 1, 1, 0 ), + 'REGISTER.ID' => array( 267, -1, 1, 0 ), + 'AVEDEV' => array( 269, -1, 0, 0 ), + 'BETADIST' => array( 270, -1, 1, 0 ), + 'GAMMALN' => array( 271, 1, 1, 0 ), + 'BETAINV' => array( 272, -1, 1, 0 ), + 'BINOMDIST' => array( 273, 4, 1, 0 ), + 'CHIDIST' => array( 274, 2, 1, 0 ), + 'CHIINV' => array( 275, 2, 1, 0 ), + 'COMBIN' => array( 276, 2, 1, 0 ), + 'CONFIDENCE' => array( 277, 3, 1, 0 ), + 'CRITBINOM' => array( 278, 3, 1, 0 ), + 'EVEN' => array( 279, 1, 1, 0 ), + 'EXPONDIST' => array( 280, 3, 1, 0 ), + 'FDIST' => array( 281, 3, 1, 0 ), + 'FINV' => array( 282, 3, 1, 0 ), + 'FISHER' => array( 283, 1, 1, 0 ), + 'FISHERINV' => array( 284, 1, 1, 0 ), + 'FLOOR' => array( 285, 2, 1, 0 ), + 'GAMMADIST' => array( 286, 4, 1, 0 ), + 'GAMMAINV' => array( 287, 3, 1, 0 ), + 'CEILING' => array( 288, 2, 1, 0 ), + 'HYPGEOMDIST' => array( 289, 4, 1, 0 ), + 'LOGNORMDIST' => array( 290, 3, 1, 0 ), + 'LOGINV' => array( 291, 3, 1, 0 ), + 'NEGBINOMDIST' => array( 292, 3, 1, 0 ), + 'NORMDIST' => array( 293, 4, 1, 0 ), + 'NORMSDIST' => array( 294, 1, 1, 0 ), + 'NORMINV' => array( 295, 3, 1, 0 ), + 'NORMSINV' => array( 296, 1, 1, 0 ), + 'STANDARDIZE' => array( 297, 3, 1, 0 ), + 'ODD' => array( 298, 1, 1, 0 ), + 'PERMUT' => array( 299, 2, 1, 0 ), + 'POISSON' => array( 300, 3, 1, 0 ), + 'TDIST' => array( 301, 3, 1, 0 ), + 'WEIBULL' => array( 302, 4, 1, 0 ), + 'SUMXMY2' => array( 303, 2, 2, 0 ), + 'SUMX2MY2' => array( 304, 2, 2, 0 ), + 'SUMX2PY2' => array( 305, 2, 2, 0 ), + 'CHITEST' => array( 306, 2, 2, 0 ), + 'CORREL' => array( 307, 2, 2, 0 ), + 'COVAR' => array( 308, 2, 2, 0 ), + 'FORECAST' => array( 309, 3, 2, 0 ), + 'FTEST' => array( 310, 2, 2, 0 ), + 'INTERCEPT' => array( 311, 2, 2, 0 ), + 'PEARSON' => array( 312, 2, 2, 0 ), + 'RSQ' => array( 313, 2, 2, 0 ), + 'STEYX' => array( 314, 2, 2, 0 ), + 'SLOPE' => array( 315, 2, 2, 0 ), + 'TTEST' => array( 316, 4, 2, 0 ), + 'PROB' => array( 317, -1, 2, 0 ), + 'DEVSQ' => array( 318, -1, 0, 0 ), + 'GEOMEAN' => array( 319, -1, 0, 0 ), + 'HARMEAN' => array( 320, -1, 0, 0 ), + 'SUMSQ' => array( 321, -1, 0, 0 ), + 'KURT' => array( 322, -1, 0, 0 ), + 'SKEW' => array( 323, -1, 0, 0 ), + 'ZTEST' => array( 324, -1, 0, 0 ), + 'LARGE' => array( 325, 2, 0, 0 ), + 'SMALL' => array( 326, 2, 0, 0 ), + 'QUARTILE' => array( 327, 2, 0, 0 ), + 'PERCENTILE' => array( 328, 2, 0, 0 ), + 'PERCENTRANK' => array( 329, -1, 0, 0 ), + 'MODE' => array( 330, -1, 2, 0 ), + 'TRIMMEAN' => array( 331, 2, 0, 0 ), + 'TINV' => array( 332, 2, 1, 0 ), + 'CONCATENATE' => array( 336, -1, 1, 0 ), + 'POWER' => array( 337, 2, 1, 0 ), + 'RADIANS' => array( 342, 1, 1, 0 ), + 'DEGREES' => array( 343, 1, 1, 0 ), + 'SUBTOTAL' => array( 344, -1, 0, 0 ), + 'SUMIF' => array( 345, -1, 0, 0 ), + 'COUNTIF' => array( 346, 2, 0, 0 ), + 'COUNTBLANK' => array( 347, 1, 0, 0 ), + 'ISPMT' => array( 350, 4, 1, 0 ), + 'DATEDIF' => array( 351, 3, 1, 0 ), + 'DATESTRING' => array( 352, 1, 1, 0 ), + 'NUMBERSTRING' => array( 353, 2, 1, 0 ), + 'ROMAN' => array( 354, -1, 1, 0 ), + 'GETPIVOTDATA' => array( 358, -1, 0, 0 ), + 'HYPERLINK' => array( 359, -1, 1, 0 ), + 'PHONETIC' => array( 360, 1, 0, 0 ), + 'AVERAGEA' => array( 361, -1, 0, 0 ), + 'MAXA' => array( 362, -1, 0, 0 ), + 'MINA' => array( 363, -1, 0, 0 ), + 'STDEVPA' => array( 364, -1, 0, 0 ), + 'VARPA' => array( 365, -1, 0, 0 ), + 'STDEVA' => array( 366, -1, 0, 0 ), + 'VARA' => array( 367, -1, 0, 0 ), + 'BAHTTEXT' => array( 368, 1, 0, 0 ), + ); + } + + /** + * Convert a token to the proper ptg value. + * + * @access private + * @param mixed $token The token to convert. + * @return mixed the converted token on success + */ + private function convert($token) + { + if (preg_match("/\"([^\"]|\"\"){0,255}\"/", $token)) { + return $this->convertString($token); + + } elseif (is_numeric($token)) { + return $this->convertNumber($token); + + // match references like A1 or $A$1 + } elseif (preg_match('/^\$?([A-Ia-i]?[A-Za-z])\$?(\d+)$/', $token)) { + return $this->convertRef2d($token); + + // match external references like Sheet1!A1 or Sheet1:Sheet2!A1 or Sheet1!$A$1 or Sheet1:Sheet2!$A$1 + } elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?[A-Ia-i]?[A-Za-z]\\$?(\d+)$/u", $token)) { + return $this->convertRef3d($token); + + // match external references like 'Sheet1'!A1 or 'Sheet1:Sheet2'!A1 or 'Sheet1'!$A$1 or 'Sheet1:Sheet2'!$A$1 + } elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?[A-Ia-i]?[A-Za-z]\\$?(\d+)$/u", $token)) { + return $this->convertRef3d($token); + + // match ranges like A1:B2 or $A$1:$B$2 + } elseif (preg_match('/^(\$)?[A-Ia-i]?[A-Za-z](\$)?(\d+)\:(\$)?[A-Ia-i]?[A-Za-z](\$)?(\d+)$/', $token)) { + return $this->convertRange2d($token); + + // match external ranges like Sheet1!A1:B2 or Sheet1:Sheet2!A1:B2 or Sheet1!$A$1:$B$2 or Sheet1:Sheet2!$A$1:$B$2 + } elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?([A-Ia-i]?[A-Za-z])?\\$?(\d+)\:\\$?([A-Ia-i]?[A-Za-z])?\\$?(\d+)$/u", $token)) { + return $this->convertRange3d($token); + + // match external ranges like 'Sheet1'!A1:B2 or 'Sheet1:Sheet2'!A1:B2 or 'Sheet1'!$A$1:$B$2 or 'Sheet1:Sheet2'!$A$1:$B$2 + } elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?([A-Ia-i]?[A-Za-z])?\\$?(\d+)\:\\$?([A-Ia-i]?[A-Za-z])?\\$?(\d+)$/u", $token)) { + return $this->convertRange3d($token); + + // operators (including parentheses) + } elseif (isset($this->ptg[$token])) { + return pack("C", $this->ptg[$token]); + + // match error codes + } elseif (preg_match("/^#[A-Z0\/]{3,5}[!?]{1}$/", $token) or $token == '#N/A') { + return $this->convertError($token); + + // commented so argument number can be processed correctly. See toReversePolish(). + /*elseif (preg_match("/[A-Z0-9\xc0-\xdc\.]+/", $token)) + { + return($this->convertFunction($token, $this->_func_args)); + }*/ + + // if it's an argument, ignore the token (the argument remains) + } elseif ($token == 'arg') { + return ''; + } + + // TODO: use real error codes + throw new PHPExcel_Writer_Exception("Unknown token $token"); + } + + /** + * Convert a number token to ptgInt or ptgNum + * + * @access private + * @param mixed $num an integer or double for conversion to its ptg value + */ + private function convertNumber($num) + { + // Integer in the range 0..2**16-1 + if ((preg_match("/^\d+$/", $num)) and ($num <= 65535)) { + return pack("Cv", $this->ptg['ptgInt'], $num); + } else { // A float + if (PHPExcel_Writer_Excel5_BIFFwriter::getByteOrder()) { // if it's Big Endian + $num = strrev($num); + } + return pack("Cd", $this->ptg['ptgNum'], $num); + } + } + + /** + * Convert a string token to ptgStr + * + * @access private + * @param string $string A string for conversion to its ptg value. + * @return mixed the converted token on success + */ + private function convertString($string) + { + // chop away beggining and ending quotes + $string = substr($string, 1, strlen($string) - 2); + if (strlen($string) > 255) { + throw new PHPExcel_Writer_Exception("String is too long"); + } + + return pack('C', $this->ptg['ptgStr']) . PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort($string); + } + + /** + * Convert a function to a ptgFunc or ptgFuncVarV depending on the number of + * args that it takes. + * + * @access private + * @param string $token The name of the function for convertion to ptg value. + * @param integer $num_args The number of arguments the function receives. + * @return string The packed ptg for the function + */ + private function convertFunction($token, $num_args) + { + $args = $this->functions[$token][1]; +// $volatile = $this->functions[$token][3]; + + // Fixed number of args eg. TIME($i, $j, $k). + if ($args >= 0) { + return pack("Cv", $this->ptg['ptgFuncV'], $this->functions[$token][0]); + } + // Variable number of args eg. SUM($i, $j, $k, ..). + if ($args == -1) { + return pack("CCv", $this->ptg['ptgFuncVarV'], $num_args, $this->functions[$token][0]); + } + } + + /** + * Convert an Excel range such as A1:D4 to a ptgRefV. + * + * @access private + * @param string $range An Excel range in the A1:A2 + * @param int $class + */ + private function convertRange2d($range, $class = 0) + { + + // TODO: possible class value 0,1,2 check Formula.pm + // Split the range into 2 cell refs + if (preg_match('/^(\$)?([A-Ia-i]?[A-Za-z])(\$)?(\d+)\:(\$)?([A-Ia-i]?[A-Za-z])(\$)?(\d+)$/', $range)) { + list($cell1, $cell2) = explode(':', $range); + } else { + // TODO: use real error codes + throw new PHPExcel_Writer_Exception("Unknown range separator"); + } + + // Convert the cell references + list($row1, $col1) = $this->cellToPackedRowcol($cell1); + list($row2, $col2) = $this->cellToPackedRowcol($cell2); + + // The ptg value depends on the class of the ptg. + if ($class == 0) { + $ptgArea = pack("C", $this->ptg['ptgArea']); + } elseif ($class == 1) { + $ptgArea = pack("C", $this->ptg['ptgAreaV']); + } elseif ($class == 2) { + $ptgArea = pack("C", $this->ptg['ptgAreaA']); + } else { + // TODO: use real error codes + throw new PHPExcel_Writer_Exception("Unknown class $class"); + } + return $ptgArea . $row1 . $row2 . $col1. $col2; + } + + /** + * Convert an Excel 3d range such as "Sheet1!A1:D4" or "Sheet1:Sheet2!A1:D4" to + * a ptgArea3d. + * + * @access private + * @param string $token An Excel range in the Sheet1!A1:A2 format. + * @return mixed The packed ptgArea3d token on success. + */ + private function convertRange3d($token) + { +// $class = 0; // formulas like Sheet1!$A$1:$A$2 in list type data validation need this class (0x3B) + + // Split the ref at the ! symbol + list($ext_ref, $range) = explode('!', $token); + + // Convert the external reference part (different for BIFF8) + $ext_ref = $this->getRefIndex($ext_ref); + + // Split the range into 2 cell refs + list($cell1, $cell2) = explode(':', $range); + + // Convert the cell references + if (preg_match("/^(\\$)?[A-Ia-i]?[A-Za-z](\\$)?(\d+)$/", $cell1)) { + list($row1, $col1) = $this->cellToPackedRowcol($cell1); + list($row2, $col2) = $this->cellToPackedRowcol($cell2); + } else { // It's a rows range (like 26:27) + list($row1, $col1, $row2, $col2) = $this->rangeToPackedRange($cell1.':'.$cell2); + } + + // The ptg value depends on the class of the ptg. +// if ($class == 0) { + $ptgArea = pack("C", $this->ptg['ptgArea3d']); +// } elseif ($class == 1) { +// $ptgArea = pack("C", $this->ptg['ptgArea3dV']); +// } elseif ($class == 2) { +// $ptgArea = pack("C", $this->ptg['ptgArea3dA']); +// } else { +// throw new PHPExcel_Writer_Exception("Unknown class $class"); +// } + + return $ptgArea . $ext_ref . $row1 . $row2 . $col1. $col2; + } + + /** + * Convert an Excel reference such as A1, $B2, C$3 or $D$4 to a ptgRefV. + * + * @access private + * @param string $cell An Excel cell reference + * @return string The cell in packed() format with the corresponding ptg + */ + private function convertRef2d($cell) + { +// $class = 2; // as far as I know, this is magick. + + // Convert the cell reference + $cell_array = $this->cellToPackedRowcol($cell); + list($row, $col) = $cell_array; + + // The ptg value depends on the class of the ptg. +// if ($class == 0) { +// $ptgRef = pack("C", $this->ptg['ptgRef']); +// } elseif ($class == 1) { +// $ptgRef = pack("C", $this->ptg['ptgRefV']); +// } elseif ($class == 2) { + $ptgRef = pack("C", $this->ptg['ptgRefA']); +// } else { +// // TODO: use real error codes +// throw new PHPExcel_Writer_Exception("Unknown class $class"); +// } + return $ptgRef.$row.$col; + } + + /** + * Convert an Excel 3d reference such as "Sheet1!A1" or "Sheet1:Sheet2!A1" to a + * ptgRef3d. + * + * @access private + * @param string $cell An Excel cell reference + * @return mixed The packed ptgRef3d token on success. + */ + private function convertRef3d($cell) + { +// $class = 2; // as far as I know, this is magick. + + // Split the ref at the ! symbol + list($ext_ref, $cell) = explode('!', $cell); + + // Convert the external reference part (different for BIFF8) + $ext_ref = $this->getRefIndex($ext_ref); + + // Convert the cell reference part + list($row, $col) = $this->cellToPackedRowcol($cell); + + // The ptg value depends on the class of the ptg. +// if ($class == 0) { +// $ptgRef = pack("C", $this->ptg['ptgRef3d']); +// } elseif ($class == 1) { +// $ptgRef = pack("C", $this->ptg['ptgRef3dV']); +// } elseif ($class == 2) { + $ptgRef = pack("C", $this->ptg['ptgRef3dA']); +// } else { +// throw new PHPExcel_Writer_Exception("Unknown class $class"); +// } + + return $ptgRef . $ext_ref. $row . $col; + } + + /** + * Convert an error code to a ptgErr + * + * @access private + * @param string $errorCode The error code for conversion to its ptg value + * @return string The error code ptgErr + */ + private function convertError($errorCode) + { + switch ($errorCode) { + case '#NULL!': + return pack("C", 0x00); + case '#DIV/0!': + return pack("C", 0x07); + case '#VALUE!': + return pack("C", 0x0F); + case '#REF!': + return pack("C", 0x17); + case '#NAME?': + return pack("C", 0x1D); + case '#NUM!': + return pack("C", 0x24); + case '#N/A': + return pack("C", 0x2A); + } + return pack("C", 0xFF); + } + + /** + * Convert the sheet name part of an external reference, for example "Sheet1" or + * "Sheet1:Sheet2", to a packed structure. + * + * @access private + * @param string $ext_ref The name of the external reference + * @return string The reference index in packed() format + */ + private function packExtRef($ext_ref) + { + $ext_ref = preg_replace("/^'/", '', $ext_ref); // Remove leading ' if any. + $ext_ref = preg_replace("/'$/", '', $ext_ref); // Remove trailing ' if any. + + // Check if there is a sheet range eg., Sheet1:Sheet2. + if (preg_match("/:/", $ext_ref)) { + list($sheet_name1, $sheet_name2) = explode(':', $ext_ref); + + $sheet1 = $this->getSheetIndex($sheet_name1); + if ($sheet1 == -1) { + throw new PHPExcel_Writer_Exception("Unknown sheet name $sheet_name1 in formula"); + } + $sheet2 = $this->getSheetIndex($sheet_name2); + if ($sheet2 == -1) { + throw new PHPExcel_Writer_Exception("Unknown sheet name $sheet_name2 in formula"); + } + + // Reverse max and min sheet numbers if necessary + if ($sheet1 > $sheet2) { + list($sheet1, $sheet2) = array($sheet2, $sheet1); + } + } else { // Single sheet name only. + $sheet1 = $this->getSheetIndex($ext_ref); + if ($sheet1 == -1) { + throw new PHPExcel_Writer_Exception("Unknown sheet name $ext_ref in formula"); + } + $sheet2 = $sheet1; + } + + // References are stored relative to 0xFFFF. + $offset = -1 - $sheet1; + + return pack('vdvv', $offset, 0x00, $sheet1, $sheet2); + } + + /** + * Look up the REF index that corresponds to an external sheet name + * (or range). If it doesn't exist yet add it to the workbook's references + * array. It assumes all sheet names given must exist. + * + * @access private + * @param string $ext_ref The name of the external reference + * @return mixed The reference index in packed() format on success + */ + private function getRefIndex($ext_ref) + { + $ext_ref = preg_replace("/^'/", '', $ext_ref); // Remove leading ' if any. + $ext_ref = preg_replace("/'$/", '', $ext_ref); // Remove trailing ' if any. + $ext_ref = str_replace('\'\'', '\'', $ext_ref); // Replace escaped '' with ' + + // Check if there is a sheet range eg., Sheet1:Sheet2. + if (preg_match("/:/", $ext_ref)) { + list($sheet_name1, $sheet_name2) = explode(':', $ext_ref); + + $sheet1 = $this->getSheetIndex($sheet_name1); + if ($sheet1 == -1) { + throw new PHPExcel_Writer_Exception("Unknown sheet name $sheet_name1 in formula"); + } + $sheet2 = $this->getSheetIndex($sheet_name2); + if ($sheet2 == -1) { + throw new PHPExcel_Writer_Exception("Unknown sheet name $sheet_name2 in formula"); + } + + // Reverse max and min sheet numbers if necessary + if ($sheet1 > $sheet2) { + list($sheet1, $sheet2) = array($sheet2, $sheet1); + } + } else { // Single sheet name only. + $sheet1 = $this->getSheetIndex($ext_ref); + if ($sheet1 == -1) { + throw new PHPExcel_Writer_Exception("Unknown sheet name $ext_ref in formula"); + } + $sheet2 = $sheet1; + } + + // assume all references belong to this document + $supbook_index = 0x00; + $ref = pack('vvv', $supbook_index, $sheet1, $sheet2); + $totalreferences = count($this->references); + $index = -1; + for ($i = 0; $i < $totalreferences; ++$i) { + if ($ref == $this->references[$i]) { + $index = $i; + break; + } + } + // if REF was not found add it to references array + if ($index == -1) { + $this->references[$totalreferences] = $ref; + $index = $totalreferences; + } + + return pack('v', $index); + } + + /** + * Look up the index that corresponds to an external sheet name. The hash of + * sheet names is updated by the addworksheet() method of the + * PHPExcel_Writer_Excel5_Workbook class. + * + * @access private + * @param string $sheet_name Sheet name + * @return integer The sheet index, -1 if the sheet was not found + */ + private function getSheetIndex($sheet_name) + { + if (!isset($this->externalSheets[$sheet_name])) { + return -1; + } else { + return $this->externalSheets[$sheet_name]; + } + } + + /** + * This method is used to update the array of sheet names. It is + * called by the addWorksheet() method of the + * PHPExcel_Writer_Excel5_Workbook class. + * + * @access public + * @see PHPExcel_Writer_Excel5_Workbook::addWorksheet() + * @param string $name The name of the worksheet being added + * @param integer $index The index of the worksheet being added + */ + public function setExtSheet($name, $index) + { + $this->externalSheets[$name] = $index; + } + + /** + * pack() row and column into the required 3 or 4 byte format. + * + * @access private + * @param string $cell The Excel cell reference to be packed + * @return array Array containing the row and column in packed() format + */ + private function cellToPackedRowcol($cell) + { + $cell = strtoupper($cell); + list($row, $col, $row_rel, $col_rel) = $this->cellToRowcol($cell); + if ($col >= 256) { + throw new PHPExcel_Writer_Exception("Column in: $cell greater than 255"); + } + if ($row >= 65536) { + throw new PHPExcel_Writer_Exception("Row in: $cell greater than 65536 "); + } + + // Set the high bits to indicate if row or col are relative. + $col |= $col_rel << 14; + $col |= $row_rel << 15; + $col = pack('v', $col); + + $row = pack('v', $row); + + return array($row, $col); + } + + /** + * pack() row range into the required 3 or 4 byte format. + * Just using maximum col/rows, which is probably not the correct solution + * + * @access private + * @param string $range The Excel range to be packed + * @return array Array containing (row1,col1,row2,col2) in packed() format + */ + private function rangeToPackedRange($range) + { + preg_match('/(\$)?(\d+)\:(\$)?(\d+)/', $range, $match); + // return absolute rows if there is a $ in the ref + $row1_rel = empty($match[1]) ? 1 : 0; + $row1 = $match[2]; + $row2_rel = empty($match[3]) ? 1 : 0; + $row2 = $match[4]; + // Convert 1-index to zero-index + --$row1; + --$row2; + // Trick poor inocent Excel + $col1 = 0; + $col2 = 65535; // FIXME: maximum possible value for Excel 5 (change this!!!) + + // FIXME: this changes for BIFF8 + if (($row1 >= 65536) or ($row2 >= 65536)) { + throw new PHPExcel_Writer_Exception("Row in: $range greater than 65536 "); + } + + // Set the high bits to indicate if rows are relative. + $col1 |= $row1_rel << 15; + $col2 |= $row2_rel << 15; + $col1 = pack('v', $col1); + $col2 = pack('v', $col2); + + $row1 = pack('v', $row1); + $row2 = pack('v', $row2); + + return array($row1, $col1, $row2, $col2); + } + + /** + * Convert an Excel cell reference such as A1 or $B2 or C$3 or $D$4 to a zero + * indexed row and column number. Also returns two (0,1) values to indicate + * whether the row or column are relative references. + * + * @access private + * @param string $cell The Excel cell reference in A1 format. + * @return array + */ + private function cellToRowcol($cell) + { + preg_match('/(\$)?([A-I]?[A-Z])(\$)?(\d+)/', $cell, $match); + // return absolute column if there is a $ in the ref + $col_rel = empty($match[1]) ? 1 : 0; + $col_ref = $match[2]; + $row_rel = empty($match[3]) ? 1 : 0; + $row = $match[4]; + + // Convert base26 column string to a number. + $expn = strlen($col_ref) - 1; + $col = 0; + $col_ref_length = strlen($col_ref); + for ($i = 0; $i < $col_ref_length; ++$i) { + $col += (ord($col_ref{$i}) - 64) * pow(26, $expn); + --$expn; + } + + // Convert 1-index to zero-index + --$row; + --$col; + + return array($row, $col, $row_rel, $col_rel); + } + + /** + * Advance to the next valid token. + * + * @access private + */ + private function advance() + { + $i = $this->currentCharacter; + $formula_length = strlen($this->formula); + // eat up white spaces + if ($i < $formula_length) { + while ($this->formula{$i} == " ") { + ++$i; + } + + if ($i < ($formula_length - 1)) { + $this->lookAhead = $this->formula{$i+1}; + } + $token = ''; + } + + while ($i < $formula_length) { + $token .= $this->formula{$i}; + + if ($i < ($formula_length - 1)) { + $this->lookAhead = $this->formula{$i+1}; + } else { + $this->lookAhead = ''; + } + + if ($this->match($token) != '') { + //if ($i < strlen($this->formula) - 1) { + // $this->lookAhead = $this->formula{$i+1}; + //} + $this->currentCharacter = $i + 1; + $this->currentToken = $token; + return 1; + } + + if ($i < ($formula_length - 2)) { + $this->lookAhead = $this->formula{$i+2}; + } else { // if we run out of characters lookAhead becomes empty + $this->lookAhead = ''; + } + ++$i; + } + //die("Lexical error ".$this->currentCharacter); + } + + /** + * Checks if it's a valid token. + * + * @access private + * @param mixed $token The token to check. + * @return mixed The checked token or false on failure + */ + private function match($token) + { + switch ($token) { + case "+": + case "-": + case "*": + case "/": + case "(": + case ")": + case ",": + case ";": + case ">=": + case "<=": + case "=": + case "<>": + case "^": + case "&": + case "%": + return $token; + break; + case ">": + if ($this->lookAhead == '=') { // it's a GE token + break; + } + return $token; + break; + case "<": + // it's a LE or a NE token + if (($this->lookAhead == '=') or ($this->lookAhead == '>')) { + break; + } + return $token; + break; + default: + // if it's a reference A1 or $A$1 or $A1 or A$1 + if (preg_match('/^\$?[A-Ia-i]?[A-Za-z]\$?[0-9]+$/', $token) and !preg_match("/[0-9]/", $this->lookAhead) and ($this->lookAhead != ':') and ($this->lookAhead != '.') and ($this->lookAhead != '!')) { + return $token; + } elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?[A-Ia-i]?[A-Za-z]\\$?[0-9]+$/u", $token) and !preg_match("/[0-9]/", $this->lookAhead) and ($this->lookAhead != ':') and ($this->lookAhead != '.')) { + // If it's an external reference (Sheet1!A1 or Sheet1:Sheet2!A1 or Sheet1!$A$1 or Sheet1:Sheet2!$A$1) + return $token; + } elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?[A-Ia-i]?[A-Za-z]\\$?[0-9]+$/u", $token) and !preg_match("/[0-9]/", $this->lookAhead) and ($this->lookAhead != ':') and ($this->lookAhead != '.')) { + // If it's an external reference ('Sheet1'!A1 or 'Sheet1:Sheet2'!A1 or 'Sheet1'!$A$1 or 'Sheet1:Sheet2'!$A$1) + return $token; + } elseif (preg_match('/^(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+:(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+$/', $token) && !preg_match("/[0-9]/", $this->lookAhead)) { + // if it's a range A1:A2 or $A$1:$A$2 + return $token; + } elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+:\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+$/u", $token) and !preg_match("/[0-9]/", $this->lookAhead)) { + // If it's an external range like Sheet1!A1:B2 or Sheet1:Sheet2!A1:B2 or Sheet1!$A$1:$B$2 or Sheet1:Sheet2!$A$1:$B$2 + return $token; + } elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+:\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+$/u", $token) and !preg_match("/[0-9]/", $this->lookAhead)) { + // If it's an external range like 'Sheet1'!A1:B2 or 'Sheet1:Sheet2'!A1:B2 or 'Sheet1'!$A$1:$B$2 or 'Sheet1:Sheet2'!$A$1:$B$2 + return $token; + } elseif (is_numeric($token) and (!is_numeric($token.$this->lookAhead) or ($this->lookAhead == '')) and ($this->lookAhead != '!') and ($this->lookAhead != ':')) { + // If it's a number (check that it's not a sheet name or range) + return $token; + } elseif (preg_match("/\"([^\"]|\"\"){0,255}\"/", $token) and $this->lookAhead != '"' and (substr_count($token, '"')%2 == 0)) { + // If it's a string (of maximum 255 characters) + return $token; + } elseif (preg_match("/^#[A-Z0\/]{3,5}[!?]{1}$/", $token) or $token == '#N/A') { + // If it's an error code + return $token; + } elseif (preg_match("/^[A-Z0-9\xc0-\xdc\.]+$/i", $token) and ($this->lookAhead == "(")) { + // if it's a function call + return $token; + } elseif (substr($token, -1) == ')') { + // It's an argument of some description (e.g. a named range), + // precise nature yet to be determined + return $token; + } + return ''; + } + } + + /** + * The parsing method. It parses a formula. + * + * @access public + * @param string $formula The formula to parse, without the initial equal + * sign (=). + * @return mixed true on success + */ + public function parse($formula) + { + $this->currentCharacter = 0; + $this->formula = $formula; + $this->lookAhead = isset($formula{1}) ? $formula{1} : ''; + $this->advance(); + $this->parseTree = $this->condition(); + return true; + } + + /** + * It parses a condition. It assumes the following rule: + * Cond -> Expr [(">" | "<") Expr] + * + * @access private + * @return mixed The parsed ptg'd tree on success + */ + private function condition() + { + $result = $this->expression(); + if ($this->currentToken == "<") { + $this->advance(); + $result2 = $this->expression(); + $result = $this->createTree('ptgLT', $result, $result2); + } elseif ($this->currentToken == ">") { + $this->advance(); + $result2 = $this->expression(); + $result = $this->createTree('ptgGT', $result, $result2); + } elseif ($this->currentToken == "<=") { + $this->advance(); + $result2 = $this->expression(); + $result = $this->createTree('ptgLE', $result, $result2); + } elseif ($this->currentToken == ">=") { + $this->advance(); + $result2 = $this->expression(); + $result = $this->createTree('ptgGE', $result, $result2); + } elseif ($this->currentToken == "=") { + $this->advance(); + $result2 = $this->expression(); + $result = $this->createTree('ptgEQ', $result, $result2); + } elseif ($this->currentToken == "<>") { + $this->advance(); + $result2 = $this->expression(); + $result = $this->createTree('ptgNE', $result, $result2); + } elseif ($this->currentToken == "&") { + $this->advance(); + $result2 = $this->expression(); + $result = $this->createTree('ptgConcat', $result, $result2); + } + return $result; + } + + /** + * It parses a expression. It assumes the following rule: + * Expr -> Term [("+" | "-") Term] + * -> "string" + * -> "-" Term : Negative value + * -> "+" Term : Positive value + * -> Error code + * + * @access private + * @return mixed The parsed ptg'd tree on success + */ + private function expression() + { + // If it's a string return a string node + if (preg_match("/\"([^\"]|\"\"){0,255}\"/", $this->currentToken)) { + $tmp = str_replace('""', '"', $this->currentToken); + if (($tmp == '"') || ($tmp == '')) { + // Trap for "" that has been used for an empty string + $tmp = '""'; + } + $result = $this->createTree($tmp, '', ''); + $this->advance(); + return $result; + // If it's an error code + } elseif (preg_match("/^#[A-Z0\/]{3,5}[!?]{1}$/", $this->currentToken) or $this->currentToken == '#N/A') { + $result = $this->createTree($this->currentToken, 'ptgErr', ''); + $this->advance(); + return $result; + // If it's a negative value + } elseif ($this->currentToken == "-") { + // catch "-" Term + $this->advance(); + $result2 = $this->expression(); + $result = $this->createTree('ptgUminus', $result2, ''); + return $result; + // If it's a positive value + } elseif ($this->currentToken == "+") { + // catch "+" Term + $this->advance(); + $result2 = $this->expression(); + $result = $this->createTree('ptgUplus', $result2, ''); + return $result; + } + $result = $this->term(); + while (($this->currentToken == "+") or + ($this->currentToken == "-") or + ($this->currentToken == "^")) { + /**/ + if ($this->currentToken == "+") { + $this->advance(); + $result2 = $this->term(); + $result = $this->createTree('ptgAdd', $result, $result2); + } elseif ($this->currentToken == "-") { + $this->advance(); + $result2 = $this->term(); + $result = $this->createTree('ptgSub', $result, $result2); + } else { + $this->advance(); + $result2 = $this->term(); + $result = $this->createTree('ptgPower', $result, $result2); + } + } + return $result; + } + + /** + * This function just introduces a ptgParen element in the tree, so that Excel + * doesn't get confused when working with a parenthesized formula afterwards. + * + * @access private + * @see fact() + * @return array The parsed ptg'd tree + */ + private function parenthesizedExpression() + { + $result = $this->createTree('ptgParen', $this->expression(), ''); + return $result; + } + + /** + * It parses a term. It assumes the following rule: + * Term -> Fact [("*" | "/") Fact] + * + * @access private + * @return mixed The parsed ptg'd tree on success + */ + private function term() + { + $result = $this->fact(); + while (($this->currentToken == "*") or + ($this->currentToken == "/")) { + /**/ + if ($this->currentToken == "*") { + $this->advance(); + $result2 = $this->fact(); + $result = $this->createTree('ptgMul', $result, $result2); + } else { + $this->advance(); + $result2 = $this->fact(); + $result = $this->createTree('ptgDiv', $result, $result2); + } + } + return $result; + } + + /** + * It parses a factor. It assumes the following rule: + * Fact -> ( Expr ) + * | CellRef + * | CellRange + * | Number + * | Function + * + * @access private + * @return mixed The parsed ptg'd tree on success + */ + private function fact() + { + if ($this->currentToken == "(") { + $this->advance(); // eat the "(" + $result = $this->parenthesizedExpression(); + if ($this->currentToken != ")") { + throw new PHPExcel_Writer_Exception("')' token expected."); + } + $this->advance(); // eat the ")" + return $result; + } + // if it's a reference + if (preg_match('/^\$?[A-Ia-i]?[A-Za-z]\$?[0-9]+$/', $this->currentToken)) { + $result = $this->createTree($this->currentToken, '', ''); + $this->advance(); + return $result; + } elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?[A-Ia-i]?[A-Za-z]\\$?[0-9]+$/u", $this->currentToken)) { + // If it's an external reference (Sheet1!A1 or Sheet1:Sheet2!A1 or Sheet1!$A$1 or Sheet1:Sheet2!$A$1) + $result = $this->createTree($this->currentToken, '', ''); + $this->advance(); + return $result; + } elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?[A-Ia-i]?[A-Za-z]\\$?[0-9]+$/u", $this->currentToken)) { + // If it's an external reference ('Sheet1'!A1 or 'Sheet1:Sheet2'!A1 or 'Sheet1'!$A$1 or 'Sheet1:Sheet2'!$A$1) + $result = $this->createTree($this->currentToken, '', ''); + $this->advance(); + return $result; + } elseif (preg_match('/^(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+:(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+$/', $this->currentToken) or + preg_match('/^(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+\.\.(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+$/', $this->currentToken)) { + // if it's a range A1:B2 or $A$1:$B$2 + // must be an error? + $result = $this->createTree($this->currentToken, '', ''); + $this->advance(); + return $result; + } elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+:\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+$/u", $this->currentToken)) { + // If it's an external range (Sheet1!A1:B2 or Sheet1:Sheet2!A1:B2 or Sheet1!$A$1:$B$2 or Sheet1:Sheet2!$A$1:$B$2) + // must be an error? + //$result = $this->currentToken; + $result = $this->createTree($this->currentToken, '', ''); + $this->advance(); + return $result; + } elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+:\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+$/u", $this->currentToken)) { + // If it's an external range ('Sheet1'!A1:B2 or 'Sheet1'!A1:B2 or 'Sheet1'!$A$1:$B$2 or 'Sheet1'!$A$1:$B$2) + // must be an error? + //$result = $this->currentToken; + $result = $this->createTree($this->currentToken, '', ''); + $this->advance(); + return $result; + } elseif (is_numeric($this->currentToken)) { + // If it's a number or a percent + if ($this->lookAhead == '%') { + $result = $this->createTree('ptgPercent', $this->currentToken, ''); + $this->advance(); // Skip the percentage operator once we've pre-built that tree + } else { + $result = $this->createTree($this->currentToken, '', ''); + } + $this->advance(); + return $result; + } elseif (preg_match("/^[A-Z0-9\xc0-\xdc\.]+$/i", $this->currentToken)) { + // if it's a function call + $result = $this->func(); + return $result; + } + throw new PHPExcel_Writer_Exception("Syntax error: ".$this->currentToken.", lookahead: ".$this->lookAhead.", current char: ".$this->currentCharacter); + } + + /** + * It parses a function call. It assumes the following rule: + * Func -> ( Expr [,Expr]* ) + * + * @access private + * @return mixed The parsed ptg'd tree on success + */ + private function func() + { + $num_args = 0; // number of arguments received + $function = strtoupper($this->currentToken); + $result = ''; // initialize result + $this->advance(); + $this->advance(); // eat the "(" + while ($this->currentToken != ')') { + /**/ + if ($num_args > 0) { + if ($this->currentToken == "," || $this->currentToken == ";") { + $this->advance(); // eat the "," or ";" + } else { + throw new PHPExcel_Writer_Exception("Syntax error: comma expected in function $function, arg #{$num_args}"); + } + $result2 = $this->condition(); + $result = $this->createTree('arg', $result, $result2); + } else { // first argument + $result2 = $this->condition(); + $result = $this->createTree('arg', '', $result2); + } + ++$num_args; + } + if (!isset($this->functions[$function])) { + throw new PHPExcel_Writer_Exception("Function $function() doesn't exist"); + } + $args = $this->functions[$function][1]; + // If fixed number of args eg. TIME($i, $j, $k). Check that the number of args is valid. + if (($args >= 0) and ($args != $num_args)) { + throw new PHPExcel_Writer_Exception("Incorrect number of arguments in function $function() "); + } + + $result = $this->createTree($function, $result, $num_args); + $this->advance(); // eat the ")" + return $result; + } + + /** + * Creates a tree. In fact an array which may have one or two arrays (sub-trees) + * as elements. + * + * @access private + * @param mixed $value The value of this node. + * @param mixed $left The left array (sub-tree) or a final node. + * @param mixed $right The right array (sub-tree) or a final node. + * @return array A tree + */ + private function createTree($value, $left, $right) + { + return array('value' => $value, 'left' => $left, 'right' => $right); + } + + /** + * Builds a string containing the tree in reverse polish notation (What you + * would use in a HP calculator stack). + * The following tree: + * + * + + * / \ + * 2 3 + * + * produces: "23+" + * + * The following tree: + * + * + + * / \ + * 3 * + * / \ + * 6 A1 + * + * produces: "36A1*+" + * + * In fact all operands, functions, references, etc... are written as ptg's + * + * @access public + * @param array $tree The optional tree to convert. + * @return string The tree in reverse polish notation + */ + public function toReversePolish($tree = array()) + { + $polish = ""; // the string we are going to return + if (empty($tree)) { // If it's the first call use parseTree + $tree = $this->parseTree; + } + + if (is_array($tree['left'])) { + $converted_tree = $this->toReversePolish($tree['left']); + $polish .= $converted_tree; + } elseif ($tree['left'] != '') { // It's a final node + $converted_tree = $this->convert($tree['left']); + $polish .= $converted_tree; + } + if (is_array($tree['right'])) { + $converted_tree = $this->toReversePolish($tree['right']); + $polish .= $converted_tree; + } elseif ($tree['right'] != '') { // It's a final node + $converted_tree = $this->convert($tree['right']); + $polish .= $converted_tree; + } + // if it's a function convert it here (so we can set it's arguments) + if (preg_match("/^[A-Z0-9\xc0-\xdc\.]+$/", $tree['value']) and + !preg_match('/^([A-Ia-i]?[A-Za-z])(\d+)$/', $tree['value']) and + !preg_match("/^[A-Ia-i]?[A-Za-z](\d+)\.\.[A-Ia-i]?[A-Za-z](\d+)$/", $tree['value']) and + !is_numeric($tree['value']) and + !isset($this->ptg[$tree['value']])) { + // left subtree for a function is always an array. + if ($tree['left'] != '') { + $left_tree = $this->toReversePolish($tree['left']); + } else { + $left_tree = ''; + } + // add it's left subtree and return. + return $left_tree.$this->convertFunction($tree['value'], $tree['right']); + } else { + $converted_tree = $this->convert($tree['value']); + } + $polish .= $converted_tree; + return $polish; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Workbook.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Workbook.php new file mode 100644 index 0000000..8b06843 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Workbook.php @@ -0,0 +1,1444 @@ +<?php + +/** + * PHPExcel_Writer_Excel5_Workbook + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +// Original file header of PEAR::Spreadsheet_Excel_Writer_Workbook (used as the base for this class): +// ----------------------------------------------------------------------------------------- +// /* +// * Module written/ported by Xavier Noguer <xnoguer@rezebra.com> +// * +// * The majority of this is _NOT_ my code. I simply ported it from the +// * PERL Spreadsheet::WriteExcel module. +// * +// * The author of the Spreadsheet::WriteExcel module is John McNamara +// * <jmcnamara@cpan.org> +// * +// * I _DO_ maintain this code, and John McNamara has nothing to do with the +// * porting of this code to PHP. Any questions directly related to this +// * class library should be directed to me. +// * +// * License Information: +// * +// * Spreadsheet_Excel_Writer: A library for generating Excel Spreadsheets +// * Copyright (c) 2002-2003 Xavier Noguer xnoguer@rezebra.com +// * +// * 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 library 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 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 +// */ +class PHPExcel_Writer_Excel5_Workbook extends PHPExcel_Writer_Excel5_BIFFwriter +{ + /** + * Formula parser + * + * @var PHPExcel_Writer_Excel5_Parser + */ + private $parser; + + /** + * The BIFF file size for the workbook. + * @var integer + * @see calcSheetOffsets() + */ + private $biffSize; + + /** + * XF Writers + * @var PHPExcel_Writer_Excel5_Xf[] + */ + private $xfWriters = array(); + + /** + * Array containing the colour palette + * @var array + */ + private $palette; + + /** + * The codepage indicates the text encoding used for strings + * @var integer + */ + private $codepage; + + /** + * The country code used for localization + * @var integer + */ + private $countryCode; + + /** + * Workbook + * @var PHPExcel + */ + private $phpExcel; + + /** + * Fonts writers + * + * @var PHPExcel_Writer_Excel5_Font[] + */ + private $fontWriters = array(); + + /** + * Added fonts. Maps from font's hash => index in workbook + * + * @var array + */ + private $addedFonts = array(); + + /** + * Shared number formats + * + * @var array + */ + private $numberFormats = array(); + + /** + * Added number formats. Maps from numberFormat's hash => index in workbook + * + * @var array + */ + private $addedNumberFormats = array(); + + /** + * Sizes of the binary worksheet streams + * + * @var array + */ + private $worksheetSizes = array(); + + /** + * Offsets of the binary worksheet streams relative to the start of the global workbook stream + * + * @var array + */ + private $worksheetOffsets = array(); + + /** + * Total number of shared strings in workbook + * + * @var int + */ + private $stringTotal; + + /** + * Number of unique shared strings in workbook + * + * @var int + */ + private $stringUnique; + + /** + * Array of unique shared strings in workbook + * + * @var array + */ + private $stringTable; + + /** + * Color cache + */ + private $colors; + + /** + * Escher object corresponding to MSODRAWINGGROUP + * + * @var PHPExcel_Shared_Escher + */ + private $escher; + + + /** + * Class constructor + * + * @param PHPExcel $phpExcel The Workbook + * @param int &$str_total Total number of strings + * @param int &$str_unique Total number of unique strings + * @param array &$str_table String Table + * @param array &$colors Colour Table + * @param mixed $parser The formula parser created for the Workbook + */ + public function __construct(PHPExcel $phpExcel = null, &$str_total, &$str_unique, &$str_table, &$colors, $parser) + { + // It needs to call its parent's constructor explicitly + parent::__construct(); + + $this->parser = $parser; + $this->biffSize = 0; + $this->palette = array(); + $this->countryCode = -1; + + $this->stringTotal = &$str_total; + $this->stringUnique = &$str_unique; + $this->stringTable = &$str_table; + $this->colors = &$colors; + $this->setPaletteXl97(); + + $this->phpExcel = $phpExcel; + + // set BIFFwriter limit for CONTINUE records + // $this->_limit = 8224; + $this->codepage = 0x04B0; + + // Add empty sheets and Build color cache + $countSheets = $phpExcel->getSheetCount(); + for ($i = 0; $i < $countSheets; ++$i) { + $phpSheet = $phpExcel->getSheet($i); + + $this->parser->setExtSheet($phpSheet->getTitle(), $i); // Register worksheet name with parser + + $supbook_index = 0x00; + $ref = pack('vvv', $supbook_index, $i, $i); + $this->parser->references[] = $ref; // Register reference with parser + + // Sheet tab colors? + if ($phpSheet->isTabColorSet()) { + $this->addColor($phpSheet->getTabColor()->getRGB()); + } + } + + } + + /** + * Add a new XF writer + * + * @param PHPExcel_Style + * @param boolean Is it a style XF? + * @return int Index to XF record + */ + public function addXfWriter($style, $isStyleXf = false) + { + $xfWriter = new PHPExcel_Writer_Excel5_Xf($style); + $xfWriter->setIsStyleXf($isStyleXf); + + // Add the font if not already added + $fontIndex = $this->addFont($style->getFont()); + + // Assign the font index to the xf record + $xfWriter->setFontIndex($fontIndex); + + // Background colors, best to treat these after the font so black will come after white in custom palette + $xfWriter->setFgColor($this->addColor($style->getFill()->getStartColor()->getRGB())); + $xfWriter->setBgColor($this->addColor($style->getFill()->getEndColor()->getRGB())); + $xfWriter->setBottomColor($this->addColor($style->getBorders()->getBottom()->getColor()->getRGB())); + $xfWriter->setTopColor($this->addColor($style->getBorders()->getTop()->getColor()->getRGB())); + $xfWriter->setRightColor($this->addColor($style->getBorders()->getRight()->getColor()->getRGB())); + $xfWriter->setLeftColor($this->addColor($style->getBorders()->getLeft()->getColor()->getRGB())); + $xfWriter->setDiagColor($this->addColor($style->getBorders()->getDiagonal()->getColor()->getRGB())); + + // Add the number format if it is not a built-in one and not already added + if ($style->getNumberFormat()->getBuiltInFormatCode() === false) { + $numberFormatHashCode = $style->getNumberFormat()->getHashCode(); + + if (isset($this->addedNumberFormats[$numberFormatHashCode])) { + $numberFormatIndex = $this->addedNumberFormats[$numberFormatHashCode]; + } else { + $numberFormatIndex = 164 + count($this->numberFormats); + $this->numberFormats[$numberFormatIndex] = $style->getNumberFormat(); + $this->addedNumberFormats[$numberFormatHashCode] = $numberFormatIndex; + } + } else { + $numberFormatIndex = (int) $style->getNumberFormat()->getBuiltInFormatCode(); + } + + // Assign the number format index to xf record + $xfWriter->setNumberFormatIndex($numberFormatIndex); + + $this->xfWriters[] = $xfWriter; + + $xfIndex = count($this->xfWriters) - 1; + return $xfIndex; + } + + /** + * Add a font to added fonts + * + * @param PHPExcel_Style_Font $font + * @return int Index to FONT record + */ + public function addFont(PHPExcel_Style_Font $font) + { + $fontHashCode = $font->getHashCode(); + if (isset($this->addedFonts[$fontHashCode])) { + $fontIndex = $this->addedFonts[$fontHashCode]; + } else { + $countFonts = count($this->fontWriters); + $fontIndex = ($countFonts < 4) ? $countFonts : $countFonts + 1; + + $fontWriter = new PHPExcel_Writer_Excel5_Font($font); + $fontWriter->setColorIndex($this->addColor($font->getColor()->getRGB())); + $this->fontWriters[] = $fontWriter; + + $this->addedFonts[$fontHashCode] = $fontIndex; + } + return $fontIndex; + } + + /** + * Alter color palette adding a custom color + * + * @param string $rgb E.g. 'FF00AA' + * @return int Color index + */ + private function addColor($rgb) + { + if (!isset($this->colors[$rgb])) { + if (count($this->colors) < 57) { + // then we add a custom color altering the palette + $colorIndex = 8 + count($this->colors); + $this->palette[$colorIndex] = + array( + hexdec(substr($rgb, 0, 2)), + hexdec(substr($rgb, 2, 2)), + hexdec(substr($rgb, 4)), + 0 + ); + $this->colors[$rgb] = $colorIndex; + } else { + // no room for more custom colors, just map to black + $colorIndex = 0; + } + } else { + // fetch already added custom color + $colorIndex = $this->colors[$rgb]; + } + + return $colorIndex; + } + + /** + * Sets the colour palette to the Excel 97+ default. + * + * @access private + */ + private function setPaletteXl97() + { + $this->palette = array( + 0x08 => array(0x00, 0x00, 0x00, 0x00), + 0x09 => array(0xff, 0xff, 0xff, 0x00), + 0x0A => array(0xff, 0x00, 0x00, 0x00), + 0x0B => array(0x00, 0xff, 0x00, 0x00), + 0x0C => array(0x00, 0x00, 0xff, 0x00), + 0x0D => array(0xff, 0xff, 0x00, 0x00), + 0x0E => array(0xff, 0x00, 0xff, 0x00), + 0x0F => array(0x00, 0xff, 0xff, 0x00), + 0x10 => array(0x80, 0x00, 0x00, 0x00), + 0x11 => array(0x00, 0x80, 0x00, 0x00), + 0x12 => array(0x00, 0x00, 0x80, 0x00), + 0x13 => array(0x80, 0x80, 0x00, 0x00), + 0x14 => array(0x80, 0x00, 0x80, 0x00), + 0x15 => array(0x00, 0x80, 0x80, 0x00), + 0x16 => array(0xc0, 0xc0, 0xc0, 0x00), + 0x17 => array(0x80, 0x80, 0x80, 0x00), + 0x18 => array(0x99, 0x99, 0xff, 0x00), + 0x19 => array(0x99, 0x33, 0x66, 0x00), + 0x1A => array(0xff, 0xff, 0xcc, 0x00), + 0x1B => array(0xcc, 0xff, 0xff, 0x00), + 0x1C => array(0x66, 0x00, 0x66, 0x00), + 0x1D => array(0xff, 0x80, 0x80, 0x00), + 0x1E => array(0x00, 0x66, 0xcc, 0x00), + 0x1F => array(0xcc, 0xcc, 0xff, 0x00), + 0x20 => array(0x00, 0x00, 0x80, 0x00), + 0x21 => array(0xff, 0x00, 0xff, 0x00), + 0x22 => array(0xff, 0xff, 0x00, 0x00), + 0x23 => array(0x00, 0xff, 0xff, 0x00), + 0x24 => array(0x80, 0x00, 0x80, 0x00), + 0x25 => array(0x80, 0x00, 0x00, 0x00), + 0x26 => array(0x00, 0x80, 0x80, 0x00), + 0x27 => array(0x00, 0x00, 0xff, 0x00), + 0x28 => array(0x00, 0xcc, 0xff, 0x00), + 0x29 => array(0xcc, 0xff, 0xff, 0x00), + 0x2A => array(0xcc, 0xff, 0xcc, 0x00), + 0x2B => array(0xff, 0xff, 0x99, 0x00), + 0x2C => array(0x99, 0xcc, 0xff, 0x00), + 0x2D => array(0xff, 0x99, 0xcc, 0x00), + 0x2E => array(0xcc, 0x99, 0xff, 0x00), + 0x2F => array(0xff, 0xcc, 0x99, 0x00), + 0x30 => array(0x33, 0x66, 0xff, 0x00), + 0x31 => array(0x33, 0xcc, 0xcc, 0x00), + 0x32 => array(0x99, 0xcc, 0x00, 0x00), + 0x33 => array(0xff, 0xcc, 0x00, 0x00), + 0x34 => array(0xff, 0x99, 0x00, 0x00), + 0x35 => array(0xff, 0x66, 0x00, 0x00), + 0x36 => array(0x66, 0x66, 0x99, 0x00), + 0x37 => array(0x96, 0x96, 0x96, 0x00), + 0x38 => array(0x00, 0x33, 0x66, 0x00), + 0x39 => array(0x33, 0x99, 0x66, 0x00), + 0x3A => array(0x00, 0x33, 0x00, 0x00), + 0x3B => array(0x33, 0x33, 0x00, 0x00), + 0x3C => array(0x99, 0x33, 0x00, 0x00), + 0x3D => array(0x99, 0x33, 0x66, 0x00), + 0x3E => array(0x33, 0x33, 0x99, 0x00), + 0x3F => array(0x33, 0x33, 0x33, 0x00), + ); + } + + /** + * Assemble worksheets into a workbook and send the BIFF data to an OLE + * storage. + * + * @param array $pWorksheetSizes The sizes in bytes of the binary worksheet streams + * @return string Binary data for workbook stream + */ + public function writeWorkbook($pWorksheetSizes = null) + { + $this->worksheetSizes = $pWorksheetSizes; + + // Calculate the number of selected worksheet tabs and call the finalization + // methods for each worksheet + $total_worksheets = $this->phpExcel->getSheetCount(); + + // Add part 1 of the Workbook globals, what goes before the SHEET records + $this->storeBof(0x0005); + $this->writeCodepage(); + $this->writeWindow1(); + + $this->writeDateMode(); + $this->writeAllFonts(); + $this->writeAllNumberFormats(); + $this->writeAllXfs(); + $this->writeAllStyles(); + $this->writePalette(); + + // Prepare part 3 of the workbook global stream, what goes after the SHEET records + $part3 = ''; + if ($this->countryCode != -1) { + $part3 .= $this->writeCountry(); + } + $part3 .= $this->writeRecalcId(); + + $part3 .= $this->writeSupbookInternal(); + /* TODO: store external SUPBOOK records and XCT and CRN records + in case of external references for BIFF8 */ + $part3 .= $this->writeExternalsheetBiff8(); + $part3 .= $this->writeAllDefinedNamesBiff8(); + $part3 .= $this->writeMsoDrawingGroup(); + $part3 .= $this->writeSharedStringsTable(); + + $part3 .= $this->writeEof(); + + // Add part 2 of the Workbook globals, the SHEET records + $this->calcSheetOffsets(); + for ($i = 0; $i < $total_worksheets; ++$i) { + $this->writeBoundSheet($this->phpExcel->getSheet($i), $this->worksheetOffsets[$i]); + } + + // Add part 3 of the Workbook globals + $this->_data .= $part3; + + return $this->_data; + } + + /** + * Calculate offsets for Worksheet BOF records. + * + * @access private + */ + private function calcSheetOffsets() + { + $boundsheet_length = 10; // fixed length for a BOUNDSHEET record + + // size of Workbook globals part 1 + 3 + $offset = $this->_datasize; + + // add size of Workbook globals part 2, the length of the SHEET records + $total_worksheets = count($this->phpExcel->getAllSheets()); + foreach ($this->phpExcel->getWorksheetIterator() as $sheet) { + $offset += $boundsheet_length + strlen(PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort($sheet->getTitle())); + } + + // add the sizes of each of the Sheet substreams, respectively + for ($i = 0; $i < $total_worksheets; ++$i) { + $this->worksheetOffsets[$i] = $offset; + $offset += $this->worksheetSizes[$i]; + } + $this->biffSize = $offset; + } + + /** + * Store the Excel FONT records. + */ + private function writeAllFonts() + { + foreach ($this->fontWriters as $fontWriter) { + $this->append($fontWriter->writeFont()); + } + } + + /** + * Store user defined numerical formats i.e. FORMAT records + */ + private function writeAllNumberFormats() + { + foreach ($this->numberFormats as $numberFormatIndex => $numberFormat) { + $this->writeNumberFormat($numberFormat->getFormatCode(), $numberFormatIndex); + } + } + + /** + * Write all XF records. + */ + private function writeAllXfs() + { + foreach ($this->xfWriters as $xfWriter) { + $this->append($xfWriter->writeXf()); + } + } + + /** + * Write all STYLE records. + */ + private function writeAllStyles() + { + $this->writeStyle(); + } + + /** + * Write the EXTERNCOUNT and EXTERNSHEET records. These are used as indexes for + * the NAME records. + */ + private function writeExternals() + { + $countSheets = $this->phpExcel->getSheetCount(); + // Create EXTERNCOUNT with number of worksheets + $this->writeExternalCount($countSheets); + + // Create EXTERNSHEET for each worksheet + for ($i = 0; $i < $countSheets; ++$i) { + $this->writeExternalSheet($this->phpExcel->getSheet($i)->getTitle()); + } + } + + /** + * Write the NAME record to define the print area and the repeat rows and cols. + */ + private function writeNames() + { + // total number of sheets + $total_worksheets = $this->phpExcel->getSheetCount(); + + // Create the print area NAME records + for ($i = 0; $i < $total_worksheets; ++$i) { + $sheetSetup = $this->phpExcel->getSheet($i)->getPageSetup(); + // Write a Name record if the print area has been defined + if ($sheetSetup->isPrintAreaSet()) { + // Print area + $printArea = PHPExcel_Cell::splitRange($sheetSetup->getPrintArea()); + $printArea = $printArea[0]; + $printArea[0] = PHPExcel_Cell::coordinateFromString($printArea[0]); + $printArea[1] = PHPExcel_Cell::coordinateFromString($printArea[1]); + + $print_rowmin = $printArea[0][1] - 1; + $print_rowmax = $printArea[1][1] - 1; + $print_colmin = PHPExcel_Cell::columnIndexFromString($printArea[0][0]) - 1; + $print_colmax = PHPExcel_Cell::columnIndexFromString($printArea[1][0]) - 1; + + $this->writeNameShort( + $i, // sheet index + 0x06, // NAME type + $print_rowmin, + $print_rowmax, + $print_colmin, + $print_colmax + ); + } + } + + // Create the print title NAME records + for ($i = 0; $i < $total_worksheets; ++$i) { + $sheetSetup = $this->phpExcel->getSheet($i)->getPageSetup(); + + // simultaneous repeatColumns repeatRows + if ($sheetSetup->isColumnsToRepeatAtLeftSet() && $sheetSetup->isRowsToRepeatAtTopSet()) { + $repeat = $sheetSetup->getColumnsToRepeatAtLeft(); + $colmin = PHPExcel_Cell::columnIndexFromString($repeat[0]) - 1; + $colmax = PHPExcel_Cell::columnIndexFromString($repeat[1]) - 1; + + $repeat = $sheetSetup->getRowsToRepeatAtTop(); + $rowmin = $repeat[0] - 1; + $rowmax = $repeat[1] - 1; + + $this->writeNameLong( + $i, // sheet index + 0x07, // NAME type + $rowmin, + $rowmax, + $colmin, + $colmax + ); + + // (exclusive) either repeatColumns or repeatRows + } elseif ($sheetSetup->isColumnsToRepeatAtLeftSet() || $sheetSetup->isRowsToRepeatAtTopSet()) { + // Columns to repeat + if ($sheetSetup->isColumnsToRepeatAtLeftSet()) { + $repeat = $sheetSetup->getColumnsToRepeatAtLeft(); + $colmin = PHPExcel_Cell::columnIndexFromString($repeat[0]) - 1; + $colmax = PHPExcel_Cell::columnIndexFromString($repeat[1]) - 1; + } else { + $colmin = 0; + $colmax = 255; + } + + // Rows to repeat + if ($sheetSetup->isRowsToRepeatAtTopSet()) { + $repeat = $sheetSetup->getRowsToRepeatAtTop(); + $rowmin = $repeat[0] - 1; + $rowmax = $repeat[1] - 1; + } else { + $rowmin = 0; + $rowmax = 65535; + } + + $this->writeNameShort( + $i, // sheet index + 0x07, // NAME type + $rowmin, + $rowmax, + $colmin, + $colmax + ); + } + } + } + + /** + * Writes all the DEFINEDNAME records (BIFF8). + * So far this is only used for repeating rows/columns (print titles) and print areas + */ + private function writeAllDefinedNamesBiff8() + { + $chunk = ''; + + // Named ranges + if (count($this->phpExcel->getNamedRanges()) > 0) { + // Loop named ranges + $namedRanges = $this->phpExcel->getNamedRanges(); + foreach ($namedRanges as $namedRange) { + // Create absolute coordinate + $range = PHPExcel_Cell::splitRange($namedRange->getRange()); + for ($i = 0; $i < count($range); $i++) { + $range[$i][0] = '\'' . str_replace("'", "''", $namedRange->getWorksheet()->getTitle()) . '\'!' . PHPExcel_Cell::absoluteCoordinate($range[$i][0]); + if (isset($range[$i][1])) { + $range[$i][1] = PHPExcel_Cell::absoluteCoordinate($range[$i][1]); + } + } + $range = PHPExcel_Cell::buildRange($range); // e.g. Sheet1!$A$1:$B$2 + + // parse formula + try { + $error = $this->parser->parse($range); + $formulaData = $this->parser->toReversePolish(); + + // make sure tRef3d is of type tRef3dR (0x3A) + if (isset($formulaData{0}) and ($formulaData{0} == "\x7A" or $formulaData{0} == "\x5A")) { + $formulaData = "\x3A" . substr($formulaData, 1); + } + + if ($namedRange->getLocalOnly()) { + // local scope + $scope = $this->phpExcel->getIndex($namedRange->getScope()) + 1; + } else { + // global scope + $scope = 0; + } + $chunk .= $this->writeData($this->writeDefinedNameBiff8($namedRange->getName(), $formulaData, $scope, false)); + + } catch (PHPExcel_Exception $e) { + // do nothing + } + } + } + + // total number of sheets + $total_worksheets = $this->phpExcel->getSheetCount(); + + // write the print titles (repeating rows, columns), if any + for ($i = 0; $i < $total_worksheets; ++$i) { + $sheetSetup = $this->phpExcel->getSheet($i)->getPageSetup(); + // simultaneous repeatColumns repeatRows + if ($sheetSetup->isColumnsToRepeatAtLeftSet() && $sheetSetup->isRowsToRepeatAtTopSet()) { + $repeat = $sheetSetup->getColumnsToRepeatAtLeft(); + $colmin = PHPExcel_Cell::columnIndexFromString($repeat[0]) - 1; + $colmax = PHPExcel_Cell::columnIndexFromString($repeat[1]) - 1; + + $repeat = $sheetSetup->getRowsToRepeatAtTop(); + $rowmin = $repeat[0] - 1; + $rowmax = $repeat[1] - 1; + + // construct formula data manually + $formulaData = pack('Cv', 0x29, 0x17); // tMemFunc + $formulaData .= pack('Cvvvvv', 0x3B, $i, 0, 65535, $colmin, $colmax); // tArea3d + $formulaData .= pack('Cvvvvv', 0x3B, $i, $rowmin, $rowmax, 0, 255); // tArea3d + $formulaData .= pack('C', 0x10); // tList + + // store the DEFINEDNAME record + $chunk .= $this->writeData($this->writeDefinedNameBiff8(pack('C', 0x07), $formulaData, $i + 1, true)); + + // (exclusive) either repeatColumns or repeatRows + } elseif ($sheetSetup->isColumnsToRepeatAtLeftSet() || $sheetSetup->isRowsToRepeatAtTopSet()) { + // Columns to repeat + if ($sheetSetup->isColumnsToRepeatAtLeftSet()) { + $repeat = $sheetSetup->getColumnsToRepeatAtLeft(); + $colmin = PHPExcel_Cell::columnIndexFromString($repeat[0]) - 1; + $colmax = PHPExcel_Cell::columnIndexFromString($repeat[1]) - 1; + } else { + $colmin = 0; + $colmax = 255; + } + // Rows to repeat + if ($sheetSetup->isRowsToRepeatAtTopSet()) { + $repeat = $sheetSetup->getRowsToRepeatAtTop(); + $rowmin = $repeat[0] - 1; + $rowmax = $repeat[1] - 1; + } else { + $rowmin = 0; + $rowmax = 65535; + } + + // construct formula data manually because parser does not recognize absolute 3d cell references + $formulaData = pack('Cvvvvv', 0x3B, $i, $rowmin, $rowmax, $colmin, $colmax); + + // store the DEFINEDNAME record + $chunk .= $this->writeData($this->writeDefinedNameBiff8(pack('C', 0x07), $formulaData, $i + 1, true)); + } + } + + // write the print areas, if any + for ($i = 0; $i < $total_worksheets; ++$i) { + $sheetSetup = $this->phpExcel->getSheet($i)->getPageSetup(); + if ($sheetSetup->isPrintAreaSet()) { + // Print area, e.g. A3:J6,H1:X20 + $printArea = PHPExcel_Cell::splitRange($sheetSetup->getPrintArea()); + $countPrintArea = count($printArea); + + $formulaData = ''; + for ($j = 0; $j < $countPrintArea; ++$j) { + $printAreaRect = $printArea[$j]; // e.g. A3:J6 + $printAreaRect[0] = PHPExcel_Cell::coordinateFromString($printAreaRect[0]); + $printAreaRect[1] = PHPExcel_Cell::coordinateFromString($printAreaRect[1]); + + $print_rowmin = $printAreaRect[0][1] - 1; + $print_rowmax = $printAreaRect[1][1] - 1; + $print_colmin = PHPExcel_Cell::columnIndexFromString($printAreaRect[0][0]) - 1; + $print_colmax = PHPExcel_Cell::columnIndexFromString($printAreaRect[1][0]) - 1; + + // construct formula data manually because parser does not recognize absolute 3d cell references + $formulaData .= pack('Cvvvvv', 0x3B, $i, $print_rowmin, $print_rowmax, $print_colmin, $print_colmax); + + if ($j > 0) { + $formulaData .= pack('C', 0x10); // list operator token ',' + } + } + + // store the DEFINEDNAME record + $chunk .= $this->writeData($this->writeDefinedNameBiff8(pack('C', 0x06), $formulaData, $i + 1, true)); + } + } + + // write autofilters, if any + for ($i = 0; $i < $total_worksheets; ++$i) { + $sheetAutoFilter = $this->phpExcel->getSheet($i)->getAutoFilter(); + $autoFilterRange = $sheetAutoFilter->getRange(); + if (!empty($autoFilterRange)) { + $rangeBounds = PHPExcel_Cell::rangeBoundaries($autoFilterRange); + + //Autofilter built in name + $name = pack('C', 0x0D); + + $chunk .= $this->writeData($this->writeShortNameBiff8($name, $i + 1, $rangeBounds, true)); + } + } + + return $chunk; + } + + /** + * Write a DEFINEDNAME record for BIFF8 using explicit binary formula data + * + * @param string $name The name in UTF-8 + * @param string $formulaData The binary formula data + * @param string $sheetIndex 1-based sheet index the defined name applies to. 0 = global + * @param boolean $isBuiltIn Built-in name? + * @return string Complete binary record data + */ + private function writeDefinedNameBiff8($name, $formulaData, $sheetIndex = 0, $isBuiltIn = false) + { + $record = 0x0018; + + // option flags + $options = $isBuiltIn ? 0x20 : 0x00; + + // length of the name, character count + $nlen = PHPExcel_Shared_String::CountCharacters($name); + + // name with stripped length field + $name = substr(PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($name), 2); + + // size of the formula (in bytes) + $sz = strlen($formulaData); + + // combine the parts + $data = pack('vCCvvvCCCC', $options, 0, $nlen, $sz, 0, $sheetIndex, 0, 0, 0, 0) + . $name . $formulaData; + $length = strlen($data); + + $header = pack('vv', $record, $length); + + return $header . $data; + } + + /** + * Write a short NAME record + * + * @param string $name + * @param string $sheetIndex 1-based sheet index the defined name applies to. 0 = global + * @param integer[][] $rangeBounds range boundaries + * @param boolean $isHidden + * @return string Complete binary record data + * */ + private function writeShortNameBiff8($name, $sheetIndex = 0, $rangeBounds, $isHidden = false) + { + $record = 0x0018; + + // option flags + $options = ($isHidden ? 0x21 : 0x00); + + $extra = pack( + 'Cvvvvv', + 0x3B, + $sheetIndex - 1, + $rangeBounds[0][1] - 1, + $rangeBounds[1][1] - 1, + $rangeBounds[0][0] - 1, + $rangeBounds[1][0] - 1 + ); + + // size of the formula (in bytes) + $sz = strlen($extra); + + // combine the parts + $data = pack('vCCvvvCCCCC', $options, 0, 1, $sz, 0, $sheetIndex, 0, 0, 0, 0, 0) + . $name . $extra; + $length = strlen($data); + + $header = pack('vv', $record, $length); + + return $header . $data; + } + + /** + * Stores the CODEPAGE biff record. + */ + private function writeCodepage() + { + $record = 0x0042; // Record identifier + $length = 0x0002; // Number of bytes to follow + $cv = $this->codepage; // The code page + + $header = pack('vv', $record, $length); + $data = pack('v', $cv); + + $this->append($header . $data); + } + + /** + * Write Excel BIFF WINDOW1 record. + */ + private function writeWindow1() + { + $record = 0x003D; // Record identifier + $length = 0x0012; // Number of bytes to follow + + $xWn = 0x0000; // Horizontal position of window + $yWn = 0x0000; // Vertical position of window + $dxWn = 0x25BC; // Width of window + $dyWn = 0x1572; // Height of window + + $grbit = 0x0038; // Option flags + + // not supported by PHPExcel, so there is only one selected sheet, the active + $ctabsel = 1; // Number of workbook tabs selected + + $wTabRatio = 0x0258; // Tab to scrollbar ratio + + // not supported by PHPExcel, set to 0 + $itabFirst = 0; // 1st displayed worksheet + $itabCur = $this->phpExcel->getActiveSheetIndex(); // Active worksheet + + $header = pack("vv", $record, $length); + $data = pack("vvvvvvvvv", $xWn, $yWn, $dxWn, $dyWn, $grbit, $itabCur, $itabFirst, $ctabsel, $wTabRatio); + $this->append($header . $data); + } + + /** + * Writes Excel BIFF BOUNDSHEET record. + * + * @param PHPExcel_Worksheet $sheet Worksheet name + * @param integer $offset Location of worksheet BOF + */ + private function writeBoundSheet($sheet, $offset) + { + $sheetname = $sheet->getTitle(); + $record = 0x0085; // Record identifier + + // sheet state + switch ($sheet->getSheetState()) { + case PHPExcel_Worksheet::SHEETSTATE_VISIBLE: + $ss = 0x00; + break; + case PHPExcel_Worksheet::SHEETSTATE_HIDDEN: + $ss = 0x01; + break; + case PHPExcel_Worksheet::SHEETSTATE_VERYHIDDEN: + $ss = 0x02; + break; + default: + $ss = 0x00; + break; + } + + // sheet type + $st = 0x00; + + $grbit = 0x0000; // Visibility and sheet type + + $data = pack("VCC", $offset, $ss, $st); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort($sheetname); + + $length = strlen($data); + $header = pack("vv", $record, $length); + $this->append($header . $data); + } + + /** + * Write Internal SUPBOOK record + */ + private function writeSupbookInternal() + { + $record = 0x01AE; // Record identifier + $length = 0x0004; // Bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("vv", $this->phpExcel->getSheetCount(), 0x0401); + return $this->writeData($header . $data); + } + + /** + * Writes the Excel BIFF EXTERNSHEET record. These references are used by + * formulas. + * + */ + private function writeExternalsheetBiff8() + { + $totalReferences = count($this->parser->references); + $record = 0x0017; // Record identifier + $length = 2 + 6 * $totalReferences; // Number of bytes to follow + + $supbook_index = 0; // FIXME: only using internal SUPBOOK record + $header = pack("vv", $record, $length); + $data = pack('v', $totalReferences); + for ($i = 0; $i < $totalReferences; ++$i) { + $data .= $this->parser->references[$i]; + } + return $this->writeData($header . $data); + } + + /** + * Write Excel BIFF STYLE records. + */ + private function writeStyle() + { + $record = 0x0293; // Record identifier + $length = 0x0004; // Bytes to follow + + $ixfe = 0x8000; // Index to cell style XF + $BuiltIn = 0x00; // Built-in style + $iLevel = 0xff; // Outline style level + + $header = pack("vv", $record, $length); + $data = pack("vCC", $ixfe, $BuiltIn, $iLevel); + $this->append($header . $data); + } + + /** + * Writes Excel FORMAT record for non "built-in" numerical formats. + * + * @param string $format Custom format string + * @param integer $ifmt Format index code + */ + private function writeNumberFormat($format, $ifmt) + { + $record = 0x041E; // Record identifier + + $numberFormatString = PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($format); + $length = 2 + strlen($numberFormatString); // Number of bytes to follow + + + $header = pack("vv", $record, $length); + $data = pack("v", $ifmt) . $numberFormatString; + $this->append($header . $data); + } + + /** + * Write DATEMODE record to indicate the date system in use (1904 or 1900). + */ + private function writeDateMode() + { + $record = 0x0022; // Record identifier + $length = 0x0002; // Bytes to follow + + $f1904 = (PHPExcel_Shared_Date::getExcelCalendar() == PHPExcel_Shared_Date::CALENDAR_MAC_1904) + ? 1 + : 0; // Flag for 1904 date system + + $header = pack("vv", $record, $length); + $data = pack("v", $f1904); + $this->append($header . $data); + } + + /** + * Write BIFF record EXTERNCOUNT to indicate the number of external sheet + * references in the workbook. + * + * Excel only stores references to external sheets that are used in NAME. + * The workbook NAME record is required to define the print area and the repeat + * rows and columns. + * + * A similar method is used in Worksheet.php for a slightly different purpose. + * + * @param integer $cxals Number of external references + */ + private function writeExternalCount($cxals) + { + $record = 0x0016; // Record identifier + $length = 0x0002; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("v", $cxals); + $this->append($header . $data); + } + + /** + * Writes the Excel BIFF EXTERNSHEET record. These references are used by + * formulas. NAME record is required to define the print area and the repeat + * rows and columns. + * + * A similar method is used in Worksheet.php for a slightly different purpose. + * + * @param string $sheetname Worksheet name + */ + private function writeExternalSheet($sheetname) + { + $record = 0x0017; // Record identifier + $length = 0x02 + strlen($sheetname); // Number of bytes to follow + + $cch = strlen($sheetname); // Length of sheet name + $rgch = 0x03; // Filename encoding + + $header = pack("vv", $record, $length); + $data = pack("CC", $cch, $rgch); + $this->append($header . $data . $sheetname); + } + + /** + * Store the NAME record in the short format that is used for storing the print + * area, repeat rows only and repeat columns only. + * + * @param integer $index Sheet index + * @param integer $type Built-in name type + * @param integer $rowmin Start row + * @param integer $rowmax End row + * @param integer $colmin Start colum + * @param integer $colmax End column + */ + private function writeNameShort($index, $type, $rowmin, $rowmax, $colmin, $colmax) + { + $record = 0x0018; // Record identifier + $length = 0x0024; // Number of bytes to follow + + $grbit = 0x0020; // Option flags + $chKey = 0x00; // Keyboard shortcut + $cch = 0x01; // Length of text name + $cce = 0x0015; // Length of text definition + $ixals = $index + 1; // Sheet index + $itab = $ixals; // Equal to ixals + $cchCustMenu = 0x00; // Length of cust menu text + $cchDescription = 0x00; // Length of description text + $cchHelptopic = 0x00; // Length of help topic text + $cchStatustext = 0x00; // Length of status bar text + $rgch = $type; // Built-in name type + + $unknown03 = 0x3b; + $unknown04 = 0xffff - $index; + $unknown05 = 0x0000; + $unknown06 = 0x0000; + $unknown07 = 0x1087; + $unknown08 = 0x8005; + + $header = pack("vv", $record, $length); + $data = pack("v", $grbit); + $data .= pack("C", $chKey); + $data .= pack("C", $cch); + $data .= pack("v", $cce); + $data .= pack("v", $ixals); + $data .= pack("v", $itab); + $data .= pack("C", $cchCustMenu); + $data .= pack("C", $cchDescription); + $data .= pack("C", $cchHelptopic); + $data .= pack("C", $cchStatustext); + $data .= pack("C", $rgch); + $data .= pack("C", $unknown03); + $data .= pack("v", $unknown04); + $data .= pack("v", $unknown05); + $data .= pack("v", $unknown06); + $data .= pack("v", $unknown07); + $data .= pack("v", $unknown08); + $data .= pack("v", $index); + $data .= pack("v", $index); + $data .= pack("v", $rowmin); + $data .= pack("v", $rowmax); + $data .= pack("C", $colmin); + $data .= pack("C", $colmax); + $this->append($header . $data); + } + + /** + * Store the NAME record in the long format that is used for storing the repeat + * rows and columns when both are specified. This shares a lot of code with + * writeNameShort() but we use a separate method to keep the code clean. + * Code abstraction for reuse can be carried too far, and I should know. ;-) + * + * @param integer $index Sheet index + * @param integer $type Built-in name type + * @param integer $rowmin Start row + * @param integer $rowmax End row + * @param integer $colmin Start colum + * @param integer $colmax End column + */ + private function writeNameLong($index, $type, $rowmin, $rowmax, $colmin, $colmax) + { + $record = 0x0018; // Record identifier + $length = 0x003d; // Number of bytes to follow + $grbit = 0x0020; // Option flags + $chKey = 0x00; // Keyboard shortcut + $cch = 0x01; // Length of text name + $cce = 0x002e; // Length of text definition + $ixals = $index + 1; // Sheet index + $itab = $ixals; // Equal to ixals + $cchCustMenu = 0x00; // Length of cust menu text + $cchDescription = 0x00; // Length of description text + $cchHelptopic = 0x00; // Length of help topic text + $cchStatustext = 0x00; // Length of status bar text + $rgch = $type; // Built-in name type + + $unknown01 = 0x29; + $unknown02 = 0x002b; + $unknown03 = 0x3b; + $unknown04 = 0xffff-$index; + $unknown05 = 0x0000; + $unknown06 = 0x0000; + $unknown07 = 0x1087; + $unknown08 = 0x8008; + + $header = pack("vv", $record, $length); + $data = pack("v", $grbit); + $data .= pack("C", $chKey); + $data .= pack("C", $cch); + $data .= pack("v", $cce); + $data .= pack("v", $ixals); + $data .= pack("v", $itab); + $data .= pack("C", $cchCustMenu); + $data .= pack("C", $cchDescription); + $data .= pack("C", $cchHelptopic); + $data .= pack("C", $cchStatustext); + $data .= pack("C", $rgch); + $data .= pack("C", $unknown01); + $data .= pack("v", $unknown02); + // Column definition + $data .= pack("C", $unknown03); + $data .= pack("v", $unknown04); + $data .= pack("v", $unknown05); + $data .= pack("v", $unknown06); + $data .= pack("v", $unknown07); + $data .= pack("v", $unknown08); + $data .= pack("v", $index); + $data .= pack("v", $index); + $data .= pack("v", 0x0000); + $data .= pack("v", 0x3fff); + $data .= pack("C", $colmin); + $data .= pack("C", $colmax); + // Row definition + $data .= pack("C", $unknown03); + $data .= pack("v", $unknown04); + $data .= pack("v", $unknown05); + $data .= pack("v", $unknown06); + $data .= pack("v", $unknown07); + $data .= pack("v", $unknown08); + $data .= pack("v", $index); + $data .= pack("v", $index); + $data .= pack("v", $rowmin); + $data .= pack("v", $rowmax); + $data .= pack("C", 0x00); + $data .= pack("C", 0xff); + // End of data + $data .= pack("C", 0x10); + $this->append($header . $data); + } + + /** + * Stores the COUNTRY record for localization + * + * @return string + */ + private function writeCountry() + { + $record = 0x008C; // Record identifier + $length = 4; // Number of bytes to follow + + $header = pack('vv', $record, $length); + /* using the same country code always for simplicity */ + $data = pack('vv', $this->countryCode, $this->countryCode); + //$this->append($header . $data); + return $this->writeData($header . $data); + } + + /** + * Write the RECALCID record + * + * @return string + */ + private function writeRecalcId() + { + $record = 0x01C1; // Record identifier + $length = 8; // Number of bytes to follow + + $header = pack('vv', $record, $length); + + // by inspection of real Excel files, MS Office Excel 2007 writes this + $data = pack('VV', 0x000001C1, 0x00001E667); + + return $this->writeData($header . $data); + } + + /** + * Stores the PALETTE biff record. + */ + private function writePalette() + { + $aref = $this->palette; + + $record = 0x0092; // Record identifier + $length = 2 + 4 * count($aref); // Number of bytes to follow + $ccv = count($aref); // Number of RGB values to follow + $data = ''; // The RGB data + + // Pack the RGB data + foreach ($aref as $color) { + foreach ($color as $byte) { + $data .= pack("C", $byte); + } + } + + $header = pack("vvv", $record, $length, $ccv); + $this->append($header . $data); + } + + /** + * Handling of the SST continue blocks is complicated by the need to include an + * additional continuation byte depending on whether the string is split between + * blocks or whether it starts at the beginning of the block. (There are also + * additional complications that will arise later when/if Rich Strings are + * supported). + * + * The Excel documentation says that the SST record should be followed by an + * EXTSST record. The EXTSST record is a hash table that is used to optimise + * access to SST. However, despite the documentation it doesn't seem to be + * required so we will ignore it. + * + * @return string Binary data + */ + private function writeSharedStringsTable() + { + // maximum size of record data (excluding record header) + $continue_limit = 8224; + + // initialize array of record data blocks + $recordDatas = array(); + + // start SST record data block with total number of strings, total number of unique strings + $recordData = pack("VV", $this->stringTotal, $this->stringUnique); + + // loop through all (unique) strings in shared strings table + foreach (array_keys($this->stringTable) as $string) { + // here $string is a BIFF8 encoded string + + // length = character count + $headerinfo = unpack("vlength/Cencoding", $string); + + // currently, this is always 1 = uncompressed + $encoding = $headerinfo["encoding"]; + + // initialize finished writing current $string + $finished = false; + + while ($finished === false) { + // normally, there will be only one cycle, but if string cannot immediately be written as is + // there will be need for more than one cylcle, if string longer than one record data block, there + // may be need for even more cycles + + if (strlen($recordData) + strlen($string) <= $continue_limit) { + // then we can write the string (or remainder of string) without any problems + $recordData .= $string; + + if (strlen($recordData) + strlen($string) == $continue_limit) { + // we close the record data block, and initialize a new one + $recordDatas[] = $recordData; + $recordData = ''; + } + + // we are finished writing this string + $finished = true; + } else { + // special treatment writing the string (or remainder of the string) + // If the string is very long it may need to be written in more than one CONTINUE record. + + // check how many bytes more there is room for in the current record + $space_remaining = $continue_limit - strlen($recordData); + + // minimum space needed + // uncompressed: 2 byte string length length field + 1 byte option flags + 2 byte character + // compressed: 2 byte string length length field + 1 byte option flags + 1 byte character + $min_space_needed = ($encoding == 1) ? 5 : 4; + + // We have two cases + // 1. space remaining is less than minimum space needed + // here we must waste the space remaining and move to next record data block + // 2. space remaining is greater than or equal to minimum space needed + // here we write as much as we can in the current block, then move to next record data block + + // 1. space remaining is less than minimum space needed + if ($space_remaining < $min_space_needed) { + // we close the block, store the block data + $recordDatas[] = $recordData; + + // and start new record data block where we start writing the string + $recordData = ''; + + // 2. space remaining is greater than or equal to minimum space needed + } else { + // initialize effective remaining space, for Unicode strings this may need to be reduced by 1, see below + $effective_space_remaining = $space_remaining; + + // for uncompressed strings, sometimes effective space remaining is reduced by 1 + if ($encoding == 1 && (strlen($string) - $space_remaining) % 2 == 1) { + --$effective_space_remaining; + } + + // one block fininshed, store the block data + $recordData .= substr($string, 0, $effective_space_remaining); + + $string = substr($string, $effective_space_remaining); // for next cycle in while loop + $recordDatas[] = $recordData; + + // start new record data block with the repeated option flags + $recordData = pack('C', $encoding); + } + } + } + } + + // Store the last record data block unless it is empty + // if there was no need for any continue records, this will be the for SST record data block itself + if (strlen($recordData) > 0) { + $recordDatas[] = $recordData; + } + + // combine into one chunk with all the blocks SST, CONTINUE,... + $chunk = ''; + foreach ($recordDatas as $i => $recordData) { + // first block should have the SST record header, remaing should have CONTINUE header + $record = ($i == 0) ? 0x00FC : 0x003C; + + $header = pack("vv", $record, strlen($recordData)); + $data = $header . $recordData; + + $chunk .= $this->writeData($data); + } + + return $chunk; + } + + /** + * Writes the MSODRAWINGGROUP record if needed. Possibly split using CONTINUE records. + */ + private function writeMsoDrawingGroup() + { + // write the Escher stream if necessary + if (isset($this->escher)) { + $writer = new PHPExcel_Writer_Excel5_Escher($this->escher); + $data = $writer->close(); + + $record = 0x00EB; + $length = strlen($data); + $header = pack("vv", $record, $length); + + return $this->writeData($header . $data); + } else { + return ''; + } + } + + /** + * Get Escher object + * + * @return PHPExcel_Shared_Escher + */ + public function getEscher() + { + return $this->escher; + } + + /** + * Set Escher object + * + * @param PHPExcel_Shared_Escher $pValue + */ + public function setEscher(PHPExcel_Shared_Escher $pValue = null) + { + $this->escher = $pValue; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Worksheet.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Worksheet.php new file mode 100644 index 0000000..be965e2 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Worksheet.php @@ -0,0 +1,4240 @@ +<?php + +/** + * PHPExcel_Writer_Excel5_Worksheet + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +// Original file header of PEAR::Spreadsheet_Excel_Writer_Worksheet (used as the base for this class): +// ----------------------------------------------------------------------------------------- +// /* +// * Module written/ported by Xavier Noguer <xnoguer@rezebra.com> +// * +// * The majority of this is _NOT_ my code. I simply ported it from the +// * PERL Spreadsheet::WriteExcel module. +// * +// * The author of the Spreadsheet::WriteExcel module is John McNamara +// * <jmcnamara@cpan.org> +// * +// * I _DO_ maintain this code, and John McNamara has nothing to do with the +// * porting of this code to PHP. Any questions directly related to this +// * class library should be directed to me. +// * +// * License Information: +// * +// * Spreadsheet_Excel_Writer: A library for generating Excel Spreadsheets +// * Copyright (c) 2002-2003 Xavier Noguer xnoguer@rezebra.com +// * +// * 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 library 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 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 +// */ +class PHPExcel_Writer_Excel5_Worksheet extends PHPExcel_Writer_Excel5_BIFFwriter +{ + /** + * Formula parser + * + * @var PHPExcel_Writer_Excel5_Parser + */ + private $parser; + + /** + * Maximum number of characters for a string (LABEL record in BIFF5) + * @var integer + */ + private $xlsStringMaxLength; + + /** + * Array containing format information for columns + * @var array + */ + private $columnInfo; + + /** + * Array containing the selected area for the worksheet + * @var array + */ + private $selection; + + /** + * The active pane for the worksheet + * @var integer + */ + private $activePane; + + /** + * Whether to use outline. + * @var integer + */ + private $outlineOn; + + /** + * Auto outline styles. + * @var bool + */ + private $outlineStyle; + + /** + * Whether to have outline summary below. + * @var bool + */ + private $outlineBelow; + + /** + * Whether to have outline summary at the right. + * @var bool + */ + private $outlineRight; + + /** + * Reference to the total number of strings in the workbook + * @var integer + */ + private $stringTotal; + + /** + * Reference to the number of unique strings in the workbook + * @var integer + */ + private $stringUnique; + + /** + * Reference to the array containing all the unique strings in the workbook + * @var array + */ + private $stringTable; + + /** + * Color cache + */ + private $colors; + + /** + * Index of first used row (at least 0) + * @var int + */ + private $firstRowIndex; + + /** + * Index of last used row. (no used rows means -1) + * @var int + */ + private $lastRowIndex; + + /** + * Index of first used column (at least 0) + * @var int + */ + private $firstColumnIndex; + + /** + * Index of last used column (no used columns means -1) + * @var int + */ + private $lastColumnIndex; + + /** + * Sheet object + * @var PHPExcel_Worksheet + */ + public $phpSheet; + + /** + * Count cell style Xfs + * + * @var int + */ + private $countCellStyleXfs; + + /** + * Escher object corresponding to MSODRAWING + * + * @var PHPExcel_Shared_Escher + */ + private $escher; + + /** + * Array of font hashes associated to FONT records index + * + * @var array + */ + public $fontHashIndex; + + /** + * Constructor + * + * @param int &$str_total Total number of strings + * @param int &$str_unique Total number of unique strings + * @param array &$str_table String Table + * @param array &$colors Colour Table + * @param mixed $parser The formula parser created for the Workbook + * @param boolean $preCalculateFormulas Flag indicating whether formulas should be calculated or just written + * @param string $phpSheet The worksheet to write + * @param PHPExcel_Worksheet $phpSheet + */ + public function __construct(&$str_total, &$str_unique, &$str_table, &$colors, $parser, $preCalculateFormulas, $phpSheet) + { + // It needs to call its parent's constructor explicitly + parent::__construct(); + + // change BIFFwriter limit for CONTINUE records +// $this->_limit = 8224; + + + $this->_preCalculateFormulas = $preCalculateFormulas; + $this->stringTotal = &$str_total; + $this->stringUnique = &$str_unique; + $this->stringTable = &$str_table; + $this->colors = &$colors; + $this->parser = $parser; + + $this->phpSheet = $phpSheet; + + //$this->ext_sheets = array(); + //$this->offset = 0; + $this->xlsStringMaxLength = 255; + $this->columnInfo = array(); + $this->selection = array(0,0,0,0); + $this->activePane = 3; + + $this->_print_headers = 0; + + $this->outlineStyle = 0; + $this->outlineBelow = 1; + $this->outlineRight = 1; + $this->outlineOn = 1; + + $this->fontHashIndex = array(); + + // calculate values for DIMENSIONS record + $minR = 1; + $minC = 'A'; + + $maxR = $this->phpSheet->getHighestRow(); + $maxC = $this->phpSheet->getHighestColumn(); + + // Determine lowest and highest column and row +// $this->firstRowIndex = ($minR > 65535) ? 65535 : $minR; + $this->lastRowIndex = ($maxR > 65535) ? 65535 : $maxR ; + + $this->firstColumnIndex = PHPExcel_Cell::columnIndexFromString($minC); + $this->lastColumnIndex = PHPExcel_Cell::columnIndexFromString($maxC); + +// if ($this->firstColumnIndex > 255) $this->firstColumnIndex = 255; + if ($this->lastColumnIndex > 255) { + $this->lastColumnIndex = 255; + } + + $this->countCellStyleXfs = count($phpSheet->getParent()->getCellStyleXfCollection()); + } + + /** + * Add data to the beginning of the workbook (note the reverse order) + * and to the end of the workbook. + * + * @access public + * @see PHPExcel_Writer_Excel5_Workbook::storeWorkbook() + */ + public function close() + { + $phpSheet = $this->phpSheet; + + $num_sheets = $phpSheet->getParent()->getSheetCount(); + + // Write BOF record + $this->storeBof(0x0010); + + // Write PRINTHEADERS + $this->writePrintHeaders(); + + // Write PRINTGRIDLINES + $this->writePrintGridlines(); + + // Write GRIDSET + $this->writeGridset(); + + // Calculate column widths + $phpSheet->calculateColumnWidths(); + + // Column dimensions + if (($defaultWidth = $phpSheet->getDefaultColumnDimension()->getWidth()) < 0) { + $defaultWidth = PHPExcel_Shared_Font::getDefaultColumnWidthByFont($phpSheet->getParent()->getDefaultStyle()->getFont()); + } + + $columnDimensions = $phpSheet->getColumnDimensions(); + $maxCol = $this->lastColumnIndex -1; + for ($i = 0; $i <= $maxCol; ++$i) { + $hidden = 0; + $level = 0; + $xfIndex = 15; // there are 15 cell style Xfs + + $width = $defaultWidth; + + $columnLetter = PHPExcel_Cell::stringFromColumnIndex($i); + if (isset($columnDimensions[$columnLetter])) { + $columnDimension = $columnDimensions[$columnLetter]; + if ($columnDimension->getWidth() >= 0) { + $width = $columnDimension->getWidth(); + } + $hidden = $columnDimension->getVisible() ? 0 : 1; + $level = $columnDimension->getOutlineLevel(); + $xfIndex = $columnDimension->getXfIndex() + 15; // there are 15 cell style Xfs + } + + // Components of columnInfo: + // $firstcol first column on the range + // $lastcol last column on the range + // $width width to set + // $xfIndex The optional cell style Xf index to apply to the columns + // $hidden The optional hidden atribute + // $level The optional outline level + $this->columnInfo[] = array($i, $i, $width, $xfIndex, $hidden, $level); + } + + // Write GUTS + $this->writeGuts(); + + // Write DEFAULTROWHEIGHT + $this->writeDefaultRowHeight(); + // Write WSBOOL + $this->writeWsbool(); + // Write horizontal and vertical page breaks + $this->writeBreaks(); + // Write page header + $this->writeHeader(); + // Write page footer + $this->writeFooter(); + // Write page horizontal centering + $this->writeHcenter(); + // Write page vertical centering + $this->writeVcenter(); + // Write left margin + $this->writeMarginLeft(); + // Write right margin + $this->writeMarginRight(); + // Write top margin + $this->writeMarginTop(); + // Write bottom margin + $this->writeMarginBottom(); + // Write page setup + $this->writeSetup(); + // Write sheet protection + $this->writeProtect(); + // Write SCENPROTECT + $this->writeScenProtect(); + // Write OBJECTPROTECT + $this->writeObjectProtect(); + // Write sheet password + $this->writePassword(); + // Write DEFCOLWIDTH record + $this->writeDefcol(); + + // Write the COLINFO records if they exist + if (!empty($this->columnInfo)) { + $colcount = count($this->columnInfo); + for ($i = 0; $i < $colcount; ++$i) { + $this->writeColinfo($this->columnInfo[$i]); + } + } + $autoFilterRange = $phpSheet->getAutoFilter()->getRange(); + if (!empty($autoFilterRange)) { + // Write AUTOFILTERINFO + $this->writeAutoFilterInfo(); + } + + // Write sheet dimensions + $this->writeDimensions(); + + // Row dimensions + foreach ($phpSheet->getRowDimensions() as $rowDimension) { + $xfIndex = $rowDimension->getXfIndex() + 15; // there are 15 cellXfs + $this->writeRow($rowDimension->getRowIndex() - 1, $rowDimension->getRowHeight(), $xfIndex, ($rowDimension->getVisible() ? '0' : '1'), $rowDimension->getOutlineLevel()); + } + + // Write Cells + foreach ($phpSheet->getCellCollection() as $cellID) { + $cell = $phpSheet->getCell($cellID); + $row = $cell->getRow() - 1; + $column = PHPExcel_Cell::columnIndexFromString($cell->getColumn()) - 1; + + // Don't break Excel! +// if ($row + 1 > 65536 or $column + 1 > 256) { + if ($row > 65535 || $column > 255) { + break; + } + + // Write cell value + $xfIndex = $cell->getXfIndex() + 15; // there are 15 cell style Xfs + + $cVal = $cell->getValue(); + if ($cVal instanceof PHPExcel_RichText) { + // $this->writeString($row, $column, $cVal->getPlainText(), $xfIndex); + $arrcRun = array(); + $str_len = PHPExcel_Shared_String::CountCharacters($cVal->getPlainText(), 'UTF-8'); + $str_pos = 0; + $elements = $cVal->getRichTextElements(); + foreach ($elements as $element) { + // FONT Index + if ($element instanceof PHPExcel_RichText_Run) { + $str_fontidx = $this->fontHashIndex[$element->getFont()->getHashCode()]; + } else { + $str_fontidx = 0; + } + $arrcRun[] = array('strlen' => $str_pos, 'fontidx' => $str_fontidx); + // Position FROM + $str_pos += PHPExcel_Shared_String::CountCharacters($element->getText(), 'UTF-8'); + } + $this->writeRichTextString($row, $column, $cVal->getPlainText(), $xfIndex, $arrcRun); + } else { + switch ($cell->getDatatype()) { + case PHPExcel_Cell_DataType::TYPE_STRING: + case PHPExcel_Cell_DataType::TYPE_NULL: + if ($cVal === '' || $cVal === null) { + $this->writeBlank($row, $column, $xfIndex); + } else { + $this->writeString($row, $column, $cVal, $xfIndex); + } + break; + + case PHPExcel_Cell_DataType::TYPE_NUMERIC: + $this->writeNumber($row, $column, $cVal, $xfIndex); + break; + + case PHPExcel_Cell_DataType::TYPE_FORMULA: + $calculatedValue = $this->_preCalculateFormulas ? + $cell->getCalculatedValue() : null; + $this->writeFormula($row, $column, $cVal, $xfIndex, $calculatedValue); + break; + + case PHPExcel_Cell_DataType::TYPE_BOOL: + $this->writeBoolErr($row, $column, $cVal, 0, $xfIndex); + break; + + case PHPExcel_Cell_DataType::TYPE_ERROR: + $this->writeBoolErr($row, $column, self::mapErrorCode($cVal), 1, $xfIndex); + break; + + } + } + } + + // Append + $this->writeMsoDrawing(); + + // Write WINDOW2 record + $this->writeWindow2(); + + // Write PLV record + $this->writePageLayoutView(); + + // Write ZOOM record + $this->writeZoom(); + if ($phpSheet->getFreezePane()) { + $this->writePanes(); + } + + // Write SELECTION record + $this->writeSelection(); + + // Write MergedCellsTable Record + $this->writeMergedCells(); + + // Hyperlinks + foreach ($phpSheet->getHyperLinkCollection() as $coordinate => $hyperlink) { + list($column, $row) = PHPExcel_Cell::coordinateFromString($coordinate); + + $url = $hyperlink->getUrl(); + + if (strpos($url, 'sheet://') !== false) { + // internal to current workbook + $url = str_replace('sheet://', 'internal:', $url); + + } elseif (preg_match('/^(http:|https:|ftp:|mailto:)/', $url)) { + // URL + // $url = $url; + + } else { + // external (local file) + $url = 'external:' . $url; + } + + $this->writeUrl($row - 1, PHPExcel_Cell::columnIndexFromString($column) - 1, $url); + } + + $this->writeDataValidity(); + $this->writeSheetLayout(); + + // Write SHEETPROTECTION record + $this->writeSheetProtection(); + $this->writeRangeProtection(); + + $arrConditionalStyles = $phpSheet->getConditionalStylesCollection(); + if (!empty($arrConditionalStyles)) { + $arrConditional = array(); + // @todo CFRule & CFHeader + // Write CFHEADER record + $this->writeCFHeader(); + // Write ConditionalFormattingTable records + foreach ($arrConditionalStyles as $cellCoordinate => $conditionalStyles) { + foreach ($conditionalStyles as $conditional) { + if ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_EXPRESSION + || $conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CELLIS) { + if (!in_array($conditional->getHashCode(), $arrConditional)) { + $arrConditional[] = $conditional->getHashCode(); + // Write CFRULE record + $this->writeCFRule($conditional); + } + } + } + } + } + + $this->storeEof(); + } + + /** + * Write a cell range address in BIFF8 + * always fixed range + * See section 2.5.14 in OpenOffice.org's Documentation of the Microsoft Excel File Format + * + * @param string $range E.g. 'A1' or 'A1:B6' + * @return string Binary data + */ + private function writeBIFF8CellRangeAddressFixed($range = 'A1') + { + $explodes = explode(':', $range); + + // extract first cell, e.g. 'A1' + $firstCell = $explodes[0]; + + // extract last cell, e.g. 'B6' + if (count($explodes) == 1) { + $lastCell = $firstCell; + } else { + $lastCell = $explodes[1]; + } + + $firstCellCoordinates = PHPExcel_Cell::coordinateFromString($firstCell); // e.g. array(0, 1) + $lastCellCoordinates = PHPExcel_Cell::coordinateFromString($lastCell); // e.g. array(1, 6) + + return pack('vvvv', $firstCellCoordinates[1] - 1, $lastCellCoordinates[1] - 1, PHPExcel_Cell::columnIndexFromString($firstCellCoordinates[0]) - 1, PHPExcel_Cell::columnIndexFromString($lastCellCoordinates[0]) - 1); + } + + /** + * Retrieves data from memory in one chunk, or from disk in $buffer + * sized chunks. + * + * @return string The data + */ + public function getData() + { + $buffer = 4096; + + // Return data stored in memory + if (isset($this->_data)) { + $tmp = $this->_data; + unset($this->_data); + return $tmp; + } + // No data to return + return false; + } + + /** + * Set the option to print the row and column headers on the printed page. + * + * @access public + * @param integer $print Whether to print the headers or not. Defaults to 1 (print). + */ + public function printRowColHeaders($print = 1) + { + $this->_print_headers = $print; + } + + /** + * This method sets the properties for outlining and grouping. The defaults + * correspond to Excel's defaults. + * + * @param bool $visible + * @param bool $symbols_below + * @param bool $symbols_right + * @param bool $auto_style + */ + public function setOutline($visible = true, $symbols_below = true, $symbols_right = true, $auto_style = false) + { + $this->outlineOn = $visible; + $this->outlineBelow = $symbols_below; + $this->outlineRight = $symbols_right; + $this->outlineStyle = $auto_style; + + // Ensure this is a boolean vale for Window2 + if ($this->outlineOn) { + $this->outlineOn = 1; + } + } + + /** + * Write a double to the specified row and column (zero indexed). + * An integer can be written as a double. Excel will display an + * integer. $format is optional. + * + * Returns 0 : normal termination + * -2 : row or column out of range + * + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param float $num The number to write + * @param mixed $xfIndex The optional XF format + * @return integer + */ + private function writeNumber($row, $col, $num, $xfIndex) + { + $record = 0x0203; // Record identifier + $length = 0x000E; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("vvv", $row, $col, $xfIndex); + $xl_double = pack("d", $num); + if (self::getByteOrder()) { // if it's Big Endian + $xl_double = strrev($xl_double); + } + + $this->append($header.$data.$xl_double); + return(0); + } + + /** + * Write a LABELSST record or a LABEL record. Which one depends on BIFF version + * + * @param int $row Row index (0-based) + * @param int $col Column index (0-based) + * @param string $str The string + * @param int $xfIndex Index to XF record + */ + private function writeString($row, $col, $str, $xfIndex) + { + $this->writeLabelSst($row, $col, $str, $xfIndex); + } + + /** + * Write a LABELSST record or a LABEL record. Which one depends on BIFF version + * It differs from writeString by the writing of rich text strings. + * @param int $row Row index (0-based) + * @param int $col Column index (0-based) + * @param string $str The string + * @param mixed $xfIndex The XF format index for the cell + * @param array $arrcRun Index to Font record and characters beginning + */ + private function writeRichTextString($row, $col, $str, $xfIndex, $arrcRun) + { + $record = 0x00FD; // Record identifier + $length = 0x000A; // Bytes to follow + $str = PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort($str, $arrcRun); + + /* check if string is already present */ + if (!isset($this->stringTable[$str])) { + $this->stringTable[$str] = $this->stringUnique++; + } + $this->stringTotal++; + + $header = pack('vv', $record, $length); + $data = pack('vvvV', $row, $col, $xfIndex, $this->stringTable[$str]); + $this->append($header.$data); + } + + /** + * Write a string to the specified row and column (zero indexed). + * NOTE: there is an Excel 5 defined limit of 255 characters. + * $format is optional. + * Returns 0 : normal termination + * -2 : row or column out of range + * -3 : long string truncated to 255 chars + * + * @access public + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param string $str The string to write + * @param mixed $xfIndex The XF format index for the cell + * @return integer + */ + private function writeLabel($row, $col, $str, $xfIndex) + { + $strlen = strlen($str); + $record = 0x0204; // Record identifier + $length = 0x0008 + $strlen; // Bytes to follow + + $str_error = 0; + + if ($strlen > $this->xlsStringMaxLength) { // LABEL must be < 255 chars + $str = substr($str, 0, $this->xlsStringMaxLength); + $length = 0x0008 + $this->xlsStringMaxLength; + $strlen = $this->xlsStringMaxLength; + $str_error = -3; + } + + $header = pack("vv", $record, $length); + $data = pack("vvvv", $row, $col, $xfIndex, $strlen); + $this->append($header . $data . $str); + return($str_error); + } + + /** + * Write a string to the specified row and column (zero indexed). + * This is the BIFF8 version (no 255 chars limit). + * $format is optional. + * Returns 0 : normal termination + * -2 : row or column out of range + * -3 : long string truncated to 255 chars + * + * @access public + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param string $str The string to write + * @param mixed $xfIndex The XF format index for the cell + * @return integer + */ + private function writeLabelSst($row, $col, $str, $xfIndex) + { + $record = 0x00FD; // Record identifier + $length = 0x000A; // Bytes to follow + + $str = PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($str); + + /* check if string is already present */ + if (!isset($this->stringTable[$str])) { + $this->stringTable[$str] = $this->stringUnique++; + } + $this->stringTotal++; + + $header = pack('vv', $record, $length); + $data = pack('vvvV', $row, $col, $xfIndex, $this->stringTable[$str]); + $this->append($header.$data); + } + + /** + * Writes a note associated with the cell given by the row and column. + * NOTE records don't have a length limit. + * + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param string $note The note to write + */ + private function writeNote($row, $col, $note) + { + $note_length = strlen($note); + $record = 0x001C; // Record identifier + $max_length = 2048; // Maximun length for a NOTE record + + // Length for this record is no more than 2048 + 6 + $length = 0x0006 + min($note_length, 2048); + $header = pack("vv", $record, $length); + $data = pack("vvv", $row, $col, $note_length); + $this->append($header . $data . substr($note, 0, 2048)); + + for ($i = $max_length; $i < $note_length; $i += $max_length) { + $chunk = substr($note, $i, $max_length); + $length = 0x0006 + strlen($chunk); + $header = pack("vv", $record, $length); + $data = pack("vvv", -1, 0, strlen($chunk)); + $this->append($header.$data.$chunk); + } + return(0); + } + + /** + * Write a blank cell to the specified row and column (zero indexed). + * A blank cell is used to specify formatting without adding a string + * or a number. + * + * A blank cell without a format serves no purpose. Therefore, we don't write + * a BLANK record unless a format is specified. + * + * Returns 0 : normal termination (including no format) + * -1 : insufficient number of arguments + * -2 : row or column out of range + * + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param mixed $xfIndex The XF format index + */ + public function writeBlank($row, $col, $xfIndex) + { + $record = 0x0201; // Record identifier + $length = 0x0006; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("vvv", $row, $col, $xfIndex); + $this->append($header . $data); + return 0; + } + + /** + * Write a boolean or an error type to the specified row and column (zero indexed) + * + * @param int $row Row index (0-based) + * @param int $col Column index (0-based) + * @param int $value + * @param boolean $isError Error or Boolean? + * @param int $xfIndex + */ + private function writeBoolErr($row, $col, $value, $isError, $xfIndex) + { + $record = 0x0205; + $length = 8; + + $header = pack("vv", $record, $length); + $data = pack("vvvCC", $row, $col, $xfIndex, $value, $isError); + $this->append($header . $data); + return 0; + } + + /** + * Write a formula to the specified row and column (zero indexed). + * The textual representation of the formula is passed to the parser in + * Parser.php which returns a packed binary string. + * + * Returns 0 : normal termination + * -1 : formula errors (bad formula) + * -2 : row or column out of range + * + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param string $formula The formula text string + * @param mixed $xfIndex The XF format index + * @param mixed $calculatedValue Calculated value + * @return integer + */ + private function writeFormula($row, $col, $formula, $xfIndex, $calculatedValue) + { + $record = 0x0006; // Record identifier + + // Initialize possible additional value for STRING record that should be written after the FORMULA record? + $stringValue = null; + + // calculated value + if (isset($calculatedValue)) { + // Since we can't yet get the data type of the calculated value, + // we use best effort to determine data type + if (is_bool($calculatedValue)) { + // Boolean value + $num = pack('CCCvCv', 0x01, 0x00, (int)$calculatedValue, 0x00, 0x00, 0xFFFF); + } elseif (is_int($calculatedValue) || is_float($calculatedValue)) { + // Numeric value + $num = pack('d', $calculatedValue); + } elseif (is_string($calculatedValue)) { + if (array_key_exists($calculatedValue, PHPExcel_Cell_DataType::getErrorCodes())) { + // Error value + $num = pack('CCCvCv', 0x02, 0x00, self::mapErrorCode($calculatedValue), 0x00, 0x00, 0xFFFF); + } elseif ($calculatedValue === '') { + // Empty string (and BIFF8) + $num = pack('CCCvCv', 0x03, 0x00, 0x00, 0x00, 0x00, 0xFFFF); + } else { + // Non-empty string value (or empty string BIFF5) + $stringValue = $calculatedValue; + $num = pack('CCCvCv', 0x00, 0x00, 0x00, 0x00, 0x00, 0xFFFF); + } + } else { + // We are really not supposed to reach here + $num = pack('d', 0x00); + } + } else { + $num = pack('d', 0x00); + } + + $grbit = 0x03; // Option flags + $unknown = 0x0000; // Must be zero + + // Strip the '=' or '@' sign at the beginning of the formula string + if ($formula{0} == '=') { + $formula = substr($formula, 1); + } else { + // Error handling + $this->writeString($row, $col, 'Unrecognised character for formula'); + return -1; + } + + // Parse the formula using the parser in Parser.php + try { + $error = $this->parser->parse($formula); + $formula = $this->parser->toReversePolish(); + + $formlen = strlen($formula); // Length of the binary string + $length = 0x16 + $formlen; // Length of the record data + + $header = pack("vv", $record, $length); + + $data = pack("vvv", $row, $col, $xfIndex) + . $num + . pack("vVv", $grbit, $unknown, $formlen); + $this->append($header . $data . $formula); + + // Append also a STRING record if necessary + if ($stringValue !== null) { + $this->writeStringRecord($stringValue); + } + + return 0; + + } catch (PHPExcel_Exception $e) { + // do nothing + } + + } + + /** + * Write a STRING record. This + * + * @param string $stringValue + */ + private function writeStringRecord($stringValue) + { + $record = 0x0207; // Record identifier + $data = PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($stringValue); + + $length = strlen($data); + $header = pack('vv', $record, $length); + + $this->append($header . $data); + } + + /** + * Write a hyperlink. + * This is comprised of two elements: the visible label and + * the invisible link. The visible label is the same as the link unless an + * alternative string is specified. The label is written using the + * writeString() method. Therefore the 255 characters string limit applies. + * $string and $format are optional. + * + * The hyperlink can be to a http, ftp, mail, internal sheet (not yet), or external + * directory url. + * + * Returns 0 : normal termination + * -2 : row or column out of range + * -3 : long string truncated to 255 chars + * + * @param integer $row Row + * @param integer $col Column + * @param string $url URL string + * @return integer + */ + private function writeUrl($row, $col, $url) + { + // Add start row and col to arg list + return($this->writeUrlRange($row, $col, $row, $col, $url)); + } + + /** + * This is the more general form of writeUrl(). It allows a hyperlink to be + * written to a range of cells. This function also decides the type of hyperlink + * to be written. These are either, Web (http, ftp, mailto), Internal + * (Sheet1!A1) or external ('c:\temp\foo.xls#Sheet1!A1'). + * + * @access private + * @see writeUrl() + * @param integer $row1 Start row + * @param integer $col1 Start column + * @param integer $row2 End row + * @param integer $col2 End column + * @param string $url URL string + * @return integer + */ + public function writeUrlRange($row1, $col1, $row2, $col2, $url) + { + // Check for internal/external sheet links or default to web link + if (preg_match('[^internal:]', $url)) { + return($this->writeUrlInternal($row1, $col1, $row2, $col2, $url)); + } + if (preg_match('[^external:]', $url)) { + return($this->writeUrlExternal($row1, $col1, $row2, $col2, $url)); + } + return($this->writeUrlWeb($row1, $col1, $row2, $col2, $url)); + } + + /** + * Used to write http, ftp and mailto hyperlinks. + * The link type ($options) is 0x03 is the same as absolute dir ref without + * sheet. However it is differentiated by the $unknown2 data stream. + * + * @access private + * @see writeUrl() + * @param integer $row1 Start row + * @param integer $col1 Start column + * @param integer $row2 End row + * @param integer $col2 End column + * @param string $url URL string + * @return integer + */ + public function writeUrlWeb($row1, $col1, $row2, $col2, $url) + { + $record = 0x01B8; // Record identifier + $length = 0x00000; // Bytes to follow + + // Pack the undocumented parts of the hyperlink stream + $unknown1 = pack("H*", "D0C9EA79F9BACE118C8200AA004BA90B02000000"); + $unknown2 = pack("H*", "E0C9EA79F9BACE118C8200AA004BA90B"); + + // Pack the option flags + $options = pack("V", 0x03); + + // Convert URL to a null terminated wchar string + $url = join("\0", preg_split("''", $url, -1, PREG_SPLIT_NO_EMPTY)); + $url = $url . "\0\0\0"; + + // Pack the length of the URL + $url_len = pack("V", strlen($url)); + + // Calculate the data length + $length = 0x34 + strlen($url); + + // Pack the header data + $header = pack("vv", $record, $length); + $data = pack("vvvv", $row1, $row2, $col1, $col2); + + // Write the packed data + $this->append($header . $data . + $unknown1 . $options . + $unknown2 . $url_len . $url); + return 0; + } + + /** + * Used to write internal reference hyperlinks such as "Sheet1!A1". + * + * @access private + * @see writeUrl() + * @param integer $row1 Start row + * @param integer $col1 Start column + * @param integer $row2 End row + * @param integer $col2 End column + * @param string $url URL string + * @return integer + */ + public function writeUrlInternal($row1, $col1, $row2, $col2, $url) + { + $record = 0x01B8; // Record identifier + $length = 0x00000; // Bytes to follow + + // Strip URL type + $url = preg_replace('/^internal:/', '', $url); + + // Pack the undocumented parts of the hyperlink stream + $unknown1 = pack("H*", "D0C9EA79F9BACE118C8200AA004BA90B02000000"); + + // Pack the option flags + $options = pack("V", 0x08); + + // Convert the URL type and to a null terminated wchar string + $url .= "\0"; + + // character count + $url_len = PHPExcel_Shared_String::CountCharacters($url); + $url_len = pack('V', $url_len); + + $url = PHPExcel_Shared_String::ConvertEncoding($url, 'UTF-16LE', 'UTF-8'); + + // Calculate the data length + $length = 0x24 + strlen($url); + + // Pack the header data + $header = pack("vv", $record, $length); + $data = pack("vvvv", $row1, $row2, $col1, $col2); + + // Write the packed data + $this->append($header . $data . + $unknown1 . $options . + $url_len . $url); + return 0; + } + + /** + * Write links to external directory names such as 'c:\foo.xls', + * c:\foo.xls#Sheet1!A1', '../../foo.xls'. and '../../foo.xls#Sheet1!A1'. + * + * Note: Excel writes some relative links with the $dir_long string. We ignore + * these cases for the sake of simpler code. + * + * @access private + * @see writeUrl() + * @param integer $row1 Start row + * @param integer $col1 Start column + * @param integer $row2 End row + * @param integer $col2 End column + * @param string $url URL string + * @return integer + */ + public function writeUrlExternal($row1, $col1, $row2, $col2, $url) + { + // Network drives are different. We will handle them separately + // MS/Novell network drives and shares start with \\ + if (preg_match('[^external:\\\\]', $url)) { + return; //($this->writeUrlExternal_net($row1, $col1, $row2, $col2, $url, $str, $format)); + } + + $record = 0x01B8; // Record identifier + $length = 0x00000; // Bytes to follow + + // Strip URL type and change Unix dir separator to Dos style (if needed) + // + $url = preg_replace('/^external:/', '', $url); + $url = preg_replace('/\//', "\\", $url); + + // Determine if the link is relative or absolute: + // relative if link contains no dir separator, "somefile.xls" + // relative if link starts with up-dir, "..\..\somefile.xls" + // otherwise, absolute + + $absolute = 0x00; // relative path + if (preg_match('/^[A-Z]:/', $url)) { + $absolute = 0x02; // absolute path on Windows, e.g. C:\... + } + $link_type = 0x01 | $absolute; + + // Determine if the link contains a sheet reference and change some of the + // parameters accordingly. + // Split the dir name and sheet name (if it exists) + $dir_long = $url; + if (preg_match("/\#/", $url)) { + $link_type |= 0x08; + } + + + // Pack the link type + $link_type = pack("V", $link_type); + + // Calculate the up-level dir count e.g.. (..\..\..\ == 3) + $up_count = preg_match_all("/\.\.\\\/", $dir_long, $useless); + $up_count = pack("v", $up_count); + + // Store the short dos dir name (null terminated) + $dir_short = preg_replace("/\.\.\\\/", '', $dir_long) . "\0"; + + // Store the long dir name as a wchar string (non-null terminated) + $dir_long = $dir_long . "\0"; + + // Pack the lengths of the dir strings + $dir_short_len = pack("V", strlen($dir_short)); + $dir_long_len = pack("V", strlen($dir_long)); + $stream_len = pack("V", 0); //strlen($dir_long) + 0x06); + + // Pack the undocumented parts of the hyperlink stream + $unknown1 = pack("H*", 'D0C9EA79F9BACE118C8200AA004BA90B02000000'); + $unknown2 = pack("H*", '0303000000000000C000000000000046'); + $unknown3 = pack("H*", 'FFFFADDE000000000000000000000000000000000000000'); + $unknown4 = pack("v", 0x03); + + // Pack the main data stream + $data = pack("vvvv", $row1, $row2, $col1, $col2) . + $unknown1 . + $link_type . + $unknown2 . + $up_count . + $dir_short_len. + $dir_short . + $unknown3 . + $stream_len ;/*. + $dir_long_len . + $unknown4 . + $dir_long . + $sheet_len . + $sheet ;*/ + + // Pack the header data + $length = strlen($data); + $header = pack("vv", $record, $length); + + // Write the packed data + $this->append($header. $data); + return 0; + } + + /** + * This method is used to set the height and format for a row. + * + * @param integer $row The row to set + * @param integer $height Height we are giving to the row. + * Use null to set XF without setting height + * @param integer $xfIndex The optional cell style Xf index to apply to the columns + * @param bool $hidden The optional hidden attribute + * @param integer $level The optional outline level for row, in range [0,7] + */ + private function writeRow($row, $height, $xfIndex, $hidden = false, $level = 0) + { + $record = 0x0208; // Record identifier + $length = 0x0010; // Number of bytes to follow + + $colMic = 0x0000; // First defined column + $colMac = 0x0000; // Last defined column + $irwMac = 0x0000; // Used by Excel to optimise loading + $reserved = 0x0000; // Reserved + $grbit = 0x0000; // Option flags + $ixfe = $xfIndex; + + if ($height < 0) { + $height = null; + } + + // Use writeRow($row, null, $XF) to set XF format without setting height + if ($height != null) { + $miyRw = $height * 20; // row height + } else { + $miyRw = 0xff; // default row height is 256 + } + + // Set the options flags. fUnsynced is used to show that the font and row + // heights are not compatible. This is usually the case for WriteExcel. + // The collapsed flag 0x10 doesn't seem to be used to indicate that a row + // is collapsed. Instead it is used to indicate that the previous row is + // collapsed. The zero height flag, 0x20, is used to collapse a row. + + $grbit |= $level; + if ($hidden) { + $grbit |= 0x0030; + } + if ($height !== null) { + $grbit |= 0x0040; // fUnsynced + } + if ($xfIndex !== 0xF) { + $grbit |= 0x0080; + } + $grbit |= 0x0100; + + $header = pack("vv", $record, $length); + $data = pack("vvvvvvvv", $row, $colMic, $colMac, $miyRw, $irwMac, $reserved, $grbit, $ixfe); + $this->append($header.$data); + } + + /** + * Writes Excel DIMENSIONS to define the area in which there is data. + */ + private function writeDimensions() + { + $record = 0x0200; // Record identifier + + $length = 0x000E; + $data = pack('VVvvv', $this->firstRowIndex, $this->lastRowIndex + 1, $this->firstColumnIndex, $this->lastColumnIndex + 1, 0x0000); // reserved + + $header = pack("vv", $record, $length); + $this->append($header.$data); + } + + /** + * Write BIFF record Window2. + */ + private function writeWindow2() + { + $record = 0x023E; // Record identifier + $length = 0x0012; + + $grbit = 0x00B6; // Option flags + $rwTop = 0x0000; // Top row visible in window + $colLeft = 0x0000; // Leftmost column visible in window + + + // The options flags that comprise $grbit + $fDspFmla = 0; // 0 - bit + $fDspGrid = $this->phpSheet->getShowGridlines() ? 1 : 0; // 1 + $fDspRwCol = $this->phpSheet->getShowRowColHeaders() ? 1 : 0; // 2 + $fFrozen = $this->phpSheet->getFreezePane() ? 1 : 0; // 3 + $fDspZeros = 1; // 4 + $fDefaultHdr = 1; // 5 + $fArabic = $this->phpSheet->getRightToLeft() ? 1 : 0; // 6 + $fDspGuts = $this->outlineOn; // 7 + $fFrozenNoSplit = 0; // 0 - bit + // no support in PHPExcel for selected sheet, therefore sheet is only selected if it is the active sheet + $fSelected = ($this->phpSheet === $this->phpSheet->getParent()->getActiveSheet()) ? 1 : 0; + $fPaged = 1; // 2 + $fPageBreakPreview = $this->phpSheet->getSheetView()->getView() === PHPExcel_Worksheet_SheetView::SHEETVIEW_PAGE_BREAK_PREVIEW; + + $grbit = $fDspFmla; + $grbit |= $fDspGrid << 1; + $grbit |= $fDspRwCol << 2; + $grbit |= $fFrozen << 3; + $grbit |= $fDspZeros << 4; + $grbit |= $fDefaultHdr << 5; + $grbit |= $fArabic << 6; + $grbit |= $fDspGuts << 7; + $grbit |= $fFrozenNoSplit << 8; + $grbit |= $fSelected << 9; + $grbit |= $fPaged << 10; + $grbit |= $fPageBreakPreview << 11; + + $header = pack("vv", $record, $length); + $data = pack("vvv", $grbit, $rwTop, $colLeft); + + // FIXME !!! + $rgbHdr = 0x0040; // Row/column heading and gridline color index + $zoom_factor_page_break = ($fPageBreakPreview ? $this->phpSheet->getSheetView()->getZoomScale() : 0x0000); + $zoom_factor_normal = $this->phpSheet->getSheetView()->getZoomScaleNormal(); + + $data .= pack("vvvvV", $rgbHdr, 0x0000, $zoom_factor_page_break, $zoom_factor_normal, 0x00000000); + + $this->append($header.$data); + } + + /** + * Write BIFF record DEFAULTROWHEIGHT. + */ + private function writeDefaultRowHeight() + { + $defaultRowHeight = $this->phpSheet->getDefaultRowDimension()->getRowHeight(); + + if ($defaultRowHeight < 0) { + return; + } + + // convert to twips + $defaultRowHeight = (int) 20 * $defaultRowHeight; + + $record = 0x0225; // Record identifier + $length = 0x0004; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("vv", 1, $defaultRowHeight); + $this->append($header . $data); + } + + /** + * Write BIFF record DEFCOLWIDTH if COLINFO records are in use. + */ + private function writeDefcol() + { + $defaultColWidth = 8; + + $record = 0x0055; // Record identifier + $length = 0x0002; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("v", $defaultColWidth); + $this->append($header . $data); + } + + /** + * Write BIFF record COLINFO to define column widths + * + * Note: The SDK says the record length is 0x0B but Excel writes a 0x0C + * length record. + * + * @param array $col_array This is the only parameter received and is composed of the following: + * 0 => First formatted column, + * 1 => Last formatted column, + * 2 => Col width (8.43 is Excel default), + * 3 => The optional XF format of the column, + * 4 => Option flags. + * 5 => Optional outline level + */ + private function writeColinfo($col_array) + { + if (isset($col_array[0])) { + $colFirst = $col_array[0]; + } + if (isset($col_array[1])) { + $colLast = $col_array[1]; + } + if (isset($col_array[2])) { + $coldx = $col_array[2]; + } else { + $coldx = 8.43; + } + if (isset($col_array[3])) { + $xfIndex = $col_array[3]; + } else { + $xfIndex = 15; + } + if (isset($col_array[4])) { + $grbit = $col_array[4]; + } else { + $grbit = 0; + } + if (isset($col_array[5])) { + $level = $col_array[5]; + } else { + $level = 0; + } + $record = 0x007D; // Record identifier + $length = 0x000C; // Number of bytes to follow + + $coldx *= 256; // Convert to units of 1/256 of a char + + $ixfe = $xfIndex; + $reserved = 0x0000; // Reserved + + $level = max(0, min($level, 7)); + $grbit |= $level << 8; + + $header = pack("vv", $record, $length); + $data = pack("vvvvvv", $colFirst, $colLast, $coldx, $ixfe, $grbit, $reserved); + $this->append($header.$data); + } + + /** + * Write BIFF record SELECTION. + */ + private function writeSelection() + { + // look up the selected cell range + $selectedCells = $this->phpSheet->getSelectedCells(); + $selectedCells = PHPExcel_Cell::splitRange($this->phpSheet->getSelectedCells()); + $selectedCells = $selectedCells[0]; + if (count($selectedCells) == 2) { + list($first, $last) = $selectedCells; + } else { + $first = $selectedCells[0]; + $last = $selectedCells[0]; + } + + list($colFirst, $rwFirst) = PHPExcel_Cell::coordinateFromString($first); + $colFirst = PHPExcel_Cell::columnIndexFromString($colFirst) - 1; // base 0 column index + --$rwFirst; // base 0 row index + + list($colLast, $rwLast) = PHPExcel_Cell::coordinateFromString($last); + $colLast = PHPExcel_Cell::columnIndexFromString($colLast) - 1; // base 0 column index + --$rwLast; // base 0 row index + + // make sure we are not out of bounds + $colFirst = min($colFirst, 255); + $colLast = min($colLast, 255); + + $rwFirst = min($rwFirst, 65535); + $rwLast = min($rwLast, 65535); + + $record = 0x001D; // Record identifier + $length = 0x000F; // Number of bytes to follow + + $pnn = $this->activePane; // Pane position + $rwAct = $rwFirst; // Active row + $colAct = $colFirst; // Active column + $irefAct = 0; // Active cell ref + $cref = 1; // Number of refs + + if (!isset($rwLast)) { + $rwLast = $rwFirst; // Last row in reference + } + if (!isset($colLast)) { + $colLast = $colFirst; // Last col in reference + } + + // Swap last row/col for first row/col as necessary + if ($rwFirst > $rwLast) { + list($rwFirst, $rwLast) = array($rwLast, $rwFirst); + } + + if ($colFirst > $colLast) { + list($colFirst, $colLast) = array($colLast, $colFirst); + } + + $header = pack("vv", $record, $length); + $data = pack("CvvvvvvCC", $pnn, $rwAct, $colAct, $irefAct, $cref, $rwFirst, $rwLast, $colFirst, $colLast); + $this->append($header . $data); + } + + /** + * Store the MERGEDCELLS records for all ranges of merged cells + */ + private function writeMergedCells() + { + $mergeCells = $this->phpSheet->getMergeCells(); + $countMergeCells = count($mergeCells); + + if ($countMergeCells == 0) { + return; + } + + // maximum allowed number of merged cells per record + $maxCountMergeCellsPerRecord = 1027; + + // record identifier + $record = 0x00E5; + + // counter for total number of merged cells treated so far by the writer + $i = 0; + + // counter for number of merged cells written in record currently being written + $j = 0; + + // initialize record data + $recordData = ''; + + // loop through the merged cells + foreach ($mergeCells as $mergeCell) { + ++$i; + ++$j; + + // extract the row and column indexes + $range = PHPExcel_Cell::splitRange($mergeCell); + list($first, $last) = $range[0]; + list($firstColumn, $firstRow) = PHPExcel_Cell::coordinateFromString($first); + list($lastColumn, $lastRow) = PHPExcel_Cell::coordinateFromString($last); + + $recordData .= pack('vvvv', $firstRow - 1, $lastRow - 1, PHPExcel_Cell::columnIndexFromString($firstColumn) - 1, PHPExcel_Cell::columnIndexFromString($lastColumn) - 1); + + // flush record if we have reached limit for number of merged cells, or reached final merged cell + if ($j == $maxCountMergeCellsPerRecord or $i == $countMergeCells) { + $recordData = pack('v', $j) . $recordData; + $length = strlen($recordData); + $header = pack('vv', $record, $length); + $this->append($header . $recordData); + + // initialize for next record, if any + $recordData = ''; + $j = 0; + } + } + } + + /** + * Write SHEETLAYOUT record + */ + private function writeSheetLayout() + { + if (!$this->phpSheet->isTabColorSet()) { + return; + } + + $recordData = pack( + 'vvVVVvv', + 0x0862, + 0x0000, // unused + 0x00000000, // unused + 0x00000000, // unused + 0x00000014, // size of record data + $this->colors[$this->phpSheet->getTabColor()->getRGB()], // color index + 0x0000 // unused + ); + + $length = strlen($recordData); + + $record = 0x0862; // Record identifier + $header = pack('vv', $record, $length); + $this->append($header . $recordData); + } + + /** + * Write SHEETPROTECTION + */ + private function writeSheetProtection() + { + // record identifier + $record = 0x0867; + + // prepare options + $options = (int) !$this->phpSheet->getProtection()->getObjects() + | (int) !$this->phpSheet->getProtection()->getScenarios() << 1 + | (int) !$this->phpSheet->getProtection()->getFormatCells() << 2 + | (int) !$this->phpSheet->getProtection()->getFormatColumns() << 3 + | (int) !$this->phpSheet->getProtection()->getFormatRows() << 4 + | (int) !$this->phpSheet->getProtection()->getInsertColumns() << 5 + | (int) !$this->phpSheet->getProtection()->getInsertRows() << 6 + | (int) !$this->phpSheet->getProtection()->getInsertHyperlinks() << 7 + | (int) !$this->phpSheet->getProtection()->getDeleteColumns() << 8 + | (int) !$this->phpSheet->getProtection()->getDeleteRows() << 9 + | (int) !$this->phpSheet->getProtection()->getSelectLockedCells() << 10 + | (int) !$this->phpSheet->getProtection()->getSort() << 11 + | (int) !$this->phpSheet->getProtection()->getAutoFilter() << 12 + | (int) !$this->phpSheet->getProtection()->getPivotTables() << 13 + | (int) !$this->phpSheet->getProtection()->getSelectUnlockedCells() << 14 ; + + // record data + $recordData = pack( + 'vVVCVVvv', + 0x0867, // repeated record identifier + 0x0000, // not used + 0x0000, // not used + 0x00, // not used + 0x01000200, // unknown data + 0xFFFFFFFF, // unknown data + $options, // options + 0x0000 // not used + ); + + $length = strlen($recordData); + $header = pack('vv', $record, $length); + + $this->append($header . $recordData); + } + + /** + * Write BIFF record RANGEPROTECTION + * + * Openoffice.org's Documentaion of the Microsoft Excel File Format uses term RANGEPROTECTION for these records + * Microsoft Office Excel 97-2007 Binary File Format Specification uses term FEAT for these records + */ + private function writeRangeProtection() + { + foreach ($this->phpSheet->getProtectedCells() as $range => $password) { + // number of ranges, e.g. 'A1:B3 C20:D25' + $cellRanges = explode(' ', $range); + $cref = count($cellRanges); + + $recordData = pack( + 'vvVVvCVvVv', + 0x0868, + 0x00, + 0x0000, + 0x0000, + 0x02, + 0x0, + 0x0000, + $cref, + 0x0000, + 0x00 + ); + + foreach ($cellRanges as $cellRange) { + $recordData .= $this->writeBIFF8CellRangeAddressFixed($cellRange); + } + + // the rgbFeat structure + $recordData .= pack( + 'VV', + 0x0000, + hexdec($password) + ); + + $recordData .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong('p' . md5($recordData)); + + $length = strlen($recordData); + + $record = 0x0868; // Record identifier + $header = pack("vv", $record, $length); + $this->append($header . $recordData); + } + } + + /** + * Write BIFF record EXTERNCOUNT to indicate the number of external sheet + * references in a worksheet. + * + * Excel only stores references to external sheets that are used in formulas. + * For simplicity we store references to all the sheets in the workbook + * regardless of whether they are used or not. This reduces the overall + * complexity and eliminates the need for a two way dialogue between the formula + * parser the worksheet objects. + * + * @param integer $count The number of external sheet references in this worksheet + */ + private function writeExterncount($count) + { + $record = 0x0016; // Record identifier + $length = 0x0002; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("v", $count); + $this->append($header . $data); + } + + /** + * Writes the Excel BIFF EXTERNSHEET record. These references are used by + * formulas. A formula references a sheet name via an index. Since we store a + * reference to all of the external worksheets the EXTERNSHEET index is the same + * as the worksheet index. + * + * @param string $sheetname The name of a external worksheet + */ + private function writeExternsheet($sheetname) + { + $record = 0x0017; // Record identifier + + // References to the current sheet are encoded differently to references to + // external sheets. + // + if ($this->phpSheet->getTitle() == $sheetname) { + $sheetname = ''; + $length = 0x02; // The following 2 bytes + $cch = 1; // The following byte + $rgch = 0x02; // Self reference + } else { + $length = 0x02 + strlen($sheetname); + $cch = strlen($sheetname); + $rgch = 0x03; // Reference to a sheet in the current workbook + } + + $header = pack("vv", $record, $length); + $data = pack("CC", $cch, $rgch); + $this->append($header . $data . $sheetname); + } + + /** + * Writes the Excel BIFF PANE record. + * The panes can either be frozen or thawed (unfrozen). + * Frozen panes are specified in terms of an integer number of rows and columns. + * Thawed panes are specified in terms of Excel's units for rows and columns. + */ + private function writePanes() + { + $panes = array(); + if ($freezePane = $this->phpSheet->getFreezePane()) { + list($column, $row) = PHPExcel_Cell::coordinateFromString($freezePane); + $panes[0] = $row - 1; + $panes[1] = PHPExcel_Cell::columnIndexFromString($column) - 1; + } else { + // thaw panes + return; + } + + $y = isset($panes[0]) ? $panes[0] : null; + $x = isset($panes[1]) ? $panes[1] : null; + $rwTop = isset($panes[2]) ? $panes[2] : null; + $colLeft = isset($panes[3]) ? $panes[3] : null; + if (count($panes) > 4) { // if Active pane was received + $pnnAct = $panes[4]; + } else { + $pnnAct = null; + } + $record = 0x0041; // Record identifier + $length = 0x000A; // Number of bytes to follow + + // Code specific to frozen or thawed panes. + if ($this->phpSheet->getFreezePane()) { + // Set default values for $rwTop and $colLeft + if (!isset($rwTop)) { + $rwTop = $y; + } + if (!isset($colLeft)) { + $colLeft = $x; + } + } else { + // Set default values for $rwTop and $colLeft + if (!isset($rwTop)) { + $rwTop = 0; + } + if (!isset($colLeft)) { + $colLeft = 0; + } + + // Convert Excel's row and column units to the internal units. + // The default row height is 12.75 + // The default column width is 8.43 + // The following slope and intersection values were interpolated. + // + $y = 20*$y + 255; + $x = 113.879*$x + 390; + } + + + // Determine which pane should be active. There is also the undocumented + // option to override this should it be necessary: may be removed later. + // + if (!isset($pnnAct)) { + if ($x != 0 && $y != 0) { + $pnnAct = 0; // Bottom right + } + if ($x != 0 && $y == 0) { + $pnnAct = 1; // Top right + } + if ($x == 0 && $y != 0) { + $pnnAct = 2; // Bottom left + } + if ($x == 0 && $y == 0) { + $pnnAct = 3; // Top left + } + } + + $this->activePane = $pnnAct; // Used in writeSelection + + $header = pack("vv", $record, $length); + $data = pack("vvvvv", $x, $y, $rwTop, $colLeft, $pnnAct); + $this->append($header . $data); + } + + /** + * Store the page setup SETUP BIFF record. + */ + private function writeSetup() + { + $record = 0x00A1; // Record identifier + $length = 0x0022; // Number of bytes to follow + + $iPaperSize = $this->phpSheet->getPageSetup()->getPaperSize(); // Paper size + + $iScale = $this->phpSheet->getPageSetup()->getScale() ? + $this->phpSheet->getPageSetup()->getScale() : 100; // Print scaling factor + + $iPageStart = 0x01; // Starting page number + $iFitWidth = (int) $this->phpSheet->getPageSetup()->getFitToWidth(); // Fit to number of pages wide + $iFitHeight = (int) $this->phpSheet->getPageSetup()->getFitToHeight(); // Fit to number of pages high + $grbit = 0x00; // Option flags + $iRes = 0x0258; // Print resolution + $iVRes = 0x0258; // Vertical print resolution + + $numHdr = $this->phpSheet->getPageMargins()->getHeader(); // Header Margin + + $numFtr = $this->phpSheet->getPageMargins()->getFooter(); // Footer Margin + $iCopies = 0x01; // Number of copies + + $fLeftToRight = 0x0; // Print over then down + + // Page orientation + $fLandscape = ($this->phpSheet->getPageSetup()->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? + 0x0 : 0x1; + + $fNoPls = 0x0; // Setup not read from printer + $fNoColor = 0x0; // Print black and white + $fDraft = 0x0; // Print draft quality + $fNotes = 0x0; // Print notes + $fNoOrient = 0x0; // Orientation not set + $fUsePage = 0x0; // Use custom starting page + + $grbit = $fLeftToRight; + $grbit |= $fLandscape << 1; + $grbit |= $fNoPls << 2; + $grbit |= $fNoColor << 3; + $grbit |= $fDraft << 4; + $grbit |= $fNotes << 5; + $grbit |= $fNoOrient << 6; + $grbit |= $fUsePage << 7; + + $numHdr = pack("d", $numHdr); + $numFtr = pack("d", $numFtr); + if (self::getByteOrder()) { // if it's Big Endian + $numHdr = strrev($numHdr); + $numFtr = strrev($numFtr); + } + + $header = pack("vv", $record, $length); + $data1 = pack("vvvvvvvv", $iPaperSize, $iScale, $iPageStart, $iFitWidth, $iFitHeight, $grbit, $iRes, $iVRes); + $data2 = $numHdr.$numFtr; + $data3 = pack("v", $iCopies); + $this->append($header . $data1 . $data2 . $data3); + } + + /** + * Store the header caption BIFF record. + */ + private function writeHeader() + { + $record = 0x0014; // Record identifier + + /* removing for now + // need to fix character count (multibyte!) + if (strlen($this->phpSheet->getHeaderFooter()->getOddHeader()) <= 255) { + $str = $this->phpSheet->getHeaderFooter()->getOddHeader(); // header string + } else { + $str = ''; + } + */ + + $recordData = PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($this->phpSheet->getHeaderFooter()->getOddHeader()); + $length = strlen($recordData); + + $header = pack("vv", $record, $length); + + $this->append($header . $recordData); + } + + /** + * Store the footer caption BIFF record. + */ + private function writeFooter() + { + $record = 0x0015; // Record identifier + + /* removing for now + // need to fix character count (multibyte!) + if (strlen($this->phpSheet->getHeaderFooter()->getOddFooter()) <= 255) { + $str = $this->phpSheet->getHeaderFooter()->getOddFooter(); + } else { + $str = ''; + } + */ + + $recordData = PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($this->phpSheet->getHeaderFooter()->getOddFooter()); + $length = strlen($recordData); + + $header = pack("vv", $record, $length); + + $this->append($header . $recordData); + } + + /** + * Store the horizontal centering HCENTER BIFF record. + * + * @access private + */ + private function writeHcenter() + { + $record = 0x0083; // Record identifier + $length = 0x0002; // Bytes to follow + + $fHCenter = $this->phpSheet->getPageSetup()->getHorizontalCentered() ? 1 : 0; // Horizontal centering + + $header = pack("vv", $record, $length); + $data = pack("v", $fHCenter); + + $this->append($header.$data); + } + + /** + * Store the vertical centering VCENTER BIFF record. + */ + private function writeVcenter() + { + $record = 0x0084; // Record identifier + $length = 0x0002; // Bytes to follow + + $fVCenter = $this->phpSheet->getPageSetup()->getVerticalCentered() ? 1 : 0; // Horizontal centering + + $header = pack("vv", $record, $length); + $data = pack("v", $fVCenter); + $this->append($header . $data); + } + + /** + * Store the LEFTMARGIN BIFF record. + */ + private function writeMarginLeft() + { + $record = 0x0026; // Record identifier + $length = 0x0008; // Bytes to follow + + $margin = $this->phpSheet->getPageMargins()->getLeft(); // Margin in inches + + $header = pack("vv", $record, $length); + $data = pack("d", $margin); + if (self::getByteOrder()) { // if it's Big Endian + $data = strrev($data); + } + + $this->append($header . $data); + } + + /** + * Store the RIGHTMARGIN BIFF record. + */ + private function writeMarginRight() + { + $record = 0x0027; // Record identifier + $length = 0x0008; // Bytes to follow + + $margin = $this->phpSheet->getPageMargins()->getRight(); // Margin in inches + + $header = pack("vv", $record, $length); + $data = pack("d", $margin); + if (self::getByteOrder()) { // if it's Big Endian + $data = strrev($data); + } + + $this->append($header . $data); + } + + /** + * Store the TOPMARGIN BIFF record. + */ + private function writeMarginTop() + { + $record = 0x0028; // Record identifier + $length = 0x0008; // Bytes to follow + + $margin = $this->phpSheet->getPageMargins()->getTop(); // Margin in inches + + $header = pack("vv", $record, $length); + $data = pack("d", $margin); + if (self::getByteOrder()) { // if it's Big Endian + $data = strrev($data); + } + + $this->append($header . $data); + } + + /** + * Store the BOTTOMMARGIN BIFF record. + */ + private function writeMarginBottom() + { + $record = 0x0029; // Record identifier + $length = 0x0008; // Bytes to follow + + $margin = $this->phpSheet->getPageMargins()->getBottom(); // Margin in inches + + $header = pack("vv", $record, $length); + $data = pack("d", $margin); + if (self::getByteOrder()) { // if it's Big Endian + $data = strrev($data); + } + + $this->append($header . $data); + } + + /** + * Write the PRINTHEADERS BIFF record. + */ + private function writePrintHeaders() + { + $record = 0x002a; // Record identifier + $length = 0x0002; // Bytes to follow + + $fPrintRwCol = $this->_print_headers; // Boolean flag + + $header = pack("vv", $record, $length); + $data = pack("v", $fPrintRwCol); + $this->append($header . $data); + } + + /** + * Write the PRINTGRIDLINES BIFF record. Must be used in conjunction with the + * GRIDSET record. + */ + private function writePrintGridlines() + { + $record = 0x002b; // Record identifier + $length = 0x0002; // Bytes to follow + + $fPrintGrid = $this->phpSheet->getPrintGridlines() ? 1 : 0; // Boolean flag + + $header = pack("vv", $record, $length); + $data = pack("v", $fPrintGrid); + $this->append($header . $data); + } + + /** + * Write the GRIDSET BIFF record. Must be used in conjunction with the + * PRINTGRIDLINES record. + */ + private function writeGridset() + { + $record = 0x0082; // Record identifier + $length = 0x0002; // Bytes to follow + + $fGridSet = !$this->phpSheet->getPrintGridlines(); // Boolean flag + + $header = pack("vv", $record, $length); + $data = pack("v", $fGridSet); + $this->append($header . $data); + } + + /** + * Write the AUTOFILTERINFO BIFF record. This is used to configure the number of autofilter select used in the sheet. + */ + private function writeAutoFilterInfo() + { + $record = 0x009D; // Record identifier + $length = 0x0002; // Bytes to follow + + $rangeBounds = PHPExcel_Cell::rangeBoundaries($this->phpSheet->getAutoFilter()->getRange()); + $iNumFilters = 1 + $rangeBounds[1][0] - $rangeBounds[0][0]; + + $header = pack("vv", $record, $length); + $data = pack("v", $iNumFilters); + $this->append($header . $data); + } + + /** + * Write the GUTS BIFF record. This is used to configure the gutter margins + * where Excel outline symbols are displayed. The visibility of the gutters is + * controlled by a flag in WSBOOL. + * + * @see writeWsbool() + */ + private function writeGuts() + { + $record = 0x0080; // Record identifier + $length = 0x0008; // Bytes to follow + + $dxRwGut = 0x0000; // Size of row gutter + $dxColGut = 0x0000; // Size of col gutter + + // determine maximum row outline level + $maxRowOutlineLevel = 0; + foreach ($this->phpSheet->getRowDimensions() as $rowDimension) { + $maxRowOutlineLevel = max($maxRowOutlineLevel, $rowDimension->getOutlineLevel()); + } + + $col_level = 0; + + // Calculate the maximum column outline level. The equivalent calculation + // for the row outline level is carried out in writeRow(). + $colcount = count($this->columnInfo); + for ($i = 0; $i < $colcount; ++$i) { + $col_level = max($this->columnInfo[$i][5], $col_level); + } + + // Set the limits for the outline levels (0 <= x <= 7). + $col_level = max(0, min($col_level, 7)); + + // The displayed level is one greater than the max outline levels + if ($maxRowOutlineLevel) { + ++$maxRowOutlineLevel; + } + if ($col_level) { + ++$col_level; + } + + $header = pack("vv", $record, $length); + $data = pack("vvvv", $dxRwGut, $dxColGut, $maxRowOutlineLevel, $col_level); + + $this->append($header.$data); + } + + /** + * Write the WSBOOL BIFF record, mainly for fit-to-page. Used in conjunction + * with the SETUP record. + */ + private function writeWsbool() + { + $record = 0x0081; // Record identifier + $length = 0x0002; // Bytes to follow + $grbit = 0x0000; + + // The only option that is of interest is the flag for fit to page. So we + // set all the options in one go. + // + // Set the option flags + $grbit |= 0x0001; // Auto page breaks visible + if ($this->outlineStyle) { + $grbit |= 0x0020; // Auto outline styles + } + if ($this->phpSheet->getShowSummaryBelow()) { + $grbit |= 0x0040; // Outline summary below + } + if ($this->phpSheet->getShowSummaryRight()) { + $grbit |= 0x0080; // Outline summary right + } + if ($this->phpSheet->getPageSetup()->getFitToPage()) { + $grbit |= 0x0100; // Page setup fit to page + } + if ($this->outlineOn) { + $grbit |= 0x0400; // Outline symbols displayed + } + + $header = pack("vv", $record, $length); + $data = pack("v", $grbit); + $this->append($header . $data); + } + + /** + * Write the HORIZONTALPAGEBREAKS and VERTICALPAGEBREAKS BIFF records. + */ + private function writeBreaks() + { + // initialize + $vbreaks = array(); + $hbreaks = array(); + + foreach ($this->phpSheet->getBreaks() as $cell => $breakType) { + // Fetch coordinates + $coordinates = PHPExcel_Cell::coordinateFromString($cell); + + // Decide what to do by the type of break + switch ($breakType) { + case PHPExcel_Worksheet::BREAK_COLUMN: + // Add to list of vertical breaks + $vbreaks[] = PHPExcel_Cell::columnIndexFromString($coordinates[0]) - 1; + break; + case PHPExcel_Worksheet::BREAK_ROW: + // Add to list of horizontal breaks + $hbreaks[] = $coordinates[1]; + break; + case PHPExcel_Worksheet::BREAK_NONE: + default: + // Nothing to do + break; + } + } + + //horizontal page breaks + if (!empty($hbreaks)) { + // Sort and filter array of page breaks + sort($hbreaks, SORT_NUMERIC); + if ($hbreaks[0] == 0) { // don't use first break if it's 0 + array_shift($hbreaks); + } + + $record = 0x001b; // Record identifier + $cbrk = count($hbreaks); // Number of page breaks + $length = 2 + 6 * $cbrk; // Bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("v", $cbrk); + + // Append each page break + foreach ($hbreaks as $hbreak) { + $data .= pack("vvv", $hbreak, 0x0000, 0x00ff); + } + + $this->append($header . $data); + } + + // vertical page breaks + if (!empty($vbreaks)) { + // 1000 vertical pagebreaks appears to be an internal Excel 5 limit. + // It is slightly higher in Excel 97/200, approx. 1026 + $vbreaks = array_slice($vbreaks, 0, 1000); + + // Sort and filter array of page breaks + sort($vbreaks, SORT_NUMERIC); + if ($vbreaks[0] == 0) { // don't use first break if it's 0 + array_shift($vbreaks); + } + + $record = 0x001a; // Record identifier + $cbrk = count($vbreaks); // Number of page breaks + $length = 2 + 6 * $cbrk; // Bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("v", $cbrk); + + // Append each page break + foreach ($vbreaks as $vbreak) { + $data .= pack("vvv", $vbreak, 0x0000, 0xffff); + } + + $this->append($header . $data); + } + } + + /** + * Set the Biff PROTECT record to indicate that the worksheet is protected. + */ + private function writeProtect() + { + // Exit unless sheet protection has been specified + if (!$this->phpSheet->getProtection()->getSheet()) { + return; + } + + $record = 0x0012; // Record identifier + $length = 0x0002; // Bytes to follow + + $fLock = 1; // Worksheet is protected + + $header = pack("vv", $record, $length); + $data = pack("v", $fLock); + + $this->append($header.$data); + } + + /** + * Write SCENPROTECT + */ + private function writeScenProtect() + { + // Exit if sheet protection is not active + if (!$this->phpSheet->getProtection()->getSheet()) { + return; + } + + // Exit if scenarios are not protected + if (!$this->phpSheet->getProtection()->getScenarios()) { + return; + } + + $record = 0x00DD; // Record identifier + $length = 0x0002; // Bytes to follow + + $header = pack('vv', $record, $length); + $data = pack('v', 1); + + $this->append($header . $data); + } + + /** + * Write OBJECTPROTECT + */ + private function writeObjectProtect() + { + // Exit if sheet protection is not active + if (!$this->phpSheet->getProtection()->getSheet()) { + return; + } + + // Exit if objects are not protected + if (!$this->phpSheet->getProtection()->getObjects()) { + return; + } + + $record = 0x0063; // Record identifier + $length = 0x0002; // Bytes to follow + + $header = pack('vv', $record, $length); + $data = pack('v', 1); + + $this->append($header . $data); + } + + /** + * Write the worksheet PASSWORD record. + */ + private function writePassword() + { + // Exit unless sheet protection and password have been specified + if (!$this->phpSheet->getProtection()->getSheet() || !$this->phpSheet->getProtection()->getPassword()) { + return; + } + + $record = 0x0013; // Record identifier + $length = 0x0002; // Bytes to follow + + $wPassword = hexdec($this->phpSheet->getProtection()->getPassword()); // Encoded password + + $header = pack("vv", $record, $length); + $data = pack("v", $wPassword); + + $this->append($header . $data); + } + + /** + * Insert a 24bit bitmap image in a worksheet. + * + * @access public + * @param integer $row The row we are going to insert the bitmap into + * @param integer $col The column we are going to insert the bitmap into + * @param mixed $bitmap The bitmap filename or GD-image resource + * @param integer $x The horizontal position (offset) of the image inside the cell. + * @param integer $y The vertical position (offset) of the image inside the cell. + * @param float $scale_x The horizontal scale + * @param float $scale_y The vertical scale + */ + public function insertBitmap($row, $col, $bitmap, $x = 0, $y = 0, $scale_x = 1, $scale_y = 1) + { + $bitmap_array = (is_resource($bitmap) ? $this->processBitmapGd($bitmap) : $this->processBitmap($bitmap)); + list($width, $height, $size, $data) = $bitmap_array; //$this->processBitmap($bitmap); + + // Scale the frame of the image. + $width *= $scale_x; + $height *= $scale_y; + + // Calculate the vertices of the image and write the OBJ record + $this->positionImage($col, $row, $x, $y, $width, $height); + + // Write the IMDATA record to store the bitmap data + $record = 0x007f; + $length = 8 + $size; + $cf = 0x09; + $env = 0x01; + $lcb = $size; + + $header = pack("vvvvV", $record, $length, $cf, $env, $lcb); + $this->append($header.$data); + } + + /** + * Calculate the vertices that define the position of the image as required by + * the OBJ record. + * + * +------------+------------+ + * | A | B | + * +-----+------------+------------+ + * | |(x1,y1) | | + * | 1 |(A1)._______|______ | + * | | | | | + * | | | | | + * +-----+----| BITMAP |-----+ + * | | | | | + * | 2 | |______________. | + * | | | (B2)| + * | | | (x2,y2)| + * +---- +------------+------------+ + * + * Example of a bitmap that covers some of the area from cell A1 to cell B2. + * + * Based on the width and height of the bitmap we need to calculate 8 vars: + * $col_start, $row_start, $col_end, $row_end, $x1, $y1, $x2, $y2. + * The width and height of the cells are also variable and have to be taken into + * account. + * The values of $col_start and $row_start are passed in from the calling + * function. The values of $col_end and $row_end are calculated by subtracting + * the width and height of the bitmap from the width and height of the + * underlying cells. + * The vertices are expressed as a percentage of the underlying cell width as + * follows (rhs values are in pixels): + * + * x1 = X / W *1024 + * y1 = Y / H *256 + * x2 = (X-1) / W *1024 + * y2 = (Y-1) / H *256 + * + * Where: X is distance from the left side of the underlying cell + * Y is distance from the top of the underlying cell + * W is the width of the cell + * H is the height of the cell + * The SDK incorrectly states that the height should be expressed as a + * percentage of 1024. + * + * @access private + * @param integer $col_start Col containing upper left corner of object + * @param integer $row_start Row containing top left corner of object + * @param integer $x1 Distance to left side of object + * @param integer $y1 Distance to top of object + * @param integer $width Width of image frame + * @param integer $height Height of image frame + */ + public function positionImage($col_start, $row_start, $x1, $y1, $width, $height) + { + // Initialise end cell to the same as the start cell + $col_end = $col_start; // Col containing lower right corner of object + $row_end = $row_start; // Row containing bottom right corner of object + + // Zero the specified offset if greater than the cell dimensions + if ($x1 >= PHPExcel_Shared_Excel5::sizeCol($this->phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_start))) { + $x1 = 0; + } + if ($y1 >= PHPExcel_Shared_Excel5::sizeRow($this->phpSheet, $row_start + 1)) { + $y1 = 0; + } + + $width = $width + $x1 -1; + $height = $height + $y1 -1; + + // Subtract the underlying cell widths to find the end cell of the image + while ($width >= PHPExcel_Shared_Excel5::sizeCol($this->phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_end))) { + $width -= PHPExcel_Shared_Excel5::sizeCol($this->phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_end)); + ++$col_end; + } + + // Subtract the underlying cell heights to find the end cell of the image + while ($height >= PHPExcel_Shared_Excel5::sizeRow($this->phpSheet, $row_end + 1)) { + $height -= PHPExcel_Shared_Excel5::sizeRow($this->phpSheet, $row_end + 1); + ++$row_end; + } + + // Bitmap isn't allowed to start or finish in a hidden cell, i.e. a cell + // with zero eight or width. + // + if (PHPExcel_Shared_Excel5::sizeCol($this->phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_start)) == 0) { + return; + } + if (PHPExcel_Shared_Excel5::sizeCol($this->phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_end)) == 0) { + return; + } + if (PHPExcel_Shared_Excel5::sizeRow($this->phpSheet, $row_start + 1) == 0) { + return; + } + if (PHPExcel_Shared_Excel5::sizeRow($this->phpSheet, $row_end + 1) == 0) { + return; + } + + // Convert the pixel values to the percentage value expected by Excel + $x1 = $x1 / PHPExcel_Shared_Excel5::sizeCol($this->phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_start)) * 1024; + $y1 = $y1 / PHPExcel_Shared_Excel5::sizeRow($this->phpSheet, $row_start + 1) * 256; + $x2 = $width / PHPExcel_Shared_Excel5::sizeCol($this->phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_end)) * 1024; // Distance to right side of object + $y2 = $height / PHPExcel_Shared_Excel5::sizeRow($this->phpSheet, $row_end + 1) * 256; // Distance to bottom of object + + $this->writeObjPicture($col_start, $x1, $row_start, $y1, $col_end, $x2, $row_end, $y2); + } + + /** + * Store the OBJ record that precedes an IMDATA record. This could be generalise + * to support other Excel objects. + * + * @param integer $colL Column containing upper left corner of object + * @param integer $dxL Distance from left side of cell + * @param integer $rwT Row containing top left corner of object + * @param integer $dyT Distance from top of cell + * @param integer $colR Column containing lower right corner of object + * @param integer $dxR Distance from right of cell + * @param integer $rwB Row containing bottom right corner of object + * @param integer $dyB Distance from bottom of cell + */ + private function writeObjPicture($colL, $dxL, $rwT, $dyT, $colR, $dxR, $rwB, $dyB) + { + $record = 0x005d; // Record identifier + $length = 0x003c; // Bytes to follow + + $cObj = 0x0001; // Count of objects in file (set to 1) + $OT = 0x0008; // Object type. 8 = Picture + $id = 0x0001; // Object ID + $grbit = 0x0614; // Option flags + + $cbMacro = 0x0000; // Length of FMLA structure + $Reserved1 = 0x0000; // Reserved + $Reserved2 = 0x0000; // Reserved + + $icvBack = 0x09; // Background colour + $icvFore = 0x09; // Foreground colour + $fls = 0x00; // Fill pattern + $fAuto = 0x00; // Automatic fill + $icv = 0x08; // Line colour + $lns = 0xff; // Line style + $lnw = 0x01; // Line weight + $fAutoB = 0x00; // Automatic border + $frs = 0x0000; // Frame style + $cf = 0x0009; // Image format, 9 = bitmap + $Reserved3 = 0x0000; // Reserved + $cbPictFmla = 0x0000; // Length of FMLA structure + $Reserved4 = 0x0000; // Reserved + $grbit2 = 0x0001; // Option flags + $Reserved5 = 0x0000; // Reserved + + + $header = pack("vv", $record, $length); + $data = pack("V", $cObj); + $data .= pack("v", $OT); + $data .= pack("v", $id); + $data .= pack("v", $grbit); + $data .= pack("v", $colL); + $data .= pack("v", $dxL); + $data .= pack("v", $rwT); + $data .= pack("v", $dyT); + $data .= pack("v", $colR); + $data .= pack("v", $dxR); + $data .= pack("v", $rwB); + $data .= pack("v", $dyB); + $data .= pack("v", $cbMacro); + $data .= pack("V", $Reserved1); + $data .= pack("v", $Reserved2); + $data .= pack("C", $icvBack); + $data .= pack("C", $icvFore); + $data .= pack("C", $fls); + $data .= pack("C", $fAuto); + $data .= pack("C", $icv); + $data .= pack("C", $lns); + $data .= pack("C", $lnw); + $data .= pack("C", $fAutoB); + $data .= pack("v", $frs); + $data .= pack("V", $cf); + $data .= pack("v", $Reserved3); + $data .= pack("v", $cbPictFmla); + $data .= pack("v", $Reserved4); + $data .= pack("v", $grbit2); + $data .= pack("V", $Reserved5); + + $this->append($header . $data); + } + + /** + * Convert a GD-image into the internal format. + * + * @access private + * @param resource $image The image to process + * @return array Array with data and properties of the bitmap + */ + public function processBitmapGd($image) + { + $width = imagesx($image); + $height = imagesy($image); + + $data = pack("Vvvvv", 0x000c, $width, $height, 0x01, 0x18); + for ($j=$height; $j--;) { + for ($i=0; $i < $width; ++$i) { + $color = imagecolorsforindex($image, imagecolorat($image, $i, $j)); + foreach (array("red", "green", "blue") as $key) { + $color[$key] = $color[$key] + round((255 - $color[$key]) * $color["alpha"] / 127); + } + $data .= chr($color["blue"]) . chr($color["green"]) . chr($color["red"]); + } + if (3*$width % 4) { + $data .= str_repeat("\x00", 4 - 3*$width % 4); + } + } + + return array($width, $height, strlen($data), $data); + } + + /** + * Convert a 24 bit bitmap into the modified internal format used by Windows. + * This is described in BITMAPCOREHEADER and BITMAPCOREINFO structures in the + * MSDN library. + * + * @access private + * @param string $bitmap The bitmap to process + * @return array Array with data and properties of the bitmap + */ + public function processBitmap($bitmap) + { + // Open file. + $bmp_fd = @fopen($bitmap, "rb"); + if (!$bmp_fd) { + throw new PHPExcel_Writer_Exception("Couldn't import $bitmap"); + } + + // Slurp the file into a string. + $data = fread($bmp_fd, filesize($bitmap)); + + // Check that the file is big enough to be a bitmap. + if (strlen($data) <= 0x36) { + throw new PHPExcel_Writer_Exception("$bitmap doesn't contain enough data.\n"); + } + + // The first 2 bytes are used to identify the bitmap. + $identity = unpack("A2ident", $data); + if ($identity['ident'] != "BM") { + throw new PHPExcel_Writer_Exception("$bitmap doesn't appear to be a valid bitmap image.\n"); + } + + // Remove bitmap data: ID. + $data = substr($data, 2); + + // Read and remove the bitmap size. This is more reliable than reading + // the data size at offset 0x22. + // + $size_array = unpack("Vsa", substr($data, 0, 4)); + $size = $size_array['sa']; + $data = substr($data, 4); + $size -= 0x36; // Subtract size of bitmap header. + $size += 0x0C; // Add size of BIFF header. + + // Remove bitmap data: reserved, offset, header length. + $data = substr($data, 12); + + // Read and remove the bitmap width and height. Verify the sizes. + $width_and_height = unpack("V2", substr($data, 0, 8)); + $width = $width_and_height[1]; + $height = $width_and_height[2]; + $data = substr($data, 8); + if ($width > 0xFFFF) { + throw new PHPExcel_Writer_Exception("$bitmap: largest image width supported is 65k.\n"); + } + if ($height > 0xFFFF) { + throw new PHPExcel_Writer_Exception("$bitmap: largest image height supported is 65k.\n"); + } + + // Read and remove the bitmap planes and bpp data. Verify them. + $planes_and_bitcount = unpack("v2", substr($data, 0, 4)); + $data = substr($data, 4); + if ($planes_and_bitcount[2] != 24) { // Bitcount + throw new PHPExcel_Writer_Exception("$bitmap isn't a 24bit true color bitmap.\n"); + } + if ($planes_and_bitcount[1] != 1) { + throw new PHPExcel_Writer_Exception("$bitmap: only 1 plane supported in bitmap image.\n"); + } + + // Read and remove the bitmap compression. Verify compression. + $compression = unpack("Vcomp", substr($data, 0, 4)); + $data = substr($data, 4); + + //$compression = 0; + if ($compression['comp'] != 0) { + throw new PHPExcel_Writer_Exception("$bitmap: compression not supported in bitmap image.\n"); + } + + // Remove bitmap data: data size, hres, vres, colours, imp. colours. + $data = substr($data, 20); + + // Add the BITMAPCOREHEADER data + $header = pack("Vvvvv", 0x000c, $width, $height, 0x01, 0x18); + $data = $header . $data; + + return (array($width, $height, $size, $data)); + } + + /** + * Store the window zoom factor. This should be a reduced fraction but for + * simplicity we will store all fractions with a numerator of 100. + */ + private function writeZoom() + { + // If scale is 100 we don't need to write a record + if ($this->phpSheet->getSheetView()->getZoomScale() == 100) { + return; + } + + $record = 0x00A0; // Record identifier + $length = 0x0004; // Bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("vv", $this->phpSheet->getSheetView()->getZoomScale(), 100); + $this->append($header . $data); + } + + /** + * Get Escher object + * + * @return PHPExcel_Shared_Escher + */ + public function getEscher() + { + return $this->escher; + } + + /** + * Set Escher object + * + * @param PHPExcel_Shared_Escher $pValue + */ + public function setEscher(PHPExcel_Shared_Escher $pValue = null) + { + $this->escher = $pValue; + } + + /** + * Write MSODRAWING record + */ + private function writeMsoDrawing() + { + // write the Escher stream if necessary + if (isset($this->escher)) { + $writer = new PHPExcel_Writer_Excel5_Escher($this->escher); + $data = $writer->close(); + $spOffsets = $writer->getSpOffsets(); + $spTypes = $writer->getSpTypes(); + // write the neccesary MSODRAWING, OBJ records + + // split the Escher stream + $spOffsets[0] = 0; + $nm = count($spOffsets) - 1; // number of shapes excluding first shape + for ($i = 1; $i <= $nm; ++$i) { + // MSODRAWING record + $record = 0x00EC; // Record identifier + + // chunk of Escher stream for one shape + $dataChunk = substr($data, $spOffsets[$i -1], $spOffsets[$i] - $spOffsets[$i - 1]); + + $length = strlen($dataChunk); + $header = pack("vv", $record, $length); + + $this->append($header . $dataChunk); + + // OBJ record + $record = 0x005D; // record identifier + $objData = ''; + + // ftCmo + if ($spTypes[$i] == 0x00C9) { + // Add ftCmo (common object data) subobject + $objData .= + pack( + 'vvvvvVVV', + 0x0015, // 0x0015 = ftCmo + 0x0012, // length of ftCmo data + 0x0014, // object type, 0x0014 = filter + $i, // object id number, Excel seems to use 1-based index, local for the sheet + 0x2101, // option flags, 0x2001 is what OpenOffice.org uses + 0, // reserved + 0, // reserved + 0 // reserved + ); + + // Add ftSbs Scroll bar subobject + $objData .= pack('vv', 0x00C, 0x0014); + $objData .= pack('H*', '0000000000000000640001000A00000010000100'); + // Add ftLbsData (List box data) subobject + $objData .= pack('vv', 0x0013, 0x1FEE); + $objData .= pack('H*', '00000000010001030000020008005700'); + } else { + // Add ftCmo (common object data) subobject + $objData .= + pack( + 'vvvvvVVV', + 0x0015, // 0x0015 = ftCmo + 0x0012, // length of ftCmo data + 0x0008, // object type, 0x0008 = picture + $i, // object id number, Excel seems to use 1-based index, local for the sheet + 0x6011, // option flags, 0x6011 is what OpenOffice.org uses + 0, // reserved + 0, // reserved + 0 // reserved + ); + } + + // ftEnd + $objData .= + pack( + 'vv', + 0x0000, // 0x0000 = ftEnd + 0x0000 // length of ftEnd data + ); + + $length = strlen($objData); + $header = pack('vv', $record, $length); + $this->append($header . $objData); + } + } + } + + /** + * Store the DATAVALIDATIONS and DATAVALIDATION records. + */ + private function writeDataValidity() + { + // Datavalidation collection + $dataValidationCollection = $this->phpSheet->getDataValidationCollection(); + + // Write data validations? + if (!empty($dataValidationCollection)) { + // DATAVALIDATIONS record + $record = 0x01B2; // Record identifier + $length = 0x0012; // Bytes to follow + + $grbit = 0x0000; // Prompt box at cell, no cached validity data at DV records + $horPos = 0x00000000; // Horizontal position of prompt box, if fixed position + $verPos = 0x00000000; // Vertical position of prompt box, if fixed position + $objId = 0xFFFFFFFF; // Object identifier of drop down arrow object, or -1 if not visible + + $header = pack('vv', $record, $length); + $data = pack('vVVVV', $grbit, $horPos, $verPos, $objId, count($dataValidationCollection)); + $this->append($header.$data); + + // DATAVALIDATION records + $record = 0x01BE; // Record identifier + + foreach ($dataValidationCollection as $cellCoordinate => $dataValidation) { + // initialize record data + $data = ''; + + // options + $options = 0x00000000; + + // data type + $type = $dataValidation->getType(); + switch ($type) { + case PHPExcel_Cell_DataValidation::TYPE_NONE: + $type = 0x00; + break; + case PHPExcel_Cell_DataValidation::TYPE_WHOLE: + $type = 0x01; + break; + case PHPExcel_Cell_DataValidation::TYPE_DECIMAL: + $type = 0x02; + break; + case PHPExcel_Cell_DataValidation::TYPE_LIST: + $type = 0x03; + break; + case PHPExcel_Cell_DataValidation::TYPE_DATE: + $type = 0x04; + break; + case PHPExcel_Cell_DataValidation::TYPE_TIME: + $type = 0x05; + break; + case PHPExcel_Cell_DataValidation::TYPE_TEXTLENGTH: + $type = 0x06; + break; + case PHPExcel_Cell_DataValidation::TYPE_CUSTOM: + $type = 0x07; + break; + } + $options |= $type << 0; + + // error style + $errorStyle = $dataValidation->getType(); + switch ($errorStyle) { + case PHPExcel_Cell_DataValidation::STYLE_STOP: + $errorStyle = 0x00; + break; + case PHPExcel_Cell_DataValidation::STYLE_WARNING: + $errorStyle = 0x01; + break; + case PHPExcel_Cell_DataValidation::STYLE_INFORMATION: + $errorStyle = 0x02; + break; + } + $options |= $errorStyle << 4; + + // explicit formula? + if ($type == 0x03 && preg_match('/^\".*\"$/', $dataValidation->getFormula1())) { + $options |= 0x01 << 7; + } + + // empty cells allowed + $options |= $dataValidation->getAllowBlank() << 8; + + // show drop down + $options |= (!$dataValidation->getShowDropDown()) << 9; + + // show input message + $options |= $dataValidation->getShowInputMessage() << 18; + + // show error message + $options |= $dataValidation->getShowErrorMessage() << 19; + + // condition operator + $operator = $dataValidation->getOperator(); + switch ($operator) { + case PHPExcel_Cell_DataValidation::OPERATOR_BETWEEN: + $operator = 0x00; + break; + case PHPExcel_Cell_DataValidation::OPERATOR_NOTBETWEEN: + $operator = 0x01; + break; + case PHPExcel_Cell_DataValidation::OPERATOR_EQUAL: + $operator = 0x02; + break; + case PHPExcel_Cell_DataValidation::OPERATOR_NOTEQUAL: + $operator = 0x03; + break; + case PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHAN: + $operator = 0x04; + break; + case PHPExcel_Cell_DataValidation::OPERATOR_LESSTHAN: + $operator = 0x05; + break; + case PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHANOREQUAL: + $operator = 0x06; + break; + case PHPExcel_Cell_DataValidation::OPERATOR_LESSTHANOREQUAL: + $operator = 0x07; + break; + } + $options |= $operator << 20; + + $data = pack('V', $options); + + // prompt title + $promptTitle = $dataValidation->getPromptTitle() !== '' ? + $dataValidation->getPromptTitle() : chr(0); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($promptTitle); + + // error title + $errorTitle = $dataValidation->getErrorTitle() !== '' ? + $dataValidation->getErrorTitle() : chr(0); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($errorTitle); + + // prompt text + $prompt = $dataValidation->getPrompt() !== '' ? + $dataValidation->getPrompt() : chr(0); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($prompt); + + // error text + $error = $dataValidation->getError() !== '' ? + $dataValidation->getError() : chr(0); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($error); + + // formula 1 + try { + $formula1 = $dataValidation->getFormula1(); + if ($type == 0x03) { // list type + $formula1 = str_replace(',', chr(0), $formula1); + } + $this->parser->parse($formula1); + $formula1 = $this->parser->toReversePolish(); + $sz1 = strlen($formula1); + } catch (PHPExcel_Exception $e) { + $sz1 = 0; + $formula1 = ''; + } + $data .= pack('vv', $sz1, 0x0000); + $data .= $formula1; + + // formula 2 + try { + $formula2 = $dataValidation->getFormula2(); + if ($formula2 === '') { + throw new PHPExcel_Writer_Exception('No formula2'); + } + $this->parser->parse($formula2); + $formula2 = $this->parser->toReversePolish(); + $sz2 = strlen($formula2); + } catch (PHPExcel_Exception $e) { + $sz2 = 0; + $formula2 = ''; + } + $data .= pack('vv', $sz2, 0x0000); + $data .= $formula2; + + // cell range address list + $data .= pack('v', 0x0001); + $data .= $this->writeBIFF8CellRangeAddressFixed($cellCoordinate); + + $length = strlen($data); + $header = pack("vv", $record, $length); + + $this->append($header . $data); + } + } + } + + /** + * Map Error code + * + * @param string $errorCode + * @return int + */ + private static function mapErrorCode($errorCode) + { + switch ($errorCode) { + case '#NULL!': + return 0x00; + case '#DIV/0!': + return 0x07; + case '#VALUE!': + return 0x0F; + case '#REF!': + return 0x17; + case '#NAME?': + return 0x1D; + case '#NUM!': + return 0x24; + case '#N/A': + return 0x2A; + } + + return 0; + } + + /** + * Write PLV Record + */ + private function writePageLayoutView() + { + $record = 0x088B; // Record identifier + $length = 0x0010; // Bytes to follow + + $rt = 0x088B; // 2 + $grbitFrt = 0x0000; // 2 + $reserved = 0x0000000000000000; // 8 + $wScalvePLV = $this->phpSheet->getSheetView()->getZoomScale(); // 2 + + // The options flags that comprise $grbit + if ($this->phpSheet->getSheetView()->getView() == PHPExcel_Worksheet_SheetView::SHEETVIEW_PAGE_LAYOUT) { + $fPageLayoutView = 1; + } else { + $fPageLayoutView = 0; + } + $fRulerVisible = 0; + $fWhitespaceHidden = 0; + + $grbit = $fPageLayoutView; // 2 + $grbit |= $fRulerVisible << 1; + $grbit |= $fWhitespaceHidden << 3; + + $header = pack("vv", $record, $length); + $data = pack("vvVVvv", $rt, $grbitFrt, 0x00000000, 0x00000000, $wScalvePLV, $grbit); + $this->append($header . $data); + } + + /** + * Write CFRule Record + * @param PHPExcel_Style_Conditional $conditional + */ + private function writeCFRule(PHPExcel_Style_Conditional $conditional) + { + $record = 0x01B1; // Record identifier + + // $type : Type of the CF + // $operatorType : Comparison operator + if ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_EXPRESSION) { + $type = 0x02; + $operatorType = 0x00; + } elseif ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CELLIS) { + $type = 0x01; + + switch ($conditional->getOperatorType()) { + case PHPExcel_Style_Conditional::OPERATOR_NONE: + $operatorType = 0x00; + break; + case PHPExcel_Style_Conditional::OPERATOR_EQUAL: + $operatorType = 0x03; + break; + case PHPExcel_Style_Conditional::OPERATOR_GREATERTHAN: + $operatorType = 0x05; + break; + case PHPExcel_Style_Conditional::OPERATOR_GREATERTHANOREQUAL: + $operatorType = 0x07; + break; + case PHPExcel_Style_Conditional::OPERATOR_LESSTHAN: + $operatorType = 0x06; + break; + case PHPExcel_Style_Conditional::OPERATOR_LESSTHANOREQUAL: + $operatorType = 0x08; + break; + case PHPExcel_Style_Conditional::OPERATOR_NOTEQUAL: + $operatorType = 0x04; + break; + case PHPExcel_Style_Conditional::OPERATOR_BETWEEN: + $operatorType = 0x01; + break; + // not OPERATOR_NOTBETWEEN 0x02 + } + } + + // $szValue1 : size of the formula data for first value or formula + // $szValue2 : size of the formula data for second value or formula + $arrConditions = $conditional->getConditions(); + $numConditions = sizeof($arrConditions); + if ($numConditions == 1) { + $szValue1 = ($arrConditions[0] <= 65535 ? 3 : 0x0000); + $szValue2 = 0x0000; + $operand1 = pack('Cv', 0x1E, $arrConditions[0]); + $operand2 = null; + } elseif ($numConditions == 2 && ($conditional->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_BETWEEN)) { + $szValue1 = ($arrConditions[0] <= 65535 ? 3 : 0x0000); + $szValue2 = ($arrConditions[1] <= 65535 ? 3 : 0x0000); + $operand1 = pack('Cv', 0x1E, $arrConditions[0]); + $operand2 = pack('Cv', 0x1E, $arrConditions[1]); + } else { + $szValue1 = 0x0000; + $szValue2 = 0x0000; + $operand1 = null; + $operand2 = null; + } + + // $flags : Option flags + // Alignment + $bAlignHz = ($conditional->getStyle()->getAlignment()->getHorizontal() == null ? 1 : 0); + $bAlignVt = ($conditional->getStyle()->getAlignment()->getVertical() == null ? 1 : 0); + $bAlignWrapTx = ($conditional->getStyle()->getAlignment()->getWrapText() == false ? 1 : 0); + $bTxRotation = ($conditional->getStyle()->getAlignment()->getTextRotation() == null ? 1 : 0); + $bIndent = ($conditional->getStyle()->getAlignment()->getIndent() == 0 ? 1 : 0); + $bShrinkToFit = ($conditional->getStyle()->getAlignment()->getShrinkToFit() == false ? 1 : 0); + if ($bAlignHz == 0 || $bAlignVt == 0 || $bAlignWrapTx == 0 || $bTxRotation == 0 || $bIndent == 0 || $bShrinkToFit == 0) { + $bFormatAlign = 1; + } else { + $bFormatAlign = 0; + } + // Protection + $bProtLocked = ($conditional->getStyle()->getProtection()->getLocked() == null ? 1 : 0); + $bProtHidden = ($conditional->getStyle()->getProtection()->getHidden() == null ? 1 : 0); + if ($bProtLocked == 0 || $bProtHidden == 0) { + $bFormatProt = 1; + } else { + $bFormatProt = 0; + } + // Border + $bBorderLeft = ($conditional->getStyle()->getBorders()->getLeft()->getColor()->getARGB() == PHPExcel_Style_Color::COLOR_BLACK + && $conditional->getStyle()->getBorders()->getLeft()->getBorderStyle() == PHPExcel_Style_Border::BORDER_NONE ? 1 : 0); + $bBorderRight = ($conditional->getStyle()->getBorders()->getRight()->getColor()->getARGB() == PHPExcel_Style_Color::COLOR_BLACK + && $conditional->getStyle()->getBorders()->getRight()->getBorderStyle() == PHPExcel_Style_Border::BORDER_NONE ? 1 : 0); + $bBorderTop = ($conditional->getStyle()->getBorders()->getTop()->getColor()->getARGB() == PHPExcel_Style_Color::COLOR_BLACK + && $conditional->getStyle()->getBorders()->getTop()->getBorderStyle() == PHPExcel_Style_Border::BORDER_NONE ? 1 : 0); + $bBorderBottom = ($conditional->getStyle()->getBorders()->getBottom()->getColor()->getARGB() == PHPExcel_Style_Color::COLOR_BLACK + && $conditional->getStyle()->getBorders()->getBottom()->getBorderStyle() == PHPExcel_Style_Border::BORDER_NONE ? 1 : 0); + if ($bBorderLeft == 0 || $bBorderRight == 0 || $bBorderTop == 0 || $bBorderBottom == 0) { + $bFormatBorder = 1; + } else { + $bFormatBorder = 0; + } + // Pattern + $bFillStyle = ($conditional->getStyle()->getFill()->getFillType() == null ? 0 : 1); + $bFillColor = ($conditional->getStyle()->getFill()->getStartColor()->getARGB() == null ? 0 : 1); + $bFillColorBg = ($conditional->getStyle()->getFill()->getEndColor()->getARGB() == null ? 0 : 1); + if ($bFillStyle == 0 || $bFillColor == 0 || $bFillColorBg == 0) { + $bFormatFill = 1; + } else { + $bFormatFill = 0; + } + // Font + if ($conditional->getStyle()->getFont()->getName() != null + || $conditional->getStyle()->getFont()->getSize() != null + || $conditional->getStyle()->getFont()->getBold() != null + || $conditional->getStyle()->getFont()->getItalic() != null + || $conditional->getStyle()->getFont()->getSuperScript() != null + || $conditional->getStyle()->getFont()->getSubScript() != null + || $conditional->getStyle()->getFont()->getUnderline() != null + || $conditional->getStyle()->getFont()->getStrikethrough() != null + || $conditional->getStyle()->getFont()->getColor()->getARGB() != null) { + $bFormatFont = 1; + } else { + $bFormatFont = 0; + } + // Alignment + $flags = 0; + $flags |= (1 == $bAlignHz ? 0x00000001 : 0); + $flags |= (1 == $bAlignVt ? 0x00000002 : 0); + $flags |= (1 == $bAlignWrapTx ? 0x00000004 : 0); + $flags |= (1 == $bTxRotation ? 0x00000008 : 0); + // Justify last line flag + $flags |= (1 == 1 ? 0x00000010 : 0); + $flags |= (1 == $bIndent ? 0x00000020 : 0); + $flags |= (1 == $bShrinkToFit ? 0x00000040 : 0); + // Default + $flags |= (1 == 1 ? 0x00000080 : 0); + // Protection + $flags |= (1 == $bProtLocked ? 0x00000100 : 0); + $flags |= (1 == $bProtHidden ? 0x00000200 : 0); + // Border + $flags |= (1 == $bBorderLeft ? 0x00000400 : 0); + $flags |= (1 == $bBorderRight ? 0x00000800 : 0); + $flags |= (1 == $bBorderTop ? 0x00001000 : 0); + $flags |= (1 == $bBorderBottom ? 0x00002000 : 0); + $flags |= (1 == 1 ? 0x00004000 : 0); // Top left to Bottom right border + $flags |= (1 == 1 ? 0x00008000 : 0); // Bottom left to Top right border + // Pattern + $flags |= (1 == $bFillStyle ? 0x00010000 : 0); + $flags |= (1 == $bFillColor ? 0x00020000 : 0); + $flags |= (1 == $bFillColorBg ? 0x00040000 : 0); + $flags |= (1 == 1 ? 0x00380000 : 0); + // Font + $flags |= (1 == $bFormatFont ? 0x04000000 : 0); + // Alignment: + $flags |= (1 == $bFormatAlign ? 0x08000000 : 0); + // Border + $flags |= (1 == $bFormatBorder ? 0x10000000 : 0); + // Pattern + $flags |= (1 == $bFormatFill ? 0x20000000 : 0); + // Protection + $flags |= (1 == $bFormatProt ? 0x40000000 : 0); + // Text direction + $flags |= (1 == 0 ? 0x80000000 : 0); + + // Data Blocks + if ($bFormatFont == 1) { + // Font Name + if ($conditional->getStyle()->getFont()->getName() == null) { + $dataBlockFont = pack('VVVVVVVV', 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000); + $dataBlockFont .= pack('VVVVVVVV', 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000); + } else { + $dataBlockFont = PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($conditional->getStyle()->getFont()->getName()); + } + // Font Size + if ($conditional->getStyle()->getFont()->getSize() == null) { + $dataBlockFont .= pack('V', 20 * 11); + } else { + $dataBlockFont .= pack('V', 20 * $conditional->getStyle()->getFont()->getSize()); + } + // Font Options + $dataBlockFont .= pack('V', 0); + // Font weight + if ($conditional->getStyle()->getFont()->getBold() == true) { + $dataBlockFont .= pack('v', 0x02BC); + } else { + $dataBlockFont .= pack('v', 0x0190); + } + // Escapement type + if ($conditional->getStyle()->getFont()->getSubScript() == true) { + $dataBlockFont .= pack('v', 0x02); + $fontEscapement = 0; + } elseif ($conditional->getStyle()->getFont()->getSuperScript() == true) { + $dataBlockFont .= pack('v', 0x01); + $fontEscapement = 0; + } else { + $dataBlockFont .= pack('v', 0x00); + $fontEscapement = 1; + } + // Underline type + switch ($conditional->getStyle()->getFont()->getUnderline()) { + case PHPExcel_Style_Font::UNDERLINE_NONE: + $dataBlockFont .= pack('C', 0x00); + $fontUnderline = 0; + break; + case PHPExcel_Style_Font::UNDERLINE_DOUBLE: + $dataBlockFont .= pack('C', 0x02); + $fontUnderline = 0; + break; + case PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING: + $dataBlockFont .= pack('C', 0x22); + $fontUnderline = 0; + break; + case PHPExcel_Style_Font::UNDERLINE_SINGLE: + $dataBlockFont .= pack('C', 0x01); + $fontUnderline = 0; + break; + case PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING: + $dataBlockFont .= pack('C', 0x21); + $fontUnderline = 0; + break; + default: $dataBlockFont .= pack('C', 0x00); + $fontUnderline = 1; + break; + } + // Not used (3) + $dataBlockFont .= pack('vC', 0x0000, 0x00); + // Font color index + switch ($conditional->getStyle()->getFont()->getColor()->getRGB()) { + case '000000': + $colorIdx = 0x08; + break; + case 'FFFFFF': + $colorIdx = 0x09; + break; + case 'FF0000': + $colorIdx = 0x0A; + break; + case '00FF00': + $colorIdx = 0x0B; + break; + case '0000FF': + $colorIdx = 0x0C; + break; + case 'FFFF00': + $colorIdx = 0x0D; + break; + case 'FF00FF': + $colorIdx = 0x0E; + break; + case '00FFFF': + $colorIdx = 0x0F; + break; + case '800000': + $colorIdx = 0x10; + break; + case '008000': + $colorIdx = 0x11; + break; + case '000080': + $colorIdx = 0x12; + break; + case '808000': + $colorIdx = 0x13; + break; + case '800080': + $colorIdx = 0x14; + break; + case '008080': + $colorIdx = 0x15; + break; + case 'C0C0C0': + $colorIdx = 0x16; + break; + case '808080': + $colorIdx = 0x17; + break; + case '9999FF': + $colorIdx = 0x18; + break; + case '993366': + $colorIdx = 0x19; + break; + case 'FFFFCC': + $colorIdx = 0x1A; + break; + case 'CCFFFF': + $colorIdx = 0x1B; + break; + case '660066': + $colorIdx = 0x1C; + break; + case 'FF8080': + $colorIdx = 0x1D; + break; + case '0066CC': + $colorIdx = 0x1E; + break; + case 'CCCCFF': + $colorIdx = 0x1F; + break; + case '000080': + $colorIdx = 0x20; + break; + case 'FF00FF': + $colorIdx = 0x21; + break; + case 'FFFF00': + $colorIdx = 0x22; + break; + case '00FFFF': + $colorIdx = 0x23; + break; + case '800080': + $colorIdx = 0x24; + break; + case '800000': + $colorIdx = 0x25; + break; + case '008080': + $colorIdx = 0x26; + break; + case '0000FF': + $colorIdx = 0x27; + break; + case '00CCFF': + $colorIdx = 0x28; + break; + case 'CCFFFF': + $colorIdx = 0x29; + break; + case 'CCFFCC': + $colorIdx = 0x2A; + break; + case 'FFFF99': + $colorIdx = 0x2B; + break; + case '99CCFF': + $colorIdx = 0x2C; + break; + case 'FF99CC': + $colorIdx = 0x2D; + break; + case 'CC99FF': + $colorIdx = 0x2E; + break; + case 'FFCC99': + $colorIdx = 0x2F; + break; + case '3366FF': + $colorIdx = 0x30; + break; + case '33CCCC': + $colorIdx = 0x31; + break; + case '99CC00': + $colorIdx = 0x32; + break; + case 'FFCC00': + $colorIdx = 0x33; + break; + case 'FF9900': + $colorIdx = 0x34; + break; + case 'FF6600': + $colorIdx = 0x35; + break; + case '666699': + $colorIdx = 0x36; + break; + case '969696': + $colorIdx = 0x37; + break; + case '003366': + $colorIdx = 0x38; + break; + case '339966': + $colorIdx = 0x39; + break; + case '003300': + $colorIdx = 0x3A; + break; + case '333300': + $colorIdx = 0x3B; + break; + case '993300': + $colorIdx = 0x3C; + break; + case '993366': + $colorIdx = 0x3D; + break; + case '333399': + $colorIdx = 0x3E; + break; + case '333333': + $colorIdx = 0x3F; + break; + default: + $colorIdx = 0x00; + break; + } + $dataBlockFont .= pack('V', $colorIdx); + // Not used (4) + $dataBlockFont .= pack('V', 0x00000000); + // Options flags for modified font attributes + $optionsFlags = 0; + $optionsFlagsBold = ($conditional->getStyle()->getFont()->getBold() == null ? 1 : 0); + $optionsFlags |= (1 == $optionsFlagsBold ? 0x00000002 : 0); + $optionsFlags |= (1 == 1 ? 0x00000008 : 0); + $optionsFlags |= (1 == 1 ? 0x00000010 : 0); + $optionsFlags |= (1 == 0 ? 0x00000020 : 0); + $optionsFlags |= (1 == 1 ? 0x00000080 : 0); + $dataBlockFont .= pack('V', $optionsFlags); + // Escapement type + $dataBlockFont .= pack('V', $fontEscapement); + // Underline type + $dataBlockFont .= pack('V', $fontUnderline); + // Always + $dataBlockFont .= pack('V', 0x00000000); + // Always + $dataBlockFont .= pack('V', 0x00000000); + // Not used (8) + $dataBlockFont .= pack('VV', 0x00000000, 0x00000000); + // Always + $dataBlockFont .= pack('v', 0x0001); + } + if ($bFormatAlign == 1) { + $blockAlign = 0; + // Alignment and text break + switch ($conditional->getStyle()->getAlignment()->getHorizontal()) { + case PHPExcel_Style_Alignment::HORIZONTAL_GENERAL: + $blockAlign = 0; + break; + case PHPExcel_Style_Alignment::HORIZONTAL_LEFT: + $blockAlign = 1; + break; + case PHPExcel_Style_Alignment::HORIZONTAL_RIGHT: + $blockAlign = 3; + break; + case PHPExcel_Style_Alignment::HORIZONTAL_CENTER: + $blockAlign = 2; + break; + case PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS: + $blockAlign = 6; + break; + case PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY: + $blockAlign = 5; + break; + } + if ($conditional->getStyle()->getAlignment()->getWrapText() == true) { + $blockAlign |= 1 << 3; + } else { + $blockAlign |= 0 << 3; + } + switch ($conditional->getStyle()->getAlignment()->getVertical()) { + case PHPExcel_Style_Alignment::VERTICAL_BOTTOM: + $blockAlign = 2 << 4; + break; + case PHPExcel_Style_Alignment::VERTICAL_TOP: + $blockAlign = 0 << 4; + break; + case PHPExcel_Style_Alignment::VERTICAL_CENTER: + $blockAlign = 1 << 4; + break; + case PHPExcel_Style_Alignment::VERTICAL_JUSTIFY: + $blockAlign = 3 << 4; + break; + } + $blockAlign |= 0 << 7; + + // Text rotation angle + $blockRotation = $conditional->getStyle()->getAlignment()->getTextRotation(); + + // Indentation + $blockIndent = $conditional->getStyle()->getAlignment()->getIndent(); + if ($conditional->getStyle()->getAlignment()->getShrinkToFit() == true) { + $blockIndent |= 1 << 4; + } else { + $blockIndent |= 0 << 4; + } + $blockIndent |= 0 << 6; + + // Relative indentation + $blockIndentRelative = 255; + + $dataBlockAlign = pack('CCvvv', $blockAlign, $blockRotation, $blockIndent, $blockIndentRelative, 0x0000); + } + if ($bFormatBorder == 1) { + $blockLineStyle = 0; + switch ($conditional->getStyle()->getBorders()->getLeft()->getBorderStyle()) { + case PHPExcel_Style_Border::BORDER_NONE: + $blockLineStyle |= 0x00; + break; + case PHPExcel_Style_Border::BORDER_THIN: + $blockLineStyle |= 0x01; + break; + case PHPExcel_Style_Border::BORDER_MEDIUM: + $blockLineStyle |= 0x02; + break; + case PHPExcel_Style_Border::BORDER_DASHED: + $blockLineStyle |= 0x03; + break; + case PHPExcel_Style_Border::BORDER_DOTTED: + $blockLineStyle |= 0x04; + break; + case PHPExcel_Style_Border::BORDER_THICK: + $blockLineStyle |= 0x05; + break; + case PHPExcel_Style_Border::BORDER_DOUBLE: + $blockLineStyle |= 0x06; + break; + case PHPExcel_Style_Border::BORDER_HAIR: + $blockLineStyle |= 0x07; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHED: + $blockLineStyle |= 0x08; + break; + case PHPExcel_Style_Border::BORDER_DASHDOT: + $blockLineStyle |= 0x09; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT: + $blockLineStyle |= 0x0A; + break; + case PHPExcel_Style_Border::BORDER_DASHDOTDOT: + $blockLineStyle |= 0x0B; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT: + $blockLineStyle |= 0x0C; + break; + case PHPExcel_Style_Border::BORDER_SLANTDASHDOT: + $blockLineStyle |= 0x0D; + break; + } + switch ($conditional->getStyle()->getBorders()->getRight()->getBorderStyle()) { + case PHPExcel_Style_Border::BORDER_NONE: + $blockLineStyle |= 0x00 << 4; + break; + case PHPExcel_Style_Border::BORDER_THIN: + $blockLineStyle |= 0x01 << 4; + break; + case PHPExcel_Style_Border::BORDER_MEDIUM: + $blockLineStyle |= 0x02 << 4; + break; + case PHPExcel_Style_Border::BORDER_DASHED: + $blockLineStyle |= 0x03 << 4; + break; + case PHPExcel_Style_Border::BORDER_DOTTED: + $blockLineStyle |= 0x04 << 4; + break; + case PHPExcel_Style_Border::BORDER_THICK: + $blockLineStyle |= 0x05 << 4; + break; + case PHPExcel_Style_Border::BORDER_DOUBLE: + $blockLineStyle |= 0x06 << 4; + break; + case PHPExcel_Style_Border::BORDER_HAIR: + $blockLineStyle |= 0x07 << 4; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHED: + $blockLineStyle |= 0x08 << 4; + break; + case PHPExcel_Style_Border::BORDER_DASHDOT: + $blockLineStyle |= 0x09 << 4; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT: + $blockLineStyle |= 0x0A << 4; + break; + case PHPExcel_Style_Border::BORDER_DASHDOTDOT: + $blockLineStyle |= 0x0B << 4; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT: + $blockLineStyle |= 0x0C << 4; + break; + case PHPExcel_Style_Border::BORDER_SLANTDASHDOT: + $blockLineStyle |= 0x0D << 4; + break; + } + switch ($conditional->getStyle()->getBorders()->getTop()->getBorderStyle()) { + case PHPExcel_Style_Border::BORDER_NONE: + $blockLineStyle |= 0x00 << 8; + break; + case PHPExcel_Style_Border::BORDER_THIN: + $blockLineStyle |= 0x01 << 8; + break; + case PHPExcel_Style_Border::BORDER_MEDIUM: + $blockLineStyle |= 0x02 << 8; + break; + case PHPExcel_Style_Border::BORDER_DASHED: + $blockLineStyle |= 0x03 << 8; + break; + case PHPExcel_Style_Border::BORDER_DOTTED: + $blockLineStyle |= 0x04 << 8; + break; + case PHPExcel_Style_Border::BORDER_THICK: + $blockLineStyle |= 0x05 << 8; + break; + case PHPExcel_Style_Border::BORDER_DOUBLE: + $blockLineStyle |= 0x06 << 8; + break; + case PHPExcel_Style_Border::BORDER_HAIR: + $blockLineStyle |= 0x07 << 8; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHED: + $blockLineStyle |= 0x08 << 8; + break; + case PHPExcel_Style_Border::BORDER_DASHDOT: + $blockLineStyle |= 0x09 << 8; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT: + $blockLineStyle |= 0x0A << 8; + break; + case PHPExcel_Style_Border::BORDER_DASHDOTDOT: + $blockLineStyle |= 0x0B << 8; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT: + $blockLineStyle |= 0x0C << 8; + break; + case PHPExcel_Style_Border::BORDER_SLANTDASHDOT: + $blockLineStyle |= 0x0D << 8; + break; + } + switch ($conditional->getStyle()->getBorders()->getBottom()->getBorderStyle()) { + case PHPExcel_Style_Border::BORDER_NONE: + $blockLineStyle |= 0x00 << 12; + break; + case PHPExcel_Style_Border::BORDER_THIN: + $blockLineStyle |= 0x01 << 12; + break; + case PHPExcel_Style_Border::BORDER_MEDIUM: + $blockLineStyle |= 0x02 << 12; + break; + case PHPExcel_Style_Border::BORDER_DASHED: + $blockLineStyle |= 0x03 << 12; + break; + case PHPExcel_Style_Border::BORDER_DOTTED: + $blockLineStyle |= 0x04 << 12; + break; + case PHPExcel_Style_Border::BORDER_THICK: + $blockLineStyle |= 0x05 << 12; + break; + case PHPExcel_Style_Border::BORDER_DOUBLE: + $blockLineStyle |= 0x06 << 12; + break; + case PHPExcel_Style_Border::BORDER_HAIR: + $blockLineStyle |= 0x07 << 12; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHED: + $blockLineStyle |= 0x08 << 12; + break; + case PHPExcel_Style_Border::BORDER_DASHDOT: + $blockLineStyle |= 0x09 << 12; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT: + $blockLineStyle |= 0x0A << 12; + break; + case PHPExcel_Style_Border::BORDER_DASHDOTDOT: + $blockLineStyle |= 0x0B << 12; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT: + $blockLineStyle |= 0x0C << 12; + break; + case PHPExcel_Style_Border::BORDER_SLANTDASHDOT: + $blockLineStyle |= 0x0D << 12; + break; + } + //@todo writeCFRule() => $blockLineStyle => Index Color for left line + //@todo writeCFRule() => $blockLineStyle => Index Color for right line + //@todo writeCFRule() => $blockLineStyle => Top-left to bottom-right on/off + //@todo writeCFRule() => $blockLineStyle => Bottom-left to top-right on/off + $blockColor = 0; + //@todo writeCFRule() => $blockColor => Index Color for top line + //@todo writeCFRule() => $blockColor => Index Color for bottom line + //@todo writeCFRule() => $blockColor => Index Color for diagonal line + switch ($conditional->getStyle()->getBorders()->getDiagonal()->getBorderStyle()) { + case PHPExcel_Style_Border::BORDER_NONE: + $blockColor |= 0x00 << 21; + break; + case PHPExcel_Style_Border::BORDER_THIN: + $blockColor |= 0x01 << 21; + break; + case PHPExcel_Style_Border::BORDER_MEDIUM: + $blockColor |= 0x02 << 21; + break; + case PHPExcel_Style_Border::BORDER_DASHED: + $blockColor |= 0x03 << 21; + break; + case PHPExcel_Style_Border::BORDER_DOTTED: + $blockColor |= 0x04 << 21; + break; + case PHPExcel_Style_Border::BORDER_THICK: + $blockColor |= 0x05 << 21; + break; + case PHPExcel_Style_Border::BORDER_DOUBLE: + $blockColor |= 0x06 << 21; + break; + case PHPExcel_Style_Border::BORDER_HAIR: + $blockColor |= 0x07 << 21; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHED: + $blockColor |= 0x08 << 21; + break; + case PHPExcel_Style_Border::BORDER_DASHDOT: + $blockColor |= 0x09 << 21; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT: + $blockColor |= 0x0A << 21; + break; + case PHPExcel_Style_Border::BORDER_DASHDOTDOT: + $blockColor |= 0x0B << 21; + break; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT: + $blockColor |= 0x0C << 21; + break; + case PHPExcel_Style_Border::BORDER_SLANTDASHDOT: + $blockColor |= 0x0D << 21; + break; + } + $dataBlockBorder = pack('vv', $blockLineStyle, $blockColor); + } + if ($bFormatFill == 1) { + // Fill Patern Style + $blockFillPatternStyle = 0; + switch ($conditional->getStyle()->getFill()->getFillType()) { + case PHPExcel_Style_Fill::FILL_NONE: + $blockFillPatternStyle = 0x00; + break; + case PHPExcel_Style_Fill::FILL_SOLID: + $blockFillPatternStyle = 0x01; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_MEDIUMGRAY: + $blockFillPatternStyle = 0x02; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_DARKGRAY: + $blockFillPatternStyle = 0x03; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRAY: + $blockFillPatternStyle = 0x04; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_DARKHORIZONTAL: + $blockFillPatternStyle = 0x05; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_DARKVERTICAL: + $blockFillPatternStyle = 0x06; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_DARKDOWN: + $blockFillPatternStyle = 0x07; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_DARKUP: + $blockFillPatternStyle = 0x08; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_DARKGRID: + $blockFillPatternStyle = 0x09; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_DARKTRELLIS: + $blockFillPatternStyle = 0x0A; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_LIGHTHORIZONTAL: + $blockFillPatternStyle = 0x0B; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_LIGHTVERTICAL: + $blockFillPatternStyle = 0x0C; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_LIGHTDOWN: + $blockFillPatternStyle = 0x0D; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_LIGHTUP: + $blockFillPatternStyle = 0x0E; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRID: + $blockFillPatternStyle = 0x0F; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_LIGHTTRELLIS: + $blockFillPatternStyle = 0x10; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_GRAY125: + $blockFillPatternStyle = 0x11; + break; + case PHPExcel_Style_Fill::FILL_PATTERN_GRAY0625: + $blockFillPatternStyle = 0x12; + break; + case PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR: + $blockFillPatternStyle = 0x00; + break; // does not exist in BIFF8 + case PHPExcel_Style_Fill::FILL_GRADIENT_PATH: + $blockFillPatternStyle = 0x00; + break; // does not exist in BIFF8 + default: + $blockFillPatternStyle = 0x00; + break; + } + // Color + switch ($conditional->getStyle()->getFill()->getStartColor()->getRGB()) { + case '000000': + $colorIdxBg = 0x08; + break; + case 'FFFFFF': + $colorIdxBg = 0x09; + break; + case 'FF0000': + $colorIdxBg = 0x0A; + break; + case '00FF00': + $colorIdxBg = 0x0B; + break; + case '0000FF': + $colorIdxBg = 0x0C; + break; + case 'FFFF00': + $colorIdxBg = 0x0D; + break; + case 'FF00FF': + $colorIdxBg = 0x0E; + break; + case '00FFFF': + $colorIdxBg = 0x0F; + break; + case '800000': + $colorIdxBg = 0x10; + break; + case '008000': + $colorIdxBg = 0x11; + break; + case '000080': + $colorIdxBg = 0x12; + break; + case '808000': + $colorIdxBg = 0x13; + break; + case '800080': + $colorIdxBg = 0x14; + break; + case '008080': + $colorIdxBg = 0x15; + break; + case 'C0C0C0': + $colorIdxBg = 0x16; + break; + case '808080': + $colorIdxBg = 0x17; + break; + case '9999FF': + $colorIdxBg = 0x18; + break; + case '993366': + $colorIdxBg = 0x19; + break; + case 'FFFFCC': + $colorIdxBg = 0x1A; + break; + case 'CCFFFF': + $colorIdxBg = 0x1B; + break; + case '660066': + $colorIdxBg = 0x1C; + break; + case 'FF8080': + $colorIdxBg = 0x1D; + break; + case '0066CC': + $colorIdxBg = 0x1E; + break; + case 'CCCCFF': + $colorIdxBg = 0x1F; + break; + case '000080': + $colorIdxBg = 0x20; + break; + case 'FF00FF': + $colorIdxBg = 0x21; + break; + case 'FFFF00': + $colorIdxBg = 0x22; + break; + case '00FFFF': + $colorIdxBg = 0x23; + break; + case '800080': + $colorIdxBg = 0x24; + break; + case '800000': + $colorIdxBg = 0x25; + break; + case '008080': + $colorIdxBg = 0x26; + break; + case '0000FF': + $colorIdxBg = 0x27; + break; + case '00CCFF': + $colorIdxBg = 0x28; + break; + case 'CCFFFF': + $colorIdxBg = 0x29; + break; + case 'CCFFCC': + $colorIdxBg = 0x2A; + break; + case 'FFFF99': + $colorIdxBg = 0x2B; + break; + case '99CCFF': + $colorIdxBg = 0x2C; + break; + case 'FF99CC': + $colorIdxBg = 0x2D; + break; + case 'CC99FF': + $colorIdxBg = 0x2E; + break; + case 'FFCC99': + $colorIdxBg = 0x2F; + break; + case '3366FF': + $colorIdxBg = 0x30; + break; + case '33CCCC': + $colorIdxBg = 0x31; + break; + case '99CC00': + $colorIdxBg = 0x32; + break; + case 'FFCC00': + $colorIdxBg = 0x33; + break; + case 'FF9900': + $colorIdxBg = 0x34; + break; + case 'FF6600': + $colorIdxBg = 0x35; + break; + case '666699': + $colorIdxBg = 0x36; + break; + case '969696': + $colorIdxBg = 0x37; + break; + case '003366': + $colorIdxBg = 0x38; + break; + case '339966': + $colorIdxBg = 0x39; + break; + case '003300': + $colorIdxBg = 0x3A; + break; + case '333300': + $colorIdxBg = 0x3B; + break; + case '993300': + $colorIdxBg = 0x3C; + break; + case '993366': + $colorIdxBg = 0x3D; + break; + case '333399': + $colorIdxBg = 0x3E; + break; + case '333333': + $colorIdxBg = 0x3F; + break; + default: + $colorIdxBg = 0x41; + break; + } + // Fg Color + switch ($conditional->getStyle()->getFill()->getEndColor()->getRGB()) { + case '000000': + $colorIdxFg = 0x08; + break; + case 'FFFFFF': + $colorIdxFg = 0x09; + break; + case 'FF0000': + $colorIdxFg = 0x0A; + break; + case '00FF00': + $colorIdxFg = 0x0B; + break; + case '0000FF': + $colorIdxFg = 0x0C; + break; + case 'FFFF00': + $colorIdxFg = 0x0D; + break; + case 'FF00FF': + $colorIdxFg = 0x0E; + break; + case '00FFFF': + $colorIdxFg = 0x0F; + break; + case '800000': + $colorIdxFg = 0x10; + break; + case '008000': + $colorIdxFg = 0x11; + break; + case '000080': + $colorIdxFg = 0x12; + break; + case '808000': + $colorIdxFg = 0x13; + break; + case '800080': + $colorIdxFg = 0x14; + break; + case '008080': + $colorIdxFg = 0x15; + break; + case 'C0C0C0': + $colorIdxFg = 0x16; + break; + case '808080': + $colorIdxFg = 0x17; + break; + case '9999FF': + $colorIdxFg = 0x18; + break; + case '993366': + $colorIdxFg = 0x19; + break; + case 'FFFFCC': + $colorIdxFg = 0x1A; + break; + case 'CCFFFF': + $colorIdxFg = 0x1B; + break; + case '660066': + $colorIdxFg = 0x1C; + break; + case 'FF8080': + $colorIdxFg = 0x1D; + break; + case '0066CC': + $colorIdxFg = 0x1E; + break; + case 'CCCCFF': + $colorIdxFg = 0x1F; + break; + case '000080': + $colorIdxFg = 0x20; + break; + case 'FF00FF': + $colorIdxFg = 0x21; + break; + case 'FFFF00': + $colorIdxFg = 0x22; + break; + case '00FFFF': + $colorIdxFg = 0x23; + break; + case '800080': + $colorIdxFg = 0x24; + break; + case '800000': + $colorIdxFg = 0x25; + break; + case '008080': + $colorIdxFg = 0x26; + break; + case '0000FF': + $colorIdxFg = 0x27; + break; + case '00CCFF': + $colorIdxFg = 0x28; + break; + case 'CCFFFF': + $colorIdxFg = 0x29; + break; + case 'CCFFCC': + $colorIdxFg = 0x2A; + break; + case 'FFFF99': + $colorIdxFg = 0x2B; + break; + case '99CCFF': + $colorIdxFg = 0x2C; + break; + case 'FF99CC': + $colorIdxFg = 0x2D; + break; + case 'CC99FF': + $colorIdxFg = 0x2E; + break; + case 'FFCC99': + $colorIdxFg = 0x2F; + break; + case '3366FF': + $colorIdxFg = 0x30; + break; + case '33CCCC': + $colorIdxFg = 0x31; + break; + case '99CC00': + $colorIdxFg = 0x32; + break; + case 'FFCC00': + $colorIdxFg = 0x33; + break; + case 'FF9900': + $colorIdxFg = 0x34; + break; + case 'FF6600': + $colorIdxFg = 0x35; + break; + case '666699': + $colorIdxFg = 0x36; + break; + case '969696': + $colorIdxFg = 0x37; + break; + case '003366': + $colorIdxFg = 0x38; + break; + case '339966': + $colorIdxFg = 0x39; + break; + case '003300': + $colorIdxFg = 0x3A; + break; + case '333300': + $colorIdxFg = 0x3B; + break; + case '993300': + $colorIdxFg = 0x3C; + break; + case '993366': + $colorIdxFg = 0x3D; + break; + case '333399': + $colorIdxFg = 0x3E; + break; + case '333333': + $colorIdxFg = 0x3F; + break; + default: + $colorIdxFg = 0x40; + break; + } + $dataBlockFill = pack('v', $blockFillPatternStyle); + $dataBlockFill .= pack('v', $colorIdxFg | ($colorIdxBg << 7)); + } + if ($bFormatProt == 1) { + $dataBlockProtection = 0; + if ($conditional->getStyle()->getProtection()->getLocked() == PHPExcel_Style_Protection::PROTECTION_PROTECTED) { + $dataBlockProtection = 1; + } + if ($conditional->getStyle()->getProtection()->getHidden() == PHPExcel_Style_Protection::PROTECTION_PROTECTED) { + $dataBlockProtection = 1 << 1; + } + } + + $data = pack('CCvvVv', $type, $operatorType, $szValue1, $szValue2, $flags, 0x0000); + if ($bFormatFont == 1) { // Block Formatting : OK + $data .= $dataBlockFont; + } + if ($bFormatAlign == 1) { + $data .= $dataBlockAlign; + } + if ($bFormatBorder == 1) { + $data .= $dataBlockBorder; + } + if ($bFormatFill == 1) { // Block Formatting : OK + $data .= $dataBlockFill; + } + if ($bFormatProt == 1) { + $data .= $dataBlockProtection; + } + if (!is_null($operand1)) { + $data .= $operand1; + } + if (!is_null($operand2)) { + $data .= $operand2; + } + $header = pack('vv', $record, strlen($data)); + $this->append($header . $data); + } + + /** + * Write CFHeader record + */ + private function writeCFHeader() + { + $record = 0x01B0; // Record identifier + $length = 0x0016; // Bytes to follow + + $numColumnMin = null; + $numColumnMax = null; + $numRowMin = null; + $numRowMax = null; + $arrConditional = array(); + foreach ($this->phpSheet->getConditionalStylesCollection() as $cellCoordinate => $conditionalStyles) { + foreach ($conditionalStyles as $conditional) { + if ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_EXPRESSION + || $conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CELLIS) { + if (!in_array($conditional->getHashCode(), $arrConditional)) { + $arrConditional[] = $conditional->getHashCode(); + } + // Cells + $arrCoord = PHPExcel_Cell::coordinateFromString($cellCoordinate); + if (!is_numeric($arrCoord[0])) { + $arrCoord[0] = PHPExcel_Cell::columnIndexFromString($arrCoord[0]); + } + if (is_null($numColumnMin) || ($numColumnMin > $arrCoord[0])) { + $numColumnMin = $arrCoord[0]; + } + if (is_null($numColumnMax) || ($numColumnMax < $arrCoord[0])) { + $numColumnMax = $arrCoord[0]; + } + if (is_null($numRowMin) || ($numRowMin > $arrCoord[1])) { + $numRowMin = $arrCoord[1]; + } + if (is_null($numRowMax) || ($numRowMax < $arrCoord[1])) { + $numRowMax = $arrCoord[1]; + } + } + } + } + $needRedraw = 1; + $cellRange = pack('vvvv', $numRowMin-1, $numRowMax-1, $numColumnMin-1, $numColumnMax-1); + + $header = pack('vv', $record, $length); + $data = pack('vv', count($arrConditional), $needRedraw); + $data .= $cellRange; + $data .= pack('v', 0x0001); + $data .= $cellRange; + $this->append($header . $data); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Xf.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Xf.php new file mode 100644 index 0000000..e41589a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/Xf.php @@ -0,0 +1,557 @@ +<?php + +/** + * PHPExcel_Writer_Excel5_Xf + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +// Original file header of PEAR::Spreadsheet_Excel_Writer_Format (used as the base for this class): +// ----------------------------------------------------------------------------------------- +// /* +// * Module written/ported by Xavier Noguer <xnoguer@rezebra.com> +// * +// * The majority of this is _NOT_ my code. I simply ported it from the +// * PERL Spreadsheet::WriteExcel module. +// * +// * The author of the Spreadsheet::WriteExcel module is John McNamara +// * <jmcnamara@cpan.org> +// * +// * I _DO_ maintain this code, and John McNamara has nothing to do with the +// * porting of this code to PHP. Any questions directly related to this +// * class library should be directed to me. +// * +// * License Information: +// * +// * Spreadsheet_Excel_Writer: A library for generating Excel Spreadsheets +// * Copyright (c) 2002-2003 Xavier Noguer xnoguer@rezebra.com +// * +// * 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 library 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 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 +// */ +class PHPExcel_Writer_Excel5_Xf +{ + /** + * Style XF or a cell XF ? + * + * @var boolean + */ + private $isStyleXf; + + /** + * Index to the FONT record. Index 4 does not exist + * @var integer + */ + private $fontIndex; + + /** + * An index (2 bytes) to a FORMAT record (number format). + * @var integer + */ + private $numberFormatIndex; + + /** + * 1 bit, apparently not used. + * @var integer + */ + private $textJustLast; + + /** + * The cell's foreground color. + * @var integer + */ + private $foregroundColor; + + /** + * The cell's background color. + * @var integer + */ + private $backgroundColor; + + /** + * Color of the bottom border of the cell. + * @var integer + */ + private $bottomBorderColor; + + /** + * Color of the top border of the cell. + * @var integer + */ + private $topBorderColor; + + /** + * Color of the left border of the cell. + * @var integer + */ + private $leftBorderColor; + + /** + * Color of the right border of the cell. + * @var integer + */ + private $rightBorderColor; + + /** + * Constructor + * + * @access public + * @param PHPExcel_Style The XF format + */ + public function __construct(PHPExcel_Style $style = null) + { + $this->isStyleXf = false; + $this->fontIndex = 0; + + $this->numberFormatIndex = 0; + + $this->textJustLast = 0; + + $this->foregroundColor = 0x40; + $this->backgroundColor = 0x41; + + $this->_diag = 0; + + $this->bottomBorderColor = 0x40; + $this->topBorderColor = 0x40; + $this->leftBorderColor = 0x40; + $this->rightBorderColor = 0x40; + $this->_diag_color = 0x40; + $this->_style = $style; + + } + + + /** + * Generate an Excel BIFF XF record (style or cell). + * + * @return string The XF record + */ + public function writeXf() + { + // Set the type of the XF record and some of the attributes. + if ($this->isStyleXf) { + $style = 0xFFF5; + } else { + $style = self::mapLocked($this->_style->getProtection()->getLocked()); + $style |= self::mapHidden($this->_style->getProtection()->getHidden()) << 1; + } + + // Flags to indicate if attributes have been set. + $atr_num = ($this->numberFormatIndex != 0)?1:0; + $atr_fnt = ($this->fontIndex != 0)?1:0; + $atr_alc = ((int) $this->_style->getAlignment()->getWrapText()) ? 1 : 0; + $atr_bdr = (self::mapBorderStyle($this->_style->getBorders()->getBottom()->getBorderStyle()) || + self::mapBorderStyle($this->_style->getBorders()->getTop()->getBorderStyle()) || + self::mapBorderStyle($this->_style->getBorders()->getLeft()->getBorderStyle()) || + self::mapBorderStyle($this->_style->getBorders()->getRight()->getBorderStyle()))?1:0; + $atr_pat = (($this->foregroundColor != 0x40) || + ($this->backgroundColor != 0x41) || + self::mapFillType($this->_style->getFill()->getFillType()))?1:0; + $atr_prot = self::mapLocked($this->_style->getProtection()->getLocked()) + | self::mapHidden($this->_style->getProtection()->getHidden()); + + // Zero the default border colour if the border has not been set. + if (self::mapBorderStyle($this->_style->getBorders()->getBottom()->getBorderStyle()) == 0) { + $this->bottomBorderColor = 0; + } + if (self::mapBorderStyle($this->_style->getBorders()->getTop()->getBorderStyle()) == 0) { + $this->topBorderColor = 0; + } + if (self::mapBorderStyle($this->_style->getBorders()->getRight()->getBorderStyle()) == 0) { + $this->rightBorderColor = 0; + } + if (self::mapBorderStyle($this->_style->getBorders()->getLeft()->getBorderStyle()) == 0) { + $this->leftBorderColor = 0; + } + if (self::mapBorderStyle($this->_style->getBorders()->getDiagonal()->getBorderStyle()) == 0) { + $this->_diag_color = 0; + } + + $record = 0x00E0; // Record identifier + $length = 0x0014; // Number of bytes to follow + + $ifnt = $this->fontIndex; // Index to FONT record + $ifmt = $this->numberFormatIndex; // Index to FORMAT record + + $align = $this->mapHAlign($this->_style->getAlignment()->getHorizontal()); // Alignment + $align |= (int) $this->_style->getAlignment()->getWrapText() << 3; + $align |= self::mapVAlign($this->_style->getAlignment()->getVertical()) << 4; + $align |= $this->textJustLast << 7; + + $used_attrib = $atr_num << 2; + $used_attrib |= $atr_fnt << 3; + $used_attrib |= $atr_alc << 4; + $used_attrib |= $atr_bdr << 5; + $used_attrib |= $atr_pat << 6; + $used_attrib |= $atr_prot << 7; + + $icv = $this->foregroundColor; // fg and bg pattern colors + $icv |= $this->backgroundColor << 7; + + $border1 = self::mapBorderStyle($this->_style->getBorders()->getLeft()->getBorderStyle()); // Border line style and color + $border1 |= self::mapBorderStyle($this->_style->getBorders()->getRight()->getBorderStyle()) << 4; + $border1 |= self::mapBorderStyle($this->_style->getBorders()->getTop()->getBorderStyle()) << 8; + $border1 |= self::mapBorderStyle($this->_style->getBorders()->getBottom()->getBorderStyle()) << 12; + $border1 |= $this->leftBorderColor << 16; + $border1 |= $this->rightBorderColor << 23; + + $diagonalDirection = $this->_style->getBorders()->getDiagonalDirection(); + $diag_tl_to_rb = $diagonalDirection == PHPExcel_Style_Borders::DIAGONAL_BOTH + || $diagonalDirection == PHPExcel_Style_Borders::DIAGONAL_DOWN; + $diag_tr_to_lb = $diagonalDirection == PHPExcel_Style_Borders::DIAGONAL_BOTH + || $diagonalDirection == PHPExcel_Style_Borders::DIAGONAL_UP; + $border1 |= $diag_tl_to_rb << 30; + $border1 |= $diag_tr_to_lb << 31; + + $border2 = $this->topBorderColor; // Border color + $border2 |= $this->bottomBorderColor << 7; + $border2 |= $this->_diag_color << 14; + $border2 |= self::mapBorderStyle($this->_style->getBorders()->getDiagonal()->getBorderStyle()) << 21; + $border2 |= self::mapFillType($this->_style->getFill()->getFillType()) << 26; + + $header = pack("vv", $record, $length); + + //BIFF8 options: identation, shrinkToFit and text direction + $biff8_options = $this->_style->getAlignment()->getIndent(); + $biff8_options |= (int) $this->_style->getAlignment()->getShrinkToFit() << 4; + + $data = pack("vvvC", $ifnt, $ifmt, $style, $align); + $data .= pack("CCC", self::mapTextRotation($this->_style->getAlignment()->getTextRotation()), $biff8_options, $used_attrib); + $data .= pack("VVv", $border1, $border2, $icv); + + return($header . $data); + } + + /** + * Is this a style XF ? + * + * @param boolean $value + */ + public function setIsStyleXf($value) + { + $this->isStyleXf = $value; + } + + /** + * Sets the cell's bottom border color + * + * @access public + * @param int $colorIndex Color index + */ + public function setBottomColor($colorIndex) + { + $this->bottomBorderColor = $colorIndex; + } + + /** + * Sets the cell's top border color + * + * @access public + * @param int $colorIndex Color index + */ + public function setTopColor($colorIndex) + { + $this->topBorderColor = $colorIndex; + } + + /** + * Sets the cell's left border color + * + * @access public + * @param int $colorIndex Color index + */ + public function setLeftColor($colorIndex) + { + $this->leftBorderColor = $colorIndex; + } + + /** + * Sets the cell's right border color + * + * @access public + * @param int $colorIndex Color index + */ + public function setRightColor($colorIndex) + { + $this->rightBorderColor = $colorIndex; + } + + /** + * Sets the cell's diagonal border color + * + * @access public + * @param int $colorIndex Color index + */ + public function setDiagColor($colorIndex) + { + $this->_diag_color = $colorIndex; + } + + + /** + * Sets the cell's foreground color + * + * @access public + * @param int $colorIndex Color index + */ + public function setFgColor($colorIndex) + { + $this->foregroundColor = $colorIndex; + } + + /** + * Sets the cell's background color + * + * @access public + * @param int $colorIndex Color index + */ + public function setBgColor($colorIndex) + { + $this->backgroundColor = $colorIndex; + } + + /** + * Sets the index to the number format record + * It can be date, time, currency, etc... + * + * @access public + * @param integer $numberFormatIndex Index to format record + */ + public function setNumberFormatIndex($numberFormatIndex) + { + $this->numberFormatIndex = $numberFormatIndex; + } + + /** + * Set the font index. + * + * @param int $value Font index, note that value 4 does not exist + */ + public function setFontIndex($value) + { + $this->fontIndex = $value; + } + + /** + * Map of BIFF2-BIFF8 codes for border styles + * @static array of int + * + */ + private static $mapBorderStyles = array( + PHPExcel_Style_Border::BORDER_NONE => 0x00, + PHPExcel_Style_Border::BORDER_THIN => 0x01, + PHPExcel_Style_Border::BORDER_MEDIUM => 0x02, + PHPExcel_Style_Border::BORDER_DASHED => 0x03, + PHPExcel_Style_Border::BORDER_DOTTED => 0x04, + PHPExcel_Style_Border::BORDER_THICK => 0x05, + PHPExcel_Style_Border::BORDER_DOUBLE => 0x06, + PHPExcel_Style_Border::BORDER_HAIR => 0x07, + PHPExcel_Style_Border::BORDER_MEDIUMDASHED => 0x08, + PHPExcel_Style_Border::BORDER_DASHDOT => 0x09, + PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT => 0x0A, + PHPExcel_Style_Border::BORDER_DASHDOTDOT => 0x0B, + PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT => 0x0C, + PHPExcel_Style_Border::BORDER_SLANTDASHDOT => 0x0D, + ); + + /** + * Map border style + * + * @param string $borderStyle + * @return int + */ + private static function mapBorderStyle($borderStyle) + { + if (isset(self::$mapBorderStyles[$borderStyle])) { + return self::$mapBorderStyles[$borderStyle]; + } + return 0x00; + } + + /** + * Map of BIFF2-BIFF8 codes for fill types + * @static array of int + * + */ + private static $mapFillTypes = array( + PHPExcel_Style_Fill::FILL_NONE => 0x00, + PHPExcel_Style_Fill::FILL_SOLID => 0x01, + PHPExcel_Style_Fill::FILL_PATTERN_MEDIUMGRAY => 0x02, + PHPExcel_Style_Fill::FILL_PATTERN_DARKGRAY => 0x03, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRAY => 0x04, + PHPExcel_Style_Fill::FILL_PATTERN_DARKHORIZONTAL => 0x05, + PHPExcel_Style_Fill::FILL_PATTERN_DARKVERTICAL => 0x06, + PHPExcel_Style_Fill::FILL_PATTERN_DARKDOWN => 0x07, + PHPExcel_Style_Fill::FILL_PATTERN_DARKUP => 0x08, + PHPExcel_Style_Fill::FILL_PATTERN_DARKGRID => 0x09, + PHPExcel_Style_Fill::FILL_PATTERN_DARKTRELLIS => 0x0A, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTHORIZONTAL => 0x0B, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTVERTICAL => 0x0C, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTDOWN => 0x0D, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTUP => 0x0E, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRID => 0x0F, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTTRELLIS => 0x10, + PHPExcel_Style_Fill::FILL_PATTERN_GRAY125 => 0x11, + PHPExcel_Style_Fill::FILL_PATTERN_GRAY0625 => 0x12, + PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR => 0x00, // does not exist in BIFF8 + PHPExcel_Style_Fill::FILL_GRADIENT_PATH => 0x00, // does not exist in BIFF8 + ); + + /** + * Map fill type + * + * @param string $fillType + * @return int + */ + private static function mapFillType($fillType) + { + if (isset(self::$mapFillTypes[$fillType])) { + return self::$mapFillTypes[$fillType]; + } + return 0x00; + } + + /** + * Map of BIFF2-BIFF8 codes for horizontal alignment + * @static array of int + * + */ + private static $mapHAlignments = array( + PHPExcel_Style_Alignment::HORIZONTAL_GENERAL => 0, + PHPExcel_Style_Alignment::HORIZONTAL_LEFT => 1, + PHPExcel_Style_Alignment::HORIZONTAL_CENTER => 2, + PHPExcel_Style_Alignment::HORIZONTAL_RIGHT => 3, + PHPExcel_Style_Alignment::HORIZONTAL_FILL => 4, + PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY => 5, + PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS => 6, + ); + + /** + * Map to BIFF2-BIFF8 codes for horizontal alignment + * + * @param string $hAlign + * @return int + */ + private function mapHAlign($hAlign) + { + if (isset(self::$mapHAlignments[$hAlign])) { + return self::$mapHAlignments[$hAlign]; + } + return 0; + } + + /** + * Map of BIFF2-BIFF8 codes for vertical alignment + * @static array of int + * + */ + private static $mapVAlignments = array( + PHPExcel_Style_Alignment::VERTICAL_TOP => 0, + PHPExcel_Style_Alignment::VERTICAL_CENTER => 1, + PHPExcel_Style_Alignment::VERTICAL_BOTTOM => 2, + PHPExcel_Style_Alignment::VERTICAL_JUSTIFY => 3, + ); + + /** + * Map to BIFF2-BIFF8 codes for vertical alignment + * + * @param string $vAlign + * @return int + */ + private static function mapVAlign($vAlign) + { + if (isset(self::$mapVAlignments[$vAlign])) { + return self::$mapVAlignments[$vAlign]; + } + return 2; + } + + /** + * Map to BIFF8 codes for text rotation angle + * + * @param int $textRotation + * @return int + */ + private static function mapTextRotation($textRotation) + { + if ($textRotation >= 0) { + return $textRotation; + } elseif ($textRotation == -165) { + return 255; + } elseif ($textRotation < 0) { + return 90 - $textRotation; + } + } + + /** + * Map locked + * + * @param string + * @return int + */ + private static function mapLocked($locked) + { + switch ($locked) { + case PHPExcel_Style_Protection::PROTECTION_INHERIT: + return 1; + case PHPExcel_Style_Protection::PROTECTION_PROTECTED: + return 1; + case PHPExcel_Style_Protection::PROTECTION_UNPROTECTED: + return 0; + default: + return 1; + } + } + + /** + * Map hidden + * + * @param string + * @return int + */ + private static function mapHidden($hidden) + { + switch ($hidden) { + case PHPExcel_Style_Protection::PROTECTION_INHERIT: + return 0; + case PHPExcel_Style_Protection::PROTECTION_PROTECTED: + return 1; + case PHPExcel_Style_Protection::PROTECTION_UNPROTECTED: + return 0; + default: + return 0; + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/_notes/dwsync.xml new file mode 100644 index 0000000..234ab12 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel5/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="BIFFwriter.php" server="62.244.88.21/deciday/" local="131919461954920468" remote="131880384600000000" Dst="1" /> +<file name="Font.php" server="62.244.88.21/deciday/" local="131919461955907014" remote="131880384600000000" Dst="1" /> +<file name="Escher.php" server="62.244.88.21/deciday/" local="131919461956100393" remote="131880384600000000" Dst="1" /> +<file name="Workbook.php" server="62.244.88.21/deciday/" local="131919461957843826" remote="131880384600000000" Dst="1" /> +<file name="Parser.php" server="62.244.88.21/deciday/" local="131919461958086248" remote="131880384600000000" Dst="1" /> +<file name="Xf.php" server="62.244.88.21/deciday/" local="131919461959596624" remote="131880384600000000" Dst="1" /> +<file name="Worksheet.php" server="62.244.88.21/deciday/" local="131919461961010050" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Exception.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Exception.php new file mode 100644 index 0000000..bfa0056 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/Exception.php @@ -0,0 +1,46 @@ +<?php + +/** + * PHPExcel_Writer_Exception + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_Exception extends PHPExcel_Exception +{ + /** + * Error handler callback + * + * @param mixed $code + * @param mixed $string + * @param mixed $file + * @param mixed $line + * @param mixed $context + */ + public static function errorHandlerCallback($code, $string, $file, $line, $context) + { + $e = new self($string, $code); + $e->line = $line; + $e->file = $file; + throw $e; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/HTML.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/HTML.php new file mode 100644 index 0000000..31d7c63 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/HTML.php @@ -0,0 +1,1612 @@ +<?php + +/** + * PHPExcel_Writer_HTML + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_HTML + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_HTML extends PHPExcel_Writer_Abstract implements PHPExcel_Writer_IWriter +{ + /** + * PHPExcel object + * + * @var PHPExcel + */ + protected $phpExcel; + + /** + * Sheet index to write + * + * @var int + */ + private $sheetIndex = 0; + + /** + * Images root + * + * @var string + */ + private $imagesRoot = '.'; + + /** + * embed images, or link to images + * + * @var boolean + */ + private $embedImages = false; + + /** + * Use inline CSS? + * + * @var boolean + */ + private $useInlineCss = false; + + /** + * Array of CSS styles + * + * @var array + */ + private $cssStyles; + + /** + * Array of column widths in points + * + * @var array + */ + private $columnWidths; + + /** + * Default font + * + * @var PHPExcel_Style_Font + */ + private $defaultFont; + + /** + * Flag whether spans have been calculated + * + * @var boolean + */ + private $spansAreCalculated = false; + + /** + * Excel cells that should not be written as HTML cells + * + * @var array + */ + private $isSpannedCell = array(); + + /** + * Excel cells that are upper-left corner in a cell merge + * + * @var array + */ + private $isBaseCell = array(); + + /** + * Excel rows that should not be written as HTML rows + * + * @var array + */ + private $isSpannedRow = array(); + + /** + * Is the current writer creating PDF? + * + * @var boolean + */ + protected $isPdf = false; + + /** + * Generate the Navigation block + * + * @var boolean + */ + private $generateSheetNavigationBlock = true; + + /** + * Create a new PHPExcel_Writer_HTML + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) + { + $this->phpExcel = $phpExcel; + $this->defaultFont = $this->phpExcel->getDefaultStyle()->getFont(); + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename + * @throws PHPExcel_Writer_Exception + */ + public function save($pFilename = null) + { + // garbage collect + $this->phpExcel->garbageCollect(); + + $saveDebugLog = PHPExcel_Calculation::getInstance($this->phpExcel)->getDebugLog()->getWriteDebugLog(); + PHPExcel_Calculation::getInstance($this->phpExcel)->getDebugLog()->setWriteDebugLog(false); + $saveArrayReturnType = PHPExcel_Calculation::getArrayReturnType(); + PHPExcel_Calculation::setArrayReturnType(PHPExcel_Calculation::RETURN_ARRAY_AS_VALUE); + + // Build CSS + $this->buildCSS(!$this->useInlineCss); + + // Open file + $fileHandle = fopen($pFilename, 'wb+'); + if ($fileHandle === false) { + throw new PHPExcel_Writer_Exception("Could not open file $pFilename for writing."); + } + + // Write headers + fwrite($fileHandle, $this->generateHTMLHeader(!$this->useInlineCss)); + + // Write navigation (tabs) + if ((!$this->isPdf) && ($this->generateSheetNavigationBlock)) { + fwrite($fileHandle, $this->generateNavigation()); + } + + // Write data + fwrite($fileHandle, $this->generateSheetData()); + + // Write footer + fwrite($fileHandle, $this->generateHTMLFooter()); + + // Close file + fclose($fileHandle); + + PHPExcel_Calculation::setArrayReturnType($saveArrayReturnType); + PHPExcel_Calculation::getInstance($this->phpExcel)->getDebugLog()->setWriteDebugLog($saveDebugLog); + } + + /** + * Map VAlign + * + * @param string $vAlign Vertical alignment + * @return string + */ + private function mapVAlign($vAlign) + { + switch ($vAlign) { + case PHPExcel_Style_Alignment::VERTICAL_BOTTOM: + return 'bottom'; + case PHPExcel_Style_Alignment::VERTICAL_TOP: + return 'top'; + case PHPExcel_Style_Alignment::VERTICAL_CENTER: + case PHPExcel_Style_Alignment::VERTICAL_JUSTIFY: + return 'middle'; + default: + return 'baseline'; + } + } + + /** + * Map HAlign + * + * @param string $hAlign Horizontal alignment + * @return string|false + */ + private function mapHAlign($hAlign) + { + switch ($hAlign) { + case PHPExcel_Style_Alignment::HORIZONTAL_GENERAL: + return false; + case PHPExcel_Style_Alignment::HORIZONTAL_LEFT: + return 'left'; + case PHPExcel_Style_Alignment::HORIZONTAL_RIGHT: + return 'right'; + case PHPExcel_Style_Alignment::HORIZONTAL_CENTER: + case PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS: + return 'center'; + case PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY: + return 'justify'; + default: + return false; + } + } + + /** + * Map border style + * + * @param int $borderStyle Sheet index + * @return string + */ + private function mapBorderStyle($borderStyle) + { + switch ($borderStyle) { + case PHPExcel_Style_Border::BORDER_NONE: + return 'none'; + case PHPExcel_Style_Border::BORDER_DASHDOT: + return '1px dashed'; + case PHPExcel_Style_Border::BORDER_DASHDOTDOT: + return '1px dotted'; + case PHPExcel_Style_Border::BORDER_DASHED: + return '1px dashed'; + case PHPExcel_Style_Border::BORDER_DOTTED: + return '1px dotted'; + case PHPExcel_Style_Border::BORDER_DOUBLE: + return '3px double'; + case PHPExcel_Style_Border::BORDER_HAIR: + return '1px solid'; + case PHPExcel_Style_Border::BORDER_MEDIUM: + return '2px solid'; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT: + return '2px dashed'; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT: + return '2px dotted'; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHED: + return '2px dashed'; + case PHPExcel_Style_Border::BORDER_SLANTDASHDOT: + return '2px dashed'; + case PHPExcel_Style_Border::BORDER_THICK: + return '3px solid'; + case PHPExcel_Style_Border::BORDER_THIN: + return '1px solid'; + default: + // map others to thin + return '1px solid'; + } + } + + /** + * Get sheet index + * + * @return int + */ + public function getSheetIndex() + { + return $this->sheetIndex; + } + + /** + * Set sheet index + * + * @param int $pValue Sheet index + * @return PHPExcel_Writer_HTML + */ + public function setSheetIndex($pValue = 0) + { + $this->sheetIndex = $pValue; + return $this; + } + + /** + * Get sheet index + * + * @return boolean + */ + public function getGenerateSheetNavigationBlock() + { + return $this->generateSheetNavigationBlock; + } + + /** + * Set sheet index + * + * @param boolean $pValue Flag indicating whether the sheet navigation block should be generated or not + * @return PHPExcel_Writer_HTML + */ + public function setGenerateSheetNavigationBlock($pValue = true) + { + $this->generateSheetNavigationBlock = (bool) $pValue; + return $this; + } + + /** + * Write all sheets (resets sheetIndex to NULL) + */ + public function writeAllSheets() + { + $this->sheetIndex = null; + return $this; + } + + /** + * Generate HTML header + * + * @param boolean $pIncludeStyles Include styles? + * @return string + * @throws PHPExcel_Writer_Exception + */ + public function generateHTMLHeader($pIncludeStyles = false) + { + // PHPExcel object known? + if (is_null($this->phpExcel)) { + throw new PHPExcel_Writer_Exception('Internal PHPExcel object not set to an instance of an object.'); + } + + // Construct HTML + $properties = $this->phpExcel->getProperties(); + $html = '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">' . PHP_EOL; + $html .= '<!-- Generated by PHPExcel - http://www.phpexcel.net -->' . PHP_EOL; + $html .= '<html>' . PHP_EOL; + $html .= ' <head>' . PHP_EOL; + $html .= ' <meta http-equiv="Content-Type" content="text/html; charset=utf-8">' . PHP_EOL; + if ($properties->getTitle() > '') { + $html .= ' <title>' . htmlspecialchars($properties->getTitle()) . '</title>' . PHP_EOL; + } + if ($properties->getCreator() > '') { + $html .= ' <meta name="author" content="' . htmlspecialchars($properties->getCreator()) . '" />' . PHP_EOL; + } + if ($properties->getTitle() > '') { + $html .= ' <meta name="title" content="' . htmlspecialchars($properties->getTitle()) . '" />' . PHP_EOL; + } + if ($properties->getDescription() > '') { + $html .= ' <meta name="description" content="' . htmlspecialchars($properties->getDescription()) . '" />' . PHP_EOL; + } + if ($properties->getSubject() > '') { + $html .= ' <meta name="subject" content="' . htmlspecialchars($properties->getSubject()) . '" />' . PHP_EOL; + } + if ($properties->getKeywords() > '') { + $html .= ' <meta name="keywords" content="' . htmlspecialchars($properties->getKeywords()) . '" />' . PHP_EOL; + } + if ($properties->getCategory() > '') { + $html .= ' <meta name="category" content="' . htmlspecialchars($properties->getCategory()) . '" />' . PHP_EOL; + } + if ($properties->getCompany() > '') { + $html .= ' <meta name="company" content="' . htmlspecialchars($properties->getCompany()) . '" />' . PHP_EOL; + } + if ($properties->getManager() > '') { + $html .= ' <meta name="manager" content="' . htmlspecialchars($properties->getManager()) . '" />' . PHP_EOL; + } + + if ($pIncludeStyles) { + $html .= $this->generateStyles(true); + } + + $html .= ' </head>' . PHP_EOL; + $html .= '' . PHP_EOL; + $html .= ' <body>' . PHP_EOL; + + return $html; + } + + /** + * Generate sheet data + * + * @return string + * @throws PHPExcel_Writer_Exception + */ + public function generateSheetData() + { + // PHPExcel object known? + if (is_null($this->phpExcel)) { + throw new PHPExcel_Writer_Exception('Internal PHPExcel object not set to an instance of an object.'); + } + + // Ensure that Spans have been calculated? + if ($this->sheetIndex !== null || !$this->spansAreCalculated) { + $this->calculateSpans(); + } + + // Fetch sheets + $sheets = array(); + if (is_null($this->sheetIndex)) { + $sheets = $this->phpExcel->getAllSheets(); + } else { + $sheets[] = $this->phpExcel->getSheet($this->sheetIndex); + } + + // Construct HTML + $html = ''; + + // Loop all sheets + $sheetId = 0; + foreach ($sheets as $sheet) { + // Write table header + $html .= $this->generateTableHeader($sheet); + + // Get worksheet dimension + $dimension = explode(':', $sheet->calculateWorksheetDimension()); + $dimension[0] = PHPExcel_Cell::coordinateFromString($dimension[0]); + $dimension[0][0] = PHPExcel_Cell::columnIndexFromString($dimension[0][0]) - 1; + $dimension[1] = PHPExcel_Cell::coordinateFromString($dimension[1]); + $dimension[1][0] = PHPExcel_Cell::columnIndexFromString($dimension[1][0]) - 1; + + // row min,max + $rowMin = $dimension[0][1]; + $rowMax = $dimension[1][1]; + + // calculate start of <tbody>, <thead> + $tbodyStart = $rowMin; + $theadStart = $theadEnd = 0; // default: no <thead> no </thead> + if ($sheet->getPageSetup()->isRowsToRepeatAtTopSet()) { + $rowsToRepeatAtTop = $sheet->getPageSetup()->getRowsToRepeatAtTop(); + + // we can only support repeating rows that start at top row + if ($rowsToRepeatAtTop[0] == 1) { + $theadStart = $rowsToRepeatAtTop[0]; + $theadEnd = $rowsToRepeatAtTop[1]; + $tbodyStart = $rowsToRepeatAtTop[1] + 1; + } + } + + // Loop through cells + $row = $rowMin-1; + while ($row++ < $rowMax) { + // <thead> ? + if ($row == $theadStart) { + $html .= ' <thead>' . PHP_EOL; + $cellType = 'th'; + } + + // <tbody> ? + if ($row == $tbodyStart) { + $html .= ' <tbody>' . PHP_EOL; + $cellType = 'td'; + } + + // Write row if there are HTML table cells in it + if (!isset($this->isSpannedRow[$sheet->getParent()->getIndex($sheet)][$row])) { + // Start a new rowData + $rowData = array(); + // Loop through columns + $column = $dimension[0][0] - 1; + while ($column++ < $dimension[1][0]) { + // Cell exists? + if ($sheet->cellExistsByColumnAndRow($column, $row)) { + $rowData[$column] = PHPExcel_Cell::stringFromColumnIndex($column) . $row; + } else { + $rowData[$column] = ''; + } + } + $html .= $this->generateRow($sheet, $rowData, $row - 1, $cellType); + } + + // </thead> ? + if ($row == $theadEnd) { + $html .= ' </thead>' . PHP_EOL; + } + } + $html .= $this->extendRowsForChartsAndImages($sheet, $row); + + // Close table body. + $html .= ' </tbody>' . PHP_EOL; + + // Write table footer + $html .= $this->generateTableFooter(); + + // Writing PDF? + if ($this->isPdf) { + if (is_null($this->sheetIndex) && $sheetId + 1 < $this->phpExcel->getSheetCount()) { + $html .= '<div style="page-break-before:always" />'; + } + } + + // Next sheet + ++$sheetId; + } + + return $html; + } + + /** + * Generate sheet tabs + * + * @return string + * @throws PHPExcel_Writer_Exception + */ + public function generateNavigation() + { + // PHPExcel object known? + if (is_null($this->phpExcel)) { + throw new PHPExcel_Writer_Exception('Internal PHPExcel object not set to an instance of an object.'); + } + + // Fetch sheets + $sheets = array(); + if (is_null($this->sheetIndex)) { + $sheets = $this->phpExcel->getAllSheets(); + } else { + $sheets[] = $this->phpExcel->getSheet($this->sheetIndex); + } + + // Construct HTML + $html = ''; + + // Only if there are more than 1 sheets + if (count($sheets) > 1) { + // Loop all sheets + $sheetId = 0; + + $html .= '<ul class="navigation">' . PHP_EOL; + + foreach ($sheets as $sheet) { + $html .= ' <li class="sheet' . $sheetId . '"><a href="#sheet' . $sheetId . '">' . $sheet->getTitle() . '</a></li>' . PHP_EOL; + ++$sheetId; + } + + $html .= '</ul>' . PHP_EOL; + } + + return $html; + } + + private function extendRowsForChartsAndImages(PHPExcel_Worksheet $pSheet, $row) + { + $rowMax = $row; + $colMax = 'A'; + if ($this->includeCharts) { + foreach ($pSheet->getChartCollection() as $chart) { + if ($chart instanceof PHPExcel_Chart) { + $chartCoordinates = $chart->getTopLeftPosition(); + $chartTL = PHPExcel_Cell::coordinateFromString($chartCoordinates['cell']); + $chartCol = PHPExcel_Cell::columnIndexFromString($chartTL[0]); + if ($chartTL[1] > $rowMax) { + $rowMax = $chartTL[1]; + if ($chartCol > PHPExcel_Cell::columnIndexFromString($colMax)) { + $colMax = $chartTL[0]; + } + } + } + } + } + + foreach ($pSheet->getDrawingCollection() as $drawing) { + if ($drawing instanceof PHPExcel_Worksheet_Drawing) { + $imageTL = PHPExcel_Cell::coordinateFromString($drawing->getCoordinates()); + $imageCol = PHPExcel_Cell::columnIndexFromString($imageTL[0]); + if ($imageTL[1] > $rowMax) { + $rowMax = $imageTL[1]; + if ($imageCol > PHPExcel_Cell::columnIndexFromString($colMax)) { + $colMax = $imageTL[0]; + } + } + } + } + + $html = ''; + $colMax++; + while ($row <= $rowMax) { + $html .= '<tr>'; + for ($col = 'A'; $col != $colMax; ++$col) { + $html .= '<td>'; + $html .= $this->writeImageInCell($pSheet, $col.$row); + if ($this->includeCharts) { + $html .= $this->writeChartInCell($pSheet, $col.$row); + } + $html .= '</td>'; + } + ++$row; + $html .= '</tr>'; + } + return $html; + } + + + /** + * Generate image tag in cell + * + * @param PHPExcel_Worksheet $pSheet PHPExcel_Worksheet + * @param string $coordinates Cell coordinates + * @return string + * @throws PHPExcel_Writer_Exception + */ + private function writeImageInCell(PHPExcel_Worksheet $pSheet, $coordinates) + { + // Construct HTML + $html = ''; + + // Write images + foreach ($pSheet->getDrawingCollection() as $drawing) { + if ($drawing instanceof PHPExcel_Worksheet_Drawing) { + if ($drawing->getCoordinates() == $coordinates) { + $filename = $drawing->getPath(); + + // Strip off eventual '.' + if (substr($filename, 0, 1) == '.') { + $filename = substr($filename, 1); + } + + // Prepend images root + $filename = $this->getImagesRoot() . $filename; + + // Strip off eventual '.' + if (substr($filename, 0, 1) == '.' && substr($filename, 0, 2) != './') { + $filename = substr($filename, 1); + } + + // Convert UTF8 data to PCDATA + $filename = htmlspecialchars($filename); + + $html .= PHP_EOL; + if ((!$this->embedImages) || ($this->isPdf)) { + $imageData = $filename; + } else { + $imageDetails = getimagesize($filename); + if ($fp = fopen($filename, "rb", 0)) { + $picture = fread($fp, filesize($filename)); + fclose($fp); + // base64 encode the binary data, then break it + // into chunks according to RFC 2045 semantics + $base64 = chunk_split(base64_encode($picture)); + $imageData = 'data:'.$imageDetails['mime'].';base64,' . $base64; + } else { + $imageData = $filename; + } + } + + $html .= '<div style="position: relative;">'; + $html .= '<img style="position: absolute; z-index: 1; left: ' . + $drawing->getOffsetX() . 'px; top: ' . $drawing->getOffsetY() . 'px; width: ' . + $drawing->getWidth() . 'px; height: ' . $drawing->getHeight() . 'px;" src="' . + $imageData . '" border="0" />'; + $html .= '</div>'; + } + } elseif ($drawing instanceof PHPExcel_Worksheet_MemoryDrawing) { + if ($drawing->getCoordinates() != $coordinates) { + continue; + } + ob_start(); // Let's start output buffering. + imagepng($drawing->getImageResource()); // This will normally output the image, but because of ob_start(), it won't. + $contents = ob_get_contents(); // Instead, output above is saved to $contents + ob_end_clean(); // End the output buffer. + + $dataUri = "data:image/jpeg;base64," . base64_encode($contents); + + // Because of the nature of tables, width is more important than height. + // max-width: 100% ensures that image doesnt overflow containing cell + // width: X sets width of supplied image. + // As a result, images bigger than cell will be contained and images smaller will not get stretched + $html .= '<img src="'.$dataUri.'" style="max-width:100%;width:'.$drawing->getWidth().'px;" />'; + } + } + + return $html; + } + + /** + * Generate chart tag in cell + * + * @param PHPExcel_Worksheet $pSheet PHPExcel_Worksheet + * @param string $coordinates Cell coordinates + * @return string + * @throws PHPExcel_Writer_Exception + */ + private function writeChartInCell(PHPExcel_Worksheet $pSheet, $coordinates) + { + // Construct HTML + $html = ''; + + // Write charts + foreach ($pSheet->getChartCollection() as $chart) { + if ($chart instanceof PHPExcel_Chart) { + $chartCoordinates = $chart->getTopLeftPosition(); + if ($chartCoordinates['cell'] == $coordinates) { + $chartFileName = PHPExcel_Shared_File::sys_get_temp_dir().'/'.uniqid().'.png'; + if (!$chart->render($chartFileName)) { + return; + } + + $html .= PHP_EOL; + $imageDetails = getimagesize($chartFileName); + if ($fp = fopen($chartFileName, "rb", 0)) { + $picture = fread($fp, filesize($chartFileName)); + fclose($fp); + // base64 encode the binary data, then break it + // into chunks according to RFC 2045 semantics + $base64 = chunk_split(base64_encode($picture)); + $imageData = 'data:'.$imageDetails['mime'].';base64,' . $base64; + + $html .= '<div style="position: relative;">'; + $html .= '<img style="position: absolute; z-index: 1; left: ' . $chartCoordinates['xOffset'] . 'px; top: ' . $chartCoordinates['yOffset'] . 'px; width: ' . $imageDetails[0] . 'px; height: ' . $imageDetails[1] . 'px;" src="' . $imageData . '" border="0" />' . PHP_EOL; + $html .= '</div>'; + + unlink($chartFileName); + } + } + } + } + + // Return + return $html; + } + + /** + * Generate CSS styles + * + * @param boolean $generateSurroundingHTML Generate surrounding HTML tags? (&lt;style&gt; and &lt;/style&gt;) + * @return string + * @throws PHPExcel_Writer_Exception + */ + public function generateStyles($generateSurroundingHTML = true) + { + // PHPExcel object known? + if (is_null($this->phpExcel)) { + throw new PHPExcel_Writer_Exception('Internal PHPExcel object not set to an instance of an object.'); + } + + // Build CSS + $css = $this->buildCSS($generateSurroundingHTML); + + // Construct HTML + $html = ''; + + // Start styles + if ($generateSurroundingHTML) { + $html .= ' <style type="text/css">' . PHP_EOL; + $html .= ' html { ' . $this->assembleCSS($css['html']) . ' }' . PHP_EOL; + } + + // Write all other styles + foreach ($css as $styleName => $styleDefinition) { + if ($styleName != 'html') { + $html .= ' ' . $styleName . ' { ' . $this->assembleCSS($styleDefinition) . ' }' . PHP_EOL; + } + } + + // End styles + if ($generateSurroundingHTML) { + $html .= ' </style>' . PHP_EOL; + } + + // Return + return $html; + } + + /** + * Build CSS styles + * + * @param boolean $generateSurroundingHTML Generate surrounding HTML style? (html { }) + * @return array + * @throws PHPExcel_Writer_Exception + */ + public function buildCSS($generateSurroundingHTML = true) + { + // PHPExcel object known? + if (is_null($this->phpExcel)) { + throw new PHPExcel_Writer_Exception('Internal PHPExcel object not set to an instance of an object.'); + } + + // Cached? + if (!is_null($this->cssStyles)) { + return $this->cssStyles; + } + + // Ensure that spans have been calculated + if (!$this->spansAreCalculated) { + $this->calculateSpans(); + } + + // Construct CSS + $css = array(); + + // Start styles + if ($generateSurroundingHTML) { + // html { } + $css['html']['font-family'] = 'Calibri, Arial, Helvetica, sans-serif'; + $css['html']['font-size'] = '11pt'; + $css['html']['background-color'] = 'white'; + } + + + // table { } + $css['table']['border-collapse'] = 'collapse'; + if (!$this->isPdf) { + $css['table']['page-break-after'] = 'always'; + } + + // .gridlines td { } + $css['.gridlines td']['border'] = '1px dotted black'; + $css['.gridlines th']['border'] = '1px dotted black'; + + // .b {} + $css['.b']['text-align'] = 'center'; // BOOL + + // .e {} + $css['.e']['text-align'] = 'center'; // ERROR + + // .f {} + $css['.f']['text-align'] = 'right'; // FORMULA + + // .inlineStr {} + $css['.inlineStr']['text-align'] = 'left'; // INLINE + + // .n {} + $css['.n']['text-align'] = 'right'; // NUMERIC + + // .s {} + $css['.s']['text-align'] = 'left'; // STRING + + // Calculate cell style hashes + foreach ($this->phpExcel->getCellXfCollection() as $index => $style) { + $css['td.style' . $index] = $this->createCSSStyle($style); + $css['th.style' . $index] = $this->createCSSStyle($style); + } + + // Fetch sheets + $sheets = array(); + if (is_null($this->sheetIndex)) { + $sheets = $this->phpExcel->getAllSheets(); + } else { + $sheets[] = $this->phpExcel->getSheet($this->sheetIndex); + } + + // Build styles per sheet + foreach ($sheets as $sheet) { + // Calculate hash code + $sheetIndex = $sheet->getParent()->getIndex($sheet); + + // Build styles + // Calculate column widths + $sheet->calculateColumnWidths(); + + // col elements, initialize + $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($sheet->getHighestColumn()) - 1; + $column = -1; + while ($column++ < $highestColumnIndex) { + $this->columnWidths[$sheetIndex][$column] = 42; // approximation + $css['table.sheet' . $sheetIndex . ' col.col' . $column]['width'] = '42pt'; + } + + // col elements, loop through columnDimensions and set width + foreach ($sheet->getColumnDimensions() as $columnDimension) { + if (($width = PHPExcel_Shared_Drawing::cellDimensionToPixels($columnDimension->getWidth(), $this->defaultFont)) >= 0) { + $width = PHPExcel_Shared_Drawing::pixelsToPoints($width); + $column = PHPExcel_Cell::columnIndexFromString($columnDimension->getColumnIndex()) - 1; + $this->columnWidths[$sheetIndex][$column] = $width; + $css['table.sheet' . $sheetIndex . ' col.col' . $column]['width'] = $width . 'pt'; + + if ($columnDimension->getVisible() === false) { + $css['table.sheet' . $sheetIndex . ' col.col' . $column]['visibility'] = 'collapse'; + $css['table.sheet' . $sheetIndex . ' col.col' . $column]['*display'] = 'none'; // target IE6+7 + } + } + } + + // Default row height + $rowDimension = $sheet->getDefaultRowDimension(); + + // table.sheetN tr { } + $css['table.sheet' . $sheetIndex . ' tr'] = array(); + + if ($rowDimension->getRowHeight() == -1) { + $pt_height = PHPExcel_Shared_Font::getDefaultRowHeightByFont($this->phpExcel->getDefaultStyle()->getFont()); + } else { + $pt_height = $rowDimension->getRowHeight(); + } + $css['table.sheet' . $sheetIndex . ' tr']['height'] = $pt_height . 'pt'; + if ($rowDimension->getVisible() === false) { + $css['table.sheet' . $sheetIndex . ' tr']['display'] = 'none'; + $css['table.sheet' . $sheetIndex . ' tr']['visibility'] = 'hidden'; + } + + // Calculate row heights + foreach ($sheet->getRowDimensions() as $rowDimension) { + $row = $rowDimension->getRowIndex() - 1; + + // table.sheetN tr.rowYYYYYY { } + $css['table.sheet' . $sheetIndex . ' tr.row' . $row] = array(); + + if ($rowDimension->getRowHeight() == -1) { + $pt_height = PHPExcel_Shared_Font::getDefaultRowHeightByFont($this->phpExcel->getDefaultStyle()->getFont()); + } else { + $pt_height = $rowDimension->getRowHeight(); + } + $css['table.sheet' . $sheetIndex . ' tr.row' . $row]['height'] = $pt_height . 'pt'; + if ($rowDimension->getVisible() === false) { + $css['table.sheet' . $sheetIndex . ' tr.row' . $row]['display'] = 'none'; + $css['table.sheet' . $sheetIndex . ' tr.row' . $row]['visibility'] = 'hidden'; + } + } + } + + // Cache + if (is_null($this->cssStyles)) { + $this->cssStyles = $css; + } + + // Return + return $css; + } + + /** + * Create CSS style + * + * @param PHPExcel_Style $pStyle PHPExcel_Style + * @return array + */ + private function createCSSStyle(PHPExcel_Style $pStyle) + { + // Construct CSS + $css = ''; + + // Create CSS + $css = array_merge( + $this->createCSSStyleAlignment($pStyle->getAlignment()), + $this->createCSSStyleBorders($pStyle->getBorders()), + $this->createCSSStyleFont($pStyle->getFont()), + $this->createCSSStyleFill($pStyle->getFill()) + ); + + // Return + return $css; + } + + /** + * Create CSS style (PHPExcel_Style_Alignment) + * + * @param PHPExcel_Style_Alignment $pStyle PHPExcel_Style_Alignment + * @return array + */ + private function createCSSStyleAlignment(PHPExcel_Style_Alignment $pStyle) + { + // Construct CSS + $css = array(); + + // Create CSS + $css['vertical-align'] = $this->mapVAlign($pStyle->getVertical()); + if ($textAlign = $this->mapHAlign($pStyle->getHorizontal())) { + $css['text-align'] = $textAlign; + if (in_array($textAlign, array('left', 'right'))) { + $css['padding-'.$textAlign] = (string)((int)$pStyle->getIndent() * 9).'px'; + } + } + + return $css; + } + + /** + * Create CSS style (PHPExcel_Style_Font) + * + * @param PHPExcel_Style_Font $pStyle PHPExcel_Style_Font + * @return array + */ + private function createCSSStyleFont(PHPExcel_Style_Font $pStyle) + { + // Construct CSS + $css = array(); + + // Create CSS + if ($pStyle->getBold()) { + $css['font-weight'] = 'bold'; + } + if ($pStyle->getUnderline() != PHPExcel_Style_Font::UNDERLINE_NONE && $pStyle->getStrikethrough()) { + $css['text-decoration'] = 'underline line-through'; + } elseif ($pStyle->getUnderline() != PHPExcel_Style_Font::UNDERLINE_NONE) { + $css['text-decoration'] = 'underline'; + } elseif ($pStyle->getStrikethrough()) { + $css['text-decoration'] = 'line-through'; + } + if ($pStyle->getItalic()) { + $css['font-style'] = 'italic'; + } + + $css['color'] = '#' . $pStyle->getColor()->getRGB(); + $css['font-family'] = '\'' . $pStyle->getName() . '\''; + $css['font-size'] = $pStyle->getSize() . 'pt'; + + return $css; + } + + /** + * Create CSS style (PHPExcel_Style_Borders) + * + * @param PHPExcel_Style_Borders $pStyle PHPExcel_Style_Borders + * @return array + */ + private function createCSSStyleBorders(PHPExcel_Style_Borders $pStyle) + { + // Construct CSS + $css = array(); + + // Create CSS + $css['border-bottom'] = $this->createCSSStyleBorder($pStyle->getBottom()); + $css['border-top'] = $this->createCSSStyleBorder($pStyle->getTop()); + $css['border-left'] = $this->createCSSStyleBorder($pStyle->getLeft()); + $css['border-right'] = $this->createCSSStyleBorder($pStyle->getRight()); + + return $css; + } + + /** + * Create CSS style (PHPExcel_Style_Border) + * + * @param PHPExcel_Style_Border $pStyle PHPExcel_Style_Border + * @return string + */ + private function createCSSStyleBorder(PHPExcel_Style_Border $pStyle) + { + // Create CSS +// $css = $this->mapBorderStyle($pStyle->getBorderStyle()) . ' #' . $pStyle->getColor()->getRGB(); + // Create CSS - add !important to non-none border styles for merged cells + $borderStyle = $this->mapBorderStyle($pStyle->getBorderStyle()); + $css = $borderStyle . ' #' . $pStyle->getColor()->getRGB() . (($borderStyle == 'none') ? '' : ' !important'); + + return $css; + } + + /** + * Create CSS style (PHPExcel_Style_Fill) + * + * @param PHPExcel_Style_Fill $pStyle PHPExcel_Style_Fill + * @return array + */ + private function createCSSStyleFill(PHPExcel_Style_Fill $pStyle) + { + // Construct HTML + $css = array(); + + // Create CSS + $value = $pStyle->getFillType() == PHPExcel_Style_Fill::FILL_NONE ? + 'white' : '#' . $pStyle->getStartColor()->getRGB(); + $css['background-color'] = $value; + + return $css; + } + + /** + * Generate HTML footer + */ + public function generateHTMLFooter() + { + // Construct HTML + $html = ''; + $html .= ' </body>' . PHP_EOL; + $html .= '</html>' . PHP_EOL; + + return $html; + } + + /** + * Generate table header + * + * @param PHPExcel_Worksheet $pSheet The worksheet for the table we are writing + * @return string + * @throws PHPExcel_Writer_Exception + */ + private function generateTableHeader($pSheet) + { + $sheetIndex = $pSheet->getParent()->getIndex($pSheet); + + // Construct HTML + $html = ''; + $html .= $this->setMargins($pSheet); + + if (!$this->useInlineCss) { + $gridlines = $pSheet->getShowGridlines() ? ' gridlines' : ''; + $html .= ' <table border="0" cellpadding="0" cellspacing="0" id="sheet' . $sheetIndex . '" class="sheet' . $sheetIndex . $gridlines . '">' . PHP_EOL; + } else { + $style = isset($this->cssStyles['table']) ? + $this->assembleCSS($this->cssStyles['table']) : ''; + + if ($this->isPdf && $pSheet->getShowGridlines()) { + $html .= ' <table border="1" cellpadding="1" id="sheet' . $sheetIndex . '" cellspacing="1" style="' . $style . '">' . PHP_EOL; + } else { + $html .= ' <table border="0" cellpadding="1" id="sheet' . $sheetIndex . '" cellspacing="0" style="' . $style . '">' . PHP_EOL; + } + } + + // Write <col> elements + $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($pSheet->getHighestColumn()) - 1; + $i = -1; + while ($i++ < $highestColumnIndex) { + if (!$this->isPdf) { + if (!$this->useInlineCss) { + $html .= ' <col class="col' . $i . '">' . PHP_EOL; + } else { + $style = isset($this->cssStyles['table.sheet' . $sheetIndex . ' col.col' . $i]) ? + $this->assembleCSS($this->cssStyles['table.sheet' . $sheetIndex . ' col.col' . $i]) : ''; + $html .= ' <col style="' . $style . '">' . PHP_EOL; + } + } + } + + return $html; + } + + /** + * Generate table footer + * + * @throws PHPExcel_Writer_Exception + */ + private function generateTableFooter() + { + $html = ' </table>' . PHP_EOL; + + return $html; + } + + /** + * Generate row + * + * @param PHPExcel_Worksheet $pSheet PHPExcel_Worksheet + * @param array $pValues Array containing cells in a row + * @param int $pRow Row number (0-based) + * @return string + * @throws PHPExcel_Writer_Exception + */ + private function generateRow(PHPExcel_Worksheet $pSheet, $pValues = null, $pRow = 0, $cellType = 'td') + { + if (is_array($pValues)) { + // Construct HTML + $html = ''; + + // Sheet index + $sheetIndex = $pSheet->getParent()->getIndex($pSheet); + + // DomPDF and breaks + if ($this->isPdf && count($pSheet->getBreaks()) > 0) { + $breaks = $pSheet->getBreaks(); + + // check if a break is needed before this row + if (isset($breaks['A' . $pRow])) { + // close table: </table> + $html .= $this->generateTableFooter(); + + // insert page break + $html .= '<div style="page-break-before:always" />'; + + // open table again: <table> + <col> etc. + $html .= $this->generateTableHeader($pSheet); + } + } + + // Write row start + if (!$this->useInlineCss) { + $html .= ' <tr class="row' . $pRow . '">' . PHP_EOL; + } else { + $style = isset($this->cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]) + ? $this->assembleCSS($this->cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]) : ''; + + $html .= ' <tr style="' . $style . '">' . PHP_EOL; + } + + // Write cells + $colNum = 0; + foreach ($pValues as $cellAddress) { + $cell = ($cellAddress > '') ? $pSheet->getCell($cellAddress) : ''; + $coordinate = PHPExcel_Cell::stringFromColumnIndex($colNum) . ($pRow + 1); + if (!$this->useInlineCss) { + $cssClass = ''; + $cssClass = 'column' . $colNum; + } else { + $cssClass = array(); + if ($cellType == 'th') { + if (isset($this->cssStyles['table.sheet' . $sheetIndex . ' th.column' . $colNum])) { + $this->cssStyles['table.sheet' . $sheetIndex . ' th.column' . $colNum]; + } + } else { + if (isset($this->cssStyles['table.sheet' . $sheetIndex . ' td.column' . $colNum])) { + $this->cssStyles['table.sheet' . $sheetIndex . ' td.column' . $colNum]; + } + } + } + $colSpan = 1; + $rowSpan = 1; + + // initialize + $cellData = '&nbsp;'; + + // PHPExcel_Cell + if ($cell instanceof PHPExcel_Cell) { + $cellData = ''; + if (is_null($cell->getParent())) { + $cell->attach($pSheet); + } + // Value + if ($cell->getValue() instanceof PHPExcel_RichText) { + // Loop through rich text elements + $elements = $cell->getValue()->getRichTextElements(); + foreach ($elements as $element) { + // Rich text start? + if ($element instanceof PHPExcel_RichText_Run) { + $cellData .= '<span style="' . $this->assembleCSS($this->createCSSStyleFont($element->getFont())) . '">'; + + if ($element->getFont()->getSuperScript()) { + $cellData .= '<sup>'; + } elseif ($element->getFont()->getSubScript()) { + $cellData .= '<sub>'; + } + } + + // Convert UTF8 data to PCDATA + $cellText = $element->getText(); + $cellData .= htmlspecialchars($cellText); + + if ($element instanceof PHPExcel_RichText_Run) { + if ($element->getFont()->getSuperScript()) { + $cellData .= '</sup>'; + } elseif ($element->getFont()->getSubScript()) { + $cellData .= '</sub>'; + } + + $cellData .= '</span>'; + } + } + } else { + if ($this->preCalculateFormulas) { + $cellData = PHPExcel_Style_NumberFormat::toFormattedString( + $cell->getCalculatedValue(), + $pSheet->getParent()->getCellXfByIndex($cell->getXfIndex())->getNumberFormat()->getFormatCode(), + array($this, 'formatColor') + ); + } else { + $cellData = PHPExcel_Style_NumberFormat::toFormattedString( + $cell->getValue(), + $pSheet->getParent()->getCellXfByIndex($cell->getXfIndex())->getNumberFormat()->getFormatCode(), + array($this, 'formatColor') + ); + } + $cellData = htmlspecialchars($cellData); + if ($pSheet->getParent()->getCellXfByIndex($cell->getXfIndex())->getFont()->getSuperScript()) { + $cellData = '<sup>'.$cellData.'</sup>'; + } elseif ($pSheet->getParent()->getCellXfByIndex($cell->getXfIndex())->getFont()->getSubScript()) { + $cellData = '<sub>'.$cellData.'</sub>'; + } + } + + // Converts the cell content so that spaces occuring at beginning of each new line are replaced by &nbsp; + // Example: " Hello\n to the world" is converted to "&nbsp;&nbsp;Hello\n&nbsp;to the world" + $cellData = preg_replace("/(?m)(?:^|\\G) /", '&nbsp;', $cellData); + + // convert newline "\n" to '<br>' + $cellData = nl2br($cellData); + + // Extend CSS class? + if (!$this->useInlineCss) { + $cssClass .= ' style' . $cell->getXfIndex(); + $cssClass .= ' ' . $cell->getDataType(); + } else { + if ($cellType == 'th') { + if (isset($this->cssStyles['th.style' . $cell->getXfIndex()])) { + $cssClass = array_merge($cssClass, $this->cssStyles['th.style' . $cell->getXfIndex()]); + } + } else { + if (isset($this->cssStyles['td.style' . $cell->getXfIndex()])) { + $cssClass = array_merge($cssClass, $this->cssStyles['td.style' . $cell->getXfIndex()]); + } + } + + // General horizontal alignment: Actual horizontal alignment depends on dataType + $sharedStyle = $pSheet->getParent()->getCellXfByIndex($cell->getXfIndex()); + if ($sharedStyle->getAlignment()->getHorizontal() == PHPExcel_Style_Alignment::HORIZONTAL_GENERAL + && isset($this->cssStyles['.' . $cell->getDataType()]['text-align'])) { + $cssClass['text-align'] = $this->cssStyles['.' . $cell->getDataType()]['text-align']; + } + } + } + + // Hyperlink? + if ($pSheet->hyperlinkExists($coordinate) && !$pSheet->getHyperlink($coordinate)->isInternal()) { + $cellData = '<a href="' . htmlspecialchars($pSheet->getHyperlink($coordinate)->getUrl()) . '" title="' . htmlspecialchars($pSheet->getHyperlink($coordinate)->getTooltip()) . '">' . $cellData . '</a>'; + } + + // Should the cell be written or is it swallowed by a rowspan or colspan? + $writeCell = !(isset($this->isSpannedCell[$pSheet->getParent()->getIndex($pSheet)][$pRow + 1][$colNum]) + && $this->isSpannedCell[$pSheet->getParent()->getIndex($pSheet)][$pRow + 1][$colNum]); + + // Colspan and Rowspan + $colspan = 1; + $rowspan = 1; + if (isset($this->isBaseCell[$pSheet->getParent()->getIndex($pSheet)][$pRow + 1][$colNum])) { + $spans = $this->isBaseCell[$pSheet->getParent()->getIndex($pSheet)][$pRow + 1][$colNum]; + $rowSpan = $spans['rowspan']; + $colSpan = $spans['colspan']; + + // Also apply style from last cell in merge to fix borders - + // relies on !important for non-none border declarations in createCSSStyleBorder + $endCellCoord = PHPExcel_Cell::stringFromColumnIndex($colNum + $colSpan - 1) . ($pRow + $rowSpan); + if (!$this->useInlineCss) { + $cssClass .= ' style' . $pSheet->getCell($endCellCoord)->getXfIndex(); + } + } + + // Write + if ($writeCell) { + // Column start + $html .= ' <' . $cellType; + if (!$this->useInlineCss) { + $html .= ' class="' . $cssClass . '"'; + } else { + //** Necessary redundant code for the sake of PHPExcel_Writer_PDF ** + // We must explicitly write the width of the <td> element because TCPDF + // does not recognize e.g. <col style="width:42pt"> + $width = 0; + $i = $colNum - 1; + $e = $colNum + $colSpan - 1; + while ($i++ < $e) { + if (isset($this->columnWidths[$sheetIndex][$i])) { + $width += $this->columnWidths[$sheetIndex][$i]; + } + } + $cssClass['width'] = $width . 'pt'; + + // We must also explicitly write the height of the <td> element because TCPDF + // does not recognize e.g. <tr style="height:50pt"> + if (isset($this->cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]['height'])) { + $height = $this->cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]['height']; + $cssClass['height'] = $height; + } + //** end of redundant code ** + + $html .= ' style="' . $this->assembleCSS($cssClass) . '"'; + } + if ($colSpan > 1) { + $html .= ' colspan="' . $colSpan . '"'; + } + if ($rowSpan > 1) { + $html .= ' rowspan="' . $rowSpan . '"'; + } + $html .= '>'; + + // Image? + $html .= $this->writeImageInCell($pSheet, $coordinate); + + // Chart? + if ($this->includeCharts) { + $html .= $this->writeChartInCell($pSheet, $coordinate); + } + + // Cell data + $html .= $cellData; + + // Column end + $html .= '</'.$cellType.'>' . PHP_EOL; + } + + // Next column + ++$colNum; + } + + // Write row end + $html .= ' </tr>' . PHP_EOL; + + // Return + return $html; + } else { + throw new PHPExcel_Writer_Exception("Invalid parameters passed."); + } + } + + /** + * Takes array where of CSS properties / values and converts to CSS string + * + * @param array + * @return string + */ + private function assembleCSS($pValue = array()) + { + $pairs = array(); + foreach ($pValue as $property => $value) { + $pairs[] = $property . ':' . $value; + } + $string = implode('; ', $pairs); + + return $string; + } + + /** + * Get images root + * + * @return string + */ + public function getImagesRoot() + { + return $this->imagesRoot; + } + + /** + * Set images root + * + * @param string $pValue + * @return PHPExcel_Writer_HTML + */ + public function setImagesRoot($pValue = '.') + { + $this->imagesRoot = $pValue; + return $this; + } + + /** + * Get embed images + * + * @return boolean + */ + public function getEmbedImages() + { + return $this->embedImages; + } + + /** + * Set embed images + * + * @param boolean $pValue + * @return PHPExcel_Writer_HTML + */ + public function setEmbedImages($pValue = '.') + { + $this->embedImages = $pValue; + return $this; + } + + /** + * Get use inline CSS? + * + * @return boolean + */ + public function getUseInlineCss() + { + return $this->useInlineCss; + } + + /** + * Set use inline CSS? + * + * @param boolean $pValue + * @return PHPExcel_Writer_HTML + */ + public function setUseInlineCss($pValue = false) + { + $this->useInlineCss = $pValue; + return $this; + } + + /** + * Add color to formatted string as inline style + * + * @param string $pValue Plain formatted value without color + * @param string $pFormat Format code + * @return string + */ + public function formatColor($pValue, $pFormat) + { + // Color information, e.g. [Red] is always at the beginning + $color = null; // initialize + $matches = array(); + + $color_regex = '/^\\[[a-zA-Z]+\\]/'; + if (preg_match($color_regex, $pFormat, $matches)) { + $color = str_replace('[', '', $matches[0]); + $color = str_replace(']', '', $color); + $color = strtolower($color); + } + + // convert to PCDATA + $value = htmlspecialchars($pValue); + + // color span tag + if ($color !== null) { + $value = '<span style="color:' . $color . '">' . $value . '</span>'; + } + + return $value; + } + + /** + * Calculate information about HTML colspan and rowspan which is not always the same as Excel's + */ + private function calculateSpans() + { + // Identify all cells that should be omitted in HTML due to cell merge. + // In HTML only the upper-left cell should be written and it should have + // appropriate rowspan / colspan attribute + $sheetIndexes = $this->sheetIndex !== null ? + array($this->sheetIndex) : range(0, $this->phpExcel->getSheetCount() - 1); + + foreach ($sheetIndexes as $sheetIndex) { + $sheet = $this->phpExcel->getSheet($sheetIndex); + + $candidateSpannedRow = array(); + + // loop through all Excel merged cells + foreach ($sheet->getMergeCells() as $cells) { + list($cells,) = PHPExcel_Cell::splitRange($cells); + $first = $cells[0]; + $last = $cells[1]; + + list($fc, $fr) = PHPExcel_Cell::coordinateFromString($first); + $fc = PHPExcel_Cell::columnIndexFromString($fc) - 1; + + list($lc, $lr) = PHPExcel_Cell::coordinateFromString($last); + $lc = PHPExcel_Cell::columnIndexFromString($lc) - 1; + + // loop through the individual cells in the individual merge + $r = $fr - 1; + while ($r++ < $lr) { + // also, flag this row as a HTML row that is candidate to be omitted + $candidateSpannedRow[$r] = $r; + + $c = $fc - 1; + while ($c++ < $lc) { + if (!($c == $fc && $r == $fr)) { + // not the upper-left cell (should not be written in HTML) + $this->isSpannedCell[$sheetIndex][$r][$c] = array( + 'baseCell' => array($fr, $fc), + ); + } else { + // upper-left is the base cell that should hold the colspan/rowspan attribute + $this->isBaseCell[$sheetIndex][$r][$c] = array( + 'xlrowspan' => $lr - $fr + 1, // Excel rowspan + 'rowspan' => $lr - $fr + 1, // HTML rowspan, value may change + 'xlcolspan' => $lc - $fc + 1, // Excel colspan + 'colspan' => $lc - $fc + 1, // HTML colspan, value may change + ); + } + } + } + } + + // Identify which rows should be omitted in HTML. These are the rows where all the cells + // participate in a merge and the where base cells are somewhere above. + $countColumns = PHPExcel_Cell::columnIndexFromString($sheet->getHighestColumn()); + foreach ($candidateSpannedRow as $rowIndex) { + if (isset($this->isSpannedCell[$sheetIndex][$rowIndex])) { + if (count($this->isSpannedCell[$sheetIndex][$rowIndex]) == $countColumns) { + $this->isSpannedRow[$sheetIndex][$rowIndex] = $rowIndex; + }; + } + } + + // For each of the omitted rows we found above, the affected rowspans should be subtracted by 1 + if (isset($this->isSpannedRow[$sheetIndex])) { + foreach ($this->isSpannedRow[$sheetIndex] as $rowIndex) { + $adjustedBaseCells = array(); + $c = -1; + $e = $countColumns - 1; + while ($c++ < $e) { + $baseCell = $this->isSpannedCell[$sheetIndex][$rowIndex][$c]['baseCell']; + + if (!in_array($baseCell, $adjustedBaseCells)) { + // subtract rowspan by 1 + --$this->isBaseCell[$sheetIndex][ $baseCell[0] ][ $baseCell[1] ]['rowspan']; + $adjustedBaseCells[] = $baseCell; + } + } + } + } + + // TODO: Same for columns + } + + // We have calculated the spans + $this->spansAreCalculated = true; + } + + private function setMargins(PHPExcel_Worksheet $pSheet) + { + $htmlPage = '@page { '; + $htmlBody = 'body { '; + + $left = PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getLeft()) . 'in; '; + $htmlPage .= 'margin-left: ' . $left; + $htmlBody .= 'margin-left: ' . $left; + $right = PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getRight()) . 'in; '; + $htmlPage .= 'margin-right: ' . $right; + $htmlBody .= 'margin-right: ' . $right; + $top = PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getTop()) . 'in; '; + $htmlPage .= 'margin-top: ' . $top; + $htmlBody .= 'margin-top: ' . $top; + $bottom = PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getBottom()) . 'in; '; + $htmlPage .= 'margin-bottom: ' . $bottom; + $htmlBody .= 'margin-bottom: ' . $bottom; + + $htmlPage .= "}\n"; + $htmlBody .= "}\n"; + + return "<style>\n" . $htmlPage . $htmlBody . "</style>\n"; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/IWriter.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/IWriter.php new file mode 100644 index 0000000..c7cfe74 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/IWriter.php @@ -0,0 +1,37 @@ +<?php + +/** + * PHPExcel_Writer_IWriter + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +interface PHPExcel_Writer_IWriter +{ + /** + * Save PHPExcel to file + * + * @param string $pFilename Name of the file to save + * @throws PHPExcel_Writer_Exception + */ + public function save($pFilename = null); +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument.php new file mode 100644 index 0000000..912ba9d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument.php @@ -0,0 +1,190 @@ +<?php + +/** + * PHPExcel_Writer_OpenDocument + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_OpenDocument extends PHPExcel_Writer_Abstract implements PHPExcel_Writer_IWriter +{ + /** + * Private writer parts + * + * @var PHPExcel_Writer_OpenDocument_WriterPart[] + */ + private $writerParts = array(); + + /** + * Private PHPExcel + * + * @var PHPExcel + */ + private $spreadSheet; + + /** + * Create a new PHPExcel_Writer_OpenDocument + * + * @param PHPExcel $pPHPExcel + */ + public function __construct(PHPExcel $pPHPExcel = null) + { + $this->setPHPExcel($pPHPExcel); + + $writerPartsArray = array( + 'content' => 'PHPExcel_Writer_OpenDocument_Content', + 'meta' => 'PHPExcel_Writer_OpenDocument_Meta', + 'meta_inf' => 'PHPExcel_Writer_OpenDocument_MetaInf', + 'mimetype' => 'PHPExcel_Writer_OpenDocument_Mimetype', + 'settings' => 'PHPExcel_Writer_OpenDocument_Settings', + 'styles' => 'PHPExcel_Writer_OpenDocument_Styles', + 'thumbnails' => 'PHPExcel_Writer_OpenDocument_Thumbnails' + ); + + foreach ($writerPartsArray as $writer => $class) { + $this->writerParts[$writer] = new $class($this); + } + } + + /** + * Get writer part + * + * @param string $pPartName Writer part name + * @return PHPExcel_Writer_Excel2007_WriterPart + */ + public function getWriterPart($pPartName = '') + { + if ($pPartName != '' && isset($this->writerParts[strtolower($pPartName)])) { + return $this->writerParts[strtolower($pPartName)]; + } else { + return null; + } + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename + * @throws PHPExcel_Writer_Exception + */ + public function save($pFilename = null) + { + if (!$this->spreadSheet) { + throw new PHPExcel_Writer_Exception('PHPExcel object unassigned.'); + } + + // garbage collect + $this->spreadSheet->garbageCollect(); + + // If $pFilename is php://output or php://stdout, make it a temporary file... + $originalFilename = $pFilename; + if (strtolower($pFilename) == 'php://output' || strtolower($pFilename) == 'php://stdout') { + $pFilename = @tempnam(PHPExcel_Shared_File::sys_get_temp_dir(), 'phpxltmp'); + if ($pFilename == '') { + $pFilename = $originalFilename; + } + } + + $objZip = $this->createZip($pFilename); + + $objZip->addFromString('META-INF/manifest.xml', $this->getWriterPart('meta_inf')->writeManifest()); + $objZip->addFromString('Thumbnails/thumbnail.png', $this->getWriterPart('thumbnails')->writeThumbnail()); + $objZip->addFromString('content.xml', $this->getWriterPart('content')->write()); + $objZip->addFromString('meta.xml', $this->getWriterPart('meta')->write()); + $objZip->addFromString('mimetype', $this->getWriterPart('mimetype')->write()); + $objZip->addFromString('settings.xml', $this->getWriterPart('settings')->write()); + $objZip->addFromString('styles.xml', $this->getWriterPart('styles')->write()); + + // Close file + if ($objZip->close() === false) { + throw new PHPExcel_Writer_Exception("Could not close zip file $pFilename."); + } + + // If a temporary file was used, copy it to the correct file stream + if ($originalFilename != $pFilename) { + if (copy($pFilename, $originalFilename) === false) { + throw new PHPExcel_Writer_Exception("Could not copy temporary zip file $pFilename to $originalFilename."); + } + @unlink($pFilename); + } + } + + /** + * Create zip object + * + * @param string $pFilename + * @throws PHPExcel_Writer_Exception + * @return ZipArchive + */ + private function createZip($pFilename) + { + // Create new ZIP file and open it for writing + $zipClass = PHPExcel_Settings::getZipClass(); + $objZip = new $zipClass(); + + // Retrieve OVERWRITE and CREATE constants from the instantiated zip class + // This method of accessing constant values from a dynamic class should work with all appropriate versions of PHP + $ro = new ReflectionObject($objZip); + $zipOverWrite = $ro->getConstant('OVERWRITE'); + $zipCreate = $ro->getConstant('CREATE'); + + if (file_exists($pFilename)) { + unlink($pFilename); + } + // Try opening the ZIP file + if ($objZip->open($pFilename, $zipOverWrite) !== true) { + if ($objZip->open($pFilename, $zipCreate) !== true) { + throw new PHPExcel_Writer_Exception("Could not open $pFilename for writing."); + } + } + + return $objZip; + } + + /** + * Get PHPExcel object + * + * @return PHPExcel + * @throws PHPExcel_Writer_Exception + */ + public function getPHPExcel() + { + if ($this->spreadSheet !== null) { + return $this->spreadSheet; + } else { + throw new PHPExcel_Writer_Exception('No PHPExcel assigned.'); + } + } + + /** + * Set PHPExcel object + * + * @param PHPExcel $pPHPExcel PHPExcel object + * @throws PHPExcel_Writer_Exception + * @return PHPExcel_Writer_Excel2007 + */ + public function setPHPExcel(PHPExcel $pPHPExcel = null) + { + $this->spreadSheet = $pPHPExcel; + return $this; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Cell/Comment.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Cell/Comment.php new file mode 100644 index 0000000..f1e98a1 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Cell/Comment.php @@ -0,0 +1,63 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Writer_OpenDocument_Cell_Comment + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @author Alexander Pervakov <frost-nzcr4@jagmort.com> + */ +class PHPExcel_Writer_OpenDocument_Cell_Comment +{ + public static function write(PHPExcel_Shared_XMLWriter $objWriter, PHPExcel_Cell $cell) + { + $comments = $cell->getWorksheet()->getComments(); + if (!isset($comments[$cell->getCoordinate()])) { + return; + } + $comment = $comments[$cell->getCoordinate()]; + + $objWriter->startElement('office:annotation'); + //$objWriter->writeAttribute('draw:style-name', 'gr1'); + //$objWriter->writeAttribute('draw:text-style-name', 'P1'); + $objWriter->writeAttribute('svg:width', $comment->getWidth()); + $objWriter->writeAttribute('svg:height', $comment->getHeight()); + $objWriter->writeAttribute('svg:x', $comment->getMarginLeft()); + $objWriter->writeAttribute('svg:y', $comment->getMarginTop()); + //$objWriter->writeAttribute('draw:caption-point-x', $comment->getMarginLeft()); + //$objWriter->writeAttribute('draw:caption-point-y', $comment->getMarginTop()); + $objWriter->writeElement('dc:creator', $comment->getAuthor()); + // TODO: Not realized in PHPExcel_Comment yet. + //$objWriter->writeElement('dc:date', $comment->getDate()); + $objWriter->writeElement('text:p', $comment->getText()->getPlainText()); + //$objWriter->writeAttribute('draw:text-style-name', 'P1'); + $objWriter->endElement(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Cell/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Cell/_notes/dwsync.xml new file mode 100644 index 0000000..9ffc0ee --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Cell/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Comment.php" server="62.244.88.21/deciday/" local="131919461964177001" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Content.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Content.php new file mode 100644 index 0000000..a34b167 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Content.php @@ -0,0 +1,272 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + + +/** + * PHPExcel_Writer_OpenDocument_Content + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @author Alexander Pervakov <frost-nzcr4@jagmort.com> + */ +class PHPExcel_Writer_OpenDocument_Content extends PHPExcel_Writer_OpenDocument_WriterPart +{ + const NUMBER_COLS_REPEATED_MAX = 1024; + const NUMBER_ROWS_REPEATED_MAX = 1048576; + + /** + * Write content.xml to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function write(PHPExcel $pPHPExcel = null) + { + if (!$pPHPExcel) { + $pPHPExcel = $this->getParentWriter()->getPHPExcel(); /* @var $pPHPExcel PHPExcel */ + } + + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8'); + + // Content + $objWriter->startElement('office:document-content'); + $objWriter->writeAttribute('xmlns:office', 'urn:oasis:names:tc:opendocument:xmlns:office:1.0'); + $objWriter->writeAttribute('xmlns:style', 'urn:oasis:names:tc:opendocument:xmlns:style:1.0'); + $objWriter->writeAttribute('xmlns:text', 'urn:oasis:names:tc:opendocument:xmlns:text:1.0'); + $objWriter->writeAttribute('xmlns:table', 'urn:oasis:names:tc:opendocument:xmlns:table:1.0'); + $objWriter->writeAttribute('xmlns:draw', 'urn:oasis:names:tc:opendocument:xmlns:drawing:1.0'); + $objWriter->writeAttribute('xmlns:fo', 'urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0'); + $objWriter->writeAttribute('xmlns:xlink', 'http://www.w3.org/1999/xlink'); + $objWriter->writeAttribute('xmlns:dc', 'http://purl.org/dc/elements/1.1/'); + $objWriter->writeAttribute('xmlns:meta', 'urn:oasis:names:tc:opendocument:xmlns:meta:1.0'); + $objWriter->writeAttribute('xmlns:number', 'urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0'); + $objWriter->writeAttribute('xmlns:presentation', 'urn:oasis:names:tc:opendocument:xmlns:presentation:1.0'); + $objWriter->writeAttribute('xmlns:svg', 'urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0'); + $objWriter->writeAttribute('xmlns:chart', 'urn:oasis:names:tc:opendocument:xmlns:chart:1.0'); + $objWriter->writeAttribute('xmlns:dr3d', 'urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0'); + $objWriter->writeAttribute('xmlns:math', 'http://www.w3.org/1998/Math/MathML'); + $objWriter->writeAttribute('xmlns:form', 'urn:oasis:names:tc:opendocument:xmlns:form:1.0'); + $objWriter->writeAttribute('xmlns:script', 'urn:oasis:names:tc:opendocument:xmlns:script:1.0'); + $objWriter->writeAttribute('xmlns:ooo', 'http://openoffice.org/2004/office'); + $objWriter->writeAttribute('xmlns:ooow', 'http://openoffice.org/2004/writer'); + $objWriter->writeAttribute('xmlns:oooc', 'http://openoffice.org/2004/calc'); + $objWriter->writeAttribute('xmlns:dom', 'http://www.w3.org/2001/xml-events'); + $objWriter->writeAttribute('xmlns:xforms', 'http://www.w3.org/2002/xforms'); + $objWriter->writeAttribute('xmlns:xsd', 'http://www.w3.org/2001/XMLSchema'); + $objWriter->writeAttribute('xmlns:xsi', 'http://www.w3.org/2001/XMLSchema-instance'); + $objWriter->writeAttribute('xmlns:rpt', 'http://openoffice.org/2005/report'); + $objWriter->writeAttribute('xmlns:of', 'urn:oasis:names:tc:opendocument:xmlns:of:1.2'); + $objWriter->writeAttribute('xmlns:xhtml', 'http://www.w3.org/1999/xhtml'); + $objWriter->writeAttribute('xmlns:grddl', 'http://www.w3.org/2003/g/data-view#'); + $objWriter->writeAttribute('xmlns:tableooo', 'http://openoffice.org/2009/table'); + $objWriter->writeAttribute('xmlns:field', 'urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0'); + $objWriter->writeAttribute('xmlns:formx', 'urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0'); + $objWriter->writeAttribute('xmlns:css3t', 'http://www.w3.org/TR/css3-text/'); + $objWriter->writeAttribute('office:version', '1.2'); + + $objWriter->writeElement('office:scripts'); + $objWriter->writeElement('office:font-face-decls'); + $objWriter->writeElement('office:automatic-styles'); + + $objWriter->startElement('office:body'); + $objWriter->startElement('office:spreadsheet'); + $objWriter->writeElement('table:calculation-settings'); + $this->writeSheets($objWriter); + $objWriter->writeElement('table:named-expressions'); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + return $objWriter->getData(); + } + + /** + * Write sheets + * + * @param PHPExcel_Shared_XMLWriter $objWriter + */ + private function writeSheets(PHPExcel_Shared_XMLWriter $objWriter) + { + $pPHPExcel = $this->getParentWriter()->getPHPExcel(); /* @var $pPHPExcel PHPExcel */ + + $sheet_count = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheet_count; $i++) { + //$this->getWriterPart('Worksheet')->writeWorksheet()); + $objWriter->startElement('table:table'); + $objWriter->writeAttribute('table:name', $pPHPExcel->getSheet($i)->getTitle()); + $objWriter->writeElement('office:forms'); + $objWriter->startElement('table:table-column'); + $objWriter->writeAttribute('table:number-columns-repeated', self::NUMBER_COLS_REPEATED_MAX); + $objWriter->endElement(); + $this->writeRows($objWriter, $pPHPExcel->getSheet($i)); + $objWriter->endElement(); + } + } + + /** + * Write rows of the specified sheet + * + * @param PHPExcel_Shared_XMLWriter $objWriter + * @param PHPExcel_Worksheet $sheet + */ + private function writeRows(PHPExcel_Shared_XMLWriter $objWriter, PHPExcel_Worksheet $sheet) + { + $number_rows_repeated = self::NUMBER_ROWS_REPEATED_MAX; + $span_row = 0; + $rows = $sheet->getRowIterator(); + while ($rows->valid()) { + $number_rows_repeated--; + $row = $rows->current(); + if ($row->getCellIterator()->valid()) { + if ($span_row) { + $objWriter->startElement('table:table-row'); + if ($span_row > 1) { + $objWriter->writeAttribute('table:number-rows-repeated', $span_row); + } + $objWriter->startElement('table:table-cell'); + $objWriter->writeAttribute('table:number-columns-repeated', self::NUMBER_COLS_REPEATED_MAX); + $objWriter->endElement(); + $objWriter->endElement(); + $span_row = 0; + } + $objWriter->startElement('table:table-row'); + $this->writeCells($objWriter, $row); + $objWriter->endElement(); + } else { + $span_row++; + } + $rows->next(); + } + } + + /** + * Write cells of the specified row + * + * @param PHPExcel_Shared_XMLWriter $objWriter + * @param PHPExcel_Worksheet_Row $row + * @throws PHPExcel_Writer_Exception + */ + private function writeCells(PHPExcel_Shared_XMLWriter $objWriter, PHPExcel_Worksheet_Row $row) + { + $number_cols_repeated = self::NUMBER_COLS_REPEATED_MAX; + $prev_column = -1; + $cells = $row->getCellIterator(); + while ($cells->valid()) { + $cell = $cells->current(); + $column = PHPExcel_Cell::columnIndexFromString($cell->getColumn()) - 1; + + $this->writeCellSpan($objWriter, $column, $prev_column); + $objWriter->startElement('table:table-cell'); + + switch ($cell->getDataType()) { + case PHPExcel_Cell_DataType::TYPE_BOOL: + $objWriter->writeAttribute('office:value-type', 'boolean'); + $objWriter->writeAttribute('office:value', $cell->getValue()); + $objWriter->writeElement('text:p', $cell->getValue()); + break; + + case PHPExcel_Cell_DataType::TYPE_ERROR: + throw new PHPExcel_Writer_Exception('Writing of error not implemented yet.'); + break; + + case PHPExcel_Cell_DataType::TYPE_FORMULA: + try { + $formula_value = $cell->getCalculatedValue(); + } catch (Exception $e) { + $formula_value = $cell->getValue(); + } + $objWriter->writeAttribute('table:formula', 'of:' . $cell->getValue()); + if (is_numeric($formula_value)) { + $objWriter->writeAttribute('office:value-type', 'float'); + } else { + $objWriter->writeAttribute('office:value-type', 'string'); + } + $objWriter->writeAttribute('office:value', $formula_value); + $objWriter->writeElement('text:p', $formula_value); + break; + + case PHPExcel_Cell_DataType::TYPE_INLINE: + throw new PHPExcel_Writer_Exception('Writing of inline not implemented yet.'); + break; + + case PHPExcel_Cell_DataType::TYPE_NUMERIC: + $objWriter->writeAttribute('office:value-type', 'float'); + $objWriter->writeAttribute('office:value', $cell->getValue()); + $objWriter->writeElement('text:p', $cell->getValue()); + break; + + case PHPExcel_Cell_DataType::TYPE_STRING: + $objWriter->writeAttribute('office:value-type', 'string'); + $objWriter->writeElement('text:p', $cell->getValue()); + break; + } + PHPExcel_Writer_OpenDocument_Cell_Comment::write($objWriter, $cell); + $objWriter->endElement(); + $prev_column = $column; + $cells->next(); + } + $number_cols_repeated = $number_cols_repeated - $prev_column - 1; + if ($number_cols_repeated > 0) { + if ($number_cols_repeated > 1) { + $objWriter->startElement('table:table-cell'); + $objWriter->writeAttribute('table:number-columns-repeated', $number_cols_repeated); + $objWriter->endElement(); + } else { + $objWriter->writeElement('table:table-cell'); + } + } + } + + /** + * Write span + * + * @param PHPExcel_Shared_XMLWriter $objWriter + * @param integer $curColumn + * @param integer $prevColumn + */ + private function writeCellSpan(PHPExcel_Shared_XMLWriter $objWriter, $curColumn, $prevColumn) + { + $diff = $curColumn - $prevColumn - 1; + if (1 === $diff) { + $objWriter->writeElement('table:table-cell'); + } elseif ($diff > 1) { + $objWriter->startElement('table:table-cell'); + $objWriter->writeAttribute('table:number-columns-repeated', $diff); + $objWriter->endElement(); + } + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Meta.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Meta.php new file mode 100644 index 0000000..1a5c5fd --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Meta.php @@ -0,0 +1,95 @@ +<?php + +/** + * PHPExcel_Writer_OpenDocument_Meta + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_OpenDocument_Meta extends PHPExcel_Writer_OpenDocument_WriterPart +{ + /** + * Write meta.xml to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function write(PHPExcel $pPHPExcel = null) + { + if (!$pPHPExcel) { + $pPHPExcel = $this->getParentWriter()->getPHPExcel(); + } + + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8'); + + // Meta + $objWriter->startElement('office:document-meta'); + + $objWriter->writeAttribute('xmlns:office', 'urn:oasis:names:tc:opendocument:xmlns:office:1.0'); + $objWriter->writeAttribute('xmlns:xlink', 'http://www.w3.org/1999/xlink'); + $objWriter->writeAttribute('xmlns:dc', 'http://purl.org/dc/elements/1.1/'); + $objWriter->writeAttribute('xmlns:meta', 'urn:oasis:names:tc:opendocument:xmlns:meta:1.0'); + $objWriter->writeAttribute('xmlns:ooo', 'http://openoffice.org/2004/office'); + $objWriter->writeAttribute('xmlns:grddl', 'http://www.w3.org/2003/g/data-view#'); + $objWriter->writeAttribute('office:version', '1.2'); + + $objWriter->startElement('office:meta'); + + $objWriter->writeElement('meta:initial-creator', $pPHPExcel->getProperties()->getCreator()); + $objWriter->writeElement('dc:creator', $pPHPExcel->getProperties()->getCreator()); + $objWriter->writeElement('meta:creation-date', date(DATE_W3C, $pPHPExcel->getProperties()->getCreated())); + $objWriter->writeElement('dc:date', date(DATE_W3C, $pPHPExcel->getProperties()->getCreated())); + $objWriter->writeElement('dc:title', $pPHPExcel->getProperties()->getTitle()); + $objWriter->writeElement('dc:description', $pPHPExcel->getProperties()->getDescription()); + $objWriter->writeElement('dc:subject', $pPHPExcel->getProperties()->getSubject()); + $keywords = explode(' ', $pPHPExcel->getProperties()->getKeywords()); + foreach ($keywords as $keyword) { + $objWriter->writeElement('meta:keyword', $keyword); + } + + //<meta:document-statistic meta:table-count="XXX" meta:cell-count="XXX" meta:object-count="XXX"/> + $objWriter->startElement('meta:user-defined'); + $objWriter->writeAttribute('meta:name', 'Company'); + $objWriter->writeRaw($pPHPExcel->getProperties()->getCompany()); + $objWriter->endElement(); + + $objWriter->startElement('meta:user-defined'); + $objWriter->writeAttribute('meta:name', 'category'); + $objWriter->writeRaw($pPHPExcel->getProperties()->getCategory()); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + return $objWriter->getData(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/MetaInf.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/MetaInf.php new file mode 100644 index 0000000..c43b723 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/MetaInf.php @@ -0,0 +1,87 @@ +<?php + +/** + * PHPExcel_Writer_OpenDocument_MetaInf + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_OpenDocument_MetaInf extends PHPExcel_Writer_OpenDocument_WriterPart +{ + /** + * Write META-INF/manifest.xml to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeManifest(PHPExcel $pPHPExcel = null) + { + if (!$pPHPExcel) { + $pPHPExcel = $this->getParentWriter()->getPHPExcel(); + } + + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8'); + + // Manifest + $objWriter->startElement('manifest:manifest'); + $objWriter->writeAttribute('xmlns:manifest', 'urn:oasis:names:tc:opendocument:xmlns:manifest:1.0'); + $objWriter->writeAttribute('manifest:version', '1.2'); + + $objWriter->startElement('manifest:file-entry'); + $objWriter->writeAttribute('manifest:full-path', '/'); + $objWriter->writeAttribute('manifest:version', '1.2'); + $objWriter->writeAttribute('manifest:media-type', 'application/vnd.oasis.opendocument.spreadsheet'); + $objWriter->endElement(); + $objWriter->startElement('manifest:file-entry'); + $objWriter->writeAttribute('manifest:full-path', 'meta.xml'); + $objWriter->writeAttribute('manifest:media-type', 'text/xml'); + $objWriter->endElement(); + $objWriter->startElement('manifest:file-entry'); + $objWriter->writeAttribute('manifest:full-path', 'settings.xml'); + $objWriter->writeAttribute('manifest:media-type', 'text/xml'); + $objWriter->endElement(); + $objWriter->startElement('manifest:file-entry'); + $objWriter->writeAttribute('manifest:full-path', 'content.xml'); + $objWriter->writeAttribute('manifest:media-type', 'text/xml'); + $objWriter->endElement(); + $objWriter->startElement('manifest:file-entry'); + $objWriter->writeAttribute('manifest:full-path', 'Thumbnails/thumbnail.png'); + $objWriter->writeAttribute('manifest:media-type', 'image/png'); + $objWriter->endElement(); + $objWriter->startElement('manifest:file-entry'); + $objWriter->writeAttribute('manifest:full-path', 'styles.xml'); + $objWriter->writeAttribute('manifest:media-type', 'text/xml'); + $objWriter->endElement(); + $objWriter->endElement(); + + return $objWriter->getData(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Mimetype.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Mimetype.php new file mode 100644 index 0000000..d51a8b9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Mimetype.php @@ -0,0 +1,41 @@ +<?php + +/** + * PHPExcel + * + * PHPExcel_Writer_OpenDocument_Mimetype + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_OpenDocument_Mimetype extends PHPExcel_Writer_OpenDocument_WriterPart +{ + /** + * Write mimetype to plain text format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function write(PHPExcel $pPHPExcel = null) + { + return 'application/vnd.oasis.opendocument.spreadsheet'; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Settings.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Settings.php new file mode 100644 index 0000000..84161b6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Settings.php @@ -0,0 +1,76 @@ +<?php + +/** + * PHPExcel_Writer_OpenDocument_Settings + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_OpenDocument_Settings extends PHPExcel_Writer_OpenDocument_WriterPart +{ + /** + * Write settings.xml to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function write(PHPExcel $pPHPExcel = null) + { + if (!$pPHPExcel) { + $pPHPExcel = $this->getParentWriter()->getPHPExcel(); + } + + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8'); + + // Settings + $objWriter->startElement('office:document-settings'); + $objWriter->writeAttribute('xmlns:office', 'urn:oasis:names:tc:opendocument:xmlns:office:1.0'); + $objWriter->writeAttribute('xmlns:xlink', 'http://www.w3.org/1999/xlink'); + $objWriter->writeAttribute('xmlns:config', 'urn:oasis:names:tc:opendocument:xmlns:config:1.0'); + $objWriter->writeAttribute('xmlns:ooo', 'http://openoffice.org/2004/office'); + $objWriter->writeAttribute('office:version', '1.2'); + + $objWriter->startElement('office:settings'); + $objWriter->startElement('config:config-item-set'); + $objWriter->writeAttribute('config:name', 'ooo:view-settings'); + $objWriter->startElement('config:config-item-map-indexed'); + $objWriter->writeAttribute('config:name', 'Views'); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->startElement('config:config-item-set'); + $objWriter->writeAttribute('config:name', 'ooo:configuration-settings'); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + return $objWriter->getData(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Styles.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Styles.php new file mode 100644 index 0000000..cc6e25b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Styles.php @@ -0,0 +1,92 @@ +<?php + +/** + * PHPExcel_Writer_OpenDocument_Styles + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_OpenDocument_Styles extends PHPExcel_Writer_OpenDocument_WriterPart +{ + /** + * Write styles.xml to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function write(PHPExcel $pPHPExcel = null) + { + if (!$pPHPExcel) { + $pPHPExcel = $this->getParentWriter()->getPHPExcel(); + } + + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0', 'UTF-8'); + + // Content + $objWriter->startElement('office:document-styles'); + $objWriter->writeAttribute('xmlns:office', 'urn:oasis:names:tc:opendocument:xmlns:office:1.0'); + $objWriter->writeAttribute('xmlns:style', 'urn:oasis:names:tc:opendocument:xmlns:style:1.0'); + $objWriter->writeAttribute('xmlns:text', 'urn:oasis:names:tc:opendocument:xmlns:text:1.0'); + $objWriter->writeAttribute('xmlns:table', 'urn:oasis:names:tc:opendocument:xmlns:table:1.0'); + $objWriter->writeAttribute('xmlns:draw', 'urn:oasis:names:tc:opendocument:xmlns:drawing:1.0'); + $objWriter->writeAttribute('xmlns:fo', 'urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0'); + $objWriter->writeAttribute('xmlns:xlink', 'http://www.w3.org/1999/xlink'); + $objWriter->writeAttribute('xmlns:dc', 'http://purl.org/dc/elements/1.1/'); + $objWriter->writeAttribute('xmlns:meta', 'urn:oasis:names:tc:opendocument:xmlns:meta:1.0'); + $objWriter->writeAttribute('xmlns:number', 'urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0'); + $objWriter->writeAttribute('xmlns:presentation', 'urn:oasis:names:tc:opendocument:xmlns:presentation:1.0'); + $objWriter->writeAttribute('xmlns:svg', 'urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0'); + $objWriter->writeAttribute('xmlns:chart', 'urn:oasis:names:tc:opendocument:xmlns:chart:1.0'); + $objWriter->writeAttribute('xmlns:dr3d', 'urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0'); + $objWriter->writeAttribute('xmlns:math', 'http://www.w3.org/1998/Math/MathML'); + $objWriter->writeAttribute('xmlns:form', 'urn:oasis:names:tc:opendocument:xmlns:form:1.0'); + $objWriter->writeAttribute('xmlns:script', 'urn:oasis:names:tc:opendocument:xmlns:script:1.0'); + $objWriter->writeAttribute('xmlns:ooo', 'http://openoffice.org/2004/office'); + $objWriter->writeAttribute('xmlns:ooow', 'http://openoffice.org/2004/writer'); + $objWriter->writeAttribute('xmlns:oooc', 'http://openoffice.org/2004/calc'); + $objWriter->writeAttribute('xmlns:dom', 'http://www.w3.org/2001/xml-events'); + $objWriter->writeAttribute('xmlns:rpt', 'http://openoffice.org/2005/report'); + $objWriter->writeAttribute('xmlns:of', 'urn:oasis:names:tc:opendocument:xmlns:of:1.2'); + $objWriter->writeAttribute('xmlns:xhtml', 'http://www.w3.org/1999/xhtml'); + $objWriter->writeAttribute('xmlns:grddl', 'http://www.w3.org/2003/g/data-view#'); + $objWriter->writeAttribute('xmlns:tableooo', 'http://openoffice.org/2009/table'); + $objWriter->writeAttribute('xmlns:css3t', 'http://www.w3.org/TR/css3-text/'); + $objWriter->writeAttribute('office:version', '1.2'); + + $objWriter->writeElement('office:font-face-decls'); + $objWriter->writeElement('office:styles'); + $objWriter->writeElement('office:automatic-styles'); + $objWriter->writeElement('office:master-styles'); + $objWriter->endElement(); + + return $objWriter->getData(); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Thumbnails.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Thumbnails.php new file mode 100644 index 0000000..54247ae --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/Thumbnails.php @@ -0,0 +1,41 @@ +<?php + +/** + * PHPExcel_Writer_OpenDocument_Thumbnails + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_OpenDocument_Thumbnails extends PHPExcel_Writer_OpenDocument_WriterPart +{ + /** + * Write Thumbnails/thumbnail.png to PNG format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws PHPExcel_Writer_Exception + */ + public function writeThumbnail(PHPExcel $pPHPExcel = null) + { + return ''; + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/WriterPart.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/WriterPart.php new file mode 100644 index 0000000..562787a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/WriterPart.php @@ -0,0 +1,30 @@ +<?php + +/** + * PHPExcel_Writer_OpenDocument_WriterPart + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_OpenDocument + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +abstract class PHPExcel_Writer_OpenDocument_WriterPart extends PHPExcel_Writer_Excel2007_WriterPart +{ +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/_notes/dwsync.xml new file mode 100644 index 0000000..33b87a7 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/OpenDocument/_notes/dwsync.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Content.php" server="62.244.88.21/deciday/" local="131919461964897090" remote="131880384600000000" Dst="1" /> +<file name="MetaInf.php" server="62.244.88.21/deciday/" local="131919461965070972" remote="131880384600000000" Dst="1" /> +<file name="Mimetype.php" server="62.244.88.21/deciday/" local="131919461965894846" remote="131880384600000000" Dst="1" /> +<file name="Meta.php" server="62.244.88.21/deciday/" local="131919461966085076" remote="131880384600000000" Dst="1" /> +<file name="Settings.php" server="62.244.88.21/deciday/" local="131919461966789651" remote="131880384600000000" Dst="1" /> +<file name="Styles.php" server="62.244.88.21/deciday/" local="131919461967172534" remote="131880384600000000" Dst="1" /> +<file name="Thumbnails.php" server="62.244.88.21/deciday/" local="131919461967851145" remote="131880384600000000" Dst="1" /> +<file name="WriterPart.php" server="62.244.88.21/deciday/" local="131919461968195267" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF.php new file mode 100644 index 0000000..579edfa --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF.php @@ -0,0 +1,89 @@ +<?php + +/** + * PHPExcel_Writer_PDF + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_PDF + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_PDF implements PHPExcel_Writer_IWriter +{ + + /** + * The wrapper for the requested PDF rendering engine + * + * @var PHPExcel_Writer_PDF_Core + */ + private $renderer = null; + + /** + * Instantiate a new renderer of the configured type within this container class + * + * @param PHPExcel $phpExcel PHPExcel object + * @throws PHPExcel_Writer_Exception when PDF library is not configured + */ + public function __construct(PHPExcel $phpExcel) + { + $pdfLibraryName = PHPExcel_Settings::getPdfRendererName(); + if (is_null($pdfLibraryName)) { + throw new PHPExcel_Writer_Exception("PDF Rendering library has not been defined."); + } + + $pdfLibraryPath = PHPExcel_Settings::getPdfRendererPath(); + if (is_null($pdfLibraryName)) { + throw new PHPExcel_Writer_Exception("PDF Rendering library path has not been defined."); + } + $includePath = str_replace('\\', '/', get_include_path()); + $rendererPath = str_replace('\\', '/', $pdfLibraryPath); + if (strpos($rendererPath, $includePath) === false) { + set_include_path(get_include_path() . PATH_SEPARATOR . $pdfLibraryPath); + } + + $rendererName = 'PHPExcel_Writer_PDF_' . $pdfLibraryName; + $this->renderer = new $rendererName($phpExcel); + } + + + /** + * Magic method to handle direct calls to the configured PDF renderer wrapper class. + * + * @param string $name Renderer library method name + * @param mixed[] $arguments Array of arguments to pass to the renderer method + * @return mixed Returned data from the PDF renderer wrapper method + */ + public function __call($name, $arguments) + { + if ($this->renderer === null) { + throw new PHPExcel_Writer_Exception("PDF Rendering library has not been defined."); + } + + return call_user_func_array(array($this->renderer, $name), $arguments); + } + + /** + * {@inheritdoc} + */ + public function save($pFilename = null) + { + $this->renderer->save($pFilename); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/Core.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/Core.php new file mode 100644 index 0000000..4fed84a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/Core.php @@ -0,0 +1,355 @@ +<?php + +/** + * PHPExcel_Writer_PDF_Core + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_PDF + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +abstract class PHPExcel_Writer_PDF_Core extends PHPExcel_Writer_HTML +{ + /** + * Temporary storage directory + * + * @var string + */ + protected $tempDir = ''; + + /** + * Font + * + * @var string + */ + protected $font = 'freesans'; + + /** + * Orientation (Over-ride) + * + * @var string + */ + protected $orientation; + + /** + * Paper size (Over-ride) + * + * @var int + */ + protected $paperSize; + + + /** + * Temporary storage for Save Array Return type + * + * @var string + */ + private $saveArrayReturnType; + + /** + * Paper Sizes xRef List + * + * @var array + */ + protected static $paperSizes = array( + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER + => 'LETTER', // (8.5 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_SMALL + => 'LETTER', // (8.5 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_TABLOID + => array(792.00, 1224.00), // (11 in. by 17 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEDGER + => array(1224.00, 792.00), // (17 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEGAL + => 'LEGAL', // (8.5 in. by 14 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STATEMENT + => array(396.00, 612.00), // (5.5 in. by 8.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_EXECUTIVE + => 'EXECUTIVE', // (7.25 in. by 10.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3 + => 'A3', // (297 mm by 420 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4 + => 'A4', // (210 mm by 297 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_SMALL + => 'A4', // (210 mm by 297 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5 + => 'A5', // (148 mm by 210 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_B4 + => 'B4', // (250 mm by 353 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_B5 + => 'B5', // (176 mm by 250 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_FOLIO + => 'FOLIO', // (8.5 in. by 13 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_QUARTO + => array(609.45, 779.53), // (215 mm by 275 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_1 + => array(720.00, 1008.00), // (10 in. by 14 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_2 + => array(792.00, 1224.00), // (11 in. by 17 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NOTE + => 'LETTER', // (8.5 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO9_ENVELOPE + => array(279.00, 639.00), // (3.875 in. by 8.875 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO10_ENVELOPE + => array(297.00, 684.00), // (4.125 in. by 9.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO11_ENVELOPE + => array(324.00, 747.00), // (4.5 in. by 10.375 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO12_ENVELOPE + => array(342.00, 792.00), // (4.75 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO14_ENVELOPE + => array(360.00, 828.00), // (5 in. by 11.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C + => array(1224.00, 1584.00), // (17 in. by 22 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_D + => array(1584.00, 2448.00), // (22 in. by 34 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_E + => array(2448.00, 3168.00), // (34 in. by 44 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_DL_ENVELOPE + => array(311.81, 623.62), // (110 mm by 220 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C5_ENVELOPE + => 'C5', // (162 mm by 229 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C3_ENVELOPE + => 'C3', // (324 mm by 458 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C4_ENVELOPE + => 'C4', // (229 mm by 324 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C6_ENVELOPE + => 'C6', // (114 mm by 162 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C65_ENVELOPE + => array(323.15, 649.13), // (114 mm by 229 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_B4_ENVELOPE + => 'B4', // (250 mm by 353 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_B5_ENVELOPE + => 'B5', // (176 mm by 250 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_B6_ENVELOPE + => array(498.90, 354.33), // (176 mm by 125 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_ITALY_ENVELOPE + => array(311.81, 651.97), // (110 mm by 230 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_MONARCH_ENVELOPE + => array(279.00, 540.00), // (3.875 in. by 7.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_6_3_4_ENVELOPE + => array(261.00, 468.00), // (3.625 in. by 6.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_US_STANDARD_FANFOLD + => array(1071.00, 792.00), // (14.875 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_GERMAN_STANDARD_FANFOLD + => array(612.00, 864.00), // (8.5 in. by 12 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_GERMAN_LEGAL_FANFOLD + => 'FOLIO', // (8.5 in. by 13 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_ISO_B4 + => 'B4', // (250 mm by 353 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_JAPANESE_DOUBLE_POSTCARD + => array(566.93, 419.53), // (200 mm by 148 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_1 + => array(648.00, 792.00), // (9 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_2 + => array(720.00, 792.00), // (10 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_3 + => array(1080.00, 792.00), // (15 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_INVITE_ENVELOPE + => array(623.62, 623.62), // (220 mm by 220 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_EXTRA_PAPER + => array(667.80, 864.00), // (9.275 in. by 12 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEGAL_EXTRA_PAPER + => array(667.80, 1080.00), // (9.275 in. by 15 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_TABLOID_EXTRA_PAPER + => array(841.68, 1296.00), // (11.69 in. by 18 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_EXTRA_PAPER + => array(668.98, 912.76), // (236 mm by 322 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_TRANSVERSE_PAPER + => array(595.80, 792.00), // (8.275 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_TRANSVERSE_PAPER + => 'A4', // (210 mm by 297 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER + => array(667.80, 864.00), // (9.275 in. by 12 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_SUPERA_SUPERA_A4_PAPER + => array(643.46, 1009.13), // (227 mm by 356 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_SUPERB_SUPERB_A3_PAPER + => array(864.57, 1380.47), // (305 mm by 487 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_PLUS_PAPER + => array(612.00, 913.68), // (8.5 in. by 12.69 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_PLUS_PAPER + => array(595.28, 935.43), // (210 mm by 330 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5_TRANSVERSE_PAPER + => 'A5', // (148 mm by 210 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_JIS_B5_TRANSVERSE_PAPER + => array(515.91, 728.50), // (182 mm by 257 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_EXTRA_PAPER + => array(912.76, 1261.42), // (322 mm by 445 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5_EXTRA_PAPER + => array(493.23, 666.14), // (174 mm by 235 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_ISO_B5_EXTRA_PAPER + => array(569.76, 782.36), // (201 mm by 276 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A2_PAPER + => 'A2', // (420 mm by 594 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_TRANSVERSE_PAPER + => 'A3', // (297 mm by 420 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER + => array(912.76, 1261.42) // (322 mm by 445 mm) + ); + + /** + * Create a new PHPExcel_Writer_PDF + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) + { + parent::__construct($phpExcel); + $this->setUseInlineCss(true); + $this->tempDir = PHPExcel_Shared_File::sys_get_temp_dir(); + } + + /** + * Get Font + * + * @return string + */ + public function getFont() + { + return $this->font; + } + + /** + * Set font. Examples: + * 'arialunicid0-chinese-simplified' + * 'arialunicid0-chinese-traditional' + * 'arialunicid0-korean' + * 'arialunicid0-japanese' + * + * @param string $fontName + */ + public function setFont($fontName) + { + $this->font = $fontName; + return $this; + } + + /** + * Get Paper Size + * + * @return int + */ + public function getPaperSize() + { + return $this->paperSize; + } + + /** + * Set Paper Size + * + * @param string $pValue Paper size + * @return PHPExcel_Writer_PDF + */ + public function setPaperSize($pValue = PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER) + { + $this->paperSize = $pValue; + return $this; + } + + /** + * Get Orientation + * + * @return string + */ + public function getOrientation() + { + return $this->orientation; + } + + /** + * Set Orientation + * + * @param string $pValue Page orientation + * @return PHPExcel_Writer_PDF + */ + public function setOrientation($pValue = PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT) + { + $this->orientation = $pValue; + return $this; + } + + /** + * Get temporary storage directory + * + * @return string + */ + public function getTempDir() + { + return $this->tempDir; + } + + /** + * Set temporary storage directory + * + * @param string $pValue Temporary storage directory + * @throws PHPExcel_Writer_Exception when directory does not exist + * @return PHPExcel_Writer_PDF + */ + public function setTempDir($pValue = '') + { + if (is_dir($pValue)) { + $this->tempDir = $pValue; + } else { + throw new PHPExcel_Writer_Exception("Directory does not exist: $pValue"); + } + return $this; + } + + /** + * Save PHPExcel to PDF file, pre-save + * + * @param string $pFilename Name of the file to save as + * @throws PHPExcel_Writer_Exception + */ + protected function prepareForSave($pFilename = null) + { + // garbage collect + $this->phpExcel->garbageCollect(); + + $this->saveArrayReturnType = PHPExcel_Calculation::getArrayReturnType(); + PHPExcel_Calculation::setArrayReturnType(PHPExcel_Calculation::RETURN_ARRAY_AS_VALUE); + + // Open file + $fileHandle = fopen($pFilename, 'w'); + if ($fileHandle === false) { + throw new PHPExcel_Writer_Exception("Could not open file $pFilename for writing."); + } + + // Set PDF + $this->isPdf = true; + // Build CSS + $this->buildCSS(true); + + return $fileHandle; + } + + /** + * Save PHPExcel to PDF file, post-save + * + * @param resource $fileHandle + * @throws PHPExcel_Writer_Exception + */ + protected function restoreStateAfterSave($fileHandle) + { + // Close file + fclose($fileHandle); + + PHPExcel_Calculation::setArrayReturnType($this->saveArrayReturnType); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/DomPDF.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/DomPDF.php new file mode 100644 index 0000000..83761ac --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/DomPDF.php @@ -0,0 +1,108 @@ +<?php + +/** Require DomPDF library */ +$pdfRendererClassFile = PHPExcel_Settings::getPdfRendererPath() . '/dompdf_config.inc.php'; +if (file_exists($pdfRendererClassFile)) { + require_once $pdfRendererClassFile; +} else { + throw new PHPExcel_Writer_Exception('Unable to load PDF Rendering library'); +} + +/** + * PHPExcel_Writer_PDF_DomPDF + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_PDF + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_PDF_DomPDF extends PHPExcel_Writer_PDF_Core implements PHPExcel_Writer_IWriter +{ + /** + * Create a new PHPExcel_Writer_PDF + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) + { + parent::__construct($phpExcel); + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename Name of the file to save as + * @throws PHPExcel_Writer_Exception + */ + public function save($pFilename = null) + { + $fileHandle = parent::prepareForSave($pFilename); + + // Default PDF paper size + $paperSize = 'LETTER'; // Letter (8.5 in. by 11 in.) + + // Check for paper size and page orientation + if (is_null($this->getSheetIndex())) { + $orientation = ($this->phpExcel->getSheet(0)->getPageSetup()->getOrientation() + == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->phpExcel->getSheet(0)->getPageSetup()->getPaperSize(); + $printMargins = $this->phpExcel->getSheet(0)->getPageMargins(); + } else { + $orientation = ($this->phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getOrientation() + == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getPaperSize(); + $printMargins = $this->phpExcel->getSheet($this->getSheetIndex())->getPageMargins(); + } + + $orientation = ($orientation == 'L') ? 'landscape' : 'portrait'; + + // Override Page Orientation + if (!is_null($this->getOrientation())) { + $orientation = ($this->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT) + ? PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT + : $this->getOrientation(); + } + // Override Paper Size + if (!is_null($this->getPaperSize())) { + $printPaperSize = $this->getPaperSize(); + } + + if (isset(self::$paperSizes[$printPaperSize])) { + $paperSize = self::$paperSizes[$printPaperSize]; + } + + + // Create PDF + $pdf = new DOMPDF(); + $pdf->set_paper(strtolower($paperSize), $orientation); + + $pdf->load_html( + $this->generateHTMLHeader(false) . + $this->generateSheetData() . + $this->generateHTMLFooter() + ); + $pdf->render(); + + // Write to file + fwrite($fileHandle, $pdf->output()); + + parent::restoreStateAfterSave($fileHandle); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/_notes/dwsync.xml new file mode 100644 index 0000000..8e67185 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/_notes/dwsync.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Core.php" server="62.244.88.21/deciday/" local="131919461969511472" remote="131880384600000000" Dst="1" /> +<file name="DomPDF.php" server="62.244.88.21/deciday/" local="131919461970584952" remote="131880384600000000" Dst="1" /> +<file name="mPDF.php" server="62.244.88.21/deciday/" local="131919461970764322" remote="131880384600000000" Dst="1" /> +<file name="tcPDF.php" server="62.244.88.21/deciday/" local="131919461972047683" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/mPDF.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/mPDF.php new file mode 100644 index 0000000..e4e6057 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/mPDF.php @@ -0,0 +1,118 @@ +<?php + +/** Require mPDF library */ +$pdfRendererClassFile = PHPExcel_Settings::getPdfRendererPath() . '/mpdf.php'; +if (file_exists($pdfRendererClassFile)) { + require_once $pdfRendererClassFile; +} else { + throw new PHPExcel_Writer_Exception('Unable to load PDF Rendering library'); +} + +/** + * PHPExcel_Writer_PDF_mPDF + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_PDF + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_PDF_mPDF extends PHPExcel_Writer_PDF_Core implements PHPExcel_Writer_IWriter +{ + /** + * Create a new PHPExcel_Writer_PDF + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) + { + parent::__construct($phpExcel); + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename Name of the file to save as + * @throws PHPExcel_Writer_Exception + */ + public function save($pFilename = null) + { + $fileHandle = parent::prepareForSave($pFilename); + + // Default PDF paper size + $paperSize = 'LETTER'; // Letter (8.5 in. by 11 in.) + + // Check for paper size and page orientation + if (is_null($this->getSheetIndex())) { + $orientation = ($this->phpExcel->getSheet(0)->getPageSetup()->getOrientation() + == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->phpExcel->getSheet(0)->getPageSetup()->getPaperSize(); + $printMargins = $this->phpExcel->getSheet(0)->getPageMargins(); + } else { + $orientation = ($this->phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getOrientation() + == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getPaperSize(); + $printMargins = $this->phpExcel->getSheet($this->getSheetIndex())->getPageMargins(); + } + $this->setOrientation($orientation); + + // Override Page Orientation + if (!is_null($this->getOrientation())) { + $orientation = ($this->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT) + ? PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT + : $this->getOrientation(); + } + $orientation = strtoupper($orientation); + + // Override Paper Size + if (!is_null($this->getPaperSize())) { + $printPaperSize = $this->getPaperSize(); + } + + if (isset(self::$paperSizes[$printPaperSize])) { + $paperSize = self::$paperSizes[$printPaperSize]; + } + + + // Create PDF + $pdf = new mpdf(); + $ortmp = $orientation; + $pdf->_setPageSize(strtoupper($paperSize), $ortmp); + $pdf->DefOrientation = $orientation; + $pdf->AddPage($orientation); + + // Document info + $pdf->SetTitle($this->phpExcel->getProperties()->getTitle()); + $pdf->SetAuthor($this->phpExcel->getProperties()->getCreator()); + $pdf->SetSubject($this->phpExcel->getProperties()->getSubject()); + $pdf->SetKeywords($this->phpExcel->getProperties()->getKeywords()); + $pdf->SetCreator($this->phpExcel->getProperties()->getCreator()); + + $pdf->WriteHTML( + $this->generateHTMLHeader(false) . + $this->generateSheetData() . + $this->generateHTMLFooter() + ); + + // Write to file + fwrite($fileHandle, $pdf->Output('', 'S')); + + parent::restoreStateAfterSave($fileHandle); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/tcPDF.php b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/tcPDF.php new file mode 100644 index 0000000..dea33a3 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/PDF/tcPDF.php @@ -0,0 +1,123 @@ +<?php + +/** Require tcPDF library */ +$pdfRendererClassFile = PHPExcel_Settings::getPdfRendererPath() . '/tcpdf.php'; +if (file_exists($pdfRendererClassFile)) { + $k_path_url = PHPExcel_Settings::getPdfRendererPath(); + require_once $pdfRendererClassFile; +} else { + throw new PHPExcel_Writer_Exception('Unable to load PDF Rendering library'); +} + +/** + * PHPExcel_Writer_PDF_tcPDF + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_PDF + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ +class PHPExcel_Writer_PDF_tcPDF extends PHPExcel_Writer_PDF_Core implements PHPExcel_Writer_IWriter +{ + /** + * Create a new PHPExcel_Writer_PDF + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) + { + parent::__construct($phpExcel); + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename Name of the file to save as + * @throws PHPExcel_Writer_Exception + */ + public function save($pFilename = null) + { + $fileHandle = parent::prepareForSave($pFilename); + + // Default PDF paper size + $paperSize = 'LETTER'; // Letter (8.5 in. by 11 in.) + + // Check for paper size and page orientation + if (is_null($this->getSheetIndex())) { + $orientation = ($this->phpExcel->getSheet(0)->getPageSetup()->getOrientation() + == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->phpExcel->getSheet(0)->getPageSetup()->getPaperSize(); + $printMargins = $this->phpExcel->getSheet(0)->getPageMargins(); + } else { + $orientation = ($this->phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getOrientation() + == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getPaperSize(); + $printMargins = $this->phpExcel->getSheet($this->getSheetIndex())->getPageMargins(); + } + + // Override Page Orientation + if (!is_null($this->getOrientation())) { + $orientation = ($this->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) + ? 'L' + : 'P'; + } + // Override Paper Size + if (!is_null($this->getPaperSize())) { + $printPaperSize = $this->getPaperSize(); + } + + if (isset(self::$paperSizes[$printPaperSize])) { + $paperSize = self::$paperSizes[$printPaperSize]; + } + + + // Create PDF + $pdf = new TCPDF($orientation, 'pt', $paperSize); + $pdf->setFontSubsetting(false); + // Set margins, converting inches to points (using 72 dpi) + $pdf->SetMargins($printMargins->getLeft() * 72, $printMargins->getTop() * 72, $printMargins->getRight() * 72); + $pdf->SetAutoPageBreak(true, $printMargins->getBottom() * 72); + + $pdf->setPrintHeader(false); + $pdf->setPrintFooter(false); + + $pdf->AddPage(); + + // Set the appropriate font + $pdf->SetFont($this->getFont()); + $pdf->writeHTML( + $this->generateHTMLHeader(false) . + $this->generateSheetData() . + $this->generateHTMLFooter() + ); + + // Document info + $pdf->SetTitle($this->phpExcel->getProperties()->getTitle()); + $pdf->SetAuthor($this->phpExcel->getProperties()->getCreator()); + $pdf->SetSubject($this->phpExcel->getProperties()->getSubject()); + $pdf->SetKeywords($this->phpExcel->getProperties()->getKeywords()); + $pdf->SetCreator($this->phpExcel->getProperties()->getCreator()); + + // Write to file + fwrite($fileHandle, $pdf->output($pFilename, 'S')); + + parent::restoreStateAfterSave($fileHandle); + } +} diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/_notes/dwsync.xml new file mode 100644 index 0000000..da55418 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/Writer/_notes/dwsync.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Abstract.php" server="62.244.88.21/deciday/" local="131919461937230615" remote="131880384600000000" Dst="1" /> +<file name="CSV.php" server="62.244.88.21/deciday/" local="131919461938421141" remote="131880384600000000" Dst="1" /> +<file name="Excel2007.php" server="62.244.88.21/deciday/" local="131919461954423361" remote="131880384600000000" Dst="1" /> +<file name="Excel5.php" server="62.244.88.21/deciday/" local="131919461961536069" remote="131880384600000000" Dst="1" /> +<file name="Exception.php" server="62.244.88.21/deciday/" local="131919461962072767" remote="131880384600000000" Dst="1" /> +<file name="IWriter.php" server="62.244.88.21/deciday/" local="131919461963089248" remote="131880384600000000" Dst="1" /> +<file name="HTML.php" server="62.244.88.21/deciday/" local="131919461963435547" remote="131880384600000000" Dst="1" /> +<file name="OpenDocument.php" server="62.244.88.21/deciday/" local="131919461969017059" remote="131880384600000000" Dst="1" /> +<file name="PDF.php" server="62.244.88.21/deciday/" local="131919461971859154" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/_notes/dwsync.xml new file mode 100644 index 0000000..51f9685 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/_notes/dwsync.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Autoloader.php" server="62.244.88.21/deciday/" local="131919461826722177" remote="131880384600000000" Dst="1" /> +<file name="CachedObjectStorageFactory.php" server="62.244.88.21/deciday/" local="131919461833113722" remote="131880384600000000" Dst="1" /> +<file name="Calculation.php" server="62.244.88.21/deciday/" local="131919461848538431" remote="131880384600000000" Dst="1" /> +<file name="Cell.php" server="62.244.88.21/deciday/" local="131919461850475993" remote="131880384600000000" Dst="1" /> +<file name="Chart.php" server="62.244.88.21/deciday/" local="131919461856214980" remote="131880384600000000" Dst="1" /> +<file name="Comment.php" server="62.244.88.21/deciday/" local="131919461856692385" remote="131880384600000000" Dst="1" /> +<file name="DocumentProperties.php" server="62.244.88.21/deciday/" local="131919461857110227" remote="131880384600000000" Dst="1" /> +<file name="DocumentSecurity.php" server="62.244.88.21/deciday/" local="131919461857479994" remote="131880384600000000" Dst="1" /> +<file name="Exception.php" server="62.244.88.21/deciday/" local="131919461857658419" remote="131880384600000000" Dst="1" /> +<file name="HashTable.php" server="62.244.88.21/deciday/" local="131919461858234078" remote="131880384600000000" Dst="1" /> +<file name="IComparable.php" server="62.244.88.21/deciday/" local="131919461858565909" remote="131880384600000000" Dst="1" /> +<file name="IOFactory.php" server="62.244.88.21/deciday/" local="131919461859434632" remote="131880384600000000" Dst="1" /> +<file name="NamedRange.php" server="62.244.88.21/deciday/" local="131919461875802427" remote="131880384600000000" Dst="1" /> +<file name="ReferenceHelper.php" server="62.244.88.21/deciday/" local="131919461890431995" remote="131880384600000000" Dst="1" /> +<file name="RichText.php" server="62.244.88.21/deciday/" local="131919461891346570" remote="131880384600000000" Dst="1" /> +<file name="Settings.php" server="62.244.88.21/deciday/" local="131919461892024594" remote="131880384600000000" Dst="1" /> +<file name="WorksheetIterator.php" server="62.244.88.21/deciday/" local="131919461935852094" remote="131880384600000000" Dst="1" /> +<file name="Worksheet.php" server="62.244.88.21/deciday/" local="131919461938649037" remote="131880384600000000" Dst="1" /> +<file name="Style.php" server="62.244.88.21/deciday/" local="131919461950814388" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/bg/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/bg/_notes/dwsync.xml new file mode 100644 index 0000000..bad2f2e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/bg/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461859796187" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/bg/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/bg/config new file mode 100644 index 0000000..4cecddb --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/bg/config @@ -0,0 +1,49 @@ +## +## PHPExcel +## + +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = лв + + +## +## Excel Error Codes (For future use) + +## +NULL = #ПРАЗНО! +DIV0 = #ДЕЛ/0! +VALUE = #СТОЙНОСТ! +REF = #РЕФ! +NAME = #ИМЕ? +NUM = #ЧИСЛО! +NA = #Н/Д diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/cs/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/cs/_notes/dwsync.xml new file mode 100644 index 0000000..218705d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/cs/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461860332780" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461861252783" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/cs/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/cs/config new file mode 100644 index 0000000..42cdf32 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/cs/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = Kč + + +## +## Excel Error Codes (For future use) +## +NULL = #NULL! +DIV0 = #DIV/0! +VALUE = #HODNOTA! +REF = #REF! +NAME = #NÁZEV? +NUM = #NUM! +NA = #N/A diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/cs/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/cs/functions new file mode 100644 index 0000000..c0a3cbb --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/cs/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Funkce doplňků a automatizace +## +GETPIVOTDATA = ZÍSKATKONTDATA ## Vrátí data uložená v kontingenční tabulce. Pomocí funkce ZÍSKATKONTDATA můžete načíst souhrnná data z kontingenční tabulky, pokud jsou tato data v kontingenční sestavě zobrazena. + + +## +## Cube functions Funkce pro práci s krychlemi +## +CUBEKPIMEMBER = CUBEKPIMEMBER ## Vrátí název, vlastnost a velikost klíčového ukazatele výkonu (KUV) a zobrazí v buňce název a vlastnost. Klíčový ukazatel výkonu je kvantifikovatelná veličina, například hrubý měsíční zisk nebo čtvrtletní obrat na zaměstnance, která se používá pro sledování výkonnosti organizace. +CUBEMEMBER = CUBEMEMBER ## Vrátí člen nebo n-tici v hierarchii krychle. Slouží k ověření, zda v krychli existuje člen nebo n-tice. +CUBEMEMBERPROPERTY = CUBEMEMBERPROPERTY ## Vrátí hodnotu vlastnosti člena v krychli. Slouží k ověření, zda v krychli existuje člen s daným názvem, a k vrácení konkrétní vlastnosti tohoto člena. +CUBERANKEDMEMBER = CUBERANKEDMEMBER ## Vrátí n-tý nebo pořadový člen sady. Použijte ji pro vrácení jednoho nebo více prvků sady, například obchodníka s nejvyšším obratem nebo deseti nejlepších studentů. +CUBESET = CUBESET ## Definuje vypočtenou sadu členů nebo n-tic odesláním výrazu sady do krychle na serveru, který vytvoří sadu a potom ji vrátí do aplikace Microsoft Office Excel. +CUBESETCOUNT = CUBESETCOUNT ## Vrátí počet položek v množině +CUBEVALUE = CUBEVALUE ## Vrátí úhrnnou hodnotu z krychle. + + +## +## Database functions Funkce databáze +## +DAVERAGE = DPRŮMĚR ## Vrátí průměr vybraných položek databáze. +DCOUNT = DPOČET ## Spočítá buňky databáze obsahující čísla. +DCOUNTA = DPOČET2 ## Spočítá buňky databáze, které nejsou prázdné. +DGET = DZÍSKAT ## Extrahuje z databáze jeden záznam splňující zadaná kritéria. +DMAX = DMAX ## Vrátí maximální hodnotu z vybraných položek databáze. +DMIN = DMIN ## Vrátí minimální hodnotu z vybraných položek databáze. +DPRODUCT = DSOUČIN ## Vynásobí hodnoty určitého pole záznamů v databázi, které splňují daná kritéria. +DSTDEV = DSMODCH.VÝBĚR ## Odhadne směrodatnou odchylku výběru vybraných položek databáze. +DSTDEVP = DSMODCH ## Vypočte směrodatnou odchylku základního souboru vybraných položek databáze. +DSUM = DSUMA ## Sečte čísla ve sloupcovém poli záznamů databáze, která splňují daná kritéria. +DVAR = DVAR.VÝBĚR ## Odhadne rozptyl výběru vybraných položek databáze. +DVARP = DVAR ## Vypočte rozptyl základního souboru vybraných položek databáze. + + +## +## Date and time functions Funkce data a času +## +DATE = DATUM ## Vrátí pořadové číslo určitého data. +DATEVALUE = DATUMHODN ## Převede datum ve formě textu na pořadové číslo. +DAY = DEN ## Převede pořadové číslo na den v měsíci. +DAYS360 = ROK360 ## Vrátí počet dní mezi dvěma daty na základě roku s 360 dny. +EDATE = EDATE ## Vrátí pořadové číslo data, které označuje určený počet měsíců před nebo po počátečním datu. +EOMONTH = EOMONTH ## Vrátí pořadové číslo posledního dne měsíce před nebo po zadaném počtu měsíců. +HOUR = HODINA ## Převede pořadové číslo na hodinu. +MINUTE = MINUTA ## Převede pořadové číslo na minutu. +MONTH = MĚSÍC ## Převede pořadové číslo na měsíc. +NETWORKDAYS = NETWORKDAYS ## Vrátí počet celých pracovních dní mezi dvěma daty. +NOW = NYNÍ ## Vrátí pořadové číslo aktuálního data a času. +SECOND = SEKUNDA ## Převede pořadové číslo na sekundu. +TIME = ČAS ## Vrátí pořadové číslo určitého času. +TIMEVALUE = ČASHODN ## Převede čas ve formě textu na pořadové číslo. +TODAY = DNES ## Vrátí pořadové číslo dnešního data. +WEEKDAY = DENTÝDNE ## Převede pořadové číslo na den v týdnu. +WEEKNUM = WEEKNUM ## Převede pořadové číslo na číslo představující číselnou pozici týdne v roce. +WORKDAY = WORKDAY ## Vrátí pořadové číslo data před nebo po zadaném počtu pracovních dní. +YEAR = ROK ## Převede pořadové číslo na rok. +YEARFRAC = YEARFRAC ## Vrátí část roku vyjádřenou zlomkem a představující počet celých dní mezi počátečním a koncovým datem. + + +## +## Engineering functions Inženýrské funkce (Technické funkce) +## +BESSELI = BESSELI ## Vrátí modifikovanou Besselovu funkci In(x). +BESSELJ = BESSELJ ## Vrátí modifikovanou Besselovu funkci Jn(x). +BESSELK = BESSELK ## Vrátí modifikovanou Besselovu funkci Kn(x). +BESSELY = BESSELY ## Vrátí Besselovu funkci Yn(x). +BIN2DEC = BIN2DEC ## Převede binární číslo na desítkové. +BIN2HEX = BIN2HEX ## Převede binární číslo na šestnáctkové. +BIN2OCT = BIN2OCT ## Převede binární číslo na osmičkové. +COMPLEX = COMPLEX ## Převede reálnou a imaginární část na komplexní číslo. +CONVERT = CONVERT ## Převede číslo do jiného jednotkového měrného systému. +DEC2BIN = DEC2BIN ## Převede desítkového čísla na dvojkové +DEC2HEX = DEC2HEX ## Převede desítkové číslo na šestnáctkové. +DEC2OCT = DEC2OCT ## Převede desítkové číslo na osmičkové. +DELTA = DELTA ## Testuje rovnost dvou hodnot. +ERF = ERF ## Vrátí chybovou funkci. +ERFC = ERFC ## Vrátí doplňkovou chybovou funkci. +GESTEP = GESTEP ## Testuje, zda je číslo větší než mezní hodnota. +HEX2BIN = HEX2BIN ## Převede šestnáctkové číslo na binární. +HEX2DEC = HEX2DEC ## Převede šestnáctkové číslo na desítkové. +HEX2OCT = HEX2OCT ## Převede šestnáctkové číslo na osmičkové. +IMABS = IMABS ## Vrátí absolutní hodnotu (modul) komplexního čísla. +IMAGINARY = IMAGINARY ## Vrátí imaginární část komplexního čísla. +IMARGUMENT = IMARGUMENT ## Vrátí argument théta, úhel vyjádřený v radiánech. +IMCONJUGATE = IMCONJUGATE ## Vrátí komplexně sdružené číslo ke komplexnímu číslu. +IMCOS = IMCOS ## Vrátí kosinus komplexního čísla. +IMDIV = IMDIV ## Vrátí podíl dvou komplexních čísel. +IMEXP = IMEXP ## Vrátí exponenciální tvar komplexního čísla. +IMLN = IMLN ## Vrátí přirozený logaritmus komplexního čísla. +IMLOG10 = IMLOG10 ## Vrátí dekadický logaritmus komplexního čísla. +IMLOG2 = IMLOG2 ## Vrátí logaritmus komplexního čísla při základu 2. +IMPOWER = IMPOWER ## Vrátí komplexní číslo umocněné na celé číslo. +IMPRODUCT = IMPRODUCT ## Vrátí součin komplexních čísel. +IMREAL = IMREAL ## Vrátí reálnou část komplexního čísla. +IMSIN = IMSIN ## Vrátí sinus komplexního čísla. +IMSQRT = IMSQRT ## Vrátí druhou odmocninu komplexního čísla. +IMSUB = IMSUB ## Vrátí rozdíl mezi dvěma komplexními čísly. +IMSUM = IMSUM ## Vrátí součet dvou komplexních čísel. +OCT2BIN = OCT2BIN ## Převede osmičkové číslo na binární. +OCT2DEC = OCT2DEC ## Převede osmičkové číslo na desítkové. +OCT2HEX = OCT2HEX ## Převede osmičkové číslo na šestnáctkové. + + +## +## Financial functions Finanční funkce +## +ACCRINT = ACCRINT ## Vrátí nahromaděný úrok z cenného papíru, ze kterého je úrok placen v pravidelných termínech. +ACCRINTM = ACCRINTM ## Vrátí nahromaděný úrok z cenného papíru, ze kterého je úrok placen k datu splatnosti. +AMORDEGRC = AMORDEGRC ## Vrátí lineární amortizaci v každém účetním období pomocí koeficientu amortizace. +AMORLINC = AMORLINC ## Vrátí lineární amortizaci v každém účetním období. +COUPDAYBS = COUPDAYBS ## Vrátí počet dnů od začátku období placení kupónů do data splatnosti. +COUPDAYS = COUPDAYS ## Vrátí počet dnů v období placení kupónů, které obsahuje den zúčtování. +COUPDAYSNC = COUPDAYSNC ## Vrátí počet dnů od data zúčtování do následujícího data placení kupónu. +COUPNCD = COUPNCD ## Vrátí následující datum placení kupónu po datu zúčtování. +COUPNUM = COUPNUM ## Vrátí počet kupónů splatných mezi datem zúčtování a datem splatnosti. +COUPPCD = COUPPCD ## Vrátí předchozí datum placení kupónu před datem zúčtování. +CUMIPMT = CUMIPMT ## Vrátí kumulativní úrok splacený mezi dvěma obdobími. +CUMPRINC = CUMPRINC ## Vrátí kumulativní jistinu splacenou mezi dvěma obdobími půjčky. +DB = ODPIS.ZRYCH ## Vrátí odpis aktiva za určité období pomocí degresivní metody odpisu s pevným zůstatkem. +DDB = ODPIS.ZRYCH2 ## Vrátí odpis aktiva za určité období pomocí dvojité degresivní metody odpisu nebo jiné metody, kterou zadáte. +DISC = DISC ## Vrátí diskontní sazbu cenného papíru. +DOLLARDE = DOLLARDE ## Převede částku v korunách vyjádřenou zlomkem na částku v korunách vyjádřenou desetinným číslem. +DOLLARFR = DOLLARFR ## Převede částku v korunách vyjádřenou desetinným číslem na částku v korunách vyjádřenou zlomkem. +DURATION = DURATION ## Vrátí roční dobu cenného papíru s pravidelnými úrokovými sazbami. +EFFECT = EFFECT ## Vrátí efektivní roční úrokovou sazbu. +FV = BUDHODNOTA ## Vrátí budoucí hodnotu investice. +FVSCHEDULE = FVSCHEDULE ## Vrátí budoucí hodnotu počáteční jistiny po použití série sazeb složitého úroku. +INTRATE = INTRATE ## Vrátí úrokovou sazbu plně investovaného cenného papíru. +IPMT = PLATBA.ÚROK ## Vrátí výšku úroku investice za dané období. +IRR = MÍRA.VÝNOSNOSTI ## Vrátí vnitřní výnosové procento série peněžních toků. +ISPMT = ISPMT ## Vypočte výši úroku z investice zaplaceného během určitého období. +MDURATION = MDURATION ## Vrátí Macauleyho modifikovanou dobu cenného papíru o nominální hodnotě 100 Kč. +MIRR = MOD.MÍRA.VÝNOSNOSTI ## Vrátí vnitřní sazbu výnosu, přičemž kladné a záporné hodnoty peněžních prostředků jsou financovány podle různých sazeb. +NOMINAL = NOMINAL ## Vrátí nominální roční úrokovou sazbu. +NPER = POČET.OBDOBÍ ## Vrátí počet období pro investici. +NPV = ČISTÁ.SOUČHODNOTA ## Vrátí čistou současnou hodnotu investice vypočítanou na základě série pravidelných peněžních toků a diskontní sazby. +ODDFPRICE = ODDFPRICE ## Vrátí cenu cenného papíru o nominální hodnotě 100 Kč s odlišným prvním obdobím. +ODDFYIELD = ODDFYIELD ## Vrátí výnos cenného papíru s odlišným prvním obdobím. +ODDLPRICE = ODDLPRICE ## Vrátí cenu cenného papíru o nominální hodnotě 100 Kč s odlišným posledním obdobím. +ODDLYIELD = ODDLYIELD ## Vrátí výnos cenného papíru s odlišným posledním obdobím. +PMT = PLATBA ## Vrátí hodnotu pravidelné splátky anuity. +PPMT = PLATBA.ZÁKLAD ## Vrátí hodnotu splátky jistiny pro zadanou investici za dané období. +PRICE = PRICE ## Vrátí cenu cenného papíru o nominální hodnotě 100 Kč, ze kterého je úrok placen v pravidelných termínech. +PRICEDISC = PRICEDISC ## Vrátí cenu diskontního cenného papíru o nominální hodnotě 100 Kč. +PRICEMAT = PRICEMAT ## Vrátí cenu cenného papíru o nominální hodnotě 100 Kč, ze kterého je úrok placen k datu splatnosti. +PV = SOUČHODNOTA ## Vrátí současnou hodnotu investice. +RATE = ÚROKOVÁ.MÍRA ## Vrátí úrokovou sazbu vztaženou na období anuity. +RECEIVED = RECEIVED ## Vrátí částku obdrženou k datu splatnosti plně investovaného cenného papíru. +SLN = ODPIS.LIN ## Vrátí přímé odpisy aktiva pro jedno období. +SYD = ODPIS.NELIN ## Vrátí směrné číslo ročních odpisů aktiva pro zadané období. +TBILLEQ = TBILLEQ ## Vrátí výnos směnky státní pokladny ekvivalentní výnosu obligace. +TBILLPRICE = TBILLPRICE ## Vrátí cenu směnky státní pokladny o nominální hodnotě 100 Kč. +TBILLYIELD = TBILLYIELD ## Vrátí výnos směnky státní pokladny. +VDB = ODPIS.ZA.INT ## Vrátí odpis aktiva pro určité období nebo část období pomocí degresivní metody odpisu. +XIRR = XIRR ## Vrátí vnitřní výnosnost pro harmonogram peněžních toků, který nemusí být nutně periodický. +XNPV = XNPV ## Vrátí čistou současnou hodnotu pro harmonogram peněžních toků, který nemusí být nutně periodický. +YIELD = YIELD ## Vrátí výnos cenného papíru, ze kterého je úrok placen v pravidelných termínech. +YIELDDISC = YIELDDISC ## Vrátí roční výnos diskontního cenného papíru, například směnky státní pokladny. +YIELDMAT = YIELDMAT ## Vrátí roční výnos cenného papíru, ze kterého je úrok placen k datu splatnosti. + + +## +## Information functions Informační funkce +## +CELL = POLÍČKO ## Vrátí informace o formátování, umístění nebo obsahu buňky. +ERROR.TYPE = CHYBA.TYP ## Vrátí číslo odpovídající typu chyby. +INFO = O.PROSTŘEDÍ ## Vrátí informace o aktuálním pracovním prostředí. +ISBLANK = JE.PRÁZDNÉ ## Vrátí hodnotu PRAVDA, pokud se argument hodnota odkazuje na prázdnou buňku. +ISERR = JE.CHYBA ## Vrátí hodnotu PRAVDA, pokud je argument hodnota libovolná chybová hodnota (kromě #N/A). +ISERROR = JE.CHYBHODN ## Vrátí hodnotu PRAVDA, pokud je argument hodnota libovolná chybová hodnota. +ISEVEN = ISEVEN ## Vrátí hodnotu PRAVDA, pokud je číslo sudé. +ISLOGICAL = JE.LOGHODN ## Vrátí hodnotu PRAVDA, pokud je argument hodnota logická hodnota. +ISNA = JE.NEDEF ## Vrátí hodnotu PRAVDA, pokud je argument hodnota chybová hodnota #N/A. +ISNONTEXT = JE.NETEXT ## Vrátí hodnotu PRAVDA, pokud argument hodnota není text. +ISNUMBER = JE.ČÍSLO ## Vrátí hodnotu PRAVDA, pokud je argument hodnota číslo. +ISODD = ISODD ## Vrátí hodnotu PRAVDA, pokud je číslo liché. +ISREF = JE.ODKAZ ## Vrátí hodnotu PRAVDA, pokud je argument hodnota odkaz. +ISTEXT = JE.TEXT ## Vrátí hodnotu PRAVDA, pokud je argument hodnota text. +N = N ## Vrátí hodnotu převedenou na číslo. +NA = NEDEF ## Vrátí chybovou hodnotu #N/A. +TYPE = TYP ## Vrátí číslo označující datový typ hodnoty. + + +## +## Logical functions Logické funkce +## +AND = A ## Vrátí hodnotu PRAVDA, mají-li všechny argumenty hodnotu PRAVDA. +FALSE = NEPRAVDA ## Vrátí logickou hodnotu NEPRAVDA. +IF = KDYŽ ## Určí, který logický test má proběhnout. +IFERROR = IFERROR ## Pokud je vzorec vyhodnocen jako chyba, vrátí zadanou hodnotu. V opačném případě vrátí výsledek vzorce. +NOT = NE ## Provede logickou negaci argumentu funkce. +OR = NEBO ## Vrátí hodnotu PRAVDA, je-li alespoň jeden argument roven hodnotě PRAVDA. +TRUE = PRAVDA ## Vrátí logickou hodnotu PRAVDA. + + +## +## Lookup and reference functions Vyhledávací funkce +## +ADDRESS = ODKAZ ## Vrátí textový odkaz na jednu buňku listu. +AREAS = POČET.BLOKŮ ## Vrátí počet oblastí v odkazu. +CHOOSE = ZVOLIT ## Zvolí hodnotu ze seznamu hodnot. +COLUMN = SLOUPEC ## Vrátí číslo sloupce odkazu. +COLUMNS = SLOUPCE ## Vrátí počet sloupců v odkazu. +HLOOKUP = VVYHLEDAT ## Prohledá horní řádek matice a vrátí hodnotu určené buňky. +HYPERLINK = HYPERTEXTOVÝ.ODKAZ ## Vytvoří zástupce nebo odkaz, který otevře dokument uložený na síťovém serveru, v síti intranet nebo Internet. +INDEX = INDEX ## Pomocí rejstříku zvolí hodnotu z odkazu nebo matice. +INDIRECT = NEPŘÍMÝ.ODKAZ ## Vrátí odkaz určený textovou hodnotou. +LOOKUP = VYHLEDAT ## Vyhledá hodnoty ve vektoru nebo matici. +MATCH = POZVYHLEDAT ## Vyhledá hodnoty v odkazu nebo matici. +OFFSET = POSUN ## Vrátí posun odkazu od zadaného odkazu. +ROW = ŘÁDEK ## Vrátí číslo řádku odkazu. +ROWS = ŘÁDKY ## Vrátí počet řádků v odkazu. +RTD = RTD ## Načte data reálného času z programu, který podporuje automatizaci modelu COM (Automatizace: Způsob práce s objekty určité aplikace z jiné aplikace nebo nástroje pro vývoj. Automatizace (dříve nazývaná automatizace OLE) je počítačovým standardem a je funkcí modelu COM (Component Object Model).). +TRANSPOSE = TRANSPOZICE ## Vrátí transponovanou matici. +VLOOKUP = SVYHLEDAT ## Prohledá první sloupec matice, přesune kurzor v řádku a vrátí hodnotu buňky. + + +## +## Math and trigonometry functions Matematické a trigonometrické funkce +## +ABS = ABS ## Vrátí absolutní hodnotu čísla. +ACOS = ARCCOS ## Vrátí arkuskosinus čísla. +ACOSH = ARCCOSH ## Vrátí hyperbolický arkuskosinus čísla. +ASIN = ARCSIN ## Vrátí arkussinus čísla. +ASINH = ARCSINH ## Vrátí hyperbolický arkussinus čísla. +ATAN = ARCTG ## Vrátí arkustangens čísla. +ATAN2 = ARCTG2 ## Vrátí arkustangens x-ové a y-ové souřadnice. +ATANH = ARCTGH ## Vrátí hyperbolický arkustangens čísla. +CEILING = ZAOKR.NAHORU ## Zaokrouhlí číslo na nejbližší celé číslo nebo na nejbližší násobek zadané hodnoty. +COMBIN = KOMBINACE ## Vrátí počet kombinací pro daný počet položek. +COS = COS ## Vrátí kosinus čísla. +COSH = COSH ## Vrátí hyperbolický kosinus čísla. +DEGREES = DEGREES ## Převede radiány na stupně. +EVEN = ZAOKROUHLIT.NA.SUDÉ ## Zaokrouhlí číslo nahoru na nejbližší celé sudé číslo. +EXP = EXP ## Vrátí základ přirozeného logaritmu e umocněný na zadané číslo. +FACT = FAKTORIÁL ## Vrátí faktoriál čísla. +FACTDOUBLE = FACTDOUBLE ## Vrátí dvojitý faktoriál čísla. +FLOOR = ZAOKR.DOLŮ ## Zaokrouhlí číslo dolů, směrem k nule. +GCD = GCD ## Vrátí největší společný dělitel. +INT = CELÁ.ČÁST ## Zaokrouhlí číslo dolů na nejbližší celé číslo. +LCM = LCM ## Vrátí nejmenší společný násobek. +LN = LN ## Vrátí přirozený logaritmus čísla. +LOG = LOGZ ## Vrátí logaritmus čísla při zadaném základu. +LOG10 = LOG ## Vrátí dekadický logaritmus čísla. +MDETERM = DETERMINANT ## Vrátí determinant matice. +MINVERSE = INVERZE ## Vrátí inverzní matici. +MMULT = SOUČIN.MATIC ## Vrátí součin dvou matic. +MOD = MOD ## Vrátí zbytek po dělení. +MROUND = MROUND ## Vrátí číslo zaokrouhlené na požadovaný násobek. +MULTINOMIAL = MULTINOMIAL ## Vrátí mnohočlen z množiny čísel. +ODD = ZAOKROUHLIT.NA.LICHÉ ## Zaokrouhlí číslo nahoru na nejbližší celé liché číslo. +PI = PI ## Vrátí hodnotu čísla pí. +POWER = POWER ## Umocní číslo na zadanou mocninu. +PRODUCT = SOUČIN ## Vynásobí argumenty funkce. +QUOTIENT = QUOTIENT ## Vrátí celou část dělení. +RADIANS = RADIANS ## Převede stupně na radiány. +RAND = NÁHČÍSLO ## Vrátí náhodné číslo mezi 0 a 1. +RANDBETWEEN = RANDBETWEEN ## Vrátí náhodné číslo mezi zadanými čísly. +ROMAN = ROMAN ## Převede arabskou číslici na římskou ve formátu textu. +ROUND = ZAOKROUHLIT ## Zaokrouhlí číslo na zadaný počet číslic. +ROUNDDOWN = ROUNDDOWN ## Zaokrouhlí číslo dolů, směrem k nule. +ROUNDUP = ROUNDUP ## Zaokrouhlí číslo nahoru, směrem od nuly. +SERIESSUM = SERIESSUM ## Vrátí součet mocninné řady určené podle vzorce. +SIGN = SIGN ## Vrátí znaménko čísla. +SIN = SIN ## Vrátí sinus daného úhlu. +SINH = SINH ## Vrátí hyperbolický sinus čísla. +SQRT = ODMOCNINA ## Vrátí kladnou druhou odmocninu. +SQRTPI = SQRTPI ## Vrátí druhou odmocninu výrazu (číslo * pí). +SUBTOTAL = SUBTOTAL ## Vrátí souhrn v seznamu nebo databázi. +SUM = SUMA ## Sečte argumenty funkce. +SUMIF = SUMIF ## Sečte buňky vybrané podle zadaných kritérií. +SUMIFS = SUMIFS ## Sečte buňky určené více zadanými podmínkami. +SUMPRODUCT = SOUČIN.SKALÁRNÍ ## Vrátí součet součinů odpovídajících prvků matic. +SUMSQ = SUMA.ČTVERCŮ ## Vrátí součet čtverců argumentů. +SUMX2MY2 = SUMX2MY2 ## Vrátí součet rozdílu čtverců odpovídajících hodnot ve dvou maticích. +SUMX2PY2 = SUMX2PY2 ## Vrátí součet součtu čtverců odpovídajících hodnot ve dvou maticích. +SUMXMY2 = SUMXMY2 ## Vrátí součet čtverců rozdílů odpovídajících hodnot ve dvou maticích. +TAN = TGTG ## Vrátí tangens čísla. +TANH = TGH ## Vrátí hyperbolický tangens čísla. +TRUNC = USEKNOUT ## Zkrátí číslo na celé číslo. + + +## +## Statistical functions Statistické funkce +## +AVEDEV = PRŮMODCHYLKA ## Vrátí průměrnou hodnotu absolutních odchylek datových bodů od jejich střední hodnoty. +AVERAGE = PRŮMĚR ## Vrátí průměrnou hodnotu argumentů. +AVERAGEA = AVERAGEA ## Vrátí průměrnou hodnotu argumentů včetně čísel, textu a logických hodnot. +AVERAGEIF = AVERAGEIF ## Vrátí průměrnou hodnotu (aritmetický průměr) všech buněk v oblasti, které vyhovují příslušné podmínce. +AVERAGEIFS = AVERAGEIFS ## Vrátí průměrnou hodnotu (aritmetický průměr) všech buněk vyhovujících několika podmínkám. +BETADIST = BETADIST ## Vrátí hodnotu součtového rozdělení beta. +BETAINV = BETAINV ## Vrátí inverzní hodnotu součtového rozdělení pro zadané rozdělení beta. +BINOMDIST = BINOMDIST ## Vrátí hodnotu binomického rozdělení pravděpodobnosti jednotlivých veličin. +CHIDIST = CHIDIST ## Vrátí jednostrannou pravděpodobnost rozdělení chí-kvadrát. +CHIINV = CHIINV ## Vrátí hodnotu funkce inverzní k distribuční funkci jednostranné pravděpodobnosti rozdělení chí-kvadrát. +CHITEST = CHITEST ## Vrátí test nezávislosti. +CONFIDENCE = CONFIDENCE ## Vrátí interval spolehlivosti pro střední hodnotu základního souboru. +CORREL = CORREL ## Vrátí korelační koeficient mezi dvěma množinami dat. +COUNT = POČET ## Vrátí počet čísel v seznamu argumentů. +COUNTA = POČET2 ## Vrátí počet hodnot v seznamu argumentů. +COUNTBLANK = COUNTBLANK ## Spočítá počet prázdných buněk v oblasti. +COUNTIF = COUNTIF ## Spočítá buňky v oblasti, které odpovídají zadaným kritériím. +COUNTIFS = COUNTIFS ## Spočítá buňky v oblasti, které odpovídají více kritériím. +COVAR = COVAR ## Vrátí hodnotu kovariance, průměrnou hodnotu součinů párových odchylek +CRITBINOM = CRITBINOM ## Vrátí nejmenší hodnotu, pro kterou má součtové binomické rozdělení hodnotu větší nebo rovnu hodnotě kritéria. +DEVSQ = DEVSQ ## Vrátí součet čtverců odchylek. +EXPONDIST = EXPONDIST ## Vrátí hodnotu exponenciálního rozdělení. +FDIST = FDIST ## Vrátí hodnotu rozdělení pravděpodobnosti F. +FINV = FINV ## Vrátí hodnotu inverzní funkce k distribuční funkci rozdělení F. +FISHER = FISHER ## Vrátí hodnotu Fisherovy transformace. +FISHERINV = FISHERINV ## Vrátí hodnotu inverzní funkce k Fisherově transformaci. +FORECAST = FORECAST ## Vrátí hodnotu lineárního trendu. +FREQUENCY = ČETNOSTI ## Vrátí četnost rozdělení jako svislou matici. +FTEST = FTEST ## Vrátí výsledek F-testu. +GAMMADIST = GAMMADIST ## Vrátí hodnotu rozdělení gama. +GAMMAINV = GAMMAINV ## Vrátí hodnotu inverzní funkce k distribuční funkci součtového rozdělení gama. +GAMMALN = GAMMALN ## Vrátí přirozený logaritmus funkce gama, Γ(x). +GEOMEAN = GEOMEAN ## Vrátí geometrický průměr. +GROWTH = LOGLINTREND ## Vrátí hodnoty exponenciálního trendu. +HARMEAN = HARMEAN ## Vrátí harmonický průměr. +HYPGEOMDIST = HYPGEOMDIST ## Vrátí hodnotu hypergeometrického rozdělení. +INTERCEPT = INTERCEPT ## Vrátí úsek lineární regresní čáry. +KURT = KURT ## Vrátí hodnotu excesu množiny dat. +LARGE = LARGE ## Vrátí k-tou největší hodnotu množiny dat. +LINEST = LINREGRESE ## Vrátí parametry lineárního trendu. +LOGEST = LOGLINREGRESE ## Vrátí parametry exponenciálního trendu. +LOGINV = LOGINV ## Vrátí inverzní funkci k distribuční funkci logaritmicko-normálního rozdělení. +LOGNORMDIST = LOGNORMDIST ## Vrátí hodnotu součtového logaritmicko-normálního rozdělení. +MAX = MAX ## Vrátí maximální hodnotu seznamu argumentů. +MAXA = MAXA ## Vrátí maximální hodnotu seznamu argumentů včetně čísel, textu a logických hodnot. +MEDIAN = MEDIAN ## Vrátí střední hodnotu zadaných čísel. +MIN = MIN ## Vrátí minimální hodnotu seznamu argumentů. +MINA = MINA ## Vrátí nejmenší hodnotu v seznamu argumentů včetně čísel, textu a logických hodnot. +MODE = MODE ## Vrátí hodnotu, která se v množině dat vyskytuje nejčastěji. +NEGBINOMDIST = NEGBINOMDIST ## Vrátí hodnotu negativního binomického rozdělení. +NORMDIST = NORMDIST ## Vrátí hodnotu normálního součtového rozdělení. +NORMINV = NORMINV ## Vrátí inverzní funkci k funkci normálního součtového rozdělení. +NORMSDIST = NORMSDIST ## Vrátí hodnotu standardního normálního součtového rozdělení. +NORMSINV = NORMSINV ## Vrátí inverzní funkci k funkci standardního normálního součtového rozdělení. +PEARSON = PEARSON ## Vrátí Pearsonův výsledný momentový korelační koeficient. +PERCENTILE = PERCENTIL ## Vrátí hodnotu k-tého percentilu hodnot v oblasti. +PERCENTRANK = PERCENTRANK ## Vrátí pořadí hodnoty v množině dat vyjádřené procentuální částí množiny dat. +PERMUT = PERMUTACE ## Vrátí počet permutací pro zadaný počet objektů. +POISSON = POISSON ## Vrátí hodnotu distribuční funkce Poissonova rozdělení. +PROB = PROB ## Vrátí pravděpodobnost výskytu hodnot v oblasti mezi dvěma mezními hodnotami. +QUARTILE = QUARTIL ## Vrátí hodnotu kvartilu množiny dat. +RANK = RANK ## Vrátí pořadí čísla v seznamu čísel. +RSQ = RKQ ## Vrátí druhou mocninu Pearsonova výsledného momentového korelačního koeficientu. +SKEW = SKEW ## Vrátí zešikmení rozdělení. +SLOPE = SLOPE ## Vrátí směrnici lineární regresní čáry. +SMALL = SMALL ## Vrátí k-tou nejmenší hodnotu množiny dat. +STANDARDIZE = STANDARDIZE ## Vrátí normalizovanou hodnotu. +STDEV = SMODCH.VÝBĚR ## Vypočte směrodatnou odchylku výběru. +STDEVA = STDEVA ## Vypočte směrodatnou odchylku výběru včetně čísel, textu a logických hodnot. +STDEVP = SMODCH ## Vypočte směrodatnou odchylku základního souboru. +STDEVPA = STDEVPA ## Vypočte směrodatnou odchylku základního souboru včetně čísel, textu a logických hodnot. +STEYX = STEYX ## Vrátí standardní chybu předpovězené hodnoty y pro každou hodnotu x v regresi. +TDIST = TDIST ## Vrátí hodnotu Studentova t-rozdělení. +TINV = TINV ## Vrátí inverzní funkci k distribuční funkci Studentova t-rozdělení. +TREND = LINTREND ## Vrátí hodnoty lineárního trendu. +TRIMMEAN = TRIMMEAN ## Vrátí střední hodnotu vnitřní části množiny dat. +TTEST = TTEST ## Vrátí pravděpodobnost spojenou se Studentovým t-testem. +VAR = VAR.VÝBĚR ## Vypočte rozptyl výběru. +VARA = VARA ## Vypočte rozptyl výběru včetně čísel, textu a logických hodnot. +VARP = VAR ## Vypočte rozptyl základního souboru. +VARPA = VARPA ## Vypočte rozptyl základního souboru včetně čísel, textu a logických hodnot. +WEIBULL = WEIBULL ## Vrátí hodnotu Weibullova rozdělení. +ZTEST = ZTEST ## Vrátí jednostrannou P-hodnotu z-testu. + + +## +## Text functions Textové funkce +## +ASC = ASC ## Změní znaky s plnou šířkou (dvoubajtové)v řetězci znaků na znaky s poloviční šířkou (jednobajtové). +BAHTTEXT = BAHTTEXT ## Převede číslo na text ve formátu, měny ß (baht). +CHAR = ZNAK ## Vrátí znak určený číslem kódu. +CLEAN = VYČISTIT ## Odebere z textu všechny netisknutelné znaky. +CODE = KÓD ## Vrátí číselný kód prvního znaku zadaného textového řetězce. +CONCATENATE = CONCATENATE ## Spojí několik textových položek do jedné. +DOLLAR = KČ ## Převede číslo na text ve formátu měny Kč (česká koruna). +EXACT = STEJNÉ ## Zkontroluje, zda jsou dvě textové hodnoty shodné. +FIND = NAJÍT ## Nalezne textovou hodnotu uvnitř jiné (rozlišuje malá a velká písmena). +FINDB = FINDB ## Nalezne textovou hodnotu uvnitř jiné (rozlišuje malá a velká písmena). +FIXED = ZAOKROUHLIT.NA.TEXT ## Zformátuje číslo jako text s pevným počtem desetinných míst. +JIS = JIS ## Změní znaky s poloviční šířkou (jednobajtové) v řetězci znaků na znaky s plnou šířkou (dvoubajtové). +LEFT = ZLEVA ## Vrátí první znaky textové hodnoty umístěné nejvíce vlevo. +LEFTB = LEFTB ## Vrátí první znaky textové hodnoty umístěné nejvíce vlevo. +LEN = DÉLKA ## Vrátí počet znaků textového řetězce. +LENB = LENB ## Vrátí počet znaků textového řetězce. +LOWER = MALÁ ## Převede text na malá písmena. +MID = ČÁST ## Vrátí určitý počet znaků textového řetězce počínaje zadaným místem. +MIDB = MIDB ## Vrátí určitý počet znaků textového řetězce počínaje zadaným místem. +PHONETIC = ZVUKOVÉ ## Extrahuje fonetické znaky (furigana) z textového řetězce. +PROPER = VELKÁ2 ## Převede první písmeno každého slova textové hodnoty na velké. +REPLACE = NAHRADIT ## Nahradí znaky uvnitř textu. +REPLACEB = NAHRADITB ## Nahradí znaky uvnitř textu. +REPT = OPAKOVAT ## Zopakuje text podle zadaného počtu opakování. +RIGHT = ZPRAVA ## Vrátí první znaky textové hodnoty umístěné nejvíce vpravo. +RIGHTB = RIGHTB ## Vrátí první znaky textové hodnoty umístěné nejvíce vpravo. +SEARCH = HLEDAT ## Nalezne textovou hodnotu uvnitř jiné (malá a velká písmena nejsou rozlišována). +SEARCHB = SEARCHB ## Nalezne textovou hodnotu uvnitř jiné (malá a velká písmena nejsou rozlišována). +SUBSTITUTE = DOSADIT ## V textovém řetězci nahradí starý text novým. +T = T ## Převede argumenty na text. +TEXT = HODNOTA.NA.TEXT ## Zformátuje číslo a převede ho na text. +TRIM = PROČISTIT ## Odstraní z textu mezery. +UPPER = VELKÁ ## Převede text na velká písmena. +VALUE = HODNOTA ## Převede textový argument na číslo. diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/da/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/da/_notes/dwsync.xml new file mode 100644 index 0000000..0e51104 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/da/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461860867347" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461862459020" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/da/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/da/config new file mode 100644 index 0000000..ae59003 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/da/config @@ -0,0 +1,48 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = kr + + + +## +## Excel Error Codes (For future use) +## +NULL = #NUL! +DIV0 = #DIVISION/0! +VALUE = #VÆRDI! +REF = #REFERENCE! +NAME = #NAVN? +NUM = #NUM! +NA = #I/T diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/da/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/da/functions new file mode 100644 index 0000000..26e0310 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/da/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Tilføjelsesprogram- og automatiseringsfunktioner +## +GETPIVOTDATA = HENTPIVOTDATA ## Returnerer data, der er lagret i en pivottabelrapport + + +## +## Cube functions Kubefunktioner +## +CUBEKPIMEMBER = KUBE.KPI.MEDLEM ## Returnerer navn, egenskab og mål for en KPI-indikator og viser navnet og egenskaben i cellen. En KPI-indikator er en målbar størrelse, f.eks. bruttooverskud pr. måned eller personaleudskiftning pr. kvartal, der bruges til at overvåge en organisations præstationer. +CUBEMEMBER = KUBE.MEDLEM ## Returnerer et medlem eller en tupel fra kubehierarkiet. Bruges til at validere, om et medlem eller en tupel findes i kuben. +CUBEMEMBERPROPERTY = KUBEMEDLEM.EGENSKAB ## Returnerer værdien af en egenskab for et medlem i kuben. Bruges til at validere, om et medlemsnavn findes i kuben, og returnere den angivne egenskab for medlemmet. +CUBERANKEDMEMBER = KUBEMEDLEM.RANG ## Returnerer det n'te eller rangordnede medlem i et sæt. Bruges til at returnere et eller flere elementer i et sæt, f.eks. topsælgere eller de 10 bedste elever. +CUBESET = KUBESÆT ## Definerer et beregnet sæt medlemmer eller tupler ved at sende et sætudtryk til kuben på serveren, som opretter sættet og returnerer det til Microsoft Office Excel. +CUBESETCOUNT = KUBESÆT.TÆL ## Returnerer antallet af elementer i et sæt. +CUBEVALUE = KUBEVÆRDI ## Returnerer en sammenlagt (aggregeret) værdi fra en kube. + + +## +## Database functions Databasefunktioner +## +DAVERAGE = DMIDDEL ## Returnerer gennemsnittet af markerede databaseposter +DCOUNT = DTÆL ## Tæller de celler, der indeholder tal, i en database +DCOUNTA = DTÆLV ## Tæller udfyldte celler i en database +DGET = DHENT ## Uddrager en enkelt post, der opfylder de angivne kriterier, fra en database +DMAX = DMAKS ## Returnerer den største værdi blandt markerede databaseposter +DMIN = DMIN ## Returnerer den mindste værdi blandt markerede databaseposter +DPRODUCT = DPRODUKT ## Ganger værdierne i et bestemt felt med poster, der opfylder kriterierne i en database +DSTDEV = DSTDAFV ## Beregner et skøn over standardafvigelsen baseret på en stikprøve af markerede databaseposter +DSTDEVP = DSTDAFVP ## Beregner standardafvigelsen baseret på hele populationen af markerede databaseposter +DSUM = DSUM ## Sammenlægger de tal i feltkolonnen i databasen, der opfylder kriterierne +DVAR = DVARIANS ## Beregner varians baseret på en stikprøve af markerede databaseposter +DVARP = DVARIANSP ## Beregner varians baseret på hele populationen af markerede databaseposter + + +## +## Date and time functions Dato- og klokkeslætsfunktioner +## +DATE = DATO ## Returnerer serienummeret for en bestemt dato +DATEVALUE = DATOVÆRDI ## Konverterer en dato i form af tekst til et serienummer +DAY = DAG ## Konverterer et serienummer til en dag i måneden +DAYS360 = DAGE360 ## Beregner antallet af dage mellem to datoer på grundlag af et år med 360 dage +EDATE = EDATO ## Returnerer serienummeret for den dato, der ligger det angivne antal måneder før eller efter startdatoen +EOMONTH = SLUT.PÅ.MÅNED ## Returnerer serienummeret på den sidste dag i måneden før eller efter et angivet antal måneder +HOUR = TIME ## Konverterer et serienummer til en time +MINUTE = MINUT ## Konverterer et serienummer til et minut +MONTH = MÅNED ## Konverterer et serienummer til en måned +NETWORKDAYS = ANTAL.ARBEJDSDAGE ## Returnerer antallet af hele arbejdsdage mellem to datoer +NOW = NU ## Returnerer serienummeret for den aktuelle dato eller det aktuelle klokkeslæt +SECOND = SEKUND ## Konverterer et serienummer til et sekund +TIME = KLOKKESLÆT ## Returnerer serienummeret for et bestemt klokkeslæt +TIMEVALUE = TIDSVÆRDI ## Konverterer et klokkeslæt i form af tekst til et serienummer +TODAY = IDAG ## Returnerer serienummeret for dags dato +WEEKDAY = UGEDAG ## Konverterer et serienummer til en ugedag +WEEKNUM = UGE.NR ## Konverterer et serienummer til et tal, der angiver ugenummeret i året +WORKDAY = ARBEJDSDAG ## Returnerer serienummeret for dagen før eller efter det angivne antal arbejdsdage +YEAR = ÅR ## Konverterer et serienummer til et år +YEARFRAC = ÅR.BRØK ## Returnerer årsbrøken, der repræsenterer antallet af hele dage mellem startdato og slutdato + + +## +## Engineering functions Tekniske funktioner +## +BESSELI = BESSELI ## Returnerer den modificerede Bessel-funktion In(x) +BESSELJ = BESSELJ ## Returnerer Bessel-funktionen Jn(x) +BESSELK = BESSELK ## Returnerer den modificerede Bessel-funktion Kn(x) +BESSELY = BESSELY ## Returnerer Bessel-funktionen Yn(x) +BIN2DEC = BIN.TIL.DEC ## Konverterer et binært tal til et decimaltal +BIN2HEX = BIN.TIL.HEX ## Konverterer et binært tal til et heksadecimalt tal +BIN2OCT = BIN.TIL.OKT ## Konverterer et binært tal til et oktaltal. +COMPLEX = KOMPLEKS ## Konverterer reelle og imaginære koefficienter til et komplekst tal +CONVERT = KONVERTER ## Konverterer et tal fra én måleenhed til en anden +DEC2BIN = DEC.TIL.BIN ## Konverterer et decimaltal til et binært tal +DEC2HEX = DEC.TIL.HEX ## Konverterer et decimaltal til et heksadecimalt tal +DEC2OCT = DEC.TIL.OKT ## Konverterer et decimaltal til et oktaltal +DELTA = DELTA ## Tester, om to værdier er ens +ERF = FEJLFUNK ## Returner fejlfunktionen +ERFC = FEJLFUNK.KOMP ## Returnerer den komplementære fejlfunktion +GESTEP = GETRIN ## Tester, om et tal er større end en grænseværdi +HEX2BIN = HEX.TIL.BIN ## Konverterer et heksadecimalt tal til et binært tal +HEX2DEC = HEX.TIL.DEC ## Konverterer et decimaltal til et heksadecimalt tal +HEX2OCT = HEX.TIL.OKT ## Konverterer et heksadecimalt tal til et oktaltal +IMABS = IMAGABS ## Returnerer den absolutte værdi (modulus) for et komplekst tal +IMAGINARY = IMAGINÆR ## Returnerer den imaginære koefficient for et komplekst tal +IMARGUMENT = IMAGARGUMENT ## Returnerer argumentet theta, en vinkel udtrykt i radianer +IMCONJUGATE = IMAGKONJUGERE ## Returnerer den komplekse konjugation af et komplekst tal +IMCOS = IMAGCOS ## Returnerer et komplekst tals cosinus +IMDIV = IMAGDIV ## Returnerer kvotienten for to komplekse tal +IMEXP = IMAGEKSP ## Returnerer et komplekst tals eksponentialfunktion +IMLN = IMAGLN ## Returnerer et komplekst tals naturlige logaritme +IMLOG10 = IMAGLOG10 ## Returnerer et komplekst tals sædvanlige logaritme (titalslogaritme) +IMLOG2 = IMAGLOG2 ## Returnerer et komplekst tals sædvanlige logaritme (totalslogaritme) +IMPOWER = IMAGPOTENS ## Returnerer et komplekst tal opløftet i en heltalspotens +IMPRODUCT = IMAGPRODUKT ## Returnerer produktet af komplekse tal +IMREAL = IMAGREELT ## Returnerer den reelle koefficient for et komplekst tal +IMSIN = IMAGSIN ## Returnerer et komplekst tals sinus +IMSQRT = IMAGKVROD ## Returnerer et komplekst tals kvadratrod +IMSUB = IMAGSUB ## Returnerer forskellen mellem to komplekse tal +IMSUM = IMAGSUM ## Returnerer summen af komplekse tal +OCT2BIN = OKT.TIL.BIN ## Konverterer et oktaltal til et binært tal +OCT2DEC = OKT.TIL.DEC ## Konverterer et oktaltal til et decimaltal +OCT2HEX = OKT.TIL.HEX ## Konverterer et oktaltal til et heksadecimalt tal + + +## +## Financial functions Finansielle funktioner +## +ACCRINT = PÅLØBRENTE ## Returnerer den påløbne rente for et værdipapir med periodiske renteudbetalinger +ACCRINTM = PÅLØBRENTE.UDLØB ## Returnerer den påløbne rente for et værdipapir, hvor renteudbetalingen finder sted ved papirets udløb +AMORDEGRC = AMORDEGRC ## Returnerer afskrivningsbeløbet for hver regnskabsperiode ved hjælp af en afskrivningskoefficient +AMORLINC = AMORLINC ## Returnerer afskrivningsbeløbet for hver regnskabsperiode +COUPDAYBS = KUPONDAGE.SA ## Returnerer antallet af dage fra starten af kuponperioden til afregningsdatoen +COUPDAYS = KUPONDAGE.A ## Returnerer antallet af dage fra begyndelsen af kuponperioden til afregningsdatoen +COUPDAYSNC = KUPONDAGE.ANK ## Returnerer antallet af dage i den kuponperiode, der indeholder afregningsdatoen +COUPNCD = KUPONDAG.NÆSTE ## Returnerer den næste kupondato efter afregningsdatoen +COUPNUM = KUPONBETALINGER ## Returnerer antallet af kuponudbetalinger mellem afregnings- og udløbsdatoen +COUPPCD = KUPONDAG.FORRIGE ## Returnerer den forrige kupondato før afregningsdatoen +CUMIPMT = AKKUM.RENTE ## Returnerer den akkumulerede rente, der betales på et lån mellem to perioder +CUMPRINC = AKKUM.HOVEDSTOL ## Returnerer den akkumulerede nedbringelse af hovedstol mellem to perioder +DB = DB ## Returnerer afskrivningen på et aktiv i en angivet periode ved anvendelse af saldometoden +DDB = DSA ## Returnerer afskrivningsbeløbet for et aktiv over en bestemt periode ved anvendelse af dobbeltsaldometoden eller en anden afskrivningsmetode, som du angiver +DISC = DISKONTO ## Returnerer et værdipapirs diskonto +DOLLARDE = KR.DECIMAL ## Konverterer en kronepris udtrykt som brøk til en kronepris udtrykt som decimaltal +DOLLARFR = KR.BRØK ## Konverterer en kronepris udtrykt som decimaltal til en kronepris udtrykt som brøk +DURATION = VARIGHED ## Returnerer den årlige løbetid for et værdipapir med periodiske renteudbetalinger +EFFECT = EFFEKTIV.RENTE ## Returnerer den årlige effektive rente +FV = FV ## Returnerer fremtidsværdien af en investering +FVSCHEDULE = FVTABEL ## Returnerer den fremtidige værdi af en hovedstol, når der er tilskrevet rente og rentes rente efter forskellige rentesatser +INTRATE = RENTEFOD ## Returnerer renten på et fuldt ud investeret værdipapir +IPMT = R.YDELSE ## Returnerer renten fra en investering for en given periode +IRR = IA ## Returnerer den interne rente for en række pengestrømme +ISPMT = ISPMT ## Beregner den betalte rente i løbet af en bestemt investeringsperiode +MDURATION = MVARIGHED ## Returnerer Macauleys modificerede løbetid for et værdipapir med en formodet pari på kr. 100 +MIRR = MIA ## Returnerer den interne forrentning, hvor positive og negative pengestrømme finansieres til forskellig rente +NOMINAL = NOMINEL ## Returnerer den årlige nominelle rente +NPER = NPER ## Returnerer antallet af perioder for en investering +NPV = NUTIDSVÆRDI ## Returnerer nettonutidsværdien for en investering baseret på en række periodiske pengestrømme og en diskonteringssats +ODDFPRICE = ULIGE.KURS.PÅLYDENDE ## Returnerer kursen pr. kr. 100 nominel værdi for et værdipapir med en ulige (kort eller lang) første periode +ODDFYIELD = ULIGE.FØRSTE.AFKAST ## Returnerer afkastet for et værdipapir med ulige første periode +ODDLPRICE = ULIGE.SIDSTE.KURS ## Returnerer kursen pr. kr. 100 nominel værdi for et værdipapir med ulige sidste periode +ODDLYIELD = ULIGE.SIDSTE.AFKAST ## Returnerer afkastet for et værdipapir med ulige sidste periode +PMT = YDELSE ## Returnerer renten fra en investering for en given periode +PPMT = H.YDELSE ## Returnerer ydelsen på hovedstolen for en investering i en given periode +PRICE = KURS ## Returnerer kursen pr. kr 100 nominel værdi for et værdipapir med periodiske renteudbetalinger +PRICEDISC = KURS.DISKONTO ## Returnerer kursen pr. kr 100 nominel værdi for et diskonteret værdipapir +PRICEMAT = KURS.UDLØB ## Returnerer kursen pr. kr 100 nominel værdi for et værdipapir, hvor renten udbetales ved papirets udløb +PV = NV ## Returnerer den nuværende værdi af en investering +RATE = RENTE ## Returnerer renten i hver periode for en annuitet +RECEIVED = MODTAGET.VED.UDLØB ## Returnerer det beløb, der modtages ved udløbet af et fuldt ud investeret værdipapir +SLN = LA ## Returnerer den lineære afskrivning for et aktiv i en enkelt periode +SYD = ÅRSAFSKRIVNING ## Returnerer den årlige afskrivning på et aktiv i en bestemt periode +TBILLEQ = STATSOBLIGATION ## Returnerer det obligationsækvivalente afkast for en statsobligation +TBILLPRICE = STATSOBLIGATION.KURS ## Returnerer kursen pr. kr 100 nominel værdi for en statsobligation +TBILLYIELD = STATSOBLIGATION.AFKAST ## Returnerer en afkastet på en statsobligation +VDB = VSA ## Returnerer afskrivningen på et aktiv i en angivet periode, herunder delperioder, ved brug af dobbeltsaldometoden +XIRR = INTERN.RENTE ## Returnerer den interne rente for en plan over pengestrømme, der ikke behøver at være periodiske +XNPV = NETTO.NUTIDSVÆRDI ## Returnerer nutidsværdien for en plan over pengestrømme, der ikke behøver at være periodiske +YIELD = AFKAST ## Returnerer afkastet for et værdipapir med periodiske renteudbetalinger +YIELDDISC = AFKAST.DISKONTO ## Returnerer det årlige afkast for et diskonteret værdipapir, f.eks. en statsobligation +YIELDMAT = AFKAST.UDLØBSDATO ## Returnerer det årlige afkast for et værdipapir, hvor renten udbetales ved papirets udløb + + +## +## Information functions Informationsfunktioner +## +CELL = CELLE ## Returnerer oplysninger om formatering, placering eller indhold af en celle +ERROR.TYPE = FEJLTYPE ## Returnerer et tal, der svarer til en fejltype +INFO = INFO ## Returnerer oplysninger om det aktuelle operativmiljø +ISBLANK = ER.TOM ## Returnerer SAND, hvis værdien er tom +ISERR = ER.FJL ## Returnerer SAND, hvis værdien er en fejlværdi undtagen #I/T +ISERROR = ER.FEJL ## Returnerer SAND, hvis værdien er en fejlværdi +ISEVEN = ER.LIGE ## Returnerer SAND, hvis tallet er lige +ISLOGICAL = ER.LOGISK ## Returnerer SAND, hvis værdien er en logisk værdi +ISNA = ER.IKKE.TILGÆNGELIG ## Returnerer SAND, hvis værdien er fejlværdien #I/T +ISNONTEXT = ER.IKKE.TEKST ## Returnerer SAND, hvis værdien ikke er tekst +ISNUMBER = ER.TAL ## Returnerer SAND, hvis værdien er et tal +ISODD = ER.ULIGE ## Returnerer SAND, hvis tallet er ulige +ISREF = ER.REFERENCE ## Returnerer SAND, hvis værdien er en reference +ISTEXT = ER.TEKST ## Returnerer SAND, hvis værdien er tekst +N = TAL ## Returnerer en værdi konverteret til et tal +NA = IKKE.TILGÆNGELIG ## Returnerer fejlværdien #I/T +TYPE = VÆRDITYPE ## Returnerer et tal, der angiver datatypen for en værdi + + +## +## Logical functions Logiske funktioner +## +AND = OG ## Returnerer SAND, hvis alle argumenterne er sande +FALSE = FALSK ## Returnerer den logiske værdi FALSK +IF = HVIS ## Angiver en logisk test, der skal udføres +IFERROR = HVIS.FEJL ## Returnerer en værdi, du angiver, hvis en formel evauleres som en fejl. Returnerer i modsat fald resultatet af formlen +NOT = IKKE ## Vender argumentets logik om +OR = ELLER ## Returneret værdien SAND, hvis mindst ét argument er sandt +TRUE = SAND ## Returnerer den logiske værdi SAND + + +## +## Lookup and reference functions Opslags- og referencefunktioner +## +ADDRESS = ADRESSE ## Returnerer en reference som tekst til en enkelt celle i et regneark +AREAS = OMRÅDER ## Returnerer antallet af områder i en reference +CHOOSE = VÆLG ## Vælger en værdi på en liste med værdier +COLUMN = KOLONNE ## Returnerer kolonnenummeret i en reference +COLUMNS = KOLONNER ## Returnerer antallet af kolonner i en reference +HLOOKUP = VOPSLAG ## Søger i den øverste række af en matrix og returnerer værdien af den angivne celle +HYPERLINK = HYPERLINK ## Opretter en genvej kaldet et hyperlink, der åbner et dokument, som er lagret på en netværksserver, på et intranet eller på internettet +INDEX = INDEKS ## Anvender et indeks til at vælge en værdi fra en reference eller en matrix +INDIRECT = INDIREKTE ## Returnerer en reference, der er angivet af en tekstværdi +LOOKUP = SLÅ.OP ## Søger værdier i en vektor eller en matrix +MATCH = SAMMENLIGN ## Søger værdier i en reference eller en matrix +OFFSET = FORSKYDNING ## Returnerer en reference forskudt i forhold til en given reference +ROW = RÆKKE ## Returnerer rækkenummeret for en reference +ROWS = RÆKKER ## Returnerer antallet af rækker i en reference +RTD = RTD ## Henter realtidsdata fra et program, der understøtter COM-automatisering (Automation: En metode til at arbejde med objekter fra et andet program eller udviklingsværktøj. Automation, som tidligere blev kaldt OLE Automation, er en industristandard og en funktion i COM (Component Object Model).) +TRANSPOSE = TRANSPONER ## Returnerer en transponeret matrix +VLOOKUP = LOPSLAG ## Søger i øverste række af en matrix og flytter på tværs af rækken for at returnere en celleværdi + + +## +## Math and trigonometry functions Matematiske og trigonometriske funktioner +## +ABS = ABS ## Returnerer den absolutte værdi af et tal +ACOS = ARCCOS ## Returnerer et tals arcus cosinus +ACOSH = ARCCOSH ## Returnerer den inverse hyperbolske cosinus af tal +ASIN = ARCSIN ## Returnerer et tals arcus sinus +ASINH = ARCSINH ## Returnerer den inverse hyperbolske sinus for tal +ATAN = ARCTAN ## Returnerer et tals arcus tangens +ATAN2 = ARCTAN2 ## Returnerer de angivne x- og y-koordinaters arcus tangens +ATANH = ARCTANH ## Returnerer et tals inverse hyperbolske tangens +CEILING = AFRUND.LOFT ## Afrunder et tal til nærmeste heltal eller til nærmeste multiplum af betydning +COMBIN = KOMBIN ## Returnerer antallet af kombinationer for et givet antal objekter +COS = COS ## Returnerer et tals cosinus +COSH = COSH ## Returnerer den inverse hyperbolske cosinus af et tal +DEGREES = GRADER ## Konverterer radianer til grader +EVEN = LIGE ## Runder et tal op til nærmeste lige heltal +EXP = EKSP ## Returnerer e opløftet til en potens af et angivet tal +FACT = FAKULTET ## Returnerer et tals fakultet +FACTDOUBLE = DOBBELT.FAKULTET ## Returnerer et tals dobbelte fakultet +FLOOR = AFRUND.GULV ## Runder et tal ned mod nul +GCD = STØRSTE.FÆLLES.DIVISOR ## Returnerer den største fælles divisor +INT = HELTAL ## Nedrunder et tal til det nærmeste heltal +LCM = MINDSTE.FÆLLES.MULTIPLUM ## Returnerer det mindste fælles multiplum +LN = LN ## Returnerer et tals naturlige logaritme +LOG = LOG ## Returnerer logaritmen for et tal på grundlag af et angivet grundtal +LOG10 = LOG10 ## Returnerer titalslogaritmen af et tal +MDETERM = MDETERM ## Returnerer determinanten for en matrix +MINVERSE = MINVERT ## Returnerer den inverse matrix for en matrix +MMULT = MPRODUKT ## Returnerer matrixproduktet af to matrixer +MOD = REST ## Returnerer restværdien fra division +MROUND = MAFRUND ## Returnerer et tal afrundet til det ønskede multiplum +MULTINOMIAL = MULTINOMIAL ## Returnerer et multinomialt talsæt +ODD = ULIGE ## Runder et tal op til nærmeste ulige heltal +PI = PI ## Returnerer værdien af pi +POWER = POTENS ## Returnerer resultatet af et tal opløftet til en potens +PRODUCT = PRODUKT ## Multiplicerer argumenterne +QUOTIENT = KVOTIENT ## Returnerer heltalsdelen ved division +RADIANS = RADIANER ## Konverterer grader til radianer +RAND = SLUMP ## Returnerer et tilfældigt tal mellem 0 og 1 +RANDBETWEEN = SLUMP.MELLEM ## Returnerer et tilfældigt tal mellem de tal, der angives +ROMAN = ROMERTAL ## Konverterer et arabertal til romertal som tekst +ROUND = AFRUND ## Afrunder et tal til et angivet antal decimaler +ROUNDDOWN = RUND.NED ## Runder et tal ned mod nul +ROUNDUP = RUND.OP ## Runder et tal op, væk fra 0 (nul) +SERIESSUM = SERIESUM ## Returnerer summen af en potensserie baseret på en formel +SIGN = FORTEGN ## Returnerer et tals fortegn +SIN = SIN ## Returnerer en given vinkels sinusværdi +SINH = SINH ## Returnerer den hyperbolske sinus af et tal +SQRT = KVROD ## Returnerer en positiv kvadratrod +SQRTPI = KVRODPI ## Returnerer kvadratroden af (tal * pi;) +SUBTOTAL = SUBTOTAL ## Returnerer en subtotal på en liste eller i en database +SUM = SUM ## Lægger argumenterne sammen +SUMIF = SUM.HVIS ## Lægger de celler sammen, der er specificeret af et givet kriterium. +SUMIFS = SUM.HVISER ## Lægger de celler i et område sammen, der opfylder flere kriterier. +SUMPRODUCT = SUMPRODUKT ## Returnerer summen af produkter af ens matrixkomponenter +SUMSQ = SUMKV ## Returnerer summen af argumenternes kvadrater +SUMX2MY2 = SUMX2MY2 ## Returnerer summen af differensen mellem kvadrater af ens værdier i to matrixer +SUMX2PY2 = SUMX2PY2 ## Returnerer summen af summen af kvadrater af tilsvarende værdier i to matrixer +SUMXMY2 = SUMXMY2 ## Returnerer summen af kvadrater af differenser mellem ens værdier i to matrixer +TAN = TAN ## Returnerer et tals tangens +TANH = TANH ## Returnerer et tals hyperbolske tangens +TRUNC = AFKORT ## Afkorter et tal til et heltal + + +## +## Statistical functions Statistiske funktioner +## +AVEDEV = MAD ## Returnerer den gennemsnitlige numeriske afvigelse fra stikprøvens middelværdi +AVERAGE = MIDDEL ## Returnerer middelværdien af argumenterne +AVERAGEA = MIDDELV ## Returnerer middelværdien af argumenterne og medtager tal, tekst og logiske værdier +AVERAGEIF = MIDDEL.HVIS ## Returnerer gennemsnittet (den aritmetiske middelværdi) af alle de celler, der opfylder et givet kriterium, i et område +AVERAGEIFS = MIDDEL.HVISER ## Returnerer gennemsnittet (den aritmetiske middelværdi) af alle de celler, der opfylder flere kriterier. +BETADIST = BETAFORDELING ## Returnerer den kumulative betafordelingsfunktion +BETAINV = BETAINV ## Returnerer den inverse kumulative fordelingsfunktion for en angivet betafordeling +BINOMDIST = BINOMIALFORDELING ## Returnerer punktsandsynligheden for binomialfordelingen +CHIDIST = CHIFORDELING ## Returnerer fraktilsandsynligheden for en chi2-fordeling +CHIINV = CHIINV ## Returnerer den inverse fraktilsandsynlighed for en chi2-fordeling +CHITEST = CHITEST ## Foretager en test for uafhængighed +CONFIDENCE = KONFIDENSINTERVAL ## Returnerer et konfidensinterval for en population +CORREL = KORRELATION ## Returnerer korrelationskoefficienten mellem to datasæt +COUNT = TÆL ## Tæller antallet af tal på en liste med argumenter +COUNTA = TÆLV ## Tæller antallet af værdier på en liste med argumenter +COUNTBLANK = ANTAL.BLANKE ## Tæller antallet af tomme celler i et område +COUNTIF = TÆLHVIS ## Tæller antallet af celler, som opfylder de givne kriterier, i et område +COUNTIFS = TÆL.HVISER ## Tæller antallet af de celler, som opfylder flere kriterier, i et område +COVAR = KOVARIANS ## Beregner kovariansen mellem to stokastiske variabler +CRITBINOM = KRITBINOM ## Returnerer den mindste værdi for x, for hvilken det gælder, at fordelingsfunktionen er mindre end eller lig med kriterieværdien. +DEVSQ = SAK ## Returnerer summen af de kvadrerede afvigelser fra middelværdien +EXPONDIST = EKSPFORDELING ## Returnerer eksponentialfordelingen +FDIST = FFORDELING ## Returnerer fraktilsandsynligheden for F-fordelingen +FINV = FINV ## Returnerer den inverse fraktilsandsynlighed for F-fordelingen +FISHER = FISHER ## Returnerer Fisher-transformationen +FISHERINV = FISHERINV ## Returnerer den inverse Fisher-transformation +FORECAST = PROGNOSE ## Returnerer en prognoseværdi baseret på lineær tendens +FREQUENCY = FREKVENS ## Returnerer en frekvensfordeling i en søjlevektor +FTEST = FTEST ## Returnerer resultatet af en F-test til sammenligning af varians +GAMMADIST = GAMMAFORDELING ## Returnerer fordelingsfunktionen for gammafordelingen +GAMMAINV = GAMMAINV ## Returnerer den inverse fordelingsfunktion for gammafordelingen +GAMMALN = GAMMALN ## Returnerer den naturlige logaritme til gammafordelingen, G(x) +GEOMEAN = GEOMIDDELVÆRDI ## Returnerer det geometriske gennemsnit +GROWTH = FORØGELSE ## Returnerer værdier langs en eksponentiel tendens +HARMEAN = HARMIDDELVÆRDI ## Returnerer det harmoniske gennemsnit +HYPGEOMDIST = HYPGEOFORDELING ## Returnerer punktsandsynligheden i en hypergeometrisk fordeling +INTERCEPT = SKÆRING ## Returnerer afskæringsværdien på y-aksen i en lineær regression +KURT = TOPSTEJL ## Returnerer kurtosisværdien for en stokastisk variabel +LARGE = STOR ## Returnerer den k'te største værdi i et datasæt +LINEST = LINREGR ## Returnerer parameterestimaterne for en lineær tendens +LOGEST = LOGREGR ## Returnerer parameterestimaterne for en eksponentiel tendens +LOGINV = LOGINV ## Returnerer den inverse fordelingsfunktion for lognormalfordelingen +LOGNORMDIST = LOGNORMFORDELING ## Returnerer fordelingsfunktionen for lognormalfordelingen +MAX = MAKS ## Returnerer den maksimale værdi på en liste med argumenter. +MAXA = MAKSV ## Returnerer den maksimale værdi på en liste med argumenter og medtager tal, tekst og logiske værdier +MEDIAN = MEDIAN ## Returnerer medianen for de angivne tal +MIN = MIN ## Returnerer den mindste værdi på en liste med argumenter. +MINA = MINV ## Returnerer den mindste værdi på en liste med argumenter og medtager tal, tekst og logiske værdier +MODE = HYPPIGST ## Returnerer den hyppigste værdi i et datasæt +NEGBINOMDIST = NEGBINOMFORDELING ## Returnerer den negative binomialfordeling +NORMDIST = NORMFORDELING ## Returnerer fordelingsfunktionen for normalfordelingen +NORMINV = NORMINV ## Returnerer den inverse fordelingsfunktion for normalfordelingen +NORMSDIST = STANDARDNORMFORDELING ## Returnerer fordelingsfunktionen for standardnormalfordelingen +NORMSINV = STANDARDNORMINV ## Returnerer den inverse fordelingsfunktion for standardnormalfordelingen +PEARSON = PEARSON ## Returnerer Pearsons korrelationskoefficient +PERCENTILE = FRAKTIL ## Returnerer den k'te fraktil for datasættet +PERCENTRANK = PROCENTPLADS ## Returnerer den procentuelle rang for en given værdi i et datasæt +PERMUT = PERMUT ## Returnerer antallet af permutationer for et givet sæt objekter +POISSON = POISSON ## Returnerer fordelingsfunktionen for en Poisson-fordeling +PROB = SANDSYNLIGHED ## Returnerer intervalsandsynligheden +QUARTILE = KVARTIL ## Returnerer kvartilen i et givet datasæt +RANK = PLADS ## Returnerer rangen for et tal på en liste med tal +RSQ = FORKLARINGSGRAD ## Returnerer R2-værdien fra en simpel lineær regression +SKEW = SKÆVHED ## Returnerer skævheden for en stokastisk variabel +SLOPE = HÆLDNING ## Returnerer estimatet på hældningen fra en simpel lineær regression +SMALL = MINDSTE ## Returnerer den k'te mindste værdi i datasættet +STANDARDIZE = STANDARDISER ## Returnerer en standardiseret værdi +STDEV = STDAFV ## Estimerer standardafvigelsen på basis af en stikprøve +STDEVA = STDAFVV ## Beregner standardafvigelsen på basis af en prøve og medtager tal, tekst og logiske værdier +STDEVP = STDAFVP ## Beregner standardafvigelsen på basis af en hel population +STDEVPA = STDAFVPV ## Beregner standardafvigelsen på basis af en hel population og medtager tal, tekst og logiske værdier +STEYX = STFYX ## Returnerer standardafvigelsen for de estimerede y-værdier i den simple lineære regression +TDIST = TFORDELING ## Returnerer fordelingsfunktionen for Student's t-fordeling +TINV = TINV ## Returnerer den inverse fordelingsfunktion for Student's t-fordeling +TREND = TENDENS ## Returnerer værdi under antagelse af en lineær tendens +TRIMMEAN = TRIMMIDDELVÆRDI ## Returnerer den trimmede middelværdi for datasættet +TTEST = TTEST ## Returnerer den sandsynlighed, der er forbundet med Student's t-test +VAR = VARIANS ## Beregner variansen på basis af en prøve +VARA = VARIANSV ## Beregner variansen på basis af en prøve og medtager tal, tekst og logiske værdier +VARP = VARIANSP ## Beregner variansen på basis af hele populationen +VARPA = VARIANSPV ## Beregner variansen på basis af hele populationen og medtager tal, tekst og logiske værdier +WEIBULL = WEIBULL ## Returnerer fordelingsfunktionen for Weibull-fordelingen +ZTEST = ZTEST ## Returnerer sandsynlighedsværdien ved en en-sidet z-test + + +## +## Text functions Tekstfunktioner +## +ASC = ASC ## Ændrer engelske tegn i fuld bredde (dobbelt-byte) eller katakana i en tegnstreng til tegn i halv bredde (enkelt-byte) +BAHTTEXT = BAHTTEKST ## Konverterer et tal til tekst ved hjælp af valutaformatet ß (baht) +CHAR = TEGN ## Returnerer det tegn, der svarer til kodenummeret +CLEAN = RENS ## Fjerner alle tegn, der ikke kan udskrives, fra tekst +CODE = KODE ## Returnerer en numerisk kode for det første tegn i en tekststreng +CONCATENATE = SAMMENKÆDNING ## Sammenkæder adskillige tekstelementer til ét tekstelement +DOLLAR = KR ## Konverterer et tal til tekst ved hjælp af valutaformatet kr. (kroner) +EXACT = EKSAKT ## Kontrollerer, om to tekstværdier er identiske +FIND = FIND ## Søger efter en tekstværdi i en anden tekstværdi (der skelnes mellem store og små bogstaver) +FINDB = FINDB ## Søger efter en tekstværdi i en anden tekstværdi (der skelnes mellem store og små bogstaver) +FIXED = FAST ## Formaterer et tal som tekst med et fast antal decimaler +JIS = JIS ## Ændrer engelske tegn i halv bredde (enkelt-byte) eller katakana i en tegnstreng til tegn i fuld bredde (dobbelt-byte) +LEFT = VENSTRE ## Returnerer tegnet længst til venstre i en tekstværdi +LEFTB = VENSTREB ## Returnerer tegnet længst til venstre i en tekstværdi +LEN = LÆNGDE ## Returnerer antallet af tegn i en tekststreng +LENB = LÆNGDEB ## Returnerer antallet af tegn i en tekststreng +LOWER = SMÅ.BOGSTAVER ## Konverterer tekst til små bogstaver +MID = MIDT ## Returnerer et bestemt antal tegn fra en tekststreng fra og med den angivne startposition +MIDB = MIDTB ## Returnerer et bestemt antal tegn fra en tekststreng fra og med den angivne startposition +PHONETIC = FONETISK ## Uddrager de fonetiske (furigana) tegn fra en tekststreng +PROPER = STORT.FORBOGSTAV ## Konverterer første bogstav i hvert ord i teksten til stort bogstav +REPLACE = ERSTAT ## Erstatter tegn i tekst +REPLACEB = ERSTATB ## Erstatter tegn i tekst +REPT = GENTAG ## Gentager tekst et givet antal gange +RIGHT = HØJRE ## Returnerer tegnet længste til højre i en tekstværdi +RIGHTB = HØJREB ## Returnerer tegnet længste til højre i en tekstværdi +SEARCH = SØG ## Søger efter en tekstværdi i en anden tekstværdi (der skelnes ikke mellem store og små bogstaver) +SEARCHB = SØGB ## Søger efter en tekstværdi i en anden tekstværdi (der skelnes ikke mellem store og små bogstaver) +SUBSTITUTE = UDSKIFT ## Udskifter gammel tekst med ny tekst i en tekststreng +T = T ## Konverterer argumenterne til tekst +TEXT = TEKST ## Formaterer et tal og konverterer det til tekst +TRIM = FJERN.OVERFLØDIGE.BLANKE ## Fjerner mellemrum fra tekst +UPPER = STORE.BOGSTAVER ## Konverterer tekst til store bogstaver +VALUE = VÆRDI ## Konverterer et tekstargument til et tal diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/de/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/de/_notes/dwsync.xml new file mode 100644 index 0000000..32a7801 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/de/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461861771423" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461863021329" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/de/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/de/config new file mode 100644 index 0000000..aa0228e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/de/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = € + + +## +## Excel Error Codes (For future use) +## +NULL = #NULL! +DIV0 = #DIV/0! +VALUE = #WERT! +REF = #BEZUG! +NAME = #NAME? +NUM = #ZAHL! +NA = #NV diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/de/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/de/functions new file mode 100644 index 0000000..3147f9c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/de/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Add-In- und Automatisierungsfunktionen +## +GETPIVOTDATA = PIVOTDATENZUORDNEN ## In einem PivotTable-Bericht gespeicherte Daten werden zurückgegeben. + + +## +## Cube functions Cubefunktionen +## +CUBEKPIMEMBER = CUBEKPIELEMENT ## Gibt Name, Eigenschaft und Measure eines Key Performance Indicators (KPI) zurück und zeigt den Namen und die Eigenschaft in der Zelle an. Ein KPI ist ein quantifizierbares Maß, wie z. B. der monatliche Bruttogewinn oder die vierteljährliche Mitarbeiterfluktuation, mit dessen Hilfe das Leistungsverhalten eines Unternehmens überwacht werden kann. +CUBEMEMBER = CUBEELEMENT ## Gibt ein Element oder ein Tuple in einer Cubehierarchie zurück. Wird verwendet, um zu überprüfen, ob das Element oder Tuple im Cube vorhanden ist. +CUBEMEMBERPROPERTY = CUBEELEMENTEIGENSCHAFT ## Gibt den Wert einer Elementeigenschaft im Cube zurück. Wird verwendet, um zu überprüfen, ob ein Elementname im Cube vorhanden ist, und um die für dieses Element angegebene Eigenschaft zurückzugeben. +CUBERANKEDMEMBER = CUBERANGELEMENT ## Gibt das n-te oder n-rangige Element in einer Menge zurück. Wird verwendet, um mindestens ein Element in einer Menge zurückzugeben, wie z. B. bester Vertriebsmitarbeiter oder 10 beste Kursteilnehmer. +CUBESET = CUBEMENGE ## Definiert eine berechnete Menge Elemente oder Tuples durch Senden eines Mengenausdrucks an den Cube auf dem Server, der die Menge erstellt und an Microsoft Office Excel zurückgibt. +CUBESETCOUNT = CUBEMENGENANZAHL ## Gibt die Anzahl der Elemente in einer Menge zurück. +CUBEVALUE = CUBEWERT ## Gibt einen Aggregatwert aus einem Cube zurück. + + +## +## Database functions Datenbankfunktionen +## +DAVERAGE = DBMITTELWERT ## Gibt den Mittelwert der ausgewählten Datenbankeinträge zurück +DCOUNT = DBANZAHL ## Zählt die Zellen mit Zahlen in einer Datenbank +DCOUNTA = DBANZAHL2 ## Zählt nicht leere Zellen in einer Datenbank +DGET = DBAUSZUG ## Extrahiert aus einer Datenbank einen einzelnen Datensatz, der den angegebenen Kriterien entspricht +DMAX = DBMAX ## Gibt den größten Wert aus ausgewählten Datenbankeinträgen zurück +DMIN = DBMIN ## Gibt den kleinsten Wert aus ausgewählten Datenbankeinträgen zurück +DPRODUCT = DBPRODUKT ## Multipliziert die Werte in einem bestimmten Feld mit Datensätzen, die den Kriterien in einer Datenbank entsprechen +DSTDEV = DBSTDABW ## Schätzt die Standardabweichung auf der Grundlage einer Stichprobe aus ausgewählten Datenbankeinträgen +DSTDEVP = DBSTDABWN ## Berechnet die Standardabweichung auf der Grundlage der Grundgesamtheit ausgewählter Datenbankeinträge +DSUM = DBSUMME ## Addiert die Zahlen in der Feldspalte mit Datensätzen in der Datenbank, die den Kriterien entsprechen +DVAR = DBVARIANZ ## Schätzt die Varianz auf der Grundlage ausgewählter Datenbankeinträge +DVARP = DBVARIANZEN ## Berechnet die Varianz auf der Grundlage der Grundgesamtheit ausgewählter Datenbankeinträge + + +## +## Date and time functions Datums- und Zeitfunktionen +## +DATE = DATUM ## Gibt die fortlaufende Zahl eines bestimmten Datums zurück +DATEVALUE = DATWERT ## Wandelt ein Datum in Form von Text in eine fortlaufende Zahl um +DAY = TAG ## Wandelt eine fortlaufende Zahl in den Tag des Monats um +DAYS360 = TAGE360 ## Berechnet die Anzahl der Tage zwischen zwei Datumsangaben ausgehend von einem Jahr, das 360 Tage hat +EDATE = EDATUM ## Gibt die fortlaufende Zahl des Datums zurück, bei dem es sich um die angegebene Anzahl von Monaten vor oder nach dem Anfangstermin handelt +EOMONTH = MONATSENDE ## Gibt die fortlaufende Zahl des letzten Tags des Monats vor oder nach einer festgelegten Anzahl von Monaten zurück +HOUR = STUNDE ## Wandelt eine fortlaufende Zahl in eine Stunde um +MINUTE = MINUTE ## Wandelt eine fortlaufende Zahl in eine Minute um +MONTH = MONAT ## Wandelt eine fortlaufende Zahl in einen Monat um +NETWORKDAYS = NETTOARBEITSTAGE ## Gibt die Anzahl von ganzen Arbeitstagen zwischen zwei Datumswerten zurück +NOW = JETZT ## Gibt die fortlaufende Zahl des aktuellen Datums und der aktuellen Uhrzeit zurück +SECOND = SEKUNDE ## Wandelt eine fortlaufende Zahl in eine Sekunde um +TIME = ZEIT ## Gibt die fortlaufende Zahl einer bestimmten Uhrzeit zurück +TIMEVALUE = ZEITWERT ## Wandelt eine Uhrzeit in Form von Text in eine fortlaufende Zahl um +TODAY = HEUTE ## Gibt die fortlaufende Zahl des heutigen Datums zurück +WEEKDAY = WOCHENTAG ## Wandelt eine fortlaufende Zahl in den Wochentag um +WEEKNUM = KALENDERWOCHE ## Wandelt eine fortlaufende Zahl in eine Zahl um, die angibt, in welche Woche eines Jahres das angegebene Datum fällt +WORKDAY = ARBEITSTAG ## Gibt die fortlaufende Zahl des Datums vor oder nach einer bestimmten Anzahl von Arbeitstagen zurück +YEAR = JAHR ## Wandelt eine fortlaufende Zahl in ein Jahr um +YEARFRAC = BRTEILJAHRE ## Gibt die Anzahl der ganzen Tage zwischen Ausgangsdatum und Enddatum in Bruchteilen von Jahren zurück + + +## +## Engineering functions Konstruktionsfunktionen +## +BESSELI = BESSELI ## Gibt die geänderte Besselfunktion In(x) zurück +BESSELJ = BESSELJ ## Gibt die Besselfunktion Jn(x) zurück +BESSELK = BESSELK ## Gibt die geänderte Besselfunktion Kn(x) zurück +BESSELY = BESSELY ## Gibt die Besselfunktion Yn(x) zurück +BIN2DEC = BININDEZ ## Wandelt eine binäre Zahl (Dualzahl) in eine dezimale Zahl um +BIN2HEX = BININHEX ## Wandelt eine binäre Zahl (Dualzahl) in eine hexadezimale Zahl um +BIN2OCT = BININOKT ## Wandelt eine binäre Zahl (Dualzahl) in eine oktale Zahl um +COMPLEX = KOMPLEXE ## Wandelt den Real- und Imaginärteil in eine komplexe Zahl um +CONVERT = UMWANDELN ## Wandelt eine Zahl von einem Maßsystem in ein anderes um +DEC2BIN = DEZINBIN ## Wandelt eine dezimale Zahl in eine binäre Zahl (Dualzahl) um +DEC2HEX = DEZINHEX ## Wandelt eine dezimale Zahl in eine hexadezimale Zahl um +DEC2OCT = DEZINOKT ## Wandelt eine dezimale Zahl in eine oktale Zahl um +DELTA = DELTA ## Überprüft, ob zwei Werte gleich sind +ERF = GAUSSFEHLER ## Gibt die Gauss'sche Fehlerfunktion zurück +ERFC = GAUSSFKOMPL ## Gibt das Komplement zur Gauss'schen Fehlerfunktion zurück +GESTEP = GGANZZAHL ## Überprüft, ob eine Zahl größer als ein gegebener Schwellenwert ist +HEX2BIN = HEXINBIN ## Wandelt eine hexadezimale Zahl in eine Binärzahl um +HEX2DEC = HEXINDEZ ## Wandelt eine hexadezimale Zahl in eine dezimale Zahl um +HEX2OCT = HEXINOKT ## Wandelt eine hexadezimale Zahl in eine Oktalzahl um +IMABS = IMABS ## Gibt den Absolutbetrag (Modulo) einer komplexen Zahl zurück +IMAGINARY = IMAGINÄRTEIL ## Gibt den Imaginärteil einer komplexen Zahl zurück +IMARGUMENT = IMARGUMENT ## Gibt das Argument Theta zurück, einen Winkel, der als Bogenmaß ausgedrückt wird +IMCONJUGATE = IMKONJUGIERTE ## Gibt die konjugierte komplexe Zahl zu einer komplexen Zahl zurück +IMCOS = IMCOS ## Gibt den Kosinus einer komplexen Zahl zurück +IMDIV = IMDIV ## Gibt den Quotienten zweier komplexer Zahlen zurück +IMEXP = IMEXP ## Gibt die algebraische Form einer in exponentieller Schreibweise vorliegenden komplexen Zahl zurück +IMLN = IMLN ## Gibt den natürlichen Logarithmus einer komplexen Zahl zurück +IMLOG10 = IMLOG10 ## Gibt den Logarithmus einer komplexen Zahl zur Basis 10 zurück +IMLOG2 = IMLOG2 ## Gibt den Logarithmus einer komplexen Zahl zur Basis 2 zurück +IMPOWER = IMAPOTENZ ## Potenziert eine komplexe Zahl mit einer ganzen Zahl +IMPRODUCT = IMPRODUKT ## Gibt das Produkt von komplexen Zahlen zurück +IMREAL = IMREALTEIL ## Gibt den Realteil einer komplexen Zahl zurück +IMSIN = IMSIN ## Gibt den Sinus einer komplexen Zahl zurück +IMSQRT = IMWURZEL ## Gibt die Quadratwurzel einer komplexen Zahl zurück +IMSUB = IMSUB ## Gibt die Differenz zwischen zwei komplexen Zahlen zurück +IMSUM = IMSUMME ## Gibt die Summe von komplexen Zahlen zurück +OCT2BIN = OKTINBIN ## Wandelt eine oktale Zahl in eine binäre Zahl (Dualzahl) um +OCT2DEC = OKTINDEZ ## Wandelt eine oktale Zahl in eine dezimale Zahl um +OCT2HEX = OKTINHEX ## Wandelt eine oktale Zahl in eine hexadezimale Zahl um + + +## +## Financial functions Finanzmathematische Funktionen +## +ACCRINT = AUFGELZINS ## Gibt die aufgelaufenen Zinsen (Stückzinsen) eines Wertpapiers mit periodischen Zinszahlungen zurück +ACCRINTM = AUFGELZINSF ## Gibt die aufgelaufenen Zinsen (Stückzinsen) eines Wertpapiers zurück, die bei Fälligkeit ausgezahlt werden +AMORDEGRC = AMORDEGRK ## Gibt die Abschreibung für die einzelnen Abschreibungszeiträume mithilfe eines Abschreibungskoeffizienten zurück +AMORLINC = AMORLINEARK ## Gibt die Abschreibung für die einzelnen Abschreibungszeiträume zurück +COUPDAYBS = ZINSTERMTAGVA ## Gibt die Anzahl der Tage vom Anfang des Zinstermins bis zum Abrechnungstermin zurück +COUPDAYS = ZINSTERMTAGE ## Gibt die Anzahl der Tage der Zinsperiode zurück, die den Abrechnungstermin einschließt +COUPDAYSNC = ZINSTERMTAGNZ ## Gibt die Anzahl der Tage vom Abrechnungstermin bis zum nächsten Zinstermin zurück +COUPNCD = ZINSTERMNZ ## Gibt das Datum des ersten Zinstermins nach dem Abrechnungstermin zurück +COUPNUM = ZINSTERMZAHL ## Gibt die Anzahl der Zinstermine zwischen Abrechnungs- und Fälligkeitsdatum zurück +COUPPCD = ZINSTERMVZ ## Gibt das Datum des letzten Zinstermins vor dem Abrechnungstermin zurück +CUMIPMT = KUMZINSZ ## Berechnet die kumulierten Zinsen, die zwischen zwei Perioden zu zahlen sind +CUMPRINC = KUMKAPITAL ## Berechnet die aufgelaufene Tilgung eines Darlehens, die zwischen zwei Perioden zu zahlen ist +DB = GDA2 ## Gibt die geometrisch-degressive Abschreibung eines Wirtschaftsguts für eine bestimmte Periode zurück +DDB = GDA ## Gibt die Abschreibung eines Anlageguts für einen angegebenen Zeitraum unter Verwendung der degressiven Doppelraten-Abschreibung oder eines anderen von Ihnen angegebenen Abschreibungsverfahrens zurück +DISC = DISAGIO ## Gibt den in Prozent ausgedrückten Abzinsungssatz eines Wertpapiers zurück +DOLLARDE = NOTIERUNGDEZ ## Wandelt eine Notierung, die als Dezimalbruch ausgedrückt wurde, in eine Dezimalzahl um +DOLLARFR = NOTIERUNGBRU ## Wandelt eine Notierung, die als Dezimalzahl ausgedrückt wurde, in einen Dezimalbruch um +DURATION = DURATION ## Gibt die jährliche Duration eines Wertpapiers mit periodischen Zinszahlungen zurück +EFFECT = EFFEKTIV ## Gibt die jährliche Effektivverzinsung zurück +FV = ZW ## Gibt den zukünftigen Wert (Endwert) einer Investition zurück +FVSCHEDULE = ZW2 ## Gibt den aufgezinsten Wert des Anfangskapitals für eine Reihe periodisch unterschiedlicher Zinssätze zurück +INTRATE = ZINSSATZ ## Gibt den Zinssatz eines voll investierten Wertpapiers zurück +IPMT = ZINSZ ## Gibt die Zinszahlung einer Investition für die angegebene Periode zurück +IRR = IKV ## Gibt den internen Zinsfuß einer Investition ohne Finanzierungskosten oder Reinvestitionsgewinne zurück +ISPMT = ISPMT ## Berechnet die während eines bestimmten Zeitraums für eine Investition gezahlten Zinsen +MDURATION = MDURATION ## Gibt die geänderte Dauer für ein Wertpapier mit einem angenommenen Nennwert von 100 € zurück +MIRR = QIKV ## Gibt den internen Zinsfuß zurück, wobei positive und negative Zahlungen zu unterschiedlichen Sätzen finanziert werden +NOMINAL = NOMINAL ## Gibt die jährliche Nominalverzinsung zurück +NPER = ZZR ## Gibt die Anzahl der Zahlungsperioden einer Investition zurück +NPV = NBW ## Gibt den Nettobarwert einer Investition auf Basis periodisch anfallender Zahlungen und eines Abzinsungsfaktors zurück +ODDFPRICE = UNREGER.KURS ## Gibt den Kurs pro 100 € Nennwert eines Wertpapiers mit einem unregelmäßigen ersten Zinstermin zurück +ODDFYIELD = UNREGER.REND ## Gibt die Rendite eines Wertpapiers mit einem unregelmäßigen ersten Zinstermin zurück +ODDLPRICE = UNREGLE.KURS ## Gibt den Kurs pro 100 € Nennwert eines Wertpapiers mit einem unregelmäßigen letzten Zinstermin zurück +ODDLYIELD = UNREGLE.REND ## Gibt die Rendite eines Wertpapiers mit einem unregelmäßigen letzten Zinstermin zurück +PMT = RMZ ## Gibt die periodische Zahlung für eine Annuität zurück +PPMT = KAPZ ## Gibt die Kapitalrückzahlung einer Investition für eine angegebene Periode zurück +PRICE = KURS ## Gibt den Kurs pro 100 € Nennwert eines Wertpapiers zurück, das periodisch Zinsen auszahlt +PRICEDISC = KURSDISAGIO ## Gibt den Kurs pro 100 € Nennwert eines unverzinslichen Wertpapiers zurück +PRICEMAT = KURSFÄLLIG ## Gibt den Kurs pro 100 € Nennwert eines Wertpapiers zurück, das Zinsen am Fälligkeitsdatum auszahlt +PV = BW ## Gibt den Barwert einer Investition zurück +RATE = ZINS ## Gibt den Zinssatz pro Zeitraum einer Annuität zurück +RECEIVED = AUSZAHLUNG ## Gibt den Auszahlungsbetrag eines voll investierten Wertpapiers am Fälligkeitstermin zurück +SLN = LIA ## Gibt die lineare Abschreibung eines Wirtschaftsguts pro Periode zurück +SYD = DIA ## Gibt die arithmetisch-degressive Abschreibung eines Wirtschaftsguts für eine bestimmte Periode zurück +TBILLEQ = TBILLÄQUIV ## Gibt die Rendite für ein Wertpapier zurück +TBILLPRICE = TBILLKURS ## Gibt den Kurs pro 100 € Nennwert eines Wertpapiers zurück +TBILLYIELD = TBILLRENDITE ## Gibt die Rendite für ein Wertpapier zurück +VDB = VDB ## Gibt die degressive Abschreibung eines Wirtschaftsguts für eine bestimmte Periode oder Teilperiode zurück +XIRR = XINTZINSFUSS ## Gibt den internen Zinsfuß einer Reihe nicht periodisch anfallender Zahlungen zurück +XNPV = XKAPITALWERT ## Gibt den Nettobarwert (Kapitalwert) einer Reihe nicht periodisch anfallender Zahlungen zurück +YIELD = RENDITE ## Gibt die Rendite eines Wertpapiers zurück, das periodisch Zinsen auszahlt +YIELDDISC = RENDITEDIS ## Gibt die jährliche Rendite eines unverzinslichen Wertpapiers zurück +YIELDMAT = RENDITEFÄLL ## Gibt die jährliche Rendite eines Wertpapiers zurück, das Zinsen am Fälligkeitsdatum auszahlt + + +## +## Information functions Informationsfunktionen +## +CELL = ZELLE ## Gibt Informationen zu Formatierung, Position oder Inhalt einer Zelle zurück +ERROR.TYPE = FEHLER.TYP ## Gibt eine Zahl zurück, die einem Fehlertyp entspricht +INFO = INFO ## Gibt Informationen zur aktuellen Betriebssystemumgebung zurück +ISBLANK = ISTLEER ## Gibt WAHR zurück, wenn der Wert leer ist +ISERR = ISTFEHL ## Gibt WAHR zurück, wenn der Wert ein beliebiger Fehlerwert außer #N/V ist +ISERROR = ISTFEHLER ## Gibt WAHR zurück, wenn der Wert ein beliebiger Fehlerwert ist +ISEVEN = ISTGERADE ## Gibt WAHR zurück, wenn es sich um eine gerade Zahl handelt +ISLOGICAL = ISTLOG ## Gibt WAHR zurück, wenn der Wert ein Wahrheitswert ist +ISNA = ISTNV ## Gibt WAHR zurück, wenn der Wert der Fehlerwert #N/V ist +ISNONTEXT = ISTKTEXT ## Gibt WAHR zurück, wenn der Wert ein Element ist, das keinen Text enthält +ISNUMBER = ISTZAHL ## Gibt WAHR zurück, wenn der Wert eine Zahl ist +ISODD = ISTUNGERADE ## Gibt WAHR zurück, wenn es sich um eine ungerade Zahl handelt +ISREF = ISTBEZUG ## Gibt WAHR zurück, wenn der Wert ein Bezug ist +ISTEXT = ISTTEXT ## Gibt WAHR zurück, wenn der Wert ein Element ist, das Text enthält +N = N ## Gibt den in eine Zahl umgewandelten Wert zurück +NA = NV ## Gibt den Fehlerwert #NV zurück +TYPE = TYP ## Gibt eine Zahl zurück, die den Datentyp des angegebenen Werts anzeigt + + +## +## Logical functions Logische Funktionen +## +AND = UND ## Gibt WAHR zurück, wenn alle zugehörigen Argumente WAHR sind +FALSE = FALSCH ## Gibt den Wahrheitswert FALSCH zurück +IF = WENN ## Gibt einen logischen Test zum Ausführen an +IFERROR = WENNFEHLER ## Gibt einen von Ihnen festgelegten Wert zurück, wenn die Auswertung der Formel zu einem Fehler führt; andernfalls wird das Ergebnis der Formel zurückgegeben +NOT = NICHT ## Kehrt den Wahrheitswert der zugehörigen Argumente um +OR = ODER ## Gibt WAHR zurück, wenn ein Argument WAHR ist +TRUE = WAHR ## Gibt den Wahrheitswert WAHR zurück + + +## +## Lookup and reference functions Nachschlage- und Verweisfunktionen +## +ADDRESS = ADRESSE ## Gibt einen Bezug auf eine einzelne Zelle in einem Tabellenblatt als Text zurück +AREAS = BEREICHE ## Gibt die Anzahl der innerhalb eines Bezugs aufgeführten Bereiche zurück +CHOOSE = WAHL ## Wählt einen Wert aus eine Liste mit Werten aus +COLUMN = SPALTE ## Gibt die Spaltennummer eines Bezugs zurück +COLUMNS = SPALTEN ## Gibt die Anzahl der Spalten in einem Bezug zurück +HLOOKUP = HVERWEIS ## Sucht in der obersten Zeile einer Matrix und gibt den Wert der angegebenen Zelle zurück +HYPERLINK = HYPERLINK ## Erstellt eine Verknüpfung, über die ein auf einem Netzwerkserver, in einem Intranet oder im Internet gespeichertes Dokument geöffnet wird +INDEX = INDEX ## Verwendet einen Index, um einen Wert aus einem Bezug oder einer Matrix auszuwählen +INDIRECT = INDIREKT ## Gibt einen Bezug zurück, der von einem Textwert angegeben wird +LOOKUP = LOOKUP ## Sucht Werte in einem Vektor oder einer Matrix +MATCH = VERGLEICH ## Sucht Werte in einem Bezug oder einer Matrix +OFFSET = BEREICH.VERSCHIEBEN ## Gibt einen Bezugoffset aus einem gegebenen Bezug zurück +ROW = ZEILE ## Gibt die Zeilennummer eines Bezugs zurück +ROWS = ZEILEN ## Gibt die Anzahl der Zeilen in einem Bezug zurück +RTD = RTD ## Ruft Echtzeitdaten von einem Programm ab, das die COM-Automatisierung (Automatisierung: Ein Verfahren, bei dem aus einer Anwendung oder einem Entwicklungstool heraus mit den Objekten einer anderen Anwendung gearbeitet wird. Die früher als OLE-Automatisierung bezeichnete Automatisierung ist ein Industriestandard und eine Funktion von COM (Component Object Model).) unterstützt +TRANSPOSE = MTRANS ## Gibt die transponierte Matrix einer Matrix zurück +VLOOKUP = SVERWEIS ## Sucht in der ersten Spalte einer Matrix und arbeitet sich durch die Zeile, um den Wert einer Zelle zurückzugeben + + +## +## Math and trigonometry functions Mathematische und trigonometrische Funktionen +## +ABS = ABS ## Gibt den Absolutwert einer Zahl zurück +ACOS = ARCCOS ## Gibt den Arkuskosinus einer Zahl zurück +ACOSH = ARCCOSHYP ## Gibt den umgekehrten hyperbolischen Kosinus einer Zahl zurück +ASIN = ARCSIN ## Gibt den Arkussinus einer Zahl zurück +ASINH = ARCSINHYP ## Gibt den umgekehrten hyperbolischen Sinus einer Zahl zurück +ATAN = ARCTAN ## Gibt den Arkustangens einer Zahl zurück +ATAN2 = ARCTAN2 ## Gibt den Arkustangens einer x- und einer y-Koordinate zurück +ATANH = ARCTANHYP ## Gibt den umgekehrten hyperbolischen Tangens einer Zahl zurück +CEILING = OBERGRENZE ## Rundet eine Zahl auf die nächste ganze Zahl oder das nächste Vielfache von Schritt +COMBIN = KOMBINATIONEN ## Gibt die Anzahl der Kombinationen für eine bestimmte Anzahl von Objekten zurück +COS = COS ## Gibt den Kosinus einer Zahl zurück +COSH = COSHYP ## Gibt den hyperbolischen Kosinus einer Zahl zurück +DEGREES = GRAD ## Wandelt Bogenmaß (Radiant) in Grad um +EVEN = GERADE ## Rundet eine Zahl auf die nächste gerade ganze Zahl auf +EXP = EXP ## Potenziert die Basis e mit der als Argument angegebenen Zahl +FACT = FAKULTÄT ## Gibt die Fakultät einer Zahl zurück +FACTDOUBLE = ZWEIFAKULTÄT ## Gibt die Fakultät zu Zahl mit Schrittlänge 2 zurück +FLOOR = UNTERGRENZE ## Rundet die Zahl auf Anzahl_Stellen ab +GCD = GGT ## Gibt den größten gemeinsamen Teiler zurück +INT = GANZZAHL ## Rundet eine Zahl auf die nächstkleinere ganze Zahl ab +LCM = KGV ## Gibt das kleinste gemeinsame Vielfache zurück +LN = LN ## Gibt den natürlichen Logarithmus einer Zahl zurück +LOG = LOG ## Gibt den Logarithmus einer Zahl zu der angegebenen Basis zurück +LOG10 = LOG10 ## Gibt den Logarithmus einer Zahl zur Basis 10 zurück +MDETERM = MDET ## Gibt die Determinante einer Matrix zurück +MINVERSE = MINV ## Gibt die inverse Matrix einer Matrix zurück +MMULT = MMULT ## Gibt das Produkt zweier Matrizen zurück +MOD = REST ## Gibt den Rest einer Division zurück +MROUND = VRUNDEN ## Gibt eine auf das gewünschte Vielfache gerundete Zahl zurück +MULTINOMIAL = POLYNOMIAL ## Gibt den Polynomialkoeffizienten einer Gruppe von Zahlen zurück +ODD = UNGERADE ## Rundet eine Zahl auf die nächste ungerade ganze Zahl auf +PI = PI ## Gibt den Wert Pi zurück +POWER = POTENZ ## Gibt als Ergebnis eine potenzierte Zahl zurück +PRODUCT = PRODUKT ## Multipliziert die zugehörigen Argumente +QUOTIENT = QUOTIENT ## Gibt den ganzzahligen Anteil einer Division zurück +RADIANS = BOGENMASS ## Wandelt Grad in Bogenmaß (Radiant) um +RAND = ZUFALLSZAHL ## Gibt eine Zufallszahl zwischen 0 und 1 zurück +RANDBETWEEN = ZUFALLSBEREICH ## Gibt eine Zufallszahl aus dem festgelegten Bereich zurück +ROMAN = RÖMISCH ## Wandelt eine arabische Zahl in eine römische Zahl als Text um +ROUND = RUNDEN ## Rundet eine Zahl auf eine bestimmte Anzahl von Dezimalstellen +ROUNDDOWN = ABRUNDEN ## Rundet die Zahl auf Anzahl_Stellen ab +ROUNDUP = AUFRUNDEN ## Rundet die Zahl auf Anzahl_Stellen auf +SERIESSUM = POTENZREIHE ## Gibt die Summe von Potenzen (zur Berechnung von Potenzreihen und dichotomen Wahrscheinlichkeiten) zurück +SIGN = VORZEICHEN ## Gibt das Vorzeichen einer Zahl zurück +SIN = SIN ## Gibt den Sinus einer Zahl zurück +SINH = SINHYP ## Gibt den hyperbolischen Sinus einer Zahl zurück +SQRT = WURZEL ## Gibt die Quadratwurzel einer Zahl zurück +SQRTPI = WURZELPI ## Gibt die Wurzel aus der mit Pi (pi) multiplizierten Zahl zurück +SUBTOTAL = TEILERGEBNIS ## Gibt ein Teilergebnis in einer Liste oder Datenbank zurück +SUM = SUMME ## Addiert die zugehörigen Argumente +SUMIF = SUMMEWENN ## Addiert Zahlen, die mit den Suchkriterien übereinstimmen +SUMIFS = SUMMEWENNS ## Die Zellen, die mehrere Kriterien erfüllen, werden in einem Bereich hinzugefügt +SUMPRODUCT = SUMMENPRODUKT ## Gibt die Summe der Produkte zusammengehöriger Matrixkomponenten zurück +SUMSQ = QUADRATESUMME ## Gibt die Summe der quadrierten Argumente zurück +SUMX2MY2 = SUMMEX2MY2 ## Gibt die Summe der Differenzen der Quadrate für zusammengehörige Komponenten zweier Matrizen zurück +SUMX2PY2 = SUMMEX2PY2 ## Gibt die Summe der Quadrate für zusammengehörige Komponenten zweier Matrizen zurück +SUMXMY2 = SUMMEXMY2 ## Gibt die Summe der quadrierten Differenzen für zusammengehörige Komponenten zweier Matrizen zurück +TAN = TAN ## Gibt den Tangens einer Zahl zurück +TANH = TANHYP ## Gibt den hyperbolischen Tangens einer Zahl zurück +TRUNC = KÜRZEN ## Schneidet die Kommastellen einer Zahl ab und gibt als Ergebnis eine ganze Zahl zurück + + +## +## Statistical functions Statistische Funktionen +## +AVEDEV = MITTELABW ## Gibt die durchschnittliche absolute Abweichung einer Reihe von Merkmalsausprägungen und ihrem Mittelwert zurück +AVERAGE = MITTELWERT ## Gibt den Mittelwert der zugehörigen Argumente zurück +AVERAGEA = MITTELWERTA ## Gibt den Mittelwert der zugehörigen Argumente, die Zahlen, Text und Wahrheitswerte enthalten, zurück +AVERAGEIF = MITTELWERTWENN ## Der Durchschnittswert (arithmetisches Mittel) für alle Zellen in einem Bereich, die einem angegebenen Kriterium entsprechen, wird zurückgegeben +AVERAGEIFS = MITTELWERTWENNS ## Gibt den Durchschnittswert (arithmetisches Mittel) aller Zellen zurück, die mehreren Kriterien entsprechen +BETADIST = BETAVERT ## Gibt die Werte der kumulierten Betaverteilungsfunktion zurück +BETAINV = BETAINV ## Gibt das Quantil der angegebenen Betaverteilung zurück +BINOMDIST = BINOMVERT ## Gibt Wahrscheinlichkeiten einer binomialverteilten Zufallsvariablen zurück +CHIDIST = CHIVERT ## Gibt Werte der Verteilungsfunktion (1-Alpha) einer Chi-Quadrat-verteilten Zufallsgröße zurück +CHIINV = CHIINV ## Gibt Quantile der Verteilungsfunktion (1-Alpha) der Chi-Quadrat-Verteilung zurück +CHITEST = CHITEST ## Gibt die Teststatistik eines Unabhängigkeitstests zurück +CONFIDENCE = KONFIDENZ ## Ermöglicht die Berechnung des 1-Alpha Konfidenzintervalls für den Erwartungswert einer Zufallsvariablen +CORREL = KORREL ## Gibt den Korrelationskoeffizienten zweier Reihen von Merkmalsausprägungen zurück +COUNT = ANZAHL ## Gibt die Anzahl der Zahlen in der Liste mit Argumenten an +COUNTA = ANZAHL2 ## Gibt die Anzahl der Werte in der Liste mit Argumenten an +COUNTBLANK = ANZAHLLEEREZELLEN ## Gibt die Anzahl der leeren Zellen in einem Bereich an +COUNTIF = ZÄHLENWENN ## Gibt die Anzahl der Zellen in einem Bereich an, deren Inhalte mit den Suchkriterien übereinstimmen +COUNTIFS = ZÄHLENWENNS ## Gibt die Anzahl der Zellen in einem Bereich an, deren Inhalte mit mehreren Suchkriterien übereinstimmen +COVAR = KOVAR ## Gibt die Kovarianz zurück, den Mittelwert der für alle Datenpunktpaare gebildeten Produkte der Abweichungen +CRITBINOM = KRITBINOM ## Gibt den kleinsten Wert zurück, für den die kumulierten Wahrscheinlichkeiten der Binomialverteilung kleiner oder gleich einer Grenzwahrscheinlichkeit sind +DEVSQ = SUMQUADABW ## Gibt die Summe der quadrierten Abweichungen der Datenpunkte von ihrem Stichprobenmittelwert zurück +EXPONDIST = EXPONVERT ## Gibt Wahrscheinlichkeiten einer exponential verteilten Zufallsvariablen zurück +FDIST = FVERT ## Gibt Werte der Verteilungsfunktion (1-Alpha) einer F-verteilten Zufallsvariablen zurück +FINV = FINV ## Gibt Quantile der F-Verteilung zurück +FISHER = FISHER ## Gibt die Fisher-Transformation zurück +FISHERINV = FISHERINV ## Gibt die Umkehrung der Fisher-Transformation zurück +FORECAST = PROGNOSE ## Gibt einen Wert zurück, der sich aus einem linearen Trend ergibt +FREQUENCY = HÄUFIGKEIT ## Gibt eine Häufigkeitsverteilung als vertikale Matrix zurück +FTEST = FTEST ## Gibt die Teststatistik eines F-Tests zurück +GAMMADIST = GAMMAVERT ## Gibt Wahrscheinlichkeiten einer gammaverteilten Zufallsvariablen zurück +GAMMAINV = GAMMAINV ## Gibt Quantile der Gammaverteilung zurück +GAMMALN = GAMMALN ## Gibt den natürlichen Logarithmus der Gammafunktion zurück, Γ(x) +GEOMEAN = GEOMITTEL ## Gibt das geometrische Mittel zurück +GROWTH = VARIATION ## Gibt Werte zurück, die sich aus einem exponentiellen Trend ergeben +HARMEAN = HARMITTEL ## Gibt das harmonische Mittel zurück +HYPGEOMDIST = HYPGEOMVERT ## Gibt Wahrscheinlichkeiten einer hypergeometrisch-verteilten Zufallsvariablen zurück +INTERCEPT = ACHSENABSCHNITT ## Gibt den Schnittpunkt der Regressionsgeraden zurück +KURT = KURT ## Gibt die Kurtosis (Exzess) einer Datengruppe zurück +LARGE = KGRÖSSTE ## Gibt den k-größten Wert einer Datengruppe zurück +LINEST = RGP ## Gibt die Parameter eines linearen Trends zurück +LOGEST = RKP ## Gibt die Parameter eines exponentiellen Trends zurück +LOGINV = LOGINV ## Gibt Quantile der Lognormalverteilung zurück +LOGNORMDIST = LOGNORMVERT ## Gibt Werte der Verteilungsfunktion einer lognormalverteilten Zufallsvariablen zurück +MAX = MAX ## Gibt den Maximalwert einer Liste mit Argumenten zurück +MAXA = MAXA ## Gibt den Maximalwert einer Liste mit Argumenten zurück, die Zahlen, Text und Wahrheitswerte enthalten +MEDIAN = MEDIAN ## Gibt den Median der angegebenen Zahlen zurück +MIN = MIN ## Gibt den Minimalwert einer Liste mit Argumenten zurück +MINA = MINA ## Gibt den kleinsten Wert einer Liste mit Argumenten zurück, die Zahlen, Text und Wahrheitswerte enthalten +MODE = MODALWERT ## Gibt den am häufigsten vorkommenden Wert in einer Datengruppe zurück +NEGBINOMDIST = NEGBINOMVERT ## Gibt Wahrscheinlichkeiten einer negativen, binominal verteilten Zufallsvariablen zurück +NORMDIST = NORMVERT ## Gibt Wahrscheinlichkeiten einer normal verteilten Zufallsvariablen zurück +NORMINV = NORMINV ## Gibt Quantile der Normalverteilung zurück +NORMSDIST = STANDNORMVERT ## Gibt Werte der Verteilungsfunktion einer standardnormalverteilten Zufallsvariablen zurück +NORMSINV = STANDNORMINV ## Gibt Quantile der Standardnormalverteilung zurück +PEARSON = PEARSON ## Gibt den Pearsonschen Korrelationskoeffizienten zurück +PERCENTILE = QUANTIL ## Gibt das Alpha-Quantil einer Gruppe von Daten zurück +PERCENTRANK = QUANTILSRANG ## Gibt den prozentualen Rang (Alpha) eines Werts in einer Datengruppe zurück +PERMUT = VARIATIONEN ## Gibt die Anzahl der Möglichkeiten zurück, um k Elemente aus einer Menge von n Elementen ohne Zurücklegen zu ziehen +POISSON = POISSON ## Gibt Wahrscheinlichkeiten einer poissonverteilten Zufallsvariablen zurück +PROB = WAHRSCHBEREICH ## Gibt die Wahrscheinlichkeit für ein von zwei Werten eingeschlossenes Intervall zurück +QUARTILE = QUARTILE ## Gibt die Quartile der Datengruppe zurück +RANK = RANG ## Gibt den Rang zurück, den eine Zahl innerhalb einer Liste von Zahlen einnimmt +RSQ = BESTIMMTHEITSMASS ## Gibt das Quadrat des Pearsonschen Korrelationskoeffizienten zurück +SKEW = SCHIEFE ## Gibt die Schiefe einer Verteilung zurück +SLOPE = STEIGUNG ## Gibt die Steigung der Regressionsgeraden zurück +SMALL = KKLEINSTE ## Gibt den k-kleinsten Wert einer Datengruppe zurück +STANDARDIZE = STANDARDISIERUNG ## Gibt den standardisierten Wert zurück +STDEV = STABW ## Schätzt die Standardabweichung ausgehend von einer Stichprobe +STDEVA = STABWA ## Schätzt die Standardabweichung ausgehend von einer Stichprobe, die Zahlen, Text und Wahrheitswerte enthält +STDEVP = STABWN ## Berechnet die Standardabweichung ausgehend von der Grundgesamtheit +STDEVPA = STABWNA ## Berechnet die Standardabweichung ausgehend von der Grundgesamtheit, die Zahlen, Text und Wahrheitswerte enthält +STEYX = STFEHLERYX ## Gibt den Standardfehler der geschätzten y-Werte für alle x-Werte der Regression zurück +TDIST = TVERT ## Gibt Werte der Verteilungsfunktion (1-Alpha) einer (Student) t-verteilten Zufallsvariablen zurück +TINV = TINV ## Gibt Quantile der t-Verteilung zurück +TREND = TREND ## Gibt Werte zurück, die sich aus einem linearen Trend ergeben +TRIMMEAN = GESTUTZTMITTEL ## Gibt den Mittelwert einer Datengruppe zurück, ohne die Randwerte zu berücksichtigen +TTEST = TTEST ## Gibt die Teststatistik eines Student'schen t-Tests zurück +VAR = VARIANZ ## Schätzt die Varianz ausgehend von einer Stichprobe +VARA = VARIANZA ## Schätzt die Varianz ausgehend von einer Stichprobe, die Zahlen, Text und Wahrheitswerte enthält +VARP = VARIANZEN ## Berechnet die Varianz ausgehend von der Grundgesamtheit +VARPA = VARIANZENA ## Berechnet die Varianz ausgehend von der Grundgesamtheit, die Zahlen, Text und Wahrheitswerte enthält +WEIBULL = WEIBULL ## Gibt Wahrscheinlichkeiten einer weibullverteilten Zufallsvariablen zurück +ZTEST = GTEST ## Gibt den einseitigen Wahrscheinlichkeitswert für einen Gausstest (Normalverteilung) zurück + + +## +## Text functions Textfunktionen +## +ASC = ASC ## Konvertiert DB-Text in einer Zeichenfolge (lateinische Buchstaben oder Katakana) in SB-Text +BAHTTEXT = BAHTTEXT ## Wandelt eine Zahl in Text im Währungsformat ß (Baht) um +CHAR = ZEICHEN ## Gibt das der Codezahl entsprechende Zeichen zurück +CLEAN = SÄUBERN ## Löscht alle nicht druckbaren Zeichen aus einem Text +CODE = CODE ## Gibt die Codezahl des ersten Zeichens in einem Text zurück +CONCATENATE = VERKETTEN ## Verknüpft mehrere Textelemente zu einem Textelement +DOLLAR = DM ## Wandelt eine Zahl in Text im Währungsformat € (Euro) um +EXACT = IDENTISCH ## Prüft, ob zwei Textwerte identisch sind +FIND = FINDEN ## Sucht nach einem Textwert, der in einem anderen Textwert enthalten ist (Groß-/Kleinschreibung wird unterschieden) +FINDB = FINDENB ## Sucht nach einem Textwert, der in einem anderen Textwert enthalten ist (Groß-/Kleinschreibung wird unterschieden) +FIXED = FEST ## Formatiert eine Zahl als Text mit einer festen Anzahl von Dezimalstellen +JIS = JIS ## Konvertiert SB-Text in einer Zeichenfolge (lateinische Buchstaben oder Katakana) in DB-Text +LEFT = LINKS ## Gibt die Zeichen ganz links in einem Textwert zurück +LEFTB = LINKSB ## Gibt die Zeichen ganz links in einem Textwert zurück +LEN = LÄNGE ## Gibt die Anzahl der Zeichen in einer Zeichenfolge zurück +LENB = LÄNGEB ## Gibt die Anzahl der Zeichen in einer Zeichenfolge zurück +LOWER = KLEIN ## Wandelt Text in Kleinbuchstaben um +MID = TEIL ## Gibt eine bestimmte Anzahl Zeichen aus einer Zeichenfolge ab der von Ihnen angegebenen Stelle zurück +MIDB = TEILB ## Gibt eine bestimmte Anzahl Zeichen aus einer Zeichenfolge ab der von Ihnen angegebenen Stelle zurück +PHONETIC = PHONETIC ## Extrahiert die phonetischen (Furigana-)Zeichen aus einer Textzeichenfolge +PROPER = GROSS2 ## Wandelt den ersten Buchstaben aller Wörter eines Textwerts in Großbuchstaben um +REPLACE = ERSETZEN ## Ersetzt Zeichen in Text +REPLACEB = ERSETZENB ## Ersetzt Zeichen in Text +REPT = WIEDERHOLEN ## Wiederholt einen Text so oft wie angegeben +RIGHT = RECHTS ## Gibt die Zeichen ganz rechts in einem Textwert zurück +RIGHTB = RECHTSB ## Gibt die Zeichen ganz rechts in einem Textwert zurück +SEARCH = SUCHEN ## Sucht nach einem Textwert, der in einem anderen Textwert enthalten ist (Groß-/Kleinschreibung wird nicht unterschieden) +SEARCHB = SUCHENB ## Sucht nach einem Textwert, der in einem anderen Textwert enthalten ist (Groß-/Kleinschreibung wird nicht unterschieden) +SUBSTITUTE = WECHSELN ## Ersetzt in einer Zeichenfolge neuen Text gegen alten +T = T ## Wandelt die zugehörigen Argumente in Text um +TEXT = TEXT ## Formatiert eine Zahl und wandelt sie in Text um +TRIM = GLÄTTEN ## Entfernt Leerzeichen aus Text +UPPER = GROSS ## Wandelt Text in Großbuchstaben um +VALUE = WERT ## Wandelt ein Textargument in eine Zahl um diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/en/uk/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/en/uk/_notes/dwsync.xml new file mode 100644 index 0000000..ee29aa4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/en/uk/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461862825543" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/en/uk/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/en/uk/config new file mode 100644 index 0000000..532080b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/en/uk/config @@ -0,0 +1,32 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +## +## (For future use) +## +currencySymbol = £ diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/es/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/es/_notes/dwsync.xml new file mode 100644 index 0000000..7471b2c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/es/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461863523017" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461864338075" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/es/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/es/config new file mode 100644 index 0000000..96cfa69 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/es/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = $ ## I'm surprised that the Excel Documentation suggests $ rather than € + + +## +## Excel Error Codes (For future use) +## +NULL = #¡NULO! +DIV0 = #¡DIV/0! +VALUE = #¡VALOR! +REF = #¡REF! +NAME = #¿NOMBRE? +NUM = #¡NÚM! +NA = #N/A diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/es/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/es/functions new file mode 100644 index 0000000..4876269 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/es/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Funciones de complementos y automatización +## +GETPIVOTDATA = IMPORTARDATOSDINAMICOS ## Devuelve los datos almacenados en un informe de tabla dinámica. + + +## +## Cube functions Funciones de cubo +## +CUBEKPIMEMBER = MIEMBROKPICUBO ## Devuelve un nombre, propiedad y medida de indicador de rendimiento clave (KPI) y muestra el nombre y la propiedad en la celda. Un KPI es una medida cuantificable, como los beneficios brutos mensuales o la facturación trimestral por empleado, que se usa para supervisar el rendimiento de una organización. +CUBEMEMBER = MIEMBROCUBO ## Devuelve un miembro o tupla en una jerarquía de cubo. Se usa para validar la existencia del miembro o la tupla en el cubo. +CUBEMEMBERPROPERTY = PROPIEDADMIEMBROCUBO ## Devuelve el valor de una propiedad de miembro del cubo Se usa para validar la existencia de un nombre de miembro en el cubo y para devolver la propiedad especificada para este miembro. +CUBERANKEDMEMBER = MIEMBRORANGOCUBO ## Devuelve el miembro n, o clasificado, de un conjunto. Se usa para devolver uno o más elementos de un conjunto, por ejemplo, el representante con mejores ventas o los diez mejores alumnos. +CUBESET = CONJUNTOCUBO ## Define un conjunto calculado de miembros o tuplas mediante el envío de una expresión de conjunto al cubo en el servidor, lo que crea el conjunto y, después, devuelve dicho conjunto a Microsoft Office Excel. +CUBESETCOUNT = RECUENTOCONJUNTOCUBO ## Devuelve el número de elementos de un conjunto. +CUBEVALUE = VALORCUBO ## Devuelve un valor agregado de un cubo. + + +## +## Database functions Funciones de base de datos +## +DAVERAGE = BDPROMEDIO ## Devuelve el promedio de las entradas seleccionadas en la base de datos. +DCOUNT = BDCONTAR ## Cuenta el número de celdas que contienen números en una base de datos. +DCOUNTA = BDCONTARA ## Cuenta el número de celdas no vacías en una base de datos. +DGET = BDEXTRAER ## Extrae de una base de datos un único registro que cumple los criterios especificados. +DMAX = BDMAX ## Devuelve el valor máximo de las entradas seleccionadas de la base de datos. +DMIN = BDMIN ## Devuelve el valor mínimo de las entradas seleccionadas de la base de datos. +DPRODUCT = BDPRODUCTO ## Multiplica los valores de un campo concreto de registros de una base de datos que cumplen los criterios especificados. +DSTDEV = BDDESVEST ## Calcula la desviación estándar a partir de una muestra de entradas seleccionadas en la base de datos. +DSTDEVP = BDDESVESTP ## Calcula la desviación estándar en función de la población total de las entradas seleccionadas de la base de datos. +DSUM = BDSUMA ## Suma los números de la columna de campo de los registros de la base de datos que cumplen los criterios. +DVAR = BDVAR ## Calcula la varianza a partir de una muestra de entradas seleccionadas de la base de datos. +DVARP = BDVARP ## Calcula la varianza a partir de la población total de entradas seleccionadas de la base de datos. + + +## +## Date and time functions Funciones de fecha y hora +## +DATE = FECHA ## Devuelve el número de serie correspondiente a una fecha determinada. +DATEVALUE = FECHANUMERO ## Convierte una fecha con formato de texto en un valor de número de serie. +DAY = DIA ## Convierte un número de serie en un valor de día del mes. +DAYS360 = DIAS360 ## Calcula el número de días entre dos fechas a partir de un año de 360 días. +EDATE = FECHA.MES ## Devuelve el número de serie de la fecha equivalente al número indicado de meses anteriores o posteriores a la fecha inicial. +EOMONTH = FIN.MES ## Devuelve el número de serie correspondiente al último día del mes anterior o posterior a un número de meses especificado. +HOUR = HORA ## Convierte un número de serie en un valor de hora. +MINUTE = MINUTO ## Convierte un número de serie en un valor de minuto. +MONTH = MES ## Convierte un número de serie en un valor de mes. +NETWORKDAYS = DIAS.LAB ## Devuelve el número de todos los días laborables existentes entre dos fechas. +NOW = AHORA ## Devuelve el número de serie correspondiente a la fecha y hora actuales. +SECOND = SEGUNDO ## Convierte un número de serie en un valor de segundo. +TIME = HORA ## Devuelve el número de serie correspondiente a una hora determinada. +TIMEVALUE = HORANUMERO ## Convierte una hora con formato de texto en un valor de número de serie. +TODAY = HOY ## Devuelve el número de serie correspondiente al día actual. +WEEKDAY = DIASEM ## Convierte un número de serie en un valor de día de la semana. +WEEKNUM = NUM.DE.SEMANA ## Convierte un número de serie en un número que representa el lugar numérico correspondiente a una semana de un año. +WORKDAY = DIA.LAB ## Devuelve el número de serie de la fecha que tiene lugar antes o después de un número determinado de días laborables. +YEAR = AÑO ## Convierte un número de serie en un valor de año. +YEARFRAC = FRAC.AÑO ## Devuelve la fracción de año que representa el número total de días existentes entre el valor de fecha_inicial y el de fecha_final. + + +## +## Engineering functions Funciones de ingeniería +## +BESSELI = BESSELI ## Devuelve la función Bessel In(x) modificada. +BESSELJ = BESSELJ ## Devuelve la función Bessel Jn(x). +BESSELK = BESSELK ## Devuelve la función Bessel Kn(x) modificada. +BESSELY = BESSELY ## Devuelve la función Bessel Yn(x). +BIN2DEC = BIN.A.DEC ## Convierte un número binario en decimal. +BIN2HEX = BIN.A.HEX ## Convierte un número binario en hexadecimal. +BIN2OCT = BIN.A.OCT ## Convierte un número binario en octal. +COMPLEX = COMPLEJO ## Convierte coeficientes reales e imaginarios en un número complejo. +CONVERT = CONVERTIR ## Convierte un número de un sistema de medida a otro. +DEC2BIN = DEC.A.BIN ## Convierte un número decimal en binario. +DEC2HEX = DEC.A.HEX ## Convierte un número decimal en hexadecimal. +DEC2OCT = DEC.A.OCT ## Convierte un número decimal en octal. +DELTA = DELTA ## Comprueba si dos valores son iguales. +ERF = FUN.ERROR ## Devuelve la función de error. +ERFC = FUN.ERROR.COMPL ## Devuelve la función de error complementario. +GESTEP = MAYOR.O.IGUAL ## Comprueba si un número es mayor que un valor de umbral. +HEX2BIN = HEX.A.BIN ## Convierte un número hexadecimal en binario. +HEX2DEC = HEX.A.DEC ## Convierte un número hexadecimal en decimal. +HEX2OCT = HEX.A.OCT ## Convierte un número hexadecimal en octal. +IMABS = IM.ABS ## Devuelve el valor absoluto (módulo) de un número complejo. +IMAGINARY = IMAGINARIO ## Devuelve el coeficiente imaginario de un número complejo. +IMARGUMENT = IM.ANGULO ## Devuelve el argumento theta, un ángulo expresado en radianes. +IMCONJUGATE = IM.CONJUGADA ## Devuelve la conjugada compleja de un número complejo. +IMCOS = IM.COS ## Devuelve el coseno de un número complejo. +IMDIV = IM.DIV ## Devuelve el cociente de dos números complejos. +IMEXP = IM.EXP ## Devuelve el valor exponencial de un número complejo. +IMLN = IM.LN ## Devuelve el logaritmo natural (neperiano) de un número complejo. +IMLOG10 = IM.LOG10 ## Devuelve el logaritmo en base 10 de un número complejo. +IMLOG2 = IM.LOG2 ## Devuelve el logaritmo en base 2 de un número complejo. +IMPOWER = IM.POT ## Devuelve un número complejo elevado a una potencia entera. +IMPRODUCT = IM.PRODUCT ## Devuelve el producto de números complejos. +IMREAL = IM.REAL ## Devuelve el coeficiente real de un número complejo. +IMSIN = IM.SENO ## Devuelve el seno de un número complejo. +IMSQRT = IM.RAIZ2 ## Devuelve la raíz cuadrada de un número complejo. +IMSUB = IM.SUSTR ## Devuelve la diferencia entre dos números complejos. +IMSUM = IM.SUM ## Devuelve la suma de números complejos. +OCT2BIN = OCT.A.BIN ## Convierte un número octal en binario. +OCT2DEC = OCT.A.DEC ## Convierte un número octal en decimal. +OCT2HEX = OCT.A.HEX ## Convierte un número octal en hexadecimal. + + +## +## Financial functions Funciones financieras +## +ACCRINT = INT.ACUM ## Devuelve el interés acumulado de un valor bursátil con pagos de interés periódicos. +ACCRINTM = INT.ACUM.V ## Devuelve el interés acumulado de un valor bursátil con pagos de interés al vencimiento. +AMORDEGRC = AMORTIZ.PROGRE ## Devuelve la amortización de cada período contable mediante el uso de un coeficiente de amortización. +AMORLINC = AMORTIZ.LIN ## Devuelve la amortización de cada uno de los períodos contables. +COUPDAYBS = CUPON.DIAS.L1 ## Devuelve el número de días desde el principio del período de un cupón hasta la fecha de liquidación. +COUPDAYS = CUPON.DIAS ## Devuelve el número de días del período (entre dos cupones) donde se encuentra la fecha de liquidación. +COUPDAYSNC = CUPON.DIAS.L2 ## Devuelve el número de días desde la fecha de liquidación hasta la fecha del próximo cupón. +COUPNCD = CUPON.FECHA.L2 ## Devuelve la fecha del próximo cupón después de la fecha de liquidación. +COUPNUM = CUPON.NUM ## Devuelve el número de pagos de cupón entre la fecha de liquidación y la fecha de vencimiento. +COUPPCD = CUPON.FECHA.L1 ## Devuelve la fecha de cupón anterior a la fecha de liquidación. +CUMIPMT = PAGO.INT.ENTRE ## Devuelve el interés acumulado pagado entre dos períodos. +CUMPRINC = PAGO.PRINC.ENTRE ## Devuelve el capital acumulado pagado de un préstamo entre dos períodos. +DB = DB ## Devuelve la amortización de un bien durante un período específico a través del método de amortización de saldo fijo. +DDB = DDB ## Devuelve la amortización de un bien durante un período específico a través del método de amortización por doble disminución de saldo u otro método que se especifique. +DISC = TASA.DESC ## Devuelve la tasa de descuento de un valor bursátil. +DOLLARDE = MONEDA.DEC ## Convierte una cotización de un valor bursátil expresada en forma fraccionaria en una cotización de un valor bursátil expresada en forma decimal. +DOLLARFR = MONEDA.FRAC ## Convierte una cotización de un valor bursátil expresada en forma decimal en una cotización de un valor bursátil expresada en forma fraccionaria. +DURATION = DURACION ## Devuelve la duración anual de un valor bursátil con pagos de interés periódico. +EFFECT = INT.EFECTIVO ## Devuelve la tasa de interés anual efectiva. +FV = VF ## Devuelve el valor futuro de una inversión. +FVSCHEDULE = VF.PLAN ## Devuelve el valor futuro de un capital inicial después de aplicar una serie de tasas de interés compuesto. +INTRATE = TASA.INT ## Devuelve la tasa de interés para la inversión total de un valor bursátil. +IPMT = PAGOINT ## Devuelve el pago de intereses de una inversión durante un período determinado. +IRR = TIR ## Devuelve la tasa interna de retorno para una serie de flujos de efectivo periódicos. +ISPMT = INT.PAGO.DIR ## Calcula el interés pagado durante un período específico de una inversión. +MDURATION = DURACION.MODIF ## Devuelve la duración de Macauley modificada de un valor bursátil con un valor nominal supuesto de 100 $. +MIRR = TIRM ## Devuelve la tasa interna de retorno donde se financian flujos de efectivo positivos y negativos a tasas diferentes. +NOMINAL = TASA.NOMINAL ## Devuelve la tasa nominal de interés anual. +NPER = NPER ## Devuelve el número de períodos de una inversión. +NPV = VNA ## Devuelve el valor neto actual de una inversión en función de una serie de flujos periódicos de efectivo y una tasa de descuento. +ODDFPRICE = PRECIO.PER.IRREGULAR.1 ## Devuelve el precio por un valor nominal de 100 $ de un valor bursátil con un primer período impar. +ODDFYIELD = RENDTO.PER.IRREGULAR.1 ## Devuelve el rendimiento de un valor bursátil con un primer período impar. +ODDLPRICE = PRECIO.PER.IRREGULAR.2 ## Devuelve el precio por un valor nominal de 100 $ de un valor bursátil con un último período impar. +ODDLYIELD = RENDTO.PER.IRREGULAR.2 ## Devuelve el rendimiento de un valor bursátil con un último período impar. +PMT = PAGO ## Devuelve el pago periódico de una anualidad. +PPMT = PAGOPRIN ## Devuelve el pago de capital de una inversión durante un período determinado. +PRICE = PRECIO ## Devuelve el precio por un valor nominal de 100 $ de un valor bursátil que paga una tasa de interés periódico. +PRICEDISC = PRECIO.DESCUENTO ## Devuelve el precio por un valor nominal de 100 $ de un valor bursátil con descuento. +PRICEMAT = PRECIO.VENCIMIENTO ## Devuelve el precio por un valor nominal de 100 $ de un valor bursátil que paga interés a su vencimiento. +PV = VALACT ## Devuelve el valor actual de una inversión. +RATE = TASA ## Devuelve la tasa de interés por período de una anualidad. +RECEIVED = CANTIDAD.RECIBIDA ## Devuelve la cantidad recibida al vencimiento de un valor bursátil completamente invertido. +SLN = SLN ## Devuelve la amortización por método directo de un bien en un período dado. +SYD = SYD ## Devuelve la amortización por suma de dígitos de los años de un bien durante un período especificado. +TBILLEQ = LETRA.DE.TES.EQV.A.BONO ## Devuelve el rendimiento de un bono equivalente a una letra del Tesoro (de EE.UU.) +TBILLPRICE = LETRA.DE.TES.PRECIO ## Devuelve el precio por un valor nominal de 100 $ de una letra del Tesoro (de EE.UU.) +TBILLYIELD = LETRA.DE.TES.RENDTO ## Devuelve el rendimiento de una letra del Tesoro (de EE.UU.) +VDB = DVS ## Devuelve la amortización de un bien durante un período específico o parcial a través del método de cálculo del saldo en disminución. +XIRR = TIR.NO.PER ## Devuelve la tasa interna de retorno para un flujo de efectivo que no es necesariamente periódico. +XNPV = VNA.NO.PER ## Devuelve el valor neto actual para un flujo de efectivo que no es necesariamente periódico. +YIELD = RENDTO ## Devuelve el rendimiento de un valor bursátil que paga intereses periódicos. +YIELDDISC = RENDTO.DESC ## Devuelve el rendimiento anual de un valor bursátil con descuento; por ejemplo, una letra del Tesoro (de EE.UU.) +YIELDMAT = RENDTO.VENCTO ## Devuelve el rendimiento anual de un valor bursátil que paga intereses al vencimiento. + + +## +## Information functions Funciones de información +## +CELL = CELDA ## Devuelve información acerca del formato, la ubicación o el contenido de una celda. +ERROR.TYPE = TIPO.DE.ERROR ## Devuelve un número que corresponde a un tipo de error. +INFO = INFO ## Devuelve información acerca del entorno operativo en uso. +ISBLANK = ESBLANCO ## Devuelve VERDADERO si el valor está en blanco. +ISERR = ESERR ## Devuelve VERDADERO si el valor es cualquier valor de error excepto #N/A. +ISERROR = ESERROR ## Devuelve VERDADERO si el valor es cualquier valor de error. +ISEVEN = ES.PAR ## Devuelve VERDADERO si el número es par. +ISLOGICAL = ESLOGICO ## Devuelve VERDADERO si el valor es un valor lógico. +ISNA = ESNOD ## Devuelve VERDADERO si el valor es el valor de error #N/A. +ISNONTEXT = ESNOTEXTO ## Devuelve VERDADERO si el valor no es texto. +ISNUMBER = ESNUMERO ## Devuelve VERDADERO si el valor es un número. +ISODD = ES.IMPAR ## Devuelve VERDADERO si el número es impar. +ISREF = ESREF ## Devuelve VERDADERO si el valor es una referencia. +ISTEXT = ESTEXTO ## Devuelve VERDADERO si el valor es texto. +N = N ## Devuelve un valor convertido en un número. +NA = ND ## Devuelve el valor de error #N/A. +TYPE = TIPO ## Devuelve un número que indica el tipo de datos de un valor. + + +## +## Logical functions Funciones lógicas +## +AND = Y ## Devuelve VERDADERO si todos sus argumentos son VERDADERO. +FALSE = FALSO ## Devuelve el valor lógico FALSO. +IF = SI ## Especifica una prueba lógica que realizar. +IFERROR = SI.ERROR ## Devuelve un valor que se especifica si una fórmula lo evalúa como un error; de lo contrario, devuelve el resultado de la fórmula. +NOT = NO ## Invierte el valor lógico del argumento. +OR = O ## Devuelve VERDADERO si cualquier argumento es VERDADERO. +TRUE = VERDADERO ## Devuelve el valor lógico VERDADERO. + + +## +## Lookup and reference functions Funciones de búsqueda y referencia +## +ADDRESS = DIRECCION ## Devuelve una referencia como texto a una sola celda de una hoja de cálculo. +AREAS = AREAS ## Devuelve el número de áreas de una referencia. +CHOOSE = ELEGIR ## Elige un valor de una lista de valores. +COLUMN = COLUMNA ## Devuelve el número de columna de una referencia. +COLUMNS = COLUMNAS ## Devuelve el número de columnas de una referencia. +HLOOKUP = BUSCARH ## Busca en la fila superior de una matriz y devuelve el valor de la celda indicada. +HYPERLINK = HIPERVINCULO ## Crea un acceso directo o un salto que abre un documento almacenado en un servidor de red, en una intranet o en Internet. +INDEX = INDICE ## Usa un índice para elegir un valor de una referencia o matriz. +INDIRECT = INDIRECTO ## Devuelve una referencia indicada por un valor de texto. +LOOKUP = BUSCAR ## Busca valores de un vector o una matriz. +MATCH = COINCIDIR ## Busca valores de una referencia o matriz. +OFFSET = DESREF ## Devuelve un desplazamiento de referencia respecto a una referencia dada. +ROW = FILA ## Devuelve el número de fila de una referencia. +ROWS = FILAS ## Devuelve el número de filas de una referencia. +RTD = RDTR ## Recupera datos en tiempo real desde un programa compatible con la automatización COM (automatización: modo de trabajar con los objetos de una aplicación desde otra aplicación o herramienta de entorno. La automatización, antes denominada automatización OLE, es un estándar de la industria y una función del Modelo de objetos componentes (COM).). +TRANSPOSE = TRANSPONER ## Devuelve la transposición de una matriz. +VLOOKUP = BUSCARV ## Busca en la primera columna de una matriz y se mueve en horizontal por la fila para devolver el valor de una celda. + + +## +## Math and trigonometry functions Funciones matemáticas y trigonométricas +## +ABS = ABS ## Devuelve el valor absoluto de un número. +ACOS = ACOS ## Devuelve el arcocoseno de un número. +ACOSH = ACOSH ## Devuelve el coseno hiperbólico inverso de un número. +ASIN = ASENO ## Devuelve el arcoseno de un número. +ASINH = ASENOH ## Devuelve el seno hiperbólico inverso de un número. +ATAN = ATAN ## Devuelve la arcotangente de un número. +ATAN2 = ATAN2 ## Devuelve la arcotangente de las coordenadas "x" e "y". +ATANH = ATANH ## Devuelve la tangente hiperbólica inversa de un número. +CEILING = MULTIPLO.SUPERIOR ## Redondea un número al entero más próximo o al múltiplo significativo más cercano. +COMBIN = COMBINAT ## Devuelve el número de combinaciones para un número determinado de objetos. +COS = COS ## Devuelve el coseno de un número. +COSH = COSH ## Devuelve el coseno hiperbólico de un número. +DEGREES = GRADOS ## Convierte radianes en grados. +EVEN = REDONDEA.PAR ## Redondea un número hasta el entero par más próximo. +EXP = EXP ## Devuelve e elevado a la potencia de un número dado. +FACT = FACT ## Devuelve el factorial de un número. +FACTDOUBLE = FACT.DOBLE ## Devuelve el factorial doble de un número. +FLOOR = MULTIPLO.INFERIOR ## Redondea un número hacia abajo, en dirección hacia cero. +GCD = M.C.D ## Devuelve el máximo común divisor. +INT = ENTERO ## Redondea un número hacia abajo hasta el entero más próximo. +LCM = M.C.M ## Devuelve el mínimo común múltiplo. +LN = LN ## Devuelve el logaritmo natural (neperiano) de un número. +LOG = LOG ## Devuelve el logaritmo de un número en una base especificada. +LOG10 = LOG10 ## Devuelve el logaritmo en base 10 de un número. +MDETERM = MDETERM ## Devuelve la determinante matricial de una matriz. +MINVERSE = MINVERSA ## Devuelve la matriz inversa de una matriz. +MMULT = MMULT ## Devuelve el producto de matriz de dos matrices. +MOD = RESIDUO ## Devuelve el resto de la división. +MROUND = REDOND.MULT ## Devuelve un número redondeado al múltiplo deseado. +MULTINOMIAL = MULTINOMIAL ## Devuelve el polinomio de un conjunto de números. +ODD = REDONDEA.IMPAR ## Redondea un número hacia arriba hasta el entero impar más próximo. +PI = PI ## Devuelve el valor de pi. +POWER = POTENCIA ## Devuelve el resultado de elevar un número a una potencia. +PRODUCT = PRODUCTO ## Multiplica sus argumentos. +QUOTIENT = COCIENTE ## Devuelve la parte entera de una división. +RADIANS = RADIANES ## Convierte grados en radianes. +RAND = ALEATORIO ## Devuelve un número aleatorio entre 0 y 1. +RANDBETWEEN = ALEATORIO.ENTRE ## Devuelve un número aleatorio entre los números que especifique. +ROMAN = NUMERO.ROMANO ## Convierte un número arábigo en número romano, con formato de texto. +ROUND = REDONDEAR ## Redondea un número al número de decimales especificado. +ROUNDDOWN = REDONDEAR.MENOS ## Redondea un número hacia abajo, en dirección hacia cero. +ROUNDUP = REDONDEAR.MAS ## Redondea un número hacia arriba, en dirección contraria a cero. +SERIESSUM = SUMA.SERIES ## Devuelve la suma de una serie de potencias en función de la fórmula. +SIGN = SIGNO ## Devuelve el signo de un número. +SIN = SENO ## Devuelve el seno de un ángulo determinado. +SINH = SENOH ## Devuelve el seno hiperbólico de un número. +SQRT = RAIZ ## Devuelve la raíz cuadrada positiva de un número. +SQRTPI = RAIZ2PI ## Devuelve la raíz cuadrada de un número multiplicado por PI (número * pi). +SUBTOTAL = SUBTOTALES ## Devuelve un subtotal en una lista o base de datos. +SUM = SUMA ## Suma sus argumentos. +SUMIF = SUMAR.SI ## Suma las celdas especificadas que cumplen unos criterios determinados. +SUMIFS = SUMAR.SI.CONJUNTO ## Suma las celdas de un rango que cumplen varios criterios. +SUMPRODUCT = SUMAPRODUCTO ## Devuelve la suma de los productos de los correspondientes componentes de matriz. +SUMSQ = SUMA.CUADRADOS ## Devuelve la suma de los cuadrados de los argumentos. +SUMX2MY2 = SUMAX2MENOSY2 ## Devuelve la suma de la diferencia de los cuadrados de los valores correspondientes de dos matrices. +SUMX2PY2 = SUMAX2MASY2 ## Devuelve la suma de la suma de los cuadrados de los valores correspondientes de dos matrices. +SUMXMY2 = SUMAXMENOSY2 ## Devuelve la suma de los cuadrados de las diferencias de los valores correspondientes de dos matrices. +TAN = TAN ## Devuelve la tangente de un número. +TANH = TANH ## Devuelve la tangente hiperbólica de un número. +TRUNC = TRUNCAR ## Trunca un número a un entero. + + +## +## Statistical functions Funciones estadísticas +## +AVEDEV = DESVPROM ## Devuelve el promedio de las desviaciones absolutas de la media de los puntos de datos. +AVERAGE = PROMEDIO ## Devuelve el promedio de sus argumentos. +AVERAGEA = PROMEDIOA ## Devuelve el promedio de sus argumentos, incluidos números, texto y valores lógicos. +AVERAGEIF = PROMEDIO.SI ## Devuelve el promedio (media aritmética) de todas las celdas de un rango que cumplen unos criterios determinados. +AVERAGEIFS = PROMEDIO.SI.CONJUNTO ## Devuelve el promedio (media aritmética) de todas las celdas que cumplen múltiples criterios. +BETADIST = DISTR.BETA ## Devuelve la función de distribución beta acumulativa. +BETAINV = DISTR.BETA.INV ## Devuelve la función inversa de la función de distribución acumulativa de una distribución beta especificada. +BINOMDIST = DISTR.BINOM ## Devuelve la probabilidad de una variable aleatoria discreta siguiendo una distribución binomial. +CHIDIST = DISTR.CHI ## Devuelve la probabilidad de una variable aleatoria continua siguiendo una distribución chi cuadrado de una sola cola. +CHIINV = PRUEBA.CHI.INV ## Devuelve la función inversa de la probabilidad de una variable aleatoria continua siguiendo una distribución chi cuadrado de una sola cola. +CHITEST = PRUEBA.CHI ## Devuelve la prueba de independencia. +CONFIDENCE = INTERVALO.CONFIANZA ## Devuelve el intervalo de confianza de la media de una población. +CORREL = COEF.DE.CORREL ## Devuelve el coeficiente de correlación entre dos conjuntos de datos. +COUNT = CONTAR ## Cuenta cuántos números hay en la lista de argumentos. +COUNTA = CONTARA ## Cuenta cuántos valores hay en la lista de argumentos. +COUNTBLANK = CONTAR.BLANCO ## Cuenta el número de celdas en blanco de un rango. +COUNTIF = CONTAR.SI ## Cuenta el número de celdas, dentro del rango, que cumplen el criterio especificado. +COUNTIFS = CONTAR.SI.CONJUNTO ## Cuenta el número de celdas, dentro del rango, que cumplen varios criterios. +COVAR = COVAR ## Devuelve la covarianza, que es el promedio de los productos de las desviaciones para cada pareja de puntos de datos. +CRITBINOM = BINOM.CRIT ## Devuelve el menor valor cuya distribución binomial acumulativa es menor o igual a un valor de criterio. +DEVSQ = DESVIA2 ## Devuelve la suma de los cuadrados de las desviaciones. +EXPONDIST = DISTR.EXP ## Devuelve la distribución exponencial. +FDIST = DISTR.F ## Devuelve la distribución de probabilidad F. +FINV = DISTR.F.INV ## Devuelve la función inversa de la distribución de probabilidad F. +FISHER = FISHER ## Devuelve la transformación Fisher. +FISHERINV = PRUEBA.FISHER.INV ## Devuelve la función inversa de la transformación Fisher. +FORECAST = PRONOSTICO ## Devuelve un valor en una tendencia lineal. +FREQUENCY = FRECUENCIA ## Devuelve una distribución de frecuencia como una matriz vertical. +FTEST = PRUEBA.F ## Devuelve el resultado de una prueba F. +GAMMADIST = DISTR.GAMMA ## Devuelve la distribución gamma. +GAMMAINV = DISTR.GAMMA.INV ## Devuelve la función inversa de la distribución gamma acumulativa. +GAMMALN = GAMMA.LN ## Devuelve el logaritmo natural de la función gamma, G(x). +GEOMEAN = MEDIA.GEOM ## Devuelve la media geométrica. +GROWTH = CRECIMIENTO ## Devuelve valores en una tendencia exponencial. +HARMEAN = MEDIA.ARMO ## Devuelve la media armónica. +HYPGEOMDIST = DISTR.HIPERGEOM ## Devuelve la distribución hipergeométrica. +INTERCEPT = INTERSECCION.EJE ## Devuelve la intersección de la línea de regresión lineal. +KURT = CURTOSIS ## Devuelve la curtosis de un conjunto de datos. +LARGE = K.ESIMO.MAYOR ## Devuelve el k-ésimo mayor valor de un conjunto de datos. +LINEST = ESTIMACION.LINEAL ## Devuelve los parámetros de una tendencia lineal. +LOGEST = ESTIMACION.LOGARITMICA ## Devuelve los parámetros de una tendencia exponencial. +LOGINV = DISTR.LOG.INV ## Devuelve la función inversa de la distribución logarítmico-normal. +LOGNORMDIST = DISTR.LOG.NORM ## Devuelve la distribución logarítmico-normal acumulativa. +MAX = MAX ## Devuelve el valor máximo de una lista de argumentos. +MAXA = MAXA ## Devuelve el valor máximo de una lista de argumentos, incluidos números, texto y valores lógicos. +MEDIAN = MEDIANA ## Devuelve la mediana de los números dados. +MIN = MIN ## Devuelve el valor mínimo de una lista de argumentos. +MINA = MINA ## Devuelve el valor mínimo de una lista de argumentos, incluidos números, texto y valores lógicos. +MODE = MODA ## Devuelve el valor más común de un conjunto de datos. +NEGBINOMDIST = NEGBINOMDIST ## Devuelve la distribución binomial negativa. +NORMDIST = DISTR.NORM ## Devuelve la distribución normal acumulativa. +NORMINV = DISTR.NORM.INV ## Devuelve la función inversa de la distribución normal acumulativa. +NORMSDIST = DISTR.NORM.ESTAND ## Devuelve la distribución normal estándar acumulativa. +NORMSINV = DISTR.NORM.ESTAND.INV ## Devuelve la función inversa de la distribución normal estándar acumulativa. +PEARSON = PEARSON ## Devuelve el coeficiente de momento de correlación de producto Pearson. +PERCENTILE = PERCENTIL ## Devuelve el k-ésimo percentil de los valores de un rango. +PERCENTRANK = RANGO.PERCENTIL ## Devuelve el rango porcentual de un valor de un conjunto de datos. +PERMUT = PERMUTACIONES ## Devuelve el número de permutaciones de un número determinado de objetos. +POISSON = POISSON ## Devuelve la distribución de Poisson. +PROB = PROBABILIDAD ## Devuelve la probabilidad de que los valores de un rango se encuentren entre dos límites. +QUARTILE = CUARTIL ## Devuelve el cuartil de un conjunto de datos. +RANK = JERARQUIA ## Devuelve la jerarquía de un número en una lista de números. +RSQ = COEFICIENTE.R2 ## Devuelve el cuadrado del coeficiente de momento de correlación de producto Pearson. +SKEW = COEFICIENTE.ASIMETRIA ## Devuelve la asimetría de una distribución. +SLOPE = PENDIENTE ## Devuelve la pendiente de la línea de regresión lineal. +SMALL = K.ESIMO.MENOR ## Devuelve el k-ésimo menor valor de un conjunto de datos. +STANDARDIZE = NORMALIZACION ## Devuelve un valor normalizado. +STDEV = DESVEST ## Calcula la desviación estándar a partir de una muestra. +STDEVA = DESVESTA ## Calcula la desviación estándar a partir de una muestra, incluidos números, texto y valores lógicos. +STDEVP = DESVESTP ## Calcula la desviación estándar en función de toda la población. +STDEVPA = DESVESTPA ## Calcula la desviación estándar en función de toda la población, incluidos números, texto y valores lógicos. +STEYX = ERROR.TIPICO.XY ## Devuelve el error estándar del valor de "y" previsto para cada "x" de la regresión. +TDIST = DISTR.T ## Devuelve la distribución de t de Student. +TINV = DISTR.T.INV ## Devuelve la función inversa de la distribución de t de Student. +TREND = TENDENCIA ## Devuelve valores en una tendencia lineal. +TRIMMEAN = MEDIA.ACOTADA ## Devuelve la media del interior de un conjunto de datos. +TTEST = PRUEBA.T ## Devuelve la probabilidad asociada a una prueba t de Student. +VAR = VAR ## Calcula la varianza en función de una muestra. +VARA = VARA ## Calcula la varianza en función de una muestra, incluidos números, texto y valores lógicos. +VARP = VARP ## Calcula la varianza en función de toda la población. +VARPA = VARPA ## Calcula la varianza en función de toda la población, incluidos números, texto y valores lógicos. +WEIBULL = DIST.WEIBULL ## Devuelve la distribución de Weibull. +ZTEST = PRUEBA.Z ## Devuelve el valor de una probabilidad de una cola de una prueba z. + + +## +## Text functions Funciones de texto +## +ASC = ASC ## Convierte las letras inglesas o katakana de ancho completo (de dos bytes) dentro de una cadena de caracteres en caracteres de ancho medio (de un byte). +BAHTTEXT = TEXTOBAHT ## Convierte un número en texto, con el formato de moneda ß (Baht). +CHAR = CARACTER ## Devuelve el carácter especificado por el número de código. +CLEAN = LIMPIAR ## Quita del texto todos los caracteres no imprimibles. +CODE = CODIGO ## Devuelve un código numérico del primer carácter de una cadena de texto. +CONCATENATE = CONCATENAR ## Concatena varios elementos de texto en uno solo. +DOLLAR = MONEDA ## Convierte un número en texto, con el formato de moneda $ (dólar). +EXACT = IGUAL ## Comprueba si dos valores de texto son idénticos. +FIND = ENCONTRAR ## Busca un valor de texto dentro de otro (distingue mayúsculas de minúsculas). +FINDB = ENCONTRARB ## Busca un valor de texto dentro de otro (distingue mayúsculas de minúsculas). +FIXED = DECIMAL ## Da formato a un número como texto con un número fijo de decimales. +JIS = JIS ## Convierte las letras inglesas o katakana de ancho medio (de un byte) dentro de una cadena de caracteres en caracteres de ancho completo (de dos bytes). +LEFT = IZQUIERDA ## Devuelve los caracteres del lado izquierdo de un valor de texto. +LEFTB = IZQUIERDAB ## Devuelve los caracteres del lado izquierdo de un valor de texto. +LEN = LARGO ## Devuelve el número de caracteres de una cadena de texto. +LENB = LARGOB ## Devuelve el número de caracteres de una cadena de texto. +LOWER = MINUSC ## Pone el texto en minúsculas. +MID = EXTRAE ## Devuelve un número específico de caracteres de una cadena de texto que comienza en la posición que se especifique. +MIDB = EXTRAEB ## Devuelve un número específico de caracteres de una cadena de texto que comienza en la posición que se especifique. +PHONETIC = FONETICO ## Extrae los caracteres fonéticos (furigana) de una cadena de texto. +PROPER = NOMPROPIO ## Pone en mayúscula la primera letra de cada palabra de un valor de texto. +REPLACE = REEMPLAZAR ## Reemplaza caracteres de texto. +REPLACEB = REEMPLAZARB ## Reemplaza caracteres de texto. +REPT = REPETIR ## Repite el texto un número determinado de veces. +RIGHT = DERECHA ## Devuelve los caracteres del lado derecho de un valor de texto. +RIGHTB = DERECHAB ## Devuelve los caracteres del lado derecho de un valor de texto. +SEARCH = HALLAR ## Busca un valor de texto dentro de otro (no distingue mayúsculas de minúsculas). +SEARCHB = HALLARB ## Busca un valor de texto dentro de otro (no distingue mayúsculas de minúsculas). +SUBSTITUTE = SUSTITUIR ## Sustituye texto nuevo por texto antiguo en una cadena de texto. +T = T ## Convierte sus argumentos a texto. +TEXT = TEXTO ## Da formato a un número y lo convierte en texto. +TRIM = ESPACIOS ## Quita los espacios del texto. +UPPER = MAYUSC ## Pone el texto en mayúsculas. +VALUE = VALOR ## Convierte un argumento de texto en un número. diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fi/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fi/_notes/dwsync.xml new file mode 100644 index 0000000..bf17c86 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fi/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461863941707" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461865142541" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fi/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fi/config new file mode 100644 index 0000000..498cf4c --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fi/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = $ # Symbol not known, should it be a € (Euro)? + + +## +## Excel Error Codes (For future use) +## +NULL = #TYHJÄ! +DIV0 = #JAKO/0! +VALUE = #ARVO! +REF = #VIITTAUS! +NAME = #NIMI? +NUM = #LUKU! +NA = #PUUTTUU diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fi/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fi/functions new file mode 100644 index 0000000..6a7c2b3 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fi/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Apuohjelma- ja automaatiofunktiot +## +GETPIVOTDATA = NOUDA.PIVOT.TIEDOT ## Palauttaa pivot-taulukkoraporttiin tallennettuja tietoja. + + +## +## Cube functions Kuutiofunktiot +## +CUBEKPIMEMBER = KUUTIOKPIJÄSEN ## Palauttaa suorituskykyilmaisimen (KPI) nimen, ominaisuuden sekä mitan ja näyttää nimen sekä ominaisuuden solussa. KPI on mitattavissa oleva suure, kuten kuukauden bruttotuotto tai vuosineljänneksen työntekijäkohtainen liikevaihto, joiden avulla tarkkaillaan organisaation suorituskykyä. +CUBEMEMBER = KUUTIONJÄSEN ## Palauttaa kuutiohierarkian jäsenen tai monikon. Tällä funktiolla voit tarkistaa, että jäsen tai monikko on olemassa kuutiossa. +CUBEMEMBERPROPERTY = KUUTIONJÄSENENOMINAISUUS ## Palauttaa kuution jäsenominaisuuden arvon. Tällä funktiolla voit tarkistaa, että nimi on olemassa kuutiossa, ja palauttaa tämän jäsenen määritetyn ominaisuuden. +CUBERANKEDMEMBER = KUUTIONLUOKITELTUJÄSEN ## Palauttaa joukon n:nnen jäsenen. Tällä funktiolla voit palauttaa joukosta elementtejä, kuten parhaan myyjän tai 10 parasta opiskelijaa. +CUBESET = KUUTIOJOUKKO ## Määrittää lasketun jäsen- tai monikkojoukon lähettämällä joukon lausekkeita palvelimessa olevalle kuutiolle. Palvelin luo joukon ja palauttaa sen Microsoft Office Excelille. +CUBESETCOUNT = KUUTIOJOUKKOJENMÄÄRÄ ## Palauttaa joukon kohteiden määrän. +CUBEVALUE = KUUTIONARVO ## Palauttaa koostetun arvon kuutiosta. + + +## +## Database functions Tietokantafunktiot +## +DAVERAGE = TKESKIARVO ## Palauttaa valittujen tietokantamerkintöjen keskiarvon. +DCOUNT = TLASKE ## Laskee tietokannan lukuja sisältävien solujen määrän. +DCOUNTA = TLASKEA ## Laskee tietokannan tietoja sisältävien solujen määrän. +DGET = TNOUDA ## Hakee määritettyjä ehtoja vastaavan tietueen tietokannasta. +DMAX = TMAKS ## Palauttaa suurimman arvon tietokannasta valittujen arvojen joukosta. +DMIN = TMIN ## Palauttaa pienimmän arvon tietokannasta valittujen arvojen joukosta. +DPRODUCT = TTULO ## Kertoo määritetyn ehdon täyttävien tietokannan tietueiden tietyssä kentässä olevat arvot. +DSTDEV = TKESKIHAJONTA ## Laskee keskihajonnan tietokannasta valituista arvoista muodostuvan otoksen perusteella. +DSTDEVP = TKESKIHAJONTAP ## Laskee keskihajonnan tietokannasta valittujen arvojen koko populaation perusteella. +DSUM = TSUMMA ## Lisää luvut määritetyn ehdon täyttävien tietokannan tietueiden kenttäsarakkeeseen. +DVAR = TVARIANSSI ## Laskee varianssin tietokannasta valittujen arvojen otoksen perusteella. +DVARP = TVARIANSSIP ## Laskee varianssin tietokannasta valittujen arvojen koko populaation perusteella. + + +## +## Date and time functions Päivämäärä- ja aikafunktiot +## +DATE = PÄIVÄYS ## Palauttaa annetun päivämäärän järjestysluvun. +DATEVALUE = PÄIVÄYSARVO ## Muuntaa tekstimuodossa olevan päivämäärän järjestysluvuksi. +DAY = PÄIVÄ ## Muuntaa järjestysluvun kuukauden päiväksi. +DAYS360 = PÄIVÄT360 ## Laskee kahden päivämäärän välisten päivien määrän käyttäen perustana 360-päiväistä vuotta. +EDATE = PÄIVÄ.KUUKAUSI ## Palauttaa järjestyslukuna päivämäärän, joka poikkeaa aloituspäivän päivämäärästä annetun kuukausimäärän verran joko eteen- tai taaksepäin. +EOMONTH = KUUKAUSI.LOPPU ## Palauttaa järjestyslukuna sen kuukauden viimeisen päivämäärän, joka poikkeaa annetun kuukausimäärän verran eteen- tai taaksepäin. +HOUR = TUNNIT ## Muuntaa järjestysluvun tunneiksi. +MINUTE = MINUUTIT ## Muuntaa järjestysluvun minuuteiksi. +MONTH = KUUKAUSI ## Muuntaa järjestysluvun kuukausiksi. +NETWORKDAYS = TYÖPÄIVÄT ## Palauttaa kahden päivämäärän välissä olevien täysien työpäivien määrän. +NOW = NYT ## Palauttaa kuluvan päivämäärän ja ajan järjestysnumeron. +SECOND = SEKUNNIT ## Muuntaa järjestysluvun sekunneiksi. +TIME = AIKA ## Palauttaa annetun kellonajan järjestysluvun. +TIMEVALUE = AIKA_ARVO ## Muuntaa tekstimuodossa olevan kellonajan järjestysluvuksi. +TODAY = TÄMÄ.PÄIVÄ ## Palauttaa kuluvan päivän päivämäärän järjestysluvun. +WEEKDAY = VIIKONPÄIVÄ ## Muuntaa järjestysluvun viikonpäiväksi. +WEEKNUM = VIIKKO.NRO ## Muuntaa järjestysluvun luvuksi, joka ilmaisee viikon järjestysluvun vuoden alusta laskettuna. +WORKDAY = TYÖPÄIVÄ ## Palauttaa järjestysluvun päivämäärälle, joka sijaitsee annettujen työpäivien verran eteen tai taaksepäin. +YEAR = VUOSI ## Muuntaa järjestysluvun vuosiksi. +YEARFRAC = VUOSI.OSA ## Palauttaa määritettyjen päivämäärien (aloituspäivä ja lopetuspäivä) välisen osan vuodesta. + + +## +## Engineering functions Tekniset funktiot +## +BESSELI = BESSELI ## Palauttaa muunnetun Bessel-funktion In(x). +BESSELJ = BESSELJ ## Palauttaa Bessel-funktion Jn(x). +BESSELK = BESSELK ## Palauttaa muunnetun Bessel-funktion Kn(x). +BESSELY = BESSELY ## Palauttaa Bessel-funktion Yn(x). +BIN2DEC = BINDES ## Muuntaa binaariluvun desimaaliluvuksi. +BIN2HEX = BINHEKSA ## Muuntaa binaariluvun heksadesimaaliluvuksi. +BIN2OCT = BINOKT ## Muuntaa binaariluvun oktaaliluvuksi. +COMPLEX = KOMPLEKSI ## Muuntaa reaali- ja imaginaariosien kertoimet kompleksiluvuksi. +CONVERT = MUUNNA ## Muuntaa luvun toisen mittajärjestelmän mukaiseksi. +DEC2BIN = DESBIN ## Muuntaa desimaaliluvun binaariluvuksi. +DEC2HEX = DESHEKSA ## Muuntaa kymmenjärjestelmän luvun heksadesimaaliluvuksi. +DEC2OCT = DESOKT ## Muuntaa kymmenjärjestelmän luvun oktaaliluvuksi. +DELTA = SAMA.ARVO ## Tarkistaa, ovatko kaksi arvoa yhtä suuria. +ERF = VIRHEFUNKTIO ## Palauttaa virhefunktion. +ERFC = VIRHEFUNKTIO.KOMPLEMENTTI ## Palauttaa komplementtivirhefunktion. +GESTEP = RAJA ## Testaa, onko luku suurempi kuin kynnysarvo. +HEX2BIN = HEKSABIN ## Muuntaa heksadesimaaliluvun binaariluvuksi. +HEX2DEC = HEKSADES ## Muuntaa heksadesimaaliluvun desimaaliluvuksi. +HEX2OCT = HEKSAOKT ## Muuntaa heksadesimaaliluvun oktaaliluvuksi. +IMABS = KOMPLEKSI.ITSEISARVO ## Palauttaa kompleksiluvun itseisarvon (moduluksen). +IMAGINARY = KOMPLEKSI.IMAG ## Palauttaa kompleksiluvun imaginaariosan kertoimen. +IMARGUMENT = KOMPLEKSI.ARG ## Palauttaa theeta-argumentin, joka on radiaaneina annettu kulma. +IMCONJUGATE = KOMPLEKSI.KONJ ## Palauttaa kompleksiluvun konjugaattiluvun. +IMCOS = KOMPLEKSI.COS ## Palauttaa kompleksiluvun kosinin. +IMDIV = KOMPLEKSI.OSAM ## Palauttaa kahden kompleksiluvun osamäärän. +IMEXP = KOMPLEKSI.EKSP ## Palauttaa kompleksiluvun eksponentin. +IMLN = KOMPLEKSI.LN ## Palauttaa kompleksiluvun luonnollisen logaritmin. +IMLOG10 = KOMPLEKSI.LOG10 ## Palauttaa kompleksiluvun kymmenkantaisen logaritmin. +IMLOG2 = KOMPLEKSI.LOG2 ## Palauttaa kompleksiluvun kaksikantaisen logaritmin. +IMPOWER = KOMPLEKSI.POT ## Palauttaa kokonaislukupotenssiin korotetun kompleksiluvun. +IMPRODUCT = KOMPLEKSI.TULO ## Palauttaa kompleksilukujen tulon. +IMREAL = KOMPLEKSI.REAALI ## Palauttaa kompleksiluvun reaaliosan kertoimen. +IMSIN = KOMPLEKSI.SIN ## Palauttaa kompleksiluvun sinin. +IMSQRT = KOMPLEKSI.NELIÖJ ## Palauttaa kompleksiluvun neliöjuuren. +IMSUB = KOMPLEKSI.EROTUS ## Palauttaa kahden kompleksiluvun erotuksen. +IMSUM = KOMPLEKSI.SUM ## Palauttaa kompleksilukujen summan. +OCT2BIN = OKTBIN ## Muuntaa oktaaliluvun binaariluvuksi. +OCT2DEC = OKTDES ## Muuntaa oktaaliluvun desimaaliluvuksi. +OCT2HEX = OKTHEKSA ## Muuntaa oktaaliluvun heksadesimaaliluvuksi. + + +## +## Financial functions Rahoitusfunktiot +## +ACCRINT = KERTYNYT.KORKO ## Laskee arvopaperille kertyneen koron, kun korko kertyy säännöllisin väliajoin. +ACCRINTM = KERTYNYT.KORKO.LOPUSSA ## Laskee arvopaperille kertyneen koron, kun korko maksetaan eräpäivänä. +AMORDEGRC = AMORDEGRC ## Laskee kunkin laskentakauden poiston poistokerrointa käyttämällä. +AMORLINC = AMORLINC ## Palauttaa kunkin laskentakauden poiston. +COUPDAYBS = KORKOPÄIVÄT.ALUSTA ## Palauttaa koronmaksukauden aloituspäivän ja tilityspäivän välisen ajanjakson päivien määrän. +COUPDAYS = KORKOPÄIVÄT ## Palauttaa päivien määrän koronmaksukaudelta, johon tilityspäivä kuuluu. +COUPDAYSNC = KORKOPÄIVÄT.SEURAAVA ## Palauttaa tilityspäivän ja seuraavan koronmaksupäivän välisen ajanjakson päivien määrän. +COUPNCD = KORKOMAKSU.SEURAAVA ## Palauttaa tilityspäivän jälkeisen seuraavan koronmaksupäivän. +COUPNUM = KORKOPÄIVÄJAKSOT ## Palauttaa arvopaperin ostopäivän ja erääntymispäivän välisten koronmaksupäivien määrän. +COUPPCD = KORKOPÄIVÄ.EDELLINEN ## Palauttaa tilityspäivää edeltävän koronmaksupäivän. +CUMIPMT = MAKSETTU.KORKO ## Palauttaa kahden jakson välisenä aikana kertyneen koron. +CUMPRINC = MAKSETTU.LYHENNYS ## Palauttaa lainalle kahden jakson välisenä aikana kertyneen lyhennyksen. +DB = DB ## Palauttaa kauden kirjanpidollisen poiston amerikkalaisen DB-menetelmän (Fixed-declining balance) mukaan. +DDB = DDB ## Palauttaa kauden kirjanpidollisen poiston amerikkalaisen DDB-menetelmän (Double-Declining Balance) tai jonkin muun määrittämäsi menetelmän mukaan. +DISC = DISKONTTOKORKO ## Palauttaa arvopaperin diskonttokoron. +DOLLARDE = VALUUTTA.DES ## Muuntaa murtolukuna ilmoitetun valuuttamäärän desimaaliluvuksi. +DOLLARFR = VALUUTTA.MURTO ## Muuntaa desimaalilukuna ilmaistun valuuttamäärän murtoluvuksi. +DURATION = KESTO ## Palauttaa keston arvopaperille, jonka koronmaksu tapahtuu säännöllisesti. +EFFECT = KORKO.EFEKT ## Palauttaa todellisen vuosikoron. +FV = TULEVA.ARVO ## Palauttaa sijoituksen tulevan arvon. +FVSCHEDULE = TULEVA.ARVO.ERIKORKO ## Palauttaa pääoman tulevan arvon, kun pääomalle on kertynyt korkoa vaihtelevasti. +INTRATE = KORKO.ARVOPAPERI ## Palauttaa arvopaperin korkokannan täysin sijoitetulle arvopaperille. +IPMT = IPMT ## Laskee sijoitukselle tai lainalle tiettynä ajanjaksona kertyvän koron. +IRR = SISÄINEN.KORKO ## Laskee sisäisen korkokannan kassavirrasta muodostuvalle sarjalle. +ISPMT = ONMAKSU ## Laskee sijoituksen maksetun koron tietyllä jaksolla. +MDURATION = KESTO.MUUNN ## Palauttaa muunnetun Macauley-keston arvopaperille, jonka oletettu nimellisarvo on 100 euroa. +MIRR = MSISÄINEN ## Palauttaa sisäisen korkokannan, kun positiivisten ja negatiivisten kassavirtojen rahoituskorko on erilainen. +NOMINAL = KORKO.VUOSI ## Palauttaa vuosittaisen nimelliskoron. +NPER = NJAKSO ## Palauttaa sijoituksen jaksojen määrän. +NPV = NNA ## Palauttaa sijoituksen nykyarvon toistuvista kassavirroista muodostuvan sarjan ja diskonttokoron perusteella. +ODDFPRICE = PARITON.ENS.NIMELLISARVO ## Palauttaa arvopaperin hinnan tilanteessa, jossa ensimmäinen jakso on pariton. +ODDFYIELD = PARITON.ENS.TUOTTO ## Palauttaa arvopaperin tuoton tilanteessa, jossa ensimmäinen jakso on pariton. +ODDLPRICE = PARITON.VIIM.NIMELLISARVO ## Palauttaa arvopaperin hinnan tilanteessa, jossa viimeinen jakso on pariton. +ODDLYIELD = PARITON.VIIM.TUOTTO ## Palauttaa arvopaperin tuoton tilanteessa, jossa viimeinen jakso on pariton. +PMT = MAKSU ## Palauttaa annuiteetin kausittaisen maksuerän. +PPMT = PPMT ## Laskee sijoitukselle tai lainalle tiettynä ajanjaksona maksettavan lyhennyksen. +PRICE = HINTA ## Palauttaa hinnan 100 euron nimellisarvoa kohden arvopaperille, jonka korko maksetaan säännöllisin väliajoin. +PRICEDISC = HINTA.DISK ## Palauttaa diskontatun arvopaperin hinnan 100 euron nimellisarvoa kohden. +PRICEMAT = HINTA.LUNASTUS ## Palauttaa hinnan 100 euron nimellisarvoa kohden arvopaperille, jonka korko maksetaan erääntymispäivänä. +PV = NA ## Palauttaa sijoituksen nykyarvon. +RATE = KORKO ## Palauttaa annuiteetin kausittaisen korkokannan. +RECEIVED = SAATU.HINTA ## Palauttaa arvopaperin tuoton erääntymispäivänä kokonaan maksetulle sijoitukselle. +SLN = STP ## Palauttaa sijoituksen tasapoiston yhdeltä jaksolta. +SYD = VUOSIPOISTO ## Palauttaa sijoituksen vuosipoiston annettuna kautena amerikkalaisen SYD-menetelmän (Sum-of-Year's Digits) avulla. +TBILLEQ = OBLIG.TUOTTOPROS ## Palauttaa valtion obligaation tuoton vastaavana joukkovelkakirjan tuottona. +TBILLPRICE = OBLIG.HINTA ## Palauttaa obligaation hinnan 100 euron nimellisarvoa kohden. +TBILLYIELD = OBLIG.TUOTTO ## Palauttaa obligaation tuoton. +VDB = VDB ## Palauttaa annetun kauden tai kauden osan kirjanpidollisen poiston amerikkalaisen DB-menetelmän (Fixed-declining balance) mukaan. +XIRR = SISÄINEN.KORKO.JAKSOTON ## Palauttaa sisäisen korkokannan kassavirtojen sarjoille, jotka eivät välttämättä ole säännöllisiä. +XNPV = NNA.JAKSOTON ## Palauttaa nettonykyarvon kassavirtasarjalle, joka ei välttämättä ole kausittainen. +YIELD = TUOTTO ## Palauttaa tuoton arvopaperille, jonka korko maksetaan säännöllisin väliajoin. +YIELDDISC = TUOTTO.DISK ## Palauttaa diskontatun arvopaperin, kuten obligaation, vuosittaisen tuoton. +YIELDMAT = TUOTTO.ERÄP ## Palauttaa erääntymispäivänään korkoa tuottavan arvopaperin vuosittaisen tuoton. + + +## +## Information functions Erikoisfunktiot +## +CELL = SOLU ## Palauttaa tietoja solun muotoilusta, sijainnista ja sisällöstä. +ERROR.TYPE = VIRHEEN.LAJI ## Palauttaa virhetyyppiä vastaavan luvun. +INFO = KUVAUS ## Palauttaa tietoja nykyisestä käyttöympäristöstä. +ISBLANK = ONTYHJÄ ## Palauttaa arvon TOSI, jos arvo on tyhjä. +ISERR = ONVIRH ## Palauttaa arvon TOSI, jos arvo on mikä tahansa virhearvo paitsi arvo #PUUTTUU!. +ISERROR = ONVIRHE ## Palauttaa arvon TOSI, jos arvo on mikä tahansa virhearvo. +ISEVEN = ONPARILLINEN ## Palauttaa arvon TOSI, jos arvo on parillinen. +ISLOGICAL = ONTOTUUS ## Palauttaa arvon TOSI, jos arvo on mikä tahansa looginen arvo. +ISNA = ONPUUTTUU ## Palauttaa arvon TOSI, jos virhearvo on #PUUTTUU!. +ISNONTEXT = ONEI_TEKSTI ## Palauttaa arvon TOSI, jos arvo ei ole teksti. +ISNUMBER = ONLUKU ## Palauttaa arvon TOSI, jos arvo on luku. +ISODD = ONPARITON ## Palauttaa arvon TOSI, jos arvo on pariton. +ISREF = ONVIITT ## Palauttaa arvon TOSI, jos arvo on viittaus. +ISTEXT = ONTEKSTI ## Palauttaa arvon TOSI, jos arvo on teksti. +N = N ## Palauttaa arvon luvuksi muunnettuna. +NA = PUUTTUU ## Palauttaa virhearvon #PUUTTUU!. +TYPE = TYYPPI ## Palauttaa luvun, joka ilmaisee arvon tietotyypin. + + +## +## Logical functions Loogiset funktiot +## +AND = JA ## Palauttaa arvon TOSI, jos kaikkien argumenttien arvo on TOSI. +FALSE = EPÄTOSI ## Palauttaa totuusarvon EPÄTOSI. +IF = JOS ## Määrittää suoritettavan loogisen testin. +IFERROR = JOSVIRHE ## Palauttaa määrittämäsi arvon, jos kaavan tulos on virhe; muussa tapauksessa palauttaa kaavan tuloksen. +NOT = EI ## Kääntää argumentin loogisen arvon. +OR = TAI ## Palauttaa arvon TOSI, jos minkä tahansa argumentin arvo on TOSI. +TRUE = TOSI ## Palauttaa totuusarvon TOSI. + + +## +## Lookup and reference functions Haku- ja viitefunktiot +## +ADDRESS = OSOITE ## Palauttaa laskentataulukon soluun osoittavan viittauksen tekstinä. +AREAS = ALUEET ## Palauttaa viittauksessa olevien alueiden määrän. +CHOOSE = VALITSE.INDEKSI ## Valitsee arvon arvoluettelosta. +COLUMN = SARAKE ## Palauttaa viittauksen sarakenumeron. +COLUMNS = SARAKKEET ## Palauttaa viittauksessa olevien sarakkeiden määrän. +HLOOKUP = VHAKU ## Suorittaa haun matriisin ylimmältä riviltä ja palauttaa määritetyn solun arvon. +HYPERLINK = HYPERLINKKI ## Luo pikakuvakkeen tai tekstin, joka avaa verkkopalvelimeen, intranetiin tai Internetiin tallennetun tiedoston. +INDEX = INDEKSI ## Valitsee arvon viittauksesta tai matriisista indeksin mukaan. +INDIRECT = EPÄSUORA ## Palauttaa tekstiarvona ilmaistun viittauksen. +LOOKUP = HAKU ## Etsii arvoja vektorista tai matriisista. +MATCH = VASTINE ## Etsii arvoja viittauksesta tai matriisista. +OFFSET = SIIRTYMÄ ## Palauttaa annetun viittauksen siirtymän. +ROW = RIVI ## Palauttaa viittauksen rivinumeron. +ROWS = RIVIT ## Palauttaa viittauksessa olevien rivien määrän. +RTD = RTD ## Noutaa COM-automaatiota (automaatio: Tapa käsitellä sovelluksen objekteja toisesta sovelluksesta tai kehitystyökalusta. Automaatio, jota aiemmin kutsuttiin OLE-automaatioksi, on teollisuusstandardi ja COM-mallin (Component Object Model) ominaisuus.) tukevasta ohjelmasta reaaliaikaisia tietoja. +TRANSPOSE = TRANSPONOI ## Palauttaa matriisin käänteismatriisin. +VLOOKUP = PHAKU ## Suorittaa haun matriisin ensimmäisestä sarakkeesta ja palauttaa rivillä olevan solun arvon. + + +## +## Math and trigonometry functions Matemaattiset ja trigonometriset funktiot +## +ABS = ITSEISARVO ## Palauttaa luvun itseisarvon. +ACOS = ACOS ## Palauttaa luvun arkuskosinin. +ACOSH = ACOSH ## Palauttaa luvun käänteisen hyperbolisen kosinin. +ASIN = ASIN ## Palauttaa luvun arkussinin. +ASINH = ASINH ## Palauttaa luvun käänteisen hyperbolisen sinin. +ATAN = ATAN ## Palauttaa luvun arkustangentin. +ATAN2 = ATAN2 ## Palauttaa arkustangentin x- ja y-koordinaatin perusteella. +ATANH = ATANH ## Palauttaa luvun käänteisen hyperbolisen tangentin. +CEILING = PYÖRISTÄ.KERR.YLÖS ## Pyöristää luvun lähimpään kokonaislukuun tai tarkkuusargumentin lähimpään kerrannaiseen. +COMBIN = KOMBINAATIO ## Palauttaa mahdollisten kombinaatioiden määrän annetulle objektien määrälle. +COS = COS ## Palauttaa luvun kosinin. +COSH = COSH ## Palauttaa luvun hyperbolisen kosinin. +DEGREES = ASTEET ## Muuntaa radiaanit asteiksi. +EVEN = PARILLINEN ## Pyöristää luvun ylöspäin lähimpään parilliseen kokonaislukuun. +EXP = EKSPONENTTI ## Palauttaa e:n korotettuna annetun luvun osoittamaan potenssiin. +FACT = KERTOMA ## Palauttaa luvun kertoman. +FACTDOUBLE = KERTOMA.OSA ## Palauttaa luvun osakertoman. +FLOOR = PYÖRISTÄ.KERR.ALAS ## Pyöristää luvun alaspäin (nollaa kohti). +GCD = SUURIN.YHT.TEKIJÄ ## Palauttaa suurimman yhteisen tekijän. +INT = KOKONAISLUKU ## Pyöristää luvun alaspäin lähimpään kokonaislukuun. +LCM = PIENIN.YHT.JAETTAVA ## Palauttaa pienimmän yhteisen tekijän. +LN = LUONNLOG ## Palauttaa luvun luonnollisen logaritmin. +LOG = LOG ## Laskee luvun logaritmin käyttämällä annettua kantalukua. +LOG10 = LOG10 ## Palauttaa luvun kymmenkantaisen logaritmin. +MDETERM = MDETERM ## Palauttaa matriisin matriisideterminantin. +MINVERSE = MKÄÄNTEINEN ## Palauttaa matriisin käänteismatriisin. +MMULT = MKERRO ## Palauttaa kahden matriisin tulon. +MOD = JAKOJ ## Palauttaa jakolaskun jäännöksen. +MROUND = PYÖRISTÄ.KERR ## Palauttaa luvun pyöristettynä annetun luvun kerrannaiseen. +MULTINOMIAL = MULTINOMI ## Palauttaa lukujoukon multinomin. +ODD = PARITON ## Pyöristää luvun ylöspäin lähimpään parittomaan kokonaislukuun. +PI = PII ## Palauttaa piin arvon. +POWER = POTENSSI ## Palauttaa luvun korotettuna haluttuun potenssiin. +PRODUCT = TULO ## Kertoo annetut argumentit. +QUOTIENT = OSAMÄÄRÄ ## Palauttaa osamäärän kokonaislukuosan. +RADIANS = RADIAANIT ## Muuntaa asteet radiaaneiksi. +RAND = SATUNNAISLUKU ## Palauttaa satunnaisluvun väliltä 0–1. +RANDBETWEEN = SATUNNAISLUKU.VÄLILTÄ ## Palauttaa satunnaisluvun määritettyjen lukujen väliltä. +ROMAN = ROMAN ## Muuntaa arabialaisen numeron tekstimuotoiseksi roomalaiseksi numeroksi. +ROUND = PYÖRISTÄ ## Pyöristää luvun annettuun määrään desimaaleja. +ROUNDDOWN = PYÖRISTÄ.DES.ALAS ## Pyöristää luvun alaspäin (nollaa kohti). +ROUNDUP = PYÖRISTÄ.DES.YLÖS ## Pyöristää luvun ylöspäin (poispäin nollasta). +SERIESSUM = SARJA.SUMMA ## Palauttaa kaavaan perustuvan potenssisarjan arvon. +SIGN = ETUMERKKI ## Palauttaa luvun etumerkin. +SIN = SIN ## Palauttaa annetun kulman sinin. +SINH = SINH ## Palauttaa luvun hyperbolisen sinin. +SQRT = NELIÖJUURI ## Palauttaa positiivisen neliöjuuren. +SQRTPI = NELIÖJUURI.PII ## Palauttaa tulon (luku * pii) neliöjuuren. +SUBTOTAL = VÄLISUMMA ## Palauttaa luettelon tai tietokannan välisumman. +SUM = SUMMA ## Laskee yhteen annetut argumentit. +SUMIF = SUMMA.JOS ## Laskee ehdot täyttävien solujen summan. +SUMIFS = SUMMA.JOS.JOUKKO ## Laskee yhteen solualueen useita ehtoja vastaavat solut. +SUMPRODUCT = TULOJEN.SUMMA ## Palauttaa matriisin toisiaan vastaavien osien tulojen summan. +SUMSQ = NELIÖSUMMA ## Palauttaa argumenttien neliöiden summan. +SUMX2MY2 = NELIÖSUMMIEN.EROTUS ## Palauttaa kahden matriisin toisiaan vastaavien arvojen laskettujen neliösummien erotuksen. +SUMX2PY2 = NELIÖSUMMIEN.SUMMA ## Palauttaa kahden matriisin toisiaan vastaavien arvojen neliösummien summan. +SUMXMY2 = EROTUSTEN.NELIÖSUMMA ## Palauttaa kahden matriisin toisiaan vastaavien arvojen erotusten neliösumman. +TAN = TAN ## Palauttaa luvun tangentin. +TANH = TANH ## Palauttaa luvun hyperbolisen tangentin. +TRUNC = KATKAISE ## Katkaisee luvun kokonaisluvuksi. + + +## +## Statistical functions Tilastolliset funktiot +## +AVEDEV = KESKIPOIKKEAMA ## Palauttaa hajontojen itseisarvojen keskiarvon. +AVERAGE = KESKIARVO ## Palauttaa argumenttien keskiarvon. +AVERAGEA = KESKIARVOA ## Palauttaa argumenttien, mukaan lukien lukujen, tekstin ja loogisten arvojen, keskiarvon. +AVERAGEIF = KESKIARVO.JOS ## Palauttaa alueen niiden solujen keskiarvon (aritmeettisen keskiarvon), jotka täyttävät annetut ehdot. +AVERAGEIFS = KESKIARVO.JOS.JOUKKO ## Palauttaa niiden solujen keskiarvon (aritmeettisen keskiarvon), jotka vastaavat useita ehtoja. +BETADIST = BEETAJAKAUMA ## Palauttaa kumulatiivisen beetajakaumafunktion arvon. +BETAINV = BEETAJAKAUMA.KÄÄNT ## Palauttaa määritetyn beetajakauman käänteisen kumulatiivisen jakaumafunktion arvon. +BINOMDIST = BINOMIJAKAUMA ## Palauttaa yksittäisen termin binomijakaumatodennäköisyyden. +CHIDIST = CHIJAKAUMA ## Palauttaa yksisuuntaisen chi-neliön jakauman todennäköisyyden. +CHIINV = CHIJAKAUMA.KÄÄNT ## Palauttaa yksisuuntaisen chi-neliön jakauman todennäköisyyden käänteisarvon. +CHITEST = CHITESTI ## Palauttaa riippumattomuustestin tuloksen. +CONFIDENCE = LUOTTAMUSVÄLI ## Palauttaa luottamusvälin populaation keskiarvolle. +CORREL = KORRELAATIO ## Palauttaa kahden arvojoukon korrelaatiokertoimen. +COUNT = LASKE ## Laskee argumenttiluettelossa olevien lukujen määrän. +COUNTA = LASKE.A ## Laskee argumenttiluettelossa olevien arvojen määrän. +COUNTBLANK = LASKE.TYHJÄT ## Laskee alueella olevien tyhjien solujen määrän. +COUNTIF = LASKE.JOS ## Laskee alueella olevien sellaisten solujen määrän, joiden sisältö vastaa annettuja ehtoja. +COUNTIFS = LASKE.JOS.JOUKKO ## Laskee alueella olevien sellaisten solujen määrän, joiden sisältö vastaa useita ehtoja. +COVAR = KOVARIANSSI ## Palauttaa kovarianssin, joka on keskiarvo havaintoaineiston kunkin pisteparin poikkeamien tuloista. +CRITBINOM = BINOMIJAKAUMA.KRIT ## Palauttaa pienimmän arvon, jossa binomijakauman kertymäfunktion arvo on pienempi tai yhtä suuri kuin vertailuarvo. +DEVSQ = OIKAISTU.NELIÖSUMMA ## Palauttaa keskipoikkeamien neliösumman. +EXPONDIST = EKSPONENTIAALIJAKAUMA ## Palauttaa eksponentiaalijakauman. +FDIST = FJAKAUMA ## Palauttaa F-todennäköisyysjakauman. +FINV = FJAKAUMA.KÄÄNT ## Palauttaa F-todennäköisyysjakauman käänteisfunktion. +FISHER = FISHER ## Palauttaa Fisher-muunnoksen. +FISHERINV = FISHER.KÄÄNT ## Palauttaa käänteisen Fisher-muunnoksen. +FORECAST = ENNUSTE ## Palauttaa lineaarisen trendin arvon. +FREQUENCY = TAAJUUS ## Palauttaa frekvenssijakautuman pystysuuntaisena matriisina. +FTEST = FTESTI ## Palauttaa F-testin tuloksen. +GAMMADIST = GAMMAJAKAUMA ## Palauttaa gammajakauman. +GAMMAINV = GAMMAJAKAUMA.KÄÄNT ## Palauttaa käänteisen gammajakauman kertymäfunktion. +GAMMALN = GAMMALN ## Palauttaa gammafunktion luonnollisen logaritmin G(x). +GEOMEAN = KESKIARVO.GEOM ## Palauttaa geometrisen keskiarvon. +GROWTH = KASVU ## Palauttaa eksponentiaalisen trendin arvon. +HARMEAN = KESKIARVO.HARM ## Palauttaa harmonisen keskiarvon. +HYPGEOMDIST = HYPERGEOM.JAKAUMA ## Palauttaa hypergeometrisen jakauman. +INTERCEPT = LEIKKAUSPISTE ## Palauttaa lineaarisen regressiosuoran leikkauspisteen. +KURT = KURT ## Palauttaa tietoalueen vinous-arvon eli huipukkuuden. +LARGE = SUURI ## Palauttaa tietojoukon k:nneksi suurimman arvon. +LINEST = LINREGR ## Palauttaa lineaarisen trendin parametrit. +LOGEST = LOGREGR ## Palauttaa eksponentiaalisen trendin parametrit. +LOGINV = LOGNORM.JAKAUMA.KÄÄNT ## Palauttaa lognormeeratun jakauman käänteisfunktion. +LOGNORMDIST = LOGNORM.JAKAUMA ## Palauttaa lognormaalisen jakauman kertymäfunktion. +MAX = MAKS ## Palauttaa suurimman arvon argumenttiluettelosta. +MAXA = MAKSA ## Palauttaa argumenttien, mukaan lukien lukujen, tekstin ja loogisten arvojen, suurimman arvon. +MEDIAN = MEDIAANI ## Palauttaa annettujen lukujen mediaanin. +MIN = MIN ## Palauttaa pienimmän arvon argumenttiluettelosta. +MINA = MINA ## Palauttaa argumenttien, mukaan lukien lukujen, tekstin ja loogisten arvojen, pienimmän arvon. +MODE = MOODI ## Palauttaa tietojoukossa useimmin esiintyvän arvon. +NEGBINOMDIST = BINOMIJAKAUMA.NEG ## Palauttaa negatiivisen binomijakauman. +NORMDIST = NORM.JAKAUMA ## Palauttaa normaalijakauman kertymäfunktion. +NORMINV = NORM.JAKAUMA.KÄÄNT ## Palauttaa käänteisen normaalijakauman kertymäfunktion. +NORMSDIST = NORM.JAKAUMA.NORMIT ## Palauttaa normitetun normaalijakauman kertymäfunktion. +NORMSINV = NORM.JAKAUMA.NORMIT.KÄÄNT ## Palauttaa normitetun normaalijakauman kertymäfunktion käänteisarvon. +PEARSON = PEARSON ## Palauttaa Pearsonin tulomomenttikorrelaatiokertoimen. +PERCENTILE = PROSENTTIPISTE ## Palauttaa alueen arvojen k:nnen prosenttipisteen. +PERCENTRANK = PROSENTTIJÄRJESTYS ## Palauttaa tietojoukon arvon prosentuaalisen järjestysluvun. +PERMUT = PERMUTAATIO ## Palauttaa mahdollisten permutaatioiden määrän annetulle objektien määrälle. +POISSON = POISSON ## Palauttaa Poissonin todennäköisyysjakauman. +PROB = TODENNÄKÖISYYS ## Palauttaa todennäköisyyden sille, että arvot ovat tietyltä väliltä. +QUARTILE = NELJÄNNES ## Palauttaa tietoalueen neljänneksen. +RANK = ARVON.MUKAAN ## Palauttaa luvun paikan lukuarvoluettelossa. +RSQ = PEARSON.NELIÖ ## Palauttaa Pearsonin tulomomenttikorrelaatiokertoimen neliön. +SKEW = JAKAUMAN.VINOUS ## Palauttaa jakauman vinouden. +SLOPE = KULMAKERROIN ## Palauttaa lineaarisen regressiosuoran kulmakertoimen. +SMALL = PIENI ## Palauttaa tietojoukon k:nneksi pienimmän arvon. +STANDARDIZE = NORMITA ## Palauttaa normitetun arvon. +STDEV = KESKIHAJONTA ## Laskee populaation keskihajonnan otoksen perusteella. +STDEVA = KESKIHAJONTAA ## Laskee populaation keskihajonnan otoksen perusteella, mukaan lukien luvut, tekstin ja loogiset arvot. +STDEVP = KESKIHAJONTAP ## Laskee normaalijakautuman koko populaation perusteella. +STDEVPA = KESKIHAJONTAPA ## Laskee populaation keskihajonnan koko populaation perusteella, mukaan lukien luvut, tekstin ja totuusarvot. +STEYX = KESKIVIRHE ## Palauttaa regression kutakin x-arvoa vastaavan ennustetun y-arvon keskivirheen. +TDIST = TJAKAUMA ## Palauttaa t-jakautuman. +TINV = TJAKAUMA.KÄÄNT ## Palauttaa käänteisen t-jakauman. +TREND = SUUNTAUS ## Palauttaa lineaarisen trendin arvoja. +TRIMMEAN = KESKIARVO.TASATTU ## Palauttaa tietojoukon tasatun keskiarvon. +TTEST = TTESTI ## Palauttaa t-testiin liittyvän todennäköisyyden. +VAR = VAR ## Arvioi populaation varianssia otoksen perusteella. +VARA = VARA ## Laskee populaation varianssin otoksen perusteella, mukaan lukien luvut, tekstin ja loogiset arvot. +VARP = VARP ## Laskee varianssin koko populaation perusteella. +VARPA = VARPA ## Laskee populaation varianssin koko populaation perusteella, mukaan lukien luvut, tekstin ja totuusarvot. +WEIBULL = WEIBULL ## Palauttaa Weibullin jakauman. +ZTEST = ZTESTI ## Palauttaa z-testin yksisuuntaisen todennäköisyysarvon. + + +## +## Text functions Tekstifunktiot +## +ASC = ASC ## Muuntaa merkkijonossa olevat englanninkieliset DBCS- tai katakana-merkit SBCS-merkeiksi. +BAHTTEXT = BAHTTEKSTI ## Muuntaa luvun tekstiksi ß (baht) -valuuttamuotoa käyttämällä. +CHAR = MERKKI ## Palauttaa koodin lukua vastaavan merkin. +CLEAN = SIIVOA ## Poistaa tekstistä kaikki tulostumattomat merkit. +CODE = KOODI ## Palauttaa tekstimerkkijonon ensimmäisen merkin numerokoodin. +CONCATENATE = KETJUTA ## Yhdistää useat merkkijonot yhdeksi merkkijonoksi. +DOLLAR = VALUUTTA ## Muuntaa luvun tekstiksi $ (dollari) -valuuttamuotoa käyttämällä. +EXACT = VERTAA ## Tarkistaa, ovatko kaksi tekstiarvoa samanlaiset. +FIND = ETSI ## Etsii tekstiarvon toisen tekstin sisältä (tunnistaa isot ja pienet kirjaimet). +FINDB = ETSIB ## Etsii tekstiarvon toisen tekstin sisältä (tunnistaa isot ja pienet kirjaimet). +FIXED = KIINTEÄ ## Muotoilee luvun tekstiksi, jossa on kiinteä määrä desimaaleja. +JIS = JIS ## Muuntaa merkkijonossa olevat englanninkieliset SBCS- tai katakana-merkit DBCS-merkeiksi. +LEFT = VASEN ## Palauttaa tekstiarvon vasemmanpuoliset merkit. +LEFTB = VASENB ## Palauttaa tekstiarvon vasemmanpuoliset merkit. +LEN = PITUUS ## Palauttaa tekstimerkkijonon merkkien määrän. +LENB = PITUUSB ## Palauttaa tekstimerkkijonon merkkien määrän. +LOWER = PIENET ## Muuntaa tekstin pieniksi kirjaimiksi. +MID = POIMI.TEKSTI ## Palauttaa määritetyn määrän merkkejä merkkijonosta alkaen annetusta kohdasta. +MIDB = POIMI.TEKSTIB ## Palauttaa määritetyn määrän merkkejä merkkijonosta alkaen annetusta kohdasta. +PHONETIC = FONEETTINEN ## Hakee foneettiset (furigana) merkit merkkijonosta. +PROPER = ERISNIMI ## Muuttaa merkkijonon kunkin sanan ensimmäisen kirjaimen isoksi. +REPLACE = KORVAA ## Korvaa tekstissä olevat merkit. +REPLACEB = KORVAAB ## Korvaa tekstissä olevat merkit. +REPT = TOISTA ## Toistaa tekstin annetun määrän kertoja. +RIGHT = OIKEA ## Palauttaa tekstiarvon oikeanpuoliset merkit. +RIGHTB = OIKEAB ## Palauttaa tekstiarvon oikeanpuoliset merkit. +SEARCH = KÄY.LÄPI ## Etsii tekstiarvon toisen tekstin sisältä (isot ja pienet kirjaimet tulkitaan samoiksi merkeiksi). +SEARCHB = KÄY.LÄPIB ## Etsii tekstiarvon toisen tekstin sisältä (isot ja pienet kirjaimet tulkitaan samoiksi merkeiksi). +SUBSTITUTE = VAIHDA ## Korvaa merkkijonossa olevan tekstin toisella. +T = T ## Muuntaa argumentit tekstiksi. +TEXT = TEKSTI ## Muotoilee luvun ja muuntaa sen tekstiksi. +TRIM = POISTA.VÄLIT ## Poistaa välilyönnit tekstistä. +UPPER = ISOT ## Muuntaa tekstin isoiksi kirjaimiksi. +VALUE = ARVO ## Muuntaa tekstiargumentin luvuksi. diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fr/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fr/_notes/dwsync.xml new file mode 100644 index 0000000..b3914dd --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fr/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461864866274" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461867739359" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fr/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fr/config new file mode 100644 index 0000000..1f5db88 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fr/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = € + + +## +## Excel Error Codes (For future use) +## +NULL = #NUL! +DIV0 = #DIV/0! +VALUE = #VALEUR! +REF = #REF! +NAME = #NOM? +NUM = #NOMBRE! +NA = #N/A diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fr/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fr/functions new file mode 100644 index 0000000..03b80e5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/fr/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Fonctions de complément et d’automatisation +## +GETPIVOTDATA = LIREDONNEESTABCROISDYNAMIQUE ## Renvoie les données stockées dans un rapport de tableau croisé dynamique. + + +## +## Cube functions Fonctions Cube +## +CUBEKPIMEMBER = MEMBREKPICUBE ## Renvoie un nom, une propriété et une mesure d’indicateur de performance clé et affiche le nom et la propriété dans la cellule. Un indicateur de performance clé est une mesure quantifiable, telle que la marge bénéficiaire brute mensuelle ou la rotation trimestrielle du personnel, utilisée pour évaluer les performances d’une entreprise. +CUBEMEMBER = MEMBRECUBE ## Renvoie un membre ou un uplet dans une hiérarchie de cubes. Utilisez cette fonction pour valider l’existence du membre ou de l’uplet dans le cube. +CUBEMEMBERPROPERTY = PROPRIETEMEMBRECUBE ## Renvoie la valeur d’une propriété de membre du cube. Utilisez cette fonction pour valider l’existence d’un nom de membre dans le cube et pour renvoyer la propriété spécifiée pour ce membre. +CUBERANKEDMEMBER = RANGMEMBRECUBE ## Renvoie le nième membre ou le membre placé à un certain rang dans un ensemble. Utilisez cette fonction pour renvoyer un ou plusieurs éléments d’un ensemble, tels que les meilleurs vendeurs ou les 10 meilleurs étudiants. +CUBESET = JEUCUBE ## Définit un ensemble calculé de membres ou d’uplets en envoyant une expression définie au cube sur le serveur qui crée l’ensemble et le renvoie à Microsoft Office Excel. +CUBESETCOUNT = NBJEUCUBE ## Renvoie le nombre d’éléments dans un jeu. +CUBEVALUE = VALEURCUBE ## Renvoie une valeur d’agrégation issue d’un cube. + + +## +## Database functions Fonctions de base de données +## +DAVERAGE = BDMOYENNE ## Renvoie la moyenne des entrées de base de données sélectionnées. +DCOUNT = BCOMPTE ## Compte le nombre de cellules d’une base de données qui contiennent des nombres. +DCOUNTA = BDNBVAL ## Compte les cellules non vides d’une base de données. +DGET = BDLIRE ## Extrait d’une base de données un enregistrement unique répondant aux critères spécifiés. +DMAX = BDMAX ## Renvoie la valeur maximale des entrées de base de données sélectionnées. +DMIN = BDMIN ## Renvoie la valeur minimale des entrées de base de données sélectionnées. +DPRODUCT = BDPRODUIT ## Multiplie les valeurs d’un champ particulier des enregistrements d’une base de données, qui répondent aux critères spécifiés. +DSTDEV = BDECARTYPE ## Calcule l’écart type pour un échantillon d’entrées de base de données sélectionnées. +DSTDEVP = BDECARTYPEP ## Calcule l’écart type pour l’ensemble d’une population d’entrées de base de données sélectionnées. +DSUM = BDSOMME ## Ajoute les nombres dans la colonne de champ des enregistrements de la base de données, qui répondent aux critères. +DVAR = BDVAR ## Calcule la variance pour un échantillon d’entrées de base de données sélectionnées. +DVARP = BDVARP ## Calcule la variance pour l’ensemble d’une population d’entrées de base de données sélectionnées. + + +## +## Date and time functions Fonctions de date et d’heure +## +DATE = DATE ## Renvoie le numéro de série d’une date précise. +DATEVALUE = DATEVAL ## Convertit une date représentée sous forme de texte en numéro de série. +DAY = JOUR ## Convertit un numéro de série en jour du mois. +DAYS360 = JOURS360 ## Calcule le nombre de jours qui séparent deux dates sur la base d’une année de 360 jours. +EDATE = MOIS.DECALER ## Renvoie le numéro séquentiel de la date qui représente une date spécifiée (l’argument date_départ), corrigée en plus ou en moins du nombre de mois indiqué. +EOMONTH = FIN.MOIS ## Renvoie le numéro séquentiel de la date du dernier jour du mois précédant ou suivant la date_départ du nombre de mois indiqué. +HOUR = HEURE ## Convertit un numéro de série en heure. +MINUTE = MINUTE ## Convertit un numéro de série en minute. +MONTH = MOIS ## Convertit un numéro de série en mois. +NETWORKDAYS = NB.JOURS.OUVRES ## Renvoie le nombre de jours ouvrés entiers compris entre deux dates. +NOW = MAINTENANT ## Renvoie le numéro de série de la date et de l’heure du jour. +SECOND = SECONDE ## Convertit un numéro de série en seconde. +TIME = TEMPS ## Renvoie le numéro de série d’une heure précise. +TIMEVALUE = TEMPSVAL ## Convertit une date représentée sous forme de texte en numéro de série. +TODAY = AUJOURDHUI ## Renvoie le numéro de série de la date du jour. +WEEKDAY = JOURSEM ## Convertit un numéro de série en jour de la semaine. +WEEKNUM = NO.SEMAINE ## Convertit un numéro de série en un numéro représentant l’ordre de la semaine dans l’année. +WORKDAY = SERIE.JOUR.OUVRE ## Renvoie le numéro de série de la date avant ou après le nombre de jours ouvrés spécifiés. +YEAR = ANNEE ## Convertit un numéro de série en année. +YEARFRAC = FRACTION.ANNEE ## Renvoie la fraction de l’année représentant le nombre de jours entre la date de début et la date de fin. + + +## +## Engineering functions Fonctions d’ingénierie +## +BESSELI = BESSELI ## Renvoie la fonction Bessel modifiée In(x). +BESSELJ = BESSELJ ## Renvoie la fonction Bessel Jn(x). +BESSELK = BESSELK ## Renvoie la fonction Bessel modifiée Kn(x). +BESSELY = BESSELY ## Renvoie la fonction Bessel Yn(x). +BIN2DEC = BINDEC ## Convertit un nombre binaire en nombre décimal. +BIN2HEX = BINHEX ## Convertit un nombre binaire en nombre hexadécimal. +BIN2OCT = BINOCT ## Convertit un nombre binaire en nombre octal. +COMPLEX = COMPLEXE ## Convertit des coefficients réel et imaginaire en un nombre complexe. +CONVERT = CONVERT ## Convertit un nombre d’une unité de mesure à une autre. +DEC2BIN = DECBIN ## Convertit un nombre décimal en nombre binaire. +DEC2HEX = DECHEX ## Convertit un nombre décimal en nombre hexadécimal. +DEC2OCT = DECOCT ## Convertit un nombre décimal en nombre octal. +DELTA = DELTA ## Teste l’égalité de deux nombres. +ERF = ERF ## Renvoie la valeur de la fonction d’erreur. +ERFC = ERFC ## Renvoie la valeur de la fonction d’erreur complémentaire. +GESTEP = SUP.SEUIL ## Teste si un nombre est supérieur à une valeur de seuil. +HEX2BIN = HEXBIN ## Convertit un nombre hexadécimal en nombre binaire. +HEX2DEC = HEXDEC ## Convertit un nombre hexadécimal en nombre décimal. +HEX2OCT = HEXOCT ## Convertit un nombre hexadécimal en nombre octal. +IMABS = COMPLEXE.MODULE ## Renvoie la valeur absolue (module) d’un nombre complexe. +IMAGINARY = COMPLEXE.IMAGINAIRE ## Renvoie le coefficient imaginaire d’un nombre complexe. +IMARGUMENT = COMPLEXE.ARGUMENT ## Renvoie l’argument thêta, un angle exprimé en radians. +IMCONJUGATE = COMPLEXE.CONJUGUE ## Renvoie le nombre complexe conjugué d’un nombre complexe. +IMCOS = IMCOS ## Renvoie le cosinus d’un nombre complexe. +IMDIV = COMPLEXE.DIV ## Renvoie le quotient de deux nombres complexes. +IMEXP = COMPLEXE.EXP ## Renvoie la fonction exponentielle d’un nombre complexe. +IMLN = COMPLEXE.LN ## Renvoie le logarithme népérien d’un nombre complexe. +IMLOG10 = COMPLEXE.LOG10 ## Calcule le logarithme en base 10 d’un nombre complexe. +IMLOG2 = COMPLEXE.LOG2 ## Calcule le logarithme en base 2 d’un nombre complexe. +IMPOWER = COMPLEXE.PUISSANCE ## Renvoie un nombre complexe élevé à une puissance entière. +IMPRODUCT = COMPLEXE.PRODUIT ## Renvoie le produit de plusieurs nombres complexes. +IMREAL = COMPLEXE.REEL ## Renvoie le coefficient réel d’un nombre complexe. +IMSIN = COMPLEXE.SIN ## Renvoie le sinus d’un nombre complexe. +IMSQRT = COMPLEXE.RACINE ## Renvoie la racine carrée d’un nombre complexe. +IMSUB = COMPLEXE.DIFFERENCE ## Renvoie la différence entre deux nombres complexes. +IMSUM = COMPLEXE.SOMME ## Renvoie la somme de plusieurs nombres complexes. +OCT2BIN = OCTBIN ## Convertit un nombre octal en nombre binaire. +OCT2DEC = OCTDEC ## Convertit un nombre octal en nombre décimal. +OCT2HEX = OCTHEX ## Convertit un nombre octal en nombre hexadécimal. + + +## +## Financial functions Fonctions financières +## +ACCRINT = INTERET.ACC ## Renvoie l’intérêt couru non échu d’un titre dont l’intérêt est perçu périodiquement. +ACCRINTM = INTERET.ACC.MAT ## Renvoie l’intérêt couru non échu d’un titre dont l’intérêt est perçu à l’échéance. +AMORDEGRC = AMORDEGRC ## Renvoie l’amortissement correspondant à chaque période comptable en utilisant un coefficient d’amortissement. +AMORLINC = AMORLINC ## Renvoie l’amortissement d’un bien à la fin d’une période fiscale donnée. +COUPDAYBS = NB.JOURS.COUPON.PREC ## Renvoie le nombre de jours entre le début de la période de coupon et la date de liquidation. +COUPDAYS = NB.JOURS.COUPONS ## Renvoie le nombre de jours pour la période du coupon contenant la date de liquidation. +COUPDAYSNC = NB.JOURS.COUPON.SUIV ## Renvoie le nombre de jours entre la date de liquidation et la date du coupon suivant la date de liquidation. +COUPNCD = DATE.COUPON.SUIV ## Renvoie la première date de coupon ultérieure à la date de règlement. +COUPNUM = NB.COUPONS ## Renvoie le nombre de coupons dus entre la date de règlement et la date d’échéance. +COUPPCD = DATE.COUPON.PREC ## Renvoie la date de coupon précédant la date de règlement. +CUMIPMT = CUMUL.INTER ## Renvoie l’intérêt cumulé payé sur un emprunt entre deux périodes. +CUMPRINC = CUMUL.PRINCPER ## Renvoie le montant cumulé des remboursements du capital d’un emprunt effectués entre deux périodes. +DB = DB ## Renvoie l’amortissement d’un bien pour une période spécifiée en utilisant la méthode de l’amortissement dégressif à taux fixe. +DDB = DDB ## Renvoie l’amortissement d’un bien pour toute période spécifiée, en utilisant la méthode de l’amortissement dégressif à taux double ou selon un coefficient à spécifier. +DISC = TAUX.ESCOMPTE ## Calcule le taux d’escompte d’une transaction. +DOLLARDE = PRIX.DEC ## Convertit un prix en euros, exprimé sous forme de fraction, en un prix en euros exprimé sous forme de nombre décimal. +DOLLARFR = PRIX.FRAC ## Convertit un prix en euros, exprimé sous forme de nombre décimal, en un prix en euros exprimé sous forme de fraction. +DURATION = DUREE ## Renvoie la durée, en années, d’un titre dont l’intérêt est perçu périodiquement. +EFFECT = TAUX.EFFECTIF ## Renvoie le taux d’intérêt annuel effectif. +FV = VC ## Renvoie la valeur future d’un investissement. +FVSCHEDULE = VC.PAIEMENTS ## Calcule la valeur future d’un investissement en appliquant une série de taux d’intérêt composites. +INTRATE = TAUX.INTERET ## Affiche le taux d’intérêt d’un titre totalement investi. +IPMT = INTPER ## Calcule le montant des intérêts d’un investissement pour une période donnée. +IRR = TRI ## Calcule le taux de rentabilité interne d’un investissement pour une succession de trésoreries. +ISPMT = ISPMT ## Calcule le montant des intérêts d’un investissement pour une période donnée. +MDURATION = DUREE.MODIFIEE ## Renvoie la durée de Macauley modifiée pour un titre ayant une valeur nominale hypothétique de 100_euros. +MIRR = TRIM ## Calcule le taux de rentabilité interne lorsque les paiements positifs et négatifs sont financés à des taux différents. +NOMINAL = TAUX.NOMINAL ## Calcule le taux d’intérêt nominal annuel. +NPER = NPM ## Renvoie le nombre de versements nécessaires pour rembourser un emprunt. +NPV = VAN ## Calcule la valeur actuelle nette d’un investissement basé sur une série de décaissements et un taux d’escompte. +ODDFPRICE = PRIX.PCOUPON.IRREG ## Renvoie le prix par tranche de valeur nominale de 100 euros d’un titre dont la première période de coupon est irrégulière. +ODDFYIELD = REND.PCOUPON.IRREG ## Renvoie le taux de rendement d’un titre dont la première période de coupon est irrégulière. +ODDLPRICE = PRIX.DCOUPON.IRREG ## Renvoie le prix par tranche de valeur nominale de 100 euros d’un titre dont la première période de coupon est irrégulière. +ODDLYIELD = REND.DCOUPON.IRREG ## Renvoie le taux de rendement d’un titre dont la dernière période de coupon est irrégulière. +PMT = VPM ## Calcule le paiement périodique d’un investissement donné. +PPMT = PRINCPER ## Calcule, pour une période donnée, la part de remboursement du principal d’un investissement. +PRICE = PRIX.TITRE ## Renvoie le prix d’un titre rapportant des intérêts périodiques, pour une valeur nominale de 100 euros. +PRICEDISC = VALEUR.ENCAISSEMENT ## Renvoie la valeur d’encaissement d’un escompte commercial, pour une valeur nominale de 100 euros. +PRICEMAT = PRIX.TITRE.ECHEANCE ## Renvoie le prix d’un titre dont la valeur nominale est 100 euros et qui rapporte des intérêts à l’échéance. +PV = PV ## Calcule la valeur actuelle d’un investissement. +RATE = TAUX ## Calcule le taux d’intérêt par période pour une annuité. +RECEIVED = VALEUR.NOMINALE ## Renvoie la valeur nominale à échéance d’un effet de commerce. +SLN = AMORLIN ## Calcule l’amortissement linéaire d’un bien pour une période donnée. +SYD = SYD ## Calcule l’amortissement d’un bien pour une période donnée sur la base de la méthode américaine Sum-of-Years Digits (amortissement dégressif à taux décroissant appliqué à une valeur constante). +TBILLEQ = TAUX.ESCOMPTE.R ## Renvoie le taux d’escompte rationnel d’un bon du Trésor. +TBILLPRICE = PRIX.BON.TRESOR ## Renvoie le prix d’un bon du Trésor d’une valeur nominale de 100 euros. +TBILLYIELD = RENDEMENT.BON.TRESOR ## Calcule le taux de rendement d’un bon du Trésor. +VDB = VDB ## Renvoie l’amortissement d’un bien pour une période spécifiée ou partielle en utilisant une méthode de l’amortissement dégressif à taux fixe. +XIRR = TRI.PAIEMENTS ## Calcule le taux de rentabilité interne d’un ensemble de paiements non périodiques. +XNPV = VAN.PAIEMENTS ## Renvoie la valeur actuelle nette d’un ensemble de paiements non périodiques. +YIELD = RENDEMENT.TITRE ## Calcule le rendement d’un titre rapportant des intérêts périodiquement. +YIELDDISC = RENDEMENT.SIMPLE ## Calcule le taux de rendement d’un emprunt à intérêt simple (par exemple, un bon du Trésor). +YIELDMAT = RENDEMENT.TITRE.ECHEANCE ## Renvoie le rendement annuel d’un titre qui rapporte des intérêts à l’échéance. + + +## +## Information functions Fonctions d’information +## +CELL = CELLULE ## Renvoie des informations sur la mise en forme, l’emplacement et le contenu d’une cellule. +ERROR.TYPE = TYPE.ERREUR ## Renvoie un nombre correspondant à un type d’erreur. +INFO = INFORMATIONS ## Renvoie des informations sur l’environnement d’exploitation actuel. +ISBLANK = ESTVIDE ## Renvoie VRAI si l’argument valeur est vide. +ISERR = ESTERR ## Renvoie VRAI si l’argument valeur fait référence à une valeur d’erreur, sauf #N/A. +ISERROR = ESTERREUR ## Renvoie VRAI si l’argument valeur fait référence à une valeur d’erreur. +ISEVEN = EST.PAIR ## Renvoie VRAI si le chiffre est pair. +ISLOGICAL = ESTLOGIQUE ## Renvoie VRAI si l’argument valeur fait référence à une valeur logique. +ISNA = ESTNA ## Renvoie VRAI si l’argument valeur fait référence à la valeur d’erreur #N/A. +ISNONTEXT = ESTNONTEXTE ## Renvoie VRAI si l’argument valeur ne se présente pas sous forme de texte. +ISNUMBER = ESTNUM ## Renvoie VRAI si l’argument valeur représente un nombre. +ISODD = EST.IMPAIR ## Renvoie VRAI si le chiffre est impair. +ISREF = ESTREF ## Renvoie VRAI si l’argument valeur est une référence. +ISTEXT = ESTTEXTE ## Renvoie VRAI si l’argument valeur se présente sous forme de texte. +N = N ## Renvoie une valeur convertie en nombre. +NA = NA ## Renvoie la valeur d’erreur #N/A. +TYPE = TYPE ## Renvoie un nombre indiquant le type de données d’une valeur. + + +## +## Logical functions Fonctions logiques +## +AND = ET ## Renvoie VRAI si tous ses arguments sont VRAI. +FALSE = FAUX ## Renvoie la valeur logique FAUX. +IF = SI ## Spécifie un test logique à effectuer. +IFERROR = SIERREUR ## Renvoie une valeur que vous spécifiez si une formule génère une erreur ; sinon, elle renvoie le résultat de la formule. +NOT = NON ## Inverse la logique de cet argument. +OR = OU ## Renvoie VRAI si un des arguments est VRAI. +TRUE = VRAI ## Renvoie la valeur logique VRAI. + + +## +## Lookup and reference functions Fonctions de recherche et de référence +## +ADDRESS = ADRESSE ## Renvoie une référence sous forme de texte à une seule cellule d’une feuille de calcul. +AREAS = ZONES ## Renvoie le nombre de zones dans une référence. +CHOOSE = CHOISIR ## Choisit une valeur dans une liste. +COLUMN = COLONNE ## Renvoie le numéro de colonne d’une référence. +COLUMNS = COLONNES ## Renvoie le nombre de colonnes dans une référence. +HLOOKUP = RECHERCHEH ## Effectue une recherche dans la première ligne d’une matrice et renvoie la valeur de la cellule indiquée. +HYPERLINK = LIEN_HYPERTEXTE ## Crée un raccourci ou un renvoi qui ouvre un document stocké sur un serveur réseau, sur un réseau Intranet ou sur Internet. +INDEX = INDEX ## Utilise un index pour choisir une valeur provenant d’une référence ou d’une matrice. +INDIRECT = INDIRECT ## Renvoie une référence indiquée par une valeur de texte. +LOOKUP = RECHERCHE ## Recherche des valeurs dans un vecteur ou une matrice. +MATCH = EQUIV ## Recherche des valeurs dans une référence ou une matrice. +OFFSET = DECALER ## Renvoie une référence décalée par rapport à une référence donnée. +ROW = LIGNE ## Renvoie le numéro de ligne d’une référence. +ROWS = LIGNES ## Renvoie le nombre de lignes dans une référence. +RTD = RTD ## Extrait les données en temps réel à partir d’un programme prenant en charge l’automation COM (Automation : utilisation des objets d'une application à partir d'une autre application ou d'un autre outil de développement. Autrefois appelée OLE Automation, Automation est une norme industrielle et une fonctionnalité du modèle d'objet COM (Component Object Model).). +TRANSPOSE = TRANSPOSE ## Renvoie la transposition d’une matrice. +VLOOKUP = RECHERCHEV ## Effectue une recherche dans la première colonne d’une matrice et se déplace sur la ligne pour renvoyer la valeur d’une cellule. + + +## +## Math and trigonometry functions Fonctions mathématiques et trigonométriques +## +ABS = ABS ## Renvoie la valeur absolue d’un nombre. +ACOS = ACOS ## Renvoie l’arccosinus d’un nombre. +ACOSH = ACOSH ## Renvoie le cosinus hyperbolique inverse d’un nombre. +ASIN = ASIN ## Renvoie l’arcsinus d’un nombre. +ASINH = ASINH ## Renvoie le sinus hyperbolique inverse d’un nombre. +ATAN = ATAN ## Renvoie l’arctangente d’un nombre. +ATAN2 = ATAN2 ## Renvoie l’arctangente des coordonnées x et y. +ATANH = ATANH ## Renvoie la tangente hyperbolique inverse d’un nombre. +CEILING = PLAFOND ## Arrondit un nombre au nombre entier le plus proche ou au multiple le plus proche de l’argument précision en s’éloignant de zéro. +COMBIN = COMBIN ## Renvoie le nombre de combinaisons que l’on peut former avec un nombre donné d’objets. +COS = COS ## Renvoie le cosinus d’un nombre. +COSH = COSH ## Renvoie le cosinus hyperbolique d’un nombre. +DEGREES = DEGRES ## Convertit des radians en degrés. +EVEN = PAIR ## Arrondit un nombre au nombre entier pair le plus proche en s’éloignant de zéro. +EXP = EXP ## Renvoie e élevé à la puissance d’un nombre donné. +FACT = FACT ## Renvoie la factorielle d’un nombre. +FACTDOUBLE = FACTDOUBLE ## Renvoie la factorielle double d’un nombre. +FLOOR = PLANCHER ## Arrondit un nombre en tendant vers 0 (zéro). +GCD = PGCD ## Renvoie le plus grand commun diviseur. +INT = ENT ## Arrondit un nombre à l’entier immédiatement inférieur. +LCM = PPCM ## Renvoie le plus petit commun multiple. +LN = LN ## Renvoie le logarithme népérien d’un nombre. +LOG = LOG ## Renvoie le logarithme d’un nombre dans la base spécifiée. +LOG10 = LOG10 ## Calcule le logarithme en base 10 d’un nombre. +MDETERM = DETERMAT ## Renvoie le déterminant d’une matrice. +MINVERSE = INVERSEMAT ## Renvoie la matrice inverse d’une matrice. +MMULT = PRODUITMAT ## Renvoie le produit de deux matrices. +MOD = MOD ## Renvoie le reste d’une division. +MROUND = ARRONDI.AU.MULTIPLE ## Donne l’arrondi d’un nombre au multiple spécifié. +MULTINOMIAL = MULTINOMIALE ## Calcule la multinomiale d’un ensemble de nombres. +ODD = IMPAIR ## Renvoie le nombre, arrondi à la valeur du nombre entier impair le plus proche en s’éloignant de zéro. +PI = PI ## Renvoie la valeur de pi. +POWER = PUISSANCE ## Renvoie la valeur du nombre élevé à une puissance. +PRODUCT = PRODUIT ## Multiplie ses arguments. +QUOTIENT = QUOTIENT ## Renvoie la partie entière du résultat d’une division. +RADIANS = RADIANS ## Convertit des degrés en radians. +RAND = ALEA ## Renvoie un nombre aléatoire compris entre 0 et 1. +RANDBETWEEN = ALEA.ENTRE.BORNES ## Renvoie un nombre aléatoire entre les nombres que vous spécifiez. +ROMAN = ROMAIN ## Convertit des chiffres arabes en chiffres romains, sous forme de texte. +ROUND = ARRONDI ## Arrondit un nombre au nombre de chiffres indiqué. +ROUNDDOWN = ARRONDI.INF ## Arrondit un nombre en tendant vers 0 (zéro). +ROUNDUP = ARRONDI.SUP ## Arrondit un nombre à l’entier supérieur, en s’éloignant de zéro. +SERIESSUM = SOMME.SERIES ## Renvoie la somme d’une série géométrique en s’appuyant sur la formule suivante : +SIGN = SIGNE ## Renvoie le signe d’un nombre. +SIN = SIN ## Renvoie le sinus d’un angle donné. +SINH = SINH ## Renvoie le sinus hyperbolique d’un nombre. +SQRT = RACINE ## Renvoie la racine carrée d’un nombre. +SQRTPI = RACINE.PI ## Renvoie la racine carrée de (nombre * pi). +SUBTOTAL = SOUS.TOTAL ## Renvoie un sous-total dans une liste ou une base de données. +SUM = SOMME ## Calcule la somme de ses arguments. +SUMIF = SOMME.SI ## Additionne les cellules spécifiées si elles répondent à un critère donné. +SUMIFS = SOMME.SI.ENS ## Ajoute les cellules d’une plage qui répondent à plusieurs critères. +SUMPRODUCT = SOMMEPROD ## Multiplie les valeurs correspondantes des matrices spécifiées et calcule la somme de ces produits. +SUMSQ = SOMME.CARRES ## Renvoie la somme des carrés des arguments. +SUMX2MY2 = SOMME.X2MY2 ## Renvoie la somme de la différence des carrés des valeurs correspondantes de deux matrices. +SUMX2PY2 = SOMME.X2PY2 ## Renvoie la somme de la somme des carrés des valeurs correspondantes de deux matrices. +SUMXMY2 = SOMME.XMY2 ## Renvoie la somme des carrés des différences entre les valeurs correspondantes de deux matrices. +TAN = TAN ## Renvoie la tangente d’un nombre. +TANH = TANH ## Renvoie la tangente hyperbolique d’un nombre. +TRUNC = TRONQUE ## Renvoie la partie entière d’un nombre. + + +## +## Statistical functions Fonctions statistiques +## +AVEDEV = ECART.MOYEN ## Renvoie la moyenne des écarts absolus observés dans la moyenne des points de données. +AVERAGE = MOYENNE ## Renvoie la moyenne de ses arguments. +AVERAGEA = AVERAGEA ## Renvoie la moyenne de ses arguments, nombres, texte et valeurs logiques inclus. +AVERAGEIF = MOYENNE.SI ## Renvoie la moyenne (arithmétique) de toutes les cellules d’une plage qui répondent à des critères donnés. +AVERAGEIFS = MOYENNE.SI.ENS ## Renvoie la moyenne (arithmétique) de toutes les cellules qui répondent à plusieurs critères. +BETADIST = LOI.BETA ## Renvoie la fonction de distribution cumulée. +BETAINV = BETA.INVERSE ## Renvoie l’inverse de la fonction de distribution cumulée pour une distribution bêta spécifiée. +BINOMDIST = LOI.BINOMIALE ## Renvoie la probabilité d’une variable aléatoire discrète suivant la loi binomiale. +CHIDIST = LOI.KHIDEUX ## Renvoie la probabilité unilatérale de la distribution khi-deux. +CHIINV = KHIDEUX.INVERSE ## Renvoie l’inverse de la probabilité unilatérale de la distribution khi-deux. +CHITEST = TEST.KHIDEUX ## Renvoie le test d’indépendance. +CONFIDENCE = INTERVALLE.CONFIANCE ## Renvoie l’intervalle de confiance pour une moyenne de population. +CORREL = COEFFICIENT.CORRELATION ## Renvoie le coefficient de corrélation entre deux séries de données. +COUNT = NB ## Détermine les nombres compris dans la liste des arguments. +COUNTA = NBVAL ## Détermine le nombre de valeurs comprises dans la liste des arguments. +COUNTBLANK = NB.VIDE ## Compte le nombre de cellules vides dans une plage. +COUNTIF = NB.SI ## Compte le nombre de cellules qui répondent à un critère donné dans une plage. +COUNTIFS = NB.SI.ENS ## Compte le nombre de cellules à l’intérieur d’une plage qui répondent à plusieurs critères. +COVAR = COVARIANCE ## Renvoie la covariance, moyenne des produits des écarts pour chaque série d’observations. +CRITBINOM = CRITERE.LOI.BINOMIALE ## Renvoie la plus petite valeur pour laquelle la distribution binomiale cumulée est inférieure ou égale à une valeur de critère. +DEVSQ = SOMME.CARRES.ECARTS ## Renvoie la somme des carrés des écarts. +EXPONDIST = LOI.EXPONENTIELLE ## Renvoie la distribution exponentielle. +FDIST = LOI.F ## Renvoie la distribution de probabilité F. +FINV = INVERSE.LOI.F ## Renvoie l’inverse de la distribution de probabilité F. +FISHER = FISHER ## Renvoie la transformation de Fisher. +FISHERINV = FISHER.INVERSE ## Renvoie l’inverse de la transformation de Fisher. +FORECAST = PREVISION ## Calcule une valeur par rapport à une tendance linéaire. +FREQUENCY = FREQUENCE ## Calcule la fréquence d’apparition des valeurs dans une plage de valeurs, puis renvoie des nombres sous forme de matrice verticale. +FTEST = TEST.F ## Renvoie le résultat d’un test F. +GAMMADIST = LOI.GAMMA ## Renvoie la probabilité d’une variable aléatoire suivant une loi Gamma. +GAMMAINV = LOI.GAMMA.INVERSE ## Renvoie, pour une probabilité donnée, la valeur d’une variable aléatoire suivant une loi Gamma. +GAMMALN = LNGAMMA ## Renvoie le logarithme népérien de la fonction Gamma, G(x) +GEOMEAN = MOYENNE.GEOMETRIQUE ## Renvoie la moyenne géométrique. +GROWTH = CROISSANCE ## Calcule des valeurs par rapport à une tendance exponentielle. +HARMEAN = MOYENNE.HARMONIQUE ## Renvoie la moyenne harmonique. +HYPGEOMDIST = LOI.HYPERGEOMETRIQUE ## Renvoie la probabilité d’une variable aléatoire discrète suivant une loi hypergéométrique. +INTERCEPT = ORDONNEE.ORIGINE ## Renvoie l’ordonnée à l’origine d’une droite de régression linéaire. +KURT = KURTOSIS ## Renvoie le kurtosis d’une série de données. +LARGE = GRANDE.VALEUR ## Renvoie la k-ième plus grande valeur d’une série de données. +LINEST = DROITEREG ## Renvoie les paramètres d’une tendance linéaire. +LOGEST = LOGREG ## Renvoie les paramètres d’une tendance exponentielle. +LOGINV = LOI.LOGNORMALE.INVERSE ## Renvoie l’inverse de la probabilité pour une variable aléatoire suivant la loi lognormale. +LOGNORMDIST = LOI.LOGNORMALE ## Renvoie la probabilité d’une variable aléatoire continue suivant une loi lognormale. +MAX = MAX ## Renvoie la valeur maximale contenue dans une liste d’arguments. +MAXA = MAXA ## Renvoie la valeur maximale d’une liste d’arguments, nombres, texte et valeurs logiques inclus. +MEDIAN = MEDIANE ## Renvoie la valeur médiane des nombres donnés. +MIN = MIN ## Renvoie la valeur minimale contenue dans une liste d’arguments. +MINA = MINA ## Renvoie la plus petite valeur d’une liste d’arguments, nombres, texte et valeurs logiques inclus. +MODE = MODE ## Renvoie la valeur la plus courante d’une série de données. +NEGBINOMDIST = LOI.BINOMIALE.NEG ## Renvoie la probabilité d’une variable aléatoire discrète suivant une loi binomiale négative. +NORMDIST = LOI.NORMALE ## Renvoie la probabilité d’une variable aléatoire continue suivant une loi normale. +NORMINV = LOI.NORMALE.INVERSE ## Renvoie, pour une probabilité donnée, la valeur d’une variable aléatoire suivant une loi normale standard. +NORMSDIST = LOI.NORMALE.STANDARD ## Renvoie la probabilité d’une variable aléatoire continue suivant une loi normale standard. +NORMSINV = LOI.NORMALE.STANDARD.INVERSE ## Renvoie l’inverse de la distribution cumulée normale standard. +PEARSON = PEARSON ## Renvoie le coefficient de corrélation d’échantillonnage de Pearson. +PERCENTILE = CENTILE ## Renvoie le k-ième centile des valeurs d’une plage. +PERCENTRANK = RANG.POURCENTAGE ## Renvoie le rang en pourcentage d’une valeur d’une série de données. +PERMUT = PERMUTATION ## Renvoie le nombre de permutations pour un nombre donné d’objets. +POISSON = LOI.POISSON ## Renvoie la probabilité d’une variable aléatoire suivant une loi de Poisson. +PROB = PROBABILITE ## Renvoie la probabilité que des valeurs d’une plage soient comprises entre deux limites. +QUARTILE = QUARTILE ## Renvoie le quartile d’une série de données. +RANK = RANG ## Renvoie le rang d’un nombre contenu dans une liste. +RSQ = COEFFICIENT.DETERMINATION ## Renvoie la valeur du coefficient de détermination R^2 d’une régression linéaire. +SKEW = COEFFICIENT.ASYMETRIE ## Renvoie l’asymétrie d’une distribution. +SLOPE = PENTE ## Renvoie la pente d’une droite de régression linéaire. +SMALL = PETITE.VALEUR ## Renvoie la k-ième plus petite valeur d’une série de données. +STANDARDIZE = CENTREE.REDUITE ## Renvoie une valeur centrée réduite. +STDEV = ECARTYPE ## Évalue l’écart type d’une population en se basant sur un échantillon de cette population. +STDEVA = STDEVA ## Évalue l’écart type d’une population en se basant sur un échantillon de cette population, nombres, texte et valeurs logiques inclus. +STDEVP = ECARTYPEP ## Calcule l’écart type d’une population à partir de la population entière. +STDEVPA = STDEVPA ## Calcule l’écart type d’une population à partir de l’ensemble de la population, nombres, texte et valeurs logiques inclus. +STEYX = ERREUR.TYPE.XY ## Renvoie l’erreur type de la valeur y prévue pour chaque x de la régression. +TDIST = LOI.STUDENT ## Renvoie la probabilité d’une variable aléatoire suivant une loi T de Student. +TINV = LOI.STUDENT.INVERSE ## Renvoie, pour une probabilité donnée, la valeur d’une variable aléatoire suivant une loi T de Student. +TREND = TENDANCE ## Renvoie des valeurs par rapport à une tendance linéaire. +TRIMMEAN = MOYENNE.REDUITE ## Renvoie la moyenne de l’intérieur d’une série de données. +TTEST = TEST.STUDENT ## Renvoie la probabilité associée à un test T de Student. +VAR = VAR ## Calcule la variance sur la base d’un échantillon. +VARA = VARA ## Estime la variance d’une population en se basant sur un échantillon de cette population, nombres, texte et valeurs logiques incluses. +VARP = VAR.P ## Calcule la variance sur la base de l’ensemble de la population. +VARPA = VARPA ## Calcule la variance d’une population en se basant sur la population entière, nombres, texte et valeurs logiques inclus. +WEIBULL = LOI.WEIBULL ## Renvoie la probabilité d’une variable aléatoire suivant une loi de Weibull. +ZTEST = TEST.Z ## Renvoie la valeur de probabilité unilatérale d’un test z. + + +## +## Text functions Fonctions de texte +## +ASC = ASC ## Change les caractères anglais ou katakana à pleine chasse (codés sur deux octets) à l’intérieur d’une chaîne de caractères en caractères à demi-chasse (codés sur un octet). +BAHTTEXT = BAHTTEXT ## Convertit un nombre en texte en utilisant le format monétaire ß (baht). +CHAR = CAR ## Renvoie le caractère spécifié par le code numérique. +CLEAN = EPURAGE ## Supprime tous les caractères de contrôle du texte. +CODE = CODE ## Renvoie le numéro de code du premier caractère du texte. +CONCATENATE = CONCATENER ## Assemble plusieurs éléments textuels de façon à n’en former qu’un seul. +DOLLAR = EURO ## Convertit un nombre en texte en utilisant le format monétaire € (euro). +EXACT = EXACT ## Vérifie si deux valeurs de texte sont identiques. +FIND = TROUVE ## Trouve un valeur textuelle dans une autre, en respectant la casse. +FINDB = TROUVERB ## Trouve un valeur textuelle dans une autre, en respectant la casse. +FIXED = CTXT ## Convertit un nombre au format texte avec un nombre de décimales spécifié. +JIS = JIS ## Change les caractères anglais ou katakana à demi-chasse (codés sur un octet) à l’intérieur d’une chaîne de caractères en caractères à à pleine chasse (codés sur deux octets). +LEFT = GAUCHE ## Renvoie des caractères situés à l’extrême gauche d’une chaîne de caractères. +LEFTB = GAUCHEB ## Renvoie des caractères situés à l’extrême gauche d’une chaîne de caractères. +LEN = NBCAR ## Renvoie le nombre de caractères contenus dans une chaîne de texte. +LENB = LENB ## Renvoie le nombre de caractères contenus dans une chaîne de texte. +LOWER = MINUSCULE ## Convertit le texte en minuscules. +MID = STXT ## Renvoie un nombre déterminé de caractères d’une chaîne de texte à partir de la position que vous indiquez. +MIDB = STXTB ## Renvoie un nombre déterminé de caractères d’une chaîne de texte à partir de la position que vous indiquez. +PHONETIC = PHONETIQUE ## Extrait les caractères phonétiques (furigana) d’une chaîne de texte. +PROPER = NOMPROPRE ## Met en majuscules la première lettre de chaque mot dans une chaîne textuelle. +REPLACE = REMPLACER ## Remplace des caractères dans un texte. +REPLACEB = REMPLACERB ## Remplace des caractères dans un texte. +REPT = REPT ## Répète un texte un certain nombre de fois. +RIGHT = DROITE ## Renvoie des caractères situés à l’extrême droite d’une chaîne de caractères. +RIGHTB = DROITEB ## Renvoie des caractères situés à l’extrême droite d’une chaîne de caractères. +SEARCH = CHERCHE ## Trouve un texte dans un autre texte (sans respecter la casse). +SEARCHB = CHERCHERB ## Trouve un texte dans un autre texte (sans respecter la casse). +SUBSTITUTE = SUBSTITUE ## Remplace l’ancien texte d’une chaîne de caractères par un nouveau. +T = T ## Convertit ses arguments en texte. +TEXT = TEXTE ## Convertit un nombre au format texte. +TRIM = SUPPRESPACE ## Supprime les espaces du texte. +UPPER = MAJUSCULE ## Convertit le texte en majuscules. +VALUE = CNUM ## Convertit un argument textuel en nombre diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/hu/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/hu/_notes/dwsync.xml new file mode 100644 index 0000000..408cfe3 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/hu/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461865881348" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461867044431" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/hu/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/hu/config new file mode 100644 index 0000000..080b201 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/hu/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = Ft + + +## +## Excel Error Codes (For future use) +## +NULL = #NULLA! +DIV0 = #ZÉRÓOSZTÓ! +VALUE = #ÉRTÉK! +REF = #HIV! +NAME = #NÉV? +NUM = #SZÁM! +NA = #HIÁNYZIK diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/hu/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/hu/functions new file mode 100644 index 0000000..200d3f7 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/hu/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Bővítmények és automatizálási függvények +## +GETPIVOTDATA = KIMUTATÁSADATOT.VESZ ## A kimutatásokban tárolt adatok visszaadására használható. + + +## +## Cube functions Kockafüggvények +## +CUBEKPIMEMBER = KOCKA.FŐTELJMUT ## Egy fő teljesítménymutató (KPI) nevét, tulajdonságát és mértékegységét adja eredményül, a nevet és a tulajdonságot megjeleníti a cellában. A KPI-k számszerűsíthető mérési lehetőséget jelentenek – ilyen mutató például a havi bruttó nyereség vagy az egy alkalmazottra jutó negyedéves forgalom –, egy szervezet teljesítményének nyomonkövetésére használhatók. +CUBEMEMBER = KOCKA.TAG ## Kockahierachia tagját vagy rekordját adja eredményül. Ellenőrizhető vele, hogy szerepel-e a kockában az adott tag vagy rekord. +CUBEMEMBERPROPERTY = KOCKA.TAG.TUL ## A kocka egyik tagtulajdonságának értékét adja eredményül. Használatával ellenőrizhető, hogy szerepel-e egy tagnév a kockában, eredménye pedig az erre a tagra vonatkozó, megadott tulajdonság. +CUBERANKEDMEMBER = KOCKA.HALM.ELEM ## Egy halmaz rangsor szerinti n-edik tagját adja eredményül. Használatával egy halmaz egy vagy több elemét kaphatja meg, például a legnagyobb teljesítményű üzletkötőt vagy a 10 legjobb tanulót. +CUBESET = KOCKA.HALM ## Számított tagok vagy rekordok halmazát adja eredményül, ehhez egy beállított kifejezést elküld a kiszolgálón található kockának, majd ezt a halmazt adja vissza a Microsoft Office Excel alkalmazásnak. +CUBESETCOUNT = KOCKA.HALM.DB ## Egy halmaz elemszámát adja eredményül. +CUBEVALUE = KOCKA.ÉRTÉK ## Kockából összesített értéket ad eredményül. + + +## +## Database functions Adatbázis-kezelő függvények +## +DAVERAGE = AB.ÁTLAG ## A kijelölt adatbáziselemek átlagát számítja ki. +DCOUNT = AB.DARAB ## Megszámolja, hogy az adatbázisban hány cella tartalmaz számokat. +DCOUNTA = AB.DARAB2 ## Megszámolja az adatbázisban lévő nem üres cellákat. +DGET = AB.MEZŐ ## Egy adatbázisból egyetlen olyan rekordot ad vissza, amely megfelel a megadott feltételeknek. +DMAX = AB.MAX ## A kiválasztott adatbáziselemek közül a legnagyobb értéket adja eredményül. +DMIN = AB.MIN ## A kijelölt adatbáziselemek közül a legkisebb értéket adja eredményül. +DPRODUCT = AB.SZORZAT ## Az adatbázis megadott feltételeknek eleget tevő rekordjaira összeszorozza a megadott mezőben található számértékeket, és eredményül ezt a szorzatot adja. +DSTDEV = AB.SZÓRÁS ## A kijelölt adatbáziselemek egy mintája alapján megbecsüli a szórást. +DSTDEVP = AB.SZÓRÁS2 ## A kijelölt adatbáziselemek teljes sokasága alapján kiszámítja a szórást. +DSUM = AB.SZUM ## Összeadja a feltételnek megfelelő adatbázisrekordok mezőoszlopában a számokat. +DVAR = AB.VAR ## A kijelölt adatbáziselemek mintája alapján becslést ad a szórásnégyzetre. +DVARP = AB.VAR2 ## A kijelölt adatbáziselemek teljes sokasága alapján kiszámítja a szórásnégyzetet. + + +## +## Date and time functions Dátumfüggvények +## +DATE = DÁTUM ## Adott dátum dátumértékét adja eredményül. +DATEVALUE = DÁTUMÉRTÉK ## Szövegként megadott dátumot dátumértékké alakít át. +DAY = NAP ## Dátumértéket a hónap egy napjává (0-31) alakít. +DAYS360 = NAP360 ## Két dátum közé eső napok számát számítja ki a 360 napos év alapján. +EDATE = EDATE ## Adott dátumnál adott számú hónappal korábbi vagy későbbi dátum dátumértékét adja eredményül. +EOMONTH = EOMONTH ## Adott dátumnál adott számú hónappal korábbi vagy későbbi hónap utolsó napjának dátumértékét adja eredményül. +HOUR = ÓRA ## Időértéket órákká alakít. +MINUTE = PERC ## Időértéket percekké alakít. +MONTH = HÓNAP ## Időértéket hónapokká alakít. +NETWORKDAYS = NETWORKDAYS ## Két dátum között a teljes munkanapok számát adja meg. +NOW = MOST ## A napi dátum dátumértékét és a pontos idő időértékét adja eredményül. +SECOND = MPERC ## Időértéket másodpercekké alakít át. +TIME = IDŐ ## Adott időpont időértékét adja meg. +TIMEVALUE = IDŐÉRTÉK ## Szövegként megadott időpontot időértékké alakít át. +TODAY = MA ## A napi dátum dátumértékét adja eredményül. +WEEKDAY = HÉT.NAPJA ## Dátumértéket a hét napjává alakítja át. +WEEKNUM = WEEKNUM ## Visszatérési értéke egy szám, amely azt mutatja meg, hogy a megadott dátum az év hányadik hetére esik. +WORKDAY = WORKDAY ## Adott dátumnál adott munkanappal korábbi vagy későbbi dátum dátumértékét adja eredményül. +YEAR = ÉV ## Sorszámot évvé alakít át. +YEARFRAC = YEARFRAC ## Az adott dátumok közötti teljes napok számát törtévként adja meg. + + +## +## Engineering functions Mérnöki függvények +## +BESSELI = BESSELI ## Az In(x) módosított Bessel-függvény értékét adja eredményül. +BESSELJ = BESSELJ ## A Jn(x) Bessel-függvény értékét adja eredményül. +BESSELK = BESSELK ## A Kn(x) módosított Bessel-függvény értékét adja eredményül. +BESSELY = BESSELY ## Az Yn(x) módosított Bessel-függvény értékét adja eredményül. +BIN2DEC = BIN2DEC ## Bináris számot decimálissá alakít át. +BIN2HEX = BIN2HEX ## Bináris számot hexadecimálissá alakít át. +BIN2OCT = BIN2OCT ## Bináris számot oktálissá alakít át. +COMPLEX = COMPLEX ## Valós és képzetes részből komplex számot képez. +CONVERT = CONVERT ## Mértékegységeket vált át. +DEC2BIN = DEC2BIN ## Decimális számot binárissá alakít át. +DEC2HEX = DEC2HEX ## Decimális számot hexadecimálissá alakít át. +DEC2OCT = DEC2OCT ## Decimális számot oktálissá alakít át. +DELTA = DELTA ## Azt vizsgálja, hogy két érték egyenlő-e. +ERF = ERF ## A hibafüggvény értékét adja eredményül. +ERFC = ERFC ## A kiegészített hibafüggvény értékét adja eredményül. +GESTEP = GESTEP ## Azt vizsgálja, hogy egy szám nagyobb-e adott küszöbértéknél. +HEX2BIN = HEX2BIN ## Hexadecimális számot binárissá alakít át. +HEX2DEC = HEX2DEC ## Hexadecimális számot decimálissá alakít át. +HEX2OCT = HEX2OCT ## Hexadecimális számot oktálissá alakít át. +IMABS = IMABS ## Komplex szám abszolút értékét (modulusát) adja eredményül. +IMAGINARY = IMAGINARY ## Komplex szám képzetes részét adja eredményül. +IMARGUMENT = IMARGUMENT ## A komplex szám radiánban kifejezett théta argumentumát adja eredményül. +IMCONJUGATE = IMCONJUGATE ## Komplex szám komplex konjugáltját adja eredményül. +IMCOS = IMCOS ## Komplex szám koszinuszát adja eredményül. +IMDIV = IMDIV ## Két komplex szám hányadosát adja eredményül. +IMEXP = IMEXP ## Az e szám komplex kitevőjű hatványát adja eredményül. +IMLN = IMLN ## Komplex szám természetes logaritmusát adja eredményül. +IMLOG10 = IMLOG10 ## Komplex szám tízes alapú logaritmusát adja eredményül. +IMLOG2 = IMLOG2 ## Komplex szám kettes alapú logaritmusát adja eredményül. +IMPOWER = IMPOWER ## Komplex szám hatványát adja eredményül. +IMPRODUCT = IMPRODUCT ## Komplex számok szorzatát adja eredményül. +IMREAL = IMREAL ## Komplex szám valós részét adja eredményül. +IMSIN = IMSIN ## Komplex szám szinuszát adja eredményül. +IMSQRT = IMSQRT ## Komplex szám négyzetgyökét adja eredményül. +IMSUB = IMSUB ## Két komplex szám különbségét adja eredményül. +IMSUM = IMSUM ## Komplex számok összegét adja eredményül. +OCT2BIN = OCT2BIN ## Oktális számot binárissá alakít át. +OCT2DEC = OCT2DEC ## Oktális számot decimálissá alakít át. +OCT2HEX = OCT2HEX ## Oktális számot hexadecimálissá alakít át. + + +## +## Financial functions Pénzügyi függvények +## +ACCRINT = ACCRINT ## Periodikusan kamatozó értékpapír felszaporodott kamatát adja eredményül. +ACCRINTM = ACCRINTM ## Lejáratkor kamatozó értékpapír felszaporodott kamatát adja eredményül. +AMORDEGRC = AMORDEGRC ## Állóeszköz lineáris értékcsökkenését adja meg az egyes könyvelési időszakokra vonatkozóan. +AMORLINC = AMORLINC ## Az egyes könyvelési időszakokban az értékcsökkenést adja meg. +COUPDAYBS = COUPDAYBS ## A szelvényidőszak kezdetétől a kifizetés időpontjáig eltelt napokat adja vissza. +COUPDAYS = COUPDAYS ## A kifizetés időpontját magában foglaló szelvényperiódus hosszát adja meg napokban. +COUPDAYSNC = COUPDAYSNC ## A kifizetés időpontja és a legközelebbi szelvénydátum közötti napok számát adja meg. +COUPNCD = COUPNCD ## A kifizetést követő legelső szelvénydátumot adja eredményül. +COUPNUM = COUPNUM ## A kifizetés és a lejárat időpontja között kifizetendő szelvények számát adja eredményül. +COUPPCD = COUPPCD ## A kifizetés előtti utolsó szelvénydátumot adja eredményül. +CUMIPMT = CUMIPMT ## Két fizetési időszak között kifizetett kamat halmozott értékét adja eredményül. +CUMPRINC = CUMPRINC ## Két fizetési időszak között kifizetett részletek halmozott (kamatot nem tartalmazó) értékét adja eredményül. +DB = KCS2 ## Eszköz adott időszak alatti értékcsökkenését számítja ki a lineáris leírási modell alkalmazásával. +DDB = KCSA ## Eszköz értékcsökkenését számítja ki adott időszakra vonatkozóan a progresszív vagy egyéb megadott leírási modell alkalmazásával. +DISC = DISC ## Értékpapír leszámítolási kamatlábát adja eredményül. +DOLLARDE = DOLLARDE ## Egy közönséges törtként megadott számot tizedes törtté alakít át. +DOLLARFR = DOLLARFR ## Tizedes törtként megadott számot közönséges törtté alakít át. +DURATION = DURATION ## Periodikus kamatfizetésű értékpapír éves kamatérzékenységét adja eredményül. +EFFECT = EFFECT ## Az éves tényleges kamatláb értékét adja eredményül. +FV = JBÉ ## Befektetés jövőbeli értékét számítja ki. +FVSCHEDULE = FVSCHEDULE ## A kezdőtőke adott kamatlábak szerint megnövelt jövőbeli értékét adja eredményül. +INTRATE = INTRATE ## A lejáratig teljesen lekötött értékpapír kamatrátáját adja eredményül. +IPMT = RRÉSZLET ## Hiteltörlesztésen belül a tőketörlesztés nagyságát számítja ki adott időszakra. +IRR = BMR ## A befektetés belső megtérülési rátáját számítja ki pénzáramláshoz. +ISPMT = LRÉSZLETKAMAT ## A befektetés adott időszakára fizetett kamatot számítja ki. +MDURATION = MDURATION ## Egy 100 Ft névértékű értékpapír Macauley-féle módosított kamatérzékenységét adja eredményül. +MIRR = MEGTÉRÜLÉS ## A befektetés belső megtérülési rátáját számítja ki a költségek és a bevételek különböző kamatlába mellett. +NOMINAL = NOMINAL ## Az éves névleges kamatláb értékét adja eredményül. +NPER = PER.SZÁM ## A törlesztési időszakok számát adja meg. +NPV = NMÉ ## Befektetéshez kapcsolódó pénzáramlás nettó jelenértékét számítja ki ismert pénzáramlás és kamatláb mellett. +ODDFPRICE = ODDFPRICE ## Egy 100 Ft névértékű, a futamidő elején töredék-időszakos értékpapír árát adja eredményül. +ODDFYIELD = ODDFYIELD ## A futamidő elején töredék-időszakos értékpapír hozamát adja eredményül. +ODDLPRICE = ODDLPRICE ## Egy 100 Ft névértékű, a futamidő végén töredék-időszakos értékpapír árát adja eredményül. +ODDLYIELD = ODDLYIELD ## A futamidő végén töredék-időszakos értékpapír hozamát adja eredményül. +PMT = RÉSZLET ## A törlesztési időszakra vonatkozó törlesztési összeget számítja ki. +PPMT = PRÉSZLET ## Hiteltörlesztésen belül a tőketörlesztés nagyságát számítja ki adott időszakra. +PRICE = PRICE ## Egy 100 Ft névértékű, periodikusan kamatozó értékpapír árát adja eredményül. +PRICEDISC = PRICEDISC ## Egy 100 Ft névértékű leszámítolt értékpapír árát adja eredményül. +PRICEMAT = PRICEMAT ## Egy 100 Ft névértékű, a lejáratkor kamatozó értékpapír árát adja eredményül. +PV = MÉ ## Befektetés jelenlegi értékét számítja ki. +RATE = RÁTA ## Egy törlesztési időszakban az egy időszakra eső kamatláb nagyságát számítja ki. +RECEIVED = RECEIVED ## A lejáratig teljesen lekötött értékpapír lejáratakor kapott összegét adja eredményül. +SLN = LCSA ## Tárgyi eszköz egy időszakra eső amortizációját adja meg bruttó érték szerinti lineáris leírási kulcsot alkalmazva. +SYD = SYD ## Tárgyi eszköz értékcsökkenését számítja ki adott időszakra az évek számjegyösszegével dolgozó módszer alapján. +TBILLEQ = TBILLEQ ## Kincstárjegy kötvény-egyenértékű hozamát adja eredményül. +TBILLPRICE = TBILLPRICE ## Egy 100 Ft névértékű kincstárjegy árát adja eredményül. +TBILLYIELD = TBILLYIELD ## Kincstárjegy hozamát adja eredményül. +VDB = ÉCSRI ## Tárgyi eszköz amortizációját számítja ki megadott vagy részidőszakra a csökkenő egyenleg módszerének alkalmazásával. +XIRR = XIRR ## Ütemezett készpénzforgalom (cash flow) belső megtérülési kamatrátáját adja eredményül. +XNPV = XNPV ## Ütemezett készpénzforgalom (cash flow) nettó jelenlegi értékét adja eredményül. +YIELD = YIELD ## Periodikusan kamatozó értékpapír hozamát adja eredményül. +YIELDDISC = YIELDDISC ## Leszámítolt értékpapír (például kincstárjegy) éves hozamát adja eredményül. +YIELDMAT = YIELDMAT ## Lejáratkor kamatozó értékpapír éves hozamát adja eredményül. + + +## +## Information functions Információs függvények +## +CELL = CELLA ## Egy cella formátumára, elhelyezkedésére vagy tartalmára vonatkozó adatokat ad eredményül. +ERROR.TYPE = HIBA.TÍPUS ## Egy hibatípushoz tartozó számot ad eredményül. +INFO = INFÓ ## A rendszer- és munkakörnyezet pillanatnyi állapotáról ad felvilágosítást. +ISBLANK = ÜRES ## Eredménye IGAZ, ha az érték üres. +ISERR = HIBA ## Eredménye IGAZ, ha az érték valamelyik hibaérték a #HIÁNYZIK kivételével. +ISERROR = HIBÁS ## Eredménye IGAZ, ha az érték valamelyik hibaérték. +ISEVEN = ISEVEN ## Eredménye IGAZ, ha argumentuma páros szám. +ISLOGICAL = LOGIKAI ## Eredménye IGAZ, ha az érték logikai érték. +ISNA = NINCS ## Eredménye IGAZ, ha az érték a #HIÁNYZIK hibaérték. +ISNONTEXT = NEM.SZÖVEG ## Eredménye IGAZ, ha az érték nem szöveg. +ISNUMBER = SZÁM ## Eredménye IGAZ, ha az érték szám. +ISODD = ISODD ## Eredménye IGAZ, ha argumentuma páratlan szám. +ISREF = HIVATKOZÁS ## Eredménye IGAZ, ha az érték hivatkozás. +ISTEXT = SZÖVEG.E ## Eredménye IGAZ, ha az érték szöveg. +N = N ## Argumentumának értékét számmá alakítja. +NA = HIÁNYZIK ## Eredménye a #HIÁNYZIK hibaérték. +TYPE = TÍPUS ## Érték adattípusának azonosítószámát adja eredményül. + + +## +## Logical functions Logikai függvények +## +AND = ÉS ## Eredménye IGAZ, ha minden argumentuma IGAZ. +FALSE = HAMIS ## A HAMIS logikai értéket adja eredményül. +IF = HA ## Logikai vizsgálatot hajt végre. +IFERROR = HAHIBA ## A megadott értéket adja vissza, ha egy képlet hibához vezet; más esetben a képlet értékét adja eredményül. +NOT = NEM ## Argumentuma értékének ellentettjét adja eredményül. +OR = VAGY ## Eredménye IGAZ, ha bármely argumentuma IGAZ. +TRUE = IGAZ ## Az IGAZ logikai értéket adja eredményül. + + +## +## Lookup and reference functions Keresési és hivatkozási függvények +## +ADDRESS = CÍM ## A munkalap egy cellájára való hivatkozást adja szövegként eredményül. +AREAS = TERÜLET ## Hivatkozásban a területek számát adja eredményül. +CHOOSE = VÁLASZT ## Értékek listájából választ ki egy elemet. +COLUMN = OSZLOP ## Egy hivatkozás oszlopszámát adja eredményül. +COLUMNS = OSZLOPOK ## A hivatkozásban található oszlopok számát adja eredményül. +HLOOKUP = VKERES ## A megadott tömb felső sorában adott értékű elemet keres, és a megtalált elem oszlopából adott sorban elhelyezkedő értékkel tér vissza. +HYPERLINK = HIPERHIVATKOZÁS ## Hálózati kiszolgálón, intraneten vagy az interneten tárolt dokumentumot megnyitó parancsikont vagy hivatkozást hoz létre. +INDEX = INDEX ## Tömb- vagy hivatkozás indexszel megadott értékét adja vissza. +INDIRECT = INDIREKT ## Szöveg megadott hivatkozást ad eredményül. +LOOKUP = KERES ## Vektorban vagy tömbben keres meg értékeket. +MATCH = HOL.VAN ## Hivatkozásban vagy tömbben értékeket keres. +OFFSET = OFSZET ## Hivatkozás egy másik hivatkozástól számított távolságát adja meg. +ROW = SOR ## Egy hivatkozás sorának számát adja meg. +ROWS = SOROK ## Egy hivatkozás sorainak számát adja meg. +RTD = RTD ## Valós idejű adatokat keres vissza a COM automatizmust (automatizálás: Egy alkalmazás objektumaival való munka másik alkalmazásból vagy fejlesztőeszközből. A korábban OLE automatizmusnak nevezett automatizálás iparági szabvány, a Component Object Model (COM) szolgáltatása.) támogató programból. +TRANSPOSE = TRANSZPONÁLÁS ## Egy tömb transzponáltját adja eredményül. +VLOOKUP = FKERES ## A megadott tömb bal szélső oszlopában megkeres egy értéket, majd annak sora és a megadott oszlop metszéspontjában levő értéked adja eredményül. + + +## +## Math and trigonometry functions Matematikai és trigonometrikus függvények +## +ABS = ABS ## Egy szám abszolút értékét adja eredményül. +ACOS = ARCCOS ## Egy szám arkusz koszinuszát számítja ki. +ACOSH = ACOSH ## Egy szám inverz koszinusz hiperbolikuszát számítja ki. +ASIN = ARCSIN ## Egy szám arkusz szinuszát számítja ki. +ASINH = ASINH ## Egy szám inverz szinusz hiperbolikuszát számítja ki. +ATAN = ARCTAN ## Egy szám arkusz tangensét számítja ki. +ATAN2 = ARCTAN2 ## X és y koordináták alapján számítja ki az arkusz tangens értéket. +ATANH = ATANH ## A szám inverz tangens hiperbolikuszát számítja ki. +CEILING = PLAFON ## Egy számot a legközelebbi egészre vagy a pontosságként megadott érték legközelebb eső többszörösére kerekít. +COMBIN = KOMBINÁCIÓK ## Adott számú objektum összes lehetséges kombinációinak számát számítja ki. +COS = COS ## Egy szám koszinuszát számítja ki. +COSH = COSH ## Egy szám koszinusz hiperbolikuszát számítja ki. +DEGREES = FOK ## Radiánt fokká alakít át. +EVEN = PÁROS ## Egy számot a legközelebbi páros egész számra kerekít. +EXP = KITEVŐ ## Az e adott kitevőjű hatványát adja eredményül. +FACT = FAKT ## Egy szám faktoriálisát számítja ki. +FACTDOUBLE = FACTDOUBLE ## Egy szám dupla faktoriálisát adja eredményül. +FLOOR = PADLÓ ## Egy számot lefelé, a nulla felé kerekít. +GCD = GCD ## A legnagyobb közös osztót adja eredményül. +INT = INT ## Egy számot lefelé kerekít a legközelebbi egészre. +LCM = LCM ## A legkisebb közös többszöröst adja eredményül. +LN = LN ## Egy szám természetes logaritmusát számítja ki. +LOG = LOG ## Egy szám adott alapú logaritmusát számítja ki. +LOG10 = LOG10 ## Egy szám 10-es alapú logaritmusát számítja ki. +MDETERM = MDETERM ## Egy tömb mátrix-determinánsát számítja ki. +MINVERSE = INVERZ.MÁTRIX ## Egy tömb mátrix inverzét adja eredményül. +MMULT = MSZORZAT ## Két tömb mátrix-szorzatát adja meg. +MOD = MARADÉK ## Egy szám osztási maradékát adja eredményül. +MROUND = MROUND ## A kívánt többszörösére kerekített értéket ad eredményül. +MULTINOMIAL = MULTINOMIAL ## Számhalmaz multinomiálisát adja eredményül. +ODD = PÁRATLAN ## Egy számot a legközelebbi páratlan számra kerekít. +PI = PI ## A pi matematikai állandót adja vissza. +POWER = HATVÁNY ## Egy szám adott kitevőjű hatványát számítja ki. +PRODUCT = SZORZAT ## Argumentumai szorzatát számítja ki. +QUOTIENT = QUOTIENT ## Egy hányados egész részét adja eredményül. +RADIANS = RADIÁN ## Fokot radiánná alakít át. +RAND = VÉL ## Egy 0 és 1 közötti véletlen számot ad eredményül. +RANDBETWEEN = RANDBETWEEN ## Megadott számok közé eső véletlen számot állít elő. +ROMAN = RÓMAI ## Egy számot római számokkal kifejezve szövegként ad eredményül. +ROUND = KEREKÍTÉS ## Egy számot adott számú számjegyre kerekít. +ROUNDDOWN = KEREKÍTÉS.LE ## Egy számot lefelé, a nulla felé kerekít. +ROUNDUP = KEREKÍTÉS.FEL ## Egy számot felfelé, a nullától távolabbra kerekít. +SERIESSUM = SERIESSUM ## Hatványsor összegét adja eredményül. +SIGN = ELŐJEL ## Egy szám előjelét adja meg. +SIN = SIN ## Egy szög szinuszát számítja ki. +SINH = SINH ## Egy szám szinusz hiperbolikuszát számítja ki. +SQRT = GYÖK ## Egy szám pozitív négyzetgyökét számítja ki. +SQRTPI = SQRTPI ## A (szám*pi) négyzetgyökét adja eredményül. +SUBTOTAL = RÉSZÖSSZEG ## Lista vagy adatbázis részösszegét adja eredményül. +SUM = SZUM ## Összeadja az argumentumlistájában lévő számokat. +SUMIF = SZUMHA ## A megadott feltételeknek eleget tevő cellákban található értékeket adja össze. +SUMIFS = SZUMHATÖBB ## Több megadott feltételnek eleget tévő tartománycellák összegét adja eredményül. +SUMPRODUCT = SZORZATÖSSZEG ## A megfelelő tömbelemek szorzatának összegét számítja ki. +SUMSQ = NÉGYZETÖSSZEG ## Argumentumai négyzetének összegét számítja ki. +SUMX2MY2 = SZUMX2BŐLY2 ## Két tömb megfelelő elemei négyzetének különbségét összegzi. +SUMX2PY2 = SZUMX2MEGY2 ## Két tömb megfelelő elemei négyzetének összegét összegzi. +SUMXMY2 = SZUMXBŐLY2 ## Két tömb megfelelő elemei különbségének négyzetösszegét számítja ki. +TAN = TAN ## Egy szám tangensét számítja ki. +TANH = TANH ## Egy szám tangens hiperbolikuszát számítja ki. +TRUNC = CSONK ## Egy számot egésszé csonkít. + + +## +## Statistical functions Statisztikai függvények +## +AVEDEV = ÁTL.ELTÉRÉS ## Az adatpontoknak átlaguktól való átlagos abszolút eltérését számítja ki. +AVERAGE = ÁTLAG ## Argumentumai átlagát számítja ki. +AVERAGEA = ÁTLAGA ## Argumentumai átlagát számítja ki (beleértve a számokat, szöveget és logikai értékeket). +AVERAGEIF = ÁTLAGHA ## A megadott feltételnek eleget tévő tartomány celláinak átlagát (számtani közepét) adja eredményül. +AVERAGEIFS = ÁTLAGHATÖBB ## A megadott feltételeknek eleget tévő cellák átlagát (számtani közepét) adja eredményül. +BETADIST = BÉTA.ELOSZLÁS ## A béta-eloszlás függvényt számítja ki. +BETAINV = INVERZ.BÉTA ## Adott béta-eloszláshoz kiszámítja a béta eloszlásfüggvény inverzét. +BINOMDIST = BINOM.ELOSZLÁS ## A diszkrét binomiális eloszlás valószínűségértékét számítja ki. +CHIDIST = KHI.ELOSZLÁS ## A khi-négyzet-eloszlás egyszélű valószínűségértékét számítja ki. +CHIINV = INVERZ.KHI ## A khi-négyzet-eloszlás egyszélű valószínűségértékének inverzét számítja ki. +CHITEST = KHI.PRÓBA ## Függetlenségvizsgálatot hajt végre. +CONFIDENCE = MEGBÍZHATÓSÁG ## Egy statisztikai sokaság várható értékének megbízhatósági intervallumát adja eredményül. +CORREL = KORREL ## Két adathalmaz korrelációs együtthatóját számítja ki. +COUNT = DARAB ## Megszámolja, hogy argumentumlistájában hány szám található. +COUNTA = DARAB2 ## Megszámolja, hogy argumentumlistájában hány érték található. +COUNTBLANK = DARABÜRES ## Egy tartományban összeszámolja az üres cellákat. +COUNTIF = DARABTELI ## Egy tartományban összeszámolja azokat a cellákat, amelyek eleget tesznek a megadott feltételnek. +COUNTIFS = DARABHATÖBB ## Egy tartományban összeszámolja azokat a cellákat, amelyek eleget tesznek több feltételnek. +COVAR = KOVAR ## A kovarianciát, azaz a páronkénti eltérések szorzatának átlagát számítja ki. +CRITBINOM = KRITBINOM ## Azt a legkisebb számot adja eredményül, amelyre a binomiális eloszlásfüggvény értéke nem kisebb egy adott határértéknél. +DEVSQ = SQ ## Az átlagtól való eltérések négyzetének összegét számítja ki. +EXPONDIST = EXP.ELOSZLÁS ## Az exponenciális eloszlás értékét számítja ki. +FDIST = F.ELOSZLÁS ## Az F-eloszlás értékét számítja ki. +FINV = INVERZ.F ## Az F-eloszlás inverzének értékét számítja ki. +FISHER = FISHER ## Fisher-transzformációt hajt végre. +FISHERINV = INVERZ.FISHER ## A Fisher-transzformáció inverzét hajtja végre. +FORECAST = ELŐREJELZÉS ## Az ismert értékek alapján lineáris regresszióval becsült értéket ad eredményül. +FREQUENCY = GYAKORISÁG ## A gyakorisági vagy empirikus eloszlás értékét függőleges tömbként adja eredményül. +FTEST = F.PRÓBA ## Az F-próba értékét adja eredményül. +GAMMADIST = GAMMA.ELOSZLÁS ## A gamma-eloszlás értékét számítja ki. +GAMMAINV = INVERZ.GAMMA ## A gamma-eloszlás eloszlásfüggvénye inverzének értékét számítja ki. +GAMMALN = GAMMALN ## A gamma-függvény természetes logaritmusát számítja ki. +GEOMEAN = MÉRTANI.KÖZÉP ## Argumentumai mértani középértékét számítja ki. +GROWTH = NÖV ## Exponenciális regresszió alapján ad becslést. +HARMEAN = HARM.KÖZÉP ## Argumentumai harmonikus átlagát számítja ki. +HYPGEOMDIST = HIPERGEOM.ELOSZLÁS ## A hipergeometriai eloszlás értékét számítja ki. +INTERCEPT = METSZ ## A regressziós egyenes y tengellyel való metszéspontját határozza meg. +KURT = CSÚCSOSSÁG ## Egy adathalmaz csúcsosságát számítja ki. +LARGE = NAGY ## Egy adathalmaz k-adik legnagyobb elemét adja eredményül. +LINEST = LIN.ILL ## A legkisebb négyzetek módszerével az adatokra illesztett egyenes paramétereit határozza meg. +LOGEST = LOG.ILL ## Az adatokra illesztett exponenciális görbe paramétereit határozza meg. +LOGINV = INVERZ.LOG.ELOSZLÁS ## A lognormális eloszlás inverzét számítja ki. +LOGNORMDIST = LOG.ELOSZLÁS ## A lognormális eloszlásfüggvény értékét számítja ki. +MAX = MAX ## Az argumentumai között szereplő legnagyobb számot adja meg. +MAXA = MAX2 ## Az argumentumai között szereplő legnagyobb számot adja meg (beleértve a számokat, szöveget és logikai értékeket). +MEDIAN = MEDIÁN ## Adott számhalmaz mediánját számítja ki. +MIN = MIN ## Az argumentumai között szereplő legkisebb számot adja meg. +MINA = MIN2 ## Az argumentumai között szereplő legkisebb számot adja meg, beleértve a számokat, szöveget és logikai értékeket. +MODE = MÓDUSZ ## Egy adathalmazból kiválasztja a leggyakrabban előforduló számot. +NEGBINOMDIST = NEGBINOM.ELOSZL ## A negatív binomiális eloszlás értékét számítja ki. +NORMDIST = NORM.ELOSZL ## A normális eloszlás értékét számítja ki. +NORMINV = INVERZ.NORM ## A normális eloszlás eloszlásfüggvénye inverzének értékét számítja ki. +NORMSDIST = STNORMELOSZL ## A standard normális eloszlás eloszlásfüggvényének értékét számítja ki. +NORMSINV = INVERZ.STNORM ## A standard normális eloszlás eloszlásfüggvénye inverzének értékét számítja ki. +PEARSON = PEARSON ## A Pearson-féle korrelációs együtthatót számítja ki. +PERCENTILE = PERCENTILIS ## Egy tartományban található értékek k-adik percentilisét, azaz százalékosztályát adja eredményül. +PERCENTRANK = SZÁZALÉKRANG ## Egy értéknek egy adathalmazon belül vett százalékos rangját (elhelyezkedését) számítja ki. +PERMUT = VARIÁCIÓK ## Adott számú objektum k-ad osztályú ismétlés nélküli variációinak számát számítja ki. +POISSON = POISSON ## A Poisson-eloszlás értékét számítja ki. +PROB = VALÓSZÍNŰSÉG ## Annak valószínűségét számítja ki, hogy adott értékek két határérték közé esnek. +QUARTILE = KVARTILIS ## Egy adathalmaz kvartilisét (negyedszintjét) számítja ki. +RANK = SORSZÁM ## Kiszámítja, hogy egy szám hányadik egy számsorozatban. +RSQ = RNÉGYZET ## Kiszámítja a Pearson-féle szorzatmomentum korrelációs együtthatójának négyzetét. +SKEW = FERDESÉG ## Egy eloszlás ferdeségét határozza meg. +SLOPE = MEREDEKSÉG ## Egy lineáris regressziós egyenes meredekségét számítja ki. +SMALL = KICSI ## Egy adathalmaz k-adik legkisebb elemét adja meg. +STANDARDIZE = NORMALIZÁLÁS ## Normalizált értéket ad eredményül. +STDEV = SZÓRÁS ## Egy statisztikai sokaság mintájából kiszámítja annak szórását. +STDEVA = SZÓRÁSA ## Egy statisztikai sokaság mintájából kiszámítja annak szórását (beleértve a számokat, szöveget és logikai értékeket). +STDEVP = SZÓRÁSP ## Egy statisztikai sokaság egészéből kiszámítja annak szórását. +STDEVPA = SZÓRÁSPA ## Egy statisztikai sokaság egészéből kiszámítja annak szórását (beleértve számokat, szöveget és logikai értékeket). +STEYX = STHIBAYX ## Egy regresszió esetén az egyes x-értékek alapján meghatározott y-értékek standard hibáját számítja ki. +TDIST = T.ELOSZLÁS ## A Student-féle t-eloszlás értékét számítja ki. +TINV = INVERZ.T ## A Student-féle t-eloszlás inverzét számítja ki. +TREND = TREND ## Lineáris trend értékeit számítja ki. +TRIMMEAN = RÉSZÁTLAG ## Egy adathalmaz középső részének átlagát számítja ki. +TTEST = T.PRÓBA ## A Student-féle t-próbához tartozó valószínűséget számítja ki. +VAR = VAR ## Minta alapján becslést ad a varianciára. +VARA = VARA ## Minta alapján becslést ad a varianciára (beleértve számokat, szöveget és logikai értékeket). +VARP = VARP ## Egy statisztikai sokaság varianciáját számítja ki. +VARPA = VARPA ## Egy statisztikai sokaság varianciáját számítja ki (beleértve számokat, szöveget és logikai értékeket). +WEIBULL = WEIBULL ## A Weibull-féle eloszlás értékét számítja ki. +ZTEST = Z.PRÓBA ## Az egyszélű z-próbával kapott valószínűségértéket számítja ki. + + +## +## Text functions Szövegműveletekhez használható függvények +## +ASC = ASC ## Szöveg teljes szélességű (kétbájtos) latin és katakana karaktereit félszélességű (egybájtos) karakterekké alakítja. +BAHTTEXT = BAHTSZÖVEG ## Számot szöveggé alakít a ß (baht) pénznemformátum használatával. +CHAR = KARAKTER ## A kódszámmal meghatározott karaktert adja eredményül. +CLEAN = TISZTÍT ## A szövegből eltávolítja az összes nem nyomtatható karaktert. +CODE = KÓD ## Karaktersorozat első karakterének numerikus kódját adja eredményül. +CONCATENATE = ÖSSZEFŰZ ## Több szövegelemet egyetlen szöveges elemmé fűz össze. +DOLLAR = FORINT ## Számot pénznem formátumú szöveggé alakít át. +EXACT = AZONOS ## Megvizsgálja, hogy két érték azonos-e. +FIND = SZÖVEG.TALÁL ## Karaktersorozatot keres egy másikban (a kis- és nagybetűk megkülönböztetésével). +FINDB = SZÖVEG.TALÁL2 ## Karaktersorozatot keres egy másikban (a kis- és nagybetűk megkülönböztetésével). +FIXED = FIX ## Számot szöveges formátumúra alakít adott számú tizedesjegyre kerekítve. +JIS = JIS ## A félszélességű (egybájtos) latin és a katakana karaktereket teljes szélességű (kétbájtos) karakterekké alakítja. +LEFT = BAL ## Szöveg bal szélső karaktereit adja eredményül. +LEFTB = BAL2 ## Szöveg bal szélső karaktereit adja eredményül. +LEN = HOSSZ ## Szöveg karakterekben mért hosszát adja eredményül. +LENB = HOSSZ2 ## Szöveg karakterekben mért hosszát adja eredményül. +LOWER = KISBETŰ ## Szöveget kisbetűssé alakít át. +MID = KÖZÉP ## A szöveg adott pozíciójától kezdve megadott számú karaktert ad vissza eredményként. +MIDB = KÖZÉP2 ## A szöveg adott pozíciójától kezdve megadott számú karaktert ad vissza eredményként. +PHONETIC = PHONETIC ## Szöveg furigana (fonetikus) karaktereit adja vissza. +PROPER = TNÉV ## Szöveg minden szavának kezdőbetűjét nagybetűsre cseréli. +REPLACE = CSERE ## A szövegen belül karaktereket cserél. +REPLACEB = CSERE2 ## A szövegen belül karaktereket cserél. +REPT = SOKSZOR ## Megadott számú alkalommal megismétel egy szövegrészt. +RIGHT = JOBB ## Szövegrész jobb szélső karaktereit adja eredményül. +RIGHTB = JOBB2 ## Szövegrész jobb szélső karaktereit adja eredményül. +SEARCH = SZÖVEG.KERES ## Karaktersorozatot keres egy másikban (a kis- és nagybetűk között nem tesz különbséget). +SEARCHB = SZÖVEG.KERES2 ## Karaktersorozatot keres egy másikban (a kis- és nagybetűk között nem tesz különbséget). +SUBSTITUTE = HELYETTE ## Szövegben adott karaktereket másikra cserél. +T = T ## Argumentumát szöveggé alakítja át. +TEXT = SZÖVEG ## Számértéket alakít át adott számformátumú szöveggé. +TRIM = TRIM ## A szövegből eltávolítja a szóközöket. +UPPER = NAGYBETŰS ## Szöveget nagybetűssé alakít át. +VALUE = ÉRTÉK ## Szöveget számmá alakít át. diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/it/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/it/_notes/dwsync.xml new file mode 100644 index 0000000..e4d4678 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/it/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461866854905" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461868399869" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/it/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/it/config new file mode 100644 index 0000000..c3afa75 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/it/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = € + + +## +## Excel Error Codes (For future use) +## +NULL = #NULLO! +DIV0 = #DIV/0! +VALUE = #VALORE! +REF = #RIF! +NAME = #NOME? +NUM = #NUM! +NA = #N/D diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/it/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/it/functions new file mode 100644 index 0000000..d371f3d --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/it/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Funzioni di automazione e dei componenti aggiuntivi +## +GETPIVOTDATA = INFO.DATI.TAB.PIVOT ## Restituisce i dati memorizzati in un rapporto di tabella pivot + + +## +## Cube functions Funzioni cubo +## +CUBEKPIMEMBER = MEMBRO.KPI.CUBO ## Restituisce il nome, la proprietà e la misura di un indicatore di prestazioni chiave (KPI) e visualizza il nome e la proprietà nella cella. Un KPI è una misura quantificabile, ad esempio l'utile lordo mensile o il fatturato trimestrale dei dipendenti, utilizzata per il monitoraggio delle prestazioni di un'organizzazione. +CUBEMEMBER = MEMBRO.CUBO ## Restituisce un membro o una tupla in una gerarchia di cubi. Consente di verificare l'esistenza del membro o della tupla nel cubo. +CUBEMEMBERPROPERTY = PROPRIETÀ.MEMBRO.CUBO ## Restituisce il valore di una proprietà di un membro del cubo. Consente di verificare l'esistenza di un nome di membro all'interno del cubo e di restituire la proprietà specificata per tale membro. +CUBERANKEDMEMBER = MEMBRO.CUBO.CON.RANGO ## Restituisce l'n-esimo membro o il membro ordinato di un insieme. Consente di restituire uno o più elementi in un insieme, ad esempio l'agente di vendita migliore o i primi 10 studenti. +CUBESET = SET.CUBO ## Definisce un insieme di tuple o membri calcolati mediante l'invio di un'espressione di insieme al cubo sul server. In questo modo l'insieme viene creato e restituito a Microsoft Office Excel. +CUBESETCOUNT = CONTA.SET.CUBO ## Restituisce il numero di elementi di un insieme. +CUBEVALUE = VALORE.CUBO ## Restituisce un valore aggregato da un cubo. + + +## +## Database functions Funzioni di database +## +DAVERAGE = DB.MEDIA ## Restituisce la media di voci del database selezionate +DCOUNT = DB.CONTA.NUMERI ## Conta le celle di un database contenenti numeri +DCOUNTA = DB.CONTA.VALORI ## Conta le celle non vuote in un database +DGET = DB.VALORI ## Estrae da un database un singolo record che soddisfa i criteri specificati +DMAX = DB.MAX ## Restituisce il valore massimo dalle voci selezionate in un database +DMIN = DB.MIN ## Restituisce il valore minimo dalle voci di un database selezionate +DPRODUCT = DB.PRODOTTO ## Moltiplica i valori in un determinato campo di record che soddisfano i criteri del database +DSTDEV = DB.DEV.ST ## Restituisce una stima della deviazione standard sulla base di un campione di voci di un database selezionate +DSTDEVP = DB.DEV.ST.POP ## Calcola la deviazione standard sulla base di tutte le voci di un database selezionate +DSUM = DB.SOMMA ## Aggiunge i numeri nel campo colonna di record del database che soddisfa determinati criteri +DVAR = DB.VAR ## Restituisce una stima della varianza sulla base di un campione da voci di un database selezionate +DVARP = DB.VAR.POP ## Calcola la varianza sulla base di tutte le voci di un database selezionate + + +## +## Date and time functions Funzioni data e ora +## +DATE = DATA ## Restituisce il numero seriale di una determinata data +DATEVALUE = DATA.VALORE ## Converte una data sotto forma di testo in un numero seriale +DAY = GIORNO ## Converte un numero seriale in un giorno del mese +DAYS360 = GIORNO360 ## Calcola il numero di giorni compreso tra due date basandosi su un anno di 360 giorni +EDATE = DATA.MESE ## Restituisce il numero seriale della data che rappresenta il numero di mesi prima o dopo la data di inizio +EOMONTH = FINE.MESE ## Restituisce il numero seriale dell'ultimo giorno del mese, prima o dopo un determinato numero di mesi +HOUR = ORA ## Converte un numero seriale in un'ora +MINUTE = MINUTO ## Converte un numero seriale in un minuto +MONTH = MESE ## Converte un numero seriale in un mese +NETWORKDAYS = GIORNI.LAVORATIVI.TOT ## Restituisce il numero di tutti i giorni lavorativi compresi fra due date +NOW = ADESSO ## Restituisce il numero seriale della data e dell'ora corrente +SECOND = SECONDO ## Converte un numero seriale in un secondo +TIME = ORARIO ## Restituisce il numero seriale di una determinata ora +TIMEVALUE = ORARIO.VALORE ## Converte un orario in forma di testo in un numero seriale +TODAY = OGGI ## Restituisce il numero seriale relativo alla data odierna +WEEKDAY = GIORNO.SETTIMANA ## Converte un numero seriale in un giorno della settimana +WEEKNUM = NUM.SETTIMANA ## Converte un numero seriale in un numero che rappresenta la posizione numerica di una settimana nell'anno +WORKDAY = GIORNO.LAVORATIVO ## Restituisce il numero della data prima o dopo un determinato numero di giorni lavorativi +YEAR = ANNO ## Converte un numero seriale in un anno +YEARFRAC = FRAZIONE.ANNO ## Restituisce la frazione dell'anno che rappresenta il numero dei giorni compresi tra una data_ iniziale e una data_finale + + +## +## Engineering functions Funzioni ingegneristiche +## +BESSELI = BESSEL.I ## Restituisce la funzione di Bessel modificata In(x) +BESSELJ = BESSEL.J ## Restituisce la funzione di Bessel Jn(x) +BESSELK = BESSEL.K ## Restituisce la funzione di Bessel modificata Kn(x) +BESSELY = BESSEL.Y ## Restituisce la funzione di Bessel Yn(x) +BIN2DEC = BINARIO.DECIMALE ## Converte un numero binario in decimale +BIN2HEX = BINARIO.HEX ## Converte un numero binario in esadecimale +BIN2OCT = BINARIO.OCT ## Converte un numero binario in ottale +COMPLEX = COMPLESSO ## Converte i coefficienti reali e immaginari in numeri complessi +CONVERT = CONVERTI ## Converte un numero da un sistema di misura in un altro +DEC2BIN = DECIMALE.BINARIO ## Converte un numero decimale in binario +DEC2HEX = DECIMALE.HEX ## Converte un numero decimale in esadecimale +DEC2OCT = DECIMALE.OCT ## Converte un numero decimale in ottale +DELTA = DELTA ## Verifica se due valori sono uguali +ERF = FUNZ.ERRORE ## Restituisce la funzione di errore +ERFC = FUNZ.ERRORE.COMP ## Restituisce la funzione di errore complementare +GESTEP = SOGLIA ## Verifica se un numero è maggiore del valore di soglia +HEX2BIN = HEX.BINARIO ## Converte un numero esadecimale in binario +HEX2DEC = HEX.DECIMALE ## Converte un numero esadecimale in decimale +HEX2OCT = HEX.OCT ## Converte un numero esadecimale in ottale +IMABS = COMP.MODULO ## Restituisce il valore assoluto (modulo) di un numero complesso +IMAGINARY = COMP.IMMAGINARIO ## Restituisce il coefficiente immaginario di un numero complesso +IMARGUMENT = COMP.ARGOMENTO ## Restituisce l'argomento theta, un angolo espresso in radianti +IMCONJUGATE = COMP.CONIUGATO ## Restituisce il complesso coniugato del numero complesso +IMCOS = COMP.COS ## Restituisce il coseno di un numero complesso +IMDIV = COMP.DIV ## Restituisce il quoziente di due numeri complessi +IMEXP = COMP.EXP ## Restituisce il valore esponenziale di un numero complesso +IMLN = COMP.LN ## Restituisce il logaritmo naturale di un numero complesso +IMLOG10 = COMP.LOG10 ## Restituisce il logaritmo in base 10 di un numero complesso +IMLOG2 = COMP.LOG2 ## Restituisce un logaritmo in base 2 di un numero complesso +IMPOWER = COMP.POTENZA ## Restituisce il numero complesso elevato a una potenza intera +IMPRODUCT = COMP.PRODOTTO ## Restituisce il prodotto di numeri complessi compresi tra 2 e 29 +IMREAL = COMP.PARTE.REALE ## Restituisce il coefficiente reale di un numero complesso +IMSIN = COMP.SEN ## Restituisce il seno di un numero complesso +IMSQRT = COMP.RADQ ## Restituisce la radice quadrata di un numero complesso +IMSUB = COMP.DIFF ## Restituisce la differenza fra due numeri complessi +IMSUM = COMP.SOMMA ## Restituisce la somma di numeri complessi +OCT2BIN = OCT.BINARIO ## Converte un numero ottale in binario +OCT2DEC = OCT.DECIMALE ## Converte un numero ottale in decimale +OCT2HEX = OCT.HEX ## Converte un numero ottale in esadecimale + + +## +## Financial functions Funzioni finanziarie +## +ACCRINT = INT.MATURATO.PER ## Restituisce l'interesse maturato di un titolo che paga interessi periodici +ACCRINTM = INT.MATURATO.SCAD ## Restituisce l'interesse maturato di un titolo che paga interessi alla scadenza +AMORDEGRC = AMMORT.DEGR ## Restituisce l'ammortamento per ogni periodo contabile utilizzando un coefficiente di ammortamento +AMORLINC = AMMORT.PER ## Restituisce l'ammortamento per ogni periodo contabile +COUPDAYBS = GIORNI.CED.INIZ.LIQ ## Restituisce il numero dei giorni che vanno dall'inizio del periodo di durata della cedola alla data di liquidazione +COUPDAYS = GIORNI.CED ## Restituisce il numero dei giorni relativi al periodo della cedola che contiene la data di liquidazione +COUPDAYSNC = GIORNI.CED.NUOVA ## Restituisce il numero di giorni che vanno dalla data di liquidazione alla data della cedola successiva +COUPNCD = DATA.CED.SUCC ## Restituisce un numero che rappresenta la data della cedola successiva alla data di liquidazione +COUPNUM = NUM.CED ## Restituisce il numero di cedole pagabili fra la data di liquidazione e la data di scadenza +COUPPCD = DATA.CED.PREC ## Restituisce un numero che rappresenta la data della cedola precedente alla data di liquidazione +CUMIPMT = INT.CUMUL ## Restituisce l'interesse cumulativo pagato fra due periodi +CUMPRINC = CAP.CUM ## Restituisce il capitale cumulativo pagato per estinguere un debito fra due periodi +DB = DB ## Restituisce l'ammortamento di un bene per un periodo specificato utilizzando il metodo di ammortamento a quote fisse decrescenti +DDB = AMMORT ## Restituisce l'ammortamento di un bene per un periodo specificato utilizzando il metodo di ammortamento a doppie quote decrescenti o altri metodi specificati +DISC = TASSO.SCONTO ## Restituisce il tasso di sconto per un titolo +DOLLARDE = VALUTA.DEC ## Converte un prezzo valuta, espresso come frazione, in prezzo valuta, espresso come numero decimale +DOLLARFR = VALUTA.FRAZ ## Converte un prezzo valuta, espresso come numero decimale, in prezzo valuta, espresso come frazione +DURATION = DURATA ## Restituisce la durata annuale di un titolo con i pagamenti di interesse periodico +EFFECT = EFFETTIVO ## Restituisce l'effettivo tasso di interesse annuo +FV = VAL.FUT ## Restituisce il valore futuro di un investimento +FVSCHEDULE = VAL.FUT.CAPITALE ## Restituisce il valore futuro di un capitale iniziale dopo aver applicato una serie di tassi di interesse composti +INTRATE = TASSO.INT ## Restituisce il tasso di interesse per un titolo interamente investito +IPMT = INTERESSI ## Restituisce il valore degli interessi per un investimento relativo a un periodo specifico +IRR = TIR.COST ## Restituisce il tasso di rendimento interno per una serie di flussi di cassa +ISPMT = INTERESSE.RATA ## Calcola l'interesse di un investimento pagato durante un periodo specifico +MDURATION = DURATA.M ## Restituisce la durata Macauley modificata per un titolo con un valore presunto di € 100 +MIRR = TIR.VAR ## Restituisce il tasso di rendimento interno in cui i flussi di cassa positivi e negativi sono finanziati a tassi differenti +NOMINAL = NOMINALE ## Restituisce il tasso di interesse nominale annuale +NPER = NUM.RATE ## Restituisce un numero di periodi relativi a un investimento +NPV = VAN ## Restituisce il valore attuale netto di un investimento basato su una serie di flussi di cassa periodici e sul tasso di sconto +ODDFPRICE = PREZZO.PRIMO.IRR ## Restituisce il prezzo di un titolo dal valore nominale di € 100 avente il primo periodo di durata irregolare +ODDFYIELD = REND.PRIMO.IRR ## Restituisce il rendimento di un titolo avente il primo periodo di durata irregolare +ODDLPRICE = PREZZO.ULTIMO.IRR ## Restituisce il prezzo di un titolo dal valore nominale di € 100 avente l'ultimo periodo di durata irregolare +ODDLYIELD = REND.ULTIMO.IRR ## Restituisce il rendimento di un titolo avente l'ultimo periodo di durata irregolare +PMT = RATA ## Restituisce il pagamento periodico di una rendita annua +PPMT = P.RATA ## Restituisce il pagamento sul capitale di un investimento per un dato periodo +PRICE = PREZZO ## Restituisce il prezzo di un titolo dal valore nominale di € 100 che paga interessi periodici +PRICEDISC = PREZZO.SCONT ## Restituisce il prezzo di un titolo scontato dal valore nominale di € 100 +PRICEMAT = PREZZO.SCAD ## Restituisce il prezzo di un titolo dal valore nominale di € 100 che paga gli interessi alla scadenza +PV = VA ## Restituisce il valore attuale di un investimento +RATE = TASSO ## Restituisce il tasso di interesse per un periodo di un'annualità +RECEIVED = RICEV.SCAD ## Restituisce l'ammontare ricevuto alla scadenza di un titolo interamente investito +SLN = AMMORT.COST ## Restituisce l'ammortamento a quote costanti di un bene per un singolo periodo +SYD = AMMORT.ANNUO ## Restituisce l'ammortamento a somma degli anni di un bene per un periodo specificato +TBILLEQ = BOT.EQUIV ## Restituisce il rendimento equivalente ad un'obbligazione per un Buono ordinario del Tesoro +TBILLPRICE = BOT.PREZZO ## Restituisce il prezzo di un Buono del Tesoro dal valore nominale di € 100 +TBILLYIELD = BOT.REND ## Restituisce il rendimento di un Buono del Tesoro +VDB = AMMORT.VAR ## Restituisce l'ammortamento di un bene per un periodo specificato o parziale utilizzando il metodo a doppie quote proporzionali ai valori residui +XIRR = TIR.X ## Restituisce il tasso di rendimento interno di un impiego di flussi di cassa +XNPV = VAN.X ## Restituisce il valore attuale netto di un impiego di flussi di cassa non necessariamente periodici +YIELD = REND ## Restituisce il rendimento di un titolo che frutta interessi periodici +YIELDDISC = REND.TITOLI.SCONT ## Restituisce il rendimento annuale di un titolo scontato, ad esempio un Buono del Tesoro +YIELDMAT = REND.SCAD ## Restituisce il rendimento annuo di un titolo che paga interessi alla scadenza + + +## +## Information functions Funzioni relative alle informazioni +## +CELL = CELLA ## Restituisce le informazioni sulla formattazione, la posizione o i contenuti di una cella +ERROR.TYPE = ERRORE.TIPO ## Restituisce un numero che corrisponde a un tipo di errore +INFO = INFO ## Restituisce le informazioni sull'ambiente operativo corrente +ISBLANK = VAL.VUOTO ## Restituisce VERO se il valore è vuoto +ISERR = VAL.ERR ## Restituisce VERO se il valore è un valore di errore qualsiasi tranne #N/D +ISERROR = VAL.ERRORE ## Restituisce VERO se il valore è un valore di errore qualsiasi +ISEVEN = VAL.PARI ## Restituisce VERO se il numero è pari +ISLOGICAL = VAL.LOGICO ## Restituisce VERO se il valore è un valore logico +ISNA = VAL.NON.DISP ## Restituisce VERO se il valore è un valore di errore #N/D +ISNONTEXT = VAL.NON.TESTO ## Restituisce VERO se il valore non è in formato testo +ISNUMBER = VAL.NUMERO ## Restituisce VERO se il valore è un numero +ISODD = VAL.DISPARI ## Restituisce VERO se il numero è dispari +ISREF = VAL.RIF ## Restituisce VERO se il valore è un riferimento +ISTEXT = VAL.TESTO ## Restituisce VERO se il valore è in formato testo +N = NUM ## Restituisce un valore convertito in numero +NA = NON.DISP ## Restituisce il valore di errore #N/D +TYPE = TIPO ## Restituisce un numero che indica il tipo di dati relativi a un valore + + +## +## Logical functions Funzioni logiche +## +AND = E ## Restituisce VERO se tutti gli argomenti sono VERO +FALSE = FALSO ## Restituisce il valore logico FALSO +IF = SE ## Specifica un test logico da eseguire +IFERROR = SE.ERRORE ## Restituisce un valore specificato se una formula fornisce un errore come risultato; in caso contrario, restituisce il risultato della formula +NOT = NON ## Inverte la logica degli argomenti +OR = O ## Restituisce VERO se un argomento qualsiasi è VERO +TRUE = VERO ## Restituisce il valore logico VERO + + +## +## Lookup and reference functions Funzioni di ricerca e di riferimento +## +ADDRESS = INDIRIZZO ## Restituisce un riferimento come testo in una singola cella di un foglio di lavoro +AREAS = AREE ## Restituisce il numero di aree in un riferimento +CHOOSE = SCEGLI ## Sceglie un valore da un elenco di valori +COLUMN = RIF.COLONNA ## Restituisce il numero di colonna di un riferimento +COLUMNS = COLONNE ## Restituisce il numero di colonne in un riferimento +HLOOKUP = CERCA.ORIZZ ## Effettua una ricerca nella riga superiore di una matrice e restituisce il valore della cella specificata +HYPERLINK = COLLEG.IPERTESTUALE ## Crea un collegamento che apre un documento memorizzato in un server di rete, una rete Intranet o Internet +INDEX = INDICE ## Utilizza un indice per scegliere un valore da un riferimento o da una matrice +INDIRECT = INDIRETTO ## Restituisce un riferimento specificato da un valore testo +LOOKUP = CERCA ## Ricerca i valori in un vettore o in una matrice +MATCH = CONFRONTA ## Ricerca i valori in un riferimento o in una matrice +OFFSET = SCARTO ## Restituisce uno scarto di riferimento da un riferimento dato +ROW = RIF.RIGA ## Restituisce il numero di riga di un riferimento +ROWS = RIGHE ## Restituisce il numero delle righe in un riferimento +RTD = DATITEMPOREALE ## Recupera dati in tempo reale da un programma che supporta l'automazione COM (automazione: Metodo per utilizzare gli oggetti di un'applicazione da un'altra applicazione o da un altro strumento di sviluppo. Precedentemente nota come automazione OLE, l'automazione è uno standard del settore e una caratteristica del modello COM (Component Object Model).) +TRANSPOSE = MATR.TRASPOSTA ## Restituisce la trasposizione di una matrice +VLOOKUP = CERCA.VERT ## Effettua una ricerca nella prima colonna di una matrice e si sposta attraverso la riga per restituire il valore di una cella + + +## +## Math and trigonometry functions Funzioni matematiche e trigonometriche +## +ABS = ASS ## Restituisce il valore assoluto di un numero. +ACOS = ARCCOS ## Restituisce l'arcocoseno di un numero +ACOSH = ARCCOSH ## Restituisce l'inverso del coseno iperbolico di un numero +ASIN = ARCSEN ## Restituisce l'arcoseno di un numero +ASINH = ARCSENH ## Restituisce l'inverso del seno iperbolico di un numero +ATAN = ARCTAN ## Restituisce l'arcotangente di un numero +ATAN2 = ARCTAN.2 ## Restituisce l'arcotangente delle coordinate x e y specificate +ATANH = ARCTANH ## Restituisce l'inverso della tangente iperbolica di un numero +CEILING = ARROTONDA.ECCESSO ## Arrotonda un numero per eccesso all'intero più vicino o al multiplo più vicino a peso +COMBIN = COMBINAZIONE ## Restituisce il numero di combinazioni possibili per un numero assegnato di elementi +COS = COS ## Restituisce il coseno dell'angolo specificato +COSH = COSH ## Restituisce il coseno iperbolico di un numero +DEGREES = GRADI ## Converte i radianti in gradi +EVEN = PARI ## Arrotonda il valore assoluto di un numero per eccesso al più vicino intero pari +EXP = ESP ## Restituisce il numero e elevato alla potenza di num +FACT = FATTORIALE ## Restituisce il fattoriale di un numero +FACTDOUBLE = FATT.DOPPIO ## Restituisce il fattoriale doppio di un numero +FLOOR = ARROTONDA.DIFETTO ## Arrotonda un numero per difetto al multiplo più vicino a zero +GCD = MCD ## Restituisce il massimo comune divisore +INT = INT ## Arrotonda un numero per difetto al numero intero più vicino +LCM = MCM ## Restituisce il minimo comune multiplo +LN = LN ## Restituisce il logaritmo naturale di un numero +LOG = LOG ## Restituisce il logaritmo di un numero in una specificata base +LOG10 = LOG10 ## Restituisce il logaritmo in base 10 di un numero +MDETERM = MATR.DETERM ## Restituisce il determinante di una matrice +MINVERSE = MATR.INVERSA ## Restituisce l'inverso di una matrice +MMULT = MATR.PRODOTTO ## Restituisce il prodotto di due matrici +MOD = RESTO ## Restituisce il resto della divisione +MROUND = ARROTONDA.MULTIPLO ## Restituisce un numero arrotondato al multiplo desiderato +MULTINOMIAL = MULTINOMIALE ## Restituisce il multinomiale di un insieme di numeri +ODD = DISPARI ## Arrotonda un numero per eccesso al più vicino intero dispari +PI = PI.GRECO ## Restituisce il valore di pi greco +POWER = POTENZA ## Restituisce il risultato di un numero elevato a potenza +PRODUCT = PRODOTTO ## Moltiplica i suoi argomenti +QUOTIENT = QUOZIENTE ## Restituisce la parte intera di una divisione +RADIANS = RADIANTI ## Converte i gradi in radianti +RAND = CASUALE ## Restituisce un numero casuale compreso tra 0 e 1 +RANDBETWEEN = CASUALE.TRA ## Restituisce un numero casuale compreso tra i numeri specificati +ROMAN = ROMANO ## Restituisce il numero come numero romano sotto forma di testo +ROUND = ARROTONDA ## Arrotonda il numero al numero di cifre specificato +ROUNDDOWN = ARROTONDA.PER.DIF ## Arrotonda il valore assoluto di un numero per difetto +ROUNDUP = ARROTONDA.PER.ECC ## Arrotonda il valore assoluto di un numero per eccesso +SERIESSUM = SOMMA.SERIE ## Restituisce la somma di una serie di potenze in base alla formula +SIGN = SEGNO ## Restituisce il segno di un numero +SIN = SEN ## Restituisce il seno di un dato angolo +SINH = SENH ## Restituisce il seno iperbolico di un numero +SQRT = RADQ ## Restituisce una radice quadrata +SQRTPI = RADQ.PI.GRECO ## Restituisce la radice quadrata di un numero (numero * pi greco) +SUBTOTAL = SUBTOTALE ## Restituisce un subtotale in un elenco o in un database +SUM = SOMMA ## Somma i suoi argomenti +SUMIF = SOMMA.SE ## Somma le celle specificate da un dato criterio +SUMIFS = SOMMA.PIÙ.SE ## Somma le celle in un intervallo che soddisfano più criteri +SUMPRODUCT = MATR.SOMMA.PRODOTTO ## Restituisce la somma dei prodotti dei componenti corrispondenti della matrice +SUMSQ = SOMMA.Q ## Restituisce la somma dei quadrati degli argomenti +SUMX2MY2 = SOMMA.DIFF.Q ## Restituisce la somma della differenza dei quadrati dei corrispondenti elementi in due matrici +SUMX2PY2 = SOMMA.SOMMA.Q ## Restituisce la somma della somma dei quadrati dei corrispondenti elementi in due matrici +SUMXMY2 = SOMMA.Q.DIFF ## Restituisce la somma dei quadrati delle differenze dei corrispondenti elementi in due matrici +TAN = TAN ## Restituisce la tangente di un numero +TANH = TANH ## Restituisce la tangente iperbolica di un numero +TRUNC = TRONCA ## Tronca la parte decimale di un numero + + +## +## Statistical functions Funzioni statistiche +## +AVEDEV = MEDIA.DEV ## Restituisce la media delle deviazioni assolute delle coordinate rispetto alla loro media +AVERAGE = MEDIA ## Restituisce la media degli argomenti +AVERAGEA = MEDIA.VALORI ## Restituisce la media degli argomenti, inclusi i numeri, il testo e i valori logici +AVERAGEIF = MEDIA.SE ## Restituisce la media aritmetica di tutte le celle in un intervallo che soddisfano un determinato criterio +AVERAGEIFS = MEDIA.PIÙ.SE ## Restituisce la media aritmetica di tutte le celle che soddisfano più criteri +BETADIST = DISTRIB.BETA ## Restituisce la funzione di distribuzione cumulativa beta +BETAINV = INV.BETA ## Restituisce l'inverso della funzione di distribuzione cumulativa per una distribuzione beta specificata +BINOMDIST = DISTRIB.BINOM ## Restituisce la distribuzione binomiale per il termine individuale +CHIDIST = DISTRIB.CHI ## Restituisce la probabilità a una coda per la distribuzione del chi quadrato +CHIINV = INV.CHI ## Restituisce l'inverso della probabilità ad una coda per la distribuzione del chi quadrato +CHITEST = TEST.CHI ## Restituisce il test per l'indipendenza +CONFIDENCE = CONFIDENZA ## Restituisce l'intervallo di confidenza per una popolazione +CORREL = CORRELAZIONE ## Restituisce il coefficiente di correlazione tra due insiemi di dati +COUNT = CONTA.NUMERI ## Conta la quantità di numeri nell'elenco di argomenti +COUNTA = CONTA.VALORI ## Conta il numero di valori nell'elenco di argomenti +COUNTBLANK = CONTA.VUOTE ## Conta il numero di celle vuote all'interno di un intervallo +COUNTIF = CONTA.SE ## Conta il numero di celle all'interno di un intervallo che soddisfa i criteri specificati +COUNTIFS = CONTA.PIÙ.SE ## Conta il numero di celle in un intervallo che soddisfano più criteri. +COVAR = COVARIANZA ## Calcola la covarianza, la media dei prodotti delle deviazioni accoppiate +CRITBINOM = CRIT.BINOM ## Restituisce il più piccolo valore per il quale la distribuzione cumulativa binomiale risulta maggiore o uguale ad un valore di criterio +DEVSQ = DEV.Q ## Restituisce la somma dei quadrati delle deviazioni +EXPONDIST = DISTRIB.EXP ## Restituisce la distribuzione esponenziale +FDIST = DISTRIB.F ## Restituisce la distribuzione di probabilità F +FINV = INV.F ## Restituisce l'inverso della distribuzione della probabilità F +FISHER = FISHER ## Restituisce la trasformazione di Fisher +FISHERINV = INV.FISHER ## Restituisce l'inverso della trasformazione di Fisher +FORECAST = PREVISIONE ## Restituisce i valori lungo una tendenza lineare +FREQUENCY = FREQUENZA ## Restituisce la distribuzione di frequenza come matrice verticale +FTEST = TEST.F ## Restituisce il risultato di un test F +GAMMADIST = DISTRIB.GAMMA ## Restituisce la distribuzione gamma +GAMMAINV = INV.GAMMA ## Restituisce l'inverso della distribuzione cumulativa gamma +GAMMALN = LN.GAMMA ## Restituisce il logaritmo naturale della funzione gamma, G(x) +GEOMEAN = MEDIA.GEOMETRICA ## Restituisce la media geometrica +GROWTH = CRESCITA ## Restituisce i valori lungo una linea di tendenza esponenziale +HARMEAN = MEDIA.ARMONICA ## Restituisce la media armonica +HYPGEOMDIST = DISTRIB.IPERGEOM ## Restituisce la distribuzione ipergeometrica +INTERCEPT = INTERCETTA ## Restituisce l'intercetta della retta di regressione lineare +KURT = CURTOSI ## Restituisce la curtosi di un insieme di dati +LARGE = GRANDE ## Restituisce il k-esimo valore più grande in un insieme di dati +LINEST = REGR.LIN ## Restituisce i parametri di una tendenza lineare +LOGEST = REGR.LOG ## Restituisce i parametri di una linea di tendenza esponenziale +LOGINV = INV.LOGNORM ## Restituisce l'inverso di una distribuzione lognormale +LOGNORMDIST = DISTRIB.LOGNORM ## Restituisce la distribuzione lognormale cumulativa +MAX = MAX ## Restituisce il valore massimo in un elenco di argomenti +MAXA = MAX.VALORI ## Restituisce il valore massimo in un elenco di argomenti, inclusi i numeri, il testo e i valori logici +MEDIAN = MEDIANA ## Restituisce la mediana dei numeri specificati +MIN = MIN ## Restituisce il valore minimo in un elenco di argomenti +MINA = MIN.VALORI ## Restituisce il più piccolo valore in un elenco di argomenti, inclusi i numeri, il testo e i valori logici +MODE = MODA ## Restituisce il valore più comune in un insieme di dati +NEGBINOMDIST = DISTRIB.BINOM.NEG ## Restituisce la distribuzione binomiale negativa +NORMDIST = DISTRIB.NORM ## Restituisce la distribuzione cumulativa normale +NORMINV = INV.NORM ## Restituisce l'inverso della distribuzione cumulativa normale standard +NORMSDIST = DISTRIB.NORM.ST ## Restituisce la distribuzione cumulativa normale standard +NORMSINV = INV.NORM.ST ## Restituisce l'inverso della distribuzione cumulativa normale +PEARSON = PEARSON ## Restituisce il coefficiente del momento di correlazione di Pearson +PERCENTILE = PERCENTILE ## Restituisce il k-esimo dato percentile di valori in un intervallo +PERCENTRANK = PERCENT.RANGO ## Restituisce il rango di un valore in un insieme di dati come percentuale +PERMUT = PERMUTAZIONE ## Restituisce il numero delle permutazioni per un determinato numero di oggetti +POISSON = POISSON ## Restituisce la distribuzione di Poisson +PROB = PROBABILITÀ ## Calcola la probabilità che dei valori in un intervallo siano compresi tra due limiti +QUARTILE = QUARTILE ## Restituisce il quartile di un insieme di dati +RANK = RANGO ## Restituisce il rango di un numero in un elenco di numeri +RSQ = RQ ## Restituisce la radice quadrata del coefficiente di momento di correlazione di Pearson +SKEW = ASIMMETRIA ## Restituisce il grado di asimmetria di una distribuzione +SLOPE = PENDENZA ## Restituisce la pendenza di una retta di regressione lineare +SMALL = PICCOLO ## Restituisce il k-esimo valore più piccolo in un insieme di dati +STANDARDIZE = NORMALIZZA ## Restituisce un valore normalizzato +STDEV = DEV.ST ## Restituisce una stima della deviazione standard sulla base di un campione +STDEVA = DEV.ST.VALORI ## Restituisce una stima della deviazione standard sulla base di un campione, inclusi i numeri, il testo e i valori logici +STDEVP = DEV.ST.POP ## Calcola la deviazione standard sulla base di un'intera popolazione +STDEVPA = DEV.ST.POP.VALORI ## Calcola la deviazione standard sulla base sull'intera popolazione, inclusi i numeri, il testo e i valori logici +STEYX = ERR.STD.YX ## Restituisce l'errore standard del valore previsto per y per ogni valore x nella regressione +TDIST = DISTRIB.T ## Restituisce la distribuzione t di Student +TINV = INV.T ## Restituisce l'inversa della distribuzione t di Student +TREND = TENDENZA ## Restituisce i valori lungo una linea di tendenza lineare +TRIMMEAN = MEDIA.TRONCATA ## Restituisce la media della parte interna di un insieme di dati +TTEST = TEST.T ## Restituisce la probabilità associata ad un test t di Student +VAR = VAR ## Stima la varianza sulla base di un campione +VARA = VAR.VALORI ## Stima la varianza sulla base di un campione, inclusi i numeri, il testo e i valori logici +VARP = VAR.POP ## Calcola la varianza sulla base dell'intera popolazione +VARPA = VAR.POP.VALORI ## Calcola la deviazione standard sulla base sull'intera popolazione, inclusi i numeri, il testo e i valori logici +WEIBULL = WEIBULL ## Restituisce la distribuzione di Weibull +ZTEST = TEST.Z ## Restituisce il valore di probabilità a una coda per un test z + + +## +## Text functions Funzioni di testo +## +ASC = ASC ## Modifica le lettere inglesi o il katakana a doppio byte all'interno di una stringa di caratteri in caratteri a singolo byte +BAHTTEXT = BAHTTESTO ## Converte un numero in testo, utilizzando il formato valuta ß (baht) +CHAR = CODICE.CARATT ## Restituisce il carattere specificato dal numero di codice +CLEAN = LIBERA ## Elimina dal testo tutti i caratteri che non è possibile stampare +CODE = CODICE ## Restituisce il codice numerico del primo carattere di una stringa di testo +CONCATENATE = CONCATENA ## Unisce diversi elementi di testo in un unico elemento di testo +DOLLAR = VALUTA ## Converte un numero in testo, utilizzando il formato valuta € (euro) +EXACT = IDENTICO ## Verifica se due valori di testo sono uguali +FIND = TROVA ## Rileva un valore di testo all'interno di un altro (distinzione tra maiuscole e minuscole) +FINDB = TROVA.B ## Rileva un valore di testo all'interno di un altro (distinzione tra maiuscole e minuscole) +FIXED = FISSO ## Formatta un numero come testo con un numero fisso di decimali +JIS = ORDINAMENTO.JIS ## Modifica le lettere inglesi o i caratteri katakana a byte singolo all'interno di una stringa di caratteri in caratteri a byte doppio. +LEFT = SINISTRA ## Restituisce il carattere più a sinistra di un valore di testo +LEFTB = SINISTRA.B ## Restituisce il carattere più a sinistra di un valore di testo +LEN = LUNGHEZZA ## Restituisce il numero di caratteri di una stringa di testo +LENB = LUNB ## Restituisce il numero di caratteri di una stringa di testo +LOWER = MINUSC ## Converte il testo in lettere minuscole +MID = MEDIA ## Restituisce un numero specifico di caratteri di una stringa di testo a partire dalla posizione specificata +MIDB = MEDIA.B ## Restituisce un numero specifico di caratteri di una stringa di testo a partire dalla posizione specificata +PHONETIC = FURIGANA ## Estrae i caratteri fonetici (furigana) da una stringa di testo. +PROPER = MAIUSC.INIZ ## Converte in maiuscolo la prima lettera di ogni parola di un valore di testo +REPLACE = RIMPIAZZA ## Sostituisce i caratteri all'interno di un testo +REPLACEB = SOSTITUISCI.B ## Sostituisce i caratteri all'interno di un testo +REPT = RIPETI ## Ripete un testo per un dato numero di volte +RIGHT = DESTRA ## Restituisce il carattere più a destra di un valore di testo +RIGHTB = DESTRA.B ## Restituisce il carattere più a destra di un valore di testo +SEARCH = RICERCA ## Rileva un valore di testo all'interno di un altro (non è sensibile alle maiuscole e minuscole) +SEARCHB = CERCA.B ## Rileva un valore di testo all'interno di un altro (non è sensibile alle maiuscole e minuscole) +SUBSTITUTE = SOSTITUISCI ## Sostituisce il nuovo testo al testo contenuto in una stringa +T = T ## Converte gli argomenti in testo +TEXT = TESTO ## Formatta un numero e lo converte in testo +TRIM = ANNULLA.SPAZI ## Elimina gli spazi dal testo +UPPER = MAIUSC ## Converte il testo in lettere maiuscole +VALUE = VALORE ## Converte un argomento di testo in numero diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/nl/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/nl/_notes/dwsync.xml new file mode 100644 index 0000000..ef65b55 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/nl/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461867930810" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461869369845" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/nl/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/nl/config new file mode 100644 index 0000000..48dcc15 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/nl/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = € + + +## +## Excel Error Codes (For future use) +## +NULL = #LEEG! +DIV0 = #DEEL/0! +VALUE = #WAARDE! +REF = #VERW! +NAME = #NAAM? +NUM = #GETAL! +NA = #N/B diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/nl/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/nl/functions new file mode 100644 index 0000000..573600a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/nl/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Automatiseringsfuncties en functies in invoegtoepassingen +## +GETPIVOTDATA = DRAAITABEL.OPHALEN ## Geeft gegevens uit een draaitabelrapport als resultaat + + +## +## Cube functions Kubusfuncties +## +CUBEKPIMEMBER = KUBUSKPILID ## Retourneert de naam, eigenschap en waarde van een KPI (prestatie-indicator) en geeft de naam en de eigenschap in de cel weer. Een KPI is een meetbare waarde, zoals de maandelijkse brutowinst of de omzet per kwartaal per werknemer, die wordt gebruikt om de prestaties van een organisatie te bewaken +CUBEMEMBER = KUBUSLID ## Retourneert een lid of tupel in een kubushiërarchie. Wordt gebruikt om te controleren of het lid of de tupel in de kubus aanwezig is +CUBEMEMBERPROPERTY = KUBUSLIDEIGENSCHAP ## Retourneert de waarde van een lideigenschap in de kubus. Wordt gebruikt om te controleren of de lidnaam in de kubus bestaat en retourneert de opgegeven eigenschap voor dit lid +CUBERANKEDMEMBER = KUBUSGERANGCHIKTLID ## Retourneert het zoveelste, gerangschikte lid in een set. Wordt gebruikt om een of meer elementen in een set te retourneren, zoals de tien beste verkopers of de tien beste studenten +CUBESET = KUBUSSET ## Definieert een berekende set leden of tupels door een ingestelde expressie naar de kubus op de server te sturen, alwaar de set wordt gemaakt en vervolgens wordt geretourneerd naar Microsoft Office Excel +CUBESETCOUNT = KUBUSSETAANTAL ## Retourneert het aantal onderdelen in een set +CUBEVALUE = KUBUSWAARDE ## Retourneert een samengestelde waarde van een kubus + + +## +## Database functions Databasefuncties +## +DAVERAGE = DBGEMIDDELDE ## Berekent de gemiddelde waarde in geselecteerde databasegegevens +DCOUNT = DBAANTAL ## Telt de cellen met getallen in een database +DCOUNTA = DBAANTALC ## Telt de niet-lege cellen in een database +DGET = DBLEZEN ## Retourneert één record dat voldoet aan de opgegeven criteria uit een database +DMAX = DBMAX ## Retourneert de maximumwaarde in de geselecteerde databasegegevens +DMIN = DBMIN ## Retourneert de minimumwaarde in de geselecteerde databasegegevens +DPRODUCT = DBPRODUCT ## Vermenigvuldigt de waarden in een bepaald veld van de records die voldoen aan de criteria in een database +DSTDEV = DBSTDEV ## Maakt een schatting van de standaarddeviatie op basis van een steekproef uit geselecteerde databasegegevens +DSTDEVP = DBSTDEVP ## Berekent de standaarddeviatie op basis van de volledige populatie van geselecteerde databasegegevens +DSUM = DBSOM ## Telt de getallen uit een kolom records in de database op die voldoen aan de criteria +DVAR = DBVAR ## Maakt een schatting van de variantie op basis van een steekproef uit geselecteerde databasegegevens +DVARP = DBVARP ## Berekent de variantie op basis van de volledige populatie van geselecteerde databasegegevens + + +## +## Date and time functions Datum- en tijdfuncties +## +DATE = DATUM ## Geeft als resultaat het seriële getal van een opgegeven datum +DATEVALUE = DATUMWAARDE ## Converteert een datum in de vorm van tekst naar een serieel getal +DAY = DAG ## Converteert een serieel getal naar een dag van de maand +DAYS360 = DAGEN360 ## Berekent het aantal dagen tussen twee datums op basis van een jaar met 360 dagen +EDATE = ZELFDE.DAG ## Geeft als resultaat het seriële getal van een datum die het opgegeven aantal maanden voor of na de begindatum ligt +EOMONTH = LAATSTE.DAG ## Geeft als resultaat het seriële getal van de laatste dag van de maand voor of na het opgegeven aantal maanden +HOUR = UUR ## Converteert een serieel getal naar uren +MINUTE = MINUUT ## Converteert een serieel naar getal minuten +MONTH = MAAND ## Converteert een serieel getal naar een maand +NETWORKDAYS = NETTO.WERKDAGEN ## Geeft als resultaat het aantal hele werkdagen tussen twee datums +NOW = NU ## Geeft als resultaat het seriële getal van de huidige datum en tijd +SECOND = SECONDE ## Converteert een serieel getal naar seconden +TIME = TIJD ## Geeft als resultaat het seriële getal van een bepaald tijdstip +TIMEVALUE = TIJDWAARDE ## Converteert de tijd in de vorm van tekst naar een serieel getal +TODAY = VANDAAG ## Geeft als resultaat het seriële getal van de huidige datum +WEEKDAY = WEEKDAG ## Converteert een serieel getal naar een weekdag +WEEKNUM = WEEKNUMMER ## Converteert een serieel getal naar een weeknummer +WORKDAY = WERKDAG ## Geeft als resultaat het seriële getal van de datum voor of na een bepaald aantal werkdagen +YEAR = JAAR ## Converteert een serieel getal naar een jaar +YEARFRAC = JAAR.DEEL ## Geeft als resultaat het gedeelte van het jaar, uitgedrukt in het aantal hele dagen tussen begindatum en einddatum + + +## +## Engineering functions Technische functies +## +BESSELI = BESSEL.Y ## Geeft als resultaat de gewijzigde Bessel-functie In(x) +BESSELJ = BESSEL.J ## Geeft als resultaat de Bessel-functie Jn(x) +BESSELK = BESSEL.K ## Geeft als resultaat de gewijzigde Bessel-functie Kn(x) +BESSELY = BESSEL.Y ## Geeft als resultaat de gewijzigde Bessel-functie Yn(x) +BIN2DEC = BIN.N.DEC ## Converteert een binair getal naar een decimaal getal +BIN2HEX = BIN.N.HEX ## Converteert een binair getal naar een hexadecimaal getal +BIN2OCT = BIN.N.OCT ## Converteert een binair getal naar een octaal getal +COMPLEX = COMPLEX ## Converteert reële en imaginaire coëfficiënten naar een complex getal +CONVERT = CONVERTEREN ## Converteert een getal in de ene maateenheid naar een getal in een andere maateenheid +DEC2BIN = DEC.N.BIN ## Converteert een decimaal getal naar een binair getal +DEC2HEX = DEC.N.HEX ## Converteert een decimaal getal naar een hexadecimaal getal +DEC2OCT = DEC.N.OCT ## Converteert een decimaal getal naar een octaal getal +DELTA = DELTA ## Test of twee waarden gelijk zijn +ERF = FOUTFUNCTIE ## Geeft als resultaat de foutfunctie +ERFC = FOUT.COMPLEMENT ## Geeft als resultaat de complementaire foutfunctie +GESTEP = GROTER.DAN ## Test of een getal groter is dan de drempelwaarde +HEX2BIN = HEX.N.BIN ## Converteert een hexadecimaal getal naar een binair getal +HEX2DEC = HEX.N.DEC ## Converteert een hexadecimaal getal naar een decimaal getal +HEX2OCT = HEX.N.OCT ## Converteert een hexadecimaal getal naar een octaal getal +IMABS = C.ABS ## Geeft als resultaat de absolute waarde (modulus) van een complex getal +IMAGINARY = C.IM.DEEL ## Geeft als resultaat de imaginaire coëfficiënt van een complex getal +IMARGUMENT = C.ARGUMENT ## Geeft als resultaat het argument thèta, een hoek uitgedrukt in radialen +IMCONJUGATE = C.TOEGEVOEGD ## Geeft als resultaat het complexe toegevoegde getal van een complex getal +IMCOS = C.COS ## Geeft als resultaat de cosinus van een complex getal +IMDIV = C.QUOTIENT ## Geeft als resultaat het quotiënt van twee complexe getallen +IMEXP = C.EXP ## Geeft als resultaat de exponent van een complex getal +IMLN = C.LN ## Geeft als resultaat de natuurlijke logaritme van een complex getal +IMLOG10 = C.LOG10 ## Geeft als resultaat de logaritme met grondtal 10 van een complex getal +IMLOG2 = C.LOG2 ## Geeft als resultaat de logaritme met grondtal 2 van een complex getal +IMPOWER = C.MACHT ## Geeft als resultaat een complex getal dat is verheven tot de macht van een geheel getal +IMPRODUCT = C.PRODUCT ## Geeft als resultaat het product van complexe getallen +IMREAL = C.REEEL.DEEL ## Geeft als resultaat de reële coëfficiënt van een complex getal +IMSIN = C.SIN ## Geeft als resultaat de sinus van een complex getal +IMSQRT = C.WORTEL ## Geeft als resultaat de vierkantswortel van een complex getal +IMSUB = C.VERSCHIL ## Geeft als resultaat het verschil tussen twee complexe getallen +IMSUM = C.SOM ## Geeft als resultaat de som van complexe getallen +OCT2BIN = OCT.N.BIN ## Converteert een octaal getal naar een binair getal +OCT2DEC = OCT.N.DEC ## Converteert een octaal getal naar een decimaal getal +OCT2HEX = OCT.N.HEX ## Converteert een octaal getal naar een hexadecimaal getal + + +## +## Financial functions Financiële functies +## +ACCRINT = SAMENG.RENTE ## Berekent de opgelopen rente voor een waardepapier waarvan de rente periodiek wordt uitgekeerd +ACCRINTM = SAMENG.RENTE.V ## Berekent de opgelopen rente voor een waardepapier waarvan de rente op de vervaldatum wordt uitgekeerd +AMORDEGRC = AMORDEGRC ## Geeft als resultaat de afschrijving voor elke boekingsperiode door een afschrijvingscoëfficiënt toe te passen +AMORLINC = AMORLINC ## Berekent de afschrijving voor elke boekingsperiode +COUPDAYBS = COUP.DAGEN.BB ## Berekent het aantal dagen vanaf het begin van de coupontermijn tot de stortingsdatum +COUPDAYS = COUP.DAGEN ## Geeft als resultaat het aantal dagen in de coupontermijn waarin de stortingsdatum valt +COUPDAYSNC = COUP.DAGEN.VV ## Geeft als resultaat het aantal dagen vanaf de stortingsdatum tot de volgende couponvervaldatum +COUPNCD = COUP.DATUM.NB ## Geeft als resultaat de volgende coupondatum na de stortingsdatum +COUPNUM = COUP.AANTAL ## Geeft als resultaat het aantal coupons dat nog moet worden uitbetaald tussen de stortingsdatum en de vervaldatum +COUPPCD = COUP.DATUM.VB ## Geeft als resultaat de vorige couponvervaldatum vóór de stortingsdatum +CUMIPMT = CUM.RENTE ## Geeft als resultaat de cumulatieve rente die tussen twee termijnen is uitgekeerd +CUMPRINC = CUM.HOOFDSOM ## Geeft als resultaat de cumulatieve hoofdsom van een lening die tussen twee termijnen is terugbetaald +DB = DB ## Geeft als resultaat de afschrijving van activa voor een bepaalde periode met behulp van de 'fixed declining balance'-methode +DDB = DDB ## Geeft als resultaat de afschrijving van activa over een bepaalde termijn met behulp van de 'double declining balance'-methode of een andere methode die u opgeeft +DISC = DISCONTO ## Geeft als resultaat het discontopercentage voor een waardepapier +DOLLARDE = EURO.DE ## Converteert een prijs in euro's, uitgedrukt in een breuk, naar een prijs in euro's, uitgedrukt in een decimaal getal +DOLLARFR = EURO.BR ## Converteert een prijs in euro's, uitgedrukt in een decimaal getal, naar een prijs in euro's, uitgedrukt in een breuk +DURATION = DUUR ## Geeft als resultaat de gewogen gemiddelde looptijd voor een waardepapier met periodieke rentebetalingen +EFFECT = EFFECT.RENTE ## Geeft als resultaat het effectieve jaarlijkse rentepercentage +FV = TW ## Geeft als resultaat de toekomstige waarde van een investering +FVSCHEDULE = TOEK.WAARDE2 ## Geeft als resultaat de toekomstige waarde van een bepaalde hoofdsom na het toepassen van een reeks samengestelde rentepercentages +INTRATE = RENTEPERCENTAGE ## Geeft als resultaat het rentepercentage voor een volgestort waardepapier +IPMT = IBET ## Geeft als resultaat de te betalen rente voor een investering over een bepaalde termijn +IRR = IR ## Geeft als resultaat de interne rentabiliteit voor een reeks cashflows +ISPMT = ISBET ## Geeft als resultaat de rente die is betaald tijdens een bepaalde termijn van een investering +MDURATION = AANG.DUUR ## Geeft als resultaat de aangepaste Macauley-looptijd voor een waardepapier, aangenomen dat de nominale waarde € 100 bedraagt +MIRR = GIR ## Geeft als resultaat de interne rentabiliteit voor een serie cashflows, waarbij voor betalingen een ander rentepercentage geldt dan voor inkomsten +NOMINAL = NOMINALE.RENTE ## Geeft als resultaat het nominale jaarlijkse rentepercentage +NPER = NPER ## Geeft als resultaat het aantal termijnen van een investering +NPV = NHW ## Geeft als resultaat de netto huidige waarde van een investering op basis van een reeks periodieke cashflows en een discontopercentage +ODDFPRICE = AFW.ET.PRIJS ## Geeft als resultaat de prijs per € 100 nominale waarde voor een waardepapier met een afwijkende eerste termijn +ODDFYIELD = AFW.ET.REND ## Geeft als resultaat het rendement voor een waardepapier met een afwijkende eerste termijn +ODDLPRICE = AFW.LT.PRIJS ## Geeft als resultaat de prijs per € 100 nominale waarde voor een waardepapier met een afwijkende laatste termijn +ODDLYIELD = AFW.LT.REND ## Geeft als resultaat het rendement voor een waardepapier met een afwijkende laatste termijn +PMT = BET ## Geeft als resultaat de periodieke betaling voor een annuïteit +PPMT = PBET ## Geeft als resultaat de afbetaling op de hoofdsom voor een bepaalde termijn +PRICE = PRIJS.NOM ## Geeft als resultaat de prijs per € 100 nominale waarde voor een waardepapier waarvan de rente periodiek wordt uitgekeerd +PRICEDISC = PRIJS.DISCONTO ## Geeft als resultaat de prijs per € 100 nominale waarde voor een verdisconteerd waardepapier +PRICEMAT = PRIJS.VERVALDAG ## Geeft als resultaat de prijs per € 100 nominale waarde voor een waardepapier waarvan de rente wordt uitgekeerd op de vervaldatum +PV = HW ## Geeft als resultaat de huidige waarde van een investering +RATE = RENTE ## Geeft als resultaat het periodieke rentepercentage voor een annuïteit +RECEIVED = OPBRENGST ## Geeft als resultaat het bedrag dat op de vervaldatum wordt uitgekeerd voor een volgestort waardepapier +SLN = LIN.AFSCHR ## Geeft als resultaat de lineaire afschrijving van activa over één termijn +SYD = SYD ## Geeft als resultaat de afschrijving van activa over een bepaalde termijn met behulp van de 'Sum-Of-Years-Digits'-methode +TBILLEQ = SCHATK.OBL ## Geeft als resultaat het rendement op schatkistpapier, dat op dezelfde manier wordt berekend als het rendement op obligaties +TBILLPRICE = SCHATK.PRIJS ## Bepaalt de prijs per € 100 nominale waarde voor schatkistpapier +TBILLYIELD = SCHATK.REND ## Berekent het rendement voor schatkistpapier +VDB = VDB ## Geeft als resultaat de afschrijving van activa over een gehele of gedeeltelijke termijn met behulp van de 'declining balance'-methode +XIRR = IR.SCHEMA ## Berekent de interne rentabiliteit voor een betalingsschema van cashflows +XNPV = NHW2 ## Berekent de huidige nettowaarde voor een betalingsschema van cashflows +YIELD = RENDEMENT ## Geeft als resultaat het rendement voor een waardepapier waarvan de rente periodiek wordt uitgekeerd +YIELDDISC = REND.DISCONTO ## Geeft als resultaat het jaarlijkse rendement voor een verdisconteerd waardepapier, bijvoorbeeld schatkistpapier +YIELDMAT = REND.VERVAL ## Geeft als resultaat het jaarlijkse rendement voor een waardepapier waarvan de rente wordt uitgekeerd op de vervaldatum + + +## +## Information functions Informatiefuncties +## +CELL = CEL ## Geeft als resultaat informatie over de opmaak, locatie of inhoud van een cel +ERROR.TYPE = TYPE.FOUT ## Geeft als resultaat een getal dat overeenkomt met een van de foutwaarden van Microsoft Excel +INFO = INFO ## Geeft als resultaat informatie over de huidige besturingsomgeving +ISBLANK = ISLEEG ## Geeft als resultaat WAAR als de waarde leeg is +ISERR = ISFOUT2 ## Geeft als resultaat WAAR als de waarde een foutwaarde is, met uitzondering van #N/B +ISERROR = ISFOUT ## Geeft als resultaat WAAR als de waarde een foutwaarde is +ISEVEN = IS.EVEN ## Geeft als resultaat WAAR als het getal even is +ISLOGICAL = ISLOGISCH ## Geeft als resultaat WAAR als de waarde een logische waarde is +ISNA = ISNB ## Geeft als resultaat WAAR als de waarde de foutwaarde #N/B is +ISNONTEXT = ISGEENTEKST ## Geeft als resultaat WAAR als de waarde geen tekst is +ISNUMBER = ISGETAL ## Geeft als resultaat WAAR als de waarde een getal is +ISODD = IS.ONEVEN ## Geeft als resultaat WAAR als het getal oneven is +ISREF = ISVERWIJZING ## Geeft als resultaat WAAR als de waarde een verwijzing is +ISTEXT = ISTEKST ## Geeft als resultaat WAAR als de waarde tekst is +N = N ## Geeft als resultaat een waarde die is geconverteerd naar een getal +NA = NB ## Geeft als resultaat de foutwaarde #N/B +TYPE = TYPE ## Geeft als resultaat een getal dat het gegevenstype van een waarde aangeeft + + +## +## Logical functions Logische functies +## +AND = EN ## Geeft als resultaat WAAR als alle argumenten WAAR zijn +FALSE = ONWAAR ## Geeft als resultaat de logische waarde ONWAAR +IF = ALS ## Geeft een logische test aan +IFERROR = ALS.FOUT ## Retourneert een waarde die u opgeeft als een formule een fout oplevert, anders wordt het resultaat van de formule geretourneerd +NOT = NIET ## Keert de logische waarde van het argument om +OR = OF ## Geeft als resultaat WAAR als minimaal een van de argumenten WAAR is +TRUE = WAAR ## Geeft als resultaat de logische waarde WAAR + + +## +## Lookup and reference functions Zoek- en verwijzingsfuncties +## +ADDRESS = ADRES ## Geeft als resultaat een verwijzing, in de vorm van tekst, naar één bepaalde cel in een werkblad +AREAS = BEREIKEN ## Geeft als resultaat het aantal bereiken in een verwijzing +CHOOSE = KIEZEN ## Kiest een waarde uit een lijst met waarden +COLUMN = KOLOM ## Geeft als resultaat het kolomnummer van een verwijzing +COLUMNS = KOLOMMEN ## Geeft als resultaat het aantal kolommen in een verwijzing +HLOOKUP = HORIZ.ZOEKEN ## Zoekt in de bovenste rij van een matrix naar een bepaalde waarde en geeft als resultaat de gevonden waarde in de opgegeven cel +HYPERLINK = HYPERLINK ## Maakt een snelkoppeling of een sprong waarmee een document wordt geopend dat is opgeslagen op een netwerkserver, een intranet of op internet +INDEX = INDEX ## Kiest met een index een waarde uit een verwijzing of een matrix +INDIRECT = INDIRECT ## Geeft als resultaat een verwijzing die wordt aangegeven met een tekstwaarde +LOOKUP = ZOEKEN ## Zoekt naar bepaalde waarden in een vector of een matrix +MATCH = VERGELIJKEN ## Zoekt naar bepaalde waarden in een verwijzing of een matrix +OFFSET = VERSCHUIVING ## Geeft als resultaat een nieuwe verwijzing die is verschoven ten opzichte van een bepaalde verwijzing +ROW = RIJ ## Geeft als resultaat het rijnummer van een verwijzing +ROWS = RIJEN ## Geeft als resultaat het aantal rijen in een verwijzing +RTD = RTG ## Haalt realtimegegevens op uit een programma dat COM-automatisering (automatisering: een methode waarmee de ene toepassing objecten van een andere toepassing of ontwikkelprogramma kan besturen. Automatisering werd vroeger OLE-automatisering genoemd. Automatisering is een industrienorm die deel uitmaakt van het Component Object Model (COM).) ondersteunt +TRANSPOSE = TRANSPONEREN ## Geeft als resultaat de getransponeerde van een matrix +VLOOKUP = VERT.ZOEKEN ## Zoekt in de meest linkse kolom van een matrix naar een bepaalde waarde en geeft als resultaat de waarde in de opgegeven cel + + +## +## Math and trigonometry functions Wiskundige en trigonometrische functies +## +ABS = ABS ## Geeft als resultaat de absolute waarde van een getal +ACOS = BOOGCOS ## Geeft als resultaat de boogcosinus van een getal +ACOSH = BOOGCOSH ## Geeft als resultaat de inverse cosinus hyperbolicus van een getal +ASIN = BOOGSIN ## Geeft als resultaat de boogsinus van een getal +ASINH = BOOGSINH ## Geeft als resultaat de inverse sinus hyperbolicus van een getal +ATAN = BOOGTAN ## Geeft als resultaat de boogtangens van een getal +ATAN2 = BOOGTAN2 ## Geeft als resultaat de boogtangens van de x- en y-coördinaten +ATANH = BOOGTANH ## Geeft als resultaat de inverse tangens hyperbolicus van een getal +CEILING = AFRONDEN.BOVEN ## Rondt de absolute waarde van een getal naar boven af op het dichtstbijzijnde gehele getal of het dichtstbijzijnde significante veelvoud +COMBIN = COMBINATIES ## Geeft als resultaat het aantal combinaties voor een bepaald aantal objecten +COS = COS ## Geeft als resultaat de cosinus van een getal +COSH = COSH ## Geeft als resultaat de cosinus hyperbolicus van een getal +DEGREES = GRADEN ## Converteert radialen naar graden +EVEN = EVEN ## Rondt het getal af op het dichtstbijzijnde gehele even getal +EXP = EXP ## Verheft e tot de macht van een bepaald getal +FACT = FACULTEIT ## Geeft als resultaat de faculteit van een getal +FACTDOUBLE = DUBBELE.FACULTEIT ## Geeft als resultaat de dubbele faculteit van een getal +FLOOR = AFRONDEN.BENEDEN ## Rondt de absolute waarde van een getal naar beneden af +GCD = GGD ## Geeft als resultaat de grootste gemene deler +INT = INTEGER ## Rondt een getal naar beneden af op het dichtstbijzijnde gehele getal +LCM = KGV ## Geeft als resultaat het kleinste gemene veelvoud +LN = LN ## Geeft als resultaat de natuurlijke logaritme van een getal +LOG = LOG ## Geeft als resultaat de logaritme met het opgegeven grondtal van een getal +LOG10 = LOG10 ## Geeft als resultaat de logaritme met grondtal 10 van een getal +MDETERM = DETERMINANTMAT ## Geeft als resultaat de determinant van een matrix +MINVERSE = INVERSEMAT ## Geeft als resultaat de inverse van een matrix +MMULT = PRODUCTMAT ## Geeft als resultaat het product van twee matrices +MOD = REST ## Geeft als resultaat het restgetal van een deling +MROUND = AFRONDEN.N.VEELVOUD ## Geeft als resultaat een getal afgerond op het gewenste veelvoud +MULTINOMIAL = MULTINOMIAAL ## Geeft als resultaat de multinomiaalcoëfficiënt van een reeks getallen +ODD = ONEVEN ## Rondt de absolute waarde van het getal naar boven af op het dichtstbijzijnde gehele oneven getal +PI = PI ## Geeft als resultaat de waarde van pi +POWER = MACHT ## Verheft een getal tot een macht +PRODUCT = PRODUCT ## Vermenigvuldigt de argumenten met elkaar +QUOTIENT = QUOTIENT ## Geeft als resultaat de uitkomst van een deling als geheel getal +RADIANS = RADIALEN ## Converteert graden naar radialen +RAND = ASELECT ## Geeft als resultaat een willekeurig getal tussen 0 en 1 +RANDBETWEEN = ASELECTTUSSEN ## Geeft een willekeurig getal tussen de getallen die u hebt opgegeven +ROMAN = ROMEINS ## Converteert een Arabisch getal naar een Romeins getal en geeft het resultaat weer in de vorm van tekst +ROUND = AFRONDEN ## Rondt een getal af op het opgegeven aantal decimalen +ROUNDDOWN = AFRONDEN.NAAR.BENEDEN ## Rondt de absolute waarde van een getal naar beneden af +ROUNDUP = AFRONDEN.NAAR.BOVEN ## Rondt de absolute waarde van een getal naar boven af +SERIESSUM = SOM.MACHTREEKS ## Geeft als resultaat de som van een machtreeks die is gebaseerd op de formule +SIGN = POS.NEG ## Geeft als resultaat het teken van een getal +SIN = SIN ## Geeft als resultaat de sinus van de opgegeven hoek +SINH = SINH ## Geeft als resultaat de sinus hyperbolicus van een getal +SQRT = WORTEL ## Geeft als resultaat de positieve vierkantswortel van een getal +SQRTPI = WORTEL.PI ## Geeft als resultaat de vierkantswortel van (getal * pi) +SUBTOTAL = SUBTOTAAL ## Geeft als resultaat een subtotaal voor een bereik +SUM = SOM ## Telt de argumenten op +SUMIF = SOM.ALS ## Telt de getallen bij elkaar op die voldoen aan een bepaald criterium +SUMIFS = SOMMEN.ALS ## Telt de cellen in een bereik op die aan meerdere criteria voldoen +SUMPRODUCT = SOMPRODUCT ## Geeft als resultaat de som van de producten van de corresponderende matrixelementen +SUMSQ = KWADRATENSOM ## Geeft als resultaat de som van de kwadraten van de argumenten +SUMX2MY2 = SOM.X2MINY2 ## Geeft als resultaat de som van het verschil tussen de kwadraten van corresponderende waarden in twee matrices +SUMX2PY2 = SOM.X2PLUSY2 ## Geeft als resultaat de som van de kwadratensom van corresponderende waarden in twee matrices +SUMXMY2 = SOM.XMINY.2 ## Geeft als resultaat de som van de kwadraten van de verschillen tussen de corresponderende waarden in twee matrices +TAN = TAN ## Geeft als resultaat de tangens van een getal +TANH = TANH ## Geeft als resultaat de tangens hyperbolicus van een getal +TRUNC = GEHEEL ## Kapt een getal af tot een geheel getal + + +## +## Statistical functions Statistische functies +## +AVEDEV = GEM.DEVIATIE ## Geeft als resultaat het gemiddelde van de absolute deviaties van gegevenspunten ten opzichte van hun gemiddelde waarde +AVERAGE = GEMIDDELDE ## Geeft als resultaat het gemiddelde van de argumenten +AVERAGEA = GEMIDDELDEA ## Geeft als resultaat het gemiddelde van de argumenten, inclusief getallen, tekst en logische waarden +AVERAGEIF = GEMIDDELDE.ALS ## Geeft het gemiddelde (rekenkundig gemiddelde) als resultaat van alle cellen in een bereik die voldoen aan de opgegeven criteria +AVERAGEIFS = GEMIDDELDEN.ALS ## Geeft het gemiddelde (rekenkundig gemiddelde) als resultaat van alle cellen die aan meerdere criteria voldoen +BETADIST = BETA.VERD ## Geeft als resultaat de cumulatieve bèta-verdelingsfunctie +BETAINV = BETA.INV ## Geeft als resultaat de inverse van de cumulatieve verdelingsfunctie voor een gegeven bèta-verdeling +BINOMDIST = BINOMIALE.VERD ## Geeft als resultaat de binomiale verdeling +CHIDIST = CHI.KWADRAAT ## Geeft als resultaat de eenzijdige kans van de chi-kwadraatverdeling +CHIINV = CHI.KWADRAAT.INV ## Geeft als resultaat de inverse van een eenzijdige kans van de chi-kwadraatverdeling +CHITEST = CHI.TOETS ## Geeft als resultaat de onafhankelijkheidstoets +CONFIDENCE = BETROUWBAARHEID ## Geeft als resultaat het betrouwbaarheidsinterval van een gemiddelde waarde voor de elementen van een populatie +CORREL = CORRELATIE ## Geeft als resultaat de correlatiecoëfficiënt van twee gegevensverzamelingen +COUNT = AANTAL ## Telt het aantal getallen in de argumentenlijst +COUNTA = AANTALARG ## Telt het aantal waarden in de argumentenlijst +COUNTBLANK = AANTAL.LEGE.CELLEN ## Telt het aantal lege cellen in een bereik +COUNTIF = AANTAL.ALS ## Telt in een bereik het aantal cellen die voldoen aan een bepaald criterium +COUNTIFS = AANTALLEN.ALS ## Telt in een bereik het aantal cellen die voldoen aan meerdere criteria +COVAR = COVARIANTIE ## Geeft als resultaat de covariantie, het gemiddelde van de producten van de gepaarde deviaties +CRITBINOM = CRIT.BINOM ## Geeft als resultaat de kleinste waarde waarvoor de binomiale verdeling kleiner is dan of gelijk is aan het criterium +DEVSQ = DEV.KWAD ## Geeft als resultaat de som van de deviaties in het kwadraat +EXPONDIST = EXPON.VERD ## Geeft als resultaat de exponentiële verdeling +FDIST = F.VERDELING ## Geeft als resultaat de F-verdeling +FINV = F.INVERSE ## Geeft als resultaat de inverse van de F-verdeling +FISHER = FISHER ## Geeft als resultaat de Fisher-transformatie +FISHERINV = FISHER.INV ## Geeft als resultaat de inverse van de Fisher-transformatie +FORECAST = VOORSPELLEN ## Geeft als resultaat een waarde op basis van een lineaire trend +FREQUENCY = FREQUENTIE ## Geeft als resultaat een frequentieverdeling in de vorm van een verticale matrix +FTEST = F.TOETS ## Geeft als resultaat een F-toets +GAMMADIST = GAMMA.VERD ## Geeft als resultaat de gamma-verdeling +GAMMAINV = GAMMA.INV ## Geeft als resultaat de inverse van de cumulatieve gamma-verdeling +GAMMALN = GAMMA.LN ## Geeft als resultaat de natuurlijke logaritme van de gamma-functie, G(x) +GEOMEAN = MEETK.GEM ## Geeft als resultaat het meetkundige gemiddelde +GROWTH = GROEI ## Geeft als resultaat de waarden voor een exponentiële trend +HARMEAN = HARM.GEM ## Geeft als resultaat het harmonische gemiddelde +HYPGEOMDIST = HYPERGEO.VERD ## Geeft als resultaat de hypergeometrische verdeling +INTERCEPT = SNIJPUNT ## Geeft als resultaat het snijpunt van de lineaire regressielijn met de y-as +KURT = KURTOSIS ## Geeft als resultaat de kurtosis van een gegevensverzameling +LARGE = GROOTSTE ## Geeft als resultaat de op k-1 na grootste waarde in een gegevensverzameling +LINEST = LIJNSCH ## Geeft als resultaat de parameters van een lineaire trend +LOGEST = LOGSCH ## Geeft als resultaat de parameters van een exponentiële trend +LOGINV = LOG.NORM.INV ## Geeft als resultaat de inverse van de logaritmische normale verdeling +LOGNORMDIST = LOG.NORM.VERD ## Geeft als resultaat de cumulatieve logaritmische normale verdeling +MAX = MAX ## Geeft als resultaat de maximumwaarde in een lijst met argumenten +MAXA = MAXA ## Geeft als resultaat de maximumwaarde in een lijst met argumenten, inclusief getallen, tekst en logische waarden +MEDIAN = MEDIAAN ## Geeft als resultaat de mediaan van de opgegeven getallen +MIN = MIN ## Geeft als resultaat de minimumwaarde in een lijst met argumenten +MINA = MINA ## Geeft als resultaat de minimumwaarde in een lijst met argumenten, inclusief getallen, tekst en logische waarden +MODE = MODUS ## Geeft als resultaat de meest voorkomende waarde in een gegevensverzameling +NEGBINOMDIST = NEG.BINOM.VERD ## Geeft als resultaat de negatieve binomiaalverdeling +NORMDIST = NORM.VERD ## Geeft als resultaat de cumulatieve normale verdeling +NORMINV = NORM.INV ## Geeft als resultaat de inverse van de cumulatieve standaardnormale verdeling +NORMSDIST = STAND.NORM.VERD ## Geeft als resultaat de cumulatieve standaardnormale verdeling +NORMSINV = STAND.NORM.INV ## Geeft als resultaat de inverse van de cumulatieve normale verdeling +PEARSON = PEARSON ## Geeft als resultaat de correlatiecoëfficiënt van Pearson +PERCENTILE = PERCENTIEL ## Geeft als resultaat het k-de percentiel van waarden in een bereik +PERCENTRANK = PERCENT.RANG ## Geeft als resultaat de positie, in procenten uitgedrukt, van een waarde in de rangorde van een gegevensverzameling +PERMUT = PERMUTATIES ## Geeft als resultaat het aantal permutaties voor een gegeven aantal objecten +POISSON = POISSON ## Geeft als resultaat de Poisson-verdeling +PROB = KANS ## Geeft als resultaat de kans dat waarden zich tussen twee grenzen bevinden +QUARTILE = KWARTIEL ## Geeft als resultaat het kwartiel van een gegevensverzameling +RANK = RANG ## Geeft als resultaat het rangnummer van een getal in een lijst getallen +RSQ = R.KWADRAAT ## Geeft als resultaat het kwadraat van de Pearson-correlatiecoëfficiënt +SKEW = SCHEEFHEID ## Geeft als resultaat de mate van asymmetrie van een verdeling +SLOPE = RICHTING ## Geeft als resultaat de richtingscoëfficiënt van een lineaire regressielijn +SMALL = KLEINSTE ## Geeft als resultaat de op k-1 na kleinste waarde in een gegevensverzameling +STANDARDIZE = NORMALISEREN ## Geeft als resultaat een genormaliseerde waarde +STDEV = STDEV ## Maakt een schatting van de standaarddeviatie op basis van een steekproef +STDEVA = STDEVA ## Maakt een schatting van de standaarddeviatie op basis van een steekproef, inclusief getallen, tekst en logische waarden +STDEVP = STDEVP ## Berekent de standaarddeviatie op basis van de volledige populatie +STDEVPA = STDEVPA ## Berekent de standaarddeviatie op basis van de volledige populatie, inclusief getallen, tekst en logische waarden +STEYX = STAND.FOUT.YX ## Geeft als resultaat de standaardfout in de voorspelde y-waarde voor elke x in een regressie +TDIST = T.VERD ## Geeft als resultaat de Student T-verdeling +TINV = T.INV ## Geeft als resultaat de inverse van de Student T-verdeling +TREND = TREND ## Geeft als resultaat de waarden voor een lineaire trend +TRIMMEAN = GETRIMD.GEM ## Geeft als resultaat het gemiddelde van waarden in een gegevensverzameling +TTEST = T.TOETS ## Geeft als resultaat de kans met behulp van de Student T-toets +VAR = VAR ## Maakt een schatting van de variantie op basis van een steekproef +VARA = VARA ## Maakt een schatting van de variantie op basis van een steekproef, inclusief getallen, tekst en logische waarden +VARP = VARP ## Berekent de variantie op basis van de volledige populatie +VARPA = VARPA ## Berekent de standaarddeviatie op basis van de volledige populatie, inclusief getallen, tekst en logische waarden +WEIBULL = WEIBULL ## Geeft als resultaat de Weibull-verdeling +ZTEST = Z.TOETS ## Geeft als resultaat de eenzijdige kanswaarde van een Z-toets + + +## +## Text functions Tekstfuncties +## +ASC = ASC ## Wijzigt Nederlandse letters of katakanatekens over de volle breedte (dubbel-bytetekens) binnen een tekenreeks in tekens over de halve breedte (enkel-bytetekens) +BAHTTEXT = BAHT.TEKST ## Converteert een getal naar tekst met de valutanotatie ß (baht) +CHAR = TEKEN ## Geeft als resultaat het teken dat hoort bij de opgegeven code +CLEAN = WISSEN.CONTROL ## Verwijdert alle niet-afdrukbare tekens uit een tekst +CODE = CODE ## Geeft als resultaat de numerieke code voor het eerste teken in een tekenreeks +CONCATENATE = TEKST.SAMENVOEGEN ## Voegt verschillende tekstfragmenten samen tot één tekstfragment +DOLLAR = EURO ## Converteert een getal naar tekst met de valutanotatie € (euro) +EXACT = GELIJK ## Controleert of twee tekenreeksen identiek zijn +FIND = VIND.ALLES ## Zoekt een bepaalde tekenreeks in een tekst (waarbij onderscheid wordt gemaakt tussen hoofdletters en kleine letters) +FINDB = VIND.ALLES.B ## Zoekt een bepaalde tekenreeks in een tekst (waarbij onderscheid wordt gemaakt tussen hoofdletters en kleine letters) +FIXED = VAST ## Maakt een getal als tekst met een vast aantal decimalen op +JIS = JIS ## Wijzigt Nederlandse letters of katakanatekens over de halve breedte (enkel-bytetekens) binnen een tekenreeks in tekens over de volle breedte (dubbel-bytetekens) +LEFT = LINKS ## Geeft als resultaat de meest linkse tekens in een tekenreeks +LEFTB = LINKSB ## Geeft als resultaat de meest linkse tekens in een tekenreeks +LEN = LENGTE ## Geeft als resultaat het aantal tekens in een tekenreeks +LENB = LENGTEB ## Geeft als resultaat het aantal tekens in een tekenreeks +LOWER = KLEINE.LETTERS ## Zet tekst om in kleine letters +MID = MIDDEN ## Geeft als resultaat een bepaald aantal tekens van een tekenreeks vanaf de positie die u opgeeft +MIDB = DEELB ## Geeft als resultaat een bepaald aantal tekens van een tekenreeks vanaf de positie die u opgeeft +PHONETIC = FONETISCH ## Haalt de fonetische tekens (furigana) uit een tekenreeks op +PROPER = BEGINLETTERS ## Zet de eerste letter van elk woord in een tekst om in een hoofdletter +REPLACE = VERVANG ## Vervangt tekens binnen een tekst +REPLACEB = VERVANGENB ## Vervangt tekens binnen een tekst +REPT = HERHALING ## Herhaalt een tekst een aantal malen +RIGHT = RECHTS ## Geeft als resultaat de meest rechtse tekens in een tekenreeks +RIGHTB = RECHTSB ## Geeft als resultaat de meest rechtse tekens in een tekenreeks +SEARCH = VIND.SPEC ## Zoekt een bepaalde tekenreeks in een tekst (waarbij geen onderscheid wordt gemaakt tussen hoofdletters en kleine letters) +SEARCHB = VIND.SPEC.B ## Zoekt een bepaalde tekenreeks in een tekst (waarbij geen onderscheid wordt gemaakt tussen hoofdletters en kleine letters) +SUBSTITUTE = SUBSTITUEREN ## Vervangt oude tekst door nieuwe tekst in een tekenreeks +T = T ## Converteert de argumenten naar tekst +TEXT = TEKST ## Maakt een getal op en converteert het getal naar tekst +TRIM = SPATIES.WISSEN ## Verwijdert de spaties uit een tekst +UPPER = HOOFDLETTERS ## Zet tekst om in hoofdletters +VALUE = WAARDE ## Converteert tekst naar een getal diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/no/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/no/_notes/dwsync.xml new file mode 100644 index 0000000..69352df --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/no/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461868910188" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461870064592" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/no/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/no/config new file mode 100644 index 0000000..bf2d34a --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/no/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = kr + + +## +## Excel Error Codes (For future use) +## +NULL = #NULL! +DIV0 = #DIV/0! +VALUE = #VERDI! +REF = #REF! +NAME = #NAVN? +NUM = #NUM! +NA = #I/T diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/no/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/no/functions new file mode 100644 index 0000000..10d0a20 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/no/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Funksjonene Tillegg og Automatisering +## +GETPIVOTDATA = HENTPIVOTDATA ## Returnerer data som er lagret i en pivottabellrapport + + +## +## Cube functions Kubefunksjoner +## +CUBEKPIMEMBER = KUBEKPIMEDLEM ## Returnerer navnet, egenskapen og målet for en viktig ytelsesindikator (KPI), og viser navnet og egenskapen i cellen. En KPI er en målbar enhet, for eksempel månedlig bruttoinntjening eller kvartalsvis inntjening per ansatt, og brukes til å overvåke ytelsen i en organisasjon. +CUBEMEMBER = KUBEMEDLEM ## Returnerer et medlem eller en tuppel i et kubehierarki. Brukes til å validere at medlemmet eller tuppelen finnes i kuben. +CUBEMEMBERPROPERTY = KUBEMEDLEMEGENSKAP ## Returnerer verdien til en medlemsegenskap i kuben. Brukes til å validere at et medlemsnavn finnes i kuben, og til å returnere den angitte egenskapen for dette medlemmet. +CUBERANKEDMEMBER = KUBERANGERTMEDLEM ## Returnerer det n-te, eller rangerte, medlemmet i et sett. Brukes til å returnere ett eller flere elementer i et sett, for eksempel de 10 beste studentene. +CUBESET = KUBESETT ## Definerer et beregnet sett av medlemmer eller tuppeler ved å sende et settuttrykk til kuben på serveren, noe som oppretter settet og deretter returnerer dette settet til Microsoft Office Excel. +CUBESETCOUNT = KUBESETTANTALL ## Returnerer antallet elementer i et sett. +CUBEVALUE = KUBEVERDI ## Returnerer en aggregert verdi fra en kube. + + +## +## Database functions Databasefunksjoner +## +DAVERAGE = DGJENNOMSNITT ## Returnerer gjennomsnittet av merkede databaseposter +DCOUNT = DANTALL ## Teller celler som inneholder tall i en database +DCOUNTA = DANTALLA ## Teller celler som ikke er tomme i en database +DGET = DHENT ## Trekker ut fra en database en post som oppfyller angitte vilkår +DMAX = DMAKS ## Returnerer maksimumsverdien fra merkede databaseposter +DMIN = DMIN ## Returnerer minimumsverdien fra merkede databaseposter +DPRODUCT = DPRODUKT ## Multipliserer verdiene i et bestemt felt med poster som oppfyller vilkårene i en database +DSTDEV = DSTDAV ## Estimerer standardavviket basert på et utvalg av merkede databaseposter +DSTDEVP = DSTAVP ## Beregner standardavviket basert på at merkede databaseposter utgjør hele populasjonen +DSUM = DSUMMER ## Legger til tallene i feltkolonnen med poster, i databasen som oppfyller vilkårene +DVAR = DVARIANS ## Estimerer variansen basert på et utvalg av merkede databaseposter +DVARP = DVARIANSP ## Beregner variansen basert på at merkede databaseposter utgjør hele populasjonen + + +## +## Date and time functions Dato- og tidsfunksjoner +## +DATE = DATO ## Returnerer serienummeret som svarer til en bestemt dato +DATEVALUE = DATOVERDI ## Konverterer en dato med tekstformat til et serienummer +DAY = DAG ## Konverterer et serienummer til en dag i måneden +DAYS360 = DAGER360 ## Beregner antall dager mellom to datoer basert på et år med 360 dager +EDATE = DAG.ETTER ## Returnerer serienummeret som svarer til datoen som er det indikerte antall måneder før eller etter startdatoen +EOMONTH = MÅNEDSSLUTT ## Returnerer serienummeret som svarer til siste dag i måneden, før eller etter et angitt antall måneder +HOUR = TIME ## Konverterer et serienummer til en time +MINUTE = MINUTT ## Konverterer et serienummer til et minutt +MONTH = MÅNED ## Konverterer et serienummer til en måned +NETWORKDAYS = NETT.ARBEIDSDAGER ## Returnerer antall hele arbeidsdager mellom to datoer +NOW = NÅ ## Returnerer serienummeret som svarer til gjeldende dato og klokkeslett +SECOND = SEKUND ## Konverterer et serienummer til et sekund +TIME = TID ## Returnerer serienummeret som svarer til et bestemt klokkeslett +TIMEVALUE = TIDSVERDI ## Konverterer et klokkeslett i tekstformat til et serienummer +TODAY = IDAG ## Returnerer serienummeret som svarer til dagens dato +WEEKDAY = UKEDAG ## Konverterer et serienummer til en ukedag +WEEKNUM = UKENR ## Konverterer et serienummer til et tall som representerer hvilket nummer uken har i et år +WORKDAY = ARBEIDSDAG ## Returnerer serienummeret som svarer til datoen før eller etter et angitt antall arbeidsdager +YEAR = ÅR ## Konverterer et serienummer til et år +YEARFRAC = ÅRDEL ## Returnerer brøkdelen for året, som svarer til antall hele dager mellom startdato og sluttdato + + +## +## Engineering functions Tekniske funksjoner +## +BESSELI = BESSELI ## Returnerer den endrede Bessel-funksjonen In(x) +BESSELJ = BESSELJ ## Returnerer Bessel-funksjonen Jn(x) +BESSELK = BESSELK ## Returnerer den endrede Bessel-funksjonen Kn(x) +BESSELY = BESSELY ## Returnerer Bessel-funksjonen Yn(x) +BIN2DEC = BINTILDES ## Konverterer et binært tall til et desimaltall +BIN2HEX = BINTILHEKS ## Konverterer et binært tall til et heksadesimaltall +BIN2OCT = BINTILOKT ## Konverterer et binært tall til et oktaltall +COMPLEX = KOMPLEKS ## Konverterer reelle og imaginære koeffisienter til et komplekst tall +CONVERT = KONVERTER ## Konverterer et tall fra ett målsystem til et annet +DEC2BIN = DESTILBIN ## Konverterer et desimaltall til et binærtall +DEC2HEX = DESTILHEKS ## Konverterer et heltall i 10-tallsystemet til et heksadesimalt tall +DEC2OCT = DESTILOKT ## Konverterer et heltall i 10-tallsystemet til et oktaltall +DELTA = DELTA ## Undersøker om to verdier er like +ERF = FEILF ## Returnerer feilfunksjonen +ERFC = FEILFK ## Returnerer den komplementære feilfunksjonen +GESTEP = GRENSEVERDI ## Tester om et tall er større enn en terskelverdi +HEX2BIN = HEKSTILBIN ## Konverterer et heksadesimaltall til et binært tall +HEX2DEC = HEKSTILDES ## Konverterer et heksadesimalt tall til et heltall i 10-tallsystemet +HEX2OCT = HEKSTILOKT ## Konverterer et heksadesimalt tall til et oktaltall +IMABS = IMABS ## Returnerer absoluttverdien (koeffisienten) til et komplekst tall +IMAGINARY = IMAGINÆR ## Returnerer den imaginære koeffisienten til et komplekst tall +IMARGUMENT = IMARGUMENT ## Returnerer argumentet theta, som er en vinkel uttrykt i radianer +IMCONJUGATE = IMKONJUGERT ## Returnerer den komplekse konjugaten til et komplekst tall +IMCOS = IMCOS ## Returnerer cosinus til et komplekst tall +IMDIV = IMDIV ## Returnerer kvotienten til to komplekse tall +IMEXP = IMEKSP ## Returnerer eksponenten til et komplekst tall +IMLN = IMLN ## Returnerer den naturlige logaritmen for et komplekst tall +IMLOG10 = IMLOG10 ## Returnerer logaritmen med grunntall 10 for et komplekst tall +IMLOG2 = IMLOG2 ## Returnerer logaritmen med grunntall 2 for et komplekst tall +IMPOWER = IMOPPHØY ## Returnerer et komplekst tall opphøyd til en heltallspotens +IMPRODUCT = IMPRODUKT ## Returnerer produktet av komplekse tall +IMREAL = IMREELL ## Returnerer den reelle koeffisienten til et komplekst tall +IMSIN = IMSIN ## Returnerer sinus til et komplekst tall +IMSQRT = IMROT ## Returnerer kvadratroten av et komplekst tall +IMSUB = IMSUB ## Returnerer differansen mellom to komplekse tall +IMSUM = IMSUMMER ## Returnerer summen av komplekse tall +OCT2BIN = OKTTILBIN ## Konverterer et oktaltall til et binært tall +OCT2DEC = OKTTILDES ## Konverterer et oktaltall til et desimaltall +OCT2HEX = OKTTILHEKS ## Konverterer et oktaltall til et heksadesimaltall + + +## +## Financial functions Økonomiske funksjoner +## +ACCRINT = PÅLØPT.PERIODISK.RENTE ## Returnerer påløpte renter for et verdipapir som betaler periodisk rente +ACCRINTM = PÅLØPT.FORFALLSRENTE ## Returnerer den påløpte renten for et verdipapir som betaler rente ved forfall +AMORDEGRC = AMORDEGRC ## Returnerer avskrivningen for hver regnskapsperiode ved hjelp av en avskrivingskoeffisient +AMORLINC = AMORLINC ## Returnerer avskrivingen for hver regnskapsperiode +COUPDAYBS = OBLIG.DAGER.FF ## Returnerer antall dager fra begynnelsen av den rentebærende perioden til innløsningsdatoen +COUPDAYS = OBLIG.DAGER ## Returnerer antall dager i den rentebærende perioden som inneholder innløsningsdatoen +COUPDAYSNC = OBLIG.DAGER.NF ## Returnerer antall dager fra betalingsdato til neste renteinnbetalingsdato +COUPNCD = OBLIG.DAGER.EF ## Returnerer obligasjonsdatoen som kommer etter oppgjørsdatoen +COUPNUM = OBLIG.ANTALL ## Returnerer antall obligasjoner som skal betales mellom oppgjørsdatoen og forfallsdatoen +COUPPCD = OBLIG.DAG.FORRIGE ## Returnerer obligasjonsdatoen som kommer før oppgjørsdatoen +CUMIPMT = SAMLET.RENTE ## Returnerer den kumulative renten som er betalt mellom to perioder +CUMPRINC = SAMLET.HOVEDSTOL ## Returnerer den kumulative hovedstolen som er betalt for et lån mellom to perioder +DB = DAVSKR ## Returnerer avskrivningen for et aktivum i en angitt periode, foretatt med fast degressiv avskrivning +DDB = DEGRAVS ## Returnerer avskrivningen for et aktivum for en gitt periode, ved hjelp av dobbel degressiv avskrivning eller en metode som du selv angir +DISC = DISKONTERT ## Returnerer diskonteringsraten for et verdipapir +DOLLARDE = DOLLARDE ## Konverterer en valutapris uttrykt som en brøk, til en valutapris uttrykt som et desimaltall +DOLLARFR = DOLLARBR ## Konverterer en valutapris uttrykt som et desimaltall, til en valutapris uttrykt som en brøk +DURATION = VARIGHET ## Returnerer årlig varighet for et verdipapir med renter som betales periodisk +EFFECT = EFFEKTIV.RENTE ## Returnerer den effektive årlige rentesatsen +FV = SLUTTVERDI ## Returnerer fremtidig verdi for en investering +FVSCHEDULE = SVPLAN ## Returnerer den fremtidige verdien av en inngående hovedstol etter å ha anvendt en serie med sammensatte rentesatser +INTRATE = RENTESATS ## Returnerer rentefoten av et fullfinansiert verdipapir +IPMT = RAVDRAG ## Returnerer betalte renter på en investering for en gitt periode +IRR = IR ## Returnerer internrenten for en serie kontantstrømmer +ISPMT = ER.AVDRAG ## Beregner renten som er betalt for en investering i løpet av en bestemt periode +MDURATION = MVARIGHET ## Returnerer Macauleys modifiserte varighet for et verdipapir med en antatt pålydende verdi på kr 100,00 +MIRR = MODIR ## Returnerer internrenten der positive og negative kontantstrømmer finansieres med forskjellige satser +NOMINAL = NOMINELL ## Returnerer årlig nominell rentesats +NPER = PERIODER ## Returnerer antall perioder for en investering +NPV = NNV ## Returnerer netto nåverdi for en investering, basert på en serie periodiske kontantstrømmer og en rentesats +ODDFPRICE = AVVIKFP.PRIS ## Returnerer pris pålydende kr 100 for et verdipapir med en odde første periode +ODDFYIELD = AVVIKFP.AVKASTNING ## Returnerer avkastingen for et verdipapir med en odde første periode +ODDLPRICE = AVVIKSP.PRIS ## Returnerer pris pålydende kr 100 for et verdipapir med en odde siste periode +ODDLYIELD = AVVIKSP.AVKASTNING ## Returnerer avkastingen for et verdipapir med en odde siste periode +PMT = AVDRAG ## Returnerer periodisk betaling for en annuitet +PPMT = AMORT ## Returnerer betalingen på hovedstolen for en investering i en gitt periode +PRICE = PRIS ## Returnerer prisen per pålydende kr 100 for et verdipapir som gir periodisk avkastning +PRICEDISC = PRIS.DISKONTERT ## Returnerer prisen per pålydende kr 100 for et diskontert verdipapir +PRICEMAT = PRIS.FORFALL ## Returnerer prisen per pålydende kr 100 av et verdipapir som betaler rente ved forfall +PV = NÅVERDI ## Returnerer nåverdien av en investering +RATE = RENTE ## Returnerer rentesatsen per periode for en annuitet +RECEIVED = MOTTATT.AVKAST ## Returnerer summen som mottas ved forfallsdato for et fullinvestert verdipapir +SLN = LINAVS ## Returnerer den lineære avskrivningen for et aktivum i én periode +SYD = ÅRSAVS ## Returnerer årsavskrivningen for et aktivum i en angitt periode +TBILLEQ = TBILLEKV ## Returnerer den obligasjonsekvivalente avkastningen for en statsobligasjon +TBILLPRICE = TBILLPRIS ## Returnerer prisen per pålydende kr 100 for en statsobligasjon +TBILLYIELD = TBILLAVKASTNING ## Returnerer avkastningen til en statsobligasjon +VDB = VERDIAVS ## Returnerer avskrivningen for et aktivum i en angitt periode eller delperiode, ved hjelp av degressiv avskrivning +XIRR = XIR ## Returnerer internrenten for en serie kontantstrømmer som ikke nødvendigvis er periodiske +XNPV = XNNV ## Returnerer netto nåverdi for en serie kontantstrømmer som ikke nødvendigvis er periodiske +YIELD = AVKAST ## Returnerer avkastningen på et verdipapir som betaler periodisk rente +YIELDDISC = AVKAST.DISKONTERT ## Returnerer årlig avkastning for et diskontert verdipapir, for eksempel en statskasseveksel +YIELDMAT = AVKAST.FORFALL ## Returnerer den årlige avkastningen for et verdipapir som betaler rente ved forfallsdato + + +## +## Information functions Informasjonsfunksjoner +## +CELL = CELLE ## Returnerer informasjon om formatering, plassering eller innholdet til en celle +ERROR.TYPE = FEIL.TYPE ## Returnerer et tall som svarer til en feiltype +INFO = INFO ## Returnerer informasjon om gjeldende operativmiljø +ISBLANK = ERTOM ## Returnerer SANN hvis verdien er tom +ISERR = ERFEIL ## Returnerer SANN hvis verdien er en hvilken som helst annen feilverdi enn #I/T +ISERROR = ERFEIL ## Returnerer SANN hvis verdien er en hvilken som helst feilverdi +ISEVEN = ERPARTALL ## Returnerer SANN hvis tallet er et partall +ISLOGICAL = ERLOGISK ## Returnerer SANN hvis verdien er en logisk verdi +ISNA = ERIT ## Returnerer SANN hvis verdien er feilverdien #I/T +ISNONTEXT = ERIKKETEKST ## Returnerer SANN hvis verdien ikke er tekst +ISNUMBER = ERTALL ## Returnerer SANN hvis verdien er et tall +ISODD = ERODDETALL ## Returnerer SANN hvis tallet er et oddetall +ISREF = ERREF ## Returnerer SANN hvis verdien er en referanse +ISTEXT = ERTEKST ## Returnerer SANN hvis verdien er tekst +N = N ## Returnerer en verdi som er konvertert til et tall +NA = IT ## Returnerer feilverdien #I/T +TYPE = VERDITYPE ## Returnerer et tall som indikerer datatypen til en verdi + + +## +## Logical functions Logiske funksjoner +## +AND = OG ## Returnerer SANN hvis alle argumentene er lik SANN +FALSE = USANN ## Returnerer den logiske verdien USANN +IF = HVIS ## Angir en logisk test som skal utføres +IFERROR = HVISFEIL ## Returnerer en verdi du angir hvis en formel evaluerer til en feil. Ellers returnerer den resultatet av formelen. +NOT = IKKE ## Reverserer logikken til argumentet +OR = ELLER ## Returnerer SANN hvis ett eller flere argumenter er lik SANN +TRUE = SANN ## Returnerer den logiske verdien SANN + + +## +## Lookup and reference functions Oppslag- og referansefunksjoner +## +ADDRESS = ADRESSE ## Returnerer en referanse som tekst til en enkelt celle i et regneark +AREAS = OMRÅDER ## Returnerer antall områder i en referanse +CHOOSE = VELG ## Velger en verdi fra en liste med verdier +COLUMN = KOLONNE ## Returnerer kolonnenummeret for en referanse +COLUMNS = KOLONNER ## Returnerer antall kolonner i en referanse +HLOOKUP = FINN.KOLONNE ## Leter i den øverste raden i en matrise og returnerer verdien for den angitte cellen +HYPERLINK = HYPERKOBLING ## Oppretter en snarvei eller et hopp som åpner et dokument som er lagret på en nettverksserver, et intranett eller Internett +INDEX = INDEKS ## Bruker en indeks til å velge en verdi fra en referanse eller matrise +INDIRECT = INDIREKTE ## Returnerer en referanse angitt av en tekstverdi +LOOKUP = SLÅ.OPP ## Slår opp verdier i en vektor eller matrise +MATCH = SAMMENLIGNE ## Slår opp verdier i en referanse eller matrise +OFFSET = FORSKYVNING ## Returnerer en referanseforskyvning fra en gitt referanse +ROW = RAD ## Returnerer radnummeret for en referanse +ROWS = RADER ## Returnerer antall rader i en referanse +RTD = RTD ## Henter sanntidsdata fra et program som støtter COM-automatisering (automatisering: En måte å arbeide på med programobjekter fra et annet program- eller utviklingsverktøy. Tidligere kalt OLE-automatisering. Automatisering er en bransjestandard og en funksjon i Component Object Model (COM).) +TRANSPOSE = TRANSPONER ## Returnerer transponeringen av en matrise +VLOOKUP = FINN.RAD ## Leter i den første kolonnen i en matrise og flytter bortover raden for å returnere verdien til en celle + + +## +## Math and trigonometry functions Matematikk- og trigonometrifunksjoner +## +ABS = ABS ## Returnerer absoluttverdien til et tall +ACOS = ARCCOS ## Returnerer arcus cosinus til et tall +ACOSH = ARCCOSH ## Returnerer den inverse hyperbolske cosinus til et tall +ASIN = ARCSIN ## Returnerer arcus sinus til et tall +ASINH = ARCSINH ## Returnerer den inverse hyperbolske sinus til et tall +ATAN = ARCTAN ## Returnerer arcus tangens til et tall +ATAN2 = ARCTAN2 ## Returnerer arcus tangens fra x- og y-koordinater +ATANH = ARCTANH ## Returnerer den inverse hyperbolske tangens til et tall +CEILING = AVRUND.GJELDENDE.MULTIPLUM ## Runder av et tall til nærmeste heltall eller til nærmeste signifikante multiplum +COMBIN = KOMBINASJON ## Returnerer antall kombinasjoner for ett gitt antall objekter +COS = COS ## Returnerer cosinus til et tall +COSH = COSH ## Returnerer den hyperbolske cosinus til et tall +DEGREES = GRADER ## Konverterer radianer til grader +EVEN = AVRUND.TIL.PARTALL ## Runder av et tall oppover til nærmeste heltall som er et partall +EXP = EKSP ## Returnerer e opphøyd i en angitt potens +FACT = FAKULTET ## Returnerer fakultet til et tall +FACTDOUBLE = DOBBELFAKT ## Returnerer et talls doble fakultet +FLOOR = AVRUND.GJELDENDE.MULTIPLUM.NED ## Avrunder et tall nedover, mot null +GCD = SFF ## Returnerer høyeste felles divisor +INT = HELTALL ## Avrunder et tall nedover til nærmeste heltall +LCM = MFM ## Returnerer minste felles multiplum +LN = LN ## Returnerer den naturlige logaritmen til et tall +LOG = LOG ## Returnerer logaritmen for et tall til et angitt grunntall +LOG10 = LOG10 ## Returnerer logaritmen med grunntall 10 for et tall +MDETERM = MDETERM ## Returnerer matrisedeterminanten til en matrise +MINVERSE = MINVERS ## Returnerer den inverse matrisen til en matrise +MMULT = MMULT ## Returnerer matriseproduktet av to matriser +MOD = REST ## Returnerer resten fra en divisjon +MROUND = MRUND ## Returnerer et tall avrundet til det ønskede multiplum +MULTINOMIAL = MULTINOMINELL ## Returnerer det multinominelle for et sett med tall +ODD = AVRUND.TIL.ODDETALL ## Runder av et tall oppover til nærmeste heltall som er et oddetall +PI = PI ## Returnerer verdien av pi +POWER = OPPHØYD.I ## Returnerer resultatet av et tall opphøyd i en potens +PRODUCT = PRODUKT ## Multipliserer argumentene +QUOTIENT = KVOTIENT ## Returnerer heltallsdelen av en divisjon +RADIANS = RADIANER ## Konverterer grader til radianer +RAND = TILFELDIG ## Returnerer et tilfeldig tall mellom 0 og 1 +RANDBETWEEN = TILFELDIGMELLOM ## Returnerer et tilfeldig tall innenfor et angitt område +ROMAN = ROMERTALL ## Konverterer vanlige tall til romertall, som tekst +ROUND = AVRUND ## Avrunder et tall til et angitt antall sifre +ROUNDDOWN = AVRUND.NED ## Avrunder et tall nedover, mot null +ROUNDUP = AVRUND.OPP ## Runder av et tall oppover, bort fra null +SERIESSUM = SUMMER.REKKE ## Returnerer summen av en geometrisk rekke, basert på formelen +SIGN = FORTEGN ## Returnerer fortegnet for et tall +SIN = SIN ## Returnerer sinus til en gitt vinkel +SINH = SINH ## Returnerer den hyperbolske sinus til et tall +SQRT = ROT ## Returnerer en positiv kvadratrot +SQRTPI = ROTPI ## Returnerer kvadratroten av (tall * pi) +SUBTOTAL = DELSUM ## Returnerer en delsum i en liste eller database +SUM = SUMMER ## Legger sammen argumentene +SUMIF = SUMMERHVIS ## Legger sammen cellene angitt ved et gitt vilkår +SUMIFS = SUMMER.HVIS.SETT ## Legger sammen cellene i et område som oppfyller flere vilkår +SUMPRODUCT = SUMMERPRODUKT ## Returnerer summen av produktene av tilsvarende matrisekomponenter +SUMSQ = SUMMERKVADRAT ## Returnerer kvadratsummen av argumentene +SUMX2MY2 = SUMMERX2MY2 ## Returnerer summen av differansen av kvadratene for tilsvarende verdier i to matriser +SUMX2PY2 = SUMMERX2PY2 ## Returnerer summen av kvadratsummene for tilsvarende verdier i to matriser +SUMXMY2 = SUMMERXMY2 ## Returnerer summen av kvadratene av differansen for tilsvarende verdier i to matriser +TAN = TAN ## Returnerer tangens for et tall +TANH = TANH ## Returnerer den hyperbolske tangens for et tall +TRUNC = AVKORT ## Korter av et tall til et heltall + + +## +## Statistical functions Statistiske funksjoner +## +AVEDEV = GJENNOMSNITTSAVVIK ## Returnerer datapunktenes gjennomsnittlige absoluttavvik fra middelverdien +AVERAGE = GJENNOMSNITT ## Returnerer gjennomsnittet for argumentene +AVERAGEA = GJENNOMSNITTA ## Returnerer gjennomsnittet for argumentene, inkludert tall, tekst og logiske verdier +AVERAGEIF = GJENNOMSNITTHVIS ## Returnerer gjennomsnittet (aritmetisk gjennomsnitt) av alle cellene i et område som oppfyller et bestemt vilkår +AVERAGEIFS = GJENNOMSNITT.HVIS.SETT ## Returnerer gjennomsnittet (aritmetisk middelverdi) av alle celler som oppfyller flere vilkår. +BETADIST = BETA.FORDELING ## Returnerer den kumulative betafordelingsfunksjonen +BETAINV = INVERS.BETA.FORDELING ## Returnerer den inverse verdien til fordelingsfunksjonen for en angitt betafordeling +BINOMDIST = BINOM.FORDELING ## Returnerer den individuelle binomiske sannsynlighetsfordelingen +CHIDIST = KJI.FORDELING ## Returnerer den ensidige sannsynligheten for en kjikvadrert fordeling +CHIINV = INVERS.KJI.FORDELING ## Returnerer den inverse av den ensidige sannsynligheten for den kjikvadrerte fordelingen +CHITEST = KJI.TEST ## Utfører testen for uavhengighet +CONFIDENCE = KONFIDENS ## Returnerer konfidensintervallet til gjennomsnittet for en populasjon +CORREL = KORRELASJON ## Returnerer korrelasjonskoeffisienten mellom to datasett +COUNT = ANTALL ## Teller hvor mange tall som er i argumentlisten +COUNTA = ANTALLA ## Teller hvor mange verdier som er i argumentlisten +COUNTBLANK = TELLBLANKE ## Teller antall tomme celler i et område. +COUNTIF = ANTALL.HVIS ## Teller antall celler i et område som oppfyller gitte vilkår +COUNTIFS = ANTALL.HVIS.SETT ## Teller antallet ikke-tomme celler i et område som oppfyller flere vilkår +COVAR = KOVARIANS ## Returnerer kovariansen, gjennomsnittet av produktene av parvise avvik +CRITBINOM = GRENSE.BINOM ## Returnerer den minste verdien der den kumulative binomiske fordelingen er mindre enn eller lik en vilkårsverdi +DEVSQ = AVVIK.KVADRERT ## Returnerer summen av kvadrerte avvik +EXPONDIST = EKSP.FORDELING ## Returnerer eksponentialfordelingen +FDIST = FFORDELING ## Returnerer F-sannsynlighetsfordelingen +FINV = FFORDELING.INVERS ## Returnerer den inverse av den sannsynlige F-fordelingen +FISHER = FISHER ## Returnerer Fisher-transformasjonen +FISHERINV = FISHERINV ## Returnerer den inverse av Fisher-transformasjonen +FORECAST = PROGNOSE ## Returnerer en verdi langs en lineær trend +FREQUENCY = FREKVENS ## Returnerer en frekvensdistribusjon som en loddrett matrise +FTEST = FTEST ## Returnerer resultatet av en F-test +GAMMADIST = GAMMAFORDELING ## Returnerer gammafordelingen +GAMMAINV = GAMMAINV ## Returnerer den inverse av den gammakumulative fordelingen +GAMMALN = GAMMALN ## Returnerer den naturlige logaritmen til gammafunksjonen G(x) +GEOMEAN = GJENNOMSNITT.GEOMETRISK ## Returnerer den geometriske middelverdien +GROWTH = VEKST ## Returnerer verdier langs en eksponentiell trend +HARMEAN = GJENNOMSNITT.HARMONISK ## Returnerer den harmoniske middelverdien +HYPGEOMDIST = HYPGEOM.FORDELING ## Returnerer den hypergeometriske fordelingen +INTERCEPT = SKJÆRINGSPUNKT ## Returnerer skjæringspunktet til den lineære regresjonslinjen +KURT = KURT ## Returnerer kurtosen til et datasett +LARGE = N.STØRST ## Returnerer den n-te største verdien i et datasett +LINEST = RETTLINJE ## Returnerer parameterne til en lineær trend +LOGEST = KURVE ## Returnerer parameterne til en eksponentiell trend +LOGINV = LOGINV ## Returnerer den inverse lognormale fordelingen +LOGNORMDIST = LOGNORMFORD ## Returnerer den kumulative lognormale fordelingen +MAX = STØRST ## Returnerer maksimumsverdien i en argumentliste +MAXA = MAKSA ## Returnerer maksimumsverdien i en argumentliste, inkludert tall, tekst og logiske verdier +MEDIAN = MEDIAN ## Returnerer medianen til tallene som er gitt +MIN = MIN ## Returnerer minimumsverdien i en argumentliste +MINA = MINA ## Returnerer den minste verdien i en argumentliste, inkludert tall, tekst og logiske verdier +MODE = MODUS ## Returnerer den vanligste verdien i et datasett +NEGBINOMDIST = NEGBINOM.FORDELING ## Returnerer den negative binomiske fordelingen +NORMDIST = NORMALFORDELING ## Returnerer den kumulative normalfordelingen +NORMINV = NORMINV ## Returnerer den inverse kumulative normalfordelingen +NORMSDIST = NORMSFORDELING ## Returnerer standard kumulativ normalfordeling +NORMSINV = NORMSINV ## Returnerer den inverse av den den kumulative standard normalfordelingen +PEARSON = PEARSON ## Returnerer produktmomentkorrelasjonskoeffisienten, Pearson +PERCENTILE = PERSENTIL ## Returnerer den n-te persentil av verdiene i et område +PERCENTRANK = PROSENTDEL ## Returnerer prosentrangeringen av en verdi i et datasett +PERMUT = PERMUTER ## Returnerer antall permutasjoner for et gitt antall objekter +POISSON = POISSON ## Returnerer Poissons sannsynlighetsfordeling +PROB = SANNSYNLIG ## Returnerer sannsynligheten for at verdier i et område ligger mellom to grenser +QUARTILE = KVARTIL ## Returnerer kvartilen til et datasett +RANK = RANG ## Returnerer rangeringen av et tall, eller plassen tallet har i en rekke +RSQ = RKVADRAT ## Returnerer kvadratet av produktmomentkorrelasjonskoeffisienten (Pearsons r) +SKEW = SKJEVFORDELING ## Returnerer skjevheten i en fordeling +SLOPE = STIGNINGSTALL ## Returnerer stigningtallet for den lineære regresjonslinjen +SMALL = N.MINST ## Returnerer den n-te minste verdien i et datasett +STANDARDIZE = NORMALISER ## Returnerer en normalisert verdi +STDEV = STDAV ## Estimere standardavvik på grunnlag av et utvalg +STDEVA = STDAVVIKA ## Estimerer standardavvik basert på et utvalg, inkludert tall, tekst og logiske verdier +STDEVP = STDAVP ## Beregner standardavvik basert på hele populasjonen +STDEVPA = STDAVVIKPA ## Beregner standardavvik basert på hele populasjonen, inkludert tall, tekst og logiske verdier +STEYX = STANDARDFEIL ## Returnerer standardfeilen for den predikerte y-verdien for hver x i regresjonen +TDIST = TFORDELING ## Returnerer en Student t-fordeling +TINV = TINV ## Returnerer den inverse Student t-fordelingen +TREND = TREND ## Returnerer verdier langs en lineær trend +TRIMMEAN = TRIMMET.GJENNOMSNITT ## Returnerer den interne middelverdien til et datasett +TTEST = TTEST ## Returnerer sannsynligheten assosiert med en Student t-test +VAR = VARIANS ## Estimerer varians basert på et utvalg +VARA = VARIANSA ## Estimerer varians basert på et utvalg, inkludert tall, tekst og logiske verdier +VARP = VARIANSP ## Beregner varians basert på hele populasjonen +VARPA = VARIANSPA ## Beregner varians basert på hele populasjonen, inkludert tall, tekst og logiske verdier +WEIBULL = WEIBULL.FORDELING ## Returnerer Weibull-fordelingen +ZTEST = ZTEST ## Returnerer den ensidige sannsynlighetsverdien for en z-test + + +## +## Text functions Tekstfunksjoner +## +ASC = STIGENDE ## Endrer fullbreddes (dobbeltbyte) engelske bokstaver eller katakana i en tegnstreng, til halvbreddes (enkeltbyte) tegn +BAHTTEXT = BAHTTEKST ## Konverterer et tall til tekst, og bruker valutaformatet ß (baht) +CHAR = TEGNKODE ## Returnerer tegnet som svarer til kodenummeret +CLEAN = RENSK ## Fjerner alle tegn som ikke kan skrives ut, fra teksten +CODE = KODE ## Returnerer en numerisk kode for det første tegnet i en tekststreng +CONCATENATE = KJEDE.SAMMEN ## Slår sammen flere tekstelementer til ett tekstelement +DOLLAR = VALUTA ## Konverterer et tall til tekst, og bruker valutaformatet $ (dollar) +EXACT = EKSAKT ## Kontrollerer om to tekstverdier er like +FIND = FINN ## Finner en tekstverdi inne i en annen (skiller mellom store og små bokstaver) +FINDB = FINNB ## Finner en tekstverdi inne i en annen (skiller mellom store og små bokstaver) +FIXED = FASTSATT ## Formaterer et tall som tekst med et bestemt antall desimaler +JIS = JIS ## Endrer halvbreddes (enkeltbyte) engelske bokstaver eller katakana i en tegnstreng, til fullbreddes (dobbeltbyte) tegn +LEFT = VENSTRE ## Returnerer tegnene lengst til venstre i en tekstverdi +LEFTB = VENSTREB ## Returnerer tegnene lengst til venstre i en tekstverdi +LEN = LENGDE ## Returnerer antall tegn i en tekststreng +LENB = LENGDEB ## Returnerer antall tegn i en tekststreng +LOWER = SMÅ ## Konverterer tekst til små bokstaver +MID = DELTEKST ## Returnerer et angitt antall tegn fra en tekststreng, og begynner fra posisjonen du angir +MIDB = DELTEKSTB ## Returnerer et angitt antall tegn fra en tekststreng, og begynner fra posisjonen du angir +PHONETIC = FURIGANA ## Trekker ut fonetiske tegn (furigana) fra en tekststreng +PROPER = STOR.FORBOKSTAV ## Gir den første bokstaven i hvert ord i en tekstverdi stor forbokstav +REPLACE = ERSTATT ## Erstatter tegn i en tekst +REPLACEB = ERSTATTB ## Erstatter tegn i en tekst +REPT = GJENTA ## Gjentar tekst et gitt antall ganger +RIGHT = HØYRE ## Returnerer tegnene lengst til høyre i en tekstverdi +RIGHTB = HØYREB ## Returnerer tegnene lengst til høyre i en tekstverdi +SEARCH = SØK ## Finner en tekstverdi inne i en annen (skiller ikke mellom store og små bokstaver) +SEARCHB = SØKB ## Finner en tekstverdi inne i en annen (skiller ikke mellom store og små bokstaver) +SUBSTITUTE = BYTT.UT ## Bytter ut gammel tekst med ny tekst i en tekststreng +T = T ## Konverterer argumentene til tekst +TEXT = TEKST ## Formaterer et tall og konverterer det til tekst +TRIM = TRIMME ## Fjerner mellomrom fra tekst +UPPER = STORE ## Konverterer tekst til store bokstaver +VALUE = VERDI ## Konverterer et tekstargument til et tall diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pl/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pl/_notes/dwsync.xml new file mode 100644 index 0000000..b4ebf3e --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pl/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461869869790" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461871009549" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pl/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pl/config new file mode 100644 index 0000000..4dd75be --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pl/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = zł + + +## +## Excel Error Codes (For future use) +## +NULL = #ZERO! +DIV0 = #DZIEL/0! +VALUE = #ARG! +REF = #ADR! +NAME = #NAZWA? +NUM = #LICZBA! +NA = #N/D! diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pl/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pl/functions new file mode 100644 index 0000000..1881a71 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pl/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Funkcje dodatków i automatyzacji +## +GETPIVOTDATA = WEŹDANETABELI ## Zwraca dane przechowywane w raporcie tabeli przestawnej. + + +## +## Cube functions Funkcje modułów +## +CUBEKPIMEMBER = ELEMENT.KPI.MODUŁU ## Zwraca nazwę, właściwość i miarę kluczowego wskaźnika wydajności (KPI) oraz wyświetla nazwę i właściwość w komórce. Wskaźnik KPI jest miarą ilościową, taką jak miesięczny zysk brutto lub kwartalna fluktuacja pracowników, używaną do monitorowania wydajności organizacji. +CUBEMEMBER = ELEMENT.MODUŁU ## Zwraca element lub krotkę z hierarchii modułu. Służy do sprawdzania, czy element lub krotka istnieje w module. +CUBEMEMBERPROPERTY = WŁAŚCIWOŚĆ.ELEMENTU.MODUŁU ## Zwraca wartość właściwości elementu w module. Służy do sprawdzania, czy nazwa elementu istnieje w module, i zwracania określonej właściwości dla tego elementu. +CUBERANKEDMEMBER = USZEREGOWANY.ELEMENT.MODUŁU ## Zwraca n-ty (albo uszeregowany) element zestawu. Służy do zwracania elementu lub elementów zestawu, na przykład najlepszego sprzedawcy lub 10 najlepszych studentów. +CUBESET = ZESTAW.MODUŁÓW ## Definiuje obliczony zestaw elementów lub krotek, wysyłając wyrażenie zestawu do serwera modułu, który tworzy zestaw i zwraca go do programu Microsoft Office Excel. +CUBESETCOUNT = LICZNIK.MODUŁÓW.ZESTAWU ## Zwraca liczbę elementów zestawu. +CUBEVALUE = WARTOŚĆ.MODUŁU ## Zwraca zagregowaną wartość z modułu. + + +## +## Database functions Funkcje baz danych +## +DAVERAGE = BD.ŚREDNIA ## Zwraca wartość średniej wybranych wpisów bazy danych. +DCOUNT = BD.ILE.REKORDÓW ## Zlicza komórki zawierające liczby w bazie danych. +DCOUNTA = BD.ILE.REKORDÓW.A ## Zlicza niepuste komórki w bazie danych. +DGET = BD.POLE ## Wyodrębnia z bazy danych jeden rekord spełniający określone kryteria. +DMAX = BD.MAX ## Zwraca wartość maksymalną z wybranych wpisów bazy danych. +DMIN = BD.MIN ## Zwraca wartość minimalną z wybranych wpisów bazy danych. +DPRODUCT = BD.ILOCZYN ## Mnoży wartości w konkretnym, spełniającym kryteria polu rekordów bazy danych. +DSTDEV = BD.ODCH.STANDARD ## Szacuje odchylenie standardowe na podstawie próbki z wybranych wpisów bazy danych. +DSTDEVP = BD.ODCH.STANDARD.POPUL ## Oblicza odchylenie standardowe na podstawie całej populacji wybranych wpisów bazy danych. +DSUM = BD.SUMA ## Dodaje liczby w kolumnie pól rekordów bazy danych, które spełniają kryteria. +DVAR = BD.WARIANCJA ## Szacuje wariancję na podstawie próbki z wybranych wpisów bazy danych. +DVARP = BD.WARIANCJA.POPUL ## Oblicza wariancję na podstawie całej populacji wybranych wpisów bazy danych. + + +## +## Date and time functions Funkcje dat, godzin i czasu +## +DATE = DATA ## Zwraca liczbę seryjną dla wybranej daty. +DATEVALUE = DATA.WARTOŚĆ ## Konwertuje datę w formie tekstu na liczbę seryjną. +DAY = DZIEŃ ## Konwertuje liczbę seryjną na dzień miesiąca. +DAYS360 = DNI.360 ## Oblicza liczbę dni między dwiema datami na podstawie roku 360-dniowego. +EDATE = UPŁDNI ## Zwraca liczbę seryjną daty jako wskazaną liczbę miesięcy przed określoną datą początkową lub po niej. +EOMONTH = EOMONTH ## Zwraca liczbę seryjną ostatniego dnia miesiąca przed określoną liczbą miesięcy lub po niej. +HOUR = GODZINA ## Konwertuje liczbę seryjną na godzinę. +MINUTE = MINUTA ## Konwertuje liczbę seryjną na minutę. +MONTH = MIESIĄC ## Konwertuje liczbę seryjną na miesiąc. +NETWORKDAYS = NETWORKDAYS ## Zwraca liczbę pełnych dni roboczych między dwiema datami. +NOW = TERAZ ## Zwraca liczbę seryjną bieżącej daty i godziny. +SECOND = SEKUNDA ## Konwertuje liczbę seryjną na sekundę. +TIME = CZAS ## Zwraca liczbę seryjną określonego czasu. +TIMEVALUE = CZAS.WARTOŚĆ ## Konwertuje czas w formie tekstu na liczbę seryjną. +TODAY = DZIŚ ## Zwraca liczbę seryjną dla daty bieżącej. +WEEKDAY = DZIEŃ.TYG ## Konwertuje liczbę seryjną na dzień tygodnia. +WEEKNUM = WEEKNUM ## Konwertuje liczbę seryjną na liczbę reprezentującą numer tygodnia w roku. +WORKDAY = WORKDAY ## Zwraca liczbę seryjną dla daty przed określoną liczbą dni roboczych lub po niej. +YEAR = ROK ## Konwertuje liczbę seryjną na rok. +YEARFRAC = YEARFRAC ## Zwraca część roku reprezentowaną przez pełną liczbę dni między datą początkową a datą końcową. + + +## +## Engineering functions Funkcje inżynierskie +## +BESSELI = BESSELI ## Zwraca wartość zmodyfikowanej funkcji Bessela In(x). +BESSELJ = BESSELJ ## Zwraca wartość funkcji Bessela Jn(x). +BESSELK = BESSELK ## Zwraca wartość zmodyfikowanej funkcji Bessela Kn(x). +BESSELY = BESSELY ## Zwraca wartość funkcji Bessela Yn(x). +BIN2DEC = BIN2DEC ## Konwertuje liczbę w postaci dwójkowej na liczbę w postaci dziesiętnej. +BIN2HEX = BIN2HEX ## Konwertuje liczbę w postaci dwójkowej na liczbę w postaci szesnastkowej. +BIN2OCT = BIN2OCT ## Konwertuje liczbę w postaci dwójkowej na liczbę w postaci ósemkowej. +COMPLEX = COMPLEX ## Konwertuje część rzeczywistą i urojoną na liczbę zespoloną. +CONVERT = CONVERT ## Konwertuje liczbę z jednego systemu miar na inny. +DEC2BIN = DEC2BIN ## Konwertuje liczbę w postaci dziesiętnej na postać dwójkową. +DEC2HEX = DEC2HEX ## Konwertuje liczbę w postaci dziesiętnej na liczbę w postaci szesnastkowej. +DEC2OCT = DEC2OCT ## Konwertuje liczbę w postaci dziesiętnej na liczbę w postaci ósemkowej. +DELTA = DELTA ## Sprawdza, czy dwie wartości są równe. +ERF = ERF ## Zwraca wartość funkcji błędu. +ERFC = ERFC ## Zwraca wartość komplementarnej funkcji błędu. +GESTEP = GESTEP ## Sprawdza, czy liczba jest większa niż wartość progowa. +HEX2BIN = HEX2BIN ## Konwertuje liczbę w postaci szesnastkowej na liczbę w postaci dwójkowej. +HEX2DEC = HEX2DEC ## Konwertuje liczbę w postaci szesnastkowej na liczbę w postaci dziesiętnej. +HEX2OCT = HEX2OCT ## Konwertuje liczbę w postaci szesnastkowej na liczbę w postaci ósemkowej. +IMABS = IMABS ## Zwraca wartość bezwzględną (moduł) liczby zespolonej. +IMAGINARY = IMAGINARY ## Zwraca wartość części urojonej liczby zespolonej. +IMARGUMENT = IMARGUMENT ## Zwraca wartość argumentu liczby zespolonej, przy czym kąt wyrażony jest w radianach. +IMCONJUGATE = IMCONJUGATE ## Zwraca wartość liczby sprzężonej danej liczby zespolonej. +IMCOS = IMCOS ## Zwraca wartość cosinusa liczby zespolonej. +IMDIV = IMDIV ## Zwraca wartość ilorazu dwóch liczb zespolonych. +IMEXP = IMEXP ## Zwraca postać wykładniczą liczby zespolonej. +IMLN = IMLN ## Zwraca wartość logarytmu naturalnego liczby zespolonej. +IMLOG10 = IMLOG10 ## Zwraca wartość logarytmu dziesiętnego liczby zespolonej. +IMLOG2 = IMLOG2 ## Zwraca wartość logarytmu liczby zespolonej przy podstawie 2. +IMPOWER = IMPOWER ## Zwraca wartość liczby zespolonej podniesionej do potęgi całkowitej. +IMPRODUCT = IMPRODUCT ## Zwraca wartość iloczynu liczb zespolonych. +IMREAL = IMREAL ## Zwraca wartość części rzeczywistej liczby zespolonej. +IMSIN = IMSIN ## Zwraca wartość sinusa liczby zespolonej. +IMSQRT = IMSQRT ## Zwraca wartość pierwiastka kwadratowego z liczby zespolonej. +IMSUB = IMSUB ## Zwraca wartość różnicy dwóch liczb zespolonych. +IMSUM = IMSUM ## Zwraca wartość sumy liczb zespolonych. +OCT2BIN = OCT2BIN ## Konwertuje liczbę w postaci ósemkowej na liczbę w postaci dwójkowej. +OCT2DEC = OCT2DEC ## Konwertuje liczbę w postaci ósemkowej na liczbę w postaci dziesiętnej. +OCT2HEX = OCT2HEX ## Konwertuje liczbę w postaci ósemkowej na liczbę w postaci szesnastkowej. + + +## +## Financial functions Funkcje finansowe +## +ACCRINT = ACCRINT ## Zwraca narosłe odsetki dla papieru wartościowego z oprocentowaniem okresowym. +ACCRINTM = ACCRINTM ## Zwraca narosłe odsetki dla papieru wartościowego z oprocentowaniem w terminie wykupu. +AMORDEGRC = AMORDEGRC ## Zwraca amortyzację dla każdego okresu rozliczeniowego z wykorzystaniem współczynnika amortyzacji. +AMORLINC = AMORLINC ## Zwraca amortyzację dla każdego okresu rozliczeniowego. +COUPDAYBS = COUPDAYBS ## Zwraca liczbę dni od początku okresu dywidendy do dnia rozliczeniowego. +COUPDAYS = COUPDAYS ## Zwraca liczbę dni w okresie dywidendy, z uwzględnieniem dnia rozliczeniowego. +COUPDAYSNC = COUPDAYSNC ## Zwraca liczbę dni od dnia rozliczeniowego do daty następnego dnia dywidendy. +COUPNCD = COUPNCD ## Zwraca dzień następnej dywidendy po dniu rozliczeniowym. +COUPNUM = COUPNUM ## Zwraca liczbę dywidend płatnych między dniem rozliczeniowym a dniem wykupu. +COUPPCD = COUPPCD ## Zwraca dzień poprzedniej dywidendy przed dniem rozliczeniowym. +CUMIPMT = CUMIPMT ## Zwraca wartość procentu składanego płatnego między dwoma okresami. +CUMPRINC = CUMPRINC ## Zwraca wartość kapitału skumulowanego spłaty pożyczki między dwoma okresami. +DB = DB ## Zwraca amortyzację środka trwałego w danym okresie metodą degresywną z zastosowaniem stałej bazowej. +DDB = DDB ## Zwraca amortyzację środka trwałego za podany okres metodą degresywną z zastosowaniem podwójnej bazowej lub metodą określoną przez użytkownika. +DISC = DISC ## Zwraca wartość stopy dyskontowej papieru wartościowego. +DOLLARDE = DOLLARDE ## Konwertuje cenę w postaci ułamkowej na cenę wyrażoną w postaci dziesiętnej. +DOLLARFR = DOLLARFR ## Konwertuje cenę wyrażoną w postaci dziesiętnej na cenę wyrażoną w postaci ułamkowej. +DURATION = DURATION ## Zwraca wartość rocznego przychodu z papieru wartościowego o okresowych wypłatach oprocentowania. +EFFECT = EFFECT ## Zwraca wartość efektywnej rocznej stopy procentowej. +FV = FV ## Zwraca przyszłą wartość lokaty. +FVSCHEDULE = FVSCHEDULE ## Zwraca przyszłą wartość kapitału początkowego wraz z szeregiem procentów składanych. +INTRATE = INTRATE ## Zwraca wartość stopy procentowej papieru wartościowego całkowicie ulokowanego. +IPMT = IPMT ## Zwraca wysokość spłaty oprocentowania lokaty za dany okres. +IRR = IRR ## Zwraca wartość wewnętrznej stopy zwrotu dla serii przepływów gotówkowych. +ISPMT = ISPMT ## Oblicza wysokość spłaty oprocentowania za dany okres lokaty. +MDURATION = MDURATION ## Zwraca wartość zmodyfikowanego okresu Macauleya dla papieru wartościowego o założonej wartości nominalnej 100 zł. +MIRR = MIRR ## Zwraca wartość wewnętrznej stopy zwrotu dla przypadku, gdy dodatnie i ujemne przepływy gotówkowe mają różne stopy. +NOMINAL = NOMINAL ## Zwraca wysokość nominalnej rocznej stopy procentowej. +NPER = NPER ## Zwraca liczbę okresów dla lokaty. +NPV = NPV ## Zwraca wartość bieżącą netto lokaty na podstawie szeregu okresowych przepływów gotówkowych i stopy dyskontowej. +ODDFPRICE = ODDFPRICE ## Zwraca cenę za 100 zł wartości nominalnej papieru wartościowego z nietypowym pierwszym okresem. +ODDFYIELD = ODDFYIELD ## Zwraca rentowność papieru wartościowego z nietypowym pierwszym okresem. +ODDLPRICE = ODDLPRICE ## Zwraca cenę za 100 zł wartości nominalnej papieru wartościowego z nietypowym ostatnim okresem. +ODDLYIELD = ODDLYIELD ## Zwraca rentowność papieru wartościowego z nietypowym ostatnim okresem. +PMT = PMT ## Zwraca wartość okresowej płatności raty rocznej. +PPMT = PPMT ## Zwraca wysokość spłaty kapitału w przypadku lokaty dla danego okresu. +PRICE = PRICE ## Zwraca cenę za 100 zł wartości nominalnej papieru wartościowego z oprocentowaniem okresowym. +PRICEDISC = PRICEDISC ## Zwraca cenę za 100 zł wartości nominalnej papieru wartościowego zdyskontowanego. +PRICEMAT = PRICEMAT ## Zwraca cenę za 100 zł wartości nominalnej papieru wartościowego z oprocentowaniem w terminie wykupu. +PV = PV ## Zwraca wartość bieżącą lokaty. +RATE = RATE ## Zwraca wysokość stopy procentowej w okresie raty rocznej. +RECEIVED = RECEIVED ## Zwraca wartość kapitału otrzymanego przy wykupie papieru wartościowego całkowicie ulokowanego. +SLN = SLN ## Zwraca amortyzację środka trwałego za jeden okres metodą liniową. +SYD = SYD ## Zwraca amortyzację środka trwałego za dany okres metodą sumy cyfr lat amortyzacji. +TBILLEQ = TBILLEQ ## Zwraca rentowność ekwiwalentu obligacji dla bonu skarbowego. +TBILLPRICE = TBILLPRICE ## Zwraca cenę za 100 zł wartości nominalnej bonu skarbowego. +TBILLYIELD = TBILLYIELD ## Zwraca rentowność bonu skarbowego. +VDB = VDB ## Oblicza amortyzację środka trwałego w danym okresie lub jego części metodą degresywną. +XIRR = XIRR ## Zwraca wartość wewnętrznej stopy zwrotu dla serii rozłożonych w czasie przepływów gotówkowych, niekoniecznie okresowych. +XNPV = XNPV ## Zwraca wartość bieżącą netto dla serii rozłożonych w czasie przepływów gotówkowych, niekoniecznie okresowych. +YIELD = YIELD ## Zwraca rentowność papieru wartościowego z oprocentowaniem okresowym. +YIELDDISC = YIELDDISC ## Zwraca roczną rentowność zdyskontowanego papieru wartościowego, na przykład bonu skarbowego. +YIELDMAT = YIELDMAT ## Zwraca roczną rentowność papieru wartościowego oprocentowanego przy wykupie. + + +## +## Information functions Funkcje informacyjne +## +CELL = KOMÓRKA ## Zwraca informacje o formacie, położeniu lub zawartości komórki. +ERROR.TYPE = NR.BŁĘDU ## Zwraca liczbę odpowiadającą typowi błędu. +INFO = INFO ## Zwraca informację o aktualnym środowisku pracy. +ISBLANK = CZY.PUSTA ## Zwraca wartość PRAWDA, jeśli wartość jest pusta. +ISERR = CZY.BŁ ## Zwraca wartość PRAWDA, jeśli wartość jest dowolną wartością błędu, z wyjątkiem #N/D!. +ISERROR = CZY.BŁĄD ## Zwraca wartość PRAWDA, jeśli wartość jest dowolną wartością błędu. +ISEVEN = ISEVEN ## Zwraca wartość PRAWDA, jeśli liczba jest parzysta. +ISLOGICAL = CZY.LOGICZNA ## Zwraca wartość PRAWDA, jeśli wartość jest wartością logiczną. +ISNA = CZY.BRAK ## Zwraca wartość PRAWDA, jeśli wartość jest wartością błędu #N/D!. +ISNONTEXT = CZY.NIE.TEKST ## Zwraca wartość PRAWDA, jeśli wartość nie jest tekstem. +ISNUMBER = CZY.LICZBA ## Zwraca wartość PRAWDA, jeśli wartość jest liczbą. +ISODD = ISODD ## Zwraca wartość PRAWDA, jeśli liczba jest nieparzysta. +ISREF = CZY.ADR ## Zwraca wartość PRAWDA, jeśli wartość jest odwołaniem. +ISTEXT = CZY.TEKST ## Zwraca wartość PRAWDA, jeśli wartość jest tekstem. +N = L ## Zwraca wartość przekonwertowaną na postać liczbową. +NA = BRAK ## Zwraca wartość błędu #N/D!. +TYPE = TYP ## Zwraca liczbę wskazującą typ danych wartości. + + +## +## Logical functions Funkcje logiczne +## +AND = ORAZ ## Zwraca wartość PRAWDA, jeśli wszystkie argumenty mają wartość PRAWDA. +FALSE = FAŁSZ ## Zwraca wartość logiczną FAŁSZ. +IF = JEŻELI ## Określa warunek logiczny do sprawdzenia. +IFERROR = JEŻELI.BŁĄD ## Zwraca określoną wartość, jeśli wynikiem obliczenia formuły jest błąd; w przeciwnym przypadku zwraca wynik formuły. +NOT = NIE ## Odwraca wartość logiczną argumentu. +OR = LUB ## Zwraca wartość PRAWDA, jeśli co najmniej jeden z argumentów ma wartość PRAWDA. +TRUE = PRAWDA ## Zwraca wartość logiczną PRAWDA. + + +## +## Lookup and reference functions Funkcje wyszukiwania i odwołań +## +ADDRESS = ADRES ## Zwraca odwołanie do jednej komórki w arkuszu jako wartość tekstową. +AREAS = OBSZARY ## Zwraca liczbę obszarów występujących w odwołaniu. +CHOOSE = WYBIERZ ## Wybiera wartość z listy wartości. +COLUMN = NR.KOLUMNY ## Zwraca numer kolumny z odwołania. +COLUMNS = LICZBA.KOLUMN ## Zwraca liczbę kolumn dla danego odwołania. +HLOOKUP = WYSZUKAJ.POZIOMO ## Przegląda górny wiersz tablicy i zwraca wartość wskazanej komórki. +HYPERLINK = HIPERŁĄCZE ## Tworzy skrót lub skok, który pozwala otwierać dokument przechowywany na serwerze sieciowym, w sieci intranet lub w Internecie. +INDEX = INDEKS ## Używa indeksu do wybierania wartości z odwołania lub tablicy. +INDIRECT = ADR.POŚR ## Zwraca odwołanie określone przez wartość tekstową. +LOOKUP = WYSZUKAJ ## Wyszukuje wartości w wektorze lub tablicy. +MATCH = PODAJ.POZYCJĘ ## Wyszukuje wartości w odwołaniu lub w tablicy. +OFFSET = PRZESUNIĘCIE ## Zwraca adres przesunięty od danego odwołania. +ROW = WIERSZ ## Zwraca numer wiersza odwołania. +ROWS = ILE.WIERSZY ## Zwraca liczbę wierszy dla danego odwołania. +RTD = RTD ## Pobiera dane w czasie rzeczywistym z programu obsługującego automatyzację COM (Automatyzacja: Sposób pracy z obiektami aplikacji pochodzącymi z innej aplikacji lub narzędzia projektowania. Nazywana wcześniej Automatyzacją OLE, Automatyzacja jest standardem przemysłowym i funkcją obiektowego modelu składników (COM, Component Object Model).). +TRANSPOSE = TRANSPONUJ ## Zwraca transponowaną tablicę. +VLOOKUP = WYSZUKAJ.PIONOWO ## Przeszukuje pierwszą kolumnę tablicy i przechodzi wzdłuż wiersza, aby zwrócić wartość komórki. + + +## +## Math and trigonometry functions Funkcje matematyczne i trygonometryczne +## +ABS = MODUŁ.LICZBY ## Zwraca wartość absolutną liczby. +ACOS = ACOS ## Zwraca arcus cosinus liczby. +ACOSH = ACOSH ## Zwraca arcus cosinus hiperboliczny liczby. +ASIN = ASIN ## Zwraca arcus sinus liczby. +ASINH = ASINH ## Zwraca arcus sinus hiperboliczny liczby. +ATAN = ATAN ## Zwraca arcus tangens liczby. +ATAN2 = ATAN2 ## Zwraca arcus tangens liczby na podstawie współrzędnych x i y. +ATANH = ATANH ## Zwraca arcus tangens hiperboliczny liczby. +CEILING = ZAOKR.W.GÓRĘ ## Zaokrągla liczbę do najbliższej liczby całkowitej lub do najbliższej wielokrotności dokładności. +COMBIN = KOMBINACJE ## Zwraca liczbę kombinacji dla danej liczby obiektów. +COS = COS ## Zwraca cosinus liczby. +COSH = COSH ## Zwraca cosinus hiperboliczny liczby. +DEGREES = STOPNIE ## Konwertuje radiany na stopnie. +EVEN = ZAOKR.DO.PARZ ## Zaokrągla liczbę w górę do najbliższej liczby parzystej. +EXP = EXP ## Zwraca wartość liczby e podniesionej do potęgi określonej przez podaną liczbę. +FACT = SILNIA ## Zwraca silnię liczby. +FACTDOUBLE = FACTDOUBLE ## Zwraca podwójną silnię liczby. +FLOOR = ZAOKR.W.DÓŁ ## Zaokrągla liczbę w dół, w kierunku zera. +GCD = GCD ## Zwraca największy wspólny dzielnik. +INT = ZAOKR.DO.CAŁK ## Zaokrągla liczbę w dół do najbliższej liczby całkowitej. +LCM = LCM ## Zwraca najmniejszą wspólną wielokrotność. +LN = LN ## Zwraca logarytm naturalny podanej liczby. +LOG = LOG ## Zwraca logarytm danej liczby przy zadanej podstawie. +LOG10 = LOG10 ## Zwraca logarytm dziesiętny liczby. +MDETERM = WYZNACZNIK.MACIERZY ## Zwraca wyznacznik macierzy tablicy. +MINVERSE = MACIERZ.ODW ## Zwraca odwrotność macierzy tablicy. +MMULT = MACIERZ.ILOCZYN ## Zwraca iloczyn macierzy dwóch tablic. +MOD = MOD ## Zwraca resztę z dzielenia. +MROUND = MROUND ## Zwraca liczbę zaokrągloną do żądanej wielokrotności. +MULTINOMIAL = MULTINOMIAL ## Zwraca wielomian dla zbioru liczb. +ODD = ZAOKR.DO.NPARZ ## Zaokrągla liczbę w górę do najbliższej liczby nieparzystej. +PI = PI ## Zwraca wartość liczby Pi. +POWER = POTĘGA ## Zwraca liczbę podniesioną do potęgi. +PRODUCT = ILOCZYN ## Mnoży argumenty. +QUOTIENT = QUOTIENT ## Zwraca iloraz (całkowity). +RADIANS = RADIANY ## Konwertuje stopnie na radiany. +RAND = LOS ## Zwraca liczbę pseudolosową z zakresu od 0 do 1. +RANDBETWEEN = RANDBETWEEN ## Zwraca liczbę pseudolosową z zakresu określonego przez podane argumenty. +ROMAN = RZYMSKIE ## Konwertuje liczbę arabską na rzymską jako tekst. +ROUND = ZAOKR ## Zaokrągla liczbę do określonej liczby cyfr. +ROUNDDOWN = ZAOKR.DÓŁ ## Zaokrągla liczbę w dół, w kierunku zera. +ROUNDUP = ZAOKR.GÓRA ## Zaokrągla liczbę w górę, w kierunku od zera. +SERIESSUM = SERIESSUM ## Zwraca sumę szeregu potęgowego na podstawie wzoru. +SIGN = ZNAK.LICZBY ## Zwraca znak liczby. +SIN = SIN ## Zwraca sinus danego kąta. +SINH = SINH ## Zwraca sinus hiperboliczny liczby. +SQRT = PIERWIASTEK ## Zwraca dodatni pierwiastek kwadratowy. +SQRTPI = SQRTPI ## Zwraca pierwiastek kwadratowy iloczynu (liczba * Pi). +SUBTOTAL = SUMY.POŚREDNIE ## Zwraca sumę częściową listy lub bazy danych. +SUM = SUMA ## Dodaje argumenty. +SUMIF = SUMA.JEŻELI ## Dodaje komórki określone przez podane kryterium. +SUMIFS = SUMA.WARUNKÓW ## Dodaje komórki w zakresie, które spełniają wiele kryteriów. +SUMPRODUCT = SUMA.ILOCZYNÓW ## Zwraca sumę iloczynów odpowiednich elementów tablicy. +SUMSQ = SUMA.KWADRATÓW ## Zwraca sumę kwadratów argumentów. +SUMX2MY2 = SUMA.X2.M.Y2 ## Zwraca sumę różnic kwadratów odpowiednich wartości w dwóch tablicach. +SUMX2PY2 = SUMA.X2.P.Y2 ## Zwraca sumę sum kwadratów odpowiednich wartości w dwóch tablicach. +SUMXMY2 = SUMA.XMY.2 ## Zwraca sumę kwadratów różnic odpowiednich wartości w dwóch tablicach. +TAN = TAN ## Zwraca tangens liczby. +TANH = TANH ## Zwraca tangens hiperboliczny liczby. +TRUNC = LICZBA.CAŁK ## Przycina liczbę do wartości całkowitej. + + +## +## Statistical functions Funkcje statystyczne +## +AVEDEV = ODCH.ŚREDNIE ## Zwraca średnią wartość odchyleń absolutnych punktów danych od ich wartości średniej. +AVERAGE = ŚREDNIA ## Zwraca wartość średnią argumentów. +AVERAGEA = ŚREDNIA.A ## Zwraca wartość średnią argumentów, z uwzględnieniem liczb, tekstów i wartości logicznych. +AVERAGEIF = ŚREDNIA.JEŻELI ## Zwraca średnią (średnią arytmetyczną) wszystkich komórek w zakresie, które spełniają podane kryteria. +AVERAGEIFS = ŚREDNIA.WARUNKÓW ## Zwraca średnią (średnią arytmetyczną) wszystkich komórek, które spełniają jedno lub więcej kryteriów. +BETADIST = ROZKŁAD.BETA ## Zwraca skumulowaną funkcję gęstości prawdopodobieństwa beta. +BETAINV = ROZKŁAD.BETA.ODW ## Zwraca odwrotność skumulowanej funkcji gęstości prawdopodobieństwa beta. +BINOMDIST = ROZKŁAD.DWUM ## Zwraca pojedynczy składnik dwumianowego rozkładu prawdopodobieństwa. +CHIDIST = ROZKŁAD.CHI ## Zwraca wartość jednostronnego prawdopodobieństwa rozkładu chi-kwadrat. +CHIINV = ROZKŁAD.CHI.ODW ## Zwraca odwrotność wartości jednostronnego prawdopodobieństwa rozkładu chi-kwadrat. +CHITEST = TEST.CHI ## Zwraca test niezależności. +CONFIDENCE = UFNOŚĆ ## Zwraca interwał ufności dla średniej populacji. +CORREL = WSP.KORELACJI ## Zwraca współczynnik korelacji dwóch zbiorów danych. +COUNT = ILE.LICZB ## Zlicza liczby znajdujące się na liście argumentów. +COUNTA = ILE.NIEPUSTYCH ## Zlicza wartości znajdujące się na liście argumentów. +COUNTBLANK = LICZ.PUSTE ## Zwraca liczbę pustych komórek w pewnym zakresie. +COUNTIF = LICZ.JEŻELI ## Zlicza komórki wewnątrz zakresu, które spełniają podane kryteria. +COUNTIFS = LICZ.WARUNKI ## Zlicza komórki wewnątrz zakresu, które spełniają wiele kryteriów. +COVAR = KOWARIANCJA ## Zwraca kowariancję, czyli średnią wartość iloczynów odpowiednich odchyleń. +CRITBINOM = PRÓG.ROZKŁAD.DWUM ## Zwraca najmniejszą wartość, dla której skumulowany rozkład dwumianowy jest mniejszy niż wartość kryterium lub równy jej. +DEVSQ = ODCH.KWADRATOWE ## Zwraca sumę kwadratów odchyleń. +EXPONDIST = ROZKŁAD.EXP ## Zwraca rozkład wykładniczy. +FDIST = ROZKŁAD.F ## Zwraca rozkład prawdopodobieństwa F. +FINV = ROZKŁAD.F.ODW ## Zwraca odwrotność rozkładu prawdopodobieństwa F. +FISHER = ROZKŁAD.FISHER ## Zwraca transformację Fishera. +FISHERINV = ROZKŁAD.FISHER.ODW ## Zwraca odwrotność transformacji Fishera. +FORECAST = REGLINX ## Zwraca wartość trendu liniowego. +FREQUENCY = CZĘSTOŚĆ ## Zwraca rozkład częstotliwości jako tablicę pionową. +FTEST = TEST.F ## Zwraca wynik testu F. +GAMMADIST = ROZKŁAD.GAMMA ## Zwraca rozkład gamma. +GAMMAINV = ROZKŁAD.GAMMA.ODW ## Zwraca odwrotność skumulowanego rozkładu gamma. +GAMMALN = ROZKŁAD.LIN.GAMMA ## Zwraca logarytm naturalny funkcji gamma, Γ(x). +GEOMEAN = ŚREDNIA.GEOMETRYCZNA ## Zwraca średnią geometryczną. +GROWTH = REGEXPW ## Zwraca wartości trendu wykładniczego. +HARMEAN = ŚREDNIA.HARMONICZNA ## Zwraca średnią harmoniczną. +HYPGEOMDIST = ROZKŁAD.HIPERGEOM ## Zwraca rozkład hipergeometryczny. +INTERCEPT = ODCIĘTA ## Zwraca punkt przecięcia osi pionowej z linią regresji liniowej. +KURT = KURTOZA ## Zwraca kurtozę zbioru danych. +LARGE = MAX.K ## Zwraca k-tą największą wartość ze zbioru danych. +LINEST = REGLINP ## Zwraca parametry trendu liniowego. +LOGEST = REGEXPP ## Zwraca parametry trendu wykładniczego. +LOGINV = ROZKŁAD.LOG.ODW ## Zwraca odwrotność rozkładu logarytmu naturalnego. +LOGNORMDIST = ROZKŁAD.LOG ## Zwraca skumulowany rozkład logarytmu naturalnego. +MAX = MAX ## Zwraca maksymalną wartość listy argumentów. +MAXA = MAX.A ## Zwraca maksymalną wartość listy argumentów, z uwzględnieniem liczb, tekstów i wartości logicznych. +MEDIAN = MEDIANA ## Zwraca medianę podanych liczb. +MIN = MIN ## Zwraca minimalną wartość listy argumentów. +MINA = MIN.A ## Zwraca najmniejszą wartość listy argumentów, z uwzględnieniem liczb, tekstów i wartości logicznych. +MODE = WYST.NAJCZĘŚCIEJ ## Zwraca wartość najczęściej występującą w zbiorze danych. +NEGBINOMDIST = ROZKŁAD.DWUM.PRZEC ## Zwraca ujemny rozkład dwumianowy. +NORMDIST = ROZKŁAD.NORMALNY ## Zwraca rozkład normalny skumulowany. +NORMINV = ROZKŁAD.NORMALNY.ODW ## Zwraca odwrotność rozkładu normalnego skumulowanego. +NORMSDIST = ROZKŁAD.NORMALNY.S ## Zwraca standardowy rozkład normalny skumulowany. +NORMSINV = ROZKŁAD.NORMALNY.S.ODW ## Zwraca odwrotność standardowego rozkładu normalnego skumulowanego. +PEARSON = PEARSON ## Zwraca współczynnik korelacji momentu iloczynu Pearsona. +PERCENTILE = PERCENTYL ## Wyznacza k-ty percentyl wartości w zakresie. +PERCENTRANK = PROCENT.POZYCJA ## Zwraca procentową pozycję wartości w zbiorze danych. +PERMUT = PERMUTACJE ## Zwraca liczbę permutacji dla danej liczby obiektów. +POISSON = ROZKŁAD.POISSON ## Zwraca rozkład Poissona. +PROB = PRAWDPD ## Zwraca prawdopodobieństwo, że wartości w zakresie leżą pomiędzy dwiema granicami. +QUARTILE = KWARTYL ## Wyznacza kwartyl zbioru danych. +RANK = POZYCJA ## Zwraca pozycję liczby na liście liczb. +RSQ = R.KWADRAT ## Zwraca kwadrat współczynnika korelacji momentu iloczynu Pearsona. +SKEW = SKOŚNOŚĆ ## Zwraca skośność rozkładu. +SLOPE = NACHYLENIE ## Zwraca nachylenie linii regresji liniowej. +SMALL = MIN.K ## Zwraca k-tą najmniejszą wartość ze zbioru danych. +STANDARDIZE = NORMALIZUJ ## Zwraca wartość znormalizowaną. +STDEV = ODCH.STANDARDOWE ## Szacuje odchylenie standardowe na podstawie próbki. +STDEVA = ODCH.STANDARDOWE.A ## Szacuje odchylenie standardowe na podstawie próbki, z uwzględnieniem liczb, tekstów i wartości logicznych. +STDEVP = ODCH.STANDARD.POPUL ## Oblicza odchylenie standardowe na podstawie całej populacji. +STDEVPA = ODCH.STANDARD.POPUL.A ## Oblicza odchylenie standardowe na podstawie całej populacji, z uwzględnieniem liczb, teksów i wartości logicznych. +STEYX = REGBŁSTD ## Zwraca błąd standardowy przewidzianej wartości y dla każdej wartości x w regresji. +TDIST = ROZKŁAD.T ## Zwraca rozkład t-Studenta. +TINV = ROZKŁAD.T.ODW ## Zwraca odwrotność rozkładu t-Studenta. +TREND = REGLINW ## Zwraca wartości trendu liniowego. +TRIMMEAN = ŚREDNIA.WEWN ## Zwraca średnią wartość dla wnętrza zbioru danych. +TTEST = TEST.T ## Zwraca prawdopodobieństwo związane z testem t-Studenta. +VAR = WARIANCJA ## Szacuje wariancję na podstawie próbki. +VARA = WARIANCJA.A ## Szacuje wariancję na podstawie próbki, z uwzględnieniem liczb, tekstów i wartości logicznych. +VARP = WARIANCJA.POPUL ## Oblicza wariancję na podstawie całej populacji. +VARPA = WARIANCJA.POPUL.A ## Oblicza wariancję na podstawie całej populacji, z uwzględnieniem liczb, tekstów i wartości logicznych. +WEIBULL = ROZKŁAD.WEIBULL ## Zwraca rozkład Weibulla. +ZTEST = TEST.Z ## Zwraca wartość jednostronnego prawdopodobieństwa testu z. + + +## +## Text functions Funkcje tekstowe +## +ASC = ASC ## Zamienia litery angielskie lub katakana o pełnej szerokości (dwubajtowe) w ciągu znaków na znaki o szerokości połówkowej (jednobajtowe). +BAHTTEXT = BAHTTEXT ## Konwertuje liczbę na tekst, stosując format walutowy ß (baht). +CHAR = ZNAK ## Zwraca znak o podanym numerze kodu. +CLEAN = OCZYŚĆ ## Usuwa z tekstu wszystkie znaki, które nie mogą być drukowane. +CODE = KOD ## Zwraca kod numeryczny pierwszego znaku w ciągu tekstowym. +CONCATENATE = ZŁĄCZ.TEKSTY ## Łączy kilka oddzielnych tekstów w jeden tekst. +DOLLAR = KWOTA ## Konwertuje liczbę na tekst, stosując format walutowy $ (dolar). +EXACT = PORÓWNAJ ## Sprawdza identyczność dwóch wartości tekstowych. +FIND = ZNAJDŹ ## Znajduje jedną wartość tekstową wewnątrz innej (z uwzględnieniem wielkich i małych liter). +FINDB = ZNAJDŹB ## Znajduje jedną wartość tekstową wewnątrz innej (z uwzględnieniem wielkich i małych liter). +FIXED = ZAOKR.DO.TEKST ## Formatuje liczbę jako tekst przy stałej liczbie miejsc dziesiętnych. +JIS = JIS ## Zmienia litery angielskie lub katakana o szerokości połówkowej (jednobajtowe) w ciągu znaków na znaki o pełnej szerokości (dwubajtowe). +LEFT = LEWY ## Zwraca skrajne lewe znaki z wartości tekstowej. +LEFTB = LEWYB ## Zwraca skrajne lewe znaki z wartości tekstowej. +LEN = DŁ ## Zwraca liczbę znaków ciągu tekstowego. +LENB = DŁ.B ## Zwraca liczbę znaków ciągu tekstowego. +LOWER = LITERY.MAŁE ## Konwertuje wielkie litery tekstu na małe litery. +MID = FRAGMENT.TEKSTU ## Zwraca określoną liczbę znaków z ciągu tekstowego, zaczynając od zadanej pozycji. +MIDB = FRAGMENT.TEKSTU.B ## Zwraca określoną liczbę znaków z ciągu tekstowego, zaczynając od zadanej pozycji. +PHONETIC = PHONETIC ## Wybiera znaki fonetyczne (furigana) z ciągu tekstowego. +PROPER = Z.WIELKIEJ.LITERY ## Zastępuje pierwszą literę każdego wyrazu tekstu wielką literą. +REPLACE = ZASTĄP ## Zastępuje znaki w tekście. +REPLACEB = ZASTĄP.B ## Zastępuje znaki w tekście. +REPT = POWT ## Powiela tekst daną liczbę razy. +RIGHT = PRAWY ## Zwraca skrajne prawe znaki z wartości tekstowej. +RIGHTB = PRAWYB ## Zwraca skrajne prawe znaki z wartości tekstowej. +SEARCH = SZUKAJ.TEKST ## Wyszukuje jedną wartość tekstową wewnątrz innej (bez uwzględniania wielkości liter). +SEARCHB = SZUKAJ.TEKST.B ## Wyszukuje jedną wartość tekstową wewnątrz innej (bez uwzględniania wielkości liter). +SUBSTITUTE = PODSTAW ## Podstawia nowy tekst w miejsce poprzedniego tekstu w ciągu tekstowym. +T = T ## Konwertuje argumenty na tekst. +TEXT = TEKST ## Formatuje liczbę i konwertuje ją na tekst. +TRIM = USUŃ.ZBĘDNE.ODSTĘPY ## Usuwa spacje z tekstu. +UPPER = LITERY.WIELKIE ## Konwertuje znaki tekstu na wielkie litery. +VALUE = WARTOŚĆ ## Konwertuje argument tekstowy na liczbę. diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/_notes/dwsync.xml new file mode 100644 index 0000000..62ad812 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461871712384" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461872899988" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/br/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/br/_notes/dwsync.xml new file mode 100644 index 0000000..0e6f2ec --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/br/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461870729186" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461871531400" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/br/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/br/config new file mode 100644 index 0000000..45b6fbd --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/br/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = R$ + + +## +## Excel Error Codes (For future use) +## +NULL = #NULO! +DIV0 = #DIV/0! +VALUE = #VALOR! +REF = #REF! +NAME = #NOME? +NUM = #NÚM! +NA = #N/D diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/br/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/br/functions new file mode 100644 index 0000000..a062a7f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/br/functions @@ -0,0 +1,408 @@ +## +## Add-in and Automation functions Funções Suplemento e Automação +## +GETPIVOTDATA = INFODADOSTABELADINÂMICA ## Retorna os dados armazenados em um relatório de tabela dinâmica + + +## +## Cube functions Funções de Cubo +## +CUBEKPIMEMBER = MEMBROKPICUBO ## Retorna o nome de um KPI (indicador de desempenho-chave), uma propriedade e uma medida e exibe o nome e a propriedade na célula. Um KPI é uma medida quantificável, como o lucro bruto mensal ou a rotatividade trimestral dos funcionários, usada para monitorar o desempenho de uma organização. +CUBEMEMBER = MEMBROCUBO ## Retorna um membro ou tupla em uma hierarquia de cubo. Use para validar se o membro ou tupla existe no cubo. +CUBEMEMBERPROPERTY = PROPRIEDADEMEMBROCUBO ## Retorna o valor da propriedade de um membro no cubo. Usada para validar a existência do nome do membro no cubo e para retornar a propriedade especificada para esse membro. +CUBERANKEDMEMBER = MEMBROCLASSIFICADOCUBO ## Retorna o enésimo membro, ou o membro ordenado, em um conjunto. Use para retornar um ou mais elementos em um conjunto, assim como o melhor vendedor ou os dez melhores alunos. +CUBESET = CONJUNTOCUBO ## Define um conjunto calculado de membros ou tuplas enviando uma expressão do conjunto para o cubo no servidor, que cria o conjunto e o retorna para o Microsoft Office Excel. +CUBESETCOUNT = CONTAGEMCONJUNTOCUBO ## Retorna o número de itens em um conjunto. +CUBEVALUE = VALORCUBO ## Retorna um valor agregado de um cubo. + + +## +## Database functions Funções de banco de dados +## +DAVERAGE = BDMÉDIA ## Retorna a média das entradas selecionadas de um banco de dados +DCOUNT = BDCONTAR ## Conta as células que contêm números em um banco de dados +DCOUNTA = BDCONTARA ## Conta células não vazias em um banco de dados +DGET = BDEXTRAIR ## Extrai de um banco de dados um único registro que corresponde a um critério específico +DMAX = BDMÁX ## Retorna o valor máximo de entradas selecionadas de um banco de dados +DMIN = BDMÍN ## Retorna o valor mínimo de entradas selecionadas de um banco de dados +DPRODUCT = BDMULTIPL ## Multiplica os valores em um campo específico de registros que correspondem ao critério em um banco de dados +DSTDEV = BDEST ## Estima o desvio padrão com base em uma amostra de entradas selecionadas de um banco de dados +DSTDEVP = BDDESVPA ## Calcula o desvio padrão com base na população inteira de entradas selecionadas de um banco de dados +DSUM = BDSOMA ## Adiciona os números à coluna de campos de registros do banco de dados que correspondem ao critério +DVAR = BDVAREST ## Estima a variância com base em uma amostra de entradas selecionadas de um banco de dados +DVARP = BDVARP ## Calcula a variância com base na população inteira de entradas selecionadas de um banco de dados + + +## +## Date and time functions Funções de data e hora +## +DATE = DATA ## Retorna o número de série de uma data específica +DATEVALUE = DATA.VALOR ## Converte uma data na forma de texto para um número de série +DAY = DIA ## Converte um número de série em um dia do mês +DAYS360 = DIAS360 ## Calcula o número de dias entre duas datas com base em um ano de 360 dias +EDATE = DATAM ## Retorna o número de série da data que é o número indicado de meses antes ou depois da data inicial +EOMONTH = FIMMÊS ## Retorna o número de série do último dia do mês antes ou depois de um número especificado de meses +HOUR = HORA ## Converte um número de série em uma hora +MINUTE = MINUTO ## Converte um número de série em um minuto +MONTH = MÊS ## Converte um número de série em um mês +NETWORKDAYS = DIATRABALHOTOTAL ## Retorna o número de dias úteis inteiros entre duas datas +NOW = AGORA ## Retorna o número de série seqüencial da data e hora atuais +SECOND = SEGUNDO ## Converte um número de série em um segundo +TIME = HORA ## Retorna o número de série de uma hora específica +TIMEVALUE = VALOR.TEMPO ## Converte um horário na forma de texto para um número de série +TODAY = HOJE ## Retorna o número de série da data de hoje +WEEKDAY = DIA.DA.SEMANA ## Converte um número de série em um dia da semana +WEEKNUM = NÚMSEMANA ## Converte um número de série em um número que representa onde a semana cai numericamente em um ano +WORKDAY = DIATRABALHO ## Retorna o número de série da data antes ou depois de um número específico de dias úteis +YEAR = ANO ## Converte um número de série em um ano +YEARFRAC = FRAÇÃOANO ## Retorna a fração do ano que representa o número de dias entre data_inicial e data_final + + +## +## Engineering functions Funções de engenharia +## +BESSELI = BESSELI ## Retorna a função de Bessel In(x) modificada +BESSELJ = BESSELJ ## Retorna a função de Bessel Jn(x) +BESSELK = BESSELK ## Retorna a função de Bessel Kn(x) modificada +BESSELY = BESSELY ## Retorna a função de Bessel Yn(x) +BIN2DEC = BIN2DEC ## Converte um número binário em decimal +BIN2HEX = BIN2HEX ## Converte um número binário em hexadecimal +BIN2OCT = BIN2OCT ## Converte um número binário em octal +COMPLEX = COMPLEX ## Converte coeficientes reais e imaginários e um número complexo +CONVERT = CONVERTER ## Converte um número de um sistema de medida para outro +DEC2BIN = DECABIN ## Converte um número decimal em binário +DEC2HEX = DECAHEX ## Converte um número decimal em hexadecimal +DEC2OCT = DECAOCT ## Converte um número decimal em octal +DELTA = DELTA ## Testa se dois valores são iguais +ERF = FUNERRO ## Retorna a função de erro +ERFC = FUNERROCOMPL ## Retorna a função de erro complementar +GESTEP = DEGRAU ## Testa se um número é maior do que um valor limite +HEX2BIN = HEXABIN ## Converte um número hexadecimal em binário +HEX2DEC = HEXADEC ## Converte um número hexadecimal em decimal +HEX2OCT = HEXAOCT ## Converte um número hexadecimal em octal +IMABS = IMABS ## Retorna o valor absoluto (módulo) de um número complexo +IMAGINARY = IMAGINÁRIO ## Retorna o coeficiente imaginário de um número complexo +IMARGUMENT = IMARG ## Retorna o argumento teta, um ângulo expresso em radianos +IMCONJUGATE = IMCONJ ## Retorna o conjugado complexo de um número complexo +IMCOS = IMCOS ## Retorna o cosseno de um número complexo +IMDIV = IMDIV ## Retorna o quociente de dois números complexos +IMEXP = IMEXP ## Retorna o exponencial de um número complexo +IMLN = IMLN ## Retorna o logaritmo natural de um número complexo +IMLOG10 = IMLOG10 ## Retorna o logaritmo de base 10 de um número complexo +IMLOG2 = IMLOG2 ## Retorna o logaritmo de base 2 de um número complexo +IMPOWER = IMPOT ## Retorna um número complexo elevado a uma potência inteira +IMPRODUCT = IMPROD ## Retorna o produto de números complexos +IMREAL = IMREAL ## Retorna o coeficiente real de um número complexo +IMSIN = IMSENO ## Retorna o seno de um número complexo +IMSQRT = IMRAIZ ## Retorna a raiz quadrada de um número complexo +IMSUB = IMSUBTR ## Retorna a diferença entre dois números complexos +IMSUM = IMSOMA ## Retorna a soma de números complexos +OCT2BIN = OCTABIN ## Converte um número octal em binário +OCT2DEC = OCTADEC ## Converte um número octal em decimal +OCT2HEX = OCTAHEX ## Converte um número octal em hexadecimal + + +## +## Financial functions Funções financeiras +## +ACCRINT = JUROSACUM ## Retorna a taxa de juros acumulados de um título que paga uma taxa periódica de juros +ACCRINTM = JUROSACUMV ## Retorna os juros acumulados de um título que paga juros no vencimento +AMORDEGRC = AMORDEGRC ## Retorna a depreciação para cada período contábil usando o coeficiente de depreciação +AMORLINC = AMORLINC ## Retorna a depreciação para cada período contábil +COUPDAYBS = CUPDIASINLIQ ## Retorna o número de dias do início do período de cupom até a data de liquidação +COUPDAYS = CUPDIAS ## Retorna o número de dias no período de cupom que contém a data de quitação +COUPDAYSNC = CUPDIASPRÓX ## Retorna o número de dias da data de liquidação até a data do próximo cupom +COUPNCD = CUPDATAPRÓX ## Retorna a próxima data de cupom após a data de quitação +COUPNUM = CUPNÚM ## Retorna o número de cupons pagáveis entre as datas de quitação e vencimento +COUPPCD = CUPDATAANT ## Retorna a data de cupom anterior à data de quitação +CUMIPMT = PGTOJURACUM ## Retorna os juros acumulados pagos entre dois períodos +CUMPRINC = PGTOCAPACUM ## Retorna o capital acumulado pago sobre um empréstimo entre dois períodos +DB = BD ## Retorna a depreciação de um ativo para um período especificado, usando o método de balanço de declínio fixo +DDB = BDD ## Retorna a depreciação de um ativo com relação a um período especificado usando o método de saldos decrescentes duplos ou qualquer outro método especificado por você +DISC = DESC ## Retorna a taxa de desconto de um título +DOLLARDE = MOEDADEC ## Converte um preço em formato de moeda, na forma fracionária, em um preço na forma decimal +DOLLARFR = MOEDAFRA ## Converte um preço, apresentado na forma decimal, em um preço apresentado na forma fracionária +DURATION = DURAÇÃO ## Retorna a duração anual de um título com pagamentos de juros periódicos +EFFECT = EFETIVA ## Retorna a taxa de juros anual efetiva +FV = VF ## Retorna o valor futuro de um investimento +FVSCHEDULE = VFPLANO ## Retorna o valor futuro de um capital inicial após a aplicação de uma série de taxas de juros compostas +INTRATE = TAXAJUROS ## Retorna a taxa de juros de um título totalmente investido +IPMT = IPGTO ## Retorna o pagamento de juros para um investimento em um determinado período +IRR = TIR ## Retorna a taxa interna de retorno de uma série de fluxos de caixa +ISPMT = ÉPGTO ## Calcula os juros pagos durante um período específico de um investimento +MDURATION = MDURAÇÃO ## Retorna a duração de Macauley modificada para um título com um valor de paridade equivalente a R$ 100 +MIRR = MTIR ## Calcula a taxa interna de retorno em que fluxos de caixa positivos e negativos são financiados com diferentes taxas +NOMINAL = NOMINAL ## Retorna a taxa de juros nominal anual +NPER = NPER ## Retorna o número de períodos de um investimento +NPV = VPL ## Retorna o valor líquido atual de um investimento com base em uma série de fluxos de caixa periódicos e em uma taxa de desconto +ODDFPRICE = PREÇOPRIMINC ## Retorna o preço por R$ 100 de valor nominal de um título com um primeiro período indefinido +ODDFYIELD = LUCROPRIMINC ## Retorna o rendimento de um título com um primeiro período indefinido +ODDLPRICE = PREÇOÚLTINC ## Retorna o preço por R$ 100 de valor nominal de um título com um último período de cupom indefinido +ODDLYIELD = LUCROÚLTINC ## Retorna o rendimento de um título com um último período indefinido +PMT = PGTO ## Retorna o pagamento periódico de uma anuidade +PPMT = PPGTO ## Retorna o pagamento de capital para determinado período de investimento +PRICE = PREÇO ## Retorna a preço por R$ 100,00 de valor nominal de um título que paga juros periódicos +PRICEDISC = PREÇODESC ## Retorna o preço por R$ 100,00 de valor nominal de um título descontado +PRICEMAT = PREÇOVENC ## Retorna o preço por R$ 100,00 de valor nominal de um título que paga juros no vencimento +PV = VP ## Retorna o valor presente de um investimento +RATE = TAXA ## Retorna a taxa de juros por período de uma anuidade +RECEIVED = RECEBER ## Retorna a quantia recebida no vencimento de um título totalmente investido +SLN = DPD ## Retorna a depreciação em linha reta de um ativo durante um período +SYD = SDA ## Retorna a depreciação dos dígitos da soma dos anos de um ativo para um período especificado +TBILLEQ = OTN ## Retorna o rendimento de um título equivalente a uma obrigação do Tesouro +TBILLPRICE = OTNVALOR ## Retorna o preço por R$ 100,00 de valor nominal de uma obrigação do Tesouro +TBILLYIELD = OTNLUCRO ## Retorna o rendimento de uma obrigação do Tesouro +VDB = BDV ## Retorna a depreciação de um ativo para um período especificado ou parcial usando um método de balanço declinante +XIRR = XTIR ## Fornece a taxa interna de retorno para um programa de fluxos de caixa que não é necessariamente periódico +XNPV = XVPL ## Retorna o valor presente líquido de um programa de fluxos de caixa que não é necessariamente periódico +YIELD = LUCRO ## Retorna o lucro de um título que paga juros periódicos +YIELDDISC = LUCRODESC ## Retorna o rendimento anual de um título descontado. Por exemplo, uma obrigação do Tesouro +YIELDMAT = LUCROVENC ## Retorna o lucro anual de um título que paga juros no vencimento + + +## +## Information functions Funções de informação +## +CELL = CÉL ## Retorna informações sobre formatação, localização ou conteúdo de uma célula +ERROR.TYPE = TIPO.ERRO ## Retorna um número correspondente a um tipo de erro +INFO = INFORMAÇÃO ## Retorna informações sobre o ambiente operacional atual +ISBLANK = ÉCÉL.VAZIA ## Retorna VERDADEIRO se o valor for vazio +ISERR = ÉERRO ## Retorna VERDADEIRO se o valor for um valor de erro diferente de #N/D +ISERROR = ÉERROS ## Retorna VERDADEIRO se o valor for um valor de erro +ISEVEN = ÉPAR ## Retorna VERDADEIRO se o número for par +ISLOGICAL = ÉLÓGICO ## Retorna VERDADEIRO se o valor for um valor lógico +ISNA = É.NÃO.DISP ## Retorna VERDADEIRO se o valor for o valor de erro #N/D +ISNONTEXT = É.NÃO.TEXTO ## Retorna VERDADEIRO se o valor for diferente de texto +ISNUMBER = ÉNÚM ## Retorna VERDADEIRO se o valor for um número +ISODD = ÉIMPAR ## Retorna VERDADEIRO se o número for ímpar +ISREF = ÉREF ## Retorna VERDADEIRO se o valor for uma referência +ISTEXT = ÉTEXTO ## Retorna VERDADEIRO se o valor for texto +N = N ## Retorna um valor convertido em um número +NA = NÃO.DISP ## Retorna o valor de erro #N/D +TYPE = TIPO ## Retorna um número indicando o tipo de dados de um valor + + +## +## Logical functions Funções lógicas +## +AND = E ## Retorna VERDADEIRO se todos os seus argumentos forem VERDADEIROS +FALSE = FALSO ## Retorna o valor lógico FALSO +IF = SE ## Especifica um teste lógico a ser executado +IFERROR = SEERRO ## Retornará um valor que você especifica se uma fórmula for avaliada para um erro; do contrário, retornará o resultado da fórmula +NOT = NÃO ## Inverte o valor lógico do argumento +OR = OU ## Retorna VERDADEIRO se um dos argumentos for VERDADEIRO +TRUE = VERDADEIRO ## Retorna o valor lógico VERDADEIRO + + +## +## Lookup and reference functions Funções de pesquisa e referência +## +ADDRESS = ENDEREÇO ## Retorna uma referência como texto para uma única célula em uma planilha +AREAS = ÁREAS ## Retorna o número de áreas em uma referência +CHOOSE = ESCOLHER ## Escolhe um valor a partir de uma lista de valores +COLUMN = COL ## Retorna o número da coluna de uma referência +COLUMNS = COLS ## Retorna o número de colunas em uma referência +HLOOKUP = PROCH ## Procura na linha superior de uma matriz e retorna o valor da célula especificada +HYPERLINK = HYPERLINK ## Cria um atalho ou salto que abre um documento armazenado em um servidor de rede, uma intranet ou na Internet +INDEX = ÍNDICE ## Usa um índice para escolher um valor de uma referência ou matriz +INDIRECT = INDIRETO ## Retorna uma referência indicada por um valor de texto +LOOKUP = PROC ## Procura valores em um vetor ou em uma matriz +MATCH = CORRESP ## Procura valores em uma referência ou em uma matriz +OFFSET = DESLOC ## Retorna um deslocamento de referência com base em uma determinada referência +ROW = LIN ## Retorna o número da linha de uma referência +ROWS = LINS ## Retorna o número de linhas em uma referência +RTD = RTD ## Recupera dados em tempo real de um programa que ofereça suporte a automação COM (automação: uma forma de trabalhar com objetos de um aplicativo a partir de outro aplicativo ou ferramenta de desenvolvimento. Chamada inicialmente de automação OLE, a automação é um padrão industrial e um recurso do modelo de objeto componente (COM).) +TRANSPOSE = TRANSPOR ## Retorna a transposição de uma matriz +VLOOKUP = PROCV ## Procura na primeira coluna de uma matriz e move ao longo da linha para retornar o valor de uma célula + + +## +## Math and trigonometry functions Funções matemáticas e trigonométricas +## +ABS = ABS ## Retorna o valor absoluto de um número +ACOS = ACOS ## Retorna o arco cosseno de um número +ACOSH = ACOSH ## Retorna o cosseno hiperbólico inverso de um número +ASIN = ASEN ## Retorna o arco seno de um número +ASINH = ASENH ## Retorna o seno hiperbólico inverso de um número +ATAN = ATAN ## Retorna o arco tangente de um número +ATAN2 = ATAN2 ## Retorna o arco tangente das coordenadas x e y especificadas +ATANH = ATANH ## Retorna a tangente hiperbólica inversa de um número +CEILING = TETO ## Arredonda um número para o inteiro mais próximo ou para o múltiplo mais próximo de significância +COMBIN = COMBIN ## Retorna o número de combinações de um determinado número de objetos +COS = COS ## Retorna o cosseno de um número +COSH = COSH ## Retorna o cosseno hiperbólico de um número +DEGREES = GRAUS ## Converte radianos em graus +EVEN = PAR ## Arredonda um número para cima até o inteiro par mais próximo +EXP = EXP ## Retorna e elevado à potência de um número especificado +FACT = FATORIAL ## Retorna o fatorial de um número +FACTDOUBLE = FATDUPLO ## Retorna o fatorial duplo de um número +FLOOR = ARREDMULTB ## Arredonda um número para baixo até zero +GCD = MDC ## Retorna o máximo divisor comum +INT = INT ## Arredonda um número para baixo até o número inteiro mais próximo +LCM = MMC ## Retorna o mínimo múltiplo comum +LN = LN ## Retorna o logaritmo natural de um número +LOG = LOG ## Retorna o logaritmo de um número de uma base especificada +LOG10 = LOG10 ## Retorna o logaritmo de base 10 de um número +MDETERM = MATRIZ.DETERM ## Retorna o determinante de uma matriz de uma variável do tipo matriz +MINVERSE = MATRIZ.INVERSO ## Retorna a matriz inversa de uma matriz +MMULT = MATRIZ.MULT ## Retorna o produto de duas matrizes +MOD = RESTO ## Retorna o resto da divisão +MROUND = MARRED ## Retorna um número arredondado ao múltiplo desejado +MULTINOMIAL = MULTINOMIAL ## Retorna o multinomial de um conjunto de números +ODD = ÍMPAR ## Arredonda um número para cima até o inteiro ímpar mais próximo +PI = PI ## Retorna o valor de Pi +POWER = POTÊNCIA ## Fornece o resultado de um número elevado a uma potência +PRODUCT = MULT ## Multiplica seus argumentos +QUOTIENT = QUOCIENTE ## Retorna a parte inteira de uma divisão +RADIANS = RADIANOS ## Converte graus em radianos +RAND = ALEATÓRIO ## Retorna um número aleatório entre 0 e 1 +RANDBETWEEN = ALEATÓRIOENTRE ## Retorna um número aleatório entre os números especificados +ROMAN = ROMANO ## Converte um algarismo arábico em romano, como texto +ROUND = ARRED ## Arredonda um número até uma quantidade especificada de dígitos +ROUNDDOWN = ARREDONDAR.PARA.BAIXO ## Arredonda um número para baixo até zero +ROUNDUP = ARREDONDAR.PARA.CIMA ## Arredonda um número para cima, afastando-o de zero +SERIESSUM = SOMASEQÜÊNCIA ## Retorna a soma de uma série polinomial baseada na fórmula +SIGN = SINAL ## Retorna o sinal de um número +SIN = SEN ## Retorna o seno de um ângulo dado +SINH = SENH ## Retorna o seno hiperbólico de um número +SQRT = RAIZ ## Retorna uma raiz quadrada positiva +SQRTPI = RAIZPI ## Retorna a raiz quadrada de (núm* pi) +SUBTOTAL = SUBTOTAL ## Retorna um subtotal em uma lista ou em um banco de dados +SUM = SOMA ## Soma seus argumentos +SUMIF = SOMASE ## Adiciona as células especificadas por um determinado critério +SUMIFS = SOMASE ## Adiciona as células em um intervalo que atende a vários critérios +SUMPRODUCT = SOMARPRODUTO ## Retorna a soma dos produtos de componentes correspondentes de matrizes +SUMSQ = SOMAQUAD ## Retorna a soma dos quadrados dos argumentos +SUMX2MY2 = SOMAX2DY2 ## Retorna a soma da diferença dos quadrados dos valores correspondentes em duas matrizes +SUMX2PY2 = SOMAX2SY2 ## Retorna a soma da soma dos quadrados dos valores correspondentes em duas matrizes +SUMXMY2 = SOMAXMY2 ## Retorna a soma dos quadrados das diferenças dos valores correspondentes em duas matrizes +TAN = TAN ## Retorna a tangente de um número +TANH = TANH ## Retorna a tangente hiperbólica de um número +TRUNC = TRUNCAR ## Trunca um número para um inteiro + + +## +## Statistical functions Funções estatísticas +## +AVEDEV = DESV.MÉDIO ## Retorna a média aritmética dos desvios médios dos pontos de dados a partir de sua média +AVERAGE = MÉDIA ## Retorna a média dos argumentos +AVERAGEA = MÉDIAA ## Retorna a média dos argumentos, inclusive números, texto e valores lógicos +AVERAGEIF = MÉDIASE ## Retorna a média (média aritmética) de todas as células em um intervalo que atendem a um determinado critério +AVERAGEIFS = MÉDIASES ## Retorna a média (média aritmética) de todas as células que atendem a múltiplos critérios. +BETADIST = DISTBETA ## Retorna a função de distribuição cumulativa beta +BETAINV = BETA.ACUM.INV ## Retorna o inverso da função de distribuição cumulativa para uma distribuição beta especificada +BINOMDIST = DISTRBINOM ## Retorna a probabilidade de distribuição binomial do termo individual +CHIDIST = DIST.QUI ## Retorna a probabilidade unicaudal da distribuição qui-quadrada +CHIINV = INV.QUI ## Retorna o inverso da probabilidade uni-caudal da distribuição qui-quadrada +CHITEST = TESTE.QUI ## Retorna o teste para independência +CONFIDENCE = INT.CONFIANÇA ## Retorna o intervalo de confiança para uma média da população +CORREL = CORREL ## Retorna o coeficiente de correlação entre dois conjuntos de dados +COUNT = CONT.NÚM ## Calcula quantos números há na lista de argumentos +COUNTA = CONT.VALORES ## Calcula quantos valores há na lista de argumentos +COUNTBLANK = CONTAR.VAZIO ## Conta o número de células vazias no intervalo especificado +COUNTIF = CONT.SE ## Calcula o número de células não vazias em um intervalo que corresponde a determinados critérios +COUNTIFS = CONT.SES ## Conta o número de células dentro de um intervalo que atende a múltiplos critérios +COVAR = COVAR ## Retorna a covariância, a média dos produtos dos desvios pares +CRITBINOM = CRIT.BINOM ## Retorna o menor valor para o qual a distribuição binomial cumulativa é menor ou igual ao valor padrão +DEVSQ = DESVQ ## Retorna a soma dos quadrados dos desvios +EXPONDIST = DISTEXPON ## Retorna a distribuição exponencial +FDIST = DISTF ## Retorna a distribuição de probabilidade F +FINV = INVF ## Retorna o inverso da distribuição de probabilidades F +FISHER = FISHER ## Retorna a transformação Fisher +FISHERINV = FISHERINV ## Retorna o inverso da transformação Fisher +FORECAST = PREVISÃO ## Retorna um valor ao longo de uma linha reta +FREQUENCY = FREQÜÊNCIA ## Retorna uma distribuição de freqüência como uma matriz vertical +FTEST = TESTEF ## Retorna o resultado de um teste F +GAMMADIST = DISTGAMA ## Retorna a distribuição gama +GAMMAINV = INVGAMA ## Retorna o inverso da distribuição cumulativa gama +GAMMALN = LNGAMA ## Retorna o logaritmo natural da função gama, G(x) +GEOMEAN = MÉDIA.GEOMÉTRICA ## Retorna a média geométrica +GROWTH = CRESCIMENTO ## Retorna valores ao longo de uma tendência exponencial +HARMEAN = MÉDIA.HARMÔNICA ## Retorna a média harmônica +HYPGEOMDIST = DIST.HIPERGEOM ## Retorna a distribuição hipergeométrica +INTERCEPT = INTERCEPÇÃO ## Retorna a intercepção da linha de regressão linear +KURT = CURT ## Retorna a curtose de um conjunto de dados +LARGE = MAIOR ## Retorna o maior valor k-ésimo de um conjunto de dados +LINEST = PROJ.LIN ## Retorna os parâmetros de uma tendência linear +LOGEST = PROJ.LOG ## Retorna os parâmetros de uma tendência exponencial +LOGINV = INVLOG ## Retorna o inverso da distribuição lognormal +LOGNORMDIST = DIST.LOGNORMAL ## Retorna a distribuição lognormal cumulativa +MAX = MÁXIMO ## Retorna o valor máximo em uma lista de argumentos +MAXA = MÁXIMOA ## Retorna o maior valor em uma lista de argumentos, inclusive números, texto e valores lógicos +MEDIAN = MED ## Retorna a mediana dos números indicados +MIN = MÍNIMO ## Retorna o valor mínimo em uma lista de argumentos +MINA = MÍNIMOA ## Retorna o menor valor em uma lista de argumentos, inclusive números, texto e valores lógicos +MODE = MODO ## Retorna o valor mais comum em um conjunto de dados +NEGBINOMDIST = DIST.BIN.NEG ## Retorna a distribuição binomial negativa +NORMDIST = DIST.NORM ## Retorna a distribuição cumulativa normal +NORMINV = INV.NORM ## Retorna o inverso da distribuição cumulativa normal +NORMSDIST = DIST.NORMP ## Retorna a distribuição cumulativa normal padrão +NORMSINV = INV.NORMP ## Retorna o inverso da distribuição cumulativa normal padrão +PEARSON = PEARSON ## Retorna o coeficiente de correlação do momento do produto Pearson +PERCENTILE = PERCENTIL ## Retorna o k-ésimo percentil de valores em um intervalo +PERCENTRANK = ORDEM.PORCENTUAL ## Retorna a ordem percentual de um valor em um conjunto de dados +PERMUT = PERMUT ## Retorna o número de permutações de um determinado número de objetos +POISSON = POISSON ## Retorna a distribuição Poisson +PROB = PROB ## Retorna a probabilidade de valores em um intervalo estarem entre dois limites +QUARTILE = QUARTIL ## Retorna o quartil do conjunto de dados +RANK = ORDEM ## Retorna a posição de um número em uma lista de números +RSQ = RQUAD ## Retorna o quadrado do coeficiente de correlação do momento do produto de Pearson +SKEW = DISTORÇÃO ## Retorna a distorção de uma distribuição +SLOPE = INCLINAÇÃO ## Retorna a inclinação da linha de regressão linear +SMALL = MENOR ## Retorna o menor valor k-ésimo do conjunto de dados +STANDARDIZE = PADRONIZAR ## Retorna um valor normalizado +STDEV = DESVPAD ## Estima o desvio padrão com base em uma amostra +STDEVA = DESVPADA ## Estima o desvio padrão com base em uma amostra, inclusive números, texto e valores lógicos +STDEVP = DESVPADP ## Calcula o desvio padrão com base na população total +STDEVPA = DESVPADPA ## Calcula o desvio padrão com base na população total, inclusive números, texto e valores lógicos +STEYX = EPADYX ## Retorna o erro padrão do valor-y previsto para cada x da regressão +TDIST = DISTT ## Retorna a distribuição t de Student +TINV = INVT ## Retorna o inverso da distribuição t de Student +TREND = TENDÊNCIA ## Retorna valores ao longo de uma tendência linear +TRIMMEAN = MÉDIA.INTERNA ## Retorna a média do interior de um conjunto de dados +TTEST = TESTET ## Retorna a probabilidade associada ao teste t de Student +VAR = VAR ## Estima a variância com base em uma amostra +VARA = VARA ## Estima a variância com base em uma amostra, inclusive números, texto e valores lógicos +VARP = VARP ## Calcula a variância com base na população inteira +VARPA = VARPA ## Calcula a variância com base na população total, inclusive números, texto e valores lógicos +WEIBULL = WEIBULL ## Retorna a distribuição Weibull +ZTEST = TESTEZ ## Retorna o valor de probabilidade uni-caudal de um teste-z + + +## +## Text functions Funções de texto +## +ASC = ASC ## Altera letras do inglês ou katakana de largura total (bytes duplos) dentro de uma seqüência de caracteres para caracteres de meia largura (byte único) +BAHTTEXT = BAHTTEXT ## Converte um número em um texto, usando o formato de moeda ß (baht) +CHAR = CARACT ## Retorna o caractere especificado pelo número de código +CLEAN = TIRAR ## Remove todos os caracteres do texto que não podem ser impressos +CODE = CÓDIGO ## Retorna um código numérico para o primeiro caractere de uma seqüência de caracteres de texto +CONCATENATE = CONCATENAR ## Agrupa vários itens de texto em um único item de texto +DOLLAR = MOEDA ## Converte um número em texto, usando o formato de moeda $ (dólar) +EXACT = EXATO ## Verifica se dois valores de texto são idênticos +FIND = PROCURAR ## Procura um valor de texto dentro de outro (diferencia maiúsculas de minúsculas) +FINDB = PROCURARB ## Procura um valor de texto dentro de outro (diferencia maiúsculas de minúsculas) +FIXED = DEF.NÚM.DEC ## Formata um número como texto com um número fixo de decimais +JIS = JIS ## Altera letras do inglês ou katakana de meia largura (byte único) dentro de uma seqüência de caracteres para caracteres de largura total (bytes duplos) +LEFT = ESQUERDA ## Retorna os caracteres mais à esquerda de um valor de texto +LEFTB = ESQUERDAB ## Retorna os caracteres mais à esquerda de um valor de texto +LEN = NÚM.CARACT ## Retorna o número de caracteres em uma seqüência de texto +LENB = NÚM.CARACTB ## Retorna o número de caracteres em uma seqüência de texto +LOWER = MINÚSCULA ## Converte texto para minúsculas +MID = EXT.TEXTO ## Retorna um número específico de caracteres de uma seqüência de texto começando na posição especificada +MIDB = EXT.TEXTOB ## Retorna um número específico de caracteres de uma seqüência de texto começando na posição especificada +PHONETIC = FONÉTICA ## Extrai os caracteres fonéticos (furigana) de uma seqüência de caracteres de texto +PROPER = PRI.MAIÚSCULA ## Coloca a primeira letra de cada palavra em maiúscula em um valor de texto +REPLACE = MUDAR ## Muda os caracteres dentro do texto +REPLACEB = MUDARB ## Muda os caracteres dentro do texto +REPT = REPT ## Repete o texto um determinado número de vezes +RIGHT = DIREITA ## Retorna os caracteres mais à direita de um valor de texto +RIGHTB = DIREITAB ## Retorna os caracteres mais à direita de um valor de texto +SEARCH = LOCALIZAR ## Localiza um valor de texto dentro de outro (não diferencia maiúsculas de minúsculas) +SEARCHB = LOCALIZARB ## Localiza um valor de texto dentro de outro (não diferencia maiúsculas de minúsculas) +SUBSTITUTE = SUBSTITUIR ## Substitui um novo texto por um texto antigo em uma seqüência de texto +T = T ## Converte os argumentos em texto +TEXT = TEXTO ## Formata um número e o converte em texto +TRIM = ARRUMAR ## Remove espaços do texto +UPPER = MAIÚSCULA ## Converte o texto em maiúsculas +VALUE = VALOR ## Converte um argumento de texto em um número diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/config new file mode 100644 index 0000000..8bb8d8b --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = € + + +## +## Excel Error Codes (For future use) +## +NULL = #NULO! +DIV0 = #DIV/0! +VALUE = #VALOR! +REF = #REF! +NAME = #NOME? +NUM = #NÚM! +NA = #N/D diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/functions new file mode 100644 index 0000000..ba4eb47 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/pt/functions @@ -0,0 +1,408 @@ +## +## Add-in and Automation functions Funções de Suplemento e Automatização +## +GETPIVOTDATA = OBTERDADOSDIN ## Devolve dados armazenados num relatório de Tabela Dinâmica + + +## +## Cube functions Funções de cubo +## +CUBEKPIMEMBER = MEMBROKPICUBO ## Devolve o nome, propriedade e medição de um KPI (key performance indicator) e apresenta o nome e a propriedade na célula. Um KPI é uma medida quantificável, como, por exemplo, o lucro mensal bruto ou a rotatividade trimestral de pessoal, utilizada para monitorizar o desempenho de uma organização. +CUBEMEMBER = MEMBROCUBO ## Devolve um membro ou cadeia de identificação numa hierarquia de cubo. Utilizada para validar a existência do membro ou cadeia de identificação no cubo. +CUBEMEMBERPROPERTY = PROPRIEDADEMEMBROCUBO ## Devolve o valor de uma propriedade de membro no cubo. Utilizada para validar a existência de um nome de membro no cubo e para devolver a propriedade especificada para esse membro. +CUBERANKEDMEMBER = MEMBROCLASSIFICADOCUBO ## Devolve o enésimo ou a classificação mais alta num conjunto. Utilizada para devolver um ou mais elementos num conjunto, tal como o melhor vendedor ou os 10 melhores alunos. +CUBESET = CONJUNTOCUBO ## Define um conjunto calculado de membros ou cadeias de identificação enviando uma expressão de conjunto para o cubo no servidor, que cria o conjunto e, em seguida, devolve o conjunto ao Microsoft Office Excel. +CUBESETCOUNT = CONTARCONJUNTOCUBO ## Devolve o número de itens num conjunto. +CUBEVALUE = VALORCUBO ## Devolve um valor agregado do cubo. + + +## +## Database functions Funções de base de dados +## +DAVERAGE = BDMÉDIA ## Devolve a média das entradas da base de dados seleccionadas +DCOUNT = BDCONTAR ## Conta as células que contêm números numa base de dados +DCOUNTA = BDCONTAR.VAL ## Conta as células que não estejam em branco numa base de dados +DGET = BDOBTER ## Extrai de uma base de dados um único registo que corresponde aos critérios especificados +DMAX = BDMÁX ## Devolve o valor máximo das entradas da base de dados seleccionadas +DMIN = BDMÍN ## Devolve o valor mínimo das entradas da base de dados seleccionadas +DPRODUCT = BDMULTIPL ## Multiplica os valores de um determinado campo de registos que correspondem aos critérios numa base de dados +DSTDEV = BDDESVPAD ## Calcula o desvio-padrão com base numa amostra de entradas da base de dados seleccionadas +DSTDEVP = BDDESVPADP ## Calcula o desvio-padrão com base na população total das entradas da base de dados seleccionadas +DSUM = BDSOMA ## Adiciona os números na coluna de campo dos registos de base de dados que correspondem aos critérios +DVAR = BDVAR ## Calcula a variância com base numa amostra das entradas de base de dados seleccionadas +DVARP = BDVARP ## Calcula a variância com base na população total das entradas de base de dados seleccionadas + + +## +## Date and time functions Funções de data e hora +## +DATE = DATA ## Devolve o número de série de uma determinada data +DATEVALUE = DATA.VALOR ## Converte uma data em forma de texto num número de série +DAY = DIA ## Converte um número de série num dia do mês +DAYS360 = DIAS360 ## Calcula o número de dias entre duas datas com base num ano com 360 dias +EDATE = DATAM ## Devolve um número de série de data que corresponde ao número de meses indicado antes ou depois da data de início +EOMONTH = FIMMÊS ## Devolve o número de série do último dia do mês antes ou depois de um número de meses especificado +HOUR = HORA ## Converte um número de série numa hora +MINUTE = MINUTO ## Converte um número de série num minuto +MONTH = MÊS ## Converte um número de série num mês +NETWORKDAYS = DIATRABALHOTOTAL ## Devolve o número total de dias úteis entre duas datas +NOW = AGORA ## Devolve o número de série da data e hora actuais +SECOND = SEGUNDO ## Converte um número de série num segundo +TIME = TEMPO ## Devolve o número de série de um determinado tempo +TIMEVALUE = VALOR.TEMPO ## Converte um tempo em forma de texto num número de série +TODAY = HOJE ## Devolve o número de série da data actual +WEEKDAY = DIA.SEMANA ## Converte um número de série num dia da semana +WEEKNUM = NÚMSEMANA ## Converte um número de série num número que representa o número da semana num determinado ano +WORKDAY = DIA.TRABALHO ## Devolve o número de série da data antes ou depois de um número de dias úteis especificado +YEAR = ANO ## Converte um número de série num ano +YEARFRAC = FRACÇÃOANO ## Devolve a fracção de ano que representa o número de dias inteiros entre a data_de_início e a data_de_fim + + +## +## Engineering functions Funções de engenharia +## +BESSELI = BESSELI ## Devolve a função de Bessel modificada In(x) +BESSELJ = BESSELJ ## Devolve a função de Bessel Jn(x) +BESSELK = BESSELK ## Devolve a função de Bessel modificada Kn(x) +BESSELY = BESSELY ## Devolve a função de Bessel Yn(x) +BIN2DEC = BINADEC ## Converte um número binário em decimal +BIN2HEX = BINAHEX ## Converte um número binário em hexadecimal +BIN2OCT = BINAOCT ## Converte um número binário em octal +COMPLEX = COMPLEXO ## Converte coeficientes reais e imaginários num número complexo +CONVERT = CONVERTER ## Converte um número de um sistema de medida noutro +DEC2BIN = DECABIN ## Converte um número decimal em binário +DEC2HEX = DECAHEX ## Converte um número decimal em hexadecimal +DEC2OCT = DECAOCT ## Converte um número decimal em octal +DELTA = DELTA ## Testa se dois valores são iguais +ERF = FUNCERRO ## Devolve a função de erro +ERFC = FUNCERROCOMPL ## Devolve a função de erro complementar +GESTEP = DEGRAU ## Testa se um número é maior do que um valor limite +HEX2BIN = HEXABIN ## Converte um número hexadecimal em binário +HEX2DEC = HEXADEC ## Converte um número hexadecimal em decimal +HEX2OCT = HEXAOCT ## Converte um número hexadecimal em octal +IMABS = IMABS ## Devolve o valor absoluto (módulo) de um número complexo +IMAGINARY = IMAGINÁRIO ## Devolve o coeficiente imaginário de um número complexo +IMARGUMENT = IMARG ## Devolve o argumento Teta, um ângulo expresso em radianos +IMCONJUGATE = IMCONJ ## Devolve o conjugado complexo de um número complexo +IMCOS = IMCOS ## Devolve o co-seno de um número complexo +IMDIV = IMDIV ## Devolve o quociente de dois números complexos +IMEXP = IMEXP ## Devolve o exponencial de um número complexo +IMLN = IMLN ## Devolve o logaritmo natural de um número complexo +IMLOG10 = IMLOG10 ## Devolve o logaritmo de base 10 de um número complexo +IMLOG2 = IMLOG2 ## Devolve o logaritmo de base 2 de um número complexo +IMPOWER = IMPOT ## Devolve um número complexo elevado a uma potência inteira +IMPRODUCT = IMPROD ## Devolve o produto de números complexos +IMREAL = IMREAL ## Devolve o coeficiente real de um número complexo +IMSIN = IMSENO ## Devolve o seno de um número complexo +IMSQRT = IMRAIZ ## Devolve a raiz quadrada de um número complexo +IMSUB = IMSUBTR ## Devolve a diferença entre dois números complexos +IMSUM = IMSOMA ## Devolve a soma de números complexos +OCT2BIN = OCTABIN ## Converte um número octal em binário +OCT2DEC = OCTADEC ## Converte um número octal em decimal +OCT2HEX = OCTAHEX ## Converte um número octal em hexadecimal + + +## +## Financial functions Funções financeiras +## +ACCRINT = JUROSACUM ## Devolve os juros acumulados de um título que paga juros periódicos +ACCRINTM = JUROSACUMV ## Devolve os juros acumulados de um título que paga juros no vencimento +AMORDEGRC = AMORDEGRC ## Devolve a depreciação correspondente a cada período contabilístico utilizando um coeficiente de depreciação +AMORLINC = AMORLINC ## Devolve a depreciação correspondente a cada período contabilístico +COUPDAYBS = CUPDIASINLIQ ## Devolve o número de dias entre o início do período do cupão e a data de regularização +COUPDAYS = CUPDIAS ## Devolve o número de dias no período do cupão que contém a data de regularização +COUPDAYSNC = CUPDIASPRÓX ## Devolve o número de dias entre a data de regularização e a data do cupão seguinte +COUPNCD = CUPDATAPRÓX ## Devolve a data do cupão seguinte após a data de regularização +COUPNUM = CUPNÚM ## Devolve o número de cupões a serem pagos entre a data de regularização e a data de vencimento +COUPPCD = CUPDATAANT ## Devolve a data do cupão anterior antes da data de regularização +CUMIPMT = PGTOJURACUM ## Devolve os juros cumulativos pagos entre dois períodos +CUMPRINC = PGTOCAPACUM ## Devolve o capital cumulativo pago a título de empréstimo entre dois períodos +DB = BD ## Devolve a depreciação de um activo relativo a um período especificado utilizando o método das quotas degressivas fixas +DDB = BDD ## Devolve a depreciação de um activo relativo a um período especificado utilizando o método das quotas degressivas duplas ou qualquer outro método especificado +DISC = DESC ## Devolve a taxa de desconto de um título +DOLLARDE = MOEDADEC ## Converte um preço em unidade monetária, expresso como uma fracção, num preço em unidade monetária, expresso como um número decimal +DOLLARFR = MOEDAFRA ## Converte um preço em unidade monetária, expresso como um número decimal, num preço em unidade monetária, expresso como uma fracção +DURATION = DURAÇÃO ## Devolve a duração anual de um título com pagamentos de juros periódicos +EFFECT = EFECTIVA ## Devolve a taxa de juros anual efectiva +FV = VF ## Devolve o valor futuro de um investimento +FVSCHEDULE = VFPLANO ## Devolve o valor futuro de um capital inicial após a aplicação de uma série de taxas de juro compostas +INTRATE = TAXAJUROS ## Devolve a taxa de juros de um título investido na totalidade +IPMT = IPGTO ## Devolve o pagamento dos juros de um investimento durante um determinado período +IRR = TIR ## Devolve a taxa de rentabilidade interna para uma série de fluxos monetários +ISPMT = É.PGTO ## Calcula os juros pagos durante um período específico de um investimento +MDURATION = MDURAÇÃO ## Devolve a duração modificada de Macauley de um título com um valor de paridade equivalente a € 100 +MIRR = MTIR ## Devolve a taxa interna de rentabilidade em que os fluxos monetários positivos e negativos são financiados com taxas diferentes +NOMINAL = NOMINAL ## Devolve a taxa de juros nominal anual +NPER = NPER ## Devolve o número de períodos de um investimento +NPV = VAL ## Devolve o valor actual líquido de um investimento com base numa série de fluxos monetários periódicos e numa taxa de desconto +ODDFPRICE = PREÇOPRIMINC ## Devolve o preço por € 100 do valor nominal de um título com um período inicial incompleto +ODDFYIELD = LUCROPRIMINC ## Devolve o lucro de um título com um período inicial incompleto +ODDLPRICE = PREÇOÚLTINC ## Devolve o preço por € 100 do valor nominal de um título com um período final incompleto +ODDLYIELD = LUCROÚLTINC ## Devolve o lucro de um título com um período final incompleto +PMT = PGTO ## Devolve o pagamento periódico de uma anuidade +PPMT = PPGTO ## Devolve o pagamento sobre o capital de um investimento num determinado período +PRICE = PREÇO ## Devolve o preço por € 100 do valor nominal de um título que paga juros periódicos +PRICEDISC = PREÇODESC ## Devolve o preço por € 100 do valor nominal de um título descontado +PRICEMAT = PREÇOVENC ## Devolve o preço por € 100 do valor nominal de um título que paga juros no vencimento +PV = VA ## Devolve o valor actual de um investimento +RATE = TAXA ## Devolve a taxa de juros por período de uma anuidade +RECEIVED = RECEBER ## Devolve o montante recebido no vencimento de um título investido na totalidade +SLN = AMORT ## Devolve uma depreciação linear de um activo durante um período +SYD = AMORTD ## Devolve a depreciação por algarismos da soma dos anos de um activo durante um período especificado +TBILLEQ = OTN ## Devolve o lucro de um título equivalente a uma Obrigação do Tesouro +TBILLPRICE = OTNVALOR ## Devolve o preço por € 100 de valor nominal de uma Obrigação do Tesouro +TBILLYIELD = OTNLUCRO ## Devolve o lucro de uma Obrigação do Tesouro +VDB = BDV ## Devolve a depreciação de um activo relativo a um período específico ou parcial utilizando um método de quotas degressivas +XIRR = XTIR ## Devolve a taxa interna de rentabilidade de um plano de fluxos monetários que não seja necessariamente periódica +XNPV = XVAL ## Devolve o valor actual líquido de um plano de fluxos monetários que não seja necessariamente periódico +YIELD = LUCRO ## Devolve o lucro de um título que paga juros periódicos +YIELDDISC = LUCRODESC ## Devolve o lucro anual de um título emitido abaixo do valor nominal, por exemplo, uma Obrigação do Tesouro +YIELDMAT = LUCROVENC ## Devolve o lucro anual de um título que paga juros na data de vencimento + + +## +## Information functions Funções de informação +## +CELL = CÉL ## Devolve informações sobre a formatação, localização ou conteúdo de uma célula +ERROR.TYPE = TIPO.ERRO ## Devolve um número correspondente a um tipo de erro +INFO = INFORMAÇÃO ## Devolve informações sobre o ambiente de funcionamento actual +ISBLANK = É.CÉL.VAZIA ## Devolve VERDADEIRO se o valor estiver em branco +ISERR = É.ERROS ## Devolve VERDADEIRO se o valor for um valor de erro diferente de #N/D +ISERROR = É.ERRO ## Devolve VERDADEIRO se o valor for um valor de erro +ISEVEN = ÉPAR ## Devolve VERDADEIRO se o número for par +ISLOGICAL = É.LÓGICO ## Devolve VERDADEIRO se o valor for lógico +ISNA = É.NÃO.DISP ## Devolve VERDADEIRO se o valor for o valor de erro #N/D +ISNONTEXT = É.NÃO.TEXTO ## Devolve VERDADEIRO se o valor não for texto +ISNUMBER = É.NÚM ## Devolve VERDADEIRO se o valor for um número +ISODD = ÉÍMPAR ## Devolve VERDADEIRO se o número for ímpar +ISREF = É.REF ## Devolve VERDADEIRO se o valor for uma referência +ISTEXT = É.TEXTO ## Devolve VERDADEIRO se o valor for texto +N = N ## Devolve um valor convertido num número +NA = NÃO.DISP ## Devolve o valor de erro #N/D +TYPE = TIPO ## Devolve um número que indica o tipo de dados de um valor + + +## +## Logical functions Funções lógicas +## +AND = E ## Devolve VERDADEIRO se todos os respectivos argumentos corresponderem a VERDADEIRO +FALSE = FALSO ## Devolve o valor lógico FALSO +IF = SE ## Especifica um teste lógico a ser executado +IFERROR = SE.ERRO ## Devolve um valor definido pelo utilizador se ocorrer um erro na fórmula, e devolve o resultado da fórmula se não ocorrer nenhum erro +NOT = NÃO ## Inverte a lógica do respectivo argumento +OR = OU ## Devolve VERDADEIRO se qualquer argumento for VERDADEIRO +TRUE = VERDADEIRO ## Devolve o valor lógico VERDADEIRO + + +## +## Lookup and reference functions Funções de pesquisa e referência +## +ADDRESS = ENDEREÇO ## Devolve uma referência a uma única célula numa folha de cálculo como texto +AREAS = ÁREAS ## Devolve o número de áreas numa referência +CHOOSE = SELECCIONAR ## Selecciona um valor a partir de uma lista de valores +COLUMN = COL ## Devolve o número da coluna de uma referência +COLUMNS = COLS ## Devolve o número de colunas numa referência +HLOOKUP = PROCH ## Procura na linha superior de uma matriz e devolve o valor da célula indicada +HYPERLINK = HIPERLIGAÇÃO ## Cria um atalho ou hiperligação que abre um documento armazenado num servidor de rede, numa intranet ou na Internet +INDEX = ÍNDICE ## Utiliza um índice para escolher um valor de uma referência ou de uma matriz +INDIRECT = INDIRECTO ## Devolve uma referência indicada por um valor de texto +LOOKUP = PROC ## Procura valores num vector ou numa matriz +MATCH = CORRESP ## Procura valores numa referência ou numa matriz +OFFSET = DESLOCAMENTO ## Devolve o deslocamento de referência de uma determinada referência +ROW = LIN ## Devolve o número da linha de uma referência +ROWS = LINS ## Devolve o número de linhas numa referência +RTD = RTD ## Obtém dados em tempo real a partir de um programa que suporte automatização COM (automatização: modo de trabalhar com objectos de uma aplicação a partir de outra aplicação ou ferramenta de desenvolvimento. Anteriormente conhecida como automatização OLE, a automatização é uma norma da indústria de software e uma funcionalidade COM (Component Object Model).) +TRANSPOSE = TRANSPOR ## Devolve a transposição de uma matriz +VLOOKUP = PROCV ## Procura na primeira coluna de uma matriz e percorre a linha para devolver o valor de uma célula + + +## +## Math and trigonometry functions Funções matemáticas e trigonométricas +## +ABS = ABS ## Devolve o valor absoluto de um número +ACOS = ACOS ## Devolve o arco de co-seno de um número +ACOSH = ACOSH ## Devolve o co-seno hiperbólico inverso de um número +ASIN = ASEN ## Devolve o arco de seno de um número +ASINH = ASENH ## Devolve o seno hiperbólico inverso de um número +ATAN = ATAN ## Devolve o arco de tangente de um número +ATAN2 = ATAN2 ## Devolve o arco de tangente das coordenadas x e y +ATANH = ATANH ## Devolve a tangente hiperbólica inversa de um número +CEILING = ARRED.EXCESSO ## Arredonda um número para o número inteiro mais próximo ou para o múltiplo de significância mais próximo +COMBIN = COMBIN ## Devolve o número de combinações de um determinado número de objectos +COS = COS ## Devolve o co-seno de um número +COSH = COSH ## Devolve o co-seno hiperbólico de um número +DEGREES = GRAUS ## Converte radianos em graus +EVEN = PAR ## Arredonda um número por excesso para o número inteiro mais próximo +EXP = EXP ## Devolve e elevado à potência de um determinado número +FACT = FACTORIAL ## Devolve o factorial de um número +FACTDOUBLE = FACTDUPLO ## Devolve o factorial duplo de um número +FLOOR = ARRED.DEFEITO ## Arredonda um número por defeito até zero +GCD = MDC ## Devolve o maior divisor comum +INT = INT ## Arredonda um número por defeito para o número inteiro mais próximo +LCM = MMC ## Devolve o mínimo múltiplo comum +LN = LN ## Devolve o logaritmo natural de um número +LOG = LOG ## Devolve o logaritmo de um número com uma base especificada +LOG10 = LOG10 ## Devolve o logaritmo de base 10 de um número +MDETERM = MATRIZ.DETERM ## Devolve o determinante matricial de uma matriz +MINVERSE = MATRIZ.INVERSA ## Devolve o inverso matricial de uma matriz +MMULT = MATRIZ.MULT ## Devolve o produto matricial de duas matrizes +MOD = RESTO ## Devolve o resto da divisão +MROUND = MARRED ## Devolve um número arredondado para o múltiplo pretendido +MULTINOMIAL = POLINOMIAL ## Devolve o polinomial de um conjunto de números +ODD = ÍMPAR ## Arredonda por excesso um número para o número inteiro ímpar mais próximo +PI = PI ## Devolve o valor de pi +POWER = POTÊNCIA ## Devolve o resultado de um número elevado a uma potência +PRODUCT = PRODUTO ## Multiplica os respectivos argumentos +QUOTIENT = QUOCIENTE ## Devolve a parte inteira de uma divisão +RADIANS = RADIANOS ## Converte graus em radianos +RAND = ALEATÓRIO ## Devolve um número aleatório entre 0 e 1 +RANDBETWEEN = ALEATÓRIOENTRE ## Devolve um número aleatório entre os números especificados +ROMAN = ROMANO ## Converte um número árabe em romano, como texto +ROUND = ARRED ## Arredonda um número para um número de dígitos especificado +ROUNDDOWN = ARRED.PARA.BAIXO ## Arredonda um número por defeito até zero +ROUNDUP = ARRED.PARA.CIMA ## Arredonda um número por excesso, afastando-o de zero +SERIESSUM = SOMASÉRIE ## Devolve a soma de uma série de potências baseada na fórmula +SIGN = SINAL ## Devolve o sinal de um número +SIN = SEN ## Devolve o seno de um determinado ângulo +SINH = SENH ## Devolve o seno hiperbólico de um número +SQRT = RAIZQ ## Devolve uma raiz quadrada positiva +SQRTPI = RAIZPI ## Devolve a raiz quadrada de (núm * pi) +SUBTOTAL = SUBTOTAL ## Devolve um subtotal numa lista ou base de dados +SUM = SOMA ## Adiciona os respectivos argumentos +SUMIF = SOMA.SE ## Adiciona as células especificadas por um determinado critério +SUMIFS = SOMA.SE.S ## Adiciona as células num intervalo que cumpre vários critérios +SUMPRODUCT = SOMARPRODUTO ## Devolve a soma dos produtos de componentes de matrizes correspondentes +SUMSQ = SOMARQUAD ## Devolve a soma dos quadrados dos argumentos +SUMX2MY2 = SOMAX2DY2 ## Devolve a soma da diferença dos quadrados dos valores correspondentes em duas matrizes +SUMX2PY2 = SOMAX2SY2 ## Devolve a soma da soma dos quadrados dos valores correspondentes em duas matrizes +SUMXMY2 = SOMAXMY2 ## Devolve a soma dos quadrados da diferença dos valores correspondentes em duas matrizes +TAN = TAN ## Devolve a tangente de um número +TANH = TANH ## Devolve a tangente hiperbólica de um número +TRUNC = TRUNCAR ## Trunca um número para um número inteiro + + +## +## Statistical functions Funções estatísticas +## +AVEDEV = DESV.MÉDIO ## Devolve a média aritmética dos desvios absolutos à média dos pontos de dados +AVERAGE = MÉDIA ## Devolve a média dos respectivos argumentos +AVERAGEA = MÉDIAA ## Devolve uma média dos respectivos argumentos, incluindo números, texto e valores lógicos +AVERAGEIF = MÉDIA.SE ## Devolve a média aritmética de todas as células num intervalo que cumprem determinado critério +AVERAGEIFS = MÉDIA.SE.S ## Devolve a média aritmética de todas as células que cumprem múltiplos critérios +BETADIST = DISTBETA ## Devolve a função de distribuição cumulativa beta +BETAINV = BETA.ACUM.INV ## Devolve o inverso da função de distribuição cumulativa relativamente a uma distribuição beta específica +BINOMDIST = DISTRBINOM ## Devolve a probabilidade de distribuição binomial de termo individual +CHIDIST = DIST.CHI ## Devolve a probabilidade unicaudal da distribuição qui-quadrada +CHIINV = INV.CHI ## Devolve o inverso da probabilidade unicaudal da distribuição qui-quadrada +CHITEST = TESTE.CHI ## Devolve o teste para independência +CONFIDENCE = INT.CONFIANÇA ## Devolve o intervalo de confiança correspondente a uma média de população +CORREL = CORREL ## Devolve o coeficiente de correlação entre dois conjuntos de dados +COUNT = CONTAR ## Conta os números que existem na lista de argumentos +COUNTA = CONTAR.VAL ## Conta os valores que existem na lista de argumentos +COUNTBLANK = CONTAR.VAZIO ## Conta o número de células em branco num intervalo +COUNTIF = CONTAR.SE ## Calcula o número de células num intervalo que corresponde aos critérios determinados +COUNTIFS = CONTAR.SE.S ## Conta o número de células num intervalo que cumprem múltiplos critérios +COVAR = COVAR ## Devolve a covariância, que é a média dos produtos de desvios de pares +CRITBINOM = CRIT.BINOM ## Devolve o menor valor em que a distribuição binomial cumulativa é inferior ou igual a um valor de critério +DEVSQ = DESVQ ## Devolve a soma dos quadrados dos desvios +EXPONDIST = DISTEXPON ## Devolve a distribuição exponencial +FDIST = DISTF ## Devolve a distribuição da probabilidade F +FINV = INVF ## Devolve o inverso da distribuição da probabilidade F +FISHER = FISHER ## Devolve a transformação Fisher +FISHERINV = FISHERINV ## Devolve o inverso da transformação Fisher +FORECAST = PREVISÃO ## Devolve um valor ao longo de uma tendência linear +FREQUENCY = FREQUÊNCIA ## Devolve uma distribuição de frequência como uma matriz vertical +FTEST = TESTEF ## Devolve o resultado de um teste F +GAMMADIST = DISTGAMA ## Devolve a distribuição gama +GAMMAINV = INVGAMA ## Devolve o inverso da distribuição gama cumulativa +GAMMALN = LNGAMA ## Devolve o logaritmo natural da função gama, Γ(x) +GEOMEAN = MÉDIA.GEOMÉTRICA ## Devolve a média geométrica +GROWTH = CRESCIMENTO ## Devolve valores ao longo de uma tendência exponencial +HARMEAN = MÉDIA.HARMÓNICA ## Devolve a média harmónica +HYPGEOMDIST = DIST.HIPERGEOM ## Devolve a distribuição hipergeométrica +INTERCEPT = INTERCEPTAR ## Devolve a intercepção da linha de regressão linear +KURT = CURT ## Devolve a curtose de um conjunto de dados +LARGE = MAIOR ## Devolve o maior valor k-ésimo de um conjunto de dados +LINEST = PROJ.LIN ## Devolve os parâmetros de uma tendência linear +LOGEST = PROJ.LOG ## Devolve os parâmetros de uma tendência exponencial +LOGINV = INVLOG ## Devolve o inverso da distribuição normal logarítmica +LOGNORMDIST = DIST.NORMALLOG ## Devolve a distribuição normal logarítmica cumulativa +MAX = MÁXIMO ## Devolve o valor máximo numa lista de argumentos +MAXA = MÁXIMOA ## Devolve o valor máximo numa lista de argumentos, incluindo números, texto e valores lógicos +MEDIAN = MED ## Devolve a mediana dos números indicados +MIN = MÍNIMO ## Devolve o valor mínimo numa lista de argumentos +MINA = MÍNIMOA ## Devolve o valor mínimo numa lista de argumentos, incluindo números, texto e valores lógicos +MODE = MODA ## Devolve o valor mais comum num conjunto de dados +NEGBINOMDIST = DIST.BIN.NEG ## Devolve a distribuição binominal negativa +NORMDIST = DIST.NORM ## Devolve a distribuição cumulativa normal +NORMINV = INV.NORM ## Devolve o inverso da distribuição cumulativa normal +NORMSDIST = DIST.NORMP ## Devolve a distribuição cumulativa normal padrão +NORMSINV = INV.NORMP ## Devolve o inverso da distribuição cumulativa normal padrão +PEARSON = PEARSON ## Devolve o coeficiente de correlação momento/produto de Pearson +PERCENTILE = PERCENTIL ## Devolve o k-ésimo percentil de valores num intervalo +PERCENTRANK = ORDEM.PERCENTUAL ## Devolve a ordem percentual de um valor num conjunto de dados +PERMUT = PERMUTAR ## Devolve o número de permutações de um determinado número de objectos +POISSON = POISSON ## Devolve a distribuição de Poisson +PROB = PROB ## Devolve a probabilidade dos valores num intervalo se encontrarem entre dois limites +QUARTILE = QUARTIL ## Devolve o quartil de um conjunto de dados +RANK = ORDEM ## Devolve a ordem de um número numa lista numérica +RSQ = RQUAD ## Devolve o quadrado do coeficiente de correlação momento/produto de Pearson +SKEW = DISTORÇÃO ## Devolve a distorção de uma distribuição +SLOPE = DECLIVE ## Devolve o declive da linha de regressão linear +SMALL = MENOR ## Devolve o menor valor de k-ésimo de um conjunto de dados +STANDARDIZE = NORMALIZAR ## Devolve um valor normalizado +STDEV = DESVPAD ## Calcula o desvio-padrão com base numa amostra +STDEVA = DESVPADA ## Calcula o desvio-padrão com base numa amostra, incluindo números, texto e valores lógicos +STDEVP = DESVPADP ## Calcula o desvio-padrão com base na população total +STDEVPA = DESVPADPA ## Calcula o desvio-padrão com base na população total, incluindo números, texto e valores lógicos +STEYX = EPADYX ## Devolve o erro-padrão do valor de y previsto para cada x na regressão +TDIST = DISTT ## Devolve a distribuição t de Student +TINV = INVT ## Devolve o inverso da distribuição t de Student +TREND = TENDÊNCIA ## Devolve valores ao longo de uma tendência linear +TRIMMEAN = MÉDIA.INTERNA ## Devolve a média do interior de um conjunto de dados +TTEST = TESTET ## Devolve a probabilidade associada ao teste t de Student +VAR = VAR ## Calcula a variância com base numa amostra +VARA = VARA ## Calcula a variância com base numa amostra, incluindo números, texto e valores lógicos +VARP = VARP ## Calcula a variância com base na população total +VARPA = VARPA ## Calcula a variância com base na população total, incluindo números, texto e valores lógicos +WEIBULL = WEIBULL ## Devolve a distribuição Weibull +ZTEST = TESTEZ ## Devolve o valor de probabilidade unicaudal de um teste-z + + +## +## Text functions Funções de texto +## +ASC = ASC ## Altera letras ou katakana de largura total (byte duplo) numa cadeia de caracteres para caracteres de largura média (byte único) +BAHTTEXT = TEXTO.BAHT ## Converte um número em texto, utilizando o formato monetário ß (baht) +CHAR = CARÁCT ## Devolve o carácter especificado pelo número de código +CLEAN = LIMPAR ## Remove do texto todos os caracteres não imprimíveis +CODE = CÓDIGO ## Devolve um código numérico correspondente ao primeiro carácter numa cadeia de texto +CONCATENATE = CONCATENAR ## Agrupa vários itens de texto num único item de texto +DOLLAR = MOEDA ## Converte um número em texto, utilizando o formato monetário € (Euro) +EXACT = EXACTO ## Verifica se dois valores de texto são idênticos +FIND = LOCALIZAR ## Localiza um valor de texto dentro de outro (sensível às maiúsculas e minúsculas) +FINDB = LOCALIZARB ## Localiza um valor de texto dentro de outro (sensível às maiúsculas e minúsculas) +FIXED = FIXA ## Formata um número como texto com um número fixo de decimais +JIS = JIS ## Altera letras ou katakana de largura média (byte único) numa cadeia de caracteres para caracteres de largura total (byte duplo) +LEFT = ESQUERDA ## Devolve os caracteres mais à esquerda de um valor de texto +LEFTB = ESQUERDAB ## Devolve os caracteres mais à esquerda de um valor de texto +LEN = NÚM.CARACT ## Devolve o número de caracteres de uma cadeia de texto +LENB = NÚM.CARACTB ## Devolve o número de caracteres de uma cadeia de texto +LOWER = MINÚSCULAS ## Converte o texto em minúsculas +MID = SEG.TEXTO ## Devolve um número específico de caracteres de uma cadeia de texto, a partir da posição especificada +MIDB = SEG.TEXTOB ## Devolve um número específico de caracteres de uma cadeia de texto, a partir da posição especificada +PHONETIC = FONÉTICA ## Retira os caracteres fonéticos (furigana) de uma cadeia de texto +PROPER = INICIAL.MAIÚSCULA ## Coloca em maiúsculas a primeira letra de cada palavra de um valor de texto +REPLACE = SUBSTITUIR ## Substitui caracteres no texto +REPLACEB = SUBSTITUIRB ## Substitui caracteres no texto +REPT = REPETIR ## Repete texto um determinado número de vezes +RIGHT = DIREITA ## Devolve os caracteres mais à direita de um valor de texto +RIGHTB = DIREITAB ## Devolve os caracteres mais à direita de um valor de texto +SEARCH = PROCURAR ## Localiza um valor de texto dentro de outro (não sensível a maiúsculas e minúsculas) +SEARCHB = PROCURARB ## Localiza um valor de texto dentro de outro (não sensível a maiúsculas e minúsculas) +SUBSTITUTE = SUBST ## Substitui texto novo por texto antigo numa cadeia de texto +T = T ## Converte os respectivos argumentos em texto +TEXT = TEXTO ## Formata um número e converte-o em texto +TRIM = COMPACTAR ## Remove espaços do texto +UPPER = MAIÚSCULAS ## Converte texto em maiúsculas +VALUE = VALOR ## Converte um argumento de texto num número diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/ru/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/ru/_notes/dwsync.xml new file mode 100644 index 0000000..ecb8184 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/ru/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461872719437" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461874312008" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/ru/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/ru/config new file mode 100644 index 0000000..56e45bf --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/ru/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = р + + +## +## Excel Error Codes (For future use) +## +NULL = #ПУСТО! +DIV0 = #ДЕЛ/0! +VALUE = #ЗНАЧ! +REF = #ССЫЛ! +NAME = #ИМЯ? +NUM = #ЧИСЛО! +NA = #Н/Д diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/ru/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/ru/functions new file mode 100644 index 0000000..5ff6d4f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/ru/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from information provided by web-junior (http://www.web-junior.net/) +## +## + + +## +## Add-in and Automation functions Функции надстроек и автоматизации +## +GETPIVOTDATA = ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ ## Возвращает данные, хранящиеся в отчете сводной таблицы. + + +## +## Cube functions Функции Куб +## +CUBEKPIMEMBER = КУБЭЛЕМЕНТКИП ## Возвращает свойство ключевого индикатора производительности «(КИП)» и отображает имя «КИП» в ячейке. «КИП» представляет собой количественную величину, такую как ежемесячная валовая прибыль или ежеквартальная текучесть кадров, используемой для контроля эффективности работы организации. +CUBEMEMBER = КУБЭЛЕМЕНТ ## Возвращает элемент или кортеж из куба. Используется для проверки существования элемента или кортежа в кубе. +CUBEMEMBERPROPERTY = КУБСВОЙСТВОЭЛЕМЕНТА ## Возвращает значение свойства элемента из куба. Используется для проверки существования имени элемента в кубе и возвращает указанное свойство для этого элемента. +CUBERANKEDMEMBER = КУБПОРЭЛЕМЕНТ ## Возвращает n-ый или ранжированный элемент в множество. Используется для возвращения одного или нескольких элементов в множество, например, лучшего продавца или 10 лучших студентов. +CUBESET = КУБМНОЖ ## Определяет вычислительное множество элементов или кортежей, отправляя на сервер выражение, которое создает множество, а затем возвращает его в Microsoft Office Excel. +CUBESETCOUNT = КУБЧИСЛОЭЛМНОЖ ## Возвращает число элементов множества. +CUBEVALUE = КУБЗНАЧЕНИЕ ## Возвращает обобщенное значение из куба. + + +## +## Database functions Функции для работы с базами данных +## +DAVERAGE = ДСРЗНАЧ ## Возвращает среднее значение выбранных записей базы данных. +DCOUNT = БСЧЁТ ## Подсчитывает количество числовых ячеек в базе данных. +DCOUNTA = БСЧЁТА ## Подсчитывает количество непустых ячеек в базе данных. +DGET = БИЗВЛЕЧЬ ## Извлекает из базы данных одну запись, удовлетворяющую заданному условию. +DMAX = ДМАКС ## Возвращает максимальное значение среди выделенных записей базы данных. +DMIN = ДМИН ## Возвращает минимальное значение среди выделенных записей базы данных. +DPRODUCT = БДПРОИЗВЕД ## Перемножает значения определенного поля в записях базы данных, удовлетворяющих условию. +DSTDEV = ДСТАНДОТКЛ ## Оценивает стандартное отклонение по выборке для выделенных записей базы данных. +DSTDEVP = ДСТАНДОТКЛП ## Вычисляет стандартное отклонение по генеральной совокупности для выделенных записей базы данных +DSUM = БДСУММ ## Суммирует числа в поле для записей базы данных, удовлетворяющих условию. +DVAR = БДДИСП ## Оценивает дисперсию по выборке из выделенных записей базы данных +DVARP = БДДИСПП ## Вычисляет дисперсию по генеральной совокупности для выделенных записей базы данных + + +## +## Date and time functions Функции даты и времени +## +DATE = ДАТА ## Возвращает заданную дату в числовом формате. +DATEVALUE = ДАТАЗНАЧ ## Преобразует дату из текстового формата в числовой формат. +DAY = ДЕНЬ ## Преобразует дату в числовом формате в день месяца. +DAYS360 = ДНЕЙ360 ## Вычисляет количество дней между двумя датами на основе 360-дневного года. +EDATE = ДАТАМЕС ## Возвращает дату в числовом формате, отстоящую на заданное число месяцев вперед или назад от начальной даты. +EOMONTH = КОНМЕСЯЦА ## Возвращает дату в числовом формате для последнего дня месяца, отстоящего вперед или назад на заданное число месяцев. +HOUR = ЧАС ## Преобразует дату в числовом формате в часы. +MINUTE = МИНУТЫ ## Преобразует дату в числовом формате в минуты. +MONTH = МЕСЯЦ ## Преобразует дату в числовом формате в месяцы. +NETWORKDAYS = ЧИСТРАБДНИ ## Возвращает количество рабочих дней между двумя датами. +NOW = ТДАТА ## Возвращает текущую дату и время в числовом формате. +SECOND = СЕКУНДЫ ## Преобразует дату в числовом формате в секунды. +TIME = ВРЕМЯ ## Возвращает заданное время в числовом формате. +TIMEVALUE = ВРЕМЗНАЧ ## Преобразует время из текстового формата в числовой формат. +TODAY = СЕГОДНЯ ## Возвращает текущую дату в числовом формате. +WEEKDAY = ДЕНЬНЕД ## Преобразует дату в числовом формате в день недели. +WEEKNUM = НОМНЕДЕЛИ ## Преобразует числовое представление в число, которое указывает, на какую неделю года приходится указанная дата. +WORKDAY = РАБДЕНЬ ## Возвращает дату в числовом формате, отстоящую вперед или назад на заданное количество рабочих дней. +YEAR = ГОД ## Преобразует дату в числовом формате в год. +YEARFRAC = ДОЛЯГОДА ## Возвращает долю года, которую составляет количество дней между начальной и конечной датами. + + +## +## Engineering functions Инженерные функции +## +BESSELI = БЕССЕЛЬ.I ## Возвращает модифицированную функцию Бесселя In(x). +BESSELJ = БЕССЕЛЬ.J ## Возвращает функцию Бесселя Jn(x). +BESSELK = БЕССЕЛЬ.K ## Возвращает модифицированную функцию Бесселя Kn(x). +BESSELY = БЕССЕЛЬ.Y ## Возвращает функцию Бесселя Yn(x). +BIN2DEC = ДВ.В.ДЕС ## Преобразует двоичное число в десятичное. +BIN2HEX = ДВ.В.ШЕСТН ## Преобразует двоичное число в шестнадцатеричное. +BIN2OCT = ДВ.В.ВОСЬМ ## Преобразует двоичное число в восьмеричное. +COMPLEX = КОМПЛЕКСН ## Преобразует коэффициенты при вещественной и мнимой частях комплексного числа в комплексное число. +CONVERT = ПРЕОБР ## Преобразует число из одной системы единиц измерения в другую. +DEC2BIN = ДЕС.В.ДВ ## Преобразует десятичное число в двоичное. +DEC2HEX = ДЕС.В.ШЕСТН ## Преобразует десятичное число в шестнадцатеричное. +DEC2OCT = ДЕС.В.ВОСЬМ ## Преобразует десятичное число в восьмеричное. +DELTA = ДЕЛЬТА ## Проверяет равенство двух значений. +ERF = ФОШ ## Возвращает функцию ошибки. +ERFC = ДФОШ ## Возвращает дополнительную функцию ошибки. +GESTEP = ПОРОГ ## Проверяет, не превышает ли данное число порогового значения. +HEX2BIN = ШЕСТН.В.ДВ ## Преобразует шестнадцатеричное число в двоичное. +HEX2DEC = ШЕСТН.В.ДЕС ## Преобразует шестнадцатеричное число в десятичное. +HEX2OCT = ШЕСТН.В.ВОСЬМ ## Преобразует шестнадцатеричное число в восьмеричное. +IMABS = МНИМ.ABS ## Возвращает абсолютную величину (модуль) комплексного числа. +IMAGINARY = МНИМ.ЧАСТЬ ## Возвращает коэффициент при мнимой части комплексного числа. +IMARGUMENT = МНИМ.АРГУМЕНТ ## Возвращает значение аргумента комплексного числа (тета) — угол, выраженный в радианах. +IMCONJUGATE = МНИМ.СОПРЯЖ ## Возвращает комплексно-сопряженное комплексное число. +IMCOS = МНИМ.COS ## Возвращает косинус комплексного числа. +IMDIV = МНИМ.ДЕЛ ## Возвращает частное от деления двух комплексных чисел. +IMEXP = МНИМ.EXP ## Возвращает экспоненту комплексного числа. +IMLN = МНИМ.LN ## Возвращает натуральный логарифм комплексного числа. +IMLOG10 = МНИМ.LOG10 ## Возвращает обычный (десятичный) логарифм комплексного числа. +IMLOG2 = МНИМ.LOG2 ## Возвращает двоичный логарифм комплексного числа. +IMPOWER = МНИМ.СТЕПЕНЬ ## Возвращает комплексное число, возведенное в целую степень. +IMPRODUCT = МНИМ.ПРОИЗВЕД ## Возвращает произведение от 2 до 29 комплексных чисел. +IMREAL = МНИМ.ВЕЩ ## Возвращает коэффициент при вещественной части комплексного числа. +IMSIN = МНИМ.SIN ## Возвращает синус комплексного числа. +IMSQRT = МНИМ.КОРЕНЬ ## Возвращает значение квадратного корня из комплексного числа. +IMSUB = МНИМ.РАЗН ## Возвращает разность двух комплексных чисел. +IMSUM = МНИМ.СУММ ## Возвращает сумму комплексных чисел. +OCT2BIN = ВОСЬМ.В.ДВ ## Преобразует восьмеричное число в двоичное. +OCT2DEC = ВОСЬМ.В.ДЕС ## Преобразует восьмеричное число в десятичное. +OCT2HEX = ВОСЬМ.В.ШЕСТН ## Преобразует восьмеричное число в шестнадцатеричное. + + +## +## Financial functions Финансовые функции +## +ACCRINT = НАКОПДОХОД ## Возвращает накопленный процент по ценным бумагам с периодической выплатой процентов. +ACCRINTM = НАКОПДОХОДПОГАШ ## Возвращает накопленный процент по ценным бумагам, проценты по которым выплачиваются в срок погашения. +AMORDEGRC = АМОРУМ ## Возвращает величину амортизации для каждого периода, используя коэффициент амортизации. +AMORLINC = АМОРУВ ## Возвращает величину амортизации для каждого периода. +COUPDAYBS = ДНЕЙКУПОНДО ## Возвращает количество дней от начала действия купона до даты соглашения. +COUPDAYS = ДНЕЙКУПОН ## Возвращает число дней в периоде купона, содержащем дату соглашения. +COUPDAYSNC = ДНЕЙКУПОНПОСЛЕ ## Возвращает число дней от даты соглашения до срока следующего купона. +COUPNCD = ДАТАКУПОНПОСЛЕ ## Возвращает следующую дату купона после даты соглашения. +COUPNUM = ЧИСЛКУПОН ## Возвращает количество купонов, которые могут быть оплачены между датой соглашения и сроком вступления в силу. +COUPPCD = ДАТАКУПОНДО ## Возвращает предыдущую дату купона перед датой соглашения. +CUMIPMT = ОБЩПЛАТ ## Возвращает общую выплату, произведенную между двумя периодическими выплатами. +CUMPRINC = ОБЩДОХОД ## Возвращает общую выплату по займу между двумя периодами. +DB = ФУО ## Возвращает величину амортизации актива для заданного периода, рассчитанную методом фиксированного уменьшения остатка. +DDB = ДДОБ ## Возвращает величину амортизации актива за данный период, используя метод двойного уменьшения остатка или иной явно указанный метод. +DISC = СКИДКА ## Возвращает норму скидки для ценных бумаг. +DOLLARDE = РУБЛЬ.ДЕС ## Преобразует цену в рублях, выраженную в виде дроби, в цену в рублях, выраженную десятичным числом. +DOLLARFR = РУБЛЬ.ДРОБЬ ## Преобразует цену в рублях, выраженную десятичным числом, в цену в рублях, выраженную в виде дроби. +DURATION = ДЛИТ ## Возвращает ежегодную продолжительность действия ценных бумаг с периодическими выплатами по процентам. +EFFECT = ЭФФЕКТ ## Возвращает действующие ежегодные процентные ставки. +FV = БС ## Возвращает будущую стоимость инвестиции. +FVSCHEDULE = БЗРАСПИС ## Возвращает будущую стоимость первоначальной основной суммы после начисления ряда сложных процентов. +INTRATE = ИНОРМА ## Возвращает процентную ставку для полностью инвестированных ценных бумаг. +IPMT = ПРПЛТ ## Возвращает величину выплаты прибыли на вложения за данный период. +IRR = ВСД ## Возвращает внутреннюю ставку доходности для ряда потоков денежных средств. +ISPMT = ПРОЦПЛАТ ## Вычисляет выплаты за указанный период инвестиции. +MDURATION = МДЛИТ ## Возвращает модифицированную длительность Маколея для ценных бумаг с предполагаемой номинальной стоимостью 100 рублей. +MIRR = МВСД ## Возвращает внутреннюю ставку доходности, при которой положительные и отрицательные денежные потоки имеют разные значения ставки. +NOMINAL = НОМИНАЛ ## Возвращает номинальную годовую процентную ставку. +NPER = КПЕР ## Возвращает общее количество периодов выплаты для данного вклада. +NPV = ЧПС ## Возвращает чистую приведенную стоимость инвестиции, основанной на серии периодических денежных потоков и ставке дисконтирования. +ODDFPRICE = ЦЕНАПЕРВНЕРЕГ ## Возвращает цену за 100 рублей нарицательной стоимости ценных бумаг с нерегулярным первым периодом. +ODDFYIELD = ДОХОДПЕРВНЕРЕГ ## Возвращает доход по ценным бумагам с нерегулярным первым периодом. +ODDLPRICE = ЦЕНАПОСЛНЕРЕГ ## Возвращает цену за 100 рублей нарицательной стоимости ценных бумаг с нерегулярным последним периодом. +ODDLYIELD = ДОХОДПОСЛНЕРЕГ ## Возвращает доход по ценным бумагам с нерегулярным последним периодом. +PMT = ПЛТ ## Возвращает величину выплаты за один период аннуитета. +PPMT = ОСПЛТ ## Возвращает величину выплат в погашение основной суммы по инвестиции за заданный период. +PRICE = ЦЕНА ## Возвращает цену за 100 рублей нарицательной стоимости ценных бумаг, по которым производится периодическая выплата процентов. +PRICEDISC = ЦЕНАСКИДКА ## Возвращает цену за 100 рублей номинальной стоимости ценных бумаг, на которые сделана скидка. +PRICEMAT = ЦЕНАПОГАШ ## Возвращает цену за 100 рублей номинальной стоимости ценных бумаг, проценты по которым выплачиваются в срок погашения. +PV = ПС ## Возвращает приведенную (к текущему моменту) стоимость инвестиции. +RATE = СТАВКА ## Возвращает процентную ставку по аннуитету за один период. +RECEIVED = ПОЛУЧЕНО ## Возвращает сумму, полученную к сроку погашения полностью обеспеченных ценных бумаг. +SLN = АПЛ ## Возвращает величину линейной амортизации актива за один период. +SYD = АСЧ ## Возвращает величину амортизации актива за данный период, рассчитанную методом суммы годовых чисел. +TBILLEQ = РАВНОКЧЕК ## Возвращает эквивалентный облигации доход по казначейскому чеку. +TBILLPRICE = ЦЕНАКЧЕК ## Возвращает цену за 100 рублей нарицательной стоимости для казначейского чека. +TBILLYIELD = ДОХОДКЧЕК ## Возвращает доход по казначейскому чеку. +VDB = ПУО ## Возвращает величину амортизации актива для указанного или частичного периода при использовании метода сокращающегося баланса. +XIRR = ЧИСТВНДОХ ## Возвращает внутреннюю ставку доходности для графика денежных потоков, которые не обязательно носят периодический характер. +XNPV = ЧИСТНЗ ## Возвращает чистую приведенную стоимость для денежных потоков, которые не обязательно являются периодическими. +YIELD = ДОХОД ## Возвращает доход от ценных бумаг, по которым производятся периодические выплаты процентов. +YIELDDISC = ДОХОДСКИДКА ## Возвращает годовой доход по ценным бумагам, на которые сделана скидка (пример — казначейские чеки). +YIELDMAT = ДОХОДПОГАШ ## Возвращает годовой доход от ценных бумаг, проценты по которым выплачиваются в срок погашения. + + +## +## Information functions Информационные функции +## +CELL = ЯЧЕЙКА ## Возвращает информацию о формате, расположении или содержимом ячейки. +ERROR.TYPE = ТИП.ОШИБКИ ## Возвращает числовой код, соответствующий типу ошибки. +INFO = ИНФОРМ ## Возвращает информацию о текущей операционной среде. +ISBLANK = ЕПУСТО ## Возвращает значение ИСТИНА, если аргумент является ссылкой на пустую ячейку. +ISERR = ЕОШ ## Возвращает значение ИСТИНА, если аргумент ссылается на любое значение ошибки, кроме #Н/Д. +ISERROR = ЕОШИБКА ## Возвращает значение ИСТИНА, если аргумент ссылается на любое значение ошибки. +ISEVEN = ЕЧЁТН ## Возвращает значение ИСТИНА, если значение аргумента является четным числом. +ISLOGICAL = ЕЛОГИЧ ## Возвращает значение ИСТИНА, если аргумент ссылается на логическое значение. +ISNA = ЕНД ## Возвращает значение ИСТИНА, если аргумент ссылается на значение ошибки #Н/Д. +ISNONTEXT = ЕНЕТЕКСТ ## Возвращает значение ИСТИНА, если значение аргумента не является текстом. +ISNUMBER = ЕЧИСЛО ## Возвращает значение ИСТИНА, если аргумент ссылается на число. +ISODD = ЕНЕЧЁТ ## Возвращает значение ИСТИНА, если значение аргумента является нечетным числом. +ISREF = ЕССЫЛКА ## Возвращает значение ИСТИНА, если значение аргумента является ссылкой. +ISTEXT = ЕТЕКСТ ## Возвращает значение ИСТИНА, если значение аргумента является текстом. +N = Ч ## Возвращает значение, преобразованное в число. +NA = НД ## Возвращает значение ошибки #Н/Д. +TYPE = ТИП ## Возвращает число, обозначающее тип данных значения. + + +## +## Logical functions Логические функции +## +AND = И ## Renvoie VRAI si tous ses arguments sont VRAI. +FALSE = ЛОЖЬ ## Возвращает логическое значение ЛОЖЬ. +IF = ЕСЛИ ## Выполняет проверку условия. +IFERROR = ЕСЛИОШИБКА ## Возвращает введённое значение, если вычисление по формуле вызывает ошибку; в противном случае функция возвращает результат вычисления. +NOT = НЕ ## Меняет логическое значение своего аргумента на противоположное. +OR = ИЛИ ## Возвращает значение ИСТИНА, если хотя бы один аргумент имеет значение ИСТИНА. +TRUE = ИСТИНА ## Возвращает логическое значение ИСТИНА. + + +## +## Lookup and reference functions Функции ссылки и поиска +## +ADDRESS = АДРЕС ## Возвращает ссылку на отдельную ячейку листа в виде текста. +AREAS = ОБЛАСТИ ## Возвращает количество областей в ссылке. +CHOOSE = ВЫБОР ## Выбирает значение из списка значений по индексу. +COLUMN = СТОЛБЕЦ ## Возвращает номер столбца, на который указывает ссылка. +COLUMNS = ЧИСЛСТОЛБ ## Возвращает количество столбцов в ссылке. +HLOOKUP = ГПР ## Ищет в первой строке массива и возвращает значение отмеченной ячейки +HYPERLINK = ГИПЕРССЫЛКА ## Создает ссылку, открывающую документ, который находится на сервере сети, в интрасети или в Интернете. +INDEX = ИНДЕКС ## Использует индекс для выбора значения из ссылки или массива. +INDIRECT = ДВССЫЛ ## Возвращает ссылку, заданную текстовым значением. +LOOKUP = ПРОСМОТР ## Ищет значения в векторе или массиве. +MATCH = ПОИСКПОЗ ## Ищет значения в ссылке или массиве. +OFFSET = СМЕЩ ## Возвращает смещение ссылки относительно заданной ссылки. +ROW = СТРОКА ## Возвращает номер строки, определяемой ссылкой. +ROWS = ЧСТРОК ## Возвращает количество строк в ссылке. +RTD = ДРВ ## Извлекает данные реального времени из программ, поддерживающих автоматизацию COM (Программирование объектов. Стандартное средство для работы с объектами некоторого приложения из другого приложения или средства разработки. Программирование объектов (ранее называемое программированием OLE) является функцией модели COM (Component Object Model, модель компонентных объектов).). +TRANSPOSE = ТРАНСП ## Возвращает транспонированный массив. +VLOOKUP = ВПР ## Ищет значение в первом столбце массива и возвращает значение из ячейки в найденной строке и указанном столбце. + + +## +## Math and trigonometry functions Математические и тригонометрические функции +## +ABS = ABS ## Возвращает модуль (абсолютную величину) числа. +ACOS = ACOS ## Возвращает арккосинус числа. +ACOSH = ACOSH ## Возвращает гиперболический арккосинус числа. +ASIN = ASIN ## Возвращает арксинус числа. +ASINH = ASINH ## Возвращает гиперболический арксинус числа. +ATAN = ATAN ## Возвращает арктангенс числа. +ATAN2 = ATAN2 ## Возвращает арктангенс для заданных координат x и y. +ATANH = ATANH ## Возвращает гиперболический арктангенс числа. +CEILING = ОКРВВЕРХ ## Округляет число до ближайшего целого или до ближайшего кратного указанному значению. +COMBIN = ЧИСЛКОМБ ## Возвращает количество комбинаций для заданного числа объектов. +COS = COS ## Возвращает косинус числа. +COSH = COSH ## Возвращает гиперболический косинус числа. +DEGREES = ГРАДУСЫ ## Преобразует радианы в градусы. +EVEN = ЧЁТН ## Округляет число до ближайшего четного целого. +EXP = EXP ## Возвращает число e, возведенное в указанную степень. +FACT = ФАКТР ## Возвращает факториал числа. +FACTDOUBLE = ДВФАКТР ## Возвращает двойной факториал числа. +FLOOR = ОКРВНИЗ ## Округляет число до ближайшего меньшего по модулю значения. +GCD = НОД ## Возвращает наибольший общий делитель. +INT = ЦЕЛОЕ ## Округляет число до ближайшего меньшего целого. +LCM = НОК ## Возвращает наименьшее общее кратное. +LN = LN ## Возвращает натуральный логарифм числа. +LOG = LOG ## Возвращает логарифм числа по заданному основанию. +LOG10 = LOG10 ## Возвращает десятичный логарифм числа. +MDETERM = МОПРЕД ## Возвращает определитель матрицы массива. +MINVERSE = МОБР ## Возвращает обратную матрицу массива. +MMULT = МУМНОЖ ## Возвращает произведение матриц двух массивов. +MOD = ОСТАТ ## Возвращает остаток от деления. +MROUND = ОКРУГЛТ ## Возвращает число, округленное с требуемой точностью. +MULTINOMIAL = МУЛЬТИНОМ ## Возвращает мультиномиальный коэффициент множества чисел. +ODD = НЕЧЁТ ## Округляет число до ближайшего нечетного целого. +PI = ПИ ## Возвращает число пи. +POWER = СТЕПЕНЬ ## Возвращает результат возведения числа в степень. +PRODUCT = ПРОИЗВЕД ## Возвращает произведение аргументов. +QUOTIENT = ЧАСТНОЕ ## Возвращает целую часть частного при делении. +RADIANS = РАДИАНЫ ## Преобразует градусы в радианы. +RAND = СЛЧИС ## Возвращает случайное число в интервале от 0 до 1. +RANDBETWEEN = СЛУЧМЕЖДУ ## Возвращает случайное число в интервале между двумя заданными числами. +ROMAN = РИМСКОЕ ## Преобразует арабские цифры в римские в виде текста. +ROUND = ОКРУГЛ ## Округляет число до указанного количества десятичных разрядов. +ROUNDDOWN = ОКРУГЛВНИЗ ## Округляет число до ближайшего меньшего по модулю значения. +ROUNDUP = ОКРУГЛВВЕРХ ## Округляет число до ближайшего большего по модулю значения. +SERIESSUM = РЯД.СУММ ## Возвращает сумму степенного ряда, вычисленную по формуле. +SIGN = ЗНАК ## Возвращает знак числа. +SIN = SIN ## Возвращает синус заданного угла. +SINH = SINH ## Возвращает гиперболический синус числа. +SQRT = КОРЕНЬ ## Возвращает положительное значение квадратного корня. +SQRTPI = КОРЕНЬПИ ## Возвращает квадратный корень из значения выражения (число * ПИ). +SUBTOTAL = ПРОМЕЖУТОЧНЫЕ.ИТОГИ ## Возвращает промежуточный итог в списке или базе данных. +SUM = СУММ ## Суммирует аргументы. +SUMIF = СУММЕСЛИ ## Суммирует ячейки, удовлетворяющие заданному условию. +SUMIFS = СУММЕСЛИМН ## Суммирует диапазон ячеек, удовлетворяющих нескольким условиям. +SUMPRODUCT = СУММПРОИЗВ ## Возвращает сумму произведений соответствующих элементов массивов. +SUMSQ = СУММКВ ## Возвращает сумму квадратов аргументов. +SUMX2MY2 = СУММРАЗНКВ ## Возвращает сумму разностей квадратов соответствующих значений в двух массивах. +SUMX2PY2 = СУММСУММКВ ## Возвращает сумму сумм квадратов соответствующих элементов двух массивов. +SUMXMY2 = СУММКВРАЗН ## Возвращает сумму квадратов разностей соответствующих значений в двух массивах. +TAN = TAN ## Возвращает тангенс числа. +TANH = TANH ## Возвращает гиперболический тангенс числа. +TRUNC = ОТБР ## Отбрасывает дробную часть числа. + + +## +## Statistical functions Статистические функции +## +AVEDEV = СРОТКЛ ## Возвращает среднее арифметическое абсолютных значений отклонений точек данных от среднего. +AVERAGE = СРЗНАЧ ## Возвращает среднее арифметическое аргументов. +AVERAGEA = СРЗНАЧА ## Возвращает среднее арифметическое аргументов, включая числа, текст и логические значения. +AVERAGEIF = СРЗНАЧЕСЛИ ## Возвращает среднее значение (среднее арифметическое) всех ячеек в диапазоне, которые удовлетворяют данному условию. +AVERAGEIFS = СРЗНАЧЕСЛИМН ## Возвращает среднее значение (среднее арифметическое) всех ячеек, которые удовлетворяют нескольким условиям. +BETADIST = БЕТАРАСП ## Возвращает интегральную функцию бета-распределения. +BETAINV = БЕТАОБР ## Возвращает обратную интегральную функцию указанного бета-распределения. +BINOMDIST = БИНОМРАСП ## Возвращает отдельное значение биномиального распределения. +CHIDIST = ХИ2РАСП ## Возвращает одностороннюю вероятность распределения хи-квадрат. +CHIINV = ХИ2ОБР ## Возвращает обратное значение односторонней вероятности распределения хи-квадрат. +CHITEST = ХИ2ТЕСТ ## Возвращает тест на независимость. +CONFIDENCE = ДОВЕРИТ ## Возвращает доверительный интервал для среднего значения по генеральной совокупности. +CORREL = КОРРЕЛ ## Возвращает коэффициент корреляции между двумя множествами данных. +COUNT = СЧЁТ ## Подсчитывает количество чисел в списке аргументов. +COUNTA = СЧЁТЗ ## Подсчитывает количество значений в списке аргументов. +COUNTBLANK = СЧИТАТЬПУСТОТЫ ## Подсчитывает количество пустых ячеек в диапазоне +COUNTIF = СЧЁТЕСЛИ ## Подсчитывает количество ячеек в диапазоне, удовлетворяющих заданному условию +COUNTIFS = СЧЁТЕСЛИМН ## Подсчитывает количество ячеек внутри диапазона, удовлетворяющих нескольким условиям. +COVAR = КОВАР ## Возвращает ковариацию, среднее произведений парных отклонений +CRITBINOM = КРИТБИНОМ ## Возвращает наименьшее значение, для которого интегральное биномиальное распределение меньше или равно заданному критерию. +DEVSQ = КВАДРОТКЛ ## Возвращает сумму квадратов отклонений. +EXPONDIST = ЭКСПРАСП ## Возвращает экспоненциальное распределение. +FDIST = FРАСП ## Возвращает F-распределение вероятности. +FINV = FРАСПОБР ## Возвращает обратное значение для F-распределения вероятности. +FISHER = ФИШЕР ## Возвращает преобразование Фишера. +FISHERINV = ФИШЕРОБР ## Возвращает обратное преобразование Фишера. +FORECAST = ПРЕДСКАЗ ## Возвращает значение линейного тренда. +FREQUENCY = ЧАСТОТА ## Возвращает распределение частот в виде вертикального массива. +FTEST = ФТЕСТ ## Возвращает результат F-теста. +GAMMADIST = ГАММАРАСП ## Возвращает гамма-распределение. +GAMMAINV = ГАММАОБР ## Возвращает обратное гамма-распределение. +GAMMALN = ГАММАНЛОГ ## Возвращает натуральный логарифм гамма функции, Γ(x). +GEOMEAN = СРГЕОМ ## Возвращает среднее геометрическое. +GROWTH = РОСТ ## Возвращает значения в соответствии с экспоненциальным трендом. +HARMEAN = СРГАРМ ## Возвращает среднее гармоническое. +HYPGEOMDIST = ГИПЕРГЕОМЕТ ## Возвращает гипергеометрическое распределение. +INTERCEPT = ОТРЕЗОК ## Возвращает отрезок, отсекаемый на оси линией линейной регрессии. +KURT = ЭКСЦЕСС ## Возвращает эксцесс множества данных. +LARGE = НАИБОЛЬШИЙ ## Возвращает k-ое наибольшее значение в множестве данных. +LINEST = ЛИНЕЙН ## Возвращает параметры линейного тренда. +LOGEST = ЛГРФПРИБЛ ## Возвращает параметры экспоненциального тренда. +LOGINV = ЛОГНОРМОБР ## Возвращает обратное логарифмическое нормальное распределение. +LOGNORMDIST = ЛОГНОРМРАСП ## Возвращает интегральное логарифмическое нормальное распределение. +MAX = МАКС ## Возвращает наибольшее значение в списке аргументов. +MAXA = МАКСА ## Возвращает наибольшее значение в списке аргументов, включая числа, текст и логические значения. +MEDIAN = МЕДИАНА ## Возвращает медиану заданных чисел. +MIN = МИН ## Возвращает наименьшее значение в списке аргументов. +MINA = МИНА ## Возвращает наименьшее значение в списке аргументов, включая числа, текст и логические значения. +MODE = МОДА ## Возвращает значение моды множества данных. +NEGBINOMDIST = ОТРБИНОМРАСП ## Возвращает отрицательное биномиальное распределение. +NORMDIST = НОРМРАСП ## Возвращает нормальную функцию распределения. +NORMINV = НОРМОБР ## Возвращает обратное нормальное распределение. +NORMSDIST = НОРМСТРАСП ## Возвращает стандартное нормальное интегральное распределение. +NORMSINV = НОРМСТОБР ## Возвращает обратное значение стандартного нормального распределения. +PEARSON = ПИРСОН ## Возвращает коэффициент корреляции Пирсона. +PERCENTILE = ПЕРСЕНТИЛЬ ## Возвращает k-ую персентиль для значений диапазона. +PERCENTRANK = ПРОЦЕНТРАНГ ## Возвращает процентную норму значения в множестве данных. +PERMUT = ПЕРЕСТ ## Возвращает количество перестановок для заданного числа объектов. +POISSON = ПУАССОН ## Возвращает распределение Пуассона. +PROB = ВЕРОЯТНОСТЬ ## Возвращает вероятность того, что значение из диапазона находится внутри заданных пределов. +QUARTILE = КВАРТИЛЬ ## Возвращает квартиль множества данных. +RANK = РАНГ ## Возвращает ранг числа в списке чисел. +RSQ = КВПИРСОН ## Возвращает квадрат коэффициента корреляции Пирсона. +SKEW = СКОС ## Возвращает асимметрию распределения. +SLOPE = НАКЛОН ## Возвращает наклон линии линейной регрессии. +SMALL = НАИМЕНЬШИЙ ## Возвращает k-ое наименьшее значение в множестве данных. +STANDARDIZE = НОРМАЛИЗАЦИЯ ## Возвращает нормализованное значение. +STDEV = СТАНДОТКЛОН ## Оценивает стандартное отклонение по выборке. +STDEVA = СТАНДОТКЛОНА ## Оценивает стандартное отклонение по выборке, включая числа, текст и логические значения. +STDEVP = СТАНДОТКЛОНП ## Вычисляет стандартное отклонение по генеральной совокупности. +STDEVPA = СТАНДОТКЛОНПА ## Вычисляет стандартное отклонение по генеральной совокупности, включая числа, текст и логические значения. +STEYX = СТОШYX ## Возвращает стандартную ошибку предсказанных значений y для каждого значения x в регрессии. +TDIST = СТЬЮДРАСП ## Возвращает t-распределение Стьюдента. +TINV = СТЬЮДРАСПОБР ## Возвращает обратное t-распределение Стьюдента. +TREND = ТЕНДЕНЦИЯ ## Возвращает значения в соответствии с линейным трендом. +TRIMMEAN = УРЕЗСРЕДНЕЕ ## Возвращает среднее внутренности множества данных. +TTEST = ТТЕСТ ## Возвращает вероятность, соответствующую критерию Стьюдента. +VAR = ДИСП ## Оценивает дисперсию по выборке. +VARA = ДИСПА ## Оценивает дисперсию по выборке, включая числа, текст и логические значения. +VARP = ДИСПР ## Вычисляет дисперсию для генеральной совокупности. +VARPA = ДИСПРА ## Вычисляет дисперсию для генеральной совокупности, включая числа, текст и логические значения. +WEIBULL = ВЕЙБУЛЛ ## Возвращает распределение Вейбулла. +ZTEST = ZТЕСТ ## Возвращает двустороннее P-значение z-теста. + + +## +## Text functions Текстовые функции +## +ASC = ASC ## Для языков с двухбайтовыми наборами знаков (например, катакана) преобразует полноширинные (двухбайтовые) знаки в полуширинные (однобайтовые). +BAHTTEXT = БАТТЕКСТ ## Преобразует число в текст, используя денежный формат ß (БАТ). +CHAR = СИМВОЛ ## Возвращает знак с заданным кодом. +CLEAN = ПЕЧСИМВ ## Удаляет все непечатаемые знаки из текста. +CODE = КОДСИМВ ## Возвращает числовой код первого знака в текстовой строке. +CONCATENATE = СЦЕПИТЬ ## Объединяет несколько текстовых элементов в один. +DOLLAR = РУБЛЬ ## Преобразует число в текст, используя денежный формат. +EXACT = СОВПАД ## Проверяет идентичность двух текстовых значений. +FIND = НАЙТИ ## Ищет вхождения одного текстового значения в другом (с учетом регистра). +FINDB = НАЙТИБ ## Ищет вхождения одного текстового значения в другом (с учетом регистра). +FIXED = ФИКСИРОВАННЫЙ ## Форматирует число и преобразует его в текст с заданным числом десятичных знаков. +JIS = JIS ## Для языков с двухбайтовыми наборами знаков (например, катакана) преобразует полуширинные (однобайтовые) знаки в текстовой строке в полноширинные (двухбайтовые). +LEFT = ЛЕВСИМВ ## Возвращает крайние слева знаки текстового значения. +LEFTB = ЛЕВБ ## Возвращает крайние слева знаки текстового значения. +LEN = ДЛСТР ## Возвращает количество знаков в текстовой строке. +LENB = ДЛИНБ ## Возвращает количество знаков в текстовой строке. +LOWER = СТРОЧН ## Преобразует все буквы текста в строчные. +MID = ПСТР ## Возвращает заданное число знаков из строки текста, начиная с указанной позиции. +MIDB = ПСТРБ ## Возвращает заданное число знаков из строки текста, начиная с указанной позиции. +PHONETIC = PHONETIC ## Извлекает фонетические (фуригана) знаки из текстовой строки. +PROPER = ПРОПНАЧ ## Преобразует первую букву в каждом слове текста в прописную. +REPLACE = ЗАМЕНИТЬ ## Заменяет знаки в тексте. +REPLACEB = ЗАМЕНИТЬБ ## Заменяет знаки в тексте. +REPT = ПОВТОР ## Повторяет текст заданное число раз. +RIGHT = ПРАВСИМВ ## Возвращает крайние справа знаки текстовой строки. +RIGHTB = ПРАВБ ## Возвращает крайние справа знаки текстовой строки. +SEARCH = ПОИСК ## Ищет вхождения одного текстового значения в другом (без учета регистра). +SEARCHB = ПОИСКБ ## Ищет вхождения одного текстового значения в другом (без учета регистра). +SUBSTITUTE = ПОДСТАВИТЬ ## Заменяет в текстовой строке старый текст новым. +T = Т ## Преобразует аргументы в текст. +TEXT = ТЕКСТ ## Форматирует число и преобразует его в текст. +TRIM = СЖПРОБЕЛЫ ## Удаляет из текста пробелы. +UPPER = ПРОПИСН ## Преобразует все буквы текста в прописные. +VALUE = ЗНАЧЕН ## Преобразует текстовый аргумент в число. diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/sv/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/sv/_notes/dwsync.xml new file mode 100644 index 0000000..715cace --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/sv/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461874026354" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461874500195" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/sv/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/sv/config new file mode 100644 index 0000000..726f771 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/sv/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = kr + + +## +## Excel Error Codes (For future use) +## +NULL = #Skärning! +DIV0 = #Division/0! +VALUE = #Värdefel! +REF = #Referens! +NAME = #Namn? +NUM = #Ogiltigt! +NA = #Saknas! diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/sv/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/sv/functions new file mode 100644 index 0000000..73b2deb --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/sv/functions @@ -0,0 +1,408 @@ +## +## Add-in and Automation functions Tilläggs- och automatiseringsfunktioner +## +GETPIVOTDATA = HÄMTA.PIVOTDATA ## Returnerar data som lagrats i en pivottabellrapport + + +## +## Cube functions Kubfunktioner +## +CUBEKPIMEMBER = KUBKPIMEDLEM ## Returnerar namn, egenskap och mått för en KPI och visar namnet och egenskapen i cellen. En KPI, eller prestandaindikator, är ett kvantifierbart mått, t.ex. månatlig bruttovinst eller personalomsättning per kvartal, som används för att analysera ett företags resultat. +CUBEMEMBER = KUBMEDLEM ## Returnerar en medlem eller ett par i en kubhierarki. Används för att verifiera att medlemmen eller paret finns i kuben. +CUBEMEMBERPROPERTY = KUBMEDLEMSEGENSKAP ## Returnerar värdet för en medlemsegenskap i kuben. Används för att verifiera att ett medlemsnamn finns i kuben, samt för att returnera den angivna egenskapen för medlemmen. +CUBERANKEDMEMBER = KUBRANGORDNADMEDLEM ## Returnerar den n:te, eller rangordnade, medlemmen i en uppsättning. Används för att returnera ett eller flera element i en uppsättning, till exempelvis den bästa försäljaren eller de tio bästa eleverna. +CUBESET = KUBINSTÄLLNING ## Definierar en beräknad uppsättning medlemmar eller par genom att skicka ett bestämt uttryck till kuben på servern, som skapar uppsättningen och sedan returnerar den till Microsoft Office Excel. +CUBESETCOUNT = KUBINSTÄLLNINGANTAL ## Returnerar antalet objekt i en uppsättning. +CUBEVALUE = KUBVÄRDE ## Returnerar ett mängdvärde från en kub. + + +## +## Database functions Databasfunktioner +## +DAVERAGE = DMEDEL ## Returnerar medelvärdet av databasposterna +DCOUNT = DANTAL ## Räknar antalet celler som innehåller tal i en databas +DCOUNTA = DANTALV ## Räknar ifyllda celler i en databas +DGET = DHÄMTA ## Hämtar en enstaka post från en databas som uppfyller de angivna villkoren +DMAX = DMAX ## Returnerar det största värdet från databasposterna +DMIN = DMIN ## Returnerar det minsta värdet från databasposterna +DPRODUCT = DPRODUKT ## Multiplicerar värdena i ett visst fält i poster som uppfyller villkoret +DSTDEV = DSTDAV ## Uppskattar standardavvikelsen baserat på ett urval av databasposterna +DSTDEVP = DSTDAVP ## Beräknar standardavvikelsen utifrån hela populationen av valda databasposter +DSUM = DSUMMA ## Summerar talen i kolumnfält i databasposter som uppfyller villkoret +DVAR = DVARIANS ## Uppskattar variansen baserat på ett urval av databasposterna +DVARP = DVARIANSP ## Beräknar variansen utifrån hela populationen av valda databasposter + + +## +## Date and time functions Tid- och datumfunktioner +## +DATE = DATUM ## Returnerar ett serienummer för ett visst datum +DATEVALUE = DATUMVÄRDE ## Konverterar ett datum i textformat till ett serienummer +DAY = DAG ## Konverterar ett serienummer till dag i månaden +DAYS360 = DAGAR360 ## Beräknar antalet dagar mellan två datum baserat på ett 360-dagarsår +EDATE = EDATUM ## Returnerar serienumret för ett datum som infaller ett visst antal månader före eller efter startdatumet +EOMONTH = SLUTMÅNAD ## Returnerar serienumret för sista dagen i månaden ett visst antal månader tidigare eller senare +HOUR = TIMME ## Konverterar ett serienummer till en timme +MINUTE = MINUT ## Konverterar ett serienummer till en minut +MONTH = MÅNAD ## Konverterar ett serienummer till en månad +NETWORKDAYS = NETTOARBETSDAGAR ## Returnerar antalet hela arbetsdagar mellan två datum +NOW = NU ## Returnerar serienumret för dagens datum och aktuell tid +SECOND = SEKUND ## Konverterar ett serienummer till en sekund +TIME = KLOCKSLAG ## Returnerar serienumret för en viss tid +TIMEVALUE = TIDVÄRDE ## Konverterar en tid i textformat till ett serienummer +TODAY = IDAG ## Returnerar serienumret för dagens datum +WEEKDAY = VECKODAG ## Konverterar ett serienummer till en dag i veckan +WEEKNUM = VECKONR ## Konverterar ett serienummer till ett veckonummer +WORKDAY = ARBETSDAGAR ## Returnerar serienumret för ett datum ett visst antal arbetsdagar tidigare eller senare +YEAR = ÅR ## Konverterar ett serienummer till ett år +YEARFRAC = ÅRDEL ## Returnerar en del av ett år som representerar antalet hela dagar mellan start- och slutdatum + + +## +## Engineering functions Tekniska funktioner +## +BESSELI = BESSELI ## Returnerar den modifierade Bessel-funktionen In(x) +BESSELJ = BESSELJ ## Returnerar Bessel-funktionen Jn(x) +BESSELK = BESSELK ## Returnerar den modifierade Bessel-funktionen Kn(x) +BESSELY = BESSELY ## Returnerar Bessel-funktionen Yn(x) +BIN2DEC = BIN.TILL.DEC ## Omvandlar ett binärt tal till decimalt +BIN2HEX = BIN.TILL.HEX ## Omvandlar ett binärt tal till hexadecimalt +BIN2OCT = BIN.TILL.OKT ## Omvandlar ett binärt tal till oktalt +COMPLEX = KOMPLEX ## Omvandlar reella och imaginära koefficienter till ett komplext tal +CONVERT = KONVERTERA ## Omvandlar ett tal från ett måttsystem till ett annat +DEC2BIN = DEC.TILL.BIN ## Omvandlar ett decimalt tal till binärt +DEC2HEX = DEC.TILL.HEX ## Omvandlar ett decimalt tal till hexadecimalt +DEC2OCT = DEC.TILL.OKT ## Omvandlar ett decimalt tal till oktalt +DELTA = DELTA ## Testar om två värden är lika +ERF = FELF ## Returnerar felfunktionen +ERFC = FELFK ## Returnerar den komplementära felfunktionen +GESTEP = SLSTEG ## Testar om ett tal är större än ett tröskelvärde +HEX2BIN = HEX.TILL.BIN ## Omvandlar ett hexadecimalt tal till binärt +HEX2DEC = HEX.TILL.DEC ## Omvandlar ett hexadecimalt tal till decimalt +HEX2OCT = HEX.TILL.OKT ## Omvandlar ett hexadecimalt tal till oktalt +IMABS = IMABS ## Returnerar absolutvärdet (modulus) för ett komplext tal +IMAGINARY = IMAGINÄR ## Returnerar den imaginära koefficienten för ett komplext tal +IMARGUMENT = IMARGUMENT ## Returnerar det komplexa talets argument, en vinkel uttryckt i radianer +IMCONJUGATE = IMKONJUGAT ## Returnerar det komplexa talets konjugat +IMCOS = IMCOS ## Returnerar cosinus för ett komplext tal +IMDIV = IMDIV ## Returnerar kvoten för två komplexa tal +IMEXP = IMEUPPHÖJT ## Returnerar exponenten för ett komplext tal +IMLN = IMLN ## Returnerar den naturliga logaritmen för ett komplext tal +IMLOG10 = IMLOG10 ## Returnerar 10-logaritmen för ett komplext tal +IMLOG2 = IMLOG2 ## Returnerar 2-logaritmen för ett komplext tal +IMPOWER = IMUPPHÖJT ## Returnerar ett komplext tal upphöjt till en exponent +IMPRODUCT = IMPRODUKT ## Returnerar produkten av komplexa tal +IMREAL = IMREAL ## Returnerar den reella koefficienten för ett komplext tal +IMSIN = IMSIN ## Returnerar sinus för ett komplext tal +IMSQRT = IMROT ## Returnerar kvadratroten av ett komplext tal +IMSUB = IMDIFF ## Returnerar differensen mellan två komplexa tal +IMSUM = IMSUM ## Returnerar summan av komplexa tal +OCT2BIN = OKT.TILL.BIN ## Omvandlar ett oktalt tal till binärt +OCT2DEC = OKT.TILL.DEC ## Omvandlar ett oktalt tal till decimalt +OCT2HEX = OKT.TILL.HEX ## Omvandlar ett oktalt tal till hexadecimalt + + +## +## Financial functions Finansiella funktioner +## +ACCRINT = UPPLRÄNTA ## Returnerar den upplupna räntan för värdepapper med periodisk ränta +ACCRINTM = UPPLOBLRÄNTA ## Returnerar den upplupna räntan för ett värdepapper som ger avkastning på förfallodagen +AMORDEGRC = AMORDEGRC ## Returnerar avskrivningen för varje redovisningsperiod med hjälp av en avskrivningskoefficient +AMORLINC = AMORLINC ## Returnerar avskrivningen för varje redovisningsperiod +COUPDAYBS = KUPDAGBB ## Returnerar antal dagar från början av kupongperioden till likviddagen +COUPDAYS = KUPDAGARS ## Returnerar antalet dagar i kupongperioden som innehåller betalningsdatumet +COUPDAYSNC = KUPDAGNK ## Returnerar antalet dagar från betalningsdatumet till nästa kupongdatum +COUPNCD = KUPNKD ## Returnerar nästa kupongdatum efter likviddagen +COUPNUM = KUPANT ## Returnerar kuponger som förfaller till betalning mellan likviddagen och förfallodagen +COUPPCD = KUPFKD ## Returnerar föregående kupongdatum före likviddagen +CUMIPMT = KUMRÄNTA ## Returnerar den ackumulerade räntan som betalats mellan två perioder +CUMPRINC = KUMPRIS ## Returnerar det ackumulerade kapitalbeloppet som betalats på ett lån mellan två perioder +DB = DB ## Returnerar avskrivningen för en tillgång under en angiven tid enligt metoden för fast degressiv avskrivning +DDB = DEGAVSKR ## Returnerar en tillgångs värdeminskning under en viss period med hjälp av dubbel degressiv avskrivning eller någon annan metod som du anger +DISC = DISK ## Returnerar diskonteringsräntan för ett värdepapper +DOLLARDE = DECTAL ## Omvandlar ett pris uttryckt som ett bråk till ett decimaltal +DOLLARFR = BRÅK ## Omvandlar ett pris i kronor uttryckt som ett decimaltal till ett bråk +DURATION = LÖPTID ## Returnerar den årliga löptiden för en säkerhet med periodiska räntebetalningar +EFFECT = EFFRÄNTA ## Returnerar den årliga effektiva räntesatsen +FV = SLUTVÄRDE ## Returnerar det framtida värdet på en investering +FVSCHEDULE = FÖRRÄNTNING ## Returnerar det framtida värdet av ett begynnelsekapital beräknat på olika räntenivåer +INTRATE = ÅRSRÄNTA ## Returnerar räntesatsen för ett betalt värdepapper +IPMT = RBETALNING ## Returnerar räntedelen av en betalning för en given period +IRR = IR ## Returnerar internräntan för en serie betalningar +ISPMT = RALÅN ## Beräknar räntan som har betalats under en specifik betalningsperiod +MDURATION = MLÖPTID ## Returnerar den modifierade Macauley-löptiden för ett värdepapper med det antagna nominella värdet 100 kr +MIRR = MODIR ## Returnerar internräntan där positiva och negativa betalningar finansieras med olika räntor +NOMINAL = NOMRÄNTA ## Returnerar den årliga nominella räntesatsen +NPER = PERIODER ## Returnerar antalet perioder för en investering +NPV = NETNUVÄRDE ## Returnerar nuvärdet av en serie periodiska betalningar vid en given diskonteringsränta +ODDFPRICE = UDDAFPRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper med en udda första period +ODDFYIELD = UDDAFAVKASTNING ## Returnerar avkastningen för en säkerhet med en udda första period +ODDLPRICE = UDDASPRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper med en udda sista period +ODDLYIELD = UDDASAVKASTNING ## Returnerar avkastningen för en säkerhet med en udda sista period +PMT = BETALNING ## Returnerar den periodiska betalningen för en annuitet +PPMT = AMORT ## Returnerar amorteringsdelen av en annuitetsbetalning för en given period +PRICE = PRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper som ger periodisk ränta +PRICEDISC = PRISDISK ## Returnerar priset per 100 kr nominellt värde för ett diskonterat värdepapper +PRICEMAT = PRISFÖRF ## Returnerar priset per 100 kr nominellt värde för ett värdepapper som ger ränta på förfallodagen +PV = PV ## Returnerar nuvärdet av en serie lika stora periodiska betalningar +RATE = RÄNTA ## Returnerar räntesatsen per period i en annuitet +RECEIVED = BELOPP ## Returnerar beloppet som utdelas på förfallodagen för ett betalat värdepapper +SLN = LINAVSKR ## Returnerar den linjära avskrivningen för en tillgång under en period +SYD = ÅRSAVSKR ## Returnerar den årliga avskrivningssumman för en tillgång under en angiven period +TBILLEQ = SSVXEKV ## Returnerar avkastningen motsvarande en obligation för en statsskuldväxel +TBILLPRICE = SSVXPRIS ## Returnerar priset per 100 kr nominellt värde för en statsskuldväxel +TBILLYIELD = SSVXRÄNTA ## Returnerar avkastningen för en statsskuldväxel +VDB = VDEGRAVSKR ## Returnerar avskrivningen för en tillgång under en angiven period (med degressiv avskrivning) +XIRR = XIRR ## Returnerar internräntan för en serie betalningar som inte nödvändigtvis är periodiska +XNPV = XNUVÄRDE ## Returnerar det nuvarande nettovärdet för en serie betalningar som inte nödvändigtvis är periodiska +YIELD = NOMAVK ## Returnerar avkastningen för ett värdepapper som ger periodisk ränta +YIELDDISC = NOMAVKDISK ## Returnerar den årliga avkastningen för diskonterade värdepapper, exempelvis en statsskuldväxel +YIELDMAT = NOMAVKFÖRF ## Returnerar den årliga avkastningen för ett värdepapper som ger ränta på förfallodagen + + +## +## Information functions Informationsfunktioner +## +CELL = CELL ## Returnerar information om formatering, plats och innehåll i en cell +ERROR.TYPE = FEL.TYP ## Returnerar ett tal som motsvarar ett felvärde +INFO = INFO ## Returnerar information om operativsystemet +ISBLANK = ÄRREF ## Returnerar SANT om värdet är tomt +ISERR = Ä ## Returnerar SANT om värdet är ett felvärde annat än #SAKNAS! +ISERROR = ÄRFEL ## Returnerar SANT om värdet är ett felvärde +ISEVEN = ÄRJÄMN ## Returnerar SANT om talet är jämnt +ISLOGICAL = ÄREJTEXT ## Returnerar SANT om värdet är ett logiskt värde +ISNA = ÄRLOGISK ## Returnerar SANT om värdet är felvärdet #SAKNAS! +ISNONTEXT = ÄRSAKNAD ## Returnerar SANT om värdet inte är text +ISNUMBER = ÄRTAL ## Returnerar SANT om värdet är ett tal +ISODD = ÄRUDDA ## Returnerar SANT om talet är udda +ISREF = ÄRTOM ## Returnerar SANT om värdet är en referens +ISTEXT = ÄRTEXT ## Returnerar SANT om värdet är text +N = N ## Returnerar ett värde omvandlat till ett tal +NA = SAKNAS ## Returnerar felvärdet #SAKNAS! +TYPE = VÄRDETYP ## Returnerar ett tal som anger värdets datatyp + + +## +## Logical functions Logiska funktioner +## +AND = OCH ## Returnerar SANT om alla argument är sanna +FALSE = FALSKT ## Returnerar det logiska värdet FALSKT +IF = OM ## Anger vilket logiskt test som ska utföras +IFERROR = OMFEL ## Returnerar ett värde som du anger om en formel utvärderar till ett fel; annars returneras resultatet av formeln +NOT = ICKE ## Inverterar logiken för argumenten +OR = ELLER ## Returnerar SANT om något argument är SANT +TRUE = SANT ## Returnerar det logiska värdet SANT + + +## +## Lookup and reference functions Sök- och referensfunktioner +## +ADDRESS = ADRESS ## Returnerar en referens som text till en enstaka cell i ett kalkylblad +AREAS = OMRÅDEN ## Returnerar antalet områden i en referens +CHOOSE = VÄLJ ## Väljer ett värde i en lista över värden +COLUMN = KOLUMN ## Returnerar kolumnnumret för en referens +COLUMNS = KOLUMNER ## Returnerar antalet kolumner i en referens +HLOOKUP = LETAKOLUMN ## Söker i den översta raden i en matris och returnerar värdet för angiven cell +HYPERLINK = HYPERLÄNK ## Skapar en genväg eller ett hopp till ett dokument i nätverket, i ett intranät eller på Internet +INDEX = INDEX ## Använder ett index för ett välja ett värde i en referens eller matris +INDIRECT = INDIREKT ## Returnerar en referens som anges av ett textvärde +LOOKUP = LETAUPP ## Letar upp värden i en vektor eller matris +MATCH = PASSA ## Letar upp värden i en referens eller matris +OFFSET = FÖRSKJUTNING ## Returnerar en referens förskjuten i förhållande till en given referens +ROW = RAD ## Returnerar radnumret för en referens +ROWS = RADER ## Returnerar antalet rader i en referens +RTD = RTD ## Hämtar realtidsdata från ett program som stöder COM-automation (Automation: Ett sätt att arbeta med ett programs objekt från ett annat program eller utvecklingsverktyg. Detta kallades tidigare för OLE Automation, och är en branschstandard och ingår i Component Object Model (COM).) +TRANSPOSE = TRANSPONERA ## Transponerar en matris +VLOOKUP = LETARAD ## Letar i den första kolumnen i en matris och flyttar över raden för att returnera värdet för en cell + + +## +## Math and trigonometry functions Matematiska och trigonometriska funktioner +## +ABS = ABS ## Returnerar absolutvärdet av ett tal +ACOS = ARCCOS ## Returnerar arcus cosinus för ett tal +ACOSH = ARCCOSH ## Returnerar inverterad hyperbolisk cosinus för ett tal +ASIN = ARCSIN ## Returnerar arcus cosinus för ett tal +ASINH = ARCSINH ## Returnerar hyperbolisk arcus sinus för ett tal +ATAN = ARCTAN ## Returnerar arcus tangens för ett tal +ATAN2 = ARCTAN2 ## Returnerar arcus tangens för en x- och en y- koordinat +ATANH = ARCTANH ## Returnerar hyperbolisk arcus tangens för ett tal +CEILING = RUNDA.UPP ## Avrundar ett tal till närmaste heltal eller närmaste signifikanta multipel +COMBIN = KOMBIN ## Returnerar antalet kombinationer för ett givet antal objekt +COS = COS ## Returnerar cosinus för ett tal +COSH = COSH ## Returnerar hyperboliskt cosinus för ett tal +DEGREES = GRADER ## Omvandlar radianer till grader +EVEN = JÄMN ## Avrundar ett tal uppåt till närmaste heltal +EXP = EXP ## Returnerar e upphöjt till ett givet tal +FACT = FAKULTET ## Returnerar fakulteten för ett tal +FACTDOUBLE = DUBBELFAKULTET ## Returnerar dubbelfakulteten för ett tal +FLOOR = RUNDA.NED ## Avrundar ett tal nedåt mot noll +GCD = SGD ## Returnerar den största gemensamma nämnaren +INT = HELTAL ## Avrundar ett tal nedåt till närmaste heltal +LCM = MGM ## Returnerar den minsta gemensamma multipeln +LN = LN ## Returnerar den naturliga logaritmen för ett tal +LOG = LOG ## Returnerar logaritmen för ett tal för en given bas +LOG10 = LOG10 ## Returnerar 10-logaritmen för ett tal +MDETERM = MDETERM ## Returnerar matrisen som är avgörandet av en matris +MINVERSE = MINVERT ## Returnerar matrisinversen av en matris +MMULT = MMULT ## Returnerar matrisprodukten av två matriser +MOD = REST ## Returnerar resten vid en division +MROUND = MAVRUNDA ## Returnerar ett tal avrundat till en given multipel +MULTINOMIAL = MULTINOMIAL ## Returnerar multinomialen för en uppsättning tal +ODD = UDDA ## Avrundar ett tal uppåt till närmaste udda heltal +PI = PI ## Returnerar värdet pi +POWER = UPPHÖJT.TILL ## Returnerar resultatet av ett tal upphöjt till en exponent +PRODUCT = PRODUKT ## Multiplicerar argumenten +QUOTIENT = KVOT ## Returnerar heltalsdelen av en division +RADIANS = RADIANER ## Omvandlar grader till radianer +RAND = SLUMP ## Returnerar ett slumptal mellan 0 och 1 +RANDBETWEEN = SLUMP.MELLAN ## Returnerar ett slumptal mellan de tal som du anger +ROMAN = ROMERSK ## Omvandlar vanliga (arabiska) siffror till romerska som text +ROUND = AVRUNDA ## Avrundar ett tal till ett angivet antal siffror +ROUNDDOWN = AVRUNDA.NEDÅT ## Avrundar ett tal nedåt mot noll +ROUNDUP = AVRUNDA.UPPÅT ## Avrundar ett tal uppåt, från noll +SERIESSUM = SERIESUMMA ## Returnerar summan av en potensserie baserat på formeln +SIGN = TECKEN ## Returnerar tecknet för ett tal +SIN = SIN ## Returnerar sinus för en given vinkel +SINH = SINH ## Returnerar hyperbolisk sinus för ett tal +SQRT = ROT ## Returnerar den positiva kvadratroten +SQRTPI = ROTPI ## Returnerar kvadratroten för (tal * pi) +SUBTOTAL = DELSUMMA ## Returnerar en delsumma i en lista eller databas +SUM = SUMMA ## Summerar argumenten +SUMIF = SUMMA.OM ## Summerar celler enligt ett angivet villkor +SUMIFS = SUMMA.OMF ## Lägger till cellerna i ett område som uppfyller flera kriterier +SUMPRODUCT = PRODUKTSUMMA ## Returnerar summan av produkterna i motsvarande matriskomponenter +SUMSQ = KVADRATSUMMA ## Returnerar summan av argumentens kvadrater +SUMX2MY2 = SUMMAX2MY2 ## Returnerar summan av differensen mellan kvadraterna för motsvarande värden i två matriser +SUMX2PY2 = SUMMAX2PY2 ## Returnerar summan av summan av kvadraterna av motsvarande värden i två matriser +SUMXMY2 = SUMMAXMY2 ## Returnerar summan av kvadraten av skillnaden mellan motsvarande värden i två matriser +TAN = TAN ## Returnerar tangens för ett tal +TANH = TANH ## Returnerar hyperbolisk tangens för ett tal +TRUNC = AVKORTA ## Avkortar ett tal till ett heltal + + +## +## Statistical functions Statistiska funktioner +## +AVEDEV = MEDELAVV ## Returnerar medelvärdet för datapunkters absoluta avvikelse från deras medelvärde +AVERAGE = MEDEL ## Returnerar medelvärdet av argumenten +AVERAGEA = AVERAGEA ## Returnerar medelvärdet av argumenten, inklusive tal, text och logiska värden +AVERAGEIF = MEDELOM ## Returnerar medelvärdet (aritmetiskt medelvärde) för alla celler i ett område som uppfyller ett givet kriterium +AVERAGEIFS = MEDELOMF ## Returnerar medelvärdet (det aritmetiska medelvärdet) för alla celler som uppfyller flera villkor. +BETADIST = BETAFÖRD ## Returnerar den kumulativa betafördelningsfunktionen +BETAINV = BETAINV ## Returnerar inversen till den kumulativa fördelningsfunktionen för en viss betafördelning +BINOMDIST = BINOMFÖRD ## Returnerar den individuella binomialfördelningen +CHIDIST = CHI2FÖRD ## Returnerar den ensidiga sannolikheten av c2-fördelningen +CHIINV = CHI2INV ## Returnerar inversen av chi2-fördelningen +CHITEST = CHI2TEST ## Returnerar oberoendetesten +CONFIDENCE = KONFIDENS ## Returnerar konfidensintervallet för en populations medelvärde +CORREL = KORREL ## Returnerar korrelationskoefficienten mellan två datamängder +COUNT = ANTAL ## Räknar hur många tal som finns bland argumenten +COUNTA = ANTALV ## Räknar hur många värden som finns bland argumenten +COUNTBLANK = ANTAL.TOMMA ## Räknar antalet tomma celler i ett område +COUNTIF = ANTAL.OM ## Räknar antalet celler i ett område som uppfyller angivna villkor. +COUNTIFS = ANTAL.OMF ## Räknar antalet celler i ett område som uppfyller flera villkor. +COVAR = KOVAR ## Returnerar kovariansen, d.v.s. medelvärdet av produkterna för parade avvikelser +CRITBINOM = KRITBINOM ## Returnerar det minsta värdet för vilket den kumulativa binomialfördelningen är mindre än eller lika med ett villkorsvärde +DEVSQ = KVADAVV ## Returnerar summan av kvadrater på avvikelser +EXPONDIST = EXPONFÖRD ## Returnerar exponentialfördelningen +FDIST = FFÖRD ## Returnerar F-sannolikhetsfördelningen +FINV = FINV ## Returnerar inversen till F-sannolikhetsfördelningen +FISHER = FISHER ## Returnerar Fisher-transformationen +FISHERINV = FISHERINV ## Returnerar inversen till Fisher-transformationen +FORECAST = PREDIKTION ## Returnerar ett värde längs en linjär trendlinje +FREQUENCY = FREKVENS ## Returnerar en frekvensfördelning som en lodrät matris +FTEST = FTEST ## Returnerar resultatet av en F-test +GAMMADIST = GAMMAFÖRD ## Returnerar gammafördelningen +GAMMAINV = GAMMAINV ## Returnerar inversen till den kumulativa gammafördelningen +GAMMALN = GAMMALN ## Returnerar den naturliga logaritmen för gammafunktionen, G(x) +GEOMEAN = GEOMEDEL ## Returnerar det geometriska medelvärdet +GROWTH = EXPTREND ## Returnerar värden längs en exponentiell trend +HARMEAN = HARMMEDEL ## Returnerar det harmoniska medelvärdet +HYPGEOMDIST = HYPGEOMFÖRD ## Returnerar den hypergeometriska fördelningen +INTERCEPT = SKÄRNINGSPUNKT ## Returnerar skärningspunkten för en linjär regressionslinje +KURT = TOPPIGHET ## Returnerar toppigheten av en mängd data +LARGE = STÖRSTA ## Returnerar det n:te största värdet i en mängd data +LINEST = REGR ## Returnerar parametrar till en linjär trendlinje +LOGEST = EXPREGR ## Returnerar parametrarna i en exponentiell trend +LOGINV = LOGINV ## Returnerar inversen till den lognormala fördelningen +LOGNORMDIST = LOGNORMFÖRD ## Returnerar den kumulativa lognormala fördelningen +MAX = MAX ## Returnerar det största värdet i en lista av argument +MAXA = MAXA ## Returnerar det största värdet i en lista av argument, inklusive tal, text och logiska värden +MEDIAN = MEDIAN ## Returnerar medianen för angivna tal +MIN = MIN ## Returnerar det minsta värdet i en lista med argument +MINA = MINA ## Returnerar det minsta värdet i en lista över argument, inklusive tal, text och logiska värden +MODE = TYPVÄRDE ## Returnerar det vanligaste värdet i en datamängd +NEGBINOMDIST = NEGBINOMFÖRD ## Returnerar den negativa binomialfördelningen +NORMDIST = NORMFÖRD ## Returnerar den kumulativa normalfördelningen +NORMINV = NORMINV ## Returnerar inversen till den kumulativa normalfördelningen +NORMSDIST = NORMSFÖRD ## Returnerar den kumulativa standardnormalfördelningen +NORMSINV = NORMSINV ## Returnerar inversen till den kumulativa standardnormalfördelningen +PEARSON = PEARSON ## Returnerar korrelationskoefficienten till Pearsons momentprodukt +PERCENTILE = PERCENTIL ## Returnerar den n:te percentilen av värden i ett område +PERCENTRANK = PROCENTRANG ## Returnerar procentrangen för ett värde i en datamängd +PERMUT = PERMUT ## Returnerar antal permutationer för ett givet antal objekt +POISSON = POISSON ## Returnerar Poisson-fördelningen +PROB = SANNOLIKHET ## Returnerar sannolikheten att värden i ett område ligger mellan två gränser +QUARTILE = KVARTIL ## Returnerar kvartilen av en mängd data +RANK = RANG ## Returnerar rangordningen för ett tal i en lista med tal +RSQ = RKV ## Returnerar kvadraten av Pearsons produktmomentkorrelationskoefficient +SKEW = SNEDHET ## Returnerar snedheten för en fördelning +SLOPE = LUTNING ## Returnerar lutningen på en linjär regressionslinje +SMALL = MINSTA ## Returnerar det n:te minsta värdet i en mängd data +STANDARDIZE = STANDARDISERA ## Returnerar ett normaliserat värde +STDEV = STDAV ## Uppskattar standardavvikelsen baserat på ett urval +STDEVA = STDEVA ## Uppskattar standardavvikelsen baserat på ett urval, inklusive tal, text och logiska värden +STDEVP = STDAVP ## Beräknar standardavvikelsen baserat på hela populationen +STDEVPA = STDEVPA ## Beräknar standardavvikelsen baserat på hela populationen, inklusive tal, text och logiska värden +STEYX = STDFELYX ## Returnerar standardfelet för ett förutspått y-värde för varje x-värde i regressionen +TDIST = TFÖRD ## Returnerar Students t-fördelning +TINV = TINV ## Returnerar inversen till Students t-fördelning +TREND = TREND ## Returnerar värden längs en linjär trend +TRIMMEAN = TRIMMEDEL ## Returnerar medelvärdet av mittpunkterna i en datamängd +TTEST = TTEST ## Returnerar sannolikheten beräknad ur Students t-test +VAR = VARIANS ## Uppskattar variansen baserat på ett urval +VARA = VARA ## Uppskattar variansen baserat på ett urval, inklusive tal, text och logiska värden +VARP = VARIANSP ## Beräknar variansen baserat på hela populationen +VARPA = VARPA ## Beräknar variansen baserat på hela populationen, inklusive tal, text och logiska värden +WEIBULL = WEIBULL ## Returnerar Weibull-fördelningen +ZTEST = ZTEST ## Returnerar det ensidiga sannolikhetsvärdet av ett z-test + + +## +## Text functions Textfunktioner +## +ASC = ASC ## Ändrar helbredds (dubbel byte) engelska bokstäver eller katakana inom en teckensträng till tecken med halvt breddsteg (enkel byte) +BAHTTEXT = BAHTTEXT ## Omvandlar ett tal till text med valutaformatet ß (baht) +CHAR = TECKENKOD ## Returnerar tecknet som anges av kod +CLEAN = STÄDA ## Tar bort alla icke utskrivbara tecken i en text +CODE = KOD ## Returnerar en numerisk kod för det första tecknet i en textsträng +CONCATENATE = SAMMANFOGA ## Sammanfogar flera textdelar till en textsträng +DOLLAR = VALUTA ## Omvandlar ett tal till text med valutaformat +EXACT = EXAKT ## Kontrollerar om två textvärden är identiska +FIND = HITTA ## Hittar en text i en annan (skiljer på gemener och versaler) +FINDB = HITTAB ## Hittar en text i en annan (skiljer på gemener och versaler) +FIXED = FASTTAL ## Formaterar ett tal som text med ett fast antal decimaler +JIS = JIS ## Ändrar halvbredds (enkel byte) engelska bokstäver eller katakana inom en teckensträng till tecken med helt breddsteg (dubbel byte) +LEFT = VÄNSTER ## Returnerar tecken längst till vänster i en sträng +LEFTB = VÄNSTERB ## Returnerar tecken längst till vänster i en sträng +LEN = LÄNGD ## Returnerar antalet tecken i en textsträng +LENB = LÄNGDB ## Returnerar antalet tecken i en textsträng +LOWER = GEMENER ## Omvandlar text till gemener +MID = EXTEXT ## Returnerar angivet antal tecken från en text med början vid den position som du anger +MIDB = EXTEXTB ## Returnerar angivet antal tecken från en text med början vid den position som du anger +PHONETIC = PHONETIC ## Returnerar de fonetiska (furigana) tecknen i en textsträng +PROPER = INITIAL ## Ändrar första bokstaven i varje ord i ett textvärde till versal +REPLACE = ERSÄTT ## Ersätter tecken i text +REPLACEB = ERSÄTTB ## Ersätter tecken i text +REPT = REP ## Upprepar en text ett bestämt antal gånger +RIGHT = HÖGER ## Returnerar tecken längst till höger i en sträng +RIGHTB = HÖGERB ## Returnerar tecken längst till höger i en sträng +SEARCH = SÖK ## Hittar ett textvärde i ett annat (skiljer inte på gemener och versaler) +SEARCHB = SÖKB ## Hittar ett textvärde i ett annat (skiljer inte på gemener och versaler) +SUBSTITUTE = BYT.UT ## Ersätter gammal text med ny text i en textsträng +T = T ## Omvandlar argumenten till text +TEXT = TEXT ## Formaterar ett tal och omvandlar det till text +TRIM = RENSA ## Tar bort blanksteg från text +UPPER = VERSALER ## Omvandlar text till versaler +VALUE = TEXTNUM ## Omvandlar ett textargument till ett tal diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/tr/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/tr/_notes/dwsync.xml new file mode 100644 index 0000000..4e994d6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/tr/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="62.244.88.21/deciday/" local="131919461875115959" remote="131880384600000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461875997986" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/tr/config b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/tr/config new file mode 100644 index 0000000..b69d425 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/tr/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = YTL + + +## +## Excel Error Codes (For future use) +## +NULL = #BOŞ! +DIV0 = #SAYI/0! +VALUE = #DEĞER! +REF = #BAŞV! +NAME = #AD? +NUM = #SAYI! +NA = #YOK diff --git a/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/tr/functions b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/tr/functions new file mode 100644 index 0000000..45d7df1 --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/PHPExcel/locale/tr/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2013 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version ##VERSION##, ##DATE## +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Eklenti ve Otomasyon fonksiyonları +## +GETPIVOTDATA = ÖZETVERİAL ## Bir Özet Tablo raporunda saklanan verileri verir. + + +## +## Cube functions Küp işlevleri +## +CUBEKPIMEMBER = KÜPKPIÜYE ## Kilit performans göstergesi (KPI-Key Performance Indicator) adını, özelliğini ve ölçüsünü verir ve hücredeki ad ve özelliği gösterir. KPI, bir kurumun performansını izlemek için kullanılan aylık brüt kâr ya da üç aylık çalışan giriş çıkışları gibi ölçülebilen bir birimdir. +CUBEMEMBER = KÜPÜYE ## Bir küp hiyerarşisinde bir üyeyi veya kaydı verir. Üye veya kaydın küpte varolduğunu doğrulamak için kullanılır. +CUBEMEMBERPROPERTY = KÜPÜYEÖZELLİĞİ ## Bir küpte bir üyenin özelliğinin değerini verir. Küp içinde üye adının varlığını doğrulamak ve bu üyenin belli özelliklerini getirmek için kullanılır. +CUBERANKEDMEMBER = KÜPÜYESIRASI ## Bir küme içindeki üyenin derecesini veya kaçıncı olduğunu verir. En iyi satış elemanı, veya en iyi on öğrenci gibi bir kümedeki bir veya daha fazla öğeyi getirmek için kullanılır. +CUBESET = KÜPKÜME ## Kümeyi oluşturan ve ardından bu kümeyi Microsoft Office Excel'e getiren sunucudaki küpe küme ifadelerini göndererek hesaplanan üye veya kayıt kümesini tanımlar. +CUBESETCOUNT = KÜPKÜMESAY ## Bir kümedeki öğelerin sayısını getirir. +CUBEVALUE = KÜPDEĞER ## Bir küpten toplam değeri getirir. + + +## +## Database functions Veritabanı işlevleri +## +DAVERAGE = VSEÇORT ## Seçili veritabanı girdilerinin ortalamasını verir. +DCOUNT = VSEÇSAY ## Veritabanında sayı içeren hücre sayısını hesaplar. +DCOUNTA = VSEÇSAYDOLU ## Veritabanındaki boş olmayan hücreleri sayar. +DGET = VAL ## Veritabanından, belirtilen ölçütlerle eşleşen tek bir rapor çıkarır. +DMAX = VSEÇMAK ## Seçili veritabanı girişlerinin en yüksek değerini verir. +DMIN = VSEÇMİN ## Seçili veritabanı girişlerinin en düşük değerini verir. +DPRODUCT = VSEÇÇARP ## Kayıtların belli bir alanında bulunan, bir veritabanındaki ölçütlerle eşleşen değerleri çarpar. +DSTDEV = VSEÇSTDSAPMA ## Seçili veritabanı girişlerinden oluşan bir örneğe dayanarak, standart sapmayı tahmin eder. +DSTDEVP = VSEÇSTDSAPMAS ## Standart sapmayı, seçili veritabanı girişlerinin tüm popülasyonunu esas alarak hesaplar. +DSUM = VSEÇTOPLA ## Kayıtların alan sütununda bulunan, ölçütle eşleşen sayıları toplar. +DVAR = VSEÇVAR ## Seçili veritabanı girişlerinden oluşan bir örneği esas alarak farkı tahmin eder. +DVARP = VSEÇVARS ## Seçili veritabanı girişlerinin tüm popülasyonunu esas alarak farkı hesaplar. + + +## +## Date and time functions Tarih ve saat işlevleri +## +DATE = TARİH ## Belirli bir tarihin seri numarasını verir. +DATEVALUE = TARİHSAYISI ## Metin biçimindeki bir tarihi seri numarasına dönüştürür. +DAY = GÜN ## Seri numarasını, ayın bir gününe dönüştürür. +DAYS360 = GÜN360 ## İki tarih arasındaki gün sayısını, 360 günlük yılı esas alarak hesaplar. +EDATE = SERİTARİH ## Başlangıç tarihinden itibaren, belirtilen ay sayısından önce veya sonraki tarihin seri numarasını verir. +EOMONTH = SERİAY ## Belirtilen sayıda ay önce veya sonraki ayın son gününün seri numarasını verir. +HOUR = SAAT ## Bir seri numarasını saate dönüştürür. +MINUTE = DAKİKA ## Bir seri numarasını dakikaya dönüştürür. +MONTH = AY ## Bir seri numarasını aya dönüştürür. +NETWORKDAYS = TAMİŞGÜNÜ ## İki tarih arasındaki tam çalışma günlerinin sayısını verir. +NOW = ŞİMDİ ## Geçerli tarihin ve saatin seri numarasını verir. +SECOND = SANİYE ## Bir seri numarasını saniyeye dönüştürür. +TIME = ZAMAN ## Belirli bir zamanın seri numarasını verir. +TIMEVALUE = ZAMANSAYISI ## Metin biçimindeki zamanı seri numarasına dönüştürür. +TODAY = BUGÜN ## Bugünün tarihini seri numarasına dönüştürür. +WEEKDAY = HAFTANINGÜNÜ ## Bir seri numarasını, haftanın gününe dönüştürür. +WEEKNUM = HAFTASAY ## Dizisel değerini, haftanın yıl içinde bulunduğu konumu sayısal olarak gösteren sayıya dönüştürür. +WORKDAY = İŞGÜNÜ ## Belirtilen sayıda çalışma günü öncesinin ya da sonrasının tarihinin seri numarasını verir. +YEAR = YIL ## Bir seri numarasını yıla dönüştürür. +YEARFRAC = YILORAN ## Başlangıç_tarihi ve bitiş_tarihi arasındaki tam günleri gösteren yıl kesrini verir. + + +## +## Engineering functions Mühendislik işlevleri +## +BESSELI = BESSELI ## Değiştirilmiş Bessel fonksiyonu In(x)'i verir. +BESSELJ = BESSELJ ## Bessel fonksiyonu Jn(x)'i verir. +BESSELK = BESSELK ## Değiştirilmiş Bessel fonksiyonu Kn(x)'i verir. +BESSELY = BESSELY ## Bessel fonksiyonu Yn(x)'i verir. +BIN2DEC = BIN2DEC ## İkili bir sayıyı, ondalık sayıya dönüştürür. +BIN2HEX = BIN2HEX ## İkili bir sayıyı, onaltılıya dönüştürür. +BIN2OCT = BIN2OCT ## İkili bir sayıyı, sekizliye dönüştürür. +COMPLEX = KARMAŞIK ## Gerçek ve sanal katsayıları, karmaşık sayıya dönüştürür. +CONVERT = ÇEVİR ## Bir sayıyı, bir ölçüm sisteminden bir başka ölçüm sistemine dönüştürür. +DEC2BIN = DEC2BIN ## Ondalık bir sayıyı, ikiliye dönüştürür. +DEC2HEX = DEC2HEX ## Ondalık bir sayıyı, onaltılıya dönüştürür. +DEC2OCT = DEC2OCT ## Ondalık bir sayıyı sekizliğe dönüştürür. +DELTA = DELTA ## İki değerin eşit olup olmadığını sınar. +ERF = HATAİŞLEV ## Hata işlevini verir. +ERFC = TÜMHATAİŞLEV ## Tümleyici hata işlevini verir. +GESTEP = BESINIR ## Bir sayının eşik değerinden büyük olup olmadığını sınar. +HEX2BIN = HEX2BIN ## Onaltılı bir sayıyı ikiliye dönüştürür. +HEX2DEC = HEX2DEC ## Onaltılı bir sayıyı ondalığa dönüştürür. +HEX2OCT = HEX2OCT ## Onaltılı bir sayıyı sekizliğe dönüştürür. +IMABS = SANMUTLAK ## Karmaşık bir sayının mutlak değerini (modül) verir. +IMAGINARY = SANAL ## Karmaşık bir sayının sanal katsayısını verir. +IMARGUMENT = SANBAĞ_DEĞİŞKEN ## Radyanlarla belirtilen bir açı olan teta bağımsız değişkenini verir. +IMCONJUGATE = SANEŞLENEK ## Karmaşık bir sayının karmaşık eşleniğini verir. +IMCOS = SANCOS ## Karmaşık bir sayının kosinüsünü verir. +IMDIV = SANBÖL ## İki karmaşık sayının bölümünü verir. +IMEXP = SANÜS ## Karmaşık bir sayının üssünü verir. +IMLN = SANLN ## Karmaşık bir sayının doğal logaritmasını verir. +IMLOG10 = SANLOG10 ## Karmaşık bir sayının, 10 tabanında logaritmasını verir. +IMLOG2 = SANLOG2 ## Karmaşık bir sayının 2 tabanında logaritmasını verir. +IMPOWER = SANÜSSÜ ## Karmaşık bir sayıyı, bir tamsayı üssüne yükseltilmiş olarak verir. +IMPRODUCT = SANÇARP ## Karmaşık sayıların çarpımını verir. +IMREAL = SANGERÇEK ## Karmaşık bir sayının, gerçek katsayısını verir. +IMSIN = SANSIN ## Karmaşık bir sayının sinüsünü verir. +IMSQRT = SANKAREKÖK ## Karmaşık bir sayının karekökünü verir. +IMSUB = SANÇIKAR ## İki karmaşık sayının farkını verir. +IMSUM = SANTOPLA ## Karmaşık sayıların toplamını verir. +OCT2BIN = OCT2BIN ## Sekizli bir sayıyı ikiliye dönüştürür. +OCT2DEC = OCT2DEC ## Sekizli bir sayıyı ondalığa dönüştürür. +OCT2HEX = OCT2HEX ## Sekizli bir sayıyı onaltılıya dönüştürür. + + +## +## Financial functions Finansal fonksiyonlar +## +ACCRINT = GERÇEKFAİZ ## Dönemsel faiz ödeyen hisse senedine ilişkin tahakkuk eden faizi getirir. +ACCRINTM = GERÇEKFAİZV ## Vadesinde ödeme yapan bir tahvilin tahakkuk etmiş faizini verir. +AMORDEGRC = AMORDEGRC ## Yıpranma katsayısı kullanarak her hesap döneminin değer kaybını verir. +AMORLINC = AMORLINC ## Her hesap dönemi içindeki yıpranmayı verir. +COUPDAYBS = KUPONGÜNBD ## Kupon süresinin başlangıcından alış tarihine kadar olan süredeki gün sayısını verir. +COUPDAYS = KUPONGÜN ## Kupon süresindeki, gün sayısını, alış tarihini de içermek üzere, verir. +COUPDAYSNC = KUPONGÜNDSK ## Alış tarihinden bir sonraki kupon tarihine kadar olan gün sayısını verir. +COUPNCD = KUPONGÜNSKT ## Alış tarihinden bir sonraki kupon tarihini verir. +COUPNUM = KUPONSAYI ## Alış tarihiyle vade tarihi arasında ödenecek kuponların sayısını verir. +COUPPCD = KUPONGÜNÖKT ## Alış tarihinden bir önceki kupon tarihini verir. +CUMIPMT = AİÇVERİMORANI ## İki dönem arasında ödenen kümülatif faizi verir. +CUMPRINC = ANA_PARA_ÖDEMESİ ## İki dönem arasında bir borç üzerine ödenen birikimli temeli verir. +DB = AZALANBAKİYE ## Bir malın belirtilen bir süre içindeki yıpranmasını, sabit azalan bakiye yöntemini kullanarak verir. +DDB = ÇİFTAZALANBAKİYE ## Bir malın belirtilen bir süre içindeki yıpranmasını, çift azalan bakiye yöntemi ya da sizin belirttiğiniz başka bir yöntemi kullanarak verir. +DISC = İNDİRİM ## Bir tahvilin indirim oranını verir. +DOLLARDE = LİRAON ## Kesir olarak tanımlanmış lira fiyatını, ondalık sayı olarak tanımlanmış lira fiyatına dönüştürür. +DOLLARFR = LİRAKES ## Ondalık sayı olarak tanımlanmış lira fiyatını, kesir olarak tanımlanmış lira fiyatına dönüştürür. +DURATION = SÜRE ## Belli aralıklarla faiz ödemesi yapan bir tahvilin yıllık süresini verir. +EFFECT = ETKİN ## Efektif yıllık faiz oranını verir. +FV = ANBD ## Bir yatırımın gelecekteki değerini verir. +FVSCHEDULE = GDPROGRAM ## Bir seri birleşik faiz oranı uyguladıktan sonra, bir başlangıçtaki anaparanın gelecekteki değerini verir. +INTRATE = FAİZORANI ## Tam olarak yatırım yapılmış bir tahvilin faiz oranını verir. +IPMT = FAİZTUTARI ## Bir yatırımın verilen bir süre için faiz ödemesini verir. +IRR = İÇ_VERİM_ORANI ## Bir para akışı serisi için, iç verim oranını verir. +ISPMT = ISPMT ## Yatırımın belirli bir dönemi boyunca ödenen faizi hesaplar. +MDURATION = MSÜRE ## Varsayılan par değeri 10.000.000 lira olan bir tahvil için Macauley değiştirilmiş süreyi verir. +MIRR = D_İÇ_VERİM_ORANI ## Pozitif ve negatif para akışlarının farklı oranlarda finanse edildiği durumlarda, iç verim oranını verir. +NOMINAL = NOMİNAL ## Yıllık nominal faiz oranını verir. +NPER = DÖNEM_SAYISI ## Bir yatırımın dönem sayısını verir. +NPV = NBD ## Bir yatırımın bugünkü net değerini, bir dönemsel para akışları serisine ve bir indirim oranına bağlı olarak verir. +ODDFPRICE = TEKYDEĞER ## Tek bir ilk dönemi olan bir tahvilin değerini, her 100.000.000 lirada bir verir. +ODDFYIELD = TEKYÖDEME ## Tek bir ilk dönemi olan bir tahvilin ödemesini verir. +ODDLPRICE = TEKSDEĞER ## Tek bir son dönemi olan bir tahvilin fiyatını her 10.000.000 lirada bir verir. +ODDLYIELD = TEKSÖDEME ## Tek bir son dönemi olan bir tahvilin ödemesini verir. +PMT = DEVRESEL_ÖDEME ## Bir yıllık dönemsel ödemeyi verir. +PPMT = ANA_PARA_ÖDEMESİ ## Verilen bir süre için, bir yatırımın anaparasına dayanan ödemeyi verir. +PRICE = DEĞER ## Dönemsel faiz ödeyen bir tahvilin fiyatını 10.000.00 liralık değer başına verir. +PRICEDISC = DEĞERİND ## İndirimli bir tahvilin fiyatını 10.000.000 liralık nominal değer başına verir. +PRICEMAT = DEĞERVADE ## Faizini vade sonunda ödeyen bir tahvilin fiyatını 10.000.000 nominal değer başına verir. +PV = BD ## Bir yatırımın bugünkü değerini verir. +RATE = FAİZ_ORANI ## Bir yıllık dönem başına düşen faiz oranını verir. +RECEIVED = GETİRİ ## Tam olarak yatırılmış bir tahvilin vadesinin bitiminde alınan miktarı verir. +SLN = DA ## Bir malın bir dönem içindeki doğrusal yıpranmasını verir. +SYD = YAT ## Bir malın belirli bir dönem için olan amortismanını verir. +TBILLEQ = HTAHEŞ ## Bir Hazine bonosunun bono eşdeğeri ödemesini verir. +TBILLPRICE = HTAHDEĞER ## Bir Hazine bonosunun değerini, 10.000.000 liralık nominal değer başına verir. +TBILLYIELD = HTAHÖDEME ## Bir Hazine bonosunun ödemesini verir. +VDB = DAB ## Bir malın amortismanını, belirlenmiş ya da kısmi bir dönem için, bir azalan bakiye yöntemi kullanarak verir. +XIRR = AİÇVERİMORANI ## Dönemsel olması gerekmeyen bir para akışları programı için, iç verim oranını verir. +XNPV = ANBD ## Dönemsel olması gerekmeyen bir para akışları programı için, bugünkü net değeri verir. +YIELD = ÖDEME ## Belirli aralıklarla faiz ödeyen bir tahvilin ödemesini verir. +YIELDDISC = ÖDEMEİND ## İndirimli bir tahvilin yıllık ödemesini verir; örneğin, bir Hazine bonosunun. +YIELDMAT = ÖDEMEVADE ## Vadesinin bitiminde faiz ödeyen bir tahvilin yıllık ödemesini verir. + + +## +## Information functions Bilgi fonksiyonları +## +CELL = HÜCRE ## Bir hücrenin biçimlendirmesi, konumu ya da içeriği hakkında bilgi verir. +ERROR.TYPE = HATA.TİPİ ## Bir hata türüne ilişkin sayıları verir. +INFO = BİLGİ ## Geçerli işletim ortamı hakkında bilgi verir. +ISBLANK = EBOŞSA ## Değer boşsa, DOĞRU verir. +ISERR = EHATA ## Değer, #YOK dışındaki bir hata değeriyse, DOĞRU verir. +ISERROR = EHATALIYSA ## Değer, herhangi bir hata değeriyse, DOĞRU verir. +ISEVEN = ÇİFTTİR ## Sayı çiftse, DOĞRU verir. +ISLOGICAL = EMANTIKSALSA ## Değer, mantıksal bir değerse, DOĞRU verir. +ISNA = EYOKSA ## Değer, #YOK hata değeriyse, DOĞRU verir. +ISNONTEXT = EMETİNDEĞİLSE ## Değer, metin değilse, DOĞRU verir. +ISNUMBER = ESAYIYSA ## Değer, bir sayıysa, DOĞRU verir. +ISODD = TEKTİR ## Sayı tekse, DOĞRU verir. +ISREF = EREFSE ## Değer bir başvuruysa, DOĞRU verir. +ISTEXT = EMETİNSE ## Değer bir metinse DOĞRU verir. +N = N ## Sayıya dönüştürülmüş bir değer verir. +NA = YOKSAY ## #YOK hata değerini verir. +TYPE = TİP ## Bir değerin veri türünü belirten bir sayı verir. + + +## +## Logical functions Mantıksal fonksiyonlar +## +AND = VE ## Bütün bağımsız değişkenleri DOĞRU ise, DOĞRU verir. +FALSE = YANLIŞ ## YANLIŞ mantıksal değerini verir. +IF = EĞER ## Gerçekleştirilecek bir mantıksal sınama belirtir. +IFERROR = EĞERHATA ## Formül hatalıysa belirttiğiniz değeri verir; bunun dışındaki durumlarda formülün sonucunu verir. +NOT = DEĞİL ## Bağımsız değişkeninin mantığını tersine çevirir. +OR = YADA ## Bağımsız değişkenlerden herhangi birisi DOĞRU ise, DOĞRU verir. +TRUE = DOĞRU ## DOĞRU mantıksal değerini verir. + + +## +## Lookup and reference functions Arama ve Başvuru fonksiyonları +## +ADDRESS = ADRES ## Bir başvuruyu, çalışma sayfasındaki tek bir hücreye metin olarak verir. +AREAS = ALANSAY ## Renvoie le nombre de zones dans une référence. +CHOOSE = ELEMAN ## Değerler listesinden bir değer seçer. +COLUMN = SÜTUN ## Bir başvurunun sütun sayısını verir. +COLUMNS = SÜTUNSAY ## Bir başvurudaki sütunların sayısını verir. +HLOOKUP = YATAYARA ## Bir dizinin en üst satırına bakar ve belirtilen hücrenin değerini verir. +HYPERLINK = KÖPRÜ ## Bir ağ sunucusunda, bir intranette ya da Internet'te depolanan bir belgeyi açan bir kısayol ya da atlama oluşturur. +INDEX = İNDİS ## Başvurudan veya diziden bir değer seçmek için, bir dizin kullanır. +INDIRECT = DOLAYLI ## Metin değeriyle belirtilen bir başvuru verir. +LOOKUP = ARA ## Bir vektördeki veya dizideki değerleri arar. +MATCH = KAÇINCI ## Bir başvurudaki veya dizideki değerleri arar. +OFFSET = KAYDIR ## Verilen bir başvurudan, bir başvuru kaydırmayı verir. +ROW = SATIR ## Bir başvurunun satır sayısını verir. +ROWS = SATIRSAY ## Bir başvurudaki satırların sayısını verir. +RTD = RTD ## COM otomasyonunu destekleyen programdan gerçek zaman verileri alır. +TRANSPOSE = DEVRİK_DÖNÜŞÜM ## Bir dizinin devrik dönüşümünü verir. +VLOOKUP = DÜŞEYARA ## Bir dizinin ilk sütununa bakar ve bir hücrenin değerini vermek için satır boyunca hareket eder. + + +## +## Math and trigonometry functions Matematik ve trigonometri fonksiyonları +## +ABS = MUTLAK ## Bir sayının mutlak değerini verir. +ACOS = ACOS ## Bir sayının ark kosinüsünü verir. +ACOSH = ACOSH ## Bir sayının ters hiperbolik kosinüsünü verir. +ASIN = ASİN ## Bir sayının ark sinüsünü verir. +ASINH = ASİNH ## Bir sayının ters hiperbolik sinüsünü verir. +ATAN = ATAN ## Bir sayının ark tanjantını verir. +ATAN2 = ATAN2 ## Ark tanjantı, x- ve y- koordinatlarından verir. +ATANH = ATANH ## Bir sayının ters hiperbolik tanjantını verir. +CEILING = TAVANAYUVARLA ## Bir sayıyı, en yakın tamsayıya ya da en yakın katına yuvarlar. +COMBIN = KOMBİNASYON ## Verilen sayıda öğenin kombinasyon sayısını verir. +COS = COS ## Bir sayının kosinüsünü verir. +COSH = COSH ## Bir sayının hiperbolik kosinüsünü verir. +DEGREES = DERECE ## Radyanları dereceye dönüştürür. +EVEN = ÇİFT ## Bir sayıyı, en yakın daha büyük çift tamsayıya yuvarlar. +EXP = ÜS ## e'yi, verilen bir sayının üssüne yükseltilmiş olarak verir. +FACT = ÇARPINIM ## Bir sayının faktörünü verir. +FACTDOUBLE = ÇİFTFAKTÖR ## Bir sayının çift çarpınımını verir. +FLOOR = TABANAYUVARLA ## Bir sayıyı, daha küçük sayıya, sıfıra yakınsayarak yuvarlar. +GCD = OBEB ## En büyük ortak böleni verir. +INT = TAMSAYI ## Bir sayıyı aşağıya doğru en yakın tamsayıya yuvarlar. +LCM = OKEK ## En küçük ortak katı verir. +LN = LN ## Bir sayının doğal logaritmasını verir. +LOG = LOG ## Bir sayının, belirtilen bir tabandaki logaritmasını verir. +LOG10 = LOG10 ## Bir sayının 10 tabanında logaritmasını verir. +MDETERM = DETERMİNANT ## Bir dizinin dizey determinantını verir. +MINVERSE = DİZEY_TERS ## Bir dizinin dizey tersini verir. +MMULT = DÇARP ## İki dizinin dizey çarpımını verir. +MOD = MODÜLO ## Bölmeden kalanı verir. +MROUND = KYUVARLA ## İstenen kata yuvarlanmış bir sayı verir. +MULTINOMIAL = ÇOKTERİMLİ ## Bir sayılar kümesinin çok terimlisini verir. +ODD = TEK ## Bir sayıyı en yakın daha büyük tek sayıya yuvarlar. +PI = Pİ ## Pi değerini verir. +POWER = KUVVET ## Bir üsse yükseltilmiş sayının sonucunu verir. +PRODUCT = ÇARPIM ## Bağımsız değişkenlerini çarpar. +QUOTIENT = BÖLÜM ## Bir bölme işleminin tamsayı kısmını verir. +RADIANS = RADYAN ## Dereceleri radyanlara dönüştürür. +RAND = S_SAYI_ÜRET ## 0 ile 1 arasında rastgele bir sayı verir. +RANDBETWEEN = RASTGELEARALIK ## Belirttiğiniz sayılar arasında rastgele bir sayı verir. +ROMAN = ROMEN ## Bir normal rakamı, metin olarak, romen rakamına çevirir. +ROUND = YUVARLA ## Bir sayıyı, belirtilen basamak sayısına yuvarlar. +ROUNDDOWN = AŞAĞIYUVARLA ## Bir sayıyı, daha küçük sayıya, sıfıra yakınsayarak yuvarlar. +ROUNDUP = YUKARIYUVARLA ## Bir sayıyı daha büyük sayıya, sıfırdan ıraksayarak yuvarlar. +SERIESSUM = SERİTOPLA ## Bir üs serisinin toplamını, formüle bağlı olarak verir. +SIGN = İŞARET ## Bir sayının işaretini verir. +SIN = SİN ## Verilen bir açının sinüsünü verir. +SINH = SİNH ## Bir sayının hiperbolik sinüsünü verir. +SQRT = KAREKÖK ## Pozitif bir karekök verir. +SQRTPI = KAREKÖKPİ ## (* Pi sayısının) kare kökünü verir. +SUBTOTAL = ALTTOPLAM ## Bir listedeki ya da veritabanındaki bir alt toplamı verir. +SUM = TOPLA ## Bağımsız değişkenlerini toplar. +SUMIF = ETOPLA ## Verilen ölçütle belirlenen hücreleri toplar. +SUMIFS = SUMIFS ## Bir aralıktaki, birden fazla ölçüte uyan hücreleri ekler. +SUMPRODUCT = TOPLA.ÇARPIM ## İlişkili dizi bileşenlerinin çarpımlarının toplamını verir. +SUMSQ = TOPKARE ## Bağımsız değişkenlerin karelerinin toplamını verir. +SUMX2MY2 = TOPX2EY2 ## İki dizideki ilişkili değerlerin farkının toplamını verir. +SUMX2PY2 = TOPX2AY2 ## İki dizideki ilişkili değerlerin karelerinin toplamının toplamını verir. +SUMXMY2 = TOPXEY2 ## İki dizideki ilişkili değerlerin farklarının karelerinin toplamını verir. +TAN = TAN ## Bir sayının tanjantını verir. +TANH = TANH ## Bir sayının hiperbolik tanjantını verir. +TRUNC = NSAT ## Bir sayının, tamsayı durumuna gelecek şekilde, fazlalıklarını atar. + + +## +## Statistical functions İstatistiksel fonksiyonlar +## +AVEDEV = ORTSAP ## Veri noktalarının ortalamalarından mutlak sapmalarının ortalamasını verir. +AVERAGE = ORTALAMA ## Bağımsız değişkenlerinin ortalamasını verir. +AVERAGEA = ORTALAMAA ## Bağımsız değişkenlerinin, sayılar, metin ve mantıksal değerleri içermek üzere ortalamasını verir. +AVERAGEIF = EĞERORTALAMA ## Verili ölçütü karşılayan bir aralıktaki bütün hücrelerin ortalamasını (aritmetik ortalama) hesaplar. +AVERAGEIFS = EĞERLERORTALAMA ## Birden çok ölçüte uyan tüm hücrelerin ortalamasını (aritmetik ortalama) hesaplar. +BETADIST = BETADAĞ ## Beta birikimli dağılım fonksiyonunu verir. +BETAINV = BETATERS ## Belirli bir beta dağılımı için birikimli dağılım fonksiyonunun tersini verir. +BINOMDIST = BİNOMDAĞ ## Tek terimli binom dağılımı olasılığını verir. +CHIDIST = KİKAREDAĞ ## Kikare dağılımın tek kuyruklu olasılığını verir. +CHIINV = KİKARETERS ## Kikare dağılımın kuyruklu olasılığının tersini verir. +CHITEST = KİKARETEST ## Bağımsızlık sınamalarını verir. +CONFIDENCE = GÜVENİRLİK ## Bir popülasyon ortalaması için güvenirlik aralığını verir. +CORREL = KORELASYON ## İki veri kümesi arasındaki bağlantı katsayısını verir. +COUNT = BAĞ_DEĞ_SAY ## Bağımsız değişkenler listesinde kaç tane sayı bulunduğunu sayar. +COUNTA = BAĞ_DEĞ_DOLU_SAY ## Bağımsız değişkenler listesinde kaç tane değer bulunduğunu sayar. +COUNTBLANK = BOŞLUKSAY ## Aralıktaki boş hücre sayısını hesaplar. +COUNTIF = EĞERSAY ## Verilen ölçütlere uyan bir aralık içindeki hücreleri sayar. +COUNTIFS = ÇOKEĞERSAY ## Birden çok ölçüte uyan bir aralık içindeki hücreleri sayar. +COVAR = KOVARYANS ## Eşleştirilmiş sapmaların ortalaması olan kovaryansı verir. +CRITBINOM = KRİTİKBİNOM ## Birikimli binom dağılımının bir ölçüt değerinden küçük veya ölçüt değerine eşit olduğu en küçük değeri verir. +DEVSQ = SAPKARE ## Sapmaların karelerinin toplamını verir. +EXPONDIST = ÜSTELDAĞ ## Üstel dağılımı verir. +FDIST = FDAĞ ## F olasılık dağılımını verir. +FINV = FTERS ## F olasılık dağılımının tersini verir. +FISHER = FISHER ## Fisher dönüşümünü verir. +FISHERINV = FISHERTERS ## Fisher dönüşümünün tersini verir. +FORECAST = TAHMİN ## Bir doğrusal eğilim boyunca bir değer verir. +FREQUENCY = SIKLIK ## Bir sıklık dağılımını, dikey bir dizi olarak verir. +FTEST = FTEST ## Bir F-test'in sonucunu verir. +GAMMADIST = GAMADAĞ ## Gama dağılımını verir. +GAMMAINV = GAMATERS ## Gama kümülatif dağılımının tersini verir. +GAMMALN = GAMALN ## Gama fonksiyonunun (?(x)) doğal logaritmasını verir. +GEOMEAN = GEOORT ## Geometrik ortayı verir. +GROWTH = BÜYÜME ## Üstel bir eğilim boyunca değerler verir. +HARMEAN = HARORT ## Harmonik ortayı verir. +HYPGEOMDIST = HİPERGEOMDAĞ ## Hipergeometrik dağılımı verir. +INTERCEPT = KESMENOKTASI ## Doğrusal çakıştırma çizgisinin kesişme noktasını verir. +KURT = BASIKLIK ## Bir veri kümesinin basıklığını verir. +LARGE = BÜYÜK ## Bir veri kümesinde k. en büyük değeri verir. +LINEST = DOT ## Doğrusal bir eğilimin parametrelerini verir. +LOGEST = LOT ## Üstel bir eğilimin parametrelerini verir. +LOGINV = LOGTERS ## Bir lognormal dağılımının tersini verir. +LOGNORMDIST = LOGNORMDAĞ ## Birikimli lognormal dağılımını verir. +MAX = MAK ## Bir bağımsız değişkenler listesindeki en büyük değeri verir. +MAXA = MAKA ## Bir bağımsız değişkenler listesindeki, sayılar, metin ve mantıksal değerleri içermek üzere, en büyük değeri verir. +MEDIAN = ORTANCA ## Belirtilen sayıların orta değerini verir. +MIN = MİN ## Bir bağımsız değişkenler listesindeki en küçük değeri verir. +MINA = MİNA ## Bir bağımsız değişkenler listesindeki, sayılar, metin ve mantıksal değerleri de içermek üzere, en küçük değeri verir. +MODE = ENÇOK_OLAN ## Bir veri kümesindeki en sık rastlanan değeri verir. +NEGBINOMDIST = NEGBİNOMDAĞ ## Negatif binom dağılımını verir. +NORMDIST = NORMDAĞ ## Normal birikimli dağılımı verir. +NORMINV = NORMTERS ## Normal kümülatif dağılımın tersini verir. +NORMSDIST = NORMSDAĞ ## Standart normal birikimli dağılımı verir. +NORMSINV = NORMSTERS ## Standart normal birikimli dağılımın tersini verir. +PEARSON = PEARSON ## Pearson çarpım moment korelasyon katsayısını verir. +PERCENTILE = YÜZDEBİRLİK ## Bir aralık içerisinde bulunan değerlerin k. frekans toplamını verir. +PERCENTRANK = YÜZDERANK ## Bir veri kümesindeki bir değerin yüzde mertebesini verir. +PERMUT = PERMÜTASYON ## Verilen sayıda nesne için permütasyon sayısını verir. +POISSON = POISSON ## Poisson dağılımını verir. +PROB = OLASILIK ## Bir aralıktaki değerlerin iki sınır arasında olması olasılığını verir. +QUARTILE = DÖRTTEBİRLİK ## Bir veri kümesinin dörtte birliğini verir. +RANK = RANK ## Bir sayılar listesinde bir sayının mertebesini verir. +RSQ = RKARE ## Pearson çarpım moment korelasyon katsayısının karesini verir. +SKEW = ÇARPIKLIK ## Bir dağılımın çarpıklığını verir. +SLOPE = EĞİM ## Doğrusal çakışma çizgisinin eğimini verir. +SMALL = KÜÇÜK ## Bir veri kümesinde k. en küçük değeri verir. +STANDARDIZE = STANDARTLAŞTIRMA ## Normalleştirilmiş bir değer verir. +STDEV = STDSAPMA ## Bir örneğe dayanarak standart sapmayı tahmin eder. +STDEVA = STDSAPMAA ## Standart sapmayı, sayılar, metin ve mantıksal değerleri içermek üzere, bir örneğe bağlı olarak tahmin eder. +STDEVP = STDSAPMAS ## Standart sapmayı, tüm popülasyona bağlı olarak hesaplar. +STDEVPA = STDSAPMASA ## Standart sapmayı, sayılar, metin ve mantıksal değerleri içermek üzere, tüm popülasyona bağlı olarak hesaplar. +STEYX = STHYX ## Regresyondaki her x için tahmini y değerinin standart hatasını verir. +TDIST = TDAĞ ## T-dağılımını verir. +TINV = TTERS ## T-dağılımının tersini verir. +TREND = EĞİLİM ## Doğrusal bir eğilim boyunca değerler verir. +TRIMMEAN = KIRPORTALAMA ## Bir veri kümesinin içinin ortalamasını verir. +TTEST = TTEST ## T-test'le ilişkilendirilmiş olasılığı verir. +VAR = VAR ## Varyansı, bir örneğe bağlı olarak tahmin eder. +VARA = VARA ## Varyansı, sayılar, metin ve mantıksal değerleri içermek üzere, bir örneğe bağlı olarak tahmin eder. +VARP = VARS ## Varyansı, tüm popülasyona dayanarak hesaplar. +VARPA = VARSA ## Varyansı, sayılar, metin ve mantıksal değerleri içermek üzere, tüm popülasyona bağlı olarak hesaplar. +WEIBULL = WEIBULL ## Weibull dağılımını hesaplar. +ZTEST = ZTEST ## Z-testinin tek kuyruklu olasılık değerini hesaplar. + + +## +## Text functions Metin fonksiyonları +## +ASC = ASC ## Bir karakter dizesindeki çift enli (iki bayt) İngilizce harfleri veya katakanayı yarım enli (tek bayt) karakterlerle değiştirir. +BAHTTEXT = BAHTTEXT ## Sayıyı, ß (baht) para birimi biçimini kullanarak metne dönüştürür. +CHAR = DAMGA ## Kod sayısıyla belirtilen karakteri verir. +CLEAN = TEMİZ ## Metindeki bütün yazdırılamaz karakterleri kaldırır. +CODE = KOD ## Bir metin dizesindeki ilk karakter için sayısal bir kod verir. +CONCATENATE = BİRLEŞTİR ## Pek çok metin öğesini bir metin öğesi olarak birleştirir. +DOLLAR = LİRA ## Bir sayıyı YTL (yeni Türk lirası) para birimi biçimini kullanarak metne dönüştürür. +EXACT = ÖZDEŞ ## İki metin değerinin özdeş olup olmadığını anlamak için, değerleri denetler. +FIND = BUL ## Bir metin değerini, bir başkasının içinde bulur (büyük küçük harf duyarlıdır). +FINDB = BULB ## Bir metin değerini, bir başkasının içinde bulur (büyük küçük harf duyarlıdır). +FIXED = SAYIDÜZENLE ## Bir sayıyı, sabit sayıda ondalıkla, metin olarak biçimlendirir. +JIS = JIS ## Bir karakter dizesindeki tek enli (tek bayt) İngilizce harfleri veya katakanayı çift enli (iki bayt) karakterlerle değiştirir. +LEFT = SOL ## Bir metin değerinden en soldaki karakterleri verir. +LEFTB = SOLB ## Bir metin değerinden en soldaki karakterleri verir. +LEN = UZUNLUK ## Bir metin dizesindeki karakter sayısını verir. +LENB = UZUNLUKB ## Bir metin dizesindeki karakter sayısını verir. +LOWER = KÜÇÜKHARF ## Metni küçük harfe çevirir. +MID = ORTA ## Bir metin dizesinden belirli sayıda karakteri, belirttiğiniz konumdan başlamak üzere verir. +MIDB = ORTAB ## Bir metin dizesinden belirli sayıda karakteri, belirttiğiniz konumdan başlamak üzere verir. +PHONETIC = SES ## Metin dizesinden ses (furigana) karakterlerini ayıklar. +PROPER = YAZIM.DÜZENİ ## Bir metin değerinin her bir sözcüğünün ilk harfini büyük harfe çevirir. +REPLACE = DEĞİŞTİR ## Metnin içindeki karakterleri değiştirir. +REPLACEB = DEĞİŞTİRB ## Metnin içindeki karakterleri değiştirir. +REPT = YİNELE ## Metni belirtilen sayıda yineler. +RIGHT = SAĞ ## Bir metin değerinden en sağdaki karakterleri verir. +RIGHTB = SAĞB ## Bir metin değerinden en sağdaki karakterleri verir. +SEARCH = BUL ## Bir metin değerini, bir başkasının içinde bulur (büyük küçük harf duyarlı değildir). +SEARCHB = BULB ## Bir metin değerini, bir başkasının içinde bulur (büyük küçük harf duyarlı değildir). +SUBSTITUTE = YERİNEKOY ## Bir metin dizesinde, eski metnin yerine yeni metin koyar. +T = M ## Bağımsız değerlerini metne dönüştürür. +TEXT = METNEÇEVİR ## Bir sayıyı biçimlendirir ve metne dönüştürür. +TRIM = KIRP ## Metindeki boşlukları kaldırır. +UPPER = BÜYÜKHARF ## Metni büyük harfe çevirir. +VALUE = SAYIYAÇEVİR ## Bir metin bağımsız değişkenini sayıya dönüştürür. diff --git a/site/config/PHPExcel-1.8/Classes/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Classes/_notes/dwsync.xml new file mode 100644 index 0000000..a10974f --- /dev/null +++ b/site/config/PHPExcel-1.8/Classes/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel.php" server="62.244.88.21/deciday/" local="131919461973524335" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DAVERAGE.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DAVERAGE.php new file mode 100644 index 0000000..8bfe2c8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DAVERAGE.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DAVERAGE</h1> +<h2>Returns the average of selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The Average yield of Apple trees over 10\' in height'); +$worksheet->setCellValue('B12', '=DAVERAGE(A4:E10,"Yield",A1:B2)'); + +$worksheet->setCellValue('A13', 'The Average age of all Apple and Pear trees in the orchard'); +$worksheet->setCellValue('B13', '=DAVERAGE(A4:E10,3,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:B2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DAVERAGE() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DAVERAGE() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DCOUNT.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DCOUNT.php new file mode 100644 index 0000000..13ad1fb --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DCOUNT.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DCOUNT</h1> +<h2>Counts the cells that contain numbers in a database.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The Number of Apple trees over 10\' in height'); +$worksheet->setCellValue('B12', '=DCOUNT(A4:E10,"Yield",A1:B2)'); + +$worksheet->setCellValue('A13', 'The Number of Apple and Pear trees in the orchard'); +$worksheet->setCellValue('B13', '=DCOUNT(A4:E10,3,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:B2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DCOUNT() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DCOUNT() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DGET.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DGET.php new file mode 100644 index 0000000..9a2b22c --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DGET.php @@ -0,0 +1,86 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DGET</h1> +<h2>Extracts a single value from a column of a list or database that matches conditions that you specify.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The height of the Apple tree between 10\' and 16\' tall'); +$worksheet->setCellValue('B12', '=DGET(A4:E10,"Height",A1:F2)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +echo 'ALL' . '<br /><br />'; + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DMAX.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DMAX.php new file mode 100644 index 0000000..116d848 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DMAX.php @@ -0,0 +1,89 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DMAX</h1> +<h2>Returns the maximum value from selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The tallest tree in the orchard'); +$worksheet->setCellValue('B12', '=DMAX(A4:E10,"Height",A4:E10)'); + +$worksheet->setCellValue('A13', 'The Oldest apple tree in the orchard'); +$worksheet->setCellValue('B13', '=DMAX(A4:E10,3,A1:A2)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +echo 'ALL' . '<br /><br />'; + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DMIN.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DMIN.php new file mode 100644 index 0000000..55207e8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DMIN.php @@ -0,0 +1,89 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DMIN</h1> +<h2>Returns the minimum value from selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The shortest tree in the orchard'); +$worksheet->setCellValue('B12', '=DMIN(A4:E10,"Height",A4:E10)'); + +$worksheet->setCellValue('A13', 'The Youngest apple tree in the orchard'); +$worksheet->setCellValue('B13', '=DMIN(A4:E10,3,A1:A2)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +echo 'ALL' . '<br /><br />'; + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DMIN() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DMIN() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DPRODUCT.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DPRODUCT.php new file mode 100644 index 0000000..8c08421 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DPRODUCT.php @@ -0,0 +1,87 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DPRODUCT</h1> +<h2>Multiplies the values in a column of a list or database that match conditions that you specify.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The product of the yields of all Apple trees over 10\' in the orchard'); +$worksheet->setCellValue('B12', '=DPRODUCT(A4:E10,"Yield",A1:B2)'); + + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +echo 'ALL' . '<br /><br />'; + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DSTDEV.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DSTDEV.php new file mode 100644 index 0000000..28896e6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DSTDEV.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DSTDEV</h1> +<h2>Estimates the standard deviation based on a sample of selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The estimated standard deviation in the yield of Apple and Pear trees'); +$worksheet->setCellValue('B12', '=DSTDEV(A4:E10,"Yield",A1:A3)'); + +$worksheet->setCellValue('A13', 'The estimated standard deviation in height of Apple and Pear trees'); +$worksheet->setCellValue('B13', '=DSTDEV(A4:E10,2,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DSTDEV() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DSTDEV() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DSTDEVP.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DSTDEVP.php new file mode 100644 index 0000000..6540f9a --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DSTDEVP.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DSTDEVP</h1> +<h2>Calculates the standard deviation based on the entire population of selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The standard deviation in the yield of Apple and Pear trees'); +$worksheet->setCellValue('B12', '=DSTDEVP(A4:E10,"Yield",A1:A3)'); + +$worksheet->setCellValue('A13', 'The standard deviation in height of Apple and Pear trees'); +$worksheet->setCellValue('B13', '=DSTDEVP(A4:E10,2,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DSTDEVP() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DSTDEVP() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DVAR.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DVAR.php new file mode 100644 index 0000000..67a9cff --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DVAR.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DVAR</h1> +<h2>Estimates variance based on a sample from selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The estimated variance in the yield of Apple and Pear trees'); +$worksheet->setCellValue('B12', '=DVAR(A4:E10,"Yield",A1:A3)'); + +$worksheet->setCellValue('A13', 'The estimated variance in height of Apple and Pear trees'); +$worksheet->setCellValue('B13', '=DVAR(A4:E10,2,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DVAR() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DVAR() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DVARP.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DVARP.php new file mode 100644 index 0000000..fda6338 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/DVARP.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DVARP</h1> +<h2>Calculates variance based on the entire population of selected database entries,</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The variance in the yield of Apple and Pear trees'); +$worksheet->setCellValue('B12', '=DVARP(A4:E10,"Yield",A1:A3)'); + +$worksheet->setCellValue('A13', 'The variance in height of Apple and Pear trees'); +$worksheet->setCellValue('B13', '=DVARP(A4:E10,2,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DVARP() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DVARP() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/_notes/dwsync.xml new file mode 100644 index 0000000..055114a --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/Database/_notes/dwsync.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="DAVERAGE.php" server="62.244.88.21/deciday/" local="131919461983338835" remote="131880384600000000" Dst="1" /> +<file name="DCOUNT.php" server="62.244.88.21/deciday/" local="131919461983683841" remote="131880384600000000" Dst="1" /> +<file name="DGET.php" server="62.244.88.21/deciday/" local="131919461984249425" remote="131880384600000000" Dst="1" /> +<file name="DMAX.php" server="62.244.88.21/deciday/" local="131919461984425513" remote="131880384600000000" Dst="1" /> +<file name="DMIN.php" server="62.244.88.21/deciday/" local="131919461984765536" remote="131880384600000000" Dst="1" /> +<file name="DPRODUCT.php" server="62.244.88.21/deciday/" local="131919461985376723" remote="131880384600000000" Dst="1" /> +<file name="DSTDEV.php" server="62.244.88.21/deciday/" local="131919461985555365" remote="131880384600000000" Dst="1" /> +<file name="DSTDEVP.php" server="62.244.88.21/deciday/" local="131919461985897952" remote="131880384600000000" Dst="1" /> +<file name="DVAR.php" server="62.244.88.21/deciday/" local="131919461986420833" remote="131880384600000000" Dst="1" /> +<file name="DVARP.php" server="62.244.88.21/deciday/" local="131919461986602762" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/DATE.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/DATE.php new file mode 100644 index 0000000..979d1f5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/DATE.php @@ -0,0 +1,83 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DATE</h1> +<h2>Returns the serial number of a particular date.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$testDates = array( array(2012,3,26), array(2012,2,29), array(2012,4,1), array(2012,12,25), + array(2012,10,31), array(2012,11,5), array(2012,1,1), array(2012,3,17), + array(2011,2,29), array(7,5,3), array(2012,13,1), array(2012,11,45), + array(2012,0,0), array(2012,1,0), array(2012,0,1), + array(2012,-2,2), array(2012,2,-2), array(2012,-2,-2), + ); +$testDateCount = count($testDates); + +$worksheet->fromArray($testDates,NULL,'A1',true); + +for ($row = 1; $row <= $testDateCount; ++$row) { + $worksheet->setCellValue('D'.$row, '=DATE(A'.$row.',B'.$row.',C'.$row.')'); + $worksheet->setCellValue('E'.$row, '=D'.$row); +} +$worksheet->getStyle('E1:E'.$testDateCount) + ->getNumberFormat() + ->setFormatCode('yyyy-mmm-dd'); + + +echo '<hr />'; + + +// Test the formulae +?> +<table border="1" cellspacing="0"> + <tr> + <th colspan="3">Date Value</th> + <th rowspan="2" valign="bottom">Formula</th> + <th rowspan="2" valign="bottom">Excel DateStamp</th> + <th rowspan="2" valign="bottom">Formatted DateStamp</th> + </tr> + <tr> + <th>Year</th> + <th>Month</th> + <th>Day</th> + <tr> + <?php + for ($row = 1; $row <= $testDateCount; ++$row) { + echo '<tr>'; + echo '<td>' , $worksheet->getCell('A'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('C'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('D'.$row)->getValue() , '</td>'; + echo '<td>' , $worksheet->getCell('D'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('E'.$row)->getFormattedValue() , '</td>'; + echo '</tr>'; + } + ?> +</table> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/DATEVALUE.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/DATEVALUE.php new file mode 100644 index 0000000..4d5d8c2 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/DATEVALUE.php @@ -0,0 +1,76 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DATEVALUE</h1> +<h2>Converts a date in the form of text to a serial number.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$testDates = array( '26 March 2012', '29 Feb 2012', 'April 1, 2012', '25/12/2012', + '2012-Oct-31', '5th November', 'January 1st', 'April 2012', + '17-03', '03-2012', '29 Feb 2011', '03-05-07', + '03-MAY-07', '03-13-07', + ); +$testDateCount = count($testDates); + +for($row = 1; $row <= $testDateCount; ++$row) { + $worksheet->setCellValue('A'.$row, $testDates[$row-1]); + $worksheet->setCellValue('B'.$row, '=DATEVALUE(A'.$row.')'); + $worksheet->setCellValue('C'.$row, '=B'.$row); +} + +$worksheet->getStyle('C1:C'.$testDateCount) + ->getNumberFormat() + ->setFormatCode('yyyy-mmm-dd'); + + +echo '<hr />'; + + +// Test the formulae +?> +<p><strong>Warning: </strong>The PHPExcel DATEVALUE() function accepts a wider range of date formats than MS Excel's DATEFORMAT() function.</p> +<table border="1" cellspacing="0"> + <tr> + <th>Date String</th> + <th>Formula</th> + <th>Excel DateStamp</th> + <th>Formatted DateStamp</th> + </tr> + <?php + for ($row = 1; $row <= $testDateCount; ++$row) { + echo '<tr>'; + echo '<td>' , $worksheet->getCell('A'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('C'.$row)->getFormattedValue() , '</td>'; + echo '</tr>'; + } + ?> +</table> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/TIME.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/TIME.php new file mode 100644 index 0000000..f452276 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/TIME.php @@ -0,0 +1,81 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>TIME</h1> +<h2>Returns the serial number of a particular time.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$testDates = array( array(3,15), array(13,15), array(15,15,15), array(3,15,30), + array(15,15,15), array(5), array(9,15,0), array(9,15,-1), + array(13,-14,-15), array(0,0,-1) + ); +$testDateCount = count($testDates); + +$worksheet->fromArray($testDates,NULL,'A1',true); + +for ($row = 1; $row <= $testDateCount; ++$row) { + $worksheet->setCellValue('D'.$row, '=TIME(A'.$row.',B'.$row.',C'.$row.')'); + $worksheet->setCellValue('E'.$row, '=D'.$row); +} +$worksheet->getStyle('E1:E'.$testDateCount) + ->getNumberFormat() + ->setFormatCode('hh:mm:ss'); + + +echo '<hr />'; + + +// Test the formulae +?> +<table border="1" cellspacing="0"> + <tr> + <th colspan="3">Date Value</th> + <th rowspan="2" valign="bottom">Formula</th> + <th rowspan="2" valign="bottom">Excel TimeStamp</th> + <th rowspan="2" valign="bottom">Formatted TimeStamp</th> + </tr> + <tr> + <th>Hour</th> + <th>Minute</th> + <th>Second</th> + <tr> + <?php + for ($row = 1; $row <= $testDateCount; ++$row) { + echo '<tr>'; + echo '<td>' , $worksheet->getCell('A'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('C'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('D'.$row)->getValue() , '</td>'; + echo '<td>' , $worksheet->getCell('D'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('E'.$row)->getFormattedValue() , '</td>'; + echo '</tr>'; + } + ?> +</table> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/TIMEVALUE.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/TIMEVALUE.php new file mode 100644 index 0000000..89e0ba4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/TIMEVALUE.php @@ -0,0 +1,72 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>TIMEVALUE</h1> +<h2>Converts a time in the form of text to a serial number.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$testDates = array( '3:15', '13:15', '15:15:15', '3:15 AM', '3:15 PM', '5PM', '9:15AM', '13:15AM' + ); +$testDateCount = count($testDates); + +for($row = 1; $row <= $testDateCount; ++$row) { + $worksheet->setCellValue('A'.$row, $testDates[$row-1]); + $worksheet->setCellValue('B'.$row, '=TIMEVALUE(A'.$row.')'); + $worksheet->setCellValue('C'.$row, '=B'.$row); +} + +$worksheet->getStyle('C1:C'.$testDateCount) + ->getNumberFormat() + ->setFormatCode('hh:mm:ss'); + + +echo '<hr />'; + + +// Test the formulae +?> +<table border="1" cellspacing="0"> + <tr> + <th>Time String</th> + <th>Formula</th> + <th>Excel TimeStamp</th> + <th>Formatted TimeStamp</th> + </tr> + <?php + for ($row = 1; $row <= $testDateCount; ++$row) { + echo '<tr>'; + echo '<td>' , $worksheet->getCell('A'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('C'.$row)->getFormattedValue() , '</td>'; + echo '</tr>'; + } + ?> +</table> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/_notes/dwsync.xml new file mode 100644 index 0000000..c182351 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/DateTime/_notes/dwsync.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="DATE.php" server="62.244.88.21/deciday/" local="131919461986967959" remote="131880384600000000" Dst="1" /> +<file name="DATEVALUE.php" server="62.244.88.21/deciday/" local="131919461987495082" remote="131880384600000000" Dst="1" /> +<file name="TIME.php" server="62.244.88.21/deciday/" local="131919461987674119" remote="131880384600000000" Dst="1" /> +<file name="TIMEVALUE.php" server="62.244.88.21/deciday/" local="131919461988042901" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/_notes/dwsync.xml new file mode 100644 index 0000000..c255479 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="index.php" server="62.244.88.21/deciday/" local="131919461988546195" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/index.php b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/index.php new file mode 100644 index 0000000..644e3af --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Calculations/index.php @@ -0,0 +1,51 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Function Examples</title> + +</head> +<body> + +<?php + +echo '<h1>PHPExcel Calculation Function Examples</h1>'; + +$exampleTypeList = glob('./*',GLOB_ONLYDIR); + +foreach($exampleTypeList as $exampleType) { + + echo '<h2>' . pathinfo($exampleType,PATHINFO_BASENAME) . ' Function Examples</h2>'; + + $exampleList = glob('./'.$exampleType.'/*.php'); + + foreach($exampleList as $exampleFile) { + $fileData = file_get_contents($exampleFile); + + $h1Pattern = '#<h1>(.*?)</h1>#'; + $h2Pattern = '#<h2>(.*?)</h2>#'; + + if (preg_match($h1Pattern, $fileData, $out)) { + $h1Text = $out[1]; + $h2Text = (preg_match($h2Pattern, $fileData, $out)) ? $out[1] : ''; + + echo '<a href="',$exampleFile,'">',$h1Text,'</a><br />'; + if ($h2Text > '') { + echo $h2Text,'<br />'; + } + } + + } +} + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/_notes/dwsync.xml new file mode 100644 index 0000000..f381157 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/_notes/dwsync.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="exampleReader01.php" server="62.244.88.21/deciday/" local="131919461989067484" remote="131880384600000000" Dst="1" /> +<file name="exampleReader02.php" server="62.244.88.21/deciday/" local="131919461989567898" remote="131880384600000000" Dst="1" /> +<file name="exampleReader03.php" server="62.244.88.21/deciday/" local="131919461989767518" remote="131880384600000000" Dst="1" /> +<file name="exampleReader04.php" server="62.244.88.21/deciday/" local="131919461990115370" remote="131880384600000000" Dst="1" /> +<file name="exampleReader05.php" server="62.244.88.21/deciday/" local="131919461990807366" remote="131880384600000000" Dst="1" /> +<file name="exampleReader08.php" server="62.244.88.21/deciday/" local="131919461992077483" remote="131880384600000000" Dst="1" /> +<file name="exampleReader06.php" server="62.244.88.21/deciday/" local="131919461992260524" remote="131880384600000000" Dst="1" /> +<file name="exampleReader07.php" server="62.244.88.21/deciday/" local="131919461992440312" remote="131880384600000000" Dst="1" /> +<file name="exampleReader09.php" server="62.244.88.21/deciday/" local="131919461993100209" remote="131880384600000000" Dst="1" /> +<file name="exampleReader10.php" server="62.244.88.21/deciday/" local="131919461993321147" remote="131880384600000000" Dst="1" /> +<file name="exampleReader11.php" server="62.244.88.21/deciday/" local="131919461993503091" remote="131880384600000000" Dst="1" /> +<file name="exampleReader12.php" server="62.244.88.21/deciday/" local="131919461994010584" remote="131880384600000000" Dst="1" /> +<file name="exampleReader14.php" server="62.244.88.21/deciday/" local="131919461994381755" remote="131880384600000000" Dst="1" /> +<file name="exampleReader13.php" server="62.244.88.21/deciday/" local="131919461994566069" remote="131880384600000000" Dst="1" /> +<file name="exampleReader15.php" server="62.244.88.21/deciday/" local="131919461995135340" remote="131880384600000000" Dst="1" /> +<file name="exampleReader16.php" server="62.244.88.21/deciday/" local="131919461995325746" remote="131880384600000000" Dst="1" /> +<file name="exampleReader17.php" server="62.244.88.21/deciday/" local="131919461995516059" remote="131880384600000000" Dst="1" /> +<file name="exampleReader18.php" server="62.244.88.21/deciday/" local="131919461996222499" remote="131880384600000000" Dst="1" /> +<file name="exampleReader19.php" server="62.244.88.21/deciday/" local="131919461996404158" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader01.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader01.php new file mode 100644 index 0000000..8883e12 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader01.php @@ -0,0 +1,42 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #01</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #01</h1> +<h2>Simple File Reader using PHPExcel_IOFactory::load()</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileName = './sampleData/example1.xls'; +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory to identify the format<br />'; +$objPHPExcel = PHPExcel_IOFactory::load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader02.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader02.php new file mode 100644 index 0000000..b2293c3 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader02.php @@ -0,0 +1,50 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #02</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #02</h1> +<h2>Simple File Reader using a Specified Reader</h2> +<?php + +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using PHPExcel_Reader_Excel5<br />'; +$objReader = new PHPExcel_Reader_Excel5(); +// $objReader = new PHPExcel_Reader_Excel2007(); +// $objReader = new PHPExcel_Reader_Excel2003XML(); +// $objReader = new PHPExcel_Reader_OOCalc(); +// $objReader = new PHPExcel_Reader_SYLK(); +// $objReader = new PHPExcel_Reader_Gnumeric(); +// $objReader = new PHPExcel_Reader_CSV(); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader03.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader03.php new file mode 100644 index 0000000..b4ab256 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader03.php @@ -0,0 +1,51 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #03</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #03</h1> +<h2>Simple File Reader using the PHPExcel_IOFactory to Return a Reader</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'SYLK'; +// $inputFileType = 'Gnumeric'; +// $inputFileType = 'CSV'; +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader04.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader04.php new file mode 100644 index 0000000..cf87b2b --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader04.php @@ -0,0 +1,47 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #04</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #04</h1> +<h2>Simple File Reader using the PHPExcel_IOFactory to Identify a Reader to Use</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileName = './sampleData/example1.xls'; + +$inputFileType = PHPExcel_IOFactory::identify($inputFileName); +echo 'File ',pathinfo($inputFileName,PATHINFO_BASENAME),' has been identified as an ',$inputFileType,' file<br />'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with the identified reader type<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader05.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader05.php new file mode 100644 index 0000000..1317f07 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader05.php @@ -0,0 +1,51 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #05</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #05</h1> +<h2>Simple File Reader using the "Read Data Only" Option</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Turning Formatting off for Load<br />'; +$objReader->setReadDataOnly(true); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader06.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader06.php new file mode 100644 index 0000000..58c2d26 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader06.php @@ -0,0 +1,54 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #06</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #06</h1> +<h2>Simple File Reader Loading All WorkSheets</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading all WorkSheets<br />'; +$objReader->setLoadAllSheets(); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo $sheetIndex,' -> ',$loadedSheetName,'<br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader07.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader07.php new file mode 100644 index 0000000..80acdf6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader07.php @@ -0,0 +1,55 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #07</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #07</h1> +<h2>Simple File Reader Loading a Single Named WorkSheet</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; +$sheetname = 'Data Sheet #2'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading Sheet "',$sheetname,'" only<br />'; +$objReader->setLoadSheetsOnly($sheetname); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo $sheetIndex,' -> ',$loadedSheetName,'<br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader08.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader08.php new file mode 100644 index 0000000..3c38e02 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader08.php @@ -0,0 +1,55 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #08</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #08</h1> +<h2>Simple File Reader Loading Several Named WorkSheets</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; +$sheetnames = array('Data Sheet #1','Data Sheet #3'); + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading Sheet',((count($sheetnames) == 1) ? '' : 's'),' "',implode('" and "',$sheetnames),'" only<br />'; +$objReader->setLoadSheetsOnly($sheetnames); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo $sheetIndex,' -> ',$loadedSheetName,'<br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader09.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader09.php new file mode 100644 index 0000000..3bfa8f0 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader09.php @@ -0,0 +1,71 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #09</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #09</h1> +<h2>Simple File Reader Using a Read Filter</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; +$sheetname = 'Data Sheet #3'; + + +class MyReadFilter implements PHPExcel_Reader_IReadFilter +{ + public function readCell($column, $row, $worksheetName = '') { + // Read rows 1 to 7 and columns A to E only + if ($row >= 1 && $row <= 7) { + if (in_array($column,range('A','E'))) { + return true; + } + } + return false; + } +} + +$filterSubset = new MyReadFilter(); + + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading Sheet "',$sheetname,'" only<br />'; +$objReader->setLoadSheetsOnly($sheetname); +echo 'Loading Sheet using filter<br />'; +$objReader->setReadFilter($filterSubset); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader10.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader10.php new file mode 100644 index 0000000..eb43ff8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader10.php @@ -0,0 +1,82 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #10</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #10</h1> +<h2>Simple File Reader Using a Configurable Read Filter</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; +$sheetname = 'Data Sheet #3'; + + +class MyReadFilter implements PHPExcel_Reader_IReadFilter +{ + private $_startRow = 0; + + private $_endRow = 0; + + private $_columns = array(); + + public function __construct($startRow, $endRow, $columns) { + $this->_startRow = $startRow; + $this->_endRow = $endRow; + $this->_columns = $columns; + } + + public function readCell($column, $row, $worksheetName = '') { + if ($row >= $this->_startRow && $row <= $this->_endRow) { + if (in_array($column,$this->_columns)) { + return true; + } + } + return false; + } +} + +$filterSubset = new MyReadFilter(9,15,range('G','K')); + + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading Sheet "',$sheetname,'" only<br />'; +$objReader->setLoadSheetsOnly($sheetname); +echo 'Loading Sheet using configurable filter<br />'; +$objReader->setReadFilter($filterSubset); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader11.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader11.php new file mode 100644 index 0000000..7bbd808 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader11.php @@ -0,0 +1,91 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #11</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #11</h1> +<h2>Reading a Workbook in "Chunks" Using a Configurable Read Filter (Version 1)</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example2.xls'; + + +/** Define a Read Filter class implementing PHPExcel_Reader_IReadFilter */ +class chunkReadFilter implements PHPExcel_Reader_IReadFilter +{ + private $_startRow = 0; + + private $_endRow = 0; + + /** We expect a list of the rows that we want to read to be passed into the constructor */ + public function __construct($startRow, $chunkSize) { + $this->_startRow = $startRow; + $this->_endRow = $startRow + $chunkSize; + } + + public function readCell($column, $row, $worksheetName = '') { + // Only read the heading row, and the rows that were configured in the constructor + if (($row == 1) || ($row >= $this->_startRow && $row < $this->_endRow)) { + return true; + } + return false; + } +} + + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + + +echo '<hr />'; + + +/** Define how many rows we want for each "chunk" **/ +$chunkSize = 20; + +/** Loop to read our worksheet in "chunk size" blocks **/ +for ($startRow = 2; $startRow <= 240; $startRow += $chunkSize) { + echo 'Loading WorkSheet using configurable filter for headings row 1 and for rows ',$startRow,' to ',($startRow+$chunkSize-1),'<br />'; + /** Create a new Instance of our Read Filter, passing in the limits on which rows we want to read **/ + $chunkFilter = new chunkReadFilter($startRow,$chunkSize); + /** Tell the Reader that we want to use the new Read Filter that we've just Instantiated **/ + $objReader->setReadFilter($chunkFilter); + /** Load only the rows that match our filter from $inputFileName to a PHPExcel Object **/ + $objPHPExcel = $objReader->load($inputFileName); + + // Do some processing here + + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); + var_dump($sheetData); + echo '<br /><br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader12.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader12.php new file mode 100644 index 0000000..e6789c2 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader12.php @@ -0,0 +1,94 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #12</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #12</h1> +<h2>Reading a Workbook in "Chunks" Using a Configurable Read Filter (Version 2)</h2> +<?php + +/** Set Include path to point at the PHPExcel Classes folder **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** Include PHPExcel_IOFactory **/ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example2.xls'; + + +/** Define a Read Filter class implementing PHPExcel_Reader_IReadFilter */ +class chunkReadFilter implements PHPExcel_Reader_IReadFilter +{ + private $_startRow = 0; + + private $_endRow = 0; + + /** Set the list of rows that we want to read */ + public function setRows($startRow, $chunkSize) { + $this->_startRow = $startRow; + $this->_endRow = $startRow + $chunkSize; + } + + public function readCell($column, $row, $worksheetName = '') { + // Only read the heading row, and the rows that are configured in $this->_startRow and $this->_endRow + if (($row == 1) || ($row >= $this->_startRow && $row < $this->_endRow)) { + return true; + } + return false; + } +} + + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + + +echo '<hr />'; + + +/** Define how many rows we want to read for each "chunk" **/ +$chunkSize = 20; +/** Create a new Instance of our Read Filter **/ +$chunkFilter = new chunkReadFilter(); + +/** Tell the Reader that we want to use the Read Filter that we've Instantiated **/ +$objReader->setReadFilter($chunkFilter); + +/** Loop to read our worksheet in "chunk size" blocks **/ +for ($startRow = 2; $startRow <= 240; $startRow += $chunkSize) { + echo 'Loading WorkSheet using configurable filter for headings row 1 and for rows ',$startRow,' to ',($startRow+$chunkSize-1),'<br />'; + /** Tell the Read Filter, the limits on which rows we want to read this iteration **/ + $chunkFilter->setRows($startRow,$chunkSize); + /** Load only the rows that match our filter from $inputFileName to a PHPExcel Object **/ + $objPHPExcel = $objReader->load($inputFileName); + + // Do some processing here + + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); + var_dump($sheetData); + echo '<br /><br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader13.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader13.php new file mode 100644 index 0000000..3e11e8b --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader13.php @@ -0,0 +1,60 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #13</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #13</h1> +<h2>Simple File Reader for Multiple CSV Files</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'CSV'; +$inputFileNames = array('./sampleData/example1.csv','./sampleData/example2.csv'); + +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +$inputFileName = array_shift($inputFileNames); +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' into WorkSheet #1 using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objPHPExcel = $objReader->load($inputFileName); +$objPHPExcel->getActiveSheet()->setTitle(pathinfo($inputFileName,PATHINFO_BASENAME)); +foreach($inputFileNames as $sheet => $inputFileName) { + echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' into WorkSheet #',($sheet+2),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; + $objReader->setSheetIndex($sheet+1); + $objReader->loadIntoExisting($inputFileName,$objPHPExcel); + $objPHPExcel->getActiveSheet()->setTitle(pathinfo($inputFileName,PATHINFO_BASENAME)); +} + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo '<b>Worksheet #',$sheetIndex,' -> ',$loadedSheetName,'</b><br />'; + $objPHPExcel->setActiveSheetIndexByName($loadedSheetName); + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); + var_dump($sheetData); + echo '<br /><br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader14.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader14.php new file mode 100644 index 0000000..1cef710 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader14.php @@ -0,0 +1,105 @@ +<?php + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #15</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #14</h1> +<h2>Reading a Large CSV file in "Chunks" to split across multiple Worksheets</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'CSV'; +$inputFileName = './sampleData/example2.csv'; + +/** Define a Read Filter class implementing PHPExcel_Reader_IReadFilter */ +class chunkReadFilter implements PHPExcel_Reader_IReadFilter +{ + private $_startRow = 0; + + private $_endRow = 0; + + /** Set the list of rows that we want to read */ + public function setRows($startRow, $chunkSize) { + $this->_startRow = $startRow; + $this->_endRow = $startRow + $chunkSize; + } + + public function readCell($column, $row, $worksheetName = '') { + // Only read the heading row, and the rows that are configured in $this->_startRow and $this->_endRow + if (($row == 1) || ($row >= $this->_startRow && $row < $this->_endRow)) { + return true; + } + return false; + } +} + + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + + +echo '<hr />'; + + +/** Define how many rows we want to read for each "chunk" **/ +$chunkSize = 100; +/** Create a new Instance of our Read Filter **/ +$chunkFilter = new chunkReadFilter(); + +/** Tell the Reader that we want to use the Read Filter that we've Instantiated **/ +/** and that we want to store it in contiguous rows/columns **/ +$objReader->setReadFilter($chunkFilter) + ->setContiguous(true); + + +/** Instantiate a new PHPExcel object manually **/ +$objPHPExcel = new PHPExcel(); + +/** Set a sheet index **/ +$sheet = 0; +/** Loop to read our worksheet in "chunk size" blocks **/ +/** $startRow is set to 2 initially because we always read the headings in row #1 **/ +for ($startRow = 2; $startRow <= 240; $startRow += $chunkSize) { + echo 'Loading WorkSheet #',($sheet+1),' using configurable filter for headings row 1 and for rows ',$startRow,' to ',($startRow+$chunkSize-1),'<br />'; + /** Tell the Read Filter, the limits on which rows we want to read this iteration **/ + $chunkFilter->setRows($startRow,$chunkSize); + + /** Increment the worksheet index pointer for the Reader **/ + $objReader->setSheetIndex($sheet); + /** Load only the rows that match our filter into a new worksheet in the PHPExcel Object **/ + $objReader->loadIntoExisting($inputFileName,$objPHPExcel); + /** Set the worksheet title (to reference the "sheet" of data that we've loaded) **/ + /** and increment the sheet index as well **/ + $objPHPExcel->getActiveSheet()->setTitle('Country Data #'.(++$sheet)); +} + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo '<b>Worksheet #',$sheetIndex,' -> ',$loadedSheetName,'</b><br />'; + $objPHPExcel->setActiveSheetIndexByName($loadedSheetName); + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,false,false,true); + var_dump($sheetData); + echo '<br />'; +} + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader15.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader15.php new file mode 100644 index 0000000..566c3c9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader15.php @@ -0,0 +1,71 @@ +<?php + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #15</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #15</h1> +<h2>Simple File Reader for Tab-Separated Value File using the Advanced Value Binder</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +PHPExcel_Cell::setValueBinder( new PHPExcel_Cell_AdvancedValueBinder() ); + + +$inputFileType = 'CSV'; +$inputFileName = './sampleData/example1.tsv'; + +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' into WorkSheet #1 using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader->setDelimiter("\t"); +$objPHPExcel = $objReader->load($inputFileName); +$objPHPExcel->getActiveSheet()->setTitle(pathinfo($inputFileName,PATHINFO_BASENAME)); + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo '<b>Worksheet #',$sheetIndex,' -> ',$loadedSheetName,' (Formatted)</b><br />'; + $objPHPExcel->setActiveSheetIndexByName($loadedSheetName); + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); + var_dump($sheetData); + echo '<br />'; +} + +echo '<hr />'; + +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo '<b>Worksheet #',$sheetIndex,' -> ',$loadedSheetName,' (Unformatted)</b><br />'; + $objPHPExcel->setActiveSheetIndexByName($loadedSheetName); + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,false,true); + var_dump($sheetData); + echo '<br />'; +} + +echo '<hr />'; + +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo '<b>Worksheet #',$sheetIndex,' -> ',$loadedSheetName,' (Raw)</b><br />'; + $objPHPExcel->setActiveSheetIndexByName($loadedSheetName); + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,false,false,true); + var_dump($sheetData); + echo '<br />'; +} + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader16.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader16.php new file mode 100644 index 0000000..9d9defa --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader16.php @@ -0,0 +1,46 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #16</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #16</h1> +<h2>Handling Loader Exceptions using Try/Catch</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileName = './sampleData/example_1.xls'; +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory to identify the format<br />'; +try { + $objPHPExcel = PHPExcel_IOFactory::load($inputFileName); +} catch(PHPExcel_Reader_Exception $e) { + die('Error loading file "'.pathinfo($inputFileName,PATHINFO_BASENAME).'": '.$e->getMessage()); +} + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader17.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader17.php new file mode 100644 index 0000000..b0ef791 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader17.php @@ -0,0 +1,52 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #17</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #17</h1> +<h2>Simple File Reader Loading Several Named WorkSheets</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + + +/** Read the list of Worksheet Names from the Workbook file **/ +echo 'Read the list of Worksheets in the WorkBook<br />'; +$worksheetNames = $objReader->listWorksheetNames($inputFileName); + +echo 'There are ',count($worksheetNames),' worksheet',((count($worksheetNames) == 1) ? '' : 's'),' in the workbook<br /><br />'; +foreach($worksheetNames as $worksheetName) { + echo $worksheetName,'<br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader18.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader18.php new file mode 100644 index 0000000..438d886 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader18.php @@ -0,0 +1,50 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #18</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #18</h1> +<h2>Reading list of WorkSheets without loading entire file</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' information using IOFactory with a defined reader type of ',$inputFileType,'<br />'; + +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +$worksheetNames = $objReader->listWorksheetNames($inputFileName); + +echo '<h3>Worksheet Names</h3>'; +echo '<ol>'; +foreach ($worksheetNames as $worksheetName) { + echo '<li>', $worksheetName, '</li>'; +} +echo '</ol>'; + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader19.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader19.php new file mode 100644 index 0000000..2f3eaaf --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/exampleReader19.php @@ -0,0 +1,53 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #19</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #19</h1> +<h2>Reading WorkSheet information without loading entire file</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' information using IOFactory with a defined reader type of ',$inputFileType,'<br />'; + +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +$worksheetData = $objReader->listWorksheetInfo($inputFileName); + +echo '<h3>Worksheet Information</h3>'; +echo '<ol>'; +foreach ($worksheetData as $worksheet) { + echo '<li>', $worksheet['worksheetName'], '<br />'; + echo 'Rows: ', $worksheet['totalRows'], ' Columns: ', $worksheet['totalColumns'], '<br />'; + echo 'Cell Range: A1:', $worksheet['lastColumnLetter'], $worksheet['totalRows']; + echo '</li>'; +} +echo '</ol>'; + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/_notes/dwsync.xml new file mode 100644 index 0000000..ada272b --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/_notes/dwsync.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="example1.csv" server="62.244.88.21/deciday/" local="131919461996896097" remote="131880384600000000" Dst="1" /> +<file name="example1.tsv" server="62.244.88.21/deciday/" local="131919461997726327" remote="131880384600000000" Dst="1" /> +<file name="example2.csv" server="62.244.88.21/deciday/" local="131919461998039621" remote="131880384600000000" Dst="1" /> +<file name="example1.xls" server="62.244.88.21/deciday/" local="131919461998234126" remote="131880384600000000" Dst="1" /> +<file name="example2.xls" server="62.244.88.21/deciday/" local="131919461999779350" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example1.csv b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example1.csv new file mode 100644 index 0000000..b8cdf18 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example1.csv @@ -0,0 +1,4 @@ +First Name,Last Name,Nationality,Gender,Date of Birth,Time of Birth,Date/Time,PHP Coder,Sanity %Age +Mark,Baker,British,M,19-Dec-1960,01:30,=E2+F2,TRUE,32% +Toni,Baker,British,F,24-Nov-1950,20:00,=E3+F3,FALSE,95% +Rachel,Baker,British,F,7-Dec-1982,00:15,=E4+F4,FALSE,100% \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example1.tsv b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example1.tsv new file mode 100644 index 0000000..29c9297 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example1.tsv @@ -0,0 +1,4 @@ +First Name Last Name Nationality Gender Date of Birth Time of Birth Date/Time PHP Coder Sanity %Age +Mark Baker British M 19-Dec-1960 01:30 =E2+F2 TRUE 32% +Toni Baker British F 24-Nov-1950 20:00 =E3+F3 FALSE 95% +Rachel Baker British F 7-Dec-1982 00:15 =E4+F4 FALSE 100% \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example1.xls b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example1.xls new file mode 100644 index 0000000..bd9bb11 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example1.xls differ diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example2.csv b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example2.csv new file mode 100644 index 0000000..1750f1b --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example2.csv @@ -0,0 +1,223 @@ +"City","Country","Latitude","Longitude" +"Kabul","Afghanistan",34.528455,69.171703 +"Tirane","Albania",41.33,19.82 +"Algiers","Algeria",36.752887,3.042048 +"Pago Pago","American Samoa",-14.27933,-170.700897 +"Andorra la Vella","Andorra",42.507531,1.521816 +"Luanda","Angola",-8.838333,13.234444 +"Buenos Aires","Argentina",-34.608417,-58.373161 +"Yerevan","Armenia",40.183333,44.516667 +"Oranjestad","Aruba",12.52458,-70.026459 +"Canberra","Australia",-35.3075,149.124417 +"Vienna","Austria",48.208333,16.373056 +"Baku","Azerbaijan",40.379571,49.891233 +"Nassau","Bahamas",25.06,-77.345 +"Manama","Bahrain",26.216667,50.583333 +"Dhaka","Bangladesh",23.709921,90.407143 +"Bridgetown","Barbados",13.096111,-59.608333 +"Minsk","Belarus",53.9,27.566667 +"Brussels","Belgium",50.846281,4.354727 +"Belmopan","Belize",17.251389,-88.766944 +"Thimphu","Bhutan",27.466667,89.641667 +"La Paz","Bolivia",-16.49901,-68.146248 +"Sarajevo","Bosnia and Herzegovina",43.8476,18.3564 +"Gaborone","Botswana",-24.65411,25.908739 +"Brasilia","Brazil",-15.780148,-47.92917 +"Road Town","British Virgin Islands",18.433333,-64.616667 +"Bandar Seri Begawan","Brunei Darussalam",4.9431,114.9425 +"Sofia","Bulgaria",42.697626,23.322284 +"Ouagadougou","Burkina Faso",12.364637,-1.533864 +"Bujumbura","Burundi",-3.361378,29.359878 +"Phnom Penh","Cambodia",11.55,104.916667 +"Yaounde","Cameroon",3.866667,11.516667 +"Ottawa","Canada",45.423494,-75.697933 +"Praia","Cape Verde",14.920833,-23.508333 +"George Town","Cayman Islands",19.286932,-81.367439 +"Bangui","Central African Republic",4.361698,18.555975 +"N'Djamena","Chad",12.104797,15.044506 +"Santiago","Chile",-33.42536,-70.566466 +"Beijing","China",39.904667,116.408198 +"Bogota","Colombia",4.647302,-74.096268 +"Moroni","Comoros",-11.717216,43.247315 +"Brazzaville","Congo",-4.266667,15.283333 +"San Jose","Costa Rica",9.933333,-84.083333 +"Yamoussoukro","Cote d'Ivoire",6.816667,-5.283333 +"Zagreb","Croatia",45.814912,15.978515 +"Havana","Cuba",23.133333,-82.366667 +"Nicosia","Cyprus",35.166667,33.366667 +"Prague","Czech Republic",50.087811,14.42046 +"Kinshasa","Congo",-4.325,15.322222 +"Copenhagen","Denmark",55.676294,12.568116 +"Djibouti","Djibouti",11.588,43.145 +"Roseau","Dominica",15.301389,-61.388333 +"Santo Domingo","Dominican Republic",18.5,-69.983333 +"Dili","East Timor",-8.566667,125.566667 +"Quito","Ecuador",-0.229498,-78.524277 +"Cairo","Egypt",30.064742,31.249509 +"San Salvador","El Salvador",13.69,-89.190003 +"Malabo","Equatorial Guinea",3.75,8.783333 +"Asmara","Eritrea",15.33236,38.92617 +"Tallinn","Estonia",59.438862,24.754472 +"Addis Ababa","Ethiopia",9.022736,38.746799 +"Stanley","Falkland Islands",-51.700981,-57.84919 +"Torshavn","Faroe Islands",62.017707,-6.771879 +"Suva","Fiji",-18.1416,178.4419 +"Helsinki","Finland",60.169813,24.93824 +"Paris","France",48.856667,2.350987 +"Cayenne","French Guiana",4.9227,-52.3269 +"Papeete","French Polynesia",-17.535021,-149.569595 +"Libreville","Gabon",0.390841,9.453644 +"Banjul","Gambia",13.453056,-16.5775 +"T'bilisi","Georgia",41.716667,44.783333 +"Berlin","Germany",52.523405,13.4114 +"Accra","Ghana",5.555717,-0.196306 +"Athens","Greece",37.97918,23.716647 +"Nuuk","Greenland",64.18362,-51.721407 +"Basse-Terre","Guadeloupe",15.998503,-61.72202 +"Guatemala","Guatemala",14.641389,-90.513056 +"St. Peter Port","Guernsey",49.458858,-2.534752 +"Conakry","Guinea",9.537029,-13.67847 +"Bissau","Guinea-Bissau",11.866667,-15.6 +"Georgetown","Guyana",6.804611,-58.154831 +"Port-au-Prince","Haiti",18.539269,-72.336408 +"Tegucigalpa","Honduras",14.082054,-87.206285 +"Budapest","Hungary",47.498406,19.040758 +"Reykjavik","Iceland",64.135338,-21.89521 +"New Delhi","India",28.635308,77.22496 +"Jakarta","Indonesia",-6.211544,106.845172 +"Tehran","Iran",35.696216,51.422945 +"Baghdad","Iraq",33.3157,44.3922 +"Dublin","Ireland",53.344104,-6.267494 +"Jerusalem","Israel",31.7857,35.2007 +"Rome","Italy",41.895466,12.482324 +"Kingston","Jamaica",17.992731,-76.792009 +"St. Helier","Jersey",49.190278,-2.108611 +"Amman","Jordan",31.956578,35.945695 +"Astana","Kazakhstan",51.10,71.30 +"Nairobi","Kenya",-01.17,36.48 +"Tarawa","Kiribati",01.30,173.00 +"Seoul","South Korea",37.31,126.58 +"Kuwait City","Kuwait",29.30,48.00 +"Bishkek","Kyrgyzstan",42.54,74.46 +"Riga","Latvia",56.53,24.08 +"Beirut","Lebanon",33.53,35.31 +"Maseru","Lesotho",-29.18,27.30 +"Monrovia","Liberia",06.18,-10.47 +"Vaduz","Liechtenstein",47.08,09.31 +"Vilnius","Lithuania",54.38,25.19 +"Luxembourg","Luxembourg",49.37,06.09 +"Antananarivo","Madagascar",-18.55,47.31 +"Lilongwe","Malawi",-14.00,33.48 +"Kuala Lumpur","Malaysia",03.09,101.41 +"Male","Maldives",04.00,73.28 +"Bamako","Mali",12.34,-07.55 +"Valletta","Malta",35.54,14.31 +"Fort-de-France","Martinique",14.36,-61.02 +"Nouakchott","Mauritania",-20.10,57.30 +"Mamoudzou","Mayotte",-12.48,45.14 +"Mexico City","Mexico",19.20,-99.10 +"Palikir","Micronesia",06.55,158.09 +"Chisinau","Moldova",47.02,28.50 +"Maputo","Mozambique",-25.58,32.32 +"Yangon","Myanmar",16.45,96.20 +"Windhoek","Namibia",-22.35,17.04 +"Kathmandu","Nepal",27.45,85.20 +"Amsterdam","Netherlands",52.23,04.54 +"Willemstad","Netherlands Antilles",12.05,-69.00 +"Noumea","New Caledonia",-22.17,166.30 +"Wellington","New Zealand",-41.19,174.46 +"Managua","Nicaragua",12.06,-86.20 +"Niamey","Niger",13.27,02.06 +"Abuja","Nigeria",09.05,07.32 +"Kingston","Norfolk Island",-45.20,168.43 +"Saipan","Northern Mariana Islands",15.12,145.45 +"Oslo","Norway",59.55,10.45 +"Masqat","Oman",23.37,58.36 +"Islamabad","Pakistan",33.40,73.10 +"Koror","Palau",07.20,134.28 +"Panama City","Panama",09.00,-79.25 +"Port Moresby","Papua New Guinea",-09.24,147.08 +"Asuncion","Paraguay",-25.10,-57.30 +"Lima","Peru",-12.00,-77.00 +"Manila","Philippines",14.40,121.03 +"Warsaw","Poland",52.13,21.00 +"Lisbon","Portugal",38.42,-09.10 +"San Juan","Puerto Rico",18.28,-66.07 +"Doha","Qatar",25.15,51.35 +"Bucuresti","Romania",44.27,26.10 +"Moskva","Russian Federation",55.45,37.35 +"Kigali","Rawanda",-01.59,30.04 +"Basseterre","Saint Kitts and Nevis",17.17,-62.43 +"Castries","Saint Lucia",14.02,-60.58 +"Saint-Pierre","Saint Pierre and Miquelon",46.46,-56.12 +"Apia","Samoa",-13.50,-171.50 +"San Marino","San Marino",43.55,12.30 +"Sao Tome","Sao Tome and Principe",00.10,06.39 +"Riyadh","Saudi Arabia",24.41,46.42 +"Dakar","Senegal",14.34,-17.29 +"Freetown","Sierra Leone",08.30,-13.17 +"Bratislava","Slovakia",48.10,17.07 +"Ljubljana","Slovenia",46.04,14.33 +"Honiara","Solomon Islands",-09.27,159.57 +"Mogadishu","Somalia",02.02,45.25 +"Pretoria","South Africa",-25.44,28.12 +"Madrid","Spain",40.25,-03.45 +"Khartoum","Sudan",15.31,32.35 +"Paramaribo","Suriname",05.50,-55.10 +"Mbabane","Swaziland",-26.18,31.06 +"Stockholm","Sweden",59.20,18.03 +"Bern","Switzerland",46.57,07.28 +"Damascus","Syrian Arab Republic",33.30,36.18 +"Dushanbe","Tajikistan",38.33,68.48 +"Bangkok","Thailand",13.45,100.35 +"Lome","Togo",06.09,01.20 +"Nuku'alofa","Tonga",-21.10,-174.00 +"Tunis","Tunisia",36.50,10.11 +"Ankara","Turkey",39.57,32.54 +"Ashgabat","Turkmenistan",38.00,57.50 +"Funafuti","Tuvalu",-08.31,179.13 +"Kampala","Uganda",00.20,32.30 +"Kiev","Ukraine",50.30,30.28 +"Abu Dhabi","United Arab Emirates",24.28,54.22 +"London","United Kingdom",51.36,-00.05 +"Dodoma","Tanzania",-06.08,35.45 +"Washington DC","United States of America",39.91,-77.02 +"Montevideo","Uruguay",-34.50,-56.11 +"Tashkent","Uzbekistan",41.20,69.10 +"Port-Vila","Vanuatu",-17.45,168.18 +"Caracas","Venezuela",10.30,-66.55 +"Hanoi","Viet Nam",21.05,105.55 +"Belgrade","Yugoslavia",44.50,20.37 +"Lusaka","Zambia",-15.28,28.16 +"Harare","Zimbabwe",-17.43,31.02 +"St. John's","Antigua and Barbuda",17.08,-61.50 +"Porto Novo","Benin",06.30,02.47 +"Hamilton","Bermuda"","32.18,-64.48 +"Avarua","Cook Islands",-21.12,-159.46 +"St. George's","Grenada",12.04,-61.44 +"Agaa","Guam",13.28,144.45 +"Victoria","Hong Kong",22.16,114.13 +"Tokyo","Japan",35.40,139.45 +"Pyongyang","North Korea",39.00,125.47 +"Vientiane","Laos",17.59,102.38 +"Tripoli","Libya",32.54,013.11 +"Skopje","Macedonia",42.00,021.28 +"Majuro","Marshall Islands",07.05,171.08 +"Port Louis","Mauritius",-20.10,57.30 +"Monaco","Monaco",43.44,007.25 +"Ulan Bator","Mongolia",47.54,106.52 +"Plymouth","Montserrat",16.44,-62.14 +"Rabat","Morocco",34.02,-06.51 +"Alofi","Niue",-14.27,-178.05 +"Saint-Denis","Runion",-20.52,55.27 +"Victoria","Seychelles",-04.38,55.28 +"Singapore","Singapore",01.18,103.50 +"Colombo","Sri Lanka",06.55,79.52 +"Kingstown","St Vincent and the Grenadines",13.12,-61.14 +"Taipei","Taiwan",25.50,121.32 +"Port-of-Spain","Trinidad and Tobago",10.38,-61.31 +"Cockburn Harbour","Turks and Caicos Islands",21.30,-71.30 +"Charlotte Amalie","US Virgin Islands",18.22,-64.56 +"Vatican City","Vatican State",41.54,12.27 +"Layoune","Western Sahara",27.10,-13.11 +"San'a","Yemen",15.24,44.14 diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example2.xls b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example2.xls new file mode 100644 index 0000000..dd213ab Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/Examples/Reader/sampleData/example2.xls differ diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/_notes/dwsync.xml new file mode 100644 index 0000000..c4e1d6b --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/_notes/dwsync.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="exampleWorkBookReader01.php" server="62.244.88.21/deciday/" local="131919461999173421" remote="131880384600000000" Dst="1" /> +<file name="exampleWorkBookReader02.php" server="62.244.88.21/deciday/" local="131919461999352436" remote="131880384600000000" Dst="1" /> +<file name="exampleWorkBookReader03.php" server="62.244.88.21/deciday/" local="131919462000316076" remote="131880384600000000" Dst="1" /> +<file name="exampleWorkBookReader04.php" server="62.244.88.21/deciday/" local="131919462000498466" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader01.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader01.php new file mode 100644 index 0000000..4f8dfdf --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader01.php @@ -0,0 +1,93 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reading WorkBook Data Example #01</title> + +</head> +<body> + +<h1>PHPExcel Reading WorkBook Data Example #01</h1> +<h2>Read the WorkBook Properties</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +$inputFileName = './sampleData/example1.xls'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +/** Read the document's creator property **/ +$creator = $objPHPExcel->getProperties()->getCreator(); +echo '<b>Document Creator: </b>',$creator,'<br />'; + +/** Read the Date when the workbook was created (as a PHP timestamp value) **/ +$creationDatestamp = $objPHPExcel->getProperties()->getCreated(); +/** Format the date and time using the standard PHP date() function **/ +$creationDate = date('l, d<\s\up>S</\s\up> F Y',$creationDatestamp); +$creationTime = date('g:i A',$creationDatestamp); +echo '<b>Created On: </b>',$creationDate,' at ',$creationTime,'<br />'; + +/** Read the name of the last person to modify this workbook **/ +$modifiedBy = $objPHPExcel->getProperties()->getLastModifiedBy(); +echo '<b>Last Modified By: </b>',$modifiedBy,'<br />'; + +/** Read the Date when the workbook was last modified (as a PHP timestamp value) **/ +$modifiedDatestamp = $objPHPExcel->getProperties()->getModified(); +/** Format the date and time using the standard PHP date() function **/ +$modifiedDate = date('l, d<\s\up>S</\s\up> F Y',$modifiedDatestamp); +$modifiedTime = date('g:i A',$modifiedDatestamp); +echo '<b>Last Modified On: </b>',$modifiedDate,' at ',$modifiedTime,'<br />'; + +/** Read the workbook title property **/ +$workbookTitle = $objPHPExcel->getProperties()->getTitle(); +echo '<b>Title: </b>',$workbookTitle,'<br />'; + +/** Read the workbook description property **/ +$description = $objPHPExcel->getProperties()->getDescription(); +echo '<b>Description: </b>',$description,'<br />'; + +/** Read the workbook subject property **/ +$subject = $objPHPExcel->getProperties()->getSubject(); +echo '<b>Subject: </b>',$subject,'<br />'; + +/** Read the workbook keywords property **/ +$keywords = $objPHPExcel->getProperties()->getKeywords(); +echo '<b>Keywords: </b>',$keywords,'<br />'; + +/** Read the workbook category property **/ +$category = $objPHPExcel->getProperties()->getCategory(); +echo '<b>Category: </b>',$category,'<br />'; + +/** Read the workbook company property **/ +$company = $objPHPExcel->getProperties()->getCompany(); +echo '<b>Company: </b>',$company,'<br />'; + +/** Read the workbook manager property **/ +$manager = $objPHPExcel->getProperties()->getManager(); +echo '<b>Manager: </b>',$manager,'<br />'; + + +?> +<body> +</html> diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader02.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader02.php new file mode 100644 index 0000000..b8c359d --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader02.php @@ -0,0 +1,52 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reading WorkBook Data Example #02</title> + +</head> +<body> + +<h1>PHPExcel Reading WorkBook Data Example #02</h1> +<h2>Read a list of Custom Properties for a WorkBook</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel2007'; +$inputFileName = './sampleData/example1.xlsx'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +/** Read an array list of any custom properties for this document **/ +$customPropertyList = $objPHPExcel->getProperties()->getCustomProperties(); + +echo '<b>Custom Property names: </b><br />'; +foreach($customPropertyList as $customPropertyName) { + echo $customPropertyName,'<br />'; +} + + + +?> +<body> +</html> diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader03.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader03.php new file mode 100644 index 0000000..8fb350d --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader03.php @@ -0,0 +1,80 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reading WorkBook Data Example #03</title> + +</head> +<body> + +<h1>PHPExcel Reading WorkBook Data Example #03</h1> +<h2>Read Custom Property Values for a WorkBook</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel2007'; +$inputFileName = './sampleData/example1.xlsx'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +/** Read an array list of any custom properties for this document **/ +$customPropertyList = $objPHPExcel->getProperties()->getCustomProperties(); + +echo '<b>Custom Properties: </b><br />'; +/** Loop through the list of custom properties **/ +foreach($customPropertyList as $customPropertyName) { + echo '<b>',$customPropertyName,': </b>'; + /** Retrieve the property value **/ + $propertyValue = $objPHPExcel->getProperties()->getCustomPropertyValue($customPropertyName); + /** Retrieve the property type **/ + $propertyType = $objPHPExcel->getProperties()->getCustomPropertyType($customPropertyName); + + /** Manipulate properties as appropriate for display purposes **/ + switch($propertyType) { + case 'i' : // integer + $propertyType = 'integer number'; + break; + case 'f' : // float + $propertyType = 'floating point number'; + break; + case 's' : // string + $propertyType = 'string'; + break; + case 'd' : // date + $propertyValue = date('l, d<\s\up>S</\s\up> F Y g:i A',$propertyValue); + $propertyType = 'date'; + break; + case 'b' : // boolean + $propertyValue = ($propertyValue) ? 'TRUE' : 'FALSE'; + $propertyType = 'boolean'; + break; + } + + echo $propertyValue,' (',$propertyType,')<br />'; +} + + + +?> +<body> +</html> diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader04.php b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader04.php new file mode 100644 index 0000000..05ff637 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader04.php @@ -0,0 +1,55 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reading WorkBook Data Example #04</title> + +</head> +<body> + +<h1>PHPExcel Reading WorkBook Data Example #04</h1> +<h2>Get a List of the Worksheets in a WorkBook</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +$inputFileName = './sampleData/example2.xls'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +echo 'Reading the number of Worksheets in the WorkBook<br />'; +/** Use the PHPExcel object's getSheetCount() method to get a count of the number of WorkSheets in the WorkBook */ +$sheetCount = $objPHPExcel->getSheetCount(); +echo 'There ',(($sheetCount == 1) ? 'is' : 'are'),' ',$sheetCount,' WorkSheet',(($sheetCount == 1) ? '' : 's'),' in the WorkBook<br /><br />'; + +echo 'Reading the names of Worksheets in the WorkBook<br />'; +/** Use the PHPExcel object's getSheetNames() method to get an array listing the names/titles of the WorkSheets in the WorkBook */ +$sheetNames = $objPHPExcel->getSheetNames(); +foreach($sheetNames as $sheetIndex => $sheetName) { + echo 'WorkSheet #',$sheetIndex,' is named "',$sheetName,'"<br />'; +} + + +?> +<body> +</html> diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/_notes/dwsync.xml new file mode 100644 index 0000000..cb68dad --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/_notes/dwsync.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="example1.xlsx" server="62.244.88.21/deciday/" local="131919462001927381" remote="131880384600000000" Dst="1" /> +<file name="example1.xls" server="62.244.88.21/deciday/" local="131919462002123976" remote="131880384600000000" Dst="1" /> +<file name="example2.xls" server="62.244.88.21/deciday/" local="131919462002307146" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xls b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xls new file mode 100644 index 0000000..0db0efd Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xls differ diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xlsx b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xlsx new file mode 100644 index 0000000..2224dd4 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/example2.xls b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/example2.xls new file mode 100644 index 0000000..18bfcf4 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/Examples/Reading WorkBook Data/sampleData/example2.xls differ diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/Examples/_notes/dwsync.xml new file mode 100644 index 0000000..c56c7bb --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="index.php" server="62.244.88.21/deciday/" local="131919461988727822" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/Examples/index.php b/site/config/PHPExcel-1.8/Documentation/Examples/index.php new file mode 100644 index 0000000..8eb8574 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/Examples/index.php @@ -0,0 +1,50 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Examples</title> + +</head> +<body> + +<?php + +$exampleTypeList = glob('./*',GLOB_ONLYDIR); + +foreach($exampleTypeList as $exampleType) { + + echo '<h1>PHPExcel ' . pathinfo($exampleType,PATHINFO_BASENAME) . ' Examples</h1>'; + + $exampleList = glob('./'.$exampleType.'/*.php'); + + foreach($exampleList as $exampleFile) { + $fileData = file_get_contents($exampleFile); + + $h1Pattern = '#<h1>(.*?)</h1>#'; + $h2Pattern = '#<h2>(.*?)</h2>#'; + + if (preg_match($h1Pattern, $fileData, $out)) { + $h1Text = $out[1]; + $h2Text = (preg_match($h2Pattern, $fileData, $out)) ? $out[1] : ''; + + echo '<a href="',$exampleFile,'">',$h1Text,'</a><br />'; + if (($h2Text > '') && + (pathinfo($exampleType,PATHINFO_BASENAME) != 'Calculations')) { + echo $h2Text,'<br />'; + } + } + + } +} + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/FunctionListByCategory.txt b/site/config/PHPExcel-1.8/Documentation/FunctionListByCategory.txt new file mode 100644 index 0000000..b23d9a1 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/FunctionListByCategory.txt @@ -0,0 +1,377 @@ +CATEGORY_CUBE + CUBEKPIMEMBER *** Not yet Implemented + CUBEMEMBER *** Not yet Implemented + CUBEMEMBERPROPERTY *** Not yet Implemented + CUBERANKEDMEMBER *** Not yet Implemented + CUBESET *** Not yet Implemented + CUBESETCOUNT *** Not yet Implemented + CUBEVALUE *** Not yet Implemented + +CATEGORY_DATABASE + DAVERAGE PHPExcel_Calculation_Database::DAVERAGE + DCOUNT PHPExcel_Calculation_Database::DCOUNT + DCOUNTA PHPExcel_Calculation_Database::DCOUNTA + DGET PHPExcel_Calculation_Database::DGET + DMAX PHPExcel_Calculation_Database::DMAX + DMIN PHPExcel_Calculation_Database::DMIN + DPRODUCT PHPExcel_Calculation_Database::DPRODUCT + DSTDEV PHPExcel_Calculation_Database::DSTDEV + DSTDEVP PHPExcel_Calculation_Database::DSTDEVP + DSUM PHPExcel_Calculation_Database::DSUM + DVAR PHPExcel_Calculation_Database::DVAR + DVARP PHPExcel_Calculation_Database::DVARP + +CATEGORY_DATE_AND_TIME + DATE PHPExcel_Calculation_DateTime::DATE + DATEDIF PHPExcel_Calculation_DateTime::DATEDIF + DATEVALUE PHPExcel_Calculation_DateTime::DATEVALUE + DAY PHPExcel_Calculation_DateTime::DAYOFMONTH + DAYS360 PHPExcel_Calculation_DateTime::DAYS360 + EDATE PHPExcel_Calculation_DateTime::EDATE + EOMONTH PHPExcel_Calculation_DateTime::EOMONTH + HOUR PHPExcel_Calculation_DateTime::HOUROFDAY + MINUTE PHPExcel_Calculation_DateTime::MINUTEOFHOUR + MONTH PHPExcel_Calculation_DateTime::MONTHOFYEAR + NETWORKDAYS PHPExcel_Calculation_DateTime::NETWORKDAYS + NOW PHPExcel_Calculation_DateTime::DATETIMENOW + SECOND PHPExcel_Calculation_DateTime::SECONDOFMINUTE + TIME PHPExcel_Calculation_DateTime::TIME + TIMEVALUE PHPExcel_Calculation_DateTime::TIMEVALUE + TODAY PHPExcel_Calculation_DateTime::DATENOW + WEEKDAY PHPExcel_Calculation_DateTime::DAYOFWEEK + WEEKNUM PHPExcel_Calculation_DateTime::WEEKOFYEAR + WORKDAY PHPExcel_Calculation_DateTime::WORKDAY + YEAR PHPExcel_Calculation_DateTime::YEAR + YEARFRAC PHPExcel_Calculation_DateTime::YEARFRAC + +CATEGORY_ENGINEERING + BESSELI PHPExcel_Calculation_Engineering::BESSELI + BESSELJ PHPExcel_Calculation_Engineering::BESSELJ + BESSELK PHPExcel_Calculation_Engineering::BESSELK + BESSELY PHPExcel_Calculation_Engineering::BESSELY + BIN2DEC PHPExcel_Calculation_Engineering::BINTODEC + BIN2HEX PHPExcel_Calculation_Engineering::BINTOHEX + BIN2OCT PHPExcel_Calculation_Engineering::BINTOOCT + COMPLEX PHPExcel_Calculation_Engineering::COMPLEX + CONVERT PHPExcel_Calculation_Engineering::CONVERTUOM + DEC2BIN PHPExcel_Calculation_Engineering::DECTOBIN + DEC2HEX PHPExcel_Calculation_Engineering::DECTOHEX + DEC2OCT PHPExcel_Calculation_Engineering::DECTOOCT + DELTA PHPExcel_Calculation_Engineering::DELTA + ERF PHPExcel_Calculation_Engineering::ERF + ERFC PHPExcel_Calculation_Engineering::ERFC + GESTEP PHPExcel_Calculation_Engineering::GESTEP + HEX2BIN PHPExcel_Calculation_Engineering::HEXTOBIN + HEX2DEC PHPExcel_Calculation_Engineering::HEXTODEC + HEX2OCT PHPExcel_Calculation_Engineering::HEXTOOCT + IMABS PHPExcel_Calculation_Engineering::IMABS + IMAGINARY PHPExcel_Calculation_Engineering::IMAGINARY + IMARGUMENT PHPExcel_Calculation_Engineering::IMARGUMENT + IMCONJUGATE PHPExcel_Calculation_Engineering::IMCONJUGATE + IMCOS PHPExcel_Calculation_Engineering::IMCOS + IMDIV PHPExcel_Calculation_Engineering::IMDIV + IMEXP PHPExcel_Calculation_Engineering::IMEXP + IMLN PHPExcel_Calculation_Engineering::IMLN + IMLOG10 PHPExcel_Calculation_Engineering::IMLOG10 + IMLOG2 PHPExcel_Calculation_Engineering::IMLOG2 + IMPOWER PHPExcel_Calculation_Engineering::IMPOWER + IMPRODUCT PHPExcel_Calculation_Engineering::IMPRODUCT + IMREAL PHPExcel_Calculation_Engineering::IMREAL + IMSIN PHPExcel_Calculation_Engineering::IMSIN + IMSQRT PHPExcel_Calculation_Engineering::IMSQRT + IMSUB PHPExcel_Calculation_Engineering::IMSUB + IMSUM PHPExcel_Calculation_Engineering::IMSUM + OCT2BIN PHPExcel_Calculation_Engineering::OCTTOBIN + OCT2DEC PHPExcel_Calculation_Engineering::OCTTODEC + OCT2HEX PHPExcel_Calculation_Engineering::OCTTOHEX + +CATEGORY_FINANCIAL + ACCRINT PHPExcel_Calculation_Financial::ACCRINT + ACCRINTM PHPExcel_Calculation_Financial::ACCRINTM + AMORDEGRC PHPExcel_Calculation_Financial::AMORDEGRC + AMORLINC PHPExcel_Calculation_Financial::AMORLINC + COUPDAYBS PHPExcel_Calculation_Financial::COUPDAYBS + COUPDAYS PHPExcel_Calculation_Financial::COUPDAYS + COUPDAYSNC PHPExcel_Calculation_Financial::COUPDAYSNC + COUPNCD PHPExcel_Calculation_Financial::COUPNCD + COUPNUM PHPExcel_Calculation_Financial::COUPNUM + COUPPCD PHPExcel_Calculation_Financial::COUPPCD + CUMIPMT PHPExcel_Calculation_Financial::CUMIPMT + CUMPRINC PHPExcel_Calculation_Financial::CUMPRINC + DB PHPExcel_Calculation_Financial::DB + DDB PHPExcel_Calculation_Financial::DDB + DISC PHPExcel_Calculation_Financial::DISC + DOLLARDE PHPExcel_Calculation_Financial::DOLLARDE + DOLLARFR PHPExcel_Calculation_Financial::DOLLARFR + DURATION *** Not yet Implemented + EFFECT PHPExcel_Calculation_Financial::EFFECT + FV PHPExcel_Calculation_Financial::FV + FVSCHEDULE PHPExcel_Calculation_Financial::FVSCHEDULE + INTRATE PHPExcel_Calculation_Financial::INTRATE + IPMT PHPExcel_Calculation_Financial::IPMT + IRR PHPExcel_Calculation_Financial::IRR + ISPMT PHPExcel_Calculation_Financial::ISPMT + MDURATION *** Not yet Implemented + MIRR PHPExcel_Calculation_Financial::MIRR + NOMINAL PHPExcel_Calculation_Financial::NOMINAL + NPER PHPExcel_Calculation_Financial::NPER + NPV PHPExcel_Calculation_Financial::NPV + ODDFPRICE *** Not yet Implemented + ODDFYIELD *** Not yet Implemented + ODDLPRICE *** Not yet Implemented + ODDLYIELD *** Not yet Implemented + PMT PHPExcel_Calculation_Financial::PMT + PPMT PHPExcel_Calculation_Financial::PPMT + PRICE PHPExcel_Calculation_Financial::PRICE + PRICEDISC PHPExcel_Calculation_Financial::PRICEDISC + PRICEMAT PHPExcel_Calculation_Financial::PRICEMAT + PV PHPExcel_Calculation_Financial::PV + RATE PHPExcel_Calculation_Financial::RATE + RECEIVED PHPExcel_Calculation_Financial::RECEIVED + SLN PHPExcel_Calculation_Financial::SLN + SYD PHPExcel_Calculation_Financial::SYD + TBILLEQ PHPExcel_Calculation_Financial::TBILLEQ + TBILLPRICE PHPExcel_Calculation_Financial::TBILLPRICE + TBILLYIELD PHPExcel_Calculation_Financial::TBILLYIELD + USDOLLAR *** Not yet Implemented + VDB *** Not yet Implemented + XIRR PHPExcel_Calculation_Financial::XIRR + XNPV PHPExcel_Calculation_Financial::XNPV + YIELD *** Not yet Implemented + YIELDDISC PHPExcel_Calculation_Financial::YIELDDISC + YIELDMAT PHPExcel_Calculation_Financial::YIELDMAT + +CATEGORY_INFORMATION + CELL *** Not yet Implemented + ERROR.TYPE PHPExcel_Calculation_Functions::ERROR_TYPE + INFO *** Not yet Implemented + ISBLANK PHPExcel_Calculation_Functions::IS_BLANK + ISERR PHPExcel_Calculation_Functions::IS_ERR + ISERROR PHPExcel_Calculation_Functions::IS_ERROR + ISEVEN PHPExcel_Calculation_Functions::IS_EVEN + ISLOGICAL PHPExcel_Calculation_Functions::IS_LOGICAL + ISNA PHPExcel_Calculation_Functions::IS_NA + ISNONTEXT PHPExcel_Calculation_Functions::IS_NONTEXT + ISNUMBER PHPExcel_Calculation_Functions::IS_NUMBER + ISODD PHPExcel_Calculation_Functions::IS_ODD + ISREF *** Not yet Implemented + ISTEXT PHPExcel_Calculation_Functions::IS_TEXT + N PHPExcel_Calculation_Functions::N + NA PHPExcel_Calculation_Functions::NA + TYPE PHPExcel_Calculation_Functions::TYPE + VERSION PHPExcel_Calculation_Functions::VERSION + +CATEGORY_LOGICAL + AND PHPExcel_Calculation_Logical::LOGICAL_AND + FALSE PHPExcel_Calculation_Logical::FALSE + IF PHPExcel_Calculation_Logical::STATEMENT_IF + IFERROR PHPExcel_Calculation_Logical::IFERROR + NOT PHPExcel_Calculation_Logical::NOT + OR PHPExcel_Calculation_Logical::LOGICAL_OR + TRUE PHPExcel_Calculation_Logical::TRUE + +CATEGORY_LOOKUP_AND_REFERENCE + ADDRESS PHPExcel_Calculation_LookupRef::CELL_ADDRESS + AREAS *** Not yet Implemented + CHOOSE PHPExcel_Calculation_LookupRef::CHOOSE + COLUMN PHPExcel_Calculation_LookupRef::COLUMN + COLUMNS PHPExcel_Calculation_LookupRef::COLUMNS + GETPIVOTDATA *** Not yet Implemented + HLOOKUP PHPExcel_Calculation_LookupRef::HLOOKUP + HYPERLINK PHPExcel_Calculation_LookupRef::HYPERLINK + INDEX PHPExcel_Calculation_LookupRef::INDEX + INDIRECT PHPExcel_Calculation_LookupRef::INDIRECT + LOOKUP PHPExcel_Calculation_LookupRef::LOOKUP + MATCH PHPExcel_Calculation_LookupRef::MATCH + OFFSET PHPExcel_Calculation_LookupRef::OFFSET + ROW PHPExcel_Calculation_LookupRef::ROW + ROWS PHPExcel_Calculation_LookupRef::ROWS + RTD *** Not yet Implemented + TRANSPOSE PHPExcel_Calculation_LookupRef::TRANSPOSE + VLOOKUP PHPExcel_Calculation_LookupRef::VLOOKUP + +CATEGORY_MATH_AND_TRIG + ABS abs + ACOS acos + ACOSH acosh + ASIN asin + ASINH asinh + ATAN atan + ATAN2 PHPExcel_Calculation_MathTrig::REVERSE_ATAN2 + ATANH atanh + CEILING PHPExcel_Calculation_MathTrig::CEILING + COMBIN PHPExcel_Calculation_MathTrig::COMBIN + COS cos + COSH cosh + DEGREES rad2deg + EVEN PHPExcel_Calculation_MathTrig::EVEN + EXP exp + FACT PHPExcel_Calculation_MathTrig::FACT + FACTDOUBLE PHPExcel_Calculation_MathTrig::FACTDOUBLE + FLOOR PHPExcel_Calculation_MathTrig::FLOOR + GCD PHPExcel_Calculation_MathTrig::GCD + INT PHPExcel_Calculation_MathTrig::INT + LCM PHPExcel_Calculation_MathTrig::LCM + LN log + LOG PHPExcel_Calculation_MathTrig::LOG_BASE + LOG10 log10 + MDETERM PHPExcel_Calculation_MathTrig::MDETERM + MINVERSE PHPExcel_Calculation_MathTrig::MINVERSE + MMULT PHPExcel_Calculation_MathTrig::MMULT + MOD PHPExcel_Calculation_MathTrig::MOD + MROUND PHPExcel_Calculation_MathTrig::MROUND + MULTINOMIAL PHPExcel_Calculation_MathTrig::MULTINOMIAL + ODD PHPExcel_Calculation_MathTrig::ODD + PI pi + POWER PHPExcel_Calculation_MathTrig::POWER + PRODUCT PHPExcel_Calculation_MathTrig::PRODUCT + QUOTIENT PHPExcel_Calculation_MathTrig::QUOTIENT + RADIANS deg2rad + RAND PHPExcel_Calculation_MathTrig::RAND + RANDBETWEEN PHPExcel_Calculation_MathTrig::RAND + ROMAN PHPExcel_Calculation_MathTrig::ROMAN + ROUND round + ROUNDDOWN PHPExcel_Calculation_MathTrig::ROUNDDOWN + ROUNDUP PHPExcel_Calculation_MathTrig::ROUNDUP + SERIESSUM PHPExcel_Calculation_MathTrig::SERIESSUM + SIGN PHPExcel_Calculation_MathTrig::SIGN + SIN sin + SINH sinh + SQRT sqrt + SQRTPI PHPExcel_Calculation_MathTrig::SQRTPI + SUBTOTAL PHPExcel_Calculation_MathTrig::SUBTOTAL + SUM PHPExcel_Calculation_MathTrig::SUM + SUMIF PHPExcel_Calculation_MathTrig::SUMIF + SUMIFS *** Not yet Implemented + SUMPRODUCT PHPExcel_Calculation_MathTrig::SUMPRODUCT + SUMSQ PHPExcel_Calculation_MathTrig::SUMSQ + SUMX2MY2 PHPExcel_Calculation_MathTrig::SUMX2MY2 + SUMX2PY2 PHPExcel_Calculation_MathTrig::SUMX2PY2 + SUMXMY2 PHPExcel_Calculation_MathTrig::SUMXMY2 + TAN tan + TANH tanh + TRUNC PHPExcel_Calculation_MathTrig::TRUNC + +CATEGORY_STATISTICAL + AVEDEV PHPExcel_Calculation_Statistical::AVEDEV + AVERAGE PHPExcel_Calculation_Statistical::AVERAGE + AVERAGEA PHPExcel_Calculation_Statistical::AVERAGEA + AVERAGEIF PHPExcel_Calculation_Statistical::AVERAGEIF + AVERAGEIFS *** Not yet Implemented + BETADIST PHPExcel_Calculation_Statistical::BETADIST + BETAINV PHPExcel_Calculation_Statistical::BETAINV + BINOMDIST PHPExcel_Calculation_Statistical::BINOMDIST + CHIDIST PHPExcel_Calculation_Statistical::CHIDIST + CHIINV PHPExcel_Calculation_Statistical::CHIINV + CHITEST *** Not yet Implemented + CONFIDENCE PHPExcel_Calculation_Statistical::CONFIDENCE + CORREL PHPExcel_Calculation_Statistical::CORREL + COUNT PHPExcel_Calculation_Statistical::COUNT + COUNTA PHPExcel_Calculation_Statistical::COUNTA + COUNTBLANK PHPExcel_Calculation_Statistical::COUNTBLANK + COUNTIF PHPExcel_Calculation_Statistical::COUNTIF + COUNTIFS *** Not yet Implemented + COVAR PHPExcel_Calculation_Statistical::COVAR + CRITBINOM PHPExcel_Calculation_Statistical::CRITBINOM + DEVSQ PHPExcel_Calculation_Statistical::DEVSQ + EXPONDIST PHPExcel_Calculation_Statistical::EXPONDIST + FDIST *** Not yet Implemented + FINV *** Not yet Implemented + FISHER PHPExcel_Calculation_Statistical::FISHER + FISHERINV PHPExcel_Calculation_Statistical::FISHERINV + FORECAST PHPExcel_Calculation_Statistical::FORECAST + FREQUENCY *** Not yet Implemented + FTEST *** Not yet Implemented + GAMMADIST PHPExcel_Calculation_Statistical::GAMMADIST + GAMMAINV PHPExcel_Calculation_Statistical::GAMMAINV + GAMMALN PHPExcel_Calculation_Statistical::GAMMALN + GEOMEAN PHPExcel_Calculation_Statistical::GEOMEAN + GROWTH PHPExcel_Calculation_Statistical::GROWTH + HARMEAN PHPExcel_Calculation_Statistical::HARMEAN + HYPGEOMDIST PHPExcel_Calculation_Statistical::HYPGEOMDIST + INTERCEPT PHPExcel_Calculation_Statistical::INTERCEPT + KURT PHPExcel_Calculation_Statistical::KURT + LARGE PHPExcel_Calculation_Statistical::LARGE + LINEST PHPExcel_Calculation_Statistical::LINEST + LOGEST PHPExcel_Calculation_Statistical::LOGEST + LOGINV PHPExcel_Calculation_Statistical::LOGINV + LOGNORMDIST PHPExcel_Calculation_Statistical::LOGNORMDIST + MAX PHPExcel_Calculation_Statistical::MAX + MAXA PHPExcel_Calculation_Statistical::MAXA + MAXIF PHPExcel_Calculation_Statistical::MAXIF + MEDIAN PHPExcel_Calculation_Statistical::MEDIAN + MEDIANIF *** Not yet Implemented + MIN PHPExcel_Calculation_Statistical::MIN + MINA PHPExcel_Calculation_Statistical::MINA + MINIF PHPExcel_Calculation_Statistical::MINIF + MODE PHPExcel_Calculation_Statistical::MODE + NEGBINOMDIST PHPExcel_Calculation_Statistical::NEGBINOMDIST + NORMDIST PHPExcel_Calculation_Statistical::NORMDIST + NORMINV PHPExcel_Calculation_Statistical::NORMINV + NORMSDIST PHPExcel_Calculation_Statistical::NORMSDIST + NORMSINV PHPExcel_Calculation_Statistical::NORMSINV + PEARSON PHPExcel_Calculation_Statistical::CORREL + PERCENTILE PHPExcel_Calculation_Statistical::PERCENTILE + PERCENTRANK PHPExcel_Calculation_Statistical::PERCENTRANK + PERMUT PHPExcel_Calculation_Statistical::PERMUT + POISSON PHPExcel_Calculation_Statistical::POISSON + PROB *** Not yet Implemented + QUARTILE PHPExcel_Calculation_Statistical::QUARTILE + RANK PHPExcel_Calculation_Statistical::RANK + RSQ PHPExcel_Calculation_Statistical::RSQ + SKEW PHPExcel_Calculation_Statistical::SKEW + SLOPE PHPExcel_Calculation_Statistical::SLOPE + SMALL PHPExcel_Calculation_Statistical::SMALL + STANDARDIZE PHPExcel_Calculation_Statistical::STANDARDIZE + STDEV PHPExcel_Calculation_Statistical::STDEV + STDEVA PHPExcel_Calculation_Statistical::STDEVA + STDEVP PHPExcel_Calculation_Statistical::STDEVP + STDEVPA PHPExcel_Calculation_Statistical::STDEVPA + STEYX PHPExcel_Calculation_Statistical::STEYX + TDIST PHPExcel_Calculation_Statistical::TDIST + TINV PHPExcel_Calculation_Statistical::TINV + TREND PHPExcel_Calculation_Statistical::TREND + TRIMMEAN PHPExcel_Calculation_Statistical::TRIMMEAN + TTEST *** Not yet Implemented + VAR PHPExcel_Calculation_Statistical::VARFunc + VARA PHPExcel_Calculation_Statistical::VARA + VARP PHPExcel_Calculation_Statistical::VARP + VARPA PHPExcel_Calculation_Statistical::VARPA + WEIBULL PHPExcel_Calculation_Statistical::WEIBULL + ZTEST PHPExcel_Calculation_Statistical::ZTEST + +CATEGORY_TEXT_AND_DATA + ASC *** Not yet Implemented + BAHTTEXT *** Not yet Implemented + CHAR PHPExcel_Calculation_TextData::CHARACTER + CLEAN PHPExcel_Calculation_TextData::TRIMNONPRINTABLE + CODE PHPExcel_Calculation_TextData::ASCIICODE + CONCATENATE PHPExcel_Calculation_TextData::CONCATENATE + DOLLAR PHPExcel_Calculation_TextData::DOLLAR + EXACT *** Not yet Implemented + FIND PHPExcel_Calculation_TextData::SEARCHSENSITIVE + FINDB PHPExcel_Calculation_TextData::SEARCHSENSITIVE + FIXED PHPExcel_Calculation_TextData::FIXEDFORMAT + JIS *** Not yet Implemented + LEFT PHPExcel_Calculation_TextData::LEFT + LEFTB PHPExcel_Calculation_TextData::LEFT + LEN PHPExcel_Calculation_TextData::STRINGLENGTH + LENB PHPExcel_Calculation_TextData::STRINGLENGTH + LOWER PHPExcel_Calculation_TextData::LOWERCASE + MID PHPExcel_Calculation_TextData::MID + MIDB PHPExcel_Calculation_TextData::MID + PHONETIC *** Not yet Implemented + PROPER PHPExcel_Calculation_TextData::PROPERCASE + REPLACE PHPExcel_Calculation_TextData::REPLACE + REPLACEB PHPExcel_Calculation_TextData::REPLACE + REPT str_repeat + RIGHT PHPExcel_Calculation_TextData::RIGHT + RIGHTB PHPExcel_Calculation_TextData::RIGHT + SEARCH PHPExcel_Calculation_TextData::SEARCHINSENSITIVE + SEARCHB PHPExcel_Calculation_TextData::SEARCHINSENSITIVE + SUBSTITUTE PHPExcel_Calculation_TextData::SUBSTITUTE + T PHPExcel_Calculation_TextData::RETURNSTRING + TEXT PHPExcel_Calculation_TextData::TEXTFORMAT + TRIM PHPExcel_Calculation_TextData::TRIMSPACES + UPPER PHPExcel_Calculation_TextData::UPPERCASE + VALUE PHPExcel_Calculation_TextData::VALUE diff --git a/site/config/PHPExcel-1.8/Documentation/FunctionListByName.txt b/site/config/PHPExcel-1.8/Documentation/FunctionListByName.txt new file mode 100644 index 0000000..45a9daf --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/FunctionListByName.txt @@ -0,0 +1,381 @@ +ABS CATEGORY_MATH_AND_TRIG abs +ACCRINT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::ACCRINT +ACCRINTM CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::ACCRINTM +ACOS CATEGORY_MATH_AND_TRIG acos +ACOSH CATEGORY_MATH_AND_TRIG acosh +ADDRESS CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::CELL_ADDRESS +AMORDEGRC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::AMORDEGRC +AMORLINC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::AMORLINC +AND CATEGORY_LOGICAL PHPExcel_Calculation_Logical::LOGICAL_AND +AREAS CATEGORY_LOOKUP_AND_REFERENCE *** Not yet Implemented +ASC CATEGORY_TEXT_AND_DATA *** Not yet Implemented +ASIN CATEGORY_MATH_AND_TRIG asin +ASINH CATEGORY_MATH_AND_TRIG asinh +ATAN CATEGORY_MATH_AND_TRIG atan +ATAN2 CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::REVERSE_ATAN2 +ATANH CATEGORY_MATH_AND_TRIG atanh +AVEDEV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::AVEDEV +AVERAGE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::AVERAGE +AVERAGEA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::AVERAGEA +AVERAGEIF CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::AVERAGEIF +AVERAGEIFS CATEGORY_STATISTICAL *** Not yet Implemented + +BAHTTEXT CATEGORY_TEXT_AND_DATA *** Not yet Implemented +BESSELI CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BESSELI +BESSELJ CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BESSELJ +BESSELK CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BESSELK +BESSELY CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BESSELY +BETADIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::BETADIST +BETAINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::BETAINV +BIN2DEC CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BINTODEC +BIN2HEX CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BINTOHEX +BIN2OCT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BINTOOCT +BINOMDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::BINOMDIST + +CEILING CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::CEILING +CELL CATEGORY_INFORMATION *** Not yet Implemented +CHAR CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::CHARACTER +CHIDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CHIDIST +CHIINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CHIINV +CHITEST CATEGORY_STATISTICAL *** Not yet Implemented +CHOOSE CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::CHOOSE +CLEAN CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::TRIMNONPRINTABLE +CODE CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::ASCIICODE +COLUMN CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::COLUMN +COLUMNS CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::COLUMNS +COMBIN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::COMBIN +COMPLEX CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::COMPLEX +CONCATENATE CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::CONCATENATE +CONFIDENCE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CONFIDENCE +CONVERT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::CONVERTUOM +CORREL CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CORREL +COS CATEGORY_MATH_AND_TRIG cos +COSH CATEGORY_MATH_AND_TRIG cosh +COUNT CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::COUNT +COUNTA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::COUNTA +COUNTBLANK CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::COUNTBLANK +COUNTIF CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::COUNTIF +COUNTIFS CATEGORY_STATISTICAL *** Not yet Implemented +COUPDAYBS CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPDAYBS +COUPDAYS CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPDAYS +COUPDAYSNC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPDAYSNC +COUPNCD CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPNCD +COUPNUM CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPNUM +COUPPCD CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPPCD +COVAR CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::COVAR +CRITBINOM CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CRITBINOM +CUBEKPIMEMBER CATEGORY_CUBE *** Not yet Implemented +CUBEMEMBER CATEGORY_CUBE *** Not yet Implemented +CUBEMEMBERPROPERTY CATEGORY_CUBE *** Not yet Implemented +CUBERANKEDMEMBER CATEGORY_CUBE *** Not yet Implemented +CUBESET CATEGORY_CUBE *** Not yet Implemented +CUBESETCOUNT CATEGORY_CUBE *** Not yet Implemented +CUBEVALUE CATEGORY_CUBE *** Not yet Implemented +CUMIPMT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::CUMIPMT +CUMPRINC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::CUMPRINC + +DATE CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DATE +DATEDIF CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DATEDIF +DATEVALUE CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DATEVALUE +DAVERAGE CATEGORY_DATABASE PHPExcel_Calculation_Database::DAVERAGE +DAY CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DAYOFMONTH +DAYS360 CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DAYS360 +DB CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::DB +DCOUNT CATEGORY_DATABASE PHPExcel_Calculation_Database::DCOUNT +DCOUNTA CATEGORY_DATABASE PHPExcel_Calculation_Database::DCOUNTA +DDB CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::DDB +DEC2BIN CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::DECTOBIN +DEC2HEX CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::DECTOHEX +DEC2OCT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::DECTOOCT +DEGREES CATEGORY_MATH_AND_TRIG rad2deg +DELTA CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::DELTA +DEVSQ CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::DEVSQ +DGET CATEGORY_DATABASE PHPExcel_Calculation_Database::DGET +DISC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::DISC +DMAX CATEGORY_DATABASE PHPExcel_Calculation_Database::DMAX +DMIN CATEGORY_DATABASE PHPExcel_Calculation_Database::DMIN +DOLLAR CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::DOLLAR +DOLLARDE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::DOLLARDE +DOLLARFR CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::DOLLARFR +DPRODUCT CATEGORY_DATABASE PHPExcel_Calculation_Database::DPRODUCT +DSTDEV CATEGORY_DATABASE PHPExcel_Calculation_Database::DSTDEV +DSTDEVP CATEGORY_DATABASE PHPExcel_Calculation_Database::DSTDEVP +DSUM CATEGORY_DATABASE PHPExcel_Calculation_Database::DSUM +DURATION CATEGORY_FINANCIAL *** Not yet Implemented +DVAR CATEGORY_DATABASE PHPExcel_Calculation_Database::DVAR +DVARP CATEGORY_DATABASE PHPExcel_Calculation_Database::DVARP + +EDATE CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::EDATE +EFFECT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::EFFECT +EOMONTH CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::EOMONTH +ERF CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::ERF +ERFC CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::ERFC +ERROR.TYPE CATEGORY_INFORMATION PHPExcel_Calculation_Functions::ERROR_TYPE +EVEN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::EVEN +EXACT CATEGORY_TEXT_AND_DATA *** Not yet Implemented +EXP CATEGORY_MATH_AND_TRIG exp +EXPONDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::EXPONDIST + +FACT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::FACT +FACTDOUBLE CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::FACTDOUBLE +FALSE CATEGORY_LOGICAL PHPExcel_Calculation_Logical::FALSE +FDIST CATEGORY_STATISTICAL *** Not yet Implemented +FIND CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::SEARCHSENSITIVE +FINDB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::SEARCHSENSITIVE +FINV CATEGORY_STATISTICAL *** Not yet Implemented +FISHER CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::FISHER +FISHERINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::FISHERINV +FIXED CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::FIXEDFORMAT +FLOOR CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::FLOOR +FORECAST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::FORECAST +FREQUENCY CATEGORY_STATISTICAL *** Not yet Implemented +FTEST CATEGORY_STATISTICAL *** Not yet Implemented +FV CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::FV +FVSCHEDULE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::FVSCHEDULE + +GAMMADIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::GAMMADIST +GAMMAINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::GAMMAINV +GAMMALN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::GAMMALN +GCD CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::GCD +GEOMEAN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::GEOMEAN +GESTEP CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::GESTEP +GETPIVOTDATA CATEGORY_LOOKUP_AND_REFERENCE *** Not yet Implemented +GROWTH CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::GROWTH + +HARMEAN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::HARMEAN +HEX2BIN CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::HEXTOBIN +HEX2DEC CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::HEXTODEC +HEX2OCT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::HEXTOOCT +HLOOKUP CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::HLOOKUP +HOUR CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::HOUROFDAY +HYPERLINK CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::HYPERLINK +HYPGEOMDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::HYPGEOMDIST + +IF CATEGORY_LOGICAL PHPExcel_Calculation_Logical::STATEMENT_IF +IFERROR CATEGORY_LOGICAL PHPExcel_Calculation_Logical::IFERROR +IMABS CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMABS +IMAGINARY CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMAGINARY +IMARGUMENT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMARGUMENT +IMCONJUGATE CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMCONJUGATE +IMCOS CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMCOS +IMDIV CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMDIV +IMEXP CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMEXP +IMLN CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMLN +IMLOG10 CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMLOG10 +IMLOG2 CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMLOG2 +IMPOWER CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMPOWER +IMPRODUCT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMPRODUCT +IMREAL CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMREAL +IMSIN CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMSIN +IMSQRT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMSQRT +IMSUB CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMSUB +IMSUM CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMSUM +INDEX CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::INDEX +INDIRECT CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::INDIRECT +INFO CATEGORY_INFORMATION *** Not yet Implemented +INT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::INT +INTERCEPT CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::INTERCEPT +INTRATE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::INTRATE +IPMT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::IPMT +IRR CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::IRR +ISBLANK CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_BLANK +ISERR CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_ERR +ISERROR CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_ERROR +ISEVEN CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_EVEN +ISLOGICAL CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_LOGICAL +ISNA CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_NA +ISNONTEXT CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_NONTEXT +ISNUMBER CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_NUMBER +ISODD CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_ODD +ISPMT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::ISPMT +ISREF CATEGORY_INFORMATION *** Not yet Implemented +ISTEXT CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_TEXT + +JIS CATEGORY_TEXT_AND_DATA *** Not yet Implemented + +KURT CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::KURT + +LARGE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::LARGE +LCM CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::LCM +LEFT CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::LEFT +LEFTB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::LEFT +LEN CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::STRINGLENGTH +LENB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::STRINGLENGTH +LINEST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::LINEST +LN CATEGORY_MATH_AND_TRIG log +LOG CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::LOG_BASE +LOG10 CATEGORY_MATH_AND_TRIG log10 +LOGEST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::LOGEST +LOGINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::LOGINV +LOGNORMDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::LOGNORMDIST +LOOKUP CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::LOOKUP +LOWER CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::LOWERCASE + +MATCH CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::MATCH +MAX CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MAX +MAXA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MAXA +MAXIF CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MAXIF +MDETERM CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MDETERM +MDURATION CATEGORY_FINANCIAL *** Not yet Implemented +MEDIAN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MEDIAN +MEDIANIF CATEGORY_STATISTICAL *** Not yet Implemented +MID CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::MID +MIDB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::MID +MIN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MIN +MINA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MINA +MINIF CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MINIF +MINUTE CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::MINUTEOFHOUR +MINVERSE CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MINVERSE +MIRR CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::MIRR +MMULT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MMULT +MOD CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MOD +MODE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MODE +MONTH CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::MONTHOFYEAR +MROUND CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MROUND +MULTINOMIAL CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MULTINOMIAL + +N CATEGORY_INFORMATION PHPExcel_Calculation_Functions::N +NA CATEGORY_INFORMATION PHPExcel_Calculation_Functions::NA +NEGBINOMDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::NEGBINOMDIST +NETWORKDAYS CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::NETWORKDAYS +NOMINAL CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::NOMINAL +NORMDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::NORMDIST +NORMINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::NORMINV +NORMSDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::NORMSDIST +NORMSINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::NORMSINV +NOT CATEGORY_LOGICAL PHPExcel_Calculation_Logical::NOT +NOW CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DATETIMENOW +NPER CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::NPER +NPV CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::NPV + +OCT2BIN CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::OCTTOBIN +OCT2DEC CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::OCTTODEC +OCT2HEX CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::OCTTOHEX +ODD CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::ODD +ODDFPRICE CATEGORY_FINANCIAL *** Not yet Implemented +ODDFYIELD CATEGORY_FINANCIAL *** Not yet Implemented +ODDLPRICE CATEGORY_FINANCIAL *** Not yet Implemented +ODDLYIELD CATEGORY_FINANCIAL *** Not yet Implemented +OFFSET CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::OFFSET +OR CATEGORY_LOGICAL PHPExcel_Calculation_Logical::LOGICAL_OR + +PEARSON CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CORREL +PERCENTILE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::PERCENTILE +PERCENTRANK CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::PERCENTRANK +PERMUT CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::PERMUT +PHONETIC CATEGORY_TEXT_AND_DATA *** Not yet Implemented +PI CATEGORY_MATH_AND_TRIG pi +PMT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PMT +POISSON CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::POISSON +POWER CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::POWER +PPMT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PPMT +PRICE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PRICE +PRICEDISC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PRICEDISC +PRICEMAT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PRICEMAT +PROB CATEGORY_STATISTICAL *** Not yet Implemented +PRODUCT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::PRODUCT +PROPER CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::PROPERCASE +PV CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PV + +QUARTILE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::QUARTILE +QUOTIENT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::QUOTIENT + +RADIANS CATEGORY_MATH_AND_TRIG deg2rad +RAND CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::RAND +RANDBETWEEN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::RAND +RANK CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::RANK +RATE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::RATE +RECEIVED CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::RECEIVED +REPLACE CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::REPLACE +REPLACEB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::REPLACE +REPT CATEGORY_TEXT_AND_DATA str_repeat +RIGHT CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::RIGHT +RIGHTB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::RIGHT +ROMAN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::ROMAN +ROUND CATEGORY_MATH_AND_TRIG round +ROUNDDOWN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::ROUNDDOWN +ROUNDUP CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::ROUNDUP +ROW CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::ROW +ROWS CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::ROWS +RSQ CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::RSQ +RTD CATEGORY_LOOKUP_AND_REFERENCE *** Not yet Implemented + +SEARCH CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::SEARCHINSENSITIVE +SEARCHB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::SEARCHINSENSITIVE +SECOND CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::SECONDOFMINUTE +SERIESSUM CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SERIESSUM +SIGN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SIGN +SIN CATEGORY_MATH_AND_TRIG sin +SINH CATEGORY_MATH_AND_TRIG sinh +SKEW CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::SKEW +SLN CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::SLN +SLOPE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::SLOPE +SMALL CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::SMALL +SQRT CATEGORY_MATH_AND_TRIG sqrt +SQRTPI CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SQRTPI +STANDARDIZE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STANDARDIZE +STDEV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STDEV +STDEVA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STDEVA +STDEVP CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STDEVP +STDEVPA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STDEVPA +STEYX CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STEYX +SUBSTITUTE CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::SUBSTITUTE +SUBTOTAL CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUBTOTAL +SUM CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUM +SUMIF CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMIF +SUMIFS CATEGORY_MATH_AND_TRIG *** Not yet Implemented +SUMPRODUCT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMPRODUCT +SUMSQ CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMSQ +SUMX2MY2 CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMX2MY2 +SUMX2PY2 CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMX2PY2 +SUMXMY2 CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMXMY2 +SYD CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::SYD + +T CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::RETURNSTRING +TAN CATEGORY_MATH_AND_TRIG tan +TANH CATEGORY_MATH_AND_TRIG tanh +TBILLEQ CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::TBILLEQ +TBILLPRICE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::TBILLPRICE +TBILLYIELD CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::TBILLYIELD +TDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::TDIST +TEXT CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::TEXTFORMAT +TIME CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::TIME +TIMEVALUE CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::TIMEVALUE +TINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::TINV +TODAY CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DATENOW +TRANSPOSE CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::TRANSPOSE +TREND CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::TREND +TRIM CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::TRIMSPACES +TRIMMEAN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::TRIMMEAN +TRUE CATEGORY_LOGICAL PHPExcel_Calculation_Logical::TRUE +TRUNC CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::TRUNC +TTEST CATEGORY_STATISTICAL *** Not yet Implemented +TYPE CATEGORY_INFORMATION PHPExcel_Calculation_Functions::TYPE + +UPPER CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::UPPERCASE +USDOLLAR CATEGORY_FINANCIAL *** Not yet Implemented + +VALUE CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::VALUE +VAR CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::VARFunc +VARA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::VARA +VARP CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::VARP +VARPA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::VARPA +VDB CATEGORY_FINANCIAL *** Not yet Implemented +VERSION CATEGORY_INFORMATION PHPExcel_Calculation_Functions::VERSION +VLOOKUP CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::VLOOKUP + +WEEKDAY CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DAYOFWEEK +WEEKNUM CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::WEEKOFYEAR +WEIBULL CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::WEIBULL +WORKDAY CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::WORKDAY + +XIRR CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::XIRR +XNPV CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::XNPV + +YEAR CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::YEAR +YEARFRAC CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::YEARFRAC +YIELD CATEGORY_FINANCIAL *** Not yet Implemented +YIELDDISC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::YIELDDISC +YIELDMAT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::YIELDMAT + +ZTEST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::ZTEST diff --git a/site/config/PHPExcel-1.8/Documentation/Functionality Cross-Reference.xls b/site/config/PHPExcel-1.8/Documentation/Functionality Cross-Reference.xls new file mode 100644 index 0000000..227fd61 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/Functionality Cross-Reference.xls differ diff --git a/site/config/PHPExcel-1.8/Documentation/PHPExcel AutoFilter Reference developer documentation.doc b/site/config/PHPExcel-1.8/Documentation/PHPExcel AutoFilter Reference developer documentation.doc new file mode 100644 index 0000000..208b202 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/PHPExcel AutoFilter Reference developer documentation.doc differ diff --git a/site/config/PHPExcel-1.8/Documentation/PHPExcel Function Reference developer documentation.doc b/site/config/PHPExcel-1.8/Documentation/PHPExcel Function Reference developer documentation.doc new file mode 100644 index 0000000..57d218c Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/PHPExcel Function Reference developer documentation.doc differ diff --git a/site/config/PHPExcel-1.8/Documentation/PHPExcel User Documentation - Reading Spreadsheet Files.doc b/site/config/PHPExcel-1.8/Documentation/PHPExcel User Documentation - Reading Spreadsheet Files.doc new file mode 100644 index 0000000..ef3954d Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/PHPExcel User Documentation - Reading Spreadsheet Files.doc differ diff --git a/site/config/PHPExcel-1.8/Documentation/PHPExcel developer documentation.doc b/site/config/PHPExcel-1.8/Documentation/PHPExcel developer documentation.doc new file mode 100644 index 0000000..52cc964 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/PHPExcel developer documentation.doc differ diff --git a/site/config/PHPExcel-1.8/Documentation/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/_notes/dwsync.xml new file mode 100644 index 0000000..bd3620c --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="FunctionListByCategory.txt" server="62.244.88.21/deciday/" local="131919462004228506" remote="131880384600000000" Dst="1" /> +<file name="Functionality Cross-Reference.xls" server="62.244.88.21/deciday/" local="131919462004581040" remote="131880384600000000" Dst="1" /> +<file name="FunctionListByName.txt" server="62.244.88.21/deciday/" local="131919462004588929" remote="131880384600000000" Dst="1" /> +<file name="PHPExcel Function Reference developer documentation.doc" server="62.244.88.21/deciday/" local="131919462057887305" remote="131880384600000000" Dst="1" /> +<file name="PHPExcel developer documentation.doc" server="62.244.88.21/deciday/" local="131919462060739530" remote="131880384600000000" Dst="1" /> +<file name="PHPExcel AutoFilter Reference developer documentation.doc" server="62.244.88.21/deciday/" local="131919462060988868" remote="131880384600000000" Dst="1" /> +<file name="PHPExcel User Documentation - Reading Spreadsheet Files.doc" server="62.244.88.21/deciday/" local="131919462061283156" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Architecture.cd b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Architecture.cd new file mode 100644 index 0000000..afc1dbd --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Architecture.cd @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="utf-8"?> +<ClassDiagram MajorVersion="1" MinorVersion="1"> + <Font Name="Tahoma" Size="8.25" /> + <Class Name="ClassDiagrams.PHPExcel" Collapsed="true"> + <Position X="3.5" Y="0.5" Width="1.5" /> + <TypeIdentifier> + <FileName>Classes\PHPExcel.cs</FileName> + <HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAA=</HashCode> + </TypeIdentifier> + <ShowAsAssociation> + <Property Name="Worksheets" /> + </ShowAsAssociation> + </Class> + <Class Name="ClassDiagrams.Worksheet" Collapsed="true"> + <Position X="0.5" Y="0.5" Width="1.5" /> + <TypeIdentifier> + <FileName>Classes\Worksheet.cs</FileName> + <HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=</HashCode> + </TypeIdentifier> + </Class> + <Interface Name="ClassDiagrams.PHPExcel_Reader_IReader" Collapsed="true"> + <Position X="2.25" Y="2.5" Width="2" /> + <TypeIdentifier> + <FileName>Classes\IReader.cs</FileName> + <HashCode>AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=</HashCode> + </TypeIdentifier> + <ShowAsAssociation> + <Property Name="reads" /> + </ShowAsAssociation> + <AssociationLine Name="reads" Type="ClassDiagrams.PHPExcel"> + <MemberNameLabel ManuallyPlaced="true" ManuallySized="true"> + <Position X="0.152" Y="1.279" Height="0.16" Width="0.597" /> + </MemberNameLabel> + </AssociationLine> + </Interface> + <Interface Name="ClassDiagrams.PHPExcel_Writer_IWriter" Collapsed="true"> + <Position X="4.5" Y="2.5" Width="2" /> + <TypeIdentifier> + <FileName>Classes\IWriter.cs</FileName> + <HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=</HashCode> + </TypeIdentifier> + <ShowAsAssociation> + <Property Name="writes" /> + </ShowAsAssociation> + <AssociationLine Name="writes" Type="ClassDiagrams.PHPExcel"> + <MemberNameLabel ManuallyPlaced="true" ManuallySized="true"> + <Position X="-1.002" Y="1.298" Height="0.16" Width="0.764" /> + </MemberNameLabel> + </AssociationLine> + </Interface> +</ClassDiagram> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Architecture.png b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Architecture.png new file mode 100644 index 0000000..3fc7655 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Architecture.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ClassDiagrams.csproj b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ClassDiagrams.csproj new file mode 100644 index 0000000..5920f3d --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ClassDiagrams.csproj @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5"> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <ProductVersion>8.0.50727</ProductVersion> + <SchemaVersion>2.0</SchemaVersion> + <ProjectGuid>{CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}</ProjectGuid> + <OutputType>Exe</OutputType> + <AppDesignerFolder>Properties</AppDesignerFolder> + <RootNamespace>ClassDiagrams</RootNamespace> + <AssemblyName>ClassDiagrams</AssemblyName> + <FileUpgradeFlags> + </FileUpgradeFlags> + <OldToolsVersion>2.0</OldToolsVersion> + <UpgradeBackupLocation> + </UpgradeBackupLocation> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> + <DebugSymbols>true</DebugSymbols> + <DebugType>full</DebugType> + <Optimize>false</Optimize> + <OutputPath>bin\Debug\</OutputPath> + <DefineConstants>DEBUG;TRACE</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> + <DebugType>pdbonly</DebugType> + <Optimize>true</Optimize> + <OutputPath>bin\Release\</OutputPath> + <DefineConstants>TRACE</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> + <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> + <!-- To modify your build process, add your task inside one of the targets below and uncomment it. + Other similar extension points exist, see Microsoft.Common.targets. + <Target Name="BeforeBuild"> + </Target> + <Target Name="AfterBuild"> + </Target> + --> + <ItemGroup> + <None Include="Architecture.cd" /> + <None Include="ReaderWriter.cd" /> + </ItemGroup> + <ItemGroup> + <Compile Include="Classes\IReader.cs" /> + <Compile Include="Classes\IWriter.cs" /> + <Compile Include="Classes\PHPExcel_IOFactory.cs" /> + <Compile Include="Classes\Worksheet.cs" /> + <Compile Include="Classes\PHPExcel.cs" /> + <Compile Include="Classes\PHPExcel_Reader_Excel2007.cs" /> + <Compile Include="Classes\PHPExcel_Reader_Serialized.cs" /> + <Compile Include="Classes\PHPExcel_Writer_Excel2007.cs" /> + <Compile Include="Classes\PHPExcel_Writer_Serialized.cs" /> + <Compile Include="Classes\PHPExcel_Reader_Excel5.cs" /> + </ItemGroup> + <ItemGroup> + <Content Include="Exports\Architecture.png" /> + <Content Include="Exports\ReaderWriter.png" /> + </ItemGroup> +</Project> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ClassDiagrams.csproj.user b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ClassDiagrams.csproj.user new file mode 100644 index 0000000..6a34e7d --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ClassDiagrams.csproj.user @@ -0,0 +1,5 @@ +<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <ProjectView>ShowAllFiles</ProjectView> + </PropertyGroup> +</Project> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ClassDiagrams.sln b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ClassDiagrams.sln new file mode 100644 index 0000000..3ed7732 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ClassDiagrams.sln @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 10.00 +# Visual Studio 2008 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClassDiagrams", "ClassDiagrams.csproj", "{CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}.Debug|Any CPU.Build.0 = Debug|Any CPU + {CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}.Release|Any CPU.ActiveCfg = Release|Any CPU + {CC8CD7D2-8EFF-48E5-A17A-C1C482744D31}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/IReader.cs b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/IReader.cs new file mode 100644 index 0000000..96c11af --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/IReader.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace ClassDiagrams +{ + public interface PHPExcel_Reader_IReader + { + PHPExcel reads + { + get; + set; + } + } +} diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/IWriter.cs b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/IWriter.cs new file mode 100644 index 0000000..d1d6642 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/IWriter.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace ClassDiagrams +{ + public interface PHPExcel_Writer_IWriter + { + PHPExcel writes + { + get; + set; + } + } +} diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel.cs b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel.cs new file mode 100644 index 0000000..5efaa5b --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel.cs @@ -0,0 +1,40 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace ClassDiagrams +{ + public class PHPExcel + { + /// <remarks></remarks> + public Worksheet Worksheets + { + get + { + throw new System.NotImplementedException(); + } + set + { + } + } + } + + public class PHPExcel_Writer_PDF : PHPExcel_Writer_IWriter + { + #region PHPExcel_Writer_IWriter Members + + public PHPExcel writes + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } +} diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_IOFactory.cs b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_IOFactory.cs new file mode 100644 index 0000000..444712c --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_IOFactory.cs @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace ClassDiagrams +{ + public class PHPExcel_IOFactory + { + public PHPExcel_Reader_IReader createsReader + { + get + { + throw new System.NotImplementedException(); + } + set + { + } + } + + public PHPExcel_Writer_IWriter createsWriter + { + get + { + throw new System.NotImplementedException(); + } + set + { + } + } + + public PHPExcel_Writer_IWriter createWriter() + { + throw new System.NotImplementedException(); + } + + public PHPExcel_Reader_IReader createReader() + { + throw new System.NotImplementedException(); + } + } +} diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel2007.cs b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel2007.cs new file mode 100644 index 0000000..5cf6e3d --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel2007.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace ClassDiagrams +{ + public class PHPExcel_Reader_Excel2007 : PHPExcel_Reader_IReader + { + #region IReader Members + + public PHPExcel reads + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } +} diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel5.cs b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel5.cs new file mode 100644 index 0000000..e407212 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Reader_Excel5.cs @@ -0,0 +1,63 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace ClassDiagrams +{ + public class PHPExcel_Reader_Excel5 : PHPExcel_Reader_IReader + { + #region PHPExcel_Writer_IReader Members + + public PHPExcel reads + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } + + public class PHPExcel_Reader_Excel2003XML : PHPExcel_Reader_IReader + { + #region PHPExcel_Writer_IReader Members + + public PHPExcel reads + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } + + public class PHPExcel_Reader_SYLK : PHPExcel_Reader_IReader + { + #region PHPExcel_Writer_IReader Members + + public PHPExcel reads + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } +} diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Reader_Serialized.cs b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Reader_Serialized.cs new file mode 100644 index 0000000..ea114c8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Reader_Serialized.cs @@ -0,0 +1,44 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace ClassDiagrams +{ + public class PHPExcel_Reader_Serialized : PHPExcel_Reader_IReader + { + #region IReader Members + + public PHPExcel reads + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } + + public class PHPExcel_Reader_CSV : PHPExcel_Reader_IReader + { + #region IReader Members + + public PHPExcel reads + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } +} diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Writer_Excel2007.cs b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Writer_Excel2007.cs new file mode 100644 index 0000000..03edda9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Writer_Excel2007.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace ClassDiagrams +{ + public class PHPExcel_Writer_Excel2007 : PHPExcel_Writer_IWriter + { + #region IWriter Members + + public PHPExcel writes + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } +} diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Writer_Serialized.cs b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Writer_Serialized.cs new file mode 100644 index 0000000..cf8af20 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/PHPExcel_Writer_Serialized.cs @@ -0,0 +1,82 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace ClassDiagrams +{ + public class PHPExcel_Writer_Serialized : PHPExcel_Writer_IWriter + { + #region IWriter Members + + public PHPExcel writes + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } + + public class PHPExcel_Writer_CSV : PHPExcel_Writer_IWriter + { + #region IWriter Members + + public PHPExcel writes + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } + + public class PHPExcel_Writer_Excel5 : PHPExcel_Writer_IWriter + { + #region IWriter Members + + public PHPExcel writes + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } + + public class PHPExcel_Writer_HTML : PHPExcel_Writer_IWriter + { + #region IWriter Members + + public PHPExcel writes + { + get + { + throw new Exception("The method or operation is not implemented."); + } + set + { + throw new Exception("The method or operation is not implemented."); + } + } + + #endregion + } +} diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/Worksheet.cs b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/Worksheet.cs new file mode 100644 index 0000000..fdcf0ff --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/Worksheet.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace ClassDiagrams +{ + public class Worksheet + { + } + + public class CopyOfWorksheet + { + } +} diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/_notes/dwsync.xml new file mode 100644 index 0000000..cfcb184 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Classes/_notes/dwsync.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="IReader.cs" server="62.244.88.21/deciday/" local="131919461977054249" remote="131880384600000000" Dst="1" /> +<file name="IWriter.cs" server="62.244.88.21/deciday/" local="131919461977414330" remote="131880384600000000" Dst="1" /> +<file name="PHPExcel.cs" server="62.244.88.21/deciday/" local="131919461978063446" remote="131880384600000000" Dst="1" /> +<file name="PHPExcel_IOFactory.cs" server="62.244.88.21/deciday/" local="131919461978249684" remote="131880384600000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel2007.cs" server="62.244.88.21/deciday/" local="131919461978456928" remote="131880384600000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel5.cs" server="62.244.88.21/deciday/" local="131919461978943574" remote="131880384600000000" Dst="1" /> +<file name="PHPExcel_Reader_Serialized.cs" server="62.244.88.21/deciday/" local="131919461979677546" remote="131880384600000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007.cs" server="62.244.88.21/deciday/" local="131919461979863857" remote="131880384600000000" Dst="1" /> +<file name="PHPExcel_Writer_Serialized.cs" server="62.244.88.21/deciday/" local="131919461980280577" remote="131880384600000000" Dst="1" /> +<file name="Worksheet.cs" server="62.244.88.21/deciday/" local="131919461980789697" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Exports/Architecture.png b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Exports/Architecture.png new file mode 100644 index 0000000..1324818 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Exports/Architecture.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Exports/ReaderWriter.png b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Exports/ReaderWriter.png new file mode 100644 index 0000000..b915faa Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Exports/ReaderWriter.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Exports/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Exports/_notes/dwsync.xml new file mode 100644 index 0000000..d8ab7ff --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/Exports/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Architecture.png" server="62.244.88.21/deciday/" local="131919461981258555" remote="131880384600000000" Dst="1" /> +<file name="ReaderWriter.png" server="62.244.88.21/deciday/" local="131919461982442879" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ReaderWriter.cd b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ReaderWriter.cd new file mode 100644 index 0000000..bbaf291 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ReaderWriter.cd @@ -0,0 +1,135 @@ +<?xml version="1.0" encoding="utf-8"?> +<ClassDiagram MajorVersion="1" MinorVersion="1"> + <Class Name="ClassDiagrams.PHPExcel_Reader_Excel2007" Collapsed="true" BaseTypeListCollapsed="true"> + <Position X="0.5" Y="3.5" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_Reader_Excel2007.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Class Name="ClassDiagrams.PHPExcel_Writer_Excel2007" Collapsed="true" BaseTypeListCollapsed="true"> + <Position X="3.5" Y="3.5" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_Writer_Excel2007.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Class Name="ClassDiagrams.PHPExcel_Reader_Serialized" Collapsed="true" BaseTypeListCollapsed="true"> + <Position X="0.5" Y="4.25" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_Reader_Serialized.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Class Name="ClassDiagrams.PHPExcel_Writer_Serialized" Collapsed="true" BaseTypeListCollapsed="true"> + <Position X="3.5" Y="4.25" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_Writer_Serialized.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Class Name="ClassDiagrams.PHPExcel_Reader_CSV" Collapsed="true" BaseTypeListCollapsed="true"> + <Position X="0.5" Y="5" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_Reader_Serialized.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Class Name="ClassDiagrams.PHPExcel_Writer_CSV" Collapsed="true" BaseTypeListCollapsed="true"> + <Position X="3.5" Y="5" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_Writer_Serialized.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Class Name="ClassDiagrams.PHPExcel_Writer_Excel5" Collapsed="true" BaseTypeListCollapsed="true"> + <Position X="3.5" Y="5.75" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_Writer_Serialized.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Class Name="ClassDiagrams.PHPExcel_Writer_HTML" Collapsed="true" BaseTypeListCollapsed="true"> + <Position X="3.5" Y="6.5" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_Writer_Serialized.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Class Name="ClassDiagrams.PHPExcel_Reader_Excel5" Collapsed="true"> + <Position X="0.5" Y="5.75" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_Reader_Excel5.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Class Name="ClassDiagrams.PHPExcel_Writer_PDF" Collapsed="true"> + <Position X="3.5" Y="7.25" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Class Name="ClassDiagrams.PHPExcel_IOFactory"> + <Position X="2" Y="0.5" Width="2.25" /> + <AssociationLine Name="createsReader" Type="ClassDiagrams.PHPExcel_Reader_IReader"> + <MemberNameLabel ManuallyPlaced="true"> + <Position X="0.11" Y="0.06" /> + </MemberNameLabel> + </AssociationLine> + <AssociationLine Name="createsWriter" Type="ClassDiagrams.PHPExcel_Writer_IWriter"> + <MemberNameLabel ManuallyPlaced="true"> + <Position X="-1.088" Y="0.081" /> + </MemberNameLabel> + </AssociationLine> + <TypeIdentifier> + <HashCode>AIAAAAAAAAEAAAAAAQAAAAAAAAAAAAAAAAABAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_IOFactory.cs</FileName> + </TypeIdentifier> + <ShowAsAssociation> + <Property Name="createsReader" /> + <Property Name="createsWriter" /> + </ShowAsAssociation> + </Class> + <Class Name="ClassDiagrams.PHPExcel_Reader_Excel2003XML" Collapsed="true"> + <Position X="0.5" Y="6.5" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_Reader_Excel5.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Class Name="ClassDiagrams.PHPExcel_Reader_SYLK" Collapsed="true"> + <Position X="0.5" Y="7.25" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=</HashCode> + <FileName>Classes\PHPExcel_Reader_Excel5.cs</FileName> + </TypeIdentifier> + <Lollipop Position="0.2" /> + </Class> + <Interface Name="ClassDiagrams.PHPExcel_Writer_IWriter" Collapsed="true"> + <Position X="3.5" Y="2.5" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA=</HashCode> + <FileName>Classes\IWriter.cs</FileName> + </TypeIdentifier> + </Interface> + <Interface Name="ClassDiagrams.PHPExcel_Reader_IReader" Collapsed="true"> + <Position X="0.5" Y="2.5" Width="2.25" /> + <TypeIdentifier> + <HashCode>AAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAA=</HashCode> + <FileName>Classes\IReader.cs</FileName> + </TypeIdentifier> + </Interface> + <Font Name="Tahoma" Size="8.25" /> +</ClassDiagram> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ReaderWriter.png b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ReaderWriter.png new file mode 100644 index 0000000..d76c98d Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/ReaderWriter.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/_notes/dwsync.xml new file mode 100644 index 0000000..bda23db --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/assets/ClassDiagrams/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Architecture.cd" server="62.244.88.21/deciday/" local="131919461974295865" remote="131880384600000000" Dst="1" /> +<file name="Architecture.png" server="62.244.88.21/deciday/" local="131919461975161351" remote="131880384600000000" Dst="1" /> +<file name="ClassDiagrams.csproj" server="62.244.88.21/deciday/" local="131919461975352529" remote="131880384600000000" Dst="1" /> +<file name="ClassDiagrams.csproj.user" server="62.244.88.21/deciday/" local="131919461976010874" remote="131880384600000000" Dst="1" /> +<file name="ClassDiagrams.sln" server="62.244.88.21/deciday/" local="131919461976198199" remote="131880384600000000" Dst="1" /> +<file name="ReaderWriter.cd" server="62.244.88.21/deciday/" local="131919461982077595" remote="131880384600000000" Dst="1" /> +<file name="ReaderWriter.png" server="62.244.88.21/deciday/" local="131919461983159006" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/01-Introduction.md b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/01-Introduction.md new file mode 100644 index 0000000..2ea3a50 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/01-Introduction.md @@ -0,0 +1,11 @@ +# Calculation Engine - Formula Function Reference + +## Frequently asked questions + +The up-to-date F.A.Q. page for PHPExcel can be found on [http://www.codeplex.com/PHPExcel/Wiki/View.aspx?title=FAQ&referringTitle=Requirements][1]. + +### Formulas don’t seem to be calculated in Excel2003 using compatibility pack? + +This is normal behaviour of the compatibility pack, Excel2007 displays this correctly. Use PHPExcel_Writer_Excel5 if you really need calculated values, or force recalculation in Excel2003. + + [1]: http://www.codeplex.com/PHPExcel/Wiki/View.aspx?title=FAQ&referringTitle=Requirements diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/02-01-Date-and-Time-Handling.md b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/02-01-Date-and-Time-Handling.md new file mode 100644 index 0000000..82993bb --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/02-01-Date-and-Time-Handling.md @@ -0,0 +1,123 @@ +# Calculation Engine - Formula Function Reference + +## Function Reference + +### Handling Date and Time Values + +#### Excel functions that return a Date and Time value + +Any of the Date and Time functions that return a date value in Excel can return either an Excel timestamp or a PHP timestamp or date object. + +It is possible for scripts to change the data type used for returning date values by calling the PHPExcel_Calculation_Functions::setReturnDateType() method: + +```php +PHPExcel_Calculation_Functions::setReturnDateType($returnDateType); +``` + +where the following constants can be used for $returnDateType + + - PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC + - PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT + - PHPExcel_Calculation_Functions::RETURNDATE_EXCEL + +The method will return a Boolean True on success, False on failure (e.g. if an invalid value is passed in for the return date type). + +The PHPExcel_Calculation_Functions::getReturnDateType() method can be used to determine the current value of this setting: + +```php +$returnDateType = PHPExcel_Calculation_Functions::getReturnDateType(); +``` + +The default is RETURNDATE_PHP_NUMERIC. + +##### PHP Timestamps + +If RETURNDATE_PHP_NUMERIC is set for the Return Date Type, then any date value returned to the calling script by any access to the Date and Time functions in Excel will be an integer value that represents the number of seconds from the PHP/Unix base date. The PHP/Unix base date (0) is 00:00 UST on 1st January 1970. This value can be positive or negative: so a value of -3600 would be 23:00 hrs on 31st December 1969; while a value of +3600 would be 01:00 hrs on 1st January 1970. This gives PHP a date range of between 14th December 1901 and 19th January 2038. + +##### PHP DateTime Objects + +If the Return Date Type is set for RETURNDATE_PHP_NUMERIC, then any date value returned to the calling script by any access to the Date and Time functions in Excel will be a PHP date/time object. + +##### Excel Timestamps + +If RETURNDATE_EXCEL is set for the Return Date Type, then the returned date value by any access to the Date and Time functions in Excel will be a floating point value that represents a number of days from the Excel base date. The Excel base date is determined by which calendar Excel uses: the Windows 1900 or the Mac 1904 calendar. 1st January 1900 is the base date for the Windows 1900 calendar while 1st January 1904 is the base date for the Mac 1904 calendar. + +It is possible for scripts to change the calendar used for calculating Excel date values by calling the PHPExcel_Shared_Date::setExcelCalendar() method: + +```php +PHPExcel_Shared_Date::setExcelCalendar($baseDate); +``` + +where the following constants can be used for $baseDate + + - PHPExcel_Shared_Date::CALENDAR_WINDOWS_1900 + - PHPExcel_Shared_Date::CALENDAR_MAC_1904 + +The method will return a Boolean True on success, False on failure (e.g. if an invalid value is passed in). + +The PHPExcel_Shared_Date::getExcelCalendar() method can be used to determine the current value of this setting: + +```php +$baseDate = PHPExcel_Shared_Date::getExcelCalendar(); +``` +The default is CALENDAR_WINDOWS_1900. + +##### Functions that return a Date/Time Value + + - DATE + - DATEVALUE + - EDATE + - EOMONTH + - NOW + - TIME + - TIMEVALUE + - TODAY + +#### Excel functions that accept Date and Time values as parameters + +Date values passed in as parameters to a function can be an Excel timestamp or a PHP timestamp; or date object; or a string containing a date value (e.g. '1-Jan-2009'). PHPExcel will attempt to identify their type based on the PHP datatype: + +An integer numeric value will be treated as a PHP/Unix timestamp. A real (floating point) numeric value will be treated as an Excel date/timestamp. Any PHP DateTime object will be treated as a DateTime object. Any string value (even one containing straight numeric data) will be converted to a date/time object for validation as a date value based on the server locale settings, so passing through an ambiguous value of '07/08/2008' will be treated as 7th August 2008 if your server settings are UK, but as 8th July 2008 if your server settings are US. However, if you pass through a value such as '31/12/2008' that would be considered an error by a US-based server, but which is not ambiguous, then PHPExcel will attempt to correct this to 31st December 2008. If the content of the string doesn’t match any of the formats recognised by the php date/time object implementation of strtotime() (which can handle a wider range of formats than the normal strtotime() function), then the function will return a '#VALUE' error. However, Excel recommends that you should always use date/timestamps for your date functions, and the recommendation for PHPExcel is the same: avoid strings because the result is not predictable. + +The same principle applies when data is being written to Excel. Cells containing date actual values (rather than Excel functions that return a date value) are always written as Excel dates, converting where necessary. If a cell formatted as a date contains an integer or date/time object value, then it is converted to an Excel value for writing: if a cell formatted as a date contains a real value, then no conversion is required. Note that string values are written as strings rather than converted to Excel date timestamp values. + +##### Functions that expect a Date/Time Value + + - DATEDIF + - DAY + - DAYS360 + - EDATE + - EOMONTH + - HOUR + - MINUTE + - MONTH + - NETWORKDAYS + - SECOND + - WEEKDAY + - WEEKNUM + - WORKDAY + - YEAR + - YEARFRAC + +#### Helper Methods + +In addition to the setExcelCalendar() and getExcelCalendar() methods, a number of other methods are available in the PHPExcel_Shared_Date class that can help when working with dates: + +##### PHPExcel_Shared_Date::ExcelToPHP($excelDate) + +Converts a date/time from an Excel date timestamp to return a PHP serialized date/timestamp. + +Note that this method does not trap for Excel dates that fall outside of the valid range for a PHP date timestamp. + +##### PHPExcel_Shared_Date::ExcelToPHPObject($excelDate) + +Converts a date from an Excel date/timestamp to return a PHP DateTime object. + +##### PHPExcel_Shared_Date::PHPToExcel($PHPDate) + +Converts a PHP serialized date/timestamp or a PHP DateTime object to return an Excel date timestamp. + +##### PHPExcel_Shared_Date::FormattedPHPToExcel($year, $month, $day, $hours=0, $minutes=0, $seconds=0) + +Takes year, month and day values (and optional hour, minute and second values) and returns an Excel date timestamp value. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/02-General-Introduction.md b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/02-General-Introduction.md new file mode 100644 index 0000000..b714d51 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/02-General-Introduction.md @@ -0,0 +1,36 @@ +# Calculation Engine - Formula Function Reference + +## General Introduction + +### Function that are not Supported in Excel5 + +Not all functions are supported by the Excel 5 Writer. Use of these functions within your workbooks will result in an error when trying to write to Excel5. + +The following is the list of those functions that are implemented within PHPExcel, but that cannot currently be written to Excel 5. + +#### Cube Functions + + Excel Function | Notes + --------------------|--------- + CUBEKPIMEMBER | Not yet Implemented + CUBEMEMBER | Not yet Implemented + CUBEMEMBERPROPERTY | Not yet Implemented + CUBERANKEDMEMBER | Not yet Implemented + CUBESET | Not yet Implemented + CUBESETCOUNT | Not yet Implemented + CUBEVALUE | Not yet Implemented + + +#### Database Functions + + Excel Function | Notes + ---------------|--------- + + +#### Date and Time Functions + + Excel Function | Notes + ---------------|--------- + EDATE | Not a standard function within Excel 5, but an add-in from the Analysis ToolPak. + EOMONTH | Not a standard function within Excel 5, but an add-in from the Analysis ToolPak. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/03-01-Cube-Functions.md b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/03-01-Cube-Functions.md new file mode 100644 index 0000000..8c94632 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/03-01-Cube-Functions.md @@ -0,0 +1,34 @@ +# Calculation Engine - Formula Function Reference + +## Function Reference + +### Cube Functions + +#### CUBEKPIMEMBER + +Not yet implemented. + +#### CUBEMEMBER + +Not yet implemented. + +#### CUBEMEMBERPROPERTY + +Not yet implemented. + +#### CUBERANKEDMEMBER + +Not yet implemented. + +#### CUBESET + +Not yet implemented. + +#### CUBESETCOUNT + +Not yet implemented. + +#### CUBEVALUE + +Not yet implemented. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/03-02-Database-Functions.md b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/03-02-Database-Functions.md new file mode 100644 index 0000000..a50e1c8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/03-02-Database-Functions.md @@ -0,0 +1,618 @@ +# Calculation Engine - Formula Function Reference + +## Function Reference + +### Database Functions + +#### DAVERAGE + +The DAVERAGE function returns the average value of the cells in a column of a list or database that match conditions you specify. + +##### Syntax + +``` +DAVERAGE (database, field, criteria) +``` + +##### Parameters + +**database** The range of cells that makes up the list or database. + +A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column. + +**field** Indicates which column of the database is used in the function. + +Enter the column label as a string (enclosed between double quotation marks), such as "Age" or "Yield," or as a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on. + +**criteria** The range of cells that contains the conditions you specify. + +You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column. + +##### Return Value + +**float** The average value of the matching cells. + +This is the statistical mean. + +##### Examples + +```php +$database = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), +); + +$criteria = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ), +); + +$worksheet->fromArray( $criteria, NULL, 'A1' ) + ->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', '=DAVERAGE(A4:E10,"Yield",A1:B2)'); + +$retVal = $worksheet->getCell('A12')->getCalculatedValue(); +// $retVal = 12 +``` + +##### Notes + +There are no additional notes on this function + +#### DCOUNT + +The DCOUNT function returns the count of cells that contain a number in a column of a list or database matching conditions that you specify. + +##### Syntax + +``` +DCOUNT(database, [field], criteria) +``` + +##### Parameters + +**database** The range of cells that makes up the list or database. + +A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column. + +**field** Indicates which column of the database is used in the function. + +Enter the column label as a string (enclosed between double quotation marks), such as "Age" or "Yield," or as a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on. + +**criteria** The range of cells that contains the conditions you specify. + +You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column. + +##### Return Value + +**float** The count of the matching cells. + +##### Examples + +```php +$database = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), +); + +$criteria = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ), +); + +$worksheet->fromArray( $criteria, NULL, 'A1' ) + ->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', '=DCOUNT(A4:E10,"Height",A1:B3)'); + +$retVal = $worksheet->getCell('A12')->getCalculatedValue(); + +// $retVal = 3 +``` + +##### Notes + +In MS Excel, The field argument is optional. If field is omitted, DCOUNT counts all records in the database that match the criteria. This logic has not yet been implemented in PHPExcel. + +#### DCOUNTA + +The DCOUNT function returns the count of cells that aren’t blank in a column of a list or database and that match conditions that you specify. + +##### Syntax + +``` +DCOUNTA(database, [field], criteria) +``` + +##### Parameters + +**database** The range of cells that makes up the list or database. + +A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column. + +**field** Indicates which column of the database is used in the function. + +Enter the column label as a string (enclosed between double quotation marks), such as "Age" or "Yield," or as a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on. + +**criteria** The range of cells that contains the conditions you specify. + +You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column. + +##### Return Value + +**float** The count of the matching cells. + +##### Examples + +```php +$database = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), +); + +$criteria = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ), +); + +$worksheet->fromArray( $criteria, NULL, 'A1' ) + ->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', '=DCOUNTA(A4:E10,"Yield",A1:A3)'); + +$retVal = $worksheet->getCell('A12')->getCalculatedValue(); + +// $retVal = 5 +``` + +##### Notes + +In MS Excel, The field argument is optional. If field is omitted, DCOUNTA counts all records in the database that match the criteria. This logic has not yet been implemented in PHPExcel. + +#### DGET + +The DGET function extracts a single value from a column of a list or database that matches conditions that you specify. + +##### Syntax + +``` +DGET(database, field, criteria) +``` + +##### Parameters + +**database** The range of cells that makes up the list or database. + +A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column. + +**field** Indicates which column of the database is used in the function. + +Enter the column label as a string (enclosed between double quotation marks), such as "Age" or "Yield," or as a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on. + +**criteria** The range of cells that contains the conditions you specify. + +You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column. + +##### Return Value + +**mixed** The value from the selected column of the matching row. + +#### Examples + +```php +$database = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), +); + +$criteria = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ), +); + +$worksheet->fromArray( $criteria, NULL, 'A1' ) + ->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', '=GET(A4:E10,"Age",A1:F2)'); + +$retVal = $worksheet->getCell('A12')->getCalculatedValue(); +// $retVal = 14 +``` + +##### Notes + +There are no additional notes on this function + +#### DMAX + +The DMAX function returns the largest number in a column of a list or database that matches conditions you specify. + +##### Syntax + +``` +DMAX(database, field, criteria) +``` + +##### Parameters + +**database** The range of cells that makes up the list or database. + +A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column. + +**field** Indicates which column of the database is used in the function. + +Enter the column label as a string (enclosed between double quotation marks), such as "Age" or "Yield," or as a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on. + +**criteria** The range of cells that contains the conditions you specify. + +You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column. + +##### Return Value + +**float** The maximum value of the matching cells. + +##### Examples + +```php +$database = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), +); + +$criteria = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ), +); + +$worksheet->fromArray( $criteria, NULL, 'A1' ) + ->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', '=DMAX(A4:E10,"Profit",A1:B2)'); + +$retVal = $worksheet->getCell('A12')->getCalculatedValue(); +// $retVal = 105 +``` + +##### Notes + +There are no additional notes on this function + +#### DMIN + +The DMIN function returns the smallest number in a column of a list or database that matches conditions you specify. + +##### Syntax + +``` +DMIN(database, field, criteria) +``` + +##### Parameters + +**database** The range of cells that makes up the list or database. + +A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column. + +**field** Indicates which column of the database is used in the function. + +Enter the column label as a string (enclosed between double quotation marks), such as "Age" or "Yield," or as a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on. + +**criteria** The range of cells that contains the conditions you specify. + +You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column. + +##### Return Value + +**float** The minimum value of the matching cells. + +##### Examples + +```php +$database = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), +); + +$criteria = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ), +); + +$worksheet->fromArray( $criteria, NULL, 'A1' ) + ->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', '=DMIN(A4:E10,"Yield",A1:A3)'); + +$retVal = $worksheet->getCell('A12')->getCalculatedValue(); +// $retVal = 6 +``` + +##### Notes + +There are no additional notes on this function + +#### DPRODUCT + +The DPRODUCT function multiplies the values in a column of a list or database that match conditions that you specify. + +##### Syntax + +``` +DPRODUCT(database, field, criteria) +``` + +##### Parameters + +**database** The range of cells that makes up the list or database. + +A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column. + +**field** Indicates which column of the database is used in the function. + +Enter the column label as a string (enclosed between double quotation marks), such as "Age" or "Yield," or as a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on. + +**criteria** The range of cells that contains the conditions you specify. + +You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column. + +##### Return Value + +**float** The product of the matching cells. + +##### Examples + +```php +$database = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), +); + +$criteria = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ), +); + +$worksheet->fromArray( $criteria, NULL, 'A1' ) + ->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', '=DPRODUCT(A4:E10,"Yield",A1:B2)'); + +$retVal = $worksheet->getCell('A12')->getCalculatedValue(); +// $retVal = 140 +``` + +##### Notes + +There are no additional notes on this function + +#### DSTDEV + +The DSTDEV function estimates the standard deviation of a population based on a sample by using the numbers in a column of a list or database that match conditions that you specify. + +##### Syntax + +``` +DSTDEV(database, field, criteria) +``` + +##### Parameters + +**database** The range of cells that makes up the list or database. + +A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column. + +**field** Indicates which column of the database is used in the function. + +Enter the column label as a string (enclosed between double quotation marks), such as "Age" or "Yield," or as a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on. + +**criteria** The range of cells that contains the conditions you specify. + +You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column. + +##### Return Value + +**float** The estimated standard deviation of the matching cells. + +##### Examples + +```php +$database = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), +); + +$criteria = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ), +); + +$worksheet->fromArray( $criteria, NULL, 'A1' ) + ->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', '=DSTDEV(A4:E10,"Yield",A1:A3)'); + +$retVal = $worksheet->getCell('A12')->getCalculatedValue(); +// $retVal = 2.97 +``` + +##### Notes + +There are no additional notes on this function + +#### DSTDEVP + +The DSTDEVP function calculates the standard deviation of a population based on the entire population by using the numbers in a column of a list or database that match conditions that you specify. + +##### Syntax + +``` +DSTDEVP(database, field, criteria) +``` + +##### Parameters + +**database** The range of cells that makes up the list or database. + +A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column. + +**field** Indicates which column of the database is used in the function. + +Enter the column label as a string (enclosed between double quotation marks), such as "Age" or "Yield," or as a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on. + +**criteria** The range of cells that contains the conditions you specify. + +You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column. + +##### Return Value + +**float** The estimated standard deviation of the matching cells. + +##### Examples + +```php +$database = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), +); + +$criteria = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ), +); + +$worksheet->fromArray( $criteria, NULL, 'A1' ) + ->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', '=DSTDEVP(A4:E10,"Yield",A1:A3)'); + +$retVal = $worksheet->getCell('A12')->getCalculatedValue(); +// $retVal = 2.65 +``` + +##### Notes + +There are no additional notes on this function + +#### DSUM + +The DSUM function adds the numbers in a column of a list or database that matches conditions you specify. + +##### Syntax + +``` +DSUM(database, field, criteria) +``` + +##### Parameters + +**database** The range of cells that makes up the list or database. + +A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column. + +**field** Indicates which column of the database is used in the function. + +Enter the column label as a string (enclosed between double quotation marks), such as "Age" or "Yield," or as a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on. + +**criteria** The range of cells that contains the conditions you specify. + +You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column. + +##### Return Value + +**float** The total value of the matching cells. + +##### Examples + +```php +$database = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), +); + +$criteria = array( + array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ), +); + +$worksheet->fromArray( $criteria, NULL, 'A1' ) + ->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', '=DMIN(A4:E10,"Profit",A1:A2)'); + +$retVal = $worksheet->getCell('A12')->getCalculatedValue(); +// $retVal = 225 +``` + +##### Notes + +There are no additional notes on this function + +#### DVAR + +Not yet documented. + +#### DVARP + +Not yet documented. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/03-03-Date-and-Time-Functions.md b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/03-03-Date-and-Time-Functions.md new file mode 100644 index 0000000..d0cc568 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/03-03-Date-and-Time-Functions.md @@ -0,0 +1,1000 @@ +# Calculation Engine - Formula Function Reference + +## Function Reference + +### Date and Time Functions + +Excel provides a number of functions for the manipulation of dates and times, and calculations based on date/time values. it is worth spending some time reading the section titled "Date and Time Values" on passing date parameters and returning date values to understand how PHPExcel reconciles the differences between dates and times in Excel and in PHP. + +#### DATE + +The DATE function returns an Excel timestamp or a PHP timestamp or date object representing the date that is referenced by the parameters. + +##### Syntax + +``` +DATE(year, month, day) +``` + +##### Parameters + +**year** The year number. + +If this value is between 0 (zero) and 1899 inclusive (for the Windows 1900 calendar), or between 4 and 1903 inclusive (for the Mac 1904), then PHPExcel adds it to the Calendar base year, so a value of 108 will interpret the year as 2008 when using the Windows 1900 calendar, or 2012 when using the Mac 1904 calendar. + +**month** The month number. + +If this value is greater than 12, the DATE function adds that number of months to the first month in the year specified. For example, DATE(2008,14,2) returns a value representing February 2, 2009. + +If the value of __month__ is less than 1, then that value will be adjusted by -1, and that will then be subtracted from the first month of the year specified. For example, DATE(2008,0,2) returns a value representing December 2, 2007; while DATE(2008,-1,2) returns a value representing November 2, 2007. + +**day** The day number. + +If this value is greater than the number of days in the month (and year) specified, the DATE function adds that number of days to the first day in the month. For example, DATE(2008,1,35) returns a value representing February 4, 2008. + +If the value of __day__ is less than 1, then that value will be adjusted by -1, and that will then be subtracted from the first month of the year specified. For example, DATE(2008,3,0) returns a value representing February 29, 2008; while DATE(2008,3,-2) returns a value representing February 27, 2008. + +##### Return Value + +**mixed** A date/time stamp that corresponds to the given date. + +This could be a PHP timestamp value (integer), a PHP date/time object, or an Excel timestamp value (real), depending on the value of PHPExcel_Calculation_Functions::getReturnDateType(). + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Year') + ->setCellValue('A2', 'Month') + ->setCellValue('A3', 'Day'); + +$worksheet->setCellValue('B1', 2008) + ->setCellValue('B2', 12) + ->setCellValue('B3', 31); + +$worksheet->setCellValue('D1', '=DATE(B1,B2,B3)'); + +$retVal = $worksheet->getCell('D1')->getCalculatedValue(); +// $retVal = 1230681600 +``` + +```php +// We're going to be calling the same cell calculation multiple times, +// and expecting different return values, so disable calculation cacheing +PHPExcel_Calculation::getInstance()->setCalculationCacheEnabled(FALSE); + +$saveFormat = PHPExcel_Calculation_Functions::getReturnDateType(); + +PHPExcel_Calculation_Functions::setReturnDateType( + PHPExcel_Calculation_Functions::RETURNDATE_EXCEL +); + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DATE'), + array(2008, 12, 31) +); +// $retVal = 39813.0 + +PHPExcel_Calculation_Functions::setReturnDateType( + PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC +); + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DATE'), + array(2008, 12, 31) +); +// $retVal = 1230681600 + +PHPExcel_Calculation_Functions::setReturnDateType($saveFormat); +``` + +##### Notes + +There are no additional notes on this function + +#### DATEDIF + +The DATEDIF function computes the difference between two dates in a variety of different intervals, such number of years, months, or days. + +##### Syntax + +``` +DATEDIF(date1, date2 [, unit]) +``` + +##### Parameters + +**date1** First Date. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +**date2** Second Date. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +**unit** The interval type to use for the calculation + +This is a string, comprising one of the values listed below: + +Unit | Meaning | Description +-----|---------------------------------|-------------------------------- +m | Months | Complete calendar months between the dates. +d | Days | Number of days between the dates. +y | Years | Complete calendar years between the dates. +ym | Months Excluding Years | Complete calendar months between the dates as if they were of the same year. +yd | Days Excluding Years | Complete calendar days between the dates as if they were of the same year. +md | Days Excluding Years And Months | Complete calendar days between the dates as if they were of the same month and same year. + +The unit value is not case sensitive, and defaults to "d". + +##### Return Value + +**integer** An integer value that reflects the difference between the two dates. + +This could be the number of full days, months or years between the two dates, depending on the interval unit value passed into the function as the third parameter. + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Year') + ->setCellValue('A2', 'Month') + ->setCellValue('A3', 'Day'); + +$worksheet->setCellValue('B1', 2001) + ->setCellValue('C1', 2009) + ->setCellValue('B2', 7) + ->setCellValue('C2', 12) + ->setCellValue('B3', 1) + ->setCellValue('C3', 31); + +$worksheet->setCellValue('D1', '=DATEDIF(DATE(B1,B2,B3),DATE(C1,C2,C3),"d")') + ->setCellValue('D2', '=DATEDIF(DATE(B1,B2,B3),DATE(C1,C2,C3),"m")') + ->setCellValue('D3', '=DATEDIF(DATE(B1,B2,B3),DATE(C1,C2,C3),"y")') + ->setCellValue('D4', '=DATEDIF(DATE(B1,B2,B3),DATE(C1,C2,C3),"ym")') + ->setCellValue('D5', '=DATEDIF(DATE(B1,B2,B3),DATE(C1,C2,C3),"yd")') + ->setCellValue('D6', '=DATEDIF(DATE(B1,B2,B3),DATE(C1,C2,C3),"md")'); + +$retVal = $worksheet->getCell('D1')->getCalculatedValue(); +// $retVal = 3105 + +$retVal = $worksheet->getCell('D2')->getCalculatedValue(); +// $retVal = 101 + +$retVal = $worksheet->getCell('D3')->getCalculatedValue(); +// $retVal = 8 + +$retVal = $worksheet->getCell('D4')->getCalculatedValue(); +// $retVal = 5 + +$retVal = $worksheet->getCell('D5')->getCalculatedValue(); +// $retVal = 183 + +$retVal = $worksheet->getCell('D6')->getCalculatedValue(); +// $retVal = 30 +``` + +```php +$date1 = 1193317015; // PHP timestamp for 25-Oct-2007 +$date2 = 1449579415; // PHP timestamp for 8-Dec-2015 + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DATEDIF'), + array($date1, $date2, 'd') +); +// $retVal = 2966 + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DATEDIF'), + array($date1, $date2, 'm') +); +// $retVal = 97 + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DATEDIF'), + array($date1, $date2, 'y') +); +// $retVal = 8 + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DATEDIF'), + array($date1, $date2, 'ym') +); +// $retVal = 1 + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DATEDIF'), + array($date1, $date2, 'yd') +); +// $retVal = 44 + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DATEDIF'), + array($date1, $date2, 'md') +); +// $retVal = 13 +``` + +##### Notes + +If Date1 is later than Date2, DATEDIF will return a #NUM! error. + +#### DATEVALUE + +The DATEVALUE function returns the date represented by a date formatted as a text string. Use DATEVALUE to convert a date represented by text to a serial number. + +##### Syntax + +``` +DATEVALUE(dateString) +``` + +##### Parameters + +**date** Date String. + +A string, representing a date value. + +##### Return Value + +**mixed** A date/time stamp that corresponds to the given date. + +This could be a PHP timestamp value (integer), a PHP date/time object, or an Excel timestamp value (real), depending on the value of PHPExcel_Calculation_Functions::getReturnDateType(). + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Date String'); + ->setCellValue('A2', '31-Dec-2008') + ->setCellValue('A3', '31/12/2008') + ->setCellValue('A4', '12-31-2008'); + +$worksheet->setCellValue('B2', '=DATEVALUE(A2)') + ->setCellValue('B3', '=DATEVALUE(A3)') + ->setCellValue('B4', '=DATEVALUE(A4)'); + +PHPExcel_Calculation_Functions::setReturnDateType( + PHPExcel_Calculation_Functions::RETURNDATE_EXCEL +); + +$retVal = $worksheet->getCell('B2')->getCalculatedValue(); + +$retVal = $worksheet->getCell('B3')->getCalculatedValue(); + +$retVal = $worksheet->getCell('B4')->getCalculatedValue(); +// $retVal = 39813.0 for all cases +``` + +```php +// We're going to be calling the same cell calculation multiple times, +// and expecting different return values, so disable calculation cacheing +PHPExcel_Calculation::getInstance()->setCalculationCacheEnabled(FALSE); + +$saveFormat = PHPExcel_Calculation_Functions::getReturnDateType(); + +PHPExcel_Calculation_Functions::setReturnDateType( + PHPExcel_Calculation_Functions::RETURNDATE_EXCEL +); + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DATEVALUE'), + array('31-Dec-2008') +); +// $retVal = 39813.0 + +PHPExcel_Calculation_Functions::setReturnDateType( + PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC +); + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DATEVALUE'), + array('31-Dec-2008') +); +// $retVal = 1230681600 + +PHPExcel_Calculation_Functions::setReturnDateType($saveFormat); +``` + +##### Notes + +DATEVALUE uses the php date/time object implementation of strtotime() (which can handle a wider range of formats than the normal strtotime() function), and it is also called for any date parameter passed to other date functions (such as DATEDIF) when the parameter value is a string. + +__WARNING:-__ PHPExcel accepts a wider range of date formats than MS Excel, so it is entirely possible that Excel will return a #VALUE! error when passed a date string that it can’t interpret, while PHPExcel is able to translate that same string into a correct date value. + +Care should be taken in workbooks that use string formatted dates in calculations when writing to Excel5 or Excel2007. + +#### DAY + +The DAY function returns the day of a date. The day is given as an integer ranging from 1 to 31. + +##### Syntax + +``` +DAY(datetime) +``` + +##### Parameters + +**datetime** Date. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +##### Return Value + +**integer** An integer value that reflects the day of the month. + +This is an integer ranging from 1 to 31. + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Date String') + ->setCellValue('A2', '31-Dec-2008') + ->setCellValue('A3', '14-Feb-2008'); + +$worksheet->setCellValue('B2', '=DAY(A2)') + ->setCellValue('B3', '=DAY(A3)'); + +$retVal = $worksheet->getCell('B2')->getCalculatedValue(); +// $retVal = 31 + +$retVal = $worksheet->getCell('B3')->getCalculatedValue(); +// $retVal = 14 +``` + +```php +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DAYOFMONTH'), + array('25-Dec-2008') +); +// $retVal = 25 +``` + +##### Notes + +Note that the PHPExcel function is PHPExcel_Calculation_Functions::DAYOFMONTH() when the method is called statically. + +#### DAYS360 + +The DAYS360 function computes the difference between two dates based on a 360 day year (12 equal periods of 30 days each) used by some accounting systems. + +##### Syntax + +``` +DAYS360(date1, date2 [, method]) +``` + +#### Parameters + +**date1** First Date. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +**date2** Second Date. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +**method** A boolean flag (TRUE or FALSE) + +This is a flag that determines which method to use in the calculation, based on the values listed below: + + method | Description + -------|------------ + FALSE | U.S. (NASD) method. If the starting date is the last day of a month, it becomes equal to the 30th of the same month. If the ending date is the last day of a month and the starting date is earlier than the 30th of a month, the ending date becomes equal to the 1st of the next month; otherwise the ending date becomes equal to the 30th of the same month. + TRUE | European method. Starting dates and ending dates that occur on the 31st of a month become equal to the 30th of the same month. + +The method value defaults to FALSE. + +##### Return Value + +**integer** An integer value that reflects the difference between the two dates. + +This is the number of full days between the two dates, based on a 360 day year. + +##### Examples + +```php +$worksheet->setCellValue('B1', 'Start Date') + ->setCellValue('C1', 'End Date') + ->setCellValue('A2', 'Year') + ->setCellValue('A3', 'Month') + ->setCellValue('A4', 'Day'); + +$worksheet->setCellValue('B2', 2003) + ->setCellValue('B3', 2) + ->setCellValue('B4', 3); + +$worksheet->setCellValue('C2', 2007) + ->setCellValue('C3', 5) + ->setCellValue('C4', 31); + +$worksheet->setCellValue('E2', '=DAYS360(DATE(B2,B3,B4),DATE(C2,C3,C4))') + ->setCellValue('E4', '=DAYS360(DATE(B2,B3,B4),DATE(C2,C3,C4),FALSE)'); + +$retVal = $worksheet->getCell('E2')->getCalculatedValue(); +// $retVal = 1558 + +$retVal = $worksheet->getCell('E4')->getCalculatedValue(); +// $retVal = 1557 +``` + +```php +$date1 = 37655.0; // Excel timestamp for 25-Oct-2007 +$date2 = 39233.0; // Excel timestamp for 8-Dec-2015 + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DAYS360'), + array($date1, $date2) +); +// $retVal = 1558 + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DAYS360'), + array($date1, $date2, TRUE) +); +// $retVal = 1557 +``` + +##### Notes + +__WARNING:-__ This function does not currently work with the Excel5 Writer when a PHP Boolean is used for the third (optional) parameter (as shown in the example above), and the writer will generate and error. It will work if a numeric 0 or 1 is used for the method parameter; or if the Excel TRUE() and FALSE() functions are used instead. + +#### EDATE + +The EDATE function returns an Excel timestamp or a PHP timestamp or date object representing the date that is the indicated number of months before or after a specified date (the start_date). Use EDATE to calculate maturity dates or due dates that fall on the same day of the month as the date of issue. + +##### Syntax + +``` +EDATE(baseDate, months) +``` + +##### Parameters + +**baseDate** Start Date. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +**months** Number of months to add. + +An integer value indicating the number of months before or after baseDate. A positive value for months yields a future date; a negative value yields a past date. + +##### Return Value + +**mixed** A date/time stamp that corresponds to the basedate + months. + +This could be a PHP timestamp value (integer), a PHP date/time object, or an Excel timestamp value (real), depending on the value of PHPExcel_Calculation_Functions::getReturnDateType(). + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Date String') + ->setCellValue('A2', '1-Jan-2008') + ->setCellValue('A3', '29-Feb-2008'); + +$worksheet->setCellValue('B2', '=EDATE(A2,5)') + ->setCellValue('B3', '=EDATE(A3,-12)'); + +PHPExcel_Calculation_Functions::setReturnDateType( + PHPExcel_Calculation_Functions::RETURNDATE_EXCEL +); + +$retVal = $worksheet->getCell('B2')->getCalculatedValue(); +// $retVal = 39600.0 (1-Jun-2008) + +$retVal = $worksheet->getCell('B3')->getCalculatedValue(); +// $retVal = 39141.0 (28-Feb-2007) +``` + +```php +PHPExcel_Calculation_Functions::setReturnDateType( + PHPExcel_Calculation_Functions::RETURNDATE_EXCEL +); + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'EDATE'), + array('31-Oct-2008',25) +); +// $retVal = 40512.0 (30-Nov-2010) +``` + +###### Notes + +__WARNING:-__ This function is currently not supported by the Excel5 Writer because it is not a standard function within Excel 5, but an add-in from the Analysis ToolPak. + +#### EOMONTH + +The EOMONTH function returns an Excel timestamp or a PHP timestamp or date object representing the date of the last day of the month that is the indicated number of months before or after a specified date (the start_date). Use EOMONTH to calculate maturity dates or due dates that fall on the last day of the month. + +##### Syntax + +``` +EOMONTH(baseDate, months) +``` + +##### Parameters + +**baseDate** Start Date. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +**months** Number of months to add. + +An integer value indicating the number of months before or after baseDate. A positive value for months yields a future date; a negative value yields a past date. + +##### Return Value + +**mixed** A date/time stamp that corresponds to the last day of basedate + months. + +This could be a PHP timestamp value (integer), a PHP date/time object, or an Excel timestamp value (real), depending on the value of PHPExcel_Calculation_Functions::getReturnDateType(). + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Date String') + ->setCellValue('A2', '1-Jan-2000') + ->setCellValue('A3', '14-Feb-2009'); + +$worksheet->setCellValue('B2', '=EOMONTH(A2,5)') + ->setCellValue('B3', '=EOMONTH(A3,-12)'); + +PHPExcel_Calculation_Functions::setReturnDateType(PHPExcel_Calculation_Functions::RETURNDATE_EXCEL); + +$retVal = $worksheet->getCell('B2')->getCalculatedValue(); +// $retVal = 39629.0 (30-Jun-2008) + +$retVal = $worksheet->getCell('B3')->getCalculatedValue(); +// $retVal = 39507.0 (29-Feb-2008) +``` + +```php +PHPExcel_Calculation_Functions::setReturnDateType( + PHPExcel_Calculation_Functions::RETURNDATE_EXCEL +); + +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'EOMONTH'), + array('31-Oct-2008',13) +); +// $retVal = 40147.0 (30-Nov-2010) +``` + +##### Notes + +__WARNING:-__ This function is currently not supported by the Excel5 Writer because it is not a standard function within Excel 5, but an add-in from the Analysis ToolPak. + +#### HOUR + +The HOUR function returns the hour of a time value. The hour is given as an integer, ranging from 0 (12:00 A.M.) to 23 (11:00 P.M.). + +##### Syntax + +``` +HOUR(datetime) +``` + +##### Parameters + +**datetime** Time. + +An Excel date/time value, PHP date timestamp, PHP date object, or a date/time represented as a string. + +##### Return Value + +**integer** An integer value that reflects the hour of the day. + +This is an integer ranging from 0 to 23. + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Time String') + ->setCellValue('A2', '31-Dec-2008 17:30') + ->setCellValue('A3', '14-Feb-2008 4:20 AM') + ->setCellValue('A4', '14-Feb-2008 4:20 PM'); + +$worksheet->setCellValue('B2', '=HOUR(A2)') + ->setCellValue('B3', '=HOUR(A3)') + ->setCellValue('B4', '=HOUR(A4)'); + +$retVal = $worksheet->getCell('B2')->getCalculatedValue(); +// $retVal = 17 + +$retVal = $worksheet->getCell('B3')->getCalculatedValue(); +// $retVal = 4 + +$retVal = $worksheet->getCell('B4')->getCalculatedValue(); +// $retVal = 16 +``` + +```php +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'HOUROFDAY'), + array('09:30') +); +// $retVal = 9 +``` + +##### Notes + +Note that the PHPExcel function is PHPExcel_Calculation_Functions::HOUROFDAY() when the method is called statically. + +#### MINUTE + +The MINUTE function returns the minutes of a time value. The minute is given as an integer, ranging from 0 to 59. + +##### Syntax + +``` +MINUTE(datetime) +``` + +##### Parameters + +**datetime** Time. + +An Excel date/time value, PHP date timestamp, PHP date object, or a date/time represented as a string. + +##### Return Value + +**integer** An integer value that reflects the minutes within the hour. + +This is an integer ranging from 0 to 59. + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Time String') + ->setCellValue('A2', '31-Dec-2008 17:30') + ->setCellValue('A3', '14-Feb-2008 4:20 AM') + ->setCellValue('A4', '14-Feb-2008 4:45 PM'); + +$worksheet->setCellValue('B2', '=MINUTE(A2)') + ->setCellValue('B3', '=MINUTE(A3)') + ->setCellValue('B4', '=MINUTE(A4)'); + +$retVal = $worksheet->getCell('B2')->getCalculatedValue(); +// $retVal = 30 + +$retVal = $worksheet->getCell('B3')->getCalculatedValue(); +// $retVal = 20 + +$retVal = $worksheet->getCell('B4')->getCalculatedValue(); +// $retVal = 45 +``` + +```php +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'MINUTEOFHOUR'), + array('09:30') +); +// $retVal = 30 +``` + +##### Notes + +Note that the PHPExcel function is PHPExcel_Calculation_Functions::MINUTEOFHOUR() when the method is called statically. + +#### MONTH + +The MONTH function returns the month of a date. The month is given as an integer ranging from 1 to 12. + +##### Syntax + +``` +MONTH(datetime) +``` + +##### Parameters + +**datetime** Date. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +##### Return Value + +**integer** An integer value that reflects the month of the year. + +This is an integer ranging from 1 to 12. + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Date String'); +$worksheet->setCellValue('A2', '31-Dec-2008'); +$worksheet->setCellValue('A3', '14-Feb-2008'); + +$worksheet->setCellValue('B2', '=MONTH(A2)'); +$worksheet->setCellValue('B3', '=MONTH(A3)'); + +$retVal = $worksheet->getCell('B2')->getCalculatedValue(); +// $retVal = 12 + +$retVal = $worksheet->getCell('B3')->getCalculatedValue(); +// $retVal = 2 +``` + +```php +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'MONTHOFYEAR'), + array('14-July-2008') +); +// $retVal = 7 +``` + +#### Notes + +Note that the PHPExcel function is PHPExcel_Calculation_Functions::MONTHOFYEAR() when the method is called statically. + +#### NETWORKDAYS + +The NETWORKDAYS function returns the number of whole working days between a *start date* and an *end date*. Working days exclude weekends and any dates identified in *holidays*. Use NETWORKDAYS to calculate employee benefits that accrue based on the number of days worked during a specific term. + +##### Syntax + +``` +NETWORKDAYS(startDate, endDate [, holidays]) +``` + +##### Parameters + +**startDate** Start Date of the period. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +**endDate** End Date of the period. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +**holidays** Optional array of Holiday dates. + +An optional range of one or more dates to exclude from the working calendar, such as state and federal holidays and floating holidays. + +The list can be either a range of cells that contains the dates or an array constant of Excel date values, PHP date timestamps, PHP date objects, or dates represented as strings. + +##### Return Value + +**integer** Number of working days. + +The number of working days between startDate and endDate. + +##### Examples + +```php +``` + +```php +``` + +##### Notes + +There are no additional notes on this function + +#### NOW + +The NOW function returns the current date and time. + +##### Syntax + +``` +NOW() +``` + +##### Parameters + +There are now parameters for the NOW() function. + +##### Return Value + +**mixed** A date/time stamp that corresponds to the current date and time. + +This could be a PHP timestamp value (integer), a PHP date/time object, or an Excel timestamp value (real), depending on the value of PHPExcel_Calculation_Functions::getReturnDateType(). + +##### Examples + +```php +``` + +```php +``` + +##### Notes + +Note that the PHPExcel function is PHPExcel_Calculation_Functions::DATETIMENOW() when the method is called statically. + +#### SECOND + +The SECOND function returns the seconds of a time value. The second is given as an integer, ranging from 0 to 59. + +##### Syntax + +``` +SECOND(datetime) +``` + +##### Parameters + +**datetime** Time. + +An Excel date/time value, PHP date timestamp, PHP date object, or a date/time represented as a string. + +##### Return Value + +**integer** An integer value that reflects the seconds within the minute. + +This is an integer ranging from 0 to 59. + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Time String') + ->setCellValue('A2', '31-Dec-2008 17:30:20') + ->setCellValue('A3', '14-Feb-2008 4:20 AM') + ->setCellValue('A4', '14-Feb-2008 4:45:59 PM'); + +$worksheet->setCellValue('B2', '=SECOND(A2)') + ->setCellValue('B3', '=SECOND(A3)'); + ->setCellValue('B4', '=SECOND(A4)'); + +$retVal = $worksheet->getCell('B2')->getCalculatedValue(); +// $retVal = 20 + +$retVal = $worksheet->getCell('B3')->getCalculatedValue(); +// $retVal = 0 + +$retVal = $worksheet->getCell('B4')->getCalculatedValue(); +// $retVal = 59 +``` + +```php +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'SECONDOFMINUTE'), + array('09:30:17') +); +// $retVal = 17 +``` + +##### Notes + +Note that the PHPExcel function is PHPExcel_Calculation_Functions::SECONDOFMINUTE() when the method is called statically. + +#### TIME + +Not yet documented. + +#### TIMEVALUE + +Not yet documented. + +#### TODAY + +Not yet documented. + +#### WEEKDAY + +The WEEKDAY function returns the day of the week for a given date. The day is given as an integer ranging from 1 to 7, although this can be modified to return a value between 0 and 6. + +##### Syntax + +``` +WEEKDAY(datetime [, method]) +``` + +##### Parameters + +**datetime** Date. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +**method** An integer flag (values 0, 1 or 2) + +This is a flag that determines which method to use in the calculation, based on the values listed below: + + method | Description + :-----:|------------------------------------------ + 0 | Returns 1 (Sunday) through 7 (Saturday). + 1 | Returns 1 (Monday) through 7 (Sunday). + 2 | Returns 0 (Monday) through 6 (Sunday). + +The method value defaults to 1. + +##### Return Value + +**integer** An integer value that reflects the day of the week. + +This is an integer ranging from 1 to 7, or 0 to 6, depending on the value of method. + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Date String') + ->setCellValue('A2', '31-Dec-2008') + ->setCellValue('A3', '14-Feb-2008'); + +$worksheet->setCellValue('B2', '=WEEKDAY(A2)') + ->setCellValue('B3', '=WEEKDAY(A3,0)') + ->setCellValue('B4', '=WEEKDAY(A3,2)'); + +$retVal = $worksheet->getCell('B2')->getCalculatedValue(); +// $retVal = 12 + +$retVal = $worksheet->getCell('B3')->getCalculatedValue(); +// $retVal = 2 + +$retVal = $worksheet->getCell('B4')->getCalculatedValue(); +// $retVal = 2 +``` + +```php +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'DAYOFWEEK'), + array('14-July-2008') +); +// $retVal = 7 +``` + +##### Notes + +Note that the PHPExcel function is PHPExcel_Calculation_Functions::DAYOFWEEK() when the method is called statically. + +#### WEEKNUM + +Not yet documented. + +#### WORKDAY + +Not yet documented. + +#### YEAR + +The YEAR function returns the year of a date. + +##### Syntax + +``` +YEAR(datetime) +``` + +##### Parameters + +**datetime** Date. + +An Excel date value, PHP date timestamp, PHP date object, or a date represented as a string. + +##### Return Value + +**integer** An integer value that reflects the month of the year. + +This is an integer year value. + +##### Examples + +```php +$worksheet->setCellValue('A1', 'Date String') + ->setCellValue('A2', '17-Jul-1982') + ->setCellValue('A3', '16-Apr-2009'); + +$worksheet->setCellValue('B2', '=YEAR(A2)') + ->setCellValue('B3', '=YEAR(A3)'); + +$retVal = $worksheet->getCell('B2')->getCalculatedValue(); +// $retVal = 1982 + +$retVal = $worksheet->getCell('B3')->getCalculatedValue(); +// $retVal = 2009 +``` + +```php +$retVal = call_user_func_array( + array('PHPExcel_Calculation_Functions', 'YEAR'), + array('14-July-2001') +); +// $retVal = 2001 +``` + +##### Notes + +There are no additional notes on this function + +### YEARFRAC + +Not yet documented. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/_notes/dwsync.xml new file mode 100644 index 0000000..5b62b48 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/CalculationEngine/FunctionReference/_notes/dwsync.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="01-Introduction.md" server="62.244.88.21/deciday/" local="131919462005525293" remote="131880384600000000" Dst="1" /> +<file name="02-01-Date-and-Time-Handling.md" server="62.244.88.21/deciday/" local="131919462005757798" remote="131880384600000000" Dst="1" /> +<file name="02-General-Introduction.md" server="62.244.88.21/deciday/" local="131919462006188570" remote="131880384600000000" Dst="1" /> +<file name="03-01-Cube-Functions.md" server="62.244.88.21/deciday/" local="131919462006569214" remote="131880384600000000" Dst="1" /> +<file name="03-02-Database-Functions.md" server="62.244.88.21/deciday/" local="131919462007274719" remote="131880384600000000" Dst="1" /> +<file name="03-03-Date-and-Time-Functions.md" server="62.244.88.21/deciday/" local="131919462008082178" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/01-Autofilters.md b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/01-Autofilters.md new file mode 100644 index 0000000..c2fbd2f --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/01-Autofilters.md @@ -0,0 +1,19 @@ +# PHPExcel AutoFilter Reference + + +## AutoFilters + +Each worksheet in an Excel Workbook can contain a single autoFilter range. Filtered data displays only the rows that meet criteria that you specify and hides rows that you do not want displayed. You can filter by more than one column: filters are additive, which means that each additional filter is based on the current filter and further reduces the subset of data. + +![01-01-autofilter.png](./images/01-01-autofilter.png "") + +When an AutoFilter is applied to a range of cells, the first row in an autofilter range will be the heading row, which displays the autoFilter dropdown icons. It is not part of the actual autoFiltered data. All subsequent rows are the autoFiltered data. So an AutoFilter range should always contain the heading row and one or more data rows (one data row is pretty meaningless), but PHPExcel won't actually stop you specifying a meaningless range: it's up to you as the developer to avoid such errors. + +To determine if a filter is applied, note the icon in the column heading. A drop-down arrow (![01-03-filter-icon-1.png](./images/01-03-filter-icon-1.png "")) means that filtering is enabled but not applied. In MS Excel, when you hover over the heading of a column with filtering enabled but not applied, a screen tip displays the cell text for the first row in that column, and the message "(Showing All)". + +![01-02-autofilter.png](./images/01-02-autofilter.png "") + + +A Filter button (![01-03-filter-icon-2.png](./images/01-03-filter-icon-2.png "")) means that a filter is applied. When you hover over the heading of a filtered column, a screen tip displays the filter that has been applied to that column, such as "Equals a red cell color" or "Larger than 150". + +![01-04-autofilter.png](./images/01-04-autofilter.png "") diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/02-Setting-an-Autofilter.md b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/02-Setting-an-Autofilter.md new file mode 100644 index 0000000..49c8fa4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/02-Setting-an-Autofilter.md @@ -0,0 +1,24 @@ +# PHPExcel AutoFilter Reference + + +## Setting an AutoFilter area on a worksheet + +To set an autoFilter on a range of cells. + +```php +$objPHPExcel->getActiveSheet()->setAutoFilter('A1:E20'); +``` + +The first row in an autofilter range will be the heading row, which displays the autoFilter dropdown icons. It is not part of the actual autoFiltered data. All subsequent rows are the autoFiltered data. So an AutoFilter range should always contain the heading row and one or more data rows (one data row is pretty meaningless, but PHPExcel won't actually stop you specifying a meaningless range: it's up to you as the developer to avoid such errors. + +If you want to set the whole worksheet as an autofilter region + +```php +$objPHPExcel->getActiveSheet()->setAutoFilter( + $objPHPExcel->getActiveSheet() + ->calculateWorksheetDimension() +); +``` + +This enables filtering, but does not actually apply any filters. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/03-Autofilter-Expressions.md b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/03-Autofilter-Expressions.md new file mode 100644 index 0000000..fd65901 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/03-Autofilter-Expressions.md @@ -0,0 +1,27 @@ +# PHPExcel AutoFilter Reference + + +## Autofilter Expressions + +PHPEXcel 1.7.8 introduced the ability to actually create, read and write filter expressions; initially only for Excel2007 files, but later releases will extend this to other formats. + +To apply a filter expression to an autoFilter range, you first need to identify which column you're going to be applying this filter to. + +```php +$autoFilter = $objPHPExcel->getActiveSheet()->getAutoFilter(); +$columnFilter = $autoFilter->getColumn('C'); +``` + +This returns an autoFilter column object, and you can then apply filter expressions to that column. + +There are a number of different types of autofilter expressions. The most commonly used are: + + - Simple Filters + - DateGroup Filters + - Custom filters + - Dynamic Filters + - Top Ten Filters + +These different types are mutually exclusive within any single column. You should not mix the different types of filter in the same column. PHPExcel will not actively prevent you from doing this, but the results are unpredictable. + +Other filter expression types (such as cell colour filters) are not yet supported. diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-01-Autofilter-Expressions-Simple.md b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-01-Autofilter-Expressions-Simple.md new file mode 100644 index 0000000..ca229b8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-01-Autofilter-Expressions-Simple.md @@ -0,0 +1,52 @@ +# PHPExcel AutoFilter Reference + + +## Autofilter Expressions + +### Simple filters + +In MS Excel, Simple Filters are a dropdown list of all values used in that column, and the user can select which ones they want to display and which ones they want to hide by ticking and unticking the checkboxes alongside each option. When the filter is applied, rows containing the checked entries will be displayed, rows that don't contain those values will be hidden. + +![04-01-simple-autofilter.png](./images/04-01-simple-autofilter.png "") + +To create a filter expression, we need to start by identifying the filter type. In this case, we're just going to specify that this filter is a standard filter. + +```php +$columnFilter->setFilterType( + PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER +); +``` + +Now we've identified the filter type, we can create a filter rule and set the filter values: + +When creating a simple filter in PHPExcel, you only need to specify the values for "checked" columns: you do this by creating a filter rule for each value. + +```php +$columnFilter->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + 'France' + ); + +$columnFilter->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + 'Germany' + ); +``` + +This creates two filter rules: the column will be filtered by values that match “France” OR “Germany”. For Simple Filters, you can create as many rules as you want + +Simple filters are always a comparison match of EQUALS, and multiple standard filters are always treated as being joined by an OR condition. + +#### Matching Blanks + +If you want to create a filter to select blank cells, you would use: + +```php +$columnFilter->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + '' + ); +``` diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-02-Autofilter-Expressions-Dategroup.md b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-02-Autofilter-Expressions-Dategroup.md new file mode 100644 index 0000000..2b9015f --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-02-Autofilter-Expressions-Dategroup.md @@ -0,0 +1,48 @@ +# PHPExcel AutoFilter Reference + + +## Autofilter Expressions + +### DateGroup Filters + +In MS Excel, DateGroup filters provide a series of dropdown filter selectors for date values, so you can specify entire years, or months within a year, or individual days within each month. + +![04-02-dategroup-autofilter.png](./images/04-02-dategroup-autofilter.png "") + +DateGroup filters are still applied as a Standard Filter type. + +```php +$columnFilter->setFilterType( + PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER +); +``` + +Creating a dateGroup filter in PHPExcel, you specify the values for "checked" columns as an associative array of year. month, day, hour minute and second. To select a year and month, you need to create a DateGroup rule identifying the selected year and month: + +```php +$columnFilter->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + array( + 'year' => 2012, + 'month' => 1 + ) + ) + ->setRuleType( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP + ); +``` + +The key values for the associative array are: + + - year + - month + - day + - hour + - minute + - second + +Like Standard filters, DateGroup filters are always a match of EQUALS, and multiple standard filters are always treated as being joined by an OR condition. + +Note that we alse specify a ruleType: to differentiate this from a standard filter, we explicitly set the Rule's Type to AUTOFILTER_RULETYPE_DATEGROUP. As with standard filters, we can create any number of DateGroup Filters. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-03-Autofilter-Expressions-Custom.md b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-03-Autofilter-Expressions-Custom.md new file mode 100644 index 0000000..9ca3bd4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-03-Autofilter-Expressions-Custom.md @@ -0,0 +1,84 @@ +# PHPExcel AutoFilter Reference + + +## Autofilter Expressions + +### Custom filters + +In MS Excel, Custom filters allow us to select more complex conditions using an operator as well as a value. Typical examples might be values that fall within a range (e.g. between -20 and +20), or text values with wildcards (e.g. beginning with the letter U). To handle this, they + +![04-03-custom-autofilter-1.png](./images/04-03-custom-autofilter-1.png "") + +![04-03-custom-autofilter-2.png](./images/04-03-custom-autofilter-2.png "") + +Custom filters are limited to 2 rules, and these can be joined using either an AND or an OR. + +We start by specifying a Filter type, this time a CUSTOMFILTER. + +```php +$columnFilter->setFilterType( + PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER +); +``` + +And then define our rules. + +The following shows a simple wildcard filter to show all column entries beginning with the letter 'U'. + +```php +$columnFilter->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + 'U*' + ) + ->setRuleType( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER + ); +``` + +MS Excel uses \* as a wildcard to match any number of characters, and ? as a wildcard to match a single character. 'U\*' equates to "begins with a 'U'"; '\*U' equates to "ends with a 'U'"; and '\*U\*' equates to "contains a 'U'" + +If you want to match explicitly against a \* or a ? character, you can escape it with a tilde (~), so ?~\*\* would explicitly match for a \* character as the second character in the cell value, followed by any number of other characters. The only other character that needs escaping is the ~ itself. + +To create a "between" condition, we need to define two rules: + +```php +$columnFilter->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL, + -20 + ) + ->setRuleType( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER + ); +$columnFilter->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL, + 20 + ) + ->setRuleType( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER + ); +``` + +We also set the rule type to CUSTOMFILTER. + +This defined two rules, filtering numbers that are >= -20 OR <= 20, so we also need to modify the join condition to reflect AND rather than OR. + +```php +$columnFilter->setAndOr( + PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_ANDOR_AND +); +``` + +The valid set of operators for Custom Filters are defined in the PHPExcel_Worksheet_AutoFilter_Column_Rule class, and comprise: + + Operator Constant | Value | + ------------------------------------------|----------------------| + AUTOFILTER_COLUMN_RULE_EQUAL | 'equal' | + AUTOFILTER_COLUMN_RULE_NOTEQUAL | 'notEqual' | + AUTOFILTER_COLUMN_RULE_GREATERTHAN | 'greaterThan' | + AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL | 'greaterThanOrEqual' | + AUTOFILTER_COLUMN_RULE_LESSTHAN | 'lessThan' | + AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL | 'lessThanOrEqual' | + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-04-Autofilter-Expressions-Dynamic.md b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-04-Autofilter-Expressions-Dynamic.md new file mode 100644 index 0000000..f285e57 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-04-Autofilter-Expressions-Dynamic.md @@ -0,0 +1,88 @@ +# PHPExcel AutoFilter Reference + + +## Autofilter Expressions + +### Dynamic Filters + +Dynamic Filters are based on a dynamic comparison condition, where the value we're comparing against the cell values is variable, such as 'today'; or when we're testing against an aggregate of the cell data (e.g. 'aboveAverage'). Only a single dynamic filter can be applied to a column at a time. + +![04-04-dynamic-autofilter.png](./images/04-04-dynamic-autofilter.png "") + +Again, we start by specifying a Filter type, this time a DYNAMICFILTER. + +```php +$columnFilter->setFilterType( + PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_DYNAMICFILTER +); +``` + +When defining the rule for a dynamic filter, we don't define a value (we can simply set that to NULL) but we do specify the dynamic filter category. + +```php +$columnFilter->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + NULL, + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE + ) + ->setRuleType( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMICFILTER + ); +``` + +We also set the rule type to DYNAMICFILTER. + +The valid set of dynamic filter categories is defined in the PHPExcel_Worksheet_AutoFilter_Column_Rule class, and comprises: + + Operator Constant | Value | + -----------------------------------------|----------------| + AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY | 'yesterday' | + AUTOFILTER_RULETYPE_DYNAMIC_TODAY | 'today' | + AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW | 'tomorrow' | + AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE | 'yearToDate' | + AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR | 'thisYear' | + AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER | 'thisQuarter' | + AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH | 'thisMonth' | + AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK | 'thisWeek' | + AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR | 'lastYear' | + AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER | 'lastQuarter' | + AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH | 'lastMonth' | + AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK | 'lastWeek' | + AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR | 'nextYear' | + AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER | 'nextQuarter' | + AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH | 'nextMonth' | + AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK | 'nextWeek' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1 | 'M1' | + AUTOFILTER_RULETYPE_DYNAMIC_JANUARY | 'M1' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2 | 'M2' | + AUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY | 'M2' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3 | 'M3' | + AUTOFILTER_RULETYPE_DYNAMIC_MARCH | 'M3' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4 | 'M4' | + AUTOFILTER_RULETYPE_DYNAMIC_APRIL | 'M4' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5 | 'M5' | + AUTOFILTER_RULETYPE_DYNAMIC_MAY | 'M5' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6 | 'M6' | + AUTOFILTER_RULETYPE_DYNAMIC_JUNE | 'M6' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7 | 'M7' | + AUTOFILTER_RULETYPE_DYNAMIC_JULY | 'M7' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8 | 'M8' | + AUTOFILTER_RULETYPE_DYNAMIC_AUGUST | 'M8' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9 | 'M9' | + AUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER | 'M9' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10 | 'M10' | + AUTOFILTER_RULETYPE_DYNAMIC_OCTOBER | 'M10' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11 | 'M11' | + AUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER | 'M11' | + AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12 | 'M12' | + AUTOFILTER_RULETYPE_DYNAMIC_DECEMBER | 'M12' | + AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1 | 'Q1' | + AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2 | 'Q2' | + AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3 | 'Q3' | + AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4 | 'Q4' | + AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE | 'aboveAverage' | + AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE | 'belowAverage' | + +We can only apply a single Dynamic Filter rule to a column at a time. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-05-Autofilter-Expressions-Topten.md b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-05-Autofilter-Expressions-Topten.md new file mode 100644 index 0000000..ff36b0a --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/04-05-Autofilter-Expressions-Topten.md @@ -0,0 +1,69 @@ +# PHPExcel AutoFilter Reference + + +## Autofilter Expressions + +### Top Ten Filters + +Top Ten Filters are similar to Dynamic Filters in that they are based on a summarisation of the actual data values in the cells. However, unlike Dynamic Filters where you can only select a single option, Top Ten Filters allow you to select based on a number of criteria: + +![04-05-custom-topten-1.png](./images/04-05-topten-autofilter-1.png "") + +![04-05-custom-topten-2.png](./images/04-05-topten-autofilter-2.png "") + +You can identify whether you want the top (highest) or bottom (lowest) values.You can identify how many values you wish to select in the filterYou can identify whether this should be a percentage or a number of items. + +Like Dynamic Filters, only a single Top Ten filter can be applied to a column at a time. + +We start by specifying a Filter type, this time a DYNAMICFILTER. + +```php +$columnFilter->setFilterType( + PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_TOPTENFILTER +); +``` + +Then we create the rule: + +```php +$columnFilter->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT, + 5, + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP + ) + ->setRuleType( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_TOPTENFILTER + ); +``` + +This will filter the Top 5 percent of values in the column. + +To specify the lowest (bottom 2 values), we would specify a rule of: + +```php +$columnFilter->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE, + 5, + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM + ) + ->setRuleType( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_TOPTENFILTER + ); +``` + +The option values for TopTen Filters top/bottom value/percent are all defined in the PHPExcel_Worksheet_AutoFilter_Column_Rule class, and comprise: + + Operator Constant | Value | + ---------------------------------------|-------------| + AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE | 'byValue' | + AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT | 'byPercent' | + +and + + Operator Constant | Value | + -------------------------------------|----------| + AUTOFILTER_COLUMN_RULE_TOPTEN_TOP | 'top' | + AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM | 'bottom' | + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/05-Executing-Autofilters.md b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/05-Executing-Autofilters.md new file mode 100644 index 0000000..852e1f4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/05-Executing-Autofilters.md @@ -0,0 +1,42 @@ +# PHPExcel AutoFilter Reference + + +## Executing an AutoFilter + +When an autofilter is applied in MS Excel, it sets the row hidden/visible flags for each row of the autofilter area based on the selected criteria, so that only those rows that match the filter criteria are displayed. + +PHPExcel will not execute the equivalent function automatically when you set or change a filter expression, but only when the file is saved. + +### Applying the Filter + +If you wish to execute your filter from within a script, you need to do this manually. You can do this using the autofilters showHideRows() method. + +```php +$autoFilter = $objPHPExcel->getActiveSheet()->getAutoFilter(); +$autoFilter->showHideRows(); +``` + +This will set all rows that match the filter criteria to visible, while hiding all other rows within the autofilter area. + +### Displaying Filtered Rows + +Simply looping through the rows in an autofilter area will still access ever row, whether it matches the filter criteria or not. To selectively access only the filtered rows, you need to test each row’s visibility settings. + +```php +foreach ($objPHPExcel->getActiveSheet()->getRowIterator() as $row) { + if ($objPHPExcel->getActiveSheet() + ->getRowDimension($row->getRowIndex())->getVisible()) { + echo ' Row number - ' , $row->getRowIndex() , ' '; + echo $objPHPExcel->getActiveSheet() + ->getCell( + 'C'.$row->getRowIndex() + ) + ->getValue(), ' '; + echo $objPHPExcel->getActiveSheet() + ->getCell( + 'D'.$row->getRowIndex() + )->getFormattedValue(), ' '; + echo EOL; + } +} +``` diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/06-Autofilter-Sorting.md b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/06-Autofilter-Sorting.md new file mode 100644 index 0000000..23133b8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/06-Autofilter-Sorting.md @@ -0,0 +1,7 @@ +# PHPExcel AutoFilter Reference + + +## AutoFilter Sorting + +In MS Excel, Autofiltering also allows the rows to be sorted. This feature is ***not*** supported by PHPExcel. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/_notes/dwsync.xml new file mode 100644 index 0000000..2e6affe --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/_notes/dwsync.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="01-Autofilters.md" server="62.244.88.21/deciday/" local="131919462008264411" remote="131880384600000000" Dst="1" /> +<file name="02-Setting-an-Autofilter.md" server="62.244.88.21/deciday/" local="131919462008449613" remote="131880384600000000" Dst="1" /> +<file name="03-Autofilter-Expressions.md" server="62.244.88.21/deciday/" local="131919462009127910" remote="131880384600000000" Dst="1" /> +<file name="04-01-Autofilter-Expressions-Simple.md" server="62.244.88.21/deciday/" local="131919462009305236" remote="131880384600000000" Dst="1" /> +<file name="04-02-Autofilter-Expressions-Dategroup.md" server="62.244.88.21/deciday/" local="131919462009527040" remote="131880384600000000" Dst="1" /> +<file name="04-03-Autofilter-Expressions-Custom.md" server="62.244.88.21/deciday/" local="131919462010334836" remote="131880384600000000" Dst="1" /> +<file name="04-04-Autofilter-Expressions-Dynamic.md" server="62.244.88.21/deciday/" local="131919462010344166" remote="131880384600000000" Dst="1" /> +<file name="04-05-Autofilter-Expressions-Topten.md" server="62.244.88.21/deciday/" local="131919462010672699" remote="131880384600000000" Dst="1" /> +<file name="05-Executing-Autofilters.md" server="62.244.88.21/deciday/" local="131919462011472763" remote="131880384600000000" Dst="1" /> +<file name="06-Autofilter-Sorting.md" server="62.244.88.21/deciday/" local="131919462011481104" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-01-autofilter.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-01-autofilter.png new file mode 100644 index 0000000..8b5c4fa Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-01-autofilter.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-02-autofilter.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-02-autofilter.png new file mode 100644 index 0000000..a2d6c9b Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-02-autofilter.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-03-filter-icon-1.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-03-filter-icon-1.png new file mode 100644 index 0000000..e5a7e7d Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-03-filter-icon-1.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-03-filter-icon-2.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-03-filter-icon-2.png new file mode 100644 index 0000000..1567245 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-03-filter-icon-2.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-04-autofilter.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-04-autofilter.png new file mode 100644 index 0000000..b88f4c4 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/01-04-autofilter.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-01-simple-autofilter.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-01-simple-autofilter.png new file mode 100644 index 0000000..5dcc6a4 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-01-simple-autofilter.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-02-dategroup-autofilter.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-02-dategroup-autofilter.png new file mode 100644 index 0000000..da1f089 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-02-dategroup-autofilter.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-03-custom-autofilter-1.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-03-custom-autofilter-1.png new file mode 100644 index 0000000..0098d98 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-03-custom-autofilter-1.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-03-custom-autofilter-2.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-03-custom-autofilter-2.png new file mode 100644 index 0000000..96ff2cf Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-03-custom-autofilter-2.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-04-dynamic-autofilter.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-04-dynamic-autofilter.png new file mode 100644 index 0000000..6cb905d Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-04-dynamic-autofilter.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-05-topten-autofilter-1.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-05-topten-autofilter-1.png new file mode 100644 index 0000000..207e645 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-05-topten-autofilter-1.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-05-topten-autofilter-2.png b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-05-topten-autofilter-2.png new file mode 100644 index 0000000..4db5125 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/04-05-topten-autofilter-2.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/_notes/dwsync.xml new file mode 100644 index 0000000..fdc7842 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Features/Autofilters/images/_notes/dwsync.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="01-01-autofilter.png" server="62.244.88.21/deciday/" local="131919462012551057" remote="131880384600000000" Dst="1" /> +<file name="01-03-filter-icon-1.png" server="62.244.88.21/deciday/" local="131919462012735211" remote="131880384600000000" Dst="1" /> +<file name="01-02-autofilter.png" server="62.244.88.21/deciday/" local="131919462012921590" remote="131880384600000000" Dst="1" /> +<file name="01-03-filter-icon-2.png" server="62.244.88.21/deciday/" local="131919462013392958" remote="131880384600000000" Dst="1" /> +<file name="01-04-autofilter.png" server="62.244.88.21/deciday/" local="131919462014040869" remote="131880384600000000" Dst="1" /> +<file name="04-01-simple-autofilter.png" server="62.244.88.21/deciday/" local="131919462014793507" remote="131880384600000000" Dst="1" /> +<file name="04-02-dategroup-autofilter.png" server="62.244.88.21/deciday/" local="131919462015489016" remote="131880384600000000" Dst="1" /> +<file name="04-03-custom-autofilter-1.png" server="62.244.88.21/deciday/" local="131919462016183174" remote="131880384600000000" Dst="1" /> +<file name="04-03-custom-autofilter-2.png" server="62.244.88.21/deciday/" local="131919462016850285" remote="131880384600000000" Dst="1" /> +<file name="04-04-dynamic-autofilter.png" server="62.244.88.21/deciday/" local="131919462018054339" remote="131880384600000000" Dst="1" /> +<file name="04-05-topten-autofilter-1.png" server="62.244.88.21/deciday/" local="131919462019668128" remote="131880384600000000" Dst="1" /> +<file name="04-05-topten-autofilter-2.png" server="62.244.88.21/deciday/" local="131919462020729007" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Functions/FunctionListByCategory.md b/site/config/PHPExcel-1.8/Documentation/markdown/Functions/FunctionListByCategory.md new file mode 100644 index 0000000..4ceb1e4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Functions/FunctionListByCategory.md @@ -0,0 +1,411 @@ +## CATEGORY_CUBE + + Excel Function | PHPExcel Function + --------------------|------------------------------------------- + CUBEKPIMEMBER | **\*\*\* Not yet Implemented** + CUBEMEMBER | **\*\*\* Not yet Implemented** + CUBEMEMBERPROPERTY | **\*\*\* Not yet Implemented** + CUBERANKEDMEMBER | **\*\*\* Not yet Implemented** + CUBESET | **\*\*\* Not yet Implemented** + CUBESETCOUNT | **\*\*\* Not yet Implemented** + CUBEVALUE | **\*\*\* Not yet Implemented** + +## CATEGORY_DATABASE + + Excel Function | PHPExcel Function + --------------------|------------------------------------------- + DAVERAGE | PHPExcel_Calculation_Database::DAVERAGE + DCOUNT | PHPExcel_Calculation_Database::DCOUNT + DCOUNTA | PHPExcel_Calculation_Database::DCOUNTA + DGET | PHPExcel_Calculation_Database::DGET + DMAX | PHPExcel_Calculation_Database::DMAX + DMIN | PHPExcel_Calculation_Database::DMIN + DPRODUCT | PHPExcel_Calculation_Database::DPRODUCT + DSTDEV | PHPExcel_Calculation_Database::DSTDEV + DSTDEVP | PHPExcel_Calculation_Database::DSTDEVP + DSUM | PHPExcel_Calculation_Database::DSUM + DVAR | PHPExcel_Calculation_Database::DVAR + DVARP | PHPExcel_Calculation_Database::DVARP + +## CATEGORY_DATE_AND_TIME + + Excel Function | PHPExcel Function + --------------------|------------------------------------------- + DATE | PHPExcel_Calculation_DateTime::DATE + DATEDIF | PHPExcel_Calculation_DateTime::DATEDIF + DATEVALUE | PHPExcel_Calculation_DateTime::DATEVALUE + DAY | PHPExcel_Calculation_DateTime::DAYOFMONTH + DAYS360 | PHPExcel_Calculation_DateTime::DAYS360 + EDATE | PHPExcel_Calculation_DateTime::EDATE + EOMONTH | PHPExcel_Calculation_DateTime::EOMONTH + HOUR | PHPExcel_Calculation_DateTime::HOUROFDAY + MINUTE | PHPExcel_Calculation_DateTime::MINUTEOFHOUR + MONTH | PHPExcel_Calculation_DateTime::MONTHOFYEAR + NETWORKDAYS | PHPExcel_Calculation_DateTime::NETWORKDAYS + NOW | PHPExcel_Calculation_DateTime::DATETIMENOW + SECOND | PHPExcel_Calculation_DateTime::SECONDOFMINUTE + TIME | PHPExcel_Calculation_DateTime::TIME + TIMEVALUE | PHPExcel_Calculation_DateTime::TIMEVALUE + TODAY | PHPExcel_Calculation_DateTime::DATENOW + WEEKDAY | PHPExcel_Calculation_DateTime::DAYOFWEEK + WEEKNUM | PHPExcel_Calculation_DateTime::WEEKOFYEAR + WORKDAY | PHPExcel_Calculation_DateTime::WORKDAY + YEAR | PHPExcel_Calculation_DateTime::YEAR + YEARFRAC | PHPExcel_Calculation_DateTime::YEARFRAC + +## CATEGORY_ENGINEERING + + Excel Function | PHPExcel Function + --------------------|------------------------------------------- + BESSELI | PHPExcel_Calculation_Engineering::BESSELI + BESSELJ | PHPExcel_Calculation_Engineering::BESSELJ + BESSELK | PHPExcel_Calculation_Engineering::BESSELK + BESSELY | PHPExcel_Calculation_Engineering::BESSELY + BIN2DEC | PHPExcel_Calculation_Engineering::BINTODEC + BIN2HEX | PHPExcel_Calculation_Engineering::BINTOHEX + BIN2OCT | PHPExcel_Calculation_Engineering::BINTOOCT + COMPLEX | PHPExcel_Calculation_Engineering::COMPLEX + CONVERT | PHPExcel_Calculation_Engineering::CONVERTUOM + DEC2BIN | PHPExcel_Calculation_Engineering::DECTOBIN + DEC2HEX | PHPExcel_Calculation_Engineering::DECTOHEX + DEC2OCT | PHPExcel_Calculation_Engineering::DECTOOCT + DELTA | PHPExcel_Calculation_Engineering::DELTA + ERF | PHPExcel_Calculation_Engineering::ERF + ERFC | PHPExcel_Calculation_Engineering::ERFC + GESTEP | PHPExcel_Calculation_Engineering::GESTEP + HEX2BIN | PHPExcel_Calculation_Engineering::HEXTOBIN + HEX2DEC | PHPExcel_Calculation_Engineering::HEXTODEC + HEX2OCT | PHPExcel_Calculation_Engineering::HEXTOOCT + IMABS | PHPExcel_Calculation_Engineering::IMABS + IMAGINARY | PHPExcel_Calculation_Engineering::IMAGINARY + IMARGUMENT | PHPExcel_Calculation_Engineering::IMARGUMENT + IMCONJUGATE | PHPExcel_Calculation_Engineering::IMCONJUGATE + IMCOS | PHPExcel_Calculation_Engineering::IMCOS + IMDIV | PHPExcel_Calculation_Engineering::IMDIV + IMEXP | PHPExcel_Calculation_Engineering::IMEXP + IMLN | PHPExcel_Calculation_Engineering::IMLN + IMLOG10 | PHPExcel_Calculation_Engineering::IMLOG10 + IMLOG2 | PHPExcel_Calculation_Engineering::IMLOG2 + IMPOWER | PHPExcel_Calculation_Engineering::IMPOWER + IMPRODUCT | PHPExcel_Calculation_Engineering::IMPRODUCT + IMREAL | PHPExcel_Calculation_Engineering::IMREAL + IMSIN | PHPExcel_Calculation_Engineering::IMSIN + IMSQRT | PHPExcel_Calculation_Engineering::IMSQRT + IMSUB | PHPExcel_Calculation_Engineering::IMSUB + IMSUM | PHPExcel_Calculation_Engineering::IMSUM + OCT2BIN | PHPExcel_Calculation_Engineering::OCTTOBIN + OCT2DEC | PHPExcel_Calculation_Engineering::OCTTODEC + OCT2HEX | PHPExcel_Calculation_Engineering::OCTTOHEX + +## CATEGORY_FINANCIAL + + Excel Function | PHPExcel Function + --------------------|------------------------------------------- + ACCRINT | PHPExcel_Calculation_Financial::ACCRINT + ACCRINTM | PHPExcel_Calculation_Financial::ACCRINTM + AMORDEGRC | PHPExcel_Calculation_Financial::AMORDEGRC + AMORLINC | PHPExcel_Calculation_Financial::AMORLINC + COUPDAYBS | PHPExcel_Calculation_Financial::COUPDAYBS + COUPDAYS | PHPExcel_Calculation_Financial::COUPDAYS + COUPDAYSNC | PHPExcel_Calculation_Financial::COUPDAYSNC + COUPNCD | PHPExcel_Calculation_Financial::COUPNCD + COUPNUM | PHPExcel_Calculation_Financial::COUPNUM + COUPPCD | PHPExcel_Calculation_Financial::COUPPCD + CUMIPMT | PHPExcel_Calculation_Financial::CUMIPMT + CUMPRINC | PHPExcel_Calculation_Financial::CUMPRINC + DB | PHPExcel_Calculation_Financial::DB + DDB | PHPExcel_Calculation_Financial::DDB + DISC | PHPExcel_Calculation_Financial::DISC + DOLLARDE | PHPExcel_Calculation_Financial::DOLLARDE + DOLLARFR | PHPExcel_Calculation_Financial::DOLLARFR + DURATION | **\*\*\* Not yet Implemented** + EFFECT | PHPExcel_Calculation_Financial::EFFECT + FV | PHPExcel_Calculation_Financial::FV + FVSCHEDULE | PHPExcel_Calculation_Financial::FVSCHEDULE + INTRATE | PHPExcel_Calculation_Financial::INTRATE + IPMT | PHPExcel_Calculation_Financial::IPMT + IRR | PHPExcel_Calculation_Financial::IRR + ISPMT | PHPExcel_Calculation_Financial::ISPMT + MDURATION | **\*\*\* Not yet Implemented** + MIRR | PHPExcel_Calculation_Financial::MIRR + NOMINAL | PHPExcel_Calculation_Financial::NOMINAL + NPER | PHPExcel_Calculation_Financial::NPER + NPV | PHPExcel_Calculation_Financial::NPV + ODDFPRICE | **\*\*\* Not yet Implemented** + ODDFYIELD | **\*\*\* Not yet Implemented** + ODDLPRICE | **\*\*\* Not yet Implemented** + ODDLYIELD | **\*\*\* Not yet Implemented** + PMT | PHPExcel_Calculation_Financial::PMT + PPMT | PHPExcel_Calculation_Financial::PPMT + PRICE | PHPExcel_Calculation_Financial::PRICE + PRICEDISC | PHPExcel_Calculation_Financial::PRICEDISC + PRICEMAT | PHPExcel_Calculation_Financial::PRICEMAT + PV | PHPExcel_Calculation_Financial::PV + RATE | PHPExcel_Calculation_Financial::RATE + RECEIVED | PHPExcel_Calculation_Financial::RECEIVED + SLN | PHPExcel_Calculation_Financial::SLN + SYD | PHPExcel_Calculation_Financial::SYD + TBILLEQ | PHPExcel_Calculation_Financial::TBILLEQ + TBILLPRICE | PHPExcel_Calculation_Financial::TBILLPRICE + TBILLYIELD | PHPExcel_Calculation_Financial::TBILLYIELD + USDOLLAR | **\*\*\* Not yet Implemented** + VDB | **\*\*\* Not yet Implemented** + XIRR | PHPExcel_Calculation_Financial::XIRR + XNPV | PHPExcel_Calculation_Financial::XNPV + YIELD | **\*\*\* Not yet Implemented** + YIELDDISC | PHPExcel_Calculation_Financial::YIELDDISC + YIELDMAT | PHPExcel_Calculation_Financial::YIELDMAT + +## CATEGORY_INFORMATION + + Excel Function | PHPExcel Function + --------------------|------------------------------------------- + CELL | **\*\*\* Not yet Implemented** + ERROR.TYPE | PHPExcel_Calculation_Functions::ERROR_TYPE + INFO | **\*\*\* Not yet Implemented** + ISBLANK | PHPExcel_Calculation_Functions::IS_BLANK + ISERR | PHPExcel_Calculation_Functions::IS_ERR + ISERROR | PHPExcel_Calculation_Functions::IS_ERROR + ISEVEN | PHPExcel_Calculation_Functions::IS_EVEN + ISLOGICAL | PHPExcel_Calculation_Functions::IS_LOGICAL + ISNA | PHPExcel_Calculation_Functions::IS_NA + ISNONTEXT | PHPExcel_Calculation_Functions::IS_NONTEXT + ISNUMBER | PHPExcel_Calculation_Functions::IS_NUMBER + ISODD | PHPExcel_Calculation_Functions::IS_ODD + ISREF | **\*\*\* Not yet Implemented** + ISTEXT | PHPExcel_Calculation_Functions::IS_TEXT + N | PHPExcel_Calculation_Functions::N + NA | PHPExcel_Calculation_Functions::NA + TYPE | PHPExcel_Calculation_Functions::TYPE + VERSION | PHPExcel_Calculation_Functions::VERSION + +## CATEGORY_LOGICAL + + Excel Function | PHPExcel Function + --------------------|------------------------------------------- + AND | PHPExcel_Calculation_Logical::LOGICAL_AND + FALSE | PHPExcel_Calculation_Logical::FALSE + IF | PHPExcel_Calculation_Logical::STATEMENT_IF + IFERROR | PHPExcel_Calculation_Logical::IFERROR + NOT | PHPExcel_Calculation_Logical::NOT + OR | PHPExcel_Calculation_Logical::LOGICAL_OR + TRUE | PHPExcel_Calculation_Logical::TRUE + +## CATEGORY_LOOKUP_AND_REFERENCE + + Excel Function | PHPExcel Function + --------------------|------------------------------------------- + ADDRESS | PHPExcel_Calculation_LookupRef::CELL_ADDRESS + AREAS | **\*\*\* Not yet Implemented** + CHOOSE | PHPExcel_Calculation_LookupRef::CHOOSE + COLUMN | PHPExcel_Calculation_LookupRef::COLUMN + COLUMNS | PHPExcel_Calculation_LookupRef::COLUMNS + GETPIVOTDATA | **\*\*\* Not yet Implemented** + HLOOKUP | **\*\*\* Not yet Implemented** + HYPERLINK | PHPExcel_Calculation_LookupRef::HYPERLINK + INDEX | PHPExcel_Calculation_LookupRef::INDEX + INDIRECT | PHPExcel_Calculation_LookupRef::INDIRECT + LOOKUP | PHPExcel_Calculation_LookupRef::LOOKUP + MATCH | PHPExcel_Calculation_LookupRef::MATCH + OFFSET | PHPExcel_Calculation_LookupRef::OFFSET + ROW | PHPExcel_Calculation_LookupRef::ROW + ROWS | PHPExcel_Calculation_LookupRef::ROWS + RTD | **\*\*\* Not yet Implemented** + TRANSPOSE | PHPExcel_Calculation_LookupRef::TRANSPOSE + VLOOKUP | PHPExcel_Calculation_LookupRef::VLOOKUP + +## CATEGORY_MATH_AND_TRIG + + Excel Function | PHPExcel Function + --------------------|------------------------------------------- + ABS | abs + ACOS | acos + ACOSH | acosh + ASIN | asin + ASINH | asinh + ATAN | atan + ATAN2 | PHPExcel_Calculation_MathTrig::REVERSE_ATAN2 + ATANH | atanh + CEILING | PHPExcel_Calculation_MathTrig::CEILING + COMBIN | PHPExcel_Calculation_MathTrig::COMBIN + COS | cos + COSH | cosh + DEGREES | rad2deg + EVEN | PHPExcel_Calculation_MathTrig::EVEN + EXP | exp + FACT | PHPExcel_Calculation_MathTrig::FACT + FACTDOUBLE | PHPExcel_Calculation_MathTrig::FACTDOUBLE + FLOOR | PHPExcel_Calculation_MathTrig::FLOOR + GCD | PHPExcel_Calculation_MathTrig::GCD + INT | PHPExcel_Calculation_MathTrig::INT + LCM | PHPExcel_Calculation_MathTrig::LCM + LN | log + LOG | PHPExcel_Calculation_MathTrig::LOG_BASE + LOG10 | log10 + MDETERM | PHPExcel_Calculation_MathTrig::MDETERM + MINVERSE | PHPExcel_Calculation_MathTrig::MINVERSE + MMULT | PHPExcel_Calculation_MathTrig::MMULT + MOD | PHPExcel_Calculation_MathTrig::MOD + MROUND | PHPExcel_Calculation_MathTrig::MROUND + MULTINOMIAL | PHPExcel_Calculation_MathTrig::MULTINOMIAL + ODD | PHPExcel_Calculation_MathTrig::ODD + PI | pi + POWER | PHPExcel_Calculation_MathTrig::POWER + PRODUCT | PHPExcel_Calculation_MathTrig::PRODUCT + QUOTIENT | PHPExcel_Calculation_MathTrig::QUOTIENT + RADIANS | deg2rad + RAND | PHPExcel_Calculation_MathTrig::RAND + RANDBETWEEN | PHPExcel_Calculation_MathTrig::RAND + ROMAN | PHPExcel_Calculation_MathTrig::ROMAN + ROUND | round + ROUNDDOWN | PHPExcel_Calculation_MathTrig::ROUNDDOWN + ROUNDUP | PHPExcel_Calculation_MathTrig::ROUNDUP + SERIESSUM | PHPExcel_Calculation_MathTrig::SERIESSUM + SIGN | PHPExcel_Calculation_MathTrig::SIGN + SIN | sin + SINH | sinh + SQRT | sqrt + SQRTPI | PHPExcel_Calculation_MathTrig::SQRTPI + SUBTOTAL | PHPExcel_Calculation_MathTrig::SUBTOTAL + SUM | PHPExcel_Calculation_MathTrig::SUM + SUMIF | PHPExcel_Calculation_MathTrig::SUMIF + SUMIFS | **\*\*\* Not yet Implemented** + SUMPRODUCT | PHPExcel_Calculation_MathTrig::SUMPRODUCT + SUMSQ | PHPExcel_Calculation_MathTrig::SUMSQ + SUMX2MY2 | PHPExcel_Calculation_MathTrig::SUMX2MY2 + SUMX2PY2 | PHPExcel_Calculation_MathTrig::SUMX2PY2 + SUMXMY2 | PHPExcel_Calculation_MathTrig::SUMXMY2 + TAN | tan + TANH | tanh + TRUNC | PHPExcel_Calculation_MathTrig::TRUNC + +## CATEGORY_STATISTICAL + + Excel Function | PHPExcel Function + --------------------|------------------------------------------- + AVEDEV | PHPExcel_Calculation_Statistical::AVEDEV + AVERAGE | PHPExcel_Calculation_Statistical::AVERAGE + AVERAGEA | PHPExcel_Calculation_Statistical::AVERAGEA + AVERAGEIF | PHPExcel_Calculation_Statistical::AVERAGEIF + AVERAGEIFS | **\*\*\* Not yet Implemented** + BETADIST | PHPExcel_Calculation_Statistical::BETADIST + BETAINV | PHPExcel_Calculation_Statistical::BETAINV + BINOMDIST | PHPExcel_Calculation_Statistical::BINOMDIST + CHIDIST | PHPExcel_Calculation_Statistical::CHIDIST + CHIINV | PHPExcel_Calculation_Statistical::CHIINV + CHITEST | **\*\*\* Not yet Implemented** + CONFIDENCE | PHPExcel_Calculation_Statistical::CONFIDENCE + CORREL | PHPExcel_Calculation_Statistical::CORREL + COUNT | PHPExcel_Calculation_Statistical::COUNT + COUNTA | PHPExcel_Calculation_Statistical::COUNTA + COUNTBLANK | PHPExcel_Calculation_Statistical::COUNTBLANK + COUNTIF | PHPExcel_Calculation_Statistical::COUNTIF + COUNTIFS | **\*\*\* Not yet Implemented** + COVAR | PHPExcel_Calculation_Statistical::COVAR + CRITBINOM | PHPExcel_Calculation_Statistical::CRITBINOM + DEVSQ | PHPExcel_Calculation_Statistical::DEVSQ + EXPONDIST | PHPExcel_Calculation_Statistical::EXPONDIST + FDIST | **\*\*\* Not yet Implemented** + FINV | **\*\*\* Not yet Implemented** + FISHER | PHPExcel_Calculation_Statistical::FISHER + FISHERINV | PHPExcel_Calculation_Statistical::FISHERINV + FORECAST | PHPExcel_Calculation_Statistical::FORECAST + FREQUENCY | **\*\*\* Not yet Implemented** + FTEST | **\*\*\* Not yet Implemented** + GAMMADIST | PHPExcel_Calculation_Statistical::GAMMADIST + GAMMAINV | PHPExcel_Calculation_Statistical::GAMMAINV + GAMMALN | PHPExcel_Calculation_Statistical::GAMMALN + GEOMEAN | PHPExcel_Calculation_Statistical::GEOMEAN + GROWTH | PHPExcel_Calculation_Statistical::GROWTH + HARMEAN | PHPExcel_Calculation_Statistical::HARMEAN + HYPGEOMDIST | PHPExcel_Calculation_Statistical::HYPGEOMDIST + INTERCEPT | PHPExcel_Calculation_Statistical::INTERCEPT + KURT | PHPExcel_Calculation_Statistical::KURT + LARGE | PHPExcel_Calculation_Statistical::LARGE + LINEST | PHPExcel_Calculation_Statistical::LINEST + LOGEST | PHPExcel_Calculation_Statistical::LOGEST + LOGINV | PHPExcel_Calculation_Statistical::LOGINV + LOGNORMDIST | PHPExcel_Calculation_Statistical::LOGNORMDIST + MAX | PHPExcel_Calculation_Statistical::MAX + MAXA | PHPExcel_Calculation_Statistical::MAXA + MAXIF | PHPExcel_Calculation_Statistical::MAXIF + MEDIAN | PHPExcel_Calculation_Statistical::MEDIAN + MEDIANIF | **\*\*\* Not yet Implemented** + MIN | PHPExcel_Calculation_Statistical::MIN + MINA | PHPExcel_Calculation_Statistical::MINA + MINIF | PHPExcel_Calculation_Statistical::MINIF + MODE | PHPExcel_Calculation_Statistical::MODE + NEGBINOMDIST | PHPExcel_Calculation_Statistical::NEGBINOMDIST + NORMDIST | PHPExcel_Calculation_Statistical::NORMDIST + NORMINV | PHPExcel_Calculation_Statistical::NORMINV + NORMSDIST | PHPExcel_Calculation_Statistical::NORMSDIST + NORMSINV | PHPExcel_Calculation_Statistical::NORMSINV + PEARSON | PHPExcel_Calculation_Statistical::CORREL + PERCENTILE | PHPExcel_Calculation_Statistical::PERCENTILE + PERCENTRANK | PHPExcel_Calculation_Statistical::PERCENTRANK + PERMUT | PHPExcel_Calculation_Statistical::PERMUT + POISSON | PHPExcel_Calculation_Statistical::POISSON + PROB | **\*\*\* Not yet Implemented** + QUARTILE | PHPExcel_Calculation_Statistical::QUARTILE + RANK | PHPExcel_Calculation_Statistical::RANK + RSQ | PHPExcel_Calculation_Statistical::RSQ + SKEW | PHPExcel_Calculation_Statistical::SKEW + SLOPE | PHPExcel_Calculation_Statistical::SLOPE + SMALL | PHPExcel_Calculation_Statistical::SMALL + STANDARDIZE | PHPExcel_Calculation_Statistical::STANDARDIZE + STDEV | PHPExcel_Calculation_Statistical::STDEV + STDEVA | PHPExcel_Calculation_Statistical::STDEVA + STDEVP | PHPExcel_Calculation_Statistical::STDEVP + STDEVPA | PHPExcel_Calculation_Statistical::STDEVPA + STEYX | PHPExcel_Calculation_Statistical::STEYX + TDIST | PHPExcel_Calculation_Statistical::TDIST + TINV | PHPExcel_Calculation_Statistical::TINV + TREND | PHPExcel_Calculation_Statistical::TREND + TRIMMEAN | PHPExcel_Calculation_Statistical::TRIMMEAN + TTEST | **\*\*\* Not yet Implemented** + VAR | PHPExcel_Calculation_Statistical::VARFunc + VARA | PHPExcel_Calculation_Statistical::VARA + VARP | PHPExcel_Calculation_Statistical::VARP + VARPA | PHPExcel_Calculation_Statistical::VARPA + WEIBULL | PHPExcel_Calculation_Statistical::WEIBULL + ZTEST | PHPExcel_Calculation_Statistical::ZTEST + +## CATEGORY_TEXT_AND_DATA + + Excel Function | PHPExcel Function + --------------------|------------------------------------------- + ASC | **\*\*\* Not yet Implemented** + BAHTTEXT | **\*\*\* Not yet Implemented** + CHAR | PHPExcel_Calculation_TextData::CHARACTER + CLEAN | PHPExcel_Calculation_TextData::TRIMNONPRINTABLE + CODE | PHPExcel_Calculation_TextData::ASCIICODE + CONCATENATE | PHPExcel_Calculation_TextData::CONCATENATE + DOLLAR | PHPExcel_Calculation_TextData::DOLLAR + EXACT | **\*\*\* Not yet Implemented** + FIND | PHPExcel_Calculation_TextData::SEARCHSENSITIVE + FINDB | PHPExcel_Calculation_TextData::SEARCHSENSITIVE + FIXED | PHPExcel_Calculation_TextData::FIXEDFORMAT + JIS | **\*\*\* Not yet Implemented** + LEFT | PHPExcel_Calculation_TextData::LEFT + LEFTB | PHPExcel_Calculation_TextData::LEFT + LEN | PHPExcel_Calculation_TextData::STRINGLENGTH + LENB | PHPExcel_Calculation_TextData::STRINGLENGTH + LOWER | PHPExcel_Calculation_TextData::LOWERCASE + MID | PHPExcel_Calculation_TextData::MID + MIDB | PHPExcel_Calculation_TextData::MID + PHONETIC | **\*\*\* Not yet Implemented** + PROPER | PHPExcel_Calculation_TextData::PROPERCASE + REPLACE | PHPExcel_Calculation_TextData::REPLACE + REPLACEB | PHPExcel_Calculation_TextData::REPLACE + REPT | str_repeat + RIGHT | PHPExcel_Calculation_TextData::RIGHT + RIGHTB | PHPExcel_Calculation_TextData::RIGHT + SEARCH | PHPExcel_Calculation_TextData::SEARCHINSENSITIVE + SEARCHB | PHPExcel_Calculation_TextData::SEARCHINSENSITIVE + SUBSTITUTE | PHPExcel_Calculation_TextData::SUBSTITUTE + T | PHPExcel_Calculation_TextData::RETURNSTRING + TEXT | PHPExcel_Calculation_TextData::TEXTFORMAT + TRIM | PHPExcel_Calculation_TextData::TRIMSPACES + UPPER | PHPExcel_Calculation_TextData::UPPERCASE + VALUE | **\*\*\* Not yet Implemented** + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Functions/FunctionListByName.md b/site/config/PHPExcel-1.8/Documentation/markdown/Functions/FunctionListByName.md new file mode 100644 index 0000000..b69e454 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Functions/FunctionListByName.md @@ -0,0 +1,485 @@ +#A + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + ABS | CATEGORY_MATH_AND_TRIG | abs + ACCRINT | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::ACCRINT + ACCRINTM | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::ACCRINTM + ACOS | CATEGORY_MATH_AND_TRIG | acos + ACOSH | CATEGORY_MATH_AND_TRIG | acosh + ADDRESS | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::CELL_ADDRESS + AMORDEGRC | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::AMORDEGRC + AMORLINC | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::AMORLINC + AND | CATEGORY_LOGICAL | PHPExcel_Calculation_Logical::LOGICAL_AND + AREAS | CATEGORY_LOOKUP_AND_REFERENCE | **\*\*\* Not yet Implemented** + ASC | CATEGORY_TEXT_AND_DATA | **\*\*\* Not yet Implemented** + ASIN | CATEGORY_MATH_AND_TRIG | asin + ASINH | CATEGORY_MATH_AND_TRIG | asinh + ATAN | CATEGORY_MATH_AND_TRIG | atan + ATAN2 | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::REVERSE_ATAN2 + ATANH | CATEGORY_MATH_AND_TRIG | atanh + AVEDEV | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::AVEDEV + AVERAGE | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::AVERAGE + AVERAGEA | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::AVERAGEA + AVERAGEIF | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::AVERAGEIF + AVERAGEIFS | CATEGORY_STATISTICAL | **\*\*\* Not yet Implemented** + +#B + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + BAHTTEXT | CATEGORY_TEXT_AND_DATA | **\*\*\* Not yet Implemented** + BESSELI | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::BESSELI + BESSELJ | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::BESSELJ + BESSELK | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::BESSELK + BESSELY | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::BESSELY + BETADIST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::BETADIST + BETAINV | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::BETAINV + BIN2DEC | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::BINTODEC + BIN2HEX | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::BINTOHEX + BIN2OCT | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::BINTOOCT + BINOMDIST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::BINOMDIST + +#C + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + CEILING | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::CEILING + CELL | CATEGORY_INFORMATION | **\*\*\* Not yet Implemented** + CHAR | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::CHARACTER + CHIDIST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::CHIDIST + CHIINV | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::CHIINV + CHITEST | CATEGORY_STATISTICAL | **\*\*\* Not yet Implemented** + CHOOSE | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::CHOOSE + CLEAN | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::TRIMNONPRINTABLE + CODE | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::ASCIICODE + COLUMN | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::COLUMN + COLUMNS | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::COLUMNS + COMBIN | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::COMBIN + COMPLEX | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::COMPLEX + CONCATENATE | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::CONCATENATE + CONFIDENCE | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::CONFIDENCE + CONVERT | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::CONVERTUOM + CORREL | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::CORREL + COS | CATEGORY_MATH_AND_TRIG | cos + COSH | CATEGORY_MATH_AND_TRIG | cosh + COUNT | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::COUNT + COUNTA | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::COUNTA + COUNTBLANK | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::COUNTBLANK + COUNTIF | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::COUNTIF + COUNTIFS | CATEGORY_STATISTICAL | **\*\*\* Not yet Implemented** + COUPDAYBS | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::COUPDAYBS + COUPDAYS | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::COUPDAYS + COUPDAYSNC | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::COUPDAYSNC + COUPNCD | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::COUPNCD + COUPNUM | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::COUPNUM + COUPPCD | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::COUPPCD + COVAR | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::COVAR + CRITBINOM | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::CRITBINOM + CUBEKPIMEMBER | CATEGORY_CUBE | **\*\*\* Not yet Implemented** + CUBEMEMBER | CATEGORY_CUBE | **\*\*\* Not yet Implemented** + CUBEMEMBERPROPERTY | CATEGORY_CUBE | **\*\*\* Not yet Implemented** + CUBERANKEDMEMBER | CATEGORY_CUBE | **\*\*\* Not yet Implemented** + CUBESET | CATEGORY_CUBE | **\*\*\* Not yet Implemented** + CUBESETCOUNT | CATEGORY_CUBE | **\*\*\* Not yet Implemented** + CUBEVALUE | CATEGORY_CUBE | **\*\*\* Not yet Implemented** + CUMIPMT | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::CUMIPMT + CUMPRINC | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::CUMPRINC + +#D + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + DATE | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::DATE + DATEDIF | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::DATEDIF + DATEVALUE | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::DATEVALUE + DAVERAGE | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DAVERAGE + DAY | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::DAYOFMONTH + DAYS360 | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::DAYS360 + DB | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::DB + DCOUNT | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DCOUNT + DCOUNTA | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DCOUNTA + DDB | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::DDB + DEC2BIN | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::DECTOBIN + DEC2HEX | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::DECTOHEX + DEC2OCT | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::DECTOOCT + DEGREES | CATEGORY_MATH_AND_TRIG | rad2deg + DELTA | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::DELTA + DEVSQ | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::DEVSQ + DGET | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DGET + DISC | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::DISC + DMAX | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DMAX + DMIN | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DMIN + DOLLAR | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::DOLLAR + DOLLARDE | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::DOLLARDE + DOLLARFR | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::DOLLARFR + DPRODUCT | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DPRODUCT + DSTDEV | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DSTDEV + DSTDEVP | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DSTDEVP + DSUM | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DSUM + DURATION | CATEGORY_FINANCIAL | **\*\*\* Not yet Implemented** + DVAR | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DVAR + DVARP | CATEGORY_DATABASE | PHPExcel_Calculation_Database::DVARP + +#E + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + EDATE | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::EDATE + EFFECT | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::EFFECT + EOMONTH | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::EOMONTH + ERF | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::ERF + ERFC | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::ERFC + ERROR.TYPE | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::ERROR_TYPE + EVEN | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::EVEN + EXACT | CATEGORY_TEXT_AND_DATA | **\*\*\* Not yet Implemented** + EXP | CATEGORY_MATH_AND_TRIG | exp + EXPONDIST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::EXPONDIST + +#F + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + FACT | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::FACT + FACTDOUBLE | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::FACTDOUBLE + FALSE | CATEGORY_LOGICAL | PHPExcel_Calculation_Logical::FALSE + FDIST | CATEGORY_STATISTICAL | **\*\*\* Not yet Implemented** + FIND | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::SEARCHSENSITIVE + FINDB | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::SEARCHSENSITIVE + FINV | CATEGORY_STATISTICAL | **\*\*\* Not yet Implemented** + FISHER | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::FISHER + FISHERINV | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::FISHERINV + FIXED | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::FIXEDFORMAT + FLOOR | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::FLOOR + FORECAST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::FORECAST + FREQUENCY | CATEGORY_STATISTICAL | **\*\*\* Not yet Implemented** + FTEST | CATEGORY_STATISTICAL | **\*\*\* Not yet Implemented** + FV | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::FV + FVSCHEDULE | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::FVSCHEDULE + +#G + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + GAMMADIST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::GAMMADIST + GAMMAINV | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::GAMMAINV + GAMMALN | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::GAMMALN + GCD | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::GCD + GEOMEAN | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::GEOMEAN + GESTEP | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::GESTEP + GETPIVOTDATA | CATEGORY_LOOKUP_AND_REFERENCE | **\*\*\* Not yet Implemented** + GROWTH | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::GROWTH + +#H + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + HARMEAN | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::HARMEAN + HEX2BIN | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::HEXTOBIN + HEX2DEC | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::HEXTODEC + HEX2OCT | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::HEXTOOCT + HLOOKUP | CATEGORY_LOOKUP_AND_REFERENCE | **\*\*\* Not yet Implemented** + HOUR | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::HOUROFDAY + HYPERLINK | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::HYPERLINK + HYPGEOMDIST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::HYPGEOMDIST + +#I + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + IF | CATEGORY_LOGICAL | PHPExcel_Calculation_Logical::STATEMENT_IF + IFERROR | CATEGORY_LOGICAL | PHPExcel_Calculation_Logical::IFERROR + IMABS | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMABS + IMAGINARY | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMAGINARY + IMARGUMENT | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMARGUMENT + IMCONJUGATE | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMCONJUGATE + IMCOS | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMCOS + IMDIV | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMDIV + IMEXP | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMEXP + IMLN | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMLN + IMLOG10 | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMLOG10 + IMLOG2 | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMLOG2 + IMPOWER | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMPOWER + IMPRODUCT | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMPRODUCT + IMREAL | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMREAL + IMSIN | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMSIN + IMSQRT | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMSQRT + IMSUB | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMSUB + IMSUM | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::IMSUM + INDEX | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::INDEX + INDIRECT | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::INDIRECT + INFO | CATEGORY_INFORMATION | **\*\*\* Not yet Implemented** + INT | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::INT + INTERCEPT | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::INTERCEPT + INTRATE | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::INTRATE + IPMT | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::IPMT + IRR | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::IRR + ISBLANK | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::IS_BLANK + ISERR | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::IS_ERR + ISERROR | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::IS_ERROR + ISEVEN | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::IS_EVEN + ISLOGICAL | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::IS_LOGICAL + ISNA | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::IS_NA + ISNONTEXT | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::IS_NONTEXT + ISNUMBER | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::IS_NUMBER + ISODD | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::IS_ODD + ISPMT | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::ISPMT + ISREF | CATEGORY_INFORMATION | **\*\*\* Not yet Implemented** + ISTEXT | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::IS_TEXT + +#J + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + JIS | CATEGORY_TEXT_AND_DATA | **\*\*\* Not yet Implemented** + +#K + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + KURT | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::KURT + +#L + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + LARGE | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::LARGE + LCM | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::LCM + LEFT | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::LEFT + LEFTB | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::LEFT + LEN | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::STRINGLENGTH + LENB | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::STRINGLENGTH + LINEST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::LINEST + LN | CATEGORY_MATH_AND_TRIG | log + LOG | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::LOG_BASE + LOG10 | CATEGORY_MATH_AND_TRIG | log10 + LOGEST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::LOGEST + LOGINV | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::LOGINV + LOGNORMDIST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::LOGNORMDIST + LOOKUP | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::LOOKUP + LOWER | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::LOWERCASE + +#M + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + MATCH | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::MATCH + MAX | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::MAX + MAXA | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::MAXA + MAXIF | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::MAXIF + MDETERM | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::MDETERM + MDURATION | CATEGORY_FINANCIAL | **\*\*\* Not yet Implemented** + MEDIAN | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::MEDIAN + MEDIANIF | CATEGORY_STATISTICAL | **\*\*\* Not yet Implemented** + MID | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::MID + MIDB | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::MID + MIN | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::MIN + MINA | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::MINA + MINIF | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::MINIF + MINUTE | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::MINUTEOFHOUR + MINVERSE | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::MINVERSE + MIRR | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::MIRR + MMULT | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::MMULT + MOD | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::MOD + MODE | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::MODE + MONTH | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::MONTHOFYEAR + MROUND | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::MROUND + MULTINOMIAL | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::MULTINOMIAL + +#N + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + N | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::N + NA | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::NA + NEGBINOMDIST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::NEGBINOMDIST + NETWORKDAYS | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::NETWORKDAYS + NOMINAL | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::NOMINAL + NORMDIST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::NORMDIST + NORMINV | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::NORMINV + NORMSDIST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::NORMSDIST + NORMSINV | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::NORMSINV + NOT | CATEGORY_LOGICAL | PHPExcel_Calculation_Logical::NOT + NOW | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::DATETIMENOW + NPER | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::NPER + NPV | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::NPV + +#O + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + OCT2BIN | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::OCTTOBIN + OCT2DEC | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::OCTTODEC + OCT2HEX | CATEGORY_ENGINEERING | PHPExcel_Calculation_Engineering::OCTTOHEX + ODD | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::ODD + ODDFPRICE | CATEGORY_FINANCIAL | **\*\*\* Not yet Implemented** + ODDFYIELD | CATEGORY_FINANCIAL | **\*\*\* Not yet Implemented** + ODDLPRICE | CATEGORY_FINANCIAL | **\*\*\* Not yet Implemented** + ODDLYIELD | CATEGORY_FINANCIAL | **\*\*\* Not yet Implemented** + OFFSET | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::OFFSET + OR | CATEGORY_LOGICAL | PHPExcel_Calculation_Logical::LOGICAL_OR + +#P + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + PEARSON | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::CORREL + PERCENTILE | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::PERCENTILE + PERCENTRANK | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::PERCENTRANK + PERMUT | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::PERMUT + PHONETIC | CATEGORY_TEXT_AND_DATA | **\*\*\* Not yet Implemented** + PI | CATEGORY_MATH_AND_TRIG | pi + PMT | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::PMT + POISSON | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::POISSON + POWER | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::POWER + PPMT | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::PPMT + PRICE | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::PRICE + PRICEDISC | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::PRICEDISC + PRICEMAT | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::PRICEMAT + PROB | CATEGORY_STATISTICAL | **\*\*\* Not yet Implemented** + PRODUCT | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::PRODUCT + PROPER | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::PROPERCASE + PV | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::PV + +#Q + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + QUARTILE | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::QUARTILE + QUOTIENT | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::QUOTIENT + +#R + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + RADIANS | CATEGORY_MATH_AND_TRIG | deg2rad + RAND | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::RAND + RANDBETWEEN | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::RAND + RANK | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::RANK + RATE | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::RATE + RECEIVED | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::RECEIVED + REPLACE | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::REPLACE + REPLACEB | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::REPLACE + REPT | CATEGORY_TEXT_AND_DATA | str_repeat + RIGHT | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::RIGHT + RIGHTB | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::RIGHT + ROMAN | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::ROMAN + ROUND | CATEGORY_MATH_AND_TRIG | round + ROUNDDOWN | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::ROUNDDOWN + ROUNDUP | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::ROUNDUP + ROW | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::ROW + ROWS | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::ROWS + RSQ | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::RSQ + RTD | CATEGORY_LOOKUP_AND_REFERENCE | **\*\*\* Not yet Implemented** + +#S + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + SEARCH | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::SEARCHINSENSITIVE + SEARCHB | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::SEARCHINSENSITIVE + SECOND | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::SECONDOFMINUTE + SERIESSUM | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::SERIESSUM + SIGN | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::SIGN + SIN | CATEGORY_MATH_AND_TRIG | sin + SINH | CATEGORY_MATH_AND_TRIG | sinh + SKEW | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::SKEW + SLN | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::SLN + SLOPE | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::SLOPE + SMALL | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::SMALL + SQRT | CATEGORY_MATH_AND_TRIG | sqrt + SQRTPI | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::SQRTPI + STANDARDIZE | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::STANDARDIZE + STDEV | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::STDEV + STDEVA | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::STDEVA + STDEVP | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::STDEVP + STDEVPA | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::STDEVPA + STEYX | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::STEYX + SUBSTITUTE | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::SUBSTITUTE + SUBTOTAL | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::SUBTOTAL + SUM | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::SUM + SUMIF | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::SUMIF + SUMIFS | CATEGORY_MATH_AND_TRIG | **\*\*\* Not yet Implemented** + SUMPRODUCT | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::SUMPRODUCT + SUMSQ | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::SUMSQ + SUMX2MY2 | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::SUMX2MY2 + SUMX2PY2 | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::SUMX2PY2 + SUMXMY2 | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::SUMXMY2 + SYD | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::SYD + +#T + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + T | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::RETURNSTRING + TAN | CATEGORY_MATH_AND_TRIG | tan + TANH | CATEGORY_MATH_AND_TRIG | tanh + TBILLEQ | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::TBILLEQ + TBILLPRICE | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::TBILLPRICE + TBILLYIELD | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::TBILLYIELD + TDIST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::TDIST + TEXT | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::TEXTFORMAT + TIME | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::TIME + TIMEVALUE | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::TIMEVALUE + TINV | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::TINV + TODAY | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::DATENOW + TRANSPOSE | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::TRANSPOSE + TREND | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::TREND + TRIM | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::TRIMSPACES + TRIMMEAN | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::TRIMMEAN + TRUE | CATEGORY_LOGICAL | PHPExcel_Calculation_Logical::TRUE + TRUNC | CATEGORY_MATH_AND_TRIG | PHPExcel_Calculation_MathTrig::TRUNC + TTEST | CATEGORY_STATISTICAL | **\*\*\* Not yet Implemented** + TYPE | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::TYPE + +#U + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + UPPER | CATEGORY_TEXT_AND_DATA | PHPExcel_Calculation_TextData::UPPERCASE + USDOLLAR | CATEGORY_FINANCIAL | **\*\*\* Not yet Implemented** + +#V + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + VALUE | CATEGORY_TEXT_AND_DATA | **\*\*\* Not yet Implemented** + VAR | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::VARFunc + VARA | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::VARA + VARP | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::VARP + VARPA | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::VARPA + VDB | CATEGORY_FINANCIAL | **\*\*\* Not yet Implemented** + VERSION | CATEGORY_INFORMATION | PHPExcel_Calculation_Functions::VERSION + VLOOKUP | CATEGORY_LOOKUP_AND_REFERENCE | PHPExcel_Calculation_LookupRef::VLOOKUP + +#W + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + WEEKDAY | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::DAYOFWEEK + WEEKNUM | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::WEEKOFYEAR + WEIBULL | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::WEIBULL + WORKDAY | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::WORKDAY + +#X + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + XIRR | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::XIRR + XNPV | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::XNPV + +#Y + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + YEAR | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::YEAR + YEARFRAC | CATEGORY_DATE_AND_TIME | PHPExcel_Calculation_DateTime::YEARFRAC + YIELD | CATEGORY_FINANCIAL | **\*\*\* Not yet Implemented** + YIELDDISC | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::YIELDDISC + YIELDMAT | CATEGORY_FINANCIAL | PHPExcel_Calculation_Financial::YIELDMAT + +#Z + + Excel Function | Category | PHPExcel Function + --------------------|--------------------------------|------------------------------------------- + ZTEST | CATEGORY_STATISTICAL | PHPExcel_Calculation_Statistical::ZTEST diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Functions/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/markdown/Functions/_notes/dwsync.xml new file mode 100644 index 0000000..d828b58 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Functions/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="FunctionListByCategory.md" server="62.244.88.21/deciday/" local="131919462021973938" remote="131880384600000000" Dst="1" /> +<file name="FunctionListByName.md" server="62.244.88.21/deciday/" local="131919462022798656" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/01-Getting-Started.md b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/01-Getting-Started.md new file mode 100644 index 0000000..262f1ea --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/01-Getting-Started.md @@ -0,0 +1,179 @@ +# PHPExcel Developer Documentation + + +## Prerequisites, Installation, FAQ and Links + +### Software requirements + +The following software is required to develop using PHPExcel: + + - PHP version 5.2.0 or newer + - PHP extension php_zip enabled [^phpzip_footnote] + - PHP extension php_xml enabled + - PHP extension php_gd2 enabled (if not compiled in) + + +### Installation instructions + +Installation is quite easy: copy the contents of the Classes folder to any location within your application source directories. + +*Example:* + +If your web root folder is /var/www/ you may want to create a subfolder called /var/www/Classes/ and copy the files into that folder so you end up with files: + + /var/www/Classes/PHPExcel.php + /var/www/Classes/PHPExcel/Calculation.php + /var/www/Classes/PHPExcel/Cell.php + ... + + +### Getting started + +A good way to get started is to run some of the tests included in the download. +Copy the "Examples" folder next to your "Classes" folder from above so you end up with: + + /var/www/Examples/01simple.php + /var/www/Examples/02types.php + ... + +Start running the tests by pointing your browser to the test scripts: + +http://example.com/Tests/01simple.php +http://example.com/Tests/02types.php +... + +**Note:** It may be necessary to modify the include/require statements at the beginning of each of the test scripts if your "Classes" folder from above is named differently. + + +### Useful links and tools + +There are some links and tools which are very useful when developing using PHPExcel. Please refer to the [PHPExcel CodePlex pages][2] for an update version of the list below. + +#### OpenXML / SpreadsheetML + + - __File format documentation__ +[http://www.ecma-international.org/news/TC45_current_work/TC45_available_docs.htm][3] + - __OpenXML Explained e-book__ +[http://openxmldeveloper.org/articles/1970.aspx][4] + - __Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats__ +[http://www.microsoft.com/downloads/details.aspx?familyid=941b3470-3ae9-4aee-8f43-c6bb74cd1466&displaylang=en][5] + - __OpenXML Package Explorer__ +[http://www.codeplex.com/PackageExplorer/][6] + + +### Frequently asked questions + +The up-to-date F.A.Q. page for PHPExcel can be found on [http://www.codeplex.com/PHPExcel/Wiki/View.aspx?title=FAQ&referringTitle=Requirements][7]. + +##### There seems to be a problem with character encoding... + +It is necessary to use UTF-8 encoding for all texts in PHPExcel. If the script uses different encoding then you can convert those texts with PHP's iconv() or mb_convert_encoding() functions. + +##### PHP complains about ZipArchive not being found + +Make sure you meet all requirements, especially php_zip extension should be enabled. + +The ZipArchive class is only required when reading or writing formats that use Zip compression (Excel2007 and OOCalc). Since version 1.7.6 the PCLZip library has been bundled with PHPExcel as an alternative to the ZipArchive class. + +This can be enabled by calling: +```php +PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP); +``` +*before* calling the save method of the Excel2007 Writer. + +You can revert to using ZipArchive by calling: +```php +PHPExcel_Settings::setZipClass(PHPExcel_Settings::ZIPARCHIVE); +``` +At present, this only allows you to write Excel2007 files without the need for ZipArchive (not to read Excel2007 or OOCalc) + +##### Excel 2007 cannot open the file generated by PHPExcel_Writer_2007 on Windows + +"Excel found unreadable content in '*.xlsx'. Do you want to recover the contents of this workbook? If you trust the source of this workbook, click Yes." + +Some older versions of the 5.2.x php_zip extension on Windows contain an error when creating ZIP files. The version that can be found on [http://snaps.php.net/win32/php5.2-win32-latest.zip][8] should work at all times. + +Alternatively, upgrading to at least PHP 5.2.9 should solve the problem. + +If you can't locate a clean copy of ZipArchive, then you can use the PCLZip library as an alternative when writing Excel2007 files, as described above. + +##### Fatal error: Allowed memory size of xxx bytes exhausted (tried to allocate yyy bytes) in zzz on line aaa + +PHPExcel holds an "in memory" representation of a spreadsheet, so it is susceptible to PHP's memory limitations. The memory made available to PHP can be increased by editing the value of the memory_limit directive in your php.ini file, or by using ini_set('memory_limit', '128M') within your code (ISP permitting). + +Some Readers and Writers are faster than others, and they also use differing amounts of memory. You can find some indication of the relative performance and memory usage for the different Readers and Writers, over the different versions of PHPExcel, on the [discussion board][9]. + +If you've already increased memory to a maximum, or can't change your memory limit, then [this discussion][10] on the board describes some of the methods that can be applied to reduce the memory usage of your scripts using PHPExcel. + +##### Protection on my worksheet is not working? + +When you make use of any of the worksheet protection features (e.g. cell range protection, prohibiting deleting rows, ...), make sure you enable worksheet security. This can for example be done like this: +```php +$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); +``` + +##### Feature X is not working with PHPExcel_Reader_Y / PHPExcel_Writer_Z + +Not all features of PHPExcel are implemented in all of the Reader / Writer classes. This is mostly due to underlying libraries not supporting a specific feature or not having implemented a specific feature. + +For example autofilter is not implemented in PEAR Spreadsheet_Excel_writer, which is the base of our Excel5 writer. + +We are slowly building up a list of features, together with the different readers and writers that support them, in the "Functionality Cross-Reference.xls" file in the /Documentation folder. + +##### Formulas don't seem to be calculated in Excel2003 using compatibility pack? + +This is normal behaviour of the compatibility pack, Excel2007 displays this correctly. Use PHPExcel_Writer_Excel5 if you really need calculated values, or force recalculation in Excel2003. + +##### Setting column width is not 100% accurate + +Trying to set column width, I experience one problem. When I open the file in Excel, the actual width is 0.71 less than it should be. + +The short answer is that PHPExcel uses a measure where padding is included. See section: "Setting a column's width" for more details. + +##### How do I use PHPExcel with my framework + + - There are some instructions for using PHPExcel with Joomla on the [Joomla message board][11] + - A page of advice on using [PHPExcel in the Yii framework][12] + - [The Bakery][13] has some helper classes for reading and writing with PHPExcel within CakePHP + - Integrating [PHPExcel into Kohana 3][14] and [?????????? PHPExcel ? Kohana Framework][15] + - Using [PHPExcel with Typo3][16] + +##### Joomla Autoloader interferes with PHPExcel Autoloader + +Thanks to peterrlynch for the following advice on resolving issues between the [PHPExcel autoloader and Joomla Autoloader][17] + + +#### Tutorials + + - __English PHPExcel tutorial__ + [http://openxmldeveloper.org][18] + - __French PHPExcel tutorial__ + [http://g-ernaelsten.developpez.com/tutoriels/excel2007/][19] + - __A Japanese-language introduction to PHPExcel__ + [http://journal.mycom.co.jp/articles/2009/03/06/phpexcel/index.html][21] + + + [2]: http://www.codeplex.com/PHPExcel/Wiki/View.aspx?title=Documents&referringTitle=Home + [3]: http://www.ecma-international.org/news/TC45_current_work/TC45_available_docs.htm + [4]: http://openxmldeveloper.org/articles/1970.aspx + [5]: http://www.microsoft.com/downloads/details.aspx?familyid=941b3470-3ae9-4aee-8f43-c6bb74cd1466&displaylang=en + [6]: http://www.codeplex.com/PackageExplorer/ + [7]: http://www.codeplex.com/PHPExcel/Wiki/View.aspx?title=FAQ&referringTitle=Requirements + [8]: http://snaps.php.net/win32/php5.2-win32-latest.zip + [9]: http://phpexcel.codeplex.com/Thread/View.aspx?ThreadId=234150 + [10]: http://phpexcel.codeplex.com/Thread/View.aspx?ThreadId=242712 + [11]: http://http:/forum.joomla.org/viewtopic.php?f=304&t=433060 + [12]: http://www.yiiframework.com/wiki/101/how-to-use-phpexcel-external-library-with-yii/ + [13]: http://bakery.cakephp.org/articles/melgior/2010/01/26/simple-excel-spreadsheet-helper + [14]: http://www.flynsarmy.com/2010/07/phpexcel-module-for-kohana-3/ + [15]: http://szpargalki.blogspot.com/2011/02/phpexcel-kohana-framework.html + [16]: http://typo3.org/documentation/document-library/extension-manuals/phpexcel_library/1.1.1/view/toc/0/ + [17]: http://phpexcel.codeplex.com/discussions/211925 + [18]: http://openxmldeveloper.org + [19]: http://g-ernaelsten.developpez.com/tutoriels/excel2007/ + [20]: http://www.web-junior.net/sozdanie-excel-fajjlov-s-pomoshhyu-phpexcel/ + [21]: http://journal.mycom.co.jp/articles/2009/03/06/phpexcel/index.html + + +[^phpzip_footnote]: __php_zip__ is only needed by __PHPExcel_Reader_Excel2007__, __PHPExcel_Writer_Excel2007__ and __PHPExcel_Reader_OOCalc__. In other words, if you need PHPExcel to handle .xlsx or .ods files you will need the zip extension, but otherwise not.<br />You can remove this dependency for writing Excel2007 files (though not yet for reading) by using the PCLZip library that is bundled with PHPExcel. See the FAQ section of this document for details about this. PCLZip does have a dependency on PHP's zlib extension being enabled. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/02-Architecture.md b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/02-Architecture.md new file mode 100644 index 0000000..8ddb43e --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/02-Architecture.md @@ -0,0 +1,76 @@ +# PHPExcel Developer Documentation + + +## Architecture + +### Schematical + +![01-schematic.png](./images/01-schematic.png "Basic Architecture Schematic") + + +### Lazy Loader + +PHPExcel implements an autoloader or "lazy loader", which means that it is not necessary to include every file within PHPExcel. It is only necessary to include the initial PHPExcel class file, then the autoloader will include other class files as and when required, so only those files that are actually required by your script will be loaded into PHP memory. The main benefit of this is that it reduces the memory footprint of PHPExcel itself, so that it uses less PHP memory. + +If your own scripts already define an autoload function, then this may be overwritten by the PHPExcel autoload function. For example, if you have: +```php +function __autoload($class) { + ... +} +``` +Do this instead: +```php +function myAutoload($class) { + ... +} + +spl_autoload_register('myAutoload'); +``` +Your autoloader will then co-exist with the autoloader of PHPExcel. + + +### Spreadsheet in memory + +PHPExcel's architecture is built in a way that it can serve as an in-memory spreadsheet. This means that, if one would want to create a web based view of a spreadsheet which communicates with PHPExcel's object model, he would only have to write the front-end code. + +Just like desktop spreadsheet software, PHPExcel represents a spreadsheet containing one or more worksheets, which contain cells with data, formulas, images, ... + + +### Readers and writers + +On its own, PHPExcel does not provide the functionality to read from or write to a persisted spreadsheet (on disk or in a database). To provide that functionality, readers and writers can be used. + +By default, the PHPExcel package provides some readers and writers, including one for the Open XML spreadsheet format (a.k.a. Excel 2007 file format). You are not limited to the default readers and writers, as you are free to implement the PHPExcel_Reader_IReader and PHPExcel_Writer_IWriter interface in a custom class. + +![02-readers-writers.png](./images/02-readers-writers.png "Readers/Writers") + +### Fluent interfaces + +PHPExcel supports fluent interfaces in most locations. This means that you can easily "chain" calls to specific methods without requiring a new PHP statement. For example, take the following code: + +```php +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw"); +$objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw"); +$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document"); +$objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document"); +$objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX, generated using PHP classes."); +$objPHPExcel->getProperties()->setKeywords("office 2007 openxml php"); +$objPHPExcel->getProperties()->setCategory("Test result file"); +``` + +This can be rewritten as: + +```php +$objPHPExcel->getProperties() + ->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); +``` + + > __Using fluent interfaces is not required__ + > Fluent interfaces have been implemented to provide a convenient programming API. Use of them is not required, but can make your code easier to read and maintain. + > It can also improve performance, as you are reducing the overall number of calls to PHPExcel methods: in the above example, the `getProperties()` method is being called only once rather than 7 times in the non-fluent version. diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/03-Creating-a-Spreadsheet.md b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/03-Creating-a-Spreadsheet.md new file mode 100644 index 0000000..b65000b --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/03-Creating-a-Spreadsheet.md @@ -0,0 +1,34 @@ +# PHPExcel Developer Documentation + + +## Creating a spreadsheet + +### The PHPExcel class + +The PHPExcel class is the core of PHPExcel. It contains references to the contained worksheets, document security settings and document meta data. + +To simplify the PHPExcel concept: the PHPExcel class represents your workbook. + +Typically, you will create a workbook in one of two ways, either by loading it from a spreadsheet file, or creating it manually. A third option, though less commonly used, is cloning an existing workbook that has been created using one of the previous two methods. + +#### Loading a Workbook from a file + +Details of the different spreadsheet formats supported, and the options available to read them into a PHPExcel object are described fully in the PHPExcel User Documentation - Reading Spreadsheet Files document. + +```php +$inputFileName = './sampleData/example1.xls'; + +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = PHPExcel_IOFactory::load($inputFileName); +``` + +#### Creating a new workbook + +If you want to create a new workbook, rather than load one from file, then you simply need to instantiate it as a new PHPExcel object. + +```php +/** Create a new PHPExcel Object **/ +$objPHPExcel = new PHPExcel(); +``` + +A new workbook will always be created with a single worksheet. diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/04-Configuration-Settings.md b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/04-Configuration-Settings.md new file mode 100644 index 0000000..2024e80 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/04-Configuration-Settings.md @@ -0,0 +1,140 @@ +# PHPExcel Developer Documentation + + +## Configuration Settings + +Once you have included the PHPExcel files in your script, but before instantiating a PHPExcel object or loading a workbook file, there are a number of configuration options that can be set which will affect the subsequent behaviour of the script. + +### Cell Caching + +PHPExcel uses an average of about 1k/cell in your worksheets, so large workbooks can quickly use up available memory. Cell caching provides a mechanism that allows PHPExcel to maintain the cell objects in a smaller size of memory, on disk, or in APC, memcache or Wincache, rather than in PHP memory. This allows you to reduce the memory usage for large workbooks, although at a cost of speed to access cell data. + +By default, PHPExcel still holds all cell objects in memory, but you can specify alternatives. To enable cell caching, you must call the PHPExcel_Settings::setCacheStorageMethod() method, passing in the caching method that you wish to use. + +```php +$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_in_memory; + +PHPExcel_Settings::setCacheStorageMethod($cacheMethod); +``` + +setCacheStorageMethod() will return a boolean true on success, false on failure (for example if trying to cache to APC when APC is not enabled). + +A separate cache is maintained for each individual worksheet, and is automatically created when the worksheet is instantiated based on the caching method and settings that you have configured. You cannot change the configuration settings once you have started to read a workbook, or have created your first worksheet. + +Currently, the following caching methods are available. + +#### PHPExcel_CachedObjectStorageFactory::cache_in_memory + +The default. If you don't initialise any caching method, then this is the method that PHPExcel will use. Cell objects are maintained in PHP memory as at present. + +#### PHPExcel_CachedObjectStorageFactory::cache_in_memory_serialized + +Using this caching method, cells are held in PHP memory as an array of serialized objects, which reduces the memory footprint with minimal performance overhead. + +#### PHPExcel_CachedObjectStorageFactory::cache_in_memory_gzip + +Like cache_in_memory_serialized, this method holds cells in PHP memory as an array of serialized objects, but gzipped to reduce the memory usage still further, although access to read or write a cell is slightly slower. + +#### PHPExcel_CachedObjectStorageFactory::cache_igbinary + +Uses PHPs igbinary extension (if its available) to serialize cell objects in memory. This is normally faster and uses less memory than standard PHP serialization, but isnt available in most hosting environments. + +#### PHPExcel_CachedObjectStorageFactory::cache_to_discISAM + +When using cache_to_discISAM all cells are held in a temporary disk file, with only an index to their location in that file maintained in PHP memory. This is slower than any of the cache_in_memory methods, but significantly reduces the memory footprint. By default, PHPExcel will use PHP's temp directory for the cache file, but you can specify a different directory when initialising cache_to_discISAM. + +```php +$cacheMethod = PHPExcel_CachedObjectStorageFactory:: cache_to_discISAM; +$cacheSettings = array( + 'dir' => '/usr/local/tmp' +); +PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings); +``` + +The temporary disk file is automatically deleted when your script terminates. + +#### PHPExcel_CachedObjectStorageFactory::cache_to_phpTemp + +Like cache_to_discISAM, when using cache_to_phpTemp all cells are held in the php://temp I/O stream, with only an index to their location maintained in PHP memory. In PHP, the php://memory wrapper stores data in the memory: php://temp behaves similarly, but uses a temporary file for storing the data when a certain memory limit is reached. The default is 1 MB, but you can change this when initialising cache_to_phpTemp. + +```php +$cacheMethod = PHPExcel_CachedObjectStorageFactory:: cache_to_phpTemp; +$cacheSettings = array( + 'memoryCacheSize' => '8MB' +); +PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings); +``` + +The php://temp file is automatically deleted when your script terminates. + +#### PHPExcel_CachedObjectStorageFactory::cache_to_apc + +When using cache_to_apc, cell objects are maintained in APC with only an index maintained in PHP memory to identify that the cell exists. By default, an APC cache timeout of 600 seconds is used, which should be enough for most applications: although it is possible to change this when initialising cache_to_APC. + +```php +$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_APC; +$cacheSettings = array( + 'cacheTime' => 600 +); +PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings); +``` + +When your script terminates all entries will be cleared from APC, regardless of the cacheTime value, so it cannot be used for persistent storage using this mechanism. + +#### PHPExcel_CachedObjectStorageFactory::cache_to_memcache + +When using cache_to_memcache, cell objects are maintained in memcache with only an index maintained in PHP memory to identify that the cell exists. + +By default, PHPExcel looks for a memcache server on localhost at port 11211. It also sets a memcache timeout limit of 600 seconds. If you are running memcache on a different server or port, then you can change these defaults when you initialise cache_to_memcache: + +```php +$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_memcache; +$cacheSettings = array( + 'memcacheServer' => 'localhost', + 'memcachePort' => 11211, + 'cacheTime' => 600 +); +PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings); +``` + +When your script terminates all entries will be cleared from memcache, regardless of the cacheTime value, so it cannot be used for persistent storage using this mechanism. + +#### PHPExcel_CachedObjectStorageFactory::cache_to_wincache + +When using cache_to_wincache, cell objects are maintained in Wincache with only an index maintained in PHP memory to identify that the cell exists. By default, a Wincache cache timeout of 600 seconds is used, which should be enough for most applications: although it is possible to change this when initialising cache_to_wincache. + +```php +$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_wincache; +$cacheSettings = array( + 'cacheTime' => 600 +); +PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings); +``` + +When your script terminates all entries will be cleared from Wincache, regardless of the cacheTime value, so it cannot be used for persistent storage using this mechanism. + +#### PHPExcel_CachedObjectStorageFactory::cache_to_sqlite + +Uses an SQLite 2 "in-memory" database for caching cell data. Unlike other caching methods, neither cells nor an index are held in PHP memory - an indexed database table makes it unnecessary to hold any index in PHP memory, which makes this the most memory-efficient of the cell caching methods. + +#### PHPExcel_CachedObjectStorageFactory::cache_to_sqlite3; + +Uses an SQLite 3 "in-memory" database for caching cell data. Unlike other caching methods, neither cells nor an index are held in PHP memory - an indexed database table makes it unnecessary to hold any index in PHP memory, which makes this the most memory-efficient of the cell caching methods. + + +### Language/Locale + +Some localisation elements have been included in PHPExcel. You can set a locale by changing the settings. To set the locale to Brazilian Portuguese you would use: + +```php +$locale = 'pt_br'; +$validLocale = PHPExcel_Settings::setLocale($locale); +if (!$validLocale) { + echo 'Unable to set locale to ' . $locale . " - reverting to en_us" . PHP_EOL; +} +``` + +If Brazilian Portuguese language files aren't available, then Portuguese will be enabled instead: if Portuguese language files aren't available, then the setLocale() method will return an error, and American English (en_us) settings will be used throughout. + +More details of the features available once a locale has been set, including a list of the languages and locales currently supported, can be found in the section of this document entitled "Locale Settings for Formulae". + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/05-Deleting-a-Workbook.md b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/05-Deleting-a-Workbook.md new file mode 100644 index 0000000..0ea9171 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/05-Deleting-a-Workbook.md @@ -0,0 +1,13 @@ +# PHPExcel Developer Documentation + +## Clearing a Workbook from memory + +The PHPExcel object contains cyclic references (e.g. the workbook is linked to the worksheets, and the worksheets are linked to their parent workbook) which cause problems when PHP tries to clear the objects from memory when they are unset(), or at the end of a function when they are in local scope. The result of this is "memory leaks", which can easily use a large amount of PHP's limited memory. + +This can only be resolved manually: if you need to unset a workbook, then you also need to "break" these cyclic references before doing so. PHPExcel provides the disconnectWorksheets() method for this purpose. + +```php +$objPHPExcel->disconnectWorksheets(); + +unset($objPHPExcel); +``` diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/06-Worksheets.md b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/06-Worksheets.md new file mode 100644 index 0000000..a6a231c --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/06-Worksheets.md @@ -0,0 +1,94 @@ +# PHPExcel Developer Documentation + +## Worksheets + +A worksheet is a collection of cells, formulae, images, graphs, etc. It holds all data necessary to represent a spreadsheet worksheet. + +When you load a workbook from a spreadsheet file, it will be loaded with all its existing worksheets (unless you specified that only certain sheets should be loaded). When you load from non-spreadsheet files (such as a CSV or HTML file) or from spreadsheet formats that don't identify worksheets by name (such as SYLK), then a single worksheet called "WorkSheet1" will be created containing the data from that file. + +When you instantiate a new workbook, PHPExcel will create it with a single worksheet called "WorkSheet1". + +The `getSheetCount()` method will tell you the number of worksheets in the workbook; while the `getSheetNames()` method will return a list of all worksheets in the workbook, indexed by the order in which their "tabs" would appear when opened in MS Excel (or other appropriate Spreadsheet program). + +Individual worksheets can be accessed by name, or by their index position in the workbook. The index position represents the order that each worksheet "tab" is shown when the workbook is opened in MS Excel (or other appropriate Spreadsheet program). To access a sheet by its index, use the `getSheet()` method. + +```php +// Get the second sheet in the workbook +// Note that sheets are indexed from 0 +$objPHPExcel->getSheet(1); +``` + +If you don't specify a sheet index, then the first worksheet will be returned. + +Methods also exist allowing you to reorder the worksheets in the workbook. + +To access a sheet by name, use the `getSheetByName()` method, specifying the name of the worksheet that you want to access. + +```php +// Retrieve the worksheet called 'Worksheet 1' +$objPHPExcel->getSheetByName('Worksheet 1'); +``` + +Alternatively, one worksheet is always the currently active worksheet, and you can access that directly. The currently active worksheet is the one that will be active when the workbook is opened in MS Excel (or other appropriate Spreadsheet program). + +```php +// Retrieve the current active worksheet +$objPHPExcel->getActiveSheet(); +``` + +You can change the currently active sheet by index or by name using the `setActiveSheetIndex()` and `setActiveSheetIndexByName()` methods. + +### Adding a new Worksheet + +You can add a new worksheet to the workbook using the `createSheet()` method of the PHPExcel object. By default, this will be created as a new "last" sheet; but you can also specify an index position as an argument, and the worksheet will be inserted at that position, shuffling all subsequent worksheets in the collection down a place. + +```php +$objPHPExcel->createSheet(); +``` + +A new worksheet created using this method will be called "Worksheet\<n\>" where "\<n\>" is the lowest number possible to guarantee that the title is unique. + +Alternatively, you can instantiate a new worksheet (setting the title to whatever you choose) and then insert it into your workbook using the addSheet() method. + +```php +// Create a new worksheet called "My Data" +$myWorkSheet = new PHPExcel_Worksheet($objPHPExcel, 'My Data'); + +// Attach the "My Data" worksheet as the first worksheet in the PHPExcel object +$objPHPExcel->addSheet($myWorkSheet, 0); +``` + +If you don't specify an index position as the second argument, then the new worksheet will be added after the last existing worksheet. + +### Copying Worksheets + +Sheets within the same workbook can be copied by creating a clone of the worksheet you wish to copy, and then using the addSheet() method to insert the clone into the workbook. + +```php +$objClonedWorksheet = clone $objPHPExcel->getSheetByName('Worksheet 1'); +$objClonedWorksheet->setTitle('Copy of Worksheet 1') +$objPHPExcel->addSheet($objClonedWorksheet); +``` + +You can also copy worksheets from one workbook to another, though this is more complex as PHPExcel also has to replicate the styling between the two workbooks. The addExternalSheet() method is provided for this purpose. + +``` +$objClonedWorksheet = clone $objPHPExcel1->getSheetByName('Worksheet 1'); +$objPHPExcel->addExternalSheet($objClonedWorksheet); +``` + +In both cases, it is the developer's responsibility to ensure that worksheet names are not duplicated. PHPExcel will throw an exception if you attempt to copy worksheets that will result in a duplicate name. + +### Removing a Worksheet + +You can delete a worksheet from a workbook, identified by its index position, using the removeSheetByIndex() method + +```php +$sheetIndex = $objPHPExcel->getIndex( + $objPHPExcel->getSheetByName('Worksheet 1') +); +$objPHPExcel->removeSheetByIndex($sheetIndex); +``` + +If the currently active worksheet is deleted, then the sheet at the previous index position will become the currently active sheet. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/07-Accessing-Cells.md b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/07-Accessing-Cells.md new file mode 100644 index 0000000..e63b45b --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/07-Accessing-Cells.md @@ -0,0 +1,390 @@ +# PHPExcel Developer Documentation + +## Accessing cells + +Accessing cells in a PHPExcel worksheet should be pretty straightforward. This topic lists some of the options to access a cell. + +### Setting a cell value by coordinate + +Setting a cell value by coordinate can be done using the worksheet's `setCellValue()` method. + +```php +// Set cell A1 with a string value +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'PHPExcel'); + +// Set cell A2 with a numeric value +$objPHPExcel->getActiveSheet()->setCellValue('A2', 12345.6789); + +// Set cell A3 with a boolean value +$objPHPExcel->getActiveSheet()->setCellValue('A3', TRUE); + +// Set cell A4 with a formula +$objPHPExcel->getActiveSheet()->setCellValue( + 'A4', + '=IF(A3, CONCATENATE(A1, " ", A2), CONCATENATE(A2, " ", A1))' +); +``` + +Alternatively, you can retrieve the cell object, and then call the cell’s setValue() method: + +```php +$objPHPExcel->getActiveSheet() + ->getCell('B8') + ->setValue('Some value'); +``` + +**Excel DataTypes** + +MS Excel supports 7 basic datatypes + - string + - number + - boolean + - null + - formula + - error + - Inline (or rich text) string + +By default, when you call the worksheet's `setCellValue()` method or the cell's `setValue()` method, PHPExcel will use the appropriate datatype for PHP nulls, booleans, floats or integers; or cast any string data value that you pass to the method into the most appropriate datatype, so numeric strings will be cast to numbers, while string values beginning with “=” will be converted to a formula. Strings that aren't numeric, or that don't begin with a leading "=" will be treated as genuine string values. + +This "conversion" is handled by a cell "value binder", and you can write custom "value binders" to change the behaviour of these "conversions". The standard PHPExcel package also provides an "advanced value binder" that handles a number of more complex conversions, such as converting strings with a fractional format like "3/4" to a number value (0.75 in this case) and setting an appropriate "fraction" number format mask. Similarly, strings like "5%" will be converted to a value of 0.05, and a percentage number format mask applied, and strings containing values that look like dates will be converted to Excel serialized datetimestamp values, and a corresponding mask applied. This is particularly useful when loading data from csv files, or setting cell values from a database. + +Formats handled by the advanced value binder include + - TRUE or FALSE (dependent on locale settings) are converted to booleans. + - Numeric strings identified as scientific (exponential) format are converted to numbers. + - Fractions and vulgar fractions are converted to numbers, and an appropriate number format mask applied. + - Percentages are converted to numbers, divided by 100, and an appropriate number format mask applied. + - Dates and times are converted to Excel timestamp values (numbers), and an appropriate number format mask applied. + - When strings contain a newline character ("\n"), then the cell styling is set to wrap. + +You can read more about value binders later in this section of the documentation. + +#### Setting a date and/or time value in a cell + +Date or time values are held as timestamp in Excel (a simple floating point value), and a number format mask is used to show how that value should be formatted; so if we want to store a date in a cell, we need to calculate the correct Excel timestamp, and set a number format mask. + +```php +// Get the current date/time and convert to an Excel date/time +$dateTimeNow = time(); +$excelDateValue = PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow ); +// Set cell A6 with the Excel date/time value +$objPHPExcel->getActiveSheet()->setCellValue( + 'A6', + $excelDateValue +); +// Set the number format mask so that the excel timestamp will be displayed as a human-readable date/time +$objPHPExcel->getActiveSheet()->getStyle('A6') + ->getNumberFormat() + ->setFormatCode( + PHPExcel_Style_NumberFormat::FORMAT_DATE_DATETIME + ); +``` + +#### Setting a number with leading zeroes + +By default, PHPExcel will automatically detect the value type and set it to the appropriate Excel numeric datatype. This type conversion is handled by a value binder, as described in the section of this document entitled "Using value binders to facilitate data entry". + +Numbers don't have leading zeroes, so if you try to set a numeric value that does have leading zeroes (such as a telephone number) then these will be normally be lost as the value is cast to a number, so "01513789642" will be displayed as 1513789642. + +There are two ways you can force PHPExcel to override this behaviour. + +Firstly, you can set the datatype explicitly as a string so that it is not converted to a number. + +```php +// Set cell A8 with a numeric value, but tell PHPExcel it should be treated as a string +$objPHPExcel->getActiveSheet()->setCellValueExplicit( + 'A8', + "01513789642", + PHPExcel_Cell_DataType::TYPE_STRING +); +``` + +Alternatively, you can use a number format mask to display the value with leading zeroes. + +```php +// Set cell A9 with a numeric value +$objPHPExcel->getActiveSheet()->setCellValue('A9', 1513789642); +// Set a number format mask to display the value as 11 digits with leading zeroes +$objPHPExcel->getActiveSheet()->getStyle('A9') + ->getNumberFormat() + ->setFormatCode( + '00000000000' + ); +``` + +With number format masking, you can even break up the digits into groups to make the value more easily readable. + +```php +// Set cell A10 with a numeric value +$objPHPExcel->getActiveSheet()->setCellValue('A10', 1513789642); +// Set a number format mask to display the value as 11 digits with leading zeroes +$objPHPExcel->getActiveSheet()->getStyle('A10') + ->getNumberFormat() + ->setFormatCode( + '0000-000-0000' + ); +``` + +![07-simple-example-1.png](./images/07-simple-example-1.png "") + + +**Note** that not all complex format masks such as this one will work when retrieving a formatted value to display "on screen", or for certain writers such as HTML or PDF, but it will work with the true spreadsheet writers (Excel2007 and Excel5). + +### Setting a range of cells from an array + +It is also possible to set a range of cell values in a single call by passing an array of values to the `fromArray()` method. + +```php +$arrayData = array( + array(NULL, 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), +); +$objPHPExcel->getActiveSheet() + ->fromArray( + $arrayData, // The data to set + NULL, // Array values with this value will not be set + 'C3' // Top left coordinate of the worksheet range where + // we want to set these values (default is A1) + ); +``` + +![07-simple-example-2.png](./images/07-simple-example-2.png "") + +If you pass a 2-d array, then this will be treated as a series of rows and columns. A 1-d array will be treated as a single row, which is particularly useful if you're fetching an array of data from a database. + +```php +$rowArray = array('Value1', 'Value2', 'Value3', 'Value4'); +$objPHPExcel->getActiveSheet() + ->fromArray( + $rowArray, // The data to set + NULL, // Array values with this value will not be set + 'C3' // Top left coordinate of the worksheet range where + // we want to set these values (default is A1) + ); +``` + +![07-simple-example-3.png](./images/07-simple-example-3.png "") + +If you have a simple 1-d array, and want to write it as a column, then the following will convert it into an appropriately structured 2-d array that can be fed to the `fromArray()` method: + +```php +$rowArray = array('Value1', 'Value2', 'Value3', 'Value4'); +$columnArray = array_chunk($rowArray, 1); +$objPHPExcel->getActiveSheet() + ->fromArray( + $columnArray, // The data to set + NULL, // Array values with this value will not be set + 'C3' // Top left coordinate of the worksheet range where + // we want to set these values (default is A1) + ); +``` + +![07-simple-example-4.png](./images/07-simple-example-4.png "") + +### Retrieving a cell value by coordinate + +To retrieve the value of a cell, the cell should first be retrieved from the worksheet using the `getCell()` method. A cell's value can be read using the `getValue()` method. + +```php +// Get the value fom cell A1 +$cellValue = $objPHPExcel->getActiveSheet()->getCell('A1') + ->getValue(); +``` + +This will retrieve the raw, unformatted value contained in the cell. + +If a cell contains a formula, and you need to retrieve the calculated value rather than the formula itself, then use the cell's `getCalculatedValue()` method. This is further explained in . + +```php +// Get the value fom cell A4 +$cellValue = $objPHPExcel->getActiveSheet()->getCell('A4') + ->getCalculatedValue(); +``` + +Alternatively, if you want to see the value with any cell formatting applied (e.g. for a human-readable date or time value), then you can use the cell's `getFormattedValue()` method. + +```php +// Get the value fom cell A6 +$cellValue = $objPHPExcel->getActiveSheet()->getCell('A6') + ->getFormattedValue(); +``` + + +### Setting a cell value by column and row + +Setting a cell value by coordinate can be done using the worksheet's `setCellValueByColumnAndRow()` method. + +```php +// Set cell B5 with a string value +$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow(1, 5, 'PHPExcel'); +``` + +**Note** that column references start with '0' for column 'A', rather than from '1'. + +### Retrieving a cell value by column and row + +To retrieve the value of a cell, the cell should first be retrieved from the worksheet using the getCellByColumnAndRow method. A cell’s value can be read again using the following line of code: + +```php +// Get the value fom cell B5 +$cellValue = $objPHPExcel->getActiveSheet()->getCellByColumnAndRow(1, 5) + ->getValue(); +``` +If you need the calculated value of a cell, use the following code. This is further explained in . + +```php +// Get the value fom cell A4 +$cellValue = $objPHPExcel->getActiveSheet()->getCellByColumnAndRow(0, 4) + ->getCalculatedValue(); +``` + +### Retrieving a range of cell values to an array + +It is also possible to retrieve a range of cell values to an array in a single call using the `toArray()`, `rangeToArray()` or `namedRangeToArray()` methods. + +```php +$dataArray = $objPHPExcel->getActiveSheet() + ->rangeToArray( + 'C3:E5', // The worksheet range that we want to retrieve + NULL, // Value that should be returned for empty cells + TRUE, // Should formulas be calculated (the equivalent of getCalculatedValue() for each cell) + TRUE, // Should values be formatted (the equivalent of getFormattedValue() for each cell) + TRUE // Should the array be indexed by cell row and cell column + ); +``` + +These methods will all return a 2-d array of rows and columns. The `toArray()` method will return the whole worksheet; `rangeToArray()` will return a specified range or cells; while `namedRangeToArray()` will return the cells within a defined `named range`. + +### Looping through cells + +#### Looping through cells using iterators + +The easiest way to loop cells is by using iterators. Using iterators, one can use foreach to loop worksheets, rows within a worksheet, and cells within a row. + +Below is an example where we read all the values in a worksheet and display them in a table. + +```php +$objReader = PHPExcel_IOFactory::createReader('Excel2007'); +$objReader->setReadDataOnly(TRUE); +$objPHPExcel = $objReader->load("test.xlsx"); + +$objWorksheet = $objPHPExcel->getActiveSheet(); + +echo '<table>' . PHP_EOL; +foreach ($objWorksheet->getRowIterator() as $row) { + echo '<tr>' . PHP_EOL; + $cellIterator = $row->getCellIterator(); + $cellIterator->setIterateOnlyExistingCells(FALSE); // This loops through all cells, + // even if a cell value is not set. + // By default, only cells that have a value + // set will be iterated. + foreach ($cellIterator as $cell) { + echo '<td>' . + $cell->getValue() . + '</td>' . PHP_EOL; + } + echo '</tr>' . PHP_EOL; +} +echo '</table>' . PHP_EOL; +``` + +Note that we have set the cell iterator's `setIterateOnlyExistingCells()` to FALSE. This makes the iterator loop all cells within the worksheet range, even if they have not been set. + +The cell iterator will return a __NULL__ as the cell value if it is not set in the worksheet. +Setting the cell iterator's setIterateOnlyExistingCells() to FALSE will loop all cells in the worksheet that can be available at that moment. This will create new cells if required and increase memory usage! Only use it if it is intended to loop all cells that are possibly available. + +#### Looping through cells using indexes + +One can use the possibility to access cell values by column and row index like (0,1) instead of 'A1' for reading and writing cell values in loops. + +Note: In PHPExcel column index is 0-based while row index is 1-based. That means 'A1' ~ (0,1) + +Below is an example where we read all the values in a worksheet and display them in a table. + +```php +$objReader = PHPExcel_IOFactory::createReader('Excel2007'); +$objReader->setReadDataOnly(TRUE); +$objPHPExcel = $objReader->load("test.xlsx"); + +$objWorksheet = $objPHPExcel->getActiveSheet(); +// Get the highest row and column numbers referenced in the worksheet +$highestRow = $objWorksheet->getHighestRow(); // e.g. 10 +$highestColumn = $objWorksheet->getHighestColumn(); // e.g 'F' +$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn); // e.g. 5 + +echo '<table>' . "\n"; +for ($row = 1; $row <= $highestRow; ++$row) { + echo '<tr>' . PHP_EOL; + for ($col = 0; $col <= $highestColumnIndex; ++$col) { + echo '<td>' . + $objWorksheet->getCellByColumnAndRow($col, $row) + ->getValue() . + '</td>' . PHP_EOL; + } + echo '</tr>' . PHP_EOL; +} +echo '</table>' . PHP_EOL; +``` + +Alternatively, you can take advantage of PHP's "Perl-style" character incrementors to loop through the cells by coordinate: + +```php +$objReader = PHPExcel_IOFactory::createReader('Excel2007'); +$objReader->setReadDataOnly(TRUE); +$objPHPExcel = $objReader->load("test.xlsx"); + +$objWorksheet = $objPHPExcel->getActiveSheet(); +// Get the highest row number and column letter referenced in the worksheet +$highestRow = $objWorksheet->getHighestRow(); // e.g. 10 +$highestColumn = $objWorksheet->getHighestColumn(); // e.g 'F' +// Increment the highest column letter +$highestColumn++; + +echo '<table>' . "\n"; +for ($row = 1; $row <= $highestRow; ++$row) { + echo '<tr>' . PHP_EOL; + for ($col = 'A'; $col != $highestColumn; ++$col) { + echo '<td>' . + $objWorksheet->getCell($col . $row) + ->getValue() . + '</td>' . PHP_EOL; + } + echo '</tr>' . PHP_EOL; +} +echo '</table>' . PHP_EOL; +``` + +Note that we can't use a <= comparison here, because 'AA' would match as <= 'B', so we increment the highest column letter and then loop while $col != the incremented highest column. + +### Using value binders to facilitate data entry + +Internally, PHPExcel uses a default PHPExcel_Cell_IValueBinder implementation (PHPExcel_Cell_DefaultValueBinder) to determine data types of entered data using a cell's `setValue()` method (the `setValueExplicit()` method bypasses this check). + +Optionally, the default behaviour of PHPExcel can be modified, allowing easier data entry. For example, a PHPExcel_Cell_AdvancedValueBinder class is available. It automatically converts percentages, number in scientific format, and dates entered as strings to the correct format, also setting the cell's style information. The following example demonstrates how to set the value binder in PHPExcel: + +```php +/** PHPExcel */ +require_once 'PHPExcel.php'; + +// Set value binder +PHPExcel_Cell::setValueBinder( new PHPExcel_Cell_AdvancedValueBinder() ); + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); + +// ... +// Add some data, resembling some different data types +$objPHPExcel->getActiveSheet()->setCellValue('A4', 'Percentage value:'); +// Converts the string value to 0.1 and sets percentage cell style +$objPHPExcel->getActiveSheet()->setCellValue('B4', '10%'); + +$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Date/time value:'); +// Converts the string value to an Excel datestamp and sets the date format cell style +$objPHPExcel->getActiveSheet()->setCellValue('B5', '21 December 1983'); +``` + +__Creating your own value binder is easy.__ +When advanced value binding is required, you can implement the PHPExcel_Cell_IValueBinder interface or extend the PHPExcel_Cell_DefaultValueBinder or PHPExcel_Cell_AdvancedValueBinder classes. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/08-Recipes.md b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/08-Recipes.md new file mode 100644 index 0000000..b8930a4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/08-Recipes.md @@ -0,0 +1,1214 @@ +# PHPExcel Developer Documentation + +## PHPExcel recipes + +The following pages offer you some widely-used PHPExcel recipes. Please note that these do NOT offer complete documentation on specific PHPExcel API functions, but just a bump to get you started. If you need specific API functions, please refer to the API documentation. + +For example, REF _Ref191885321 \w \h 4.4.7 REF _Ref191885321 \h Setting a worksheet's page orientation and size covers setting a page orientation to A4. Other paper formats, like US Letter, are not covered in this document, but in the PHPExcel API documentation. + +### Setting a spreadsheet's metadata + +PHPExcel allows an easy way to set a spreadsheet's metadata, using document property accessors. Spreadsheet metadata can be useful for finding a specific document in a file repository or a document management system. For example Microsoft Sharepoint uses document metadata to search for a specific document in its document lists. + +Setting spreadsheet metadata is done as follows: + +```php +$objPHPExcel->getProperties() + ->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw"); + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription( + "Test document for Office 2007 XLSX, generated using PHP classes." + ) + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); +``` + +### Setting a spreadsheet's active sheet + +The following line of code sets the active sheet index to the first sheet: + +```php +$objPHPExcel->setActiveSheetIndex(0); +``` + +You can also set the active sheet by its name/title + +```php +$objPHPExcel->setActiveSheetIndexByName('DataSheet') +``` + +will change the currently active sheet to the worksheet called "DataSheet". + +### Write a date or time into a cell + +In Excel, dates and Times are stored as numeric values counting the number of days elapsed since 1900-01-01. For example, the date '2008-12-31' is represented as 39813. You can verify this in Microsoft Office Excel by entering that date in a cell and afterwards changing the number format to 'General' so the true numeric value is revealed. Likewise, '3:15 AM' is represented as 0.135417. + +PHPExcel works with UST (Universal Standard Time) date and Time values, but does no internal conversions; so it is up to the developer to ensure that values passed to the date/time conversion functions are UST. + +Writing a date value in a cell consists of 2 lines of code. Select the method that suits you the best. Here are some examples: + +```php +/* PHPExcel_Cell_AdvanceValueBinder required for this sample */ +require_once 'PHPExcel/Cell/AdvancedValueBinder.php'; + +// MySQL-like timestamp '2008-12-31' or date string +PHPExcel_Cell::setValueBinder( new PHPExcel_Cell_AdvancedValueBinder() ); + +$objPHPExcel->getActiveSheet() + ->setCellValue('D1', '2008-12-31'); + +$objPHPExcel->getActiveSheet()->getStyle('D1') + ->getNumberFormat() + ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH); + +// PHP-time (Unix time) +$time = gmmktime(0,0,0,12,31,2008); // int(1230681600) +$objPHPExcel->getActiveSheet() + ->setCellValue('D1', PHPExcel_Shared_Date::PHPToExcel($time)); +$objPHPExcel->getActiveSheet()->getStyle('D1') + ->getNumberFormat() + ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH); + +// Excel-date/time +$objPHPExcel->getActiveSheet()->setCellValue('D1', 39813) +$objPHPExcel->getActiveSheet()->getStyle('D1') + ->getNumberFormat() + ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH); +``` + +The above methods for entering a date all yield the same result. PHPExcel_Style_NumberFormat provides a lot of pre-defined date formats. + +The PHPExcel_Shared_Date::PHPToExcel() method will also work with a PHP DateTime object. + +Similarly, times (or date and time values) can be entered in the same fashion: just remember to use an appropriate format code. + +__Notes:__ + +See section "Using value binders to facilitate data entry" to learn more about the AdvancedValueBinder used in the first example. +In previous versions of PHPExcel up to and including 1.6.6, when a cell had a date-like number format code, it was possible to enter a date directly using an integer PHP-time without converting to Excel date format. Starting with PHPExcel 1.6.7 this is no longer supported. +Excel can also operate in a 1904-based calendar (default for workbooks saved on Mac). Normally, you do not have to worry about this when using PHPExcel. + +### Write a formula into a cell + +Inside the Excel file, formulas are always stored as they would appear in an English version of Microsoft Office Excel, and PHPExcel handles all formulae internally in this format. This means that the following rules hold: + + - Decimal separator is '.' (period) + - Function argument separator is ',' (comma) + - Matrix row separator is ';' (semicolon) + - English function names must be used + +This is regardless of which language version of Microsoft Office Excel may have been used to create the Excel file. + +When the final workbook is opened by the user, Microsoft Office Excel will take care of displaying the formula according the applications language. Translation is taken care of by the application! + +The following line of code writes the formula '=IF(C4>500,"profit","loss")' into the cell B8. Note that the formula must start with "=" to make PHPExcel recognise this as a formula. + +```php +$objPHPExcel->getActiveSheet()->setCellValue('B8','=IF(C4>500,"profit","loss")'); +``` + +If you want to write a string beginning with an "=" character to a cell, then you should use the setCellValueExplicit() method. + +```php +$objPHPExcel->getActiveSheet() + ->setCellValueExplicit( + 'B8', + '=IF(C4>500,"profit","loss")', + PHPExcel_Cell_DataType::TYPE_STRING + ); +``` + +A cell's formula can be read again using the following line of code: + +```php +$formula = $objPHPExcel->getActiveSheet()->getCell('B8')->getValue(); +``` + +If you need the calculated value of a cell, use the following code. This is further explained in REF _Ref191885372 \w \h \* MERGEFORMAT 4.4.35. + +```php +$value = $objPHPExcel->getActiveSheet()->getCell('B8')->getCalculatedValue(); +``` + +### Locale Settings for Formulae + +Some localisation elements have been included in PHPExcel. You can set a locale by changing the settings. To set the locale to Russian you would use: + +```php +$locale = 'ru'; +$validLocale = PHPExcel_Settings::setLocale($locale); +if (!$validLocale) { + echo 'Unable to set locale to '.$locale." - reverting to en_us<br />\n"; +} +``` + +If Russian language files aren't available, the `setLocale()` method will return an error, and English settings will be used throughout. + +Once you have set a locale, you can translate a formula from its internal English coding. + +```php +$formula = $objPHPExcel->getActiveSheet()->getCell('B8')->getValue(); +$translatedFormula = PHPExcel_Calculation::getInstance()->_translateFormulaToLocale($formula); +``` + +You can also create a formula using the function names and argument separators appropriate to the defined locale; then translate it to English before setting the cell value: + +```php +$formula = '=????360(????(2010;2;5);????(2010;12;31);??????)'; +$internalFormula = PHPExcel_Calculation::getInstance()->translateFormulaToEnglish($formula); +$objPHPExcel->getActiveSheet()->setCellValue('B8',$internalFormula); +``` + +Currently, formula translation only translates the function names, the constants TRUE and FALSE, and the function argument separators. + +At present, the following locale settings are supported: + + Language | | Locale Code + ---------------------|----------------------|------------- + Czech | Ceština | cs + Danish | Dansk | da + German | Deutsch | de + Spanish | Español | es + Finnish | Suomi | fi + French | Français | fr + Hungarian | Magyar | hu + Italian | Italiano | it + Dutch | Nederlands | nl + Norwegian | Norsk | no + Polish | Jezyk polski | pl + Portuguese | Português | pt + Brazilian Portuguese | Português Brasileiro | pt_br + Russian | ??????? ???? | ru + Swedish | Svenska | sv + Turkish | Türkçe | tr + +### Write a newline character "\n" in a cell (ALT+"Enter") + +In Microsoft Office Excel you get a line break in a cell by hitting ALT+"Enter". When you do that, it automatically turns on "wrap text" for the cell. + +Here is how to achieve this in PHPExcel: + +```php +$objPHPExcel->getActiveSheet()->getCell('A1')->setValue("hello\nworld"); +$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setWrapText(true); +``` + +__Tip__ + +Read more about formatting cells using getStyle() elsewhere. + +__Tip__ + +AdvancedValuebinder.php automatically turns on "wrap text" for the cell when it sees a newline character in a string that you are inserting in a cell. Just like Microsoft Office Excel. Try this: + +```php +require_once 'PHPExcel/Cell/AdvancedValueBinder.php'; +PHPExcel_Cell::setValueBinder( new PHPExcel_Cell_AdvancedValueBinder() ); + +$objPHPExcel->getActiveSheet()->getCell('A1')->setValue("hello\nworld"); +``` + +Read more about AdvancedValueBinder.php elsewhere. + +### Explicitly set a cell's datatype + +You can set a cell's datatype explicitly by using the cell's setValueExplicit method, or the setCellValueExplicit method of a worksheet. Here's an example: + +```php +$objPHPExcel->getActiveSheet()->getCell('A1') + ->setValueExplicit( + '25', + PHPExcel_Cell_DataType::TYPE_NUMERIC + ); +``` + +### Change a cell into a clickable URL + +You can make a cell a clickable URL by setting its hyperlink property: + +```php +$objPHPExcel->getActiveSheet()->setCellValue('E26', 'www.phpexcel.net'); +$objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()->setUrl('http://www.phpexcel.net'); +``` + +If you want to make a hyperlink to another worksheet/cell, use the following code: + +```php +$objPHPExcel->getActiveSheet()->setCellValue('E26', 'www.phpexcel.net'); +$objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()->setUrl("sheet://'Sheetname'!A1"); +``` + +### Setting Printer Options for Excel files + +#### Setting a worksheet's page orientation and size + +Setting a worksheet's page orientation and size can be done using the following lines of code: + +```php +$objPHPExcel->getActiveSheet()->getPageSetup() + ->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE); +$objPHPExcel->getActiveSheet()->getPageSetup() + ->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4); +``` + +Note that there are additional page settings available. Please refer to the API documentation for all possible options. + +#### Page Setup: Scaling options + +The page setup scaling options in PHPExcel relate directly to the scaling options in the "Page Setup" dialog as shown in the illustration. + +Default values in PHPExcel correspond to default values in MS Office Excel as shown in illustration + +![08-page-setup-scaling-options.png](./images/08-page-setup-scaling-options.png "") + + method | initial value | calling method will trigger | Note + --------------------|:-------------:|-----------------------------|------ + setFitToPage(...) | FALSE | - | + setScale(...) | 100 | setFitToPage(FALSE) | + setFitToWidth(...) | 1 | setFitToPage(TRUE) | value 0 means do-not-fit-to-width + setFitToHeight(...) | 1 | setFitToPage(TRUE) | value 0 means do-not-fit-to-height + +##### Example + +Here is how to fit to 1 page wide by infinite pages tall: + +```php +$objPHPExcel->getActiveSheet()->getPageSetup()->setFitToWidth(1); +$objPHPExcel->getActiveSheet()->getPageSetup()->setFitToHeight(0); +``` + +As you can see, it is not necessary to call setFitToPage(TRUE) since setFitToWidth(...) and setFitToHeight(...) triggers this. + +If you use setFitToWidth() you should in general also specify setFitToHeight() explicitly like in the example. Be careful relying on the initial values. This is especially true if you are upgrading from PHPExcel 1.7.0 to 1.7.1 where the default values for fit-to-height and fit-to-width changed from 0 to 1. + +#### Page margins + +To set page margins for a worksheet, use this code: + +```php +$objPHPExcel->getActiveSheet()->getPageMargins()->setTop(1); +$objPHPExcel->getActiveSheet()->getPageMargins()->setRight(0.75); +$objPHPExcel->getActiveSheet()->getPageMargins()->setLeft(0.75); +$objPHPExcel->getActiveSheet()->getPageMargins()->setBottom(1); +``` + +Note that the margin values are specified in inches. + +![08-page-setup-margins.png](./images/08-page-setup-margins.png "") + +#### Center a page horizontally/vertically + +To center a page horizontally/vertically, you can use the following code: + +```php +$objPHPExcel->getActiveSheet()->getPageSetup()->setHorizontalCentered(true); +$objPHPExcel->getActiveSheet()->getPageSetup()->setVerticalCentered(false); +``` + +#### Setting the print header and footer of a worksheet + +Setting a worksheet's print header and footer can be done using the following lines of code: + +```php +$objPHPExcel->getActiveSheet()->getHeaderFooter() + ->setOddHeader('&C&HPlease treat this document as confidential!'); +$objPHPExcel->getActiveSheet()->getHeaderFooter() + ->setOddFooter('&L&B' . $objPHPExcel->getProperties()->getTitle() . '&RPage &P of &N'); +``` + +Substitution and formatting codes (starting with &) can be used inside headers and footers. There is no required order in which these codes must appear. + +The first occurrence of the following codes turns the formatting ON, the second occurrence turns it OFF again: + + - Strikethrough + - Superscript + - Subscript + +Superscript and subscript cannot both be ON at same time. Whichever comes first wins and the other is ignored, while the first is ON. + +The following codes are supported by Excel2007: + +Code | Meaning +-----------------------|----------- +&L | Code for "left section" (there are three header / footer locations, "left", "center", and "right"). When two or more occurrences of this section marker exist, the contents from all markers are concatenated, in the order of appearance, and placed into the left section. +&P | Code for "current page #" +&N | Code for "total pages" +&font size | Code for "text font size", where font size is a font size in points. +&K | Code for "text font color" - RGB Color is specified as RRGGBB Theme Color is specifed as TTSNN where TT is the theme color Id, S is either "+" or "-" of the tint/shade value, NN is the tint/shade value. +&S | Code for "text strikethrough" on / off +&X | Code for "text super script" on / off +&Y | Code for "text subscript" on / off +&C | Code for "center section". When two or more occurrences of this section marker exist, the contents from all markers are concatenated, in the order of appearance, and placed into the center section. +&D | Code for "date" +&T | Code for "time" +&G | Code for "picture as background" - Please make sure to add the image to the header/footer[^print-footer-image-footnote] +&U | Code for "text single underline" +&E | Code for "double underline" +&R | Code for "right section". When two or more occurrences of this section marker exist, the contents from all markers are concatenated, in the order of appearance, and placed into the right section. +&Z | Code for "this workbook's file path" +&F | Code for "this workbook's file name" +&A | Code for "sheet tab name" +&+ | Code for add to page # +&- | Code for subtract from page # +&"font name,font type" | Code for "text font name" and "text font type", where font name and font type are strings specifying the name and type of the font, separated by a comma. When a hyphen appears in font name, it means "none specified". Both of font name and font type can be localized values. +&"-,Bold" | Code for "bold font style" +&B | Code for "bold font style" +&"-,Regular" | Code for "regular font style" +&"-,Italic" | Code for "italic font style" +&I | Code for "italic font style" +&"-,Bold Italic" | Code for "bold italic font style" +&O | Code for "outline style" +&H | Code for "shadow style" + + [^print-footer-image-footnote]: z +```php +$objDrawing = new PHPExcel_Worksheet_HeaderFooterDrawing(); +$objDrawing->setName('PHPExcel logo'); +$objDrawing->setPath('./images/phpexcel_logo.gif'); +$objDrawing->setHeight(36); +$objPHPExcel->getActiveSheet()->getHeaderFooter()->addImage($objDrawing, PHPExcel_Worksheet_HeaderFooter::IMAGE_HEADER_LEFT); +``` + +__Tip__ + +The above table of codes may seem overwhelming first time you are trying to figure out how to write some header or footer. Luckily, there is an easier way. Let Microsoft Office Excel do the work for you.For example, create in Microsoft Office Excel an xlsx file where you insert the header and footer as desired using the programs own interface. Save file as test.xlsx. Now, take that file and read off the values using PHPExcel as follows: + +```php +$objPHPexcel = PHPExcel_IOFactory::load('test.xlsx'); +$objWorksheet = $objPHPexcel->getActiveSheet(); + +var_dump($objWorksheet->getHeaderFooter()->getOddFooter()); +var_dump($objWorksheet->getHeaderFooter()->getEvenFooter()); +var_dump($objWorksheet->getHeaderFooter()->getOddHeader()); +var_dump($objWorksheet->getHeaderFooter()->getEvenHeader()); +``` + +That reveals the codes for the even/odd header and footer. Experienced users may find it easier to rename test.xlsx to test.zip, unzip it, and inspect directly the contents of the relevant xl/worksheets/sheetX.xml to find the codes for header/footer. + +#### Setting printing breaks on a row or column + +To set a print break, use the following code, which sets a row break on row 10. + +```php +$objPHPExcel->getActiveSheet()->setBreak( 'A10' , PHPExcel_Worksheet::BREAK_ROW ); +``` + +The following line of code sets a print break on column D: + +```php +$objPHPExcel->getActiveSheet()->setBreak( 'D10' , PHPExcel_Worksheet::BREAK_COLUMN ); +``` + +#### Show/hide gridlines when printing + +To show/hide gridlines when printing, use the following code: + +$objPHPExcel->getActiveSheet()->setShowGridlines(true); + +#### Setting rows/columns to repeat at top/left + +PHPExcel can repeat specific rows/cells at top/left of a page. The following code is an example of how to repeat row 1 to 5 on each printed page of a specific worksheet: + +```php +$objPHPExcel->getActiveSheet()->getPageSetup()->setRowsToRepeatAtTopByStartAndEnd(1, 5); +``` + +#### Specify printing area + +To specify a worksheet's printing area, use the following code: + +```php +$objPHPExcel->getActiveSheet()->getPageSetup()->setPrintArea('A1:E5'); +``` + +There can also be multiple printing areas in a single worksheet: + +```php +$objPHPExcel->getActiveSheet()->getPageSetup()->setPrintArea('A1:E5,G4:M20'); +``` + +### Styles + +#### Formatting cells + +A cell can be formatted with font, border, fill, ... style information. For example, one can set the foreground colour of a cell to red, aligned to the right, and the border to black and thick border style. Let's do that on cell B2: + +```php +$objPHPExcel->getActiveSheet()->getStyle('B2') + ->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED); +$objPHPExcel->getActiveSheet()->getStyle('B2') + ->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); +$objPHPExcel->getActiveSheet()->getStyle('B2') + ->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THICK); +$objPHPExcel->getActiveSheet()->getStyle('B2') + ->getBorders()->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THICK); +$objPHPExcel->getActiveSheet()->getStyle('B2') + ->getBorders()->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THICK); +$objPHPExcel->getActiveSheet()->getStyle('B2') + ->getBorders()->getRight()->setBorderStyle(PHPExcel_Style_Border::BORDER_THICK); +$objPHPExcel->getActiveSheet()->getStyle('B2') + ->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID); +$objPHPExcel->getActiveSheet()->getStyle('B2') + ->getFill()->getStartColor()->setARGB('FFFF0000'); +``` + +Starting with PHPExcel 1.7.0 getStyle() also accepts a cell range as a parameter. For example, you can set a red background color on a range of cells: + +```php +$objPHPExcel->getActiveSheet()->getStyle('B3:B7')->getFill() + ->setFillType(PHPExcel_Style_Fill::FILL_SOLID) + ->getStartColor()->setARGB('FFFF0000'); +``` + +__Tip__ +It is recommended to style many cells at once, using e.g. getStyle('A1:M500'), rather than styling the cells individually in a loop. This is much faster compared to looping through cells and styling them individually. + +There is also an alternative manner to set styles. The following code sets a cell's style to font bold, alignment right, top border thin and a gradient fill: + +```php +$styleArray = array( + 'font' => array( + 'bold' => true, + ), + 'alignment' => array( + 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_RIGHT, + ), + 'borders' => array( + 'top' => array( + 'style' => PHPExcel_Style_Border::BORDER_THIN, + ), + ), + 'fill' => array( + 'type' => PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR, + 'rotation' => 90, + 'startcolor' => array( + 'argb' => 'FFA0A0A0', + ), + 'endcolor' => array( + 'argb' => 'FFFFFFFF', + ), + ), +); + +$objPHPExcel->getActiveSheet()->getStyle('A3')->applyFromArray($styleArray); +``` + +Or with a range of cells: + +```php +$objPHPExcel->getActiveSheet()->getStyle('B3:B7')->applyFromArray($styleArray); +``` + +This alternative method using arrays should be faster in terms of execution whenever you are setting more than one style property. But the difference may barely be measurable unless you have many different styles in your workbook. + +Prior to PHPExcel 1.7.0 duplicateStyleArray() was the recommended method for styling a cell range, but this method has now been deprecated since getStyle() has started to accept a cell range. + +#### Number formats + +You often want to format numbers in Excel. For example you may want a thousands separator plus a fixed number of decimals after the decimal separator. Or perhaps you want some numbers to be zero-padded. + +In Microsoft Office Excel you may be familiar with selecting a number format from the "Format Cells" dialog. Here there are some predefined number formats available including some for dates. The dialog is designed in a way so you don't have to interact with the underlying raw number format code unless you need a custom number format. + +In PHPExcel, you can also apply various predefined number formats. Example: + +```php +$objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat() + ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1); +``` + +This will format a number e.g. 1587.2 so it shows up as 1,587.20 when you open the workbook in MS Office Excel. (Depending on settings for decimal and thousands separators in Microsoft Office Excel it may show up as 1.587,20) + +You can achieve exactly the same as the above by using this: + +```php +$objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat() + ->setFormatCode('#,##0.00'); +``` + +In Microsoft Office Excel, as well as in PHPExcel, you will have to interact with raw number format codes whenever you need some special custom number format. Example: + +```php +$objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat() + ->setFormatCode('[Blue][>=3000]$#,##0;[Red][<0]$#,##0;$#,##0'); +``` + +Another example is when you want numbers zero-padded with leading zeros to a fixed length: + +```php +$objPHPExcel->getActiveSheet()->getCell('A1')->setValue(19); +$objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat() + ->setFormatCode('0000'); // will show as 0019 in Excel +``` + +__Tip__ +The rules for composing a number format code in Excel can be rather complicated. Sometimes you know how to create some number format in Microsoft Office Excel, but don't know what the underlying number format code looks like. How do you find it? + +The readers shipped with PHPExcel come to the rescue. Load your template workbook using e.g. Excel2007 reader to reveal the number format code. Example how read a number format code for cell A1: + +```php +$objReader = PHPExcel_IOFactory::createReader('Excel2007'); +$objPHPExcel = $objReader->load('template.xlsx'); +var_dump($objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat()->getFormatCode()); +``` + +Advanced users may find it faster to inspect the number format code directly by renaming template.xlsx to template.zip, unzipping, and looking for the relevant piece of XML code holding the number format code in *xl/styles.xml*. + +#### Alignment and wrap text + +Let's set vertical alignment to the top for cells A1:D4 + +```php +$objPHPExcel->getActiveSheet()->getStyle('A1:D4') + ->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP); +``` + +Here is how to achieve wrap text: + +```php +$objPHPExcel->getActiveSheet()->getStyle('A1:D4') + ->getAlignment()->setWrapText(true); +``` + +#### Setting the default style of a workbook + +It is possible to set the default style of a workbook. Let's set the default font to Arial size 8: + +```php +$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial'); +$objPHPExcel->getDefaultStyle()->getFont()->setSize(8); +``` + +#### Styling cell borders + +In PHPExcel it is easy to apply various borders on a rectangular selection. Here is how to apply a thick red border outline around cells B2:G8. + +```php +$styleArray = array( + 'borders' => array( + 'outline' => array( + 'style' => PHPExcel_Style_Border::BORDER_THICK, + 'color' => array('argb' => 'FFFF0000'), + ), + ), +); + +$objWorksheet->getStyle('B2:G8')->applyFromArray($styleArray); +``` + +In Microsoft Office Excel, the above operation would correspond to selecting the cells B2:G8, launching the style dialog, choosing a thick red border, and clicking on the "Outline" border component. + +Note that the border outline is applied to the rectangular selection B2:G8 as a whole, not on each cell individually. + +You can achieve any border effect by using just the 5 basic borders and operating on a single cell at a time: + + Array key | Maps to property + ----------|------------------ + left | getLeft() + right | getRight() + top | getTop() + bottom | getBottom() + diagonal | getDiagonal() + +Additional shortcut borders come in handy like in the example above. These are the shortcut borders available: + + Array key | Maps to property + -----------|------------------ + allborders | getAllBorders() + outline | getOutline() + inside | getInside() + vertical | getVertical() + horizontal | getHorizontal() + + + +An overview of all border shortcuts can be seen in the following image: + +![08-styling-border-options.png](./images/08-styling-border-options.png "") + +If you simultaneously set e.g. allborders and vertical, then we have "overlapping" borders, and one of the components has to win over the other where there is border overlap. In PHPExcel, from weakest to strongest borders, the list is as follows: allborders, outline/inside, vertical/horizontal, left/right/top/bottom/diagonal. + +This border hierarchy can be utilized to achieve various effects in an easy manner. + +### Conditional formatting a cell + +A cell can be formatted conditionally, based on a specific rule. For example, one can set the foreground colour of a cell to red if its value is below zero, and to green if its value is zero or more. + +One can set a conditional style ruleset to a cell using the following code: + +```php +$objConditional1 = new PHPExcel_Style_Conditional(); +$objConditional1->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS); +$objConditional1->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_LESSTHAN); +$objConditional1->addCondition('0'); +$objConditional1->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED); +$objConditional1->getStyle()->getFont()->setBold(true); + +$objConditional2 = new PHPExcel_Style_Conditional(); +$objConditional2->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS); +$objConditional2->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_GREATERTHANOREQUAL); +$objConditional2->addCondition('0'); +$objConditional2->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_GREEN); +$objConditional2->getStyle()->getFont()->setBold(true); + +$conditionalStyles = $objPHPExcel->getActiveSheet()->getStyle('B2')->getConditionalStyles(); +array_push($conditionalStyles, $objConditional1); +array_push($conditionalStyles, $objConditional2); + +$objPHPExcel->getActiveSheet()->getStyle('B2')->setConditionalStyles($conditionalStyles); +``` + +If you want to copy the ruleset to other cells, you can duplicate the style object: + +```php +$objPHPExcel->getActiveSheet() + ->duplicateStyle( + $objPHPExcel->getActiveSheet()->getStyle('B2'), + 'B3:B7' + ); +``` + +### Add a comment to a cell + +To add a comment to a cell, use the following code. The example below adds a comment to cell E11: + +```php +$objPHPExcel->getActiveSheet() + ->getComment('E11') + ->setAuthor('Mark Baker'); +$objCommentRichText = $objPHPExcel->getActiveSheet() + ->getComment('E11') + ->getText()->createTextRun('PHPExcel:'); +$objCommentRichText->getFont()->setBold(true); +$objPHPExcel->getActiveSheet() + ->getComment('E11') + ->getText()->createTextRun("\r\n"); +$objPHPExcel->getActiveSheet() + ->getComment('E11') + ->getText()->createTextRun('Total amount on the current invoice, excluding VAT.'); +``` + +![08-cell-comment.png](./images/08-cell-comment.png "") + +### Apply autofilter to a range of cells + +To apply an autofilter to a range of cells, use the following code: + +```php +$objPHPExcel->getActiveSheet()->setAutoFilter('A1:C9'); +``` + +__Make sure that you always include the complete filter range!__ +Excel does support setting only the captionrow, but that's __not__ a best practice... + +### Setting security on a spreadsheet + +Excel offers 3 levels of "protection": document security, sheet security and cell security. + +Document security allows you to set a password on a complete spreadsheet, allowing changes to be made only when that password is entered.Worksheet security offers other security options: you can disallow inserting rows on a specific sheet, disallow sorting, ... Cell security offers the option to lock/unlock a cell as well as show/hide the internal formulaAn example on setting document security: + +```php +$objPHPExcel->getSecurity()->setLockWindows(true); +$objPHPExcel->getSecurity()->setLockStructure(true); +$objPHPExcel->getSecurity()->setWorkbookPassword("PHPExcel"); +``` + +An example on setting worksheet security: + +```php +$objPHPExcel->getActiveSheet() + ->getProtection()->setPassword('PHPExcel'); +$objPHPExcel->getActiveSheet() + ->getProtection()->setSheet(true); +$objPHPExcel->getActiveSheet() + ->getProtection()->setSort(true); +$objPHPExcel->getActiveSheet() + ->getProtection()->setInsertRows(true); +$objPHPExcel->getActiveSheet() + ->getProtection()->setFormatCells(true); +``` + +An example on setting cell security: + +```php +$objPHPExcel->getActiveSheet()->getStyle('B1') + ->getProtection() + ->setLocked(PHPExcel_Style_Protection::PROTECTION_UNPROTECTED); +``` + +__Make sure you enable worksheet protection if you need any of the worksheet protection features!__ This can be done using the following code: + +```php +$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); +``` + +### Setting data validation on a cell + +Data validation is a powerful feature of Excel2007. It allows to specify an input filter on the data that can be inserted in a specific cell. This filter can be a range (i.e. value must be between 0 and 10), a list (i.e. value must be picked from a list), ... + +The following piece of code only allows numbers between 10 and 20 to be entered in cell B3: + +```php +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B3') + ->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_WHOLE ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_STOP ); +$objValidation->setAllowBlank(true); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Number is not allowed!'); +$objValidation->setPromptTitle('Allowed input'); +$objValidation->setPrompt('Only numbers between 10 and 20 are allowed.'); +$objValidation->setFormula1(10); +$objValidation->setFormula2(20); +``` + +This validation will limit the length of text that can be entered in a cell to 6 characters. + +``` +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B9')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_TEXTLENGTH ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_STOP ); +$objValidation->setAllowBlank(true); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Text exceeds maximum length'); +$objValidation->setPromptTitle('Allowed input'); +$objValidation->setPrompt('Maximum text length is 6 characters.'); +$objValidation->setFormula1(6); +``` + +The following piece of code only allows an item picked from a list of data to be entered in cell B3: + +```php +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B5') + ->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION ); +$objValidation->setAllowBlank(false); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setShowDropDown(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Value is not in list.'); +$objValidation->setPromptTitle('Pick from list'); +$objValidation->setPrompt('Please pick a value from the drop-down list.'); +$objValidation->setFormula1('"Item A,Item B,Item C"'); +``` + +When using a data validation list like above, make sure you put the list between " and " and that you split the items with a comma (,). + +It is important to remember that any string participating in an Excel formula is allowed to be maximum 255 characters (not bytes). This sets a limit on how many items you can have in the string "Item A,Item B,Item C". Therefore it is normally a better idea to type the item values directly in some cell range, say A1:A3, and instead use, say, $objValidation->setFormula1('Sheet!$A$1:$A$3');. Another benefit is that the item values themselves can contain the comma "," character itself. + +If you need data validation on multiple cells, one can clone the ruleset: + +```php +$objPHPExcel->getActiveSheet()->getCell('B8')->setDataValidation(clone $objValidation); +``` + +### Setting a column's width + +A column's width can be set using the following code: + +```php +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12); +``` + +If you want PHPExcel to perform an automatic width calculation, use the following code. PHPExcel will approximate the column with to the width of the widest column value. + +```php +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true); +``` + +![08-column-width.png](./images/08-column-width.png "") + +The measure for column width in PHPExcel does __not__ correspond exactly to the measure you may be used to in Microsoft Office Excel. Column widths are difficult to deal with in Excel, and there are several measures for the column width.1) __Inner width in character units__ (e.g. 8.43 this is probably what you are familiar with in Excel)2) __Full width in pixels__ (e.g. 64 pixels)3) __Full width in character units__ (e.g. 9.140625, value -1 indicates unset width)__PHPExcel always operates with 3) "Full width in character units"__ which is in fact the only value that is stored in any Excel file, hence the most reliable measure. Unfortunately, __Microsoft ____Office ____Excel does not present you with this ____measure__. Instead measures 1) and 2) are computed by the application when the file is opened and these values are presented in various dialogues and tool tips.The character width unit is the width of a '0' (zero) glyph in the workbooks default font. Therefore column widths measured in character units in two different workbooks can only be compared if they have the same default workbook font.If you have some Excel file and need to know the column widths in measure 3), you can read the Excel file with PHPExcel and echo the retrieved values. + +### Show/hide a column + +To set a worksheet's column visibility, you can use the following code. The first line explicitly shows the column C, the second line hides column D. + +```php +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setVisible(true); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setVisible(false); +``` + +### Group/outline a column + +To group/outline a column, you can use the following code: + +```php +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setOutlineLevel(1); +``` + +You can also collapse the column. Note that you should also set the column invisible, otherwise the collapse will not be visible in Excel 2007. + +```php +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setCollapsed(true); +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setVisible(false); +``` + +Please refer to the section "group/outline a row" for a complete example on collapsing. + +You can instruct PHPExcel to add a summary to the right (default), or to the left. The following code adds the summary to the left: + +```php +$objPHPExcel->getActiveSheet()->setShowSummaryRight(false); +``` + +### Setting a row's height + +A row's height can be set using the following code: + +```php +$objPHPExcel->getActiveSheet()->getRowDimension('10')->setRowHeight(100); +``` + +Excel measures row height in points, where 1 pt is 1/72 of an inch (or about 0.35mm). The default value is 12.75 pts; and the permitted range of values is between 0 and 409 pts, where 0 pts is a hidden row. + +### Show/hide a row + +To set a worksheet''s row visibility, you can use the following code. The following example hides row number 10. + +```php +$objPHPExcel->getActiveSheet()->getRowDimension('10')->setVisible(false); +``` + +Note that if you apply active filters using an AutoFilter, then this will override any rows that you hide or unhide manually within that AutoFilter range if you save the file. + +### Group/outline a row + +To group/outline a row, you can use the following code: + +```php +$objPHPExcel->getActiveSheet()->getRowDimension('5')->setOutlineLevel(1); +``` + +You can also collapse the row. Note that you should also set the row invisible, otherwise the collapse will not be visible in Excel 2007. + +```php +$objPHPExcel->getActiveSheet()->getRowDimension('5')->setCollapsed(true); +$objPHPExcel->getActiveSheet()->getRowDimension('5')->setVisible(false); +``` + +Here's an example which collapses rows 50 to 80: + +```php +for ($i = 51; $i <= 80; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, "FName $i"); + $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, "LName $i"); + $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, "PhoneNo $i"); + $objPHPExcel->getActiveSheet()->setCellValue('D' . $i, "FaxNo $i"); + $objPHPExcel->getActiveSheet()->setCellValue('E' . $i, true); + $objPHPExcel->getActiveSheet()->getRowDimension($i)->setOutlineLevel(1); + $objPHPExcel->getActiveSheet()->getRowDimension($i)->setVisible(false); +} + +$objPHPExcel->getActiveSheet()->getRowDimension(81)->setCollapsed(true); +``` + +You can instruct PHPExcel to add a summary below the collapsible rows (default), or above. The following code adds the summary above: + +```php +$objPHPExcel->getActiveSheet()->setShowSummaryBelow(false); +``` + +### Merge/unmerge cells + +If you have a big piece of data you want to display in a worksheet, you can merge two or more cells together, to become one cell. This can be done using the following code: + +```php +$objPHPExcel->getActiveSheet()->mergeCells('A18:E22'); +``` + +Removing a merge can be done using the unmergeCells method: + +```php +$objPHPExcel->getActiveSheet()->unmergeCells('A18:E22'); +``` + +### Inserting rows/columns + +You can insert/remove rows/columns at a specific position. The following code inserts 2 new rows, right before row 7: + +```php +$objPHPExcel->getActiveSheet()->insertNewRowBefore(7, 2); +``` + +### Add a drawing to a worksheet + +A drawing is always represented as a separate object, which can be added to a worksheet. Therefore, you must first instantiate a new PHPExcel_Worksheet_Drawing, and assign its properties a meaningful value: + +```php +$objDrawing = new PHPExcel_Worksheet_Drawing(); +$objDrawing->setName('Logo'); +$objDrawing->setDescription('Logo'); +$objDrawing->setPath('./images/officelogo.jpg'); +$objDrawing->setHeight(36); +``` + +To add the above drawing to the worksheet, use the following snippet of code. PHPExcel creates the link between the drawing and the worksheet: + +```php +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); +``` + +You can set numerous properties on a drawing, here are some examples: + +```php +$objDrawing->setName('Paid'); +$objDrawing->setDescription('Paid'); +$objDrawing->setPath('./images/paid.png'); +$objDrawing->setCoordinates('B15'); +$objDrawing->setOffsetX(110); +$objDrawing->setRotation(25); +$objDrawing->getShadow()->setVisible(true); +$objDrawing->getShadow()->setDirection(45); +``` + +You can also add images created using GD functions without needing to save them to disk first as In-Memory drawings. + +```php +// Use GD to create an in-memory image +$gdImage = @imagecreatetruecolor(120, 20) or die('Cannot Initialize new GD image stream'); +$textColor = imagecolorallocate($gdImage, 255, 255, 255); +imagestring($gdImage, 1, 5, 5, 'Created with PHPExcel', $textColor); + +// Add the In-Memory image to a worksheet +$objDrawing = new PHPExcel_Worksheet_MemoryDrawing(); +$objDrawing->setName('In-Memory image 1'); +$objDrawing->setDescription('In-Memory image 1'); +$objDrawing->setCoordinates('A1'); +$objDrawing->setImageResource($gdImage); +$objDrawing->setRenderingFunction( + PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG +); +$objDrawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT); +$objDrawing->setHeight(36); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); +``` + +### Reading Images from a worksheet + +A commonly asked question is how to retrieve the images from a workbook that has been loaded, and save them as individual image files to disk. + +The following code extracts images from the current active worksheet, and writes each as a separate file. + +```php +$i = 0; +foreach ($objPHPExcel->getActiveSheet()->getDrawingCollection() as $drawing) { + if ($drawing instanceof PHPExcel_Worksheet_MemoryDrawing) { + ob_start(); + call_user_func( + $drawing->getRenderingFunction(), + $drawing->getImageResource() + ); + $imageContents = ob_get_contents(); + ob_end_clean(); + switch ($drawing->getMimeType()) { + case PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_PNG : + $extension = 'png'; + break; + case PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_GIF: + $extension = 'gif'; + break; + case PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_JPEG : + $extension = 'jpg'; + break; + } + } else { + $zipReader = fopen($drawing->getPath(),'r'); + $imageContents = ''; + while (!feof($zipReader)) { + $imageContents .= fread($zipReader,1024); + } + fclose($zipReader); + $extension = $drawing->getExtension(); + } + $myFileName = '00_Image_'.++$i.'.'.$extension; + file_put_contents($myFileName,$imageContents); +} +``` + +### Add rich text to a cell + +Adding rich text to a cell can be done using PHPExcel_RichText instances. Here''s an example, which creates the following rich text string: + + > This invoice is *__payable within thirty days after the end of the month__* unless specified otherwise on the invoice. + +```php +$objRichText = new PHPExcel_RichText(); +$objRichText->createText('This invoice is '); +$objPayable = $objRichText->createTextRun('payable within thirty days after the end of the month'); +$objPayable->getFont()->setBold(true); +$objPayable->getFont()->setItalic(true); +$objPayable->getFont()->setColor( new PHPExcel_Style_Color( PHPExcel_Style_Color::COLOR_DARKGREEN ) ); +$objRichText->createText(', unless specified otherwise on the invoice.'); +$objPHPExcel->getActiveSheet()->getCell('A18')->setValue($objRichText); +``` + +### Define a named range + +PHPExcel supports the definition of named ranges. These can be defined using the following code: + +```php +// Add some data +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Firstname:'); +$objPHPExcel->getActiveSheet()->setCellValue('A2', 'Lastname:'); +$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Maarten'); +$objPHPExcel->getActiveSheet()->setCellValue('B2', 'Balliauw'); + +// Define named ranges +$objPHPExcel->addNamedRange( new PHPExcel_NamedRange('PersonFN', $objPHPExcel->getActiveSheet(), 'B1') ); +$objPHPExcel->addNamedRange( new PHPExcel_NamedRange('PersonLN', $objPHPExcel->getActiveSheet(), 'B2') ); +``` + +Optionally, a fourth parameter can be passed defining the named range local (i.e. only usable on the current worksheet). Named ranges are global by default. + +### Redirect output to a client's web browser + +Sometimes, one really wants to output a file to a client''s browser, especially when creating spreadsheets on-the-fly. There are some easy steps that can be followed to do this: + + 1. Create your PHPExcel spreadsheet + 2. Output HTTP headers for the type of document you wish to output + 3. Use the PHPExcel_Writer_* of your choice, and save to "php://output" + +PHPExcel_Writer_Excel2007 uses temporary storage when writing to php://output. By default, temporary files are stored in the script's working directory. When there is no access, it falls back to the operating system's temporary files location. + +__This may not be safe for unauthorized viewing!__ +Depending on the configuration of your operating system, temporary storage can be read by anyone using the same temporary storage folder. When confidentiality of your document is needed, it is recommended not to use php://output. + +#### HTTP headers + +Example of a script redirecting an Excel 2007 file to the client's browser: + +```php +/* Here there will be some code where you create $objPHPExcel */ + +// redirect output to client browser +header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); +header('Content-Disposition: attachment;filename="myfile.xlsx"'); +header('Cache-Control: max-age=0'); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save('php://output'); +``` + +Example of a script redirecting an Excel5 file to the client's browser: + +```php +/* Here there will be some code where you create $objPHPExcel */ + +// redirect output to client browser +header('Content-Type: application/vnd.ms-excel'); +header('Content-Disposition: attachment;filename="myfile.xls"'); +header('Cache-Control: max-age=0'); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save('php://output'); +``` + +**Caution:** + +Make sure not to include any echo statements or output any other contents than the Excel file. There should be no whitespace before the opening <?php tag and at most one line break after the closing ?> tag (which can also be omitted to avoid problems). Make sure that your script is saved without a BOM (Byte-order mark) because this counts as echoing output. The same things apply to all included files. +Failing to follow the above guidelines may result in corrupt Excel files arriving at the client browser, and/or that headers cannot be set by PHP (resulting in warning messages). + +### Setting the default column width + +Default column width can be set using the following code: + +```php +$objPHPExcel->getActiveSheet()->getDefaultColumnDimension()->setWidth(12); +``` + +### Setting the default row height + +Default row height can be set using the following code: + +```php +$objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(15); +``` + +### Add a GD drawing to a worksheet + +There might be a situation where you want to generate an in-memory image using GD and add it to a PHPExcel worksheet without first having to save this file to a temporary location. + +Here''s an example which generates an image in memory and adds it to the active worksheet: + +```php +// Generate an image +$gdImage = @imagecreatetruecolor(120, 20) or die('Cannot Initialize new GD image stream'); +$textColor = imagecolorallocate($gdImage, 255, 255, 255); +imagestring($gdImage, 1, 5, 5, 'Created with PHPExcel', $textColor); + +// Add a drawing to the worksheet +$objDrawing = new PHPExcel_Worksheet_MemoryDrawing(); +$objDrawing->setName('Sample image'); +$objDrawing->setDescription('Sample image'); +$objDrawing->setImageResource($gdImage); +$objDrawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG); +$objDrawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT); +$objDrawing->setHeight(36); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); +``` + +### Setting worksheet zoom level + +To set a worksheet's zoom level, the following code can be used: + +```php +$objPHPExcel->getActiveSheet()->getSheetView()->setZoomScale(75); +``` + +Note that zoom level should be in range 10 – 400. + +### Sheet tab color + +Sometimes you want to set a color for sheet tab. For example you can have a red sheet tab: + +```php +$objWorksheet->getTabColor()->setRGB('FF0000'); +``` + +### Creating worksheets in a workbook + +If you need to create more worksheets in the workbook, here is how: + +```php +$objWorksheet1 = $objPHPExcel->createSheet(); +$objWorksheet1->setTitle('Another sheet'); +``` + +Think of createSheet() as the "Insert sheet" button in Excel. When you hit that button a new sheet is appended to the existing collection of worksheets in the workbook. + +### Hidden worksheets (Sheet states) + +Set a worksheet to be __hidden__ using this code: + +```php +$objPHPExcel->getActiveSheet() + ->setSheetState(PHPExcel_Worksheet::SHEETSTATE_HIDDEN); +``` + +Sometimes you may even want the worksheet to be __"very hidden"__. The available sheet states are : + + - PHPExcel_Worksheet::SHEETSTATE_VISIBLE + - PHPExcel_Worksheet::SHEETSTATE_HIDDEN + - PHPExcel_Worksheet::SHEETSTATE_VERYHIDDEN + +In Excel the sheet state "very hidden" can only be set programmatically, e.g. with Visual Basic Macro. It is not possible to make such a sheet visible via the user interface. + +### Right-to-left worksheet + +Worksheets can be set individually whether column "A" should start at left or right side. Default is left. Here is how to set columns from right-to-left. + +```php +// right-to-left worksheet +$objPHPExcel->getActiveSheet() + ->setRightToLeft(true); +``` + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/09-Calculation-Engine.md b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/09-Calculation-Engine.md new file mode 100644 index 0000000..c13a18c --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/09-Calculation-Engine.md @@ -0,0 +1,52 @@ +# PHPExcel Developer Documentation + +## Using the PHPExcel calculation engine + +### Performing formula calculations + +As PHPExcel represents an in-memory spreadsheet, it also offers formula calculation capabilities. A cell can be of a value type (containing a number or text), or a formula type (containing a formula which can be evaluated). For example, the formula "=SUM(A1:A10)" evaluates to the sum of values in A1, A2, ..., A10. + +To calculate a formula, you can call the cell containing the formula’s method getCalculatedValue(), for example: + +```php +$objPHPExcel->getActiveSheet()->getCell('E11')->getCalculatedValue(); +``` +If you write the following line of code in the invoice demo included with PHPExcel, it evaluates to the value "64": + +![09-command-line-calculation.png](./images/09-command-line-calculation.png "") + +Another nice feature of PHPExcel's formula parser, is that it can automatically adjust a formula when inserting/removing rows/columns. Here's an example: + +![09-formula-in-cell-1.png](./images/09-formula-in-cell-1.png "") + +You see that the formula contained in cell E11 is "SUM(E4:E9)". Now, when I write the following line of code, two new product lines are added: + +```php +$objPHPExcel->getActiveSheet()->insertNewRowBefore(7, 2); +``` + +![09-formula-in-cell-2.png](./images/09-formula-in-cell-2.png "") + +Did you notice? The formula in the former cell E11 (now E13, as I inserted 2 new rows), changed to "SUM(E4:E11)". Also, the inserted cells duplicate style information of the previous cell, just like Excel's behaviour. Note that you can both insert rows and columns. + +### Known limitations + +There are some known limitations to the PHPExcel calculation engine. Most of them are due to the fact that an Excel formula is converted into PHP code before being executed. This means that Excel formula calculation is subject to PHP's language characteristics. + +#### Operator precedence + +In Excel '+' wins over '&', just like '*' wins over '+' in ordinary algebra. The former rule is not what one finds using the calculation engine shipped with PHPExcel. + +Reference for operator precedence in Excel: [http://support.microsoft.com/kb/25189][18] + +Reference for operator precedence in PHP: [http://www.php.net/operators][19] + +#### Formulas involving numbers and text + +Formulas involving numbers and text may produce unexpected results or even unreadable file contents. For example, the formula '=3+"Hello "' is expected to produce an error in Excel (#VALUE!). Due to the fact that PHP converts “Hello” to a numeric value (zero), the result of this formula is evaluated as 3 instead of evaluating as an error. This also causes the Excel document being generated as containing unreadable content. + +Reference for this behaviour in PHP: [http://be.php.net/manual/en/language.types.string.php#language.types.string.conversion][20] + + [18]: http://support.microsoft.com/kb/25189 + [19]: http://www.php.net/operators + [20]: http://be.php.net/manual/en/language.types.string.php#language.types.string.conversion diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/10-Reading-and-Writing.md b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/10-Reading-and-Writing.md new file mode 100644 index 0000000..1468abc --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/10-Reading-and-Writing.md @@ -0,0 +1,714 @@ +# PHPExcel Developer Documentation + +## Reading and writing to file + +As you already know from part REF _Ref191885438 \w \h 3.3 REF _Ref191885438 \h Readers and writers, reading and writing to a persisted storage is not possible using the base PHPExcel classes. For this purpose, PHPExcel provides readers and writers, which are implementations of PHPExcel_Writer_IReader and PHPExcel_Writer_IWriter. + +### PHPExcel_IOFactory + +The PHPExcel API offers multiple methods to create a PHPExcel_Writer_IReader or PHPExcel_Writer_IWriter instance: + +Direct creation via PHPExcel_IOFactory. All examples underneath demonstrate the direct creation method. Note that you can also use the PHPExcel_IOFactory class to do this. + +#### Creating PHPExcel_Reader_IReader using PHPExcel_IOFactory + +There are 2 methods for reading in a file into PHPExcel: using automatic file type resolving or explicitly. + +Automatic file type resolving checks the different PHPExcel_Reader_IReader distributed with PHPExcel. If one of them can load the specified file name, the file is loaded using that PHPExcel_Reader_IReader. Explicit mode requires you to specify which PHPExcel_Reader_IReader should be used. + +You can create a PHPExcel_Reader_IReader instance using PHPExcel_IOFactory in automatic file type resolving mode using the following code sample: + +```php +$objPHPExcel = PHPExcel_IOFactory::load("05featuredemo.xlsx"); +``` + +A typical use of this feature is when you need to read files uploaded by your users, and you don’t know whether they are uploading xls or xlsx files. + +If you need to set some properties on the reader, (e.g. to only read data, see more about this later), then you may instead want to use this variant: + +```php +$objReader = PHPExcel_IOFactory::createReaderForFile("05featuredemo.xlsx"); +$objReader->setReadDataOnly(true); +$objReader->load("05featuredemo.xlsx"); +``` + +You can create a PHPExcel_Reader_IReader instance using PHPExcel_IOFactory in explicit mode using the following code sample: + +```php +$objReader = PHPExcel_IOFactory::createReader("Excel2007"); +$objPHPExcel = $objReader->load("05featuredemo.xlsx"); +``` + +Note that automatic type resolving mode is slightly slower than explicit mode. + +#### Creating PHPExcel_Writer_IWriter using PHPExcel_IOFactory + +You can create a PHPExcel_Writer_Iwriter instance using PHPExcel_IOFactory: + +```php +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, "Excel2007"); +$objWriter->save("05featuredemo.xlsx"); +``` + +### Excel 2007 (SpreadsheetML) file format + +Excel2007 file format is the main file format of PHPExcel. It allows outputting the in-memory spreadsheet to a .xlsx file. + +#### PHPExcel_Reader_Excel2007 + +##### Reading a spreadsheet + +You can read an .xlsx file using the following code: + +```php +$objReader = new PHPExcel_Reader_Excel2007(); +$objPHPExcel = $objReader->load("05featuredemo.xlsx"); +``` + +##### Read data only + +You can set the option setReadDataOnly on the reader, to instruct the reader to ignore styling, data validation, … and just read cell data: + +```php +$objReader = new PHPExcel_Reader_Excel2007(); +$objReader->setReadDataOnly(true); +$objPHPExcel = $objReader->load("05featuredemo.xlsx"); +``` + +##### Read specific sheets only + +You can set the option setLoadSheetsOnly on the reader, to instruct the reader to only load the sheets with a given name: + +```php +$objReader = new PHPExcel_Reader_Excel2007(); +$objReader->setLoadSheetsOnly( array("Sheet 1", "My special sheet") ); +$objPHPExcel = $objReader->load("05featuredemo.xlsx"); +``` + +##### Read specific cells only + +You can set the option setReadFilter on the reader, to instruct the reader to only load the cells which match a given rule. A read filter can be any class which implements PHPExcel_Reader_IReadFilter. By default, all cells are read using the PHPExcel_Reader_DefaultReadFilter. + +The following code will only read row 1 and rows 20 – 30 of any sheet in the Excel file: + +```php +class MyReadFilter implements PHPExcel_Reader_IReadFilter { + + public function readCell($column, $row, $worksheetName = '') { + // Read title row and rows 20 - 30 + if ($row == 1 || ($row >= 20 && $row <= 30)) { + return true; + } + return false; + } +} + +$objReader = new PHPExcel_Reader_Excel2007(); +$objReader->setReadFilter( new MyReadFilter() ); +$objPHPExcel = $objReader->load("06largescale.xlsx"); +``` + +#### PHPExcel_Writer_Excel2007 + +##### Writing a spreadsheet + +You can write an .xlsx file using the following code: + +```php +$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel); +$objWriter->save("05featuredemo.xlsx"); +``` + +##### Formula pre-calculation + +By default, this writer pre-calculates all formulas in the spreadsheet. This can be slow on large spreadsheets, and maybe even unwanted. You can however disable formula pre-calculation: + +```php +$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel); +$objWriter->setPreCalculateFormulas(false); +$objWriter->save("05featuredemo.xlsx"); +``` + +##### Office 2003 compatibility pack + +Because of a bug in the Office2003 compatibility pack, there can be some small issues when opening Excel2007 spreadsheets (mostly related to formula calculation). You can enable Office2003 compatibility with the following code: + +``` +$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel); +$objWriter->setOffice2003Compatibility(true); +$objWriter->save("05featuredemo.xlsx"); +``` + +__Office2003 compatibility should only be used when needed__ +Office2003 compatibility option should only be used when needed. This option disables several Office2007 file format options, resulting in a lower-featured Office2007 spreadsheet when this option is used. + +### Excel 5 (BIFF) file format + +Excel5 file format is the old Excel file format, implemented in PHPExcel to provide a uniform manner to create both .xlsx and .xls files. It is basically a modified version of [PEAR Spreadsheet_Excel_Writer][21], although it has been extended and has fewer limitations and more features than the old PEAR library. This can read all BIFF versions that use OLE2: BIFF5 (introduced with office 95) through BIFF8, but cannot read earlier versions. + +Excel5 file format will not be developed any further, it just provides an additional file format for PHPExcel. + +__Excel5 (BIFF) limitations__ +Please note that BIFF file format has some limits regarding to styling cells and handling large spreadsheets via PHP. + +#### PHPExcel_Reader_Excel5 + +##### Reading a spreadsheet + +You can read an .xls file using the following code: + +```php +$objReader = new PHPExcel_Reader_Excel5(); +$objPHPExcel = $objReader->load("05featuredemo.xls"); +``` + +##### Read data only + +You can set the option setReadDataOnly on the reader, to instruct the reader to ignore styling, data validation, … and just read cell data: + +```php +$objReader = new PHPExcel_Reader_Excel5(); +$objReader->setReadDataOnly(true); +$objPHPExcel = $objReader->load("05featuredemo.xls"); +``` + +##### Read specific sheets only + +You can set the option setLoadSheetsOnly on the reader, to instruct the reader to only load the sheets with a given name: + +```php +$objReader = new PHPExcel_Reader_Excel5(); +$objReader->setLoadSheetsOnly( array("Sheet 1", "My special sheet") ); +$objPHPExcel = $objReader->load("05featuredemo.xls"); +``` + +##### Read specific cells only + +You can set the option setReadFilter on the reader, to instruct the reader to only load the cells which match a given rule. A read filter can be any class which implements PHPExcel_Reader_IReadFilter. By default, all cells are read using the PHPExcel_Reader_DefaultReadFilter. + +The following code will only read row 1 and rows 20 to 30 of any sheet in the Excel file: + +```php +class MyReadFilter implements PHPExcel_Reader_IReadFilter { + + public function readCell($column, $row, $worksheetName = '') { + // Read title row and rows 20 - 30 + if ($row == 1 || ($row >= 20 && $row <= 30)) { + return true; + } + return false; + } +} + +$objReader = new PHPExcel_Reader_Excel5(); +$objReader->setReadFilter( new MyReadFilter() ); +$objPHPExcel = $objReader->load("06largescale.xls"); +``` + +#### PHPExcel_Writer_Excel5 + +##### Writing a spreadsheet + +You can write an .xls file using the following code: + +```php +$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel); +$objWriter->save("05featuredemo.xls"); +``` + +### Excel 2003 XML file format + +Excel 2003 XML file format is a file format which can be used in older versions of Microsoft Excel. + +__Excel 2003 XML limitations__ +Please note that Excel 2003 XML format has some limits regarding to styling cells and handling large spreadsheets via PHP. + +#### PHPExcel_Reader_Excel2003XML + +##### Reading a spreadsheet + +You can read an Excel 2003 .xml file using the following code: + +```php +$objReader = new PHPExcel_Reader_Excel2003XML(); +$objPHPExcel = $objReader->load("05featuredemo.xml"); +``` + +##### Read specific cells only + +You can set the option setReadFilter on the reader, to instruct the reader to only load the cells which match a given rule. A read filter can be any class which implements PHPExcel_Reader_IReadFilter. By default, all cells are read using the PHPExcel_Reader_DefaultReadFilter. + +The following code will only read row 1 and rows 20 to 30 of any sheet in the Excel file: + +```php +class MyReadFilter implements PHPExcel_Reader_IReadFilter { + + public function readCell($column, $row, $worksheetName = '') { + // Read title row and rows 20 - 30 + if ($row == 1 || ($row >= 20 && $row <= 30)) { + return true; + } + return false; + } + +} + +$objReader = new PHPExcel_Reader_Excel2003XML(); +$objReader->setReadFilter( new MyReadFilter() ); +$objPHPExcel = $objReader->load("06largescale.xml"); +``` + +### Symbolic LinK (SYLK) + +Symbolic Link (SYLK) is a Microsoft file format typically used to exchange data between applications, specifically spreadsheets. SYLK files conventionally have a .slk suffix. Composed of only displayable ANSI characters, it can be easily created and processed by other applications, such as databases. + +__SYLK limitations__ +Please note that SYLK file format has some limits regarding to styling cells and handling large spreadsheets via PHP. + +#### PHPExcel_Reader_SYLK + +##### Reading a spreadsheet + +You can read an .slk file using the following code: + +```php +$objReader = new PHPExcel_Reader_SYLK(); +$objPHPExcel = $objReader->load("05featuredemo.slk"); +``` + +##### Read specific cells only + +You can set the option setReadFilter on the reader, to instruct the reader to only load the cells which match a given rule. A read filter can be any class which implements PHPExcel_Reader_IReadFilter. By default, all cells are read using the PHPExcel_Reader_DefaultReadFilter. + +The following code will only read row 1 and rows 20 to 30 of any sheet in the SYLK file: + +```php +class MyReadFilter implements PHPExcel_Reader_IReadFilter { + + public function readCell($column, $row, $worksheetName = '') { + // Read title row and rows 20 - 30 + if ($row == 1 || ($row >= 20 && $row <= 30)) { + return true; + } + return false; + } + +} + +$objReader = new PHPExcel_Reader_SYLK(); +$objReader->setReadFilter( new MyReadFilter() ); +$objPHPExcel = $objReader->load("06largescale.slk"); +``` + +### Open/Libre Office (.ods) + +Open Office or Libre Office .ods files are the standard file format for Open Office or Libre Office Calc files. + +#### PHPExcel_Reader_OOCalc + +##### Reading a spreadsheet + +You can read an .ods file using the following code: + +```php +$objReader = new PHPExcel_Reader_OOCalc(); +$objPHPExcel = $objReader->load("05featuredemo.ods"); +``` + +##### Read specific cells only + +You can set the option setReadFilter on the reader, to instruct the reader to only load the cells which match a given rule. A read filter can be any class which implements PHPExcel_Reader_IReadFilter. By default, all cells are read using the PHPExcel_Reader_DefaultReadFilter. + +The following code will only read row 1 and rows 20 to 30 of any sheet in the Calc file: + +```php +class MyReadFilter implements PHPExcel_Reader_IReadFilter { + + public function readCell($column, $row, $worksheetName = '') { + // Read title row and rows 20 - 30 + if ($row == 1 || ($row >= 20 && $row <= 30)) { + return true; + } + return false; + } + +} + +$objReader = new PHPExcel_Reader_OOcalc(); +$objReader->setReadFilter( new MyReadFilter() ); +$objPHPExcel = $objReader->load("06largescale.ods"); +``` + +### CSV (Comma Separated Values) + +CSV (Comma Separated Values) are often used as an import/export file format with other systems. PHPExcel allows reading and writing to CSV files. + +__CSV limitations__ +Please note that CSV file format has some limits regarding to styling cells, number formatting, ... + +#### PHPExcel_Reader_CSV + +##### Reading a CSV file + +You can read a .csv file using the following code: + +```php +$objReader = new PHPExcel_Reader_CSV(); +$objPHPExcel = $objReader->load("sample.csv"); +``` + +##### Setting CSV options + +Often, CSV files are not really “comma separated”, or use semicolon (;) as a separator. You can instruct PHPExcel_Reader_CSV some options before reading a CSV file. + +Note that PHPExcel_Reader_CSV by default assumes that the loaded CSV file is UTF-8 encoded. If you are reading CSV files that were created in Microsoft Office Excel the correct input encoding may rather be Windows-1252 (CP1252). Always make sure that the input encoding is set appropriately. + +```php +$objReader = new PHPExcel_Reader_CSV(); +$objReader->setInputEncoding('CP1252'); +$objReader->setDelimiter(';'); +$objReader->setEnclosure(''); +$objReader->setLineEnding("\r\n"); +$objReader->setSheetIndex(0); + +$objPHPExcel = $objReader->load("sample.csv"); +``` + +##### Read a specific worksheet + +CSV files can only contain one worksheet. Therefore, you can specify which sheet to read from CSV: + +```php +$objReader->setSheetIndex(0); +``` + +##### Read into existing spreadsheet + +When working with CSV files, it might occur that you want to import CSV data into an existing PHPExcel object. The following code loads a CSV file into an existing $objPHPExcel containing some sheets, and imports onto the 6th sheet: + +```php +$objReader = new PHPExcel_Reader_CSV(); +$objReader->setDelimiter(';'); +$objReader->setEnclosure(''); +$objReader->setLineEnding("\r\n"); +$objReader->setSheetIndex(5); + +$objReader->loadIntoExisting("05featuredemo.csv", $objPHPExcel); +``` + +#### PHPExcel_Writer_CSV + +##### Writing a CSV file + +You can write a .csv file using the following code: + +```php +$objWriter = new PHPExcel_Writer_CSV($objPHPExcel); +$objWriter->save("05featuredemo.csv"); +``` + +##### Setting CSV options + +Often, CSV files are not really “comma separated”, or use semicolon (;) as a separator. You can instruct PHPExcel_Writer_CSV some options before writing a CSV file: + +```php +$objWriter = new PHPExcel_Writer_CSV($objPHPExcel); +$objWriter->setDelimiter(';'); +$objWriter->setEnclosure(''); +$objWriter->setLineEnding("\r\n"); +$objWriter->setSheetIndex(0); + +$objWriter->save("05featuredemo.csv"); +``` + +##### Write a specific worksheet + +CSV files can only contain one worksheet. Therefore, you can specify which sheet to write to CSV: + +```php +$objWriter->setSheetIndex(0); +``` + +##### Formula pre-calculation + +By default, this writer pre-calculates all formulas in the spreadsheet. This can be slow on large spreadsheets, and maybe even unwanted. You can however disable formula pre-calculation: + +```php +$objWriter = new PHPExcel_Writer_CSV($objPHPExcel); +$objWriter->setPreCalculateFormulas(false); +$objWriter->save("05featuredemo.csv"); +``` + +##### Writing UTF-8 CSV files + +A CSV file can be marked as UTF-8 by writing a BOM file header. This can be enabled by using the following code: + +```php +$objWriter = new PHPExcel_Writer_CSV($objPHPExcel); +$objWriter->setUseBOM(true); +$objWriter->save("05featuredemo.csv"); +``` + +##### Decimal and thousands separators + +If the worksheet you are exporting contains numbers with decimal or thousands separators then you should think about what characters you want to use for those before doing the export. + +By default PHPExcel looks up in the server's locale settings to decide what characters to use. But to avoid problems it is recommended to set the characters explicitly as shown below. + +English users will want to use this before doing the export: + +```php +PHPExcel_Shared_String::setDecimalSeparator('.'); +PHPExcel_Shared_String::setThousandsSeparator(','); +``` + +German users will want to use the opposite values. + +```php +PHPExcel_Shared_String::setDecimalSeparator(','); +PHPExcel_Shared_String::setThousandsSeparator('.'); +``` + +Note that the above code sets decimal and thousand separators as global options. This also affects how HTML and PDF is exported. + +### HTML + +PHPExcel allows you to read or write a spreadsheet as HTML format, for quick representation of the data in it to anyone who does not have a spreadsheet application on their PC, or loading files saved by other scripts that simply create HTML markup and give it a .xls file extension. + +__HTML limitations__ +Please note that HTML file format has some limits regarding to styling cells, number formatting, ... + +#### PHPExcel_Reader_HTML + +##### Reading a spreadsheet + +You can read an .html or .htm file using the following code: + +```php +$objReader = new PHPExcel_Reader_HTML(); + +$objPHPExcel = $objReader->load("05featuredemo.html"); +``` + +__HTML limitations__ +Please note that HTML reader is still experimental and does not yet support merged cells or nested tables cleanly + +#### PHPExcel_Writer_HTML + +Please note that PHPExcel_Writer_HTML only outputs the first worksheet by default. + +##### Writing a spreadsheet + +You can write a .htm file using the following code: + +```php +$objWriter = new PHPExcel_Writer_HTML($objPHPExcel); + +$objWriter->save("05featuredemo.htm"); +``` + +##### Write all worksheets + +HTML files can contain one or more worksheets. If you want to write all sheets into a single HTML file, use the following code: + +```php +$objWriter->writeAllSheets(); +``` + +##### Write a specific worksheet + +HTML files can contain one or more worksheets. Therefore, you can specify which sheet to write to HTML: + +```php +$objWriter->setSheetIndex(0); +``` + +##### Setting the images root of the HTML file + +There might be situations where you want to explicitly set the included images root. For example, one might want to see +```html +<img style="position: relative; left: 0px; top: 0px; width: 140px; height: 78px;" src="http://www.domain.com/*images/logo.jpg" border="0"> +``` + +instead of + +```html +<img style="position: relative; left: 0px; top: 0px; width: 140px; height: 78px;" src="./images/logo.jpg" border="0">. +``` + +You can use the following code to achieve this result: + +```php +$objWriter->setImagesRoot('http://www.example.com'); +``` + +##### Formula pre-calculation + +By default, this writer pre-calculates all formulas in the spreadsheet. This can be slow on large spreadsheets, and maybe even unwanted. You can however disable formula pre-calculation: + +```php +$objWriter = new PHPExcel_Writer_HTML($objPHPExcel); +$objWriter->setPreCalculateFormulas(false); + +$objWriter->save("05featuredemo.htm"); +``` + +##### Embedding generated HTML in a web page + +There might be a situation where you want to embed the generated HTML in an existing website. PHPExcel_Writer_HTML provides support to generate only specific parts of the HTML code, which allows you to use these parts in your website. + +Supported methods: + + - generateHTMLHeader() + - generateStyles() + - generateSheetData() + - generateHTMLFooter() + +Here's an example which retrieves all parts independently and merges them into a resulting HTML page: + +```php +<?php +$objWriter = new PHPExcel_Writer_HTML($objPHPExcel); +echo $objWriter->generateHTMLHeader(); +?> + +<style> +<!-- +html { + font-family: Times New Roman; + font-size: 9pt; + background-color: white; +} + +<?php +echo $objWriter->generateStyles(false); // do not write <style> and </style> +?> + +--> +</style> + +<?php +echo $objWriter->generateSheetData(); +echo $objWriter->generateHTMLFooter(); +?> +``` + +##### Writing UTF-8 HTML files + +A HTML file can be marked as UTF-8 by writing a BOM file header. This can be enabled by using the following code: + +```php +$objWriter = new PHPExcel_Writer_HTML($objPHPExcel); +$objWriter->setUseBOM(true); + +$objWriter->save("05featuredemo.htm"); +``` + +##### Decimal and thousands separators + +See section PHPExcel_Writer_CSV how to control the appearance of these. + +### PDF + +PHPExcel allows you to write a spreadsheet into PDF format, for fast distribution of represented data. + +__PDF limitations__ +Please note that PDF file format has some limits regarding to styling cells, number formatting, ... + +#### PHPExcel_Writer_PDF + +PHPExcel’s PDF Writer is a wrapper for a 3rd-Party PDF Rendering library such as tcPDF, mPDF or DomPDF. Prior to version 1.7.8 of PHPExcel, the tcPDF library was bundled with PHPExcel; but from version 1.7.8 this was removed. Instead, you must now install a PDF Rendering library yourself; but PHPExcel will work with a number of different libraries. + +Currently, the following libraries are supported: + +Library | Version used for testing | Downloadable from | PHPExcel Internal Constant +--------|--------------------------|----------------------------------|---------------------------- +tcPDF | 5.9 | http://www.tcpdf.org/ | PDF_RENDERER_TCPDF +mPDF | 5.4 | http://www.mpdf1.com/mpdf/ | PDF_RENDERER_MPDF +domPDF | 0.6.0 beta 3 | http://code.google.com/p/dompdf/ | PDF_RENDERER_DOMPDF + +The different libraries have different strengths and weaknesses. Some generate better formatted output than others, some are faster or use less memory than others, while some generate smaller .pdf files. It is the developers choice which one they wish to use, appropriate to their own circumstances. + +Before instantiating a Writer to generate PDF output, you will need to indicate which Rendering library you are using, and where it is located. + +```php +$rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF; +$rendererLibrary = 'mPDF5.4'; +$rendererLibraryPath = dirname(__FILE__).'/../../../libraries/PDF/' . $rendererLibrary; + +if (!PHPExcel_Settings::setPdfRenderer( + $rendererName, + $rendererLibraryPath + )) { + die( + 'Please set the $rendererName and $rendererLibraryPath values' . + PHP_EOL . + ' as appropriate for your directory structure' + ); +} +``` + +##### Writing a spreadsheet + +Once you have identified the Renderer that you wish to use for PDF generation, you can write a .pdf file using the following code: + +```php +$objWriter = new PHPExcel_Writer_PDF($objPHPExcel); +$objWriter->save("05featuredemo.pdf"); +``` + +Please note that PHPExcel_Writer_PDF only outputs the first worksheet by default. + +##### Write all worksheets + +PDF files can contain one or more worksheets. If you want to write all sheets into a single PDF file, use the following code: + +```php +$objWriter->writeAllSheets(); +``` + +##### Write a specific worksheet + +PDF files can contain one or more worksheets. Therefore, you can specify which sheet to write to PDF: + +```php +$objWriter->setSheetIndex(0); +``` + +##### Formula pre-calculation + +By default, this writer pre-calculates all formulas in the spreadsheet. This can be slow on large spreadsheets, and maybe even unwanted. You can however disable formula pre-calculation: + +```php +$objWriter = new PHPExcel_Writer_PDF($objPHPExcel); +$objWriter->setPreCalculateFormulas(false); + +$objWriter->save("05featuredemo.pdf"); +``` + +##### Decimal and thousands separators + +See section PHPExcel_Writer_CSV how to control the appearance of these. + +### Generating Excel files from templates (read, modify, write) + +Readers and writers are the tools that allow you to generate Excel files from templates. This requires less coding effort than generating the Excel file from scratch, especially if your template has many styles, page setup properties, headers etc. + +Here is an example how to open a template file, fill in a couple of fields and save it again: + +```php +$objPHPexcel = PHPExcel_IOFactory::load('template.xlsx'); + +$objWorksheet = $objPHPexcel->getActiveSheet(); + +$objWorksheet->getCell('A1')->setValue('John'); +$objWorksheet->getCell('A2')->setValue('Smith'); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPexcel, 'Excel5'); +$objWriter->save('write.xls'); +``` + +Notice that it is ok to load an xlsx file and generate an xls file. + + [21]: http://pear.php.net/package/Spreadsheet_Excel_Writer + [22]: http://www.codeplex.com/PHPExcel/Wiki/View.aspx?title=Credits&referringTitle=Home diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/11-Appendices.md b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/11-Appendices.md new file mode 100644 index 0000000..1302feb --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/11-Appendices.md @@ -0,0 +1,100 @@ +# PHPExcel Developer Documentation + +## Credits + +Please refer to the internet page [http://www.codeplex.com/PHPExcel/Wiki/View.aspx?title=Credits&referringTitle=Home][22] for up-to-date credits. + +## Valid array keys for style applyFromArray() + +The following table lists the valid array keys for PHPExcel_Style applyFromArray() classes. If the "Maps to property" column maps a key to a setter, the value provided for that key will be applied directly. If the "Maps to property" column maps a key to a getter, the value provided for that key will be applied as another style array. + +__PHPExcel_Style__ + + Array key | Maps to property + -------------|------------------- + fill | getFill() + font | getFont() + borders | getBorders() + alignment | getAlignment() + numberformat | getNumberFormat() + protection | getProtection() + + +__PHPExcel_Style_Fill__ + + Array key | Maps to property + -----------|------------------- + type | setFillType() + rotation | setRotation() + startcolor | getStartColor() + endcolor | getEndColor() + color | getStartColor() + + +__PHPExcel_Style_Font__ + + Array key | Maps to property + ------------|------------------- + name | setName() + bold | setBold() + italic | setItalic() + underline | setUnderline() + strike | setStrikethrough() + color | getColor() + size | setSize() + superScript | setSuperScript() + subScript | setSubScript() + + +__PHPExcel_Style_Borders__ + + Array key | Maps to property + ------------------|------------------- + allborders | getLeft(); getRight(); getTop(); getBottom() + left | getLeft() + right | getRight() + top | getTop() + bottom | getBottom() + diagonal | getDiagonal() + vertical | getVertical() + horizontal | getHorizontal() + diagonaldirection | setDiagonalDirection() + outline | setOutline() + + +__PHPExcel_Style_Border__ + + Array key | Maps to property + ----------|------------------- + style | setBorderStyle() + color | getColor() + + +__PHPExcel_Style_Alignment__ + + Array key | Maps to property + ------------|------------------- + horizontal | setHorizontal() + vertical | setVertical() + rotation | setTextRotation() + wrap | setWrapText() + shrinkToFit | setShrinkToFit() + indent | setIndent() + + +__PHPExcel_Style_NumberFormat__ + + Array key | Maps to property + ----------|------------------- + code | setFormatCode() + + +__PHPExcel_Style_Protection__ + + Array key | Maps to property + ----------|------------------- + locked | setLocked() + hidden | setHidden() + + + [22]: http://www.codeplex.com/PHPExcel/Wiki/View.aspx?title=Credits&referringTitle=Home diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/_notes/dwsync.xml new file mode 100644 index 0000000..b47d98f --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/_notes/dwsync.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="01-Getting-Started.md" server="62.244.88.21/deciday/" local="131919462022172133" remote="131880384600000000" Dst="1" /> +<file name="03-Creating-a-Spreadsheet.md" server="62.244.88.21/deciday/" local="131919462023576513" remote="131880384600000000" Dst="1" /> +<file name="02-Architecture.md" server="62.244.88.21/deciday/" local="131919462023759020" remote="131880384600000000" Dst="1" /> +<file name="04-Configuration-Settings.md" server="62.244.88.21/deciday/" local="131919462024114767" remote="131880384600000000" Dst="1" /> +<file name="05-Deleting-a-Workbook.md" server="62.244.88.21/deciday/" local="131919462024652482" remote="131880384600000000" Dst="1" /> +<file name="06-Worksheets.md" server="62.244.88.21/deciday/" local="131919462025025314" remote="131880384600000000" Dst="1" /> +<file name="07-Accessing-Cells.md" server="62.244.88.21/deciday/" local="131919462025801877" remote="131880384600000000" Dst="1" /> +<file name="09-Calculation-Engine.md" server="62.244.88.21/deciday/" local="131919462026476802" remote="131880384600000000" Dst="1" /> +<file name="08-Recipes.md" server="62.244.88.21/deciday/" local="131919462027560615" remote="131880384600000000" Dst="1" /> +<file name="11-Appendices.md" server="62.244.88.21/deciday/" local="131919462028557364" remote="131880384600000000" Dst="1" /> +<file name="10-Reading-and-Writing.md" server="62.244.88.21/deciday/" local="131919462029033423" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/01-schematic.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/01-schematic.png new file mode 100644 index 0000000..8b67792 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/01-schematic.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/02-readers-writers.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/02-readers-writers.png new file mode 100644 index 0000000..0600788 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/02-readers-writers.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-1.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-1.png new file mode 100644 index 0000000..30d1936 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-1.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-2.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-2.png new file mode 100644 index 0000000..e2b6850 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-2.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-3.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-3.png new file mode 100644 index 0000000..459261f Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-3.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-4.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-4.png new file mode 100644 index 0000000..7072545 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/07-simple-example-4.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-cell-comment.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-cell-comment.png new file mode 100644 index 0000000..bd8f8e6 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-cell-comment.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-column-width.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-column-width.png new file mode 100644 index 0000000..1419943 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-column-width.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-page-setup-margins.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-page-setup-margins.png new file mode 100644 index 0000000..36e07a9 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-page-setup-margins.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-page-setup-scaling-options.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-page-setup-scaling-options.png new file mode 100644 index 0000000..80fb5f0 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-page-setup-scaling-options.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-styling-border-options.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-styling-border-options.png new file mode 100644 index 0000000..4ef5970 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/08-styling-border-options.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/09-command-line-calculation.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/09-command-line-calculation.png new file mode 100644 index 0000000..ceb2b30 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/09-command-line-calculation.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/09-formula-in-cell-1.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/09-formula-in-cell-1.png new file mode 100644 index 0000000..e50c6cc Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/09-formula-in-cell-1.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/09-formula-in-cell-2.png b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/09-formula-in-cell-2.png new file mode 100644 index 0000000..46daf09 Binary files /dev/null and b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/09-formula-in-cell-2.png differ diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/_notes/dwsync.xml new file mode 100644 index 0000000..b7e4c90 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/Overview/images/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="01-schematic.png" server="62.244.88.21/deciday/" local="131919462029387331" remote="131880384600000000" Dst="1" /> +<file name="02-readers-writers.png" server="62.244.88.21/deciday/" local="131919462030603172" remote="131880384600000000" Dst="1" /> +<file name="07-simple-example-2.png" server="62.244.88.21/deciday/" local="131919462030809666" remote="131880384600000000" Dst="1" /> +<file name="07-simple-example-3.png" server="62.244.88.21/deciday/" local="131919462031811842" remote="131880384600000000" Dst="1" /> +<file name="07-simple-example-4.png" server="62.244.88.21/deciday/" local="131919462032025829" remote="131880384600000000" Dst="1" /> +<file name="07-simple-example-1.png" server="62.244.88.21/deciday/" local="131919462032519137" remote="131880384600000000" Dst="1" /> +<file name="08-cell-comment.png" server="62.244.88.21/deciday/" local="131919462033347955" remote="131880384600000000" Dst="1" /> +<file name="08-column-width.png" server="62.244.88.21/deciday/" local="131919462033530576" remote="131880384600000000" Dst="1" /> +<file name="08-page-setup-margins.png" server="62.244.88.21/deciday/" local="131919462035400775" remote="131880384600000000" Dst="1" /> +<file name="08-styling-border-options.png" server="62.244.88.21/deciday/" local="131919462037320905" remote="131880384600000000" Dst="1" /> +<file name="09-command-line-calculation.png" server="62.244.88.21/deciday/" local="131919462037502469" remote="131880384600000000" Dst="1" /> +<file name="08-page-setup-scaling-options.png" server="62.244.88.21/deciday/" local="131919462037680568" remote="131880384600000000" Dst="1" /> +<file name="09-formula-in-cell-1.png" server="62.244.88.21/deciday/" local="131919462038950053" remote="131880384600000000" Dst="1" /> +<file name="09-formula-in-cell-2.png" server="62.244.88.21/deciday/" local="131919462039194909" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/01-File-Formats.md b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/01-File-Formats.md new file mode 100644 index 0000000..d891664 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/01-File-Formats.md @@ -0,0 +1,60 @@ +# PHPExcel User Documentation – Reading Spreadsheet Files + + +## Spreadsheet File Formats + +PHPExcel can read a number of different spreadsheet and file formats, although not all features are supported by all of the readers. Check the Functionality Cross-Reference document (Functionality Cross-Reference.xls) for a list that identifies which features are supported by which readers. + +Currently, PHPExcel supports the following File Types for Reading: + +### Excel5 + +The Microsoft Excel™ Binary file format (BIFF5 and BIFF8) is a binary file format that was used by Microsoft Excel™ between versions 95 and 2003. The format is supported (to various extents) by most spreadsheet programs. BIFF files normally have an extension of .xls. Documentation describing the format can be found online at [http://msdn.microsoft.com/en-us/library/cc313154(v=office.12).aspx][1] or from [http://download.microsoft.com/download/2/4/8/24862317-78F0-4C4B-B355-C7B2C1D997DB/[MS-XLS].pdf][2] (as a downloadable PDF). + +### Excel2003XML + +Microsoft Excel™ 2003 included options for a file format called SpreadsheetML. This file is a zipped XML document. It is not very common, but its core features are supported. Documentation for the format can be found at [http://msdn.microsoft.com/en-us/library/aa140066%28office.10%29.aspx][3] though it’s sadly rather sparse in its detail. + +### Excel2007 + +Microsoft Excel™ 2007 shipped with a new file format, namely Microsoft Office Open XML SpreadsheetML, and Excel 2010 extended this still further with its new features such as sparklines. These files typically have an extension of .xlsx. This format is based around a zipped collection of eXtensible Markup Language (XML) files. Microsoft Office Open XML SpreadsheetML is mostly standardized in ECMA 376 ([http://www.ecma-international.org/news/TC45_current_work/TC45_available_docs.htm][4]) and ISO 29500. + +### OOCalc + +aka Open Document Format (ODF) or OASIS, this is the OpenOffice.org XML File Format for spreadsheets. It comprises a zip archive including several components all of which are text files, most of these with markup in the eXtensible Markup Language (XML). It is the standard file format for OpenOffice.org Calc and StarCalc, and files typically have an extension of .ods. The published specification for the file format is available from the OASIS Open Office XML Format Technical Committee web page ([http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office#technical][5]). Other information is available from the OpenOffice.org XML File Format web page ([http://xml.openoffice.org/general.html][6]), part of the OpenOffice.org project. + +### SYLK + +This is the Microsoft Multiplan Symbolic Link Interchange (SYLK) file format. Multiplan was a predecessor to Microsoft Excel™. Files normally have an extension of .slk. While not common, there are still a few applications that generate SYLK files as a cross-platform option, because (despite being limited to a single worksheet) it is a simple format to implement, and supports some basic data and cell formatting options (unlike CSV files). + +### Gnumeric + +The Gnumeric file format is used by the Gnome Gnumeric spreadsheet application, and typically files have an extension of .gnumeric. The file contents are stored using eXtensible Markup Language (XML) markup, and the file is then compressed using the GNU project's gzip compression library. [http://projects.gnome.org/gnumeric/doc/file-format-gnumeric.shtml][7] + +### CSV + +Comma Separated Value (CSV) file format is a common structuring strategy for text format files. In CSV flies, each line in the file represents a row of data and (within each line of the file) the different data fields (or columns) are separated from one another using a comma (","). If a data field contains a comma, then it should be enclosed (typically in quotation marks ("). Sometimes tabs "\t", or the pipe symbol ("|"), or a semi-colon (";") are used as separators instead of a comma, although other symbols can be used. Because CSV is a text-only format, it doesn't support any data formatting options. + +"CSV" is not a single, well-defined format (although see RFC 4180 for one definition that is commonly used). Rather, in practice the term "CSV" refers to any file that: + - is plain text using a character set such as ASCII, Unicode, EBCDIC, or Shift JIS, + - consists of records (typically one record per line), + - with the records divided into fields separated by delimiters (typically a single reserved character such as comma, semicolon, or tab, + - where every record has the same sequence of fields. + +Within these general constraints, many variations are in use. Therefore "CSV" files are not entirely portable. Nevertheless, the variations are fairly small, and many implementations allow users to glance at the file (which is feasible because it is plain text), and then specify the delimiter character(s), quoting rules, etc. + +**Warning:** Microsoft Excel™ will open .csv files, but depending on the system's regional settings, it may expect a semicolon as a separator instead of a comma, since in some languages the comma is used as the decimal separator. Also, many regional versions of Excel will not be able to deal with Unicode characters in a CSV file. + +### HTML + +HyperText Markup Language (HTML) is the main markup language for creating web pages and other information that can be displayed in a web browser. Files typically have an extension of .html or .htm. HTML markup provides a means to create structured documents by denoting structural semantics for text such as headings, paragraphs, lists, links, quotes and other items. Since 1996, the HTML specifications have been maintained, with input from commercial software vendors, by the World Wide Web Consortium (W3C). However, in 2000, HTML also became an international standard (ISO/IEC 15445:2000). HTML 4.01 was published in late 1999, with further errata published through 2001. In 2004 development began on HTML5 in the Web Hypertext Application Technology Working Group (WHATWG), which became a joint deliverable with the W3C in 2008. + + + + [1]: http://msdn.microsoft.com/en-us/library/cc313154(v=office.12).aspx + [2]: http://download.microsoft.com/download/2/4/8/24862317-78F0-4C4B-B355-C7B2C1D997DB/%5bMS-XLS%5d.pdf + [3]: http://msdn.microsoft.com/en-us/library/aa140066%28office.10%29.aspx + [4]: http://www.ecma-international.org/news/TC45_current_work/TC45_available_docs.htm + [5]: http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office + [6]: http://xml.openoffice.org/general.html + [7]: http://projects.gnome.org/gnumeric/doc/file-format-gnumeric.shtml diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/02-Security.md b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/02-Security.md new file mode 100644 index 0000000..12da958 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/02-Security.md @@ -0,0 +1,13 @@ +# PHPExcel User Documentation – Reading Spreadsheet Files + + +## Security + +XML-based formats such as OfficeOpen XML, Excel2003 XML, OASIS and Gnumeric are susceptible to XML External Entity Processing (XXE) injection attacks (for an explanation of XXE injection see http://websec.io/2012/08/27/Preventing-XEE-in-PHP.html) when reading spreadsheet files. This can lead to: + + - Disclosure whether a file is existent + - Server Side Request Forgery + - Command Execution (depending on the installed PHP wrappers) + + +To prevent this, PHPExcel sets `libxml_disable_entity_loader` to `true` for the XML-based Readers by default. \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/03-Loading-a-Spreadsheet.md b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/03-Loading-a-Spreadsheet.md new file mode 100644 index 0000000..afa674d --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/03-Loading-a-Spreadsheet.md @@ -0,0 +1,21 @@ +# PHPExcel User Documentation – Reading Spreadsheet Files + + +## Loading a Spreadsheet File + +The simplest way to load a workbook file is to let PHPExcel's IO Factory identify the file type and load it, calling the static load() method of the PHPExcel_IOFactory class. + +```php +$inputFileName = './sampleData/example1.xls'; + +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = PHPExcel_IOFactory::load($inputFileName); +``` + > See Examples/Reader/exampleReader01.php for a working example of this code. + +The load() method will attempt to identify the file type, and instantiate a loader for that file type; using it to load the file and store the data and any formatting in a PHPExcel object. + +The method makes an initial guess at the loader to instantiate based on the file extension; but will test the file before actually executing the load: so if (for example) the file is actually a CSV file or contains HTML markup, but that has been given a .xls extension (quite a common practise), it will reject the Excel5 loader that it would normally use for a .xls file; and test the file using the other loaders until it finds the appropriate loader, and then use that to read the file. + +While easy to implement in your code, and you don't need to worry about the file type; this isn't the most efficient method to load a file; and it lacks the flexibility to configure the loader in any way before actually reading the file into a PHPExcel object. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/04-Loading-with-a-Reader.md b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/04-Loading-with-a-Reader.md new file mode 100644 index 0000000..94d07aa --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/04-Loading-with-a-Reader.md @@ -0,0 +1,56 @@ +# PHPExcel User Documentation – Reading Spreadsheet Files + + +## Creating a Reader and Loading a Spreadsheet File + +If you know the file type of the spreadsheet file that you need to load, you can instantiate a new reader object for that file type, then use the reader's load() method to read the file to a PHPExcel object. It is possible to instantiate the reader objects for each of the different supported filetype by name. However, you may get unpredictable results if the file isn't of the right type (e.g. it is a CSV with an extension of .xls), although this type of exception should normally be trapped. + +```php +$inputFileName = './sampleData/example1.xls'; + +/** Create a new Excel5 Reader **/ +$objReader = new PHPExcel_Reader_Excel5(); +// $objReader = new PHPExcel_Reader_Excel2007(); +// $objReader = new PHPExcel_Reader_Excel2003XML(); +// $objReader = new PHPExcel_Reader_OOCalc(); +// $objReader = new PHPExcel_Reader_SYLK(); +// $objReader = new PHPExcel_Reader_Gnumeric(); +// $objReader = new PHPExcel_Reader_CSV(); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); +``` + > See Examples/Reader/exampleReader02.php for a working example of this code. + +Alternatively, you can use the IO Factory's createReader() method to instantiate the reader object for you, simply telling it the file type of the reader that you want instantiating. + +```php +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'SYLK'; +// $inputFileType = 'Gnumeric'; +// $inputFileType = 'CSV'; +$inputFileName = './sampleData/example1.xls'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); +``` + > See Examples/Reader/exampleReader03.php for a working example of this code. + +If you're uncertain of the filetype, you can use the IO Factory's identify() method to identify the reader that you need, before using the createReader() method to instantiate the reader object. + +```php +$inputFileName = './sampleData/example1.xls'; + +/** Identify the type of $inputFileName **/ +$inputFileType = PHPExcel_IOFactory::identify($inputFileName); +/** Create a new Reader of the type that has been identified **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); +``` + > See Examples/Reader/exampleReader04.php for a working example of this code. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/05-Reader-Options.md b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/05-Reader-Options.md new file mode 100644 index 0000000..137fd1e --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/05-Reader-Options.md @@ -0,0 +1,392 @@ +# PHPExcel User Documentation – Reading Spreadsheet Files + +## Spreadsheet Reader Options + +Once you have created a reader object for the workbook that you want to load, you have the opportunity to set additional options before executing the load() method. + +### Reading Only Data from a Spreadsheet File + +If you're only interested in the cell values in a workbook, but don't need any of the cell formatting information, then you can set the reader to read only the data values and any formulae from each cell using the setReadDataOnly() method. + +```php +$inputFileType = 'Excel5'; +$inputFileName = './sampleData/example1.xls'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Advise the Reader that we only want to load cell data **/ +$objReader->setReadDataOnly(true); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); +``` + > See Examples/Reader/exampleReader05.php for a working example of this code. + +It is important to note that Workbooks (and PHPExcel) store dates and times as simple numeric values: they can only be distinguished from other numeric values by the format mask that is applied to that cell. When setting read data only to true, PHPExcel doesn't read the cell format masks, so it is not possible to differentiate between dates/times and numbers. + +The Gnumeric loader has been written to read the format masks for date values even when read data only has been set to true, so it can differentiate between dates/times and numbers; but this change hasn't yet been implemented for the other readers. + +Reading Only Data from a Spreadsheet File applies to Readers: + +Reader | Y/N |Reader | Y/N |Reader | Y/N | +----------|:---:|--------|:---:|--------------|:---:| +Excel2007 | YES | Excel5 | YES | Excel2003XML | YES | +OOCalc | YES | SYLK | NO | Gnumeric | YES | +CSV | NO | HTML | NO + +### Reading Only Named WorkSheets from a File + +If your workbook contains a number of worksheets, but you are only interested in reading some of those, then you can use the setLoadSheetsOnly() method to identify those sheets you are interested in reading. + +To read a single sheet, you can pass that sheet name as a parameter to the setLoadSheetsOnly() method. + +```php +$inputFileType = 'Excel5'; +$inputFileName = './sampleData/example1.xls'; +$sheetname = 'Data Sheet #2'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Advise the Reader of which WorkSheets we want to load **/ +$objReader->setLoadSheetsOnly($sheetname); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); +``` + > See Examples/Reader/exampleReader07.php for a working example of this code. + +If you want to read more than just a single sheet, you can pass a list of sheet names as an array parameter to the setLoadSheetsOnly() method. + +```php +$inputFileType = 'Excel5'; +$inputFileName = './sampleData/example1.xls'; +$sheetnames = array('Data Sheet #1','Data Sheet #3'); + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Advise the Reader of which WorkSheets we want to load **/ +$objReader->setLoadSheetsOnly($sheetnames); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); +``` + > See Examples/Reader/exampleReader08.php for a working example of this code. + +To reset this option to the default, you can call the setLoadAllSheets() method. + +```php +$inputFileType = 'Excel5'; +$inputFileName = './sampleData/example1.xls'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Advise the Reader to load all Worksheets **/ +$objReader->setLoadAllSheets(); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); +``` + > See Examples/Reader/exampleReader06.php for a working example of this code. + +Reading Only Named WorkSheets from a File applies to Readers: + +Reader | Y/N |Reader | Y/N |Reader | Y/N | +----------|:---:|--------|:---:|--------------|:---:| +Excel2007 | YES | Excel5 | YES | Excel2003XML | YES | +OOCalc | YES | SYLK | NO | Gnumeric | YES | +CSV | NO | HTML | NO + +### Reading Only Specific Columns and Rows from a File (Read Filters) + +If you are only interested in reading part of a worksheet, then you can write a filter class that identifies whether or not individual cells should be read by the loader. A read filter must implement the PHPExcel_Reader_IReadFilter interface, and contain a readCell() method that accepts arguments of $column, $row and $worksheetName, and return a boolean true or false that indicates whether a workbook cell identified by those arguments should be read or not. + +```php +$inputFileType = 'Excel5'; +$inputFileName = './sampleData/example1.xls'; +$sheetname = 'Data Sheet #3'; + + +/** Define a Read Filter class implementing PHPExcel_Reader_IReadFilter */ +class MyReadFilter implements PHPExcel_Reader_IReadFilter +{ + public function readCell($column, $row, $worksheetName = '') { + // Read rows 1 to 7 and columns A to E only + if ($row >= 1 && $row <= 7) { + if (in_array($column,range('A','E'))) { + return true; + } + } + return false; + } +} + +/** Create an Instance of our Read Filter **/ +$filterSubset = new MyReadFilter(); + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Tell the Reader that we want to use the Read Filter **/ +$objReader->setReadFilter($filterSubset); +/** Load only the rows and columns that match our filter to PHPExcel **/ +$objPHPExcel = $objReader->load($inputFileName); +``` + > See Examples/Reader/exampleReader09.php for a working example of this code. + +This example is not particularly useful, because it can only be used in a very specific circumstance (when you only want cells in the range A1:E7 from your worksheet. A generic Read Filter would probably be more useful: + +```php +/** Define a Read Filter class implementing PHPExcel_Reader_IReadFilter */ +class MyReadFilter implements PHPExcel_Reader_IReadFilter +{ + private $_startRow = 0; + private $_endRow = 0; + private $_columns = array(); + + /** Get the list of rows and columns to read */ + public function __construct($startRow, $endRow, $columns) { + $this->_startRow = $startRow; + $this->_endRow = $endRow; + $this->_columns = $columns; + } + + public function readCell($column, $row, $worksheetName = '') { + // Only read the rows and columns that were configured + if ($row >= $this->_startRow && $row <= $this->_endRow) { + if (in_array($column,$this->_columns)) { + return true; + } + } + return false; + } +} + +/** Create an Instance of our Read Filter, passing in the cell range **/ +$filterSubset = new MyReadFilter(9,15,range('G','K')); +``` + > See Examples/Reader/exampleReader10.php for a working example of this code. + +This can be particularly useful for conserving memory, by allowing you to read and process a large workbook in “chunks”: an example of this usage might be when transferring data from an Excel worksheet to a database. + +```php +$inputFileType = 'Excel5'; +$inputFileName = './sampleData/example2.xls'; + + +/** Define a Read Filter class implementing PHPExcel_Reader_IReadFilter */ +class chunkReadFilter implements PHPExcel_Reader_IReadFilter +{ + private $_startRow = 0; + private $_endRow = 0; + + /** Set the list of rows that we want to read */ + public function setRows($startRow, $chunkSize) { + $this->_startRow = $startRow; + $this->_endRow = $startRow + $chunkSize; + } + + public function readCell($column, $row, $worksheetName = '') { + // Only read the heading row, and the configured rows + if (($row == 1) || ($row >= $this->_startRow && $row < $this->_endRow)) { + return true; + } + return false; + } +} + + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + + +/** Define how many rows we want to read for each "chunk" **/ +$chunkSize = 2048; +/** Create a new Instance of our Read Filter **/ +$chunkFilter = new chunkReadFilter(); + +/** Tell the Reader that we want to use the Read Filter **/ +$objReader->setReadFilter($chunkFilter); + +/** Loop to read our worksheet in "chunk size" blocks **/ +for ($startRow = 2; $startRow <= 65536; $startRow += $chunkSize) { + /** Tell the Read Filter which rows we want this iteration **/ + $chunkFilter->setRows($startRow,$chunkSize); + /** Load only the rows that match our filter **/ + $objPHPExcel = $objReader->load($inputFileName); + // Do some processing here +} +``` + > See Examples/Reader/exampleReader12.php for a working example of this code. + +Using Read Filters applies to: + +Reader | Y/N |Reader | Y/N |Reader | Y/N | +----------|:---:|--------|:---:|--------------|:---:| +Excel2007 | YES | Excel5 | YES | Excel2003XML | YES | +OOCalc | YES | SYLK | NO | Gnumeric | YES | +CSV | YES | HTML | NO + +### Combining Multiple Files into a Single PHPExcel Object + +While you can limit the number of worksheets that are read from a workbook file using the setLoadSheetsOnly() method, certain readers also allow you to combine several individual "sheets" from different files into a single PHPExcel object, where each individual file is a single worksheet within that workbook. For each file that you read, you need to indicate which worksheet index it should be loaded into using the setSheetIndex() method of the $objReader, then use the loadIntoExisting() method rather than the load() method to actually read the file into that worksheet. + +```php +$inputFileType = 'CSV'; +$inputFileNames = array('./sampleData/example1.csv', + './sampleData/example2.csv' + './sampleData/example3.csv' +); + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + + +/** Extract the first named file from the array list **/ +$inputFileName = array_shift($inputFileNames); +/** Load the initial file to the first worksheet in a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); +/** Set the worksheet title (to the filename that we've loaded) **/ +$objPHPExcel->getActiveSheet() + ->setTitle(pathinfo($inputFileName,PATHINFO_BASENAME)); + + +/** Loop through all the remaining files in the list **/ +foreach($inputFileNames as $sheet => $inputFileName) { + /** Increment the worksheet index pointer for the Reader **/ + $objReader->setSheetIndex($sheet+1); + /** Load the current file into a new worksheet in PHPExcel **/ + $objReader->loadIntoExisting($inputFileName,$objPHPExcel); + /** Set the worksheet title (to the filename that we've loaded) **/ + $objPHPExcel->getActiveSheet() + ->setTitle(pathinfo($inputFileName,PATHINFO_BASENAME)); +} +``` + > See Examples/Reader/exampleReader13.php for a working example of this code. + +Note that using the same sheet index for multiple sheets won't append files into the same sheet, but overwrite the results of the previous load. You cannot load multiple CSV files into the same worksheet. + +Combining Multiple Files into a Single PHPExcel Object applies to: + +Reader | Y/N |Reader | Y/N |Reader | Y/N | +----------|:---:|--------|:---:|--------------|:---:| +Excel2007 | NO | Excel5 | NO | Excel2003XML | NO | +OOCalc | NO | SYLK | YES | Gnumeric | NO | +CSV | YES | HTML | NO + +### Combining Read Filters with the setSheetIndex() method to split a large CSV file across multiple Worksheets + +An Excel5 BIFF .xls file is limited to 65536 rows in a worksheet, while the Excel2007 Microsoft Office Open XML SpreadsheetML .xlsx file is limited to 1,048,576 rows in a worksheet; but a CSV file is not limited other than by available disk space. This means that we wouldn’t ordinarily be able to read all the rows from a very large CSV file that exceeded those limits, and save it as an Excel5 or Excel2007 file. However, by using Read Filters to read the CSV file in “chunks” (using the chunkReadFilter Class that we defined in section REF _Ref275604563 \r \p 5.3 above), and the setSheetIndex() method of the $objReader, we can split the CSV file across several individual worksheets. + +```php +$inputFileType = 'CSV'; +$inputFileName = './sampleData/example2.csv'; + + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + + +/** Define how many rows we want to read for each "chunk" **/ +$chunkSize = 65530; +/** Create a new Instance of our Read Filter **/ +$chunkFilter = new chunkReadFilter(); + +/** Tell the Reader that we want to use the Read Filter **/ +/** and that we want to store it in contiguous rows/columns **/ + +$objReader->setReadFilter($chunkFilter) + ->setContiguous(true); + +/** Instantiate a new PHPExcel object manually **/ +$objPHPExcel = new PHPExcel(); + +/** Set a sheet index **/ +$sheet = 0; +/** Loop to read our worksheet in "chunk size" blocks **/ +/** $startRow is set to 2 initially because we always read the headings in row #1 **/ +for ($startRow = 2; $startRow <= 1000000; $startRow += $chunkSize) { + /** Tell the Read Filter which rows we want to read this loop **/ + $chunkFilter->setRows($startRow,$chunkSize); + + /** Increment the worksheet index pointer for the Reader **/ + $objReader->setSheetIndex($sheet); + /** Load only the rows that match our filter into a new worksheet **/ + $objReader->loadIntoExisting($inputFileName,$objPHPExcel); + /** Set the worksheet title for the sheet that we've justloaded) **/ + /** and increment the sheet index as well **/ + $objPHPExcel->getActiveSheet()->setTitle('Country Data #'.(++$sheet)); +} +``` + > See Examples/Reader/exampleReader14.php for a working example of this code. + +This code will read 65,530 rows at a time from the CSV file that we’re loading, and store each "chunk" in a new worksheet. + +The setContiguous() method for the Reader is important here. It is applicable only when working with a Read Filter, and identifies whether or not the cells should be stored by their position within the CSV file, or their position relative to the filter. + +For example, if the filter returned true for cells in the range B2:C3, then with setContiguous set to false (the default) these would be loaded as B2:C3 in the PHPExcel object; but with setContiguous set to true, they would be loaded as A1:B2. + +Splitting a single loaded file across multiple worksheets applies to: + +Reader | Y/N |Reader | Y/N |Reader | Y/N | +----------|:---:|--------|:---:|--------------|:---:| +Excel2007 | NO | Excel5 | NO | Excel2003XML | NO | +OOCalc | NO | SYLK | NO | Gnumeric | NO | +CSV | YES | HTML | NO + +### Pipe or Tab Separated Value Files + +The CSV loader defaults to loading a file where comma is used as the separator, but you can modify this to load tab- or pipe-separated value files using the setDelimiter() method. + +```php +$inputFileType = 'CSV'; +$inputFileName = './sampleData/example1.tsv'; + +/** Create a new Reader of the type defined in $inputFileType **/ $objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Set the delimiter to a TAB character **/ +$objReader->setDelimiter("\t"); +// $objReader->setDelimiter('|'); + +/** Load the file to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); +``` + > See Examples/Reader/exampleReader15.php for a working example of this code. + +In addition to the delimiter, you can also use the following methods to set other attributes for the data load: + +setEnclosure() | default is " +setLineEnding() | default is PHP_EOL +setInputEncoding() | default is UTF-8 + +Setting CSV delimiter applies to: + +Reader | Y/N |Reader | Y/N |Reader | Y/N | +----------|:---:|--------|:---:|--------------|:---:| +Excel2007 | NO | Excel5 | NO | Excel2003XML | NO | +OOCalc | NO | SYLK | NO | Gnumeric | NO | +CSV | YES | HTML | NO + +### A Brief Word about the Advanced Value Binder + +When loading data from a file that contains no formatting information, such as a CSV file, then data is read either as strings or numbers (float or integer). This means that PHPExcel does not automatically recognise dates/times (such as "16-Apr-2009" or "13:30"), booleans ("TRUE" or "FALSE"), percentages ("75%"), hyperlinks ("http://www.phpexcel.net"), etc as anything other than simple strings. However, you can apply additional processing that is executed against these values during the load process within a Value Binder. + +A Value Binder is a class that implement the PHPExcel_Cell_IValueBinder interface. It must contain a bindValue() method that accepts a PHPExcel_Cell and a value as arguments, and return a boolean true or false that indicates whether the workbook cell has been populated with the value or not. The Advanced Value Binder implements such a class: amongst other tests, it identifies a string comprising "TRUE" or "FALSE" (based on locale settings) and sets it to a boolean; or a number in scientific format (e.g. "1.234e-5") and converts it to a float; or dates and times, converting them to their Excel timestamp value – before storing the value in the cell object. It also sets formatting for strings that are identified as dates, times or percentages. It could easily be extended to provide additional handling (including text or cell formatting) when it encountered a hyperlink, or HTML markup within a CSV file. + +So using a Value Binder allows a great deal more flexibility in the loader logic when reading unformatted text files. + +```php +/** Tell PHPExcel that we want to use the Advanced Value Binder **/ +PHPExcel_Cell::setValueBinder( new PHPExcel_Cell_AdvancedValueBinder() ); + +$inputFileType = 'CSV'; +$inputFileName = './sampleData/example1.tsv'; + +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +$objReader->setDelimiter("\t"); +$objPHPExcel = $objReader->load($inputFileName); +``` + > See Examples/Reader/exampleReader15.php for a working example of this code. + +Loading using a Value Binder applies to: + +Reader | Y/N |Reader | Y/N |Reader | Y/N | +----------|:---:|--------|:---:|--------------|:---:| +Excel2007 | NO | Excel5 | NO | Excel2003XML | NO | +OOCalc | NO | SYLK | NO | Gnumeric | NO | +CSV | YES | HTML | YES + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/06-Error-Handling.md b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/06-Error-Handling.md new file mode 100644 index 0000000..d3e064f --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/06-Error-Handling.md @@ -0,0 +1,20 @@ +# PHPExcel User Documentation – Reading Spreadsheet Files + +## Error Handling + +Of course, you should always apply some error handling to your scripts as well. PHPExcel throws exceptions, so you can wrap all your code that accesses the library methods within Try/Catch blocks to trap for any problems that are encountered, and deal with them in an appropriate manner. + +The PHPExcel Readers throw a PHPExcel_Reader_Exception. + +```php +$inputFileName = './sampleData/example-1.xls'; + +try { + /** Load $inputFileName to a PHPExcel Object **/ + $objPHPExcel = PHPExcel_IOFactory::load($inputFileName); +} catch(PHPExcel_Reader_Exception $e) { + die('Error loading file: '.$e->getMessage()); +} +``` + > See Examples/Reader/exampleReader16.php for a working example of this code. + diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/07-Helper-Methods.md b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/07-Helper-Methods.md new file mode 100644 index 0000000..57dbec7 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/07-Helper-Methods.md @@ -0,0 +1,47 @@ +# PHPExcel User Documentation – Reading Spreadsheet Files + + +## Helper Methods + +You can retrieve a list of worksheet names contained in a file without loading the whole file by using the Reader’s `listWorksheetNames()` method; similarly, a `listWorksheetInfo()` method will retrieve the dimensions of worksheet in a file without needing to load and parse the whole file. + +### listWorksheetNames + +The `listWorksheetNames()` method returns a simple array listing each worksheet name within the workbook: + +```php +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + +$worksheetNames = $objReader->listWorksheetNames($inputFileName); + +echo '<h3>Worksheet Names</h3>'; +echo '<ol>'; +foreach ($worksheetNames as $worksheetName) { + echo '<li>', $worksheetName, '</li>'; +} +echo '</ol>'; +``` + > See Examples/Reader/exampleReader18.php for a working example of this code. + +### listWorksheetInfo + +The `listWorksheetInfo()` method returns a nested array, with each entry listing the name and dimensions for a worksheet: + +```php +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + +$worksheetData = $objReader->listWorksheetInfo($inputFileName); + +echo '<h3>Worksheet Information</h3>'; +echo '<ol>'; +foreach ($worksheetData as $worksheet) { + echo '<li>', $worksheet['worksheetName'], '<br />'; + echo 'Rows: ', $worksheet['totalRows'], + ' Columns: ', $worksheet['totalColumns'], '<br />'; + echo 'Cell Range: A1:', + $worksheet['lastColumnLetter'], $worksheet['totalRows']; + echo '</li>'; +} +echo '</ol>'; +``` + > See Examples/Reader/exampleReader19.php for a working example of this code. diff --git a/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/_notes/dwsync.xml new file mode 100644 index 0000000..d5e1768 --- /dev/null +++ b/site/config/PHPExcel-1.8/Documentation/markdown/ReadingSpreadsheetFiles/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="01-File-Formats.md" server="62.244.88.21/deciday/" local="131919462038725302" remote="131880384600000000" Dst="1" /> +<file name="02-Security.md" server="62.244.88.21/deciday/" local="131919462039745240" remote="131880384600000000" Dst="1" /> +<file name="03-Loading-a-Spreadsheet.md" server="62.244.88.21/deciday/" local="131919462039934803" remote="131880384600000000" Dst="1" /> +<file name="04-Loading-with-a-Reader.md" server="62.244.88.21/deciday/" local="131919462040163638" remote="131880384600000000" Dst="1" /> +<file name="06-Error-Handling.md" server="62.244.88.21/deciday/" local="131919462040866935" remote="131880384600000000" Dst="1" /> +<file name="07-Helper-Methods.md" server="62.244.88.21/deciday/" local="131919462041057237" remote="131880384600000000" Dst="1" /> +<file name="05-Reader-Options.md" server="62.244.88.21/deciday/" local="131919462041243023" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Examples/01pharSimple.php b/site/config/PHPExcel-1.8/Examples/01pharSimple.php new file mode 100644 index 0000000..84b86cc --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/01pharSimple.php @@ -0,0 +1,112 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once '../Build/PHPExcel.phar'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("PHPExcel Test Document") + ->setSubject("PHPExcel Test Document") + ->setDescription("Test document for PHPExcel, generated using PHP classes.") + ->setKeywords("office PHPExcel php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/01simple-download-ods.php b/site/config/PHPExcel-1.8/Examples/01simple-download-ods.php new file mode 100644 index 0000000..30dbd7e --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/01simple-download-ods.php @@ -0,0 +1,89 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +if (PHP_SAPI == 'cli') + die('This example should only be run from a Web Browser'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); + +// Set document properties +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + +// Rename worksheet +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Redirect output to a client’s web browser (OpenDocument) +header('Content-Type: application/vnd.oasis.opendocument.spreadsheet'); +header('Content-Disposition: attachment;filename="01simple.ods"'); +header('Cache-Control: max-age=0'); +// If you're serving to IE 9, then the following may be needed +header('Cache-Control: max-age=1'); + +// If you're serving to IE over SSL, then the following may be needed +header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past +header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified +header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1 +header ('Pragma: public'); // HTTP/1.0 + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'OpenDocument'); +$objWriter->save('php://output'); +exit; diff --git a/site/config/PHPExcel-1.8/Examples/01simple-download-pdf.php b/site/config/PHPExcel-1.8/Examples/01simple-download-pdf.php new file mode 100644 index 0000000..133af3a --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/01simple-download-pdf.php @@ -0,0 +1,104 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +if (PHP_SAPI == 'cli') + die('This example should only be run from a Web Browser'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Change these values to select the Rendering library that you wish to use +// and its directory location on your server +//$rendererName = PHPExcel_Settings::PDF_RENDERER_TCPDF; +$rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF; +//$rendererName = PHPExcel_Settings::PDF_RENDERER_DOMPDF; +//$rendererLibrary = 'tcPDF5.9'; +$rendererLibrary = 'mPDF5.4'; +//$rendererLibrary = 'domPDF0.6.0beta3'; +$rendererLibraryPath = dirname(__FILE__).'/../../../libraries/PDF/' . $rendererLibrary; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); + +// Set document properties +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("PDF Test Document") + ->setSubject("PDF Test Document") + ->setDescription("Test document for PDF, generated using PHP classes.") + ->setKeywords("pdf php") + ->setCategory("Test result file"); + + +// Add some data +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + +// Rename worksheet +$objPHPExcel->getActiveSheet()->setTitle('Simple'); +$objPHPExcel->getActiveSheet()->setShowGridLines(false); + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +if (!PHPExcel_Settings::setPdfRenderer( + $rendererName, + $rendererLibraryPath + )) { + die( + 'NOTICE: Please set the $rendererName and $rendererLibraryPath values' . + '<br />' . + 'at the top of this script as appropriate for your directory structure' + ); +} + + +// Redirect output to a client’s web browser (PDF) +header('Content-Type: application/pdf'); +header('Content-Disposition: attachment;filename="01simple.pdf"'); +header('Cache-Control: max-age=0'); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF'); +$objWriter->save('php://output'); +exit; diff --git a/site/config/PHPExcel-1.8/Examples/01simple-download-xls.php b/site/config/PHPExcel-1.8/Examples/01simple-download-xls.php new file mode 100644 index 0000000..96bb780 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/01simple-download-xls.php @@ -0,0 +1,89 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +if (PHP_SAPI == 'cli') + die('This example should only be run from a Web Browser'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); + +// Set document properties +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + +// Rename worksheet +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Redirect output to a client’s web browser (Excel5) +header('Content-Type: application/vnd.ms-excel'); +header('Content-Disposition: attachment;filename="01simple.xls"'); +header('Cache-Control: max-age=0'); +// If you're serving to IE 9, then the following may be needed +header('Cache-Control: max-age=1'); + +// If you're serving to IE over SSL, then the following may be needed +header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past +header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified +header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1 +header ('Pragma: public'); // HTTP/1.0 + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save('php://output'); +exit; diff --git a/site/config/PHPExcel-1.8/Examples/01simple-download-xlsx.php b/site/config/PHPExcel-1.8/Examples/01simple-download-xlsx.php new file mode 100644 index 0000000..d441f41 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/01simple-download-xlsx.php @@ -0,0 +1,89 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +if (PHP_SAPI == 'cli') + die('This example should only be run from a Web Browser'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); + +// Set document properties +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + +// Rename worksheet +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Redirect output to a client’s web browser (Excel2007) +header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); +header('Content-Disposition: attachment;filename="01simple.xlsx"'); +header('Cache-Control: max-age=0'); +// If you're serving to IE 9, then the following may be needed +header('Cache-Control: max-age=1'); + +// If you're serving to IE over SSL, then the following may be needed +header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past +header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified +header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1 +header ('Pragma: public'); // HTTP/1.0 + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save('php://output'); +exit; diff --git a/site/config/PHPExcel-1.8/Examples/01simple.php b/site/config/PHPExcel-1.8/Examples/01simple.php new file mode 100644 index 0000000..13f8027 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/01simple.php @@ -0,0 +1,125 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("PHPExcel Test Document") + ->setSubject("PHPExcel Test Document") + ->setDescription("Test document for PHPExcel, generated using PHP classes.") + ->setKeywords("office PHPExcel php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + + +$objPHPExcel->getActiveSheet()->setCellValue('A8',"Hello\nWorld"); +$objPHPExcel->getActiveSheet()->getRowDimension(8)->setRowHeight(-1); +$objPHPExcel->getActiveSheet()->getStyle('A8')->getAlignment()->setWrapText(true); + + +$value = "-ValueA\n-Value B\n-Value C"; +$objPHPExcel->getActiveSheet()->setCellValue('A10', $value); +$objPHPExcel->getActiveSheet()->getRowDimension(10)->setRowHeight(-1); +$objPHPExcel->getActiveSheet()->getStyle('A10')->getAlignment()->setWrapText(true); +$objPHPExcel->getActiveSheet()->getStyle('A10')->setQuotePrefix(true); + + + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/01simplePCLZip.php b/site/config/PHPExcel-1.8/Examples/01simplePCLZip.php new file mode 100644 index 0000000..0af4cbd --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/01simplePCLZip.php @@ -0,0 +1,106 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("PHPExcel Test Document") + ->setSubject("PHPExcel Test Document") + ->setDescription("Test document for PHPExcel, generated using PHP classes.") + ->setKeywords("office PHPExcel php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + + +$objPHPExcel->getActiveSheet()->setCellValue('A8',"Hello\nWorld"); +$objPHPExcel->getActiveSheet()->getRowDimension(8)->setRowHeight(-1); +$objPHPExcel->getActiveSheet()->getStyle('A8')->getAlignment()->setWrapText(true); + + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +// Use PCLZip rather than ZipArchive to create the Excel2007 OfficeOpenXML file +PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/02types-xls.php b/site/config/PHPExcel-1.8/Examples/02types-xls.php new file mode 100644 index 0000000..93ce17e --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/02types-xls.php @@ -0,0 +1,183 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + +// Set default font +echo date('H:i:s') , " Set default font" , EOL; +$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial') + ->setSize(10); + +// Add some data, resembling some different data types +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'String') + ->setCellValue('B1', 'Simple') + ->setCellValue('C1', 'PHPExcel'); + +$objPHPExcel->getActiveSheet()->setCellValue('A2', 'String') + ->setCellValue('B2', 'Symbols') + ->setCellValue('C2', '!+&=()~§±æþ'); + +$objPHPExcel->getActiveSheet()->setCellValue('A3', 'String') + ->setCellValue('B3', 'UTF-8') + ->setCellValue('C3', 'Создать MS Excel Книги из PHP скриптов'); + +$objPHPExcel->getActiveSheet()->setCellValue('A4', 'Number') + ->setCellValue('B4', 'Integer') + ->setCellValue('C4', 12); + +$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Number') + ->setCellValue('B5', 'Float') + ->setCellValue('C5', 34.56); + +$objPHPExcel->getActiveSheet()->setCellValue('A6', 'Number') + ->setCellValue('B6', 'Negative') + ->setCellValue('C6', -7.89); + +$objPHPExcel->getActiveSheet()->setCellValue('A7', 'Boolean') + ->setCellValue('B7', 'True') + ->setCellValue('C7', true); + +$objPHPExcel->getActiveSheet()->setCellValue('A8', 'Boolean') + ->setCellValue('B8', 'False') + ->setCellValue('C8', false); + +$dateTimeNow = time(); +$objPHPExcel->getActiveSheet()->setCellValue('A9', 'Date/Time') + ->setCellValue('B9', 'Date') + ->setCellValue('C9', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C9')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2); + +$objPHPExcel->getActiveSheet()->setCellValue('A10', 'Date/Time') + ->setCellValue('B10', 'Time') + ->setCellValue('C10', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C10')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4); + +$objPHPExcel->getActiveSheet()->setCellValue('A11', 'Date/Time') + ->setCellValue('B11', 'Date and Time') + ->setCellValue('C11', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C11')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_DATETIME); + +$objPHPExcel->getActiveSheet()->setCellValue('A12', 'NULL') + ->setCellValue('C12', NULL); + +$objRichText = new PHPExcel_RichText(); +$objRichText->createText('你好 '); +$objPayable = $objRichText->createTextRun('你 好 吗?'); +$objPayable->getFont()->setBold(true); +$objPayable->getFont()->setItalic(true); +$objPayable->getFont()->setColor( new PHPExcel_Style_Color( PHPExcel_Style_Color::COLOR_DARKGREEN ) ); + +$objRichText->createText(', unless specified otherwise on the invoice.'); + +$objPHPExcel->getActiveSheet()->setCellValue('A13', 'Rich Text') + ->setCellValue('C13', $objRichText); + + +$objRichText2 = new PHPExcel_RichText(); +$objRichText2->createText("black text\n"); + +$objRed = $objRichText2->createTextRun("red text"); +$objRed->getFont()->setColor( new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_RED ) ); + +$objPHPExcel->getActiveSheet()->getCell("C14")->setValue($objRichText2); +$objPHPExcel->getActiveSheet()->getStyle("C14")->getAlignment()->setWrapText(true); + + +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true); +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setAutoSize(true); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Datatypes'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Reload workbook from saved file" , EOL; +$callStartTime = microtime(true); + +$objPHPExcel = PHPExcel_IOFactory::load(str_replace('.php', '.xls', __FILE__)); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to reload Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +var_dump($objPHPExcel->getActiveSheet()->toArray()); + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done testing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/02types.php b/site/config/PHPExcel-1.8/Examples/02types.php new file mode 100644 index 0000000..394a73d --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/02types.php @@ -0,0 +1,204 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + +// Set default font +echo date('H:i:s') , " Set default font" , EOL; +$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial') + ->setSize(10); + +// Add some data, resembling some different data types +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'String') + ->setCellValue('B1', 'Simple') + ->setCellValue('C1', 'PHPExcel'); + +$objPHPExcel->getActiveSheet()->setCellValue('A2', 'String') + ->setCellValue('B2', 'Symbols') + ->setCellValue('C2', '!+&=()~§±æþ'); + +$objPHPExcel->getActiveSheet()->setCellValue('A3', 'String') + ->setCellValue('B3', 'UTF-8') + ->setCellValue('C3', 'Создать MS Excel Книги из PHP скриптов'); + +$objPHPExcel->getActiveSheet()->setCellValue('A4', 'Number') + ->setCellValue('B4', 'Integer') + ->setCellValue('C4', 12); + +$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Number') + ->setCellValue('B5', 'Float') + ->setCellValue('C5', 34.56); + +$objPHPExcel->getActiveSheet()->setCellValue('A6', 'Number') + ->setCellValue('B6', 'Negative') + ->setCellValue('C6', -7.89); + +$objPHPExcel->getActiveSheet()->setCellValue('A7', 'Boolean') + ->setCellValue('B7', 'True') + ->setCellValue('C7', true); + +$objPHPExcel->getActiveSheet()->setCellValue('A8', 'Boolean') + ->setCellValue('B8', 'False') + ->setCellValue('C8', false); + +$dateTimeNow = time(); +$objPHPExcel->getActiveSheet()->setCellValue('A9', 'Date/Time') + ->setCellValue('B9', 'Date') + ->setCellValue('C9', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C9')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2); + +$objPHPExcel->getActiveSheet()->setCellValue('A10', 'Date/Time') + ->setCellValue('B10', 'Time') + ->setCellValue('C10', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C10')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4); + +$objPHPExcel->getActiveSheet()->setCellValue('A11', 'Date/Time') + ->setCellValue('B11', 'Date and Time') + ->setCellValue('C11', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C11')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_DATETIME); + +$objPHPExcel->getActiveSheet()->setCellValue('A12', 'NULL') + ->setCellValue('C12', NULL); + +$objRichText = new PHPExcel_RichText(); +$objRichText->createText('你好 '); + +$objPayable = $objRichText->createTextRun('你 好 吗?'); +$objPayable->getFont()->setBold(true); +$objPayable->getFont()->setItalic(true); +$objPayable->getFont()->setColor( new PHPExcel_Style_Color( PHPExcel_Style_Color::COLOR_DARKGREEN ) ); + +$objRichText->createText(', unless specified otherwise on the invoice.'); + +$objPHPExcel->getActiveSheet()->setCellValue('A13', 'Rich Text') + ->setCellValue('C13', $objRichText); + + +$objRichText2 = new PHPExcel_RichText(); +$objRichText2->createText("black text\n"); + +$objRed = $objRichText2->createTextRun("red text"); +$objRed->getFont()->setColor( new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_RED ) ); + +$objPHPExcel->getActiveSheet()->getCell("C14")->setValue($objRichText2); +$objPHPExcel->getActiveSheet()->getStyle("C14")->getAlignment()->setWrapText(true); + + +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true); +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setAutoSize(true); + +$objRichText3 = new PHPExcel_RichText(); +$objRichText3->createText("Hello "); + +$objUnderlined = $objRichText3->createTextRun("underlined"); +$objUnderlined->getFont()->setUnderline(true); +$objRichText3->createText(' World.'); + +$objPHPExcel->getActiveSheet() + ->getCell("C15") + ->setValue($objRichText3); + + +$objPHPExcel->getActiveSheet()->setCellValue('A17', 'Hyperlink'); + +$objPHPExcel->getActiveSheet()->setCellValue('C17', 'www.phpexcel.net'); +$objPHPExcel->getActiveSheet()->getCell('C17')->getHyperlink()->setUrl('http://www.phpexcel.net'); +$objPHPExcel->getActiveSheet()->getCell('C17')->getHyperlink()->setTooltip('Navigate to website'); + +$objPHPExcel->getActiveSheet()->setCellValue('C18', '=HYPERLINK("mailto:abc@def.com","abc@def.com")'); + + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Datatypes'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Reload workbook from saved file" , EOL; +$callStartTime = microtime(true); + +$objPHPExcel = PHPExcel_IOFactory::load(str_replace('.php', '.xlsx', __FILE__)); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to reload Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +var_dump($objPHPExcel->getActiveSheet()->toArray()); + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done testing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/03formulas.php b/site/config/PHPExcel-1.8/Examples/03formulas.php new file mode 100644 index 0000000..6c5d1dd --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/03formulas.php @@ -0,0 +1,149 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data, we will use some formulas here +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Sum:'); + +$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Range #1') + ->setCellValue('B2', 3) + ->setCellValue('B3', 7) + ->setCellValue('B4', 13) + ->setCellValue('B5', '=SUM(B2:B4)'); +echo date('H:i:s') , " Sum of Range #1 is " , + $objPHPExcel->getActiveSheet()->getCell('B5')->getCalculatedValue() , EOL; + +$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Range #2') + ->setCellValue('C2', 5) + ->setCellValue('C3', 11) + ->setCellValue('C4', 17) + ->setCellValue('C5', '=SUM(C2:C4)'); +echo date('H:i:s') , " Sum of Range #2 is " , + $objPHPExcel->getActiveSheet()->getCell('C5')->getCalculatedValue() , EOL; + +$objPHPExcel->getActiveSheet()->setCellValue('A7', 'Total of both ranges:'); +$objPHPExcel->getActiveSheet()->setCellValue('B7', '=SUM(B5:C5)'); +echo date('H:i:s') , " Sum of both Ranges is " , + $objPHPExcel->getActiveSheet()->getCell('B7')->getCalculatedValue() , EOL; + +$objPHPExcel->getActiveSheet()->setCellValue('A8', 'Minimum of both ranges:'); +$objPHPExcel->getActiveSheet()->setCellValue('B8', '=MIN(B2:C4)'); +echo date('H:i:s') , " Minimum value in either Range is " , + $objPHPExcel->getActiveSheet()->getCell('B8')->getCalculatedValue() , EOL; + +$objPHPExcel->getActiveSheet()->setCellValue('A9', 'Maximum of both ranges:'); +$objPHPExcel->getActiveSheet()->setCellValue('B9', '=MAX(B2:C4)'); +echo date('H:i:s') , " Maximum value in either Range is " , + $objPHPExcel->getActiveSheet()->getCell('B9')->getCalculatedValue() , EOL; + +$objPHPExcel->getActiveSheet()->setCellValue('A10', 'Average of both ranges:'); +$objPHPExcel->getActiveSheet()->setCellValue('B10', '=AVERAGE(B2:C4)'); +echo date('H:i:s') , " Average value of both Ranges is " , + $objPHPExcel->getActiveSheet()->getCell('B10')->getCalculatedValue() , EOL; + + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Formulas'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); + +// +// If we set Pre Calculated Formulas to true then PHPExcel will calculate all formulae in the +// workbook before saving. This adds time and memory overhead, and can cause some problems with formulae +// using functions or features (such as array formulae) that aren't yet supported by the calculation engine +// If the value is false (the default) for the Excel2007 Writer, then MS Excel (or the application used to +// open the file) will need to recalculate values itself to guarantee that the correct results are available. +// +//$objWriter->setPreCalculateFormulas(true); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/04printing.php b/site/config/PHPExcel-1.8/Examples/04printing.php new file mode 100644 index 0000000..58d5f6a --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/04printing.php @@ -0,0 +1,125 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data, we will use printing features +echo date('H:i:s') , " Add some data" , EOL; +for ($i = 1; $i < 200; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $i); + $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, 'Test value'); +} + +// Set header and footer. When no different headers for odd/even are used, odd header is assumed. +echo date('H:i:s') , " Set header/footer" , EOL; +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader('&L&G&C&HPlease treat this document as confidential!'); +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&L&B' . $objPHPExcel->getProperties()->getTitle() . '&RPage &P of &N'); + +// Add a drawing to the header +echo date('H:i:s') , " Add a drawing to the header" , EOL; +$objDrawing = new PHPExcel_Worksheet_HeaderFooterDrawing(); +$objDrawing->setName('PHPExcel logo'); +$objDrawing->setPath('./images/phpexcel_logo.gif'); +$objDrawing->setHeight(36); +$objPHPExcel->getActiveSheet()->getHeaderFooter()->addImage($objDrawing, PHPExcel_Worksheet_HeaderFooter::IMAGE_HEADER_LEFT); + +// Set page orientation and size +echo date('H:i:s') , " Set page orientation and size" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE); +$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Printing'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/05featuredemo.inc.php b/site/config/PHPExcel-1.8/Examples/05featuredemo.inc.php new file mode 100644 index 0000000..003379c --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/05featuredemo.inc.php @@ -0,0 +1,394 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet, representing sales data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Invoice'); +$objPHPExcel->getActiveSheet()->setCellValue('D1', PHPExcel_Shared_Date::PHPToExcel( gmmktime(0,0,0,date('m'),date('d'),date('Y')) )); +$objPHPExcel->getActiveSheet()->getStyle('D1')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15); +$objPHPExcel->getActiveSheet()->setCellValue('E1', '#12566'); + +$objPHPExcel->getActiveSheet()->setCellValue('A3', 'Product Id'); +$objPHPExcel->getActiveSheet()->setCellValue('B3', 'Description'); +$objPHPExcel->getActiveSheet()->setCellValue('C3', 'Price'); +$objPHPExcel->getActiveSheet()->setCellValue('D3', 'Amount'); +$objPHPExcel->getActiveSheet()->setCellValue('E3', 'Total'); + +$objPHPExcel->getActiveSheet()->setCellValue('A4', '1001'); +$objPHPExcel->getActiveSheet()->setCellValue('B4', 'PHP for dummies'); +$objPHPExcel->getActiveSheet()->setCellValue('C4', '20'); +$objPHPExcel->getActiveSheet()->setCellValue('D4', '1'); +$objPHPExcel->getActiveSheet()->setCellValue('E4', '=IF(D4<>"",C4*D4,"")'); + +$objPHPExcel->getActiveSheet()->setCellValue('A5', '1012'); +$objPHPExcel->getActiveSheet()->setCellValue('B5', 'OpenXML for dummies'); +$objPHPExcel->getActiveSheet()->setCellValue('C5', '22'); +$objPHPExcel->getActiveSheet()->setCellValue('D5', '2'); +$objPHPExcel->getActiveSheet()->setCellValue('E5', '=IF(D5<>"",C5*D5,"")'); + +$objPHPExcel->getActiveSheet()->setCellValue('E6', '=IF(D6<>"",C6*D6,"")'); +$objPHPExcel->getActiveSheet()->setCellValue('E7', '=IF(D7<>"",C7*D7,"")'); +$objPHPExcel->getActiveSheet()->setCellValue('E8', '=IF(D8<>"",C8*D8,"")'); +$objPHPExcel->getActiveSheet()->setCellValue('E9', '=IF(D9<>"",C9*D9,"")'); + +$objPHPExcel->getActiveSheet()->setCellValue('D11', 'Total excl.:'); +$objPHPExcel->getActiveSheet()->setCellValue('E11', '=SUM(E4:E9)'); + +$objPHPExcel->getActiveSheet()->setCellValue('D12', 'VAT:'); +$objPHPExcel->getActiveSheet()->setCellValue('E12', '=E11*0.21'); + +$objPHPExcel->getActiveSheet()->setCellValue('D13', 'Total incl.:'); +$objPHPExcel->getActiveSheet()->setCellValue('E13', '=E11+E12'); + +// Add comment +echo date('H:i:s') , " Add comments" , EOL; + +$objPHPExcel->getActiveSheet()->getComment('E11')->setAuthor('PHPExcel'); +$objCommentRichText = $objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun('PHPExcel:'); +$objCommentRichText->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun("\r\n"); +$objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun('Total amount on the current invoice, excluding VAT.'); + +$objPHPExcel->getActiveSheet()->getComment('E12')->setAuthor('PHPExcel'); +$objCommentRichText = $objPHPExcel->getActiveSheet()->getComment('E12')->getText()->createTextRun('PHPExcel:'); +$objCommentRichText->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getComment('E12')->getText()->createTextRun("\r\n"); +$objPHPExcel->getActiveSheet()->getComment('E12')->getText()->createTextRun('Total amount of VAT on the current invoice.'); + +$objPHPExcel->getActiveSheet()->getComment('E13')->setAuthor('PHPExcel'); +$objCommentRichText = $objPHPExcel->getActiveSheet()->getComment('E13')->getText()->createTextRun('PHPExcel:'); +$objCommentRichText->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getComment('E13')->getText()->createTextRun("\r\n"); +$objPHPExcel->getActiveSheet()->getComment('E13')->getText()->createTextRun('Total amount on the current invoice, including VAT.'); +$objPHPExcel->getActiveSheet()->getComment('E13')->setWidth('100pt'); +$objPHPExcel->getActiveSheet()->getComment('E13')->setHeight('100pt'); +$objPHPExcel->getActiveSheet()->getComment('E13')->setMarginLeft('150pt'); +$objPHPExcel->getActiveSheet()->getComment('E13')->getFillColor()->setRGB('EEEEEE'); + + +// Add rich-text string +echo date('H:i:s') , " Add rich-text string" , EOL; +$objRichText = new PHPExcel_RichText(); +$objRichText->createText('This invoice is '); + +$objPayable = $objRichText->createTextRun('payable within thirty days after the end of the month'); +$objPayable->getFont()->setBold(true); +$objPayable->getFont()->setItalic(true); +$objPayable->getFont()->setColor( new PHPExcel_Style_Color( PHPExcel_Style_Color::COLOR_DARKGREEN ) ); + +$objRichText->createText(', unless specified otherwise on the invoice.'); + +$objPHPExcel->getActiveSheet()->getCell('A18')->setValue($objRichText); + +// Merge cells +echo date('H:i:s') , " Merge cells" , EOL; +$objPHPExcel->getActiveSheet()->mergeCells('A18:E22'); +$objPHPExcel->getActiveSheet()->mergeCells('A28:B28'); // Just to test... +$objPHPExcel->getActiveSheet()->unmergeCells('A28:B28'); // Just to test... + +// Protect cells +echo date('H:i:s') , " Protect cells" , EOL; +$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // Needs to be set to true in order to enable any worksheet protection! +$objPHPExcel->getActiveSheet()->protectCells('A3:E13', 'PHPExcel'); + +// Set cell number formats +echo date('H:i:s') , " Set cell number formats" , EOL; +$objPHPExcel->getActiveSheet()->getStyle('E4:E13')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE); + +// Set column widths +echo date('H:i:s') , " Set column widths" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12); +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(12); + +// Set fonts +echo date('H:i:s') , " Set fonts" , EOL; +$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setName('Candara'); +$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(20); +$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); +$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE); + +$objPHPExcel->getActiveSheet()->getStyle('D1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE); +$objPHPExcel->getActiveSheet()->getStyle('E1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE); + +$objPHPExcel->getActiveSheet()->getStyle('D13')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('E13')->getFont()->setBold(true); + +// Set alignments +echo date('H:i:s') , " Set alignments" , EOL; +$objPHPExcel->getActiveSheet()->getStyle('D11')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); +$objPHPExcel->getActiveSheet()->getStyle('D12')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); +$objPHPExcel->getActiveSheet()->getStyle('D13')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); + +$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY); +$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); + +$objPHPExcel->getActiveSheet()->getStyle('B5')->getAlignment()->setShrinkToFit(true); + +// Set thin black border outline around column +echo date('H:i:s') , " Set thin black border outline around column" , EOL; +$styleThinBlackBorderOutline = array( + 'borders' => array( + 'outline' => array( + 'style' => PHPExcel_Style_Border::BORDER_THIN, + 'color' => array('argb' => 'FF000000'), + ), + ), +); +$objPHPExcel->getActiveSheet()->getStyle('A4:E10')->applyFromArray($styleThinBlackBorderOutline); + + +// Set thick brown border outline around "Total" +echo date('H:i:s') , " Set thick brown border outline around Total" , EOL; +$styleThickBrownBorderOutline = array( + 'borders' => array( + 'outline' => array( + 'style' => PHPExcel_Style_Border::BORDER_THICK, + 'color' => array('argb' => 'FF993300'), + ), + ), +); +$objPHPExcel->getActiveSheet()->getStyle('D13:E13')->applyFromArray($styleThickBrownBorderOutline); + +// Set fills +echo date('H:i:s') , " Set fills" , EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1:E1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID); +$objPHPExcel->getActiveSheet()->getStyle('A1:E1')->getFill()->getStartColor()->setARGB('FF808080'); + +// Set style for header row using alternative method +echo date('H:i:s') , " Set style for header row using alternative method" , EOL; +$objPHPExcel->getActiveSheet()->getStyle('A3:E3')->applyFromArray( + array( + 'font' => array( + 'bold' => true + ), + 'alignment' => array( + 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_RIGHT, + ), + 'borders' => array( + 'top' => array( + 'style' => PHPExcel_Style_Border::BORDER_THIN + ) + ), + 'fill' => array( + 'type' => PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR, + 'rotation' => 90, + 'startcolor' => array( + 'argb' => 'FFA0A0A0' + ), + 'endcolor' => array( + 'argb' => 'FFFFFFFF' + ) + ) + ) +); + +$objPHPExcel->getActiveSheet()->getStyle('A3')->applyFromArray( + array( + 'alignment' => array( + 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_LEFT, + ), + 'borders' => array( + 'left' => array( + 'style' => PHPExcel_Style_Border::BORDER_THIN + ) + ) + ) +); + +$objPHPExcel->getActiveSheet()->getStyle('B3')->applyFromArray( + array( + 'alignment' => array( + 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_LEFT, + ) + ) +); + +$objPHPExcel->getActiveSheet()->getStyle('E3')->applyFromArray( + array( + 'borders' => array( + 'right' => array( + 'style' => PHPExcel_Style_Border::BORDER_THIN + ) + ) + ) +); + +// Unprotect a cell +echo date('H:i:s') , " Unprotect a cell" , EOL; +$objPHPExcel->getActiveSheet()->getStyle('B1')->getProtection()->setLocked(PHPExcel_Style_Protection::PROTECTION_UNPROTECTED); + +// Add a hyperlink to the sheet +echo date('H:i:s') , " Add a hyperlink to an external website" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('E26', 'www.phpexcel.net'); +$objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()->setUrl('http://www.phpexcel.net'); +$objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()->setTooltip('Navigate to website'); +$objPHPExcel->getActiveSheet()->getStyle('E26')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); + +echo date('H:i:s') , " Add a hyperlink to another cell on a different worksheet within the workbook" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('E27', 'Terms and conditions'); +$objPHPExcel->getActiveSheet()->getCell('E27')->getHyperlink()->setUrl("sheet://'Terms and conditions'!A1"); +$objPHPExcel->getActiveSheet()->getCell('E27')->getHyperlink()->setTooltip('Review terms and conditions'); +$objPHPExcel->getActiveSheet()->getStyle('E27')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); + +// Add a drawing to the worksheet +echo date('H:i:s') , " Add a drawing to the worksheet" , EOL; +$objDrawing = new PHPExcel_Worksheet_Drawing(); +$objDrawing->setName('Logo'); +$objDrawing->setDescription('Logo'); +$objDrawing->setPath('./images/officelogo.jpg'); +$objDrawing->setHeight(36); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); + +// Add a drawing to the worksheet +echo date('H:i:s') , " Add a drawing to the worksheet" , EOL; +$objDrawing = new PHPExcel_Worksheet_Drawing(); +$objDrawing->setName('Paid'); +$objDrawing->setDescription('Paid'); +$objDrawing->setPath('./images/paid.png'); +$objDrawing->setCoordinates('B15'); +$objDrawing->setOffsetX(110); +$objDrawing->setRotation(25); +$objDrawing->getShadow()->setVisible(true); +$objDrawing->getShadow()->setDirection(45); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); + +// Add a drawing to the worksheet +echo date('H:i:s') , " Add a drawing to the worksheet" , EOL; +$objDrawing = new PHPExcel_Worksheet_Drawing(); +$objDrawing->setName('PHPExcel logo'); +$objDrawing->setDescription('PHPExcel logo'); +$objDrawing->setPath('./images/phpexcel_logo.gif'); +$objDrawing->setHeight(36); +$objDrawing->setCoordinates('D24'); +$objDrawing->setOffsetX(10); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); + +// Play around with inserting and removing rows and columns +echo date('H:i:s') , " Play around with inserting and removing rows and columns" , EOL; +$objPHPExcel->getActiveSheet()->insertNewRowBefore(6, 10); +$objPHPExcel->getActiveSheet()->removeRow(6, 10); +$objPHPExcel->getActiveSheet()->insertNewColumnBefore('E', 5); +$objPHPExcel->getActiveSheet()->removeColumn('E', 5); + +// Set header and footer. When no different headers for odd/even are used, odd header is assumed. +echo date('H:i:s') , " Set header/footer" , EOL; +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader('&L&BInvoice&RPrinted on &D'); +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&L&B' . $objPHPExcel->getProperties()->getTitle() . '&RPage &P of &N'); + +// Set page orientation and size +echo date('H:i:s') , " Set page orientation and size" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT); +$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4); + +// Rename first worksheet +echo date('H:i:s') , " Rename first worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Invoice'); + + +// Create a new worksheet, after the default sheet +echo date('H:i:s') , " Create a second Worksheet object" , EOL; +$objPHPExcel->createSheet(); + +// Llorem ipsum... +$sLloremIpsum = 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vivamus eget ante. Sed cursus nunc semper tortor. Aliquam luctus purus non elit. Fusce vel elit commodo sapien dignissim dignissim. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Curabitur accumsan magna sed massa. Nullam bibendum quam ac ipsum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin augue. Praesent malesuada justo sed orci. Pellentesque lacus ligula, sodales quis, ultricies a, ultricies vitae, elit. Sed luctus consectetuer dolor. Vivamus vel sem ut nisi sodales accumsan. Nunc et felis. Suspendisse semper viverra odio. Morbi at odio. Integer a orci a purus venenatis molestie. Nam mattis. Praesent rhoncus, nisi vel mattis auctor, neque nisi faucibus sem, non dapibus elit pede ac nisl. Cras turpis.'; + +// Add some data to the second sheet, resembling some different data types +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(1); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Terms and conditions'); +$objPHPExcel->getActiveSheet()->setCellValue('A3', $sLloremIpsum); +$objPHPExcel->getActiveSheet()->setCellValue('A4', $sLloremIpsum); +$objPHPExcel->getActiveSheet()->setCellValue('A5', $sLloremIpsum); +$objPHPExcel->getActiveSheet()->setCellValue('A6', $sLloremIpsum); + +// Set the worksheet tab color +echo date('H:i:s') , " Set the worksheet tab color" , EOL; +$objPHPExcel->getActiveSheet()->getTabColor()->setARGB('FF0094FF');; + +// Set alignments +echo date('H:i:s') , " Set alignments" , EOL; +$objPHPExcel->getActiveSheet()->getStyle('A3:A6')->getAlignment()->setWrapText(true); + +// Set column widths +echo date('H:i:s') , " Set column widths" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(80); + +// Set fonts +echo date('H:i:s') , " Set fonts" , EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setName('Candara'); +$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(20); +$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); + +$objPHPExcel->getActiveSheet()->getStyle('A3:A6')->getFont()->setSize(8); + +// Add a drawing to the worksheet +echo date('H:i:s') , " Add a drawing to the worksheet" , EOL; +$objDrawing = new PHPExcel_Worksheet_Drawing(); +$objDrawing->setName('Terms and conditions'); +$objDrawing->setDescription('Terms and conditions'); +$objDrawing->setPath('./images/termsconditions.jpg'); +$objDrawing->setCoordinates('B14'); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); + +// Set page orientation and size +echo date('H:i:s') , " Set page orientation and size" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE); +$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4); + +// Rename second worksheet +echo date('H:i:s') , " Rename second worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Terms and conditions'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); diff --git a/site/config/PHPExcel-1.8/Examples/05featuredemo.php b/site/config/PHPExcel-1.8/Examples/05featuredemo.php new file mode 100644 index 0000000..9e502ac --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/05featuredemo.php @@ -0,0 +1,78 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +include "05featuredemo.inc.php"; + +/** Include PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/06largescale-with-cellcaching-sqlite.php b/site/config/PHPExcel-1.8/Examples/06largescale-with-cellcaching-sqlite.php new file mode 100644 index 0000000..8baa743 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/06largescale-with-cellcaching-sqlite.php @@ -0,0 +1,129 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + +$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_sqlite; +if (PHPExcel_Settings::setCacheStorageMethod($cacheMethod)) { + echo date('H:i:s') , " Enable Cell Caching using " , $cacheMethod , " method" , EOL; +} else { + echo date('H:i:s') , " Unable to set Cell Caching using " , $cacheMethod , " method, reverting to memory" , EOL; +} + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Firstname"); +$objPHPExcel->getActiveSheet()->setCellValue('B1', "Lastname"); +$objPHPExcel->getActiveSheet()->setCellValue('C1', "Phone"); +$objPHPExcel->getActiveSheet()->setCellValue('D1', "Fax"); +$objPHPExcel->getActiveSheet()->setCellValue('E1', "Is Client ?"); + + +// Hide "Phone" and "fax" column +echo date('H:i:s') , " Hide 'Phone' and 'fax' columns" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setVisible(false); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setVisible(false); + + +// Set outline levels +echo date('H:i:s') , " Set outline levels" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setOutlineLevel(1) + ->setVisible(false) + ->setCollapsed(true); + +// Freeze panes +echo date('H:i:s') , " Freeze panes" , EOL; +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + +// Rows to repeat at top +echo date('H:i:s') , " Rows to repeat at top" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setRowsToRepeatAtTopByStartAndEnd(1, 1); + + +// Add data +for ($i = 2; $i <= 5000; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, "FName $i") + ->setCellValue('B' . $i, "LName $i") + ->setCellValue('C' . $i, "PhoneNo $i") + ->setCellValue('D' . $i, "FaxNo $i") + ->setCellValue('E' . $i, true); +} + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/06largescale-with-cellcaching-sqlite3.php b/site/config/PHPExcel-1.8/Examples/06largescale-with-cellcaching-sqlite3.php new file mode 100644 index 0000000..1f480d1 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/06largescale-with-cellcaching-sqlite3.php @@ -0,0 +1,129 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + +$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_sqlite3; +if (PHPExcel_Settings::setCacheStorageMethod($cacheMethod)) { + echo date('H:i:s') , " Enable Cell Caching using " , $cacheMethod , " method" , EOL; +} else { + echo date('H:i:s') , " Unable to set Cell Caching using " , $cacheMethod , " method, reverting to memory" , EOL; +} + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Firstname"); +$objPHPExcel->getActiveSheet()->setCellValue('B1', "Lastname"); +$objPHPExcel->getActiveSheet()->setCellValue('C1', "Phone"); +$objPHPExcel->getActiveSheet()->setCellValue('D1', "Fax"); +$objPHPExcel->getActiveSheet()->setCellValue('E1', "Is Client ?"); + + +// Hide "Phone" and "fax" column +echo date('H:i:s') , " Hide 'Phone' and 'fax' columns" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setVisible(false); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setVisible(false); + + +// Set outline levels +echo date('H:i:s') , " Set outline levels" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setOutlineLevel(1) + ->setVisible(false) + ->setCollapsed(true); + +// Freeze panes +echo date('H:i:s') , " Freeze panes" , EOL; +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + +// Rows to repeat at top +echo date('H:i:s') , " Rows to repeat at top" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setRowsToRepeatAtTopByStartAndEnd(1, 1); + + +// Add data +for ($i = 2; $i <= 5000; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, "FName $i") + ->setCellValue('B' . $i, "LName $i") + ->setCellValue('C' . $i, "PhoneNo $i") + ->setCellValue('D' . $i, "FaxNo $i") + ->setCellValue('E' . $i, true); +} + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/06largescale-with-cellcaching.php b/site/config/PHPExcel-1.8/Examples/06largescale-with-cellcaching.php new file mode 100644 index 0000000..d20b29f --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/06largescale-with-cellcaching.php @@ -0,0 +1,128 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + +$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_in_memory_gzip; +if (!PHPExcel_Settings::setCacheStorageMethod($cacheMethod)) { + die($cacheMethod . " caching method is not available" . EOL); +} +echo date('H:i:s') , " Enable Cell Caching using " , $cacheMethod , " method" , EOL; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Firstname"); +$objPHPExcel->getActiveSheet()->setCellValue('B1', "Lastname"); +$objPHPExcel->getActiveSheet()->setCellValue('C1', "Phone"); +$objPHPExcel->getActiveSheet()->setCellValue('D1', "Fax"); +$objPHPExcel->getActiveSheet()->setCellValue('E1', "Is Client ?"); + + +// Hide "Phone" and "fax" column +echo date('H:i:s') , " Hide 'Phone' and 'fax' columns" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setVisible(false); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setVisible(false); + + +// Set outline levels +echo date('H:i:s') , " Set outline levels" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setOutlineLevel(1) + ->setVisible(false) + ->setCollapsed(true); + +// Freeze panes +echo date('H:i:s') , " Freeze panes" , EOL; +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + +// Rows to repeat at top +echo date('H:i:s') , " Rows to repeat at top" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setRowsToRepeatAtTopByStartAndEnd(1, 1); + + +// Add data +for ($i = 2; $i <= 5000; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, "FName $i") + ->setCellValue('B' . $i, "LName $i") + ->setCellValue('C' . $i, "PhoneNo $i") + ->setCellValue('D' . $i, "FaxNo $i") + ->setCellValue('E' . $i, true); +} + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/06largescale-xls.php b/site/config/PHPExcel-1.8/Examples/06largescale-xls.php new file mode 100644 index 0000000..5adc3d2 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/06largescale-xls.php @@ -0,0 +1,136 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +/* +After doing some test, I've got these results benchmarked +for writing to Excel2007: + + Number of rows Seconds to generate + 200 3 + 500 4 + 1000 6 + 2000 12 + 4000 36 + 8000 64 + 15000 465 +*/ + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Firstname"); +$objPHPExcel->getActiveSheet()->setCellValue('B1', "Lastname"); +$objPHPExcel->getActiveSheet()->setCellValue('C1', "Phone"); +$objPHPExcel->getActiveSheet()->setCellValue('D1', "Fax"); +$objPHPExcel->getActiveSheet()->setCellValue('E1', "Is Client ?"); + + +// Hide "Phone" and "fax" column +echo date('H:i:s') , " Hide 'Phone' and 'fax' columns" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setVisible(false); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setVisible(false); + + +// Set outline levels +echo date('H:i:s') , " Set outline levels" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setOutlineLevel(1) + ->setVisible(false) + ->setCollapsed(true); + +// Freeze panes +echo date('H:i:s') , " Freeze panes" , EOL; +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + +// Rows to repeat at top +echo date('H:i:s') , " Rows to repeat at top" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setRowsToRepeatAtTopByStartAndEnd(1, 1); + + +// Add data +for ($i = 2; $i <= 5000; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, "FName $i") + ->setCellValue('B' . $i, "LName $i") + ->setCellValue('C' . $i, "PhoneNo $i") + ->setCellValue('D' . $i, "FaxNo $i") + ->setCellValue('E' . $i, true); +} + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/06largescale.php b/site/config/PHPExcel-1.8/Examples/06largescale.php new file mode 100644 index 0000000..cb21caf --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/06largescale.php @@ -0,0 +1,136 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +/* +After doing some test, I've got these results benchmarked +for writing to Excel2007: + + Number of rows Seconds to generate + 200 3 + 500 4 + 1000 6 + 2000 12 + 4000 36 + 8000 64 + 15000 465 +*/ + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Firstname"); +$objPHPExcel->getActiveSheet()->setCellValue('B1', "Lastname"); +$objPHPExcel->getActiveSheet()->setCellValue('C1', "Phone"); +$objPHPExcel->getActiveSheet()->setCellValue('D1', "Fax"); +$objPHPExcel->getActiveSheet()->setCellValue('E1', "Is Client ?"); + + +// Hide "Phone" and "fax" column +echo date('H:i:s') , " Hide 'Phone' and 'fax' columns" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setVisible(false); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setVisible(false); + + +// Set outline levels +echo date('H:i:s') , " Set outline levels" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setOutlineLevel(1) + ->setVisible(false) + ->setCollapsed(true); + +// Freeze panes +echo date('H:i:s') , " Freeze panes" , EOL; +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + +// Rows to repeat at top +echo date('H:i:s') , " Rows to repeat at top" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setRowsToRepeatAtTopByStartAndEnd(1, 1); + + +// Add data +for ($i = 2; $i <= 5000; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, "FName $i") + ->setCellValue('B' . $i, "LName $i") + ->setCellValue('C' . $i, "PhoneNo $i") + ->setCellValue('D' . $i, "FaxNo $i") + ->setCellValue('E' . $i, true); +} + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/07reader.php b/site/config/PHPExcel-1.8/Examples/07reader.php new file mode 100644 index 0000000..318ba18 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/07reader.php @@ -0,0 +1,76 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +if (!file_exists("05featuredemo.xlsx")) { + exit("Please run 05featuredemo.php first." . EOL); +} + +echo date('H:i:s') , " Load from Excel2007 file" , EOL; +$callStartTime = microtime(true); + +$objPHPExcel = PHPExcel_IOFactory::load("05featuredemo.xlsx"); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/07readerPCLZip.php b/site/config/PHPExcel-1.8/Examples/07readerPCLZip.php new file mode 100644 index 0000000..f1da9c5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/07readerPCLZip.php @@ -0,0 +1,79 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +if (!file_exists("05featuredemo.xlsx")) { + exit("Please run 05featuredemo.php first." . EOL); +} + +// Use PCLZip rather than ZipArchive to read the Excel2007 OfficeOpenXML file +PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP); + +echo date('H:i:s') , " Load from Excel2007 file" , EOL; +$callStartTime = microtime(true); + +$objPHPExcel = PHPExcel_IOFactory::load("05featuredemo.xlsx"); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/08conditionalformatting.php b/site/config/PHPExcel-1.8/Examples/08conditionalformatting.php new file mode 100644 index 0000000..514a8bb --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/08conditionalformatting.php @@ -0,0 +1,189 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet, representing sales data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Description') + ->setCellValue('B1', 'Amount'); + +$objPHPExcel->getActiveSheet()->setCellValue('A2', 'Paycheck received') + ->setCellValue('B2', 100); + +$objPHPExcel->getActiveSheet()->setCellValue('A3', 'Cup of coffee bought') + ->setCellValue('B3', -1.5); + +$objPHPExcel->getActiveSheet()->setCellValue('A4', 'Cup of coffee bought') + ->setCellValue('B4', -1.5); + +$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Cup of tea bought') + ->setCellValue('B5', -1.2); + +$objPHPExcel->getActiveSheet()->setCellValue('A6', 'Found some money') + ->setCellValue('B6', 8); + +$objPHPExcel->getActiveSheet()->setCellValue('A7', 'Total:') + ->setCellValue('B7', '=SUM(B2:B6)'); + + +// Set column widths +echo date('H:i:s') , " Set column widths" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(30); +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(12); + + +// Add conditional formatting +echo date('H:i:s') , " Add conditional formatting" , EOL; +$objConditional1 = new PHPExcel_Style_Conditional(); +$objConditional1->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS) + ->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_BETWEEN) + ->addCondition('200') + ->addCondition('400'); +$objConditional1->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_YELLOW); +$objConditional1->getStyle()->getFont()->setBold(true); +$objConditional1->getStyle()->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE); + +$objConditional2 = new PHPExcel_Style_Conditional(); +$objConditional2->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS) + ->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_LESSTHAN) + ->addCondition('0'); +$objConditional2->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED); +$objConditional2->getStyle()->getFont()->setItalic(true); +$objConditional2->getStyle()->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE); + +$objConditional3 = new PHPExcel_Style_Conditional(); +$objConditional3->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS) + ->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_GREATERTHANOREQUAL) + ->addCondition('0'); +$objConditional3->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_GREEN); +$objConditional3->getStyle()->getFont()->setItalic(true); +$objConditional3->getStyle()->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE); + +$conditionalStyles = $objPHPExcel->getActiveSheet()->getStyle('B2')->getConditionalStyles(); +array_push($conditionalStyles, $objConditional1); +array_push($conditionalStyles, $objConditional2); +array_push($conditionalStyles, $objConditional3); +$objPHPExcel->getActiveSheet()->getStyle('B2')->setConditionalStyles($conditionalStyles); + + +// duplicate the conditional styles across a range of cells +echo date('H:i:s') , " Duplicate the conditional formatting across a range of cells" , EOL; +$objPHPExcel->getActiveSheet()->duplicateConditionalStyle( + $objPHPExcel->getActiveSheet()->getStyle('B2')->getConditionalStyles(), + 'B3:B7' + ); + + +// Set fonts +echo date('H:i:s') , " Set fonts" , EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1:B1')->getFont()->setBold(true); +//$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('A7:B7')->getFont()->setBold(true); +//$objPHPExcel->getActiveSheet()->getStyle('B7')->getFont()->setBold(true); + + +// Set header and footer. When no different headers for odd/even are used, odd header is assumed. +echo date('H:i:s') , " Set header/footer" , EOL; +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader('&L&BPersonal cash register&RPrinted on &D'); +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&L&B' . $objPHPExcel->getProperties()->getTitle() . '&RPage &P of &N'); + + +// Set page orientation and size +echo date('H:i:s') , " Set page orientation and size" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT); +$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4); + + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Invoice'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/08conditionalformatting2.php b/site/config/PHPExcel-1.8/Examples/08conditionalformatting2.php new file mode 100644 index 0000000..aeb2a31 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/08conditionalformatting2.php @@ -0,0 +1,136 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet, representing sales data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet() + ->setCellValue('A1', '-0.5') + ->setCellValue('A2', '-0.25') + ->setCellValue('A3', '0.0') + ->setCellValue('A4', '0.25') + ->setCellValue('A5', '0.5') + ->setCellValue('A6', '0.75') + ->setCellValue('A7', '1.0') + ->setCellValue('A8', '1.25') +; + +$objPHPExcel->getActiveSheet()->getStyle('A1:A8') + ->getNumberFormat() + ->setFormatCode( + PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE_00 + ); + + +// Add conditional formatting +echo date('H:i:s') , " Add conditional formatting" , EOL; +$objConditional1 = new PHPExcel_Style_Conditional(); +$objConditional1->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS) + ->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_LESSTHAN) + ->addCondition('0'); +$objConditional1->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED); + +$objConditional3 = new PHPExcel_Style_Conditional(); +$objConditional3->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS) + ->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_GREATERTHANOREQUAL) + ->addCondition('1'); +$objConditional3->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_GREEN); + +$conditionalStyles = $objPHPExcel->getActiveSheet()->getStyle('A1')->getConditionalStyles(); +array_push($conditionalStyles, $objConditional1); +array_push($conditionalStyles, $objConditional3); +$objPHPExcel->getActiveSheet()->getStyle('A1')->setConditionalStyles($conditionalStyles); + + +// duplicate the conditional styles across a range of cells +echo date('H:i:s') , " Duplicate the conditional formatting across a range of cells" , EOL; +$objPHPExcel->getActiveSheet()->duplicateConditionalStyle( + $objPHPExcel->getActiveSheet()->getStyle('A1')->getConditionalStyles(), + 'A2:A8' + ); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/09pagebreaks.php b/site/config/PHPExcel-1.8/Examples/09pagebreaks.php new file mode 100644 index 0000000..36e21ae --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/09pagebreaks.php @@ -0,0 +1,134 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data and page breaks" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Firstname") + ->setCellValue('B1', "Lastname") + ->setCellValue('C1', "Phone") + ->setCellValue('D1', "Fax") + ->setCellValue('E1', "Is Client ?"); + + +// Add data +for ($i = 2; $i <= 50; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, "FName $i"); + $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, "LName $i"); + $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, "PhoneNo $i"); + $objPHPExcel->getActiveSheet()->setCellValue('D' . $i, "FaxNo $i"); + $objPHPExcel->getActiveSheet()->setCellValue('E' . $i, true); + + // Add page breaks every 10 rows + if ($i % 10 == 0) { + // Add a page break + $objPHPExcel->getActiveSheet()->setBreak( 'A' . $i, PHPExcel_Worksheet::BREAK_ROW ); + } +} + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setTitle('Printing Options'); + +// Set print headers +$objPHPExcel->getActiveSheet() + ->getHeaderFooter()->setOddHeader('&C&24&K0000FF&B&U&A'); +$objPHPExcel->getActiveSheet() + ->getHeaderFooter()->setEvenHeader('&C&24&K0000FF&B&U&A'); + +// Set print footers +$objPHPExcel->getActiveSheet() + ->getHeaderFooter()->setOddFooter('&R&D &T&C&F&LPage &P / &N'); +$objPHPExcel->getActiveSheet() + ->getHeaderFooter()->setEvenFooter('&L&D &T&C&F&RPage &P / &N'); + + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/10autofilter-selection-1.php b/site/config/PHPExcel-1.8/Examples/10autofilter-selection-1.php new file mode 100644 index 0000000..8cdc0de --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/10autofilter-selection-1.php @@ -0,0 +1,221 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s').' Create new PHPExcel object'.EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s').' Set document properties'.EOL; +$objPHPExcel->getProperties()->setCreator('Maarten Balliauw') + ->setLastModifiedBy('Maarten Balliauw') + ->setTitle('PHPExcel Test Document') + ->setSubject('PHPExcel Test Document') + ->setDescription('Test document for PHPExcel, generated using PHP classes.') + ->setKeywords('office PHPExcel php') + ->setCategory('Test result file'); + +// Create the worksheet +echo date('H:i:s').' Add data'.EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Financial Year') + ->setCellValue('B1', 'Financial Period') + ->setCellValue('C1', 'Country') + ->setCellValue('D1', 'Date') + ->setCellValue('E1', 'Sales Value') + ->setCellValue('F1', 'Expenditure') + ; +$startYear = $endYear = $currentYear = date('Y'); +$startYear--; +$endYear++; + +$years = range($startYear,$endYear); +$periods = range(1,12); +$countries = array( 'United States', 'UK', 'France', 'Germany', + 'Italy', 'Spain', 'Portugal', 'Japan' + ); + +$row = 2; +foreach($years as $year) { + foreach($periods as $period) { + foreach($countries as $country) { + $endDays = date('t',mktime(0,0,0,$period,1,$year)); + for($i = 1; $i <= $endDays; ++$i) { + $eDate = PHPExcel_Shared_Date::FormattedPHPToExcel( + $year, + $period, + $i + ); + $value = rand(500,1000) * (1 + rand(-0.25,+0.25)); + $salesValue = $invoiceValue = NULL; + $incomeOrExpenditure = rand(-1,1); + if ($incomeOrExpenditure == -1) { + $expenditure = rand(-500,-1000) * (1 + rand(-0.25,+0.25)); + $income = NULL; + } elseif ($incomeOrExpenditure == 1) { + $expenditure = rand(-500,-1000) * (1 + rand(-0.25,+0.25)); + $income = rand(500,1000) * (1 + rand(-0.25,+0.25));; + } else { + $expenditure = NULL; + $income = rand(500,1000) * (1 + rand(-0.25,+0.25));; + } + $dataArray = array( $year, + $period, + $country, + $eDate, + $income, + $expenditure, + ); + $objPHPExcel->getActiveSheet()->fromArray($dataArray, NULL, 'A'.$row++); + } + } + } +} +$row--; + + +// Set styling +echo date('H:i:s').' Set styling'.EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1:F1')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('A1:F1')->getAlignment()->setWrapText(TRUE); +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(12.5); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(10.5); +$objPHPExcel->getActiveSheet()->getStyle('D2:D'.$row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2); +$objPHPExcel->getActiveSheet()->getStyle('E2:F'.$row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE); +$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(14); +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + + +// Set autofilter range +echo date('H:i:s').' Set autofilter range'.EOL; +// Always include the complete filter range! +// Excel does support setting only the caption +// row, but that's not a best practise... +$objPHPExcel->getActiveSheet()->setAutoFilter($objPHPExcel->getActiveSheet()->calculateWorksheetDimension()); + +// Set active filters +$autoFilter = $objPHPExcel->getActiveSheet()->getAutoFilter(); +echo date('H:i:s').' Set active filters'.EOL; +// Filter the Country column on a filter value of countries beginning with the letter U (or Japan) +// We use * as a wildcard, so specify as U* and using a wildcard requires customFilter +$autoFilter->getColumn('C') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + 'u*' + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); +$autoFilter->getColumn('C') + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + 'japan' + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); +// Filter the Date column on a filter value of the first day of every period of the current year +// We us a dateGroup ruletype for this, although it is still a standard filter +foreach($periods as $period) { + $endDate = date('t',mktime(0,0,0,$period,1,$currentYear)); + + $autoFilter->getColumn('D') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + array( + 'year' => $currentYear, + 'month' => $period, + 'day' => $endDate + ) + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP); +} +// Display only sales values that are blank +// Standard filter, operator equals, and value of NULL +$autoFilter->getColumn('E') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + '' + ); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s').' Peak memory usage: '.(memory_get_peak_usage(true) / 1024 / 1024).' MB'.EOL; + +// Echo done +echo date('H:i:s').' Done writing files'.EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/10autofilter-selection-2.php b/site/config/PHPExcel-1.8/Examples/10autofilter-selection-2.php new file mode 100644 index 0000000..e2aea74 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/10autofilter-selection-2.php @@ -0,0 +1,213 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s').' Create new PHPExcel object'.EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s').' Set document properties'.EOL; +$objPHPExcel->getProperties()->setCreator('Maarten Balliauw') + ->setLastModifiedBy('Maarten Balliauw') + ->setTitle('PHPExcel Test Document') + ->setSubject('PHPExcel Test Document') + ->setDescription('Test document for PHPExcel, generated using PHP classes.') + ->setKeywords('office PHPExcel php') + ->setCategory('Test result file'); + +// Create the worksheet +echo date('H:i:s').' Add data'.EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Financial Year') + ->setCellValue('B1', 'Financial Period') + ->setCellValue('C1', 'Country') + ->setCellValue('D1', 'Date') + ->setCellValue('E1', 'Sales Value') + ->setCellValue('F1', 'Expenditure') + ; +$startYear = $endYear = $currentYear = date('Y'); +$startYear--; +$endYear++; + +$years = range($startYear,$endYear); +$periods = range(1,12); +$countries = array( 'United States', 'UK', 'France', 'Germany', + 'Italy', 'Spain', 'Portugal', 'Japan' + ); + +$row = 2; +foreach($years as $year) { + foreach($periods as $period) { + foreach($countries as $country) { + $endDays = date('t',mktime(0,0,0,$period,1,$year)); + for($i = 1; $i <= $endDays; ++$i) { + $eDate = PHPExcel_Shared_Date::FormattedPHPToExcel( + $year, + $period, + $i + ); + $value = rand(500,1000) * (1 + rand(-0.25,+0.25)); + $salesValue = $invoiceValue = NULL; + $incomeOrExpenditure = rand(-1,1); + if ($incomeOrExpenditure == -1) { + $expenditure = rand(-500,-1000) * (1 + rand(-0.25,+0.25)); + $income = NULL; + } elseif ($incomeOrExpenditure == 1) { + $expenditure = rand(-500,-1000) * (1 + rand(-0.25,+0.25)); + $income = rand(500,1000) * (1 + rand(-0.25,+0.25));; + } else { + $expenditure = NULL; + $income = rand(500,1000) * (1 + rand(-0.25,+0.25));; + } + $dataArray = array( $year, + $period, + $country, + $eDate, + $income, + $expenditure, + ); + $objPHPExcel->getActiveSheet()->fromArray($dataArray, NULL, 'A'.$row++); + } + } + } +} +$row--; + + +// Set styling +echo date('H:i:s').' Set styling'.EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1:F1')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('A1:F1')->getAlignment()->setWrapText(TRUE); +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(12.5); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(10.5); +$objPHPExcel->getActiveSheet()->getStyle('D2:D'.$row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2); +$objPHPExcel->getActiveSheet()->getStyle('E2:F'.$row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE); +$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(14); +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + + +// Set autofilter range +echo date('H:i:s').' Set autofilter range'.EOL; +// Always include the complete filter range! +// Excel does support setting only the caption +// row, but that's not a best practise... +$objPHPExcel->getActiveSheet()->setAutoFilter($objPHPExcel->getActiveSheet()->calculateWorksheetDimension()); + +// Set active filters +$autoFilter = $objPHPExcel->getActiveSheet()->getAutoFilter(); +echo date('H:i:s').' Set active filters'.EOL; +// Filter the Country column on a filter value of Germany +// As it's just a simple value filter, we can use FILTERTYPE_FILTER +$autoFilter->getColumn('C') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + 'Germany' + ); +// Filter the Date column on a filter value of the year to date +$autoFilter->getColumn('D') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_DYNAMICFILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + NULL, + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMICFILTER); +// Display only sales values that are between 400 and 600 +$autoFilter->getColumn('E') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL, + 400 + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); +$autoFilter->getColumn('E') + ->setJoin(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL, + 600 + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s').' Peak memory usage: '.(memory_get_peak_usage(true) / 1024 / 1024).' MB'.EOL; + +// Echo done +echo date('H:i:s').' Done writing files'.EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/10autofilter-selection-display.php b/site/config/PHPExcel-1.8/Examples/10autofilter-selection-display.php new file mode 100644 index 0000000..ba3fed9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/10autofilter-selection-display.php @@ -0,0 +1,198 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s').' Create new PHPExcel object'.EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s').' Set document properties'.EOL; +$objPHPExcel->getProperties()->setCreator('Maarten Balliauw') + ->setLastModifiedBy('Maarten Balliauw') + ->setTitle('PHPExcel Test Document') + ->setSubject('PHPExcel Test Document') + ->setDescription('Test document for PHPExcel, generated using PHP classes.') + ->setKeywords('office PHPExcel php') + ->setCategory('Test result file'); + +// Create the worksheet +echo date('H:i:s').' Add data'.EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Financial Year') + ->setCellValue('B1', 'Financial Period') + ->setCellValue('C1', 'Country') + ->setCellValue('D1', 'Date') + ->setCellValue('E1', 'Sales Value') + ->setCellValue('F1', 'Expenditure') + ; +$startYear = $endYear = $currentYear = date('Y'); +$startYear--; +$endYear++; + +$years = range($startYear,$endYear); +$periods = range(1,12); +$countries = array( 'United States', 'UK', 'France', 'Germany', + 'Italy', 'Spain', 'Portugal', 'Japan' + ); + +$row = 2; +foreach($years as $year) { + foreach($periods as $period) { + foreach($countries as $country) { + $endDays = date('t',mktime(0,0,0,$period,1,$year)); + for($i = 1; $i <= $endDays; ++$i) { + $eDate = PHPExcel_Shared_Date::FormattedPHPToExcel( + $year, + $period, + $i + ); + $value = rand(500,1000) * (1 + rand(-0.25,+0.25)); + $salesValue = $invoiceValue = NULL; + $incomeOrExpenditure = rand(-1,1); + if ($incomeOrExpenditure == -1) { + $expenditure = rand(-500,-1000) * (1 + rand(-0.25,+0.25)); + $income = NULL; + } elseif ($incomeOrExpenditure == 1) { + $expenditure = rand(-500,-1000) * (1 + rand(-0.25,+0.25)); + $income = rand(500,1000) * (1 + rand(-0.25,+0.25));; + } else { + $expenditure = NULL; + $income = rand(500,1000) * (1 + rand(-0.25,+0.25));; + } + $dataArray = array( $year, + $period, + $country, + $eDate, + $income, + $expenditure, + ); + $objPHPExcel->getActiveSheet()->fromArray($dataArray, NULL, 'A'.$row++); + } + } + } +} +$row--; + + +// Set styling +echo date('H:i:s').' Set styling'.EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1:F1')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('A1:F1')->getAlignment()->setWrapText(TRUE); +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(12.5); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(10.5); +$objPHPExcel->getActiveSheet()->getStyle('D2:D'.$row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2); +$objPHPExcel->getActiveSheet()->getStyle('E2:F'.$row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE); +$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(14); +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + + +// Set autofilter range +echo date('H:i:s').' Set autofilter range'.EOL; +// Always include the complete filter range! +// Excel does support setting only the caption +// row, but that's not a best practise... +$objPHPExcel->getActiveSheet()->setAutoFilter($objPHPExcel->getActiveSheet()->calculateWorksheetDimension()); + +// Set active filters +$autoFilter = $objPHPExcel->getActiveSheet()->getAutoFilter(); +echo date('H:i:s').' Set active filters'.EOL; +// Filter the Country column on a filter value of countries beginning with the letter U (or Japan) +// We use * as a wildcard, so specify as U* and using a wildcard requires customFilter +$autoFilter->getColumn('C') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + 'u*' + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); +$autoFilter->getColumn('C') + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + 'japan' + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); +// Filter the Date column on a filter value of the first day of every period of the current year +// We us a dateGroup ruletype for this, although it is still a standard filter +foreach($periods as $period) { + $endDate = date('t',mktime(0,0,0,$period,1,$currentYear)); + + $autoFilter->getColumn('D') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + array( + 'year' => $currentYear, + 'month' => $period, + 'day' => $endDate + ) + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP); +} +// Display only sales values that are blank +// Standard filter, operator equals, and value of NULL +$autoFilter->getColumn('E') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + '' + ); + +// Execute filtering +echo date('H:i:s').' Execute filtering'.EOL; +$autoFilter->showHideRows(); + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Display Results of filtering +echo date('H:i:s').' Display filtered rows'.EOL; +foreach ($objPHPExcel->getActiveSheet()->getRowIterator() as $row) { + if ($objPHPExcel->getActiveSheet()->getRowDimension($row->getRowIndex())->getVisible()) { + echo ' Row number - ' , $row->getRowIndex() , ' '; + echo $objPHPExcel->getActiveSheet()->getCell('C'.$row->getRowIndex())->getValue(), ' '; + echo $objPHPExcel->getActiveSheet()->getCell('D'.$row->getRowIndex())->getFormattedValue(), ' '; + echo EOL; + } +} diff --git a/site/config/PHPExcel-1.8/Examples/10autofilter.php b/site/config/PHPExcel-1.8/Examples/10autofilter.php new file mode 100644 index 0000000..015e9cf --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/10autofilter.php @@ -0,0 +1,171 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + +// Create new PHPExcel object +echo date('H:i:s').' Create new PHPExcel object'.EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s').' Set document properties'.EOL; +$objPHPExcel->getProperties()->setCreator('Maarten Balliauw') + ->setLastModifiedBy('Maarten Balliauw') + ->setTitle('PHPExcel Test Document') + ->setSubject('PHPExcel Test Document') + ->setDescription('Test document for PHPExcel, generated using PHP classes.') + ->setKeywords('office PHPExcel php') + ->setCategory('Test result file'); + +// Create the worksheet +echo date('H:i:s').' Add data'.EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Year') + ->setCellValue('B1', 'Quarter') + ->setCellValue('C1', 'Country') + ->setCellValue('D1', 'Sales'); + +$dataArray = array(array('2010', 'Q1', 'United States', 790), + array('2010', 'Q2', 'United States', 730), + array('2010', 'Q3', 'United States', 860), + array('2010', 'Q4', 'United States', 850), + array('2011', 'Q1', 'United States', 800), + array('2011', 'Q2', 'United States', 700), + array('2011', 'Q3', 'United States', 900), + array('2011', 'Q4', 'United States', 950), + array('2010', 'Q1', 'Belgium', 380), + array('2010', 'Q2', 'Belgium', 390), + array('2010', 'Q3', 'Belgium', 420), + array('2010', 'Q4', 'Belgium', 460), + array('2011', 'Q1', 'Belgium', 400), + array('2011', 'Q2', 'Belgium', 350), + array('2011', 'Q3', 'Belgium', 450), + array('2011', 'Q4', 'Belgium', 500), + array('2010', 'Q1', 'UK', 690), + array('2010', 'Q2', 'UK', 610), + array('2010', 'Q3', 'UK', 620), + array('2010', 'Q4', 'UK', 600), + array('2011', 'Q1', 'UK', 720), + array('2011', 'Q2', 'UK', 650), + array('2011', 'Q3', 'UK', 580), + array('2011', 'Q4', 'UK', 510), + array('2010', 'Q1', 'France', 510), + array('2010', 'Q2', 'France', 490), + array('2010', 'Q3', 'France', 460), + array('2010', 'Q4', 'France', 590), + array('2011', 'Q1', 'France', 620), + array('2011', 'Q2', 'France', 650), + array('2011', 'Q3', 'France', 415), + array('2011', 'Q4', 'France', 570), + array('2010', 'Q1', 'Germany', 720), + array('2010', 'Q2', 'Germany', 680), + array('2010', 'Q3', 'Germany', 640), + array('2010', 'Q4', 'Germany', 660), + array('2011', 'Q1', 'Germany', 680), + array('2011', 'Q2', 'Germany', 620), + array('2011', 'Q3', 'Germany', 710), + array('2011', 'Q4', 'Germany', 690), + array('2010', 'Q1', 'Spain', 510), + array('2010', 'Q2', 'Spain', 490), + array('2010', 'Q3', 'Spain', 470), + array('2010', 'Q4', 'Spain', 420), + array('2011', 'Q1', 'Spain', 460), + array('2011', 'Q2', 'Spain', 390), + array('2011', 'Q3', 'Spain', 430), + array('2011', 'Q4', 'Spain', 415), + array('2010', 'Q1', 'Italy', 440), + array('2010', 'Q2', 'Italy', 410), + array('2010', 'Q3', 'Italy', 420), + array('2010', 'Q4', 'Italy', 450), + array('2011', 'Q1', 'Italy', 430), + array('2011', 'Q2', 'Italy', 370), + array('2011', 'Q3', 'Italy', 350), + array('2011', 'Q4', 'Italy', 335), + ); +$objPHPExcel->getActiveSheet()->fromArray($dataArray, NULL, 'A2'); + +// Set title row bold +echo date('H:i:s').' Set title row bold'.EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1:D1')->getFont()->setBold(true); + +// Set autofilter +echo date('H:i:s').' Set autofilter'.EOL; +// Always include the complete filter range! +// Excel does support setting only the caption +// row, but that's not a best practise... +$objPHPExcel->getActiveSheet()->setAutoFilter($objPHPExcel->getActiveSheet()->calculateWorksheetDimension()); + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s').' Peak memory usage: '.(memory_get_peak_usage(true) / 1024 / 1024).' MB'.EOL; + +// Echo done +echo date('H:i:s').' Done writing files'.EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/11documentsecurity-xls.php b/site/config/PHPExcel-1.8/Examples/11documentsecurity-xls.php new file mode 100644 index 0000000..2348ce9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/11documentsecurity-xls.php @@ -0,0 +1,109 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Hello'); +$objPHPExcel->getActiveSheet()->setCellValue('B2', 'world!'); +$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Hello'); +$objPHPExcel->getActiveSheet()->setCellValue('D2', 'world!'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set document security +echo date('H:i:s') , " Set document security" , EOL; +$objPHPExcel->getSecurity()->setLockWindows(true); +$objPHPExcel->getSecurity()->setLockStructure(true); +$objPHPExcel->getSecurity()->setWorkbookPassword("PHPExcel"); + + +// Set sheet security +echo date('H:i:s') , " Set sheet security" , EOL; +$objPHPExcel->getActiveSheet()->getProtection()->setPassword('PHPExcel'); +$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // This should be enabled in order to enable any of the following! +$objPHPExcel->getActiveSheet()->getProtection()->setSort(true); +$objPHPExcel->getActiveSheet()->getProtection()->setInsertRows(true); +$objPHPExcel->getActiveSheet()->getProtection()->setFormatCells(true); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/11documentsecurity.php b/site/config/PHPExcel-1.8/Examples/11documentsecurity.php new file mode 100644 index 0000000..9fd4fb2 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/11documentsecurity.php @@ -0,0 +1,109 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Hello'); +$objPHPExcel->getActiveSheet()->setCellValue('B2', 'world!'); +$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Hello'); +$objPHPExcel->getActiveSheet()->setCellValue('D2', 'world!'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set document security +echo date('H:i:s') , " Set document security" , EOL; +$objPHPExcel->getSecurity()->setLockWindows(true); +$objPHPExcel->getSecurity()->setLockStructure(true); +$objPHPExcel->getSecurity()->setWorkbookPassword("PHPExcel"); + + +// Set sheet security +echo date('H:i:s') , " Set sheet security" , EOL; +$objPHPExcel->getActiveSheet()->getProtection()->setPassword('PHPExcel'); +$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // This should be enabled in order to enable any of the following! +$objPHPExcel->getActiveSheet()->getProtection()->setSort(true); +$objPHPExcel->getActiveSheet()->getProtection()->setInsertRows(true); +$objPHPExcel->getActiveSheet()->getProtection()->setFormatCells(true); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/12cellProtection.php b/site/config/PHPExcel-1.8/Examples/12cellProtection.php new file mode 100644 index 0000000..e12c9ae --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/12cellProtection.php @@ -0,0 +1,107 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Mark Baker") + ->setLastModifiedBy("Mark Baker") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Crouching'); +$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Tiger'); +$objPHPExcel->getActiveSheet()->setCellValue('A2', 'Hidden'); +$objPHPExcel->getActiveSheet()->setCellValue('B2', 'Dragon'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set document security +echo date('H:i:s') , " Set cell protection" , EOL; + + +// Set sheet security +echo date('H:i:s') , " Set sheet security" , EOL; +$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); +$objPHPExcel->getActiveSheet() + ->getStyle('A2:B2') + ->getProtection()->setLocked( + PHPExcel_Style_Protection::PROTECTION_UNPROTECTED + ); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/13calculation.php b/site/config/PHPExcel-1.8/Examples/13calculation.php new file mode 100644 index 0000000..e255d11 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/13calculation.php @@ -0,0 +1,235 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); +mt_srand(1234567890); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// List functions +echo date('H:i:s') , " List implemented functions" , EOL; +$objCalc = PHPExcel_Calculation::getInstance(); +print_r($objCalc->listFunctionNames()); + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Add some data, we will use some formulas here +echo date('H:i:s') , " Add some data and formulas" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('A14', 'Count:') + ->setCellValue('A15', 'Sum:') + ->setCellValue('A16', 'Max:') + ->setCellValue('A17', 'Min:') + ->setCellValue('A18', 'Average:') + ->setCellValue('A19', 'Median:') + ->setCellValue('A20', 'Mode:'); + +$objPHPExcel->getActiveSheet()->setCellValue('A22', 'CountA:') + ->setCellValue('A23', 'MaxA:') + ->setCellValue('A24', 'MinA:'); + +$objPHPExcel->getActiveSheet()->setCellValue('A26', 'StDev:') + ->setCellValue('A27', 'StDevA:') + ->setCellValue('A28', 'StDevP:') + ->setCellValue('A29', 'StDevPA:'); + +$objPHPExcel->getActiveSheet()->setCellValue('A31', 'DevSq:') + ->setCellValue('A32', 'Var:') + ->setCellValue('A33', 'VarA:') + ->setCellValue('A34', 'VarP:') + ->setCellValue('A35', 'VarPA:'); + +$objPHPExcel->getActiveSheet()->setCellValue('A37', 'Date:'); + + +$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Range 1') + ->setCellValue('B2', 2) + ->setCellValue('B3', 8) + ->setCellValue('B4', 10) + ->setCellValue('B5', True) + ->setCellValue('B6', False) + ->setCellValue('B7', 'Text String') + ->setCellValue('B9', '22') + ->setCellValue('B10', 4) + ->setCellValue('B11', 6) + ->setCellValue('B12', 12); + +$objPHPExcel->getActiveSheet()->setCellValue('B14', '=COUNT(B2:B12)') + ->setCellValue('B15', '=SUM(B2:B12)') + ->setCellValue('B16', '=MAX(B2:B12)') + ->setCellValue('B17', '=MIN(B2:B12)') + ->setCellValue('B18', '=AVERAGE(B2:B12)') + ->setCellValue('B19', '=MEDIAN(B2:B12)') + ->setCellValue('B20', '=MODE(B2:B12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('B22', '=COUNTA(B2:B12)') + ->setCellValue('B23', '=MAXA(B2:B12)') + ->setCellValue('B24', '=MINA(B2:B12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('B26', '=STDEV(B2:B12)') + ->setCellValue('B27', '=STDEVA(B2:B12)') + ->setCellValue('B28', '=STDEVP(B2:B12)') + ->setCellValue('B29', '=STDEVPA(B2:B12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('B31', '=DEVSQ(B2:B12)') + ->setCellValue('B32', '=VAR(B2:B12)') + ->setCellValue('B33', '=VARA(B2:B12)') + ->setCellValue('B34', '=VARP(B2:B12)') + ->setCellValue('B35', '=VARPA(B2:B12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('B37', '=DATE(2007, 12, 21)') + ->setCellValue('B38', '=DATEDIF( DATE(2007, 12, 21), DATE(2007, 12, 22), "D" )') + ->setCellValue('B39', '=DATEVALUE("01-Feb-2006 10:06 AM")') + ->setCellValue('B40', '=DAY( DATE(2006, 1, 2) )') + ->setCellValue('B41', '=DAYS360( DATE(2002, 2, 3), DATE(2005, 5, 31) )'); + + +$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Range 2') + ->setCellValue('C2', 1) + ->setCellValue('C3', 2) + ->setCellValue('C4', 2) + ->setCellValue('C5', 3) + ->setCellValue('C6', 3) + ->setCellValue('C7', 3) + ->setCellValue('C8', '0') + ->setCellValue('C9', 4) + ->setCellValue('C10', 4) + ->setCellValue('C11', 4) + ->setCellValue('C12', 4); + +$objPHPExcel->getActiveSheet()->setCellValue('C14', '=COUNT(C2:C12)') + ->setCellValue('C15', '=SUM(C2:C12)') + ->setCellValue('C16', '=MAX(C2:C12)') + ->setCellValue('C17', '=MIN(C2:C12)') + ->setCellValue('C18', '=AVERAGE(C2:C12)') + ->setCellValue('C19', '=MEDIAN(C2:C12)') + ->setCellValue('C20', '=MODE(C2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('C22', '=COUNTA(C2:C12)') + ->setCellValue('C23', '=MAXA(C2:C12)') + ->setCellValue('C24', '=MINA(C2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('C26', '=STDEV(C2:C12)') + ->setCellValue('C27', '=STDEVA(C2:C12)') + ->setCellValue('C28', '=STDEVP(C2:C12)') + ->setCellValue('C29', '=STDEVPA(C2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('C31', '=DEVSQ(C2:C12)') + ->setCellValue('C32', '=VAR(C2:C12)') + ->setCellValue('C33', '=VARA(C2:C12)') + ->setCellValue('C34', '=VARP(C2:C12)') + ->setCellValue('C35', '=VARPA(C2:C12)'); + + +$objPHPExcel->getActiveSheet()->setCellValue('D1', 'Range 3') + ->setCellValue('D2', 2) + ->setCellValue('D3', 3) + ->setCellValue('D4', 4); + +$objPHPExcel->getActiveSheet()->setCellValue('D14', '=((D2 * D3) + D4) & " should be 10"'); + +$objPHPExcel->getActiveSheet()->setCellValue('E12', 'Other functions') + ->setCellValue('E14', '=PI()') + ->setCellValue('E15', '=RAND()') + ->setCellValue('E16', '=RANDBETWEEN(5, 10)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E17', 'Count of both ranges:') + ->setCellValue('F17', '=COUNT(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E18', 'Total of both ranges:') + ->setCellValue('F18', '=SUM(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E19', 'Maximum of both ranges:') + ->setCellValue('F19', '=MAX(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E20', 'Minimum of both ranges:') + ->setCellValue('F20', '=MIN(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E21', 'Average of both ranges:') + ->setCellValue('F21', '=AVERAGE(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E22', 'Median of both ranges:') + ->setCellValue('F22', '=MEDIAN(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E23', 'Mode of both ranges:') + ->setCellValue('F23', '=MODE(B2:C12)'); + + +// Calculated data +echo date('H:i:s') , " Calculated data" , EOL; +for ($col = 'B'; $col != 'G'; ++$col) { + for($row = 14; $row <= 41; ++$row) { + if ((!is_null($formula = $objPHPExcel->getActiveSheet()->getCell($col.$row)->getValue())) && + ($formula[0] == '=')) { + echo 'Value of ' , $col , $row , ' [' , $formula , ']: ' , + $objPHPExcel->getActiveSheet()->getCell($col.$row)->getCalculatedValue() . EOL; + } + } +} + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); + +// +// If we set Pre Calculated Formulas to true then PHPExcel will calculate all formulae in the +// workbook before saving. This adds time and memory overhead, and can cause some problems with formulae +// using functions or features (such as array formulae) that aren't yet supported by the calculation engine +// If the value is false (the default) for the Excel2007 Writer, then MS Excel (or the application used to +// open the file) will need to recalculate values itself to guarantee that the correct results are available. +// +//$objWriter->setPreCalculateFormulas(true); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/13calculationCyclicFormulae.php b/site/config/PHPExcel-1.8/Examples/13calculationCyclicFormulae.php new file mode 100644 index 0000000..8512a3e --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/13calculationCyclicFormulae.php @@ -0,0 +1,97 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2014 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Add some data, we will use some formulas here +echo date('H:i:s') , " Add some data and formulas" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('A1', '=B1') + ->setCellValue('A2', '=B2+1') + ->setCellValue('B1', '=A1+1') + ->setCellValue('B2', '=A2'); + +PHPExcel_Calculation::getInstance($objPHPExcel)->cyclicFormulaCount = 100; + +// Calculated data +echo date('H:i:s') , " Calculated data" , EOL; +for($row = 1; $row <= 2; ++$row) { + for ($col = 'A'; $col != 'C'; ++$col) { + if ((!is_null($formula = $objPHPExcel->getActiveSheet()->getCell($col.$row)->getValue())) && + ($formula[0] == '=')) { + echo 'Value of ' , $col , $row , ' [' , $formula , ']: ' , + $objPHPExcel->getActiveSheet()->getCell($col.$row)->getCalculatedValue() . EOL; + } + } +} + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); + +// +// If we set Pre Calculated Formulas to true then PHPExcel will calculate all formulae in the +// workbook before saving. This adds time and memory overhead, and can cause some problems with formulae +// using functions or features (such as array formulae) that aren't yet supported by the calculation engine +// If the value is false (the default) for the Excel2007 Writer, then MS Excel (or the application used to +// open the file) will need to recalculate values itself to guarantee that the correct results are available. +// +//$objWriter->setPreCalculateFormulas(true); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/14excel5.php b/site/config/PHPExcel-1.8/Examples/14excel5.php new file mode 100644 index 0000000..7a9f685 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/14excel5.php @@ -0,0 +1,63 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +include "05featuredemo.inc.php"; + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/15datavalidation-xls.php b/site/config/PHPExcel-1.8/Examples/15datavalidation-xls.php new file mode 100644 index 0000000..3f0afde --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/15datavalidation-xls.php @@ -0,0 +1,155 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Cell B3 and B5 contain data validation...") + ->setCellValue('A3', "Number:") + ->setCellValue('B3', "10") + ->setCellValue('A5', "List:") + ->setCellValue('B5', "Item A") + ->setCellValue('A7', "List #2:") + ->setCellValue('B7', "Item #2") + ->setCellValue('D2', "Item #1") + ->setCellValue('D3', "Item #2") + ->setCellValue('D4', "Item #3") + ->setCellValue('D5', "Item #4") + ->setCellValue('D6', "Item #5") + ->setCellValue('A9', 'Text:') + ; + + +// Set data validation +echo date('H:i:s') , " Set data validation" , EOL; +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B3')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_WHOLE ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_STOP ); +$objValidation->setAllowBlank(true); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Only numbers between 10 and 20 are allowed!'); +$objValidation->setPromptTitle('Allowed input'); +$objValidation->setPrompt('Only numbers between 10 and 20 are allowed.'); +$objValidation->setFormula1(10); +$objValidation->setFormula2(20); + +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B5')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION ); +$objValidation->setAllowBlank(false); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setShowDropDown(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Value is not in list.'); +$objValidation->setPromptTitle('Pick from list'); +$objValidation->setPrompt('Please pick a value from the drop-down list.'); +$objValidation->setFormula1('"Item A,Item B,Item C"'); // Make sure to put the list items between " and " !!! + +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B7')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION ); +$objValidation->setAllowBlank(false); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setShowDropDown(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Value is not in list.'); +$objValidation->setPromptTitle('Pick from list'); +$objValidation->setPrompt('Please pick a value from the drop-down list.'); +$objValidation->setFormula1('$D$2:$D$6'); // Make sure NOT to put a range of cells or a formula between " and " !!! + +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B9')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_TEXTLENGTH ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_STOP ); +$objValidation->setAllowBlank(true); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Text exceeds maximum length'); +$objValidation->setPromptTitle('Allowed input'); +$objValidation->setPrompt('Maximum text length is 6 characters.'); +$objValidation->setFormula1(6); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/15datavalidation.php b/site/config/PHPExcel-1.8/Examples/15datavalidation.php new file mode 100644 index 0000000..132063d --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/15datavalidation.php @@ -0,0 +1,156 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Cell B3 and B5 contain data validation...") + ->setCellValue('A3', "Number:") + ->setCellValue('B3', "10") + ->setCellValue('A5', "List:") + ->setCellValue('B5', "Item A") + ->setCellValue('A7', "List #2:") + ->setCellValue('B7', "Item #2") + ->setCellValue('D2', "Item #1") + ->setCellValue('D3', "Item #2") + ->setCellValue('D4', "Item #3") + ->setCellValue('D5', "Item #4") + ->setCellValue('D6', "Item #5") + ->setCellValue('A9', 'Text:') + ; + + +// Set data validation +echo date('H:i:s') , " Set data validation" , EOL; +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B3')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_WHOLE ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_STOP ); +$objValidation->setAllowBlank(true); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Only numbers between 10 and 20 are allowed!'); +$objValidation->setPromptTitle('Allowed input'); +$objValidation->setPrompt('Only numbers between 10 and 20 are allowed.'); +$objValidation->setFormula1(10); +$objValidation->setFormula2(20); + +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B5')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION ); +$objValidation->setAllowBlank(false); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setShowDropDown(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Value is not in list.'); +$objValidation->setPromptTitle('Pick from list'); +$objValidation->setPrompt('Please pick a value from the drop-down list.'); +$objValidation->setFormula1('"Item A,Item B,Item C"'); // Make sure to put the list items between " and " if your list is simply a comma-separated list of values !!! + + +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B7')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION ); +$objValidation->setAllowBlank(false); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setShowDropDown(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Value is not in list.'); +$objValidation->setPromptTitle('Pick from list'); +$objValidation->setPrompt('Please pick a value from the drop-down list.'); +$objValidation->setFormula1('$D$2:$D$6'); // Make sure NOT to put a range of cells or a formula between " and " !!! + +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B9')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_TEXTLENGTH ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_STOP ); +$objValidation->setAllowBlank(true); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Text exceeds maximum length'); +$objValidation->setPromptTitle('Allowed input'); +$objValidation->setPrompt('Maximum text length is 6 characters.'); +$objValidation->setFormula1(6); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/16csv.php b/site/config/PHPExcel-1.8/Examples/16csv.php new file mode 100644 index 0000000..8d42fcb --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/16csv.php @@ -0,0 +1,105 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +include "05featuredemo.inc.php"; + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Write to CSV format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV')->setDelimiter(',') + ->setEnclosure('"') + ->setSheetIndex(0) + ->save(str_replace('.php', '.csv', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo date('H:i:s') , " File written to " , str_replace('.php', '.csv', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Read from CSV format" , EOL; +$callStartTime = microtime(true); +$objReader = PHPExcel_IOFactory::createReader('CSV')->setDelimiter(',') + ->setEnclosure('"') + ->setSheetIndex(0); +$objPHPExcelFromCSV = $objReader->load(str_replace('.php', '.csv', __FILE__)); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to reload Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter2007 = PHPExcel_IOFactory::createWriter($objPHPExcelFromCSV, 'Excel2007'); +$objWriter2007->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Write to CSV format" , EOL; +$callStartTime = microtime(true); + +$objWriterCSV = PHPExcel_IOFactory::createWriter($objPHPExcelFromCSV, 'CSV'); +$objWriterCSV->setExcelCompatibility(true); +$objWriterCSV->save(str_replace('.php', '_excel.csv', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo date('H:i:s') , " File written to " , str_replace('.php', '_excel.csv', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/17html.php b/site/config/PHPExcel-1.8/Examples/17html.php new file mode 100644 index 0000000..b84f8d4 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/17html.php @@ -0,0 +1,64 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +include "05featuredemo.inc.php"; + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Write to HTML format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'HTML'); +$objWriter->setSheetIndex(0); +//$objWriter->setImagesRoot('http://www.example.com'); +$objWriter->save(str_replace('.php', '.htm', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo date('H:i:s') , " File written to " , str_replace('.php', '.htm', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/18extendedcalculation.php b/site/config/PHPExcel-1.8/Examples/18extendedcalculation.php new file mode 100644 index 0000000..59aeb30 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/18extendedcalculation.php @@ -0,0 +1,108 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// List functions +echo date('H:i:s') . " List implemented functions\n"; +$objCalc = PHPExcel_Calculation::getInstance(); +print_r($objCalc->listFunctionNames()); + +// Create new PHPExcel object +echo date('H:i:s') . " Create new PHPExcel object\n"; +$objPHPExcel = new PHPExcel(); + +// Add some data, we will use some formulas here +echo date('H:i:s') . " Add some data\n"; +$objPHPExcel->getActiveSheet()->setCellValue('A14', 'Count:'); + +$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Range 1'); +$objPHPExcel->getActiveSheet()->setCellValue('B2', 2); +$objPHPExcel->getActiveSheet()->setCellValue('B3', 8); +$objPHPExcel->getActiveSheet()->setCellValue('B4', 10); +$objPHPExcel->getActiveSheet()->setCellValue('B5', True); +$objPHPExcel->getActiveSheet()->setCellValue('B6', False); +$objPHPExcel->getActiveSheet()->setCellValue('B7', 'Text String'); +$objPHPExcel->getActiveSheet()->setCellValue('B9', '22'); +$objPHPExcel->getActiveSheet()->setCellValue('B10', 4); +$objPHPExcel->getActiveSheet()->setCellValue('B11', 6); +$objPHPExcel->getActiveSheet()->setCellValue('B12', 12); + +$objPHPExcel->getActiveSheet()->setCellValue('B14', '=COUNT(B2:B12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Range 2'); +$objPHPExcel->getActiveSheet()->setCellValue('C2', 1); +$objPHPExcel->getActiveSheet()->setCellValue('C3', 2); +$objPHPExcel->getActiveSheet()->setCellValue('C4', 2); +$objPHPExcel->getActiveSheet()->setCellValue('C5', 3); +$objPHPExcel->getActiveSheet()->setCellValue('C6', 3); +$objPHPExcel->getActiveSheet()->setCellValue('C7', 3); +$objPHPExcel->getActiveSheet()->setCellValue('C8', '0'); +$objPHPExcel->getActiveSheet()->setCellValue('C9', 4); +$objPHPExcel->getActiveSheet()->setCellValue('C10', 4); +$objPHPExcel->getActiveSheet()->setCellValue('C11', 4); +$objPHPExcel->getActiveSheet()->setCellValue('C12', 4); + +$objPHPExcel->getActiveSheet()->setCellValue('C14', '=COUNT(C2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('D1', 'Range 3'); +$objPHPExcel->getActiveSheet()->setCellValue('D2', 2); +$objPHPExcel->getActiveSheet()->setCellValue('D3', 3); +$objPHPExcel->getActiveSheet()->setCellValue('D4', 4); + +$objPHPExcel->getActiveSheet()->setCellValue('D5', '=((D2 * D3) + D4) & " should be 10"'); + +$objPHPExcel->getActiveSheet()->setCellValue('E1', 'Other functions'); +$objPHPExcel->getActiveSheet()->setCellValue('E2', '=PI()'); +$objPHPExcel->getActiveSheet()->setCellValue('E3', '=RAND()'); +$objPHPExcel->getActiveSheet()->setCellValue('E4', '=RANDBETWEEN(5, 10)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E14', 'Count of both ranges:'); +$objPHPExcel->getActiveSheet()->setCellValue('F14', '=COUNT(B2:C12)'); + +// Calculated data +echo date('H:i:s') . " Calculated data\n"; +echo 'Value of B14 [=COUNT(B2:B12)]: ' . $objPHPExcel->getActiveSheet()->getCell('B14')->getCalculatedValue() . "\r\n"; + + +// Echo memory peak usage +echo date('H:i:s') . " Peak memory usage: " . (memory_get_peak_usage(true) / 1024 / 1024) . " MB\r\n"; + +// Echo done +echo date('H:i:s') . " Done" , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/19namedrange.php b/site/config/PHPExcel-1.8/Examples/19namedrange.php new file mode 100644 index 0000000..7876ea5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/19namedrange.php @@ -0,0 +1,129 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Firstname:') + ->setCellValue('A2', 'Lastname:') + ->setCellValue('A3', 'Fullname:') + ->setCellValue('B1', 'Maarten') + ->setCellValue('B2', 'Balliauw') + ->setCellValue('B3', '=B1 & " " & B2'); + +// Define named ranges +echo date('H:i:s') , " Define named ranges" , EOL; +$objPHPExcel->addNamedRange( new PHPExcel_NamedRange('PersonName', $objPHPExcel->getActiveSheet(), 'B1') ); +$objPHPExcel->addNamedRange( new PHPExcel_NamedRange('PersonLN', $objPHPExcel->getActiveSheet(), 'B2') ); + +// Rename named ranges +echo date('H:i:s') , " Rename named ranges" , EOL; +$objPHPExcel->getNamedRange('PersonName')->setName('PersonFN'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Person'); + + +// Create a new worksheet, after the default sheet +echo date('H:i:s') , " Create new Worksheet object" , EOL; +$objPHPExcel->createSheet(); + +// Add some data to the second sheet, resembling some different data types +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(1); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Firstname:') + ->setCellValue('A2', 'Lastname:') + ->setCellValue('A3', 'Fullname:') + ->setCellValue('B1', '=PersonFN') + ->setCellValue('B2', '=PersonLN') + ->setCellValue('B3', '=PersonFN & " " & PersonLN'); + +// Resolve range +echo date('H:i:s') , " Resolve range" , EOL; +echo 'Cell B1 {=PersonFN}: ' , $objPHPExcel->getActiveSheet()->getCell('B1')->getCalculatedValue() , EOL; +echo 'Cell B3 {=PersonFN & " " & PersonLN}: ' , $objPHPExcel->getActiveSheet()->getCell('B3')->getCalculatedValue() , EOL; +echo 'Cell Person!B1: ' , $objPHPExcel->getActiveSheet()->getCell('Person!B1')->getCalculatedValue() , EOL; + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Person (cloned)'); + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/20readexcel5.php b/site/config/PHPExcel-1.8/Examples/20readexcel5.php new file mode 100644 index 0000000..e26fe7e --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/20readexcel5.php @@ -0,0 +1,79 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +if (!file_exists("14excel5.xls")) { + exit("Please run 14excel5.php first.\n"); +} + +echo date('H:i:s') , " Load workbook from Excel5 file" , EOL; +$callStartTime = microtime(true); + +$objPHPExcel = PHPExcel_IOFactory::load("14excel5.xls"); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo 'Call time to load Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done reading file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/21pdf.php b/site/config/PHPExcel-1.8/Examples/21pdf.php new file mode 100644 index 0000000..b26ddb8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/21pdf.php @@ -0,0 +1,94 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +include "05featuredemo.inc.php"; + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +// Change these values to select the Rendering library that you wish to use +// and its directory location on your server +//$rendererName = PHPExcel_Settings::PDF_RENDERER_TCPDF; +//$rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF; +$rendererName = PHPExcel_Settings::PDF_RENDERER_DOMPDF; +//$rendererLibrary = 'tcPDF5.9'; +//$rendererLibrary = 'mPDF5.4'; +$rendererLibrary = 'domPDF0.6.0beta3'; +$rendererLibraryPath = '/php/libraries/PDF/' . $rendererLibrary; + + +echo date('H:i:s') , " Hide grid lines" , EOL; +$objPHPExcel->getActiveSheet()->setShowGridLines(false); + +echo date('H:i:s') , " Set orientation to landscape" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE); + + +echo date('H:i:s') , " Write to PDF format using {$rendererName}" , EOL; + +if (!PHPExcel_Settings::setPdfRenderer( + $rendererName, + $rendererLibraryPath + )) { + die( + 'NOTICE: Please set the $rendererName and $rendererLibraryPath values' . + EOL . + 'at the top of this script as appropriate for your directory structure' + ); +} + + +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF'); +$objWriter->setSheetIndex(0); +$objWriter->save(str_replace('.php', '_'.$rendererName.'.pdf', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo date('H:i:s') , " File written to " , str_replace('.php', '_'.$rendererName.'.pdf', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/22heavilyformatted.php b/site/config/PHPExcel-1.8/Examples/22heavilyformatted.php new file mode 100644 index 0000000..98c7d18 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/22heavilyformatted.php @@ -0,0 +1,116 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); + +$objPHPExcel->getActiveSheet()->getStyle('A1:T100')->applyFromArray( + array('fill' => array( + 'type' => PHPExcel_Style_Fill::FILL_SOLID, + 'color' => array('argb' => 'FFCCFFCC') + ), + 'borders' => array( + 'bottom' => array('style' => PHPExcel_Style_Border::BORDER_THIN), + 'right' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM) + ) + ) + ); + +$objPHPExcel->getActiveSheet()->getStyle('C5:R95')->applyFromArray( + array('fill' => array( + 'type' => PHPExcel_Style_Fill::FILL_SOLID, + 'color' => array('argb' => 'FFFFFF00') + ), + ) + ); + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/23sharedstyles.php b/site/config/PHPExcel-1.8/Examples/23sharedstyles.php new file mode 100644 index 0000000..22eadba --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/23sharedstyles.php @@ -0,0 +1,124 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); + +$sharedStyle1 = new PHPExcel_Style(); +$sharedStyle2 = new PHPExcel_Style(); + +$sharedStyle1->applyFromArray( + array('fill' => array( + 'type' => PHPExcel_Style_Fill::FILL_SOLID, + 'color' => array('argb' => 'FFCCFFCC') + ), + 'borders' => array( + 'bottom' => array('style' => PHPExcel_Style_Border::BORDER_THIN), + 'right' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM) + ) + )); + +$sharedStyle2->applyFromArray( + array('fill' => array( + 'type' => PHPExcel_Style_Fill::FILL_SOLID, + 'color' => array('argb' => 'FFFFFF00') + ), + 'borders' => array( + 'bottom' => array('style' => PHPExcel_Style_Border::BORDER_THIN), + 'right' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM) + ) + )); + +$objPHPExcel->getActiveSheet()->setSharedStyle($sharedStyle1, "A1:T100"); +$objPHPExcel->getActiveSheet()->setSharedStyle($sharedStyle2, "C5:R95"); + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/24readfilter.php b/site/config/PHPExcel-1.8/Examples/24readfilter.php new file mode 100644 index 0000000..000d180 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/24readfilter.php @@ -0,0 +1,77 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +// Check prerequisites +if (!file_exists("06largescale.xlsx")) { + exit("Please run 06largescale.php first.\n"); +} + +class MyReadFilter implements PHPExcel_Reader_IReadFilter +{ + public function readCell($column, $row, $worksheetName = '') { + // Read title row and rows 20 - 30 + if ($row == 1 || ($row >= 20 && $row <= 30)) { + return true; + } + + return false; + } +} + + +echo date('H:i:s') , " Load from Excel2007 file" , EOL; +$objReader = PHPExcel_IOFactory::createReader('Excel2007'); +$objReader->setReadFilter( new MyReadFilter() ); +$objPHPExcel = $objReader->load("06largescale.xlsx"); + +echo date('H:i:s') , " Remove unnecessary rows" , EOL; +$objPHPExcel->getActiveSheet()->removeRow(2, 18); + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/25inmemoryimage.php b/site/config/PHPExcel-1.8/Examples/25inmemoryimage.php new file mode 100644 index 0000000..6c3b0b8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/25inmemoryimage.php @@ -0,0 +1,89 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + +// Generate an image +echo date('H:i:s') , " Generate an image" , EOL; +$gdImage = @imagecreatetruecolor(120, 20) or die('Cannot Initialize new GD image stream'); +$textColor = imagecolorallocate($gdImage, 255, 255, 255); +imagestring($gdImage, 1, 5, 5, 'Created with PHPExcel', $textColor); + +// Add a drawing to the worksheet +echo date('H:i:s') , " Add a drawing to the worksheet" , EOL; +$objDrawing = new PHPExcel_Worksheet_MemoryDrawing(); +$objDrawing->setName('Sample image'); +$objDrawing->setDescription('Sample image'); +$objDrawing->setImageResource($gdImage); +$objDrawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG); +$objDrawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT); +$objDrawing->setHeight(36); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +echo date('H:i:s') , " Write to HTML format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'HTML'); +$objWriter->save(str_replace('.php', '.html', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.html', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/26utf8.php b/site/config/PHPExcel-1.8/Examples/26utf8.php new file mode 100644 index 0000000..112c5c7 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/26utf8.php @@ -0,0 +1,122 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Change these values to select the PDF Rendering library that you wish to use +// and its directory location on your server +//$rendererName = PHPExcel_Settings::PDF_RENDERER_TCPDF; +//$rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF; +$rendererName = PHPExcel_Settings::PDF_RENDERER_DOMPDF; +//$rendererLibrary = 'tcPDF5.9'; +//$rendererLibrary = 'mPDF5.4'; +$rendererLibrary = 'domPDF0.6.0beta3'; +$rendererLibraryPath = '/php/libraries/PDF/' . $rendererLibrary; + + +// Read from Excel2007 (.xlsx) template +echo date('H:i:s') , " Load Excel2007 template file" , EOL; +$objReader = PHPExcel_IOFactory::createReader('Excel2007'); +$objPHPExcel = $objReader->load("templates/26template.xlsx"); + +/** at this point, we could do some manipulations with the template, but we skip this step */ + +// Export to Excel2007 (.xlsx) +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Export to Excel5 (.xls) +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Export to HTML (.html) +echo date('H:i:s') , " Write to HTML format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'HTML'); +$objWriter->save(str_replace('.php', '.htm', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.htm', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Export to PDF (.pdf) +echo date('H:i:s') , " Write to PDF format" , EOL; +try { + if (!PHPExcel_Settings::setPdfRenderer( + $rendererName, + $rendererLibraryPath + )) { + echo ( + 'NOTICE: Please set the $rendererName and $rendererLibraryPath values' . + EOL . + 'at the top of this script as appropriate for your directory structure' . + EOL + ); + } else { + $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF'); + $objWriter->save(str_replace('.php', '.pdf', __FILE__)); + echo date('H:i:s') , " File written to " , str_replace('.php', '.pdf', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + } +} catch (Exception $e) { + echo date('H:i:s') , ' EXCEPTION: ', $e->getMessage() , EOL; +} + +// Remove first two rows with field headers before exporting to CSV +echo date('H:i:s') , " Removing first two heading rows for CSV export" , EOL; +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->removeRow(1, 2); + +// Export to CSV (.csv) +echo date('H:i:s') , " Write to CSV format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV'); +$objWriter->save(str_replace('.php', '.csv', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.csv', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Export to CSV with BOM (.csv) +echo date('H:i:s') , " Write to CSV format (with BOM)" , EOL; +$objWriter->setUseBOM(true); +$objWriter->save(str_replace('.php', '-bom.csv', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '-bom.csv', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/27imagesexcel5.php b/site/config/PHPExcel-1.8/Examples/27imagesexcel5.php new file mode 100644 index 0000000..a4f6a9d --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/27imagesexcel5.php @@ -0,0 +1,64 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Read from Excel5 (.xls) template +echo date('H:i:s') , " Load Excel2007 template file" , EOL; +$objReader = PHPExcel_IOFactory::createReader('Excel5'); +$objPHPExcel = $objReader->load("templates/27template.xls"); + +// Export to Excel2007 (.xlsx) +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Export to Excel5 (.xls) +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/28iterator.php b/site/config/PHPExcel-1.8/Examples/28iterator.php new file mode 100644 index 0000000..1ba9cbe --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/28iterator.php @@ -0,0 +1,82 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Load from Excel2007 file" , EOL; +$objReader = PHPExcel_IOFactory::createReader('Excel2007'); +$objPHPExcel = $objReader->load("./templates/28iterators.xlsx"); + +echo date('H:i:s') , " Iterate worksheets by Row" , EOL; +foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) { + echo 'Worksheet - ' , $worksheet->getTitle() , EOL; + + foreach ($worksheet->getRowIterator() as $row) { + echo ' Row number - ' , $row->getRowIndex() , EOL; + + $cellIterator = $row->getCellIterator(); + $cellIterator->setIterateOnlyExistingCells(false); // Loop all cells, even if it is not set + foreach ($cellIterator as $cell) { + if (!is_null($cell)) { + echo ' Cell - ' , $cell->getCoordinate() , ' - ' , $cell->getCalculatedValue() , EOL; + } + } + } +} + + +echo date('H:i:s') , " Iterate worksheets by Column" , EOL; +foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) { + echo 'Worksheet - ' , $worksheet->getTitle() , EOL; + + foreach ($worksheet->getColumnIterator() as $column) { + echo ' Column index - ' , $column->getColumnIndex() , EOL; + + $cellIterator = $column->getCellIterator(); + $cellIterator->setIterateOnlyExistingCells(true); // Loop all cells, even if it is not set + foreach ($cellIterator as $cell) { + if (!is_null($cell)) { + echo ' Cell - ' , $cell->getCoordinate() , ' - ' , $cell->getCalculatedValue() , EOL; + } + } + } +} + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/29advancedvaluebinder.php b/site/config/PHPExcel-1.8/Examples/29advancedvaluebinder.php new file mode 100644 index 0000000..a172c6c --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/29advancedvaluebinder.php @@ -0,0 +1,183 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Set timezone +echo date('H:i:s') , " Set timezone" , EOL; +date_default_timezone_set('UTC'); + +// Set value binder +echo date('H:i:s') , " Set value binder" , EOL; +PHPExcel_Cell::setValueBinder( new PHPExcel_Cell_AdvancedValueBinder() ); + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + +// Set default font +echo date('H:i:s') , " Set default font" , EOL; +$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setName('Arial'); +$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10); + +// Set column widths +echo date('H:i:s') , " Set column widths" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setAutoSize(true); +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(14); + +// Add some data, resembling some different data types +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'String value:') + ->setCellValue('B1', 'Mark Baker'); + +$objPHPExcel->getActiveSheet()->setCellValue('A2', 'Numeric value #1:') + ->setCellValue('B2', 12345); + +$objPHPExcel->getActiveSheet()->setCellValue('A3', 'Numeric value #2:') + ->setCellValue('B3', -12.345); + +$objPHPExcel->getActiveSheet()->setCellValue('A4', 'Numeric value #3:') + ->setCellValue('B4', .12345); + +$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Numeric value #4:') + ->setCellValue('B5', '12345'); + +$objPHPExcel->getActiveSheet()->setCellValue('A6', 'Numeric value #5:') + ->setCellValue('B6', '1.2345'); + +$objPHPExcel->getActiveSheet()->setCellValue('A7', 'Numeric value #6:') + ->setCellValue('B7', '.12345'); + +$objPHPExcel->getActiveSheet()->setCellValue('A8', 'Numeric value #7:') + ->setCellValue('B8', '1.234e-5'); + +$objPHPExcel->getActiveSheet()->setCellValue('A9', 'Numeric value #8:') + ->setCellValue('B9', '-1.234e+5'); + +$objPHPExcel->getActiveSheet()->setCellValue('A10', 'Boolean value:') + ->setCellValue('B10', 'TRUE'); + +$objPHPExcel->getActiveSheet()->setCellValue('A11', 'Percentage value #1:') + ->setCellValue('B11', '10%'); + +$objPHPExcel->getActiveSheet()->setCellValue('A12', 'Percentage value #2:') + ->setCellValue('B12', '12.5%'); + +$objPHPExcel->getActiveSheet()->setCellValue('A13', 'Fraction value #1:') + ->setCellValue('B13', '-1/2'); + +$objPHPExcel->getActiveSheet()->setCellValue('A14', 'Fraction value #2:') + ->setCellValue('B14', '3 1/2'); + +$objPHPExcel->getActiveSheet()->setCellValue('A15', 'Fraction value #3:') + ->setCellValue('B15', '-12 3/4'); + +$objPHPExcel->getActiveSheet()->setCellValue('A16', 'Fraction value #4:') + ->setCellValue('B16', '13/4'); + +$objPHPExcel->getActiveSheet()->setCellValue('A17', 'Currency value #1:') + ->setCellValue('B17', '$12345'); + +$objPHPExcel->getActiveSheet()->setCellValue('A18', 'Currency value #2:') + ->setCellValue('B18', '$12345.67'); + +$objPHPExcel->getActiveSheet()->setCellValue('A19', 'Currency value #3:') + ->setCellValue('B19', '$12,345.67'); + +$objPHPExcel->getActiveSheet()->setCellValue('A20', 'Date value #1:') + ->setCellValue('B20', '21 December 1983'); + +$objPHPExcel->getActiveSheet()->setCellValue('A21', 'Date value #2:') + ->setCellValue('B21', '19-Dec-1960'); + +$objPHPExcel->getActiveSheet()->setCellValue('A22', 'Date value #3:') + ->setCellValue('B22', '07/12/1982'); + +$objPHPExcel->getActiveSheet()->setCellValue('A23', 'Date value #4:') + ->setCellValue('B23', '24-11-1950'); + +$objPHPExcel->getActiveSheet()->setCellValue('A24', 'Date value #5:') + ->setCellValue('B24', '17-Mar'); + +$objPHPExcel->getActiveSheet()->setCellValue('A25', 'Time value #1:') + ->setCellValue('B25', '01:30'); + +$objPHPExcel->getActiveSheet()->setCellValue('A26', 'Time value #2:') + ->setCellValue('B26', '01:30:15'); + +$objPHPExcel->getActiveSheet()->setCellValue('A27', 'Date/Time value:') + ->setCellValue('B27', '19-Dec-1960 01:30'); + +$objPHPExcel->getActiveSheet()->setCellValue('A28', 'Formula:') + ->setCellValue('B28', '=SUM(B2:B9)'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Advanced value binder'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/30template.php b/site/config/PHPExcel-1.8/Examples/30template.php new file mode 100644 index 0000000..1d9847a --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/30template.php @@ -0,0 +1,91 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + + +echo date('H:i:s') , " Load from Excel5 template" , EOL; +$objReader = PHPExcel_IOFactory::createReader('Excel5'); +$objPHPExcel = $objReader->load("templates/30template.xls"); + + + + +echo date('H:i:s') , " Add new data to the template" , EOL; +$data = array(array('title' => 'Excel for dummies', + 'price' => 17.99, + 'quantity' => 2 + ), + array('title' => 'PHP for dummies', + 'price' => 15.99, + 'quantity' => 1 + ), + array('title' => 'Inside OOP', + 'price' => 12.95, + 'quantity' => 1 + ) + ); + +$objPHPExcel->getActiveSheet()->setCellValue('D1', PHPExcel_Shared_Date::PHPToExcel(time())); + +$baseRow = 5; +foreach($data as $r => $dataRow) { + $row = $baseRow + $r; + $objPHPExcel->getActiveSheet()->insertNewRowBefore($row,1); + + $objPHPExcel->getActiveSheet()->setCellValue('A'.$row, $r+1) + ->setCellValue('B'.$row, $dataRow['title']) + ->setCellValue('C'.$row, $dataRow['price']) + ->setCellValue('D'.$row, $dataRow['quantity']) + ->setCellValue('E'.$row, '=C'.$row.'*D'.$row); +} +$objPHPExcel->getActiveSheet()->removeRow($baseRow-1,1); + + +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/31docproperties_write-xls.php b/site/config/PHPExcel-1.8/Examples/31docproperties_write-xls.php new file mode 100644 index 0000000..4494867 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/31docproperties_write-xls.php @@ -0,0 +1,119 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$inputFileType = 'Excel5'; +$inputFileName = 'templates/31docproperties.xls'; + + +echo date('H:i:s') , " Load Tests from $inputFileType file" , EOL; +$callStartTime = microtime(true); + +$objPHPExcelReader = PHPExcel_IOFactory::createReader($inputFileType); +$objPHPExcel = $objPHPExcelReader->load($inputFileName); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Adjust properties" , EOL; +$objPHPExcel->getProperties()->setTitle("Office 95 XLS Test Document") + ->setSubject("Office 95 XLS Test Document") + ->setDescription("Test XLS document, generated using PHPExcel") + ->setKeywords("office 95 biff php"); + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " . (memory_get_peak_usage(true) / 1024 / 1024) . " MB" , EOL; + + +echo EOL; +// Reread File +echo date('H:i:s') , " Reread Excel5 file" , EOL; +$objPHPExcelRead = PHPExcel_IOFactory::load(str_replace('.php', '.xls', __FILE__)); + +// Set properties +echo date('H:i:s') , " Get properties" , EOL; + +echo 'Core Properties:' , EOL; +echo ' Created by - ' , $objPHPExcel->getProperties()->getCreator() , EOL; +echo ' Created on - ' , date('d-M-Y',$objPHPExcel->getProperties()->getCreated()) , ' at ' , + date('H:i:s',$objPHPExcel->getProperties()->getCreated()) , EOL; +echo ' Last Modified by - ' , $objPHPExcel->getProperties()->getLastModifiedBy() , EOL; +echo ' Last Modified on - ' , date('d-M-Y',$objPHPExcel->getProperties()->getModified()) , ' at ' , + date('H:i:s',$objPHPExcel->getProperties()->getModified()) , EOL; +echo ' Title - ' , $objPHPExcel->getProperties()->getTitle() , EOL; +echo ' Subject - ' , $objPHPExcel->getProperties()->getSubject() , EOL; +echo ' Description - ' , $objPHPExcel->getProperties()->getDescription() , EOL; +echo ' Keywords: - ' , $objPHPExcel->getProperties()->getKeywords() , EOL; + + +echo 'Extended (Application) Properties:' , EOL; +echo ' Category - ' , $objPHPExcel->getProperties()->getCategory() , EOL; +echo ' Company - ' , $objPHPExcel->getProperties()->getCompany() , EOL; +echo ' Manager - ' , $objPHPExcel->getProperties()->getManager() , EOL; + + +echo 'Custom Properties:' , EOL; +$customProperties = $objPHPExcel->getProperties()->getCustomProperties(); +foreach($customProperties as $customProperty) { + $propertyValue = $objPHPExcel->getProperties()->getCustomPropertyValue($customProperty); + $propertyType = $objPHPExcel->getProperties()->getCustomPropertyType($customProperty); + echo ' ' , $customProperty , ' - (' , $propertyType , ') - '; + if ($propertyType == PHPExcel_DocumentProperties::PROPERTY_TYPE_DATE) { + echo date('d-M-Y H:i:s',$propertyValue) , EOL; + } elseif ($propertyType == PHPExcel_DocumentProperties::PROPERTY_TYPE_BOOLEAN) { + echo (($propertyValue) ? 'TRUE' : 'FALSE') , EOL; + } else { + echo $propertyValue , EOL; + } +} + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) . " MB" , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/31docproperties_write.php b/site/config/PHPExcel-1.8/Examples/31docproperties_write.php new file mode 100644 index 0000000..a7c496a --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/31docproperties_write.php @@ -0,0 +1,119 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$inputFileType = 'Excel2007'; +$inputFileName = 'templates/31docproperties.xlsx'; + + +echo date('H:i:s') , " Load Tests from $inputFileType file" , EOL; +$callStartTime = microtime(true); + +$objPHPExcelReader = PHPExcel_IOFactory::createReader($inputFileType); +$objPHPExcel = $objPHPExcelReader->load($inputFileName); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Adjust properties" , EOL; +$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test XLSX document, generated using PHPExcel") + ->setKeywords("office 2007 openxml php"); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " . (memory_get_peak_usage(true) / 1024 / 1024) . " MB" , EOL; + + +echo EOL; +// Reread File +echo date('H:i:s') , " Reread Excel2007 file" , EOL; +$objPHPExcelRead = PHPExcel_IOFactory::load(str_replace('.php', '.xlsx', __FILE__)); + +// Set properties +echo date('H:i:s') , " Get properties" , EOL; + +echo 'Core Properties:' , EOL; +echo ' Created by - ' , $objPHPExcel->getProperties()->getCreator() , EOL; +echo ' Created on - ' , date('d-M-Y',$objPHPExcel->getProperties()->getCreated()) , ' at ' , + date('H:i:s',$objPHPExcel->getProperties()->getCreated()) , EOL; +echo ' Last Modified by - ' , $objPHPExcel->getProperties()->getLastModifiedBy() , EOL; +echo ' Last Modified on - ' , date('d-M-Y',$objPHPExcel->getProperties()->getModified()) , ' at ' , + date('H:i:s',$objPHPExcel->getProperties()->getModified()) , EOL; +echo ' Title - ' , $objPHPExcel->getProperties()->getTitle() , EOL; +echo ' Subject - ' , $objPHPExcel->getProperties()->getSubject() , EOL; +echo ' Description - ' , $objPHPExcel->getProperties()->getDescription() , EOL; +echo ' Keywords: - ' , $objPHPExcel->getProperties()->getKeywords() , EOL; + + +echo 'Extended (Application) Properties:' , EOL; +echo ' Category - ' , $objPHPExcel->getProperties()->getCategory() , EOL; +echo ' Company - ' , $objPHPExcel->getProperties()->getCompany() , EOL; +echo ' Manager - ' , $objPHPExcel->getProperties()->getManager() , EOL; + + +echo 'Custom Properties:' , EOL; +$customProperties = $objPHPExcel->getProperties()->getCustomProperties(); +foreach($customProperties as $customProperty) { + $propertyValue = $objPHPExcel->getProperties()->getCustomPropertyValue($customProperty); + $propertyType = $objPHPExcel->getProperties()->getCustomPropertyType($customProperty); + echo ' ' , $customProperty , ' - (' , $propertyType , ') - '; + if ($propertyType == PHPExcel_DocumentProperties::PROPERTY_TYPE_DATE) { + echo date('d-M-Y H:i:s',$propertyValue) , EOL; + } elseif ($propertyType == PHPExcel_DocumentProperties::PROPERTY_TYPE_BOOLEAN) { + echo (($propertyValue) ? 'TRUE' : 'FALSE') , EOL; + } else { + echo $propertyValue , EOL; + } +} + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) . " MB" , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/32chartreadwrite.php b/site/config/PHPExcel-1.8/Examples/32chartreadwrite.php new file mode 100644 index 0000000..55521ec --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/32chartreadwrite.php @@ -0,0 +1,131 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + +$inputFileType = 'Excel2007'; +$inputFileNames = 'templates/32readwrite*[0-9].xlsx'; + +if ((isset($argc)) && ($argc > 1)) { + $inputFileNames = array(); + for($i = 1; $i < $argc; ++$i) { + $inputFileNames[] = dirname(__FILE__) . '/templates/' . $argv[$i]; + } +} else { + $inputFileNames = glob($inputFileNames); +} +foreach($inputFileNames as $inputFileName) { + $inputFileNameShort = basename($inputFileName); + + if (!file_exists($inputFileName)) { + echo date('H:i:s') , " File " , $inputFileNameShort , ' does not exist' , EOL; + continue; + } + + echo date('H:i:s') , " Load Test from $inputFileType file " , $inputFileNameShort , EOL; + + $objReader = PHPExcel_IOFactory::createReader($inputFileType); + $objReader->setIncludeCharts(TRUE); + $objPHPExcel = $objReader->load($inputFileName); + + + echo date('H:i:s') , " Iterate worksheets looking at the charts" , EOL; + foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) { + $sheetName = $worksheet->getTitle(); + echo 'Worksheet: ' , $sheetName , EOL; + + $chartNames = $worksheet->getChartNames(); + if(empty($chartNames)) { + echo ' There are no charts in this worksheet' , EOL; + } else { + natsort($chartNames); + foreach($chartNames as $i => $chartName) { + $chart = $worksheet->getChartByName($chartName); + if (!is_null($chart->getTitle())) { + $caption = '"' . implode(' ',$chart->getTitle()->getCaption()) . '"'; + } else { + $caption = 'Untitled'; + } + echo ' ' , $chartName , ' - ' , $caption , EOL; + echo str_repeat(' ',strlen($chartName)+3); + $groupCount = $chart->getPlotArea()->getPlotGroupCount(); + if ($groupCount == 1) { + $chartType = $chart->getPlotArea()->getPlotGroupByIndex(0)->getPlotType(); + echo ' ' , $chartType , EOL; + } else { + $chartTypes = array(); + for($i = 0; $i < $groupCount; ++$i) { + $chartTypes[] = $chart->getPlotArea()->getPlotGroupByIndex($i)->getPlotType(); + } + $chartTypes = array_unique($chartTypes); + if (count($chartTypes) == 1) { + $chartType = 'Multiple Plot ' . array_pop($chartTypes); + echo ' ' , $chartType , EOL; + } elseif (count($chartTypes) == 0) { + echo ' *** Type not yet implemented' , EOL; + } else { + echo ' Combination Chart' , EOL; + } + } + } + } + } + + + $outputFileName = basename($inputFileName); + + echo date('H:i:s') , " Write Tests to Excel2007 file " , EOL; + $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); + $objWriter->setIncludeCharts(TRUE); + $objWriter->save($outputFileName); + echo date('H:i:s') , " File written to " , $outputFileName , EOL; + + $objPHPExcel->disconnectWorksheets(); + unset($objPHPExcel); +} + +// Echo memory peak usage +echo date('H:i:s') , ' Peak memory usage: ' , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-area.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-area.php new file mode 100644 index 0000000..fac8ce9 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-area.php @@ -0,0 +1,142 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', NULL, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', NULL, 4), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_AREACHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_PERCENT_STACKED, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataSeriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); + +// Set the series in the plot area +$plotArea = new PHPExcel_Chart_PlotArea(NULL, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_TOPRIGHT, NULL, false); + +$title = new PHPExcel_Chart_Title('Test %age-Stacked Area Chart'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotArea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-bar-stacked.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-bar-stacked.php new file mode 100644 index 0000000..af9493f --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-bar-stacked.php @@ -0,0 +1,145 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', NULL, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', NULL, 4), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STACKED, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataSeriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); +// Set additional dataseries parameters +// Make it a horizontal bar rather than a vertical column graph +$series->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_BAR); + +// Set the series in the plot area +$plotArea = new PHPExcel_Chart_PlotArea(NULL, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, NULL, false); + +$title = new PHPExcel_Chart_Title('Test Chart'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotArea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-bar.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-bar.php new file mode 100644 index 0000000..653675d --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-bar.php @@ -0,0 +1,145 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', NULL, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', NULL, 4), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_CLUSTERED, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataSeriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); +// Set additional dataseries parameters +// Make it a horizontal bar rather than a vertical column graph +$series->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_BAR); + +// Set the series in the plot area +$plotArea = new PHPExcel_Chart_PlotArea(NULL, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, NULL, false); + +$title = new PHPExcel_Chart_Title('Test Bar Chart'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotArea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-column-2.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-column-2.php new file mode 100644 index 0000000..0ade332 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-column-2.php @@ -0,0 +1,154 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', '', 'Budget', 'Forecast', 'Actual'), + array('2010', 'Q1', 47, 44, 43 ), + array('', 'Q2', 56, 53, 50 ), + array('', 'Q3', 52, 46, 45 ), + array('', 'Q4', 45, 40, 40 ), + array('2011', 'Q1', 51, 42, 46 ), + array('', 'Q2', 53, 58, 56 ), + array('', 'Q3', 64, 66, 69 ), + array('', 'Q4', 54, 55, 56 ), + array('2012', 'Q1', 49, 52, 58 ), + array('', 'Q2', 68, 73, 86 ), + array('', 'Q3', 72, 78, 0 ), + array('', 'Q4', 50, 60, 0 ), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 'Budget' + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), // 'Forecast' + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$E$1', NULL, 1), // 'Actual' +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$B$13', NULL, 12), // Q1 to Q4 for 2010 to 2012 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$13', NULL, 12), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$13', NULL, 12), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$E$2:$E$13', NULL, 12), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_CLUSTERED, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataSeriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); +// Set additional dataseries parameters +// Make it a vertical column rather than a horizontal bar graph +$series->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_COL); + +// Set the series in the plot area +$plotArea = new PHPExcel_Chart_PlotArea(NULL, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_BOTTOM, NULL, false); + +$title = new PHPExcel_Chart_Title('Test Grouped Column Chart'); +$xAxisLabel = new PHPExcel_Chart_Title('Financial Period'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotArea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + $xAxisLabel, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('G2'); +$chart->setBottomRightPosition('P20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-column.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-column.php new file mode 100644 index 0000000..67f4178 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-column.php @@ -0,0 +1,145 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', NULL, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', NULL, 4), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STANDARD, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataSeriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); +// Set additional dataseries parameters +// Make it a vertical column rather than a horizontal bar graph +$series->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_COL); + +// Set the series in the plot area +$plotArea = new PHPExcel_Chart_PlotArea(NULL, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, NULL, false); + +$title = new PHPExcel_Chart_Title('Test Column Chart'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotArea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-composite.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-composite.php new file mode 100644 index 0000000..be7ad94 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-composite.php @@ -0,0 +1,203 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 'Rainfall (mm)', 'Temperature (°F)', 'Humidity (%)'), + array('Jan', 78, 52, 61), + array('Feb', 64, 54, 62), + array('Mar', 62, 57, 63), + array('Apr', 21, 62, 59), + array('May', 11, 75, 60), + array('Jun', 1, 75, 57), + array('Jul', 1, 79, 56), + array('Aug', 1, 79, 59), + array('Sep', 10, 75, 60), + array('Oct', 40, 68, 63), + array('Nov', 69, 62, 64), + array('Dec', 89, 57, 66), + ) +); + + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels1 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', NULL, 1), // Temperature +); +$dataSeriesLabels2 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // Rainfall +); +$dataSeriesLabels3 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), // Humidity +); + +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$13', NULL, 12), // Jan to Dec +); + + +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues1 = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$13', NULL, 12), +); + +// Build the dataseries +$series1 = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_CLUSTERED, // plotGrouping + range(0, count($dataSeriesValues1)-1), // plotOrder + $dataSeriesLabels1, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues1 // plotValues +); +// Set additional dataseries parameters +// Make it a vertical column rather than a horizontal bar graph +$series1->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_COL); + + +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues2 = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$13', NULL, 12), +); + +// Build the dataseries +$series2 = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_LINECHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STANDARD, // plotGrouping + range(0, count($dataSeriesValues2)-1), // plotOrder + $dataSeriesLabels2, // plotLabel + NULL, // plotCategory + $dataSeriesValues2 // plotValues +); + + +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues3 = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$13', NULL, 12), +); + +// Build the dataseries +$series3 = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_AREACHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STANDARD, // plotGrouping + range(0, count($dataSeriesValues2)-1), // plotOrder + $dataSeriesLabels3, // plotLabel + NULL, // plotCategory + $dataSeriesValues3 // plotValues +); + + +// Set the series in the plot area +$plotArea = new PHPExcel_Chart_PlotArea(NULL, array($series1, $series2, $series3)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, NULL, false); + +$title = new PHPExcel_Chart_Title('Average Weather Chart for Crete'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotArea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + NULL // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('F2'); +$chart->setBottomRightPosition('O16'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-line.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-line.php new file mode 100644 index 0000000..90c2e60 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-line.php @@ -0,0 +1,142 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', NULL, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', NULL, 4), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_LINECHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STACKED, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataSeriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); + +// Set the series in the plot area +$plotArea = new PHPExcel_Chart_PlotArea(NULL, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_TOPRIGHT, NULL, false); + +$title = new PHPExcel_Chart_Title('Test Stacked Line Chart'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotArea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-multiple-charts.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-multiple-charts.php new file mode 100644 index 0000000..0e5ac60 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-multiple-charts.php @@ -0,0 +1,220 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels1 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', NULL, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues1 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues1 = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', NULL, 4), +); + +// Build the dataseries +$series1 = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_AREACHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_PERCENT_STACKED, // plotGrouping + range(0, count($dataSeriesValues1)-1), // plotOrder + $dataSeriesLabels1, // plotLabel + $xAxisTickValues1, // plotCategory + $dataSeriesValues1 // plotValues +); + +// Set the series in the plot area +$plotArea1 = new PHPExcel_Chart_PlotArea(NULL, array($series1)); +// Set the chart legend +$legend1 = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_TOPRIGHT, NULL, false); + +$title1 = new PHPExcel_Chart_Title('Test %age-Stacked Area Chart'); +$yAxisLabel1 = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart1 = new PHPExcel_Chart( + 'chart1', // name + $title1, // title + $legend1, // legend + $plotArea1, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + $yAxisLabel1 // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart1->setTopLeftPosition('A7'); +$chart1->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart1); + + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels2 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', NULL, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues2 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues2 = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', NULL, 4), +); + +// Build the dataseries +$series2 = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STANDARD, // plotGrouping + range(0, count($dataSeriesValues2)-1), // plotOrder + $dataSeriesLabels2, // plotLabel + $xAxisTickValues2, // plotCategory + $dataSeriesValues2 // plotValues +); +// Set additional dataseries parameters +// Make it a vertical column rather than a horizontal bar graph +$series2->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_COL); + +// Set the series in the plot area +$plotArea2 = new PHPExcel_Chart_PlotArea(NULL, array($series2)); +// Set the chart legend +$legend2 = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, NULL, false); + +$title2 = new PHPExcel_Chart_Title('Test Column Chart'); +$yAxisLabel2 = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart2 = new PHPExcel_Chart( + 'chart2', // name + $title2, // title + $legend2, // legend + $plotArea2, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + $yAxisLabel2 // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart2->setTopLeftPosition('I7'); +$chart2->setBottomRightPosition('P20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart2); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-pie.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-pie.php new file mode 100644 index 0000000..78b6293 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-pie.php @@ -0,0 +1,215 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels1 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues1 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues1 = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', NULL, 4), +); + +// Build the dataseries +$series1 = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_PIECHART, // plotType + NULL, // plotGrouping (Pie charts don't have any grouping) + range(0, count($dataSeriesValues1)-1), // plotOrder + $dataSeriesLabels1, // plotLabel + $xAxisTickValues1, // plotCategory + $dataSeriesValues1 // plotValues +); + +// Set up a layout object for the Pie chart +$layout1 = new PHPExcel_Chart_Layout(); +$layout1->setShowVal(TRUE); +$layout1->setShowPercent(TRUE); + +// Set the series in the plot area +$plotArea1 = new PHPExcel_Chart_PlotArea($layout1, array($series1)); +// Set the chart legend +$legend1 = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, NULL, false); + +$title1 = new PHPExcel_Chart_Title('Test Pie Chart'); + + +// Create the chart +$chart1 = new PHPExcel_Chart( + 'chart1', // name + $title1, // title + $legend1, // legend + $plotArea1, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + NULL // yAxisLabel - Pie charts don't have a Y-Axis +); + +// Set the position where the chart should appear in the worksheet +$chart1->setTopLeftPosition('A7'); +$chart1->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart1); + + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels2 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues2 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues2 = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', NULL, 4), +); + +// Build the dataseries +$series2 = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_DONUTCHART, // plotType + NULL, // plotGrouping (Donut charts don't have any grouping) + range(0, count($dataSeriesValues2)-1), // plotOrder + $dataSeriesLabels2, // plotLabel + $xAxisTickValues2, // plotCategory + $dataSeriesValues2 // plotValues +); + +// Set up a layout object for the Pie chart +$layout2 = new PHPExcel_Chart_Layout(); +$layout2->setShowVal(TRUE); +$layout2->setShowCatName(TRUE); + +// Set the series in the plot area +$plotArea2 = new PHPExcel_Chart_PlotArea($layout2, array($series2)); + +$title2 = new PHPExcel_Chart_Title('Test Donut Chart'); + + +// Create the chart +$chart2 = new PHPExcel_Chart( + 'chart2', // name + $title2, // title + NULL, // legend + $plotArea2, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + NULL // yAxisLabel - Like Pie charts, Donut charts don't have a Y-Axis +); + +// Set the position where the chart should appear in the worksheet +$chart2->setTopLeftPosition('I7'); +$chart2->setBottomRightPosition('P20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart2); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-radar.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-radar.php new file mode 100644 index 0000000..7d1047a --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-radar.php @@ -0,0 +1,155 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Jan', 47, 45, 71), + array('Feb', 56, 73, 86), + array('Mar', 52, 61, 69), + array('Apr', 40, 52, 60), + array('May', 42, 55, 71), + array('Jun', 58, 63, 76), + array('Jul', 53, 61, 89), + array('Aug', 46, 69, 85), + array('Sep', 62, 75, 81), + array('Oct', 51, 70, 96), + array('Nov', 55, 66, 89), + array('Dec', 68, 62, 0), + ) +); + + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$13', NULL, 12), // Jan to Dec + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$13', NULL, 12), // Jan to Dec +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$13', NULL, 12), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$13', NULL, 12), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_RADARCHART, // plotType + NULL, // plotGrouping (Radar charts don't have any grouping) + range(0, count($dataSeriesValues)-1), // plotOrder + $dataSeriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues, // plotValues + NULL, // plotDirection + NULL, // smooth line + PHPExcel_Chart_DataSeries::STYLE_MARKER // plotStyle +); + +// Set up a layout object for the Pie chart +$layout = new PHPExcel_Chart_Layout(); + +// Set the series in the plot area +$plotArea = new PHPExcel_Chart_PlotArea($layout, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, NULL, false); + +$title = new PHPExcel_Chart_Title('Test Radar Chart'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotArea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + NULL // yAxisLabel - Radar charts don't have a Y-Axis +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('F2'); +$chart->setBottomRightPosition('M15'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-scatter.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-scatter.php new file mode 100644 index 0000000..a5fab82 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-scatter.php @@ -0,0 +1,139 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', NULL, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), // 2012 +); +// Set the X-Axis Labels +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', NULL, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', NULL, 4), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_SCATTERCHART, // plotType + NULL, // plotGrouping (Scatter charts don't have any grouping) + range(0, count($dataSeriesValues)-1), // plotOrder + $dataSeriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues, // plotValues + NULL, // plotDirection + NULL, // smooth line + PHPExcel_Chart_DataSeries::STYLE_LINEMARKER // plotStyle +); + +// Set the series in the plot area +$plotArea = new PHPExcel_Chart_PlotArea(NULL, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_TOPRIGHT, NULL, false); + +$title = new PHPExcel_Chart_Title('Test Scatter Chart'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotArea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + NULL, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/33chartcreate-stock.php b/site/config/PHPExcel-1.8/Examples/33chartcreate-stock.php new file mode 100644 index 0000000..465107b --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/33chartcreate-stock.php @@ -0,0 +1,151 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('Counts', 'Max', 'Min', 'Min Threshold', 'Max Threshold' ), + array(10, 10, 5, 0, 50 ), + array(30, 20, 10, 0, 50 ), + array(20, 30, 15, 0, 50 ), + array(40, 10, 0, 0, 50 ), + array(100, 40, 5, 0, 50 ), + ), null, 'A1', true +); +$objWorksheet->getStyle('B2:E6')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER_00); + + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', NULL, 1), //Max / Open + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), //Min / Close + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', NULL, 1), //Min Threshold / Min + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$E$1', NULL, 1), //Max Threshold / Max +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$6', NULL, 5), // Counts +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$6', NULL, 5), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$6', NULL, 5), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$6', NULL, 5), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$E$2:$E$6', NULL, 5), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_STOCKCHART, // plotType + null, // plotGrouping - if we set this to not null, then xlsx throws error + range(0, count($dataSeriesValues)-1), // plotOrder + $dataSeriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); + +// Set the series in the plot area +$plotArea = new PHPExcel_Chart_PlotArea(NULL, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, NULL, false); + +$title = new PHPExcel_Chart_Title('Test Stock Chart'); +$xAxisLabel = new PHPExcel_Chart_Title('Counts'); +$yAxisLabel = new PHPExcel_Chart_Title('Values'); + +// Create the chart +$chart = new PHPExcel_Chart( + 'stock-chart', // name + $title, // title + $legend, // legend + $plotArea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + $xAxisLabel, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$filename = str_replace('.php', '.xlsx', __FILE__); +if(file_exists($filename)) { + unlink($filename); +} +$objWriter->save($filename); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/34chartupdate.php b/site/config/PHPExcel-1.8/Examples/34chartupdate.php new file mode 100644 index 0000000..f4b36c6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/34chartupdate.php @@ -0,0 +1,78 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + +if (!file_exists("33chartcreate-bar.xlsx")) { + exit("Please run 33chartcreate-bar.php first." . EOL); +} + +echo date('H:i:s') , " Load from Excel2007 file" , EOL; +$objReader = PHPExcel_IOFactory::createReader("Excel2007"); +$objReader->setIncludeCharts(TRUE); +$objPHPExcel = $objReader->load("33chartcreate-bar.xlsx"); + + +echo date('H:i:s') , " Update cell data values that are displayed in the chart" , EOL; +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array(50-12, 50-15, 50-21), + array(50-56, 50-73, 50-86), + array(50-52, 50-61, 50-69), + array(50-30, 50-32, 50), + ), + NULL, + 'B2' +); + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/35chartrender.php b/site/config/PHPExcel-1.8/Examples/35chartrender.php new file mode 100644 index 0000000..62719e5 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/35chartrender.php @@ -0,0 +1,134 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +// Change these values to select the Rendering library that you wish to use +// and its directory location on your server +$rendererName = PHPExcel_Settings::CHART_RENDERER_JPGRAPH; +$rendererLibrary = 'jpgraph3.5.0b1/src/'; +$rendererLibraryPath = '/php/libraries/Charts/' . $rendererLibrary; + + +if (!PHPExcel_Settings::setChartRenderer( + $rendererName, + $rendererLibraryPath + )) { + die( + 'NOTICE: Please set the $rendererName and $rendererLibraryPath values' . + EOL . + 'at the top of this script as appropriate for your directory structure' + ); +} + + +$inputFileType = 'Excel2007'; +$inputFileNames = 'templates/32readwrite*[0-9].xlsx'; + + if ((isset($argc)) && ($argc > 1)) { + $inputFileNames = array(); + for($i = 1; $i < $argc; ++$i) { + $inputFileNames[] = dirname(__FILE__) . '/templates/' . $argv[$i]; + } +} else { + $inputFileNames = glob($inputFileNames); +} +foreach($inputFileNames as $inputFileName) { + $inputFileNameShort = basename($inputFileName); + + if (!file_exists($inputFileName)) { + echo date('H:i:s') , " File " , $inputFileNameShort , ' does not exist' , EOL; + continue; + } + + echo date('H:i:s') , " Load Test from $inputFileType file " , $inputFileNameShort , EOL; + + $objReader = PHPExcel_IOFactory::createReader($inputFileType); + $objReader->setIncludeCharts(TRUE); + $objPHPExcel = $objReader->load($inputFileName); + + + echo date('H:i:s') , " Iterate worksheets looking at the charts" , EOL; + foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) { + $sheetName = $worksheet->getTitle(); + echo 'Worksheet: ' , $sheetName , EOL; + + $chartNames = $worksheet->getChartNames(); + if(empty($chartNames)) { + echo ' There are no charts in this worksheet' , EOL; + } else { + natsort($chartNames); + foreach($chartNames as $i => $chartName) { + $chart = $worksheet->getChartByName($chartName); + if (!is_null($chart->getTitle())) { + $caption = '"' . implode(' ',$chart->getTitle()->getCaption()) . '"'; + } else { + $caption = 'Untitled'; + } + echo ' ' , $chartName , ' - ' , $caption , EOL; + echo str_repeat(' ',strlen($chartName)+3); + + $jpegFile = '35'.str_replace('.xlsx', '.jpg', substr($inputFileNameShort,2)); + if (file_exists($jpegFile)) { + unlink($jpegFile); + } + try { + $chart->render($jpegFile); + } catch (Exception $e) { + echo 'Error rendering chart: ',$e->getMessage(); + } + } + } + } + + + $objPHPExcel->disconnectWorksheets(); + unset($objPHPExcel); +} + +// Echo memory peak usage +echo date('H:i:s') , ' Peak memory usage: ' , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done rendering charts as images" , EOL; +echo 'Image files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/36chartreadwriteHTML.php b/site/config/PHPExcel-1.8/Examples/36chartreadwriteHTML.php new file mode 100644 index 0000000..7fc26fd --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/36chartreadwriteHTML.php @@ -0,0 +1,151 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +// Change these values to select the Rendering library that you wish to use +// and its directory location on your server +$rendererName = PHPExcel_Settings::CHART_RENDERER_JPGRAPH; +$rendererLibrary = 'jpgraph3.5.0b1/src/'; +$rendererLibraryPath = '/php/libraries/Charts/' . $rendererLibrary; + + +if (!PHPExcel_Settings::setChartRenderer( + $rendererName, + $rendererLibraryPath + )) { + die( + 'NOTICE: Please set the $rendererName and $rendererLibraryPath values' . + EOL . + 'at the top of this script as appropriate for your directory structure' + ); +} + + +$inputFileType = 'Excel2007'; +$inputFileNames = 'templates/36write*.xlsx'; + +if ((isset($argc)) && ($argc > 1)) { + $inputFileNames = array(); + for($i = 1; $i < $argc; ++$i) { + $inputFileNames[] = dirname(__FILE__) . '/templates/' . $argv[$i]; + } +} else { + $inputFileNames = glob($inputFileNames); +} +foreach($inputFileNames as $inputFileName) { + $inputFileNameShort = basename($inputFileName); + + if (!file_exists($inputFileName)) { + echo date('H:i:s') , " File " , $inputFileNameShort , ' does not exist' , EOL; + continue; + } + + echo date('H:i:s') , " Load Test from $inputFileType file " , $inputFileNameShort , EOL; + + $objReader = PHPExcel_IOFactory::createReader($inputFileType); + $objReader->setIncludeCharts(TRUE); + $objPHPExcel = $objReader->load($inputFileName); + + + echo date('H:i:s') , " Iterate worksheets looking at the charts" , EOL; + foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) { + $sheetName = $worksheet->getTitle(); + echo 'Worksheet: ' , $sheetName , EOL; + + $chartNames = $worksheet->getChartNames(); + if(empty($chartNames)) { + echo ' There are no charts in this worksheet' , EOL; + } else { + natsort($chartNames); + foreach($chartNames as $i => $chartName) { + $chart = $worksheet->getChartByName($chartName); + if (!is_null($chart->getTitle())) { + $caption = '"' . implode(' ',$chart->getTitle()->getCaption()) . '"'; + } else { + $caption = 'Untitled'; + } + echo ' ' , $chartName , ' - ' , $caption , EOL; + echo str_repeat(' ',strlen($chartName)+3); + $groupCount = $chart->getPlotArea()->getPlotGroupCount(); + if ($groupCount == 1) { + $chartType = $chart->getPlotArea()->getPlotGroupByIndex(0)->getPlotType(); + echo ' ' , $chartType , EOL; + } else { + $chartTypes = array(); + for($i = 0; $i < $groupCount; ++$i) { + $chartTypes[] = $chart->getPlotArea()->getPlotGroupByIndex($i)->getPlotType(); + } + $chartTypes = array_unique($chartTypes); + if (count($chartTypes) == 1) { + $chartType = 'Multiple Plot ' . array_pop($chartTypes); + echo ' ' , $chartType , EOL; + } elseif (count($chartTypes) == 0) { + echo ' *** Type not yet implemented' , EOL; + } else { + echo ' Combination Chart' , EOL; + } + } + } + } + } + + + $outputFileName = str_replace('.xlsx', '.html', basename($inputFileName)); + + echo date('H:i:s') , " Write Tests to HTML file " , EOL; + $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'HTML'); + $objWriter->setIncludeCharts(TRUE); + $objWriter->save($outputFileName); + echo date('H:i:s') , " File written to " , $outputFileName , EOL; + + $objPHPExcel->disconnectWorksheets(); + unset($objPHPExcel); +} + +// Echo memory peak usage +echo date('H:i:s') , ' Peak memory usage: ' , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/36chartreadwritePDF.php b/site/config/PHPExcel-1.8/Examples/36chartreadwritePDF.php new file mode 100644 index 0000000..24d1c85 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/36chartreadwritePDF.php @@ -0,0 +1,174 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +// Change these values to select the Rendering library that you wish to use +// for PDF files, and its directory location on your server +//$rendererName = PHPExcel_Settings::PDF_RENDERER_TCPDF; +$rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF; +//$rendererName = PHPExcel_Settings::PDF_RENDERER_DOMPDF; +//$rendererLibrary = 'tcPDF5.9'; +$rendererLibrary = 'mPDF5.4'; +//$rendererLibrary = 'domPDF0.6.0beta3'; +$rendererLibraryPath = '/php/libraries/PDF/' . $rendererLibrary; + + +if (!PHPExcel_Settings::setPdfRenderer( + $rendererName, + $rendererLibraryPath + )) { + die( + 'NOTICE: Please set the $rendererName and $rendererLibraryPath values' . + EOL . + 'at the top of this script as appropriate for your directory structure' + ); +} + + +// Change these values to select the Rendering library that you wish to use +// for Chart images, and its directory location on your server +$rendererName = PHPExcel_Settings::CHART_RENDERER_JPGRAPH; +$rendererLibrary = 'jpgraph3.5.0b1/src/'; +$rendererLibraryPath = '/php/libraries/Charts/' . $rendererLibrary; + + +if (!PHPExcel_Settings::setChartRenderer( + $rendererName, + $rendererLibraryPath + )) { + die( + 'NOTICE: Please set the $rendererName and $rendererLibraryPath values' . + EOL . + 'at the top of this script as appropriate for your directory structure' + ); +} + + +$inputFileType = 'Excel2007'; +$inputFileNames = 'templates/36write*.xlsx'; + +if ((isset($argc)) && ($argc > 1)) { + $inputFileNames = array(); + for($i = 1; $i < $argc; ++$i) { + $inputFileNames[] = dirname(__FILE__) . '/templates/' . $argv[$i]; + } +} else { + $inputFileNames = glob($inputFileNames); +} +foreach($inputFileNames as $inputFileName) { + $inputFileNameShort = basename($inputFileName); + + if (!file_exists($inputFileName)) { + echo date('H:i:s') , " File " , $inputFileNameShort , ' does not exist' , EOL; + continue; + } + + echo date('H:i:s') , " Load Test from $inputFileType file " , $inputFileNameShort , EOL; + + $objReader = PHPExcel_IOFactory::createReader($inputFileType); + $objReader->setIncludeCharts(TRUE); + $objPHPExcel = $objReader->load($inputFileName); + + + echo date('H:i:s') , " Iterate worksheets looking at the charts" , EOL; + foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) { + $sheetName = $worksheet->getTitle(); + echo 'Worksheet: ' , $sheetName , EOL; + + $chartNames = $worksheet->getChartNames(); + if(empty($chartNames)) { + echo ' There are no charts in this worksheet' , EOL; + } else { + natsort($chartNames); + foreach($chartNames as $i => $chartName) { + $chart = $worksheet->getChartByName($chartName); + if (!is_null($chart->getTitle())) { + $caption = '"' . implode(' ',$chart->getTitle()->getCaption()) . '"'; + } else { + $caption = 'Untitled'; + } + echo ' ' , $chartName , ' - ' , $caption , EOL; + echo str_repeat(' ',strlen($chartName)+3); + $groupCount = $chart->getPlotArea()->getPlotGroupCount(); + if ($groupCount == 1) { + $chartType = $chart->getPlotArea()->getPlotGroupByIndex(0)->getPlotType(); + echo ' ' , $chartType , EOL; + } else { + $chartTypes = array(); + for($i = 0; $i < $groupCount; ++$i) { + $chartTypes[] = $chart->getPlotArea()->getPlotGroupByIndex($i)->getPlotType(); + } + $chartTypes = array_unique($chartTypes); + if (count($chartTypes) == 1) { + $chartType = 'Multiple Plot ' . array_pop($chartTypes); + echo ' ' , $chartType , EOL; + } elseif (count($chartTypes) == 0) { + echo ' *** Type not yet implemented' , EOL; + } else { + echo ' Combination Chart' , EOL; + } + } + } + } + } + + + $outputFileName = str_replace('.xlsx', '.pdf', basename($inputFileName)); + + echo date('H:i:s') , " Write Tests to HTML file " , EOL; + $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF'); + $objWriter->setIncludeCharts(TRUE); + $objWriter->save($outputFileName); + echo date('H:i:s') , " File written to " , $outputFileName , EOL; + + $objPHPExcel->disconnectWorksheets(); + unset($objPHPExcel); +} + +// Echo memory peak usage +echo date('H:i:s') , ' Peak memory usage: ' , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/37page_layout_view.php b/site/config/PHPExcel-1.8/Examples/37page_layout_view.php new file mode 100644 index 0000000..810ca3d --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/37page_layout_view.php @@ -0,0 +1,83 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("PHPOffice") + ->setLastModifiedBy("PHPOffice") + ->setTitle("PHPExcel Test Document") + ->setSubject("PHPExcel Test Document") + ->setDescription("Test document for PHPExcel, generated using PHP classes.") + ->setKeywords("Office PHPExcel php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!'); + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + +// Set the page layout view as page layout +$objPHPExcel->getActiveSheet()->getSheetView()->setView(PHPExcel_Worksheet_SheetView::SHEETVIEW_PAGE_LAYOUT); + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/38cloneWorksheet.php b/site/config/PHPExcel-1.8/Examples/38cloneWorksheet.php new file mode 100644 index 0000000..245f7da --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/38cloneWorksheet.php @@ -0,0 +1,118 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("PHPExcel Test Document") + ->setSubject("PHPExcel Test Document") + ->setDescription("Test document for PHPExcel, generated using PHP classes.") + ->setKeywords("office PHPExcel php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + + +$objPHPExcel->getActiveSheet()->setCellValue('A8',"Hello\nWorld"); +$objPHPExcel->getActiveSheet()->getRowDimension(8)->setRowHeight(-1); +$objPHPExcel->getActiveSheet()->getStyle('A8')->getAlignment()->setWrapText(true); + + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Clone worksheet +echo date('H:i:s') , " Clone worksheet" , EOL; +$clonedSheet = clone $objPHPExcel->getActiveSheet(); +$clonedSheet + ->setCellValue('A1', 'Goodbye') + ->setCellValue('A2', 'cruel') + ->setCellValue('C1', 'Goodbye') + ->setCellValue('C2', 'cruel'); + +// Rename cloned worksheet +echo date('H:i:s') , " Rename cloned worksheet" , EOL; +$clonedSheet->setTitle('Simple Clone'); +$objPHPExcel->addSheet($clonedSheet); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/39dropdown.php b/site/config/PHPExcel-1.8/Examples/39dropdown.php new file mode 100644 index 0000000..c8dcff6 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/39dropdown.php @@ -0,0 +1,175 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties() + ->setCreator("PHPOffice") + ->setLastModifiedBy("PHPOffice") + ->setTitle("PHPExcel Test Document") + ->setSubject("PHPExcel Test Document") + ->setDescription("Test document for PHPExcel, generated using PHP classes.") + ->setKeywords("Office PHPExcel php") + ->setCategory("Test result file"); + + +function transpose($value) { + return array($value); +} + +// Add some data +$continentColumn = 'D'; +$column = 'F'; + +// Set data for dropdowns +foreach(glob('./data/continents/*') as $key => $filename) { + $continent = pathinfo($filename, PATHINFO_FILENAME); + echo "Loading $continent", EOL; + $continent = str_replace(' ','_',$continent); + $countries = file($filename, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); + $countryCount = count($countries); + + // Transpose $countries from a row to a column array + $countries = array_map('transpose', $countries); + $objPHPExcel->getActiveSheet() + ->fromArray($countries, null, $column . '1'); + $objPHPExcel->addNamedRange( + new PHPExcel_NamedRange( + $continent, + $objPHPExcel->getActiveSheet(), $column . '1:' . $column . $countryCount + ) + ); + $objPHPExcel->getActiveSheet() + ->getColumnDimension($column) + ->setVisible(false); + + $objPHPExcel->getActiveSheet() + ->setCellValue($continentColumn . ($key+1), $continent); + + ++$column; +} + +// Hide the dropdown data +$objPHPExcel->getActiveSheet() + ->getColumnDimension($continentColumn) + ->setVisible(false); + +$objPHPExcel->addNamedRange( + new PHPExcel_NamedRange( + 'Continents', + $objPHPExcel->getActiveSheet(), $continentColumn . '1:' . $continentColumn . ($key+1) + ) +); + + +// Set selection cells +$objPHPExcel->getActiveSheet() + ->setCellValue('A1', 'Continent:'); +$objPHPExcel->getActiveSheet() + ->setCellValue('B1', 'Select continent'); +$objPHPExcel->getActiveSheet() + ->setCellValue('B3', '=' . $column . 1); +$objPHPExcel->getActiveSheet() + ->setCellValue('B3', 'Select country'); +$objPHPExcel->getActiveSheet() + ->getStyle('A1:A3') + ->getFont()->setBold(true); + +// Set linked validators +$objValidation = $objPHPExcel->getActiveSheet() + ->getCell('B1') + ->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST ) + ->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION ) + ->setAllowBlank(false) + ->setShowInputMessage(true) + ->setShowErrorMessage(true) + ->setShowDropDown(true) + ->setErrorTitle('Input error') + ->setError('Continent is not in the list.') + ->setPromptTitle('Pick from the list') + ->setPrompt('Please pick a continent from the drop-down list.') + ->setFormula1('=Continents'); + +$objPHPExcel->getActiveSheet() + ->setCellValue('A3', 'Country:'); +$objPHPExcel->getActiveSheet() + ->getStyle('A3') + ->getFont()->setBold(true); + +$objValidation = $objPHPExcel->getActiveSheet() + ->getCell('B3') + ->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST ) + ->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION ) + ->setAllowBlank(false) + ->setShowInputMessage(true) + ->setShowErrorMessage(true) + ->setShowDropDown(true) + ->setErrorTitle('Input error') + ->setError('Country is not in the list.') + ->setPromptTitle('Pick from the list') + ->setPrompt('Please pick a country from the drop-down list.') + ->setFormula1('=INDIRECT($B$1)'); + + +$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(12); +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(30); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + +// Save Excel 2007 file +// This linked validation list method only seems to work for Excel2007, not for Excel5 +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/40duplicateStyle.php b/site/config/PHPExcel-1.8/Examples/40duplicateStyle.php new file mode 100644 index 0000000..be31951 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/40duplicateStyle.php @@ -0,0 +1,51 @@ +<?php +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +echo date('H:i:s') , " Create styles array" , EOL; +$styles = array(); +for ($i = 0; $i < 10; $i++) { + $style = new PHPExcel_Style(); + $style->getFont()->setSize($i + 4); + $styles[] = $style; +} + +echo date('H:i:s') , " Add data (begin)" , EOL; +$t = microtime(true); +for ($col = 0; $col < 50; $col++) { + for ($row = 0; $row < 100; $row++) { + $str = ($row + $col); + $style = $styles[$row % 10]; + $coord = PHPExcel_Cell::stringFromColumnIndex($col) . ($row + 1); + $worksheet->setCellValue($coord, $str); + $worksheet->duplicateStyle($style, $coord); + } +} +$d = microtime(true) - $t; +echo date('H:i:s') , " Add data (end), time: " . round($d, 2) . " s", EOL; + + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/41password.php b/site/config/PHPExcel-1.8/Examples/41password.php new file mode 100644 index 0000000..15aea7b --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/41password.php @@ -0,0 +1,84 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +include "05featuredemo.inc.php"; + +/** Include PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +// Set password against the spreadsheet file +$objPHPExcel->getSecurity()->setLockWindows(true); +$objPHPExcel->getSecurity()->setLockStructure(true); +$objPHPExcel->getSecurity()->setWorkbookPassword('secret'); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/42richText.php b/site/config/PHPExcel-1.8/Examples/42richText.php new file mode 100644 index 0000000..32bc401 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/42richText.php @@ -0,0 +1,164 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2014 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("PHPExcel Test Document") + ->setSubject("PHPExcel Test Document") + ->setDescription("Test document for PHPExcel, generated using PHP classes.") + ->setKeywords("office PHPExcel php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; + +$html1 = '<font color="#0000ff"> +<h1 align="center">My very first example of rich text<br />generated from html markup</h1> +<p> +<font size="14" COLOR="rgb(0,255,128)"> +<b>This block</b> contains an <i>italicized</i> word; +while this block uses an <u>underline</u>. +</font> +</p> +<p align="right"><font size="9" color="red"> +I want to eat <ins><del>healthy food</del> <strong>pizza</strong></ins>. +</font> +'; + +$html2 = '<p> +<font color="#ff0000"> + 100&deg;C is a hot temperature +</font> +<br> +<font color="#0080ff"> + 10&deg;F is cold +</font> +</p>'; + +$html3 = '2<sup>3</sup> equals 8'; + +$html4 = 'H<sub>2</sub>SO<sub>4</sub> is the chemical formula for Sulphuric acid'; + +$html5 = '<strong>bold</strong>, <em>italic</em>, <strong><em>bold+italic</em></strong>'; + + +$wizard = new PHPExcel_Helper_HTML; +$richText = $wizard->toRichTextObject($html1); + +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', $richText); + +$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(48); +$objPHPExcel->getActiveSheet()->getRowDimension(1)->setRowHeight(-1); +$objPHPExcel->getActiveSheet()->getStyle('A1') + ->getAlignment() + ->setWrapText(true); + +$richText = $wizard->toRichTextObject($html2); + +$objPHPExcel->getActiveSheet() + ->setCellValue('A2', $richText); + +$objPHPExcel->getActiveSheet()->getRowDimension(1)->setRowHeight(-1); +$objPHPExcel->getActiveSheet()->getStyle('A2') + ->getAlignment() + ->setWrapText(true); + +$objPHPExcel->getActiveSheet() + ->setCellValue('A3', $wizard->toRichTextObject($html3)); + +$objPHPExcel->getActiveSheet() + ->setCellValue('A4', $wizard->toRichTextObject($html4)); + +$objPHPExcel->getActiveSheet() + ->setCellValue('A5', $wizard->toRichTextObject($html5)); + + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/43mergeWorkbooks.php b/site/config/PHPExcel-1.8/Examples/43mergeWorkbooks.php new file mode 100644 index 0000000..465b60a --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/43mergeWorkbooks.php @@ -0,0 +1,91 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Load MergeBook1 from Excel2007 file" , EOL; +$callStartTime = microtime(true); + +$objPHPExcel1 = PHPExcel_IOFactory::load(dirname(__FILE__) . "/templates/43mergeBook1.xlsx"); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Mergebook1 was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Load MergeBook2 from Excel2007 file" , EOL; +$callStartTime = microtime(true); + +$objPHPExcel2 = PHPExcel_IOFactory::load(dirname(__FILE__) . "/templates/43mergeBook2.xlsx"); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Mergebook2 was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +foreach($objPHPExcel2->getSheetNames() as $sheetName) { + $sheet = $objPHPExcel2->getSheetByName($sheetName); + $sheet->setTitle($sheet->getTitle() . ' copied'); + $objPHPExcel1->addExternalSheet($sheet); +} + + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$callStartTime = microtime(true); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel1, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; + +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +echo 'Call time to write Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel-1.8/Examples/44worksheetInfo.php b/site/config/PHPExcel-1.8/Examples/44worksheetInfo.php new file mode 100644 index 0000000..5aeefcb --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/44worksheetInfo.php @@ -0,0 +1,58 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +if (!file_exists("05featuredemo.xlsx")) { + exit("Please run 05featuredemo.php first." . EOL); +} + +$inputFileName = "05featuredemo.xlsx"; +$inputFileType = PHPExcel_IOFactory::identify($inputFileName); +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +$sheetList = $objReader->listWorksheetNames($inputFileName); +$sheetInfo = $objReader->listWorksheetInfo($inputFileName); + +echo 'File Type:', PHP_EOL; +var_dump($inputFileType); + +echo 'Worksheet Names:', PHP_EOL; +var_dump($sheetList); + +echo 'Worksheet Names:', PHP_EOL; +var_dump($sheetInfo); + diff --git a/site/config/PHPExcel-1.8/Examples/Excel2003XMLReader.php b/site/config/PHPExcel-1.8/Examples/Excel2003XMLReader.php new file mode 100644 index 0000000..775c3d8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/Excel2003XMLReader.php @@ -0,0 +1,61 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Load from Excel2003XML file" , PHP_EOL; +$callStartTime = microtime(true); + +$objReader = PHPExcel_IOFactory::createReader('Excel2003XML'); +$objPHPExcel = $objReader->load("Excel2003XMLTest.xml"); + + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , PHP_EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + + +echo date('H:i:s') , " Write to Excel5 format" , PHP_EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', __FILE__) , PHP_EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , PHP_EOL; diff --git a/site/config/PHPExcel-1.8/Examples/Excel2003XMLTest.xml b/site/config/PHPExcel-1.8/Examples/Excel2003XMLTest.xml new file mode 100644 index 0000000..fb2d305 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/Excel2003XMLTest.xml @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><?mso-application progid="Excel.Sheet"?><Workbook xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:x2="http://schemas.microsoft.com/office/excel/2003/xml" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:x="urn:schemas-microsoft-com:office:excel"><OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office"><Colors><Color><Index>3</Index><RGB>#000000</RGB></Color><Color><Index>4</Index><RGB>#0000ff</RGB></Color><Color><Index>5</Index><RGB>#008000</RGB></Color><Color><Index>6</Index><RGB>#00ccff</RGB></Color><Color><Index>7</Index><RGB>#800080</RGB></Color><Color><Index>8</Index><RGB>#993366</RGB></Color><Color><Index>9</Index><RGB>#c0c0c0</RGB></Color><Color><Index>10</Index><RGB>#c47512</RGB></Color><Color><Index>11</Index><RGB>#ccffcc</RGB></Color><Color><Index>12</Index><RGB>#ddbc7d</RGB></Color><Color><Index>13</Index><RGB>#ff0000</RGB></Color><Color><Index>14</Index><RGB>#ff00ff</RGB></Color><Color><Index>15</Index><RGB>#ff6600</RGB></Color><Color><Index>16</Index><RGB>#ff9900</RGB></Color><Color><Index>17</Index><RGB>#ff99cc</RGB></Color><Color><Index>18</Index><RGB>#ffff00</RGB></Color></Colors></OfficeDocumentSettings><ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"><WindowHeight>9000</WindowHeight><WindowWidth>13860</WindowWidth><WindowTopX>240</WindowTopX><WindowTopY>75</WindowTopY><ProtectStructure>False</ProtectStructure><ProtectWindows>False</ProtectWindows></ExcelWorkbook><Styles><Style ss:ID="Default" ss:Name="Default"/><Style ss:ID="Result" ss:Name="Result"><Font ss:Bold="1" ss:Italic="1" ss:Underline="Single"/></Style><Style ss:ID="Result2" ss:Name="Result2"><Font ss:Bold="1" ss:Italic="1" ss:Underline="Single"/><NumberFormat ss:Format="Currency"/></Style><Style ss:ID="Heading" ss:Name="Heading"><Font ss:Bold="1" ss:Italic="1" ss:Size="16"/></Style><Style ss:ID="Heading1" ss:Name="Heading1"><Font ss:Bold="1" ss:Italic="1" ss:Size="16"/></Style><Style ss:ID="Gnumeric-default" ss:Name="Gnumeric-default"><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="co1"/><Style ss:ID="co2"/><Style ss:ID="co3"/><Style ss:ID="co4"/><Style ss:ID="co5"/><Style ss:ID="co6"/><Style ss:ID="co7"/><Style ss:ID="co8"/><Style ss:ID="co9"/><Style ss:ID="ta1"/><Style ss:ID="ce1"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Bold="1" ss:Color="#ff0000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce2"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Bold="1" ss:Color="#000000" ss:FontName="Arial1" ss:Italic="1" ss:Size="11"/></Style><Style ss:ID="ce3"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11" ss:Underline="Single"/></Style><Style ss:ID="ce4"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce5"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce6"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11" ss:Underline="Single"/></Style><Style ss:ID="ce7"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11" ss:Underline="Double"/></Style><Style ss:ID="ce8"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11" ss:StrikeThrough="1"/></Style><Style ss:ID="ce9"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="Short Date"/></Style><Style ss:ID="ce10"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="Fixed"/></Style><Style ss:ID="ce11"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><NumberFormat ss:Format="Short Time"/></Style><Style ss:ID="ce12"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><NumberFormat ss:Format="General Date"/></Style><Style ss:ID="ce13"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce14"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10" ss:Underline="Single"/></Style><Style ss:ID="ce15"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10" ss:Underline="Double"/></Style><Style ss:ID="ce16"><Alignment ss:Vertical="Bottom" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce17"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#0000ff" ss:FontName="Sans" ss:Size="10" ss:Underline="Single"/></Style><Style ss:ID="ce18"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="3" ss:Color="#00b050"/><Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="3" ss:Color="#0070c0"/><Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="3" ss:Color="#ffff00"/><Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="3" ss:Color="#ff0000"/></Borders><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce19"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce20"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce21"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce22"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce23"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="90"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce24"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="General"/></Style><Style ss:ID="ce25"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><NumberFormat ss:Format="General"/></Style><Style ss:ID="ce26"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Bold="1" ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce27"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Italic="1" ss:Size="11"/></Style><Style ss:ID="ce28"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="45"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce29"><Alignment ss:Vertical="Top" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce30"><Alignment ss:Vertical="Bottom" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce31"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="-90"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce32"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce33"><Alignment ss:Vertical="Bottom" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce34"><Alignment ss:Vertical="Bottom" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce35"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="-45"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce36"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce37"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ff0000" ss:Pattern="Solid"/></Style><Style ss:ID="ce38"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ff9900" ss:Pattern="Solid"/></Style><Style ss:ID="ce39"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ffff00" ss:Pattern="Solid"/></Style><Style ss:ID="ce40"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#008000" ss:Pattern="Solid"/></Style><Style ss:ID="ce41"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#0000ff" ss:Pattern="Solid"/></Style><Style ss:ID="ce42"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#993366" ss:Pattern="Solid"/></Style><Style ss:ID="ce43"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ff99cc" ss:Pattern="Solid"/></Style><Style ss:ID="ce44"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ddbc7d" ss:Pattern="Solid"/></Style><Style ss:ID="ce45"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#00ccff" ss:Pattern="Solid"/></Style><Style ss:ID="ce46"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#ff0000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce47"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#ff6600" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce48"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#ffff00" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce49"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#008000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce50"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#0000ff" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce51"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#800080" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce52"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#ff00ff" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce53"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#c47512" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce54"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#ccffcc" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ff0000" ss:Pattern="Solid"/></Style><Style ss:ID="ce55"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce56"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce57"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce58"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce59"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce60"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce61"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce62"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce63"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce64"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="3" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce65"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Double" ss:Weight="3" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce66"><Alignment ss:Horizontal="Center" ss:Vertical="Bottom" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Bold="1" ss:Color="#000000" ss:FontName="Arial1" ss:Size="12"/></Style><Style ss:ID="ce67"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="General"/></Style><Style ss:ID="ce68"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="Medium Date"/></Style><Style ss:ID="ce69"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="Medium Time"/></Style><Style ss:ID="gr1"/><Style ss:ID="gr2"/><Style ss:ID="ta_extref"/><Style ss:ID="P1"><Font ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="T1"/></Styles><ss:Worksheet ss:Name="Sample Data"><Table ss:StyleID="ta1"><Column ss:Width="96.4913"/><Column ss:Span="1" ss:Width="48.3874"/><Column ss:Index="4" ss:Width="35.8866"/><Column ss:Span="6" ss:Width="48.3874"/><Column ss:Index="12" ss:Width="50.2583"/><Column ss:Span="1011" ss:Width="48.3874"/><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce1"><ss:Data xmlns="http://www.w3.org/TR/REC-html40" ss:Type="String">Test String 1</ss:Data><Comment><ss:Data xmlns="http://www.w3.org/TR/REC-html40"><Font html:Face="Sans" html:Size="10">Test for a simple colour-formatted string</Font></ss:Data></Comment></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">1</Data></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">5</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce2"><Data ss:Type="String">A</Data></Cell><Cell ss:StyleID="ce26"><Data ss:Type="String">E</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.B1]+[.C1]"><Data ss:Type="Number">6</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.E1]&amp;[.F1]"><Data ss:Type="String">AE</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce2"><Data ss:Type="String">Test - String 2</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">2</Data></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">6</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">B</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="String">F</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.B2]+[.C2]"><Data ss:Type="Number">8</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.E2]&amp;[.F2]"><Data ss:Type="String">BF</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce55"><Data ss:Type="String">Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce3"><Data ss:Type="String">Test #3</Data></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">3</Data></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">7</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce26"><Data ss:Type="String">C</Data></Cell><Cell ss:StyleID="ce2"><Data ss:Type="String">G</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.B3]+[.C3]"><Data ss:Type="Number">10</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.E3]&amp;[.F3]"><Data ss:Type="String">CG</Data></Cell><Cell ss:StyleID="ce37"><Data ss:Type="String">Red</Data></Cell><Cell ss:StyleID="ce46"><Data ss:Type="String">Red</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce56"><Data ss:Type="String">Dash</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce4"><Data ss:Type="String">Test with (") in string</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">4</Data></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">8</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce27"><Data ss:Type="String">D</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="String">H</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.B4]+[.C4]"><Data ss:Type="Number">12</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.E4]&amp;[.F4]"><Data ss:Type="String">DH</Data></Cell><Cell ss:StyleID="ce38"><Data ss:Type="String">Orange</Data></Cell><Cell ss:StyleID="ce47"><Data ss:Type="String">Orange</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce57"><Data ss:Type="String">Dash/Dot/Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=SUM([.B1:.B4])"><Data ss:Type="Number">10</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=SUM([.C1:.C4])"><Data ss:Type="Number">26</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=SUM([.B1:.C4])"><Data ss:Type="Number">36</Data></Cell><Cell ss:StyleID="ce39"><Data ss:Type="String">Yellow</Data></Cell><Cell ss:StyleID="ce48"><Data ss:Type="String">Yellow</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce58"><Data ss:Type="String">Dash/Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce6"><Data ss:Type="String">Test #3</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">1.23</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=TRUE()"><Data ss:Type="Boolean">1</Data></Cell><Cell ss:StyleID="ce24"><Data ss:Type="Boolean">1</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce40"><Data ss:Type="String">Green</Data></Cell><Cell ss:StyleID="ce49"><Data ss:Type="String">Green</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce56"><Data ss:Type="String">Thin Line</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce7"><Data ss:Type="String">Test #3</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">2.34</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=FALSE()"><Data ss:Type="Boolean">0</Data></Cell><Cell ss:StyleID="ce25"><Data ss:Type="Boolean">0</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=SUM(marksrange)"><Data ss:Type="Number">0</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce41"><Data ss:Type="String">Blue</Data></Cell><Cell ss:StyleID="ce50"><Data ss:Type="String">Blue</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce59"><Data ss:Type="String">Thick Dash/Dot/Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Index="8" ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce8"><Data ss:Type="String">Test #3</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">3.45</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce42"><Data ss:Type="String">Purple</Data></Cell><Cell ss:StyleID="ce51"><Data ss:Type="String">Purple</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce60"><Data ss:Type="String">Variant Thick Dash/Dot/Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="13.4929"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce43"><Data ss:Type="String">Pink</Data></Cell><Cell ss:StyleID="ce52"><Data ss:Type="String">Pink</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce61"><Data ss:Type="String">Thick Dash/Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce9"><Data ss:Type="DateTime">1960-12-19T00:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce19"><Data ss:Type="String">TOP</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="Number">0</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce44"><Data ss:Type="String">Brown</Data></Cell><Cell ss:StyleID="ce53"><Data ss:Type="String">Brown</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce62"><Data ss:Type="String">Thick Dash</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce10"><Data ss:Type="Number">1.5</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=12/0"><Data ss:Type="Number">0</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce63"><Data ss:Type="String">Thick Line</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="13.4929"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce20"><Data ss:Type="String">BOTTOM</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce64"><Data ss:Type="String">Extra Thick Line</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce11"><Data ss:Type="DateTime">1899-12-31T02:30:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><ss:Data xmlns="http://www.w3.org/TR/REC-html40" ss:Type="String">Мойва сушеная</ss:Data><Comment><ss:Data xmlns="http://www.w3.org/TR/REC-html40"><Font html:Face="Sans" html:Size="10">Tests for UTF-8 content</Font></ss:Data></Comment></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce65"><Data ss:Type="String">Double Line</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce21"><Data ss:Type="String">LEFT</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">Ärendetext</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce12"><Data ss:Type="DateTime">1960-12-19T01:30:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">Højde</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Index="16" ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce22"><Data ss:Type="String">RIGHT</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="13.4929"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Height="41.7543"><Cell ss:StyleID="ce5"/><Cell ss:MergeAcross="1" ss:MergeDown="1" ss:StyleID="ce18"><Data ss:Type="String">BOX</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce29"><Data ss:Type="String">Test Column 1</Data></Cell><Cell ss:StyleID="ce30"/><Cell ss:StyleID="ce33"/><Cell ss:StyleID="ce36"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Height="41.7543"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce30"/><Cell ss:StyleID="ce32"><Data ss:Type="String">Test Column 2</Data></Cell><Cell ss:StyleID="ce30"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce45"><Data ss:Type="String">Patterned</Data></Cell><Cell ss:StyleID="ce54"><Data ss:Type="String">Patterned 2</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Height="41.7543"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce30"/><Cell ss:StyleID="ce30"/><Cell ss:StyleID="ce34"><Data ss:Type="String">Test Column 3</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:StyleID="ce13"><Data ss:Type="String">Underline None</Data></Cell><Cell ss:Index="3" ss:MergeAcross="1" ss:MergeDown="4" ss:StyleID="ce23"><Data ss:Type="String">Rotate 90</Data></Cell><Cell ss:MergeAcross="1" ss:MergeDown="4" ss:StyleID="ce28"><Data ss:Type="String">Rotate 45</Data></Cell><Cell ss:MergeAcross="1" ss:MergeDown="4" ss:StyleID="ce31"><Data ss:Type="String">Rotate -90</Data></Cell><Cell ss:MergeAcross="1" ss:MergeDown="4" ss:StyleID="ce35"><Data ss:Type="String">Rotate -45</Data></Cell><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:StyleID="ce14"><Data ss:Type="String">Underline 1</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="String">Subscript</Data></Cell><Cell ss:Index="1016" ss:StyleID="ce13"/></Row><Row ss:Index="24" ss:Height="12.8409"><Cell ss:StyleID="ce15"><Data ss:Type="String">Underline 2</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="String">Superscript</Data></Cell><Cell ss:Index="1016" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:StyleID="ce14"><Data ss:Type="String">Underline 3</Data></Cell><Cell ss:Index="1016" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:StyleID="ce15"><Data ss:Type="String">Underline 4</Data></Cell><Cell ss:Index="1016" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="49.2378"><Cell ss:MergeAcross="2" ss:StyleID="ce16"><ss:Data xmlns="http://www.w3.org/TR/REC-html40" ss:Type="String">I don't know if Gnumeric supports <B><Font html:Face="Sans" html:Color="#000000" html:Size="10">Rich Text</Font></B> in the same way as <B><Font html:Face="Sans" html:Color="#000000" html:Size="10">Excel</Font></B>, And this row should be autofit height with text wrap</ss:Data></Cell><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/></Row><Row ss:Height="13.4079"><Cell ss:MergeAcross="2" ss:HRef="http://www.phpexcel.net/" ss:StyleID="ce17"><Data ss:Type="String">PHPExcel</Data></Cell><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Index="65536" ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row></Table><x:WorksheetOptions/></ss:Worksheet><ss:Worksheet ss:Name="Report Data"><Table ss:StyleID="ta1"><Column ss:Span="2" ss:Width="56.2394"/><Column ss:Index="4" ss:Width="78.7465"/><Column ss:Width="58.5071"/><Column ss:Width="27.4961"/><Column ss:Width="78.7465"/><Column ss:Width="68.5984"/><Column ss:Span="1015" ss:Width="48.3874"/><Column ss:Index="1025"/><Column ss:Span="1"/><Row ss:AutoFitHeight="0" ss:Height="31.4929"><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="31.4929"><Cell ss:StyleID="ce66"><Data ss:Type="String">Heading 1</Data></Cell><Cell ss:StyleID="ce66"><Data ss:Type="String">Heading 2</Data></Cell><Cell ss:StyleID="ce66"><Data ss:Type="String">Third Heading</Data></Cell><Cell ss:StyleID="ce66"><Data ss:Type="String">Date Heading</Data></Cell><Cell ss:StyleID="ce66"><Data ss:Type="String">Time Heading</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce66"><Data ss:Type="String">Adjusted Date</Data></Cell><Cell ss:StyleID="ce66"><Data ss:Type="String">Adjusted Number</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce13"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String"/></Cell><Cell ss:StyleID="ce13"><Data ss:Type="String">Adjusted Number</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="String">Third Heading</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">1</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">1.11</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">1.11</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">2</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">4.44</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">2.22</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">3</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">9.99</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">3.33</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">4</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">17.76</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">4.44</Data></Cell></Row><Row ss:Index="8"><Cell ss:StyleID="ce13"><Data ss:Type="String">5</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">27.75</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">5.55</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">6</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">39.96</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">6.66</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">7</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">54.39</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">7.77</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">8</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">71.04</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">8.88</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">9</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">89.91</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">9.99</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">10</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">111</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">11.1</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">11</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">134.31</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">12.21</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">12</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">159.84</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">13.32</Data></Cell></Row><Row ss:Index="16"><Cell ss:StyleID="ce13"><Data ss:Type="String">13</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">1.11</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">-1.11</Data></Cell></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">ABC</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">1</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">1.11</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2001-01-01T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T01:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D3]-[.B3]"><Data ss:Type="DateTime">2000-12-31T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B3]*[.C3]"><Data ss:Type="Number">1.11</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">A</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B3]&amp;[.J3]"><Data ss:Type="String">1A</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">BCD</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">2</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">2.22</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2002-02-02T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T02:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D4]-[.B4]"><Data ss:Type="DateTime">2002-01-31T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B4]*[.C4]"><Data ss:Type="Number">4.44</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">B</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B4]&amp;[.J4]"><Data ss:Type="String">2B</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">CDE</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">3</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">3.33</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2003-03-03T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T03:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D5]-[.B5]"><Data ss:Type="DateTime">2003-02-28T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B5]*[.C5]"><Data ss:Type="Number">9.99</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">C</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B5]&amp;[.J5]"><Data ss:Type="String">3C</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">DEF</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">4</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">4.44</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2004-04-03T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T04:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D6]-[.B6]"><Data ss:Type="DateTime">2004-03-30T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B6]*[.C6]"><Data ss:Type="Number">17.76</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">D</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B6]&amp;[.J6]"><Data ss:Type="String">4D</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">EFG</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">5</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">5.55</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2005-05-04T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T05:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D7]-[.B7]"><Data ss:Type="DateTime">2005-04-29T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B7]*[.C7]"><Data ss:Type="Number">27.75</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">E</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B7]&amp;[.J7]"><Data ss:Type="String">5E</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">FGH</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">6</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">6.66</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2006-06-05T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T06:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D8]-[.B8]"><Data ss:Type="DateTime">2006-05-30T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B8]*[.C8]"><Data ss:Type="Number">39.96</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">F</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B8]&amp;[.J8]"><Data ss:Type="String">6F</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">GHI</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">7</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">7.77</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2007-07-06T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T07:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D9]-[.B9]"><Data ss:Type="DateTime">2007-06-29T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B9]*[.C9]"><Data ss:Type="Number">54.39</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">G</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B9]&amp;[.J9]"><Data ss:Type="String">7G</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Index="24" ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">HIJ</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">8</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">8.88</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2008-08-07T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T08:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D10]-[.B10]"><Data ss:Type="DateTime">2008-07-30T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B10]*[.C10]"><Data ss:Type="Number">71.04</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">H</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B10]&amp;[.J10]"><Data ss:Type="String">8H</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">IJK</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">9</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">9.99</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2009-09-08T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T09:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D11]-[.B11]"><Data ss:Type="DateTime">2009-08-30T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B11]*[.C11]"><Data ss:Type="Number">89.91</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">I</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B11]&amp;[.J11]"><Data ss:Type="String">9I</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">JKL</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">10</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">11.1</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2010-10-09T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T10:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D12]-[.B12]"><Data ss:Type="DateTime">2010-09-29T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B12]*[.C12]"><Data ss:Type="Number">111</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">J</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B12]&amp;[.J12]"><Data ss:Type="String">10J</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">KLM</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">11</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">12.21</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2011-11-11T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T11:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D13]-[.B13]"><Data ss:Type="DateTime">2011-10-31T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B13]*[.C13]"><Data ss:Type="Number">134.31</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">K</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B13]&amp;[.J13]"><Data ss:Type="String">11K</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">LMN</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">12</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">13.32</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2012-12-12T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T288:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D14]-[.B14]"><Data ss:Type="DateTime">2012-11-30T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B14]*[.C14]"><Data ss:Type="Number">159.84</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">L</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B14]&amp;[.J14]"><Data ss:Type="String">12L</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">ZYX</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">-1</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">-1.11</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">1999-12-01T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T23:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D15]-[.B15]"><Data ss:Type="DateTime">1999-12-02T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B15]*[.C15]"><Data ss:Type="Number">1.11</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">M</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B15]&amp;[.J15]"><Data ss:Type="String">-1M</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Index="65550" ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row></Table><x:WorksheetOptions/></ss:Worksheet></Workbook> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Examples/GnumericReader.php b/site/config/PHPExcel-1.8/Examples/GnumericReader.php new file mode 100644 index 0000000..387c897 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/GnumericReader.php @@ -0,0 +1,60 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + +echo date('H:i:s') , " Load from Gnumeric file" , PHP_EOL; +$callStartTime = microtime(true); + +$objReader = PHPExcel_IOFactory::createReader('Gnumeric'); +$objPHPExcel = $objReader->load("GnumericTest.gnumeric"); + + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , PHP_EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + + +echo date('H:i:s') , " Write to Excel2007 format" , PHP_EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', __FILE__) , PHP_EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , PHP_EOL; diff --git a/site/config/PHPExcel-1.8/Examples/GnumericTest.gnumeric b/site/config/PHPExcel-1.8/Examples/GnumericTest.gnumeric new file mode 100644 index 0000000..ea2fac3 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/GnumericTest.gnumeric differ diff --git a/site/config/PHPExcel-1.8/Examples/OOCalcReader.php b/site/config/PHPExcel-1.8/Examples/OOCalcReader.php new file mode 100644 index 0000000..18771e8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/OOCalcReader.php @@ -0,0 +1,61 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + +echo date('H:i:s') , " Load from OOCalc file" , PHP_EOL; +$callStartTime = microtime(true); + +$objReader = PHPExcel_IOFactory::createReader('OOCalc'); +$objPHPExcel = $objReader->load("OOCalcTest.ods"); + + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , PHP_EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + + +echo date('H:i:s') , " Write to Excel2007 format" , PHP_EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', __FILE__) , PHP_EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , PHP_EOL; + diff --git a/site/config/PHPExcel-1.8/Examples/OOCalcReaderPCLZip.php b/site/config/PHPExcel-1.8/Examples/OOCalcReaderPCLZip.php new file mode 100644 index 0000000..2fc771c --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/OOCalcReaderPCLZip.php @@ -0,0 +1,64 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + +// Use PCLZip rather than ZipArchive to read the Excel2007 OfficeOpenXML file +PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP); + +echo date('H:i:s') , " Load from OOCalc file" , PHP_EOL; +$callStartTime = microtime(true); + +$objReader = PHPExcel_IOFactory::createReader('OOCalc'); +$objPHPExcel = $objReader->load("OOCalcTest.ods"); + + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , PHP_EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + + +echo date('H:i:s') , " Write to Excel2007 format" , PHP_EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', __FILE__) , PHP_EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , PHP_EOL; + diff --git a/site/config/PHPExcel-1.8/Examples/OOCalcTest.ods b/site/config/PHPExcel-1.8/Examples/OOCalcTest.ods new file mode 100644 index 0000000..b29db76 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/OOCalcTest.ods differ diff --git a/site/config/PHPExcel-1.8/Examples/Quadratic.php b/site/config/PHPExcel-1.8/Examples/Quadratic.php new file mode 100644 index 0000000..8440c55 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/Quadratic.php @@ -0,0 +1,68 @@ +<html> +<head> +<title>Quadratic Equation Solver</title> +</head> +<body> +<?php + +/** Error reporting **/ +error_reporting(E_ALL); + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/../Classes/'); + +?> +<h1>Quadratic Equation Solver</h1> +<form action="Quadratic.php" method="POST"> +Enter the coefficients for the Ax<sup>2</sup> + Bx + C = 0 +<table border="0" cellpadding="0" cellspacing="0"> + <tr><td><b>A&nbsp;</b></td> + <td><input name="A" type="text" size="8" value="<?php echo (isset($_POST['A'])) ? htmlentities($_POST['A']) : ''; ?>"></td> + </tr> + <tr><td><b>B&nbsp;</b></td> + <td><input name="B" type="text" size="8" value="<?php echo (isset($_POST['B'])) ? htmlentities($_POST['B']) : ''; ?>"></td> + </tr> + <tr><td><b>C&nbsp;</b></td> + <td><input name="C" type="text" size="8" value="<?php echo (isset($_POST['C'])) ? htmlentities($_POST['C']) : ''; ?>"></td> + </tr> +</table> +<input name="submit" type="submit" value="calculate"><br /> +If A=0, the equation is not quadratic. +</form> + +<?php +/** If the user has submitted the form, then we need to execute a calculation **/ +if (isset($_POST['submit'])) { + if ($_POST['A'] == 0) { + echo 'The equation is not quadratic'; + } else { + /** So we include PHPExcel to perform the calculations **/ + include 'PHPExcel/IOFactory.php'; + + /** Load the quadratic equation solver worksheet into memory **/ + $objPHPExcel = PHPExcel_IOFactory::load('./Quadratic.xlsx'); + + /** Set our A, B and C values **/ + $objPHPExcel->getActiveSheet()->setCellValue('A1', $_POST['A']); + $objPHPExcel->getActiveSheet()->setCellValue('B1', $_POST['B']); + $objPHPExcel->getActiveSheet()->setCellValue('C1', $_POST['C']); + + + /** Calculate and Display the results **/ + echo '<hr /><b>Roots:</b><br />'; + + $callStartTime = microtime(true); + echo $objPHPExcel->getActiveSheet()->getCell('B5')->getCalculatedValue().'<br />'; + echo $objPHPExcel->getActiveSheet()->getCell('B6')->getCalculatedValue().'<br />'; + $callEndTime = microtime(true); + $callTime = $callEndTime - $callStartTime; + + echo '<hr />Call time for Quadratic Equation Solution was '.sprintf('%.4f',$callTime).' seconds<br /><hr />'; + echo ' Peak memory usage: '.(memory_get_peak_usage(true) / 1024 / 1024).' MB<br />'; + } +} + +?> + +</body> +<html> diff --git a/site/config/PHPExcel-1.8/Examples/Quadratic.xlsx b/site/config/PHPExcel-1.8/Examples/Quadratic.xlsx new file mode 100644 index 0000000..9a094b3 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/Quadratic.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/Quadratic2.php b/site/config/PHPExcel-1.8/Examples/Quadratic2.php new file mode 100644 index 0000000..05cd5c1 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/Quadratic2.php @@ -0,0 +1,65 @@ +<html> +<head> +<title>Quadratic Equation Solver</title> +</head> +<body> +<?php + +/** Error reporting **/ +error_reporting(E_ALL); + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/../Classes/'); + +?> +<h1>Quadratic Equation Solver</h1> +<form action="Quadratic2.php" method="POST"> +Enter the coefficients for the Ax<sup>2</sup> + Bx + C = 0 +<table border="0" cellpadding="0" cellspacing="0"> + <tr><td><b>A&nbsp;</b></td> + <td><input name="A" type="text" size="8" value="<?php echo (isset($_POST['A'])) ? htmlentities($_POST['A']) : ''; ?>"></td> + </tr> + <tr><td><b>B&nbsp;</b></td> + <td><input name="B" type="text" size="8" value="<?php echo (isset($_POST['B'])) ? htmlentities($_POST['B']) : ''; ?>"></td> + </tr> + <tr><td><b>C&nbsp;</b></td> + <td><input name="C" type="text" size="8" value="<?php echo (isset($_POST['C'])) ? htmlentities($_POST['C']) : ''; ?>"></td> + </tr> +</table> +<input name="submit" type="submit" value="calculate"><br /> +If A=0, the equation is not quadratic. +</form> + +<?php +/** If the user has submitted the form, then we need to execute a calculation **/ +if (isset($_POST['submit'])) { + if ($_POST['A'] == 0) { + echo 'The equation is not quadratic'; + } else { + /** So we include PHPExcel to perform the calculations **/ + include 'PHPExcel/Calculation.php'; + + /** Calculate and Display the results **/ + echo '<hr /><b>Roots:</b><br />'; + + $callStartTime = microtime(true); + $discriminantFormula = '=POWER('.$_POST['B'].',2) - (4 * '.$_POST['A'].' * '.$_POST['C'].')'; + $discriminant = PHPExcel_Calculation::getInstance()->calculateFormula($discriminantFormula); + + $r1Formula = '=IMDIV(IMSUM(-'.$_POST['B'].',IMSQRT('.$discriminant.')),2 * '.$_POST['A'].')'; + $r2Formula = '=IF('.$discriminant.'=0,"Only one root",IMDIV(IMSUB(-'.$_POST['B'].',IMSQRT('.$discriminant.')),2 * '.$_POST['A'].'))'; + + echo PHPExcel_Calculation::getInstance()->calculateFormula($r1Formula).'<br />'; + echo PHPExcel_Calculation::getInstance()->calculateFormula($r2Formula).'<br />'; + $callEndTime = microtime(true); + $callTime = $callEndTime - $callStartTime; + + echo '<hr />Call time for Quadratic Equation Solution was '.sprintf('%.4f',$callTime).' seconds<br /><hr />'; + echo ' Peak memory usage: '.(memory_get_peak_usage(true) / 1024 / 1024).' MB<br />'; + } +} + +?> + +</body> +<html> diff --git a/site/config/PHPExcel-1.8/Examples/SylkReader.php b/site/config/PHPExcel-1.8/Examples/SylkReader.php new file mode 100644 index 0000000..1e77499 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/SylkReader.php @@ -0,0 +1,50 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Load from SYLK file" , PHP_EOL; +$objPHPExcel = PHPExcel_IOFactory::load("SylkTest.slk"); + +echo date('H:i:s') , " Write to Excel2007 format" , PHP_EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', __FILE__) , PHP_EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , PHP_EOL; diff --git a/site/config/PHPExcel-1.8/Examples/SylkTest.slk b/site/config/PHPExcel-1.8/Examples/SylkTest.slk new file mode 100644 index 0000000..329abe2 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/SylkTest.slk @@ -0,0 +1,152 @@ +ID;PWXL;N;E +P;PGeneral +P;P0 +P;P0.00 +P;P#,##0 +P;P#,##0.00 +P;P#,##0;;\-#,##0 +P;P#,##0;;[Red]\-#,##0 +P;P#,##0.00;;\-#,##0.00 +P;P#,##0.00;;[Red]\-#,##0.00 +P;P"$"#,##0;;\-"$"#,##0 +P;P"$"#,##0;;[Red]\-"$"#,##0 +P;P"$"#,##0.00;;\-"$"#,##0.00 +P;P"$"#,##0.00;;[Red]\-"$"#,##0.00 +P;P0% +P;P0.00% +P;P0.00E+00 +P;P##0.0E+0 +P;P#\ ?/? +P;P#\ ??/?? +P;Pdd/mm/yyyy +P;Pdd\-mmm\-yy +P;Pdd\-mmm +P;Pmmm\-yy +P;Ph:mm\ AM/PM +P;Ph:mm:ss\ AM/PM +P;Phh:mm +P;Phh:mm:ss +P;Pdd/mm/yyyy\ hh:mm +P;Pmm:ss +P;Pmm:ss.0 +P;P@ +P;P[h]:mm:ss +P;P_-"$"* #,##0_-;;\-"$"* #,##0_-;;_-"$"* "-"_-;;_-@_- +P;P_-* #,##0_-;;\-* #,##0_-;;_-* "-"_-;;_-@_- +P;P_-"$"* #,##0.00_-;;\-"$"* #,##0.00_-;;_-"$"* "-"??_-;;_-@_- +P;P_-* #,##0.00_-;;\-* #,##0.00_-;;_-* "-"??_-;;_-@_- +P;FArial;M200 +P;FArial;M200 +P;FArial;M200 +P;FArial;M200 +P;EArial;M200 +P;EArial;M200 +P;EArial;M200 +P;EArial;M200;SB +P;EArial;M200;SBI +P;EArial;M200;SI +P;EArial;M200;SU +P;EArial;M200;L11 +P;EArial;M200;SB +P;EArial;M200 +P;EArial;M200;SI +P;EArial;M200;SBI +P;EArial;M200;SBU +P;EArial;M200;SBIU +P;EArial;M200 +P;EArial;M200;SI +F;P0;DG0G8;M255 +B;Y18;X10;D0 0 17 9 +O;L;D;V0;K47;G100 0.001 +F;W1 1 17 +F;W4 6 6 +F;M270;R9 +F;M270;R12 +F;M270;R17 +F;M270;R18 +F;SM12;Y1;X1 +C;K"Test String 1" +F;SM19;X2 +C;K1 +F;SM19;X3 +C;K5 +F;SIDM18;X5 +C;K"A" +F;SDM17;X6 +C;K"E" +C;X8;K6;ERC[-6]+RC[-5] +C;X10;K"AE";ERC[-5]&RC[-4] +F;SSM0;Y2;X1 +C;K"Test - String 2" +C;X2;K2 +F;SM19;X3 +C;K6 +C;X5;K"B" +C;X6;K"F" +C;X8;K8;ERC[-6]+RC[-5] +C;X10;K"BF";ERC[-5]&RC[-4] +C;Y3;X1;K"Test #3" +F;SM19;X2 +C;K3 +F;SM19;X3 +C;K7 +F;SDM13;X5 +C;K"C" +F;SIDM16;X6 +C;K"G" +C;X8;K10;ERC[-6]+RC[-5] +C;X10;K"CG";ERC[-5]&RC[-4] +F;SM11;Y4;X1 +C;K"Test with (;;) in string" +C;X2;K4 +F;SM19;X3 +C;K8 +F;SIM15;X5 +C;K"D" +C;X6;K"H" +C;X8;K12;ERC[-6]+RC[-5] +C;X10;K"DH";ERC[-5]&RC[-4] +C;Y5;X8;K10;ESUM(R[-4]C[-6]:R[-1]C[-6]) +C;X9;K26;ESUM(R[-4]C[-6]:R[-1]C[-6]) +C;X10;K36;ESUM(R[-4]C[-8]:R[-1]C[-7]) +C;Y6;X2;K1.23 +C;X3;KTRUE +F;P19;FG0G;X4 +C;Y7;X2;K2.34 +C;X3;KFALSE +C;Y8;X2;K3.45 +F;Y9;X1 +F;X2 +F;X3 +F;X4 +F;X5 +F;X6 +F;X7 +F;X8 +F;X9 +F;X10 +F;P19;FG0G;Y10;X1 +C;K22269 +F;STM0;X3 +C;K"TOP" +F;P17;FG0G;Y11;X1 +C;K1.5 +F;Y12 +F;X2 +F;SBM0;X3 +C;K"BOTTOM" +F;X4 +F;X5 +F;X6 +F;X7 +F;X8 +F;X9 +F;X10 +F;SLM0;Y14;X3 +C;K"LEFT" +F;SRM0;Y16 +C;K"RIGHT" +F;Y17 +F;SLRTBM0;Y18 +C;K"BOX" +E diff --git a/site/config/PHPExcel-1.8/Examples/XMLReader.php b/site/config/PHPExcel-1.8/Examples/XMLReader.php new file mode 100644 index 0000000..b5dfea8 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/XMLReader.php @@ -0,0 +1,60 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Load from XML file" , PHP_EOL; +$inputFileName = "XMLTest.xml"; + +/** Identify the type of $inputFileName **/ +$inputFileType = PHPExcel_IOFactory::identify($inputFileName); +echo 'Loading ' , $inputFileName , ' using ' , $inputFileType , " Reader" , PHP_EOL; + +/** Create a new Reader of the type that has been identified **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); + + +echo date('H:i:s') , " Write to Excel2007 format" , PHP_EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', __FILE__) , PHP_EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , PHP_EOL; diff --git a/site/config/PHPExcel-1.8/Examples/XMLTest.xml b/site/config/PHPExcel-1.8/Examples/XMLTest.xml new file mode 100644 index 0000000..4159a94 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/XMLTest.xml @@ -0,0 +1,450 @@ +<?xml version="1.0"?> +<?mso-application progid="Excel.Sheet"?> +<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:o="urn:schemas-microsoft-com:office:office" + xmlns:x="urn:schemas-microsoft-com:office:excel" + xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:html="http://www.w3.org/TR/REC-html40"> + <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> + <Title>Excel 2003 XML Test Workbook</Title> + <Subject>This is a test workbook saved as Excel 2003 XML</Subject> + <Author>Mark Baker</Author> + <Keywords>PHPExcel Excel 2003 XML Reader</Keywords> + <Description>This is a test for the PHPExcel Reader for workbooks saved using Excel 2003's XML Format</Description> + <LastAuthor>Mark Baker</LastAuthor> + <Created>2009-09-11T08:26:08Z</Created> + <LastSaved>2009-09-17T22:53:09Z</LastSaved> + <Category>Reader</Category> + <Company>PHPExcel</Company> + <Version>14.00</Version> + </DocumentProperties> + <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office"> + <AllowPNG/> + </OfficeDocumentSettings> + <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> + <WindowHeight>13176</WindowHeight> + <WindowWidth>28452</WindowWidth> + <WindowTopX>240</WindowTopX> + <WindowTopY>516</WindowTopY> + <ProtectStructure>False</ProtectStructure> + <ProtectWindows>False</ProtectWindows> + </ExcelWorkbook> + <Styles> + <Style ss:ID="Default" ss:Name="Normal"> + <Alignment ss:Vertical="Bottom"/> + <Borders/> + <Font ss:FontName="Calibri" ss:Size="11" ss:Color="#000000"/> + <Interior/> + <NumberFormat/> + <Protection/> + </Style> + <Style ss:ID="m42221568"> + <Alignment ss:Horizontal="Center" ss:Vertical="Center"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="3" + ss:Color="#00B050"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="3" + ss:Color="#0070C0"/> + <Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="3" + ss:Color="#FFFF00"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="3" + ss:Color="#FF0000"/> + </Borders> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s62"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#FF0000" ss:Bold="1"/> + </Style> + <Style ss:ID="s63"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s64"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Bold="1" + ss:Italic="1" ss:Underline="Single"/> + </Style> + <Style ss:ID="s65"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Bold="1" + ss:Underline="Single"/> + </Style> + <Style ss:ID="s66"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Bold="1"/> + <Interior/> + </Style> + <Style ss:ID="s67"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + <Interior/> + </Style> + <Style ss:ID="s68"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Bold="1"/> + </Style> + <Style ss:ID="s69"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Bold="1" + ss:Italic="1"/> + </Style> + <Style ss:ID="s70"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Underline="Single"/> + </Style> + <Style ss:ID="s71"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Italic="1"/> + </Style> + <Style ss:ID="s72"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + <NumberFormat ss:Format="Short Date"/> + </Style> + <Style ss:ID="s73"> + <Borders> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2" + ss:Color="#000000"/> + </Borders> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s74"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + <NumberFormat ss:Format="#\ ?/?"/> + </Style> + <Style ss:ID="s75"> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" + ss:Color="#000000"/> + </Borders> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s76"> + <Borders> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2" + ss:Color="#000000"/> + </Borders> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s77"> + <Borders> + <Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2" + ss:Color="#000000"/> + </Borders> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s85"> + <Borders> + <Border ss:Position="DiagonalLeft" ss:LineStyle="Double" ss:Weight="3" + ss:Color="#FF0000"/> + <Border ss:Position="DiagonalRight" ss:LineStyle="Double" ss:Weight="3" + ss:Color="#FF0000"/> + </Borders> + </Style> + <Style ss:ID="s86"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom" ss:WrapText="1"/> + <Font ss:FontName="Arial" ss:Size="12" ss:Color="#000000" ss:Bold="1" + ss:Underline="Single"/> + </Style> + <Style ss:ID="s87"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + <NumberFormat ss:Format="0.00;[Red]0.00"/> + </Style> + <Style ss:ID="s88"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + <NumberFormat ss:Format="dd\-mmm\-yyyy"/> + </Style> + </Styles> + <Worksheet ss:Name="Sample Data"> + <Table ss:ExpandedColumnCount="10" ss:ExpandedRowCount="20" x:FullColumns="1" + x:FullRows="1" ss:DefaultRowHeight="15"> + <Column ss:AutoFitWidth="0" ss:Width="90.6"/> + <Column ss:Index="4" ss:AutoFitWidth="0" ss:Width="33.6"/> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s62"><Data ss:Type="String">Test String 1</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">1</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">5</Data></Cell> + <Cell ss:Index="5" ss:StyleID="s64"><Data ss:Type="String">A</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">E</Data></Cell> + <Cell ss:Index="8" ss:Formula="=RC[-6]+RC[-5]"><Data ss:Type="Number">6</Data></Cell> + <Cell ss:Index="10" ss:Formula="=RC[-5]&amp;RC[-4]"><Data ss:Type="String">AE</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s66"><Data ss:Type="String">Test - String 2</Data></Cell> + <Cell><Data ss:Type="Number">2</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">6</Data></Cell> + <Cell ss:Index="5"><Data ss:Type="String">B</Data></Cell> + <Cell><Data ss:Type="String">F</Data></Cell> + <Cell ss:Index="8" ss:Formula="=RC[-6]+RC[-5]"><Data ss:Type="Number">8</Data></Cell> + <Cell ss:Index="10" ss:Formula="=RC[-5]&amp;RC[-4]"><Data ss:Type="String">BF</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s67"><Data ss:Type="String">Test #3</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">3</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">7</Data></Cell> + <Cell ss:Index="5" ss:StyleID="s68"><Data ss:Type="String">C</Data></Cell> + <Cell ss:StyleID="s69"><Data ss:Type="String">G</Data></Cell> + <Cell ss:Index="8" ss:Formula="=RC[-6]+RC[-5]"><Data ss:Type="Number">10</Data></Cell> + <Cell ss:Index="10" ss:Formula="=RC[-5]&amp;RC[-4]"><Data ss:Type="String">CG</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s70"><Data ss:Type="String">Test with (&quot;) in string</Data></Cell> + <Cell><Data ss:Type="Number">4</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">8</Data></Cell> + <Cell ss:Index="5" ss:StyleID="s71"><Data ss:Type="String">D</Data></Cell> + <Cell><Data ss:Type="String">H</Data></Cell> + <Cell ss:Index="8" ss:Formula="=RC[-6]+RC[-5]"><Data ss:Type="Number">12</Data></Cell> + <Cell ss:Index="10" ss:Formula="=RC[-5]&amp;RC[-4]"><Data ss:Type="String">DH</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="8" ss:Formula="=SUM(R[-4]C[-6]:R[-1]C[-6])"><Data + ss:Type="Number">10</Data></Cell> + <Cell ss:Formula="=SUM(R[-4]C[-6]:R[-1]C[-6])"><Data ss:Type="Number">26</Data></Cell> + <Cell ss:Formula="=SUM(R[-4]C[-8]:R[-1]C[-7])"><Data ss:Type="Number">36</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="2"><Data ss:Type="Number">1.23</Data></Cell> + <Cell><Data ss:Type="Boolean">1</Data></Cell> + <Cell ss:StyleID="s72"/> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="2"><Data ss:Type="Number">2.34</Data></Cell> + <Cell><Data ss:Type="Boolean">0</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="2"><Data ss:Type="Number">3.45</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0" ss:Height="13.5"/> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s72"><Data ss:Type="DateTime">1960-12-19T00:00:00.000</Data></Cell> + <Cell ss:Index="3" ss:StyleID="s73"><Data ss:Type="String">TOP</Data></Cell> + <Cell ss:Index="7" ss:Formula="=#N/A"><Data ss:Type="Error">#N/A</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s74"><Data ss:Type="Number">1.5</Data></Cell> + <Cell ss:Index="7" ss:Formula="=12/0"><Data ss:Type="Error">#DIV/0!</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0" ss:Height="13.5"> + <Cell ss:Index="3" ss:StyleID="s75"><Data ss:Type="String">BOTTOM</Data></Cell> + </Row> + <Row ss:Index="14" ss:AutoFitHeight="0"> + <Cell ss:Index="3" ss:StyleID="s76"><Data ss:Type="String">LEFT</Data></Cell> + </Row> + <Row ss:Index="16" ss:AutoFitHeight="0"> + <Cell ss:Index="3" ss:StyleID="s77"><Data ss:Type="String">RIGHT</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0" ss:Height="13.5"/> + <Row ss:AutoFitHeight="0" ss:Height="13.5"> + <Cell ss:Index="2" ss:MergeAcross="1" ss:MergeDown="1" ss:StyleID="m42221568"><Data + ss:Type="String">BOX</Data></Cell> + <Cell ss:Index="5" ss:StyleID="s85"/> + <Cell ss:Index="7"><Data ss:Type="String">Test Column 1</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="8"><Data ss:Type="String">Test Column 2</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="9"><Data ss:Type="String">Test Column 3</Data></Cell> + </Row> + </Table> + <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> + <PageSetup> + <Header x:Margin="0.3"/> + <Footer x:Margin="0.3"/> + <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/> + </PageSetup> + <Unsynced/> + <Print> + <ValidPrinterInfo/> + <HorizontalResolution>600</HorizontalResolution> + <VerticalResolution>600</VerticalResolution> + </Print> + <Selected/> + <Panes> + <Pane> + <Number>3</Number> + <ActiveRow>17</ActiveRow> + <ActiveCol>4</ActiveCol> + </Pane> + </Panes> + <ProtectObjects>False</ProtectObjects> + <ProtectScenarios>False</ProtectScenarios> + <AllowFormatCells/> + <AllowSizeCols/> + <AllowSizeRows/> + <AllowInsertCols/> + <AllowInsertRows/> + <AllowInsertHyperlinks/> + <AllowDeleteCols/> + <AllowDeleteRows/> + <AllowSort/> + <AllowFilter/> + <AllowUsePivotTables/> + </WorksheetOptions> + </Worksheet> + <Worksheet ss:Name="Report Data"> + <Table ss:ExpandedColumnCount="7" ss:ExpandedRowCount="14" x:FullColumns="1" + x:FullRows="1" ss:DefaultRowHeight="15"> + <Column ss:AutoFitWidth="0" ss:Width="66.600000000000009"/> + <Column ss:AutoFitWidth="0" ss:Width="68.399999999999991"/> + <Column ss:AutoFitWidth="0" ss:Width="62.400000000000006"/> + <Column ss:Width="69.599999999999994"/> + <Column ss:Index="6" ss:Width="69.599999999999994"/> + <Column ss:AutoFitWidth="0" ss:Width="64.8"/> + <Row ss:AutoFitHeight="0" ss:Height="31.5"> + <Cell ss:StyleID="s86"><Data ss:Type="String">Heading 1</Data></Cell> + <Cell ss:StyleID="s86"><Data ss:Type="String">Heading 2</Data></Cell> + <Cell ss:StyleID="s86"><Data ss:Type="String">Third Heading</Data></Cell> + <Cell ss:StyleID="s86"><Data ss:Type="String">Date Heading</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s86"><Data ss:Type="String">Adjusted Date</Data></Cell> + <Cell ss:StyleID="s86"><Data ss:Type="String">Adjusted Number</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">ABC</Data></Cell> + <Cell><Data ss:Type="Number">1</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">1.1100000000000001</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2001-01-01T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2000-12-31T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">1.1100000000000001</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">BCD</Data></Cell> + <Cell><Data ss:Type="Number">2</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">2.2200000000000002</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2002-02-02T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2002-01-31T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">4.4400000000000004</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">CDE</Data></Cell> + <Cell><Data ss:Type="Number">3</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">3.33</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2003-03-03T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2003-02-28T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">9.99</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">DEF</Data></Cell> + <Cell><Data ss:Type="Number">4</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">4.4400000000000004</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2004-04-03T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2004-03-30T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">17.760000000000002</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">EFG</Data></Cell> + <Cell><Data ss:Type="Number">5</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">5.55</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2005-05-04T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2005-04-29T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">27.75</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">FGH</Data></Cell> + <Cell><Data ss:Type="Number">6</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">6.66</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2006-06-05T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2006-05-30T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">39.96</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">GHI</Data></Cell> + <Cell><Data ss:Type="Number">7</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">7.77</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2007-07-06T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2007-06-29T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">54.39</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">HIJ</Data></Cell> + <Cell><Data ss:Type="Number">8</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">8.8800000000000008</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2008-08-07T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2008-07-30T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">71.040000000000006</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">IJK</Data></Cell> + <Cell><Data ss:Type="Number">9</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">9.99</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2009-09-08T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2009-08-30T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">89.91</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">JKL</Data></Cell> + <Cell><Data ss:Type="Number">10</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">11.1</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2010-10-09T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2010-09-29T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">111</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">KLM</Data></Cell> + <Cell><Data ss:Type="Number">11</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">12.21</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2011-11-11T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2011-10-31T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">134.31</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">LMN</Data></Cell> + <Cell><Data ss:Type="Number">12</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">13.32</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2012-12-12T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2012-11-30T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">159.84</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">ZYX</Data></Cell> + <Cell><Data ss:Type="Number">-1</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">-1.1100000000000001</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">1999-12-01T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">1999-12-02T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">1.1100000000000001</Data></Cell> + </Row> + </Table> + <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> + <PageSetup> + <Header x:Margin="0.3"/> + <Footer x:Margin="0.3"/> + <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/> + </PageSetup> + <Unsynced/> + <Print> + <ValidPrinterInfo/> + <HorizontalResolution>600</HorizontalResolution> + <VerticalResolution>600</VerticalResolution> + </Print> + <ProtectObjects>False</ProtectObjects> + <ProtectScenarios>False</ProtectScenarios> + <AllowFormatCells/> + <AllowSizeCols/> + <AllowSizeRows/> + <AllowInsertCols/> + <AllowInsertRows/> + <AllowInsertHyperlinks/> + <AllowDeleteCols/> + <AllowDeleteRows/> + <AllowSort/> + <AllowFilter/> + <AllowUsePivotTables/> + </WorksheetOptions> + <ConditionalFormatting xmlns="urn:schemas-microsoft-com:office:excel"> + <Range>R2C3:R14C3</Range> + <Condition> + <Qualifier>Greater</Qualifier> + <Value1>0</Value1> + <Format Style='color:#006100;background:#C6EFCE'/> + </Condition> + <Condition> + <Qualifier>Less</Qualifier> + <Value1>0</Value1> + <Format Style='color:#9C0006;background:#FFC7CE'/> + </Condition> + </ConditionalFormatting> + </Worksheet> +</Workbook> diff --git a/site/config/PHPExcel-1.8/Examples/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Examples/_notes/dwsync.xml new file mode 100644 index 0000000..aeb5db7 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/_notes/dwsync.xml @@ -0,0 +1,95 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="01pharSimple.php" server="62.244.88.21/deciday/" local="131919462061971583" remote="131880384600000000" Dst="1" /> +<file name="01simple-download-ods.php" server="62.244.88.21/deciday/" local="131919462062177382" remote="131880384600000000" Dst="1" /> +<file name="01simple-download-pdf.php" server="62.244.88.21/deciday/" local="131919462062522529" remote="131880384600000000" Dst="1" /> +<file name="01simple-download-xls.php" server="62.244.88.21/deciday/" local="131919462062880928" remote="131880384600000000" Dst="1" /> +<file name="01simple-download-xlsx.php" server="62.244.88.21/deciday/" local="131919462063246201" remote="131880384600000000" Dst="1" /> +<file name="01simplePCLZip.php" server="62.244.88.21/deciday/" local="131919462063423145" remote="131880384600000000" Dst="1" /> +<file name="01simple.php" server="62.244.88.21/deciday/" local="131919462064017181" remote="131880384600000000" Dst="1" /> +<file name="02types-xls.php" server="62.244.88.21/deciday/" local="131919462064510737" remote="131880384600000000" Dst="1" /> +<file name="02types.php" server="62.244.88.21/deciday/" local="131919462064708658" remote="131880384600000000" Dst="1" /> +<file name="03formulas.php" server="62.244.88.21/deciday/" local="131919462065614907" remote="131880384600000000" Dst="1" /> +<file name="04printing.php" server="62.244.88.21/deciday/" local="131919462065623293" remote="131880384600000000" Dst="1" /> +<file name="05featuredemo.inc.php" server="62.244.88.21/deciday/" local="131919462066485970" remote="131880384600000000" Dst="1" /> +<file name="05featuredemo.php" server="62.244.88.21/deciday/" local="131919462066823391" remote="131880384600000000" Dst="1" /> +<file name="06largescale.php" server="62.244.88.21/deciday/" local="131919462066830677" remote="131880384600000000" Dst="1" /> +<file name="06largescale-with-cellcaching.php" server="62.244.88.21/deciday/" local="131919462067685271" remote="131880384600000000" Dst="1" /> +<file name="06largescale-with-cellcaching-sqlite3.php" server="62.244.88.21/deciday/" local="131919462067889037" remote="131880384600000000" Dst="1" /> +<file name="06largescale-with-cellcaching-sqlite.php" server="62.244.88.21/deciday/" local="131919462068069103" remote="131880384600000000" Dst="1" /> +<file name="06largescale-xls.php" server="62.244.88.21/deciday/" local="131919462068746747" remote="131880384600000000" Dst="1" /> +<file name="07readerPCLZip.php" server="62.244.88.21/deciday/" local="131919462069087740" remote="131880384600000000" Dst="1" /> +<file name="07reader.php" server="62.244.88.21/deciday/" local="131919462069096591" remote="131880384600000000" Dst="1" /> +<file name="08conditionalformatting2.php" server="62.244.88.21/deciday/" local="131919462069954868" remote="131880384600000000" Dst="1" /> +<file name="08conditionalformatting.php" server="62.244.88.21/deciday/" local="131919462070149597" remote="131880384600000000" Dst="1" /> +<file name="09pagebreaks.php" server="62.244.88.21/deciday/" local="131919462070332013" remote="131880384600000000" Dst="1" /> +<file name="10autofilter.php" server="62.244.88.21/deciday/" local="131919462071332715" remote="131880384600000000" Dst="1" /> +<file name="10autofilter-selection-1.php" server="62.244.88.21/deciday/" local="131919462071689241" remote="131880384600000000" Dst="1" /> +<file name="10autofilter-selection-2.php" server="62.244.88.21/deciday/" local="131919462071696070" remote="131880384600000000" Dst="1" /> +<file name="10autofilter-selection-display.php" server="62.244.88.21/deciday/" local="131919462072528588" remote="131880384600000000" Dst="1" /> +<file name="11documentsecurity.php" server="62.244.88.21/deciday/" local="131919462072743893" remote="131880384600000000" Dst="1" /> +<file name="11documentsecurity-xls.php" server="62.244.88.21/deciday/" local="131919462072924350" remote="131880384600000000" Dst="1" /> +<file name="12cellProtection.php" server="62.244.88.21/deciday/" local="131919462073461557" remote="131880384600000000" Dst="1" /> +<file name="13calculationCyclicFormulae.php" server="62.244.88.21/deciday/" local="131919462073838428" remote="131880384600000000" Dst="1" /> +<file name="13calculation.php" server="62.244.88.21/deciday/" local="131919462074158957" remote="131880384600000000" Dst="1" /> +<file name="14excel5.php" server="62.244.88.21/deciday/" local="131919462074592967" remote="131880384600000000" Dst="1" /> +<file name="15datavalidation.php" server="62.244.88.21/deciday/" local="131919462075131477" remote="131880384600000000" Dst="1" /> +<file name="15datavalidation-xls.php" server="62.244.88.21/deciday/" local="131919462075443908" remote="131880384600000000" Dst="1" /> +<file name="16csv.php" server="62.244.88.21/deciday/" local="131919462075799546" remote="131880384600000000" Dst="1" /> +<file name="17html.php" server="62.244.88.21/deciday/" local="131919462076169240" remote="131880384600000000" Dst="1" /> +<file name="18extendedcalculation.php" server="62.244.88.21/deciday/" local="131919462076356138" remote="131880384600000000" Dst="1" /> +<file name="19namedrange.php" server="62.244.88.21/deciday/" local="131919462076893556" remote="131880384600000000" Dst="1" /> +<file name="20readexcel5.php" server="62.244.88.21/deciday/" local="131919462077085362" remote="131880384600000000" Dst="1" /> +<file name="21pdf.php" server="62.244.88.21/deciday/" local="131919462077445191" remote="131880384600000000" Dst="1" /> +<file name="22heavilyformatted.php" server="62.244.88.21/deciday/" local="131919462077774150" remote="131880384600000000" Dst="1" /> +<file name="23sharedstyles.php" server="62.244.88.21/deciday/" local="131919462078127963" remote="131880384600000000" Dst="1" /> +<file name="24readfilter.php" server="62.244.88.21/deciday/" local="131919462078480243" remote="131880384600000000" Dst="1" /> +<file name="25inmemoryimage.php" server="62.244.88.21/deciday/" local="131919462078831965" remote="131880384600000000" Dst="1" /> +<file name="26utf8.php" server="62.244.88.21/deciday/" local="131919462079186012" remote="131880384600000000" Dst="1" /> +<file name="27imagesexcel5.php" server="62.244.88.21/deciday/" local="131919462079532496" remote="131880384600000000" Dst="1" /> +<file name="28iterator.php" server="62.244.88.21/deciday/" local="131919462079999531" remote="131880384600000000" Dst="1" /> +<file name="29advancedvaluebinder.php" server="62.244.88.21/deciday/" local="131919462080508955" remote="131880384600000000" Dst="1" /> +<file name="30template.php" server="62.244.88.21/deciday/" local="131919462080801197" remote="131880384600000000" Dst="1" /> +<file name="31docproperties_write.php" server="62.244.88.21/deciday/" local="131919462081177597" remote="131880384600000000" Dst="1" /> +<file name="31docproperties_write-xls.php" server="62.244.88.21/deciday/" local="131919462081642830" remote="131880384600000000" Dst="1" /> +<file name="32chartreadwrite.php" server="62.244.88.21/deciday/" local="131919462081855143" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-area.php" server="62.244.88.21/deciday/" local="131919462082391298" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-bar.php" server="62.244.88.21/deciday/" local="131919462082571396" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-bar-stacked.php" server="62.244.88.21/deciday/" local="131919462082923215" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-column.php" server="62.244.88.21/deciday/" local="131919462083463086" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-column-2.php" server="62.244.88.21/deciday/" local="131919462083642214" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-composite.php" server="62.244.88.21/deciday/" local="131919462084236745" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-line.php" server="62.244.88.21/deciday/" local="131919462084607822" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-multiple-charts.php" server="62.244.88.21/deciday/" local="131919462084792462" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-pie.php" server="62.244.88.21/deciday/" local="131919462085461445" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-radar.php" server="62.244.88.21/deciday/" local="131919462085847393" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-scatter.php" server="62.244.88.21/deciday/" local="131919462086025420" remote="131880384600000000" Dst="1" /> +<file name="33chartcreate-stock.php" server="62.244.88.21/deciday/" local="131919462086533776" remote="131880384600000000" Dst="1" /> +<file name="34chartupdate.php" server="62.244.88.21/deciday/" local="131919462086892520" remote="131880384600000000" Dst="1" /> +<file name="35chartrender.php" server="62.244.88.21/deciday/" local="131919462087071660" remote="131880384600000000" Dst="1" /> +<file name="36chartreadwriteHTML.php" server="62.244.88.21/deciday/" local="131919462087639655" remote="131880384600000000" Dst="1" /> +<file name="37page_layout_view.php" server="62.244.88.21/deciday/" local="131919462088016284" remote="131880384600000000" Dst="1" /> +<file name="36chartreadwritePDF.php" server="62.244.88.21/deciday/" local="131919462088201235" remote="131880384600000000" Dst="1" /> +<file name="38cloneWorksheet.php" server="62.244.88.21/deciday/" local="131919462088831318" remote="131880384600000000" Dst="1" /> +<file name="39dropdown.php" server="62.244.88.21/deciday/" local="131919462089152779" remote="131880384600000000" Dst="1" /> +<file name="40duplicateStyle.php" server="62.244.88.21/deciday/" local="131919462089332865" remote="131880384600000000" Dst="1" /> +<file name="41password.php" server="62.244.88.21/deciday/" local="131919462089953862" remote="131880384600000000" Dst="1" /> +<file name="43mergeWorkbooks.php" server="62.244.88.21/deciday/" local="131919462090285261" remote="131880384600000000" Dst="1" /> +<file name="42richText.php" server="62.244.88.21/deciday/" local="131919462090478710" remote="131880384600000000" Dst="1" /> +<file name="44worksheetInfo.php" server="62.244.88.21/deciday/" local="131919462094077220" remote="131880384600000000" Dst="1" /> +<file name="Excel2003XMLReader.php" server="62.244.88.21/deciday/" local="131919462096380155" remote="131880384600000000" Dst="1" /> +<file name="GnumericReader.php" server="62.244.88.21/deciday/" local="131919462097212279" remote="131880384600000000" Dst="1" /> +<file name="GnumericTest.gnumeric" server="62.244.88.21/deciday/" local="131919462097550861" remote="131880384600000000" Dst="1" /> +<file name="OOCalcReaderPCLZip.php" server="62.244.88.21/deciday/" local="131919462100950854" remote="131880384600000000" Dst="1" /> +<file name="OOCalcReader.php" server="62.244.88.21/deciday/" local="131919462101194269" remote="131880384600000000" Dst="1" /> +<file name="Quadratic2.php" server="62.244.88.21/deciday/" local="131919462102144280" remote="131880384600000000" Dst="1" /> +<file name="OOCalcTest.ods" server="62.244.88.21/deciday/" local="131919462102504121" remote="131880384600000000" Dst="1" /> +<file name="Quadratic.php" server="62.244.88.21/deciday/" local="131919462103177972" remote="131880384600000000" Dst="1" /> +<file name="Quadratic.xlsx" server="62.244.88.21/deciday/" local="131919462103812391" remote="131880384600000000" Dst="1" /> +<file name="runall.php" server="62.244.88.21/deciday/" local="131919462104222846" remote="131880384600000000" Dst="1" /> +<file name="SylkReader.php" server="62.244.88.21/deciday/" local="131919462104886048" remote="131880384600000000" Dst="1" /> +<file name="Excel2003XMLTest.xml" server="62.244.88.21/deciday/" local="131919462105076361" remote="131880384600000000" Dst="1" /> +<file name="SylkTest.slk" server="62.244.88.21/deciday/" local="131919462105532065" remote="131880384600000000" Dst="1" /> +<file name="XMLReader.php" server="62.244.88.21/deciday/" local="131919462148125774" remote="131880384600000000" Dst="1" /> +<file name="XMLTest.xml" server="62.244.88.21/deciday/" local="131919462149025079" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Examples/data/continents/Africa.txt b/site/config/PHPExcel-1.8/Examples/data/continents/Africa.txt new file mode 100644 index 0000000..407fa76 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/data/continents/Africa.txt @@ -0,0 +1,54 @@ +Algeria +Angola +Benin +Botswana +Burkina +Burundi +Cameroon +Cape Verde +Central African Republic +Chad +Comoros +Congo +Congo, Democratic Republic of +Djibouti +Egypt +Equatorial Guinea +Eritrea +Ethiopia +Gabon +Gambia +Ghana +Guinea +Guinea-Bissau +Ivory Coast +Kenya +Lesotho +Liberia +Libya +Madagascar +Malawi +Mali +Mauritania +Mauritius +Morocco +Mozambique +Namibia +Niger +Nigeria +Rwanda +Sao Tome and Principe +Senegal +Seychelles +Sierra Leone +Somalia +South Africa +South Sudan +Sudan +Swaziland +Tanzania +Togo +Tunisia +Uganda +Zambia +Zimbabwe diff --git a/site/config/PHPExcel-1.8/Examples/data/continents/Asia.txt b/site/config/PHPExcel-1.8/Examples/data/continents/Asia.txt new file mode 100644 index 0000000..9ce006c --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/data/continents/Asia.txt @@ -0,0 +1,44 @@ +Afghanistan +Bahrain +Bangladesh +Bhutan +Brunei +Burma (Myanmar) +Cambodia +China +East Timor +India +Indonesia +Iran +Iraq +Israel +Japan +Jordan +Kazakhstan +Korea, North +Korea, South +Kuwait +Kyrgyzstan +Laos +Lebanon +Malaysia +Maldives +Mongolia +Nepal +Oman +Pakistan +Philippines +Qatar +Russian Federation +Saudi Arabia +Singapore +Sri Lanka +Syria +Tajikistan +Thailand +Turkey +Turkmenistan +United Arab Emirates +Uzbekistan +Vietnam +Yemen diff --git a/site/config/PHPExcel-1.8/Examples/data/continents/Europe.txt b/site/config/PHPExcel-1.8/Examples/data/continents/Europe.txt new file mode 100644 index 0000000..70c1160 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/data/continents/Europe.txt @@ -0,0 +1,47 @@ +Albania +Andorra +Armenia +Austria +Azerbaijan +Belarus +Belgium +Bosnia and Herzegovina +Bulgaria +Croatia +Cyprus +Czech Republic +Denmark +Estonia +Finland +France +Georgia +Germany +Greece +Hungary +Iceland +Ireland +Italy +Latvia +Liechtenstein +Lithuania +Luxembourg +Macedonia +Malta +Moldova +Monaco +Montenegro +Netherlands +Norway +Poland +Portugal +Romania +San Marino +Serbia +Slovakia +Slovenia +Spain +Sweden +Switzerland +Ukraine +United Kingdom +Vatican City diff --git a/site/config/PHPExcel-1.8/Examples/data/continents/North America.txt b/site/config/PHPExcel-1.8/Examples/data/continents/North America.txt new file mode 100644 index 0000000..5881ae1 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/data/continents/North America.txt @@ -0,0 +1,23 @@ +Antigua and Barbuda +Bahamas +Barbados +Belize +Canada +Costa Rica +Cuba +Dominica +Dominican Republic +El Salvador +Grenada +Guatemala +Haiti +Honduras +Jamaica +Mexico +Nicaragua +Panama +Saint Kitts and Nevis +Saint Lucia +Saint Vincent and the Grenadines +Trinidad and Tobago +United States diff --git a/site/config/PHPExcel-1.8/Examples/data/continents/Oceania.txt b/site/config/PHPExcel-1.8/Examples/data/continents/Oceania.txt new file mode 100644 index 0000000..cbdc896 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/data/continents/Oceania.txt @@ -0,0 +1,14 @@ +Australia +Fiji +Kiribati +Marshall Islands +Micronesia +Nauru +New Zealand +Palau +Papua New Guinea +Samoa +Solomon Islands +Tonga +Tuvalu +Vanuatu diff --git a/site/config/PHPExcel-1.8/Examples/data/continents/South America.txt b/site/config/PHPExcel-1.8/Examples/data/continents/South America.txt new file mode 100644 index 0000000..777ffbf --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/data/continents/South America.txt @@ -0,0 +1,12 @@ +Argentina +Bolivia +Brazil +Chile +Colombia +Ecuador +Guyana +Paraguay +Peru +Suriname +Uruguay +Venezuela diff --git a/site/config/PHPExcel-1.8/Examples/data/continents/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Examples/data/continents/_notes/dwsync.xml new file mode 100644 index 0000000..79ea978 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/data/continents/_notes/dwsync.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Africa.txt" server="62.244.88.21/deciday/" local="131919462094267108" remote="131880384600000000" Dst="1" /> +<file name="Asia.txt" server="62.244.88.21/deciday/" local="131919462094446821" remote="131880384600000000" Dst="1" /> +<file name="Europe.txt" server="62.244.88.21/deciday/" local="131919462095111855" remote="131880384600000000" Dst="1" /> +<file name="North America.txt" server="62.244.88.21/deciday/" local="131919462095297804" remote="131880384600000000" Dst="1" /> +<file name="Oceania.txt" server="62.244.88.21/deciday/" local="131919462095498429" remote="131880384600000000" Dst="1" /> +<file name="South America.txt" server="62.244.88.21/deciday/" local="131919462096196085" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Examples/images/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Examples/images/_notes/dwsync.xml new file mode 100644 index 0000000..13c89ce --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/images/_notes/dwsync.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="paid.png" server="62.244.88.21/deciday/" local="131919462098655854" remote="131880384600000000" Dst="1" /> +<file name="officelogo.jpg" server="62.244.88.21/deciday/" local="131919462098874178" remote="131880384600000000" Dst="1" /> +<file name="phpexcel_logo.gif" server="62.244.88.21/deciday/" local="131919462099702476" remote="131880384600000000" Dst="1" /> +<file name="termsconditions.jpg" server="62.244.88.21/deciday/" local="131919462099925573" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Examples/images/officelogo.jpg b/site/config/PHPExcel-1.8/Examples/images/officelogo.jpg new file mode 100644 index 0000000..7e0133d Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/images/officelogo.jpg differ diff --git a/site/config/PHPExcel-1.8/Examples/images/paid.png b/site/config/PHPExcel-1.8/Examples/images/paid.png new file mode 100644 index 0000000..a4355bd Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/images/paid.png differ diff --git a/site/config/PHPExcel-1.8/Examples/images/phpexcel_logo.gif b/site/config/PHPExcel-1.8/Examples/images/phpexcel_logo.gif new file mode 100644 index 0000000..6e1b5ee Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/images/phpexcel_logo.gif differ diff --git a/site/config/PHPExcel-1.8/Examples/images/termsconditions.jpg b/site/config/PHPExcel-1.8/Examples/images/termsconditions.jpg new file mode 100644 index 0000000..1f21302 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/images/termsconditions.jpg differ diff --git a/site/config/PHPExcel-1.8/Examples/runall.php b/site/config/PHPExcel-1.8/Examples/runall.php new file mode 100644 index 0000000..153cb76 --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/runall.php @@ -0,0 +1,132 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2015 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version ##VERSION##, ##DATE## + */ + +/** Error reporting */ +error_reporting(E_ALL); + +if (PHP_SAPI != 'cli') { + die ('This script executes all tests, and should only be run from the command line'); +} + +// List of tests +$aTests = array( + '01simple.php' + , '01simplePCLZip.php' + , '02types.php' + , '02types-xls.php' + , '03formulas.php' + , '04printing.php' + , '05featuredemo.php' + , '06largescale.php' + , '06largescale-with-cellcaching.php' + , '06largescale-with-cellcaching-sqlite.php' + , '06largescale-with-cellcaching-sqlite3.php' + , '06largescale-xls.php' + , '07reader.php' + , '07readerPCLZip.php' + , '08conditionalformatting.php' + , '08conditionalformatting2.php' + , '09pagebreaks.php' + , '10autofilter.php' + , '10autofilter-selection-1.php' + , '10autofilter-selection-2.php' + , '10autofilter-selection-display.php' + , '11documentsecurity.php' + , '11documentsecurity-xls.php' + , '12cellProtection.php' + , '13calculation.php' + , '13calculationCyclicFormulae.php' + , '14excel5.php' + , '15datavalidation.php' + , '15datavalidation-xls.php' + , '16csv.php' + , '17html.php' + , '18extendedcalculation.php' + , '19namedrange.php' + , '20readexcel5.php' + , '21pdf.php' + , '22heavilyformatted.php' + , '23sharedstyles.php' + , '24readfilter.php' + , '25inmemoryimage.php' + , '26utf8.php' + , '27imagesexcel5.php' + , '28iterator.php' + , '29advancedvaluebinder.php' + , '30template.php' + , '31docproperties_write.php' + , '31docproperties_write-xls.php' + , '32chartreadwrite.php' + , '33chartcreate-area.php' + , '33chartcreate-bar.php' + , '33chartcreate-bar-stacked.php' + , '33chartcreate-column.php' + , '33chartcreate-column-2.php' + , '33chartcreate-line.php' + , '33chartcreate-pie.php' + , '33chartcreate-radar.php' + , '33chartcreate-stock.php' + , '33chartcreate-multiple-charts.php' + , '33chartcreate-composite.php' + , '34chartupdate.php' + , '35chartrender.php' + , '36chartreadwriteHTML.php' + , '36chartreadwritePDF.php' + , '37page_layout_view.php' + , '38cloneWorksheet.php' + , '39dropdown.php' + , '40duplicateStyle.php' + , '41password.php' + , '42richText.php' + , '43mergeWorkbooks.php' + , '44worksheetInfo.php' + , 'OOCalcReader.php' + , 'OOCalcReaderPCLZip.php' + , 'SylkReader.php' + , 'Excel2003XMLReader.php' + , 'XMLReader.php' + , 'GnumericReader.php' +); + +// First, clear all previous run results +foreach ($aTests as $sTest) { + @unlink( str_replace('.php', '.xls', $sTest) ); + @unlink( str_replace('.php', '.xlsx', $sTest) ); + @unlink( str_replace('.php', '.csv', $sTest) ); + @unlink( str_replace('.php', '.htm', $sTest) ); + @unlink( str_replace('.php', '.pdf', $sTest) ); +} + +// Run all tests +foreach ($aTests as $sTest) { + echo '============== TEST ==============' . "\r\n"; + echo 'Test name: ' . $sTest . "\r\n"; + echo "\r\n"; + echo shell_exec('php ' . $sTest); + echo "\r\n"; + echo "\r\n"; +} \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/Examples/templates/26template.xlsx b/site/config/PHPExcel-1.8/Examples/templates/26template.xlsx new file mode 100644 index 0000000..a466c5d Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/26template.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/27template.xls b/site/config/PHPExcel-1.8/Examples/templates/27template.xls new file mode 100644 index 0000000..39bc8ba Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/27template.xls differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/30template.xls b/site/config/PHPExcel-1.8/Examples/templates/30template.xls new file mode 100644 index 0000000..af8de03 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/30template.xls differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/31docproperties.xls b/site/config/PHPExcel-1.8/Examples/templates/31docproperties.xls new file mode 100644 index 0000000..522a6f7 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/31docproperties.xls differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/31docproperties.xlsx b/site/config/PHPExcel-1.8/Examples/templates/31docproperties.xlsx new file mode 100644 index 0000000..5d2b8ad Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/31docproperties.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32chartreadwrite.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32chartreadwrite.xlsx new file mode 100644 index 0000000..70a9571 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32chartreadwrite.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32complexChartreadwrite.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32complexChartreadwrite.xlsx new file mode 100644 index 0000000..f9df941 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32complexChartreadwrite.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart1.xlsx new file mode 100644 index 0000000..d44ae53 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart2.xlsx new file mode 100644 index 0000000..18c7be3 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart3.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart3.xlsx new file mode 100644 index 0000000..4572326 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart3.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart3D1.xlsx new file mode 100644 index 0000000..4f9b8dd Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaPercentageChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaPercentageChart1.xlsx new file mode 100644 index 0000000..45d37b6 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaPercentageChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaPercentageChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaPercentageChart2.xlsx new file mode 100644 index 0000000..653a28c Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaPercentageChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaPercentageChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaPercentageChart3D1.xlsx new file mode 100644 index 0000000..7306d0d Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaPercentageChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaStackedChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaStackedChart1.xlsx new file mode 100644 index 0000000..157fd05 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaStackedChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaStackedChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaStackedChart2.xlsx new file mode 100644 index 0000000..e52b091 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaStackedChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaStackedChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaStackedChart3D1.xlsx new file mode 100644 index 0000000..911634f Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteAreaStackedChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart1.xlsx new file mode 100644 index 0000000..b0d6ea1 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart2.xlsx new file mode 100644 index 0000000..7eac33e Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart3.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart3.xlsx new file mode 100644 index 0000000..d1fb401 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart3.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart3D1.xlsx new file mode 100644 index 0000000..0e9cdf0 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarPercentageChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarPercentageChart1.xlsx new file mode 100644 index 0000000..7640b5b Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarPercentageChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarPercentageChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarPercentageChart2.xlsx new file mode 100644 index 0000000..00b900c Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarPercentageChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarPercentageChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarPercentageChart3D1.xlsx new file mode 100644 index 0000000..73e8d8c Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarPercentageChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarStackedChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarStackedChart1.xlsx new file mode 100644 index 0000000..50d6594 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarStackedChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarStackedChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarStackedChart2.xlsx new file mode 100644 index 0000000..b82780c Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarStackedChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarStackedChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarStackedChart3D1.xlsx new file mode 100644 index 0000000..805ca55 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBarStackedChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBubbleChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBubbleChart1.xlsx new file mode 100644 index 0000000..3b3338e Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBubbleChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteBubbleChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBubbleChart3D1.xlsx new file mode 100644 index 0000000..aec55e9 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteBubbleChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteChartWithImages1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteChartWithImages1.xlsx new file mode 100644 index 0000000..9b7a017 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteChartWithImages1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart1.xlsx new file mode 100644 index 0000000..e83f00e Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart2.xlsx new file mode 100644 index 0000000..5e2d07e Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart3.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart3.xlsx new file mode 100644 index 0000000..d34029d Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart3.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart3D1.xlsx new file mode 100644 index 0000000..107c7d1 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart4.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart4.xlsx new file mode 100644 index 0000000..af220cc Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnChart4.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnPercentageChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnPercentageChart1.xlsx new file mode 100644 index 0000000..8032d09 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnPercentageChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnPercentageChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnPercentageChart2.xlsx new file mode 100644 index 0000000..28a1758 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnPercentageChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnPercentageChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnPercentageChart3D1.xlsx new file mode 100644 index 0000000..2cae583 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnPercentageChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnStackedChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnStackedChart1.xlsx new file mode 100644 index 0000000..38ea2c7 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnStackedChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnStackedChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnStackedChart2.xlsx new file mode 100644 index 0000000..3962823 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnStackedChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnStackedChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnStackedChart3D1.xlsx new file mode 100644 index 0000000..8ad8ab5 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteColumnStackedChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart1.xlsx new file mode 100644 index 0000000..56f5752 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart2.xlsx new file mode 100644 index 0000000..613839b Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart3.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart3.xlsx new file mode 100644 index 0000000..e2798d9 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart3.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart4.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart4.xlsx new file mode 100644 index 0000000..9854429 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChart4.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChartExploded1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChartExploded1.xlsx new file mode 100644 index 0000000..f22f708 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChartExploded1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChartMultiseries1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChartMultiseries1.xlsx new file mode 100644 index 0000000..ab77e7e Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteDonutChartMultiseries1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart1.xlsx new file mode 100644 index 0000000..ca2bccc Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart2.xlsx new file mode 100644 index 0000000..93a0209 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart3.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart3.xlsx new file mode 100644 index 0000000..095199f Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart3.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart3D1.xlsx new file mode 100644 index 0000000..0440e85 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChartNoPointMarkers1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChartNoPointMarkers1.xlsx new file mode 100644 index 0000000..e1e11e3 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineChartNoPointMarkers1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteLinePercentageChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLinePercentageChart1.xlsx new file mode 100644 index 0000000..e336da7 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLinePercentageChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteLinePercentageChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLinePercentageChart2.xlsx new file mode 100644 index 0000000..cacddd1 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLinePercentageChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineStackedChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineStackedChart1.xlsx new file mode 100644 index 0000000..fe13e47 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineStackedChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineStackedChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineStackedChart2.xlsx new file mode 100644 index 0000000..5389774 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteLineStackedChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart1.xlsx new file mode 100644 index 0000000..2101d63 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart2.xlsx new file mode 100644 index 0000000..acd09e7 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart3.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart3.xlsx new file mode 100644 index 0000000..4d617ff Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart3.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart3D1.xlsx new file mode 100644 index 0000000..25bcedf Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart4.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart4.xlsx new file mode 100644 index 0000000..03e4931 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChart4.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChartExploded1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChartExploded1.xlsx new file mode 100644 index 0000000..d50c1db Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChartExploded1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChartExploded3D1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChartExploded3D1.xlsx new file mode 100644 index 0000000..ef8b1e5 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwritePieChartExploded3D1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteRadarChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteRadarChart1.xlsx new file mode 100644 index 0000000..a327a5d Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteRadarChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteRadarChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteRadarChart2.xlsx new file mode 100644 index 0000000..c6f7d2b Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteRadarChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteRadarChart3.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteRadarChart3.xlsx new file mode 100644 index 0000000..559ec59 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteRadarChart3.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart1.xlsx new file mode 100644 index 0000000..92c4c8d Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart2.xlsx new file mode 100644 index 0000000..836dcd5 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart3.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart3.xlsx new file mode 100644 index 0000000..cfd3a3f Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart3.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart4.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart4.xlsx new file mode 100644 index 0000000..2460aff Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart4.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart5.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart5.xlsx new file mode 100644 index 0000000..a4f13f1 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteScatterChart5.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart1.xlsx new file mode 100644 index 0000000..55668e9 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart2.xlsx new file mode 100644 index 0000000..1e6d1ff Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart3.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart3.xlsx new file mode 100644 index 0000000..8cd1048 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart3.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart4.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart4.xlsx new file mode 100644 index 0000000..82289bc Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteStockChart4.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart1.xlsx new file mode 100644 index 0000000..d46b9c7 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart2.xlsx new file mode 100644 index 0000000..510cb32 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart3.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart3.xlsx new file mode 100644 index 0000000..386c228 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart3.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart4.xlsx b/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart4.xlsx new file mode 100644 index 0000000..8f1a9db Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/32readwriteSurfaceChart4.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/36writeLineChart1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/36writeLineChart1.xlsx new file mode 100644 index 0000000..095199f Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/36writeLineChart1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/43mergeBook1.xlsx b/site/config/PHPExcel-1.8/Examples/templates/43mergeBook1.xlsx new file mode 100644 index 0000000..6efc05a Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/43mergeBook1.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/43mergeBook2.xlsx b/site/config/PHPExcel-1.8/Examples/templates/43mergeBook2.xlsx new file mode 100644 index 0000000..1eb6035 Binary files /dev/null and b/site/config/PHPExcel-1.8/Examples/templates/43mergeBook2.xlsx differ diff --git a/site/config/PHPExcel-1.8/Examples/templates/_notes/dwsync.xml b/site/config/PHPExcel-1.8/Examples/templates/_notes/dwsync.xml new file mode 100644 index 0000000..e7e9d6f --- /dev/null +++ b/site/config/PHPExcel-1.8/Examples/templates/_notes/dwsync.xml @@ -0,0 +1,85 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="26template.xlsx" server="62.244.88.21/deciday/" local="131919462106411768" remote="131880384600000000" Dst="1" /> +<file name="30template.xls" server="62.244.88.21/deciday/" local="131919462107286119" remote="131880384600000000" Dst="1" /> +<file name="31docproperties.xls" server="62.244.88.21/deciday/" local="131919462107961374" remote="131880384600000000" Dst="1" /> +<file name="31docproperties.xlsx" server="62.244.88.21/deciday/" local="131919462108568654" remote="131880384600000000" Dst="1" /> +<file name="32chartreadwrite.xlsx" server="62.244.88.21/deciday/" local="131919462109570851" remote="131880384600000000" Dst="1" /> +<file name="32complexChartreadwrite.xlsx" server="62.244.88.21/deciday/" local="131919462109951274" remote="131880384600000000" Dst="1" /> +<file name="27template.xls" server="62.244.88.21/deciday/" local="131919462110249574" remote="131880384600000000" Dst="1" /> +<file name="32readwriteAreaChart1.xlsx" server="62.244.88.21/deciday/" local="131919462111064453" remote="131880384600000000" Dst="1" /> +<file name="32readwriteAreaChart2.xlsx" server="62.244.88.21/deciday/" local="131919462111575347" remote="131880384600000000" Dst="1" /> +<file name="32readwriteAreaChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462111753097" remote="131880384600000000" Dst="1" /> +<file name="32readwriteAreaChart3.xlsx" server="62.244.88.21/deciday/" local="131919462112458262" remote="131880384600000000" Dst="1" /> +<file name="32readwriteAreaPercentageChart1.xlsx" server="62.244.88.21/deciday/" local="131919462112883860" remote="131880384600000000" Dst="1" /> +<file name="32readwriteAreaPercentageChart2.xlsx" server="62.244.88.21/deciday/" local="131919462113359615" remote="131880384600000000" Dst="1" /> +<file name="32readwriteAreaPercentageChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462113986277" remote="131880384600000000" Dst="1" /> +<file name="32readwriteAreaStackedChart1.xlsx" server="62.244.88.21/deciday/" local="131919462114190398" remote="131880384600000000" Dst="1" /> +<file name="32readwriteAreaStackedChart2.xlsx" server="62.244.88.21/deciday/" local="131919462114635886" remote="131880384600000000" Dst="1" /> +<file name="32readwriteAreaStackedChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462115299167" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBarChart1.xlsx" server="62.244.88.21/deciday/" local="131919462115513732" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBarChart2.xlsx" server="62.244.88.21/deciday/" local="131919462115994720" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBarChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462116657511" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBarChart3.xlsx" server="62.244.88.21/deciday/" local="131919462116844284" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBarPercentageChart1.xlsx" server="62.244.88.21/deciday/" local="131919462117500398" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBarPercentageChart2.xlsx" server="62.244.88.21/deciday/" local="131919462117865468" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBarPercentageChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462118173015" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBarStackedChart1.xlsx" server="62.244.88.21/deciday/" local="131919462119013171" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBarStackedChart2.xlsx" server="62.244.88.21/deciday/" local="131919462119400366" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBarStackedChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462119725980" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBubbleChart1.xlsx" server="62.244.88.21/deciday/" local="131919462120793138" remote="131880384600000000" Dst="1" /> +<file name="32readwriteBubbleChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462120985657" remote="131880384600000000" Dst="1" /> +<file name="32readwriteChartWithImages1.xlsx" server="62.244.88.21/deciday/" local="131919462121407664" remote="131880384600000000" Dst="1" /> +<file name="32readwriteColumnChart2.xlsx" server="62.244.88.21/deciday/" local="131919462122259474" remote="131880384600000000" Dst="1" /> +<file name="32readwriteColumnChart1.xlsx" server="62.244.88.21/deciday/" local="131919462122476207" remote="131880384600000000" Dst="1" /> +<file name="32readwriteColumnChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462122798397" remote="131880384600000000" Dst="1" /> +<file name="32readwriteColumnChart3.xlsx" server="62.244.88.21/deciday/" local="131919462123611169" remote="131880384600000000" Dst="1" /> +<file name="32readwriteColumnChart4.xlsx" server="62.244.88.21/deciday/" local="131919462124036021" remote="131880384600000000" Dst="1" /> +<file name="32readwriteColumnPercentageChart1.xlsx" server="62.244.88.21/deciday/" local="131919462124447116" remote="131880384600000000" Dst="1" /> +<file name="32readwriteColumnPercentageChart2.xlsx" server="62.244.88.21/deciday/" local="131919462125113401" remote="131880384600000000" Dst="1" /> +<file name="32readwriteColumnPercentageChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462125431867" remote="131880384600000000" Dst="1" /> +<file name="32readwriteColumnStackedChart1.xlsx" server="62.244.88.21/deciday/" local="131919462125775711" remote="131880384600000000" Dst="1" /> +<file name="32readwriteColumnStackedChart2.xlsx" server="62.244.88.21/deciday/" local="131919462126447608" remote="131880384600000000" Dst="1" /> +<file name="32readwriteColumnStackedChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462126835615" remote="131880384600000000" Dst="1" /> +<file name="32readwriteDonutChart1.xlsx" server="62.244.88.21/deciday/" local="131919462127161566" remote="131880384600000000" Dst="1" /> +<file name="32readwriteDonutChart2.xlsx" server="62.244.88.21/deciday/" local="131919462127928620" remote="131880384600000000" Dst="1" /> +<file name="32readwriteDonutChart3.xlsx" server="62.244.88.21/deciday/" local="131919462128166527" remote="131880384600000000" Dst="1" /> +<file name="32readwriteDonutChart4.xlsx" server="62.244.88.21/deciday/" local="131919462128595224" remote="131880384600000000" Dst="1" /> +<file name="32readwriteDonutChartExploded1.xlsx" server="62.244.88.21/deciday/" local="131919462129447252" remote="131880384600000000" Dst="1" /> +<file name="32readwriteDonutChartMultiseries1.xlsx" server="62.244.88.21/deciday/" local="131919462129789211" remote="131880384600000000" Dst="1" /> +<file name="32readwriteLineChart1.xlsx" server="62.244.88.21/deciday/" local="131919462130125453" remote="131880384600000000" Dst="1" /> +<file name="32readwriteLineChart2.xlsx" server="62.244.88.21/deciday/" local="131919462130816968" remote="131880384600000000" Dst="1" /> +<file name="32readwriteLineChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462131160799" remote="131880384600000000" Dst="1" /> +<file name="32readwriteLineChart3.xlsx" server="62.244.88.21/deciday/" local="131919462131507875" remote="131880384600000000" Dst="1" /> +<file name="32readwriteLineChartNoPointMarkers1.xlsx" server="62.244.88.21/deciday/" local="131919462132163260" remote="131880384600000000" Dst="1" /> +<file name="32readwriteLinePercentageChart1.xlsx" server="62.244.88.21/deciday/" local="131919462132508972" remote="131880384600000000" Dst="1" /> +<file name="32readwriteLinePercentageChart2.xlsx" server="62.244.88.21/deciday/" local="131919462132894930" remote="131880384600000000" Dst="1" /> +<file name="32readwriteLineStackedChart1.xlsx" server="62.244.88.21/deciday/" local="131919462133537349" remote="131880384600000000" Dst="1" /> +<file name="32readwriteLineStackedChart2.xlsx" server="62.244.88.21/deciday/" local="131919462133918001" remote="131880384600000000" Dst="1" /> +<file name="32readwritePieChart1.xlsx" server="62.244.88.21/deciday/" local="131919462134370140" remote="131880384600000000" Dst="1" /> +<file name="32readwritePieChart2.xlsx" server="62.244.88.21/deciday/" local="131919462135044733" remote="131880384600000000" Dst="1" /> +<file name="32readwritePieChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919462135391729" remote="131880384600000000" Dst="1" /> +<file name="32readwritePieChart3.xlsx" server="62.244.88.21/deciday/" local="131919462136054150" remote="131880384600000000" Dst="1" /> +<file name="32readwritePieChart4.xlsx" server="62.244.88.21/deciday/" local="131919462136471195" remote="131880384600000000" Dst="1" /> +<file name="32readwritePieChartExploded1.xlsx" server="62.244.88.21/deciday/" local="131919462136993149" remote="131880384600000000" Dst="1" /> +<file name="32readwritePieChartExploded3D1.xlsx" server="62.244.88.21/deciday/" local="131919462137713235" remote="131880384600000000" Dst="1" /> +<file name="32readwriteRadarChart1.xlsx" server="62.244.88.21/deciday/" local="131919462137925875" remote="131880384600000000" Dst="1" /> +<file name="32readwriteRadarChart2.xlsx" server="62.244.88.21/deciday/" local="131919462138398449" remote="131880384600000000" Dst="1" /> +<file name="32readwriteRadarChart3.xlsx" server="62.244.88.21/deciday/" local="131919462139341839" remote="131880384600000000" Dst="1" /> +<file name="32readwriteScatterChart1.xlsx" server="62.244.88.21/deciday/" local="131919462139626629" remote="131880384600000000" Dst="1" /> +<file name="32readwriteScatterChart2.xlsx" server="62.244.88.21/deciday/" local="131919462139901976" remote="131880384600000000" Dst="1" /> +<file name="32readwriteScatterChart3.xlsx" server="62.244.88.21/deciday/" local="131919462141061412" remote="131880384600000000" Dst="1" /> +<file name="32readwriteScatterChart4.xlsx" server="62.244.88.21/deciday/" local="131919462141267942" remote="131880384600000000" Dst="1" /> +<file name="32readwriteScatterChart5.xlsx" server="62.244.88.21/deciday/" local="131919462141454319" remote="131880384600000000" Dst="1" /> +<file name="32readwriteStockChart1.xlsx" server="62.244.88.21/deciday/" local="131919462142699610" remote="131880384600000000" Dst="1" /> +<file name="32readwriteStockChart2.xlsx" server="62.244.88.21/deciday/" local="131919462143046899" remote="131880384600000000" Dst="1" /> +<file name="32readwriteStockChart3.xlsx" server="62.244.88.21/deciday/" local="131919462143054667" remote="131880384600000000" Dst="1" /> +<file name="32readwriteSurfaceChart1.xlsx" server="62.244.88.21/deciday/" local="131919462144421151" remote="131880384600000000" Dst="1" /> +<file name="32readwriteSurfaceChart2.xlsx" server="62.244.88.21/deciday/" local="131919462144617141" remote="131880384600000000" Dst="1" /> +<file name="32readwriteStockChart4.xlsx" server="62.244.88.21/deciday/" local="131919462144808294" remote="131880384600000000" Dst="1" /> +<file name="32readwriteSurfaceChart3.xlsx" server="62.244.88.21/deciday/" local="131919462146186285" remote="131880384600000000" Dst="1" /> +<file name="36writeLineChart1.xlsx" server="62.244.88.21/deciday/" local="131919462146386993" remote="131880384600000000" Dst="1" /> +<file name="32readwriteSurfaceChart4.xlsx" server="62.244.88.21/deciday/" local="131919462146602787" remote="131880384600000000" Dst="1" /> +<file name="43mergeBook2.xlsx" server="62.244.88.21/deciday/" local="131919462147504511" remote="131880384600000000" Dst="1" /> +<file name="43mergeBook1.xlsx" server="62.244.88.21/deciday/" local="131919462147703271" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/_notes/dwsync.xml b/site/config/PHPExcel-1.8/_notes/dwsync.xml new file mode 100644 index 0000000..9f5ca73 --- /dev/null +++ b/site/config/PHPExcel-1.8/_notes/dwsync.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="changelog.txt" server="62.244.88.21/deciday/" local="131919461828602297" remote="131880384600000000" Dst="1" /> +<file name="composer.json" server="62.244.88.21/deciday/" local="131919461973342474" remote="131880384600000000" Dst="1" /> +<file name="install.txt" server="62.244.88.21/deciday/" local="131919462148838744" remote="131880384600000000" Dst="1" /> +<file name="license.md" server="62.244.88.21/deciday/" local="131919462149699802" remote="131880384600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/changelog.txt b/site/config/PHPExcel-1.8/changelog.txt new file mode 100644 index 0000000..1d5c9fe --- /dev/null +++ b/site/config/PHPExcel-1.8/changelog.txt @@ -0,0 +1,1444 @@ +************************************************************************************** +* PHPExcel +* +* Copyright (c) 2006 - 2014 PHPExcel +* +* 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 library 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 GNU Lesser General Public +* License along with this library; if not, write to the Free Software +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +* +* @copyright Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel) +* @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +* @version ##VERSION##, ##DATE## +************************************************************************************** + + +Planned for 1.8.2 +- Bugfix: (MBaker) - Fix to getCell() method when cell reference includes a worksheet reference +- Bugfix: (ncrypthic) Work Item GH-570 - Ignore inlineStr type if formula element exists +- Bugfix: (hernst42) Work Item GH-709 - Fixed missing renames of writeRelationShip (from _writeRelationShip) +- General: (umpirsky) Work Item GH-548 - Optimize vlookup() sort +- Bugfix: (MBaker) Work Item GH-554 - Whitespace after toRichTextObject() +- Feature: (MBaker) - Initial implementation of SUMIFS() function +- Feature: (MBaker) - Additional codepages +- Feature: (Tomino2112) Work Item GH-808 - MemoryDrawing not working in HTML writer +- General: (rentalhost) Work Item GH-575 - Excel 2007 Reader freezes because of conditional formatting +- Bugfix: (vitalyrepin) Pull Request 869 - c:max and c:min elements shall NOT be inside c:orientation elements +- General: (sim642) Pull Request 489 - Implement actual timezone adjustment into PHPExcel_Shared_Date::PHPToExcel + + +2015-04-30 (v1.8.1): +- Bugfix: (goncons) Work Item GH-397 - Fix for Writing an Open Document cell with non-numeric formula +- Bugfix: (sarciszewski) Work Item GH-329 - Avoid potential divide by zero in basedrawing +- Bugfix: (ymaerschalck) Work Item GH-405 - XML External Entity (XXE) Processing, different behaviour between simplexml_load_string() and simplexml_load_file(). +- Bugfix: (MBaker) - Fix to ensure that current cell is maintained when executing formula calculations +- Bugfix: (MBaker) Work Item GH-350 - Keep/set the value on Reader _loadSheetsOnly as NULL, courtesy of Restless-ET +- Bugfix: (MBaker) Work Item CP18105 - Loading an Excel 2007 spreadsheet throws an "Autofilter must be set on a range of cells" exception +- Bugfix: (MBaker) Work Item GH-388 - Fix to autoloader registration for backward compatibility with PHP 5.2.0 not accepting the prepend flag +- Bugfix: (MBaker) Work Item GH-384 - DOM loadHTMLFile() failing with options flags when using PHP < 5.4.0 +- Bugfix: (MBaker) - Fix for percentage operator in formulae for BIFF Writer +- Bugfix: (MBaker) - Fix to getStyle() call for cell object +- Bugfix: (MBaker) - Discard Autofilters in Excel2007 Reader when filter range isn't a valid range +- Bugfix: (frozenstupidity) Work Item GH-423 - Fix invalid NA return in VLOOKUP +- Bugfix: (wiseloren) Work Item CP21454 - "No Impact" conditional formatting fix for NumberFormat +- Bugfix: (bobwitlox) Work Item GH-467 - Bug in Excel2003XML reader, parsing merged cells +- Bugfix: (MBaker) Work Item GH-302 - Fix for CEIL() and FLOOR() when number argument is zero +- Bugfix: (MBaker) - Remove cells cleanly when calling RemoveRow() or RemoveColumn() +- General: (MBaker) - Small performance improvement for autosize columns +- General: (frost-nzcr4) Work Item GH-379 - Change the getter/setter for zeroHeight to camel case +- General: (MBaker) Work Item GH-394 - DefaultValueBinder is too much aggressive when converting string to numeric +- General: (MBaker) - Default precalculate formulas to false for writers +- General: (MBaker) - Set default Cyclic Reference behaviour to 1 to eliminate exception when using a single cyclic iteration in formulae +- General: (MBaker) Work Item GH-396 - Some Excel writer libraries erroneously use Codepage 21010 for UTF-16LE +- Feature: (WiktrzGE) Work Item GH-404 - Methods to manage most of the existing options for Chart Axis, Major Grid-lines and Minor Grid-lines +- Feature: (frost-nzcr4) Work Item GH-403 - ODS read/write comments in the cell +- Feature: (CQD) Work Item GH-389 - Additional Mac CJK codepage definitions +- Feature: (bolovincev) Work Item GH-269 - Update Worksheet.php getStyleByColumnAndRow() to allow a range of cells rather than just a single cell +- Feature: (MBaker) - New methods added for testing cell status within merge groups +- Feature: (cifren/MBaker) Work Item GH-205 - Handling merge cells in HTML Reader +- Feature: (MBaker) - Helper to convert basic HTML markup to a Rich Text object +- Feature: (MBaker) - Improved Iterators + New Column Iterator + Support for row and column ranges + Improved handling for next/prev +- Security: (MBaker) - XML filescan in XML-based Readers to prevent XML Entity Expansion (XEE) + (see http://projects.webappsec.org/w/page/13247002/XML%20Entity%20Expansion for an explanation of XEE injection) attacks + Reference CVE-2015-3542 - Identification of problem courtesy of Dawid Golunski (Pentest Ltd.) + +2014-03-02 (v1.8.0): +- Bugfix: (MBaker) Work item CP19830 - Undefined variable: fileHandle in CSV Reader +- Bugfix: (MBaker) Work item CP19968 - Out of memory in style/supervisor.php +- Bugfix: (MBaker) - Style error with merged cells in PDF Writer +- Bugfix: (MBaker) - Problem with cloning worksheets +- Bugfix: (tavoarcila) Work Item GH-259 - Bug fix reading Open Office files +- Bugfix: (MBaker) Work item CP20397 - Serious bug in absolute cell reference used in shared formula + Would also have affected insert/delete column/row +- Bugfix: (RomanSyroeshko) Work Item GH-267 - CHOOSE() returns "#VALUE!" if the 1st entry is chosen +- Bugfix: (Gemorroj) Work Item GH-268 - When duplicating styles, styles shifted by one column to the right + Fix also applied to duplicating conditional styles +- Bugfix: (IndrekHaav) Work Item GH-212 - Fix for formulae that reference a sheet whose name begins with a digit: + these were erroneously identified as numeric values, causing the parser to throw an undefined variable error. +- Bugfix: (IndrekHaav) Work Item CP16208 - Fixed undefined variable error due to $styleArray being used before it's initialised +- Bugfix: (PowerKiKi) Work Item GH-273 - ISTEXT() return wrong result if referencing an empty but formatted cell +- Bugfix: (PowerKiKi) Work Item GH-270/GH-31 - Binary comparison of strings are case insensitive +- Bugfix: (MBaker) Work Item GH-275 - Insert New Row/Column Before is not correctly updating formula references +- Bugfix: (MBaker) Work Item GH-257 - Passing an array of cells to _generateRow() in the HTML/PDF Writer causes caching problems with last cell in the range +- Bugfix: (MBaker) Work Item GH-193 - Fix to empty worksheet garbage collection when using cell caching +- Bugfix: (Jazzo) Work Item GH-248 - Excel2007 does not correctly mark rows as hidden +- Bugfix: (Roy Shahbazian) Work Item GH-299 - Fixed typo in Chart/Layout set/getYMode() +- Bugfix: (EliuFlorez) Work item GH-279 - Fatal error: Call to a member function cellExists() line: 3327 in calculation.php if referenced worksheet doesn't exist +- Bugfix: (MBaker) Work Item GH-290 - AdvancedValueBinder "Division by zero"-error +- Bugfix: (MBaker) Work Item CP20604 - Adding Sheet to Workbook Bug +- Bugfix: (MBaker) Work item CP20703 - Calculation engine incorrectly evaluates empty cells as #VALUE +- Bugfix: (MBaker) Work item CP20760 - Formula references to cell on another sheet in ODS files +- Bugfix: (MBaker) Work item GH321,GH158,CP17824 - LibreOffice created XLSX files results in an empty file. +- Feature: (amerov) - Implementation of the Excel HLOOKUP() function +- Feature: (MBaker) - Added "Quote Prefix" to style settings (Excel2007 Reader and Writer only) +- Feature: (MBaker) - Added Horizontal FILL alignment for Excel5 and Excel2007 Readers/Writers, and Horizontal DISTRIBUTED alignment for Excel2007 Reader/Writer +- Feature: (trvrnrth) Work Item GH-261 - Add support for reading protected (RC4 encrypted) .xls files +- Feature: (LWol) Work Item GH-252 - Adding support for macros, Ribbon in Excel 2007 +- General: (cdhutch) Work item CP20055 - Remove array_shift in ReferenceHelper::insertNewBefore improves column or row delete speed +- General: (MBaker) - Improve stock chart handling and rendering, with help from Swashata Ghosh +- General: (MBaker) - Fix to calculation properties for Excel2007 so that the opening application will only recalculate on load if it's actually required +- General: (MBaker) - Modified Excel2007 Writer to default preCalculateFormulas to false + Note that autosize columns will still recalculate affected formulae internally +- General: (dresenhista) Work Item GH-242 - Functionality to getHighestRow() for a specified column, and getHighestColumn() for a specified row +- General: (adamriyadi) Work Item GH-247 - Modify PHPExcel_Reader_Excel2007 to use zipClass from PHPExcel_Settings::getZipClass() + This allows the use of PCLZip when reading for people that don't have access to ZipArchive +- General: (infojunkie) Work Item GH-276 - Convert properties to string in OOCalc reader +- Security: (maartenba) Work Item GH-322 - Disable libxml external entity loading by default. + This is to prevent XML External Entity Processing (XXE) injection attacks (see http://websec.io/2012/08/27/Preventing-XEE-in-PHP.html for an explanation of XXE injection). + Reference CVE-2014-2054 + + +2013-06-02 (v1.7.9): +- Feature: (MBaker) Include charts option for HTML Writer +- Feature: (MBaker) Added composer file +- Feature: (MBaker) Added getStyle() method to Cell object +- Bugfix: (Asker) Work item 18777 - Error in PHPEXCEL/Calculation.php script on line 2976 (stack pop check) +- Bugfix: (MBaker) Work item 18794 - CSV files without a file extension being identified as HTML +- Bugfix: (AndreKR) Work item GH-66 - Wrong check for maximum number of rows in Excel5 Writer +- Bugfix: (MBaker) Work item GH-67 - Cache directory for DiscISAM cache storage cannot be set +- Bugfix: (MBaker) Work item 17976 - Fix to Excel2007 Reader for hyperlinks with an anchor fragment (following a #), otherwise they were treated as sheet references +- Bugfix: (MBaker) Work item 18963 - getSheetNames() fails on numeric (floating point style) names with trailing zeroes +- Bugfix: (MBaker) Work item GH-130 - Single cell print area +- General: (kea) Work item GH-69 - Improved AdvancedValueBinder for currency +- General: (MBaker) Work items 17936 and 17840 - Fix for environments where there is no access to /tmp but to upload_tmp_dir + Provided an option to set the sys_get_temp_dir() call to use the upload_tmp_dir; though by default the standard temp directory will still be used +- General: (amironov ) Work item GH-84 - Search style by identity in PHPExcel_Worksheet::duplicateStyle() +- General: (karak) Work item GH-85 - Fill SheetView IO in Excel5 +- General: (cfhay) Work item 18958 - Memory and Speed improvements in PHPExcel_Reader_Excel5 +- General: (MBaker) Work item GH-78 - Modify listWorksheetNames() and listWorksheetInfo to use XMLReader with streamed XML rather than SimpleXML +- General: (dbonsch) Restructuring of PHPExcel Exceptions +- General: (MBaker) Work items 16926 and 15145 - Refactor Calculation Engine from singleton to a Multiton + Ensures that calculation cache is maintained independently for different workbooks +- General: (MBaker) Modify cell's getCalculatedValue() method to return the content of RichText objects rather than the RichText object itself +- Bugfix: (techhead) Work item GH-70 - Fixed formula/formatting bug when removing rows +- Bugfix: (alexgann) Work item GH-63 - Fix to cellExists for non-existent namedRanges +- Bugfix: (MBaker) Work item 18844 - cache_in_memory_gzip "eats" last worksheet line, cache_in_memory doesn't +- Feature: (Progi1984) Work item GH-22 - Sheet View in Excel5 Writer +- Bugfix: (amironov) Work item GH-82 - PHPExcel_Worksheet::getCellCollection() may not return last cached cell +- Bugfix: (teso) Work item 18551 - Rich Text containing UTF-8 characters creating unreadable content with Excel5 Writer +- Bugfix: (MBaker) Work item GH-104 - echo statements in HTML.php +- Feature: (Progi1984) Work item GH-8/CP11704 : Conditional formatting in Excel 5 Writer +- Bugfix: (MBaker) Work item GH-113 - canRead() Error for GoogleDocs ODS files: in ODS files from Google Docs there is no mimetype file +- Bugfix: (MBaker) Work item GH-80 - "Sheet index is out of bounds." Exception +- Bugfix: (ccorliss) Work item GH-105 - Fixed number format fatal error +- Bugfix: (MBaker) - Add DROP TABLE in destructor for SQLite and SQLite3 cache controllers +- Bugfix: (alexgann) Work item GH-154 - Fix merged-cell borders on HTML/PDF output +- Bugfix: (Shanto) Work item GH-161 - Fix: Hyperlinks break when removing rows +- Bugfix: (neclimdul) Work item GH-166 - Fix Extra Table Row From Images and Charts + + +2012-10-12 (v1.7.8): +- Special: (kkamkou) Phar builder script to add phar file as a distribution option +- Feature: (MBaker) Refactor PDF Writer to allow use with a choice of PDF Rendering library + rather than restricting to tcPDF + Current options are tcPDF, mPDF, DomPDF + tcPDF Library has now been removed from the deployment bundle +- Feature: (MBaker) Initial version of HTML Reader +- Feature: (Progi1984) & (blazzy) Work items 9605 - Implement support for AutoFilter in PHPExcel_Writer_Excel5 +- Feature: (MBaker) Modified ERF and ERFC Engineering functions to accept Excel 2010's modified acceptance of negative arguments +- Feature: (k1LoW) Support SheetView `view` attribute (Excel2007) +- Feature: (MBaker) Excel compatibility option added for writing CSV files + While Excel 2010 can read CSV files with a simple UTF-8 BOM, Excel2007 and earlier require UTF-16LE encoded tab-separated files. + The new setExcelCompatibility(TRUE) option for the CSV Writer will generate files with this formatting for easy import into Excel2007 and below. +- Feature: (MBaker) Language implementations for Turkish (tr) +- Feature: (MBaker) Added fraction tests to advanced value binder +- Feature: (MBaker) Allow call to font setUnderline() for underline format to specify a simple boolean for UNDERLINE_NONE or UNDERLINE_SINGLE +- General: (alexgann) Add Currency detection to the Advanced Value Binder +- General: (MBaker) Work item 18404 - setCellValueExplicitByColumnAndRow() do not return PHPExcel_Worksheet +- General: (MBaker) Work item 18324 - Reader factory doesn't read anymore XLTX and XLT files +- General: (MBaker) Magic __toString() method added to Cell object to return raw data value as a string +- General: (alexgann) Add cell indent to html rendering +- General: (Raghav1981) ZeroHeight for rows in sheet format +- Bugfix: (cyberconte) Patch 12318 - OOCalc cells containing <text:span> inside the <text:p> tag +- Bugfix: (schir1964) Fix to listWorksheetInfo() method for OOCalc Reader +- Bugfix: (MBaker) Support for "e" (epoch) date format mask + Rendered as a 4-digit CE year in non-Excel outputs +- Bugfix: (MBaker) Work items 15799 and 18278 - Background color cell is always black when editing cell +- Bugfix: (MBaker) Work items 15905 and 18183 - Allow "no impact" to formats on Conditional Formatting +- Bugfix: (wackonline) OOCalc Reader fix for NULL cells +- Bugfix: (seltzlab) Fix to excel2007 Chart Writer when a $plotSeriesValues is empty +- Bugfix: (MBaker) Various fixes to Chart handling +- Bugfix: (MBaker) Work item 18370 - Error loading xlsx file with column breaks +- Bugfix: (MBaker) OOCalc Reader now handles percentage and currency data types +- Bugfix: (MBaker) Work Item 18415 - mb_stripos empty delimiter +- Bugfix: (takaakik) Work Item 15455 - getNestingLevel() Error on Excel5 Read +- Bugfix: (MBaker) Fix to Excel5 Reader when cell annotations are defined before their referenced text objects +- Bugfix: (MBaker) OOCalc Reader modified to process number-rows-repeated +- Bugfix: (MBaker) Work item 18377 - Chart Title compatibility on Excel 2007 +- Bugfix: (MBaker) Work item 18146 - Chart Refresh returning cell reference rather than values +- Bugfix: (MBaker) Work item 18145 - Autoshape being identified in twoCellAnchor when includeCharts is TRUE triggering load error +- Bugfix: (MBaker) Work item 18325 - v-type texts for series labels now recognised and parsed correctly +- Bugfix: (wolf5x) Work item 18492 - load file failed if the file has no extensionType +- Bugfix: (dverspui) Pattern fill colours in Excel2007 Style Writer +- Bugfix: (MBaker) Excel2007 Writer order of font style elements to conform with Excel2003 using compatibility pack +- Bugfix: (MBaker) Work item 18425 - Problems with $_activeSheetIndex when decreased below 0. +- Bugfix: (MBaker) Work item 18597 - PHPExcel_CachedObjectStorage_SQLite3::cacheMethodIsAvailable() uses class_exists - autoloader throws error +- Bugfix: (MBaker) Work item 18598 - Cannot access private property PHPExcel_CachedObjectStorageFactory::$_cacheStorageMethod +- Bugfix: (MBaker) Work item 18397 - Data titles for charts + PHPExcel_Chart_Layout now has methods for getting/setting switches for displaying/hiding chart data labels +- Bugfix: (MBaker) Discard single cell merge ranges when reading (stupid that Excel allows them in the first place) +- Bugfix: (MBaker) Discard hidden autoFilter named ranges + + +2012-05-19 (v1.7.7): +- Bugfix: (Progi1984) Work item 8916 - Support for Rich-Text in PHPExcel_Writer_Excel5 +- Bugfix: (cyberconte) Work item 17471 - OOCalc cells contain same data bug? +- Feature: (schir1964) listWorksheetInfo() method added to Readers... courtesy of Christopher Mullins +- Feature: (MBaker) Options for cell caching using Igbinary and SQLite/SQlite3. +- Feature: (MBaker) Additional row iterator options: allow a start row to be defined in the constructor; seek(), and prev() methods added. +- Feature: (Progi1984) Work item 9759 - Implement document properties in Excel5 writer +- Feature: (MBaker) Work item 16 - Implement chart functionality (EXPERIMENTAL) + Initial definition of chart objects. + Reading Chart definitions through the Excel2007 Reader + Facility to render charts to images using the 3rd-party jpgraph library + Writing Charts using the Excel2007 Writer +- General: (MBaker) Fix to build to ensure that Examples are included with the documentation +- General: (MBaker) Reduce cell caching overhead using dirty flag to ensure that cells are only rewritten to the cache if they have actually been changed +- General: (MBaker) Improved memory usage in CSV Writer +- General: (MBaker) Improved speed and memory usage in Excel5 Writer +- General: (MBaker) Experimental - + Added getHighestDataColumn(), getHighestDataRow(), getHighestRowAndColumn() and calculateWorksheetDataDimension() methods for the worksheet that return the highest row and column that have cell records +- General: (MBaker) Change iterators to implement Iterator rather than extend CachingIterator, as a fix for PHP 5.4. changes in SPL +- Bugfix: (MBaker) Work item 15459 - Invalid cell coordinate in Autofilter for Excel2007 Writer +- Bugfix: (MBaker) Work item 15518 - PCLZip library issue +- Bugfix: (MBaker) Work item 15537 - Excel2007 Reader canRead function bug +- Bugfix: (MBaker) Support for Excel functions whose return can be used as either a value or as a cell reference depending on its context within a formula +- Bugfix: (gilles06) Work item 15707 - ini_set() call in Calculation class destructor +- Bugfix: (MBaker) Work item 15786 - RangeToArray strange array keys +- Bugfix: (MBaker) Work item 15762 - INDIRECT() function doesn't work with named ranges +- Bugfix: (MBaker) Locale-specific fix to text functions when passing a boolean argument instead of a string +- Bugfix: (MBaker) Work item 16246 - reader/CSV fails on this file + auto_detect_line_endings now set in CSV reader +- Bugfix: (MBaker) Work item 16212 - $arguments improperly used in CachedObjectStorage/PHPTemp.php +- Bugfix: (MBaker) Work item 16643 - Bug In Cache System (cell reference when throwing caching errors) +- Bugfix: (MBaker) Work item 16895 - PHP Invalid index notice on writing excel file when active sheet has been deleted +- Bugfix: (MBaker) Work item 16956 - External links in Excel2010 files cause Fatal error +- Bugfix: (MBaker) Work item 16960 - Previous calculation engine error conditions trigger cyclic reference errors +- Bugfix: (mkopinsky) Work item 16266 - PHPExcel_Style::applyFromArray() returns null rather than style object in advanced mode +- Bugfix: (fauvel) Work item 16958 - Cell::getFormattedValue returns RichText object instead of string +- Bugfix: (MBaker) Work item 17166 - Indexed colors do not refer to Excel's indexed colors? +- Bugfix: (MBaker) Work item 17199 - Indexed colors should be consistent with Excel and start from 1 (current index starts at 0) +- Bugfix: (MBaker) Work item 17262 - Named Range definition in .xls when sheet reeference is quote wrapped +- Bugfix: (MBaker) Work item 17403 - duplicateStyle() method doesn't duplicate conditional formats + Added an equivalent duplicateConditionalStyle() method for duplicating conditional styles +- Bugfix: (bnr) Work item 17501 - =sumproduct(A,B) <> =sumproduct(B,A) in xlsx +- Bugfix: (Progi1984) Work item 8916 - Support for Rich-Text in PHPExcel_Writer_Excel5 +- General: (MBaker) Work item 15405 - Two easy to fix Issues concerning PHPExcel_Token_Stack (l10n/UC) +- General: (MBaker) Work item 15461 - Locale file paths not fit for windows +- General: (MBaker) Work item 16643 - Add file directory as a cache option for cache_to_discISAM +- General: (MBaker) Work item 16923 - Datatype.php & constant TYPE_NULL +- General: (MBaker) Ensure use of system temp directory for all temporary work files, unless explicitly specified +- General: (char101) Work item 16359 - [Patch] faster stringFromColumnIndex() +- General: (whit1206) Work item 16028 - Fix for projects that still use old autoloaders +- General: (atz) Work item 17024 - Unknown codepage: 10007 + Additional Mac codepages + + +2011-02-27 (v1.7.6): +- Feature: (MBaker) Provide option to use PCLZip as an alternative to ZipArchive. + This allows the writing of Excel2007 files, even without ZipArchive enabled (it does require zlib), or when php_zip is one of the buggy PHP 5.2.6 or 5.2.8 versions + It can be enabled using PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP); + Note that it is not yet implemented as an alternative to ZipArchive for those Readers that are extracting from zips +- Feature: (MBaker) Work item 14979 - Added listWorksheetNames() method to Readers that support multiple worksheets in a workbook, allowing a user to extract a list of all the worksheet names from a file without parsing/loading the whole file. +- Feature: (MBaker) Speed boost and memory reduction in the Worksheet toArray() method. +- Feature: (MBaker) Added new rangeToArray() and namedRangeToArray() methods to the PHPExcel_Worksheet object. + Functionally, these are identical to the toArray() method, except that they take an additional first parameter of a Range (e.g. 'B2:C3') or a Named Range name. + Modified the toArray() method so that it actually uses rangeToArray(). +- Feature: (MBaker) Added support for cell comments in the OOCalc, Gnumeric and Excel2003XML Readers, and in the Excel5 Reader +- Feature: (MBaker) Improved toFormattedString() handling for Currency and Accounting formats to render currency symbols +- Feature: (MBaker) Work Item 2346 - Implement more Excel calculation functions + Implemented the DAVERAGE(), DCOUNT(), DCOUNTA(), DGET(), DMAX(), DMIN(), DPRODUCT(), DSTDEV(), DSTDEVP(), DSUM(), DVAR() and DVARP() Database functions +- Bugfix: (MBaker) Work item 14888 - Simple =IF() formula disappears +- Bugfix: (MBaker) Work item 14898 - PHP Warning: preg_match(): Compilation failed: PCRE does not support \\L, \\l, \\N, \\P, \\p, \\U, \\u, or \\X +- Bugfix: (MBaker) Work item 14901 - VLOOKUP choking on parameters in PHPExcel.1.7.5/PHPExcel_Writer_Excel2007 +- Bugfix: (MBaker) Work item 14973 - PHPExcel_Cell::isInRange() incorrect results - offset by one column +- Bugfix: (MBaker) Treat CodePage of 0 as CP1251 (for .xls files written by applications that don't set the CodePage correctly, such as Apple Numbers) +- Bugfix: (MB) Work item 11583 - Need method for removing autoFilter +- Bugfix: (MBaker) Work item 15029 - coordinateFromString throws exception for rows greater than 99,999 +- Bugfix: (MBaker) Work item 14999 - PHPExcel Excel2007 Reader colour problems with solidfill +- Bugfix: (MBaker) Work item 13215 - Formatting get lost and edit a template XLSX file +- Bugfix: (MBaker) Work item 14029 - Excel 2007 Reader /writer lost fontcolor +- Bugfix: (MBaker) Work item 13374 - file that makes cells go black +- Bugfix: (MBaker) Minor patchfix for Excel2003XML Reader when XML is defined with a charset attribute +- Bugfix: (MBaker) Work item 15089 - PHPExcel_Worksheet->toArray() index problem +- Bugfix: (MBaker) Work item 15094 - Merge cells 'un-merge' when using an existing spreadsheet +- Bugfix: (MBaker) Work item 15129 - Worksheet fromArray() only working with 2-D arrays +- Bugfix: (xkeshav) Work item 15172 - rangeToarray function modified for non-existent cells +- Bugfix: (MBaker) Work item 14980 - Images not getting copyied with the ->clone function +- Bugfix: (MBaker) Work item 11576 - AdvancedValueBinder.php: String sometimes becomes a date when it shouldn't +- Bugfix: (MBaker) Fix Excel5 Writer so that it only writes column dimensions for columns that are actually used rather than the full range (A to IV) +- Bugfix: (MBaker) Work item 15198 - FreezePane causing damaged or modified error + The freezePaneByColumnAndRow() method row argument should default to 1 rather than 0. + Default row argument for all __ByColumnAndRow() methods should be 1 +- Bugfix: (MBaker) Work item 15121 - Column reference rather than cell reference in Print Area definition + Fix Excel2007 Writer to handle print areas that are defined as row or column ranges rather than just as cell ranges +- Bugfix: (MBaker) Reduced false positives from isDateTimeFormatCode() method by suppressing testing within quoted strings +- Bugfix: (MBaker) Work item 15312 - Caching and tmp partition exhaustion +- Bugfix: (MBaker) Work item 15308 - Writing to Variable No Longer Works. $_tmp_dir Missing in PHPExcel\PHPExcel\Shared\OLE\PPS\Root.php +- Bugfix: (MBaker) Work item 15379 - Named ranges with dot don't get parsed properly +- Bugfix: (MBaker) Work item 15096 - insertNewRowBefore fails to consistently update references +- Bugfix: (MBaker) "i" is not a valid character for Excel date format masks (in isDateTimeFormatCode() method) +- Bugfix: (MKunert) Work item 15421 - PHPExcel_ReferenceHelper::insertNewBefore() is missing an 'Update worksheet: comments' section +- Bugfix: (MBaker) Work item 15409 - Full column/row references in named ranges not supported by updateCellReference() +- General: (MBaker) Improved performance (speed), for building the Shared Strings table in the Excel2007 Writer. +- General: (MBaker) Improved performance (speed), for PHP to Excel date conversions +- General: (MBaker) Enhanced SheetViews element structures in the Excel2007 Writer for frozen panes. +- General: (MBaker) Removed Serialized Reader/Writer as these no longer work. + + +2010-12-10 (v1.7.5): +- Feature: (MBaker) Work item 8769 - Implement Gnumeric File Format + Initial work on Gnumeric Reader (Worksheet Data, Document Properties and basic Formatting) +- Feature: (MBaker) (incorporating part of Workitem 9759) - Support for Extended Workbook Properties in Excel2007, Excel5 and OOCalc Readers; support for User-defined Workbook Properties in Excel2007 and OOCalc Readers +- Feature: (MBaker) Support for Extended and User-defined Workbook Properties in Excel2007 Writer +- Feature: (MBaker) Provided a setGenerateSheetNavigationBlock(false); option to suppress generation of the sheet navigation block when writing multiple worksheets to HTML +- Feature: (MBaker) Advanced Value Binder now recognises TRUE/FALSE strings (locale-specific) and converts to boolean +- Feature: (MBaker) Work item 14301 - PHPExcel_Worksheet->toArray() is returning truncated values +- Feature: (MBaker) Configure PDF Writer margins based on Excel Worksheet Margin Settings value +- Feature: (MBaker) Added Contiguous flag for the CSV Reader, when working with Read Filters +- Feature: (MBaker) Added getFormattedValue() method for cell object +- Feature: (MBaker) Added strictNullComparison argument to the worksheet fromArray() method +- Feature: (MBaker) Fix to toFormattedString() method in PHPExcel_Style_NumberFormat to handle fractions with a # code for the integer part +- Bugfix: (MB) Work item 14143 - NA() doesn't propagate in matrix calc - quick fix in JAMA/Matrix.php +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : String constant containing double quotation mark +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : Percent +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : Error constant +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : Concatenation operator +- Bugfix: (MBaker) Work item 14146 - Worksheet clone broken for CachedObjectStorage_Memory +- Bugfix: (MBaker) Work item 12998 - PHPExcel_Reader_Excel2007 fails when gradient fill without type is present in a file +- Bugfix: (MBaker) Work item 14176 - @ format for numeric strings in XLSX to CSV conversion +- Bugfix: (MBaker) Work item 14223 - Advanced Value Binder Not Working? +- Bugfix: (MBaker) Work item 14226 - unassigned object variable in PHPExcel->removeCellXfByIndex +- Bugfix: (MBaker) Work item 14236 - problem with getting cell values from another worksheet... (if cell doesn't exist) +- Bugfix: (MBaker) Work items 14260 & 14233 - Setting cell values to one char strings & Trouble reading one character string (thanks gorfou) +- Bugfix: (MBaker) Work item 14256 - Worksheet title exception when duplicate worksheet is being renamed but exceeds the 31 character limit +- Bugfix: (MBaker) Work item 14086 - Named range with sheet name that contains the $ throws exception when getting the cell +- Bugfix: (MBaker) Added autoloader to DefaultValueBinder and AdvancedValueBinder +- Bugfix: (MBaker) Modified PHPExcel_Shared_Date::isDateTimeFormatCode() to return false if format code begins with "_" or with "0 " to prevent false positives + These leading characters are most commonly associated with number, currency or accounting (or occasionally fraction) formats +- Bugfix: (MBaker) Work item 14374 - BUG : Excel5 and setReadFilter ? +- Bugfix: (MBaker) Work item 14425 - Wrong exception message while deleting column +- Bugfix: (MBaker) Work item 14679 - Formula evaluation fails with Japanese sheet refs +- Bugfix: (MBaker) Work item 13559 - PHPExcel_Writer_PDF does not handle cell borders correctly +- Bugfix: (MBaker) Work item 14831 - Style : applyFromArray() for 'allborders' not working +- Bugfix: (MBaker) Work item 14837 - Using $this when not in object context in Excel5 Reader +- General: (MBaker) Applied patch 6609 - Removes a unnecessary loop through each cell when applying conditional formatting to a range. +- General: (MBaker) Applied patch 7169 - Removed spurious PHP end tags (?>) +- General: (MBaker) Improved performance (speed) and reduced memory overheads, particularly for the Writers, but across the whole library. + + +2010-08-26 (v1.7.4): +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : Power +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : Unary plus +- Bugfix: (Progi1984) Excel5 : Just write the Escher stream if necessary in Worksheet +- Bugfix: (MBaker) Work item 13433 - Syntax errors in memcache.php 1.7.3c +- Bugfix: (MBaker) Work item 13450 - Standard Deviation functions returning DIV/0 Error when Standard Deviation is zero +- Feature: (MBaker) Support for print area with several ranges in the Excel2007 reader, and improved features for editing print area with several ranges +- Feature: (MBaker) Work item 13769 - Improved Cell Exception Reporting +- Feature: (MBaker) Support for row or column ranges in the calculation engine, e.g. =SUM(C:C) or =SUM(1:2) + Also support in the calculation engine for absolute row or column ranges e.g. =SUM($C:$E) or =SUM($3:5) +- Bugfix: (ET) Work item 13455 - Picture problem with Excel 2003 +- Bugfix: (MBaker) Work item 13484 - Wrong variable used in addExternalSheet in PHPExcel.php +- Bugfix: (MBaker) Work item 13515 - "Invalid cell coordinate" error when formula access data from an other sheet +- Bugfix: (MBaker) (related to Work item 13515) Calculation engine confusing cell range worksheet when referencing cells in a different worksheet to the formula +- Bugfix: (MBaker) Work item 13752 - Wrong var naming in Worksheet->garbageCollect() +- Bugfix: (MBaker) Work item 13764 - PHPExcel_Style_*::__clone() methods cause cloning loops? +- Bugfix: (MBaker) Work item 11488 - Recent builds causing problems loading xlsx files? (ZipArchive issue?) +- Bugfix: (MBaker) Work item 13856 - cache_to_apc causes fatal error when processing large data sets +- Bugfix: (MBaker) Work item 13880 - OOCalc reader misses first line if it's a 'table-header-row' +- Bugfix: (MBaker) Work item 14011 - using cache with copy or clone bug? + Fixed $worksheet->copy() or clone $worksheet when using cache_in_memory, cache_in_memory_gzip, cache_in_memory_serialized, cache_to_discISAM, cache_to_phpTemp, cache_to_apc and cache_to_memcache; + Fixed but untested when using cache_to_wincache. +- Bugfix: (MBaker) Fixed problems with reading Excel2007 Properties +- General: (MB) Applied patch 6324 - PHP Strict Standards: Non-static method PHPExcel_Shared_String::utf16_decode() should not be called statically +- General: (MBaker) Applied patch 6360 - Array functions were ignored when loading an existing file containing them, and as a result, they would lose their 'cse' status. +- General: (MBaker) Minor memory tweaks to Excel2007 Writer +- General: (MBaker) Modified ReferenceHelper updateFormulaReferences() method to handle updates to row and column cell ranges (including absolute references e.g. =SUM(A:$E) or =SUM($5:5), and range/cell references that reference a worksheet by name), and to provide both performance and memory improvements. +- General: (MBaker) Modified Excel2007 Reader so that ReferenceHelper class is instantiated only once rather than for every shared formula in a workbook. +- General: (MBaker) Correct handling for additional (synonym) formula tokens in Excel5 Reader +- General: (MBaker) Additional reading of some Excel2007 Extended Properties (Company, Manager) + + +2010-06-01 (v1.7.3c): +- Bugfix: (MB) Work item 13012 - Fatal error: Class 'ZipArchive' not found... ...Reader/Excel2007.php on line 217 +- Bugfix: (MBaker) Work item 13398 - PHPExcel_Writer_Excel2007 error after 1.7.3b + + +2010-05-31 (v1.7.3b): +- Bugfix: (MBaker) Work item 12903 - Infinite loop when reading +- Bugfix: (MB) Work item 13381 - Wrong method chaining on PHPExcel_Worksheet class + + +2010-05-17 (v1.7.3): +- General: (ET) Applied patch 4990 (modified) +- General: (MB) Applied patch 5568 (modified) +- General: (MB) Applied patch 5943 +- General: (MB) Work item 13042 - Upgrade build script to use Phing +- General: (ET) Work item 11586 - Replacing var with public/private +- General: (MBaker) Applied Anthony's Sterling's Class Autoloader to reduce memory overhead by "Lazy Loading" of classes +- General: (MBaker) Modification to functions that accept a date parameter to support string values containing ordinals as per Excel (English language only) +- General: (MBaker) Modify PHPExcel_Style_NumberFormat::toFormattedString() to handle dates that fall outside of PHP's 32-bit date range +- General: (MBaker) Applied patch 5207 +- General: (ET) Work item 11970 - PHPExcel developer documentation: Set page margins +- Feature: (ET) Work item 11038 - Special characters and accents in SYLK reader +- Feature: (MBaker) Work Item 2346 - Implement more Excel calculation functions + - Implemented the COUPDAYS(), COUPDAYBS(), COUPDAYSNC(), COUPNCD(), COUPPCD() and PRICE() Financial functions + - Implemented the N() and TYPE() Information functions + - Implemented the HYPERLINK() Lookup and Reference function +- Feature: (ET) Work item 11526 - Horizontal page break support in PHPExcel_Writer_PDF +- Feature: (ET) Work item 11529 - Introduce method setActiveSheetIndexByName() +- Feature: (ET) Work item 11550 - AdvancedValueBinder.php: Automatically wrap text when there is new line in string (ALT+"Enter") +- Feature: (ET) Work item 10300 - Data validation support in PHPExcel_Reader_Excel5 and PHPExcel_Writer_Excel5 +- Feature: (MB) Work item 11616 - Improve autosize calculation +- Feature: (MBaker) Methods to translate locale-specific function names in formulae + - Language implementations for Czech (cs), Danish (da), German (de), English (uk), Spanish (es), Finnish (fi), French (fr), Hungarian (hu), Italian (it), Dutch (nl), Norwegian (no), Polish (pl), Portuguese (pt), Brazilian Portuguese (pt_br), Russian (ru) and Swedish (sv) +- Feature: (ET) Work item 9759 - Implement document properties in Excel5 reader/writer + - Fixed so far for PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 11849 - Show/hide row and column headers in worksheet +- Feature: (ET) Work item 11919 - Can't set font on writing PDF (by key) +- Feature: (ET) Work item 12096 - Thousands scale (1000^n) support in PHPExcel_Style_NumberFormat::toFormattedString +- Feature: (ET) Work item 6911 - Implement repeating rows in PDF and HTML writer +- Feature: (ET) Work item 12289 - Sheet tabs in PHPExcel_Writer_HTML +- Feature: (MB) Work item 13041 - Add Wincache CachedObjectProvider +- Feature: (MBaker) Configure PDF Writer paper size based on Excel Page Settings value, and provided methods to override paper size and page orientation with the writer + - Note PHPExcel defaults to Letter size, while the previous PDF writer enforced A4 size, so PDF writer will now default to Letter +- Feature: (MBaker) Initial implementation of cell caching: allowing larger workbooks to be managed, but at a cost in speed +- Feature: (MBaker) Added an identify() method to the IO Factory that identifies the reader which will be used to load a particular file without actually loading it. +- Bugfix: (MBaker) Work item 10979 - Warning messages with INDEX function having 2 arguments +- Bugfix: (ET) Work item 11473 - setValue('=') should result in string instead of formula +- Bugfix: (MBaker) Work item 11471 - method _raiseFormulaError should no be private +- Bugfix: (ET) Work item 11485 - Fatal error: Call to undefined function mb_substr() in ...Classes\PHPExcel\Reader\Excel5.php on line 2903 +- Bugfix: (ET) Work item 11487 - getBold(), getItallic(), getStrikeThrough() not always working with PHPExcel_Reader_Excel2007 +- Bugfix: (ET) Work item 11492 - AdvancedValueBinder.php not working correctly for $cell->setValue('hh:mm:ss') +- Bugfix: (MBaker) Fixed leap year handling for the YEARFRAC() Date/Time function when basis ia 1 (Actual/actual) +- Bugfix: (MBaker) Work item 11490 - Warning messages + - Calculation Engine code modified to enforce strict standards for pass by reference +- Bugfix: (ET) Work item 11483 - PHPExcel_Cell_AdvancedValueBinder doesnt work for dates in far future +- Bugfix: (ET) Work item 11528 - MSODRAWING bug with long CONTINUE record in PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 11571 - PHPExcel_Reader_Excel2007 reads print titles as named range when there is more than one sheet +- Bugfix: (ET) Work item 11561 - missing @return in phpdocblock in reader classes +- Bugfix: (ET) Work item 11576 - AdvancedValueBinder.php: String sometimes becomes a date when it shouldn't +- Bugfix: (ET) Work item 11588 - Small numbers escape treatment in PHPExcel_Style_NumberFormat::toFormattedString() +- Bugfix: (ET) Work item 11590 - Blank styled cells are not blank in output by HTML writer due to &nbsp; +- Bugfix: (MBaker) Work item 11587 - Calculation engine bug: Existing, blank cell + number gives #NUM +- Bugfix: (ET) Work item 11608 - AutoSize only measures length of first line in cell with multiple lines (ALT+Enter) +- Bugfix: (ET) Work item 11608 - Fatal error running Tests/12serializedfileformat.php (PHPExcel 1.7.2) +- Bugfix: (MBaker) Fixed various errors in the WORKDAY() and NETWORKDAYS() Date/Time functions (particularly related to holidays) +- Bugfix: (ET) Work item 11660 - Uncaught exception 'Exception' with message 'Valid scale is between 10 and 400.' in Classes/PHPExcel/Worksheet/SheetView.php:115 +- Bugfix: (ET) Work item 11551 - "Unrecognized token 39 in formula" with PHPExcel_Reader_Excel5 (occuring with add-in functions) +- Bugfix: (ET) Work item 11668 - Excel2007 reader not reading PHPExcel_Style_Conditional::CONDITION_EXPRESSION +- Bugfix: (MBaker) Fix to the BESSELI(), BESSELJ(), BESSELK(), BESSELY() and COMPLEX() Engineering functions to use correct default values for parameters +- Bugfix: (MBaker) Work item 11525 - DATEVALUE function not working for pure time values + allow DATEVALUE() function to handle partial dates (e.g. "1-Jun" or "12/2010") +- Bugfix: (MBaker) Fix for empty quoted strings in formulae +- Bugfix: (MBaker) Trap for division by zero in Bessel functions +- Bugfix: (MBaker) Fix to OOCalc Reader to convert semi-colon (;) argument separator in formulae to a comma (,) +- Bugfix: (ET) Work item 11693 - PHPExcel_Writer_Excel5_Parser cannot parse formula like =SUM(C$5:C5) +- Bugfix: (MBaker) Fix to OOCalc Reader to handle dates that fall outside 32-bit PHP's date range +- Bugfix: (ET) Work item 11692 - File->sys_get_temp_dir() can fail in safe mode +- Bugfix: (ET) Work item 11727 - Sheet references in Excel5 writer do not work when referenced sheet title contains non-Latin symbols +- Bugfix: (ET) Work item 11743 - Bug in HTML writer can result in missing rows in output +- Bugfix: (ET) Work item 11674 - setShowGridLines(true) not working with PHPExcel_Writer_PDF +- Bugfix: (ET) Work item 11836 - PHPExcel_Worksheet_RowIterator initial position incorrect +- Bugfix: (ET) Work item 11835 - PHPExcel_Worksheet_HeaderFooterDrawing Strict Exception thrown (by jshaw86) +- Bugfix: (ET) Work item 11850 - Parts of worksheet lost when there are embedded charts (Excel5 reader) +- Bugfix: (MBaker) VLOOKUP() function error when lookup value is passed as a cell reference rather than an absolute value +- Bugfix: (ET) Work item 12041 - First segment of Rich-Text not read correctly by PHPExcel_Reader_Excel2007 +- Bugfix: (MBaker) Work item 12048 - Fatal Error with getCell('name') when name matches the pattern for a cell reference +- Bugfix: (ET) Work item 12039 - excel5 writer appears to be swapping image locations +- Bugfix: (ET) Work item 11954 - Undefined index: host in ZipStreamWrapper.php, line 94 and line 101 +- Bugfix: (ET) Work item 11672 - BIFF8 File Format problem (too short COLINFO record) +- Bugfix: (ET) Work item 12121 - Column width sometimes changed after read/write with Excel2007 reader/writer +- Bugfix: (ET) Work item 11964 - Worksheet.php throws a fatal error when styling is turned off via setReadDataOnly on the reader +- Bugfix: (MBaker) Work item 11851 - Checking for Circular References in Formulae + - Calculation Engine code now traps for cyclic references, raising an error or throwing an exception, or allows 1 or more iterations through cyclic references, based on a configuration setting +- Bugfix: (ET) Work item 12244 - PNG transparency using Excel2007 writer +- Bugfix: (ET) Work item 12221 - Custom readfilter error when cell formulas reference excluded cells (Excel5 reader) +- Bugfix: (ET) Work item 12288 - Protection problem in XLS +- Bugfix: (ET) Work item 12300 - getColumnDimension()->setAutoSize() incorrect on cells with Number Formatting +- Bugfix: (ET) Work item 12378 - Notices reading Excel file with Add-in funcitons (PHPExcel_Reader_Excel5) +- Bugfix: (ET) Work item 12380 - Excel5 reader not reading formulas with deleted sheet references +- Bugfix: (ET) Work item 12404 - Named range (defined name) scope problems for in PHPExcel +- Bugfix: (ET) Work item 12423 - PHP Parse error: syntax error, unexpected T_PUBLIC in PHPExcel/Calculation.php on line 3482 +- Bugfix: (ET) Work item 12505 - Named ranges don't appear in name box using Excel5 writer +- Bugfix: (ET) Work item 12509 - Many merged cells + autoSize column -> slows down the writer +- Bugfix: (ET) Work item 12539 - Incorrect fallback order comment in Shared/Strings.php ConvertEncoding() +- Bugfix: (ET) Work item 12538 - IBM AIX iconv() will not work, should revert to mbstring etc. instead +- Bugfix: (ET) Work item 12568 - Excel5 writer and mbstring functions overload +- Bugfix: (MBaker) Work item 12672 - OFFSET needs to flattenSingleValue the $rows and $columns args +- Bugfix: (MBaker) Work item 12546 - Formula with DMAX(): Notice: Undefined offset: 2 in ...\PHPExcel\Calculation.php on line 2365 + - Note that the Database functions have not yet been implemented +- Bugfix: (MBaker) Work item 12839 - Call to a member function getParent() on a non-object in Classes\\PHPExcel\\Calculation.php Title is required +- Bugfix: (MBaker) Work item 12935 - Cyclic Reference in Formula +- Bugfix: (MBaker) Work item 13025 - Memory error...data validation? + + +2010/01/11 (v1.7.2): +- General: (ET) Applied patch 4362 +- General: (ET) Applied patch 4363 (modified) +- General: (MBaker) Work item 10874 - 1.7.1 Extremely Slow - Refactored PHPExcel_Calculation_Functions::flattenArray() method and set calculation cache timer default to 2.5 seconds +- General: (MBaker) Allow formulae to contain line breaks +- General: (ET) Work item 10910 - split() function deprecated in PHP 5.3.0 +- General: (ET) sys_get_temp_dir() requires PHP 5.2.1, not PHP 5.2 [provide fallback function for PHP 5.2.0] +- General: (MBaker) Applied patch 4640 - Implementation of the ISPMT() Financial function by Matt Groves +- General: (MBaker) Work item 11052 - Put the example of formula with more arguments in documentation +- General: (MBaker) Improved accuracy for the GAMMAINV() Statistical Function +- Feature: (ET) Work item 10409 - XFEXT record support to fix colors change from Excel5 reader, and copy/paste color change with Excel5 writer + - Excel5 reader reads RGB color information in XFEXT records for borders, font color and fill color +- Feature: (MBaker) Work Item 2346 - Implement more Excel calculation functions + - Implemented the FVSCHEDULE(), XNPV(), IRR(), MIRR(), XIRR() and RATE() Financial functions + - Implemented the SUMPRODUCT() Mathematical function + - Implemented the ZTEST() Statistical Function +- Feature: (ET) Work item 10919 - Multiple print areas in one sheet +- Feature: (ET) Work item 10930 - Store calculated values in output by PHPExcel_Writer_Excel5 +- Feature: (ET) Work item 10939 - Sheet protection options in Excel5 reader/writer +- Feature: (MBaker) Modification of the COUNT(), AVERAGE(), AVERAGEA(), DEVSQ, AVEDEV(), STDEV(), STDEVA(), STDEVP(), STDEVPA(), VARA() and VARPA() SKEW() and KURT() functions to correctly handle boolean values depending on whether they're passed in as values, values within a matrix or values within a range of cells. +- Feature: (ET) Work item 9932 - Cell range selection +- Feature: (MB) Work item 10266 - Root-relative path handling +- Feature: (ET) Work item 11315 - Named Ranges not working with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 11206 - Excel2007 Reader fails to load Apache POI generated Excel +- Bugfix: (MB) Work item 11154 - Number format is broken when system's thousands separator is empty +- Bugfix: (MB) Work item 11401 - ReferenceHelper::updateNamedFormulas throws errors if oldName is empty +- Bugfix: (MB) Work item 11296 - parse_url() fails to parse path to an image in xlsx +- Bugfix: (ET) Work item 10876 - Workaround for iconv_substr() bug in PHP 5.2.0 +- Bugfix: (ET) Work item 10877 - 1 pixel error for image width and height with PHPExcel_Writer_Excel5 +- Bugfix: (MBaker) Fix to GEOMEAN() Statistical function +- Bugfix: (ET) Work item 10884 - setValue('-') and setValue('.') sets numeric 0 instead of 1-character string +- Bugfix: (ET) Work item 10885 - Row height sometimes much too low after read with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10888 - Diagonal border. Miscellaneous missing support. + - Constant PHPExcel_Style_Borders::DIAGONAL_BOTH added to support double-diagonal (cross) + - PHPExcel_Reader_Excel2007 not always reading diagonal borders (only recognizes 'true' and not '1') + - PHPExcel_Reader_Excel5 support for diagonal borders + - PHPExcel_Writer_Excel5 support for diagonal borders +- Bugfix: (ET) Work item 10894 - Session bug: Fatal error: Call to a member function bindValue() on a non-object in ...\Classes\PHPExcel\Cell.php on line 217 +- Bugfix: (ET) Work item 10896 - Colors messed up saving twice with same instance of PHPExcel_Writer_Excel5 (regression since 1.7.0) +- Bugfix: (ET) Work item 10917 - Method PHPExcel_Worksheet::setDefaultStyle is not working +- Bugfix: (ET) Work item 10897 - PHPExcel_Reader_CSV::canRead() sometimes says false when it shouldn't +- Bugfix: (ET) Work item 10922 - Changes in workbook not picked up between two saves with PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 10913 - Decimal and thousands separators missing in HTML and PDF output +- Bugfix: (ET) Work item 10936 - Notices with PHPExcel_Reader_Excel5 and named array constants +- Bugfix: (MBaker) Work item 10938 - Calculation engine limitation on 32-bit platform with integers > 2147483647 +- Bugfix: (ET) Work item 10959 - Shared(?) formulae containing absolute cell references not read correctly using Excel5 Reader +- Bugfix: (MBaker) Work item 10962 - Warning messages with intersection operator involving single cell +- Bugfix: (ET) Work item 10980 - Infinite loop in Excel5 reader caused by zero-length string in SST +- Bugfix: (ET) Work item 10983 - Remove unnecessary cell sorting to improve speed by approx. 18% in HTML and PDF writers +- Bugfix: (MBaker) Work item 10977 - Cannot read A1 cell content - OO_Reader +- Bugfix: (ET) Work item 11000 - Transliteration failed, invalid encoding + + +2009/11/02 (v1.7.1): +- General: (ET) Work item 10687 - ereg() function deprecated in PHP 5.3.0 +- General: (MB) Work item 10739 - Writer Interface Inconsequence - setTempDir and setUseDiskCaching +- General: (ET) Upgrade to TCPDF 4.8.009 +- Feature: (ET) Work item 7333 - Support for row and column styles (feature request) + - Basic implementation for Excel2007/Excel5 reader/writer +- Feature: (ET) Work item 10459 - Hyperlink to local file in Excel5 reader/writer +- Feature: (MB) Work item 10472 - Color Tab (Color Sheet's name) +- Feature: (ET) Work item 10488 - Border style "double" support in PHPExcel_Writer_HTML +- Feature: (ET) Work item 10492 - Multi-section number format support in HTML/PDF/CSV writers +- Feature: (MBaker) - Some additional performance tweaks in the calculation engine +- Feature: (MBaker) - Fix result of DB() and DDB() Financial functions to 2dp when in Gnumeric Compatibility mode +- Feature: (MBaker) - Added AMORDEGRC(), AMORLINC() and COUPNUM() Financial function (no validation of parameters yet) +- Feature: (MBaker) - Improved accuracy of TBILLEQ(), TBILLPRICE() and TBILLYIELD() Financial functions when in Excel or Gnumeric mode +- Feature: (MBaker) - Added INDIRECT() Lookup/Reference function (only supports full addresses at the moment) +- Feature: (MB) Work item 10498 - PHPExcel_Reader_CSV::canRead() improvements +- Feature: (ET) Work item 10500 - Input encoding option for PHPExcel_Reader_CSV +- Feature: (ET) Work item 10493 - Colored number format support, e.g. [Red], in HTML/PDF output +- Feature: (ET) Work item 10559 - Color Tab (Color Sheet's name) [Excel5 reader/writer support] +- Feature: (MBaker) Initial version of SYLK (slk) and Excel 2003 XML Readers (Cell data and basic cell formatting) +- Feature: (MBaker) Initial version of Open Office Calc (ods) Reader (Cell data only) +- Feature: (MBaker) Initial use of "pass by reference" in the calculation engine for ROW() and COLUMN() Lookup/Reference functions +- Feature: (MBaker) Work item 2346 - COLUMNS() and ROWS() Lookup/Reference functions, and SUBSTITUTE() Text function +- Feature: (ET) Work item 10502 - AdvancedValueBinder(): Re-enable zero-padded string-to-number conversion, e.g '0004' -> 4 +- Feature: (ET) Work item 10600 - Make PHP type match Excel datatype +- Feature: (MB) Work item 10630 - Change first page number on header +- Feature: (MB) Applied patch 3941 +- Feature: (MB,ET) Work item 10745 - Hidden sheets +- Feature: (ET) Work item 10761 - mbstring fallback when iconv is broken +- Feature: (MBaker) Added support for matrix/value comparisons (e.g. ={1,2;3,4}>=3 or 2<>{1,2;3,4}) - Note, can't yet handle comparison of two matrices +- Feature: (MBaker) Improved handling for validation and error trapping in a number of functions +- Feature: (MBaker) Improved support for fraction number formatting +- Feature: (ET) Work item 10455 - Support Reading CSV with Byte Order Mark (BOM) +- Feature: (ET) Work item 10860 - addExternalSheet() at specified index +- Bugfix: (MBaker) Work item 10684 - Named range can no longer be passed to worksheet->getCell() +- Bugfix: (ET) Work item 10455 - RichText HTML entities no longer working in PHPExcel 1.7.0 +- Bugfix: (ET) Work item 7610 - Fit-to-width value of 1 is lost after read/write of Excel2007 spreadsheet [+ support for simultaneous scale/fitToPage] +- Bugfix: (MB) Work item 10469 - Performance issue identified by profiling +- Bugfix: (ET) Work item 10473 - setSelectedCell is wrong +- Bugfix: (ET) Work item 10481 - Images get squeezed/stretched with (Mac) Verdana 10 Excel files using Excel5 reader/writer +- Bugfix: (MBaker) Work item 10482 - Error in argument count for DATEDIF() function +- Bugfix: (MBaker) Work item 10452 - updateFormulaReferences is buggy +- Bugfix: (MB) Work item 10485 - CellIterator returns null Cell if onlyExistingCells is set and key() is in use +- Bugfix: (MBaker) Work item 10453 - Wrong RegEx for parsing cell references in formulas +- Bugfix: (MB) Work item 10486 - Optimisation subverted to devastating effect if IterateOnlyExistingCells is clear +- Bugfix: (ET) Work item 10494 - Fatal error: Uncaught exception 'Exception' with message 'Unrecognized token 6C in formula'... with PHPExcel_Reader_Excel5 +- Bugfix: (MBaker) Work item 10490 - Fractions stored as text are not treated as numbers by PHPExcel's calculation engine +- Bugfix: (ET) Work item 10503 - AutoFit (autosize) row height not working in PHPExcel_Writer_Excel5 +- Bugfix: (MBaker) Fixed problem with null values breaking the calculation stack +- Bugfix: (ET) Work item 10524 - Date number formats sometimes fail with PHPExcel_Style_NumberFormat::toFormattedString, e.g. [$-40047]mmmm d yyyy +- Bugfix: (MBaker) Fixed minor problem with DATEDIFF YM calculation +- Bugfix: (MB) Applied patch 3695 +- Bugfix: (ET) Work item 10536 - setAutosize() and Date cells not working properly +- Bugfix: (ET) Work item 10556 - Time value hour offset in output by HTML/PDF/CSV writers (system timezone problem) +- Bugfix: (ET) Work item 10558 - Control characters 0x14-0x1F are not treated by PHPExcel +- Bugfix: (ET) Work item 10560 - PHPExcel_Writer_Excel5 not working when open_basedir restriction is in effect +- Bugfix: (MBaker) Work item 10563 - IF formula calculation problem in PHPExcel 1.7.0 (string comparisons) +- Bugfix: (MBaker) Improved CODE() Text function result for UTF-8 characters +- Bugfix: (ET) Work item 10568 - Empty rows are collapsed with HTML/PDF writer +- Bugfix: (ET) Work item 10569 - Gaps between rows in output by PHPExcel_Writer_PDF (Upgrading to TCPDF 4.7.003) +- Bugfix: (ET) Work item 10575 - Problem reading formulas (Excel5 reader problem with "fake" shared formulas) +- Bugfix: (MBaker) Work item 10588 - Error type in formula: "_raiseFormulaError message is Formula Error: An unexpected error occured" +- Bugfix: (ET) Work item 10599 - Miscellaneous column width problems in Excel5/Excel2007 writer +- Bugfix: (ET) Work item 10615 - Reader/Excel5 'Unrecognized token 2D in formula' in latest version +- Bugfix: (ET) Work item 10623 - on php 5.3 PHPExcel 1.7 Excel 5 reader fails in _getNextToken, token = 2C, throws exception +- Bugfix: (ET) Work item 10617 - Fatal error when altering styles after workbook has been saved +- Bugfix: (ET) Work item 10661 - Images vertically stretched or squeezed when default font size is changed (PHPExcel_Writer_Excel5) +- Bugfix: (ET) Work item 10676 - Styles not read in "manipulated" Excel2007 workbook +- Bugfix: (ET) Work item 10059 - Windows 7 says corrupt file by PHPExcel_Writer_Excel5 when opening in Excel +- Bugfix: (MBaker) Work item 10708 - Calculations sometimes not working with cell references to other sheets +- Bugfix: (ET) Work item 10706 - Problem with merged cells after insertNewRowBefore() +- Bugfix: (MBaker) Applied patch 4023 +- Bugfix: (MBaker) Fix to SUMIF() and COUNTIF() Statistical functions for when condition is a match against a string value +- Bugfix: (ET) Work item 10721 - PHPExcel_Cell::coordinateFromString should throw exception for bad string parameter +- Bugfix: (ET) Work item 10723 - EucrosiaUPC (Thai font) not working with PHPExcel_Writer_Excel5 +- Bugfix: (MBaker) Improved the return of calculated results when the result value is an array +- Bugfix: (MBaker) Allow calculation engine to support Functions prefixed with @ within formulae +- Bugfix: (MBaker) Work item 10632 - Intersection operator (space operator) fatal error with calculation engine +- Bugfix: (ET) Work item 10742 - Chinese, Japanese, Korean characters show as squares in PDF +- Bugfix: (ET) Work item 10756 - sheet title allows invalid characters +- Bugfix: (ET) Work item 10757 - Sheet!$A$1 as function argument in formula causes infinite loop in Excel5 writer +- Bugfix: (MBaker) Work item 10740 - Cell range involving name not working with calculation engine - Modified calculation parser to handle range operator (:), but doesn't currently handle worksheet references with spaces or other non-alphameric characters, or trap erroneous references +- Bugfix: (MBaker) Work item 10798 - DATE function problem with calculation engine (says too few arguments given) +- Bugfix: (MBaker) Work item 10799 - Blank cell can cause wrong calculated value +- Bugfix: (MBaker) Modified ROW() and COLUMN() Lookup/Reference Functions to return an array when passed a cell range, plus some additional work on INDEX() +- Bugfix: (ET) Work item 10817 - Images not showing in Excel 97 using PHPExcel_Writer_Excel5 (patch by Jordi Gutiérrez Hermoso) +- Bugfix: (ET) Work item 10785 - When figures are contained in the excel sheet, Reader was stopped +- Bugfix: (MBaker) Work item 10818 - Formulas changed after insertNewRowBefore() +- Bugfix: (ET) Work item 10825 - Cell range row offset problem with shared formulas using PHPExcel_Reader_Excel5 +- Bugfix: (MBaker) Work item 10832 - Warning: Call-time pass-by-reference has been deprecated +- Bugfix: (ET) Work item 10849 - Image should "Move but don't size with cells" instead of "Move and size with cells" with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 10856 - Opening a Excel5 generated XLS in Excel 2007 results in header/footer entry not showing on input +- Bugfix: (ET) Work item 10859 - addExternalSheet() not returning worksheet +- Bugfix: (MBaker) Work item 10629 - Invalid results in formulas with named ranges + + +2009/08/10 (v1.7.0): +- General: (ET) Work item 9893 - Expand documentation: Number formats +- General: (ET) Work item 9941 - Class 'PHPExcel_Cell_AdvancedValueBinder' not found +- General: (MB) Work item 9960 - Change return type of date functions to PHPExcel_Calculation_Functions::RETURNDATE_EXCEL +- Feature: (MBaker) - New RPN and stack-based calculation engine for improved performance of formula calculation + - Faster (anything between 2 and 12 times faster than the old parser, depending on the complexity and nature of the formula) + - Significantly more memory efficient when formulae reference cells across worksheets + - Correct behaviour when referencing Named Ranges that exist on several worksheets + - Support for Excel ^ (Exponential) and % (Percentage) operators + - Support for matrices within basic arithmetic formulae (e.g. ={1,2,3;4,5,6;7,8,9}/2) + - Better trapping/handling of NaN and infinity results (return #NUM! error) + - Improved handling of empty parameters for Excel functions + - Optional logging of calculation steps +- Feature: (MBaker) - New calculation engine can be accessed independently of workbooks (for use as a standalone calculator) +- Feature: (MBaker) Work Item 2346 - Implement more Excel calculation functions + - Initial implementation of the COUNTIF() and SUMIF() Statistical functions + - Added ACCRINT() Financial function +- Feature: (MBaker) - Modifications to number format handling for dddd and ddd masks in dates, use of thousand separators even when locale only implements it for money, and basic fraction masks (0 ?/? and ?/?) +- Feature: (ET) Work item 9794 - Support arbitrary fixed number of decimals in PHPExcel_Style_NumberFormat::toFormattedString() +- Feature: (ET) Work item 6857 - Improving performance and memory on data dumps + - Various style optimizations (merging from branch wi6857-memory) + - Moving hyperlink and dataValidation properties from cell to worksheet for lower PHP memory usage +- Feature: (MB) Work item 9869 - Provide fluent interfaces where possible +- Feature: (ET) Work item 9899 - Make easy way to apply a border to a rectangular selection +- Feature: (ET) Work item 9906 - Support for system window colors in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 9911 - Horizontal center across selection +- Feature: (ET) Work item 9919 - Merged cells record, write to full record size in PHPExcel_Writer_Excel5 +- Feature: (MB) Work item 9895 - Add page break between sheets in exported PDF +- Feature: (ET) Work item 9902 - Sanitization of UTF-8 input for cell values +- Feature: (ET) Work item 9930 - Read cached calculated value with PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 9896 - Miscellaneous CSS improvements for PHPExcel_Writer_HTML +- Feature: (ET) Work item 9947 - getProperties: setCompany feature request +- Feature: (MB) Patch 2981 - Insert worksheet at a specified index +- Feature: (MB) Patch 3018 - Change worksheet index +- Feature: (MB) Patch 3039 - Readfilter for CSV reader +- Feature: (ET) Work item 10172 - Check value of mbstring.func_overload when saving with PHPExcel_Writer_Excel5 +- Feature: (ET) Work item 10251 - Eliminate dependency of an include path pointing to class directory +- Feature: (ET) Work item 10292 - Method for getting the correct reader for a certain file (contribution) +- Feature: (ET) Work item 10287 - Choosing specific row in fromArray method +- Feature: (ET) Work item 10319 - Shared formula support in PHPExcel_Reader_Excel5 +- Feature: (MB,ET) Work item 10345 - Right-to-left column direction in worksheet +- Bugfix: (ET) Work item 9824 - PHPExcel_Reader_Excel5 not reading PHPExcel_Style_NumberFormat::FORMAT_NUMBER ('0') +- Bugfix: (ET) Work item 9858 - Fractional row height in locale other than English results in corrupt output using PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 9846 - Fractional (decimal) numbers not inserted correctly when locale is other than English +- Bugfix: (ET) Work item 9863 - Fractional calculated value in locale other than English results in corrupt output using PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 9830 - Locale aware decimal and thousands separator in exported formats HTML, CSV, PDF +- Bugfix: (MB) Work item 9819 - Cannot Add Image with Space on its Name +- Bugfix: (ET) Work item 9884 - Black line at top of every page in output by PHPExcel_Writer_PDF +- Bugfix: (ET) Work item 9885 - Border styles and border colors not showing in HTML output (regression since 1.6.4) +- Bugfix: (ET) Work item 9888 - Hidden screen gridlines setting in worksheet not read by PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9913 - Some valid sheet names causes corrupt output using PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 9934 - More than 32,767 characters in a cell gives corrupt Excel file +- Bugfix: (ET) Work item 9937 - Images not getting copyied with the ->copy() function +- Bugfix: (ET) Work item 9940 - Bad calculation of column width setAutoSize(true) function +- Bugfix: (ET) Work item 9968 - Dates are sometimes offset by 1 day in output by HTML and PDF writers depending on system timezone setting +- Bugfix: (ET) Work item 10003 - Wingdings symbol fonts not working with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 10010 - White space string prefix stripped by PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 10023 - The name of the Workbook stream MUST be "Workbook", not "Book" +- Bugfix: (ET) Work item 10030 - Avoid message "Microsoft Excel recalculates formulas..." when closing xls file from Excel +- Bugfix: (ET) Work item 10031 - Non-unique newline representation causes problems with LEN formula +- Bugfix: (ET) Work item 10033 - Newline in cell not showing with PHPExcel_Writer_HTML and PHPExcel_Writer_PDF +- Bugfix: (ET) Work item 10046 - Rich-Text strings get prefixed by &nbsp; when output by HTML writer +- Bugfix: (ET) Work item 10052 - Leading spaces do not appear in output by HTML/PDF writers +- Bugfix: (MB) Work item 10061 - Empty Apache POI-generated file can not be read +- Bugfix: (ET) Work item 10068 - Column width not scaling correctly with font size in HTML and PDF writers +- Bugfix: (ET) Work item 10069 - Inaccurate row heights with HTML writer +- Bugfix: (MB) Patch 2992 - Reference helper +- Bugfix: (MBaker) - Excel 5 Named ranges should not be local to the worksheet, but accessible from all worksheets +- Bugfix: (ET) Work item 10088 - Row heights are ignored by PHPExcel_Writer_PDF +- Bugfix: (MB) Patch 3003 - Write raw XML +- Bugfix: (ET) Work item 10098 - removeRow(), removeColumn() not always clearing cell values +- Bugfix: (ET) Work item 10142 - Problem reading certain hyperlink records with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10143 - Hyperlink cell range read failure with PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 10149 - 'Column string index can not be empty.' +- Bugfix: (ET) Work item 10204 - getHighestColumn() sometimes says there are 256 columns with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10220 - extractSheetTitle fails when sheet title contains exclamation mark (!) +- Bugfix: (ET) Work item 10221 - setTitle() sometimes erroneously appends integer to sheet name +- Bugfix: (ET) Work item 10229 - Mac BIFF5 Excel file read failure (missing support for Mac OS Roman character set) +- Bugfix: (ET) Work item 10230 - BIFF5 header and footer incorrectly read by PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10259 - iconv notices when reading hyperlinks with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10252 - Excel5 reader OLE read failure with small Mac BIFF5 Excel files +- Bugfix: (ET) Work item 10272 - Problem in reading formula : IF( IF ) with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10274 - Error reading formulas referencing external sheets with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10291 - Image horizontally stretched when default font size is increased (PHPExcel_Writer_Excel5) +- Bugfix: (ET) Work item 10333 - Undefined offset in Reader\Excel5.php on line 3572 +- Bugfix: (MB) Work item 10340 - PDF output different then XLS (copied data) +- Bugfix: (ET) Work item 10352 - Internal hyperlinks with UTF-8 sheet names not working in PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 10361 - String shared formula result read error with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10363 - Uncaught exception 'Exception' with message 'Valid scale is between 10 and 400.' in Classes/PHPExcel/Worksheet/PageSetup.php:338 +- Bugfix: (ET) Work item 10355 - Using setLoadSheetsOnly fails if you do not use setReadDataOnly(true) and sheet is not the first sheet +- Bugfix: (MB) Work item 10362 - getCalculatedValue() sometimes incorrect with IF formula and 0-values +- Bugfix: (MBaker) Work Item 10198 - Excel Reader 2007 problem with "shared" formulae when "master" is an error +- Bugfix: (MBaker) Work Item 10106 - Named Range Bug, using the same range name on different worksheets +- Bugfix: (MBaker) Work Item 10004 - Java code in JAMA classes +- Bugfix: (MBaker) Work Item 9659 - getCalculatedValue() not working with some formulas involving error types +- Bugfix: (MBaker) Work Item 9447 - evaluation of both return values in an IF() statement returning an error if either result was an error, irrespective of the IF evaluation +- Bugfix: (MBaker) Work Item 6203 - Power in formulas: new calculation engine no longer treats ^ as a bitwise XOR operator +- Bugfix: (MBaker) - Bugfixes and improvements to many of the Excel functions in PHPExcel + - Added optional "places" parameter in the BIN2HEX(), BIN2OCT, DEC2BIN(), DEC2OCT(), DEC2HEX(), HEX2BIN(), HEX2OCT(), OCT2BIN() and OCT2HEX() Engineering Functions + - Trap for unbalanced matrix sizes in MDETERM() and MINVERSE() Mathematic and Trigonometric functions + - Fix for default characters parameter value for LEFT() and RIGHT() Text functions + - Fix for GCD() and LCB() Mathematical functions when the parameters include a zero (0) value + - Fix for BIN2OCT() Engineering Function for 2s complement values (which were returning hex values) + - Fix for BESSELK() and BESSELY() Engineering functions + - Fix for IMDIV() Engineering Function when result imaginary component is positive (wasn't setting the sign) + - Fix for ERF() Engineering Function when called with an upper limit value for the integration + - Fix to DATE() Date/Time Function for year value of 0 + - Set ISPMT() function as category FINANCIAL + - Fix for DOLLARDE() and DOLLARFR() Financial functions + - Fix to EFFECT() Financial function (treating $nominal_rate value as a variable name rather than a value) + - Fix to CRITBINOM() Statistical function (CurrentValue and EssentiallyZero treated as constants rather than variables) + Note that an Error in the function logic can still lead to a permanent loop + - Fix to MOD() Mathematical function to work with floating point results + - Fix for QUOTIENT() Mathematical function + - Fix to HOUR(), MINUTE() and SECOND() Date/Time functions to return an error when passing in a floating point value of 1.0 or greater, or less than 0 + - LOG() Function now correctly returns base-10 log when called with only one parameter, rather than the natural log as the default base + - Modified text functions to handle multibyte character set (UTF-8). + + +2009/04/22 (v1.6.7): +- General: (MB) Work item 9416 - Deprecate misspelled setStriketrough() and getStriketrough() methods +- General: (MB) Work item 9526 - Performance improvement when saving file +- Feature: (MB) Work item 9598 - Check that sheet title has maximum 31 characters +- Feature: (MB, ET) Work item 9631 - True support for Excel built-in number format codes +- Feature: (ET) Work item 9683 - Ability to read defect BIFF5 Excel file without CODEPAGE record +- Feature: (MB) Work item 9701 - Auto-detect which reader to invoke +- Feature: (ET) Work item 9214 - Deprecate insertion of dates using PHP-time (Unix time) [request for removal of feature] +- Feature: (ET) Work item 9747 - Support for entering time values like '9:45', '09:45' using AdvancedValueBinder +- Feature: (ET) Work item 9797 - DataType dependent horizontal alignment in HTML and PDF writer +- Bugfix: (MB) Work item 9375 - Cloning data validation object causes script to stop +- Bugfix: (ET) Work item 9400 - Simultaneous repeating rows and repeating columns not working with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 9399 - Simultaneous repeating rows and repeating columns not working with PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 9437 - Row outline level not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 9452 - Occasional notices with PHPExcel_Reader_Excel5 when Excel file contains drawing elements +- Bugfix: (ET) Work item 9453 - PHPExcel_Reader_Excel5 fails as a whole when workbook contains images other than JPEG/PNG +- Bugfix: (ET) Work item 9444 - Excel5 writer checks for iconv but does not necessarily use it +- Bugfix: (ET) Work item 9463 - Altering a style on copied worksheet alters also the original +- Bugfix: (MB) Work item 9480 - Formulas are incorrectly updated when a sheet is renamed +- Bugfix: (MB) Work item 9513 - PHPExcel_Worksheet::extractSheetTitle not treating single quotes correctly +- Bugfix: (MB) Work item 9477 - PHP Warning raised in function array_key_exists +- Bugfix: (MB) Work item 9599 - getAlignWithMargins() gives wrong value when using PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9600 - getScaleWithDocument() gives wrong value when using PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9630 - PHPExcel_Reader_Excel2007 not reading the first user-defined number format +- Bugfix: (MB) Work item 9647 - Print area converted to uppercase after read with PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9661 - Incorrect reading of scope for named range using PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9690 - Error with pattern (getFillType) and rbg (getRGB) +- Bugfix: (ET) Work item 9712 - AdvancedValueBinder affected by system timezone setting when inserting date values +- Bugfix: (ET) Work item 9743 - PHPExcel_Reader_Excel2007 not reading value of active sheet index +- Bugfix: (ET) Work item 9742 - getARGB() sometimes returns SimpleXMLElement object instead of string with PHPExcel_Reader_Excel2007 +- Bugfix: (ET) Work item 9731 - Negative image offset causes defects in 14excel5.xls and 20readexcel5.xlsx +- Bugfix: (ET) Work item 9758 - HTML & PDF Writer not working with mergeCells (regression since 1.6.5) +- Bugfix: (ET) Work item 9774 - Too wide columns with HTML and PDF writer +- Bugfix: (MB) Work item 9775 - PDF and cyrillic fonts +- Bugfix: (ET) Work item 9793 - Percentages not working correctly with HTML and PDF writers (shows 0.25% instead of 25%) +- Bugfix: (ET) Work item 9791 - PHPExcel_Writer_HTML creates extra borders around cell contents using setUseInlineCss(true) +- Bugfix: (ET) Work item 9784 - Problem with text wrap + merged cells in HTML and PDF writer +- Bugfix: (ET) Work item 9814 - Adjacent path separators in include_path causing IOFactory to violate open_basedir restriction + + +-------------------------------------------------------------------------------- +BREAKING CHANGE! In previous versions of PHPExcel up to and including 1.6.6, +when a cell had a date-like number format code, it was possible to enter a date +directly using an integer PHP-time without converting to Excel date format. + +Starting with PHPExcel 1.6.7 this is no longer supported. Refer to the developer +documentation for more information on entering dates into a cell. +-------------------------------------------------------------------------------- + + +2009/03/02 (v1.6.6): +- General: (MB) Work item 9102 - Improve support for built-in number formats in PHPExcel_Reader_Excel2007 +- General: (ET) Work item 9281 - Source files are in both UNIX and DOS formats - changed to UNIX +- General: (MB) Work item 9338 - Update documentation: Which language to write formulas in? +- Feature: (ET) Work item 8817 - Ignore DEFCOLWIDTH records with value 8 in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 8847 - Support for width, height, offsetX, offsetY for images in PHPExcel_Reader_Excel5 +- Feature: (MB) Work item 8870 - Disk Caching in specific folder +- Feature: (MBaker) Work item 2346 - Added SUMX2MY2, SUMX2PY2, SUMXMY2, MDETERM and MINVERSE Mathematical and Trigonometric Functions +- Feature: (MBaker) Work item 2346 - Added CONVERT Engineering Function +- Feature: (MBaker) Work item 2346 - Added DB, DDB, DISC, DOLLARDE, DOLLARFR, INTRATE, IPMT, PPMT, PRICEDISC, PRICEMAT and RECEIVED Financial Functions +- Feature: (MBaker) Work item 2346 - Added ACCRINTM, CUMIPMT, CUMPRINC, TBILLEQ, TBILLPRICE, TBILLYIELD, YIELDDISC and YIELDMAT Financial Functions +- Feature: (MBaker) Work item 2346 - Added DOLLAR Text Function +- Feature: (MBaker) Work item 2346 - Added CORREL, COVAR, FORECAST, INTERCEPT, RSQ, SLOPE and STEYX Statistical Functions +- Feature: (MBaker) Work item 2346 - Added PEARSON Statistical Functions as a synonym for CORREL +- Feature: (MBaker) Work item 2346 - Added LINEST, LOGEST (currently only valid for stats = false), TREND and GROWTH Statistical Functions +- Feature: (MBaker) Work item 2346 - Added RANK and PERCENTRANK Statistical Functions +- Feature: (MBaker) Work item 2346 - Added ROMAN Mathematical Function (Classic form only) +- Feature: (MB) Work item 8931 - Update documentation to show example of getCellByColumnAndRow($col, $row) +- Feature: (MB) Work item 8770 - Implement worksheet, row and cell iterators +- Feature: (MB) Work item 9001 - Support for arbitrary defined names (named range) +- Feature: (MB, ET) Work item 9016 - Update formulas when sheet title / named range title changes +- Feature: (MB) Work item 9103 - Ability to read cached calculated value +- Feature: (MBaker, ET) Work item 8483 - Support for Excel 1904 calendar date mode (Mac) +- Feature: (ET) Work item 9194 - PHPExcel_Writer_Excel5 improvements writing shared strings table +- Feature: (ET) Work item 9248 - PHPExcel_Writer_Excel5 iconv fallback when mbstring extension is not enabled +- Feature: (ET) Work item 9253 - UTF-8 support in font names in PHPExcel_Writer_Excel5 +- Feature: (MB) Work item 9215 - Implement value binding architecture +- Feature: (MB) Work item 6742 - PDF writer not working with UTF-8 +- Feature: (ET) Work item 9355 - Eliminate duplicate style entries in multisheet workbook written by PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8810 - Redirect to client browser fails due to trailing white space in class definitions +- Bugfix: (MB) Work item 8816 - Spurious column dimension element introduced in blank worksheet after using PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 8830 - Image gets slightly narrower than expected when using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8831 - Image laid over non-visible row gets squeezed in height when using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8860 - PHPExcel_Reader_Excel5 fails when there are 10 or more images in the workbook +- Bugfix: (MB) Work item 8909 - Different header/footer images in different sheets not working with PHPExcel_Writer_Excel2007 +- Bugfix: (MB, ET) Work item 8924 - Fractional seconds disappear when using PHPExcel_Reader_Excel2007 and PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 7994 - Images not showing in OpenOffice when using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 9047 - Images not showing on print using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 9085 - PHPExcel_Writer_Excel5 maximum allowed record size 4 bytes too short +- Bugfix: (MB) Work item 9119 - Not numeric strings are formatted as dates and numbers using worksheet's toArray method +- Bugfix: (ET) Work item 9132 - Excel5 simple formula parsing error +- Bugfix: (ET) Work item 9206 - Problems writing dates with CSV +- Bugfix: (ET) Work item 9203 - PHPExcel_Reader_Excel5 reader fails with fatal error when reading group shapes +- Bugfix: (ET) Work item 9231 - PHPExcel_Writer_Excel5 fails completely when workbook contains more than 57 colors +- Bugfix: (ET) Work item 9244 - PHPExcel_Writer_PDF not compatible with autoload +- Bugfix: (ET) Work item 9250 - Fatal error: Call to a member function getNestingLevel() on a non-object in PHPExcel/Reader/Excel5.php on line 690 +- Bugfix: (MB) Work item 9246 - Notices when running test 04printing.php on PHP 5.2.8 +- Bugfix: (MB) Work item 9294 - insertColumn() spawns creation of spurious RowDimension +- BugFix: (MBaker) Work item 9296 - Fix declarations for methods in extended Trend classes +- Bugfix: (MBaker) Work item 2346 - Fix to parameters for the FORECAST Statistical Function +- Bugfix: (MB) Work item 7083 - PDF writer problems with cell height and text wrapping +- Bugfix: (MBaker) Work Item 9337 - Fix test for calculated value in case the returned result is an array +- Bugfix: (ET) Work Item 9354 - Column greater than 256 results in corrupt Excel file using PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 9351 - Excel Numberformat 0.00 results in non internal decimal places values in toArray() Method +- Bugfix: (MB,ET) Work item 9356 - setAutoSize not taking into account text rotation +- Bugfix: (ET) Work item 9372 - Call to undefined method PHPExcel_Worksheet_MemoryDrawing::getPath() in PHPExcel/Writer/HTML.php + + +2009/01/05 (v1.6.5): +- General: (MB) Applied patch 2063 +- General: (MB) Applied patch from work item 8073 - Optimise Shared Strings +- General: (MB) Applied patch from work item 8074 - Optimise Cell Sorting +- General: (MB) Applied patch from work item 8075 - Optimise Style Hashing +- General: (ET) Applied patch from work item 8245 - UTF-8 enhancements +- General: (ET) Applied patch from work item 8283 - PHPExcel_Writer_HTML validation errors against strict HTML 4.01 / CSS 2.1 +- General: (MB) Documented work items 6203 and 8110 in manual +- General: (ET) Restructure package hierachy so classes can be found more easily in auto-generated API (from work item 8468) +- General: (MB) Work item 8806 - Redirect output to a client's browser: Update recommendation in documentation +- Feature: (ET) Work item 7897 - PHPExcel_Reader_Excel5 support for print gridlines +- Feature: (ET) Work item 7899 - Screen gridlines support in Excel5 reader/writer +- Feature: (MB, ET) Work item 7552 - Option for adding image to spreadsheet from image resource in memory +- Feature: (ET) Work item 7862 - PHPExcel_Reader_Excel5 style support for BIFF5 files (Excel 5.0 - Excel 95) +- Feature: (ET) Work item 7918 - PHPExcel_Reader_Excel5 support for user-defined colors and special built-in colors +- Feature: (ET) Work item 7992 - Support for freeze panes in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 7996 - Support for header and footer margins in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 7997 - Support for active sheet index in Excel5 reader/writer +- Feature: (MB) Work item 7991 - Freeze panes not read by PHPExcel_Reader_Excel2007 +- Feature: (MB, ET) Work item 7993 - Support for screen zoom level (feature request) +- Feature: (ET) Work item 8012 - Support for default style in PHPExcel_Reader_Excel5 +- Feature: (MB) Work item 8094 - Apple iWork / Numbers.app incompatibility +- Feature: (MB) Work item 7931 - Support "between rule" in conditional formatting +- Feature: (MB) Work item 8308 - Comment size, width and height control (feature request) +- Feature: (ET) Work item 8418 - Improve method for storing MERGEDCELLS records in PHPExcel_Writer_Excel5 +- Feature: (ET) Work item 8435 - Support for protectCells() in Excel5 reader/writer +- Feature: (ET) Work item 8472 - Support for fitToWidth and fitToHeight pagesetup properties in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 8489 - Support for setShowSummaryBelow() and setShowSummaryRight() in PHPExcel_Writer_Excel5 +- Feature: (MB) Work item 8483 - Support for Excel 1904 calendar date mode (Mac) +- Feature: (ET) Work item 7538 - Excel5 reader: Support for reading images (bitmaps) +- Feature: (ET) Work item 8787 - Support for default style in PHPExcel_Writer_Excel5 +- Feature: (MBaker) Modified calculate() method to return either an array or the first value from the array for those functions that return arrays rather than single values (e.g the MMULT and TRANSPOSE function). This performance can be modified based on the $returnArrayAsType which can be set/retrieved by calling the setArrayReturnType() and getArrayReturnType() methods of the PHPExcel_Calculation class. +- Feature: (MBaker) Work item 2346 - Added ERROR.TYPE Information Function, MMULT Mathematical and Trigonometry Function, and TRANSPOSE Lookup and Reference Function +- Bugfix: (ET) Work item 7896 - setPrintGridlines(true) not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7907 - Incorrect mapping of fill patterns in PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7898 - setShowGridlines(false) not working with PHPExcel_Writer_Excel2007 +- Bugfix: (MB) Work item 7905 - getShowGridlines() gives inverted value when reading sheet with PHPExcel_Reader_Excel2007 +- Bugfix: (ET) Work item 7944 - User-defined column width becomes slightly larger after read/write with Excel5 +- Bugfix: (ET) Work item 7949 - Incomplete border style support in PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7928 - Conditional formatting "containsText" read/write results in MS Office Excel 2007 crash +- Bugfix: (MB) Work item 7995 - All sheets are always selected in output when using PHPExcel_Writer_Excel2007 +- Bugfix: (MB) Work item 8013 - COLUMN function warning message during plain read/write +- Bugfix: (MB) Work item 8155 - setValue(0) results in string data type '0' +- Bugfix: (MB) Work item 8226 - Styles not removed when removing rows from sheet +- Bugfix: (MB) Work item 8301 - =IF formula causes fatal error during $objWriter->save() in Excel2007 format +- Bugfix: (ET) Work item 8333 - Exception thrown reading valid xls file: "Excel file is corrupt. Didn't find CONTINUE record while reading shared strings" +- Bugfix: (ET) Work item 8320 - MS Outlook corrupts files generated by PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 8351 - Undefined method PHPExcel_Worksheet::setFreezePane() in ReferenceHelper.php on line 271 +- Bugfix: (MB) Work item 8401 - Ampersands (&), left and right angles (<, >) in Rich-Text strings leads to corrupt output using PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 8408 - Print header and footer not supporting UTF-8 in PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8463 - Vertical page breaks not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8476 - Missing support for accounting underline types in PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8482 - Infinite loops when reading corrupt xls file using PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 8566 - Sheet protection password not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8596 - PHPExcel_Style_NumberFormat::FORMAT_NUMBER ignored by PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8781 - PHPExcel_Reader_Excel5 fails a whole when workbook contains a chart +- Bugfix: (ET) Work item 8788 - Occasional loss of column widths using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8795 - Notices while reading formulas with deleted sheet references using PHPExcel_Reader_Excel5 +- Bugfix: (MB) Work item 8807 - Default style not read by PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9341 - Blank rows occupy too much space in file generated by PHPExcel_Writer_Excel2007 + + +2008/10/27 (v1.6.4): +- General: (ET) Work item 7882 - RK record number error in MS developer documentation: 0x007E should be 0x027E +- Feature: (MBaker) Work item 7878 - getHighestColumn() returning "@" for blank worksheet causes corrupt output +- Feature: (MBaker) Work item 2346 - Implement ROW and COLUMN Lookup/Reference Functions (when specified with a parameter) +- Feature: (MBaker) Work item 2346 - Implement initial work on OFFSET Lookup/Reference Function (returning address rather than value at address) +- Feature: (ET) Work item 7416 - Excel5 reader: Page margins +- Feature: (ET) Work item 7417 - Excel5 reader: Header & Footer +- Feature: (ET) Work item 7449 - Excel5 reader support for page setup (paper size etc.) +- Feature: (MB) Work item 7445 - Improve speed and memory consumption of PHPExcel_Writer_CSV +- Feature: (MB) Work item 7432 - Better recognition of number format in HTML, CSV, and PDF writer +- Feature: (MB) Work item 7485 - Font support: Superscript and Subscript +- Feature: (ET) Work item 7509 - Excel5 reader font support: Super- and subscript +- Feature: (ET) Work item 7521 - Excel5 reader style support: Text rotation and stacked text +- Feature: (ET) Work item 7530 - Excel5 reader: Support for hyperlinks +- Feature: (MB, ET) Work item 7557 - Import sheet by request +- Feature: (ET) Work item 7607 - PHPExcel_Reader_Excel5 support for page breaks +- Feature: (ET) Work item 7622 - PHPExcel_Reader_Excel5 support for shrink-to-fit +- Feature: (MB, ET) Work item 7675 - Support for error types +- Feature: (ET) Work item 7388 - Excel5 reader true formula support +- Feature: (ET) Work item 7701 - Support for named ranges (defined names) in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 7781 - Support for repeating rows and repeating columns (print titles) in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 7783 - Support for print area in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 7795 - Excel5 reader and writer support for horizontal and vertical centering of page +- Feature: (MB) Applied patch 1962 +- Feature: (ET) Work item 7866 - Excel5 reader and writer support for hidden cells (formulas) +- Feature: (MB, ET) Work item 7612 - Support for indentation in cells (feature request) +- Feature: (MB, ET) Work item 7828 - Option for reading only specified interval of rows in a sheet +- Bugfix: (MBaker) Work item 7367 - PHPExcel_Calculation_Functions::DATETIMENOW() and PHPExcel_Calculation_Functions::DATENOW() to force UTC +- Bugfix: (MBaker) Work item 7395 - Modified PHPExcel_Shared_Date::FormattedPHPToExcel() and PHPExcel_Shared_Date::ExcelToPHP to force datatype for return values +- Bugfix: (ET) Work item 7450 - Excel5 reader not producing UTF-8 strings with BIFF5 files +- Bugfix: (MB) Work item 7470 - Array constant in formula gives run-time notice with Excel2007 writer +- Bugfix: (MB) Work item 7494 - PHPExcel_Reader_Excel2007 setReadDataOnly(true) returns Rich-Text +- Bugfix: (ET) Work item 7496 - PHPExcel_Reader_Excel5 setReadDataOnly(true) returns Rich-Text +- Bugfix: (MB) Work item 7497 - Characters before superscript or subscript losing style +- Bugfix: (MB) Work item 7507 - Subscript not working with HTML writer +- Bugfix: (MB) Work item 7508 - DefaultColumnDimension not working on first column (A) +- Bugfix: (MB) Work item 7527 - Negative numbers are stored as text in PHPExcel_Writer_2007 +- Bugfix: (ET) Work item 7531 - Text rotation and stacked text not working with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7536 - PHPExcel_Shared_Date::isDateTimeFormatCode erroneously says true +- Bugfix: (MB) Work item 7559 - Different images with same filename in separate directories become duplicates +- Bugfix: (ET) Work item 7568 - PHPExcel_Reader_Excel5 not returning sheet names as UTF-8 using for Excel 95 files +- Bugfix: (MB) Work item 7575 - setAutoSize(true) on empty column gives column width of 10 using PHPExcel_Writer_Excel2007 +- Bugfix: (MB, ET) Work item 7573 - setAutoSize(true) on empty column gives column width of 255 using PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7514 - Worksheet_Drawing bug +- Bugfix: (MB) Work item 7593 - getCalculatedValue() with REPT function causes script to stop +- Bugfix: (MB) Work item 7594 - getCalculatedValue() with LEN function causes script to stop +- Bugfix: (MB) Work item 7600 - Explicit fit-to-width (page setup) results in fit-to-height becoming 1 +- Bugfix: (MB) Work item 7610 - Fit-to-width value of 1 is lost after read/write of Excel2007 spreadsheet +- Bugfix: (MB) Work item 7516 - Conditional styles not read properly using PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 7611 - PHPExcel_Writer_2007: Default worksheet style works only for first sheet +- Bugfix: (ET) Work item 6940 - Cannot Lock Cells using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7621 - Incorrect cell protection values found when using Excel5 reader +- Bugfix: (ET) Work item 7623 - Default row height not working above highest row using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7637 - Default column width does not get applied when using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7642 - Broken support for UTF-8 string formula results in PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 7643 - UTF-8 sheet names not working with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7631 - getCalculatedValue() with ISNONTEXT function causes script to stop +- Bugfix: (ET) Work item 7652 - Missing BIFF3 functions in PHPExcel_Writer_Excel5: USDOLLAR (YEN), FINDB, SEARCHB, REPLACEB, LEFTB, RIGHTB, MIDB, LENB, ASC, DBCS (JIS) +- Bugfix: (ET) Work item 7663 - Excel5 reader doesn't read numbers correctly in 64-bit systems +- Bugfix: (ET) Work item 7667 - Missing BIFF5 functions in PHPExcel_Writer_Excel5: ISPMT, DATEDIF, DATESTRING, NUMBERSTRING +- Bugfix: (ET) Work item 7668 - Missing BIFF8 functions in PHPExcel_Writer_Excel5: GETPIVOTDATA, HYPERLINK, PHONETIC, AVERAGEA, MAXA, MINA, STDEVPA, VARPA, STDEVA, VARA +- Bugfix: (MB) Work item 7657 - Wrong host value in PHPExcel_Shared_ZipStreamWrapper::stream_open() +- Bugfix: (ET) Work item 7676 - PHPExcel_Reader_Excel5 not reading explicitly entered error types in cells +- Bugfix: (ET) Work item 7678 - Boolean and error data types not preserved for formula results in PHPExcel_Reader_Excel5 +- Bugfix: (MB) Work item 7695 - PHPExcel_Reader_Excel2007 ignores cell data type +- Bugfix: (ET) Work item 7712 - PHPExcel_Reader_Excel5 ignores cell data type +- Bugfix: (ET) Work item 7587 - PHPExcel_Writer_Excel5 not aware of data type +- Bugfix: (ET) Work item 7713 - Long strings sometimes truncated when using PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 7727 - Direct entry of boolean or error type in cell not supported by PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7714 - PHPExcel_Reader_Excel2007: Error reading cell with data type string, date number format, and numeric-like cell value +- Bugfix: (ET) Work item 7735 - Row and column outlines (group indent level) not showing after using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7737 - Missing UTF-8 support in number format codes for PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7750 - Missing UTF-8 support with PHPExcel_Writer_Excel5 for explicit string in formula +- Bugfix: (MB) Work item 7726 - Problem with class constants in PHPExcel_Style_NumberFormat +- Bugfix: (ET) Work item 7758 - Sometimes errors with PHPExcel_Reader_Excel5 reading hyperlinks +- Bugfix: (ET) Work item 7759 - Hyperlink in cell always results in string data type when using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7771 - Excel file with blank sheet seen as broken in MS Office Excel 2007 when created by PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7785 - PHPExcel_Reader_Excel5: Incorrect reading of formula with explicit string containing (escaped) double-quote +- Bugfix: (MB) Work item 7787 - getCalculatedValue() fails on formula with sheet name containing (escaped) single-quote +- Bugfix: (MB) Work item 7786 - getCalculatedValue() fails on formula with explicit string containing (escaped) double-quote +- Bugfix: (MB) Work item 7780 - Problems with simultaneous repeatRowsAtTop and repeatColumnsAtLeft using Excel2007 reader and writer +- Bugfix: (ET) Work item 7802 - PHPExcel_Reader_Excel5: Error reading formulas with sheet reference containing special characters +- Bugfix: (ET) Work item 7831 - Off-sheet references sheet!A1 not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7834 - Repeating rows/columns (print titles), print area not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7849 - Formula having datetime number format shows as text when using PHPExcel_Writer_Excel5 +- Bugfix: (MBaker) Work item 7863 - Cannot set formula to hidden using applyFromArray() +- Bugfix: (MBaker) Work item 7805 - HTML/PDF Writers limited to 26 columns by calculateWorksheetDimension (erroneous comparison in getHighestColumn() method) +- Bugfix: (MB) Work item 7873 - Formula returning error type is lost when read by PHPExcel_Reader_Excel2007 +- Bugfix: (ET) Work item 7883 - PHPExcel_Reader_Excel5: Cell style lost for last column in group of blank cells +- Bugfix: (MB) Work item 7886 - Column width sometimes collapses to auto size using Excel2007 reader/writer +- Bugfix: (MB) Work item 9343 - Data Validation Formula = 0 crashes Excel + + +2008/08/25 (v1.6.3): +- Bugfix: (MBaker) Work item 7367 - Modified PHPExcel_Shared_Date::PHPToExcel() to force UTC +- General: (MB) Applied patch 1629 +- General: (MB) Applied patch 1644 +- General: (MB) Work item 6485 - Implement repeatRow and repeatColumn in Excel5 writer +- General: (MB) Work item 6838 - Remove scene3d filter in Excel2007 drawing +- Feature: (MBaker) Work item 2346 - Implement CHOOSE and INDEX Lookup/Reference Functions +- Feature: (MBaker) Work item 2346 - Implement CLEAN Text Functions +- Feature: (MBaker) Work item 2346 - Implement YEARFRAC Date/Time Functions +- Feature: (MB) Work item 6508 - Implement 2 options for print/show gridlines +- Feature: (MB) Work item 7270 - Add VLOOKUP function (contribution) +- Feature: (MB) Work item 7182 - Implemented: ShrinkToFit +- Feature: (MB) Work item 7218 - Row heights not updated correctly when inserting new rows +- Feature: (MB) Work item 7157 - Copy worksheets within the same workbook +- Feature: (ET) Work item 7290 - Excel5 reader style support: horizontal and vertical alignment plus text wrap +- Feature: (ET) Work item 7294 - Excel5 reader support for merged cells +- Feature: (ET) Work item 7296 - Excel5 reader: Sheet Protection +- Feature: (ET) Work item 7297 - Excel5 reader: Password for sheet protection +- Feature: (ET) Work item 7299 - Excel5 reader: Column width +- Feature: (ET) Work item 7301 - Excel5 reader: Row height +- Feature: (ET) Work item 7304 - Excel5 reader: Font support +- Feature: (ET) Work item 7324 - Excel5 reader: support for locked cells +- Feature: (ET) Work item 7330 - Excel5 reader style support: Fill (background colors and patterns) +- Feature: (ET) Work item 7332 - Excel5 reader style support: Borders (style and color) +- Feature: (ET) Work item 7346 - Excel5 reader: Rich-Text support +- Feature: (MB) Work item 7313 - Read Excel built-in number formats with Excel 2007 reader +- Feature: (ET) Work item 7317 - Excel5 reader: Number format support +- Feature: (MB) Work item 7362 - Creating a copy of PHPExcel object +- Feature: (ET) Work item 7373 - Excel5 reader: support for row / column outline (group) +- Feature: (MB) Work item 7380 - Implement default row/column sizes +- Feature: (MB) Work item 7364 - Writer HTML - option to return styles and table separately +- Feature: (ET) Work item 7393 - Excel5 reader: Support for remaining built-in number formats +- Bugfix: (MBaker) Fixed rounding in HOUR MINUTE and SECOND Time functions, and improved performance for these +- Bugfix: (MBaker) Fix to TRIM function +- Bugfix: (MBaker) Fixed range validation in TIME Functions.php +- Bugfix: (MBaker) EDATE and EOMONTH functions now return date values based on the returnDateType flag +- Bugfix: (MBaker) Write date values that are the result of a calculation function correctly as Excel serialized dates rather than PHP serialized date values +- Bugfix: (MB) Work item 6690 - Excel2007 reader not always reading boolean correctly +- Bugfix: (MB) Work item 6275 - Columns above IZ +- Bugfix: (MB) Work item 6853 - Other locale than English causes Excel2007 writer to produce broken xlsx +- Bugfix: (MB) Work item 7061 - Typo: Number_fromat in NumberFormat.php +- Bugfix: (MB) Work item 6865 - Bug in Worksheet_BaseDrawing setWidth() +- Bugfix: (MB) Work item 6891 - PDF writer collapses column width for merged cells +- Bugfix: (MB) Work item 6867 - Issues with drawings filenames +- Bugfix: (MB) Work item 7073 - fromArray() local variable isn't defined +- Bugfix: (MB) Work item 7276 - PHPExcel_Writer_Excel5->setTempDir() not passed to all classes involved in writing to a file +- Bugfix: (MB) Work item 7277 - Excel5 reader not handling UTF-8 properly +- Bugfix: (MB) Work item 7327 - If you write a 0 value in cell, cell shows as empty +- Bugfix: (MB) Work item 7302 - Excel2007 writer: Row height ignored for empty rows +- Bugfix: (MB) Work item 7281 - Excel2007 (comments related error) +- Bugfix: (MB) Work item 7345 - Column width in other locale +- Bugfix: (MB) Work item 7347 - Excel2007 reader not reading underlined Rich-Text +- Bugfix: (ET) Work item 7357 - Excel5 reader converting booleans to strings +- Bugfix: (MB) Work item 7365 - Recursive Object Memory Leak +- Bugfix: (MB) Work item 7372 - Excel2007 writer ignoring row dimensions without cells +- Bugfix: (ET) Work item 7382 - Excel5 reader is converting formatted numbers / dates to strings + + +2008/06/23 (v1.6.2): +- General: (MB) Work item 6088 - Document style array values +- General: (MB) Applied patch 1195 +- General: (MB) Work item 6178 - Redirecting output to a client’s web browser - http headers +- General: (MB) Work item 6187 - Improve worksheet garbage collection +- General: (MBaker) Functions that return date values can now be configured to return as Excel serialized date/time, PHP serialized date/time, or a PHP date/time object. +- General: (MBaker) Functions that explicitly accept dates as parameters now permit values as Excel serialized date/time, PHP serialized date/time, a valid date string, or a PHP date/time object. +- General: (MBaker) Implement ACOSH, ASINH and ATANH functions for those operating platforms/PHP versions that don't include these functions +- General: (MBaker) Implement ATAN2 logic reversing the arguments as per Excel +- General: (MBaker) Additional validation of parameters for COMBIN +- General: (MBaker) Fixed validation for CEILING and FLOOR when the value and significance parameters have different signs; and allowed default value of 1 or -1 for significance when in GNUMERIC compatibility mode +- Feature: (MBaker) Work item 2346 - Implement ADDRESS, ISLOGICAL, ISTEXT and ISNONTEXT functions +- Feature: (MBaker) Work item 2346 - Implement COMPLEX, IMAGINARY, IMREAL, IMARGUMENT, IMCONJUGATE, IMABS, IMSUB, IMDIV, IMSUM, IMPRODUCT, IMSQRT, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER IMCOS and IMSIN Engineering functions +- Feature: (MBaker) Work item 2346 - Implement NETWORKDAYS and WORKDAY Date/Time functions +- Feature: (MB) Work item 6100 - Make cell column AAA available +- Feature: (MB) Work item 6095 - Mark particular cell as selected when opening Excel +- Feature: (MB) Work item 6120 - Multiple sheets in PDF and HTML +- Feature: (MB) Work item 6227 - Implement PHPExcel_ReaderFactory and PHPExcel_WriterFactory +- Feature: (MB) Work item 6249 - Set image root of PHPExcel_Writer_HTML +- Feature: (MB) Work item 6264 - Enable/disable calculation cache +- Feature: (MB) Work item 6259 - PDF writer and multi-line text +- Feature: (MB) Work item 6350 - Feature request - setCacheExpirationTime() +- Feature: (JB) Work item 6370 - Implement late-binding mechanisms to reduce memory footprint +- Feature: (JB) Work item 6430 - Implement shared styles +- Feature: (MB) Work item 6391 - Copy sheet from external Workbook to active Workbook +- Feature: (MB) Work item 6428 - Functions in Conditional Formatting +- Bugfix: (MB) Work item 6096 - Default Style in Excel5 +- Bugfix: (MB) Work item 6150 - Numbers starting with '+' cause Excel 2007 errors +- Bugfix: (MB) Work item 6092 - ExcelWriter5 is not PHP5 compatible, using it with E_STRICT results in a bunch of errors (applied patches) +- Bugfix: (MB) Work item 6179 - Error Reader Excel2007 line 653 foreach ($relsDrawing->Relationship as $ele) +- Bugfix: (MB) Work item 6229 - Worksheet toArray() screws up DATE +- Bugfix: (MB) Work item 6253 - References to a Richtext cell in a formula +- Bugfix: (MB) Work item 6285 - insertNewColumnBefore Bug +- Bugfix: (MB) Work item 6319 - Error reading Excel2007 file with shapes +- Bugfix: (MBaker) Work item 6302 - Determine whether date values need conversion from PHP dates to Excel dates before writing to file, based on the data type (float or integer) +- Bugfix: (MBaker) Fixes to DATE function when it is given negative input parameters +- Bugfix: (MB) Work item 6347 - PHPExcel handles empty cells other than Excel +- Bugfix: (MB) Work item 6348 - PHPExcel handles 0 and "" as being the same +- Bugfix: (MB) Work item 6357 - Problem Using Excel2007 Reader for Spreadsheets containing images +- Bugfix: (MB) Work item 6359 - ShowGridLines ignored when reading/writing Excel 2007 +- Bugfix: (MB) Work item 6426 - Bug With Word Wrap in Excel 2007 Reader + + +2008/04/28 (v1.6.1): +- General: (MB) Work item 5532 - Fix documentation printing +- General: (MB) Work item 5586 - Memory usage improvements +- General: (MB) Applied patch 990 +- General: (MB) Applied patch 991 +- Feature: (BM) Work item 2841 - Implement PHPExcel_Reader_Excel5 +- Feature: (MB) Work item 5564 - Implement "toArray" and "fromArray" method +- Feature: (MB) Work item 5665 - Read shared formula +- Feature: (MB) Work item 5681 - Read image twoCellAnchor +- Feature: (MB) Work item 4446 - &G Image as bg for headerfooter +- Feature: (MB) Work item 5834 - Implement page layout functionality for Excel5 format +- Feature: (MB) Work item 6039 - Feature request: PHPExcel_Writer_PDF +- Bugfix: (MB) Work item 5517 - DefinedNames null check +- Bugfix: (MB) Work item 5463 - Hyperlinks should not always have trailing slash +- Bugfix: (MB) Work item 5592 - Saving Error - Uncaught exception (#REF! named range) +- Bugfix: (MB) Work item 5634 - Error when creating Zip file on Linux System (Not Windows) +- Bugfix: (MB) Work item 5876 - Time incorrecly formated +- Bugfix: (MB) Work item 5914 - Conditional formatting - second rule not applied +- Bugfix: (MB) Work item 5978 - PHPExcel_Reader_Excel2007 cannot load PHPExcel_Shared_File +- Bugfix: (MB) Work item 6020 - Output redirection to web browser + + +2008/02/14 (v1.6.0): +- General: (MB) Work item 3156 - Use PHPExcel datatypes in formula calculation +- Feature: (MB) Work item 5019 - Center on page when printing +- Feature: (MB) Work item 5099 - Hyperlink to other spreadsheet +- Feature: (MB) Work item 5104 - Set the print area of a worksheet +- Feature: (MB) Work item 5118 - Read "definedNames" property of worksheet +- Feature: (MB) Work item 5338 - Set default style for all cells +- Feature: (MB) Work item 4216 - Named Ranges +- Feature: (MB) Work item 5398 - Implement worksheet references (Sheet1!A1) +- Bugfix: (MB) Work item 4967 - Redirect output to a client's web browser +- Bugfix: (MB) Work item 5008 - "File Error: data may have been lost." seen in Excel 2007 and Excel 2003 SP3 when opening XLS file +- Bugfix: (MB) Work item 5165 - Bug in style's getHashCode() +- Bugfix: (MB) Work item 5165 - PHPExcel_Reader not correctly reading numeric values +- Bugfix: (MB) Work item 5324 - Text rotation is read incorrectly +- Bugfix: (MB) Work item 5326 - Enclosure " and data " result a bad data : \" instead of "" +- Bugfix: (MB) Work item 5332 - Formula parser - IF statement returning array instead of scalar +- Bugfix: (MB) Work item 5351 - setFitToWidth(nbpage) & setFitToWidth(nbpage) work partially +- Bugfix: (MB) Work item 5361 - Worksheet::setTitle() causes unwanted renaming +- Bugfix: (MB) Work item 5407 - Hyperlinks not working. Results in broken xlsx file. + + +2007/12/24 (v1.5.5): +- General: (MB) Work item 4135 - Grouping Rows +- General: (MB) Work item 4427 - Semi-nightly builds +- Feature: (MB) Work item 3155 - Implement "date" datatype +- Feature: (MB) Work item 4150 - Date format not honored in CSV writer +- Feature: (MB) Work item 4199 - RichText and sharedStrings +- Feature: (MB) Work item 2346 - Implement more Excel calculation functions + - Addition of DATE, DATEDIF, DATEVALUE, DAY, DAYS360 +- Feature: (MBaker) Work item 2346 - Implement more Excel calculation functions + - Addition of AVEDEV, HARMEAN and GEOMEAN + - Addition of the BINOMDIST (Non-cumulative only), COUNTBLANK, EXPONDIST, FISHER, FISHERINV, NORMDIST, NORMSDIST, PERMUT, POISSON (Non-cumulative only) and STANDARDIZE Statistical Functions + - Addition of the CEILING, COMBIN, EVEN, FACT, FACTDOUBLE, FLOOR, MULTINOMIAL, ODD, ROUNDDOWN, ROUNDUP, SIGN, SQRTPI and SUMSQ Mathematical Functions + - Addition of the NORMINV, NORMSINV, CONFIDENCE and SKEW Statistical Functions + - Addition of the CRITBINOM, HYPGEOMDIST, KURT, LOGINV, LOGNORMDIST, NEGBINOMDIST and WEIBULL Statistical Functions + - Addition of the LARGE, PERCENTILE, QUARTILE, SMALL and TRIMMEAN Statistical Functions + - Addition of the BIN2HEX, BIN2OCT, DELTA, ERF, ERFC, GESTEP, HEX2BIN, HEX2DEC, HEX2OCT, OCT2BIN and OCT2HEX Engineering Functions + - Addition of the CHIDIST, GAMMADIST and GAMMALN Statistical Functions + - Addition of the GCD, LCM, MROUND and SUBTOTAL Mathematical Functions + - Addition of the LOWER, PROPER and UPPER Text Functions + - Addition of the BETADIST and BETAINV Statistical Functions + - Addition of the CHIINV and GAMMAINV Statistical Functions + - Addition of the SERIESSUM Mathematical Function + - Addition of the CHAR, CODE, FIND, LEN, REPT, SEARCH, T, TRIM Text Functions + - Addition of the FALSE and TRUE Boolean Functions + - Addition of the TDIST and TINV Statistical Functions + - Addition of the EDATE, EOMONTH, YEAR, MONTH, TIME, TIMEVALUE, HOUR, MINUTE, SECOND, WEEKDAY, WEEKNUM, NOW, TODAY and Date/Time Function + - Addition of the BESSELI, BESSELJ, BESSELK and BESSELY Engineering Functions + - Addition of the SLN and SYD Financial Functions + - reworked MODE calculation to handle floating point numbers + - Improved error trapping for invalid input values + - Fix to SMALL, LARGE, PERCENTILE and TRIMMEAN to eliminate non-numeric values + - Added CDF to BINOMDIST and POISSON + - Fix to a potential endless loop in CRITBINOM, together with other bugfixes to the algorithm + - Fix to SQRTPI so that it will work with a real value parameter rather than just integers + - Trap for passing negative values to FACT + - Improved accuracy of the NORMDIST cumulative function, and of the ERF and ERFC functions + - Replicated Excel data-type and error handling for BIN, DEC, OCT and HEX conversion functions + - Replicated Excel data-type and error handling for AND and OR Boolean functions + - Bugfix to MROUND + - Rework of the DATE, DATEVALUE, DAY, DAYS360 and DATEDIF date/Time functions to use Excel dates rather than straight PHP dates + - Rework of the AND, OR Boolean functions to ignore string values + - Rework of the BIN2DEC, BIN2HEX, BIN2OCT, DEC2BIN, DEC2HEX, DEC2OCT Engineering functions to handle two's complement + - Excel, Gnumeric and OpenOffice Calc compatibility flag for functions + Note, not all functions have yet been written to work with the Gnumeric and OpenOffice Calc compatibility flags + - 1900 or 1904 Calendar flag for date functions + - Reworked ExcelToPHP date method to handle the Excel 1900 leap year + Note that this will not correctly return values prior to 13-Dec-1901 20:45:52 as this is the minimum value that PHP date serial values can handle. If you need to work with dates prior to this, then an ExcelToPHPObject method has been added which will work correctly with values between Excel's 1900 calendar base date of 1-Jan-1900, and 13-Dec-1901 + - Addition of ExcelToPHPObject date method to return a PHP DateTime object from an Excel date serial value + - PHPToExcel method modified to accept either PHP date serial numbers or PHP DateTime objects + - Addition of FormattedPHPToExcel which will accept a date and time broken to into year, month, day, hour, minute, second and return an Excel date serial value +- Feature: (MB) Work item 4485 - Control characters in Excel 2007 +- Feature: (MB) Work item 4796 - BaseDrawing::setWidthAndHeight method request +- Feature: (MB) Work item 4798 - Page Setup -> Print Titles -> Sheet -> 'Rows to repeat at top' +- Feature: (MB) Work item 4433 - Comment functionality +- Bugfix: (MB) Work item 4124 - Undefined variable in PHPExcel_Writer_Serialized +- Bugfix: (MB) Work item 4125 - Notice: Object of class PHPExcel_RichText could not be converted to int +- Bugfix: (MB) Work item 4126 - Excel5Writer: utf8 string not converted to utf16 +- Bugfix: (MB) Work item 4180 - PHPExcel_RichText and autosize +- Bugfix: (MB) Work item 4574 - Excel5Writer produces broken xls files after change mentioned in work item 4126 +- Bugfix: (MB) Work item 4797 - Small bug in PHPExcel_Reader_Excel2007 function _readStyle + + +2007/10/23 (v 1.5.0): +- General: (MB) Work item 3265 - Refactor PHPExcel Drawing +- Feature: (CS) Work item 3079 - Update Shared/OLE.php to latest version from PEAR +- Feature: (MB) Work item 3217 - Excel2007 vs Excel2003 compatibility pack +- Feature: (MB) Work item 3234 - Cell protection (lock/unlock) +- Feature: (MB) Work item 3543 - Create clickable links (hyperlinks) +- Feature: (MB) Work item 3241 - Additional page setup parameters +- Feature: (MB) Work item 3300 - Make temporary file path configurable (Excel5) +- Feature: (MB) Work item 3306 - Small addition to applyFromArray for font +- Feature: (MB) Work item 3373 - Better feedback when save of file is not possible +- Bugfix: (MB) Work item 3181 - Text Rotation +- Bugfix: (MB) Work item 3237 - Small bug in Page Orientation +- Bugfix: (MB) Work item 3812 - insertNewColumnBeforeByColumn undefined +- Bugfix: (MB) Work item 3893 - Sheet references not working in formula (Excel5 Writer) + + +2007/08/23 (v 1.4.5): +- General: (MB) Work item 3003 - Class file endings +- General: (MB) Work item 3081 - Different calculation engine improvements +- General: (MB) Work item 3082 - Different improvements in PHPExcel_Reader_Excel2007 +- General: (MB) Work item 3146 - Set XML indentation in PHPExcel_Writer_Excel2007 +- Feature: (MB) Work item 3159 - Optionally store temporary Excel2007 writer data in file instead of memory +- Feature: (MB) Work item 3063 - Implement show/hide gridlines +- Feature: (MB) Work item 3064 - Implement option to read only data +- Feature: (MB) Work item 3080 - Optionally disable formula precalculation +- Feature: (MB) Work item 3154 - Explicitly set cell datatype +- Feature: (MBaker) Work item 2346 - Implement more Excel calculation functions + - Addition of MINA, MAXA, COUNTA, AVERAGEA, MEDIAN, MODE, DEVSQ, STDEV, STDEVA, STDEVP, STDEVPA, VAR, VARA, VARP and VARPA Excel Functions + - Fix to SUM, PRODUCT, QUOTIENT, MIN, MAX, COUNT and AVERAGE functions when cell contains a numeric value in a string datatype, bringing it in line with MS Excel behaviour +- Bugfix: (MB) Work item 2881 - File_exists on ZIP fails on some installations +- Bugfix: (MB) Work item 2879 - Argument in textRotation should be -90..90 +- Bugfix: (MB) Work item 2883 - Excel2007 reader/writer not implementing OpenXML/SpreadsheetML styles 100% correct +- Bugfix: (MB) Work item 2513 - Active sheet index not read/saved +- Bugfix: (MB) Work item 2935 - Print and print preview of generated XLSX causes Excel2007 to crash +- Bugfix: (MB) Work item 2952 - Error in Calculations - COUNT() function +- Bugfix: (MB) Work item 3002 - HTML and CSV writer not writing last row +- Bugfix: (MB) Work item 3017 - Memory leak in Excel5 writer +- Bugfix: (MB) Work item 3044 - Printing (PHPExcel_Writer_Excel5) +- Bugfix: (MB) Work item 3046 - Problems reading zip:// +- Bugfix: (MB) Work item 3047 - Error reading conditional formatting +- Bugfix: (MB) Work item 3067 - Bug in Excel5 writer (storePanes) +- Bugfix: (MB) Work item 3077 - Memory leak in PHPExcel_Style_Color + + +2007/07/23 (v 1.4.0): +- General: (MB) Work item 2687 - Coding convention / code cleanup +- General: (MB) Work item 2717 - Use set_include_path in tests +- General: (MB) Work item 2812 - Move PHPExcel_Writer_Excel5 OLE to PHPExcel_Shared_OLE +- Feature: (MB) Work item 2679 - Hide/Unhide Column or Row +- Feature: (MB) Work item 2271 - Implement multi-cell styling +- Feature: (MB) Work item 2720 - Implement CSV file format (reader/writer) +- Feature: (MB) Work item 2845 - Implement HTML file format +- Bugfix: (MB) Work item 2513 - Active sheet index not read/saved +- Bugfix: (MB) Work item 2678 - Freeze Panes with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 2680 - OLE.php +- Bugfix: (MB) Work item 2736 - Copy and pasting multiple drop-down list cells breaks reader +- Bugfix: (MB) Work item 2775 - Function setAutoFilterByColumnAndRow takes wrong arguments +- Bugfix: (MB) Work item 2858 - Simplexml_load_file fails on ZipArchive + + +2007/06/27 (v 1.3.5): +- General: (MB) Work item 15 - Documentation +- Feature: (JV) PHPExcel_Writer_Excel5 +- Feature: (JV) PHPExcel_Reader_Excel2007: Image shadows +- Feature: (MB) Work item 2385 - Data validation +- Feature: (MB) Work item 187 - Implement richtext strings +- Bugfix: (MB) Work item 2443 - Empty relations when adding image to any sheet but the first one +- Bugfix: (MB) Work item 2536 - Excel2007 crashes on print preview + + +2007/06/05 (v 1.3.0): +- General: (MB) Work item 1942 - Create PEAR package +- General: (MB) Work item 2331 - Replace *->duplicate() by __clone() +- Feature: (JV) PHPExcel_Reader_Excel2007: Column auto-size, Protection, Merged cells, Wrap text, Page breaks, Auto filter, Images +- Feature: (MB) Work item 245 - Implement "freezing" panes +- Feature: (MB) Work item 2273 - Cell addressing alternative +- Feature: (MB) Work item 2270 - Implement cell word-wrap attribute +- Feature: (MB) Work item 2282 - Auto-size column +- Feature: (MB) Work item 241 - Implement formula calculation +- Feature: (MB) Work item 2375 - Insert/remove row/column +- Bugfix: (MB) Work item 1931 - PHPExcel_Worksheet::getCell() should not accept absolute coordinates +- Bugfix: (MB) Work item 2272 - Cell reference without row number +- Bugfix: (MB) Work item 2276 - Styles with same coordinate but different worksheet +- Bugfix: (MB) Work item 2290 - PHPExcel_Worksheet->getCellCollection() usort error +- Bugfix: (SS) Work item 2353 - Bug in PHPExcel_Cell::stringFromColumnIndex +- Bugfix: (JV) Work item 2353 - Reader: numFmts can be missing, use cellStyleXfs instead of cellXfs in styles + + +2007/04/26 (v 1.2.0): +- General: (MB) Stringtable attribute "count" not necessary, provides wrong info to Excel sometimes... +- General: (MB) Updated tests to address more document properties +- General: (MB) Some refactoring in PHPExcel_Writer_Excel2007_Workbook +- General: (MB) New package: PHPExcel_Shared +- General: (MB) Password hashing algorithm implemented in PHPExcel_Shared_PasswordHasher +- General: (MB) Moved pixel conversion functions to PHPExcel_Shared_Drawing +- General: (MB) Work item 244 - Switch over to LGPL license +- General: (MB) Work item 5 - Include PHPExcel version in file headers +- Feature: (MB) Work item 6 - Autofilter +- Feature: (MB) Work item 7 - Extra document property: keywords +- Feature: (MB) Work item 8 - Extra document property: category +- Feature: (MB) Work item 9 - Document security +- Feature: (MB) Work item 10 - PHPExcel_Writer_Serialized and PHPExcel_Reader_Serialized +- Feature: (MB) Work item 11 - Alternative syntax: Addressing a cell +- Feature: (MB) Work item 12 - Merge cells +- Feature: (MB) Work item 13 - Protect ranges of cells with a password +- Bugfix: (JV) Work item 14 - (style/fill/patternFill/fgColor or bgColor can be empty) + + +2007/03/26 (v 1.1.1): +- Bugfix: (MB) Work item 1250 - Syntax error in "Classes/PHPExcel/Writer/Excel2007.php" on line 243 +- General: (MB) Work item 1282 - Reader should check if file exists and throws an exception when it doesn't + + +2007/03/22 (v 1.1.0): +- Changed filenames of tests +- Bugfix: (MB) Work item 836 - Style information lost after passing trough Excel2007_Reader +- Bugfix: (MB) Work item 913 - Number of columns > AZ fails fixed in PHPExcel_Cell::columnIndexFromString +- General: (MB) Added a brief file with installation instructions +- Feature: (MB) Page breaks (horizontal and vertical) +- Feature: (MB) Image shadows + + + +2007/02/22 (v 1.0.0): +- Changelog now includes developer initials +- Bugfix: (JV) PHPExcel->removeSheetByIndex now re-orders sheets after deletion, so no array indexes are lost +- Bugfix: (JV) PHPExcel_Writer_Excel2007_Worksheet::_writeCols() used direct assignment to $pSheet->getColumnDimension('A')->Width instead of $pSheet->getColumnDimension('A')->setWidth() +- Bugfix: (JV) DocumentProperties used $this->LastModifiedBy instead of $this->_lastModifiedBy. +- Bugfix: (JV) Only first = should be removed when writing formula in PHPExcel_Writer_Excel2007_Worksheet. +- General: (JV) Consistency of method names to camelCase +- General: (JV) Updated tests to match consistency changes +- General: (JV) Detection of mime-types now with image_type_to_mime_type() +- General: (JV) Constants now hold string value used in Excel 2007 +- General: (MB) Fixed folder name case (WorkSheet -> Worksheet) +- Feature: (MB) PHPExcel classes (not the Writer classes) can be duplicated, using a duplicate() method. +- Feature: (MB) Cell styles can now be duplicated to a range of cells using PHPExcel_Worksheet->duplicateStyle() +- Feature: (MB) Conditional formatting +- Feature: (JV) Reader for Excel 2007 (not supporting full specification yet!) + + + +2007/01/31 (v 1.0.0 RC): +- Project name has been changed to PHPExcel +- Project homepage is now http://www.codeplex.com/PHPExcel +- Started versioning at number: PHPExcel 1.0.0 RC + + + +2007/01/22: +- Fixed some performance issues on large-scale worksheets (mainly loops vs. indexed arrays) +- Performance on creating StringTable has been increased +- Performance on writing Excel2007 worksheet has been increased + + + +2007/01/18: +- Images can now be rotated +- Fixed bug: When drawings have full path specified, no mime type can be deducted +- Fixed bug: Only one drawing can be added to a worksheet + + + +2007/01/12: +- Refactoring of some classes to use ArrayObject instead of array() +- Cell style now has support for number format (i.e. #,##0) +- Implemented embedding images + + + +2007/01/02: +- Cell style now has support for fills, including gradient fills +- Cell style now has support for fonts +- Cell style now has support for border colors +- Cell style now has support for font colors +- Cell style now has support for alignment + + + +2006/12/21: +- Support for cell style borders +- Support for cell styles +- Refactoring of Excel2007 Writer into multiple classes in package SpreadSheet_Writer_Excel2007 +- Refactoring of all classes, changed public members to public properties using getter/setter +- Worksheet names are now unique. On duplicate worksheet names, a number is appended. +- Worksheet now has parent SpreadSheet object +- Worksheet now has support for page header and footer +- Worksheet now has support for page margins +- Worksheet now has support for page setup (only Paper size and Orientation) +- Worksheet properties now accessible by using getProperties() +- Worksheet now has support for row and column dimensions (height / width) +- Exceptions thrown have a more clear description + + + +Initial version: +- Create a Spreadsheet object +- Add one or more Worksheet objects +- Add cells to Worksheet objects +- Export Spreadsheet object to Excel 2007 OpenXML format +- Each cell supports the following data formats: string, number, formula, boolean. \ No newline at end of file diff --git a/site/config/PHPExcel-1.8/composer.json b/site/config/PHPExcel-1.8/composer.json new file mode 100644 index 0000000..8aa4480 --- /dev/null +++ b/site/config/PHPExcel-1.8/composer.json @@ -0,0 +1,43 @@ +{ + "name": "phpoffice/phpexcel", + "description": "PHPExcel - OpenXML - Read, Create and Write Spreadsheet documents in PHP - Spreadsheet engine", + "keywords": ["PHP","Excel","OpenXML","xlsx","xls","spreadsheet"], + "homepage": "https://github.com/PHPOffice/PHPExcel", + "type": "library", + "license": "LGPL-2.1", + "authors": [ + { + "name": "Maarten Balliauw", + "homepage": "http://blog.maartenballiauw.be" + }, + { + "name": "Mark Baker", + "homepage": "http://markbakeruk.net" + }, + { + "name": "Franck Lefevre", + "homepage": "http://rootslabs.net" + }, + { + "name": "Erik Tilt" + } + ], + "require": { + "php": "^5.2|^7.0", + "ext-mbstring": "*", + "ext-xml": "*", + "ext-xmlwriter": "*" + }, + "require-dev": { + "squizlabs/php_codesniffer": "2.*" + }, + "recommend": { + "ext-zip": "*", + "ext-gd": "*" + }, + "autoload": { + "psr-0": { + "PHPExcel": "Classes/" + } + } +} diff --git a/site/config/PHPExcel-1.8/install.txt b/site/config/PHPExcel-1.8/install.txt new file mode 100644 index 0000000..1a999d2 --- /dev/null +++ b/site/config/PHPExcel-1.8/install.txt @@ -0,0 +1,75 @@ +************************************************************************************** +* PHPExcel +* +* Copyright (c) 2006 - 2011 PHPExcel +* +* 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 library 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 GNU Lesser General Public +* License along with this library; if not, write to the Free Software +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +* +* @copyright Copyright (c) 2006 - 2013 PHPExcel (http://www.codeplex.com/PHPExcel) +* @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +* @version ##VERSION##, ##DATE## +************************************************************************************** + +Requirements +------------ + +The following requirements should be met prior to using PHPExcel: +* PHP version 5.2.0 or higher +* PHP extension php_zip enabled *) +* PHP extension php_xml enabled +* PHP extension php_gd2 enabled (if not compiled in) + +*) php_zip is only needed by PHPExcel_Reader_Excel2007, PHPExcel_Writer_Excel2007, + PHPExcel_Reader_OOCalc. In other words, if you need PHPExcel to handle .xlsx or .ods + files you will need the zip extension, but otherwise not. + + + +Installation instructions +------------------------- + +Installation is quite easy: copy the contents of the Classes folder to any location +in your application required. + +Example: + +If your web root folder is /var/www/ you may want to create a subfolder called +/var/www/Classes/ and copy the files into that folder so you end up with files: + +/var/www/Classes/PHPExcel.php +/var/www/Classes/PHPExcel/Calculation.php +/var/www/Classes/PHPExcel/Cell.php +... + + + +Getting started +--------------- + +A good way to get started is to run some of the tests included in the download. +Copy the "Examples" folder next to your "Classes" folder from above so you end up with: + +/var/www/Examples/01simple.php +/var/www/Examples/02types.php +... + +Start running the test by pointing your browser to the test scripts: + +http://example.com/Examples/01simple.php +http://example.com/Examples/02types.php +... + +Note: It may be necessary to modify the include/require statements at the beginning of +each of the test scripts if your "Classes" folder from above is named differently. diff --git a/site/config/PHPExcel-1.8/license.md b/site/config/PHPExcel-1.8/license.md new file mode 100644 index 0000000..57b74d4 --- /dev/null +++ b/site/config/PHPExcel-1.8/license.md @@ -0,0 +1,345 @@ +GNU LESSER GENERAL PUBLIC LICENSE + + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 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". + + 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. + + 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".) + + "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. + + 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 +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. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + 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. + + 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. + + (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.) + +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. + +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. + +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. + + 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. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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.) + + 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. + + 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: + + 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.) + + 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. + + 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. + + 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. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + 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. + + 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: + + 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. + + 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. + + 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. + + 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. + + 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 +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 +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. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 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. + + 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 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. + +NO WARRANTY + + 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. + + 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. + +END OF TERMS AND CONDITIONS \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel.php b/site/config/PHPExcel/Classes/PHPExcel.php new file mode 100644 index 0000000..f0b39e7 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel.php @@ -0,0 +1,823 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** + * PHPExcel + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel +{ + /** + * Document properties + * + * @var PHPExcel_DocumentProperties + */ + private $_properties; + + /** + * Document security + * + * @var PHPExcel_DocumentSecurity + */ + private $_security; + + /** + * Collection of Worksheet objects + * + * @var PHPExcel_Worksheet[] + */ + private $_workSheetCollection = array(); + + /** + * Active sheet index + * + * @var int + */ + private $_activeSheetIndex = 0; + + /** + * Named ranges + * + * @var PHPExcel_NamedRange[] + */ + private $_namedRanges = array(); + + /** + * CellXf supervisor + * + * @var PHPExcel_Style + */ + private $_cellXfSupervisor; + + /** + * CellXf collection + * + * @var PHPExcel_Style[] + */ + private $_cellXfCollection = array(); + + /** + * CellStyleXf collection + * + * @var PHPExcel_Style[] + */ + private $_cellStyleXfCollection = array(); + + /** + * Create a new PHPExcel with one Worksheet + */ + public function __construct() + { + // Initialise worksheet collection and add one worksheet + $this->_workSheetCollection = array(); + $this->_workSheetCollection[] = new PHPExcel_Worksheet($this); + $this->_activeSheetIndex = 0; + + // Create document properties + $this->_properties = new PHPExcel_DocumentProperties(); + + // Create document security + $this->_security = new PHPExcel_DocumentSecurity(); + + // Set named ranges + $this->_namedRanges = array(); + + // Create the cellXf supervisor + $this->_cellXfSupervisor = new PHPExcel_Style(true); + $this->_cellXfSupervisor->bindParent($this); + + // Create the default style + $this->addCellXf(new PHPExcel_Style); + $this->addCellStyleXf(new PHPExcel_Style); + } + + + /** + * Disconnect all worksheets from this PHPExcel workbook object, + * typically so that the PHPExcel object can be unset + * + */ + public function disconnectWorksheets() { + foreach($this->_workSheetCollection as $k => &$worksheet) { + $worksheet->disconnectCells(); + $this->_workSheetCollection[$k] = null; + } + unset($worksheet); + $this->_workSheetCollection = array(); + } + + /** + * Get properties + * + * @return PHPExcel_DocumentProperties + */ + public function getProperties() + { + return $this->_properties; + } + + /** + * Set properties + * + * @param PHPExcel_DocumentProperties $pValue + */ + public function setProperties(PHPExcel_DocumentProperties $pValue) + { + $this->_properties = $pValue; + } + + /** + * Get security + * + * @return PHPExcel_DocumentSecurity + */ + public function getSecurity() + { + return $this->_security; + } + + /** + * Set security + * + * @param PHPExcel_DocumentSecurity $pValue + */ + public function setSecurity(PHPExcel_DocumentSecurity $pValue) + { + $this->_security = $pValue; + } + + /** + * Get active sheet + * + * @return PHPExcel_Worksheet + */ + public function getActiveSheet() + { + return $this->_workSheetCollection[$this->_activeSheetIndex]; + } + + /** + * Create sheet and add it to this workbook + * + * @param int|null $iSheetIndex Index where sheet should go (0,1,..., or null for last) + * @return PHPExcel_Worksheet + * @throws Exception + */ + public function createSheet($iSheetIndex = NULL) + { + $newSheet = new PHPExcel_Worksheet($this); + $this->addSheet($newSheet, $iSheetIndex); + return $newSheet; + } + + /** + * Chech if a sheet with a specified name already exists + * + * @param string $pSheetName Name of the worksheet to check + * @return boolean + */ + public function sheetNameExists($pSheetName) + { + return ($this->getSheetByName($pSheetName) !== NULL); + } + + /** + * Add sheet + * + * @param PHPExcel_Worksheet $pSheet + * @param int|null $iSheetIndex Index where sheet should go (0,1,..., or null for last) + * @return PHPExcel_Worksheet + * @throws Exception + */ + public function addSheet(PHPExcel_Worksheet $pSheet, $iSheetIndex = NULL) + { + if ($this->sheetNameExists($pSheet->getTitle())) { + throw new Exception("Workbook already contains a worksheet named '{$pSheet->getTitle()}'. Rename this worksheet first."); + } + + if($iSheetIndex === NULL) { + if ($this->_activeSheetIndex < 0) { + $this->_activeSheetIndex = 0; + } + $this->_workSheetCollection[] = $pSheet; + } else { + // Insert the sheet at the requested index + array_splice( + $this->_workSheetCollection, + $iSheetIndex, + 0, + array($pSheet) + ); + + // Adjust active sheet index if necessary + if ($this->_activeSheetIndex >= $iSheetIndex) { + ++$this->_activeSheetIndex; + } + } + return $pSheet; + } + + /** + * Remove sheet by index + * + * @param int $pIndex Active sheet index + * @throws Exception + */ + public function removeSheetByIndex($pIndex = 0) + { + if ($pIndex > count($this->_workSheetCollection) - 1) { + throw new Exception("Sheet index is out of bounds."); + } else { + array_splice($this->_workSheetCollection, $pIndex, 1); + } + // Adjust active sheet index if necessary + if (($this->_activeSheetIndex >= $pIndex) && + ($pIndex > count($this->_workSheetCollection) - 1)) { + --$this->_activeSheetIndex; + } + + } + + /** + * Get sheet by index + * + * @param int $pIndex Sheet index + * @return PHPExcel_Worksheet + * @throws Exception + */ + public function getSheet($pIndex = 0) + { + if ($pIndex > count($this->_workSheetCollection) - 1) { + throw new Exception("Sheet index is out of bounds."); + } else { + return $this->_workSheetCollection[$pIndex]; + } + } + + /** + * Get all sheets + * + * @return PHPExcel_Worksheet[] + */ + public function getAllSheets() + { + return $this->_workSheetCollection; + } + + /** + * Get sheet by name + * + * @param string $pName Sheet name + * @return PHPExcel_Worksheet + * @throws Exception + */ + public function getSheetByName($pName = '') + { + $worksheetCount = count($this->_workSheetCollection); + for ($i = 0; $i < $worksheetCount; ++$i) { + if ($this->_workSheetCollection[$i]->getTitle() == $pName) { + return $this->_workSheetCollection[$i]; + } + } + + return null; + } + + /** + * Get index for sheet + * + * @param PHPExcel_Worksheet $pSheet + * @return Sheet index + * @throws Exception + */ + public function getIndex(PHPExcel_Worksheet $pSheet) + { + foreach ($this->_workSheetCollection as $key => $value) { + if ($value->getHashCode() == $pSheet->getHashCode()) { + return $key; + } + } + } + + /** + * Set index for sheet by sheet name. + * + * @param string $sheetName Sheet name to modify index for + * @param int $newIndex New index for the sheet + * @return New sheet index + * @throws Exception + */ + public function setIndexByName($sheetName, $newIndex) + { + $oldIndex = $this->getIndex($this->getSheetByName($sheetName)); + $pSheet = array_splice( + $this->_workSheetCollection, + $oldIndex, + 1 + ); + array_splice( + $this->_workSheetCollection, + $newIndex, + 0, + $pSheet + ); + return $newIndex; + } + + /** + * Get sheet count + * + * @return int + */ + public function getSheetCount() + { + return count($this->_workSheetCollection); + } + + /** + * Get active sheet index + * + * @return int Active sheet index + */ + public function getActiveSheetIndex() + { + return $this->_activeSheetIndex; + } + + /** + * Set active sheet index + * + * @param int $pIndex Active sheet index + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function setActiveSheetIndex($pIndex = 0) + { + if ($pIndex > count($this->_workSheetCollection) - 1) { + throw new Exception("Active sheet index is out of bounds."); + } else { + $this->_activeSheetIndex = $pIndex; + } + return $this->getActiveSheet(); + } + + /** + * Set active sheet index by name + * + * @param string $pValue Sheet title + * @return PHPExcel_Worksheet + * @throws Exception + */ + public function setActiveSheetIndexByName($pValue = '') + { + if (($worksheet = $this->getSheetByName($pValue)) instanceof PHPExcel_Worksheet) { + $this->setActiveSheetIndex($this->getIndex($worksheet)); + return $worksheet; + } + + throw new Exception('Workbook does not contain sheet:' . $pValue); + } + + /** + * Get sheet names + * + * @return string[] + */ + public function getSheetNames() + { + $returnValue = array(); + $worksheetCount = $this->getSheetCount(); + for ($i = 0; $i < $worksheetCount; ++$i) { + $returnValue[] = $this->getSheet($i)->getTitle(); + } + + return $returnValue; + } + + /** + * Add external sheet + * + * @param PHPExcel_Worksheet $pSheet External sheet to add + * @param int|null $iSheetIndex Index where sheet should go (0,1,..., or null for last) + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function addExternalSheet(PHPExcel_Worksheet $pSheet, $iSheetIndex = null) { + if ($this->sheetNameExists($pSheet->getTitle())) { + throw new Exception("Workbook already contains a worksheet named '{$pSheet->getTitle()}'. Rename the external sheet first."); + } + + // count how many cellXfs there are in this workbook currently, we will need this below + $countCellXfs = count($this->_cellXfCollection); + + // copy all the shared cellXfs from the external workbook and append them to the current + foreach ($pSheet->getParent()->getCellXfCollection() as $cellXf) { + $this->addCellXf(clone $cellXf); + } + + // move sheet to this workbook + $pSheet->rebindParent($this); + + // update the cellXfs + foreach ($pSheet->getCellCollection(false) as $cellID) { + $cell = $pSheet->getCell($cellID); + $cell->setXfIndex( $cell->getXfIndex() + $countCellXfs ); + } + + return $this->addSheet($pSheet, $iSheetIndex); + } + + /** + * Get named ranges + * + * @return PHPExcel_NamedRange[] + */ + public function getNamedRanges() { + return $this->_namedRanges; + } + + /** + * Add named range + * + * @param PHPExcel_NamedRange $namedRange + * @return PHPExcel + */ + public function addNamedRange(PHPExcel_NamedRange $namedRange) { + if ($namedRange->getScope() == null) { + // global scope + $this->_namedRanges[$namedRange->getName()] = $namedRange; + } else { + // local scope + $this->_namedRanges[$namedRange->getScope()->getTitle().'!'.$namedRange->getName()] = $namedRange; + } + return true; + } + + /** + * Get named range + * + * @param string $namedRange + * @param PHPExcel_Worksheet|null $pSheet Scope. Use null for global scope + * @return PHPExcel_NamedRange|null + */ + public function getNamedRange($namedRange, PHPExcel_Worksheet $pSheet = null) { + $returnValue = null; + + if ($namedRange != '' && ($namedRange !== NULL)) { + // first look for global defined name + if (isset($this->_namedRanges[$namedRange])) { + $returnValue = $this->_namedRanges[$namedRange]; + } + + // then look for local defined name (has priority over global defined name if both names exist) + if (($pSheet !== NULL) && isset($this->_namedRanges[$pSheet->getTitle() . '!' . $namedRange])) { + $returnValue = $this->_namedRanges[$pSheet->getTitle() . '!' . $namedRange]; + } + } + + return $returnValue; + } + + /** + * Remove named range + * + * @param string $namedRange + * @param PHPExcel_Worksheet|null $pSheet Scope: use null for global scope. + * @return PHPExcel + */ + public function removeNamedRange($namedRange, PHPExcel_Worksheet $pSheet = null) { + if ($pSheet === NULL) { + if (isset($this->_namedRanges[$namedRange])) { + unset($this->_namedRanges[$namedRange]); + } + } else { + if (isset($this->_namedRanges[$pSheet->getTitle() . '!' . $namedRange])) { + unset($this->_namedRanges[$pSheet->getTitle() . '!' . $namedRange]); + } + } + return $this; + } + + /** + * Get worksheet iterator + * + * @return PHPExcel_WorksheetIterator + */ + public function getWorksheetIterator() { + return new PHPExcel_WorksheetIterator($this); + } + + /** + * Copy workbook (!= clone!) + * + * @return PHPExcel + */ + public function copy() { + $copied = clone $this; + + $worksheetCount = count($this->_workSheetCollection); + for ($i = 0; $i < $worksheetCount; ++$i) { + $this->_workSheetCollection[$i] = $this->_workSheetCollection[$i]->copy(); + $this->_workSheetCollection[$i]->rebindParent($this); + } + + return $copied; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + foreach($this as $key => $val) { + if (is_object($val) || (is_array($val))) { + $this->{$key} = unserialize(serialize($val)); + } + } + } + + /** + * Get the workbook collection of cellXfs + * + * @return PHPExcel_Style[] + */ + public function getCellXfCollection() + { + return $this->_cellXfCollection; + } + + /** + * Get cellXf by index + * + * @param int $pIndex + * @return PHPExcel_Style + */ + public function getCellXfByIndex($pIndex = 0) + { + return $this->_cellXfCollection[$pIndex]; + } + + /** + * Get cellXf by hash code + * + * @param string $pValue + * @return PHPExcel_Style|false + */ + public function getCellXfByHashCode($pValue = '') + { + foreach ($this->_cellXfCollection as $cellXf) { + if ($cellXf->getHashCode() == $pValue) { + return $cellXf; + } + } + return false; + } + + /** + * Get default style + * + * @return PHPExcel_Style + * @throws Exception + */ + public function getDefaultStyle() + { + if (isset($this->_cellXfCollection[0])) { + return $this->_cellXfCollection[0]; + } + throw new Exception('No default style found for this workbook'); + } + + /** + * Add a cellXf to the workbook + * + * @param PHPExcel_Style $style + */ + public function addCellXf(PHPExcel_Style $style) + { + $this->_cellXfCollection[] = $style; + $style->setIndex(count($this->_cellXfCollection) - 1); + } + + /** + * Remove cellXf by index. It is ensured that all cells get their xf index updated. + * + * @param int $pIndex Index to cellXf + * @throws Exception + */ + public function removeCellXfByIndex($pIndex = 0) + { + if ($pIndex > count($this->_cellXfCollection) - 1) { + throw new Exception("CellXf index is out of bounds."); + } else { + // first remove the cellXf + array_splice($this->_cellXfCollection, $pIndex, 1); + + // then update cellXf indexes for cells + foreach ($this->_workSheetCollection as $worksheet) { + foreach ($worksheet->getCellCollection(false) as $cellID) { + $cell = $worksheet->getCell($cellID); + $xfIndex = $cell->getXfIndex(); + if ($xfIndex > $pIndex ) { + // decrease xf index by 1 + $cell->setXfIndex($xfIndex - 1); + } else if ($xfIndex == $pIndex) { + // set to default xf index 0 + $cell->setXfIndex(0); + } + } + } + } + } + + /** + * Get the cellXf supervisor + * + * @return PHPExcel_Style + */ + public function getCellXfSupervisor() + { + return $this->_cellXfSupervisor; + } + + /** + * Get the workbook collection of cellStyleXfs + * + * @return PHPExcel_Style[] + */ + public function getCellStyleXfCollection() + { + return $this->_cellStyleXfCollection; + } + + /** + * Get cellStyleXf by index + * + * @param int $pIndex + * @return PHPExcel_Style + */ + public function getCellStyleXfByIndex($pIndex = 0) + { + return $this->_cellStyleXfCollection[$pIndex]; + } + + /** + * Get cellStyleXf by hash code + * + * @param string $pValue + * @return PHPExcel_Style|false + */ + public function getCellStyleXfByHashCode($pValue = '') + { + foreach ($this->_cellXfStyleCollection as $cellStyleXf) { + if ($cellStyleXf->getHashCode() == $pValue) { + return $cellStyleXf; + } + } + return false; + } + + /** + * Add a cellStyleXf to the workbook + * + * @param PHPExcel_Style $pStyle + */ + public function addCellStyleXf(PHPExcel_Style $pStyle) + { + $this->_cellStyleXfCollection[] = $pStyle; + $pStyle->setIndex(count($this->_cellStyleXfCollection) - 1); + } + + /** + * Remove cellStyleXf by index + * + * @param int $pIndex + * @throws Exception + */ + public function removeCellStyleXfByIndex($pIndex = 0) + { + if ($pIndex > count($this->_cellStyleXfCollection) - 1) { + throw new Exception("CellStyleXf index is out of bounds."); + } else { + array_splice($this->_cellStyleXfCollection, $pIndex, 1); + } + } + + /** + * Eliminate all unneeded cellXf and afterwards update the xfIndex for all cells + * and columns in the workbook + */ + public function garbageCollect() + { + // how many references are there to each cellXf ? + $countReferencesCellXf = array(); + foreach ($this->_cellXfCollection as $index => $cellXf) { + $countReferencesCellXf[$index] = 0; + } + + foreach ($this->getWorksheetIterator() as $sheet) { + + // from cells + foreach ($sheet->getCellCollection(false) as $cellID) { + $cell = $sheet->getCell($cellID); + ++$countReferencesCellXf[$cell->getXfIndex()]; + } + + // from row dimensions + foreach ($sheet->getRowDimensions() as $rowDimension) { + if ($rowDimension->getXfIndex() !== null) { + ++$countReferencesCellXf[$rowDimension->getXfIndex()]; + } + } + + // from column dimensions + foreach ($sheet->getColumnDimensions() as $columnDimension) { + ++$countReferencesCellXf[$columnDimension->getXfIndex()]; + } + } + + // remove cellXfs without references and create mapping so we can update xfIndex + // for all cells and columns + $countNeededCellXfs = 0; + foreach ($this->_cellXfCollection as $index => $cellXf) { + if ($countReferencesCellXf[$index] > 0 || $index == 0) { // we must never remove the first cellXf + ++$countNeededCellXfs; + } else { + unset($this->_cellXfCollection[$index]); + } + $map[$index] = $countNeededCellXfs - 1; + } + $this->_cellXfCollection = array_values($this->_cellXfCollection); + + // update the index for all cellXfs + foreach ($this->_cellXfCollection as $i => $cellXf) { + $cellXf->setIndex($i); + } + + // make sure there is always at least one cellXf (there should be) + if (empty($this->_cellXfCollection)) { + $this->_cellXfCollection[] = new PHPExcel_Style(); + } + + // update the xfIndex for all cells, row dimensions, column dimensions + foreach ($this->getWorksheetIterator() as $sheet) { + + // for all cells + foreach ($sheet->getCellCollection(false) as $cellID) { + $cell = $sheet->getCell($cellID); + $cell->setXfIndex( $map[$cell->getXfIndex()] ); + } + + // for all row dimensions + foreach ($sheet->getRowDimensions() as $rowDimension) { + if ($rowDimension->getXfIndex() !== null) { + $rowDimension->setXfIndex( $map[$rowDimension->getXfIndex()] ); + } + } + + // for all column dimensions + foreach ($sheet->getColumnDimensions() as $columnDimension) { + $columnDimension->setXfIndex( $map[$columnDimension->getXfIndex()] ); + } + } + + // also do garbage collection for all the sheets + foreach ($this->getWorksheetIterator() as $sheet) { + $sheet->garbageCollect(); + } + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Autoloader.php b/site/config/PHPExcel/Classes/PHPExcel/Autoloader.php new file mode 100644 index 0000000..1519327 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Autoloader.php @@ -0,0 +1,85 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +PHPExcel_Autoloader::Register(); +// As we always try to run the autoloader before anything else, we can use it to do a few +// simple checks and initialisations +PHPExcel_Shared_ZipStreamWrapper::register(); +// check mbstring.func_overload +if (ini_get('mbstring.func_overload') & 2) { + throw new Exception('Multibyte function overloading in PHP must be disabled for string functions (2).'); +} +PHPExcel_Shared_String::buildCharacterSets(); + + +/** + * PHPExcel_Autoloader + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Autoloader +{ + /** + * Register the Autoloader with SPL + * + */ + public static function Register() { + if (function_exists('__autoload')) { + // Register any existing autoloader function with SPL, so we don't get any clashes + spl_autoload_register('__autoload'); + } + // Register ourselves with SPL + return spl_autoload_register(array('PHPExcel_Autoloader', 'Load')); + } // function Register() + + + /** + * Autoload a class identified by name + * + * @param string $pClassName Name of the object to load + */ + public static function Load($pClassName){ + if ((class_exists($pClassName,FALSE)) || (strpos($pClassName, 'PHPExcel') !== 0)) { + // Either already loaded, or not a PHPExcel class request + return FALSE; + } + + $pClassFilePath = PHPEXCEL_ROOT . + str_replace('_',DIRECTORY_SEPARATOR,$pClassName) . + '.php'; + + if ((file_exists($pClassFilePath) === false) || (is_readable($pClassFilePath) === false)) { + // Can't load + return FALSE; + } + + require($pClassFilePath); + } // function Load() + +} \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/APC.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/APC.php new file mode 100644 index 0000000..9dab558 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/APC.php @@ -0,0 +1,280 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_APC + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorage_APC extends PHPExcel_CachedObjectStorage_CacheBase implements PHPExcel_CachedObjectStorage_ICache { + + /** + * Prefix used to uniquely identify cache data for this worksheet + * + * @access private + * @var string + */ + private $_cachePrefix = null; + + /** + * Cache timeout + * + * @access private + * @var integer + */ + private $_cacheTime = 600; + + + /** + * Store cell data in cache for the current cell object if it's "dirty", + * and the 'nullify' the current cell object + * + * @access private + * @return void + * @throws Exception + */ + private function _storeData() { + if ($this->_currentCellIsDirty) { + $this->_currentObject->detach(); + + if (!apc_store($this->_cachePrefix.$this->_currentObjectID.'.cache',serialize($this->_currentObject),$this->_cacheTime)) { + $this->__destruct(); + throw new Exception('Failed to store cell '.$this->_currentObjectID.' in APC'); + } + $this->_currentCellIsDirty = false; + } + $this->_currentObjectID = $this->_currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @access public + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) { + if (($pCoord !== $this->_currentObjectID) && ($this->_currentObjectID !== null)) { + $this->_storeData(); + } + $this->_cellCache[$pCoord] = true; + + $this->_currentObjectID = $pCoord; + $this->_currentObject = $cell; + $this->_currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + * + * @access public + * @param string $pCoord Coordinate address of the cell to check + * @return void + * @return boolean + */ + public function isDataSet($pCoord) { + // Check if the requested entry is the current object, or exists in the cache + if (parent::isDataSet($pCoord)) { + if ($this->_currentObjectID == $pCoord) { + return true; + } + // Check if the requested entry still exists in apc + $success = apc_fetch($this->_cachePrefix.$pCoord.'.cache'); + if ($success === false) { + // Entry no longer exists in APC, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new Exception('Cell entry '.$pCoord.' no longer exists in APC'); + } + return true; + } + return false; + } // function isDataSet() + + + /** + * Get cell at a specific coordinate + * + * @access public + * @param string $pCoord Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return $this->_currentObject; + } + $this->_storeData(); + + // Check if the entry that has been requested actually exists + if (parent::isDataSet($pCoord)) { + $obj = apc_fetch($this->_cachePrefix.$pCoord.'.cache'); + if ($obj === false) { + // Entry no longer exists in APC, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new Exception('Cell entry '.$pCoord.' no longer exists in APC'); + } + } else { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->_currentObjectID = $pCoord; + $this->_currentObject = unserialize($obj); + // Re-attach the parent worksheet + $this->_currentObject->attach($this->_parent); + + // Return requested entry + return $this->_currentObject; + } // function getCacheData() + + + /** + * Delete a cell in cache identified by coordinate address + * + * @access public + * @param string $pCoord Coordinate address of the cell to delete + * @throws Exception + */ + public function deleteCacheData($pCoord) { + // Delete the entry from APC + apc_delete($this->_cachePrefix.$pCoord.'.cache'); + + // Delete the entry from our cell address array + parent::deleteCacheData($pCoord); + } // function deleteCacheData() + + + /** + * Clone the cell collection + * + * @access public + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) { + parent::copyCellCollection($parent); + // Get a new id for the new file name + $baseUnique = $this->_getUniqueID(); + $newCachePrefix = substr(md5($baseUnique),0,8).'.'; + $cacheList = $this->getCellList(); + foreach($cacheList as $cellID) { + if ($cellID != $this->_currentObjectID) { + $obj = apc_fetch($this->_cachePrefix.$cellID.'.cache'); + if ($obj === false) { + // Entry no longer exists in APC, so clear it from the cache array + parent::deleteCacheData($cellID); + throw new Exception('Cell entry '.$cellID.' no longer exists in APC'); + } + if (!apc_store($newCachePrefix.$cellID.'.cache',$obj,$this->_cacheTime)) { + $this->__destruct(); + throw new Exception('Failed to store cell '.$cellID.' in APC'); + } + } + } + $this->_cachePrefix = $newCachePrefix; + } // function copyCellCollection() + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() { + if ($this->_currentObject !== NULL) { + $this->_currentObject->detach(); + $this->_currentObject = $this->_currentObjectID = null; + } + + // Flush the APC cache + $this->__destruct(); + + $this->_cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->_parent = null; + } // function unsetWorksheetCells() + + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + * @param array of mixed $arguments Additional initialisation arguments + */ + public function __construct(PHPExcel_Worksheet $parent, $arguments) { + $cacheTime = (isset($arguments['cacheTime'])) ? $arguments['cacheTime'] : 600; + + if ($this->_cachePrefix === NULL) { + $baseUnique = $this->_getUniqueID(); + $this->_cachePrefix = substr(md5($baseUnique),0,8).'.'; + $this->_cacheTime = $cacheTime; + + parent::__construct($parent); + } + } // function __construct() + + + /** + * Destroy this cell collection + */ + public function __destruct() { + $cacheList = $this->getCellList(); + foreach($cacheList as $cellID) { + apc_delete($this->_cachePrefix.$cellID.'.cache'); + } + } // function __destruct() + + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() { + if (!function_exists('apc_store')) { + return false; + } + if (apc_sma_info() === false) { + return false; + } + + return true; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/CacheBase.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/CacheBase.php new file mode 100644 index 0000000..d2eea08 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/CacheBase.php @@ -0,0 +1,252 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_CacheBase + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +abstract class PHPExcel_CachedObjectStorage_CacheBase { + + /** + * Parent worksheet + * + * @var PHPExcel_Worksheet + */ + protected $_parent; + + /** + * The currently active Cell + * + * @var PHPExcel_Cell + */ + protected $_currentObject = null; + + /** + * Coordinate address of the currently active Cell + * + * @var string + */ + protected $_currentObjectID = null; + + + /** + * Flag indicating whether the currently active Cell requires saving + * + * @var boolean + */ + protected $_currentCellIsDirty = true; + + /** + * An array of cells or cell pointers for the worksheet cells held in this cache, + * and indexed by their coordinate address within the worksheet + * + * @var array of mixed + */ + protected $_cellCache = array(); + + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + */ + public function __construct(PHPExcel_Worksheet $parent) { + // Set our parent worksheet. + // This is maintained within the cache controller to facilitate re-attaching it to PHPExcel_Cell objects when + // they are woken from a serialized state + $this->_parent = $parent; + } // function __construct() + + + /** + * Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + * + * @param string $pCoord Coordinate address of the cell to check + * @return boolean + */ + public function isDataSet($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return true; + } + // Check if the requested entry exists in the cache + return isset($this->_cellCache[$pCoord]); + } // function isDataSet() + + + /** + * Add or Update a cell in cache + * + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function updateCacheData(PHPExcel_Cell $cell) { + return $this->addCacheData($cell->getCoordinate(),$cell); + } // function updateCacheData() + + + /** + * Delete a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to delete + * @throws Exception + */ + public function deleteCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + $this->_currentObject->detach(); + $this->_currentObjectID = $this->_currentObject = null; + } + + if (is_object($this->_cellCache[$pCoord])) { + $this->_cellCache[$pCoord]->detach(); + unset($this->_cellCache[$pCoord]); + } + $this->_currentCellIsDirty = false; + } // function deleteCacheData() + + + /** + * Get a list of all cell addresses currently held in cache + * + * @return array of string + */ + public function getCellList() { + return array_keys($this->_cellCache); + } // function getCellList() + + + /** + * Sort the list of all cell addresses currently held in cache by row and column + * + * @return void + */ + public function getSortedCellList() { + $sortKeys = array(); + foreach ($this->getCellList() as $coord) { + list($column,$row) = sscanf($coord,'%[A-Z]%d'); + $sortKeys[sprintf('%09d%3s',$row,$column)] = $coord; + } + ksort($sortKeys); + + return array_values($sortKeys); + } // function sortCellList() + + + + /** + * Get highest worksheet column and highest row that have cell records + * + * @return array Highest column name and highest row number + */ + public function getHighestRowAndColumn() + { + // Lookup highest column and highest row + $col = array('A' => '1A'); + $row = array(1); + foreach ($this->getCellList() as $coord) { + list($c,$r) = sscanf($coord,'%[A-Z]%d'); + $row[$r] = $r; + $col[$c] = strlen($c).$c; + } + if (!empty($row)) { + // Determine highest column and row + $highestRow = max($row); + $highestColumn = substr(max($col),1); + } + + return array( 'row' => $highestRow, + 'column' => $highestColumn + ); + } + + + /** + * Get highest worksheet column + * + * @return string Highest column name + */ + public function getHighestColumn() + { + $colRow = $this->getHighestRowAndColumn(); + return $colRow['column']; + } + + /** + * Get highest worksheet row + * + * @return int Highest row number + */ + public function getHighestRow() + { + $colRow = $this->getHighestRowAndColumn(); + return $colRow['row']; + } + + + /** + * Generate a unique ID for cache referencing + * + * @return string Unique Reference + */ + protected function _getUniqueID() { + if (function_exists('posix_getpid')) { + $baseUnique = posix_getpid(); + } else { + $baseUnique = mt_rand(); + } + return uniqid($baseUnique,true); + } + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) { + $this->_parent = $parent; + if (($this->_currentObject !== NULL) && (is_object($this->_currentObject))) { + $this->_currentObject->attach($parent); + } + } // function copyCellCollection() + + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() { + return true; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/DiscISAM.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/DiscISAM.php new file mode 100644 index 0000000..805dc06 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/DiscISAM.php @@ -0,0 +1,205 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_DiscISAM + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorage_DiscISAM extends PHPExcel_CachedObjectStorage_CacheBase implements PHPExcel_CachedObjectStorage_ICache { + + /** + * Name of the file for this cache + * + * @var string + */ + private $_fileName = null; + + /** + * File handle for this cache file + * + * @var resource + */ + private $_fileHandle = null; + + /** + * Directory/Folder where the cache file is located + * + * @var string + */ + private $_cacheDirectory = NULL; + + + /** + * Store cell data in cache for the current cell object if it's "dirty", + * and the 'nullify' the current cell object + * + * @return void + * @throws Exception + */ + private function _storeData() { + if ($this->_currentCellIsDirty) { + $this->_currentObject->detach(); + + fseek($this->_fileHandle,0,SEEK_END); + $offset = ftell($this->_fileHandle); + fwrite($this->_fileHandle, serialize($this->_currentObject)); + $this->_cellCache[$this->_currentObjectID] = array('ptr' => $offset, + 'sz' => ftell($this->_fileHandle) - $offset + ); + $this->_currentCellIsDirty = false; + } + $this->_currentObjectID = $this->_currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) { + if (($pCoord !== $this->_currentObjectID) && ($this->_currentObjectID !== null)) { + $this->_storeData(); + } + + $this->_currentObjectID = $pCoord; + $this->_currentObject = $cell; + $this->_currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return $this->_currentObject; + } + $this->_storeData(); + + // Check if the entry that has been requested actually exists + if (!isset($this->_cellCache[$pCoord])) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->_currentObjectID = $pCoord; + fseek($this->_fileHandle,$this->_cellCache[$pCoord]['ptr']); + $this->_currentObject = unserialize(fread($this->_fileHandle,$this->_cellCache[$pCoord]['sz'])); + // Re-attach the parent worksheet + $this->_currentObject->attach($this->_parent); + + // Return requested entry + return $this->_currentObject; + } // function getCacheData() + + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) { + parent::copyCellCollection($parent); + // Get a new id for the new file name + $baseUnique = $this->_getUniqueID(); + $newFileName = $this->_cacheDirectory.'/PHPExcel.'.$baseUnique.'.cache'; + // Copy the existing cell cache file + copy ($this->_fileName,$newFileName); + $this->_fileName = $newFileName; + // Open the copied cell cache file + $this->_fileHandle = fopen($this->_fileName,'a+'); + } // function copyCellCollection() + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() { + if(!is_null($this->_currentObject)) { + $this->_currentObject->detach(); + $this->_currentObject = $this->_currentObjectID = null; + } + $this->_cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->_parent = null; + + // Close down the temporary cache file + $this->__destruct(); + } // function unsetWorksheetCells() + + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + * @param array of mixed $arguments Additional initialisation arguments + */ + public function __construct(PHPExcel_Worksheet $parent, $arguments) { + $this->_cacheDirectory = ((isset($arguments['dir'])) && ($arguments['dir'] !== NULL)) + ? $arguments['dir'] + : PHPExcel_Shared_File::sys_get_temp_dir(); + + parent::__construct($parent); + if (is_null($this->_fileHandle)) { + $baseUnique = $this->_getUniqueID(); + $this->_fileName = $this->_cacheDirectory.'/PHPExcel.'.$baseUnique.'.cache'; + $this->_fileHandle = fopen($this->_fileName,'a+'); + } + } // function __construct() + + + /** + * Destroy this cell collection + */ + public function __destruct() { + if (!is_null($this->_fileHandle)) { + fclose($this->_fileHandle); + unlink($this->_fileName); + } + $this->_fileHandle = null; + } // function __destruct() + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/ICache.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/ICache.php new file mode 100644 index 0000000..56f621a --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/ICache.php @@ -0,0 +1,112 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_ICache + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +interface PHPExcel_CachedObjectStorage_ICache +{ + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell); + + /** + * Add or Update a cell in cache + * + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function updateCacheData(PHPExcel_Cell $cell); + + /** + * Fetch a cell from cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to retrieve + * @return PHPExcel_Cell Cell that was found, or null if not found + * @throws Exception + */ + public function getCacheData($pCoord); + + /** + * Delete a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to delete + * @throws Exception + */ + public function deleteCacheData($pCoord); + + /** + * Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + * + * @param string $pCoord Coordinate address of the cell to check + * @return boolean + */ + public function isDataSet($pCoord); + + /** + * Get a list of all cell addresses currently held in cache + * + * @return array of string + */ + public function getCellList(); + + /** + * Get the list of all cell addresses currently held in cache sorted by column and row + * + * @return void + */ + public function getSortedCellList(); + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent); + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable(); + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Igbinary.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Igbinary.php new file mode 100644 index 0000000..fc2f112 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Igbinary.php @@ -0,0 +1,138 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_Igbinary + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorage_Igbinary extends PHPExcel_CachedObjectStorage_CacheBase implements PHPExcel_CachedObjectStorage_ICache { + + /** + * Store cell data in cache for the current cell object if it's "dirty", + * and the 'nullify' the current cell object + * + * @return void + * @throws Exception + */ + private function _storeData() { + if ($this->_currentCellIsDirty) { + $this->_currentObject->detach(); + + $this->_cellCache[$this->_currentObjectID] = igbinary_serialize($this->_currentObject); + $this->_currentCellIsDirty = false; + } + $this->_currentObjectID = $this->_currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) { + if (($pCoord !== $this->_currentObjectID) && ($this->_currentObjectID !== null)) { + $this->_storeData(); + } + + $this->_currentObjectID = $pCoord; + $this->_currentObject = $cell; + $this->_currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return $this->_currentObject; + } + $this->_storeData(); + + // Check if the entry that has been requested actually exists + if (!isset($this->_cellCache[$pCoord])) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->_currentObjectID = $pCoord; + $this->_currentObject = igbinary_unserialize($this->_cellCache[$pCoord]); + // Re-attach the parent worksheet + $this->_currentObject->attach($this->_parent); + + // Return requested entry + return $this->_currentObject; + } // function getCacheData() + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() { + if(!is_null($this->_currentObject)) { + $this->_currentObject->detach(); + $this->_currentObject = $this->_currentObjectID = null; + } + $this->_cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->_parent = null; + } // function unsetWorksheetCells() + + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() { + if (!function_exists('igbinary_serialize')) { + return false; + } + + return true; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Memcache.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Memcache.php new file mode 100644 index 0000000..23d6957 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Memcache.php @@ -0,0 +1,298 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_Memcache + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorage_Memcache extends PHPExcel_CachedObjectStorage_CacheBase implements PHPExcel_CachedObjectStorage_ICache { + + /** + * Prefix used to uniquely identify cache data for this worksheet + * + * @var string + */ + private $_cachePrefix = null; + + /** + * Cache timeout + * + * @var integer + */ + private $_cacheTime = 600; + + /** + * Memcache interface + * + * @var resource + */ + private $_memcache = null; + + + /** + * Store cell data in cache for the current cell object if it's "dirty", + * and the 'nullify' the current cell object + * + * @return void + * @throws Exception + */ + private function _storeData() { + if ($this->_currentCellIsDirty) { + $this->_currentObject->detach(); + + $obj = serialize($this->_currentObject); + if (!$this->_memcache->replace($this->_cachePrefix.$this->_currentObjectID.'.cache',$obj,NULL,$this->_cacheTime)) { + if (!$this->_memcache->add($this->_cachePrefix.$this->_currentObjectID.'.cache',$obj,NULL,$this->_cacheTime)) { + $this->__destruct(); + throw new Exception('Failed to store cell '.$this->_currentObjectID.' in MemCache'); + } + } + $this->_currentCellIsDirty = false; + } + $this->_currentObjectID = $this->_currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) { + if (($pCoord !== $this->_currentObjectID) && ($this->_currentObjectID !== null)) { + $this->_storeData(); + } + $this->_cellCache[$pCoord] = true; + + $this->_currentObjectID = $pCoord; + $this->_currentObject = $cell; + $this->_currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + * + * @param string $pCoord Coordinate address of the cell to check + * @return void + * @return boolean + */ + public function isDataSet($pCoord) { + // Check if the requested entry is the current object, or exists in the cache + if (parent::isDataSet($pCoord)) { + if ($this->_currentObjectID == $pCoord) { + return true; + } + // Check if the requested entry still exists in Memcache + $success = $this->_memcache->get($this->_cachePrefix.$pCoord.'.cache'); + if ($success === false) { + // Entry no longer exists in Memcache, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new Exception('Cell entry '.$pCoord.' no longer exists in MemCache'); + } + return true; + } + return false; + } // function isDataSet() + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return $this->_currentObject; + } + $this->_storeData(); + + // Check if the entry that has been requested actually exists + if (parent::isDataSet($pCoord)) { + $obj = $this->_memcache->get($this->_cachePrefix.$pCoord.'.cache'); + if ($obj === false) { + // Entry no longer exists in Memcache, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new Exception('Cell entry '.$pCoord.' no longer exists in MemCache'); + } + } else { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->_currentObjectID = $pCoord; + $this->_currentObject = unserialize($obj); + // Re-attach the parent worksheet + $this->_currentObject->attach($this->_parent); + + // Return requested entry + return $this->_currentObject; + } // function getCacheData() + + + /** + * Delete a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to delete + * @throws Exception + */ + public function deleteCacheData($pCoord) { + // Delete the entry from Memcache + $this->_memcache->delete($this->_cachePrefix.$pCoord.'.cache'); + + // Delete the entry from our cell address array + parent::deleteCacheData($pCoord); + } // function deleteCacheData() + + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) { + parent::copyCellCollection($parent); + // Get a new id for the new file name + $baseUnique = $this->_getUniqueID(); + $newCachePrefix = substr(md5($baseUnique),0,8).'.'; + $cacheList = $this->getCellList(); + foreach($cacheList as $cellID) { + if ($cellID != $this->_currentObjectID) { + $obj = $this->_memcache->get($this->_cachePrefix.$cellID.'.cache'); + if ($obj === false) { + // Entry no longer exists in Memcache, so clear it from the cache array + parent::deleteCacheData($cellID); + throw new Exception('Cell entry '.$cellID.' no longer exists in MemCache'); + } + if (!$this->_memcache->add($newCachePrefix.$cellID.'.cache',$obj,NULL,$this->_cacheTime)) { + $this->__destruct(); + throw new Exception('Failed to store cell '.$cellID.' in MemCache'); + } + } + } + $this->_cachePrefix = $newCachePrefix; + } // function copyCellCollection() + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() { + if(!is_null($this->_currentObject)) { + $this->_currentObject->detach(); + $this->_currentObject = $this->_currentObjectID = null; + } + + // Flush the Memcache cache + $this->__destruct(); + + $this->_cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->_parent = null; + } // function unsetWorksheetCells() + + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + * @param array of mixed $arguments Additional initialisation arguments + */ + public function __construct(PHPExcel_Worksheet $parent, $arguments) { + $memcacheServer = (isset($arguments['memcacheServer'])) ? $arguments['memcacheServer'] : 'localhost'; + $memcachePort = (isset($arguments['memcachePort'])) ? $arguments['memcachePort'] : 11211; + $cacheTime = (isset($arguments['cacheTime'])) ? $arguments['cacheTime'] : 600; + + if (is_null($this->_cachePrefix)) { + $baseUnique = $this->_getUniqueID(); + $this->_cachePrefix = substr(md5($baseUnique),0,8).'.'; + + // Set a new Memcache object and connect to the Memcache server + $this->_memcache = new Memcache(); + if (!$this->_memcache->addServer($memcacheServer, $memcachePort, false, 50, 5, 5, true, array($this, 'failureCallback'))) { + throw new Exception('Could not connect to MemCache server at '.$memcacheServer.':'.$memcachePort); + } + $this->_cacheTime = $cacheTime; + + parent::__construct($parent); + } + } // function __construct() + + + /** + * Memcache error handler + * + * @param string $host Memcache server + * @param integer $port Memcache port + * @throws Exception + */ + public function failureCallback($host, $port) { + throw new Exception('memcache '.$host.':'.$port.' failed'); + } + + + /** + * Destroy this cell collection + */ + public function __destruct() { + $cacheList = $this->getCellList(); + foreach($cacheList as $cellID) { + $this->_memcache->delete($this->_cachePrefix.$cellID.'.cache'); + } + } // function __destruct() + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() { + if (!function_exists('memcache_add')) { + return false; + } + + return true; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Memory.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Memory.php new file mode 100644 index 0000000..36f42fb --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Memory.php @@ -0,0 +1,109 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_Memory + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorage_Memory extends PHPExcel_CachedObjectStorage_CacheBase implements PHPExcel_CachedObjectStorage_ICache { + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) { + $this->_cellCache[$pCoord] = $cell; + return $cell; + } // function addCacheData() + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) { + // Check if the entry that has been requested actually exists + if (!isset($this->_cellCache[$pCoord])) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Return requested entry + return $this->_cellCache[$pCoord]; + } // function getCacheData() + + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) { + parent::copyCellCollection($parent); + + $newCollection = array(); + foreach($this->_cellCache as $k => &$cell) { + $newCollection[$k] = clone $cell; + $newCollection[$k]->attach($parent); + } + + $this->_cellCache = $newCollection; + } + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() { + // Because cells are all stored as intact objects in memory, we need to detach each one from the parent + foreach($this->_cellCache as $k => &$cell) { + $cell->detach(); + $this->_cellCache[$k] = null; + } + unset($cell); + + $this->_cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->_parent = null; + } // function unsetWorksheetCells() + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/MemoryGZip.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/MemoryGZip.php new file mode 100644 index 0000000..ee8e95e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/MemoryGZip.php @@ -0,0 +1,123 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_MemoryGZip + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorage_MemoryGZip extends PHPExcel_CachedObjectStorage_CacheBase implements PHPExcel_CachedObjectStorage_ICache { + + /** + * Store cell data in cache for the current cell object if it's "dirty", + * and the 'nullify' the current cell object + * + * @return void + * @throws Exception + */ + private function _storeData() { + if ($this->_currentCellIsDirty) { + $this->_currentObject->detach(); + + $this->_cellCache[$this->_currentObjectID] = gzdeflate(serialize($this->_currentObject)); + $this->_currentCellIsDirty = false; + } + $this->_currentObjectID = $this->_currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) { + if (($pCoord !== $this->_currentObjectID) && ($this->_currentObjectID !== null)) { + $this->_storeData(); + } + + $this->_currentObjectID = $pCoord; + $this->_currentObject = $cell; + $this->_currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return $this->_currentObject; + } + $this->_storeData(); + + // Check if the entry that has been requested actually exists + if (!isset($this->_cellCache[$pCoord])) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->_currentObjectID = $pCoord; + $this->_currentObject = unserialize(gzinflate($this->_cellCache[$pCoord])); + // Re-attach the parent worksheet + $this->_currentObject->attach($this->_parent); + + // Return requested entry + return $this->_currentObject; + } // function getCacheData() + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() { + if(!is_null($this->_currentObject)) { + $this->_currentObject->detach(); + $this->_currentObject = $this->_currentObjectID = null; + } + $this->_cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->_parent = null; + } // function unsetWorksheetCells() + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/MemorySerialized.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/MemorySerialized.php new file mode 100644 index 0000000..d6b09b5 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/MemorySerialized.php @@ -0,0 +1,123 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_MemorySerialized + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorage_MemorySerialized extends PHPExcel_CachedObjectStorage_CacheBase implements PHPExcel_CachedObjectStorage_ICache { + + /** + * Store cell data in cache for the current cell object if it's "dirty", + * and the 'nullify' the current cell object + * + * @return void + * @throws Exception + */ + private function _storeData() { + if ($this->_currentCellIsDirty) { + $this->_currentObject->detach(); + + $this->_cellCache[$this->_currentObjectID] = serialize($this->_currentObject); + $this->_currentCellIsDirty = false; + } + $this->_currentObjectID = $this->_currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) { + if (($pCoord !== $this->_currentObjectID) && ($this->_currentObjectID !== null)) { + $this->_storeData(); + } + + $this->_currentObjectID = $pCoord; + $this->_currentObject = $cell; + $this->_currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return $this->_currentObject; + } + $this->_storeData(); + + // Check if the entry that has been requested actually exists + if (!isset($this->_cellCache[$pCoord])) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->_currentObjectID = $pCoord; + $this->_currentObject = unserialize($this->_cellCache[$pCoord]); + // Re-attach the parent worksheet + $this->_currentObject->attach($this->_parent); + + // Return requested entry + return $this->_currentObject; + } // function getCacheData() + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() { + if(!is_null($this->_currentObject)) { + $this->_currentObject->detach(); + $this->_currentObject = $this->_currentObjectID = null; + } + $this->_cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->_parent = null; + } // function unsetWorksheetCells() + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/PHPTemp.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/PHPTemp.php new file mode 100644 index 0000000..8dbbe92 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/PHPTemp.php @@ -0,0 +1,192 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_PHPTemp + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorage_PHPTemp extends PHPExcel_CachedObjectStorage_CacheBase implements PHPExcel_CachedObjectStorage_ICache { + + /** + * Name of the file for this cache + * + * @var string + */ + private $_fileHandle = null; + + /** + * Memory limit to use before reverting to file cache + * + * @var integer + */ + private $_memoryCacheSize = null; + + /** + * Store cell data in cache for the current cell object if it's "dirty", + * and the 'nullify' the current cell object + * + * @return void + * @throws Exception + */ + private function _storeData() { + if ($this->_currentCellIsDirty) { + $this->_currentObject->detach(); + + fseek($this->_fileHandle,0,SEEK_END); + $offset = ftell($this->_fileHandle); + fwrite($this->_fileHandle, serialize($this->_currentObject)); + $this->_cellCache[$this->_currentObjectID] = array('ptr' => $offset, + 'sz' => ftell($this->_fileHandle) - $offset + ); + $this->_currentCellIsDirty = false; + } + $this->_currentObjectID = $this->_currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) { + if (($pCoord !== $this->_currentObjectID) && ($this->_currentObjectID !== null)) { + $this->_storeData(); + } + + $this->_currentObjectID = $pCoord; + $this->_currentObject = $cell; + $this->_currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return $this->_currentObject; + } + $this->_storeData(); + + // Check if the entry that has been requested actually exists + if (!isset($this->_cellCache[$pCoord])) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->_currentObjectID = $pCoord; + fseek($this->_fileHandle,$this->_cellCache[$pCoord]['ptr']); + $this->_currentObject = unserialize(fread($this->_fileHandle,$this->_cellCache[$pCoord]['sz'])); + // Re-attach the parent worksheet + $this->_currentObject->attach($this->_parent); + + // Return requested entry + return $this->_currentObject; + } // function getCacheData() + + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) { + parent::copyCellCollection($parent); + // Open a new stream for the cell cache data + $newFileHandle = fopen('php://temp/maxmemory:'.$this->_memoryCacheSize,'a+'); + // Copy the existing cell cache data to the new stream + fseek($this->_fileHandle,0); + while (!feof($this->_fileHandle)) { + fwrite($newFileHandle,fread($this->_fileHandle, 1024)); + } + $this->_fileHandle = $newFileHandle; + } // function copyCellCollection() + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() { + if(!is_null($this->_currentObject)) { + $this->_currentObject->detach(); + $this->_currentObject = $this->_currentObjectID = null; + } + $this->_cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->_parent = null; + + // Close down the php://temp file + $this->__destruct(); + } // function unsetWorksheetCells() + + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + * @param array of mixed $arguments Additional initialisation arguments + */ + public function __construct(PHPExcel_Worksheet $parent, $arguments) { + $this->_memoryCacheSize = (isset($arguments['memoryCacheSize'])) ? $arguments['memoryCacheSize'] : '1MB'; + + parent::__construct($parent); + if (is_null($this->_fileHandle)) { + $this->_fileHandle = fopen('php://temp/maxmemory:'.$this->_memoryCacheSize,'a+'); + } + } // function __construct() + + + /** + * Destroy this cell collection + */ + public function __destruct() { + if (!is_null($this->_fileHandle)) { + fclose($this->_fileHandle); + } + $this->_fileHandle = null; + } // function __destruct() + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/SQLite.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/SQLite.php new file mode 100644 index 0000000..e4bf469 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/SQLite.php @@ -0,0 +1,270 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_SQLite + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorage_SQLite extends PHPExcel_CachedObjectStorage_CacheBase implements PHPExcel_CachedObjectStorage_ICache { + + /** + * Database table name + * + * @var string + */ + private $_TableName = null; + + /** + * Database handle + * + * @var resource + */ + private $_DBHandle = null; + + /** + * Store cell data in cache for the current cell object if it's "dirty", + * and the 'nullify' the current cell object + * + * @return void + * @throws Exception + */ + private function _storeData() { + if ($this->_currentCellIsDirty) { + $this->_currentObject->detach(); + + if (!$this->_DBHandle->queryExec("INSERT OR REPLACE INTO kvp_".$this->_TableName." VALUES('".$this->_currentObjectID."','".sqlite_escape_string(serialize($this->_currentObject))."')")) + throw new Exception(sqlite_error_string($this->_DBHandle->lastError())); + $this->_currentCellIsDirty = false; + } + $this->_currentObjectID = $this->_currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) { + if (($pCoord !== $this->_currentObjectID) && ($this->_currentObjectID !== null)) { + $this->_storeData(); + } + + $this->_currentObjectID = $pCoord; + $this->_currentObject = $cell; + $this->_currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return $this->_currentObject; + } + $this->_storeData(); + + $query = "SELECT value FROM kvp_".$this->_TableName." WHERE id='".$pCoord."'"; + $cellResultSet = $this->_DBHandle->query($query,SQLITE_ASSOC); + if ($cellResultSet === false) { + throw new Exception(sqlite_error_string($this->_DBHandle->lastError())); + } elseif ($cellResultSet->numRows() == 0) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->_currentObjectID = $pCoord; + + $cellResult = $cellResultSet->fetchSingle(); + $this->_currentObject = unserialize($cellResult); + // Re-attach the parent worksheet + $this->_currentObject->attach($this->_parent); + + // Return requested entry + return $this->_currentObject; + } // function getCacheData() + + + /** + * Is a value set for an indexed cell? + * + * @param string $pCoord Coordinate address of the cell to check + * @return boolean + */ + public function isDataSet($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return true; + } + + // Check if the requested entry exists in the cache + $query = "SELECT id FROM kvp_".$this->_TableName." WHERE id='".$pCoord."'"; + $cellResultSet = $this->_DBHandle->query($query,SQLITE_ASSOC); + if ($cellResultSet === false) { + throw new Exception(sqlite_error_string($this->_DBHandle->lastError())); + } elseif ($cellResultSet->numRows() == 0) { + // Return null if requested entry doesn't exist in cache + return false; + } + return true; + } // function isDataSet() + + + /** + * Delete a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to delete + * @throws Exception + */ + public function deleteCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + $this->_currentObject->detach(); + $this->_currentObjectID = $this->_currentObject = null; + } + + // Check if the requested entry exists in the cache + $query = "DELETE FROM kvp_".$this->_TableName." WHERE id='".$pCoord."'"; + if (!$this->_DBHandle->queryExec($query)) + throw new Exception(sqlite_error_string($this->_DBHandle->lastError())); + + $this->_currentCellIsDirty = false; + } // function deleteCacheData() + + + /** + * Get a list of all cell addresses currently held in cache + * + * @return array of string + */ + public function getCellList() { + $query = "SELECT id FROM kvp_".$this->_TableName; + $cellIdsResult = $this->_DBHandle->unbufferedQuery($query,SQLITE_ASSOC); + if ($cellIdsResult === false) + throw new Exception(sqlite_error_string($this->_DBHandle->lastError())); + + $cellKeys = array(); + foreach($cellIdsResult as $row) { + $cellKeys[] = $row['id']; + } + + return $cellKeys; + } // function getCellList() + + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) { + // Get a new id for the new table name + $tableName = str_replace('.','_',$this->_getUniqueID()); + if (!$this->_DBHandle->queryExec('CREATE TABLE kvp_'.$tableName.' (id VARCHAR(12) PRIMARY KEY, value BLOB) + AS SELECT * FROM kvp_'.$this->_TableName)) + throw new Exception(sqlite_error_string($this->_DBHandle->lastError())); + + // Copy the existing cell cache file + $this->_TableName = $tableName; + } // function copyCellCollection() + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() { + if(!is_null($this->_currentObject)) { + $this->_currentObject->detach(); + $this->_currentObject = $this->_currentObjectID = null; + } + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->_parent = null; + + // Close down the temporary cache file + $this->__destruct(); + } // function unsetWorksheetCells() + + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + */ + public function __construct(PHPExcel_Worksheet $parent) { + parent::__construct($parent); + if (is_null($this->_DBHandle)) { + $this->_TableName = str_replace('.','_',$this->_getUniqueID()); + $_DBName = ':memory:'; + + $this->_DBHandle = new SQLiteDatabase($_DBName); + if ($this->_DBHandle === false) + throw new Exception(sqlite_error_string($this->_DBHandle->lastError())); + if (!$this->_DBHandle->queryExec('CREATE TABLE kvp_'.$this->_TableName.' (id VARCHAR(12) PRIMARY KEY, value BLOB)')) + throw new Exception(sqlite_error_string($this->_DBHandle->lastError())); + } + } // function __construct() + + + /** + * Destroy this cell collection + */ + public function __destruct() { + $this->_DBHandle = null; + } // function __destruct() + + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() { + if (!function_exists('sqlite_open')) { + return false; + } + + return true; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/SQLite3.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/SQLite3.php new file mode 100644 index 0000000..ead6e91 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/SQLite3.php @@ -0,0 +1,277 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_SQLite3 + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorage_SQLite3 extends PHPExcel_CachedObjectStorage_CacheBase implements PHPExcel_CachedObjectStorage_ICache { + + /** + * Database table name + * + * @var string + */ + private $_TableName = null; + + /** + * Database handle + * + * @var resource + */ + private $_DBHandle = null; + + /** + * Store cell data in cache for the current cell object if it's "dirty", + * and the 'nullify' the current cell object + * + * @return void + * @throws Exception + */ + private function _storeData() { + if ($this->_currentCellIsDirty) { + $this->_currentObject->detach(); + + $query = $this->_DBHandle->prepare("INSERT OR REPLACE INTO kvp_".$this->_TableName." VALUES(:id,:data)"); + $query->bindValue('id',$this->_currentObjectID,SQLITE3_TEXT); + $query->bindValue('data',serialize($this->_currentObject),SQLITE3_BLOB); + $result = $query->execute(); + if ($result === false) + throw new Exception($this->_DBHandle->lastErrorMsg()); + $this->_currentCellIsDirty = false; + } + $this->_currentObjectID = $this->_currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) { + if (($pCoord !== $this->_currentObjectID) && ($this->_currentObjectID !== null)) { + $this->_storeData(); + } + + $this->_currentObjectID = $pCoord; + $this->_currentObject = $cell; + $this->_currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return $this->_currentObject; + } + $this->_storeData(); + + $query = "SELECT value FROM kvp_".$this->_TableName." WHERE id='".$pCoord."'"; + $cellResult = $this->_DBHandle->querySingle($query); + if ($cellResult === false) { + throw new Exception($this->_DBHandle->lastErrorMsg()); + } elseif (is_null($cellResult)) { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->_currentObjectID = $pCoord; + + $this->_currentObject = unserialize($cellResult); + // Re-attach the parent worksheet + $this->_currentObject->attach($this->_parent); + + // Return requested entry + return $this->_currentObject; + } // function getCacheData() + + + /** + * Is a value set for an indexed cell? + * + * @param string $pCoord Coordinate address of the cell to check + * @return boolean + */ + public function isDataSet($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return true; + } + + // Check if the requested entry exists in the cache + $query = "SELECT id FROM kvp_".$this->_TableName." WHERE id='".$pCoord."'"; + $cellResult = $this->_DBHandle->querySingle($query); + if ($cellResult === false) { + throw new Exception($this->_DBHandle->lastErrorMsg()); + } elseif (is_null($cellResult)) { + // Return null if requested entry doesn't exist in cache + return false; + } + return true; + } // function isDataSet() + + + /** + * Delete a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to delete + * @throws Exception + */ + public function deleteCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + $this->_currentObject->detach(); + $this->_currentObjectID = $this->_currentObject = null; + } + + // Check if the requested entry exists in the cache + $query = "DELETE FROM kvp_".$this->_TableName." WHERE id='".$pCoord."'"; + $result = $this->_DBHandle->exec($query); + if ($result === false) + throw new Exception($this->_DBHandle->lastErrorMsg()); + + $this->_currentCellIsDirty = false; + } // function deleteCacheData() + + + /** + * Get a list of all cell addresses currently held in cache + * + * @return array of string + */ + public function getCellList() { + $query = "SELECT id FROM kvp_".$this->_TableName; + $cellIdsResult = $this->_DBHandle->query($query); + if ($cellIdsResult === false) + throw new Exception($this->_DBHandle->lastErrorMsg()); + + $cellKeys = array(); + while ($row = $cellIdsResult->fetchArray(SQLITE3_ASSOC)) { + $cellKeys[] = $row['id']; + } + + return $cellKeys; + } // function getCellList() + + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) { + // Get a new id for the new table name + $tableName = str_replace('.','_',$this->_getUniqueID()); + if (!$this->_DBHandle->exec('CREATE TABLE kvp_'.$tableName.' (id VARCHAR(12) PRIMARY KEY, value BLOB) + AS SELECT * FROM kvp_'.$this->_TableName)) + throw new Exception($this->_DBHandle->lastErrorMsg()); + + // Copy the existing cell cache file + $this->_TableName = $tableName; + } // function copyCellCollection() + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() { + if(!is_null($this->_currentObject)) { + $this->_currentObject->detach(); + $this->_currentObject = $this->_currentObjectID = null; + } + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->_parent = null; + + // Close down the temporary cache file + $this->__destruct(); + } // function unsetWorksheetCells() + + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + */ + public function __construct(PHPExcel_Worksheet $parent) { + parent::__construct($parent); + if (is_null($this->_DBHandle)) { + $this->_TableName = str_replace('.','_',$this->_getUniqueID()); + $_DBName = ':memory:'; + + $this->_DBHandle = new SQLite3($_DBName); + if ($this->_DBHandle === false) + throw new Exception($this->_DBHandle->lastErrorMsg()); + if (!$this->_DBHandle->exec('CREATE TABLE kvp_'.$this->_TableName.' (id VARCHAR(12) PRIMARY KEY, value BLOB)')) + throw new Exception($this->_DBHandle->lastErrorMsg()); + } + } // function __construct() + + + /** + * Destroy this cell collection + */ + public function __destruct() { + if (!is_null($this->_DBHandle)) { + $this->_DBHandle->close(); + } + $this->_DBHandle = null; + } // function __destruct() + + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() { + if (!class_exists('SQLite3',FALSE)) { + return false; + } + + return true; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Wincache.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Wincache.php new file mode 100644 index 0000000..ba8b045 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/Wincache.php @@ -0,0 +1,280 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorage_Wincache + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorage_Wincache extends PHPExcel_CachedObjectStorage_CacheBase implements PHPExcel_CachedObjectStorage_ICache { + + /** + * Prefix used to uniquely identify cache data for this worksheet + * + * @var string + */ + private $_cachePrefix = null; + + /** + * Cache timeout + * + * @var integer + */ + private $_cacheTime = 600; + + + /** + * Store cell data in cache for the current cell object if it's "dirty", + * and the 'nullify' the current cell object + * + * @return void + * @throws Exception + */ + private function _storeData() { + if ($this->_currentCellIsDirty) { + $this->_currentObject->detach(); + + $obj = serialize($this->_currentObject); + if (wincache_ucache_exists($this->_cachePrefix.$this->_currentObjectID.'.cache')) { + if (!wincache_ucache_set($this->_cachePrefix.$this->_currentObjectID.'.cache', $obj, $this->_cacheTime)) { + $this->__destruct(); + throw new Exception('Failed to store cell '.$this->_currentObjectID.' in WinCache'); + } + } else { + if (!wincache_ucache_add($this->_cachePrefix.$this->_currentObjectID.'.cache', $obj, $this->_cacheTime)) { + $this->__destruct(); + throw new Exception('Failed to store cell '.$this->_currentObjectID.' in WinCache'); + } + } + $this->_currentCellIsDirty = false; + } + + $this->_currentObjectID = $this->_currentObject = null; + } // function _storeData() + + + /** + * Add or Update a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to update + * @param PHPExcel_Cell $cell Cell to update + * @return void + * @throws Exception + */ + public function addCacheData($pCoord, PHPExcel_Cell $cell) { + if (($pCoord !== $this->_currentObjectID) && ($this->_currentObjectID !== null)) { + $this->_storeData(); + } + $this->_cellCache[$pCoord] = true; + + $this->_currentObjectID = $pCoord; + $this->_currentObject = $cell; + $this->_currentCellIsDirty = true; + + return $cell; + } // function addCacheData() + + + /** + * Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + * + * @param string $pCoord Coordinate address of the cell to check + * @return boolean + */ + public function isDataSet($pCoord) { + // Check if the requested entry is the current object, or exists in the cache + if (parent::isDataSet($pCoord)) { + if ($this->_currentObjectID == $pCoord) { + return true; + } + // Check if the requested entry still exists in cache + $success = wincache_ucache_exists($this->_cachePrefix.$pCoord.'.cache'); + if ($success === false) { + // Entry no longer exists in Wincache, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new Exception('Cell entry '.$pCoord.' no longer exists in WinCache'); + } + return true; + } + return false; + } // function isDataSet() + + + /** + * Get cell at a specific coordinate + * + * @param string $pCoord Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found, or null if not found + */ + public function getCacheData($pCoord) { + if ($pCoord === $this->_currentObjectID) { + return $this->_currentObject; + } + $this->_storeData(); + + // Check if the entry that has been requested actually exists + $obj = null; + if (parent::isDataSet($pCoord)) { + $success = false; + $obj = wincache_ucache_get($this->_cachePrefix.$pCoord.'.cache', $success); + if ($success === false) { + // Entry no longer exists in WinCache, so clear it from the cache array + parent::deleteCacheData($pCoord); + throw new Exception('Cell entry '.$pCoord.' no longer exists in WinCache'); + } + } else { + // Return null if requested entry doesn't exist in cache + return null; + } + + // Set current entry to the requested entry + $this->_currentObjectID = $pCoord; + $this->_currentObject = unserialize($obj); + // Re-attach the parent worksheet + $this->_currentObject->attach($this->_parent); + + // Return requested entry + return $this->_currentObject; + } // function getCacheData() + + + /** + * Delete a cell in cache identified by coordinate address + * + * @param string $pCoord Coordinate address of the cell to delete + * @throws Exception + */ + public function deleteCacheData($pCoord) { + // Delete the entry from Wincache + wincache_ucache_delete($this->_cachePrefix.$pCoord.'.cache'); + + // Delete the entry from our cell address array + parent::deleteCacheData($pCoord); + } // function deleteCacheData() + + + /** + * Clone the cell collection + * + * @param PHPExcel_Worksheet $parent The new worksheet + * @return void + */ + public function copyCellCollection(PHPExcel_Worksheet $parent) { + parent::copyCellCollection($parent); + // Get a new id for the new file name + $baseUnique = $this->_getUniqueID(); + $newCachePrefix = substr(md5($baseUnique),0,8).'.'; + $cacheList = $this->getCellList(); + foreach($cacheList as $cellID) { + if ($cellID != $this->_currentObjectID) { + $success = false; + $obj = wincache_ucache_get($this->_cachePrefix.$cellID.'.cache', $success); + if ($success === false) { + // Entry no longer exists in WinCache, so clear it from the cache array + parent::deleteCacheData($cellID); + throw new Exception('Cell entry '.$cellID.' no longer exists in Wincache'); + } + if (!wincache_ucache_add($newCachePrefix.$cellID.'.cache', $obj, $this->_cacheTime)) { + $this->__destruct(); + throw new Exception('Failed to store cell '.$cellID.' in Wincache'); + } + } + } + $this->_cachePrefix = $newCachePrefix; + } // function copyCellCollection() + + + /** + * Clear the cell collection and disconnect from our parent + * + * @return void + */ + public function unsetWorksheetCells() { + if(!is_null($this->_currentObject)) { + $this->_currentObject->detach(); + $this->_currentObject = $this->_currentObjectID = null; + } + + // Flush the WinCache cache + $this->__destruct(); + + $this->_cellCache = array(); + + // detach ourself from the worksheet, so that it can then delete this object successfully + $this->_parent = null; + } // function unsetWorksheetCells() + + + /** + * Initialise this new cell collection + * + * @param PHPExcel_Worksheet $parent The worksheet for this cell collection + * @param array of mixed $arguments Additional initialisation arguments + */ + public function __construct(PHPExcel_Worksheet $parent, $arguments) { + $cacheTime = (isset($arguments['cacheTime'])) ? $arguments['cacheTime'] : 600; + + if (is_null($this->_cachePrefix)) { + $baseUnique = $this->_getUniqueID(); + $this->_cachePrefix = substr(md5($baseUnique),0,8).'.'; + $this->_cacheTime = $cacheTime; + + parent::__construct($parent); + } + } // function __construct() + + + /** + * Destroy this cell collection + */ + public function __destruct() { + $cacheList = $this->getCellList(); + foreach($cacheList as $cellID) { + wincache_ucache_delete($this->_cachePrefix.$cellID.'.cache'); + } + } // function __destruct() + + + /** + * Identify whether the caching method is currently available + * Some methods are dependent on the availability of certain extensions being enabled in the PHP build + * + * @return boolean + */ + public static function cacheMethodIsAvailable() { + if (!function_exists('wincache_ucache_add')) { + return false; + } + + return true; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/_notes/dwsync.xml new file mode 100644 index 0000000..472b77d --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorage/_notes/dwsync.xml @@ -0,0 +1,94 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="APC.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="CacheBase.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="DiscISAM.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="ICache.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Igbinary.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Memcache.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Memory.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="MemoryGZip.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="MemorySerialized.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="PHPTemp.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="SQLite.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="SQLite3.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Wincache.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="DiscISAM.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="ICache.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="PHPTemp.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="CacheBase.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="SQLite.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="Wincache.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="Memcache.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="MemoryGZip.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="APC.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="Igbinary.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="MemorySerialized.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="SQLite3.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="Memory.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="DiscISAM.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="ICache.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="PHPTemp.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="CacheBase.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="SQLite.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="Wincache.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="Memcache.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="MemoryGZip.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098600000000" Dst="-1" /> +<file name="APC.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098600000000" Dst="-1" /> +<file name="Igbinary.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098600000000" Dst="-1" /> +<file name="MemorySerialized.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098600000000" Dst="-1" /> +<file name="SQLite3.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098600000000" Dst="-1" /> +<file name="Memory.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098600000000" Dst="-1" /> +<file name="DiscISAM.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559909844179" remote="131260196400000000" Dst="1" /> +<file name="ICache.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559910272157" remote="131260196400000000" Dst="1" /> +<file name="PHPTemp.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559910699853" remote="131260196400000000" Dst="1" /> +<file name="CacheBase.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559911153884" remote="131260196400000000" Dst="1" /> +<file name="SQLite.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559911615973" remote="131260196400000000" Dst="1" /> +<file name="Wincache.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559912071054" remote="131260196400000000" Dst="1" /> +<file name="Memcache.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559912528038" remote="131260196400000000" Dst="1" /> +<file name="MemoryGZip.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559912950415" remote="131260196400000000" Dst="1" /> +<file name="APC.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559913406446" remote="131260196400000000" Dst="1" /> +<file name="Igbinary.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559913844361" remote="131260196400000000" Dst="1" /> +<file name="MemorySerialized.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559914265296" remote="131260196400000000" Dst="1" /> +<file name="SQLite3.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559914701070" remote="131260196400000000" Dst="1" /> +<file name="Memory.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559915307865" remote="131260196400000000" Dst="1" /> +<file name="DiscISAM.php" server="62.244.88.21/amashow/" local="131414752224081354" remote="131414680800000000" Dst="2" /> +<file name="ICache.php" server="62.244.88.21/amashow/" local="131414752224432641" remote="131414680800000000" Dst="2" /> +<file name="PHPTemp.php" server="62.244.88.21/amashow/" local="131414752224648576" remote="131414680800000000" Dst="2" /> +<file name="CacheBase.php" server="62.244.88.21/amashow/" local="131414752224853888" remote="131414680800000000" Dst="2" /> +<file name="SQLite.php" server="62.244.88.21/amashow/" local="131414752225290681" remote="131414680800000000" Dst="2" /> +<file name="Memcache.php" server="62.244.88.21/amashow/" local="131414752225712943" remote="131414680800000000" Dst="2" /> +<file name="MemoryGZip.php" server="62.244.88.21/amashow/" local="131414752225911919" remote="131414680800000000" Dst="2" /> +<file name="Wincache.php" server="62.244.88.21/amashow/" local="131414752225499724" remote="131414680800000000" Dst="2" /> +<file name="APC.php" server="62.244.88.21/amashow/" local="131414752226135586" remote="131414680800000000" Dst="2" /> +<file name="Igbinary.php" server="62.244.88.21/amashow/" local="131414752226334111" remote="131414680800000000" Dst="2" /> +<file name="MemorySerialized.php" server="62.244.88.21/amashow/" local="131414752226716385" remote="131414680800000000" Dst="2" /> +<file name="SQLite3.php" server="62.244.88.21/amashow/" local="131414752226932547" remote="131414680800000000" Dst="2" /> +<file name="Memory.php" server="62.244.88.21/amashow/" local="131414752227134371" remote="131414680800000000" Dst="2" /> +<file name="Memory.php" server="62.244.88.21/deciday/" local="131919461204198396" remote="131826017400000000" Dst="1" /> +<file name="ICache.php" server="62.244.88.21/deciday/" local="131919461201711432" remote="131826017400000000" Dst="1" /> +<file name="MemorySerialized.php" server="62.244.88.21/deciday/" local="131919461205077401" remote="131826017400000000" Dst="1" /> +<file name="Memcache.php" server="62.244.88.21/deciday/" local="131919461203284645" remote="131826017400000000" Dst="1" /> +<file name="DiscISAM.php" server="62.244.88.21/deciday/" local="131919461201907367" remote="131826017400000000" Dst="1" /> +<file name="PHPTemp.php" server="62.244.88.21/deciday/" local="131919461205547881" remote="131826017400000000" Dst="1" /> +<file name="Igbinary.php" server="62.244.88.21/deciday/" local="131919461203026825" remote="131826017400000000" Dst="1" /> +<file name="SQLite3.php" server="62.244.88.21/deciday/" local="131919461207008228" remote="131826017400000000" Dst="1" /> +<file name="SQLite.php" server="62.244.88.21/deciday/" local="131919461206641967" remote="131826017400000000" Dst="1" /> +<file name="APC.php" server="62.244.88.21/deciday/" local="131919461200736009" remote="131826017400000000" Dst="1" /> +<file name="MemoryGZip.php" server="62.244.88.21/deciday/" local="131919461203974979" remote="131826017400000000" Dst="1" /> +<file name="CacheBase.php" server="62.244.88.21/deciday/" local="131919461200383855" remote="131826017400000000" Dst="1" /> +<file name="Wincache.php" server="62.244.88.21/deciday/" local="131919461207961884" remote="131826017400000000" Dst="1" /> +<file name="APC.php" server="62.244.88.21/deciday_18/" local="131414752226135586" remote="131825945400000000" Dst="2" /> +<file name="ICache.php" server="62.244.88.21/deciday_18/" local="131414752224432641" remote="131825945400000000" Dst="2" /> +<file name="DiscISAM.php" server="62.244.88.21/deciday_18/" local="131414752224081354" remote="131825945400000000" Dst="2" /> +<file name="Igbinary.php" server="62.244.88.21/deciday_18/" local="131414752226334111" remote="131825945400000000" Dst="2" /> +<file name="Memcache.php" server="62.244.88.21/deciday_18/" local="131414752225712943" remote="131825945400000000" Dst="2" /> +<file name="Memory.php" server="62.244.88.21/deciday_18/" local="131414752227134371" remote="131825945400000000" Dst="2" /> +<file name="CacheBase.php" server="62.244.88.21/deciday_18/" local="131414752224853888" remote="131825945400000000" Dst="2" /> +<file name="MemoryGZip.php" server="62.244.88.21/deciday_18/" local="131414752225911919" remote="131825945400000000" Dst="2" /> +<file name="MemorySerialized.php" server="62.244.88.21/deciday_18/" local="131414752226716385" remote="131825945400000000" Dst="2" /> +<file name="PHPTemp.php" server="62.244.88.21/deciday_18/" local="131414752224648576" remote="131825945400000000" Dst="2" /> +<file name="SQLite.php" server="62.244.88.21/deciday_18/" local="131414752225290681" remote="131825945400000000" Dst="2" /> +<file name="SQLite3.php" server="62.244.88.21/deciday_18/" local="131414752226932547" remote="131825945400000000" Dst="2" /> +<file name="Wincache.php" server="62.244.88.21/deciday_18/" local="131414752225499724" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorageFactory.php b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorageFactory.php new file mode 100644 index 0000000..51019f7 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/CachedObjectStorageFactory.php @@ -0,0 +1,239 @@ +<?php + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_CachedObjectStorageFactory + * + * @category PHPExcel + * @package PHPExcel_CachedObjectStorage + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_CachedObjectStorageFactory +{ + const cache_in_memory = 'Memory'; + const cache_in_memory_gzip = 'MemoryGZip'; + const cache_in_memory_serialized = 'MemorySerialized'; + const cache_igbinary = 'Igbinary'; + const cache_to_discISAM = 'DiscISAM'; + const cache_to_apc = 'APC'; + const cache_to_memcache = 'Memcache'; + const cache_to_phpTemp = 'PHPTemp'; + const cache_to_wincache = 'Wincache'; + const cache_to_sqlite = 'SQLite'; + const cache_to_sqlite3 = 'SQLite3'; + + + /** + * Name of the method used for cell cacheing + * + * @var string + */ + private static $_cacheStorageMethod = NULL; + + /** + * Name of the class used for cell cacheing + * + * @var string + */ + private static $_cacheStorageClass = NULL; + + + /** + * List of all possible cache storage methods + * + * @var string[] + */ + private static $_storageMethods = array( + self::cache_in_memory, + self::cache_in_memory_gzip, + self::cache_in_memory_serialized, + self::cache_igbinary, + self::cache_to_phpTemp, + self::cache_to_discISAM, + self::cache_to_apc, + self::cache_to_memcache, + self::cache_to_wincache, + self::cache_to_sqlite, + self::cache_to_sqlite3, + ); + + + /** + * Default arguments for each cache storage method + * + * @var array of mixed array + */ + private static $_storageMethodDefaultParameters = array( + self::cache_in_memory => array( + ), + self::cache_in_memory_gzip => array( + ), + self::cache_in_memory_serialized => array( + ), + self::cache_igbinary => array( + ), + self::cache_to_phpTemp => array( 'memoryCacheSize' => '1MB' + ), + self::cache_to_discISAM => array( 'dir' => NULL + ), + self::cache_to_apc => array( 'cacheTime' => 600 + ), + self::cache_to_memcache => array( 'memcacheServer' => 'localhost', + 'memcachePort' => 11211, + 'cacheTime' => 600 + ), + self::cache_to_wincache => array( 'cacheTime' => 600 + ), + self::cache_to_sqlite => array( + ), + self::cache_to_sqlite3 => array( + ), + ); + + + /** + * Arguments for the active cache storage method + * + * @var array of mixed array + */ + private static $_storageMethodParameters = array(); + + + /** + * Return the current cache storage method + * + * @return string|NULL + **/ + public static function getCacheStorageMethod() + { + return self::$_cacheStorageMethod; + } // function getCacheStorageMethod() + + + /** + * Return the current cache storage class + * + * @return PHPExcel_CachedObjectStorage_ICache|NULL + **/ + public static function getCacheStorageClass() + { + return self::$_cacheStorageClass; + } // function getCacheStorageClass() + + + /** + * Return the list of all possible cache storage methods + * + * @return string[] + **/ + public static function getAllCacheStorageMethods() + { + return self::$_storageMethods; + } // function getCacheStorageMethods() + + + /** + * Return the list of all available cache storage methods + * + * @return string[] + **/ + public static function getCacheStorageMethods() + { + $activeMethods = array(); + foreach(self::$_storageMethods as $storageMethod) { + $cacheStorageClass = 'PHPExcel_CachedObjectStorage_' . $storageMethod; + if (call_user_func(array($cacheStorageClass, 'cacheMethodIsAvailable'))) { + $activeMethods[] = $storageMethod; + } + } + return $activeMethods; + } // function getCacheStorageMethods() + + + /** + * Identify the cache storage method to use + * + * @param string $method Name of the method to use for cell cacheing + * @param array of mixed $arguments Additional arguments to pass to the cell caching class + * when instantiating + * @return boolean + **/ + public static function initialize($method = self::cache_in_memory, $arguments = array()) + { + if (!in_array($method,self::$_storageMethods)) { + return FALSE; + } + + $cacheStorageClass = 'PHPExcel_CachedObjectStorage_'.$method; + if (!call_user_func(array( $cacheStorageClass, + 'cacheMethodIsAvailable'))) { + return FALSE; + } + + self::$_storageMethodParameters[$method] = self::$_storageMethodDefaultParameters[$method]; + foreach($arguments as $k => $v) { + if (isset(self::$_storageMethodParameters[$method][$k])) { + self::$_storageMethodParameters[$method][$k] = $v; + } + } + + if (self::$_cacheStorageMethod === NULL) { + self::$_cacheStorageClass = 'PHPExcel_CachedObjectStorage_' . $method; + self::$_cacheStorageMethod = $method; + } + return TRUE; + } // function initialize() + + + /** + * Initialise the cache storage + * + * @param PHPExcel_Worksheet $parent Enable cell caching for this worksheet + * @return PHPExcel_CachedObjectStorage_ICache + **/ + public static function getInstance(PHPExcel_Worksheet $parent) + { + $cacheMethodIsAvailable = TRUE; + if (self::$_cacheStorageMethod === NULL) { + $cacheMethodIsAvailable = self::initialize(); + } + + if ($cacheMethodIsAvailable) { + $instance = new self::$_cacheStorageClass( $parent, + self::$_storageMethodParameters[self::$_cacheStorageMethod] + ); + if ($instance !== NULL) { + return $instance; + } + } + + return FALSE; + } // function getInstance() + +} \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation.php new file mode 100644 index 0000000..65d4f3d --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation.php @@ -0,0 +1,3811 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +if (!defined('CALCULATION_REGEXP_CELLREF')) { + // Test for support of \P (multibyte options) in PCRE + if(defined('PREG_BAD_UTF8_ERROR')) { + // Cell reference (cell or range of cells, with or without a sheet reference) + define('CALCULATION_REGEXP_CELLREF','((([^\s,!&%^\/\*\+<>=-]*)|(\'[^\']*\')|(\"[^\"]*\"))!)?\$?([a-z]{1,3})\$?(\d{1,7})'); + // Named Range of cells + define('CALCULATION_REGEXP_NAMEDRANGE','((([^\s,!&%^\/\*\+<>=-]*)|(\'[^\']*\')|(\"[^\"]*\"))!)?([_A-Z][_A-Z0-9\.]*)'); + } else { + // Cell reference (cell or range of cells, with or without a sheet reference) + define('CALCULATION_REGEXP_CELLREF','(((\w*)|(\'[^\']*\')|(\"[^\"]*\"))!)?\$?([a-z]{1,3})\$?(\d+)'); + // Named Range of cells + define('CALCULATION_REGEXP_NAMEDRANGE','(((\w*)|(\'.*\')|(\".*\"))!)?([_A-Z][_A-Z0-9\.]*)'); + } +} + + +/** + * PHPExcel_Calculation (Singleton) + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation { + + /** Constants */ + /** Regular Expressions */ + // Numeric operand + const CALCULATION_REGEXP_NUMBER = '[-+]?\d*\.?\d+(e[-+]?\d+)?'; + // String operand + const CALCULATION_REGEXP_STRING = '"(?:[^"]|"")*"'; + // Opening bracket + const CALCULATION_REGEXP_OPENBRACE = '\('; + // Function (allow for the old @ symbol that could be used to prefix a function, but we'll ignore it) + const CALCULATION_REGEXP_FUNCTION = '@?([A-Z][A-Z0-9\.]*)[\s]*\('; + // Cell reference (cell or range of cells, with or without a sheet reference) + const CALCULATION_REGEXP_CELLREF = CALCULATION_REGEXP_CELLREF; + // Named Range of cells + const CALCULATION_REGEXP_NAMEDRANGE = CALCULATION_REGEXP_NAMEDRANGE; + // Error + const CALCULATION_REGEXP_ERROR = '\#[A-Z][A-Z0_\/]*[!\?]?'; + + + /** constants */ + const RETURN_ARRAY_AS_ERROR = 'error'; + const RETURN_ARRAY_AS_VALUE = 'value'; + const RETURN_ARRAY_AS_ARRAY = 'array'; + + private static $returnArrayAsType = self::RETURN_ARRAY_AS_VALUE; + + + /** + * Instance of this class + * + * @access private + * @var PHPExcel_Calculation + */ + private static $_instance; + + + /** + * Calculation cache + * + * @access private + * @var array + */ + private static $_calculationCache = array (); + + + /** + * Calculation cache enabled + * + * @access private + * @var boolean + */ + private static $_calculationCacheEnabled = true; + + + /** + * Calculation cache expiration time + * + * @access private + * @var float + */ + private static $_calculationCacheExpirationTime = 15; + + + /** + * List of operators that can be used within formulae + * The true/false value indicates whether it is a binary operator or a unary operator + * + * @access private + * @var array + */ + private static $_operators = array('+' => true, '-' => true, '*' => true, '/' => true, + '^' => true, '&' => true, '%' => false, '~' => false, + '>' => true, '<' => true, '=' => true, '>=' => true, + '<=' => true, '<>' => true, '|' => true, ':' => true + ); + + + /** + * List of binary operators (those that expect two operands) + * + * @access private + * @var array + */ + private static $_binaryOperators = array('+' => true, '-' => true, '*' => true, '/' => true, + '^' => true, '&' => true, '>' => true, '<' => true, + '=' => true, '>=' => true, '<=' => true, '<>' => true, + '|' => true, ':' => true + ); + + /** + * Flag to determine how formula errors should be handled + * If true, then a user error will be triggered + * If false, then an exception will be thrown + * + * @access public + * @var boolean + * + */ + public $suppressFormulaErrors = false; + + /** + * Error message for any error that was raised/thrown by the calculation engine + * + * @access public + * @var string + * + */ + public $formulaError = null; + + /** + * Flag to determine whether a debug log should be generated by the calculation engine + * If true, then a debug log will be generated + * If false, then a debug log will not be generated + * + * @access public + * @var boolean + * + */ + public $writeDebugLog = false; + + /** + * Flag to determine whether a debug log should be echoed by the calculation engine + * If true, then a debug log will be echoed + * If false, then a debug log will not be echoed + * A debug log can only be echoed if it is generated + * + * @access public + * @var boolean + * + */ + public $echoDebugLog = false; + + + /** + * An array of the nested cell references accessed by the calculation engine, used for the debug log + * + * @access private + * @var array of string + * + */ + private $debugLogStack = array(); + + /** + * The debug log generated by the calculation engine + * + * @access public + * @var array of string + * + */ + public $debugLog = array(); + private $_cyclicFormulaCount = 0; + private $_cyclicFormulaCell = ''; + public $cyclicFormulaCount = 0; + + + private $_savedPrecision = 12; + + + private static $_localeLanguage = 'en_us'; // US English (default locale) + private static $_validLocaleLanguages = array( 'en' // English (default language) + ); + private static $_localeArgumentSeparator = ','; + private static $_localeFunctions = array(); + public static $_localeBoolean = array( 'TRUE' => 'TRUE', + 'FALSE' => 'FALSE', + 'NULL' => 'NULL' + ); + + + // Constant conversion from text name/value to actual (datatyped) value + private static $_ExcelConstants = array('TRUE' => true, + 'FALSE' => false, + 'NULL' => null + ); + + // PHPExcel functions + private static $_PHPExcelFunctions = array( // PHPExcel functions + 'ABS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'abs', + 'argumentCount' => '1' + ), + 'ACCRINT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::ACCRINT', + 'argumentCount' => '4-7' + ), + 'ACCRINTM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::ACCRINTM', + 'argumentCount' => '3-5' + ), + 'ACOS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'acos', + 'argumentCount' => '1' + ), + 'ACOSH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'acosh', + 'argumentCount' => '1' + ), + 'ADDRESS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::CELL_ADDRESS', + 'argumentCount' => '2-5' + ), + 'AMORDEGRC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::AMORDEGRC', + 'argumentCount' => '6,7' + ), + 'AMORLINC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::AMORLINC', + 'argumentCount' => '6,7' + ), + 'AND' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::LOGICAL_AND', + 'argumentCount' => '1+' + ), + 'AREAS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'ASC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'ASIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'asin', + 'argumentCount' => '1' + ), + 'ASINH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'asinh', + 'argumentCount' => '1' + ), + 'ATAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'atan', + 'argumentCount' => '1' + ), + 'ATAN2' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::ATAN2', + 'argumentCount' => '2' + ), + 'ATANH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'atanh', + 'argumentCount' => '1' + ), + 'AVEDEV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::AVEDEV', + 'argumentCount' => '1+' + ), + 'AVERAGE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGE', + 'argumentCount' => '1+' + ), + 'AVERAGEA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGEA', + 'argumentCount' => '1+' + ), + 'AVERAGEIF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::AVERAGEIF', + 'argumentCount' => '2,3' + ), + 'AVERAGEIFS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '3+' + ), + 'BAHTTEXT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'BESSELI' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELI', + 'argumentCount' => '2' + ), + 'BESSELJ' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELJ', + 'argumentCount' => '2' + ), + 'BESSELK' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELK', + 'argumentCount' => '2' + ), + 'BESSELY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BESSELY', + 'argumentCount' => '2' + ), + 'BETADIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::BETADIST', + 'argumentCount' => '3-5' + ), + 'BETAINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::BETAINV', + 'argumentCount' => '3-5' + ), + 'BIN2DEC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTODEC', + 'argumentCount' => '1' + ), + 'BIN2HEX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTOHEX', + 'argumentCount' => '1,2' + ), + 'BIN2OCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::BINTOOCT', + 'argumentCount' => '1,2' + ), + 'BINOMDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::BINOMDIST', + 'argumentCount' => '4' + ), + 'CEILING' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::CEILING', + 'argumentCount' => '2' + ), + 'CELL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1,2' + ), + 'CHAR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::CHARACTER', + 'argumentCount' => '1' + ), + 'CHIDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CHIDIST', + 'argumentCount' => '2' + ), + 'CHIINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CHIINV', + 'argumentCount' => '2' + ), + 'CHITEST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'CHOOSE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::CHOOSE', + 'argumentCount' => '2+' + ), + 'CLEAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::TRIMNONPRINTABLE', + 'argumentCount' => '1' + ), + 'CODE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::ASCIICODE', + 'argumentCount' => '1' + ), + 'COLUMN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::COLUMN', + 'argumentCount' => '-1', + 'passByReference' => array(true) + ), + 'COLUMNS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::COLUMNS', + 'argumentCount' => '1' + ), + 'COMBIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::COMBIN', + 'argumentCount' => '2' + ), + 'COMPLEX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::COMPLEX', + 'argumentCount' => '2,3' + ), + 'CONCATENATE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::CONCATENATE', + 'argumentCount' => '1+' + ), + 'CONFIDENCE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CONFIDENCE', + 'argumentCount' => '3' + ), + 'CONVERT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::CONVERTUOM', + 'argumentCount' => '3' + ), + 'CORREL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CORREL', + 'argumentCount' => '2' + ), + 'COS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'cos', + 'argumentCount' => '1' + ), + 'COSH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'cosh', + 'argumentCount' => '1' + ), + 'COUNT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNT', + 'argumentCount' => '1+' + ), + 'COUNTA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTA', + 'argumentCount' => '1+' + ), + 'COUNTBLANK' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTBLANK', + 'argumentCount' => '1' + ), + 'COUNTIF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::COUNTIF', + 'argumentCount' => '2' + ), + 'COUNTIFS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'COUPDAYBS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYBS', + 'argumentCount' => '3,4' + ), + 'COUPDAYS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYS', + 'argumentCount' => '3,4' + ), + 'COUPDAYSNC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPDAYSNC', + 'argumentCount' => '3,4' + ), + 'COUPNCD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPNCD', + 'argumentCount' => '3,4' + ), + 'COUPNUM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPNUM', + 'argumentCount' => '3,4' + ), + 'COUPPCD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::COUPPCD', + 'argumentCount' => '3,4' + ), + 'COVAR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::COVAR', + 'argumentCount' => '2' + ), + 'CRITBINOM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CRITBINOM', + 'argumentCount' => '3' + ), + 'CUBEKPIMEMBER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBEMEMBER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBEMEMBERPROPERTY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBERANKEDMEMBER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBESET' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBESETCOUNT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUBEVALUE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_CUBE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'CUMIPMT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::CUMIPMT', + 'argumentCount' => '6' + ), + 'CUMPRINC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::CUMPRINC', + 'argumentCount' => '6' + ), + 'DATE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DATE', + 'argumentCount' => '3' + ), + 'DATEDIF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DATEDIF', + 'argumentCount' => '2,3' + ), + 'DATEVALUE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DATEVALUE', + 'argumentCount' => '1' + ), + 'DAVERAGE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DAVERAGE', + 'argumentCount' => '3' + ), + 'DAY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DAYOFMONTH', + 'argumentCount' => '1' + ), + 'DAYS360' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DAYS360', + 'argumentCount' => '2,3' + ), + 'DB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::DB', + 'argumentCount' => '4,5' + ), + 'DCOUNT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DCOUNT', + 'argumentCount' => '3' + ), + 'DCOUNTA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DCOUNTA', + 'argumentCount' => '3' + ), + 'DDB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::DDB', + 'argumentCount' => '4,5' + ), + 'DEC2BIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOBIN', + 'argumentCount' => '1,2' + ), + 'DEC2HEX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOHEX', + 'argumentCount' => '1,2' + ), + 'DEC2OCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::DECTOOCT', + 'argumentCount' => '1,2' + ), + 'DEGREES' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'rad2deg', + 'argumentCount' => '1' + ), + 'DELTA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::DELTA', + 'argumentCount' => '1,2' + ), + 'DEVSQ' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::DEVSQ', + 'argumentCount' => '1+' + ), + 'DGET' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DGET', + 'argumentCount' => '3' + ), + 'DISC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::DISC', + 'argumentCount' => '4,5' + ), + 'DMAX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DMAX', + 'argumentCount' => '3' + ), + 'DMIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DMIN', + 'argumentCount' => '3' + ), + 'DOLLAR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::DOLLAR', + 'argumentCount' => '1,2' + ), + 'DOLLARDE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::DOLLARDE', + 'argumentCount' => '2' + ), + 'DOLLARFR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::DOLLARFR', + 'argumentCount' => '2' + ), + 'DPRODUCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DPRODUCT', + 'argumentCount' => '3' + ), + 'DSTDEV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DSTDEV', + 'argumentCount' => '3' + ), + 'DSTDEVP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DSTDEVP', + 'argumentCount' => '3' + ), + 'DSUM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DSUM', + 'argumentCount' => '3' + ), + 'DURATION' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '5,6' + ), + 'DVAR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DVAR', + 'argumentCount' => '3' + ), + 'DVARP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATABASE, + 'functionCall' => 'PHPExcel_Calculation_Database::DVARP', + 'argumentCount' => '3' + ), + 'EDATE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::EDATE', + 'argumentCount' => '2' + ), + 'EFFECT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::EFFECT', + 'argumentCount' => '2' + ), + 'EOMONTH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::EOMONTH', + 'argumentCount' => '2' + ), + 'ERF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::ERF', + 'argumentCount' => '1,2' + ), + 'ERFC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::ERFC', + 'argumentCount' => '1' + ), + 'ERROR.TYPE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::ERROR_TYPE', + 'argumentCount' => '1' + ), + 'EVEN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::EVEN', + 'argumentCount' => '1' + ), + 'EXACT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'EXP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'exp', + 'argumentCount' => '1' + ), + 'EXPONDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::EXPONDIST', + 'argumentCount' => '3' + ), + 'FACT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::FACT', + 'argumentCount' => '1' + ), + 'FACTDOUBLE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::FACTDOUBLE', + 'argumentCount' => '1' + ), + 'FALSE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::FALSE', + 'argumentCount' => '0' + ), + 'FDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '3' + ), + 'FIND' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHSENSITIVE', + 'argumentCount' => '2,3' + ), + 'FINDB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHSENSITIVE', + 'argumentCount' => '2,3' + ), + 'FINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '3' + ), + 'FISHER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::FISHER', + 'argumentCount' => '1' + ), + 'FISHERINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::FISHERINV', + 'argumentCount' => '1' + ), + 'FIXED' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::FIXEDFORMAT', + 'argumentCount' => '1-3' + ), + 'FLOOR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::FLOOR', + 'argumentCount' => '2' + ), + 'FORECAST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::FORECAST', + 'argumentCount' => '3' + ), + 'FREQUENCY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'FTEST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'FV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::FV', + 'argumentCount' => '3-5' + ), + 'FVSCHEDULE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::FVSCHEDULE', + 'argumentCount' => '2' + ), + 'GAMMADIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMADIST', + 'argumentCount' => '4' + ), + 'GAMMAINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMAINV', + 'argumentCount' => '3' + ), + 'GAMMALN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::GAMMALN', + 'argumentCount' => '1' + ), + 'GCD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::GCD', + 'argumentCount' => '1+' + ), + 'GEOMEAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::GEOMEAN', + 'argumentCount' => '1+' + ), + 'GESTEP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::GESTEP', + 'argumentCount' => '1,2' + ), + 'GETPIVOTDATA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2+' + ), + 'GROWTH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::GROWTH', + 'argumentCount' => '1-4' + ), + 'HARMEAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::HARMEAN', + 'argumentCount' => '1+' + ), + 'HEX2BIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTOBIN', + 'argumentCount' => '1,2' + ), + 'HEX2DEC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTODEC', + 'argumentCount' => '1' + ), + 'HEX2OCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::HEXTOOCT', + 'argumentCount' => '1,2' + ), + 'HLOOKUP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '3,4' + ), + 'HOUR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::HOUROFDAY', + 'argumentCount' => '1' + ), + 'HYPERLINK' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::HYPERLINK', + 'argumentCount' => '1,2', + 'passCellReference'=> true + ), + 'HYPGEOMDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::HYPGEOMDIST', + 'argumentCount' => '4' + ), + 'IF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::STATEMENT_IF', + 'argumentCount' => '1-3' + ), + 'IFERROR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::IFERROR', + 'argumentCount' => '2' + ), + 'IMABS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMABS', + 'argumentCount' => '1' + ), + 'IMAGINARY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMAGINARY', + 'argumentCount' => '1' + ), + 'IMARGUMENT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMARGUMENT', + 'argumentCount' => '1' + ), + 'IMCONJUGATE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMCONJUGATE', + 'argumentCount' => '1' + ), + 'IMCOS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMCOS', + 'argumentCount' => '1' + ), + 'IMDIV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMDIV', + 'argumentCount' => '2' + ), + 'IMEXP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMEXP', + 'argumentCount' => '1' + ), + 'IMLN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLN', + 'argumentCount' => '1' + ), + 'IMLOG10' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLOG10', + 'argumentCount' => '1' + ), + 'IMLOG2' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMLOG2', + 'argumentCount' => '1' + ), + 'IMPOWER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMPOWER', + 'argumentCount' => '2' + ), + 'IMPRODUCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMPRODUCT', + 'argumentCount' => '1+' + ), + 'IMREAL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMREAL', + 'argumentCount' => '1' + ), + 'IMSIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSIN', + 'argumentCount' => '1' + ), + 'IMSQRT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSQRT', + 'argumentCount' => '1' + ), + 'IMSUB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSUB', + 'argumentCount' => '2' + ), + 'IMSUM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::IMSUM', + 'argumentCount' => '1+' + ), + 'INDEX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::INDEX', + 'argumentCount' => '1-4' + ), + 'INDIRECT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::INDIRECT', + 'argumentCount' => '1,2', + 'passCellReference'=> true + ), + 'INFO' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'INT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::INT', + 'argumentCount' => '1' + ), + 'INTERCEPT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::INTERCEPT', + 'argumentCount' => '2' + ), + 'INTRATE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::INTRATE', + 'argumentCount' => '4,5' + ), + 'IPMT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::IPMT', + 'argumentCount' => '4-6' + ), + 'IRR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::IRR', + 'argumentCount' => '1,2' + ), + 'ISBLANK' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_BLANK', + 'argumentCount' => '1' + ), + 'ISERR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ERR', + 'argumentCount' => '1' + ), + 'ISERROR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ERROR', + 'argumentCount' => '1' + ), + 'ISEVEN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_EVEN', + 'argumentCount' => '1' + ), + 'ISLOGICAL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_LOGICAL', + 'argumentCount' => '1' + ), + 'ISNA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NA', + 'argumentCount' => '1' + ), + 'ISNONTEXT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NONTEXT', + 'argumentCount' => '1' + ), + 'ISNUMBER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_NUMBER', + 'argumentCount' => '1' + ), + 'ISODD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_ODD', + 'argumentCount' => '1' + ), + 'ISPMT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::ISPMT', + 'argumentCount' => '4' + ), + 'ISREF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'ISTEXT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::IS_TEXT', + 'argumentCount' => '1' + ), + 'JIS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'KURT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::KURT', + 'argumentCount' => '1+' + ), + 'LARGE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::LARGE', + 'argumentCount' => '2' + ), + 'LCM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::LCM', + 'argumentCount' => '1+' + ), + 'LEFT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::LEFT', + 'argumentCount' => '1,2' + ), + 'LEFTB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::LEFT', + 'argumentCount' => '1,2' + ), + 'LEN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::STRINGLENGTH', + 'argumentCount' => '1' + ), + 'LENB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::STRINGLENGTH', + 'argumentCount' => '1' + ), + 'LINEST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::LINEST', + 'argumentCount' => '1-4' + ), + 'LN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'log', + 'argumentCount' => '1' + ), + 'LOG' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::LOG_BASE', + 'argumentCount' => '1,2' + ), + 'LOG10' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'log10', + 'argumentCount' => '1' + ), + 'LOGEST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::LOGEST', + 'argumentCount' => '1-4' + ), + 'LOGINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::LOGINV', + 'argumentCount' => '3' + ), + 'LOGNORMDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::LOGNORMDIST', + 'argumentCount' => '3' + ), + 'LOOKUP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::LOOKUP', + 'argumentCount' => '2,3' + ), + 'LOWER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::LOWERCASE', + 'argumentCount' => '1' + ), + 'MATCH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::MATCH', + 'argumentCount' => '2,3' + ), + 'MAX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MAX', + 'argumentCount' => '1+' + ), + 'MAXA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MAXA', + 'argumentCount' => '1+' + ), + 'MAXIF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MAXIF', + 'argumentCount' => '2+' + ), + 'MDETERM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MDETERM', + 'argumentCount' => '1' + ), + 'MDURATION' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '5,6' + ), + 'MEDIAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MEDIAN', + 'argumentCount' => '1+' + ), + 'MEDIANIF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2+' + ), + 'MID' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::MID', + 'argumentCount' => '3' + ), + 'MIDB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::MID', + 'argumentCount' => '3' + ), + 'MIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MIN', + 'argumentCount' => '1+' + ), + 'MINA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MINA', + 'argumentCount' => '1+' + ), + 'MINIF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MINIF', + 'argumentCount' => '2+' + ), + 'MINUTE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::MINUTEOFHOUR', + 'argumentCount' => '1' + ), + 'MINVERSE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MINVERSE', + 'argumentCount' => '1' + ), + 'MIRR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::MIRR', + 'argumentCount' => '3' + ), + 'MMULT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MMULT', + 'argumentCount' => '2' + ), + 'MOD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MOD', + 'argumentCount' => '2' + ), + 'MODE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::MODE', + 'argumentCount' => '1+' + ), + 'MONTH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::MONTHOFYEAR', + 'argumentCount' => '1' + ), + 'MROUND' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MROUND', + 'argumentCount' => '2' + ), + 'MULTINOMIAL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::MULTINOMIAL', + 'argumentCount' => '1+' + ), + 'N' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::N', + 'argumentCount' => '1' + ), + 'NA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::NA', + 'argumentCount' => '0' + ), + 'NEGBINOMDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::NEGBINOMDIST', + 'argumentCount' => '3' + ), + 'NETWORKDAYS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::NETWORKDAYS', + 'argumentCount' => '2+' + ), + 'NOMINAL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::NOMINAL', + 'argumentCount' => '2' + ), + 'NORMDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::NORMDIST', + 'argumentCount' => '4' + ), + 'NORMINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::NORMINV', + 'argumentCount' => '3' + ), + 'NORMSDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::NORMSDIST', + 'argumentCount' => '1' + ), + 'NORMSINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::NORMSINV', + 'argumentCount' => '1' + ), + 'NOT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::NOT', + 'argumentCount' => '1' + ), + 'NOW' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DATETIMENOW', + 'argumentCount' => '0' + ), + 'NPER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::NPER', + 'argumentCount' => '3-5' + ), + 'NPV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::NPV', + 'argumentCount' => '2+' + ), + 'OCT2BIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::OCTTOBIN', + 'argumentCount' => '1,2' + ), + 'OCT2DEC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::OCTTODEC', + 'argumentCount' => '1' + ), + 'OCT2HEX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_ENGINEERING, + 'functionCall' => 'PHPExcel_Calculation_Engineering::OCTTOHEX', + 'argumentCount' => '1,2' + ), + 'ODD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::ODD', + 'argumentCount' => '1' + ), + 'ODDFPRICE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '8,9' + ), + 'ODDFYIELD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '8,9' + ), + 'ODDLPRICE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '7,8' + ), + 'ODDLYIELD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '7,8' + ), + 'OFFSET' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::OFFSET', + 'argumentCount' => '3,5', + 'passCellReference'=> true, + 'passByReference' => array(true) + ), + 'OR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::LOGICAL_OR', + 'argumentCount' => '1+' + ), + 'PEARSON' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::CORREL', + 'argumentCount' => '2' + ), + 'PERCENTILE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::PERCENTILE', + 'argumentCount' => '2' + ), + 'PERCENTRANK' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::PERCENTRANK', + 'argumentCount' => '2,3' + ), + 'PERMUT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::PERMUT', + 'argumentCount' => '2' + ), + 'PHONETIC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'PI' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'pi', + 'argumentCount' => '0' + ), + 'PMT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PMT', + 'argumentCount' => '3-5' + ), + 'POISSON' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::POISSON', + 'argumentCount' => '3' + ), + 'POWER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::POWER', + 'argumentCount' => '2' + ), + 'PPMT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PPMT', + 'argumentCount' => '4-6' + ), + 'PRICE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PRICE', + 'argumentCount' => '6,7' + ), + 'PRICEDISC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PRICEDISC', + 'argumentCount' => '4,5' + ), + 'PRICEMAT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PRICEMAT', + 'argumentCount' => '5,6' + ), + 'PROB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '3,4' + ), + 'PRODUCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::PRODUCT', + 'argumentCount' => '1+' + ), + 'PROPER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::PROPERCASE', + 'argumentCount' => '1' + ), + 'PV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::PV', + 'argumentCount' => '3-5' + ), + 'QUARTILE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::QUARTILE', + 'argumentCount' => '2' + ), + 'QUOTIENT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::QUOTIENT', + 'argumentCount' => '2' + ), + 'RADIANS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'deg2rad', + 'argumentCount' => '1' + ), + 'RAND' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::RAND', + 'argumentCount' => '0' + ), + 'RANDBETWEEN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::RAND', + 'argumentCount' => '2' + ), + 'RANK' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::RANK', + 'argumentCount' => '2,3' + ), + 'RATE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::RATE', + 'argumentCount' => '3-6' + ), + 'RECEIVED' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::RECEIVED', + 'argumentCount' => '4-5' + ), + 'REPLACE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::REPLACE', + 'argumentCount' => '4' + ), + 'REPLACEB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::REPLACE', + 'argumentCount' => '4' + ), + 'REPT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'str_repeat', + 'argumentCount' => '2' + ), + 'RIGHT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::RIGHT', + 'argumentCount' => '1,2' + ), + 'RIGHTB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::RIGHT', + 'argumentCount' => '1,2' + ), + 'ROMAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::ROMAN', + 'argumentCount' => '1,2' + ), + 'ROUND' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'round', + 'argumentCount' => '2' + ), + 'ROUNDDOWN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::ROUNDDOWN', + 'argumentCount' => '2' + ), + 'ROUNDUP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::ROUNDUP', + 'argumentCount' => '2' + ), + 'ROW' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::ROW', + 'argumentCount' => '-1', + 'passByReference' => array(true) + ), + 'ROWS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::ROWS', + 'argumentCount' => '1' + ), + 'RSQ' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::RSQ', + 'argumentCount' => '2' + ), + 'RTD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1+' + ), + 'SEARCH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHINSENSITIVE', + 'argumentCount' => '2,3' + ), + 'SEARCHB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::SEARCHINSENSITIVE', + 'argumentCount' => '2,3' + ), + 'SECOND' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::SECONDOFMINUTE', + 'argumentCount' => '1' + ), + 'SERIESSUM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SERIESSUM', + 'argumentCount' => '4' + ), + 'SIGN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SIGN', + 'argumentCount' => '1' + ), + 'SIN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'sin', + 'argumentCount' => '1' + ), + 'SINH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'sinh', + 'argumentCount' => '1' + ), + 'SKEW' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::SKEW', + 'argumentCount' => '1+' + ), + 'SLN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::SLN', + 'argumentCount' => '3' + ), + 'SLOPE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::SLOPE', + 'argumentCount' => '2' + ), + 'SMALL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::SMALL', + 'argumentCount' => '2' + ), + 'SQRT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'sqrt', + 'argumentCount' => '1' + ), + 'SQRTPI' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SQRTPI', + 'argumentCount' => '1' + ), + 'STANDARDIZE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STANDARDIZE', + 'argumentCount' => '3' + ), + 'STDEV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STDEV', + 'argumentCount' => '1+' + ), + 'STDEVA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STDEVA', + 'argumentCount' => '1+' + ), + 'STDEVP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STDEVP', + 'argumentCount' => '1+' + ), + 'STDEVPA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STDEVPA', + 'argumentCount' => '1+' + ), + 'STEYX' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::STEYX', + 'argumentCount' => '2' + ), + 'SUBSTITUTE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::SUBSTITUTE', + 'argumentCount' => '3,4' + ), + 'SUBTOTAL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUBTOTAL', + 'argumentCount' => '2+' + ), + 'SUM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUM', + 'argumentCount' => '1+' + ), + 'SUMIF' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMIF', + 'argumentCount' => '2,3' + ), + 'SUMIFS' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '?' + ), + 'SUMPRODUCT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMPRODUCT', + 'argumentCount' => '1+' + ), + 'SUMSQ' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMSQ', + 'argumentCount' => '1+' + ), + 'SUMX2MY2' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMX2MY2', + 'argumentCount' => '2' + ), + 'SUMX2PY2' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMX2PY2', + 'argumentCount' => '2' + ), + 'SUMXMY2' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::SUMXMY2', + 'argumentCount' => '2' + ), + 'SYD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::SYD', + 'argumentCount' => '4' + ), + 'T' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::RETURNSTRING', + 'argumentCount' => '1' + ), + 'TAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'tan', + 'argumentCount' => '1' + ), + 'TANH' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'tanh', + 'argumentCount' => '1' + ), + 'TBILLEQ' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::TBILLEQ', + 'argumentCount' => '3' + ), + 'TBILLPRICE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::TBILLPRICE', + 'argumentCount' => '3' + ), + 'TBILLYIELD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::TBILLYIELD', + 'argumentCount' => '3' + ), + 'TDIST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::TDIST', + 'argumentCount' => '3' + ), + 'TEXT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::TEXTFORMAT', + 'argumentCount' => '2' + ), + 'TIME' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::TIME', + 'argumentCount' => '3' + ), + 'TIMEVALUE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::TIMEVALUE', + 'argumentCount' => '1' + ), + 'TINV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::TINV', + 'argumentCount' => '2' + ), + 'TODAY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DATENOW', + 'argumentCount' => '0' + ), + 'TRANSPOSE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::TRANSPOSE', + 'argumentCount' => '1' + ), + 'TREND' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::TREND', + 'argumentCount' => '1-4' + ), + 'TRIM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::TRIMSPACES', + 'argumentCount' => '1' + ), + 'TRIMMEAN' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::TRIMMEAN', + 'argumentCount' => '2' + ), + 'TRUE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOGICAL, + 'functionCall' => 'PHPExcel_Calculation_Logical::TRUE', + 'argumentCount' => '0' + ), + 'TRUNC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG, + 'functionCall' => 'PHPExcel_Calculation_MathTrig::TRUNC', + 'argumentCount' => '1,2' + ), + 'TTEST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '4' + ), + 'TYPE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::TYPE', + 'argumentCount' => '1' + ), + 'UPPER' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_TextData::UPPERCASE', + 'argumentCount' => '1' + ), + 'USDOLLAR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '2' + ), + 'VALUE' => array('category' => PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '1' + ), + 'VAR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::VARFunc', + 'argumentCount' => '1+' + ), + 'VARA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::VARA', + 'argumentCount' => '1+' + ), + 'VARP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::VARP', + 'argumentCount' => '1+' + ), + 'VARPA' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::VARPA', + 'argumentCount' => '1+' + ), + 'VDB' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '5-7' + ), + 'VERSION' => array('category' => PHPExcel_Calculation_Function::CATEGORY_INFORMATION, + 'functionCall' => 'PHPExcel_Calculation_Functions::VERSION', + 'argumentCount' => '0' + ), + 'VLOOKUP' => array('category' => PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE, + 'functionCall' => 'PHPExcel_Calculation_LookupRef::VLOOKUP', + 'argumentCount' => '3,4' + ), + 'WEEKDAY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::DAYOFWEEK', + 'argumentCount' => '1,2' + ), + 'WEEKNUM' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::WEEKOFYEAR', + 'argumentCount' => '1,2' + ), + 'WEIBULL' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::WEIBULL', + 'argumentCount' => '4' + ), + 'WORKDAY' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::WORKDAY', + 'argumentCount' => '2+' + ), + 'XIRR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::XIRR', + 'argumentCount' => '2,3' + ), + 'XNPV' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::XNPV', + 'argumentCount' => '3' + ), + 'YEAR' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::YEAR', + 'argumentCount' => '1' + ), + 'YEARFRAC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME, + 'functionCall' => 'PHPExcel_Calculation_DateTime::YEARFRAC', + 'argumentCount' => '2,3' + ), + 'YIELD' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Functions::DUMMY', + 'argumentCount' => '6,7' + ), + 'YIELDDISC' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::YIELDDISC', + 'argumentCount' => '4,5' + ), + 'YIELDMAT' => array('category' => PHPExcel_Calculation_Function::CATEGORY_FINANCIAL, + 'functionCall' => 'PHPExcel_Calculation_Financial::YIELDMAT', + 'argumentCount' => '5,6' + ), + 'ZTEST' => array('category' => PHPExcel_Calculation_Function::CATEGORY_STATISTICAL, + 'functionCall' => 'PHPExcel_Calculation_Statistical::ZTEST', + 'argumentCount' => '2-3' + ) + ); + + + // Internal functions used for special control purposes + private static $_controlFunctions = array( + 'MKMATRIX' => array('argumentCount' => '*', + 'functionCall' => 'self::_mkMatrix' + ) + ); + + + + + private function __construct() { + $localeFileDirectory = PHPEXCEL_ROOT.'PHPExcel/locale/'; + foreach (glob($localeFileDirectory.'/*',GLOB_ONLYDIR) as $filename) { + $filename = substr($filename,strlen($localeFileDirectory)+1); + if ($filename != 'en') { + self::$_validLocaleLanguages[] = $filename; + } + } + + $setPrecision = (PHP_INT_SIZE == 4) ? 12 : 16; + $this->_savedPrecision = ini_get('precision'); + if ($this->_savedPrecision < $setPrecision) { + ini_set('precision',$setPrecision); + } + } // function __construct() + + + public function __destruct() { + if ($this->_savedPrecision != ini_get('precision')) { + ini_set('precision',$this->_savedPrecision); + } + } + + /** + * Get an instance of this class + * + * @access public + * @return PHPExcel_Calculation + */ + public static function getInstance() { + if (!isset(self::$_instance) || (self::$_instance === NULL)) { + self::$_instance = new PHPExcel_Calculation(); + } + + return self::$_instance; + } // function getInstance() + + + /** + * Flush the calculation cache for any existing instance of this class + * but only if a PHPExcel_Calculation instance exists + * + * @access public + * @return null + */ + public static function flushInstance() { + if (isset(self::$_instance) && (self::$_instance !== NULL)) { + self::$_instance->clearCalculationCache(); + } + } // function flushInstance() + + + /** + * __clone implementation. Cloning should not be allowed in a Singleton! + * + * @access public + * @throws Exception + */ + public final function __clone() { + throw new Exception ('Cloning a Singleton is not allowed!'); + } // function __clone() + + + /** + * Return the locale-specific translation of TRUE + * + * @access public + * @return string locale-specific translation of TRUE + */ + public static function getTRUE() { + return self::$_localeBoolean['TRUE']; + } + + /** + * Return the locale-specific translation of FALSE + * + * @access public + * @return string locale-specific translation of FALSE + */ + public static function getFALSE() { + return self::$_localeBoolean['FALSE']; + } + + /** + * Set the Array Return Type (Array or Value of first element in the array) + * + * @access public + * @param string $returnType Array return type + * @return boolean Success or failure + */ + public static function setArrayReturnType($returnType) { + if (($returnType == self::RETURN_ARRAY_AS_VALUE) || + ($returnType == self::RETURN_ARRAY_AS_ERROR) || + ($returnType == self::RETURN_ARRAY_AS_ARRAY)) { + self::$returnArrayAsType = $returnType; + return true; + } + return false; + } // function setExcelCalendar() + + + /** + * Return the Array Return Type (Array or Value of first element in the array) + * + * @access public + * @return string $returnType Array return type + */ + public static function getArrayReturnType() { + return self::$returnArrayAsType; + } // function getExcelCalendar() + + + /** + * Is calculation caching enabled? + * + * @access public + * @return boolean + */ + public function getCalculationCacheEnabled() { + return self::$_calculationCacheEnabled; + } // function getCalculationCacheEnabled() + + + /** + * Enable/disable calculation cache + * + * @access public + * @param boolean $pValue + */ + public function setCalculationCacheEnabled($pValue = true) { + self::$_calculationCacheEnabled = $pValue; + $this->clearCalculationCache(); + } // function setCalculationCacheEnabled() + + + /** + * Enable calculation cache + */ + public function enableCalculationCache() { + $this->setCalculationCacheEnabled(true); + } // function enableCalculationCache() + + + /** + * Disable calculation cache + */ + public function disableCalculationCache() { + $this->setCalculationCacheEnabled(false); + } // function disableCalculationCache() + + + /** + * Clear calculation cache + */ + public function clearCalculationCache() { + self::$_calculationCache = array(); + } // function clearCalculationCache() + + + /** + * Get calculation cache expiration time + * + * @return float + */ + public function getCalculationCacheExpirationTime() { + return self::$_calculationCacheExpirationTime; + } // getCalculationCacheExpirationTime() + + + /** + * Set calculation cache expiration time + * + * @param float $pValue + */ + public function setCalculationCacheExpirationTime($pValue = 15) { + self::$_calculationCacheExpirationTime = $pValue; + } // function setCalculationCacheExpirationTime() + + + + + /** + * Get the currently defined locale code + * + * @return string + */ + public function getLocale() { + return self::$_localeLanguage; + } // function getLocale() + + + /** + * Set the locale code + * + * @return boolean + */ + public function setLocale($locale='en_us') { + // Identify our locale and language + $language = $locale = strtolower($locale); + if (strpos($locale,'_') !== false) { + list($language) = explode('_',$locale); + } + + // Test whether we have any language data for this language (any locale) + if (in_array($language,self::$_validLocaleLanguages)) { + // initialise language/locale settings + self::$_localeFunctions = array(); + self::$_localeArgumentSeparator = ','; + self::$_localeBoolean = array('TRUE' => 'TRUE', 'FALSE' => 'FALSE', 'NULL' => 'NULL'); + // Default is English, if user isn't requesting english, then read the necessary data from the locale files + if ($locale != 'en_us') { + // Search for a file with a list of function names for locale + $functionNamesFile = PHPEXCEL_ROOT . 'PHPExcel'.DIRECTORY_SEPARATOR.'locale'.DIRECTORY_SEPARATOR.str_replace('_',DIRECTORY_SEPARATOR,$locale).DIRECTORY_SEPARATOR.'functions'; + if (!file_exists($functionNamesFile)) { + // If there isn't a locale specific function file, look for a language specific function file + $functionNamesFile = PHPEXCEL_ROOT . 'PHPExcel'.DIRECTORY_SEPARATOR.'locale'.DIRECTORY_SEPARATOR.$language.DIRECTORY_SEPARATOR.'functions'; + if (!file_exists($functionNamesFile)) { + return false; + } + } + // Retrieve the list of locale or language specific function names + $localeFunctions = file($functionNamesFile,FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); + foreach ($localeFunctions as $localeFunction) { + list($localeFunction) = explode('##',$localeFunction); // Strip out comments + if (strpos($localeFunction,'=') !== false) { + list($fName,$lfName) = explode('=',$localeFunction); + $fName = trim($fName); + $lfName = trim($lfName); + if ((isset(self::$_PHPExcelFunctions[$fName])) && ($lfName != '') && ($fName != $lfName)) { + self::$_localeFunctions[$fName] = $lfName; + } + } + } + // Default the TRUE and FALSE constants to the locale names of the TRUE() and FALSE() functions + if (isset(self::$_localeFunctions['TRUE'])) { self::$_localeBoolean['TRUE'] = self::$_localeFunctions['TRUE']; } + if (isset(self::$_localeFunctions['FALSE'])) { self::$_localeBoolean['FALSE'] = self::$_localeFunctions['FALSE']; } + + $configFile = PHPEXCEL_ROOT . 'PHPExcel'.DIRECTORY_SEPARATOR.'locale'.DIRECTORY_SEPARATOR.str_replace('_',DIRECTORY_SEPARATOR,$locale).DIRECTORY_SEPARATOR.'config'; + if (!file_exists($configFile)) { + $configFile = PHPEXCEL_ROOT . 'PHPExcel'.DIRECTORY_SEPARATOR.'locale'.DIRECTORY_SEPARATOR.$language.DIRECTORY_SEPARATOR.'config'; + } + if (file_exists($configFile)) { + $localeSettings = file($configFile,FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); + foreach ($localeSettings as $localeSetting) { + list($localeSetting) = explode('##',$localeSetting); // Strip out comments + if (strpos($localeSetting,'=') !== false) { + list($settingName,$settingValue) = explode('=',$localeSetting); + $settingName = strtoupper(trim($settingName)); + switch ($settingName) { + case 'ARGUMENTSEPARATOR' : + self::$_localeArgumentSeparator = trim($settingValue); + break; + } + } + } + } + } + + self::$functionReplaceFromExcel = self::$functionReplaceToExcel = + self::$functionReplaceFromLocale = self::$functionReplaceToLocale = null; + self::$_localeLanguage = $locale; + return true; + } + return false; + } // function setLocale() + + + + public static function _translateSeparator($fromSeparator,$toSeparator,$formula,&$inBraces) { + $strlen = mb_strlen($formula); + for ($i = 0; $i < $strlen; ++$i) { + $chr = mb_substr($formula,$i,1); + switch ($chr) { + case '{' : $inBraces = true; + break; + case '}' : $inBraces = false; + break; + case $fromSeparator : + if (!$inBraces) { + $formula = mb_substr($formula,0,$i).$toSeparator.mb_substr($formula,$i+1); + } + } + } + return $formula; + } + + private static function _translateFormula($from,$to,$formula,$fromSeparator,$toSeparator) { + // Convert any Excel function names to the required language + if (self::$_localeLanguage !== 'en_us') { + $inBraces = false; + // If there is the possibility of braces within a quoted string, then we don't treat those as matrix indicators + if (strpos($formula,'"') !== false) { + // So instead we skip replacing in any quoted strings by only replacing in every other array element after we've exploded + // the formula + $temp = explode('"',$formula); + $i = false; + foreach($temp as &$value) { + // Only count/replace in alternating array entries + if ($i = !$i) { + $value = preg_replace($from,$to,$value); + $value = self::_translateSeparator($fromSeparator,$toSeparator,$value,$inBraces); + } + } + unset($value); + // Then rebuild the formula string + $formula = implode('"',$temp); + } else { + // If there's no quoted strings, then we do a simple count/replace + $formula = preg_replace($from,$to,$formula); + $formula = self::_translateSeparator($fromSeparator,$toSeparator,$formula,$inBraces); + } + } + + return $formula; + } + + private static $functionReplaceFromExcel = null; + private static $functionReplaceToLocale = null; + + public function _translateFormulaToLocale($formula) { + if (self::$functionReplaceFromExcel === NULL) { + self::$functionReplaceFromExcel = array(); + foreach(array_keys(self::$_localeFunctions) as $excelFunctionName) { + self::$functionReplaceFromExcel[] = '/(@?[^\w\.])'.preg_quote($excelFunctionName).'([\s]*\()/Ui'; + } + foreach(array_keys(self::$_localeBoolean) as $excelBoolean) { + self::$functionReplaceFromExcel[] = '/(@?[^\w\.])'.preg_quote($excelBoolean).'([^\w\.])/Ui'; + } + + } + + if (self::$functionReplaceToLocale === NULL) { + self::$functionReplaceToLocale = array(); + foreach(array_values(self::$_localeFunctions) as $localeFunctionName) { + self::$functionReplaceToLocale[] = '$1'.trim($localeFunctionName).'$2'; + } + foreach(array_values(self::$_localeBoolean) as $localeBoolean) { + self::$functionReplaceToLocale[] = '$1'.trim($localeBoolean).'$2'; + } + } + + return self::_translateFormula(self::$functionReplaceFromExcel,self::$functionReplaceToLocale,$formula,',',self::$_localeArgumentSeparator); + } // function _translateFormulaToLocale() + + + private static $functionReplaceFromLocale = null; + private static $functionReplaceToExcel = null; + + public function _translateFormulaToEnglish($formula) { + if (self::$functionReplaceFromLocale === NULL) { + self::$functionReplaceFromLocale = array(); + foreach(array_values(self::$_localeFunctions) as $localeFunctionName) { + self::$functionReplaceFromLocale[] = '/(@?[^\w\.])'.preg_quote($localeFunctionName).'([\s]*\()/Ui'; + } + foreach(array_values(self::$_localeBoolean) as $excelBoolean) { + self::$functionReplaceFromLocale[] = '/(@?[^\w\.])'.preg_quote($excelBoolean).'([^\w\.])/Ui'; + } + } + + if (self::$functionReplaceToExcel === NULL) { + self::$functionReplaceToExcel = array(); + foreach(array_keys(self::$_localeFunctions) as $excelFunctionName) { + self::$functionReplaceToExcel[] = '$1'.trim($excelFunctionName).'$2'; + } + foreach(array_keys(self::$_localeBoolean) as $excelBoolean) { + self::$functionReplaceToExcel[] = '$1'.trim($excelBoolean).'$2'; + } + } + + return self::_translateFormula(self::$functionReplaceFromLocale,self::$functionReplaceToExcel,$formula,self::$_localeArgumentSeparator,','); + } // function _translateFormulaToEnglish() + + + public static function _localeFunc($function) { + if (self::$_localeLanguage !== 'en_us') { + $functionName = trim($function,'('); + if (isset(self::$_localeFunctions[$functionName])) { + $brace = ($functionName != $function); + $function = self::$_localeFunctions[$functionName]; + if ($brace) { $function .= '('; } + } + } + return $function; + } + + + + + /** + * Wrap string values in quotes + * + * @param mixed $value + * @return mixed + */ + public static function _wrapResult($value) { + if (is_string($value)) { + // Error values cannot be "wrapped" + if (preg_match('/^'.self::CALCULATION_REGEXP_ERROR.'$/i', $value, $match)) { + // Return Excel errors "as is" + return $value; + } + // Return strings wrapped in quotes + return '"'.$value.'"'; + // Convert numeric errors to NaN error + } else if((is_float($value)) && ((is_nan($value)) || (is_infinite($value)))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return $value; + } // function _wrapResult() + + + /** + * Remove quotes used as a wrapper to identify string values + * + * @param mixed $value + * @return mixed + */ + public static function _unwrapResult($value) { + if (is_string($value)) { + if ((isset($value{0})) && ($value{0} == '"') && (substr($value,-1) == '"')) { + return substr($value,1,-1); + } + // Convert numeric errors to NaN error + } else if((is_float($value)) && ((is_nan($value)) || (is_infinite($value)))) { + return PHPExcel_Calculation_Functions::NaN(); + } + return $value; + } // function _unwrapResult() + + + + + /** + * Calculate cell value (using formula from a cell ID) + * Retained for backward compatibility + * + * @access public + * @param PHPExcel_Cell $pCell Cell to calculate + * @return mixed + * @throws Exception + */ + public function calculate(PHPExcel_Cell $pCell = null) { + try { + return $this->calculateCellValue($pCell); + } catch (Exception $e) { + throw(new Exception($e->getMessage())); + } + } // function calculate() + + + /** + * Calculate the value of a cell formula + * + * @access public + * @param PHPExcel_Cell $pCell Cell to calculate + * @param Boolean $resetLog Flag indicating whether the debug log should be reset or not + * @return mixed + * @throws Exception + */ + public function calculateCellValue(PHPExcel_Cell $pCell = null, $resetLog = true) { + if ($resetLog) { + // Initialise the logging settings if requested + $this->formulaError = null; + $this->debugLog = $this->debugLogStack = array(); + $this->_cyclicFormulaCount = 1; + + $returnArrayAsType = self::$returnArrayAsType; + self::$returnArrayAsType = self::RETURN_ARRAY_AS_ARRAY; + } + + // Read the formula from the cell + if ($pCell === NULL) { + return NULL; + } + + if ($resetLog) { + self::$returnArrayAsType = $returnArrayAsType; + } + // Execute the calculation for the cell formula + try { + $result = self::_unwrapResult($this->_calculateFormulaValue($pCell->getValue(), $pCell->getCoordinate(), $pCell)); + } catch (Exception $e) { + throw(new Exception($e->getMessage())); + } + + if ((is_array($result)) && (self::$returnArrayAsType != self::RETURN_ARRAY_AS_ARRAY)) { + $testResult = PHPExcel_Calculation_Functions::flattenArray($result); + if (self::$returnArrayAsType == self::RETURN_ARRAY_AS_ERROR) { + return PHPExcel_Calculation_Functions::VALUE(); + } + // If there's only a single cell in the array, then we allow it + if (count($testResult) != 1) { + // If keys are numeric, then it's a matrix result rather than a cell range result, so we permit it + $r = array_keys($result); + $r = array_shift($r); + if (!is_numeric($r)) { return PHPExcel_Calculation_Functions::VALUE(); } + if (is_array($result[$r])) { + $c = array_keys($result[$r]); + $c = array_shift($c); + if (!is_numeric($c)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + } + $result = array_shift($testResult); + } + + if ($result === NULL) { + return 0; + } elseif((is_float($result)) && ((is_nan($result)) || (is_infinite($result)))) { + return PHPExcel_Calculation_Functions::NaN(); + } + return $result; + } // function calculateCellValue( + + + /** + * Validate and parse a formula string + * + * @param string $formula Formula to parse + * @return array + * @throws Exception + */ + public function parseFormula($formula) { + // Basic validation that this is indeed a formula + // We return an empty array if not + $formula = trim($formula); + if ((!isset($formula{0})) || ($formula{0} != '=')) return array(); + $formula = ltrim(substr($formula,1)); + if (!isset($formula{0})) return array(); + + // Parse the formula and return the token stack + return $this->_parseFormula($formula); + } // function parseFormula() + + + /** + * Calculate the value of a formula + * + * @param string $formula Formula to parse + * @return mixed + * @throws Exception + */ + public function calculateFormula($formula, $cellID=null, PHPExcel_Cell $pCell = null) { + // Initialise the logging settings + $this->formulaError = null; + $this->debugLog = $this->debugLogStack = array(); + + // Disable calculation cacheing because it only applies to cell calculations, not straight formulae + // But don't actually flush any cache + $resetCache = $this->getCalculationCacheEnabled(); + self::$_calculationCacheEnabled = false; + // Execute the calculation + try { + $result = self::_unwrapResult($this->_calculateFormulaValue($formula, $cellID, $pCell)); + } catch (Exception $e) { + throw(new Exception($e->getMessage())); + } + + // Reset calculation cacheing to its previous state + self::$_calculationCacheEnabled = $resetCache; + + return $result; + } // function calculateFormula() + + + /** + * Parse a cell formula and calculate its value + * + * @param string $formula The formula to parse and calculate + * @param string $cellID The ID (e.g. A3) of the cell that we are calculating + * @param PHPExcel_Cell $pCell Cell to calculate + * @return mixed + * @throws Exception + */ + public function _calculateFormulaValue($formula, $cellID=null, PHPExcel_Cell $pCell = null) { +// echo '<b>'.$cellID.'</b><br />'; + $cellValue = ''; + + // Basic validation that this is indeed a formula + // We simply return the "cell value" (formula) if not + $formula = trim($formula); + if ($formula{0} != '=') return self::_wrapResult($formula); + $formula = ltrim(substr($formula,1)); + if (!isset($formula{0})) return self::_wrapResult($formula); + + $wsTitle = "\x00Wrk"; + if ($pCell !== NULL) { + $pCellParent = $pCell->getParent(); + if ($pCellParent !== NULL) { + $wsTitle = $pCellParent->getTitle(); + } + } + // Is calculation cacheing enabled? + if ($cellID !== NULL) { + if (self::$_calculationCacheEnabled) { + // Is the value present in calculation cache? +// echo 'Testing cache value<br />'; + if (isset(self::$_calculationCache[$wsTitle][$cellID])) { +// echo 'Value is in cache<br />'; + $this->_writeDebug('Testing cache value for cell '.$cellID); + // Is cache still valid? + if ((microtime(true) - self::$_calculationCache[$wsTitle][$cellID]['time']) < self::$_calculationCacheExpirationTime) { +// echo 'Cache time is still valid<br />'; + $this->_writeDebug('Retrieving value for '.$cellID.' from cache'); + // Return the cached result + $returnValue = self::$_calculationCache[$wsTitle][$cellID]['data']; +// echo 'Retrieving data value of '.$returnValue.' for '.$cellID.' from cache<br />'; + if (is_array($returnValue)) { + $returnValue = PHPExcel_Calculation_Functions::flattenArray($returnValue); + return array_shift($returnValue); + } + return $returnValue; + } else { +// echo 'Cache has expired<br />'; + $this->_writeDebug('Cache value for '.$cellID.' has expired'); + // Clear the cache if it's no longer valid + unset(self::$_calculationCache[$wsTitle][$cellID]); + } + } + } + } + + if ((in_array($wsTitle.'!'.$cellID,$this->debugLogStack)) && ($wsTitle != "\x00Wrk")) { + if ($this->cyclicFormulaCount <= 0) { + return $this->_raiseFormulaError('Cyclic Reference in Formula'); + } elseif (($this->_cyclicFormulaCount >= $this->cyclicFormulaCount) && + ($this->_cyclicFormulaCell == $wsTitle.'!'.$cellID)) { + return $cellValue; + } elseif ($this->_cyclicFormulaCell == $wsTitle.'!'.$cellID) { + ++$this->_cyclicFormulaCount; + if ($this->_cyclicFormulaCount >= $this->cyclicFormulaCount) { + return $cellValue; + } + } elseif ($this->_cyclicFormulaCell == '') { + $this->_cyclicFormulaCell = $wsTitle.'!'.$cellID; + if ($this->_cyclicFormulaCount >= $this->cyclicFormulaCount) { + return $cellValue; + } + } + } + $this->debugLogStack[] = $wsTitle.'!'.$cellID; + // Parse the formula onto the token stack and calculate the value + $cellValue = $this->_processTokenStack($this->_parseFormula($formula, $pCell), $cellID, $pCell); + array_pop($this->debugLogStack); + + // Save to calculation cache + if ($cellID !== NULL) { + if (self::$_calculationCacheEnabled) { + self::$_calculationCache[$wsTitle][$cellID]['time'] = microtime(true); + self::$_calculationCache[$wsTitle][$cellID]['data'] = $cellValue; + } + } + + // Return the calculated value + return $cellValue; + } // function _calculateFormulaValue() + + + /** + * Ensure that paired matrix operands are both matrices and of the same size + * + * @param mixed &$operand1 First matrix operand + * @param mixed &$operand2 Second matrix operand + * @param integer $resize Flag indicating whether the matrices should be resized to match + * and (if so), whether the smaller dimension should grow or the + * larger should shrink. + * 0 = no resize + * 1 = shrink to fit + * 2 = extend to fit + */ + private static function _checkMatrixOperands(&$operand1,&$operand2,$resize = 1) { + // Examine each of the two operands, and turn them into an array if they aren't one already + // Note that this function should only be called if one or both of the operand is already an array + if (!is_array($operand1)) { + list($matrixRows,$matrixColumns) = self::_getMatrixDimensions($operand2); + $operand1 = array_fill(0,$matrixRows,array_fill(0,$matrixColumns,$operand1)); + $resize = 0; + } elseif (!is_array($operand2)) { + list($matrixRows,$matrixColumns) = self::_getMatrixDimensions($operand1); + $operand2 = array_fill(0,$matrixRows,array_fill(0,$matrixColumns,$operand2)); + $resize = 0; + } + + list($matrix1Rows,$matrix1Columns) = self::_getMatrixDimensions($operand1); + list($matrix2Rows,$matrix2Columns) = self::_getMatrixDimensions($operand2); + if (($matrix1Rows == $matrix2Columns) && ($matrix2Rows == $matrix1Columns)) { + $resize = 1; + } + + if ($resize == 2) { + // Given two matrices of (potentially) unequal size, convert the smaller in each dimension to match the larger + self::_resizeMatricesExtend($operand1,$operand2,$matrix1Rows,$matrix1Columns,$matrix2Rows,$matrix2Columns); + } elseif ($resize == 1) { + // Given two matrices of (potentially) unequal size, convert the larger in each dimension to match the smaller + self::_resizeMatricesShrink($operand1,$operand2,$matrix1Rows,$matrix1Columns,$matrix2Rows,$matrix2Columns); + } + return array( $matrix1Rows,$matrix1Columns,$matrix2Rows,$matrix2Columns); + } // function _checkMatrixOperands() + + + /** + * Read the dimensions of a matrix, and re-index it with straight numeric keys starting from row 0, column 0 + * + * @param mixed &$matrix matrix operand + * @return array An array comprising the number of rows, and number of columns + */ + public static function _getMatrixDimensions(&$matrix) { + $matrixRows = count($matrix); + $matrixColumns = 0; + foreach($matrix as $rowKey => $rowValue) { + $matrixColumns = max(count($rowValue),$matrixColumns); + if (!is_array($rowValue)) { + $matrix[$rowKey] = array($rowValue); + } else { + $matrix[$rowKey] = array_values($rowValue); + } + } + $matrix = array_values($matrix); + return array($matrixRows,$matrixColumns); + } // function _getMatrixDimensions() + + + /** + * Ensure that paired matrix operands are both matrices of the same size + * + * @param mixed &$matrix1 First matrix operand + * @param mixed &$matrix2 Second matrix operand + */ + private static function _resizeMatricesShrink(&$matrix1,&$matrix2,$matrix1Rows,$matrix1Columns,$matrix2Rows,$matrix2Columns) { + if (($matrix2Columns < $matrix1Columns) || ($matrix2Rows < $matrix1Rows)) { + if ($matrix2Columns < $matrix1Columns) { + for ($i = 0; $i < $matrix1Rows; ++$i) { + for ($j = $matrix2Columns; $j < $matrix1Columns; ++$j) { + unset($matrix1[$i][$j]); + } + } + } + if ($matrix2Rows < $matrix1Rows) { + for ($i = $matrix2Rows; $i < $matrix1Rows; ++$i) { + unset($matrix1[$i]); + } + } + } + + if (($matrix1Columns < $matrix2Columns) || ($matrix1Rows < $matrix2Rows)) { + if ($matrix1Columns < $matrix2Columns) { + for ($i = 0; $i < $matrix2Rows; ++$i) { + for ($j = $matrix1Columns; $j < $matrix2Columns; ++$j) { + unset($matrix2[$i][$j]); + } + } + } + if ($matrix1Rows < $matrix2Rows) { + for ($i = $matrix1Rows; $i < $matrix2Rows; ++$i) { + unset($matrix2[$i]); + } + } + } + } // function _resizeMatricesShrink() + + + /** + * Ensure that paired matrix operands are both matrices of the same size + * + * @param mixed &$matrix1 First matrix operand + * @param mixed &$matrix2 Second matrix operand + */ + private static function _resizeMatricesExtend(&$matrix1,&$matrix2,$matrix1Rows,$matrix1Columns,$matrix2Rows,$matrix2Columns) { + if (($matrix2Columns < $matrix1Columns) || ($matrix2Rows < $matrix1Rows)) { + if ($matrix2Columns < $matrix1Columns) { + for ($i = 0; $i < $matrix2Rows; ++$i) { + $x = $matrix2[$i][$matrix2Columns-1]; + for ($j = $matrix2Columns; $j < $matrix1Columns; ++$j) { + $matrix2[$i][$j] = $x; + } + } + } + if ($matrix2Rows < $matrix1Rows) { + $x = $matrix2[$matrix2Rows-1]; + for ($i = 0; $i < $matrix1Rows; ++$i) { + $matrix2[$i] = $x; + } + } + } + + if (($matrix1Columns < $matrix2Columns) || ($matrix1Rows < $matrix2Rows)) { + if ($matrix1Columns < $matrix2Columns) { + for ($i = 0; $i < $matrix1Rows; ++$i) { + $x = $matrix1[$i][$matrix1Columns-1]; + for ($j = $matrix1Columns; $j < $matrix2Columns; ++$j) { + $matrix1[$i][$j] = $x; + } + } + } + if ($matrix1Rows < $matrix2Rows) { + $x = $matrix1[$matrix1Rows-1]; + for ($i = 0; $i < $matrix2Rows; ++$i) { + $matrix1[$i] = $x; + } + } + } + } // function _resizeMatricesExtend() + + + /** + * Format details of an operand for display in the log (based on operand type) + * + * @param mixed $value First matrix operand + * @return mixed + */ + private function _showValue($value) { + if ($this->writeDebugLog) { + $testArray = PHPExcel_Calculation_Functions::flattenArray($value); + if (count($testArray) == 1) { + $value = array_pop($testArray); + } + + if (is_array($value)) { + $returnMatrix = array(); + $pad = $rpad = ', '; + foreach($value as $row) { + if (is_array($row)) { + $returnMatrix[] = implode($pad,array_map(array($this,'_showValue'),$row)); + $rpad = '; '; + } else { + $returnMatrix[] = $this->_showValue($row); + } + } + return '{ '.implode($rpad,$returnMatrix).' }'; + } elseif(is_string($value) && (trim($value,'"') == $value)) { + return '"'.$value.'"'; + } elseif(is_bool($value)) { + return ($value) ? self::$_localeBoolean['TRUE'] : self::$_localeBoolean['FALSE']; + } + } + return PHPExcel_Calculation_Functions::flattenSingleValue($value); + } // function _showValue() + + + /** + * Format type and details of an operand for display in the log (based on operand type) + * + * @param mixed $value First matrix operand + * @return mixed + */ + private function _showTypeDetails($value) { + if ($this->writeDebugLog) { + $testArray = PHPExcel_Calculation_Functions::flattenArray($value); + if (count($testArray) == 1) { + $value = array_pop($testArray); + } + + if ($value === NULL) { + return 'a NULL value'; + } elseif (is_float($value)) { + $typeString = 'a floating point number'; + } elseif(is_int($value)) { + $typeString = 'an integer number'; + } elseif(is_bool($value)) { + $typeString = 'a boolean'; + } elseif(is_array($value)) { + $typeString = 'a matrix'; + } else { + if ($value == '') { + return 'an empty string'; + } elseif ($value{0} == '#') { + return 'a '.$value.' error'; + } else { + $typeString = 'a string'; + } + } + return $typeString.' with a value of '.$this->_showValue($value); + } + } // function _showTypeDetails() + + + private static function _convertMatrixReferences($formula) { + static $matrixReplaceFrom = array('{',';','}'); + static $matrixReplaceTo = array('MKMATRIX(MKMATRIX(','),MKMATRIX(','))'); + + // Convert any Excel matrix references to the MKMATRIX() function + if (strpos($formula,'{') !== false) { + // If there is the possibility of braces within a quoted string, then we don't treat those as matrix indicators + if (strpos($formula,'"') !== false) { + // So instead we skip replacing in any quoted strings by only replacing in every other array element after we've exploded + // the formula + $temp = explode('"',$formula); + // Open and Closed counts used for trapping mismatched braces in the formula + $openCount = $closeCount = 0; + $i = false; + foreach($temp as &$value) { + // Only count/replace in alternating array entries + if ($i = !$i) { + $openCount += substr_count($value,'{'); + $closeCount += substr_count($value,'}'); + $value = str_replace($matrixReplaceFrom,$matrixReplaceTo,$value); + } + } + unset($value); + // Then rebuild the formula string + $formula = implode('"',$temp); + } else { + // If there's no quoted strings, then we do a simple count/replace + $openCount = substr_count($formula,'{'); + $closeCount = substr_count($formula,'}'); + $formula = str_replace($matrixReplaceFrom,$matrixReplaceTo,$formula); + } + // Trap for mismatched braces and trigger an appropriate error + if ($openCount < $closeCount) { + if ($openCount > 0) { + return $this->_raiseFormulaError("Formula Error: Mismatched matrix braces '}'"); + } else { + return $this->_raiseFormulaError("Formula Error: Unexpected '}' encountered"); + } + } elseif ($openCount > $closeCount) { + if ($closeCount > 0) { + return $this->_raiseFormulaError("Formula Error: Mismatched matrix braces '{'"); + } else { + return $this->_raiseFormulaError("Formula Error: Unexpected '{' encountered"); + } + } + } + + return $formula; + } // function _convertMatrixReferences() + + + private static function _mkMatrix() { + return func_get_args(); + } // function _mkMatrix() + + + // Convert infix to postfix notation + private function _parseFormula($formula, PHPExcel_Cell $pCell = null) { + if (($formula = self::_convertMatrixReferences(trim($formula))) === false) { + return FALSE; + } + + // If we're using cell caching, then $pCell may well be flushed back to the cache (which detaches the parent worksheet), + // so we store the parent worksheet so that we can re-attach it when necessary + $pCellParent = ($pCell !== NULL) ? $pCell->getParent() : NULL; + + // Binary Operators + // These operators always work on two values + // Array key is the operator, the value indicates whether this is a left or right associative operator + $operatorAssociativity = array('^' => 0, // Exponentiation + '*' => 0, '/' => 0, // Multiplication and Division + '+' => 0, '-' => 0, // Addition and Subtraction + '&' => 0, // Concatenation + '|' => 0, ':' => 0, // Intersect and Range + '>' => 0, '<' => 0, '=' => 0, '>=' => 0, '<=' => 0, '<>' => 0 // Comparison + ); + // Comparison (Boolean) Operators + // These operators work on two values, but always return a boolean result + $comparisonOperators = array('>' => true, '<' => true, '=' => true, '>=' => true, '<=' => true, '<>' => true); + + // Operator Precedence + // This list includes all valid operators, whether binary (including boolean) or unary (such as %) + // Array key is the operator, the value is its precedence + $operatorPrecedence = array(':' => 8, // Range + '|' => 7, // Intersect + '~' => 6, // Negation + '%' => 5, // Percentage + '^' => 4, // Exponentiation + '*' => 3, '/' => 3, // Multiplication and Division + '+' => 2, '-' => 2, // Addition and Subtraction + '&' => 1, // Concatenation + '>' => 0, '<' => 0, '=' => 0, '>=' => 0, '<=' => 0, '<>' => 0 // Comparison + ); + + $regexpMatchString = '/^('.self::CALCULATION_REGEXP_FUNCTION. + '|'.self::CALCULATION_REGEXP_NUMBER. + '|'.self::CALCULATION_REGEXP_STRING. + '|'.self::CALCULATION_REGEXP_OPENBRACE. + '|'.self::CALCULATION_REGEXP_CELLREF. + '|'.self::CALCULATION_REGEXP_NAMEDRANGE. + '|'.self::CALCULATION_REGEXP_ERROR. + ')/si'; + + // Start with initialisation + $index = 0; + $stack = new PHPExcel_Calculation_Token_Stack; + $output = array(); + $expectingOperator = false; // We use this test in syntax-checking the expression to determine when a + // - is a negation or + is a positive operator rather than an operation + $expectingOperand = false; // We use this test in syntax-checking the expression to determine whether an operand + // should be null in a function call + // The guts of the lexical parser + // Loop through the formula extracting each operator and operand in turn + while(true) { +// echo 'Assessing Expression <b>'.substr($formula, $index).'</b><br />'; + $opCharacter = $formula{$index}; // Get the first character of the value at the current index position +// echo 'Initial character of expression block is '.$opCharacter.'<br />'; + if ((isset($comparisonOperators[$opCharacter])) && (strlen($formula) > $index) && (isset($comparisonOperators[$formula{$index+1}]))) { + $opCharacter .= $formula{++$index}; +// echo 'Initial character of expression block is comparison operator '.$opCharacter.'<br />'; + } + + // Find out if we're currently at the beginning of a number, variable, cell reference, function, parenthesis or operand + $isOperandOrFunction = preg_match($regexpMatchString, substr($formula, $index), $match); +// echo '$isOperandOrFunction is '.(($isOperandOrFunction) ? 'True' : 'False').'<br />'; +// var_dump($match); + + if ($opCharacter == '-' && !$expectingOperator) { // Is it a negation instead of a minus? +// echo 'Element is a Negation operator<br />'; + $stack->push('Unary Operator','~'); // Put a negation on the stack + ++$index; // and drop the negation symbol + } elseif ($opCharacter == '%' && $expectingOperator) { +// echo 'Element is a Percentage operator<br />'; + $stack->push('Unary Operator','%'); // Put a percentage on the stack + ++$index; + } elseif ($opCharacter == '+' && !$expectingOperator) { // Positive (unary plus rather than binary operator plus) can be discarded? +// echo 'Element is a Positive number, not Plus operator<br />'; + ++$index; // Drop the redundant plus symbol + } elseif ((($opCharacter == '~') || ($opCharacter == '|')) && (!$isOperandOrFunction)) { // We have to explicitly deny a tilde or pipe, because they are legal + return $this->_raiseFormulaError("Formula Error: Illegal character '~'"); // on the stack but not in the input expression + + } elseif ((isset(self::$_operators[$opCharacter]) or $isOperandOrFunction) && $expectingOperator) { // Are we putting an operator on the stack? +// echo 'Element with value '.$opCharacter.' is an Operator<br />'; + while($stack->count() > 0 && + ($o2 = $stack->last()) && + isset(self::$_operators[$o2['value']]) && + @($operatorAssociativity[$opCharacter] ? $operatorPrecedence[$opCharacter] < $operatorPrecedence[$o2['value']] : $operatorPrecedence[$opCharacter] <= $operatorPrecedence[$o2['value']])) { + $output[] = $stack->pop(); // Swap operands and higher precedence operators from the stack to the output + } + $stack->push('Binary Operator',$opCharacter); // Finally put our current operator onto the stack + ++$index; + $expectingOperator = false; + + } elseif ($opCharacter == ')' && $expectingOperator) { // Are we expecting to close a parenthesis? +// echo 'Element is a Closing bracket<br />'; + $expectingOperand = false; + while (($o2 = $stack->pop()) && $o2['value'] != '(') { // Pop off the stack back to the last ( + if ($o2 === NULL) return $this->_raiseFormulaError('Formula Error: Unexpected closing brace ")"'); + else $output[] = $o2; + } + $d = $stack->last(2); + if (preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $d['value'], $matches)) { // Did this parenthesis just close a function? + $functionName = $matches[1]; // Get the function name +// echo 'Closed Function is '.$functionName.'<br />'; + $d = $stack->pop(); + $argumentCount = $d['value']; // See how many arguments there were (argument count is the next value stored on the stack) +// if ($argumentCount == 0) { +// echo 'With no arguments<br />'; +// } elseif ($argumentCount == 1) { +// echo 'With 1 argument<br />'; +// } else { +// echo 'With '.$argumentCount.' arguments<br />'; +// } + $output[] = $d; // Dump the argument count on the output + $output[] = $stack->pop(); // Pop the function and push onto the output + if (isset(self::$_controlFunctions[$functionName])) { +// echo 'Built-in function '.$functionName.'<br />'; + $expectedArgumentCount = self::$_controlFunctions[$functionName]['argumentCount']; + $functionCall = self::$_controlFunctions[$functionName]['functionCall']; + } elseif (isset(self::$_PHPExcelFunctions[$functionName])) { +// echo 'PHPExcel function '.$functionName.'<br />'; + $expectedArgumentCount = self::$_PHPExcelFunctions[$functionName]['argumentCount']; + $functionCall = self::$_PHPExcelFunctions[$functionName]['functionCall']; + } else { // did we somehow push a non-function on the stack? this should never happen + return $this->_raiseFormulaError("Formula Error: Internal error, non-function on stack"); + } + // Check the argument count + $argumentCountError = false; + if (is_numeric($expectedArgumentCount)) { + if ($expectedArgumentCount < 0) { +// echo '$expectedArgumentCount is between 0 and '.abs($expectedArgumentCount).'<br />'; + if ($argumentCount > abs($expectedArgumentCount)) { + $argumentCountError = true; + $expectedArgumentCountString = 'no more than '.abs($expectedArgumentCount); + } + } else { +// echo '$expectedArgumentCount is numeric '.$expectedArgumentCount.'<br />'; + if ($argumentCount != $expectedArgumentCount) { + $argumentCountError = true; + $expectedArgumentCountString = $expectedArgumentCount; + } + } + } elseif ($expectedArgumentCount != '*') { + $isOperandOrFunction = preg_match('/(\d*)([-+,])(\d*)/',$expectedArgumentCount,$argMatch); +// print_r($argMatch); +// echo '<br />'; + switch ($argMatch[2]) { + case '+' : + if ($argumentCount < $argMatch[1]) { + $argumentCountError = true; + $expectedArgumentCountString = $argMatch[1].' or more '; + } + break; + case '-' : + if (($argumentCount < $argMatch[1]) || ($argumentCount > $argMatch[3])) { + $argumentCountError = true; + $expectedArgumentCountString = 'between '.$argMatch[1].' and '.$argMatch[3]; + } + break; + case ',' : + if (($argumentCount != $argMatch[1]) && ($argumentCount != $argMatch[3])) { + $argumentCountError = true; + $expectedArgumentCountString = 'either '.$argMatch[1].' or '.$argMatch[3]; + } + break; + } + } + if ($argumentCountError) { + return $this->_raiseFormulaError("Formula Error: Wrong number of arguments for $functionName() function: $argumentCount given, ".$expectedArgumentCountString." expected"); + } + } + ++$index; + + } elseif ($opCharacter == ',') { // Is this the separator for function arguments? +// echo 'Element is a Function argument separator<br />'; + while (($o2 = $stack->pop()) && $o2['value'] != '(') { // Pop off the stack back to the last ( + if ($o2 === NULL) return $this->_raiseFormulaError("Formula Error: Unexpected ,"); + else $output[] = $o2; // pop the argument expression stuff and push onto the output + } + // If we've a comma when we're expecting an operand, then what we actually have is a null operand; + // so push a null onto the stack + if (($expectingOperand) || (!$expectingOperator)) { + $output[] = array('type' => 'NULL Value', 'value' => self::$_ExcelConstants['NULL'], 'reference' => null); + } + // make sure there was a function + $d = $stack->last(2); + if (!preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $d['value'], $matches)) + return $this->_raiseFormulaError("Formula Error: Unexpected ,"); + $d = $stack->pop(); + $stack->push($d['type'],++$d['value'],$d['reference']); // increment the argument count + $stack->push('Brace', '('); // put the ( back on, we'll need to pop back to it again + $expectingOperator = false; + $expectingOperand = true; + ++$index; + + } elseif ($opCharacter == '(' && !$expectingOperator) { +// echo 'Element is an Opening Bracket<br />'; + $stack->push('Brace', '('); + ++$index; + + } elseif ($isOperandOrFunction && !$expectingOperator) { // do we now have a function/variable/number? + $expectingOperator = true; + $expectingOperand = false; + $val = $match[1]; + $length = strlen($val); +// echo 'Element with value '.$val.' is an Operand, Variable, Constant, String, Number, Cell Reference or Function<br />'; + + if (preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $val, $matches)) { + $val = preg_replace('/\s/','',$val); +// echo 'Element '.$val.' is a Function<br />'; + if (isset(self::$_PHPExcelFunctions[strtoupper($matches[1])]) || isset(self::$_controlFunctions[strtoupper($matches[1])])) { // it's a function + $stack->push('Function', strtoupper($val)); + $ax = preg_match('/^\s*(\s*\))/i', substr($formula, $index+$length), $amatch); + if ($ax) { + $stack->push('Operand Count for Function '.strtoupper($val).')', 0); + $expectingOperator = true; + } else { + $stack->push('Operand Count for Function '.strtoupper($val).')', 1); + $expectingOperator = false; + } + $stack->push('Brace', '('); + } else { // it's a var w/ implicit multiplication + $output[] = array('type' => 'Value', 'value' => $matches[1], 'reference' => null); + } + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'$/i', $val, $matches)) { +// echo 'Element '.$val.' is a Cell reference<br />'; + // Watch for this case-change when modifying to allow cell references in different worksheets... + // Should only be applied to the actual cell column, not the worksheet name + + // If the last entry on the stack was a : operator, then we have a cell range reference + $testPrevOp = $stack->last(1); + if ($testPrevOp['value'] == ':') { + // If we have a worksheet reference, then we're playing with a 3D reference + if ($matches[2] == '') { + // Otherwise, we 'inherit' the worksheet reference from the start cell reference + // The start of the cell range reference should be the last entry in $output + $startCellRef = $output[count($output)-1]['value']; + preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'$/i', $startCellRef, $startMatches); + if ($startMatches[2] > '') { + $val = $startMatches[2].'!'.$val; + } + } else { + return $this->_raiseFormulaError("3D Range references are not yet supported"); + } + } + + $output[] = array('type' => 'Cell Reference', 'value' => $val, 'reference' => $val); +// $expectingOperator = false; + } else { // it's a variable, constant, string, number or boolean +// echo 'Element is a Variable, Constant, String, Number or Boolean<br />'; + // If the last entry on the stack was a : operator, then we may have a row or column range reference + $testPrevOp = $stack->last(1); + if ($testPrevOp['value'] == ':') { + $startRowColRef = $output[count($output)-1]['value']; + $rangeWS1 = ''; + if (strpos('!',$startRowColRef) !== false) { + list($rangeWS1,$startRowColRef) = explode('!',$startRowColRef); + } + if ($rangeWS1 != '') $rangeWS1 .= '!'; + $rangeWS2 = $rangeWS1; + if (strpos('!',$val) !== false) { + list($rangeWS2,$val) = explode('!',$val); + } + if ($rangeWS2 != '') $rangeWS2 .= '!'; + if ((is_integer($startRowColRef)) && (ctype_digit($val)) && + ($startRowColRef <= 1048576) && ($val <= 1048576)) { + // Row range + $endRowColRef = ($pCellParent !== NULL) ? $pCellParent->getHighestColumn() : 'XFD'; // Max 16,384 columns for Excel2007 + $output[count($output)-1]['value'] = $rangeWS1.'A'.$startRowColRef; + $val = $rangeWS2.$endRowColRef.$val; + } elseif ((ctype_alpha($startRowColRef)) && (ctype_alpha($val)) && + (strlen($startRowColRef) <= 3) && (strlen($val) <= 3)) { + // Column range + $endRowColRef = ($pCellParent !== NULL) ? $pCellParent->getHighestRow() : 1048576; // Max 1,048,576 rows for Excel2007 + $output[count($output)-1]['value'] = $rangeWS1.strtoupper($startRowColRef).'1'; + $val = $rangeWS2.$val.$endRowColRef; + } + } + + $localeConstant = false; + if ($opCharacter == '"') { +// echo 'Element is a String<br />'; + // UnEscape any quotes within the string + $val = self::_wrapResult(str_replace('""','"',self::_unwrapResult($val))); + } elseif (is_numeric($val)) { +// echo 'Element is a Number<br />'; + if ((strpos($val,'.') !== false) || (stripos($val,'e') !== false) || ($val > PHP_INT_MAX) || ($val < -PHP_INT_MAX)) { +// echo 'Casting '.$val.' to float<br />'; + $val = (float) $val; + } else { +// echo 'Casting '.$val.' to integer<br />'; + $val = (integer) $val; + } + } elseif (isset(self::$_ExcelConstants[trim(strtoupper($val))])) { + $excelConstant = trim(strtoupper($val)); +// echo 'Element '.$excelConstant.' is an Excel Constant<br />'; + $val = self::$_ExcelConstants[$excelConstant]; + } elseif (($localeConstant = array_search(trim(strtoupper($val)), self::$_localeBoolean)) !== false) { +// echo 'Element '.$localeConstant.' is an Excel Constant<br />'; + $val = self::$_ExcelConstants[$localeConstant]; + } + $details = array('type' => 'Value', 'value' => $val, 'reference' => null); + if ($localeConstant) { $details['localeValue'] = $localeConstant; } + $output[] = $details; + } + $index += $length; + + } elseif ($opCharacter == '$') { // absolute row or column range + ++$index; + } elseif ($opCharacter == ')') { // miscellaneous error checking + if ($expectingOperand) { + $output[] = array('type' => 'NULL Value', 'value' => self::$_ExcelConstants['NULL'], 'reference' => null); + $expectingOperand = false; + $expectingOperator = true; + } else { + return $this->_raiseFormulaError("Formula Error: Unexpected ')'"); + } + } elseif (isset(self::$_operators[$opCharacter]) && !$expectingOperator) { + return $this->_raiseFormulaError("Formula Error: Unexpected operator '$opCharacter'"); + } else { // I don't even want to know what you did to get here + return $this->_raiseFormulaError("Formula Error: An unexpected error occured"); + } + // Test for end of formula string + if ($index == strlen($formula)) { + // Did we end with an operator?. + // Only valid for the % unary operator + if ((isset(self::$_operators[$opCharacter])) && ($opCharacter != '%')) { + return $this->_raiseFormulaError("Formula Error: Operator '$opCharacter' has no operands"); + } else { + break; + } + } + // Ignore white space + while (($formula{$index} == "\n") || ($formula{$index} == "\r")) { + ++$index; + } + if ($formula{$index} == ' ') { + while ($formula{$index} == ' ') { + ++$index; + } + // If we're expecting an operator, but only have a space between the previous and next operands (and both are + // Cell References) then we have an INTERSECTION operator +// echo 'Possible Intersect Operator<br />'; + if (($expectingOperator) && (preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'.*/Ui', substr($formula, $index), $match)) && + ($output[count($output)-1]['type'] == 'Cell Reference')) { +// echo 'Element is an Intersect Operator<br />'; + while($stack->count() > 0 && + ($o2 = $stack->last()) && + isset(self::$_operators[$o2['value']]) && + @($operatorAssociativity[$opCharacter] ? $operatorPrecedence[$opCharacter] < $operatorPrecedence[$o2['value']] : $operatorPrecedence[$opCharacter] <= $operatorPrecedence[$o2['value']])) { + $output[] = $stack->pop(); // Swap operands and higher precedence operators from the stack to the output + } + $stack->push('Binary Operator','|'); // Put an Intersect Operator on the stack + $expectingOperator = false; + } + } + } + + while (($op = $stack->pop()) !== NULL) { // pop everything off the stack and push onto output + if ((is_array($opCharacter) && $opCharacter['value'] == '(') || ($opCharacter === '(')) + return $this->_raiseFormulaError("Formula Error: Expecting ')'"); // if there are any opening braces on the stack, then braces were unbalanced + $output[] = $op; + } + return $output; + } // function _parseFormula() + + + private static function _dataTestReference(&$operandData) + { + $operand = $operandData['value']; + if (($operandData['reference'] === NULL) && (is_array($operand))) { + $rKeys = array_keys($operand); + $rowKey = array_shift($rKeys); + $cKeys = array_keys(array_keys($operand[$rowKey])); + $colKey = array_shift($cKeys); + if (ctype_upper($colKey)) { + $operandData['reference'] = $colKey.$rowKey; + } + } + return $operand; + } + + // evaluate postfix notation + private function _processTokenStack($tokens, $cellID = null, PHPExcel_Cell $pCell = null) { + if ($tokens == false) return false; + + // If we're using cell caching, then $pCell may well be flushed back to the cache (which detaches the parent worksheet), + // so we store the parent worksheet so that we can re-attach it when necessary + $pCellParent = ($pCell !== NULL) ? $pCell->getParent() : null; + $stack = new PHPExcel_Calculation_Token_Stack; + + // Loop through each token in turn + foreach ($tokens as $tokenData) { +// print_r($tokenData); +// echo '<br />'; + $token = $tokenData['value']; +// echo '<b>Token is '.$token.'</b><br />'; + // if the token is a binary operator, pop the top two values off the stack, do the operation, and push the result back on the stack + if (isset(self::$_binaryOperators[$token])) { +// echo 'Token is a binary operator<br />'; + // We must have two operands, error if we don't + if (($operand2Data = $stack->pop()) === NULL) return $this->_raiseFormulaError('Internal error - Operand value missing from stack'); + if (($operand1Data = $stack->pop()) === NULL) return $this->_raiseFormulaError('Internal error - Operand value missing from stack'); + + $operand1 = self::_dataTestReference($operand1Data); + $operand2 = self::_dataTestReference($operand2Data); + + // Log what we're doing + if ($token == ':') { + $this->_writeDebug('Evaluating Range '.$this->_showValue($operand1Data['reference']).$token.$this->_showValue($operand2Data['reference'])); + } else { + $this->_writeDebug('Evaluating '.$this->_showValue($operand1).' '.$token.' '.$this->_showValue($operand2)); + } + + // Process the operation in the appropriate manner + switch ($token) { + // Comparison (Boolean) Operators + case '>' : // Greater than + case '<' : // Less than + case '>=' : // Greater than or Equal to + case '<=' : // Less than or Equal to + case '=' : // Equality + case '<>' : // Inequality + $this->_executeBinaryComparisonOperation($cellID,$operand1,$operand2,$token,$stack); + break; + // Binary Operators + case ':' : // Range + $sheet1 = $sheet2 = ''; + if (strpos($operand1Data['reference'],'!') !== false) { + list($sheet1,$operand1Data['reference']) = explode('!',$operand1Data['reference']); + } else { + $sheet1 = ($pCellParent !== NULL) ? $pCellParent->getTitle() : ''; + } + if (strpos($operand2Data['reference'],'!') !== false) { + list($sheet2,$operand2Data['reference']) = explode('!',$operand2Data['reference']); + } else { + $sheet2 = $sheet1; + } + if ($sheet1 == $sheet2) { + if ($operand1Data['reference'] === NULL) { + if ((trim($operand1Data['value']) != '') && (is_numeric($operand1Data['value']))) { + $operand1Data['reference'] = $pCell->getColumn().$operand1Data['value']; + } elseif (trim($operand1Data['reference']) == '') { + $operand1Data['reference'] = $pCell->getCoordinate(); + } else { + $operand1Data['reference'] = $operand1Data['value'].$pCell->getRow(); + } + } + if ($operand2Data['reference'] === NULL) { + if ((trim($operand2Data['value']) != '') && (is_numeric($operand2Data['value']))) { + $operand2Data['reference'] = $pCell->getColumn().$operand2Data['value']; + } elseif (trim($operand2Data['reference']) == '') { + $operand2Data['reference'] = $pCell->getCoordinate(); + } else { + $operand2Data['reference'] = $operand2Data['value'].$pCell->getRow(); + } + } + + $oData = array_merge(explode(':',$operand1Data['reference']),explode(':',$operand2Data['reference'])); + $oCol = $oRow = array(); + foreach($oData as $oDatum) { + $oCR = PHPExcel_Cell::coordinateFromString($oDatum); + $oCol[] = PHPExcel_Cell::columnIndexFromString($oCR[0]) - 1; + $oRow[] = $oCR[1]; + } + $cellRef = PHPExcel_Cell::stringFromColumnIndex(min($oCol)).min($oRow).':'.PHPExcel_Cell::stringFromColumnIndex(max($oCol)).max($oRow); + if ($pCellParent !== NULL) { + $cellValue = $this->extractCellRange($cellRef, $pCellParent->getParent()->getSheetByName($sheet1), false); + } else { + return $this->_raiseFormulaError('Unable to access Cell Reference'); + } + $stack->push('Cell Reference',$cellValue,$cellRef); + } else { + $stack->push('Error',PHPExcel_Calculation_Functions::REF(),null); + } + + break; + case '+' : // Addition + $this->_executeNumericBinaryOperation($cellID,$operand1,$operand2,$token,'plusEquals',$stack); + break; + case '-' : // Subtraction + $this->_executeNumericBinaryOperation($cellID,$operand1,$operand2,$token,'minusEquals',$stack); + break; + case '*' : // Multiplication + $this->_executeNumericBinaryOperation($cellID,$operand1,$operand2,$token,'arrayTimesEquals',$stack); + break; + case '/' : // Division + $this->_executeNumericBinaryOperation($cellID,$operand1,$operand2,$token,'arrayRightDivide',$stack); + break; + case '^' : // Exponential + $this->_executeNumericBinaryOperation($cellID,$operand1,$operand2,$token,'power',$stack); + break; + case '&' : // Concatenation + // If either of the operands is a matrix, we need to treat them both as matrices + // (converting the other operand to a matrix if need be); then perform the required + // matrix operation + if (is_bool($operand1)) { + $operand1 = ($operand1) ? self::$_localeBoolean['TRUE'] : self::$_localeBoolean['FALSE']; + } + if (is_bool($operand2)) { + $operand2 = ($operand2) ? self::$_localeBoolean['TRUE'] : self::$_localeBoolean['FALSE']; + } + if ((is_array($operand1)) || (is_array($operand2))) { + // Ensure that both operands are arrays/matrices + self::_checkMatrixOperands($operand1,$operand2,2); + try { + // Convert operand 1 from a PHP array to a matrix + $matrix = new PHPExcel_Shared_JAMA_Matrix($operand1); + // Perform the required operation against the operand 1 matrix, passing in operand 2 + $matrixResult = $matrix->concat($operand2); + $result = $matrixResult->getArray(); + } catch (Exception $ex) { + $this->_writeDebug('JAMA Matrix Exception: '.$ex->getMessage()); + $result = '#VALUE!'; + } + } else { + $result = '"'.str_replace('""','"',self::_unwrapResult($operand1,'"').self::_unwrapResult($operand2,'"')).'"'; + } + $this->_writeDebug('Evaluation Result is '.$this->_showTypeDetails($result)); + $stack->push('Value',$result); + break; + case '|' : // Intersect + $rowIntersect = array_intersect_key($operand1,$operand2); + $cellIntersect = $oCol = $oRow = array(); + foreach(array_keys($rowIntersect) as $row) { + $oRow[] = $row; + foreach($rowIntersect[$row] as $col => $data) { + $oCol[] = PHPExcel_Cell::columnIndexFromString($col) - 1; + $cellIntersect[$row] = array_intersect_key($operand1[$row],$operand2[$row]); + } + } + $cellRef = PHPExcel_Cell::stringFromColumnIndex(min($oCol)).min($oRow).':'.PHPExcel_Cell::stringFromColumnIndex(max($oCol)).max($oRow); + $this->_writeDebug('Evaluation Result is '.$this->_showTypeDetails($cellIntersect)); + $stack->push('Value',$cellIntersect,$cellRef); + break; + } + + // if the token is a unary operator, pop one value off the stack, do the operation, and push it back on + } elseif (($token === '~') || ($token === '%')) { +// echo 'Token is a unary operator<br />'; + if (($arg = $stack->pop()) === NULL) return $this->_raiseFormulaError('Internal error - Operand value missing from stack'); + $arg = $arg['value']; + if ($token === '~') { +// echo 'Token is a negation operator<br />'; + $this->_writeDebug('Evaluating Negation of '.$this->_showValue($arg)); + $multiplier = -1; + } else { +// echo 'Token is a percentile operator<br />'; + $this->_writeDebug('Evaluating Percentile of '.$this->_showValue($arg)); + $multiplier = 0.01; + } + if (is_array($arg)) { + self::_checkMatrixOperands($arg,$multiplier,2); + try { + $matrix1 = new PHPExcel_Shared_JAMA_Matrix($arg); + $matrixResult = $matrix1->arrayTimesEquals($multiplier); + $result = $matrixResult->getArray(); + } catch (Exception $ex) { + $this->_writeDebug('JAMA Matrix Exception: '.$ex->getMessage()); + $result = '#VALUE!'; + } + $this->_writeDebug('Evaluation Result is '.$this->_showTypeDetails($result)); + $stack->push('Value',$result); + } else { + $this->_executeNumericBinaryOperation($cellID,$multiplier,$arg,'*','arrayTimesEquals',$stack); + } + + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'$/i', $token, $matches)) { + $cellRef = null; +// echo 'Element '.$token.' is a Cell reference<br />'; + if (isset($matches[8])) { +// echo 'Reference is a Range of cells<br />'; + if ($pCell === NULL) { +// We can't access the range, so return a REF error + $cellValue = PHPExcel_Calculation_Functions::REF(); + } else { + $cellRef = $matches[6].$matches[7].':'.$matches[9].$matches[10]; + if ($matches[2] > '') { + $matches[2] = trim($matches[2],"\"'"); + if ((strpos($matches[2],'[') !== false) || (strpos($matches[2],']') !== false)) { + // It's a Reference to an external workbook (not currently supported) + return $this->_raiseFormulaError('Unable to access External Workbook'); + } + $matches[2] = trim($matches[2],"\"'"); +// echo '$cellRef='.$cellRef.' in worksheet '.$matches[2].'<br />'; + $this->_writeDebug('Evaluating Cell Range '.$cellRef.' in worksheet '.$matches[2]); + if ($pCellParent !== NULL) { + $cellValue = $this->extractCellRange($cellRef, $pCellParent->getParent()->getSheetByName($matches[2]), false); + } else { + return $this->_raiseFormulaError('Unable to access Cell Reference'); + } + $this->_writeDebug('Evaluation Result for cells '.$cellRef.' in worksheet '.$matches[2].' is '.$this->_showTypeDetails($cellValue)); +// $cellRef = $matches[2].'!'.$cellRef; + } else { +// echo '$cellRef='.$cellRef.' in current worksheet<br />'; + $this->_writeDebug('Evaluating Cell Range '.$cellRef.' in current worksheet'); + if ($pCellParent !== NULL) { + $cellValue = $this->extractCellRange($cellRef, $pCellParent, false); + } else { + return $this->_raiseFormulaError('Unable to access Cell Reference'); + } + $this->_writeDebug('Evaluation Result for cells '.$cellRef.' is '.$this->_showTypeDetails($cellValue)); + } + } + } else { +// echo 'Reference is a single Cell<br />'; + if ($pCell === NULL) { +// We can't access the cell, so return a REF error + $cellValue = PHPExcel_Calculation_Functions::REF(); + } else { + $cellRef = $matches[6].$matches[7]; + if ($matches[2] > '') { + $matches[2] = trim($matches[2],"\"'"); + if ((strpos($matches[2],'[') !== false) || (strpos($matches[2],']') !== false)) { + // It's a Reference to an external workbook (not currently supported) + return $this->_raiseFormulaError('Unable to access External Workbook'); + } +// echo '$cellRef='.$cellRef.' in worksheet '.$matches[2].'<br />'; + $this->_writeDebug('Evaluating Cell '.$cellRef.' in worksheet '.$matches[2]); + if ($pCellParent !== NULL) { + if ($pCellParent->getParent()->getSheetByName($matches[2])->cellExists($cellRef)) { + $cellValue = $this->extractCellRange($cellRef, $pCellParent->getParent()->getSheetByName($matches[2]), false); + $pCell->attach($pCellParent); + } else { + $cellValue = null; + } + } else { + return $this->_raiseFormulaError('Unable to access Cell Reference'); + } + $this->_writeDebug('Evaluation Result for cell '.$cellRef.' in worksheet '.$matches[2].' is '.$this->_showTypeDetails($cellValue)); +// $cellRef = $matches[2].'!'.$cellRef; + } else { +// echo '$cellRef='.$cellRef.' in current worksheet<br />'; + $this->_writeDebug('Evaluating Cell '.$cellRef.' in current worksheet'); + if ($pCellParent->cellExists($cellRef)) { + $cellValue = $this->extractCellRange($cellRef, $pCellParent, false); + $pCell->attach($pCellParent); + } else { + $cellValue = null; + } + $this->_writeDebug('Evaluation Result for cell '.$cellRef.' is '.$this->_showTypeDetails($cellValue)); + } + } + } + $stack->push('Value',$cellValue,$cellRef); + + // if the token is a function, pop arguments off the stack, hand them to the function, and push the result back on + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $token, $matches)) { +// echo 'Token is a function<br />'; + $functionName = $matches[1]; + $argCount = $stack->pop(); + $argCount = $argCount['value']; + if ($functionName != 'MKMATRIX') { + $this->_writeDebug('Evaluating Function '.self::_localeFunc($functionName).'() with '.(($argCount == 0) ? 'no' : $argCount).' argument'.(($argCount == 1) ? '' : 's')); + } + if ((isset(self::$_PHPExcelFunctions[$functionName])) || (isset(self::$_controlFunctions[$functionName]))) { // function + if (isset(self::$_PHPExcelFunctions[$functionName])) { + $functionCall = self::$_PHPExcelFunctions[$functionName]['functionCall']; + $passByReference = isset(self::$_PHPExcelFunctions[$functionName]['passByReference']); + $passCellReference = isset(self::$_PHPExcelFunctions[$functionName]['passCellReference']); + } elseif (isset(self::$_controlFunctions[$functionName])) { + $functionCall = self::$_controlFunctions[$functionName]['functionCall']; + $passByReference = isset(self::$_controlFunctions[$functionName]['passByReference']); + $passCellReference = isset(self::$_controlFunctions[$functionName]['passCellReference']); + } + // get the arguments for this function +// echo 'Function '.$functionName.' expects '.$argCount.' arguments<br />'; + $args = $argArrayVals = array(); + for ($i = 0; $i < $argCount; ++$i) { + $arg = $stack->pop(); + $a = $argCount - $i - 1; + if (($passByReference) && + (isset(self::$_PHPExcelFunctions[$functionName]['passByReference'][$a])) && + (self::$_PHPExcelFunctions[$functionName]['passByReference'][$a])) { + if ($arg['reference'] === NULL) { + $args[] = $cellID; + if ($functionName != 'MKMATRIX') { $argArrayVals[] = $this->_showValue($cellID); } + } else { + $args[] = $arg['reference']; + if ($functionName != 'MKMATRIX') { $argArrayVals[] = $this->_showValue($arg['reference']); } + } + } else { + $args[] = self::_unwrapResult($arg['value']); + if ($functionName != 'MKMATRIX') { $argArrayVals[] = $this->_showValue($arg['value']); } + } + } + // Reverse the order of the arguments + krsort($args); + if (($passByReference) && ($argCount == 0)) { + $args[] = $cellID; + $argArrayVals[] = $this->_showValue($cellID); + } +// echo 'Arguments are: '; +// print_r($args); +// echo '<br />'; + if ($functionName != 'MKMATRIX') { + if ($this->writeDebugLog) { + krsort($argArrayVals); + $this->_writeDebug('Evaluating '. self::_localeFunc($functionName).'( '.implode(self::$_localeArgumentSeparator.' ',PHPExcel_Calculation_Functions::flattenArray($argArrayVals)).' )'); + } + } + // Process each argument in turn, building the return value as an array +// if (($argCount == 1) && (is_array($args[1])) && ($functionName != 'MKMATRIX')) { +// $operand1 = $args[1]; +// $this->_writeDebug('Argument is a matrix: '.$this->_showValue($operand1)); +// $result = array(); +// $row = 0; +// foreach($operand1 as $args) { +// if (is_array($args)) { +// foreach($args as $arg) { +// $this->_writeDebug('Evaluating '.self::_localeFunc($functionName).'( '.$this->_showValue($arg).' )'); +// $r = call_user_func_array($functionCall,$arg); +// $this->_writeDebug('Evaluation Result for '.self::_localeFunc($functionName).'() function call is '.$this->_showTypeDetails($r)); +// $result[$row][] = $r; +// } +// ++$row; +// } else { +// $this->_writeDebug('Evaluating '.self::_localeFunc($functionName).'( '.$this->_showValue($args).' )'); +// $r = call_user_func_array($functionCall,$args); +// $this->_writeDebug('Evaluation Result for '.self::_localeFunc($functionName).'() function call is '.$this->_showTypeDetails($r)); +// $result[] = $r; +// } +// } +// } else { + // Process the argument with the appropriate function call + if ($passCellReference) { + $args[] = $pCell; + } + if (strpos($functionCall,'::') !== false) { + $result = call_user_func_array(explode('::',$functionCall),$args); + } else { + foreach($args as &$arg) { + $arg = PHPExcel_Calculation_Functions::flattenSingleValue($arg); + } + unset($arg); + $result = call_user_func_array($functionCall,$args); + } +// } + if ($functionName != 'MKMATRIX') { + $this->_writeDebug('Evaluation Result for '.self::_localeFunc($functionName).'() function call is '.$this->_showTypeDetails($result)); + } + $stack->push('Value',self::_wrapResult($result)); + } + + } else { + // if the token is a number, boolean, string or an Excel error, push it onto the stack + if (isset(self::$_ExcelConstants[strtoupper($token)])) { + $excelConstant = strtoupper($token); +// echo 'Token is a PHPExcel constant: '.$excelConstant.'<br />'; + $stack->push('Constant Value',self::$_ExcelConstants[$excelConstant]); + $this->_writeDebug('Evaluating Constant '.$excelConstant.' as '.$this->_showTypeDetails(self::$_ExcelConstants[$excelConstant])); + } elseif ((is_numeric($token)) || ($token === NULL) || (is_bool($token)) || ($token == '') || ($token{0} == '"') || ($token{0} == '#')) { +// echo 'Token is a number, boolean, string, null or an Excel error<br />'; + $stack->push('Value',$token); + // if the token is a named range, push the named range name onto the stack + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_NAMEDRANGE.'$/i', $token, $matches)) { +// echo 'Token is a named range<br />'; + $namedRange = $matches[6]; +// echo 'Named Range is '.$namedRange.'<br />'; + $this->_writeDebug('Evaluating Named Range '.$namedRange); + $cellValue = $this->extractNamedRange($namedRange, ((null !== $pCell) ? $pCellParent : null), false); + $pCell->attach($pCellParent); + $this->_writeDebug('Evaluation Result for named range '.$namedRange.' is '.$this->_showTypeDetails($cellValue)); + $stack->push('Named Range',$cellValue,$namedRange); + } else { + return $this->_raiseFormulaError("undefined variable '$token'"); + } + } + } + // when we're out of tokens, the stack should have a single element, the final result + if ($stack->count() != 1) return $this->_raiseFormulaError("internal error"); + $output = $stack->pop(); + $output = $output['value']; + +// if ((is_array($output)) && (self::$returnArrayAsType != self::RETURN_ARRAY_AS_ARRAY)) { +// return array_shift(PHPExcel_Calculation_Functions::flattenArray($output)); +// } + return $output; + } // function _processTokenStack() + + + private function _validateBinaryOperand($cellID,&$operand,&$stack) { + // Numbers, matrices and booleans can pass straight through, as they're already valid + if (is_string($operand)) { + // We only need special validations for the operand if it is a string + // Start by stripping off the quotation marks we use to identify true excel string values internally + if ($operand > '' && $operand{0} == '"') { $operand = self::_unwrapResult($operand); } + // If the string is a numeric value, we treat it as a numeric, so no further testing + if (!is_numeric($operand)) { + // If not a numeric, test to see if the value is an Excel error, and so can't be used in normal binary operations + if ($operand > '' && $operand{0} == '#') { + $stack->push('Value', $operand); + $this->_writeDebug('Evaluation Result is '.$this->_showTypeDetails($operand)); + return false; + } elseif (!PHPExcel_Shared_String::convertToNumberIfFraction($operand)) { + // If not a numeric or a fraction, then it's a text string, and so can't be used in mathematical binary operations + $stack->push('Value', '#VALUE!'); + $this->_writeDebug('Evaluation Result is a '.$this->_showTypeDetails('#VALUE!')); + return false; + } + } + } + + // return a true if the value of the operand is one that we can use in normal binary operations + return true; + } // function _validateBinaryOperand() + + + private function _executeBinaryComparisonOperation($cellID,$operand1,$operand2,$operation,&$stack,$recursingArrays=false) { + // If we're dealing with matrix operations, we want a matrix result + if ((is_array($operand1)) || (is_array($operand2))) { + $result = array(); + if ((is_array($operand1)) && (!is_array($operand2))) { + foreach($operand1 as $x => $operandData) { + $this->_writeDebug('Evaluating Comparison '.$this->_showValue($operandData).' '.$operation.' '.$this->_showValue($operand2)); + $this->_executeBinaryComparisonOperation($cellID,$operandData,$operand2,$operation,$stack); + $r = $stack->pop(); + $result[$x] = $r['value']; + } + } elseif ((!is_array($operand1)) && (is_array($operand2))) { + foreach($operand2 as $x => $operandData) { + $this->_writeDebug('Evaluating Comparison '.$this->_showValue($operand1).' '.$operation.' '.$this->_showValue($operandData)); + $this->_executeBinaryComparisonOperation($cellID,$operand1,$operandData,$operation,$stack); + $r = $stack->pop(); + $result[$x] = $r['value']; + } + } else { + if (!$recursingArrays) { self::_checkMatrixOperands($operand1,$operand2,2); } + foreach($operand1 as $x => $operandData) { + $this->_writeDebug('Evaluating Comparison '.$this->_showValue($operandData).' '.$operation.' '.$this->_showValue($operand2[$x])); + $this->_executeBinaryComparisonOperation($cellID,$operandData,$operand2[$x],$operation,$stack,true); + $r = $stack->pop(); + $result[$x] = $r['value']; + } + } + // Log the result details + $this->_writeDebug('Comparison Evaluation Result is '.$this->_showTypeDetails($result)); + // And push the result onto the stack + $stack->push('Array',$result); + return true; + } + + // Simple validate the two operands if they are string values + if (is_string($operand1) && $operand1 > '' && $operand1{0} == '"') { $operand1 = self::_unwrapResult($operand1); } + if (is_string($operand2) && $operand2 > '' && $operand2{0} == '"') { $operand2 = self::_unwrapResult($operand2); } + + // execute the necessary operation + switch ($operation) { + // Greater than + case '>': + $result = ($operand1 > $operand2); + break; + // Less than + case '<': + $result = ($operand1 < $operand2); + break; + // Equality + case '=': + $result = ($operand1 == $operand2); + break; + // Greater than or equal + case '>=': + $result = ($operand1 >= $operand2); + break; + // Less than or equal + case '<=': + $result = ($operand1 <= $operand2); + break; + // Inequality + case '<>': + $result = ($operand1 != $operand2); + break; + } + + // Log the result details + $this->_writeDebug('Evaluation Result is '.$this->_showTypeDetails($result)); + // And push the result onto the stack + $stack->push('Value',$result); + return true; + } // function _executeBinaryComparisonOperation() + + + private function _executeNumericBinaryOperation($cellID,$operand1,$operand2,$operation,$matrixFunction,&$stack) { + // Validate the two operands + if (!$this->_validateBinaryOperand($cellID,$operand1,$stack)) return false; + if (!$this->_validateBinaryOperand($cellID,$operand2,$stack)) return false; + + $executeMatrixOperation = false; + // If either of the operands is a matrix, we need to treat them both as matrices + // (converting the other operand to a matrix if need be); then perform the required + // matrix operation + if ((is_array($operand1)) || (is_array($operand2))) { + // Ensure that both operands are arrays/matrices + $executeMatrixOperation = true; + $mSize = array(); + list($mSize[],$mSize[],$mSize[],$mSize[]) = self::_checkMatrixOperands($operand1,$operand2,2); + + // But if they're both single cell matrices, then we can treat them as simple values + if (array_sum($mSize) == 4) { + $executeMatrixOperation = false; + $operand1 = $operand1[0][0]; + $operand2 = $operand2[0][0]; + } + } + + if ($executeMatrixOperation) { + try { + // Convert operand 1 from a PHP array to a matrix + $matrix = new PHPExcel_Shared_JAMA_Matrix($operand1); + // Perform the required operation against the operand 1 matrix, passing in operand 2 + $matrixResult = $matrix->$matrixFunction($operand2); + $result = $matrixResult->getArray(); + } catch (Exception $ex) { + $this->_writeDebug('JAMA Matrix Exception: '.$ex->getMessage()); + $result = '#VALUE!'; + } + } else { + if ((PHPExcel_Calculation_Functions::getCompatibilityMode() != PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) && + ((is_string($operand1) && !is_numeric($operand1)) || (is_string($operand2) && !is_numeric($operand2)))) { + $result = PHPExcel_Calculation_Functions::VALUE(); + } else { + // If we're dealing with non-matrix operations, execute the necessary operation + switch ($operation) { + // Addition + case '+': + $result = $operand1+$operand2; + break; + // Subtraction + case '-': + $result = $operand1-$operand2; + break; + // Multiplication + case '*': + $result = $operand1*$operand2; + break; + // Division + case '/': + if ($operand2 == 0) { + // Trap for Divide by Zero error + $stack->push('Value','#DIV/0!'); + $this->_writeDebug('Evaluation Result is '.$this->_showTypeDetails('#DIV/0!')); + return false; + } else { + $result = $operand1/$operand2; + } + break; + // Power + case '^': + $result = pow($operand1,$operand2); + break; + } + } + } + + // Log the result details + $this->_writeDebug('Evaluation Result is '.$this->_showTypeDetails($result)); + // And push the result onto the stack + $stack->push('Value',$result); + return true; + } // function _executeNumericBinaryOperation() + + + private function _writeDebug($message) { + // Only write the debug log if logging is enabled + if ($this->writeDebugLog) { + if ($this->echoDebugLog) { + echo implode(' -> ',$this->debugLogStack).' -> '.$message,'<br />'; + } + $this->debugLog[] = implode(' -> ',$this->debugLogStack).' -> '.$message; + } + } // function _writeDebug() + + + // trigger an error, but nicely, if need be + protected function _raiseFormulaError($errorMessage) { + $this->formulaError = $errorMessage; + $this->debugLogStack = array(); + if (!$this->suppressFormulaErrors) throw new Exception($errorMessage); + trigger_error($errorMessage, E_USER_ERROR); + } // function _raiseFormulaError() + + + /** + * Extract range values + * + * @param string &$pRange String based range representation + * @param PHPExcel_Worksheet $pSheet Worksheet + * @return mixed Array of values in range if range contains more than one element. Otherwise, a single value is returned. + * @throws Exception + */ + public function extractCellRange(&$pRange = 'A1', PHPExcel_Worksheet $pSheet = null, $resetLog=true) { + // Return value + $returnValue = array (); + +// echo 'extractCellRange('.$pRange.')<br />'; + if ($pSheet !== NULL) { +// echo 'Passed sheet name is '.$pSheet->getTitle().'<br />'; +// echo 'Range reference is '.$pRange.'<br />'; + if (strpos ($pRange, '!') !== false) { +// echo '$pRange reference includes sheet reference<br />'; + $worksheetReference = PHPExcel_Worksheet::extractSheetTitle($pRange, true); + $pSheet = $pSheet->getParent()->getSheetByName($worksheetReference[0]); +// echo 'New sheet name is '.$pSheet->getTitle().'<br />'; + $pRange = $worksheetReference[1]; +// echo 'Adjusted Range reference is '.$pRange.'<br />'; + } + + // Extract range + $aReferences = PHPExcel_Cell::extractAllCellReferencesInRange($pRange); + $pRange = $pSheet->getTitle().'!'.$pRange; + if (!isset($aReferences[1])) { + // Single cell in range + list($currentCol,$currentRow) = sscanf($aReferences[0],'%[A-Z]%d'); + if ($pSheet->cellExists($aReferences[0])) { + $returnValue[$currentRow][$currentCol] = $pSheet->getCell($aReferences[0])->getCalculatedValue($resetLog); + } else { + $returnValue[$currentRow][$currentCol] = null; + } + } else { + // Extract cell data for all cells in the range + foreach ($aReferences as $reference) { + // Extract range + list($currentCol,$currentRow) = sscanf($reference,'%[A-Z]%d'); + + if ($pSheet->cellExists($reference)) { + $returnValue[$currentRow][$currentCol] = $pSheet->getCell($reference)->getCalculatedValue($resetLog); + } else { + $returnValue[$currentRow][$currentCol] = null; + } + } + } + } + + // Return + return $returnValue; + } // function extractCellRange() + + + /** + * Extract range values + * + * @param string &$pRange String based range representation + * @param PHPExcel_Worksheet $pSheet Worksheet + * @return mixed Array of values in range if range contains more than one element. Otherwise, a single value is returned. + * @throws Exception + */ + public function extractNamedRange(&$pRange = 'A1', PHPExcel_Worksheet $pSheet = null, $resetLog=true) { + // Return value + $returnValue = array (); + +// echo 'extractNamedRange('.$pRange.')<br />'; + if ($pSheet !== NULL) { +// echo 'Current sheet name is '.$pSheet->getTitle().'<br />'; +// echo 'Range reference is '.$pRange.'<br />'; + if (strpos ($pRange, '!') !== false) { +// echo '$pRange reference includes sheet reference<br />'; + $worksheetReference = PHPExcel_Worksheet::extractSheetTitle($pRange, true); + $pSheet = $pSheet->getParent()->getSheetByName($worksheetReference[0]); +// echo 'New sheet name is '.$pSheet->getTitle().'<br />'; + $pRange = $worksheetReference[1]; +// echo 'Adjusted Range reference is '.$pRange.'<br />'; + } + + // Named range? + $namedRange = PHPExcel_NamedRange::resolveRange($pRange, $pSheet); + if ($namedRange !== NULL) { + $pSheet = $namedRange->getWorksheet(); +// echo 'Named Range '.$pRange.' ('; + $pRange = $namedRange->getRange(); + $splitRange = PHPExcel_Cell::splitRange($pRange); + // Convert row and column references + if (ctype_alpha($splitRange[0][0])) { + $pRange = $splitRange[0][0] . '1:' . $splitRange[0][1] . $namedRange->getWorksheet()->getHighestRow(); + } elseif(ctype_digit($splitRange[0][0])) { + $pRange = 'A' . $splitRange[0][0] . ':' . $namedRange->getWorksheet()->getHighestColumn() . $splitRange[0][1]; + } +// echo $pRange.') is in sheet '.$namedRange->getWorksheet()->getTitle().'<br />'; + +// if ($pSheet->getTitle() != $namedRange->getWorksheet()->getTitle()) { +// if (!$namedRange->getLocalOnly()) { +// $pSheet = $namedRange->getWorksheet(); +// } else { +// return $returnValue; +// } +// } + } else { + return PHPExcel_Calculation_Functions::REF(); + } + + // Extract range + $aReferences = PHPExcel_Cell::extractAllCellReferencesInRange($pRange); +// var_dump($aReferences); + if (!isset($aReferences[1])) { + // Single cell (or single column or row) in range + list($currentCol,$currentRow) = PHPExcel_Cell::coordinateFromString($aReferences[0]); + if ($pSheet->cellExists($aReferences[0])) { + $returnValue[$currentRow][$currentCol] = $pSheet->getCell($aReferences[0])->getCalculatedValue($resetLog); + } else { + $returnValue[$currentRow][$currentCol] = null; + } + } else { + // Extract cell data for all cells in the range + foreach ($aReferences as $reference) { + // Extract range + list($currentCol,$currentRow) = PHPExcel_Cell::coordinateFromString($reference); +// echo 'NAMED RANGE: $currentCol='.$currentCol.' $currentRow='.$currentRow.'<br />'; + if ($pSheet->cellExists($reference)) { + $returnValue[$currentRow][$currentCol] = $pSheet->getCell($reference)->getCalculatedValue($resetLog); + } else { + $returnValue[$currentRow][$currentCol] = null; + } + } + } +// print_r($returnValue); +// echo '<br />'; + } + + // Return + return $returnValue; + } // function extractNamedRange() + + + /** + * Is a specific function implemented? + * + * @param string $pFunction Function Name + * @return boolean + */ + public function isImplemented($pFunction = '') { + $pFunction = strtoupper ($pFunction); + if (isset(self::$_PHPExcelFunctions[$pFunction])) { + return (self::$_PHPExcelFunctions[$pFunction]['functionCall'] != 'PHPExcel_Calculation_Functions::DUMMY'); + } else { + return false; + } + } // function isImplemented() + + + /** + * Get a list of all implemented functions as an array of function objects + * + * @return array of PHPExcel_Calculation_Function + */ + public function listFunctions() { + // Return value + $returnValue = array(); + // Loop functions + foreach(self::$_PHPExcelFunctions as $functionName => $function) { + if ($function['functionCall'] != 'PHPExcel_Calculation_Functions::DUMMY') { + $returnValue[$functionName] = new PHPExcel_Calculation_Function($function['category'], + $functionName, + $function['functionCall'] + ); + } + } + + // Return + return $returnValue; + } // function listFunctions() + + + /** + * Get a list of all Excel function names + * + * @return array + */ + public function listAllFunctionNames() { + return array_keys(self::$_PHPExcelFunctions); + } // function listAllFunctionNames() + + /** + * Get a list of implemented Excel function names + * + * @return array + */ + public function listFunctionNames() { + // Return value + $returnValue = array(); + // Loop functions + foreach(self::$_PHPExcelFunctions as $functionName => $function) { + if ($function['functionCall'] != 'PHPExcel_Calculation_Functions::DUMMY') { + $returnValue[] = $functionName; + } + } + + // Return + return $returnValue; + } // function listFunctionNames() + +} // class PHPExcel_Calculation + diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/Database.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Database.php new file mode 100644 index 0000000..4a6c8f7 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Database.php @@ -0,0 +1,725 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** + * PHPExcel_Calculation_Database + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_Database { + + + /** + * __fieldExtract + * + * Extracts the column ID to use for the data field. + * + * @access private + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param mixed $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @return string|NULL + * + */ + private static function __fieldExtract($database,$field) { + $field = strtoupper(PHPExcel_Calculation_Functions::flattenSingleValue($field)); + $fieldNames = array_map('strtoupper',array_shift($database)); + + if (is_numeric($field)) { + $keys = array_keys($fieldNames); + return $keys[$field-1]; + } + $key = array_search($field,$fieldNames); + return ($key) ? $key : NULL; + } + + /** + * __filter + * + * Parses the selection criteria, extracts the database rows that match those criteria, and + * returns that subset of rows. + * + * @access private + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return array of mixed + * + */ + private static function __filter($database,$criteria) { + $fieldNames = array_shift($database); + $criteriaNames = array_shift($criteria); + + // Convert the criteria into a set of AND/OR conditions with [:placeholders] + $testConditions = $testValues = array(); + $testConditionsCount = 0; + foreach($criteriaNames as $key => $criteriaName) { + $testCondition = array(); + $testConditionCount = 0; + foreach($criteria as $row => $criterion) { + if ($criterion[$key] > '') { + $testCondition[] = '[:'.$criteriaName.']'.PHPExcel_Calculation_Functions::_ifCondition($criterion[$key]); + $testConditionCount++; + } + } + if ($testConditionCount > 1) { + $testConditions[] = 'OR('.implode(',',$testCondition).')'; + $testConditionsCount++; + } elseif($testConditionCount == 1) { + $testConditions[] = $testCondition[0]; + $testConditionsCount++; + } + } + + if ($testConditionsCount > 1) { + $testConditionSet = 'AND('.implode(',',$testConditions).')'; + } elseif($testConditionsCount == 1) { + $testConditionSet = $testConditions[0]; + } + + // Loop through each row of the database + foreach($database as $dataRow => $dataValues) { + // Substitute actual values from the database row for our [:placeholders] + $testConditionList = $testConditionSet; + foreach($criteriaNames as $key => $criteriaName) { + $k = array_search($criteriaName,$fieldNames); + if (isset($dataValues[$k])) { + $dataValue = $dataValues[$k]; + $dataValue = (is_string($dataValue)) ? PHPExcel_Calculation::_wrapResult(strtoupper($dataValue)) : $dataValue; + $testConditionList = str_replace('[:'.$criteriaName.']',$dataValue,$testConditionList); + } + } + // evaluate the criteria against the row data + $result = PHPExcel_Calculation::getInstance()->_calculateFormulaValue('='.$testConditionList); + // If the row failed to meet the criteria, remove it from the database + if (!$result) { + unset($database[$dataRow]); + } + } + + return $database; + } + + + /** + * DAVERAGE + * + * Averages the values in a column of a list or database that match conditions you specify. + * + * Excel Function: + * DAVERAGE(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DAVERAGE($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_Statistical::AVERAGE($colData); + } // function DAVERAGE() + + + /** + * DCOUNT + * + * Counts the cells that contain numbers in a column of a list or database that match conditions + * that you specify. + * + * Excel Function: + * DCOUNT(database,[field],criteria) + * + * Excel Function: + * DAVERAGE(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return integer + * + * @TODO The field argument is optional. If field is omitted, DCOUNT counts all records in the + * database that match the criteria. + * + */ + public static function DCOUNT($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_Statistical::COUNT($colData); + } // function DCOUNT() + + + /** + * DCOUNTA + * + * Counts the nonblank cells in a column of a list or database that match conditions that you specify. + * + * Excel Function: + * DCOUNTA(database,[field],criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return integer + * + * @TODO The field argument is optional. If field is omitted, DCOUNTA counts all records in the + * database that match the criteria. + * + */ + public static function DCOUNTA($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_Statistical::COUNTA($colData); + } // function DCOUNTA() + + + /** + * DGET + * + * Extracts a single value from a column of a list or database that matches conditions that you + * specify. + * + * Excel Function: + * DGET(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return mixed + * + */ + public static function DGET($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + if (count($colData) > 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return $colData[0]; + } // function DGET() + + + /** + * DMAX + * + * Returns the largest number in a column of a list or database that matches conditions you that + * specify. + * + * Excel Function: + * DMAX(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DMAX($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_Statistical::MAX($colData); + } // function DMAX() + + + /** + * DMIN + * + * Returns the smallest number in a column of a list or database that matches conditions you that + * specify. + * + * Excel Function: + * DMIN(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DMIN($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_Statistical::MIN($colData); + } // function DMIN() + + + /** + * DPRODUCT + * + * Multiplies the values in a column of a list or database that match conditions that you specify. + * + * Excel Function: + * DPRODUCT(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DPRODUCT($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_MathTrig::PRODUCT($colData); + } // function DPRODUCT() + + + /** + * DSTDEV + * + * Estimates the standard deviation of a population based on a sample by using the numbers in a + * column of a list or database that match conditions that you specify. + * + * Excel Function: + * DSTDEV(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DSTDEV($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_Statistical::STDEV($colData); + } // function DSTDEV() + + + /** + * DSTDEVP + * + * Calculates the standard deviation of a population based on the entire population by using the + * numbers in a column of a list or database that match conditions that you specify. + * + * Excel Function: + * DSTDEVP(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DSTDEVP($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_Statistical::STDEVP($colData); + } // function DSTDEVP() + + + /** + * DSUM + * + * Adds the numbers in a column of a list or database that match conditions that you specify. + * + * Excel Function: + * DSUM(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DSUM($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_MathTrig::SUM($colData); + } // function DSUM() + + + /** + * DVAR + * + * Estimates the variance of a population based on a sample by using the numbers in a column + * of a list or database that match conditions that you specify. + * + * Excel Function: + * DVAR(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DVAR($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_Statistical::VARFunc($colData); + } // function DVAR() + + + /** + * DVARP + * + * Calculates the variance of a population based on the entire population by using the numbers + * in a column of a list or database that match conditions that you specify. + * + * Excel Function: + * DVARP(database,field,criteria) + * + * @access public + * @category Database Functions + * @param mixed[] $database The range of cells that makes up the list or database. + * A database is a list of related data in which rows of related + * information are records, and columns of data are fields. The + * first row of the list contains labels for each column. + * @param string|integer $field Indicates which column is used in the function. Enter the + * column label enclosed between double quotation marks, such as + * "Age" or "Yield," or a number (without quotation marks) that + * represents the position of the column within the list: 1 for + * the first column, 2 for the second column, and so on. + * @param mixed[] $criteria The range of cells that contains the conditions you specify. + * You can use any range for the criteria argument, as long as it + * includes at least one column label and at least one cell below + * the column label in which you specify a condition for the + * column. + * @return float + * + */ + public static function DVARP($database,$field,$criteria) { + $field = self::__fieldExtract($database,$field); + if (is_null($field)) { + return NULL; + } + + // reduce the database to a set of rows that match all the criteria + $database = self::__filter($database,$criteria); + // extract an array of values for the requested column + $colData = array(); + foreach($database as $row) { + $colData[] = $row[$field]; + } + + // Return + return PHPExcel_Calculation_Statistical::VARP($colData); + } // function DVARP() + + +} // class PHPExcel_Calculation_Database diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/DateTime.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/DateTime.php new file mode 100644 index 0000000..3b5dc45 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/DateTime.php @@ -0,0 +1,1447 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** + * PHPExcel_Calculation_DateTime + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_DateTime { + + /** + * Identify if a year is a leap year or not + * + * @param integer $year The year to test + * @return boolean TRUE if the year is a leap year, otherwise FALSE + */ + public static function _isLeapYear($year) { + return ((($year % 4) == 0) && (($year % 100) != 0) || (($year % 400) == 0)); + } // function _isLeapYear() + + + private static function _dateDiff360($startDay, $startMonth, $startYear, $endDay, $endMonth, $endYear, $methodUS) { + if ($startDay == 31) { + --$startDay; + } elseif ($methodUS && ($startMonth == 2 && ($startDay == 29 || ($startDay == 28 && !self::_isLeapYear($startYear))))) { + $startDay = 30; + } + if ($endDay == 31) { + if ($methodUS && $startDay != 30) { + $endDay = 1; + if ($endMonth == 12) { + ++$endYear; + $endMonth = 1; + } else { + ++$endMonth; + } + } else { + $endDay = 30; + } + } + + return $endDay + $endMonth * 30 + $endYear * 360 - $startDay - $startMonth * 30 - $startYear * 360; + } // function _dateDiff360() + + + /** + * _getDateValue + * + * @param string $dateValue + * @return mixed Excel date/time serial value, or string if error + */ + public static function _getDateValue($dateValue) { + if (!is_numeric($dateValue)) { + if ((is_string($dateValue)) && + (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if ((is_object($dateValue)) && ($dateValue instanceof PHPExcel_Shared_Date::$dateTimeObjectType)) { + $dateValue = PHPExcel_Shared_Date::PHPToExcel($dateValue); + } else { + $saveReturnDateType = PHPExcel_Calculation_Functions::getReturnDateType(); + PHPExcel_Calculation_Functions::setReturnDateType(PHPExcel_Calculation_Functions::RETURNDATE_EXCEL); + $dateValue = self::DATEVALUE($dateValue); + PHPExcel_Calculation_Functions::setReturnDateType($saveReturnDateType); + } + } + return $dateValue; + } // function _getDateValue() + + + /** + * _getTimeValue + * + * @param string $timeValue + * @return mixed Excel date/time serial value, or string if error + */ + private static function _getTimeValue($timeValue) { + $saveReturnDateType = PHPExcel_Calculation_Functions::getReturnDateType(); + PHPExcel_Calculation_Functions::setReturnDateType(PHPExcel_Calculation_Functions::RETURNDATE_EXCEL); + $timeValue = self::TIMEVALUE($timeValue); + PHPExcel_Calculation_Functions::setReturnDateType($saveReturnDateType); + return $timeValue; + } // function _getTimeValue() + + + private static function _adjustDateByMonths($dateValue = 0, $adjustmentMonths = 0) { + // Execute function + $PHPDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($dateValue); + $oMonth = (int) $PHPDateObject->format('m'); + $oYear = (int) $PHPDateObject->format('Y'); + + $adjustmentMonthsString = (string) $adjustmentMonths; + if ($adjustmentMonths > 0) { + $adjustmentMonthsString = '+'.$adjustmentMonths; + } + if ($adjustmentMonths != 0) { + $PHPDateObject->modify($adjustmentMonthsString.' months'); + } + $nMonth = (int) $PHPDateObject->format('m'); + $nYear = (int) $PHPDateObject->format('Y'); + + $monthDiff = ($nMonth - $oMonth) + (($nYear - $oYear) * 12); + if ($monthDiff != $adjustmentMonths) { + $adjustDays = (int) $PHPDateObject->format('d'); + $adjustDaysString = '-'.$adjustDays.' days'; + $PHPDateObject->modify($adjustDaysString); + } + return $PHPDateObject; + } // function _adjustDateByMonths() + + + /** + * DATETIMENOW + * + * Returns the current date and time. + * The NOW function is useful when you need to display the current date and time on a worksheet or + * calculate a value based on the current date and time, and have that value updated each time you + * open the worksheet. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date + * and time format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * NOW() + * + * @access public + * @category Date/Time Functions + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function DATETIMENOW() { + $saveTimeZone = date_default_timezone_get(); + date_default_timezone_set('UTC'); + $retValue = False; + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL : + $retValue = (float) PHPExcel_Shared_Date::PHPToExcel(time()); + break; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC : + $retValue = (integer) time(); + break; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT : + $retValue = new DateTime(); + break; + } + date_default_timezone_set($saveTimeZone); + + return $retValue; + } // function DATETIMENOW() + + + /** + * DATENOW + * + * Returns the current date. + * The NOW function is useful when you need to display the current date and time on a worksheet or + * calculate a value based on the current date and time, and have that value updated each time you + * open the worksheet. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date + * and time format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * TODAY() + * + * @access public + * @category Date/Time Functions + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function DATENOW() { + $saveTimeZone = date_default_timezone_get(); + date_default_timezone_set('UTC'); + $retValue = False; + $excelDateTime = floor(PHPExcel_Shared_Date::PHPToExcel(time())); + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL : + $retValue = (float) $excelDateTime; + break; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC : + $retValue = (integer) PHPExcel_Shared_Date::ExcelToPHP($excelDateTime); + break; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT : + $retValue = PHPExcel_Shared_Date::ExcelToPHPObject($excelDateTime); + break; + } + date_default_timezone_set($saveTimeZone); + + return $retValue; + } // function DATENOW() + + + /** + * DATE + * + * The DATE function returns a value that represents a particular date. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date + * format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * DATE(year,month,day) + * + * @access public + * @category Date/Time Functions + * @param integer $year The value of the year argument can include one to four digits. + * Excel interprets the year argument according to the configured + * date system: 1900 or 1904. + * If year is between 0 (zero) and 1899 (inclusive), Excel adds that + * value to 1900 to calculate the year. For example, DATE(108,1,2) + * returns January 2, 2008 (1900+108). + * If year is between 1900 and 9999 (inclusive), Excel uses that + * value as the year. For example, DATE(2008,1,2) returns January 2, + * 2008. + * If year is less than 0 or is 10000 or greater, Excel returns the + * #NUM! error value. + * @param integer $month A positive or negative integer representing the month of the year + * from 1 to 12 (January to December). + * If month is greater than 12, month adds that number of months to + * the first month in the year specified. For example, DATE(2008,14,2) + * returns the serial number representing February 2, 2009. + * If month is less than 1, month subtracts the magnitude of that + * number of months, plus 1, from the first month in the year + * specified. For example, DATE(2008,-3,2) returns the serial number + * representing September 2, 2007. + * @param integer $day A positive or negative integer representing the day of the month + * from 1 to 31. + * If day is greater than the number of days in the month specified, + * day adds that number of days to the first day in the month. For + * example, DATE(2008,1,35) returns the serial number representing + * February 4, 2008. + * If day is less than 1, day subtracts the magnitude that number of + * days, plus one, from the first day of the month specified. For + * example, DATE(2008,1,-15) returns the serial number representing + * December 16, 2007. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function DATE($year = 0, $month = 1, $day = 1) { + $year = PHPExcel_Calculation_Functions::flattenSingleValue($year); + $month = PHPExcel_Calculation_Functions::flattenSingleValue($month); + $day = PHPExcel_Calculation_Functions::flattenSingleValue($day); + + $year = ($year !== NULL) ? PHPExcel_Shared_String::testStringAsNumeric($year) : 0; + $month = ($month !== NULL) ? PHPExcel_Shared_String::testStringAsNumeric($month) : 0; + $day = ($day !== NULL) ? PHPExcel_Shared_String::testStringAsNumeric($day) : 0; + if ((!is_numeric($year)) || + (!is_numeric($month)) || + (!is_numeric($day))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $year = (integer) $year; + $month = (integer) $month; + $day = (integer) $day; + + $baseYear = PHPExcel_Shared_Date::getExcelCalendar(); + // Validate parameters + if ($year < ($baseYear-1900)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((($baseYear-1900) != 0) && ($year < $baseYear) && ($year >= 1900)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + if (($year < $baseYear) && ($year >= ($baseYear-1900))) { + $year += 1900; + } + + if ($month < 1) { + // Handle year/month adjustment if month < 1 + --$month; + $year += ceil($month / 12) - 1; + $month = 13 - abs($month % 12); + } elseif ($month > 12) { + // Handle year/month adjustment if month > 12 + $year += floor($month / 12); + $month = ($month % 12); + } + + // Re-validate the year parameter after adjustments + if (($year < $baseYear) || ($year >= 10000)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $excelDateValue = PHPExcel_Shared_Date::FormattedPHPToExcel($year, $month, $day); + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL : + return (float) $excelDateValue; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC : + return (integer) PHPExcel_Shared_Date::ExcelToPHP($excelDateValue); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT : + return PHPExcel_Shared_Date::ExcelToPHPObject($excelDateValue); + } + } // function DATE() + + + /** + * TIME + * + * The TIME function returns a value that represents a particular time. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the time + * format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * TIME(hour,minute,second) + * + * @access public + * @category Date/Time Functions + * @param integer $hour A number from 0 (zero) to 32767 representing the hour. + * Any value greater than 23 will be divided by 24 and the remainder + * will be treated as the hour value. For example, TIME(27,0,0) = + * TIME(3,0,0) = .125 or 3:00 AM. + * @param integer $minute A number from 0 to 32767 representing the minute. + * Any value greater than 59 will be converted to hours and minutes. + * For example, TIME(0,750,0) = TIME(12,30,0) = .520833 or 12:30 PM. + * @param integer $second A number from 0 to 32767 representing the second. + * Any value greater than 59 will be converted to hours, minutes, + * and seconds. For example, TIME(0,0,2000) = TIME(0,33,22) = .023148 + * or 12:33:20 AM + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function TIME($hour = 0, $minute = 0, $second = 0) { + $hour = PHPExcel_Calculation_Functions::flattenSingleValue($hour); + $minute = PHPExcel_Calculation_Functions::flattenSingleValue($minute); + $second = PHPExcel_Calculation_Functions::flattenSingleValue($second); + + if ($hour == '') { $hour = 0; } + if ($minute == '') { $minute = 0; } + if ($second == '') { $second = 0; } + + if ((!is_numeric($hour)) || (!is_numeric($minute)) || (!is_numeric($second))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $hour = (integer) $hour; + $minute = (integer) $minute; + $second = (integer) $second; + + if ($second < 0) { + $minute += floor($second / 60); + $second = 60 - abs($second % 60); + if ($second == 60) { $second = 0; } + } elseif ($second >= 60) { + $minute += floor($second / 60); + $second = $second % 60; + } + if ($minute < 0) { + $hour += floor($minute / 60); + $minute = 60 - abs($minute % 60); + if ($minute == 60) { $minute = 0; } + } elseif ($minute >= 60) { + $hour += floor($minute / 60); + $minute = $minute % 60; + } + + if ($hour > 23) { + $hour = $hour % 24; + } elseif ($hour < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL : + $date = 0; + $calendar = PHPExcel_Shared_Date::getExcelCalendar(); + if ($calendar != PHPExcel_Shared_Date::CALENDAR_WINDOWS_1900) { + $date = 1; + } + return (float) PHPExcel_Shared_Date::FormattedPHPToExcel($calendar, 1, $date, $hour, $minute, $second); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC : + return (integer) PHPExcel_Shared_Date::ExcelToPHP(PHPExcel_Shared_Date::FormattedPHPToExcel(1970, 1, 1, $hour, $minute, $second)); // -2147468400; // -2147472000 + 3600 + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT : + $dayAdjust = 0; + if ($hour < 0) { + $dayAdjust = floor($hour / 24); + $hour = 24 - abs($hour % 24); + if ($hour == 24) { $hour = 0; } + } elseif ($hour >= 24) { + $dayAdjust = floor($hour / 24); + $hour = $hour % 24; + } + $phpDateObject = new DateTime('1900-01-01 '.$hour.':'.$minute.':'.$second); + if ($dayAdjust != 0) { + $phpDateObject->modify($dayAdjust.' days'); + } + return $phpDateObject; + } + } // function TIME() + + + /** + * DATEVALUE + * + * Returns a value that represents a particular date. + * Use DATEVALUE to convert a date represented by a text string to an Excel or PHP date/time stamp + * value. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date + * format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * DATEVALUE(dateValue) + * + * @access public + * @category Date/Time Functions + * @param string $dateValue Text that represents a date in a Microsoft Excel date format. + * For example, "1/30/2008" or "30-Jan-2008" are text strings within + * quotation marks that represent dates. Using the default date + * system in Excel for Windows, date_text must represent a date from + * January 1, 1900, to December 31, 9999. Using the default date + * system in Excel for the Macintosh, date_text must represent a date + * from January 1, 1904, to December 31, 9999. DATEVALUE returns the + * #VALUE! error value if date_text is out of this range. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function DATEVALUE($dateValue = 1) { + $dateValue = trim(PHPExcel_Calculation_Functions::flattenSingleValue($dateValue),'"'); + // Strip any ordinals because they're allowed in Excel (English only) + $dateValue = preg_replace('/(\d)(st|nd|rd|th)([ -\/])/Ui','$1$3',$dateValue); + // Convert separators (/ . or space) to hyphens (should also handle dot used for ordinals in some countries, e.g. Denmark, Germany) + $dateValue = str_replace(array('/','.','-',' '),array(' ',' ',' ',' '),$dateValue); + + $yearFound = false; + $t1 = explode(' ',$dateValue); + foreach($t1 as &$t) { + if ((is_numeric($t)) && ($t > 31)) { + if ($yearFound) { + return PHPExcel_Calculation_Functions::VALUE(); + } else { + if ($t < 100) { $t += 1900; } + $yearFound = true; + } + } + } + if ((count($t1) == 1) && (strpos($t,':') != false)) { + // We've been fed a time value without any date + return 0.0; + } elseif (count($t1) == 2) { + // We only have two parts of the date: either day/month or month/year + if ($yearFound) { + array_unshift($t1,1); + } else { + array_push($t1,date('Y')); + } + } + unset($t); + $dateValue = implode(' ',$t1); + + $PHPDateArray = date_parse($dateValue); + if (($PHPDateArray === False) || ($PHPDateArray['error_count'] > 0)) { + $testVal1 = strtok($dateValue,'- '); + if ($testVal1 !== False) { + $testVal2 = strtok('- '); + if ($testVal2 !== False) { + $testVal3 = strtok('- '); + if ($testVal3 === False) { + $testVal3 = strftime('%Y'); + } + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + $PHPDateArray = date_parse($testVal1.'-'.$testVal2.'-'.$testVal3); + if (($PHPDateArray === False) || ($PHPDateArray['error_count'] > 0)) { + $PHPDateArray = date_parse($testVal2.'-'.$testVal1.'-'.$testVal3); + if (($PHPDateArray === False) || ($PHPDateArray['error_count'] > 0)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + } + + if (($PHPDateArray !== False) && ($PHPDateArray['error_count'] == 0)) { + // Execute function + if ($PHPDateArray['year'] == '') { $PHPDateArray['year'] = strftime('%Y'); } + if ($PHPDateArray['year'] < 1900) + return PHPExcel_Calculation_Functions::VALUE(); + if ($PHPDateArray['month'] == '') { $PHPDateArray['month'] = strftime('%m'); } + if ($PHPDateArray['day'] == '') { $PHPDateArray['day'] = strftime('%d'); } + $excelDateValue = floor(PHPExcel_Shared_Date::FormattedPHPToExcel($PHPDateArray['year'],$PHPDateArray['month'],$PHPDateArray['day'],$PHPDateArray['hour'],$PHPDateArray['minute'],$PHPDateArray['second'])); + + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL : + return (float) $excelDateValue; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC : + return (integer) PHPExcel_Shared_Date::ExcelToPHP($excelDateValue); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT : + return new DateTime($PHPDateArray['year'].'-'.$PHPDateArray['month'].'-'.$PHPDateArray['day'].' 00:00:00'); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function DATEVALUE() + + + /** + * TIMEVALUE + * + * Returns a value that represents a particular time. + * Use TIMEVALUE to convert a time represented by a text string to an Excel or PHP date/time stamp + * value. + * + * NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the time + * format of your regional settings. PHPExcel does not change cell formatting in this way. + * + * Excel Function: + * TIMEVALUE(timeValue) + * + * @access public + * @category Date/Time Functions + * @param string $timeValue A text string that represents a time in any one of the Microsoft + * Excel time formats; for example, "6:45 PM" and "18:45" text strings + * within quotation marks that represent time. + * Date information in time_text is ignored. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function TIMEVALUE($timeValue) { + $timeValue = trim(PHPExcel_Calculation_Functions::flattenSingleValue($timeValue),'"'); + $timeValue = str_replace(array('/','.'),array('-','-'),$timeValue); + + $PHPDateArray = date_parse($timeValue); + if (($PHPDateArray !== False) && ($PHPDateArray['error_count'] == 0)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $excelDateValue = PHPExcel_Shared_Date::FormattedPHPToExcel($PHPDateArray['year'],$PHPDateArray['month'],$PHPDateArray['day'],$PHPDateArray['hour'],$PHPDateArray['minute'],$PHPDateArray['second']); + } else { + $excelDateValue = PHPExcel_Shared_Date::FormattedPHPToExcel(1900,1,1,$PHPDateArray['hour'],$PHPDateArray['minute'],$PHPDateArray['second']) - 1; + } + + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL : + return (float) $excelDateValue; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC : + return (integer) $phpDateValue = PHPExcel_Shared_Date::ExcelToPHP($excelDateValue+25569) - 3600;; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT : + return new DateTime('1900-01-01 '.$PHPDateArray['hour'].':'.$PHPDateArray['minute'].':'.$PHPDateArray['second']); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function TIMEVALUE() + + + /** + * DATEDIF + * + * @param mixed $startDate Excel date serial value, PHP date/time stamp, PHP DateTime object + * or a standard date string + * @param mixed $endDate Excel date serial value, PHP date/time stamp, PHP DateTime object + * or a standard date string + * @param string $unit + * @return integer Interval between the dates + */ + public static function DATEDIF($startDate = 0, $endDate = 0, $unit = 'D') { + $startDate = PHPExcel_Calculation_Functions::flattenSingleValue($startDate); + $endDate = PHPExcel_Calculation_Functions::flattenSingleValue($endDate); + $unit = strtoupper(PHPExcel_Calculation_Functions::flattenSingleValue($unit)); + + if (is_string($startDate = self::_getDateValue($startDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($endDate = self::_getDateValue($endDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Validate parameters + if ($startDate >= $endDate) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $difference = $endDate - $startDate; + + $PHPStartDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($startDate); + $startDays = $PHPStartDateObject->format('j'); + $startMonths = $PHPStartDateObject->format('n'); + $startYears = $PHPStartDateObject->format('Y'); + + $PHPEndDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($endDate); + $endDays = $PHPEndDateObject->format('j'); + $endMonths = $PHPEndDateObject->format('n'); + $endYears = $PHPEndDateObject->format('Y'); + + $retVal = PHPExcel_Calculation_Functions::NaN(); + switch ($unit) { + case 'D': + $retVal = intval($difference); + break; + case 'M': + $retVal = intval($endMonths - $startMonths) + (intval($endYears - $startYears) * 12); + // We're only interested in full months + if ($endDays < $startDays) { + --$retVal; + } + break; + case 'Y': + $retVal = intval($endYears - $startYears); + // We're only interested in full months + if ($endMonths < $startMonths) { + --$retVal; + } elseif (($endMonths == $startMonths) && ($endDays < $startDays)) { + --$retVal; + } + break; + case 'MD': + if ($endDays < $startDays) { + $retVal = $endDays; + $PHPEndDateObject->modify('-'.$endDays.' days'); + $adjustDays = $PHPEndDateObject->format('j'); + if ($adjustDays > $startDays) { + $retVal += ($adjustDays - $startDays); + } + } else { + $retVal = $endDays - $startDays; + } + break; + case 'YM': + $retVal = intval($endMonths - $startMonths); + if ($retVal < 0) $retVal = 12 + $retVal; + // We're only interested in full months + if ($endDays < $startDays) { + --$retVal; + } + break; + case 'YD': + $retVal = intval($difference); + if ($endYears > $startYears) { + while ($endYears > $startYears) { + $PHPEndDateObject->modify('-1 year'); + $endYears = $PHPEndDateObject->format('Y'); + } + $retVal = $PHPEndDateObject->format('z') - $PHPStartDateObject->format('z'); + if ($retVal < 0) { $retVal += 365; } + } + break; + default: + $retVal = PHPExcel_Calculation_Functions::NaN(); + } + return $retVal; + } // function DATEDIF() + + + /** + * DAYS360 + * + * Returns the number of days between two dates based on a 360-day year (twelve 30-day months), + * which is used in some accounting calculations. Use this function to help compute payments if + * your accounting system is based on twelve 30-day months. + * + * Excel Function: + * DAYS360(startDate,endDate[,method]) + * + * @access public + * @category Date/Time Functions + * @param mixed $startDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param mixed $endDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param boolean $method US or European Method + * FALSE or omitted: U.S. (NASD) method. If the starting date is + * the last day of a month, it becomes equal to the 30th of the + * same month. If the ending date is the last day of a month and + * the starting date is earlier than the 30th of a month, the + * ending date becomes equal to the 1st of the next month; + * otherwise the ending date becomes equal to the 30th of the + * same month. + * TRUE: European method. Starting dates and ending dates that + * occur on the 31st of a month become equal to the 30th of the + * same month. + * @return integer Number of days between start date and end date + */ + public static function DAYS360($startDate = 0, $endDate = 0, $method = false) { + $startDate = PHPExcel_Calculation_Functions::flattenSingleValue($startDate); + $endDate = PHPExcel_Calculation_Functions::flattenSingleValue($endDate); + + if (is_string($startDate = self::_getDateValue($startDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($endDate = self::_getDateValue($endDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Execute function + $PHPStartDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($startDate); + $startDay = $PHPStartDateObject->format('j'); + $startMonth = $PHPStartDateObject->format('n'); + $startYear = $PHPStartDateObject->format('Y'); + + $PHPEndDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($endDate); + $endDay = $PHPEndDateObject->format('j'); + $endMonth = $PHPEndDateObject->format('n'); + $endYear = $PHPEndDateObject->format('Y'); + + return self::_dateDiff360($startDay, $startMonth, $startYear, $endDay, $endMonth, $endYear, !$method); + } // function DAYS360() + + + /** + * YEARFRAC + * + * Calculates the fraction of the year represented by the number of whole days between two dates + * (the start_date and the end_date). + * Use the YEARFRAC worksheet function to identify the proportion of a whole year's benefits or + * obligations to assign to a specific term. + * + * Excel Function: + * YEARFRAC(startDate,endDate[,method]) + * + * @access public + * @category Date/Time Functions + * @param mixed $startDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param mixed $endDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param integer $method Method used for the calculation + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float fraction of the year + */ + public static function YEARFRAC($startDate = 0, $endDate = 0, $method = 0) { + $startDate = PHPExcel_Calculation_Functions::flattenSingleValue($startDate); + $endDate = PHPExcel_Calculation_Functions::flattenSingleValue($endDate); + $method = PHPExcel_Calculation_Functions::flattenSingleValue($method); + + if (is_string($startDate = self::_getDateValue($startDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($endDate = self::_getDateValue($endDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (((is_numeric($method)) && (!is_string($method))) || ($method == '')) { + switch($method) { + case 0 : + return self::DAYS360($startDate,$endDate) / 360; + case 1 : + $days = self::DATEDIF($startDate,$endDate); + $startYear = self::YEAR($startDate); + $endYear = self::YEAR($endDate); + $years = $endYear - $startYear + 1; + $leapDays = 0; + if ($years == 1) { + if (self::_isLeapYear($endYear)) { + $startMonth = self::MONTHOFYEAR($startDate); + $endMonth = self::MONTHOFYEAR($endDate); + $endDay = self::DAYOFMONTH($endDate); + if (($startMonth < 3) || + (($endMonth * 100 + $endDay) >= (2 * 100 + 29))) { + $leapDays += 1; + } + } + } else { + for($year = $startYear; $year <= $endYear; ++$year) { + if ($year == $startYear) { + $startMonth = self::MONTHOFYEAR($startDate); + $startDay = self::DAYOFMONTH($startDate); + if ($startMonth < 3) { + $leapDays += (self::_isLeapYear($year)) ? 1 : 0; + } + } elseif($year == $endYear) { + $endMonth = self::MONTHOFYEAR($endDate); + $endDay = self::DAYOFMONTH($endDate); + if (($endMonth * 100 + $endDay) >= (2 * 100 + 29)) { + $leapDays += (self::_isLeapYear($year)) ? 1 : 0; + } + } else { + $leapDays += (self::_isLeapYear($year)) ? 1 : 0; + } + } + if ($years == 2) { + if (($leapDays == 0) && (self::_isLeapYear($startYear)) && ($days > 365)) { + $leapDays = 1; + } elseif ($days < 366) { + $years = 1; + } + } + $leapDays /= $years; + } + return $days / (365 + $leapDays); + case 2 : + return self::DATEDIF($startDate,$endDate) / 360; + case 3 : + return self::DATEDIF($startDate,$endDate) / 365; + case 4 : + return self::DAYS360($startDate,$endDate,True) / 360; + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function YEARFRAC() + + + /** + * NETWORKDAYS + * + * Returns the number of whole working days between start_date and end_date. Working days + * exclude weekends and any dates identified in holidays. + * Use NETWORKDAYS to calculate employee benefits that accrue based on the number of days + * worked during a specific term. + * + * Excel Function: + * NETWORKDAYS(startDate,endDate[,holidays[,holiday[,...]]]) + * + * @access public + * @category Date/Time Functions + * @param mixed $startDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param mixed $endDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param mixed $holidays,... Optional series of Excel date serial value (float), PHP date + * timestamp (integer), PHP DateTime object, or a standard date + * strings that will be excluded from the working calendar, such + * as state and federal holidays and floating holidays. + * @return integer Interval between the dates + */ + public static function NETWORKDAYS($startDate,$endDate) { + // Retrieve the mandatory start and end date that are referenced in the function definition + $startDate = PHPExcel_Calculation_Functions::flattenSingleValue($startDate); + $endDate = PHPExcel_Calculation_Functions::flattenSingleValue($endDate); + // Flush the mandatory start and end date that are referenced in the function definition, and get the optional days + $dateArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + array_shift($dateArgs); + array_shift($dateArgs); + + // Validate the start and end dates + if (is_string($startDate = $sDate = self::_getDateValue($startDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $startDate = (float) floor($startDate); + if (is_string($endDate = $eDate = self::_getDateValue($endDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $endDate = (float) floor($endDate); + + if ($sDate > $eDate) { + $startDate = $eDate; + $endDate = $sDate; + } + + // Execute function + $startDoW = 6 - self::DAYOFWEEK($startDate,2); + if ($startDoW < 0) { $startDoW = 0; } + $endDoW = self::DAYOFWEEK($endDate,2); + if ($endDoW >= 6) { $endDoW = 0; } + + $wholeWeekDays = floor(($endDate - $startDate) / 7) * 5; + $partWeekDays = $endDoW + $startDoW; + if ($partWeekDays > 5) { + $partWeekDays -= 5; + } + + // Test any extra holiday parameters + $holidayCountedArray = array(); + foreach ($dateArgs as $holidayDate) { + if (is_string($holidayDate = self::_getDateValue($holidayDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (($holidayDate >= $startDate) && ($holidayDate <= $endDate)) { + if ((self::DAYOFWEEK($holidayDate,2) < 6) && (!in_array($holidayDate,$holidayCountedArray))) { + --$partWeekDays; + $holidayCountedArray[] = $holidayDate; + } + } + } + + if ($sDate > $eDate) { + return 0 - ($wholeWeekDays + $partWeekDays); + } + return $wholeWeekDays + $partWeekDays; + } // function NETWORKDAYS() + + + /** + * WORKDAY + * + * Returns the date that is the indicated number of working days before or after a date (the + * starting date). Working days exclude weekends and any dates identified as holidays. + * Use WORKDAY to exclude weekends or holidays when you calculate invoice due dates, expected + * delivery times, or the number of days of work performed. + * + * Excel Function: + * WORKDAY(startDate,endDays[,holidays[,holiday[,...]]]) + * + * @access public + * @category Date/Time Functions + * @param mixed $startDate Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param integer $endDays The number of nonweekend and nonholiday days before or after + * startDate. A positive value for days yields a future date; a + * negative value yields a past date. + * @param mixed $holidays,... Optional series of Excel date serial value (float), PHP date + * timestamp (integer), PHP DateTime object, or a standard date + * strings that will be excluded from the working calendar, such + * as state and federal holidays and floating holidays. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function WORKDAY($startDate,$endDays) { + // Retrieve the mandatory start date and days that are referenced in the function definition + $startDate = PHPExcel_Calculation_Functions::flattenSingleValue($startDate); + $endDays = PHPExcel_Calculation_Functions::flattenSingleValue($endDays); + // Flush the mandatory start date and days that are referenced in the function definition, and get the optional days + $dateArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + array_shift($dateArgs); + array_shift($dateArgs); + + if ((is_string($startDate = self::_getDateValue($startDate))) || (!is_numeric($endDays))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $startDate = (float) floor($startDate); + $endDays = (int) floor($endDays); + // If endDays is 0, we always return startDate + if ($endDays == 0) { return $startDate; } + + $decrementing = ($endDays < 0) ? True : False; + + // Adjust the start date if it falls over a weekend + + $startDoW = self::DAYOFWEEK($startDate,3); + if (self::DAYOFWEEK($startDate,3) >= 5) { + $startDate += ($decrementing) ? -$startDoW + 4: 7 - $startDoW; + ($decrementing) ? $endDays++ : $endDays--; + } + + // Add endDays + $endDate = (float) $startDate + (intval($endDays / 5) * 7) + ($endDays % 5); + + // Adjust the calculated end date if it falls over a weekend + $endDoW = self::DAYOFWEEK($endDate,3); + if ($endDoW >= 5) { + $endDate += ($decrementing) ? -$endDoW + 4: 7 - $endDoW; + } + + // Test any extra holiday parameters + if (!empty($dateArgs)) { + $holidayCountedArray = $holidayDates = array(); + foreach ($dateArgs as $holidayDate) { + if (($holidayDate !== NULL) && (trim($holidayDate) > '')) { + if (is_string($holidayDate = self::_getDateValue($holidayDate))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (self::DAYOFWEEK($holidayDate,3) < 5) { + $holidayDates[] = $holidayDate; + } + } + } + if ($decrementing) { + rsort($holidayDates, SORT_NUMERIC); + } else { + sort($holidayDates, SORT_NUMERIC); + } + foreach ($holidayDates as $holidayDate) { + if ($decrementing) { + if (($holidayDate <= $startDate) && ($holidayDate >= $endDate)) { + if (!in_array($holidayDate,$holidayCountedArray)) { + --$endDate; + $holidayCountedArray[] = $holidayDate; + } + } + } else { + if (($holidayDate >= $startDate) && ($holidayDate <= $endDate)) { + if (!in_array($holidayDate,$holidayCountedArray)) { + ++$endDate; + $holidayCountedArray[] = $holidayDate; + } + } + } + // Adjust the calculated end date if it falls over a weekend + $endDoW = self::DAYOFWEEK($endDate,3); + if ($endDoW >= 5) { + $endDate += ($decrementing) ? -$endDoW + 4: 7 - $endDoW; + } + + } + } + + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL : + return (float) $endDate; + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC : + return (integer) PHPExcel_Shared_Date::ExcelToPHP($endDate); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT : + return PHPExcel_Shared_Date::ExcelToPHPObject($endDate); + } + } // function WORKDAY() + + + /** + * DAYOFMONTH + * + * Returns the day of the month, for a specified date. The day is given as an integer + * ranging from 1 to 31. + * + * Excel Function: + * DAY(dateValue) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @return int Day of the month + */ + public static function DAYOFMONTH($dateValue = 1) { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + + if (is_string($dateValue = self::_getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($dateValue == 0.0) { + return 0; + } elseif ($dateValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $PHPDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($dateValue); + + return (int) $PHPDateObject->format('j'); + } // function DAYOFMONTH() + + + /** + * DAYOFWEEK + * + * Returns the day of the week for a specified date. The day is given as an integer + * ranging from 0 to 7 (dependent on the requested style). + * + * Excel Function: + * WEEKDAY(dateValue[,style]) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param int $style A number that determines the type of return value + * 1 or omitted Numbers 1 (Sunday) through 7 (Saturday). + * 2 Numbers 1 (Monday) through 7 (Sunday). + * 3 Numbers 0 (Monday) through 6 (Sunday). + * @return int Day of the week value + */ + public static function DAYOFWEEK($dateValue = 1, $style = 1) { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + $style = PHPExcel_Calculation_Functions::flattenSingleValue($style); + + if (!is_numeric($style)) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif (($style < 1) || ($style > 3)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $style = floor($style); + + if (is_string($dateValue = self::_getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($dateValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $PHPDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($dateValue); + $DoW = $PHPDateObject->format('w'); + + $firstDay = 1; + switch ($style) { + case 1: ++$DoW; + break; + case 2: if ($DoW == 0) { $DoW = 7; } + break; + case 3: if ($DoW == 0) { $DoW = 7; } + $firstDay = 0; + --$DoW; + break; + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_EXCEL) { + // Test for Excel's 1900 leap year, and introduce the error as required + if (($PHPDateObject->format('Y') == 1900) && ($PHPDateObject->format('n') <= 2)) { + --$DoW; + if ($DoW < $firstDay) { + $DoW += 7; + } + } + } + + return (int) $DoW; + } // function DAYOFWEEK() + + + /** + * WEEKOFYEAR + * + * Returns the week of the year for a specified date. + * The WEEKNUM function considers the week containing January 1 to be the first week of the year. + * However, there is a European standard that defines the first week as the one with the majority + * of days (four or more) falling in the new year. This means that for years in which there are + * three days or less in the first week of January, the WEEKNUM function returns week numbers + * that are incorrect according to the European standard. + * + * Excel Function: + * WEEKNUM(dateValue[,style]) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param boolean $method Week begins on Sunday or Monday + * 1 or omitted Week begins on Sunday. + * 2 Week begins on Monday. + * @return int Week Number + */ + public static function WEEKOFYEAR($dateValue = 1, $method = 1) { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + $method = PHPExcel_Calculation_Functions::flattenSingleValue($method); + + if (!is_numeric($method)) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif (($method < 1) || ($method > 2)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $method = floor($method); + + if (is_string($dateValue = self::_getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($dateValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $PHPDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($dateValue); + $dayOfYear = $PHPDateObject->format('z'); + $dow = $PHPDateObject->format('w'); + $PHPDateObject->modify('-'.$dayOfYear.' days'); + $dow = $PHPDateObject->format('w'); + $daysInFirstWeek = 7 - (($dow + (2 - $method)) % 7); + $dayOfYear -= $daysInFirstWeek; + $weekOfYear = ceil($dayOfYear / 7) + 1; + + return (int) $weekOfYear; + } // function WEEKOFYEAR() + + + /** + * MONTHOFYEAR + * + * Returns the month of a date represented by a serial number. + * The month is given as an integer, ranging from 1 (January) to 12 (December). + * + * Excel Function: + * MONTH(dateValue) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @return int Month of the year + */ + public static function MONTHOFYEAR($dateValue = 1) { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + + if (is_string($dateValue = self::_getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($dateValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $PHPDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($dateValue); + + return (int) $PHPDateObject->format('n'); + } // function MONTHOFYEAR() + + + /** + * YEAR + * + * Returns the year corresponding to a date. + * The year is returned as an integer in the range 1900-9999. + * + * Excel Function: + * YEAR(dateValue) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @return int Year + */ + public static function YEAR($dateValue = 1) { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + + if (is_string($dateValue = self::_getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($dateValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Execute function + $PHPDateObject = PHPExcel_Shared_Date::ExcelToPHPObject($dateValue); + + return (int) $PHPDateObject->format('Y'); + } // function YEAR() + + + /** + * HOUROFDAY + * + * Returns the hour of a time value. + * The hour is given as an integer, ranging from 0 (12:00 A.M.) to 23 (11:00 P.M.). + * + * Excel Function: + * HOUR(timeValue) + * + * @param mixed $timeValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard time string + * @return int Hour + */ + public static function HOUROFDAY($timeValue = 0) { + $timeValue = PHPExcel_Calculation_Functions::flattenSingleValue($timeValue); + + if (!is_numeric($timeValue)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $testVal = strtok($timeValue,'/-: '); + if (strlen($testVal) < strlen($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $timeValue = self::_getTimeValue($timeValue); + if (is_string($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + // Execute function + if ($timeValue >= 1) { + $timeValue = fmod($timeValue,1); + } elseif ($timeValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $timeValue = PHPExcel_Shared_Date::ExcelToPHP($timeValue); + + return (int) gmdate('G',$timeValue); + } // function HOUROFDAY() + + + /** + * MINUTEOFHOUR + * + * Returns the minutes of a time value. + * The minute is given as an integer, ranging from 0 to 59. + * + * Excel Function: + * MINUTE(timeValue) + * + * @param mixed $timeValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard time string + * @return int Minute + */ + public static function MINUTEOFHOUR($timeValue = 0) { + $timeValue = $timeTester = PHPExcel_Calculation_Functions::flattenSingleValue($timeValue); + + if (!is_numeric($timeValue)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $testVal = strtok($timeValue,'/-: '); + if (strlen($testVal) < strlen($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $timeValue = self::_getTimeValue($timeValue); + if (is_string($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + // Execute function + if ($timeValue >= 1) { + $timeValue = fmod($timeValue,1); + } elseif ($timeValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $timeValue = PHPExcel_Shared_Date::ExcelToPHP($timeValue); + + return (int) gmdate('i',$timeValue); + } // function MINUTEOFHOUR() + + + /** + * SECONDOFMINUTE + * + * Returns the seconds of a time value. + * The second is given as an integer in the range 0 (zero) to 59. + * + * Excel Function: + * SECOND(timeValue) + * + * @param mixed $timeValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard time string + * @return int Second + */ + public static function SECONDOFMINUTE($timeValue = 0) { + $timeValue = PHPExcel_Calculation_Functions::flattenSingleValue($timeValue); + + if (!is_numeric($timeValue)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $testVal = strtok($timeValue,'/-: '); + if (strlen($testVal) < strlen($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $timeValue = self::_getTimeValue($timeValue); + if (is_string($timeValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + // Execute function + if ($timeValue >= 1) { + $timeValue = fmod($timeValue,1); + } elseif ($timeValue < 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $timeValue = PHPExcel_Shared_Date::ExcelToPHP($timeValue); + + return (int) gmdate('s',$timeValue); + } // function SECONDOFMINUTE() + + + /** + * EDATE + * + * Returns the serial number that represents the date that is the indicated number of months + * before or after a specified date (the start_date). + * Use EDATE to calculate maturity dates or due dates that fall on the same day of the month + * as the date of issue. + * + * Excel Function: + * EDATE(dateValue,adjustmentMonths) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param int $adjustmentMonths The number of months before or after start_date. + * A positive value for months yields a future date; + * a negative value yields a past date. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function EDATE($dateValue = 1, $adjustmentMonths = 0) { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + $adjustmentMonths = PHPExcel_Calculation_Functions::flattenSingleValue($adjustmentMonths); + + if (!is_numeric($adjustmentMonths)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $adjustmentMonths = floor($adjustmentMonths); + + if (is_string($dateValue = self::_getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Execute function + $PHPDateObject = self::_adjustDateByMonths($dateValue,$adjustmentMonths); + + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL : + return (float) PHPExcel_Shared_Date::PHPToExcel($PHPDateObject); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC : + return (integer) PHPExcel_Shared_Date::ExcelToPHP(PHPExcel_Shared_Date::PHPToExcel($PHPDateObject)); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT : + return $PHPDateObject; + } + } // function EDATE() + + + /** + * EOMONTH + * + * Returns the date value for the last day of the month that is the indicated number of months + * before or after start_date. + * Use EOMONTH to calculate maturity dates or due dates that fall on the last day of the month. + * + * Excel Function: + * EOMONTH(dateValue,adjustmentMonths) + * + * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), + * PHP DateTime object, or a standard date string + * @param int $adjustmentMonths The number of months before or after start_date. + * A positive value for months yields a future date; + * a negative value yields a past date. + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function EOMONTH($dateValue = 1, $adjustmentMonths = 0) { + $dateValue = PHPExcel_Calculation_Functions::flattenSingleValue($dateValue); + $adjustmentMonths = PHPExcel_Calculation_Functions::flattenSingleValue($adjustmentMonths); + + if (!is_numeric($adjustmentMonths)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $adjustmentMonths = floor($adjustmentMonths); + + if (is_string($dateValue = self::_getDateValue($dateValue))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Execute function + $PHPDateObject = self::_adjustDateByMonths($dateValue,$adjustmentMonths+1); + $adjustDays = (int) $PHPDateObject->format('d'); + $adjustDaysString = '-'.$adjustDays.' days'; + $PHPDateObject->modify($adjustDaysString); + + switch (PHPExcel_Calculation_Functions::getReturnDateType()) { + case PHPExcel_Calculation_Functions::RETURNDATE_EXCEL : + return (float) PHPExcel_Shared_Date::PHPToExcel($PHPDateObject); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC : + return (integer) PHPExcel_Shared_Date::ExcelToPHP(PHPExcel_Shared_Date::PHPToExcel($PHPDateObject)); + case PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT : + return $PHPDateObject; + } + } // function EOMONTH() + +} // class PHPExcel_Calculation_DateTime + diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/Engineering.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Engineering.php new file mode 100644 index 0000000..cfaffaf --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Engineering.php @@ -0,0 +1,2502 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** EULER */ +define('EULER', 2.71828182845904523536); + + +/** + * PHPExcel_Calculation_Engineering + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_Engineering { + + /** + * Details of the Units of measure that can be used in CONVERTUOM() + * + * @var mixed[] + */ + private static $_conversionUnits = array( 'g' => array( 'Group' => 'Mass', 'Unit Name' => 'Gram', 'AllowPrefix' => True ), + 'sg' => array( 'Group' => 'Mass', 'Unit Name' => 'Slug', 'AllowPrefix' => False ), + 'lbm' => array( 'Group' => 'Mass', 'Unit Name' => 'Pound mass (avoirdupois)', 'AllowPrefix' => False ), + 'u' => array( 'Group' => 'Mass', 'Unit Name' => 'U (atomic mass unit)', 'AllowPrefix' => True ), + 'ozm' => array( 'Group' => 'Mass', 'Unit Name' => 'Ounce mass (avoirdupois)', 'AllowPrefix' => False ), + 'm' => array( 'Group' => 'Distance', 'Unit Name' => 'Meter', 'AllowPrefix' => True ), + 'mi' => array( 'Group' => 'Distance', 'Unit Name' => 'Statute mile', 'AllowPrefix' => False ), + 'Nmi' => array( 'Group' => 'Distance', 'Unit Name' => 'Nautical mile', 'AllowPrefix' => False ), + 'in' => array( 'Group' => 'Distance', 'Unit Name' => 'Inch', 'AllowPrefix' => False ), + 'ft' => array( 'Group' => 'Distance', 'Unit Name' => 'Foot', 'AllowPrefix' => False ), + 'yd' => array( 'Group' => 'Distance', 'Unit Name' => 'Yard', 'AllowPrefix' => False ), + 'ang' => array( 'Group' => 'Distance', 'Unit Name' => 'Angstrom', 'AllowPrefix' => True ), + 'Pica' => array( 'Group' => 'Distance', 'Unit Name' => 'Pica (1/72 in)', 'AllowPrefix' => False ), + 'yr' => array( 'Group' => 'Time', 'Unit Name' => 'Year', 'AllowPrefix' => False ), + 'day' => array( 'Group' => 'Time', 'Unit Name' => 'Day', 'AllowPrefix' => False ), + 'hr' => array( 'Group' => 'Time', 'Unit Name' => 'Hour', 'AllowPrefix' => False ), + 'mn' => array( 'Group' => 'Time', 'Unit Name' => 'Minute', 'AllowPrefix' => False ), + 'sec' => array( 'Group' => 'Time', 'Unit Name' => 'Second', 'AllowPrefix' => True ), + 'Pa' => array( 'Group' => 'Pressure', 'Unit Name' => 'Pascal', 'AllowPrefix' => True ), + 'p' => array( 'Group' => 'Pressure', 'Unit Name' => 'Pascal', 'AllowPrefix' => True ), + 'atm' => array( 'Group' => 'Pressure', 'Unit Name' => 'Atmosphere', 'AllowPrefix' => True ), + 'at' => array( 'Group' => 'Pressure', 'Unit Name' => 'Atmosphere', 'AllowPrefix' => True ), + 'mmHg' => array( 'Group' => 'Pressure', 'Unit Name' => 'mm of Mercury', 'AllowPrefix' => True ), + 'N' => array( 'Group' => 'Force', 'Unit Name' => 'Newton', 'AllowPrefix' => True ), + 'dyn' => array( 'Group' => 'Force', 'Unit Name' => 'Dyne', 'AllowPrefix' => True ), + 'dy' => array( 'Group' => 'Force', 'Unit Name' => 'Dyne', 'AllowPrefix' => True ), + 'lbf' => array( 'Group' => 'Force', 'Unit Name' => 'Pound force', 'AllowPrefix' => False ), + 'J' => array( 'Group' => 'Energy', 'Unit Name' => 'Joule', 'AllowPrefix' => True ), + 'e' => array( 'Group' => 'Energy', 'Unit Name' => 'Erg', 'AllowPrefix' => True ), + 'c' => array( 'Group' => 'Energy', 'Unit Name' => 'Thermodynamic calorie', 'AllowPrefix' => True ), + 'cal' => array( 'Group' => 'Energy', 'Unit Name' => 'IT calorie', 'AllowPrefix' => True ), + 'eV' => array( 'Group' => 'Energy', 'Unit Name' => 'Electron volt', 'AllowPrefix' => True ), + 'ev' => array( 'Group' => 'Energy', 'Unit Name' => 'Electron volt', 'AllowPrefix' => True ), + 'HPh' => array( 'Group' => 'Energy', 'Unit Name' => 'Horsepower-hour', 'AllowPrefix' => False ), + 'hh' => array( 'Group' => 'Energy', 'Unit Name' => 'Horsepower-hour', 'AllowPrefix' => False ), + 'Wh' => array( 'Group' => 'Energy', 'Unit Name' => 'Watt-hour', 'AllowPrefix' => True ), + 'wh' => array( 'Group' => 'Energy', 'Unit Name' => 'Watt-hour', 'AllowPrefix' => True ), + 'flb' => array( 'Group' => 'Energy', 'Unit Name' => 'Foot-pound', 'AllowPrefix' => False ), + 'BTU' => array( 'Group' => 'Energy', 'Unit Name' => 'BTU', 'AllowPrefix' => False ), + 'btu' => array( 'Group' => 'Energy', 'Unit Name' => 'BTU', 'AllowPrefix' => False ), + 'HP' => array( 'Group' => 'Power', 'Unit Name' => 'Horsepower', 'AllowPrefix' => False ), + 'h' => array( 'Group' => 'Power', 'Unit Name' => 'Horsepower', 'AllowPrefix' => False ), + 'W' => array( 'Group' => 'Power', 'Unit Name' => 'Watt', 'AllowPrefix' => True ), + 'w' => array( 'Group' => 'Power', 'Unit Name' => 'Watt', 'AllowPrefix' => True ), + 'T' => array( 'Group' => 'Magnetism', 'Unit Name' => 'Tesla', 'AllowPrefix' => True ), + 'ga' => array( 'Group' => 'Magnetism', 'Unit Name' => 'Gauss', 'AllowPrefix' => True ), + 'C' => array( 'Group' => 'Temperature', 'Unit Name' => 'Celsius', 'AllowPrefix' => False ), + 'cel' => array( 'Group' => 'Temperature', 'Unit Name' => 'Celsius', 'AllowPrefix' => False ), + 'F' => array( 'Group' => 'Temperature', 'Unit Name' => 'Fahrenheit', 'AllowPrefix' => False ), + 'fah' => array( 'Group' => 'Temperature', 'Unit Name' => 'Fahrenheit', 'AllowPrefix' => False ), + 'K' => array( 'Group' => 'Temperature', 'Unit Name' => 'Kelvin', 'AllowPrefix' => False ), + 'kel' => array( 'Group' => 'Temperature', 'Unit Name' => 'Kelvin', 'AllowPrefix' => False ), + 'tsp' => array( 'Group' => 'Liquid', 'Unit Name' => 'Teaspoon', 'AllowPrefix' => False ), + 'tbs' => array( 'Group' => 'Liquid', 'Unit Name' => 'Tablespoon', 'AllowPrefix' => False ), + 'oz' => array( 'Group' => 'Liquid', 'Unit Name' => 'Fluid Ounce', 'AllowPrefix' => False ), + 'cup' => array( 'Group' => 'Liquid', 'Unit Name' => 'Cup', 'AllowPrefix' => False ), + 'pt' => array( 'Group' => 'Liquid', 'Unit Name' => 'U.S. Pint', 'AllowPrefix' => False ), + 'us_pt' => array( 'Group' => 'Liquid', 'Unit Name' => 'U.S. Pint', 'AllowPrefix' => False ), + 'uk_pt' => array( 'Group' => 'Liquid', 'Unit Name' => 'U.K. Pint', 'AllowPrefix' => False ), + 'qt' => array( 'Group' => 'Liquid', 'Unit Name' => 'Quart', 'AllowPrefix' => False ), + 'gal' => array( 'Group' => 'Liquid', 'Unit Name' => 'Gallon', 'AllowPrefix' => False ), + 'l' => array( 'Group' => 'Liquid', 'Unit Name' => 'Litre', 'AllowPrefix' => True ), + 'lt' => array( 'Group' => 'Liquid', 'Unit Name' => 'Litre', 'AllowPrefix' => True ) + ); + + /** + * Details of the Multiplier prefixes that can be used with Units of Measure in CONVERTUOM() + * + * @var mixed[] + */ + private static $_conversionMultipliers = array( 'Y' => array( 'multiplier' => 1E24, 'name' => 'yotta' ), + 'Z' => array( 'multiplier' => 1E21, 'name' => 'zetta' ), + 'E' => array( 'multiplier' => 1E18, 'name' => 'exa' ), + 'P' => array( 'multiplier' => 1E15, 'name' => 'peta' ), + 'T' => array( 'multiplier' => 1E12, 'name' => 'tera' ), + 'G' => array( 'multiplier' => 1E9, 'name' => 'giga' ), + 'M' => array( 'multiplier' => 1E6, 'name' => 'mega' ), + 'k' => array( 'multiplier' => 1E3, 'name' => 'kilo' ), + 'h' => array( 'multiplier' => 1E2, 'name' => 'hecto' ), + 'e' => array( 'multiplier' => 1E1, 'name' => 'deka' ), + 'd' => array( 'multiplier' => 1E-1, 'name' => 'deci' ), + 'c' => array( 'multiplier' => 1E-2, 'name' => 'centi' ), + 'm' => array( 'multiplier' => 1E-3, 'name' => 'milli' ), + 'u' => array( 'multiplier' => 1E-6, 'name' => 'micro' ), + 'n' => array( 'multiplier' => 1E-9, 'name' => 'nano' ), + 'p' => array( 'multiplier' => 1E-12, 'name' => 'pico' ), + 'f' => array( 'multiplier' => 1E-15, 'name' => 'femto' ), + 'a' => array( 'multiplier' => 1E-18, 'name' => 'atto' ), + 'z' => array( 'multiplier' => 1E-21, 'name' => 'zepto' ), + 'y' => array( 'multiplier' => 1E-24, 'name' => 'yocto' ) + ); + + /** + * Details of the Units of measure conversion factors, organised by group + * + * @var mixed[] + */ + private static $_unitConversions = array( 'Mass' => array( 'g' => array( 'g' => 1.0, + 'sg' => 6.85220500053478E-05, + 'lbm' => 2.20462291469134E-03, + 'u' => 6.02217000000000E+23, + 'ozm' => 3.52739718003627E-02 + ), + 'sg' => array( 'g' => 1.45938424189287E+04, + 'sg' => 1.0, + 'lbm' => 3.21739194101647E+01, + 'u' => 8.78866000000000E+27, + 'ozm' => 5.14782785944229E+02 + ), + 'lbm' => array( 'g' => 4.5359230974881148E+02, + 'sg' => 3.10810749306493E-02, + 'lbm' => 1.0, + 'u' => 2.73161000000000E+26, + 'ozm' => 1.60000023429410E+01 + ), + 'u' => array( 'g' => 1.66053100460465E-24, + 'sg' => 1.13782988532950E-28, + 'lbm' => 3.66084470330684E-27, + 'u' => 1.0, + 'ozm' => 5.85735238300524E-26 + ), + 'ozm' => array( 'g' => 2.83495152079732E+01, + 'sg' => 1.94256689870811E-03, + 'lbm' => 6.24999908478882E-02, + 'u' => 1.70725600000000E+25, + 'ozm' => 1.0 + ) + ), + 'Distance' => array( 'm' => array( 'm' => 1.0, + 'mi' => 6.21371192237334E-04, + 'Nmi' => 5.39956803455724E-04, + 'in' => 3.93700787401575E+01, + 'ft' => 3.28083989501312E+00, + 'yd' => 1.09361329797891E+00, + 'ang' => 1.00000000000000E+10, + 'Pica' => 2.83464566929116E+03 + ), + 'mi' => array( 'm' => 1.60934400000000E+03, + 'mi' => 1.0, + 'Nmi' => 8.68976241900648E-01, + 'in' => 6.33600000000000E+04, + 'ft' => 5.28000000000000E+03, + 'yd' => 1.76000000000000E+03, + 'ang' => 1.60934400000000E+13, + 'Pica' => 4.56191999999971E+06 + ), + 'Nmi' => array( 'm' => 1.85200000000000E+03, + 'mi' => 1.15077944802354E+00, + 'Nmi' => 1.0, + 'in' => 7.29133858267717E+04, + 'ft' => 6.07611548556430E+03, + 'yd' => 2.02537182785694E+03, + 'ang' => 1.85200000000000E+13, + 'Pica' => 5.24976377952723E+06 + ), + 'in' => array( 'm' => 2.54000000000000E-02, + 'mi' => 1.57828282828283E-05, + 'Nmi' => 1.37149028077754E-05, + 'in' => 1.0, + 'ft' => 8.33333333333333E-02, + 'yd' => 2.77777777686643E-02, + 'ang' => 2.54000000000000E+08, + 'Pica' => 7.19999999999955E+01 + ), + 'ft' => array( 'm' => 3.04800000000000E-01, + 'mi' => 1.89393939393939E-04, + 'Nmi' => 1.64578833693305E-04, + 'in' => 1.20000000000000E+01, + 'ft' => 1.0, + 'yd' => 3.33333333223972E-01, + 'ang' => 3.04800000000000E+09, + 'Pica' => 8.63999999999946E+02 + ), + 'yd' => array( 'm' => 9.14400000300000E-01, + 'mi' => 5.68181818368230E-04, + 'Nmi' => 4.93736501241901E-04, + 'in' => 3.60000000118110E+01, + 'ft' => 3.00000000000000E+00, + 'yd' => 1.0, + 'ang' => 9.14400000300000E+09, + 'Pica' => 2.59200000085023E+03 + ), + 'ang' => array( 'm' => 1.00000000000000E-10, + 'mi' => 6.21371192237334E-14, + 'Nmi' => 5.39956803455724E-14, + 'in' => 3.93700787401575E-09, + 'ft' => 3.28083989501312E-10, + 'yd' => 1.09361329797891E-10, + 'ang' => 1.0, + 'Pica' => 2.83464566929116E-07 + ), + 'Pica' => array( 'm' => 3.52777777777800E-04, + 'mi' => 2.19205948372629E-07, + 'Nmi' => 1.90484761219114E-07, + 'in' => 1.38888888888898E-02, + 'ft' => 1.15740740740748E-03, + 'yd' => 3.85802469009251E-04, + 'ang' => 3.52777777777800E+06, + 'Pica' => 1.0 + ) + ), + 'Time' => array( 'yr' => array( 'yr' => 1.0, + 'day' => 365.25, + 'hr' => 8766.0, + 'mn' => 525960.0, + 'sec' => 31557600.0 + ), + 'day' => array( 'yr' => 2.73785078713210E-03, + 'day' => 1.0, + 'hr' => 24.0, + 'mn' => 1440.0, + 'sec' => 86400.0 + ), + 'hr' => array( 'yr' => 1.14077116130504E-04, + 'day' => 4.16666666666667E-02, + 'hr' => 1.0, + 'mn' => 60.0, + 'sec' => 3600.0 + ), + 'mn' => array( 'yr' => 1.90128526884174E-06, + 'day' => 6.94444444444444E-04, + 'hr' => 1.66666666666667E-02, + 'mn' => 1.0, + 'sec' => 60.0 + ), + 'sec' => array( 'yr' => 3.16880878140289E-08, + 'day' => 1.15740740740741E-05, + 'hr' => 2.77777777777778E-04, + 'mn' => 1.66666666666667E-02, + 'sec' => 1.0 + ) + ), + 'Pressure' => array( 'Pa' => array( 'Pa' => 1.0, + 'p' => 1.0, + 'atm' => 9.86923299998193E-06, + 'at' => 9.86923299998193E-06, + 'mmHg' => 7.50061707998627E-03 + ), + 'p' => array( 'Pa' => 1.0, + 'p' => 1.0, + 'atm' => 9.86923299998193E-06, + 'at' => 9.86923299998193E-06, + 'mmHg' => 7.50061707998627E-03 + ), + 'atm' => array( 'Pa' => 1.01324996583000E+05, + 'p' => 1.01324996583000E+05, + 'atm' => 1.0, + 'at' => 1.0, + 'mmHg' => 760.0 + ), + 'at' => array( 'Pa' => 1.01324996583000E+05, + 'p' => 1.01324996583000E+05, + 'atm' => 1.0, + 'at' => 1.0, + 'mmHg' => 760.0 + ), + 'mmHg' => array( 'Pa' => 1.33322363925000E+02, + 'p' => 1.33322363925000E+02, + 'atm' => 1.31578947368421E-03, + 'at' => 1.31578947368421E-03, + 'mmHg' => 1.0 + ) + ), + 'Force' => array( 'N' => array( 'N' => 1.0, + 'dyn' => 1.0E+5, + 'dy' => 1.0E+5, + 'lbf' => 2.24808923655339E-01 + ), + 'dyn' => array( 'N' => 1.0E-5, + 'dyn' => 1.0, + 'dy' => 1.0, + 'lbf' => 2.24808923655339E-06 + ), + 'dy' => array( 'N' => 1.0E-5, + 'dyn' => 1.0, + 'dy' => 1.0, + 'lbf' => 2.24808923655339E-06 + ), + 'lbf' => array( 'N' => 4.448222, + 'dyn' => 4.448222E+5, + 'dy' => 4.448222E+5, + 'lbf' => 1.0 + ) + ), + 'Energy' => array( 'J' => array( 'J' => 1.0, + 'e' => 9.99999519343231E+06, + 'c' => 2.39006249473467E-01, + 'cal' => 2.38846190642017E-01, + 'eV' => 6.24145700000000E+18, + 'ev' => 6.24145700000000E+18, + 'HPh' => 3.72506430801000E-07, + 'hh' => 3.72506430801000E-07, + 'Wh' => 2.77777916238711E-04, + 'wh' => 2.77777916238711E-04, + 'flb' => 2.37304222192651E+01, + 'BTU' => 9.47815067349015E-04, + 'btu' => 9.47815067349015E-04 + ), + 'e' => array( 'J' => 1.00000048065700E-07, + 'e' => 1.0, + 'c' => 2.39006364353494E-08, + 'cal' => 2.38846305445111E-08, + 'eV' => 6.24146000000000E+11, + 'ev' => 6.24146000000000E+11, + 'HPh' => 3.72506609848824E-14, + 'hh' => 3.72506609848824E-14, + 'Wh' => 2.77778049754611E-11, + 'wh' => 2.77778049754611E-11, + 'flb' => 2.37304336254586E-06, + 'BTU' => 9.47815522922962E-11, + 'btu' => 9.47815522922962E-11 + ), + 'c' => array( 'J' => 4.18399101363672E+00, + 'e' => 4.18398900257312E+07, + 'c' => 1.0, + 'cal' => 9.99330315287563E-01, + 'eV' => 2.61142000000000E+19, + 'ev' => 2.61142000000000E+19, + 'HPh' => 1.55856355899327E-06, + 'hh' => 1.55856355899327E-06, + 'Wh' => 1.16222030532950E-03, + 'wh' => 1.16222030532950E-03, + 'flb' => 9.92878733152102E+01, + 'BTU' => 3.96564972437776E-03, + 'btu' => 3.96564972437776E-03 + ), + 'cal' => array( 'J' => 4.18679484613929E+00, + 'e' => 4.18679283372801E+07, + 'c' => 1.00067013349059E+00, + 'cal' => 1.0, + 'eV' => 2.61317000000000E+19, + 'ev' => 2.61317000000000E+19, + 'HPh' => 1.55960800463137E-06, + 'hh' => 1.55960800463137E-06, + 'Wh' => 1.16299914807955E-03, + 'wh' => 1.16299914807955E-03, + 'flb' => 9.93544094443283E+01, + 'BTU' => 3.96830723907002E-03, + 'btu' => 3.96830723907002E-03 + ), + 'eV' => array( 'J' => 1.60219000146921E-19, + 'e' => 1.60218923136574E-12, + 'c' => 3.82933423195043E-20, + 'cal' => 3.82676978535648E-20, + 'eV' => 1.0, + 'ev' => 1.0, + 'HPh' => 5.96826078912344E-26, + 'hh' => 5.96826078912344E-26, + 'Wh' => 4.45053000026614E-23, + 'wh' => 4.45053000026614E-23, + 'flb' => 3.80206452103492E-18, + 'BTU' => 1.51857982414846E-22, + 'btu' => 1.51857982414846E-22 + ), + 'ev' => array( 'J' => 1.60219000146921E-19, + 'e' => 1.60218923136574E-12, + 'c' => 3.82933423195043E-20, + 'cal' => 3.82676978535648E-20, + 'eV' => 1.0, + 'ev' => 1.0, + 'HPh' => 5.96826078912344E-26, + 'hh' => 5.96826078912344E-26, + 'Wh' => 4.45053000026614E-23, + 'wh' => 4.45053000026614E-23, + 'flb' => 3.80206452103492E-18, + 'BTU' => 1.51857982414846E-22, + 'btu' => 1.51857982414846E-22 + ), + 'HPh' => array( 'J' => 2.68451741316170E+06, + 'e' => 2.68451612283024E+13, + 'c' => 6.41616438565991E+05, + 'cal' => 6.41186757845835E+05, + 'eV' => 1.67553000000000E+25, + 'ev' => 1.67553000000000E+25, + 'HPh' => 1.0, + 'hh' => 1.0, + 'Wh' => 7.45699653134593E+02, + 'wh' => 7.45699653134593E+02, + 'flb' => 6.37047316692964E+07, + 'BTU' => 2.54442605275546E+03, + 'btu' => 2.54442605275546E+03 + ), + 'hh' => array( 'J' => 2.68451741316170E+06, + 'e' => 2.68451612283024E+13, + 'c' => 6.41616438565991E+05, + 'cal' => 6.41186757845835E+05, + 'eV' => 1.67553000000000E+25, + 'ev' => 1.67553000000000E+25, + 'HPh' => 1.0, + 'hh' => 1.0, + 'Wh' => 7.45699653134593E+02, + 'wh' => 7.45699653134593E+02, + 'flb' => 6.37047316692964E+07, + 'BTU' => 2.54442605275546E+03, + 'btu' => 2.54442605275546E+03 + ), + 'Wh' => array( 'J' => 3.59999820554720E+03, + 'e' => 3.59999647518369E+10, + 'c' => 8.60422069219046E+02, + 'cal' => 8.59845857713046E+02, + 'eV' => 2.24692340000000E+22, + 'ev' => 2.24692340000000E+22, + 'HPh' => 1.34102248243839E-03, + 'hh' => 1.34102248243839E-03, + 'Wh' => 1.0, + 'wh' => 1.0, + 'flb' => 8.54294774062316E+04, + 'BTU' => 3.41213254164705E+00, + 'btu' => 3.41213254164705E+00 + ), + 'wh' => array( 'J' => 3.59999820554720E+03, + 'e' => 3.59999647518369E+10, + 'c' => 8.60422069219046E+02, + 'cal' => 8.59845857713046E+02, + 'eV' => 2.24692340000000E+22, + 'ev' => 2.24692340000000E+22, + 'HPh' => 1.34102248243839E-03, + 'hh' => 1.34102248243839E-03, + 'Wh' => 1.0, + 'wh' => 1.0, + 'flb' => 8.54294774062316E+04, + 'BTU' => 3.41213254164705E+00, + 'btu' => 3.41213254164705E+00 + ), + 'flb' => array( 'J' => 4.21400003236424E-02, + 'e' => 4.21399800687660E+05, + 'c' => 1.00717234301644E-02, + 'cal' => 1.00649785509554E-02, + 'eV' => 2.63015000000000E+17, + 'ev' => 2.63015000000000E+17, + 'HPh' => 1.56974211145130E-08, + 'hh' => 1.56974211145130E-08, + 'Wh' => 1.17055614802000E-05, + 'wh' => 1.17055614802000E-05, + 'flb' => 1.0, + 'BTU' => 3.99409272448406E-05, + 'btu' => 3.99409272448406E-05 + ), + 'BTU' => array( 'J' => 1.05505813786749E+03, + 'e' => 1.05505763074665E+10, + 'c' => 2.52165488508168E+02, + 'cal' => 2.51996617135510E+02, + 'eV' => 6.58510000000000E+21, + 'ev' => 6.58510000000000E+21, + 'HPh' => 3.93015941224568E-04, + 'hh' => 3.93015941224568E-04, + 'Wh' => 2.93071851047526E-01, + 'wh' => 2.93071851047526E-01, + 'flb' => 2.50369750774671E+04, + 'BTU' => 1.0, + 'btu' => 1.0, + ), + 'btu' => array( 'J' => 1.05505813786749E+03, + 'e' => 1.05505763074665E+10, + 'c' => 2.52165488508168E+02, + 'cal' => 2.51996617135510E+02, + 'eV' => 6.58510000000000E+21, + 'ev' => 6.58510000000000E+21, + 'HPh' => 3.93015941224568E-04, + 'hh' => 3.93015941224568E-04, + 'Wh' => 2.93071851047526E-01, + 'wh' => 2.93071851047526E-01, + 'flb' => 2.50369750774671E+04, + 'BTU' => 1.0, + 'btu' => 1.0, + ) + ), + 'Power' => array( 'HP' => array( 'HP' => 1.0, + 'h' => 1.0, + 'W' => 7.45701000000000E+02, + 'w' => 7.45701000000000E+02 + ), + 'h' => array( 'HP' => 1.0, + 'h' => 1.0, + 'W' => 7.45701000000000E+02, + 'w' => 7.45701000000000E+02 + ), + 'W' => array( 'HP' => 1.34102006031908E-03, + 'h' => 1.34102006031908E-03, + 'W' => 1.0, + 'w' => 1.0 + ), + 'w' => array( 'HP' => 1.34102006031908E-03, + 'h' => 1.34102006031908E-03, + 'W' => 1.0, + 'w' => 1.0 + ) + ), + 'Magnetism' => array( 'T' => array( 'T' => 1.0, + 'ga' => 10000.0 + ), + 'ga' => array( 'T' => 0.0001, + 'ga' => 1.0 + ) + ), + 'Liquid' => array( 'tsp' => array( 'tsp' => 1.0, + 'tbs' => 3.33333333333333E-01, + 'oz' => 1.66666666666667E-01, + 'cup' => 2.08333333333333E-02, + 'pt' => 1.04166666666667E-02, + 'us_pt' => 1.04166666666667E-02, + 'uk_pt' => 8.67558516821960E-03, + 'qt' => 5.20833333333333E-03, + 'gal' => 1.30208333333333E-03, + 'l' => 4.92999408400710E-03, + 'lt' => 4.92999408400710E-03 + ), + 'tbs' => array( 'tsp' => 3.00000000000000E+00, + 'tbs' => 1.0, + 'oz' => 5.00000000000000E-01, + 'cup' => 6.25000000000000E-02, + 'pt' => 3.12500000000000E-02, + 'us_pt' => 3.12500000000000E-02, + 'uk_pt' => 2.60267555046588E-02, + 'qt' => 1.56250000000000E-02, + 'gal' => 3.90625000000000E-03, + 'l' => 1.47899822520213E-02, + 'lt' => 1.47899822520213E-02 + ), + 'oz' => array( 'tsp' => 6.00000000000000E+00, + 'tbs' => 2.00000000000000E+00, + 'oz' => 1.0, + 'cup' => 1.25000000000000E-01, + 'pt' => 6.25000000000000E-02, + 'us_pt' => 6.25000000000000E-02, + 'uk_pt' => 5.20535110093176E-02, + 'qt' => 3.12500000000000E-02, + 'gal' => 7.81250000000000E-03, + 'l' => 2.95799645040426E-02, + 'lt' => 2.95799645040426E-02 + ), + 'cup' => array( 'tsp' => 4.80000000000000E+01, + 'tbs' => 1.60000000000000E+01, + 'oz' => 8.00000000000000E+00, + 'cup' => 1.0, + 'pt' => 5.00000000000000E-01, + 'us_pt' => 5.00000000000000E-01, + 'uk_pt' => 4.16428088074541E-01, + 'qt' => 2.50000000000000E-01, + 'gal' => 6.25000000000000E-02, + 'l' => 2.36639716032341E-01, + 'lt' => 2.36639716032341E-01 + ), + 'pt' => array( 'tsp' => 9.60000000000000E+01, + 'tbs' => 3.20000000000000E+01, + 'oz' => 1.60000000000000E+01, + 'cup' => 2.00000000000000E+00, + 'pt' => 1.0, + 'us_pt' => 1.0, + 'uk_pt' => 8.32856176149081E-01, + 'qt' => 5.00000000000000E-01, + 'gal' => 1.25000000000000E-01, + 'l' => 4.73279432064682E-01, + 'lt' => 4.73279432064682E-01 + ), + 'us_pt' => array( 'tsp' => 9.60000000000000E+01, + 'tbs' => 3.20000000000000E+01, + 'oz' => 1.60000000000000E+01, + 'cup' => 2.00000000000000E+00, + 'pt' => 1.0, + 'us_pt' => 1.0, + 'uk_pt' => 8.32856176149081E-01, + 'qt' => 5.00000000000000E-01, + 'gal' => 1.25000000000000E-01, + 'l' => 4.73279432064682E-01, + 'lt' => 4.73279432064682E-01 + ), + 'uk_pt' => array( 'tsp' => 1.15266000000000E+02, + 'tbs' => 3.84220000000000E+01, + 'oz' => 1.92110000000000E+01, + 'cup' => 2.40137500000000E+00, + 'pt' => 1.20068750000000E+00, + 'us_pt' => 1.20068750000000E+00, + 'uk_pt' => 1.0, + 'qt' => 6.00343750000000E-01, + 'gal' => 1.50085937500000E-01, + 'l' => 5.68260698087162E-01, + 'lt' => 5.68260698087162E-01 + ), + 'qt' => array( 'tsp' => 1.92000000000000E+02, + 'tbs' => 6.40000000000000E+01, + 'oz' => 3.20000000000000E+01, + 'cup' => 4.00000000000000E+00, + 'pt' => 2.00000000000000E+00, + 'us_pt' => 2.00000000000000E+00, + 'uk_pt' => 1.66571235229816E+00, + 'qt' => 1.0, + 'gal' => 2.50000000000000E-01, + 'l' => 9.46558864129363E-01, + 'lt' => 9.46558864129363E-01 + ), + 'gal' => array( 'tsp' => 7.68000000000000E+02, + 'tbs' => 2.56000000000000E+02, + 'oz' => 1.28000000000000E+02, + 'cup' => 1.60000000000000E+01, + 'pt' => 8.00000000000000E+00, + 'us_pt' => 8.00000000000000E+00, + 'uk_pt' => 6.66284940919265E+00, + 'qt' => 4.00000000000000E+00, + 'gal' => 1.0, + 'l' => 3.78623545651745E+00, + 'lt' => 3.78623545651745E+00 + ), + 'l' => array( 'tsp' => 2.02840000000000E+02, + 'tbs' => 6.76133333333333E+01, + 'oz' => 3.38066666666667E+01, + 'cup' => 4.22583333333333E+00, + 'pt' => 2.11291666666667E+00, + 'us_pt' => 2.11291666666667E+00, + 'uk_pt' => 1.75975569552166E+00, + 'qt' => 1.05645833333333E+00, + 'gal' => 2.64114583333333E-01, + 'l' => 1.0, + 'lt' => 1.0 + ), + 'lt' => array( 'tsp' => 2.02840000000000E+02, + 'tbs' => 6.76133333333333E+01, + 'oz' => 3.38066666666667E+01, + 'cup' => 4.22583333333333E+00, + 'pt' => 2.11291666666667E+00, + 'us_pt' => 2.11291666666667E+00, + 'uk_pt' => 1.75975569552166E+00, + 'qt' => 1.05645833333333E+00, + 'gal' => 2.64114583333333E-01, + 'l' => 1.0, + 'lt' => 1.0 + ) + ) + ); + + + /** + * _parseComplex + * + * Parses a complex number into its real and imaginary parts, and an I or J suffix + * + * @param string $complexNumber The complex number + * @return string[] Indexed on "real", "imaginary" and "suffix" + */ + public static function _parseComplex($complexNumber) { + $workString = (string) $complexNumber; + + $realNumber = $imaginary = 0; + // Extract the suffix, if there is one + $suffix = substr($workString,-1); + if (!is_numeric($suffix)) { + $workString = substr($workString,0,-1); + } else { + $suffix = ''; + } + + // Split the input into its Real and Imaginary components + $leadingSign = 0; + if (strlen($workString) > 0) { + $leadingSign = (($workString{0} == '+') || ($workString{0} == '-')) ? 1 : 0; + } + $power = ''; + $realNumber = strtok($workString, '+-'); + if (strtoupper(substr($realNumber,-1)) == 'E') { + $power = strtok('+-'); + ++$leadingSign; + } + + $realNumber = substr($workString,0,strlen($realNumber)+strlen($power)+$leadingSign); + + if ($suffix != '') { + $imaginary = substr($workString,strlen($realNumber)); + + if (($imaginary == '') && (($realNumber == '') || ($realNumber == '+') || ($realNumber == '-'))) { + $imaginary = $realNumber.'1'; + $realNumber = '0'; + } else if ($imaginary == '') { + $imaginary = $realNumber; + $realNumber = '0'; + } elseif (($imaginary == '+') || ($imaginary == '-')) { + $imaginary .= '1'; + } + } + + return array( 'real' => $realNumber, + 'imaginary' => $imaginary, + 'suffix' => $suffix + ); + } // function _parseComplex() + + + /** + * _cleanComplex + * + * Cleans the leading characters in a complex number string + * + * @param string $complexNumber The complex number to clean + * @return string The "cleaned" complex number + */ + private static function _cleanComplex($complexNumber) { + if ($complexNumber{0} == '+') $complexNumber = substr($complexNumber,1); + if ($complexNumber{0} == '0') $complexNumber = substr($complexNumber,1); + if ($complexNumber{0} == '.') $complexNumber = '0'.$complexNumber; + if ($complexNumber{0} == '+') $complexNumber = substr($complexNumber,1); + return $complexNumber; + } + + + private static function _nbrConversionFormat($xVal,$places) { + if (!is_null($places)) { + if (strlen($xVal) <= $places) { + return substr(str_pad($xVal,$places,'0',STR_PAD_LEFT),-10); + } else { + return PHPExcel_Calculation_Functions::NaN(); + } + } + + return substr($xVal,-10); + } // function _nbrConversionFormat() + + + /** + * BESSELI + * + * Returns the modified Bessel function In(x), which is equivalent to the Bessel function evaluated + * for purely imaginary arguments + * + * Excel Function: + * BESSELI(x,ord) + * + * @access public + * @category Engineering Functions + * @param float $x The value at which to evaluate the function. + * If x is nonnumeric, BESSELI returns the #VALUE! error value. + * @param integer $ord The order of the Bessel function. + * If ord is not an integer, it is truncated. + * If $ord is nonnumeric, BESSELI returns the #VALUE! error value. + * If $ord < 0, BESSELI returns the #NUM! error value. + * @return float + * + */ + public static function BESSELI($x, $ord) { + $x = (is_null($x)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($x); + $ord = (is_null($ord)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($ord); + + if ((is_numeric($x)) && (is_numeric($ord))) { + $ord = floor($ord); + if ($ord < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + if (abs($x) <= 30) { + $fResult = $fTerm = pow($x / 2, $ord) / PHPExcel_Calculation_MathTrig::FACT($ord); + $ordK = 1; + $fSqrX = ($x * $x) / 4; + do { + $fTerm *= $fSqrX; + $fTerm /= ($ordK * ($ordK + $ord)); + $fResult += $fTerm; + } while ((abs($fTerm) > 1e-12) && (++$ordK < 100)); + } else { + $f_2_PI = 2 * M_PI; + + $fXAbs = abs($x); + $fResult = exp($fXAbs) / sqrt($f_2_PI * $fXAbs); + if (($ord & 1) && ($x < 0)) { + $fResult = -$fResult; + } + } + return (is_nan($fResult)) ? PHPExcel_Calculation_Functions::NaN() : $fResult; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function BESSELI() + + + /** + * BESSELJ + * + * Returns the Bessel function + * + * Excel Function: + * BESSELJ(x,ord) + * + * @access public + * @category Engineering Functions + * @param float $x The value at which to evaluate the function. + * If x is nonnumeric, BESSELJ returns the #VALUE! error value. + * @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated. + * If $ord is nonnumeric, BESSELJ returns the #VALUE! error value. + * If $ord < 0, BESSELJ returns the #NUM! error value. + * @return float + * + */ + public static function BESSELJ($x, $ord) { + $x = (is_null($x)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($x); + $ord = (is_null($ord)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($ord); + + if ((is_numeric($x)) && (is_numeric($ord))) { + $ord = floor($ord); + if ($ord < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $fResult = 0; + if (abs($x) <= 30) { + $fResult = $fTerm = pow($x / 2, $ord) / PHPExcel_Calculation_MathTrig::FACT($ord); + $ordK = 1; + $fSqrX = ($x * $x) / -4; + do { + $fTerm *= $fSqrX; + $fTerm /= ($ordK * ($ordK + $ord)); + $fResult += $fTerm; + } while ((abs($fTerm) > 1e-12) && (++$ordK < 100)); + } else { + $f_PI_DIV_2 = M_PI / 2; + $f_PI_DIV_4 = M_PI / 4; + + $fXAbs = abs($x); + $fResult = sqrt(M_2DIVPI / $fXAbs) * cos($fXAbs - $ord * $f_PI_DIV_2 - $f_PI_DIV_4); + if (($ord & 1) && ($x < 0)) { + $fResult = -$fResult; + } + } + return (is_nan($fResult)) ? PHPExcel_Calculation_Functions::NaN() : $fResult; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function BESSELJ() + + + private static function _Besselk0($fNum) { + if ($fNum <= 2) { + $fNum2 = $fNum * 0.5; + $y = ($fNum2 * $fNum2); + $fRet = -log($fNum2) * self::BESSELI($fNum, 0) + + (-0.57721566 + $y * (0.42278420 + $y * (0.23069756 + $y * (0.3488590e-1 + $y * (0.262698e-2 + $y * + (0.10750e-3 + $y * 0.74e-5)))))); + } else { + $y = 2 / $fNum; + $fRet = exp(-$fNum) / sqrt($fNum) * + (1.25331414 + $y * (-0.7832358e-1 + $y * (0.2189568e-1 + $y * (-0.1062446e-1 + $y * + (0.587872e-2 + $y * (-0.251540e-2 + $y * 0.53208e-3)))))); + } + return $fRet; + } // function _Besselk0() + + + private static function _Besselk1($fNum) { + if ($fNum <= 2) { + $fNum2 = $fNum * 0.5; + $y = ($fNum2 * $fNum2); + $fRet = log($fNum2) * self::BESSELI($fNum, 1) + + (1 + $y * (0.15443144 + $y * (-0.67278579 + $y * (-0.18156897 + $y * (-0.1919402e-1 + $y * + (-0.110404e-2 + $y * (-0.4686e-4))))))) / $fNum; + } else { + $y = 2 / $fNum; + $fRet = exp(-$fNum) / sqrt($fNum) * + (1.25331414 + $y * (0.23498619 + $y * (-0.3655620e-1 + $y * (0.1504268e-1 + $y * (-0.780353e-2 + $y * + (0.325614e-2 + $y * (-0.68245e-3))))))); + } + return $fRet; + } // function _Besselk1() + + + /** + * BESSELK + * + * Returns the modified Bessel function Kn(x), which is equivalent to the Bessel functions evaluated + * for purely imaginary arguments. + * + * Excel Function: + * BESSELK(x,ord) + * + * @access public + * @category Engineering Functions + * @param float $x The value at which to evaluate the function. + * If x is nonnumeric, BESSELK returns the #VALUE! error value. + * @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated. + * If $ord is nonnumeric, BESSELK returns the #VALUE! error value. + * If $ord < 0, BESSELK returns the #NUM! error value. + * @return float + * + */ + public static function BESSELK($x, $ord) { + $x = (is_null($x)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($x); + $ord = (is_null($ord)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($ord); + + if ((is_numeric($x)) && (is_numeric($ord))) { + if (($ord < 0) || ($x == 0.0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + switch(floor($ord)) { + case 0 : return self::_Besselk0($x); + break; + case 1 : return self::_Besselk1($x); + break; + default : $fTox = 2 / $x; + $fBkm = self::_Besselk0($x); + $fBk = self::_Besselk1($x); + for ($n = 1; $n < $ord; ++$n) { + $fBkp = $fBkm + $n * $fTox * $fBk; + $fBkm = $fBk; + $fBk = $fBkp; + } + } + return (is_nan($fBk)) ? PHPExcel_Calculation_Functions::NaN() : $fBk; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function BESSELK() + + + private static function _Bessely0($fNum) { + if ($fNum < 8.0) { + $y = ($fNum * $fNum); + $f1 = -2957821389.0 + $y * (7062834065.0 + $y * (-512359803.6 + $y * (10879881.29 + $y * (-86327.92757 + $y * 228.4622733)))); + $f2 = 40076544269.0 + $y * (745249964.8 + $y * (7189466.438 + $y * (47447.26470 + $y * (226.1030244 + $y)))); + $fRet = $f1 / $f2 + 0.636619772 * self::BESSELJ($fNum, 0) * log($fNum); + } else { + $z = 8.0 / $fNum; + $y = ($z * $z); + $xx = $fNum - 0.785398164; + $f1 = 1 + $y * (-0.1098628627e-2 + $y * (0.2734510407e-4 + $y * (-0.2073370639e-5 + $y * 0.2093887211e-6))); + $f2 = -0.1562499995e-1 + $y * (0.1430488765e-3 + $y * (-0.6911147651e-5 + $y * (0.7621095161e-6 + $y * (-0.934945152e-7)))); + $fRet = sqrt(0.636619772 / $fNum) * (sin($xx) * $f1 + $z * cos($xx) * $f2); + } + return $fRet; + } // function _Bessely0() + + + private static function _Bessely1($fNum) { + if ($fNum < 8.0) { + $y = ($fNum * $fNum); + $f1 = $fNum * (-0.4900604943e13 + $y * (0.1275274390e13 + $y * (-0.5153438139e11 + $y * (0.7349264551e9 + $y * + (-0.4237922726e7 + $y * 0.8511937935e4))))); + $f2 = 0.2499580570e14 + $y * (0.4244419664e12 + $y * (0.3733650367e10 + $y * (0.2245904002e8 + $y * + (0.1020426050e6 + $y * (0.3549632885e3 + $y))))); + $fRet = $f1 / $f2 + 0.636619772 * ( self::BESSELJ($fNum, 1) * log($fNum) - 1 / $fNum); + } else { + $fRet = sqrt(0.636619772 / $fNum) * sin($fNum - 2.356194491); + } + return $fRet; + } // function _Bessely1() + + + /** + * BESSELY + * + * Returns the Bessel function, which is also called the Weber function or the Neumann function. + * + * Excel Function: + * BESSELY(x,ord) + * + * @access public + * @category Engineering Functions + * @param float $x The value at which to evaluate the function. + * If x is nonnumeric, BESSELK returns the #VALUE! error value. + * @param integer $ord The order of the Bessel function. If n is not an integer, it is truncated. + * If $ord is nonnumeric, BESSELK returns the #VALUE! error value. + * If $ord < 0, BESSELK returns the #NUM! error value. + * + * @return float + */ + public static function BESSELY($x, $ord) { + $x = (is_null($x)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($x); + $ord = (is_null($ord)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($ord); + + if ((is_numeric($x)) && (is_numeric($ord))) { + if (($ord < 0) || ($x == 0.0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + switch(floor($ord)) { + case 0 : return self::_Bessely0($x); + break; + case 1 : return self::_Bessely1($x); + break; + default: $fTox = 2 / $x; + $fBym = self::_Bessely0($x); + $fBy = self::_Bessely1($x); + for ($n = 1; $n < $ord; ++$n) { + $fByp = $n * $fTox * $fBy - $fBym; + $fBym = $fBy; + $fBy = $fByp; + } + } + return (is_nan($fBy)) ? PHPExcel_Calculation_Functions::NaN() : $fBy; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function BESSELY() + + + /** + * BINTODEC + * + * Return a binary value as decimal. + * + * Excel Function: + * BIN2DEC(x) + * + * @access public + * @category Engineering Functions + * @param string $x The binary number (as a string) that you want to convert. The number + * cannot contain more than 10 characters (10 bits). The most significant + * bit of number is the sign bit. The remaining 9 bits are magnitude bits. + * Negative numbers are represented using two's-complement notation. + * If number is not a valid binary number, or if number contains more than + * 10 characters (10 bits), BIN2DEC returns the #NUM! error value. + * @return string + */ + public static function BINTODEC($x) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $x = floor($x); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[01]/',$x,$out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (strlen($x) > 10) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (strlen($x) == 10) { + // Two's Complement + $x = substr($x,-9); + return '-'.(512-bindec($x)); + } + return bindec($x); + } // function BINTODEC() + + + /** + * BINTOHEX + * + * Return a binary value as hex. + * + * Excel Function: + * BIN2HEX(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The binary number (as a string) that you want to convert. The number + * cannot contain more than 10 characters (10 bits). The most significant + * bit of number is the sign bit. The remaining 9 bits are magnitude bits. + * Negative numbers are represented using two's-complement notation. + * If number is not a valid binary number, or if number contains more than + * 10 characters (10 bits), BIN2HEX returns the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, BIN2HEX uses the + * minimum number of characters necessary. Places is useful for padding the + * return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, BIN2HEX returns the #VALUE! error value. + * If places is negative, BIN2HEX returns the #NUM! error value. + * @return string + */ + public static function BINTOHEX($x, $places=NULL) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $x = floor($x); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[01]/',$x,$out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (strlen($x) > 10) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (strlen($x) == 10) { + // Two's Complement + return str_repeat('F',8).substr(strtoupper(dechex(bindec(substr($x,-9)))),-2); + } + $hexVal = (string) strtoupper(dechex(bindec($x))); + + return self::_nbrConversionFormat($hexVal,$places); + } // function BINTOHEX() + + + /** + * BINTOOCT + * + * Return a binary value as octal. + * + * Excel Function: + * BIN2OCT(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The binary number (as a string) that you want to convert. The number + * cannot contain more than 10 characters (10 bits). The most significant + * bit of number is the sign bit. The remaining 9 bits are magnitude bits. + * Negative numbers are represented using two's-complement notation. + * If number is not a valid binary number, or if number contains more than + * 10 characters (10 bits), BIN2OCT returns the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, BIN2OCT uses the + * minimum number of characters necessary. Places is useful for padding the + * return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, BIN2OCT returns the #VALUE! error value. + * If places is negative, BIN2OCT returns the #NUM! error value. + * @return string + */ + public static function BINTOOCT($x, $places=NULL) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $x = floor($x); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[01]/',$x,$out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (strlen($x) > 10) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (strlen($x) == 10) { + // Two's Complement + return str_repeat('7',7).substr(strtoupper(decoct(bindec(substr($x,-9)))),-3); + } + $octVal = (string) decoct(bindec($x)); + + return self::_nbrConversionFormat($octVal,$places); + } // function BINTOOCT() + + + /** + * DECTOBIN + * + * Return a decimal value as binary. + * + * Excel Function: + * DEC2BIN(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The decimal integer you want to convert. If number is negative, + * valid place values are ignored and DEC2BIN returns a 10-character + * (10-bit) binary number in which the most significant bit is the sign + * bit. The remaining 9 bits are magnitude bits. Negative numbers are + * represented using two's-complement notation. + * If number < -512 or if number > 511, DEC2BIN returns the #NUM! error + * value. + * If number is nonnumeric, DEC2BIN returns the #VALUE! error value. + * If DEC2BIN requires more than places characters, it returns the #NUM! + * error value. + * @param integer $places The number of characters to use. If places is omitted, DEC2BIN uses + * the minimum number of characters necessary. Places is useful for + * padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, DEC2BIN returns the #VALUE! error value. + * If places is zero or negative, DEC2BIN returns the #NUM! error value. + * @return string + */ + public static function DECTOBIN($x, $places=NULL) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[-0123456789.]/',$x,$out)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) floor($x); + $r = decbin($x); + if (strlen($r) == 32) { + // Two's Complement + $r = substr($r,-10); + } elseif (strlen($r) > 11) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return self::_nbrConversionFormat($r,$places); + } // function DECTOBIN() + + + /** + * DECTOHEX + * + * Return a decimal value as hex. + * + * Excel Function: + * DEC2HEX(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The decimal integer you want to convert. If number is negative, + * places is ignored and DEC2HEX returns a 10-character (40-bit) + * hexadecimal number in which the most significant bit is the sign + * bit. The remaining 39 bits are magnitude bits. Negative numbers + * are represented using two's-complement notation. + * If number < -549,755,813,888 or if number > 549,755,813,887, + * DEC2HEX returns the #NUM! error value. + * If number is nonnumeric, DEC2HEX returns the #VALUE! error value. + * If DEC2HEX requires more than places characters, it returns the + * #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, DEC2HEX uses + * the minimum number of characters necessary. Places is useful for + * padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, DEC2HEX returns the #VALUE! error value. + * If places is zero or negative, DEC2HEX returns the #NUM! error value. + * @return string + */ + public static function DECTOHEX($x, $places=null) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[-0123456789.]/',$x,$out)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) floor($x); + $r = strtoupper(dechex($x)); + if (strlen($r) == 8) { + // Two's Complement + $r = 'FF'.$r; + } + + return self::_nbrConversionFormat($r,$places); + } // function DECTOHEX() + + + /** + * DECTOOCT + * + * Return an decimal value as octal. + * + * Excel Function: + * DEC2OCT(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The decimal integer you want to convert. If number is negative, + * places is ignored and DEC2OCT returns a 10-character (30-bit) + * octal number in which the most significant bit is the sign bit. + * The remaining 29 bits are magnitude bits. Negative numbers are + * represented using two's-complement notation. + * If number < -536,870,912 or if number > 536,870,911, DEC2OCT + * returns the #NUM! error value. + * If number is nonnumeric, DEC2OCT returns the #VALUE! error value. + * If DEC2OCT requires more than places characters, it returns the + * #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, DEC2OCT uses + * the minimum number of characters necessary. Places is useful for + * padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, DEC2OCT returns the #VALUE! error value. + * If places is zero or negative, DEC2OCT returns the #NUM! error value. + * @return string + */ + public static function DECTOOCT($x, $places=null) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $x = (int) $x; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[-0123456789.]/',$x,$out)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) floor($x); + $r = decoct($x); + if (strlen($r) == 11) { + // Two's Complement + $r = substr($r,-10); + } + + return self::_nbrConversionFormat($r,$places); + } // function DECTOOCT() + + + /** + * HEXTOBIN + * + * Return a hex value as binary. + * + * Excel Function: + * HEX2BIN(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x the hexadecimal number you want to convert. Number cannot + * contain more than 10 characters. The most significant bit of + * number is the sign bit (40th bit from the right). The remaining + * 9 bits are magnitude bits. Negative numbers are represented + * using two's-complement notation. + * If number is negative, HEX2BIN ignores places and returns a + * 10-character binary number. + * If number is negative, it cannot be less than FFFFFFFE00, and + * if number is positive, it cannot be greater than 1FF. + * If number is not a valid hexadecimal number, HEX2BIN returns + * the #NUM! error value. + * If HEX2BIN requires more than places characters, it returns + * the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, + * HEX2BIN uses the minimum number of characters necessary. Places + * is useful for padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, HEX2BIN returns the #VALUE! error value. + * If places is negative, HEX2BIN returns the #NUM! error value. + * @return string + */ + public static function HEXTOBIN($x, $places=null) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[0123456789ABCDEF]/',strtoupper($x),$out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $binVal = decbin(hexdec($x)); + + return substr(self::_nbrConversionFormat($binVal,$places),-10); + } // function HEXTOBIN() + + + /** + * HEXTODEC + * + * Return a hex value as decimal. + * + * Excel Function: + * HEX2DEC(x) + * + * @access public + * @category Engineering Functions + * @param string $x The hexadecimal number you want to convert. This number cannot + * contain more than 10 characters (40 bits). The most significant + * bit of number is the sign bit. The remaining 39 bits are magnitude + * bits. Negative numbers are represented using two's-complement + * notation. + * If number is not a valid hexadecimal number, HEX2DEC returns the + * #NUM! error value. + * @return string + */ + public static function HEXTODEC($x) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[0123456789ABCDEF]/',strtoupper($x),$out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return hexdec($x); + } // function HEXTODEC() + + + /** + * HEXTOOCT + * + * Return a hex value as octal. + * + * Excel Function: + * HEX2OCT(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The hexadecimal number you want to convert. Number cannot + * contain more than 10 characters. The most significant bit of + * number is the sign bit. The remaining 39 bits are magnitude + * bits. Negative numbers are represented using two's-complement + * notation. + * If number is negative, HEX2OCT ignores places and returns a + * 10-character octal number. + * If number is negative, it cannot be less than FFE0000000, and + * if number is positive, it cannot be greater than 1FFFFFFF. + * If number is not a valid hexadecimal number, HEX2OCT returns + * the #NUM! error value. + * If HEX2OCT requires more than places characters, it returns + * the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, HEX2OCT + * uses the minimum number of characters necessary. Places is + * useful for padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, HEX2OCT returns the #VALUE! error + * value. + * If places is negative, HEX2OCT returns the #NUM! error value. + * @return string + */ + public static function HEXTOOCT($x, $places=null) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (strlen($x) > preg_match_all('/[0123456789ABCDEF]/',strtoupper($x),$out)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $octVal = decoct(hexdec($x)); + + return self::_nbrConversionFormat($octVal,$places); + } // function HEXTOOCT() + + + /** + * OCTTOBIN + * + * Return an octal value as binary. + * + * Excel Function: + * OCT2BIN(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The octal number you want to convert. Number may not + * contain more than 10 characters. The most significant + * bit of number is the sign bit. The remaining 29 bits + * are magnitude bits. Negative numbers are represented + * using two's-complement notation. + * If number is negative, OCT2BIN ignores places and returns + * a 10-character binary number. + * If number is negative, it cannot be less than 7777777000, + * and if number is positive, it cannot be greater than 777. + * If number is not a valid octal number, OCT2BIN returns + * the #NUM! error value. + * If OCT2BIN requires more than places characters, it + * returns the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, + * OCT2BIN uses the minimum number of characters necessary. + * Places is useful for padding the return value with + * leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, OCT2BIN returns the #VALUE! + * error value. + * If places is negative, OCT2BIN returns the #NUM! error + * value. + * @return string + */ + public static function OCTTOBIN($x, $places=null) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (preg_match_all('/[01234567]/',$x,$out) != strlen($x)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $r = decbin(octdec($x)); + + return self::_nbrConversionFormat($r,$places); + } // function OCTTOBIN() + + + /** + * OCTTODEC + * + * Return an octal value as decimal. + * + * Excel Function: + * OCT2DEC(x) + * + * @access public + * @category Engineering Functions + * @param string $x The octal number you want to convert. Number may not contain + * more than 10 octal characters (30 bits). The most significant + * bit of number is the sign bit. The remaining 29 bits are + * magnitude bits. Negative numbers are represented using + * two's-complement notation. + * If number is not a valid octal number, OCT2DEC returns the + * #NUM! error value. + * @return string + */ + public static function OCTTODEC($x) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (preg_match_all('/[01234567]/',$x,$out) != strlen($x)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return octdec($x); + } // function OCTTODEC() + + + /** + * OCTTOHEX + * + * Return an octal value as hex. + * + * Excel Function: + * OCT2HEX(x[,places]) + * + * @access public + * @category Engineering Functions + * @param string $x The octal number you want to convert. Number may not contain + * more than 10 octal characters (30 bits). The most significant + * bit of number is the sign bit. The remaining 29 bits are + * magnitude bits. Negative numbers are represented using + * two's-complement notation. + * If number is negative, OCT2HEX ignores places and returns a + * 10-character hexadecimal number. + * If number is not a valid octal number, OCT2HEX returns the + * #NUM! error value. + * If OCT2HEX requires more than places characters, it returns + * the #NUM! error value. + * @param integer $places The number of characters to use. If places is omitted, OCT2HEX + * uses the minimum number of characters necessary. Places is useful + * for padding the return value with leading 0s (zeros). + * If places is not an integer, it is truncated. + * If places is nonnumeric, OCT2HEX returns the #VALUE! error value. + * If places is negative, OCT2HEX returns the #NUM! error value. + * @return string + */ + public static function OCTTOHEX($x, $places=null) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $places = PHPExcel_Calculation_Functions::flattenSingleValue($places); + + if (is_bool($x)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $x = (string) $x; + if (preg_match_all('/[01234567]/',$x,$out) != strlen($x)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $hexVal = strtoupper(dechex(octdec($x))); + + return self::_nbrConversionFormat($hexVal,$places); + } // function OCTTOHEX() + + + /** + * COMPLEX + * + * Converts real and imaginary coefficients into a complex number of the form x + yi or x + yj. + * + * Excel Function: + * COMPLEX(realNumber,imaginary[,places]) + * + * @access public + * @category Engineering Functions + * @param float $realNumber The real coefficient of the complex number. + * @param float $imaginary The imaginary coefficient of the complex number. + * @param string $suffix The suffix for the imaginary component of the complex number. + * If omitted, the suffix is assumed to be "i". + * @return string + */ + public static function COMPLEX($realNumber=0.0, $imaginary=0.0, $suffix='i') { + $realNumber = (is_null($realNumber)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($realNumber); + $imaginary = (is_null($imaginary)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($imaginary); + $suffix = (is_null($suffix)) ? 'i' : PHPExcel_Calculation_Functions::flattenSingleValue($suffix); + + if (((is_numeric($realNumber)) && (is_numeric($imaginary))) && + (($suffix == 'i') || ($suffix == 'j') || ($suffix == ''))) { + $realNumber = (float) $realNumber; + $imaginary = (float) $imaginary; + + if ($suffix == '') $suffix = 'i'; + if ($realNumber == 0.0) { + if ($imaginary == 0.0) { + return (string) '0'; + } elseif ($imaginary == 1.0) { + return (string) $suffix; + } elseif ($imaginary == -1.0) { + return (string) '-'.$suffix; + } + return (string) $imaginary.$suffix; + } elseif ($imaginary == 0.0) { + return (string) $realNumber; + } elseif ($imaginary == 1.0) { + return (string) $realNumber.'+'.$suffix; + } elseif ($imaginary == -1.0) { + return (string) $realNumber.'-'.$suffix; + } + if ($imaginary > 0) { $imaginary = (string) '+'.$imaginary; } + return (string) $realNumber.$imaginary.$suffix; + } + + return PHPExcel_Calculation_Functions::VALUE(); + } // function COMPLEX() + + + /** + * IMAGINARY + * + * Returns the imaginary coefficient of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMAGINARY(complexNumber) + * + * @access public + * @category Engineering Functions + * @param string $complexNumber The complex number for which you want the imaginary + * coefficient. + * @return float + */ + public static function IMAGINARY($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + return $parsedComplex['imaginary']; + } // function IMAGINARY() + + + /** + * IMREAL + * + * Returns the real coefficient of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMREAL(complexNumber) + * + * @access public + * @category Engineering Functions + * @param string $complexNumber The complex number for which you want the real coefficient. + * @return float + */ + public static function IMREAL($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + return $parsedComplex['real']; + } // function IMREAL() + + + /** + * IMABS + * + * Returns the absolute value (modulus) of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMABS(complexNumber) + * + * @param string $complexNumber The complex number for which you want the absolute value. + * @return float + */ + public static function IMABS($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + + return sqrt(($parsedComplex['real'] * $parsedComplex['real']) + ($parsedComplex['imaginary'] * $parsedComplex['imaginary'])); + } // function IMABS() + + + /** + * IMARGUMENT + * + * Returns the argument theta of a complex number, i.e. the angle in radians from the real + * axis to the representation of the number in polar coordinates. + * + * Excel Function: + * IMARGUMENT(complexNumber) + * + * @param string $complexNumber The complex number for which you want the argument theta. + * @return float + */ + public static function IMARGUMENT($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + + if ($parsedComplex['real'] == 0.0) { + if ($parsedComplex['imaginary'] == 0.0) { + return 0.0; + } elseif($parsedComplex['imaginary'] < 0.0) { + return M_PI / -2; + } else { + return M_PI / 2; + } + } elseif ($parsedComplex['real'] > 0.0) { + return atan($parsedComplex['imaginary'] / $parsedComplex['real']); + } elseif ($parsedComplex['imaginary'] < 0.0) { + return 0 - (M_PI - atan(abs($parsedComplex['imaginary']) / abs($parsedComplex['real']))); + } else { + return M_PI - atan($parsedComplex['imaginary'] / abs($parsedComplex['real'])); + } + } // function IMARGUMENT() + + + /** + * IMCONJUGATE + * + * Returns the complex conjugate of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMCONJUGATE(complexNumber) + * + * @param string $complexNumber The complex number for which you want the conjugate. + * @return string + */ + public static function IMCONJUGATE($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + + if ($parsedComplex['imaginary'] == 0.0) { + return $parsedComplex['real']; + } else { + return self::_cleanComplex( self::COMPLEX( $parsedComplex['real'], + 0 - $parsedComplex['imaginary'], + $parsedComplex['suffix'] + ) + ); + } + } // function IMCONJUGATE() + + + /** + * IMCOS + * + * Returns the cosine of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMCOS(complexNumber) + * + * @param string $complexNumber The complex number for which you want the cosine. + * @return string|float + */ + public static function IMCOS($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + + if ($parsedComplex['imaginary'] == 0.0) { + return cos($parsedComplex['real']); + } else { + return self::IMCONJUGATE(self::COMPLEX(cos($parsedComplex['real']) * cosh($parsedComplex['imaginary']),sin($parsedComplex['real']) * sinh($parsedComplex['imaginary']),$parsedComplex['suffix'])); + } + } // function IMCOS() + + + /** + * IMSIN + * + * Returns the sine of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMSIN(complexNumber) + * + * @param string $complexNumber The complex number for which you want the sine. + * @return string|float + */ + public static function IMSIN($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + + if ($parsedComplex['imaginary'] == 0.0) { + return sin($parsedComplex['real']); + } else { + return self::COMPLEX(sin($parsedComplex['real']) * cosh($parsedComplex['imaginary']),cos($parsedComplex['real']) * sinh($parsedComplex['imaginary']),$parsedComplex['suffix']); + } + } // function IMSIN() + + + /** + * IMSQRT + * + * Returns the square root of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMSQRT(complexNumber) + * + * @param string $complexNumber The complex number for which you want the square root. + * @return string + */ + public static function IMSQRT($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + + $theta = self::IMARGUMENT($complexNumber); + $d1 = cos($theta / 2); + $d2 = sin($theta / 2); + $r = sqrt(sqrt(($parsedComplex['real'] * $parsedComplex['real']) + ($parsedComplex['imaginary'] * $parsedComplex['imaginary']))); + + if ($parsedComplex['suffix'] == '') { + return self::COMPLEX($d1 * $r,$d2 * $r); + } else { + return self::COMPLEX($d1 * $r,$d2 * $r,$parsedComplex['suffix']); + } + } // function IMSQRT() + + + /** + * IMLN + * + * Returns the natural logarithm of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMLN(complexNumber) + * + * @param string $complexNumber The complex number for which you want the natural logarithm. + * @return string + */ + public static function IMLN($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + + if (($parsedComplex['real'] == 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $logR = log(sqrt(($parsedComplex['real'] * $parsedComplex['real']) + ($parsedComplex['imaginary'] * $parsedComplex['imaginary']))); + $t = self::IMARGUMENT($complexNumber); + + if ($parsedComplex['suffix'] == '') { + return self::COMPLEX($logR,$t); + } else { + return self::COMPLEX($logR,$t,$parsedComplex['suffix']); + } + } // function IMLN() + + + /** + * IMLOG10 + * + * Returns the common logarithm (base 10) of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMLOG10(complexNumber) + * + * @param string $complexNumber The complex number for which you want the common logarithm. + * @return string + */ + public static function IMLOG10($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + + if (($parsedComplex['real'] == 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (($parsedComplex['real'] > 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return log10($parsedComplex['real']); + } + + return self::IMPRODUCT(log10(EULER),self::IMLN($complexNumber)); + } // function IMLOG10() + + + /** + * IMLOG2 + * + * Returns the common logarithm (base 10) of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMLOG2(complexNumber) + * + * @param string $complexNumber The complex number for which you want the base-2 logarithm. + * @return string + */ + public static function IMLOG2($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + + if (($parsedComplex['real'] == 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (($parsedComplex['real'] > 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return log($parsedComplex['real'],2); + } + + return self::IMPRODUCT(log(EULER,2),self::IMLN($complexNumber)); + } // function IMLOG2() + + + /** + * IMEXP + * + * Returns the exponential of a complex number in x + yi or x + yj text format. + * + * Excel Function: + * IMEXP(complexNumber) + * + * @param string $complexNumber The complex number for which you want the exponential. + * @return string + */ + public static function IMEXP($complexNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + + $parsedComplex = self::_parseComplex($complexNumber); + + if (($parsedComplex['real'] == 0.0) && ($parsedComplex['imaginary'] == 0.0)) { + return '1'; + } + + $e = exp($parsedComplex['real']); + $eX = $e * cos($parsedComplex['imaginary']); + $eY = $e * sin($parsedComplex['imaginary']); + + if ($parsedComplex['suffix'] == '') { + return self::COMPLEX($eX,$eY); + } else { + return self::COMPLEX($eX,$eY,$parsedComplex['suffix']); + } + } // function IMEXP() + + + /** + * IMPOWER + * + * Returns a complex number in x + yi or x + yj text format raised to a power. + * + * Excel Function: + * IMPOWER(complexNumber,realNumber) + * + * @param string $complexNumber The complex number you want to raise to a power. + * @param float $realNumber The power to which you want to raise the complex number. + * @return string + */ + public static function IMPOWER($complexNumber,$realNumber) { + $complexNumber = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber); + $realNumber = PHPExcel_Calculation_Functions::flattenSingleValue($realNumber); + + if (!is_numeric($realNumber)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + $parsedComplex = self::_parseComplex($complexNumber); + + $r = sqrt(($parsedComplex['real'] * $parsedComplex['real']) + ($parsedComplex['imaginary'] * $parsedComplex['imaginary'])); + $rPower = pow($r,$realNumber); + $theta = self::IMARGUMENT($complexNumber) * $realNumber; + if ($theta == 0) { + return 1; + } elseif ($parsedComplex['imaginary'] == 0.0) { + return self::COMPLEX($rPower * cos($theta),$rPower * sin($theta),$parsedComplex['suffix']); + } else { + return self::COMPLEX($rPower * cos($theta),$rPower * sin($theta),$parsedComplex['suffix']); + } + } // function IMPOWER() + + + /** + * IMDIV + * + * Returns the quotient of two complex numbers in x + yi or x + yj text format. + * + * Excel Function: + * IMDIV(complexDividend,complexDivisor) + * + * @param string $complexDividend The complex numerator or dividend. + * @param string $complexDivisor The complex denominator or divisor. + * @return string + */ + public static function IMDIV($complexDividend,$complexDivisor) { + $complexDividend = PHPExcel_Calculation_Functions::flattenSingleValue($complexDividend); + $complexDivisor = PHPExcel_Calculation_Functions::flattenSingleValue($complexDivisor); + + $parsedComplexDividend = self::_parseComplex($complexDividend); + $parsedComplexDivisor = self::_parseComplex($complexDivisor); + + if (($parsedComplexDividend['suffix'] != '') && ($parsedComplexDivisor['suffix'] != '') && + ($parsedComplexDividend['suffix'] != $parsedComplexDivisor['suffix'])) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($parsedComplexDividend['suffix'] != '') && ($parsedComplexDivisor['suffix'] == '')) { + $parsedComplexDivisor['suffix'] = $parsedComplexDividend['suffix']; + } + + $d1 = ($parsedComplexDividend['real'] * $parsedComplexDivisor['real']) + ($parsedComplexDividend['imaginary'] * $parsedComplexDivisor['imaginary']); + $d2 = ($parsedComplexDividend['imaginary'] * $parsedComplexDivisor['real']) - ($parsedComplexDividend['real'] * $parsedComplexDivisor['imaginary']); + $d3 = ($parsedComplexDivisor['real'] * $parsedComplexDivisor['real']) + ($parsedComplexDivisor['imaginary'] * $parsedComplexDivisor['imaginary']); + + $r = $d1/$d3; + $i = $d2/$d3; + + if ($i > 0.0) { + return self::_cleanComplex($r.'+'.$i.$parsedComplexDivisor['suffix']); + } elseif ($i < 0.0) { + return self::_cleanComplex($r.$i.$parsedComplexDivisor['suffix']); + } else { + return $r; + } + } // function IMDIV() + + + /** + * IMSUB + * + * Returns the difference of two complex numbers in x + yi or x + yj text format. + * + * Excel Function: + * IMSUB(complexNumber1,complexNumber2) + * + * @param string $complexNumber1 The complex number from which to subtract complexNumber2. + * @param string $complexNumber2 The complex number to subtract from complexNumber1. + * @return string + */ + public static function IMSUB($complexNumber1,$complexNumber2) { + $complexNumber1 = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber1); + $complexNumber2 = PHPExcel_Calculation_Functions::flattenSingleValue($complexNumber2); + + $parsedComplex1 = self::_parseComplex($complexNumber1); + $parsedComplex2 = self::_parseComplex($complexNumber2); + + if ((($parsedComplex1['suffix'] != '') && ($parsedComplex2['suffix'] != '')) && + ($parsedComplex1['suffix'] != $parsedComplex2['suffix'])) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif (($parsedComplex1['suffix'] == '') && ($parsedComplex2['suffix'] != '')) { + $parsedComplex1['suffix'] = $parsedComplex2['suffix']; + } + + $d1 = $parsedComplex1['real'] - $parsedComplex2['real']; + $d2 = $parsedComplex1['imaginary'] - $parsedComplex2['imaginary']; + + return self::COMPLEX($d1,$d2,$parsedComplex1['suffix']); + } // function IMSUB() + + + /** + * IMSUM + * + * Returns the sum of two or more complex numbers in x + yi or x + yj text format. + * + * Excel Function: + * IMSUM(complexNumber[,complexNumber[,...]]) + * + * @param string $complexNumber,... Series of complex numbers to add + * @return string + */ + public static function IMSUM() { + // Return value + $returnValue = self::_parseComplex('0'); + $activeSuffix = ''; + + // Loop through the arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + $parsedComplex = self::_parseComplex($arg); + + if ($activeSuffix == '') { + $activeSuffix = $parsedComplex['suffix']; + } elseif (($parsedComplex['suffix'] != '') && ($activeSuffix != $parsedComplex['suffix'])) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + $returnValue['real'] += $parsedComplex['real']; + $returnValue['imaginary'] += $parsedComplex['imaginary']; + } + + if ($returnValue['imaginary'] == 0.0) { $activeSuffix = ''; } + return self::COMPLEX($returnValue['real'],$returnValue['imaginary'],$activeSuffix); + } // function IMSUM() + + + /** + * IMPRODUCT + * + * Returns the product of two or more complex numbers in x + yi or x + yj text format. + * + * Excel Function: + * IMPRODUCT(complexNumber[,complexNumber[,...]]) + * + * @param string $complexNumber,... Series of complex numbers to multiply + * @return string + */ + public static function IMPRODUCT() { + // Return value + $returnValue = self::_parseComplex('1'); + $activeSuffix = ''; + + // Loop through the arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + $parsedComplex = self::_parseComplex($arg); + + $workValue = $returnValue; + if (($parsedComplex['suffix'] != '') && ($activeSuffix == '')) { + $activeSuffix = $parsedComplex['suffix']; + } elseif (($parsedComplex['suffix'] != '') && ($activeSuffix != $parsedComplex['suffix'])) { + return PHPExcel_Calculation_Functions::NaN(); + } + $returnValue['real'] = ($workValue['real'] * $parsedComplex['real']) - ($workValue['imaginary'] * $parsedComplex['imaginary']); + $returnValue['imaginary'] = ($workValue['real'] * $parsedComplex['imaginary']) + ($workValue['imaginary'] * $parsedComplex['real']); + } + + if ($returnValue['imaginary'] == 0.0) { $activeSuffix = ''; } + return self::COMPLEX($returnValue['real'],$returnValue['imaginary'],$activeSuffix); + } // function IMPRODUCT() + + + /** + * DELTA + * + * Tests whether two values are equal. Returns 1 if number1 = number2; returns 0 otherwise. + * Use this function to filter a set of values. For example, by summing several DELTA + * functions you calculate the count of equal pairs. This function is also known as the + * Kronecker Delta function. + * + * Excel Function: + * DELTA(a[,b]) + * + * @param float $a The first number. + * @param float $b The second number. If omitted, b is assumed to be zero. + * @return int + */ + public static function DELTA($a, $b=0) { + $a = PHPExcel_Calculation_Functions::flattenSingleValue($a); + $b = PHPExcel_Calculation_Functions::flattenSingleValue($b); + + return (int) ($a == $b); + } // function DELTA() + + + /** + * GESTEP + * + * Excel Function: + * GESTEP(number[,step]) + * + * Returns 1 if number >= step; returns 0 (zero) otherwise + * Use this function to filter a set of values. For example, by summing several GESTEP + * functions you calculate the count of values that exceed a threshold. + * + * @param float $number The value to test against step. + * @param float $step The threshold value. + * If you omit a value for step, GESTEP uses zero. + * @return int + */ + public static function GESTEP($number, $step=0) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $step = PHPExcel_Calculation_Functions::flattenSingleValue($step); + + return (int) ($number >= $step); + } // function GESTEP() + + + // + // Private method to calculate the erf value + // + private static $_two_sqrtpi = 1.128379167095512574; + + public static function _erfVal($x) { + if (abs($x) > 2.2) { + return 1 - self::_erfcVal($x); + } + $sum = $term = $x; + $xsqr = ($x * $x); + $j = 1; + do { + $term *= $xsqr / $j; + $sum -= $term / (2 * $j + 1); + ++$j; + $term *= $xsqr / $j; + $sum += $term / (2 * $j + 1); + ++$j; + if ($sum == 0.0) { + break; + } + } while (abs($term / $sum) > PRECISION); + return self::$_two_sqrtpi * $sum; + } // function _erfVal() + + + /** + * ERF + * + * Returns the error function integrated between the lower and upper bound arguments. + * + * Note: In Excel 2007 or earlier, if you input a negative value for the upper or lower bound arguments, + * the function would return a #NUM! error. However, in Excel 2010, the function algorithm was + * improved, so that it can now calculate the function for both positive and negative ranges. + * PHPExcel follows Excel 2010 behaviour, and accepts nagative arguments. + * + * Excel Function: + * ERF(lower[,upper]) + * + * @param float $lower lower bound for integrating ERF + * @param float $upper upper bound for integrating ERF. + * If omitted, ERF integrates between zero and lower_limit + * @return float + */ + public static function ERF($lower, $upper = NULL) { + $lower = PHPExcel_Calculation_Functions::flattenSingleValue($lower); + $upper = PHPExcel_Calculation_Functions::flattenSingleValue($upper); + + if (is_numeric($lower)) { + if (is_null($upper)) { + return self::_erfVal($lower); + } + if (is_numeric($upper)) { + return self::_erfVal($upper) - self::_erfVal($lower); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function ERF() + + + // + // Private method to calculate the erfc value + // + private static $_one_sqrtpi = 0.564189583547756287; + + private static function _erfcVal($x) { + if (abs($x) < 2.2) { + return 1 - self::_erfVal($x); + } + if ($x < 0) { + return 2 - self::ERFC(-$x); + } + $a = $n = 1; + $b = $c = $x; + $d = ($x * $x) + 0.5; + $q1 = $q2 = $b / $d; + $t = 0; + do { + $t = $a * $n + $b * $x; + $a = $b; + $b = $t; + $t = $c * $n + $d * $x; + $c = $d; + $d = $t; + $n += 0.5; + $q1 = $q2; + $q2 = $b / $d; + } while ((abs($q1 - $q2) / $q2) > PRECISION); + return self::$_one_sqrtpi * exp(-$x * $x) * $q2; + } // function _erfcVal() + + + /** + * ERFC + * + * Returns the complementary ERF function integrated between x and infinity + * + * Note: In Excel 2007 or earlier, if you input a negative value for the lower bound argument, + * the function would return a #NUM! error. However, in Excel 2010, the function algorithm was + * improved, so that it can now calculate the function for both positive and negative x values. + * PHPExcel follows Excel 2010 behaviour, and accepts nagative arguments. + * + * Excel Function: + * ERFC(x) + * + * @param float $x The lower bound for integrating ERFC + * @return float + */ + public static function ERFC($x) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + + if (is_numeric($x)) { + return self::_erfcVal($x); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function ERFC() + + + /** + * getConversionGroups + * Returns a list of the different conversion groups for UOM conversions + * + * @return array + */ + public static function getConversionGroups() { + $conversionGroups = array(); + foreach(self::$_conversionUnits as $conversionUnit) { + $conversionGroups[] = $conversionUnit['Group']; + } + return array_merge(array_unique($conversionGroups)); + } // function getConversionGroups() + + + /** + * getConversionGroupUnits + * Returns an array of units of measure, for a specified conversion group, or for all groups + * + * @param string $group The group whose units of measure you want to retrieve + * + * @return array + */ + public static function getConversionGroupUnits($group = NULL) { + $conversionGroups = array(); + foreach(self::$_conversionUnits as $conversionUnit => $conversionGroup) { + if ((is_null($group)) || ($conversionGroup['Group'] == $group)) { + $conversionGroups[$conversionGroup['Group']][] = $conversionUnit; + } + } + return $conversionGroups; + } // function getConversionGroupUnits() + + + /** + * getConversionGroupUnitDetails + * + * @return array + */ + public static function getConversionGroupUnitDetails($group = NULL) { + $conversionGroups = array(); + foreach(self::$_conversionUnits as $conversionUnit => $conversionGroup) { + if ((is_null($group)) || ($conversionGroup['Group'] == $group)) { + $conversionGroups[$conversionGroup['Group']][] = array( 'unit' => $conversionUnit, + 'description' => $conversionGroup['Unit Name'] + ); + } + } + return $conversionGroups; + } // function getConversionGroupUnitDetails() + + + /** + * getConversionMultipliers + * Returns an array of the Multiplier prefixes that can be used with Units of Measure in CONVERTUOM() + * + * @return array of mixed + */ + public static function getConversionMultipliers() { + return self::$_conversionMultipliers; + } // function getConversionGroups() + + + /** + * CONVERTUOM + * + * Converts a number from one measurement system to another. + * For example, CONVERT can translate a table of distances in miles to a table of distances + * in kilometers. + * + * Excel Function: + * CONVERT(value,fromUOM,toUOM) + * + * @param float $value The value in fromUOM to convert. + * @param string $fromUOM The units for value. + * @param string $toUOM The units for the result. + * + * @return float + */ + public static function CONVERTUOM($value, $fromUOM, $toUOM) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $fromUOM = PHPExcel_Calculation_Functions::flattenSingleValue($fromUOM); + $toUOM = PHPExcel_Calculation_Functions::flattenSingleValue($toUOM); + + if (!is_numeric($value)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $fromMultiplier = 1.0; + if (isset(self::$_conversionUnits[$fromUOM])) { + $unitGroup1 = self::$_conversionUnits[$fromUOM]['Group']; + } else { + $fromMultiplier = substr($fromUOM,0,1); + $fromUOM = substr($fromUOM,1); + if (isset(self::$_conversionMultipliers[$fromMultiplier])) { + $fromMultiplier = self::$_conversionMultipliers[$fromMultiplier]['multiplier']; + } else { + return PHPExcel_Calculation_Functions::NA(); + } + if ((isset(self::$_conversionUnits[$fromUOM])) && (self::$_conversionUnits[$fromUOM]['AllowPrefix'])) { + $unitGroup1 = self::$_conversionUnits[$fromUOM]['Group']; + } else { + return PHPExcel_Calculation_Functions::NA(); + } + } + $value *= $fromMultiplier; + + $toMultiplier = 1.0; + if (isset(self::$_conversionUnits[$toUOM])) { + $unitGroup2 = self::$_conversionUnits[$toUOM]['Group']; + } else { + $toMultiplier = substr($toUOM,0,1); + $toUOM = substr($toUOM,1); + if (isset(self::$_conversionMultipliers[$toMultiplier])) { + $toMultiplier = self::$_conversionMultipliers[$toMultiplier]['multiplier']; + } else { + return PHPExcel_Calculation_Functions::NA(); + } + if ((isset(self::$_conversionUnits[$toUOM])) && (self::$_conversionUnits[$toUOM]['AllowPrefix'])) { + $unitGroup2 = self::$_conversionUnits[$toUOM]['Group']; + } else { + return PHPExcel_Calculation_Functions::NA(); + } + } + if ($unitGroup1 != $unitGroup2) { + return PHPExcel_Calculation_Functions::NA(); + } + + if (($fromUOM == $toUOM) && ($fromMultiplier == $toMultiplier)) { + // We've already factored $fromMultiplier into the value, so we need + // to reverse it again + return $value / $fromMultiplier; + } elseif ($unitGroup1 == 'Temperature') { + if (($fromUOM == 'F') || ($fromUOM == 'fah')) { + if (($toUOM == 'F') || ($toUOM == 'fah')) { + return $value; + } else { + $value = (($value - 32) / 1.8); + if (($toUOM == 'K') || ($toUOM == 'kel')) { + $value += 273.15; + } + return $value; + } + } elseif ((($fromUOM == 'K') || ($fromUOM == 'kel')) && + (($toUOM == 'K') || ($toUOM == 'kel'))) { + return $value; + } elseif ((($fromUOM == 'C') || ($fromUOM == 'cel')) && + (($toUOM == 'C') || ($toUOM == 'cel'))) { + return $value; + } + if (($toUOM == 'F') || ($toUOM == 'fah')) { + if (($fromUOM == 'K') || ($fromUOM == 'kel')) { + $value -= 273.15; + } + return ($value * 1.8) + 32; + } + if (($toUOM == 'C') || ($toUOM == 'cel')) { + return $value - 273.15; + } + return $value + 273.15; + } + return ($value * self::$_unitConversions[$unitGroup1][$fromUOM][$toUOM]) / $toMultiplier; + } // function CONVERTUOM() + +} // class PHPExcel_Calculation_Engineering diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/Exception.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Exception.php new file mode 100644 index 0000000..31aa287 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Exception.php @@ -0,0 +1,52 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Calculation_Exception + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_Exception extends Exception { + /** + * Error handler callback + * + * @param mixed $code + * @param mixed $string + * @param mixed $file + * @param mixed $line + * @param mixed $context + */ + public static function errorHandlerCallback($code, $string, $file, $line, $context) { + $e = new self($string, $code); + $e->line = $line; + $e->file = $file; + throw $e; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/ExceptionHandler.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/ExceptionHandler.php new file mode 100644 index 0000000..8b89a8f --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/ExceptionHandler.php @@ -0,0 +1,49 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Calculation_ExceptionHandler + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_ExceptionHandler { + /** + * Register errorhandler + */ + public function __construct() { + set_error_handler(array('PHPExcel_Calculation_Exception', 'errorHandlerCallback'), E_ALL); + } + + /** + * Unregister errorhandler + */ + public function __destruct() { + restore_error_handler(); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/Financial.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Financial.php new file mode 100644 index 0000000..8534258 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Financial.php @@ -0,0 +1,2248 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** FINANCIAL_MAX_ITERATIONS */ +define('FINANCIAL_MAX_ITERATIONS', 128); + +/** FINANCIAL_PRECISION */ +define('FINANCIAL_PRECISION', 1.0e-08); + + +/** + * PHPExcel_Calculation_Financial + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_Financial { + + /** + * _lastDayOfMonth + * + * Returns a boolean TRUE/FALSE indicating if this date is the last date of the month + * + * @param DateTime $testDate The date for testing + * @return boolean + */ + private static function _lastDayOfMonth($testDate) + { + return ($testDate->format('d') == $testDate->format('t')); + } // function _lastDayOfMonth() + + + /** + * _firstDayOfMonth + * + * Returns a boolean TRUE/FALSE indicating if this date is the first date of the month + * + * @param DateTime $testDate The date for testing + * @return boolean + */ + private static function _firstDayOfMonth($testDate) + { + return ($testDate->format('d') == 1); + } // function _firstDayOfMonth() + + + private static function _coupFirstPeriodDate($settlement, $maturity, $frequency, $next) + { + $months = 12 / $frequency; + + $result = PHPExcel_Shared_Date::ExcelToPHPObject($maturity); + $eom = self::_lastDayOfMonth($result); + + while ($settlement < PHPExcel_Shared_Date::PHPToExcel($result)) { + $result->modify('-'.$months.' months'); + } + if ($next) { + $result->modify('+'.$months.' months'); + } + + if ($eom) { + $result->modify('-1 day'); + } + + return PHPExcel_Shared_Date::PHPToExcel($result); + } // function _coupFirstPeriodDate() + + + private static function _validFrequency($frequency) + { + if (($frequency == 1) || ($frequency == 2) || ($frequency == 4)) { + return true; + } + if ((PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) && + (($frequency == 6) || ($frequency == 12))) { + return true; + } + return false; + } // function _validFrequency() + + + /** + * _daysPerYear + * + * Returns the number of days in a specified year, as defined by the "basis" value + * + * @param integer $year The year against which we're testing + * @param integer $basis The type of day count: + * 0 or omitted US (NASD) 360 + * 1 Actual (365 or 366 in a leap year) + * 2 360 + * 3 365 + * 4 European 360 + * @return integer + */ + private static function _daysPerYear($year, $basis=0) + { + switch ($basis) { + case 0 : + case 2 : + case 4 : + $daysPerYear = 360; + break; + case 3 : + $daysPerYear = 365; + break; + case 1 : + $daysPerYear = (PHPExcel_Calculation_DateTime::_isLeapYear($year)) ? 366 : 365; + break; + default : + return PHPExcel_Calculation_Functions::NaN(); + } + return $daysPerYear; + } // function _daysPerYear() + + + private static function _interestAndPrincipal($rate=0, $per=0, $nper=0, $pv=0, $fv=0, $type=0) + { + $pmt = self::PMT($rate, $nper, $pv, $fv, $type); + $capital = $pv; + for ($i = 1; $i<= $per; ++$i) { + $interest = ($type && $i == 1) ? 0 : -$capital * $rate; + $principal = $pmt - $interest; + $capital += $principal; + } + return array($interest, $principal); + } // function _interestAndPrincipal() + + + /** + * ACCRINT + * + * Returns the accrued interest for a security that pays periodic interest. + * + * Excel Function: + * ACCRINT(issue,firstinterest,settlement,rate,par,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed $issue The security's issue date. + * @param mixed $firstinterest The security's first interest date. + * @param mixed $settlement The security's settlement date. + * The security settlement date is the date after the issue date + * when the security is traded to the buyer. + * @param float $rate The security's annual coupon rate. + * @param float $par The security's par value. + * If you omit par, ACCRINT uses $1,000. + * @param integer $frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer $basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function ACCRINT($issue, $firstinterest, $settlement, $rate, $par=1000, $frequency=1, $basis=0) + { + $issue = PHPExcel_Calculation_Functions::flattenSingleValue($issue); + $firstinterest = PHPExcel_Calculation_Functions::flattenSingleValue($firstinterest); + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $par = (is_null($par)) ? 1000 : PHPExcel_Calculation_Functions::flattenSingleValue($par); + $frequency = (is_null($frequency)) ? 1 : PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($rate)) && (is_numeric($par))) { + $rate = (float) $rate; + $par = (float) $par; + if (($rate <= 0) || ($par <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenIssueAndSettlement = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $settlement, $basis); + if (!is_numeric($daysBetweenIssueAndSettlement)) { + // return date error + return $daysBetweenIssueAndSettlement; + } + + return $par * $rate * $daysBetweenIssueAndSettlement; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function ACCRINT() + + + /** + * ACCRINTM + * + * Returns the accrued interest for a security that pays interest at maturity. + * + * Excel Function: + * ACCRINTM(issue,settlement,rate[,par[,basis]]) + * + * @access public + * @category Financial Functions + * @param mixed issue The security's issue date. + * @param mixed settlement The security's settlement (or maturity) date. + * @param float rate The security's annual coupon rate. + * @param float par The security's par value. + * If you omit par, ACCRINT uses $1,000. + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function ACCRINTM($issue, $settlement, $rate, $par=1000, $basis=0) { + $issue = PHPExcel_Calculation_Functions::flattenSingleValue($issue); + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $par = (is_null($par)) ? 1000 : PHPExcel_Calculation_Functions::flattenSingleValue($par); + $basis = (is_null($basis)) ? 0 : PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($rate)) && (is_numeric($par))) { + $rate = (float) $rate; + $par = (float) $par; + if (($rate <= 0) || ($par <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenIssueAndSettlement = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $settlement, $basis); + if (!is_numeric($daysBetweenIssueAndSettlement)) { + // return date error + return $daysBetweenIssueAndSettlement; + } + return $par * $rate * $daysBetweenIssueAndSettlement; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function ACCRINTM() + + + /** + * AMORDEGRC + * + * Returns the depreciation for each accounting period. + * This function is provided for the French accounting system. If an asset is purchased in + * the middle of the accounting period, the prorated depreciation is taken into account. + * The function is similar to AMORLINC, except that a depreciation coefficient is applied in + * the calculation depending on the life of the assets. + * This function will return the depreciation until the last period of the life of the assets + * or until the cumulated value of depreciation is greater than the cost of the assets minus + * the salvage value. + * + * Excel Function: + * AMORDEGRC(cost,purchased,firstPeriod,salvage,period,rate[,basis]) + * + * @access public + * @category Financial Functions + * @param float cost The cost of the asset. + * @param mixed purchased Date of the purchase of the asset. + * @param mixed firstPeriod Date of the end of the first period. + * @param mixed salvage The salvage value at the end of the life of the asset. + * @param float period The period. + * @param float rate Rate of depreciation. + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function AMORDEGRC($cost, $purchased, $firstPeriod, $salvage, $period, $rate, $basis=0) { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $purchased = PHPExcel_Calculation_Functions::flattenSingleValue($purchased); + $firstPeriod = PHPExcel_Calculation_Functions::flattenSingleValue($firstPeriod); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $period = floor(PHPExcel_Calculation_Functions::flattenSingleValue($period)); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // The depreciation coefficients are: + // Life of assets (1/rate) Depreciation coefficient + // Less than 3 years 1 + // Between 3 and 4 years 1.5 + // Between 5 and 6 years 2 + // More than 6 years 2.5 + $fUsePer = 1.0 / $rate; + if ($fUsePer < 3.0) { + $amortiseCoeff = 1.0; + } elseif ($fUsePer < 5.0) { + $amortiseCoeff = 1.5; + } elseif ($fUsePer <= 6.0) { + $amortiseCoeff = 2.0; + } else { + $amortiseCoeff = 2.5; + } + + $rate *= $amortiseCoeff; + $fNRate = round(PHPExcel_Calculation_DateTime::YEARFRAC($purchased, $firstPeriod, $basis) * $rate * $cost,0); + $cost -= $fNRate; + $fRest = $cost - $salvage; + + for ($n = 0; $n < $period; ++$n) { + $fNRate = round($rate * $cost,0); + $fRest -= $fNRate; + + if ($fRest < 0.0) { + switch ($period - $n) { + case 0 : + case 1 : return round($cost * 0.5, 0); + break; + default : return 0.0; + break; + } + } + $cost -= $fNRate; + } + return $fNRate; + } // function AMORDEGRC() + + + /** + * AMORLINC + * + * Returns the depreciation for each accounting period. + * This function is provided for the French accounting system. If an asset is purchased in + * the middle of the accounting period, the prorated depreciation is taken into account. + * + * Excel Function: + * AMORLINC(cost,purchased,firstPeriod,salvage,period,rate[,basis]) + * + * @access public + * @category Financial Functions + * @param float cost The cost of the asset. + * @param mixed purchased Date of the purchase of the asset. + * @param mixed firstPeriod Date of the end of the first period. + * @param mixed salvage The salvage value at the end of the life of the asset. + * @param float period The period. + * @param float rate Rate of depreciation. + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function AMORLINC($cost, $purchased, $firstPeriod, $salvage, $period, $rate, $basis=0) { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $purchased = PHPExcel_Calculation_Functions::flattenSingleValue($purchased); + $firstPeriod = PHPExcel_Calculation_Functions::flattenSingleValue($firstPeriod); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $period = PHPExcel_Calculation_Functions::flattenSingleValue($period); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + $fOneRate = $cost * $rate; + $fCostDelta = $cost - $salvage; + // Note, quirky variation for leap years on the YEARFRAC for this function + $purchasedYear = PHPExcel_Calculation_DateTime::YEAR($purchased); + $yearFrac = PHPExcel_Calculation_DateTime::YEARFRAC($purchased, $firstPeriod, $basis); + + if (($basis == 1) && ($yearFrac < 1) && (PHPExcel_Calculation_DateTime::_isLeapYear($purchasedYear))) { + $yearFrac *= 365 / 366; + } + + $f0Rate = $yearFrac * $rate * $cost; + $nNumOfFullPeriods = intval(($cost - $salvage - $f0Rate) / $fOneRate); + + if ($period == 0) { + return $f0Rate; + } elseif ($period <= $nNumOfFullPeriods) { + return $fOneRate; + } elseif ($period == ($nNumOfFullPeriods + 1)) { + return ($fCostDelta - $fOneRate * $nNumOfFullPeriods - $f0Rate); + } else { + return 0.0; + } + } // function AMORLINC() + + + /** + * COUPDAYBS + * + * Returns the number of days from the beginning of the coupon period to the settlement date. + * + * Excel Function: + * COUPDAYBS(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function COUPDAYBS($settlement, $maturity, $frequency, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::_getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::_getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::_validFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $daysPerYear = self::_daysPerYear(PHPExcel_Calculation_DateTime::YEAR($settlement),$basis); + $prev = self::_coupFirstPeriodDate($settlement, $maturity, $frequency, False); + + return PHPExcel_Calculation_DateTime::YEARFRAC($prev, $settlement, $basis) * $daysPerYear; + } // function COUPDAYBS() + + + /** + * COUPDAYS + * + * Returns the number of days in the coupon period that contains the settlement date. + * + * Excel Function: + * COUPDAYS(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function COUPDAYS($settlement, $maturity, $frequency, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::_getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::_getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::_validFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + switch ($basis) { + case 3: // Actual/365 + return 365 / $frequency; + case 1: // Actual/actual + if ($frequency == 1) { + $daysPerYear = self::_daysPerYear(PHPExcel_Calculation_DateTime::YEAR($maturity),$basis); + return ($daysPerYear / $frequency); + } else { + $prev = self::_coupFirstPeriodDate($settlement, $maturity, $frequency, False); + $next = self::_coupFirstPeriodDate($settlement, $maturity, $frequency, True); + return ($next - $prev); + } + default: // US (NASD) 30/360, Actual/360 or European 30/360 + return 360 / $frequency; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function COUPDAYS() + + + /** + * COUPDAYSNC + * + * Returns the number of days from the settlement date to the next coupon date. + * + * Excel Function: + * COUPDAYSNC(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function COUPDAYSNC($settlement, $maturity, $frequency, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::_getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::_getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::_validFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $daysPerYear = self::_daysPerYear(PHPExcel_Calculation_DateTime::YEAR($settlement),$basis); + $next = self::_coupFirstPeriodDate($settlement, $maturity, $frequency, True); + + return PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $next, $basis) * $daysPerYear; + } // function COUPDAYSNC() + + + /** + * COUPNCD + * + * Returns the next coupon date after the settlement date. + * + * Excel Function: + * COUPNCD(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function COUPNCD($settlement, $maturity, $frequency, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::_getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::_getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::_validFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return self::_coupFirstPeriodDate($settlement, $maturity, $frequency, True); + } // function COUPNCD() + + + /** + * COUPNUM + * + * Returns the number of coupons payable between the settlement date and maturity date, + * rounded up to the nearest whole coupon. + * + * Excel Function: + * COUPNUM(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return integer + */ + public static function COUPNUM($settlement, $maturity, $frequency, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::_getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::_getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::_validFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $settlement = self::_coupFirstPeriodDate($settlement, $maturity, $frequency, True); + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis) * 365; + + switch ($frequency) { + case 1: // annual payments + return ceil($daysBetweenSettlementAndMaturity / 360); + case 2: // half-yearly + return ceil($daysBetweenSettlementAndMaturity / 180); + case 4: // quarterly + return ceil($daysBetweenSettlementAndMaturity / 90); + case 6: // bimonthly + return ceil($daysBetweenSettlementAndMaturity / 60); + case 12: // monthly + return ceil($daysBetweenSettlementAndMaturity / 30); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function COUPNUM() + + + /** + * COUPPCD + * + * Returns the previous coupon date before the settlement date. + * + * Excel Function: + * COUPPCD(settlement,maturity,frequency[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed frequency the number of coupon payments per year. + * Valid frequency values are: + * 1 Annual + * 2 Semi-Annual + * 4 Quarterly + * If working in Gnumeric Mode, the following frequency options are + * also available + * 6 Bimonthly + * 12 Monthly + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return mixed Excel date/time serial value, PHP date/time serial value or PHP date/time object, + * depending on the value of the ReturnDateType flag + */ + public static function COUPPCD($settlement, $maturity, $frequency, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::_getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::_getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::_validFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return self::_coupFirstPeriodDate($settlement, $maturity, $frequency, False); + } // function COUPPCD() + + + /** + * CUMIPMT + * + * Returns the cumulative interest paid on a loan between the start and end periods. + * + * Excel Function: + * CUMIPMT(rate,nper,pv,start,end[,type]) + * + * @access public + * @category Financial Functions + * @param float $rate The Interest rate + * @param integer $nper The total number of payment periods + * @param float $pv Present Value + * @param integer $start The first period in the calculation. + * Payment periods are numbered beginning with 1. + * @param integer $end The last period in the calculation. + * @param integer $type A number 0 or 1 and indicates when payments are due: + * 0 or omitted At the end of the period. + * 1 At the beginning of the period. + * @return float + */ + public static function CUMIPMT($rate, $nper, $pv, $start, $end, $type = 0) { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $nper = (int) PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $start = (int) PHPExcel_Calculation_Functions::flattenSingleValue($start); + $end = (int) PHPExcel_Calculation_Functions::flattenSingleValue($end); + $type = (int) PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($start < 1 || $start > $end) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Calculate + $interest = 0; + for ($per = $start; $per <= $end; ++$per) { + $interest += self::IPMT($rate, $per, $nper, $pv, 0, $type); + } + + return $interest; + } // function CUMIPMT() + + + /** + * CUMPRINC + * + * Returns the cumulative principal paid on a loan between the start and end periods. + * + * Excel Function: + * CUMPRINC(rate,nper,pv,start,end[,type]) + * + * @access public + * @category Financial Functions + * @param float $rate The Interest rate + * @param integer $nper The total number of payment periods + * @param float $pv Present Value + * @param integer $start The first period in the calculation. + * Payment periods are numbered beginning with 1. + * @param integer $end The last period in the calculation. + * @param integer $type A number 0 or 1 and indicates when payments are due: + * 0 or omitted At the end of the period. + * 1 At the beginning of the period. + * @return float + */ + public static function CUMPRINC($rate, $nper, $pv, $start, $end, $type = 0) { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $nper = (int) PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $start = (int) PHPExcel_Calculation_Functions::flattenSingleValue($start); + $end = (int) PHPExcel_Calculation_Functions::flattenSingleValue($end); + $type = (int) PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($start < 1 || $start > $end) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Calculate + $principal = 0; + for ($per = $start; $per <= $end; ++$per) { + $principal += self::PPMT($rate, $per, $nper, $pv, 0, $type); + } + + return $principal; + } // function CUMPRINC() + + + /** + * DB + * + * Returns the depreciation of an asset for a specified period using the + * fixed-declining balance method. + * This form of depreciation is used if you want to get a higher depreciation value + * at the beginning of the depreciation (as opposed to linear depreciation). The + * depreciation value is reduced with every depreciation period by the depreciation + * already deducted from the initial cost. + * + * Excel Function: + * DB(cost,salvage,life,period[,month]) + * + * @access public + * @category Financial Functions + * @param float cost Initial cost of the asset. + * @param float salvage Value at the end of the depreciation. + * (Sometimes called the salvage value of the asset) + * @param integer life Number of periods over which the asset is depreciated. + * (Sometimes called the useful life of the asset) + * @param integer period The period for which you want to calculate the + * depreciation. Period must use the same units as life. + * @param integer month Number of months in the first year. If month is omitted, + * it defaults to 12. + * @return float + */ + public static function DB($cost, $salvage, $life, $period, $month=12) { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $life = PHPExcel_Calculation_Functions::flattenSingleValue($life); + $period = PHPExcel_Calculation_Functions::flattenSingleValue($period); + $month = PHPExcel_Calculation_Functions::flattenSingleValue($month); + + // Validate + if ((is_numeric($cost)) && (is_numeric($salvage)) && (is_numeric($life)) && (is_numeric($period)) && (is_numeric($month))) { + $cost = (float) $cost; + $salvage = (float) $salvage; + $life = (int) $life; + $period = (int) $period; + $month = (int) $month; + if ($cost == 0) { + return 0.0; + } elseif (($cost < 0) || (($salvage / $cost) < 0) || ($life <= 0) || ($period < 1) || ($month < 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + // Set Fixed Depreciation Rate + $fixedDepreciationRate = 1 - pow(($salvage / $cost), (1 / $life)); + $fixedDepreciationRate = round($fixedDepreciationRate, 3); + + // Loop through each period calculating the depreciation + $previousDepreciation = 0; + for ($per = 1; $per <= $period; ++$per) { + if ($per == 1) { + $depreciation = $cost * $fixedDepreciationRate * $month / 12; + } elseif ($per == ($life + 1)) { + $depreciation = ($cost - $previousDepreciation) * $fixedDepreciationRate * (12 - $month) / 12; + } else { + $depreciation = ($cost - $previousDepreciation) * $fixedDepreciationRate; + } + $previousDepreciation += $depreciation; + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $depreciation = round($depreciation,2); + } + return $depreciation; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function DB() + + + /** + * DDB + * + * Returns the depreciation of an asset for a specified period using the + * double-declining balance method or some other method you specify. + * + * Excel Function: + * DDB(cost,salvage,life,period[,factor]) + * + * @access public + * @category Financial Functions + * @param float cost Initial cost of the asset. + * @param float salvage Value at the end of the depreciation. + * (Sometimes called the salvage value of the asset) + * @param integer life Number of periods over which the asset is depreciated. + * (Sometimes called the useful life of the asset) + * @param integer period The period for which you want to calculate the + * depreciation. Period must use the same units as life. + * @param float factor The rate at which the balance declines. + * If factor is omitted, it is assumed to be 2 (the + * double-declining balance method). + * @return float + */ + public static function DDB($cost, $salvage, $life, $period, $factor=2.0) { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $life = PHPExcel_Calculation_Functions::flattenSingleValue($life); + $period = PHPExcel_Calculation_Functions::flattenSingleValue($period); + $factor = PHPExcel_Calculation_Functions::flattenSingleValue($factor); + + // Validate + if ((is_numeric($cost)) && (is_numeric($salvage)) && (is_numeric($life)) && (is_numeric($period)) && (is_numeric($factor))) { + $cost = (float) $cost; + $salvage = (float) $salvage; + $life = (int) $life; + $period = (int) $period; + $factor = (float) $factor; + if (($cost <= 0) || (($salvage / $cost) < 0) || ($life <= 0) || ($period < 1) || ($factor <= 0.0) || ($period > $life)) { + return PHPExcel_Calculation_Functions::NaN(); + } + // Set Fixed Depreciation Rate + $fixedDepreciationRate = 1 - pow(($salvage / $cost), (1 / $life)); + $fixedDepreciationRate = round($fixedDepreciationRate, 3); + + // Loop through each period calculating the depreciation + $previousDepreciation = 0; + for ($per = 1; $per <= $period; ++$per) { + $depreciation = min( ($cost - $previousDepreciation) * ($factor / $life), ($cost - $salvage - $previousDepreciation) ); + $previousDepreciation += $depreciation; + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + $depreciation = round($depreciation,2); + } + return $depreciation; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function DDB() + + + /** + * DISC + * + * Returns the discount rate for a security. + * + * Excel Function: + * DISC(settlement,maturity,price,redemption[,basis]) + * + * @access public + * @category Financial Functions + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue + * date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param integer price The security's price per $100 face value. + * @param integer redemption The security's redemption value per $100 face value. + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function DISC($settlement, $maturity, $price, $redemption, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $price = PHPExcel_Calculation_Functions::flattenSingleValue($price); + $redemption = PHPExcel_Calculation_Functions::flattenSingleValue($redemption); + $basis = PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($price)) && (is_numeric($redemption)) && (is_numeric($basis))) { + $price = (float) $price; + $redemption = (float) $redemption; + $basis = (int) $basis; + if (($price <= 0) || ($redemption <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + + return ((1 - $price / $redemption) / $daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function DISC() + + + /** + * DOLLARDE + * + * Converts a dollar price expressed as an integer part and a fraction + * part into a dollar price expressed as a decimal number. + * Fractional dollar numbers are sometimes used for security prices. + * + * Excel Function: + * DOLLARDE(fractional_dollar,fraction) + * + * @access public + * @category Financial Functions + * @param float $fractional_dollar Fractional Dollar + * @param integer $fraction Fraction + * @return float + */ + public static function DOLLARDE($fractional_dollar = Null, $fraction = 0) { + $fractional_dollar = PHPExcel_Calculation_Functions::flattenSingleValue($fractional_dollar); + $fraction = (int)PHPExcel_Calculation_Functions::flattenSingleValue($fraction); + + // Validate parameters + if (is_null($fractional_dollar) || $fraction < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($fraction == 0) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $dollars = floor($fractional_dollar); + $cents = fmod($fractional_dollar,1); + $cents /= $fraction; + $cents *= pow(10,ceil(log10($fraction))); + return $dollars + $cents; + } // function DOLLARDE() + + + /** + * DOLLARFR + * + * Converts a dollar price expressed as a decimal number into a dollar price + * expressed as a fraction. + * Fractional dollar numbers are sometimes used for security prices. + * + * Excel Function: + * DOLLARFR(decimal_dollar,fraction) + * + * @access public + * @category Financial Functions + * @param float $decimal_dollar Decimal Dollar + * @param integer $fraction Fraction + * @return float + */ + public static function DOLLARFR($decimal_dollar = Null, $fraction = 0) { + $decimal_dollar = PHPExcel_Calculation_Functions::flattenSingleValue($decimal_dollar); + $fraction = (int)PHPExcel_Calculation_Functions::flattenSingleValue($fraction); + + // Validate parameters + if (is_null($decimal_dollar) || $fraction < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($fraction == 0) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $dollars = floor($decimal_dollar); + $cents = fmod($decimal_dollar,1); + $cents *= $fraction; + $cents *= pow(10,-ceil(log10($fraction))); + return $dollars + $cents; + } // function DOLLARFR() + + + /** + * EFFECT + * + * Returns the effective interest rate given the nominal rate and the number of + * compounding payments per year. + * + * Excel Function: + * EFFECT(nominal_rate,npery) + * + * @access public + * @category Financial Functions + * @param float $nominal_rate Nominal interest rate + * @param integer $npery Number of compounding payments per year + * @return float + */ + public static function EFFECT($nominal_rate = 0, $npery = 0) { + $nominal_rate = PHPExcel_Calculation_Functions::flattenSingleValue($nominal_rate); + $npery = (int)PHPExcel_Calculation_Functions::flattenSingleValue($npery); + + // Validate parameters + if ($nominal_rate <= 0 || $npery < 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return pow((1 + $nominal_rate / $npery), $npery) - 1; + } // function EFFECT() + + + /** + * FV + * + * Returns the Future Value of a cash flow with constant payments and interest rate (annuities). + * + * Excel Function: + * FV(rate,nper,pmt[,pv[,type]]) + * + * @access public + * @category Financial Functions + * @param float $rate The interest rate per period + * @param int $nper Total number of payment periods in an annuity + * @param float $pmt The payment made each period: it cannot change over the + * life of the annuity. Typically, pmt contains principal + * and interest but no other fees or taxes. + * @param float $pv Present Value, or the lump-sum amount that a series of + * future payments is worth right now. + * @param integer $type A number 0 or 1 and indicates when payments are due: + * 0 or omitted At the end of the period. + * 1 At the beginning of the period. + * @return float + */ + public static function FV($rate = 0, $nper = 0, $pmt = 0, $pv = 0, $type = 0) { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $nper = PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pmt = PHPExcel_Calculation_Functions::flattenSingleValue($pmt); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $type = PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Calculate + if (!is_null($rate) && $rate != 0) { + return -$pv * pow(1 + $rate, $nper) - $pmt * (1 + $rate * $type) * (pow(1 + $rate, $nper) - 1) / $rate; + } else { + return -$pv - $pmt * $nper; + } + } // function FV() + + + /** + * FVSCHEDULE + * + */ + public static function FVSCHEDULE($principal, $schedule) { + $principal = PHPExcel_Calculation_Functions::flattenSingleValue($principal); + $schedule = PHPExcel_Calculation_Functions::flattenArray($schedule); + + foreach($schedule as $n) { + $principal *= 1 + $n; + } + + return $principal; + } // function FVSCHEDULE() + + + /** + * INTRATE + * + * Returns the interest rate for a fully invested security. + * + * Excel Function: + * INTRATE(settlement,maturity,investment,redemption[,basis]) + * + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param integer investment The amount invested in the security. + * @param integer redemption The amount to be received at maturity. + * @param integer basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function INTRATE($settlement, $maturity, $investment, $redemption, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $investment = PHPExcel_Calculation_Functions::flattenSingleValue($investment); + $redemption = PHPExcel_Calculation_Functions::flattenSingleValue($redemption); + $basis = PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($investment)) && (is_numeric($redemption)) && (is_numeric($basis))) { + $investment = (float) $investment; + $redemption = (float) $redemption; + $basis = (int) $basis; + if (($investment <= 0) || ($redemption <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + + return (($redemption / $investment) - 1) / ($daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function INTRATE() + + + /** + * IPMT + * + * Returns the interest payment for a given period for an investment based on periodic, constant payments and a constant interest rate. + * + * @param float $rate Interest rate per period + * @param int $per Period for which we want to find the interest + * @param int $nper Number of periods + * @param float $pv Present Value + * @param float $fv Future Value + * @param int $type Payment type: 0 = at the end of each period, 1 = at the beginning of each period + * @return float + */ + public static function IPMT($rate, $per, $nper, $pv, $fv = 0, $type = 0) { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $per = (int) PHPExcel_Calculation_Functions::flattenSingleValue($per); + $nper = (int) PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $fv = PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = (int) PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($per <= 0 || $per > $nper) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Calculate + $interestAndPrincipal = self::_interestAndPrincipal($rate, $per, $nper, $pv, $fv, $type); + return $interestAndPrincipal[0]; + } // function IPMT() + + + public static function IRR($values, $guess = 0.1) { + if (!is_array($values)) return PHPExcel_Calculation_Functions::VALUE(); + $values = PHPExcel_Calculation_Functions::flattenArray($values); + $guess = PHPExcel_Calculation_Functions::flattenSingleValue($guess); + + // create an initial range, with a root somewhere between 0 and guess + $x1 = 0.0; + $x2 = $guess; + $f1 = self::NPV($x1, $values); + $f2 = self::NPV($x2, $values); + for ($i = 0; $i < FINANCIAL_MAX_ITERATIONS; ++$i) { + if (($f1 * $f2) < 0.0) break; + if (abs($f1) < abs($f2)) { + $f1 = self::NPV($x1 += 1.6 * ($x1 - $x2), $values); + } else { + $f2 = self::NPV($x2 += 1.6 * ($x2 - $x1), $values); + } + } + if (($f1 * $f2) > 0.0) return PHPExcel_Calculation_Functions::VALUE(); + + $f = self::NPV($x1, $values); + if ($f < 0.0) { + $rtb = $x1; + $dx = $x2 - $x1; + } else { + $rtb = $x2; + $dx = $x1 - $x2; + } + + for ($i = 0; $i < FINANCIAL_MAX_ITERATIONS; ++$i) { + $dx *= 0.5; + $x_mid = $rtb + $dx; + $f_mid = self::NPV($x_mid, $values); + if ($f_mid <= 0.0) $rtb = $x_mid; + if ((abs($f_mid) < FINANCIAL_PRECISION) || (abs($dx) < FINANCIAL_PRECISION)) return $x_mid; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function IRR() + + + /** + * ISPMT + * + * Returns the interest payment for an investment based on an interest rate and a constant payment schedule. + * + * Excel Function: + * =ISPMT(interest_rate, period, number_payments, PV) + * + * interest_rate is the interest rate for the investment + * + * period is the period to calculate the interest rate. It must be betweeen 1 and number_payments. + * + * number_payments is the number of payments for the annuity + * + * PV is the loan amount or present value of the payments + */ + public static function ISPMT() { + // Return value + $returnValue = 0; + + // Get the parameters + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + $interestRate = array_shift($aArgs); + $period = array_shift($aArgs); + $numberPeriods = array_shift($aArgs); + $principleRemaining = array_shift($aArgs); + + // Calculate + $principlePayment = ($principleRemaining * 1.0) / ($numberPeriods * 1.0); + for($i=0; $i <= $period; ++$i) { + $returnValue = $interestRate * $principleRemaining * -1; + $principleRemaining -= $principlePayment; + // principle needs to be 0 after the last payment, don't let floating point screw it up + if($i == $numberPeriods) { + $returnValue = 0; + } + } + return($returnValue); + } // function ISPMT() + + + public static function MIRR($values, $finance_rate, $reinvestment_rate) { + if (!is_array($values)) return PHPExcel_Calculation_Functions::VALUE(); + $values = PHPExcel_Calculation_Functions::flattenArray($values); + $finance_rate = PHPExcel_Calculation_Functions::flattenSingleValue($finance_rate); + $reinvestment_rate = PHPExcel_Calculation_Functions::flattenSingleValue($reinvestment_rate); + $n = count($values); + + $rr = 1.0 + $reinvestment_rate; + $fr = 1.0 + $finance_rate; + + $npv_pos = $npv_neg = 0.0; + foreach($values as $i => $v) { + if ($v >= 0) { + $npv_pos += $v / pow($rr, $i); + } else { + $npv_neg += $v / pow($fr, $i); + } + } + + if (($npv_neg == 0) || ($npv_pos == 0) || ($reinvestment_rate <= -1)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + $mirr = pow((-$npv_pos * pow($rr, $n)) + / ($npv_neg * ($rr)), (1.0 / ($n - 1))) - 1.0; + + return (is_finite($mirr) ? $mirr : PHPExcel_Calculation_Functions::VALUE()); + } // function MIRR() + + + /** + * NOMINAL + * + * Returns the nominal interest rate given the effective rate and the number of compounding payments per year. + * + * @param float $effect_rate Effective interest rate + * @param int $npery Number of compounding payments per year + * @return float + */ + public static function NOMINAL($effect_rate = 0, $npery = 0) { + $effect_rate = PHPExcel_Calculation_Functions::flattenSingleValue($effect_rate); + $npery = (int)PHPExcel_Calculation_Functions::flattenSingleValue($npery); + + // Validate parameters + if ($effect_rate <= 0 || $npery < 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Calculate + return $npery * (pow($effect_rate + 1, 1 / $npery) - 1); + } // function NOMINAL() + + + /** + * NPER + * + * Returns the number of periods for a cash flow with constant periodic payments (annuities), and interest rate. + * + * @param float $rate Interest rate per period + * @param int $pmt Periodic payment (annuity) + * @param float $pv Present Value + * @param float $fv Future Value + * @param int $type Payment type: 0 = at the end of each period, 1 = at the beginning of each period + * @return float + */ + public static function NPER($rate = 0, $pmt = 0, $pv = 0, $fv = 0, $type = 0) { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $pmt = PHPExcel_Calculation_Functions::flattenSingleValue($pmt); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $fv = PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Calculate + if (!is_null($rate) && $rate != 0) { + if ($pmt == 0 && $pv == 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return log(($pmt * (1 + $rate * $type) / $rate - $fv) / ($pv + $pmt * (1 + $rate * $type) / $rate)) / log(1 + $rate); + } else { + if ($pmt == 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return (-$pv -$fv) / $pmt; + } + } // function NPER() + + + /** + * NPV + * + * Returns the Net Present Value of a cash flow series given a discount rate. + * + * @param float Discount interest rate + * @param array Cash flow series + * @return float + */ + public static function NPV() { + // Return value + $returnValue = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $rate = array_shift($aArgs); + for ($i = 1; $i <= count($aArgs); ++$i) { + // Is it a numeric value? + if (is_numeric($aArgs[$i - 1])) { + $returnValue += $aArgs[$i - 1] / pow(1 + $rate, $i); + } + } + + // Return + return $returnValue; + } // function NPV() + + + /** + * PMT + * + * Returns the constant payment (annuity) for a cash flow with a constant interest rate. + * + * @param float $rate Interest rate per period + * @param int $nper Number of periods + * @param float $pv Present Value + * @param float $fv Future Value + * @param int $type Payment type: 0 = at the end of each period, 1 = at the beginning of each period + * @return float + */ + public static function PMT($rate = 0, $nper = 0, $pv = 0, $fv = 0, $type = 0) { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $nper = PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $fv = PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Calculate + if (!is_null($rate) && $rate != 0) { + return (-$fv - $pv * pow(1 + $rate, $nper)) / (1 + $rate * $type) / ((pow(1 + $rate, $nper) - 1) / $rate); + } else { + return (-$pv - $fv) / $nper; + } + } // function PMT() + + + /** + * PPMT + * + * Returns the interest payment for a given period for an investment based on periodic, constant payments and a constant interest rate. + * + * @param float $rate Interest rate per period + * @param int $per Period for which we want to find the interest + * @param int $nper Number of periods + * @param float $pv Present Value + * @param float $fv Future Value + * @param int $type Payment type: 0 = at the end of each period, 1 = at the beginning of each period + * @return float + */ + public static function PPMT($rate, $per, $nper, $pv, $fv = 0, $type = 0) { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $per = (int) PHPExcel_Calculation_Functions::flattenSingleValue($per); + $nper = (int) PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $fv = PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = (int) PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($per <= 0 || $per > $nper) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Calculate + $interestAndPrincipal = self::_interestAndPrincipal($rate, $per, $nper, $pv, $fv, $type); + return $interestAndPrincipal[1]; + } // function PPMT() + + + public static function PRICE($settlement, $maturity, $rate, $yield, $redemption, $frequency, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $rate = (float) PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $yield = (float) PHPExcel_Calculation_Functions::flattenSingleValue($yield); + $redemption = (float) PHPExcel_Calculation_Functions::flattenSingleValue($redemption); + $frequency = (int) PHPExcel_Calculation_Functions::flattenSingleValue($frequency); + $basis = (is_null($basis)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + if (is_string($settlement = PHPExcel_Calculation_DateTime::_getDateValue($settlement))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (is_string($maturity = PHPExcel_Calculation_DateTime::_getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (($settlement > $maturity) || + (!self::_validFrequency($frequency)) || + (($basis < 0) || ($basis > 4))) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $dsc = self::COUPDAYSNC($settlement, $maturity, $frequency, $basis); + $e = self::COUPDAYS($settlement, $maturity, $frequency, $basis); + $n = self::COUPNUM($settlement, $maturity, $frequency, $basis); + $a = self::COUPDAYBS($settlement, $maturity, $frequency, $basis); + + $baseYF = 1.0 + ($yield / $frequency); + $rfp = 100 * ($rate / $frequency); + $de = $dsc / $e; + + $result = $redemption / pow($baseYF, (--$n + $de)); + for($k = 0; $k <= $n; ++$k) { + $result += $rfp / (pow($baseYF, ($k + $de))); + } + $result -= $rfp * ($a / $e); + + return $result; + } // function PRICE() + + + /** + * PRICEDISC + * + * Returns the price per $100 face value of a discounted security. + * + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param int discount The security's discount rate. + * @param int redemption The security's redemption value per $100 face value. + * @param int basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function PRICEDISC($settlement, $maturity, $discount, $redemption, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $discount = (float) PHPExcel_Calculation_Functions::flattenSingleValue($discount); + $redemption = (float) PHPExcel_Calculation_Functions::flattenSingleValue($redemption); + $basis = (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($discount)) && (is_numeric($redemption)) && (is_numeric($basis))) { + if (($discount <= 0) || ($redemption <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + + return $redemption * (1 - $discount * $daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function PRICEDISC() + + + /** + * PRICEMAT + * + * Returns the price per $100 face value of a security that pays interest at maturity. + * + * @param mixed settlement The security's settlement date. + * The security's settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed issue The security's issue date. + * @param int rate The security's interest rate at date of issue. + * @param int yield The security's annual yield. + * @param int basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function PRICEMAT($settlement, $maturity, $issue, $rate, $yield, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $issue = PHPExcel_Calculation_Functions::flattenSingleValue($issue); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $yield = PHPExcel_Calculation_Functions::flattenSingleValue($yield); + $basis = (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if (is_numeric($rate) && is_numeric($yield)) { + if (($rate <= 0) || ($yield <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysPerYear = self::_daysPerYear(PHPExcel_Calculation_DateTime::YEAR($settlement),$basis); + if (!is_numeric($daysPerYear)) { + return $daysPerYear; + } + $daysBetweenIssueAndSettlement = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $settlement, $basis); + if (!is_numeric($daysBetweenIssueAndSettlement)) { + // return date error + return $daysBetweenIssueAndSettlement; + } + $daysBetweenIssueAndSettlement *= $daysPerYear; + $daysBetweenIssueAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $maturity, $basis); + if (!is_numeric($daysBetweenIssueAndMaturity)) { + // return date error + return $daysBetweenIssueAndMaturity; + } + $daysBetweenIssueAndMaturity *= $daysPerYear; + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + $daysBetweenSettlementAndMaturity *= $daysPerYear; + + return ((100 + (($daysBetweenIssueAndMaturity / $daysPerYear) * $rate * 100)) / + (1 + (($daysBetweenSettlementAndMaturity / $daysPerYear) * $yield)) - + (($daysBetweenIssueAndSettlement / $daysPerYear) * $rate * 100)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function PRICEMAT() + + + /** + * PV + * + * Returns the Present Value of a cash flow with constant payments and interest rate (annuities). + * + * @param float $rate Interest rate per period + * @param int $nper Number of periods + * @param float $pmt Periodic payment (annuity) + * @param float $fv Future Value + * @param int $type Payment type: 0 = at the end of each period, 1 = at the beginning of each period + * @return float + */ + public static function PV($rate = 0, $nper = 0, $pmt = 0, $fv = 0, $type = 0) { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $nper = PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pmt = PHPExcel_Calculation_Functions::flattenSingleValue($pmt); + $fv = PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = PHPExcel_Calculation_Functions::flattenSingleValue($type); + + // Validate parameters + if ($type != 0 && $type != 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + + // Calculate + if (!is_null($rate) && $rate != 0) { + return (-$pmt * (1 + $rate * $type) * ((pow(1 + $rate, $nper) - 1) / $rate) - $fv) / pow(1 + $rate, $nper); + } else { + return -$fv - $pmt * $nper; + } + } // function PV() + + + /** + * RATE + * + * Returns the interest rate per period of an annuity. + * RATE is calculated by iteration and can have zero or more solutions. + * If the successive results of RATE do not converge to within 0.0000001 after 20 iterations, + * RATE returns the #NUM! error value. + * + * Excel Function: + * RATE(nper,pmt,pv[,fv[,type[,guess]]]) + * + * @access public + * @category Financial Functions + * @param float nper The total number of payment periods in an annuity. + * @param float pmt The payment made each period and cannot change over the life + * of the annuity. + * Typically, pmt includes principal and interest but no other + * fees or taxes. + * @param float pv The present value - the total amount that a series of future + * payments is worth now. + * @param float fv The future value, or a cash balance you want to attain after + * the last payment is made. If fv is omitted, it is assumed + * to be 0 (the future value of a loan, for example, is 0). + * @param integer type A number 0 or 1 and indicates when payments are due: + * 0 or omitted At the end of the period. + * 1 At the beginning of the period. + * @param float guess Your guess for what the rate will be. + * If you omit guess, it is assumed to be 10 percent. + * @return float + **/ + public static function RATE($nper, $pmt, $pv, $fv = 0.0, $type = 0, $guess = 0.1) { + $nper = (int) PHPExcel_Calculation_Functions::flattenSingleValue($nper); + $pmt = PHPExcel_Calculation_Functions::flattenSingleValue($pmt); + $pv = PHPExcel_Calculation_Functions::flattenSingleValue($pv); + $fv = (is_null($fv)) ? 0.0 : PHPExcel_Calculation_Functions::flattenSingleValue($fv); + $type = (is_null($type)) ? 0 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($type); + $guess = (is_null($guess)) ? 0.1 : PHPExcel_Calculation_Functions::flattenSingleValue($guess); + + $rate = $guess; + if (abs($rate) < FINANCIAL_PRECISION) { + $y = $pv * (1 + $nper * $rate) + $pmt * (1 + $rate * $type) * $nper + $fv; + } else { + $f = exp($nper * log(1 + $rate)); + $y = $pv * $f + $pmt * (1 / $rate + $type) * ($f - 1) + $fv; + } + $y0 = $pv + $pmt * $nper + $fv; + $y1 = $pv * $f + $pmt * (1 / $rate + $type) * ($f - 1) + $fv; + + // find root by secant method + $i = $x0 = 0.0; + $x1 = $rate; + while ((abs($y0 - $y1) > FINANCIAL_PRECISION) && ($i < FINANCIAL_MAX_ITERATIONS)) { + $rate = ($y1 * $x0 - $y0 * $x1) / ($y1 - $y0); + $x0 = $x1; + $x1 = $rate; + if (($nper * abs($pmt)) > ($pv - $fv)) + $x1 = abs($x1); + + if (abs($rate) < FINANCIAL_PRECISION) { + $y = $pv * (1 + $nper * $rate) + $pmt * (1 + $rate * $type) * $nper + $fv; + } else { + $f = exp($nper * log(1 + $rate)); + $y = $pv * $f + $pmt * (1 / $rate + $type) * ($f - 1) + $fv; + } + + $y0 = $y1; + $y1 = $y; + ++$i; + } + return $rate; + } // function RATE() + + + /** + * RECEIVED + * + * Returns the price per $100 face value of a discounted security. + * + * @param mixed settlement The security's settlement date. + * The security settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param int investment The amount invested in the security. + * @param int discount The security's discount rate. + * @param int basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function RECEIVED($settlement, $maturity, $investment, $discount, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $investment = (float) PHPExcel_Calculation_Functions::flattenSingleValue($investment); + $discount = (float) PHPExcel_Calculation_Functions::flattenSingleValue($discount); + $basis = (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if ((is_numeric($investment)) && (is_numeric($discount)) && (is_numeric($basis))) { + if (($investment <= 0) || ($discount <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + + return $investment / ( 1 - ($discount * $daysBetweenSettlementAndMaturity)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function RECEIVED() + + + /** + * SLN + * + * Returns the straight-line depreciation of an asset for one period + * + * @param cost Initial cost of the asset + * @param salvage Value at the end of the depreciation + * @param life Number of periods over which the asset is depreciated + * @return float + */ + public static function SLN($cost, $salvage, $life) { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $life = PHPExcel_Calculation_Functions::flattenSingleValue($life); + + // Calculate + if ((is_numeric($cost)) && (is_numeric($salvage)) && (is_numeric($life))) { + if ($life < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return ($cost - $salvage) / $life; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function SLN() + + + /** + * SYD + * + * Returns the sum-of-years' digits depreciation of an asset for a specified period. + * + * @param cost Initial cost of the asset + * @param salvage Value at the end of the depreciation + * @param life Number of periods over which the asset is depreciated + * @param period Period + * @return float + */ + public static function SYD($cost, $salvage, $life, $period) { + $cost = PHPExcel_Calculation_Functions::flattenSingleValue($cost); + $salvage = PHPExcel_Calculation_Functions::flattenSingleValue($salvage); + $life = PHPExcel_Calculation_Functions::flattenSingleValue($life); + $period = PHPExcel_Calculation_Functions::flattenSingleValue($period); + + // Calculate + if ((is_numeric($cost)) && (is_numeric($salvage)) && (is_numeric($life)) && (is_numeric($period))) { + if (($life < 1) || ($period > $life)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return (($cost - $salvage) * ($life - $period + 1) * 2) / ($life * ($life + 1)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function SYD() + + + /** + * TBILLEQ + * + * Returns the bond-equivalent yield for a Treasury bill. + * + * @param mixed settlement The Treasury bill's settlement date. + * The Treasury bill's settlement date is the date after the issue date when the Treasury bill is traded to the buyer. + * @param mixed maturity The Treasury bill's maturity date. + * The maturity date is the date when the Treasury bill expires. + * @param int discount The Treasury bill's discount rate. + * @return float + */ + public static function TBILLEQ($settlement, $maturity, $discount) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $discount = PHPExcel_Calculation_Functions::flattenSingleValue($discount); + + // Use TBILLPRICE for validation + $testValue = self::TBILLPRICE($settlement, $maturity, $discount); + if (is_string($testValue)) { + return $testValue; + } + + if (is_string($maturity = PHPExcel_Calculation_DateTime::_getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + ++$maturity; + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity) * 360; + } else { + $daysBetweenSettlementAndMaturity = (PHPExcel_Calculation_DateTime::_getDateValue($maturity) - PHPExcel_Calculation_DateTime::_getDateValue($settlement)); + } + + return (365 * $discount) / (360 - $discount * $daysBetweenSettlementAndMaturity); + } // function TBILLEQ() + + + /** + * TBILLPRICE + * + * Returns the yield for a Treasury bill. + * + * @param mixed settlement The Treasury bill's settlement date. + * The Treasury bill's settlement date is the date after the issue date when the Treasury bill is traded to the buyer. + * @param mixed maturity The Treasury bill's maturity date. + * The maturity date is the date when the Treasury bill expires. + * @param int discount The Treasury bill's discount rate. + * @return float + */ + public static function TBILLPRICE($settlement, $maturity, $discount) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $discount = PHPExcel_Calculation_Functions::flattenSingleValue($discount); + + if (is_string($maturity = PHPExcel_Calculation_DateTime::_getDateValue($maturity))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // Validate + if (is_numeric($discount)) { + if ($discount <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + ++$maturity; + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity) * 360; + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + } else { + $daysBetweenSettlementAndMaturity = (PHPExcel_Calculation_DateTime::_getDateValue($maturity) - PHPExcel_Calculation_DateTime::_getDateValue($settlement)); + } + + if ($daysBetweenSettlementAndMaturity > 360) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $price = 100 * (1 - (($discount * $daysBetweenSettlementAndMaturity) / 360)); + if ($price <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return $price; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function TBILLPRICE() + + + /** + * TBILLYIELD + * + * Returns the yield for a Treasury bill. + * + * @param mixed settlement The Treasury bill's settlement date. + * The Treasury bill's settlement date is the date after the issue date when the Treasury bill is traded to the buyer. + * @param mixed maturity The Treasury bill's maturity date. + * The maturity date is the date when the Treasury bill expires. + * @param int price The Treasury bill's price per $100 face value. + * @return float + */ + public static function TBILLYIELD($settlement, $maturity, $price) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $price = PHPExcel_Calculation_Functions::flattenSingleValue($price); + + // Validate + if (is_numeric($price)) { + if ($price <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + ++$maturity; + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity) * 360; + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + } else { + $daysBetweenSettlementAndMaturity = (PHPExcel_Calculation_DateTime::_getDateValue($maturity) - PHPExcel_Calculation_DateTime::_getDateValue($settlement)); + } + + if ($daysBetweenSettlementAndMaturity > 360) { + return PHPExcel_Calculation_Functions::NaN(); + } + + return ((100 - $price) / $price) * (360 / $daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function TBILLYIELD() + + + public static function XIRR($values, $dates, $guess = 0.1) { + if ((!is_array($values)) && (!is_array($dates))) return PHPExcel_Calculation_Functions::VALUE(); + $values = PHPExcel_Calculation_Functions::flattenArray($values); + $dates = PHPExcel_Calculation_Functions::flattenArray($dates); + $guess = PHPExcel_Calculation_Functions::flattenSingleValue($guess); + if (count($values) != count($dates)) return PHPExcel_Calculation_Functions::NaN(); + + // create an initial range, with a root somewhere between 0 and guess + $x1 = 0.0; + $x2 = $guess; + $f1 = self::XNPV($x1, $values, $dates); + $f2 = self::XNPV($x2, $values, $dates); + for ($i = 0; $i < FINANCIAL_MAX_ITERATIONS; ++$i) { + if (($f1 * $f2) < 0.0) break; + if (abs($f1) < abs($f2)) { + $f1 = self::XNPV($x1 += 1.6 * ($x1 - $x2), $values, $dates); + } else { + $f2 = self::XNPV($x2 += 1.6 * ($x2 - $x1), $values, $dates); + } + } + if (($f1 * $f2) > 0.0) return PHPExcel_Calculation_Functions::VALUE(); + + $f = self::XNPV($x1, $values, $dates); + if ($f < 0.0) { + $rtb = $x1; + $dx = $x2 - $x1; + } else { + $rtb = $x2; + $dx = $x1 - $x2; + } + + for ($i = 0; $i < FINANCIAL_MAX_ITERATIONS; ++$i) { + $dx *= 0.5; + $x_mid = $rtb + $dx; + $f_mid = self::XNPV($x_mid, $values, $dates); + if ($f_mid <= 0.0) $rtb = $x_mid; + if ((abs($f_mid) < FINANCIAL_PRECISION) || (abs($dx) < FINANCIAL_PRECISION)) return $x_mid; + } + return PHPExcel_Calculation_Functions::VALUE(); + } + + + /** + * XNPV + * + * Returns the net present value for a schedule of cash flows that is not necessarily periodic. + * To calculate the net present value for a series of cash flows that is periodic, use the NPV function. + * + * Excel Function: + * =XNPV(rate,values,dates) + * + * @param float $rate The discount rate to apply to the cash flows. + * @param array of float $values A series of cash flows that corresponds to a schedule of payments in dates. The first payment is optional and corresponds to a cost or payment that occurs at the beginning of the investment. If the first value is a cost or payment, it must be a negative value. All succeeding payments are discounted based on a 365-day year. The series of values must contain at least one positive value and one negative value. + * @param array of mixed $dates A schedule of payment dates that corresponds to the cash flow payments. The first payment date indicates the beginning of the schedule of payments. All other dates must be later than this date, but they may occur in any order. + * @return float + */ + public static function XNPV($rate, $values, $dates) { + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + if (!is_numeric($rate)) return PHPExcel_Calculation_Functions::VALUE(); + if ((!is_array($values)) || (!is_array($dates))) return PHPExcel_Calculation_Functions::VALUE(); + $values = PHPExcel_Calculation_Functions::flattenArray($values); + $dates = PHPExcel_Calculation_Functions::flattenArray($dates); + $valCount = count($values); + if ($valCount != count($dates)) return PHPExcel_Calculation_Functions::NaN(); + if ((min($values) > 0) || (max($values) < 0)) return PHPExcel_Calculation_Functions::VALUE(); + + $xnpv = 0.0; + for ($i = 0; $i < $valCount; ++$i) { + if (!is_numeric($values[$i])) return PHPExcel_Calculation_Functions::VALUE(); + $xnpv += $values[$i] / pow(1 + $rate, PHPExcel_Calculation_DateTime::DATEDIF($dates[0],$dates[$i],'d') / 365); + } + return (is_finite($xnpv)) ? $xnpv : PHPExcel_Calculation_Functions::VALUE(); + } // function XNPV() + + + /** + * YIELDDISC + * + * Returns the annual yield of a security that pays interest at maturity. + * + * @param mixed settlement The security's settlement date. + * The security's settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param int price The security's price per $100 face value. + * @param int redemption The security's redemption value per $100 face value. + * @param int basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function YIELDDISC($settlement, $maturity, $price, $redemption, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $price = PHPExcel_Calculation_Functions::flattenSingleValue($price); + $redemption = PHPExcel_Calculation_Functions::flattenSingleValue($redemption); + $basis = (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if (is_numeric($price) && is_numeric($redemption)) { + if (($price <= 0) || ($redemption <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysPerYear = self::_daysPerYear(PHPExcel_Calculation_DateTime::YEAR($settlement),$basis); + if (!is_numeric($daysPerYear)) { + return $daysPerYear; + } + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity,$basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + $daysBetweenSettlementAndMaturity *= $daysPerYear; + + return (($redemption - $price) / $price) * ($daysPerYear / $daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function YIELDDISC() + + + /** + * YIELDMAT + * + * Returns the annual yield of a security that pays interest at maturity. + * + * @param mixed settlement The security's settlement date. + * The security's settlement date is the date after the issue date when the security is traded to the buyer. + * @param mixed maturity The security's maturity date. + * The maturity date is the date when the security expires. + * @param mixed issue The security's issue date. + * @param int rate The security's interest rate at date of issue. + * @param int price The security's price per $100 face value. + * @param int basis The type of day count to use. + * 0 or omitted US (NASD) 30/360 + * 1 Actual/actual + * 2 Actual/360 + * 3 Actual/365 + * 4 European 30/360 + * @return float + */ + public static function YIELDMAT($settlement, $maturity, $issue, $rate, $price, $basis=0) { + $settlement = PHPExcel_Calculation_Functions::flattenSingleValue($settlement); + $maturity = PHPExcel_Calculation_Functions::flattenSingleValue($maturity); + $issue = PHPExcel_Calculation_Functions::flattenSingleValue($issue); + $rate = PHPExcel_Calculation_Functions::flattenSingleValue($rate); + $price = PHPExcel_Calculation_Functions::flattenSingleValue($price); + $basis = (int) PHPExcel_Calculation_Functions::flattenSingleValue($basis); + + // Validate + if (is_numeric($rate) && is_numeric($price)) { + if (($rate <= 0) || ($price <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $daysPerYear = self::_daysPerYear(PHPExcel_Calculation_DateTime::YEAR($settlement),$basis); + if (!is_numeric($daysPerYear)) { + return $daysPerYear; + } + $daysBetweenIssueAndSettlement = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $settlement, $basis); + if (!is_numeric($daysBetweenIssueAndSettlement)) { + // return date error + return $daysBetweenIssueAndSettlement; + } + $daysBetweenIssueAndSettlement *= $daysPerYear; + $daysBetweenIssueAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($issue, $maturity, $basis); + if (!is_numeric($daysBetweenIssueAndMaturity)) { + // return date error + return $daysBetweenIssueAndMaturity; + } + $daysBetweenIssueAndMaturity *= $daysPerYear; + $daysBetweenSettlementAndMaturity = PHPExcel_Calculation_DateTime::YEARFRAC($settlement, $maturity, $basis); + if (!is_numeric($daysBetweenSettlementAndMaturity)) { + // return date error + return $daysBetweenSettlementAndMaturity; + } + $daysBetweenSettlementAndMaturity *= $daysPerYear; + + return ((1 + (($daysBetweenIssueAndMaturity / $daysPerYear) * $rate) - (($price / 100) + (($daysBetweenIssueAndSettlement / $daysPerYear) * $rate))) / + (($price / 100) + (($daysBetweenIssueAndSettlement / $daysPerYear) * $rate))) * + ($daysPerYear / $daysBetweenSettlementAndMaturity); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function YIELDMAT() + +} // class PHPExcel_Calculation_Financial diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/FormulaParser.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/FormulaParser.php new file mode 100644 index 0000000..7318a5b --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/FormulaParser.php @@ -0,0 +1,614 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/* +PARTLY BASED ON: + Copyright (c) 2007 E. W. Bachtal, Inc. + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, + subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or substantial + portions of the Software. + + The software is provided "as is", without warranty of any kind, express or implied, including but not + limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In + no event shall the authors or copyright holders be liable for any claim, damages or other liability, + whether in an action of contract, tort or otherwise, arising from, out of or in connection with the + software or the use or other dealings in the software. + + http://ewbi.blogs.com/develops/2007/03/excel_formula_p.html + http://ewbi.blogs.com/develops/2004/12/excel_formula_p.html +*/ + +/** + * PHPExcel_Calculation_FormulaParser + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_FormulaParser { + /* Character constants */ + const QUOTE_DOUBLE = '"'; + const QUOTE_SINGLE = '\''; + const BRACKET_CLOSE = ']'; + const BRACKET_OPEN = '['; + const BRACE_OPEN = '{'; + const BRACE_CLOSE = '}'; + const PAREN_OPEN = '('; + const PAREN_CLOSE = ')'; + const SEMICOLON = ';'; + const WHITESPACE = ' '; + const COMMA = ','; + const ERROR_START = '#'; + + const OPERATORS_SN = "+-"; + const OPERATORS_INFIX = "+-*/^&=><"; + const OPERATORS_POSTFIX = "%"; + + /** + * Formula + * + * @var string + */ + private $_formula; + + /** + * Tokens + * + * @var PHPExcel_Calculation_FormulaToken[] + */ + private $_tokens = array(); + + /** + * Create a new PHPExcel_Calculation_FormulaParser + * + * @param string $pFormula Formula to parse + * @throws Exception + */ + public function __construct($pFormula = '') + { + // Check parameters + if (is_null($pFormula)) { + throw new Exception("Invalid parameter passed: formula"); + } + + // Initialise values + $this->_formula = trim($pFormula); + // Parse! + $this->_parseToTokens(); + } + + /** + * Get Formula + * + * @return string + */ + public function getFormula() { + return $this->_formula; + } + + /** + * Get Token + * + * @param int $pId Token id + * @return string + * @throws Exception + */ + public function getToken($pId = 0) { + if (isset($this->_tokens[$pId])) { + return $this->_tokens[$pId]; + } else { + throw new Exception("Token with id $pId does not exist."); + } + } + + /** + * Get Token count + * + * @return string + */ + public function getTokenCount() { + return count($this->_tokens); + } + + /** + * Get Tokens + * + * @return PHPExcel_Calculation_FormulaToken[] + */ + public function getTokens() { + return $this->_tokens; + } + + /** + * Parse to tokens + */ + private function _parseToTokens() { + // No attempt is made to verify formulas; assumes formulas are derived from Excel, where + // they can only exist if valid; stack overflows/underflows sunk as nulls without exceptions. + + // Check if the formula has a valid starting = + $formulaLength = strlen($this->_formula); + if ($formulaLength < 2 || $this->_formula{0} != '=') return; + + // Helper variables + $tokens1 = $tokens2 = $stack = array(); + $inString = $inPath = $inRange = $inError = false; + $token = $previousToken = $nextToken = null; + + $index = 1; + $value = ''; + + $ERRORS = array("#NULL!", "#DIV/0!", "#VALUE!", "#REF!", "#NAME?", "#NUM!", "#N/A"); + $COMPARATORS_MULTI = array(">=", "<=", "<>"); + + while ($index < $formulaLength) { + // state-dependent character evaluation (order is important) + + // double-quoted strings + // embeds are doubled + // end marks token + if ($inString) { + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::QUOTE_DOUBLE) { + if ((($index + 2) <= $formulaLength) && ($this->_formula{$index + 1} == PHPExcel_Calculation_FormulaParser::QUOTE_DOUBLE)) { + $value .= PHPExcel_Calculation_FormulaParser::QUOTE_DOUBLE; + ++$index; + } else { + $inString = false; + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_TEXT); + $value = ""; + } + } else { + $value .= $this->_formula{$index}; + } + ++$index; + continue; + } + + // single-quoted strings (links) + // embeds are double + // end does not mark a token + if ($inPath) { + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::QUOTE_SINGLE) { + if ((($index + 2) <= $formulaLength) && ($this->_formula{$index + 1} == PHPExcel_Calculation_FormulaParser::QUOTE_SINGLE)) { + $value .= PHPExcel_Calculation_FormulaParser::QUOTE_SINGLE; + ++$index; + } else { + $inPath = false; + } + } else { + $value .= $this->_formula{$index}; + } + ++$index; + continue; + } + + // bracked strings (R1C1 range index or linked workbook name) + // no embeds (changed to "()" by Excel) + // end does not mark a token + if ($inRange) { + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::BRACKET_CLOSE) { + $inRange = false; + } + $value .= $this->_formula{$index}; + ++$index; + continue; + } + + // error values + // end marks a token, determined from absolute list of values + if ($inError) { + $value .= $this->_formula{$index}; + ++$index; + if (in_array($value, $ERRORS)) { + $inError = false; + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_ERROR); + $value = ""; + } + continue; + } + + // scientific notation check + if (strpos(PHPExcel_Calculation_FormulaParser::OPERATORS_SN, $this->_formula{$index}) !== false) { + if (strlen($value) > 1) { + if (preg_match("/^[1-9]{1}(\.[0-9]+)?E{1}$/", $this->_formula{$index}) != 0) { + $value .= $this->_formula{$index}; + ++$index; + continue; + } + } + } + + // independent character evaluation (order not important) + + // establish state-dependent character evaluations + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::QUOTE_DOUBLE) { + if (strlen($value > 0)) { // unexpected + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN); + $value = ""; + } + $inString = true; + ++$index; + continue; + } + + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::QUOTE_SINGLE) { + if (strlen($value) > 0) { // unexpected + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN); + $value = ""; + } + $inPath = true; + ++$index; + continue; + } + + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::BRACKET_OPEN) { + $inRange = true; + $value .= PHPExcel_Calculation_FormulaParser::BRACKET_OPEN; + ++$index; + continue; + } + + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::ERROR_START) { + if (strlen($value) > 0) { // unexpected + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN); + $value = ""; + } + $inError = true; + $value .= PHPExcel_Calculation_FormulaParser::ERROR_START; + ++$index; + continue; + } + + // mark start and end of arrays and array rows + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::BRACE_OPEN) { + if (strlen($value) > 0) { // unexpected + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN); + $value = ""; + } + + $tmp = new PHPExcel_Calculation_FormulaToken("ARRAY", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START); + $tokens1[] = $tmp; + $stack[] = clone $tmp; + + $tmp = new PHPExcel_Calculation_FormulaToken("ARRAYROW", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START); + $tokens1[] = $tmp; + $stack[] = clone $tmp; + + ++$index; + continue; + } + + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::SEMICOLON) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + + $tmp = array_pop($stack); + $tmp->setValue(""); + $tmp->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP); + $tokens1[] = $tmp; + + $tmp = new PHPExcel_Calculation_FormulaToken(",", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_ARGUMENT); + $tokens1[] = $tmp; + + $tmp = new PHPExcel_Calculation_FormulaToken("ARRAYROW", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START); + $tokens1[] = $tmp; + $stack[] = clone $tmp; + + ++$index; + continue; + } + + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::BRACE_CLOSE) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + + $tmp = array_pop($stack); + $tmp->setValue(""); + $tmp->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP); + $tokens1[] = $tmp; + + $tmp = array_pop($stack); + $tmp->setValue(""); + $tmp->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP); + $tokens1[] = $tmp; + + ++$index; + continue; + } + + // trim white-space + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::WHITESPACE) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + $tokens1[] = new PHPExcel_Calculation_FormulaToken("", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_WHITESPACE); + ++$index; + while (($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::WHITESPACE) && ($index < $formulaLength)) { + ++$index; + } + continue; + } + + // multi-character comparators + if (($index + 2) <= $formulaLength) { + if (in_array(substr($this->_formula, $index, 2), $COMPARATORS_MULTI)) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + $tokens1[] = new PHPExcel_Calculation_FormulaToken(substr($this->_formula, $index, 2), PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_LOGICAL); + $index += 2; + continue; + } + } + + // standard infix operators + if (strpos(PHPExcel_Calculation_FormulaParser::OPERATORS_INFIX, $this->_formula{$index}) !== false) { + if (strlen($value) > 0) { + $tokens1[] =new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + $tokens1[] = new PHPExcel_Calculation_FormulaToken($this->_formula{$index}, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX); + ++$index; + continue; + } + + // standard postfix operators (only one) + if (strpos(PHPExcel_Calculation_FormulaParser::OPERATORS_POSTFIX, $this->_formula{$index}) !== false) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + $tokens1[] = new PHPExcel_Calculation_FormulaToken($this->_formula{$index}, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPOSTFIX); + ++$index; + continue; + } + + // start subexpression or function + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::PAREN_OPEN) { + if (strlen($value) > 0) { + $tmp = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START); + $tokens1[] = $tmp; + $stack[] = clone $tmp; + $value = ""; + } else { + $tmp = new PHPExcel_Calculation_FormulaToken("", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START); + $tokens1[] = $tmp; + $stack[] = clone $tmp; + } + ++$index; + continue; + } + + // function, subexpression, or array parameters, or operand unions + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::COMMA) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + + $tmp = array_pop($stack); + $tmp->setValue(""); + $tmp->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP); + $stack[] = $tmp; + + if ($tmp->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken(",", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_UNION); + } else { + $tokens1[] = new PHPExcel_Calculation_FormulaToken(",", PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_ARGUMENT); + } + ++$index; + continue; + } + + // stop subexpression + if ($this->_formula{$index} == PHPExcel_Calculation_FormulaParser::PAREN_CLOSE) { + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + $value = ""; + } + + $tmp = array_pop($stack); + $tmp->setValue(""); + $tmp->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP); + $tokens1[] = $tmp; + + ++$index; + continue; + } + + // token accumulation + $value .= $this->_formula{$index}; + ++$index; + } + + // dump remaining accumulation + if (strlen($value) > 0) { + $tokens1[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND); + } + + // move tokenList to new set, excluding unnecessary white-space tokens and converting necessary ones to intersections + $tokenCount = count($tokens1); + for ($i = 0; $i < $tokenCount; ++$i) { + $token = $tokens1[$i]; + if (isset($tokens1[$i - 1])) { + $previousToken = $tokens1[$i - 1]; + } else { + $previousToken = null; + } + if (isset($tokens1[$i + 1])) { + $nextToken = $tokens1[$i + 1]; + } else { + $nextToken = null; + } + + if (is_null($token)) { + continue; + } + + if ($token->getTokenType() != PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_WHITESPACE) { + $tokens2[] = $token; + continue; + } + + if (is_null($previousToken)) { + continue; + } + + if (! ( + (($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) && ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + (($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION) && ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + ($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND) + ) ) { + continue; + } + + if (is_null($nextToken)) { + continue; + } + + if (! ( + (($nextToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) && ($nextToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START)) || + (($nextToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION) && ($nextToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START)) || + ($nextToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND) + ) ) { + continue; + } + + $tokens2[] = new PHPExcel_Calculation_FormulaToken($value, PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX, PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_INTERSECTION); + } + + // move tokens to final list, switching infix "-" operators to prefix when appropriate, switching infix "+" operators + // to noop when appropriate, identifying operand and infix-operator subtypes, and pulling "@" from function names + $this->_tokens = array(); + + $tokenCount = count($tokens2); + for ($i = 0; $i < $tokenCount; ++$i) { + $token = $tokens2[$i]; + if (isset($tokens2[$i - 1])) { + $previousToken = $tokens2[$i - 1]; + } else { + $previousToken = null; + } + if (isset($tokens2[$i + 1])) { + $nextToken = $tokens2[$i + 1]; + } else { + $nextToken = null; + } + + if (is_null($token)) { + continue; + } + + if ($token->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX && $token->getValue() == "-") { + if ($i == 0) { + $token->setTokenType(PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPREFIX); + } else if ( + (($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) && ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + (($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION) && ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + ($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPOSTFIX) || + ($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND) + ) { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_MATH); + } else { + $token->setTokenType(PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPREFIX); + } + + $this->_tokens[] = $token; + continue; + } + + if ($token->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX && $token->getValue() == "+") { + if ($i == 0) { + continue; + } else if ( + (($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) && ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + (($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION) && ($previousToken->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP)) || + ($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPOSTFIX) || + ($previousToken->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND) + ) { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_MATH); + } else { + continue; + } + + $this->_tokens[] = $token; + continue; + } + + if ($token->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX && $token->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NOTHING) { + if (strpos("<>=", substr($token->getValue(), 0, 1)) !== false) { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_LOGICAL); + } else if ($token->getValue() == "&") { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_CONCATENATION); + } else { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_MATH); + } + + $this->_tokens[] = $token; + continue; + } + + if ($token->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND && $token->getTokenSubType() == PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NOTHING) { + if (!is_numeric($token->getValue())) { + if (strtoupper($token->getValue()) == "TRUE" || strtoupper($token->getValue() == "FALSE")) { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_LOGICAL); + } else { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_RANGE); + } + } else { + $token->setTokenSubType(PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NUMBER); + } + + $this->_tokens[] = $token; + continue; + } + + if ($token->getTokenType() == PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION) { + if (strlen($token->getValue() > 0)) { + if (substr($token->getValue(), 0, 1) == "@") { + $token->setValue(substr($token->getValue(), 1)); + } + } + } + + $this->_tokens[] = $token; + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/FormulaToken.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/FormulaToken.php new file mode 100644 index 0000000..b8a2571 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/FormulaToken.php @@ -0,0 +1,176 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/* +PARTLY BASED ON: + Copyright (c) 2007 E. W. Bachtal, Inc. + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, + subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or substantial + portions of the Software. + + The software is provided "as is", without warranty of any kind, express or implied, including but not + limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In + no event shall the authors or copyright holders be liable for any claim, damages or other liability, + whether in an action of contract, tort or otherwise, arising from, out of or in connection with the + software or the use or other dealings in the software. + + http://ewbi.blogs.com/develops/2007/03/excel_formula_p.html + http://ewbi.blogs.com/develops/2004/12/excel_formula_p.html +*/ + + +/** + * PHPExcel_Calculation_FormulaToken + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_FormulaToken { + /* Token types */ + const TOKEN_TYPE_NOOP = 'Noop'; + const TOKEN_TYPE_OPERAND = 'Operand'; + const TOKEN_TYPE_FUNCTION = 'Function'; + const TOKEN_TYPE_SUBEXPRESSION = 'Subexpression'; + const TOKEN_TYPE_ARGUMENT = 'Argument'; + const TOKEN_TYPE_OPERATORPREFIX = 'OperatorPrefix'; + const TOKEN_TYPE_OPERATORINFIX = 'OperatorInfix'; + const TOKEN_TYPE_OPERATORPOSTFIX = 'OperatorPostfix'; + const TOKEN_TYPE_WHITESPACE = 'Whitespace'; + const TOKEN_TYPE_UNKNOWN = 'Unknown'; + + /* Token subtypes */ + const TOKEN_SUBTYPE_NOTHING = 'Nothing'; + const TOKEN_SUBTYPE_START = 'Start'; + const TOKEN_SUBTYPE_STOP = 'Stop'; + const TOKEN_SUBTYPE_TEXT = 'Text'; + const TOKEN_SUBTYPE_NUMBER = 'Number'; + const TOKEN_SUBTYPE_LOGICAL = 'Logical'; + const TOKEN_SUBTYPE_ERROR = 'Error'; + const TOKEN_SUBTYPE_RANGE = 'Range'; + const TOKEN_SUBTYPE_MATH = 'Math'; + const TOKEN_SUBTYPE_CONCATENATION = 'Concatenation'; + const TOKEN_SUBTYPE_INTERSECTION = 'Intersection'; + const TOKEN_SUBTYPE_UNION = 'Union'; + + /** + * Value + * + * @var string + */ + private $_value; + + /** + * Token Type (represented by TOKEN_TYPE_*) + * + * @var string + */ + private $_tokenType; + + /** + * Token SubType (represented by TOKEN_SUBTYPE_*) + * + * @var string + */ + private $_tokenSubType; + + /** + * Create a new PHPExcel_Calculation_FormulaToken + * + * @param string $pValue + * @param string $pTokenType Token type (represented by TOKEN_TYPE_*) + * @param string $pTokenSubType Token Subtype (represented by TOKEN_SUBTYPE_*) + */ + public function __construct($pValue, $pTokenType = PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN, $pTokenSubType = PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NOTHING) + { + // Initialise values + $this->_value = $pValue; + $this->_tokenType = $pTokenType; + $this->_tokenSubType = $pTokenSubType; + } + + /** + * Get Value + * + * @return string + */ + public function getValue() { + return $this->_value; + } + + /** + * Set Value + * + * @param string $value + */ + public function setValue($value) { + $this->_value = $value; + } + + /** + * Get Token Type (represented by TOKEN_TYPE_*) + * + * @return string + */ + public function getTokenType() { + return $this->_tokenType; + } + + /** + * Set Token Type + * + * @param string $value + */ + public function setTokenType($value = PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN) { + $this->_tokenType = $value; + } + + /** + * Get Token SubType (represented by TOKEN_SUBTYPE_*) + * + * @return string + */ + public function getTokenSubType() { + return $this->_tokenSubType; + } + + /** + * Set Token SubType + * + * @param string $value + */ + public function setTokenSubType($value = PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NOTHING) { + $this->_tokenSubType = $value; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/Function.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Function.php new file mode 100644 index 0000000..88f8c3b --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Function.php @@ -0,0 +1,149 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Calculation_Function + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_Function { + /* Function categories */ + const CATEGORY_CUBE = 'Cube'; + const CATEGORY_DATABASE = 'Database'; + const CATEGORY_DATE_AND_TIME = 'Date and Time'; + const CATEGORY_ENGINEERING = 'Engineering'; + const CATEGORY_FINANCIAL = 'Financial'; + const CATEGORY_INFORMATION = 'Information'; + const CATEGORY_LOGICAL = 'Logical'; + const CATEGORY_LOOKUP_AND_REFERENCE = 'Lookup and Reference'; + const CATEGORY_MATH_AND_TRIG = 'Math and Trig'; + const CATEGORY_STATISTICAL = 'Statistical'; + const CATEGORY_TEXT_AND_DATA = 'Text and Data'; + + /** + * Category (represented by CATEGORY_*) + * + * @var string + */ + private $_category; + + /** + * Excel name + * + * @var string + */ + private $_excelName; + + /** + * PHPExcel name + * + * @var string + */ + private $_phpExcelName; + + /** + * Create a new PHPExcel_Calculation_Function + * + * @param string $pCategory Category (represented by CATEGORY_*) + * @param string $pExcelName Excel function name + * @param string $pPHPExcelName PHPExcel function mapping + * @throws Exception + */ + public function __construct($pCategory = NULL, $pExcelName = NULL, $pPHPExcelName = NULL) + { + if (($pCategory !== NULL) && ($pExcelName !== NULL) && ($pPHPExcelName !== NULL)) { + // Initialise values + $this->_category = $pCategory; + $this->_excelName = $pExcelName; + $this->_phpExcelName = $pPHPExcelName; + } else { + throw new Exception("Invalid parameters passed."); + } + } + + /** + * Get Category (represented by CATEGORY_*) + * + * @return string + */ + public function getCategory() { + return $this->_category; + } + + /** + * Set Category (represented by CATEGORY_*) + * + * @param string $value + * @throws Exception + */ + public function setCategory($value = null) { + if (!is_null($value)) { + $this->_category = $value; + } else { + throw new Exception("Invalid parameter passed."); + } + } + + /** + * Get Excel name + * + * @return string + */ + public function getExcelName() { + return $this->_excelName; + } + + /** + * Set Excel name + * + * @param string $value + */ + public function setExcelName($value) { + $this->_excelName = $value; + } + + /** + * Get PHPExcel name + * + * @return string + */ + public function getPHPExcelName() { + return $this->_phpExcelName; + } + + /** + * Set PHPExcel name + * + * @param string $value + */ + public function setPHPExcelName($value) { + $this->_phpExcelName = $value; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/Functions.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Functions.php new file mode 100644 index 0000000..e0a5629 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Functions.php @@ -0,0 +1,813 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** MAX_VALUE */ +define('MAX_VALUE', 1.2e308); + +/** 2 / PI */ +define('M_2DIVPI', 0.63661977236758134307553505349006); + +/** MAX_ITERATIONS */ +define('MAX_ITERATIONS', 256); + +/** PRECISION */ +define('PRECISION', 8.88E-016); + + +/** + * PHPExcel_Calculation_Functions + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_Functions { + + /** constants */ + const COMPATIBILITY_EXCEL = 'Excel'; + const COMPATIBILITY_GNUMERIC = 'Gnumeric'; + const COMPATIBILITY_OPENOFFICE = 'OpenOfficeCalc'; + + const RETURNDATE_PHP_NUMERIC = 'P'; + const RETURNDATE_PHP_OBJECT = 'O'; + const RETURNDATE_EXCEL = 'E'; + + + /** + * Compatibility mode to use for error checking and responses + * + * @access private + * @var string + */ + protected static $compatibilityMode = self::COMPATIBILITY_EXCEL; + + /** + * Data Type to use when returning date values + * + * @access private + * @var string + */ + protected static $ReturnDateType = self::RETURNDATE_EXCEL; + + /** + * List of error codes + * + * @access private + * @var array + */ + protected static $_errorCodes = array( 'null' => '#NULL!', + 'divisionbyzero' => '#DIV/0!', + 'value' => '#VALUE!', + 'reference' => '#REF!', + 'name' => '#NAME?', + 'num' => '#NUM!', + 'na' => '#N/A', + 'gettingdata' => '#GETTING_DATA' + ); + + + /** + * Set the Compatibility Mode + * + * @access public + * @category Function Configuration + * @param string $compatibilityMode Compatibility Mode + * Permitted values are: + * PHPExcel_Calculation_Functions::COMPATIBILITY_EXCEL 'Excel' + * PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC 'Gnumeric' + * PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE 'OpenOfficeCalc' + * @return boolean (Success or Failure) + */ + public static function setCompatibilityMode($compatibilityMode) { + if (($compatibilityMode == self::COMPATIBILITY_EXCEL) || + ($compatibilityMode == self::COMPATIBILITY_GNUMERIC) || + ($compatibilityMode == self::COMPATIBILITY_OPENOFFICE)) { + self::$compatibilityMode = $compatibilityMode; + return True; + } + return False; + } // function setCompatibilityMode() + + + /** + * Return the current Compatibility Mode + * + * @access public + * @category Function Configuration + * @return string Compatibility Mode + * Possible Return values are: + * PHPExcel_Calculation_Functions::COMPATIBILITY_EXCEL 'Excel' + * PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC 'Gnumeric' + * PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE 'OpenOfficeCalc' + */ + public static function getCompatibilityMode() { + return self::$compatibilityMode; + } // function getCompatibilityMode() + + + /** + * Set the Return Date Format used by functions that return a date/time (Excel, PHP Serialized Numeric or PHP Object) + * + * @access public + * @category Function Configuration + * @param string $returnDateType Return Date Format + * Permitted values are: + * PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC 'P' + * PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT 'O' + * PHPExcel_Calculation_Functions::RETURNDATE_EXCEL 'E' + * @return boolean Success or failure + */ + public static function setReturnDateType($returnDateType) { + if (($returnDateType == self::RETURNDATE_PHP_NUMERIC) || + ($returnDateType == self::RETURNDATE_PHP_OBJECT) || + ($returnDateType == self::RETURNDATE_EXCEL)) { + self::$ReturnDateType = $returnDateType; + return True; + } + return False; + } // function setReturnDateType() + + + /** + * Return the current Return Date Format for functions that return a date/time (Excel, PHP Serialized Numeric or PHP Object) + * + * @access public + * @category Function Configuration + * @return string Return Date Format + * Possible Return values are: + * PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC 'P' + * PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT 'O' + * PHPExcel_Calculation_Functions::RETURNDATE_EXCEL 'E' + */ + public static function getReturnDateType() { + return self::$ReturnDateType; + } // function getReturnDateType() + + + /** + * DUMMY + * + * @access public + * @category Error Returns + * @return string #Not Yet Implemented + */ + public static function DUMMY() { + return '#Not Yet Implemented'; + } // function DUMMY() + + + /** + * DIV0 + * + * @access public + * @category Error Returns + * @return string #Not Yet Implemented + */ + public static function DIV0() { + return self::$_errorCodes['divisionbyzero']; + } // function DIV0() + + + /** + * NA + * + * Excel Function: + * =NA() + * + * Returns the error value #N/A + * #N/A is the error value that means "no value is available." + * + * @access public + * @category Logical Functions + * @return string #N/A! + */ + public static function NA() { + return self::$_errorCodes['na']; + } // function NA() + + + /** + * NaN + * + * Returns the error value #NUM! + * + * @access public + * @category Error Returns + * @return string #NUM! + */ + public static function NaN() { + return self::$_errorCodes['num']; + } // function NaN() + + + /** + * NAME + * + * Returns the error value #NAME? + * + * @access public + * @category Error Returns + * @return string #NAME? + */ + public static function NAME() { + return self::$_errorCodes['name']; + } // function NAME() + + + /** + * REF + * + * Returns the error value #REF! + * + * @access public + * @category Error Returns + * @return string #REF! + */ + public static function REF() { + return self::$_errorCodes['reference']; + } // function REF() + + + /** + * NULL + * + * Returns the error value #NULL! + * + * @access public + * @category Error Returns + * @return string #REF! + */ + public static function NULL() { + return self::$_errorCodes['null']; + } // function NULL() + + + /** + * VALUE + * + * Returns the error value #VALUE! + * + * @access public + * @category Error Returns + * @return string #VALUE! + */ + public static function VALUE() { + return self::$_errorCodes['value']; + } // function VALUE() + + + public static function isMatrixValue($idx) { + return ((substr_count($idx,'.') <= 1) || (preg_match('/\.[A-Z]/',$idx) > 0)); + } + + + public static function isValue($idx) { + return (substr_count($idx,'.') == 0); + } + + + public static function isCellValue($idx) { + return (substr_count($idx,'.') > 1); + } + + + public static function _ifCondition($condition) { + $condition = PHPExcel_Calculation_Functions::flattenSingleValue($condition); + if (!in_array($condition{0},array('>', '<', '='))) { + if (!is_numeric($condition)) { $condition = PHPExcel_Calculation::_wrapResult(strtoupper($condition)); } + return '='.$condition; + } else { + preg_match('/([<>=]+)(.*)/',$condition,$matches); + list(,$operator,$operand) = $matches; + if (!is_numeric($operand)) { $operand = PHPExcel_Calculation::_wrapResult(strtoupper($operand)); } + return $operator.$operand; + } + } // function _ifCondition() + + + /** + * ERROR_TYPE + * + * @param mixed $value Value to check + * @return boolean + */ + public static function ERROR_TYPE($value = '') { + $value = self::flattenSingleValue($value); + + $i = 1; + foreach(self::$_errorCodes as $errorCode) { + if ($value === $errorCode) { + return $i; + } + ++$i; + } + return self::NA(); + } // function ERROR_TYPE() + + + /** + * IS_BLANK + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_BLANK($value = NULL) { + if (!is_null($value)) { + $value = self::flattenSingleValue($value); + } + + return is_null($value); + } // function IS_BLANK() + + + /** + * IS_ERR + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_ERR($value = '') { + $value = self::flattenSingleValue($value); + + return self::IS_ERROR($value) && (!self::IS_NA($value)); + } // function IS_ERR() + + + /** + * IS_ERROR + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_ERROR($value = '') { + $value = self::flattenSingleValue($value); + + if (!is_string($value)) + return false; + return in_array($value, array_values(self::$_errorCodes)); + } // function IS_ERROR() + + + /** + * IS_NA + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_NA($value = '') { + $value = self::flattenSingleValue($value); + + return ($value === self::NA()); + } // function IS_NA() + + + /** + * IS_EVEN + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_EVEN($value = NULL) { + $value = self::flattenSingleValue($value); + + if ($value === NULL) + return self::NAME(); + if ((is_bool($value)) || ((is_string($value)) && (!is_numeric($value)))) + return self::VALUE(); + return ($value % 2 == 0); + } // function IS_EVEN() + + + /** + * IS_ODD + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_ODD($value = NULL) { + $value = self::flattenSingleValue($value); + + if ($value === NULL) + return self::NAME(); + if ((is_bool($value)) || ((is_string($value)) && (!is_numeric($value)))) + return self::VALUE(); + return (abs($value) % 2 == 1); + } // function IS_ODD() + + + /** + * IS_NUMBER + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_NUMBER($value = NULL) { + $value = self::flattenSingleValue($value); + + if (is_string($value)) { + return False; + } + return is_numeric($value); + } // function IS_NUMBER() + + + /** + * IS_LOGICAL + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_LOGICAL($value = NULL) { + $value = self::flattenSingleValue($value); + + return is_bool($value); + } // function IS_LOGICAL() + + + /** + * IS_TEXT + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_TEXT($value = NULL) { + $value = self::flattenSingleValue($value); + + return (is_string($value) && !self::IS_ERROR($value)); + } // function IS_TEXT() + + + /** + * IS_NONTEXT + * + * @param mixed $value Value to check + * @return boolean + */ + public static function IS_NONTEXT($value = NULL) { + return !self::IS_TEXT($value); + } // function IS_NONTEXT() + + + /** + * VERSION + * + * @return string Version information + */ + public static function VERSION() { + return 'PHPExcel 1.7.8, 2012-10-12'; + } // function VERSION() + + + /** + * N + * + * Returns a value converted to a number + * + * @param value The value you want converted + * @return number N converts values listed in the following table + * If value is or refers to N returns + * A number That number + * A date The serial number of that date + * TRUE 1 + * FALSE 0 + * An error value The error value + * Anything else 0 + */ + public static function N($value = NULL) { + while (is_array($value)) { + $value = array_shift($value); + } + + switch (gettype($value)) { + case 'double' : + case 'float' : + case 'integer' : + return $value; + break; + case 'boolean' : + return (integer) $value; + break; + case 'string' : + // Errors + if ((strlen($value) > 0) && ($value{0} == '#')) { + return $value; + } + break; + } + return 0; + } // function N() + + + /** + * TYPE + * + * Returns a number that identifies the type of a value + * + * @param value The value you want tested + * @return number N converts values listed in the following table + * If value is or refers to N returns + * A number 1 + * Text 2 + * Logical Value 4 + * An error value 16 + * Array or Matrix 64 + */ + public static function TYPE($value = NULL) { + $value = self::flattenArrayIndexed($value); + if (is_array($value) && (count($value) > 1)) { + $a = array_keys($value); + $a = array_pop($a); + // Range of cells is an error + if (self::isCellValue($a)) { + return 16; + // Test for Matrix + } elseif (self::isMatrixValue($a)) { + return 64; + } + } elseif(empty($value)) { + // Empty Cell + return 1; + } + $value = self::flattenSingleValue($value); + + if (($value === NULL) || (is_float($value)) || (is_int($value))) { + return 1; + } elseif(is_bool($value)) { + return 4; + } elseif(is_array($value)) { + return 64; + break; + } elseif(is_string($value)) { + // Errors + if ((strlen($value) > 0) && ($value{0} == '#')) { + return 16; + } + return 2; + } + return 0; + } // function TYPE() + + + /** + * Convert a multi-dimensional array to a simple 1-dimensional array + * + * @param array $array Array to be flattened + * @return array Flattened array + */ + public static function flattenArray($array) { + if (!is_array($array)) { + return (array) $array; + } + + $arrayValues = array(); + foreach ($array as $value) { + if (is_array($value)) { + foreach ($value as $val) { + if (is_array($val)) { + foreach ($val as $v) { + $arrayValues[] = $v; + } + } else { + $arrayValues[] = $val; + } + } + } else { + $arrayValues[] = $value; + } + } + + return $arrayValues; + } // function flattenArray() + + + /** + * Convert a multi-dimensional array to a simple 1-dimensional array, but retain an element of indexing + * + * @param array $array Array to be flattened + * @return array Flattened array + */ + public static function flattenArrayIndexed($array) { + if (!is_array($array)) { + return (array) $array; + } + + $arrayValues = array(); + foreach ($array as $k1 => $value) { + if (is_array($value)) { + foreach ($value as $k2 => $val) { + if (is_array($val)) { + foreach ($val as $k3 => $v) { + $arrayValues[$k1.'.'.$k2.'.'.$k3] = $v; + } + } else { + $arrayValues[$k1.'.'.$k2] = $val; + } + } + } else { + $arrayValues[$k1] = $value; + } + } + + return $arrayValues; + } // function flattenArrayIndexed() + + + /** + * Convert an array to a single scalar value by extracting the first element + * + * @param mixed $value Array or scalar value + * @return mixed + */ + public static function flattenSingleValue($value = '') { + while (is_array($value)) { + $value = array_pop($value); + } + + return $value; + } // function flattenSingleValue() + +} // class PHPExcel_Calculation_Functions + + +// +// There are a few mathematical functions that aren't available on all versions of PHP for all platforms +// These functions aren't available in Windows implementations of PHP prior to version 5.3.0 +// So we test if they do exist for this version of PHP/operating platform; and if not we create them +// +if (!function_exists('acosh')) { + function acosh($x) { + return 2 * log(sqrt(($x + 1) / 2) + sqrt(($x - 1) / 2)); + } // function acosh() +} + +if (!function_exists('asinh')) { + function asinh($x) { + return log($x + sqrt(1 + $x * $x)); + } // function asinh() +} + +if (!function_exists('atanh')) { + function atanh($x) { + return (log(1 + $x) - log(1 - $x)) / 2; + } // function atanh() +} + +if (!function_exists('money_format')) { + function money_format($format, $number) { + $regex = array( '/%((?:[\^!\-]|\+|\(|\=.)*)([0-9]+)?(?:#([0-9]+))?', + '(?:\.([0-9]+))?([in%])/' + ); + $regex = implode('', $regex); + if (setlocale(LC_MONETARY, null) == '') { + setlocale(LC_MONETARY, ''); + } + $locale = localeconv(); + $number = floatval($number); + if (!preg_match($regex, $format, $fmatch)) { + trigger_error("No format specified or invalid format", E_USER_WARNING); + return $number; + } + $flags = array( 'fillchar' => preg_match('/\=(.)/', $fmatch[1], $match) ? $match[1] : ' ', + 'nogroup' => preg_match('/\^/', $fmatch[1]) > 0, + 'usesignal' => preg_match('/\+|\(/', $fmatch[1], $match) ? $match[0] : '+', + 'nosimbol' => preg_match('/\!/', $fmatch[1]) > 0, + 'isleft' => preg_match('/\-/', $fmatch[1]) > 0 + ); + $width = trim($fmatch[2]) ? (int)$fmatch[2] : 0; + $left = trim($fmatch[3]) ? (int)$fmatch[3] : 0; + $right = trim($fmatch[4]) ? (int)$fmatch[4] : $locale['int_frac_digits']; + $conversion = $fmatch[5]; + $positive = true; + if ($number < 0) { + $positive = false; + $number *= -1; + } + $letter = $positive ? 'p' : 'n'; + $prefix = $suffix = $cprefix = $csuffix = $signal = ''; + if (!$positive) { + $signal = $locale['negative_sign']; + switch (true) { + case $locale['n_sign_posn'] == 0 || $flags['usesignal'] == '(': + $prefix = '('; + $suffix = ')'; + break; + case $locale['n_sign_posn'] == 1: + $prefix = $signal; + break; + case $locale['n_sign_posn'] == 2: + $suffix = $signal; + break; + case $locale['n_sign_posn'] == 3: + $cprefix = $signal; + break; + case $locale['n_sign_posn'] == 4: + $csuffix = $signal; + break; + } + } + if (!$flags['nosimbol']) { + $currency = $cprefix; + $currency .= ($conversion == 'i' ? $locale['int_curr_symbol'] : $locale['currency_symbol']); + $currency .= $csuffix; + $currency = iconv('ISO-8859-1','UTF-8',$currency); + } else { + $currency = ''; + } + $space = $locale["{$letter}_sep_by_space"] ? ' ' : ''; + + if (!isset($locale['mon_decimal_point']) || empty($locale['mon_decimal_point'])) { + $locale['mon_decimal_point'] = (!isset($locale['decimal_point']) || empty($locale['decimal_point'])) ? + $locale['decimal_point'] : + '.'; + } + + $number = number_format($number, $right, $locale['mon_decimal_point'], $flags['nogroup'] ? '' : $locale['mon_thousands_sep'] ); + $number = explode($locale['mon_decimal_point'], $number); + + $n = strlen($prefix) + strlen($currency); + if ($left > 0 && $left > $n) { + if ($flags['isleft']) { + $number[0] .= str_repeat($flags['fillchar'], $left - $n); + } else { + $number[0] = str_repeat($flags['fillchar'], $left - $n) . $number[0]; + } + } + $number = implode($locale['mon_decimal_point'], $number); + if ($locale["{$letter}_cs_precedes"]) { + $number = $prefix . $currency . $space . $number . $suffix; + } else { + $number = $prefix . $number . $space . $currency . $suffix; + } + if ($width > 0) { + $number = str_pad($number, $width, $flags['fillchar'], $flags['isleft'] ? STR_PAD_RIGHT : STR_PAD_LEFT); + } + $format = str_replace($fmatch[0], $number, $format); + return $format; + } // function money_format() +} + + +// +// Strangely, PHP doesn't have a mb_str_replace multibyte function +// As we'll only ever use this function with UTF-8 characters, we can simply "hard-code" the character set +// +if ((!function_exists('mb_str_replace')) && + (function_exists('mb_substr')) && (function_exists('mb_strlen')) && (function_exists('mb_strpos'))) { + function mb_str_replace($search, $replace, $subject) { + if(is_array($subject)) { + $ret = array(); + foreach($subject as $key => $val) { + $ret[$key] = mb_str_replace($search, $replace, $val); + } + return $ret; + } + + foreach((array) $search as $key => $s) { + if($s == '') { + continue; + } + $r = !is_array($replace) ? $replace : (array_key_exists($key, $replace) ? $replace[$key] : ''); + $pos = mb_strpos($subject, $s, 0, 'UTF-8'); + while($pos !== false) { + $subject = mb_substr($subject, 0, $pos, 'UTF-8') . $r . mb_substr($subject, $pos + mb_strlen($s, 'UTF-8'), 65535, 'UTF-8'); + $pos = mb_strpos($subject, $s, $pos + mb_strlen($r, 'UTF-8'), 'UTF-8'); + } + } + return $subject; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/Logical.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Logical.php new file mode 100644 index 0000000..80f2a26 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Logical.php @@ -0,0 +1,288 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** + * PHPExcel_Calculation_Logical + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_Logical { + + /** + * TRUE + * + * Returns the boolean TRUE. + * + * Excel Function: + * =TRUE() + * + * @access public + * @category Logical Functions + * @return boolean True + */ + public static function TRUE() { + return TRUE; + } // function TRUE() + + + /** + * FALSE + * + * Returns the boolean FALSE. + * + * Excel Function: + * =FALSE() + * + * @access public + * @category Logical Functions + * @return boolean False + */ + public static function FALSE() { + return FALSE; + } // function FALSE() + + + /** + * LOGICAL_AND + * + * Returns boolean TRUE if all its arguments are TRUE; returns FALSE if one or more argument is FALSE. + * + * Excel Function: + * =AND(logical1[,logical2[, ...]]) + * + * The arguments must evaluate to logical values such as TRUE or FALSE, or the arguments must be arrays + * or references that contain logical values. + * + * Boolean arguments are treated as True or False as appropriate + * Integer or floating point arguments are treated as True, except for 0 or 0.0 which are False + * If any argument value is a string, or a Null, the function returns a #VALUE! error, unless the string holds + * the value TRUE or FALSE, in which case it is evaluated as the corresponding boolean value + * + * @access public + * @category Logical Functions + * @param mixed $arg,... Data values + * @return boolean The logical AND of the arguments. + */ + public static function LOGICAL_AND() { + // Return value + $returnValue = TRUE; + + // Loop through the arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + $argCount = -1; + foreach ($aArgs as $argCount => $arg) { + // Is it a boolean value? + if (is_bool($arg)) { + $returnValue = $returnValue && $arg; + } elseif ((is_numeric($arg)) && (!is_string($arg))) { + $returnValue = $returnValue && ($arg != 0); + } elseif (is_string($arg)) { + $arg = strtoupper($arg); + if (($arg == 'TRUE') || ($arg == PHPExcel_Calculation::getTRUE())) { + $arg = TRUE; + } elseif (($arg == 'FALSE') || ($arg == PHPExcel_Calculation::getFALSE())) { + $arg = FALSE; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + $returnValue = $returnValue && ($arg != 0); + } + } + + // Return + if ($argCount < 0) { + return PHPExcel_Calculation_Functions::VALUE(); + } + return $returnValue; + } // function LOGICAL_AND() + + + /** + * LOGICAL_OR + * + * Returns boolean TRUE if any argument is TRUE; returns FALSE if all arguments are FALSE. + * + * Excel Function: + * =OR(logical1[,logical2[, ...]]) + * + * The arguments must evaluate to logical values such as TRUE or FALSE, or the arguments must be arrays + * or references that contain logical values. + * + * Boolean arguments are treated as True or False as appropriate + * Integer or floating point arguments are treated as True, except for 0 or 0.0 which are False + * If any argument value is a string, or a Null, the function returns a #VALUE! error, unless the string holds + * the value TRUE or FALSE, in which case it is evaluated as the corresponding boolean value + * + * @access public + * @category Logical Functions + * @param mixed $arg,... Data values + * @return boolean The logical OR of the arguments. + */ + public static function LOGICAL_OR() { + // Return value + $returnValue = FALSE; + + // Loop through the arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + $argCount = -1; + foreach ($aArgs as $argCount => $arg) { + // Is it a boolean value? + if (is_bool($arg)) { + $returnValue = $returnValue || $arg; + } elseif ((is_numeric($arg)) && (!is_string($arg))) { + $returnValue = $returnValue || ($arg != 0); + } elseif (is_string($arg)) { + $arg = strtoupper($arg); + if (($arg == 'TRUE') || ($arg == PHPExcel_Calculation::getTRUE())) { + $arg = TRUE; + } elseif (($arg == 'FALSE') || ($arg == PHPExcel_Calculation::getFALSE())) { + $arg = FALSE; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + $returnValue = $returnValue || ($arg != 0); + } + } + + // Return + if ($argCount < 0) { + return PHPExcel_Calculation_Functions::VALUE(); + } + return $returnValue; + } // function LOGICAL_OR() + + + /** + * NOT + * + * Returns the boolean inverse of the argument. + * + * Excel Function: + * =NOT(logical) + * + * The argument must evaluate to a logical value such as TRUE or FALSE + * + * Boolean arguments are treated as True or False as appropriate + * Integer or floating point arguments are treated as True, except for 0 or 0.0 which are False + * If any argument value is a string, or a Null, the function returns a #VALUE! error, unless the string holds + * the value TRUE or FALSE, in which case it is evaluated as the corresponding boolean value + * + * @access public + * @category Logical Functions + * @param mixed $logical A value or expression that can be evaluated to TRUE or FALSE + * @return boolean The boolean inverse of the argument. + */ + public static function NOT($logical=FALSE) { + $logical = PHPExcel_Calculation_Functions::flattenSingleValue($logical); + if (is_string($logical)) { + $logical = strtoupper($logical); + if (($logical == 'TRUE') || ($logical == PHPExcel_Calculation::getTRUE())) { + return FALSE; + } elseif (($logical == 'FALSE') || ($logical == PHPExcel_Calculation::getFALSE())) { + return TRUE; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + + return !$logical; + } // function NOT() + + /** + * STATEMENT_IF + * + * Returns one value if a condition you specify evaluates to TRUE and another value if it evaluates to FALSE. + * + * Excel Function: + * =IF(condition[,returnIfTrue[,returnIfFalse]]) + * + * Condition is any value or expression that can be evaluated to TRUE or FALSE. + * For example, A10=100 is a logical expression; if the value in cell A10 is equal to 100, + * the expression evaluates to TRUE. Otherwise, the expression evaluates to FALSE. + * This argument can use any comparison calculation operator. + * ReturnIfTrue is the value that is returned if condition evaluates to TRUE. + * For example, if this argument is the text string "Within budget" and the condition argument evaluates to TRUE, + * then the IF function returns the text "Within budget" + * If condition is TRUE and ReturnIfTrue is blank, this argument returns 0 (zero). To display the word TRUE, use + * the logical value TRUE for this argument. + * ReturnIfTrue can be another formula. + * ReturnIfFalse is the value that is returned if condition evaluates to FALSE. + * For example, if this argument is the text string "Over budget" and the condition argument evaluates to FALSE, + * then the IF function returns the text "Over budget". + * If condition is FALSE and ReturnIfFalse is omitted, then the logical value FALSE is returned. + * If condition is FALSE and ReturnIfFalse is blank, then the value 0 (zero) is returned. + * ReturnIfFalse can be another formula. + * + * @access public + * @category Logical Functions + * @param mixed $condition Condition to evaluate + * @param mixed $returnIfTrue Value to return when condition is true + * @param mixed $returnIfFalse Optional value to return when condition is false + * @return mixed The value of returnIfTrue or returnIfFalse determined by condition + */ + public static function STATEMENT_IF($condition = TRUE, $returnIfTrue = 0, $returnIfFalse = FALSE) { + $condition = (is_null($condition)) ? TRUE : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($condition); + $returnIfTrue = (is_null($returnIfTrue)) ? 0 : PHPExcel_Calculation_Functions::flattenSingleValue($returnIfTrue); + $returnIfFalse = (is_null($returnIfFalse)) ? FALSE : PHPExcel_Calculation_Functions::flattenSingleValue($returnIfFalse); + + return ($condition) ? $returnIfTrue : $returnIfFalse; + } // function STATEMENT_IF() + + + /** + * IFERROR + * + * Excel Function: + * =IFERROR(testValue,errorpart) + * + * @access public + * @category Logical Functions + * @param mixed $testValue Value to check, is also the value returned when no error + * @param mixed $errorpart Value to return when testValue is an error condition + * @return mixed The value of errorpart or testValue determined by error condition + */ + public static function IFERROR($testValue = '', $errorpart = '') { + $testValue = (is_null($testValue)) ? '' : PHPExcel_Calculation_Functions::flattenSingleValue($testValue); + $errorpart = (is_null($errorpart)) ? '' : PHPExcel_Calculation_Functions::flattenSingleValue($errorpart); + + return self::STATEMENT_IF(PHPExcel_Calculation_Functions::IS_ERROR($testValue), $errorpart, $testValue); + } // function IFERROR() + +} // class PHPExcel_Calculation_Logical diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/LookupRef.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/LookupRef.php new file mode 100644 index 0000000..c824690 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/LookupRef.php @@ -0,0 +1,808 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** + * PHPExcel_Calculation_LookupRef + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_LookupRef { + + + /** + * CELL_ADDRESS + * + * Creates a cell address as text, given specified row and column numbers. + * + * Excel Function: + * =ADDRESS(row, column, [relativity], [referenceStyle], [sheetText]) + * + * @param row Row number to use in the cell reference + * @param column Column number to use in the cell reference + * @param relativity Flag indicating the type of reference to return + * 1 or omitted Absolute + * 2 Absolute row; relative column + * 3 Relative row; absolute column + * 4 Relative + * @param referenceStyle A logical value that specifies the A1 or R1C1 reference style. + * TRUE or omitted CELL_ADDRESS returns an A1-style reference + * FALSE CELL_ADDRESS returns an R1C1-style reference + * @param sheetText Optional Name of worksheet to use + * @return string + */ + public static function CELL_ADDRESS($row, $column, $relativity=1, $referenceStyle=True, $sheetText='') { + $row = PHPExcel_Calculation_Functions::flattenSingleValue($row); + $column = PHPExcel_Calculation_Functions::flattenSingleValue($column); + $relativity = PHPExcel_Calculation_Functions::flattenSingleValue($relativity); + $sheetText = PHPExcel_Calculation_Functions::flattenSingleValue($sheetText); + + if (($row < 1) || ($column < 1)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if ($sheetText > '') { + if (strpos($sheetText,' ') !== False) { $sheetText = "'".$sheetText."'"; } + $sheetText .='!'; + } + if ((!is_bool($referenceStyle)) || $referenceStyle) { + $rowRelative = $columnRelative = '$'; + $column = PHPExcel_Cell::stringFromColumnIndex($column-1); + if (($relativity == 2) || ($relativity == 4)) { $columnRelative = ''; } + if (($relativity == 3) || ($relativity == 4)) { $rowRelative = ''; } + return $sheetText.$columnRelative.$column.$rowRelative.$row; + } else { + if (($relativity == 2) || ($relativity == 4)) { $column = '['.$column.']'; } + if (($relativity == 3) || ($relativity == 4)) { $row = '['.$row.']'; } + return $sheetText.'R'.$row.'C'.$column; + } + } // function CELL_ADDRESS() + + + /** + * COLUMN + * + * Returns the column number of the given cell reference + * If the cell reference is a range of cells, COLUMN returns the column numbers of each column in the reference as a horizontal array. + * If cell reference is omitted, and the function is being called through the calculation engine, then it is assumed to be the + * reference of the cell in which the COLUMN function appears; otherwise this function returns 0. + * + * Excel Function: + * =COLUMN([cellAddress]) + * + * @param cellAddress A reference to a range of cells for which you want the column numbers + * @return integer or array of integer + */ + public static function COLUMN($cellAddress=Null) { + if (is_null($cellAddress) || trim($cellAddress) === '') { return 0; } + + if (is_array($cellAddress)) { + foreach($cellAddress as $columnKey => $value) { + $columnKey = preg_replace('/[^a-z]/i','',$columnKey); + return (integer) PHPExcel_Cell::columnIndexFromString($columnKey); + } + } else { + if (strpos($cellAddress,'!') !== false) { + list($sheet,$cellAddress) = explode('!',$cellAddress); + } + if (strpos($cellAddress,':') !== false) { + list($startAddress,$endAddress) = explode(':',$cellAddress); + $startAddress = preg_replace('/[^a-z]/i','',$startAddress); + $endAddress = preg_replace('/[^a-z]/i','',$endAddress); + $returnValue = array(); + do { + $returnValue[] = (integer) PHPExcel_Cell::columnIndexFromString($startAddress); + } while ($startAddress++ != $endAddress); + return $returnValue; + } else { + $cellAddress = preg_replace('/[^a-z]/i','',$cellAddress); + return (integer) PHPExcel_Cell::columnIndexFromString($cellAddress); + } + } + } // function COLUMN() + + + /** + * COLUMNS + * + * Returns the number of columns in an array or reference. + * + * Excel Function: + * =COLUMNS(cellAddress) + * + * @param cellAddress An array or array formula, or a reference to a range of cells for which you want the number of columns + * @return integer The number of columns in cellAddress + */ + public static function COLUMNS($cellAddress=Null) { + if (is_null($cellAddress) || $cellAddress === '') { + return 1; + } elseif (!is_array($cellAddress)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + $x = array_keys($cellAddress); + $x = array_shift($x); + $isMatrix = (is_numeric($x)); + list($columns,$rows) = PHPExcel_Calculation::_getMatrixDimensions($cellAddress); + + if ($isMatrix) { + return $rows; + } else { + return $columns; + } + } // function COLUMNS() + + + /** + * ROW + * + * Returns the row number of the given cell reference + * If the cell reference is a range of cells, ROW returns the row numbers of each row in the reference as a vertical array. + * If cell reference is omitted, and the function is being called through the calculation engine, then it is assumed to be the + * reference of the cell in which the ROW function appears; otherwise this function returns 0. + * + * Excel Function: + * =ROW([cellAddress]) + * + * @param cellAddress A reference to a range of cells for which you want the row numbers + * @return integer or array of integer + */ + public static function ROW($cellAddress=Null) { + if (is_null($cellAddress) || trim($cellAddress) === '') { return 0; } + + if (is_array($cellAddress)) { + foreach($cellAddress as $columnKey => $rowValue) { + foreach($rowValue as $rowKey => $cellValue) { + return (integer) preg_replace('/[^0-9]/i','',$rowKey); + } + } + } else { + if (strpos($cellAddress,'!') !== false) { + list($sheet,$cellAddress) = explode('!',$cellAddress); + } + if (strpos($cellAddress,':') !== false) { + list($startAddress,$endAddress) = explode(':',$cellAddress); + $startAddress = preg_replace('/[^0-9]/','',$startAddress); + $endAddress = preg_replace('/[^0-9]/','',$endAddress); + $returnValue = array(); + do { + $returnValue[][] = (integer) $startAddress; + } while ($startAddress++ != $endAddress); + return $returnValue; + } else { + list($cellAddress) = explode(':',$cellAddress); + return (integer) preg_replace('/[^0-9]/','',$cellAddress); + } + } + } // function ROW() + + + /** + * ROWS + * + * Returns the number of rows in an array or reference. + * + * Excel Function: + * =ROWS(cellAddress) + * + * @param cellAddress An array or array formula, or a reference to a range of cells for which you want the number of rows + * @return integer The number of rows in cellAddress + */ + public static function ROWS($cellAddress=Null) { + if (is_null($cellAddress) || $cellAddress === '') { + return 1; + } elseif (!is_array($cellAddress)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + $i = array_keys($cellAddress); + $isMatrix = (is_numeric(array_shift($i))); + list($columns,$rows) = PHPExcel_Calculation::_getMatrixDimensions($cellAddress); + + if ($isMatrix) { + return $columns; + } else { + return $rows; + } + } // function ROWS() + + + /** + * HYPERLINK + * + * Excel Function: + * =HYPERLINK(linkURL,displayName) + * + * @access public + * @category Logical Functions + * @param string $linkURL Value to check, is also the value returned when no error + * @param string $displayName Value to return when testValue is an error condition + * @return mixed The value of $displayName (or $linkURL if $displayName was blank) + */ + public static function HYPERLINK($linkURL = '', $displayName = null, PHPExcel_Cell $pCell = null) { + $args = func_get_args(); + $pCell = array_pop($args); + + $linkURL = (is_null($linkURL)) ? '' : PHPExcel_Calculation_Functions::flattenSingleValue($linkURL); + $displayName = (is_null($displayName)) ? '' : PHPExcel_Calculation_Functions::flattenSingleValue($displayName); + + if ((!is_object($pCell)) || (trim($linkURL) == '')) { + return PHPExcel_Calculation_Functions::REF(); + } + + if ((is_object($displayName)) || trim($displayName) == '') { + $displayName = $linkURL; + } + + $pCell->getHyperlink()->setUrl($linkURL); + + return $displayName; + } // function HYPERLINK() + + + /** + * INDIRECT + * + * Returns the reference specified by a text string. + * References are immediately evaluated to display their contents. + * + * Excel Function: + * =INDIRECT(cellAddress) + * + * NOTE - INDIRECT() does not yet support the optional a1 parameter introduced in Excel 2010 + * + * @param cellAddress An array or array formula, or a reference to a range of cells for which you want the number of rows + * @return mixed The cells referenced by cellAddress + * + * @todo Support for the optional a1 parameter introduced in Excel 2010 + * + */ + public static function INDIRECT($cellAddress=Null, PHPExcel_Cell $pCell = null) { + $cellAddress = PHPExcel_Calculation_Functions::flattenSingleValue($cellAddress); + if (is_null($cellAddress) || $cellAddress === '') { + return PHPExcel_Calculation_Functions::REF(); + } + + $cellAddress1 = $cellAddress; + $cellAddress2 = NULL; + if (strpos($cellAddress,':') !== false) { + list($cellAddress1,$cellAddress2) = explode(':',$cellAddress); + } + + if ((!preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_CELLREF.'$/i', $cellAddress1, $matches)) || + ((!is_null($cellAddress2)) && (!preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_CELLREF.'$/i', $cellAddress2, $matches)))) { + + if (!preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_NAMEDRANGE.'$/i', $cellAddress1, $matches)) { + return PHPExcel_Calculation_Functions::REF(); + } + + if (strpos($cellAddress,'!') !== false) { + list($sheetName,$cellAddress) = explode('!',$cellAddress); + $pSheet = $pCell->getParent()->getParent()->getSheetByName($sheetName); + } else { + $pSheet = $pCell->getParent(); + } + + return PHPExcel_Calculation::getInstance()->extractNamedRange($cellAddress, $pSheet, False); + } + + if (strpos($cellAddress,'!') !== false) { + list($sheetName,$cellAddress) = explode('!',$cellAddress); + $pSheet = $pCell->getParent()->getParent()->getSheetByName($sheetName); + } else { + $pSheet = $pCell->getParent(); + } + + return PHPExcel_Calculation::getInstance()->extractCellRange($cellAddress, $pSheet, False); + } // function INDIRECT() + + + /** + * OFFSET + * + * Returns a reference to a range that is a specified number of rows and columns from a cell or range of cells. + * The reference that is returned can be a single cell or a range of cells. You can specify the number of rows and + * the number of columns to be returned. + * + * Excel Function: + * =OFFSET(cellAddress, rows, cols, [height], [width]) + * + * @param cellAddress The reference from which you want to base the offset. Reference must refer to a cell or + * range of adjacent cells; otherwise, OFFSET returns the #VALUE! error value. + * @param rows The number of rows, up or down, that you want the upper-left cell to refer to. + * Using 5 as the rows argument specifies that the upper-left cell in the reference is + * five rows below reference. Rows can be positive (which means below the starting reference) + * or negative (which means above the starting reference). + * @param cols The number of columns, to the left or right, that you want the upper-left cell of the result + * to refer to. Using 5 as the cols argument specifies that the upper-left cell in the + * reference is five columns to the right of reference. Cols can be positive (which means + * to the right of the starting reference) or negative (which means to the left of the + * starting reference). + * @param height The height, in number of rows, that you want the returned reference to be. Height must be a positive number. + * @param width The width, in number of columns, that you want the returned reference to be. Width must be a positive number. + * @return string A reference to a cell or range of cells + */ + public static function OFFSET($cellAddress=Null,$rows=0,$columns=0,$height=null,$width=null) { + $rows = PHPExcel_Calculation_Functions::flattenSingleValue($rows); + $columns = PHPExcel_Calculation_Functions::flattenSingleValue($columns); + $height = PHPExcel_Calculation_Functions::flattenSingleValue($height); + $width = PHPExcel_Calculation_Functions::flattenSingleValue($width); + if ($cellAddress == Null) { + return 0; + } + + $args = func_get_args(); + $pCell = array_pop($args); + if (!is_object($pCell)) { + return PHPExcel_Calculation_Functions::REF(); + } + + $sheetName = null; + if (strpos($cellAddress,"!")) { + list($sheetName,$cellAddress) = explode("!",$cellAddress); + } + if (strpos($cellAddress,":")) { + list($startCell,$endCell) = explode(":",$cellAddress); + } else { + $startCell = $endCell = $cellAddress; + } + list($startCellColumn,$startCellRow) = PHPExcel_Cell::coordinateFromString($startCell); + list($endCellColumn,$endCellRow) = PHPExcel_Cell::coordinateFromString($endCell); + + $startCellRow += $rows; + $startCellColumn = PHPExcel_Cell::columnIndexFromString($startCellColumn) - 1; + $startCellColumn += $columns; + + if (($startCellRow <= 0) || ($startCellColumn < 0)) { + return PHPExcel_Calculation_Functions::REF(); + } + $endCellColumn = PHPExcel_Cell::columnIndexFromString($endCellColumn) - 1; + if (($width != null) && (!is_object($width))) { + $endCellColumn = $startCellColumn + $width - 1; + } else { + $endCellColumn += $columns; + } + $startCellColumn = PHPExcel_Cell::stringFromColumnIndex($startCellColumn); + + if (($height != null) && (!is_object($height))) { + $endCellRow = $startCellRow + $height - 1; + } else { + $endCellRow += $rows; + } + + if (($endCellRow <= 0) || ($endCellColumn < 0)) { + return PHPExcel_Calculation_Functions::REF(); + } + $endCellColumn = PHPExcel_Cell::stringFromColumnIndex($endCellColumn); + + $cellAddress = $startCellColumn.$startCellRow; + if (($startCellColumn != $endCellColumn) || ($startCellRow != $endCellRow)) { + $cellAddress .= ':'.$endCellColumn.$endCellRow; + } + + if ($sheetName !== null) { + $pSheet = $pCell->getParent()->getParent()->getSheetByName($sheetName); + } else { + $pSheet = $pCell->getParent(); + } + + return PHPExcel_Calculation::getInstance()->extractCellRange($cellAddress, $pSheet, False); + } // function OFFSET() + + + /** + * CHOOSE + * + * Uses lookup_value to return a value from the list of value arguments. + * Use CHOOSE to select one of up to 254 values based on the lookup_value. + * + * Excel Function: + * =CHOOSE(index_num, value1, [value2], ...) + * + * @param index_num Specifies which value argument is selected. + * Index_num must be a number between 1 and 254, or a formula or reference to a cell containing a number + * between 1 and 254. + * @param value1... Value1 is required, subsequent values are optional. + * Between 1 to 254 value arguments from which CHOOSE selects a value or an action to perform based on + * index_num. The arguments can be numbers, cell references, defined names, formulas, functions, or + * text. + * @return mixed The selected value + */ + public static function CHOOSE() { + $chooseArgs = func_get_args(); + $chosenEntry = PHPExcel_Calculation_Functions::flattenArray(array_shift($chooseArgs)); + $entryCount = count($chooseArgs) - 1; + + if(is_array($chosenEntry)) { + $chosenEntry = array_shift($chosenEntry); + } + if ((is_numeric($chosenEntry)) && (!is_bool($chosenEntry))) { + --$chosenEntry; + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + $chosenEntry = floor($chosenEntry); + if (($chosenEntry <= 0) || ($chosenEntry > $entryCount)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (is_array($chooseArgs[$chosenEntry])) { + return PHPExcel_Calculation_Functions::flattenArray($chooseArgs[$chosenEntry]); + } else { + return $chooseArgs[$chosenEntry]; + } + } // function CHOOSE() + + + /** + * MATCH + * + * The MATCH function searches for a specified item in a range of cells + * + * Excel Function: + * =MATCH(lookup_value, lookup_array, [match_type]) + * + * @param lookup_value The value that you want to match in lookup_array + * @param lookup_array The range of cells being searched + * @param match_type The number -1, 0, or 1. -1 means above, 0 means exact match, 1 means below. If match_type is 1 or -1, the list has to be ordered. + * @return integer The relative position of the found item + */ + public static function MATCH($lookup_value, $lookup_array, $match_type=1) { + $lookup_array = PHPExcel_Calculation_Functions::flattenArray($lookup_array); + $lookup_value = PHPExcel_Calculation_Functions::flattenSingleValue($lookup_value); + $match_type = (is_null($match_type)) ? 1 : (int) PHPExcel_Calculation_Functions::flattenSingleValue($match_type); + // MATCH is not case sensitive + $lookup_value = strtolower($lookup_value); + + // lookup_value type has to be number, text, or logical values + if ((!is_numeric($lookup_value)) && (!is_string($lookup_value)) && (!is_bool($lookup_value))) { + return PHPExcel_Calculation_Functions::NA(); + } + + // match_type is 0, 1 or -1 + if (($match_type !== 0) && ($match_type !== -1) && ($match_type !== 1)) { + return PHPExcel_Calculation_Functions::NA(); + } + + // lookup_array should not be empty + $lookupArraySize = count($lookup_array); + if ($lookupArraySize <= 0) { + return PHPExcel_Calculation_Functions::NA(); + } + + // lookup_array should contain only number, text, or logical values, or empty (null) cells + foreach($lookup_array as $i => $lookupArrayValue) { + // check the type of the value + if ((!is_numeric($lookupArrayValue)) && (!is_string($lookupArrayValue)) && + (!is_bool($lookupArrayValue)) && (!is_null($lookupArrayValue))) { + return PHPExcel_Calculation_Functions::NA(); + } + // convert strings to lowercase for case-insensitive testing + if (is_string($lookupArrayValue)) { + $lookup_array[$i] = strtolower($lookupArrayValue); + } + if ((is_null($lookupArrayValue)) && (($match_type == 1) || ($match_type == -1))) { + $lookup_array = array_slice($lookup_array,0,$i-1); + } + } + + // if match_type is 1 or -1, the list has to be ordered + if ($match_type == 1) { + asort($lookup_array); + $keySet = array_keys($lookup_array); + } elseif($match_type == -1) { + arsort($lookup_array); + $keySet = array_keys($lookup_array); + } + + // ** + // find the match + // ** + // loop on the cells +// var_dump($lookup_array); +// echo '<br />'; + foreach($lookup_array as $i => $lookupArrayValue) { + if (($match_type == 0) && ($lookupArrayValue == $lookup_value)) { + // exact match + return ++$i; + } elseif (($match_type == -1) && ($lookupArrayValue <= $lookup_value)) { +// echo '$i = '.$i.' => '; +// var_dump($lookupArrayValue); +// echo '<br />'; +// echo 'Keyset = '; +// var_dump($keySet); +// echo '<br />'; + $i = array_search($i,$keySet); +// echo '$i='.$i.'<br />'; + // if match_type is -1 <=> find the smallest value that is greater than or equal to lookup_value + if ($i < 1){ + // 1st cell was allready smaller than the lookup_value + break; + } else { + // the previous cell was the match + return $keySet[$i-1]+1; + } + } elseif (($match_type == 1) && ($lookupArrayValue >= $lookup_value)) { +// echo '$i = '.$i.' => '; +// var_dump($lookupArrayValue); +// echo '<br />'; +// echo 'Keyset = '; +// var_dump($keySet); +// echo '<br />'; + $i = array_search($i,$keySet); +// echo '$i='.$i.'<br />'; + // if match_type is 1 <=> find the largest value that is less than or equal to lookup_value + if ($i < 1){ + // 1st cell was allready bigger than the lookup_value + break; + } else { + // the previous cell was the match + return $keySet[$i-1]+1; + } + } + } + + // unsuccessful in finding a match, return #N/A error value + return PHPExcel_Calculation_Functions::NA(); + } // function MATCH() + + + /** + * INDEX + * + * Uses an index to choose a value from a reference or array + * + * Excel Function: + * =INDEX(range_array, row_num, [column_num]) + * + * @param range_array A range of cells or an array constant + * @param row_num The row in array from which to return a value. If row_num is omitted, column_num is required. + * @param column_num The column in array from which to return a value. If column_num is omitted, row_num is required. + * @return mixed the value of a specified cell or array of cells + */ + public static function INDEX($arrayValues,$rowNum = 0,$columnNum = 0) { + + if (($rowNum < 0) || ($columnNum < 0)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (!is_array($arrayValues)) { + return PHPExcel_Calculation_Functions::REF(); + } + + $rowKeys = array_keys($arrayValues); + $columnKeys = @array_keys($arrayValues[$rowKeys[0]]); + + if ($columnNum > count($columnKeys)) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($columnNum == 0) { + if ($rowNum == 0) { + return $arrayValues; + } + $rowNum = $rowKeys[--$rowNum]; + $returnArray = array(); + foreach($arrayValues as $arrayColumn) { + if (is_array($arrayColumn)) { + if (isset($arrayColumn[$rowNum])) { + $returnArray[] = $arrayColumn[$rowNum]; + } else { + return $arrayValues[$rowNum]; + } + } else { + return $arrayValues[$rowNum]; + } + } + return $returnArray; + } + $columnNum = $columnKeys[--$columnNum]; + if ($rowNum > count($rowKeys)) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($rowNum == 0) { + return $arrayValues[$columnNum]; + } + $rowNum = $rowKeys[--$rowNum]; + + return $arrayValues[$rowNum][$columnNum]; + } // function INDEX() + + + /** + * TRANSPOSE + * + * @param array $matrixData A matrix of values + * @return array + * + * Unlike the Excel TRANSPOSE function, which will only work on a single row or column, this function will transpose a full matrix. + */ + public static function TRANSPOSE($matrixData) { + $returnMatrix = array(); + if (!is_array($matrixData)) { $matrixData = array(array($matrixData)); } + + $column = 0; + foreach($matrixData as $matrixRow) { + $row = 0; + foreach($matrixRow as $matrixCell) { + $returnMatrix[$row][$column] = $matrixCell; + ++$row; + } + ++$column; + } + return $returnMatrix; + } // function TRANSPOSE() + + + private static function _vlookupSort($a,$b) { + $f = array_keys($a); + $firstColumn = array_shift($f); + if (strtolower($a[$firstColumn]) == strtolower($b[$firstColumn])) { + return 0; + } + return (strtolower($a[$firstColumn]) < strtolower($b[$firstColumn])) ? -1 : 1; + } // function _vlookupSort() + + + /** + * VLOOKUP + * The VLOOKUP function searches for value in the left-most column of lookup_array and returns the value in the same row based on the index_number. + * @param lookup_value The value that you want to match in lookup_array + * @param lookup_array The range of cells being searched + * @param index_number The column number in table_array from which the matching value must be returned. The first column is 1. + * @param not_exact_match Determines if you are looking for an exact match based on lookup_value. + * @return mixed The value of the found cell + */ + public static function VLOOKUP($lookup_value, $lookup_array, $index_number, $not_exact_match=true) { + $lookup_value = PHPExcel_Calculation_Functions::flattenSingleValue($lookup_value); + $index_number = PHPExcel_Calculation_Functions::flattenSingleValue($index_number); + $not_exact_match = PHPExcel_Calculation_Functions::flattenSingleValue($not_exact_match); + + // index_number must be greater than or equal to 1 + if ($index_number < 1) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + // index_number must be less than or equal to the number of columns in lookup_array + if ((!is_array($lookup_array)) || (empty($lookup_array))) { + return PHPExcel_Calculation_Functions::REF(); + } else { + $f = array_keys($lookup_array); + $firstRow = array_pop($f); + if ((!is_array($lookup_array[$firstRow])) || ($index_number > count($lookup_array[$firstRow]))) { + return PHPExcel_Calculation_Functions::REF(); + } else { + $columnKeys = array_keys($lookup_array[$firstRow]); + $returnColumn = $columnKeys[--$index_number]; + $firstColumn = array_shift($columnKeys); + } + } + + if (!$not_exact_match) { + uasort($lookup_array,array('self','_vlookupSort')); + } + + $rowNumber = $rowValue = False; + foreach($lookup_array as $rowKey => $rowData) { + if (strtolower($rowData[$firstColumn]) > strtolower($lookup_value)) { + break; + } + $rowNumber = $rowKey; + $rowValue = $rowData[$firstColumn]; + } + + if ($rowNumber !== false) { + if ((!$not_exact_match) && ($rowValue != $lookup_value)) { + // if an exact match is required, we have what we need to return an appropriate response + return PHPExcel_Calculation_Functions::NA(); + } else { + // otherwise return the appropriate value + return $lookup_array[$rowNumber][$returnColumn]; + } + } + + return PHPExcel_Calculation_Functions::NA(); + } // function VLOOKUP() + + + /** + * LOOKUP + * The LOOKUP function searches for value either from a one-row or one-column range or from an array. + * @param lookup_value The value that you want to match in lookup_array + * @param lookup_vector The range of cells being searched + * @param result_vector The column from which the matching value must be returned + * @return mixed The value of the found cell + */ + public static function LOOKUP($lookup_value, $lookup_vector, $result_vector=null) { + $lookup_value = PHPExcel_Calculation_Functions::flattenSingleValue($lookup_value); + + if (!is_array($lookup_vector)) { + return PHPExcel_Calculation_Functions::NA(); + } + $lookupRows = count($lookup_vector); + $l = array_keys($lookup_vector); + $l = array_shift($l); + $lookupColumns = count($lookup_vector[$l]); + if ((($lookupRows == 1) && ($lookupColumns > 1)) || (($lookupRows == 2) && ($lookupColumns != 2))) { + $lookup_vector = self::TRANSPOSE($lookup_vector); + $lookupRows = count($lookup_vector); + $l = array_keys($lookup_vector); + $lookupColumns = count($lookup_vector[array_shift($l)]); + } + + if (is_null($result_vector)) { + $result_vector = $lookup_vector; + } + $resultRows = count($result_vector); + $l = array_keys($result_vector); + $l = array_shift($l); + $resultColumns = count($result_vector[$l]); + if ((($resultRows == 1) && ($resultColumns > 1)) || (($resultRows == 2) && ($resultColumns != 2))) { + $result_vector = self::TRANSPOSE($result_vector); + $resultRows = count($result_vector); + $r = array_keys($result_vector); + $resultColumns = count($result_vector[array_shift($r)]); + } + + if ($lookupRows == 2) { + $result_vector = array_pop($lookup_vector); + $lookup_vector = array_shift($lookup_vector); + } + if ($lookupColumns != 2) { + foreach($lookup_vector as &$value) { + if (is_array($value)) { + $k = array_keys($value); + $key1 = $key2 = array_shift($k); + $key2++; + $dataValue1 = $value[$key1]; + } else { + $key1 = 0; + $key2 = 1; + $dataValue1 = $value; + } + $dataValue2 = array_shift($result_vector); + if (is_array($dataValue2)) { + $dataValue2 = array_shift($dataValue2); + } + $value = array($key1 => $dataValue1, $key2 => $dataValue2); + } + unset($value); + } + + return self::VLOOKUP($lookup_value,$lookup_vector,2); + } // function LOOKUP() + +} // class PHPExcel_Calculation_LookupRef diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/MathTrig.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/MathTrig.php new file mode 100644 index 0000000..79c573b --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/MathTrig.php @@ -0,0 +1,1366 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** + * PHPExcel_Calculation_MathTrig + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_MathTrig { + + // + // Private method to return an array of the factors of the input value + // + private static function _factors($value) { + $startVal = floor(sqrt($value)); + + $factorArray = array(); + for ($i = $startVal; $i > 1; --$i) { + if (($value % $i) == 0) { + $factorArray = array_merge($factorArray,self::_factors($value / $i)); + $factorArray = array_merge($factorArray,self::_factors($i)); + if ($i <= sqrt($value)) { + break; + } + } + } + if (!empty($factorArray)) { + rsort($factorArray); + return $factorArray; + } else { + return array((integer) $value); + } + } // function _factors() + + + private static function _romanCut($num, $n) { + return ($num - ($num % $n ) ) / $n; + } // function _romanCut() + + + /** + * ATAN2 + * + * This function calculates the arc tangent of the two variables x and y. It is similar to + * calculating the arc tangent of y x, except that the signs of both arguments are used + * to determine the quadrant of the result. + * The arctangent is the angle from the x-axis to a line containing the origin (0, 0) and a + * point with coordinates (xCoordinate, yCoordinate). The angle is given in radians between + * -pi and pi, excluding -pi. + * + * Note that the Excel ATAN2() function accepts its arguments in the reverse order to the standard + * PHP atan2() function, so we need to reverse them here before calling the PHP atan() function. + * + * Excel Function: + * ATAN2(xCoordinate,yCoordinate) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $xCoordinate The x-coordinate of the point. + * @param float $yCoordinate The y-coordinate of the point. + * @return float The inverse tangent of the specified x- and y-coordinates. + */ + public static function ATAN2($xCoordinate = NULL, $yCoordinate = NULL) { + $xCoordinate = PHPExcel_Calculation_Functions::flattenSingleValue($xCoordinate); + $yCoordinate = PHPExcel_Calculation_Functions::flattenSingleValue($yCoordinate); + + $xCoordinate = ($xCoordinate !== NULL) ? $xCoordinate : 0.0; + $yCoordinate = ($yCoordinate !== NULL) ? $yCoordinate : 0.0; + + if (((is_numeric($xCoordinate)) || (is_bool($xCoordinate))) && + ((is_numeric($yCoordinate))) || (is_bool($yCoordinate))) { + $xCoordinate = (float) $xCoordinate; + $yCoordinate = (float) $yCoordinate; + + if (($xCoordinate == 0) && ($yCoordinate == 0)) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + return atan2($yCoordinate, $xCoordinate); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function ATAN2() + + + /** + * CEILING + * + * Returns number rounded up, away from zero, to the nearest multiple of significance. + * For example, if you want to avoid using pennies in your prices and your product is + * priced at $4.42, use the formula =CEILING(4.42,0.05) to round prices up to the + * nearest nickel. + * + * Excel Function: + * CEILING(number[,significance]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $number The number you want to round. + * @param float $significance The multiple to which you want to round. + * @return float Rounded Number + */ + public static function CEILING($number, $significance = NULL) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $significance = PHPExcel_Calculation_Functions::flattenSingleValue($significance); + + if ((is_null($significance)) && + (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC)) { + $significance = $number/abs($number); + } + + if ((is_numeric($number)) && (is_numeric($significance))) { + if ($significance == 0.0) { + return 0.0; + } elseif (self::SIGN($number) == self::SIGN($significance)) { + return ceil($number / $significance) * $significance; + } else { + return PHPExcel_Calculation_Functions::NaN(); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function CEILING() + + + /** + * COMBIN + * + * Returns the number of combinations for a given number of items. Use COMBIN to + * determine the total possible number of groups for a given number of items. + * + * Excel Function: + * COMBIN(numObjs,numInSet) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param int $numObjs Number of different objects + * @param int $numInSet Number of objects in each combination + * @return int Number of combinations + */ + public static function COMBIN($numObjs, $numInSet) { + $numObjs = PHPExcel_Calculation_Functions::flattenSingleValue($numObjs); + $numInSet = PHPExcel_Calculation_Functions::flattenSingleValue($numInSet); + + if ((is_numeric($numObjs)) && (is_numeric($numInSet))) { + if ($numObjs < $numInSet) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif ($numInSet < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return round(self::FACT($numObjs) / self::FACT($numObjs - $numInSet)) / self::FACT($numInSet); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function COMBIN() + + + /** + * EVEN + * + * Returns number rounded up to the nearest even integer. + * You can use this function for processing items that come in twos. For example, + * a packing crate accepts rows of one or two items. The crate is full when + * the number of items, rounded up to the nearest two, matches the crate's + * capacity. + * + * Excel Function: + * EVEN(number) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $number Number to round + * @return int Rounded Number + */ + public static function EVEN($number) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + + if (is_null($number)) { + return 0; + } elseif (is_bool($number)) { + $number = (int) $number; + } + + if (is_numeric($number)) { + $significance = 2 * self::SIGN($number); + return (int) self::CEILING($number,$significance); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function EVEN() + + + /** + * FACT + * + * Returns the factorial of a number. + * The factorial of a number is equal to 1*2*3*...* number. + * + * Excel Function: + * FACT(factVal) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $factVal Factorial Value + * @return int Factorial + */ + public static function FACT($factVal) { + $factVal = PHPExcel_Calculation_Functions::flattenSingleValue($factVal); + + if (is_numeric($factVal)) { + if ($factVal < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $factLoop = floor($factVal); + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + if ($factVal > $factLoop) { + return PHPExcel_Calculation_Functions::NaN(); + } + } + + $factorial = 1; + while ($factLoop > 1) { + $factorial *= $factLoop--; + } + return $factorial ; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function FACT() + + + /** + * FACTDOUBLE + * + * Returns the double factorial of a number. + * + * Excel Function: + * FACTDOUBLE(factVal) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $factVal Factorial Value + * @return int Double Factorial + */ + public static function FACTDOUBLE($factVal) { + $factLoop = PHPExcel_Calculation_Functions::flattenSingleValue($factVal); + + if (is_numeric($factLoop)) { + $factLoop = floor($factLoop); + if ($factVal < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $factorial = 1; + while ($factLoop > 1) { + $factorial *= $factLoop--; + --$factLoop; + } + return $factorial ; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function FACTDOUBLE() + + + /** + * FLOOR + * + * Rounds number down, toward zero, to the nearest multiple of significance. + * + * Excel Function: + * FLOOR(number[,significance]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $number Number to round + * @param float $significance Significance + * @return float Rounded Number + */ + public static function FLOOR($number, $significance = NULL) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $significance = PHPExcel_Calculation_Functions::flattenSingleValue($significance); + + if ((is_null($significance)) && (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC)) { + $significance = $number/abs($number); + } + + if ((is_numeric($number)) && (is_numeric($significance))) { + if ((float) $significance == 0.0) { + return PHPExcel_Calculation_Functions::DIV0(); + } + if (self::SIGN($number) == self::SIGN($significance)) { + return floor($number / $significance) * $significance; + } else { + return PHPExcel_Calculation_Functions::NaN(); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function FLOOR() + + + /** + * GCD + * + * Returns the greatest common divisor of a series of numbers. + * The greatest common divisor is the largest integer that divides both + * number1 and number2 without a remainder. + * + * Excel Function: + * GCD(number1[,number2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return integer Greatest Common Divisor + */ + public static function GCD() { + $returnValue = 1; + $allValuesFactors = array(); + // Loop through arguments + foreach(PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $value) { + if (!is_numeric($value)) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ($value == 0) { + continue; + } elseif($value < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $myFactors = self::_factors($value); + $myCountedFactors = array_count_values($myFactors); + $allValuesFactors[] = $myCountedFactors; + } + $allValuesCount = count($allValuesFactors); + if ($allValuesCount == 0) { + return 0; + } + + $mergedArray = $allValuesFactors[0]; + for ($i=1;$i < $allValuesCount; ++$i) { + $mergedArray = array_intersect_key($mergedArray,$allValuesFactors[$i]); + } + $mergedArrayValues = count($mergedArray); + if ($mergedArrayValues == 0) { + return $returnValue; + } elseif ($mergedArrayValues > 1) { + foreach($mergedArray as $mergedKey => $mergedValue) { + foreach($allValuesFactors as $highestPowerTest) { + foreach($highestPowerTest as $testKey => $testValue) { + if (($testKey == $mergedKey) && ($testValue < $mergedValue)) { + $mergedArray[$mergedKey] = $testValue; + $mergedValue = $testValue; + } + } + } + } + + $returnValue = 1; + foreach($mergedArray as $key => $value) { + $returnValue *= pow($key,$value); + } + return $returnValue; + } else { + $keys = array_keys($mergedArray); + $key = $keys[0]; + $value = $mergedArray[$key]; + foreach($allValuesFactors as $testValue) { + foreach($testValue as $mergedKey => $mergedValue) { + if (($mergedKey == $key) && ($mergedValue < $value)) { + $value = $mergedValue; + } + } + } + return pow($key,$value); + } + } // function GCD() + + + /** + * INT + * + * Casts a floating point value to an integer + * + * Excel Function: + * INT(number) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $number Number to cast to an integer + * @return integer Integer value + */ + public static function INT($number) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + + if (is_null($number)) { + return 0; + } elseif (is_bool($number)) { + return (int) $number; + } + if (is_numeric($number)) { + return (int) floor($number); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function INT() + + + /** + * LCM + * + * Returns the lowest common multiplier of a series of numbers + * The least common multiple is the smallest positive integer that is a multiple + * of all integer arguments number1, number2, and so on. Use LCM to add fractions + * with different denominators. + * + * Excel Function: + * LCM(number1[,number2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return int Lowest Common Multiplier + */ + public static function LCM() { + $returnValue = 1; + $allPoweredFactors = array(); + // Loop through arguments + foreach(PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $value) { + if (!is_numeric($value)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if ($value == 0) { + return 0; + } elseif ($value < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $myFactors = self::_factors(floor($value)); + $myCountedFactors = array_count_values($myFactors); + $myPoweredFactors = array(); + foreach($myCountedFactors as $myCountedFactor => $myCountedPower) { + $myPoweredFactors[$myCountedFactor] = pow($myCountedFactor,$myCountedPower); + } + foreach($myPoweredFactors as $myPoweredValue => $myPoweredFactor) { + if (array_key_exists($myPoweredValue,$allPoweredFactors)) { + if ($allPoweredFactors[$myPoweredValue] < $myPoweredFactor) { + $allPoweredFactors[$myPoweredValue] = $myPoweredFactor; + } + } else { + $allPoweredFactors[$myPoweredValue] = $myPoweredFactor; + } + } + } + foreach($allPoweredFactors as $allPoweredFactor) { + $returnValue *= (integer) $allPoweredFactor; + } + return $returnValue; + } // function LCM() + + + /** + * LOG_BASE + * + * Returns the logarithm of a number to a specified base. The default base is 10. + * + * Excel Function: + * LOG(number[,base]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param float $value The positive real number for which you want the logarithm + * @param float $base The base of the logarithm. If base is omitted, it is assumed to be 10. + * @return float + */ + public static function LOG_BASE($number = NULL, $base = 10) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $base = (is_null($base)) ? 10 : (float) PHPExcel_Calculation_Functions::flattenSingleValue($base); + + if ((!is_numeric($base)) || (!is_numeric($number))) + return PHPExcel_Calculation_Functions::VALUE(); + if (($base <= 0) || ($number <= 0)) + return PHPExcel_Calculation_Functions::NaN(); + return log($number, $base); + } // function LOG_BASE() + + + /** + * MDETERM + * + * Returns the matrix determinant of an array. + * + * Excel Function: + * MDETERM(array) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param array $matrixValues A matrix of values + * @return float + */ + public static function MDETERM($matrixValues) { + $matrixData = array(); + if (!is_array($matrixValues)) { $matrixValues = array(array($matrixValues)); } + + $row = $maxColumn = 0; + foreach($matrixValues as $matrixRow) { + if (!is_array($matrixRow)) { $matrixRow = array($matrixRow); } + $column = 0; + foreach($matrixRow as $matrixCell) { + if ((is_string($matrixCell)) || ($matrixCell === null)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $matrixData[$column][$row] = $matrixCell; + ++$column; + } + if ($column > $maxColumn) { $maxColumn = $column; } + ++$row; + } + if ($row != $maxColumn) { return PHPExcel_Calculation_Functions::VALUE(); } + + try { + $matrix = new PHPExcel_Shared_JAMA_Matrix($matrixData); + return $matrix->det(); + } catch (Exception $ex) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } // function MDETERM() + + + /** + * MINVERSE + * + * Returns the inverse matrix for the matrix stored in an array. + * + * Excel Function: + * MINVERSE(array) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param array $matrixValues A matrix of values + * @return array + */ + public static function MINVERSE($matrixValues) { + $matrixData = array(); + if (!is_array($matrixValues)) { $matrixValues = array(array($matrixValues)); } + + $row = $maxColumn = 0; + foreach($matrixValues as $matrixRow) { + if (!is_array($matrixRow)) { $matrixRow = array($matrixRow); } + $column = 0; + foreach($matrixRow as $matrixCell) { + if ((is_string($matrixCell)) || ($matrixCell === null)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $matrixData[$column][$row] = $matrixCell; + ++$column; + } + if ($column > $maxColumn) { $maxColumn = $column; } + ++$row; + } + if ($row != $maxColumn) { return PHPExcel_Calculation_Functions::VALUE(); } + + try { + $matrix = new PHPExcel_Shared_JAMA_Matrix($matrixData); + return $matrix->inverse()->getArray(); + } catch (Exception $ex) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } // function MINVERSE() + + + /** + * MMULT + * + * @param array $matrixData1 A matrix of values + * @param array $matrixData2 A matrix of values + * @return array + */ + public static function MMULT($matrixData1,$matrixData2) { + $matrixAData = $matrixBData = array(); + if (!is_array($matrixData1)) { $matrixData1 = array(array($matrixData1)); } + if (!is_array($matrixData2)) { $matrixData2 = array(array($matrixData2)); } + + $rowA = 0; + foreach($matrixData1 as $matrixRow) { + if (!is_array($matrixRow)) { $matrixRow = array($matrixRow); } + $columnA = 0; + foreach($matrixRow as $matrixCell) { + if ((is_string($matrixCell)) || ($matrixCell === null)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $matrixAData[$rowA][$columnA] = $matrixCell; + ++$columnA; + } + ++$rowA; + } + try { + $matrixA = new PHPExcel_Shared_JAMA_Matrix($matrixAData); + $rowB = 0; + foreach($matrixData2 as $matrixRow) { + if (!is_array($matrixRow)) { $matrixRow = array($matrixRow); } + $columnB = 0; + foreach($matrixRow as $matrixCell) { + if ((is_string($matrixCell)) || ($matrixCell === null)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $matrixBData[$rowB][$columnB] = $matrixCell; + ++$columnB; + } + ++$rowB; + } + $matrixB = new PHPExcel_Shared_JAMA_Matrix($matrixBData); + + if (($rowA != $columnB) || ($rowB != $columnA)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + return $matrixA->times($matrixB)->getArray(); + } catch (Exception $ex) { + return PHPExcel_Calculation_Functions::VALUE(); + } + } // function MMULT() + + + /** + * MOD + * + * @param int $a Dividend + * @param int $b Divisor + * @return int Remainder + */ + public static function MOD($a = 1, $b = 1) { + $a = PHPExcel_Calculation_Functions::flattenSingleValue($a); + $b = PHPExcel_Calculation_Functions::flattenSingleValue($b); + + if ($b == 0.0) { + return PHPExcel_Calculation_Functions::DIV0(); + } elseif (($a < 0.0) && ($b > 0.0)) { + return $b - fmod(abs($a),$b); + } elseif (($a > 0.0) && ($b < 0.0)) { + return $b + fmod($a,abs($b)); + } + + return fmod($a,$b); + } // function MOD() + + + /** + * MROUND + * + * Rounds a number to the nearest multiple of a specified value + * + * @param float $number Number to round + * @param int $multiple Multiple to which you want to round $number + * @return float Rounded Number + */ + public static function MROUND($number,$multiple) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $multiple = PHPExcel_Calculation_Functions::flattenSingleValue($multiple); + + if ((is_numeric($number)) && (is_numeric($multiple))) { + if ($multiple == 0) { + return 0; + } + if ((self::SIGN($number)) == (self::SIGN($multiple))) { + $multiplier = 1 / $multiple; + return round($number * $multiplier) / $multiplier; + } + return PHPExcel_Calculation_Functions::NaN(); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function MROUND() + + + /** + * MULTINOMIAL + * + * Returns the ratio of the factorial of a sum of values to the product of factorials. + * + * @param array of mixed Data Series + * @return float + */ + public static function MULTINOMIAL() { + $summer = 0; + $divisor = 1; + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $arg) { + // Is it a numeric value? + if (is_numeric($arg)) { + if ($arg < 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + $summer += floor($arg); + $divisor *= self::FACT($arg); + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + + // Return + if ($summer > 0) { + $summer = self::FACT($summer); + return $summer / $divisor; + } + return 0; + } // function MULTINOMIAL() + + + /** + * ODD + * + * Returns number rounded up to the nearest odd integer. + * + * @param float $number Number to round + * @return int Rounded Number + */ + public static function ODD($number) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + + if (is_null($number)) { + return 1; + } elseif (is_bool($number)) { + $number = (int) $number; + } + + if (is_numeric($number)) { + $significance = self::SIGN($number); + if ($significance == 0) { + return 1; + } + + $result = self::CEILING($number,$significance); + if ($result == self::EVEN($result)) { + $result += $significance; + } + + return (int) $result; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function ODD() + + + /** + * POWER + * + * Computes x raised to the power y. + * + * @param float $x + * @param float $y + * @return float + */ + public static function POWER($x = 0, $y = 2) { + $x = PHPExcel_Calculation_Functions::flattenSingleValue($x); + $y = PHPExcel_Calculation_Functions::flattenSingleValue($y); + + // Validate parameters + if ($x == 0.0 && $y == 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } elseif ($x == 0.0 && $y < 0.0) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + // Return + $result = pow($x, $y); + return (!is_nan($result) && !is_infinite($result)) ? $result : PHPExcel_Calculation_Functions::NaN(); + } // function POWER() + + + /** + * PRODUCT + * + * PRODUCT returns the product of all the values and cells referenced in the argument list. + * + * Excel Function: + * PRODUCT(value1[,value2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function PRODUCT() { + // Return value + $returnValue = null; + + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = $arg; + } else { + $returnValue *= $arg; + } + } + } + + // Return + if (is_null($returnValue)) { + return 0; + } + return $returnValue; + } // function PRODUCT() + + + /** + * QUOTIENT + * + * QUOTIENT function returns the integer portion of a division. Numerator is the divided number + * and denominator is the divisor. + * + * Excel Function: + * QUOTIENT(value1[,value2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function QUOTIENT() { + // Return value + $returnValue = null; + + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = ($arg == 0) ? 0 : $arg; + } else { + if (($returnValue == 0) || ($arg == 0)) { + $returnValue = 0; + } else { + $returnValue /= $arg; + } + } + } + } + + // Return + return intval($returnValue); + } // function QUOTIENT() + + + /** + * RAND + * + * @param int $min Minimal value + * @param int $max Maximal value + * @return int Random number + */ + public static function RAND($min = 0, $max = 0) { + $min = PHPExcel_Calculation_Functions::flattenSingleValue($min); + $max = PHPExcel_Calculation_Functions::flattenSingleValue($max); + + if ($min == 0 && $max == 0) { + return (rand(0,10000000)) / 10000000; + } else { + return rand($min, $max); + } + } // function RAND() + + + public static function ROMAN($aValue, $style=0) { + $aValue = PHPExcel_Calculation_Functions::flattenSingleValue($aValue); + $style = (is_null($style)) ? 0 : (integer) PHPExcel_Calculation_Functions::flattenSingleValue($style); + if ((!is_numeric($aValue)) || ($aValue < 0) || ($aValue >= 4000)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $aValue = (integer) $aValue; + if ($aValue == 0) { + return ''; + } + + $mill = Array('', 'M', 'MM', 'MMM', 'MMMM', 'MMMMM'); + $cent = Array('', 'C', 'CC', 'CCC', 'CD', 'D', 'DC', 'DCC', 'DCCC', 'CM'); + $tens = Array('', 'X', 'XX', 'XXX', 'XL', 'L', 'LX', 'LXX', 'LXXX', 'XC'); + $ones = Array('', 'I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX'); + + $roman = ''; + while ($aValue > 5999) { + $roman .= 'M'; + $aValue -= 1000; + } + $m = self::_romanCut($aValue, 1000); $aValue %= 1000; + $c = self::_romanCut($aValue, 100); $aValue %= 100; + $t = self::_romanCut($aValue, 10); $aValue %= 10; + + return $roman.$mill[$m].$cent[$c].$tens[$t].$ones[$aValue]; + } // function ROMAN() + + + /** + * ROUNDUP + * + * Rounds a number up to a specified number of decimal places + * + * @param float $number Number to round + * @param int $digits Number of digits to which you want to round $number + * @return float Rounded Number + */ + public static function ROUNDUP($number,$digits) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $digits = PHPExcel_Calculation_Functions::flattenSingleValue($digits); + + if ((is_numeric($number)) && (is_numeric($digits))) { + $significance = pow(10,(int) $digits); + if ($number < 0.0) { + return floor($number * $significance) / $significance; + } else { + return ceil($number * $significance) / $significance; + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function ROUNDUP() + + + /** + * ROUNDDOWN + * + * Rounds a number down to a specified number of decimal places + * + * @param float $number Number to round + * @param int $digits Number of digits to which you want to round $number + * @return float Rounded Number + */ + public static function ROUNDDOWN($number,$digits) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + $digits = PHPExcel_Calculation_Functions::flattenSingleValue($digits); + + if ((is_numeric($number)) && (is_numeric($digits))) { + $significance = pow(10,(int) $digits); + if ($number < 0.0) { + return ceil($number * $significance) / $significance; + } else { + return floor($number * $significance) / $significance; + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function ROUNDDOWN() + + + /** + * SERIESSUM + * + * Returns the sum of a power series + * + * @param float $x Input value to the power series + * @param float $n Initial power to which you want to raise $x + * @param float $m Step by which to increase $n for each term in the series + * @param array of mixed Data Series + * @return float + */ + public static function SERIESSUM() { + // Return value + $returnValue = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + $x = array_shift($aArgs); + $n = array_shift($aArgs); + $m = array_shift($aArgs); + + if ((is_numeric($x)) && (is_numeric($n)) && (is_numeric($m))) { + // Calculate + $i = 0; + foreach($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $returnValue += $arg * pow($x,$n + ($m * $i++)); + } else { + return PHPExcel_Calculation_Functions::VALUE(); + } + } + // Return + return $returnValue; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function SERIESSUM() + + + /** + * SIGN + * + * Determines the sign of a number. Returns 1 if the number is positive, zero (0) + * if the number is 0, and -1 if the number is negative. + * + * @param float $number Number to round + * @return int sign value + */ + public static function SIGN($number) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + + if (is_bool($number)) + return (int) $number; + if (is_numeric($number)) { + if ($number == 0.0) { + return 0; + } + return $number / abs($number); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function SIGN() + + + /** + * SQRTPI + * + * Returns the square root of (number * pi). + * + * @param float $number Number + * @return float Square Root of Number * Pi + */ + public static function SQRTPI($number) { + $number = PHPExcel_Calculation_Functions::flattenSingleValue($number); + + if (is_numeric($number)) { + if ($number < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return sqrt($number * M_PI) ; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function SQRTPI() + + + /** + * SUBTOTAL + * + * Returns a subtotal in a list or database. + * + * @param int the number 1 to 11 that specifies which function to + * use in calculating subtotals within a list. + * @param array of mixed Data Series + * @return float + */ + public static function SUBTOTAL() { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $subtotal = array_shift($aArgs); + + if ((is_numeric($subtotal)) && (!is_string($subtotal))) { + switch($subtotal) { + case 1 : + return PHPExcel_Calculation_Statistical::AVERAGE($aArgs); + break; + case 2 : + return PHPExcel_Calculation_Statistical::COUNT($aArgs); + break; + case 3 : + return PHPExcel_Calculation_Statistical::COUNTA($aArgs); + break; + case 4 : + return PHPExcel_Calculation_Statistical::MAX($aArgs); + break; + case 5 : + return PHPExcel_Calculation_Statistical::MIN($aArgs); + break; + case 6 : + return self::PRODUCT($aArgs); + break; + case 7 : + return PHPExcel_Calculation_Statistical::STDEV($aArgs); + break; + case 8 : + return PHPExcel_Calculation_Statistical::STDEVP($aArgs); + break; + case 9 : + return self::SUM($aArgs); + break; + case 10 : + return PHPExcel_Calculation_Statistical::VARFunc($aArgs); + break; + case 11 : + return PHPExcel_Calculation_Statistical::VARP($aArgs); + break; + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function SUBTOTAL() + + + /** + * SUM + * + * SUM computes the sum of all the values and cells referenced in the argument list. + * + * Excel Function: + * SUM(value1[,value2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function SUM() { + // Return value + $returnValue = 0; + + // Loop through the arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $returnValue += $arg; + } + } + + // Return + return $returnValue; + } // function SUM() + + + /** + * SUMIF + * + * Counts the number of cells that contain numbers within the list of arguments + * + * Excel Function: + * SUMIF(value1[,value2[, ...]],condition) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @param string $condition The criteria that defines which cells will be summed. + * @return float + */ + public static function SUMIF($aArgs,$condition,$sumArgs = array()) { + // Return value + $returnValue = 0; + + $aArgs = PHPExcel_Calculation_Functions::flattenArray($aArgs); + $sumArgs = PHPExcel_Calculation_Functions::flattenArray($sumArgs); + if (empty($sumArgs)) { + $sumArgs = $aArgs; + } + $condition = PHPExcel_Calculation_Functions::_ifCondition($condition); + // Loop through arguments + foreach ($aArgs as $key => $arg) { + if (!is_numeric($arg)) { $arg = PHPExcel_Calculation::_wrapResult(strtoupper($arg)); } + $testCondition = '='.$arg.$condition; + if (PHPExcel_Calculation::getInstance()->_calculateFormulaValue($testCondition)) { + // Is it a value within our criteria + $returnValue += $sumArgs[$key]; + } + } + + // Return + return $returnValue; + } // function SUMIF() + + + /** + * SUMPRODUCT + * + * Excel Function: + * SUMPRODUCT(value1[,value2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function SUMPRODUCT() { + $arrayList = func_get_args(); + + $wrkArray = PHPExcel_Calculation_Functions::flattenArray(array_shift($arrayList)); + $wrkCellCount = count($wrkArray); + + for ($i=0; $i< $wrkCellCount; ++$i) { + if ((!is_numeric($wrkArray[$i])) || (is_string($wrkArray[$i]))) { + $wrkArray[$i] = 0; + } + } + + foreach($arrayList as $matrixData) { + $array2 = PHPExcel_Calculation_Functions::flattenArray($matrixData); + $count = count($array2); + if ($wrkCellCount != $count) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + foreach ($array2 as $i => $val) { + if ((!is_numeric($val)) || (is_string($val))) { + $val = 0; + } + $wrkArray[$i] *= $val; + } + } + + return array_sum($wrkArray); + } // function SUMPRODUCT() + + + /** + * SUMSQ + * + * SUMSQ returns the sum of the squares of the arguments + * + * Excel Function: + * SUMSQ(value1[,value2[, ...]]) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function SUMSQ() { + // Return value + $returnValue = 0; + + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArray(func_get_args()) as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $returnValue += ($arg * $arg); + } + } + + // Return + return $returnValue; + } // function SUMSQ() + + + /** + * SUMX2MY2 + * + * @param mixed $value Value to check + * @return float + */ + public static function SUMX2MY2($matrixData1,$matrixData2) { + $array1 = PHPExcel_Calculation_Functions::flattenArray($matrixData1); + $array2 = PHPExcel_Calculation_Functions::flattenArray($matrixData2); + $count1 = count($array1); + $count2 = count($array2); + if ($count1 < $count2) { + $count = $count1; + } else { + $count = $count2; + } + + $result = 0; + for ($i = 0; $i < $count; ++$i) { + if (((is_numeric($array1[$i])) && (!is_string($array1[$i]))) && + ((is_numeric($array2[$i])) && (!is_string($array2[$i])))) { + $result += ($array1[$i] * $array1[$i]) - ($array2[$i] * $array2[$i]); + } + } + + return $result; + } // function SUMX2MY2() + + + /** + * SUMX2PY2 + * + * @param mixed $value Value to check + * @return float + */ + public static function SUMX2PY2($matrixData1,$matrixData2) { + $array1 = PHPExcel_Calculation_Functions::flattenArray($matrixData1); + $array2 = PHPExcel_Calculation_Functions::flattenArray($matrixData2); + $count1 = count($array1); + $count2 = count($array2); + if ($count1 < $count2) { + $count = $count1; + } else { + $count = $count2; + } + + $result = 0; + for ($i = 0; $i < $count; ++$i) { + if (((is_numeric($array1[$i])) && (!is_string($array1[$i]))) && + ((is_numeric($array2[$i])) && (!is_string($array2[$i])))) { + $result += ($array1[$i] * $array1[$i]) + ($array2[$i] * $array2[$i]); + } + } + + return $result; + } // function SUMX2PY2() + + + /** + * SUMXMY2 + * + * @param mixed $value Value to check + * @return float + */ + public static function SUMXMY2($matrixData1,$matrixData2) { + $array1 = PHPExcel_Calculation_Functions::flattenArray($matrixData1); + $array2 = PHPExcel_Calculation_Functions::flattenArray($matrixData2); + $count1 = count($array1); + $count2 = count($array2); + if ($count1 < $count2) { + $count = $count1; + } else { + $count = $count2; + } + + $result = 0; + for ($i = 0; $i < $count; ++$i) { + if (((is_numeric($array1[$i])) && (!is_string($array1[$i]))) && + ((is_numeric($array2[$i])) && (!is_string($array2[$i])))) { + $result += ($array1[$i] - $array2[$i]) * ($array1[$i] - $array2[$i]); + } + } + + return $result; + } // function SUMXMY2() + + + /** + * TRUNC + * + * Truncates value to the number of fractional digits by number_digits. + * + * @param float $value + * @param int $digits + * @return float Truncated value + */ + public static function TRUNC($value = 0, $digits = 0) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $digits = PHPExcel_Calculation_Functions::flattenSingleValue($digits); + + // Validate parameters + if ((!is_numeric($value)) || (!is_numeric($digits))) + return PHPExcel_Calculation_Functions::VALUE(); + $digits = floor($digits); + + // Truncate + $adjust = pow(10, $digits); + + if (($digits > 0) && (rtrim(intval((abs($value) - abs(intval($value))) * $adjust),'0') < $adjust/10)) + return $value; + + return (intval($value * $adjust)) / $adjust; + } // function TRUNC() + +} // class PHPExcel_Calculation_MathTrig diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/Statistical.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Statistical.php new file mode 100644 index 0000000..2fbb163 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Statistical.php @@ -0,0 +1,3644 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/trendClass.php'; + + +/** LOG_GAMMA_X_MAX_VALUE */ +define('LOG_GAMMA_X_MAX_VALUE', 2.55e305); + +/** XMININ */ +define('XMININ', 2.23e-308); + +/** EPS */ +define('EPS', 2.22e-16); + +/** SQRT2PI */ +define('SQRT2PI', 2.5066282746310005024157652848110452530069867406099); + + +/** + * PHPExcel_Calculation_Statistical + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_Statistical { + + + private static function _checkTrendArrays(&$array1,&$array2) { + if (!is_array($array1)) { $array1 = array($array1); } + if (!is_array($array2)) { $array2 = array($array2); } + + $array1 = PHPExcel_Calculation_Functions::flattenArray($array1); + $array2 = PHPExcel_Calculation_Functions::flattenArray($array2); + foreach($array1 as $key => $value) { + if ((is_bool($value)) || (is_string($value)) || (is_null($value))) { + unset($array1[$key]); + unset($array2[$key]); + } + } + foreach($array2 as $key => $value) { + if ((is_bool($value)) || (is_string($value)) || (is_null($value))) { + unset($array1[$key]); + unset($array2[$key]); + } + } + $array1 = array_merge($array1); + $array2 = array_merge($array2); + + return True; + } // function _checkTrendArrays() + + + /** + * Beta function. + * + * @author Jaco van Kooten + * + * @param p require p>0 + * @param q require q>0 + * @return 0 if p<=0, q<=0 or p+q>2.55E305 to avoid errors and over/underflow + */ + private static function _beta($p, $q) { + if ($p <= 0.0 || $q <= 0.0 || ($p + $q) > LOG_GAMMA_X_MAX_VALUE) { + return 0.0; + } else { + return exp(self::_logBeta($p, $q)); + } + } // function _beta() + + + /** + * Incomplete beta function + * + * @author Jaco van Kooten + * @author Paul Meagher + * + * The computation is based on formulas from Numerical Recipes, Chapter 6.4 (W.H. Press et al, 1992). + * @param x require 0<=x<=1 + * @param p require p>0 + * @param q require q>0 + * @return 0 if x<0, p<=0, q<=0 or p+q>2.55E305 and 1 if x>1 to avoid errors and over/underflow + */ + private static function _incompleteBeta($x, $p, $q) { + if ($x <= 0.0) { + return 0.0; + } elseif ($x >= 1.0) { + return 1.0; + } elseif (($p <= 0.0) || ($q <= 0.0) || (($p + $q) > LOG_GAMMA_X_MAX_VALUE)) { + return 0.0; + } + $beta_gam = exp((0 - self::_logBeta($p, $q)) + $p * log($x) + $q * log(1.0 - $x)); + if ($x < ($p + 1.0) / ($p + $q + 2.0)) { + return $beta_gam * self::_betaFraction($x, $p, $q) / $p; + } else { + return 1.0 - ($beta_gam * self::_betaFraction(1 - $x, $q, $p) / $q); + } + } // function _incompleteBeta() + + + // Function cache for _logBeta function + private static $_logBetaCache_p = 0.0; + private static $_logBetaCache_q = 0.0; + private static $_logBetaCache_result = 0.0; + + /** + * The natural logarithm of the beta function. + * + * @param p require p>0 + * @param q require q>0 + * @return 0 if p<=0, q<=0 or p+q>2.55E305 to avoid errors and over/underflow + * @author Jaco van Kooten + */ + private static function _logBeta($p, $q) { + if ($p != self::$_logBetaCache_p || $q != self::$_logBetaCache_q) { + self::$_logBetaCache_p = $p; + self::$_logBetaCache_q = $q; + if (($p <= 0.0) || ($q <= 0.0) || (($p + $q) > LOG_GAMMA_X_MAX_VALUE)) { + self::$_logBetaCache_result = 0.0; + } else { + self::$_logBetaCache_result = self::_logGamma($p) + self::_logGamma($q) - self::_logGamma($p + $q); + } + } + return self::$_logBetaCache_result; + } // function _logBeta() + + + /** + * Evaluates of continued fraction part of incomplete beta function. + * Based on an idea from Numerical Recipes (W.H. Press et al, 1992). + * @author Jaco van Kooten + */ + private static function _betaFraction($x, $p, $q) { + $c = 1.0; + $sum_pq = $p + $q; + $p_plus = $p + 1.0; + $p_minus = $p - 1.0; + $h = 1.0 - $sum_pq * $x / $p_plus; + if (abs($h) < XMININ) { + $h = XMININ; + } + $h = 1.0 / $h; + $frac = $h; + $m = 1; + $delta = 0.0; + while ($m <= MAX_ITERATIONS && abs($delta-1.0) > PRECISION ) { + $m2 = 2 * $m; + // even index for d + $d = $m * ($q - $m) * $x / ( ($p_minus + $m2) * ($p + $m2)); + $h = 1.0 + $d * $h; + if (abs($h) < XMININ) { + $h = XMININ; + } + $h = 1.0 / $h; + $c = 1.0 + $d / $c; + if (abs($c) < XMININ) { + $c = XMININ; + } + $frac *= $h * $c; + // odd index for d + $d = -($p + $m) * ($sum_pq + $m) * $x / (($p + $m2) * ($p_plus + $m2)); + $h = 1.0 + $d * $h; + if (abs($h) < XMININ) { + $h = XMININ; + } + $h = 1.0 / $h; + $c = 1.0 + $d / $c; + if (abs($c) < XMININ) { + $c = XMININ; + } + $delta = $h * $c; + $frac *= $delta; + ++$m; + } + return $frac; + } // function _betaFraction() + + + /** + * logGamma function + * + * @version 1.1 + * @author Jaco van Kooten + * + * Original author was Jaco van Kooten. Ported to PHP by Paul Meagher. + * + * The natural logarithm of the gamma function. <br /> + * Based on public domain NETLIB (Fortran) code by W. J. Cody and L. Stoltz <br /> + * Applied Mathematics Division <br /> + * Argonne National Laboratory <br /> + * Argonne, IL 60439 <br /> + * <p> + * References: + * <ol> + * <li>W. J. Cody and K. E. Hillstrom, 'Chebyshev Approximations for the Natural + * Logarithm of the Gamma Function,' Math. Comp. 21, 1967, pp. 198-203.</li> + * <li>K. E. Hillstrom, ANL/AMD Program ANLC366S, DGAMMA/DLGAMA, May, 1969.</li> + * <li>Hart, Et. Al., Computer Approximations, Wiley and sons, New York, 1968.</li> + * </ol> + * </p> + * <p> + * From the original documentation: + * </p> + * <p> + * This routine calculates the LOG(GAMMA) function for a positive real argument X. + * Computation is based on an algorithm outlined in references 1 and 2. + * The program uses rational functions that theoretically approximate LOG(GAMMA) + * to at least 18 significant decimal digits. The approximation for X > 12 is from + * reference 3, while approximations for X < 12.0 are similar to those in reference + * 1, but are unpublished. The accuracy achieved depends on the arithmetic system, + * the compiler, the intrinsic functions, and proper selection of the + * machine-dependent constants. + * </p> + * <p> + * Error returns: <br /> + * The program returns the value XINF for X .LE. 0.0 or when overflow would occur. + * The computation is believed to be free of underflow and overflow. + * </p> + * @return MAX_VALUE for x < 0.0 or when overflow would occur, i.e. x > 2.55E305 + */ + + // Function cache for logGamma + private static $_logGammaCache_result = 0.0; + private static $_logGammaCache_x = 0.0; + + private static function _logGamma($x) { + // Log Gamma related constants + static $lg_d1 = -0.5772156649015328605195174; + static $lg_d2 = 0.4227843350984671393993777; + static $lg_d4 = 1.791759469228055000094023; + + static $lg_p1 = array( 4.945235359296727046734888, + 201.8112620856775083915565, + 2290.838373831346393026739, + 11319.67205903380828685045, + 28557.24635671635335736389, + 38484.96228443793359990269, + 26377.48787624195437963534, + 7225.813979700288197698961 ); + static $lg_p2 = array( 4.974607845568932035012064, + 542.4138599891070494101986, + 15506.93864978364947665077, + 184793.2904445632425417223, + 1088204.76946882876749847, + 3338152.967987029735917223, + 5106661.678927352456275255, + 3074109.054850539556250927 ); + static $lg_p4 = array( 14745.02166059939948905062, + 2426813.369486704502836312, + 121475557.4045093227939592, + 2663432449.630976949898078, + 29403789566.34553899906876, + 170266573776.5398868392998, + 492612579337.743088758812, + 560625185622.3951465078242 ); + + static $lg_q1 = array( 67.48212550303777196073036, + 1113.332393857199323513008, + 7738.757056935398733233834, + 27639.87074403340708898585, + 54993.10206226157329794414, + 61611.22180066002127833352, + 36351.27591501940507276287, + 8785.536302431013170870835 ); + static $lg_q2 = array( 183.0328399370592604055942, + 7765.049321445005871323047, + 133190.3827966074194402448, + 1136705.821321969608938755, + 5267964.117437946917577538, + 13467014.54311101692290052, + 17827365.30353274213975932, + 9533095.591844353613395747 ); + static $lg_q4 = array( 2690.530175870899333379843, + 639388.5654300092398984238, + 41355999.30241388052042842, + 1120872109.61614794137657, + 14886137286.78813811542398, + 101680358627.2438228077304, + 341747634550.7377132798597, + 446315818741.9713286462081 ); + + static $lg_c = array( -0.001910444077728, + 8.4171387781295e-4, + -5.952379913043012e-4, + 7.93650793500350248e-4, + -0.002777777777777681622553, + 0.08333333333333333331554247, + 0.0057083835261 ); + + // Rough estimate of the fourth root of logGamma_xBig + static $lg_frtbig = 2.25e76; + static $pnt68 = 0.6796875; + + + if ($x == self::$_logGammaCache_x) { + return self::$_logGammaCache_result; + } + $y = $x; + if ($y > 0.0 && $y <= LOG_GAMMA_X_MAX_VALUE) { + if ($y <= EPS) { + $res = -log(y); + } elseif ($y <= 1.5) { + // --------------------- + // EPS .LT. X .LE. 1.5 + // --------------------- + if ($y < $pnt68) { + $corr = -log($y); + $xm1 = $y; + } else { + $corr = 0.0; + $xm1 = $y - 1.0; + } + if ($y <= 0.5 || $y >= $pnt68) { + $xden = 1.0; + $xnum = 0.0; + for ($i = 0; $i < 8; ++$i) { + $xnum = $xnum * $xm1 + $lg_p1[$i]; + $xden = $xden * $xm1 + $lg_q1[$i]; + } + $res = $corr + $xm1 * ($lg_d1 + $xm1 * ($xnum / $xden)); + } else { + $xm2 = $y - 1.0; + $xden = 1.0; + $xnum = 0.0; + for ($i = 0; $i < 8; ++$i) { + $xnum = $xnum * $xm2 + $lg_p2[$i]; + $xden = $xden * $xm2 + $lg_q2[$i]; + } + $res = $corr + $xm2 * ($lg_d2 + $xm2 * ($xnum / $xden)); + } + } elseif ($y <= 4.0) { + // --------------------- + // 1.5 .LT. X .LE. 4.0 + // --------------------- + $xm2 = $y - 2.0; + $xden = 1.0; + $xnum = 0.0; + for ($i = 0; $i < 8; ++$i) { + $xnum = $xnum * $xm2 + $lg_p2[$i]; + $xden = $xden * $xm2 + $lg_q2[$i]; + } + $res = $xm2 * ($lg_d2 + $xm2 * ($xnum / $xden)); + } elseif ($y <= 12.0) { + // ---------------------- + // 4.0 .LT. X .LE. 12.0 + // ---------------------- + $xm4 = $y - 4.0; + $xden = -1.0; + $xnum = 0.0; + for ($i = 0; $i < 8; ++$i) { + $xnum = $xnum * $xm4 + $lg_p4[$i]; + $xden = $xden * $xm4 + $lg_q4[$i]; + } + $res = $lg_d4 + $xm4 * ($xnum / $xden); + } else { + // --------------------------------- + // Evaluate for argument .GE. 12.0 + // --------------------------------- + $res = 0.0; + if ($y <= $lg_frtbig) { + $res = $lg_c[6]; + $ysq = $y * $y; + for ($i = 0; $i < 6; ++$i) + $res = $res / $ysq + $lg_c[$i]; + } + $res /= $y; + $corr = log($y); + $res = $res + log(SQRT2PI) - 0.5 * $corr; + $res += $y * ($corr - 1.0); + } + } else { + // -------------------------- + // Return for bad arguments + // -------------------------- + $res = MAX_VALUE; + } + // ------------------------------ + // Final adjustments and return + // ------------------------------ + self::$_logGammaCache_x = $x; + self::$_logGammaCache_result = $res; + return $res; + } // function _logGamma() + + + // + // Private implementation of the incomplete Gamma function + // + private static function _incompleteGamma($a,$x) { + static $max = 32; + $summer = 0; + for ($n=0; $n<=$max; ++$n) { + $divisor = $a; + for ($i=1; $i<=$n; ++$i) { + $divisor *= ($a + $i); + } + $summer += (pow($x,$n) / $divisor); + } + return pow($x,$a) * exp(0-$x) * $summer; + } // function _incompleteGamma() + + + // + // Private implementation of the Gamma function + // + private static function _gamma($data) { + if ($data == 0.0) return 0; + + static $p0 = 1.000000000190015; + static $p = array ( 1 => 76.18009172947146, + 2 => -86.50532032941677, + 3 => 24.01409824083091, + 4 => -1.231739572450155, + 5 => 1.208650973866179e-3, + 6 => -5.395239384953e-6 + ); + + $y = $x = $data; + $tmp = $x + 5.5; + $tmp -= ($x + 0.5) * log($tmp); + + $summer = $p0; + for ($j=1;$j<=6;++$j) { + $summer += ($p[$j] / ++$y); + } + return exp(0 - $tmp + log(SQRT2PI * $summer / $x)); + } // function _gamma() + + + /*************************************************************************** + * inverse_ncdf.php + * ------------------- + * begin : Friday, January 16, 2004 + * copyright : (C) 2004 Michael Nickerson + * email : nickersonm@yahoo.com + * + ***************************************************************************/ + private static function _inverse_ncdf($p) { + // Inverse ncdf approximation by Peter J. Acklam, implementation adapted to + // PHP by Michael Nickerson, using Dr. Thomas Ziegler's C implementation as + // a guide. http://home.online.no/~pjacklam/notes/invnorm/index.html + // I have not checked the accuracy of this implementation. Be aware that PHP + // will truncate the coeficcients to 14 digits. + + // You have permission to use and distribute this function freely for + // whatever purpose you want, but please show common courtesy and give credit + // where credit is due. + + // Input paramater is $p - probability - where 0 < p < 1. + + // Coefficients in rational approximations + static $a = array( 1 => -3.969683028665376e+01, + 2 => 2.209460984245205e+02, + 3 => -2.759285104469687e+02, + 4 => 1.383577518672690e+02, + 5 => -3.066479806614716e+01, + 6 => 2.506628277459239e+00 + ); + + static $b = array( 1 => -5.447609879822406e+01, + 2 => 1.615858368580409e+02, + 3 => -1.556989798598866e+02, + 4 => 6.680131188771972e+01, + 5 => -1.328068155288572e+01 + ); + + static $c = array( 1 => -7.784894002430293e-03, + 2 => -3.223964580411365e-01, + 3 => -2.400758277161838e+00, + 4 => -2.549732539343734e+00, + 5 => 4.374664141464968e+00, + 6 => 2.938163982698783e+00 + ); + + static $d = array( 1 => 7.784695709041462e-03, + 2 => 3.224671290700398e-01, + 3 => 2.445134137142996e+00, + 4 => 3.754408661907416e+00 + ); + + // Define lower and upper region break-points. + $p_low = 0.02425; //Use lower region approx. below this + $p_high = 1 - $p_low; //Use upper region approx. above this + + if (0 < $p && $p < $p_low) { + // Rational approximation for lower region. + $q = sqrt(-2 * log($p)); + return ((((($c[1] * $q + $c[2]) * $q + $c[3]) * $q + $c[4]) * $q + $c[5]) * $q + $c[6]) / + (((($d[1] * $q + $d[2]) * $q + $d[3]) * $q + $d[4]) * $q + 1); + } elseif ($p_low <= $p && $p <= $p_high) { + // Rational approximation for central region. + $q = $p - 0.5; + $r = $q * $q; + return ((((($a[1] * $r + $a[2]) * $r + $a[3]) * $r + $a[4]) * $r + $a[5]) * $r + $a[6]) * $q / + ((((($b[1] * $r + $b[2]) * $r + $b[3]) * $r + $b[4]) * $r + $b[5]) * $r + 1); + } elseif ($p_high < $p && $p < 1) { + // Rational approximation for upper region. + $q = sqrt(-2 * log(1 - $p)); + return -((((($c[1] * $q + $c[2]) * $q + $c[3]) * $q + $c[4]) * $q + $c[5]) * $q + $c[6]) / + (((($d[1] * $q + $d[2]) * $q + $d[3]) * $q + $d[4]) * $q + 1); + } + // If 0 < p < 1, return a null value + return PHPExcel_Calculation_Functions::NULL(); + } // function _inverse_ncdf() + + + private static function _inverse_ncdf2($prob) { + // Approximation of inverse standard normal CDF developed by + // B. Moro, "The Full Monte," Risk 8(2), Feb 1995, 57-58. + + $a1 = 2.50662823884; + $a2 = -18.61500062529; + $a3 = 41.39119773534; + $a4 = -25.44106049637; + + $b1 = -8.4735109309; + $b2 = 23.08336743743; + $b3 = -21.06224101826; + $b4 = 3.13082909833; + + $c1 = 0.337475482272615; + $c2 = 0.976169019091719; + $c3 = 0.160797971491821; + $c4 = 2.76438810333863E-02; + $c5 = 3.8405729373609E-03; + $c6 = 3.951896511919E-04; + $c7 = 3.21767881768E-05; + $c8 = 2.888167364E-07; + $c9 = 3.960315187E-07; + + $y = $prob - 0.5; + if (abs($y) < 0.42) { + $z = ($y * $y); + $z = $y * ((($a4 * $z + $a3) * $z + $a2) * $z + $a1) / (((($b4 * $z + $b3) * $z + $b2) * $z + $b1) * $z + 1); + } else { + if ($y > 0) { + $z = log(-log(1 - $prob)); + } else { + $z = log(-log($prob)); + } + $z = $c1 + $z * ($c2 + $z * ($c3 + $z * ($c4 + $z * ($c5 + $z * ($c6 + $z * ($c7 + $z * ($c8 + $z * $c9))))))); + if ($y < 0) { + $z = -$z; + } + } + return $z; + } // function _inverse_ncdf2() + + + private static function _inverse_ncdf3($p) { + // ALGORITHM AS241 APPL. STATIST. (1988) VOL. 37, NO. 3. + // Produces the normal deviate Z corresponding to a given lower + // tail area of P; Z is accurate to about 1 part in 10**16. + // + // This is a PHP version of the original FORTRAN code that can + // be found at http://lib.stat.cmu.edu/apstat/ + $split1 = 0.425; + $split2 = 5; + $const1 = 0.180625; + $const2 = 1.6; + + // coefficients for p close to 0.5 + $a0 = 3.3871328727963666080; + $a1 = 1.3314166789178437745E+2; + $a2 = 1.9715909503065514427E+3; + $a3 = 1.3731693765509461125E+4; + $a4 = 4.5921953931549871457E+4; + $a5 = 6.7265770927008700853E+4; + $a6 = 3.3430575583588128105E+4; + $a7 = 2.5090809287301226727E+3; + + $b1 = 4.2313330701600911252E+1; + $b2 = 6.8718700749205790830E+2; + $b3 = 5.3941960214247511077E+3; + $b4 = 2.1213794301586595867E+4; + $b5 = 3.9307895800092710610E+4; + $b6 = 2.8729085735721942674E+4; + $b7 = 5.2264952788528545610E+3; + + // coefficients for p not close to 0, 0.5 or 1. + $c0 = 1.42343711074968357734; + $c1 = 4.63033784615654529590; + $c2 = 5.76949722146069140550; + $c3 = 3.64784832476320460504; + $c4 = 1.27045825245236838258; + $c5 = 2.41780725177450611770E-1; + $c6 = 2.27238449892691845833E-2; + $c7 = 7.74545014278341407640E-4; + + $d1 = 2.05319162663775882187; + $d2 = 1.67638483018380384940; + $d3 = 6.89767334985100004550E-1; + $d4 = 1.48103976427480074590E-1; + $d5 = 1.51986665636164571966E-2; + $d6 = 5.47593808499534494600E-4; + $d7 = 1.05075007164441684324E-9; + + // coefficients for p near 0 or 1. + $e0 = 6.65790464350110377720; + $e1 = 5.46378491116411436990; + $e2 = 1.78482653991729133580; + $e3 = 2.96560571828504891230E-1; + $e4 = 2.65321895265761230930E-2; + $e5 = 1.24266094738807843860E-3; + $e6 = 2.71155556874348757815E-5; + $e7 = 2.01033439929228813265E-7; + + $f1 = 5.99832206555887937690E-1; + $f2 = 1.36929880922735805310E-1; + $f3 = 1.48753612908506148525E-2; + $f4 = 7.86869131145613259100E-4; + $f5 = 1.84631831751005468180E-5; + $f6 = 1.42151175831644588870E-7; + $f7 = 2.04426310338993978564E-15; + + $q = $p - 0.5; + + // computation for p close to 0.5 + if (abs($q) <= split1) { + $R = $const1 - $q * $q; + $z = $q * ((((((($a7 * $R + $a6) * $R + $a5) * $R + $a4) * $R + $a3) * $R + $a2) * $R + $a1) * $R + $a0) / + ((((((($b7 * $R + $b6) * $R + $b5) * $R + $b4) * $R + $b3) * $R + $b2) * $R + $b1) * $R + 1); + } else { + if ($q < 0) { + $R = $p; + } else { + $R = 1 - $p; + } + $R = pow(-log($R),2); + + // computation for p not close to 0, 0.5 or 1. + If ($R <= $split2) { + $R = $R - $const2; + $z = ((((((($c7 * $R + $c6) * $R + $c5) * $R + $c4) * $R + $c3) * $R + $c2) * $R + $c1) * $R + $c0) / + ((((((($d7 * $R + $d6) * $R + $d5) * $R + $d4) * $R + $d3) * $R + $d2) * $R + $d1) * $R + 1); + } else { + // computation for p near 0 or 1. + $R = $R - $split2; + $z = ((((((($e7 * $R + $e6) * $R + $e5) * $R + $e4) * $R + $e3) * $R + $e2) * $R + $e1) * $R + $e0) / + ((((((($f7 * $R + $f6) * $R + $f5) * $R + $f4) * $R + $f3) * $R + $f2) * $R + $f1) * $R + 1); + } + if ($q < 0) { + $z = -$z; + } + } + return $z; + } // function _inverse_ncdf3() + + + /** + * AVEDEV + * + * Returns the average of the absolute deviations of data points from their mean. + * AVEDEV is a measure of the variability in a data set. + * + * Excel Function: + * AVEDEV(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function AVEDEV() { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + // Return value + $returnValue = null; + + $aMean = self::AVERAGE($aArgs); + if ($aMean != PHPExcel_Calculation_Functions::DIV0()) { + $aCount = 0; + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = abs($arg - $aMean); + } else { + $returnValue += abs($arg - $aMean); + } + ++$aCount; + } + } + + // Return + if ($aCount == 0) { + return PHPExcel_Calculation_Functions::DIV0(); + } + return $returnValue / $aCount; + } + return PHPExcel_Calculation_Functions::NaN(); + } // function AVEDEV() + + + /** + * AVERAGE + * + * Returns the average (arithmetic mean) of the arguments + * + * Excel Function: + * AVERAGE(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function AVERAGE() { + $returnValue = $aCount = 0; + + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()) as $k => $arg) { + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = $arg; + } else { + $returnValue += $arg; + } + ++$aCount; + } + } + + // Return + if ($aCount > 0) { + return $returnValue / $aCount; + } else { + return PHPExcel_Calculation_Functions::DIV0(); + } + } // function AVERAGE() + + + /** + * AVERAGEA + * + * Returns the average of its arguments, including numbers, text, and logical values + * + * Excel Function: + * AVERAGEA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function AVERAGEA() { + // Return value + $returnValue = null; + + $aCount = 0; + // Loop through arguments + foreach (PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()) as $k => $arg) { + if ((is_bool($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) && ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + if (is_null($returnValue)) { + $returnValue = $arg; + } else { + $returnValue += $arg; + } + ++$aCount; + } + } + } + + // Return + if ($aCount > 0) { + return $returnValue / $aCount; + } else { + return PHPExcel_Calculation_Functions::DIV0(); + } + } // function AVERAGEA() + + + /** + * AVERAGEIF + * + * Returns the average value from a range of cells that contain numbers within the list of arguments + * + * Excel Function: + * AVERAGEIF(value1[,value2[, ...]],condition) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @param string $condition The criteria that defines which cells will be checked. + * @return float + */ + public static function AVERAGEIF($aArgs,$condition,$averageArgs = array()) { + // Return value + $returnValue = 0; + + $aArgs = PHPExcel_Calculation_Functions::flattenArray($aArgs); + $averageArgs = PHPExcel_Calculation_Functions::flattenArray($averageArgs); + if (empty($averageArgs)) { + $averageArgs = $aArgs; + } + $condition = PHPExcel_Calculation_Functions::_ifCondition($condition); + // Loop through arguments + $aCount = 0; + foreach ($aArgs as $key => $arg) { + if (!is_numeric($arg)) { $arg = PHPExcel_Calculation::_wrapResult(strtoupper($arg)); } + $testCondition = '='.$arg.$condition; + if (PHPExcel_Calculation::getInstance()->_calculateFormulaValue($testCondition)) { + if ((is_null($returnValue)) || ($arg > $returnValue)) { + $returnValue += $arg; + ++$aCount; + } + } + } + + // Return + if ($aCount > 0) { + return $returnValue / $aCount; + } else { + return PHPExcel_Calculation_Functions::DIV0(); + } + } // function AVERAGEIF() + + + /** + * BETADIST + * + * Returns the beta distribution. + * + * @param float $value Value at which you want to evaluate the distribution + * @param float $alpha Parameter to the distribution + * @param float $beta Parameter to the distribution + * @param boolean $cumulative + * @return float + * + */ + public static function BETADIST($value,$alpha,$beta,$rMin=0,$rMax=1) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + $beta = PHPExcel_Calculation_Functions::flattenSingleValue($beta); + $rMin = PHPExcel_Calculation_Functions::flattenSingleValue($rMin); + $rMax = PHPExcel_Calculation_Functions::flattenSingleValue($rMax); + + if ((is_numeric($value)) && (is_numeric($alpha)) && (is_numeric($beta)) && (is_numeric($rMin)) && (is_numeric($rMax))) { + if (($value < $rMin) || ($value > $rMax) || ($alpha <= 0) || ($beta <= 0) || ($rMin == $rMax)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($rMin > $rMax) { + $tmp = $rMin; + $rMin = $rMax; + $rMax = $tmp; + } + $value -= $rMin; + $value /= ($rMax - $rMin); + return self::_incompleteBeta($value,$alpha,$beta); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function BETADIST() + + + /** + * BETAINV + * + * Returns the inverse of the beta distribution. + * + * @param float $probability Probability at which you want to evaluate the distribution + * @param float $alpha Parameter to the distribution + * @param float $beta Parameter to the distribution + * @param boolean $cumulative + * @return float + * + */ + public static function BETAINV($probability,$alpha,$beta,$rMin=0,$rMax=1) { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + $beta = PHPExcel_Calculation_Functions::flattenSingleValue($beta); + $rMin = PHPExcel_Calculation_Functions::flattenSingleValue($rMin); + $rMax = PHPExcel_Calculation_Functions::flattenSingleValue($rMax); + + if ((is_numeric($probability)) && (is_numeric($alpha)) && (is_numeric($beta)) && (is_numeric($rMin)) && (is_numeric($rMax))) { + if (($alpha <= 0) || ($beta <= 0) || ($rMin == $rMax) || ($probability <= 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($rMin > $rMax) { + $tmp = $rMin; + $rMin = $rMax; + $rMax = $tmp; + } + $a = 0; + $b = 2; + + $i = 0; + while ((($b - $a) > PRECISION) && ($i++ < MAX_ITERATIONS)) { + $guess = ($a + $b) / 2; + $result = self::BETADIST($guess, $alpha, $beta); + if (($result == $probability) || ($result == 0)) { + $b = $a; + } elseif ($result > $probability) { + $b = $guess; + } else { + $a = $guess; + } + } + if ($i == MAX_ITERATIONS) { + return PHPExcel_Calculation_Functions::NA(); + } + return round($rMin + $guess * ($rMax - $rMin),12); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function BETAINV() + + + /** + * BINOMDIST + * + * Returns the individual term binomial distribution probability. Use BINOMDIST in problems with + * a fixed number of tests or trials, when the outcomes of any trial are only success or failure, + * when trials are independent, and when the probability of success is constant throughout the + * experiment. For example, BINOMDIST can calculate the probability that two of the next three + * babies born are male. + * + * @param float $value Number of successes in trials + * @param float $trials Number of trials + * @param float $probability Probability of success on each trial + * @param boolean $cumulative + * @return float + * + * @todo Cumulative distribution function + * + */ + public static function BINOMDIST($value, $trials, $probability, $cumulative) { + $value = floor(PHPExcel_Calculation_Functions::flattenSingleValue($value)); + $trials = floor(PHPExcel_Calculation_Functions::flattenSingleValue($trials)); + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + + if ((is_numeric($value)) && (is_numeric($trials)) && (is_numeric($probability))) { + if (($value < 0) || ($value > $trials)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($probability < 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + $summer = 0; + for ($i = 0; $i <= $value; ++$i) { + $summer += PHPExcel_Calculation_MathTrig::COMBIN($trials,$i) * pow($probability,$i) * pow(1 - $probability,$trials - $i); + } + return $summer; + } else { + return PHPExcel_Calculation_MathTrig::COMBIN($trials,$value) * pow($probability,$value) * pow(1 - $probability,$trials - $value) ; + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function BINOMDIST() + + + /** + * CHIDIST + * + * Returns the one-tailed probability of the chi-squared distribution. + * + * @param float $value Value for the function + * @param float $degrees degrees of freedom + * @return float + */ + public static function CHIDIST($value, $degrees) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $degrees = floor(PHPExcel_Calculation_Functions::flattenSingleValue($degrees)); + + if ((is_numeric($value)) && (is_numeric($degrees))) { + if ($degrees < 1) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($value < 0) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + return 1; + } + return PHPExcel_Calculation_Functions::NaN(); + } + return 1 - (self::_incompleteGamma($degrees/2,$value/2) / self::_gamma($degrees/2)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function CHIDIST() + + + /** + * CHIINV + * + * Returns the one-tailed probability of the chi-squared distribution. + * + * @param float $probability Probability for the function + * @param float $degrees degrees of freedom + * @return float + */ + public static function CHIINV($probability, $degrees) { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $degrees = floor(PHPExcel_Calculation_Functions::flattenSingleValue($degrees)); + + if ((is_numeric($probability)) && (is_numeric($degrees))) { + + $xLo = 100; + $xHi = 0; + + $x = $xNew = 1; + $dx = 1; + $i = 0; + + while ((abs($dx) > PRECISION) && ($i++ < MAX_ITERATIONS)) { + // Apply Newton-Raphson step + $result = self::CHIDIST($x, $degrees); + $error = $result - $probability; + if ($error == 0.0) { + $dx = 0; + } elseif ($error < 0.0) { + $xLo = $x; + } else { + $xHi = $x; + } + // Avoid division by zero + if ($result != 0.0) { + $dx = $error / $result; + $xNew = $x - $dx; + } + // If the NR fails to converge (which for example may be the + // case if the initial guess is too rough) we apply a bisection + // step to determine a more narrow interval around the root. + if (($xNew < $xLo) || ($xNew > $xHi) || ($result == 0.0)) { + $xNew = ($xLo + $xHi) / 2; + $dx = $xNew - $x; + } + $x = $xNew; + } + if ($i == MAX_ITERATIONS) { + return PHPExcel_Calculation_Functions::NA(); + } + return round($x,12); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function CHIINV() + + + /** + * CONFIDENCE + * + * Returns the confidence interval for a population mean + * + * @param float $alpha + * @param float $stdDev Standard Deviation + * @param float $size + * @return float + * + */ + public static function CONFIDENCE($alpha,$stdDev,$size) { + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + $size = floor(PHPExcel_Calculation_Functions::flattenSingleValue($size)); + + if ((is_numeric($alpha)) && (is_numeric($stdDev)) && (is_numeric($size))) { + if (($alpha <= 0) || ($alpha >= 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($stdDev <= 0) || ($size < 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return self::NORMSINV(1 - $alpha / 2) * $stdDev / sqrt($size); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function CONFIDENCE() + + + /** + * CORREL + * + * Returns covariance, the average of the products of deviations for each data point pair. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function CORREL($yValues,$xValues=null) { + if ((is_null($xValues)) || (!is_array($yValues)) || (!is_array($xValues))) { + return PHPExcel_Calculation_Functions::VALUE(); + } + if (!self::_checkTrendArrays($yValues,$xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR,$yValues,$xValues); + return $bestFitLinear->getCorrelation(); + } // function CORREL() + + + /** + * COUNT + * + * Counts the number of cells that contain numbers within the list of arguments + * + * Excel Function: + * COUNT(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return int + */ + public static function COUNT() { + // Return value + $returnValue = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + ++$returnValue; + } + } + + // Return + return $returnValue; + } // function COUNT() + + + /** + * COUNTA + * + * Counts the number of cells that are not empty within the list of arguments + * + * Excel Function: + * COUNTA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return int + */ + public static function COUNTA() { + // Return value + $returnValue = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric, boolean or string value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) && ($arg != '')))) { + ++$returnValue; + } + } + + // Return + return $returnValue; + } // function COUNTA() + + + /** + * COUNTBLANK + * + * Counts the number of empty cells within the list of arguments + * + * Excel Function: + * COUNTBLANK(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return int + */ + public static function COUNTBLANK() { + // Return value + $returnValue = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a blank cell? + if ((is_null($arg)) || ((is_string($arg)) && ($arg == ''))) { + ++$returnValue; + } + } + + // Return + return $returnValue; + } // function COUNTBLANK() + + + /** + * COUNTIF + * + * Counts the number of cells that contain numbers within the list of arguments + * + * Excel Function: + * COUNTIF(value1[,value2[, ...]],condition) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param string $condition The criteria that defines which cells will be counted. + * @return int + */ + public static function COUNTIF($aArgs,$condition) { + // Return value + $returnValue = 0; + + $aArgs = PHPExcel_Calculation_Functions::flattenArray($aArgs); + $condition = PHPExcel_Calculation_Functions::_ifCondition($condition); + // Loop through arguments + foreach ($aArgs as $arg) { + if (!is_numeric($arg)) { $arg = PHPExcel_Calculation::_wrapResult(strtoupper($arg)); } + $testCondition = '='.$arg.$condition; + if (PHPExcel_Calculation::getInstance()->_calculateFormulaValue($testCondition)) { + // Is it a value within our criteria + ++$returnValue; + } + } + + // Return + return $returnValue; + } // function COUNTIF() + + + /** + * COVAR + * + * Returns covariance, the average of the products of deviations for each data point pair. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function COVAR($yValues,$xValues) { + if (!self::_checkTrendArrays($yValues,$xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR,$yValues,$xValues); + return $bestFitLinear->getCovariance(); + } // function COVAR() + + + /** + * CRITBINOM + * + * Returns the smallest value for which the cumulative binomial distribution is greater + * than or equal to a criterion value + * + * See http://support.microsoft.com/kb/828117/ for details of the algorithm used + * + * @param float $trials number of Bernoulli trials + * @param float $probability probability of a success on each trial + * @param float $alpha criterion value + * @return int + * + * @todo Warning. This implementation differs from the algorithm detailed on the MS + * web site in that $CumPGuessMinus1 = $CumPGuess - 1 rather than $CumPGuess - $PGuess + * This eliminates a potential endless loop error, but may have an adverse affect on the + * accuracy of the function (although all my tests have so far returned correct results). + * + */ + public static function CRITBINOM($trials, $probability, $alpha) { + $trials = floor(PHPExcel_Calculation_Functions::flattenSingleValue($trials)); + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + + if ((is_numeric($trials)) && (is_numeric($probability)) && (is_numeric($alpha))) { + if ($trials < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($probability < 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($alpha < 0) || ($alpha > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($alpha <= 0.5) { + $t = sqrt(log(1 / ($alpha * $alpha))); + $trialsApprox = 0 - ($t + (2.515517 + 0.802853 * $t + 0.010328 * $t * $t) / (1 + 1.432788 * $t + 0.189269 * $t * $t + 0.001308 * $t * $t * $t)); + } else { + $t = sqrt(log(1 / pow(1 - $alpha,2))); + $trialsApprox = $t - (2.515517 + 0.802853 * $t + 0.010328 * $t * $t) / (1 + 1.432788 * $t + 0.189269 * $t * $t + 0.001308 * $t * $t * $t); + } + $Guess = floor($trials * $probability + $trialsApprox * sqrt($trials * $probability * (1 - $probability))); + if ($Guess < 0) { + $Guess = 0; + } elseif ($Guess > $trials) { + $Guess = $trials; + } + + $TotalUnscaledProbability = $UnscaledPGuess = $UnscaledCumPGuess = 0.0; + $EssentiallyZero = 10e-12; + + $m = floor($trials * $probability); + ++$TotalUnscaledProbability; + if ($m == $Guess) { ++$UnscaledPGuess; } + if ($m <= $Guess) { ++$UnscaledCumPGuess; } + + $PreviousValue = 1; + $Done = False; + $k = $m + 1; + while ((!$Done) && ($k <= $trials)) { + $CurrentValue = $PreviousValue * ($trials - $k + 1) * $probability / ($k * (1 - $probability)); + $TotalUnscaledProbability += $CurrentValue; + if ($k == $Guess) { $UnscaledPGuess += $CurrentValue; } + if ($k <= $Guess) { $UnscaledCumPGuess += $CurrentValue; } + if ($CurrentValue <= $EssentiallyZero) { $Done = True; } + $PreviousValue = $CurrentValue; + ++$k; + } + + $PreviousValue = 1; + $Done = False; + $k = $m - 1; + while ((!$Done) && ($k >= 0)) { + $CurrentValue = $PreviousValue * $k + 1 * (1 - $probability) / (($trials - $k) * $probability); + $TotalUnscaledProbability += $CurrentValue; + if ($k == $Guess) { $UnscaledPGuess += $CurrentValue; } + if ($k <= $Guess) { $UnscaledCumPGuess += $CurrentValue; } + if ($CurrentValue <= $EssentiallyZero) { $Done = True; } + $PreviousValue = $CurrentValue; + --$k; + } + + $PGuess = $UnscaledPGuess / $TotalUnscaledProbability; + $CumPGuess = $UnscaledCumPGuess / $TotalUnscaledProbability; + +// $CumPGuessMinus1 = $CumPGuess - $PGuess; + $CumPGuessMinus1 = $CumPGuess - 1; + + while (True) { + if (($CumPGuessMinus1 < $alpha) && ($CumPGuess >= $alpha)) { + return $Guess; + } elseif (($CumPGuessMinus1 < $alpha) && ($CumPGuess < $alpha)) { + $PGuessPlus1 = $PGuess * ($trials - $Guess) * $probability / $Guess / (1 - $probability); + $CumPGuessMinus1 = $CumPGuess; + $CumPGuess = $CumPGuess + $PGuessPlus1; + $PGuess = $PGuessPlus1; + ++$Guess; + } elseif (($CumPGuessMinus1 >= $alpha) && ($CumPGuess >= $alpha)) { + $PGuessMinus1 = $PGuess * $Guess * (1 - $probability) / ($trials - $Guess + 1) / $probability; + $CumPGuess = $CumPGuessMinus1; + $CumPGuessMinus1 = $CumPGuessMinus1 - $PGuess; + $PGuess = $PGuessMinus1; + --$Guess; + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function CRITBINOM() + + + /** + * DEVSQ + * + * Returns the sum of squares of deviations of data points from their sample mean. + * + * Excel Function: + * DEVSQ(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function DEVSQ() { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + // Return value + $returnValue = null; + + $aMean = self::AVERAGE($aArgs); + if ($aMean != PHPExcel_Calculation_Functions::DIV0()) { + $aCount = -1; + foreach ($aArgs as $k => $arg) { + // Is it a numeric value? + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = pow(($arg - $aMean),2); + } else { + $returnValue += pow(($arg - $aMean),2); + } + ++$aCount; + } + } + + // Return + if (is_null($returnValue)) { + return PHPExcel_Calculation_Functions::NaN(); + } else { + return $returnValue; + } + } + return self::NA(); + } // function DEVSQ() + + + /** + * EXPONDIST + * + * Returns the exponential distribution. Use EXPONDIST to model the time between events, + * such as how long an automated bank teller takes to deliver cash. For example, you can + * use EXPONDIST to determine the probability that the process takes at most 1 minute. + * + * @param float $value Value of the function + * @param float $lambda The parameter value + * @param boolean $cumulative + * @return float + */ + public static function EXPONDIST($value, $lambda, $cumulative) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $lambda = PHPExcel_Calculation_Functions::flattenSingleValue($lambda); + $cumulative = PHPExcel_Calculation_Functions::flattenSingleValue($cumulative); + + if ((is_numeric($value)) && (is_numeric($lambda))) { + if (($value < 0) || ($lambda < 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + return 1 - exp(0-$value*$lambda); + } else { + return $lambda * exp(0-$value*$lambda); + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function EXPONDIST() + + + /** + * FISHER + * + * Returns the Fisher transformation at x. This transformation produces a function that + * is normally distributed rather than skewed. Use this function to perform hypothesis + * testing on the correlation coefficient. + * + * @param float $value + * @return float + */ + public static function FISHER($value) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + + if (is_numeric($value)) { + if (($value <= -1) || ($value >= 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return 0.5 * log((1+$value)/(1-$value)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function FISHER() + + + /** + * FISHERINV + * + * Returns the inverse of the Fisher transformation. Use this transformation when + * analyzing correlations between ranges or arrays of data. If y = FISHER(x), then + * FISHERINV(y) = x. + * + * @param float $value + * @return float + */ + public static function FISHERINV($value) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + + if (is_numeric($value)) { + return (exp(2 * $value) - 1) / (exp(2 * $value) + 1); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function FISHERINV() + + + /** + * FORECAST + * + * Calculates, or predicts, a future value by using existing values. The predicted value is a y-value for a given x-value. + * + * @param float Value of X for which we want to find Y + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function FORECAST($xValue,$yValues,$xValues) { + $xValue = PHPExcel_Calculation_Functions::flattenSingleValue($xValue); + if (!is_numeric($xValue)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (!self::_checkTrendArrays($yValues,$xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR,$yValues,$xValues); + return $bestFitLinear->getValueOfYForX($xValue); + } // function FORECAST() + + + /** + * GAMMADIST + * + * Returns the gamma distribution. + * + * @param float $value Value at which you want to evaluate the distribution + * @param float $a Parameter to the distribution + * @param float $b Parameter to the distribution + * @param boolean $cumulative + * @return float + * + */ + public static function GAMMADIST($value,$a,$b,$cumulative) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $a = PHPExcel_Calculation_Functions::flattenSingleValue($a); + $b = PHPExcel_Calculation_Functions::flattenSingleValue($b); + + if ((is_numeric($value)) && (is_numeric($a)) && (is_numeric($b))) { + if (($value < 0) || ($a <= 0) || ($b <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + return self::_incompleteGamma($a,$value / $b) / self::_gamma($a); + } else { + return (1 / (pow($b,$a) * self::_gamma($a))) * pow($value,$a-1) * exp(0-($value / $b)); + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function GAMMADIST() + + + /** + * GAMMAINV + * + * Returns the inverse of the beta distribution. + * + * @param float $probability Probability at which you want to evaluate the distribution + * @param float $alpha Parameter to the distribution + * @param float $beta Parameter to the distribution + * @return float + * + */ + public static function GAMMAINV($probability,$alpha,$beta) { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + $beta = PHPExcel_Calculation_Functions::flattenSingleValue($beta); + + if ((is_numeric($probability)) && (is_numeric($alpha)) && (is_numeric($beta))) { + if (($alpha <= 0) || ($beta <= 0) || ($probability < 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $xLo = 0; + $xHi = $alpha * $beta * 5; + + $x = $xNew = 1; + $error = $pdf = 0; + $dx = 1024; + $i = 0; + + while ((abs($dx) > PRECISION) && ($i++ < MAX_ITERATIONS)) { + // Apply Newton-Raphson step + $error = self::GAMMADIST($x, $alpha, $beta, True) - $probability; + if ($error < 0.0) { + $xLo = $x; + } else { + $xHi = $x; + } + $pdf = self::GAMMADIST($x, $alpha, $beta, False); + // Avoid division by zero + if ($pdf != 0.0) { + $dx = $error / $pdf; + $xNew = $x - $dx; + } + // If the NR fails to converge (which for example may be the + // case if the initial guess is too rough) we apply a bisection + // step to determine a more narrow interval around the root. + if (($xNew < $xLo) || ($xNew > $xHi) || ($pdf == 0.0)) { + $xNew = ($xLo + $xHi) / 2; + $dx = $xNew - $x; + } + $x = $xNew; + } + if ($i == MAX_ITERATIONS) { + return PHPExcel_Calculation_Functions::NA(); + } + return $x; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function GAMMAINV() + + + /** + * GAMMALN + * + * Returns the natural logarithm of the gamma function. + * + * @param float $value + * @return float + */ + public static function GAMMALN($value) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + + if (is_numeric($value)) { + if ($value <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return log(self::_gamma($value)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function GAMMALN() + + + /** + * GEOMEAN + * + * Returns the geometric mean of an array or range of positive data. For example, you + * can use GEOMEAN to calculate average growth rate given compound interest with + * variable rates. + * + * Excel Function: + * GEOMEAN(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function GEOMEAN() { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + $aMean = PHPExcel_Calculation_MathTrig::PRODUCT($aArgs); + if (is_numeric($aMean) && ($aMean > 0)) { + $aCount = self::COUNT($aArgs) ; + if (self::MIN($aArgs) > 0) { + return pow($aMean, (1 / $aCount)); + } + } + return PHPExcel_Calculation_Functions::NaN(); + } // GEOMEAN() + + + /** + * GROWTH + * + * Returns values along a predicted emponential trend + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @param array of mixed Values of X for which we want to find Y + * @param boolean A logical value specifying whether to force the intersect to equal 0. + * @return array of float + */ + public static function GROWTH($yValues,$xValues=array(),$newValues=array(),$const=True) { + $yValues = PHPExcel_Calculation_Functions::flattenArray($yValues); + $xValues = PHPExcel_Calculation_Functions::flattenArray($xValues); + $newValues = PHPExcel_Calculation_Functions::flattenArray($newValues); + $const = (is_null($const)) ? True : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($const); + + $bestFitExponential = trendClass::calculate(trendClass::TREND_EXPONENTIAL,$yValues,$xValues,$const); + if (empty($newValues)) { + $newValues = $bestFitExponential->getXValues(); + } + + $returnArray = array(); + foreach($newValues as $xValue) { + $returnArray[0][] = $bestFitExponential->getValueOfYForX($xValue); + } + + return $returnArray; + } // function GROWTH() + + + /** + * HARMEAN + * + * Returns the harmonic mean of a data set. The harmonic mean is the reciprocal of the + * arithmetic mean of reciprocals. + * + * Excel Function: + * HARMEAN(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function HARMEAN() { + // Return value + $returnValue = PHPExcel_Calculation_Functions::NA(); + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + if (self::MIN($aArgs) < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + $aCount = 0; + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if ($arg <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (is_null($returnValue)) { + $returnValue = (1 / $arg); + } else { + $returnValue += (1 / $arg); + } + ++$aCount; + } + } + + // Return + if ($aCount > 0) { + return 1 / ($returnValue / $aCount); + } else { + return $returnValue; + } + } // function HARMEAN() + + + /** + * HYPGEOMDIST + * + * Returns the hypergeometric distribution. HYPGEOMDIST returns the probability of a given number of + * sample successes, given the sample size, population successes, and population size. + * + * @param float $sampleSuccesses Number of successes in the sample + * @param float $sampleNumber Size of the sample + * @param float $populationSuccesses Number of successes in the population + * @param float $populationNumber Population size + * @return float + * + */ + public static function HYPGEOMDIST($sampleSuccesses, $sampleNumber, $populationSuccesses, $populationNumber) { + $sampleSuccesses = floor(PHPExcel_Calculation_Functions::flattenSingleValue($sampleSuccesses)); + $sampleNumber = floor(PHPExcel_Calculation_Functions::flattenSingleValue($sampleNumber)); + $populationSuccesses = floor(PHPExcel_Calculation_Functions::flattenSingleValue($populationSuccesses)); + $populationNumber = floor(PHPExcel_Calculation_Functions::flattenSingleValue($populationNumber)); + + if ((is_numeric($sampleSuccesses)) && (is_numeric($sampleNumber)) && (is_numeric($populationSuccesses)) && (is_numeric($populationNumber))) { + if (($sampleSuccesses < 0) || ($sampleSuccesses > $sampleNumber) || ($sampleSuccesses > $populationSuccesses)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($sampleNumber <= 0) || ($sampleNumber > $populationNumber)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($populationSuccesses <= 0) || ($populationSuccesses > $populationNumber)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return PHPExcel_Calculation_MathTrig::COMBIN($populationSuccesses,$sampleSuccesses) * + PHPExcel_Calculation_MathTrig::COMBIN($populationNumber - $populationSuccesses,$sampleNumber - $sampleSuccesses) / + PHPExcel_Calculation_MathTrig::COMBIN($populationNumber,$sampleNumber); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function HYPGEOMDIST() + + + /** + * INTERCEPT + * + * Calculates the point at which a line will intersect the y-axis by using existing x-values and y-values. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function INTERCEPT($yValues,$xValues) { + if (!self::_checkTrendArrays($yValues,$xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR,$yValues,$xValues); + return $bestFitLinear->getIntersect(); + } // function INTERCEPT() + + + /** + * KURT + * + * Returns the kurtosis of a data set. Kurtosis characterizes the relative peakedness + * or flatness of a distribution compared with the normal distribution. Positive + * kurtosis indicates a relatively peaked distribution. Negative kurtosis indicates a + * relatively flat distribution. + * + * @param array Data Series + * @return float + */ + public static function KURT() { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + $mean = self::AVERAGE($aArgs); + $stdDev = self::STDEV($aArgs); + + if ($stdDev > 0) { + $count = $summer = 0; + // Loop through arguments + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $summer += pow((($arg - $mean) / $stdDev),4) ; + ++$count; + } + } + } + + // Return + if ($count > 3) { + return $summer * ($count * ($count+1) / (($count-1) * ($count-2) * ($count-3))) - (3 * pow($count-1,2) / (($count-2) * ($count-3))); + } + } + return PHPExcel_Calculation_Functions::DIV0(); + } // function KURT() + + + /** + * LARGE + * + * Returns the nth largest value in a data set. You can use this function to + * select a value based on its relative standing. + * + * Excel Function: + * LARGE(value1[,value2[, ...]],entry) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param int $entry Position (ordered from the largest) in the array or range of data to return + * @return float + * + */ + public static function LARGE() { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $entry = floor(array_pop($aArgs)); + + if ((is_numeric($entry)) && (!is_string($entry))) { + $mArgs = array(); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + $count = self::COUNT($mArgs); + $entry = floor(--$entry); + if (($entry < 0) || ($entry >= $count) || ($count == 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + rsort($mArgs); + return $mArgs[$entry]; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function LARGE() + + + /** + * LINEST + * + * Calculates the statistics for a line by using the "least squares" method to calculate a straight line that best fits your data, + * and then returns an array that describes the line. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @param boolean A logical value specifying whether to force the intersect to equal 0. + * @param boolean A logical value specifying whether to return additional regression statistics. + * @return array + */ + public static function LINEST($yValues,$xValues=null,$const=True,$stats=False) { + $const = (is_null($const)) ? True : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($const); + $stats = (is_null($stats)) ? False : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($stats); + if (is_null($xValues)) $xValues = range(1,count(PHPExcel_Calculation_Functions::flattenArray($yValues))); + + if (!self::_checkTrendArrays($yValues,$xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return 0; + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR,$yValues,$xValues,$const); + if ($stats) { + return array( array( $bestFitLinear->getSlope(), + $bestFitLinear->getSlopeSE(), + $bestFitLinear->getGoodnessOfFit(), + $bestFitLinear->getF(), + $bestFitLinear->getSSRegression(), + ), + array( $bestFitLinear->getIntersect(), + $bestFitLinear->getIntersectSE(), + $bestFitLinear->getStdevOfResiduals(), + $bestFitLinear->getDFResiduals(), + $bestFitLinear->getSSResiduals() + ) + ); + } else { + return array( $bestFitLinear->getSlope(), + $bestFitLinear->getIntersect() + ); + } + } // function LINEST() + + + /** + * LOGEST + * + * Calculates an exponential curve that best fits the X and Y data series, + * and then returns an array that describes the line. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @param boolean A logical value specifying whether to force the intersect to equal 0. + * @param boolean A logical value specifying whether to return additional regression statistics. + * @return array + */ + public static function LOGEST($yValues,$xValues=null,$const=True,$stats=False) { + $const = (is_null($const)) ? True : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($const); + $stats = (is_null($stats)) ? False : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($stats); + if (is_null($xValues)) $xValues = range(1,count(PHPExcel_Calculation_Functions::flattenArray($yValues))); + + if (!self::_checkTrendArrays($yValues,$xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + foreach($yValues as $value) { + if ($value <= 0.0) { + return PHPExcel_Calculation_Functions::NaN(); + } + } + + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return 1; + } + + $bestFitExponential = trendClass::calculate(trendClass::TREND_EXPONENTIAL,$yValues,$xValues,$const); + if ($stats) { + return array( array( $bestFitExponential->getSlope(), + $bestFitExponential->getSlopeSE(), + $bestFitExponential->getGoodnessOfFit(), + $bestFitExponential->getF(), + $bestFitExponential->getSSRegression(), + ), + array( $bestFitExponential->getIntersect(), + $bestFitExponential->getIntersectSE(), + $bestFitExponential->getStdevOfResiduals(), + $bestFitExponential->getDFResiduals(), + $bestFitExponential->getSSResiduals() + ) + ); + } else { + return array( $bestFitExponential->getSlope(), + $bestFitExponential->getIntersect() + ); + } + } // function LOGEST() + + + /** + * LOGINV + * + * Returns the inverse of the normal cumulative distribution + * + * @param float $value + * @return float + * + * @todo Try implementing P J Acklam's refinement algorithm for greater + * accuracy if I can get my head round the mathematics + * (as described at) http://home.online.no/~pjacklam/notes/invnorm/ + */ + public static function LOGINV($probability, $mean, $stdDev) { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + + if ((is_numeric($probability)) && (is_numeric($mean)) && (is_numeric($stdDev))) { + if (($probability < 0) || ($probability > 1) || ($stdDev <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return exp($mean + $stdDev * self::NORMSINV($probability)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function LOGINV() + + + /** + * LOGNORMDIST + * + * Returns the cumulative lognormal distribution of x, where ln(x) is normally distributed + * with parameters mean and standard_dev. + * + * @param float $value + * @return float + */ + public static function LOGNORMDIST($value, $mean, $stdDev) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + + if ((is_numeric($value)) && (is_numeric($mean)) && (is_numeric($stdDev))) { + if (($value <= 0) || ($stdDev <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return self::NORMSDIST((log($value) - $mean) / $stdDev); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function LOGNORMDIST() + + + /** + * MAX + * + * MAX returns the value of the element of the values passed that has the highest value, + * with negative numbers considered smaller than positive numbers. + * + * Excel Function: + * MAX(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MAX() { + // Return value + $returnValue = null; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if ((is_null($returnValue)) || ($arg > $returnValue)) { + $returnValue = $arg; + } + } + } + + // Return + if(is_null($returnValue)) { + return 0; + } + return $returnValue; + } // function MAX() + + + /** + * MAXA + * + * Returns the greatest value in a list of arguments, including numbers, text, and logical values + * + * Excel Function: + * MAXA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MAXA() { + // Return value + $returnValue = null; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) && ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + if ((is_null($returnValue)) || ($arg > $returnValue)) { + $returnValue = $arg; + } + } + } + + // Return + if(is_null($returnValue)) { + return 0; + } + return $returnValue; + } // function MAXA() + + + /** + * MAXIF + * + * Counts the maximum value within a range of cells that contain numbers within the list of arguments + * + * Excel Function: + * MAXIF(value1[,value2[, ...]],condition) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @param string $condition The criteria that defines which cells will be checked. + * @return float + */ + public static function MAXIF($aArgs,$condition,$sumArgs = array()) { + // Return value + $returnValue = null; + + $aArgs = PHPExcel_Calculation_Functions::flattenArray($aArgs); + $sumArgs = PHPExcel_Calculation_Functions::flattenArray($sumArgs); + if (empty($sumArgs)) { + $sumArgs = $aArgs; + } + $condition = PHPExcel_Calculation_Functions::_ifCondition($condition); + // Loop through arguments + foreach ($aArgs as $key => $arg) { + if (!is_numeric($arg)) { $arg = PHPExcel_Calculation::_wrapResult(strtoupper($arg)); } + $testCondition = '='.$arg.$condition; + if (PHPExcel_Calculation::getInstance()->_calculateFormulaValue($testCondition)) { + if ((is_null($returnValue)) || ($arg > $returnValue)) { + $returnValue = $arg; + } + } + } + + // Return + return $returnValue; + } // function MAXIF() + + + /** + * MEDIAN + * + * Returns the median of the given numbers. The median is the number in the middle of a set of numbers. + * + * Excel Function: + * MEDIAN(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MEDIAN() { + // Return value + $returnValue = PHPExcel_Calculation_Functions::NaN(); + + $mArgs = array(); + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + + $mValueCount = count($mArgs); + if ($mValueCount > 0) { + sort($mArgs,SORT_NUMERIC); + $mValueCount = $mValueCount / 2; + if ($mValueCount == floor($mValueCount)) { + $returnValue = ($mArgs[$mValueCount--] + $mArgs[$mValueCount]) / 2; + } else { + $mValueCount == floor($mValueCount); + $returnValue = $mArgs[$mValueCount]; + } + } + + // Return + return $returnValue; + } // function MEDIAN() + + + /** + * MIN + * + * MIN returns the value of the element of the values passed that has the smallest value, + * with negative numbers considered smaller than positive numbers. + * + * Excel Function: + * MIN(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MIN() { + // Return value + $returnValue = null; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if ((is_null($returnValue)) || ($arg < $returnValue)) { + $returnValue = $arg; + } + } + } + + // Return + if(is_null($returnValue)) { + return 0; + } + return $returnValue; + } // function MIN() + + + /** + * MINA + * + * Returns the smallest value in a list of arguments, including numbers, text, and logical values + * + * Excel Function: + * MINA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MINA() { + // Return value + $returnValue = null; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) && ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + if ((is_null($returnValue)) || ($arg < $returnValue)) { + $returnValue = $arg; + } + } + } + + // Return + if(is_null($returnValue)) { + return 0; + } + return $returnValue; + } // function MINA() + + + /** + * MINIF + * + * Returns the minimum value within a range of cells that contain numbers within the list of arguments + * + * Excel Function: + * MINIF(value1[,value2[, ...]],condition) + * + * @access public + * @category Mathematical and Trigonometric Functions + * @param mixed $arg,... Data values + * @param string $condition The criteria that defines which cells will be checked. + * @return float + */ + public static function MINIF($aArgs,$condition,$sumArgs = array()) { + // Return value + $returnValue = null; + + $aArgs = PHPExcel_Calculation_Functions::flattenArray($aArgs); + $sumArgs = PHPExcel_Calculation_Functions::flattenArray($sumArgs); + if (empty($sumArgs)) { + $sumArgs = $aArgs; + } + $condition = PHPExcel_Calculation_Functions::_ifCondition($condition); + // Loop through arguments + foreach ($aArgs as $key => $arg) { + if (!is_numeric($arg)) { $arg = PHPExcel_Calculation::_wrapResult(strtoupper($arg)); } + $testCondition = '='.$arg.$condition; + if (PHPExcel_Calculation::getInstance()->_calculateFormulaValue($testCondition)) { + if ((is_null($returnValue)) || ($arg < $returnValue)) { + $returnValue = $arg; + } + } + } + + // Return + return $returnValue; + } // function MINIF() + + + // + // Special variant of array_count_values that isn't limited to strings and integers, + // but can work with floating point numbers as values + // + private static function _modeCalc($data) { + $frequencyArray = array(); + foreach($data as $datum) { + $found = False; + foreach($frequencyArray as $key => $value) { + if ((string) $value['value'] == (string) $datum) { + ++$frequencyArray[$key]['frequency']; + $found = True; + break; + } + } + if (!$found) { + $frequencyArray[] = array('value' => $datum, + 'frequency' => 1 ); + } + } + + foreach($frequencyArray as $key => $value) { + $frequencyList[$key] = $value['frequency']; + $valueList[$key] = $value['value']; + } + array_multisort($frequencyList, SORT_DESC, $valueList, SORT_ASC, SORT_NUMERIC, $frequencyArray); + + if ($frequencyArray[0]['frequency'] == 1) { + return PHPExcel_Calculation_Functions::NA(); + } + return $frequencyArray[0]['value']; + } // function _modeCalc() + + + /** + * MODE + * + * Returns the most frequently occurring, or repetitive, value in an array or range of data + * + * Excel Function: + * MODE(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function MODE() { + // Return value + $returnValue = PHPExcel_Calculation_Functions::NA(); + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + $mArgs = array(); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + + if (!empty($mArgs)) { + return self::_modeCalc($mArgs); + } + + // Return + return $returnValue; + } // function MODE() + + + /** + * NEGBINOMDIST + * + * Returns the negative binomial distribution. NEGBINOMDIST returns the probability that + * there will be number_f failures before the number_s-th success, when the constant + * probability of a success is probability_s. This function is similar to the binomial + * distribution, except that the number of successes is fixed, and the number of trials is + * variable. Like the binomial, trials are assumed to be independent. + * + * @param float $failures Number of Failures + * @param float $successes Threshold number of Successes + * @param float $probability Probability of success on each trial + * @return float + * + */ + public static function NEGBINOMDIST($failures, $successes, $probability) { + $failures = floor(PHPExcel_Calculation_Functions::flattenSingleValue($failures)); + $successes = floor(PHPExcel_Calculation_Functions::flattenSingleValue($successes)); + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + + if ((is_numeric($failures)) && (is_numeric($successes)) && (is_numeric($probability))) { + if (($failures < 0) || ($successes < 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (($probability < 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC) { + if (($failures + $successes - 1) <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + } + return (PHPExcel_Calculation_MathTrig::COMBIN($failures + $successes - 1,$successes - 1)) * (pow($probability,$successes)) * (pow(1 - $probability,$failures)) ; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function NEGBINOMDIST() + + + /** + * NORMDIST + * + * Returns the normal distribution for the specified mean and standard deviation. This + * function has a very wide range of applications in statistics, including hypothesis + * testing. + * + * @param float $value + * @param float $mean Mean Value + * @param float $stdDev Standard Deviation + * @param boolean $cumulative + * @return float + * + */ + public static function NORMDIST($value, $mean, $stdDev, $cumulative) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + + if ((is_numeric($value)) && (is_numeric($mean)) && (is_numeric($stdDev))) { + if ($stdDev < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + return 0.5 * (1 + PHPExcel_Calculation_Engineering::_erfVal(($value - $mean) / ($stdDev * sqrt(2)))); + } else { + return (1 / (SQRT2PI * $stdDev)) * exp(0 - (pow($value - $mean,2) / (2 * ($stdDev * $stdDev)))); + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function NORMDIST() + + + /** + * NORMINV + * + * Returns the inverse of the normal cumulative distribution for the specified mean and standard deviation. + * + * @param float $value + * @param float $mean Mean Value + * @param float $stdDev Standard Deviation + * @return float + * + */ + public static function NORMINV($probability,$mean,$stdDev) { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + + if ((is_numeric($probability)) && (is_numeric($mean)) && (is_numeric($stdDev))) { + if (($probability < 0) || ($probability > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ($stdDev < 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return (self::_inverse_ncdf($probability) * $stdDev) + $mean; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function NORMINV() + + + /** + * NORMSDIST + * + * Returns the standard normal cumulative distribution function. The distribution has + * a mean of 0 (zero) and a standard deviation of one. Use this function in place of a + * table of standard normal curve areas. + * + * @param float $value + * @return float + */ + public static function NORMSDIST($value) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + + return self::NORMDIST($value, 0, 1, True); + } // function NORMSDIST() + + + /** + * NORMSINV + * + * Returns the inverse of the standard normal cumulative distribution + * + * @param float $value + * @return float + */ + public static function NORMSINV($value) { + return self::NORMINV($value, 0, 1); + } // function NORMSINV() + + + /** + * PERCENTILE + * + * Returns the nth percentile of values in a range.. + * + * Excel Function: + * PERCENTILE(value1[,value2[, ...]],entry) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param float $entry Percentile value in the range 0..1, inclusive. + * @return float + */ + public static function PERCENTILE() { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $entry = array_pop($aArgs); + + if ((is_numeric($entry)) && (!is_string($entry))) { + if (($entry < 0) || ($entry > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $mArgs = array(); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + $mValueCount = count($mArgs); + if ($mValueCount > 0) { + sort($mArgs); + $count = self::COUNT($mArgs); + $index = $entry * ($count-1); + $iBase = floor($index); + if ($index == $iBase) { + return $mArgs[$index]; + } else { + $iNext = $iBase + 1; + $iProportion = $index - $iBase; + return $mArgs[$iBase] + (($mArgs[$iNext] - $mArgs[$iBase]) * $iProportion) ; + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function PERCENTILE() + + + /** + * PERCENTRANK + * + * Returns the rank of a value in a data set as a percentage of the data set. + * + * @param array of number An array of, or a reference to, a list of numbers. + * @param number The number whose rank you want to find. + * @param number The number of significant digits for the returned percentage value. + * @return float + */ + public static function PERCENTRANK($valueSet,$value,$significance=3) { + $valueSet = PHPExcel_Calculation_Functions::flattenArray($valueSet); + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $significance = (is_null($significance)) ? 3 : (integer) PHPExcel_Calculation_Functions::flattenSingleValue($significance); + + foreach($valueSet as $key => $valueEntry) { + if (!is_numeric($valueEntry)) { + unset($valueSet[$key]); + } + } + sort($valueSet,SORT_NUMERIC); + $valueCount = count($valueSet); + if ($valueCount == 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + + $valueAdjustor = $valueCount - 1; + if (($value < $valueSet[0]) || ($value > $valueSet[$valueAdjustor])) { + return PHPExcel_Calculation_Functions::NA(); + } + + $pos = array_search($value,$valueSet); + if ($pos === False) { + $pos = 0; + $testValue = $valueSet[0]; + while ($testValue < $value) { + $testValue = $valueSet[++$pos]; + } + --$pos; + $pos += (($value - $valueSet[$pos]) / ($testValue - $valueSet[$pos])); + } + + return round($pos / $valueAdjustor,$significance); + } // function PERCENTRANK() + + + /** + * PERMUT + * + * Returns the number of permutations for a given number of objects that can be + * selected from number objects. A permutation is any set or subset of objects or + * events where internal order is significant. Permutations are different from + * combinations, for which the internal order is not significant. Use this function + * for lottery-style probability calculations. + * + * @param int $numObjs Number of different objects + * @param int $numInSet Number of objects in each permutation + * @return int Number of permutations + */ + public static function PERMUT($numObjs,$numInSet) { + $numObjs = PHPExcel_Calculation_Functions::flattenSingleValue($numObjs); + $numInSet = PHPExcel_Calculation_Functions::flattenSingleValue($numInSet); + + if ((is_numeric($numObjs)) && (is_numeric($numInSet))) { + $numInSet = floor($numInSet); + if ($numObjs < $numInSet) { + return PHPExcel_Calculation_Functions::NaN(); + } + return round(PHPExcel_Calculation_MathTrig::FACT($numObjs) / PHPExcel_Calculation_MathTrig::FACT($numObjs - $numInSet)); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function PERMUT() + + + /** + * POISSON + * + * Returns the Poisson distribution. A common application of the Poisson distribution + * is predicting the number of events over a specific time, such as the number of + * cars arriving at a toll plaza in 1 minute. + * + * @param float $value + * @param float $mean Mean Value + * @param boolean $cumulative + * @return float + * + */ + public static function POISSON($value, $mean, $cumulative) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + + if ((is_numeric($value)) && (is_numeric($mean))) { + if (($value <= 0) || ($mean <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + $summer = 0; + for ($i = 0; $i <= floor($value); ++$i) { + $summer += pow($mean,$i) / PHPExcel_Calculation_MathTrig::FACT($i); + } + return exp(0-$mean) * $summer; + } else { + return (exp(0-$mean) * pow($mean,$value)) / PHPExcel_Calculation_MathTrig::FACT($value); + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function POISSON() + + + /** + * QUARTILE + * + * Returns the quartile of a data set. + * + * Excel Function: + * QUARTILE(value1[,value2[, ...]],entry) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param int $entry Quartile value in the range 1..3, inclusive. + * @return float + */ + public static function QUARTILE() { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $entry = floor(array_pop($aArgs)); + + if ((is_numeric($entry)) && (!is_string($entry))) { + $entry /= 4; + if (($entry < 0) || ($entry > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + return self::PERCENTILE($aArgs,$entry); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function QUARTILE() + + + /** + * RANK + * + * Returns the rank of a number in a list of numbers. + * + * @param number The number whose rank you want to find. + * @param array of number An array of, or a reference to, a list of numbers. + * @param mixed Order to sort the values in the value set + * @return float + */ + public static function RANK($value,$valueSet,$order=0) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $valueSet = PHPExcel_Calculation_Functions::flattenArray($valueSet); + $order = (is_null($order)) ? 0 : (integer) PHPExcel_Calculation_Functions::flattenSingleValue($order); + + foreach($valueSet as $key => $valueEntry) { + if (!is_numeric($valueEntry)) { + unset($valueSet[$key]); + } + } + + if ($order == 0) { + rsort($valueSet,SORT_NUMERIC); + } else { + sort($valueSet,SORT_NUMERIC); + } + $pos = array_search($value,$valueSet); + if ($pos === False) { + return PHPExcel_Calculation_Functions::NA(); + } + + return ++$pos; + } // function RANK() + + + /** + * RSQ + * + * Returns the square of the Pearson product moment correlation coefficient through data points in known_y's and known_x's. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function RSQ($yValues,$xValues) { + if (!self::_checkTrendArrays($yValues,$xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR,$yValues,$xValues); + return $bestFitLinear->getGoodnessOfFit(); + } // function RSQ() + + + /** + * SKEW + * + * Returns the skewness of a distribution. Skewness characterizes the degree of asymmetry + * of a distribution around its mean. Positive skewness indicates a distribution with an + * asymmetric tail extending toward more positive values. Negative skewness indicates a + * distribution with an asymmetric tail extending toward more negative values. + * + * @param array Data Series + * @return float + */ + public static function SKEW() { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + $mean = self::AVERAGE($aArgs); + $stdDev = self::STDEV($aArgs); + + $count = $summer = 0; + // Loop through arguments + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $summer += pow((($arg - $mean) / $stdDev),3) ; + ++$count; + } + } + } + + // Return + if ($count > 2) { + return $summer * ($count / (($count-1) * ($count-2))); + } + return PHPExcel_Calculation_Functions::DIV0(); + } // function SKEW() + + + /** + * SLOPE + * + * Returns the slope of the linear regression line through data points in known_y's and known_x's. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function SLOPE($yValues,$xValues) { + if (!self::_checkTrendArrays($yValues,$xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR,$yValues,$xValues); + return $bestFitLinear->getSlope(); + } // function SLOPE() + + + /** + * SMALL + * + * Returns the nth smallest value in a data set. You can use this function to + * select a value based on its relative standing. + * + * Excel Function: + * SMALL(value1[,value2[, ...]],entry) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param int $entry Position (ordered from the smallest) in the array or range of data to return + * @return float + */ + public static function SMALL() { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $entry = array_pop($aArgs); + + if ((is_numeric($entry)) && (!is_string($entry))) { + $mArgs = array(); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + $count = self::COUNT($mArgs); + $entry = floor(--$entry); + if (($entry < 0) || ($entry >= $count) || ($count == 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + sort($mArgs); + return $mArgs[$entry]; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function SMALL() + + + /** + * STANDARDIZE + * + * Returns a normalized value from a distribution characterized by mean and standard_dev. + * + * @param float $value Value to normalize + * @param float $mean Mean Value + * @param float $stdDev Standard Deviation + * @return float Standardized value + */ + public static function STANDARDIZE($value,$mean,$stdDev) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $mean = PHPExcel_Calculation_Functions::flattenSingleValue($mean); + $stdDev = PHPExcel_Calculation_Functions::flattenSingleValue($stdDev); + + if ((is_numeric($value)) && (is_numeric($mean)) && (is_numeric($stdDev))) { + if ($stdDev <= 0) { + return PHPExcel_Calculation_Functions::NaN(); + } + return ($value - $mean) / $stdDev ; + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function STANDARDIZE() + + + /** + * STDEV + * + * Estimates standard deviation based on a sample. The standard deviation is a measure of how + * widely values are dispersed from the average value (the mean). + * + * Excel Function: + * STDEV(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function STDEV() { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + // Return value + $returnValue = null; + + $aMean = self::AVERAGE($aArgs); + if (!is_null($aMean)) { + $aCount = -1; + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = pow(($arg - $aMean),2); + } else { + $returnValue += pow(($arg - $aMean),2); + } + ++$aCount; + } + } + + // Return + if (($aCount > 0) && ($returnValue >= 0)) { + return sqrt($returnValue / $aCount); + } + } + return PHPExcel_Calculation_Functions::DIV0(); + } // function STDEV() + + + /** + * STDEVA + * + * Estimates standard deviation based on a sample, including numbers, text, and logical values + * + * Excel Function: + * STDEVA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function STDEVA() { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + // Return value + $returnValue = null; + + $aMean = self::AVERAGEA($aArgs); + if (!is_null($aMean)) { + $aCount = -1; + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + if (is_null($returnValue)) { + $returnValue = pow(($arg - $aMean),2); + } else { + $returnValue += pow(($arg - $aMean),2); + } + ++$aCount; + } + } + } + + // Return + if (($aCount > 0) && ($returnValue >= 0)) { + return sqrt($returnValue / $aCount); + } + } + return PHPExcel_Calculation_Functions::DIV0(); + } // function STDEVA() + + + /** + * STDEVP + * + * Calculates standard deviation based on the entire population + * + * Excel Function: + * STDEVP(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function STDEVP() { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + // Return value + $returnValue = null; + + $aMean = self::AVERAGE($aArgs); + if (!is_null($aMean)) { + $aCount = 0; + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + ((!PHPExcel_Calculation_Functions::isCellValue($k)) || (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE))) { + $arg = (integer) $arg; + } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + if (is_null($returnValue)) { + $returnValue = pow(($arg - $aMean),2); + } else { + $returnValue += pow(($arg - $aMean),2); + } + ++$aCount; + } + } + + // Return + if (($aCount > 0) && ($returnValue >= 0)) { + return sqrt($returnValue / $aCount); + } + } + return PHPExcel_Calculation_Functions::DIV0(); + } // function STDEVP() + + + /** + * STDEVPA + * + * Calculates standard deviation based on the entire population, including numbers, text, and logical values + * + * Excel Function: + * STDEVPA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function STDEVPA() { + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + + // Return value + $returnValue = null; + + $aMean = self::AVERAGEA($aArgs); + if (!is_null($aMean)) { + $aCount = 0; + foreach ($aArgs as $k => $arg) { + if ((is_bool($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + if (is_null($returnValue)) { + $returnValue = pow(($arg - $aMean),2); + } else { + $returnValue += pow(($arg - $aMean),2); + } + ++$aCount; + } + } + } + + // Return + if (($aCount > 0) && ($returnValue >= 0)) { + return sqrt($returnValue / $aCount); + } + } + return PHPExcel_Calculation_Functions::DIV0(); + } // function STDEVPA() + + + /** + * STEYX + * + * Returns the standard error of the predicted y-value for each x in the regression. + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @return float + */ + public static function STEYX($yValues,$xValues) { + if (!self::_checkTrendArrays($yValues,$xValues)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + $yValueCount = count($yValues); + $xValueCount = count($xValues); + + if (($yValueCount == 0) || ($yValueCount != $xValueCount)) { + return PHPExcel_Calculation_Functions::NA(); + } elseif ($yValueCount == 1) { + return PHPExcel_Calculation_Functions::DIV0(); + } + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR,$yValues,$xValues); + return $bestFitLinear->getStdevOfResiduals(); + } // function STEYX() + + + /** + * TDIST + * + * Returns the probability of Student's T distribution. + * + * @param float $value Value for the function + * @param float $degrees degrees of freedom + * @param float $tails number of tails (1 or 2) + * @return float + */ + public static function TDIST($value, $degrees, $tails) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $degrees = floor(PHPExcel_Calculation_Functions::flattenSingleValue($degrees)); + $tails = floor(PHPExcel_Calculation_Functions::flattenSingleValue($tails)); + + if ((is_numeric($value)) && (is_numeric($degrees)) && (is_numeric($tails))) { + if (($value < 0) || ($degrees < 1) || ($tails < 1) || ($tails > 2)) { + return PHPExcel_Calculation_Functions::NaN(); + } + // tdist, which finds the probability that corresponds to a given value + // of t with k degrees of freedom. This algorithm is translated from a + // pascal function on p81 of "Statistical Computing in Pascal" by D + // Cooke, A H Craven & G M Clark (1985: Edward Arnold (Pubs.) Ltd: + // London). The above Pascal algorithm is itself a translation of the + // fortran algoritm "AS 3" by B E Cooper of the Atlas Computer + // Laboratory as reported in (among other places) "Applied Statistics + // Algorithms", editied by P Griffiths and I D Hill (1985; Ellis + // Horwood Ltd.; W. Sussex, England). + $tterm = $degrees; + $ttheta = atan2($value,sqrt($tterm)); + $tc = cos($ttheta); + $ts = sin($ttheta); + $tsum = 0; + + if (($degrees % 2) == 1) { + $ti = 3; + $tterm = $tc; + } else { + $ti = 2; + $tterm = 1; + } + + $tsum = $tterm; + while ($ti < $degrees) { + $tterm *= $tc * $tc * ($ti - 1) / $ti; + $tsum += $tterm; + $ti += 2; + } + $tsum *= $ts; + if (($degrees % 2) == 1) { $tsum = M_2DIVPI * ($tsum + $ttheta); } + $tValue = 0.5 * (1 + $tsum); + if ($tails == 1) { + return 1 - abs($tValue); + } else { + return 1 - abs((1 - $tValue) - $tValue); + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function TDIST() + + + /** + * TINV + * + * Returns the one-tailed probability of the chi-squared distribution. + * + * @param float $probability Probability for the function + * @param float $degrees degrees of freedom + * @return float + */ + public static function TINV($probability, $degrees) { + $probability = PHPExcel_Calculation_Functions::flattenSingleValue($probability); + $degrees = floor(PHPExcel_Calculation_Functions::flattenSingleValue($degrees)); + + if ((is_numeric($probability)) && (is_numeric($degrees))) { + $xLo = 100; + $xHi = 0; + + $x = $xNew = 1; + $dx = 1; + $i = 0; + + while ((abs($dx) > PRECISION) && ($i++ < MAX_ITERATIONS)) { + // Apply Newton-Raphson step + $result = self::TDIST($x, $degrees, 2); + $error = $result - $probability; + if ($error == 0.0) { + $dx = 0; + } elseif ($error < 0.0) { + $xLo = $x; + } else { + $xHi = $x; + } + // Avoid division by zero + if ($result != 0.0) { + $dx = $error / $result; + $xNew = $x - $dx; + } + // If the NR fails to converge (which for example may be the + // case if the initial guess is too rough) we apply a bisection + // step to determine a more narrow interval around the root. + if (($xNew < $xLo) || ($xNew > $xHi) || ($result == 0.0)) { + $xNew = ($xLo + $xHi) / 2; + $dx = $xNew - $x; + } + $x = $xNew; + } + if ($i == MAX_ITERATIONS) { + return PHPExcel_Calculation_Functions::NA(); + } + return round($x,12); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function TINV() + + + /** + * TREND + * + * Returns values along a linear trend + * + * @param array of mixed Data Series Y + * @param array of mixed Data Series X + * @param array of mixed Values of X for which we want to find Y + * @param boolean A logical value specifying whether to force the intersect to equal 0. + * @return array of float + */ + public static function TREND($yValues,$xValues=array(),$newValues=array(),$const=True) { + $yValues = PHPExcel_Calculation_Functions::flattenArray($yValues); + $xValues = PHPExcel_Calculation_Functions::flattenArray($xValues); + $newValues = PHPExcel_Calculation_Functions::flattenArray($newValues); + $const = (is_null($const)) ? True : (boolean) PHPExcel_Calculation_Functions::flattenSingleValue($const); + + $bestFitLinear = trendClass::calculate(trendClass::TREND_LINEAR,$yValues,$xValues,$const); + if (empty($newValues)) { + $newValues = $bestFitLinear->getXValues(); + } + + $returnArray = array(); + foreach($newValues as $xValue) { + $returnArray[0][] = $bestFitLinear->getValueOfYForX($xValue); + } + + return $returnArray; + } // function TREND() + + + /** + * TRIMMEAN + * + * Returns the mean of the interior of a data set. TRIMMEAN calculates the mean + * taken by excluding a percentage of data points from the top and bottom tails + * of a data set. + * + * Excel Function: + * TRIMEAN(value1[,value2[, ...]],$discard) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @param float $discard Percentage to discard + * @return float + */ + public static function TRIMMEAN() { + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + + // Calculate + $percent = array_pop($aArgs); + + if ((is_numeric($percent)) && (!is_string($percent))) { + if (($percent < 0) || ($percent > 1)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $mArgs = array(); + foreach ($aArgs as $arg) { + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $mArgs[] = $arg; + } + } + $discard = floor(self::COUNT($mArgs) * $percent / 2); + sort($mArgs); + for ($i=0; $i < $discard; ++$i) { + array_pop($mArgs); + array_shift($mArgs); + } + return self::AVERAGE($mArgs); + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function TRIMMEAN() + + + /** + * VARFunc + * + * Estimates variance based on a sample. + * + * Excel Function: + * VAR(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function VARFunc() { + // Return value + $returnValue = PHPExcel_Calculation_Functions::DIV0(); + + $summerA = $summerB = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + $aCount = 0; + foreach ($aArgs as $arg) { + if (is_bool($arg)) { $arg = (integer) $arg; } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $summerA += ($arg * $arg); + $summerB += $arg; + ++$aCount; + } + } + + // Return + if ($aCount > 1) { + $summerA *= $aCount; + $summerB *= $summerB; + $returnValue = ($summerA - $summerB) / ($aCount * ($aCount - 1)); + } + return $returnValue; + } // function VARFunc() + + + /** + * VARA + * + * Estimates variance based on a sample, including numbers, text, and logical values + * + * Excel Function: + * VARA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function VARA() { + // Return value + $returnValue = PHPExcel_Calculation_Functions::DIV0(); + + $summerA = $summerB = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + $aCount = 0; + foreach ($aArgs as $k => $arg) { + if ((is_string($arg)) && + (PHPExcel_Calculation_Functions::isValue($k))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ((is_string($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + $summerA += ($arg * $arg); + $summerB += $arg; + ++$aCount; + } + } + } + + // Return + if ($aCount > 1) { + $summerA *= $aCount; + $summerB *= $summerB; + $returnValue = ($summerA - $summerB) / ($aCount * ($aCount - 1)); + } + return $returnValue; + } // function VARA() + + + /** + * VARP + * + * Calculates variance based on the entire population + * + * Excel Function: + * VARP(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function VARP() { + // Return value + $returnValue = PHPExcel_Calculation_Functions::DIV0(); + + $summerA = $summerB = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + $aCount = 0; + foreach ($aArgs as $arg) { + if (is_bool($arg)) { $arg = (integer) $arg; } + // Is it a numeric value? + if ((is_numeric($arg)) && (!is_string($arg))) { + $summerA += ($arg * $arg); + $summerB += $arg; + ++$aCount; + } + } + + // Return + if ($aCount > 0) { + $summerA *= $aCount; + $summerB *= $summerB; + $returnValue = ($summerA - $summerB) / ($aCount * $aCount); + } + return $returnValue; + } // function VARP() + + + /** + * VARPA + * + * Calculates variance based on the entire population, including numbers, text, and logical values + * + * Excel Function: + * VARPA(value1[,value2[, ...]]) + * + * @access public + * @category Statistical Functions + * @param mixed $arg,... Data values + * @return float + */ + public static function VARPA() { + // Return value + $returnValue = PHPExcel_Calculation_Functions::DIV0(); + + $summerA = $summerB = 0; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArrayIndexed(func_get_args()); + $aCount = 0; + foreach ($aArgs as $k => $arg) { + if ((is_string($arg)) && + (PHPExcel_Calculation_Functions::isValue($k))) { + return PHPExcel_Calculation_Functions::VALUE(); + } elseif ((is_string($arg)) && + (!PHPExcel_Calculation_Functions::isMatrixValue($k))) { + } else { + // Is it a numeric value? + if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { + if (is_bool($arg)) { + $arg = (integer) $arg; + } elseif (is_string($arg)) { + $arg = 0; + } + $summerA += ($arg * $arg); + $summerB += $arg; + ++$aCount; + } + } + } + + // Return + if ($aCount > 0) { + $summerA *= $aCount; + $summerB *= $summerB; + $returnValue = ($summerA - $summerB) / ($aCount * $aCount); + } + return $returnValue; + } // function VARPA() + + + /** + * WEIBULL + * + * Returns the Weibull distribution. Use this distribution in reliability + * analysis, such as calculating a device's mean time to failure. + * + * @param float $value + * @param float $alpha Alpha Parameter + * @param float $beta Beta Parameter + * @param boolean $cumulative + * @return float + * + */ + public static function WEIBULL($value, $alpha, $beta, $cumulative) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $alpha = PHPExcel_Calculation_Functions::flattenSingleValue($alpha); + $beta = PHPExcel_Calculation_Functions::flattenSingleValue($beta); + + if ((is_numeric($value)) && (is_numeric($alpha)) && (is_numeric($beta))) { + if (($value < 0) || ($alpha <= 0) || ($beta <= 0)) { + return PHPExcel_Calculation_Functions::NaN(); + } + if ((is_numeric($cumulative)) || (is_bool($cumulative))) { + if ($cumulative) { + return 1 - exp(0 - pow($value / $beta,$alpha)); + } else { + return ($alpha / pow($beta,$alpha)) * pow($value,$alpha - 1) * exp(0 - pow($value / $beta,$alpha)); + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function WEIBULL() + + + /** + * ZTEST + * + * Returns the Weibull distribution. Use this distribution in reliability + * analysis, such as calculating a device's mean time to failure. + * + * @param float $value + * @param float $alpha Alpha Parameter + * @param float $beta Beta Parameter + * @param boolean $cumulative + * @return float + * + */ + public static function ZTEST($dataSet, $m0, $sigma=null) { + $dataSet = PHPExcel_Calculation_Functions::flattenArrayIndexed($dataSet); + $m0 = PHPExcel_Calculation_Functions::flattenSingleValue($m0); + $sigma = PHPExcel_Calculation_Functions::flattenSingleValue($sigma); + + if (is_null($sigma)) { + $sigma = self::STDEV($dataSet); + } + $n = count($dataSet); + + return 1 - self::NORMSDIST((self::AVERAGE($dataSet) - $m0)/($sigma/SQRT($n))); + } // function ZTEST() + +} // class PHPExcel_Calculation_Statistical diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/TextData.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/TextData.php new file mode 100644 index 0000000..3289645 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/TextData.php @@ -0,0 +1,598 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** + * PHPExcel_Calculation_TextData + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Calculation_TextData { + + private static $_invalidChars = Null; + + private static function _uniord($c) { + if (ord($c{0}) >=0 && ord($c{0}) <= 127) + return ord($c{0}); + if (ord($c{0}) >= 192 && ord($c{0}) <= 223) + return (ord($c{0})-192)*64 + (ord($c{1})-128); + if (ord($c{0}) >= 224 && ord($c{0}) <= 239) + return (ord($c{0})-224)*4096 + (ord($c{1})-128)*64 + (ord($c{2})-128); + if (ord($c{0}) >= 240 && ord($c{0}) <= 247) + return (ord($c{0})-240)*262144 + (ord($c{1})-128)*4096 + (ord($c{2})-128)*64 + (ord($c{3})-128); + if (ord($c{0}) >= 248 && ord($c{0}) <= 251) + return (ord($c{0})-248)*16777216 + (ord($c{1})-128)*262144 + (ord($c{2})-128)*4096 + (ord($c{3})-128)*64 + (ord($c{4})-128); + if (ord($c{0}) >= 252 && ord($c{0}) <= 253) + return (ord($c{0})-252)*1073741824 + (ord($c{1})-128)*16777216 + (ord($c{2})-128)*262144 + (ord($c{3})-128)*4096 + (ord($c{4})-128)*64 + (ord($c{5})-128); + if (ord($c{0}) >= 254 && ord($c{0}) <= 255) //error + return PHPExcel_Calculation_Functions::VALUE(); + return 0; + } // function _uniord() + + /** + * CHARACTER + * + * @param string $character Value + * @return int + */ + public static function CHARACTER($character) { + $character = PHPExcel_Calculation_Functions::flattenSingleValue($character); + + if ((!is_numeric($character)) || ($character < 0)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (function_exists('mb_convert_encoding')) { + return mb_convert_encoding('&#'.intval($character).';', 'UTF-8', 'HTML-ENTITIES'); + } else { + return chr(intval($character)); + } + } + + + /** + * TRIMNONPRINTABLE + * + * @param mixed $value Value to check + * @return string + */ + public static function TRIMNONPRINTABLE($stringValue = '') { + $stringValue = PHPExcel_Calculation_Functions::flattenSingleValue($stringValue); + + if (is_bool($stringValue)) { + return ($stringValue) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (self::$_invalidChars == Null) { + self::$_invalidChars = range(chr(0),chr(31)); + } + + if (is_string($stringValue) || is_numeric($stringValue)) { + return str_replace(self::$_invalidChars,'',trim($stringValue,"\x00..\x1F")); + } + return NULL; + } // function TRIMNONPRINTABLE() + + + /** + * TRIMSPACES + * + * @param mixed $value Value to check + * @return string + */ + public static function TRIMSPACES($stringValue = '') { + $stringValue = PHPExcel_Calculation_Functions::flattenSingleValue($stringValue); + + if (is_bool($stringValue)) { + return ($stringValue) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (is_string($stringValue) || is_numeric($stringValue)) { + return trim(preg_replace('/ +/',' ',trim($stringValue,' '))); + } + return NULL; + } // function TRIMSPACES() + + + /** + * ASCIICODE + * + * @param string $character Value + * @return int + */ + public static function ASCIICODE($characters) { + if (($characters === NULL) || ($characters === '')) + return PHPExcel_Calculation_Functions::VALUE(); + $characters = PHPExcel_Calculation_Functions::flattenSingleValue($characters); + if (is_bool($characters)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $characters = (int) $characters; + } else { + $characters = ($characters) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + } + + $character = $characters; + if ((function_exists('mb_strlen')) && (function_exists('mb_substr'))) { + if (mb_strlen($characters, 'UTF-8') > 1) { $character = mb_substr($characters, 0, 1, 'UTF-8'); } + return self::_uniord($character); + } else { + if (strlen($characters) > 0) { $character = substr($characters, 0, 1); } + return ord($character); + } + } // function ASCIICODE() + + + /** + * CONCATENATE + * + * @return string + */ + public static function CONCATENATE() { + // Return value + $returnValue = ''; + + // Loop through arguments + $aArgs = PHPExcel_Calculation_Functions::flattenArray(func_get_args()); + foreach ($aArgs as $arg) { + if (is_bool($arg)) { + if (PHPExcel_Calculation_Functions::getCompatibilityMode() == PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE) { + $arg = (int) $arg; + } else { + $arg = ($arg) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + } + $returnValue .= $arg; + } + + // Return + return $returnValue; + } // function CONCATENATE() + + + /** + * DOLLAR + * + * This function converts a number to text using currency format, with the decimals rounded to the specified place. + * The format used is $#,##0.00_);($#,##0.00).. + * + * @param float $value The value to format + * @param int $decimals The number of digits to display to the right of the decimal point. + * If decimals is negative, number is rounded to the left of the decimal point. + * If you omit decimals, it is assumed to be 2 + * @return string + */ + public static function DOLLAR($value = 0, $decimals = 2) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $decimals = is_null($decimals) ? 0 : PHPExcel_Calculation_Functions::flattenSingleValue($decimals); + + // Validate parameters + if (!is_numeric($value) || !is_numeric($decimals)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $decimals = floor($decimals); + + if ($decimals > 0) { + return money_format('%.'.$decimals.'n',$value); + } else { + $round = pow(10,abs($decimals)); + if ($value < 0) { $round = 0-$round; } + $value = PHPExcel_Calculation_MathTrig::MROUND($value,$round); + // The implementation of money_format used if the standard PHP function is not available can't handle decimal places of 0, + // so we display to 1 dp and chop off that character and the decimal separator using substr + return substr(money_format('%.1n',$value),0,-2); + } + } // function DOLLAR() + + + /** + * SEARCHSENSITIVE + * + * @param string $needle The string to look for + * @param string $haystack The string in which to look + * @param int $offset Offset within $haystack + * @return string + */ + public static function SEARCHSENSITIVE($needle,$haystack,$offset=1) { + $needle = PHPExcel_Calculation_Functions::flattenSingleValue($needle); + $haystack = PHPExcel_Calculation_Functions::flattenSingleValue($haystack); + $offset = PHPExcel_Calculation_Functions::flattenSingleValue($offset); + + if (!is_bool($needle)) { + if (is_bool($haystack)) { + $haystack = ($haystack) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (($offset > 0) && (PHPExcel_Shared_String::CountCharacters($haystack) > $offset)) { + if (PHPExcel_Shared_String::CountCharacters($needle) == 0) { + return $offset; + } + if (function_exists('mb_strpos')) { + $pos = mb_strpos($haystack, $needle, --$offset, 'UTF-8'); + } else { + $pos = strpos($haystack, $needle, --$offset); + } + if ($pos !== false) { + return ++$pos; + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function SEARCHSENSITIVE() + + + /** + * SEARCHINSENSITIVE + * + * @param string $needle The string to look for + * @param string $haystack The string in which to look + * @param int $offset Offset within $haystack + * @return string + */ + public static function SEARCHINSENSITIVE($needle,$haystack,$offset=1) { + $needle = PHPExcel_Calculation_Functions::flattenSingleValue($needle); + $haystack = PHPExcel_Calculation_Functions::flattenSingleValue($haystack); + $offset = PHPExcel_Calculation_Functions::flattenSingleValue($offset); + + if (!is_bool($needle)) { + if (is_bool($haystack)) { + $haystack = ($haystack) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (($offset > 0) && (PHPExcel_Shared_String::CountCharacters($haystack) > $offset)) { + if (PHPExcel_Shared_String::CountCharacters($needle) == 0) { + return $offset; + } + if (function_exists('mb_stripos')) { + $pos = mb_stripos($haystack, $needle, --$offset,'UTF-8'); + } else { + $pos = stripos($haystack, $needle, --$offset); + } + if ($pos !== false) { + return ++$pos; + } + } + } + return PHPExcel_Calculation_Functions::VALUE(); + } // function SEARCHINSENSITIVE() + + + /** + * FIXEDFORMAT + * + * @param mixed $value Value to check + * @return boolean + */ + public static function FIXEDFORMAT($value, $decimals = 2, $no_commas = FALSE) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $decimals = PHPExcel_Calculation_Functions::flattenSingleValue($decimals); + $no_commas = PHPExcel_Calculation_Functions::flattenSingleValue($no_commas); + + // Validate parameters + if (!is_numeric($value) || !is_numeric($decimals)) { + return PHPExcel_Calculation_Functions::NaN(); + } + $decimals = floor($decimals); + + $valueResult = round($value,$decimals); + if ($decimals < 0) { $decimals = 0; } + if (!$no_commas) { + $valueResult = number_format($valueResult,$decimals); + } + + return (string) $valueResult; + } // function FIXEDFORMAT() + + + /** + * LEFT + * + * @param string $value Value + * @param int $chars Number of characters + * @return string + */ + public static function LEFT($value = '', $chars = 1) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $chars = PHPExcel_Calculation_Functions::flattenSingleValue($chars); + + if ($chars < 0) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (is_bool($value)) { + $value = ($value) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (function_exists('mb_substr')) { + return mb_substr($value, 0, $chars, 'UTF-8'); + } else { + return substr($value, 0, $chars); + } + } // function LEFT() + + + /** + * MID + * + * @param string $value Value + * @param int $start Start character + * @param int $chars Number of characters + * @return string + */ + public static function MID($value = '', $start = 1, $chars = null) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $start = PHPExcel_Calculation_Functions::flattenSingleValue($start); + $chars = PHPExcel_Calculation_Functions::flattenSingleValue($chars); + + if (($start < 1) || ($chars < 0)) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (is_bool($value)) { + $value = ($value) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (function_exists('mb_substr')) { + return mb_substr($value, --$start, $chars, 'UTF-8'); + } else { + return substr($value, --$start, $chars); + } + } // function MID() + + + /** + * RIGHT + * + * @param string $value Value + * @param int $chars Number of characters + * @return string + */ + public static function RIGHT($value = '', $chars = 1) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $chars = PHPExcel_Calculation_Functions::flattenSingleValue($chars); + + if ($chars < 0) { + return PHPExcel_Calculation_Functions::VALUE(); + } + + if (is_bool($value)) { + $value = ($value) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if ((function_exists('mb_substr')) && (function_exists('mb_strlen'))) { + return mb_substr($value, mb_strlen($value, 'UTF-8') - $chars, $chars, 'UTF-8'); + } else { + return substr($value, strlen($value) - $chars); + } + } // function RIGHT() + + + /** + * STRINGLENGTH + * + * @param string $value Value + * @param int $chars Number of characters + * @return string + */ + public static function STRINGLENGTH($value = '') { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + + if (is_bool($value)) { + $value = ($value) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (function_exists('mb_strlen')) { + return mb_strlen($value, 'UTF-8'); + } else { + return strlen($value); + } + } // function STRINGLENGTH() + + + /** + * LOWERCASE + * + * Converts a string value to upper case. + * + * @param string $mixedCaseString + * @return string + */ + public static function LOWERCASE($mixedCaseString) { + $mixedCaseString = PHPExcel_Calculation_Functions::flattenSingleValue($mixedCaseString); + + if (is_bool($mixedCaseString)) { + $mixedCaseString = ($mixedCaseString) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (function_exists('mb_convert_case')) { + return mb_convert_case($mixedCaseString, MB_CASE_LOWER, 'UTF-8'); + } else { + return strtoupper($mixedCaseString); + } + } // function LOWERCASE() + + + /** + * UPPERCASE + * + * Converts a string value to upper case. + * + * @param string $mixedCaseString + * @return string + */ + public static function UPPERCASE($mixedCaseString) { + $mixedCaseString = PHPExcel_Calculation_Functions::flattenSingleValue($mixedCaseString); + + if (is_bool($mixedCaseString)) { + $mixedCaseString = ($mixedCaseString) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (function_exists('mb_convert_case')) { + return mb_convert_case($mixedCaseString, MB_CASE_UPPER, 'UTF-8'); + } else { + return strtoupper($mixedCaseString); + } + } // function UPPERCASE() + + + /** + * PROPERCASE + * + * Converts a string value to upper case. + * + * @param string $mixedCaseString + * @return string + */ + public static function PROPERCASE($mixedCaseString) { + $mixedCaseString = PHPExcel_Calculation_Functions::flattenSingleValue($mixedCaseString); + + if (is_bool($mixedCaseString)) { + $mixedCaseString = ($mixedCaseString) ? PHPExcel_Calculation::getTRUE() : PHPExcel_Calculation::getFALSE(); + } + + if (function_exists('mb_convert_case')) { + return mb_convert_case($mixedCaseString, MB_CASE_TITLE, 'UTF-8'); + } else { + return ucwords($mixedCaseString); + } + } // function PROPERCASE() + + + /** + * REPLACE + * + * @param string $value Value + * @param int $start Start character + * @param int $chars Number of characters + * @return string + */ + public static function REPLACE($oldText = '', $start = 1, $chars = null, $newText) { + $oldText = PHPExcel_Calculation_Functions::flattenSingleValue($oldText); + $start = PHPExcel_Calculation_Functions::flattenSingleValue($start); + $chars = PHPExcel_Calculation_Functions::flattenSingleValue($chars); + $newText = PHPExcel_Calculation_Functions::flattenSingleValue($newText); + + $left = self::LEFT($oldText,$start-1); + $right = self::RIGHT($oldText,self::STRINGLENGTH($oldText)-($start+$chars)+1); + + return $left.$newText.$right; + } // function REPLACE() + + + /** + * SUBSTITUTE + * + * @param string $text Value + * @param string $fromText From Value + * @param string $toText To Value + * @param integer $instance Instance Number + * @return string + */ + public static function SUBSTITUTE($text = '', $fromText = '', $toText = '', $instance = 0) { + $text = PHPExcel_Calculation_Functions::flattenSingleValue($text); + $fromText = PHPExcel_Calculation_Functions::flattenSingleValue($fromText); + $toText = PHPExcel_Calculation_Functions::flattenSingleValue($toText); + $instance = floor(PHPExcel_Calculation_Functions::flattenSingleValue($instance)); + + if ($instance == 0) { + if(function_exists('mb_str_replace')) { + return mb_str_replace($fromText,$toText,$text); + } else { + return str_replace($fromText,$toText,$text); + } + } else { + $pos = -1; + while($instance > 0) { + if (function_exists('mb_strpos')) { + $pos = mb_strpos($text, $fromText, $pos+1, 'UTF-8'); + } else { + $pos = strpos($text, $fromText, $pos+1); + } + if ($pos === false) { + break; + } + --$instance; + } + if ($pos !== false) { + if (function_exists('mb_strlen')) { + return self::REPLACE($text,++$pos,mb_strlen($fromText, 'UTF-8'),$toText); + } else { + return self::REPLACE($text,++$pos,strlen($fromText),$toText); + } + } + } + + return $text; + } // function SUBSTITUTE() + + + /** + * RETURNSTRING + * + * @param mixed $value Value to check + * @return boolean + */ + public static function RETURNSTRING($testValue = '') { + $testValue = PHPExcel_Calculation_Functions::flattenSingleValue($testValue); + + if (is_string($testValue)) { + return $testValue; + } + return Null; + } // function RETURNSTRING() + + + /** + * TEXTFORMAT + * + * @param mixed $value Value to check + * @return boolean + */ + public static function TEXTFORMAT($value,$format) { + $value = PHPExcel_Calculation_Functions::flattenSingleValue($value); + $format = PHPExcel_Calculation_Functions::flattenSingleValue($format); + + if ((is_string($value)) && (!is_numeric($value)) && PHPExcel_Shared_Date::isDateTimeFormatCode($format)) { + $value = PHPExcel_Calculation_DateTime::DATEVALUE($value); + } + + return (string) PHPExcel_Style_NumberFormat::toFormattedString($value,$format); + } // function TEXTFORMAT() + +} // class PHPExcel_Calculation_TextData diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/Token/Stack.php b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Token/Stack.php new file mode 100644 index 0000000..ea7efa0 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Token/Stack.php @@ -0,0 +1,73 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Calculation + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +class PHPExcel_Calculation_Token_Stack { + + private $_stack = array(); + private $_count = 0; + + + public function count() { + return $this->_count; + } // function count() + + + public function push($type,$value,$reference=null) { + $this->_stack[$this->_count++] = array('type' => $type, + 'value' => $value, + 'reference' => $reference + ); + if ($type == 'Function') { + $localeFunction = PHPExcel_Calculation::_localeFunc($value); + if ($localeFunction != $value) { + $this->_stack[($this->_count - 1)]['localeValue'] = $localeFunction; + } + } + } // function push() + + + public function pop() { + if ($this->_count > 0) { + return $this->_stack[--$this->_count]; + } + return null; + } // function pop() + + + public function last($n=1) { + if ($this->_count-$n < 0) { + return null; + } + return $this->_stack[$this->_count-$n]; + } // function last() + + + function __construct() { + } + +} // class PHPExcel_Calculation_Token_Stack diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/Token/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Token/_notes/dwsync.xml new file mode 100644 index 0000000..54ac5bd --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/Token/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Stack.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Stack.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="Stack.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="Stack.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559936961734" remote="131260196400000000" Dst="1" /> +<file name="Stack.php" server="62.244.88.21/amashow/" local="131414752240248466" remote="131414680800000000" Dst="2" /> +<file name="Stack.php" server="62.244.88.21/deciday/" local="131919461220321188" remote="131826017400000000" Dst="1" /> +<file name="Stack.php" server="62.244.88.21/deciday_18/" local="131414752240248466" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Calculation/_notes/dwsync.xml new file mode 100644 index 0000000..f0c872f --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/_notes/dwsync.xml @@ -0,0 +1,115 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Database.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="DateTime.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Engineering.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Exception.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="ExceptionHandler.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Financial.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="FormulaParser.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="FormulaToken.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Function.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="functionlist.txt" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Functions.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Logical.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="LookupRef.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="MathTrig.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Statistical.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="TextData.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="functionlist.txt" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="Logical.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="TextData.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="MathTrig.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="FormulaParser.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="Statistical.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="Financial.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="Function.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="Engineering.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="DateTime.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="ExceptionHandler.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984143400000000" Dst="-1" /> +<file name="Exception.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984143400000000" Dst="-1" /> +<file name="Database.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984143400000000" Dst="-1" /> +<file name="FormulaToken.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984143400000000" Dst="-1" /> +<file name="LookupRef.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984143400000000" Dst="-1" /> +<file name="Functions.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984143400000000" Dst="-1" /> +<file name="functionlist.txt" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="Logical.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="TextData.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="MathTrig.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="FormulaParser.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="Statistical.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="Financial.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="Function.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="Engineering.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="DateTime.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="ExceptionHandler.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="Exception.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="Database.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="FormulaToken.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="LookupRef.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="Functions.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="functionlist.txt" server="62.244.88.111/actions-fendt/lisa/" local="131244559927508480" remote="131260196400000000" Dst="1" /> +<file name="Logical.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559927980977" remote="131260196400000000" Dst="1" /> +<file name="TextData.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559928501372" remote="131260196400000000" Dst="1" /> +<file name="MathTrig.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559929112916" remote="131260196400000000" Dst="1" /> +<file name="FormulaParser.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559929618524" remote="131260196400000000" Dst="1" /> +<file name="Function.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559931716675" remote="131260196400000000" Dst="1" /> +<file name="Statistical.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559930504993" remote="131260196400000000" Dst="1" /> +<file name="Financial.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559931266667" remote="131260196400000000" Dst="1" /> +<file name="DateTime.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559933146071" remote="131260196400000000" Dst="1" /> +<file name="ExceptionHandler.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559933614057" remote="131260196400000000" Dst="1" /> +<file name="Engineering.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559932431610" remote="131260196400000000" Dst="1" /> +<file name="Exception.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559934090841" remote="131260196400000000" Dst="1" /> +<file name="FormulaToken.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559935092299" remote="131260196400000000" Dst="1" /> +<file name="Database.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559934595098" remote="131260196400000000" Dst="1" /> +<file name="LookupRef.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559935607483" remote="131260196400000000" Dst="1" /> +<file name="Functions.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559936131027" remote="131260196400000000" Dst="1" /> +<file name="functionlist.txt" server="62.244.88.21/amashow/" local="131414752233685414" remote="131414680800000000" Dst="2" /> +<file name="Logical.php" server="62.244.88.21/amashow/" local="131414752234021432" remote="131414680800000000" Dst="2" /> +<file name="TextData.php" server="62.244.88.21/amashow/" local="131414752234252662" remote="131414680800000000" Dst="2" /> +<file name="MathTrig.php" server="62.244.88.21/amashow/" local="131414752234712055" remote="131414680800000000" Dst="2" /> +<file name="FormulaParser.php" server="62.244.88.21/amashow/" local="131414752235222399" remote="131414680800000000" Dst="2" /> +<file name="Statistical.php" server="62.244.88.21/amashow/" local="131414752235736636" remote="131414680800000000" Dst="2" /> +<file name="Function.php" server="62.244.88.21/amashow/" local="131414752236465150" remote="131414680800000000" Dst="2" /> +<file name="Financial.php" server="62.244.88.21/amashow/" local="131414752236267161" remote="131414680800000000" Dst="2" /> +<file name="DateTime.php" server="62.244.88.21/amashow/" local="131414752237459719" remote="131414680800000000" Dst="2" /> +<file name="ExceptionHandler.php" server="62.244.88.21/amashow/" local="131414752237658987" remote="131414680800000000" Dst="2" /> +<file name="Engineering.php" server="62.244.88.21/amashow/" local="131414752236950870" remote="131414680800000000" Dst="2" /> +<file name="Exception.php" server="62.244.88.21/amashow/" local="131414752237859585" remote="131414680800000000" Dst="2" /> +<file name="FormulaToken.php" server="62.244.88.21/amashow/" local="131414752238517580" remote="131414680800000000" Dst="2" /> +<file name="Database.php" server="62.244.88.21/amashow/" local="131414752238305775" remote="131414680800000000" Dst="2" /> +<file name="LookupRef.php" server="62.244.88.21/amashow/" local="131414752238957746" remote="131414680800000000" Dst="2" /> +<file name="Functions.php" server="62.244.88.21/amashow/" local="131414752239196702" remote="131414680800000000" Dst="2" /> +<file name="Logical.php" server="62.244.88.21/deciday/" local="131919461217803245" remote="131826017400000000" Dst="1" /> +<file name="DateTime.php" server="62.244.88.21/deciday/" local="131919461210874009" remote="131826017400000000" Dst="1" /> +<file name="Function.php" server="62.244.88.21/deciday/" local="131919461216621088" remote="131826017400000000" Dst="1" /> +<file name="Functions.php" server="62.244.88.21/deciday/" local="131919461217433817" remote="131826017400000000" Dst="1" /> +<file name="Exception.php" server="62.244.88.21/deciday/" local="131919461213876797" remote="131826017400000000" Dst="1" /> +<file name="functionlist.txt" server="62.244.88.21/deciday/" local="131919461216285038" remote="131826017400000000" Dst="1" /> +<file name="Engineering.php" server="62.244.88.21/deciday/" local="131919461213164775" remote="131826017400000000" Dst="1" /> +<file name="FormulaParser.php" server="62.244.88.21/deciday/" local="131919461215618315" remote="131826017400000000" Dst="1" /> +<file name="FormulaToken.php" server="62.244.88.21/deciday/" local="131919461215402229" remote="131826017400000000" Dst="1" /> +<file name="LookupRef.php" server="62.244.88.21/deciday/" local="131919461218285197" remote="131826017400000000" Dst="1" /> +<file name="Statistical.php" server="62.244.88.21/deciday/" local="131919461220143087" remote="131826017400000000" Dst="1" /> +<file name="Database.php" server="62.244.88.21/deciday/" local="131919461209806871" remote="131826017400000000" Dst="1" /> +<file name="TextData.php" server="62.244.88.21/deciday/" local="131919461219864043" remote="131826017400000000" Dst="1" /> +<file name="Financial.php" server="62.244.88.21/deciday/" local="131919461216091175" remote="131826017400000000" Dst="1" /> +<file name="ExceptionHandler.php" server="62.244.88.21/deciday/" local="131919461212796856" remote="131826017400000000" Dst="1" /> +<file name="MathTrig.php" server="62.244.88.21/deciday/" local="131919461219268000" remote="131826017400000000" Dst="1" /> +<file name="Database.php" server="62.244.88.21/deciday_18/" local="131414752238305775" remote="131825945400000000" Dst="2" /> +<file name="DateTime.php" server="62.244.88.21/deciday_18/" local="131414752237459719" remote="131825945400000000" Dst="2" /> +<file name="Engineering.php" server="62.244.88.21/deciday_18/" local="131414752236950870" remote="131825945400000000" Dst="2" /> +<file name="Exception.php" server="62.244.88.21/deciday_18/" local="131414752237859585" remote="131825945400000000" Dst="2" /> +<file name="ExceptionHandler.php" server="62.244.88.21/deciday_18/" local="131414752237658987" remote="131825945400000000" Dst="2" /> +<file name="FormulaToken.php" server="62.244.88.21/deciday_18/" local="131414752238517580" remote="131825945400000000" Dst="2" /> +<file name="FormulaParser.php" server="62.244.88.21/deciday_18/" local="131414752235222399" remote="131825945400000000" Dst="2" /> +<file name="Financial.php" server="62.244.88.21/deciday_18/" local="131414752236267161" remote="131825945400000000" Dst="2" /> +<file name="Function.php" server="62.244.88.21/deciday_18/" local="131414752236465150" remote="131825945400000000" Dst="2" /> +<file name="functionlist.txt" server="62.244.88.21/deciday_18/" local="131414752233685414" remote="131825945400000000" Dst="2" /> +<file name="Functions.php" server="62.244.88.21/deciday_18/" local="131414752239196702" remote="131825945400000000" Dst="2" /> +<file name="Logical.php" server="62.244.88.21/deciday_18/" local="131414752234021432" remote="131825945400000000" Dst="2" /> +<file name="LookupRef.php" server="62.244.88.21/deciday_18/" local="131414752238957746" remote="131825945400000000" Dst="2" /> +<file name="MathTrig.php" server="62.244.88.21/deciday_18/" local="131414752234712055" remote="131825945400000000" Dst="2" /> +<file name="TextData.php" server="62.244.88.21/deciday_18/" local="131414752234252662" remote="131825945400000000" Dst="2" /> +<file name="Statistical.php" server="62.244.88.21/deciday_18/" local="131414752235736636" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Calculation/functionlist.txt b/site/config/PHPExcel/Classes/PHPExcel/Calculation/functionlist.txt new file mode 100644 index 0000000..67dbd49 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Calculation/functionlist.txt @@ -0,0 +1,351 @@ +ABS +ACCRINT +ACCRINTM +ACOS +ACOSH +ADDRESS +AMORDEGRC +AMORLINC +AND +AREAS +ASC +ASIN +ASINH +ATAN +ATAN2 +ATANH +AVEDEV +AVERAGE +AVERAGEA +AVERAGEIF +AVERAGEIFS +BAHTTEXT +BESSELI +BESSELJ +BESSELK +BESSELY +BETADIST +BETAINV +BIN2DEC +BIN2HEX +BIN2OCT +BINOMDIST +CEILING +CELL +CHAR +CHIDIST +CHIINV +CHITEST +CHOOSE +CLEAN +CODE +COLUMN +COLUMNS +COMBIN +COMPLEX +CONCATENATE +CONFIDENCE +CONVERT +CORREL +COS +COSH +COUNT +COUNTA +COUNTBLANK +COUNTIF +COUNTIFS +COUPDAYBS +COUPDAYBS +COUPDAYSNC +COUPNCD +COUPNUM +COUPPCD +COVAR +CRITBINOM +CUBEKPIMEMBER +CUBEMEMBER +CUBEMEMBERPROPERTY +CUBERANKEDMEMBER +CUBESET +CUBESETCOUNT +CUBEVALUE +CUMIPMT +CUMPRINC +DATE +DATEDIF +DATEVALUE +DAVERAGE +DAY +DAYS360 +DB +DCOUNT +DCOUNTA +DDB +DEC2BIN +DEC2HEX +DEC2OCT +DEGREES +DELTA +DEVSQ +DGET +DISC +DMAX +DMIN +DOLLAR +DOLLARDE +DOLLARFR +DPRODUCT +DSTDEV +DSTDEVP +DSUM +DURATION +DVAR +DVARP +EDATE +EFFECT +EOMONTH +ERF +ERFC +ERROR.TYPE +EVEN +EXACT +EXP +EXPONDIST +FACT +FACTDOUBLE +FALSE +FDIST +FIND +FINDB +FINV +FISHER +FISHERINV +FIXED +FLOOR +FORECAST +FREQUENCY +FTEST +FV +FVSCHEDULE +GAMAMDIST +GAMMAINV +GAMMALN +GCD +GEOMEAN +GESTEP +GETPIVOTDATA +GROWTH +HARMEAN +HEX2BIN +HEX2OCT +HLOOKUP +HOUR +HYPERLINK +HYPGEOMDIST +IF +IFERROR +IMABS +IMAGINARY +IMARGUMENT +IMCONJUGATE +IMCOS +IMEXP +IMLN +IMLOG10 +IMLOG2 +IMPOWER +IMPRODUCT +IMREAL +IMSIN +IMSQRT +IMSUB +IMSUM +INDEX +INDIRECT +INFO +INT +INTERCEPT +INTRATE +IPMT +IRR +ISBLANK +ISERR +ISERROR +ISEVEN +ISLOGICAL +ISNA +ISNONTEXT +ISNUMBER +ISODD +ISPMT +ISREF +ISTEXT +JIS +KURT +LARGE +LCM +LEFT +LEFTB +LEN +LENB +LINEST +LN +LOG +LOG10 +LOGEST +LOGINV +LOGNORMDIST +LOOKUP +LOWER +MATCH +MAX +MAXA +MDETERM +MDURATION +MEDIAN +MID +MIDB +MIN +MINA +MINUTE +MINVERSE +MIRR +MMULT +MOD +MODE +MONTH +MROUND +MULTINOMIAL +N +NA +NEGBINOMDIST +NETWORKDAYS +NOMINAL +NORMDIST +NORMINV +NORMSDIST +NORMSINV +NOT +NOW +NPER +NPV +OCT2BIN +OCT2DEC +OCT2HEX +ODD +ODDFPRICE +ODDFYIELD +ODDLPRICE +ODDLYIELD +OFFSET +OR +PEARSON +PERCENTILE +PERCENTRANK +PERMUT +PHONETIC +PI +PMT +POISSON +POWER +PPMT +PRICE +PRICEDISC +PRICEMAT +PROB +PRODUCT +PROPER +PV +QUARTILE +QUOTIENT +RADIANS +RAND +RANDBETWEEN +RANK +RATE +RECEIVED +REPLACE +REPLACEB +REPT +RIGHT +RIGHTB +ROMAN +ROUND +ROUNDDOWN +ROUNDUP +ROW +ROWS +RSQ +RTD +SEARCH +SEARCHB +SECOND +SERIESSUM +SIGN +SIN +SINH +SKEW +SLN +SLOPE +SMALL +SQRT +SQRTPI +STANDARDIZE +STDEV +STDEVA +STDEVP +STDEVPA +STEYX +SUBSTITUTE +SUBTOTAL +SUM +SUMIF +SUMIFS +SUMPRODUCT +SUMSQ +SUMX2MY2 +SUMX2PY2 +SUMXMY2 +SYD +T +TAN +TANH +TBILLEQ +TBILLPRICE +TBILLYIELD +TDIST +TEXT +TIME +TIMEVALUE +TINV +TODAY +TRANSPOSE +TREND +TRIM +TRIMMEAN +TRUE +TRUNC +TTEST +TYPE +UPPER +USDOLLAR +VALUE +VAR +VARA +VARP +VARPA +VDB +VERSION +VLOOKUP +WEEKDAY +WEEKNUM +WEIBULL +WORKDAY +XIRR +XNPV +YEAR +YEARFRAC +YIELD +YIELDDISC +YIELDMAT +ZTEST diff --git a/site/config/PHPExcel/Classes/PHPExcel/Cell.php b/site/config/PHPExcel/Classes/PHPExcel/Cell.php new file mode 100644 index 0000000..75996f2 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Cell.php @@ -0,0 +1,972 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Cell + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Cell +{ + + /** + * Default range variable constant + * + * @var string + */ + const DEFAULT_RANGE = 'A1:A1'; + + /** + * Value binder to use + * + * @var PHPExcel_Cell_IValueBinder + */ + private static $_valueBinder = NULL; + + /** + * Column of the cell + * + * @var string + */ + private $_column; + + /** + * Row of the cell + * + * @var int + */ + private $_row; + + /** + * Value of the cell + * + * @var mixed + */ + private $_value; + + /** + * Calculated value of the cell (used for caching) + * This returns the value last calculated by MS Excel or whichever spreadsheet program was used to + * create the original spreadsheet file. + * Note that this value is not guaranteed to reflect the actual calculated value because it is + * possible that auto-calculation was disabled in the original spreadsheet, and underlying data + * values used by the formula have changed since it was last calculated. + * + * @var mixed + */ + private $_calculatedValue = NULL; + + /** + * Type of the cell data + * + * @var string + */ + private $_dataType; + + /** + * Parent worksheet + * + * @var PHPExcel_Worksheet + */ + private $_parent; + + /** + * Index to cellXf + * + * @var int + */ + private $_xfIndex; + + /** + * Attributes of the formula + * + */ + private $_formulaAttributes; + + + /** + * Send notification to the cache controller + * + * @return void + **/ + public function notifyCacheController() { + $this->_parent->getCellCacheController()->updateCacheData($this); + return $this; + } + + public function detach() { + $this->_parent = NULL; + } + + public function attach($parent) { + $this->_parent = $parent; + } + + + /** + * Create a new Cell + * + * @param string $pColumn + * @param int $pRow + * @param mixed $pValue + * @param string $pDataType + * @param PHPExcel_Worksheet $pSheet + * @throws PHPExcel_Exception + */ + public function __construct($pColumn = 'A', $pRow = 1, $pValue = NULL, $pDataType = NULL, PHPExcel_Worksheet $pSheet = NULL) + { + // Initialise cell coordinate + $this->_column = strtoupper($pColumn); + $this->_row = $pRow; + + // Initialise cell value + $this->_value = $pValue; + + // Set worksheet + $this->_parent = $pSheet; + + // Set datatype? + if ($pDataType !== NULL) { + if ($pDataType == PHPExcel_Cell_DataType::TYPE_STRING2) + $pDataType = PHPExcel_Cell_DataType::TYPE_STRING; + $this->_dataType = $pDataType; + } else { + if (!self::getValueBinder()->bindValue($this, $pValue)) { + throw new PHPExcel_Exception("Value could not be bound to cell."); + } + } + + // set default index to cellXf + $this->_xfIndex = 0; + } + + /** + * Get cell coordinate column + * + * @return string + */ + public function getColumn() + { + return $this->_column; + } + + /** + * Get cell coordinate row + * + * @return int + */ + public function getRow() + { + return $this->_row; + } + + /** + * Get cell coordinate + * + * @return string + */ + public function getCoordinate() + { + return $this->_column . $this->_row; + } + + /** + * Get cell value + * + * @return mixed + */ + public function getValue() + { + return $this->_value; + } + + /** + * Get cell value with formatting + * + * @return string + */ + public function getFormattedValue() + { + return (string) PHPExcel_Style_NumberFormat::toFormattedString( + $this->getCalculatedValue(), + $this->_parent->getParent()->getCellXfByIndex($this->getXfIndex()) + ->getNumberFormat()->getFormatCode() + ); + } + + /** + * Set cell value + * + * Sets the value for a cell, automatically determining the datatype using the value binder + * + * @param mixed $pValue Value + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function setValue($pValue = NULL) + { + if (!self::getValueBinder()->bindValue($this, $pValue)) { + throw new PHPExcel_Exception("Value could not be bound to cell."); + } + return $this; + } + + /** + * Set the value for a cell, with the explicit data type passed to the method (bypassing any use of the value binder) + * + * @param mixed $pValue Value + * @param string $pDataType Explicit data type + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function setValueExplicit($pValue = NULL, $pDataType = PHPExcel_Cell_DataType::TYPE_STRING) + { + // set the value according to data type + switch ($pDataType) { + case PHPExcel_Cell_DataType::TYPE_STRING2: + $pDataType = PHPExcel_Cell_DataType::TYPE_STRING; + case PHPExcel_Cell_DataType::TYPE_STRING: + case PHPExcel_Cell_DataType::TYPE_NULL: + case PHPExcel_Cell_DataType::TYPE_INLINE: + $this->_value = PHPExcel_Cell_DataType::checkString($pValue); + break; + case PHPExcel_Cell_DataType::TYPE_NUMERIC: + $this->_value = (float)$pValue; + break; + case PHPExcel_Cell_DataType::TYPE_FORMULA: + $this->_value = (string)$pValue; + break; + case PHPExcel_Cell_DataType::TYPE_BOOL: + $this->_value = (bool)$pValue; + break; + case PHPExcel_Cell_DataType::TYPE_ERROR: + $this->_value = PHPExcel_Cell_DataType::checkErrorCode($pValue); + break; + default: + throw new PHPExcel_Exception('Invalid datatype: ' . $pDataType); + break; + } + + // set the datatype + $this->_dataType = $pDataType; + + return $this->notifyCacheController(); + } + + /** + * Get calculated cell value + * + * @deprecated Since version 1.7.8 for planned changes to cell for array formula handling + * + * @return mixed + * @throws PHPExcel_Exception + */ + public function getCalculatedValue($resetLog = TRUE) + { +// echo 'Cell '.$this->getCoordinate().' value is a '.$this->_dataType.' with a value of '.$this->getValue().'<br />'; + if ($this->_dataType == PHPExcel_Cell_DataType::TYPE_FORMULA) { + try { +// echo 'Cell value for '.$this->getCoordinate().' is a formula: Calculating value<br />'; + $result = PHPExcel_Calculation::getInstance()->calculateCellValue($this,$resetLog); +// echo $this->getCoordinate().' calculation result is '.$result.'<br />'; + } catch ( Exception $ex ) { + if (($ex->getMessage() === 'Unable to access External Workbook') && ($this->_calculatedValue !== NULL)) { +// echo 'Returning fallback value of '.$this->_calculatedValue.' for cell '.$this->getCoordinate().'<br />'; + return $this->_calculatedValue; // Fallback for calculations referencing external files. + } +// echo 'Calculation Exception: '.$ex->getMessage().'<br />'; + $result = '#N/A'; + throw( + new PHPExcel_Exception( + $this->getParent()->getTitle().'!'.$this->getCoordinate().' -> '.$ex->getMessage() + ) + ); + } + + if ($result === '#Not Yet Implemented') { +// echo 'Returning fallback value of '.$this->_calculatedValue.' for cell '.$this->getCoordinate().'<br />'; + return $this->_calculatedValue; // Fallback if calculation engine does not support the formula. + } +// echo 'Returning calculated value of '.$result.' for cell '.$this->getCoordinate().'<br />'; + return $result; + } + +// if ($this->_value === NULL) { +// echo 'Cell '.$this->getCoordinate().' has no value, formula or otherwise<br />'; +// return NULL; +// } +// echo 'Cell value for '.$this->getCoordinate().' is not a formula: Returning data value of '.$this->_value.'<br />'; + return $this->_value; + } + + /** + * Set old calculated value (cached) + * + * @param mixed $pValue Value + * @return PHPExcel_Cell + */ + public function setCalculatedValue($pValue = NULL) + { + if ($pValue !== NULL) { + $this->_calculatedValue = (is_numeric($pValue)) ? (float) $pValue : $pValue; + } + + return $this->notifyCacheController(); + } + + /** + * Get old calculated value (cached) + * This returns the value last calculated by MS Excel or whichever spreadsheet program was used to + * create the original spreadsheet file. + * Note that this value is not guaranteed to refelect the actual calculated value because it is + * possible that auto-calculation was disabled in the original spreadsheet, and underlying data + * values used by the formula have changed since it was last calculated. + * + * @return mixed + */ + public function getOldCalculatedValue() + { + return $this->_calculatedValue; + } + + /** + * Get cell data type + * + * @return string + */ + public function getDataType() + { + return $this->_dataType; + } + + /** + * Set cell data type + * + * @param string $pDataType + * @return PHPExcel_Cell + */ + public function setDataType($pDataType = PHPExcel_Cell_DataType::TYPE_STRING) + { + if ($pDataType == PHPExcel_Cell_DataType::TYPE_STRING2) + $pDataType = PHPExcel_Cell_DataType::TYPE_STRING; + + $this->_dataType = $pDataType; + + return $this->notifyCacheController(); + } + + /** + * Does this cell contain Data validation rules? + * + * @return boolean + * @throws PHPExcel_Exception + */ + public function hasDataValidation() + { + if (!isset($this->_parent)) { + throw new PHPExcel_Exception('Cannot check for data validation when cell is not bound to a worksheet'); + } + + return $this->_parent->dataValidationExists($this->getCoordinate()); + } + + /** + * Get Data validation rules + * + * @return PHPExcel_Cell_DataValidation + * @throws PHPExcel_Exception + */ + public function getDataValidation() + { + if (!isset($this->_parent)) { + throw new PHPExcel_Exception('Cannot get data validation for cell that is not bound to a worksheet'); + } + + return $this->_parent->getDataValidation($this->getCoordinate()); + } + + /** + * Set Data validation rules + * + * @param PHPExcel_Cell_DataValidation $pDataValidation + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function setDataValidation(PHPExcel_Cell_DataValidation $pDataValidation = NULL) + { + if (!isset($this->_parent)) { + throw new PHPExcel_Exception('Cannot set data validation for cell that is not bound to a worksheet'); + } + + $this->_parent->setDataValidation($this->getCoordinate(), $pDataValidation); + + return $this->notifyCacheController(); + } + + /** + * Does this cell contain a Hyperlink? + * + * @return boolean + * @throws PHPExcel_Exception + */ + public function hasHyperlink() + { + if (!isset($this->_parent)) { + throw new PHPExcel_Exception('Cannot check for hyperlink when cell is not bound to a worksheet'); + } + + return $this->_parent->hyperlinkExists($this->getCoordinate()); + } + + /** + * Get Hyperlink + * + * @return PHPExcel_Cell_Hyperlink + * @throws PHPExcel_Exception + */ + public function getHyperlink() + { + if (!isset($this->_parent)) { + throw new PHPExcel_Exception('Cannot get hyperlink for cell that is not bound to a worksheet'); + } + + return $this->_parent->getHyperlink($this->getCoordinate()); + } + + /** + * Set Hyperlink + * + * @param PHPExcel_Cell_Hyperlink $pHyperlink + * @return PHPExcel_Cell + * @throws PHPExcel_Exception + */ + public function setHyperlink(PHPExcel_Cell_Hyperlink $pHyperlink = NULL) + { + if (!isset($this->_parent)) { + throw new PHPExcel_Exception('Cannot set hyperlink for cell that is not bound to a worksheet'); + } + + $this->_parent->setHyperlink($this->getCoordinate(), $pHyperlink); + + return $this->notifyCacheController(); + } + + /** + * Get parent worksheet + * + * @return PHPExcel_Worksheet + */ + public function getParent() { + return $this->_parent; + } + + /** + * Re-bind parent + * + * @param PHPExcel_Worksheet $parent + * @return PHPExcel_Cell + */ + public function rebindParent(PHPExcel_Worksheet $parent) { + $this->_parent = $parent; + + return $this->notifyCacheController(); + } + + /** + * Is cell in a specific range? + * + * @param string $pRange Cell range (e.g. A1:A1) + * @return boolean + */ + public function isInRange($pRange = 'A1:A1') + { + list($rangeStart,$rangeEnd) = self::rangeBoundaries($pRange); + + // Translate properties + $myColumn = self::columnIndexFromString($this->getColumn()); + $myRow = $this->getRow(); + + // Verify if cell is in range + return (($rangeStart[0] <= $myColumn) && ($rangeEnd[0] >= $myColumn) && + ($rangeStart[1] <= $myRow) && ($rangeEnd[1] >= $myRow) + ); + } + + /** + * Coordinate from string + * + * @param string $pCoordinateString + * @return array Array containing column and row (indexes 0 and 1) + * @throws PHPExcel_Exception + */ + public static function coordinateFromString($pCoordinateString = 'A1') + { + if (preg_match("/^([$]?[A-Z]{1,3})([$]?\d{1,7})$/", $pCoordinateString, $matches)) { + return array($matches[1],$matches[2]); + } elseif ((strpos($pCoordinateString,':') !== FALSE) || (strpos($pCoordinateString,',') !== FALSE)) { + throw new PHPExcel_Exception('Cell coordinate string can not be a range of cells'); + } elseif ($pCoordinateString == '') { + throw new PHPExcel_Exception('Cell coordinate can not be zero-length string'); + } + + throw new PHPExcel_Exception('Invalid cell coordinate '.$pCoordinateString); + } + + /** + * Make string row, column or cell coordinate absolute + * + * @param string $pCoordinateString e.g. 'A' or '1' or 'A1' + * Note that this value can be a row or column reference as well as a cell reference + * @return string Absolute coordinate e.g. '$A' or '$1' or '$A$1' + * @throws PHPExcel_Exception + */ + public static function absoluteReference($pCoordinateString = 'A1') + { + if (strpos($pCoordinateString,':') === FALSE && strpos($pCoordinateString,',') === FALSE) { + // Split out any worksheet name from the reference + $worksheet = ''; + $cellAddress = explode('!',$pCoordinateString); + if (count($cellAddress) > 1) { + list($worksheet,$pCoordinateString) = $cellAddress; + } + if ($worksheet > '') $worksheet .= '!'; + + // Create absolute coordinate + if (ctype_digit($pCoordinateString)) { + return $worksheet . '$' . $pCoordinateString; + } elseif (ctype_alpha($pCoordinateString)) { + return $worksheet . '$' . strtoupper($pCoordinateString); + } + return $worksheet . self::absoluteCoordinate($pCoordinateString); + } + + throw new PHPExcel_Exception('Cell coordinate string can not be a range of cells'); + } + + /** + * Make string coordinate absolute + * + * @param string $pCoordinateString e.g. 'A1' + * @return string Absolute coordinate e.g. '$A$1' + * @throws PHPExcel_Exception + */ + public static function absoluteCoordinate($pCoordinateString = 'A1') + { + if (strpos($pCoordinateString,':') === FALSE && strpos($pCoordinateString,',') === FALSE) { + // Split out any worksheet name from the coordinate + $worksheet = ''; + $cellAddress = explode('!',$pCoordinateString); + if (count($cellAddress) > 1) { + list($worksheet,$pCoordinateString) = $cellAddress; + } + if ($worksheet > '') $worksheet .= '!'; + + // Create absolute coordinate + list($column, $row) = self::coordinateFromString($pCoordinateString); + $column = ltrim($column,'$'); + $row = ltrim($row,'$'); + return $worksheet . '$' . $column . '$' . $row; + } + + throw new PHPExcel_Exception('Cell coordinate string can not be a range of cells'); + } + + /** + * Split range into coordinate strings + * + * @param string $pRange e.g. 'B4:D9' or 'B4:D9,H2:O11' or 'B4' + * @return array Array containg one or more arrays containing one or two coordinate strings + * e.g. array('B4','D9') or array(array('B4','D9'),array('H2','O11')) + * or array('B4') + */ + public static function splitRange($pRange = 'A1:A1') + { + // Ensure $pRange is a valid range + if(empty($pRange)) { + $pRange = self::DEFAULT_RANGE; + } + + $exploded = explode(',', $pRange); + $counter = count($exploded); + for ($i = 0; $i < $counter; ++$i) { + $exploded[$i] = explode(':', $exploded[$i]); + } + return $exploded; + } + + /** + * Build range from coordinate strings + * + * @param array $pRange Array containg one or more arrays containing one or two coordinate strings + * @return string String representation of $pRange + * @throws PHPExcel_Exception + */ + public static function buildRange($pRange) + { + // Verify range + if (!is_array($pRange) || empty($pRange) || !is_array($pRange[0])) { + throw new PHPExcel_Exception('Range does not contain any information'); + } + + // Build range + $imploded = array(); + $counter = count($pRange); + for ($i = 0; $i < $counter; ++$i) { + $pRange[$i] = implode(':', $pRange[$i]); + } + $imploded = implode(',', $pRange); + + return $imploded; + } + + /** + * Calculate range boundaries + * + * @param string $pRange Cell range (e.g. A1:A1) + * @return array Range coordinates array(Start Cell, End Cell) + * where Start Cell and End Cell are arrays (Column Number, Row Number) + */ + public static function rangeBoundaries($pRange = 'A1:A1') + { + // Ensure $pRange is a valid range + if(empty($pRange)) { + $pRange = self::DEFAULT_RANGE; + } + + // Uppercase coordinate + $pRange = strtoupper($pRange); + + // Extract range + if (strpos($pRange, ':') === FALSE) { + $rangeA = $rangeB = $pRange; + } else { + list($rangeA, $rangeB) = explode(':', $pRange); + } + + // Calculate range outer borders + $rangeStart = self::coordinateFromString($rangeA); + $rangeEnd = self::coordinateFromString($rangeB); + + // Translate column into index + $rangeStart[0] = self::columnIndexFromString($rangeStart[0]); + $rangeEnd[0] = self::columnIndexFromString($rangeEnd[0]); + + return array($rangeStart, $rangeEnd); + } + + /** + * Calculate range dimension + * + * @param string $pRange Cell range (e.g. A1:A1) + * @return array Range dimension (width, height) + */ + public static function rangeDimension($pRange = 'A1:A1') + { + // Calculate range outer borders + list($rangeStart,$rangeEnd) = self::rangeBoundaries($pRange); + + return array( ($rangeEnd[0] - $rangeStart[0] + 1), ($rangeEnd[1] - $rangeStart[1] + 1) ); + } + + /** + * Calculate range boundaries + * + * @param string $pRange Cell range (e.g. A1:A1) + * @return array Range coordinates array(Start Cell, End Cell) + * where Start Cell and End Cell are arrays (Column ID, Row Number) + */ + public static function getRangeBoundaries($pRange = 'A1:A1') + { + // Ensure $pRange is a valid range + if(empty($pRange)) { + $pRange = self::DEFAULT_RANGE; + } + + // Uppercase coordinate + $pRange = strtoupper($pRange); + + // Extract range + if (strpos($pRange, ':') === FALSE) { + $rangeA = $rangeB = $pRange; + } else { + list($rangeA, $rangeB) = explode(':', $pRange); + } + + return array( self::coordinateFromString($rangeA), self::coordinateFromString($rangeB)); + } + + /** + * Column index from string + * + * @param string $pString + * @return int Column index (base 1 !!!) + * @throws Exception + */ + public static function columnIndexFromString($pString = 'A') + { + // Using a lookup cache adds a slight memory overhead, but boosts speed + // caching using a static within the method is faster than a class static, + // though it's additional memory overhead + static $_indexCache = array(); + + if (isset($_indexCache[$pString])) + return $_indexCache[$pString]; + + // It's surprising how costly the strtoupper() and ord() calls actually are, so we use a lookup array rather than use ord() + // and make it case insensitive to get rid of the strtoupper() as well. Because it's a static, there's no significant + // memory overhead either + static $_columnLookup = array( + 'A' => 1, 'B' => 2, 'C' => 3, 'D' => 4, 'E' => 5, 'F' => 6, 'G' => 7, 'H' => 8, 'I' => 9, 'J' => 10, 'K' => 11, 'L' => 12, 'M' => 13, + 'N' => 14, 'O' => 15, 'P' => 16, 'Q' => 17, 'R' => 18, 'S' => 19, 'T' => 20, 'U' => 21, 'V' => 22, 'W' => 23, 'X' => 24, 'Y' => 25, 'Z' => 26, + 'a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5, 'f' => 6, 'g' => 7, 'h' => 8, 'i' => 9, 'j' => 10, 'k' => 11, 'l' => 12, 'm' => 13, + 'n' => 14, 'o' => 15, 'p' => 16, 'q' => 17, 'r' => 18, 's' => 19, 't' => 20, 'u' => 21, 'v' => 22, 'w' => 23, 'x' => 24, 'y' => 25, 'z' => 26 + ); + + // We also use the language construct isset() rather than the more costly strlen() function to match the length of $pString + // for improved performance + if (isset($pString{0})) { + if (!isset($pString{1})) { + $_indexCache[$pString] = $_columnLookup[$pString]; + return $_indexCache[$pString]; + } elseif(!isset($pString{2})) { + $_indexCache[$pString] = $_columnLookup[$pString{0}] * 26 + $_columnLookup[$pString{1}]; + return $_indexCache[$pString]; + } elseif(!isset($pString{3})) { + $_indexCache[$pString] = $_columnLookup[$pString{0}] * 676 + $_columnLookup[$pString{1}] * 26 + $_columnLookup[$pString{2}]; + return $_indexCache[$pString]; + } + } + throw new PHPExcel_Exception("Column string index can not be " . ((isset($pString{0})) ? "longer than 3 characters" : "empty")); + } + + /** + * String from columnindex + * + * @param int $pColumnIndex Column index (base 0 !!!) + * @return string + */ + public static function stringFromColumnIndex($pColumnIndex = 0) + { + // Using a lookup cache adds a slight memory overhead, but boosts speed + // caching using a static within the method is faster than a class static, + // though it's additional memory overhead + static $_indexCache = array(); + + if (!isset($_indexCache[$pColumnIndex])) { + // Determine column string + if ($pColumnIndex < 26) { + $_indexCache[$pColumnIndex] = chr(65 + $pColumnIndex); + } elseif ($pColumnIndex < 702) { + $_indexCache[$pColumnIndex] = chr(64 + ($pColumnIndex / 26)) . + chr(65 + $pColumnIndex % 26); + } else { + $_indexCache[$pColumnIndex] = chr(64 + (($pColumnIndex - 26) / 676)) . + chr(65 + ((($pColumnIndex - 26) % 676) / 26)) . + chr(65 + $pColumnIndex % 26); + } + } + return $_indexCache[$pColumnIndex]; + } + + /** + * Extract all cell references in range + * + * @param string $pRange Range (e.g. A1 or A1:C10 or A1:E10 A20:E25) + * @return array Array containing single cell references + */ + public static function extractAllCellReferencesInRange($pRange = 'A1') { + // Returnvalue + $returnValue = array(); + + // Explode spaces + $cellBlocks = explode(' ', str_replace('$', '', strtoupper($pRange))); + foreach ($cellBlocks as $cellBlock) { + // Single cell? + if (strpos($cellBlock,':') === FALSE && strpos($cellBlock,',') === FALSE) { + $returnValue[] = $cellBlock; + continue; + } + + // Range... + $ranges = self::splitRange($cellBlock); + foreach($ranges as $range) { + // Single cell? + if (!isset($range[1])) { + $returnValue[] = $range[0]; + continue; + } + + // Range... + list($rangeStart, $rangeEnd) = $range; + list($startCol, $startRow) = sscanf($rangeStart,'%[A-Z]%d'); + list($endCol, $endRow) = sscanf($rangeEnd,'%[A-Z]%d'); + $endCol++; + + // Current data + $currentCol = $startCol; + $currentRow = $startRow; + + // Loop cells + while ($currentCol != $endCol) { + while ($currentRow <= $endRow) { + $returnValue[] = $currentCol.$currentRow; + ++$currentRow; + } + ++$currentCol; + $currentRow = $startRow; + } + } + } + + // Sort the result by column and row + $sortKeys = array(); + foreach (array_unique($returnValue) as $coord) { + list($column,$row) = sscanf($coord,'%[A-Z]%d'); + $sortKeys[sprintf('%3s%09d',$column,$row)] = $coord; + } + ksort($sortKeys); + + // Return value + return array_values($sortKeys); + } + + /** + * Compare 2 cells + * + * @param PHPExcel_Cell $a Cell a + * @param PHPExcel_Cell $a Cell b + * @return int Result of comparison (always -1 or 1, never zero!) + */ + public static function compareCells(PHPExcel_Cell $a, PHPExcel_Cell $b) + { + if ($a->_row < $b->_row) { + return -1; + } elseif ($a->_row > $b->_row) { + return 1; + } elseif (self::columnIndexFromString($a->_column) < self::columnIndexFromString($b->_column)) { + return -1; + } else { + return 1; + } + } + + /** + * Get value binder to use + * + * @return PHPExcel_Cell_IValueBinder + */ + public static function getValueBinder() { + if (self::$_valueBinder === NULL) { + self::$_valueBinder = new PHPExcel_Cell_DefaultValueBinder(); + } + + return self::$_valueBinder; + } + + /** + * Set value binder to use + * + * @param PHPExcel_Cell_IValueBinder $binder + * @throws Exception + */ + public static function setValueBinder(PHPExcel_Cell_IValueBinder $binder = NULL) { + if ($binder === NULL) { + throw new Exception("A PHPExcel_Cell_IValueBinder is required for PHPExcel to function correctly."); + } + + self::$_valueBinder = $binder; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } + + /** + * Get index to cellXf + * + * @return int + */ + public function getXfIndex() + { + return $this->_xfIndex; + } + + /** + * Set index to cellXf + * + * @param int $pValue + * @return PHPExcel_Cell + */ + public function setXfIndex($pValue = 0) + { + $this->_xfIndex = $pValue; + + return $this->notifyCacheController(); + } + + /** + * @deprecated Since version 1.7.8 for planned changes to cell for array formula handling + */ + public function setFormulaAttributes($pAttributes) + { + $this->_formulaAttributes = $pAttributes; + return $this; + } + + /** + * @deprecated Since version 1.7.8 for planned changes to cell for array formula handling + */ + public function getFormulaAttributes() + { + return $this->_formulaAttributes; + } + + /** + * Convert to string + * + * @return string + */ + public function __toString() + { + return (string) $this->getValue(); + } + +} + diff --git a/site/config/PHPExcel/Classes/PHPExcel/Cell/AdvancedValueBinder.php b/site/config/PHPExcel/Classes/PHPExcel/Cell/AdvancedValueBinder.php new file mode 100644 index 0000000..3603f5e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Cell/AdvancedValueBinder.php @@ -0,0 +1,190 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** + * PHPExcel_Cell_AdvancedValueBinder + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Cell_AdvancedValueBinder extends PHPExcel_Cell_DefaultValueBinder implements PHPExcel_Cell_IValueBinder +{ + /** + * Bind value to a cell + * + * @param PHPExcel_Cell $cell Cell to bind value to + * @param mixed $value Value to bind in cell + * @return boolean + */ + public function bindValue(PHPExcel_Cell $cell, $value = null) + { + // sanitize UTF-8 strings + if (is_string($value)) { + $value = PHPExcel_Shared_String::SanitizeUTF8($value); + } + + // Find out data type + $dataType = parent::dataTypeForValue($value); + + // Style logic - strings + if ($dataType === PHPExcel_Cell_DataType::TYPE_STRING && !$value instanceof PHPExcel_RichText) { + // Test for booleans using locale-setting + if ($value == PHPExcel_Calculation::getTRUE()) { + $cell->setValueExplicit( TRUE, PHPExcel_Cell_DataType::TYPE_BOOL); + return true; + } elseif($value == PHPExcel_Calculation::getFALSE()) { + $cell->setValueExplicit( FALSE, PHPExcel_Cell_DataType::TYPE_BOOL); + return true; + } + + // Check for number in scientific format + if (preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_NUMBER.'$/', $value)) { + $cell->setValueExplicit( (float) $value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + return true; + } + + // Check for fraction + if (preg_match('/^([+-]?) *([0-9]*)\s?\/\s*([0-9]*)$/', $value, $matches)) { + // Convert value to number + $value = $matches[2] / $matches[3]; + if ($matches[1] == '-') $value = 0 - $value; + $cell->setValueExplicit( (float) $value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getParent()->getStyle( $cell->getCoordinate() ) + ->getNumberFormat()->setFormatCode( '??/??' ); + return true; + } elseif (preg_match('/^([+-]?)([0-9]*) +([0-9]*)\s?\/\s*([0-9]*)$/', $value, $matches)) { + // Convert value to number + $value = $matches[2] + ($matches[3] / $matches[4]); + if ($matches[1] == '-') $value = 0 - $value; + $cell->setValueExplicit( (float) $value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getParent()->getStyle( $cell->getCoordinate() ) + ->getNumberFormat()->setFormatCode( '# ??/??' ); + return true; + } + + // Check for percentage + if (preg_match('/^\-?[0-9]*\.?[0-9]*\s?\%$/', $value)) { + // Convert value to number + $value = (float) str_replace('%', '', $value) / 100; + $cell->setValueExplicit( $value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getParent()->getStyle( $cell->getCoordinate() ) + ->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE_00 ); + return true; + } + + // Check for currency + $currencyCode = PHPExcel_Shared_String::getCurrencyCode(); + if (preg_match('/^'.preg_quote($currencyCode).' *(\d{1,3}(\,\d{3})*|(\d+))(\.\d{2})?$/', $value)) { + // Convert value to number + $value = (float) trim(str_replace(array($currencyCode,','), '', $value)); + $cell->setValueExplicit( $value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getParent()->getStyle( $cell->getCoordinate() ) + ->getNumberFormat()->setFormatCode( + str_replace('$', $currencyCode, PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE ) + ); + return true; + } elseif (preg_match('/^\$ *(\d{1,3}(\,\d{3})*|(\d+))(\.\d{2})?$/', $value)) { + // Convert value to number + $value = (float) trim(str_replace(array('$',','), '', $value)); + $cell->setValueExplicit( $value, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getParent()->getStyle( $cell->getCoordinate() ) + ->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE ); + return true; + } + + // Check for time without seconds e.g. '9:45', '09:45' + if (preg_match('/^(\d|[0-1]\d|2[0-3]):[0-5]\d$/', $value)) { + // Convert value to number + list($h, $m) = explode(':', $value); + $days = $h / 24 + $m / 1440; + $cell->setValueExplicit($days, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getParent()->getStyle( $cell->getCoordinate() ) + ->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME3 ); + return true; + } + + // Check for time with seconds '9:45:59', '09:45:59' + if (preg_match('/^(\d|[0-1]\d|2[0-3]):[0-5]\d:[0-5]\d$/', $value)) { + // Convert value to number + list($h, $m, $s) = explode(':', $value); + $days = $h / 24 + $m / 1440 + $s / 86400; + // Convert value to number + $cell->setValueExplicit($days, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Set style + $cell->getParent()->getStyle( $cell->getCoordinate() ) + ->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4 ); + return true; + } + + // Check for datetime, e.g. '2008-12-31', '2008-12-31 15:59', '2008-12-31 15:59:10' + if (($d = PHPExcel_Shared_Date::stringToExcel($value)) !== false) { + // Convert value to number + $cell->setValueExplicit($d, PHPExcel_Cell_DataType::TYPE_NUMERIC); + // Determine style. Either there is a time part or not. Look for ':' + if (strpos($value, ':') !== false) { + $formatCode = 'yyyy-mm-dd h:mm'; + } else { + $formatCode = 'yyyy-mm-dd'; + } + $cell->getParent()->getStyle( $cell->getCoordinate() ) + ->getNumberFormat()->setFormatCode($formatCode); + return true; + } + + // Check for newline character "\n" + if (strpos($value, "\n") !== FALSE) { + $value = PHPExcel_Shared_String::SanitizeUTF8($value); + $cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_STRING); + // Set style + $cell->getParent()->getStyle( $cell->getCoordinate() ) + ->getAlignment()->setWrapText(TRUE); + return true; + } + } + + // Not bound yet? Use parent... + return parent::bindValue($cell, $value); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Cell/DataType.php b/site/config/PHPExcel/Classes/PHPExcel/Cell/DataType.php new file mode 100644 index 0000000..a833a5a --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Cell/DataType.php @@ -0,0 +1,114 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Cell_DataType + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Cell_DataType +{ + /* Data types */ + const TYPE_STRING2 = 'str'; + const TYPE_STRING = 's'; + const TYPE_FORMULA = 'f'; + const TYPE_NUMERIC = 'n'; + const TYPE_BOOL = 'b'; + const TYPE_NULL = 'null'; + const TYPE_INLINE = 'inlineStr'; + const TYPE_ERROR = 'e'; + + /** + * List of error codes + * + * @var array + */ + private static $_errorCodes = array('#NULL!' => 0, '#DIV/0!' => 1, '#VALUE!' => 2, '#REF!' => 3, '#NAME?' => 4, '#NUM!' => 5, '#N/A' => 6); + + /** + * Get list of error codes + * + * @return array + */ + public static function getErrorCodes() { + return self::$_errorCodes; + } + + /** + * DataType for value + * + * @deprecated Replaced by PHPExcel_Cell_IValueBinder infrastructure + * @param mixed $pValue + * @return int + */ + public static function dataTypeForValue($pValue = null) { + return PHPExcel_Cell_DefaultValueBinder::dataTypeForValue($pValue); + } + + /** + * Check a string that it satisfies Excel requirements + * + * @param mixed Value to sanitize to an Excel string + * @return mixed Sanitized value + */ + public static function checkString($pValue = null) + { + if ($pValue instanceof PHPExcel_RichText) { + // TODO: Sanitize Rich-Text string (max. character count is 32,767) + return $pValue; + } + + // string must never be longer than 32,767 characters, truncate if necessary + $pValue = PHPExcel_Shared_String::Substring($pValue, 0, 32767); + + // we require that newline is represented as "\n" in core, not as "\r\n" or "\r" + $pValue = str_replace(array("\r\n", "\r"), "\n", $pValue); + + return $pValue; + } + + /** + * Check a value that it is a valid error code + * + * @param mixed Value to sanitize to an Excel error code + * @return string Sanitized value + */ + public static function checkErrorCode($pValue = null) + { + $pValue = (string)$pValue; + + if ( !array_key_exists($pValue, self::$_errorCodes) ) { + $pValue = '#NULL!'; + } + + return $pValue; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Cell/DataValidation.php b/site/config/PHPExcel/Classes/PHPExcel/Cell/DataValidation.php new file mode 100644 index 0000000..01b1edb --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Cell/DataValidation.php @@ -0,0 +1,474 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Cell_DataValidation + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Cell_DataValidation +{ + /* Data validation types */ + const TYPE_NONE = 'none'; + const TYPE_CUSTOM = 'custom'; + const TYPE_DATE = 'date'; + const TYPE_DECIMAL = 'decimal'; + const TYPE_LIST = 'list'; + const TYPE_TEXTLENGTH = 'textLength'; + const TYPE_TIME = 'time'; + const TYPE_WHOLE = 'whole'; + + /* Data validation error styles */ + const STYLE_STOP = 'stop'; + const STYLE_WARNING = 'warning'; + const STYLE_INFORMATION = 'information'; + + /* Data validation operators */ + const OPERATOR_BETWEEN = 'between'; + const OPERATOR_EQUAL = 'equal'; + const OPERATOR_GREATERTHAN = 'greaterThan'; + const OPERATOR_GREATERTHANOREQUAL = 'greaterThanOrEqual'; + const OPERATOR_LESSTHAN = 'lessThan'; + const OPERATOR_LESSTHANOREQUAL = 'lessThanOrEqual'; + const OPERATOR_NOTBETWEEN = 'notBetween'; + const OPERATOR_NOTEQUAL = 'notEqual'; + + /** + * Formula 1 + * + * @var string + */ + private $_formula1; + + /** + * Formula 2 + * + * @var string + */ + private $_formula2; + + /** + * Type + * + * @var string + */ + private $_type = PHPExcel_Cell_DataValidation::TYPE_NONE; + + /** + * Error style + * + * @var string + */ + private $_errorStyle = PHPExcel_Cell_DataValidation::STYLE_STOP; + + /** + * Operator + * + * @var string + */ + private $_operator; + + /** + * Allow Blank + * + * @var boolean + */ + private $_allowBlank; + + /** + * Show DropDown + * + * @var boolean + */ + private $_showDropDown; + + /** + * Show InputMessage + * + * @var boolean + */ + private $_showInputMessage; + + /** + * Show ErrorMessage + * + * @var boolean + */ + private $_showErrorMessage; + + /** + * Error title + * + * @var string + */ + private $_errorTitle; + + /** + * Error + * + * @var string + */ + private $_error; + + /** + * Prompt title + * + * @var string + */ + private $_promptTitle; + + /** + * Prompt + * + * @var string + */ + private $_prompt; + + /** + * Create a new PHPExcel_Cell_DataValidation + * + * @throws Exception + */ + public function __construct() + { + // Initialise member variables + $this->_formula1 = ''; + $this->_formula2 = ''; + $this->_type = PHPExcel_Cell_DataValidation::TYPE_NONE; + $this->_errorStyle = PHPExcel_Cell_DataValidation::STYLE_STOP; + $this->_operator = ''; + $this->_allowBlank = false; + $this->_showDropDown = false; + $this->_showInputMessage = false; + $this->_showErrorMessage = false; + $this->_errorTitle = ''; + $this->_error = ''; + $this->_promptTitle = ''; + $this->_prompt = ''; + } + + /** + * Get Formula 1 + * + * @return string + */ + public function getFormula1() { + return $this->_formula1; + } + + /** + * Set Formula 1 + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setFormula1($value = '') { + $this->_formula1 = $value; + return $this; + } + + /** + * Get Formula 2 + * + * @return string + */ + public function getFormula2() { + return $this->_formula2; + } + + /** + * Set Formula 2 + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setFormula2($value = '') { + $this->_formula2 = $value; + return $this; + } + + /** + * Get Type + * + * @return string + */ + public function getType() { + return $this->_type; + } + + /** + * Set Type + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setType($value = PHPExcel_Cell_DataValidation::TYPE_NONE) { + $this->_type = $value; + return $this; + } + + /** + * Get Error style + * + * @return string + */ + public function getErrorStyle() { + return $this->_errorStyle; + } + + /** + * Set Error style + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setErrorStyle($value = PHPExcel_Cell_DataValidation::STYLE_STOP) { + $this->_errorStyle = $value; + return $this; + } + + /** + * Get Operator + * + * @return string + */ + public function getOperator() { + return $this->_operator; + } + + /** + * Set Operator + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setOperator($value = '') { + $this->_operator = $value; + return $this; + } + + /** + * Get Allow Blank + * + * @return boolean + */ + public function getAllowBlank() { + return $this->_allowBlank; + } + + /** + * Set Allow Blank + * + * @param boolean $value + * @return PHPExcel_Cell_DataValidation + */ + public function setAllowBlank($value = false) { + $this->_allowBlank = $value; + return $this; + } + + /** + * Get Show DropDown + * + * @return boolean + */ + public function getShowDropDown() { + return $this->_showDropDown; + } + + /** + * Set Show DropDown + * + * @param boolean $value + * @return PHPExcel_Cell_DataValidation + */ + public function setShowDropDown($value = false) { + $this->_showDropDown = $value; + return $this; + } + + /** + * Get Show InputMessage + * + * @return boolean + */ + public function getShowInputMessage() { + return $this->_showInputMessage; + } + + /** + * Set Show InputMessage + * + * @param boolean $value + * @return PHPExcel_Cell_DataValidation + */ + public function setShowInputMessage($value = false) { + $this->_showInputMessage = $value; + return $this; + } + + /** + * Get Show ErrorMessage + * + * @return boolean + */ + public function getShowErrorMessage() { + return $this->_showErrorMessage; + } + + /** + * Set Show ErrorMessage + * + * @param boolean $value + * @return PHPExcel_Cell_DataValidation + */ + public function setShowErrorMessage($value = false) { + $this->_showErrorMessage = $value; + return $this; + } + + /** + * Get Error title + * + * @return string + */ + public function getErrorTitle() { + return $this->_errorTitle; + } + + /** + * Set Error title + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setErrorTitle($value = '') { + $this->_errorTitle = $value; + return $this; + } + + /** + * Get Error + * + * @return string + */ + public function getError() { + return $this->_error; + } + + /** + * Set Error + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setError($value = '') { + $this->_error = $value; + return $this; + } + + /** + * Get Prompt title + * + * @return string + */ + public function getPromptTitle() { + return $this->_promptTitle; + } + + /** + * Set Prompt title + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setPromptTitle($value = '') { + $this->_promptTitle = $value; + return $this; + } + + /** + * Get Prompt + * + * @return string + */ + public function getPrompt() { + return $this->_prompt; + } + + /** + * Set Prompt + * + * @param string $value + * @return PHPExcel_Cell_DataValidation + */ + public function setPrompt($value = '') { + $this->_prompt = $value; + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + return md5( + $this->_formula1 + . $this->_formula2 + . $this->_type = PHPExcel_Cell_DataValidation::TYPE_NONE + . $this->_errorStyle = PHPExcel_Cell_DataValidation::STYLE_STOP + . $this->_operator + . ($this->_allowBlank ? 't' : 'f') + . ($this->_showDropDown ? 't' : 'f') + . ($this->_showInputMessage ? 't' : 'f') + . ($this->_showErrorMessage ? 't' : 'f') + . $this->_errorTitle + . $this->_error + . $this->_promptTitle + . $this->_prompt + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Cell/DefaultValueBinder.php b/site/config/PHPExcel/Classes/PHPExcel/Cell/DefaultValueBinder.php new file mode 100644 index 0000000..f520cc5 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Cell/DefaultValueBinder.php @@ -0,0 +1,106 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/** + * PHPExcel_Cell_DefaultValueBinder + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Cell_DefaultValueBinder implements PHPExcel_Cell_IValueBinder +{ + /** + * Bind value to a cell + * + * @param PHPExcel_Cell $cell Cell to bind value to + * @param mixed $value Value to bind in cell + * @return boolean + */ + public function bindValue(PHPExcel_Cell $cell, $value = null) + { + // sanitize UTF-8 strings + if (is_string($value)) { + $value = PHPExcel_Shared_String::SanitizeUTF8($value); + } + + // Set value explicit + $cell->setValueExplicit( $value, self::dataTypeForValue($value) ); + + // Done! + return true; + } + + /** + * DataType for value + * + * @param mixed $pValue + * @return int + */ + public static function dataTypeForValue($pValue = null) { + // Match the value against a few data types + if (is_null($pValue)) { + return PHPExcel_Cell_DataType::TYPE_NULL; + + } elseif ($pValue === '') { + return PHPExcel_Cell_DataType::TYPE_STRING; + + } elseif ($pValue instanceof PHPExcel_RichText) { + return PHPExcel_Cell_DataType::TYPE_INLINE; + + } elseif ($pValue{0} === '=' && strlen($pValue) > 1) { + return PHPExcel_Cell_DataType::TYPE_FORMULA; + + } elseif (is_bool($pValue)) { + return PHPExcel_Cell_DataType::TYPE_BOOL; + + } elseif (is_float($pValue) || is_int($pValue)) { + return PHPExcel_Cell_DataType::TYPE_NUMERIC; + + } elseif (preg_match('/^\-?([0-9]+\\.?[0-9]*|[0-9]*\\.?[0-9]+)$/', $pValue)) { + return PHPExcel_Cell_DataType::TYPE_NUMERIC; + + } elseif (is_string($pValue) && array_key_exists($pValue, PHPExcel_Cell_DataType::getErrorCodes())) { + return PHPExcel_Cell_DataType::TYPE_ERROR; + + } else { + return PHPExcel_Cell_DataType::TYPE_STRING; + + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Cell/Hyperlink.php b/site/config/PHPExcel/Classes/PHPExcel/Cell/Hyperlink.php new file mode 100644 index 0000000..9dc1304 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Cell/Hyperlink.php @@ -0,0 +1,127 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Cell_Hyperlink + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Cell_Hyperlink +{ + /** + * URL to link the cell to + * + * @var string + */ + private $_url; + + /** + * Tooltip to display on the hyperlink + * + * @var string + */ + private $_tooltip; + + /** + * Create a new PHPExcel_Cell_Hyperlink + * + * @param string $pUrl Url to link the cell to + * @param string $pTooltip Tooltip to display on the hyperlink + * @throws Exception + */ + public function __construct($pUrl = '', $pTooltip = '') + { + // Initialise member variables + $this->_url = $pUrl; + $this->_tooltip = $pTooltip; + } + + /** + * Get URL + * + * @return string + */ + public function getUrl() { + return $this->_url; + } + + /** + * Set URL + * + * @param string $value + * @return PHPExcel_Cell_Hyperlink + */ + public function setUrl($value = '') { + $this->_url = $value; + return $this; + } + + /** + * Get tooltip + * + * @return string + */ + public function getTooltip() { + return $this->_tooltip; + } + + /** + * Set tooltip + * + * @param string $value + * @return PHPExcel_Cell_Hyperlink + */ + public function setTooltip($value = '') { + $this->_tooltip = $value; + return $this; + } + + /** + * Is this hyperlink internal? (to another sheet) + * + * @return boolean + */ + public function isInternal() { + return strpos($this->_url, 'sheet://') !== false; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + return md5( + $this->_url + . $this->_tooltip + . __CLASS__ + ); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Cell/IValueBinder.php b/site/config/PHPExcel/Classes/PHPExcel/Cell/IValueBinder.php new file mode 100644 index 0000000..4070b67 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Cell/IValueBinder.php @@ -0,0 +1,46 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Cell_IValueBinder + * + * @category PHPExcel + * @package PHPExcel_Cell + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +interface PHPExcel_Cell_IValueBinder +{ + /** + * Bind value to a cell + * + * @param PHPExcel_Cell $cell Cell to bind value to + * @param mixed $value Value to bind in cell + * @return boolean + */ + public function bindValue(PHPExcel_Cell $cell, $value = null); +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Cell/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Cell/_notes/dwsync.xml new file mode 100644 index 0000000..929b720 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Cell/_notes/dwsync.xml @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="AdvancedValueBinder.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="DataType.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="DataValidation.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="DefaultValueBinder.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Hyperlink.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="IValueBinder.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="DataValidation.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="DefaultValueBinder.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="Hyperlink.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="AdvancedValueBinder.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="IValueBinder.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="DataType.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851449999999" remote="129984143400000000" Dst="-1" /> +<file name="DataValidation.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="DefaultValueBinder.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="Hyperlink.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="AdvancedValueBinder.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="IValueBinder.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="DataType.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851449999999" remote="129997098600000000" Dst="-1" /> +<file name="DataValidation.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559906144221" remote="131260196400000000" Dst="1" /> +<file name="DefaultValueBinder.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559906660615" remote="131260196400000000" Dst="1" /> +<file name="Hyperlink.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559907087074" remote="131260196400000000" Dst="1" /> +<file name="AdvancedValueBinder.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559907542383" remote="131260196400000000" Dst="1" /> +<file name="IValueBinder.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559907955897" remote="131260196400000000" Dst="1" /> +<file name="DataType.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559908404385" remote="131260196400000000" Dst="1" /> +<file name="DataValidation.php" server="62.244.88.21/amashow/" local="131414752220626412" remote="131414680800000000" Dst="2" /> +<file name="DefaultValueBinder.php" server="62.244.88.21/amashow/" local="131414752220818981" remote="131414680800000000" Dst="2" /> +<file name="Hyperlink.php" server="62.244.88.21/amashow/" local="131414752221223046" remote="131414680800000000" Dst="2" /> +<file name="AdvancedValueBinder.php" server="62.244.88.21/amashow/" local="131414752221584422" remote="131414680800000000" Dst="2" /> +<file name="IValueBinder.php" server="62.244.88.21/amashow/" local="131414752221998048" remote="131414680800000000" Dst="2" /> +<file name="DataType.php" server="62.244.88.21/amashow/" local="131414752222195451" remote="131414680800000000" Dst="2" /> +<file name="AdvancedValueBinder.php" server="62.244.88.21/deciday/" local="131919461221359881" remote="131826017400000000" Dst="1" /> +<file name="DefaultValueBinder.php" server="62.244.88.21/deciday/" local="131919461222553213" remote="131826017400000000" Dst="1" /> +<file name="IValueBinder.php" server="62.244.88.21/deciday/" local="131919461223400587" remote="131826017400000000" Dst="1" /> +<file name="DataType.php" server="62.244.88.21/deciday/" local="131919461221163070" remote="131826017400000000" Dst="1" /> +<file name="DataValidation.php" server="62.244.88.21/deciday/" local="131919461222545002" remote="131826017400000000" Dst="1" /> +<file name="Hyperlink.php" server="62.244.88.21/deciday/" local="131919461225828239" remote="131826017400000000" Dst="1" /> +<file name="AdvancedValueBinder.php" server="62.244.88.21/deciday_18/" local="131414752221584422" remote="131825945400000000" Dst="2" /> +<file name="DataType.php" server="62.244.88.21/deciday_18/" local="131414752222195451" remote="131825945400000000" Dst="2" /> +<file name="DataValidation.php" server="62.244.88.21/deciday_18/" local="131414752220626412" remote="131825945400000000" Dst="2" /> +<file name="DefaultValueBinder.php" server="62.244.88.21/deciday_18/" local="131414752220818981" remote="131825945400000000" Dst="2" /> +<file name="Hyperlink.php" server="62.244.88.21/deciday_18/" local="131414752221223046" remote="131825945400000000" Dst="2" /> +<file name="IValueBinder.php" server="62.244.88.21/deciday_18/" local="131414752221998048" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart.php b/site/config/PHPExcel/Classes/PHPExcel/Chart.php new file mode 100644 index 0000000..4fa4cdd --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart.php @@ -0,0 +1,527 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Chart + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Chart +{ + /** + * Chart Name + * + * @var string + */ + private $_name = ''; + + /** + * Worksheet + * + * @var PHPExcel_Worksheet + */ + private $_worksheet = null; + + /** + * Chart Title + * + * @var PHPExcel_Chart_Title + */ + private $_title = null; + + /** + * Chart Legend + * + * @var PHPExcel_Chart_Legend + */ + private $_legend = null; + + /** + * X-Axis Label + * + * @var PHPExcel_Chart_Title + */ + private $_xAxisLabel = null; + + /** + * Y-Axis Label + * + * @var PHPExcel_Chart_Title + */ + private $_yAxisLabel = null; + + /** + * Chart Plot Area + * + * @var PHPExcel_Chart_PlotArea + */ + private $_plotArea = null; + + /** + * Plot Visible Only + * + * @var boolean + */ + private $_plotVisibleOnly = true; + + /** + * Display Blanks as + * + * @var string + */ + private $_displayBlanksAs = '0'; + + + /** + * Top-Left Cell Position + * + * @var string + */ + private $_topLeftCellRef = 'A1'; + + + /** + * Top-Left X-Offset + * + * @var integer + */ + private $_topLeftXOffset = 0; + + + /** + * Top-Left Y-Offset + * + * @var integer + */ + private $_topLeftYOffset = 0; + + + /** + * Bottom-Right Cell Position + * + * @var string + */ + private $_bottomRightCellRef = 'A1'; + + + /** + * Bottom-Right X-Offset + * + * @var integer + */ + private $_bottomRightXOffset = 10; + + + /** + * Bottom-Right Y-Offset + * + * @var integer + */ + private $_bottomRightYOffset = 10; + + + /** + * Create a new PHPExcel_Chart + */ + public function __construct($name, PHPExcel_Chart_Title $title = null, PHPExcel_Chart_Legend $legend = null, PHPExcel_Chart_PlotArea $plotArea = null, $plotVisibleOnly = true, $displayBlanksAs = '0', PHPExcel_Chart_Title $xAxisLabel = null, PHPExcel_Chart_Title $yAxisLabel = null) + { + $this->_name = $name; + $this->_title = $title; + $this->_legend = $legend; + $this->_xAxisLabel = $xAxisLabel; + $this->_yAxisLabel = $yAxisLabel; + $this->_plotArea = $plotArea; + $this->_plotVisibleOnly = $plotVisibleOnly; + $this->_displayBlanksAs = $displayBlanksAs; + } + + /** + * Get Name + * + * @return string + */ + public function getName() { + return $this->_name; + } + + /** + * Get Worksheet + * + * @return PHPExcel_Worksheet + */ + public function getWorksheet() { + return $this->_worksheet; + } + + /** + * Set Worksheet + * + * @param PHPExcel_Worksheet $pValue + * @throws Exception + * @return PHPExcel_Chart + */ + public function setWorksheet(PHPExcel_Worksheet $pValue = null) { + $this->_worksheet = $pValue; + + return $this; + } + + /** + * Get Title + * + * @return PHPExcel_Chart_Title + */ + public function getTitle() { + return $this->_title; + } + + /** + * Set Title + * + * @param PHPExcel_Chart_Title $title + * @return PHPExcel_Chart + */ + public function setTitle(PHPExcel_Chart_Title $title) { + $this->_title = $title; + + return $this; + } + + /** + * Get Legend + * + * @return PHPExcel_Chart_Legend + */ + public function getLegend() { + return $this->_legend; + } + + /** + * Set Legend + * + * @param PHPExcel_Chart_Legend $legend + * @return PHPExcel_Chart + */ + public function setLegend(PHPExcel_Chart_Legend $legend) { + $this->_legend = $legend; + + return $this; + } + + /** + * Get X-Axis Label + * + * @return PHPExcel_Chart_Title + */ + public function getXAxisLabel() { + return $this->_xAxisLabel; + } + + /** + * Set X-Axis Label + * + * @param PHPExcel_Chart_Title $label + * @return PHPExcel_Chart + */ + public function setXAxisLabel(PHPExcel_Chart_Title $label) { + $this->_xAxisLabel = $label; + + return $this; + } + + /** + * Get Y-Axis Label + * + * @return PHPExcel_Chart_Title + */ + public function getYAxisLabel() { + return $this->_yAxisLabel; + } + + /** + * Set Y-Axis Label + * + * @param PHPExcel_Chart_Title $label + * @return PHPExcel_Chart + */ + public function setYAxisLabel(PHPExcel_Chart_Title $label) { + $this->_yAxisLabel = $label; + + return $this; + } + + /** + * Get Plot Area + * + * @return PHPExcel_Chart_PlotArea + */ + public function getPlotArea() { + return $this->_plotArea; + } + + /** + * Get Plot Visible Only + * + * @return boolean + */ + public function getPlotVisibleOnly() { + return $this->_plotVisibleOnly; + } + + /** + * Set Plot Visible Only + * + * @param boolean $plotVisibleOnly + * @return PHPExcel_Chart + */ + public function setPlotVisibleOnly($plotVisibleOnly = true) { + $this->_plotVisibleOnly = $plotVisibleOnly; + + return $this; + } + + /** + * Get Display Blanks as + * + * @return string + */ + public function getDisplayBlanksAs() { + return $this->_displayBlanksAs; + } + + /** + * Set Display Blanks as + * + * @param string $displayBlanksAs + * @return PHPExcel_Chart + */ + public function setDisplayBlanksAs($displayBlanksAs = '0') { + $this->_displayBlanksAs = $displayBlanksAs; + } + + + /** + * Set the Top Left position for the chart + * + * @param string $cell + * @param integer $xOffset + * @param integer $yOffset + * @return PHPExcel_Chart + */ + public function setTopLeftPosition($cell, $xOffset=null, $yOffset=null) { + $this->_topLeftCellRef = $cell; + if (!is_null($xOffset)) + $this->setTopLeftXOffset($xOffset); + if (!is_null($yOffset)) + $this->setTopLeftYOffset($yOffset); + + return $this; + } + + /** + * Get the top left position of the chart + * + * @return array an associative array containing the cell address, X-Offset and Y-Offset from the top left of that cell + */ + public function getTopLeftPosition() { + return array( 'cell' => $this->_topLeftCellRef, + 'xOffset' => $this->_topLeftXOffset, + 'yOffset' => $this->_topLeftYOffset + ); + } + + /** + * Get the cell address where the top left of the chart is fixed + * + * @return string + */ + public function getTopLeftCell() { + return $this->_topLeftCellRef; + } + + /** + * Set the Top Left cell position for the chart + * + * @param string $cell + * @return PHPExcel_Chart + */ + public function setTopLeftCell($cell) { + $this->_topLeftCellRef = $cell; + + return $this; + } + + public function setTopLeftOffset($xOffset=null,$yOffset=null) { + if (!is_null($xOffset)) + $this->setTopLeftXOffset($xOffset); + if (!is_null($yOffset)) + $this->setTopLeftYOffset($yOffset); + + return $this; + } + + public function getTopLeftOffset() { + return array( 'X' => $this->_topLeftXOffset, + 'Y' => $this->_topLeftYOffset + ); + } + + public function setTopLeftXOffset($xOffset) { + $this->_topLeftXOffset = $xOffset; + + return $this; + } + + public function getTopLeftXOffset() { + return $this->_topLeftXOffset; + } + + public function setTopLeftYOffset($yOffset) { + $this->_topLeftYOffset = $yOffset; + + return $this; + } + + public function getTopLeftYOffset() { + return $this->_topLeftYOffset; + } + + /** + * Set the Bottom Right position of the chart + * + * @param string $cell + * @param integer $xOffset + * @param integer $yOffset + * @return PHPExcel_Chart + */ + public function setBottomRightPosition($cell, $xOffset=null, $yOffset=null) { + $this->_bottomRightCellRef = $cell; + if (!is_null($xOffset)) + $this->setBottomRightXOffset($xOffset); + if (!is_null($yOffset)) + $this->setBottomRightYOffset($yOffset); + + return $this; + } + + /** + * Get the bottom right position of the chart + * + * @return array an associative array containing the cell address, X-Offset and Y-Offset from the top left of that cell + */ + public function getBottomRightPosition() { + return array( 'cell' => $this->_bottomRightCellRef, + 'xOffset' => $this->_bottomRightXOffset, + 'yOffset' => $this->_bottomRightYOffset + ); + } + + public function setBottomRightCell($cell) { + $this->_bottomRightCellRef = $cell; + + return $this; + } + + /** + * Get the cell address where the bottom right of the chart is fixed + * + * @return string + */ + public function getBottomRightCell() { + return $this->_bottomRightCellRef; + } + + public function setBottomRightOffset($xOffset=null,$yOffset=null) { + if (!is_null($xOffset)) + $this->setBottomRightXOffset($xOffset); + if (!is_null($yOffset)) + $this->setBottomRightYOffset($yOffset); + + return $this; + } + + public function getBottomRightOffset() { + return array( 'X' => $this->_bottomRightXOffset, + 'Y' => $this->_bottomRightYOffset + ); + } + + public function setBottomRightXOffset($xOffset) { + $this->_bottomRightXOffset = $xOffset; + + return $this; + } + + public function getBottomRightXOffset() { + return $this->_bottomRightXOffset; + } + + public function setBottomRightYOffset($yOffset) { + $this->_bottomRightYOffset = $yOffset; + + return $this; + } + + public function getBottomRightYOffset() { + return $this->_bottomRightYOffset; + } + + + public function refresh() { + if ($this->_worksheet !== NULL) { + $this->_plotArea->refresh($this->_worksheet); + } + } + + public function render($outputDestination = null) { + $libraryName = PHPExcel_Settings::getChartRendererName(); + if (is_null($libraryName)) { + return false; + } + // Ensure that data series values are up-to-date before we render + $this->refresh(); + + $libraryPath = PHPExcel_Settings::getChartRendererPath(); + $includePath = str_replace('\\','/',get_include_path()); + $rendererPath = str_replace('\\','/',$libraryPath); + if (strpos($rendererPath,$includePath) === false) { + set_include_path(get_include_path() . PATH_SEPARATOR . $libraryPath); + } + + $rendererName = 'PHPExcel_Chart_Renderer_'.$libraryName; + $renderer = new $rendererName($this); + + if ($outputDestination == 'php://output') { + $outputDestination = null; + } + return $renderer->render($outputDestination); + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart/DataSeries.php b/site/config/PHPExcel/Classes/PHPExcel/Chart/DataSeries.php new file mode 100644 index 0000000..16e5e23 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart/DataSeries.php @@ -0,0 +1,354 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Chart_DataSeries + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Chart_DataSeries +{ + + const TYPE_BARCHART = 'barChart'; + const TYPE_BARCHART_3D = 'bar3DChart'; + const TYPE_LINECHART = 'lineChart'; + const TYPE_LINECHART_3D = 'line3DChart'; + const TYPE_AREACHART = 'areaChart'; + const TYPE_AREACHART_3D = 'area3DChart'; + const TYPE_PIECHART = 'pieChart'; + const TYPE_PIECHART_3D = 'pie3DChart'; + const TYPE_DOUGHTNUTCHART = 'doughnutChart'; + const TYPE_DONUTCHART = self::TYPE_DOUGHTNUTCHART; // Synonym + const TYPE_SCATTERCHART = 'scatterChart'; + const TYPE_SURFACECHART = 'surfaceChart'; + const TYPE_SURFACECHART_3D = 'surface3DChart'; + const TYPE_RADARCHART = 'radarChart'; + const TYPE_BUBBLECHART = 'bubbleChart'; + const TYPE_STOCKCHART = 'stockChart'; + + const GROUPING_CLUSTERED = 'clustered'; + const GROUPING_STACKED = 'stacked'; + const GROUPING_PERCENT_STACKED = 'percentStacked'; + const GROUPING_STANDARD = 'standard'; + + const DIRECTION_BAR = 'bar'; + const DIRECTION_HORIZONTAL = self::DIRECTION_BAR; + const DIRECTION_COL = 'col'; + const DIRECTION_COLUMN = self::DIRECTION_COL; + const DIRECTION_VERTICAL = self::DIRECTION_COL; + + const STYLE_LINEMARKER = 'lineMarker'; + const STYLE_SMOOTHMARKER = 'smoothMarker'; + const STYLE_MARKER = 'marker'; + const STYLE_FILLED = 'filled'; + + + /** + * Series Plot Type + * + * @var string + */ + private $_plotType = null; + + /** + * Plot Grouping Type + * + * @var boolean + */ + private $_plotGrouping = null; + + /** + * Plot Direction + * + * @var boolean + */ + private $_plotDirection = null; + + /** + * Plot Style + * + * @var string + */ + private $_plotStyle = null; + + /** + * Order of plots in Series + * + * @var array of integer + */ + private $_plotOrder = array(); + + /** + * Plot Label + * + * @var array of PHPExcel_Chart_DataSeriesValues + */ + private $_plotLabel = array(); + + /** + * Plot Category + * + * @var array of PHPExcel_Chart_DataSeriesValues + */ + private $_plotCategory = array(); + + /** + * Smooth Line + * + * @var string + */ + private $_smoothLine = null; + + /** + * Plot Values + * + * @var array of PHPExcel_Chart_DataSeriesValues + */ + private $_plotValues = array(); + + /** + * Create a new PHPExcel_Chart_DataSeries + */ + public function __construct($plotType = null, $plotGrouping = null, $plotOrder = array(), $plotLabel = array(), $plotCategory = array(), $plotValues = array(), $smoothLine = null, $plotStyle = null) + { + $this->_plotType = $plotType; + $this->_plotGrouping = $plotGrouping; + $this->_plotOrder = $plotOrder; + $keys = array_keys($plotValues); + $this->_plotValues = $plotValues; + if ((count($plotLabel) == 0) || (is_null($plotLabel[$keys[0]]))) { + $plotLabel[$keys[0]] = new PHPExcel_Chart_DataSeriesValues(); + } + + $this->_plotLabel = $plotLabel; + if ((count($plotCategory) == 0) || (is_null($plotCategory[$keys[0]]))) { + $plotCategory[$keys[0]] = new PHPExcel_Chart_DataSeriesValues(); + } + $this->_plotCategory = $plotCategory; + $this->_smoothLine = $smoothLine; + $this->_plotStyle = $plotStyle; + } + + /** + * Get Plot Type + * + * @return string + */ + public function getPlotType() { + return $this->_plotType; + } + + /** + * Set Plot Type + * + * @param string $plotType + */ + public function setPlotType($plotType = '') { + $this->_plotType = $plotType; + } + + /** + * Get Plot Grouping Type + * + * @return string + */ + public function getPlotGrouping() { + return $this->_plotGrouping; + } + + /** + * Set Plot Grouping Type + * + * @param string $groupingType + */ + public function setPlotGrouping($groupingType = null) { + $this->_plotGrouping = $groupingType; + } + + /** + * Get Plot Direction + * + * @return string + */ + public function getPlotDirection() { + return $this->_plotDirection; + } + + /** + * Set Plot Direction + * + * @param string $plotDirection + */ + public function setPlotDirection($plotDirection = null) { + $this->_plotDirection = $plotDirection; + } + + /** + * Get Plot Order + * + * @return string + */ + public function getPlotOrder() { + return $this->_plotOrder; + } + + /** + * Get Plot Labels + * + * @return array of PHPExcel_Chart_DataSeriesValues + */ + public function getPlotLabels() { + return $this->_plotLabel; + } + + /** + * Get Plot Label by Index + * + * @return PHPExcel_Chart_DataSeriesValues + */ + public function getPlotLabelByIndex($index) { + $keys = array_keys($this->_plotLabel); + if (in_array($index,$keys)) { + return $this->_plotLabel[$index]; + } elseif(isset($keys[$index])) { + return $this->_plotLabel[$keys[$index]]; + } + return false; + } + + /** + * Get Plot Categories + * + * @return array of PHPExcel_Chart_DataSeriesValues + */ + public function getPlotCategories() { + return $this->_plotCategory; + } + + /** + * Get Plot Category by Index + * + * @return PHPExcel_Chart_DataSeriesValues + */ + public function getPlotCategoryByIndex($index) { + $keys = array_keys($this->_plotCategory); + if (in_array($index,$keys)) { + return $this->_plotCategory[$index]; + } elseif(isset($keys[$index])) { + return $this->_plotCategory[$keys[$index]]; + } + return false; + } + + /** + * Get Plot Style + * + * @return string + */ + public function getPlotStyle() { + return $this->_plotStyle; + } + + /** + * Set Plot Style + * + * @param string $plotStyle + */ + public function setPlotStyle($plotStyle = null) { + $this->_plotStyle = $plotStyle; + } + + /** + * Get Plot Values + * + * @return array of PHPExcel_Chart_DataSeriesValues + */ + public function getPlotValues() { + return $this->_plotValues; + } + + /** + * Get Plot Values by Index + * + * @return PHPExcel_Chart_DataSeriesValues + */ + public function getPlotValuesByIndex($index) { + $keys = array_keys($this->_plotValues); + if (in_array($index,$keys)) { + return $this->_plotValues[$index]; + } elseif(isset($keys[$index])) { + return $this->_plotValues[$keys[$index]]; + } + return false; + } + + /** + * Get Number of Plot Series + * + * @return integer + */ + public function getPlotSeriesCount() { + return count($this->_plotValues); + } + + /** + * Get Smooth Line + * + * @return boolean + */ + public function getSmoothLine() { + return $this->_smoothLine; + } + + /** + * Set Smooth Line + * + * @param boolean $smoothLine + */ + public function setSmoothLine($smoothLine = TRUE) { + $this->_smoothLine = $smoothLine; + } + + public function refresh(PHPExcel_Worksheet $worksheet) { + foreach($this->_plotValues as $plotValues) { + if ($plotValues !== NULL) + $plotValues->refresh($worksheet, TRUE); + } + foreach($this->_plotLabel as $plotValues) { + if ($plotValues !== NULL) + $plotValues->refresh($worksheet, TRUE); + } + foreach($this->_plotCategory as $plotValues) { + if ($plotValues !== NULL) + $plotValues->refresh($worksheet, FALSE); + } + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart/DataSeriesValues.php b/site/config/PHPExcel/Classes/PHPExcel/Chart/DataSeriesValues.php new file mode 100644 index 0000000..e49d0c7 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart/DataSeriesValues.php @@ -0,0 +1,321 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Chart_DataSeriesValues + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Chart_DataSeriesValues +{ + + const DATASERIES_TYPE_STRING = 'String'; + const DATASERIES_TYPE_NUMBER = 'Number'; + + private static $_dataTypeValues = array( + self::DATASERIES_TYPE_STRING, + self::DATASERIES_TYPE_NUMBER, + ); + + /** + * Series Data Type + * + * @var string + */ + private $_dataType = null; + + /** + * Series Data Source + * + * @var string + */ + private $_dataSource = null; + + /** + * Format Code + * + * @var string + */ + private $_formatCode = null; + + /** + * Series Point Marker + * + * @var string + */ + private $_marker = null; + + /** + * Point Count (The number of datapoints in the dataseries) + * + * @var integer + */ + private $_pointCount = 0; + + /** + * Data Values + * + * @var array of mixed + */ + private $_dataValues = array(); + + /** + * Create a new PHPExcel_Chart_DataSeriesValues object + */ + public function __construct($dataType = self::DATASERIES_TYPE_NUMBER, $dataSource = null, $formatCode = null, $pointCount = 0, $dataValues = array(), $marker = null) + { + $this->setDataType($dataType); + $this->_dataSource = $dataSource; + $this->_formatCode = $formatCode; + $this->_pointCount = $pointCount; + $this->_dataValues = $dataValues; + $this->_marker = $marker; + } + + /** + * Get Series Data Type + * + * @return string + */ + public function getDataType() { + return $this->_dataType; + } + + /** + * Set Series Data Type + * + * @param string $dataType Datatype of this data series + * Typical values are: + * PHPExcel_Chart_DataSeriesValues::DATASERIES_TYPE_STRING + * Normally used for axis point values + * PHPExcel_Chart_DataSeriesValues::DATASERIES_TYPE_NUMBER + * Normally used for chart data values + * @return PHPExcel_Chart_DataSeriesValues + */ + public function setDataType($dataType = self::DATASERIES_TYPE_NUMBER) { + if (!in_array($dataType, self::$_dataTypeValues)) { + throw new PHPExcel_Chart_Exception('Invalid datatype for chart data series values'); + } + $this->_dataType = $dataType; + + return $this; + } + + /** + * Get Series Data Source (formula) + * + * @return string + */ + public function getDataSource() { + return $this->_dataSource; + } + + /** + * Set Series Data Source (formula) + * + * @param string $dataSource + * @return PHPExcel_Chart_DataSeriesValues + */ + public function setDataSource($dataSource = null, $refreshDataValues = true) { + $this->_dataSource = $dataSource; + + if ($refreshDataValues) { + // TO DO + } + + return $this; + } + + /** + * Get Point Marker + * + * @return string + */ + public function getPointMarker() { + return $this->_marker; + } + + /** + * Set Point Marker + * + * @param string $marker + * @return PHPExcel_Chart_DataSeriesValues + */ + public function setPointMarker($marker = null) { + $this->_marker = $marker; + + return $this; + } + + /** + * Get Series Format Code + * + * @return string + */ + public function getFormatCode() { + return $this->_formatCode; + } + + /** + * Set Series Format Code + * + * @param string $formatCode + * @return PHPExcel_Chart_DataSeriesValues + */ + public function setFormatCode($formatCode = null) { + $this->_formatCode = $formatCode; + + return $this; + } + + /** + * Get Series Point Count + * + * @return integer + */ + public function getPointCount() { + return $this->_pointCount; + } + + /** + * Identify if the Data Series is a multi-level or a simple series + * + * @return boolean + */ + public function isMultiLevelSeries() { + if (count($this->_dataValues) > 0) { + return is_array($this->_dataValues[0]); + } + return null; + } + + /** + * Return the level count of a multi-level Data Series + * + * @return boolean + */ + public function multiLevelCount() { + $levelCount = 0; + foreach($this->_dataValues as $dataValueSet) { + $levelCount = max($levelCount,count($dataValueSet)); + } + return $levelCount; + } + + /** + * Get Series Data Values + * + * @return array of mixed + */ + public function getDataValues() { + return $this->_dataValues; + } + + /** + * Get the first Series Data value + * + * @return mixed + */ + public function getDataValue() { + $count = count($this->_dataValues); + if ($count == 0) { + return null; + } elseif ($count == 1) { + return $this->_dataValues[0]; + } + return $this->_dataValues; + } + + /** + * Set Series Data Values + * + * @param array $dataValues + * @param boolean $refreshDataSource + * TRUE - refresh the value of _dataSource based on the values of $dataValues + * FALSE - don't change the value of _dataSource + * @return PHPExcel_Chart_DataSeriesValues + */ + public function setDataValues($dataValues = array(), $refreshDataSource = TRUE) { + $this->_dataValues = PHPExcel_Calculation_Functions::flattenArray($dataValues); + $this->_pointCount = count($dataValues); + + if ($refreshDataSource) { + // TO DO + } + + return $this; + } + + private function _stripNulls($var) { + return $var !== NULL; + } + + public function refresh(PHPExcel_Worksheet $worksheet, $flatten = TRUE) { + if ($this->_dataSource !== NULL) { + $calcEngine = PHPExcel_Calculation::getInstance(); + $newDataValues = PHPExcel_Calculation::_unwrapResult( + $calcEngine->_calculateFormulaValue( + '='.$this->_dataSource, + NULL, + $worksheet->getCell('A1') + ) + ); + if ($flatten) { + $this->_dataValues = PHPExcel_Calculation_Functions::flattenArray($newDataValues); + } else { + $cellRange = explode('!',$this->_dataSource); + if (count($cellRange) > 1) { + list(,$cellRange) = $cellRange; + } + + $dimensions = PHPExcel_Cell::rangeDimension(str_replace('$','',$cellRange)); + if (($dimensions[0] == 1) || ($dimensions[1] == 1)) { + $this->_dataValues = PHPExcel_Calculation_Functions::flattenArray($newDataValues); + } else { + $newArray = array_values(array_shift($newDataValues)); + foreach($newArray as $i => $newDataSet) { + $newArray[$i] = array($newDataSet); + } + + foreach($newDataValues as $newDataSet) { + $i = 0; + foreach($newDataSet as $newDataVal) { + array_unshift($newArray[$i++],$newDataVal); + } + } + $this->_dataValues = $newArray; + } + } + $this->_pointCount = count($this->_dataValues); + } + + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart/Exception.php b/site/config/PHPExcel/Classes/PHPExcel/Chart/Exception.php new file mode 100644 index 0000000..984d5f9 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart/Exception.php @@ -0,0 +1,52 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Chart_Exception + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Chart_Exception extends Exception { + /** + * Error handler callback + * + * @param mixed $code + * @param mixed $string + * @param mixed $file + * @param mixed $line + * @param mixed $context + */ + public static function errorHandlerCallback($code, $string, $file, $line, $context) { + $e = new self($string, $code); + $e->line = $line; + $e->file = $file; + throw $e; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart/Layout.php b/site/config/PHPExcel/Classes/PHPExcel/Chart/Layout.php new file mode 100644 index 0000000..d128382 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart/Layout.php @@ -0,0 +1,417 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Chart_Layout + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Chart_Layout +{ + /** + * layoutTarget + * + * @var string + */ + private $_layoutTarget = NULL; + + /** + * X Mode + * + * @var string + */ + private $_xMode = NULL; + + /** + * Y Mode + * + * @var string + */ + private $_yMode = NULL; + + /** + * X-Position + * + * @var float + */ + private $_xPos = NULL; + + /** + * Y-Position + * + * @var float + */ + private $_yPos = NULL; + + /** + * width + * + * @var float + */ + private $_width = NULL; + + /** + * height + * + * @var float + */ + private $_height = NULL; + + /** + * show legend key + * Specifies that legend keys should be shown in data labels + * + * @var boolean + */ + private $_showLegendKey = NULL; + + /** + * show value + * Specifies that the value should be shown in a data label. + * + * @var boolean + */ + private $_showVal = NULL; + + /** + * show category name + * Specifies that the category name should be shown in the data label. + * + * @var boolean + */ + private $_showCatName = NULL; + + /** + * show data series name + * Specifies that the series name should be shown in the data label. + * + * @var boolean + */ + private $_showSerName = NULL; + + /** + * show percentage + * Specifies that the percentage should be shown in the data label. + * + * @var boolean + */ + private $_showPercent = NULL; + + /** + * show bubble size + * + * @var boolean + */ + private $_showBubbleSize = NULL; + + /** + * show leader lines + * Specifies that leader lines should be shown for the data label. + * + * @var boolean + */ + private $_showLeaderLines = NULL; + + + /** + * Create a new PHPExcel_Chart_Layout + */ + public function __construct($layout=array()) + { + if (isset($layout['layoutTarget'])) { $this->_layoutTarget = $layout['layoutTarget']; } + if (isset($layout['xMode'])) { $this->_xMode = $layout['xMode']; } + if (isset($layout['yMode'])) { $this->_yMode = $layout['yMode']; } + if (isset($layout['x'])) { $this->_xPos = (float) $layout['x']; } + if (isset($layout['y'])) { $this->_yPos = (float) $layout['y']; } + if (isset($layout['w'])) { $this->_width = (float) $layout['w']; } + if (isset($layout['h'])) { $this->_height = (float) $layout['h']; } + } + + /** + * Get Layout Target + * + * @return string + */ + public function getLayoutTarget() { + return $this->_layoutTarget; + } + + /** + * Set Layout Target + * + * @param Layout Target $value + */ + public function setLayoutTarget($value) { + $this->_layoutTarget = $value; + } + + /** + * Get X-Mode + * + * @return string + */ + public function getXMode() { + return $this->_xMode; + } + + /** + * Set X-Mode + * + * @param X-Mode $value + */ + public function setXMode($value) { + $this->_xMode = $value; + } + + /** + * Get Y-Mode + * + * @return string + */ + public function getYMode() { + return $this->_xMode; + } + + /** + * Set Y-Mode + * + * @param Y-Mode $value + */ + public function setYMode($value) { + $this->_xMode = $value; + } + + /** + * Get X-Position + * + * @return number + */ + public function getXPosition() { + return $this->_xPos; + } + + /** + * Set X-Position + * + * @param X-Position $value + */ + public function setXPosition($value) { + $this->_xPos = $value; + } + + /** + * Get Y-Position + * + * @return number + */ + public function getYPosition() { + return $this->_yPos; + } + + /** + * Set Y-Position + * + * @param Y-Position $value + */ + public function setYPosition($value) { + $this->_yPos = $value; + } + + /** + * Get Width + * + * @return number + */ + public function getWidth() { + return $this->_width; + } + + /** + * Set Width + * + * @param Width $value + */ + public function setWidth($value) { + $this->_width = $value; + } + + /** + * Get Height + * + * @return number + */ + public function getHeight() { + return $this->_height; + } + + /** + * Set Height + * + * @param Height $value + */ + public function setHeight($value) { + $this->_height = $value; + } + + + /** + * Get show legend key + * + * @return boolean + */ + public function getShowLegendKey() { + return $this->_showLegendKey; + } + + /** + * Set show legend key + * Specifies that legend keys should be shown in data labels. + * + * @param boolean $value Show legend key + */ + public function setShowLegendKey($value) { + $this->_showLegendKey = $value; + } + + /** + * Get show value + * + * @return boolean + */ + public function getShowVal() { + return $this->_showVal; + } + + /** + * Set show val + * Specifies that the value should be shown in data labels. + * + * @param boolean $value Show val + */ + public function setShowVal($value) { + $this->_showVal = $value; + } + + /** + * Get show category name + * + * @return boolean + */ + public function getShowCatName() { + return $this->_showCatName; + } + + /** + * Set show cat name + * Specifies that the category name should be shown in data labels. + * + * @param boolean $value Show cat name + */ + public function setShowCatName($value) { + $this->_showCatName = $value; + } + + /** + * Get show data series name + * + * @return boolean + */ + public function getShowSerName() { + return $this->_showSerName; + } + + /** + * Set show ser name + * Specifies that the series name should be shown in data labels. + * + * @param boolean $value Show ser name + */ + public function setShowSerName($value) { + $this->_showSerName = $value; + } + + /** + * Get show percentage + * + * @return boolean + */ + public function getShowPercent() { + return $this->_showPercent; + } + + /** + * Set show percentage + * Specifies that the percentage should be shown in data labels. + * + * @param boolean $value Show percentage + */ + public function setShowPercent($value) { + $this->_showPercent = $value; + } + + /** + * Get show bubble size + * + * @return boolean + */ + public function getShowBubbleSize() { + return $this->_showBubbleSize; + } + + /** + * Set show bubble size + * Specifies that the bubble size should be shown in data labels. + * + * @param boolean $value Show bubble size + */ + public function setShowBubbleSize($value) { + $this->_showBubbleSize = $value; + } + + /** + * Get show leader lines + * + * @return boolean + */ + public function getShowLeaderLines() { + return $this->_showLeaderLines; + } + + /** + * Set show leader lines + * Specifies that leader lines should be shown in data labels. + * + * @param boolean $value Show leader lines + */ + public function setShowLeaderLines($value) { + $this->_showLeaderLines = $value; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart/Legend.php b/site/config/PHPExcel/Classes/PHPExcel/Chart/Legend.php new file mode 100644 index 0000000..0ccd77e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart/Legend.php @@ -0,0 +1,171 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Chart_Legend + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Chart_Legend +{ + /** Legend positions */ + const xlLegendPositionBottom = -4107; // Below the chart. + const xlLegendPositionCorner = 2; // In the upper right-hand corner of the chart border. + const xlLegendPositionCustom = -4161; // A custom position. + const xlLegendPositionLeft = -4131; // Left of the chart. + const xlLegendPositionRight = -4152; // Right of the chart. + const xlLegendPositionTop = -4160; // Above the chart. + + const POSITION_RIGHT = 'r'; + const POSITION_LEFT = 'l'; + const POSITION_BOTTOM = 'b'; + const POSITION_TOP = 't'; + const POSITION_TOPRIGHT = 'tr'; + + private static $_positionXLref = array( self::xlLegendPositionBottom => self::POSITION_BOTTOM, + self::xlLegendPositionCorner => self::POSITION_TOPRIGHT, + self::xlLegendPositionCustom => '??', + self::xlLegendPositionLeft => self::POSITION_LEFT, + self::xlLegendPositionRight => self::POSITION_RIGHT, + self::xlLegendPositionTop => self::POSITION_TOP + ); + + /** + * Legend position + * + * @var string + */ + private $_position = self::POSITION_RIGHT; + + /** + * Allow overlay of other elements? + * + * @var boolean + */ + private $_overlay = TRUE; + + /** + * Legend Layout + * + * @var PHPExcel_Chart_Layout + */ + private $_layout = NULL; + + + /** + * Create a new PHPExcel_Chart_Legend + */ + public function __construct($position = self::POSITION_RIGHT, PHPExcel_Chart_Layout $layout = NULL, $overlay = FALSE) + { + $this->setPosition($position); + $this->_layout = $layout; + $this->setOverlay($overlay); + } + + /** + * Get legend position as an excel string value + * + * @return string + */ + public function getPosition() { + return $this->_position; + } + + /** + * Get legend position using an excel string value + * + * @param string $position + */ + public function setPosition($position = self::POSITION_RIGHT) { + if (!in_array($position,self::$_positionXLref)) { + return false; + } + + $this->_position = $position; + return true; + } + + /** + * Get legend position as an Excel internal numeric value + * + * @return number + */ + public function getPositionXL() { + return array_search($this->_position,self::$_positionXLref); + } + + /** + * Set legend position using an Excel internal numeric value + * + * @param number $positionXL + */ + public function setPositionXL($positionXL = self::xlLegendPositionRight) { + if (!array_key_exists($positionXL,self::$_positionXLref)) { + return false; + } + + $this->_position = self::$_positionXLref[$positionXL]; + return true; + } + + /** + * Get allow overlay of other elements? + * + * @return boolean + */ + public function getOverlay() { + return $this->_overlay; + } + + /** + * Set allow overlay of other elements? + * + * @param boolean $overlay + * @return boolean + */ + public function setOverlay($overlay = FALSE) { + if (!is_bool($overlay)) { + return false; + } + + $this->_overlay = $overlay; + return true; + } + + /** + * Get Layout + * + * @return PHPExcel_Chart_Layout + */ + public function getLayout() { + return $this->_layout; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart/PlotArea.php b/site/config/PHPExcel/Classes/PHPExcel/Chart/PlotArea.php new file mode 100644 index 0000000..134ee59 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart/PlotArea.php @@ -0,0 +1,125 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Chart_PlotArea + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Chart_PlotArea +{ + /** + * PlotArea Layout + * + * @var PHPExcel_Chart_Layout + */ + private $_layout = null; + + /** + * Plot Series + * + * @var array of PHPExcel_Chart_DataSeries + */ + private $_plotSeries = array(); + + /** + * Create a new PHPExcel_Chart_PlotArea + */ + public function __construct(PHPExcel_Chart_Layout $layout = null, $plotSeries = array()) + { + $this->_layout = $layout; + $this->_plotSeries = $plotSeries; + } + + /** + * Get Layout + * + * @return PHPExcel_Chart_Layout + */ + public function getLayout() { + return $this->_layout; + } + + /** + * Get Number of Plot Groups + * + * @return array of PHPExcel_Chart_DataSeries + */ + public function getPlotGroupCount() { + return count($this->_plotSeries); + } + + /** + * Get Number of Plot Series + * + * @return integer + */ + public function getPlotSeriesCount() { + $seriesCount = 0; + foreach($this->_plotSeries as $plot) { + $seriesCount += $plot->getPlotSeriesCount(); + } + return $seriesCount; + } + + /** + * Get Plot Series + * + * @return array of PHPExcel_Chart_DataSeries + */ + public function getPlotGroup() { + return $this->_plotSeries; + } + + /** + * Get Plot Series by Index + * + * @return PHPExcel_Chart_DataSeries + */ + public function getPlotGroupByIndex($index) { + return $this->_plotSeries[$index]; + } + + /** + * Set Plot Series + * + * @param array of PHPExcel_Chart_DataSeries + */ + public function setPlotSeries($plotSeries = array()) { + $this->_plotSeries = $plotSeries; + } + + public function refresh(PHPExcel_Worksheet $worksheet) { + foreach($this->_plotSeries as $plotSeries) { + $plotSeries->refresh($worksheet); + } + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart/Renderer/PHP Charting Libraries.txt b/site/config/PHPExcel/Classes/PHPExcel/Chart/Renderer/PHP Charting Libraries.txt new file mode 100644 index 0000000..faaa61d --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart/Renderer/PHP Charting Libraries.txt @@ -0,0 +1,17 @@ +ChartDirector + http://www.advsofteng.com/cdphp.html + +GraPHPite + http://graphpite.sourceforge.net/ + +JpGraph + http://www.aditus.nu/jpgraph/ + +LibChart + http://naku.dohcrew.com/libchart/pages/introduction/ + +pChart + http://pchart.sourceforge.net/ + +TeeChart + http://www.steema.com/products/teechart/overview.html diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart/Renderer/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Chart/Renderer/_notes/dwsync.xml new file mode 100644 index 0000000..d5604b8 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart/Renderer/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="jpgraph.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="PHP Charting Libraries.txt" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="jpgraph.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="PHP Charting Libraries.txt" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="jpgraph.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="PHP Charting Libraries.txt" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="jpgraph.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559985756836" remote="131260196400000000" Dst="1" /> +<file name="PHP Charting Libraries.txt" server="62.244.88.111/actions-fendt/lisa/" local="131244559986250802" remote="131260196400000000" Dst="1" /> +<file name="jpgraph.php" server="62.244.88.21/amashow/" local="131414752285068064" remote="131414680800000000" Dst="2" /> +<file name="PHP Charting Libraries.txt" server="62.244.88.21/amashow/" local="131414752285240558" remote="131414680800000000" Dst="2" /> +<file name="PHP Charting Libraries.txt" server="62.244.88.21/deciday/" local="131919461230694468" remote="131826017400000000" Dst="1" /> +<file name="jpgraph.php" server="62.244.88.21/deciday/" local="131919461231077210" remote="131826017400000000" Dst="1" /> +<file name="PHP Charting Libraries.txt" server="62.244.88.21/deciday_18/" local="131414752285240558" remote="131825945400000000" Dst="2" /> +<file name="jpgraph.php" server="62.244.88.21/deciday_18/" local="131414752285068064" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart/Renderer/jpgraph.php b/site/config/PHPExcel/Classes/PHPExcel/Chart/Renderer/jpgraph.php new file mode 100644 index 0000000..889fd9f --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart/Renderer/jpgraph.php @@ -0,0 +1,839 @@ +<?php + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +require_once(PHPExcel_Settings::getChartRendererPath().'/jpgraph.php'); + + +/** + * PHPExcel_Chart_Renderer_jpgraph + * + * @category PHPExcel + * @package PHPExcel_Chart_Renderer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Chart_Renderer_jpgraph +{ + private static $_width = 640; + + private static $_height = 480; + + private static $_colourSet = array( 'mediumpurple1', 'palegreen3', 'gold1', 'cadetblue1', + 'darkmagenta', 'coral', 'dodgerblue3', 'eggplant', + 'mediumblue', 'magenta', 'sandybrown', 'cyan', + 'firebrick1', 'forestgreen', 'deeppink4', 'darkolivegreen', + 'goldenrod2' + ); + + private static $_markSet = array( 'diamond' => MARK_DIAMOND, + 'square' => MARK_SQUARE, + 'triangle' => MARK_UTRIANGLE, + 'x' => MARK_X, + 'star' => MARK_STAR, + 'dot' => MARK_FILLEDCIRCLE, + 'dash' => MARK_DTRIANGLE, + 'circle' => MARK_CIRCLE, + 'plus' => MARK_CROSS + ); + + + private $_chart = null; + + private $_graph = null; + + private static $_plotColour = 0; + + private static $_plotMark = 0; + + + private function _formatPointMarker($seriesPlot,$markerID) { + $plotMarkKeys = array_keys(self::$_markSet); + if (is_null($markerID)) { + // Use default plot marker (next marker in the series) + self::$_plotMark %= count(self::$_markSet); + $seriesPlot->mark->SetType(self::$_markSet[$plotMarkKeys[self::$_plotMark++]]); + } elseif ($markerID !== 'none') { + // Use specified plot marker (if it exists) + if (isset(self::$_markSet[$markerID])) { + $seriesPlot->mark->SetType(self::$_markSet[$markerID]); + } else { + // If the specified plot marker doesn't exist, use default plot marker (next marker in the series) + self::$_plotMark %= count(self::$_markSet); + $seriesPlot->mark->SetType(self::$_markSet[$plotMarkKeys[self::$_plotMark++]]); + } + } else { + // Hide plot marker + $seriesPlot->mark->Hide(); + } + $seriesPlot->mark->SetColor(self::$_colourSet[self::$_plotColour]); + $seriesPlot->mark->SetFillColor(self::$_colourSet[self::$_plotColour]); + $seriesPlot->SetColor(self::$_colourSet[self::$_plotColour++]); + + return $seriesPlot; + } // function _formatPointMarker() + + + private function _formatDataSetLabels($groupID, $datasetLabels, $labelCount, $rotation = '') { + $datasetLabelFormatCode = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex(0)->getFormatCode(); + if (!is_null($datasetLabelFormatCode)) { + // Retrieve any label formatting code + $datasetLabelFormatCode = stripslashes($datasetLabelFormatCode); + } + + $testCurrentIndex = 0; + foreach($datasetLabels as $i => $datasetLabel) { + array_reverse($datasetLabel); + + if (is_array($datasetLabel)) { + if ($rotation == 'bar') { + $datasetLabel = array_reverse($datasetLabel); + $datasetLabels[$i] = implode(" ",$datasetLabel); + } else { + $datasetLabels[$i] = implode("\n",$datasetLabel); + } + } else { + // Format labels according to any formatting code + if (!is_null($datasetLabelFormatCode)) { + $datasetLabels[$i] = PHPExcel_Style_NumberFormat::toFormattedString($datasetLabel,$datasetLabelFormatCode); + } + } + ++$testCurrentIndex; + } + + return $datasetLabels; + } // function _formatDataSetLabels() + + + private function _percentageSumCalculation($groupID,$seriesCount) { + // Adjust our values to a percentage value across all series in the group + for($i = 0; $i < $seriesCount; ++$i) { + if ($i == 0) { + $sumValues = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + } else { + $nextValues = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + foreach($nextValues as $k => $value) { + if (isset($sumValues[$k])) { + $sumValues[$k] += $value; + } else { + $sumValues[$k] = $value; + } + } + } + } + + return $sumValues; + } // function _percentageSumCalculation() + + + private function _percentageAdjustValues($dataValues,$sumValues) { + foreach($dataValues as $k => $dataValue) { + $dataValues[$k] = $dataValue / $sumValues[$k] * 100; + } + + return $dataValues; + } // function _percentageAdjustValues() + + + private function _getCaption($captionElement) { + // Read any caption + $caption = (!is_null($captionElement)) ? $captionElement->getCaption() : NULL; + // Test if we have a title caption to display + if (!is_null($caption)) { + // If we do, it could be a plain string or an array + if (is_array($caption)) { + // Implode an array to a plain string + $caption = implode('',$caption); + } + } + return $caption; + } // function _getCaption() + + + private function _renderTitle() { + $title = $this->_getCaption($this->_chart->getTitle()); + if (!is_null($title)) { + $this->_graph->title->Set($title); + } + } // function _renderTitle() + + + private function _renderLegend() { + $legend = $this->_chart->getLegend(); + if (!is_null($legend)) { + $legendPosition = $legend->getPosition(); + $legendOverlay = $legend->getOverlay(); + switch ($legendPosition) { + case 'r' : + $this->_graph->legend->SetPos(0.01,0.5,'right','center'); // right + $this->_graph->legend->SetColumns(1); + break; + case 'l' : + $this->_graph->legend->SetPos(0.01,0.5,'left','center'); // left + $this->_graph->legend->SetColumns(1); + break; + case 't' : + $this->_graph->legend->SetPos(0.5,0.01,'center','top'); // top + break; + case 'b' : + $this->_graph->legend->SetPos(0.5,0.99,'center','bottom'); // bottom + break; + default : + $this->_graph->legend->SetPos(0.01,0.01,'right','top'); // top-right + $this->_graph->legend->SetColumns(1); + break; + } + } else { + $this->_graph->legend->Hide(); + } + } // function _renderLegend() + + + private function _renderCartesianPlotArea($type='textlin') { + $this->_graph = new Graph(self::$_width,self::$_height); + $this->_graph->SetScale($type); + + $this->_renderTitle(); + + // Rotate for bar rather than column chart + $rotation = $this->_chart->getPlotArea()->getPlotGroupByIndex(0)->getPlotDirection(); + $reverse = ($rotation == 'bar') ? true : false; + + $xAxisLabel = $this->_chart->getXAxisLabel(); + if (!is_null($xAxisLabel)) { + $title = $this->_getCaption($xAxisLabel); + if (!is_null($title)) { + $this->_graph->xaxis->SetTitle($title,'center'); + $this->_graph->xaxis->title->SetMargin(35); + if ($reverse) { + $this->_graph->xaxis->title->SetAngle(90); + $this->_graph->xaxis->title->SetMargin(90); + } + } + } + + $yAxisLabel = $this->_chart->getYAxisLabel(); + if (!is_null($yAxisLabel)) { + $title = $this->_getCaption($yAxisLabel); + if (!is_null($title)) { + $this->_graph->yaxis->SetTitle($title,'center'); + if ($reverse) { + $this->_graph->yaxis->title->SetAngle(0); + $this->_graph->yaxis->title->SetMargin(-55); + } + } + } + } // function _renderCartesianPlotArea() + + + private function _renderPiePlotArea($doughnut = False) { + $this->_graph = new PieGraph(self::$_width,self::$_height); + + $this->_renderTitle(); + } // function _renderPiePlotArea() + + + private function _renderRadarPlotArea() { + $this->_graph = new RadarGraph(self::$_width,self::$_height); + $this->_graph->SetScale('lin'); + + $this->_renderTitle(); + } // function _renderRadarPlotArea() + + + private function _renderPlotLine($groupID, $filled = false, $combination = false, $dimensions = '2d') { + $grouping = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotGrouping(); + + $labelCount = count($this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex(0)->getPointCount()); + if ($labelCount > 0) { + $datasetLabels = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex(0)->getDataValues(); + $datasetLabels = $this->_formatDataSetLabels($groupID, $datasetLabels, $labelCount); + $this->_graph->xaxis->SetTickLabels($datasetLabels); + } + + $seriesCount = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + if ($grouping == 'percentStacked') { + $sumValues = $this->_percentageSumCalculation($groupID,$seriesCount); + } + + // Loop through each data series in turn + for($i = 0; $i < $seriesCount; ++$i) { + $dataValues = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + $marker = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getPointMarker(); + + if ($grouping == 'percentStacked') { + $dataValues = $this->_percentageAdjustValues($dataValues,$sumValues); + } + + // Fill in any missing values in the $dataValues array + $testCurrentIndex = 0; + foreach($dataValues as $k => $dataValue) { + while($k != $testCurrentIndex) { + $dataValues[$testCurrentIndex] = null; + ++$testCurrentIndex; + } + ++$testCurrentIndex; + } + + $seriesPlot = new LinePlot($dataValues); + if ($combination) { + $seriesPlot->SetBarCenter(); + } + + if ($filled) { + $seriesPlot->SetFilled(true); + $seriesPlot->SetColor('black'); + $seriesPlot->SetFillColor(self::$_colourSet[self::$_plotColour++]); + } else { + // Set the appropriate plot marker + $this->_formatPointMarker($seriesPlot,$marker); + } + $dataLabel = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotLabelByIndex($i)->getDataValue(); + $seriesPlot->SetLegend($dataLabel); + + $seriesPlots[] = $seriesPlot; + } + + if ($grouping == 'standard') { + $groupPlot = $seriesPlots; + } else { + $groupPlot = new AccLinePlot($seriesPlots); + } + $this->_graph->Add($groupPlot); + } // function _renderPlotLine() + + + private function _renderPlotBar($groupID, $dimensions = '2d') { + $rotation = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotDirection(); + // Rotate for bar rather than column chart + if (($groupID == 0) && ($rotation == 'bar')) { + $this->_graph->Set90AndMargin(); + } + $grouping = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotGrouping(); + + $labelCount = count($this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex(0)->getPointCount()); + if ($labelCount > 0) { + $datasetLabels = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex(0)->getDataValues(); + $datasetLabels = $this->_formatDataSetLabels($groupID, $datasetLabels, $labelCount, $rotation); + // Rotate for bar rather than column chart + if ($rotation == 'bar') { + $datasetLabels = array_reverse($datasetLabels); + $this->_graph->yaxis->SetPos('max'); + $this->_graph->yaxis->SetLabelAlign('center','top'); + $this->_graph->yaxis->SetLabelSide(SIDE_RIGHT); + } + $this->_graph->xaxis->SetTickLabels($datasetLabels); + } + + + $seriesCount = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + if ($grouping == 'percentStacked') { + $sumValues = $this->_percentageSumCalculation($groupID,$seriesCount); + } + + // Loop through each data series in turn + for($j = 0; $j < $seriesCount; ++$j) { + $dataValues = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($j)->getDataValues(); + if ($grouping == 'percentStacked') { + $dataValues = $this->_percentageAdjustValues($dataValues,$sumValues); + } + + // Fill in any missing values in the $dataValues array + $testCurrentIndex = 0; + foreach($dataValues as $k => $dataValue) { + while($k != $testCurrentIndex) { + $dataValues[$testCurrentIndex] = null; + ++$testCurrentIndex; + } + ++$testCurrentIndex; + } + + // Reverse the $dataValues order for bar rather than column chart + if ($rotation == 'bar') { + $dataValues = array_reverse($dataValues); + } + $seriesPlot = new BarPlot($dataValues); + $seriesPlot->SetColor('black'); + $seriesPlot->SetFillColor(self::$_colourSet[self::$_plotColour++]); + if ($dimensions == '3d') { + $seriesPlot->SetShadow(); + } + if (!$this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotLabelByIndex($j)) { + $dataLabel = ''; + } else { + $dataLabel = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotLabelByIndex($j)->getDataValue(); + } + $seriesPlot->SetLegend($dataLabel); + + $seriesPlots[] = $seriesPlot; + } + // Reverse the plot order for bar rather than column chart + if (($rotation == 'bar') && (!($grouping == 'percentStacked'))) { + $seriesPlots = array_reverse($seriesPlots); + } + + if ($grouping == 'clustered') { + $groupPlot = new GroupBarPlot($seriesPlots); + } elseif ($grouping == 'standard') { + $groupPlot = new GroupBarPlot($seriesPlots); + } else { + $groupPlot = new AccBarPlot($seriesPlots); + if ($dimensions == '3d') { + $groupPlot->SetShadow(); + } + } + + $this->_graph->Add($groupPlot); + } // function _renderPlotBar() + + + private function _renderPlotScatter($groupID,$bubble) { + $grouping = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotGrouping(); + $scatterStyle = $bubbleSize = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotStyle(); + + $seriesCount = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + + // Loop through each data series in turn + for($i = 0; $i < $seriesCount; ++$i) { + $dataValuesY = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex($i)->getDataValues(); + $dataValuesX = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + + foreach($dataValuesY as $k => $dataValueY) { + $dataValuesY[$k] = $k; + } + + $seriesPlot = new ScatterPlot($dataValuesX,$dataValuesY); + if ($scatterStyle == 'lineMarker') { + $seriesPlot->SetLinkPoints(); + $seriesPlot->link->SetColor(self::$_colourSet[self::$_plotColour]); + } elseif ($scatterStyle == 'smoothMarker') { + $spline = new Spline($dataValuesY,$dataValuesX); + list($splineDataY,$splineDataX) = $spline->Get(count($dataValuesX) * self::$_width / 20); + $lplot = new LinePlot($splineDataX,$splineDataY); + $lplot->SetColor(self::$_colourSet[self::$_plotColour]); + + $this->_graph->Add($lplot); + } + + if ($bubble) { + $this->_formatPointMarker($seriesPlot,'dot'); + $seriesPlot->mark->SetColor('black'); + $seriesPlot->mark->SetSize($bubbleSize); + } else { + $marker = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getPointMarker(); + $this->_formatPointMarker($seriesPlot,$marker); + } + $dataLabel = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotLabelByIndex($i)->getDataValue(); + $seriesPlot->SetLegend($dataLabel); + + $this->_graph->Add($seriesPlot); + } + } // function _renderPlotScatter() + + + private function _renderPlotRadar($groupID) { + $radarStyle = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotStyle(); + + $seriesCount = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + + // Loop through each data series in turn + for($i = 0; $i < $seriesCount; ++$i) { + $dataValuesY = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex($i)->getDataValues(); + $dataValuesX = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + $marker = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getPointMarker(); + + $dataValues = array(); + foreach($dataValuesY as $k => $dataValueY) { + $dataValues[$k] = implode(' ',array_reverse($dataValueY)); + } + $tmp = array_shift($dataValues); + $dataValues[] = $tmp; + $tmp = array_shift($dataValuesX); + $dataValuesX[] = $tmp; + + $this->_graph->SetTitles(array_reverse($dataValues)); + + $seriesPlot = new RadarPlot(array_reverse($dataValuesX)); + + $dataLabel = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotLabelByIndex($i)->getDataValue(); + $seriesPlot->SetColor(self::$_colourSet[self::$_plotColour++]); + if ($radarStyle == 'filled') { + $seriesPlot->SetFillColor(self::$_colourSet[self::$_plotColour]); + } + $this->_formatPointMarker($seriesPlot,$marker); + $seriesPlot->SetLegend($dataLabel); + + $this->_graph->Add($seriesPlot); + } + } // function _renderPlotRadar() + + + private function _renderPlotContour($groupID) { + $contourStyle = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotStyle(); + + $seriesCount = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + + $dataValues = array(); + // Loop through each data series in turn + for($i = 0; $i < $seriesCount; ++$i) { + $dataValuesY = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex($i)->getDataValues(); + $dataValuesX = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + + $dataValues[$i] = $dataValuesX; + } + $seriesPlot = new ContourPlot($dataValues); + + $this->_graph->Add($seriesPlot); + } // function _renderPlotContour() + + + private function _renderPlotStock($groupID) { + $seriesCount = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $plotOrder = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotOrder(); + $seriesPlots = array(); + + $dataValues = array(); + // Loop through each data series in turn + for($i = 0; $i < $seriesCount; ++$i) { + $dataValuesY = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex($i)->getDataValues(); + $dataValuesX = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($i)->getDataValues(); + + foreach($dataValuesX as $j => $dataValueX) + $dataValues[$j][$plotOrder[$i]] = $dataValueX; + } + + $seriesPlot = new StockPlot($dataValues); + + $this->_graph->Add($seriesPlot); + } // function _renderPlotStock() + + + private function _renderAreaChart($groupCount, $dimensions = '2d') { + require_once('jpgraph_line.php'); + + $this->_renderCartesianPlotArea(); + + for($i = 0; $i < $groupCount; ++$i) { + $this->_renderPlotLine($i,True,False,$dimensions); + } + } // function _renderAreaChart() + + + private function _renderLineChart($groupCount, $dimensions = '2d') { + require_once('jpgraph_line.php'); + + $this->_renderCartesianPlotArea(); + + for($i = 0; $i < $groupCount; ++$i) { + $this->_renderPlotLine($i,False,False,$dimensions); + } + } // function _renderLineChart() + + + private function _renderBarChart($groupCount, $dimensions = '2d') { + require_once('jpgraph_bar.php'); + + $this->_renderCartesianPlotArea(); + + for($i = 0; $i < $groupCount; ++$i) { + $this->_renderPlotBar($i,$dimensions); + } + } // function _renderBarChart() + + + private function _renderScatterChart($groupCount) { + require_once('jpgraph_scatter.php'); + require_once('jpgraph_regstat.php'); + require_once('jpgraph_line.php'); + + $this->_renderCartesianPlotArea('linlin'); + + for($i = 0; $i < $groupCount; ++$i) { + $this->_renderPlotScatter($i,false); + } + } // function _renderScatterChart() + + + private function _renderBubbleChart($groupCount) { + require_once('jpgraph_scatter.php'); + + $this->_renderCartesianPlotArea('linlin'); + + for($i = 0; $i < $groupCount; ++$i) { + $this->_renderPlotScatter($i,true); + } + } // function _renderBubbleChart() + + + private function _renderPieChart($groupCount, $dimensions = '2d', $doughnut = False, $multiplePlots = False) { + require_once('jpgraph_pie.php'); + if ($dimensions == '3d') { + require_once('jpgraph_pie3d.php'); + } + + $this->_renderPiePlotArea($doughnut); + + $iLimit = ($multiplePlots) ? $groupCount : 1; + for($groupID = 0; $groupID < $iLimit; ++$groupID) { + $grouping = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotGrouping(); + $exploded = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotStyle(); + if ($groupID == 0) { + $labelCount = count($this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex(0)->getPointCount()); + if ($labelCount > 0) { + $datasetLabels = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotCategoryByIndex(0)->getDataValues(); + $datasetLabels = $this->_formatDataSetLabels($groupID, $datasetLabels, $labelCount); + } + } + + $seriesCount = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotSeriesCount(); + $seriesPlots = array(); + // For pie charts, we only display the first series: doughnut charts generally display all series + $jLimit = ($multiplePlots) ? $seriesCount : 1; + // Loop through each data series in turn + for($j = 0; $j < $jLimit; ++$j) { + $dataValues = $this->_chart->getPlotArea()->getPlotGroupByIndex($groupID)->getPlotValuesByIndex($j)->getDataValues(); + + // Fill in any missing values in the $dataValues array + $testCurrentIndex = 0; + foreach($dataValues as $k => $dataValue) { + while($k != $testCurrentIndex) { + $dataValues[$testCurrentIndex] = null; + ++$testCurrentIndex; + } + ++$testCurrentIndex; + } + + if ($dimensions == '3d') { + $seriesPlot = new PiePlot3D($dataValues); + } else { + if ($doughnut) { + $seriesPlot = new PiePlotC($dataValues); + } else { + $seriesPlot = new PiePlot($dataValues); + } + } + + if ($multiplePlots) { + $seriesPlot->SetSize(($jLimit-$j) / ($jLimit * 4)); + } + + if ($doughnut) { + $seriesPlot->SetMidColor('white'); + } + + $seriesPlot->SetColor(self::$_colourSet[self::$_plotColour++]); + if (count($datasetLabels) > 0) + $seriesPlot->SetLabels(array_fill(0,count($datasetLabels),'')); + if ($dimensions != '3d') { + $seriesPlot->SetGuideLines(false); + } + if ($j == 0) { + if ($exploded) { + $seriesPlot->ExplodeAll(); + } + $seriesPlot->SetLegends($datasetLabels); + } + + $this->_graph->Add($seriesPlot); + } + } + } // function _renderPieChart() + + + private function _renderRadarChart($groupCount) { + require_once('jpgraph_radar.php'); + + $this->_renderRadarPlotArea(); + + for($groupID = 0; $groupID < $groupCount; ++$groupID) { + $this->_renderPlotRadar($groupID); + } + } // function _renderRadarChart() + + + private function _renderStockChart($groupCount) { + require_once('jpgraph_stock.php'); + + $this->_renderCartesianPlotArea(); + + for($groupID = 0; $groupID < $groupCount; ++$i) { + $this->_renderPlotStock($groupID); + } + } // function _renderStockChart() + + + private function _renderContourChart($groupCount,$dimensions) { + require_once('jpgraph_contour.php'); + + $this->_renderCartesianPlotArea('intint'); + + for($i = 0; $i < $groupCount; ++$i) { + $this->_renderPlotContour($i); + } + } // function _renderContourChart() + + + private function _renderCombinationChart($groupCount,$dimensions,$outputDestination) { + require_once('jpgraph_line.php'); + require_once('jpgraph_bar.php'); + require_once('jpgraph_scatter.php'); + require_once('jpgraph_regstat.php'); + require_once('jpgraph_line.php'); + + $this->_renderCartesianPlotArea(); + + for($i = 0; $i < $groupCount; ++$i) { + $dimensions = null; + $chartType = $this->_chart->getPlotArea()->getPlotGroupByIndex($i)->getPlotType(); + switch ($chartType) { + case 'area3DChart' : + $dimensions = '3d'; + case 'areaChart' : + $this->_renderPlotLine($i,True,True,$dimensions); + break; + case 'bar3DChart' : + $dimensions = '3d'; + case 'barChart' : + $this->_renderPlotBar($i,$dimensions); + break; + case 'line3DChart' : + $dimensions = '3d'; + case 'lineChart' : + $this->_renderPlotLine($i,False,True,$dimensions); + break; + case 'scatterChart' : + $this->_renderPlotScatter($i,false); + break; + case 'bubbleChart' : + $this->_renderPlotScatter($i,true); + break; + default : + $this->_graph = null; + return false; + } + } + + $this->_renderLegend(); + + $this->_graph->Stroke($outputDestination); + return true; + } // function _renderCombinationChart() + + + public function render($outputDestination) { + self::$_plotColour = 0; + + $groupCount = $this->_chart->getPlotArea()->getPlotGroupCount(); + + $dimensions = null; + if ($groupCount == 1) { + $chartType = $this->_chart->getPlotArea()->getPlotGroupByIndex(0)->getPlotType(); + } else { + $chartTypes = array(); + for($i = 0; $i < $groupCount; ++$i) { + $chartTypes[] = $this->_chart->getPlotArea()->getPlotGroupByIndex($i)->getPlotType(); + } + $chartTypes = array_unique($chartTypes); + if (count($chartTypes) == 1) { + $chartType = array_pop($chartTypes); + } elseif (count($chartTypes) == 0) { + echo 'Chart is not yet implemented<br />'; + return false; + } else { + return $this->_renderCombinationChart($groupCount,$dimensions,$outputDestination); + } + } + + switch ($chartType) { + case 'area3DChart' : + $dimensions = '3d'; + case 'areaChart' : + $this->_renderAreaChart($groupCount,$dimensions); + break; + case 'bar3DChart' : + $dimensions = '3d'; + case 'barChart' : + $this->_renderBarChart($groupCount,$dimensions); + break; + case 'line3DChart' : + $dimensions = '3d'; + case 'lineChart' : + $this->_renderLineChart($groupCount,$dimensions); + break; + case 'pie3DChart' : + $dimensions = '3d'; + case 'pieChart' : + $this->_renderPieChart($groupCount,$dimensions,False,False); + break; + case 'doughnut3DChart' : + $dimensions = '3d'; + case 'doughnutChart' : + $this->_renderPieChart($groupCount,$dimensions,True,True); + break; + case 'scatterChart' : + $this->_renderScatterChart($groupCount); + break; + case 'bubbleChart' : + $this->_renderBubbleChart($groupCount); + break; + case 'radarChart' : + $this->_renderRadarChart($groupCount); + break; + case 'surface3DChart' : + $dimensions = '3d'; + case 'surfaceChart' : + $this->_renderContourChart($groupCount,$dimensions); + break; + case 'stockChart' : + $this->_renderStockChart($groupCount,$dimensions); + break; + default : + echo $chartType.' is not yet implemented<br />'; + return false; + } + $this->_renderLegend(); + + $this->_graph->Stroke($outputDestination); + return true; + } // function render() + + + /** + * Create a new PHPExcel_Chart_Renderer_jpgraph + */ + public function __construct(PHPExcel_Chart $chart) + { + $this->_graph = null; + $this->_chart = $chart; + } // function __construct() + +} // PHPExcel_Chart_Renderer_jpgraph diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart/Title.php b/site/config/PHPExcel/Classes/PHPExcel/Chart/Title.php new file mode 100644 index 0000000..ef26f46 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart/Title.php @@ -0,0 +1,89 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Chart_Title + * + * @category PHPExcel + * @package PHPExcel_Chart + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Chart_Title +{ + + /** + * Title Caption + * + * @var string + */ + private $_caption = null; + + /** + * Title Layout + * + * @var PHPExcel_Chart_Layout + */ + private $_layout = null; + + /** + * Create a new PHPExcel_Chart_Title + */ + public function __construct($caption = null, PHPExcel_Chart_Layout $layout = null) + { + $this->_caption = $caption; + $this->_layout = $layout; + } + + /** + * Get caption + * + * @return string + */ + public function getCaption() { + return $this->_caption; + } + + /** + * Set caption + * + * @param string $caption + */ + public function setCaption($caption = null) { + $this->_caption = $caption; + } + + /** + * Get Layout + * + * @return PHPExcel_Chart_Layout + */ + public function getLayout() { + return $this->_layout; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Chart/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Chart/_notes/dwsync.xml new file mode 100644 index 0000000..3e3ac85 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Chart/_notes/dwsync.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="DataSeries.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Exception.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Layout.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Legend.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="PlotArea.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Title.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="DataSeriesValues.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129946278369999999" remote="129972060000000000" Dst="-1" /> +<file name="Layout.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851519999999" remote="129984144000000000" Dst="-1" /> +<file name="Exception.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851519999999" remote="129984144000000000" Dst="-1" /> +<file name="Legend.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851519999999" remote="129984144000000000" Dst="-1" /> +<file name="Title.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851519999999" remote="129984144000000000" Dst="-1" /> +<file name="DataSeries.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851519999999" remote="129984144000000000" Dst="-1" /> +<file name="DataSeriesValues.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851519999999" remote="129984144000000000" Dst="-1" /> +<file name="PlotArea.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851519999999" remote="129984144000000000" Dst="-1" /> +<file name="Layout.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851519999999" remote="129997098600000000" Dst="-1" /> +<file name="Exception.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851519999999" remote="129997098600000000" Dst="-1" /> +<file name="Legend.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851519999999" remote="129997098600000000" Dst="-1" /> +<file name="Title.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851519999999" remote="129997098600000000" Dst="-1" /> +<file name="DataSeries.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851519999999" remote="129997098600000000" Dst="-1" /> +<file name="DataSeriesValues.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851519999999" remote="129997098600000000" Dst="-1" /> +<file name="PlotArea.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851519999999" remote="129997098600000000" Dst="-1" /> +<file name="Layout.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559981925718" remote="131260196400000000" Dst="1" /> +<file name="Exception.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559982347896" remote="131260196400000000" Dst="1" /> +<file name="Legend.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559982798315" remote="131260196400000000" Dst="1" /> +<file name="Title.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559983263337" remote="131260196400000000" Dst="1" /> +<file name="DataSeries.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559983720630" remote="131260196400000000" Dst="1" /> +<file name="DataSeriesValues.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559984168411" remote="131260196400000000" Dst="1" /> +<file name="PlotArea.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559984626822" remote="131260196400000000" Dst="1" /> +<file name="Layout.php" server="62.244.88.21/amashow/" local="131414752282555640" remote="131414680800000000" Dst="2" /> +<file name="Exception.php" server="62.244.88.21/amashow/" local="131414752282735010" remote="131414680800000000" Dst="2" /> +<file name="Legend.php" server="62.244.88.21/amashow/" local="131414752283042556" remote="131414680800000000" Dst="2" /> +<file name="Title.php" server="62.244.88.21/amashow/" local="131414752283230182" remote="131414680800000000" Dst="2" /> +<file name="DataSeries.php" server="62.244.88.21/amashow/" local="131414752283526746" remote="131414680800000000" Dst="2" /> +<file name="DataSeriesValues.php" server="62.244.88.21/amashow/" local="131414752283833360" remote="131414680800000000" Dst="2" /> +<file name="PlotArea.php" server="62.244.88.21/amashow/" local="131414752284037237" remote="131414680800000000" Dst="2" /> +<file name="DataSeriesValues.php" server="62.244.88.21/deciday/" local="131919461226322324" remote="131826017400000000" Dst="1" /> +<file name="Layout.php" server="62.244.88.21/deciday/" local="131919461229740981" remote="131826017400000000" Dst="1" /> +<file name="Exception.php" server="62.244.88.21/deciday/" local="131919461227018047" remote="131826017400000000" Dst="1" /> +<file name="Legend.php" server="62.244.88.21/deciday/" local="131919461228030844" remote="131826017400000000" Dst="1" /> +<file name="DataSeries.php" server="62.244.88.21/deciday/" local="131919461229406769" remote="131826017400000000" Dst="1" /> +<file name="PlotArea.php" server="62.244.88.21/deciday/" local="131919461229750495" remote="131826017400000000" Dst="1" /> +<file name="Title.php" server="62.244.88.21/deciday/" local="131919461230873798" remote="131826017400000000" Dst="1" /> +<file name="DataSeries.php" server="62.244.88.21/deciday_18/" local="131414752283526746" remote="131825945400000000" Dst="2" /> +<file name="DataSeriesValues.php" server="62.244.88.21/deciday_18/" local="131414752283833360" remote="131825945400000000" Dst="2" /> +<file name="Exception.php" server="62.244.88.21/deciday_18/" local="131414752282735010" remote="131825945400000000" Dst="2" /> +<file name="Layout.php" server="62.244.88.21/deciday_18/" local="131414752282555640" remote="131825945400000000" Dst="2" /> +<file name="Legend.php" server="62.244.88.21/deciday_18/" local="131414752283042556" remote="131825945400000000" Dst="2" /> +<file name="PlotArea.php" server="62.244.88.21/deciday_18/" local="131414752284037237" remote="131825945400000000" Dst="2" /> +<file name="Title.php" server="62.244.88.21/deciday_18/" local="131414752283230182" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Comment.php b/site/config/PHPExcel/Classes/PHPExcel/Comment.php new file mode 100644 index 0000000..4ba239f --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Comment.php @@ -0,0 +1,317 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Comment + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Comment implements PHPExcel_IComparable +{ + /** + * Author + * + * @var string + */ + private $_author; + + /** + * Rich text comment + * + * @var PHPExcel_RichText + */ + private $_text; + + /** + * Comment width (CSS style, i.e. XXpx or YYpt) + * + * @var string + */ + private $_width = '96pt'; + + /** + * Left margin (CSS style, i.e. XXpx or YYpt) + * + * @var string + */ + private $_marginLeft = '59.25pt'; + + /** + * Top margin (CSS style, i.e. XXpx or YYpt) + * + * @var string + */ + private $_marginTop = '1.5pt'; + + /** + * Visible + * + * @var boolean + */ + private $_visible = false; + + /** + * Comment height (CSS style, i.e. XXpx or YYpt) + * + * @var string + */ + private $_height = '55.5pt'; + + /** + * Comment fill color + * + * @var PHPExcel_Style_Color + */ + private $_fillColor; + + /** + * Alignment + * + * @var string + */ + private $_alignment; + + /** + * Create a new PHPExcel_Comment + * + * @throws Exception + */ + public function __construct() + { + // Initialise variables + $this->_author = 'Author'; + $this->_text = new PHPExcel_RichText(); + $this->_fillColor = new PHPExcel_Style_Color('FFFFFFE1'); + $this->_alignment = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL; + } + + /** + * Get Author + * + * @return string + */ + public function getAuthor() { + return $this->_author; + } + + /** + * Set Author + * + * @param string $pValue + * @return PHPExcel_Comment + */ + public function setAuthor($pValue = '') { + $this->_author = $pValue; + return $this; + } + + /** + * Get Rich text comment + * + * @return PHPExcel_RichText + */ + public function getText() { + return $this->_text; + } + + /** + * Set Rich text comment + * + * @param PHPExcel_RichText $pValue + * @return PHPExcel_Comment + */ + public function setText(PHPExcel_RichText $pValue) { + $this->_text = $pValue; + return $this; + } + + /** + * Get comment width (CSS style, i.e. XXpx or YYpt) + * + * @return string + */ + public function getWidth() { + return $this->_width; + } + + /** + * Set comment width (CSS style, i.e. XXpx or YYpt) + * + * @param string $value + * @return PHPExcel_Comment + */ + public function setWidth($value = '96pt') { + $this->_width = $value; + return $this; + } + + /** + * Get comment height (CSS style, i.e. XXpx or YYpt) + * + * @return string + */ + public function getHeight() { + return $this->_height; + } + + /** + * Set comment height (CSS style, i.e. XXpx or YYpt) + * + * @param string $value + * @return PHPExcel_Comment + */ + public function setHeight($value = '55.5pt') { + $this->_height = $value; + return $this; + } + + /** + * Get left margin (CSS style, i.e. XXpx or YYpt) + * + * @return string + */ + public function getMarginLeft() { + return $this->_marginLeft; + } + + /** + * Set left margin (CSS style, i.e. XXpx or YYpt) + * + * @param string $value + * @return PHPExcel_Comment + */ + public function setMarginLeft($value = '59.25pt') { + $this->_marginLeft = $value; + return $this; + } + + /** + * Get top margin (CSS style, i.e. XXpx or YYpt) + * + * @return string + */ + public function getMarginTop() { + return $this->_marginTop; + } + + /** + * Set top margin (CSS style, i.e. XXpx or YYpt) + * + * @param string $value + * @return PHPExcel_Comment + */ + public function setMarginTop($value = '1.5pt') { + $this->_marginTop = $value; + return $this; + } + + /** + * Is the comment visible by default? + * + * @return boolean + */ + public function getVisible() { + return $this->_visible; + } + + /** + * Set comment default visibility + * + * @param boolean $value + * @return PHPExcel_Comment + */ + public function setVisible($value = false) { + $this->_visible = $value; + return $this; + } + + /** + * Get fill color + * + * @return PHPExcel_Style_Color + */ + public function getFillColor() { + return $this->_fillColor; + } + + /** + * Set Alignment + * + * @param string $pValue + * @return PHPExcel_Comment + */ + public function setAlignment($pValue = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL) { + $this->_alignment = $pValue; + return $this; + } + + /** + * Get Alignment + * + * @return string + */ + public function getAlignment() { + return $this->_alignment; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + return md5( + $this->_author + . $this->_text->getHashCode() + . $this->_width + . $this->_height + . $this->_marginLeft + . $this->_marginTop + . ($this->_visible ? 1 : 0) + . $this->_fillColor->getHashCode() + . $this->_alignment + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/DocumentProperties.php b/site/config/PHPExcel/Classes/PHPExcel/DocumentProperties.php new file mode 100644 index 0000000..1f4cad2 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/DocumentProperties.php @@ -0,0 +1,588 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_DocumentProperties + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_DocumentProperties +{ + /** constants */ + const PROPERTY_TYPE_BOOLEAN = 'b'; + const PROPERTY_TYPE_INTEGER = 'i'; + const PROPERTY_TYPE_FLOAT = 'f'; + const PROPERTY_TYPE_DATE = 'd'; + const PROPERTY_TYPE_STRING = 's'; + const PROPERTY_TYPE_UNKNOWN = 'u'; + + + /** + * Creator + * + * @var string + */ + private $_creator = 'Unknown Creator'; + + /** + * LastModifiedBy + * + * @var string + */ + private $_lastModifiedBy; + + /** + * Created + * + * @var datetime + */ + private $_created; + + /** + * Modified + * + * @var datetime + */ + private $_modified; + + /** + * Title + * + * @var string + */ + private $_title = 'Untitled Spreadsheet'; + + /** + * Description + * + * @var string + */ + private $_description = ''; + + /** + * Subject + * + * @var string + */ + private $_subject = ''; + + /** + * Keywords + * + * @var string + */ + private $_keywords = ''; + + /** + * Category + * + * @var string + */ + private $_category = ''; + + /** + * Manager + * + * @var string + */ + private $_manager = ''; + + /** + * Company + * + * @var string + */ + private $_company = 'Microsoft Corporation'; + + /** + * Custom Properties + * + * @var string + */ + private $_customProperties = array(); + + + /** + * Create a new PHPExcel_DocumentProperties + */ + public function __construct() + { + // Initialise values + $this->_lastModifiedBy = $this->_creator; + $this->_created = time(); + $this->_modified = time(); + } + + /** + * Get Creator + * + * @return string + */ + public function getCreator() { + return $this->_creator; + } + + /** + * Set Creator + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setCreator($pValue = '') { + $this->_creator = $pValue; + return $this; + } + + /** + * Get Last Modified By + * + * @return string + */ + public function getLastModifiedBy() { + return $this->_lastModifiedBy; + } + + /** + * Set Last Modified By + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setLastModifiedBy($pValue = '') { + $this->_lastModifiedBy = $pValue; + return $this; + } + + /** + * Get Created + * + * @return datetime + */ + public function getCreated() { + return $this->_created; + } + + /** + * Set Created + * + * @param datetime $pValue + * @return PHPExcel_DocumentProperties + */ + public function setCreated($pValue = null) { + if ($pValue === NULL) { + $pValue = time(); + } elseif (is_string($pValue)) { + if (is_numeric($pValue)) { + $pValue = intval($pValue); + } else { + $pValue = strtotime($pValue); + } + } + + $this->_created = $pValue; + return $this; + } + + /** + * Get Modified + * + * @return datetime + */ + public function getModified() { + return $this->_modified; + } + + /** + * Set Modified + * + * @param datetime $pValue + * @return PHPExcel_DocumentProperties + */ + public function setModified($pValue = null) { + if ($pValue === NULL) { + $pValue = time(); + } elseif (is_string($pValue)) { + if (is_numeric($pValue)) { + $pValue = intval($pValue); + } else { + $pValue = strtotime($pValue); + } + } + + $this->_modified = $pValue; + return $this; + } + + /** + * Get Title + * + * @return string + */ + public function getTitle() { + return $this->_title; + } + + /** + * Set Title + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setTitle($pValue = '') { + $this->_title = $pValue; + return $this; + } + + /** + * Get Description + * + * @return string + */ + public function getDescription() { + return $this->_description; + } + + /** + * Set Description + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setDescription($pValue = '') { + $this->_description = $pValue; + return $this; + } + + /** + * Get Subject + * + * @return string + */ + public function getSubject() { + return $this->_subject; + } + + /** + * Set Subject + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setSubject($pValue = '') { + $this->_subject = $pValue; + return $this; + } + + /** + * Get Keywords + * + * @return string + */ + public function getKeywords() { + return $this->_keywords; + } + + /** + * Set Keywords + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setKeywords($pValue = '') { + $this->_keywords = $pValue; + return $this; + } + + /** + * Get Category + * + * @return string + */ + public function getCategory() { + return $this->_category; + } + + /** + * Set Category + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setCategory($pValue = '') { + $this->_category = $pValue; + return $this; + } + + /** + * Get Company + * + * @return string + */ + public function getCompany() { + return $this->_company; + } + + /** + * Set Company + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setCompany($pValue = '') { + $this->_company = $pValue; + return $this; + } + + /** + * Get Manager + * + * @return string + */ + public function getManager() { + return $this->_manager; + } + + /** + * Set Manager + * + * @param string $pValue + * @return PHPExcel_DocumentProperties + */ + public function setManager($pValue = '') { + $this->_manager = $pValue; + return $this; + } + + /** + * Get a List of Custom Property Names + * + * @return array of string + */ + public function getCustomProperties() { + return array_keys($this->_customProperties); + } + + /** + * Check if a Custom Property is defined + * + * @param string $propertyName + * @return boolean + */ + public function isCustomPropertySet($propertyName) { + return isset($this->_customProperties[$propertyName]); + } + + /** + * Get a Custom Property Value + * + * @param string $propertyName + * @return string + */ + public function getCustomPropertyValue($propertyName) { + if (isset($this->_customProperties[$propertyName])) { + return $this->_customProperties[$propertyName]['value']; + } + + } + + /** + * Get a Custom Property Type + * + * @param string $propertyName + * @return string + */ + public function getCustomPropertyType($propertyName) { + if (isset($this->_customProperties[$propertyName])) { + return $this->_customProperties[$propertyName]['type']; + } + + } + + /** + * Set a Custom Property + * + * @param string $propertyName + * @param mixed $propertyValue + * @param string $propertyType + * 'i' : Integer + * 'f' : Floating Point + * 's' : String + * 'd' : Date/Time + * 'b' : Boolean + * @return PHPExcel_DocumentProperties + */ + public function setCustomProperty($propertyName,$propertyValue='',$propertyType=NULL) { + if (($propertyType === NULL) || (!in_array($propertyType,array(self::PROPERTY_TYPE_INTEGER, + self::PROPERTY_TYPE_FLOAT, + self::PROPERTY_TYPE_STRING, + self::PROPERTY_TYPE_DATE, + self::PROPERTY_TYPE_BOOLEAN)))) { + if ($propertyValue === NULL) { + $propertyType = self::PROPERTY_TYPE_STRING; + } elseif (is_float($propertyValue)) { + $propertyType = self::PROPERTY_TYPE_FLOAT; + } elseif(is_int($propertyValue)) { + $propertyType = self::PROPERTY_TYPE_INTEGER; + } elseif (is_bool($propertyValue)) { + $propertyType = self::PROPERTY_TYPE_BOOLEAN; + } else { + $propertyType = self::PROPERTY_TYPE_STRING; + } + } + + $this->_customProperties[$propertyName] = array('value' => $propertyValue, 'type' => $propertyType); + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } + + public static function convertProperty($propertyValue,$propertyType) { + switch ($propertyType) { + case 'empty' : // Empty + return ''; + break; + case 'null' : // Null + return NULL; + break; + case 'i1' : // 1-Byte Signed Integer + case 'i2' : // 2-Byte Signed Integer + case 'i4' : // 4-Byte Signed Integer + case 'i8' : // 8-Byte Signed Integer + case 'int' : // Integer + return (int) $propertyValue; + break; + case 'ui1' : // 1-Byte Unsigned Integer + case 'ui2' : // 2-Byte Unsigned Integer + case 'ui4' : // 4-Byte Unsigned Integer + case 'ui8' : // 8-Byte Unsigned Integer + case 'uint' : // Unsigned Integer + return abs((int) $propertyValue); + break; + case 'r4' : // 4-Byte Real Number + case 'r8' : // 8-Byte Real Number + case 'decimal' : // Decimal + return (float) $propertyValue; + break; + case 'lpstr' : // LPSTR + case 'lpwstr' : // LPWSTR + case 'bstr' : // Basic String + return $propertyValue; + break; + case 'date' : // Date and Time + case 'filetime' : // File Time + return strtotime($propertyValue); + break; + case 'bool' : // Boolean + return ($propertyValue == 'true') ? True : False; + break; + case 'cy' : // Currency + case 'error' : // Error Status Code + case 'vector' : // Vector + case 'array' : // Array + case 'blob' : // Binary Blob + case 'oblob' : // Binary Blob Object + case 'stream' : // Binary Stream + case 'ostream' : // Binary Stream Object + case 'storage' : // Binary Storage + case 'ostorage' : // Binary Storage Object + case 'vstream' : // Binary Versioned Stream + case 'clsid' : // Class ID + case 'cf' : // Clipboard Data + return $propertyValue; + break; + } + return $propertyValue; + } + + public static function convertPropertyType($propertyType) { + switch ($propertyType) { + case 'i1' : // 1-Byte Signed Integer + case 'i2' : // 2-Byte Signed Integer + case 'i4' : // 4-Byte Signed Integer + case 'i8' : // 8-Byte Signed Integer + case 'int' : // Integer + case 'ui1' : // 1-Byte Unsigned Integer + case 'ui2' : // 2-Byte Unsigned Integer + case 'ui4' : // 4-Byte Unsigned Integer + case 'ui8' : // 8-Byte Unsigned Integer + case 'uint' : // Unsigned Integer + return self::PROPERTY_TYPE_INTEGER; + break; + case 'r4' : // 4-Byte Real Number + case 'r8' : // 8-Byte Real Number + case 'decimal' : // Decimal + return self::PROPERTY_TYPE_FLOAT; + break; + case 'empty' : // Empty + case 'null' : // Null + case 'lpstr' : // LPSTR + case 'lpwstr' : // LPWSTR + case 'bstr' : // Basic String + return self::PROPERTY_TYPE_STRING; + break; + case 'date' : // Date and Time + case 'filetime' : // File Time + return self::PROPERTY_TYPE_DATE; + break; + case 'bool' : // Boolean + return self::PROPERTY_TYPE_BOOLEAN; + break; + case 'cy' : // Currency + case 'error' : // Error Status Code + case 'vector' : // Vector + case 'array' : // Array + case 'blob' : // Binary Blob + case 'oblob' : // Binary Blob Object + case 'stream' : // Binary Stream + case 'ostream' : // Binary Stream Object + case 'storage' : // Binary Storage + case 'ostorage' : // Binary Storage Object + case 'vstream' : // Binary Versioned Stream + case 'clsid' : // Class ID + case 'cf' : // Clipboard Data + return self::PROPERTY_TYPE_UNKNOWN; + break; + } + return self::PROPERTY_TYPE_UNKNOWN; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/DocumentSecurity.php b/site/config/PHPExcel/Classes/PHPExcel/DocumentSecurity.php new file mode 100644 index 0000000..32bcb93 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/DocumentSecurity.php @@ -0,0 +1,218 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_DocumentSecurity + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_DocumentSecurity +{ + /** + * LockRevision + * + * @var boolean + */ + private $_lockRevision; + + /** + * LockStructure + * + * @var boolean + */ + private $_lockStructure; + + /** + * LockWindows + * + * @var boolean + */ + private $_lockWindows; + + /** + * RevisionsPassword + * + * @var string + */ + private $_revisionsPassword; + + /** + * WorkbookPassword + * + * @var string + */ + private $_workbookPassword; + + /** + * Create a new PHPExcel_DocumentSecurity + */ + public function __construct() + { + // Initialise values + $this->_lockRevision = false; + $this->_lockStructure = false; + $this->_lockWindows = false; + $this->_revisionsPassword = ''; + $this->_workbookPassword = ''; + } + + /** + * Is some sort of dcument security enabled? + * + * @return boolean + */ + function isSecurityEnabled() { + return $this->_lockRevision || + $this->_lockStructure || + $this->_lockWindows; + } + + /** + * Get LockRevision + * + * @return boolean + */ + function getLockRevision() { + return $this->_lockRevision; + } + + /** + * Set LockRevision + * + * @param boolean $pValue + * @return PHPExcel_DocumentSecurity + */ + function setLockRevision($pValue = false) { + $this->_lockRevision = $pValue; + return $this; + } + + /** + * Get LockStructure + * + * @return boolean + */ + function getLockStructure() { + return $this->_lockStructure; + } + + /** + * Set LockStructure + * + * @param boolean $pValue + * @return PHPExcel_DocumentSecurity + */ + function setLockStructure($pValue = false) { + $this->_lockStructure = $pValue; + return $this; + } + + /** + * Get LockWindows + * + * @return boolean + */ + function getLockWindows() { + return $this->_lockWindows; + } + + /** + * Set LockWindows + * + * @param boolean $pValue + * @return PHPExcel_DocumentSecurity + */ + function setLockWindows($pValue = false) { + $this->_lockWindows = $pValue; + return $this; + } + + /** + * Get RevisionsPassword (hashed) + * + * @return string + */ + function getRevisionsPassword() { + return $this->_revisionsPassword; + } + + /** + * Set RevisionsPassword + * + * @param string $pValue + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @return PHPExcel_DocumentSecurity + */ + function setRevisionsPassword($pValue = '', $pAlreadyHashed = false) { + if (!$pAlreadyHashed) { + $pValue = PHPExcel_Shared_PasswordHasher::hashPassword($pValue); + } + $this->_revisionsPassword = $pValue; + return $this; + } + + /** + * Get WorkbookPassword (hashed) + * + * @return string + */ + function getWorkbookPassword() { + return $this->_workbookPassword; + } + + /** + * Set WorkbookPassword + * + * @param string $pValue + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @return PHPExcel_DocumentSecurity + */ + function setWorkbookPassword($pValue = '', $pAlreadyHashed = false) { + if (!$pAlreadyHashed) { + $pValue = PHPExcel_Shared_PasswordHasher::hashPassword($pValue); + } + $this->_workbookPassword = $pValue; + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Exception.php b/site/config/PHPExcel/Classes/PHPExcel/Exception.php new file mode 100644 index 0000000..454eaaa --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Exception.php @@ -0,0 +1,52 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Exception + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Exception extends Exception { + /** + * Error handler callback + * + * @param mixed $code + * @param mixed $string + * @param mixed $file + * @param mixed $line + * @param mixed $context + */ + public static function errorHandlerCallback($code, $string, $file, $line, $context) { + $e = new self($string, $code); + $e->line = $line; + $e->file = $file; + throw $e; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/HashTable.php b/site/config/PHPExcel/Classes/PHPExcel/HashTable.php new file mode 100644 index 0000000..ca15e6e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/HashTable.php @@ -0,0 +1,202 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_HashTable + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_HashTable +{ + /** + * HashTable elements + * + * @var array + */ + public $_items = array(); + + /** + * HashTable key map + * + * @var array + */ + public $_keyMap = array(); + + /** + * Create a new PHPExcel_HashTable + * + * @param PHPExcel_IComparable[] $pSource Optional source array to create HashTable from + * @throws Exception + */ + public function __construct($pSource = null) + { + if ($pSource !== NULL) { + // Create HashTable + $this->addFromSource($pSource); + } + } + + /** + * Add HashTable items from source + * + * @param PHPExcel_IComparable[] $pSource Source array to create HashTable from + * @throws Exception + */ + public function addFromSource($pSource = null) { + // Check if an array was passed + if ($pSource == null) { + return; + } else if (!is_array($pSource)) { + throw new Exception('Invalid array parameter passed.'); + } + + foreach ($pSource as $item) { + $this->add($item); + } + } + + /** + * Add HashTable item + * + * @param PHPExcel_IComparable $pSource Item to add + * @throws Exception + */ + public function add(PHPExcel_IComparable $pSource = null) { + $hash = $pSource->getHashCode(); + if (!isset($this->_items[$hash])) { + $this->_items[$hash] = $pSource; + $this->_keyMap[count($this->_items) - 1] = $hash; + } + } + + /** + * Remove HashTable item + * + * @param PHPExcel_IComparable $pSource Item to remove + * @throws Exception + */ + public function remove(PHPExcel_IComparable $pSource = null) { + $hash = $pSource->getHashCode(); + if (isset($this->_items[$hash])) { + unset($this->_items[$hash]); + + $deleteKey = -1; + foreach ($this->_keyMap as $key => $value) { + if ($deleteKey >= 0) { + $this->_keyMap[$key - 1] = $value; + } + + if ($value == $hash) { + $deleteKey = $key; + } + } + unset($this->_keyMap[count($this->_keyMap) - 1]); + } + } + + /** + * Clear HashTable + * + */ + public function clear() { + $this->_items = array(); + $this->_keyMap = array(); + } + + /** + * Count + * + * @return int + */ + public function count() { + return count($this->_items); + } + + /** + * Get index for hash code + * + * @param string $pHashCode + * @return int Index + */ + public function getIndexForHashCode($pHashCode = '') { + return array_search($pHashCode, $this->_keyMap); + } + + /** + * Get by index + * + * @param int $pIndex + * @return PHPExcel_IComparable + * + */ + public function getByIndex($pIndex = 0) { + if (isset($this->_keyMap[$pIndex])) { + return $this->getByHashCode( $this->_keyMap[$pIndex] ); + } + + return null; + } + + /** + * Get by hashcode + * + * @param string $pHashCode + * @return PHPExcel_IComparable + * + */ + public function getByHashCode($pHashCode = '') { + if (isset($this->_items[$pHashCode])) { + return $this->_items[$pHashCode]; + } + + return null; + } + + /** + * HashTable to array + * + * @return PHPExcel_IComparable[] + */ + public function toArray() { + return $this->_items; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/IComparable.php b/site/config/PHPExcel/Classes/PHPExcel/IComparable.php new file mode 100644 index 0000000..1c87f39 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/IComparable.php @@ -0,0 +1,43 @@ +<?php +/** + * PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_IComparable + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +interface PHPExcel_IComparable +{ + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode(); + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/IOFactory.php b/site/config/PHPExcel/Classes/PHPExcel/IOFactory.php new file mode 100644 index 0000000..eeeb2af --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/IOFactory.php @@ -0,0 +1,288 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_IOFactory + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_IOFactory +{ + /** + * Search locations + * + * @var array + * @access private + * @static + */ + private static $_searchLocations = array( + array( 'type' => 'IWriter', 'path' => 'PHPExcel/Writer/{0}.php', 'class' => 'PHPExcel_Writer_{0}' ), + array( 'type' => 'IReader', 'path' => 'PHPExcel/Reader/{0}.php', 'class' => 'PHPExcel_Reader_{0}' ) + ); + + /** + * Autoresolve classes + * + * @var array + * @access private + * @static + */ + private static $_autoResolveClasses = array( + 'Excel2007', + 'Excel5', + 'Excel2003XML', + 'OOCalc', + 'SYLK', + 'Gnumeric', + 'HTML', + 'CSV', + ); + + /** + * Private constructor for PHPExcel_IOFactory + */ + private function __construct() { } + + /** + * Get search locations + * + * @static + * @access public + * @return array + */ + public static function getSearchLocations() { + return self::$_searchLocations; + } // function getSearchLocations() + + /** + * Set search locations + * + * @static + * @access public + * @param array $value + * @throws Exception + */ + public static function setSearchLocations($value) { + if (is_array($value)) { + self::$_searchLocations = $value; + } else { + throw new Exception('Invalid parameter passed.'); + } + } // function setSearchLocations() + + /** + * Add search location + * + * @static + * @access public + * @param string $type Example: IWriter + * @param string $location Example: PHPExcel/Writer/{0}.php + * @param string $classname Example: PHPExcel_Writer_{0} + */ + public static function addSearchLocation($type = '', $location = '', $classname = '') { + self::$_searchLocations[] = array( 'type' => $type, 'path' => $location, 'class' => $classname ); + } // function addSearchLocation() + + /** + * Create PHPExcel_Writer_IWriter + * + * @static + * @access public + * @param PHPExcel $phpExcel + * @param string $writerType Example: Excel2007 + * @return PHPExcel_Writer_IWriter + * @throws Exception + */ + public static function createWriter(PHPExcel $phpExcel, $writerType = '') { + // Search type + $searchType = 'IWriter'; + + // Include class + foreach (self::$_searchLocations as $searchLocation) { + if ($searchLocation['type'] == $searchType) { + $className = str_replace('{0}', $writerType, $searchLocation['class']); + + $instance = new $className($phpExcel); + if ($instance !== NULL) { + return $instance; + } + } + } + + // Nothing found... + throw new Exception("No $searchType found for type $writerType"); + } // function createWriter() + + /** + * Create PHPExcel_Reader_IReader + * + * @static + * @access public + * @param string $readerType Example: Excel2007 + * @return PHPExcel_Reader_IReader + * @throws Exception + */ + public static function createReader($readerType = '') { + // Search type + $searchType = 'IReader'; + + // Include class + foreach (self::$_searchLocations as $searchLocation) { + if ($searchLocation['type'] == $searchType) { + $className = str_replace('{0}', $readerType, $searchLocation['class']); + + $instance = new $className(); + if ($instance !== NULL) { + return $instance; + } + } + } + + // Nothing found... + throw new Exception("No $searchType found for type $readerType"); + } // function createReader() + + /** + * Loads PHPExcel from file using automatic PHPExcel_Reader_IReader resolution + * + * @static + * @access public + * @param string $pFileName The name of the spreadsheet file + * @return PHPExcel + * @throws Exception + */ + public static function load($pFilename) { + $reader = self::createReaderForFile($pFilename); + return $reader->load($pFilename); + } // function load() + + /** + * Identify file type using automatic PHPExcel_Reader_IReader resolution + * + * @static + * @access public + * @param string $pFileName The name of the spreadsheet file to identify + * @return string + * @throws Exception + */ + public static function identify($pFilename) { + $reader = self::createReaderForFile($pFilename); + $className = get_class($reader); + $classType = explode('_',$className); + unset($reader); + return array_pop($classType); + } // function identify() + + /** + * Create PHPExcel_Reader_IReader for file using automatic PHPExcel_Reader_IReader resolution + * + * @static + * @access public + * @param string $pFileName The name of the spreadsheet file + * @return PHPExcel_Reader_IReader + * @throws Exception + */ + public static function createReaderForFile($pFilename) { + + // First, lucky guess by inspecting file extension + $pathinfo = pathinfo($pFilename); + + $extensionType = NULL; + if (isset($pathinfo['extension'])) { + switch (strtolower($pathinfo['extension'])) { + case 'xlsx': // Excel (OfficeOpenXML) Spreadsheet + case 'xlsm': // Excel (OfficeOpenXML) Macro Spreadsheet (macros will be discarded) + case 'xltx': // Excel (OfficeOpenXML) Template + case 'xltm': // Excel (OfficeOpenXML) Macro Template (macros will be discarded) + $extensionType = 'Excel2007'; + break; + case 'xls': // Excel (BIFF) Spreadsheet + case 'xlt': // Excel (BIFF) Template + $extensionType = 'Excel5'; + break; + case 'ods': // Open/Libre Offic Calc + case 'ots': // Open/Libre Offic Calc Template + $extensionType = 'OOCalc'; + break; + case 'slk': + $extensionType = 'SYLK'; + break; + case 'xml': // Excel 2003 SpreadSheetML + $extensionType = 'Excel2003XML'; + break; + case 'gnumeric': + $extensionType = 'Gnumeric'; + break; + case 'htm': + case 'html': + $extensionType = 'HTML'; + break; + case 'csv': + // Do nothing + // We must not try to use CSV reader since it loads + // all files including Excel files etc. + break; + default: + break; + } + + if ($extensionType !== NULL) { + $reader = self::createReader($extensionType); + // Let's see if we are lucky + if (isset($reader) && $reader->canRead($pFilename)) { + return $reader; + } + } + } + + // If we reach here then "lucky guess" didn't give any result + // Try walking through all the options in self::$_autoResolveClasses + foreach (self::$_autoResolveClasses as $autoResolveClass) { + // Ignore our original guess, we know that won't work + if ($autoResolveClass !== $extensionType) { + $reader = self::createReader($autoResolveClass); + if ($reader->canRead($pFilename)) { + return $reader; + } + } + } + + throw new Exception('Unable to identify a reader for this file'); + } // function createReaderForFile() +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/NamedRange.php b/site/config/PHPExcel/Classes/PHPExcel/NamedRange.php new file mode 100644 index 0000000..3debd41 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/NamedRange.php @@ -0,0 +1,245 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_NamedRange + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_NamedRange +{ + /** + * Range name + * + * @var string + */ + private $_name; + + /** + * Worksheet on which the named range can be resolved + * + * @var PHPExcel_Worksheet + */ + private $_worksheet; + + /** + * Range of the referenced cells + * + * @var string + */ + private $_range; + + /** + * Is the named range local? (i.e. can only be used on $this->_worksheet) + * + * @var bool + */ + private $_localOnly; + + /** + * Scope + * + * @var PHPExcel_Worksheet + */ + private $_scope; + + /** + * Create a new NamedRange + * + * @param string $pName + * @param PHPExcel_Worksheet $pWorksheet + * @param string $pRange + * @param bool $pLocalOnly + * @param PHPExcel_Worksheet|null $pScope Scope. Only applies when $pLocalOnly = true. Null for global scope. + */ + public function __construct($pName = null, PHPExcel_Worksheet $pWorksheet, $pRange = 'A1', $pLocalOnly = false, $pScope = null) + { + // Validate data + if (($pName === NULL) || ($pWorksheet === NULL) || ($pRange === NULL)) { + throw new Exception('Parameters can not be null.'); + } + + // Set local members + $this->_name = $pName; + $this->_worksheet = $pWorksheet; + $this->_range = $pRange; + $this->_localOnly = $pLocalOnly; + $this->_scope = ($pLocalOnly == true) ? + (($pScope == null) ? $pWorksheet : $pScope) : null; + } + + /** + * Get name + * + * @return string + */ + public function getName() { + return $this->_name; + } + + /** + * Set name + * + * @param string $value + * @return PHPExcel_NamedRange + */ + public function setName($value = null) { + if ($value !== NULL) { + // Old title + $oldTitle = $this->_name; + + // Re-attach + if ($this->_worksheet !== NULL) { + $this->_worksheet->getParent()->removeNamedRange($this->_name,$this->_worksheet); + } + $this->_name = $value; + + if ($this->_worksheet !== NULL) { + $this->_worksheet->getParent()->addNamedRange($this); + } + + // New title + $newTitle = $this->_name; + PHPExcel_ReferenceHelper::getInstance()->updateNamedFormulas($this->_worksheet->getParent(), $oldTitle, $newTitle); + } + return $this; + } + + /** + * Get worksheet + * + * @return PHPExcel_Worksheet + */ + public function getWorksheet() { + return $this->_worksheet; + } + + /** + * Set worksheet + * + * @param PHPExcel_Worksheet $value + * @return PHPExcel_NamedRange + */ + public function setWorksheet(PHPExcel_Worksheet $value = null) { + if ($value !== NULL) { + $this->_worksheet = $value; + } + return $this; + } + + /** + * Get range + * + * @return string + */ + public function getRange() { + return $this->_range; + } + + /** + * Set range + * + * @param string $value + * @return PHPExcel_NamedRange + */ + public function setRange($value = null) { + if ($value !== NULL) { + $this->_range = $value; + } + return $this; + } + + /** + * Get localOnly + * + * @return bool + */ + public function getLocalOnly() { + return $this->_localOnly; + } + + /** + * Set localOnly + * + * @param bool $value + * @return PHPExcel_NamedRange + */ + public function setLocalOnly($value = false) { + $this->_localOnly = $value; + $this->_scope = $value ? $this->_worksheet : null; + return $this; + } + + /** + * Get scope + * + * @return PHPExcel_Worksheet|null + */ + public function getScope() { + return $this->_scope; + } + + /** + * Set scope + * + * @param PHPExcel_Worksheet|null $value + * @return PHPExcel_NamedRange + */ + public function setScope(PHPExcel_Worksheet $value = null) { + $this->_scope = $value; + $this->_localOnly = ($value == null) ? false : true; + return $this; + } + + /** + * Resolve a named range to a regular cell range + * + * @param string $pNamedRange Named range + * @param PHPExcel_Worksheet|null $pSheet Scope. Use null for global scope + * @return PHPExcel_NamedRange + */ + public static function resolveRange($pNamedRange = '', PHPExcel_Worksheet $pSheet) { + return $pSheet->getParent()->getNamedRange($pNamedRange, $pSheet); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/CSV.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/CSV.php new file mode 100644 index 0000000..2739e3c --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/CSV.php @@ -0,0 +1,505 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_CSV + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_CSV implements PHPExcel_Reader_IReader +{ + /** + * Input encoding + * + * @access private + * @var string + */ + private $_inputEncoding = 'UTF-8'; + + /** + * Delimiter + * + * @access private + * @var string + */ + private $_delimiter = ','; + + /** + * Enclosure + * + * @access private + * @var string + */ + private $_enclosure = '"'; + + /** + * Line ending + * + * @access private + * @var string + */ + private $_lineEnding = PHP_EOL; + + /** + * Sheet index to read + * + * @access private + * @var int + */ + private $_sheetIndex = 0; + + /** + * Load rows contiguously + * + * @access private + * @var int + */ + private $_contiguous = false; + + + /** + * Row counter for loading rows contiguously + * + * @access private + * @var int + */ + private $_contiguousRow = -1; + + /** + * PHPExcel_Reader_IReadFilter instance + * + * @access private + * @var PHPExcel_Reader_IReadFilter + */ + private $_readFilter = null; + + + /** + * Create a new PHPExcel_Reader_CSV + */ + public function __construct() { + $this->_readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } // function __construct() + + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @access public + * @param string $pFileName + * @return boolean + * @throws Exception + */ + public function canRead($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + return true; + } // function canRead() + + + /** + * Read filter + * + * @access public + * @return PHPExcel_Reader_IReadFilter + */ + public function getReadFilter() { + return $this->_readFilter; + } // function getReadFilter() + + + /** + * Set read filter + * + * @access public + * @param PHPExcel_Reader_IReadFilter $pValue + */ + public function setReadFilter(PHPExcel_Reader_IReadFilter $pValue) { + $this->_readFilter = $pValue; + return $this; + } // function setReadFilter() + + + /** + * Set input encoding + * + * @access public + * @param string $pValue Input encoding + */ + public function setInputEncoding($pValue = 'UTF-8') + { + $this->_inputEncoding = $pValue; + return $this; + } // function setInputEncoding() + + + /** + * Get input encoding + * + * @access public + * @return string + */ + public function getInputEncoding() + { + return $this->_inputEncoding; + } // function getInputEncoding() + + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @access public + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Open file + $fileHandle = fopen($pFilename, 'r'); + if ($fileHandle === false) { + throw new Exception("Could not open file " . $pFilename . " for reading."); + } + + // Skip BOM, if any + switch ($this->_inputEncoding) { + case 'UTF-8': + fgets($fileHandle, 4) == "\xEF\xBB\xBF" ? + fseek($fileHandle, 3) : fseek($fileHandle, 0); + break; + case 'UTF-16LE': + fgets($fileHandle, 3) == "\xFF\xFE" ? + fseek($fileHandle, 2) : fseek($fileHandle, 0); + break; + case 'UTF-16BE': + fgets($fileHandle, 3) == "\xFE\xFF" ? + fseek($fileHandle, 2) : fseek($fileHandle, 0); + break; + case 'UTF-32LE': + fgets($fileHandle, 5) == "\xFF\xFE\x00\x00" ? + fseek($fileHandle, 4) : fseek($fileHandle, 0); + break; + case 'UTF-32BE': + fgets($fileHandle, 5) == "\x00\x00\xFE\xFF" ? + fseek($fileHandle, 4) : fseek($fileHandle, 0); + break; + default: + break; + } + + $escapeEnclosures = array( "\\" . $this->_enclosure, $this->_enclosure . $this->_enclosure ); + + $worksheetInfo = array(); + $worksheetInfo[0]['worksheetName'] = 'Worksheet'; + $worksheetInfo[0]['lastColumnLetter'] = 'A'; + $worksheetInfo[0]['lastColumnIndex'] = 0; + $worksheetInfo[0]['totalRows'] = 0; + $worksheetInfo[0]['totalColumns'] = 0; + + // Loop through each line of the file in turn + while (($rowData = fgetcsv($fileHandle, 0, $this->_delimiter, $this->_enclosure)) !== FALSE) { + $worksheetInfo[0]['totalRows']++; + $worksheetInfo[0]['lastColumnIndex'] = max($worksheetInfo[0]['lastColumnIndex'], count($rowData) - 1); + } + + $worksheetInfo[0]['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($worksheetInfo[0]['lastColumnIndex']); + $worksheetInfo[0]['totalColumns'] = $worksheetInfo[0]['lastColumnIndex'] + 1; + + // Close file + fclose($fileHandle); + + return $worksheetInfo; + } + + + /** + * Loads PHPExcel from file + * + * @access public + * @param string $pFilename + * @return PHPExcel + * @throws Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } // function load() + + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @access public + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Create new PHPExcel + while ($objPHPExcel->getSheetCount() <= $this->_sheetIndex) { + $objPHPExcel->createSheet(); + } + $sheet = $objPHPExcel->setActiveSheetIndex( $this->_sheetIndex ); + + $lineEnding = ini_get('auto_detect_line_endings'); + ini_set('auto_detect_line_endings', true); + + // Open file + $fileHandle = fopen($pFilename, 'r'); + if ($fileHandle === false) { + throw new Exception("Could not open file $pFilename for reading."); + } + + // Skip BOM, if any + switch ($this->_inputEncoding) { + case 'UTF-8': + fgets($fileHandle, 4) == "\xEF\xBB\xBF" ? + fseek($fileHandle, 3) : fseek($fileHandle, 0); + break; + case 'UTF-16LE': + fgets($fileHandle, 3) == "\xFF\xFE" ? + fseek($fileHandle, 2) : fseek($fileHandle, 0); + break; + case 'UTF-16BE': + fgets($fileHandle, 3) == "\xFE\xFF" ? + fseek($fileHandle, 2) : fseek($fileHandle, 0); + break; + case 'UTF-32LE': + fgets($fileHandle, 5) == "\xFF\xFE\x00\x00" ? + fseek($fileHandle, 4) : fseek($fileHandle, 0); + break; + case 'UTF-32BE': + fgets($fileHandle, 5) == "\x00\x00\xFE\xFF" ? + fseek($fileHandle, 4) : fseek($fileHandle, 0); + break; + default: + break; + } + + $escapeEnclosures = array( "\\" . $this->_enclosure, + $this->_enclosure . $this->_enclosure + ); + + // Set our starting row based on whether we're in contiguous mode or not + $currentRow = 1; + if ($this->_contiguous) { + $currentRow = ($this->_contiguousRow == -1) ? $sheet->getHighestRow(): $this->_contiguousRow; + } + + // Loop through each line of the file in turn + while (($rowData = fgetcsv($fileHandle, 0, $this->_delimiter, $this->_enclosure)) !== FALSE) { + $columnLetter = 'A'; + foreach($rowData as $rowDatum) { + if ($rowDatum != '' && $this->_readFilter->readCell($columnLetter, $currentRow)) { + // Unescape enclosures + $rowDatum = str_replace($escapeEnclosures, $this->_enclosure, $rowDatum); + + // Convert encoding if necessary + if ($this->_inputEncoding !== 'UTF-8') { + $rowDatum = PHPExcel_Shared_String::ConvertEncoding($rowDatum, 'UTF-8', $this->_inputEncoding); + } + + // Set cell value + $sheet->getCell($columnLetter . $currentRow)->setValue($rowDatum); + } + ++$columnLetter; + } + ++$currentRow; + } + + // Close file + fclose($fileHandle); + + if ($this->_contiguous) { + $this->_contiguousRow = $currentRow; + } + + ini_set('auto_detect_line_endings', $lineEnding); + + // Return + return $objPHPExcel; + } // function loadIntoExisting() + + + /** + * Get delimiter + * + * @access public + * @return string + */ + public function getDelimiter() { + return $this->_delimiter; + } // function getDelimiter() + + + /** + * Set delimiter + * + * @access public + * @param string $pValue Delimiter, defaults to , + * @return PHPExcel_Reader_CSV + */ + public function setDelimiter($pValue = ',') { + $this->_delimiter = $pValue; + return $this; + } // function setDelimiter() + + + /** + * Get enclosure + * + * @access public + * @return string + */ + public function getEnclosure() { + return $this->_enclosure; + } // function getEnclosure() + + + /** + * Set enclosure + * + * @access public + * @param string $pValue Enclosure, defaults to " + * @return PHPExcel_Reader_CSV + */ + public function setEnclosure($pValue = '"') { + if ($pValue == '') { + $pValue = '"'; + } + $this->_enclosure = $pValue; + return $this; + } // function setEnclosure() + + + /** + * Get line ending + * + * @access public + * @return string + */ + public function getLineEnding() { + return $this->_lineEnding; + } // function getLineEnding() + + + /** + * Set line ending + * + * @access public + * @param string $pValue Line ending, defaults to OS line ending (PHP_EOL) + * @return PHPExcel_Reader_CSV + */ + public function setLineEnding($pValue = PHP_EOL) { + $this->_lineEnding = $pValue; + return $this; + } // function setLineEnding() + + + /** + * Get sheet index + * + * @access public + * @return int + */ + public function getSheetIndex() { + return $this->_sheetIndex; + } // function getSheetIndex() + + + /** + * Set sheet index + * + * @access public + * @param int $pValue Sheet index + * @return PHPExcel_Reader_CSV + */ + public function setSheetIndex($pValue = 0) { + $this->_sheetIndex = $pValue; + return $this; + } // function setSheetIndex() + + + /** + * Set Contiguous + * + * @access public + * @param string $pValue Input encoding + */ + public function setContiguous($contiguous = false) + { + $this->_contiguous = (bool)$contiguous; + if (!$contiguous) { + $this->_contiguousRow = -1; + } + + return $this; + } // function setInputEncoding() + + + /** + * Get Contiguous + * + * @access public + * @return boolean + */ + public function getContiguous() { + return $this->_contiguous; + } // function getSheetIndex() + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/DefaultReadFilter.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/DefaultReadFilter.php new file mode 100644 index 0000000..276b974 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/DefaultReadFilter.php @@ -0,0 +1,58 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_DefaultReadFilter + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_DefaultReadFilter implements PHPExcel_Reader_IReadFilter +{ + /** + * Should this cell be read? + * + * @param $column String column index + * @param $row Row index + * @param $worksheetName Optional worksheet name + * @return boolean + */ + public function readCell($column, $row, $worksheetName = '') { + return true; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2003XML.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2003XML.php new file mode 100644 index 0000000..33ffe6d --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2003XML.php @@ -0,0 +1,906 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_Excel2003XML + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_Excel2003XML implements PHPExcel_Reader_IReader +{ + /** + * Read data only? + * + * @var boolean + */ + private $_readDataOnly = false; + + /** + * Restict which sheets should be loaded? + * + * @var array + */ + private $_loadSheetsOnly = null; + + /** + * Formats + * + * @var array + */ + private $_styles = array(); + + /** + * PHPExcel_Reader_IReadFilter instance + * + * @var PHPExcel_Reader_IReadFilter + */ + private $_readFilter = null; + + /** + * Character set used in the file + * + * @var string + */ + private $_charSet = 'UTF-8'; + + + /** + * Create a new PHPExcel_Reader_Excel2003XML + */ + public function __construct() { + $this->_readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } + + + /** + * Read data only? + * + * @return boolean + */ + public function getReadDataOnly() { + return $this->_readDataOnly; + } + + + /** + * Set read data only + * + * @param boolean $pValue + * @return PHPExcel_Reader_Excel2003XML + */ + public function setReadDataOnly($pValue = false) { + $this->_readDataOnly = $pValue; + return $this; + } + + + /** + * Get which sheets to load + * + * @return mixed + */ + public function getLoadSheetsOnly() + { + return $this->_loadSheetsOnly; + } + + + /** + * Set which sheets to load + * + * @param mixed $value + * @return PHPExcel_Reader_Excel2003XML + */ + public function setLoadSheetsOnly($value = null) + { + $this->_loadSheetsOnly = is_array($value) ? + $value : array($value); + return $this; + } + + + /** + * Set all sheets to load + * + * @return PHPExcel_Reader_Excel2003XML + */ + public function setLoadAllSheets() + { + $this->_loadSheetsOnly = null; + return $this; + } + + + /** + * Read filter + * + * @return PHPExcel_Reader_IReadFilter + */ + public function getReadFilter() { + return $this->_readFilter; + } + + + /** + * Set read filter + * + * @param PHPExcel_Reader_IReadFilter $pValue + * @return PHPExcel_Reader_Excel2003XML + */ + public function setReadFilter(PHPExcel_Reader_IReadFilter $pValue) { + $this->_readFilter = $pValue; + return $this; + } + + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFileName + * @return boolean + * @throws Exception + */ + public function canRead($pFilename) + { + + // Office xmlns:o="urn:schemas-microsoft-com:office:office" + // Excel xmlns:x="urn:schemas-microsoft-com:office:excel" + // XML Spreadsheet xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" + // Spreadsheet component xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" + // XML schema xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" + // XML data type xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" + // MS-persist recordset xmlns:rs="urn:schemas-microsoft-com:rowset" + // Rowset xmlns:z="#RowsetSchema" + // + + $signature = array( + '<?xml version="1.0"', + '<?mso-application progid="Excel.Sheet"?>' + ); + + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Read sample data (first 2 KB will do) + $fh = fopen($pFilename, 'r'); + $data = fread($fh, 2048); + fclose($fh); + + $valid = true; + foreach($signature as $match) { + // every part of the signature must be present + if (strpos($data, $match) === false) { + $valid = false; + break; + } + } + + // Retrieve charset encoding + if(preg_match('/<?xml.*encoding=[\'"](.*?)[\'"].*?>/um',$data,$matches)) { + $this->_charSet = strtoupper($matches[1]); + } +// echo 'Character Set is ',$this->_charSet,'<br />'; + + return $valid; + } + + + /** + * Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object + * + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetNames($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + if (!$this->canRead($pFilename)) { + throw new Exception($pFilename . " is an Invalid Spreadsheet file."); + } + + $worksheetNames = array(); + + $xml = simplexml_load_file($pFilename); + $namespaces = $xml->getNamespaces(true); + + $xml_ss = $xml->children($namespaces['ss']); + foreach($xml_ss->Worksheet as $worksheet) { + $worksheet_ss = $worksheet->attributes($namespaces['ss']); + $worksheetNames[] = self::_convertStringEncoding((string) $worksheet_ss['Name'],$this->_charSet); + } + + return $worksheetNames; + } + + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetInfo = array(); + + $xml = simplexml_load_file($pFilename); + $namespaces = $xml->getNamespaces(true); + + $worksheetID = 1; + $xml_ss = $xml->children($namespaces['ss']); + foreach($xml_ss->Worksheet as $worksheet) { + $worksheet_ss = $worksheet->attributes($namespaces['ss']); + + $tmpInfo = array(); + $tmpInfo['worksheetName'] = ''; + $tmpInfo['lastColumnLetter'] = 'A'; + $tmpInfo['lastColumnIndex'] = 0; + $tmpInfo['totalRows'] = 0; + $tmpInfo['totalColumns'] = 0; + + if (isset($worksheet_ss['Name'])) { + $tmpInfo['worksheetName'] = (string) $worksheet_ss['Name']; + } else { + $tmpInfo['worksheetName'] = "Worksheet_{$worksheetID}"; + } + + if (isset($worksheet->Table->Row)) { + $rowIndex = 0; + + foreach($worksheet->Table->Row as $rowData) { + $columnIndex = 0; + $rowHasData = false; + + foreach($rowData->Cell as $cell) { + if (isset($cell->Data)) { + $tmpInfo['lastColumnIndex'] = max($tmpInfo['lastColumnIndex'], $columnIndex); + $rowHasData = true; + } + + ++$columnIndex; + } + + ++$rowIndex; + + if ($rowHasData) { + $tmpInfo['totalRows'] = max($tmpInfo['totalRows'], $rowIndex); + } + } + } + + $tmpInfo['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($tmpInfo['lastColumnIndex']); + $tmpInfo['totalColumns'] = $tmpInfo['lastColumnIndex'] + 1; + + $worksheetInfo[] = $tmpInfo; + ++$worksheetID; + } + + return $worksheetInfo; + } + + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } + + + private static function identifyFixedStyleValue($styleList,&$styleAttributeValue) { + $styleAttributeValue = strtolower($styleAttributeValue); + foreach($styleList as $style) { + if ($styleAttributeValue == strtolower($style)) { + $styleAttributeValue = $style; + return true; + } + } + return false; + } + + + /** + * pixel units to excel width units(units of 1/256th of a character width) + * @param pxs + * @return + */ + private static function _pixel2WidthUnits($pxs) { + $UNIT_OFFSET_MAP = array(0, 36, 73, 109, 146, 182, 219); + + $widthUnits = 256 * ($pxs / 7); + $widthUnits += $UNIT_OFFSET_MAP[($pxs % 7)]; + return $widthUnits; + } + + + /** + * excel width units(units of 1/256th of a character width) to pixel units + * @param widthUnits + * @return + */ + private static function _widthUnits2Pixel($widthUnits) { + $pixels = ($widthUnits / 256) * 7; + $offsetWidthUnits = $widthUnits % 256; + $pixels += round($offsetWidthUnits / (256 / 7)); + return $pixels; + } + + + private static function _hex2str($hex) { + return chr(hexdec($hex[1])); + } + + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + $fromFormats = array('\-', '\ '); + $toFormats = array('-', ' '); + + $underlineStyles = array ( + PHPExcel_Style_Font::UNDERLINE_NONE, + PHPExcel_Style_Font::UNDERLINE_DOUBLE, + PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING, + PHPExcel_Style_Font::UNDERLINE_SINGLE, + PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING + ); + $verticalAlignmentStyles = array ( + PHPExcel_Style_Alignment::VERTICAL_BOTTOM, + PHPExcel_Style_Alignment::VERTICAL_TOP, + PHPExcel_Style_Alignment::VERTICAL_CENTER, + PHPExcel_Style_Alignment::VERTICAL_JUSTIFY + ); + $horizontalAlignmentStyles = array ( + PHPExcel_Style_Alignment::HORIZONTAL_GENERAL, + PHPExcel_Style_Alignment::HORIZONTAL_LEFT, + PHPExcel_Style_Alignment::HORIZONTAL_RIGHT, + PHPExcel_Style_Alignment::HORIZONTAL_CENTER, + PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS, + PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY + ); + + $timezoneObj = new DateTimeZone('Europe/London'); + $GMT = new DateTimeZone('UTC'); + + + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + if (!$this->canRead($pFilename)) { + throw new Exception($pFilename . " is an Invalid Spreadsheet file."); + } + + $xml = simplexml_load_file($pFilename); + $namespaces = $xml->getNamespaces(true); + + $docProps = $objPHPExcel->getProperties(); + if (isset($xml->DocumentProperties[0])) { + foreach($xml->DocumentProperties[0] as $propertyName => $propertyValue) { + switch ($propertyName) { + case 'Title' : + $docProps->setTitle(self::_convertStringEncoding($propertyValue,$this->_charSet)); + break; + case 'Subject' : + $docProps->setSubject(self::_convertStringEncoding($propertyValue,$this->_charSet)); + break; + case 'Author' : + $docProps->setCreator(self::_convertStringEncoding($propertyValue,$this->_charSet)); + break; + case 'Created' : + $creationDate = strtotime($propertyValue); + $docProps->setCreated($creationDate); + break; + case 'LastAuthor' : + $docProps->setLastModifiedBy(self::_convertStringEncoding($propertyValue,$this->_charSet)); + break; + case 'LastSaved' : + $lastSaveDate = strtotime($propertyValue); + $docProps->setModified($lastSaveDate); + break; + case 'Company' : + $docProps->setCompany(self::_convertStringEncoding($propertyValue,$this->_charSet)); + break; + case 'Category' : + $docProps->setCategory(self::_convertStringEncoding($propertyValue,$this->_charSet)); + break; + case 'Manager' : + $docProps->setManager(self::_convertStringEncoding($propertyValue,$this->_charSet)); + break; + case 'Keywords' : + $docProps->setKeywords(self::_convertStringEncoding($propertyValue,$this->_charSet)); + break; + case 'Description' : + $docProps->setDescription(self::_convertStringEncoding($propertyValue,$this->_charSet)); + break; + } + } + } + if (isset($xml->CustomDocumentProperties)) { + foreach($xml->CustomDocumentProperties[0] as $propertyName => $propertyValue) { + $propertyAttributes = $propertyValue->attributes($namespaces['dt']); + $propertyName = preg_replace_callback('/_x([0-9a-z]{4})_/','PHPExcel_Reader_Excel2003XML::_hex2str',$propertyName); + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_UNKNOWN; + switch((string) $propertyAttributes) { + case 'string' : + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_STRING; + $propertyValue = trim($propertyValue); + break; + case 'boolean' : + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_BOOLEAN; + $propertyValue = (bool) $propertyValue; + break; + case 'integer' : + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_INTEGER; + $propertyValue = intval($propertyValue); + break; + case 'float' : + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_FLOAT; + $propertyValue = floatval($propertyValue); + break; + case 'dateTime.tz' : + $propertyType = PHPExcel_DocumentProperties::PROPERTY_TYPE_DATE; + $propertyValue = strtotime(trim($propertyValue)); + break; + } + $docProps->setCustomProperty($propertyName,$propertyValue,$propertyType); + } + } + + foreach($xml->Styles[0] as $style) { + $style_ss = $style->attributes($namespaces['ss']); + $styleID = (string) $style_ss['ID']; +// echo 'Style ID = '.$styleID.'<br />'; + if ($styleID == 'Default') { + $this->_styles['Default'] = array(); + } else { + $this->_styles[$styleID] = $this->_styles['Default']; + } + foreach ($style as $styleType => $styleData) { + $styleAttributes = $styleData->attributes($namespaces['ss']); +// echo $styleType.'<br />'; + switch ($styleType) { + case 'Alignment' : + foreach($styleAttributes as $styleAttributeKey => $styleAttributeValue) { +// echo $styleAttributeKey.' = '.$styleAttributeValue.'<br />'; + $styleAttributeValue = (string) $styleAttributeValue; + switch ($styleAttributeKey) { + case 'Vertical' : + if (self::identifyFixedStyleValue($verticalAlignmentStyles,$styleAttributeValue)) { + $this->_styles[$styleID]['alignment']['vertical'] = $styleAttributeValue; + } + break; + case 'Horizontal' : + if (self::identifyFixedStyleValue($horizontalAlignmentStyles,$styleAttributeValue)) { + $this->_styles[$styleID]['alignment']['horizontal'] = $styleAttributeValue; + } + break; + case 'WrapText' : + $this->_styles[$styleID]['alignment']['wrap'] = true; + break; + } + } + break; + case 'Borders' : + foreach($styleData->Border as $borderStyle) { + $borderAttributes = $borderStyle->attributes($namespaces['ss']); + $thisBorder = array(); + foreach($borderAttributes as $borderStyleKey => $borderStyleValue) { +// echo $borderStyleKey.' = '.$borderStyleValue.'<br />'; + switch ($borderStyleKey) { + case 'LineStyle' : + $thisBorder['style'] = PHPExcel_Style_Border::BORDER_MEDIUM; +// $thisBorder['style'] = $borderStyleValue; + break; + case 'Weight' : +// $thisBorder['style'] = $borderStyleValue; + break; + case 'Position' : + $borderPosition = strtolower($borderStyleValue); + break; + case 'Color' : + $borderColour = substr($borderStyleValue,1); + $thisBorder['color']['rgb'] = $borderColour; + break; + } + } + if (!empty($thisBorder)) { + if (($borderPosition == 'left') || ($borderPosition == 'right') || ($borderPosition == 'top') || ($borderPosition == 'bottom')) { + $this->_styles[$styleID]['borders'][$borderPosition] = $thisBorder; + } + } + } + break; + case 'Font' : + foreach($styleAttributes as $styleAttributeKey => $styleAttributeValue) { +// echo $styleAttributeKey.' = '.$styleAttributeValue.'<br />'; + $styleAttributeValue = (string) $styleAttributeValue; + switch ($styleAttributeKey) { + case 'FontName' : + $this->_styles[$styleID]['font']['name'] = $styleAttributeValue; + break; + case 'Size' : + $this->_styles[$styleID]['font']['size'] = $styleAttributeValue; + break; + case 'Color' : + $this->_styles[$styleID]['font']['color']['rgb'] = substr($styleAttributeValue,1); + break; + case 'Bold' : + $this->_styles[$styleID]['font']['bold'] = true; + break; + case 'Italic' : + $this->_styles[$styleID]['font']['italic'] = true; + break; + case 'Underline' : + if (self::identifyFixedStyleValue($underlineStyles,$styleAttributeValue)) { + $this->_styles[$styleID]['font']['underline'] = $styleAttributeValue; + } + break; + } + } + break; + case 'Interior' : + foreach($styleAttributes as $styleAttributeKey => $styleAttributeValue) { +// echo $styleAttributeKey.' = '.$styleAttributeValue.'<br />'; + switch ($styleAttributeKey) { + case 'Color' : + $this->_styles[$styleID]['fill']['color']['rgb'] = substr($styleAttributeValue,1); + break; + } + } + break; + case 'NumberFormat' : + foreach($styleAttributes as $styleAttributeKey => $styleAttributeValue) { +// echo $styleAttributeKey.' = '.$styleAttributeValue.'<br />'; + $styleAttributeValue = str_replace($fromFormats,$toFormats,$styleAttributeValue); + switch ($styleAttributeValue) { + case 'Short Date' : + $styleAttributeValue = 'dd/mm/yyyy'; + break; + } + if ($styleAttributeValue > '') { + $this->_styles[$styleID]['numberformat']['code'] = $styleAttributeValue; + } + } + break; + case 'Protection' : + foreach($styleAttributes as $styleAttributeKey => $styleAttributeValue) { +// echo $styleAttributeKey.' = '.$styleAttributeValue.'<br />'; + } + break; + } + } +// print_r($this->_styles[$styleID]); +// echo '<hr />'; + } +// echo '<hr />'; + + $worksheetID = 0; + $xml_ss = $xml->children($namespaces['ss']); + + foreach($xml_ss->Worksheet as $worksheet) { + $worksheet_ss = $worksheet->attributes($namespaces['ss']); + + if ((isset($this->_loadSheetsOnly)) && (isset($worksheet_ss['Name'])) && + (!in_array($worksheet_ss['Name'], $this->_loadSheetsOnly))) { + continue; + } + +// echo '<h3>Worksheet: ',$worksheet_ss['Name'],'<h3>'; +// + // Create new Worksheet + $objPHPExcel->createSheet(); + $objPHPExcel->setActiveSheetIndex($worksheetID); + if (isset($worksheet_ss['Name'])) { + $worksheetName = self::_convertStringEncoding((string) $worksheet_ss['Name'],$this->_charSet); + // Use false for $updateFormulaCellReferences to prevent adjustment of worksheet references in + // formula cells... during the load, all formulae should be correct, and we're simply bringing + // the worksheet name in line with the formula, not the reverse + $objPHPExcel->getActiveSheet()->setTitle($worksheetName,false); + } + + $columnID = 'A'; + if (isset($worksheet->Table->Column)) { + foreach($worksheet->Table->Column as $columnData) { + $columnData_ss = $columnData->attributes($namespaces['ss']); + if (isset($columnData_ss['Index'])) { + $columnID = PHPExcel_Cell::stringFromColumnIndex($columnData_ss['Index']-1); + } + if (isset($columnData_ss['Width'])) { + $columnWidth = $columnData_ss['Width']; +// echo '<b>Setting column width for '.$columnID.' to '.$columnWidth.'</b><br />'; + $objPHPExcel->getActiveSheet()->getColumnDimension($columnID)->setWidth($columnWidth / 5.4); + } + ++$columnID; + } + } + + $rowID = 1; + if (isset($worksheet->Table->Row)) { + foreach($worksheet->Table->Row as $rowData) { + $rowHasData = false; + $row_ss = $rowData->attributes($namespaces['ss']); + if (isset($row_ss['Index'])) { + $rowID = (integer) $row_ss['Index']; + } +// echo '<b>Row '.$rowID.'</b><br />'; + + $columnID = 'A'; + foreach($rowData->Cell as $cell) { + + $cell_ss = $cell->attributes($namespaces['ss']); + if (isset($cell_ss['Index'])) { + $columnID = PHPExcel_Cell::stringFromColumnIndex($cell_ss['Index']-1); + } + $cellRange = $columnID.$rowID; + + if ($this->getReadFilter() !== NULL) { + if (!$this->getReadFilter()->readCell($columnID, $rowID, $worksheetName)) { + continue; + } + } + + if ((isset($cell_ss['MergeAcross'])) || (isset($cell_ss['MergeDown']))) { + $columnTo = $columnID; + if (isset($cell_ss['MergeAcross'])) { + $columnTo = PHPExcel_Cell::stringFromColumnIndex(PHPExcel_Cell::columnIndexFromString($columnID) + $cell_ss['MergeAcross'] -1); + } + $rowTo = $rowID; + if (isset($cell_ss['MergeDown'])) { + $rowTo = $rowTo + $cell_ss['MergeDown']; + } + $cellRange .= ':'.$columnTo.$rowTo; + $objPHPExcel->getActiveSheet()->mergeCells($cellRange); + } + + $cellIsSet = $hasCalculatedValue = false; + $cellDataFormula = ''; + if (isset($cell_ss['Formula'])) { + $cellDataFormula = $cell_ss['Formula']; + // added this as a check for array formulas + if (isset($cell_ss['ArrayRange'])) { + $cellDataCSEFormula = $cell_ss['ArrayRange']; +// echo "found an array formula at ".$columnID.$rowID."<br />"; + } + $hasCalculatedValue = true; + } + if (isset($cell->Data)) { + $cellValue = $cellData = $cell->Data; + $type = PHPExcel_Cell_DataType::TYPE_NULL; + $cellData_ss = $cellData->attributes($namespaces['ss']); + if (isset($cellData_ss['Type'])) { + $cellDataType = $cellData_ss['Type']; + switch ($cellDataType) { + /* + const TYPE_STRING = 's'; + const TYPE_FORMULA = 'f'; + const TYPE_NUMERIC = 'n'; + const TYPE_BOOL = 'b'; + const TYPE_NULL = 'null'; + const TYPE_INLINE = 'inlineStr'; + const TYPE_ERROR = 'e'; + */ + case 'String' : + $cellValue = self::_convertStringEncoding($cellValue,$this->_charSet); + $type = PHPExcel_Cell_DataType::TYPE_STRING; + break; + case 'Number' : + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $cellValue = (float) $cellValue; + if (floor($cellValue) == $cellValue) { + $cellValue = (integer) $cellValue; + } + break; + case 'Boolean' : + $type = PHPExcel_Cell_DataType::TYPE_BOOL; + $cellValue = ($cellValue != 0); + break; + case 'DateTime' : + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $cellValue = PHPExcel_Shared_Date::PHPToExcel(strtotime($cellValue)); + break; + case 'Error' : + $type = PHPExcel_Cell_DataType::TYPE_ERROR; + break; + } + } + + if ($hasCalculatedValue) { +// echo 'FORMULA<br />'; + $type = PHPExcel_Cell_DataType::TYPE_FORMULA; + $columnNumber = PHPExcel_Cell::columnIndexFromString($columnID); + if (substr($cellDataFormula,0,3) == 'of:') { + $cellDataFormula = substr($cellDataFormula,3); +// echo 'Before: ',$cellDataFormula,'<br />'; + $temp = explode('"',$cellDataFormula); + $key = false; + foreach($temp as &$value) { + // Only replace in alternate array entries (i.e. non-quoted blocks) + if ($key = !$key) { + $value = str_replace(array('[.','.',']'),'',$value); + } + } + } else { + // Convert R1C1 style references to A1 style references (but only when not quoted) +// echo 'Before: ',$cellDataFormula,'<br />'; + $temp = explode('"',$cellDataFormula); + $key = false; + foreach($temp as &$value) { + // Only replace in alternate array entries (i.e. non-quoted blocks) + if ($key = !$key) { + preg_match_all('/(R(\[?-?\d*\]?))(C(\[?-?\d*\]?))/',$value, $cellReferences,PREG_SET_ORDER+PREG_OFFSET_CAPTURE); + // Reverse the matches array, otherwise all our offsets will become incorrect if we modify our way + // through the formula from left to right. Reversing means that we work right to left.through + // the formula + $cellReferences = array_reverse($cellReferences); + // Loop through each R1C1 style reference in turn, converting it to its A1 style equivalent, + // then modify the formula to use that new reference + foreach($cellReferences as $cellReference) { + $rowReference = $cellReference[2][0]; + // Empty R reference is the current row + if ($rowReference == '') $rowReference = $rowID; + // Bracketed R references are relative to the current row + if ($rowReference{0} == '[') $rowReference = $rowID + trim($rowReference,'[]'); + $columnReference = $cellReference[4][0]; + // Empty C reference is the current column + if ($columnReference == '') $columnReference = $columnNumber; + // Bracketed C references are relative to the current column + if ($columnReference{0} == '[') $columnReference = $columnNumber + trim($columnReference,'[]'); + $A1CellReference = PHPExcel_Cell::stringFromColumnIndex($columnReference-1).$rowReference; + $value = substr_replace($value,$A1CellReference,$cellReference[0][1],strlen($cellReference[0][0])); + } + } + } + } + unset($value); + // Then rebuild the formula string + $cellDataFormula = implode('"',$temp); +// echo 'After: ',$cellDataFormula,'<br />'; + } + +// echo 'Cell '.$columnID.$rowID.' is a '.$type.' with a value of '.(($hasCalculatedValue) ? $cellDataFormula : $cellValue).'<br />'; +// + $objPHPExcel->getActiveSheet()->getCell($columnID.$rowID)->setValueExplicit((($hasCalculatedValue) ? $cellDataFormula : $cellValue),$type); + if ($hasCalculatedValue) { +// echo 'Formula result is '.$cellValue.'<br />'; + $objPHPExcel->getActiveSheet()->getCell($columnID.$rowID)->setCalculatedValue($cellValue); + } + $cellIsSet = $rowHasData = true; + } + + if (isset($cell->Comment)) { +// echo '<b>comment found</b><br />'; + $commentAttributes = $cell->Comment->attributes($namespaces['ss']); + $author = 'unknown'; + if (isset($commentAttributes->Author)) { + $author = (string)$commentAttributes->Author; +// echo 'Author: ',$author,'<br />'; + } + $node = $cell->Comment->Data->asXML(); +// $annotation = str_replace('html:','',substr($node,49,-10)); +// echo $annotation,'<br />'; + $annotation = strip_tags($node); +// echo 'Annotation: ',$annotation,'<br />'; + $objPHPExcel->getActiveSheet()->getComment( $columnID.$rowID ) + ->setAuthor(self::_convertStringEncoding($author ,$this->_charSet)) + ->setText($this->_parseRichText($annotation) ); + } + + if (($cellIsSet) && (isset($cell_ss['StyleID']))) { + $style = (string) $cell_ss['StyleID']; +// echo 'Cell style for '.$columnID.$rowID.' is '.$style.'<br />'; + if ((isset($this->_styles[$style])) && (!empty($this->_styles[$style]))) { +// echo 'Cell '.$columnID.$rowID.'<br />'; +// print_r($this->_styles[$style]); +// echo '<br />'; + if (!$objPHPExcel->getActiveSheet()->cellExists($columnID.$rowID)) { + $objPHPExcel->getActiveSheet()->getCell($columnID.$rowID)->setValue(NULL); + } + $objPHPExcel->getActiveSheet()->getStyle($cellRange)->applyFromArray($this->_styles[$style]); + } + } + ++$columnID; + } + + if ($rowHasData) { + if (isset($row_ss['StyleID'])) { + $rowStyle = $row_ss['StyleID']; + } + if (isset($row_ss['Height'])) { + $rowHeight = $row_ss['Height']; +// echo '<b>Setting row height to '.$rowHeight.'</b><br />'; + $objPHPExcel->getActiveSheet()->getRowDimension($rowID)->setRowHeight($rowHeight); + } + } + + ++$rowID; + } + } + ++$worksheetID; + } + + // Return + return $objPHPExcel; + } + + + private static function _convertStringEncoding($string,$charset) { + if ($charset != 'UTF-8') { + return PHPExcel_Shared_String::ConvertEncoding($string,'UTF-8',$charset); + } + return $string; + } + + + private function _parseRichText($is = '') { + $value = new PHPExcel_RichText(); + + $value->createText(self::_convertStringEncoding($is,$this->_charSet)); + + return $value; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007.php new file mode 100644 index 0000000..fbb9158 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007.php @@ -0,0 +1,2112 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_Excel2007 + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_Excel2007 implements PHPExcel_Reader_IReader +{ + /** + * Read data only? + * Identifies whether the Reader should only read data values for cells, and ignore any formatting information; + * or whether it should read both data and formatting + * + * @var boolean + */ + private $_readDataOnly = FALSE; + + /** + * Read charts that are defined in the workbook? + * Identifies whether the Reader should read the definitions for any charts that exist in the workbook; + * + * @var boolean + */ + private $_includeCharts = FALSE; + + /** + * Restrict which sheets should be loaded? + * This property holds an array of worksheet names to be loaded. If null, then all worksheets will be loaded. + * + * @var array of string + */ + private $_loadSheetsOnly = NULL; + + /** + * PHPExcel_Reader_IReadFilter instance + * + * @var PHPExcel_Reader_IReadFilter + */ + private $_readFilter = NULL; + + /** + * PHPExcel_ReferenceHelper instance + * + * @var PHPExcel_ReferenceHelper + */ + private $_referenceHelper = NULL; + + /** + * PHPExcel_Reader_Excel2007_Theme instance + * + * @var PHPExcel_Reader_Excel2007_Theme + */ + private static $_theme = NULL; + + + /** + * Create a new PHPExcel_Reader_Excel2007 instance + */ + public function __construct() { + $this->_readFilter = new PHPExcel_Reader_DefaultReadFilter(); + $this->_referenceHelper = PHPExcel_ReferenceHelper::getInstance(); + } + + + /** + * Read data only? + * If this is true, then the Reader will only read data values for cells, it will not read any formatting information. + * If false (the default) it will read data and formatting. + * + * @return boolean + */ + public function getReadDataOnly() { + return $this->_readDataOnly; + } + + + /** + * Set read data only + * Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information. + * Set to false (the default) to advise the Reader to read both data and formatting for cells. + * + * @param boolean $pValue + * + * @return PHPExcel_Reader_Excel2007 + */ + public function setReadDataOnly($pValue = FALSE) { + $this->_readDataOnly = $pValue; + return $this; + } + + + /** + * Read charts in workbook? + * If this is true, then the Reader will include any charts that exist in the workbook. + * Note that a ReadDataOnly value of false overrides, and charts won't be read regardless of the IncludeCharts value. + * If false (the default) it will ignore any charts defined in the workbook file. + * + * @return boolean + */ + public function getIncludeCharts() { + return $this->_includeCharts; + } + + + /** + * Set read charts in workbook + * Set to true, to advise the Reader to include any charts that exist in the workbook. + * Note that a ReadDataOnly value of false overrides, and charts won't be read regardless of the IncludeCharts value. + * Set to false (the default) to discard charts. + * + * @param boolean $pValue + * + * @return PHPExcel_Reader_Excel2007 + */ + public function setIncludeCharts($pValue = FALSE) { + $this->_includeCharts = (boolean) $pValue; + return $this; + } + + + /** + * Get which sheets to load + * Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null + * indicating that all worksheets in the workbook should be loaded. + * + * @return mixed + */ + public function getLoadSheetsOnly() + { + return $this->_loadSheetsOnly; + } + + + /** + * Set which sheets to load + * + * @param mixed $value + * This should be either an array of worksheet names to be loaded, or a string containing a single worksheet name. + * If NULL, then it tells the Reader to read all worksheets in the workbook + * + * @return PHPExcel_Reader_Excel2007 + */ + public function setLoadSheetsOnly($value = NULL) + { + $this->_loadSheetsOnly = is_array($value) ? + $value : array($value); + return $this; + } + + + /** + * Set all sheets to load + * Tells the Reader to load all worksheets from the workbook. + * + * @return PHPExcel_Reader_Excel2007 + */ + public function setLoadAllSheets() + { + $this->_loadSheetsOnly = NULL; + return $this; + } + + + /** + * Read filter + * + * @return PHPExcel_Reader_IReadFilter + */ + public function getReadFilter() { + return $this->_readFilter; + } + + + /** + * Set read filter + * + * @param PHPExcel_Reader_IReadFilter $pValue + * @return PHPExcel_Reader_Excel2007 + */ + public function setReadFilter(PHPExcel_Reader_IReadFilter $pValue) { + $this->_readFilter = $pValue; + return $this; + } + + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFileName + * @return boolean + * @throws Exception + */ + public function canRead($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Check if zip class exists + if (!class_exists('ZipArchive',FALSE)) { + throw new Exception("ZipArchive library is not enabled"); + } + + $xl = false; + // Load file + $zip = new ZipArchive; + if ($zip->open($pFilename) === true) { + // check if it is an OOXML archive + $rels = simplexml_load_string($this->_getFromZipArchive($zip, "_rels/.rels")); + if ($rels !== false) { + foreach ($rels->Relationship as $rel) { + switch ($rel["Type"]) { + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument": + if (basename($rel["Target"]) == 'workbook.xml') { + $xl = true; + } + break; + + } + } + } + $zip->close(); + } + + return $xl; + } + + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetInfo = array(); + + $zip = new ZipArchive; + $zip->open($pFilename); + + $rels = simplexml_load_string($this->_getFromZipArchive($zip, "_rels/.rels")); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($rels->Relationship as $rel) { + if ($rel["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument") { + $dir = dirname($rel["Target"]); + $relsWorkbook = simplexml_load_string($this->_getFromZipArchive($zip, "$dir/_rels/" . basename($rel["Target"]) . ".rels")); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $relsWorkbook->registerXPathNamespace("rel", "http://schemas.openxmlformats.org/package/2006/relationships"); + + $worksheets = array(); + foreach ($relsWorkbook->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet") { + $worksheets[(string) $ele["Id"]] = $ele["Target"]; + } + } + + $xmlWorkbook = simplexml_load_string($this->_getFromZipArchive($zip, "{$rel['Target']}")); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + if ($xmlWorkbook->sheets) { + $dir = dirname($rel["Target"]); + foreach ($xmlWorkbook->sheets->sheet as $eleSheet) { + $tmpInfo = array(); + $tmpInfo['worksheetName'] = (string) $eleSheet["name"]; + $tmpInfo['lastColumnLetter'] = 'A'; + $tmpInfo['lastColumnIndex'] = 0; + $tmpInfo['totalRows'] = 0; + $tmpInfo['totalColumns'] = 0; + + $fileWorksheet = $worksheets[(string) self::array_item($eleSheet->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"), "id")]; + $xmlSheet = simplexml_load_string($this->_getFromZipArchive($zip, "$dir/$fileWorksheet")); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + if ($xmlSheet && $xmlSheet->sheetData && $xmlSheet->sheetData->row) { + foreach ($xmlSheet->sheetData->row as $row) { + foreach ($row->c as $c) { + $r = (string) $c["r"]; + $coordinates = PHPExcel_Cell::coordinateFromString($r); + + $rowIndex = $coordinates[1]; + $columnIndex = PHPExcel_Cell::columnIndexFromString($coordinates[0]) - 1; + + $tmpInfo['totalRows'] = max($tmpInfo['totalRows'], $rowIndex); + $tmpInfo['lastColumnIndex'] = max($tmpInfo['lastColumnIndex'], $columnIndex); + } + } + } + + $tmpInfo['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($tmpInfo['lastColumnIndex']); + $tmpInfo['totalColumns'] = $tmpInfo['lastColumnIndex'] + 1; + + $worksheetInfo[] = $tmpInfo; + } + } + } + } + + $zip->close(); + + return $worksheetInfo; + } + + + private static function _castToBool($c) { +// echo 'Initial Cast to Boolean<br />'; + $value = isset($c->v) ? (string) $c->v : NULL; + if ($value == '0') { + return FALSE; + } elseif ($value == '1') { + return TRUE; + } else { + return (bool)$c->v; + } + return $value; + } // function _castToBool() + + + private static function _castToError($c) { +// echo 'Initial Cast to Error<br />'; + return isset($c->v) ? (string) $c->v : NULL; + } // function _castToError() + + + private static function _castToString($c) { +// echo 'Initial Cast to String<br />'; + return isset($c->v) ? (string) $c->v : NULL; + } // function _castToString() + + + private function _castToFormula($c,$r,&$cellDataType,&$value,&$calculatedValue,&$sharedFormulas,$castBaseType) { +// echo 'Formula<br />'; +// echo '$c->f is '.$c->f.'<br />'; + $cellDataType = 'f'; + $value = "={$c->f}"; + $calculatedValue = self::$castBaseType($c); + + // Shared formula? + if (isset($c->f['t']) && strtolower((string)$c->f['t']) == 'shared') { +// echo 'SHARED FORMULA<br />'; + $instance = (string)$c->f['si']; + +// echo 'Instance ID = '.$instance.'<br />'; +// +// echo 'Shared Formula Array:<pre>'; +// print_r($sharedFormulas); +// echo '</pre>'; + if (!isset($sharedFormulas[(string)$c->f['si']])) { +// echo 'SETTING NEW SHARED FORMULA<br />'; +// echo 'Master is '.$r.'<br />'; +// echo 'Formula is '.$value.'<br />'; + $sharedFormulas[$instance] = array( 'master' => $r, + 'formula' => $value + ); +// echo 'New Shared Formula Array:<pre>'; +// print_r($sharedFormulas); +// echo '</pre>'; + } else { +// echo 'GETTING SHARED FORMULA<br />'; +// echo 'Master is '.$sharedFormulas[$instance]['master'].'<br />'; +// echo 'Formula is '.$sharedFormulas[$instance]['formula'].'<br />'; + $master = PHPExcel_Cell::coordinateFromString($sharedFormulas[$instance]['master']); + $current = PHPExcel_Cell::coordinateFromString($r); + + $difference = array(0, 0); + $difference[0] = PHPExcel_Cell::columnIndexFromString($current[0]) - PHPExcel_Cell::columnIndexFromString($master[0]); + $difference[1] = $current[1] - $master[1]; + + $value = $this->_referenceHelper->updateFormulaReferences( $sharedFormulas[$instance]['formula'], + 'A1', + $difference[0], + $difference[1] + ); +// echo 'Adjusted Formula is '.$value.'<br />'; + } + } + } + + + public function _getFromZipArchive(ZipArchive $archive, $fileName = '') + { + // Root-relative paths + if (strpos($fileName, '//') !== false) + { + $fileName = substr($fileName, strpos($fileName, '//') + 1); + } + $fileName = PHPExcel_Shared_File::realpath($fileName); + + // Apache POI fixes + $contents = $archive->getFromName($fileName); + if ($contents === false) + { + $contents = $archive->getFromName(substr($fileName, 1)); + } + + return $contents; + } + + + /** + * Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object + * + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetNames($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetNames = array(); + + $zip = new ZipArchive; + $zip->open($pFilename); + + $rels = simplexml_load_string($this->_getFromZipArchive($zip, "_rels/.rels")); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($rels->Relationship as $rel) { + switch ($rel["Type"]) { + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument": + $xmlWorkbook = simplexml_load_string($this->_getFromZipArchive($zip, "{$rel['Target']}")); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + + if ($xmlWorkbook->sheets) { + foreach ($xmlWorkbook->sheets->sheet as $eleSheet) { + // Check if sheet should be skipped + $worksheetNames[] = (string) $eleSheet["name"]; + } + } + } + } + + $zip->close(); + + return $worksheetNames; + } + + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @throws Exception + */ + public function load($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Initialisations + $excel = new PHPExcel; + $excel->removeSheetByIndex(0); + if (!$this->_readDataOnly) { + $excel->removeCellStyleXfByIndex(0); // remove the default style + $excel->removeCellXfByIndex(0); // remove the default style + } + $zip = new ZipArchive; + $zip->open($pFilename); + + // Read the theme first, because we need the colour scheme when reading the styles + $wbRels = simplexml_load_string($this->_getFromZipArchive($zip, "xl/_rels/workbook.xml.rels")); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($wbRels->Relationship as $rel) { + switch ($rel["Type"]) { + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme": + $themeOrderArray = array('lt1','dk1','lt2','dk2'); + $themeOrderAdditional = count($themeOrderArray); + + $xmlTheme = simplexml_load_string($this->_getFromZipArchive($zip, "xl/{$rel['Target']}")); + if (is_object($xmlTheme)) { + $xmlThemeName = $xmlTheme->attributes(); + $xmlTheme = $xmlTheme->children("http://schemas.openxmlformats.org/drawingml/2006/main"); + $themeName = (string)$xmlThemeName['name']; + + $colourScheme = $xmlTheme->themeElements->clrScheme->attributes(); + $colourSchemeName = (string)$colourScheme['name']; + $colourScheme = $xmlTheme->themeElements->clrScheme->children("http://schemas.openxmlformats.org/drawingml/2006/main"); + + $themeColours = array(); + foreach ($colourScheme as $k => $xmlColour) { + $themePos = array_search($k,$themeOrderArray); + if ($themePos === false) { + $themePos = $themeOrderAdditional++; + } + if (isset($xmlColour->sysClr)) { + $xmlColourData = $xmlColour->sysClr->attributes(); + $themeColours[$themePos] = $xmlColourData['lastClr']; + } elseif (isset($xmlColour->srgbClr)) { + $xmlColourData = $xmlColour->srgbClr->attributes(); + $themeColours[$themePos] = $xmlColourData['val']; + } + } + self::$_theme = new PHPExcel_Reader_Excel2007_Theme($themeName,$colourSchemeName,$themeColours); + } + break; + } + } + + $rels = simplexml_load_string($this->_getFromZipArchive($zip, "_rels/.rels")); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($rels->Relationship as $rel) { + switch ($rel["Type"]) { + case "http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties": + $xmlCore = simplexml_load_string($this->_getFromZipArchive($zip, "{$rel['Target']}")); + if (is_object($xmlCore)) { + $xmlCore->registerXPathNamespace("dc", "http://purl.org/dc/elements/1.1/"); + $xmlCore->registerXPathNamespace("dcterms", "http://purl.org/dc/terms/"); + $xmlCore->registerXPathNamespace("cp", "http://schemas.openxmlformats.org/package/2006/metadata/core-properties"); + $docProps = $excel->getProperties(); + $docProps->setCreator((string) self::array_item($xmlCore->xpath("dc:creator"))); + $docProps->setLastModifiedBy((string) self::array_item($xmlCore->xpath("cp:lastModifiedBy"))); + $docProps->setCreated(strtotime(self::array_item($xmlCore->xpath("dcterms:created")))); //! respect xsi:type + $docProps->setModified(strtotime(self::array_item($xmlCore->xpath("dcterms:modified")))); //! respect xsi:type + $docProps->setTitle((string) self::array_item($xmlCore->xpath("dc:title"))); + $docProps->setDescription((string) self::array_item($xmlCore->xpath("dc:description"))); + $docProps->setSubject((string) self::array_item($xmlCore->xpath("dc:subject"))); + $docProps->setKeywords((string) self::array_item($xmlCore->xpath("cp:keywords"))); + $docProps->setCategory((string) self::array_item($xmlCore->xpath("cp:category"))); + } + break; + + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties": + $xmlCore = simplexml_load_string($this->_getFromZipArchive($zip, "{$rel['Target']}")); + if (is_object($xmlCore)) { + $docProps = $excel->getProperties(); + if (isset($xmlCore->Company)) + $docProps->setCompany((string) $xmlCore->Company); + if (isset($xmlCore->Manager)) + $docProps->setManager((string) $xmlCore->Manager); + } + break; + + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties": + $xmlCore = simplexml_load_string($this->_getFromZipArchive($zip, "{$rel['Target']}")); + if (is_object($xmlCore)) { + $docProps = $excel->getProperties(); + foreach ($xmlCore as $xmlProperty) { + $cellDataOfficeAttributes = $xmlProperty->attributes(); + if (isset($cellDataOfficeAttributes['name'])) { + $propertyName = (string) $cellDataOfficeAttributes['name']; + $cellDataOfficeChildren = $xmlProperty->children('http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes'); + $attributeType = $cellDataOfficeChildren->getName(); + $attributeValue = (string) $cellDataOfficeChildren->{$attributeType}; + $attributeValue = PHPExcel_DocumentProperties::convertProperty($attributeValue,$attributeType); + $attributeType = PHPExcel_DocumentProperties::convertPropertyType($attributeType); + $docProps->setCustomProperty($propertyName,$attributeValue,$attributeType); + } + } + } + break; + + case "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument": + $dir = dirname($rel["Target"]); + $relsWorkbook = simplexml_load_string($this->_getFromZipArchive($zip, "$dir/_rels/" . basename($rel["Target"]) . ".rels")); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $relsWorkbook->registerXPathNamespace("rel", "http://schemas.openxmlformats.org/package/2006/relationships"); + + $sharedStrings = array(); + $xpath = self::array_item($relsWorkbook->xpath("rel:Relationship[@Type='http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings']")); + $xmlStrings = simplexml_load_string($this->_getFromZipArchive($zip, "$dir/$xpath[Target]")); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + if (isset($xmlStrings) && isset($xmlStrings->si)) { + foreach ($xmlStrings->si as $val) { + if (isset($val->t)) { + $sharedStrings[] = PHPExcel_Shared_String::ControlCharacterOOXML2PHP( (string) $val->t ); + } elseif (isset($val->r)) { + $sharedStrings[] = $this->_parseRichText($val); + } + } + } + + $worksheets = array(); + foreach ($relsWorkbook->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet") { + $worksheets[(string) $ele["Id"]] = $ele["Target"]; + } + } + + $styles = array(); + $cellStyles = array(); + $xpath = self::array_item($relsWorkbook->xpath("rel:Relationship[@Type='http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles']")); + $xmlStyles = simplexml_load_string($this->_getFromZipArchive($zip, "$dir/$xpath[Target]")); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + $numFmts = null; + if ($xmlStyles && $xmlStyles->numFmts[0]) { + $numFmts = $xmlStyles->numFmts[0]; + } + if (isset($numFmts) && ($numFmts !== NULL)) { + $numFmts->registerXPathNamespace("sml", "http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + } + if (!$this->_readDataOnly && $xmlStyles) { + foreach ($xmlStyles->cellXfs->xf as $xf) { + $numFmt = PHPExcel_Style_NumberFormat::FORMAT_GENERAL; + + if ($xf["numFmtId"]) { + if (isset($numFmts)) { + $tmpNumFmt = self::array_item($numFmts->xpath("sml:numFmt[@numFmtId=$xf[numFmtId]]")); + + if (isset($tmpNumFmt["formatCode"])) { + $numFmt = (string) $tmpNumFmt["formatCode"]; + } + } + + if ((int)$xf["numFmtId"] < 164) { + $numFmt = PHPExcel_Style_NumberFormat::builtInFormatCode((int)$xf["numFmtId"]); + } + } + //$numFmt = str_replace('mm', 'i', $numFmt); + //$numFmt = str_replace('h', 'H', $numFmt); + + $style = (object) array( + "numFmt" => $numFmt, + "font" => $xmlStyles->fonts->font[intval($xf["fontId"])], + "fill" => $xmlStyles->fills->fill[intval($xf["fillId"])], + "border" => $xmlStyles->borders->border[intval($xf["borderId"])], + "alignment" => $xf->alignment, + "protection" => $xf->protection, + ); + $styles[] = $style; + + // add style to cellXf collection + $objStyle = new PHPExcel_Style; + self::_readStyle($objStyle, $style); + $excel->addCellXf($objStyle); + } + + foreach ($xmlStyles->cellStyleXfs->xf as $xf) { + $numFmt = PHPExcel_Style_NumberFormat::FORMAT_GENERAL; + if ($numFmts && $xf["numFmtId"]) { + $tmpNumFmt = self::array_item($numFmts->xpath("sml:numFmt[@numFmtId=$xf[numFmtId]]")); + if (isset($tmpNumFmt["formatCode"])) { + $numFmt = (string) $tmpNumFmt["formatCode"]; + } else if ((int)$xf["numFmtId"] < 165) { + $numFmt = PHPExcel_Style_NumberFormat::builtInFormatCode((int)$xf["numFmtId"]); + } + } + + $cellStyle = (object) array( + "numFmt" => $numFmt, + "font" => $xmlStyles->fonts->font[intval($xf["fontId"])], + "fill" => $xmlStyles->fills->fill[intval($xf["fillId"])], + "border" => $xmlStyles->borders->border[intval($xf["borderId"])], + "alignment" => $xf->alignment, + "protection" => $xf->protection, + ); + $cellStyles[] = $cellStyle; + + // add style to cellStyleXf collection + $objStyle = new PHPExcel_Style; + self::_readStyle($objStyle, $cellStyle); + $excel->addCellStyleXf($objStyle); + } + } + + $dxfs = array(); + if (!$this->_readDataOnly && $xmlStyles) { + // Conditional Styles + if ($xmlStyles->dxfs) { + foreach ($xmlStyles->dxfs->dxf as $dxf) { + $style = new PHPExcel_Style(FALSE, TRUE); + self::_readStyle($style, $dxf); + $dxfs[] = $style; + } + } + // Cell Styles + if ($xmlStyles->cellStyles) { + foreach ($xmlStyles->cellStyles->cellStyle as $cellStyle) { + if (intval($cellStyle['builtinId']) == 0) { + if (isset($cellStyles[intval($cellStyle['xfId'])])) { + // Set default style + $style = new PHPExcel_Style; + self::_readStyle($style, $cellStyles[intval($cellStyle['xfId'])]); + + // normal style, currently not using it for anything + } + } + } + } + } + + $xmlWorkbook = simplexml_load_string($this->_getFromZipArchive($zip, "{$rel['Target']}")); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + + // Set base date + if ($xmlWorkbook->workbookPr) { + PHPExcel_Shared_Date::setExcelCalendar(PHPExcel_Shared_Date::CALENDAR_WINDOWS_1900); + if (isset($xmlWorkbook->workbookPr['date1904'])) { + $date1904 = (string)$xmlWorkbook->workbookPr['date1904']; + if ($date1904 == "true" || $date1904 == "1") { + PHPExcel_Shared_Date::setExcelCalendar(PHPExcel_Shared_Date::CALENDAR_MAC_1904); + } + } + } + + $sheetId = 0; // keep track of new sheet id in final workbook + $oldSheetId = -1; // keep track of old sheet id in final workbook + $countSkippedSheets = 0; // keep track of number of skipped sheets + $mapSheetId = array(); // mapping of sheet ids from old to new + + + $charts = $chartDetails = array(); + + if ($xmlWorkbook->sheets) { + foreach ($xmlWorkbook->sheets->sheet as $eleSheet) { + ++$oldSheetId; + + // Check if sheet should be skipped + if (isset($this->_loadSheetsOnly) && !in_array((string) $eleSheet["name"], $this->_loadSheetsOnly)) { + ++$countSkippedSheets; + $mapSheetId[$oldSheetId] = null; + continue; + } + + // Map old sheet id in original workbook to new sheet id. + // They will differ if loadSheetsOnly() is being used + $mapSheetId[$oldSheetId] = $oldSheetId - $countSkippedSheets; + + // Load sheet + $docSheet = $excel->createSheet(); + // Use false for $updateFormulaCellReferences to prevent adjustment of worksheet + // references in formula cells... during the load, all formulae should be correct, + // and we're simply bringing the worksheet name in line with the formula, not the + // reverse + $docSheet->setTitle((string) $eleSheet["name"],false); + $fileWorksheet = $worksheets[(string) self::array_item($eleSheet->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"), "id")]; + $xmlSheet = simplexml_load_string($this->_getFromZipArchive($zip, "$dir/$fileWorksheet")); //~ http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + + $sharedFormulas = array(); + + if (isset($eleSheet["state"]) && (string) $eleSheet["state"] != '') { + $docSheet->setSheetState( (string) $eleSheet["state"] ); + } + + if (isset($xmlSheet->sheetViews) && isset($xmlSheet->sheetViews->sheetView)) { + if (isset($xmlSheet->sheetViews->sheetView['zoomScale'])) { + $docSheet->getSheetView()->setZoomScale( intval($xmlSheet->sheetViews->sheetView['zoomScale']) ); + } + + if (isset($xmlSheet->sheetViews->sheetView['zoomScaleNormal'])) { + $docSheet->getSheetView()->setZoomScaleNormal( intval($xmlSheet->sheetViews->sheetView['zoomScaleNormal']) ); + } + + if (isset($xmlSheet->sheetViews->sheetView['view'])) { + $docSheet->getSheetView()->setView((string) $xmlSheet->sheetViews->sheetView['view']); + } + + if (isset($xmlSheet->sheetViews->sheetView['showGridLines'])) { + $docSheet->setShowGridLines((string)$xmlSheet->sheetViews->sheetView['showGridLines'] ? true : false); + } + + if (isset($xmlSheet->sheetViews->sheetView['showRowColHeaders'])) { + $docSheet->setShowRowColHeaders((string)$xmlSheet->sheetViews->sheetView['showRowColHeaders'] ? true : false); + } + + if (isset($xmlSheet->sheetViews->sheetView['rightToLeft'])) { + $docSheet->setRightToLeft((string)$xmlSheet->sheetViews->sheetView['rightToLeft'] ? true : false); + } + + if (isset($xmlSheet->sheetViews->sheetView->pane)) { + if (isset($xmlSheet->sheetViews->sheetView->pane['topLeftCell'])) { + $docSheet->freezePane( (string)$xmlSheet->sheetViews->sheetView->pane['topLeftCell'] ); + } else { + $xSplit = 0; + $ySplit = 0; + + if (isset($xmlSheet->sheetViews->sheetView->pane['xSplit'])) { + $xSplit = 1 + intval($xmlSheet->sheetViews->sheetView->pane['xSplit']); + } + + if (isset($xmlSheet->sheetViews->sheetView->pane['ySplit'])) { + $ySplit = 1 + intval($xmlSheet->sheetViews->sheetView->pane['ySplit']); + } + + $docSheet->freezePaneByColumnAndRow($xSplit, $ySplit); + } + } + + if (isset($xmlSheet->sheetViews->sheetView->selection)) { + if (isset($xmlSheet->sheetViews->sheetView->selection['sqref'])) { + $sqref = (string)$xmlSheet->sheetViews->sheetView->selection['sqref']; + $sqref = explode(' ', $sqref); + $sqref = $sqref[0]; + $docSheet->setSelectedCells($sqref); + } + } + + } + + if (isset($xmlSheet->sheetPr) && isset($xmlSheet->sheetPr->tabColor)) { + if (isset($xmlSheet->sheetPr->tabColor['rgb'])) { + $docSheet->getTabColor()->setARGB( (string)$xmlSheet->sheetPr->tabColor['rgb'] ); + } + } + + if (isset($xmlSheet->sheetPr) && isset($xmlSheet->sheetPr->outlinePr)) { + if (isset($xmlSheet->sheetPr->outlinePr['summaryRight']) && $xmlSheet->sheetPr->outlinePr['summaryRight'] == false) { + $docSheet->setShowSummaryRight(false); + } else { + $docSheet->setShowSummaryRight(true); + } + + if (isset($xmlSheet->sheetPr->outlinePr['summaryBelow']) && $xmlSheet->sheetPr->outlinePr['summaryBelow'] == false) { + $docSheet->setShowSummaryBelow(false); + } else { + $docSheet->setShowSummaryBelow(true); + } + } + + if (isset($xmlSheet->sheetPr) && isset($xmlSheet->sheetPr->pageSetUpPr)) { + if (isset($xmlSheet->sheetPr->pageSetUpPr['fitToPage']) && $xmlSheet->sheetPr->pageSetUpPr['fitToPage'] == false) { + $docSheet->getPageSetup()->setFitToPage(false); + } else { + $docSheet->getPageSetup()->setFitToPage(true); + } + } + + if (isset($xmlSheet->sheetFormatPr)) { + if (isset($xmlSheet->sheetFormatPr['customHeight']) && ((string)$xmlSheet->sheetFormatPr['customHeight'] == '1' || strtolower((string)$xmlSheet->sheetFormatPr['customHeight']) == 'true') && isset($xmlSheet->sheetFormatPr['defaultRowHeight'])) { + $docSheet->getDefaultRowDimension()->setRowHeight( (float)$xmlSheet->sheetFormatPr['defaultRowHeight'] ); + } + if (isset($xmlSheet->sheetFormatPr['defaultColWidth'])) { + $docSheet->getDefaultColumnDimension()->setWidth( (float)$xmlSheet->sheetFormatPr['defaultColWidth'] ); + } + if (isset($xmlSheet->sheetFormatPr['zeroHeight']) && + ((string)$xmlSheet->sheetFormatPr['zeroHeight'] == '1')) { + $docSheet->getDefaultRowDimension()->setzeroHeight(true); + } + } + + if (isset($xmlSheet->cols) && !$this->_readDataOnly) { + foreach ($xmlSheet->cols->col as $col) { + for ($i = intval($col["min"]) - 1; $i < intval($col["max"]); ++$i) { + if ($col["style"] && !$this->_readDataOnly) { + $docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setXfIndex(intval($col["style"])); + } + if ($col["bestFit"]) { + //$docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setAutoSize(true); + } + if ($col["hidden"]) { + $docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setVisible(false); + } + if ($col["collapsed"]) { + $docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setCollapsed(true); + } + if ($col["outlineLevel"] > 0) { + $docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setOutlineLevel(intval($col["outlineLevel"])); + } + $docSheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($i))->setWidth(floatval($col["width"])); + + if (intval($col["max"]) == 16384) { + break; + } + } + } + } + + if (isset($xmlSheet->printOptions) && !$this->_readDataOnly) { + if ($xmlSheet->printOptions['gridLinesSet'] == 'true' && $xmlSheet->printOptions['gridLinesSet'] == '1') { + $docSheet->setShowGridlines(true); + } + + if ($xmlSheet->printOptions['gridLines'] == 'true' || $xmlSheet->printOptions['gridLines'] == '1') { + $docSheet->setPrintGridlines(true); + } + + if ($xmlSheet->printOptions['horizontalCentered']) { + $docSheet->getPageSetup()->setHorizontalCentered(true); + } + if ($xmlSheet->printOptions['verticalCentered']) { + $docSheet->getPageSetup()->setVerticalCentered(true); + } + } + + if ($xmlSheet && $xmlSheet->sheetData && $xmlSheet->sheetData->row) { + foreach ($xmlSheet->sheetData->row as $row) { + if ($row["ht"] && !$this->_readDataOnly) { + $docSheet->getRowDimension(intval($row["r"]))->setRowHeight(floatval($row["ht"])); + } + if ($row["hidden"] && !$this->_readDataOnly) { + $docSheet->getRowDimension(intval($row["r"]))->setVisible(false); + } + if ($row["collapsed"]) { + $docSheet->getRowDimension(intval($row["r"]))->setCollapsed(true); + } + if ($row["outlineLevel"] > 0) { + $docSheet->getRowDimension(intval($row["r"]))->setOutlineLevel(intval($row["outlineLevel"])); + } + if ($row["s"] && !$this->_readDataOnly) { + $docSheet->getRowDimension(intval($row["r"]))->setXfIndex(intval($row["s"])); + } + + foreach ($row->c as $c) { + $r = (string) $c["r"]; + $cellDataType = (string) $c["t"]; + $value = null; + $calculatedValue = null; + + // Read cell? + if ($this->getReadFilter() !== NULL) { + $coordinates = PHPExcel_Cell::coordinateFromString($r); + + if (!$this->getReadFilter()->readCell($coordinates[0], $coordinates[1], $docSheet->getTitle())) { + continue; + } + } + + // echo '<b>Reading cell '.$coordinates[0].$coordinates[1].'</b><br />'; + // print_r($c); + // echo '<br />'; + // echo 'Cell Data Type is '.$cellDataType.': '; + // + // Read cell! + switch ($cellDataType) { + case "s": + // echo 'String<br />'; + if ((string)$c->v != '') { + $value = $sharedStrings[intval($c->v)]; + + if ($value instanceof PHPExcel_RichText) { + $value = clone $value; + } + } else { + $value = ''; + } + + break; + case "b": + // echo 'Boolean<br />'; + if (!isset($c->f)) { + $value = self::_castToBool($c); + } else { + // Formula + $this->_castToFormula($c,$r,$cellDataType,$value,$calculatedValue,$sharedFormulas,'_castToBool'); + if (isset($c->f['t'])) { + $att = array(); + $att = $c->f; + $docSheet->getCell($r)->setFormulaAttributes($att); + } + // echo '$calculatedValue = '.$calculatedValue.'<br />'; + } + break; + case "inlineStr": + // echo 'Inline String<br />'; + $value = $this->_parseRichText($c->is); + + break; + case "e": + // echo 'Error<br />'; + if (!isset($c->f)) { + $value = self::_castToError($c); + } else { + // Formula + $this->_castToFormula($c,$r,$cellDataType,$value,$calculatedValue,$sharedFormulas,'_castToError'); + // echo '$calculatedValue = '.$calculatedValue.'<br />'; + } + + break; + + default: + // echo 'Default<br />'; + if (!isset($c->f)) { + // echo 'Not a Formula<br />'; + $value = self::_castToString($c); + } else { + // echo 'Treat as Formula<br />'; + // Formula + $this->_castToFormula($c,$r,$cellDataType,$value,$calculatedValue,$sharedFormulas,'_castToString'); + // echo '$calculatedValue = '.$calculatedValue.'<br />'; + } + + break; + } + // echo 'Value is '.$value.'<br />'; + + // Check for numeric values + if (is_numeric($value) && $cellDataType != 's') { + if ($value == (int)$value) $value = (int)$value; + elseif ($value == (float)$value) $value = (float)$value; + elseif ($value == (double)$value) $value = (double)$value; + } + + // Rich text? + if ($value instanceof PHPExcel_RichText && $this->_readDataOnly) { + $value = $value->getPlainText(); + } + + $cell = $docSheet->getCell($r); + // Assign value + if ($cellDataType != '') { + $cell->setValueExplicit($value, $cellDataType); + } else { + $cell->setValue($value); + } + if ($calculatedValue !== NULL) { + $cell->setCalculatedValue($calculatedValue); + } + + // Style information? + if ($c["s"] && !$this->_readDataOnly) { + // no style index means 0, it seems + $cell->setXfIndex(isset($styles[intval($c["s"])]) ? + intval($c["s"]) : 0); + } + } + } + } + + $conditionals = array(); + if (!$this->_readDataOnly && $xmlSheet && $xmlSheet->conditionalFormatting) { + foreach ($xmlSheet->conditionalFormatting as $conditional) { + foreach ($conditional->cfRule as $cfRule) { + if ( + ( + (string)$cfRule["type"] == PHPExcel_Style_Conditional::CONDITION_NONE || + (string)$cfRule["type"] == PHPExcel_Style_Conditional::CONDITION_CELLIS || + (string)$cfRule["type"] == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT || + (string)$cfRule["type"] == PHPExcel_Style_Conditional::CONDITION_EXPRESSION + ) && isset($dxfs[intval($cfRule["dxfId"])]) + ) { + $conditionals[(string) $conditional["sqref"]][intval($cfRule["priority"])] = $cfRule; + } + } + } + + foreach ($conditionals as $ref => $cfRules) { + ksort($cfRules); + $conditionalStyles = array(); + foreach ($cfRules as $cfRule) { + $objConditional = new PHPExcel_Style_Conditional(); + $objConditional->setConditionType((string)$cfRule["type"]); + $objConditional->setOperatorType((string)$cfRule["operator"]); + + if ((string)$cfRule["text"] != '') { + $objConditional->setText((string)$cfRule["text"]); + } + + if (count($cfRule->formula) > 1) { + foreach ($cfRule->formula as $formula) { + $objConditional->addCondition((string)$formula); + } + } else { + $objConditional->addCondition((string)$cfRule->formula); + } + $objConditional->setStyle(clone $dxfs[intval($cfRule["dxfId"])]); + $conditionalStyles[] = $objConditional; + } + + // Extract all cell references in $ref + $aReferences = PHPExcel_Cell::extractAllCellReferencesInRange($ref); + foreach ($aReferences as $reference) { + $docSheet->getStyle($reference)->setConditionalStyles($conditionalStyles); + } + } + } + + $aKeys = array("sheet", "objects", "scenarios", "formatCells", "formatColumns", "formatRows", "insertColumns", "insertRows", "insertHyperlinks", "deleteColumns", "deleteRows", "selectLockedCells", "sort", "autoFilter", "pivotTables", "selectUnlockedCells"); + if (!$this->_readDataOnly && $xmlSheet && $xmlSheet->sheetProtection) { + foreach ($aKeys as $key) { + $method = "set" . ucfirst($key); + $docSheet->getProtection()->$method($xmlSheet->sheetProtection[$key] == "true"); + } + } + + if (!$this->_readDataOnly && $xmlSheet && $xmlSheet->sheetProtection) { + $docSheet->getProtection()->setPassword((string) $xmlSheet->sheetProtection["password"], true); + if ($xmlSheet->protectedRanges->protectedRange) { + foreach ($xmlSheet->protectedRanges->protectedRange as $protectedRange) { + $docSheet->protectCells((string) $protectedRange["sqref"], (string) $protectedRange["password"], true); + } + } + } + + if ($xmlSheet && $xmlSheet->autoFilter && !$this->_readDataOnly) { + $autoFilter = $docSheet->getAutoFilter(); + $autoFilter->setRange((string) $xmlSheet->autoFilter["ref"]); + foreach ($xmlSheet->autoFilter->filterColumn as $filterColumn) { + $column = $autoFilter->getColumnByOffset((integer) $filterColumn["colId"]); + // Check for standard filters + if ($filterColumn->filters) { + $column->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER); + $filters = $filterColumn->filters; + if ((isset($filters["blank"])) && ($filters["blank"] == 1)) { + $column->createRule()->setRule( + NULL, // Operator is undefined, but always treated as EQUAL + '' + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_FILTER); + } + // Standard filters are always an OR join, so no join rule needs to be set + // Entries can be either filter elements + foreach ($filters->filter as $filterRule) { + $column->createRule()->setRule( + NULL, // Operator is undefined, but always treated as EQUAL + (string) $filterRule["val"] + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_FILTER); + } + // Or Date Group elements + foreach ($filters->dateGroupItem as $dateGroupItem) { + $column->createRule()->setRule( + NULL, // Operator is undefined, but always treated as EQUAL + array( + 'year' => (string) $dateGroupItem["year"], + 'month' => (string) $dateGroupItem["month"], + 'day' => (string) $dateGroupItem["day"], + 'hour' => (string) $dateGroupItem["hour"], + 'minute' => (string) $dateGroupItem["minute"], + 'second' => (string) $dateGroupItem["second"], + ), + (string) $dateGroupItem["dateTimeGrouping"] + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP); + } + } + // Check for custom filters + if ($filterColumn->customFilters) { + $column->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER); + $customFilters = $filterColumn->customFilters; + // Custom filters can an AND or an OR join; + // and there should only ever be one or two entries + if ((isset($customFilters["and"])) && ($customFilters["and"] == 1)) { + $column->setJoin(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND); + } + foreach ($customFilters->customFilter as $filterRule) { + $column->createRule()->setRule( + (string) $filterRule["operator"], + (string) $filterRule["val"] + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); + } + } + // Check for dynamic filters + if ($filterColumn->dynamicFilter) { + $column->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_DYNAMICFILTER); + // We should only ever have one dynamic filter + foreach ($filterColumn->dynamicFilter as $filterRule) { + $column->createRule()->setRule( + NULL, // Operator is undefined, but always treated as EQUAL + (string) $filterRule["val"], + (string) $filterRule["type"] + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMICFILTER); + if (isset($filterRule["val"])) { + $column->setAttribute('val',(string) $filterRule["val"]); + } + if (isset($filterRule["maxVal"])) { + $column->setAttribute('maxVal',(string) $filterRule["maxVal"]); + } + } + } + // Check for dynamic filters + if ($filterColumn->top10) { + $column->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_TOPTENFILTER); + // We should only ever have one top10 filter + foreach ($filterColumn->top10 as $filterRule) { + $column->createRule()->setRule( + (((isset($filterRule["percent"])) && ($filterRule["percent"] == 1)) + ? PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT + : PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE + ), + (string) $filterRule["val"], + (((isset($filterRule["top"])) && ($filterRule["top"] == 1)) + ? PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP + : PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM + ) + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_TOPTENFILTER); + } + } + } + } + + if ($xmlSheet && $xmlSheet->mergeCells && $xmlSheet->mergeCells->mergeCell && !$this->_readDataOnly) { + foreach ($xmlSheet->mergeCells->mergeCell as $mergeCell) { + $mergeRef = (string) $mergeCell["ref"]; + if (strpos($mergeRef,':') !== FALSE) { + $docSheet->mergeCells((string) $mergeCell["ref"]); + } + } + } + + if ($xmlSheet && $xmlSheet->pageMargins && !$this->_readDataOnly) { + $docPageMargins = $docSheet->getPageMargins(); + $docPageMargins->setLeft(floatval($xmlSheet->pageMargins["left"])); + $docPageMargins->setRight(floatval($xmlSheet->pageMargins["right"])); + $docPageMargins->setTop(floatval($xmlSheet->pageMargins["top"])); + $docPageMargins->setBottom(floatval($xmlSheet->pageMargins["bottom"])); + $docPageMargins->setHeader(floatval($xmlSheet->pageMargins["header"])); + $docPageMargins->setFooter(floatval($xmlSheet->pageMargins["footer"])); + } + + if ($xmlSheet && $xmlSheet->pageSetup && !$this->_readDataOnly) { + $docPageSetup = $docSheet->getPageSetup(); + + if (isset($xmlSheet->pageSetup["orientation"])) { + $docPageSetup->setOrientation((string) $xmlSheet->pageSetup["orientation"]); + } + if (isset($xmlSheet->pageSetup["paperSize"])) { + $docPageSetup->setPaperSize(intval($xmlSheet->pageSetup["paperSize"])); + } + if (isset($xmlSheet->pageSetup["scale"])) { + $docPageSetup->setScale(intval($xmlSheet->pageSetup["scale"]), false); + } + if (isset($xmlSheet->pageSetup["fitToHeight"]) && intval($xmlSheet->pageSetup["fitToHeight"]) >= 0) { + $docPageSetup->setFitToHeight(intval($xmlSheet->pageSetup["fitToHeight"]), false); + } + if (isset($xmlSheet->pageSetup["fitToWidth"]) && intval($xmlSheet->pageSetup["fitToWidth"]) >= 0) { + $docPageSetup->setFitToWidth(intval($xmlSheet->pageSetup["fitToWidth"]), false); + } + if (isset($xmlSheet->pageSetup["firstPageNumber"]) && isset($xmlSheet->pageSetup["useFirstPageNumber"]) && + ((string)$xmlSheet->pageSetup["useFirstPageNumber"] == 'true' || (string)$xmlSheet->pageSetup["useFirstPageNumber"] == '1')) { + $docPageSetup->setFirstPageNumber(intval($xmlSheet->pageSetup["firstPageNumber"])); + } + } + + if ($xmlSheet && $xmlSheet->headerFooter && !$this->_readDataOnly) { + $docHeaderFooter = $docSheet->getHeaderFooter(); + + if (isset($xmlSheet->headerFooter["differentOddEven"]) && + ((string)$xmlSheet->headerFooter["differentOddEven"] == 'true' || (string)$xmlSheet->headerFooter["differentOddEven"] == '1')) { + $docHeaderFooter->setDifferentOddEven(true); + } else { + $docHeaderFooter->setDifferentOddEven(false); + } + if (isset($xmlSheet->headerFooter["differentFirst"]) && + ((string)$xmlSheet->headerFooter["differentFirst"] == 'true' || (string)$xmlSheet->headerFooter["differentFirst"] == '1')) { + $docHeaderFooter->setDifferentFirst(true); + } else { + $docHeaderFooter->setDifferentFirst(false); + } + if (isset($xmlSheet->headerFooter["scaleWithDoc"]) && + ((string)$xmlSheet->headerFooter["scaleWithDoc"] == 'false' || (string)$xmlSheet->headerFooter["scaleWithDoc"] == '0')) { + $docHeaderFooter->setScaleWithDocument(false); + } else { + $docHeaderFooter->setScaleWithDocument(true); + } + if (isset($xmlSheet->headerFooter["alignWithMargins"]) && + ((string)$xmlSheet->headerFooter["alignWithMargins"] == 'false' || (string)$xmlSheet->headerFooter["alignWithMargins"] == '0')) { + $docHeaderFooter->setAlignWithMargins(false); + } else { + $docHeaderFooter->setAlignWithMargins(true); + } + + $docHeaderFooter->setOddHeader((string) $xmlSheet->headerFooter->oddHeader); + $docHeaderFooter->setOddFooter((string) $xmlSheet->headerFooter->oddFooter); + $docHeaderFooter->setEvenHeader((string) $xmlSheet->headerFooter->evenHeader); + $docHeaderFooter->setEvenFooter((string) $xmlSheet->headerFooter->evenFooter); + $docHeaderFooter->setFirstHeader((string) $xmlSheet->headerFooter->firstHeader); + $docHeaderFooter->setFirstFooter((string) $xmlSheet->headerFooter->firstFooter); + } + + if ($xmlSheet && $xmlSheet->rowBreaks && $xmlSheet->rowBreaks->brk && !$this->_readDataOnly) { + foreach ($xmlSheet->rowBreaks->brk as $brk) { + if ($brk["man"]) { + $docSheet->setBreak("A$brk[id]", PHPExcel_Worksheet::BREAK_ROW); + } + } + } + if ($xmlSheet && $xmlSheet->colBreaks && $xmlSheet->colBreaks->brk && !$this->_readDataOnly) { + foreach ($xmlSheet->colBreaks->brk as $brk) { + if ($brk["man"]) { + $docSheet->setBreak(PHPExcel_Cell::stringFromColumnIndex((string) $brk["id"]) . "1", PHPExcel_Worksheet::BREAK_COLUMN); + } + } + } + + if ($xmlSheet && $xmlSheet->dataValidations && !$this->_readDataOnly) { + foreach ($xmlSheet->dataValidations->dataValidation as $dataValidation) { + // Uppercase coordinate + $range = strtoupper($dataValidation["sqref"]); + $rangeSet = explode(' ',$range); + foreach($rangeSet as $range) { + $stRange = $docSheet->shrinkRangeToFit($range); + + // Extract all cell references in $range + $aReferences = PHPExcel_Cell::extractAllCellReferencesInRange($stRange); + foreach ($aReferences as $reference) { + // Create validation + $docValidation = $docSheet->getCell($reference)->getDataValidation(); + $docValidation->setType((string) $dataValidation["type"]); + $docValidation->setErrorStyle((string) $dataValidation["errorStyle"]); + $docValidation->setOperator((string) $dataValidation["operator"]); + $docValidation->setAllowBlank($dataValidation["allowBlank"] != 0); + $docValidation->setShowDropDown($dataValidation["showDropDown"] == 0); + $docValidation->setShowInputMessage($dataValidation["showInputMessage"] != 0); + $docValidation->setShowErrorMessage($dataValidation["showErrorMessage"] != 0); + $docValidation->setErrorTitle((string) $dataValidation["errorTitle"]); + $docValidation->setError((string) $dataValidation["error"]); + $docValidation->setPromptTitle((string) $dataValidation["promptTitle"]); + $docValidation->setPrompt((string) $dataValidation["prompt"]); + $docValidation->setFormula1((string) $dataValidation->formula1); + $docValidation->setFormula2((string) $dataValidation->formula2); + } + } + } + } + + // Add hyperlinks + $hyperlinks = array(); + if (!$this->_readDataOnly) { + // Locate hyperlink relations + if ($zip->locateName(dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")) { + $relsWorksheet = simplexml_load_string($this->_getFromZipArchive($zip, dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels") ); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($relsWorksheet->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink") { + $hyperlinks[(string)$ele["Id"]] = (string)$ele["Target"]; + } + } + } + + // Loop through hyperlinks + if ($xmlSheet && $xmlSheet->hyperlinks) { + foreach ($xmlSheet->hyperlinks->hyperlink as $hyperlink) { + // Link url + $linkRel = $hyperlink->attributes('http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + + foreach (PHPExcel_Cell::extractAllCellReferencesInRange($hyperlink['ref']) as $cellReference) { + $cell = $docSheet->getCell( $cellReference ); + if (isset($linkRel['id'])) { + $cell->getHyperlink()->setUrl( $hyperlinks[ (string)$linkRel['id'] ] ); + } + if (isset($hyperlink['location'])) { + $cell->getHyperlink()->setUrl( 'sheet://' . (string)$hyperlink['location'] ); + } + + // Tooltip + if (isset($hyperlink['tooltip'])) { + $cell->getHyperlink()->setTooltip( (string)$hyperlink['tooltip'] ); + } + } + } + } + } + + // Add comments + $comments = array(); + $vmlComments = array(); + if (!$this->_readDataOnly) { + // Locate comment relations + if ($zip->locateName(dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")) { + $relsWorksheet = simplexml_load_string($this->_getFromZipArchive($zip, dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels") ); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + foreach ($relsWorksheet->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments") { + $comments[(string)$ele["Id"]] = (string)$ele["Target"]; + } + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing") { + $vmlComments[(string)$ele["Id"]] = (string)$ele["Target"]; + } + } + } + + // Loop through comments + foreach ($comments as $relName => $relPath) { + // Load comments file + $relPath = PHPExcel_Shared_File::realpath(dirname("$dir/$fileWorksheet") . "/" . $relPath); + $commentsFile = simplexml_load_string($this->_getFromZipArchive($zip, $relPath) ); + + // Utility variables + $authors = array(); + + // Loop through authors + foreach ($commentsFile->authors->author as $author) { + $authors[] = (string)$author; + } + + // Loop through contents + foreach ($commentsFile->commentList->comment as $comment) { + $docSheet->getComment( (string)$comment['ref'] )->setAuthor( $authors[(string)$comment['authorId']] ); + $docSheet->getComment( (string)$comment['ref'] )->setText( $this->_parseRichText($comment->text) ); + } + } + + // Loop through VML comments + foreach ($vmlComments as $relName => $relPath) { + // Load VML comments file + $relPath = PHPExcel_Shared_File::realpath(dirname("$dir/$fileWorksheet") . "/" . $relPath); + $vmlCommentsFile = simplexml_load_string( $this->_getFromZipArchive($zip, $relPath) ); + $vmlCommentsFile->registerXPathNamespace('v', 'urn:schemas-microsoft-com:vml'); + + $shapes = $vmlCommentsFile->xpath('//v:shape'); + foreach ($shapes as $shape) { + $shape->registerXPathNamespace('v', 'urn:schemas-microsoft-com:vml'); + + if (isset($shape['style'])) { + $style = (string)$shape['style']; + $fillColor = strtoupper( substr( (string)$shape['fillcolor'], 1 ) ); + $column = null; + $row = null; + + $clientData = $shape->xpath('.//x:ClientData'); + if (is_array($clientData) && !empty($clientData)) { + $clientData = $clientData[0]; + + if ( isset($clientData['ObjectType']) && (string)$clientData['ObjectType'] == 'Note' ) { + $temp = $clientData->xpath('.//x:Row'); + if (is_array($temp)) $row = $temp[0]; + + $temp = $clientData->xpath('.//x:Column'); + if (is_array($temp)) $column = $temp[0]; + } + } + + if (($column !== NULL) && ($row !== NULL)) { + // Set comment properties + $comment = $docSheet->getCommentByColumnAndRow((string) $column, $row + 1); + $comment->getFillColor()->setRGB( $fillColor ); + + // Parse style + $styleArray = explode(';', str_replace(' ', '', $style)); + foreach ($styleArray as $stylePair) { + $stylePair = explode(':', $stylePair); + + if ($stylePair[0] == 'margin-left') $comment->setMarginLeft($stylePair[1]); + if ($stylePair[0] == 'margin-top') $comment->setMarginTop($stylePair[1]); + if ($stylePair[0] == 'width') $comment->setWidth($stylePair[1]); + if ($stylePair[0] == 'height') $comment->setHeight($stylePair[1]); + if ($stylePair[0] == 'visibility') $comment->setVisible( $stylePair[1] == 'visible' ); + + } + } + } + } + } + + // Header/footer images + if ($xmlSheet && $xmlSheet->legacyDrawingHF && !$this->_readDataOnly) { + if ($zip->locateName(dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")) { + $relsWorksheet = simplexml_load_string($this->_getFromZipArchive($zip, dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels") ); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $vmlRelationship = ''; + + foreach ($relsWorksheet->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing") { + $vmlRelationship = self::dir_add("$dir/$fileWorksheet", $ele["Target"]); + } + } + + if ($vmlRelationship != '') { + // Fetch linked images + $relsVML = simplexml_load_string($this->_getFromZipArchive($zip, dirname($vmlRelationship) . '/_rels/' . basename($vmlRelationship) . '.rels' )); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $drawings = array(); + foreach ($relsVML->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image") { + $drawings[(string) $ele["Id"]] = self::dir_add($vmlRelationship, $ele["Target"]); + } + } + + // Fetch VML document + $vmlDrawing = simplexml_load_string($this->_getFromZipArchive($zip, $vmlRelationship)); + $vmlDrawing->registerXPathNamespace('v', 'urn:schemas-microsoft-com:vml'); + + $hfImages = array(); + + $shapes = $vmlDrawing->xpath('//v:shape'); + foreach ($shapes as $shape) { + $shape->registerXPathNamespace('v', 'urn:schemas-microsoft-com:vml'); + $imageData = $shape->xpath('//v:imagedata'); + $imageData = $imageData[0]; + + $imageData = $imageData->attributes('urn:schemas-microsoft-com:office:office'); + $style = self::toCSSArray( (string)$shape['style'] ); + + $hfImages[ (string)$shape['id'] ] = new PHPExcel_Worksheet_HeaderFooterDrawing(); + if (isset($imageData['title'])) { + $hfImages[ (string)$shape['id'] ]->setName( (string)$imageData['title'] ); + } + + $hfImages[ (string)$shape['id'] ]->setPath("zip://$pFilename#" . $drawings[(string)$imageData['relid']], false); + $hfImages[ (string)$shape['id'] ]->setResizeProportional(false); + $hfImages[ (string)$shape['id'] ]->setWidth($style['width']); + $hfImages[ (string)$shape['id'] ]->setHeight($style['height']); + $hfImages[ (string)$shape['id'] ]->setOffsetX($style['margin-left']); + $hfImages[ (string)$shape['id'] ]->setOffsetY($style['margin-top']); + $hfImages[ (string)$shape['id'] ]->setResizeProportional(true); + } + + $docSheet->getHeaderFooter()->setImages($hfImages); + } + } + } + + } + +// TODO: Autoshapes from twoCellAnchors! + if ($zip->locateName(dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels")) { + $relsWorksheet = simplexml_load_string($this->_getFromZipArchive($zip, dirname("$dir/$fileWorksheet") . "/_rels/" . basename($fileWorksheet) . ".rels") ); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $drawings = array(); + foreach ($relsWorksheet->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing") { + $drawings[(string) $ele["Id"]] = self::dir_add("$dir/$fileWorksheet", $ele["Target"]); + } + } + if ($xmlSheet->drawing && !$this->_readDataOnly) { + foreach ($xmlSheet->drawing as $drawing) { + $fileDrawing = $drawings[(string) self::array_item($drawing->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"), "id")]; + $relsDrawing = simplexml_load_string($this->_getFromZipArchive($zip, dirname($fileDrawing) . "/_rels/" . basename($fileDrawing) . ".rels") ); //~ http://schemas.openxmlformats.org/package/2006/relationships"); + $images = array(); + + if ($relsDrawing && $relsDrawing->Relationship) { + foreach ($relsDrawing->Relationship as $ele) { + if ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image") { + $images[(string) $ele["Id"]] = self::dir_add($fileDrawing, $ele["Target"]); + } elseif ($ele["Type"] == "http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart") { + if ($this->_includeCharts) { + $charts[self::dir_add($fileDrawing, $ele["Target"])] = array('id' => (string) $ele["Id"], + 'sheet' => $docSheet->getTitle() + ); + } + } + } + } + $xmlDrawing = simplexml_load_string($this->_getFromZipArchive($zip, $fileDrawing))->children("http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing"); + + if ($xmlDrawing->oneCellAnchor) { + foreach ($xmlDrawing->oneCellAnchor as $oneCellAnchor) { + if ($oneCellAnchor->pic->blipFill) { + $blip = $oneCellAnchor->pic->blipFill->children("http://schemas.openxmlformats.org/drawingml/2006/main")->blip; + $xfrm = $oneCellAnchor->pic->spPr->children("http://schemas.openxmlformats.org/drawingml/2006/main")->xfrm; + $outerShdw = $oneCellAnchor->pic->spPr->children("http://schemas.openxmlformats.org/drawingml/2006/main")->effectLst->outerShdw; + $objDrawing = new PHPExcel_Worksheet_Drawing; + $objDrawing->setName((string) self::array_item($oneCellAnchor->pic->nvPicPr->cNvPr->attributes(), "name")); + $objDrawing->setDescription((string) self::array_item($oneCellAnchor->pic->nvPicPr->cNvPr->attributes(), "descr")); + $objDrawing->setPath("zip://$pFilename#" . $images[(string) self::array_item($blip->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"), "embed")], false); + $objDrawing->setCoordinates(PHPExcel_Cell::stringFromColumnIndex((string) $oneCellAnchor->from->col) . ($oneCellAnchor->from->row + 1)); + $objDrawing->setOffsetX(PHPExcel_Shared_Drawing::EMUToPixels($oneCellAnchor->from->colOff)); + $objDrawing->setOffsetY(PHPExcel_Shared_Drawing::EMUToPixels($oneCellAnchor->from->rowOff)); + $objDrawing->setResizeProportional(false); + $objDrawing->setWidth(PHPExcel_Shared_Drawing::EMUToPixels(self::array_item($oneCellAnchor->ext->attributes(), "cx"))); + $objDrawing->setHeight(PHPExcel_Shared_Drawing::EMUToPixels(self::array_item($oneCellAnchor->ext->attributes(), "cy"))); + if ($xfrm) { + $objDrawing->setRotation(PHPExcel_Shared_Drawing::angleToDegrees(self::array_item($xfrm->attributes(), "rot"))); + } + if ($outerShdw) { + $shadow = $objDrawing->getShadow(); + $shadow->setVisible(true); + $shadow->setBlurRadius(PHPExcel_Shared_Drawing::EMUTopixels(self::array_item($outerShdw->attributes(), "blurRad"))); + $shadow->setDistance(PHPExcel_Shared_Drawing::EMUTopixels(self::array_item($outerShdw->attributes(), "dist"))); + $shadow->setDirection(PHPExcel_Shared_Drawing::angleToDegrees(self::array_item($outerShdw->attributes(), "dir"))); + $shadow->setAlignment((string) self::array_item($outerShdw->attributes(), "algn")); + $shadow->getColor()->setRGB(self::array_item($outerShdw->srgbClr->attributes(), "val")); + $shadow->setAlpha(self::array_item($outerShdw->srgbClr->alpha->attributes(), "val") / 1000); + } + $objDrawing->setWorksheet($docSheet); + } else { + // ? Can charts be positioned with a oneCellAnchor ? + $coordinates = PHPExcel_Cell::stringFromColumnIndex((string) $oneCellAnchor->from->col) . ($oneCellAnchor->from->row + 1); + $offsetX = PHPExcel_Shared_Drawing::EMUToPixels($oneCellAnchor->from->colOff); + $offsetY = PHPExcel_Shared_Drawing::EMUToPixels($oneCellAnchor->from->rowOff); + $width = PHPExcel_Shared_Drawing::EMUToPixels(self::array_item($oneCellAnchor->ext->attributes(), "cx")); + $height = PHPExcel_Shared_Drawing::EMUToPixels(self::array_item($oneCellAnchor->ext->attributes(), "cy")); + } + } + } + if ($xmlDrawing->twoCellAnchor) { + foreach ($xmlDrawing->twoCellAnchor as $twoCellAnchor) { + if ($twoCellAnchor->pic->blipFill) { + $blip = $twoCellAnchor->pic->blipFill->children("http://schemas.openxmlformats.org/drawingml/2006/main")->blip; + $xfrm = $twoCellAnchor->pic->spPr->children("http://schemas.openxmlformats.org/drawingml/2006/main")->xfrm; + $outerShdw = $twoCellAnchor->pic->spPr->children("http://schemas.openxmlformats.org/drawingml/2006/main")->effectLst->outerShdw; + $objDrawing = new PHPExcel_Worksheet_Drawing; + $objDrawing->setName((string) self::array_item($twoCellAnchor->pic->nvPicPr->cNvPr->attributes(), "name")); + $objDrawing->setDescription((string) self::array_item($twoCellAnchor->pic->nvPicPr->cNvPr->attributes(), "descr")); + $objDrawing->setPath("zip://$pFilename#" . $images[(string) self::array_item($blip->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"), "embed")], false); + $objDrawing->setCoordinates(PHPExcel_Cell::stringFromColumnIndex((string) $twoCellAnchor->from->col) . ($twoCellAnchor->from->row + 1)); + $objDrawing->setOffsetX(PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->from->colOff)); + $objDrawing->setOffsetY(PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->from->rowOff)); + $objDrawing->setResizeProportional(false); + + $objDrawing->setWidth(PHPExcel_Shared_Drawing::EMUToPixels(self::array_item($xfrm->ext->attributes(), "cx"))); + $objDrawing->setHeight(PHPExcel_Shared_Drawing::EMUToPixels(self::array_item($xfrm->ext->attributes(), "cy"))); + + if ($xfrm) { + $objDrawing->setRotation(PHPExcel_Shared_Drawing::angleToDegrees(self::array_item($xfrm->attributes(), "rot"))); + } + if ($outerShdw) { + $shadow = $objDrawing->getShadow(); + $shadow->setVisible(true); + $shadow->setBlurRadius(PHPExcel_Shared_Drawing::EMUTopixels(self::array_item($outerShdw->attributes(), "blurRad"))); + $shadow->setDistance(PHPExcel_Shared_Drawing::EMUTopixels(self::array_item($outerShdw->attributes(), "dist"))); + $shadow->setDirection(PHPExcel_Shared_Drawing::angleToDegrees(self::array_item($outerShdw->attributes(), "dir"))); + $shadow->setAlignment((string) self::array_item($outerShdw->attributes(), "algn")); + $shadow->getColor()->setRGB(self::array_item($outerShdw->srgbClr->attributes(), "val")); + $shadow->setAlpha(self::array_item($outerShdw->srgbClr->alpha->attributes(), "val") / 1000); + } + $objDrawing->setWorksheet($docSheet); + } elseif(($this->_includeCharts) && ($twoCellAnchor->graphicFrame)) { + $fromCoordinate = PHPExcel_Cell::stringFromColumnIndex((string) $twoCellAnchor->from->col) . ($twoCellAnchor->from->row + 1); + $fromOffsetX = PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->from->colOff); + $fromOffsetY = PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->from->rowOff); + $toCoordinate = PHPExcel_Cell::stringFromColumnIndex((string) $twoCellAnchor->to->col) . ($twoCellAnchor->to->row + 1); + $toOffsetX = PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->to->colOff); + $toOffsetY = PHPExcel_Shared_Drawing::EMUToPixels($twoCellAnchor->to->rowOff); + $graphic = $twoCellAnchor->graphicFrame->children("http://schemas.openxmlformats.org/drawingml/2006/main")->graphic; + $chartRef = $graphic->graphicData->children("http://schemas.openxmlformats.org/drawingml/2006/chart")->chart; + $thisChart = (string) $chartRef->attributes("http://schemas.openxmlformats.org/officeDocument/2006/relationships"); + + $chartDetails[$docSheet->getTitle().'!'.$thisChart] = + array( 'fromCoordinate' => $fromCoordinate, + 'fromOffsetX' => $fromOffsetX, + 'fromOffsetY' => $fromOffsetY, + 'toCoordinate' => $toCoordinate, + 'toOffsetX' => $toOffsetX, + 'toOffsetY' => $toOffsetY, + 'worksheetTitle' => $docSheet->getTitle() + ); + } + } + } + + } + } + } + + // Loop through definedNames + if ($xmlWorkbook->definedNames) { + foreach ($xmlWorkbook->definedNames->definedName as $definedName) { + // Extract range + $extractedRange = (string)$definedName; + $extractedRange = preg_replace('/\'(\w+)\'\!/', '', $extractedRange); + if (($spos = strpos($extractedRange,'!')) !== false) { + $extractedRange = substr($extractedRange,0,$spos).str_replace('$', '', substr($extractedRange,$spos)); + } else { + $extractedRange = str_replace('$', '', $extractedRange); + } + + // Valid range? + if (stripos((string)$definedName, '#REF!') !== FALSE || $extractedRange == '') { + continue; + } + + // Some definedNames are only applicable if we are on the same sheet... + if ((string)$definedName['localSheetId'] != '' && (string)$definedName['localSheetId'] == $sheetId) { + // Switch on type + switch ((string)$definedName['name']) { + + case '_xlnm._FilterDatabase': + if ((string)$definedName['hidden'] !== '1') { + $docSheet->getAutoFilter()->setRange($extractedRange); + } + break; + + case '_xlnm.Print_Titles': + // Split $extractedRange + $extractedRange = explode(',', $extractedRange); + + // Set print titles + foreach ($extractedRange as $range) { + $matches = array(); + + // check for repeating columns, e g. 'A:A' or 'A:D' + if (preg_match('/^([A-Z]+)\:([A-Z]+)$/', $range, $matches)) { + $docSheet->getPageSetup()->setColumnsToRepeatAtLeft(array($matches[1], $matches[2])); + } + // check for repeating rows, e.g. '1:1' or '1:5' + elseif (preg_match('/^(\d+)\:(\d+)$/', $range, $matches)) { + $docSheet->getPageSetup()->setRowsToRepeatAtTop(array($matches[1], $matches[2])); + } + } + break; + + case '_xlnm.Print_Area': + $rangeSets = explode(',', $extractedRange); // FIXME: what if sheetname contains comma? + $newRangeSets = array(); + foreach($rangeSets as $rangeSet) { + $range = explode('!', $rangeSet); // FIXME: what if sheetname contains exclamation mark? + $rangeSet = isset($range[1]) ? $range[1] : $range[0]; + $newRangeSets[] = str_replace('$', '', $rangeSet); + } + $docSheet->getPageSetup()->setPrintArea(implode(',',$newRangeSets)); + break; + + default: + break; + } + } + } + } + + // Next sheet id + ++$sheetId; + } + + // Loop through definedNames + if ($xmlWorkbook->definedNames) { + foreach ($xmlWorkbook->definedNames->definedName as $definedName) { + // Extract range + $extractedRange = (string)$definedName; + $extractedRange = preg_replace('/\'(\w+)\'\!/', '', $extractedRange); + if (($spos = strpos($extractedRange,'!')) !== false) { + $extractedRange = substr($extractedRange,0,$spos).str_replace('$', '', substr($extractedRange,$spos)); + } else { + $extractedRange = str_replace('$', '', $extractedRange); + } + + // Valid range? + if (stripos((string)$definedName, '#REF!') !== false || $extractedRange == '') { + continue; + } + + // Some definedNames are only applicable if we are on the same sheet... + if ((string)$definedName['localSheetId'] != '') { + // Local defined name + // Switch on type + switch ((string)$definedName['name']) { + + case '_xlnm._FilterDatabase': + case '_xlnm.Print_Titles': + case '_xlnm.Print_Area': + break; + + default: + $range = explode('!', (string)$definedName); + if (count($range) == 2) { + $range[0] = str_replace("''", "'", $range[0]); + $range[0] = str_replace("'", "", $range[0]); + if ($worksheet = $docSheet->getParent()->getSheetByName($range[0])) { + $extractedRange = str_replace('$', '', $range[1]); + $scope = $docSheet->getParent()->getSheet((string)$definedName['localSheetId']); + + $excel->addNamedRange( new PHPExcel_NamedRange((string)$definedName['name'], $worksheet, $extractedRange, true, $scope) ); + } + } + break; + } + } else if (!isset($definedName['localSheetId'])) { + // "Global" definedNames + $locatedSheet = null; + $extractedSheetName = ''; + if (strpos( (string)$definedName, '!' ) !== false) { + // Extract sheet name + $extractedSheetName = PHPExcel_Worksheet::extractSheetTitle( (string)$definedName, true ); + $extractedSheetName = $extractedSheetName[0]; + + // Locate sheet + $locatedSheet = $excel->getSheetByName($extractedSheetName); + + // Modify range + $range = explode('!', $extractedRange); + $extractedRange = isset($range[1]) ? $range[1] : $range[0]; + } + + if ($locatedSheet !== NULL) { + $excel->addNamedRange( new PHPExcel_NamedRange((string)$definedName['name'], $locatedSheet, $extractedRange, false) ); + } + } + } + } + } + + if (!$this->_readDataOnly) { + // active sheet index + $activeTab = intval($xmlWorkbook->bookViews->workbookView["activeTab"]); // refers to old sheet index + + // keep active sheet index if sheet is still loaded, else first sheet is set as the active + if (isset($mapSheetId[$activeTab]) && $mapSheetId[$activeTab] !== null) { + $excel->setActiveSheetIndex($mapSheetId[$activeTab]); + } else { + if ($excel->getSheetCount() == 0) { + $excel->createSheet(); + } + $excel->setActiveSheetIndex(0); + } + } + break; + } + + } + + + if (!$this->_readDataOnly) { + $contentTypes = simplexml_load_string($this->_getFromZipArchive($zip, "[Content_Types].xml")); + foreach ($contentTypes->Override as $contentType) { + switch ($contentType["ContentType"]) { + case "application/vnd.openxmlformats-officedocument.drawingml.chart+xml": + if ($this->_includeCharts) { + $chartEntryRef = ltrim($contentType['PartName'],'/'); + $chartElements = simplexml_load_string($this->_getFromZipArchive($zip, $chartEntryRef)); + $objChart = PHPExcel_Reader_Excel2007_Chart::readChart($chartElements,basename($chartEntryRef,'.xml')); + +// echo 'Chart ',$chartEntryRef,'<br />'; +// var_dump($charts[$chartEntryRef]); +// + if (isset($charts[$chartEntryRef])) { + $chartPositionRef = $charts[$chartEntryRef]['sheet'].'!'.$charts[$chartEntryRef]['id']; +// echo 'Position Ref ',$chartPositionRef,'<br />'; + if (isset($chartDetails[$chartPositionRef])) { +// var_dump($chartDetails[$chartPositionRef]); + + $excel->getSheetByName($charts[$chartEntryRef]['sheet'])->addChart($objChart); + $objChart->setWorksheet($excel->getSheetByName($charts[$chartEntryRef]['sheet'])); + $objChart->setTopLeftPosition( $chartDetails[$chartPositionRef]['fromCoordinate'], + $chartDetails[$chartPositionRef]['fromOffsetX'], + $chartDetails[$chartPositionRef]['fromOffsetY'] + ); + $objChart->setBottomRightPosition( $chartDetails[$chartPositionRef]['toCoordinate'], + $chartDetails[$chartPositionRef]['toOffsetX'], + $chartDetails[$chartPositionRef]['toOffsetY'] + ); + } + } + } + } + } + } + + $zip->close(); + + return $excel; + } + + + private static function _readColor($color, $background=FALSE) { + if (isset($color["rgb"])) { + return (string)$color["rgb"]; + } else if (isset($color["indexed"])) { + return PHPExcel_Style_Color::indexedColor($color["indexed"]-7,$background)->getARGB(); + } else if (isset($color["theme"])) { + if (self::$_theme !== NULL) { + $returnColour = self::$_theme->getColourByIndex((int)$color["theme"]); + if (isset($color["tint"])) { + $tintAdjust = (float) $color["tint"]; + $returnColour = PHPExcel_Style_Color::changeBrightness($returnColour, $tintAdjust); + } + return 'FF'.$returnColour; + } + } + + if ($background) { + return 'FFFFFFFF'; + } + return 'FF000000'; + } + + + private static function _readStyle($docStyle, $style) { + // format code +// if (isset($style->numFmt)) { +// if (isset($style->numFmt['formatCode'])) { +// $docStyle->getNumberFormat()->setFormatCode((string) $style->numFmt['formatCode']); +// } else { + $docStyle->getNumberFormat()->setFormatCode($style->numFmt); +// } +// } + + // font + if (isset($style->font)) { + $docStyle->getFont()->setName((string) $style->font->name["val"]); + $docStyle->getFont()->setSize((string) $style->font->sz["val"]); + if (isset($style->font->b)) { + $docStyle->getFont()->setBold(!isset($style->font->b["val"]) || $style->font->b["val"] == 'true' || $style->font->b["val"] == '1'); + } + if (isset($style->font->i)) { + $docStyle->getFont()->setItalic(!isset($style->font->i["val"]) || $style->font->i["val"] == 'true' || $style->font->i["val"] == '1'); + } + if (isset($style->font->strike)) { + $docStyle->getFont()->setStrikethrough(!isset($style->font->strike["val"]) || $style->font->strike["val"] == 'true' || $style->font->strike["val"] == '1'); + } + $docStyle->getFont()->getColor()->setARGB(self::_readColor($style->font->color)); + + if (isset($style->font->u) && !isset($style->font->u["val"])) { + $docStyle->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); + } else if (isset($style->font->u) && isset($style->font->u["val"])) { + $docStyle->getFont()->setUnderline((string)$style->font->u["val"]); + } + + if (isset($style->font->vertAlign) && isset($style->font->vertAlign["val"])) { + $vertAlign = strtolower((string)$style->font->vertAlign["val"]); + if ($vertAlign == 'superscript') { + $docStyle->getFont()->setSuperScript(true); + } + if ($vertAlign == 'subscript') { + $docStyle->getFont()->setSubScript(true); + } + } + } + + // fill + if (isset($style->fill)) { + if ($style->fill->gradientFill) { + $gradientFill = $style->fill->gradientFill[0]; + if(!empty($gradientFill["type"])) { + $docStyle->getFill()->setFillType((string) $gradientFill["type"]); + } + $docStyle->getFill()->setRotation(floatval($gradientFill["degree"])); + $gradientFill->registerXPathNamespace("sml", "http://schemas.openxmlformats.org/spreadsheetml/2006/main"); + $docStyle->getFill()->getStartColor()->setARGB(self::_readColor( self::array_item($gradientFill->xpath("sml:stop[@position=0]"))->color) ); + $docStyle->getFill()->getEndColor()->setARGB(self::_readColor( self::array_item($gradientFill->xpath("sml:stop[@position=1]"))->color) ); + } elseif ($style->fill->patternFill) { + $patternType = (string)$style->fill->patternFill["patternType"] != '' ? (string)$style->fill->patternFill["patternType"] : 'solid'; + $docStyle->getFill()->setFillType($patternType); + if ($style->fill->patternFill->fgColor) { + $docStyle->getFill()->getStartColor()->setARGB(self::_readColor($style->fill->patternFill->fgColor,true)); + } else { + $docStyle->getFill()->getStartColor()->setARGB('FF000000'); + } + if ($style->fill->patternFill->bgColor) { + $docStyle->getFill()->getEndColor()->setARGB(self::_readColor($style->fill->patternFill->bgColor,true)); + } + } + } + + // border + if (isset($style->border)) { + $diagonalUp = false; + $diagonalDown = false; + if ($style->border["diagonalUp"] == 'true' || $style->border["diagonalUp"] == 1) { + $diagonalUp = true; + } + if ($style->border["diagonalDown"] == 'true' || $style->border["diagonalDown"] == 1) { + $diagonalDown = true; + } + if ($diagonalUp == false && $diagonalDown == false) { + $docStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_NONE); + } elseif ($diagonalUp == true && $diagonalDown == false) { + $docStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_UP); + } elseif ($diagonalUp == false && $diagonalDown == true) { + $docStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_DOWN); + } elseif ($diagonalUp == true && $diagonalDown == true) { + $docStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_BOTH); + } + self::_readBorder($docStyle->getBorders()->getLeft(), $style->border->left); + self::_readBorder($docStyle->getBorders()->getRight(), $style->border->right); + self::_readBorder($docStyle->getBorders()->getTop(), $style->border->top); + self::_readBorder($docStyle->getBorders()->getBottom(), $style->border->bottom); + self::_readBorder($docStyle->getBorders()->getDiagonal(), $style->border->diagonal); + } + + // alignment + if (isset($style->alignment)) { + $docStyle->getAlignment()->setHorizontal((string) $style->alignment["horizontal"]); + $docStyle->getAlignment()->setVertical((string) $style->alignment["vertical"]); + + $textRotation = 0; + if ((int)$style->alignment["textRotation"] <= 90) { + $textRotation = (int)$style->alignment["textRotation"]; + } else if ((int)$style->alignment["textRotation"] > 90) { + $textRotation = 90 - (int)$style->alignment["textRotation"]; + } + + $docStyle->getAlignment()->setTextRotation(intval($textRotation)); + $docStyle->getAlignment()->setWrapText( (string)$style->alignment["wrapText"] == "true" || (string)$style->alignment["wrapText"] == "1" ); + $docStyle->getAlignment()->setShrinkToFit( (string)$style->alignment["shrinkToFit"] == "true" || (string)$style->alignment["shrinkToFit"] == "1" ); + $docStyle->getAlignment()->setIndent( intval((string)$style->alignment["indent"]) > 0 ? intval((string)$style->alignment["indent"]) : 0 ); + } + + // protection + if (isset($style->protection)) { + if (isset($style->protection['locked'])) { + if ((string)$style->protection['locked'] == 'true') { + $docStyle->getProtection()->setLocked(PHPExcel_Style_Protection::PROTECTION_PROTECTED); + } else { + $docStyle->getProtection()->setLocked(PHPExcel_Style_Protection::PROTECTION_UNPROTECTED); + } + } + + if (isset($style->protection['hidden'])) { + if ((string)$style->protection['hidden'] == 'true') { + $docStyle->getProtection()->setHidden(PHPExcel_Style_Protection::PROTECTION_PROTECTED); + } else { + $docStyle->getProtection()->setHidden(PHPExcel_Style_Protection::PROTECTION_UNPROTECTED); + } + } + } + } + + + private static function _readBorder($docBorder, $eleBorder) { + if (isset($eleBorder["style"])) { + $docBorder->setBorderStyle((string) $eleBorder["style"]); + } + if (isset($eleBorder->color)) { + $docBorder->getColor()->setARGB(self::_readColor($eleBorder->color)); + } + } + + + private function _parseRichText($is = null) { + $value = new PHPExcel_RichText(); + + if (isset($is->t)) { + $value->createText( PHPExcel_Shared_String::ControlCharacterOOXML2PHP( (string) $is->t ) ); + } else { + foreach ($is->r as $run) { + if (!isset($run->rPr)) { + $objText = $value->createText( PHPExcel_Shared_String::ControlCharacterOOXML2PHP( (string) $run->t ) ); + + } else { + $objText = $value->createTextRun( PHPExcel_Shared_String::ControlCharacterOOXML2PHP( (string) $run->t ) ); + + if (isset($run->rPr->rFont["val"])) { + $objText->getFont()->setName((string) $run->rPr->rFont["val"]); + } + + if (isset($run->rPr->sz["val"])) { + $objText->getFont()->setSize((string) $run->rPr->sz["val"]); + } + + if (isset($run->rPr->color)) { + $objText->getFont()->setColor( new PHPExcel_Style_Color( self::_readColor($run->rPr->color) ) ); + } + + if ( (isset($run->rPr->b["val"]) && ((string) $run->rPr->b["val"] == 'true' || (string) $run->rPr->b["val"] == '1')) + || (isset($run->rPr->b) && !isset($run->rPr->b["val"])) ) { + $objText->getFont()->setBold(true); + } + + if ( (isset($run->rPr->i["val"]) && ((string) $run->rPr->i["val"] == 'true' || (string) $run->rPr->i["val"] == '1')) + || (isset($run->rPr->i) && !isset($run->rPr->i["val"])) ) { + $objText->getFont()->setItalic(true); + } + + if (isset($run->rPr->vertAlign) && isset($run->rPr->vertAlign["val"])) { + $vertAlign = strtolower((string)$run->rPr->vertAlign["val"]); + if ($vertAlign == 'superscript') { + $objText->getFont()->setSuperScript(true); + } + if ($vertAlign == 'subscript') { + $objText->getFont()->setSubScript(true); + } + } + + if (isset($run->rPr->u) && !isset($run->rPr->u["val"])) { + $objText->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); + } else if (isset($run->rPr->u) && isset($run->rPr->u["val"])) { + $objText->getFont()->setUnderline((string)$run->rPr->u["val"]); + } + + if ( (isset($run->rPr->strike["val"]) && ((string) $run->rPr->strike["val"] == 'true' || (string) $run->rPr->strike["val"] == '1')) + || (isset($run->rPr->strike) && !isset($run->rPr->strike["val"])) ) { + $objText->getFont()->setStrikethrough(true); + } + } + } + } + + return $value; + } + + + private static function array_item($array, $key = 0) { + return (isset($array[$key]) ? $array[$key] : null); + } + + + private static function dir_add($base, $add) { + return preg_replace('~[^/]+/\.\./~', '', dirname($base) . "/$add"); + } + + + private static function toCSSArray($style) { + $style = str_replace(array("\r","\n"), "", $style); + + $temp = explode(';', $style); + $style = array(); + foreach ($temp as $item) { + $item = explode(':', $item); + + if (strpos($item[1], 'px') !== false) { + $item[1] = str_replace('px', '', $item[1]); + } + if (strpos($item[1], 'pt') !== false) { + $item[1] = str_replace('pt', '', $item[1]); + $item[1] = PHPExcel_Shared_Font::fontSizeToPixels($item[1]); + } + if (strpos($item[1], 'in') !== false) { + $item[1] = str_replace('in', '', $item[1]); + $item[1] = PHPExcel_Shared_Font::inchSizeToPixels($item[1]); + } + if (strpos($item[1], 'cm') !== false) { + $item[1] = str_replace('cm', '', $item[1]); + $item[1] = PHPExcel_Shared_Font::centimeterSizeToPixels($item[1]); + } + + $style[$item[0]] = $item[1]; + } + + return $style; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007/Chart.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007/Chart.php new file mode 100644 index 0000000..f4d38bd --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007/Chart.php @@ -0,0 +1,513 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Reader_Excel2007_Chart + * + * @category PHPExcel + * @package PHPExcel_Reader_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_Excel2007_Chart +{ + private static function _getAttribute($component, $name, $format) { + $attributes = $component->attributes(); + if (isset($attributes[$name])) { + if ($format == 'string') { + return (string) $attributes[$name]; + } elseif ($format == 'integer') { + return (integer) $attributes[$name]; + } elseif ($format == 'boolean') { + return (boolean) ($attributes[$name] == '0') ? false : true; + } else { + return (float) $attributes[$name]; + } + } + return null; + } // function _getAttribute() + + + private static function _readColor($color,$background=false) { + if (isset($color["rgb"])) { + return (string)$color["rgb"]; + } else if (isset($color["indexed"])) { + return PHPExcel_Style_Color::indexedColor($color["indexed"]-7,$background)->getARGB(); + } + } + + + public static function readChart($chartElements,$chartName) { + $namespacesChartMeta = $chartElements->getNamespaces(true); + $chartElementsC = $chartElements->children($namespacesChartMeta['c']); + + $XaxisLabel = $YaxisLabel = $legend = $title = NULL; + $dispBlanksAs = $plotVisOnly = NULL; + + foreach($chartElementsC as $chartElementKey => $chartElement) { + switch ($chartElementKey) { + case "chart": + foreach($chartElement as $chartDetailsKey => $chartDetails) { + $chartDetailsC = $chartDetails->children($namespacesChartMeta['c']); + switch ($chartDetailsKey) { + case "plotArea": + $plotAreaLayout = $XaxisLable = $YaxisLable = null; + $plotSeries = $plotAttributes = array(); + foreach($chartDetails as $chartDetailKey => $chartDetail) { + switch ($chartDetailKey) { + case "layout": + $plotAreaLayout = self::_chartLayoutDetails($chartDetail,$namespacesChartMeta,'plotArea'); + break; + case "catAx": + if (isset($chartDetail->title)) { + $XaxisLabel = self::_chartTitle($chartDetail->title->children($namespacesChartMeta['c']),$namespacesChartMeta,'cat'); + } + break; + case "dateAx": + if (isset($chartDetail->title)) { + $XaxisLabel = self::_chartTitle($chartDetail->title->children($namespacesChartMeta['c']),$namespacesChartMeta,'cat'); + } + break; + case "valAx": + if (isset($chartDetail->title)) { + $YaxisLabel = self::_chartTitle($chartDetail->title->children($namespacesChartMeta['c']),$namespacesChartMeta,'cat'); + } + break; + case "barChart": + case "bar3DChart": + $barDirection = self::_getAttribute($chartDetail->barDir, 'val', 'string'); + $plotSer = self::_chartDataSeries($chartDetail,$namespacesChartMeta,$chartDetailKey); + $plotSer->setPlotDirection($barDirection); + $plotSeries[] = $plotSer; + $plotAttributes = self::_readChartAttributes($chartDetail); + break; + case "lineChart": + case "line3DChart": + $plotSeries[] = self::_chartDataSeries($chartDetail,$namespacesChartMeta,$chartDetailKey); + $plotAttributes = self::_readChartAttributes($chartDetail); + break; + case "areaChart": + case "area3DChart": + $plotSeries[] = self::_chartDataSeries($chartDetail,$namespacesChartMeta,$chartDetailKey); + $plotAttributes = self::_readChartAttributes($chartDetail); + break; + case "doughnutChart": + case "pieChart": + case "pie3DChart": + $explosion = isset($chartDetail->ser->explosion); + $plotSer = self::_chartDataSeries($chartDetail,$namespacesChartMeta,$chartDetailKey); + $plotSer->setPlotStyle($explosion); + $plotSeries[] = $plotSer; + $plotAttributes = self::_readChartAttributes($chartDetail); + break; + case "scatterChart": + $scatterStyle = self::_getAttribute($chartDetail->scatterStyle, 'val', 'string'); + $plotSer = self::_chartDataSeries($chartDetail,$namespacesChartMeta,$chartDetailKey); + $plotSer->setPlotStyle($scatterStyle); + $plotSeries[] = $plotSer; + $plotAttributes = self::_readChartAttributes($chartDetail); + break; + case "bubbleChart": + $bubbleScale = self::_getAttribute($chartDetail->bubbleScale, 'val', 'integer'); + $plotSer = self::_chartDataSeries($chartDetail,$namespacesChartMeta,$chartDetailKey); + $plotSer->setPlotStyle($bubbleScale); + $plotSeries[] = $plotSer; + $plotAttributes = self::_readChartAttributes($chartDetail); + break; + case "radarChart": + $radarStyle = self::_getAttribute($chartDetail->radarStyle, 'val', 'string'); + $plotSer = self::_chartDataSeries($chartDetail,$namespacesChartMeta,$chartDetailKey); + $plotSer->setPlotStyle($radarStyle); + $plotSeries[] = $plotSer; + $plotAttributes = self::_readChartAttributes($chartDetail); + break; + case "surfaceChart": + case "surface3DChart": + $wireFrame = self::_getAttribute($chartDetail->wireframe, 'val', 'boolean'); + $plotSer = self::_chartDataSeries($chartDetail,$namespacesChartMeta,$chartDetailKey); + $plotSer->setPlotStyle($wireFrame); + $plotSeries[] = $plotSer; + $plotAttributes = self::_readChartAttributes($chartDetail); + break; + case "stockChart": + $plotSeries[] = self::_chartDataSeries($chartDetail,$namespacesChartMeta,$chartDetailKey); + $plotAttributes = self::_readChartAttributes($plotAreaLayout); + break; + } + } + if ($plotAreaLayout == NULL) { + $plotAreaLayout = new PHPExcel_Chart_Layout(); + } + $plotArea = new PHPExcel_Chart_PlotArea($plotAreaLayout,$plotSeries); + self::_setChartAttributes($plotAreaLayout,$plotAttributes); + break; + case "plotVisOnly": + $plotVisOnly = self::_getAttribute($chartDetails, 'val', 'string'); + break; + case "dispBlanksAs": + $dispBlanksAs = self::_getAttribute($chartDetails, 'val', 'string'); + break; + case "title": + $title = self::_chartTitle($chartDetails,$namespacesChartMeta,'title'); + break; + case "legend": + $legendPos = 'r'; + $legendLayout = null; + $legendOverlay = false; + foreach($chartDetails as $chartDetailKey => $chartDetail) { + switch ($chartDetailKey) { + case "legendPos": + $legendPos = self::_getAttribute($chartDetail, 'val', 'string'); + break; + case "overlay": + $legendOverlay = self::_getAttribute($chartDetail, 'val', 'boolean'); + break; + case "layout": + $legendLayout = self::_chartLayoutDetails($chartDetail,$namespacesChartMeta,'legend'); + break; + } + } + $legend = new PHPExcel_Chart_Legend($legendPos, $legendLayout, $legendOverlay); + break; + } + } + } + } + $chart = new PHPExcel_Chart($chartName,$title,$legend,$plotArea,$plotVisOnly,$dispBlanksAs,$XaxisLabel,$YaxisLabel); + + return $chart; + } // function readChart() + + + private static function _chartTitle($titleDetails,$namespacesChartMeta,$type) { + $caption = array(); + $titleLayout = null; + foreach($titleDetails as $titleDetailKey => $chartDetail) { + switch ($titleDetailKey) { + case "tx": + $titleDetails = $chartDetail->rich->children($namespacesChartMeta['a']); + foreach($titleDetails as $titleKey => $titleDetail) { + switch ($titleKey) { + case "p": + $titleDetailPart = $titleDetail->children($namespacesChartMeta['a']); + $caption[] = self::_parseRichText($titleDetailPart); + } + } + break; + case "layout": + $titleLayout = self::_chartLayoutDetails($chartDetail,$namespacesChartMeta); + break; + } + } + + return new PHPExcel_Chart_Title($caption, $titleLayout); + } // function _chartTitle() + + + private static function _chartLayoutDetails($chartDetail,$namespacesChartMeta) { + if (!isset($chartDetail->manualLayout)) { + return null; + } + $details = $chartDetail->manualLayout->children($namespacesChartMeta['c']); + if (is_null($details)) { + return null; + } + $layout = array(); + foreach($details as $detailKey => $detail) { +// echo $detailKey,' => ',self::_getAttribute($detail, 'val', 'string'),PHP_EOL; + $layout[$detailKey] = self::_getAttribute($detail, 'val', 'string'); + } + return new PHPExcel_Chart_Layout($layout); + } // function _chartLayoutDetails() + + + private static function _chartDataSeries($chartDetail,$namespacesChartMeta,$plotType) { + $multiSeriesType = NULL; + $smoothLine = false; + $seriesLabel = $seriesCategory = $seriesValues = $plotOrder = array(); + + $seriesDetailSet = $chartDetail->children($namespacesChartMeta['c']); + foreach($seriesDetailSet as $seriesDetailKey => $seriesDetails) { + switch ($seriesDetailKey) { + case "grouping": + $multiSeriesType = self::_getAttribute($chartDetail->grouping, 'val', 'string'); + break; + case "ser": + $marker = NULL; + foreach($seriesDetails as $seriesKey => $seriesDetail) { + switch ($seriesKey) { + case "idx": + $seriesIndex = self::_getAttribute($seriesDetail, 'val', 'integer'); + break; + case "order": + $seriesOrder = self::_getAttribute($seriesDetail, 'val', 'integer'); + $plotOrder[$seriesIndex] = $seriesOrder; + break; + case "tx": + $seriesLabel[$seriesIndex] = self::_chartDataSeriesValueSet($seriesDetail,$namespacesChartMeta); + break; + case "marker": + $marker = self::_getAttribute($seriesDetail->symbol, 'val', 'string'); + break; + case "smooth": + $smoothLine = self::_getAttribute($seriesDetail, 'val', 'boolean'); + break; + case "cat": + $seriesCategory[$seriesIndex] = self::_chartDataSeriesValueSet($seriesDetail,$namespacesChartMeta); + break; + case "val": + $seriesValues[$seriesIndex] = self::_chartDataSeriesValueSet($seriesDetail,$namespacesChartMeta,$marker); + break; + case "xVal": + $seriesCategory[$seriesIndex] = self::_chartDataSeriesValueSet($seriesDetail,$namespacesChartMeta,$marker); + break; + case "yVal": + $seriesValues[$seriesIndex] = self::_chartDataSeriesValueSet($seriesDetail,$namespacesChartMeta,$marker); + break; + } + } + } + } + return new PHPExcel_Chart_DataSeries($plotType,$multiSeriesType,$plotOrder,$seriesLabel,$seriesCategory,$seriesValues,$smoothLine); + } // function _chartDataSeries() + + + private static function _chartDataSeriesValueSet($seriesDetail, $namespacesChartMeta, $marker = null, $smoothLine = false) { + if (isset($seriesDetail->strRef)) { + $seriesSource = (string) $seriesDetail->strRef->f; + $seriesData = self::_chartDataSeriesValues($seriesDetail->strRef->strCache->children($namespacesChartMeta['c']),'s'); + + return new PHPExcel_Chart_DataSeriesValues('String',$seriesSource,$seriesData['formatCode'],$seriesData['pointCount'],$seriesData['dataValues'],$marker,$smoothLine); + } elseif (isset($seriesDetail->numRef)) { + $seriesSource = (string) $seriesDetail->numRef->f; + $seriesData = self::_chartDataSeriesValues($seriesDetail->numRef->numCache->children($namespacesChartMeta['c'])); + + return new PHPExcel_Chart_DataSeriesValues('Number',$seriesSource,$seriesData['formatCode'],$seriesData['pointCount'],$seriesData['dataValues'],$marker,$smoothLine); + } elseif (isset($seriesDetail->multiLvlStrRef)) { + $seriesSource = (string) $seriesDetail->multiLvlStrRef->f; + $seriesData = self::_chartDataSeriesValuesMultiLevel($seriesDetail->multiLvlStrRef->multiLvlStrCache->children($namespacesChartMeta['c']),'s'); + $seriesData['pointCount'] = count($seriesData['dataValues']); + + return new PHPExcel_Chart_DataSeriesValues('String',$seriesSource,$seriesData['formatCode'],$seriesData['pointCount'],$seriesData['dataValues'],$marker,$smoothLine); + } elseif (isset($seriesDetail->multiLvlNumRef)) { + $seriesSource = (string) $seriesDetail->multiLvlNumRef->f; + $seriesData = self::_chartDataSeriesValuesMultiLevel($seriesDetail->multiLvlNumRef->multiLvlNumCache->children($namespacesChartMeta['c']),'s'); + $seriesData['pointCount'] = count($seriesData['dataValues']); + + return new PHPExcel_Chart_DataSeriesValues('String',$seriesSource,$seriesData['formatCode'],$seriesData['pointCount'],$seriesData['dataValues'],$marker,$smoothLine); + } + return null; + } // function _chartDataSeriesValueSet() + + + private static function _chartDataSeriesValues($seriesValueSet,$dataType='n') { + $seriesVal = array(); + $formatCode = ''; + $pointCount = 0; + + foreach($seriesValueSet as $seriesValueIdx => $seriesValue) { + switch ($seriesValueIdx) { + case 'ptCount': + $pointCount = self::_getAttribute($seriesValue, 'val', 'integer'); + break; + case 'formatCode': + $formatCode = (string) $seriesValue; + break; + case 'pt': + $pointVal = self::_getAttribute($seriesValue, 'idx', 'integer'); + if ($dataType == 's') { + $seriesVal[$pointVal] = (string) $seriesValue->v; + } else { + $seriesVal[$pointVal] = (float) $seriesValue->v; + } + break; + } + } + + return array( 'formatCode' => $formatCode, + 'pointCount' => $pointCount, + 'dataValues' => $seriesVal + ); + } // function _chartDataSeriesValues() + + + private static function _chartDataSeriesValuesMultiLevel($seriesValueSet,$dataType='n') { + $seriesVal = array(); + $formatCode = ''; + $pointCount = 0; + + foreach($seriesValueSet->lvl as $seriesLevelIdx => $seriesLevel) { + foreach($seriesLevel as $seriesValueIdx => $seriesValue) { + switch ($seriesValueIdx) { + case 'ptCount': + $pointCount = self::_getAttribute($seriesValue, 'val', 'integer'); + break; + case 'formatCode': + $formatCode = (string) $seriesValue; + break; + case 'pt': + $pointVal = self::_getAttribute($seriesValue, 'idx', 'integer'); + if ($dataType == 's') { + $seriesVal[$pointVal][] = (string) $seriesValue->v; + } else { + $seriesVal[$pointVal][] = (float) $seriesValue->v; + } + break; + } + } + } + + return array( 'formatCode' => $formatCode, + 'pointCount' => $pointCount, + 'dataValues' => $seriesVal + ); + } // function _chartDataSeriesValuesMultiLevel() + + private static function _parseRichText($titleDetailPart = null) { + $value = new PHPExcel_RichText(); + + foreach($titleDetailPart as $titleDetailElementKey => $titleDetailElement) { + if (isset($titleDetailElement->t)) { + $objText = $value->createTextRun( (string) $titleDetailElement->t ); + } + if (isset($titleDetailElement->rPr)) { + if (isset($titleDetailElement->rPr->rFont["val"])) { + $objText->getFont()->setName((string) $titleDetailElement->rPr->rFont["val"]); + } + + $fontSize = (self::_getAttribute($titleDetailElement->rPr, 'sz', 'integer')); + if (!is_null($fontSize)) { + $objText->getFont()->setSize(floor($fontSize / 100)); + } + + $fontColor = (self::_getAttribute($titleDetailElement->rPr, 'color', 'string')); + if (!is_null($fontColor)) { + $objText->getFont()->setColor( new PHPExcel_Style_Color( self::_readColor($fontColor) ) ); + } + + $bold = self::_getAttribute($titleDetailElement->rPr, 'b', 'boolean'); + if (!is_null($bold)) { + $objText->getFont()->setBold($bold); + } + + $italic = self::_getAttribute($titleDetailElement->rPr, 'i', 'boolean'); + if (!is_null($italic)) { + $objText->getFont()->setItalic($italic); + } + + $baseline = self::_getAttribute($titleDetailElement->rPr, 'baseline', 'integer'); + if (!is_null($baseline)) { + if ($baseline > 0) { + $objText->getFont()->setSuperScript(true); + } elseif($baseline < 0) { + $objText->getFont()->setSubScript(true); + } + } + + $underscore = (self::_getAttribute($titleDetailElement->rPr, 'u', 'string')); + if (!is_null($underscore)) { + if ($underscore == 'sng') { + $objText->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); + } elseif($underscore == 'dbl') { + $objText->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_DOUBLE); + } else { + $objText->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_NONE); + } + } + + $strikethrough = (self::_getAttribute($titleDetailElement->rPr, 's', 'string')); + if (!is_null($strikethrough)) { + if ($strikethrough == 'noStrike') { + $objText->getFont()->setStrikethrough(false); + } else { + $objText->getFont()->setStrikethrough(true); + } + } + } + } + + return $value; + } + + private static function _readChartAttributes($chartDetail) { + $plotAttributes = array(); + if (isset($chartDetail->dLbls)) { + if (isset($chartDetail->dLbls->howLegendKey)) { + $plotAttributes['showLegendKey'] = self::_getAttribute($chartDetail->dLbls->showLegendKey, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showVal)) { + $plotAttributes['showVal'] = self::_getAttribute($chartDetail->dLbls->showVal, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showCatName)) { + $plotAttributes['showCatName'] = self::_getAttribute($chartDetail->dLbls->showCatName, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showSerName)) { + $plotAttributes['showSerName'] = self::_getAttribute($chartDetail->dLbls->showSerName, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showPercent)) { + $plotAttributes['showPercent'] = self::_getAttribute($chartDetail->dLbls->showPercent, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showBubbleSize)) { + $plotAttributes['showBubbleSize'] = self::_getAttribute($chartDetail->dLbls->showBubbleSize, 'val', 'string'); + } + if (isset($chartDetail->dLbls->showLeaderLines)) { + $plotAttributes['showLeaderLines'] = self::_getAttribute($chartDetail->dLbls->showLeaderLines, 'val', 'string'); + } + } + + return $plotAttributes; + } + + private static function _setChartAttributes($plotArea,$plotAttributes) + { + foreach($plotAttributes as $plotAttributeKey => $plotAttributeValue) { + switch($plotAttributeKey) { + case 'showLegendKey' : + $plotArea->setShowLegendKey($plotAttributeValue); + break; + case 'showVal' : + $plotArea->setShowVal($plotAttributeValue); + break; + case 'showCatName' : + $plotArea->setShowCatName($plotAttributeValue); + break; + case 'showSerName' : + $plotArea->setShowSerName($plotAttributeValue); + break; + case 'showPercent' : + $plotArea->setShowPercent($plotAttributeValue); + break; + case 'showBubbleSize' : + $plotArea->setShowBubbleSize($plotAttributeValue); + break; + case 'showLeaderLines' : + $plotArea->setShowLeaderLines($plotAttributeValue); + break; + } + } + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007/Theme.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007/Theme.php new file mode 100644 index 0000000..6b38fa7 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007/Theme.php @@ -0,0 +1,124 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Reader_Excel2007_Theme + * + * @category PHPExcel + * @package PHPExcel_Reader_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_Excel2007_Theme +{ + /** + * Theme Name + * + * @var string + */ + private $_themeName; + + /** + * Colour Scheme Name + * + * @var string + */ + private $_colourSchemeName; + + /** + * Colour Map indexed by position + * + * @var array of string + */ + private $_colourMapValues; + + + /** + * Colour Map + * + * @var array of string + */ + private $_colourMap; + + + /** + * Create a new PHPExcel_Theme + * + */ + public function __construct($themeName,$colourSchemeName,$colourMap) + { + // Initialise values + $this->_themeName = $themeName; + $this->_colourSchemeName = $colourSchemeName; + $this->_colourMap = $colourMap; + } + + /** + * Get Theme Name + * + * @return string + */ + public function getThemeName() + { + return $this->_themeName; + } + + /** + * Get colour Scheme Name + * + * @return string + */ + public function getColourSchemeName() { + return $this->_colourSchemeName; + } + + /** + * Get colour Map Value by Position + * + * @return string + */ + public function getColourByIndex($index=0) { + if (isset($this->_colourMap[$index])) { + return $this->_colourMap[$index]; + } + return null; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007/_notes/dwsync.xml new file mode 100644 index 0000000..0d293f3 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel2007/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Chart.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Theme.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Chart.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="Theme.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="Chart.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098600000000" Dst="-1" /> +<file name="Theme.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098600000000" Dst="-1" /> +<file name="Chart.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559998314363" remote="131260196400000000" Dst="1" /> +<file name="Theme.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559998789627" remote="131260196400000000" Dst="1" /> +<file name="Chart.php" server="62.244.88.21/amashow/" local="131414752294408553" remote="131414680800000000" Dst="2" /> +<file name="Theme.php" server="62.244.88.21/amashow/" local="131414752294612016" remote="131414680800000000" Dst="2" /> +<file name="Theme.php" server="62.244.88.21/deciday/" local="131919461263206856" remote="131826017400000000" Dst="1" /> +<file name="Chart.php" server="62.244.88.21/deciday/" local="131919461264112117" remote="131826017400000000" Dst="1" /> +<file name="Chart.php" server="62.244.88.21/deciday_18/" local="131414752294408553" remote="131825945400000000" Dst="2" /> +<file name="Theme.php" server="62.244.88.21/deciday_18/" local="131414752294612016" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel5.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel5.php new file mode 100644 index 0000000..5356542 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel5.php @@ -0,0 +1,6890 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +// Original file header of ParseXL (used as the base for this class): +// -------------------------------------------------------------------------------- +// Adapted from Excel_Spreadsheet_Reader developed by users bizon153, +// trex005, and mmp11 (SourceForge.net) +// http://sourceforge.net/projects/phpexcelreader/ +// Primary changes made by canyoncasa (dvc) for ParseXL 1.00 ... +// Modelled moreso after Perl Excel Parse/Write modules +// Added Parse_Excel_Spreadsheet object +// Reads a whole worksheet or tab as row,column array or as +// associated hash of indexed rows and named column fields +// Added variables for worksheet (tab) indexes and names +// Added an object call for loading individual woorksheets +// Changed default indexing defaults to 0 based arrays +// Fixed date/time and percent formats +// Includes patches found at SourceForge... +// unicode patch by nobody +// unpack("d") machine depedency patch by matchy +// boundsheet utf16 patch by bjaenichen +// Renamed functions for shorter names +// General code cleanup and rigor, including <80 column width +// Included a testcase Excel file and PHP example calls +// Code works for PHP 5.x + +// Primary changes made by canyoncasa (dvc) for ParseXL 1.10 ... +// http://sourceforge.net/tracker/index.php?func=detail&aid=1466964&group_id=99160&atid=623334 +// Decoding of formula conditions, results, and tokens. +// Support for user-defined named cells added as an array "namedcells" +// Patch code for user-defined named cells supports single cells only. +// NOTE: this patch only works for BIFF8 as BIFF5-7 use a different +// external sheet reference structure + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_Excel5 + * + * This class uses {@link http://sourceforge.net/projects/phpexcelreader/parseXL} + * + * @category PHPExcel + * @package PHPExcel_Reader_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_Excel5 implements PHPExcel_Reader_IReader +{ + // ParseXL definitions + const XLS_BIFF8 = 0x0600; + const XLS_BIFF7 = 0x0500; + const XLS_WorkbookGlobals = 0x0005; + const XLS_Worksheet = 0x0010; + + // record identifiers + const XLS_Type_FORMULA = 0x0006; + const XLS_Type_EOF = 0x000a; + const XLS_Type_PROTECT = 0x0012; + const XLS_Type_OBJECTPROTECT = 0x0063; + const XLS_Type_SCENPROTECT = 0x00dd; + const XLS_Type_PASSWORD = 0x0013; + const XLS_Type_HEADER = 0x0014; + const XLS_Type_FOOTER = 0x0015; + const XLS_Type_EXTERNSHEET = 0x0017; + const XLS_Type_DEFINEDNAME = 0x0018; + const XLS_Type_VERTICALPAGEBREAKS = 0x001a; + const XLS_Type_HORIZONTALPAGEBREAKS = 0x001b; + const XLS_Type_NOTE = 0x001c; + const XLS_Type_SELECTION = 0x001d; + const XLS_Type_DATEMODE = 0x0022; + const XLS_Type_EXTERNNAME = 0x0023; + const XLS_Type_LEFTMARGIN = 0x0026; + const XLS_Type_RIGHTMARGIN = 0x0027; + const XLS_Type_TOPMARGIN = 0x0028; + const XLS_Type_BOTTOMMARGIN = 0x0029; + const XLS_Type_PRINTGRIDLINES = 0x002b; + const XLS_Type_FILEPASS = 0x002f; + const XLS_Type_FONT = 0x0031; + const XLS_Type_CONTINUE = 0x003c; + const XLS_Type_PANE = 0x0041; + const XLS_Type_CODEPAGE = 0x0042; + const XLS_Type_DEFCOLWIDTH = 0x0055; + const XLS_Type_OBJ = 0x005d; + const XLS_Type_COLINFO = 0x007d; + const XLS_Type_IMDATA = 0x007f; + const XLS_Type_SHEETPR = 0x0081; + const XLS_Type_HCENTER = 0x0083; + const XLS_Type_VCENTER = 0x0084; + const XLS_Type_SHEET = 0x0085; + const XLS_Type_PALETTE = 0x0092; + const XLS_Type_SCL = 0x00a0; + const XLS_Type_PAGESETUP = 0x00a1; + const XLS_Type_MULRK = 0x00bd; + const XLS_Type_MULBLANK = 0x00be; + const XLS_Type_DBCELL = 0x00d7; + const XLS_Type_XF = 0x00e0; + const XLS_Type_MERGEDCELLS = 0x00e5; + const XLS_Type_MSODRAWINGGROUP = 0x00eb; + const XLS_Type_MSODRAWING = 0x00ec; + const XLS_Type_SST = 0x00fc; + const XLS_Type_LABELSST = 0x00fd; + const XLS_Type_EXTSST = 0x00ff; + const XLS_Type_EXTERNALBOOK = 0x01ae; + const XLS_Type_DATAVALIDATIONS = 0x01b2; + const XLS_Type_TXO = 0x01b6; + const XLS_Type_HYPERLINK = 0x01b8; + const XLS_Type_DATAVALIDATION = 0x01be; + const XLS_Type_DIMENSION = 0x0200; + const XLS_Type_BLANK = 0x0201; + const XLS_Type_NUMBER = 0x0203; + const XLS_Type_LABEL = 0x0204; + const XLS_Type_BOOLERR = 0x0205; + const XLS_Type_STRING = 0x0207; + const XLS_Type_ROW = 0x0208; + const XLS_Type_INDEX = 0x020b; + const XLS_Type_ARRAY = 0x0221; + const XLS_Type_DEFAULTROWHEIGHT = 0x0225; + const XLS_Type_WINDOW2 = 0x023e; + const XLS_Type_RK = 0x027e; + const XLS_Type_STYLE = 0x0293; + const XLS_Type_FORMAT = 0x041e; + const XLS_Type_SHAREDFMLA = 0x04bc; + const XLS_Type_BOF = 0x0809; + const XLS_Type_SHEETPROTECTION = 0x0867; + const XLS_Type_RANGEPROTECTION = 0x0868; + const XLS_Type_SHEETLAYOUT = 0x0862; + const XLS_Type_XFEXT = 0x087d; + const XLS_Type_UNKNOWN = 0xffff; + + + /** + * Read data only? + * Identifies whether the Reader should only read data values for cells, and ignore any formatting information; + * or whether it should read both data and formatting + * + * @var boolean + */ + private $_readDataOnly = false; + + /** + * Restrict which sheets should be loaded? + * This property holds an array of worksheet names to be loaded. If null, then all worksheets will be loaded. + * + * @var array of string + */ + private $_loadSheetsOnly = null; + + /** + * PHPExcel_Reader_IReadFilter instance + * + * @var PHPExcel_Reader_IReadFilter + */ + private $_readFilter = null; + + /** + * Summary Information stream data. + * + * @var string + */ + private $_summaryInformation; + + /** + * Extended Summary Information stream data. + * + * @var string + */ + private $_documentSummaryInformation; + + /** + * User-Defined Properties stream data. + * + * @var string + */ + private $_userDefinedProperties; + + /** + * Workbook stream data. (Includes workbook globals substream as well as sheet substreams) + * + * @var string + */ + private $_data; + + /** + * Size in bytes of $this->_data + * + * @var int + */ + private $_dataSize; + + /** + * Current position in stream + * + * @var integer + */ + private $_pos; + + /** + * Workbook to be returned by the reader. + * + * @var PHPExcel + */ + private $_phpExcel; + + /** + * Worksheet that is currently being built by the reader. + * + * @var PHPExcel_Worksheet + */ + private $_phpSheet; + + /** + * BIFF version + * + * @var int + */ + private $_version; + + /** + * Codepage set in the Excel file being read. Only important for BIFF5 (Excel 5.0 - Excel 95) + * For BIFF8 (Excel 97 - Excel 2003) this will always have the value 'UTF-16LE' + * + * @var string + */ + private $_codepage; + + /** + * Shared formats + * + * @var array + */ + private $_formats; + + /** + * Shared fonts + * + * @var array + */ + private $_objFonts; + + /** + * Color palette + * + * @var array + */ + private $_palette; + + /** + * Worksheets + * + * @var array + */ + private $_sheets; + + /** + * External books + * + * @var array + */ + private $_externalBooks; + + /** + * REF structures. Only applies to BIFF8. + * + * @var array + */ + private $_ref; + + /** + * External names + * + * @var array + */ + private $_externalNames; + + /** + * Defined names + * + * @var array + */ + private $_definedname; + + /** + * Shared strings. Only applies to BIFF8. + * + * @var array + */ + private $_sst; + + /** + * Panes are frozen? (in sheet currently being read). See WINDOW2 record. + * + * @var boolean + */ + private $_frozen; + + /** + * Fit printout to number of pages? (in sheet currently being read). See SHEETPR record. + * + * @var boolean + */ + private $_isFitToPages; + + /** + * Objects. One OBJ record contributes with one entry. + * + * @var array + */ + private $_objs; + + /** + * Text Objects. One TXO record corresponds with one entry. + * + * @var array + */ + private $_textObjects; + + /** + * Cell Annotations (BIFF8) + * + * @var array + */ + private $_cellNotes; + + /** + * The combined MSODRAWINGGROUP data + * + * @var string + */ + private $_drawingGroupData; + + /** + * The combined MSODRAWING data (per sheet) + * + * @var string + */ + private $_drawingData; + + /** + * Keep track of XF index + * + * @var int + */ + private $_xfIndex; + + /** + * Mapping of XF index (that is a cell XF) to final index in cellXf collection + * + * @var array + */ + private $_mapCellXfIndex; + + /** + * Mapping of XF index (that is a style XF) to final index in cellStyleXf collection + * + * @var array + */ + private $_mapCellStyleXfIndex; + + /** + * The shared formulas in a sheet. One SHAREDFMLA record contributes with one value. + * + * @var array + */ + private $_sharedFormulas; + + /** + * The shared formula parts in a sheet. One FORMULA record contributes with one value if it + * refers to a shared formula. + * + * @var array + */ + private $_sharedFormulaParts; + + + /** + * Create a new PHPExcel_Reader_Excel5 instance + */ + public function __construct() { + $this->_readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } + + + /** + * Read data only? + * If this is true, then the Reader will only read data values for cells, it will not read any formatting information. + * If false (the default) it will read data and formatting. + * + * @return boolean + */ + public function getReadDataOnly() + { + return $this->_readDataOnly; + } + + + /** + * Set read data only + * Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information. + * Set to false (the default) to advise the Reader to read both data and formatting for cells. + * + * @param boolean $pValue + * + * @return PHPExcel_Reader_Excel5 + */ + public function setReadDataOnly($pValue = false) + { + $this->_readDataOnly = $pValue; + return $this; + } + + + /** + * Get which sheets to load + * Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null + * indicating that all worksheets in the workbook should be loaded. + * + * @return mixed + */ + public function getLoadSheetsOnly() + { + return $this->_loadSheetsOnly; + } + + + /** + * Set which sheets to load + * + * @param mixed $value + * This should be either an array of worksheet names to be loaded, or a string containing a single worksheet name. + * If NULL, then it tells the Reader to read all worksheets in the workbook + * + * @return PHPExcel_Reader_Excel5 + */ + public function setLoadSheetsOnly($value = null) + { + $this->_loadSheetsOnly = is_array($value) ? + $value : array($value); + return $this; + } + + + /** + * Set all sheets to load + * Tells the Reader to load all worksheets from the workbook. + * + * @return PHPExcel_Reader_Excel5 + */ + public function setLoadAllSheets() + { + $this->_loadSheetsOnly = null; + return $this; + } + + + /** + * Read filter + * + * @return PHPExcel_Reader_IReadFilter + */ + public function getReadFilter() { + return $this->_readFilter; + } + + + /** + * Set read filter + * + * @param PHPExcel_Reader_IReadFilter $pValue + * @return PHPExcel_Reader_Excel5 + */ + public function setReadFilter(PHPExcel_Reader_IReadFilter $pValue) { + $this->_readFilter = $pValue; + return $this; + } + + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFileName + * @return boolean + * @throws Exception + */ + public function canRead($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + try { + // Use ParseXL for the hard work. + $ole = new PHPExcel_Shared_OLERead(); + + // get excel data + $res = $ole->read($pFilename); + return true; + + } catch (Exception $e) { + return false; + } + } + + + /** + * Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object + * + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetNames($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetNames = array(); + + // Read the OLE file + $this->_loadOLE($pFilename); + + // total byte size of Excel data (workbook global substream + sheet substreams) + $this->_dataSize = strlen($this->_data); + + $this->_pos = 0; + $this->_sheets = array(); + + // Parse Workbook Global Substream + while ($this->_pos < $this->_dataSize) { + $code = self::_GetInt2d($this->_data, $this->_pos); + + switch ($code) { + case self::XLS_Type_BOF: $this->_readBof(); break; + case self::XLS_Type_SHEET: $this->_readSheet(); break; + case self::XLS_Type_EOF: $this->_readDefault(); break 2; + default: $this->_readDefault(); break; + } + } + + foreach ($this->_sheets as $sheet) { + if ($sheet['sheetType'] != 0x00) { + // 0x00: Worksheet, 0x02: Chart, 0x06: Visual Basic module + continue; + } + + $worksheetNames[] = $sheet['name']; + } + + return $worksheetNames; + } + + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetInfo = array(); + + // Read the OLE file + $this->_loadOLE($pFilename); + + // total byte size of Excel data (workbook global substream + sheet substreams) + $this->_dataSize = strlen($this->_data); + + // initialize + $this->_pos = 0; + $this->_sheets = array(); + + // Parse Workbook Global Substream + while ($this->_pos < $this->_dataSize) { + $code = self::_GetInt2d($this->_data, $this->_pos); + + switch ($code) { + case self::XLS_Type_BOF: $this->_readBof(); break; + case self::XLS_Type_SHEET: $this->_readSheet(); break; + case self::XLS_Type_EOF: $this->_readDefault(); break 2; + default: $this->_readDefault(); break; + } + } + + // Parse the individual sheets + foreach ($this->_sheets as $sheet) { + + if ($sheet['sheetType'] != 0x00) { + // 0x00: Worksheet + // 0x02: Chart + // 0x06: Visual Basic module + continue; + } + + $tmpInfo = array(); + $tmpInfo['worksheetName'] = $sheet['name']; + $tmpInfo['lastColumnLetter'] = 'A'; + $tmpInfo['lastColumnIndex'] = 0; + $tmpInfo['totalRows'] = 0; + $tmpInfo['totalColumns'] = 0; + + $this->_pos = $sheet['offset']; + + while ($this->_pos <= $this->_dataSize - 4) { + $code = self::_GetInt2d($this->_data, $this->_pos); + + switch ($code) { + case self::XLS_Type_RK: + case self::XLS_Type_LABELSST: + case self::XLS_Type_NUMBER: + case self::XLS_Type_FORMULA: + case self::XLS_Type_BOOLERR: + case self::XLS_Type_LABEL: + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + $rowIndex = self::_GetInt2d($recordData, 0) + 1; + $columnIndex = self::_GetInt2d($recordData, 2); + + $tmpInfo['totalRows'] = max($tmpInfo['totalRows'], $rowIndex); + $tmpInfo['lastColumnIndex'] = max($tmpInfo['lastColumnIndex'], $columnIndex); + break; + case self::XLS_Type_BOF: $this->_readBof(); break; + case self::XLS_Type_EOF: $this->_readDefault(); break 2; + default: $this->_readDefault(); break; + } + } + + $tmpInfo['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($tmpInfo['lastColumnIndex']); + $tmpInfo['totalColumns'] = $tmpInfo['lastColumnIndex'] + 1; + + $worksheetInfo[] = $tmpInfo; + } + + return $worksheetInfo; + } + + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws Exception + */ + public function load($pFilename) + { + // Read the OLE file + $this->_loadOLE($pFilename); + + // Initialisations + $this->_phpExcel = new PHPExcel; + $this->_phpExcel->removeSheetByIndex(0); // remove 1st sheet + if (!$this->_readDataOnly) { + $this->_phpExcel->removeCellStyleXfByIndex(0); // remove the default style + $this->_phpExcel->removeCellXfByIndex(0); // remove the default style + } + + // Read the summary information stream (containing meta data) + $this->_readSummaryInformation(); + + // Read the Additional document summary information stream (containing application-specific meta data) + $this->_readDocumentSummaryInformation(); + + // total byte size of Excel data (workbook global substream + sheet substreams) + $this->_dataSize = strlen($this->_data); + + // initialize + $this->_pos = 0; + $this->_codepage = 'CP1252'; + $this->_formats = array(); + $this->_objFonts = array(); + $this->_palette = array(); + $this->_sheets = array(); + $this->_externalBooks = array(); + $this->_ref = array(); + $this->_definedname = array(); + $this->_sst = array(); + $this->_drawingGroupData = ''; + $this->_xfIndex = ''; + $this->_mapCellXfIndex = array(); + $this->_mapCellStyleXfIndex = array(); + + // Parse Workbook Global Substream + while ($this->_pos < $this->_dataSize) { + $code = self::_GetInt2d($this->_data, $this->_pos); + + switch ($code) { + case self::XLS_Type_BOF: $this->_readBof(); break; + case self::XLS_Type_FILEPASS: $this->_readFilepass(); break; + case self::XLS_Type_CODEPAGE: $this->_readCodepage(); break; + case self::XLS_Type_DATEMODE: $this->_readDateMode(); break; + case self::XLS_Type_FONT: $this->_readFont(); break; + case self::XLS_Type_FORMAT: $this->_readFormat(); break; + case self::XLS_Type_XF: $this->_readXf(); break; + case self::XLS_Type_XFEXT: $this->_readXfExt(); break; + case self::XLS_Type_STYLE: $this->_readStyle(); break; + case self::XLS_Type_PALETTE: $this->_readPalette(); break; + case self::XLS_Type_SHEET: $this->_readSheet(); break; + case self::XLS_Type_EXTERNALBOOK: $this->_readExternalBook(); break; + case self::XLS_Type_EXTERNNAME: $this->_readExternName(); break; + case self::XLS_Type_EXTERNSHEET: $this->_readExternSheet(); break; + case self::XLS_Type_DEFINEDNAME: $this->_readDefinedName(); break; + case self::XLS_Type_MSODRAWINGGROUP: $this->_readMsoDrawingGroup(); break; + case self::XLS_Type_SST: $this->_readSst(); break; + case self::XLS_Type_EOF: $this->_readDefault(); break 2; + default: $this->_readDefault(); break; + } + } + + // Resolve indexed colors for font, fill, and border colors + // Cannot be resolved already in XF record, because PALETTE record comes afterwards + if (!$this->_readDataOnly) { + foreach ($this->_objFonts as $objFont) { + if (isset($objFont->colorIndex)) { + $color = self::_readColor($objFont->colorIndex,$this->_palette,$this->_version); + $objFont->getColor()->setRGB($color['rgb']); + } + } + + foreach ($this->_phpExcel->getCellXfCollection() as $objStyle) { + // fill start and end color + $fill = $objStyle->getFill(); + + if (isset($fill->startcolorIndex)) { + $startColor = self::_readColor($fill->startcolorIndex,$this->_palette,$this->_version); + $fill->getStartColor()->setRGB($startColor['rgb']); + } + + if (isset($fill->endcolorIndex)) { + $endColor = self::_readColor($fill->endcolorIndex,$this->_palette,$this->_version); + $fill->getEndColor()->setRGB($endColor['rgb']); + } + + // border colors + $top = $objStyle->getBorders()->getTop(); + $right = $objStyle->getBorders()->getRight(); + $bottom = $objStyle->getBorders()->getBottom(); + $left = $objStyle->getBorders()->getLeft(); + $diagonal = $objStyle->getBorders()->getDiagonal(); + + if (isset($top->colorIndex)) { + $borderTopColor = self::_readColor($top->colorIndex,$this->_palette,$this->_version); + $top->getColor()->setRGB($borderTopColor['rgb']); + } + + if (isset($right->colorIndex)) { + $borderRightColor = self::_readColor($right->colorIndex,$this->_palette,$this->_version); + $right->getColor()->setRGB($borderRightColor['rgb']); + } + + if (isset($bottom->colorIndex)) { + $borderBottomColor = self::_readColor($bottom->colorIndex,$this->_palette,$this->_version); + $bottom->getColor()->setRGB($borderBottomColor['rgb']); + } + + if (isset($left->colorIndex)) { + $borderLeftColor = self::_readColor($left->colorIndex,$this->_palette,$this->_version); + $left->getColor()->setRGB($borderLeftColor['rgb']); + } + + if (isset($diagonal->colorIndex)) { + $borderDiagonalColor = self::_readColor($diagonal->colorIndex,$this->_palette,$this->_version); + $diagonal->getColor()->setRGB($borderDiagonalColor['rgb']); + } + } + } + + // treat MSODRAWINGGROUP records, workbook-level Escher + if (!$this->_readDataOnly && $this->_drawingGroupData) { + $escherWorkbook = new PHPExcel_Shared_Escher(); + $reader = new PHPExcel_Reader_Excel5_Escher($escherWorkbook); + $escherWorkbook = $reader->load($this->_drawingGroupData); + + // debug Escher stream + //$debug = new Debug_Escher(new PHPExcel_Shared_Escher()); + //$debug->load($this->_drawingGroupData); + } + + // Parse the individual sheets + foreach ($this->_sheets as $sheet) { + + if ($sheet['sheetType'] != 0x00) { + // 0x00: Worksheet, 0x02: Chart, 0x06: Visual Basic module + continue; + } + + // check if sheet should be skipped + if (isset($this->_loadSheetsOnly) && !in_array($sheet['name'], $this->_loadSheetsOnly)) { + continue; + } + + // add sheet to PHPExcel object + $this->_phpSheet = $this->_phpExcel->createSheet(); + // Use false for $updateFormulaCellReferences to prevent adjustment of worksheet references in formula + // cells... during the load, all formulae should be correct, and we're simply bringing the worksheet + // name in line with the formula, not the reverse + $this->_phpSheet->setTitle($sheet['name'],false); + $this->_phpSheet->setSheetState($sheet['sheetState']); + + $this->_pos = $sheet['offset']; + + // Initialize isFitToPages. May change after reading SHEETPR record. + $this->_isFitToPages = false; + + // Initialize drawingData + $this->_drawingData = ''; + + // Initialize objs + $this->_objs = array(); + + // Initialize shared formula parts + $this->_sharedFormulaParts = array(); + + // Initialize shared formulas + $this->_sharedFormulas = array(); + + // Initialize text objs + $this->_textObjects = array(); + + // Initialize cell annotations + $this->_cellNotes = array(); + $this->textObjRef = -1; + + while ($this->_pos <= $this->_dataSize - 4) { + $code = self::_GetInt2d($this->_data, $this->_pos); + + switch ($code) { + case self::XLS_Type_BOF: $this->_readBof(); break; + case self::XLS_Type_PRINTGRIDLINES: $this->_readPrintGridlines(); break; + case self::XLS_Type_DEFAULTROWHEIGHT: $this->_readDefaultRowHeight(); break; + case self::XLS_Type_SHEETPR: $this->_readSheetPr(); break; + case self::XLS_Type_HORIZONTALPAGEBREAKS: $this->_readHorizontalPageBreaks(); break; + case self::XLS_Type_VERTICALPAGEBREAKS: $this->_readVerticalPageBreaks(); break; + case self::XLS_Type_HEADER: $this->_readHeader(); break; + case self::XLS_Type_FOOTER: $this->_readFooter(); break; + case self::XLS_Type_HCENTER: $this->_readHcenter(); break; + case self::XLS_Type_VCENTER: $this->_readVcenter(); break; + case self::XLS_Type_LEFTMARGIN: $this->_readLeftMargin(); break; + case self::XLS_Type_RIGHTMARGIN: $this->_readRightMargin(); break; + case self::XLS_Type_TOPMARGIN: $this->_readTopMargin(); break; + case self::XLS_Type_BOTTOMMARGIN: $this->_readBottomMargin(); break; + case self::XLS_Type_PAGESETUP: $this->_readPageSetup(); break; + case self::XLS_Type_PROTECT: $this->_readProtect(); break; + case self::XLS_Type_SCENPROTECT: $this->_readScenProtect(); break; + case self::XLS_Type_OBJECTPROTECT: $this->_readObjectProtect(); break; + case self::XLS_Type_PASSWORD: $this->_readPassword(); break; + case self::XLS_Type_DEFCOLWIDTH: $this->_readDefColWidth(); break; + case self::XLS_Type_COLINFO: $this->_readColInfo(); break; + case self::XLS_Type_DIMENSION: $this->_readDefault(); break; + case self::XLS_Type_ROW: $this->_readRow(); break; + case self::XLS_Type_DBCELL: $this->_readDefault(); break; + case self::XLS_Type_RK: $this->_readRk(); break; + case self::XLS_Type_LABELSST: $this->_readLabelSst(); break; + case self::XLS_Type_MULRK: $this->_readMulRk(); break; + case self::XLS_Type_NUMBER: $this->_readNumber(); break; + case self::XLS_Type_FORMULA: $this->_readFormula(); break; + case self::XLS_Type_SHAREDFMLA: $this->_readSharedFmla(); break; + case self::XLS_Type_BOOLERR: $this->_readBoolErr(); break; + case self::XLS_Type_MULBLANK: $this->_readMulBlank(); break; + case self::XLS_Type_LABEL: $this->_readLabel(); break; + case self::XLS_Type_BLANK: $this->_readBlank(); break; + case self::XLS_Type_MSODRAWING: $this->_readMsoDrawing(); break; + case self::XLS_Type_OBJ: $this->_readObj(); break; + case self::XLS_Type_WINDOW2: $this->_readWindow2(); break; + case self::XLS_Type_SCL: $this->_readScl(); break; + case self::XLS_Type_PANE: $this->_readPane(); break; + case self::XLS_Type_SELECTION: $this->_readSelection(); break; + case self::XLS_Type_MERGEDCELLS: $this->_readMergedCells(); break; + case self::XLS_Type_HYPERLINK: $this->_readHyperLink(); break; + case self::XLS_Type_DATAVALIDATIONS: $this->_readDataValidations(); break; + case self::XLS_Type_DATAVALIDATION: $this->_readDataValidation(); break; + case self::XLS_Type_SHEETLAYOUT: $this->_readSheetLayout(); break; + case self::XLS_Type_SHEETPROTECTION: $this->_readSheetProtection(); break; + case self::XLS_Type_RANGEPROTECTION: $this->_readRangeProtection(); break; + case self::XLS_Type_NOTE: $this->_readNote(); break; + //case self::XLS_Type_IMDATA: $this->_readImData(); break; + case self::XLS_Type_TXO: $this->_readTextObject(); break; + case self::XLS_Type_CONTINUE: $this->_readContinue(); break; + case self::XLS_Type_EOF: $this->_readDefault(); break 2; + default: $this->_readDefault(); break; + } + + } + + // treat MSODRAWING records, sheet-level Escher + if (!$this->_readDataOnly && $this->_drawingData) { + $escherWorksheet = new PHPExcel_Shared_Escher(); + $reader = new PHPExcel_Reader_Excel5_Escher($escherWorksheet); + $escherWorksheet = $reader->load($this->_drawingData); + + // debug Escher stream + //$debug = new Debug_Escher(new PHPExcel_Shared_Escher()); + //$debug->load($this->_drawingData); + + // get all spContainers in one long array, so they can be mapped to OBJ records + $allSpContainers = $escherWorksheet->getDgContainer()->getSpgrContainer()->getAllSpContainers(); + } + + // treat OBJ records + foreach ($this->_objs as $n => $obj) { +// echo '<hr /><b>Object</b> reference is ',$n,'<br />'; +// var_dump($obj); +// echo '<br />'; + + // the first shape container never has a corresponding OBJ record, hence $n + 1 + if (isset($allSpContainers[$n + 1]) && is_object($allSpContainers[$n + 1])) { + $spContainer = $allSpContainers[$n + 1]; + + // we skip all spContainers that are a part of a group shape since we cannot yet handle those + if ($spContainer->getNestingLevel() > 1) { + continue; + } + + // calculate the width and height of the shape + list($startColumn, $startRow) = PHPExcel_Cell::coordinateFromString($spContainer->getStartCoordinates()); + list($endColumn, $endRow) = PHPExcel_Cell::coordinateFromString($spContainer->getEndCoordinates()); + + $startOffsetX = $spContainer->getStartOffsetX(); + $startOffsetY = $spContainer->getStartOffsetY(); + $endOffsetX = $spContainer->getEndOffsetX(); + $endOffsetY = $spContainer->getEndOffsetY(); + + $width = PHPExcel_Shared_Excel5::getDistanceX($this->_phpSheet, $startColumn, $startOffsetX, $endColumn, $endOffsetX); + $height = PHPExcel_Shared_Excel5::getDistanceY($this->_phpSheet, $startRow, $startOffsetY, $endRow, $endOffsetY); + + // calculate offsetX and offsetY of the shape + $offsetX = $startOffsetX * PHPExcel_Shared_Excel5::sizeCol($this->_phpSheet, $startColumn) / 1024; + $offsetY = $startOffsetY * PHPExcel_Shared_Excel5::sizeRow($this->_phpSheet, $startRow) / 256; + + switch ($obj['otObjType']) { + case 0x19: + // Note +// echo 'Cell Annotation Object<br />'; +// echo 'Object ID is ',$obj['idObjID'],'<br />'; +// + if (isset($this->_cellNotes[$obj['idObjID']])) { + $cellNote = $this->_cellNotes[$obj['idObjID']]; + + if (isset($this->_textObjects[$obj['idObjID']])) { + $textObject = $this->_textObjects[$obj['idObjID']]; + $this->_cellNotes[$obj['idObjID']]['objTextData'] = $textObject; + } + } + break; + + case 0x08: +// echo 'Picture Object<br />'; + // picture + + // get index to BSE entry (1-based) + $BSEindex = $spContainer->getOPT(0x0104); + $BSECollection = $escherWorkbook->getDggContainer()->getBstoreContainer()->getBSECollection(); + $BSE = $BSECollection[$BSEindex - 1]; + $blipType = $BSE->getBlipType(); + + // need check because some blip types are not supported by Escher reader such as EMF + if ($blip = $BSE->getBlip()) { + $ih = imagecreatefromstring($blip->getData()); + $drawing = new PHPExcel_Worksheet_MemoryDrawing(); + $drawing->setImageResource($ih); + + // width, height, offsetX, offsetY + $drawing->setResizeProportional(false); + $drawing->setWidth($width); + $drawing->setHeight($height); + $drawing->setOffsetX($offsetX); + $drawing->setOffsetY($offsetY); + + switch ($blipType) { + case PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_JPEG: + $drawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG); + $drawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_JPEG); + break; + + case PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG: + $drawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_PNG); + $drawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_PNG); + break; + } + + $drawing->setWorksheet($this->_phpSheet); + $drawing->setCoordinates($spContainer->getStartCoordinates()); + } + + break; + + default: + // other object type + break; + + } + } + } + + // treat SHAREDFMLA records + if ($this->_version == self::XLS_BIFF8) { + foreach ($this->_sharedFormulaParts as $cell => $baseCell) { + list($column, $row) = PHPExcel_Cell::coordinateFromString($cell); + if (($this->getReadFilter() !== NULL) && $this->getReadFilter()->readCell($column, $row, $this->_phpSheet->getTitle()) ) { + $formula = $this->_getFormulaFromStructure($this->_sharedFormulas[$baseCell], $cell); + $this->_phpSheet->getCell($cell)->setValueExplicit('=' . $formula, PHPExcel_Cell_DataType::TYPE_FORMULA); + } + } + } + + if (!empty($this->_cellNotes)) { + foreach($this->_cellNotes as $note => $noteDetails) { + if (!isset($noteDetails['objTextData'])) { + if (isset($this->_textObjects[$note])) { + $textObject = $this->_textObjects[$note]; + $noteDetails['objTextData'] = $textObject; + } else { + $noteDetails['objTextData']['text'] = ''; + } + } +// echo '<b>Cell annotation ',$note,'</b><br />'; +// var_dump($noteDetails); +// echo '<br />'; + $cellAddress = str_replace('$','',$noteDetails['cellRef']); + $this->_phpSheet->getComment( $cellAddress ) + ->setAuthor( $noteDetails['author'] ) + ->setText($this->_parseRichText($noteDetails['objTextData']['text']) ); + } + } + } + + // add the named ranges (defined names) + foreach ($this->_definedname as $definedName) { + if ($definedName['isBuiltInName']) { + switch ($definedName['name']) { + + case pack('C', 0x06): + // print area + // in general, formula looks like this: Foo!$C$7:$J$66,Bar!$A$1:$IV$2 + + $ranges = explode(',', $definedName['formula']); // FIXME: what if sheetname contains comma? + + $extractedRanges = array(); + foreach ($ranges as $range) { + // $range should look like one of these + // Foo!$C$7:$J$66 + // Bar!$A$1:$IV$2 + + $explodes = explode('!', $range); // FIXME: what if sheetname contains exclamation mark? + $sheetName = $explodes[0]; + + if (count($explodes) == 2) { + $extractedRanges[] = str_replace('$', '', $explodes[1]); // C7:J66 + } + } + if ($docSheet = $this->_phpExcel->getSheetByName($sheetName)) { + $docSheet->getPageSetup()->setPrintArea(implode(',', $extractedRanges)); // C7:J66,A1:IV2 + } + break; + + case pack('C', 0x07): + // print titles (repeating rows) + // Assuming BIFF8, there are 3 cases + // 1. repeating rows + // formula looks like this: Sheet!$A$1:$IV$2 + // rows 1-2 repeat + // 2. repeating columns + // formula looks like this: Sheet!$A$1:$B$65536 + // columns A-B repeat + // 3. both repeating rows and repeating columns + // formula looks like this: Sheet!$A$1:$B$65536,Sheet!$A$1:$IV$2 + + $ranges = explode(',', $definedName['formula']); // FIXME: what if sheetname contains comma? + + foreach ($ranges as $range) { + // $range should look like this one of these + // Sheet!$A$1:$B$65536 + // Sheet!$A$1:$IV$2 + + $explodes = explode('!', $range); + + if (count($explodes) == 2) { + if ($docSheet = $this->_phpExcel->getSheetByName($explodes[0])) { + + $extractedRange = $explodes[1]; + $extractedRange = str_replace('$', '', $extractedRange); + + $coordinateStrings = explode(':', $extractedRange); + if (count($coordinateStrings) == 2) { + list($firstColumn, $firstRow) = PHPExcel_Cell::coordinateFromString($coordinateStrings[0]); + list($lastColumn, $lastRow) = PHPExcel_Cell::coordinateFromString($coordinateStrings[1]); + + if ($firstColumn == 'A' and $lastColumn == 'IV') { + // then we have repeating rows + $docSheet->getPageSetup()->setRowsToRepeatAtTop(array($firstRow, $lastRow)); + } elseif ($firstRow == 1 and $lastRow == 65536) { + // then we have repeating columns + $docSheet->getPageSetup()->setColumnsToRepeatAtLeft(array($firstColumn, $lastColumn)); + } + } + } + } + } + break; + + } + } else { + // Extract range + $explodes = explode('!', $definedName['formula']); + + if (count($explodes) == 2) { + if (($docSheet = $this->_phpExcel->getSheetByName($explodes[0])) || + ($docSheet = $this->_phpExcel->getSheetByName(trim($explodes[0],"'")))) { + $extractedRange = $explodes[1]; + $extractedRange = str_replace('$', '', $extractedRange); + + $localOnly = ($definedName['scope'] == 0) ? false : true; + + $scope = ($definedName['scope'] == 0) ? + null : $this->_phpExcel->getSheetByName($this->_sheets[$definedName['scope'] - 1]['name']); + + $this->_phpExcel->addNamedRange( new PHPExcel_NamedRange((string)$definedName['name'], $docSheet, $extractedRange, $localOnly, $scope) ); + } + } else { + // Named Value + // TODO Provide support for named values + } + } + } + + return $this->_phpExcel; + } + + + /** + * Use OLE reader to extract the relevant data streams from the OLE file + * + * @param string $pFilename + */ + private function _loadOLE($pFilename) + { + // OLE reader + $ole = new PHPExcel_Shared_OLERead(); + + // get excel data, + $res = $ole->read($pFilename); + // Get workbook data: workbook stream + sheet streams + $this->_data = $ole->getStream($ole->wrkbook); + + // Get summary information data + $this->_summaryInformation = $ole->getStream($ole->summaryInformation); + + // Get additional document summary information data + $this->_documentSummaryInformation = $ole->getStream($ole->documentSummaryInformation); + + // Get user-defined property data +// $this->_userDefinedProperties = $ole->getUserDefinedProperties(); + } + + + /** + * Read summary information + */ + private function _readSummaryInformation() + { + if (!isset($this->_summaryInformation)) { + return; + } + + // offset: 0; size: 2; must be 0xFE 0xFF (UTF-16 LE byte order mark) + // offset: 2; size: 2; + // offset: 4; size: 2; OS version + // offset: 6; size: 2; OS indicator + // offset: 8; size: 16 + // offset: 24; size: 4; section count + $secCount = self::_GetInt4d($this->_summaryInformation, 24); + + // offset: 28; size: 16; first section's class id: e0 85 9f f2 f9 4f 68 10 ab 91 08 00 2b 27 b3 d9 + // offset: 44; size: 4 + $secOffset = self::_GetInt4d($this->_summaryInformation, 44); + + // section header + // offset: $secOffset; size: 4; section length + $secLength = self::_GetInt4d($this->_summaryInformation, $secOffset); + + // offset: $secOffset+4; size: 4; property count + $countProperties = self::_GetInt4d($this->_summaryInformation, $secOffset+4); + + // initialize code page (used to resolve string values) + $codePage = 'CP1252'; + + // offset: ($secOffset+8); size: var + // loop through property decarations and properties + for ($i = 0; $i < $countProperties; ++$i) { + + // offset: ($secOffset+8) + (8 * $i); size: 4; property ID + $id = self::_GetInt4d($this->_summaryInformation, ($secOffset+8) + (8 * $i)); + + // Use value of property id as appropriate + // offset: ($secOffset+12) + (8 * $i); size: 4; offset from beginning of section (48) + $offset = self::_GetInt4d($this->_summaryInformation, ($secOffset+12) + (8 * $i)); + + $type = self::_GetInt4d($this->_summaryInformation, $secOffset + $offset); + + // initialize property value + $value = null; + + // extract property value based on property type + switch ($type) { + case 0x02: // 2 byte signed integer + $value = self::_GetInt2d($this->_summaryInformation, $secOffset + 4 + $offset); + break; + + case 0x03: // 4 byte signed integer + $value = self::_GetInt4d($this->_summaryInformation, $secOffset + 4 + $offset); + break; + + case 0x13: // 4 byte unsigned integer + // not needed yet, fix later if necessary + break; + + case 0x1E: // null-terminated string prepended by dword string length + $byteLength = self::_GetInt4d($this->_summaryInformation, $secOffset + 4 + $offset); + $value = substr($this->_summaryInformation, $secOffset + 8 + $offset, $byteLength); + $value = PHPExcel_Shared_String::ConvertEncoding($value, 'UTF-8', $codePage); + $value = rtrim($value); + break; + + case 0x40: // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + // PHP-time + $value = PHPExcel_Shared_OLE::OLE2LocalDate(substr($this->_summaryInformation, $secOffset + 4 + $offset, 8)); + break; + + case 0x47: // Clipboard format + // not needed yet, fix later if necessary + break; + } + + switch ($id) { + case 0x01: // Code Page + $codePage = PHPExcel_Shared_CodePage::NumberToName($value); + break; + + case 0x02: // Title + $this->_phpExcel->getProperties()->setTitle($value); + break; + + case 0x03: // Subject + $this->_phpExcel->getProperties()->setSubject($value); + break; + + case 0x04: // Author (Creator) + $this->_phpExcel->getProperties()->setCreator($value); + break; + + case 0x05: // Keywords + $this->_phpExcel->getProperties()->setKeywords($value); + break; + + case 0x06: // Comments (Description) + $this->_phpExcel->getProperties()->setDescription($value); + break; + + case 0x07: // Template + // Not supported by PHPExcel + break; + + case 0x08: // Last Saved By (LastModifiedBy) + $this->_phpExcel->getProperties()->setLastModifiedBy($value); + break; + + case 0x09: // Revision + // Not supported by PHPExcel + break; + + case 0x0A: // Total Editing Time + // Not supported by PHPExcel + break; + + case 0x0B: // Last Printed + // Not supported by PHPExcel + break; + + case 0x0C: // Created Date/Time + $this->_phpExcel->getProperties()->setCreated($value); + break; + + case 0x0D: // Modified Date/Time + $this->_phpExcel->getProperties()->setModified($value); + break; + + case 0x0E: // Number of Pages + // Not supported by PHPExcel + break; + + case 0x0F: // Number of Words + // Not supported by PHPExcel + break; + + case 0x10: // Number of Characters + // Not supported by PHPExcel + break; + + case 0x11: // Thumbnail + // Not supported by PHPExcel + break; + + case 0x12: // Name of creating application + // Not supported by PHPExcel + break; + + case 0x13: // Security + // Not supported by PHPExcel + break; + + } + } + } + + + /** + * Read additional document summary information + */ + private function _readDocumentSummaryInformation() + { + if (!isset($this->_documentSummaryInformation)) { + return; + } + + // offset: 0; size: 2; must be 0xFE 0xFF (UTF-16 LE byte order mark) + // offset: 2; size: 2; + // offset: 4; size: 2; OS version + // offset: 6; size: 2; OS indicator + // offset: 8; size: 16 + // offset: 24; size: 4; section count + $secCount = self::_GetInt4d($this->_documentSummaryInformation, 24); +// echo '$secCount = ',$secCount,'<br />'; + + // offset: 28; size: 16; first section's class id: 02 d5 cd d5 9c 2e 1b 10 93 97 08 00 2b 2c f9 ae + // offset: 44; size: 4; first section offset + $secOffset = self::_GetInt4d($this->_documentSummaryInformation, 44); +// echo '$secOffset = ',$secOffset,'<br />'; + + // section header + // offset: $secOffset; size: 4; section length + $secLength = self::_GetInt4d($this->_documentSummaryInformation, $secOffset); +// echo '$secLength = ',$secLength,'<br />'; + + // offset: $secOffset+4; size: 4; property count + $countProperties = self::_GetInt4d($this->_documentSummaryInformation, $secOffset+4); +// echo '$countProperties = ',$countProperties,'<br />'; + + // initialize code page (used to resolve string values) + $codePage = 'CP1252'; + + // offset: ($secOffset+8); size: var + // loop through property decarations and properties + for ($i = 0; $i < $countProperties; ++$i) { +// echo 'Property ',$i,'<br />'; + // offset: ($secOffset+8) + (8 * $i); size: 4; property ID + $id = self::_GetInt4d($this->_documentSummaryInformation, ($secOffset+8) + (8 * $i)); +// echo 'ID is ',$id,'<br />'; + + // Use value of property id as appropriate + // offset: 60 + 8 * $i; size: 4; offset from beginning of section (48) + $offset = self::_GetInt4d($this->_documentSummaryInformation, ($secOffset+12) + (8 * $i)); + + $type = self::_GetInt4d($this->_documentSummaryInformation, $secOffset + $offset); +// echo 'Type is ',$type,', '; + + // initialize property value + $value = null; + + // extract property value based on property type + switch ($type) { + case 0x02: // 2 byte signed integer + $value = self::_GetInt2d($this->_documentSummaryInformation, $secOffset + 4 + $offset); + break; + + case 0x03: // 4 byte signed integer + $value = self::_GetInt4d($this->_documentSummaryInformation, $secOffset + 4 + $offset); + break; + + case 0x0B: // Boolean + $value = self::_GetInt2d($this->_documentSummaryInformation, $secOffset + 4 + $offset); + $value = ($value == 0 ? false : true); + break; + + case 0x13: // 4 byte unsigned integer + // not needed yet, fix later if necessary + break; + + case 0x1E: // null-terminated string prepended by dword string length + $byteLength = self::_GetInt4d($this->_documentSummaryInformation, $secOffset + 4 + $offset); + $value = substr($this->_documentSummaryInformation, $secOffset + 8 + $offset, $byteLength); + $value = PHPExcel_Shared_String::ConvertEncoding($value, 'UTF-8', $codePage); + $value = rtrim($value); + break; + + case 0x40: // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + // PHP-Time + $value = PHPExcel_Shared_OLE::OLE2LocalDate(substr($this->_documentSummaryInformation, $secOffset + 4 + $offset, 8)); + break; + + case 0x47: // Clipboard format + // not needed yet, fix later if necessary + break; + } + + switch ($id) { + case 0x01: // Code Page + $codePage = PHPExcel_Shared_CodePage::NumberToName($value); + break; + + case 0x02: // Category + $this->_phpExcel->getProperties()->setCategory($value); + break; + + case 0x03: // Presentation Target + // Not supported by PHPExcel + break; + + case 0x04: // Bytes + // Not supported by PHPExcel + break; + + case 0x05: // Lines + // Not supported by PHPExcel + break; + + case 0x06: // Paragraphs + // Not supported by PHPExcel + break; + + case 0x07: // Slides + // Not supported by PHPExcel + break; + + case 0x08: // Notes + // Not supported by PHPExcel + break; + + case 0x09: // Hidden Slides + // Not supported by PHPExcel + break; + + case 0x0A: // MM Clips + // Not supported by PHPExcel + break; + + case 0x0B: // Scale Crop + // Not supported by PHPExcel + break; + + case 0x0C: // Heading Pairs + // Not supported by PHPExcel + break; + + case 0x0D: // Titles of Parts + // Not supported by PHPExcel + break; + + case 0x0E: // Manager + $this->_phpExcel->getProperties()->setManager($value); + break; + + case 0x0F: // Company + $this->_phpExcel->getProperties()->setCompany($value); + break; + + case 0x10: // Links up-to-date + // Not supported by PHPExcel + break; + + } + } + } + + + /** + * Reads a general type of BIFF record. Does nothing except for moving stream pointer forward to next record. + */ + private function _readDefault() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); +// $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + } + + + /** + * The NOTE record specifies a comment associated with a particular cell. In Excel 95 (BIFF7) and earlier versions, + * this record stores a note (cell note). This feature was significantly enhanced in Excel 97. + */ + private function _readNote() + { +// echo '<b>Read Cell Annotation</b><br />'; + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_readDataOnly) { + return; + } + + $cellAddress = $this->_readBIFF8CellAddress(substr($recordData, 0, 4)); + if ($this->_version == self::XLS_BIFF8) { + $noteObjID = self::_GetInt2d($recordData, 6); + $noteAuthor = self::_readUnicodeStringLong(substr($recordData, 8)); + $noteAuthor = $noteAuthor['value']; +// echo 'Note Address=',$cellAddress,'<br />'; +// echo 'Note Object ID=',$noteObjID,'<br />'; +// echo 'Note Author=',$noteAuthor,'<hr />'; +// + $this->_cellNotes[$noteObjID] = array('cellRef' => $cellAddress, + 'objectID' => $noteObjID, + 'author' => $noteAuthor + ); + } else { + $extension = false; + if ($cellAddress == '$B$65536') { + // If the address row is -1 and the column is 0, (which translates as $B$65536) then this is a continuation + // note from the previous cell annotation. We're not yet handling this, so annotations longer than the + // max 2048 bytes will probably throw a wobbly. + $row = self::_GetInt2d($recordData, 0); + $extension = true; + $cellAddress = array_pop(array_keys($this->_phpSheet->getComments())); + } +// echo 'Note Address=',$cellAddress,'<br />'; + + $cellAddress = str_replace('$','',$cellAddress); + $noteLength = self::_GetInt2d($recordData, 4); + $noteText = trim(substr($recordData, 6)); +// echo 'Note Length=',$noteLength,'<br />'; +// echo 'Note Text=',$noteText,'<br />'; + + if ($extension) { + // Concatenate this extension with the currently set comment for the cell + $comment = $this->_phpSheet->getComment( $cellAddress ); + $commentText = $comment->getText()->getPlainText(); + $comment->setText($this->_parseRichText($commentText.$noteText) ); + } else { + // Set comment for the cell + $this->_phpSheet->getComment( $cellAddress ) +// ->setAuthor( $author ) + ->setText($this->_parseRichText($noteText) ); + } + } + + } + + + /** + * The TEXT Object record contains the text associated with a cell annotation. + */ + private function _readTextObject() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_readDataOnly) { + return; + } + + // recordData consists of an array of subrecords looking like this: + // grbit: 2 bytes; Option Flags + // rot: 2 bytes; rotation + // cchText: 2 bytes; length of the text (in the first continue record) + // cbRuns: 2 bytes; length of the formatting (in the second continue record) + // followed by the continuation records containing the actual text and formatting + $grbitOpts = self::_GetInt2d($recordData, 0); + $rot = self::_GetInt2d($recordData, 2); + $cchText = self::_GetInt2d($recordData, 10); + $cbRuns = self::_GetInt2d($recordData, 12); + $text = $this->_getSplicedRecordData(); + + $this->_textObjects[$this->textObjRef] = array( + 'text' => substr($text["recordData"],$text["spliceOffsets"][0]+1,$cchText), + 'format' => substr($text["recordData"],$text["spliceOffsets"][1],$cbRuns), + 'alignment' => $grbitOpts, + 'rotation' => $rot + ); + +// echo '<b>_readTextObject()</b><br />'; +// var_dump($this->_textObjects[$this->textObjRef]); +// echo '<br />'; + } + + + /** + * Read BOF + */ + private function _readBof() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 2; size: 2; type of the following data + $substreamType = self::_GetInt2d($recordData, 2); + + switch ($substreamType) { + case self::XLS_WorkbookGlobals: + $version = self::_GetInt2d($recordData, 0); + if (($version != self::XLS_BIFF8) && ($version != self::XLS_BIFF7)) { + throw new Exception('Cannot read this Excel file. Version is too old.'); + } + $this->_version = $version; + break; + + case self::XLS_Worksheet: + // do not use this version information for anything + // it is unreliable (OpenOffice doc, 5.8), use only version information from the global stream + break; + + default: + // substream, e.g. chart + // just skip the entire substream + do { + $code = self::_GetInt2d($this->_data, $this->_pos); + $this->_readDefault(); + } while ($code != self::XLS_Type_EOF && $this->_pos < $this->_dataSize); + break; + } + } + + + /** + * FILEPASS + * + * This record is part of the File Protection Block. It + * contains information about the read/write password of the + * file. All record contents following this record will be + * encrypted. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readFilepass() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); +// $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + throw new Exception('Cannot read encrypted file'); + } + + + /** + * CODEPAGE + * + * This record stores the text encoding used to write byte + * strings, stored as MS Windows code page identifier. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readCodepage() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; code page identifier + $codepage = self::_GetInt2d($recordData, 0); + + $this->_codepage = PHPExcel_Shared_CodePage::NumberToName($codepage); + } + + + /** + * DATEMODE + * + * This record specifies the base date for displaying date + * values. All dates are stored as count of days past this + * base date. In BIFF2-BIFF4 this record is part of the + * Calculation Settings Block. In BIFF5-BIFF8 it is + * stored in the Workbook Globals Substream. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readDateMode() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; 0 = base 1900, 1 = base 1904 + PHPExcel_Shared_Date::setExcelCalendar(PHPExcel_Shared_Date::CALENDAR_WINDOWS_1900); + if (ord($recordData{0}) == 1) { + PHPExcel_Shared_Date::setExcelCalendar(PHPExcel_Shared_Date::CALENDAR_MAC_1904); + } + } + + + /** + * Read a FONT record + */ + private function _readFont() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + $objFont = new PHPExcel_Style_Font(); + + // offset: 0; size: 2; height of the font (in twips = 1/20 of a point) + $size = self::_GetInt2d($recordData, 0); + $objFont->setSize($size / 20); + + // offset: 2; size: 2; option flags + // bit: 0; mask 0x0001; bold (redundant in BIFF5-BIFF8) + // bit: 1; mask 0x0002; italic + $isItalic = (0x0002 & self::_GetInt2d($recordData, 2)) >> 1; + if ($isItalic) $objFont->setItalic(true); + + // bit: 2; mask 0x0004; underlined (redundant in BIFF5-BIFF8) + // bit: 3; mask 0x0008; strike + $isStrike = (0x0008 & self::_GetInt2d($recordData, 2)) >> 3; + if ($isStrike) $objFont->setStrikethrough(true); + + // offset: 4; size: 2; colour index + $colorIndex = self::_GetInt2d($recordData, 4); + $objFont->colorIndex = $colorIndex; + + // offset: 6; size: 2; font weight + $weight = self::_GetInt2d($recordData, 6); + switch ($weight) { + case 0x02BC: + $objFont->setBold(true); + break; + } + + // offset: 8; size: 2; escapement type + $escapement = self::_GetInt2d($recordData, 8); + switch ($escapement) { + case 0x0001: + $objFont->setSuperScript(true); + break; + case 0x0002: + $objFont->setSubScript(true); + break; + } + + // offset: 10; size: 1; underline type + $underlineType = ord($recordData{10}); + switch ($underlineType) { + case 0x00: + break; // no underline + case 0x01: + $objFont->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); + break; + case 0x02: + $objFont->setUnderline(PHPExcel_Style_Font::UNDERLINE_DOUBLE); + break; + case 0x21: + $objFont->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING); + break; + case 0x22: + $objFont->setUnderline(PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING); + break; + } + + // offset: 11; size: 1; font family + // offset: 12; size: 1; character set + // offset: 13; size: 1; not used + // offset: 14; size: var; font name + if ($this->_version == self::XLS_BIFF8) { + $string = self::_readUnicodeStringShort(substr($recordData, 14)); + } else { + $string = $this->_readByteStringShort(substr($recordData, 14)); + } + $objFont->setName($string['value']); + + $this->_objFonts[] = $objFont; + } + } + + + /** + * FORMAT + * + * This record contains information about a number format. + * All FORMAT records occur together in a sequential list. + * + * In BIFF2-BIFF4 other records referencing a FORMAT record + * contain a zero-based index into this list. From BIFF5 on + * the FORMAT record contains the index itself that will be + * used by other records. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readFormat() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + $indexCode = self::_GetInt2d($recordData, 0); + + if ($this->_version == self::XLS_BIFF8) { + $string = self::_readUnicodeStringLong(substr($recordData, 2)); + } else { + // BIFF7 + $string = $this->_readByteStringShort(substr($recordData, 2)); + } + + $formatString = $string['value']; + $this->_formats[$indexCode] = $formatString; + } + } + + + /** + * XF - Extended Format + * + * This record contains formatting information for cells, rows, columns or styles. + * According to http://support.microsoft.com/kb/147732 there are always at least 15 cell style XF + * and 1 cell XF. + * Inspection of Excel files generated by MS Office Excel shows that XF records 0-14 are cell style XF + * and XF record 15 is a cell XF + * We only read the first cell style XF and skip the remaining cell style XF records + * We read all cell XF records. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readXf() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + $objStyle = new PHPExcel_Style(); + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; Index to FONT record + if (self::_GetInt2d($recordData, 0) < 4) { + $fontIndex = self::_GetInt2d($recordData, 0); + } else { + // this has to do with that index 4 is omitted in all BIFF versions for some strange reason + // check the OpenOffice documentation of the FONT record + $fontIndex = self::_GetInt2d($recordData, 0) - 1; + } + $objStyle->setFont($this->_objFonts[$fontIndex]); + + // offset: 2; size: 2; Index to FORMAT record + $numberFormatIndex = self::_GetInt2d($recordData, 2); + if (isset($this->_formats[$numberFormatIndex])) { + // then we have user-defined format code + $numberformat = array('code' => $this->_formats[$numberFormatIndex]); + } elseif (($code = PHPExcel_Style_NumberFormat::builtInFormatCode($numberFormatIndex)) !== '') { + // then we have built-in format code + $numberformat = array('code' => $code); + } else { + // we set the general format code + $numberformat = array('code' => 'General'); + } + $objStyle->getNumberFormat()->setFormatCode($numberformat['code']); + + // offset: 4; size: 2; XF type, cell protection, and parent style XF + // bit 2-0; mask 0x0007; XF_TYPE_PROT + $xfTypeProt = self::_GetInt2d($recordData, 4); + // bit 0; mask 0x01; 1 = cell is locked + $isLocked = (0x01 & $xfTypeProt) >> 0; + $objStyle->getProtection()->setLocked($isLocked ? + PHPExcel_Style_Protection::PROTECTION_INHERIT : PHPExcel_Style_Protection::PROTECTION_UNPROTECTED); + + // bit 1; mask 0x02; 1 = Formula is hidden + $isHidden = (0x02 & $xfTypeProt) >> 1; + $objStyle->getProtection()->setHidden($isHidden ? + PHPExcel_Style_Protection::PROTECTION_PROTECTED : PHPExcel_Style_Protection::PROTECTION_UNPROTECTED); + + // bit 2; mask 0x04; 0 = Cell XF, 1 = Cell Style XF + $isCellStyleXf = (0x04 & $xfTypeProt) >> 2; + + // offset: 6; size: 1; Alignment and text break + // bit 2-0, mask 0x07; horizontal alignment + $horAlign = (0x07 & ord($recordData{6})) >> 0; + switch ($horAlign) { + case 0: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_GENERAL); + break; + case 1: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT); + break; + case 2: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); + break; + case 3: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); + break; + case 5: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY); + break; + case 6: + $objStyle->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS); + break; + } + // bit 3, mask 0x08; wrap text + $wrapText = (0x08 & ord($recordData{6})) >> 3; + switch ($wrapText) { + case 0: + $objStyle->getAlignment()->setWrapText(false); + break; + case 1: + $objStyle->getAlignment()->setWrapText(true); + break; + } + // bit 6-4, mask 0x70; vertical alignment + $vertAlign = (0x70 & ord($recordData{6})) >> 4; + switch ($vertAlign) { + case 0: + $objStyle->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP); + break; + case 1: + $objStyle->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); + break; + case 2: + $objStyle->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_BOTTOM); + break; + case 3: + $objStyle->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_JUSTIFY); + break; + } + + if ($this->_version == self::XLS_BIFF8) { + // offset: 7; size: 1; XF_ROTATION: Text rotation angle + $angle = ord($recordData{7}); + $rotation = 0; + if ($angle <= 90) { + $rotation = $angle; + } else if ($angle <= 180) { + $rotation = 90 - $angle; + } else if ($angle == 255) { + $rotation = -165; + } + $objStyle->getAlignment()->setTextRotation($rotation); + + // offset: 8; size: 1; Indentation, shrink to cell size, and text direction + // bit: 3-0; mask: 0x0F; indent level + $indent = (0x0F & ord($recordData{8})) >> 0; + $objStyle->getAlignment()->setIndent($indent); + + // bit: 4; mask: 0x10; 1 = shrink content to fit into cell + $shrinkToFit = (0x10 & ord($recordData{8})) >> 4; + switch ($shrinkToFit) { + case 0: + $objStyle->getAlignment()->setShrinkToFit(false); + break; + case 1: + $objStyle->getAlignment()->setShrinkToFit(true); + break; + } + + // offset: 9; size: 1; Flags used for attribute groups + + // offset: 10; size: 4; Cell border lines and background area + // bit: 3-0; mask: 0x0000000F; left style + if ($bordersLeftStyle = self::_mapBorderStyle((0x0000000F & self::_GetInt4d($recordData, 10)) >> 0)) { + $objStyle->getBorders()->getLeft()->setBorderStyle($bordersLeftStyle); + } + // bit: 7-4; mask: 0x000000F0; right style + if ($bordersRightStyle = self::_mapBorderStyle((0x000000F0 & self::_GetInt4d($recordData, 10)) >> 4)) { + $objStyle->getBorders()->getRight()->setBorderStyle($bordersRightStyle); + } + // bit: 11-8; mask: 0x00000F00; top style + if ($bordersTopStyle = self::_mapBorderStyle((0x00000F00 & self::_GetInt4d($recordData, 10)) >> 8)) { + $objStyle->getBorders()->getTop()->setBorderStyle($bordersTopStyle); + } + // bit: 15-12; mask: 0x0000F000; bottom style + if ($bordersBottomStyle = self::_mapBorderStyle((0x0000F000 & self::_GetInt4d($recordData, 10)) >> 12)) { + $objStyle->getBorders()->getBottom()->setBorderStyle($bordersBottomStyle); + } + // bit: 22-16; mask: 0x007F0000; left color + $objStyle->getBorders()->getLeft()->colorIndex = (0x007F0000 & self::_GetInt4d($recordData, 10)) >> 16; + + // bit: 29-23; mask: 0x3F800000; right color + $objStyle->getBorders()->getRight()->colorIndex = (0x3F800000 & self::_GetInt4d($recordData, 10)) >> 23; + + // bit: 30; mask: 0x40000000; 1 = diagonal line from top left to right bottom + $diagonalDown = (0x40000000 & self::_GetInt4d($recordData, 10)) >> 30 ? + true : false; + + // bit: 31; mask: 0x80000000; 1 = diagonal line from bottom left to top right + $diagonalUp = (0x80000000 & self::_GetInt4d($recordData, 10)) >> 31 ? + true : false; + + if ($diagonalUp == false && $diagonalDown == false) { + $objStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_NONE); + } elseif ($diagonalUp == true && $diagonalDown == false) { + $objStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_UP); + } elseif ($diagonalUp == false && $diagonalDown == true) { + $objStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_DOWN); + } elseif ($diagonalUp == true && $diagonalDown == true) { + $objStyle->getBorders()->setDiagonalDirection(PHPExcel_Style_Borders::DIAGONAL_BOTH); + } + + // offset: 14; size: 4; + // bit: 6-0; mask: 0x0000007F; top color + $objStyle->getBorders()->getTop()->colorIndex = (0x0000007F & self::_GetInt4d($recordData, 14)) >> 0; + + // bit: 13-7; mask: 0x00003F80; bottom color + $objStyle->getBorders()->getBottom()->colorIndex = (0x00003F80 & self::_GetInt4d($recordData, 14)) >> 7; + + // bit: 20-14; mask: 0x001FC000; diagonal color + $objStyle->getBorders()->getDiagonal()->colorIndex = (0x001FC000 & self::_GetInt4d($recordData, 14)) >> 14; + + // bit: 24-21; mask: 0x01E00000; diagonal style + if ($bordersDiagonalStyle = self::_mapBorderStyle((0x01E00000 & self::_GetInt4d($recordData, 14)) >> 21)) { + $objStyle->getBorders()->getDiagonal()->setBorderStyle($bordersDiagonalStyle); + } + + // bit: 31-26; mask: 0xFC000000 fill pattern + if ($fillType = self::_mapFillPattern((0xFC000000 & self::_GetInt4d($recordData, 14)) >> 26)) { + $objStyle->getFill()->setFillType($fillType); + } + // offset: 18; size: 2; pattern and background colour + // bit: 6-0; mask: 0x007F; color index for pattern color + $objStyle->getFill()->startcolorIndex = (0x007F & self::_GetInt2d($recordData, 18)) >> 0; + + // bit: 13-7; mask: 0x3F80; color index for pattern background + $objStyle->getFill()->endcolorIndex = (0x3F80 & self::_GetInt2d($recordData, 18)) >> 7; + } else { + // BIFF5 + + // offset: 7; size: 1; Text orientation and flags + $orientationAndFlags = ord($recordData{7}); + + // bit: 1-0; mask: 0x03; XF_ORIENTATION: Text orientation + $xfOrientation = (0x03 & $orientationAndFlags) >> 0; + switch ($xfOrientation) { + case 0: + $objStyle->getAlignment()->setTextRotation(0); + break; + case 1: + $objStyle->getAlignment()->setTextRotation(-165); + break; + case 2: + $objStyle->getAlignment()->setTextRotation(90); + break; + case 3: + $objStyle->getAlignment()->setTextRotation(-90); + break; + } + + // offset: 8; size: 4; cell border lines and background area + $borderAndBackground = self::_GetInt4d($recordData, 8); + + // bit: 6-0; mask: 0x0000007F; color index for pattern color + $objStyle->getFill()->startcolorIndex = (0x0000007F & $borderAndBackground) >> 0; + + // bit: 13-7; mask: 0x00003F80; color index for pattern background + $objStyle->getFill()->endcolorIndex = (0x00003F80 & $borderAndBackground) >> 7; + + // bit: 21-16; mask: 0x003F0000; fill pattern + $objStyle->getFill()->setFillType(self::_mapFillPattern((0x003F0000 & $borderAndBackground) >> 16)); + + // bit: 24-22; mask: 0x01C00000; bottom line style + $objStyle->getBorders()->getBottom()->setBorderStyle(self::_mapBorderStyle((0x01C00000 & $borderAndBackground) >> 22)); + + // bit: 31-25; mask: 0xFE000000; bottom line color + $objStyle->getBorders()->getBottom()->colorIndex = (0xFE000000 & $borderAndBackground) >> 25; + + // offset: 12; size: 4; cell border lines + $borderLines = self::_GetInt4d($recordData, 12); + + // bit: 2-0; mask: 0x00000007; top line style + $objStyle->getBorders()->getTop()->setBorderStyle(self::_mapBorderStyle((0x00000007 & $borderLines) >> 0)); + + // bit: 5-3; mask: 0x00000038; left line style + $objStyle->getBorders()->getLeft()->setBorderStyle(self::_mapBorderStyle((0x00000038 & $borderLines) >> 3)); + + // bit: 8-6; mask: 0x000001C0; right line style + $objStyle->getBorders()->getRight()->setBorderStyle(self::_mapBorderStyle((0x000001C0 & $borderLines) >> 6)); + + // bit: 15-9; mask: 0x0000FE00; top line color index + $objStyle->getBorders()->getTop()->colorIndex = (0x0000FE00 & $borderLines) >> 9; + + // bit: 22-16; mask: 0x007F0000; left line color index + $objStyle->getBorders()->getLeft()->colorIndex = (0x007F0000 & $borderLines) >> 16; + + // bit: 29-23; mask: 0x3F800000; right line color index + $objStyle->getBorders()->getRight()->colorIndex = (0x3F800000 & $borderLines) >> 23; + } + + // add cellStyleXf or cellXf and update mapping + if ($isCellStyleXf) { + // we only read one style XF record which is always the first + if ($this->_xfIndex == 0) { + $this->_phpExcel->addCellStyleXf($objStyle); + $this->_mapCellStyleXfIndex[$this->_xfIndex] = 0; + } + } else { + // we read all cell XF records + $this->_phpExcel->addCellXf($objStyle); + $this->_mapCellXfIndex[$this->_xfIndex] = count($this->_phpExcel->getCellXfCollection()) - 1; + } + + // update XF index for when we read next record + ++$this->_xfIndex; + } + } + + + /** + * + */ + private function _readXfExt() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; 0x087D = repeated header + + // offset: 2; size: 2 + + // offset: 4; size: 8; not used + + // offset: 12; size: 2; record version + + // offset: 14; size: 2; index to XF record which this record modifies + $ixfe = self::_GetInt2d($recordData, 14); + + // offset: 16; size: 2; not used + + // offset: 18; size: 2; number of extension properties that follow + $cexts = self::_GetInt2d($recordData, 18); + + // start reading the actual extension data + $offset = 20; + while ($offset < $length) { + // extension type + $extType = self::_GetInt2d($recordData, $offset); + + // extension length + $cb = self::_GetInt2d($recordData, $offset + 2); + + // extension data + $extData = substr($recordData, $offset + 4, $cb); + + switch ($extType) { + case 4: // fill start color + $xclfType = self::_GetInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if ( isset($this->_mapCellXfIndex[$ixfe]) ) { + $fill = $this->_phpExcel->getCellXfByIndex($this->_mapCellXfIndex[$ixfe])->getFill(); + $fill->getStartColor()->setRGB($rgb); + unset($fill->startcolorIndex); // normal color index does not apply, discard + } + } + break; + + case 5: // fill end color + $xclfType = self::_GetInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if ( isset($this->_mapCellXfIndex[$ixfe]) ) { + $fill = $this->_phpExcel->getCellXfByIndex($this->_mapCellXfIndex[$ixfe])->getFill(); + $fill->getEndColor()->setRGB($rgb); + unset($fill->endcolorIndex); // normal color index does not apply, discard + } + } + break; + + case 7: // border color top + $xclfType = self::_GetInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if ( isset($this->_mapCellXfIndex[$ixfe]) ) { + $top = $this->_phpExcel->getCellXfByIndex($this->_mapCellXfIndex[$ixfe])->getBorders()->getTop(); + $top->getColor()->setRGB($rgb); + unset($top->colorIndex); // normal color index does not apply, discard + } + } + break; + + case 8: // border color bottom + $xclfType = self::_GetInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if ( isset($this->_mapCellXfIndex[$ixfe]) ) { + $bottom = $this->_phpExcel->getCellXfByIndex($this->_mapCellXfIndex[$ixfe])->getBorders()->getBottom(); + $bottom->getColor()->setRGB($rgb); + unset($bottom->colorIndex); // normal color index does not apply, discard + } + } + break; + + case 9: // border color left + $xclfType = self::_GetInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if ( isset($this->_mapCellXfIndex[$ixfe]) ) { + $left = $this->_phpExcel->getCellXfByIndex($this->_mapCellXfIndex[$ixfe])->getBorders()->getLeft(); + $left->getColor()->setRGB($rgb); + unset($left->colorIndex); // normal color index does not apply, discard + } + } + break; + + case 10: // border color right + $xclfType = self::_GetInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if ( isset($this->_mapCellXfIndex[$ixfe]) ) { + $right = $this->_phpExcel->getCellXfByIndex($this->_mapCellXfIndex[$ixfe])->getBorders()->getRight(); + $right->getColor()->setRGB($rgb); + unset($right->colorIndex); // normal color index does not apply, discard + } + } + break; + + case 11: // border color diagonal + $xclfType = self::_GetInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if ( isset($this->_mapCellXfIndex[$ixfe]) ) { + $diagonal = $this->_phpExcel->getCellXfByIndex($this->_mapCellXfIndex[$ixfe])->getBorders()->getDiagonal(); + $diagonal->getColor()->setRGB($rgb); + unset($diagonal->colorIndex); // normal color index does not apply, discard + } + } + break; + + case 13: // font color + $xclfType = self::_GetInt2d($extData, 0); // color type + $xclrValue = substr($extData, 4, 4); // color value (value based on color type) + + if ($xclfType == 2) { + $rgb = sprintf('%02X%02X%02X', ord($xclrValue{0}), ord($xclrValue{1}), ord($xclrValue{2})); + + // modify the relevant style property + if ( isset($this->_mapCellXfIndex[$ixfe]) ) { + $font = $this->_phpExcel->getCellXfByIndex($this->_mapCellXfIndex[$ixfe])->getFont(); + $font->getColor()->setRGB($rgb); + unset($font->colorIndex); // normal color index does not apply, discard + } + } + break; + } + + $offset += $cb; + } + } + + } + + + /** + * Read STYLE record + */ + private function _readStyle() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; index to XF record and flag for built-in style + $ixfe = self::_GetInt2d($recordData, 0); + + // bit: 11-0; mask 0x0FFF; index to XF record + $xfIndex = (0x0FFF & $ixfe) >> 0; + + // bit: 15; mask 0x8000; 0 = user-defined style, 1 = built-in style + $isBuiltIn = (bool) ((0x8000 & $ixfe) >> 15); + + if ($isBuiltIn) { + // offset: 2; size: 1; identifier for built-in style + $builtInId = ord($recordData{2}); + + switch ($builtInId) { + case 0x00: + // currently, we are not using this for anything + break; + + default: + break; + } + + } else { + // user-defined; not supported by PHPExcel + } + } + } + + + /** + * Read PALETTE record + */ + private function _readPalette() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; number of following colors + $nm = self::_GetInt2d($recordData, 0); + + // list of RGB colors + for ($i = 0; $i < $nm; ++$i) { + $rgb = substr($recordData, 2 + 4 * $i, 4); + $this->_palette[] = self::_readRGB($rgb); + } + } + } + + + /** + * SHEET + * + * This record is located in the Workbook Globals + * Substream and represents a sheet inside the workbook. + * One SHEET record is written for each sheet. It stores the + * sheet name and a stream offset to the BOF record of the + * respective Sheet Substream within the Workbook Stream. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readSheet() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 4; absolute stream position of the BOF record of the sheet + $rec_offset = self::_GetInt4d($recordData, 0); + + // offset: 4; size: 1; sheet state + switch (ord($recordData{4})) { + case 0x00: $sheetState = PHPExcel_Worksheet::SHEETSTATE_VISIBLE; break; + case 0x01: $sheetState = PHPExcel_Worksheet::SHEETSTATE_HIDDEN; break; + case 0x02: $sheetState = PHPExcel_Worksheet::SHEETSTATE_VERYHIDDEN; break; + default: $sheetState = PHPExcel_Worksheet::SHEETSTATE_VISIBLE; break; + } + + // offset: 5; size: 1; sheet type + $sheetType = ord($recordData{5}); + + // offset: 6; size: var; sheet name + if ($this->_version == self::XLS_BIFF8) { + $string = self::_readUnicodeStringShort(substr($recordData, 6)); + $rec_name = $string['value']; + } elseif ($this->_version == self::XLS_BIFF7) { + $string = $this->_readByteStringShort(substr($recordData, 6)); + $rec_name = $string['value']; + } + + $this->_sheets[] = array( + 'name' => $rec_name, + 'offset' => $rec_offset, + 'sheetState' => $sheetState, + 'sheetType' => $sheetType, + ); + } + + + /** + * Read EXTERNALBOOK record + */ + private function _readExternalBook() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset within record data + $offset = 0; + + // there are 4 types of records + if (strlen($recordData) > 4) { + // external reference + // offset: 0; size: 2; number of sheet names ($nm) + $nm = self::_GetInt2d($recordData, 0); + $offset += 2; + + // offset: 2; size: var; encoded URL without sheet name (Unicode string, 16-bit length) + $encodedUrlString = self::_readUnicodeStringLong(substr($recordData, 2)); + $offset += $encodedUrlString['size']; + + // offset: var; size: var; list of $nm sheet names (Unicode strings, 16-bit length) + $externalSheetNames = array(); + for ($i = 0; $i < $nm; ++$i) { + $externalSheetNameString = self::_readUnicodeStringLong(substr($recordData, $offset)); + $externalSheetNames[] = $externalSheetNameString['value']; + $offset += $externalSheetNameString['size']; + } + + // store the record data + $this->_externalBooks[] = array( + 'type' => 'external', + 'encodedUrl' => $encodedUrlString['value'], + 'externalSheetNames' => $externalSheetNames, + ); + + } elseif (substr($recordData, 2, 2) == pack('CC', 0x01, 0x04)) { + // internal reference + // offset: 0; size: 2; number of sheet in this document + // offset: 2; size: 2; 0x01 0x04 + $this->_externalBooks[] = array( + 'type' => 'internal', + ); + } elseif (substr($recordData, 0, 4) == pack('vCC', 0x0001, 0x01, 0x3A)) { + // add-in function + // offset: 0; size: 2; 0x0001 + $this->_externalBooks[] = array( + 'type' => 'addInFunction', + ); + } elseif (substr($recordData, 0, 2) == pack('v', 0x0000)) { + // DDE links, OLE links + // offset: 0; size: 2; 0x0000 + // offset: 2; size: var; encoded source document name + $this->_externalBooks[] = array( + 'type' => 'DDEorOLE', + ); + } + } + + + /** + * Read EXTERNNAME record. + */ + private function _readExternName() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // external sheet references provided for named cells + if ($this->_version == self::XLS_BIFF8) { + // offset: 0; size: 2; options + $options = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; + + // offset: 4; size: 2; not used + + // offset: 6; size: var + $nameString = self::_readUnicodeStringShort(substr($recordData, 6)); + + // offset: var; size: var; formula data + $offset = 6 + $nameString['size']; + $formula = $this->_getFormulaFromStructure(substr($recordData, $offset)); + + $this->_externalNames[] = array( + 'name' => $nameString['value'], + 'formula' => $formula, + ); + } + } + + + /** + * Read EXTERNSHEET record + */ + private function _readExternSheet() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // external sheet references provided for named cells + if ($this->_version == self::XLS_BIFF8) { + // offset: 0; size: 2; number of following ref structures + $nm = self::_GetInt2d($recordData, 0); + for ($i = 0; $i < $nm; ++$i) { + $this->_ref[] = array( + // offset: 2 + 6 * $i; index to EXTERNALBOOK record + 'externalBookIndex' => self::_GetInt2d($recordData, 2 + 6 * $i), + // offset: 4 + 6 * $i; index to first sheet in EXTERNALBOOK record + 'firstSheetIndex' => self::_GetInt2d($recordData, 4 + 6 * $i), + // offset: 6 + 6 * $i; index to last sheet in EXTERNALBOOK record + 'lastSheetIndex' => self::_GetInt2d($recordData, 6 + 6 * $i), + ); + } + } + } + + + /** + * DEFINEDNAME + * + * This record is part of a Link Table. It contains the name + * and the token array of an internal defined name. Token + * arrays of defined names contain tokens with aberrant + * token classes. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readDefinedName() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_version == self::XLS_BIFF8) { + // retrieves named cells + + // offset: 0; size: 2; option flags + $opts = self::_GetInt2d($recordData, 0); + + // bit: 5; mask: 0x0020; 0 = user-defined name, 1 = built-in-name + $isBuiltInName = (0x0020 & $opts) >> 5; + + // offset: 2; size: 1; keyboard shortcut + + // offset: 3; size: 1; length of the name (character count) + $nlen = ord($recordData{3}); + + // offset: 4; size: 2; size of the formula data (it can happen that this is zero) + // note: there can also be additional data, this is not included in $flen + $flen = self::_GetInt2d($recordData, 4); + + // offset: 8; size: 2; 0=Global name, otherwise index to sheet (1-based) + $scope = self::_GetInt2d($recordData, 8); + + // offset: 14; size: var; Name (Unicode string without length field) + $string = self::_readUnicodeString(substr($recordData, 14), $nlen); + + // offset: var; size: $flen; formula data + $offset = 14 + $string['size']; + $formulaStructure = pack('v', $flen) . substr($recordData, $offset); + + try { + $formula = $this->_getFormulaFromStructure($formulaStructure); + } catch (Exception $e) { + $formula = ''; + } + + $this->_definedname[] = array( + 'isBuiltInName' => $isBuiltInName, + 'name' => $string['value'], + 'formula' => $formula, + 'scope' => $scope, + ); + } + } + + + /** + * Read MSODRAWINGGROUP record + */ + private function _readMsoDrawingGroup() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + + // get spliced record data + $splicedRecordData = $this->_getSplicedRecordData(); + $recordData = $splicedRecordData['recordData']; + + $this->_drawingGroupData .= $recordData; + } + + + /** + * SST - Shared String Table + * + * This record contains a list of all strings used anywhere + * in the workbook. Each string occurs only once. The + * workbook uses indexes into the list to reference the + * strings. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + **/ + private function _readSst() + { + // offset within (spliced) record data + $pos = 0; + + // get spliced record data + $splicedRecordData = $this->_getSplicedRecordData(); + + $recordData = $splicedRecordData['recordData']; + $spliceOffsets = $splicedRecordData['spliceOffsets']; + + // offset: 0; size: 4; total number of strings in the workbook + $pos += 4; + + // offset: 4; size: 4; number of following strings ($nm) + $nm = self::_GetInt4d($recordData, 4); + $pos += 4; + + // loop through the Unicode strings (16-bit length) + for ($i = 0; $i < $nm; ++$i) { + + // number of characters in the Unicode string + $numChars = self::_GetInt2d($recordData, $pos); + $pos += 2; + + // option flags + $optionFlags = ord($recordData{$pos}); + ++$pos; + + // bit: 0; mask: 0x01; 0 = compressed; 1 = uncompressed + $isCompressed = (($optionFlags & 0x01) == 0) ; + + // bit: 2; mask: 0x02; 0 = ordinary; 1 = Asian phonetic + $hasAsian = (($optionFlags & 0x04) != 0); + + // bit: 3; mask: 0x03; 0 = ordinary; 1 = Rich-Text + $hasRichText = (($optionFlags & 0x08) != 0); + + if ($hasRichText) { + // number of Rich-Text formatting runs + $formattingRuns = self::_GetInt2d($recordData, $pos); + $pos += 2; + } + + if ($hasAsian) { + // size of Asian phonetic setting + $extendedRunLength = self::_GetInt4d($recordData, $pos); + $pos += 4; + } + + // expected byte length of character array if not split + $len = ($isCompressed) ? $numChars : $numChars * 2; + + // look up limit position + foreach ($spliceOffsets as $spliceOffset) { + // it can happen that the string is empty, therefore we need + // <= and not just < + if ($pos <= $spliceOffset) { + $limitpos = $spliceOffset; + break; + } + } + + if ($pos + $len <= $limitpos) { + // character array is not split between records + + $retstr = substr($recordData, $pos, $len); + $pos += $len; + + } else { + // character array is split between records + + // first part of character array + $retstr = substr($recordData, $pos, $limitpos - $pos); + + $bytesRead = $limitpos - $pos; + + // remaining characters in Unicode string + $charsLeft = $numChars - (($isCompressed) ? $bytesRead : ($bytesRead / 2)); + + $pos = $limitpos; + + // keep reading the characters + while ($charsLeft > 0) { + + // look up next limit position, in case the string span more than one continue record + foreach ($spliceOffsets as $spliceOffset) { + if ($pos < $spliceOffset) { + $limitpos = $spliceOffset; + break; + } + } + + // repeated option flags + // OpenOffice.org documentation 5.21 + $option = ord($recordData{$pos}); + ++$pos; + + if ($isCompressed && ($option == 0)) { + // 1st fragment compressed + // this fragment compressed + $len = min($charsLeft, $limitpos - $pos); + $retstr .= substr($recordData, $pos, $len); + $charsLeft -= $len; + $isCompressed = true; + + } elseif (!$isCompressed && ($option != 0)) { + // 1st fragment uncompressed + // this fragment uncompressed + $len = min($charsLeft * 2, $limitpos - $pos); + $retstr .= substr($recordData, $pos, $len); + $charsLeft -= $len / 2; + $isCompressed = false; + + } elseif (!$isCompressed && ($option == 0)) { + // 1st fragment uncompressed + // this fragment compressed + $len = min($charsLeft, $limitpos - $pos); + for ($j = 0; $j < $len; ++$j) { + $retstr .= $recordData{$pos + $j} . chr(0); + } + $charsLeft -= $len; + $isCompressed = false; + + } else { + // 1st fragment compressed + // this fragment uncompressed + $newstr = ''; + for ($j = 0; $j < strlen($retstr); ++$j) { + $newstr .= $retstr[$j] . chr(0); + } + $retstr = $newstr; + $len = min($charsLeft * 2, $limitpos - $pos); + $retstr .= substr($recordData, $pos, $len); + $charsLeft -= $len / 2; + $isCompressed = false; + } + + $pos += $len; + } + } + + // convert to UTF-8 + $retstr = self::_encodeUTF16($retstr, $isCompressed); + + // read additional Rich-Text information, if any + $fmtRuns = array(); + if ($hasRichText) { + // list of formatting runs + for ($j = 0; $j < $formattingRuns; ++$j) { + // first formatted character; zero-based + $charPos = self::_GetInt2d($recordData, $pos + $j * 4); + + // index to font record + $fontIndex = self::_GetInt2d($recordData, $pos + 2 + $j * 4); + + $fmtRuns[] = array( + 'charPos' => $charPos, + 'fontIndex' => $fontIndex, + ); + } + $pos += 4 * $formattingRuns; + } + + // read additional Asian phonetics information, if any + if ($hasAsian) { + // For Asian phonetic settings, we skip the extended string data + $pos += $extendedRunLength; + } + + // store the shared sting + $this->_sst[] = array( + 'value' => $retstr, + 'fmtRuns' => $fmtRuns, + ); + } + + // _getSplicedRecordData() takes care of moving current position in data stream + } + + + /** + * Read PRINTGRIDLINES record + */ + private function _readPrintGridlines() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_version == self::XLS_BIFF8 && !$this->_readDataOnly) { + // offset: 0; size: 2; 0 = do not print sheet grid lines; 1 = print sheet gridlines + $printGridlines = (bool) self::_GetInt2d($recordData, 0); + $this->_phpSheet->setPrintGridlines($printGridlines); + } + } + + + /** + * Read DEFAULTROWHEIGHT record + */ + private function _readDefaultRowHeight() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; option flags + // offset: 2; size: 2; default height for unused rows, (twips 1/20 point) + $height = self::_GetInt2d($recordData, 2); + $this->_phpSheet->getDefaultRowDimension()->setRowHeight($height / 20); + } + + + /** + * Read SHEETPR record + */ + private function _readSheetPr() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2 + + // bit: 6; mask: 0x0040; 0 = outline buttons above outline group + $isSummaryBelow = (0x0040 & self::_GetInt2d($recordData, 0)) >> 6; + $this->_phpSheet->setShowSummaryBelow($isSummaryBelow); + + // bit: 7; mask: 0x0080; 0 = outline buttons left of outline group + $isSummaryRight = (0x0080 & self::_GetInt2d($recordData, 0)) >> 7; + $this->_phpSheet->setShowSummaryRight($isSummaryRight); + + // bit: 8; mask: 0x100; 0 = scale printout in percent, 1 = fit printout to number of pages + // this corresponds to radio button setting in page setup dialog in Excel + $this->_isFitToPages = (bool) ((0x0100 & self::_GetInt2d($recordData, 0)) >> 8); + } + + + /** + * Read HORIZONTALPAGEBREAKS record + */ + private function _readHorizontalPageBreaks() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_version == self::XLS_BIFF8 && !$this->_readDataOnly) { + + // offset: 0; size: 2; number of the following row index structures + $nm = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 6 * $nm; list of $nm row index structures + for ($i = 0; $i < $nm; ++$i) { + $r = self::_GetInt2d($recordData, 2 + 6 * $i); + $cf = self::_GetInt2d($recordData, 2 + 6 * $i + 2); + $cl = self::_GetInt2d($recordData, 2 + 6 * $i + 4); + + // not sure why two column indexes are necessary? + $this->_phpSheet->setBreakByColumnAndRow($cf, $r, PHPExcel_Worksheet::BREAK_ROW); + } + } + } + + + /** + * Read VERTICALPAGEBREAKS record + */ + private function _readVerticalPageBreaks() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_version == self::XLS_BIFF8 && !$this->_readDataOnly) { + // offset: 0; size: 2; number of the following column index structures + $nm = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 6 * $nm; list of $nm row index structures + for ($i = 0; $i < $nm; ++$i) { + $c = self::_GetInt2d($recordData, 2 + 6 * $i); + $rf = self::_GetInt2d($recordData, 2 + 6 * $i + 2); + $rl = self::_GetInt2d($recordData, 2 + 6 * $i + 4); + + // not sure why two row indexes are necessary? + $this->_phpSheet->setBreakByColumnAndRow($c, $rf, PHPExcel_Worksheet::BREAK_COLUMN); + } + } + } + + + /** + * Read HEADER record + */ + private function _readHeader() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: var + // realized that $recordData can be empty even when record exists + if ($recordData) { + if ($this->_version == self::XLS_BIFF8) { + $string = self::_readUnicodeStringLong($recordData); + } else { + $string = $this->_readByteStringShort($recordData); + } + + $this->_phpSheet->getHeaderFooter()->setOddHeader($string['value']); + $this->_phpSheet->getHeaderFooter()->setEvenHeader($string['value']); + } + } + } + + + /** + * Read FOOTER record + */ + private function _readFooter() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: var + // realized that $recordData can be empty even when record exists + if ($recordData) { + if ($this->_version == self::XLS_BIFF8) { + $string = self::_readUnicodeStringLong($recordData); + } else { + $string = $this->_readByteStringShort($recordData); + } + $this->_phpSheet->getHeaderFooter()->setOddFooter($string['value']); + $this->_phpSheet->getHeaderFooter()->setEvenFooter($string['value']); + } + } + } + + + /** + * Read HCENTER record + */ + private function _readHcenter() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; 0 = print sheet left aligned, 1 = print sheet centered horizontally + $isHorizontalCentered = (bool) self::_GetInt2d($recordData, 0); + + $this->_phpSheet->getPageSetup()->setHorizontalCentered($isHorizontalCentered); + } + } + + + /** + * Read VCENTER record + */ + private function _readVcenter() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; 0 = print sheet aligned at top page border, 1 = print sheet vertically centered + $isVerticalCentered = (bool) self::_GetInt2d($recordData, 0); + + $this->_phpSheet->getPageSetup()->setVerticalCentered($isVerticalCentered); + } + } + + + /** + * Read LEFTMARGIN record + */ + private function _readLeftMargin() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 8 + $this->_phpSheet->getPageMargins()->setLeft(self::_extractNumber($recordData)); + } + } + + + /** + * Read RIGHTMARGIN record + */ + private function _readRightMargin() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 8 + $this->_phpSheet->getPageMargins()->setRight(self::_extractNumber($recordData)); + } + } + + + /** + * Read TOPMARGIN record + */ + private function _readTopMargin() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 8 + $this->_phpSheet->getPageMargins()->setTop(self::_extractNumber($recordData)); + } + } + + + /** + * Read BOTTOMMARGIN record + */ + private function _readBottomMargin() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 8 + $this->_phpSheet->getPageMargins()->setBottom(self::_extractNumber($recordData)); + } + } + + + /** + * Read PAGESETUP record + */ + private function _readPageSetup() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; paper size + $paperSize = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; scaling factor + $scale = self::_GetInt2d($recordData, 2); + + // offset: 6; size: 2; fit worksheet width to this number of pages, 0 = use as many as needed + $fitToWidth = self::_GetInt2d($recordData, 6); + + // offset: 8; size: 2; fit worksheet height to this number of pages, 0 = use as many as needed + $fitToHeight = self::_GetInt2d($recordData, 8); + + // offset: 10; size: 2; option flags + + // bit: 1; mask: 0x0002; 0=landscape, 1=portrait + $isPortrait = (0x0002 & self::_GetInt2d($recordData, 10)) >> 1; + + // bit: 2; mask: 0x0004; 1= paper size, scaling factor, paper orient. not init + // when this bit is set, do not use flags for those properties + $isNotInit = (0x0004 & self::_GetInt2d($recordData, 10)) >> 2; + + if (!$isNotInit) { + $this->_phpSheet->getPageSetup()->setPaperSize($paperSize); + switch ($isPortrait) { + case 0: $this->_phpSheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE); break; + case 1: $this->_phpSheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT); break; + } + + $this->_phpSheet->getPageSetup()->setScale($scale, false); + $this->_phpSheet->getPageSetup()->setFitToPage((bool) $this->_isFitToPages); + $this->_phpSheet->getPageSetup()->setFitToWidth($fitToWidth, false); + $this->_phpSheet->getPageSetup()->setFitToHeight($fitToHeight, false); + } + + // offset: 16; size: 8; header margin (IEEE 754 floating-point value) + $marginHeader = self::_extractNumber(substr($recordData, 16, 8)); + $this->_phpSheet->getPageMargins()->setHeader($marginHeader); + + // offset: 24; size: 8; footer margin (IEEE 754 floating-point value) + $marginFooter = self::_extractNumber(substr($recordData, 24, 8)); + $this->_phpSheet->getPageMargins()->setFooter($marginFooter); + } + } + + + /** + * PROTECT - Sheet protection (BIFF2 through BIFF8) + * if this record is omitted, then it also means no sheet protection + */ + private function _readProtect() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_readDataOnly) { + return; + } + + // offset: 0; size: 2; + + // bit 0, mask 0x01; 1 = sheet is protected + $bool = (0x01 & self::_GetInt2d($recordData, 0)) >> 0; + $this->_phpSheet->getProtection()->setSheet((bool)$bool); + } + + + /** + * SCENPROTECT + */ + private function _readScenProtect() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_readDataOnly) { + return; + } + + // offset: 0; size: 2; + + // bit: 0, mask 0x01; 1 = scenarios are protected + $bool = (0x01 & self::_GetInt2d($recordData, 0)) >> 0; + + $this->_phpSheet->getProtection()->setScenarios((bool)$bool); + } + + + /** + * OBJECTPROTECT + */ + private function _readObjectProtect() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_readDataOnly) { + return; + } + + // offset: 0; size: 2; + + // bit: 0, mask 0x01; 1 = objects are protected + $bool = (0x01 & self::_GetInt2d($recordData, 0)) >> 0; + + $this->_phpSheet->getProtection()->setObjects((bool)$bool); + } + + + /** + * PASSWORD - Sheet protection (hashed) password (BIFF2 through BIFF8) + */ + private function _readPassword() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; 16-bit hash value of password + $password = strtoupper(dechex(self::_GetInt2d($recordData, 0))); // the hashed password + $this->_phpSheet->getProtection()->setPassword($password, true); + } + } + + + /** + * Read DEFCOLWIDTH record + */ + private function _readDefColWidth() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; default column width + $width = self::_GetInt2d($recordData, 0); + if ($width != 8) { + $this->_phpSheet->getDefaultColumnDimension()->setWidth($width); + } + } + + + /** + * Read COLINFO record + */ + private function _readColInfo() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; index to first column in range + $fc = self::_GetInt2d($recordData, 0); // first column index + + // offset: 2; size: 2; index to last column in range + $lc = self::_GetInt2d($recordData, 2); // first column index + + // offset: 4; size: 2; width of the column in 1/256 of the width of the zero character + $width = self::_GetInt2d($recordData, 4); + + // offset: 6; size: 2; index to XF record for default column formatting + $xfIndex = self::_GetInt2d($recordData, 6); + + // offset: 8; size: 2; option flags + + // bit: 0; mask: 0x0001; 1= columns are hidden + $isHidden = (0x0001 & self::_GetInt2d($recordData, 8)) >> 0; + + // bit: 10-8; mask: 0x0700; outline level of the columns (0 = no outline) + $level = (0x0700 & self::_GetInt2d($recordData, 8)) >> 8; + + // bit: 12; mask: 0x1000; 1 = collapsed + $isCollapsed = (0x1000 & self::_GetInt2d($recordData, 8)) >> 12; + + // offset: 10; size: 2; not used + + for ($i = $fc; $i <= $lc; ++$i) { + if ($lc == 255 || $lc == 256) { + $this->_phpSheet->getDefaultColumnDimension()->setWidth($width / 256); + break; + } + $this->_phpSheet->getColumnDimensionByColumn($i)->setWidth($width / 256); + $this->_phpSheet->getColumnDimensionByColumn($i)->setVisible(!$isHidden); + $this->_phpSheet->getColumnDimensionByColumn($i)->setOutlineLevel($level); + $this->_phpSheet->getColumnDimensionByColumn($i)->setCollapsed($isCollapsed); + $this->_phpSheet->getColumnDimensionByColumn($i)->setXfIndex($this->_mapCellXfIndex[$xfIndex]); + } + } + } + + + /** + * ROW + * + * This record contains the properties of a single row in a + * sheet. Rows and cells in a sheet are divided into blocks + * of 32 rows. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readRow() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; index of this row + $r = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; index to column of the first cell which is described by a cell record + + // offset: 4; size: 2; index to column of the last cell which is described by a cell record, increased by 1 + + // offset: 6; size: 2; + + // bit: 14-0; mask: 0x7FFF; height of the row, in twips = 1/20 of a point + $height = (0x7FFF & self::_GetInt2d($recordData, 6)) >> 0; + + // bit: 15: mask: 0x8000; 0 = row has custom height; 1= row has default height + $useDefaultHeight = (0x8000 & self::_GetInt2d($recordData, 6)) >> 15; + + if (!$useDefaultHeight) { + $this->_phpSheet->getRowDimension($r + 1)->setRowHeight($height / 20); + } + + // offset: 8; size: 2; not used + + // offset: 10; size: 2; not used in BIFF5-BIFF8 + + // offset: 12; size: 4; option flags and default row formatting + + // bit: 2-0: mask: 0x00000007; outline level of the row + $level = (0x00000007 & self::_GetInt4d($recordData, 12)) >> 0; + $this->_phpSheet->getRowDimension($r + 1)->setOutlineLevel($level); + + // bit: 4; mask: 0x00000010; 1 = outline group start or ends here... and is collapsed + $isCollapsed = (0x00000010 & self::_GetInt4d($recordData, 12)) >> 4; + $this->_phpSheet->getRowDimension($r + 1)->setCollapsed($isCollapsed); + + // bit: 5; mask: 0x00000020; 1 = row is hidden + $isHidden = (0x00000020 & self::_GetInt4d($recordData, 12)) >> 5; + $this->_phpSheet->getRowDimension($r + 1)->setVisible(!$isHidden); + + // bit: 7; mask: 0x00000080; 1 = row has explicit format + $hasExplicitFormat = (0x00000080 & self::_GetInt4d($recordData, 12)) >> 7; + + // bit: 27-16; mask: 0x0FFF0000; only applies when hasExplicitFormat = 1; index to XF record + $xfIndex = (0x0FFF0000 & self::_GetInt4d($recordData, 12)) >> 16; + + if ($hasExplicitFormat) { + $this->_phpSheet->getRowDimension($r + 1)->setXfIndex($this->_mapCellXfIndex[$xfIndex]); + } + } + } + + + /** + * Read RK record + * This record represents a cell that contains an RK value + * (encoded integer or floating-point value). If a + * floating-point value cannot be encoded to an RK value, + * a NUMBER record will be written. This record replaces the + * record INTEGER written in BIFF2. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readRk() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; index to column + $column = self::_GetInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + // Read cell? + if (($this->getReadFilter() !== NULL) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->_phpSheet->getTitle()) ) { + // offset: 4; size: 2; index to XF record + $xfIndex = self::_GetInt2d($recordData, 4); + + // offset: 6; size: 4; RK value + $rknum = self::_GetInt4d($recordData, 6); + $numValue = self::_GetIEEE754($rknum); + + $cell = $this->_phpSheet->getCell($columnString . ($row + 1)); + if (!$this->_readDataOnly) { + // add style information + $cell->setXfIndex($this->_mapCellXfIndex[$xfIndex]); + } + + // add cell + $cell->setValueExplicit($numValue, PHPExcel_Cell_DataType::TYPE_NUMERIC); + } + } + + + /** + * Read LABELSST record + * This record represents a cell that contains a string. It + * replaces the LABEL record and RSTRING record used in + * BIFF2-BIFF5. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readLabelSst() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; index to column + $column = self::_GetInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + // Read cell? + if (($this->getReadFilter() !== NULL) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->_phpSheet->getTitle()) ) { + // offset: 4; size: 2; index to XF record + $xfIndex = self::_GetInt2d($recordData, 4); + + // offset: 6; size: 4; index to SST record + $index = self::_GetInt4d($recordData, 6); + + // add cell + if (($fmtRuns = $this->_sst[$index]['fmtRuns']) && !$this->_readDataOnly) { + // then we should treat as rich text + $richText = new PHPExcel_RichText(); + $charPos = 0; + $sstCount = count($this->_sst[$index]['fmtRuns']); + for ($i = 0; $i <= $sstCount; ++$i) { + if (isset($fmtRuns[$i])) { + $text = PHPExcel_Shared_String::Substring($this->_sst[$index]['value'], $charPos, $fmtRuns[$i]['charPos'] - $charPos); + $charPos = $fmtRuns[$i]['charPos']; + } else { + $text = PHPExcel_Shared_String::Substring($this->_sst[$index]['value'], $charPos, PHPExcel_Shared_String::CountCharacters($this->_sst[$index]['value'])); + } + + if (PHPExcel_Shared_String::CountCharacters($text) > 0) { + if ($i == 0) { // first text run, no style + $richText->createText($text); + } else { + $textRun = $richText->createTextRun($text); + if (isset($fmtRuns[$i - 1])) { + if ($fmtRuns[$i - 1]['fontIndex'] < 4) { + $fontIndex = $fmtRuns[$i - 1]['fontIndex']; + } else { + // this has to do with that index 4 is omitted in all BIFF versions for some strange reason + // check the OpenOffice documentation of the FONT record + $fontIndex = $fmtRuns[$i - 1]['fontIndex'] - 1; + } + $textRun->setFont(clone $this->_objFonts[$fontIndex]); + } + } + } + } + $cell = $this->_phpSheet->getCell($columnString . ($row + 1)); + $cell->setValueExplicit($richText, PHPExcel_Cell_DataType::TYPE_STRING); + } else { + $cell = $this->_phpSheet->getCell($columnString . ($row + 1)); + $cell->setValueExplicit($this->_sst[$index]['value'], PHPExcel_Cell_DataType::TYPE_STRING); + } + + if (!$this->_readDataOnly) { + // add style information + $cell->setXfIndex($this->_mapCellXfIndex[$xfIndex]); + } + } + } + + + /** + * Read MULRK record + * This record represents a cell range containing RK value + * cells. All cells are located in the same row. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readMulRk() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; index to first column + $colFirst = self::_GetInt2d($recordData, 2); + + // offset: var; size: 2; index to last column + $colLast = self::_GetInt2d($recordData, $length - 2); + $columns = $colLast - $colFirst + 1; + + // offset within record data + $offset = 4; + + for ($i = 0; $i < $columns; ++$i) { + $columnString = PHPExcel_Cell::stringFromColumnIndex($colFirst + $i); + + // Read cell? + if (($this->getReadFilter() !== NULL) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->_phpSheet->getTitle()) ) { + + // offset: var; size: 2; index to XF record + $xfIndex = self::_GetInt2d($recordData, $offset); + + // offset: var; size: 4; RK value + $numValue = self::_GetIEEE754(self::_GetInt4d($recordData, $offset + 2)); + $cell = $this->_phpSheet->getCell($columnString . ($row + 1)); + if (!$this->_readDataOnly) { + // add style + $cell->setXfIndex($this->_mapCellXfIndex[$xfIndex]); + } + + // add cell value + $cell->setValueExplicit($numValue, PHPExcel_Cell_DataType::TYPE_NUMERIC); + } + + $offset += 6; + } + } + + + /** + * Read NUMBER record + * This record represents a cell that contains a + * floating-point value. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readNumber() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::_GetInt2d($recordData, 0); + + // offset: 2; size 2; index to column + $column = self::_GetInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + // Read cell? + if (($this->getReadFilter() !== NULL) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->_phpSheet->getTitle()) ) { + // offset 4; size: 2; index to XF record + $xfIndex = self::_GetInt2d($recordData, 4); + + $numValue = self::_extractNumber(substr($recordData, 6, 8)); + + $cell = $this->_phpSheet->getCell($columnString . ($row + 1)); + if (!$this->_readDataOnly) { + // add cell style + $cell->setXfIndex($this->_mapCellXfIndex[$xfIndex]); + } + + // add cell value + $cell->setValueExplicit($numValue, PHPExcel_Cell_DataType::TYPE_NUMERIC); + } + } + + + /** + * Read FORMULA record + perhaps a following STRING record if formula result is a string + * This record contains the token array and the result of a + * formula cell. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readFormula() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; row index + $row = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; col index + $column = self::_GetInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + // offset: 20: size: variable; formula structure + $formulaStructure = substr($recordData, 20); + + // offset: 14: size: 2; option flags, recalculate always, recalculate on open etc. + $options = self::_GetInt2d($recordData, 14); + + // bit: 0; mask: 0x0001; 1 = recalculate always + // bit: 1; mask: 0x0002; 1 = calculate on open + // bit: 2; mask: 0x0008; 1 = part of a shared formula + $isPartOfSharedFormula = (bool) (0x0008 & $options); + + // WARNING: + // We can apparently not rely on $isPartOfSharedFormula. Even when $isPartOfSharedFormula = true + // the formula data may be ordinary formula data, therefore we need to check + // explicitly for the tExp token (0x01) + $isPartOfSharedFormula = $isPartOfSharedFormula && ord($formulaStructure{2}) == 0x01; + + if ($isPartOfSharedFormula) { + // part of shared formula which means there will be a formula with a tExp token and nothing else + // get the base cell, grab tExp token + $baseRow = self::_GetInt2d($formulaStructure, 3); + $baseCol = self::_GetInt2d($formulaStructure, 5); + $this->_baseCell = PHPExcel_Cell::stringFromColumnIndex($baseCol). ($baseRow + 1); + } + + // Read cell? + if (($this->getReadFilter() !== NULL) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->_phpSheet->getTitle()) ) { + + if ($isPartOfSharedFormula) { + // formula is added to this cell after the sheet has been read + $this->_sharedFormulaParts[$columnString . ($row + 1)] = $this->_baseCell; + } + + // offset: 16: size: 4; not used + + // offset: 4; size: 2; XF index + $xfIndex = self::_GetInt2d($recordData, 4); + + // offset: 6; size: 8; result of the formula + if ( (ord($recordData{6}) == 0) + && (ord($recordData{12}) == 255) + && (ord($recordData{13}) == 255) ) { + + // String formula. Result follows in appended STRING record + $dataType = PHPExcel_Cell_DataType::TYPE_STRING; + + // read possible SHAREDFMLA record + $code = self::_GetInt2d($this->_data, $this->_pos); + if ($code == self::XLS_Type_SHAREDFMLA) { + $this->_readSharedFmla(); + } + + // read STRING record + $value = $this->_readString(); + + } elseif ((ord($recordData{6}) == 1) + && (ord($recordData{12}) == 255) + && (ord($recordData{13}) == 255)) { + + // Boolean formula. Result is in +2; 0=false, 1=true + $dataType = PHPExcel_Cell_DataType::TYPE_BOOL; + $value = (bool) ord($recordData{8}); + + } elseif ((ord($recordData{6}) == 2) + && (ord($recordData{12}) == 255) + && (ord($recordData{13}) == 255)) { + + // Error formula. Error code is in +2 + $dataType = PHPExcel_Cell_DataType::TYPE_ERROR; + $value = self::_mapErrorCode(ord($recordData{8})); + + } elseif ((ord($recordData{6}) == 3) + && (ord($recordData{12}) == 255) + && (ord($recordData{13}) == 255)) { + + // Formula result is a null string + $dataType = PHPExcel_Cell_DataType::TYPE_NULL; + $value = ''; + + } else { + + // forumla result is a number, first 14 bytes like _NUMBER record + $dataType = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $value = self::_extractNumber(substr($recordData, 6, 8)); + + } + + $cell = $this->_phpSheet->getCell($columnString . ($row + 1)); + if (!$this->_readDataOnly) { + // add cell style + $cell->setXfIndex($this->_mapCellXfIndex[$xfIndex]); + } + + // store the formula + if (!$isPartOfSharedFormula) { + // not part of shared formula + // add cell value. If we can read formula, populate with formula, otherwise just used cached value + try { + if ($this->_version != self::XLS_BIFF8) { + throw new Exception('Not BIFF8. Can only read BIFF8 formulas'); + } + $formula = $this->_getFormulaFromStructure($formulaStructure); // get formula in human language + $cell->setValueExplicit('=' . $formula, PHPExcel_Cell_DataType::TYPE_FORMULA); + + } catch (Exception $e) { + $cell->setValueExplicit($value, $dataType); + } + } else { + if ($this->_version == self::XLS_BIFF8) { + // do nothing at this point, formula id added later in the code + } else { + $cell->setValueExplicit($value, $dataType); + } + } + + // store the cached calculated value + $cell->setCalculatedValue($value); + } + } + + + /** + * Read a SHAREDFMLA record. This function just stores the binary shared formula in the reader, + * which usually contains relative references. + * These will be used to construct the formula in each shared formula part after the sheet is read. + */ + private function _readSharedFmla() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0, size: 6; cell range address of the area used by the shared formula, not used for anything + $cellRange = substr($recordData, 0, 6); + $cellRange = $this->_readBIFF5CellRangeAddressFixed($cellRange); // note: even BIFF8 uses BIFF5 syntax + + // offset: 6, size: 1; not used + + // offset: 7, size: 1; number of existing FORMULA records for this shared formula + $no = ord($recordData{7}); + + // offset: 8, size: var; Binary token array of the shared formula + $formula = substr($recordData, 8); + + // at this point we only store the shared formula for later use + $this->_sharedFormulas[$this->_baseCell] = $formula; + + } + + + /** + * Read a STRING record from current stream position and advance the stream pointer to next record + * This record is used for storing result from FORMULA record when it is a string, and + * it occurs directly after the FORMULA record + * + * @return string The string contents as UTF-8 + */ + private function _readString() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_version == self::XLS_BIFF8) { + $string = self::_readUnicodeStringLong($recordData); + $value = $string['value']; + } else { + $string = $this->_readByteStringLong($recordData); + $value = $string['value']; + } + + return $value; + } + + + /** + * Read BOOLERR record + * This record represents a Boolean value or error value + * cell. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readBoolErr() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; row index + $row = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; column index + $column = self::_GetInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + // Read cell? + if (($this->getReadFilter() !== NULL) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->_phpSheet->getTitle()) ) { + // offset: 4; size: 2; index to XF record + $xfIndex = self::_GetInt2d($recordData, 4); + + // offset: 6; size: 1; the boolean value or error value + $boolErr = ord($recordData{6}); + + // offset: 7; size: 1; 0=boolean; 1=error + $isError = ord($recordData{7}); + + $cell = $this->_phpSheet->getCell($columnString . ($row + 1)); + switch ($isError) { + case 0: // boolean + $value = (bool) $boolErr; + + // add cell value + $cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_BOOL); + break; + + case 1: // error type + $value = self::_mapErrorCode($boolErr); + + // add cell value + $cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_ERROR); + break; + } + + if (!$this->_readDataOnly) { + // add cell style + $cell->setXfIndex($this->_mapCellXfIndex[$xfIndex]); + } + } + } + + + /** + * Read MULBLANK record + * This record represents a cell range of empty cells. All + * cells are located in the same row + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readMulBlank() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; index to first column + $fc = self::_GetInt2d($recordData, 2); + + // offset: 4; size: 2 x nc; list of indexes to XF records + // add style information + if (!$this->_readDataOnly) { + for ($i = 0; $i < $length / 2 - 3; ++$i) { + $columnString = PHPExcel_Cell::stringFromColumnIndex($fc + $i); + + // Read cell? + if (($this->getReadFilter() !== NULL) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->_phpSheet->getTitle()) ) { + $xfIndex = self::_GetInt2d($recordData, 4 + 2 * $i); + $this->_phpSheet->getCell($columnString . ($row + 1))->setXfIndex($this->_mapCellXfIndex[$xfIndex]); + } + } + } + + // offset: 6; size 2; index to last column (not needed) + } + + + /** + * Read LABEL record + * This record represents a cell that contains a string. In + * BIFF8 it is usually replaced by the LABELSST record. + * Excel still uses this record, if it copies unformatted + * text cells to the clipboard. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readLabel() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; index to row + $row = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; index to column + $column = self::_GetInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($column); + + // Read cell? + if (($this->getReadFilter() !== NULL) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->_phpSheet->getTitle()) ) { + // offset: 4; size: 2; XF index + $xfIndex = self::_GetInt2d($recordData, 4); + + // add cell value + // todo: what if string is very long? continue record + if ($this->_version == self::XLS_BIFF8) { + $string = self::_readUnicodeStringLong(substr($recordData, 6)); + $value = $string['value']; + } else { + $string = $this->_readByteStringLong(substr($recordData, 6)); + $value = $string['value']; + } + $cell = $this->_phpSheet->getCell($columnString . ($row + 1)); + $cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_STRING); + + if (!$this->_readDataOnly) { + // add cell style + $cell->setXfIndex($this->_mapCellXfIndex[$xfIndex]); + } + } + } + + + /** + * Read BLANK record + */ + private function _readBlank() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; row index + $row = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; col index + $col = self::_GetInt2d($recordData, 2); + $columnString = PHPExcel_Cell::stringFromColumnIndex($col); + + // Read cell? + if (($this->getReadFilter() !== NULL) && $this->getReadFilter()->readCell($columnString, $row + 1, $this->_phpSheet->getTitle()) ) { + // offset: 4; size: 2; XF index + $xfIndex = self::_GetInt2d($recordData, 4); + + // add style information + if (!$this->_readDataOnly) { + $this->_phpSheet->getCell($columnString . ($row + 1))->setXfIndex($this->_mapCellXfIndex[$xfIndex]); + } + } + + } + + + /** + * Read MSODRAWING record + */ + private function _readMsoDrawing() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + + // get spliced record data + $splicedRecordData = $this->_getSplicedRecordData(); + $recordData = $splicedRecordData['recordData']; + + $this->_drawingData .= $recordData; + } + + + /** + * Read OBJ record + */ + private function _readObj() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_readDataOnly || $this->_version != self::XLS_BIFF8) { + return; + } + + // recordData consists of an array of subrecords looking like this: + // ft: 2 bytes; ftCmo type (0x15) + // cb: 2 bytes; size in bytes of ftCmo data + // ot: 2 bytes; Object Type + // id: 2 bytes; Object id number + // grbit: 2 bytes; Option Flags + // data: var; subrecord data + + // for now, we are just interested in the second subrecord containing the object type + $ftCmoType = self::_GetInt2d($recordData, 0); + $cbCmoSize = self::_GetInt2d($recordData, 2); + $otObjType = self::_GetInt2d($recordData, 4); + $idObjID = self::_GetInt2d($recordData, 6); + $grbitOpts = self::_GetInt2d($recordData, 6); + + $this->_objs[] = array( + 'ftCmoType' => $ftCmoType, + 'cbCmoSize' => $cbCmoSize, + 'otObjType' => $otObjType, + 'idObjID' => $idObjID, + 'grbitOpts' => $grbitOpts + ); + $this->textObjRef = $idObjID; + +// echo '<b>_readObj()</b><br />'; +// var_dump(end($this->_objs)); +// echo '<br />'; + } + + + /** + * Read WINDOW2 record + */ + private function _readWindow2() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; option flags + $options = self::_GetInt2d($recordData, 0); + + // bit: 1; mask: 0x0002; 0 = do not show gridlines, 1 = show gridlines + $showGridlines = (bool) ((0x0002 & $options) >> 1); + $this->_phpSheet->setShowGridlines($showGridlines); + + // bit: 2; mask: 0x0004; 0 = do not show headers, 1 = show headers + $showRowColHeaders = (bool) ((0x0004 & $options) >> 2); + $this->_phpSheet->setShowRowColHeaders($showRowColHeaders); + + // bit: 3; mask: 0x0008; 0 = panes are not frozen, 1 = panes are frozen + $this->_frozen = (bool) ((0x0008 & $options) >> 3); + + // bit: 6; mask: 0x0040; 0 = columns from left to right, 1 = columns from right to left + $this->_phpSheet->setRightToLeft((bool)((0x0040 & $options) >> 6)); + + // bit: 10; mask: 0x0400; 0 = sheet not active, 1 = sheet active + $isActive = (bool) ((0x0400 & $options) >> 10); + if ($isActive) { + $this->_phpExcel->setActiveSheetIndex($this->_phpExcel->getIndex($this->_phpSheet)); + } + } + + + /** + * Read SCL record + */ + private function _readScl() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // offset: 0; size: 2; numerator of the view magnification + $numerator = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; numerator of the view magnification + $denumerator = self::_GetInt2d($recordData, 2); + + // set the zoom scale (in percent) + $this->_phpSheet->getSheetView()->setZoomScale($numerator * 100 / $denumerator); + } + + + /** + * Read PANE record + */ + private function _readPane() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; position of vertical split + $px = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; position of horizontal split + $py = self::_GetInt2d($recordData, 2); + + if ($this->_frozen) { + // frozen panes + $this->_phpSheet->freezePane(PHPExcel_Cell::stringFromColumnIndex($px) . ($py + 1)); + } else { + // unfrozen panes; split windows; not supported by PHPExcel core + } + } + } + + + /** + * Read SELECTION record. There is one such record for each pane in the sheet. + */ + private function _readSelection() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 1; pane identifier + $paneId = ord($recordData{0}); + + // offset: 1; size: 2; index to row of the active cell + $r = self::_GetInt2d($recordData, 1); + + // offset: 3; size: 2; index to column of the active cell + $c = self::_GetInt2d($recordData, 3); + + // offset: 5; size: 2; index into the following cell range list to the + // entry that contains the active cell + $index = self::_GetInt2d($recordData, 5); + + // offset: 7; size: var; cell range address list containing all selected cell ranges + $data = substr($recordData, 7); + $cellRangeAddressList = $this->_readBIFF5CellRangeAddressList($data); // note: also BIFF8 uses BIFF5 syntax + + $selectedCells = $cellRangeAddressList['cellRangeAddresses'][0]; + + // first row '1' + last row '16384' indicates that full column is selected (apparently also in BIFF8!) + if (preg_match('/^([A-Z]+1\:[A-Z]+)16384$/', $selectedCells)) { + $selectedCells = preg_replace('/^([A-Z]+1\:[A-Z]+)16384$/', '${1}1048576', $selectedCells); + } + + // first row '1' + last row '65536' indicates that full column is selected + if (preg_match('/^([A-Z]+1\:[A-Z]+)65536$/', $selectedCells)) { + $selectedCells = preg_replace('/^([A-Z]+1\:[A-Z]+)65536$/', '${1}1048576', $selectedCells); + } + + // first column 'A' + last column 'IV' indicates that full row is selected + if (preg_match('/^(A[0-9]+\:)IV([0-9]+)$/', $selectedCells)) { + $selectedCells = preg_replace('/^(A[0-9]+\:)IV([0-9]+)$/', '${1}XFD${2}', $selectedCells); + } + + $this->_phpSheet->setSelectedCells($selectedCells); + } + } + + + private function _includeCellRangeFiltered($cellRangeAddress) + { + $includeCellRange = true; + if ($this->getReadFilter() !== NULL) { + $includeCellRange = false; + $rangeBoundaries = PHPExcel_Cell::getRangeBoundaries($cellRangeAddress); + $rangeBoundaries[1][0]++; + for ($row = $rangeBoundaries[0][1]; $row <= $rangeBoundaries[1][1]; $row++) { + for ($column = $rangeBoundaries[0][0]; $column != $rangeBoundaries[1][0]; $column++) { + if ($this->getReadFilter()->readCell($column, $row, $this->_phpSheet->getTitle())) { + $includeCellRange = true; + break 2; + } + } + } + } + return $includeCellRange; + } + + + /** + * MERGEDCELLS + * + * This record contains the addresses of merged cell ranges + * in the current sheet. + * + * -- "OpenOffice.org's Documentation of the Microsoft + * Excel File Format" + */ + private function _readMergedCells() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_version == self::XLS_BIFF8 && !$this->_readDataOnly) { + $cellRangeAddressList = $this->_readBIFF8CellRangeAddressList($recordData); + foreach ($cellRangeAddressList['cellRangeAddresses'] as $cellRangeAddress) { + if ((strpos($cellRangeAddress,':') !== FALSE) && + ($this->_includeCellRangeFiltered($cellRangeAddress))) { + $this->_phpSheet->mergeCells($cellRangeAddress); + } + } + } + } + + + /** + * Read HYPERLINK record + */ + private function _readHyperLink() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer forward to next record + $this->_pos += 4 + $length; + + if (!$this->_readDataOnly) { + // offset: 0; size: 8; cell range address of all cells containing this hyperlink + try { + $cellRange = $this->_readBIFF8CellRangeAddressFixed($recordData, 0, 8); + } catch (Exception $e) { + return; + } + + // offset: 8, size: 16; GUID of StdLink + + // offset: 24, size: 4; unknown value + + // offset: 28, size: 4; option flags + + // bit: 0; mask: 0x00000001; 0 = no link or extant, 1 = file link or URL + $isFileLinkOrUrl = (0x00000001 & self::_GetInt2d($recordData, 28)) >> 0; + + // bit: 1; mask: 0x00000002; 0 = relative path, 1 = absolute path or URL + $isAbsPathOrUrl = (0x00000001 & self::_GetInt2d($recordData, 28)) >> 1; + + // bit: 2 (and 4); mask: 0x00000014; 0 = no description + $hasDesc = (0x00000014 & self::_GetInt2d($recordData, 28)) >> 2; + + // bit: 3; mask: 0x00000008; 0 = no text, 1 = has text + $hasText = (0x00000008 & self::_GetInt2d($recordData, 28)) >> 3; + + // bit: 7; mask: 0x00000080; 0 = no target frame, 1 = has target frame + $hasFrame = (0x00000080 & self::_GetInt2d($recordData, 28)) >> 7; + + // bit: 8; mask: 0x00000100; 0 = file link or URL, 1 = UNC path (inc. server name) + $isUNC = (0x00000100 & self::_GetInt2d($recordData, 28)) >> 8; + + // offset within record data + $offset = 32; + + if ($hasDesc) { + // offset: 32; size: var; character count of description text + $dl = self::_GetInt4d($recordData, 32); + // offset: 36; size: var; character array of description text, no Unicode string header, always 16-bit characters, zero terminated + $desc = self::_encodeUTF16(substr($recordData, 36, 2 * ($dl - 1)), false); + $offset += 4 + 2 * $dl; + } + if ($hasFrame) { + $fl = self::_GetInt4d($recordData, $offset); + $offset += 4 + 2 * $fl; + } + + // detect type of hyperlink (there are 4 types) + $hyperlinkType = null; + + if ($isUNC) { + $hyperlinkType = 'UNC'; + } else if (!$isFileLinkOrUrl) { + $hyperlinkType = 'workbook'; + } else if (ord($recordData{$offset}) == 0x03) { + $hyperlinkType = 'local'; + } else if (ord($recordData{$offset}) == 0xE0) { + $hyperlinkType = 'URL'; + } + + switch ($hyperlinkType) { + case 'URL': + // section 5.58.2: Hyperlink containing a URL + // e.g. http://example.org/index.php + + // offset: var; size: 16; GUID of URL Moniker + $offset += 16; + // offset: var; size: 4; size (in bytes) of character array of the URL including trailing zero word + $us = self::_GetInt4d($recordData, $offset); + $offset += 4; + // offset: var; size: $us; character array of the URL, no Unicode string header, always 16-bit characters, zero-terminated + $url = self::_encodeUTF16(substr($recordData, $offset, $us - 2), false); + $url .= $hasText ? '#' : ''; + $offset += $us; + break; + + case 'local': + // section 5.58.3: Hyperlink to local file + // examples: + // mydoc.txt + // ../../somedoc.xls#Sheet!A1 + + // offset: var; size: 16; GUI of File Moniker + $offset += 16; + + // offset: var; size: 2; directory up-level count. + $upLevelCount = self::_GetInt2d($recordData, $offset); + $offset += 2; + + // offset: var; size: 4; character count of the shortened file path and name, including trailing zero word + $sl = self::_GetInt4d($recordData, $offset); + $offset += 4; + + // offset: var; size: sl; character array of the shortened file path and name in 8.3-DOS-format (compressed Unicode string) + $shortenedFilePath = substr($recordData, $offset, $sl); + $shortenedFilePath = self::_encodeUTF16($shortenedFilePath, true); + $shortenedFilePath = substr($shortenedFilePath, 0, -1); // remove trailing zero + + $offset += $sl; + + // offset: var; size: 24; unknown sequence + $offset += 24; + + // extended file path + // offset: var; size: 4; size of the following file link field including string lenth mark + $sz = self::_GetInt4d($recordData, $offset); + $offset += 4; + + // only present if $sz > 0 + if ($sz > 0) { + // offset: var; size: 4; size of the character array of the extended file path and name + $xl = self::_GetInt4d($recordData, $offset); + $offset += 4; + + // offset: var; size 2; unknown + $offset += 2; + + // offset: var; size $xl; character array of the extended file path and name. + $extendedFilePath = substr($recordData, $offset, $xl); + $extendedFilePath = self::_encodeUTF16($extendedFilePath, false); + $offset += $xl; + } + + // construct the path + $url = str_repeat('..\\', $upLevelCount); + $url .= ($sz > 0) ? + $extendedFilePath : $shortenedFilePath; // use extended path if available + $url .= $hasText ? '#' : ''; + + break; + + + case 'UNC': + // section 5.58.4: Hyperlink to a File with UNC (Universal Naming Convention) Path + // todo: implement + return; + + case 'workbook': + // section 5.58.5: Hyperlink to the Current Workbook + // e.g. Sheet2!B1:C2, stored in text mark field + $url = 'sheet://'; + break; + + default: + return; + + } + + if ($hasText) { + // offset: var; size: 4; character count of text mark including trailing zero word + $tl = self::_GetInt4d($recordData, $offset); + $offset += 4; + // offset: var; size: var; character array of the text mark without the # sign, no Unicode header, always 16-bit characters, zero-terminated + $text = self::_encodeUTF16(substr($recordData, $offset, 2 * ($tl - 1)), false); + $url .= $text; + } + + // apply the hyperlink to all the relevant cells + foreach (PHPExcel_Cell::extractAllCellReferencesInRange($cellRange) as $coordinate) { + $this->_phpSheet->getCell($coordinate)->getHyperLink()->setUrl($url); + } + } + } + + + /** + * Read DATAVALIDATIONS record + */ + private function _readDataValidations() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer forward to next record + $this->_pos += 4 + $length; + } + + + /** + * Read DATAVALIDATION record + */ + private function _readDataValidation() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer forward to next record + $this->_pos += 4 + $length; + + if ($this->_readDataOnly) { + return; + } + + // offset: 0; size: 4; Options + $options = self::_GetInt4d($recordData, 0); + + // bit: 0-3; mask: 0x0000000F; type + $type = (0x0000000F & $options) >> 0; + switch ($type) { + case 0x00: $type = PHPExcel_Cell_DataValidation::TYPE_NONE; break; + case 0x01: $type = PHPExcel_Cell_DataValidation::TYPE_WHOLE; break; + case 0x02: $type = PHPExcel_Cell_DataValidation::TYPE_DECIMAL; break; + case 0x03: $type = PHPExcel_Cell_DataValidation::TYPE_LIST; break; + case 0x04: $type = PHPExcel_Cell_DataValidation::TYPE_DATE; break; + case 0x05: $type = PHPExcel_Cell_DataValidation::TYPE_TIME; break; + case 0x06: $type = PHPExcel_Cell_DataValidation::TYPE_TEXTLENGTH; break; + case 0x07: $type = PHPExcel_Cell_DataValidation::TYPE_CUSTOM; break; + } + + // bit: 4-6; mask: 0x00000070; error type + $errorStyle = (0x00000070 & $options) >> 4; + switch ($errorStyle) { + case 0x00: $errorStyle = PHPExcel_Cell_DataValidation::STYLE_STOP; break; + case 0x01: $errorStyle = PHPExcel_Cell_DataValidation::STYLE_WARNING; break; + case 0x02: $errorStyle = PHPExcel_Cell_DataValidation::STYLE_INFORMATION; break; + } + + // bit: 7; mask: 0x00000080; 1= formula is explicit (only applies to list) + // I have only seen cases where this is 1 + $explicitFormula = (0x00000080 & $options) >> 7; + + // bit: 8; mask: 0x00000100; 1= empty cells allowed + $allowBlank = (0x00000100 & $options) >> 8; + + // bit: 9; mask: 0x00000200; 1= suppress drop down arrow in list type validity + $suppressDropDown = (0x00000200 & $options) >> 9; + + // bit: 18; mask: 0x00040000; 1= show prompt box if cell selected + $showInputMessage = (0x00040000 & $options) >> 18; + + // bit: 19; mask: 0x00080000; 1= show error box if invalid values entered + $showErrorMessage = (0x00080000 & $options) >> 19; + + // bit: 20-23; mask: 0x00F00000; condition operator + $operator = (0x00F00000 & $options) >> 20; + switch ($operator) { + case 0x00: $operator = PHPExcel_Cell_DataValidation::OPERATOR_BETWEEN ; break; + case 0x01: $operator = PHPExcel_Cell_DataValidation::OPERATOR_NOTBETWEEN ; break; + case 0x02: $operator = PHPExcel_Cell_DataValidation::OPERATOR_EQUAL ; break; + case 0x03: $operator = PHPExcel_Cell_DataValidation::OPERATOR_NOTEQUAL ; break; + case 0x04: $operator = PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHAN ; break; + case 0x05: $operator = PHPExcel_Cell_DataValidation::OPERATOR_LESSTHAN ; break; + case 0x06: $operator = PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHANOREQUAL; break; + case 0x07: $operator = PHPExcel_Cell_DataValidation::OPERATOR_LESSTHANOREQUAL ; break; + } + + // offset: 4; size: var; title of the prompt box + $offset = 4; + $string = self::_readUnicodeStringLong(substr($recordData, $offset)); + $promptTitle = $string['value'] !== chr(0) ? + $string['value'] : ''; + $offset += $string['size']; + + // offset: var; size: var; title of the error box + $string = self::_readUnicodeStringLong(substr($recordData, $offset)); + $errorTitle = $string['value'] !== chr(0) ? + $string['value'] : ''; + $offset += $string['size']; + + // offset: var; size: var; text of the prompt box + $string = self::_readUnicodeStringLong(substr($recordData, $offset)); + $prompt = $string['value'] !== chr(0) ? + $string['value'] : ''; + $offset += $string['size']; + + // offset: var; size: var; text of the error box + $string = self::_readUnicodeStringLong(substr($recordData, $offset)); + $error = $string['value'] !== chr(0) ? + $string['value'] : ''; + $offset += $string['size']; + + // offset: var; size: 2; size of the formula data for the first condition + $sz1 = self::_GetInt2d($recordData, $offset); + $offset += 2; + + // offset: var; size: 2; not used + $offset += 2; + + // offset: var; size: $sz1; formula data for first condition (without size field) + $formula1 = substr($recordData, $offset, $sz1); + $formula1 = pack('v', $sz1) . $formula1; // prepend the length + try { + $formula1 = $this->_getFormulaFromStructure($formula1); + + // in list type validity, null characters are used as item separators + if ($type == PHPExcel_Cell_DataValidation::TYPE_LIST) { + $formula1 = str_replace(chr(0), ',', $formula1); + } + } catch (Exception $e) { + return; + } + $offset += $sz1; + + // offset: var; size: 2; size of the formula data for the first condition + $sz2 = self::_GetInt2d($recordData, $offset); + $offset += 2; + + // offset: var; size: 2; not used + $offset += 2; + + // offset: var; size: $sz2; formula data for second condition (without size field) + $formula2 = substr($recordData, $offset, $sz2); + $formula2 = pack('v', $sz2) . $formula2; // prepend the length + try { + $formula2 = $this->_getFormulaFromStructure($formula2); + } catch (Exception $e) { + return; + } + $offset += $sz2; + + // offset: var; size: var; cell range address list with + $cellRangeAddressList = $this->_readBIFF8CellRangeAddressList(substr($recordData, $offset)); + $cellRangeAddresses = $cellRangeAddressList['cellRangeAddresses']; + + foreach ($cellRangeAddresses as $cellRange) { + $stRange = $this->_phpSheet->shrinkRangeToFit($cellRange); + $stRange = PHPExcel_Cell::extractAllCellReferencesInRange($stRange); + foreach ($stRange as $coordinate) { + $objValidation = $this->_phpSheet->getCell($coordinate)->getDataValidation(); + $objValidation->setType($type); + $objValidation->setErrorStyle($errorStyle); + $objValidation->setAllowBlank((bool)$allowBlank); + $objValidation->setShowInputMessage((bool)$showInputMessage); + $objValidation->setShowErrorMessage((bool)$showErrorMessage); + $objValidation->setShowDropDown(!$suppressDropDown); + $objValidation->setOperator($operator); + $objValidation->setErrorTitle($errorTitle); + $objValidation->setError($error); + $objValidation->setPromptTitle($promptTitle); + $objValidation->setPrompt($prompt); + $objValidation->setFormula1($formula1); + $objValidation->setFormula2($formula2); + } + } + + } + + + /** + * Read SHEETLAYOUT record. Stores sheet tab color information. + */ + private function _readSheetLayout() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // local pointer in record data + $offset = 0; + + if (!$this->_readDataOnly) { + // offset: 0; size: 2; repeated record identifier 0x0862 + + // offset: 2; size: 10; not used + + // offset: 12; size: 4; size of record data + // Excel 2003 uses size of 0x14 (documented), Excel 2007 uses size of 0x28 (not documented?) + $sz = self::_GetInt4d($recordData, 12); + + switch ($sz) { + case 0x14: + // offset: 16; size: 2; color index for sheet tab + $colorIndex = self::_GetInt2d($recordData, 16); + $color = self::_readColor($colorIndex,$this->_palette,$this->_version); + $this->_phpSheet->getTabColor()->setRGB($color['rgb']); + break; + + case 0x28: + // TODO: Investigate structure for .xls SHEETLAYOUT record as saved by MS Office Excel 2007 + return; + break; + } + } + } + + + /** + * Read SHEETPROTECTION record (FEATHEADR) + */ + private function _readSheetProtection() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + if ($this->_readDataOnly) { + return; + } + + // offset: 0; size: 2; repeated record header + + // offset: 2; size: 2; FRT cell reference flag (=0 currently) + + // offset: 4; size: 8; Currently not used and set to 0 + + // offset: 12; size: 2; Shared feature type index (2=Enhanced Protetion, 4=SmartTag) + $isf = self::_GetInt2d($recordData, 12); + if ($isf != 2) { + return; + } + + // offset: 14; size: 1; =1 since this is a feat header + + // offset: 15; size: 4; size of rgbHdrSData + + // rgbHdrSData, assume "Enhanced Protection" + // offset: 19; size: 2; option flags + $options = self::_GetInt2d($recordData, 19); + + // bit: 0; mask 0x0001; 1 = user may edit objects, 0 = users must not edit objects + $bool = (0x0001 & $options) >> 0; + $this->_phpSheet->getProtection()->setObjects(!$bool); + + // bit: 1; mask 0x0002; edit scenarios + $bool = (0x0002 & $options) >> 1; + $this->_phpSheet->getProtection()->setScenarios(!$bool); + + // bit: 2; mask 0x0004; format cells + $bool = (0x0004 & $options) >> 2; + $this->_phpSheet->getProtection()->setFormatCells(!$bool); + + // bit: 3; mask 0x0008; format columns + $bool = (0x0008 & $options) >> 3; + $this->_phpSheet->getProtection()->setFormatColumns(!$bool); + + // bit: 4; mask 0x0010; format rows + $bool = (0x0010 & $options) >> 4; + $this->_phpSheet->getProtection()->setFormatRows(!$bool); + + // bit: 5; mask 0x0020; insert columns + $bool = (0x0020 & $options) >> 5; + $this->_phpSheet->getProtection()->setInsertColumns(!$bool); + + // bit: 6; mask 0x0040; insert rows + $bool = (0x0040 & $options) >> 6; + $this->_phpSheet->getProtection()->setInsertRows(!$bool); + + // bit: 7; mask 0x0080; insert hyperlinks + $bool = (0x0080 & $options) >> 7; + $this->_phpSheet->getProtection()->setInsertHyperlinks(!$bool); + + // bit: 8; mask 0x0100; delete columns + $bool = (0x0100 & $options) >> 8; + $this->_phpSheet->getProtection()->setDeleteColumns(!$bool); + + // bit: 9; mask 0x0200; delete rows + $bool = (0x0200 & $options) >> 9; + $this->_phpSheet->getProtection()->setDeleteRows(!$bool); + + // bit: 10; mask 0x0400; select locked cells + $bool = (0x0400 & $options) >> 10; + $this->_phpSheet->getProtection()->setSelectLockedCells(!$bool); + + // bit: 11; mask 0x0800; sort cell range + $bool = (0x0800 & $options) >> 11; + $this->_phpSheet->getProtection()->setSort(!$bool); + + // bit: 12; mask 0x1000; auto filter + $bool = (0x1000 & $options) >> 12; + $this->_phpSheet->getProtection()->setAutoFilter(!$bool); + + // bit: 13; mask 0x2000; pivot tables + $bool = (0x2000 & $options) >> 13; + $this->_phpSheet->getProtection()->setPivotTables(!$bool); + + // bit: 14; mask 0x4000; select unlocked cells + $bool = (0x4000 & $options) >> 14; + $this->_phpSheet->getProtection()->setSelectUnlockedCells(!$bool); + + // offset: 21; size: 2; not used + } + + + /** + * Read RANGEPROTECTION record + * Reading of this record is based on Microsoft Office Excel 97-2000 Binary File Format Specification, + * where it is referred to as FEAT record + */ + private function _readRangeProtection() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // move stream pointer to next record + $this->_pos += 4 + $length; + + // local pointer in record data + $offset = 0; + + if (!$this->_readDataOnly) { + $offset += 12; + + // offset: 12; size: 2; shared feature type, 2 = enhanced protection, 4 = smart tag + $isf = self::_GetInt2d($recordData, 12); + if ($isf != 2) { + // we only read FEAT records of type 2 + return; + } + $offset += 2; + + $offset += 5; + + // offset: 19; size: 2; count of ref ranges this feature is on + $cref = self::_GetInt2d($recordData, 19); + $offset += 2; + + $offset += 6; + + // offset: 27; size: 8 * $cref; list of cell ranges (like in hyperlink record) + $cellRanges = array(); + for ($i = 0; $i < $cref; ++$i) { + try { + $cellRange = $this->_readBIFF8CellRangeAddressFixed(substr($recordData, 27 + 8 * $i, 8)); + } catch (Exception $e) { + return; + } + $cellRanges[] = $cellRange; + $offset += 8; + } + + // offset: var; size: var; variable length of feature specific data + $rgbFeat = substr($recordData, $offset); + $offset += 4; + + // offset: var; size: 4; the encrypted password (only 16-bit although field is 32-bit) + $wPassword = self::_GetInt4d($recordData, $offset); + $offset += 4; + + // Apply range protection to sheet + if ($cellRanges) { + $this->_phpSheet->protectCells(implode(' ', $cellRanges), strtoupper(dechex($wPassword)), true); + } + } + } + + + /** + * Read IMDATA record + */ + private function _readImData() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + + // get spliced record data + $splicedRecordData = $this->_getSplicedRecordData(); + $recordData = $splicedRecordData['recordData']; + + // UNDER CONSTRUCTION + + // offset: 0; size: 2; image format + $cf = self::_GetInt2d($recordData, 0); + + // offset: 2; size: 2; environment from which the file was written + $env = self::_GetInt2d($recordData, 2); + + // offset: 4; size: 4; length of the image data + $lcb = self::_GetInt4d($recordData, 4); + + // offset: 8; size: var; image data + $iData = substr($recordData, 8); + + switch ($cf) { + case 0x09: // Windows bitmap format + // BITMAPCOREINFO + // 1. BITMAPCOREHEADER + // offset: 0; size: 4; bcSize, Specifies the number of bytes required by the structure + $bcSize = self::_GetInt4d($iData, 0); +// var_dump($bcSize); + + // offset: 4; size: 2; bcWidth, specifies the width of the bitmap, in pixels + $bcWidth = self::_GetInt2d($iData, 4); +// var_dump($bcWidth); + + // offset: 6; size: 2; bcHeight, specifies the height of the bitmap, in pixels. + $bcHeight = self::_GetInt2d($iData, 6); +// var_dump($bcHeight); + $ih = imagecreatetruecolor($bcWidth, $bcHeight); + + // offset: 8; size: 2; bcPlanes, specifies the number of planes for the target device. This value must be 1 + + // offset: 10; size: 2; bcBitCount specifies the number of bits-per-pixel. This value must be 1, 4, 8, or 24 + $bcBitCount = self::_GetInt2d($iData, 10); +// var_dump($bcBitCount); + + $rgbString = substr($iData, 12); + $rgbTriples = array(); + while (strlen($rgbString) > 0) { + $rgbTriples[] = unpack('Cb/Cg/Cr', $rgbString); + $rgbString = substr($rgbString, 3); + } + $x = 0; + $y = 0; + foreach ($rgbTriples as $i => $rgbTriple) { + $color = imagecolorallocate($ih, $rgbTriple['r'], $rgbTriple['g'], $rgbTriple['b']); + imagesetpixel($ih, $x, $bcHeight - 1 - $y, $color); + $x = ($x + 1) % $bcWidth; + $y = $y + floor(($x + 1) / $bcWidth); + } + //imagepng($ih, 'image.png'); + + $drawing = new PHPExcel_Worksheet_Drawing(); + $drawing->setPath($filename); + $drawing->setWorksheet($this->_phpSheet); + + break; + + case 0x02: // Windows metafile or Macintosh PICT format + case 0x0e: // native format + default; + break; + + } + + // _getSplicedRecordData() takes care of moving current position in data stream + } + + + /** + * Read a free CONTINUE record. Free CONTINUE record may be a camouflaged MSODRAWING record + * When MSODRAWING data on a sheet exceeds 8224 bytes, CONTINUE records are used instead. Undocumented. + * In this case, we must treat the CONTINUE record as a MSODRAWING record + */ + private function _readContinue() + { + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $recordData = substr($this->_data, $this->_pos + 4, $length); + + // check if we are reading drawing data + // this is in case a free CONTINUE record occurs in other circumstances we are unaware of + if ($this->_drawingData == '') { + // move stream pointer to next record + $this->_pos += 4 + $length; + + return; + } + + // check if record data is at least 4 bytes long, otherwise there is no chance this is MSODRAWING data + if ($length < 4) { + // move stream pointer to next record + $this->_pos += 4 + $length; + + return; + } + + // dirty check to see if CONTINUE record could be a camouflaged MSODRAWING record + // look inside CONTINUE record to see if it looks like a part of an Escher stream + // we know that Escher stream may be split at least at + // 0xF003 MsofbtSpgrContainer + // 0xF004 MsofbtSpContainer + // 0xF00D MsofbtClientTextbox + $validSplitPoints = array(0xF003, 0xF004, 0xF00D); // add identifiers if we find more + + $splitPoint = self::_GetInt2d($recordData, 2); + if (in_array($splitPoint, $validSplitPoints)) { + // get spliced record data (and move pointer to next record) + $splicedRecordData = $this->_getSplicedRecordData(); + $this->_drawingData .= $splicedRecordData['recordData']; + + return; + } + + // move stream pointer to next record + $this->_pos += 4 + $length; + + } + + + /** + * Reads a record from current position in data stream and continues reading data as long as CONTINUE + * records are found. Splices the record data pieces and returns the combined string as if record data + * is in one piece. + * Moves to next current position in data stream to start of next record different from a CONtINUE record + * + * @return array + */ + private function _getSplicedRecordData() + { + $data = ''; + $spliceOffsets = array(); + + $i = 0; + $spliceOffsets[0] = 0; + + do { + ++$i; + + // offset: 0; size: 2; identifier + $identifier = self::_GetInt2d($this->_data, $this->_pos); + // offset: 2; size: 2; length + $length = self::_GetInt2d($this->_data, $this->_pos + 2); + $data .= substr($this->_data, $this->_pos + 4, $length); + + $spliceOffsets[$i] = $spliceOffsets[$i - 1] + $length; + + $this->_pos += 4 + $length; + $nextIdentifier = self::_GetInt2d($this->_data, $this->_pos); + } + while ($nextIdentifier == self::XLS_Type_CONTINUE); + + $splicedData = array( + 'recordData' => $data, + 'spliceOffsets' => $spliceOffsets, + ); + + return $splicedData; + + } + + + /** + * Convert formula structure into human readable Excel formula like 'A3+A5*5' + * + * @param string $formulaStructure The complete binary data for the formula + * @param string $baseCell Base cell, only needed when formula contains tRefN tokens, e.g. with shared formulas + * @return string Human readable formula + */ + private function _getFormulaFromStructure($formulaStructure, $baseCell = 'A1') + { + // offset: 0; size: 2; size of the following formula data + $sz = self::_GetInt2d($formulaStructure, 0); + + // offset: 2; size: sz + $formulaData = substr($formulaStructure, 2, $sz); + + // for debug: dump the formula data + //echo '<xmp>'; + //echo 'size: ' . $sz . "\n"; + //echo 'the entire formula data: '; + //Debug::dump($formulaData); + //echo "\n----\n"; + + // offset: 2 + sz; size: variable (optional) + if (strlen($formulaStructure) > 2 + $sz) { + $additionalData = substr($formulaStructure, 2 + $sz); + + // for debug: dump the additional data + //echo 'the entire additional data: '; + //Debug::dump($additionalData); + //echo "\n----\n"; + + } else { + $additionalData = ''; + } + + return $this->_getFormulaFromData($formulaData, $additionalData, $baseCell); + } + + + /** + * Take formula data and additional data for formula and return human readable formula + * + * @param string $formulaData The binary data for the formula itself + * @param string $additionalData Additional binary data going with the formula + * @param string $baseCell Base cell, only needed when formula contains tRefN tokens, e.g. with shared formulas + * @return string Human readable formula + */ + private function _getFormulaFromData($formulaData, $additionalData = '', $baseCell = 'A1') + { + // start parsing the formula data + $tokens = array(); + + while (strlen($formulaData) > 0 and $token = $this->_getNextToken($formulaData, $baseCell)) { + $tokens[] = $token; + $formulaData = substr($formulaData, $token['size']); + + // for debug: dump the token + //var_dump($token); + } + + $formulaString = $this->_createFormulaFromTokens($tokens, $additionalData); + + return $formulaString; + } + + + /** + * Take array of tokens together with additional data for formula and return human readable formula + * + * @param array $tokens + * @param array $additionalData Additional binary data going with the formula + * @param string $baseCell Base cell, only needed when formula contains tRefN tokens, e.g. with shared formulas + * @return string Human readable formula + */ + private function _createFormulaFromTokens($tokens, $additionalData) + { + // empty formula? + if (empty($tokens)) { + return ''; + } + + $formulaStrings = array(); + foreach ($tokens as $token) { + // initialize spaces + $space0 = isset($space0) ? $space0 : ''; // spaces before next token, not tParen + $space1 = isset($space1) ? $space1 : ''; // carriage returns before next token, not tParen + $space2 = isset($space2) ? $space2 : ''; // spaces before opening parenthesis + $space3 = isset($space3) ? $space3 : ''; // carriage returns before opening parenthesis + $space4 = isset($space4) ? $space4 : ''; // spaces before closing parenthesis + $space5 = isset($space5) ? $space5 : ''; // carriage returns before closing parenthesis + + switch ($token['name']) { + case 'tAdd': // addition + case 'tConcat': // addition + case 'tDiv': // division + case 'tEQ': // equality + case 'tGE': // greater than or equal + case 'tGT': // greater than + case 'tIsect': // intersection + case 'tLE': // less than or equal + case 'tList': // less than or equal + case 'tLT': // less than + case 'tMul': // multiplication + case 'tNE': // multiplication + case 'tPower': // power + case 'tRange': // range + case 'tSub': // subtraction + $op2 = array_pop($formulaStrings); + $op1 = array_pop($formulaStrings); + $formulaStrings[] = "$op1$space1$space0{$token['data']}$op2"; + unset($space0, $space1); + break; + case 'tUplus': // unary plus + case 'tUminus': // unary minus + $op = array_pop($formulaStrings); + $formulaStrings[] = "$space1$space0{$token['data']}$op"; + unset($space0, $space1); + break; + case 'tPercent': // percent sign + $op = array_pop($formulaStrings); + $formulaStrings[] = "$op$space1$space0{$token['data']}"; + unset($space0, $space1); + break; + case 'tAttrVolatile': // indicates volatile function + case 'tAttrIf': + case 'tAttrSkip': + case 'tAttrChoose': + // token is only important for Excel formula evaluator + // do nothing + break; + case 'tAttrSpace': // space / carriage return + // space will be used when next token arrives, do not alter formulaString stack + switch ($token['data']['spacetype']) { + case 'type0': + $space0 = str_repeat(' ', $token['data']['spacecount']); + break; + case 'type1': + $space1 = str_repeat("\n", $token['data']['spacecount']); + break; + case 'type2': + $space2 = str_repeat(' ', $token['data']['spacecount']); + break; + case 'type3': + $space3 = str_repeat("\n", $token['data']['spacecount']); + break; + case 'type4': + $space4 = str_repeat(' ', $token['data']['spacecount']); + break; + case 'type5': + $space5 = str_repeat("\n", $token['data']['spacecount']); + break; + } + break; + case 'tAttrSum': // SUM function with one parameter + $op = array_pop($formulaStrings); + $formulaStrings[] = "{$space1}{$space0}SUM($op)"; + unset($space0, $space1); + break; + case 'tFunc': // function with fixed number of arguments + case 'tFuncV': // function with variable number of arguments + if ($token['data']['function'] != '') { + // normal function + $ops = array(); // array of operators + for ($i = 0; $i < $token['data']['args']; ++$i) { + $ops[] = array_pop($formulaStrings); + } + $ops = array_reverse($ops); + $formulaStrings[] = "$space1$space0{$token['data']['function']}(" . implode(',', $ops) . ")"; + unset($space0, $space1); + } else { + // add-in function + $ops = array(); // array of operators + for ($i = 0; $i < $token['data']['args'] - 1; ++$i) { + $ops[] = array_pop($formulaStrings); + } + $ops = array_reverse($ops); + $function = array_pop($formulaStrings); + $formulaStrings[] = "$space1$space0$function(" . implode(',', $ops) . ")"; + unset($space0, $space1); + } + break; + case 'tParen': // parenthesis + $expression = array_pop($formulaStrings); + $formulaStrings[] = "$space3$space2($expression$space5$space4)"; + unset($space2, $space3, $space4, $space5); + break; + case 'tArray': // array constant + $constantArray = self::_readBIFF8ConstantArray($additionalData); + $formulaStrings[] = $space1 . $space0 . $constantArray['value']; + $additionalData = substr($additionalData, $constantArray['size']); // bite of chunk of additional data + unset($space0, $space1); + break; + case 'tMemArea': + // bite off chunk of additional data + $cellRangeAddressList = $this->_readBIFF8CellRangeAddressList($additionalData); + $additionalData = substr($additionalData, $cellRangeAddressList['size']); + $formulaStrings[] = "$space1$space0{$token['data']}"; + unset($space0, $space1); + break; + case 'tArea': // cell range address + case 'tBool': // boolean + case 'tErr': // error code + case 'tInt': // integer + case 'tMemErr': + case 'tMemFunc': + case 'tMissArg': + case 'tName': + case 'tNameX': + case 'tNum': // number + case 'tRef': // single cell reference + case 'tRef3d': // 3d cell reference + case 'tArea3d': // 3d cell range reference + case 'tRefN': + case 'tAreaN': + case 'tStr': // string + $formulaStrings[] = "$space1$space0{$token['data']}"; + unset($space0, $space1); + break; + } + } + $formulaString = $formulaStrings[0]; + + // for debug: dump the human readable formula + //echo '----' . "\n"; + //echo 'Formula: ' . $formulaString; + + return $formulaString; + } + + + /** + * Fetch next token from binary formula data + * + * @param string Formula data + * @param string $baseCell Base cell, only needed when formula contains tRefN tokens, e.g. with shared formulas + * @return array + * @throws Exception + */ + private function _getNextToken($formulaData, $baseCell = 'A1') + { + // offset: 0; size: 1; token id + $id = ord($formulaData[0]); // token id + $name = false; // initialize token name + + switch ($id) { + case 0x03: $name = 'tAdd'; $size = 1; $data = '+'; break; + case 0x04: $name = 'tSub'; $size = 1; $data = '-'; break; + case 0x05: $name = 'tMul'; $size = 1; $data = '*'; break; + case 0x06: $name = 'tDiv'; $size = 1; $data = '/'; break; + case 0x07: $name = 'tPower'; $size = 1; $data = '^'; break; + case 0x08: $name = 'tConcat'; $size = 1; $data = '&'; break; + case 0x09: $name = 'tLT'; $size = 1; $data = '<'; break; + case 0x0A: $name = 'tLE'; $size = 1; $data = '<='; break; + case 0x0B: $name = 'tEQ'; $size = 1; $data = '='; break; + case 0x0C: $name = 'tGE'; $size = 1; $data = '>='; break; + case 0x0D: $name = 'tGT'; $size = 1; $data = '>'; break; + case 0x0E: $name = 'tNE'; $size = 1; $data = '<>'; break; + case 0x0F: $name = 'tIsect'; $size = 1; $data = ' '; break; + case 0x10: $name = 'tList'; $size = 1; $data = ','; break; + case 0x11: $name = 'tRange'; $size = 1; $data = ':'; break; + case 0x12: $name = 'tUplus'; $size = 1; $data = '+'; break; + case 0x13: $name = 'tUminus'; $size = 1; $data = '-'; break; + case 0x14: $name = 'tPercent'; $size = 1; $data = '%'; break; + case 0x15: // parenthesis + $name = 'tParen'; + $size = 1; + $data = null; + break; + case 0x16: // missing argument + $name = 'tMissArg'; + $size = 1; + $data = ''; + break; + case 0x17: // string + $name = 'tStr'; + // offset: 1; size: var; Unicode string, 8-bit string length + $string = self::_readUnicodeStringShort(substr($formulaData, 1)); + $size = 1 + $string['size']; + $data = self::_UTF8toExcelDoubleQuoted($string['value']); + break; + case 0x19: // Special attribute + // offset: 1; size: 1; attribute type flags: + switch (ord($formulaData[1])) { + case 0x01: + $name = 'tAttrVolatile'; + $size = 4; + $data = null; + break; + case 0x02: + $name = 'tAttrIf'; + $size = 4; + $data = null; + break; + case 0x04: + $name = 'tAttrChoose'; + // offset: 2; size: 2; number of choices in the CHOOSE function ($nc, number of parameters decreased by 1) + $nc = self::_GetInt2d($formulaData, 2); + // offset: 4; size: 2 * $nc + // offset: 4 + 2 * $nc; size: 2 + $size = 2 * $nc + 6; + $data = null; + break; + case 0x08: + $name = 'tAttrSkip'; + $size = 4; + $data = null; + break; + case 0x10: + $name = 'tAttrSum'; + $size = 4; + $data = null; + break; + case 0x40: + case 0x41: + $name = 'tAttrSpace'; + $size = 4; + // offset: 2; size: 2; space type and position + switch (ord($formulaData[2])) { + case 0x00: + $spacetype = 'type0'; + break; + case 0x01: + $spacetype = 'type1'; + break; + case 0x02: + $spacetype = 'type2'; + break; + case 0x03: + $spacetype = 'type3'; + break; + case 0x04: + $spacetype = 'type4'; + break; + case 0x05: + $spacetype = 'type5'; + break; + default: + throw new Exception('Unrecognized space type in tAttrSpace token'); + break; + } + // offset: 3; size: 1; number of inserted spaces/carriage returns + $spacecount = ord($formulaData[3]); + + $data = array('spacetype' => $spacetype, 'spacecount' => $spacecount); + break; + default: + throw new Exception('Unrecognized attribute flag in tAttr token'); + break; + } + break; + case 0x1C: // error code + // offset: 1; size: 1; error code + $name = 'tErr'; + $size = 2; + $data = self::_mapErrorCode(ord($formulaData[1])); + break; + case 0x1D: // boolean + // offset: 1; size: 1; 0 = false, 1 = true; + $name = 'tBool'; + $size = 2; + $data = ord($formulaData[1]) ? 'TRUE' : 'FALSE'; + break; + case 0x1E: // integer + // offset: 1; size: 2; unsigned 16-bit integer + $name = 'tInt'; + $size = 3; + $data = self::_GetInt2d($formulaData, 1); + break; + case 0x1F: // number + // offset: 1; size: 8; + $name = 'tNum'; + $size = 9; + $data = self::_extractNumber(substr($formulaData, 1)); + $data = str_replace(',', '.', (string)$data); // in case non-English locale + break; + case 0x20: // array constant + case 0x40: + case 0x60: + // offset: 1; size: 7; not used + $name = 'tArray'; + $size = 8; + $data = null; + break; + case 0x21: // function with fixed number of arguments + case 0x41: + case 0x61: + $name = 'tFunc'; + $size = 3; + // offset: 1; size: 2; index to built-in sheet function + switch (self::_GetInt2d($formulaData, 1)) { + case 2: $function = 'ISNA'; $args = 1; break; + case 3: $function = 'ISERROR'; $args = 1; break; + case 10: $function = 'NA'; $args = 0; break; + case 15: $function = 'SIN'; $args = 1; break; + case 16: $function = 'COS'; $args = 1; break; + case 17: $function = 'TAN'; $args = 1; break; + case 18: $function = 'ATAN'; $args = 1; break; + case 19: $function = 'PI'; $args = 0; break; + case 20: $function = 'SQRT'; $args = 1; break; + case 21: $function = 'EXP'; $args = 1; break; + case 22: $function = 'LN'; $args = 1; break; + case 23: $function = 'LOG10'; $args = 1; break; + case 24: $function = 'ABS'; $args = 1; break; + case 25: $function = 'INT'; $args = 1; break; + case 26: $function = 'SIGN'; $args = 1; break; + case 27: $function = 'ROUND'; $args = 2; break; + case 30: $function = 'REPT'; $args = 2; break; + case 31: $function = 'MID'; $args = 3; break; + case 32: $function = 'LEN'; $args = 1; break; + case 33: $function = 'VALUE'; $args = 1; break; + case 34: $function = 'TRUE'; $args = 0; break; + case 35: $function = 'FALSE'; $args = 0; break; + case 38: $function = 'NOT'; $args = 1; break; + case 39: $function = 'MOD'; $args = 2; break; + case 40: $function = 'DCOUNT'; $args = 3; break; + case 41: $function = 'DSUM'; $args = 3; break; + case 42: $function = 'DAVERAGE'; $args = 3; break; + case 43: $function = 'DMIN'; $args = 3; break; + case 44: $function = 'DMAX'; $args = 3; break; + case 45: $function = 'DSTDEV'; $args = 3; break; + case 48: $function = 'TEXT'; $args = 2; break; + case 61: $function = 'MIRR'; $args = 3; break; + case 63: $function = 'RAND'; $args = 0; break; + case 65: $function = 'DATE'; $args = 3; break; + case 66: $function = 'TIME'; $args = 3; break; + case 67: $function = 'DAY'; $args = 1; break; + case 68: $function = 'MONTH'; $args = 1; break; + case 69: $function = 'YEAR'; $args = 1; break; + case 71: $function = 'HOUR'; $args = 1; break; + case 72: $function = 'MINUTE'; $args = 1; break; + case 73: $function = 'SECOND'; $args = 1; break; + case 74: $function = 'NOW'; $args = 0; break; + case 75: $function = 'AREAS'; $args = 1; break; + case 76: $function = 'ROWS'; $args = 1; break; + case 77: $function = 'COLUMNS'; $args = 1; break; + case 83: $function = 'TRANSPOSE'; $args = 1; break; + case 86: $function = 'TYPE'; $args = 1; break; + case 97: $function = 'ATAN2'; $args = 2; break; + case 98: $function = 'ASIN'; $args = 1; break; + case 99: $function = 'ACOS'; $args = 1; break; + case 105: $function = 'ISREF'; $args = 1; break; + case 111: $function = 'CHAR'; $args = 1; break; + case 112: $function = 'LOWER'; $args = 1; break; + case 113: $function = 'UPPER'; $args = 1; break; + case 114: $function = 'PROPER'; $args = 1; break; + case 117: $function = 'EXACT'; $args = 2; break; + case 118: $function = 'TRIM'; $args = 1; break; + case 119: $function = 'REPLACE'; $args = 4; break; + case 121: $function = 'CODE'; $args = 1; break; + case 126: $function = 'ISERR'; $args = 1; break; + case 127: $function = 'ISTEXT'; $args = 1; break; + case 128: $function = 'ISNUMBER'; $args = 1; break; + case 129: $function = 'ISBLANK'; $args = 1; break; + case 130: $function = 'T'; $args = 1; break; + case 131: $function = 'N'; $args = 1; break; + case 140: $function = 'DATEVALUE'; $args = 1; break; + case 141: $function = 'TIMEVALUE'; $args = 1; break; + case 142: $function = 'SLN'; $args = 3; break; + case 143: $function = 'SYD'; $args = 4; break; + case 162: $function = 'CLEAN'; $args = 1; break; + case 163: $function = 'MDETERM'; $args = 1; break; + case 164: $function = 'MINVERSE'; $args = 1; break; + case 165: $function = 'MMULT'; $args = 2; break; + case 184: $function = 'FACT'; $args = 1; break; + case 189: $function = 'DPRODUCT'; $args = 3; break; + case 190: $function = 'ISNONTEXT'; $args = 1; break; + case 195: $function = 'DSTDEVP'; $args = 3; break; + case 196: $function = 'DVARP'; $args = 3; break; + case 198: $function = 'ISLOGICAL'; $args = 1; break; + case 199: $function = 'DCOUNTA'; $args = 3; break; + case 207: $function = 'REPLACEB'; $args = 4; break; + case 210: $function = 'MIDB'; $args = 3; break; + case 211: $function = 'LENB'; $args = 1; break; + case 212: $function = 'ROUNDUP'; $args = 2; break; + case 213: $function = 'ROUNDDOWN'; $args = 2; break; + case 214: $function = 'ASC'; $args = 1; break; + case 215: $function = 'DBCS'; $args = 1; break; + case 221: $function = 'TODAY'; $args = 0; break; + case 229: $function = 'SINH'; $args = 1; break; + case 230: $function = 'COSH'; $args = 1; break; + case 231: $function = 'TANH'; $args = 1; break; + case 232: $function = 'ASINH'; $args = 1; break; + case 233: $function = 'ACOSH'; $args = 1; break; + case 234: $function = 'ATANH'; $args = 1; break; + case 235: $function = 'DGET'; $args = 3; break; + case 244: $function = 'INFO'; $args = 1; break; + case 252: $function = 'FREQUENCY'; $args = 2; break; + case 261: $function = 'ERROR.TYPE'; $args = 1; break; + case 271: $function = 'GAMMALN'; $args = 1; break; + case 273: $function = 'BINOMDIST'; $args = 4; break; + case 274: $function = 'CHIDIST'; $args = 2; break; + case 275: $function = 'CHIINV'; $args = 2; break; + case 276: $function = 'COMBIN'; $args = 2; break; + case 277: $function = 'CONFIDENCE'; $args = 3; break; + case 278: $function = 'CRITBINOM'; $args = 3; break; + case 279: $function = 'EVEN'; $args = 1; break; + case 280: $function = 'EXPONDIST'; $args = 3; break; + case 281: $function = 'FDIST'; $args = 3; break; + case 282: $function = 'FINV'; $args = 3; break; + case 283: $function = 'FISHER'; $args = 1; break; + case 284: $function = 'FISHERINV'; $args = 1; break; + case 285: $function = 'FLOOR'; $args = 2; break; + case 286: $function = 'GAMMADIST'; $args = 4; break; + case 287: $function = 'GAMMAINV'; $args = 3; break; + case 288: $function = 'CEILING'; $args = 2; break; + case 289: $function = 'HYPGEOMDIST'; $args = 4; break; + case 290: $function = 'LOGNORMDIST'; $args = 3; break; + case 291: $function = 'LOGINV'; $args = 3; break; + case 292: $function = 'NEGBINOMDIST'; $args = 3; break; + case 293: $function = 'NORMDIST'; $args = 4; break; + case 294: $function = 'NORMSDIST'; $args = 1; break; + case 295: $function = 'NORMINV'; $args = 3; break; + case 296: $function = 'NORMSINV'; $args = 1; break; + case 297: $function = 'STANDARDIZE'; $args = 3; break; + case 298: $function = 'ODD'; $args = 1; break; + case 299: $function = 'PERMUT'; $args = 2; break; + case 300: $function = 'POISSON'; $args = 3; break; + case 301: $function = 'TDIST'; $args = 3; break; + case 302: $function = 'WEIBULL'; $args = 4; break; + case 303: $function = 'SUMXMY2'; $args = 2; break; + case 304: $function = 'SUMX2MY2'; $args = 2; break; + case 305: $function = 'SUMX2PY2'; $args = 2; break; + case 306: $function = 'CHITEST'; $args = 2; break; + case 307: $function = 'CORREL'; $args = 2; break; + case 308: $function = 'COVAR'; $args = 2; break; + case 309: $function = 'FORECAST'; $args = 3; break; + case 310: $function = 'FTEST'; $args = 2; break; + case 311: $function = 'INTERCEPT'; $args = 2; break; + case 312: $function = 'PEARSON'; $args = 2; break; + case 313: $function = 'RSQ'; $args = 2; break; + case 314: $function = 'STEYX'; $args = 2; break; + case 315: $function = 'SLOPE'; $args = 2; break; + case 316: $function = 'TTEST'; $args = 4; break; + case 325: $function = 'LARGE'; $args = 2; break; + case 326: $function = 'SMALL'; $args = 2; break; + case 327: $function = 'QUARTILE'; $args = 2; break; + case 328: $function = 'PERCENTILE'; $args = 2; break; + case 331: $function = 'TRIMMEAN'; $args = 2; break; + case 332: $function = 'TINV'; $args = 2; break; + case 337: $function = 'POWER'; $args = 2; break; + case 342: $function = 'RADIANS'; $args = 1; break; + case 343: $function = 'DEGREES'; $args = 1; break; + case 346: $function = 'COUNTIF'; $args = 2; break; + case 347: $function = 'COUNTBLANK'; $args = 1; break; + case 350: $function = 'ISPMT'; $args = 4; break; + case 351: $function = 'DATEDIF'; $args = 3; break; + case 352: $function = 'DATESTRING'; $args = 1; break; + case 353: $function = 'NUMBERSTRING'; $args = 2; break; + case 360: $function = 'PHONETIC'; $args = 1; break; + case 368: $function = 'BAHTTEXT'; $args = 1; break; + default: + throw new Exception('Unrecognized function in formula'); + break; + } + $data = array('function' => $function, 'args' => $args); + break; + case 0x22: // function with variable number of arguments + case 0x42: + case 0x62: + $name = 'tFuncV'; + $size = 4; + // offset: 1; size: 1; number of arguments + $args = ord($formulaData[1]); + // offset: 2: size: 2; index to built-in sheet function + $index = self::_GetInt2d($formulaData, 2); + switch ($index) { + case 0: $function = 'COUNT'; break; + case 1: $function = 'IF'; break; + case 4: $function = 'SUM'; break; + case 5: $function = 'AVERAGE'; break; + case 6: $function = 'MIN'; break; + case 7: $function = 'MAX'; break; + case 8: $function = 'ROW'; break; + case 9: $function = 'COLUMN'; break; + case 11: $function = 'NPV'; break; + case 12: $function = 'STDEV'; break; + case 13: $function = 'DOLLAR'; break; + case 14: $function = 'FIXED'; break; + case 28: $function = 'LOOKUP'; break; + case 29: $function = 'INDEX'; break; + case 36: $function = 'AND'; break; + case 37: $function = 'OR'; break; + case 46: $function = 'VAR'; break; + case 49: $function = 'LINEST'; break; + case 50: $function = 'TREND'; break; + case 51: $function = 'LOGEST'; break; + case 52: $function = 'GROWTH'; break; + case 56: $function = 'PV'; break; + case 57: $function = 'FV'; break; + case 58: $function = 'NPER'; break; + case 59: $function = 'PMT'; break; + case 60: $function = 'RATE'; break; + case 62: $function = 'IRR'; break; + case 64: $function = 'MATCH'; break; + case 70: $function = 'WEEKDAY'; break; + case 78: $function = 'OFFSET'; break; + case 82: $function = 'SEARCH'; break; + case 100: $function = 'CHOOSE'; break; + case 101: $function = 'HLOOKUP'; break; + case 102: $function = 'VLOOKUP'; break; + case 109: $function = 'LOG'; break; + case 115: $function = 'LEFT'; break; + case 116: $function = 'RIGHT'; break; + case 120: $function = 'SUBSTITUTE'; break; + case 124: $function = 'FIND'; break; + case 125: $function = 'CELL'; break; + case 144: $function = 'DDB'; break; + case 148: $function = 'INDIRECT'; break; + case 167: $function = 'IPMT'; break; + case 168: $function = 'PPMT'; break; + case 169: $function = 'COUNTA'; break; + case 183: $function = 'PRODUCT'; break; + case 193: $function = 'STDEVP'; break; + case 194: $function = 'VARP'; break; + case 197: $function = 'TRUNC'; break; + case 204: $function = 'USDOLLAR'; break; + case 205: $function = 'FINDB'; break; + case 206: $function = 'SEARCHB'; break; + case 208: $function = 'LEFTB'; break; + case 209: $function = 'RIGHTB'; break; + case 216: $function = 'RANK'; break; + case 219: $function = 'ADDRESS'; break; + case 220: $function = 'DAYS360'; break; + case 222: $function = 'VDB'; break; + case 227: $function = 'MEDIAN'; break; + case 228: $function = 'SUMPRODUCT'; break; + case 247: $function = 'DB'; break; + case 255: $function = ''; break; + case 269: $function = 'AVEDEV'; break; + case 270: $function = 'BETADIST'; break; + case 272: $function = 'BETAINV'; break; + case 317: $function = 'PROB'; break; + case 318: $function = 'DEVSQ'; break; + case 319: $function = 'GEOMEAN'; break; + case 320: $function = 'HARMEAN'; break; + case 321: $function = 'SUMSQ'; break; + case 322: $function = 'KURT'; break; + case 323: $function = 'SKEW'; break; + case 324: $function = 'ZTEST'; break; + case 329: $function = 'PERCENTRANK'; break; + case 330: $function = 'MODE'; break; + case 336: $function = 'CONCATENATE'; break; + case 344: $function = 'SUBTOTAL'; break; + case 345: $function = 'SUMIF'; break; + case 354: $function = 'ROMAN'; break; + case 358: $function = 'GETPIVOTDATA'; break; + case 359: $function = 'HYPERLINK'; break; + case 361: $function = 'AVERAGEA'; break; + case 362: $function = 'MAXA'; break; + case 363: $function = 'MINA'; break; + case 364: $function = 'STDEVPA'; break; + case 365: $function = 'VARPA'; break; + case 366: $function = 'STDEVA'; break; + case 367: $function = 'VARA'; break; + default: + throw new Exception('Unrecognized function in formula'); + break; + } + $data = array('function' => $function, 'args' => $args); + break; + case 0x23: // index to defined name + case 0x43: + case 0x63: + $name = 'tName'; + $size = 5; + // offset: 1; size: 2; one-based index to definedname record + $definedNameIndex = self::_GetInt2d($formulaData, 1) - 1; + // offset: 2; size: 2; not used + $data = $this->_definedname[$definedNameIndex]['name']; + break; + case 0x24: // single cell reference e.g. A5 + case 0x44: + case 0x64: + $name = 'tRef'; + $size = 5; + $data = $this->_readBIFF8CellAddress(substr($formulaData, 1, 4)); + break; + case 0x25: // cell range reference to cells in the same sheet (2d) + case 0x45: + case 0x65: + $name = 'tArea'; + $size = 9; + $data = $this->_readBIFF8CellRangeAddress(substr($formulaData, 1, 8)); + break; + case 0x26: // Constant reference sub-expression + case 0x46: + case 0x66: + $name = 'tMemArea'; + // offset: 1; size: 4; not used + // offset: 5; size: 2; size of the following subexpression + $subSize = self::_GetInt2d($formulaData, 5); + $size = 7 + $subSize; + $data = $this->_getFormulaFromData(substr($formulaData, 7, $subSize)); + break; + case 0x27: // Deleted constant reference sub-expression + case 0x47: + case 0x67: + $name = 'tMemErr'; + // offset: 1; size: 4; not used + // offset: 5; size: 2; size of the following subexpression + $subSize = self::_GetInt2d($formulaData, 5); + $size = 7 + $subSize; + $data = $this->_getFormulaFromData(substr($formulaData, 7, $subSize)); + break; + case 0x29: // Variable reference sub-expression + case 0x49: + case 0x69: + $name = 'tMemFunc'; + // offset: 1; size: 2; size of the following sub-expression + $subSize = self::_GetInt2d($formulaData, 1); + $size = 3 + $subSize; + $data = $this->_getFormulaFromData(substr($formulaData, 3, $subSize)); + break; + + case 0x2C: // Relative 2d cell reference reference, used in shared formulas and some other places + case 0x4C: + case 0x6C: + $name = 'tRefN'; + $size = 5; + $data = $this->_readBIFF8CellAddressB(substr($formulaData, 1, 4), $baseCell); + break; + + case 0x2D: // Relative 2d range reference + case 0x4D: + case 0x6D: + $name = 'tAreaN'; + $size = 9; + $data = $this->_readBIFF8CellRangeAddressB(substr($formulaData, 1, 8), $baseCell); + break; + + case 0x39: // External name + case 0x59: + case 0x79: + $name = 'tNameX'; + $size = 7; + // offset: 1; size: 2; index to REF entry in EXTERNSHEET record + // offset: 3; size: 2; one-based index to DEFINEDNAME or EXTERNNAME record + $index = self::_GetInt2d($formulaData, 3); + // assume index is to EXTERNNAME record + $data = $this->_externalNames[$index - 1]['name']; + // offset: 5; size: 2; not used + break; + + case 0x3A: // 3d reference to cell + case 0x5A: + case 0x7A: + $name = 'tRef3d'; + $size = 7; + + try { + // offset: 1; size: 2; index to REF entry + $sheetRange = $this->_readSheetRangeByRefIndex(self::_GetInt2d($formulaData, 1)); + // offset: 3; size: 4; cell address + $cellAddress = $this->_readBIFF8CellAddress(substr($formulaData, 3, 4)); + + $data = "$sheetRange!$cellAddress"; + } catch (Exception $e) { + // deleted sheet reference + $data = '#REF!'; + } + + break; + case 0x3B: // 3d reference to cell range + case 0x5B: + case 0x7B: + $name = 'tArea3d'; + $size = 11; + + try { + // offset: 1; size: 2; index to REF entry + $sheetRange = $this->_readSheetRangeByRefIndex(self::_GetInt2d($formulaData, 1)); + // offset: 3; size: 8; cell address + $cellRangeAddress = $this->_readBIFF8CellRangeAddress(substr($formulaData, 3, 8)); + + $data = "$sheetRange!$cellRangeAddress"; + } catch (Exception $e) { + // deleted sheet reference + $data = '#REF!'; + } + + break; + // Unknown cases // don't know how to deal with + default: + throw new Exception('Unrecognized token ' . sprintf('%02X', $id) . ' in formula'); + break; + } + + return array( + 'id' => $id, + 'name' => $name, + 'size' => $size, + 'data' => $data, + ); + } + + + /** + * Reads a cell address in BIFF8 e.g. 'A2' or '$A$2' + * section 3.3.4 + * + * @param string $cellAddressStructure + * @return string + */ + private function _readBIFF8CellAddress($cellAddressStructure) + { + // offset: 0; size: 2; index to row (0... 65535) (or offset (-32768... 32767)) + $row = self::_GetInt2d($cellAddressStructure, 0) + 1; + + // offset: 2; size: 2; index to column or column offset + relative flags + + // bit: 7-0; mask 0x00FF; column index + $column = PHPExcel_Cell::stringFromColumnIndex(0x00FF & self::_GetInt2d($cellAddressStructure, 2)); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::_GetInt2d($cellAddressStructure, 2))) { + $column = '$' . $column; + } + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::_GetInt2d($cellAddressStructure, 2))) { + $row = '$' . $row; + } + + return $column . $row; + } + + + /** + * Reads a cell address in BIFF8 for shared formulas. Uses positive and negative values for row and column + * to indicate offsets from a base cell + * section 3.3.4 + * + * @param string $cellAddressStructure + * @param string $baseCell Base cell, only needed when formula contains tRefN tokens, e.g. with shared formulas + * @return string + */ + private function _readBIFF8CellAddressB($cellAddressStructure, $baseCell = 'A1') + { + list($baseCol, $baseRow) = PHPExcel_Cell::coordinateFromString($baseCell); + $baseCol = PHPExcel_Cell::columnIndexFromString($baseCol) - 1; + + // offset: 0; size: 2; index to row (0... 65535) (or offset (-32768... 32767)) + $rowIndex = self::_GetInt2d($cellAddressStructure, 0); + $row = self::_GetInt2d($cellAddressStructure, 0) + 1; + + // offset: 2; size: 2; index to column or column offset + relative flags + + // bit: 7-0; mask 0x00FF; column index + $colIndex = 0x00FF & self::_GetInt2d($cellAddressStructure, 2); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::_GetInt2d($cellAddressStructure, 2))) { + $column = PHPExcel_Cell::stringFromColumnIndex($colIndex); + $column = '$' . $column; + } else { + $colIndex = ($colIndex <= 127) ? $colIndex : $colIndex - 256; + $column = PHPExcel_Cell::stringFromColumnIndex($baseCol + $colIndex); + } + + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::_GetInt2d($cellAddressStructure, 2))) { + $row = '$' . $row; + } else { + $rowIndex = ($rowIndex <= 32767) ? $rowIndex : $rowIndex - 65536; + $row = $baseRow + $rowIndex; + } + + return $column . $row; + } + + + /** + * Reads a cell range address in BIFF5 e.g. 'A2:B6' or 'A1' + * always fixed range + * section 2.5.14 + * + * @param string $subData + * @return string + * @throws Exception + */ + private function _readBIFF5CellRangeAddressFixed($subData) + { + // offset: 0; size: 2; index to first row + $fr = self::_GetInt2d($subData, 0) + 1; + + // offset: 2; size: 2; index to last row + $lr = self::_GetInt2d($subData, 2) + 1; + + // offset: 4; size: 1; index to first column + $fc = ord($subData{4}); + + // offset: 5; size: 1; index to last column + $lc = ord($subData{5}); + + // check values + if ($fr > $lr || $fc > $lc) { + throw new Exception('Not a cell range address'); + } + + // column index to letter + $fc = PHPExcel_Cell::stringFromColumnIndex($fc); + $lc = PHPExcel_Cell::stringFromColumnIndex($lc); + + if ($fr == $lr and $fc == $lc) { + return "$fc$fr"; + } + return "$fc$fr:$lc$lr"; + } + + + /** + * Reads a cell range address in BIFF8 e.g. 'A2:B6' or 'A1' + * always fixed range + * section 2.5.14 + * + * @param string $subData + * @return string + * @throws Exception + */ + private function _readBIFF8CellRangeAddressFixed($subData) + { + // offset: 0; size: 2; index to first row + $fr = self::_GetInt2d($subData, 0) + 1; + + // offset: 2; size: 2; index to last row + $lr = self::_GetInt2d($subData, 2) + 1; + + // offset: 4; size: 2; index to first column + $fc = self::_GetInt2d($subData, 4); + + // offset: 6; size: 2; index to last column + $lc = self::_GetInt2d($subData, 6); + + // check values + if ($fr > $lr || $fc > $lc) { + throw new Exception('Not a cell range address'); + } + + // column index to letter + $fc = PHPExcel_Cell::stringFromColumnIndex($fc); + $lc = PHPExcel_Cell::stringFromColumnIndex($lc); + + if ($fr == $lr and $fc == $lc) { + return "$fc$fr"; + } + return "$fc$fr:$lc$lr"; + } + + + /** + * Reads a cell range address in BIFF8 e.g. 'A2:B6' or '$A$2:$B$6' + * there are flags indicating whether column/row index is relative + * section 3.3.4 + * + * @param string $subData + * @return string + */ + private function _readBIFF8CellRangeAddress($subData) + { + // todo: if cell range is just a single cell, should this funciton + // not just return e.g. 'A1' and not 'A1:A1' ? + + // offset: 0; size: 2; index to first row (0... 65535) (or offset (-32768... 32767)) + $fr = self::_GetInt2d($subData, 0) + 1; + + // offset: 2; size: 2; index to last row (0... 65535) (or offset (-32768... 32767)) + $lr = self::_GetInt2d($subData, 2) + 1; + + // offset: 4; size: 2; index to first column or column offset + relative flags + + // bit: 7-0; mask 0x00FF; column index + $fc = PHPExcel_Cell::stringFromColumnIndex(0x00FF & self::_GetInt2d($subData, 4)); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::_GetInt2d($subData, 4))) { + $fc = '$' . $fc; + } + + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::_GetInt2d($subData, 4))) { + $fr = '$' . $fr; + } + + // offset: 6; size: 2; index to last column or column offset + relative flags + + // bit: 7-0; mask 0x00FF; column index + $lc = PHPExcel_Cell::stringFromColumnIndex(0x00FF & self::_GetInt2d($subData, 6)); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::_GetInt2d($subData, 6))) { + $lc = '$' . $lc; + } + + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::_GetInt2d($subData, 6))) { + $lr = '$' . $lr; + } + + return "$fc$fr:$lc$lr"; + } + + + /** + * Reads a cell range address in BIFF8 for shared formulas. Uses positive and negative values for row and column + * to indicate offsets from a base cell + * section 3.3.4 + * + * @param string $subData + * @param string $baseCell Base cell + * @return string Cell range address + */ + private function _readBIFF8CellRangeAddressB($subData, $baseCell = 'A1') + { + list($baseCol, $baseRow) = PHPExcel_Cell::coordinateFromString($baseCell); + $baseCol = PHPExcel_Cell::columnIndexFromString($baseCol) - 1; + + // TODO: if cell range is just a single cell, should this funciton + // not just return e.g. 'A1' and not 'A1:A1' ? + + // offset: 0; size: 2; first row + $frIndex = self::_GetInt2d($subData, 0); // adjust below + + // offset: 2; size: 2; relative index to first row (0... 65535) should be treated as offset (-32768... 32767) + $lrIndex = self::_GetInt2d($subData, 2); // adjust below + + // offset: 4; size: 2; first column with relative/absolute flags + + // bit: 7-0; mask 0x00FF; column index + $fcIndex = 0x00FF & self::_GetInt2d($subData, 4); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::_GetInt2d($subData, 4))) { + // absolute column index + $fc = PHPExcel_Cell::stringFromColumnIndex($fcIndex); + $fc = '$' . $fc; + } else { + // column offset + $fcIndex = ($fcIndex <= 127) ? $fcIndex : $fcIndex - 256; + $fc = PHPExcel_Cell::stringFromColumnIndex($baseCol + $fcIndex); + } + + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::_GetInt2d($subData, 4))) { + // absolute row index + $fr = $frIndex + 1; + $fr = '$' . $fr; + } else { + // row offset + $frIndex = ($frIndex <= 32767) ? $frIndex : $frIndex - 65536; + $fr = $baseRow + $frIndex; + } + + // offset: 6; size: 2; last column with relative/absolute flags + + // bit: 7-0; mask 0x00FF; column index + $lcIndex = 0x00FF & self::_GetInt2d($subData, 6); + $lcIndex = ($lcIndex <= 127) ? $lcIndex : $lcIndex - 256; + $lc = PHPExcel_Cell::stringFromColumnIndex($baseCol + $lcIndex); + + // bit: 14; mask 0x4000; (1 = relative column index, 0 = absolute column index) + if (!(0x4000 & self::_GetInt2d($subData, 6))) { + // absolute column index + $lc = PHPExcel_Cell::stringFromColumnIndex($lcIndex); + $lc = '$' . $lc; + } else { + // column offset + $lcIndex = ($lcIndex <= 127) ? $lcIndex : $lcIndex - 256; + $lc = PHPExcel_Cell::stringFromColumnIndex($baseCol + $lcIndex); + } + + // bit: 15; mask 0x8000; (1 = relative row index, 0 = absolute row index) + if (!(0x8000 & self::_GetInt2d($subData, 6))) { + // absolute row index + $lr = $lrIndex + 1; + $lr = '$' . $lr; + } else { + // row offset + $lrIndex = ($lrIndex <= 32767) ? $lrIndex : $lrIndex - 65536; + $lr = $baseRow + $lrIndex; + } + + return "$fc$fr:$lc$lr"; + } + + + /** + * Read BIFF8 cell range address list + * section 2.5.15 + * + * @param string $subData + * @return array + */ + private function _readBIFF8CellRangeAddressList($subData) + { + $cellRangeAddresses = array(); + + // offset: 0; size: 2; number of the following cell range addresses + $nm = self::_GetInt2d($subData, 0); + + $offset = 2; + // offset: 2; size: 8 * $nm; list of $nm (fixed) cell range addresses + for ($i = 0; $i < $nm; ++$i) { + $cellRangeAddresses[] = $this->_readBIFF8CellRangeAddressFixed(substr($subData, $offset, 8)); + $offset += 8; + } + + return array( + 'size' => 2 + 8 * $nm, + 'cellRangeAddresses' => $cellRangeAddresses, + ); + } + + + /** + * Read BIFF5 cell range address list + * section 2.5.15 + * + * @param string $subData + * @return array + */ + private function _readBIFF5CellRangeAddressList($subData) + { + $cellRangeAddresses = array(); + + // offset: 0; size: 2; number of the following cell range addresses + $nm = self::_GetInt2d($subData, 0); + + $offset = 2; + // offset: 2; size: 6 * $nm; list of $nm (fixed) cell range addresses + for ($i = 0; $i < $nm; ++$i) { + $cellRangeAddresses[] = $this->_readBIFF5CellRangeAddressFixed(substr($subData, $offset, 6)); + $offset += 6; + } + + return array( + 'size' => 2 + 6 * $nm, + 'cellRangeAddresses' => $cellRangeAddresses, + ); + } + + + /** + * Get a sheet range like Sheet1:Sheet3 from REF index + * Note: If there is only one sheet in the range, one gets e.g Sheet1 + * It can also happen that the REF structure uses the -1 (FFFF) code to indicate deleted sheets, + * in which case an exception is thrown + * + * @param int $index + * @return string|false + * @throws Exception + */ + private function _readSheetRangeByRefIndex($index) + { + if (isset($this->_ref[$index])) { + + $type = $this->_externalBooks[$this->_ref[$index]['externalBookIndex']]['type']; + + switch ($type) { + case 'internal': + // check if we have a deleted 3d reference + if ($this->_ref[$index]['firstSheetIndex'] == 0xFFFF or $this->_ref[$index]['lastSheetIndex'] == 0xFFFF) { + throw new Exception('Deleted sheet reference'); + } + + // we have normal sheet range (collapsed or uncollapsed) + $firstSheetName = $this->_sheets[$this->_ref[$index]['firstSheetIndex']]['name']; + $lastSheetName = $this->_sheets[$this->_ref[$index]['lastSheetIndex']]['name']; + + if ($firstSheetName == $lastSheetName) { + // collapsed sheet range + $sheetRange = $firstSheetName; + } else { + $sheetRange = "$firstSheetName:$lastSheetName"; + } + + // escape the single-quotes + $sheetRange = str_replace("'", "''", $sheetRange); + + // if there are special characters, we need to enclose the range in single-quotes + // todo: check if we have identified the whole set of special characters + // it seems that the following characters are not accepted for sheet names + // and we may assume that they are not present: []*/:\? + if (preg_match("/[ !\"@#£$%&{()}<>=+'|^,;-]/", $sheetRange)) { + $sheetRange = "'$sheetRange'"; + } + + return $sheetRange; + break; + + default: + // TODO: external sheet support + throw new Exception('Excel5 reader only supports internal sheets in fomulas'); + break; + } + } + return false; + } + + + /** + * read BIFF8 constant value array from array data + * returns e.g. array('value' => '{1,2;3,4}', 'size' => 40} + * section 2.5.8 + * + * @param string $arrayData + * @return array + */ + private static function _readBIFF8ConstantArray($arrayData) + { + // offset: 0; size: 1; number of columns decreased by 1 + $nc = ord($arrayData[0]); + + // offset: 1; size: 2; number of rows decreased by 1 + $nr = self::_GetInt2d($arrayData, 1); + $size = 3; // initialize + $arrayData = substr($arrayData, 3); + + // offset: 3; size: var; list of ($nc + 1) * ($nr + 1) constant values + $matrixChunks = array(); + for ($r = 1; $r <= $nr + 1; ++$r) { + $items = array(); + for ($c = 1; $c <= $nc + 1; ++$c) { + $constant = self::_readBIFF8Constant($arrayData); + $items[] = $constant['value']; + $arrayData = substr($arrayData, $constant['size']); + $size += $constant['size']; + } + $matrixChunks[] = implode(',', $items); // looks like e.g. '1,"hello"' + } + $matrix = '{' . implode(';', $matrixChunks) . '}'; + + return array( + 'value' => $matrix, + 'size' => $size, + ); + } + + + /** + * read BIFF8 constant value which may be 'Empty Value', 'Number', 'String Value', 'Boolean Value', 'Error Value' + * section 2.5.7 + * returns e.g. array('value' => '5', 'size' => 9) + * + * @param string $valueData + * @return array + */ + private static function _readBIFF8Constant($valueData) + { + // offset: 0; size: 1; identifier for type of constant + $identifier = ord($valueData[0]); + + switch ($identifier) { + case 0x00: // empty constant (what is this?) + $value = ''; + $size = 9; + break; + case 0x01: // number + // offset: 1; size: 8; IEEE 754 floating-point value + $value = self::_extractNumber(substr($valueData, 1, 8)); + $size = 9; + break; + case 0x02: // string value + // offset: 1; size: var; Unicode string, 16-bit string length + $string = self::_readUnicodeStringLong(substr($valueData, 1)); + $value = '"' . $string['value'] . '"'; + $size = 1 + $string['size']; + break; + case 0x04: // boolean + // offset: 1; size: 1; 0 = FALSE, 1 = TRUE + if (ord($valueData[1])) { + $value = 'TRUE'; + } else { + $value = 'FALSE'; + } + $size = 9; + break; + case 0x10: // error code + // offset: 1; size: 1; error code + $value = self::_mapErrorCode(ord($valueData[1])); + $size = 9; + break; + } + return array( + 'value' => $value, + 'size' => $size, + ); + } + + + /** + * Extract RGB color + * OpenOffice.org's Documentation of the Microsoft Excel File Format, section 2.5.4 + * + * @param string $rgb Encoded RGB value (4 bytes) + * @return array + */ + private static function _readRGB($rgb) + { + // offset: 0; size 1; Red component + $r = ord($rgb{0}); + + // offset: 1; size: 1; Green component + $g = ord($rgb{1}); + + // offset: 2; size: 1; Blue component + $b = ord($rgb{2}); + + // HEX notation, e.g. 'FF00FC' + $rgb = sprintf('%02X%02X%02X', $r, $g, $b); + + return array('rgb' => $rgb); + } + + + /** + * Read byte string (8-bit string length) + * OpenOffice documentation: 2.5.2 + * + * @param string $subData + * @return array + */ + private function _readByteStringShort($subData) + { + // offset: 0; size: 1; length of the string (character count) + $ln = ord($subData[0]); + + // offset: 1: size: var; character array (8-bit characters) + $value = $this->_decodeCodepage(substr($subData, 1, $ln)); + + return array( + 'value' => $value, + 'size' => 1 + $ln, // size in bytes of data structure + ); + } + + + /** + * Read byte string (16-bit string length) + * OpenOffice documentation: 2.5.2 + * + * @param string $subData + * @return array + */ + private function _readByteStringLong($subData) + { + // offset: 0; size: 2; length of the string (character count) + $ln = self::_GetInt2d($subData, 0); + + // offset: 2: size: var; character array (8-bit characters) + $value = $this->_decodeCodepage(substr($subData, 2)); + + //return $string; + return array( + 'value' => $value, + 'size' => 2 + $ln, // size in bytes of data structure + ); + } + + + /** + * Extracts an Excel Unicode short string (8-bit string length) + * OpenOffice documentation: 2.5.3 + * function will automatically find out where the Unicode string ends. + * + * @param string $subData + * @return array + */ + private static function _readUnicodeStringShort($subData) + { + $value = ''; + + // offset: 0: size: 1; length of the string (character count) + $characterCount = ord($subData[0]); + + $string = self::_readUnicodeString(substr($subData, 1), $characterCount); + + // add 1 for the string length + $string['size'] += 1; + + return $string; + } + + + /** + * Extracts an Excel Unicode long string (16-bit string length) + * OpenOffice documentation: 2.5.3 + * this function is under construction, needs to support rich text, and Asian phonetic settings + * + * @param string $subData + * @return array + */ + private static function _readUnicodeStringLong($subData) + { + $value = ''; + + // offset: 0: size: 2; length of the string (character count) + $characterCount = self::_GetInt2d($subData, 0); + + $string = self::_readUnicodeString(substr($subData, 2), $characterCount); + + // add 2 for the string length + $string['size'] += 2; + + return $string; + } + + + /** + * Read Unicode string with no string length field, but with known character count + * this function is under construction, needs to support rich text, and Asian phonetic settings + * OpenOffice.org's Documentation of the Microsoft Excel File Format, section 2.5.3 + * + * @param string $subData + * @param int $characterCount + * @return array + */ + private static function _readUnicodeString($subData, $characterCount) + { + $value = ''; + + // offset: 0: size: 1; option flags + + // bit: 0; mask: 0x01; character compression (0 = compressed 8-bit, 1 = uncompressed 16-bit) + $isCompressed = !((0x01 & ord($subData[0])) >> 0); + + // bit: 2; mask: 0x04; Asian phonetic settings + $hasAsian = (0x04) & ord($subData[0]) >> 2; + + // bit: 3; mask: 0x08; Rich-Text settings + $hasRichText = (0x08) & ord($subData[0]) >> 3; + + // offset: 1: size: var; character array + // this offset assumes richtext and Asian phonetic settings are off which is generally wrong + // needs to be fixed + $value = self::_encodeUTF16(substr($subData, 1, $isCompressed ? $characterCount : 2 * $characterCount), $isCompressed); + + return array( + 'value' => $value, + 'size' => $isCompressed ? 1 + $characterCount : 1 + 2 * $characterCount, // the size in bytes including the option flags + ); + } + + + /** + * Convert UTF-8 string to string surounded by double quotes. Used for explicit string tokens in formulas. + * Example: hello"world --> "hello""world" + * + * @param string $value UTF-8 encoded string + * @return string + */ + private static function _UTF8toExcelDoubleQuoted($value) + { + return '"' . str_replace('"', '""', $value) . '"'; + } + + + /** + * Reads first 8 bytes of a string and return IEEE 754 float + * + * @param string $data Binary string that is at least 8 bytes long + * @return float + */ + private static function _extractNumber($data) + { + $rknumhigh = self::_GetInt4d($data, 4); + $rknumlow = self::_GetInt4d($data, 0); + $sign = ($rknumhigh & 0x80000000) >> 31; + $exp = (($rknumhigh & 0x7ff00000) >> 20) - 1023; + $mantissa = (0x100000 | ($rknumhigh & 0x000fffff)); + $mantissalow1 = ($rknumlow & 0x80000000) >> 31; + $mantissalow2 = ($rknumlow & 0x7fffffff); + $value = $mantissa / pow( 2 , (20 - $exp)); + + if ($mantissalow1 != 0) { + $value += 1 / pow (2 , (21 - $exp)); + } + + $value += $mantissalow2 / pow (2 , (52 - $exp)); + if ($sign) { + $value *= -1; + } + + return $value; + } + + + private static function _GetIEEE754($rknum) + { + if (($rknum & 0x02) != 0) { + $value = $rknum >> 2; + } else { + // changes by mmp, info on IEEE754 encoding from + // research.microsoft.com/~hollasch/cgindex/coding/ieeefloat.html + // The RK format calls for using only the most significant 30 bits + // of the 64 bit floating point value. The other 34 bits are assumed + // to be 0 so we use the upper 30 bits of $rknum as follows... + $sign = ($rknum & 0x80000000) >> 31; + $exp = ($rknum & 0x7ff00000) >> 20; + $mantissa = (0x100000 | ($rknum & 0x000ffffc)); + $value = $mantissa / pow( 2 , (20- ($exp - 1023))); + if ($sign) { + $value = -1 * $value; + } + //end of changes by mmp + } + if (($rknum & 0x01) != 0) { + $value /= 100; + } + return $value; + } + + + /** + * Get UTF-8 string from (compressed or uncompressed) UTF-16 string + * + * @param string $string + * @param bool $compressed + * @return string + */ + private static function _encodeUTF16($string, $compressed = '') + { + if ($compressed) { + $string = self::_uncompressByteString($string); + } + + return PHPExcel_Shared_String::ConvertEncoding($string, 'UTF-8', 'UTF-16LE'); + } + + + /** + * Convert UTF-16 string in compressed notation to uncompressed form. Only used for BIFF8. + * + * @param string $string + * @return string + */ + private static function _uncompressByteString($string) + { + $uncompressedString = ''; + $strLen = strlen($string); + for ($i = 0; $i < $strLen; ++$i) { + $uncompressedString .= $string[$i] . "\0"; + } + + return $uncompressedString; + } + + + /** + * Convert string to UTF-8. Only used for BIFF5. + * + * @param string $string + * @return string + */ + private function _decodeCodepage($string) + { + return PHPExcel_Shared_String::ConvertEncoding($string, 'UTF-8', $this->_codepage); + } + + + /** + * Read 16-bit unsigned integer + * + * @param string $data + * @param int $pos + * @return int + */ + public static function _GetInt2d($data, $pos) + { + return ord($data[$pos]) | (ord($data[$pos+1]) << 8); + } + + + /** + * Read 32-bit signed integer + * + * @param string $data + * @param int $pos + * @return int + */ + public static function _GetInt4d($data, $pos) + { + // FIX: represent numbers correctly on 64-bit system + // http://sourceforge.net/tracker/index.php?func=detail&aid=1487372&group_id=99160&atid=623334 + // Hacked by Andreas Rehm 2006 to ensure correct result of the <<24 block on 32 and 64bit systems + $_or_24 = ord($data[$pos + 3]); + if ($_or_24 >= 128) { + // negative number + $_ord_24 = -abs((256 - $_or_24) << 24); + } else { + $_ord_24 = ($_or_24 & 127) << 24; + } + return ord($data[$pos]) | (ord($data[$pos+1]) << 8) | (ord($data[$pos+2]) << 16) | $_ord_24; + } + + + /** + * Read color + * + * @param int $color Indexed color + * @param array $palette Color palette + * @return array RGB color value, example: array('rgb' => 'FF0000') + */ + private static function _readColor($color,$palette,$version) + { + if ($color <= 0x07 || $color >= 0x40) { + // special built-in color + return self::_mapBuiltInColor($color); + } elseif (isset($palette) && isset($palette[$color - 8])) { + // palette color, color index 0x08 maps to pallete index 0 + return $palette[$color - 8]; + } else { + // default color table + if ($version == self::XLS_BIFF8) { + return self::_mapColor($color); + } else { + // BIFF5 + return self::_mapColorBIFF5($color); + } + } + + return $color; + } + + + /** + * Map border style + * OpenOffice documentation: 2.5.11 + * + * @param int $index + * @return string + */ + private static function _mapBorderStyle($index) + { + switch ($index) { + case 0x00: return PHPExcel_Style_Border::BORDER_NONE; + case 0x01: return PHPExcel_Style_Border::BORDER_THIN; + case 0x02: return PHPExcel_Style_Border::BORDER_MEDIUM; + case 0x03: return PHPExcel_Style_Border::BORDER_DASHED; + case 0x04: return PHPExcel_Style_Border::BORDER_DOTTED; + case 0x05: return PHPExcel_Style_Border::BORDER_THICK; + case 0x06: return PHPExcel_Style_Border::BORDER_DOUBLE; + case 0x07: return PHPExcel_Style_Border::BORDER_HAIR; + case 0x08: return PHPExcel_Style_Border::BORDER_MEDIUMDASHED; + case 0x09: return PHPExcel_Style_Border::BORDER_DASHDOT; + case 0x0A: return PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT; + case 0x0B: return PHPExcel_Style_Border::BORDER_DASHDOTDOT; + case 0x0C: return PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT; + case 0x0D: return PHPExcel_Style_Border::BORDER_SLANTDASHDOT; + default: return PHPExcel_Style_Border::BORDER_NONE; + } + } + + + /** + * Get fill pattern from index + * OpenOffice documentation: 2.5.12 + * + * @param int $index + * @return string + */ + private static function _mapFillPattern($index) + { + switch ($index) { + case 0x00: return PHPExcel_Style_Fill::FILL_NONE; + case 0x01: return PHPExcel_Style_Fill::FILL_SOLID; + case 0x02: return PHPExcel_Style_Fill::FILL_PATTERN_MEDIUMGRAY; + case 0x03: return PHPExcel_Style_Fill::FILL_PATTERN_DARKGRAY; + case 0x04: return PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRAY; + case 0x05: return PHPExcel_Style_Fill::FILL_PATTERN_DARKHORIZONTAL; + case 0x06: return PHPExcel_Style_Fill::FILL_PATTERN_DARKVERTICAL; + case 0x07: return PHPExcel_Style_Fill::FILL_PATTERN_DARKDOWN; + case 0x08: return PHPExcel_Style_Fill::FILL_PATTERN_DARKUP; + case 0x09: return PHPExcel_Style_Fill::FILL_PATTERN_DARKGRID; + case 0x0A: return PHPExcel_Style_Fill::FILL_PATTERN_DARKTRELLIS; + case 0x0B: return PHPExcel_Style_Fill::FILL_PATTERN_LIGHTHORIZONTAL; + case 0x0C: return PHPExcel_Style_Fill::FILL_PATTERN_LIGHTVERTICAL; + case 0x0D: return PHPExcel_Style_Fill::FILL_PATTERN_LIGHTDOWN; + case 0x0E: return PHPExcel_Style_Fill::FILL_PATTERN_LIGHTUP; + case 0x0F: return PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRID; + case 0x10: return PHPExcel_Style_Fill::FILL_PATTERN_LIGHTTRELLIS; + case 0x11: return PHPExcel_Style_Fill::FILL_PATTERN_GRAY125; + case 0x12: return PHPExcel_Style_Fill::FILL_PATTERN_GRAY0625; + default: return PHPExcel_Style_Fill::FILL_NONE; + } + } + + + /** + * Map error code, e.g. '#N/A' + * + * @param int $subData + * @return string + */ + private static function _mapErrorCode($subData) + { + switch ($subData) { + case 0x00: return '#NULL!'; break; + case 0x07: return '#DIV/0!'; break; + case 0x0F: return '#VALUE!'; break; + case 0x17: return '#REF!'; break; + case 0x1D: return '#NAME?'; break; + case 0x24: return '#NUM!'; break; + case 0x2A: return '#N/A'; break; + default: return false; + } + } + + + /** + * Map built-in color to RGB value + * + * @param int $color Indexed color + * @return array + */ + private static function _mapBuiltInColor($color) + { + switch ($color) { + case 0x00: return array('rgb' => '000000'); + case 0x01: return array('rgb' => 'FFFFFF'); + case 0x02: return array('rgb' => 'FF0000'); + case 0x03: return array('rgb' => '00FF00'); + case 0x04: return array('rgb' => '0000FF'); + case 0x05: return array('rgb' => 'FFFF00'); + case 0x06: return array('rgb' => 'FF00FF'); + case 0x07: return array('rgb' => '00FFFF'); + case 0x40: return array('rgb' => '000000'); // system window text color + case 0x41: return array('rgb' => 'FFFFFF'); // system window background color + default: return array('rgb' => '000000'); + } + } + + + /** + * Map color array from BIFF5 built-in color index + * + * @param int $subData + * @return array + */ + private static function _mapColorBIFF5($subData) + { + switch ($subData) { + case 0x08: return array('rgb' => '000000'); + case 0x09: return array('rgb' => 'FFFFFF'); + case 0x0A: return array('rgb' => 'FF0000'); + case 0x0B: return array('rgb' => '00FF00'); + case 0x0C: return array('rgb' => '0000FF'); + case 0x0D: return array('rgb' => 'FFFF00'); + case 0x0E: return array('rgb' => 'FF00FF'); + case 0x0F: return array('rgb' => '00FFFF'); + case 0x10: return array('rgb' => '800000'); + case 0x11: return array('rgb' => '008000'); + case 0x12: return array('rgb' => '000080'); + case 0x13: return array('rgb' => '808000'); + case 0x14: return array('rgb' => '800080'); + case 0x15: return array('rgb' => '008080'); + case 0x16: return array('rgb' => 'C0C0C0'); + case 0x17: return array('rgb' => '808080'); + case 0x18: return array('rgb' => '8080FF'); + case 0x19: return array('rgb' => '802060'); + case 0x1A: return array('rgb' => 'FFFFC0'); + case 0x1B: return array('rgb' => 'A0E0F0'); + case 0x1C: return array('rgb' => '600080'); + case 0x1D: return array('rgb' => 'FF8080'); + case 0x1E: return array('rgb' => '0080C0'); + case 0x1F: return array('rgb' => 'C0C0FF'); + case 0x20: return array('rgb' => '000080'); + case 0x21: return array('rgb' => 'FF00FF'); + case 0x22: return array('rgb' => 'FFFF00'); + case 0x23: return array('rgb' => '00FFFF'); + case 0x24: return array('rgb' => '800080'); + case 0x25: return array('rgb' => '800000'); + case 0x26: return array('rgb' => '008080'); + case 0x27: return array('rgb' => '0000FF'); + case 0x28: return array('rgb' => '00CFFF'); + case 0x29: return array('rgb' => '69FFFF'); + case 0x2A: return array('rgb' => 'E0FFE0'); + case 0x2B: return array('rgb' => 'FFFF80'); + case 0x2C: return array('rgb' => 'A6CAF0'); + case 0x2D: return array('rgb' => 'DD9CB3'); + case 0x2E: return array('rgb' => 'B38FEE'); + case 0x2F: return array('rgb' => 'E3E3E3'); + case 0x30: return array('rgb' => '2A6FF9'); + case 0x31: return array('rgb' => '3FB8CD'); + case 0x32: return array('rgb' => '488436'); + case 0x33: return array('rgb' => '958C41'); + case 0x34: return array('rgb' => '8E5E42'); + case 0x35: return array('rgb' => 'A0627A'); + case 0x36: return array('rgb' => '624FAC'); + case 0x37: return array('rgb' => '969696'); + case 0x38: return array('rgb' => '1D2FBE'); + case 0x39: return array('rgb' => '286676'); + case 0x3A: return array('rgb' => '004500'); + case 0x3B: return array('rgb' => '453E01'); + case 0x3C: return array('rgb' => '6A2813'); + case 0x3D: return array('rgb' => '85396A'); + case 0x3E: return array('rgb' => '4A3285'); + case 0x3F: return array('rgb' => '424242'); + default: return array('rgb' => '000000'); + } + } + + + /** + * Map color array from BIFF8 built-in color index + * + * @param int $subData + * @return array + */ + private static function _mapColor($subData) + { + switch ($subData) { + case 0x08: return array('rgb' => '000000'); + case 0x09: return array('rgb' => 'FFFFFF'); + case 0x0A: return array('rgb' => 'FF0000'); + case 0x0B: return array('rgb' => '00FF00'); + case 0x0C: return array('rgb' => '0000FF'); + case 0x0D: return array('rgb' => 'FFFF00'); + case 0x0E: return array('rgb' => 'FF00FF'); + case 0x0F: return array('rgb' => '00FFFF'); + case 0x10: return array('rgb' => '800000'); + case 0x11: return array('rgb' => '008000'); + case 0x12: return array('rgb' => '000080'); + case 0x13: return array('rgb' => '808000'); + case 0x14: return array('rgb' => '800080'); + case 0x15: return array('rgb' => '008080'); + case 0x16: return array('rgb' => 'C0C0C0'); + case 0x17: return array('rgb' => '808080'); + case 0x18: return array('rgb' => '9999FF'); + case 0x19: return array('rgb' => '993366'); + case 0x1A: return array('rgb' => 'FFFFCC'); + case 0x1B: return array('rgb' => 'CCFFFF'); + case 0x1C: return array('rgb' => '660066'); + case 0x1D: return array('rgb' => 'FF8080'); + case 0x1E: return array('rgb' => '0066CC'); + case 0x1F: return array('rgb' => 'CCCCFF'); + case 0x20: return array('rgb' => '000080'); + case 0x21: return array('rgb' => 'FF00FF'); + case 0x22: return array('rgb' => 'FFFF00'); + case 0x23: return array('rgb' => '00FFFF'); + case 0x24: return array('rgb' => '800080'); + case 0x25: return array('rgb' => '800000'); + case 0x26: return array('rgb' => '008080'); + case 0x27: return array('rgb' => '0000FF'); + case 0x28: return array('rgb' => '00CCFF'); + case 0x29: return array('rgb' => 'CCFFFF'); + case 0x2A: return array('rgb' => 'CCFFCC'); + case 0x2B: return array('rgb' => 'FFFF99'); + case 0x2C: return array('rgb' => '99CCFF'); + case 0x2D: return array('rgb' => 'FF99CC'); + case 0x2E: return array('rgb' => 'CC99FF'); + case 0x2F: return array('rgb' => 'FFCC99'); + case 0x30: return array('rgb' => '3366FF'); + case 0x31: return array('rgb' => '33CCCC'); + case 0x32: return array('rgb' => '99CC00'); + case 0x33: return array('rgb' => 'FFCC00'); + case 0x34: return array('rgb' => 'FF9900'); + case 0x35: return array('rgb' => 'FF6600'); + case 0x36: return array('rgb' => '666699'); + case 0x37: return array('rgb' => '969696'); + case 0x38: return array('rgb' => '003366'); + case 0x39: return array('rgb' => '339966'); + case 0x3A: return array('rgb' => '003300'); + case 0x3B: return array('rgb' => '333300'); + case 0x3C: return array('rgb' => '993300'); + case 0x3D: return array('rgb' => '993366'); + case 0x3E: return array('rgb' => '333399'); + case 0x3F: return array('rgb' => '333333'); + default: return array('rgb' => '000000'); + } + } + + + private function _parseRichText($is = '') { + $value = new PHPExcel_RichText(); + + $value->createText($is); + + return $value; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel5/Escher.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel5/Escher.php new file mode 100644 index 0000000..e167655 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel5/Escher.php @@ -0,0 +1,640 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Reader_Excel5_Escher + * + * @category PHPExcel + * @package PHPExcel_Reader_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_Excel5_Escher +{ + const DGGCONTAINER = 0xF000; + const BSTORECONTAINER = 0xF001; + const DGCONTAINER = 0xF002; + const SPGRCONTAINER = 0xF003; + const SPCONTAINER = 0xF004; + const DGG = 0xF006; + const BSE = 0xF007; + const DG = 0xF008; + const SPGR = 0xF009; + const SP = 0xF00A; + const OPT = 0xF00B; + const CLIENTTEXTBOX = 0xF00D; + const CLIENTANCHOR = 0xF010; + const CLIENTDATA = 0xF011; + const BLIPJPEG = 0xF01D; + const BLIPPNG = 0xF01E; + const SPLITMENUCOLORS = 0xF11E; + const TERTIARYOPT = 0xF122; + + /** + * Escher stream data (binary) + * + * @var string + */ + private $_data; + + /** + * Size in bytes of the Escher stream data + * + * @var int + */ + private $_dataSize; + + /** + * Current position of stream pointer in Escher stream data + * + * @var int + */ + private $_pos; + + /** + * The object to be returned by the reader. Modified during load. + * + * @var mixed + */ + private $_object; + + /** + * Create a new PHPExcel_Reader_Excel5_Escher instance + * + * @param mixed $object + */ + public function __construct($object) + { + $this->_object = $object; + } + + /** + * Load Escher stream data. May be a partial Escher stream. + * + * @param string $data + */ + public function load($data) + { + $this->_data = $data; + + // total byte size of Excel data (workbook global substream + sheet substreams) + $this->_dataSize = strlen($this->_data); + + $this->_pos = 0; + + // Parse Escher stream + while ($this->_pos < $this->_dataSize) { + + // offset: 2; size: 2: Record Type + $fbt = PHPExcel_Reader_Excel5::_GetInt2d($this->_data, $this->_pos + 2); + + switch ($fbt) { + case self::DGGCONTAINER: $this->_readDggContainer(); break; + case self::DGG: $this->_readDgg(); break; + case self::BSTORECONTAINER: $this->_readBstoreContainer(); break; + case self::BSE: $this->_readBSE(); break; + case self::BLIPJPEG: $this->_readBlipJPEG(); break; + case self::BLIPPNG: $this->_readBlipPNG(); break; + case self::OPT: $this->_readOPT(); break; + case self::TERTIARYOPT: $this->_readTertiaryOPT(); break; + case self::SPLITMENUCOLORS: $this->_readSplitMenuColors(); break; + case self::DGCONTAINER: $this->_readDgContainer(); break; + case self::DG: $this->_readDg(); break; + case self::SPGRCONTAINER: $this->_readSpgrContainer(); break; + case self::SPCONTAINER: $this->_readSpContainer(); break; + case self::SPGR: $this->_readSpgr(); break; + case self::SP: $this->_readSp(); break; + case self::CLIENTTEXTBOX: $this->_readClientTextbox(); break; + case self::CLIENTANCHOR: $this->_readClientAnchor(); break; + case self::CLIENTDATA: $this->_readClientData(); break; + default: $this->_readDefault(); break; + } + } + + return $this->_object; + } + + /** + * Read a generic record + */ + private function _readDefault() + { + // offset 0; size: 2; recVer and recInstance + $verInstance = PHPExcel_Reader_Excel5::_GetInt2d($this->_data, $this->_pos); + + // offset: 2; size: 2: Record Type + $fbt = PHPExcel_Reader_Excel5::_GetInt2d($this->_data, $this->_pos + 2); + + // bit: 0-3; mask: 0x000F; recVer + $recVer = (0x000F & $verInstance) >> 0; + + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + } + + /** + * Read DggContainer record (Drawing Group Container) + */ + private function _readDggContainer() + { + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + + // record is a container, read contents + $dggContainer = new PHPExcel_Shared_Escher_DggContainer(); + $this->_object->setDggContainer($dggContainer); + $reader = new PHPExcel_Reader_Excel5_Escher($dggContainer); + $reader->load($recordData); + } + + /** + * Read Dgg record (Drawing Group) + */ + private function _readDgg() + { + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + } + + /** + * Read BstoreContainer record (Blip Store Container) + */ + private function _readBstoreContainer() + { + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + + // record is a container, read contents + $bstoreContainer = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer(); + $this->_object->setBstoreContainer($bstoreContainer); + $reader = new PHPExcel_Reader_Excel5_Escher($bstoreContainer); + $reader->load($recordData); + } + + /** + * Read BSE record + */ + private function _readBSE() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::_GetInt2d($this->_data, $this->_pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + + // add BSE to BstoreContainer + $BSE = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE(); + $this->_object->addBSE($BSE); + + $BSE->setBLIPType($recInstance); + + // offset: 0; size: 1; btWin32 (MSOBLIPTYPE) + $btWin32 = ord($recordData[0]); + + // offset: 1; size: 1; btWin32 (MSOBLIPTYPE) + $btMacOS = ord($recordData[1]); + + // offset: 2; size: 16; MD4 digest + $rgbUid = substr($recordData, 2, 16); + + // offset: 18; size: 2; tag + $tag = PHPExcel_Reader_Excel5::_GetInt2d($recordData, 18); + + // offset: 20; size: 4; size of BLIP in bytes + $size = PHPExcel_Reader_Excel5::_GetInt4d($recordData, 20); + + // offset: 24; size: 4; number of references to this BLIP + $cRef = PHPExcel_Reader_Excel5::_GetInt4d($recordData, 24); + + // offset: 28; size: 4; MSOFO file offset + $foDelay = PHPExcel_Reader_Excel5::_GetInt4d($recordData, 28); + + // offset: 32; size: 1; unused1 + $unused1 = ord($recordData{32}); + + // offset: 33; size: 1; size of nameData in bytes (including null terminator) + $cbName = ord($recordData{33}); + + // offset: 34; size: 1; unused2 + $unused2 = ord($recordData{34}); + + // offset: 35; size: 1; unused3 + $unused3 = ord($recordData{35}); + + // offset: 36; size: $cbName; nameData + $nameData = substr($recordData, 36, $cbName); + + // offset: 36 + $cbName, size: var; the BLIP data + $blipData = substr($recordData, 36 + $cbName); + + // record is a container, read contents + $reader = new PHPExcel_Reader_Excel5_Escher($BSE); + $reader->load($blipData); + } + + /** + * Read BlipJPEG record. Holds raw JPEG image data + */ + private function _readBlipJPEG() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::_GetInt2d($this->_data, $this->_pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + + $pos = 0; + + // offset: 0; size: 16; rgbUid1 (MD4 digest of) + $rgbUid1 = substr($recordData, 0, 16); + $pos += 16; + + // offset: 16; size: 16; rgbUid2 (MD4 digest), only if $recInstance = 0x46B or 0x6E3 + if (in_array($recInstance, array(0x046B, 0x06E3))) { + $rgbUid2 = substr($recordData, 16, 16); + $pos += 16; + } + + // offset: var; size: 1; tag + $tag = ord($recordData{$pos}); + $pos += 1; + + // offset: var; size: var; the raw image data + $data = substr($recordData, $pos); + + $blip = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip(); + $blip->setData($data); + + $this->_object->setBlip($blip); + } + + /** + * Read BlipPNG record. Holds raw PNG image data + */ + private function _readBlipPNG() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::_GetInt2d($this->_data, $this->_pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + + $pos = 0; + + // offset: 0; size: 16; rgbUid1 (MD4 digest of) + $rgbUid1 = substr($recordData, 0, 16); + $pos += 16; + + // offset: 16; size: 16; rgbUid2 (MD4 digest), only if $recInstance = 0x46B or 0x6E3 + if ($recInstance == 0x06E1) { + $rgbUid2 = substr($recordData, 16, 16); + $pos += 16; + } + + // offset: var; size: 1; tag + $tag = ord($recordData{$pos}); + $pos += 1; + + // offset: var; size: var; the raw image data + $data = substr($recordData, $pos); + + $blip = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip(); + $blip->setData($data); + + $this->_object->setBlip($blip); + } + + /** + * Read OPT record. This record may occur within DggContainer record or SpContainer + */ + private function _readOPT() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::_GetInt2d($this->_data, $this->_pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + + $this->_readOfficeArtRGFOPTE($recordData, $recInstance); + } + + /** + * Read TertiaryOPT record + */ + private function _readTertiaryOPT() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::_GetInt2d($this->_data, $this->_pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + } + + /** + * Read SplitMenuColors record + */ + private function _readSplitMenuColors() + { + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + } + + /** + * Read DgContainer record (Drawing Container) + */ + private function _readDgContainer() + { + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + + // record is a container, read contents + $dgContainer = new PHPExcel_Shared_Escher_DgContainer(); + $this->_object->setDgContainer($dgContainer); + $reader = new PHPExcel_Reader_Excel5_Escher($dgContainer); + $escher = $reader->load($recordData); + } + + /** + * Read Dg record (Drawing) + */ + private function _readDg() + { + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + } + + /** + * Read SpgrContainer record (Shape Group Container) + */ + private function _readSpgrContainer() + { + // context is either context DgContainer or SpgrContainer + + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + + // record is a container, read contents + $spgrContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer(); + + if ($this->_object instanceof PHPExcel_Shared_Escher_DgContainer) { + // DgContainer + $this->_object->setSpgrContainer($spgrContainer); + } else { + // SpgrContainer + $this->_object->addChild($spgrContainer); + } + + $reader = new PHPExcel_Reader_Excel5_Escher($spgrContainer); + $escher = $reader->load($recordData); + } + + /** + * Read SpContainer record (Shape Container) + */ + private function _readSpContainer() + { + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // add spContainer to spgrContainer + $spContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer(); + $this->_object->addChild($spContainer); + + // move stream pointer to next record + $this->_pos += 8 + $length; + + // record is a container, read contents + $reader = new PHPExcel_Reader_Excel5_Escher($spContainer); + $escher = $reader->load($recordData); + } + + /** + * Read Spgr record (Shape Group) + */ + private function _readSpgr() + { + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + } + + /** + * Read Sp record (Shape) + */ + private function _readSp() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::_GetInt2d($this->_data, $this->_pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + } + + /** + * Read ClientTextbox record + */ + private function _readClientTextbox() + { + // offset: 0; size: 2; recVer and recInstance + + // bit: 4-15; mask: 0xFFF0; recInstance + $recInstance = (0xFFF0 & PHPExcel_Reader_Excel5::_GetInt2d($this->_data, $this->_pos)) >> 4; + + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + } + + /** + * Read ClientAnchor record. This record holds information about where the shape is anchored in worksheet + */ + private function _readClientAnchor() + { + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + + // offset: 2; size: 2; upper-left corner column index (0-based) + $c1 = PHPExcel_Reader_Excel5::_GetInt2d($recordData, 2); + + // offset: 4; size: 2; upper-left corner horizontal offset in 1/1024 of column width + $startOffsetX = PHPExcel_Reader_Excel5::_GetInt2d($recordData, 4); + + // offset: 6; size: 2; upper-left corner row index (0-based) + $r1 = PHPExcel_Reader_Excel5::_GetInt2d($recordData, 6); + + // offset: 8; size: 2; upper-left corner vertical offset in 1/256 of row height + $startOffsetY = PHPExcel_Reader_Excel5::_GetInt2d($recordData, 8); + + // offset: 10; size: 2; bottom-right corner column index (0-based) + $c2 = PHPExcel_Reader_Excel5::_GetInt2d($recordData, 10); + + // offset: 12; size: 2; bottom-right corner horizontal offset in 1/1024 of column width + $endOffsetX = PHPExcel_Reader_Excel5::_GetInt2d($recordData, 12); + + // offset: 14; size: 2; bottom-right corner row index (0-based) + $r2 = PHPExcel_Reader_Excel5::_GetInt2d($recordData, 14); + + // offset: 16; size: 2; bottom-right corner vertical offset in 1/256 of row height + $endOffsetY = PHPExcel_Reader_Excel5::_GetInt2d($recordData, 16); + + // set the start coordinates + $this->_object->setStartCoordinates(PHPExcel_Cell::stringFromColumnIndex($c1) . ($r1 + 1)); + + // set the start offsetX + $this->_object->setStartOffsetX($startOffsetX); + + // set the start offsetY + $this->_object->setStartOffsetY($startOffsetY); + + // set the end coordinates + $this->_object->setEndCoordinates(PHPExcel_Cell::stringFromColumnIndex($c2) . ($r2 + 1)); + + // set the end offsetX + $this->_object->setEndOffsetX($endOffsetX); + + // set the end offsetY + $this->_object->setEndOffsetY($endOffsetY); + } + + /** + * Read ClientData record + */ + private function _readClientData() + { + $length = PHPExcel_Reader_Excel5::_GetInt4d($this->_data, $this->_pos + 4); + $recordData = substr($this->_data, $this->_pos + 8, $length); + + // move stream pointer to next record + $this->_pos += 8 + $length; + } + + /** + * Read OfficeArtRGFOPTE table of property-value pairs + * + * @param string $data Binary data + * @param int $n Number of properties + */ + private function _readOfficeArtRGFOPTE($data, $n) { + + $splicedComplexData = substr($data, 6 * $n); + + // loop through property-value pairs + for ($i = 0; $i < $n; ++$i) { + // read 6 bytes at a time + $fopte = substr($data, 6 * $i, 6); + + // offset: 0; size: 2; opid + $opid = PHPExcel_Reader_Excel5::_GetInt2d($fopte, 0); + + // bit: 0-13; mask: 0x3FFF; opid.opid + $opidOpid = (0x3FFF & $opid) >> 0; + + // bit: 14; mask 0x4000; 1 = value in op field is BLIP identifier + $opidFBid = (0x4000 & $opid) >> 14; + + // bit: 15; mask 0x8000; 1 = this is a complex property, op field specifies size of complex data + $opidFComplex = (0x8000 & $opid) >> 15; + + // offset: 2; size: 4; the value for this property + $op = PHPExcel_Reader_Excel5::_GetInt4d($fopte, 2); + + if ($opidFComplex) { + $complexData = substr($splicedComplexData, 0, $op); + $splicedComplexData = substr($splicedComplexData, $op); + + // we store string value with complex data + $value = $complexData; + } else { + // we store integer value + $value = $op; + } + + $this->_object->setOPT($opidOpid, $value); + } + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel5/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel5/_notes/dwsync.xml new file mode 100644 index 0000000..a598667 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/Excel5/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Escher.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Escher.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851519999999" remote="129984144000000000" Dst="-1" /> +<file name="Escher.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851519999999" remote="129997098600000000" Dst="-1" /> +<file name="Escher.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559995286896" remote="131260196400000000" Dst="1" /> +<file name="Escher.php" server="62.244.88.21/amashow/" local="131414752291793606" remote="131414680800000000" Dst="2" /> +<file name="Escher.php" server="62.244.88.21/deciday/" local="131919461265938604" remote="131826017400000000" Dst="1" /> +<file name="Escher.php" server="62.244.88.21/deciday_18/" local="131414752291793606" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/Gnumeric.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/Gnumeric.php new file mode 100644 index 0000000..5d82f22 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/Gnumeric.php @@ -0,0 +1,982 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_Gnumeric + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_Gnumeric implements PHPExcel_Reader_IReader +{ + /** + * Read data only? + * Identifies whether the Reader should only read data values for cells, and ignore any formatting information; + * or whether it should read both data and formatting + * + * @var boolean + */ + private $_readDataOnly = false; + + /** + * Restrict which sheets should be loaded? + * This property holds an array of worksheet names to be loaded. If null, then all worksheets will be loaded. + * + * @var array of string + */ + private $_loadSheetsOnly = null; + + /** + * Formats + * + * @var array + */ + private $_styles = array(); + + /** + * Shared Expressions + * + * @var array + */ + private $_expressions = array(); + + private $_referenceHelper = null; + + /** + * PHPExcel_Reader_IReadFilter instance + * + * @var PHPExcel_Reader_IReadFilter + */ + private $_readFilter = null; + + + /** + * Create a new PHPExcel_Reader_Gnumeric + */ + public function __construct() { + $this->_readFilter = new PHPExcel_Reader_DefaultReadFilter(); + $this->_referenceHelper = PHPExcel_ReferenceHelper::getInstance(); + } + + + /** + * Read data only? + * If this is true, then the Reader will only read data values for cells, it will not read any formatting information. + * If false (the default) it will read data and formatting. + * + * @return boolean + */ + public function getReadDataOnly() { + return $this->_readDataOnly; + } + + + /** + * Set read data only + * Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information. + * Set to false (the default) to advise the Reader to read both data and formatting for cells. + * + * @param boolean $pValue + * + * @return PHPExcel_Reader_Gnumeric + */ + public function setReadDataOnly($pValue = false) { + $this->_readDataOnly = $pValue; + return $this; + } + + + /** + * Get which sheets to load + * Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null + * indicating that all worksheets in the workbook should be loaded. + * + * @return mixed + */ + public function getLoadSheetsOnly() + { + return $this->_loadSheetsOnly; + } + + + /** + * Set which sheets to load + * + * @param mixed $value + * This should be either an array of worksheet names to be loaded, or a string containing a single worksheet name. + * If NULL, then it tells the Reader to read all worksheets in the workbook + * + * @return PHPExcel_Reader_Gnumeric + */ + public function setLoadSheetsOnly($value = null) + { + $this->_loadSheetsOnly = is_array($value) ? + $value : array($value); + return $this; + } + + + /** + * Set all sheets to load + * Tells the Reader to load all worksheets from the workbook. + * + * @return PHPExcel_Reader_Gnumeric + */ + public function setLoadAllSheets() + { + $this->_loadSheetsOnly = null; + return $this; + } + + + /** + * Read filter + * + * @return PHPExcel_Reader_IReadFilter + */ + public function getReadFilter() { + return $this->_readFilter; + } + + + /** + * Set read filter + * + * @param PHPExcel_Reader_IReadFilter $pValue + * @return PHPExcel_Reader_Gnumeric + */ + public function setReadFilter(PHPExcel_Reader_IReadFilter $pValue) { + $this->_readFilter = $pValue; + return $this; + } + + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFileName + * @return boolean + * @throws Exception + */ + public function canRead($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Check if gzlib functions are available + if (!function_exists('gzread')) { + throw new Exception("gzlib library is not enabled"); + } + + // Read signature data (first 3 bytes) + $fh = fopen($pFilename, 'r'); + $data = fread($fh, 2); + fclose($fh); + + if ($data != chr(0x1F).chr(0x8B)) { + return false; + } + + return true; + } + + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $gFileData = $this->_gzfileGetContents($pFilename); + + $xml = simplexml_load_string($gFileData); + $namespacesMeta = $xml->getNamespaces(true); + + $gnmXML = $xml->children($namespacesMeta['gnm']); + + $worksheetInfo = array(); + + foreach ($gnmXML->Sheets->Sheet as $sheet) { + $tmpInfo = array(); + $tmpInfo['worksheetName'] = (string) $sheet->Name; + $tmpInfo['lastColumnLetter'] = 'A'; + $tmpInfo['lastColumnIndex'] = 0; + $tmpInfo['totalRows'] = 0; + $tmpInfo['totalColumns'] = 0; + + foreach ($sheet->Cells->Cell as $cell) { + $cellAttributes = $cell->attributes(); + + $rowIndex = (int) $cellAttributes->Row + 1; + $columnIndex = (int) $cellAttributes->Col; + + $tmpInfo['totalRows'] = max($tmpInfo['totalRows'], $rowIndex); + $tmpInfo['lastColumnIndex'] = max($tmpInfo['lastColumnIndex'], $columnIndex); + } + + $tmpInfo['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($tmpInfo['lastColumnIndex']); + $tmpInfo['totalColumns'] = $tmpInfo['lastColumnIndex'] + 1; + + $worksheetInfo[] = $tmpInfo; + } + + return $worksheetInfo; + } + + + private function _gzfileGetContents($filename) { + $file = @gzopen($filename, 'rb'); + if ($file !== false) { + $data = ''; + while (!gzeof($file)) { + $data .= gzread($file, 1024); + } + gzclose($file); + } + return $data; + } + + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } + + + /** + * Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object + * + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetNames($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $gFileData = $this->_gzfileGetContents($pFilename); + + $xml = simplexml_load_string($gFileData); + $namespacesMeta = $xml->getNamespaces(true); + + $gnmXML = $xml->children($namespacesMeta['gnm']); + + $worksheetNames = array(); + + foreach($gnmXML->Sheets->Sheet as $sheet) { + $worksheetNames[] = (string) $sheet->Name; + } + + return $worksheetNames; + } + + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $timezoneObj = new DateTimeZone('Europe/London'); + $GMT = new DateTimeZone('UTC'); + + $gFileData = $this->_gzfileGetContents($pFilename); + +// echo '<pre>'; +// echo htmlentities($gFileData,ENT_QUOTES,'UTF-8'); +// echo '</pre><hr />'; +// + $xml = simplexml_load_string($gFileData); + $namespacesMeta = $xml->getNamespaces(true); + +// var_dump($namespacesMeta); +// + $gnmXML = $xml->children($namespacesMeta['gnm']); + + $docProps = $objPHPExcel->getProperties(); + // Document Properties are held differently, depending on the version of Gnumeric + if (isset($namespacesMeta['office'])) { + $officeXML = $xml->children($namespacesMeta['office']); + $officeDocXML = $officeXML->{'document-meta'}; + $officeDocMetaXML = $officeDocXML->meta; + + foreach($officeDocMetaXML as $officePropertyData) { + + $officePropertyDC = array(); + if (isset($namespacesMeta['dc'])) { + $officePropertyDC = $officePropertyData->children($namespacesMeta['dc']); + } + foreach($officePropertyDC as $propertyName => $propertyValue) { + $propertyValue = (string) $propertyValue; + switch ($propertyName) { + case 'title' : + $docProps->setTitle(trim($propertyValue)); + break; + case 'subject' : + $docProps->setSubject(trim($propertyValue)); + break; + case 'creator' : + $docProps->setCreator(trim($propertyValue)); + $docProps->setLastModifiedBy(trim($propertyValue)); + break; + case 'date' : + $creationDate = strtotime(trim($propertyValue)); + $docProps->setCreated($creationDate); + $docProps->setModified($creationDate); + break; + case 'description' : + $docProps->setDescription(trim($propertyValue)); + break; + } + } + $officePropertyMeta = array(); + if (isset($namespacesMeta['meta'])) { + $officePropertyMeta = $officePropertyData->children($namespacesMeta['meta']); + } + foreach($officePropertyMeta as $propertyName => $propertyValue) { + $attributes = $propertyValue->attributes($namespacesMeta['meta']); + $propertyValue = (string) $propertyValue; + switch ($propertyName) { + case 'keyword' : + $docProps->setKeywords(trim($propertyValue)); + break; + case 'initial-creator' : + $docProps->setCreator(trim($propertyValue)); + $docProps->setLastModifiedBy(trim($propertyValue)); + break; + case 'creation-date' : + $creationDate = strtotime(trim($propertyValue)); + $docProps->setCreated($creationDate); + $docProps->setModified($creationDate); + break; + case 'user-defined' : + list(,$attrName) = explode(':',$attributes['name']); + switch ($attrName) { + case 'publisher' : + $docProps->setCompany(trim($propertyValue)); + break; + case 'category' : + $docProps->setCategory(trim($propertyValue)); + break; + case 'manager' : + $docProps->setManager(trim($propertyValue)); + break; + } + break; + } + } + } + } elseif (isset($gnmXML->Summary)) { + foreach($gnmXML->Summary->Item as $summaryItem) { + $propertyName = $summaryItem->name; + $propertyValue = $summaryItem->{'val-string'}; + switch ($propertyName) { + case 'title' : + $docProps->setTitle(trim($propertyValue)); + break; + case 'comments' : + $docProps->setDescription(trim($propertyValue)); + break; + case 'keywords' : + $docProps->setKeywords(trim($propertyValue)); + break; + case 'category' : + $docProps->setCategory(trim($propertyValue)); + break; + case 'manager' : + $docProps->setManager(trim($propertyValue)); + break; + case 'author' : + $docProps->setCreator(trim($propertyValue)); + $docProps->setLastModifiedBy(trim($propertyValue)); + break; + case 'company' : + $docProps->setCompany(trim($propertyValue)); + break; + } + } + } + + $worksheetID = 0; + foreach($gnmXML->Sheets->Sheet as $sheet) { + $worksheetName = (string) $sheet->Name; +// echo '<b>Worksheet: ',$worksheetName,'</b><br />'; + if ((isset($this->_loadSheetsOnly)) && (!in_array($worksheetName, $this->_loadSheetsOnly))) { + continue; + } + + $maxRow = $maxCol = 0; + + // Create new Worksheet + $objPHPExcel->createSheet(); + $objPHPExcel->setActiveSheetIndex($worksheetID); + // Use false for $updateFormulaCellReferences to prevent adjustment of worksheet references in formula + // cells... during the load, all formulae should be correct, and we're simply bringing the worksheet + // name in line with the formula, not the reverse + $objPHPExcel->getActiveSheet()->setTitle($worksheetName,false); + + if ((!$this->_readDataOnly) && (isset($sheet->PrintInformation))) { + if (isset($sheet->PrintInformation->Margins)) { + foreach($sheet->PrintInformation->Margins->children('gnm',TRUE) as $key => $margin) { + $marginAttributes = $margin->attributes(); + $marginSize = 72 / 100; // Default + switch($marginAttributes['PrefUnit']) { + case 'mm' : + $marginSize = intval($marginAttributes['Points']) / 100; + break; + } + switch($key) { + case 'top' : + $objPHPExcel->getActiveSheet()->getPageMargins()->setTop($marginSize); + break; + case 'bottom' : + $objPHPExcel->getActiveSheet()->getPageMargins()->setBottom($marginSize); + break; + case 'left' : + $objPHPExcel->getActiveSheet()->getPageMargins()->setLeft($marginSize); + break; + case 'right' : + $objPHPExcel->getActiveSheet()->getPageMargins()->setRight($marginSize); + break; + case 'header' : + $objPHPExcel->getActiveSheet()->getPageMargins()->setHeader($marginSize); + break; + case 'footer' : + $objPHPExcel->getActiveSheet()->getPageMargins()->setFooter($marginSize); + break; + } + } + } + } + + foreach($sheet->Cells->Cell as $cell) { + $cellAttributes = $cell->attributes(); + $row = (int) $cellAttributes->Row + 1; + $column = (int) $cellAttributes->Col; + + if ($row > $maxRow) $maxRow = $row; + if ($column > $maxCol) $maxCol = $column; + + $column = PHPExcel_Cell::stringFromColumnIndex($column); + + // Read cell? + if ($this->getReadFilter() !== NULL) { + if (!$this->getReadFilter()->readCell($column, $row, $worksheetName)) { + continue; + } + } + + $ValueType = $cellAttributes->ValueType; + $ExprID = (string) $cellAttributes->ExprID; +// echo 'Cell ',$column,$row,'<br />'; +// echo 'Type is ',$ValueType,'<br />'; +// echo 'Value is ',$cell,'<br />'; + $type = PHPExcel_Cell_DataType::TYPE_FORMULA; + if ($ExprID > '') { + if (((string) $cell) > '') { + + $this->_expressions[$ExprID] = array( 'column' => $cellAttributes->Col, + 'row' => $cellAttributes->Row, + 'formula' => (string) $cell + ); +// echo 'NEW EXPRESSION ',$ExprID,'<br />'; + } else { + $expression = $this->_expressions[$ExprID]; + + $cell = $this->_referenceHelper->updateFormulaReferences( $expression['formula'], + 'A1', + $cellAttributes->Col - $expression['column'], + $cellAttributes->Row - $expression['row'], + $worksheetName + ); +// echo 'SHARED EXPRESSION ',$ExprID,'<br />'; +// echo 'New Value is ',$cell,'<br />'; + } + $type = PHPExcel_Cell_DataType::TYPE_FORMULA; + } else { + switch($ValueType) { + case '10' : // NULL + $type = PHPExcel_Cell_DataType::TYPE_NULL; + break; + case '20' : // Boolean + $type = PHPExcel_Cell_DataType::TYPE_BOOL; + $cell = ($cell == 'TRUE') ? True : False; + break; + case '30' : // Integer + $cell = intval($cell); + case '40' : // Float + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + break; + case '50' : // Error + $type = PHPExcel_Cell_DataType::TYPE_ERROR; + break; + case '60' : // String + $type = PHPExcel_Cell_DataType::TYPE_STRING; + break; + case '70' : // Cell Range + case '80' : // Array + } + } + $objPHPExcel->getActiveSheet()->getCell($column.$row)->setValueExplicit($cell,$type); + } + + if ((!$this->_readDataOnly) && (isset($sheet->Objects))) { + foreach($sheet->Objects->children('gnm',TRUE) as $key => $comment) { + $commentAttributes = $comment->attributes(); + // Only comment objects are handled at the moment + if ($commentAttributes->Text) { + $objPHPExcel->getActiveSheet()->getComment( (string)$commentAttributes->ObjectBound ) + ->setAuthor( (string)$commentAttributes->Author ) + ->setText($this->_parseRichText((string)$commentAttributes->Text) ); + } + } + } +// echo '$maxCol=',$maxCol,'; $maxRow=',$maxRow,'<br />'; +// + foreach($sheet->Styles->StyleRegion as $styleRegion) { + $styleAttributes = $styleRegion->attributes(); + if (($styleAttributes['startRow'] <= $maxRow) && + ($styleAttributes['startCol'] <= $maxCol)) { + + $startColumn = PHPExcel_Cell::stringFromColumnIndex((int) $styleAttributes['startCol']); + $startRow = $styleAttributes['startRow'] + 1; + + $endColumn = ($styleAttributes['endCol'] > $maxCol) ? $maxCol : (int) $styleAttributes['endCol']; + $endColumn = PHPExcel_Cell::stringFromColumnIndex($endColumn); + $endRow = ($styleAttributes['endRow'] > $maxRow) ? $maxRow : $styleAttributes['endRow']; + $endRow += 1; + $cellRange = $startColumn.$startRow.':'.$endColumn.$endRow; +// echo $cellRange,'<br />'; + + $styleAttributes = $styleRegion->Style->attributes(); +// var_dump($styleAttributes); +// echo '<br />'; + + // We still set the number format mask for date/time values, even if _readDataOnly is true + if ((!$this->_readDataOnly) || + (PHPExcel_Shared_Date::isDateTimeFormatCode($styleArray['numberformat']['code']))) { + $styleArray = array(); + $styleArray['numberformat']['code'] = (string) $styleAttributes['Format']; + // If _readDataOnly is false, we set all formatting information + if (!$this->_readDataOnly) { + switch($styleAttributes['HAlign']) { + case '1' : + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL; + break; + case '2' : + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_LEFT; + break; + case '4' : + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_RIGHT; + break; + case '8' : + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_CENTER; + break; + case '16' : + case '64' : + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS; + break; + case '32' : + $styleArray['alignment']['horizontal'] = PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY; + break; + } + + switch($styleAttributes['VAlign']) { + case '1' : + $styleArray['alignment']['vertical'] = PHPExcel_Style_Alignment::VERTICAL_TOP; + break; + case '2' : + $styleArray['alignment']['vertical'] = PHPExcel_Style_Alignment::VERTICAL_BOTTOM; + break; + case '4' : + $styleArray['alignment']['vertical'] = PHPExcel_Style_Alignment::VERTICAL_CENTER; + break; + case '8' : + $styleArray['alignment']['vertical'] = PHPExcel_Style_Alignment::VERTICAL_JUSTIFY; + break; + } + + $styleArray['alignment']['wrap'] = ($styleAttributes['WrapText'] == '1') ? True : False; + $styleArray['alignment']['shrinkToFit'] = ($styleAttributes['ShrinkToFit'] == '1') ? True : False; + $styleArray['alignment']['indent'] = (intval($styleAttributes["Indent"]) > 0) ? $styleAttributes["indent"] : 0; + + $RGB = self::_parseGnumericColour($styleAttributes["Fore"]); + $styleArray['font']['color']['rgb'] = $RGB; + $RGB = self::_parseGnumericColour($styleAttributes["Back"]); + $shade = $styleAttributes["Shade"]; + if (($RGB != '000000') || ($shade != '0')) { + $styleArray['fill']['color']['rgb'] = $styleArray['fill']['startcolor']['rgb'] = $RGB; + $RGB2 = self::_parseGnumericColour($styleAttributes["PatternColor"]); + $styleArray['fill']['endcolor']['rgb'] = $RGB2; + switch($shade) { + case '1' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_SOLID; + break; + case '2' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR; + break; + case '3' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_GRADIENT_PATH; + break; + case '4' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKDOWN; + break; + case '5' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKGRAY; + break; + case '6' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKGRID; + break; + case '7' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKHORIZONTAL; + break; + case '8' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKTRELLIS; + break; + case '9' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKUP; + break; + case '10' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_DARKVERTICAL; + break; + case '11' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_GRAY0625; + break; + case '12' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_GRAY125; + break; + case '13' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTDOWN; + break; + case '14' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRAY; + break; + case '15' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRID; + break; + case '16' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTHORIZONTAL; + break; + case '17' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTTRELLIS; + break; + case '18' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTUP; + break; + case '19' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_LIGHTVERTICAL; + break; + case '20' : + $styleArray['fill']['type'] = PHPExcel_Style_Fill::FILL_PATTERN_MEDIUMGRAY; + break; + } + } + + $fontAttributes = $styleRegion->Style->Font->attributes(); +// var_dump($fontAttributes); +// echo '<br />'; + $styleArray['font']['name'] = (string) $styleRegion->Style->Font; + $styleArray['font']['size'] = intval($fontAttributes['Unit']); + $styleArray['font']['bold'] = ($fontAttributes['Bold'] == '1') ? True : False; + $styleArray['font']['italic'] = ($fontAttributes['Italic'] == '1') ? True : False; + $styleArray['font']['strike'] = ($fontAttributes['StrikeThrough'] == '1') ? True : False; + switch($fontAttributes['Underline']) { + case '1' : + $styleArray['font']['underline'] = PHPExcel_Style_Font::UNDERLINE_SINGLE; + break; + case '2' : + $styleArray['font']['underline'] = PHPExcel_Style_Font::UNDERLINE_DOUBLE; + break; + case '3' : + $styleArray['font']['underline'] = PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING; + break; + case '4' : + $styleArray['font']['underline'] = PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING; + break; + default : + $styleArray['font']['underline'] = PHPExcel_Style_Font::UNDERLINE_NONE; + break; + } + switch($fontAttributes['Script']) { + case '1' : + $styleArray['font']['superScript'] = True; + break; + case '-1' : + $styleArray['font']['subScript'] = True; + break; + } + + if (isset($styleRegion->Style->StyleBorder)) { + if (isset($styleRegion->Style->StyleBorder->Top)) { + $styleArray['borders']['top'] = self::_parseBorderAttributes($styleRegion->Style->StyleBorder->Top->attributes()); + } + if (isset($styleRegion->Style->StyleBorder->Bottom)) { + $styleArray['borders']['bottom'] = self::_parseBorderAttributes($styleRegion->Style->StyleBorder->Bottom->attributes()); + } + if (isset($styleRegion->Style->StyleBorder->Left)) { + $styleArray['borders']['left'] = self::_parseBorderAttributes($styleRegion->Style->StyleBorder->Left->attributes()); + } + if (isset($styleRegion->Style->StyleBorder->Right)) { + $styleArray['borders']['right'] = self::_parseBorderAttributes($styleRegion->Style->StyleBorder->Right->attributes()); + } + if ((isset($styleRegion->Style->StyleBorder->Diagonal)) && (isset($styleRegion->Style->StyleBorder->{'Rev-Diagonal'}))) { + $styleArray['borders']['diagonal'] = self::_parseBorderAttributes($styleRegion->Style->StyleBorder->Diagonal->attributes()); + $styleArray['borders']['diagonaldirection'] = PHPExcel_Style_Borders::DIAGONAL_BOTH; + } elseif (isset($styleRegion->Style->StyleBorder->Diagonal)) { + $styleArray['borders']['diagonal'] = self::_parseBorderAttributes($styleRegion->Style->StyleBorder->Diagonal->attributes()); + $styleArray['borders']['diagonaldirection'] = PHPExcel_Style_Borders::DIAGONAL_UP; + } elseif (isset($styleRegion->Style->StyleBorder->{'Rev-Diagonal'})) { + $styleArray['borders']['diagonal'] = self::_parseBorderAttributes($styleRegion->Style->StyleBorder->{'Rev-Diagonal'}->attributes()); + $styleArray['borders']['diagonaldirection'] = PHPExcel_Style_Borders::DIAGONAL_DOWN; + } + } + if (isset($styleRegion->Style->HyperLink)) { + // TO DO + $hyperlink = $styleRegion->Style->HyperLink->attributes(); + } + } +// var_dump($styleArray); +// echo '<br />'; + $objPHPExcel->getActiveSheet()->getStyle($cellRange)->applyFromArray($styleArray); + } + } + } + + if ((!$this->_readDataOnly) && (isset($sheet->Cols))) { + // Column Widths + $columnAttributes = $sheet->Cols->attributes(); + $defaultWidth = $columnAttributes['DefaultSizePts'] / 5.4; + $c = 0; + foreach($sheet->Cols->ColInfo as $columnOverride) { + $columnAttributes = $columnOverride->attributes(); + $column = $columnAttributes['No']; + $columnWidth = $columnAttributes['Unit'] / 5.4; + $hidden = ((isset($columnAttributes['Hidden'])) && ($columnAttributes['Hidden'] == '1')) ? true : false; + $columnCount = (isset($columnAttributes['Count'])) ? $columnAttributes['Count'] : 1; + while ($c < $column) { + $objPHPExcel->getActiveSheet()->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($c))->setWidth($defaultWidth); + ++$c; + } + while (($c < ($column+$columnCount)) && ($c <= $maxCol)) { + $objPHPExcel->getActiveSheet()->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($c))->setWidth($columnWidth); + if ($hidden) { + $objPHPExcel->getActiveSheet()->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($c))->setVisible(false); + } + ++$c; + } + } + while ($c <= $maxCol) { + $objPHPExcel->getActiveSheet()->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($c))->setWidth($defaultWidth); + ++$c; + } + } + + if ((!$this->_readDataOnly) && (isset($sheet->Rows))) { + // Row Heights + $rowAttributes = $sheet->Rows->attributes(); + $defaultHeight = $rowAttributes['DefaultSizePts']; + $r = 0; + + foreach($sheet->Rows->RowInfo as $rowOverride) { + $rowAttributes = $rowOverride->attributes(); + $row = $rowAttributes['No']; + $rowHeight = $rowAttributes['Unit']; + $hidden = ((isset($rowAttributes['Hidden'])) && ($rowAttributes['Hidden'] == '1')) ? true : false; + $rowCount = (isset($rowAttributes['Count'])) ? $rowAttributes['Count'] : 1; + while ($r < $row) { + ++$r; + $objPHPExcel->getActiveSheet()->getRowDimension($r)->setRowHeight($defaultHeight); + } + while (($r < ($row+$rowCount)) && ($r < $maxRow)) { + ++$r; + $objPHPExcel->getActiveSheet()->getRowDimension($r)->setRowHeight($rowHeight); + if ($hidden) { + $objPHPExcel->getActiveSheet()->getRowDimension($r)->setVisible(false); + } + } + } + while ($r < $maxRow) { + ++$r; + $objPHPExcel->getActiveSheet()->getRowDimension($r)->setRowHeight($defaultHeight); + } + } + + // Handle Merged Cells in this worksheet + if (isset($sheet->MergedRegions)) { + foreach($sheet->MergedRegions->Merge as $mergeCells) { + if (strpos($mergeCells,':') !== FALSE) { + $objPHPExcel->getActiveSheet()->mergeCells($mergeCells); + } + } + } + + $worksheetID++; + } + + // Loop through definedNames (global named ranges) + if (isset($gnmXML->Names)) { + foreach($gnmXML->Names->Name as $namedRange) { + $name = (string) $namedRange->name; + $range = (string) $namedRange->value; + if (stripos($range, '#REF!') !== false) { + continue; + } + + $range = explode('!',$range); + $range[0] = trim($range[0],"'");; + if ($worksheet = $objPHPExcel->getSheetByName($range[0])) { + $extractedRange = str_replace('$', '', $range[1]); + $objPHPExcel->addNamedRange( new PHPExcel_NamedRange($name, $worksheet, $extractedRange) ); + } + } + } + + + // Return + return $objPHPExcel; + } + + + private static function _parseBorderAttributes($borderAttributes) + { + $styleArray = array(); + + if (isset($borderAttributes["Color"])) { + $RGB = self::_parseGnumericColour($borderAttributes["Color"]); + $styleArray['color']['rgb'] = $RGB; + } + + switch ($borderAttributes["Style"]) { + case '0' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_NONE; + break; + case '1' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case '2' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_MEDIUM; + break; + case '4' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_DASHED; + break; + case '5' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_THICK; + break; + case '6' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_DOUBLE; + break; + case '7' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_DOTTED; + break; + case '9' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_DASHDOT; + break; + case '10' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT; + break; + case '11' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_DASHDOTDOT; + break; + case '12' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT; + break; + case '13' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT; + break; + case '3' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_SLANTDASHDOT; + break; + case '8' : + $styleArray['style'] = PHPExcel_Style_Border::BORDER_MEDIUMDASHED; + break; + } + return $styleArray; + } + + + private function _parseRichText($is = '') { + $value = new PHPExcel_RichText(); + + $value->createText($is); + + return $value; + } + + + private static function _parseGnumericColour($gnmColour) { + list($gnmR,$gnmG,$gnmB) = explode(':',$gnmColour); + $gnmR = substr(str_pad($gnmR,4,'0',STR_PAD_RIGHT),0,2); + $gnmG = substr(str_pad($gnmG,4,'0',STR_PAD_RIGHT),0,2); + $gnmB = substr(str_pad($gnmB,4,'0',STR_PAD_RIGHT),0,2); + $RGB = $gnmR.$gnmG.$gnmB; +// echo 'Excel Colour: ',$RGB,'<br />'; + return $RGB; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/HTML.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/HTML.php new file mode 100644 index 0000000..d6068ea --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/HTML.php @@ -0,0 +1,499 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_HTML + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_HTML implements PHPExcel_Reader_IReader +{ + /** + * Input encoding + * + * @var string + */ + private $_inputEncoding = 'ANSI'; + + /** + * Sheet index to read + * + * @var int + */ + private $_sheetIndex = 0; + + /** + * Formats + * + * @var array + */ + private $_formats = array( 'h1' => array( 'font' => array( 'bold' => true, + 'size' => 24, + ), + ), // Bold, 24pt + 'h2' => array( 'font' => array( 'bold' => true, + 'size' => 18, + ), + ), // Bold, 18pt + 'h3' => array( 'font' => array( 'bold' => true, + 'size' => 13.5, + ), + ), // Bold, 13.5pt + 'h4' => array( 'font' => array( 'bold' => true, + 'size' => 12, + ), + ), // Bold, 12pt + 'h5' => array( 'font' => array( 'bold' => true, + 'size' => 10, + ), + ), // Bold, 10pt + 'h6' => array( 'font' => array( 'bold' => true, + 'size' => 7.5, + ), + ), // Bold, 7.5pt + 'a' => array( 'font' => array( 'underline' => true, + 'color' => array( 'argb' => PHPExcel_Style_Color::COLOR_BLUE, + ), + ), + ), // Blue underlined + 'hr' => array( 'borders' => array( 'bottom' => array( 'style' => PHPExcel_Style_Border::BORDER_THIN, + 'color' => array( PHPExcel_Style_Color::COLOR_BLACK, + ), + ), + ), + ), // Bottom border + ); + + /** + * PHPExcel_Reader_IReadFilter instance + * + * @var PHPExcel_Reader_IReadFilter + */ + private $_readFilter = null; + + + /** + * Create a new PHPExcel_Reader_HTML + */ + public function __construct() { + $this->_readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFileName + * @return boolean + * @throws Exception + */ + public function canRead($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Read sample data (first 2 KB will do) + $fh = fopen($pFilename, 'r'); + $data = fread($fh, 2048); + fclose($fh); + + return true; + } + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } + + /** + * Read filter + * + * @return PHPExcel_Reader_IReadFilter + */ + public function getReadFilter() { + return $this->_readFilter; + } + + /** + * Set read filter + * + * @param PHPExcel_Reader_IReadFilter $pValue + */ + public function setReadFilter(PHPExcel_Reader_IReadFilter $pValue) { + $this->_readFilter = $pValue; + return $this; + } + + /** + * Set input encoding + * + * @param string $pValue Input encoding + */ + public function setInputEncoding($pValue = 'ANSI') + { + $this->_inputEncoding = $pValue; + return $this; + } + + /** + * Get input encoding + * + * @return string + */ + public function getInputEncoding() + { + return $this->_inputEncoding; + } + + // Data Array used for testing only, should write to PHPExcel object on completion of tests + private $_dataArray = array(); + + private $_tableLevel = 0; + private $_nestedColumn = array('A'); + + private function _setTableStartColumn($column) { + if ($this->_tableLevel == 0) + $column = 'A'; + ++$this->_tableLevel; + $this->_nestedColumn[$this->_tableLevel] = $column; + + return $this->_nestedColumn[$this->_tableLevel]; + } + + private function _getTableStartColumn() { + return $this->_nestedColumn[$this->_tableLevel]; + } + + private function _releaseTableStartColumn() { + --$this->_tableLevel; + return array_pop($this->_nestedColumn); + } + + private function _flushCell($sheet,$column,$row,&$cellContent) { + if (is_string($cellContent)) { + // Simple String content + if (trim($cellContent) > '') { + // Only actually write it if there's content in the string + echo 'FLUSH CELL: ' , $column , $row , ' => ' , $cellContent , '<br />'; + // Write to worksheet to be done here... + // ... we return the cell so we can mess about with styles more easily + $cell = $sheet->setCellValue($column.$row,$cellContent,true); + $this->_dataArray[$row][$column] = $cellContent; + } + } else { + // We have a Rich Text run + // TODO + $this->_dataArray[$row][$column] = 'RICH TEXT: ' . $cellContent; + } + $cellContent = (string) ''; + } + + private function _processDomElement(DOMNode $element, $sheet, &$row, &$column, &$cellContent){ + foreach($element->childNodes as $child){ + if ($child instanceOf DOMText) { + $domText = preg_replace('/\s+/',' ',trim($child->nodeValue)); + if (is_string($cellContent)) { + // simply append the text if the cell content is a plain text string + $cellContent .= $domText; + } else { + // but if we have a rich text run instead, we need to append it correctly + // TODO + } + } elseif($child instanceOf DOMElement) { + echo '<b>DOM ELEMENT: </b>' , strtoupper($child->nodeName) , '<br />'; + + $attributeArray = array(); + foreach($child->attributes as $attribute) { + echo '<b>ATTRIBUTE: </b>' , $attribute->name , ' => ' , $attribute->value , '<br />'; + $attributeArray[$attribute->name] = $attribute->value; + } + + switch($child->nodeName) { + case 'meta' : + foreach($attributeArray as $attributeName => $attributeValue) { + switch($attributeName) { + case 'content': + // TODO + // Extract character set, so we can convert to UTF-8 if required + break; + } + } + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + break; + case 'title' : + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + $sheet->setTitle($cellContent); + $cellContent = ''; + break; + case 'span' : + case 'div' : + case 'font' : + case 'i' : + case 'em' : + case 'strong': + case 'b' : + echo 'STYLING, SPAN OR DIV<br />'; + if ($cellContent > '') + $cellContent .= ' '; + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + if ($cellContent > '') + $cellContent .= ' '; + echo 'END OF STYLING, SPAN OR DIV<br />'; + break; + case 'hr' : + $this->_flushCell($sheet,$column,$row,$cellContent); + ++$row; + if (isset($this->_formats[$child->nodeName])) { + $sheet->getStyle($column.$row)->applyFromArray($this->_formats[$child->nodeName]); + } else { + $cellContent = '----------'; + $this->_flushCell($sheet,$column,$row,$cellContent); + } + ++$row; + case 'br' : + if ($this->_tableLevel > 0) { + // If we're inside a table, replace with a \n + $cellContent .= "\n"; + } else { + // Otherwise flush our existing content and move the row cursor on + $this->_flushCell($sheet,$column,$row,$cellContent); + ++$row; + } + echo 'HARD LINE BREAK: ' , '<br />'; + break; + case 'a' : + echo 'START OF HYPERLINK: ' , '<br />'; + foreach($attributeArray as $attributeName => $attributeValue) { + switch($attributeName) { + case 'href': + echo 'Link to ' , $attributeValue , '<br />'; + $sheet->getCell($column.$row)->getHyperlink()->setUrl($attributeValue); + if (isset($this->_formats[$child->nodeName])) { + $sheet->getStyle($column.$row)->applyFromArray($this->_formats[$child->nodeName]); + } + break; + } + } + $cellContent .= ' '; + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + echo 'END OF HYPERLINK:' , '<br />'; + break; + case 'h1' : + case 'h2' : + case 'h3' : + case 'h4' : + case 'h5' : + case 'h6' : + case 'ol' : + case 'ul' : + case 'p' : + if ($this->_tableLevel > 0) { + // If we're inside a table, replace with a \n + $cellContent .= "\n"; + echo 'LIST ENTRY: ' , '<br />'; + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + echo 'END OF LIST ENTRY:' , '<br />'; + } else { + if ($cellContent > '') { + $this->_flushCell($sheet,$column,$row,$cellContent); + $row += 2; + } + echo 'START OF PARAGRAPH: ' , '<br />'; + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + echo 'END OF PARAGRAPH:' , '<br />'; + $this->_flushCell($sheet,$column,$row,$cellContent); + + if (isset($this->_formats[$child->nodeName])) { + $sheet->getStyle($column.$row)->applyFromArray($this->_formats[$child->nodeName]); + } + + $row += 2; + $column = 'A'; + } + break; + case 'li' : + if ($this->_tableLevel > 0) { + // If we're inside a table, replace with a \n + $cellContent .= "\n"; + echo 'LIST ENTRY: ' , '<br />'; + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + echo 'END OF LIST ENTRY:' , '<br />'; + } else { + if ($cellContent > '') { + $this->_flushCell($sheet,$column,$row,$cellContent); + } + ++$row; + echo 'LIST ENTRY: ' , '<br />'; + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + echo 'END OF LIST ENTRY:' , '<br />'; + $this->_flushCell($sheet,$column,$row,$cellContent); + $column = 'A'; + } + break; + case 'table' : + $this->_flushCell($sheet,$column,$row,$cellContent); + $column = $this->_setTableStartColumn($column); + echo 'START OF TABLE LEVEL ' , $this->_tableLevel , '<br />'; + if ($this->_tableLevel > 1) + --$row; + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + echo 'END OF TABLE LEVEL ' , $this->_tableLevel , '<br />'; + $column = $this->_releaseTableStartColumn(); + if ($this->_tableLevel > 1) { + ++$column; + } else { + ++$row; + } + break; + case 'thead' : + case 'tbody' : + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + break; + case 'tr' : + ++$row; + $column = $this->_getTableStartColumn(); + $cellContent = ''; + echo 'START OF TABLE ' , $this->_tableLevel , ' ROW<br />'; + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + echo 'END OF TABLE ' , $this->_tableLevel , ' ROW<br />'; + break; + case 'th' : + case 'td' : + echo 'START OF TABLE ' , $this->_tableLevel , ' CELL<br />'; + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + echo 'END OF TABLE ' , $this->_tableLevel , ' CELL<br />'; + $this->_flushCell($sheet,$column,$row,$cellContent); + ++$column; + break; + case 'body' : + $row = 1; + $column = 'A'; + $content = ''; + $this->_tableLevel = 0; + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + break; + default: + $this->_processDomElement($child,$sheet,$row,$column,$cellContent); + } + } + } + } + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + if (!is_file($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! The given file is not a regular file."); + } + + // Create new PHPExcel + while ($objPHPExcel->getSheetCount() <= $this->_sheetIndex) { + $objPHPExcel->createSheet(); + } + $objPHPExcel->setActiveSheetIndex( $this->_sheetIndex ); + + // Create a new DOM object + $dom = new domDocument; + // Load the HTML file into the DOM object + $loaded = $dom->loadHTMLFile($pFilename); + if ($loaded === false) { + throw new Exception('Failed to load ',$pFilename,' as a DOM Document'); + } + + // Discard white space + $dom->preserveWhiteSpace = false; + + + $row = 0; + $column = 'A'; + $content = ''; + $this->_processDomElement($dom,$objPHPExcel->getActiveSheet(),$row,$column,$content); + + echo '<hr />'; + var_dump($this->_dataArray); + + // Return + return $objPHPExcel; + } + + /** + * Get sheet index + * + * @return int + */ + public function getSheetIndex() { + return $this->_sheetIndex; + } + + /** + * Set sheet index + * + * @param int $pValue Sheet index + * @return PHPExcel_Reader_HTML + */ + public function setSheetIndex($pValue = 0) { + $this->_sheetIndex = $pValue; + return $this; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/IReadFilter.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/IReadFilter.php new file mode 100644 index 0000000..50e92c8 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/IReadFilter.php @@ -0,0 +1,47 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Reader_IReadFilter + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +interface PHPExcel_Reader_IReadFilter +{ + /** + * Should this cell be read? + * + * @param $column String column index + * @param $row Row index + * @param $worksheetName Optional worksheet name + * @return boolean + */ + public function readCell($column, $row, $worksheetName = ''); +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/IReader.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/IReader.php new file mode 100644 index 0000000..1c98847 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/IReader.php @@ -0,0 +1,53 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Reader_IReader + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +interface PHPExcel_Reader_IReader +{ + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFileName + * @return boolean + */ + public function canRead($pFilename); + + /** + * Loads PHPExcel from file + * + * @param string $pFileName + * @throws Exception + */ + public function load($pFilename); +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/OOCalc.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/OOCalc.php new file mode 100644 index 0000000..22ad117 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/OOCalc.php @@ -0,0 +1,733 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_OOCalc + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_OOCalc implements PHPExcel_Reader_IReader +{ + /** + * Read data only? + * Identifies whether the Reader should only read data values for cells, and ignore any formatting information; + * or whether it should read both data and formatting + * + * @var boolean + */ + private $_readDataOnly = false; + + /** + * Restrict which sheets should be loaded? + * This property holds an array of worksheet names to be loaded. If null, then all worksheets will be loaded. + * + * @var array of string + */ + private $_loadSheetsOnly = null; + + /** + * Formats + * + * @var array + */ + private $_styles = array(); + + /** + * PHPExcel_Reader_IReadFilter instance + * + * @var PHPExcel_Reader_IReadFilter + */ + private $_readFilter = null; + + + /** + * Create a new PHPExcel_Reader_OOCalc + */ + public function __construct() { + $this->_readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } + + + /** + * Read data only? + * If this is true, then the Reader will only read data values for cells, it will not read any formatting information. + * If false (the default) it will read data and formatting. + * + * @return boolean + */ + public function getReadDataOnly() { + return $this->_readDataOnly; + } + + + /** + * Set read data only + * Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information. + * Set to false (the default) to advise the Reader to read both data and formatting for cells. + * + * @param boolean $pValue + * @return PHPExcel_Reader_OOCalc + */ + public function setReadDataOnly($pValue = false) { + $this->_readDataOnly = $pValue; + return $this; + } + + + /** + * Get which sheets to load + * Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null + * indicating that all worksheets in the workbook should be loaded. + * + * @return mixed + */ + public function getLoadSheetsOnly() + { + return $this->_loadSheetsOnly; + } + + + /** + * Set which sheets to load + * + * @param mixed $value + * This should be either an array of worksheet names to be loaded, or a string containing a single worksheet name. + * If NULL, then it tells the Reader to read all worksheets in the workbook + * + * @return PHPExcel_Reader_OOCalc + */ + public function setLoadSheetsOnly($value = null) + { + $this->_loadSheetsOnly = is_array($value) ? + $value : array($value); + return $this; + } + + + /** + * Set all sheets to load + * Tells the Reader to load all worksheets from the workbook. + * + * @return PHPExcel_Reader_OOCalc + */ + public function setLoadAllSheets() + { + $this->_loadSheetsOnly = null; + return $this; + } + + + /** + * Read filter + * + * @return PHPExcel_Reader_IReadFilter + */ + public function getReadFilter() { + return $this->_readFilter; + } + + + /** + * Set read filter + * + * @param PHPExcel_Reader_IReadFilter $pValue + * @return PHPExcel_Reader_OOCalc + */ + public function setReadFilter(PHPExcel_Reader_IReadFilter $pValue) { + $this->_readFilter = $pValue; + return $this; + } + + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFileName + * @return boolean + * @throws Exception + */ + public function canRead($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Check if zip class exists + if (!class_exists('ZipArchive',FALSE)) { + throw new Exception("ZipArchive library is not enabled"); + } + + // Load file + $zip = new ZipArchive; + if ($zip->open($pFilename) === true) { + // check if it is an OOXML archive + $stat = $zip->statName('mimetype'); + if ($stat && ($stat['size'] <= 255)) { + $mimeType = $zip->getFromName($stat['name']); + } else { + $zip->close(); + return FALSE; + } + + $zip->close(); + + return ($mimeType === 'application/vnd.oasis.opendocument.spreadsheet'); + } + + return FALSE; + } + + + /** + * Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object + * + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetNames($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetNames = array(); + + $zip = new ZipArchive; + if ($zip->open($pFilename) === true) { + + $xml = simplexml_load_string($zip->getFromName("content.xml")); + $namespacesContent = $xml->getNamespaces(true); + + $workbook = $xml->children($namespacesContent['office']); + foreach($workbook->body->spreadsheet as $workbookData) { + $workbookData = $workbookData->children($namespacesContent['table']); + foreach($workbookData->table as $worksheetDataSet) { + $worksheetDataAttributes = $worksheetDataSet->attributes($namespacesContent['table']); + + $worksheetNames[] = $worksheetDataAttributes['name']; + } + } + } + + return $worksheetNames; + } + + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } + + + private static function identifyFixedStyleValue($styleList,&$styleAttributeValue) { + $styleAttributeValue = strtolower($styleAttributeValue); + foreach($styleList as $style) { + if ($styleAttributeValue == strtolower($style)) { + $styleAttributeValue = $style; + return true; + } + } + return false; + } + + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $worksheetInfo = array(); + + $zip = new ZipArchive; + if ($zip->open($pFilename) === true) { + + $xml = simplexml_load_string($zip->getFromName("content.xml")); + $namespacesContent = $xml->getNamespaces(true); + + $workbook = $xml->children($namespacesContent['office']); + foreach($workbook->body->spreadsheet as $workbookData) { + $workbookData = $workbookData->children($namespacesContent['table']); + foreach($workbookData->table as $worksheetDataSet) { + $worksheetData = $worksheetDataSet->children($namespacesContent['table']); + $worksheetDataAttributes = $worksheetDataSet->attributes($namespacesContent['table']); + + $tmpInfo = array(); + $tmpInfo['worksheetName'] = (string) $worksheetDataAttributes['name']; + $tmpInfo['lastColumnLetter'] = 'A'; + $tmpInfo['lastColumnIndex'] = 0; + $tmpInfo['totalRows'] = 0; + $tmpInfo['totalColumns'] = 0; + + $rowIndex = 0; + foreach ($worksheetData as $key => $rowData) { + switch ($key) { + case 'table-row' : + $rowDataTableAttributes = $rowData->attributes($namespacesContent['table']); + $rowRepeats = (isset($rowDataTableAttributes['number-rows-repeated'])) ? + $rowDataTableAttributes['number-rows-repeated'] : 1; + $columnIndex = 0; + + foreach ($rowData as $key => $cellData) { + $cellDataTableAttributes = $cellData->attributes($namespacesContent['table']); + $colRepeats = (isset($cellDataTableAttributes['number-columns-repeated'])) ? + $cellDataTableAttributes['number-columns-repeated'] : 1; + $cellDataOfficeAttributes = $cellData->attributes($namespacesContent['office']); + if (isset($cellDataOfficeAttributes['value-type'])) { + $tmpInfo['lastColumnIndex'] = max($tmpInfo['lastColumnIndex'], $columnIndex + $colRepeats - 1); + $tmpInfo['totalRows'] = max($tmpInfo['totalRows'], $rowIndex + $rowRepeats); + } + $columnIndex += $colRepeats; + } + $rowIndex += $rowRepeats; + break; + } + } + + $tmpInfo['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($tmpInfo['lastColumnIndex']); + $tmpInfo['totalColumns'] = $tmpInfo['lastColumnIndex'] + 1; + + $worksheetInfo[] = $tmpInfo; + } + } + } + + return $worksheetInfo; + } + + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + $timezoneObj = new DateTimeZone('Europe/London'); + $GMT = new DateTimeZone('UTC'); + + $zip = new ZipArchive; + if ($zip->open($pFilename) === true) { +// echo '<h1>Meta Information</h1>'; + $xml = simplexml_load_string($zip->getFromName("meta.xml")); + $namespacesMeta = $xml->getNamespaces(true); +// echo '<pre>'; +// print_r($namespacesMeta); +// echo '</pre><hr />'; + + $docProps = $objPHPExcel->getProperties(); + $officeProperty = $xml->children($namespacesMeta['office']); + foreach($officeProperty as $officePropertyData) { + $officePropertyDC = array(); + if (isset($namespacesMeta['dc'])) { + $officePropertyDC = $officePropertyData->children($namespacesMeta['dc']); + } + foreach($officePropertyDC as $propertyName => $propertyValue) { + switch ($propertyName) { + case 'title' : + $docProps->setTitle($propertyValue); + break; + case 'subject' : + $docProps->setSubject($propertyValue); + break; + case 'creator' : + $docProps->setCreator($propertyValue); + $docProps->setLastModifiedBy($propertyValue); + break; + case 'date' : + $creationDate = strtotime($propertyValue); + $docProps->setCreated($creationDate); + $docProps->setModified($creationDate); + break; + case 'description' : + $docProps->setDescription($propertyValue); + break; + } + } + $officePropertyMeta = array(); + if (isset($namespacesMeta['dc'])) { + $officePropertyMeta = $officePropertyData->children($namespacesMeta['meta']); + } + foreach($officePropertyMeta as $propertyName => $propertyValue) { + $propertyValueAttributes = $propertyValue->attributes($namespacesMeta['meta']); + switch ($propertyName) { + case 'initial-creator' : + $docProps->setCreator($propertyValue); + break; + case 'keyword' : + $docProps->setKeywords($propertyValue); + break; + case 'creation-date' : + $creationDate = strtotime($propertyValue); + $docProps->setCreated($creationDate); + break; + case 'user-defined' : + $propertyValueType = PHPExcel_DocumentProperties::PROPERTY_TYPE_STRING; + foreach ($propertyValueAttributes as $key => $value) { + if ($key == 'name') { + $propertyValueName = (string) $value; + } elseif($key == 'value-type') { + switch ($value) { + case 'date' : + $propertyValue = PHPExcel_DocumentProperties::convertProperty($propertyValue,'date'); + $propertyValueType = PHPExcel_DocumentProperties::PROPERTY_TYPE_DATE; + break; + case 'boolean' : + $propertyValue = PHPExcel_DocumentProperties::convertProperty($propertyValue,'bool'); + $propertyValueType = PHPExcel_DocumentProperties::PROPERTY_TYPE_BOOLEAN; + break; + case 'float' : + $propertyValue = PHPExcel_DocumentProperties::convertProperty($propertyValue,'r4'); + $propertyValueType = PHPExcel_DocumentProperties::PROPERTY_TYPE_FLOAT; + break; + default : + $propertyValueType = PHPExcel_DocumentProperties::PROPERTY_TYPE_STRING; + } + } + } + $docProps->setCustomProperty($propertyValueName,$propertyValue,$propertyValueType); + break; + } + } + } + + +// echo '<h1>Workbook Content</h1>'; + $xml = simplexml_load_string($zip->getFromName("content.xml")); + $namespacesContent = $xml->getNamespaces(true); +// echo '<pre>'; +// print_r($namespacesContent); +// echo '</pre><hr />'; + + $workbook = $xml->children($namespacesContent['office']); + foreach($workbook->body->spreadsheet as $workbookData) { + $workbookData = $workbookData->children($namespacesContent['table']); + $worksheetID = 0; + foreach($workbookData->table as $worksheetDataSet) { + $worksheetData = $worksheetDataSet->children($namespacesContent['table']); +// print_r($worksheetData); +// echo '<br />'; + $worksheetDataAttributes = $worksheetDataSet->attributes($namespacesContent['table']); +// print_r($worksheetDataAttributes); +// echo '<br />'; + if ((isset($this->_loadSheetsOnly)) && (isset($worksheetDataAttributes['name'])) && + (!in_array($worksheetDataAttributes['name'], $this->_loadSheetsOnly))) { + continue; + } + +// echo '<h2>Worksheet '.$worksheetDataAttributes['name'].'</h2>'; + // Create new Worksheet + $objPHPExcel->createSheet(); + $objPHPExcel->setActiveSheetIndex($worksheetID); + if (isset($worksheetDataAttributes['name'])) { + $worksheetName = (string) $worksheetDataAttributes['name']; + // Use false for $updateFormulaCellReferences to prevent adjustment of worksheet references in + // formula cells... during the load, all formulae should be correct, and we're simply + // bringing the worksheet name in line with the formula, not the reverse + $objPHPExcel->getActiveSheet()->setTitle($worksheetName,false); + } + + $rowID = 1; + foreach($worksheetData as $key => $rowData) { +// echo '<b>'.$key.'</b><br />'; + switch ($key) { + case 'table-header-rows': + foreach ($rowData as $key=>$cellData) { + $rowData = $cellData; + break; + } + case 'table-row' : + $rowDataTableAttributes = $rowData->attributes($namespacesContent['table']); + $rowRepeats = (isset($rowDataTableAttributes['number-rows-repeated'])) ? + $rowDataTableAttributes['number-rows-repeated'] : 1; + $columnID = 'A'; + foreach($rowData as $key => $cellData) { + if ($this->getReadFilter() !== NULL) { + if (!$this->getReadFilter()->readCell($columnID, $rowID, $worksheetName)) { + continue; + } + } + +// echo '<b>'.$columnID.$rowID.'</b><br />'; + $cellDataText = (isset($namespacesContent['text'])) ? + $cellData->children($namespacesContent['text']) : + ''; + $cellDataOffice = $cellData->children($namespacesContent['office']); + $cellDataOfficeAttributes = $cellData->attributes($namespacesContent['office']); + $cellDataTableAttributes = $cellData->attributes($namespacesContent['table']); + +// echo 'Office Attributes: '; +// print_r($cellDataOfficeAttributes); +// echo '<br />Table Attributes: '; +// print_r($cellDataTableAttributes); +// echo '<br />Cell Data Text'; +// print_r($cellDataText); +// echo '<br />'; +// + $type = $formatting = $hyperlink = null; + $hasCalculatedValue = false; + $cellDataFormula = ''; + if (isset($cellDataTableAttributes['formula'])) { + $cellDataFormula = $cellDataTableAttributes['formula']; + $hasCalculatedValue = true; + } + + if (isset($cellDataOffice->annotation)) { +// echo 'Cell has comment<br />'; + $annotationText = $cellDataOffice->annotation->children($namespacesContent['text']); + $textArray = array(); + foreach($annotationText as $t) { + foreach($t->span as $text) { + $textArray[] = (string)$text; + } + } + $text = implode("\n",$textArray); +// echo $text,'<br />'; + $objPHPExcel->getActiveSheet()->getComment( $columnID.$rowID ) +// ->setAuthor( $author ) + ->setText($this->_parseRichText($text) ); + } + + if (isset($cellDataText->p)) { + // Consolidate if there are multiple p records (maybe with spans as well) + $dataArray = array(); + // Text can have multiple text:p and within those, multiple text:span. + // text:p newlines, but text:span does not. + // Also, here we assume there is no text data is span fields are specified, since + // we have no way of knowing proper positioning anyway. + foreach ($cellDataText->p as $pData) { + if (isset($pData->span)) { + // span sections do not newline, so we just create one large string here + $spanSection = ""; + foreach ($pData->span as $spanData) { + $spanSection .= $spanData; + } + array_push($dataArray, $spanSection); + } else { + array_push($dataArray, $pData); + } + } + $allCellDataText = implode($dataArray, "\n"); + +// echo 'Value Type is '.$cellDataOfficeAttributes['value-type'].'<br />'; + switch ($cellDataOfficeAttributes['value-type']) { + case 'string' : + $type = PHPExcel_Cell_DataType::TYPE_STRING; + $dataValue = $allCellDataText; + if (isset($dataValue->a)) { + $dataValue = $dataValue->a; + $cellXLinkAttributes = $dataValue->attributes($namespacesContent['xlink']); + $hyperlink = $cellXLinkAttributes['href']; + } + break; + case 'boolean' : + $type = PHPExcel_Cell_DataType::TYPE_BOOL; + $dataValue = ($allCellDataText == 'TRUE') ? True : False; + break; + case 'percentage' : + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $dataValue = (float) $cellDataOfficeAttributes['value']; + if (floor($dataValue) == $dataValue) { + $dataValue = (integer) $dataValue; + } + $formatting = PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE_00; + break; + case 'currency' : + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $dataValue = (float) $cellDataOfficeAttributes['value']; + if (floor($dataValue) == $dataValue) { + $dataValue = (integer) $dataValue; + } + $formatting = PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE; + break; + case 'float' : + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $dataValue = (float) $cellDataOfficeAttributes['value']; + if (floor($dataValue) == $dataValue) { + if ($dataValue = (integer) $dataValue) + $dataValue = (integer) $dataValue; + else + $dataValue = (float) $dataValue; + } + break; + case 'date' : + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $dateObj = new DateTime($cellDataOfficeAttributes['date-value'], $GMT); + $dateObj->setTimeZone($timezoneObj); + list($year,$month,$day,$hour,$minute,$second) = explode(' ',$dateObj->format('Y m d H i s')); + $dataValue = PHPExcel_Shared_Date::FormattedPHPToExcel($year,$month,$day,$hour,$minute,$second); + if ($dataValue != floor($dataValue)) { + $formatting = PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15.' '.PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4; + } else { + $formatting = PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15; + } + break; + case 'time' : + $type = PHPExcel_Cell_DataType::TYPE_NUMERIC; + $dataValue = PHPExcel_Shared_Date::PHPToExcel(strtotime('01-01-1970 '.implode(':',sscanf($cellDataOfficeAttributes['time-value'],'PT%dH%dM%dS')))); + $formatting = PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4; + break; + } +// echo 'Data value is '.$dataValue.'<br />'; +// if ($hyperlink !== NULL) { +// echo 'Hyperlink is '.$hyperlink.'<br />'; +// } + } else { + $type = PHPExcel_Cell_DataType::TYPE_NULL; + $dataValue = NULL; + } + + if ($hasCalculatedValue) { + $type = PHPExcel_Cell_DataType::TYPE_FORMULA; +// echo 'Formula: '.$cellDataFormula.'<br />'; + $cellDataFormula = substr($cellDataFormula,strpos($cellDataFormula,':=')+1); + $temp = explode('"',$cellDataFormula); + $tKey = false; + foreach($temp as &$value) { + // Only replace in alternate array entries (i.e. non-quoted blocks) + if ($tKey = !$tKey) { + $value = preg_replace('/\[\.(.*):\.(.*)\]/Ui','$1:$2',$value); + $value = preg_replace('/\[\.(.*)\]/Ui','$1',$value); + $value = PHPExcel_Calculation::_translateSeparator(';',',',$value,$inBraces); + } + } + unset($value); + // Then rebuild the formula string + $cellDataFormula = implode('"',$temp); +// echo 'Adjusted Formula: '.$cellDataFormula.'<br />'; + } + + $colRepeats = (isset($cellDataTableAttributes['number-columns-repeated'])) ? + $cellDataTableAttributes['number-columns-repeated'] : 1; + if ($type !== NULL) { + for ($i = 0; $i < $colRepeats; ++$i) { + if ($i > 0) { + ++$columnID; + } + if ($type !== PHPExcel_Cell_DataType::TYPE_NULL) { + for ($rowAdjust = 0; $rowAdjust < $rowRepeats; ++$rowAdjust) { + $rID = $rowID + $rowAdjust; + $objPHPExcel->getActiveSheet()->getCell($columnID.$rID)->setValueExplicit((($hasCalculatedValue) ? $cellDataFormula : $dataValue),$type); + if ($hasCalculatedValue) { +// echo 'Forumla result is '.$dataValue.'<br />'; + $objPHPExcel->getActiveSheet()->getCell($columnID.$rID)->setCalculatedValue($dataValue); + } + if ($formatting !== NULL) { + $objPHPExcel->getActiveSheet()->getStyle($columnID.$rID)->getNumberFormat()->setFormatCode($formatting); + } else { + $objPHPExcel->getActiveSheet()->getStyle($columnID.$rID)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_GENERAL); + } + if ($hyperlink !== NULL) { + $objPHPExcel->getActiveSheet()->getCell($columnID.$rID)->getHyperlink()->setUrl($hyperlink); + } + } + } + } + } + + // Merged cells + if ((isset($cellDataTableAttributes['number-columns-spanned'])) || (isset($cellDataTableAttributes['number-rows-spanned']))) { + if (($type !== PHPExcel_Cell_DataType::TYPE_NULL) || (!$this->_readDataOnly)) { + $columnTo = $columnID; + if (isset($cellDataTableAttributes['number-columns-spanned'])) { + $columnTo = PHPExcel_Cell::stringFromColumnIndex(PHPExcel_Cell::columnIndexFromString($columnID) + $cellDataTableAttributes['number-columns-spanned'] -2); + } + $rowTo = $rowID; + if (isset($cellDataTableAttributes['number-rows-spanned'])) { + $rowTo = $rowTo + $cellDataTableAttributes['number-rows-spanned'] - 1; + } + $cellRange = $columnID.$rowID.':'.$columnTo.$rowTo; + $objPHPExcel->getActiveSheet()->mergeCells($cellRange); + } + } + + ++$columnID; + } + $rowID += $rowRepeats; + break; + } + } + ++$worksheetID; + } + } + + } + + // Return + return $objPHPExcel; + } + + + private function _parseRichText($is = '') { + $value = new PHPExcel_RichText(); + + $value->createText($is); + + return $value; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/SYLK.php b/site/config/PHPExcel/Classes/PHPExcel/Reader/SYLK.php new file mode 100644 index 0000000..47d5703 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/SYLK.php @@ -0,0 +1,498 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + +/** + * PHPExcel_Reader_SYLK + * + * @category PHPExcel + * @package PHPExcel_Reader + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Reader_SYLK implements PHPExcel_Reader_IReader +{ + /** + * Input encoding + * + * @var string + */ + private $_inputEncoding = 'ANSI'; + + /** + * Sheet index to read + * + * @var int + */ + private $_sheetIndex = 0; + + /** + * Formats + * + * @var array + */ + private $_formats = array(); + + /** + * Format Count + * + * @var int + */ + private $_format = 0; + + /** + * PHPExcel_Reader_IReadFilter instance + * + * @var PHPExcel_Reader_IReadFilter + */ + private $_readFilter = null; + + + /** + * Create a new PHPExcel_Reader_SYLK + */ + public function __construct() { + $this->_readFilter = new PHPExcel_Reader_DefaultReadFilter(); + } + + + /** + * Can the current PHPExcel_Reader_IReader read the file? + * + * @param string $pFileName + * @return boolean + * @throws Exception + */ + public function canRead($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Read sample data (first 2 KB will do) + $fh = fopen($pFilename, 'r'); + $data = fread($fh, 2048); + fclose($fh); + + // Count delimiters in file + $delimiterCount = substr_count($data, ';'); + if ($delimiterCount < 1) { + return false; + } + + // Analyze first line looking for ID; signature + $lines = explode("\n", $data); + if (substr($lines[0],0,4) != 'ID;P') { + return false; + } + + return true; + } + + + /** + * Read filter + * + * @return PHPExcel_Reader_IReadFilter + */ + public function getReadFilter() { + return $this->_readFilter; + } + + + /** + * Set read filter + * + * @param PHPExcel_Reader_IReadFilter $pValue + */ + public function setReadFilter(PHPExcel_Reader_IReadFilter $pValue) { + $this->_readFilter = $pValue; + return $this; + } + + + /** + * Set input encoding + * + * @param string $pValue Input encoding + */ + public function setInputEncoding($pValue = 'ANSI') + { + $this->_inputEncoding = $pValue; + return $this; + } + + + /** + * Get input encoding + * + * @return string + */ + public function getInputEncoding() + { + return $this->_inputEncoding; + } + + + /** + * Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns) + * + * @param string $pFilename + * @throws Exception + */ + public function listWorksheetInfo($pFilename) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Open file + $fileHandle = fopen($pFilename, 'r'); + if ($fileHandle === false) { + throw new Exception("Could not open file " . $pFilename . " for reading."); + } + + $worksheetInfo = array(); + $worksheetInfo[0]['worksheetName'] = 'Worksheet'; + $worksheetInfo[0]['lastColumnLetter'] = 'A'; + $worksheetInfo[0]['lastColumnIndex'] = 0; + $worksheetInfo[0]['totalRows'] = 0; + $worksheetInfo[0]['totalColumns'] = 0; + + // Loop through file + $rowData = array(); + + // loop through one row (line) at a time in the file + $rowIndex = 0; + while (($rowData = fgets($fileHandle)) !== FALSE) { + $columnIndex = 0; + + // convert SYLK encoded $rowData to UTF-8 + $rowData = PHPExcel_Shared_String::SYLKtoUTF8($rowData); + + // explode each row at semicolons while taking into account that literal semicolon (;) + // is escaped like this (;;) + $rowData = explode("\t",str_replace('?',';',str_replace(';',"\t",str_replace(';;','?',rtrim($rowData))))); + + $dataType = array_shift($rowData); + if ($dataType == 'C') { + // Read cell value data + foreach($rowData as $rowDatum) { + switch($rowDatum{0}) { + case 'C' : + case 'X' : + $columnIndex = substr($rowDatum,1) - 1; + break; + case 'R' : + case 'Y' : + $rowIndex = substr($rowDatum,1); + break; + } + + $worksheetInfo[0]['totalRows'] = max($worksheetInfo[0]['totalRows'], $rowIndex); + $worksheetInfo[0]['lastColumnIndex'] = max($worksheetInfo[0]['lastColumnIndex'], $columnIndex); + } + } + } + + $worksheetInfo[0]['lastColumnLetter'] = PHPExcel_Cell::stringFromColumnIndex($worksheetInfo[0]['lastColumnIndex']); + $worksheetInfo[0]['totalColumns'] = $worksheetInfo[0]['lastColumnIndex'] + 1; + + // Close file + fclose($fileHandle); + + return $worksheetInfo; + } + + + /** + * Loads PHPExcel from file + * + * @param string $pFilename + * @return PHPExcel + * @throws Exception + */ + public function load($pFilename) + { + // Create new PHPExcel + $objPHPExcel = new PHPExcel(); + + // Load into this instance + return $this->loadIntoExisting($pFilename, $objPHPExcel); + } + + + /** + * Loads PHPExcel from file into PHPExcel instance + * + * @param string $pFilename + * @param PHPExcel $objPHPExcel + * @return PHPExcel + * @throws Exception + */ + public function loadIntoExisting($pFilename, PHPExcel $objPHPExcel) + { + // Check if file exists + if (!file_exists($pFilename)) { + throw new Exception("Could not open " . $pFilename . " for reading! File does not exist."); + } + + // Create new PHPExcel + while ($objPHPExcel->getSheetCount() <= $this->_sheetIndex) { + $objPHPExcel->createSheet(); + } + $objPHPExcel->setActiveSheetIndex( $this->_sheetIndex ); + + $fromFormats = array('\-', '\ '); + $toFormats = array('-', ' '); + + // Open file + $fileHandle = fopen($pFilename, 'r'); + if ($fileHandle === false) { + throw new Exception("Could not open file $pFilename for reading."); + } + + // Loop through file + $rowData = array(); + $column = $row = ''; + + // loop through one row (line) at a time in the file + while (($rowData = fgets($fileHandle)) !== FALSE) { + + // convert SYLK encoded $rowData to UTF-8 + $rowData = PHPExcel_Shared_String::SYLKtoUTF8($rowData); + + // explode each row at semicolons while taking into account that literal semicolon (;) + // is escaped like this (;;) + $rowData = explode("\t",str_replace('¤',';',str_replace(';',"\t",str_replace(';;','¤',rtrim($rowData))))); + + $dataType = array_shift($rowData); + // Read shared styles + if ($dataType == 'P') { + $formatArray = array(); + foreach($rowData as $rowDatum) { + switch($rowDatum{0}) { + case 'P' : $formatArray['numberformat']['code'] = str_replace($fromFormats,$toFormats,substr($rowDatum,1)); + break; + case 'E' : + case 'F' : $formatArray['font']['name'] = substr($rowDatum,1); + break; + case 'L' : $formatArray['font']['size'] = substr($rowDatum,1); + break; + case 'S' : $styleSettings = substr($rowDatum,1); + for ($i=0;$i<strlen($styleSettings);++$i) { + switch ($styleSettings{$i}) { + case 'I' : $formatArray['font']['italic'] = true; + break; + case 'D' : $formatArray['font']['bold'] = true; + break; + case 'T' : $formatArray['borders']['top']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'B' : $formatArray['borders']['bottom']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'L' : $formatArray['borders']['left']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'R' : $formatArray['borders']['right']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + } + } + break; + } + } + $this->_formats['P'.$this->_format++] = $formatArray; + // Read cell value data + } elseif ($dataType == 'C') { + $hasCalculatedValue = false; + $cellData = $cellDataFormula = ''; + foreach($rowData as $rowDatum) { + switch($rowDatum{0}) { + case 'C' : + case 'X' : $column = substr($rowDatum,1); + break; + case 'R' : + case 'Y' : $row = substr($rowDatum,1); + break; + case 'K' : $cellData = substr($rowDatum,1); + break; + case 'E' : $cellDataFormula = '='.substr($rowDatum,1); + // Convert R1C1 style references to A1 style references (but only when not quoted) + $temp = explode('"',$cellDataFormula); + $key = false; + foreach($temp as &$value) { + // Only count/replace in alternate array entries + if ($key = !$key) { + preg_match_all('/(R(\[?-?\d*\]?))(C(\[?-?\d*\]?))/',$value, $cellReferences,PREG_SET_ORDER+PREG_OFFSET_CAPTURE); + // Reverse the matches array, otherwise all our offsets will become incorrect if we modify our way + // through the formula from left to right. Reversing means that we work right to left.through + // the formula + $cellReferences = array_reverse($cellReferences); + // Loop through each R1C1 style reference in turn, converting it to its A1 style equivalent, + // then modify the formula to use that new reference + foreach($cellReferences as $cellReference) { + $rowReference = $cellReference[2][0]; + // Empty R reference is the current row + if ($rowReference == '') $rowReference = $row; + // Bracketed R references are relative to the current row + if ($rowReference{0} == '[') $rowReference = $row + trim($rowReference,'[]'); + $columnReference = $cellReference[4][0]; + // Empty C reference is the current column + if ($columnReference == '') $columnReference = $column; + // Bracketed C references are relative to the current column + if ($columnReference{0} == '[') $columnReference = $column + trim($columnReference,'[]'); + $A1CellReference = PHPExcel_Cell::stringFromColumnIndex($columnReference-1).$rowReference; + + $value = substr_replace($value,$A1CellReference,$cellReference[0][1],strlen($cellReference[0][0])); + } + } + } + unset($value); + // Then rebuild the formula string + $cellDataFormula = implode('"',$temp); + $hasCalculatedValue = true; + break; + } + } + $columnLetter = PHPExcel_Cell::stringFromColumnIndex($column-1); + $cellData = PHPExcel_Calculation::_unwrapResult($cellData); + + // Set cell value + $objPHPExcel->getActiveSheet()->getCell($columnLetter.$row)->setValue(($hasCalculatedValue) ? $cellDataFormula : $cellData); + if ($hasCalculatedValue) { + $cellData = PHPExcel_Calculation::_unwrapResult($cellData); + $objPHPExcel->getActiveSheet()->getCell($columnLetter.$row)->setCalculatedValue($cellData); + } + // Read cell formatting + } elseif ($dataType == 'F') { + $formatStyle = $columnWidth = $styleSettings = ''; + $styleData = array(); + foreach($rowData as $rowDatum) { + switch($rowDatum{0}) { + case 'C' : + case 'X' : $column = substr($rowDatum,1); + break; + case 'R' : + case 'Y' : $row = substr($rowDatum,1); + break; + case 'P' : $formatStyle = $rowDatum; + break; + case 'W' : list($startCol,$endCol,$columnWidth) = explode(' ',substr($rowDatum,1)); + break; + case 'S' : $styleSettings = substr($rowDatum,1); + for ($i=0;$i<strlen($styleSettings);++$i) { + switch ($styleSettings{$i}) { + case 'I' : $styleData['font']['italic'] = true; + break; + case 'D' : $styleData['font']['bold'] = true; + break; + case 'T' : $styleData['borders']['top']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'B' : $styleData['borders']['bottom']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'L' : $styleData['borders']['left']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + case 'R' : $styleData['borders']['right']['style'] = PHPExcel_Style_Border::BORDER_THIN; + break; + } + } + break; + } + } + if (($formatStyle > '') && ($column > '') && ($row > '')) { + $columnLetter = PHPExcel_Cell::stringFromColumnIndex($column-1); + $objPHPExcel->getActiveSheet()->getStyle($columnLetter.$row)->applyFromArray($this->_formats[$formatStyle]); + } + if ((!empty($styleData)) && ($column > '') && ($row > '')) { + $columnLetter = PHPExcel_Cell::stringFromColumnIndex($column-1); + $objPHPExcel->getActiveSheet()->getStyle($columnLetter.$row)->applyFromArray($styleData); + } + if ($columnWidth > '') { + if ($startCol == $endCol) { + $startCol = PHPExcel_Cell::stringFromColumnIndex($startCol-1); + $objPHPExcel->getActiveSheet()->getColumnDimension($startCol)->setWidth($columnWidth); + } else { + $startCol = PHPExcel_Cell::stringFromColumnIndex($startCol-1); + $endCol = PHPExcel_Cell::stringFromColumnIndex($endCol-1); + $objPHPExcel->getActiveSheet()->getColumnDimension($startCol)->setWidth($columnWidth); + do { + $objPHPExcel->getActiveSheet()->getColumnDimension(++$startCol)->setWidth($columnWidth); + } while ($startCol != $endCol); + } + } + } else { + foreach($rowData as $rowDatum) { + switch($rowDatum{0}) { + case 'C' : + case 'X' : $column = substr($rowDatum,1); + break; + case 'R' : + case 'Y' : $row = substr($rowDatum,1); + break; + } + } + } + } + + // Close file + fclose($fileHandle); + + // Return + return $objPHPExcel; + } + + + /** + * Get sheet index + * + * @return int + */ + public function getSheetIndex() { + return $this->_sheetIndex; + } + + + /** + * Set sheet index + * + * @param int $pValue Sheet index + * @return PHPExcel_Reader_SYLK + */ + public function setSheetIndex($pValue = 0) { + $this->_sheetIndex = $pValue; + return $this; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Reader/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Reader/_notes/dwsync.xml new file mode 100644 index 0000000..1ffcecd --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Reader/_notes/dwsync.xml @@ -0,0 +1,80 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="CSV.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="DefaultReadFilter.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Excel2003XML.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Excel2007.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Excel5.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Gnumeric.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="HTML.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="IReader.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="IReadFilter.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="OOCalc.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="SYLK.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="CSV.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851519999999" remote="129984144000000000" Dst="-1" /> +<file name="IReader.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851519999999" remote="129984144000000000" Dst="-1" /> +<file name="OOCalc.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851519999999" remote="129984144000000000" Dst="-1" /> +<file name="SYLK.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="HTML.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="Excel5.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="DefaultReadFilter.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="Excel2003XML.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="Excel2007.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="Gnumeric.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="IReadFilter.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="CSV.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851519999999" remote="129997098600000000" Dst="-1" /> +<file name="IReader.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851519999999" remote="129997098600000000" Dst="-1" /> +<file name="OOCalc.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851519999999" remote="129997098600000000" Dst="-1" /> +<file name="SYLK.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098600000000" Dst="-1" /> +<file name="HTML.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098600000000" Dst="-1" /> +<file name="Excel5.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098600000000" Dst="-1" /> +<file name="DefaultReadFilter.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098600000000" Dst="-1" /> +<file name="Excel2003XML.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098600000000" Dst="-1" /> +<file name="Excel2007.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098600000000" Dst="-1" /> +<file name="Gnumeric.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098600000000" Dst="-1" /> +<file name="IReadFilter.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098600000000" Dst="-1" /> +<file name="CSV.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559988664696" remote="131260196400000000" Dst="1" /> +<file name="IReader.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559989147867" remote="131260196400000000" Dst="1" /> +<file name="OOCalc.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559989725806" remote="131260196400000000" Dst="1" /> +<file name="SYLK.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559990282542" remote="131260196400000000" Dst="1" /> +<file name="HTML.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559990820295" remote="131260196400000000" Dst="1" /> +<file name="DefaultReadFilter.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559992484991" remote="131260196400000000" Dst="1" /> +<file name="Excel2003XML.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559992973713" remote="131260196400000000" Dst="1" /> +<file name="Gnumeric.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559994087547" remote="131260196400000000" Dst="1" /> +<file name="Excel2007.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559993625269" remote="131260196400000000" Dst="1" /> +<file name="IReadFilter.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559994515086" remote="131260196400000000" Dst="1" /> +<file name="Excel5.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559992012965" remote="131260196400000000" Dst="1" /> +<file name="CSV.php" server="62.244.88.21/amashow/" local="131414752287983627" remote="131414680800000000" Dst="2" /> +<file name="IReader.php" server="62.244.88.21/amashow/" local="131414752288175486" remote="131414680800000000" Dst="2" /> +<file name="SYLK.php" server="62.244.88.21/amashow/" local="131414752288645590" remote="131414680800000000" Dst="2" /> +<file name="OOCalc.php" server="62.244.88.21/amashow/" local="131414752288421615" remote="131414680800000000" Dst="2" /> +<file name="HTML.php" server="62.244.88.21/amashow/" local="131414752288893259" remote="131414680800000000" Dst="2" /> +<file name="DefaultReadFilter.php" server="62.244.88.21/amashow/" local="131414752289886358" remote="131414680800000000" Dst="2" /> +<file name="Excel2003XML.php" server="62.244.88.21/amashow/" local="131414752290151056" remote="131414680800000000" Dst="2" /> +<file name="Excel5.php" server="62.244.88.21/amashow/" local="131414752289692960" remote="131414680800000000" Dst="2" /> +<file name="Excel2007.php" server="62.244.88.21/amashow/" local="131414752290608826" remote="131414680800000000" Dst="2" /> +<file name="Gnumeric.php" server="62.244.88.21/amashow/" local="131414752290866831" remote="131414680800000000" Dst="2" /> +<file name="IReadFilter.php" server="62.244.88.21/amashow/" local="131414752291069205" remote="131414680800000000" Dst="2" /> +<file name="IReader.php" server="62.244.88.21/deciday/" local="131919461272043900" remote="131826017400000000" Dst="1" /> +<file name="Excel2007.php" server="62.244.88.21/deciday/" local="131919461267036745" remote="131826017400000000" Dst="1" /> +<file name="Gnumeric.php" server="62.244.88.21/deciday/" local="131919461269099557" remote="131826017400000000" Dst="1" /> +<file name="SYLK.php" server="62.244.88.21/deciday/" local="131919461273611012" remote="131826017400000000" Dst="1" /> +<file name="HTML.php" server="62.244.88.21/deciday/" local="131919461271113478" remote="131826017400000000" Dst="1" /> +<file name="CSV.php" server="62.244.88.21/deciday/" local="131919461291474386" remote="131826017400000000" Dst="1" /> +<file name="DefaultReadFilter.php" server="62.244.88.21/deciday/" local="131919461261856010" remote="131826017400000000" Dst="1" /> +<file name="IReadFilter.php" server="62.244.88.21/deciday/" local="131919461272318784" remote="131826017400000000" Dst="1" /> +<file name="Excel2003XML.php" server="62.244.88.21/deciday/" local="131919461262059181" remote="131826017400000000" Dst="1" /> +<file name="OOCalc.php" server="62.244.88.21/deciday/" local="131919461273820287" remote="131826017400000000" Dst="1" /> +<file name="Excel5.php" server="62.244.88.21/deciday/" local="131919461270262121" remote="131826017400000000" Dst="1" /> +<file name="CSV.php" server="62.244.88.21/deciday_18/" local="131414752287983627" remote="131825945400000000" Dst="2" /> +<file name="DefaultReadFilter.php" server="62.244.88.21/deciday_18/" local="131414752289886358" remote="131825945400000000" Dst="2" /> +<file name="Excel2003XML.php" server="62.244.88.21/deciday_18/" local="131414752290151056" remote="131825945400000000" Dst="2" /> +<file name="Excel2007.php" server="62.244.88.21/deciday_18/" local="131414752290608826" remote="131825945400000000" Dst="2" /> +<file name="Gnumeric.php" server="62.244.88.21/deciday_18/" local="131414752290866831" remote="131825945400000000" Dst="2" /> +<file name="HTML.php" server="62.244.88.21/deciday_18/" local="131414752288893259" remote="131825945400000000" Dst="2" /> +<file name="Excel5.php" server="62.244.88.21/deciday_18/" local="131414752289692960" remote="131825945400000000" Dst="2" /> +<file name="IReader.php" server="62.244.88.21/deciday_18/" local="131414752288175486" remote="131825945400000000" Dst="2" /> +<file name="IReadFilter.php" server="62.244.88.21/deciday_18/" local="131414752291069205" remote="131825945400000000" Dst="2" /> +<file name="OOCalc.php" server="62.244.88.21/deciday_18/" local="131414752288421615" remote="131825945400000000" Dst="2" /> +<file name="SYLK.php" server="62.244.88.21/deciday_18/" local="131414752288645590" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/ReferenceHelper.php b/site/config/PHPExcel/Classes/PHPExcel/ReferenceHelper.php new file mode 100644 index 0000000..9113591 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/ReferenceHelper.php @@ -0,0 +1,685 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_ReferenceHelper (Singleton) + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_ReferenceHelper +{ + /** Constants */ + /** Regular Expressions */ + const REFHELPER_REGEXP_CELLREF = '((\w*|\'[^!]*\')!)?(?<![:a-z\$])(\$?[a-z]{1,3}\$?\d+)(?=[^:!\d\'])'; + const REFHELPER_REGEXP_CELLRANGE = '((\w*|\'[^!]*\')!)?(\$?[a-z]{1,3}\$?\d+):(\$?[a-z]{1,3}\$?\d+)'; + const REFHELPER_REGEXP_ROWRANGE = '((\w*|\'[^!]*\')!)?(\$?\d+):(\$?\d+)'; + const REFHELPER_REGEXP_COLRANGE = '((\w*|\'[^!]*\')!)?(\$?[a-z]{1,3}):(\$?[a-z]{1,3})'; + + /** + * Instance of this class + * + * @var PHPExcel_ReferenceHelper + */ + private static $_instance; + + /** + * Get an instance of this class + * + * @return PHPExcel_ReferenceHelper + */ + public static function getInstance() { + if (!isset(self::$_instance) || (self::$_instance === NULL)) { + self::$_instance = new PHPExcel_ReferenceHelper(); + } + + return self::$_instance; + } + + /** + * Create a new PHPExcel_ReferenceHelper + */ + protected function __construct() { + } + + /** + * Insert a new column, updating all possible related data + * + * @param int $pBefore Insert before this one + * @param int $pNumCols Number of columns to insert + * @param int $pNumRows Number of rows to insert + * @throws Exception + */ + public function insertNewBefore($pBefore = 'A1', $pNumCols = 0, $pNumRows = 0, PHPExcel_Worksheet $pSheet = null) { + $aCellCollection = $pSheet->getCellCollection(); + + // Get coordinates of $pBefore + $beforeColumn = 'A'; + $beforeRow = 1; + list($beforeColumn, $beforeRow) = PHPExcel_Cell::coordinateFromString( $pBefore ); + + + // Clear cells if we are removing columns or rows + $highestColumn = $pSheet->getHighestColumn(); + $highestRow = $pSheet->getHighestRow(); + + // 1. Clear column strips if we are removing columns + if ($pNumCols < 0 && PHPExcel_Cell::columnIndexFromString($beforeColumn) - 2 + $pNumCols > 0) { + for ($i = 1; $i <= $highestRow - 1; ++$i) { + for ($j = PHPExcel_Cell::columnIndexFromString($beforeColumn) - 1 + $pNumCols; $j <= PHPExcel_Cell::columnIndexFromString($beforeColumn) - 2; ++$j) { + $coordinate = PHPExcel_Cell::stringFromColumnIndex($j) . $i; + $pSheet->removeConditionalStyles($coordinate); + if ($pSheet->cellExists($coordinate)) { + $pSheet->getCell($coordinate)->setValueExplicit('', PHPExcel_Cell_DataType::TYPE_NULL); + $pSheet->getCell($coordinate)->setXfIndex(0); + } + } + } + } + + // 2. Clear row strips if we are removing rows + if ($pNumRows < 0 && $beforeRow - 1 + $pNumRows > 0) { + for ($i = PHPExcel_Cell::columnIndexFromString($beforeColumn) - 1; $i <= PHPExcel_Cell::columnIndexFromString($highestColumn) - 1; ++$i) { + for ($j = $beforeRow + $pNumRows; $j <= $beforeRow - 1; ++$j) { + $coordinate = PHPExcel_Cell::stringFromColumnIndex($i) . $j; + $pSheet->removeConditionalStyles($coordinate); + if ($pSheet->cellExists($coordinate)) { + $pSheet->getCell($coordinate)->setValueExplicit('', PHPExcel_Cell_DataType::TYPE_NULL); + $pSheet->getCell($coordinate)->setXfIndex(0); + } + } + } + } + + + // Loop through cells, bottom-up, and change cell coordinates + while (($cellID = ($pNumCols < 0 || $pNumRows < 0) ? array_shift($aCellCollection) : array_pop($aCellCollection))) { + $cell = $pSheet->getCell($cellID); + + // New coordinates + $newCoordinates = PHPExcel_Cell::stringFromColumnIndex( PHPExcel_Cell::columnIndexFromString($cell->getColumn()) - 1 + $pNumCols ) . ($cell->getRow() + $pNumRows); + + // Should the cell be updated? Move value and cellXf index from one cell to another. + if ((PHPExcel_Cell::columnIndexFromString( $cell->getColumn() ) >= PHPExcel_Cell::columnIndexFromString($beforeColumn)) && + ($cell->getRow() >= $beforeRow)) { + + // Update cell styles + $pSheet->getCell($newCoordinates)->setXfIndex($cell->getXfIndex()); + $cell->setXfIndex(0); + + // Insert this cell at its new location + if ($cell->getDataType() == PHPExcel_Cell_DataType::TYPE_FORMULA) { + // Formula should be adjusted + $pSheet->getCell($newCoordinates) + ->setValue($this->updateFormulaReferences($cell->getValue(), + $pBefore, $pNumCols, $pNumRows, $pSheet->getTitle())); + } else { + // Formula should not be adjusted + $pSheet->getCell($newCoordinates)->setValue($cell->getValue()); + } + + // Clear the original cell + $pSheet->getCell($cell->getCoordinate())->setValue(''); + + } else { + /* We don't need to update styles for rows/columns before our insertion position, + but we do still need to adjust any formulae in those cells */ + if ($cell->getDataType() == PHPExcel_Cell_DataType::TYPE_FORMULA) { + // Formula should be adjusted + $cell->setValue($this->updateFormulaReferences($cell->getValue(), + $pBefore, $pNumCols, $pNumRows, $pSheet->getTitle())); + } + + } + } + + + // Duplicate styles for the newly inserted cells + $highestColumn = $pSheet->getHighestColumn(); + $highestRow = $pSheet->getHighestRow(); + + if ($pNumCols > 0 && PHPExcel_Cell::columnIndexFromString($beforeColumn) - 2 > 0) { + for ($i = $beforeRow; $i <= $highestRow - 1; ++$i) { + + // Style + $coordinate = PHPExcel_Cell::stringFromColumnIndex( PHPExcel_Cell::columnIndexFromString($beforeColumn) - 2 ) . $i; + if ($pSheet->cellExists($coordinate)) { + $xfIndex = $pSheet->getCell($coordinate)->getXfIndex(); + $conditionalStyles = $pSheet->conditionalStylesExists($coordinate) ? + $pSheet->getConditionalStyles($coordinate) : false; + for ($j = PHPExcel_Cell::columnIndexFromString($beforeColumn) - 1; $j <= PHPExcel_Cell::columnIndexFromString($beforeColumn) - 2 + $pNumCols; ++$j) { + $pSheet->getCellByColumnAndRow($j, $i)->setXfIndex($xfIndex); + if ($conditionalStyles) { + $cloned = array(); + foreach ($conditionalStyles as $conditionalStyle) { + $cloned[] = clone $conditionalStyle; + } + $pSheet->setConditionalStyles(PHPExcel_Cell::stringFromColumnIndex($j) . $i, $cloned); + } + } + } + + } + } + + if ($pNumRows > 0 && $beforeRow - 1 > 0) { + for ($i = PHPExcel_Cell::columnIndexFromString($beforeColumn) - 1; $i <= PHPExcel_Cell::columnIndexFromString($highestColumn) - 1; ++$i) { + + // Style + $coordinate = PHPExcel_Cell::stringFromColumnIndex($i) . ($beforeRow - 1); + if ($pSheet->cellExists($coordinate)) { + $xfIndex = $pSheet->getCell($coordinate)->getXfIndex(); + $conditionalStyles = $pSheet->conditionalStylesExists($coordinate) ? + $pSheet->getConditionalStyles($coordinate) : false; + for ($j = $beforeRow; $j <= $beforeRow - 1 + $pNumRows; ++$j) { + $pSheet->getCell(PHPExcel_Cell::stringFromColumnIndex($i) . $j)->setXfIndex($xfIndex); + if ($conditionalStyles) { + $cloned = array(); + foreach ($conditionalStyles as $conditionalStyle) { + $cloned[] = clone $conditionalStyle; + } + $pSheet->setConditionalStyles(PHPExcel_Cell::stringFromColumnIndex($i) . $j, $cloned); + } + } + } + } + } + + + // Update worksheet: column dimensions + $aColumnDimensions = array_reverse($pSheet->getColumnDimensions(), true); + if (!empty($aColumnDimensions)) { + foreach ($aColumnDimensions as $objColumnDimension) { + $newReference = $this->updateCellReference($objColumnDimension->getColumnIndex() . '1', $pBefore, $pNumCols, $pNumRows); + list($newReference) = PHPExcel_Cell::coordinateFromString($newReference); + if ($objColumnDimension->getColumnIndex() != $newReference) { + $objColumnDimension->setColumnIndex($newReference); + } + } + $pSheet->refreshColumnDimensions(); + } + + + // Update worksheet: row dimensions + $aRowDimensions = array_reverse($pSheet->getRowDimensions(), true); + if (!empty($aRowDimensions)) { + foreach ($aRowDimensions as $objRowDimension) { + $newReference = $this->updateCellReference('A' . $objRowDimension->getRowIndex(), $pBefore, $pNumCols, $pNumRows); + list(, $newReference) = PHPExcel_Cell::coordinateFromString($newReference); + if ($objRowDimension->getRowIndex() != $newReference) { + $objRowDimension->setRowIndex($newReference); + } + } + $pSheet->refreshRowDimensions(); + + $copyDimension = $pSheet->getRowDimension($beforeRow - 1); + for ($i = $beforeRow; $i <= $beforeRow - 1 + $pNumRows; ++$i) { + $newDimension = $pSheet->getRowDimension($i); + $newDimension->setRowHeight($copyDimension->getRowHeight()); + $newDimension->setVisible($copyDimension->getVisible()); + $newDimension->setOutlineLevel($copyDimension->getOutlineLevel()); + $newDimension->setCollapsed($copyDimension->getCollapsed()); + } + } + + + // Update worksheet: breaks + $aBreaks = array_reverse($pSheet->getBreaks(), true); + foreach ($aBreaks as $key => $value) { + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + if ($key != $newReference) { + $pSheet->setBreak( $newReference, $value ); + $pSheet->setBreak( $key, PHPExcel_Worksheet::BREAK_NONE ); + } + } + + // Update worksheet: comments + $aComments = $pSheet->getComments(); + $aNewComments = array(); // the new array of all comments + foreach ($aComments as $key => &$value) { + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + $aNewComments[$newReference] = $value; + } + $pSheet->setComments($aNewComments); // replace the comments array + + // Update worksheet: hyperlinks + $aHyperlinkCollection = array_reverse($pSheet->getHyperlinkCollection(), true); + foreach ($aHyperlinkCollection as $key => $value) { + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + if ($key != $newReference) { + $pSheet->setHyperlink( $newReference, $value ); + $pSheet->setHyperlink( $key, null ); + } + } + + + // Update worksheet: data validations + $aDataValidationCollection = array_reverse($pSheet->getDataValidationCollection(), true); + foreach ($aDataValidationCollection as $key => $value) { + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + if ($key != $newReference) { + $pSheet->setDataValidation( $newReference, $value ); + $pSheet->setDataValidation( $key, null ); + } + } + + + // Update worksheet: merge cells + $aMergeCells = $pSheet->getMergeCells(); + $aNewMergeCells = array(); // the new array of all merge cells + foreach ($aMergeCells as $key => &$value) { + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + $aNewMergeCells[$newReference] = $newReference; + } + $pSheet->setMergeCells($aNewMergeCells); // replace the merge cells array + + + // Update worksheet: protected cells + $aProtectedCells = array_reverse($pSheet->getProtectedCells(), true); + foreach ($aProtectedCells as $key => $value) { + $newReference = $this->updateCellReference($key, $pBefore, $pNumCols, $pNumRows); + if ($key != $newReference) { + $pSheet->protectCells( $newReference, $value, true ); + $pSheet->unprotectCells( $key ); + } + } + + + // Update worksheet: autofilter + $autoFilter = $pSheet->getAutoFilter(); + $autoFilterRange = $autoFilter->getRange(); + if (!empty($autoFilterRange)) { + if ($pNumCols != 0) { + $autoFilterColumns = array_keys($autoFilter->getColumns()); + if (count($autoFilterColumns) > 0) { + list($column,$row) = sscanf($pBefore,'%[A-Z]%d'); + $columnIndex = PHPExcel_Cell::columnIndexFromString($column); + list($rangeStart,$rangeEnd) = PHPExcel_Cell::rangeBoundaries($autoFilterRange); + if ($columnIndex <= $rangeEnd[0]) { + if ($pNumCols < 0) { + // If we're actually deleting any columns that fall within the autofilter range, + // then we delete any rules for those columns + $deleteColumn = $columnIndex + $pNumCols - 1; + $deleteCount = abs($pNumCols); + for ($i = 1; $i <= $deleteCount; ++$i) { + if (in_array(PHPExcel_Cell::stringFromColumnIndex($deleteColumn),$autoFilterColumns)) { + $autoFilter->clearColumn(PHPExcel_Cell::stringFromColumnIndex($deleteColumn)); + } + ++$deleteColumn; + } + } + $startCol = ($columnIndex > $rangeStart[0]) ? $columnIndex : $rangeStart[0]; + + // Shuffle columns in autofilter range + if ($pNumCols > 0) { + // For insert, we shuffle from end to beginning to avoid overwriting + $startColID = PHPExcel_Cell::stringFromColumnIndex($startCol-1); + $toColID = PHPExcel_Cell::stringFromColumnIndex($startCol+$pNumCols-1); + $endColID = PHPExcel_Cell::stringFromColumnIndex($rangeEnd[0]); + + $startColRef = $startCol; + $endColRef = $rangeEnd[0]; + $toColRef = $rangeEnd[0]+$pNumCols; + + do { + $autoFilter->shiftColumn(PHPExcel_Cell::stringFromColumnIndex($endColRef-1),PHPExcel_Cell::stringFromColumnIndex($toColRef-1)); + --$endColRef; + --$toColRef; + } while ($startColRef <= $endColRef); + } else { + // For delete, we shuffle from beginning to end to avoid overwriting + $startColID = PHPExcel_Cell::stringFromColumnIndex($startCol-1); + $toColID = PHPExcel_Cell::stringFromColumnIndex($startCol+$pNumCols-1); + $endColID = PHPExcel_Cell::stringFromColumnIndex($rangeEnd[0]); + do { + $autoFilter->shiftColumn($startColID,$toColID); + ++$startColID; + ++$toColID; + } while ($startColID != $endColID); + } + } + } + } + $pSheet->setAutoFilter( $this->updateCellReference($autoFilterRange, $pBefore, $pNumCols, $pNumRows) ); + } + + + // Update worksheet: freeze pane + if ($pSheet->getFreezePane() != '') { + $pSheet->freezePane( $this->updateCellReference($pSheet->getFreezePane(), $pBefore, $pNumCols, $pNumRows) ); + } + + + // Page setup + if ($pSheet->getPageSetup()->isPrintAreaSet()) { + $pSheet->getPageSetup()->setPrintArea( $this->updateCellReference($pSheet->getPageSetup()->getPrintArea(), $pBefore, $pNumCols, $pNumRows) ); + } + + + // Update worksheet: drawings + $aDrawings = $pSheet->getDrawingCollection(); + foreach ($aDrawings as $objDrawing) { + $newReference = $this->updateCellReference($objDrawing->getCoordinates(), $pBefore, $pNumCols, $pNumRows); + if ($objDrawing->getCoordinates() != $newReference) { + $objDrawing->setCoordinates($newReference); + } + } + + + // Update workbook: named ranges + if (count($pSheet->getParent()->getNamedRanges()) > 0) { + foreach ($pSheet->getParent()->getNamedRanges() as $namedRange) { + if ($namedRange->getWorksheet()->getHashCode() == $pSheet->getHashCode()) { + $namedRange->setRange( + $this->updateCellReference($namedRange->getRange(), $pBefore, $pNumCols, $pNumRows) + ); + } + } + } + + // Garbage collect + $pSheet->garbageCollect(); + } + + /** + * Update references within formulas + * + * @param string $pFormula Formula to update + * @param int $pBefore Insert before this one + * @param int $pNumCols Number of columns to insert + * @param int $pNumRows Number of rows to insert + * @return string Updated formula + * @throws Exception + */ + public function updateFormulaReferences($pFormula = '', $pBefore = 'A1', $pNumCols = 0, $pNumRows = 0, $sheetName = '') { + // Update cell references in the formula + $formulaBlocks = explode('"',$pFormula); + $i = false; + foreach($formulaBlocks as &$formulaBlock) { + // Ignore blocks that were enclosed in quotes (alternating entries in the $formulaBlocks array after the explode) + if ($i = !$i) { + $adjustCount = 0; + $newCellTokens = $cellTokens = array(); + // Search for row ranges (e.g. 'Sheet1'!3:5 or 3:5) with or without $ absolutes (e.g. $3:5) + $matchCount = preg_match_all('/'.self::REFHELPER_REGEXP_ROWRANGE.'/i', ' '.$formulaBlock.' ', $matches, PREG_SET_ORDER); + if ($matchCount > 0) { + foreach($matches as $match) { + $fromString = ($match[2] > '') ? $match[2].'!' : ''; + $fromString .= $match[3].':'.$match[4]; + $modified3 = substr($this->updateCellReference('$A'.$match[3],$pBefore,$pNumCols,$pNumRows),2); + $modified4 = substr($this->updateCellReference('$A'.$match[4],$pBefore,$pNumCols,$pNumRows),2); + + if ($match[3].':'.$match[4] !== $modified3.':'.$modified4) { + if (($match[2] == '') || (trim($match[2],"'") == $sheetName)) { + $toString = ($match[2] > '') ? $match[2].'!' : ''; + $toString .= $modified3.':'.$modified4; + // Max worksheet size is 1,048,576 rows by 16,384 columns in Excel 2007, so our adjustments need to be at least one digit more + $column = 100000; + $row = 10000000+trim($match[3],'$'); + $cellIndex = $column.$row; + + $newCellTokens[$cellIndex] = preg_quote($toString); + $cellTokens[$cellIndex] = '/(?<!\d)'.preg_quote($fromString).'(?!\d)/i'; + ++$adjustCount; + } + } + } + } + // Search for column ranges (e.g. 'Sheet1'!C:E or C:E) with or without $ absolutes (e.g. $C:E) + $matchCount = preg_match_all('/'.self::REFHELPER_REGEXP_COLRANGE.'/i', ' '.$formulaBlock.' ', $matches, PREG_SET_ORDER); + if ($matchCount > 0) { + foreach($matches as $match) { + $fromString = ($match[2] > '') ? $match[2].'!' : ''; + $fromString .= $match[3].':'.$match[4]; + $modified3 = substr($this->updateCellReference($match[3].'$1',$pBefore,$pNumCols,$pNumRows),0,-2); + $modified4 = substr($this->updateCellReference($match[4].'$1',$pBefore,$pNumCols,$pNumRows),0,-2); + + if ($match[3].':'.$match[4] !== $modified3.':'.$modified4) { + if (($match[2] == '') || (trim($match[2],"'") == $sheetName)) { + $toString = ($match[2] > '') ? $match[2].'!' : ''; + $toString .= $modified3.':'.$modified4; + // Max worksheet size is 1,048,576 rows by 16,384 columns in Excel 2007, so our adjustments need to be at least one digit more + $column = PHPExcel_Cell::columnIndexFromString(trim($match[3],'$')) + 100000; + $row = 10000000; + $cellIndex = $column.$row; + + $newCellTokens[$cellIndex] = preg_quote($toString); + $cellTokens[$cellIndex] = '/(?<![A-Z])'.preg_quote($fromString).'(?![A-Z])/i'; + ++$adjustCount; + } + } + } + } + // Search for cell ranges (e.g. 'Sheet1'!A3:C5 or A3:C5) with or without $ absolutes (e.g. $A1:C$5) + $matchCount = preg_match_all('/'.self::REFHELPER_REGEXP_CELLRANGE.'/i', ' '.$formulaBlock.' ', $matches, PREG_SET_ORDER); + if ($matchCount > 0) { + foreach($matches as $match) { + $fromString = ($match[2] > '') ? $match[2].'!' : ''; + $fromString .= $match[3].':'.$match[4]; + $modified3 = $this->updateCellReference($match[3],$pBefore,$pNumCols,$pNumRows); + $modified4 = $this->updateCellReference($match[4],$pBefore,$pNumCols,$pNumRows); + + if ($match[3].$match[4] !== $modified3.$modified4) { + if (($match[2] == '') || (trim($match[2],"'") == $sheetName)) { + $toString = ($match[2] > '') ? $match[2].'!' : ''; + $toString .= $modified3.':'.$modified4; + list($column,$row) = PHPExcel_Cell::coordinateFromString($match[3]); + // Max worksheet size is 1,048,576 rows by 16,384 columns in Excel 2007, so our adjustments need to be at least one digit more + $column = PHPExcel_Cell::columnIndexFromString(trim($column,'$')) + 100000; + $row = trim($row,'$') + 10000000; + $cellIndex = $column.$row; + + $newCellTokens[$cellIndex] = preg_quote($toString); + $cellTokens[$cellIndex] = '/(?<![A-Z])'.preg_quote($fromString).'(?!\d)/i'; + ++$adjustCount; + } + } + } + } + // Search for cell references (e.g. 'Sheet1'!A3 or C5) with or without $ absolutes (e.g. $A1 or C$5) + $matchCount = preg_match_all('/'.self::REFHELPER_REGEXP_CELLREF.'/i', ' '.$formulaBlock.' ', $matches, PREG_SET_ORDER); + if ($matchCount > 0) { + foreach($matches as $match) { + $fromString = ($match[2] > '') ? $match[2].'!' : ''; + $fromString .= $match[3]; + $modified3 = $this->updateCellReference($match[3],$pBefore,$pNumCols,$pNumRows); + + if ($match[3] !== $modified3) { + if (($match[2] == '') || (trim($match[2],"'") == $sheetName)) { + $toString = ($match[2] > '') ? $match[2].'!' : ''; + $toString .= $modified3; + list($column,$row) = PHPExcel_Cell::coordinateFromString($match[3]); + // Max worksheet size is 1,048,576 rows by 16,384 columns in Excel 2007, so our adjustments need to be at least one digit more + $column = PHPExcel_Cell::columnIndexFromString(trim($column,'$')) + 100000; + $row = trim($row,'$') + 10000000; + $cellIndex = $column.$row; + + $newCellTokens[$cellIndex] = preg_quote($toString); + $cellTokens[$cellIndex] = '/(?<![A-Z])'.preg_quote($fromString).'(?!\d)/i'; + ++$adjustCount; + } + } + } + } + if ($adjustCount > 0) { + krsort($cellTokens); + krsort($newCellTokens); + // Update cell references in the formula + $formulaBlock = str_replace('\\','',preg_replace($cellTokens,$newCellTokens,$formulaBlock)); + } + } + } + unset($formulaBlock); + + // Then rebuild the formula string + return implode('"',$formulaBlocks); + } + + /** + * Update cell reference + * + * @param string $pCellRange Cell range + * @param int $pBefore Insert before this one + * @param int $pNumCols Number of columns to increment + * @param int $pNumRows Number of rows to increment + * @return string Updated cell range + * @throws Exception + */ + public function updateCellReference($pCellRange = 'A1', $pBefore = 'A1', $pNumCols = 0, $pNumRows = 0) { + // Is it in another worksheet? Will not have to update anything. + if (strpos($pCellRange, "!") !== false) { + return $pCellRange; + // Is it a range or a single cell? + } elseif (strpos($pCellRange, ':') === false && strpos($pCellRange, ',') === false) { + // Single cell + return $this->_updateSingleCellReference($pCellRange, $pBefore, $pNumCols, $pNumRows); + } elseif (strpos($pCellRange, ':') !== false || strpos($pCellRange, ',') !== false) { + // Range + return $this->_updateCellRange($pCellRange, $pBefore, $pNumCols, $pNumRows); + } else { + // Return original + return $pCellRange; + } + } + + /** + * Update named formulas (i.e. containing worksheet references / named ranges) + * + * @param PHPExcel $pPhpExcel Object to update + * @param string $oldName Old name (name to replace) + * @param string $newName New name + */ + public function updateNamedFormulas(PHPExcel $pPhpExcel, $oldName = '', $newName = '') { + if ($oldName == '') { + return; + } + + foreach ($pPhpExcel->getWorksheetIterator() as $sheet) { + foreach ($sheet->getCellCollection(false) as $cellID) { + $cell = $sheet->getCell($cellID); + if (($cell !== NULL) && ($cell->getDataType() == PHPExcel_Cell_DataType::TYPE_FORMULA)) { + $formula = $cell->getValue(); + if (strpos($formula, $oldName) !== false) { + $formula = str_replace("'" . $oldName . "'!", "'" . $newName . "'!", $formula); + $formula = str_replace($oldName . "!", $newName . "!", $formula); + $cell->setValueExplicit($formula, PHPExcel_Cell_DataType::TYPE_FORMULA); + } + } + } + } + } + + /** + * Update cell range + * + * @param string $pCellRange Cell range (e.g. 'B2:D4', 'B:C' or '2:3') + * @param int $pBefore Insert before this one + * @param int $pNumCols Number of columns to increment + * @param int $pNumRows Number of rows to increment + * @return string Updated cell range + * @throws Exception + */ + private function _updateCellRange($pCellRange = 'A1:A1', $pBefore = 'A1', $pNumCols = 0, $pNumRows = 0) { + if (strpos($pCellRange,':') !== false || strpos($pCellRange, ',') !== false) { + // Update range + $range = PHPExcel_Cell::splitRange($pCellRange); + $ic = count($range); + for ($i = 0; $i < $ic; ++$i) { + $jc = count($range[$i]); + for ($j = 0; $j < $jc; ++$j) { + if (ctype_alpha($range[$i][$j])) { + $r = PHPExcel_Cell::coordinateFromString($this->_updateSingleCellReference($range[$i][$j].'1', $pBefore, $pNumCols, $pNumRows)); + $range[$i][$j] = $r[0]; + } elseif(ctype_digit($range[$i][$j])) { + $r = PHPExcel_Cell::coordinateFromString($this->_updateSingleCellReference('A'.$range[$i][$j], $pBefore, $pNumCols, $pNumRows)); + $range[$i][$j] = $r[1]; + } else { + $range[$i][$j] = $this->_updateSingleCellReference($range[$i][$j], $pBefore, $pNumCols, $pNumRows); + } + } + } + + // Recreate range string + return PHPExcel_Cell::buildRange($range); + } else { + throw new Exception("Only cell ranges may be passed to this method."); + } + } + + /** + * Update single cell reference + * + * @param string $pCellReference Single cell reference + * @param int $pBefore Insert before this one + * @param int $pNumCols Number of columns to increment + * @param int $pNumRows Number of rows to increment + * @return string Updated cell reference + * @throws Exception + */ + private function _updateSingleCellReference($pCellReference = 'A1', $pBefore = 'A1', $pNumCols = 0, $pNumRows = 0) { + if (strpos($pCellReference, ':') === false && strpos($pCellReference, ',') === false) { + // Get coordinates of $pBefore + list($beforeColumn, $beforeRow) = PHPExcel_Cell::coordinateFromString( $pBefore ); + + // Get coordinates of $pCellReference + list($newColumn, $newRow) = PHPExcel_Cell::coordinateFromString( $pCellReference ); + + // Verify which parts should be updated + $updateColumn = (($newColumn{0} != '$') && ($beforeColumn{0} != '$') && + PHPExcel_Cell::columnIndexFromString($newColumn) >= PHPExcel_Cell::columnIndexFromString($beforeColumn)); + + $updateRow = (($newRow{0} != '$') && ($beforeRow{0} != '$') && + $newRow >= $beforeRow); + + // Create new column reference + if ($updateColumn) { + $newColumn = PHPExcel_Cell::stringFromColumnIndex( PHPExcel_Cell::columnIndexFromString($newColumn) - 1 + $pNumCols ); + } + + // Create new row reference + if ($updateRow) { + $newRow = $newRow + $pNumRows; + } + + // Return new reference + return $newColumn . $newRow; + } else { + throw new Exception("Only single cell references may be passed to this method."); + } + } + + /** + * __clone implementation. Cloning should not be allowed in a Singleton! + * + * @throws Exception + */ + public final function __clone() { + throw new Exception("Cloning a Singleton is not allowed!"); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/RichText.php b/site/config/PHPExcel/Classes/PHPExcel/RichText.php new file mode 100644 index 0000000..17af169 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/RichText.php @@ -0,0 +1,196 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_RichText + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_RichText implements PHPExcel_IComparable +{ + /** + * Rich text elements + * + * @var PHPExcel_RichText_ITextElement[] + */ + private $_richTextElements; + + /** + * Create a new PHPExcel_RichText instance + * + * @param PHPExcel_Cell $pParent + * @throws Exception + */ + public function __construct(PHPExcel_Cell $pCell = null) + { + // Initialise variables + $this->_richTextElements = array(); + + // Rich-Text string attached to cell? + if ($pCell !== NULL) { + // Add cell text and style + if ($pCell->getValue() != "") { + $objRun = new PHPExcel_RichText_Run($pCell->getValue()); + $objRun->setFont(clone $pCell->getParent()->getStyle($pCell->getCoordinate())->getFont()); + $this->addText($objRun); + } + + // Set parent value + $pCell->setValueExplicit($this, PHPExcel_Cell_DataType::TYPE_STRING); + } + } + + /** + * Add text + * + * @param PHPExcel_RichText_ITextElement $pText Rich text element + * @throws Exception + * @return PHPExcel_RichText + */ + public function addText(PHPExcel_RichText_ITextElement $pText = null) + { + $this->_richTextElements[] = $pText; + return $this; + } + + /** + * Create text + * + * @param string $pText Text + * @return PHPExcel_RichText_TextElement + * @throws Exception + */ + public function createText($pText = '') + { + $objText = new PHPExcel_RichText_TextElement($pText); + $this->addText($objText); + return $objText; + } + + /** + * Create text run + * + * @param string $pText Text + * @return PHPExcel_RichText_Run + * @throws Exception + */ + public function createTextRun($pText = '') + { + $objText = new PHPExcel_RichText_Run($pText); + $this->addText($objText); + return $objText; + } + + /** + * Get plain text + * + * @return string + */ + public function getPlainText() + { + // Return value + $returnValue = ''; + + // Loop through all PHPExcel_RichText_ITextElement + foreach ($this->_richTextElements as $text) { + $returnValue .= $text->getText(); + } + + // Return + return $returnValue; + } + + /** + * Convert to string + * + * @return string + */ + public function __toString() { + return $this->getPlainText(); + } + + /** + * Get Rich Text elements + * + * @return PHPExcel_RichText_ITextElement[] + */ + public function getRichTextElements() + { + return $this->_richTextElements; + } + + /** + * Set Rich Text elements + * + * @param PHPExcel_RichText_ITextElement[] $pElements Array of elements + * @throws Exception + * @return PHPExcel_RichText + */ + public function setRichTextElements($pElements = null) + { + if (is_array($pElements)) { + $this->_richTextElements = $pElements; + } else { + throw new Exception("Invalid PHPExcel_RichText_ITextElement[] array passed."); + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + $hashElements = ''; + foreach ($this->_richTextElements as $element) { + $hashElements .= $element->getHashCode(); + } + + return md5( + $hashElements + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/RichText/ITextElement.php b/site/config/PHPExcel/Classes/PHPExcel/RichText/ITextElement.php new file mode 100644 index 0000000..4c65863 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/RichText/ITextElement.php @@ -0,0 +1,64 @@ +<?php +/** + * PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_RichText_ITextElement + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +interface PHPExcel_RichText_ITextElement +{ + /** + * Get text + * + * @return string Text + */ + public function getText(); + + /** + * Set text + * + * @param $pText string Text + * @return PHPExcel_RichText_ITextElement + */ + public function setText($pText = ''); + + /** + * Get font + * + * @return PHPExcel_Style_Font + */ + public function getFont(); + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode(); +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/RichText/Run.php b/site/config/PHPExcel/Classes/PHPExcel/RichText/Run.php new file mode 100644 index 0000000..9e33786 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/RichText/Run.php @@ -0,0 +1,102 @@ +<?php +/** + * PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_RichText_Run + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_RichText_Run extends PHPExcel_RichText_TextElement implements PHPExcel_RichText_ITextElement +{ + /** + * Font + * + * @var PHPExcel_Style_Font + */ + private $_font; + + /** + * Create a new PHPExcel_RichText_Run instance + * + * @param string $pText Text + */ + public function __construct($pText = '') + { + // Initialise variables + $this->setText($pText); + $this->_font = new PHPExcel_Style_Font(); + } + + /** + * Get font + * + * @return PHPExcel_Style_Font + */ + public function getFont() { + return $this->_font; + } + + /** + * Set font + * + * @param PHPExcel_Style_Font $pFont Font + * @throws Exception + * @return PHPExcel_RichText_ITextElement + */ + public function setFont(PHPExcel_Style_Font $pFont = null) { + $this->_font = $pFont; + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + return md5( + $this->getText() + . $this->_font->getHashCode() + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/RichText/TextElement.php b/site/config/PHPExcel/Classes/PHPExcel/RichText/TextElement.php new file mode 100644 index 0000000..5b9edd0 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/RichText/TextElement.php @@ -0,0 +1,108 @@ +<?php +/** + * PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_RichText_TextElement + * + * @category PHPExcel + * @package PHPExcel_RichText + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_RichText_TextElement implements PHPExcel_RichText_ITextElement +{ + /** + * Text + * + * @var string + */ + private $_text; + + /** + * Create a new PHPExcel_RichText_TextElement instance + * + * @param string $pText Text + */ + public function __construct($pText = '') + { + // Initialise variables + $this->_text = $pText; + } + + /** + * Get text + * + * @return string Text + */ + public function getText() { + return $this->_text; + } + + /** + * Set text + * + * @param $pText string Text + * @return PHPExcel_RichText_ITextElement + */ + public function setText($pText = '') { + $this->_text = $pText; + return $this; + } + + /** + * Get font + * + * @return PHPExcel_Style_Font + */ + public function getFont() { + return null; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + return md5( + $this->_text + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/RichText/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/RichText/_notes/dwsync.xml new file mode 100644 index 0000000..1e8c63c --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/RichText/_notes/dwsync.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="ITextElement.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Run.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="TextElement.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="ITextElement.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="TextElement.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="Run.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="ITextElement.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="TextElement.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="Run.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098600000000" Dst="-1" /> +<file name="ITextElement.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559924864317" remote="131260196400000000" Dst="1" /> +<file name="TextElement.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559925359287" remote="131260196400000000" Dst="1" /> +<file name="Run.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559925922929" remote="131260196400000000" Dst="1" /> +<file name="ITextElement.php" server="62.244.88.21/amashow/" local="131414752229845998" remote="131414680800000000" Dst="2" /> +<file name="TextElement.php" server="62.244.88.21/amashow/" local="131414752230045937" remote="131414680800000000" Dst="2" /> +<file name="Run.php" server="62.244.88.21/amashow/" local="131414752230400581" remote="131414680800000000" Dst="2" /> +<file name="TextElement.php" server="62.244.88.21/deciday/" local="131919461278235188" remote="131826017400000000" Dst="1" /> +<file name="Run.php" server="62.244.88.21/deciday/" local="131919461275837098" remote="131826017400000000" Dst="1" /> +<file name="ITextElement.php" server="62.244.88.21/deciday/" local="131919461274819000" remote="131826017400000000" Dst="1" /> +<file name="ITextElement.php" server="62.244.88.21/deciday_18/" local="131414752229845998" remote="131825945400000000" Dst="2" /> +<file name="Run.php" server="62.244.88.21/deciday_18/" local="131414752230400581" remote="131825945400000000" Dst="2" /> +<file name="TextElement.php" server="62.244.88.21/deciday_18/" local="131414752230045937" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Settings.php b/site/config/PHPExcel/Classes/PHPExcel/Settings.php new file mode 100644 index 0000000..6659b90 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Settings.php @@ -0,0 +1,332 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Settings + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +class PHPExcel_Settings +{ + /** constants */ + /** Available Zip library classes */ + const PCLZIP = 'PHPExcel_Shared_ZipArchive'; + const ZIPARCHIVE = 'ZipArchive'; + + /** Optional Chart Rendering libraries */ + const CHART_RENDERER_JPGRAPH = 'jpgraph'; + + /** Optional PDF Rendering libraries */ + const PDF_RENDERER_TCPDF = 'tcPDF'; + const PDF_RENDERER_DOMPDF = 'DomPDF'; + const PDF_RENDERER_MPDF = 'mPDF'; + + + private static $_chartRenderers = array( + self::CHART_RENDERER_JPGRAPH, + ); + + private static $_pdfRenderers = array( + self::PDF_RENDERER_TCPDF, + self::PDF_RENDERER_DOMPDF, + self::PDF_RENDERER_MPDF, + ); + + + /** + * Name of the class used for Zip file management + * e.g. + * ZipArchive + * + * @var string + */ + private static $_zipClass = self::ZIPARCHIVE; + + + /** + * Name of the external Library used for rendering charts + * e.g. + * jpgraph + * + * @var string + */ + private static $_chartRendererName = NULL; + + /** + * Directory Path to the external Library used for rendering charts + * + * @var string + */ + private static $_chartRendererPath = NULL; + + + /** + * Name of the external Library used for rendering PDF files + * e.g. + * mPDF + * + * @var string + */ + private static $_pdfRendererName = NULL; + + /** + * Directory Path to the external Library used for rendering PDF files + * + * @var string + */ + private static $_pdfRendererPath = NULL; + + + /** + * Set the Zip handler Class that PHPExcel should use for Zip file management (PCLZip or ZipArchive) + * + * @param string $zipClass The Zip handler class that PHPExcel should use for Zip file management + * e.g. PHPExcel_Settings::PCLZip or PHPExcel_Settings::ZipArchive + * @return boolean Success or failure + */ + public static function setZipClass($zipClass) { + if (($zipClass === self::PCLZIP) || + ($zipClass === self::ZIPARCHIVE)) { + self::$_zipClass = $zipClass; + return TRUE; + } + return FALSE; + } // function setZipClass() + + + /** + * Return the name of the Zip handler Class that PHPExcel is configured to use (PCLZip or ZipArchive) + * for Zip file management + * + * @return string Name of the Zip handler Class that PHPExcel is configured to use + * for Zip file management + * e.g. PHPExcel_Settings::PCLZip or PHPExcel_Settings::ZipArchive + */ + public static function getZipClass() { + return self::$_zipClass; + } // function getZipClass() + + + /** + * Return the name of the method that is currently configured for cell cacheing + * + * @return string Name of the cacheing method + */ + public static function getCacheStorageMethod() { + return PHPExcel_CachedObjectStorageFactory::getCacheStorageMethod(); + } // function getCacheStorageMethod() + + + /** + * Return the name of the class that is currently being used for cell cacheing + * + * @return string Name of the class currently being used for cacheing + */ + public static function getCacheStorageClass() { + return PHPExcel_CachedObjectStorageFactory::getCacheStorageClass(); + } // function getCacheStorageClass() + + + /** + * Set the method that should be used for cell cacheing + * + * @param string $method Name of the cacheing method + * @param array $arguments Optional configuration arguments for the cacheing method + * @return boolean Success or failure + */ + public static function setCacheStorageMethod($method = PHPExcel_CachedObjectStorageFactory::cache_in_memory, + $arguments = array()) { + return PHPExcel_CachedObjectStorageFactory::initialize($method, $arguments); + } // function setCacheStorageMethod() + + + /** + * Set the locale code to use for formula translations and any special formatting + * + * @param string $locale The locale code to use (e.g. "fr" or "pt_br" or "en_uk") + * @return boolean Success or failure + */ + public static function setLocale($locale='en_us') { + return PHPExcel_Calculation::getInstance()->setLocale($locale); + } // function setLocale() + + + /** + * Set details of the external library that PHPExcel should use for rendering charts + * + * @param string $libraryName Internal reference name of the library + * e.g. PHPExcel_Settings::CHART_RENDERER_JPGRAPH + * @param string $libraryBaseDir Directory path to the library's base folder + * @return boolean Success or failure + */ + public static function setChartRenderer($libraryName, $libraryBaseDir) { + if (!self::setChartRendererName($libraryName)) + return FALSE; + return self::setChartRendererPath($libraryBaseDir); + } // function setChartRenderer() + + + /** + * Identify to PHPExcel the external library to use for rendering charts + * + * @param string $libraryName Internal reference name of the library + * e.g. PHPExcel_Settings::CHART_RENDERER_JPGRAPH + * @return boolean Success or failure + */ + public static function setChartRendererName($libraryName) { + if (!in_array($libraryName,self::$_chartRenderers)) { + return FALSE; + } + + self::$_chartRendererName = $libraryName; + + return TRUE; + } // function setChartRendererName() + + + /** + * Tell PHPExcel where to find the external library to use for rendering charts + * + * @param string $libraryBaseDir Directory path to the library's base folder + * @return boolean Success or failure + */ + public static function setChartRendererPath($libraryBaseDir) { + if ((file_exists($libraryBaseDir) === false) || (is_readable($libraryBaseDir) === false)) { + return FALSE; + } + self::$_chartRendererPath = $libraryBaseDir; + + return TRUE; + } // function setChartRendererPath() + + + /** + * Return the Chart Rendering Library that PHPExcel is currently configured to use (e.g. jpgraph) + * + * @return string|NULL Internal reference name of the Chart Rendering Library that PHPExcel is + * currently configured to use + * e.g. PHPExcel_Settings::CHART_RENDERER_JPGRAPH + */ + public static function getChartRendererName() { + return self::$_chartRendererName; + } // function getChartRendererName() + + + /** + * Return the directory path to the Chart Rendering Library that PHPExcel is currently configured to use + * + * @return string|NULL Directory Path to the Chart Rendering Library that PHPExcel is + * currently configured to use + */ + public static function getChartRendererPath() { + return self::$_chartRendererPath; + } // function getChartRendererPath() + + + /** + * Set details of the external library that PHPExcel should use for rendering PDF files + * + * @param string $libraryName Internal reference name of the library + * e.g. PHPExcel_Settings::PDF_RENDERER_TCPDF, + * PHPExcel_Settings::PDF_RENDERER_DOMPDF + * or PHPExcel_Settings::PDF_RENDERER_MPDF + * @param string $libraryBaseDir Directory path to the library's base folder + * @return boolean Success or failure + */ + public static function setPdfRenderer($libraryName, $libraryBaseDir) { + if (!self::setPdfRendererName($libraryName)) + return FALSE; + return self::setPdfRendererPath($libraryBaseDir); + } // function setPdfRenderer() + + + /** + * Identify to PHPExcel the external library to use for rendering PDF files + * + * @param string $libraryName Internal reference name of the library + * e.g. PHPExcel_Settings::PDF_RENDERER_TCPDF, + * PHPExcel_Settings::PDF_RENDERER_DOMPDF + * or PHPExcel_Settings::PDF_RENDERER_MPDF + * @return boolean Success or failure + */ + public static function setPdfRendererName($libraryName) { + if (!in_array($libraryName,self::$_pdfRenderers)) { + return FALSE; + } + + self::$_pdfRendererName = $libraryName; + + return TRUE; + } // function setPdfRendererName() + + + /** + * Tell PHPExcel where to find the external library to use for rendering PDF files + * + * @param string $libraryBaseDir Directory path to the library's base folder + * @return boolean Success or failure + */ + public static function setPdfRendererPath($libraryBaseDir) { + if ((file_exists($libraryBaseDir) === false) || (is_readable($libraryBaseDir) === false)) { + return FALSE; + } + self::$_pdfRendererPath = $libraryBaseDir; + + return TRUE; + } // function setPdfRendererPath() + + + /** + * Return the PDF Rendering Library that PHPExcel is currently configured to use (e.g. dompdf) + * + * @return string|NULL Internal reference name of the PDF Rendering Library that PHPExcel is + * currently configured to use + * e.g. PHPExcel_Settings::PDF_RENDERER_TCPDF, + * PHPExcel_Settings::PDF_RENDERER_DOMPDF + * or PHPExcel_Settings::PDF_RENDERER_MPDF + */ + public static function getPdfRendererName() { + return self::$_pdfRendererName; + } // function getPdfRendererName() + + + /** + * Return the directory path to the PDF Rendering Library that PHPExcel is currently configured to use + * + * @return string|NULL Directory Path to the PDF Rendering Library that PHPExcel is + * currently configured to use + */ + public static function getPdfRendererPath() { + return self::$_pdfRendererPath; + } // function getPdfRendererPath() + +} \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/CodePage.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/CodePage.php new file mode 100644 index 0000000..5660e11 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/CodePage.php @@ -0,0 +1,101 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Shared_CodePage + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_CodePage +{ + /** + * Convert Microsoft Code Page Identifier to Code Page Name which iconv + * and mbstring understands + * + * @param int $number Microsoft Code Page Indentifier + * @return string Code Page Name + * @throws Exception + */ + public static function NumberToName($codePage = '1252') + { + switch ($codePage) { + case 367: return 'ASCII'; break; // ASCII + case 437: return 'CP437'; break; // OEM US + case 720: throw new Exception('Code page 720 not supported.'); + break; // OEM Arabic + case 737: return 'CP737'; break; // OEM Greek + case 775: return 'CP775'; break; // OEM Baltic + case 850: return 'CP850'; break; // OEM Latin I + case 852: return 'CP852'; break; // OEM Latin II (Central European) + case 855: return 'CP855'; break; // OEM Cyrillic + case 857: return 'CP857'; break; // OEM Turkish + case 858: return 'CP858'; break; // OEM Multilingual Latin I with Euro + case 860: return 'CP860'; break; // OEM Portugese + case 861: return 'CP861'; break; // OEM Icelandic + case 862: return 'CP862'; break; // OEM Hebrew + case 863: return 'CP863'; break; // OEM Canadian (French) + case 864: return 'CP864'; break; // OEM Arabic + case 865: return 'CP865'; break; // OEM Nordic + case 866: return 'CP866'; break; // OEM Cyrillic (Russian) + case 869: return 'CP869'; break; // OEM Greek (Modern) + case 874: return 'CP874'; break; // ANSI Thai + case 932: return 'CP932'; break; // ANSI Japanese Shift-JIS + case 936: return 'CP936'; break; // ANSI Chinese Simplified GBK + case 949: return 'CP949'; break; // ANSI Korean (Wansung) + case 950: return 'CP950'; break; // ANSI Chinese Traditional BIG5 + case 1200: return 'UTF-16LE'; break; // UTF-16 (BIFF8) + case 1250: return 'CP1250'; break; // ANSI Latin II (Central European) + case 1251: return 'CP1251'; break; // ANSI Cyrillic + case 0: // CodePage is not always correctly set when the xls file was saved by Apple's Numbers program + case 1252: return 'CP1252'; break; // ANSI Latin I (BIFF4-BIFF7) + case 1253: return 'CP1253'; break; // ANSI Greek + case 1254: return 'CP1254'; break; // ANSI Turkish + case 1255: return 'CP1255'; break; // ANSI Hebrew + case 1256: return 'CP1256'; break; // ANSI Arabic + case 1257: return 'CP1257'; break; // ANSI Baltic + case 1258: return 'CP1258'; break; // ANSI Vietnamese + case 1361: return 'CP1361'; break; // ANSI Korean (Johab) + case 10000: return 'MAC'; break; // Apple Roman + case 10006: return 'MACGREEK'; break; // Macintosh Greek + case 10007: return 'MACCYRILLIC'; break; // Macintosh Cyrillic + case 10029: return 'MACCENTRALEUROPE'; break; // Macintosh Central Europe + case 10079: return 'MACICELAND'; break; // Macintosh Icelandic + case 10081: return 'MACTURKISH'; break; // Macintosh Turkish + case 32768: return 'MAC'; break; // Apple Roman + case 32769: throw new Exception('Code page 32769 not supported.'); + break; // ANSI Latin I (BIFF2-BIFF3) + case 65000: return 'UTF-7'; break; // Unicode (UTF-7) + case 65001: return 'UTF-8'; break; // Unicode (UTF-8) + } + + throw new Exception('Unknown codepage: ' . $codePage); + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Date.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Date.php new file mode 100644 index 0000000..2c1ab00 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Date.php @@ -0,0 +1,356 @@ +<?php + +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Shared_Date + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Date +{ + /** constants */ + const CALENDAR_WINDOWS_1900 = 1900; // Base date of 1st Jan 1900 = 1.0 + const CALENDAR_MAC_1904 = 1904; // Base date of 2nd Jan 1904 = 1.0 + + /* + * Names of the months of the year, indexed by shortname + * Planned usage for locale settings + * + * @public + * @var string[] + */ + public static $_monthNames = array( 'Jan' => 'January', + 'Feb' => 'February', + 'Mar' => 'March', + 'Apr' => 'April', + 'May' => 'May', + 'Jun' => 'June', + 'Jul' => 'July', + 'Aug' => 'August', + 'Sep' => 'September', + 'Oct' => 'October', + 'Nov' => 'November', + 'Dec' => 'December' + ); + + /* + * Base calendar year to use for calculations + * + * @private + * @var int + */ + private static $ExcelBaseDate = self::CALENDAR_WINDOWS_1900; + + /* + * Object type for PHP Date/Time values + * + * @private + * @var string + */ + public static $dateTimeObjectType = 'DateTime'; + + + /** + * Set the Excel calendar (Windows 1900 or Mac 1904) + * + * @param integer $baseDate Excel base date + * @return boolean Success or failure + */ + public static function setExcelCalendar($baseDate) { + if (($baseDate == self::CALENDAR_WINDOWS_1900) || + ($baseDate == self::CALENDAR_MAC_1904)) { + self::$ExcelBaseDate = $baseDate; + return TRUE; + } + return FALSE; + } // function setExcelCalendar() + + + /** + * Return the Excel calendar (Windows 1900 or Mac 1904) + * + * @return integer $baseDate Excel base date + */ + public static function getExcelCalendar() { + return self::$ExcelBaseDate; + } // function getExcelCalendar() + + + /** + * Convert a date from Excel to PHP + * + * @param long $dateValue Excel date/time value + * @return long PHP serialized date/time + */ + public static function ExcelToPHP($dateValue = 0) { + if (self::$ExcelBaseDate == self::CALENDAR_WINDOWS_1900) { + $myExcelBaseDate = 25569; + // Adjust for the spurious 29-Feb-1900 (Day 60) + if ($dateValue < 60) { + --$myExcelBaseDate; + } + } else { + $myExcelBaseDate = 24107; + } + + // Perform conversion + if ($dateValue >= 1) { + $utcDays = $dateValue - $myExcelBaseDate; + $returnValue = round($utcDays * 86400); + if (($returnValue <= PHP_INT_MAX) && ($returnValue >= -PHP_INT_MAX)) { + $returnValue = (integer) $returnValue; + } + } else { + $hours = round($dateValue * 24); + $mins = round($dateValue * 1440) - round($hours * 60); + $secs = round($dateValue * 86400) - round($hours * 3600) - round($mins * 60); + $returnValue = (integer) gmmktime($hours, $mins, $secs); + } + + // Return + return $returnValue; + } // function ExcelToPHP() + + + /** + * Convert a date from Excel to a PHP Date/Time object + * + * @param long $dateValue Excel date/time value + * @return long PHP date/time object + */ + public static function ExcelToPHPObject($dateValue = 0) { + $dateTime = self::ExcelToPHP($dateValue); + $days = floor($dateTime / 86400); + $time = round((($dateTime / 86400) - $days) * 86400); + $hours = round($time / 3600); + $minutes = round($time / 60) - ($hours * 60); + $seconds = round($time) - ($hours * 3600) - ($minutes * 60); + + $dateObj = date_create('1-Jan-1970+'.$days.' days'); + $dateObj->setTime($hours,$minutes,$seconds); + + return $dateObj; + } // function ExcelToPHPObject() + + + /** + * Convert a date from PHP to Excel + * + * @param mixed $dateValue PHP serialized date/time or date object + * @return mixed Excel date/time value + * or boolean FALSE on failure + */ + public static function PHPToExcel($dateValue = 0) { + $saveTimeZone = date_default_timezone_get(); + date_default_timezone_set('UTC'); + $retValue = FALSE; + if ((is_object($dateValue)) && ($dateValue instanceof self::$dateTimeObjectType)) { + $retValue = self::FormattedPHPToExcel( $dateValue->format('Y'), $dateValue->format('m'), $dateValue->format('d'), + $dateValue->format('H'), $dateValue->format('i'), $dateValue->format('s') + ); + } elseif (is_numeric($dateValue)) { + $retValue = self::FormattedPHPToExcel( date('Y',$dateValue), date('m',$dateValue), date('d',$dateValue), + date('H',$dateValue), date('i',$dateValue), date('s',$dateValue) + ); + } + date_default_timezone_set($saveTimeZone); + + return $retValue; + } // function PHPToExcel() + + + /** + * FormattedPHPToExcel + * + * @param long $year + * @param long $month + * @param long $day + * @param long $hours + * @param long $minutes + * @param long $seconds + * @return long Excel date/time value + */ + public static function FormattedPHPToExcel($year, $month, $day, $hours=0, $minutes=0, $seconds=0) { + if (self::$ExcelBaseDate == self::CALENDAR_WINDOWS_1900) { + // + // Fudge factor for the erroneous fact that the year 1900 is treated as a Leap Year in MS Excel + // This affects every date following 28th February 1900 + // + $excel1900isLeapYear = TRUE; + if (($year == 1900) && ($month <= 2)) { $excel1900isLeapYear = FALSE; } + $myExcelBaseDate = 2415020; + } else { + $myExcelBaseDate = 2416481; + $excel1900isLeapYear = FALSE; + } + + // Julian base date Adjustment + if ($month > 2) { + $month -= 3; + } else { + $month += 9; + --$year; + } + + // Calculate the Julian Date, then subtract the Excel base date (JD 2415020 = 31-Dec-1899 Giving Excel Date of 0) + $century = substr($year,0,2); + $decade = substr($year,2,2); + $excelDate = floor((146097 * $century) / 4) + floor((1461 * $decade) / 4) + floor((153 * $month + 2) / 5) + $day + 1721119 - $myExcelBaseDate + $excel1900isLeapYear; + + $excelTime = (($hours * 3600) + ($minutes * 60) + $seconds) / 86400; + + return (float) $excelDate + $excelTime; + } // function FormattedPHPToExcel() + + + /** + * Is a given cell a date/time? + * + * @param PHPExcel_Cell $pCell + * @return boolean + */ + public static function isDateTime(PHPExcel_Cell $pCell) { + return self::isDateTimeFormat( + $pCell->getParent()->getStyle( + $pCell->getCoordinate() + )->getNumberFormat() + ); + } // function isDateTime() + + + /** + * Is a given number format a date/time? + * + * @param PHPExcel_Style_NumberFormat $pFormat + * @return boolean + */ + public static function isDateTimeFormat(PHPExcel_Style_NumberFormat $pFormat) { + return self::isDateTimeFormatCode($pFormat->getFormatCode()); + } // function isDateTimeFormat() + + + private static $possibleDateFormatCharacters = 'eymdHs'; + + /** + * Is a given number format code a date/time? + * + * @param string $pFormatCode + * @return boolean + */ + public static function isDateTimeFormatCode($pFormatCode = '') { + // Switch on formatcode + switch ($pFormatCode) { + // General contains an epoch letter 'e', so we trap for it explicitly here + case PHPExcel_Style_NumberFormat::FORMAT_GENERAL: + return FALSE; + // Explicitly defined date formats + case PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_DDMMYYYY: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_DMYSLASH: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_DMYMINUS: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_DMMINUS: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_MYMINUS: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_DATETIME: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME1: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME2: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME3: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME5: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME6: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME7: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME8: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX14: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX16: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX17: + case PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX22: + return TRUE; + } + + // Typically number, currency or accounting (or occasionally fraction) formats + if ((substr($pFormatCode,0,1) == '_') || (substr($pFormatCode,0,2) == '0 ')) { + return FALSE; + } + // Try checking for any of the date formatting characters that don't appear within square braces + if (preg_match('/(^|\])[^\[]*['.self::$possibleDateFormatCharacters.']/i',$pFormatCode)) { + // We might also have a format mask containing quoted strings... + // we don't want to test for any of our characters within the quoted blocks + if (strpos($pFormatCode,'"') !== FALSE) { + $i = FALSE; + foreach(explode('"',$pFormatCode) as $subVal) { + // Only test in alternate array entries (the non-quoted blocks) + if (($i = !$i) && (preg_match('/(^|\])[^\[]*['.self::$possibleDateFormatCharacters.']/i',$subVal))) { + return TRUE; + } + } + return FALSE; + } + return TRUE; + } + + // No date... + return FALSE; + } // function isDateTimeFormatCode() + + + /** + * Convert a date/time string to Excel time + * + * @param string $dateValue Examples: '2009-12-31', '2009-12-31 15:59', '2009-12-31 15:59:10' + * @return float|FALSE Excel date/time serial value + */ + public static function stringToExcel($dateValue = '') { + if (strlen($dateValue) < 2) + return FALSE; + if (!preg_match('/^(\d{1,4}[ \.\/\-][A-Z]{3,9}([ \.\/\-]\d{1,4})?|[A-Z]{3,9}[ \.\/\-]\d{1,4}([ \.\/\-]\d{1,4})?|\d{1,4}[ \.\/\-]\d{1,4}([ \.\/\-]\d{1,4})?)( \d{1,2}:\d{1,2}(:\d{1,2})?)?$/iu', $dateValue)) + return FALSE; + + $dateValueNew = PHPExcel_Calculation_DateTime::DATEVALUE($dateValue); + + if ($dateValueNew === PHPExcel_Calculation_Functions::VALUE()) { + return FALSE; + } else { + if (strpos($dateValue, ':') !== FALSE) { + $timeValue = PHPExcel_Calculation_DateTime::TIMEVALUE($dateValue); + if ($timeValue === PHPExcel_Calculation_Functions::VALUE()) { + return FALSE; + } + $dateValueNew += $timeValue; + } + return $dateValueNew; + } + + + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Drawing.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Drawing.php new file mode 100644 index 0000000..9401000 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Drawing.php @@ -0,0 +1,272 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Shared_Drawing + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Drawing +{ + /** + * Convert pixels to EMU + * + * @param int $pValue Value in pixels + * @return int Value in EMU + */ + public static function pixelsToEMU($pValue = 0) { + return round($pValue * 9525); + } + + /** + * Convert EMU to pixels + * + * @param int $pValue Value in EMU + * @return int Value in pixels + */ + public static function EMUToPixels($pValue = 0) { + if ($pValue != 0) { + return round($pValue / 9525); + } else { + return 0; + } + } + + /** + * Convert pixels to column width. Exact algorithm not known. + * By inspection of a real Excel file using Calibri 11, one finds 1000px ~ 142.85546875 + * This gives a conversion factor of 7. Also, we assume that pixels and font size are proportional. + * + * @param int $pValue Value in pixels + * @param PHPExcel_Style_Font $pDefaultFont Default font of the workbook + * @return int Value in cell dimension + */ + public static function pixelsToCellDimension($pValue = 0, PHPExcel_Style_Font $pDefaultFont) { + // Font name and size + $name = $pDefaultFont->getName(); + $size = $pDefaultFont->getSize(); + + if (isset(PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size])) { + // Exact width can be determined + $colWidth = $pValue + * PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size]['width'] + / PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size]['px']; + } else { + // We don't have data for this particular font and size, use approximation by + // extrapolating from Calibri 11 + $colWidth = $pValue * 11 + * PHPExcel_Shared_Font::$defaultColumnWidths['Calibri'][11]['width'] + / PHPExcel_Shared_Font::$defaultColumnWidths['Calibri'][11]['px'] / $size; + } + + return $colWidth; + } + + /** + * Convert column width from (intrinsic) Excel units to pixels + * + * @param float $pValue Value in cell dimension + * @param PHPExcel_Style_Font $pDefaultFont Default font of the workbook + * @return int Value in pixels + */ + public static function cellDimensionToPixels($pValue = 0, PHPExcel_Style_Font $pDefaultFont) { + // Font name and size + $name = $pDefaultFont->getName(); + $size = $pDefaultFont->getSize(); + + if (isset(PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size])) { + // Exact width can be determined + $colWidth = $pValue + * PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size]['px'] + / PHPExcel_Shared_Font::$defaultColumnWidths[$name][$size]['width']; + + } else { + // We don't have data for this particular font and size, use approximation by + // extrapolating from Calibri 11 + $colWidth = $pValue * $size + * PHPExcel_Shared_Font::$defaultColumnWidths['Calibri'][11]['px'] + / PHPExcel_Shared_Font::$defaultColumnWidths['Calibri'][11]['width'] / 11; + } + + // Round pixels to closest integer + $colWidth = (int) round($colWidth); + + return $colWidth; + } + + /** + * Convert pixels to points + * + * @param int $pValue Value in pixels + * @return int Value in points + */ + public static function pixelsToPoints($pValue = 0) { + return $pValue * 0.67777777; + } + + /** + * Convert points to pixels + * + * @param int $pValue Value in points + * @return int Value in pixels + */ + public static function pointsToPixels($pValue = 0) { + if ($pValue != 0) { + return (int) ceil($pValue * 1.333333333); + } else { + return 0; + } + } + + /** + * Convert degrees to angle + * + * @param int $pValue Degrees + * @return int Angle + */ + public static function degreesToAngle($pValue = 0) { + return (int)round($pValue * 60000); + } + + /** + * Convert angle to degrees + * + * @param int $pValue Angle + * @return int Degrees + */ + public static function angleToDegrees($pValue = 0) { + if ($pValue != 0) { + return round($pValue / 60000); + } else { + return 0; + } + } + + /** + * Create a new image from file. By alexander at alexauto dot nl + * + * @link http://www.php.net/manual/en/function.imagecreatefromwbmp.php#86214 + * @param string $filename Path to Windows DIB (BMP) image + * @return resource + */ + public static function imagecreatefrombmp($p_sFile) + { + // Load the image into a string + $file = fopen($p_sFile,"rb"); + $read = fread($file,10); + while(!feof($file)&&($read<>"")) + $read .= fread($file,1024); + + $temp = unpack("H*",$read); + $hex = $temp[1]; + $header = substr($hex,0,108); + + // Process the header + // Structure: http://www.fastgraph.com/help/bmp_header_format.html + if (substr($header,0,4)=="424d") + { + // Cut it in parts of 2 bytes + $header_parts = str_split($header,2); + + // Get the width 4 bytes + $width = hexdec($header_parts[19].$header_parts[18]); + + // Get the height 4 bytes + $height = hexdec($header_parts[23].$header_parts[22]); + + // Unset the header params + unset($header_parts); + } + + // Define starting X and Y + $x = 0; + $y = 1; + + // Create newimage + $image = imagecreatetruecolor($width,$height); + + // Grab the body from the image + $body = substr($hex,108); + + // Calculate if padding at the end-line is needed + // Divided by two to keep overview. + // 1 byte = 2 HEX-chars + $body_size = (strlen($body)/2); + $header_size = ($width*$height); + + // Use end-line padding? Only when needed + $usePadding = ($body_size>($header_size*3)+4); + + // Using a for-loop with index-calculation instaid of str_split to avoid large memory consumption + // Calculate the next DWORD-position in the body + for ($i=0;$i<$body_size;$i+=3) + { + // Calculate line-ending and padding + if ($x>=$width) + { + // If padding needed, ignore image-padding + // Shift i to the ending of the current 32-bit-block + if ($usePadding) + $i += $width%4; + + // Reset horizontal position + $x = 0; + + // Raise the height-position (bottom-up) + $y++; + + // Reached the image-height? Break the for-loop + if ($y>$height) + break; + } + + // Calculation of the RGB-pixel (defined as BGR in image-data) + // Define $i_pos as absolute position in the body + $i_pos = $i*2; + $r = hexdec($body[$i_pos+4].$body[$i_pos+5]); + $g = hexdec($body[$i_pos+2].$body[$i_pos+3]); + $b = hexdec($body[$i_pos].$body[$i_pos+1]); + + // Calculate and draw the pixel + $color = imagecolorallocate($image,$r,$g,$b); + imagesetpixel($image,$x,$height-$y,$color); + + // Raise the horizontal position + $x++; + } + + // Unset the body / free the memory + unset($body); + + // Return image-object + return $image; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher.php new file mode 100644 index 0000000..ecd8216 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher.php @@ -0,0 +1,91 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Shared_Escher + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Escher +{ + /** + * Drawing Group Container + * + * @var PHPExcel_Shared_Escher_DggContainer + */ + private $_dggContainer; + + /** + * Drawing Container + * + * @var PHPExcel_Shared_Escher_DgContainer + */ + private $_dgContainer; + + /** + * Get Drawing Group Container + * + * @return PHPExcel_Shared_Escher_DgContainer + */ + public function getDggContainer() + { + return $this->_dggContainer; + } + + /** + * Set Drawing Group Container + * + * @param PHPExcel_Shared_Escher_DggContainer $dggContainer + */ + public function setDggContainer($dggContainer) + { + return $this->_dggContainer = $dggContainer; + } + + /** + * Get Drawing Container + * + * @return PHPExcel_Shared_Escher_DgContainer + */ + public function getDgContainer() + { + return $this->_dgContainer; + } + + /** + * Set Drawing Container + * + * @param PHPExcel_Shared_Escher_DgContainer $dgContainer + */ + public function setDgContainer($dgContainer) + { + return $this->_dgContainer = $dgContainer; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer.php new file mode 100644 index 0000000..adbe429 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer.php @@ -0,0 +1,83 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Shared_Escher_DgContainer + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Escher_DgContainer +{ + /** + * Drawing index, 1-based. + * + * @var int + */ + private $_dgId; + + /** + * Last shape index in this drawing + * + * @var int + */ + private $_lastSpId; + + private $_spgrContainer = null; + + public function getDgId() + { + return $this->_dgId; + } + + public function setDgId($value) + { + $this->_dgId = $value; + } + + public function getLastSpId() + { + return $this->_lastSpId; + } + + public function setLastSpId($value) + { + $this->_lastSpId = $value; + } + + public function getSpgrContainer() + { + return $this->_spgrContainer; + } + + public function setSpgrContainer($spgrContainer) + { + return $this->_spgrContainer = $spgrContainer; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php new file mode 100644 index 0000000..ea0235e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php @@ -0,0 +1,109 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Shared_Escher_DgContainer_SpgrContainer + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Escher_DgContainer_SpgrContainer +{ + /** + * Parent Shape Group Container + * + * @var PHPExcel_Shared_Escher_DgContainer_SpgrContainer + */ + private $_parent; + + /** + * Shape Container collection + * + * @var array + */ + private $_children = array(); + + /** + * Set parent Shape Group Container + * + * @param PHPExcel_Shared_Escher_DgContainer_SpgrContainer $parent + */ + public function setParent($parent) + { + $this->_parent = $parent; + } + + /** + * Get the parent Shape Group Container if any + * + * @return PHPExcel_Shared_Escher_DgContainer_SpgrContainer|null + */ + public function getParent() + { + return $this->_parent; + } + + /** + * Add a child. This will be either spgrContainer or spContainer + * + * @param mixed $child + */ + public function addChild($child) + { + $this->_children[] = $child; + $child->setParent($this); + } + + /** + * Get collection of Shape Containers + */ + public function getChildren() + { + return $this->_children; + } + + /** + * Recursively get all spContainers within this spgrContainer + * + * @return PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer[] + */ + public function getAllSpContainers() + { + $allSpContainers = array(); + + foreach ($this->_children as $child) { + if ($child instanceof PHPExcel_Shared_Escher_DgContainer_SpgrContainer) { + $allSpContainers = array_merge($allSpContainers, $child->getAllSpContainers()); + } else { + $allSpContainers[] = $child; + } + } + + return $allSpContainers; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php new file mode 100644 index 0000000..cb4988c --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php @@ -0,0 +1,395 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer +{ + /** + * Parent Shape Group Container + * + * @var PHPExcel_Shared_Escher_DgContainer_SpgrContainer + */ + private $_parent; + + /** + * Is this a group shape? + * + * @var boolean + */ + private $_spgr = false; + + /** + * Shape type + * + * @var int + */ + private $_spType; + + /** + * Shape flag + * + * @var int + */ + private $_spFlag; + + /** + * Shape index (usually group shape has index 0, and the rest: 1,2,3...) + * + * @var boolean + */ + private $_spId; + + /** + * Array of options + * + * @var array + */ + private $_OPT; + + /** + * Cell coordinates of upper-left corner of shape, e.g. 'A1' + * + * @var string + */ + private $_startCoordinates; + + /** + * Horizontal offset of upper-left corner of shape measured in 1/1024 of column width + * + * @var int + */ + private $_startOffsetX; + + /** + * Vertical offset of upper-left corner of shape measured in 1/256 of row height + * + * @var int + */ + private $_startOffsetY; + + /** + * Cell coordinates of bottom-right corner of shape, e.g. 'B2' + * + * @var string + */ + private $_endCoordinates; + + /** + * Horizontal offset of bottom-right corner of shape measured in 1/1024 of column width + * + * @var int + */ + private $_endOffsetX; + + /** + * Vertical offset of bottom-right corner of shape measured in 1/256 of row height + * + * @var int + */ + private $_endOffsetY; + + /** + * Set parent Shape Group Container + * + * @param PHPExcel_Shared_Escher_DgContainer_SpgrContainer $parent + */ + public function setParent($parent) + { + $this->_parent = $parent; + } + + /** + * Get the parent Shape Group Container + * + * @return PHPExcel_Shared_Escher_DgContainer_SpgrContainer + */ + public function getParent() + { + return $this->_parent; + } + + /** + * Set whether this is a group shape + * + * @param boolean $value + */ + public function setSpgr($value = false) + { + $this->_spgr = $value; + } + + /** + * Get whether this is a group shape + * + * @return boolean + */ + public function getSpgr() + { + return $this->_spgr; + } + + /** + * Set the shape type + * + * @param int $value + */ + public function setSpType($value) + { + $this->_spType = $value; + } + + /** + * Get the shape type + * + * @return int + */ + public function getSpType() + { + return $this->_spType; + } + + /** + * Set the shape flag + * + * @param int $value + */ + public function setSpFlag($value) + { + $this->_spFlag = $value; + } + + /** + * Get the shape flag + * + * @return int + */ + public function getSpFlag() + { + return $this->_spFlag; + } + + /** + * Set the shape index + * + * @param int $value + */ + public function setSpId($value) + { + $this->_spId = $value; + } + + /** + * Get the shape index + * + * @return int + */ + public function getSpId() + { + return $this->_spId; + } + + /** + * Set an option for the Shape Group Container + * + * @param int $property The number specifies the option + * @param mixed $value + */ + public function setOPT($property, $value) + { + $this->_OPT[$property] = $value; + } + + /** + * Get an option for the Shape Group Container + * + * @param int $property The number specifies the option + * @return mixed + */ + public function getOPT($property) + { + if (isset($this->_OPT[$property])) { + return $this->_OPT[$property]; + } + return null; + } + + /** + * Get the collection of options + * + * @return array + */ + public function getOPTCollection() + { + return $this->_OPT; + } + + /** + * Set cell coordinates of upper-left corner of shape + * + * @param string $value + */ + public function setStartCoordinates($value = 'A1') + { + $this->_startCoordinates = $value; + } + + /** + * Get cell coordinates of upper-left corner of shape + * + * @return string + */ + public function getStartCoordinates() + { + return $this->_startCoordinates; + } + + /** + * Set offset in x-direction of upper-left corner of shape measured in 1/1024 of column width + * + * @param int $startOffsetX + */ + public function setStartOffsetX($startOffsetX = 0) + { + $this->_startOffsetX = $startOffsetX; + } + + /** + * Get offset in x-direction of upper-left corner of shape measured in 1/1024 of column width + * + * @return int + */ + public function getStartOffsetX() + { + return $this->_startOffsetX; + } + + /** + * Set offset in y-direction of upper-left corner of shape measured in 1/256 of row height + * + * @param int $startOffsetY + */ + public function setStartOffsetY($startOffsetY = 0) + { + $this->_startOffsetY = $startOffsetY; + } + + /** + * Get offset in y-direction of upper-left corner of shape measured in 1/256 of row height + * + * @return int + */ + public function getStartOffsetY() + { + return $this->_startOffsetY; + } + + /** + * Set cell coordinates of bottom-right corner of shape + * + * @param string $value + */ + public function setEndCoordinates($value = 'A1') + { + $this->_endCoordinates = $value; + } + + /** + * Get cell coordinates of bottom-right corner of shape + * + * @return string + */ + public function getEndCoordinates() + { + return $this->_endCoordinates; + } + + /** + * Set offset in x-direction of bottom-right corner of shape measured in 1/1024 of column width + * + * @param int $startOffsetX + */ + public function setEndOffsetX($endOffsetX = 0) + { + $this->_endOffsetX = $endOffsetX; + } + + /** + * Get offset in x-direction of bottom-right corner of shape measured in 1/1024 of column width + * + * @return int + */ + public function getEndOffsetX() + { + return $this->_endOffsetX; + } + + /** + * Set offset in y-direction of bottom-right corner of shape measured in 1/256 of row height + * + * @param int $endOffsetY + */ + public function setEndOffsetY($endOffsetY = 0) + { + $this->_endOffsetY = $endOffsetY; + } + + /** + * Get offset in y-direction of bottom-right corner of shape measured in 1/256 of row height + * + * @return int + */ + public function getEndOffsetY() + { + return $this->_endOffsetY; + } + + /** + * Get the nesting level of this spContainer. This is the number of spgrContainers between this spContainer and + * the dgContainer. A value of 1 = immediately within first spgrContainer + * Higher nesting level occurs if and only if spContainer is part of a shape group + * + * @return int Nesting level + */ + public function getNestingLevel() + { + $nestingLevel = 0; + + $parent = $this->getParent(); + while ($parent instanceof PHPExcel_Shared_Escher_DgContainer_SpgrContainer) { + ++$nestingLevel; + $parent = $parent->getParent(); + } + + return $nestingLevel; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/_notes/dwsync.xml new file mode 100644 index 0000000..42b2a79 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="SpContainer.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="SpContainer.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="SpContainer.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="SpContainer.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560042593065" remote="131260197000000000" Dst="1" /> +<file name="SpContainer.php" server="62.244.88.21/amashow/" local="131414752326228829" remote="131414680800000000" Dst="2" /> +<file name="SpContainer.php" server="62.244.88.21/deciday/" local="131919461281813555" remote="131826017400000000" Dst="1" /> +<file name="SpContainer.php" server="62.244.88.21/deciday_18/" local="131414752326228829" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/_notes/dwsync.xml new file mode 100644 index 0000000..7a84649 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DgContainer/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="SpgrContainer.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="SpgrContainer.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="SpgrContainer.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="SpgrContainer.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560041076748" remote="131260197000000000" Dst="1" /> +<file name="SpgrContainer.php" server="62.244.88.21/amashow/" local="131414752324723215" remote="131414680800000000" Dst="2" /> +<file name="SpgrContainer.php" server="62.244.88.21/deciday/" local="131919461282828151" remote="131826017400000000" Dst="1" /> +<file name="SpgrContainer.php" server="62.244.88.21/deciday_18/" local="131414752324723215" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer.php new file mode 100644 index 0000000..4fddbdf --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer.php @@ -0,0 +1,203 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Shared_Escher_DggContainer + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Escher_DggContainer +{ + /** + * Maximum shape index of all shapes in all drawings increased by one + * + * @var int + */ + private $_spIdMax; + + /** + * Total number of drawings saved + * + * @var int + */ + private $_cDgSaved; + + /** + * Total number of shapes saved (including group shapes) + * + * @var int + */ + private $_cSpSaved; + + /** + * BLIP Store Container + * + * @var PHPExcel_Shared_Escher_DggContainer_BstoreContainer + */ + private $_bstoreContainer; + + /** + * Array of options for the drawing group + * + * @var array + */ + private $_OPT = array(); + + /** + * Array of identifier clusters containg information about the maximum shape identifiers + * + * @var array + */ + private $_IDCLs = array(); + + /** + * Get maximum shape index of all shapes in all drawings (plus one) + * + * @return int + */ + public function getSpIdMax() + { + return $this->_spIdMax; + } + + /** + * Set maximum shape index of all shapes in all drawings (plus one) + * + * @param int + */ + public function setSpIdMax($value) + { + $this->_spIdMax = $value; + } + + /** + * Get total number of drawings saved + * + * @return int + */ + public function getCDgSaved() + { + return $this->_cDgSaved; + } + + /** + * Set total number of drawings saved + * + * @param int + */ + public function setCDgSaved($value) + { + $this->_cDgSaved = $value; + } + + /** + * Get total number of shapes saved (including group shapes) + * + * @return int + */ + public function getCSpSaved() + { + return $this->_cSpSaved; + } + + /** + * Set total number of shapes saved (including group shapes) + * + * @param int + */ + public function setCSpSaved($value) + { + $this->_cSpSaved = $value; + } + + /** + * Get BLIP Store Container + * + * @return PHPExcel_Shared_Escher_DggContainer_BstoreContainer + */ + public function getBstoreContainer() + { + return $this->_bstoreContainer; + } + + /** + * Set BLIP Store Container + * + * @param PHPExcel_Shared_Escher_DggContainer_BstoreContainer $bstoreContainer + */ + public function setBstoreContainer($bstoreContainer) + { + $this->_bstoreContainer = $bstoreContainer; + } + + /** + * Set an option for the drawing group + * + * @param int $property The number specifies the option + * @param mixed $value + */ + public function setOPT($property, $value) + { + $this->_OPT[$property] = $value; + } + + /** + * Get an option for the drawing group + * + * @param int $property The number specifies the option + * @return mixed + */ + public function getOPT($property) + { + if (isset($this->_OPT[$property])) { + return $this->_OPT[$property]; + } + return null; + } + + /** + * Get identifier clusters + * + * @return array + */ + public function getIDCLs() + { + return $this->_IDCLs; + } + + /** + * Set identifier clusters. array(<drawingId> => <max shape id>, ...) + * + * @param array $pValue + */ + public function setIDCLs($pValue) + { + $this->_IDCLs = $pValue; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php new file mode 100644 index 0000000..428c76e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php @@ -0,0 +1,65 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Shared_Escher_DggContainer_BstoreContainer + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Escher_DggContainer_BstoreContainer +{ + /** + * BLIP Store Entries. Each of them holds one BLIP (Big Large Image or Picture) + * + * @var array + */ + private $_BSECollection = array(); + + /** + * Add a BLIP Store Entry + * + * @param PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE $BSE + */ + public function addBSE($BSE) + { + $this->_BSECollection[] = $BSE; + $BSE->setParent($this); + } + + /** + * Get the collection of BLIP Store Entries + * + * @return PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE[] + */ + public function getBSECollection() + { + return $this->_BSECollection; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php new file mode 100644 index 0000000..1f10ae1 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php @@ -0,0 +1,120 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE +{ + const BLIPTYPE_ERROR = 0x00; + const BLIPTYPE_UNKNOWN = 0x01; + const BLIPTYPE_EMF = 0x02; + const BLIPTYPE_WMF = 0x03; + const BLIPTYPE_PICT = 0x04; + const BLIPTYPE_JPEG = 0x05; + const BLIPTYPE_PNG = 0x06; + const BLIPTYPE_DIB = 0x07; + const BLIPTYPE_TIFF = 0x11; + const BLIPTYPE_CMYKJPEG = 0x12; + + /** + * The parent BLIP Store Entry Container + * + * @var PHPExcel_Shared_Escher_DggContainer_BstoreContainer + */ + private $_parent; + + /** + * The BLIP (Big Large Image or Picture) + * + * @var PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip + */ + private $_blip; + + /** + * The BLIP type + * + * @var int + */ + private $_blipType; + + /** + * Set parent BLIP Store Entry Container + * + * @param PHPExcel_Shared_Escher_DggContainer_BstoreContainer $parent + */ + public function setParent($parent) + { + $this->_parent = $parent; + } + + /** + * Get the BLIP + * + * @return PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip + */ + public function getBlip() + { + return $this->_blip; + } + + /** + * Set the BLIP + * + * @param PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip $blip + */ + public function setBlip($blip) + { + $this->_blip = $blip; + $blip->setParent($this); + } + + /** + * Get the BLIP type + * + * @return int + */ + public function getBlipType() + { + return $this->_blipType; + } + + /** + * Set the BLIP type + * + * @param int + */ + public function setBlipType($blipType) + { + $this->_blipType = $blipType; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php new file mode 100644 index 0000000..0d28a6b --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php @@ -0,0 +1,91 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip + * + * @category PHPExcel + * @package PHPExcel_Shared_Escher + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip +{ + /** + * The parent BSE + * + * @var PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE + */ + private $_parent; + + /** + * Raw image data + * + * @var string + */ + private $_data; + + /** + * Get the raw image data + * + * @return string + */ + public function getData() + { + return $this->_data; + } + + /** + * Set the raw image data + * + * @param string + */ + public function setData($data) + { + $this->_data = $data; + } + + /** + * Set parent BSE + * + * @param PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE $parent + */ + public function setParent($parent) + { + $this->_parent = $parent; + } + + /** + * Get parent BSE + * + * @return PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE $parent + */ + public function getParent() + { + return $this->_parent; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/_notes/dwsync.xml new file mode 100644 index 0000000..3370d4d --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Blip.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Blip.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="Blip.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="Blip.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560048261863" remote="131260197000000000" Dst="1" /> +<file name="Blip.php" server="62.244.88.21/amashow/" local="131414752330306677" remote="131414680800000000" Dst="2" /> +<file name="Blip.php" server="62.244.88.21/deciday/" local="131919461284670482" remote="131826017400000000" Dst="1" /> +<file name="Blip.php" server="62.244.88.21/deciday_18/" local="131414752330306677" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/_notes/dwsync.xml new file mode 100644 index 0000000..cda5b46 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="BSE.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="BSE.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="BSE.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="BSE.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560045136075" remote="131260197000000000" Dst="1" /> +<file name="BSE.php" server="62.244.88.21/amashow/" local="131414752328969207" remote="131414680800000000" Dst="2" /> +<file name="BSE.php" server="62.244.88.21/deciday/" local="131919461285388648" remote="131826017400000000" Dst="1" /> +<file name="BSE.php" server="62.244.88.21/deciday_18/" local="131414752328969207" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/_notes/dwsync.xml new file mode 100644 index 0000000..e38087a --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/DggContainer/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="BstoreContainer.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="BstoreContainer.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="BstoreContainer.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="BstoreContainer.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560044305717" remote="131260197000000000" Dst="1" /> +<file name="BstoreContainer.php" server="62.244.88.21/amashow/" local="131414752328182971" remote="131414680800000000" Dst="2" /> +<file name="BstoreContainer.php" server="62.244.88.21/deciday/" local="131919461285746181" remote="131826017400000000" Dst="1" /> +<file name="BstoreContainer.php" server="62.244.88.21/deciday_18/" local="131414752328182971" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/_notes/dwsync.xml new file mode 100644 index 0000000..1265d3a --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Escher/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="DgContainer.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="DggContainer.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="DgContainer.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="DggContainer.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="DgContainer.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="DggContainer.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="DgContainer.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560039951379" remote="131260197000000000" Dst="1" /> +<file name="DggContainer.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560040385739" remote="131260197000000000" Dst="1" /> +<file name="DgContainer.php" server="62.244.88.21/amashow/" local="131414752323492458" remote="131414680800000000" Dst="2" /> +<file name="DggContainer.php" server="62.244.88.21/amashow/" local="131414752323930440" remote="131414680800000000" Dst="2" /> +<file name="DggContainer.php" server="62.244.88.21/deciday/" local="131919461286476902" remote="131826017400000000" Dst="1" /> +<file name="DgContainer.php" server="62.244.88.21/deciday/" local="131919461284285794" remote="131826017400000000" Dst="1" /> +<file name="DgContainer.php" server="62.244.88.21/deciday_18/" local="131414752323492458" remote="131825945400000000" Dst="2" /> +<file name="DggContainer.php" server="62.244.88.21/deciday_18/" local="131414752323930440" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Excel5.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Excel5.php new file mode 100644 index 0000000..629f621 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Excel5.php @@ -0,0 +1,317 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Shared_Excel5 + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Excel5 +{ + /** + * Get the width of a column in pixels. We use the relationship y = ceil(7x) where + * x is the width in intrinsic Excel units (measuring width in number of normal characters) + * This holds for Arial 10 + * + * @param PHPExcel_Worksheet $sheet The sheet + * @param integer $col The column + * @return integer The width in pixels + */ + public static function sizeCol($sheet, $col = 'A') + { + // default font of the workbook + $font = $sheet->getParent()->getDefaultStyle()->getFont(); + + $columnDimensions = $sheet->getColumnDimensions(); + + // first find the true column width in pixels (uncollapsed and unhidden) + if ( isset($columnDimensions[$col]) and $columnDimensions[$col]->getWidth() != -1 ) { + + // then we have column dimension with explicit width + $columnDimension = $columnDimensions[$col]; + $width = $columnDimension->getWidth(); + $pixelWidth = PHPExcel_Shared_Drawing::cellDimensionToPixels($width, $font); + + } else if ($sheet->getDefaultColumnDimension()->getWidth() != -1) { + + // then we have default column dimension with explicit width + $defaultColumnDimension = $sheet->getDefaultColumnDimension(); + $width = $defaultColumnDimension->getWidth(); + $pixelWidth = PHPExcel_Shared_Drawing::cellDimensionToPixels($width, $font); + + } else { + + // we don't even have any default column dimension. Width depends on default font + $pixelWidth = PHPExcel_Shared_Font::getDefaultColumnWidthByFont($font, true); + } + + // now find the effective column width in pixels + if (isset($columnDimensions[$col]) and !$columnDimensions[$col]->getVisible()) { + $effectivePixelWidth = 0; + } else { + $effectivePixelWidth = $pixelWidth; + } + + return $effectivePixelWidth; + } + + /** + * Convert the height of a cell from user's units to pixels. By interpolation + * the relationship is: y = 4/3x. If the height hasn't been set by the user we + * use the default value. If the row is hidden we use a value of zero. + * + * @param PHPExcel_Worksheet $sheet The sheet + * @param integer $row The row index (1-based) + * @return integer The width in pixels + */ + public static function sizeRow($sheet, $row = 1) + { + // default font of the workbook + $font = $sheet->getParent()->getDefaultStyle()->getFont(); + + $rowDimensions = $sheet->getRowDimensions(); + + // first find the true row height in pixels (uncollapsed and unhidden) + if ( isset($rowDimensions[$row]) and $rowDimensions[$row]->getRowHeight() != -1) { + + // then we have a row dimension + $rowDimension = $rowDimensions[$row]; + $rowHeight = $rowDimension->getRowHeight(); + $pixelRowHeight = (int) ceil(4 * $rowHeight / 3); // here we assume Arial 10 + + } else if ($sheet->getDefaultRowDimension()->getRowHeight() != -1) { + + // then we have a default row dimension with explicit height + $defaultRowDimension = $sheet->getDefaultRowDimension(); + $rowHeight = $defaultRowDimension->getRowHeight(); + $pixelRowHeight = PHPExcel_Shared_Drawing::pointsToPixels($rowHeight); + + } else { + + // we don't even have any default row dimension. Height depends on default font + $pointRowHeight = PHPExcel_Shared_Font::getDefaultRowHeightByFont($font); + $pixelRowHeight = PHPExcel_Shared_Font::fontSizeToPixels($pointRowHeight); + + } + + // now find the effective row height in pixels + if ( isset($rowDimensions[$row]) and !$rowDimensions[$row]->getVisible() ) { + $effectivePixelRowHeight = 0; + } else { + $effectivePixelRowHeight = $pixelRowHeight; + } + + return $effectivePixelRowHeight; + } + + /** + * Get the horizontal distance in pixels between two anchors + * The distanceX is found as sum of all the spanning columns widths minus correction for the two offsets + * + * @param PHPExcel_Worksheet $sheet + * @param string $startColumn + * @param integer $startOffset Offset within start cell measured in 1/1024 of the cell width + * @param string $endColumn + * @param integer $endOffset Offset within end cell measured in 1/1024 of the cell width + * @return integer Horizontal measured in pixels + */ + public static function getDistanceX(PHPExcel_Worksheet $sheet, $startColumn = 'A', $startOffsetX = 0, $endColumn = 'A', $endOffsetX = 0) + { + $distanceX = 0; + + // add the widths of the spanning columns + $startColumnIndex = PHPExcel_Cell::columnIndexFromString($startColumn) - 1; // 1-based + $endColumnIndex = PHPExcel_Cell::columnIndexFromString($endColumn) - 1; // 1-based + for ($i = $startColumnIndex; $i <= $endColumnIndex; ++$i) { + $distanceX += self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($i)); + } + + // correct for offsetX in startcell + $distanceX -= (int) floor(self::sizeCol($sheet, $startColumn) * $startOffsetX / 1024); + + // correct for offsetX in endcell + $distanceX -= (int) floor(self::sizeCol($sheet, $endColumn) * (1 - $endOffsetX / 1024)); + + return $distanceX; + } + + /** + * Get the vertical distance in pixels between two anchors + * The distanceY is found as sum of all the spanning rows minus two offsets + * + * @param PHPExcel_Worksheet $sheet + * @param string $startRow (1-based) + * @param integer $startOffset Offset within start cell measured in 1/256 of the cell height + * @param string $endRow (1-based) + * @param integer $endOffset Offset within end cell measured in 1/256 of the cell height + * @return integer Vertical distance measured in pixels + */ + public static function getDistanceY(PHPExcel_Worksheet $sheet, $startRow = 1, $startOffsetY = 0, $endRow = 1, $endOffsetY = 0) + { + $distanceY = 0; + + // add the widths of the spanning rows + for ($row = $startRow; $row <= $endRow; ++$row) { + $distanceY += self::sizeRow($sheet, $row); + } + + // correct for offsetX in startcell + $distanceY -= (int) floor(self::sizeRow($sheet, $startRow) * $startOffsetY / 256); + + // correct for offsetX in endcell + $distanceY -= (int) floor(self::sizeRow($sheet, $endRow) * (1 - $endOffsetY / 256)); + + return $distanceY; + } + + /** + * Convert 1-cell anchor coordinates to 2-cell anchor coordinates + * This function is ported from PEAR Spreadsheet_Writer_Excel with small modifications + * + * Calculate the vertices that define the position of the image as required by + * the OBJ record. + * + * +------------+------------+ + * | A | B | + * +-----+------------+------------+ + * | |(x1,y1) | | + * | 1 |(A1)._______|______ | + * | | | | | + * | | | | | + * +-----+----| BITMAP |-----+ + * | | | | | + * | 2 | |______________. | + * | | | (B2)| + * | | | (x2,y2)| + * +---- +------------+------------+ + * + * Example of a bitmap that covers some of the area from cell A1 to cell B2. + * + * Based on the width and height of the bitmap we need to calculate 8 vars: + * $col_start, $row_start, $col_end, $row_end, $x1, $y1, $x2, $y2. + * The width and height of the cells are also variable and have to be taken into + * account. + * The values of $col_start and $row_start are passed in from the calling + * function. The values of $col_end and $row_end are calculated by subtracting + * the width and height of the bitmap from the width and height of the + * underlying cells. + * The vertices are expressed as a percentage of the underlying cell width as + * follows (rhs values are in pixels): + * + * x1 = X / W *1024 + * y1 = Y / H *256 + * x2 = (X-1) / W *1024 + * y2 = (Y-1) / H *256 + * + * Where: X is distance from the left side of the underlying cell + * Y is distance from the top of the underlying cell + * W is the width of the cell + * H is the height of the cell + * + * @param PHPExcel_Worksheet $sheet + * @param string $coordinates E.g. 'A1' + * @param integer $offsetX Horizontal offset in pixels + * @param integer $offsetY Vertical offset in pixels + * @param integer $width Width in pixels + * @param integer $height Height in pixels + * @return array + */ + public static function oneAnchor2twoAnchor($sheet, $coordinates, $offsetX, $offsetY, $width, $height) + { + list($column, $row) = PHPExcel_Cell::coordinateFromString($coordinates); + $col_start = PHPExcel_Cell::columnIndexFromString($column) - 1; + $row_start = $row - 1; + + $x1 = $offsetX; + $y1 = $offsetY; + + // Initialise end cell to the same as the start cell + $col_end = $col_start; // Col containing lower right corner of object + $row_end = $row_start; // Row containing bottom right corner of object + + // Zero the specified offset if greater than the cell dimensions + if ($x1 >= self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_start))) { + $x1 = 0; + } + if ($y1 >= self::sizeRow($sheet, $row_start + 1)) { + $y1 = 0; + } + + $width = $width + $x1 -1; + $height = $height + $y1 -1; + + // Subtract the underlying cell widths to find the end cell of the image + while ($width >= self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_end))) { + $width -= self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_end)); + ++$col_end; + } + + // Subtract the underlying cell heights to find the end cell of the image + while ($height >= self::sizeRow($sheet, $row_end + 1)) { + $height -= self::sizeRow($sheet, $row_end + 1); + ++$row_end; + } + + // Bitmap isn't allowed to start or finish in a hidden cell, i.e. a cell + // with zero height or width. + if (self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_start)) == 0) { + return; + } + if (self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_end)) == 0) { + return; + } + if (self::sizeRow($sheet, $row_start + 1) == 0) { + return; + } + if (self::sizeRow($sheet, $row_end + 1) == 0) { + return; + } + + // Convert the pixel values to the percentage value expected by Excel + $x1 = $x1 / self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_start)) * 1024; + $y1 = $y1 / self::sizeRow($sheet, $row_start + 1) * 256; + $x2 = ($width + 1) / self::sizeCol($sheet, PHPExcel_Cell::stringFromColumnIndex($col_end)) * 1024; // Distance to right side of object + $y2 = ($height + 1) / self::sizeRow($sheet, $row_end + 1) * 256; // Distance to bottom of object + + $startCoordinates = PHPExcel_Cell::stringFromColumnIndex($col_start) . ($row_start + 1); + $endCoordinates = PHPExcel_Cell::stringFromColumnIndex($col_end) . ($row_end + 1); + + $twoAnchor = array( + 'startCoordinates' => $startCoordinates, + 'startOffsetX' => $x1, + 'startOffsetY' => $y1, + 'endCoordinates' => $endCoordinates, + 'endOffsetX' => $x2, + 'endOffsetY' => $y2, + ); + + return $twoAnchor; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/File.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/File.php new file mode 100644 index 0000000..575ac3c --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/File.php @@ -0,0 +1,139 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Shared_File + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_File +{ + /** + * Verify if a file exists + * + * @param string $pFilename Filename + * @return bool + */ + public static function file_exists($pFilename) { + // Sick construction, but it seems that + // file_exists returns strange values when + // doing the original file_exists on ZIP archives... + if ( strtolower(substr($pFilename, 0, 3)) == 'zip' ) { + // Open ZIP file and verify if the file exists + $zipFile = substr($pFilename, 6, strpos($pFilename, '#') - 6); + $archiveFile = substr($pFilename, strpos($pFilename, '#') + 1); + + $zip = new ZipArchive(); + if ($zip->open($zipFile) === true) { + $returnValue = ($zip->getFromName($archiveFile) !== false); + $zip->close(); + return $returnValue; + } else { + return false; + } + } else { + // Regular file_exists + return file_exists($pFilename); + } + } + + /** + * Returns canonicalized absolute pathname, also for ZIP archives + * + * @param string $pFilename + * @return string + */ + public static function realpath($pFilename) { + // Returnvalue + $returnValue = ''; + + // Try using realpath() + if (file_exists($pFilename)) { + $returnValue = realpath($pFilename); + } + + // Found something? + if ($returnValue == '' || ($returnValue === NULL)) { + $pathArray = explode('/' , $pFilename); + while(in_array('..', $pathArray) && $pathArray[0] != '..') { + for ($i = 0; $i < count($pathArray); ++$i) { + if ($pathArray[$i] == '..' && $i > 0) { + unset($pathArray[$i]); + unset($pathArray[$i - 1]); + break; + } + } + } + $returnValue = implode('/', $pathArray); + } + + // Return + return $returnValue; + } + + /** + * Get the systems temporary directory. + * + * @return string + */ + public static function sys_get_temp_dir() + { + // sys_get_temp_dir is only available since PHP 5.2.1 + // http://php.net/manual/en/function.sys-get-temp-dir.php#94119 + + if ( !function_exists('sys_get_temp_dir')) { + if ($temp = getenv('TMP') ) { + if ((!empty($temp)) && (file_exists($temp))) { return realpath($temp); } + } + if ($temp = getenv('TEMP') ) { + if ((!empty($temp)) && (file_exists($temp))) { return realpath($temp); } + } + if ($temp = getenv('TMPDIR') ) { + if ((!empty($temp)) && (file_exists($temp))) { return realpath($temp); } + } + + // trick for creating a file in system's temporary dir + // without knowing the path of the system's temporary dir + $temp = tempnam(__FILE__, ''); + if (file_exists($temp)) { + unlink($temp); + return realpath(dirname($temp)); + } + + return null; + } + + // use ordinary built-in PHP function + // There should be no problem with the 5.2.4 Suhosin realpath() bug, because this line should only + // be called if we're running 5.2.1 or earlier + return realpath(sys_get_temp_dir()); + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/Font.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/Font.php new file mode 100644 index 0000000..3d0662e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/Font.php @@ -0,0 +1,775 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Shared_Font + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_Font +{ + /* Methods for resolving autosize value */ + const AUTOSIZE_METHOD_APPROX = 'approx'; + const AUTOSIZE_METHOD_EXACT = 'exact'; + + private static $_autoSizeMethods = array( + self::AUTOSIZE_METHOD_APPROX, + self::AUTOSIZE_METHOD_EXACT, + ); + + /** Character set codes used by BIFF5-8 in Font records */ + const CHARSET_ANSI_LATIN = 0x00; + const CHARSET_SYSTEM_DEFAULT = 0x01; + const CHARSET_SYMBOL = 0x02; + const CHARSET_APPLE_ROMAN = 0x4D; + const CHARSET_ANSI_JAPANESE_SHIFTJIS = 0x80; + const CHARSET_ANSI_KOREAN_HANGUL = 0x81; + const CHARSET_ANSI_KOREAN_JOHAB = 0x82; + const CHARSET_ANSI_CHINESE_SIMIPLIFIED = 0x86; // gb2312 + const CHARSET_ANSI_CHINESE_TRADITIONAL = 0x88; // big5 + const CHARSET_ANSI_GREEK = 0xA1; + const CHARSET_ANSI_TURKISH = 0xA2; + const CHARSET_ANSI_VIETNAMESE = 0xA3; + const CHARSET_ANSI_HEBREW = 0xB1; + const CHARSET_ANSI_ARABIC = 0xB2; + const CHARSET_ANSI_BALTIC = 0xBA; + const CHARSET_ANSI_CYRILLIC = 0xCC; + const CHARSET_ANSI_THAI = 0xDD; + const CHARSET_ANSI_LATIN_II = 0xEE; + const CHARSET_OEM_LATIN_I = 0xFF; + + // XXX: Constants created! + /** Font filenames */ + const ARIAL = 'arial.ttf'; + const ARIAL_BOLD = 'arialbd.ttf'; + const ARIAL_ITALIC = 'ariali.ttf'; + const ARIAL_BOLD_ITALIC = 'arialbi.ttf'; + + const CALIBRI = 'CALIBRI.TTF'; + const CALIBRI_BOLD = 'CALIBRIB.TTF'; + const CALIBRI_ITALIC = 'CALIBRII.TTF'; + const CALIBRI_BOLD_ITALIC = 'CALIBRIZ.TTF'; + + const COMIC_SANS_MS = 'comic.ttf'; + const COMIC_SANS_MS_BOLD = 'comicbd.ttf'; + + const COURIER_NEW = 'cour.ttf'; + const COURIER_NEW_BOLD = 'courbd.ttf'; + const COURIER_NEW_ITALIC = 'couri.ttf'; + const COURIER_NEW_BOLD_ITALIC = 'courbi.ttf'; + + const GEORGIA = 'georgia.ttf'; + const GEORGIA_BOLD = 'georgiab.ttf'; + const GEORGIA_ITALIC = 'georgiai.ttf'; + const GEORGIA_BOLD_ITALIC = 'georgiaz.ttf'; + + const IMPACT = 'impact.ttf'; + + const LIBERATION_SANS = 'LiberationSans-Regular.ttf'; + const LIBERATION_SANS_BOLD = 'LiberationSans-Bold.ttf'; + const LIBERATION_SANS_ITALIC = 'LiberationSans-Italic.ttf'; + const LIBERATION_SANS_BOLD_ITALIC = 'LiberationSans-BoldItalic.ttf'; + + const LUCIDA_CONSOLE = 'lucon.ttf'; + const LUCIDA_SANS_UNICODE = 'l_10646.ttf'; + + const MICROSOFT_SANS_SERIF = 'micross.ttf'; + + const PALATINO_LINOTYPE = 'pala.ttf'; + const PALATINO_LINOTYPE_BOLD = 'palab.ttf'; + const PALATINO_LINOTYPE_ITALIC = 'palai.ttf'; + const PALATINO_LINOTYPE_BOLD_ITALIC = 'palabi.ttf'; + + const SYMBOL = 'symbol.ttf'; + + const TAHOMA = 'tahoma.ttf'; + const TAHOMA_BOLD = 'tahomabd.ttf'; + + const TIMES_NEW_ROMAN = 'times.ttf'; + const TIMES_NEW_ROMAN_BOLD = 'timesbd.ttf'; + const TIMES_NEW_ROMAN_ITALIC = 'timesi.ttf'; + const TIMES_NEW_ROMAN_BOLD_ITALIC = 'timesbi.ttf'; + + const TREBUCHET_MS = 'trebuc.ttf'; + const TREBUCHET_MS_BOLD = 'trebucbd.ttf'; + const TREBUCHET_MS_ITALIC = 'trebucit.ttf'; + const TREBUCHET_MS_BOLD_ITALIC = 'trebucbi.ttf'; + + const VERDANA = 'verdana.ttf'; + const VERDANA_BOLD = 'verdanab.ttf'; + const VERDANA_ITALIC = 'verdanai.ttf'; + const VERDANA_BOLD_ITALIC = 'verdanaz.ttf'; + + /** + * AutoSize method + * + * @var string + */ + private static $autoSizeMethod = self::AUTOSIZE_METHOD_APPROX; + + /** + * Path to folder containing TrueType font .ttf files + * + * @var string + */ + private static $trueTypeFontPath = null; + + /** + * How wide is a default column for a given default font and size? + * Empirical data found by inspecting real Excel files and reading off the pixel width + * in Microsoft Office Excel 2007. + * + * @var array + */ + public static $defaultColumnWidths = array( + 'Arial' => array( + 1 => array('px' => 24, 'width' => 12.00000000), + 2 => array('px' => 24, 'width' => 12.00000000), + 3 => array('px' => 32, 'width' => 10.66406250), + 4 => array('px' => 32, 'width' => 10.66406250), + 5 => array('px' => 40, 'width' => 10.00000000), + 6 => array('px' => 48, 'width' => 9.59765625), + 7 => array('px' => 48, 'width' => 9.59765625), + 8 => array('px' => 56, 'width' => 9.33203125), + 9 => array('px' => 64, 'width' => 9.14062500), + 10 => array('px' => 64, 'width' => 9.14062500), + ), + 'Calibri' => array( + 1 => array('px' => 24, 'width' => 12.00000000), + 2 => array('px' => 24, 'width' => 12.00000000), + 3 => array('px' => 32, 'width' => 10.66406250), + 4 => array('px' => 32, 'width' => 10.66406250), + 5 => array('px' => 40, 'width' => 10.00000000), + 6 => array('px' => 48, 'width' => 9.59765625), + 7 => array('px' => 48, 'width' => 9.59765625), + 8 => array('px' => 56, 'width' => 9.33203125), + 9 => array('px' => 56, 'width' => 9.33203125), + 10 => array('px' => 64, 'width' => 9.14062500), + 11 => array('px' => 64, 'width' => 9.14062500), + ), + 'Verdana' => array( + 1 => array('px' => 24, 'width' => 12.00000000), + 2 => array('px' => 24, 'width' => 12.00000000), + 3 => array('px' => 32, 'width' => 10.66406250), + 4 => array('px' => 32, 'width' => 10.66406250), + 5 => array('px' => 40, 'width' => 10.00000000), + 6 => array('px' => 48, 'width' => 9.59765625), + 7 => array('px' => 48, 'width' => 9.59765625), + 8 => array('px' => 64, 'width' => 9.14062500), + 9 => array('px' => 72, 'width' => 9.00000000), + 10 => array('px' => 72, 'width' => 9.00000000), + ), + ); + + /** + * Set autoSize method + * + * @param string $pValue + * @return boolean Success or failure + */ + public static function setAutoSizeMethod($pValue = self::AUTOSIZE_METHOD_APPROX) + { + if (!in_array($pValue,self::$_autoSizeMethods)) { + return FALSE; + } + + self::$autoSizeMethod = $pValue; + + return TRUE; + } + + /** + * Get autoSize method + * + * @return string + */ + public static function getAutoSizeMethod() + { + return self::$autoSizeMethod; + } + + /** + * Set the path to the folder containing .ttf files. There should be a trailing slash. + * Typical locations on variout some platforms: + * <ul> + * <li>C:/Windows/Fonts/</li> + * <li>/usr/share/fonts/truetype/</li> + * <li>~/.fonts/</li> + * </ul> + * + * @param string $pValue + */ + public static function setTrueTypeFontPath($pValue = '') + { + self::$trueTypeFontPath = $pValue; + } + + /** + * Get the path to the folder containing .ttf files. + * + * @return string + */ + public static function getTrueTypeFontPath() + { + return self::$trueTypeFontPath; + } + + /** + * Calculate an (approximate) OpenXML column width, based on font size and text contained + * + * @param int $fontSize Font size (in pixels or points) + * @param bool $fontSizeInPixels Is the font size specified in pixels (true) or in points (false) ? + * @param string $cellText Text to calculate width + * @param int $rotation Rotation angle + * @return int Column width + */ + public static function calculateColumnWidth(PHPExcel_Style_Font $font, $cellText = '', $rotation = 0, PHPExcel_Style_Font $defaultFont = null) { + + // If it is rich text, use plain text + if ($cellText instanceof PHPExcel_RichText) { + $cellText = $cellText->getPlainText(); + } + + // Special case if there are one or more newline characters ("\n") + if (strpos($cellText, "\n") !== false) { + $lineTexts = explode("\n", $cellText); + $lineWitdhs = array(); + foreach ($lineTexts as $lineText) { + $lineWidths[] = self::calculateColumnWidth($font, $lineText, $rotation = 0, $defaultFont); + } + return max($lineWidths); // width of longest line in cell + } + + // Try to get the exact text width in pixels + try { + // If autosize method is set to 'approx', use approximation + if (self::$autoSizeMethod == self::AUTOSIZE_METHOD_APPROX) { + throw new Exception('AutoSize method is set to approx'); + } + + // Width of text in pixels excl. padding + $columnWidth = self::getTextWidthPixelsExact($cellText, $font, $rotation); + + // Excel adds some padding, use 1.07 of the width of an 'n' glyph + $columnWidth += ceil(self::getTextWidthPixelsExact('0', $font, 0) * 1.07); // pixels incl. padding + + } catch (Exception $e) { + // Width of text in pixels excl. padding, approximation + $columnWidth = self::getTextWidthPixelsApprox($cellText, $font, $rotation); + + // Excel adds some padding, just use approx width of 'n' glyph + $columnWidth += self::getTextWidthPixelsApprox('n', $font, 0); + } + + // Convert from pixel width to column width + $columnWidth = PHPExcel_Shared_Drawing::pixelsToCellDimension($columnWidth, $defaultFont); + + // Return + return round($columnWidth, 6); + } + + /** + * Get GD text width in pixels for a string of text in a certain font at a certain rotation angle + * + * @param string $text + * @param PHPExcel_Style_Font + * @param int $rotation + * @return int + * @throws Exception + */ + public static function getTextWidthPixelsExact($text, PHPExcel_Style_Font $font, $rotation = 0) { + if (!function_exists('imagettfbbox')) { + throw new Exception('GD library needs to be enabled'); + } + + // font size should really be supplied in pixels in GD2, + // but since GD2 seems to assume 72dpi, pixels and points are the same + $fontFile = self::getTrueTypeFontFileFromFont($font); + $textBox = imagettfbbox($font->getSize(), $rotation, $fontFile, $text); + + // Get corners positions + $lowerLeftCornerX = $textBox[0]; + $lowerLeftCornerY = $textBox[1]; + $lowerRightCornerX = $textBox[2]; + $lowerRightCornerY = $textBox[3]; + $upperRightCornerX = $textBox[4]; + $upperRightCornerY = $textBox[5]; + $upperLeftCornerX = $textBox[6]; + $upperLeftCornerY = $textBox[7]; + + // Consider the rotation when calculating the width + $textWidth = max($lowerRightCornerX - $upperLeftCornerX, $upperRightCornerX - $lowerLeftCornerX); + + return $textWidth; + } + + /** + * Get approximate width in pixels for a string of text in a certain font at a certain rotation angle + * + * @param string $columnText + * @param PHPExcel_Style_Font $font + * @param int $rotation + * @return int Text width in pixels (no padding added) + */ + public static function getTextWidthPixelsApprox($columnText, PHPExcel_Style_Font $font = null, $rotation = 0) + { + $fontName = $font->getName(); + $fontSize = $font->getSize(); + + // Calculate column width in pixels. We assume fixed glyph width. Result varies with font name and size. + switch ($fontName) { + case 'Calibri': + // value 8.26 was found via interpolation by inspecting real Excel files with Calibri 11 font. + $columnWidth = (int) (8.26 * PHPExcel_Shared_String::CountCharacters($columnText)); + $columnWidth = $columnWidth * $fontSize / 11; // extrapolate from font size + break; + + case 'Arial': + // value 7 was found via interpolation by inspecting real Excel files with Arial 10 font. + $columnWidth = (int) (7 * PHPExcel_Shared_String::CountCharacters($columnText)); + $columnWidth = $columnWidth * $fontSize / 10; // extrapolate from font size + break; + + case 'Verdana': + // value 8 was found via interpolation by inspecting real Excel files with Verdana 10 font. + $columnWidth = (int) (8 * PHPExcel_Shared_String::CountCharacters($columnText)); + $columnWidth = $columnWidth * $fontSize / 10; // extrapolate from font size + break; + + default: + // just assume Calibri + $columnWidth = (int) (8.26 * PHPExcel_Shared_String::CountCharacters($columnText)); + $columnWidth = $columnWidth * $fontSize / 11; // extrapolate from font size + break; + } + + // Calculate approximate rotated column width + if ($rotation !== 0) { + if ($rotation == -165) { + // stacked text + $columnWidth = 4; // approximation + } else { + // rotated text + $columnWidth = $columnWidth * cos(deg2rad($rotation)) + + $fontSize * abs(sin(deg2rad($rotation))) / 5; // approximation + } + } + + // pixel width is an integer + $columnWidth = (int) $columnWidth; + return $columnWidth; + } + + /** + * Calculate an (approximate) pixel size, based on a font points size + * + * @param int $fontSizeInPoints Font size (in points) + * @return int Font size (in pixels) + */ + public static function fontSizeToPixels($fontSizeInPoints = 11) { + return (int) ((4 / 3) * $fontSizeInPoints); + } + + /** + * Calculate an (approximate) pixel size, based on inch size + * + * @param int $sizeInInch Font size (in inch) + * @return int Size (in pixels) + */ + public static function inchSizeToPixels($sizeInInch = 1) { + return ($sizeInInch * 96); + } + + /** + * Calculate an (approximate) pixel size, based on centimeter size + * + * @param int $sizeInCm Font size (in centimeters) + * @return int Size (in pixels) + */ + public static function centimeterSizeToPixels($sizeInCm = 1) { + return ($sizeInCm * 37.795275591); + } + + /** + * Returns the font path given the font + * + * @param PHPExcel_Style_Font + * @return string Path to TrueType font file + */ + public static function getTrueTypeFontFileFromFont($font) { + if (!file_exists(self::$trueTypeFontPath) || !is_dir(self::$trueTypeFontPath)) { + throw new Exception('Valid directory to TrueType Font files not specified'); + } + + $name = $font->getName(); + $bold = $font->getBold(); + $italic = $font->getItalic(); + + // Check if we can map font to true type font file + switch ($name) { + case 'Arial': + $fontFile = ( + $bold ? ($italic ? self::ARIAL_BOLD_ITALIC : self::ARIAL_BOLD) + : ($italic ? self::ARIAL_ITALIC : self::ARIAL) + ); + break; + + case 'Calibri': + $fontFile = ( + $bold ? ($italic ? self::CALIBRI_BOLD_ITALIC : self::CALIBRI_BOLD) + : ($italic ? self::CALIBRI_ITALIC : self::CALIBRI) + ); + break; + + case 'Courier New': + $fontFile = ( + $bold ? ($italic ? self::COURIER_NEW_BOLD_ITALIC : self::COURIER_NEW_BOLD) + : ($italic ? self::COURIER_NEW_ITALIC : self::COURIER_NEW) + ); + break; + + case 'Comic Sans MS': + $fontFile = ( + $bold ? self::COMIC_SANS_MS_BOLD : self::COMIC_SANS_MS + ); + break; + + case 'Georgia': + $fontFile = ( + $bold ? ($italic ? self::GEORGIA_BOLD_ITALIC : self::GEORGIA_BOLD) + : ($italic ? self::GEORGIA_ITALIC : self::GEORGIA) + ); + break; + + case 'Impact': + $fontFile = self::IMPACT; + break; + + case 'Liberation Sans': + $fontFile = ( + $bold ? ($italic ? self::LIBERATION_SANS_BOLD_ITALIC : self::LIBERATION_SANS_BOLD) + : ($italic ? self::LIBERATION_SANS_ITALIC : self::LIBERATION_SANS) + ); + break; + + case 'Lucida Console': + $fontFile = self::LUCIDA_CONSOLE; + break; + + case 'Lucida Sans Unicode': + $fontFile = self::LUCIDA_SANS_UNICODE; + break; + + case 'Microsoft Sans Serif': + $fontFile = self::MICROSOFT_SANS_SERIF; + break; + + case 'Palatino Linotype': + $fontFile = ( + $bold ? ($italic ? self::PALATINO_LINOTYPE_BOLD_ITALIC : self::PALATINO_LINOTYPE_BOLD) + : ($italic ? self::PALATINO_LINOTYPE_ITALIC : self::PALATINO_LINOTYPE) + ); + break; + + case 'Symbol': + $fontFile = self::SYMBOL; + break; + + case 'Tahoma': + $fontFile = ( + $bold ? self::TAHOMA_BOLD : self::TAHOMA + ); + break; + + case 'Times New Roman': + $fontFile = ( + $bold ? ($italic ? self::TIMES_NEW_ROMAN_BOLD_ITALIC : self::TIMES_NEW_ROMAN_BOLD) + : ($italic ? self::TIMES_NEW_ROMAN_ITALIC : self::TIMES_NEW_ROMAN) + ); + break; + + case 'Trebuchet MS': + $fontFile = ( + $bold ? ($italic ? self::TREBUCHET_MS_BOLD_ITALIC : self::TREBUCHET_MS_BOLD) + : ($italic ? self::TREBUCHET_MS_ITALIC : self::TREBUCHET_MS) + ); + break; + + case 'Verdana': + $fontFile = ( + $bold ? ($italic ? self::VERDANA_BOLD_ITALIC : self::VERDANA_BOLD) + : ($italic ? self::VERDANA_ITALIC : self::VERDANA) + ); + break; + + default: + throw new Exception('Unknown font name "'. $name .'". Cannot map to TrueType font file'); + break; + } + + $fontFile = self::$trueTypeFontPath . $fontFile; + + // Check if file actually exists + if (!file_exists($fontFile)) { + throw New Exception('TrueType Font file not found'); + } + + return $fontFile; + } + + /** + * Returns the associated charset for the font name. + * + * @param string $name Font name + * @return int Character set code + */ + public static function getCharsetFromFontName($name) + { + switch ($name) { + // Add more cases. Check FONT records in real Excel files. + case 'EucrosiaUPC': return self::CHARSET_ANSI_THAI; + case 'Wingdings': return self::CHARSET_SYMBOL; + case 'Wingdings 2': return self::CHARSET_SYMBOL; + case 'Wingdings 3': return self::CHARSET_SYMBOL; + default: return self::CHARSET_ANSI_LATIN; + } + } + + /** + * Get the effective column width for columns without a column dimension or column with width -1 + * For example, for Calibri 11 this is 9.140625 (64 px) + * + * @param PHPExcel_Style_Font $font The workbooks default font + * @param boolean $pPixels true = return column width in pixels, false = return in OOXML units + * @return mixed Column width + */ + public static function getDefaultColumnWidthByFont(PHPExcel_Style_Font $font, $pPixels = false) + { + if (isset(self::$defaultColumnWidths[$font->getName()][$font->getSize()])) { + // Exact width can be determined + $columnWidth = $pPixels ? + self::$defaultColumnWidths[$font->getName()][$font->getSize()]['px'] + : self::$defaultColumnWidths[$font->getName()][$font->getSize()]['width']; + + } else { + // We don't have data for this particular font and size, use approximation by + // extrapolating from Calibri 11 + $columnWidth = $pPixels ? + self::$defaultColumnWidths['Calibri'][11]['px'] + : self::$defaultColumnWidths['Calibri'][11]['width']; + $columnWidth = $columnWidth * $font->getSize() / 11; + + // Round pixels to closest integer + if ($pPixels) { + $columnWidth = (int) round($columnWidth); + } + } + + return $columnWidth; + } + + /** + * Get the effective row height for rows without a row dimension or rows with height -1 + * For example, for Calibri 11 this is 15 points + * + * @param PHPExcel_Style_Font $font The workbooks default font + * @return float Row height in points + */ + public static function getDefaultRowHeightByFont(PHPExcel_Style_Font $font) + { + switch ($font->getName()) { + case 'Arial': + switch ($font->getSize()) { + case 10: + // inspection of Arial 10 workbook says 12.75pt ~17px + $rowHeight = 12.75; + break; + + case 9: + // inspection of Arial 9 workbook says 12.00pt ~16px + $rowHeight = 12; + break; + + case 8: + // inspection of Arial 8 workbook says 11.25pt ~15px + $rowHeight = 11.25; + break; + + case 7: + // inspection of Arial 7 workbook says 9.00pt ~12px + $rowHeight = 9; + break; + + case 6: + case 5: + // inspection of Arial 5,6 workbook says 8.25pt ~11px + $rowHeight = 8.25; + break; + + case 4: + // inspection of Arial 4 workbook says 6.75pt ~9px + $rowHeight = 6.75; + break; + + case 3: + // inspection of Arial 3 workbook says 6.00pt ~8px + $rowHeight = 6; + break; + + case 2: + case 1: + // inspection of Arial 1,2 workbook says 5.25pt ~7px + $rowHeight = 5.25; + break; + + default: + // use Arial 10 workbook as an approximation, extrapolation + $rowHeight = 12.75 * $font->getSize() / 10; + break; + } + break; + + case 'Calibri': + switch ($font->getSize()) { + case 11: + // inspection of Calibri 11 workbook says 15.00pt ~20px + $rowHeight = 15; + break; + + case 10: + // inspection of Calibri 10 workbook says 12.75pt ~17px + $rowHeight = 12.75; + break; + + case 9: + // inspection of Calibri 9 workbook says 12.00pt ~16px + $rowHeight = 12; + break; + + case 8: + // inspection of Calibri 8 workbook says 11.25pt ~15px + $rowHeight = 11.25; + break; + + case 7: + // inspection of Calibri 7 workbook says 9.00pt ~12px + $rowHeight = 9; + break; + + case 6: + case 5: + // inspection of Calibri 5,6 workbook says 8.25pt ~11px + $rowHeight = 8.25; + break; + + case 4: + // inspection of Calibri 4 workbook says 6.75pt ~9px + $rowHeight = 6.75; + break; + + case 3: + // inspection of Calibri 3 workbook says 6.00pt ~8px + $rowHeight = 6.00; + break; + + case 2: + case 1: + // inspection of Calibri 1,2 workbook says 5.25pt ~7px + $rowHeight = 5.25; + break; + + default: + // use Calibri 11 workbook as an approximation, extrapolation + $rowHeight = 15 * $font->getSize() / 11; + break; + } + break; + + case 'Verdana': + switch ($font->getSize()) { + case 10: + // inspection of Verdana 10 workbook says 12.75pt ~17px + $rowHeight = 12.75; + break; + + case 9: + // inspection of Verdana 9 workbook says 11.25pt ~15px + $rowHeight = 11.25; + break; + + case 8: + // inspection of Verdana 8 workbook says 10.50pt ~14px + $rowHeight = 10.50; + break; + + case 7: + // inspection of Verdana 7 workbook says 9.00pt ~12px + $rowHeight = 9.00; + break; + + case 6: + case 5: + // inspection of Verdana 5,6 workbook says 8.25pt ~11px + $rowHeight = 8.25; + break; + + case 4: + // inspection of Verdana 4 workbook says 6.75pt ~9px + $rowHeight = 6.75; + break; + + case 3: + // inspection of Verdana 3 workbook says 6.00pt ~8px + $rowHeight = 6; + break; + + case 2: + case 1: + // inspection of Verdana 1,2 workbook says 5.25pt ~7px + $rowHeight = 5.25; + break; + + default: + // use Verdana 10 workbook as an approximation, extrapolation + $rowHeight = 12.75 * $font->getSize() / 10; + break; + } + break; + + default: + // just use Calibri as an approximation + $rowHeight = 15 * $font->getSize() / 11; + break; + } + + return $rowHeight; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT new file mode 100644 index 0000000..1c18a5d --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT @@ -0,0 +1,16 @@ +Mar 1, 2005 11:15 AST by PM + ++ For consistency, renamed Math.php to Maths.java, utils to util, + tests to test, docs to doc - + ++ Removed conditional logic from top of Matrix class. + ++ Switched to using hypo function in Maths.php for all php-hypot calls. + NOTE TO SELF: Need to make sure that all decompositions have been + switched over to using the bundled hypo. + +Feb 25, 2005 at 10:00 AST by PM + ++ Recommend using simpler Error.php instead of JAMA_Error.php but + can be persuaded otherwise. + diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/CholeskyDecomposition.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/CholeskyDecomposition.php new file mode 100644 index 0000000..9d064f9 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/CholeskyDecomposition.php @@ -0,0 +1,149 @@ +<?php +/** + * @package JAMA + * + * Cholesky decomposition class + * + * For a symmetric, positive definite matrix A, the Cholesky decomposition + * is an lower triangular matrix L so that A = L*L'. + * + * If the matrix is not symmetric or positive definite, the constructor + * returns a partial decomposition and sets an internal flag that may + * be queried by the isSPD() method. + * + * @author Paul Meagher + * @author Michael Bommarito + * @version 1.2 + */ +class CholeskyDecomposition { + + /** + * Decomposition storage + * @var array + * @access private + */ + private $L = array(); + + /** + * Matrix row and column dimension + * @var int + * @access private + */ + private $m; + + /** + * Symmetric positive definite flag + * @var boolean + * @access private + */ + private $isspd = true; + + + /** + * CholeskyDecomposition + * + * Class constructor - decomposes symmetric positive definite matrix + * @param mixed Matrix square symmetric positive definite matrix + */ + public function __construct($A = null) { + if ($A instanceof Matrix) { + $this->L = $A->getArray(); + $this->m = $A->getRowDimension(); + + for($i = 0; $i < $this->m; ++$i) { + for($j = $i; $j < $this->m; ++$j) { + for($sum = $this->L[$i][$j], $k = $i - 1; $k >= 0; --$k) { + $sum -= $this->L[$i][$k] * $this->L[$j][$k]; + } + if ($i == $j) { + if ($sum >= 0) { + $this->L[$i][$i] = sqrt($sum); + } else { + $this->isspd = false; + } + } else { + if ($this->L[$i][$i] != 0) { + $this->L[$j][$i] = $sum / $this->L[$i][$i]; + } + } + } + + for ($k = $i+1; $k < $this->m; ++$k) { + $this->L[$i][$k] = 0.0; + } + } + } else { + throw new Exception(JAMAError(ArgumentTypeException)); + } + } // function __construct() + + + /** + * Is the matrix symmetric and positive definite? + * + * @return boolean + */ + public function isSPD() { + return $this->isspd; + } // function isSPD() + + + /** + * getL + * + * Return triangular factor. + * @return Matrix Lower triangular matrix + */ + public function getL() { + return new Matrix($this->L); + } // function getL() + + + /** + * Solve A*X = B + * + * @param $B Row-equal matrix + * @return Matrix L * L' * X = B + */ + public function solve($B = null) { + if ($B instanceof Matrix) { + if ($B->getRowDimension() == $this->m) { + if ($this->isspd) { + $X = $B->getArrayCopy(); + $nx = $B->getColumnDimension(); + + for ($k = 0; $k < $this->m; ++$k) { + for ($i = $k + 1; $i < $this->m; ++$i) { + for ($j = 0; $j < $nx; ++$j) { + $X[$i][$j] -= $X[$k][$j] * $this->L[$i][$k]; + } + } + for ($j = 0; $j < $nx; ++$j) { + $X[$k][$j] /= $this->L[$k][$k]; + } + } + + for ($k = $this->m - 1; $k >= 0; --$k) { + for ($j = 0; $j < $nx; ++$j) { + $X[$k][$j] /= $this->L[$k][$k]; + } + for ($i = 0; $i < $k; ++$i) { + for ($j = 0; $j < $nx; ++$j) { + $X[$i][$j] -= $X[$k][$j] * $this->L[$k][$i]; + } + } + } + + return new Matrix($X, $this->m, $nx); + } else { + throw new Exception(JAMAError(MatrixSPDException)); + } + } else { + throw new Exception(JAMAError(MatrixDimensionException)); + } + } else { + throw new Exception(JAMAError(ArgumentTypeException)); + } + } // function solve() + +} // class CholeskyDecomposition diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/EigenvalueDecomposition.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/EigenvalueDecomposition.php new file mode 100644 index 0000000..2a696d0 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/EigenvalueDecomposition.php @@ -0,0 +1,862 @@ +<?php +/** + * @package JAMA + * + * Class to obtain eigenvalues and eigenvectors of a real matrix. + * + * If A is symmetric, then A = V*D*V' where the eigenvalue matrix D + * is diagonal and the eigenvector matrix V is orthogonal (i.e. + * A = V.times(D.times(V.transpose())) and V.times(V.transpose()) + * equals the identity matrix). + * + * If A is not symmetric, then the eigenvalue matrix D is block diagonal + * with the real eigenvalues in 1-by-1 blocks and any complex eigenvalues, + * lambda + i*mu, in 2-by-2 blocks, [lambda, mu; -mu, lambda]. The + * columns of V represent the eigenvectors in the sense that A*V = V*D, + * i.e. A.times(V) equals V.times(D). The matrix V may be badly + * conditioned, or even singular, so the validity of the equation + * A = V*D*inverse(V) depends upon V.cond(). + * + * @author Paul Meagher + * @license PHP v3.0 + * @version 1.1 + */ +class EigenvalueDecomposition { + + /** + * Row and column dimension (square matrix). + * @var int + */ + private $n; + + /** + * Internal symmetry flag. + * @var int + */ + private $issymmetric; + + /** + * Arrays for internal storage of eigenvalues. + * @var array + */ + private $d = array(); + private $e = array(); + + /** + * Array for internal storage of eigenvectors. + * @var array + */ + private $V = array(); + + /** + * Array for internal storage of nonsymmetric Hessenberg form. + * @var array + */ + private $H = array(); + + /** + * Working storage for nonsymmetric algorithm. + * @var array + */ + private $ort; + + /** + * Used for complex scalar division. + * @var float + */ + private $cdivr; + private $cdivi; + + + /** + * Symmetric Householder reduction to tridiagonal form. + * + * @access private + */ + private function tred2 () { + // This is derived from the Algol procedures tred2 by + // Bowdler, Martin, Reinsch, and Wilkinson, Handbook for + // Auto. Comp., Vol.ii-Linear Algebra, and the corresponding + // Fortran subroutine in EISPACK. + $this->d = $this->V[$this->n-1]; + // Householder reduction to tridiagonal form. + for ($i = $this->n-1; $i > 0; --$i) { + $i_ = $i -1; + // Scale to avoid under/overflow. + $h = $scale = 0.0; + $scale += array_sum(array_map(abs, $this->d)); + if ($scale == 0.0) { + $this->e[$i] = $this->d[$i_]; + $this->d = array_slice($this->V[$i_], 0, $i_); + for ($j = 0; $j < $i; ++$j) { + $this->V[$j][$i] = $this->V[$i][$j] = 0.0; + } + } else { + // Generate Householder vector. + for ($k = 0; $k < $i; ++$k) { + $this->d[$k] /= $scale; + $h += pow($this->d[$k], 2); + } + $f = $this->d[$i_]; + $g = sqrt($h); + if ($f > 0) { + $g = -$g; + } + $this->e[$i] = $scale * $g; + $h = $h - $f * $g; + $this->d[$i_] = $f - $g; + for ($j = 0; $j < $i; ++$j) { + $this->e[$j] = 0.0; + } + // Apply similarity transformation to remaining columns. + for ($j = 0; $j < $i; ++$j) { + $f = $this->d[$j]; + $this->V[$j][$i] = $f; + $g = $this->e[$j] + $this->V[$j][$j] * $f; + for ($k = $j+1; $k <= $i_; ++$k) { + $g += $this->V[$k][$j] * $this->d[$k]; + $this->e[$k] += $this->V[$k][$j] * $f; + } + $this->e[$j] = $g; + } + $f = 0.0; + for ($j = 0; $j < $i; ++$j) { + $this->e[$j] /= $h; + $f += $this->e[$j] * $this->d[$j]; + } + $hh = $f / (2 * $h); + for ($j=0; $j < $i; ++$j) { + $this->e[$j] -= $hh * $this->d[$j]; + } + for ($j = 0; $j < $i; ++$j) { + $f = $this->d[$j]; + $g = $this->e[$j]; + for ($k = $j; $k <= $i_; ++$k) { + $this->V[$k][$j] -= ($f * $this->e[$k] + $g * $this->d[$k]); + } + $this->d[$j] = $this->V[$i-1][$j]; + $this->V[$i][$j] = 0.0; + } + } + $this->d[$i] = $h; + } + + // Accumulate transformations. + for ($i = 0; $i < $this->n-1; ++$i) { + $this->V[$this->n-1][$i] = $this->V[$i][$i]; + $this->V[$i][$i] = 1.0; + $h = $this->d[$i+1]; + if ($h != 0.0) { + for ($k = 0; $k <= $i; ++$k) { + $this->d[$k] = $this->V[$k][$i+1] / $h; + } + for ($j = 0; $j <= $i; ++$j) { + $g = 0.0; + for ($k = 0; $k <= $i; ++$k) { + $g += $this->V[$k][$i+1] * $this->V[$k][$j]; + } + for ($k = 0; $k <= $i; ++$k) { + $this->V[$k][$j] -= $g * $this->d[$k]; + } + } + } + for ($k = 0; $k <= $i; ++$k) { + $this->V[$k][$i+1] = 0.0; + } + } + + $this->d = $this->V[$this->n-1]; + $this->V[$this->n-1] = array_fill(0, $j, 0.0); + $this->V[$this->n-1][$this->n-1] = 1.0; + $this->e[0] = 0.0; + } + + + /** + * Symmetric tridiagonal QL algorithm. + * + * This is derived from the Algol procedures tql2, by + * Bowdler, Martin, Reinsch, and Wilkinson, Handbook for + * Auto. Comp., Vol.ii-Linear Algebra, and the corresponding + * Fortran subroutine in EISPACK. + * + * @access private + */ + private function tql2() { + for ($i = 1; $i < $this->n; ++$i) { + $this->e[$i-1] = $this->e[$i]; + } + $this->e[$this->n-1] = 0.0; + $f = 0.0; + $tst1 = 0.0; + $eps = pow(2.0,-52.0); + + for ($l = 0; $l < $this->n; ++$l) { + // Find small subdiagonal element + $tst1 = max($tst1, abs($this->d[$l]) + abs($this->e[$l])); + $m = $l; + while ($m < $this->n) { + if (abs($this->e[$m]) <= $eps * $tst1) + break; + ++$m; + } + // If m == l, $this->d[l] is an eigenvalue, + // otherwise, iterate. + if ($m > $l) { + $iter = 0; + do { + // Could check iteration count here. + $iter += 1; + // Compute implicit shift + $g = $this->d[$l]; + $p = ($this->d[$l+1] - $g) / (2.0 * $this->e[$l]); + $r = hypo($p, 1.0); + if ($p < 0) + $r *= -1; + $this->d[$l] = $this->e[$l] / ($p + $r); + $this->d[$l+1] = $this->e[$l] * ($p + $r); + $dl1 = $this->d[$l+1]; + $h = $g - $this->d[$l]; + for ($i = $l + 2; $i < $this->n; ++$i) + $this->d[$i] -= $h; + $f += $h; + // Implicit QL transformation. + $p = $this->d[$m]; + $c = 1.0; + $c2 = $c3 = $c; + $el1 = $this->e[$l + 1]; + $s = $s2 = 0.0; + for ($i = $m-1; $i >= $l; --$i) { + $c3 = $c2; + $c2 = $c; + $s2 = $s; + $g = $c * $this->e[$i]; + $h = $c * $p; + $r = hypo($p, $this->e[$i]); + $this->e[$i+1] = $s * $r; + $s = $this->e[$i] / $r; + $c = $p / $r; + $p = $c * $this->d[$i] - $s * $g; + $this->d[$i+1] = $h + $s * ($c * $g + $s * $this->d[$i]); + // Accumulate transformation. + for ($k = 0; $k < $this->n; ++$k) { + $h = $this->V[$k][$i+1]; + $this->V[$k][$i+1] = $s * $this->V[$k][$i] + $c * $h; + $this->V[$k][$i] = $c * $this->V[$k][$i] - $s * $h; + } + } + $p = -$s * $s2 * $c3 * $el1 * $this->e[$l] / $dl1; + $this->e[$l] = $s * $p; + $this->d[$l] = $c * $p; + // Check for convergence. + } while (abs($this->e[$l]) > $eps * $tst1); + } + $this->d[$l] = $this->d[$l] + $f; + $this->e[$l] = 0.0; + } + + // Sort eigenvalues and corresponding vectors. + for ($i = 0; $i < $this->n - 1; ++$i) { + $k = $i; + $p = $this->d[$i]; + for ($j = $i+1; $j < $this->n; ++$j) { + if ($this->d[$j] < $p) { + $k = $j; + $p = $this->d[$j]; + } + } + if ($k != $i) { + $this->d[$k] = $this->d[$i]; + $this->d[$i] = $p; + for ($j = 0; $j < $this->n; ++$j) { + $p = $this->V[$j][$i]; + $this->V[$j][$i] = $this->V[$j][$k]; + $this->V[$j][$k] = $p; + } + } + } + } + + + /** + * Nonsymmetric reduction to Hessenberg form. + * + * This is derived from the Algol procedures orthes and ortran, + * by Martin and Wilkinson, Handbook for Auto. Comp., + * Vol.ii-Linear Algebra, and the corresponding + * Fortran subroutines in EISPACK. + * + * @access private + */ + private function orthes () { + $low = 0; + $high = $this->n-1; + + for ($m = $low+1; $m <= $high-1; ++$m) { + // Scale column. + $scale = 0.0; + for ($i = $m; $i <= $high; ++$i) { + $scale = $scale + abs($this->H[$i][$m-1]); + } + if ($scale != 0.0) { + // Compute Householder transformation. + $h = 0.0; + for ($i = $high; $i >= $m; --$i) { + $this->ort[$i] = $this->H[$i][$m-1] / $scale; + $h += $this->ort[$i] * $this->ort[$i]; + } + $g = sqrt($h); + if ($this->ort[$m] > 0) { + $g *= -1; + } + $h -= $this->ort[$m] * $g; + $this->ort[$m] -= $g; + // Apply Householder similarity transformation + // H = (I -u * u' / h) * H * (I -u * u') / h) + for ($j = $m; $j < $this->n; ++$j) { + $f = 0.0; + for ($i = $high; $i >= $m; --$i) { + $f += $this->ort[$i] * $this->H[$i][$j]; + } + $f /= $h; + for ($i = $m; $i <= $high; ++$i) { + $this->H[$i][$j] -= $f * $this->ort[$i]; + } + } + for ($i = 0; $i <= $high; ++$i) { + $f = 0.0; + for ($j = $high; $j >= $m; --$j) { + $f += $this->ort[$j] * $this->H[$i][$j]; + } + $f = $f / $h; + for ($j = $m; $j <= $high; ++$j) { + $this->H[$i][$j] -= $f * $this->ort[$j]; + } + } + $this->ort[$m] = $scale * $this->ort[$m]; + $this->H[$m][$m-1] = $scale * $g; + } + } + + // Accumulate transformations (Algol's ortran). + for ($i = 0; $i < $this->n; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $this->V[$i][$j] = ($i == $j ? 1.0 : 0.0); + } + } + for ($m = $high-1; $m >= $low+1; --$m) { + if ($this->H[$m][$m-1] != 0.0) { + for ($i = $m+1; $i <= $high; ++$i) { + $this->ort[$i] = $this->H[$i][$m-1]; + } + for ($j = $m; $j <= $high; ++$j) { + $g = 0.0; + for ($i = $m; $i <= $high; ++$i) { + $g += $this->ort[$i] * $this->V[$i][$j]; + } + // Double division avoids possible underflow + $g = ($g / $this->ort[$m]) / $this->H[$m][$m-1]; + for ($i = $m; $i <= $high; ++$i) { + $this->V[$i][$j] += $g * $this->ort[$i]; + } + } + } + } + } + + + /** + * Performs complex division. + * + * @access private + */ + private function cdiv($xr, $xi, $yr, $yi) { + if (abs($yr) > abs($yi)) { + $r = $yi / $yr; + $d = $yr + $r * $yi; + $this->cdivr = ($xr + $r * $xi) / $d; + $this->cdivi = ($xi - $r * $xr) / $d; + } else { + $r = $yr / $yi; + $d = $yi + $r * $yr; + $this->cdivr = ($r * $xr + $xi) / $d; + $this->cdivi = ($r * $xi - $xr) / $d; + } + } + + + /** + * Nonsymmetric reduction from Hessenberg to real Schur form. + * + * Code is derived from the Algol procedure hqr2, + * by Martin and Wilkinson, Handbook for Auto. Comp., + * Vol.ii-Linear Algebra, and the corresponding + * Fortran subroutine in EISPACK. + * + * @access private + */ + private function hqr2 () { + // Initialize + $nn = $this->n; + $n = $nn - 1; + $low = 0; + $high = $nn - 1; + $eps = pow(2.0, -52.0); + $exshift = 0.0; + $p = $q = $r = $s = $z = 0; + // Store roots isolated by balanc and compute matrix norm + $norm = 0.0; + + for ($i = 0; $i < $nn; ++$i) { + if (($i < $low) OR ($i > $high)) { + $this->d[$i] = $this->H[$i][$i]; + $this->e[$i] = 0.0; + } + for ($j = max($i-1, 0); $j < $nn; ++$j) { + $norm = $norm + abs($this->H[$i][$j]); + } + } + + // Outer loop over eigenvalue index + $iter = 0; + while ($n >= $low) { + // Look for single small sub-diagonal element + $l = $n; + while ($l > $low) { + $s = abs($this->H[$l-1][$l-1]) + abs($this->H[$l][$l]); + if ($s == 0.0) { + $s = $norm; + } + if (abs($this->H[$l][$l-1]) < $eps * $s) { + break; + } + --$l; + } + // Check for convergence + // One root found + if ($l == $n) { + $this->H[$n][$n] = $this->H[$n][$n] + $exshift; + $this->d[$n] = $this->H[$n][$n]; + $this->e[$n] = 0.0; + --$n; + $iter = 0; + // Two roots found + } else if ($l == $n-1) { + $w = $this->H[$n][$n-1] * $this->H[$n-1][$n]; + $p = ($this->H[$n-1][$n-1] - $this->H[$n][$n]) / 2.0; + $q = $p * $p + $w; + $z = sqrt(abs($q)); + $this->H[$n][$n] = $this->H[$n][$n] + $exshift; + $this->H[$n-1][$n-1] = $this->H[$n-1][$n-1] + $exshift; + $x = $this->H[$n][$n]; + // Real pair + if ($q >= 0) { + if ($p >= 0) { + $z = $p + $z; + } else { + $z = $p - $z; + } + $this->d[$n-1] = $x + $z; + $this->d[$n] = $this->d[$n-1]; + if ($z != 0.0) { + $this->d[$n] = $x - $w / $z; + } + $this->e[$n-1] = 0.0; + $this->e[$n] = 0.0; + $x = $this->H[$n][$n-1]; + $s = abs($x) + abs($z); + $p = $x / $s; + $q = $z / $s; + $r = sqrt($p * $p + $q * $q); + $p = $p / $r; + $q = $q / $r; + // Row modification + for ($j = $n-1; $j < $nn; ++$j) { + $z = $this->H[$n-1][$j]; + $this->H[$n-1][$j] = $q * $z + $p * $this->H[$n][$j]; + $this->H[$n][$j] = $q * $this->H[$n][$j] - $p * $z; + } + // Column modification + for ($i = 0; $i <= n; ++$i) { + $z = $this->H[$i][$n-1]; + $this->H[$i][$n-1] = $q * $z + $p * $this->H[$i][$n]; + $this->H[$i][$n] = $q * $this->H[$i][$n] - $p * $z; + } + // Accumulate transformations + for ($i = $low; $i <= $high; ++$i) { + $z = $this->V[$i][$n-1]; + $this->V[$i][$n-1] = $q * $z + $p * $this->V[$i][$n]; + $this->V[$i][$n] = $q * $this->V[$i][$n] - $p * $z; + } + // Complex pair + } else { + $this->d[$n-1] = $x + $p; + $this->d[$n] = $x + $p; + $this->e[$n-1] = $z; + $this->e[$n] = -$z; + } + $n = $n - 2; + $iter = 0; + // No convergence yet + } else { + // Form shift + $x = $this->H[$n][$n]; + $y = 0.0; + $w = 0.0; + if ($l < $n) { + $y = $this->H[$n-1][$n-1]; + $w = $this->H[$n][$n-1] * $this->H[$n-1][$n]; + } + // Wilkinson's original ad hoc shift + if ($iter == 10) { + $exshift += $x; + for ($i = $low; $i <= $n; ++$i) { + $this->H[$i][$i] -= $x; + } + $s = abs($this->H[$n][$n-1]) + abs($this->H[$n-1][$n-2]); + $x = $y = 0.75 * $s; + $w = -0.4375 * $s * $s; + } + // MATLAB's new ad hoc shift + if ($iter == 30) { + $s = ($y - $x) / 2.0; + $s = $s * $s + $w; + if ($s > 0) { + $s = sqrt($s); + if ($y < $x) { + $s = -$s; + } + $s = $x - $w / (($y - $x) / 2.0 + $s); + for ($i = $low; $i <= $n; ++$i) { + $this->H[$i][$i] -= $s; + } + $exshift += $s; + $x = $y = $w = 0.964; + } + } + // Could check iteration count here. + $iter = $iter + 1; + // Look for two consecutive small sub-diagonal elements + $m = $n - 2; + while ($m >= $l) { + $z = $this->H[$m][$m]; + $r = $x - $z; + $s = $y - $z; + $p = ($r * $s - $w) / $this->H[$m+1][$m] + $this->H[$m][$m+1]; + $q = $this->H[$m+1][$m+1] - $z - $r - $s; + $r = $this->H[$m+2][$m+1]; + $s = abs($p) + abs($q) + abs($r); + $p = $p / $s; + $q = $q / $s; + $r = $r / $s; + if ($m == $l) { + break; + } + if (abs($this->H[$m][$m-1]) * (abs($q) + abs($r)) < + $eps * (abs($p) * (abs($this->H[$m-1][$m-1]) + abs($z) + abs($this->H[$m+1][$m+1])))) { + break; + } + --$m; + } + for ($i = $m + 2; $i <= $n; ++$i) { + $this->H[$i][$i-2] = 0.0; + if ($i > $m+2) { + $this->H[$i][$i-3] = 0.0; + } + } + // Double QR step involving rows l:n and columns m:n + for ($k = $m; $k <= $n-1; ++$k) { + $notlast = ($k != $n-1); + if ($k != $m) { + $p = $this->H[$k][$k-1]; + $q = $this->H[$k+1][$k-1]; + $r = ($notlast ? $this->H[$k+2][$k-1] : 0.0); + $x = abs($p) + abs($q) + abs($r); + if ($x != 0.0) { + $p = $p / $x; + $q = $q / $x; + $r = $r / $x; + } + } + if ($x == 0.0) { + break; + } + $s = sqrt($p * $p + $q * $q + $r * $r); + if ($p < 0) { + $s = -$s; + } + if ($s != 0) { + if ($k != $m) { + $this->H[$k][$k-1] = -$s * $x; + } elseif ($l != $m) { + $this->H[$k][$k-1] = -$this->H[$k][$k-1]; + } + $p = $p + $s; + $x = $p / $s; + $y = $q / $s; + $z = $r / $s; + $q = $q / $p; + $r = $r / $p; + // Row modification + for ($j = $k; $j < $nn; ++$j) { + $p = $this->H[$k][$j] + $q * $this->H[$k+1][$j]; + if ($notlast) { + $p = $p + $r * $this->H[$k+2][$j]; + $this->H[$k+2][$j] = $this->H[$k+2][$j] - $p * $z; + } + $this->H[$k][$j] = $this->H[$k][$j] - $p * $x; + $this->H[$k+1][$j] = $this->H[$k+1][$j] - $p * $y; + } + // Column modification + for ($i = 0; $i <= min($n, $k+3); ++$i) { + $p = $x * $this->H[$i][$k] + $y * $this->H[$i][$k+1]; + if ($notlast) { + $p = $p + $z * $this->H[$i][$k+2]; + $this->H[$i][$k+2] = $this->H[$i][$k+2] - $p * $r; + } + $this->H[$i][$k] = $this->H[$i][$k] - $p; + $this->H[$i][$k+1] = $this->H[$i][$k+1] - $p * $q; + } + // Accumulate transformations + for ($i = $low; $i <= $high; ++$i) { + $p = $x * $this->V[$i][$k] + $y * $this->V[$i][$k+1]; + if ($notlast) { + $p = $p + $z * $this->V[$i][$k+2]; + $this->V[$i][$k+2] = $this->V[$i][$k+2] - $p * $r; + } + $this->V[$i][$k] = $this->V[$i][$k] - $p; + $this->V[$i][$k+1] = $this->V[$i][$k+1] - $p * $q; + } + } // ($s != 0) + } // k loop + } // check convergence + } // while ($n >= $low) + + // Backsubstitute to find vectors of upper triangular form + if ($norm == 0.0) { + return; + } + + for ($n = $nn-1; $n >= 0; --$n) { + $p = $this->d[$n]; + $q = $this->e[$n]; + // Real vector + if ($q == 0) { + $l = $n; + $this->H[$n][$n] = 1.0; + for ($i = $n-1; $i >= 0; --$i) { + $w = $this->H[$i][$i] - $p; + $r = 0.0; + for ($j = $l; $j <= $n; ++$j) { + $r = $r + $this->H[$i][$j] * $this->H[$j][$n]; + } + if ($this->e[$i] < 0.0) { + $z = $w; + $s = $r; + } else { + $l = $i; + if ($this->e[$i] == 0.0) { + if ($w != 0.0) { + $this->H[$i][$n] = -$r / $w; + } else { + $this->H[$i][$n] = -$r / ($eps * $norm); + } + // Solve real equations + } else { + $x = $this->H[$i][$i+1]; + $y = $this->H[$i+1][$i]; + $q = ($this->d[$i] - $p) * ($this->d[$i] - $p) + $this->e[$i] * $this->e[$i]; + $t = ($x * $s - $z * $r) / $q; + $this->H[$i][$n] = $t; + if (abs($x) > abs($z)) { + $this->H[$i+1][$n] = (-$r - $w * $t) / $x; + } else { + $this->H[$i+1][$n] = (-$s - $y * $t) / $z; + } + } + // Overflow control + $t = abs($this->H[$i][$n]); + if (($eps * $t) * $t > 1) { + for ($j = $i; $j <= $n; ++$j) { + $this->H[$j][$n] = $this->H[$j][$n] / $t; + } + } + } + } + // Complex vector + } else if ($q < 0) { + $l = $n-1; + // Last vector component imaginary so matrix is triangular + if (abs($this->H[$n][$n-1]) > abs($this->H[$n-1][$n])) { + $this->H[$n-1][$n-1] = $q / $this->H[$n][$n-1]; + $this->H[$n-1][$n] = -($this->H[$n][$n] - $p) / $this->H[$n][$n-1]; + } else { + $this->cdiv(0.0, -$this->H[$n-1][$n], $this->H[$n-1][$n-1] - $p, $q); + $this->H[$n-1][$n-1] = $this->cdivr; + $this->H[$n-1][$n] = $this->cdivi; + } + $this->H[$n][$n-1] = 0.0; + $this->H[$n][$n] = 1.0; + for ($i = $n-2; $i >= 0; --$i) { + // double ra,sa,vr,vi; + $ra = 0.0; + $sa = 0.0; + for ($j = $l; $j <= $n; ++$j) { + $ra = $ra + $this->H[$i][$j] * $this->H[$j][$n-1]; + $sa = $sa + $this->H[$i][$j] * $this->H[$j][$n]; + } + $w = $this->H[$i][$i] - $p; + if ($this->e[$i] < 0.0) { + $z = $w; + $r = $ra; + $s = $sa; + } else { + $l = $i; + if ($this->e[$i] == 0) { + $this->cdiv(-$ra, -$sa, $w, $q); + $this->H[$i][$n-1] = $this->cdivr; + $this->H[$i][$n] = $this->cdivi; + } else { + // Solve complex equations + $x = $this->H[$i][$i+1]; + $y = $this->H[$i+1][$i]; + $vr = ($this->d[$i] - $p) * ($this->d[$i] - $p) + $this->e[$i] * $this->e[$i] - $q * $q; + $vi = ($this->d[$i] - $p) * 2.0 * $q; + if ($vr == 0.0 & $vi == 0.0) { + $vr = $eps * $norm * (abs($w) + abs($q) + abs($x) + abs($y) + abs($z)); + } + $this->cdiv($x * $r - $z * $ra + $q * $sa, $x * $s - $z * $sa - $q * $ra, $vr, $vi); + $this->H[$i][$n-1] = $this->cdivr; + $this->H[$i][$n] = $this->cdivi; + if (abs($x) > (abs($z) + abs($q))) { + $this->H[$i+1][$n-1] = (-$ra - $w * $this->H[$i][$n-1] + $q * $this->H[$i][$n]) / $x; + $this->H[$i+1][$n] = (-$sa - $w * $this->H[$i][$n] - $q * $this->H[$i][$n-1]) / $x; + } else { + $this->cdiv(-$r - $y * $this->H[$i][$n-1], -$s - $y * $this->H[$i][$n], $z, $q); + $this->H[$i+1][$n-1] = $this->cdivr; + $this->H[$i+1][$n] = $this->cdivi; + } + } + // Overflow control + $t = max(abs($this->H[$i][$n-1]),abs($this->H[$i][$n])); + if (($eps * $t) * $t > 1) { + for ($j = $i; $j <= $n; ++$j) { + $this->H[$j][$n-1] = $this->H[$j][$n-1] / $t; + $this->H[$j][$n] = $this->H[$j][$n] / $t; + } + } + } // end else + } // end for + } // end else for complex case + } // end for + + // Vectors of isolated roots + for ($i = 0; $i < $nn; ++$i) { + if ($i < $low | $i > $high) { + for ($j = $i; $j < $nn; ++$j) { + $this->V[$i][$j] = $this->H[$i][$j]; + } + } + } + + // Back transformation to get eigenvectors of original matrix + for ($j = $nn-1; $j >= $low; --$j) { + for ($i = $low; $i <= $high; ++$i) { + $z = 0.0; + for ($k = $low; $k <= min($j,$high); ++$k) { + $z = $z + $this->V[$i][$k] * $this->H[$k][$j]; + } + $this->V[$i][$j] = $z; + } + } + } // end hqr2 + + + /** + * Constructor: Check for symmetry, then construct the eigenvalue decomposition + * + * @access public + * @param A Square matrix + * @return Structure to access D and V. + */ + public function __construct($Arg) { + $this->A = $Arg->getArray(); + $this->n = $Arg->getColumnDimension(); + + $issymmetric = true; + for ($j = 0; ($j < $this->n) & $issymmetric; ++$j) { + for ($i = 0; ($i < $this->n) & $issymmetric; ++$i) { + $issymmetric = ($this->A[$i][$j] == $this->A[$j][$i]); + } + } + + if ($issymmetric) { + $this->V = $this->A; + // Tridiagonalize. + $this->tred2(); + // Diagonalize. + $this->tql2(); + } else { + $this->H = $this->A; + $this->ort = array(); + // Reduce to Hessenberg form. + $this->orthes(); + // Reduce Hessenberg to real Schur form. + $this->hqr2(); + } + } + + + /** + * Return the eigenvector matrix + * + * @access public + * @return V + */ + public function getV() { + return new Matrix($this->V, $this->n, $this->n); + } + + + /** + * Return the real parts of the eigenvalues + * + * @access public + * @return real(diag(D)) + */ + public function getRealEigenvalues() { + return $this->d; + } + + + /** + * Return the imaginary parts of the eigenvalues + * + * @access public + * @return imag(diag(D)) + */ + public function getImagEigenvalues() { + return $this->e; + } + + + /** + * Return the block diagonal eigenvalue matrix + * + * @access public + * @return D + */ + public function getD() { + for ($i = 0; $i < $this->n; ++$i) { + $D[$i] = array_fill(0, $this->n, 0.0); + $D[$i][$i] = $this->d[$i]; + if ($this->e[$i] == 0) { + continue; + } + $o = ($this->e[$i] > 0) ? $i + 1 : $i - 1; + $D[$i][$o] = $this->e[$i]; + } + return new Matrix($D); + } + +} // class EigenvalueDecomposition diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/LUDecomposition.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/LUDecomposition.php new file mode 100644 index 0000000..6c797a6 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/LUDecomposition.php @@ -0,0 +1,258 @@ +<?php +/** + * @package JAMA + * + * For an m-by-n matrix A with m >= n, the LU decomposition is an m-by-n + * unit lower triangular matrix L, an n-by-n upper triangular matrix U, + * and a permutation vector piv of length m so that A(piv,:) = L*U. + * If m < n, then L is m-by-m and U is m-by-n. + * + * The LU decompostion with pivoting always exists, even if the matrix is + * singular, so the constructor will never fail. The primary use of the + * LU decomposition is in the solution of square systems of simultaneous + * linear equations. This will fail if isNonsingular() returns false. + * + * @author Paul Meagher + * @author Bartosz Matosiuk + * @author Michael Bommarito + * @version 1.1 + * @license PHP v3.0 + */ +class PHPExcel_Shared_JAMA_LUDecomposition { + + const MatrixSingularException = "Can only perform operation on singular matrix."; + const MatrixSquareException = "Mismatched Row dimension"; + + /** + * Decomposition storage + * @var array + */ + private $LU = array(); + + /** + * Row dimension. + * @var int + */ + private $m; + + /** + * Column dimension. + * @var int + */ + private $n; + + /** + * Pivot sign. + * @var int + */ + private $pivsign; + + /** + * Internal storage of pivot vector. + * @var array + */ + private $piv = array(); + + + /** + * LU Decomposition constructor. + * + * @param $A Rectangular matrix + * @return Structure to access L, U and piv. + */ + public function __construct($A) { + if ($A instanceof PHPExcel_Shared_JAMA_Matrix) { + // Use a "left-looking", dot-product, Crout/Doolittle algorithm. + $this->LU = $A->getArray(); + $this->m = $A->getRowDimension(); + $this->n = $A->getColumnDimension(); + for ($i = 0; $i < $this->m; ++$i) { + $this->piv[$i] = $i; + } + $this->pivsign = 1; + $LUrowi = $LUcolj = array(); + + // Outer loop. + for ($j = 0; $j < $this->n; ++$j) { + // Make a copy of the j-th column to localize references. + for ($i = 0; $i < $this->m; ++$i) { + $LUcolj[$i] = &$this->LU[$i][$j]; + } + // Apply previous transformations. + for ($i = 0; $i < $this->m; ++$i) { + $LUrowi = $this->LU[$i]; + // Most of the time is spent in the following dot product. + $kmax = min($i,$j); + $s = 0.0; + for ($k = 0; $k < $kmax; ++$k) { + $s += $LUrowi[$k] * $LUcolj[$k]; + } + $LUrowi[$j] = $LUcolj[$i] -= $s; + } + // Find pivot and exchange if necessary. + $p = $j; + for ($i = $j+1; $i < $this->m; ++$i) { + if (abs($LUcolj[$i]) > abs($LUcolj[$p])) { + $p = $i; + } + } + if ($p != $j) { + for ($k = 0; $k < $this->n; ++$k) { + $t = $this->LU[$p][$k]; + $this->LU[$p][$k] = $this->LU[$j][$k]; + $this->LU[$j][$k] = $t; + } + $k = $this->piv[$p]; + $this->piv[$p] = $this->piv[$j]; + $this->piv[$j] = $k; + $this->pivsign = $this->pivsign * -1; + } + // Compute multipliers. + if (($j < $this->m) && ($this->LU[$j][$j] != 0.0)) { + for ($i = $j+1; $i < $this->m; ++$i) { + $this->LU[$i][$j] /= $this->LU[$j][$j]; + } + } + } + } else { + throw new Exception(PHPExcel_Shared_JAMA_Matrix::ArgumentTypeException); + } + } // function __construct() + + + /** + * Get lower triangular factor. + * + * @return array Lower triangular factor + */ + public function getL() { + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + if ($i > $j) { + $L[$i][$j] = $this->LU[$i][$j]; + } elseif ($i == $j) { + $L[$i][$j] = 1.0; + } else { + $L[$i][$j] = 0.0; + } + } + } + return new PHPExcel_Shared_JAMA_Matrix($L); + } // function getL() + + + /** + * Get upper triangular factor. + * + * @return array Upper triangular factor + */ + public function getU() { + for ($i = 0; $i < $this->n; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + if ($i <= $j) { + $U[$i][$j] = $this->LU[$i][$j]; + } else { + $U[$i][$j] = 0.0; + } + } + } + return new PHPExcel_Shared_JAMA_Matrix($U); + } // function getU() + + + /** + * Return pivot permutation vector. + * + * @return array Pivot vector + */ + public function getPivot() { + return $this->piv; + } // function getPivot() + + + /** + * Alias for getPivot + * + * @see getPivot + */ + public function getDoublePivot() { + return $this->getPivot(); + } // function getDoublePivot() + + + /** + * Is the matrix nonsingular? + * + * @return true if U, and hence A, is nonsingular. + */ + public function isNonsingular() { + for ($j = 0; $j < $this->n; ++$j) { + if ($this->LU[$j][$j] == 0) { + return false; + } + } + return true; + } // function isNonsingular() + + + /** + * Count determinants + * + * @return array d matrix deterninat + */ + public function det() { + if ($this->m == $this->n) { + $d = $this->pivsign; + for ($j = 0; $j < $this->n; ++$j) { + $d *= $this->LU[$j][$j]; + } + return $d; + } else { + throw new Exception(PHPExcel_Shared_JAMA_Matrix::MatrixDimensionException); + } + } // function det() + + + /** + * Solve A*X = B + * + * @param $B A Matrix with as many rows as A and any number of columns. + * @return X so that L*U*X = B(piv,:) + * @exception IllegalArgumentException Matrix row dimensions must agree. + * @exception RuntimeException Matrix is singular. + */ + public function solve($B) { + if ($B->getRowDimension() == $this->m) { + if ($this->isNonsingular()) { + // Copy right hand side with pivoting + $nx = $B->getColumnDimension(); + $X = $B->getMatrix($this->piv, 0, $nx-1); + // Solve L*Y = B(piv,:) + for ($k = 0; $k < $this->n; ++$k) { + for ($i = $k+1; $i < $this->n; ++$i) { + for ($j = 0; $j < $nx; ++$j) { + $X->A[$i][$j] -= $X->A[$k][$j] * $this->LU[$i][$k]; + } + } + } + // Solve U*X = Y; + for ($k = $this->n-1; $k >= 0; --$k) { + for ($j = 0; $j < $nx; ++$j) { + $X->A[$k][$j] /= $this->LU[$k][$k]; + } + for ($i = 0; $i < $k; ++$i) { + for ($j = 0; $j < $nx; ++$j) { + $X->A[$i][$j] -= $X->A[$k][$j] * $this->LU[$i][$k]; + } + } + } + return $X; + } else { + throw new Exception(self::MatrixSingularException); + } + } else { + throw new Exception(self::MatrixSquareException); + } + } // function solve() + +} // class PHPExcel_Shared_JAMA_LUDecomposition diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/Matrix.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/Matrix.php new file mode 100644 index 0000000..aae40e4 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/Matrix.php @@ -0,0 +1,1059 @@ +<?php +/** + * @package JAMA + */ + +/** PHPExcel root directory */ +if (!defined('PHPEXCEL_ROOT')) { + /** + * @ignore + */ + define('PHPEXCEL_ROOT', dirname(__FILE__) . '/../../../'); + require(PHPEXCEL_ROOT . 'PHPExcel/Autoloader.php'); +} + + +/* + * Matrix class + * + * @author Paul Meagher + * @author Michael Bommarito + * @author Lukasz Karapuda + * @author Bartek Matosiuk + * @version 1.8 + * @license PHP v3.0 + * @see http://math.nist.gov/javanumerics/jama/ + */ +class PHPExcel_Shared_JAMA_Matrix { + + + const PolymorphicArgumentException = "Invalid argument pattern for polymorphic function."; + const ArgumentTypeException = "Invalid argument type."; + const ArgumentBoundsException = "Invalid argument range."; + const MatrixDimensionException = "Matrix dimensions are not equal."; + const ArrayLengthException = "Array length must be a multiple of m."; + + /** + * Matrix storage + * + * @var array + * @access public + */ + public $A = array(); + + /** + * Matrix row dimension + * + * @var int + * @access private + */ + private $m; + + /** + * Matrix column dimension + * + * @var int + * @access private + */ + private $n; + + + /** + * Polymorphic constructor + * + * As PHP has no support for polymorphic constructors, we hack our own sort of polymorphism using func_num_args, func_get_arg, and gettype. In essence, we're just implementing a simple RTTI filter and calling the appropriate constructor. + */ + public function __construct() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + //Rectangular matrix - m x n initialized from 2D array + case 'array': + $this->m = count($args[0]); + $this->n = count($args[0][0]); + $this->A = $args[0]; + break; + //Square matrix - n x n + case 'integer': + $this->m = $args[0]; + $this->n = $args[0]; + $this->A = array_fill(0, $this->m, array_fill(0, $this->n, 0)); + break; + //Rectangular matrix - m x n + case 'integer,integer': + $this->m = $args[0]; + $this->n = $args[1]; + $this->A = array_fill(0, $this->m, array_fill(0, $this->n, 0)); + break; + //Rectangular matrix - m x n initialized from packed array + case 'array,integer': + $this->m = $args[1]; + if ($this->m != 0) { + $this->n = count($args[0]) / $this->m; + } else { + $this->n = 0; + } + if (($this->m * $this->n) == count($args[0])) { + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $this->A[$i][$j] = $args[0][$i + $j * $this->m]; + } + } + } else { + throw new Exception(self::ArrayLengthException); + } + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function __construct() + + + /** + * getArray + * + * @return array Matrix array + */ + public function getArray() { + return $this->A; + } // function getArray() + + + /** + * getRowDimension + * + * @return int Row dimension + */ + public function getRowDimension() { + return $this->m; + } // function getRowDimension() + + + /** + * getColumnDimension + * + * @return int Column dimension + */ + public function getColumnDimension() { + return $this->n; + } // function getColumnDimension() + + + /** + * get + * + * Get the i,j-th element of the matrix. + * @param int $i Row position + * @param int $j Column position + * @return mixed Element (int/float/double) + */ + public function get($i = null, $j = null) { + return $this->A[$i][$j]; + } // function get() + + + /** + * getMatrix + * + * Get a submatrix + * @param int $i0 Initial row index + * @param int $iF Final row index + * @param int $j0 Initial column index + * @param int $jF Final column index + * @return Matrix Submatrix + */ + public function getMatrix() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + //A($i0...; $j0...) + case 'integer,integer': + list($i0, $j0) = $args; + if ($i0 >= 0) { $m = $this->m - $i0; } else { throw new Exception(self::ArgumentBoundsException); } + if ($j0 >= 0) { $n = $this->n - $j0; } else { throw new Exception(self::ArgumentBoundsException); } + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n); + for($i = $i0; $i < $this->m; ++$i) { + for($j = $j0; $j < $this->n; ++$j) { + $R->set($i, $j, $this->A[$i][$j]); + } + } + return $R; + break; + //A($i0...$iF; $j0...$jF) + case 'integer,integer,integer,integer': + list($i0, $iF, $j0, $jF) = $args; + if (($iF > $i0) && ($this->m >= $iF) && ($i0 >= 0)) { $m = $iF - $i0; } else { throw new Exception(self::ArgumentBoundsException); } + if (($jF > $j0) && ($this->n >= $jF) && ($j0 >= 0)) { $n = $jF - $j0; } else { throw new Exception(self::ArgumentBoundsException); } + $R = new PHPExcel_Shared_JAMA_Matrix($m+1, $n+1); + for($i = $i0; $i <= $iF; ++$i) { + for($j = $j0; $j <= $jF; ++$j) { + $R->set($i - $i0, $j - $j0, $this->A[$i][$j]); + } + } + return $R; + break; + //$R = array of row indices; $C = array of column indices + case 'array,array': + list($RL, $CL) = $args; + if (count($RL) > 0) { $m = count($RL); } else { throw new Exception(self::ArgumentBoundsException); } + if (count($CL) > 0) { $n = count($CL); } else { throw new Exception(self::ArgumentBoundsException); } + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n); + for($i = 0; $i < $m; ++$i) { + for($j = 0; $j < $n; ++$j) { + $R->set($i - $i0, $j - $j0, $this->A[$RL[$i]][$CL[$j]]); + } + } + return $R; + break; + //$RL = array of row indices; $CL = array of column indices + case 'array,array': + list($RL, $CL) = $args; + if (count($RL) > 0) { $m = count($RL); } else { throw new Exception(self::ArgumentBoundsException); } + if (count($CL) > 0) { $n = count($CL); } else { throw new Exception(self::ArgumentBoundsException); } + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n); + for($i = 0; $i < $m; ++$i) { + for($j = 0; $j < $n; ++$j) { + $R->set($i, $j, $this->A[$RL[$i]][$CL[$j]]); + } + } + return $R; + break; + //A($i0...$iF); $CL = array of column indices + case 'integer,integer,array': + list($i0, $iF, $CL) = $args; + if (($iF > $i0) && ($this->m >= $iF) && ($i0 >= 0)) { $m = $iF - $i0; } else { throw new Exception(self::ArgumentBoundsException); } + if (count($CL) > 0) { $n = count($CL); } else { throw new Exception(self::ArgumentBoundsException); } + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n); + for($i = $i0; $i < $iF; ++$i) { + for($j = 0; $j < $n; ++$j) { + $R->set($i - $i0, $j, $this->A[$RL[$i]][$j]); + } + } + return $R; + break; + //$RL = array of row indices + case 'array,integer,integer': + list($RL, $j0, $jF) = $args; + if (count($RL) > 0) { $m = count($RL); } else { throw new Exception(self::ArgumentBoundsException); } + if (($jF >= $j0) && ($this->n >= $jF) && ($j0 >= 0)) { $n = $jF - $j0; } else { throw new Exception(self::ArgumentBoundsException); } + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n+1); + for($i = 0; $i < $m; ++$i) { + for($j = $j0; $j <= $jF; ++$j) { + $R->set($i, $j - $j0, $this->A[$RL[$i]][$j]); + } + } + return $R; + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function getMatrix() + + + /** + * checkMatrixDimensions + * + * Is matrix B the same size? + * @param Matrix $B Matrix B + * @return boolean + */ + public function checkMatrixDimensions($B = null) { + if ($B instanceof PHPExcel_Shared_JAMA_Matrix) { + if (($this->m == $B->getRowDimension()) && ($this->n == $B->getColumnDimension())) { + return true; + } else { + throw new Exception(self::MatrixDimensionException); + } + } else { + throw new Exception(self::ArgumentTypeException); + } + } // function checkMatrixDimensions() + + + + /** + * set + * + * Set the i,j-th element of the matrix. + * @param int $i Row position + * @param int $j Column position + * @param mixed $c Int/float/double value + * @return mixed Element (int/float/double) + */ + public function set($i = null, $j = null, $c = null) { + // Optimized set version just has this + $this->A[$i][$j] = $c; + } // function set() + + + /** + * identity + * + * Generate an identity matrix. + * @param int $m Row dimension + * @param int $n Column dimension + * @return Matrix Identity matrix + */ + public function identity($m = null, $n = null) { + return $this->diagonal($m, $n, 1); + } // function identity() + + + /** + * diagonal + * + * Generate a diagonal matrix + * @param int $m Row dimension + * @param int $n Column dimension + * @param mixed $c Diagonal value + * @return Matrix Diagonal matrix + */ + public function diagonal($m = null, $n = null, $c = 1) { + $R = new PHPExcel_Shared_JAMA_Matrix($m, $n); + for($i = 0; $i < $m; ++$i) { + $R->set($i, $i, $c); + } + return $R; + } // function diagonal() + + + /** + * getMatrixByRow + * + * Get a submatrix by row index/range + * @param int $i0 Initial row index + * @param int $iF Final row index + * @return Matrix Submatrix + */ + public function getMatrixByRow($i0 = null, $iF = null) { + if (is_int($i0)) { + if (is_int($iF)) { + return $this->getMatrix($i0, 0, $iF + 1, $this->n); + } else { + return $this->getMatrix($i0, 0, $i0 + 1, $this->n); + } + } else { + throw new Exception(self::ArgumentTypeException); + } + } // function getMatrixByRow() + + + /** + * getMatrixByCol + * + * Get a submatrix by column index/range + * @param int $i0 Initial column index + * @param int $iF Final column index + * @return Matrix Submatrix + */ + public function getMatrixByCol($j0 = null, $jF = null) { + if (is_int($j0)) { + if (is_int($jF)) { + return $this->getMatrix(0, $j0, $this->m, $jF + 1); + } else { + return $this->getMatrix(0, $j0, $this->m, $j0 + 1); + } + } else { + throw new Exception(self::ArgumentTypeException); + } + } // function getMatrixByCol() + + + /** + * transpose + * + * Tranpose matrix + * @return Matrix Transposed matrix + */ + public function transpose() { + $R = new PHPExcel_Shared_JAMA_Matrix($this->n, $this->m); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $R->set($j, $i, $this->A[$i][$j]); + } + } + return $R; + } // function transpose() + + + /** + * trace + * + * Sum of diagonal elements + * @return float Sum of diagonal elements + */ + public function trace() { + $s = 0; + $n = min($this->m, $this->n); + for($i = 0; $i < $n; ++$i) { + $s += $this->A[$i][$i]; + } + return $s; + } // function trace() + + + /** + * uminus + * + * Unary minus matrix -A + * @return Matrix Unary minus matrix + */ + public function uminus() { + } // function uminus() + + + /** + * plus + * + * A + B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function plus() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $M->set($i, $j, $M->get($i, $j) + $this->A[$i][$j]); + } + } + return $M; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function plus() + + + /** + * plusEquals + * + * A = A + B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function plusEquals() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $validValues = True; + $value = $M->get($i, $j); + if ((is_string($this->A[$i][$j])) && (strlen($this->A[$i][$j]) > 0) && (!is_numeric($this->A[$i][$j]))) { + $this->A[$i][$j] = trim($this->A[$i][$j],'"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($this->A[$i][$j]); + } + if ((is_string($value)) && (strlen($value) > 0) && (!is_numeric($value))) { + $value = trim($value,'"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($value); + } + if ($validValues) { + $this->A[$i][$j] += $value; + } else { + $this->A[$i][$j] = PHPExcel_Calculation_Functions::NaN(); + } + } + } + return $this; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function plusEquals() + + + /** + * minus + * + * A - B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function minus() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $M->set($i, $j, $M->get($i, $j) - $this->A[$i][$j]); + } + } + return $M; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function minus() + + + /** + * minusEquals + * + * A = A - B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function minusEquals() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $validValues = True; + $value = $M->get($i, $j); + if ((is_string($this->A[$i][$j])) && (strlen($this->A[$i][$j]) > 0) && (!is_numeric($this->A[$i][$j]))) { + $this->A[$i][$j] = trim($this->A[$i][$j],'"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($this->A[$i][$j]); + } + if ((is_string($value)) && (strlen($value) > 0) && (!is_numeric($value))) { + $value = trim($value,'"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($value); + } + if ($validValues) { + $this->A[$i][$j] -= $value; + } else { + $this->A[$i][$j] = PHPExcel_Calculation_Functions::NaN(); + } + } + } + return $this; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function minusEquals() + + + /** + * arrayTimes + * + * Element-by-element multiplication + * Cij = Aij * Bij + * @param mixed $B Matrix/Array + * @return Matrix Matrix Cij + */ + public function arrayTimes() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $M->set($i, $j, $M->get($i, $j) * $this->A[$i][$j]); + } + } + return $M; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function arrayTimes() + + + /** + * arrayTimesEquals + * + * Element-by-element multiplication + * Aij = Aij * Bij + * @param mixed $B Matrix/Array + * @return Matrix Matrix Aij + */ + public function arrayTimesEquals() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $validValues = True; + $value = $M->get($i, $j); + if ((is_string($this->A[$i][$j])) && (strlen($this->A[$i][$j]) > 0) && (!is_numeric($this->A[$i][$j]))) { + $this->A[$i][$j] = trim($this->A[$i][$j],'"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($this->A[$i][$j]); + } + if ((is_string($value)) && (strlen($value) > 0) && (!is_numeric($value))) { + $value = trim($value,'"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($value); + } + if ($validValues) { + $this->A[$i][$j] *= $value; + } else { + $this->A[$i][$j] = PHPExcel_Calculation_Functions::NaN(); + } + } + } + return $this; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function arrayTimesEquals() + + + /** + * arrayRightDivide + * + * Element-by-element right division + * A / B + * @param Matrix $B Matrix B + * @return Matrix Division result + */ + public function arrayRightDivide() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $validValues = True; + $value = $M->get($i, $j); + if ((is_string($this->A[$i][$j])) && (strlen($this->A[$i][$j]) > 0) && (!is_numeric($this->A[$i][$j]))) { + $this->A[$i][$j] = trim($this->A[$i][$j],'"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($this->A[$i][$j]); + } + if ((is_string($value)) && (strlen($value) > 0) && (!is_numeric($value))) { + $value = trim($value,'"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($value); + } + if ($validValues) { + if ($value == 0) { + // Trap for Divide by Zero error + $M->set($i, $j, '#DIV/0!'); + } else { + $M->set($i, $j, $this->A[$i][$j] / $value); + } + } else { + $M->set($i, $j, PHPExcel_Calculation_Functions::NaN()); + } + } + } + return $M; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function arrayRightDivide() + + + /** + * arrayRightDivideEquals + * + * Element-by-element right division + * Aij = Aij / Bij + * @param mixed $B Matrix/Array + * @return Matrix Matrix Aij + */ + public function arrayRightDivideEquals() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $this->A[$i][$j] = $this->A[$i][$j] / $M->get($i, $j); + } + } + return $M; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function arrayRightDivideEquals() + + + /** + * arrayLeftDivide + * + * Element-by-element Left division + * A / B + * @param Matrix $B Matrix B + * @return Matrix Division result + */ + public function arrayLeftDivide() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $M->set($i, $j, $M->get($i, $j) / $this->A[$i][$j]); + } + } + return $M; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function arrayLeftDivide() + + + /** + * arrayLeftDivideEquals + * + * Element-by-element Left division + * Aij = Aij / Bij + * @param mixed $B Matrix/Array + * @return Matrix Matrix Aij + */ + public function arrayLeftDivideEquals() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $this->A[$i][$j] = $M->get($i, $j) / $this->A[$i][$j]; + } + } + return $M; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function arrayLeftDivideEquals() + + + /** + * times + * + * Matrix multiplication + * @param mixed $n Matrix/Array/Scalar + * @return Matrix Product + */ + public function times() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $B = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + if ($this->n == $B->m) { + $C = new PHPExcel_Shared_JAMA_Matrix($this->m, $B->n); + for($j = 0; $j < $B->n; ++$j) { + for ($k = 0; $k < $this->n; ++$k) { + $Bcolj[$k] = $B->A[$k][$j]; + } + for($i = 0; $i < $this->m; ++$i) { + $Arowi = $this->A[$i]; + $s = 0; + for($k = 0; $k < $this->n; ++$k) { + $s += $Arowi[$k] * $Bcolj[$k]; + } + $C->A[$i][$j] = $s; + } + } + return $C; + } else { + throw new Exception(JAMAError(MatrixDimensionMismatch)); + } + break; + case 'array': + $B = new PHPExcel_Shared_JAMA_Matrix($args[0]); + if ($this->n == $B->m) { + $C = new PHPExcel_Shared_JAMA_Matrix($this->m, $B->n); + for($i = 0; $i < $C->m; ++$i) { + for($j = 0; $j < $C->n; ++$j) { + $s = "0"; + for($k = 0; $k < $C->n; ++$k) { + $s += $this->A[$i][$k] * $B->A[$k][$j]; + } + $C->A[$i][$j] = $s; + } + } + return $C; + } else { + throw new Exception(JAMAError(MatrixDimensionMismatch)); + } + return $M; + break; + case 'integer': + $C = new PHPExcel_Shared_JAMA_Matrix($this->A); + for($i = 0; $i < $C->m; ++$i) { + for($j = 0; $j < $C->n; ++$j) { + $C->A[$i][$j] *= $args[0]; + } + } + return $C; + break; + case 'double': + $C = new PHPExcel_Shared_JAMA_Matrix($this->m, $this->n); + for($i = 0; $i < $C->m; ++$i) { + for($j = 0; $j < $C->n; ++$j) { + $C->A[$i][$j] = $args[0] * $this->A[$i][$j]; + } + } + return $C; + break; + case 'float': + $C = new PHPExcel_Shared_JAMA_Matrix($this->A); + for($i = 0; $i < $C->m; ++$i) { + for($j = 0; $j < $C->n; ++$j) { + $C->A[$i][$j] *= $args[0]; + } + } + return $C; + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function times() + + + /** + * power + * + * A = A ^ B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function power() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + break; + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $validValues = True; + $value = $M->get($i, $j); + if ((is_string($this->A[$i][$j])) && (strlen($this->A[$i][$j]) > 0) && (!is_numeric($this->A[$i][$j]))) { + $this->A[$i][$j] = trim($this->A[$i][$j],'"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($this->A[$i][$j]); + } + if ((is_string($value)) && (strlen($value) > 0) && (!is_numeric($value))) { + $value = trim($value,'"'); + $validValues &= PHPExcel_Shared_String::convertToNumberIfFraction($value); + } + if ($validValues) { + $this->A[$i][$j] = pow($this->A[$i][$j],$value); + } else { + $this->A[$i][$j] = PHPExcel_Calculation_Functions::NaN(); + } + } + } + return $this; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function power() + + + /** + * concat + * + * A = A & B + * @param mixed $B Matrix/Array + * @return Matrix Sum + */ + public function concat() { + if (func_num_args() > 0) { + $args = func_get_args(); + $match = implode(",", array_map('gettype', $args)); + + switch($match) { + case 'object': + if ($args[0] instanceof PHPExcel_Shared_JAMA_Matrix) { $M = $args[0]; } else { throw new Exception(self::ArgumentTypeException); } + case 'array': + $M = new PHPExcel_Shared_JAMA_Matrix($args[0]); + break; + default: + throw new Exception(self::PolymorphicArgumentException); + break; + } + $this->checkMatrixDimensions($M); + for($i = 0; $i < $this->m; ++$i) { + for($j = 0; $j < $this->n; ++$j) { + $this->A[$i][$j] = trim($this->A[$i][$j],'"').trim($M->get($i, $j),'"'); + } + } + return $this; + } else { + throw new Exception(self::PolymorphicArgumentException); + } + } // function concat() + + + /** + * Solve A*X = B. + * + * @param Matrix $B Right hand side + * @return Matrix ... Solution if A is square, least squares solution otherwise + */ + public function solve($B) { + if ($this->m == $this->n) { + $LU = new PHPExcel_Shared_JAMA_LUDecomposition($this); + return $LU->solve($B); + } else { + $QR = new QRDecomposition($this); + return $QR->solve($B); + } + } // function solve() + + + /** + * Matrix inverse or pseudoinverse. + * + * @return Matrix ... Inverse(A) if A is square, pseudoinverse otherwise. + */ + public function inverse() { + return $this->solve($this->identity($this->m, $this->m)); + } // function inverse() + + + /** + * det + * + * Calculate determinant + * @return float Determinant + */ + public function det() { + $L = new PHPExcel_Shared_JAMA_LUDecomposition($this); + return $L->det(); + } // function det() + + +} // class PHPExcel_Shared_JAMA_Matrix diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/QRDecomposition.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/QRDecomposition.php new file mode 100644 index 0000000..49293d7 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/QRDecomposition.php @@ -0,0 +1,234 @@ +<?php +/** + * @package JAMA + * + * For an m-by-n matrix A with m >= n, the QR decomposition is an m-by-n + * orthogonal matrix Q and an n-by-n upper triangular matrix R so that + * A = Q*R. + * + * The QR decompostion always exists, even if the matrix does not have + * full rank, so the constructor will never fail. The primary use of the + * QR decomposition is in the least squares solution of nonsquare systems + * of simultaneous linear equations. This will fail if isFullRank() + * returns false. + * + * @author Paul Meagher + * @license PHP v3.0 + * @version 1.1 + */ +class PHPExcel_Shared_JAMA_QRDecomposition { + + const MatrixRankException = "Can only perform operation on full-rank matrix."; + + /** + * Array for internal storage of decomposition. + * @var array + */ + private $QR = array(); + + /** + * Row dimension. + * @var integer + */ + private $m; + + /** + * Column dimension. + * @var integer + */ + private $n; + + /** + * Array for internal storage of diagonal of R. + * @var array + */ + private $Rdiag = array(); + + + /** + * QR Decomposition computed by Householder reflections. + * + * @param matrix $A Rectangular matrix + * @return Structure to access R and the Householder vectors and compute Q. + */ + public function __construct($A) { + if($A instanceof PHPExcel_Shared_JAMA_Matrix) { + // Initialize. + $this->QR = $A->getArrayCopy(); + $this->m = $A->getRowDimension(); + $this->n = $A->getColumnDimension(); + // Main loop. + for ($k = 0; $k < $this->n; ++$k) { + // Compute 2-norm of k-th column without under/overflow. + $nrm = 0.0; + for ($i = $k; $i < $this->m; ++$i) { + $nrm = hypo($nrm, $this->QR[$i][$k]); + } + if ($nrm != 0.0) { + // Form k-th Householder vector. + if ($this->QR[$k][$k] < 0) { + $nrm = -$nrm; + } + for ($i = $k; $i < $this->m; ++$i) { + $this->QR[$i][$k] /= $nrm; + } + $this->QR[$k][$k] += 1.0; + // Apply transformation to remaining columns. + for ($j = $k+1; $j < $this->n; ++$j) { + $s = 0.0; + for ($i = $k; $i < $this->m; ++$i) { + $s += $this->QR[$i][$k] * $this->QR[$i][$j]; + } + $s = -$s/$this->QR[$k][$k]; + for ($i = $k; $i < $this->m; ++$i) { + $this->QR[$i][$j] += $s * $this->QR[$i][$k]; + } + } + } + $this->Rdiag[$k] = -$nrm; + } + } else { + throw new Exception(PHPExcel_Shared_JAMA_Matrix::ArgumentTypeException); + } + } // function __construct() + + + /** + * Is the matrix full rank? + * + * @return boolean true if R, and hence A, has full rank, else false. + */ + public function isFullRank() { + for ($j = 0; $j < $this->n; ++$j) { + if ($this->Rdiag[$j] == 0) { + return false; + } + } + return true; + } // function isFullRank() + + + /** + * Return the Householder vectors + * + * @return Matrix Lower trapezoidal matrix whose columns define the reflections + */ + public function getH() { + for ($i = 0; $i < $this->m; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + if ($i >= $j) { + $H[$i][$j] = $this->QR[$i][$j]; + } else { + $H[$i][$j] = 0.0; + } + } + } + return new PHPExcel_Shared_JAMA_Matrix($H); + } // function getH() + + + /** + * Return the upper triangular factor + * + * @return Matrix upper triangular factor + */ + public function getR() { + for ($i = 0; $i < $this->n; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + if ($i < $j) { + $R[$i][$j] = $this->QR[$i][$j]; + } elseif ($i == $j) { + $R[$i][$j] = $this->Rdiag[$i]; + } else { + $R[$i][$j] = 0.0; + } + } + } + return new PHPExcel_Shared_JAMA_Matrix($R); + } // function getR() + + + /** + * Generate and return the (economy-sized) orthogonal factor + * + * @return Matrix orthogonal factor + */ + public function getQ() { + for ($k = $this->n-1; $k >= 0; --$k) { + for ($i = 0; $i < $this->m; ++$i) { + $Q[$i][$k] = 0.0; + } + $Q[$k][$k] = 1.0; + for ($j = $k; $j < $this->n; ++$j) { + if ($this->QR[$k][$k] != 0) { + $s = 0.0; + for ($i = $k; $i < $this->m; ++$i) { + $s += $this->QR[$i][$k] * $Q[$i][$j]; + } + $s = -$s/$this->QR[$k][$k]; + for ($i = $k; $i < $this->m; ++$i) { + $Q[$i][$j] += $s * $this->QR[$i][$k]; + } + } + } + } + /* + for($i = 0; $i < count($Q); ++$i) { + for($j = 0; $j < count($Q); ++$j) { + if(! isset($Q[$i][$j]) ) { + $Q[$i][$j] = 0; + } + } + } + */ + return new PHPExcel_Shared_JAMA_Matrix($Q); + } // function getQ() + + + /** + * Least squares solution of A*X = B + * + * @param Matrix $B A Matrix with as many rows as A and any number of columns. + * @return Matrix Matrix that minimizes the two norm of Q*R*X-B. + */ + public function solve($B) { + if ($B->getRowDimension() == $this->m) { + if ($this->isFullRank()) { + // Copy right hand side + $nx = $B->getColumnDimension(); + $X = $B->getArrayCopy(); + // Compute Y = transpose(Q)*B + for ($k = 0; $k < $this->n; ++$k) { + for ($j = 0; $j < $nx; ++$j) { + $s = 0.0; + for ($i = $k; $i < $this->m; ++$i) { + $s += $this->QR[$i][$k] * $X[$i][$j]; + } + $s = -$s/$this->QR[$k][$k]; + for ($i = $k; $i < $this->m; ++$i) { + $X[$i][$j] += $s * $this->QR[$i][$k]; + } + } + } + // Solve R*X = Y; + for ($k = $this->n-1; $k >= 0; --$k) { + for ($j = 0; $j < $nx; ++$j) { + $X[$k][$j] /= $this->Rdiag[$k]; + } + for ($i = 0; $i < $k; ++$i) { + for ($j = 0; $j < $nx; ++$j) { + $X[$i][$j] -= $X[$k][$j]* $this->QR[$i][$k]; + } + } + } + $X = new PHPExcel_Shared_JAMA_Matrix($X); + return ($X->getMatrix(0, $this->n-1, 0, $nx)); + } else { + throw new Exception(self::MatrixRankException); + } + } else { + throw new Exception(PHPExcel_Shared_JAMA_Matrix::MatrixDimensionException); + } + } // function solve() + +} // PHPExcel_Shared_JAMA_class QRDecomposition diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/SingularValueDecomposition.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/SingularValueDecomposition.php new file mode 100644 index 0000000..a4b096c --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/SingularValueDecomposition.php @@ -0,0 +1,526 @@ +<?php +/** + * @package JAMA + * + * For an m-by-n matrix A with m >= n, the singular value decomposition is + * an m-by-n orthogonal matrix U, an n-by-n diagonal matrix S, and + * an n-by-n orthogonal matrix V so that A = U*S*V'. + * + * The singular values, sigma[$k] = S[$k][$k], are ordered so that + * sigma[0] >= sigma[1] >= ... >= sigma[n-1]. + * + * The singular value decompostion always exists, so the constructor will + * never fail. The matrix condition number and the effective numerical + * rank can be computed from this decomposition. + * + * @author Paul Meagher + * @license PHP v3.0 + * @version 1.1 + */ +class SingularValueDecomposition { + + /** + * Internal storage of U. + * @var array + */ + private $U = array(); + + /** + * Internal storage of V. + * @var array + */ + private $V = array(); + + /** + * Internal storage of singular values. + * @var array + */ + private $s = array(); + + /** + * Row dimension. + * @var int + */ + private $m; + + /** + * Column dimension. + * @var int + */ + private $n; + + + /** + * Construct the singular value decomposition + * + * Derived from LINPACK code. + * + * @param $A Rectangular matrix + * @return Structure to access U, S and V. + */ + public function __construct($Arg) { + + // Initialize. + $A = $Arg->getArrayCopy(); + $this->m = $Arg->getRowDimension(); + $this->n = $Arg->getColumnDimension(); + $nu = min($this->m, $this->n); + $e = array(); + $work = array(); + $wantu = true; + $wantv = true; + $nct = min($this->m - 1, $this->n); + $nrt = max(0, min($this->n - 2, $this->m)); + + // Reduce A to bidiagonal form, storing the diagonal elements + // in s and the super-diagonal elements in e. + for ($k = 0; $k < max($nct,$nrt); ++$k) { + + if ($k < $nct) { + // Compute the transformation for the k-th column and + // place the k-th diagonal in s[$k]. + // Compute 2-norm of k-th column without under/overflow. + $this->s[$k] = 0; + for ($i = $k; $i < $this->m; ++$i) { + $this->s[$k] = hypo($this->s[$k], $A[$i][$k]); + } + if ($this->s[$k] != 0.0) { + if ($A[$k][$k] < 0.0) { + $this->s[$k] = -$this->s[$k]; + } + for ($i = $k; $i < $this->m; ++$i) { + $A[$i][$k] /= $this->s[$k]; + } + $A[$k][$k] += 1.0; + } + $this->s[$k] = -$this->s[$k]; + } + + for ($j = $k + 1; $j < $this->n; ++$j) { + if (($k < $nct) & ($this->s[$k] != 0.0)) { + // Apply the transformation. + $t = 0; + for ($i = $k; $i < $this->m; ++$i) { + $t += $A[$i][$k] * $A[$i][$j]; + } + $t = -$t / $A[$k][$k]; + for ($i = $k; $i < $this->m; ++$i) { + $A[$i][$j] += $t * $A[$i][$k]; + } + // Place the k-th row of A into e for the + // subsequent calculation of the row transformation. + $e[$j] = $A[$k][$j]; + } + } + + if ($wantu AND ($k < $nct)) { + // Place the transformation in U for subsequent back + // multiplication. + for ($i = $k; $i < $this->m; ++$i) { + $this->U[$i][$k] = $A[$i][$k]; + } + } + + if ($k < $nrt) { + // Compute the k-th row transformation and place the + // k-th super-diagonal in e[$k]. + // Compute 2-norm without under/overflow. + $e[$k] = 0; + for ($i = $k + 1; $i < $this->n; ++$i) { + $e[$k] = hypo($e[$k], $e[$i]); + } + if ($e[$k] != 0.0) { + if ($e[$k+1] < 0.0) { + $e[$k] = -$e[$k]; + } + for ($i = $k + 1; $i < $this->n; ++$i) { + $e[$i] /= $e[$k]; + } + $e[$k+1] += 1.0; + } + $e[$k] = -$e[$k]; + if (($k+1 < $this->m) AND ($e[$k] != 0.0)) { + // Apply the transformation. + for ($i = $k+1; $i < $this->m; ++$i) { + $work[$i] = 0.0; + } + for ($j = $k+1; $j < $this->n; ++$j) { + for ($i = $k+1; $i < $this->m; ++$i) { + $work[$i] += $e[$j] * $A[$i][$j]; + } + } + for ($j = $k + 1; $j < $this->n; ++$j) { + $t = -$e[$j] / $e[$k+1]; + for ($i = $k + 1; $i < $this->m; ++$i) { + $A[$i][$j] += $t * $work[$i]; + } + } + } + if ($wantv) { + // Place the transformation in V for subsequent + // back multiplication. + for ($i = $k + 1; $i < $this->n; ++$i) { + $this->V[$i][$k] = $e[$i]; + } + } + } + } + + // Set up the final bidiagonal matrix or order p. + $p = min($this->n, $this->m + 1); + if ($nct < $this->n) { + $this->s[$nct] = $A[$nct][$nct]; + } + if ($this->m < $p) { + $this->s[$p-1] = 0.0; + } + if ($nrt + 1 < $p) { + $e[$nrt] = $A[$nrt][$p-1]; + } + $e[$p-1] = 0.0; + // If required, generate U. + if ($wantu) { + for ($j = $nct; $j < $nu; ++$j) { + for ($i = 0; $i < $this->m; ++$i) { + $this->U[$i][$j] = 0.0; + } + $this->U[$j][$j] = 1.0; + } + for ($k = $nct - 1; $k >= 0; --$k) { + if ($this->s[$k] != 0.0) { + for ($j = $k + 1; $j < $nu; ++$j) { + $t = 0; + for ($i = $k; $i < $this->m; ++$i) { + $t += $this->U[$i][$k] * $this->U[$i][$j]; + } + $t = -$t / $this->U[$k][$k]; + for ($i = $k; $i < $this->m; ++$i) { + $this->U[$i][$j] += $t * $this->U[$i][$k]; + } + } + for ($i = $k; $i < $this->m; ++$i ) { + $this->U[$i][$k] = -$this->U[$i][$k]; + } + $this->U[$k][$k] = 1.0 + $this->U[$k][$k]; + for ($i = 0; $i < $k - 1; ++$i) { + $this->U[$i][$k] = 0.0; + } + } else { + for ($i = 0; $i < $this->m; ++$i) { + $this->U[$i][$k] = 0.0; + } + $this->U[$k][$k] = 1.0; + } + } + } + + // If required, generate V. + if ($wantv) { + for ($k = $this->n - 1; $k >= 0; --$k) { + if (($k < $nrt) AND ($e[$k] != 0.0)) { + for ($j = $k + 1; $j < $nu; ++$j) { + $t = 0; + for ($i = $k + 1; $i < $this->n; ++$i) { + $t += $this->V[$i][$k]* $this->V[$i][$j]; + } + $t = -$t / $this->V[$k+1][$k]; + for ($i = $k + 1; $i < $this->n; ++$i) { + $this->V[$i][$j] += $t * $this->V[$i][$k]; + } + } + } + for ($i = 0; $i < $this->n; ++$i) { + $this->V[$i][$k] = 0.0; + } + $this->V[$k][$k] = 1.0; + } + } + + // Main iteration loop for the singular values. + $pp = $p - 1; + $iter = 0; + $eps = pow(2.0, -52.0); + + while ($p > 0) { + // Here is where a test for too many iterations would go. + // This section of the program inspects for negligible + // elements in the s and e arrays. On completion the + // variables kase and k are set as follows: + // kase = 1 if s(p) and e[k-1] are negligible and k<p + // kase = 2 if s(k) is negligible and k<p + // kase = 3 if e[k-1] is negligible, k<p, and + // s(k), ..., s(p) are not negligible (qr step). + // kase = 4 if e(p-1) is negligible (convergence). + for ($k = $p - 2; $k >= -1; --$k) { + if ($k == -1) { + break; + } + if (abs($e[$k]) <= $eps * (abs($this->s[$k]) + abs($this->s[$k+1]))) { + $e[$k] = 0.0; + break; + } + } + if ($k == $p - 2) { + $kase = 4; + } else { + for ($ks = $p - 1; $ks >= $k; --$ks) { + if ($ks == $k) { + break; + } + $t = ($ks != $p ? abs($e[$ks]) : 0.) + ($ks != $k + 1 ? abs($e[$ks-1]) : 0.); + if (abs($this->s[$ks]) <= $eps * $t) { + $this->s[$ks] = 0.0; + break; + } + } + if ($ks == $k) { + $kase = 3; + } else if ($ks == $p-1) { + $kase = 1; + } else { + $kase = 2; + $k = $ks; + } + } + ++$k; + + // Perform the task indicated by kase. + switch ($kase) { + // Deflate negligible s(p). + case 1: + $f = $e[$p-2]; + $e[$p-2] = 0.0; + for ($j = $p - 2; $j >= $k; --$j) { + $t = hypo($this->s[$j],$f); + $cs = $this->s[$j] / $t; + $sn = $f / $t; + $this->s[$j] = $t; + if ($j != $k) { + $f = -$sn * $e[$j-1]; + $e[$j-1] = $cs * $e[$j-1]; + } + if ($wantv) { + for ($i = 0; $i < $this->n; ++$i) { + $t = $cs * $this->V[$i][$j] + $sn * $this->V[$i][$p-1]; + $this->V[$i][$p-1] = -$sn * $this->V[$i][$j] + $cs * $this->V[$i][$p-1]; + $this->V[$i][$j] = $t; + } + } + } + break; + // Split at negligible s(k). + case 2: + $f = $e[$k-1]; + $e[$k-1] = 0.0; + for ($j = $k; $j < $p; ++$j) { + $t = hypo($this->s[$j], $f); + $cs = $this->s[$j] / $t; + $sn = $f / $t; + $this->s[$j] = $t; + $f = -$sn * $e[$j]; + $e[$j] = $cs * $e[$j]; + if ($wantu) { + for ($i = 0; $i < $this->m; ++$i) { + $t = $cs * $this->U[$i][$j] + $sn * $this->U[$i][$k-1]; + $this->U[$i][$k-1] = -$sn * $this->U[$i][$j] + $cs * $this->U[$i][$k-1]; + $this->U[$i][$j] = $t; + } + } + } + break; + // Perform one qr step. + case 3: + // Calculate the shift. + $scale = max(max(max(max( + abs($this->s[$p-1]),abs($this->s[$p-2])),abs($e[$p-2])), + abs($this->s[$k])), abs($e[$k])); + $sp = $this->s[$p-1] / $scale; + $spm1 = $this->s[$p-2] / $scale; + $epm1 = $e[$p-2] / $scale; + $sk = $this->s[$k] / $scale; + $ek = $e[$k] / $scale; + $b = (($spm1 + $sp) * ($spm1 - $sp) + $epm1 * $epm1) / 2.0; + $c = ($sp * $epm1) * ($sp * $epm1); + $shift = 0.0; + if (($b != 0.0) || ($c != 0.0)) { + $shift = sqrt($b * $b + $c); + if ($b < 0.0) { + $shift = -$shift; + } + $shift = $c / ($b + $shift); + } + $f = ($sk + $sp) * ($sk - $sp) + $shift; + $g = $sk * $ek; + // Chase zeros. + for ($j = $k; $j < $p-1; ++$j) { + $t = hypo($f,$g); + $cs = $f/$t; + $sn = $g/$t; + if ($j != $k) { + $e[$j-1] = $t; + } + $f = $cs * $this->s[$j] + $sn * $e[$j]; + $e[$j] = $cs * $e[$j] - $sn * $this->s[$j]; + $g = $sn * $this->s[$j+1]; + $this->s[$j+1] = $cs * $this->s[$j+1]; + if ($wantv) { + for ($i = 0; $i < $this->n; ++$i) { + $t = $cs * $this->V[$i][$j] + $sn * $this->V[$i][$j+1]; + $this->V[$i][$j+1] = -$sn * $this->V[$i][$j] + $cs * $this->V[$i][$j+1]; + $this->V[$i][$j] = $t; + } + } + $t = hypo($f,$g); + $cs = $f/$t; + $sn = $g/$t; + $this->s[$j] = $t; + $f = $cs * $e[$j] + $sn * $this->s[$j+1]; + $this->s[$j+1] = -$sn * $e[$j] + $cs * $this->s[$j+1]; + $g = $sn * $e[$j+1]; + $e[$j+1] = $cs * $e[$j+1]; + if ($wantu && ($j < $this->m - 1)) { + for ($i = 0; $i < $this->m; ++$i) { + $t = $cs * $this->U[$i][$j] + $sn * $this->U[$i][$j+1]; + $this->U[$i][$j+1] = -$sn * $this->U[$i][$j] + $cs * $this->U[$i][$j+1]; + $this->U[$i][$j] = $t; + } + } + } + $e[$p-2] = $f; + $iter = $iter + 1; + break; + // Convergence. + case 4: + // Make the singular values positive. + if ($this->s[$k] <= 0.0) { + $this->s[$k] = ($this->s[$k] < 0.0 ? -$this->s[$k] : 0.0); + if ($wantv) { + for ($i = 0; $i <= $pp; ++$i) { + $this->V[$i][$k] = -$this->V[$i][$k]; + } + } + } + // Order the singular values. + while ($k < $pp) { + if ($this->s[$k] >= $this->s[$k+1]) { + break; + } + $t = $this->s[$k]; + $this->s[$k] = $this->s[$k+1]; + $this->s[$k+1] = $t; + if ($wantv AND ($k < $this->n - 1)) { + for ($i = 0; $i < $this->n; ++$i) { + $t = $this->V[$i][$k+1]; + $this->V[$i][$k+1] = $this->V[$i][$k]; + $this->V[$i][$k] = $t; + } + } + if ($wantu AND ($k < $this->m-1)) { + for ($i = 0; $i < $this->m; ++$i) { + $t = $this->U[$i][$k+1]; + $this->U[$i][$k+1] = $this->U[$i][$k]; + $this->U[$i][$k] = $t; + } + } + ++$k; + } + $iter = 0; + --$p; + break; + } // end switch + } // end while + + } // end constructor + + + /** + * Return the left singular vectors + * + * @access public + * @return U + */ + public function getU() { + return new Matrix($this->U, $this->m, min($this->m + 1, $this->n)); + } + + + /** + * Return the right singular vectors + * + * @access public + * @return V + */ + public function getV() { + return new Matrix($this->V); + } + + + /** + * Return the one-dimensional array of singular values + * + * @access public + * @return diagonal of S. + */ + public function getSingularValues() { + return $this->s; + } + + + /** + * Return the diagonal matrix of singular values + * + * @access public + * @return S + */ + public function getS() { + for ($i = 0; $i < $this->n; ++$i) { + for ($j = 0; $j < $this->n; ++$j) { + $S[$i][$j] = 0.0; + } + $S[$i][$i] = $this->s[$i]; + } + return new Matrix($S); + } + + + /** + * Two norm + * + * @access public + * @return max(S) + */ + public function norm2() { + return $this->s[0]; + } + + + /** + * Two norm condition number + * + * @access public + * @return max(S)/min(S) + */ + public function cond() { + return $this->s[0] / $this->s[min($this->m, $this->n) - 1]; + } + + + /** + * Effective numerical matrix rank + * + * @access public + * @return Number of nonnegligible singular values. + */ + public function rank() { + $eps = pow(2.0, -52.0); + $tol = max($this->m, $this->n) * $this->s[0] * $eps; + $r = 0; + for ($i = 0; $i < count($this->s); ++$i) { + if ($this->s[$i] > $tol) { + ++$r; + } + } + return $r; + } + +} // class SingularValueDecomposition diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/_notes/dwsync.xml new file mode 100644 index 0000000..5f508ae --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/_notes/dwsync.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="CHANGELOG.TXT" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="CholeskyDecomposition.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="EigenvalueDecomposition.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="LUDecomposition.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Matrix.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="QRDecomposition.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="SingularValueDecomposition.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="LUDecomposition.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="CholeskyDecomposition.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="SingularValueDecomposition.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="CHANGELOG.TXT" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="QRDecomposition.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="EigenvalueDecomposition.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="Matrix.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="LUDecomposition.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="CholeskyDecomposition.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="SingularValueDecomposition.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="CHANGELOG.TXT" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="QRDecomposition.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="EigenvalueDecomposition.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="Matrix.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="LUDecomposition.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560023284206" remote="131260197000000000" Dst="1" /> +<file name="CholeskyDecomposition.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560023751053" remote="131260197000000000" Dst="1" /> +<file name="SingularValueDecomposition.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560024251932" remote="131260197000000000" Dst="1" /> +<file name="CHANGELOG.TXT" server="62.244.88.111/actions-fendt/lisa/" local="131244560024715092" remote="131260197000000000" Dst="1" /> +<file name="QRDecomposition.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560025187463" remote="131260197000000000" Dst="1" /> +<file name="EigenvalueDecomposition.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560025712345" remote="131260197000000000" Dst="1" /> +<file name="Matrix.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560026241235" remote="131260197000000000" Dst="1" /> +<file name="LUDecomposition.php" server="62.244.88.21/amashow/" local="131414752310524650" remote="131414680800000000" Dst="2" /> +<file name="CholeskyDecomposition.php" server="62.244.88.21/amashow/" local="131414752310758790" remote="131414680800000000" Dst="2" /> +<file name="SingularValueDecomposition.php" server="62.244.88.21/amashow/" local="131414752311152188" remote="131414680800000000" Dst="2" /> +<file name="CHANGELOG.TXT" server="62.244.88.21/amashow/" local="131414752311331582" remote="131414680800000000" Dst="2" /> +<file name="QRDecomposition.php" server="62.244.88.21/amashow/" local="131414752311729577" remote="131414680800000000" Dst="2" /> +<file name="EigenvalueDecomposition.php" server="62.244.88.21/amashow/" local="131414752312214121" remote="131414680800000000" Dst="2" /> +<file name="Matrix.php" server="62.244.88.21/amashow/" local="131414752312691381" remote="131414680800000000" Dst="2" /> +<file name="CHANGELOG.TXT" server="62.244.88.21/deciday/" local="131919461289139184" remote="131826017400000000" Dst="1" /> +<file name="EigenvalueDecomposition.php" server="62.244.88.21/deciday/" local="131919461291930558" remote="131826017400000000" Dst="1" /> +<file name="SingularValueDecomposition.php" server="62.244.88.21/deciday/" local="131919461301046636" remote="131826017400000000" Dst="1" /> +<file name="QRDecomposition.php" server="62.244.88.21/deciday/" local="131919461299246201" remote="131826017400000000" Dst="1" /> +<file name="LUDecomposition.php" server="62.244.88.21/deciday/" local="131919461297394238" remote="131826017400000000" Dst="1" /> +<file name="Matrix.php" server="62.244.88.21/deciday/" local="131919461298773182" remote="131826017400000000" Dst="1" /> +<file name="CholeskyDecomposition.php" server="62.244.88.21/deciday/" local="131919461290595523" remote="131826017400000000" Dst="1" /> +<file name="CHANGELOG.TXT" server="62.244.88.21/deciday_18/" local="131414752311331582" remote="131825945400000000" Dst="2" /> +<file name="CholeskyDecomposition.php" server="62.244.88.21/deciday_18/" local="131414752310758790" remote="131825945400000000" Dst="2" /> +<file name="EigenvalueDecomposition.php" server="62.244.88.21/deciday_18/" local="131414752312214121" remote="131825945400000000" Dst="2" /> +<file name="LUDecomposition.php" server="62.244.88.21/deciday_18/" local="131414752310524650" remote="131825945400000000" Dst="2" /> +<file name="Matrix.php" server="62.244.88.21/deciday_18/" local="131414752312691381" remote="131825945400000000" Dst="2" /> +<file name="QRDecomposition.php" server="62.244.88.21/deciday_18/" local="131414752311729577" remote="131825945400000000" Dst="2" /> +<file name="SingularValueDecomposition.php" server="62.244.88.21/deciday_18/" local="131414752311152188" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LMQuadTest.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LMQuadTest.php new file mode 100644 index 0000000..2f316de --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LMQuadTest.php @@ -0,0 +1,116 @@ +<?php +/** + * quadratic (p-o)'S'S(p-o) + * solve for o, S + * S is a single scale factor + */ +class LMQuadTest { + + /** + * @param array[] $x + * @param array[] $a + */ + function val($x, $a) { + if (count($a) != 3) die ("Wrong number of elements in array a"); + if (count($x) != 2) die ("Wrong number of elements in array x"); + + $ox = $a[0]; + $oy = $a[1]; + $s = $a[2]; + + $sdx = $s * ($x[0] - $ox); + $sdy = $s * ($x[1] - $oy); + + return ($sdx * $sdx) + ($sdy * $sdy); + } // function val() + + + /** + * z = (p-o)'S'S(p-o) + * dz/dp = 2S'S(p-o) + * + * z = (s*(px-ox))^2 + (s*(py-oy))^2 + * dz/dox = -2(s*(px-ox))*s + * dz/ds = 2*s*[(px-ox)^2 + (py-oy)^2] + * + * z = (s*dx)^2 + (s*dy)^2 + * dz/ds = 2(s*dx)*dx + 2(s*dy)*dy + * + * @param array[] $x + * @param array[] $a + * @param int $a_k + * @param array[] $a + */ + function grad($x, $a, $a_k) { + if (count($a) != 3) die ("Wrong number of elements in array a"); + if (count($x) != 2) die ("Wrong number of elements in array x"); + if ($a_k < 3) die ("a_k=".$a_k); + + $ox = $a[0]; + $oy = $a[1]; + $s = $a[2]; + + $dx = ($x[0] - $ox); + $dy = ($x[1] - $oy); + + if ($a_k == 0) + return -2.*$s*$s*$dx; + elseif ($a_k == 1) + return -2.*$s*$s*$dy; + else + return 2.*$s*($dx*$dx + $dy*$dy); + } // function grad() + + + /** + * @return array[] $a + */ + function initial() { + $a[0] = 0.05; + $a[1] = 0.1; + $a[2] = 1.0; + + return $a; + } // function initial() + + + /** + * @return Object[] $a + */ + function testdata() { + $npts = 25; + + $a[0] = 0.; + $a[1] = 0.; + $a[2] = 0.9; + + $i = 0; + + for ($r = -2; $r <= 2; ++$r) { + for ($c = -2; $c <= 2; ++$c) { + $x[$i][0] = $c; + $x[$i][1] = $r; + $y[$i] = $this->val($x[$i], $a); + print("Quad ".$c.",".$r." -> ".$y[$i]."<br />"); + $s[$i] = 1.; + ++$i; + } + } + print("quad x= "); + + $qx = new Matrix($x); + $qx->print(10, 2); + + print("quad y= "); + $qy = new Matrix($y, $npts); + $qy->print(10, 2); + + $o[0] = $x; + $o[1] = $a; + $o[2] = $y; + $o[3] = $s; + + return $o; + } // function testdata() + +} // class LMQuadTest diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LagrangeInterpolation.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LagrangeInterpolation.php new file mode 100644 index 0000000..5b74286 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LagrangeInterpolation.php @@ -0,0 +1,59 @@ +<?php + +require_once "../Matrix.php"; + +/** + * Given n points (x0,y0)...(xn-1,yn-1), the following methid computes + * the polynomial factors of the n-1't degree polynomial passing through + * the n points. + * + * Example: Passing in three points (2,3) (1,4) and (3,7) will produce + * the results [2.5, -8.5, 10] which means that the points are on the + * curve y = 2.5x² - 8.5x + 10. + * + * @see http://geosoft.no/software/lagrange/LagrangeInterpolation.java.html + * @author Jacob Dreyer + * @author Paul Meagher (port to PHP and minor changes) + * + * @param x[] float + * @param y[] float + */ +class LagrangeInterpolation { + + public function findPolynomialFactors($x, $y) { + $n = count($x); + + $data = array(); // double[n][n]; + $rhs = array(); // double[n]; + + for ($i = 0; $i < $n; ++$i) { + $v = 1; + for ($j = 0; $j < $n; ++$j) { + $data[$i][$n-$j-1] = $v; + $v *= $x[$i]; + } + $rhs[$i] = $y[$i]; + } + + // Solve m * s = b + $m = new Matrix($data); + $b = new Matrix($rhs, $n); + + $s = $m->solve($b); + + return $s->getRowPackedCopy(); + } // function findPolynomialFactors() + +} // class LagrangeInterpolation + + +$x = array(2.0, 1.0, 3.0); +$y = array(3.0, 4.0, 7.0); + +$li = new LagrangeInterpolation; +$f = $li->findPolynomialFactors($x, $y); + + +for ($i = 0; $i < 3; ++$i) { + echo $f[$i]."<br />"; +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LagrangeInterpolation2.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LagrangeInterpolation2.php new file mode 100644 index 0000000..e7529c5 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LagrangeInterpolation2.php @@ -0,0 +1,59 @@ +<?php + +require_once "../Matrix.php"; + +/** + * Given n points (x0,y0)...(xn-1,yn-1), the following method computes + * the polynomial factors of the n-1't degree polynomial passing through + * the n points. + * + * Example: Passing in three points (2,3) (1,4) and (3,7) will produce + * the results [2.5, -8.5, 10] which means that the points are on the + * curve y = 2.5x² - 8.5x + 10. + * + * @see http://geosoft.no/software/lagrange/LagrangeInterpolation.java.html + * @see http://source.freehep.org/jcvsweb/ilc/LCSIM/wdview/lcsim/src/org/lcsim/fit/polynomial/PolynomialFitter.java + * @author Jacob Dreyer + * @author Paul Meagher (port to PHP and minor changes) + * + * @param x[] float + * @param y[] float + */ +class LagrangeInterpolation { + + public function findPolynomialFactors($x, $y) { + $n = count($x); + + $data = array(); // double[n][n]; + $rhs = array(); // double[n]; + + for ($i = 0; $i < $n; ++$i) { + $v = 1; + for ($j = 0; $j < $n; ++$j) { + $data[$i][$n-$j-1] = $v; + $v *= $x[$i]; + } + $rhs[$i] = $y[$i]; + } + + // Solve m * s = b + $m = new Matrix($data); + $b = new Matrix($rhs, $n); + + $s = $m->solve($b); + + return $s->getRowPackedCopy(); + } // function findPolynomialFactors() + +} // class LagrangeInterpolation + + +$x = array(2.0, 1.0, 3.0); +$y = array(3.0, 4.0, 7.0); + +$li = new LagrangeInterpolation; +$f = $li->findPolynomialFactors($x, $y); + +for ($i = 0; $i < 3; ++$i) { + echo $f[$i]."<br />"; +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LevenbergMarquardt.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LevenbergMarquardt.php new file mode 100644 index 0000000..7cfd5f8 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/LevenbergMarquardt.php @@ -0,0 +1,185 @@ +<?php + +// Levenberg-Marquardt in PHP + +// http://www.idiom.com/~zilla/Computer/Javanumeric/LM.java + +class LevenbergMarquardt { + + /** + * Calculate the current sum-squared-error + * + * Chi-squared is the distribution of squared Gaussian errors, + * thus the name. + * + * @param double[][] $x + * @param double[] $a + * @param double[] $y, + * @param double[] $s, + * @param object $f + */ + function chiSquared($x, $a, $y, $s, $f) { + $npts = count($y); + $sum = 0.0; + + for ($i = 0; $i < $npts; ++$i) { + $d = $y[$i] - $f->val($x[$i], $a); + $d = $d / $s[$i]; + $sum = $sum + ($d*$d); + } + + return $sum; + } // function chiSquared() + + + /** + * Minimize E = sum {(y[k] - f(x[k],a)) / s[k]}^2 + * The individual errors are optionally scaled by s[k]. + * Note that LMfunc implements the value and gradient of f(x,a), + * NOT the value and gradient of E with respect to a! + * + * @param x array of domain points, each may be multidimensional + * @param y corresponding array of values + * @param a the parameters/state of the model + * @param vary false to indicate the corresponding a[k] is to be held fixed + * @param s2 sigma^2 for point i + * @param lambda blend between steepest descent (lambda high) and + * jump to bottom of quadratic (lambda zero). + * Start with 0.001. + * @param termepsilon termination accuracy (0.01) + * @param maxiter stop and return after this many iterations if not done + * @param verbose set to zero (no prints), 1, 2 + * + * @return the new lambda for future iterations. + * Can use this and maxiter to interleave the LM descent with some other + * task, setting maxiter to something small. + */ + function solve($x, $a, $y, $s, $vary, $f, $lambda, $termepsilon, $maxiter, $verbose) { + $npts = count($y); + $nparm = count($a); + + if ($verbose > 0) { + print("solve x[".count($x)."][".count($x[0])."]"); + print(" a[".count($a)."]"); + println(" y[".count(length)."]"); + } + + $e0 = $this->chiSquared($x, $a, $y, $s, $f); + + //double lambda = 0.001; + $done = false; + + // g = gradient, H = hessian, d = step to minimum + // H d = -g, solve for d + $H = array(); + $g = array(); + + //double[] d = new double[nparm]; + + $oos2 = array(); + + for($i = 0; $i < $npts; ++$i) { + $oos2[$i] = 1./($s[$i]*$s[$i]); + } + $iter = 0; + $term = 0; // termination count test + + do { + ++$iter; + + // hessian approximation + for( $r = 0; $r < $nparm; ++$r) { + for( $c = 0; $c < $nparm; ++$c) { + for( $i = 0; $i < $npts; ++$i) { + if ($i == 0) $H[$r][$c] = 0.; + $xi = $x[$i]; + $H[$r][$c] += ($oos2[$i] * $f->grad($xi, $a, $r) * $f->grad($xi, $a, $c)); + } //npts + } //c + } //r + + // boost diagonal towards gradient descent + for( $r = 0; $r < $nparm; ++$r) + $H[$r][$r] *= (1. + $lambda); + + // gradient + for( $r = 0; $r < $nparm; ++$r) { + for( $i = 0; $i < $npts; ++$i) { + if ($i == 0) $g[$r] = 0.; + $xi = $x[$i]; + $g[$r] += ($oos2[$i] * ($y[$i]-$f->val($xi,$a)) * $f->grad($xi, $a, $r)); + } + } //npts + + // scale (for consistency with NR, not necessary) + if ($false) { + for( $r = 0; $r < $nparm; ++$r) { + $g[$r] = -0.5 * $g[$r]; + for( $c = 0; $c < $nparm; ++$c) { + $H[$r][$c] *= 0.5; + } + } + } + + // solve H d = -g, evaluate error at new location + //double[] d = DoubleMatrix.solve(H, g); +// double[] d = (new Matrix(H)).lu().solve(new Matrix(g, nparm)).getRowPackedCopy(); + //double[] na = DoubleVector.add(a, d); +// double[] na = (new Matrix(a, nparm)).plus(new Matrix(d, nparm)).getRowPackedCopy(); +// double e1 = chiSquared(x, na, y, s, f); + +// if (verbose > 0) { +// System.out.println("\n\niteration "+iter+" lambda = "+lambda); +// System.out.print("a = "); +// (new Matrix(a, nparm)).print(10, 2); +// if (verbose > 1) { +// System.out.print("H = "); +// (new Matrix(H)).print(10, 2); +// System.out.print("g = "); +// (new Matrix(g, nparm)).print(10, 2); +// System.out.print("d = "); +// (new Matrix(d, nparm)).print(10, 2); +// } +// System.out.print("e0 = " + e0 + ": "); +// System.out.print("moved from "); +// (new Matrix(a, nparm)).print(10, 2); +// System.out.print("e1 = " + e1 + ": "); +// if (e1 < e0) { +// System.out.print("to "); +// (new Matrix(na, nparm)).print(10, 2); +// } else { +// System.out.println("move rejected"); +// } +// } + + // termination test (slightly different than NR) +// if (Math.abs(e1-e0) > termepsilon) { +// term = 0; +// } else { +// term++; +// if (term == 4) { +// System.out.println("terminating after " + iter + " iterations"); +// done = true; +// } +// } +// if (iter >= maxiter) done = true; + + // in the C++ version, found that changing this to e1 >= e0 + // was not a good idea. See comment there. + // +// if (e1 > e0 || Double.isNaN(e1)) { // new location worse than before +// lambda *= 10.; +// } else { // new location better, accept new parameters +// lambda *= 0.1; +// e0 = e1; +// // simply assigning a = na will not get results copied back to caller +// for( int i = 0; i < nparm; i++ ) { +// if (vary[i]) a[i] = na[i]; +// } +// } + } while(!$done); + + return $lambda; + } // function solve() + +} // class LevenbergMarquardt diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/MagicSquareExample.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/MagicSquareExample.php new file mode 100644 index 0000000..e6c93d0 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/MagicSquareExample.php @@ -0,0 +1,182 @@ +<?php +/** +* @package JAMA +*/ + +require_once "../Matrix.php"; + +/** +* Example of use of Matrix Class, featuring magic squares. +*/ +class MagicSquareExample { + + /** + * Generate magic square test matrix. + * @param int n dimension of matrix + */ + function magic($n) { + + // Odd order + + if (($n % 2) == 1) { + $a = ($n+1)/2; + $b = ($n+1); + for ($j = 0; $j < $n; ++$j) + for ($i = 0; $i < $n; ++$i) + $M[$i][$j] = $n*(($i+$j+$a) % $n) + (($i+2*$j+$b) % $n) + 1; + + // Doubly Even Order + + } else if (($n % 4) == 0) { + for ($j = 0; $j < $n; ++$j) { + for ($i = 0; $i < $n; ++$i) { + if ((($i+1)/2)%2 == (($j+1)/2)%2) + $M[$i][$j] = $n*$n-$n*$i-$j; + else + $M[$i][$j] = $n*$i+$j+1; + } + } + + // Singly Even Order + + } else { + + $p = $n/2; + $k = ($n-2)/4; + $A = $this->magic($p); + $M = array(); + for ($j = 0; $j < $p; ++$j) { + for ($i = 0; $i < $p; ++$i) { + $aij = $A->get($i,$j); + $M[$i][$j] = $aij; + $M[$i][$j+$p] = $aij + 2*$p*$p; + $M[$i+$p][$j] = $aij + 3*$p*$p; + $M[$i+$p][$j+$p] = $aij + $p*$p; + } + } + + for ($i = 0; $i < $p; ++$i) { + for ($j = 0; $j < $k; ++$j) { + $t = $M[$i][$j]; + $M[$i][$j] = $M[$i+$p][$j]; + $M[$i+$p][$j] = $t; + } + for ($j = $n-$k+1; $j < $n; ++$j) { + $t = $M[$i][$j]; + $M[$i][$j] = $M[$i+$p][$j]; + $M[$i+$p][$j] = $t; + } + } + + $t = $M[$k][0]; $M[$k][0] = $M[$k+$p][0]; $M[$k+$p][0] = $t; + $t = $M[$k][$k]; $M[$k][$k] = $M[$k+$p][$k]; $M[$k+$p][$k] = $t; + + } + + return new Matrix($M); + + } + + /** + * Simple function to replicate PHP 5 behaviour + */ + function microtime_float() { + list($usec, $sec) = explode(" ", microtime()); + return ((float)$usec + (float)$sec); + } + + /** + * Tests LU, QR, SVD and symmetric Eig decompositions. + * + * n = order of magic square. + * trace = diagonal sum, should be the magic sum, (n^3 + n)/2. + * max_eig = maximum eigenvalue of (A + A')/2, should equal trace. + * rank = linear algebraic rank, should equal n if n is odd, + * be less than n if n is even. + * cond = L_2 condition number, ratio of singular values. + * lu_res = test of LU factorization, norm1(L*U-A(p,:))/(n*eps). + * qr_res = test of QR factorization, norm1(Q*R-A)/(n*eps). + */ + function main() { + ?> + <p>Test of Matrix Class, using magic squares.</p> + <p>See MagicSquareExample.main() for an explanation.</p> + <table border='1' cellspacing='0' cellpadding='4'> + <tr> + <th>n</th> + <th>trace</th> + <th>max_eig</th> + <th>rank</th> + <th>cond</th> + <th>lu_res</th> + <th>qr_res</th> + </tr> + <?php + $start_time = $this->microtime_float(); + $eps = pow(2.0,-52.0); + for ($n = 3; $n <= 6; ++$n) { + echo "<tr>"; + + echo "<td align='right'>$n</td>"; + + $M = $this->magic($n); + $t = (int) $M->trace(); + + echo "<td align='right'>$t</td>"; + + $O = $M->plus($M->transpose()); + $E = new EigenvalueDecomposition($O->times(0.5)); + $d = $E->getRealEigenvalues(); + + echo "<td align='right'>".$d[$n-1]."</td>"; + + $r = $M->rank(); + + echo "<td align='right'>".$r."</td>"; + + $c = $M->cond(); + + if ($c < 1/$eps) + echo "<td align='right'>".sprintf("%.3f",$c)."</td>"; + else + echo "<td align='right'>Inf</td>"; + + $LU = new LUDecomposition($M); + $L = $LU->getL(); + $U = $LU->getU(); + $p = $LU->getPivot(); + // Java version: R = L.times(U).minus(M.getMatrix(p,0,n-1)); + $S = $L->times($U); + $R = $S->minus($M->getMatrix($p,0,$n-1)); + $res = $R->norm1()/($n*$eps); + + echo "<td align='right'>".sprintf("%.3f",$res)."</td>"; + + $QR = new QRDecomposition($M); + $Q = $QR->getQ(); + $R = $QR->getR(); + $S = $Q->times($R); + $R = $S->minus($M); + $res = $R->norm1()/($n*$eps); + + echo "<td align='right'>".sprintf("%.3f",$res)."</td>"; + + echo "</tr>"; + + } + echo "<table>"; + echo "<br />"; + + $stop_time = $this->microtime_float(); + $etime = $stop_time - $start_time; + + echo "<p>Elapsed time is ". sprintf("%.4f",$etime) ." seconds.</p>"; + + } + +} + +$magic = new MagicSquareExample(); +$magic->main(); + +?> diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/Stats.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/Stats.php new file mode 100644 index 0000000..38bc4b7 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/Stats.php @@ -0,0 +1,1605 @@ +<?php +// +// +----------------------------------------------------------------------+ +// | PHP Version 4 | +// +----------------------------------------------------------------------+ +// | Copyright (c) 1997-2003 The PHP Group | +// +----------------------------------------------------------------------+ +// | This source file is subject to version 2.0 of the PHP license, | +// | that is bundled with this package in the file LICENSE, and is | +// | available at through the world-wide-web at | +// | http://www.php.net/license/2_02.txt. | +// | If you did not receive a copy of the PHP license and are unable to | +// | obtain it through the world-wide-web, please send a note to | +// | license@php.net so we can mail you a copy immediately. | +// +----------------------------------------------------------------------+ +// | Authors: Jesus M. Castagnetto <jmcastagnetto@php.net> | +// +----------------------------------------------------------------------+ +// +// $Id: Stats.php,v 1.15 2003/06/01 11:40:30 jmcastagnetto Exp $ +// + +include_once 'PEAR.php'; + +/** +* @package Math_Stats +*/ + +// Constants for defining the statistics to calculate /*{{{*/ +/** +* STATS_BASIC to generate the basic descriptive statistics +*/ +define('STATS_BASIC', 1); +/** +* STATS_FULL to generate also higher moments, mode, median, etc. +*/ +define('STATS_FULL', 2); +/*}}}*/ + +// Constants describing the data set format /*{{{*/ +/** +* STATS_DATA_SIMPLE for an array of numeric values. This is the default. +* e.g. $data = array(2,3,4,5,1,1,6); +*/ +define('STATS_DATA_SIMPLE', 0); +/** +* STATS_DATA_CUMMULATIVE for an associative array of frequency values, +* where in each array entry, the index is the data point and the +* value the count (frequency): +* e.g. $data = array(3=>4, 2.3=>5, 1.25=>6, 0.5=>3) +*/ +define('STATS_DATA_CUMMULATIVE', 1); +/*}}}*/ + +// Constants defining how to handle nulls /*{{{*/ +/** +* STATS_REJECT_NULL, reject data sets with null values. This is the default. +* Any non-numeric value is considered a null in this context. +*/ +define('STATS_REJECT_NULL', -1); +/** +* STATS_IGNORE_NULL, ignore null values and prune them from the data. +* Any non-numeric value is considered a null in this context. +*/ +define('STATS_IGNORE_NULL', -2); +/** +* STATS_USE_NULL_AS_ZERO, assign the value of 0 (zero) to null values. +* Any non-numeric value is considered a null in this context. +*/ +define('STATS_USE_NULL_AS_ZERO', -3); +/*}}}*/ + +/** +* A class to calculate descriptive statistics from a data set. +* Data sets can be simple arrays of data, or a cummulative hash. +* The second form is useful when passing large data set, +* for example the data set: +* +* <pre> +* $data1 = array (1,2,1,1,1,1,3,3,4.1,3,2,2,4.1,1,1,2,3,3,2,2,1,1,2,2); +* </pre> +* +* can be epxressed more compactly as: +* +* <pre> +* $data2 = array('1'=>9, '2'=>8, '3'=>5, '4.1'=>2); +* </pre> +* +* Example of use: +* +* <pre> +* include_once 'Math/Stats.php'; +* $s = new Math_Stats(); +* $s->setData($data1); +* // or +* // $s->setData($data2, STATS_DATA_CUMMULATIVE); +* $stats = $s->calcBasic(); +* echo 'Mean: '.$stats['mean'].' StDev: '.$stats['stdev'].' <br />\n'; +* +* // using data with nulls +* // first ignoring them: +* $data3 = array(1.2, 'foo', 2.4, 3.1, 4.2, 3.2, null, 5.1, 6.2); +* $s->setNullOption(STATS_IGNORE_NULL); +* $s->setData($data3); +* $stats3 = $s->calcFull(); +* +* // and then assuming nulls == 0 +* $s->setNullOption(STATS_USE_NULL_AS_ZERO); +* $s->setData($data3); +* $stats3 = $s->calcFull(); +* </pre> +* +* Originally this class was part of NumPHP (Numeric PHP package) +* +* @author Jesus M. Castagnetto <jmcastagnetto@php.net> +* @version 0.8 +* @access public +* @package Math_Stats +*/ +class Base {/*{{{*/ + // properties /*{{{*/ + + /** + * The simple or cummulative data set. + * Null by default. + * + * @access private + * @var array + */ + public $_data = null; + + /** + * Expanded data set. Only set when cummulative data + * is being used. Null by default. + * + * @access private + * @var array + */ + public $_dataExpanded = null; + + /** + * Flag for data type, one of STATS_DATA_SIMPLE or + * STATS_DATA_CUMMULATIVE. Null by default. + * + * @access private + * @var int + */ + public $_dataOption = null; + + /** + * Flag for null handling options. One of STATS_REJECT_NULL, + * STATS_IGNORE_NULL or STATS_USE_NULL_AS_ZERO + * + * @access private + * @var int + */ + public $_nullOption; + + /** + * Array for caching result values, should be reset + * when using setData() + * + * @access private + * @var array + */ + public $_calculatedValues = array(); + + /*}}}*/ + + /** + * Constructor for the class + * + * @access public + * @param optional int $nullOption how to handle null values + * @return object Math_Stats + */ + function Math_Stats($nullOption=STATS_REJECT_NULL) {/*{{{*/ + $this->_nullOption = $nullOption; + }/*}}}*/ + + /** + * Sets and verifies the data, checking for nulls and using + * the current null handling option + * + * @access public + * @param array $arr the data set + * @param optional int $opt data format: STATS_DATA_CUMMULATIVE or STATS_DATA_SIMPLE (default) + * @return mixed true on success, a PEAR_Error object otherwise + */ + function setData($arr, $opt=STATS_DATA_SIMPLE) {/*{{{*/ + if (!is_array($arr)) { + return PEAR::raiseError('invalid data, an array of numeric data was expected'); + } + $this->_data = null; + $this->_dataExpanded = null; + $this->_dataOption = null; + $this->_calculatedValues = array(); + if ($opt == STATS_DATA_SIMPLE) { + $this->_dataOption = $opt; + $this->_data = array_values($arr); + } else if ($opt == STATS_DATA_CUMMULATIVE) { + $this->_dataOption = $opt; + $this->_data = $arr; + $this->_dataExpanded = array(); + } + return $this->_validate(); + }/*}}}*/ + + /** + * Returns the data which might have been modified + * according to the current null handling options. + * + * @access public + * @param boolean $expanded whether to return a expanded list, default is false + * @return mixed array of data on success, a PEAR_Error object otherwise + * @see _validate() + */ + function getData($expanded=false) {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + if ($this->_dataOption == STATS_DATA_CUMMULATIVE && $expanded) { + return $this->_dataExpanded; + } else { + return $this->_data; + } + }/*}}}*/ + + /** + * Sets the null handling option. + * Must be called before assigning a new data set containing null values + * + * @access public + * @return mixed true on success, a PEAR_Error object otherwise + * @see _validate() + */ + function setNullOption($nullOption) {/*{{{*/ + if ($nullOption == STATS_REJECT_NULL + || $nullOption == STATS_IGNORE_NULL + || $nullOption == STATS_USE_NULL_AS_ZERO) { + $this->_nullOption = $nullOption; + return true; + } else { + return PEAR::raiseError('invalid null handling option expecting: '. + 'STATS_REJECT_NULL, STATS_IGNORE_NULL or STATS_USE_NULL_AS_ZERO'); + } + }/*}}}*/ + + /** + * Transforms the data by substracting each entry from the mean and + * dividing by its standard deviation. This will reset all pre-calculated + * values to their original (unset) defaults. + * + * @access public + * @return mixed true on success, a PEAR_Error object otherwise + * @see mean() + * @see stDev() + * @see setData() + */ + function studentize() {/*{{{*/ + $mean = $this->mean(); + if (PEAR::isError($mean)) { + return $mean; + } + $std = $this->stDev(); + if (PEAR::isError($std)) { + return $std; + } + if ($std == 0) { + return PEAR::raiseError('cannot studentize data, standard deviation is zero.'); + } + $arr = array(); + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + foreach ($this->_data as $val=>$freq) { + $newval = ($val - $mean) / $std; + $arr["$newval"] = $freq; + } + } else { + foreach ($this->_data as $val) { + $newval = ($val - $mean) / $std; + $arr[] = $newval; + } + } + return $this->setData($arr, $this->_dataOption); + }/*}}}*/ + + /** + * Transforms the data by substracting each entry from the mean. + * This will reset all pre-calculated values to their original (unset) defaults. + * + * @access public + * @return mixed true on success, a PEAR_Error object otherwise + * @see mean() + * @see setData() + */ + function center() {/*{{{*/ + $mean = $this->mean(); + if (PEAR::isError($mean)) { + return $mean; + } + $arr = array(); + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + foreach ($this->_data as $val=>$freq) { + $newval = $val - $mean; + $arr["$newval"] = $freq; + } + } else { + foreach ($this->_data as $val) { + $newval = $val - $mean; + $arr[] = $newval; + } + } + return $this->setData($arr, $this->_dataOption); + }/*}}}*/ + + /** + * Calculates the basic or full statistics for the data set + * + * @access public + * @param int $mode one of STATS_BASIC or STATS_FULL + * @param boolean $returnErrorObject whether the raw PEAR_Error (when true, default), + * or only the error message will be returned (when false), if an error happens. + * @return mixed an associative array of statistics on success, a PEAR_Error object otherwise + * @see calcBasic() + * @see calcFull() + */ + function calc($mode, $returnErrorObject=true) {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + if ($mode == STATS_BASIC) { + return $this->calcBasic($returnErrorObject); + } elseif ($mode == STATS_FULL) { + return $this->calcFull($returnErrorObject); + } else { + return PEAR::raiseError('incorrect mode, expected STATS_BASIC or STATS_FULL'); + } + }/*}}}*/ + + /** + * Calculates a basic set of statistics + * + * @access public + * @param boolean $returnErrorObject whether the raw PEAR_Error (when true, default), + * or only the error message will be returned (when false), if an error happens. + * @return mixed an associative array of statistics on success, a PEAR_Error object otherwise + * @see calc() + * @see calcFull() + */ + function calcBasic($returnErrorObject=true) {/*{{{*/ + return array ( + 'min' => $this->__format($this->min(), $returnErrorObject), + 'max' => $this->__format($this->max(), $returnErrorObject), + 'sum' => $this->__format($this->sum(), $returnErrorObject), + 'sum2' => $this->__format($this->sum2(), $returnErrorObject), + 'count' => $this->__format($this->count(), $returnErrorObject), + 'mean' => $this->__format($this->mean(), $returnErrorObject), + 'stdev' => $this->__format($this->stDev(), $returnErrorObject), + 'variance' => $this->__format($this->variance(), $returnErrorObject), + 'range' => $this->__format($this->range(), $returnErrorObject) + ); + }/*}}}*/ + + /** + * Calculates a full set of statistics + * + * @access public + * @param boolean $returnErrorObject whether the raw PEAR_Error (when true, default), + * or only the error message will be returned (when false), if an error happens. + * @return mixed an associative array of statistics on success, a PEAR_Error object otherwise + * @see calc() + * @see calcBasic() + */ + function calcFull($returnErrorObject=true) {/*{{{*/ + return array ( + 'min' => $this->__format($this->min(), $returnErrorObject), + 'max' => $this->__format($this->max(), $returnErrorObject), + 'sum' => $this->__format($this->sum(), $returnErrorObject), + 'sum2' => $this->__format($this->sum2(), $returnErrorObject), + 'count' => $this->__format($this->count(), $returnErrorObject), + 'mean' => $this->__format($this->mean(), $returnErrorObject), + 'median' => $this->__format($this->median(), $returnErrorObject), + 'mode' => $this->__format($this->mode(), $returnErrorObject), + 'midrange' => $this->__format($this->midrange(), $returnErrorObject), + 'geometric_mean' => $this->__format($this->geometricMean(), $returnErrorObject), + 'harmonic_mean' => $this->__format($this->harmonicMean(), $returnErrorObject), + 'stdev' => $this->__format($this->stDev(), $returnErrorObject), + 'absdev' => $this->__format($this->absDev(), $returnErrorObject), + 'variance' => $this->__format($this->variance(), $returnErrorObject), + 'range' => $this->__format($this->range(), $returnErrorObject), + 'std_error_of_mean' => $this->__format($this->stdErrorOfMean(), $returnErrorObject), + 'skewness' => $this->__format($this->skewness(), $returnErrorObject), + 'kurtosis' => $this->__format($this->kurtosis(), $returnErrorObject), + 'coeff_of_variation' => $this->__format($this->coeffOfVariation(), $returnErrorObject), + 'sample_central_moments' => array ( + 1 => $this->__format($this->sampleCentralMoment(1), $returnErrorObject), + 2 => $this->__format($this->sampleCentralMoment(2), $returnErrorObject), + 3 => $this->__format($this->sampleCentralMoment(3), $returnErrorObject), + 4 => $this->__format($this->sampleCentralMoment(4), $returnErrorObject), + 5 => $this->__format($this->sampleCentralMoment(5), $returnErrorObject) + ), + 'sample_raw_moments' => array ( + 1 => $this->__format($this->sampleRawMoment(1), $returnErrorObject), + 2 => $this->__format($this->sampleRawMoment(2), $returnErrorObject), + 3 => $this->__format($this->sampleRawMoment(3), $returnErrorObject), + 4 => $this->__format($this->sampleRawMoment(4), $returnErrorObject), + 5 => $this->__format($this->sampleRawMoment(5), $returnErrorObject) + ), + 'frequency' => $this->__format($this->frequency(), $returnErrorObject), + 'quartiles' => $this->__format($this->quartiles(), $returnErrorObject), + 'interquartile_range' => $this->__format($this->interquartileRange(), $returnErrorObject), + 'interquartile_mean' => $this->__format($this->interquartileMean(), $returnErrorObject), + 'quartile_deviation' => $this->__format($this->quartileDeviation(), $returnErrorObject), + 'quartile_variation_coefficient' => $this->__format($this->quartileVariationCoefficient(), $returnErrorObject), + 'quartile_skewness_coefficient' => $this->__format($this->quartileSkewnessCoefficient(), $returnErrorObject) + ); + }/*}}}*/ + + /** + * Calculates the minimum of a data set. + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the minimum value on success, a PEAR_Error object otherwise + * @see calc() + * @see max() + */ + function min() {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + if (!array_key_exists('min', $this->_calculatedValues)) { + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + $min = min(array_keys($this->_data)); + } else { + $min = min($this->_data); + } + $this->_calculatedValues['min'] = $min; + } + return $this->_calculatedValues['min']; + }/*}}}*/ + + /** + * Calculates the maximum of a data set. + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the maximum value on success, a PEAR_Error object otherwise + * @see calc() + * @see min() + */ + function max() {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + if (!array_key_exists('max', $this->_calculatedValues)) { + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + $max = max(array_keys($this->_data)); + } else { + $max = max($this->_data); + } + $this->_calculatedValues['max'] = $max; + } + return $this->_calculatedValues['max']; + }/*}}}*/ + + /** + * Calculates SUM { xi } + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the sum on success, a PEAR_Error object otherwise + * @see calc() + * @see sum2() + * @see sumN() + */ + function sum() {/*{{{*/ + if (!array_key_exists('sum', $this->_calculatedValues)) { + $sum = $this->sumN(1); + if (PEAR::isError($sum)) { + return $sum; + } else { + $this->_calculatedValues['sum'] = $sum; + } + } + return $this->_calculatedValues['sum']; + }/*}}}*/ + + /** + * Calculates SUM { (xi)^2 } + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the sum on success, a PEAR_Error object otherwise + * @see calc() + * @see sum() + * @see sumN() + */ + function sum2() {/*{{{*/ + if (!array_key_exists('sum2', $this->_calculatedValues)) { + $sum2 = $this->sumN(2); + if (PEAR::isError($sum2)) { + return $sum2; + } else { + $this->_calculatedValues['sum2'] = $sum2; + } + } + return $this->_calculatedValues['sum2']; + }/*}}}*/ + + /** + * Calculates SUM { (xi)^n } + * Handles cummulative data sets correctly + * + * @access public + * @param numeric $n the exponent + * @return mixed the sum on success, a PEAR_Error object otherwise + * @see calc() + * @see sum() + * @see sum2() + */ + function sumN($n) {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + $sumN = 0; + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + foreach($this->_data as $val=>$freq) { + $sumN += $freq * pow((double)$val, (double)$n); + } + } else { + foreach($this->_data as $val) { + $sumN += pow((double)$val, (double)$n); + } + } + return $sumN; + }/*}}}*/ + + /** + * Calculates PROD { (xi) }, (the product of all observations) + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the product on success, a PEAR_Error object otherwise + * @see productN() + */ + function product() {/*{{{*/ + if (!array_key_exists('product', $this->_calculatedValues)) { + $product = $this->productN(1); + if (PEAR::isError($product)) { + return $product; + } else { + $this->_calculatedValues['product'] = $product; + } + } + return $this->_calculatedValues['product']; + }/*}}}*/ + + /** + * Calculates PROD { (xi)^n }, which is the product of all observations + * Handles cummulative data sets correctly + * + * @access public + * @param numeric $n the exponent + * @return mixed the product on success, a PEAR_Error object otherwise + * @see product() + */ + function productN($n) {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + $prodN = 1.0; + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + foreach($this->_data as $val=>$freq) { + if ($val == 0) { + return 0.0; + } + $prodN *= $freq * pow((double)$val, (double)$n); + } + } else { + foreach($this->_data as $val) { + if ($val == 0) { + return 0.0; + } + $prodN *= pow((double)$val, (double)$n); + } + } + return $prodN; + + }/*}}}*/ + + /** + * Calculates the number of data points in the set + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the count on success, a PEAR_Error object otherwise + * @see calc() + */ + function count() {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + if (!array_key_exists('count', $this->_calculatedValues)) { + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + $count = count($this->_dataExpanded); + } else { + $count = count($this->_data); + } + $this->_calculatedValues['count'] = $count; + } + return $this->_calculatedValues['count']; + }/*}}}*/ + + /** + * Calculates the mean (average) of the data points in the set + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the mean value on success, a PEAR_Error object otherwise + * @see calc() + * @see sum() + * @see count() + */ + function mean() {/*{{{*/ + if (!array_key_exists('mean', $this->_calculatedValues)) { + $sum = $this->sum(); + if (PEAR::isError($sum)) { + return $sum; + } + $count = $this->count(); + if (PEAR::isError($count)) { + return $count; + } + $this->_calculatedValues['mean'] = $sum / $count; + } + return $this->_calculatedValues['mean']; + }/*}}}*/ + + /** + * Calculates the range of the data set = max - min + * + * @access public + * @return mixed the value of the range on success, a PEAR_Error object otherwise. + */ + function range() {/*{{{*/ + if (!array_key_exists('range', $this->_calculatedValues)) { + $min = $this->min(); + if (PEAR::isError($min)) { + return $min; + } + $max = $this->max(); + if (PEAR::isError($max)) { + return $max; + } + $this->_calculatedValues['range'] = $max - $min; + } + return $this->_calculatedValues['range']; + + }/*}}}*/ + + /** + * Calculates the variance (unbiased) of the data points in the set + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the variance value on success, a PEAR_Error object otherwise + * @see calc() + * @see __sumdiff() + * @see count() + */ + function variance() {/*{{{*/ + if (!array_key_exists('variance', $this->_calculatedValues)) { + $variance = $this->__calcVariance(); + if (PEAR::isError($variance)) { + return $variance; + } + $this->_calculatedValues['variance'] = $variance; + } + return $this->_calculatedValues['variance']; + }/*}}}*/ + + /** + * Calculates the standard deviation (unbiased) of the data points in the set + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the standard deviation on success, a PEAR_Error object otherwise + * @see calc() + * @see variance() + */ + function stDev() {/*{{{*/ + if (!array_key_exists('stDev', $this->_calculatedValues)) { + $variance = $this->variance(); + if (PEAR::isError($variance)) { + return $variance; + } + $this->_calculatedValues['stDev'] = sqrt($variance); + } + return $this->_calculatedValues['stDev']; + }/*}}}*/ + + /** + * Calculates the variance (unbiased) of the data points in the set + * given a fixed mean (average) value. Not used in calcBasic(), calcFull() + * or calc(). + * Handles cummulative data sets correctly + * + * @access public + * @param numeric $mean the fixed mean value + * @return mixed the variance on success, a PEAR_Error object otherwise + * @see __sumdiff() + * @see count() + * @see variance() + */ + function varianceWithMean($mean) {/*{{{*/ + return $this->__calcVariance($mean); + }/*}}}*/ + + /** + * Calculates the standard deviation (unbiased) of the data points in the set + * given a fixed mean (average) value. Not used in calcBasic(), calcFull() + * or calc(). + * Handles cummulative data sets correctly + * + * @access public + * @param numeric $mean the fixed mean value + * @return mixed the standard deviation on success, a PEAR_Error object otherwise + * @see varianceWithMean() + * @see stDev() + */ + function stDevWithMean($mean) {/*{{{*/ + $varianceWM = $this->varianceWithMean($mean); + if (PEAR::isError($varianceWM)) { + return $varianceWM; + } + return sqrt($varianceWM); + }/*}}}*/ + + /** + * Calculates the absolute deviation of the data points in the set + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the absolute deviation on success, a PEAR_Error object otherwise + * @see calc() + * @see __sumabsdev() + * @see count() + * @see absDevWithMean() + */ + function absDev() {/*{{{*/ + if (!array_key_exists('absDev', $this->_calculatedValues)) { + $absDev = $this->__calcAbsoluteDeviation(); + if (PEAR::isError($absdev)) { + return $absdev; + } + $this->_calculatedValues['absDev'] = $absDev; + } + return $this->_calculatedValues['absDev']; + }/*}}}*/ + + /** + * Calculates the absolute deviation of the data points in the set + * given a fixed mean (average) value. Not used in calcBasic(), calcFull() + * or calc(). + * Handles cummulative data sets correctly + * + * @access public + * @param numeric $mean the fixed mean value + * @return mixed the absolute deviation on success, a PEAR_Error object otherwise + * @see __sumabsdev() + * @see absDev() + */ + function absDevWithMean($mean) {/*{{{*/ + return $this->__calcAbsoluteDeviation($mean); + }/*}}}*/ + + /** + * Calculates the skewness of the data distribution in the set + * The skewness measures the degree of asymmetry of a distribution, + * and is related to the third central moment of a distribution. + * A normal distribution has a skewness = 0 + * A distribution with a tail off towards the high end of the scale + * (positive skew) has a skewness > 0 + * A distribution with a tail off towards the low end of the scale + * (negative skew) has a skewness < 0 + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the skewness value on success, a PEAR_Error object otherwise + * @see __sumdiff() + * @see count() + * @see stDev() + * @see calc() + */ + function skewness() {/*{{{*/ + if (!array_key_exists('skewness', $this->_calculatedValues)) { + $count = $this->count(); + if (PEAR::isError($count)) { + return $count; + } + $stDev = $this->stDev(); + if (PEAR::isError($stDev)) { + return $stDev; + } + $sumdiff3 = $this->__sumdiff(3); + if (PEAR::isError($sumdiff3)) { + return $sumdiff3; + } + $this->_calculatedValues['skewness'] = ($sumdiff3 / ($count * pow($stDev, 3))); + } + return $this->_calculatedValues['skewness']; + }/*}}}*/ + + /** + * Calculates the kurtosis of the data distribution in the set + * The kurtosis measures the degrees of peakedness of a distribution. + * It is also called the "excess" or "excess coefficient", and is + * a normalized form of the fourth central moment of a distribution. + * A normal distributions has kurtosis = 0 + * A narrow and peaked (leptokurtic) distribution has a + * kurtosis > 0 + * A flat and wide (platykurtic) distribution has a kurtosis < 0 + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the kurtosis value on success, a PEAR_Error object otherwise + * @see __sumdiff() + * @see count() + * @see stDev() + * @see calc() + */ + function kurtosis() {/*{{{*/ + if (!array_key_exists('kurtosis', $this->_calculatedValues)) { + $count = $this->count(); + if (PEAR::isError($count)) { + return $count; + } + $stDev = $this->stDev(); + if (PEAR::isError($stDev)) { + return $stDev; + } + $sumdiff4 = $this->__sumdiff(4); + if (PEAR::isError($sumdiff4)) { + return $sumdiff4; + } + $this->_calculatedValues['kurtosis'] = ($sumdiff4 / ($count * pow($stDev, 4))) - 3; + } + return $this->_calculatedValues['kurtosis']; + }/*}}}*/ + + /** + * Calculates the median of a data set. + * The median is the value such that half of the points are below it + * in a sorted data set. + * If the number of values is odd, it is the middle item. + * If the number of values is even, is the average of the two middle items. + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the median value on success, a PEAR_Error object otherwise + * @see count() + * @see calc() + */ + function median() {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + if (!array_key_exists('median', $this->_calculatedValues)) { + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + $arr =& $this->_dataExpanded; + } else { + $arr =& $this->_data; + } + $n = $this->count(); + if (PEAR::isError($n)) { + return $n; + } + $h = intval($n / 2); + if ($n % 2 == 0) { + $median = ($arr[$h] + $arr[$h - 1]) / 2; + } else { + $median = $arr[$h + 1]; + } + $this->_calculatedValues['median'] = $median; + } + return $this->_calculatedValues['median']; + }/*}}}*/ + + /** + * Calculates the mode of a data set. + * The mode is the value with the highest frequency in the data set. + * There can be more than one mode. + * Handles cummulative data sets correctly + * + * @access public + * @return mixed an array of mode value on success, a PEAR_Error object otherwise + * @see frequency() + * @see calc() + */ + function mode() {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + if (!array_key_exists('mode', $this->_calculatedValues)) { + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + $arr = $this->_data; + } else { + $arr = $this->frequency(); + } + arsort($arr); + $mcount = 1; + foreach ($arr as $val=>$freq) { + if ($mcount == 1) { + $mode = array($val); + $mfreq = $freq; + ++$mcount; + continue; + } + if ($mfreq == $freq) + $mode[] = $val; + if ($mfreq > $freq) + break; + } + $this->_calculatedValues['mode'] = $mode; + } + return $this->_calculatedValues['mode']; + }/*}}}*/ + + /** + * Calculates the midrange of a data set. + * The midrange is the average of the minimum and maximum of the data set. + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the midrange value on success, a PEAR_Error object otherwise + * @see min() + * @see max() + * @see calc() + */ + function midrange() {/*{{{*/ + if (!array_key_exists('midrange', $this->_calculatedValues)) { + $min = $this->min(); + if (PEAR::isError($min)) { + return $min; + } + $max = $this->max(); + if (PEAR::isError($max)) { + return $max; + } + $this->_calculatedValues['midrange'] = (($max + $min) / 2); + } + return $this->_calculatedValues['midrange']; + }/*}}}*/ + + /** + * Calculates the geometrical mean of the data points in the set + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the geometrical mean value on success, a PEAR_Error object otherwise + * @see calc() + * @see product() + * @see count() + */ + function geometricMean() {/*{{{*/ + if (!array_key_exists('geometricMean', $this->_calculatedValues)) { + $count = $this->count(); + if (PEAR::isError($count)) { + return $count; + } + $prod = $this->product(); + if (PEAR::isError($prod)) { + return $prod; + } + if ($prod == 0.0) { + return 0.0; + } + if ($prod < 0) { + return PEAR::raiseError('The product of the data set is negative, geometric mean undefined.'); + } + $this->_calculatedValues['geometricMean'] = pow($prod , 1 / $count); + } + return $this->_calculatedValues['geometricMean']; + }/*}}}*/ + + /** + * Calculates the harmonic mean of the data points in the set + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the harmonic mean value on success, a PEAR_Error object otherwise + * @see calc() + * @see count() + */ + function harmonicMean() {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + if (!array_key_exists('harmonicMean', $this->_calculatedValues)) { + $count = $this->count(); + if (PEAR::isError($count)) { + return $count; + } + $invsum = 0.0; + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + foreach($this->_data as $val=>$freq) { + if ($val == 0) { + return PEAR::raiseError('cannot calculate a '. + 'harmonic mean with data values of zero.'); + } + $invsum += $freq / $val; + } + } else { + foreach($this->_data as $val) { + if ($val == 0) { + return PEAR::raiseError('cannot calculate a '. + 'harmonic mean with data values of zero.'); + } + $invsum += 1 / $val; + } + } + $this->_calculatedValues['harmonicMean'] = $count / $invsum; + } + return $this->_calculatedValues['harmonicMean']; + }/*}}}*/ + + /** + * Calculates the nth central moment (m{n}) of a data set. + * + * The definition of a sample central moment is: + * + * m{n} = 1/N * SUM { (xi - avg)^n } + * + * where: N = sample size, avg = sample mean. + * + * @access public + * @param integer $n moment to calculate + * @return mixed the numeric value of the moment on success, PEAR_Error otherwise + */ + function sampleCentralMoment($n) {/*{{{*/ + if (!is_int($n) || $n < 1) { + return PEAR::isError('moment must be a positive integer >= 1.'); + } + + if ($n == 1) { + return 0; + } + $count = $this->count(); + if (PEAR::isError($count)) { + return $count; + } + if ($count == 0) { + return PEAR::raiseError("Cannot calculate {$n}th sample moment, ". + 'there are zero data entries'); + } + $sum = $this->__sumdiff($n); + if (PEAR::isError($sum)) { + return $sum; + } + return ($sum / $count); + }/*}}}*/ + + /** + * Calculates the nth raw moment (m{n}) of a data set. + * + * The definition of a sample central moment is: + * + * m{n} = 1/N * SUM { xi^n } + * + * where: N = sample size, avg = sample mean. + * + * @access public + * @param integer $n moment to calculate + * @return mixed the numeric value of the moment on success, PEAR_Error otherwise + */ + function sampleRawMoment($n) {/*{{{*/ + if (!is_int($n) || $n < 1) { + return PEAR::isError('moment must be a positive integer >= 1.'); + } + + $count = $this->count(); + if (PEAR::isError($count)) { + return $count; + } + if ($count == 0) { + return PEAR::raiseError("Cannot calculate {$n}th raw moment, ". + 'there are zero data entries.'); + } + $sum = $this->sumN($n); + if (PEAR::isError($sum)) { + return $sum; + } + return ($sum / $count); + }/*}}}*/ + + + /** + * Calculates the coefficient of variation of a data set. + * The coefficient of variation measures the spread of a set of data + * as a proportion of its mean. It is often expressed as a percentage. + * Handles cummulative data sets correctly + * + * @access public + * @return mixed the coefficient of variation on success, a PEAR_Error object otherwise + * @see stDev() + * @see mean() + * @see calc() + */ + function coeffOfVariation() {/*{{{*/ + if (!array_key_exists('coeffOfVariation', $this->_calculatedValues)) { + $mean = $this->mean(); + if (PEAR::isError($mean)) { + return $mean; + } + if ($mean == 0.0) { + return PEAR::raiseError('cannot calculate the coefficient '. + 'of variation, mean of sample is zero'); + } + $stDev = $this->stDev(); + if (PEAR::isError($stDev)) { + return $stDev; + } + + $this->_calculatedValues['coeffOfVariation'] = $stDev / $mean; + } + return $this->_calculatedValues['coeffOfVariation']; + }/*}}}*/ + + /** + * Calculates the standard error of the mean. + * It is the standard deviation of the sampling distribution of + * the mean. The formula is: + * + * S.E. Mean = SD / (N)^(1/2) + * + * This formula does not assume a normal distribution, and shows + * that the size of the standard error of the mean is inversely + * proportional to the square root of the sample size. + * + * @access public + * @return mixed the standard error of the mean on success, a PEAR_Error object otherwise + * @see stDev() + * @see count() + * @see calc() + */ + function stdErrorOfMean() {/*{{{*/ + if (!array_key_exists('stdErrorOfMean', $this->_calculatedValues)) { + $count = $this->count(); + if (PEAR::isError($count)) { + return $count; + } + $stDev = $this->stDev(); + if (PEAR::isError($stDev)) { + return $stDev; + } + $this->_calculatedValues['stdErrorOfMean'] = $stDev / sqrt($count); + } + return $this->_calculatedValues['stdErrorOfMean']; + }/*}}}*/ + + /** + * Calculates the value frequency table of a data set. + * Handles cummulative data sets correctly + * + * @access public + * @return mixed an associative array of value=>frequency items on success, a PEAR_Error object otherwise + * @see min() + * @see max() + * @see calc() + */ + function frequency() {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + if (!array_key_exists('frequency', $this->_calculatedValues)) { + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + $freq = $this->_data; + } else { + $freq = array(); + foreach ($this->_data as $val) { + $freq["$val"]++; + } + ksort($freq); + } + $this->_calculatedValues['frequency'] = $freq; + } + return $this->_calculatedValues['frequency']; + }/*}}}*/ + + /** + * The quartiles are defined as the values that divide a sorted + * data set into four equal-sized subsets, and correspond to the + * 25th, 50th, and 75th percentiles. + * + * @access public + * @return mixed an associative array of quartiles on success, a PEAR_Error otherwise + * @see percentile() + */ + function quartiles() {/*{{{*/ + if (!array_key_exists('quartiles', $this->_calculatedValues)) { + $q1 = $this->percentile(25); + if (PEAR::isError($q1)) { + return $q1; + } + $q2 = $this->percentile(50); + if (PEAR::isError($q2)) { + return $q2; + } + $q3 = $this->percentile(75); + if (PEAR::isError($q3)) { + return $q3; + } + $this->_calculatedValues['quartiles'] = array ( + '25' => $q1, + '50' => $q2, + '75' => $q3 + ); + } + return $this->_calculatedValues['quartiles']; + }/*}}}*/ + + /** + * The interquartile mean is defined as the mean of the values left + * after discarding the lower 25% and top 25% ranked values, i.e.: + * + * interquart mean = mean(<P(25),P(75)>) + * + * where: P = percentile + * + * @todo need to double check the equation + * @access public + * @return mixed a numeric value on success, a PEAR_Error otherwise + * @see quartiles() + */ + function interquartileMean() {/*{{{*/ + if (!array_key_exists('interquartileMean', $this->_calculatedValues)) { + $quart = $this->quartiles(); + if (PEAR::isError($quart)) { + return $quart; + } + $q3 = $quart['75']; + $q1 = $quart['25']; + $sum = 0; + $n = 0; + foreach ($this->getData(true) as $val) { + if ($val >= $q1 && $val <= $q3) { + $sum += $val; + ++$n; + } + } + if ($n == 0) { + return PEAR::raiseError('error calculating interquartile mean, '. + 'empty interquartile range of values.'); + } + $this->_calculatedValues['interquartileMean'] = $sum / $n; + } + return $this->_calculatedValues['interquartileMean']; + }/*}}}*/ + + /** + * The interquartile range is the distance between the 75th and 25th + * percentiles. Basically the range of the middle 50% of the data set, + * and thus is not affected by outliers or extreme values. + * + * interquart range = P(75) - P(25) + * + * where: P = percentile + * + * @access public + * @return mixed a numeric value on success, a PEAR_Error otherwise + * @see quartiles() + */ + function interquartileRange() {/*{{{*/ + if (!array_key_exists('interquartileRange', $this->_calculatedValues)) { + $quart = $this->quartiles(); + if (PEAR::isError($quart)) { + return $quart; + } + $q3 = $quart['75']; + $q1 = $quart['25']; + $this->_calculatedValues['interquartileRange'] = $q3 - $q1; + } + return $this->_calculatedValues['interquartileRange']; + }/*}}}*/ + + /** + * The quartile deviation is half of the interquartile range value + * + * quart dev = (P(75) - P(25)) / 2 + * + * where: P = percentile + * + * @access public + * @return mixed a numeric value on success, a PEAR_Error otherwise + * @see quartiles() + * @see interquartileRange() + */ + function quartileDeviation() {/*{{{*/ + if (!array_key_exists('quartileDeviation', $this->_calculatedValues)) { + $iqr = $this->interquartileRange(); + if (PEAR::isError($iqr)) { + return $iqr; + } + $this->_calculatedValues['quartileDeviation'] = $iqr / 2; + } + return $this->_calculatedValues['quartileDeviation']; + }/*}}}*/ + + /** + * The quartile variation coefficient is defines as follows: + * + * quart var coeff = 100 * (P(75) - P(25)) / (P(75) + P(25)) + * + * where: P = percentile + * + * @todo need to double check the equation + * @access public + * @return mixed a numeric value on success, a PEAR_Error otherwise + * @see quartiles() + */ + function quartileVariationCoefficient() {/*{{{*/ + if (!array_key_exists('quartileVariationCoefficient', $this->_calculatedValues)) { + $quart = $this->quartiles(); + if (PEAR::isError($quart)) { + return $quart; + } + $q3 = $quart['75']; + $q1 = $quart['25']; + $d = $q3 - $q1; + $s = $q3 + $q1; + $this->_calculatedValues['quartileVariationCoefficient'] = 100 * $d / $s; + } + return $this->_calculatedValues['quartileVariationCoefficient']; + }/*}}}*/ + + /** + * The quartile skewness coefficient (also known as Bowley Skewness), + * is defined as follows: + * + * quart skewness coeff = (P(25) - 2*P(50) + P(75)) / (P(75) - P(25)) + * + * where: P = percentile + * + * @todo need to double check the equation + * @access public + * @return mixed a numeric value on success, a PEAR_Error otherwise + * @see quartiles() + */ + function quartileSkewnessCoefficient() {/*{{{*/ + if (!array_key_exists('quartileSkewnessCoefficient', $this->_calculatedValues)) { + $quart = $this->quartiles(); + if (PEAR::isError($quart)) { + return $quart; + } + $q3 = $quart['75']; + $q2 = $quart['50']; + $q1 = $quart['25']; + $d = $q3 - 2*$q2 + $q1; + $s = $q3 - $q1; + $this->_calculatedValues['quartileSkewnessCoefficient'] = $d / $s; + } + return $this->_calculatedValues['quartileSkewnessCoefficient']; + }/*}}}*/ + + /** + * The pth percentile is the value such that p% of the a sorted data set + * is smaller than it, and (100 - p)% of the data is larger. + * + * A quick algorithm to pick the appropriate value from a sorted data + * set is as follows: + * + * - Count the number of values: n + * - Calculate the position of the value in the data list: i = p * (n + 1) + * - if i is an integer, return the data at that position + * - if i < 1, return the minimum of the data set + * - if i > n, return the maximum of the data set + * - otherwise, average the entries at adjacent positions to i + * + * The median is the 50th percentile value. + * + * @todo need to double check generality of the algorithm + * + * @access public + * @param numeric $p the percentile to estimate, e.g. 25 for 25th percentile + * @return mixed a numeric value on success, a PEAR_Error otherwise + * @see quartiles() + * @see median() + */ + function percentile($p) {/*{{{*/ + $count = $this->count(); + if (PEAR::isError($count)) { + return $count; + } + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + $data =& $this->_dataExpanded; + } else { + $data =& $this->_data; + } + $obsidx = $p * ($count + 1) / 100; + if (intval($obsidx) == $obsidx) { + return $data[($obsidx - 1)]; + } elseif ($obsidx < 1) { + return $data[0]; + } elseif ($obsidx > $count) { + return $data[($count - 1)]; + } else { + $left = floor($obsidx - 1); + $right = ceil($obsidx - 1); + return ($data[$left] + $data[$right]) / 2; + } + }/*}}}*/ + + // private methods + + /** + * Utility function to calculate: SUM { (xi - mean)^n } + * + * @access private + * @param numeric $power the exponent + * @param optional double $mean the data set mean value + * @return mixed the sum on success, a PEAR_Error object otherwise + * + * @see stDev() + * @see variaceWithMean(); + * @see skewness(); + * @see kurtosis(); + */ + function __sumdiff($power, $mean=null) {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + if (is_null($mean)) { + $mean = $this->mean(); + if (PEAR::isError($mean)) { + return $mean; + } + } + $sdiff = 0; + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + foreach ($this->_data as $val=>$freq) { + $sdiff += $freq * pow((double)($val - $mean), (double)$power); + } + } else { + foreach ($this->_data as $val) + $sdiff += pow((double)($val - $mean), (double)$power); + } + return $sdiff; + }/*}}}*/ + + /** + * Utility function to calculate the variance with or without + * a fixed mean + * + * @access private + * @param $mean the fixed mean to use, null as default + * @return mixed a numeric value on success, a PEAR_Error otherwise + * @see variance() + * @see varianceWithMean() + */ + function __calcVariance($mean = null) {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + $sumdiff2 = $this->__sumdiff(2, $mean); + if (PEAR::isError($sumdiff2)) { + return $sumdiff2; + } + $count = $this->count(); + if (PEAR::isError($count)) { + return $count; + } + if ($count == 1) { + return PEAR::raiseError('cannot calculate variance of a singe data point'); + } + return ($sumdiff2 / ($count - 1)); + }/*}}}*/ + + /** + * Utility function to calculate the absolute deviation with or without + * a fixed mean + * + * @access private + * @param $mean the fixed mean to use, null as default + * @return mixed a numeric value on success, a PEAR_Error otherwise + * @see absDev() + * @see absDevWithMean() + */ + function __calcAbsoluteDeviation($mean = null) {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + $count = $this->count(); + if (PEAR::isError($count)) { + return $count; + } + $sumabsdev = $this->__sumabsdev($mean); + if (PEAR::isError($sumabsdev)) { + return $sumabsdev; + } + return $sumabsdev / $count; + }/*}}}*/ + + /** + * Utility function to calculate: SUM { | xi - mean | } + * + * @access private + * @param optional double $mean the mean value for the set or population + * @return mixed the sum on success, a PEAR_Error object otherwise + * + * @see absDev() + * @see absDevWithMean() + */ + function __sumabsdev($mean=null) {/*{{{*/ + if ($this->_data == null) { + return PEAR::raiseError('data has not been set'); + } + if (is_null($mean)) { + $mean = $this->mean(); + } + $sdev = 0; + if ($this->_dataOption == STATS_DATA_CUMMULATIVE) { + foreach ($this->_data as $val=>$freq) { + $sdev += $freq * abs($val - $mean); + } + } else { + foreach ($this->_data as $val) { + $sdev += abs($val - $mean); + } + } + return $sdev; + }/*}}}*/ + + /** + * Utility function to format a PEAR_Error to be used by calc(), + * calcBasic() and calcFull() + * + * @access private + * @param mixed $v value to be formatted + * @param boolean $returnErrorObject whether the raw PEAR_Error (when true, default), + * or only the error message will be returned (when false) + * @return mixed if the value is a PEAR_Error object, and $useErrorObject + * is false, then a string with the error message will be returned, + * otherwise the value will not be modified and returned as passed. + */ + function __format($v, $useErrorObject=true) {/*{{{*/ + if (PEAR::isError($v) && $useErrorObject == false) { + return $v->getMessage(); + } else { + return $v; + } + }/*}}}*/ + + /** + * Utility function to validate the data and modify it + * according to the current null handling option + * + * @access private + * @return mixed true on success, a PEAR_Error object otherwise + * + * @see setData() + */ + function _validate() {/*{{{*/ + $flag = ($this->_dataOption == STATS_DATA_CUMMULATIVE); + foreach ($this->_data as $key=>$value) { + $d = ($flag) ? $key : $value; + $v = ($flag) ? $value : $key; + if (!is_numeric($d)) { + switch ($this->_nullOption) { + case STATS_IGNORE_NULL : + unset($this->_data["$key"]); + break; + case STATS_USE_NULL_AS_ZERO: + if ($flag) { + unset($this->_data["$key"]); + $this->_data[0] += $v; + } else { + $this->_data[$key] = 0; + } + break; + case STATS_REJECT_NULL : + default: + return PEAR::raiseError('data rejected, contains NULL values'); + break; + } + } + } + if ($flag) { + ksort($this->_data); + $this->_dataExpanded = array(); + foreach ($this->_data as $val=>$freq) { + $this->_dataExpanded = array_pad($this->_dataExpanded, count($this->_dataExpanded) + $freq, $val); + } + sort($this->_dataExpanded); + } else { + sort($this->_data); + } + return true; + }/*}}}*/ + +}/*}}}*/ + +// vim: ts=4:sw=4:et: +// vim6: fdl=1: fdm=marker: + +?> diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/_notes/dwsync.xml new file mode 100644 index 0000000..d90b254 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/_notes/dwsync.xml @@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="benchmark.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="LagrangeInterpolation.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="LagrangeInterpolation2.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="LevenbergMarquardt.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="LMQuadTest.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="MagicSquareExample.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="polyfit.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Stats.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="tile.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="polyfit.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="LagrangeInterpolation.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="LagrangeInterpolation2.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="LevenbergMarquardt.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="benchmark.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="MagicSquareExample.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="tile.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="Stats.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="LMQuadTest.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="polyfit.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="LagrangeInterpolation.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="LagrangeInterpolation2.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="LevenbergMarquardt.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="benchmark.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="MagicSquareExample.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="tile.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="Stats.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="LMQuadTest.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="polyfit.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560026976120" remote="131260197000000000" Dst="1" /> +<file name="LagrangeInterpolation.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560027447501" remote="131260197000000000" Dst="1" /> +<file name="LagrangeInterpolation2.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560027948449" remote="131260197000000000" Dst="1" /> +<file name="LevenbergMarquardt.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560028449549" remote="131260197000000000" Dst="1" /> +<file name="benchmark.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560028959798" remote="131260197000000000" Dst="1" /> +<file name="tile.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560029920849" remote="131260197000000000" Dst="1" /> +<file name="MagicSquareExample.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560029447939" remote="131260197000000000" Dst="1" /> +<file name="Stats.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560032784086" remote="131260197000000000" Dst="1" /> +<file name="LMQuadTest.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560033299682" remote="131260197000000000" Dst="1" /> +<file name="polyfit.php" server="62.244.88.21/amashow/" local="131414752313554312" remote="131414680800000000" Dst="2" /> +<file name="LagrangeInterpolation.php" server="62.244.88.21/amashow/" local="131414752313917098" remote="131414680800000000" Dst="2" /> +<file name="LagrangeInterpolation2.php" server="62.244.88.21/amashow/" local="131414752314281743" remote="131414680800000000" Dst="2" /> +<file name="LevenbergMarquardt.php" server="62.244.88.21/amashow/" local="131414752314495220" remote="131414680800000000" Dst="2" /> +<file name="benchmark.php" server="62.244.88.21/amashow/" local="131414752314948376" remote="131414680800000000" Dst="2" /> +<file name="tile.php" server="62.244.88.21/amashow/" local="131414752315483004" remote="131414680800000000" Dst="2" /> +<file name="MagicSquareExample.php" server="62.244.88.21/amashow/" local="131414752315159255" remote="131414680800000000" Dst="2" /> +<file name="Stats.php" server="62.244.88.21/amashow/" local="131414752316024143" remote="131414680800000000" Dst="2" /> +<file name="LMQuadTest.php" server="62.244.88.21/amashow/" local="131414752316223496" remote="131414680800000000" Dst="2" /> +<file name="LagrangeInterpolation.php" server="62.244.88.21/deciday/" local="131919461294677750" remote="131826017400000000" Dst="1" /> +<file name="LevenbergMarquardt.php" server="62.244.88.21/deciday/" local="131919461294857489" remote="131826017400000000" Dst="1" /> +<file name="LMQuadTest.php" server="62.244.88.21/deciday/" local="131919461295819051" remote="131826017400000000" Dst="1" /> +<file name="MagicSquareExample.php" server="62.244.88.21/deciday/" local="131919461296172184" remote="131826017400000000" Dst="1" /> +<file name="LagrangeInterpolation2.php" server="62.244.88.21/deciday/" local="131919461293056314" remote="131826017400000000" Dst="1" /> +<file name="benchmark.php" server="62.244.88.21/deciday/" local="131919461295031309" remote="131826017400000000" Dst="1" /> +<file name="tile.php" server="62.244.88.21/deciday/" local="131919461297210409" remote="131826017400000000" Dst="1" /> +<file name="polyfit.php" server="62.244.88.21/deciday/" local="131919461295990771" remote="131826017400000000" Dst="1" /> +<file name="Stats.php" server="62.244.88.21/deciday/" local="131919461299064348" remote="131826017400000000" Dst="1" /> +<file name="benchmark.php" server="62.244.88.21/deciday_18/" local="131414752314948376" remote="131825945400000000" Dst="2" /> +<file name="LagrangeInterpolation.php" server="62.244.88.21/deciday_18/" local="131414752313917098" remote="131825945400000000" Dst="2" /> +<file name="LagrangeInterpolation2.php" server="62.244.88.21/deciday_18/" local="131414752314281743" remote="131825945400000000" Dst="2" /> +<file name="LMQuadTest.php" server="62.244.88.21/deciday_18/" local="131414752316223496" remote="131825945400000000" Dst="2" /> +<file name="MagicSquareExample.php" server="62.244.88.21/deciday_18/" local="131414752315159255" remote="131825945400000000" Dst="2" /> +<file name="LevenbergMarquardt.php" server="62.244.88.21/deciday_18/" local="131414752314495220" remote="131825945400000000" Dst="2" /> +<file name="polyfit.php" server="62.244.88.21/deciday_18/" local="131414752313554312" remote="131825945400000000" Dst="2" /> +<file name="tile.php" server="62.244.88.21/deciday_18/" local="131414752315483004" remote="131825945400000000" Dst="2" /> +<file name="Stats.php" server="62.244.88.21/deciday_18/" local="131414752316024143" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/benchmark.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/benchmark.php new file mode 100644 index 0000000..1b963b4 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/benchmark.php @@ -0,0 +1,263 @@ +<?php + +error_reporting(E_ALL); + +/** + * @package JAMA + */ + +require_once '../Matrix.php'; +require_once 'Stats.php'; + + +/** + * Example of use of Matrix Class, featuring magic squares. + */ +class Benchmark { + public $stat; + + + /** + * Simple function to replicate PHP 5 behaviour + */ + function microtime_float() { + list($usec, $sec) = explode(" ", microtime()); + + return ((float)$usec + (float)$sec); + } // function microtime_float() + + + function displayStats($times = null) { + $this->stat->setData($times); + $stats = $this->stat->calcFull(); + + echo '<table style="margin-left:32px;">'; + echo '<tr><td style="text-align:right;"><b>n:</b><td style="text-align:right;">' . $stats['count'] . ' </td></tr>'; + echo '<tr><td style="text-align:right;"><b>Mean:</b><td style="text-align:right;">' . $stats['mean'] . ' </td></tr>'; + echo '<tr><td style="text-align:right;"><b>Min.:</b><td style="text-align:right;">' . $stats['min'] . ' </td></tr>'; + echo '<tr><td style="text-align:right;"><b>Max.:</b><td style="text-align:right;">' . $stats['max'] . ' </td></tr>'; + echo '<tr><td style="text-align:right;"><b>&sigma;:</b><td style="text-align:right;">' . $stats['stdev'] . ' </td></tr>'; + echo '<tr><td style="text-align:right;"><b>Variance:</b><td style="text-align:right;">' . $stats['variance'] . ' </td></tr>'; + echo '<tr><td style="text-align:right;"><b>Range:</b><td style="text-align:right;">' . $stats['range'] . ' </td></tr>'; + echo '</table>'; + + return $stats; + } // function displayStats() + + + function runEig($n = 4, $t = 100) { + $times = array(); + + for ($i = 0; $i < $t; ++$i) { + $M = Matrix::random($n, $n); + $start_time = $this->microtime_float(); + $E = new EigenvalueDecomposition($M); + $stop_time = $this->microtime_float(); + $times[] = $stop_time - $start_time; + } + + return $times; + } // function runEig() + + + function runLU($n = 4, $t = 100) { + $times = array(); + + for ($i = 0; $i < $t; ++$i) { + $M = Matrix::random($n, $n); + $start_time = $this->microtime_float(); + $E = new LUDecomposition($M); + $stop_time = $this->microtime_float(); + $times[] = $stop_time - $start_time; + } + + return $times; + } // function runLU() + + + function runQR($n = 4, $t = 100) { + $times = array(); + + for ($i = 0; $i < $t; ++$i) { + $M = Matrix::random($n, $n); + $start_time = $this->microtime_float(); + $E = new QRDecomposition($M); + $stop_time = $this->microtime_float(); + $times[] = $stop_time - $start_time; + } + + return $times; + } // function runQR() + + + function runCholesky($n = 4, $t = 100) { + $times = array(); + + for ($i = 0; $i < $t; ++$i) { + $M = Matrix::random($n, $n); + $start_time = $this->microtime_float(); + $E = new CholeskyDecomposition($M); + $stop_time = $this->microtime_float(); + $times[] = $stop_time - $start_time; + } + + return $times; + } // function runCholesky() + + + function runSVD($n = 4, $t = 100) { + $times = array(); + + for ($i = 0; $i < $t; ++$i) { + $M = Matrix::random($n, $n); + $start_time = $this->microtime_float(); + $E = new SingularValueDecomposition($M); + $stop_time = $this->microtime_float(); + $times[] = $stop_time - $start_time; + } + + return $times; + } // function runSVD() + + + function run() { + $n = 8; + $t = 16; + $sum = 0; + echo "<b>Cholesky decomposition: $t random {$n}x{$n} matrices</b><br />"; + $r = $this->displayStats($this->runCholesky($n, $t)); + $sum += $r['mean'] * $n; + + echo '<hr />'; + + echo "<b>Eigenvalue decomposition: $t random {$n}x{$n} matrices</b><br />"; + $r = $this->displayStats($this->runEig($n, $t)); + $sum += $r['mean'] * $n; + + echo '<hr />'; + + echo "<b>LU decomposition: $t random {$n}x{$n} matrices</b><br />"; + $r = $this->displayStats($this->runLU($n, $t)); + $sum += $r['mean'] * $n; + + echo '<hr />'; + + echo "<b>QR decomposition: $t random {$n}x{$n} matrices</b><br />"; + $r = $this->displayStats($this->runQR($n, $t)); + $sum += $r['mean'] * $n; + + echo '<hr />'; + + echo "<b>Singular Value decomposition: $t random {$n}x{$n} matrices</b><br />"; + $r = $this->displayStats($this->runSVD($n, $t)); + $sum += $r['mean'] * $n; + + return $sum; + } // function run() + + + public function __construct() { + $this->stat = new Base(); + } // function Benchmark() + +} // class Benchmark (end MagicSquareExample) + + +$benchmark = new Benchmark(); + +switch($_REQUEST['decomposition']) { + case 'cholesky': + $m = array(); + for ($i = 2; $i <= 8; $i *= 2) { + $t = 32 / $i; + echo "<b>Cholesky decomposition: $t random {$i}x{$i} matrices</b><br />"; + $s = $benchmark->displayStats($benchmark->runCholesky($i, $t)); + $m[$i] = $s['mean']; + echo "<br />"; + } + echo '<pre>'; + foreach($m as $x => $y) { + echo "$x\t" . 1000*$y . "\n"; + } + echo '</pre>'; + break; + case 'eigenvalue': + $m = array(); + for ($i = 2; $i <= 8; $i *= 2) { + $t = 32 / $i; + echo "<b>Eigenvalue decomposition: $t random {$i}x{$i} matrices</b><br />"; + $s = $benchmark->displayStats($benchmark->runEig($i, $t)); + $m[$i] = $s['mean']; + echo "<br />"; + } + echo '<pre>'; + foreach($m as $x => $y) { + echo "$x\t" . 1000*$y . "\n"; + } + echo '</pre>'; + break; + case 'lu': + $m = array(); + for ($i = 2; $i <= 8; $i *= 2) { + $t = 32 / $i; + echo "<b>LU decomposition: $t random {$i}x{$i} matrices</b><br />"; + $s = $benchmark->displayStats($benchmark->runLU($i, $t)); + $m[$i] = $s['mean']; + echo "<br />"; + } + echo '<pre>'; + foreach($m as $x => $y) { + echo "$x\t" . 1000*$y . "\n"; + } + echo '</pre>'; + break; + case 'qr': + $m = array(); + for ($i = 2; $i <= 8; $i *= 2) { + $t = 32 / $i; + echo "<b>QR decomposition: $t random {$i}x{$i} matrices</b><br />"; + $s = $benchmark->displayStats($benchmark->runQR($i, $t)); + $m[$i] = $s['mean']; + echo "<br />"; + } + echo '<pre>'; + foreach($m as $x => $y) { + echo "$x\t" . 1000*$y . "\n"; + } + echo '</pre>'; + break; + case 'svd': + $m = array(); + for($i = 2; $i <= 8; $i *= 2) { + $t = 32 / $i; + echo "<b>Singular value decomposition: $t random {$i}x{$i} matrices</b><br />"; + $s = $benchmark->displayStats($benchmark->runSVD($i, $t)); + $m[$i] = $s['mean']; + echo "<br />"; + } + echo '<pre>'; + foreach($m as $x => $y) { + echo "$x\t" . 1000*$y . "\n"; + } + echo '</pre>'; + break; + case 'all': + $s = $benchmark->run(); + print("<br /><b>Total<b>: {$s}s<br />"); + break; + default: + ?> + <ul> + <li><a href="benchmark.php?decomposition=all">Complete Benchmark</a> + <ul> + <li><a href="benchmark.php?decomposition=cholesky">Cholesky</a></li> + <li><a href="benchmark.php?decomposition=eigenvalue">Eigenvalue</a></li> + <li><a href="benchmark.php?decomposition=lu">LU</a></li> + <li><a href="benchmark.php?decomposition=qr">QR</a></li> + <li><a href="benchmark.php?decomposition=svd">Singular Value</a></li> + </ul> + </li> + </ul> + <?php + break; +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/polyfit.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/polyfit.php new file mode 100644 index 0000000..bc02fd6 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/polyfit.php @@ -0,0 +1,73 @@ +<?php +require_once "../Matrix.php"; +/* +* @package JAMA +* @author Michael Bommarito +* @author Paul Meagher +* @version 0.1 +* +* Function to fit an order n polynomial function through +* a series of x-y data points using least squares. +* +* @param $X array x values +* @param $Y array y values +* @param $n int order of polynomial to be used for fitting +* @returns array $coeffs of polynomial coefficients +* Pre-Conditions: the system is not underdetermined: sizeof($X) > $n+1 +*/ +function polyfit($X, $Y, $n) { + for ($i = 0; $i < sizeof($X); ++$i) + for ($j = 0; $j <= $n; ++$j) + $A[$i][$j] = pow($X[$i], $j); + for ($i=0; $i < sizeof($Y); ++$i) + $B[$i] = array($Y[$i]); + $matrixA = new Matrix($A); + $matrixB = new Matrix($B); + $C = $matrixA->solve($matrixB); + return $C->getMatrix(0, $n, 0, 1); +} + +function printpoly( $C = null ) { + for($i = $C->m - 1; $i >= 0; --$i) { + $r = $C->get($i, 0); + if ( abs($r) <= pow(10, -9) ) + $r = 0; + if ($i == $C->m - 1) + echo $r . "x<sup>$i</sup>"; + else if ($i < $C->m - 1) + echo " + " . $r . "x<sup>$i</sup>"; + else if ($i == 0) + echo " + " . $r; + } +} + +$X = array(0,1,2,3,4,5); +$Y = array(4,3,12,67,228, 579); +$points = new Matrix(array($X, $Y)); +$points->toHTML(); +printpoly(polyfit($X, $Y, 4)); + +echo '<hr />'; + +$X = array(0,1,2,3,4,5); +$Y = array(1,2,5,10,17, 26); +$points = new Matrix(array($X, $Y)); +$points->toHTML(); +printpoly(polyfit($X, $Y, 2)); + +echo '<hr />'; + +$X = array(0,1,2,3,4,5,6); +$Y = array(-90,-104,-178,-252,-26, 1160, 4446); +$points = new Matrix(array($X, $Y)); +$points->toHTML(); +printpoly(polyfit($X, $Y, 5)); + +echo '<hr />'; + +$X = array(0,1,2,3,4); +$Y = array(mt_rand(0, 10), mt_rand(40, 80), mt_rand(240, 400), mt_rand(1800, 2215), mt_rand(8000, 9000)); +$points = new Matrix(array($X, $Y)); +$points->toHTML(); +printpoly(polyfit($X, $Y, 3)); +?> diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/tile.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/tile.php new file mode 100644 index 0000000..7a47ea5 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/examples/tile.php @@ -0,0 +1,78 @@ +<?php + +include "../Matrix.php"; + +/** +* Tiling of matrix X in [rowWise by colWise] dimension. Tiling +* creates a larger matrix than the original data X. Example, if +* X is to be tiled in a [3 x 4] manner, then: +* +* / \ +* | X X X X | +* C = | X X X X | +* | X X X X | +* \ / +* +* @param X Matrix +* @param rowWise int +* @param colWise int +* @return Matrix +*/ + +function tile(&$X, $rowWise, $colWise){ + + $xArray = $X->getArray(); + print_r($xArray); + + $countRow = 0; + $countColumn = 0; + + $m = $X->getRowDimension(); + $n = $X->getColumnDimension(); + + if( $rowWise<1 || $colWise<1 ){ + die("tile : Array index is out-of-bound."); + } + + $newRowDim = $m*$rowWise; + $newColDim = $n*$colWise; + + $result = array(); + + for($i=0 ; $i<$newRowDim; ++$i) { + + $holder = array(); + + for($j=0 ; $j<$newColDim ; ++$j) { + + $holder[$j] = $xArray[$countRow][$countColumn++]; + + // reset the column-index to zero to avoid reference to out-of-bound index in xArray[][] + + if($countColumn == $n) { $countColumn = 0; } + + } // end for + + ++$countRow; + + // reset the row-index to zero to avoid reference to out-of-bound index in xArray[][] + + if($countRow == $m) { $countRow = 0; } + + $result[$i] = $holder; + + } // end for + + return new Matrix($result); + +} + + +$X =array(1,2,3,4,5,6,7,8,9); +$nRow = 3; +$nCol = 3; +$tiled_matrix = tile(new Matrix($X), $nRow, $nCol); +echo "<pre>"; +print_r($tiled_matrix); +echo "</pre>"; +?> diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/tests/TestMatrix.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/tests/TestMatrix.php new file mode 100644 index 0000000..5290ceb --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/tests/TestMatrix.php @@ -0,0 +1,415 @@ +<?php + +require_once "../Matrix.php"; + +class TestMatrix { + + function TestMatrix() { + + // define test variables + + $errorCount = 0; + $warningCount = 0; + $columnwise = array(1.,2.,3.,4.,5.,6.,7.,8.,9.,10.,11.,12.); + $rowwise = array(1.,4.,7.,10.,2.,5.,8.,11.,3.,6.,9.,12.); + $avals = array(array(1.,4.,7.,10.),array(2.,5.,8.,11.),array(3.,6.,9.,12.)); + $rankdef = $avals; + $tvals = array(array(1.,2.,3.),array(4.,5.,6.),array(7.,8.,9.),array(10.,11.,12.)); + $subavals = array(array(5.,8.,11.),array(6.,9.,12.)); + $rvals = array(array(1.,4.,7.),array(2.,5.,8.,11.),array(3.,6.,9.,12.)); + $pvals = array(array(1.,1.,1.),array(1.,2.,3.),array(1.,3.,6.)); + $ivals = array(array(1.,0.,0.,0.),array(0.,1.,0.,0.),array(0.,0.,1.,0.)); + $evals = array(array(0.,1.,0.,0.),array(1.,0.,2.e-7,0.),array(0.,-2.e-7,0.,1.),array(0.,0.,1.,0.)); + $square = array(array(166.,188.,210.),array(188.,214.,240.),array(210.,240.,270.)); + $sqSolution = array(array(13.),array(15.)); + $condmat = array(array(1.,3.),array(7.,9.)); + $rows = 3; + $cols = 4; + $invalidID = 5; /* should trigger bad shape for construction with val */ + $raggedr = 0; /* (raggedr,raggedc) should be out of bounds in ragged array */ + $raggedc = 4; + $validID = 3; /* leading dimension of intended test Matrices */ + $nonconformld = 4; /* leading dimension which is valid, but nonconforming */ + $ib = 1; /* index ranges for sub Matrix */ + $ie = 2; + $jb = 1; + $je = 3; + $rowindexset = array(1,2); + $badrowindexset = array(1,3); + $columnindexset = array(1,2,3); + $badcolumnindexset = array(1,2,4); + $columnsummax = 33.; + $rowsummax = 30.; + $sumofdiagonals = 15; + $sumofsquares = 650; + + /** + * Test matrix methods + */ + + /** + * Constructors and constructor-like methods: + * + * Matrix(double[], int) + * Matrix(double[][]) + * Matrix(int, int) + * Matrix(int, int, double) + * Matrix(int, int, double[][]) + * constructWithCopy(double[][]) + * random(int,int) + * identity(int) + */ + echo "<p>Testing constructors and constructor-like methods...</p>"; + + $A = new Matrix($columnwise, 3); + if($A instanceof Matrix) { + $this->try_success("Column-packed constructor..."); + } else + $errorCount = $this->try_failure($errorCount, "Column-packed constructor...", "Unable to construct Matrix"); + + $T = new Matrix($tvals); + if($T instanceof Matrix) + $this->try_success("2D array constructor..."); + else + $errorCount = $this->try_failure($errorCount, "2D array constructor...", "Unable to construct Matrix"); + + $A = new Matrix($columnwise, $validID); + $B = new Matrix($avals); + $tmp = $B->get(0,0); + $avals[0][0] = 0.0; + $C = $B->minus($A); + $avals[0][0] = $tmp; + $B = Matrix::constructWithCopy($avals); + $tmp = $B->get(0,0); + $avals[0][0] = 0.0; + /** check that constructWithCopy behaves properly **/ + if ( ( $tmp - $B->get(0,0) ) != 0.0 ) + $errorCount = $this->try_failure($errorCount,"constructWithCopy... ","copy not effected... data visible outside"); + else + $this->try_success("constructWithCopy... ",""); + + $I = new Matrix($ivals); + if ( $this->checkMatrices($I,Matrix::identity(3,4)) ) + $this->try_success("identity... ",""); + else + $errorCount = $this->try_failure($errorCount,"identity... ","identity Matrix not successfully created"); + + /** + * Access Methods: + * + * getColumnDimension() + * getRowDimension() + * getArray() + * getArrayCopy() + * getColumnPackedCopy() + * getRowPackedCopy() + * get(int,int) + * getMatrix(int,int,int,int) + * getMatrix(int,int,int[]) + * getMatrix(int[],int,int) + * getMatrix(int[],int[]) + * set(int,int,double) + * setMatrix(int,int,int,int,Matrix) + * setMatrix(int,int,int[],Matrix) + * setMatrix(int[],int,int,Matrix) + * setMatrix(int[],int[],Matrix) + */ + print "<p>Testing access methods...</p>"; + + $B = new Matrix($avals); + if($B->getRowDimension() == $rows) + $this->try_success("getRowDimension..."); + else + $errorCount = $this->try_failure($errorCount, "getRowDimension..."); + + if($B->getColumnDimension() == $cols) + $this->try_success("getColumnDimension..."); + else + $errorCount = $this->try_failure($errorCount, "getColumnDimension..."); + + $barray = $B->getArray(); + if($this->checkArrays($barray, $avals)) + $this->try_success("getArray..."); + else + $errorCount = $this->try_failure($errorCount, "getArray..."); + + $bpacked = $B->getColumnPackedCopy(); + if($this->checkArrays($bpacked, $columnwise)) + $this->try_success("getColumnPackedCopy..."); + else + $errorCount = $this->try_failure($errorCount, "getColumnPackedCopy..."); + + $bpacked = $B->getRowPackedCopy(); + if($this->checkArrays($bpacked, $rowwise)) + $this->try_success("getRowPackedCopy..."); + else + $errorCount = $this->try_failure($errorCount, "getRowPackedCopy..."); + + /** + * Array-like methods: + * minus + * minusEquals + * plus + * plusEquals + * arrayLeftDivide + * arrayLeftDivideEquals + * arrayRightDivide + * arrayRightDivideEquals + * arrayTimes + * arrayTimesEquals + * uminus + */ + print "<p>Testing array-like methods...</p>"; + + /** + * I/O methods: + * read + * print + * serializable: + * writeObject + * readObject + */ + print "<p>Testing I/O methods...</p>"; + + /** + * Test linear algebra methods + */ + echo "<p>Testing linear algebra methods...<p>"; + + $A = new Matrix($columnwise, 3); + if( $this->checkMatrices($A->transpose(), $T) ) + $this->try_success("Transpose check..."); + else + $errorCount = $this->try_failure($errorCount, "Transpose check...", "Matrices are not equal"); + + if($this->checkScalars($A->norm1(), $columnsummax)) + $this->try_success("Maximum column sum..."); + else + $errorCount = $this->try_failure($errorCount, "Maximum column sum...", "Incorrect: " . $A->norm1() . " != " . $columnsummax); + + if($this->checkScalars($A->normInf(), $rowsummax)) + $this->try_success("Maximum row sum..."); + else + $errorCount = $this->try_failure($errorCount, "Maximum row sum...", "Incorrect: " . $A->normInf() . " != " . $rowsummax ); + + if($this->checkScalars($A->normF(), sqrt($sumofsquares))) + $this->try_success("Frobenius norm..."); + else + $errorCount = $this->try_failure($errorCount, "Frobenius norm...", "Incorrect:" . $A->normF() . " != " . sqrt($sumofsquares)); + + if($this->checkScalars($A->trace(), $sumofdiagonals)) + $this->try_success("Matrix trace..."); + else + $errorCount = $this->try_failure($errorCount, "Matrix trace...", "Incorrect: " . $A->trace() . " != " . $sumofdiagonals); + + $B = $A->getMatrix(0, $A->getRowDimension(), 0, $A->getRowDimension()); + if( $B->det() == 0 ) + $this->try_success("Matrix determinant..."); + else + $errorCount = $this->try_failure($errorCount, "Matrix determinant...", "Incorrect: " . $B->det() . " != " . 0); + + $A = new Matrix($columnwise,3); + $SQ = new Matrix($square); + if ($this->checkMatrices($SQ, $A->times($A->transpose()))) + $this->try_success("times(Matrix)..."); + else { + $errorCount = $this->try_failure($errorCount, "times(Matrix)...", "Unable to multiply matrices"); + $SQ->toHTML(); + $AT->toHTML(); + } + + $A = new Matrix($columnwise, 4); + + $QR = $A->qr(); + $R = $QR->getR(); + $Q = $QR->getQ(); + if($this->checkMatrices($A, $Q->times($R))) + $this->try_success("QRDecomposition...",""); + else + $errorCount = $this->try_failure($errorCount,"QRDecomposition...","incorrect qr decomposition calculation"); + + $A = new Matrix($columnwise, 4); + $SVD = $A->svd(); + $U = $SVD->getU(); + $S = $SVD->getS(); + $V = $SVD->getV(); + if ($this->checkMatrices($A, $U->times($S->times($V->transpose())))) + $this->try_success("SingularValueDecomposition...",""); + else + $errorCount = $this->try_failure($errorCount,"SingularValueDecomposition...","incorrect singular value decomposition calculation"); + + $n = $A->getColumnDimension(); + $A = $A->getMatrix(0,$n-1,0,$n-1); + $A->set(0,0,0.); + + $LU = $A->lu(); + $L = $LU->getL(); + if ( $this->checkMatrices($A->getMatrix($LU->getPivot(),0,$n-1), $L->times($LU->getU())) ) + $this->try_success("LUDecomposition...",""); + else + $errorCount = $this->try_failure($errorCount,"LUDecomposition...","incorrect LU decomposition calculation"); + + $X = $A->inverse(); + if ( $this->checkMatrices($A->times($X),Matrix::identity(3,3)) ) + $this->try_success("inverse()...",""); + else + $errorCount = $this->try_failure($errorCount, "inverse()...","incorrect inverse calculation"); + + $DEF = new Matrix($rankdef); + if($this->checkScalars($DEF->rank(), min($DEF->getRowDimension(), $DEF->getColumnDimension())-1)) + $this->try_success("Rank..."); + else + $this->try_failure("Rank...", "incorrect rank calculation"); + + $B = new Matrix($condmat); + $SVD = $B->svd(); + $singularvalues = $SVD->getSingularValues(); + if($this->checkScalars($B->cond(), $singularvalues[0]/$singularvalues[min($B->getRowDimension(), $B->getColumnDimension())-1])) + $this->try_success("Condition number..."); + else + $this->try_failure("Condition number...", "incorrect condition number calculation"); + + $SUB = new Matrix($subavals); + $O = new Matrix($SUB->getRowDimension(),1,1.0); + $SOL = new Matrix($sqSolution); + $SQ = $SUB->getMatrix(0,$SUB->getRowDimension()-1,0,$SUB->getRowDimension()-1); + if ( $this->checkMatrices($SQ->solve($SOL),$O) ) + $this->try_success("solve()...",""); + else + $errorCount = $this->try_failure($errorCount,"solve()...","incorrect lu solve calculation"); + + $A = new Matrix($pvals); + $Chol = $A->chol(); + $L = $Chol->getL(); + if ( $this->checkMatrices($A, $L->times($L->transpose())) ) + $this->try_success("CholeskyDecomposition...",""); + else + $errorCount = $this->try_failure($errorCount,"CholeskyDecomposition...","incorrect Cholesky decomposition calculation"); + + $X = $Chol->solve(Matrix::identity(3,3)); + if ( $this->checkMatrices($A->times($X), Matrix::identity(3,3)) ) + $this->try_success("CholeskyDecomposition solve()...",""); + else + $errorCount = $this->try_failure($errorCount,"CholeskyDecomposition solve()...","incorrect Choleskydecomposition solve calculation"); + + $Eig = $A->eig(); + $D = $Eig->getD(); + $V = $Eig->getV(); + if( $this->checkMatrices($A->times($V),$V->times($D)) ) + $this->try_success("EigenvalueDecomposition (symmetric)...",""); + else + $errorCount = $this->try_failure($errorCount,"EigenvalueDecomposition (symmetric)...","incorrect symmetric Eigenvalue decomposition calculation"); + + $A = new Matrix($evals); + $Eig = $A->eig(); + $D = $Eig->getD(); + $V = $Eig->getV(); + if ( $this->checkMatrices($A->times($V),$V->times($D)) ) + $this->try_success("EigenvalueDecomposition (nonsymmetric)...",""); + else + $errorCount = $this->try_failure($errorCount,"EigenvalueDecomposition (nonsymmetric)...","incorrect nonsymmetric Eigenvalue decomposition calculation"); + + print("<b>{$errorCount} total errors</b>."); + } + + /** + * Print appropriate messages for successful outcome try + * @param string $s + * @param string $e + */ + function try_success($s, $e = "") { + print "> ". $s ."success<br />"; + if ($e != "") + print "> Message: ". $e ."<br />"; + } + + /** + * Print appropriate messages for unsuccessful outcome try + * @param int $count + * @param string $s + * @param string $e + * @return int incremented counter + */ + function try_failure($count, $s, $e="") { + print "> ". $s ."*** failure ***<br />> Message: ". $e ."<br />"; + return ++$count; + } + + /** + * Print appropriate messages for unsuccessful outcome try + * @param int $count + * @param string $s + * @param string $e + * @return int incremented counter + */ + function try_warning($count, $s, $e="") { + print "> ". $s ."*** warning ***<br />> Message: ". $e ."<br />"; + return ++$count; + } + + /** + * Check magnitude of difference of "scalars". + * @param float $x + * @param float $y + */ + function checkScalars($x, $y) { + $eps = pow(2.0,-52.0); + if ($x == 0 & abs($y) < 10*$eps) return; + if ($y == 0 & abs($x) < 10*$eps) return; + if (abs($x-$y) > 10 * $eps * max(abs($x),abs($y))) + return false; + else + return true; + } + + /** + * Check norm of difference of "vectors". + * @param float $x[] + * @param float $y[] + */ + function checkVectors($x, $y) { + $nx = count($x); + $ny = count($y); + if ($nx == $ny) + for($i=0; $i < $nx; ++$i) + $this->checkScalars($x[$i],$y[$i]); + else + die("Attempt to compare vectors of different lengths"); + } + + /** + * Check norm of difference of "arrays". + * @param float $x[][] + * @param float $y[][] + */ + function checkArrays($x, $y) { + $A = new Matrix($x); + $B = new Matrix($y); + return $this->checkMatrices($A,$B); + } + + /** + * Check norm of difference of "matrices". + * @param matrix $X + * @param matrix $Y + */ + function checkMatrices($X = null, $Y = null) { + if( $X == null || $Y == null ) + return false; + + $eps = pow(2.0,-52.0); + if ($X->norm1() == 0. & $Y->norm1() < 10*$eps) return true; + if ($Y->norm1() == 0. & $X->norm1() < 10*$eps) return true; + + $A = $X->minus($Y); + + if ($A->norm1() > 1000 * $eps * max($X->norm1(),$Y->norm1())) + die("The norm of (X-Y) is too large: ".$A->norm1()); + else + return true; + } + +} + +$test = new TestMatrix; +?> diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/tests/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/tests/_notes/dwsync.xml new file mode 100644 index 0000000..c14d0e3 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/tests/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="TestMatrix.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="TestMatrix.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="TestMatrix.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="TestMatrix.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560037102223" remote="131260197000000000" Dst="1" /> +<file name="TestMatrix.php" server="62.244.88.21/amashow/" local="131414752320327074" remote="131414680800000000" Dst="2" /> +<file name="TestMatrix.php" server="62.244.88.21/deciday/" local="131919461301220138" remote="131826017400000000" Dst="1" /> +<file name="TestMatrix.php" server="62.244.88.21/deciday_18/" local="131414752320327074" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/utils/Error.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/utils/Error.php new file mode 100644 index 0000000..e73252b --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/utils/Error.php @@ -0,0 +1,82 @@ +<?php +/** + * @package JAMA + * + * Error handling + * @author Michael Bommarito + * @version 01292005 + */ + +//Language constant +define('JAMALANG', 'EN'); + + +//All errors may be defined by the following format: +//define('ExceptionName', N); +//$error['lang'][ExceptionName] = 'Error message'; +$error = array(); + +/* +I've used Babelfish and a little poor knowledge of Romance/Germanic languages for the translations here. +Feel free to correct anything that looks amiss to you. +*/ + +define('PolymorphicArgumentException', -1); +$error['EN'][PolymorphicArgumentException] = "Invalid argument pattern for polymorphic function."; +$error['FR'][PolymorphicArgumentException] = "Modèle inadmissible d'argument pour la fonction polymorphe.". +$error['DE'][PolymorphicArgumentException] = "Unzulässiges Argumentmuster für polymorphe Funktion."; + +define('ArgumentTypeException', -2); +$error['EN'][ArgumentTypeException] = "Invalid argument type."; +$error['FR'][ArgumentTypeException] = "Type inadmissible d'argument."; +$error['DE'][ArgumentTypeException] = "Unzulässige Argumentart."; + +define('ArgumentBoundsException', -3); +$error['EN'][ArgumentBoundsException] = "Invalid argument range."; +$error['FR'][ArgumentBoundsException] = "Gamme inadmissible d'argument."; +$error['DE'][ArgumentBoundsException] = "Unzulässige Argumentstrecke."; + +define('MatrixDimensionException', -4); +$error['EN'][MatrixDimensionException] = "Matrix dimensions are not equal."; +$error['FR'][MatrixDimensionException] = "Les dimensions de Matrix ne sont pas égales."; +$error['DE'][MatrixDimensionException] = "Matrixmaße sind nicht gleich."; + +define('PrecisionLossException', -5); +$error['EN'][PrecisionLossException] = "Significant precision loss detected."; +$error['FR'][PrecisionLossException] = "Perte significative de précision détectée."; +$error['DE'][PrecisionLossException] = "Bedeutender Präzision Verlust ermittelte."; + +define('MatrixSPDException', -6); +$error['EN'][MatrixSPDException] = "Can only perform operation on symmetric positive definite matrix."; +$error['FR'][MatrixSPDException] = "Perte significative de précision détectée."; +$error['DE'][MatrixSPDException] = "Bedeutender Präzision Verlust ermittelte."; + +define('MatrixSingularException', -7); +$error['EN'][MatrixSingularException] = "Can only perform operation on singular matrix."; + +define('MatrixRankException', -8); +$error['EN'][MatrixRankException] = "Can only perform operation on full-rank matrix."; + +define('ArrayLengthException', -9); +$error['EN'][ArrayLengthException] = "Array length must be a multiple of m."; + +define('RowLengthException', -10); +$error['EN'][RowLengthException] = "All rows must have the same length."; + +/** + * Custom error handler + * @param int $num Error number + */ +function JAMAError($errorNumber = null) { + global $error; + + if (isset($errorNumber)) { + if (isset($error[JAMALANG][$errorNumber])) { + return $error[JAMALANG][$errorNumber]; + } else { + return $error['EN'][$errorNumber]; + } + } else { + return ("Invalid argument to JAMAError()"); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/utils/Maths.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/utils/Maths.php new file mode 100644 index 0000000..f5e2a37 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/utils/Maths.php @@ -0,0 +1,43 @@ +<?php +/** + * @package JAMA + * + * Pythagorean Theorem: + * + * a = 3 + * b = 4 + * r = sqrt(square(a) + square(b)) + * r = 5 + * + * r = sqrt(a^2 + b^2) without under/overflow. + */ +function hypo($a, $b) { + if (abs($a) > abs($b)) { + $r = $b / $a; + $r = abs($a) * sqrt(1 + $r * $r); + } elseif ($b != 0) { + $r = $a / $b; + $r = abs($b) * sqrt(1 + $r * $r); + } else { + $r = 0.0; + } + return $r; +} // function hypo() + + +/** + * Mike Bommarito's version. + * Compute n-dimensional hyotheneuse. + * +function hypot() { + $s = 0; + foreach (func_get_args() as $d) { + if (is_numeric($d)) { + $s += pow($d, 2); + } else { + throw new Exception(JAMAError(ArgumentTypeException)); + } + } + return sqrt($s); +} +*/ diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/utils/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/utils/_notes/dwsync.xml new file mode 100644 index 0000000..f1a978c --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/JAMA/utils/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Error.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Maths.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Error.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="Maths.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="Error.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="Maths.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="Error.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560035027267" remote="131260197000000000" Dst="1" /> +<file name="Maths.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560035463738" remote="131260197000000000" Dst="1" /> +<file name="Error.php" server="62.244.88.21/amashow/" local="131414752318152072" remote="131414680800000000" Dst="2" /> +<file name="Maths.php" server="62.244.88.21/amashow/" local="131414752318465647" remote="131414680800000000" Dst="2" /> +<file name="Error.php" server="62.244.88.21/deciday/" local="131919461300835061" remote="131826017400000000" Dst="1" /> +<file name="Maths.php" server="62.244.88.21/deciday/" local="131919461301896133" remote="131826017400000000" Dst="1" /> +<file name="Error.php" server="62.244.88.21/deciday_18/" local="131414752318152072" remote="131825945400000000" Dst="2" /> +<file name="Maths.php" server="62.244.88.21/deciday_18/" local="131414752318465647" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE.php new file mode 100644 index 0000000..a5c8dd1 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE.php @@ -0,0 +1,531 @@ +<?php +/* vim: set expandtab tabstop=4 shiftwidth=4: */ +// +----------------------------------------------------------------------+ +// | PHP Version 4 | +// +----------------------------------------------------------------------+ +// | Copyright (c) 1997-2002 The PHP Group | +// +----------------------------------------------------------------------+ +// | This source file is subject to version 2.02 of the PHP license, | +// | that is bundled with this package in the file LICENSE, and is | +// | available at through the world-wide-web at | +// | http://www.php.net/license/2_02.txt. | +// | If you did not receive a copy of the PHP license and are unable to | +// | obtain it through the world-wide-web, please send a note to | +// | license@php.net so we can mail you a copy immediately. | +// +----------------------------------------------------------------------+ +// | Author: Xavier Noguer <xnoguer@php.net> | +// | Based on OLE::Storage_Lite by Kawai, Takanori | +// +----------------------------------------------------------------------+ +// +// $Id: OLE.php,v 1.13 2007/03/07 14:38:25 schmidt Exp $ + + +/** +* Array for storing OLE instances that are accessed from +* OLE_ChainedBlockStream::stream_open(). +* @var array +*/ +$GLOBALS['_OLE_INSTANCES'] = array(); + +/** +* OLE package base class. +* +* @author Xavier Noguer <xnoguer@php.net> +* @author Christian Schmidt <schmidt@php.net> +* @category PHPExcel +* @package PHPExcel_Shared_OLE +*/ +class PHPExcel_Shared_OLE +{ + const OLE_PPS_TYPE_ROOT = 5; + const OLE_PPS_TYPE_DIR = 1; + const OLE_PPS_TYPE_FILE = 2; + const OLE_DATA_SIZE_SMALL = 0x1000; + const OLE_LONG_INT_SIZE = 4; + const OLE_PPS_SIZE = 0x80; + + /** + * The file handle for reading an OLE container + * @var resource + */ + public $_file_handle; + + /** + * Array of PPS's found on the OLE container + * @var array + */ + public $_list = array(); + + /** + * Root directory of OLE container + * @var OLE_PPS_Root + */ + public $root; + + /** + * Big Block Allocation Table + * @var array (blockId => nextBlockId) + */ + public $bbat; + + /** + * Short Block Allocation Table + * @var array (blockId => nextBlockId) + */ + public $sbat; + + /** + * Size of big blocks. This is usually 512. + * @var int number of octets per block. + */ + public $bigBlockSize; + + /** + * Size of small blocks. This is usually 64. + * @var int number of octets per block + */ + public $smallBlockSize; + + /** + * Reads an OLE container from the contents of the file given. + * + * @acces public + * @param string $file + * @return mixed true on success, PEAR_Error on failure + */ + public function read($file) + { + $fh = fopen($file, "r"); + if (!$fh) { + throw new Exception("Can't open file $file"); + } + $this->_file_handle = $fh; + + $signature = fread($fh, 8); + if ("\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1" != $signature) { + throw new Exception("File doesn't seem to be an OLE container."); + } + fseek($fh, 28); + if (fread($fh, 2) != "\xFE\xFF") { + // This shouldn't be a problem in practice + throw new Exception("Only Little-Endian encoding is supported."); + } + // Size of blocks and short blocks in bytes + $this->bigBlockSize = pow(2, self::_readInt2($fh)); + $this->smallBlockSize = pow(2, self::_readInt2($fh)); + + // Skip UID, revision number and version number + fseek($fh, 44); + // Number of blocks in Big Block Allocation Table + $bbatBlockCount = self::_readInt4($fh); + + // Root chain 1st block + $directoryFirstBlockId = self::_readInt4($fh); + + // Skip unused bytes + fseek($fh, 56); + // Streams shorter than this are stored using small blocks + $this->bigBlockThreshold = self::_readInt4($fh); + // Block id of first sector in Short Block Allocation Table + $sbatFirstBlockId = self::_readInt4($fh); + // Number of blocks in Short Block Allocation Table + $sbbatBlockCount = self::_readInt4($fh); + // Block id of first sector in Master Block Allocation Table + $mbatFirstBlockId = self::_readInt4($fh); + // Number of blocks in Master Block Allocation Table + $mbbatBlockCount = self::_readInt4($fh); + $this->bbat = array(); + + // Remaining 4 * 109 bytes of current block is beginning of Master + // Block Allocation Table + $mbatBlocks = array(); + for ($i = 0; $i < 109; ++$i) { + $mbatBlocks[] = self::_readInt4($fh); + } + + // Read rest of Master Block Allocation Table (if any is left) + $pos = $this->_getBlockOffset($mbatFirstBlockId); + for ($i = 0; $i < $mbbatBlockCount; ++$i) { + fseek($fh, $pos); + for ($j = 0; $j < $this->bigBlockSize / 4 - 1; ++$j) { + $mbatBlocks[] = self::_readInt4($fh); + } + // Last block id in each block points to next block + $pos = $this->_getBlockOffset(self::_readInt4($fh)); + } + + // Read Big Block Allocation Table according to chain specified by + // $mbatBlocks + for ($i = 0; $i < $bbatBlockCount; ++$i) { + $pos = $this->_getBlockOffset($mbatBlocks[$i]); + fseek($fh, $pos); + for ($j = 0 ; $j < $this->bigBlockSize / 4; ++$j) { + $this->bbat[] = self::_readInt4($fh); + } + } + + // Read short block allocation table (SBAT) + $this->sbat = array(); + $shortBlockCount = $sbbatBlockCount * $this->bigBlockSize / 4; + $sbatFh = $this->getStream($sbatFirstBlockId); + for ($blockId = 0; $blockId < $shortBlockCount; ++$blockId) { + $this->sbat[$blockId] = self::_readInt4($sbatFh); + } + fclose($sbatFh); + + $this->_readPpsWks($directoryFirstBlockId); + + return true; + } + + /** + * @param int block id + * @param int byte offset from beginning of file + * @access public + */ + public function _getBlockOffset($blockId) + { + return 512 + $blockId * $this->bigBlockSize; + } + + /** + * Returns a stream for use with fread() etc. External callers should + * use PHPExcel_Shared_OLE_PPS_File::getStream(). + * @param int|PPS block id or PPS + * @return resource read-only stream + */ + public function getStream($blockIdOrPps) + { + static $isRegistered = false; + if (!$isRegistered) { + stream_wrapper_register('ole-chainedblockstream', + 'PHPExcel_Shared_OLE_ChainedBlockStream'); + $isRegistered = true; + } + + // Store current instance in global array, so that it can be accessed + // in OLE_ChainedBlockStream::stream_open(). + // Object is removed from self::$instances in OLE_Stream::close(). + $GLOBALS['_OLE_INSTANCES'][] = $this; + $instanceId = end(array_keys($GLOBALS['_OLE_INSTANCES'])); + + $path = 'ole-chainedblockstream://oleInstanceId=' . $instanceId; + if ($blockIdOrPps instanceof PHPExcel_Shared_OLE_PPS) { + $path .= '&blockId=' . $blockIdOrPps->_StartBlock; + $path .= '&size=' . $blockIdOrPps->Size; + } else { + $path .= '&blockId=' . $blockIdOrPps; + } + return fopen($path, 'r'); + } + + /** + * Reads a signed char. + * @param resource file handle + * @return int + * @access public + */ + private static function _readInt1($fh) + { + list(, $tmp) = unpack("c", fread($fh, 1)); + return $tmp; + } + + /** + * Reads an unsigned short (2 octets). + * @param resource file handle + * @return int + * @access public + */ + private static function _readInt2($fh) + { + list(, $tmp) = unpack("v", fread($fh, 2)); + return $tmp; + } + + /** + * Reads an unsigned long (4 octets). + * @param resource file handle + * @return int + * @access public + */ + private static function _readInt4($fh) + { + list(, $tmp) = unpack("V", fread($fh, 4)); + return $tmp; + } + + /** + * Gets information about all PPS's on the OLE container from the PPS WK's + * creates an OLE_PPS object for each one. + * + * @access public + * @param integer the block id of the first block + * @return mixed true on success, PEAR_Error on failure + */ + public function _readPpsWks($blockId) + { + $fh = $this->getStream($blockId); + for ($pos = 0; ; $pos += 128) { + fseek($fh, $pos, SEEK_SET); + $nameUtf16 = fread($fh, 64); + $nameLength = self::_readInt2($fh); + $nameUtf16 = substr($nameUtf16, 0, $nameLength - 2); + // Simple conversion from UTF-16LE to ISO-8859-1 + $name = str_replace("\x00", "", $nameUtf16); + $type = self::_readInt1($fh); + switch ($type) { + case self::OLE_PPS_TYPE_ROOT: + $pps = new PHPExcel_Shared_OLE_PPS_Root(null, null, array()); + $this->root = $pps; + break; + case self::OLE_PPS_TYPE_DIR: + $pps = new PHPExcel_Shared_OLE_PPS(null, null, null, null, null, + null, null, null, null, array()); + break; + case self::OLE_PPS_TYPE_FILE: + $pps = new PHPExcel_Shared_OLE_PPS_File($name); + break; + default: + continue; + } + fseek($fh, 1, SEEK_CUR); + $pps->Type = $type; + $pps->Name = $name; + $pps->PrevPps = self::_readInt4($fh); + $pps->NextPps = self::_readInt4($fh); + $pps->DirPps = self::_readInt4($fh); + fseek($fh, 20, SEEK_CUR); + $pps->Time1st = self::OLE2LocalDate(fread($fh, 8)); + $pps->Time2nd = self::OLE2LocalDate(fread($fh, 8)); + $pps->_StartBlock = self::_readInt4($fh); + $pps->Size = self::_readInt4($fh); + $pps->No = count($this->_list); + $this->_list[] = $pps; + + // check if the PPS tree (starting from root) is complete + if (isset($this->root) && + $this->_ppsTreeComplete($this->root->No)) { + + break; + } + } + fclose($fh); + + // Initialize $pps->children on directories + foreach ($this->_list as $pps) { + if ($pps->Type == self::OLE_PPS_TYPE_DIR || $pps->Type == self::OLE_PPS_TYPE_ROOT) { + $nos = array($pps->DirPps); + $pps->children = array(); + while ($nos) { + $no = array_pop($nos); + if ($no != -1) { + $childPps = $this->_list[$no]; + $nos[] = $childPps->PrevPps; + $nos[] = $childPps->NextPps; + $pps->children[] = $childPps; + } + } + } + } + + return true; + } + + /** + * It checks whether the PPS tree is complete (all PPS's read) + * starting with the given PPS (not necessarily root) + * + * @access public + * @param integer $index The index of the PPS from which we are checking + * @return boolean Whether the PPS tree for the given PPS is complete + */ + public function _ppsTreeComplete($index) + { + return isset($this->_list[$index]) && + ($pps = $this->_list[$index]) && + ($pps->PrevPps == -1 || + $this->_ppsTreeComplete($pps->PrevPps)) && + ($pps->NextPps == -1 || + $this->_ppsTreeComplete($pps->NextPps)) && + ($pps->DirPps == -1 || + $this->_ppsTreeComplete($pps->DirPps)); + } + + /** + * Checks whether a PPS is a File PPS or not. + * If there is no PPS for the index given, it will return false. + * + * @access public + * @param integer $index The index for the PPS + * @return bool true if it's a File PPS, false otherwise + */ + public function isFile($index) + { + if (isset($this->_list[$index])) { + return ($this->_list[$index]->Type == self::OLE_PPS_TYPE_FILE); + } + return false; + } + + /** + * Checks whether a PPS is a Root PPS or not. + * If there is no PPS for the index given, it will return false. + * + * @access public + * @param integer $index The index for the PPS. + * @return bool true if it's a Root PPS, false otherwise + */ + public function isRoot($index) + { + if (isset($this->_list[$index])) { + return ($this->_list[$index]->Type == self::OLE_PPS_TYPE_ROOT); + } + return false; + } + + /** + * Gives the total number of PPS's found in the OLE container. + * + * @access public + * @return integer The total number of PPS's found in the OLE container + */ + public function ppsTotal() + { + return count($this->_list); + } + + /** + * Gets data from a PPS + * If there is no PPS for the index given, it will return an empty string. + * + * @access public + * @param integer $index The index for the PPS + * @param integer $position The position from which to start reading + * (relative to the PPS) + * @param integer $length The amount of bytes to read (at most) + * @return string The binary string containing the data requested + * @see OLE_PPS_File::getStream() + */ + public function getData($index, $position, $length) + { + // if position is not valid return empty string + if (!isset($this->_list[$index]) || ($position >= $this->_list[$index]->Size) || ($position < 0)) { + return ''; + } + $fh = $this->getStream($this->_list[$index]); + $data = stream_get_contents($fh, $length, $position); + fclose($fh); + return $data; + } + + /** + * Gets the data length from a PPS + * If there is no PPS for the index given, it will return 0. + * + * @access public + * @param integer $index The index for the PPS + * @return integer The amount of bytes in data the PPS has + */ + public function getDataLength($index) + { + if (isset($this->_list[$index])) { + return $this->_list[$index]->Size; + } + return 0; + } + + /** + * Utility function to transform ASCII text to Unicode + * + * @access public + * @static + * @param string $ascii The ASCII string to transform + * @return string The string in Unicode + */ + public static function Asc2Ucs($ascii) + { + $rawname = ''; + for ($i = 0; $i < strlen($ascii); ++$i) { + $rawname .= $ascii{$i} . "\x00"; + } + return $rawname; + } + + /** + * Utility function + * Returns a string for the OLE container with the date given + * + * @access public + * @static + * @param integer $date A timestamp + * @return string The string for the OLE container + */ + public static function LocalDate2OLE($date = null) + { + if (!isset($date)) { + return "\x00\x00\x00\x00\x00\x00\x00\x00"; + } + + // factor used for separating numbers into 4 bytes parts + $factor = pow(2, 32); + + // days from 1-1-1601 until the beggining of UNIX era + $days = 134774; + // calculate seconds + $big_date = $days*24*3600 + gmmktime(date("H",$date),date("i",$date),date("s",$date), + date("m",$date),date("d",$date),date("Y",$date)); + // multiply just to make MS happy + $big_date *= 10000000; + + $high_part = floor($big_date / $factor); + // lower 4 bytes + $low_part = floor((($big_date / $factor) - $high_part) * $factor); + + // Make HEX string + $res = ''; + + for ($i = 0; $i < 4; ++$i) { + $hex = $low_part % 0x100; + $res .= pack('c', $hex); + $low_part /= 0x100; + } + for ($i = 0; $i < 4; ++$i) { + $hex = $high_part % 0x100; + $res .= pack('c', $hex); + $high_part /= 0x100; + } + return $res; + } + + /** + * Returns a timestamp from an OLE container's date + * + * @access public + * @static + * @param integer $string A binary string with the encoded date + * @return string The timestamp corresponding to the string + */ + public static function OLE2LocalDate($string) + { + if (strlen($string) != 8) { + return new PEAR_Error("Expecting 8 byte string"); + } + + // factor used for separating numbers into 4 bytes parts + $factor = pow(2,32); + list(, $high_part) = unpack('V', substr($string, 4, 4)); + list(, $low_part) = unpack('V', substr($string, 0, 4)); + + $big_date = ($high_part * $factor) + $low_part; + // translate to seconds + $big_date /= 10000000; + + // days from 1-1-1601 until the beggining of UNIX era + $days = 134774; + + // translate to seconds from beggining of UNIX era + $big_date -= $days * 24 * 3600; + return floor($big_date); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/ChainedBlockStream.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/ChainedBlockStream.php new file mode 100644 index 0000000..4e233ad --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/ChainedBlockStream.php @@ -0,0 +1,229 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_OLE + * @copyright Copyright (c) 2006 - 2007 Christian Schmidt + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** + * PHPExcel_Shared_OLE_ChainedBlockStream + * + * Stream wrapper for reading data stored in an OLE file. Implements methods + * for PHP's stream_wrapper_register(). For creating streams using this + * wrapper, use PHPExcel_Shared_OLE_PPS_File::getStream(). + * + * @category PHPExcel + * @package PHPExcel_Shared_OLE + */ +class PHPExcel_Shared_OLE_ChainedBlockStream +{ + /** + * The OLE container of the file that is being read. + * @var OLE + */ + public $ole; + + /** + * Parameters specified by fopen(). + * @var array + */ + public $params; + + /** + * The binary data of the file. + * @var string + */ + public $data; + + /** + * The file pointer. + * @var int byte offset + */ + public $pos; + + /** + * Implements support for fopen(). + * For creating streams using this wrapper, use OLE_PPS_File::getStream(). + * + * @param string $path resource name including scheme, e.g. + * ole-chainedblockstream://oleInstanceId=1 + * @param string $mode only "r" is supported + * @param int $options mask of STREAM_REPORT_ERRORS and STREAM_USE_PATH + * @param string &$openedPath absolute path of the opened stream (out parameter) + * @return bool true on success + */ + public function stream_open($path, $mode, $options, &$openedPath) + { + if ($mode != 'r') { + if ($options & STREAM_REPORT_ERRORS) { + trigger_error('Only reading is supported', E_USER_WARNING); + } + return false; + } + + // 25 is length of "ole-chainedblockstream://" + parse_str(substr($path, 25), $this->params); + if (!isset($this->params['oleInstanceId'], + $this->params['blockId'], + $GLOBALS['_OLE_INSTANCES'][$this->params['oleInstanceId']])) { + + if ($options & STREAM_REPORT_ERRORS) { + trigger_error('OLE stream not found', E_USER_WARNING); + } + return false; + } + $this->ole = $GLOBALS['_OLE_INSTANCES'][$this->params['oleInstanceId']]; + + $blockId = $this->params['blockId']; + $this->data = ''; + if (isset($this->params['size']) && + $this->params['size'] < $this->ole->bigBlockThreshold && + $blockId != $this->ole->root->_StartBlock) { + + // Block id refers to small blocks + $rootPos = $this->ole->_getBlockOffset($this->ole->root->_StartBlock); + while ($blockId != -2) { + $pos = $rootPos + $blockId * $this->ole->bigBlockSize; + $blockId = $this->ole->sbat[$blockId]; + fseek($this->ole->_file_handle, $pos); + $this->data .= fread($this->ole->_file_handle, $this->ole->bigBlockSize); + } + } else { + // Block id refers to big blocks + while ($blockId != -2) { + $pos = $this->ole->_getBlockOffset($blockId); + fseek($this->ole->_file_handle, $pos); + $this->data .= fread($this->ole->_file_handle, $this->ole->bigBlockSize); + $blockId = $this->ole->bbat[$blockId]; + } + } + if (isset($this->params['size'])) { + $this->data = substr($this->data, 0, $this->params['size']); + } + + if ($options & STREAM_USE_PATH) { + $openedPath = $path; + } + + return true; + } + + /** + * Implements support for fclose(). + * + */ + public function stream_close() + { + $this->ole = null; + unset($GLOBALS['_OLE_INSTANCES']); + } + + /** + * Implements support for fread(), fgets() etc. + * + * @param int $count maximum number of bytes to read + * @return string + */ + public function stream_read($count) + { + if ($this->stream_eof()) { + return false; + } + $s = substr($this->data, $this->pos, $count); + $this->pos += $count; + return $s; + } + + /** + * Implements support for feof(). + * + * @return bool TRUE if the file pointer is at EOF; otherwise FALSE + */ + public function stream_eof() + { + $eof = $this->pos >= strlen($this->data); + // Workaround for bug in PHP 5.0.x: http://bugs.php.net/27508 + if (version_compare(PHP_VERSION, '5.0', '>=') && + version_compare(PHP_VERSION, '5.1', '<')) { + + $eof = !$eof; + } + return $eof; + } + + /** + * Returns the position of the file pointer, i.e. its offset into the file + * stream. Implements support for ftell(). + * + * @return int + */ + public function stream_tell() + { + return $this->pos; + } + + /** + * Implements support for fseek(). + * + * @param int $offset byte offset + * @param int $whence SEEK_SET, SEEK_CUR or SEEK_END + * @return bool + */ + public function stream_seek($offset, $whence) + { + if ($whence == SEEK_SET && $offset >= 0) { + $this->pos = $offset; + } elseif ($whence == SEEK_CUR && -$offset <= $this->pos) { + $this->pos += $offset; + } elseif ($whence == SEEK_END && -$offset <= sizeof($this->data)) { + $this->pos = strlen($this->data) + $offset; + } else { + return false; + } + return true; + } + + /** + * Implements support for fstat(). Currently the only supported field is + * "size". + * @return array + */ + public function stream_stat() + { + return array( + 'size' => strlen($this->data), + ); + } + + // Methods used by stream_wrapper_register() that are not implemented: + // bool stream_flush ( void ) + // int stream_write ( string data ) + // bool rename ( string path_from, string path_to ) + // bool mkdir ( string path, int mode, int options ) + // bool rmdir ( string path, int options ) + // bool dir_opendir ( string path, int options ) + // array url_stat ( string path, int flags ) + // string dir_readdir ( void ) + // bool dir_rewinddir ( void ) + // bool dir_closedir ( void ) +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS.php new file mode 100644 index 0000000..4db0ae4 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS.php @@ -0,0 +1,230 @@ +<?php +/* vim: set expandtab tabstop=4 shiftwidth=4: */ +// +----------------------------------------------------------------------+ +// | PHP Version 4 | +// +----------------------------------------------------------------------+ +// | Copyright (c) 1997-2002 The PHP Group | +// +----------------------------------------------------------------------+ +// | This source file is subject to version 2.02 of the PHP license, | +// | that is bundled with this package in the file LICENSE, and is | +// | available at through the world-wide-web at | +// | http://www.php.net/license/2_02.txt. | +// | If you did not receive a copy of the PHP license and are unable to | +// | obtain it through the world-wide-web, please send a note to | +// | license@php.net so we can mail you a copy immediately. | +// +----------------------------------------------------------------------+ +// | Author: Xavier Noguer <xnoguer@php.net> | +// | Based on OLE::Storage_Lite by Kawai, Takanori | +// +----------------------------------------------------------------------+ +// +// $Id: PPS.php,v 1.7 2007/02/13 21:00:42 schmidt Exp $ + + +/** +* Class for creating PPS's for OLE containers +* +* @author Xavier Noguer <xnoguer@php.net> +* @category PHPExcel +* @package PHPExcel_Shared_OLE +*/ +class PHPExcel_Shared_OLE_PPS +{ + /** + * The PPS index + * @var integer + */ + public $No; + + /** + * The PPS name (in Unicode) + * @var string + */ + public $Name; + + /** + * The PPS type. Dir, Root or File + * @var integer + */ + public $Type; + + /** + * The index of the previous PPS + * @var integer + */ + public $PrevPps; + + /** + * The index of the next PPS + * @var integer + */ + public $NextPps; + + /** + * The index of it's first child if this is a Dir or Root PPS + * @var integer + */ + public $DirPps; + + /** + * A timestamp + * @var integer + */ + public $Time1st; + + /** + * A timestamp + * @var integer + */ + public $Time2nd; + + /** + * Starting block (small or big) for this PPS's data inside the container + * @var integer + */ + public $_StartBlock; + + /** + * The size of the PPS's data (in bytes) + * @var integer + */ + public $Size; + + /** + * The PPS's data (only used if it's not using a temporary file) + * @var string + */ + public $_data; + + /** + * Array of child PPS's (only used by Root and Dir PPS's) + * @var array + */ + public $children = array(); + + /** + * Pointer to OLE container + * @var OLE + */ + public $ole; + + /** + * The constructor + * + * @access public + * @param integer $No The PPS index + * @param string $name The PPS name + * @param integer $type The PPS type. Dir, Root or File + * @param integer $prev The index of the previous PPS + * @param integer $next The index of the next PPS + * @param integer $dir The index of it's first child if this is a Dir or Root PPS + * @param integer $time_1st A timestamp + * @param integer $time_2nd A timestamp + * @param string $data The (usually binary) source data of the PPS + * @param array $children Array containing children PPS for this PPS + */ + public function __construct($No, $name, $type, $prev, $next, $dir, $time_1st, $time_2nd, $data, $children) + { + $this->No = $No; + $this->Name = $name; + $this->Type = $type; + $this->PrevPps = $prev; + $this->NextPps = $next; + $this->DirPps = $dir; + $this->Time1st = $time_1st; + $this->Time2nd = $time_2nd; + $this->_data = $data; + $this->children = $children; + if ($data != '') { + $this->Size = strlen($data); + } else { + $this->Size = 0; + } + } + + /** + * Returns the amount of data saved for this PPS + * + * @access public + * @return integer The amount of data (in bytes) + */ + public function _DataLen() + { + if (!isset($this->_data)) { + return 0; + } + //if (isset($this->_PPS_FILE)) { + // fseek($this->_PPS_FILE, 0); + // $stats = fstat($this->_PPS_FILE); + // return $stats[7]; + //} else { + return strlen($this->_data); + //} + } + + /** + * Returns a string with the PPS's WK (What is a WK?) + * + * @access public + * @return string The binary string + */ + public function _getPpsWk() + { + $ret = str_pad($this->Name,64,"\x00"); + + $ret .= pack("v", strlen($this->Name) + 2) // 66 + . pack("c", $this->Type) // 67 + . pack("c", 0x00) //UK // 68 + . pack("V", $this->PrevPps) //Prev // 72 + . pack("V", $this->NextPps) //Next // 76 + . pack("V", $this->DirPps) //Dir // 80 + . "\x00\x09\x02\x00" // 84 + . "\x00\x00\x00\x00" // 88 + . "\xc0\x00\x00\x00" // 92 + . "\x00\x00\x00\x46" // 96 // Seems to be ok only for Root + . "\x00\x00\x00\x00" // 100 + . PHPExcel_Shared_OLE::LocalDate2OLE($this->Time1st) // 108 + . PHPExcel_Shared_OLE::LocalDate2OLE($this->Time2nd) // 116 + . pack("V", isset($this->_StartBlock)? + $this->_StartBlock:0) // 120 + . pack("V", $this->Size) // 124 + . pack("V", 0); // 128 + return $ret; + } + + /** + * Updates index and pointers to previous, next and children PPS's for this + * PPS. I don't think it'll work with Dir PPS's. + * + * @access public + * @param array &$raList Reference to the array of PPS's for the whole OLE + * container + * @return integer The index for this PPS + */ + public static function _savePpsSetPnt(&$raList, $to_save, $depth = 0) + { + if ( !is_array($to_save) || (empty($to_save)) ) { + return 0xFFFFFFFF; + } elseif( count($to_save) == 1 ) { + $cnt = count($raList); + // If the first entry, it's the root... Don't clone it! + $raList[$cnt] = ( $depth == 0 ) ? $to_save[0] : clone $to_save[0]; + $raList[$cnt]->No = $cnt; + $raList[$cnt]->PrevPps = 0xFFFFFFFF; + $raList[$cnt]->NextPps = 0xFFFFFFFF; + $raList[$cnt]->DirPps = self::_savePpsSetPnt($raList, @$raList[$cnt]->children, $depth++); + } else { + $iPos = floor(count($to_save) / 2); + $aPrev = array_slice($to_save, 0, $iPos); + $aNext = array_slice($to_save, $iPos + 1); + $cnt = count($raList); + // If the first entry, it's the root... Don't clone it! + $raList[$cnt] = ( $depth == 0 ) ? $to_save[$iPos] : clone $to_save[$iPos]; + $raList[$cnt]->No = $cnt; + $raList[$cnt]->PrevPps = self::_savePpsSetPnt($raList, $aPrev, $depth++); + $raList[$cnt]->NextPps = self::_savePpsSetPnt($raList, $aNext, $depth++); + $raList[$cnt]->DirPps = self::_savePpsSetPnt($raList, @$raList[$cnt]->children, $depth++); + + } + return $cnt; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS/File.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS/File.php new file mode 100644 index 0000000..f061f56 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS/File.php @@ -0,0 +1,84 @@ +<?php +/* vim: set expandtab tabstop=4 shiftwidth=4: */ +// +----------------------------------------------------------------------+ +// | PHP Version 4 | +// +----------------------------------------------------------------------+ +// | Copyright (c) 1997-2002 The PHP Group | +// +----------------------------------------------------------------------+ +// | This source file is subject to version 2.02 of the PHP license, | +// | that is bundled with this package in the file LICENSE, and is | +// | available at through the world-wide-web at | +// | http://www.php.net/license/2_02.txt. | +// | If you did not receive a copy of the PHP license and are unable to | +// | obtain it through the world-wide-web, please send a note to | +// | license@php.net so we can mail you a copy immediately. | +// +----------------------------------------------------------------------+ +// | Author: Xavier Noguer <xnoguer@php.net> | +// | Based on OLE::Storage_Lite by Kawai, Takanori | +// +----------------------------------------------------------------------+ +// +// $Id: File.php,v 1.11 2007/02/13 21:00:42 schmidt Exp $ + + +/** +* Class for creating File PPS's for OLE containers +* +* @author Xavier Noguer <xnoguer@php.net> +* @category PHPExcel +* @package PHPExcel_Shared_OLE +*/ +class PHPExcel_Shared_OLE_PPS_File extends PHPExcel_Shared_OLE_PPS + { + /** + * The constructor + * + * @access public + * @param string $name The name of the file (in Unicode) + * @see OLE::Asc2Ucs() + */ + public function __construct($name) + { + parent::__construct( + null, + $name, + PHPExcel_Shared_OLE::OLE_PPS_TYPE_FILE, + null, + null, + null, + null, + null, + '', + array()); + } + + /** + * Initialization method. Has to be called right after OLE_PPS_File(). + * + * @access public + * @return mixed true on success + */ + public function init() + { + return true; + } + + /** + * Append data to PPS + * + * @access public + * @param string $data The data to append + */ + public function append($data) + { + $this->_data .= $data; + } + + /** + * Returns a stream for reading this file using fread() etc. + * @return resource a read-only stream + */ + public function getStream() + { + $this->ole->getStream($this); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS/Root.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS/Root.php new file mode 100644 index 0000000..7046a0a --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS/Root.php @@ -0,0 +1,467 @@ +<?php +/* vim: set expandtab tabstop=4 shiftwidth=4: */ +// +----------------------------------------------------------------------+ +// | PHP Version 4 | +// +----------------------------------------------------------------------+ +// | Copyright (c) 1997-2002 The PHP Group | +// +----------------------------------------------------------------------+ +// | This source file is subject to version 2.02 of the PHP license, | +// | that is bundled with this package in the file LICENSE, and is | +// | available at through the world-wide-web at | +// | http://www.php.net/license/2_02.txt. | +// | If you did not receive a copy of the PHP license and are unable to | +// | obtain it through the world-wide-web, please send a note to | +// | license@php.net so we can mail you a copy immediately. | +// +----------------------------------------------------------------------+ +// | Author: Xavier Noguer <xnoguer@php.net> | +// | Based on OLE::Storage_Lite by Kawai, Takanori | +// +----------------------------------------------------------------------+ +// +// $Id: Root.php,v 1.9 2005/04/23 21:53:49 dufuz Exp $ + + +/** +* Class for creating Root PPS's for OLE containers +* +* @author Xavier Noguer <xnoguer@php.net> +* @category PHPExcel +* @package PHPExcel_Shared_OLE +*/ +class PHPExcel_Shared_OLE_PPS_Root extends PHPExcel_Shared_OLE_PPS + { + + /** + * Directory for temporary files + * @var string + */ + protected $_tmp_dir = NULL; + + /** + * @param integer $time_1st A timestamp + * @param integer $time_2nd A timestamp + */ + public function __construct($time_1st, $time_2nd, $raChild) + { + $this->_tempDir = PHPExcel_Shared_File::sys_get_temp_dir(); + + parent::__construct( + null, + PHPExcel_Shared_OLE::Asc2Ucs('Root Entry'), + PHPExcel_Shared_OLE::OLE_PPS_TYPE_ROOT, + null, + null, + null, + $time_1st, + $time_2nd, + null, + $raChild); + } + + /** + * Method for saving the whole OLE container (including files). + * In fact, if called with an empty argument (or '-'), it saves to a + * temporary file and then outputs it's contents to stdout. + * If a resource pointer to a stream created by fopen() is passed + * it will be used, but you have to close such stream by yourself. + * + * @param string|resource $filename The name of the file or stream where to save the OLE container. + * @access public + * @return mixed true on success + */ + public function save($filename) + { + // Initial Setting for saving + $this->_BIG_BLOCK_SIZE = pow(2, + ((isset($this->_BIG_BLOCK_SIZE))? self::_adjust2($this->_BIG_BLOCK_SIZE) : 9)); + $this->_SMALL_BLOCK_SIZE= pow(2, + ((isset($this->_SMALL_BLOCK_SIZE))? self::_adjust2($this->_SMALL_BLOCK_SIZE): 6)); + + if (is_resource($filename)) { + $this->_FILEH_ = $filename; + } else if ($filename == '-' || $filename == '') { + if ($this->_tmp_dir === NULL) + $this->_tmp_dir = PHPExcel_Shared_File::sys_get_temp_dir(); + $this->_tmp_filename = tempnam($this->_tmp_dir, "OLE_PPS_Root"); + $this->_FILEH_ = fopen($this->_tmp_filename,"w+b"); + if ($this->_FILEH_ == false) { + throw new Exception("Can't create temporary file."); + } + } else { + $this->_FILEH_ = fopen($filename, "wb"); + } + if ($this->_FILEH_ == false) { + throw new Exception("Can't open $filename. It may be in use or protected."); + } + // Make an array of PPS's (for Save) + $aList = array(); + PHPExcel_Shared_OLE_PPS::_savePpsSetPnt($aList, array($this)); + // calculate values for header + list($iSBDcnt, $iBBcnt, $iPPScnt) = $this->_calcSize($aList); //, $rhInfo); + // Save Header + $this->_saveHeader($iSBDcnt, $iBBcnt, $iPPScnt); + + // Make Small Data string (write SBD) + $this->_data = $this->_makeSmallData($aList); + + // Write BB + $this->_saveBigData($iSBDcnt, $aList); + // Write PPS + $this->_savePps($aList); + // Write Big Block Depot and BDList and Adding Header informations + $this->_saveBbd($iSBDcnt, $iBBcnt, $iPPScnt); + + if (!is_resource($filename)) { + fclose($this->_FILEH_); + } + + return true; + } + + /** + * Calculate some numbers + * + * @access public + * @param array $raList Reference to an array of PPS's + * @return array The array of numbers + */ + public function _calcSize(&$raList) + { + // Calculate Basic Setting + list($iSBDcnt, $iBBcnt, $iPPScnt) = array(0,0,0); + $iSmallLen = 0; + $iSBcnt = 0; + $iCount = count($raList); + for ($i = 0; $i < $iCount; ++$i) { + if ($raList[$i]->Type == PHPExcel_Shared_OLE::OLE_PPS_TYPE_FILE) { + $raList[$i]->Size = $raList[$i]->_DataLen(); + if ($raList[$i]->Size < PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL) { + $iSBcnt += floor($raList[$i]->Size / $this->_SMALL_BLOCK_SIZE) + + (($raList[$i]->Size % $this->_SMALL_BLOCK_SIZE)? 1: 0); + } else { + $iBBcnt += (floor($raList[$i]->Size / $this->_BIG_BLOCK_SIZE) + + (($raList[$i]->Size % $this->_BIG_BLOCK_SIZE)? 1: 0)); + } + } + } + $iSmallLen = $iSBcnt * $this->_SMALL_BLOCK_SIZE; + $iSlCnt = floor($this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE); + $iSBDcnt = floor($iSBcnt / $iSlCnt) + (($iSBcnt % $iSlCnt)? 1:0); + $iBBcnt += (floor($iSmallLen / $this->_BIG_BLOCK_SIZE) + + (( $iSmallLen % $this->_BIG_BLOCK_SIZE)? 1: 0)); + $iCnt = count($raList); + $iBdCnt = $this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_PPS_SIZE; + $iPPScnt = (floor($iCnt/$iBdCnt) + (($iCnt % $iBdCnt)? 1: 0)); + + return array($iSBDcnt, $iBBcnt, $iPPScnt); + } + + /** + * Helper function for caculating a magic value for block sizes + * + * @access public + * @param integer $i2 The argument + * @see save() + * @return integer + */ + private static function _adjust2($i2) + { + $iWk = log($i2)/log(2); + return ($iWk > floor($iWk))? floor($iWk)+1:$iWk; + } + + /** + * Save OLE header + * + * @access public + * @param integer $iSBDcnt + * @param integer $iBBcnt + * @param integer $iPPScnt + */ + public function _saveHeader($iSBDcnt, $iBBcnt, $iPPScnt) + { + $FILE = $this->_FILEH_; + + // Calculate Basic Setting + $iBlCnt = $this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE; + $i1stBdL = ($this->_BIG_BLOCK_SIZE - 0x4C) / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE; + + $iBdExL = 0; + $iAll = $iBBcnt + $iPPScnt + $iSBDcnt; + $iAllW = $iAll; + $iBdCntW = floor($iAllW / $iBlCnt) + (($iAllW % $iBlCnt)? 1: 0); + $iBdCnt = floor(($iAll + $iBdCntW) / $iBlCnt) + ((($iAllW+$iBdCntW) % $iBlCnt)? 1: 0); + + // Calculate BD count + if ($iBdCnt > $i1stBdL) { + while (1) { + ++$iBdExL; + ++$iAllW; + $iBdCntW = floor($iAllW / $iBlCnt) + (($iAllW % $iBlCnt)? 1: 0); + $iBdCnt = floor(($iAllW + $iBdCntW) / $iBlCnt) + ((($iAllW+$iBdCntW) % $iBlCnt)? 1: 0); + if ($iBdCnt <= ($iBdExL*$iBlCnt+ $i1stBdL)) { + break; + } + } + } + + // Save Header + fwrite($FILE, + "\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1" + . "\x00\x00\x00\x00" + . "\x00\x00\x00\x00" + . "\x00\x00\x00\x00" + . "\x00\x00\x00\x00" + . pack("v", 0x3b) + . pack("v", 0x03) + . pack("v", -2) + . pack("v", 9) + . pack("v", 6) + . pack("v", 0) + . "\x00\x00\x00\x00" + . "\x00\x00\x00\x00" + . pack("V", $iBdCnt) + . pack("V", $iBBcnt+$iSBDcnt) //ROOT START + . pack("V", 0) + . pack("V", 0x1000) + . pack("V", $iSBDcnt ? 0 : -2) //Small Block Depot + . pack("V", $iSBDcnt) + ); + // Extra BDList Start, Count + if ($iBdCnt < $i1stBdL) { + fwrite($FILE, + pack("V", -2) // Extra BDList Start + . pack("V", 0) // Extra BDList Count + ); + } else { + fwrite($FILE, pack("V", $iAll+$iBdCnt) . pack("V", $iBdExL)); + } + + // BDList + for ($i = 0; $i < $i1stBdL && $i < $iBdCnt; ++$i) { + fwrite($FILE, pack("V", $iAll+$i)); + } + if ($i < $i1stBdL) { + $jB = $i1stBdL - $i; + for ($j = 0; $j < $jB; ++$j) { + fwrite($FILE, (pack("V", -1))); + } + } + } + + /** + * Saving big data (PPS's with data bigger than PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL) + * + * @access public + * @param integer $iStBlk + * @param array &$raList Reference to array of PPS's + */ + public function _saveBigData($iStBlk, &$raList) + { + $FILE = $this->_FILEH_; + + // cycle through PPS's + $iCount = count($raList); + for ($i = 0; $i < $iCount; ++$i) { + if ($raList[$i]->Type != PHPExcel_Shared_OLE::OLE_PPS_TYPE_DIR) { + $raList[$i]->Size = $raList[$i]->_DataLen(); + if (($raList[$i]->Size >= PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL) || + (($raList[$i]->Type == PHPExcel_Shared_OLE::OLE_PPS_TYPE_ROOT) && isset($raList[$i]->_data))) + { + // Write Data + //if (isset($raList[$i]->_PPS_FILE)) { + // $iLen = 0; + // fseek($raList[$i]->_PPS_FILE, 0); // To The Top + // while($sBuff = fread($raList[$i]->_PPS_FILE, 4096)) { + // $iLen += strlen($sBuff); + // fwrite($FILE, $sBuff); + // } + //} else { + fwrite($FILE, $raList[$i]->_data); + //} + + if ($raList[$i]->Size % $this->_BIG_BLOCK_SIZE) { + fwrite($FILE, str_repeat("\x00", $this->_BIG_BLOCK_SIZE - ($raList[$i]->Size % $this->_BIG_BLOCK_SIZE))); + } + // Set For PPS + $raList[$i]->_StartBlock = $iStBlk; + $iStBlk += + (floor($raList[$i]->Size / $this->_BIG_BLOCK_SIZE) + + (($raList[$i]->Size % $this->_BIG_BLOCK_SIZE)? 1: 0)); + } + // Close file for each PPS, and unlink it + //if (isset($raList[$i]->_PPS_FILE)) { + // fclose($raList[$i]->_PPS_FILE); + // $raList[$i]->_PPS_FILE = null; + // unlink($raList[$i]->_tmp_filename); + //} + } + } + } + + /** + * get small data (PPS's with data smaller than PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL) + * + * @access public + * @param array &$raList Reference to array of PPS's + */ + public function _makeSmallData(&$raList) + { + $sRes = ''; + $FILE = $this->_FILEH_; + $iSmBlk = 0; + + $iCount = count($raList); + for ($i = 0; $i < $iCount; ++$i) { + // Make SBD, small data string + if ($raList[$i]->Type == PHPExcel_Shared_OLE::OLE_PPS_TYPE_FILE) { + if ($raList[$i]->Size <= 0) { + continue; + } + if ($raList[$i]->Size < PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL) { + $iSmbCnt = floor($raList[$i]->Size / $this->_SMALL_BLOCK_SIZE) + + (($raList[$i]->Size % $this->_SMALL_BLOCK_SIZE)? 1: 0); + // Add to SBD + $jB = $iSmbCnt - 1; + for ($j = 0; $j < $jB; ++$j) { + fwrite($FILE, pack("V", $j+$iSmBlk+1)); + } + fwrite($FILE, pack("V", -2)); + + //// Add to Data String(this will be written for RootEntry) + //if ($raList[$i]->_PPS_FILE) { + // fseek($raList[$i]->_PPS_FILE, 0); // To The Top + // while ($sBuff = fread($raList[$i]->_PPS_FILE, 4096)) { + // $sRes .= $sBuff; + // } + //} else { + $sRes .= $raList[$i]->_data; + //} + if ($raList[$i]->Size % $this->_SMALL_BLOCK_SIZE) { + $sRes .= str_repeat("\x00",$this->_SMALL_BLOCK_SIZE - ($raList[$i]->Size % $this->_SMALL_BLOCK_SIZE)); + } + // Set for PPS + $raList[$i]->_StartBlock = $iSmBlk; + $iSmBlk += $iSmbCnt; + } + } + } + $iSbCnt = floor($this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE); + if ($iSmBlk % $iSbCnt) { + $iB = $iSbCnt - ($iSmBlk % $iSbCnt); + for ($i = 0; $i < $iB; ++$i) { + fwrite($FILE, pack("V", -1)); + } + } + return $sRes; + } + + /** + * Saves all the PPS's WKs + * + * @access public + * @param array $raList Reference to an array with all PPS's + */ + public function _savePps(&$raList) + { + // Save each PPS WK + $iC = count($raList); + for ($i = 0; $i < $iC; ++$i) { + fwrite($this->_FILEH_, $raList[$i]->_getPpsWk()); + } + // Adjust for Block + $iCnt = count($raList); + $iBCnt = $this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_PPS_SIZE; + if ($iCnt % $iBCnt) { + fwrite($this->_FILEH_, str_repeat("\x00",($iBCnt - ($iCnt % $iBCnt)) * PHPExcel_Shared_OLE::OLE_PPS_SIZE)); + } + } + + /** + * Saving Big Block Depot + * + * @access public + * @param integer $iSbdSize + * @param integer $iBsize + * @param integer $iPpsCnt + */ + public function _saveBbd($iSbdSize, $iBsize, $iPpsCnt) + { + $FILE = $this->_FILEH_; + // Calculate Basic Setting + $iBbCnt = $this->_BIG_BLOCK_SIZE / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE; + $i1stBdL = ($this->_BIG_BLOCK_SIZE - 0x4C) / PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE; + + $iBdExL = 0; + $iAll = $iBsize + $iPpsCnt + $iSbdSize; + $iAllW = $iAll; + $iBdCntW = floor($iAllW / $iBbCnt) + (($iAllW % $iBbCnt)? 1: 0); + $iBdCnt = floor(($iAll + $iBdCntW) / $iBbCnt) + ((($iAllW+$iBdCntW) % $iBbCnt)? 1: 0); + // Calculate BD count + if ($iBdCnt >$i1stBdL) { + while (1) { + ++$iBdExL; + ++$iAllW; + $iBdCntW = floor($iAllW / $iBbCnt) + (($iAllW % $iBbCnt)? 1: 0); + $iBdCnt = floor(($iAllW + $iBdCntW) / $iBbCnt) + ((($iAllW+$iBdCntW) % $iBbCnt)? 1: 0); + if ($iBdCnt <= ($iBdExL*$iBbCnt+ $i1stBdL)) { + break; + } + } + } + + // Making BD + // Set for SBD + if ($iSbdSize > 0) { + for ($i = 0; $i < ($iSbdSize - 1); ++$i) { + fwrite($FILE, pack("V", $i+1)); + } + fwrite($FILE, pack("V", -2)); + } + // Set for B + for ($i = 0; $i < ($iBsize - 1); ++$i) { + fwrite($FILE, pack("V", $i+$iSbdSize+1)); + } + fwrite($FILE, pack("V", -2)); + + // Set for PPS + for ($i = 0; $i < ($iPpsCnt - 1); ++$i) { + fwrite($FILE, pack("V", $i+$iSbdSize+$iBsize+1)); + } + fwrite($FILE, pack("V", -2)); + // Set for BBD itself ( 0xFFFFFFFD : BBD) + for ($i = 0; $i < $iBdCnt; ++$i) { + fwrite($FILE, pack("V", 0xFFFFFFFD)); + } + // Set for ExtraBDList + for ($i = 0; $i < $iBdExL; ++$i) { + fwrite($FILE, pack("V", 0xFFFFFFFC)); + } + // Adjust for Block + if (($iAllW + $iBdCnt) % $iBbCnt) { + $iBlock = ($iBbCnt - (($iAllW + $iBdCnt) % $iBbCnt)); + for ($i = 0; $i < $iBlock; ++$i) { + fwrite($FILE, pack("V", -1)); + } + } + // Extra BDList + if ($iBdCnt > $i1stBdL) { + $iN=0; + $iNb=0; + for ($i = $i1stBdL;$i < $iBdCnt; $i++, ++$iN) { + if ($iN >= ($iBbCnt - 1)) { + $iN = 0; + ++$iNb; + fwrite($FILE, pack("V", $iAll+$iBdCnt+$iNb)); + } + fwrite($FILE, pack("V", $iBsize+$iSbdSize+$iPpsCnt+$i)); + } + if (($iBdCnt-$i1stBdL) % ($iBbCnt-1)) { + $iB = ($iBbCnt - 1) - (($iBdCnt - $i1stBdL) % ($iBbCnt - 1)); + for ($i = 0; $i < $iB; ++$i) { + fwrite($FILE, pack("V", -1)); + } + } + fwrite($FILE, pack("V", -2)); + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS/_notes/dwsync.xml new file mode 100644 index 0000000..7d007c3 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/PPS/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="File.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Root.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="File.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="Root.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="File.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="Root.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="File.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560014236430" remote="131260196400000000" Dst="1" /> +<file name="Root.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560014746170" remote="131260196400000000" Dst="1" /> +<file name="File.php" server="62.244.88.21/amashow/" local="131414752304389292" remote="131414680800000000" Dst="2" /> +<file name="Root.php" server="62.244.88.21/amashow/" local="131414752304639073" remote="131414680800000000" Dst="2" /> +<file name="File.php" server="62.244.88.21/deciday/" local="131919461302404416" remote="131826017400000000" Dst="1" /> +<file name="Root.php" server="62.244.88.21/deciday/" local="131919461303393546" remote="131826017400000000" Dst="1" /> +<file name="File.php" server="62.244.88.21/deciday_18/" local="131414752304389292" remote="131825945400000000" Dst="2" /> +<file name="Root.php" server="62.244.88.21/deciday_18/" local="131414752304639073" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/_notes/dwsync.xml new file mode 100644 index 0000000..47bc4ab --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLE/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="ChainedBlockStream.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="PPS.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="ChainedBlockStream.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="PPS.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="ChainedBlockStream.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="PPS.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="ChainedBlockStream.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560013047027" remote="131260196400000000" Dst="1" /> +<file name="PPS.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560013474882" remote="131260196400000000" Dst="1" /> +<file name="ChainedBlockStream.php" server="62.244.88.21/amashow/" local="131414752303287240" remote="131414680800000000" Dst="2" /> +<file name="PPS.php" server="62.244.88.21/amashow/" local="131414752303495048" remote="131414680800000000" Dst="2" /> +<file name="ChainedBlockStream.php" server="62.244.88.21/deciday/" local="131919461302396829" remote="131826017400000000" Dst="1" /> +<file name="PPS.php" server="62.244.88.21/deciday/" local="131919461303657686" remote="131826017400000000" Dst="1" /> +<file name="ChainedBlockStream.php" server="62.244.88.21/deciday_18/" local="131414752303287240" remote="131825945400000000" Dst="2" /> +<file name="PPS.php" server="62.244.88.21/deciday_18/" local="131414752303495048" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/OLERead.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLERead.php new file mode 100644 index 0000000..2a5eb7d --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/OLERead.php @@ -0,0 +1,317 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +define('IDENTIFIER_OLE', pack('CCCCCCCC', 0xd0, 0xcf, 0x11, 0xe0, 0xa1, 0xb1, 0x1a, 0xe1)); + +class PHPExcel_Shared_OLERead { + private $data = ''; + + // OLE identifier + const IDENTIFIER_OLE = IDENTIFIER_OLE; + + // Size of a sector = 512 bytes + const BIG_BLOCK_SIZE = 0x200; + + // Size of a short sector = 64 bytes + const SMALL_BLOCK_SIZE = 0x40; + + // Size of a directory entry always = 128 bytes + const PROPERTY_STORAGE_BLOCK_SIZE = 0x80; + + // Minimum size of a standard stream = 4096 bytes, streams smaller than this are stored as short streams + const SMALL_BLOCK_THRESHOLD = 0x1000; + + // header offsets + const NUM_BIG_BLOCK_DEPOT_BLOCKS_POS = 0x2c; + const ROOT_START_BLOCK_POS = 0x30; + const SMALL_BLOCK_DEPOT_BLOCK_POS = 0x3c; + const EXTENSION_BLOCK_POS = 0x44; + const NUM_EXTENSION_BLOCK_POS = 0x48; + const BIG_BLOCK_DEPOT_BLOCKS_POS = 0x4c; + + // property storage offsets (directory offsets) + const SIZE_OF_NAME_POS = 0x40; + const TYPE_POS = 0x42; + const START_BLOCK_POS = 0x74; + const SIZE_POS = 0x78; + + + + public $wrkbook = null; + public $summaryInformation = null; + public $documentSummaryInformation = null; + + + /** + * Read the file + * + * @param $sFileName string Filename + * @throws Exception + */ + public function read($sFileName) + { + // Check if file exists and is readable + if(!is_readable($sFileName)) { + throw new Exception("Could not open " . $sFileName . " for reading! File does not exist, or it is not readable."); + } + + // Get the file data + $this->data = file_get_contents($sFileName); + + // Check OLE identifier + if (substr($this->data, 0, 8) != self::IDENTIFIER_OLE) { + throw new Exception('The filename ' . $sFileName . ' is not recognised as an OLE file'); + } + + // Total number of sectors used for the SAT + $this->numBigBlockDepotBlocks = self::_GetInt4d($this->data, self::NUM_BIG_BLOCK_DEPOT_BLOCKS_POS); + + // SecID of the first sector of the directory stream + $this->rootStartBlock = self::_GetInt4d($this->data, self::ROOT_START_BLOCK_POS); + + // SecID of the first sector of the SSAT (or -2 if not extant) + $this->sbdStartBlock = self::_GetInt4d($this->data, self::SMALL_BLOCK_DEPOT_BLOCK_POS); + + // SecID of the first sector of the MSAT (or -2 if no additional sectors are used) + $this->extensionBlock = self::_GetInt4d($this->data, self::EXTENSION_BLOCK_POS); + + // Total number of sectors used by MSAT + $this->numExtensionBlocks = self::_GetInt4d($this->data, self::NUM_EXTENSION_BLOCK_POS); + + $bigBlockDepotBlocks = array(); + $pos = self::BIG_BLOCK_DEPOT_BLOCKS_POS; + + $bbdBlocks = $this->numBigBlockDepotBlocks; + + if ($this->numExtensionBlocks != 0) { + $bbdBlocks = (self::BIG_BLOCK_SIZE - self::BIG_BLOCK_DEPOT_BLOCKS_POS)/4; + } + + for ($i = 0; $i < $bbdBlocks; ++$i) { + $bigBlockDepotBlocks[$i] = self::_GetInt4d($this->data, $pos); + $pos += 4; + } + + for ($j = 0; $j < $this->numExtensionBlocks; ++$j) { + $pos = ($this->extensionBlock + 1) * self::BIG_BLOCK_SIZE; + $blocksToRead = min($this->numBigBlockDepotBlocks - $bbdBlocks, self::BIG_BLOCK_SIZE / 4 - 1); + + for ($i = $bbdBlocks; $i < $bbdBlocks + $blocksToRead; ++$i) { + $bigBlockDepotBlocks[$i] = self::_GetInt4d($this->data, $pos); + $pos += 4; + } + + $bbdBlocks += $blocksToRead; + if ($bbdBlocks < $this->numBigBlockDepotBlocks) { + $this->extensionBlock = self::_GetInt4d($this->data, $pos); + } + } + + $pos = $index = 0; + $this->bigBlockChain = array(); + + $bbs = self::BIG_BLOCK_SIZE / 4; + for ($i = 0; $i < $this->numBigBlockDepotBlocks; ++$i) { + $pos = ($bigBlockDepotBlocks[$i] + 1) * self::BIG_BLOCK_SIZE; + + for ($j = 0 ; $j < $bbs; ++$j) { + $this->bigBlockChain[$index] = self::_GetInt4d($this->data, $pos); + $pos += 4 ; + ++$index; + } + } + + $pos = $index = 0; + $sbdBlock = $this->sbdStartBlock; + $this->smallBlockChain = array(); + + while ($sbdBlock != -2) { + $pos = ($sbdBlock + 1) * self::BIG_BLOCK_SIZE; + + for ($j = 0; $j < $bbs; ++$j) { + $this->smallBlockChain[$index] = self::_GetInt4d($this->data, $pos); + $pos += 4; + ++$index; + } + + $sbdBlock = $this->bigBlockChain[$sbdBlock]; + } + + // read the directory stream + $block = $this->rootStartBlock; + $this->entry = $this->_readData($block); + + $this->_readPropertySets(); + } + + /** + * Extract binary stream data + * + * @return string + */ + public function getStream($stream) + { + if ($stream === NULL) { + return null; + } + + $streamData = ''; + + if ($this->props[$stream]['size'] < self::SMALL_BLOCK_THRESHOLD) { + $rootdata = $this->_readData($this->props[$this->rootentry]['startBlock']); + + $block = $this->props[$stream]['startBlock']; + + while ($block != -2) { + $pos = $block * self::SMALL_BLOCK_SIZE; + $streamData .= substr($rootdata, $pos, self::SMALL_BLOCK_SIZE); + + $block = $this->smallBlockChain[$block]; + } + + return $streamData; + } else { + $numBlocks = $this->props[$stream]['size'] / self::BIG_BLOCK_SIZE; + if ($this->props[$stream]['size'] % self::BIG_BLOCK_SIZE != 0) { + ++$numBlocks; + } + + if ($numBlocks == 0) return ''; + + $block = $this->props[$stream]['startBlock']; + + while ($block != -2) { + $pos = ($block + 1) * self::BIG_BLOCK_SIZE; + $streamData .= substr($this->data, $pos, self::BIG_BLOCK_SIZE); + $block = $this->bigBlockChain[$block]; + } + + return $streamData; + } + } + + /** + * Read a standard stream (by joining sectors using information from SAT) + * + * @param int $bl Sector ID where the stream starts + * @return string Data for standard stream + */ + private function _readData($bl) + { + $block = $bl; + $data = ''; + + while ($block != -2) { + $pos = ($block + 1) * self::BIG_BLOCK_SIZE; + $data .= substr($this->data, $pos, self::BIG_BLOCK_SIZE); + $block = $this->bigBlockChain[$block]; + } + return $data; + } + + /** + * Read entries in the directory stream. + */ + private function _readPropertySets() { + $offset = 0; + + // loop through entires, each entry is 128 bytes + $entryLen = strlen($this->entry); + while ($offset < $entryLen) { + // entry data (128 bytes) + $d = substr($this->entry, $offset, self::PROPERTY_STORAGE_BLOCK_SIZE); + + // size in bytes of name + $nameSize = ord($d[self::SIZE_OF_NAME_POS]) | (ord($d[self::SIZE_OF_NAME_POS+1]) << 8); + + // type of entry + $type = ord($d[self::TYPE_POS]); + + // sectorID of first sector or short sector, if this entry refers to a stream (the case with workbook) + // sectorID of first sector of the short-stream container stream, if this entry is root entry + $startBlock = self::_GetInt4d($d, self::START_BLOCK_POS); + + $size = self::_GetInt4d($d, self::SIZE_POS); + + $name = str_replace("\x00", "", substr($d,0,$nameSize)); + + $this->props[] = array ( + 'name' => $name, + 'type' => $type, + 'startBlock' => $startBlock, + 'size' => $size); + + // Workbook directory entry (BIFF5 uses Book, BIFF8 uses Workbook) + if (($name == 'Workbook') || ($name == 'Book') || ($name == 'WORKBOOK') || ($name == 'BOOK')) { + $this->wrkbook = count($this->props) - 1; + } + + // Root entry + if ($name == 'Root Entry' || $name == 'ROOT ENTRY' || $name == 'R') { + $this->rootentry = count($this->props) - 1; + } + + // Summary information + if ($name == chr(5) . 'SummaryInformation') { +// echo 'Summary Information<br />'; + $this->summaryInformation = count($this->props) - 1; + } + + // Additional Document Summary information + if ($name == chr(5) . 'DocumentSummaryInformation') { +// echo 'Document Summary Information<br />'; + $this->documentSummaryInformation = count($this->props) - 1; + } + + $offset += self::PROPERTY_STORAGE_BLOCK_SIZE; + } + + } + + /** + * Read 4 bytes of data at specified position + * + * @param string $data + * @param int $pos + * @return int + */ + private static function _GetInt4d($data, $pos) + { + // FIX: represent numbers correctly on 64-bit system + // http://sourceforge.net/tracker/index.php?func=detail&aid=1487372&group_id=99160&atid=623334 + // Hacked by Andreas Rehm 2006 to ensure correct result of the <<24 block on 32 and 64bit systems + $_or_24 = ord($data[$pos + 3]); + if ($_or_24 >= 128) { + // negative number + $_ord_24 = -abs((256 - $_or_24) << 24); + } else { + $_ord_24 = ($_or_24 & 127) << 24; + } + return ord($data[$pos]) | (ord($data[$pos + 1]) << 8) | (ord($data[$pos + 2]) << 16) | $_ord_24; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/_notes/dwsync.xml new file mode 100644 index 0000000..2a6f23c --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/_notes/dwsync.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="gnu-lgpl.txt" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="pclzip.lib.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="readme.txt" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="gnu-lgpl.txt" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="readme.txt" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="pclzip.lib.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="gnu-lgpl.txt" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="readme.txt" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="pclzip.lib.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="gnu-lgpl.txt" server="62.244.88.111/actions-fendt/lisa/" local="131244560019715030" remote="131260197000000000" Dst="1" /> +<file name="readme.txt" server="62.244.88.111/actions-fendt/lisa/" local="131244560020247594" remote="131260197000000000" Dst="1" /> +<file name="pclzip.lib.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560021426658" remote="131260197000000000" Dst="1" /> +<file name="gnu-lgpl.txt" server="62.244.88.21/amashow/" local="131414752307830262" remote="131414680800000000" Dst="2" /> +<file name="readme.txt" server="62.244.88.21/amashow/" local="131414752308107113" remote="131414680800000000" Dst="2" /> +<file name="pclzip.lib.php" server="62.244.88.21/amashow/" local="131414752308762201" remote="131414680800000000" Dst="2" /> +<file name="readme.txt" server="62.244.88.21/deciday/" local="131919461308178921" remote="131826017400000000" Dst="1" /> +<file name="gnu-lgpl.txt" server="62.244.88.21/deciday/" local="131919461305930250" remote="131826017400000000" Dst="1" /> +<file name="pclzip.lib.php" server="62.244.88.21/deciday/" local="131919461317069841" remote="131826017400000000" Dst="1" /> +<file name="gnu-lgpl.txt" server="62.244.88.21/deciday_18/" local="131414752307830262" remote="131825945400000000" Dst="2" /> +<file name="readme.txt" server="62.244.88.21/deciday_18/" local="131414752308107113" remote="131825945400000000" Dst="2" /> +<file name="pclzip.lib.php" server="62.244.88.21/deciday_18/" local="131414752308762201" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt b/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt new file mode 100644 index 0000000..b1e3f5a --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt @@ -0,0 +1,504 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + 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 + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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 + + 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". + + 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. + + 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".) + + "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. + + 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 +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. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + 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. + + 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. + + (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.) + +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. + +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. + +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. + + 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. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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.) + + 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. + + 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: + + 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.) + + 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. + + 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. + + 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. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + 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. + + 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: + + 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. + + 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. + + 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. + + 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. + + 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 +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 +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. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 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. + + 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 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. + + NO WARRANTY + + 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. + + 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. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + 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). + + 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. + + <one line to give the library's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + 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 library 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 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 + +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: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + <signature of Ty Coon>, 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php new file mode 100644 index 0000000..e7facc1 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php @@ -0,0 +1,5694 @@ +<?php +// -------------------------------------------------------------------------------- +// PhpConcept Library - Zip Module 2.8.2 +// -------------------------------------------------------------------------------- +// License GNU/LGPL - Vincent Blavet - August 2009 +// http://www.phpconcept.net +// -------------------------------------------------------------------------------- +// +// Presentation : +// PclZip is a PHP library that manage ZIP archives. +// So far tests show that archives generated by PclZip are readable by +// WinZip application and other tools. +// +// Description : +// See readme.txt and http://www.phpconcept.net +// +// Warning : +// This library and the associated files are non commercial, non professional +// work. +// It should not have unexpected results. However if any damage is caused by +// this software the author can not be responsible. +// The use of this software is at the risk of the user. +// +// -------------------------------------------------------------------------------- +// $Id: pclzip.lib.php,v 1.60 2009/09/30 21:01:04 vblavet Exp $ +// -------------------------------------------------------------------------------- + + // ----- Constants + if (!defined('PCLZIP_READ_BLOCK_SIZE')) { + define( 'PCLZIP_READ_BLOCK_SIZE', 2048 ); + } + + // ----- File list separator + // In version 1.x of PclZip, the separator for file list is a space + // (which is not a very smart choice, specifically for windows paths !). + // A better separator should be a comma (,). This constant gives you the + // abilty to change that. + // However notice that changing this value, may have impact on existing + // scripts, using space separated filenames. + // Recommanded values for compatibility with older versions : + //define( 'PCLZIP_SEPARATOR', ' ' ); + // Recommanded values for smart separation of filenames. + if (!defined('PCLZIP_SEPARATOR')) { + define( 'PCLZIP_SEPARATOR', ',' ); + } + + // ----- Error configuration + // 0 : PclZip Class integrated error handling + // 1 : PclError external library error handling. By enabling this + // you must ensure that you have included PclError library. + // [2,...] : reserved for futur use + if (!defined('PCLZIP_ERROR_EXTERNAL')) { + define( 'PCLZIP_ERROR_EXTERNAL', 0 ); + } + + // ----- Optional static temporary directory + // By default temporary files are generated in the script current + // path. + // If defined : + // - MUST BE terminated by a '/'. + // - MUST be a valid, already created directory + // Samples : + // define( 'PCLZIP_TEMPORARY_DIR', '/temp/' ); + // define( 'PCLZIP_TEMPORARY_DIR', 'C:/Temp/' ); + if (!defined('PCLZIP_TEMPORARY_DIR')) { + define( 'PCLZIP_TEMPORARY_DIR', '' ); + } + + // ----- Optional threshold ratio for use of temporary files + // Pclzip sense the size of the file to add/extract and decide to + // use or not temporary file. The algorythm is looking for + // memory_limit of PHP and apply a ratio. + // threshold = memory_limit * ratio. + // Recommended values are under 0.5. Default 0.47. + // Samples : + // define( 'PCLZIP_TEMPORARY_FILE_RATIO', 0.5 ); + if (!defined('PCLZIP_TEMPORARY_FILE_RATIO')) { + define( 'PCLZIP_TEMPORARY_FILE_RATIO', 0.47 ); + } + +// -------------------------------------------------------------------------------- +// ***** UNDER THIS LINE NOTHING NEEDS TO BE MODIFIED ***** +// -------------------------------------------------------------------------------- + + // ----- Global variables + $g_pclzip_version = "2.8.2"; + + // ----- Error codes + // -1 : Unable to open file in binary write mode + // -2 : Unable to open file in binary read mode + // -3 : Invalid parameters + // -4 : File does not exist + // -5 : Filename is too long (max. 255) + // -6 : Not a valid zip file + // -7 : Invalid extracted file size + // -8 : Unable to create directory + // -9 : Invalid archive extension + // -10 : Invalid archive format + // -11 : Unable to delete file (unlink) + // -12 : Unable to rename file (rename) + // -13 : Invalid header checksum + // -14 : Invalid archive size + define( 'PCLZIP_ERR_USER_ABORTED', 2 ); + define( 'PCLZIP_ERR_NO_ERROR', 0 ); + define( 'PCLZIP_ERR_WRITE_OPEN_FAIL', -1 ); + define( 'PCLZIP_ERR_READ_OPEN_FAIL', -2 ); + define( 'PCLZIP_ERR_INVALID_PARAMETER', -3 ); + define( 'PCLZIP_ERR_MISSING_FILE', -4 ); + define( 'PCLZIP_ERR_FILENAME_TOO_LONG', -5 ); + define( 'PCLZIP_ERR_INVALID_ZIP', -6 ); + define( 'PCLZIP_ERR_BAD_EXTRACTED_FILE', -7 ); + define( 'PCLZIP_ERR_DIR_CREATE_FAIL', -8 ); + define( 'PCLZIP_ERR_BAD_EXTENSION', -9 ); + define( 'PCLZIP_ERR_BAD_FORMAT', -10 ); + define( 'PCLZIP_ERR_DELETE_FILE_FAIL', -11 ); + define( 'PCLZIP_ERR_RENAME_FILE_FAIL', -12 ); + define( 'PCLZIP_ERR_BAD_CHECKSUM', -13 ); + define( 'PCLZIP_ERR_INVALID_ARCHIVE_ZIP', -14 ); + define( 'PCLZIP_ERR_MISSING_OPTION_VALUE', -15 ); + define( 'PCLZIP_ERR_INVALID_OPTION_VALUE', -16 ); + define( 'PCLZIP_ERR_ALREADY_A_DIRECTORY', -17 ); + define( 'PCLZIP_ERR_UNSUPPORTED_COMPRESSION', -18 ); + define( 'PCLZIP_ERR_UNSUPPORTED_ENCRYPTION', -19 ); + define( 'PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE', -20 ); + define( 'PCLZIP_ERR_DIRECTORY_RESTRICTION', -21 ); + + // ----- Options values + define( 'PCLZIP_OPT_PATH', 77001 ); + define( 'PCLZIP_OPT_ADD_PATH', 77002 ); + define( 'PCLZIP_OPT_REMOVE_PATH', 77003 ); + define( 'PCLZIP_OPT_REMOVE_ALL_PATH', 77004 ); + define( 'PCLZIP_OPT_SET_CHMOD', 77005 ); + define( 'PCLZIP_OPT_EXTRACT_AS_STRING', 77006 ); + define( 'PCLZIP_OPT_NO_COMPRESSION', 77007 ); + define( 'PCLZIP_OPT_BY_NAME', 77008 ); + define( 'PCLZIP_OPT_BY_INDEX', 77009 ); + define( 'PCLZIP_OPT_BY_EREG', 77010 ); + define( 'PCLZIP_OPT_BY_PREG', 77011 ); + define( 'PCLZIP_OPT_COMMENT', 77012 ); + define( 'PCLZIP_OPT_ADD_COMMENT', 77013 ); + define( 'PCLZIP_OPT_PREPEND_COMMENT', 77014 ); + define( 'PCLZIP_OPT_EXTRACT_IN_OUTPUT', 77015 ); + define( 'PCLZIP_OPT_REPLACE_NEWER', 77016 ); + define( 'PCLZIP_OPT_STOP_ON_ERROR', 77017 ); + // Having big trouble with crypt. Need to multiply 2 long int + // which is not correctly supported by PHP ... + //define( 'PCLZIP_OPT_CRYPT', 77018 ); + define( 'PCLZIP_OPT_EXTRACT_DIR_RESTRICTION', 77019 ); + define( 'PCLZIP_OPT_TEMP_FILE_THRESHOLD', 77020 ); + define( 'PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD', 77020 ); // alias + define( 'PCLZIP_OPT_TEMP_FILE_ON', 77021 ); + define( 'PCLZIP_OPT_ADD_TEMP_FILE_ON', 77021 ); // alias + define( 'PCLZIP_OPT_TEMP_FILE_OFF', 77022 ); + define( 'PCLZIP_OPT_ADD_TEMP_FILE_OFF', 77022 ); // alias + + // ----- File description attributes + define( 'PCLZIP_ATT_FILE_NAME', 79001 ); + define( 'PCLZIP_ATT_FILE_NEW_SHORT_NAME', 79002 ); + define( 'PCLZIP_ATT_FILE_NEW_FULL_NAME', 79003 ); + define( 'PCLZIP_ATT_FILE_MTIME', 79004 ); + define( 'PCLZIP_ATT_FILE_CONTENT', 79005 ); + define( 'PCLZIP_ATT_FILE_COMMENT', 79006 ); + + // ----- Call backs values + define( 'PCLZIP_CB_PRE_EXTRACT', 78001 ); + define( 'PCLZIP_CB_POST_EXTRACT', 78002 ); + define( 'PCLZIP_CB_PRE_ADD', 78003 ); + define( 'PCLZIP_CB_POST_ADD', 78004 ); + /* For futur use + define( 'PCLZIP_CB_PRE_LIST', 78005 ); + define( 'PCLZIP_CB_POST_LIST', 78006 ); + define( 'PCLZIP_CB_PRE_DELETE', 78007 ); + define( 'PCLZIP_CB_POST_DELETE', 78008 ); + */ + + // -------------------------------------------------------------------------------- + // Class : PclZip + // Description : + // PclZip is the class that represent a Zip archive. + // The public methods allow the manipulation of the archive. + // Attributes : + // Attributes must not be accessed directly. + // Methods : + // PclZip() : Object creator + // create() : Creates the Zip archive + // listContent() : List the content of the Zip archive + // extract() : Extract the content of the archive + // properties() : List the properties of the archive + // -------------------------------------------------------------------------------- + class PclZip + { + // ----- Filename of the zip file + var $zipname = ''; + + // ----- File descriptor of the zip file + var $zip_fd = 0; + + // ----- Internal error handling + var $error_code = 1; + var $error_string = ''; + + // ----- Current status of the magic_quotes_runtime + // This value store the php configuration for magic_quotes + // The class can then disable the magic_quotes and reset it after + var $magic_quotes_status; + + // -------------------------------------------------------------------------------- + // Function : PclZip() + // Description : + // Creates a PclZip object and set the name of the associated Zip archive + // filename. + // Note that no real action is taken, if the archive does not exist it is not + // created. Use create() for that. + // -------------------------------------------------------------------------------- + function PclZip($p_zipname) + { + + // ----- Tests the zlib + if (!function_exists('gzopen')) + { + die('Abort '.basename(__FILE__).' : Missing zlib extensions'); + } + + // ----- Set the attributes + $this->zipname = $p_zipname; + $this->zip_fd = 0; + $this->magic_quotes_status = -1; + + // ----- Return + return; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : + // create($p_filelist, $p_add_dir="", $p_remove_dir="") + // create($p_filelist, $p_option, $p_option_value, ...) + // Description : + // This method supports two different synopsis. The first one is historical. + // This method creates a Zip Archive. The Zip file is created in the + // filesystem. The files and directories indicated in $p_filelist + // are added in the archive. See the parameters description for the + // supported format of $p_filelist. + // When a directory is in the list, the directory and its content is added + // in the archive. + // In this synopsis, the function takes an optional variable list of + // options. See bellow the supported options. + // Parameters : + // $p_filelist : An array containing file or directory names, or + // a string containing one filename or one directory name, or + // a string containing a list of filenames and/or directory + // names separated by spaces. + // $p_add_dir : A path to add before the real path of the archived file, + // in order to have it memorized in the archive. + // $p_remove_dir : A path to remove from the real path of the file to archive, + // in order to have a shorter path memorized in the archive. + // When $p_add_dir and $p_remove_dir are set, $p_remove_dir + // is removed first, before $p_add_dir is added. + // Options : + // PCLZIP_OPT_ADD_PATH : + // PCLZIP_OPT_REMOVE_PATH : + // PCLZIP_OPT_REMOVE_ALL_PATH : + // PCLZIP_OPT_COMMENT : + // PCLZIP_CB_PRE_ADD : + // PCLZIP_CB_POST_ADD : + // Return Values : + // 0 on failure, + // The list of the added files, with a status of the add action. + // (see PclZip::listContent() for list entry format) + // -------------------------------------------------------------------------------- + function create($p_filelist) + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Set default values + $v_options = array(); + $v_options[PCLZIP_OPT_NO_COMPRESSION] = FALSE; + + // ----- Look for variable options arguments + $v_size = func_num_args(); + + // ----- Look for arguments + if ($v_size > 1) { + // ----- Get the arguments + $v_arg_list = func_get_args(); + + // ----- Remove from the options list the first argument + array_shift($v_arg_list); + $v_size--; + + // ----- Look for first arg + if ((is_integer($v_arg_list[0])) && ($v_arg_list[0] > 77000)) { + + // ----- Parse the options + $v_result = $this->privParseOptions($v_arg_list, $v_size, $v_options, + array (PCLZIP_OPT_REMOVE_PATH => 'optional', + PCLZIP_OPT_REMOVE_ALL_PATH => 'optional', + PCLZIP_OPT_ADD_PATH => 'optional', + PCLZIP_CB_PRE_ADD => 'optional', + PCLZIP_CB_POST_ADD => 'optional', + PCLZIP_OPT_NO_COMPRESSION => 'optional', + PCLZIP_OPT_COMMENT => 'optional', + PCLZIP_OPT_TEMP_FILE_THRESHOLD => 'optional', + PCLZIP_OPT_TEMP_FILE_ON => 'optional', + PCLZIP_OPT_TEMP_FILE_OFF => 'optional' + //, PCLZIP_OPT_CRYPT => 'optional' + )); + if ($v_result != 1) { + return 0; + } + } + + // ----- Look for 2 args + // Here we need to support the first historic synopsis of the + // method. + else { + + // ----- Get the first argument + $v_options[PCLZIP_OPT_ADD_PATH] = $v_arg_list[0]; + + // ----- Look for the optional second argument + if ($v_size == 2) { + $v_options[PCLZIP_OPT_REMOVE_PATH] = $v_arg_list[1]; + } + else if ($v_size > 2) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, + "Invalid number / type of arguments"); + return 0; + } + } + } + + // ----- Look for default option values + $this->privOptionDefaultThreshold($v_options); + + // ----- Init + $v_string_list = array(); + $v_att_list = array(); + $v_filedescr_list = array(); + $p_result_list = array(); + + // ----- Look if the $p_filelist is really an array + if (is_array($p_filelist)) { + + // ----- Look if the first element is also an array + // This will mean that this is a file description entry + if (isset($p_filelist[0]) && is_array($p_filelist[0])) { + $v_att_list = $p_filelist; + } + + // ----- The list is a list of string names + else { + $v_string_list = $p_filelist; + } + } + + // ----- Look if the $p_filelist is a string + else if (is_string($p_filelist)) { + // ----- Create a list from the string + $v_string_list = explode(PCLZIP_SEPARATOR, $p_filelist); + } + + // ----- Invalid variable type for $p_filelist + else { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid variable type p_filelist"); + return 0; + } + + // ----- Reformat the string list + if (sizeof($v_string_list) != 0) { + foreach ($v_string_list as $v_string) { + if ($v_string != '') { + $v_att_list[][PCLZIP_ATT_FILE_NAME] = $v_string; + } + else { + } + } + } + + // ----- For each file in the list check the attributes + $v_supported_attributes + = array ( PCLZIP_ATT_FILE_NAME => 'mandatory' + ,PCLZIP_ATT_FILE_NEW_SHORT_NAME => 'optional' + ,PCLZIP_ATT_FILE_NEW_FULL_NAME => 'optional' + ,PCLZIP_ATT_FILE_MTIME => 'optional' + ,PCLZIP_ATT_FILE_CONTENT => 'optional' + ,PCLZIP_ATT_FILE_COMMENT => 'optional' + ); + foreach ($v_att_list as $v_entry) { + $v_result = $this->privFileDescrParseAtt($v_entry, + $v_filedescr_list[], + $v_options, + $v_supported_attributes); + if ($v_result != 1) { + return 0; + } + } + + // ----- Expand the filelist (expand directories) + $v_result = $this->privFileDescrExpand($v_filedescr_list, $v_options); + if ($v_result != 1) { + return 0; + } + + // ----- Call the create fct + $v_result = $this->privCreate($v_filedescr_list, $p_result_list, $v_options); + if ($v_result != 1) { + return 0; + } + + // ----- Return + return $p_result_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : + // add($p_filelist, $p_add_dir="", $p_remove_dir="") + // add($p_filelist, $p_option, $p_option_value, ...) + // Description : + // This method supports two synopsis. The first one is historical. + // This methods add the list of files in an existing archive. + // If a file with the same name already exists, it is added at the end of the + // archive, the first one is still present. + // If the archive does not exist, it is created. + // Parameters : + // $p_filelist : An array containing file or directory names, or + // a string containing one filename or one directory name, or + // a string containing a list of filenames and/or directory + // names separated by spaces. + // $p_add_dir : A path to add before the real path of the archived file, + // in order to have it memorized in the archive. + // $p_remove_dir : A path to remove from the real path of the file to archive, + // in order to have a shorter path memorized in the archive. + // When $p_add_dir and $p_remove_dir are set, $p_remove_dir + // is removed first, before $p_add_dir is added. + // Options : + // PCLZIP_OPT_ADD_PATH : + // PCLZIP_OPT_REMOVE_PATH : + // PCLZIP_OPT_REMOVE_ALL_PATH : + // PCLZIP_OPT_COMMENT : + // PCLZIP_OPT_ADD_COMMENT : + // PCLZIP_OPT_PREPEND_COMMENT : + // PCLZIP_CB_PRE_ADD : + // PCLZIP_CB_POST_ADD : + // Return Values : + // 0 on failure, + // The list of the added files, with a status of the add action. + // (see PclZip::listContent() for list entry format) + // -------------------------------------------------------------------------------- + function add($p_filelist) + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Set default values + $v_options = array(); + $v_options[PCLZIP_OPT_NO_COMPRESSION] = FALSE; + + // ----- Look for variable options arguments + $v_size = func_num_args(); + + // ----- Look for arguments + if ($v_size > 1) { + // ----- Get the arguments + $v_arg_list = func_get_args(); + + // ----- Remove form the options list the first argument + array_shift($v_arg_list); + $v_size--; + + // ----- Look for first arg + if ((is_integer($v_arg_list[0])) && ($v_arg_list[0] > 77000)) { + + // ----- Parse the options + $v_result = $this->privParseOptions($v_arg_list, $v_size, $v_options, + array (PCLZIP_OPT_REMOVE_PATH => 'optional', + PCLZIP_OPT_REMOVE_ALL_PATH => 'optional', + PCLZIP_OPT_ADD_PATH => 'optional', + PCLZIP_CB_PRE_ADD => 'optional', + PCLZIP_CB_POST_ADD => 'optional', + PCLZIP_OPT_NO_COMPRESSION => 'optional', + PCLZIP_OPT_COMMENT => 'optional', + PCLZIP_OPT_ADD_COMMENT => 'optional', + PCLZIP_OPT_PREPEND_COMMENT => 'optional', + PCLZIP_OPT_TEMP_FILE_THRESHOLD => 'optional', + PCLZIP_OPT_TEMP_FILE_ON => 'optional', + PCLZIP_OPT_TEMP_FILE_OFF => 'optional' + //, PCLZIP_OPT_CRYPT => 'optional' + )); + if ($v_result != 1) { + return 0; + } + } + + // ----- Look for 2 args + // Here we need to support the first historic synopsis of the + // method. + else { + + // ----- Get the first argument + $v_options[PCLZIP_OPT_ADD_PATH] = $v_add_path = $v_arg_list[0]; + + // ----- Look for the optional second argument + if ($v_size == 2) { + $v_options[PCLZIP_OPT_REMOVE_PATH] = $v_arg_list[1]; + } + else if ($v_size > 2) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid number / type of arguments"); + + // ----- Return + return 0; + } + } + } + + // ----- Look for default option values + $this->privOptionDefaultThreshold($v_options); + + // ----- Init + $v_string_list = array(); + $v_att_list = array(); + $v_filedescr_list = array(); + $p_result_list = array(); + + // ----- Look if the $p_filelist is really an array + if (is_array($p_filelist)) { + + // ----- Look if the first element is also an array + // This will mean that this is a file description entry + if (isset($p_filelist[0]) && is_array($p_filelist[0])) { + $v_att_list = $p_filelist; + } + + // ----- The list is a list of string names + else { + $v_string_list = $p_filelist; + } + } + + // ----- Look if the $p_filelist is a string + else if (is_string($p_filelist)) { + // ----- Create a list from the string + $v_string_list = explode(PCLZIP_SEPARATOR, $p_filelist); + } + + // ----- Invalid variable type for $p_filelist + else { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid variable type '".gettype($p_filelist)."' for p_filelist"); + return 0; + } + + // ----- Reformat the string list + if (sizeof($v_string_list) != 0) { + foreach ($v_string_list as $v_string) { + $v_att_list[][PCLZIP_ATT_FILE_NAME] = $v_string; + } + } + + // ----- For each file in the list check the attributes + $v_supported_attributes + = array ( PCLZIP_ATT_FILE_NAME => 'mandatory' + ,PCLZIP_ATT_FILE_NEW_SHORT_NAME => 'optional' + ,PCLZIP_ATT_FILE_NEW_FULL_NAME => 'optional' + ,PCLZIP_ATT_FILE_MTIME => 'optional' + ,PCLZIP_ATT_FILE_CONTENT => 'optional' + ,PCLZIP_ATT_FILE_COMMENT => 'optional' + ); + foreach ($v_att_list as $v_entry) { + $v_result = $this->privFileDescrParseAtt($v_entry, + $v_filedescr_list[], + $v_options, + $v_supported_attributes); + if ($v_result != 1) { + return 0; + } + } + + // ----- Expand the filelist (expand directories) + $v_result = $this->privFileDescrExpand($v_filedescr_list, $v_options); + if ($v_result != 1) { + return 0; + } + + // ----- Call the create fct + $v_result = $this->privAdd($v_filedescr_list, $p_result_list, $v_options); + if ($v_result != 1) { + return 0; + } + + // ----- Return + return $p_result_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : listContent() + // Description : + // This public method, gives the list of the files and directories, with their + // properties. + // The properties of each entries in the list are (used also in other functions) : + // filename : Name of the file. For a create or add action it is the filename + // given by the user. For an extract function it is the filename + // of the extracted file. + // stored_filename : Name of the file / directory stored in the archive. + // size : Size of the stored file. + // compressed_size : Size of the file's data compressed in the archive + // (without the headers overhead) + // mtime : Last known modification date of the file (UNIX timestamp) + // comment : Comment associated with the file + // folder : true | false + // index : index of the file in the archive + // status : status of the action (depending of the action) : + // Values are : + // ok : OK ! + // filtered : the file / dir is not extracted (filtered by user) + // already_a_directory : the file can not be extracted because a + // directory with the same name already exists + // write_protected : the file can not be extracted because a file + // with the same name already exists and is + // write protected + // newer_exist : the file was not extracted because a newer file exists + // path_creation_fail : the file is not extracted because the folder + // does not exist and can not be created + // write_error : the file was not extracted because there was a + // error while writing the file + // read_error : the file was not extracted because there was a error + // while reading the file + // invalid_header : the file was not extracted because of an archive + // format error (bad file header) + // Note that each time a method can continue operating when there + // is an action error on a file, the error is only logged in the file status. + // Return Values : + // 0 on an unrecoverable failure, + // The list of the files in the archive. + // -------------------------------------------------------------------------------- + function listContent() + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + return(0); + } + + // ----- Call the extracting fct + $p_list = array(); + if (($v_result = $this->privList($p_list)) != 1) + { + unset($p_list); + return(0); + } + + // ----- Return + return $p_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : + // extract($p_path="./", $p_remove_path="") + // extract([$p_option, $p_option_value, ...]) + // Description : + // This method supports two synopsis. The first one is historical. + // This method extract all the files / directories from the archive to the + // folder indicated in $p_path. + // If you want to ignore the 'root' part of path of the memorized files + // you can indicate this in the optional $p_remove_path parameter. + // By default, if a newer file with the same name already exists, the + // file is not extracted. + // + // If both PCLZIP_OPT_PATH and PCLZIP_OPT_ADD_PATH aoptions + // are used, the path indicated in PCLZIP_OPT_ADD_PATH is append + // at the end of the path value of PCLZIP_OPT_PATH. + // Parameters : + // $p_path : Path where the files and directories are to be extracted + // $p_remove_path : First part ('root' part) of the memorized path + // (if any similar) to remove while extracting. + // Options : + // PCLZIP_OPT_PATH : + // PCLZIP_OPT_ADD_PATH : + // PCLZIP_OPT_REMOVE_PATH : + // PCLZIP_OPT_REMOVE_ALL_PATH : + // PCLZIP_CB_PRE_EXTRACT : + // PCLZIP_CB_POST_EXTRACT : + // Return Values : + // 0 or a negative value on failure, + // The list of the extracted files, with a status of the action. + // (see PclZip::listContent() for list entry format) + // -------------------------------------------------------------------------------- + function extract() + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + return(0); + } + + // ----- Set default values + $v_options = array(); +// $v_path = "./"; + $v_path = ''; + $v_remove_path = ""; + $v_remove_all_path = false; + + // ----- Look for variable options arguments + $v_size = func_num_args(); + + // ----- Default values for option + $v_options[PCLZIP_OPT_EXTRACT_AS_STRING] = FALSE; + + // ----- Look for arguments + if ($v_size > 0) { + // ----- Get the arguments + $v_arg_list = func_get_args(); + + // ----- Look for first arg + if ((is_integer($v_arg_list[0])) && ($v_arg_list[0] > 77000)) { + + // ----- Parse the options + $v_result = $this->privParseOptions($v_arg_list, $v_size, $v_options, + array (PCLZIP_OPT_PATH => 'optional', + PCLZIP_OPT_REMOVE_PATH => 'optional', + PCLZIP_OPT_REMOVE_ALL_PATH => 'optional', + PCLZIP_OPT_ADD_PATH => 'optional', + PCLZIP_CB_PRE_EXTRACT => 'optional', + PCLZIP_CB_POST_EXTRACT => 'optional', + PCLZIP_OPT_SET_CHMOD => 'optional', + PCLZIP_OPT_BY_NAME => 'optional', + PCLZIP_OPT_BY_EREG => 'optional', + PCLZIP_OPT_BY_PREG => 'optional', + PCLZIP_OPT_BY_INDEX => 'optional', + PCLZIP_OPT_EXTRACT_AS_STRING => 'optional', + PCLZIP_OPT_EXTRACT_IN_OUTPUT => 'optional', + PCLZIP_OPT_REPLACE_NEWER => 'optional' + ,PCLZIP_OPT_STOP_ON_ERROR => 'optional' + ,PCLZIP_OPT_EXTRACT_DIR_RESTRICTION => 'optional', + PCLZIP_OPT_TEMP_FILE_THRESHOLD => 'optional', + PCLZIP_OPT_TEMP_FILE_ON => 'optional', + PCLZIP_OPT_TEMP_FILE_OFF => 'optional' + )); + if ($v_result != 1) { + return 0; + } + + // ----- Set the arguments + if (isset($v_options[PCLZIP_OPT_PATH])) { + $v_path = $v_options[PCLZIP_OPT_PATH]; + } + if (isset($v_options[PCLZIP_OPT_REMOVE_PATH])) { + $v_remove_path = $v_options[PCLZIP_OPT_REMOVE_PATH]; + } + if (isset($v_options[PCLZIP_OPT_REMOVE_ALL_PATH])) { + $v_remove_all_path = $v_options[PCLZIP_OPT_REMOVE_ALL_PATH]; + } + if (isset($v_options[PCLZIP_OPT_ADD_PATH])) { + // ----- Check for '/' in last path char + if ((strlen($v_path) > 0) && (substr($v_path, -1) != '/')) { + $v_path .= '/'; + } + $v_path .= $v_options[PCLZIP_OPT_ADD_PATH]; + } + } + + // ----- Look for 2 args + // Here we need to support the first historic synopsis of the + // method. + else { + + // ----- Get the first argument + $v_path = $v_arg_list[0]; + + // ----- Look for the optional second argument + if ($v_size == 2) { + $v_remove_path = $v_arg_list[1]; + } + else if ($v_size > 2) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid number / type of arguments"); + + // ----- Return + return 0; + } + } + } + + // ----- Look for default option values + $this->privOptionDefaultThreshold($v_options); + + // ----- Trace + + // ----- Call the extracting fct + $p_list = array(); + $v_result = $this->privExtractByRule($p_list, $v_path, $v_remove_path, + $v_remove_all_path, $v_options); + if ($v_result < 1) { + unset($p_list); + return(0); + } + + // ----- Return + return $p_list; + } + // -------------------------------------------------------------------------------- + + + // -------------------------------------------------------------------------------- + // Function : + // extractByIndex($p_index, $p_path="./", $p_remove_path="") + // extractByIndex($p_index, [$p_option, $p_option_value, ...]) + // Description : + // This method supports two synopsis. The first one is historical. + // This method is doing a partial extract of the archive. + // The extracted files or folders are identified by their index in the + // archive (from 0 to n). + // Note that if the index identify a folder, only the folder entry is + // extracted, not all the files included in the archive. + // Parameters : + // $p_index : A single index (integer) or a string of indexes of files to + // extract. The form of the string is "0,4-6,8-12" with only numbers + // and '-' for range or ',' to separate ranges. No spaces or ';' + // are allowed. + // $p_path : Path where the files and directories are to be extracted + // $p_remove_path : First part ('root' part) of the memorized path + // (if any similar) to remove while extracting. + // Options : + // PCLZIP_OPT_PATH : + // PCLZIP_OPT_ADD_PATH : + // PCLZIP_OPT_REMOVE_PATH : + // PCLZIP_OPT_REMOVE_ALL_PATH : + // PCLZIP_OPT_EXTRACT_AS_STRING : The files are extracted as strings and + // not as files. + // The resulting content is in a new field 'content' in the file + // structure. + // This option must be used alone (any other options are ignored). + // PCLZIP_CB_PRE_EXTRACT : + // PCLZIP_CB_POST_EXTRACT : + // Return Values : + // 0 on failure, + // The list of the extracted files, with a status of the action. + // (see PclZip::listContent() for list entry format) + // -------------------------------------------------------------------------------- + //function extractByIndex($p_index, options...) + function extractByIndex($p_index) + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + return(0); + } + + // ----- Set default values + $v_options = array(); +// $v_path = "./"; + $v_path = ''; + $v_remove_path = ""; + $v_remove_all_path = false; + + // ----- Look for variable options arguments + $v_size = func_num_args(); + + // ----- Default values for option + $v_options[PCLZIP_OPT_EXTRACT_AS_STRING] = FALSE; + + // ----- Look for arguments + if ($v_size > 1) { + // ----- Get the arguments + $v_arg_list = func_get_args(); + + // ----- Remove form the options list the first argument + array_shift($v_arg_list); + $v_size--; + + // ----- Look for first arg + if ((is_integer($v_arg_list[0])) && ($v_arg_list[0] > 77000)) { + + // ----- Parse the options + $v_result = $this->privParseOptions($v_arg_list, $v_size, $v_options, + array (PCLZIP_OPT_PATH => 'optional', + PCLZIP_OPT_REMOVE_PATH => 'optional', + PCLZIP_OPT_REMOVE_ALL_PATH => 'optional', + PCLZIP_OPT_EXTRACT_AS_STRING => 'optional', + PCLZIP_OPT_ADD_PATH => 'optional', + PCLZIP_CB_PRE_EXTRACT => 'optional', + PCLZIP_CB_POST_EXTRACT => 'optional', + PCLZIP_OPT_SET_CHMOD => 'optional', + PCLZIP_OPT_REPLACE_NEWER => 'optional' + ,PCLZIP_OPT_STOP_ON_ERROR => 'optional' + ,PCLZIP_OPT_EXTRACT_DIR_RESTRICTION => 'optional', + PCLZIP_OPT_TEMP_FILE_THRESHOLD => 'optional', + PCLZIP_OPT_TEMP_FILE_ON => 'optional', + PCLZIP_OPT_TEMP_FILE_OFF => 'optional' + )); + if ($v_result != 1) { + return 0; + } + + // ----- Set the arguments + if (isset($v_options[PCLZIP_OPT_PATH])) { + $v_path = $v_options[PCLZIP_OPT_PATH]; + } + if (isset($v_options[PCLZIP_OPT_REMOVE_PATH])) { + $v_remove_path = $v_options[PCLZIP_OPT_REMOVE_PATH]; + } + if (isset($v_options[PCLZIP_OPT_REMOVE_ALL_PATH])) { + $v_remove_all_path = $v_options[PCLZIP_OPT_REMOVE_ALL_PATH]; + } + if (isset($v_options[PCLZIP_OPT_ADD_PATH])) { + // ----- Check for '/' in last path char + if ((strlen($v_path) > 0) && (substr($v_path, -1) != '/')) { + $v_path .= '/'; + } + $v_path .= $v_options[PCLZIP_OPT_ADD_PATH]; + } + if (!isset($v_options[PCLZIP_OPT_EXTRACT_AS_STRING])) { + $v_options[PCLZIP_OPT_EXTRACT_AS_STRING] = FALSE; + } + else { + } + } + + // ----- Look for 2 args + // Here we need to support the first historic synopsis of the + // method. + else { + + // ----- Get the first argument + $v_path = $v_arg_list[0]; + + // ----- Look for the optional second argument + if ($v_size == 2) { + $v_remove_path = $v_arg_list[1]; + } + else if ($v_size > 2) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid number / type of arguments"); + + // ----- Return + return 0; + } + } + } + + // ----- Trace + + // ----- Trick + // Here I want to reuse extractByRule(), so I need to parse the $p_index + // with privParseOptions() + $v_arg_trick = array (PCLZIP_OPT_BY_INDEX, $p_index); + $v_options_trick = array(); + $v_result = $this->privParseOptions($v_arg_trick, sizeof($v_arg_trick), $v_options_trick, + array (PCLZIP_OPT_BY_INDEX => 'optional' )); + if ($v_result != 1) { + return 0; + } + $v_options[PCLZIP_OPT_BY_INDEX] = $v_options_trick[PCLZIP_OPT_BY_INDEX]; + + // ----- Look for default option values + $this->privOptionDefaultThreshold($v_options); + + // ----- Call the extracting fct + if (($v_result = $this->privExtractByRule($p_list, $v_path, $v_remove_path, $v_remove_all_path, $v_options)) < 1) { + return(0); + } + + // ----- Return + return $p_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : + // delete([$p_option, $p_option_value, ...]) + // Description : + // This method removes files from the archive. + // If no parameters are given, then all the archive is emptied. + // Parameters : + // None or optional arguments. + // Options : + // PCLZIP_OPT_BY_INDEX : + // PCLZIP_OPT_BY_NAME : + // PCLZIP_OPT_BY_EREG : + // PCLZIP_OPT_BY_PREG : + // Return Values : + // 0 on failure, + // The list of the files which are still present in the archive. + // (see PclZip::listContent() for list entry format) + // -------------------------------------------------------------------------------- + function delete() + { + $v_result=1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + return(0); + } + + // ----- Set default values + $v_options = array(); + + // ----- Look for variable options arguments + $v_size = func_num_args(); + + // ----- Look for arguments + if ($v_size > 0) { + // ----- Get the arguments + $v_arg_list = func_get_args(); + + // ----- Parse the options + $v_result = $this->privParseOptions($v_arg_list, $v_size, $v_options, + array (PCLZIP_OPT_BY_NAME => 'optional', + PCLZIP_OPT_BY_EREG => 'optional', + PCLZIP_OPT_BY_PREG => 'optional', + PCLZIP_OPT_BY_INDEX => 'optional' )); + if ($v_result != 1) { + return 0; + } + } + + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Call the delete fct + $v_list = array(); + if (($v_result = $this->privDeleteByRule($v_list, $v_options)) != 1) { + $this->privSwapBackMagicQuotes(); + unset($v_list); + return(0); + } + + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : deleteByIndex() + // Description : + // ***** Deprecated ***** + // delete(PCLZIP_OPT_BY_INDEX, $p_index) should be prefered. + // -------------------------------------------------------------------------------- + function deleteByIndex($p_index) + { + + $p_list = $this->delete(PCLZIP_OPT_BY_INDEX, $p_index); + + // ----- Return + return $p_list; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : properties() + // Description : + // This method gives the properties of the archive. + // The properties are : + // nb : Number of files in the archive + // comment : Comment associated with the archive file + // status : not_exist, ok + // Parameters : + // None + // Return Values : + // 0 on failure, + // An array with the archive properties. + // -------------------------------------------------------------------------------- + function properties() + { + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + $this->privSwapBackMagicQuotes(); + return(0); + } + + // ----- Default properties + $v_prop = array(); + $v_prop['comment'] = ''; + $v_prop['nb'] = 0; + $v_prop['status'] = 'not_exist'; + + // ----- Look if file exists + if (@is_file($this->zipname)) + { + // ----- Open the zip file + if (($this->zip_fd = @fopen($this->zipname, 'rb')) == 0) + { + $this->privSwapBackMagicQuotes(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open archive \''.$this->zipname.'\' in binary read mode'); + + // ----- Return + return 0; + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) + { + $this->privSwapBackMagicQuotes(); + return 0; + } + + // ----- Close the zip file + $this->privCloseFd(); + + // ----- Set the user attributes + $v_prop['comment'] = $v_central_dir['comment']; + $v_prop['nb'] = $v_central_dir['entries']; + $v_prop['status'] = 'ok'; + } + + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_prop; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : duplicate() + // Description : + // This method creates an archive by copying the content of an other one. If + // the archive already exist, it is replaced by the new one without any warning. + // Parameters : + // $p_archive : The filename of a valid archive, or + // a valid PclZip object. + // Return Values : + // 1 on success. + // 0 or a negative value on error (error code). + // -------------------------------------------------------------------------------- + function duplicate($p_archive) + { + $v_result = 1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Look if the $p_archive is a PclZip object + if ((is_object($p_archive)) && (get_class($p_archive) == 'pclzip')) + { + + // ----- Duplicate the archive + $v_result = $this->privDuplicate($p_archive->zipname); + } + + // ----- Look if the $p_archive is a string (so a filename) + else if (is_string($p_archive)) + { + + // ----- Check that $p_archive is a valid zip file + // TBC : Should also check the archive format + if (!is_file($p_archive)) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_FILE, "No file with filename '".$p_archive."'"); + $v_result = PCLZIP_ERR_MISSING_FILE; + } + else { + // ----- Duplicate the archive + $v_result = $this->privDuplicate($p_archive); + } + } + + // ----- Invalid variable + else + { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid variable type p_archive_to_add"); + $v_result = PCLZIP_ERR_INVALID_PARAMETER; + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : merge() + // Description : + // This method merge the $p_archive_to_add archive at the end of the current + // one ($this). + // If the archive ($this) does not exist, the merge becomes a duplicate. + // If the $p_archive_to_add archive does not exist, the merge is a success. + // Parameters : + // $p_archive_to_add : It can be directly the filename of a valid zip archive, + // or a PclZip object archive. + // Return Values : + // 1 on success, + // 0 or negative values on error (see below). + // -------------------------------------------------------------------------------- + function merge($p_archive_to_add) + { + $v_result = 1; + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Check archive + if (!$this->privCheckFormat()) { + return(0); + } + + // ----- Look if the $p_archive_to_add is a PclZip object + if ((is_object($p_archive_to_add)) && (get_class($p_archive_to_add) == 'pclzip')) + { + + // ----- Merge the archive + $v_result = $this->privMerge($p_archive_to_add); + } + + // ----- Look if the $p_archive_to_add is a string (so a filename) + else if (is_string($p_archive_to_add)) + { + + // ----- Create a temporary archive + $v_object_archive = new PclZip($p_archive_to_add); + + // ----- Merge the archive + $v_result = $this->privMerge($v_object_archive); + } + + // ----- Invalid variable + else + { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid variable type p_archive_to_add"); + $v_result = PCLZIP_ERR_INVALID_PARAMETER; + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + + + // -------------------------------------------------------------------------------- + // Function : errorCode() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + function errorCode() + { + if (PCLZIP_ERROR_EXTERNAL == 1) { + return(PclErrorCode()); + } + else { + return($this->error_code); + } + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : errorName() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + function errorName($p_with_code=false) + { + $v_name = array ( PCLZIP_ERR_NO_ERROR => 'PCLZIP_ERR_NO_ERROR', + PCLZIP_ERR_WRITE_OPEN_FAIL => 'PCLZIP_ERR_WRITE_OPEN_FAIL', + PCLZIP_ERR_READ_OPEN_FAIL => 'PCLZIP_ERR_READ_OPEN_FAIL', + PCLZIP_ERR_INVALID_PARAMETER => 'PCLZIP_ERR_INVALID_PARAMETER', + PCLZIP_ERR_MISSING_FILE => 'PCLZIP_ERR_MISSING_FILE', + PCLZIP_ERR_FILENAME_TOO_LONG => 'PCLZIP_ERR_FILENAME_TOO_LONG', + PCLZIP_ERR_INVALID_ZIP => 'PCLZIP_ERR_INVALID_ZIP', + PCLZIP_ERR_BAD_EXTRACTED_FILE => 'PCLZIP_ERR_BAD_EXTRACTED_FILE', + PCLZIP_ERR_DIR_CREATE_FAIL => 'PCLZIP_ERR_DIR_CREATE_FAIL', + PCLZIP_ERR_BAD_EXTENSION => 'PCLZIP_ERR_BAD_EXTENSION', + PCLZIP_ERR_BAD_FORMAT => 'PCLZIP_ERR_BAD_FORMAT', + PCLZIP_ERR_DELETE_FILE_FAIL => 'PCLZIP_ERR_DELETE_FILE_FAIL', + PCLZIP_ERR_RENAME_FILE_FAIL => 'PCLZIP_ERR_RENAME_FILE_FAIL', + PCLZIP_ERR_BAD_CHECKSUM => 'PCLZIP_ERR_BAD_CHECKSUM', + PCLZIP_ERR_INVALID_ARCHIVE_ZIP => 'PCLZIP_ERR_INVALID_ARCHIVE_ZIP', + PCLZIP_ERR_MISSING_OPTION_VALUE => 'PCLZIP_ERR_MISSING_OPTION_VALUE', + PCLZIP_ERR_INVALID_OPTION_VALUE => 'PCLZIP_ERR_INVALID_OPTION_VALUE', + PCLZIP_ERR_UNSUPPORTED_COMPRESSION => 'PCLZIP_ERR_UNSUPPORTED_COMPRESSION', + PCLZIP_ERR_UNSUPPORTED_ENCRYPTION => 'PCLZIP_ERR_UNSUPPORTED_ENCRYPTION' + ,PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE => 'PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE' + ,PCLZIP_ERR_DIRECTORY_RESTRICTION => 'PCLZIP_ERR_DIRECTORY_RESTRICTION' + ); + + if (isset($v_name[$this->error_code])) { + $v_value = $v_name[$this->error_code]; + } + else { + $v_value = 'NoName'; + } + + if ($p_with_code) { + return($v_value.' ('.$this->error_code.')'); + } + else { + return($v_value); + } + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : errorInfo() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + function errorInfo($p_full=false) + { + if (PCLZIP_ERROR_EXTERNAL == 1) { + return(PclErrorString()); + } + else { + if ($p_full) { + return($this->errorName(true)." : ".$this->error_string); + } + else { + return($this->error_string." [code ".$this->error_code."]"); + } + } + } + // -------------------------------------------------------------------------------- + + +// -------------------------------------------------------------------------------- +// ***** UNDER THIS LINE ARE DEFINED PRIVATE INTERNAL FUNCTIONS ***** +// ***** ***** +// ***** THESES FUNCTIONS MUST NOT BE USED DIRECTLY ***** +// -------------------------------------------------------------------------------- + + + + // -------------------------------------------------------------------------------- + // Function : privCheckFormat() + // Description : + // This method check that the archive exists and is a valid zip archive. + // Several level of check exists. (futur) + // Parameters : + // $p_level : Level of check. Default 0. + // 0 : Check the first bytes (magic codes) (default value)) + // 1 : 0 + Check the central directory (futur) + // 2 : 1 + Check each file header (futur) + // Return Values : + // true on success, + // false on error, the error code is set. + // -------------------------------------------------------------------------------- + function privCheckFormat($p_level=0) + { + $v_result = true; + + // ----- Reset the file system cache + clearstatcache(); + + // ----- Reset the error handler + $this->privErrorReset(); + + // ----- Look if the file exits + if (!is_file($this->zipname)) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_FILE, "Missing archive file '".$this->zipname."'"); + return(false); + } + + // ----- Check that the file is readeable + if (!is_readable($this->zipname)) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, "Unable to read archive '".$this->zipname."'"); + return(false); + } + + // ----- Check the magic code + // TBC + + // ----- Check the central header + // TBC + + // ----- Check each file header + // TBC + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privParseOptions() + // Description : + // This internal methods reads the variable list of arguments ($p_options_list, + // $p_size) and generate an array with the options and values ($v_result_list). + // $v_requested_options contains the options that can be present and those that + // must be present. + // $v_requested_options is an array, with the option value as key, and 'optional', + // or 'mandatory' as value. + // Parameters : + // See above. + // Return Values : + // 1 on success. + // 0 on failure. + // -------------------------------------------------------------------------------- + function privParseOptions(&$p_options_list, $p_size, &$v_result_list, $v_requested_options=false) + { + $v_result=1; + + // ----- Read the options + $i=0; + while ($i<$p_size) { + + // ----- Check if the option is supported + if (!isset($v_requested_options[$p_options_list[$i]])) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid optional parameter '".$p_options_list[$i]."' for this method"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Look for next option + switch ($p_options_list[$i]) { + // ----- Look for options that request a path value + case PCLZIP_OPT_PATH : + case PCLZIP_OPT_REMOVE_PATH : + case PCLZIP_OPT_ADD_PATH : + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + $v_result_list[$p_options_list[$i]] = PclZipUtilTranslateWinPath($p_options_list[$i+1], FALSE); + $i++; + break; + + case PCLZIP_OPT_TEMP_FILE_THRESHOLD : + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + return PclZip::errorCode(); + } + + // ----- Check for incompatible options + if (isset($v_result_list[PCLZIP_OPT_TEMP_FILE_OFF])) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Option '".PclZipUtilOptionText($p_options_list[$i])."' can not be used with option 'PCLZIP_OPT_TEMP_FILE_OFF'"); + return PclZip::errorCode(); + } + + // ----- Check the value + $v_value = $p_options_list[$i+1]; + if ((!is_integer($v_value)) || ($v_value<0)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Integer expected for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + return PclZip::errorCode(); + } + + // ----- Get the value (and convert it in bytes) + $v_result_list[$p_options_list[$i]] = $v_value*1048576; + $i++; + break; + + case PCLZIP_OPT_TEMP_FILE_ON : + // ----- Check for incompatible options + if (isset($v_result_list[PCLZIP_OPT_TEMP_FILE_OFF])) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Option '".PclZipUtilOptionText($p_options_list[$i])."' can not be used with option 'PCLZIP_OPT_TEMP_FILE_OFF'"); + return PclZip::errorCode(); + } + + $v_result_list[$p_options_list[$i]] = true; + break; + + case PCLZIP_OPT_TEMP_FILE_OFF : + // ----- Check for incompatible options + if (isset($v_result_list[PCLZIP_OPT_TEMP_FILE_ON])) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Option '".PclZipUtilOptionText($p_options_list[$i])."' can not be used with option 'PCLZIP_OPT_TEMP_FILE_ON'"); + return PclZip::errorCode(); + } + // ----- Check for incompatible options + if (isset($v_result_list[PCLZIP_OPT_TEMP_FILE_THRESHOLD])) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Option '".PclZipUtilOptionText($p_options_list[$i])."' can not be used with option 'PCLZIP_OPT_TEMP_FILE_THRESHOLD'"); + return PclZip::errorCode(); + } + + $v_result_list[$p_options_list[$i]] = true; + break; + + case PCLZIP_OPT_EXTRACT_DIR_RESTRICTION : + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + if ( is_string($p_options_list[$i+1]) + && ($p_options_list[$i+1] != '')) { + $v_result_list[$p_options_list[$i]] = PclZipUtilTranslateWinPath($p_options_list[$i+1], FALSE); + $i++; + } + else { + } + break; + + // ----- Look for options that request an array of string for value + case PCLZIP_OPT_BY_NAME : + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + if (is_string($p_options_list[$i+1])) { + $v_result_list[$p_options_list[$i]][0] = $p_options_list[$i+1]; + } + else if (is_array($p_options_list[$i+1])) { + $v_result_list[$p_options_list[$i]] = $p_options_list[$i+1]; + } + else { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Wrong parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + $i++; + break; + + // ----- Look for options that request an EREG or PREG expression + case PCLZIP_OPT_BY_EREG : + // ereg() is deprecated starting with PHP 5.3. Move PCLZIP_OPT_BY_EREG + // to PCLZIP_OPT_BY_PREG + $p_options_list[$i] = PCLZIP_OPT_BY_PREG; + case PCLZIP_OPT_BY_PREG : + //case PCLZIP_OPT_CRYPT : + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + if (is_string($p_options_list[$i+1])) { + $v_result_list[$p_options_list[$i]] = $p_options_list[$i+1]; + } + else { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Wrong parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + $i++; + break; + + // ----- Look for options that takes a string + case PCLZIP_OPT_COMMENT : + case PCLZIP_OPT_ADD_COMMENT : + case PCLZIP_OPT_PREPEND_COMMENT : + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, + "Missing parameter value for option '" + .PclZipUtilOptionText($p_options_list[$i]) + ."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + if (is_string($p_options_list[$i+1])) { + $v_result_list[$p_options_list[$i]] = $p_options_list[$i+1]; + } + else { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, + "Wrong parameter value for option '" + .PclZipUtilOptionText($p_options_list[$i]) + ."'"); + + // ----- Return + return PclZip::errorCode(); + } + $i++; + break; + + // ----- Look for options that request an array of index + case PCLZIP_OPT_BY_INDEX : + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + $v_work_list = array(); + if (is_string($p_options_list[$i+1])) { + + // ----- Remove spaces + $p_options_list[$i+1] = strtr($p_options_list[$i+1], ' ', ''); + + // ----- Parse items + $v_work_list = explode(",", $p_options_list[$i+1]); + } + else if (is_integer($p_options_list[$i+1])) { + $v_work_list[0] = $p_options_list[$i+1].'-'.$p_options_list[$i+1]; + } + else if (is_array($p_options_list[$i+1])) { + $v_work_list = $p_options_list[$i+1]; + } + else { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Value must be integer, string or array for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Reduce the index list + // each index item in the list must be a couple with a start and + // an end value : [0,3], [5-5], [8-10], ... + // ----- Check the format of each item + $v_sort_flag=false; + $v_sort_value=0; + for ($j=0; $j<sizeof($v_work_list); $j++) { + // ----- Explode the item + $v_item_list = explode("-", $v_work_list[$j]); + $v_size_item_list = sizeof($v_item_list); + + // ----- TBC : Here we might check that each item is a + // real integer ... + + // ----- Look for single value + if ($v_size_item_list == 1) { + // ----- Set the option value + $v_result_list[$p_options_list[$i]][$j]['start'] = $v_item_list[0]; + $v_result_list[$p_options_list[$i]][$j]['end'] = $v_item_list[0]; + } + elseif ($v_size_item_list == 2) { + // ----- Set the option value + $v_result_list[$p_options_list[$i]][$j]['start'] = $v_item_list[0]; + $v_result_list[$p_options_list[$i]][$j]['end'] = $v_item_list[1]; + } + else { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Too many values in index range for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + + // ----- Look for list sort + if ($v_result_list[$p_options_list[$i]][$j]['start'] < $v_sort_value) { + $v_sort_flag=true; + + // ----- TBC : An automatic sort should be writen ... + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Invalid order of index range for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + $v_sort_value = $v_result_list[$p_options_list[$i]][$j]['start']; + } + + // ----- Sort the items + if ($v_sort_flag) { + // TBC : To Be Completed + } + + // ----- Next option + $i++; + break; + + // ----- Look for options that request no value + case PCLZIP_OPT_REMOVE_ALL_PATH : + case PCLZIP_OPT_EXTRACT_AS_STRING : + case PCLZIP_OPT_NO_COMPRESSION : + case PCLZIP_OPT_EXTRACT_IN_OUTPUT : + case PCLZIP_OPT_REPLACE_NEWER : + case PCLZIP_OPT_STOP_ON_ERROR : + $v_result_list[$p_options_list[$i]] = true; + break; + + // ----- Look for options that request an octal value + case PCLZIP_OPT_SET_CHMOD : + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + $v_result_list[$p_options_list[$i]] = $p_options_list[$i+1]; + $i++; + break; + + // ----- Look for options that request a call-back + case PCLZIP_CB_PRE_EXTRACT : + case PCLZIP_CB_POST_EXTRACT : + case PCLZIP_CB_PRE_ADD : + case PCLZIP_CB_POST_ADD : + /* for futur use + case PCLZIP_CB_PRE_DELETE : + case PCLZIP_CB_POST_DELETE : + case PCLZIP_CB_PRE_LIST : + case PCLZIP_CB_POST_LIST : + */ + // ----- Check the number of parameters + if (($i+1) >= $p_size) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_OPTION_VALUE, "Missing parameter value for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Get the value + $v_function_name = $p_options_list[$i+1]; + + // ----- Check that the value is a valid existing function + if (!function_exists($v_function_name)) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_OPTION_VALUE, "Function '".$v_function_name."()' is not an existing function for option '".PclZipUtilOptionText($p_options_list[$i])."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Set the attribute + $v_result_list[$p_options_list[$i]] = $v_function_name; + $i++; + break; + + default : + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, + "Unknown parameter '" + .$p_options_list[$i]."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Next options + $i++; + } + + // ----- Look for mandatory options + if ($v_requested_options !== false) { + for ($key=reset($v_requested_options); $key=key($v_requested_options); $key=next($v_requested_options)) { + // ----- Look for mandatory option + if ($v_requested_options[$key] == 'mandatory') { + // ----- Look if present + if (!isset($v_result_list[$key])) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Missing mandatory parameter ".PclZipUtilOptionText($key)."(".$key.")"); + + // ----- Return + return PclZip::errorCode(); + } + } + } + } + + // ----- Look for default values + if (!isset($v_result_list[PCLZIP_OPT_TEMP_FILE_THRESHOLD])) { + + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privOptionDefaultThreshold() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privOptionDefaultThreshold(&$p_options) + { + $v_result=1; + + if (isset($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD]) + || isset($p_options[PCLZIP_OPT_TEMP_FILE_OFF])) { + return $v_result; + } + + // ----- Get 'memory_limit' configuration value + $v_memory_limit = ini_get('memory_limit'); + $v_memory_limit = trim($v_memory_limit); + $last = strtolower(substr($v_memory_limit, -1)); + + if($last == 'g') + //$v_memory_limit = $v_memory_limit*1024*1024*1024; + $v_memory_limit = $v_memory_limit*1073741824; + if($last == 'm') + //$v_memory_limit = $v_memory_limit*1024*1024; + $v_memory_limit = $v_memory_limit*1048576; + if($last == 'k') + $v_memory_limit = $v_memory_limit*1024; + + $p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD] = floor($v_memory_limit*PCLZIP_TEMPORARY_FILE_RATIO); + + + // ----- Sanity check : No threshold if value lower than 1M + if ($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD] < 1048576) { + unset($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD]); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privFileDescrParseAtt() + // Description : + // Parameters : + // Return Values : + // 1 on success. + // 0 on failure. + // -------------------------------------------------------------------------------- + function privFileDescrParseAtt(&$p_file_list, &$p_filedescr, $v_options, $v_requested_options=false) + { + $v_result=1; + + // ----- For each file in the list check the attributes + foreach ($p_file_list as $v_key => $v_value) { + + // ----- Check if the option is supported + if (!isset($v_requested_options[$v_key])) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid file attribute '".$v_key."' for this file"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Look for attribute + switch ($v_key) { + case PCLZIP_ATT_FILE_NAME : + if (!is_string($v_value)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid type ".gettype($v_value).". String expected for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + + $p_filedescr['filename'] = PclZipUtilPathReduction($v_value); + + if ($p_filedescr['filename'] == '') { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid empty filename for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + + break; + + case PCLZIP_ATT_FILE_NEW_SHORT_NAME : + if (!is_string($v_value)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid type ".gettype($v_value).". String expected for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + + $p_filedescr['new_short_name'] = PclZipUtilPathReduction($v_value); + + if ($p_filedescr['new_short_name'] == '') { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid empty short filename for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + break; + + case PCLZIP_ATT_FILE_NEW_FULL_NAME : + if (!is_string($v_value)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid type ".gettype($v_value).". String expected for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + + $p_filedescr['new_full_name'] = PclZipUtilPathReduction($v_value); + + if ($p_filedescr['new_full_name'] == '') { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid empty full filename for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + break; + + // ----- Look for options that takes a string + case PCLZIP_ATT_FILE_COMMENT : + if (!is_string($v_value)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid type ".gettype($v_value).". String expected for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + + $p_filedescr['comment'] = $v_value; + break; + + case PCLZIP_ATT_FILE_MTIME : + if (!is_integer($v_value)) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE, "Invalid type ".gettype($v_value).". Integer expected for attribute '".PclZipUtilOptionText($v_key)."'"); + return PclZip::errorCode(); + } + + $p_filedescr['mtime'] = $v_value; + break; + + case PCLZIP_ATT_FILE_CONTENT : + $p_filedescr['content'] = $v_value; + break; + + default : + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, + "Unknown parameter '".$v_key."'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Look for mandatory options + if ($v_requested_options !== false) { + for ($key=reset($v_requested_options); $key=key($v_requested_options); $key=next($v_requested_options)) { + // ----- Look for mandatory option + if ($v_requested_options[$key] == 'mandatory') { + // ----- Look if present + if (!isset($p_file_list[$key])) { + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Missing mandatory parameter ".PclZipUtilOptionText($key)."(".$key.")"); + return PclZip::errorCode(); + } + } + } + } + + // end foreach + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privFileDescrExpand() + // Description : + // This method look for each item of the list to see if its a file, a folder + // or a string to be added as file. For any other type of files (link, other) + // just ignore the item. + // Then prepare the information that will be stored for that file. + // When its a folder, expand the folder with all the files that are in that + // folder (recursively). + // Parameters : + // Return Values : + // 1 on success. + // 0 on failure. + // -------------------------------------------------------------------------------- + function privFileDescrExpand(&$p_filedescr_list, &$p_options) + { + $v_result=1; + + // ----- Create a result list + $v_result_list = array(); + + // ----- Look each entry + for ($i=0; $i<sizeof($p_filedescr_list); $i++) { + + // ----- Get filedescr + $v_descr = $p_filedescr_list[$i]; + + // ----- Reduce the filename + $v_descr['filename'] = PclZipUtilTranslateWinPath($v_descr['filename'], false); + $v_descr['filename'] = PclZipUtilPathReduction($v_descr['filename']); + + // ----- Look for real file or folder + if (file_exists($v_descr['filename'])) { + if (@is_file($v_descr['filename'])) { + $v_descr['type'] = 'file'; + } + else if (@is_dir($v_descr['filename'])) { + $v_descr['type'] = 'folder'; + } + else if (@is_link($v_descr['filename'])) { + // skip + continue; + } + else { + // skip + continue; + } + } + + // ----- Look for string added as file + else if (isset($v_descr['content'])) { + $v_descr['type'] = 'virtual_file'; + } + + // ----- Missing file + else { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_MISSING_FILE, "File '".$v_descr['filename']."' does not exist"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Calculate the stored filename + $this->privCalculateStoredFilename($v_descr, $p_options); + + // ----- Add the descriptor in result list + $v_result_list[sizeof($v_result_list)] = $v_descr; + + // ----- Look for folder + if ($v_descr['type'] == 'folder') { + // ----- List of items in folder + $v_dirlist_descr = array(); + $v_dirlist_nb = 0; + if ($v_folder_handler = @opendir($v_descr['filename'])) { + while (($v_item_handler = @readdir($v_folder_handler)) !== false) { + + // ----- Skip '.' and '..' + if (($v_item_handler == '.') || ($v_item_handler == '..')) { + continue; + } + + // ----- Compose the full filename + $v_dirlist_descr[$v_dirlist_nb]['filename'] = $v_descr['filename'].'/'.$v_item_handler; + + // ----- Look for different stored filename + // Because the name of the folder was changed, the name of the + // files/sub-folders also change + if (($v_descr['stored_filename'] != $v_descr['filename']) + && (!isset($p_options[PCLZIP_OPT_REMOVE_ALL_PATH]))) { + if ($v_descr['stored_filename'] != '') { + $v_dirlist_descr[$v_dirlist_nb]['new_full_name'] = $v_descr['stored_filename'].'/'.$v_item_handler; + } + else { + $v_dirlist_descr[$v_dirlist_nb]['new_full_name'] = $v_item_handler; + } + } + + $v_dirlist_nb++; + } + + @closedir($v_folder_handler); + } + else { + // TBC : unable to open folder in read mode + } + + // ----- Expand each element of the list + if ($v_dirlist_nb != 0) { + // ----- Expand + if (($v_result = $this->privFileDescrExpand($v_dirlist_descr, $p_options)) != 1) { + return $v_result; + } + + // ----- Concat the resulting list + $v_result_list = array_merge($v_result_list, $v_dirlist_descr); + } + else { + } + + // ----- Free local array + unset($v_dirlist_descr); + } + } + + // ----- Get the result list + $p_filedescr_list = $v_result_list; + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privCreate() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privCreate($p_filedescr_list, &$p_result_list, &$p_options) + { + $v_result=1; + $v_list_detail = array(); + + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Open the file in write mode + if (($v_result = $this->privOpenFd('wb')) != 1) + { + // ----- Return + return $v_result; + } + + // ----- Add the list of files + $v_result = $this->privAddList($p_filedescr_list, $p_result_list, $p_options); + + // ----- Close + $this->privCloseFd(); + + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privAdd() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privAdd($p_filedescr_list, &$p_result_list, &$p_options) + { + $v_result=1; + $v_list_detail = array(); + + // ----- Look if the archive exists or is empty + if ((!is_file($this->zipname)) || (filesize($this->zipname) == 0)) + { + + // ----- Do a create + $v_result = $this->privCreate($p_filedescr_list, $p_result_list, $p_options); + + // ----- Return + return $v_result; + } + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Open the zip file + if (($v_result=$this->privOpenFd('rb')) != 1) + { + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) + { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result; + } + + // ----- Go to beginning of File + @rewind($this->zip_fd); + + // ----- Creates a temporay file + $v_zip_temp_name = PCLZIP_TEMPORARY_DIR.uniqid('pclzip-').'.tmp'; + + // ----- Open the temporary file in write mode + if (($v_zip_temp_fd = @fopen($v_zip_temp_name, 'wb')) == 0) + { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open temporary file \''.$v_zip_temp_name.'\' in binary write mode'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Copy the files from the archive to the temporary file + // TBC : Here I should better append the file and go back to erase the central dir + $v_size = $v_central_dir['offset']; + while ($v_size != 0) + { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = fread($this->zip_fd, $v_read_size); + @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Swap the file descriptor + // Here is a trick : I swap the temporary fd with the zip fd, in order to use + // the following methods on the temporary fil and not the real archive + $v_swap = $this->zip_fd; + $this->zip_fd = $v_zip_temp_fd; + $v_zip_temp_fd = $v_swap; + + // ----- Add the files + $v_header_list = array(); + if (($v_result = $this->privAddFileList($p_filedescr_list, $v_header_list, $p_options)) != 1) + { + fclose($v_zip_temp_fd); + $this->privCloseFd(); + @unlink($v_zip_temp_name); + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + + // ----- Store the offset of the central dir + $v_offset = @ftell($this->zip_fd); + + // ----- Copy the block of file headers from the old archive + $v_size = $v_central_dir['size']; + while ($v_size != 0) + { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($v_zip_temp_fd, $v_read_size); + @fwrite($this->zip_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Create the Central Dir files header + for ($i=0, $v_count=0; $i<sizeof($v_header_list); $i++) + { + // ----- Create the file header + if ($v_header_list[$i]['status'] == 'ok') { + if (($v_result = $this->privWriteCentralFileHeader($v_header_list[$i])) != 1) { + fclose($v_zip_temp_fd); + $this->privCloseFd(); + @unlink($v_zip_temp_name); + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + $v_count++; + } + + // ----- Transform the header to a 'usable' info + $this->privConvertHeader2FileInfo($v_header_list[$i], $p_result_list[$i]); + } + + // ----- Zip file comment + $v_comment = $v_central_dir['comment']; + if (isset($p_options[PCLZIP_OPT_COMMENT])) { + $v_comment = $p_options[PCLZIP_OPT_COMMENT]; + } + if (isset($p_options[PCLZIP_OPT_ADD_COMMENT])) { + $v_comment = $v_comment.$p_options[PCLZIP_OPT_ADD_COMMENT]; + } + if (isset($p_options[PCLZIP_OPT_PREPEND_COMMENT])) { + $v_comment = $p_options[PCLZIP_OPT_PREPEND_COMMENT].$v_comment; + } + + // ----- Calculate the size of the central header + $v_size = @ftell($this->zip_fd)-$v_offset; + + // ----- Create the central dir footer + if (($v_result = $this->privWriteCentralHeader($v_count+$v_central_dir['entries'], $v_size, $v_offset, $v_comment)) != 1) + { + // ----- Reset the file list + unset($v_header_list); + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + + // ----- Swap back the file descriptor + $v_swap = $this->zip_fd; + $this->zip_fd = $v_zip_temp_fd; + $v_zip_temp_fd = $v_swap; + + // ----- Close + $this->privCloseFd(); + + // ----- Close the temporary file + @fclose($v_zip_temp_fd); + + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Delete the zip file + // TBC : I should test the result ... + @unlink($this->zipname); + + // ----- Rename the temporary file + // TBC : I should test the result ... + //@rename($v_zip_temp_name, $this->zipname); + PclZipUtilRename($v_zip_temp_name, $this->zipname); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privOpenFd() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + function privOpenFd($p_mode) + { + $v_result=1; + + // ----- Look if already open + if ($this->zip_fd != 0) + { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Zip file \''.$this->zipname.'\' already open'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Open the zip file + if (($this->zip_fd = @fopen($this->zipname, $p_mode)) == 0) + { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open archive \''.$this->zipname.'\' in '.$p_mode.' mode'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privCloseFd() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + function privCloseFd() + { + $v_result=1; + + if ($this->zip_fd != 0) + @fclose($this->zip_fd); + $this->zip_fd = 0; + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privAddList() + // Description : + // $p_add_dir and $p_remove_dir will give the ability to memorize a path which is + // different from the real path of the file. This is usefull if you want to have PclTar + // running in any directory, and memorize relative path from an other directory. + // Parameters : + // $p_list : An array containing the file or directory names to add in the tar + // $p_result_list : list of added files with their properties (specially the status field) + // $p_add_dir : Path to add in the filename path archived + // $p_remove_dir : Path to remove in the filename path archived + // Return Values : + // -------------------------------------------------------------------------------- +// function privAddList($p_list, &$p_result_list, $p_add_dir, $p_remove_dir, $p_remove_all_dir, &$p_options) + function privAddList($p_filedescr_list, &$p_result_list, &$p_options) + { + $v_result=1; + + // ----- Add the files + $v_header_list = array(); + if (($v_result = $this->privAddFileList($p_filedescr_list, $v_header_list, $p_options)) != 1) + { + // ----- Return + return $v_result; + } + + // ----- Store the offset of the central dir + $v_offset = @ftell($this->zip_fd); + + // ----- Create the Central Dir files header + for ($i=0,$v_count=0; $i<sizeof($v_header_list); $i++) + { + // ----- Create the file header + if ($v_header_list[$i]['status'] == 'ok') { + if (($v_result = $this->privWriteCentralFileHeader($v_header_list[$i])) != 1) { + // ----- Return + return $v_result; + } + $v_count++; + } + + // ----- Transform the header to a 'usable' info + $this->privConvertHeader2FileInfo($v_header_list[$i], $p_result_list[$i]); + } + + // ----- Zip file comment + $v_comment = ''; + if (isset($p_options[PCLZIP_OPT_COMMENT])) { + $v_comment = $p_options[PCLZIP_OPT_COMMENT]; + } + + // ----- Calculate the size of the central header + $v_size = @ftell($this->zip_fd)-$v_offset; + + // ----- Create the central dir footer + if (($v_result = $this->privWriteCentralHeader($v_count, $v_size, $v_offset, $v_comment)) != 1) + { + // ----- Reset the file list + unset($v_header_list); + + // ----- Return + return $v_result; + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privAddFileList() + // Description : + // Parameters : + // $p_filedescr_list : An array containing the file description + // or directory names to add in the zip + // $p_result_list : list of added files with their properties (specially the status field) + // Return Values : + // -------------------------------------------------------------------------------- + function privAddFileList($p_filedescr_list, &$p_result_list, &$p_options) + { + $v_result=1; + $v_header = array(); + + // ----- Recuperate the current number of elt in list + $v_nb = sizeof($p_result_list); + + // ----- Loop on the files + for ($j=0; ($j<sizeof($p_filedescr_list)) && ($v_result==1); $j++) { + // ----- Format the filename + $p_filedescr_list[$j]['filename'] + = PclZipUtilTranslateWinPath($p_filedescr_list[$j]['filename'], false); + + + // ----- Skip empty file names + // TBC : Can this be possible ? not checked in DescrParseAtt ? + if ($p_filedescr_list[$j]['filename'] == "") { + continue; + } + + // ----- Check the filename + if ( ($p_filedescr_list[$j]['type'] != 'virtual_file') + && (!file_exists($p_filedescr_list[$j]['filename']))) { + PclZip::privErrorLog(PCLZIP_ERR_MISSING_FILE, "File '".$p_filedescr_list[$j]['filename']."' does not exist"); + return PclZip::errorCode(); + } + + // ----- Look if it is a file or a dir with no all path remove option + // or a dir with all its path removed +// if ( (is_file($p_filedescr_list[$j]['filename'])) +// || ( is_dir($p_filedescr_list[$j]['filename']) + if ( ($p_filedescr_list[$j]['type'] == 'file') + || ($p_filedescr_list[$j]['type'] == 'virtual_file') + || ( ($p_filedescr_list[$j]['type'] == 'folder') + && ( !isset($p_options[PCLZIP_OPT_REMOVE_ALL_PATH]) + || !$p_options[PCLZIP_OPT_REMOVE_ALL_PATH])) + ) { + + // ----- Add the file + $v_result = $this->privAddFile($p_filedescr_list[$j], $v_header, + $p_options); + if ($v_result != 1) { + return $v_result; + } + + // ----- Store the file infos + $p_result_list[$v_nb++] = $v_header; + } + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privAddFile() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privAddFile($p_filedescr, &$p_header, &$p_options) + { + $v_result=1; + + // ----- Working variable + $p_filename = $p_filedescr['filename']; + + // TBC : Already done in the fileAtt check ... ? + if ($p_filename == "") { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_PARAMETER, "Invalid file list parameter (invalid or empty list)"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Look for a stored different filename + /* TBC : Removed + if (isset($p_filedescr['stored_filename'])) { + $v_stored_filename = $p_filedescr['stored_filename']; + } + else { + $v_stored_filename = $p_filedescr['stored_filename']; + } + */ + + // ----- Set the file properties + clearstatcache(); + $p_header['version'] = 20; + $p_header['version_extracted'] = 10; + $p_header['flag'] = 0; + $p_header['compression'] = 0; + $p_header['crc'] = 0; + $p_header['compressed_size'] = 0; + $p_header['filename_len'] = strlen($p_filename); + $p_header['extra_len'] = 0; + $p_header['disk'] = 0; + $p_header['internal'] = 0; + $p_header['offset'] = 0; + $p_header['filename'] = $p_filename; +// TBC : Removed $p_header['stored_filename'] = $v_stored_filename; + $p_header['stored_filename'] = $p_filedescr['stored_filename']; + $p_header['extra'] = ''; + $p_header['status'] = 'ok'; + $p_header['index'] = -1; + + // ----- Look for regular file + if ($p_filedescr['type']=='file') { + $p_header['external'] = 0x00000000; + $p_header['size'] = filesize($p_filename); + } + + // ----- Look for regular folder + else if ($p_filedescr['type']=='folder') { + $p_header['external'] = 0x00000010; + $p_header['mtime'] = filemtime($p_filename); + $p_header['size'] = filesize($p_filename); + } + + // ----- Look for virtual file + else if ($p_filedescr['type'] == 'virtual_file') { + $p_header['external'] = 0x00000000; + $p_header['size'] = strlen($p_filedescr['content']); + } + + + // ----- Look for filetime + if (isset($p_filedescr['mtime'])) { + $p_header['mtime'] = $p_filedescr['mtime']; + } + else if ($p_filedescr['type'] == 'virtual_file') { + $p_header['mtime'] = time(); + } + else { + $p_header['mtime'] = filemtime($p_filename); + } + + // ------ Look for file comment + if (isset($p_filedescr['comment'])) { + $p_header['comment_len'] = strlen($p_filedescr['comment']); + $p_header['comment'] = $p_filedescr['comment']; + } + else { + $p_header['comment_len'] = 0; + $p_header['comment'] = ''; + } + + // ----- Look for pre-add callback + if (isset($p_options[PCLZIP_CB_PRE_ADD])) { + + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_header, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. +// eval('$v_result = '.$p_options[PCLZIP_CB_PRE_ADD].'(PCLZIP_CB_PRE_ADD, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_PRE_ADD](PCLZIP_CB_PRE_ADD, $v_local_header); + if ($v_result == 0) { + // ----- Change the file status + $p_header['status'] = "skipped"; + $v_result = 1; + } + + // ----- Update the informations + // Only some fields can be modified + if ($p_header['stored_filename'] != $v_local_header['stored_filename']) { + $p_header['stored_filename'] = PclZipUtilPathReduction($v_local_header['stored_filename']); + } + } + + // ----- Look for empty stored filename + if ($p_header['stored_filename'] == "") { + $p_header['status'] = "filtered"; + } + + // ----- Check the path length + if (strlen($p_header['stored_filename']) > 0xFF) { + $p_header['status'] = 'filename_too_long'; + } + + // ----- Look if no error, or file not skipped + if ($p_header['status'] == 'ok') { + + // ----- Look for a file + if ($p_filedescr['type'] == 'file') { + // ----- Look for using temporary file to zip + if ( (!isset($p_options[PCLZIP_OPT_TEMP_FILE_OFF])) + && (isset($p_options[PCLZIP_OPT_TEMP_FILE_ON]) + || (isset($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD]) + && ($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD] <= $p_header['size'])) ) ) { + $v_result = $this->privAddFileUsingTempFile($p_filedescr, $p_header, $p_options); + if ($v_result < PCLZIP_ERR_NO_ERROR) { + return $v_result; + } + } + + // ----- Use "in memory" zip algo + else { + + // ----- Open the source file + if (($v_file = @fopen($p_filename, "rb")) == 0) { + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, "Unable to open file '$p_filename' in binary read mode"); + return PclZip::errorCode(); + } + + // ----- Read the file content + $v_content = @fread($v_file, $p_header['size']); + + // ----- Close the file + @fclose($v_file); + + // ----- Calculate the CRC + $p_header['crc'] = @crc32($v_content); + + // ----- Look for no compression + if ($p_options[PCLZIP_OPT_NO_COMPRESSION]) { + // ----- Set header parameters + $p_header['compressed_size'] = $p_header['size']; + $p_header['compression'] = 0; + } + + // ----- Look for normal compression + else { + // ----- Compress the content + $v_content = @gzdeflate($v_content); + + // ----- Set header parameters + $p_header['compressed_size'] = strlen($v_content); + $p_header['compression'] = 8; + } + + // ----- Call the header generation + if (($v_result = $this->privWriteFileHeader($p_header)) != 1) { + @fclose($v_file); + return $v_result; + } + + // ----- Write the compressed (or not) content + @fwrite($this->zip_fd, $v_content, $p_header['compressed_size']); + + } + + } + + // ----- Look for a virtual file (a file from string) + else if ($p_filedescr['type'] == 'virtual_file') { + + $v_content = $p_filedescr['content']; + + // ----- Calculate the CRC + $p_header['crc'] = @crc32($v_content); + + // ----- Look for no compression + if ($p_options[PCLZIP_OPT_NO_COMPRESSION]) { + // ----- Set header parameters + $p_header['compressed_size'] = $p_header['size']; + $p_header['compression'] = 0; + } + + // ----- Look for normal compression + else { + // ----- Compress the content + $v_content = @gzdeflate($v_content); + + // ----- Set header parameters + $p_header['compressed_size'] = strlen($v_content); + $p_header['compression'] = 8; + } + + // ----- Call the header generation + if (($v_result = $this->privWriteFileHeader($p_header)) != 1) { + @fclose($v_file); + return $v_result; + } + + // ----- Write the compressed (or not) content + @fwrite($this->zip_fd, $v_content, $p_header['compressed_size']); + } + + // ----- Look for a directory + else if ($p_filedescr['type'] == 'folder') { + // ----- Look for directory last '/' + if (@substr($p_header['stored_filename'], -1) != '/') { + $p_header['stored_filename'] .= '/'; + } + + // ----- Set the file properties + $p_header['size'] = 0; + //$p_header['external'] = 0x41FF0010; // Value for a folder : to be checked + $p_header['external'] = 0x00000010; // Value for a folder : to be checked + + // ----- Call the header generation + if (($v_result = $this->privWriteFileHeader($p_header)) != 1) + { + return $v_result; + } + } + } + + // ----- Look for post-add callback + if (isset($p_options[PCLZIP_CB_POST_ADD])) { + + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_header, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. +// eval('$v_result = '.$p_options[PCLZIP_CB_POST_ADD].'(PCLZIP_CB_POST_ADD, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_POST_ADD](PCLZIP_CB_POST_ADD, $v_local_header); + if ($v_result == 0) { + // ----- Ignored + $v_result = 1; + } + + // ----- Update the informations + // Nothing can be modified + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privAddFileUsingTempFile() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privAddFileUsingTempFile($p_filedescr, &$p_header, &$p_options) + { + $v_result=PCLZIP_ERR_NO_ERROR; + + // ----- Working variable + $p_filename = $p_filedescr['filename']; + + + // ----- Open the source file + if (($v_file = @fopen($p_filename, "rb")) == 0) { + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, "Unable to open file '$p_filename' in binary read mode"); + return PclZip::errorCode(); + } + + // ----- Creates a compressed temporary file + $v_gzip_temp_name = PCLZIP_TEMPORARY_DIR.uniqid('pclzip-').'.gz'; + if (($v_file_compressed = @gzopen($v_gzip_temp_name, "wb")) == 0) { + fclose($v_file); + PclZip::privErrorLog(PCLZIP_ERR_WRITE_OPEN_FAIL, 'Unable to open temporary file \''.$v_gzip_temp_name.'\' in binary write mode'); + return PclZip::errorCode(); + } + + // ----- Read the file by PCLZIP_READ_BLOCK_SIZE octets blocks + $v_size = filesize($p_filename); + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($v_file, $v_read_size); + //$v_binary_data = pack('a'.$v_read_size, $v_buffer); + @gzputs($v_file_compressed, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Close the file + @fclose($v_file); + @gzclose($v_file_compressed); + + // ----- Check the minimum file size + if (filesize($v_gzip_temp_name) < 18) { + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'gzip temporary file \''.$v_gzip_temp_name.'\' has invalid filesize - should be minimum 18 bytes'); + return PclZip::errorCode(); + } + + // ----- Extract the compressed attributes + if (($v_file_compressed = @fopen($v_gzip_temp_name, "rb")) == 0) { + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open temporary file \''.$v_gzip_temp_name.'\' in binary read mode'); + return PclZip::errorCode(); + } + + // ----- Read the gzip file header + $v_binary_data = @fread($v_file_compressed, 10); + $v_data_header = unpack('a1id1/a1id2/a1cm/a1flag/Vmtime/a1xfl/a1os', $v_binary_data); + + // ----- Check some parameters + $v_data_header['os'] = bin2hex($v_data_header['os']); + + // ----- Read the gzip file footer + @fseek($v_file_compressed, filesize($v_gzip_temp_name)-8); + $v_binary_data = @fread($v_file_compressed, 8); + $v_data_footer = unpack('Vcrc/Vcompressed_size', $v_binary_data); + + // ----- Set the attributes + $p_header['compression'] = ord($v_data_header['cm']); + //$p_header['mtime'] = $v_data_header['mtime']; + $p_header['crc'] = $v_data_footer['crc']; + $p_header['compressed_size'] = filesize($v_gzip_temp_name)-18; + + // ----- Close the file + @fclose($v_file_compressed); + + // ----- Call the header generation + if (($v_result = $this->privWriteFileHeader($p_header)) != 1) { + return $v_result; + } + + // ----- Add the compressed data + if (($v_file_compressed = @fopen($v_gzip_temp_name, "rb")) == 0) + { + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open temporary file \''.$v_gzip_temp_name.'\' in binary read mode'); + return PclZip::errorCode(); + } + + // ----- Read the file by PCLZIP_READ_BLOCK_SIZE octets blocks + fseek($v_file_compressed, 10); + $v_size = $p_header['compressed_size']; + while ($v_size != 0) + { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($v_file_compressed, $v_read_size); + //$v_binary_data = pack('a'.$v_read_size, $v_buffer); + @fwrite($this->zip_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Close the file + @fclose($v_file_compressed); + + // ----- Unlink the temporary file + @unlink($v_gzip_temp_name); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privCalculateStoredFilename() + // Description : + // Based on file descriptor properties and global options, this method + // calculate the filename that will be stored in the archive. + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privCalculateStoredFilename(&$p_filedescr, &$p_options) + { + $v_result=1; + + // ----- Working variables + $p_filename = $p_filedescr['filename']; + if (isset($p_options[PCLZIP_OPT_ADD_PATH])) { + $p_add_dir = $p_options[PCLZIP_OPT_ADD_PATH]; + } + else { + $p_add_dir = ''; + } + if (isset($p_options[PCLZIP_OPT_REMOVE_PATH])) { + $p_remove_dir = $p_options[PCLZIP_OPT_REMOVE_PATH]; + } + else { + $p_remove_dir = ''; + } + if (isset($p_options[PCLZIP_OPT_REMOVE_ALL_PATH])) { + $p_remove_all_dir = $p_options[PCLZIP_OPT_REMOVE_ALL_PATH]; + } + else { + $p_remove_all_dir = 0; + } + + + // ----- Look for full name change + if (isset($p_filedescr['new_full_name'])) { + // ----- Remove drive letter if any + $v_stored_filename = PclZipUtilTranslateWinPath($p_filedescr['new_full_name']); + } + + // ----- Look for path and/or short name change + else { + + // ----- Look for short name change + // Its when we cahnge just the filename but not the path + if (isset($p_filedescr['new_short_name'])) { + $v_path_info = pathinfo($p_filename); + $v_dir = ''; + if ($v_path_info['dirname'] != '') { + $v_dir = $v_path_info['dirname'].'/'; + } + $v_stored_filename = $v_dir.$p_filedescr['new_short_name']; + } + else { + // ----- Calculate the stored filename + $v_stored_filename = $p_filename; + } + + // ----- Look for all path to remove + if ($p_remove_all_dir) { + $v_stored_filename = basename($p_filename); + } + // ----- Look for partial path remove + else if ($p_remove_dir != "") { + if (substr($p_remove_dir, -1) != '/') + $p_remove_dir .= "/"; + + if ( (substr($p_filename, 0, 2) == "./") + || (substr($p_remove_dir, 0, 2) == "./")) { + + if ( (substr($p_filename, 0, 2) == "./") + && (substr($p_remove_dir, 0, 2) != "./")) { + $p_remove_dir = "./".$p_remove_dir; + } + if ( (substr($p_filename, 0, 2) != "./") + && (substr($p_remove_dir, 0, 2) == "./")) { + $p_remove_dir = substr($p_remove_dir, 2); + } + } + + $v_compare = PclZipUtilPathInclusion($p_remove_dir, + $v_stored_filename); + if ($v_compare > 0) { + if ($v_compare == 2) { + $v_stored_filename = ""; + } + else { + $v_stored_filename = substr($v_stored_filename, + strlen($p_remove_dir)); + } + } + } + + // ----- Remove drive letter if any + $v_stored_filename = PclZipUtilTranslateWinPath($v_stored_filename); + + // ----- Look for path to add + if ($p_add_dir != "") { + if (substr($p_add_dir, -1) == "/") + $v_stored_filename = $p_add_dir.$v_stored_filename; + else + $v_stored_filename = $p_add_dir."/".$v_stored_filename; + } + } + + // ----- Filename (reduce the path of stored name) + $v_stored_filename = PclZipUtilPathReduction($v_stored_filename); + $p_filedescr['stored_filename'] = $v_stored_filename; + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privWriteFileHeader() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privWriteFileHeader(&$p_header) + { + $v_result=1; + + // ----- Store the offset position of the file + $p_header['offset'] = ftell($this->zip_fd); + + // ----- Transform UNIX mtime to DOS format mdate/mtime + $v_date = getdate($p_header['mtime']); + $v_mtime = ($v_date['hours']<<11) + ($v_date['minutes']<<5) + $v_date['seconds']/2; + $v_mdate = (($v_date['year']-1980)<<9) + ($v_date['mon']<<5) + $v_date['mday']; + + // ----- Packed data + $v_binary_data = pack("VvvvvvVVVvv", 0x04034b50, + $p_header['version_extracted'], $p_header['flag'], + $p_header['compression'], $v_mtime, $v_mdate, + $p_header['crc'], $p_header['compressed_size'], + $p_header['size'], + strlen($p_header['stored_filename']), + $p_header['extra_len']); + + // ----- Write the first 148 bytes of the header in the archive + fputs($this->zip_fd, $v_binary_data, 30); + + // ----- Write the variable fields + if (strlen($p_header['stored_filename']) != 0) + { + fputs($this->zip_fd, $p_header['stored_filename'], strlen($p_header['stored_filename'])); + } + if ($p_header['extra_len'] != 0) + { + fputs($this->zip_fd, $p_header['extra'], $p_header['extra_len']); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privWriteCentralFileHeader() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privWriteCentralFileHeader(&$p_header) + { + $v_result=1; + + // TBC + //for(reset($p_header); $key = key($p_header); next($p_header)) { + //} + + // ----- Transform UNIX mtime to DOS format mdate/mtime + $v_date = getdate($p_header['mtime']); + $v_mtime = ($v_date['hours']<<11) + ($v_date['minutes']<<5) + $v_date['seconds']/2; + $v_mdate = (($v_date['year']-1980)<<9) + ($v_date['mon']<<5) + $v_date['mday']; + + + // ----- Packed data + $v_binary_data = pack("VvvvvvvVVVvvvvvVV", 0x02014b50, + $p_header['version'], $p_header['version_extracted'], + $p_header['flag'], $p_header['compression'], + $v_mtime, $v_mdate, $p_header['crc'], + $p_header['compressed_size'], $p_header['size'], + strlen($p_header['stored_filename']), + $p_header['extra_len'], $p_header['comment_len'], + $p_header['disk'], $p_header['internal'], + $p_header['external'], $p_header['offset']); + + // ----- Write the 42 bytes of the header in the zip file + fputs($this->zip_fd, $v_binary_data, 46); + + // ----- Write the variable fields + if (strlen($p_header['stored_filename']) != 0) + { + fputs($this->zip_fd, $p_header['stored_filename'], strlen($p_header['stored_filename'])); + } + if ($p_header['extra_len'] != 0) + { + fputs($this->zip_fd, $p_header['extra'], $p_header['extra_len']); + } + if ($p_header['comment_len'] != 0) + { + fputs($this->zip_fd, $p_header['comment'], $p_header['comment_len']); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privWriteCentralHeader() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privWriteCentralHeader($p_nb_entries, $p_size, $p_offset, $p_comment) + { + $v_result=1; + + // ----- Packed data + $v_binary_data = pack("VvvvvVVv", 0x06054b50, 0, 0, $p_nb_entries, + $p_nb_entries, $p_size, + $p_offset, strlen($p_comment)); + + // ----- Write the 22 bytes of the header in the zip file + fputs($this->zip_fd, $v_binary_data, 22); + + // ----- Write the variable fields + if (strlen($p_comment) != 0) + { + fputs($this->zip_fd, $p_comment, strlen($p_comment)); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privList() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privList(&$p_list) + { + $v_result=1; + + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Open the zip file + if (($this->zip_fd = @fopen($this->zipname, 'rb')) == 0) + { + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open archive \''.$this->zipname.'\' in binary read mode'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) + { + $this->privSwapBackMagicQuotes(); + return $v_result; + } + + // ----- Go to beginning of Central Dir + @rewind($this->zip_fd); + if (@fseek($this->zip_fd, $v_central_dir['offset'])) + { + $this->privSwapBackMagicQuotes(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read each entry + for ($i=0; $i<$v_central_dir['entries']; $i++) + { + // ----- Read the file header + if (($v_result = $this->privReadCentralFileHeader($v_header)) != 1) + { + $this->privSwapBackMagicQuotes(); + return $v_result; + } + $v_header['index'] = $i; + + // ----- Get the only interesting attributes + $this->privConvertHeader2FileInfo($v_header, $p_list[$i]); + unset($v_header); + } + + // ----- Close the zip file + $this->privCloseFd(); + + // ----- Magic quotes trick + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privConvertHeader2FileInfo() + // Description : + // This function takes the file informations from the central directory + // entries and extract the interesting parameters that will be given back. + // The resulting file infos are set in the array $p_info + // $p_info['filename'] : Filename with full path. Given by user (add), + // extracted in the filesystem (extract). + // $p_info['stored_filename'] : Stored filename in the archive. + // $p_info['size'] = Size of the file. + // $p_info['compressed_size'] = Compressed size of the file. + // $p_info['mtime'] = Last modification date of the file. + // $p_info['comment'] = Comment associated with the file. + // $p_info['folder'] = true/false : indicates if the entry is a folder or not. + // $p_info['status'] = status of the action on the file. + // $p_info['crc'] = CRC of the file content. + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privConvertHeader2FileInfo($p_header, &$p_info) + { + $v_result=1; + + // ----- Get the interesting attributes + $v_temp_path = PclZipUtilPathReduction($p_header['filename']); + $p_info['filename'] = $v_temp_path; + $v_temp_path = PclZipUtilPathReduction($p_header['stored_filename']); + $p_info['stored_filename'] = $v_temp_path; + $p_info['size'] = $p_header['size']; + $p_info['compressed_size'] = $p_header['compressed_size']; + $p_info['mtime'] = $p_header['mtime']; + $p_info['comment'] = $p_header['comment']; + $p_info['folder'] = (($p_header['external']&0x00000010)==0x00000010); + $p_info['index'] = $p_header['index']; + $p_info['status'] = $p_header['status']; + $p_info['crc'] = $p_header['crc']; + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privExtractByRule() + // Description : + // Extract a file or directory depending of rules (by index, by name, ...) + // Parameters : + // $p_file_list : An array where will be placed the properties of each + // extracted file + // $p_path : Path to add while writing the extracted files + // $p_remove_path : Path to remove (from the file memorized path) while writing the + // extracted files. If the path does not match the file path, + // the file is extracted with its memorized path. + // $p_remove_path does not apply to 'list' mode. + // $p_path and $p_remove_path are commulative. + // Return Values : + // 1 on success,0 or less on error (see error code list) + // -------------------------------------------------------------------------------- + function privExtractByRule(&$p_file_list, $p_path, $p_remove_path, $p_remove_all_path, &$p_options) + { + $v_result=1; + + // ----- Magic quotes trick + $this->privDisableMagicQuotes(); + + // ----- Check the path + if ( ($p_path == "") + || ( (substr($p_path, 0, 1) != "/") + && (substr($p_path, 0, 3) != "../") + && (substr($p_path,1,2)!=":/"))) + $p_path = "./".$p_path; + + // ----- Reduce the path last (and duplicated) '/' + if (($p_path != "./") && ($p_path != "/")) + { + // ----- Look for the path end '/' + while (substr($p_path, -1) == "/") + { + $p_path = substr($p_path, 0, strlen($p_path)-1); + } + } + + // ----- Look for path to remove format (should end by /) + if (($p_remove_path != "") && (substr($p_remove_path, -1) != '/')) + { + $p_remove_path .= '/'; + } + $p_remove_path_size = strlen($p_remove_path); + + // ----- Open the zip file + if (($v_result = $this->privOpenFd('rb')) != 1) + { + $this->privSwapBackMagicQuotes(); + return $v_result; + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) + { + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + return $v_result; + } + + // ----- Start at beginning of Central Dir + $v_pos_entry = $v_central_dir['offset']; + + // ----- Read each entry + $j_start = 0; + for ($i=0, $v_nb_extracted=0; $i<$v_central_dir['entries']; $i++) + { + + // ----- Read next Central dir entry + @rewind($this->zip_fd); + if (@fseek($this->zip_fd, $v_pos_entry)) + { + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read the file header + $v_header = array(); + if (($v_result = $this->privReadCentralFileHeader($v_header)) != 1) + { + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + return $v_result; + } + + // ----- Store the index + $v_header['index'] = $i; + + // ----- Store the file position + $v_pos_entry = ftell($this->zip_fd); + + // ----- Look for the specific extract rules + $v_extract = false; + + // ----- Look for extract by name rule + if ( (isset($p_options[PCLZIP_OPT_BY_NAME])) + && ($p_options[PCLZIP_OPT_BY_NAME] != 0)) { + + // ----- Look if the filename is in the list + for ($j=0; ($j<sizeof($p_options[PCLZIP_OPT_BY_NAME])) && (!$v_extract); $j++) { + + // ----- Look for a directory + if (substr($p_options[PCLZIP_OPT_BY_NAME][$j], -1) == "/") { + + // ----- Look if the directory is in the filename path + if ( (strlen($v_header['stored_filename']) > strlen($p_options[PCLZIP_OPT_BY_NAME][$j])) + && (substr($v_header['stored_filename'], 0, strlen($p_options[PCLZIP_OPT_BY_NAME][$j])) == $p_options[PCLZIP_OPT_BY_NAME][$j])) { + $v_extract = true; + } + } + // ----- Look for a filename + elseif ($v_header['stored_filename'] == $p_options[PCLZIP_OPT_BY_NAME][$j]) { + $v_extract = true; + } + } + } + + // ----- Look for extract by ereg rule + // ereg() is deprecated with PHP 5.3 + /* + else if ( (isset($p_options[PCLZIP_OPT_BY_EREG])) + && ($p_options[PCLZIP_OPT_BY_EREG] != "")) { + + if (ereg($p_options[PCLZIP_OPT_BY_EREG], $v_header['stored_filename'])) { + $v_extract = true; + } + } + */ + + // ----- Look for extract by preg rule + else if ( (isset($p_options[PCLZIP_OPT_BY_PREG])) + && ($p_options[PCLZIP_OPT_BY_PREG] != "")) { + + if (preg_match($p_options[PCLZIP_OPT_BY_PREG], $v_header['stored_filename'])) { + $v_extract = true; + } + } + + // ----- Look for extract by index rule + else if ( (isset($p_options[PCLZIP_OPT_BY_INDEX])) + && ($p_options[PCLZIP_OPT_BY_INDEX] != 0)) { + + // ----- Look if the index is in the list + for ($j=$j_start; ($j<sizeof($p_options[PCLZIP_OPT_BY_INDEX])) && (!$v_extract); $j++) { + + if (($i>=$p_options[PCLZIP_OPT_BY_INDEX][$j]['start']) && ($i<=$p_options[PCLZIP_OPT_BY_INDEX][$j]['end'])) { + $v_extract = true; + } + if ($i>=$p_options[PCLZIP_OPT_BY_INDEX][$j]['end']) { + $j_start = $j+1; + } + + if ($p_options[PCLZIP_OPT_BY_INDEX][$j]['start']>$i) { + break; + } + } + } + + // ----- Look for no rule, which means extract all the archive + else { + $v_extract = true; + } + + // ----- Check compression method + if ( ($v_extract) + && ( ($v_header['compression'] != 8) + && ($v_header['compression'] != 0))) { + $v_header['status'] = 'unsupported_compression'; + + // ----- Look for PCLZIP_OPT_STOP_ON_ERROR + if ( (isset($p_options[PCLZIP_OPT_STOP_ON_ERROR])) + && ($p_options[PCLZIP_OPT_STOP_ON_ERROR]===true)) { + + $this->privSwapBackMagicQuotes(); + + PclZip::privErrorLog(PCLZIP_ERR_UNSUPPORTED_COMPRESSION, + "Filename '".$v_header['stored_filename']."' is " + ."compressed by an unsupported compression " + ."method (".$v_header['compression'].") "); + + return PclZip::errorCode(); + } + } + + // ----- Check encrypted files + if (($v_extract) && (($v_header['flag'] & 1) == 1)) { + $v_header['status'] = 'unsupported_encryption'; + + // ----- Look for PCLZIP_OPT_STOP_ON_ERROR + if ( (isset($p_options[PCLZIP_OPT_STOP_ON_ERROR])) + && ($p_options[PCLZIP_OPT_STOP_ON_ERROR]===true)) { + + $this->privSwapBackMagicQuotes(); + + PclZip::privErrorLog(PCLZIP_ERR_UNSUPPORTED_ENCRYPTION, + "Unsupported encryption for " + ." filename '".$v_header['stored_filename'] + ."'"); + + return PclZip::errorCode(); + } + } + + // ----- Look for real extraction + if (($v_extract) && ($v_header['status'] != 'ok')) { + $v_result = $this->privConvertHeader2FileInfo($v_header, + $p_file_list[$v_nb_extracted++]); + if ($v_result != 1) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result; + } + + $v_extract = false; + } + + // ----- Look for real extraction + if ($v_extract) + { + + // ----- Go to the file position + @rewind($this->zip_fd); + if (@fseek($this->zip_fd, $v_header['offset'])) + { + // ----- Close the zip file + $this->privCloseFd(); + + $this->privSwapBackMagicQuotes(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Look for extraction as string + if ($p_options[PCLZIP_OPT_EXTRACT_AS_STRING]) { + + $v_string = ''; + + // ----- Extracting the file + $v_result1 = $this->privExtractFileAsString($v_header, $v_string, $p_options); + if ($v_result1 < 1) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result1; + } + + // ----- Get the only interesting attributes + if (($v_result = $this->privConvertHeader2FileInfo($v_header, $p_file_list[$v_nb_extracted])) != 1) + { + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + return $v_result; + } + + // ----- Set the file content + $p_file_list[$v_nb_extracted]['content'] = $v_string; + + // ----- Next extracted file + $v_nb_extracted++; + + // ----- Look for user callback abort + if ($v_result1 == 2) { + break; + } + } + // ----- Look for extraction in standard output + elseif ( (isset($p_options[PCLZIP_OPT_EXTRACT_IN_OUTPUT])) + && ($p_options[PCLZIP_OPT_EXTRACT_IN_OUTPUT])) { + // ----- Extracting the file in standard output + $v_result1 = $this->privExtractFileInOutput($v_header, $p_options); + if ($v_result1 < 1) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result1; + } + + // ----- Get the only interesting attributes + if (($v_result = $this->privConvertHeader2FileInfo($v_header, $p_file_list[$v_nb_extracted++])) != 1) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result; + } + + // ----- Look for user callback abort + if ($v_result1 == 2) { + break; + } + } + // ----- Look for normal extraction + else { + // ----- Extracting the file + $v_result1 = $this->privExtractFile($v_header, + $p_path, $p_remove_path, + $p_remove_all_path, + $p_options); + if ($v_result1 < 1) { + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + return $v_result1; + } + + // ----- Get the only interesting attributes + if (($v_result = $this->privConvertHeader2FileInfo($v_header, $p_file_list[$v_nb_extracted++])) != 1) + { + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + return $v_result; + } + + // ----- Look for user callback abort + if ($v_result1 == 2) { + break; + } + } + } + } + + // ----- Close the zip file + $this->privCloseFd(); + $this->privSwapBackMagicQuotes(); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privExtractFile() + // Description : + // Parameters : + // Return Values : + // + // 1 : ... ? + // PCLZIP_ERR_USER_ABORTED(2) : User ask for extraction stop in callback + // -------------------------------------------------------------------------------- + function privExtractFile(&$p_entry, $p_path, $p_remove_path, $p_remove_all_path, &$p_options) + { + $v_result=1; + + // ----- Read the file header + if (($v_result = $this->privReadFileHeader($v_header)) != 1) + { + // ----- Return + return $v_result; + } + + + // ----- Check that the file header is coherent with $p_entry info + if ($this->privCheckFileHeaders($v_header, $p_entry) != 1) { + // TBC + } + + // ----- Look for all path to remove + if ($p_remove_all_path == true) { + // ----- Look for folder entry that not need to be extracted + if (($p_entry['external']&0x00000010)==0x00000010) { + + $p_entry['status'] = "filtered"; + + return $v_result; + } + + // ----- Get the basename of the path + $p_entry['filename'] = basename($p_entry['filename']); + } + + // ----- Look for path to remove + else if ($p_remove_path != "") + { + if (PclZipUtilPathInclusion($p_remove_path, $p_entry['filename']) == 2) + { + + // ----- Change the file status + $p_entry['status'] = "filtered"; + + // ----- Return + return $v_result; + } + + $p_remove_path_size = strlen($p_remove_path); + if (substr($p_entry['filename'], 0, $p_remove_path_size) == $p_remove_path) + { + + // ----- Remove the path + $p_entry['filename'] = substr($p_entry['filename'], $p_remove_path_size); + + } + } + + // ----- Add the path + if ($p_path != '') { + $p_entry['filename'] = $p_path."/".$p_entry['filename']; + } + + // ----- Check a base_dir_restriction + if (isset($p_options[PCLZIP_OPT_EXTRACT_DIR_RESTRICTION])) { + $v_inclusion + = PclZipUtilPathInclusion($p_options[PCLZIP_OPT_EXTRACT_DIR_RESTRICTION], + $p_entry['filename']); + if ($v_inclusion == 0) { + + PclZip::privErrorLog(PCLZIP_ERR_DIRECTORY_RESTRICTION, + "Filename '".$p_entry['filename']."' is " + ."outside PCLZIP_OPT_EXTRACT_DIR_RESTRICTION"); + + return PclZip::errorCode(); + } + } + + // ----- Look for pre-extract callback + if (isset($p_options[PCLZIP_CB_PRE_EXTRACT])) { + + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. +// eval('$v_result = '.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_PRE_EXTRACT](PCLZIP_CB_PRE_EXTRACT, $v_local_header); + if ($v_result == 0) { + // ----- Change the file status + $p_entry['status'] = "skipped"; + $v_result = 1; + } + + // ----- Look for abort result + if ($v_result == 2) { + // ----- This status is internal and will be changed in 'skipped' + $p_entry['status'] = "aborted"; + $v_result = PCLZIP_ERR_USER_ABORTED; + } + + // ----- Update the informations + // Only some fields can be modified + $p_entry['filename'] = $v_local_header['filename']; + } + + + // ----- Look if extraction should be done + if ($p_entry['status'] == 'ok') { + + // ----- Look for specific actions while the file exist + if (file_exists($p_entry['filename'])) + { + + // ----- Look if file is a directory + if (is_dir($p_entry['filename'])) + { + + // ----- Change the file status + $p_entry['status'] = "already_a_directory"; + + // ----- Look for PCLZIP_OPT_STOP_ON_ERROR + // For historical reason first PclZip implementation does not stop + // when this kind of error occurs. + if ( (isset($p_options[PCLZIP_OPT_STOP_ON_ERROR])) + && ($p_options[PCLZIP_OPT_STOP_ON_ERROR]===true)) { + + PclZip::privErrorLog(PCLZIP_ERR_ALREADY_A_DIRECTORY, + "Filename '".$p_entry['filename']."' is " + ."already used by an existing directory"); + + return PclZip::errorCode(); + } + } + // ----- Look if file is write protected + else if (!is_writeable($p_entry['filename'])) + { + + // ----- Change the file status + $p_entry['status'] = "write_protected"; + + // ----- Look for PCLZIP_OPT_STOP_ON_ERROR + // For historical reason first PclZip implementation does not stop + // when this kind of error occurs. + if ( (isset($p_options[PCLZIP_OPT_STOP_ON_ERROR])) + && ($p_options[PCLZIP_OPT_STOP_ON_ERROR]===true)) { + + PclZip::privErrorLog(PCLZIP_ERR_WRITE_OPEN_FAIL, + "Filename '".$p_entry['filename']."' exists " + ."and is write protected"); + + return PclZip::errorCode(); + } + } + + // ----- Look if the extracted file is older + else if (filemtime($p_entry['filename']) > $p_entry['mtime']) + { + // ----- Change the file status + if ( (isset($p_options[PCLZIP_OPT_REPLACE_NEWER])) + && ($p_options[PCLZIP_OPT_REPLACE_NEWER]===true)) { + } + else { + $p_entry['status'] = "newer_exist"; + + // ----- Look for PCLZIP_OPT_STOP_ON_ERROR + // For historical reason first PclZip implementation does not stop + // when this kind of error occurs. + if ( (isset($p_options[PCLZIP_OPT_STOP_ON_ERROR])) + && ($p_options[PCLZIP_OPT_STOP_ON_ERROR]===true)) { + + PclZip::privErrorLog(PCLZIP_ERR_WRITE_OPEN_FAIL, + "Newer version of '".$p_entry['filename']."' exists " + ."and option PCLZIP_OPT_REPLACE_NEWER is not selected"); + + return PclZip::errorCode(); + } + } + } + else { + } + } + + // ----- Check the directory availability and create it if necessary + else { + if ((($p_entry['external']&0x00000010)==0x00000010) || (substr($p_entry['filename'], -1) == '/')) + $v_dir_to_check = $p_entry['filename']; + else if (!strstr($p_entry['filename'], "/")) + $v_dir_to_check = ""; + else + $v_dir_to_check = dirname($p_entry['filename']); + + if (($v_result = $this->privDirCheck($v_dir_to_check, (($p_entry['external']&0x00000010)==0x00000010))) != 1) { + + // ----- Change the file status + $p_entry['status'] = "path_creation_fail"; + + // ----- Return + //return $v_result; + $v_result = 1; + } + } + } + + // ----- Look if extraction should be done + if ($p_entry['status'] == 'ok') { + + // ----- Do the extraction (if not a folder) + if (!(($p_entry['external']&0x00000010)==0x00000010)) + { + // ----- Look for not compressed file + if ($p_entry['compression'] == 0) { + + // ----- Opening destination file + if (($v_dest_file = @fopen($p_entry['filename'], 'wb')) == 0) + { + + // ----- Change the file status + $p_entry['status'] = "write_error"; + + // ----- Return + return $v_result; + } + + + // ----- Read the file by PCLZIP_READ_BLOCK_SIZE octets blocks + $v_size = $p_entry['compressed_size']; + while ($v_size != 0) + { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($this->zip_fd, $v_read_size); + /* Try to speed up the code + $v_binary_data = pack('a'.$v_read_size, $v_buffer); + @fwrite($v_dest_file, $v_binary_data, $v_read_size); + */ + @fwrite($v_dest_file, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Closing the destination file + fclose($v_dest_file); + + // ----- Change the file mtime + touch($p_entry['filename'], $p_entry['mtime']); + + + } + else { + // ----- TBC + // Need to be finished + if (($p_entry['flag'] & 1) == 1) { + PclZip::privErrorLog(PCLZIP_ERR_UNSUPPORTED_ENCRYPTION, 'File \''.$p_entry['filename'].'\' is encrypted. Encrypted files are not supported.'); + return PclZip::errorCode(); + } + + + // ----- Look for using temporary file to unzip + if ( (!isset($p_options[PCLZIP_OPT_TEMP_FILE_OFF])) + && (isset($p_options[PCLZIP_OPT_TEMP_FILE_ON]) + || (isset($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD]) + && ($p_options[PCLZIP_OPT_TEMP_FILE_THRESHOLD] <= $p_entry['size'])) ) ) { + $v_result = $this->privExtractFileUsingTempFile($p_entry, $p_options); + if ($v_result < PCLZIP_ERR_NO_ERROR) { + return $v_result; + } + } + + // ----- Look for extract in memory + else { + + + // ----- Read the compressed file in a buffer (one shot) + $v_buffer = @fread($this->zip_fd, $p_entry['compressed_size']); + + // ----- Decompress the file + $v_file_content = @gzinflate($v_buffer); + unset($v_buffer); + if ($v_file_content === FALSE) { + + // ----- Change the file status + // TBC + $p_entry['status'] = "error"; + + return $v_result; + } + + // ----- Opening destination file + if (($v_dest_file = @fopen($p_entry['filename'], 'wb')) == 0) { + + // ----- Change the file status + $p_entry['status'] = "write_error"; + + return $v_result; + } + + // ----- Write the uncompressed data + @fwrite($v_dest_file, $v_file_content, $p_entry['size']); + unset($v_file_content); + + // ----- Closing the destination file + @fclose($v_dest_file); + + } + + // ----- Change the file mtime + @touch($p_entry['filename'], $p_entry['mtime']); + } + + // ----- Look for chmod option + if (isset($p_options[PCLZIP_OPT_SET_CHMOD])) { + + // ----- Change the mode of the file + @chmod($p_entry['filename'], $p_options[PCLZIP_OPT_SET_CHMOD]); + } + + } + } + + // ----- Change abort status + if ($p_entry['status'] == "aborted") { + $p_entry['status'] = "skipped"; + } + + // ----- Look for post-extract callback + elseif (isset($p_options[PCLZIP_CB_POST_EXTRACT])) { + + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. +// eval('$v_result = '.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_POST_EXTRACT](PCLZIP_CB_POST_EXTRACT, $v_local_header); + + // ----- Look for abort result + if ($v_result == 2) { + $v_result = PCLZIP_ERR_USER_ABORTED; + } + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privExtractFileUsingTempFile() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privExtractFileUsingTempFile(&$p_entry, &$p_options) + { + $v_result=1; + + // ----- Creates a temporary file + $v_gzip_temp_name = PCLZIP_TEMPORARY_DIR.uniqid('pclzip-').'.gz'; + if (($v_dest_file = @fopen($v_gzip_temp_name, "wb")) == 0) { + fclose($v_file); + PclZip::privErrorLog(PCLZIP_ERR_WRITE_OPEN_FAIL, 'Unable to open temporary file \''.$v_gzip_temp_name.'\' in binary write mode'); + return PclZip::errorCode(); + } + + + // ----- Write gz file format header + $v_binary_data = pack('va1a1Va1a1', 0x8b1f, Chr($p_entry['compression']), Chr(0x00), time(), Chr(0x00), Chr(3)); + @fwrite($v_dest_file, $v_binary_data, 10); + + // ----- Read the file by PCLZIP_READ_BLOCK_SIZE octets blocks + $v_size = $p_entry['compressed_size']; + while ($v_size != 0) + { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($this->zip_fd, $v_read_size); + //$v_binary_data = pack('a'.$v_read_size, $v_buffer); + @fwrite($v_dest_file, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Write gz file format footer + $v_binary_data = pack('VV', $p_entry['crc'], $p_entry['size']); + @fwrite($v_dest_file, $v_binary_data, 8); + + // ----- Close the temporary file + @fclose($v_dest_file); + + // ----- Opening destination file + if (($v_dest_file = @fopen($p_entry['filename'], 'wb')) == 0) { + $p_entry['status'] = "write_error"; + return $v_result; + } + + // ----- Open the temporary gz file + if (($v_src_file = @gzopen($v_gzip_temp_name, 'rb')) == 0) { + @fclose($v_dest_file); + $p_entry['status'] = "read_error"; + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open temporary file \''.$v_gzip_temp_name.'\' in binary read mode'); + return PclZip::errorCode(); + } + + + // ----- Read the file by PCLZIP_READ_BLOCK_SIZE octets blocks + $v_size = $p_entry['size']; + while ($v_size != 0) { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @gzread($v_src_file, $v_read_size); + //$v_binary_data = pack('a'.$v_read_size, $v_buffer); + @fwrite($v_dest_file, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + @fclose($v_dest_file); + @gzclose($v_src_file); + + // ----- Delete the temporary file + @unlink($v_gzip_temp_name); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privExtractFileInOutput() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privExtractFileInOutput(&$p_entry, &$p_options) + { + $v_result=1; + + // ----- Read the file header + if (($v_result = $this->privReadFileHeader($v_header)) != 1) { + return $v_result; + } + + + // ----- Check that the file header is coherent with $p_entry info + if ($this->privCheckFileHeaders($v_header, $p_entry) != 1) { + // TBC + } + + // ----- Look for pre-extract callback + if (isset($p_options[PCLZIP_CB_PRE_EXTRACT])) { + + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. +// eval('$v_result = '.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_PRE_EXTRACT](PCLZIP_CB_PRE_EXTRACT, $v_local_header); + if ($v_result == 0) { + // ----- Change the file status + $p_entry['status'] = "skipped"; + $v_result = 1; + } + + // ----- Look for abort result + if ($v_result == 2) { + // ----- This status is internal and will be changed in 'skipped' + $p_entry['status'] = "aborted"; + $v_result = PCLZIP_ERR_USER_ABORTED; + } + + // ----- Update the informations + // Only some fields can be modified + $p_entry['filename'] = $v_local_header['filename']; + } + + // ----- Trace + + // ----- Look if extraction should be done + if ($p_entry['status'] == 'ok') { + + // ----- Do the extraction (if not a folder) + if (!(($p_entry['external']&0x00000010)==0x00000010)) { + // ----- Look for not compressed file + if ($p_entry['compressed_size'] == $p_entry['size']) { + + // ----- Read the file in a buffer (one shot) + $v_buffer = @fread($this->zip_fd, $p_entry['compressed_size']); + + // ----- Send the file to the output + echo $v_buffer; + unset($v_buffer); + } + else { + + // ----- Read the compressed file in a buffer (one shot) + $v_buffer = @fread($this->zip_fd, $p_entry['compressed_size']); + + // ----- Decompress the file + $v_file_content = gzinflate($v_buffer); + unset($v_buffer); + + // ----- Send the file to the output + echo $v_file_content; + unset($v_file_content); + } + } + } + + // ----- Change abort status + if ($p_entry['status'] == "aborted") { + $p_entry['status'] = "skipped"; + } + + // ----- Look for post-extract callback + elseif (isset($p_options[PCLZIP_CB_POST_EXTRACT])) { + + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. +// eval('$v_result = '.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_POST_EXTRACT](PCLZIP_CB_POST_EXTRACT, $v_local_header); + + // ----- Look for abort result + if ($v_result == 2) { + $v_result = PCLZIP_ERR_USER_ABORTED; + } + } + + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privExtractFileAsString() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privExtractFileAsString(&$p_entry, &$p_string, &$p_options) + { + $v_result=1; + + // ----- Read the file header + $v_header = array(); + if (($v_result = $this->privReadFileHeader($v_header)) != 1) + { + // ----- Return + return $v_result; + } + + + // ----- Check that the file header is coherent with $p_entry info + if ($this->privCheckFileHeaders($v_header, $p_entry) != 1) { + // TBC + } + + // ----- Look for pre-extract callback + if (isset($p_options[PCLZIP_CB_PRE_EXTRACT])) { + + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. +// eval('$v_result = '.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_PRE_EXTRACT](PCLZIP_CB_PRE_EXTRACT, $v_local_header); + if ($v_result == 0) { + // ----- Change the file status + $p_entry['status'] = "skipped"; + $v_result = 1; + } + + // ----- Look for abort result + if ($v_result == 2) { + // ----- This status is internal and will be changed in 'skipped' + $p_entry['status'] = "aborted"; + $v_result = PCLZIP_ERR_USER_ABORTED; + } + + // ----- Update the informations + // Only some fields can be modified + $p_entry['filename'] = $v_local_header['filename']; + } + + + // ----- Look if extraction should be done + if ($p_entry['status'] == 'ok') { + + // ----- Do the extraction (if not a folder) + if (!(($p_entry['external']&0x00000010)==0x00000010)) { + // ----- Look for not compressed file + // if ($p_entry['compressed_size'] == $p_entry['size']) + if ($p_entry['compression'] == 0) { + + // ----- Reading the file + $p_string = @fread($this->zip_fd, $p_entry['compressed_size']); + } + else { + + // ----- Reading the file + $v_data = @fread($this->zip_fd, $p_entry['compressed_size']); + + // ----- Decompress the file + if (($p_string = @gzinflate($v_data)) === FALSE) { + // TBC + } + } + + // ----- Trace + } + else { + // TBC : error : can not extract a folder in a string + } + + } + + // ----- Change abort status + if ($p_entry['status'] == "aborted") { + $p_entry['status'] = "skipped"; + } + + // ----- Look for post-extract callback + elseif (isset($p_options[PCLZIP_CB_POST_EXTRACT])) { + + // ----- Generate a local information + $v_local_header = array(); + $this->privConvertHeader2FileInfo($p_entry, $v_local_header); + + // ----- Swap the content to header + $v_local_header['content'] = $p_string; + $p_string = ''; + + // ----- Call the callback + // Here I do not use call_user_func() because I need to send a reference to the + // header. +// eval('$v_result = '.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT, $v_local_header);'); + $v_result = $p_options[PCLZIP_CB_POST_EXTRACT](PCLZIP_CB_POST_EXTRACT, $v_local_header); + + // ----- Swap back the content to header + $p_string = $v_local_header['content']; + unset($v_local_header['content']); + + // ----- Look for abort result + if ($v_result == 2) { + $v_result = PCLZIP_ERR_USER_ABORTED; + } + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privReadFileHeader() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privReadFileHeader(&$p_header) + { + $v_result=1; + + // ----- Read the 4 bytes signature + $v_binary_data = @fread($this->zip_fd, 4); + $v_data = unpack('Vid', $v_binary_data); + + // ----- Check signature + if ($v_data['id'] != 0x04034b50) + { + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'Invalid archive structure'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read the first 42 bytes of the header + $v_binary_data = fread($this->zip_fd, 26); + + // ----- Look for invalid block size + if (strlen($v_binary_data) != 26) + { + $p_header['filename'] = ""; + $p_header['status'] = "invalid_header"; + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, "Invalid block size : ".strlen($v_binary_data)); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Extract the values + $v_data = unpack('vversion/vflag/vcompression/vmtime/vmdate/Vcrc/Vcompressed_size/Vsize/vfilename_len/vextra_len', $v_binary_data); + + // ----- Get filename + $p_header['filename'] = fread($this->zip_fd, $v_data['filename_len']); + + // ----- Get extra_fields + if ($v_data['extra_len'] != 0) { + $p_header['extra'] = fread($this->zip_fd, $v_data['extra_len']); + } + else { + $p_header['extra'] = ''; + } + + // ----- Extract properties + $p_header['version_extracted'] = $v_data['version']; + $p_header['compression'] = $v_data['compression']; + $p_header['size'] = $v_data['size']; + $p_header['compressed_size'] = $v_data['compressed_size']; + $p_header['crc'] = $v_data['crc']; + $p_header['flag'] = $v_data['flag']; + $p_header['filename_len'] = $v_data['filename_len']; + + // ----- Recuperate date in UNIX format + $p_header['mdate'] = $v_data['mdate']; + $p_header['mtime'] = $v_data['mtime']; + if ($p_header['mdate'] && $p_header['mtime']) + { + // ----- Extract time + $v_hour = ($p_header['mtime'] & 0xF800) >> 11; + $v_minute = ($p_header['mtime'] & 0x07E0) >> 5; + $v_seconde = ($p_header['mtime'] & 0x001F)*2; + + // ----- Extract date + $v_year = (($p_header['mdate'] & 0xFE00) >> 9) + 1980; + $v_month = ($p_header['mdate'] & 0x01E0) >> 5; + $v_day = $p_header['mdate'] & 0x001F; + + // ----- Get UNIX date format + $p_header['mtime'] = @mktime($v_hour, $v_minute, $v_seconde, $v_month, $v_day, $v_year); + + } + else + { + $p_header['mtime'] = time(); + } + + // TBC + //for(reset($v_data); $key = key($v_data); next($v_data)) { + //} + + // ----- Set the stored filename + $p_header['stored_filename'] = $p_header['filename']; + + // ----- Set the status field + $p_header['status'] = "ok"; + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privReadCentralFileHeader() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privReadCentralFileHeader(&$p_header) + { + $v_result=1; + + // ----- Read the 4 bytes signature + $v_binary_data = @fread($this->zip_fd, 4); + $v_data = unpack('Vid', $v_binary_data); + + // ----- Check signature + if ($v_data['id'] != 0x02014b50) + { + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'Invalid archive structure'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read the first 42 bytes of the header + $v_binary_data = fread($this->zip_fd, 42); + + // ----- Look for invalid block size + if (strlen($v_binary_data) != 42) + { + $p_header['filename'] = ""; + $p_header['status'] = "invalid_header"; + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, "Invalid block size : ".strlen($v_binary_data)); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Extract the values + $p_header = unpack('vversion/vversion_extracted/vflag/vcompression/vmtime/vmdate/Vcrc/Vcompressed_size/Vsize/vfilename_len/vextra_len/vcomment_len/vdisk/vinternal/Vexternal/Voffset', $v_binary_data); + + // ----- Get filename + if ($p_header['filename_len'] != 0) + $p_header['filename'] = fread($this->zip_fd, $p_header['filename_len']); + else + $p_header['filename'] = ''; + + // ----- Get extra + if ($p_header['extra_len'] != 0) + $p_header['extra'] = fread($this->zip_fd, $p_header['extra_len']); + else + $p_header['extra'] = ''; + + // ----- Get comment + if ($p_header['comment_len'] != 0) + $p_header['comment'] = fread($this->zip_fd, $p_header['comment_len']); + else + $p_header['comment'] = ''; + + // ----- Extract properties + + // ----- Recuperate date in UNIX format + //if ($p_header['mdate'] && $p_header['mtime']) + // TBC : bug : this was ignoring time with 0/0/0 + if (1) + { + // ----- Extract time + $v_hour = ($p_header['mtime'] & 0xF800) >> 11; + $v_minute = ($p_header['mtime'] & 0x07E0) >> 5; + $v_seconde = ($p_header['mtime'] & 0x001F)*2; + + // ----- Extract date + $v_year = (($p_header['mdate'] & 0xFE00) >> 9) + 1980; + $v_month = ($p_header['mdate'] & 0x01E0) >> 5; + $v_day = $p_header['mdate'] & 0x001F; + + // ----- Get UNIX date format + $p_header['mtime'] = @mktime($v_hour, $v_minute, $v_seconde, $v_month, $v_day, $v_year); + + } + else + { + $p_header['mtime'] = time(); + } + + // ----- Set the stored filename + $p_header['stored_filename'] = $p_header['filename']; + + // ----- Set default status to ok + $p_header['status'] = 'ok'; + + // ----- Look if it is a directory + if (substr($p_header['filename'], -1) == '/') { + //$p_header['external'] = 0x41FF0010; + $p_header['external'] = 0x00000010; + } + + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privCheckFileHeaders() + // Description : + // Parameters : + // Return Values : + // 1 on success, + // 0 on error; + // -------------------------------------------------------------------------------- + function privCheckFileHeaders(&$p_local_header, &$p_central_header) + { + $v_result=1; + + // ----- Check the static values + // TBC + if ($p_local_header['filename'] != $p_central_header['filename']) { + } + if ($p_local_header['version_extracted'] != $p_central_header['version_extracted']) { + } + if ($p_local_header['flag'] != $p_central_header['flag']) { + } + if ($p_local_header['compression'] != $p_central_header['compression']) { + } + if ($p_local_header['mtime'] != $p_central_header['mtime']) { + } + if ($p_local_header['filename_len'] != $p_central_header['filename_len']) { + } + + // ----- Look for flag bit 3 + if (($p_local_header['flag'] & 8) == 8) { + $p_local_header['size'] = $p_central_header['size']; + $p_local_header['compressed_size'] = $p_central_header['compressed_size']; + $p_local_header['crc'] = $p_central_header['crc']; + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privReadEndCentralDir() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privReadEndCentralDir(&$p_central_dir) + { + $v_result=1; + + // ----- Go to the end of the zip file + $v_size = filesize($this->zipname); + @fseek($this->zip_fd, $v_size); + if (@ftell($this->zip_fd) != $v_size) + { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'Unable to go to the end of the archive \''.$this->zipname.'\''); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- First try : look if this is an archive with no commentaries (most of the time) + // in this case the end of central dir is at 22 bytes of the file end + $v_found = 0; + if ($v_size > 26) { + @fseek($this->zip_fd, $v_size-22); + if (($v_pos = @ftell($this->zip_fd)) != ($v_size-22)) + { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'Unable to seek back to the middle of the archive \''.$this->zipname.'\''); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read for bytes + $v_binary_data = @fread($this->zip_fd, 4); + $v_data = @unpack('Vid', $v_binary_data); + + // ----- Check signature + if ($v_data['id'] == 0x06054b50) { + $v_found = 1; + } + + $v_pos = ftell($this->zip_fd); + } + + // ----- Go back to the maximum possible size of the Central Dir End Record + if (!$v_found) { + $v_maximum_size = 65557; // 0xFFFF + 22; + if ($v_maximum_size > $v_size) + $v_maximum_size = $v_size; + @fseek($this->zip_fd, $v_size-$v_maximum_size); + if (@ftell($this->zip_fd) != ($v_size-$v_maximum_size)) + { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, 'Unable to seek back to the middle of the archive \''.$this->zipname.'\''); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read byte per byte in order to find the signature + $v_pos = ftell($this->zip_fd); + $v_bytes = 0x00000000; + while ($v_pos < $v_size) + { + // ----- Read a byte + $v_byte = @fread($this->zip_fd, 1); + + // ----- Add the byte + //$v_bytes = ($v_bytes << 8) | Ord($v_byte); + // Note we mask the old value down such that once shifted we can never end up with more than a 32bit number + // Otherwise on systems where we have 64bit integers the check below for the magic number will fail. + $v_bytes = ( ($v_bytes & 0xFFFFFF) << 8) | Ord($v_byte); + + // ----- Compare the bytes + if ($v_bytes == 0x504b0506) + { + $v_pos++; + break; + } + + $v_pos++; + } + + // ----- Look if not found end of central dir + if ($v_pos == $v_size) + { + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, "Unable to find End of Central Dir Record signature"); + + // ----- Return + return PclZip::errorCode(); + } + } + + // ----- Read the first 18 bytes of the header + $v_binary_data = fread($this->zip_fd, 18); + + // ----- Look for invalid block size + if (strlen($v_binary_data) != 18) + { + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, "Invalid End of Central Dir Record size : ".strlen($v_binary_data)); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Extract the values + $v_data = unpack('vdisk/vdisk_start/vdisk_entries/ventries/Vsize/Voffset/vcomment_size', $v_binary_data); + + // ----- Check the global size + if (($v_pos + $v_data['comment_size'] + 18) != $v_size) { + + // ----- Removed in release 2.2 see readme file + // The check of the file size is a little too strict. + // Some bugs where found when a zip is encrypted/decrypted with 'crypt'. + // While decrypted, zip has training 0 bytes + if (0) { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_BAD_FORMAT, + 'The central dir is not at the end of the archive.' + .' Some trailing bytes exists after the archive.'); + + // ----- Return + return PclZip::errorCode(); + } + } + + // ----- Get comment + if ($v_data['comment_size'] != 0) { + $p_central_dir['comment'] = fread($this->zip_fd, $v_data['comment_size']); + } + else + $p_central_dir['comment'] = ''; + + $p_central_dir['entries'] = $v_data['entries']; + $p_central_dir['disk_entries'] = $v_data['disk_entries']; + $p_central_dir['offset'] = $v_data['offset']; + $p_central_dir['size'] = $v_data['size']; + $p_central_dir['disk'] = $v_data['disk']; + $p_central_dir['disk_start'] = $v_data['disk_start']; + + // TBC + //for(reset($p_central_dir); $key = key($p_central_dir); next($p_central_dir)) { + //} + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privDeleteByRule() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privDeleteByRule(&$p_result_list, &$p_options) + { + $v_result=1; + $v_list_detail = array(); + + // ----- Open the zip file + if (($v_result=$this->privOpenFd('rb')) != 1) + { + // ----- Return + return $v_result; + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) + { + $this->privCloseFd(); + return $v_result; + } + + // ----- Go to beginning of File + @rewind($this->zip_fd); + + // ----- Scan all the files + // ----- Start at beginning of Central Dir + $v_pos_entry = $v_central_dir['offset']; + @rewind($this->zip_fd); + if (@fseek($this->zip_fd, $v_pos_entry)) + { + // ----- Close the zip file + $this->privCloseFd(); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read each entry + $v_header_list = array(); + $j_start = 0; + for ($i=0, $v_nb_extracted=0; $i<$v_central_dir['entries']; $i++) + { + + // ----- Read the file header + $v_header_list[$v_nb_extracted] = array(); + if (($v_result = $this->privReadCentralFileHeader($v_header_list[$v_nb_extracted])) != 1) + { + // ----- Close the zip file + $this->privCloseFd(); + + return $v_result; + } + + + // ----- Store the index + $v_header_list[$v_nb_extracted]['index'] = $i; + + // ----- Look for the specific extract rules + $v_found = false; + + // ----- Look for extract by name rule + if ( (isset($p_options[PCLZIP_OPT_BY_NAME])) + && ($p_options[PCLZIP_OPT_BY_NAME] != 0)) { + + // ----- Look if the filename is in the list + for ($j=0; ($j<sizeof($p_options[PCLZIP_OPT_BY_NAME])) && (!$v_found); $j++) { + + // ----- Look for a directory + if (substr($p_options[PCLZIP_OPT_BY_NAME][$j], -1) == "/") { + + // ----- Look if the directory is in the filename path + if ( (strlen($v_header_list[$v_nb_extracted]['stored_filename']) > strlen($p_options[PCLZIP_OPT_BY_NAME][$j])) + && (substr($v_header_list[$v_nb_extracted]['stored_filename'], 0, strlen($p_options[PCLZIP_OPT_BY_NAME][$j])) == $p_options[PCLZIP_OPT_BY_NAME][$j])) { + $v_found = true; + } + elseif ( (($v_header_list[$v_nb_extracted]['external']&0x00000010)==0x00000010) /* Indicates a folder */ + && ($v_header_list[$v_nb_extracted]['stored_filename'].'/' == $p_options[PCLZIP_OPT_BY_NAME][$j])) { + $v_found = true; + } + } + // ----- Look for a filename + elseif ($v_header_list[$v_nb_extracted]['stored_filename'] == $p_options[PCLZIP_OPT_BY_NAME][$j]) { + $v_found = true; + } + } + } + + // ----- Look for extract by ereg rule + // ereg() is deprecated with PHP 5.3 + /* + else if ( (isset($p_options[PCLZIP_OPT_BY_EREG])) + && ($p_options[PCLZIP_OPT_BY_EREG] != "")) { + + if (ereg($p_options[PCLZIP_OPT_BY_EREG], $v_header_list[$v_nb_extracted]['stored_filename'])) { + $v_found = true; + } + } + */ + + // ----- Look for extract by preg rule + else if ( (isset($p_options[PCLZIP_OPT_BY_PREG])) + && ($p_options[PCLZIP_OPT_BY_PREG] != "")) { + + if (preg_match($p_options[PCLZIP_OPT_BY_PREG], $v_header_list[$v_nb_extracted]['stored_filename'])) { + $v_found = true; + } + } + + // ----- Look for extract by index rule + else if ( (isset($p_options[PCLZIP_OPT_BY_INDEX])) + && ($p_options[PCLZIP_OPT_BY_INDEX] != 0)) { + + // ----- Look if the index is in the list + for ($j=$j_start; ($j<sizeof($p_options[PCLZIP_OPT_BY_INDEX])) && (!$v_found); $j++) { + + if (($i>=$p_options[PCLZIP_OPT_BY_INDEX][$j]['start']) && ($i<=$p_options[PCLZIP_OPT_BY_INDEX][$j]['end'])) { + $v_found = true; + } + if ($i>=$p_options[PCLZIP_OPT_BY_INDEX][$j]['end']) { + $j_start = $j+1; + } + + if ($p_options[PCLZIP_OPT_BY_INDEX][$j]['start']>$i) { + break; + } + } + } + else { + $v_found = true; + } + + // ----- Look for deletion + if ($v_found) + { + unset($v_header_list[$v_nb_extracted]); + } + else + { + $v_nb_extracted++; + } + } + + // ----- Look if something need to be deleted + if ($v_nb_extracted > 0) { + + // ----- Creates a temporay file + $v_zip_temp_name = PCLZIP_TEMPORARY_DIR.uniqid('pclzip-').'.tmp'; + + // ----- Creates a temporary zip archive + $v_temp_zip = new PclZip($v_zip_temp_name); + + // ----- Open the temporary zip file in write mode + if (($v_result = $v_temp_zip->privOpenFd('wb')) != 1) { + $this->privCloseFd(); + + // ----- Return + return $v_result; + } + + // ----- Look which file need to be kept + for ($i=0; $i<sizeof($v_header_list); $i++) { + + // ----- Calculate the position of the header + @rewind($this->zip_fd); + if (@fseek($this->zip_fd, $v_header_list[$i]['offset'])) { + // ----- Close the zip file + $this->privCloseFd(); + $v_temp_zip->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Read the file header + $v_local_header = array(); + if (($v_result = $this->privReadFileHeader($v_local_header)) != 1) { + // ----- Close the zip file + $this->privCloseFd(); + $v_temp_zip->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Return + return $v_result; + } + + // ----- Check that local file header is same as central file header + if ($this->privCheckFileHeaders($v_local_header, + $v_header_list[$i]) != 1) { + // TBC + } + unset($v_local_header); + + // ----- Write the file header + if (($v_result = $v_temp_zip->privWriteFileHeader($v_header_list[$i])) != 1) { + // ----- Close the zip file + $this->privCloseFd(); + $v_temp_zip->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Return + return $v_result; + } + + // ----- Read/write the data block + if (($v_result = PclZipUtilCopyBlock($this->zip_fd, $v_temp_zip->zip_fd, $v_header_list[$i]['compressed_size'])) != 1) { + // ----- Close the zip file + $this->privCloseFd(); + $v_temp_zip->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Return + return $v_result; + } + } + + // ----- Store the offset of the central dir + $v_offset = @ftell($v_temp_zip->zip_fd); + + // ----- Re-Create the Central Dir files header + for ($i=0; $i<sizeof($v_header_list); $i++) { + // ----- Create the file header + if (($v_result = $v_temp_zip->privWriteCentralFileHeader($v_header_list[$i])) != 1) { + $v_temp_zip->privCloseFd(); + $this->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Return + return $v_result; + } + + // ----- Transform the header to a 'usable' info + $v_temp_zip->privConvertHeader2FileInfo($v_header_list[$i], $p_result_list[$i]); + } + + + // ----- Zip file comment + $v_comment = ''; + if (isset($p_options[PCLZIP_OPT_COMMENT])) { + $v_comment = $p_options[PCLZIP_OPT_COMMENT]; + } + + // ----- Calculate the size of the central header + $v_size = @ftell($v_temp_zip->zip_fd)-$v_offset; + + // ----- Create the central dir footer + if (($v_result = $v_temp_zip->privWriteCentralHeader(sizeof($v_header_list), $v_size, $v_offset, $v_comment)) != 1) { + // ----- Reset the file list + unset($v_header_list); + $v_temp_zip->privCloseFd(); + $this->privCloseFd(); + @unlink($v_zip_temp_name); + + // ----- Return + return $v_result; + } + + // ----- Close + $v_temp_zip->privCloseFd(); + $this->privCloseFd(); + + // ----- Delete the zip file + // TBC : I should test the result ... + @unlink($this->zipname); + + // ----- Rename the temporary file + // TBC : I should test the result ... + //@rename($v_zip_temp_name, $this->zipname); + PclZipUtilRename($v_zip_temp_name, $this->zipname); + + // ----- Destroy the temporary archive + unset($v_temp_zip); + } + + // ----- Remove every files : reset the file + else if ($v_central_dir['entries'] != 0) { + $this->privCloseFd(); + + if (($v_result = $this->privOpenFd('wb')) != 1) { + return $v_result; + } + + if (($v_result = $this->privWriteCentralHeader(0, 0, 0, '')) != 1) { + return $v_result; + } + + $this->privCloseFd(); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privDirCheck() + // Description : + // Check if a directory exists, if not it creates it and all the parents directory + // which may be useful. + // Parameters : + // $p_dir : Directory path to check. + // Return Values : + // 1 : OK + // -1 : Unable to create directory + // -------------------------------------------------------------------------------- + function privDirCheck($p_dir, $p_is_dir=false) + { + $v_result = 1; + + + // ----- Remove the final '/' + if (($p_is_dir) && (substr($p_dir, -1)=='/')) + { + $p_dir = substr($p_dir, 0, strlen($p_dir)-1); + } + + // ----- Check the directory availability + if ((is_dir($p_dir)) || ($p_dir == "")) + { + return 1; + } + + // ----- Extract parent directory + $p_parent_dir = dirname($p_dir); + + // ----- Just a check + if ($p_parent_dir != $p_dir) + { + // ----- Look for parent directory + if ($p_parent_dir != "") + { + if (($v_result = $this->privDirCheck($p_parent_dir)) != 1) + { + return $v_result; + } + } + } + + // ----- Create the directory + if (!@mkdir($p_dir, 0777)) + { + // ----- Error log + PclZip::privErrorLog(PCLZIP_ERR_DIR_CREATE_FAIL, "Unable to create directory '$p_dir'"); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privMerge() + // Description : + // If $p_archive_to_add does not exist, the function exit with a success result. + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privMerge(&$p_archive_to_add) + { + $v_result=1; + + // ----- Look if the archive_to_add exists + if (!is_file($p_archive_to_add->zipname)) + { + + // ----- Nothing to merge, so merge is a success + $v_result = 1; + + // ----- Return + return $v_result; + } + + // ----- Look if the archive exists + if (!is_file($this->zipname)) + { + + // ----- Do a duplicate + $v_result = $this->privDuplicate($p_archive_to_add->zipname); + + // ----- Return + return $v_result; + } + + // ----- Open the zip file + if (($v_result=$this->privOpenFd('rb')) != 1) + { + // ----- Return + return $v_result; + } + + // ----- Read the central directory informations + $v_central_dir = array(); + if (($v_result = $this->privReadEndCentralDir($v_central_dir)) != 1) + { + $this->privCloseFd(); + return $v_result; + } + + // ----- Go to beginning of File + @rewind($this->zip_fd); + + // ----- Open the archive_to_add file + if (($v_result=$p_archive_to_add->privOpenFd('rb')) != 1) + { + $this->privCloseFd(); + + // ----- Return + return $v_result; + } + + // ----- Read the central directory informations + $v_central_dir_to_add = array(); + if (($v_result = $p_archive_to_add->privReadEndCentralDir($v_central_dir_to_add)) != 1) + { + $this->privCloseFd(); + $p_archive_to_add->privCloseFd(); + + return $v_result; + } + + // ----- Go to beginning of File + @rewind($p_archive_to_add->zip_fd); + + // ----- Creates a temporay file + $v_zip_temp_name = PCLZIP_TEMPORARY_DIR.uniqid('pclzip-').'.tmp'; + + // ----- Open the temporary file in write mode + if (($v_zip_temp_fd = @fopen($v_zip_temp_name, 'wb')) == 0) + { + $this->privCloseFd(); + $p_archive_to_add->privCloseFd(); + + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open temporary file \''.$v_zip_temp_name.'\' in binary write mode'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Copy the files from the archive to the temporary file + // TBC : Here I should better append the file and go back to erase the central dir + $v_size = $v_central_dir['offset']; + while ($v_size != 0) + { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = fread($this->zip_fd, $v_read_size); + @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Copy the files from the archive_to_add into the temporary file + $v_size = $v_central_dir_to_add['offset']; + while ($v_size != 0) + { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = fread($p_archive_to_add->zip_fd, $v_read_size); + @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Store the offset of the central dir + $v_offset = @ftell($v_zip_temp_fd); + + // ----- Copy the block of file headers from the old archive + $v_size = $v_central_dir['size']; + while ($v_size != 0) + { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($this->zip_fd, $v_read_size); + @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Copy the block of file headers from the archive_to_add + $v_size = $v_central_dir_to_add['size']; + while ($v_size != 0) + { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($p_archive_to_add->zip_fd, $v_read_size); + @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Merge the file comments + $v_comment = $v_central_dir['comment'].' '.$v_central_dir_to_add['comment']; + + // ----- Calculate the size of the (new) central header + $v_size = @ftell($v_zip_temp_fd)-$v_offset; + + // ----- Swap the file descriptor + // Here is a trick : I swap the temporary fd with the zip fd, in order to use + // the following methods on the temporary fil and not the real archive fd + $v_swap = $this->zip_fd; + $this->zip_fd = $v_zip_temp_fd; + $v_zip_temp_fd = $v_swap; + + // ----- Create the central dir footer + if (($v_result = $this->privWriteCentralHeader($v_central_dir['entries']+$v_central_dir_to_add['entries'], $v_size, $v_offset, $v_comment)) != 1) + { + $this->privCloseFd(); + $p_archive_to_add->privCloseFd(); + @fclose($v_zip_temp_fd); + $this->zip_fd = null; + + // ----- Reset the file list + unset($v_header_list); + + // ----- Return + return $v_result; + } + + // ----- Swap back the file descriptor + $v_swap = $this->zip_fd; + $this->zip_fd = $v_zip_temp_fd; + $v_zip_temp_fd = $v_swap; + + // ----- Close + $this->privCloseFd(); + $p_archive_to_add->privCloseFd(); + + // ----- Close the temporary file + @fclose($v_zip_temp_fd); + + // ----- Delete the zip file + // TBC : I should test the result ... + @unlink($this->zipname); + + // ----- Rename the temporary file + // TBC : I should test the result ... + //@rename($v_zip_temp_name, $this->zipname); + PclZipUtilRename($v_zip_temp_name, $this->zipname); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privDuplicate() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privDuplicate($p_archive_filename) + { + $v_result=1; + + // ----- Look if the $p_archive_filename exists + if (!is_file($p_archive_filename)) + { + + // ----- Nothing to duplicate, so duplicate is a success. + $v_result = 1; + + // ----- Return + return $v_result; + } + + // ----- Open the zip file + if (($v_result=$this->privOpenFd('wb')) != 1) + { + // ----- Return + return $v_result; + } + + // ----- Open the temporary file in write mode + if (($v_zip_temp_fd = @fopen($p_archive_filename, 'rb')) == 0) + { + $this->privCloseFd(); + + PclZip::privErrorLog(PCLZIP_ERR_READ_OPEN_FAIL, 'Unable to open archive file \''.$p_archive_filename.'\' in binary write mode'); + + // ----- Return + return PclZip::errorCode(); + } + + // ----- Copy the files from the archive to the temporary file + // TBC : Here I should better append the file and go back to erase the central dir + $v_size = filesize($p_archive_filename); + while ($v_size != 0) + { + $v_read_size = ($v_size < PCLZIP_READ_BLOCK_SIZE ? $v_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = fread($v_zip_temp_fd, $v_read_size); + @fwrite($this->zip_fd, $v_buffer, $v_read_size); + $v_size -= $v_read_size; + } + + // ----- Close + $this->privCloseFd(); + + // ----- Close the temporary file + @fclose($v_zip_temp_fd); + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privErrorLog() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + function privErrorLog($p_error_code=0, $p_error_string='') + { + if (PCLZIP_ERROR_EXTERNAL == 1) { + PclError($p_error_code, $p_error_string); + } + else { + $this->error_code = $p_error_code; + $this->error_string = $p_error_string; + } + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privErrorReset() + // Description : + // Parameters : + // -------------------------------------------------------------------------------- + function privErrorReset() + { + if (PCLZIP_ERROR_EXTERNAL == 1) { + PclErrorReset(); + } + else { + $this->error_code = 0; + $this->error_string = ''; + } + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privDisableMagicQuotes() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privDisableMagicQuotes() + { + $v_result=1; + + // ----- Look if function exists + if ( (!function_exists("get_magic_quotes_runtime")) + || (!function_exists("set_magic_quotes_runtime"))) { + return $v_result; + } + + // ----- Look if already done + if ($this->magic_quotes_status != -1) { + return $v_result; + } + + // ----- Get and memorize the magic_quote value + $this->magic_quotes_status = @get_magic_quotes_runtime(); + + // ----- Disable magic_quotes + if ($this->magic_quotes_status == 1) { + @set_magic_quotes_runtime(0); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : privSwapBackMagicQuotes() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function privSwapBackMagicQuotes() + { + $v_result=1; + + // ----- Look if function exists + if ( (!function_exists("get_magic_quotes_runtime")) + || (!function_exists("set_magic_quotes_runtime"))) { + return $v_result; + } + + // ----- Look if something to do + if ($this->magic_quotes_status != -1) { + return $v_result; + } + + // ----- Swap back magic_quotes + if ($this->magic_quotes_status == 1) { + @set_magic_quotes_runtime($this->magic_quotes_status); + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + } + // End of class + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : PclZipUtilPathReduction() + // Description : + // Parameters : + // Return Values : + // -------------------------------------------------------------------------------- + function PclZipUtilPathReduction($p_dir) + { + $v_result = ""; + + // ----- Look for not empty path + if ($p_dir != "") { + // ----- Explode path by directory names + $v_list = explode("/", $p_dir); + + // ----- Study directories from last to first + $v_skip = 0; + for ($i=sizeof($v_list)-1; $i>=0; $i--) { + // ----- Look for current path + if ($v_list[$i] == ".") { + // ----- Ignore this directory + // Should be the first $i=0, but no check is done + } + else if ($v_list[$i] == "..") { + $v_skip++; + } + else if ($v_list[$i] == "") { + // ----- First '/' i.e. root slash + if ($i == 0) { + $v_result = "/".$v_result; + if ($v_skip > 0) { + // ----- It is an invalid path, so the path is not modified + // TBC + $v_result = $p_dir; + $v_skip = 0; + } + } + // ----- Last '/' i.e. indicates a directory + else if ($i == (sizeof($v_list)-1)) { + $v_result = $v_list[$i]; + } + // ----- Double '/' inside the path + else { + // ----- Ignore only the double '//' in path, + // but not the first and last '/' + } + } + else { + // ----- Look for item to skip + if ($v_skip > 0) { + $v_skip--; + } + else { + $v_result = $v_list[$i].($i!=(sizeof($v_list)-1)?"/".$v_result:""); + } + } + } + + // ----- Look for skip + if ($v_skip > 0) { + while ($v_skip > 0) { + $v_result = '../'.$v_result; + $v_skip--; + } + } + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : PclZipUtilPathInclusion() + // Description : + // This function indicates if the path $p_path is under the $p_dir tree. Or, + // said in an other way, if the file or sub-dir $p_path is inside the dir + // $p_dir. + // The function indicates also if the path is exactly the same as the dir. + // This function supports path with duplicated '/' like '//', but does not + // support '.' or '..' statements. + // Parameters : + // Return Values : + // 0 if $p_path is not inside directory $p_dir + // 1 if $p_path is inside directory $p_dir + // 2 if $p_path is exactly the same as $p_dir + // -------------------------------------------------------------------------------- + function PclZipUtilPathInclusion($p_dir, $p_path) + { + $v_result = 1; + + // ----- Look for path beginning by ./ + if ( ($p_dir == '.') + || ((strlen($p_dir) >=2) && (substr($p_dir, 0, 2) == './'))) { + $p_dir = PclZipUtilTranslateWinPath(getcwd(), FALSE).'/'.substr($p_dir, 1); + } + if ( ($p_path == '.') + || ((strlen($p_path) >=2) && (substr($p_path, 0, 2) == './'))) { + $p_path = PclZipUtilTranslateWinPath(getcwd(), FALSE).'/'.substr($p_path, 1); + } + + // ----- Explode dir and path by directory separator + $v_list_dir = explode("/", $p_dir); + $v_list_dir_size = sizeof($v_list_dir); + $v_list_path = explode("/", $p_path); + $v_list_path_size = sizeof($v_list_path); + + // ----- Study directories paths + $i = 0; + $j = 0; + while (($i < $v_list_dir_size) && ($j < $v_list_path_size) && ($v_result)) { + + // ----- Look for empty dir (path reduction) + if ($v_list_dir[$i] == '') { + $i++; + continue; + } + if ($v_list_path[$j] == '') { + $j++; + continue; + } + + // ----- Compare the items + if (($v_list_dir[$i] != $v_list_path[$j]) && ($v_list_dir[$i] != '') && ( $v_list_path[$j] != '')) { + $v_result = 0; + } + + // ----- Next items + $i++; + $j++; + } + + // ----- Look if everything seems to be the same + if ($v_result) { + // ----- Skip all the empty items + while (($j < $v_list_path_size) && ($v_list_path[$j] == '')) $j++; + while (($i < $v_list_dir_size) && ($v_list_dir[$i] == '')) $i++; + + if (($i >= $v_list_dir_size) && ($j >= $v_list_path_size)) { + // ----- There are exactly the same + $v_result = 2; + } + else if ($i < $v_list_dir_size) { + // ----- The path is shorter than the dir + $v_result = 0; + } + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : PclZipUtilCopyBlock() + // Description : + // Parameters : + // $p_mode : read/write compression mode + // 0 : src & dest normal + // 1 : src gzip, dest normal + // 2 : src normal, dest gzip + // 3 : src & dest gzip + // Return Values : + // -------------------------------------------------------------------------------- + function PclZipUtilCopyBlock($p_src, $p_dest, $p_size, $p_mode=0) + { + $v_result = 1; + + if ($p_mode==0) + { + while ($p_size != 0) + { + $v_read_size = ($p_size < PCLZIP_READ_BLOCK_SIZE ? $p_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($p_src, $v_read_size); + @fwrite($p_dest, $v_buffer, $v_read_size); + $p_size -= $v_read_size; + } + } + else if ($p_mode==1) + { + while ($p_size != 0) + { + $v_read_size = ($p_size < PCLZIP_READ_BLOCK_SIZE ? $p_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @gzread($p_src, $v_read_size); + @fwrite($p_dest, $v_buffer, $v_read_size); + $p_size -= $v_read_size; + } + } + else if ($p_mode==2) + { + while ($p_size != 0) + { + $v_read_size = ($p_size < PCLZIP_READ_BLOCK_SIZE ? $p_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @fread($p_src, $v_read_size); + @gzwrite($p_dest, $v_buffer, $v_read_size); + $p_size -= $v_read_size; + } + } + else if ($p_mode==3) + { + while ($p_size != 0) + { + $v_read_size = ($p_size < PCLZIP_READ_BLOCK_SIZE ? $p_size : PCLZIP_READ_BLOCK_SIZE); + $v_buffer = @gzread($p_src, $v_read_size); + @gzwrite($p_dest, $v_buffer, $v_read_size); + $p_size -= $v_read_size; + } + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : PclZipUtilRename() + // Description : + // This function tries to do a simple rename() function. If it fails, it + // tries to copy the $p_src file in a new $p_dest file and then unlink the + // first one. + // Parameters : + // $p_src : Old filename + // $p_dest : New filename + // Return Values : + // 1 on success, 0 on failure. + // -------------------------------------------------------------------------------- + function PclZipUtilRename($p_src, $p_dest) + { + $v_result = 1; + + // ----- Try to rename the files + if (!@rename($p_src, $p_dest)) { + + // ----- Try to copy & unlink the src + if (!@copy($p_src, $p_dest)) { + $v_result = 0; + } + else if (!@unlink($p_src)) { + $v_result = 0; + } + } + + // ----- Return + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : PclZipUtilOptionText() + // Description : + // Translate option value in text. Mainly for debug purpose. + // Parameters : + // $p_option : the option value. + // Return Values : + // The option text value. + // -------------------------------------------------------------------------------- + function PclZipUtilOptionText($p_option) + { + + $v_list = get_defined_constants(); + for (reset($v_list); $v_key = key($v_list); next($v_list)) { + $v_prefix = substr($v_key, 0, 10); + if (( ($v_prefix == 'PCLZIP_OPT') + || ($v_prefix == 'PCLZIP_CB_') + || ($v_prefix == 'PCLZIP_ATT')) + && ($v_list[$v_key] == $p_option)) { + return $v_key; + } + } + + $v_result = 'Unknown'; + + return $v_result; + } + // -------------------------------------------------------------------------------- + + // -------------------------------------------------------------------------------- + // Function : PclZipUtilTranslateWinPath() + // Description : + // Translate windows path by replacing '\' by '/' and optionally removing + // drive letter. + // Parameters : + // $p_path : path to translate. + // $p_remove_disk_letter : true | false + // Return Values : + // The path translated. + // -------------------------------------------------------------------------------- + function PclZipUtilTranslateWinPath($p_path, $p_remove_disk_letter=true) + { + if (stristr(php_uname(), 'windows')) { + // ----- Look for potential disk letter + if (($p_remove_disk_letter) && (($v_position = strpos($p_path, ':')) != false)) { + $p_path = substr($p_path, $v_position+1); + } + // ----- Change potential windows directory separator + if ((strpos($p_path, '\\') > 0) || (substr($p_path, 0,1) == '\\')) { + $p_path = strtr($p_path, '\\', '/'); + } + } + return $p_path; + } + // -------------------------------------------------------------------------------- + + +?> diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/readme.txt b/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/readme.txt new file mode 100644 index 0000000..d1b11e2 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/PCLZip/readme.txt @@ -0,0 +1,421 @@ +// -------------------------------------------------------------------------------- +// PclZip 2.8.2 - readme.txt +// -------------------------------------------------------------------------------- +// License GNU/LGPL - August 2009 +// Vincent Blavet - vincent@phpconcept.net +// http://www.phpconcept.net +// -------------------------------------------------------------------------------- +// $Id: readme.txt,v 1.60 2009/09/30 20:35:21 vblavet Exp $ +// -------------------------------------------------------------------------------- + + + +0 - Sommaire +============ + 1 - Introduction + 2 - What's new + 3 - Corrected bugs + 4 - Known bugs or limitations + 5 - License + 6 - Warning + 7 - Documentation + 8 - Author + 9 - Contribute + +1 - Introduction +================ + + PclZip is a library that allow you to manage a Zip archive. + + Full documentation about PclZip can be found here : http://www.phpconcept.net/pclzip + +2 - What's new +============== + + Version 2.8.2 : + - PCLZIP_CB_PRE_EXTRACT and PCLZIP_CB_POST_EXTRACT are now supported with + extraction as a string (PCLZIP_OPT_EXTRACT_AS_STRING). The string + can also be modified in the post-extract call back. + **Bugs correction : + - PCLZIP_OPT_REMOVE_ALL_PATH was not working correctly + - Remove use of eval() and do direct call to callback functions + - Correct support of 64bits systems (Thanks to WordPress team) + + Version 2.8.1 : + - Move option PCLZIP_OPT_BY_EREG to PCLZIP_OPT_BY_PREG because ereg() is + deprecated in PHP 5.3. When using option PCLZIP_OPT_BY_EREG, PclZip will + automatically replace it by PCLZIP_OPT_BY_PREG. + + Version 2.8 : + - Improve extraction of zip archive for large files by using temporary files + This feature is working like the one defined in r2.7. + Options are renamed : PCLZIP_OPT_TEMP_FILE_ON, PCLZIP_OPT_TEMP_FILE_OFF, + PCLZIP_OPT_TEMP_FILE_THRESHOLD + - Add a ratio constant PCLZIP_TEMPORARY_FILE_RATIO to configure the auto + sense of temporary file use. + - Bug correction : Reduce filepath in returned file list to remove ennoying + './/' preambule in file path. + + Version 2.7 : + - Improve creation of zip archive for large files : + PclZip will now autosense the configured memory and use temporary files + when large file is suspected. + This feature can also ne triggered by manual options in create() and add() + methods. 'PCLZIP_OPT_ADD_TEMP_FILE_ON' force the use of temporary files, + 'PCLZIP_OPT_ADD_TEMP_FILE_OFF' disable the autosense technic, + 'PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD' allow for configuration of a size + threshold to use temporary files. + Using "temporary files" rather than "memory" might take more time, but + might give the ability to zip very large files : + Tested on my win laptop with a 88Mo file : + Zip "in-memory" : 18sec (max_execution_time=30, memory_limit=180Mo) + Zip "tmporary-files" : 23sec (max_execution_time=30, memory_limit=30Mo) + - Replace use of mktime() by time() to limit the E_STRICT error messages. + - Bug correction : When adding files with full windows path (drive letter) + PclZip is now working. Before, if the drive letter is not the default + path, PclZip was not able to add the file. + + Version 2.6 : + - Code optimisation + - New attributes PCLZIP_ATT_FILE_COMMENT gives the ability to + add a comment for a specific file. (Don't really know if this is usefull) + - New attribute PCLZIP_ATT_FILE_CONTENT gives the ability to add a string + as a file. + - New attribute PCLZIP_ATT_FILE_MTIME modify the timestamp associated with + a file. + - Correct a bug. Files archived with a timestamp with 0h0m0s were extracted + with current time + - Add CRC value in the informations returned back for each file after an + action. + - Add missing closedir() statement. + - When adding a folder, and removing the path of this folder, files were + incorrectly added with a '/' at the beginning. Which means files are + related to root in unix systems. Corrected. + - Add conditional if before constant definition. This will allow users + to redefine constants without changing the file, and then improve + upgrade of pclzip code for new versions. + + Version 2.5 : + - Introduce the ability to add file/folder with individual properties (file descriptor). + This gives for example the ability to change the filename of a zipped file. + . Able to add files individually + . Able to change full name + . Able to change short name + . Compatible with global options + - New attributes : PCLZIP_ATT_FILE_NAME, PCLZIP_ATT_FILE_NEW_SHORT_NAME, PCLZIP_ATT_FILE_NEW_FULL_NAME + - New error code : PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE + - Add a security control feature. PclZip can extract any file in any folder + of a system. People may use this to upload a zip file and try to override + a system file. The PCLZIP_OPT_EXTRACT_DIR_RESTRICTION will give the + ability to forgive any directory transversal behavior. + - New PCLZIP_OPT_EXTRACT_DIR_RESTRICTION : check extraction path + - New error code : PCLZIP_ERR_DIRECTORY_RESTRICTION + - Modification in PclZipUtilPathInclusion() : dir and path beginning with ./ will be prepend + by current path (getcwd()) + + Version 2.4 : + - Code improvment : try to speed up the code by removing unusefull call to pack() + - Correct bug in delete() : delete() should be called with no argument. This was not + the case in 2.3. This is corrected in 2.4. + - Correct a bug in path_inclusion function. When the path has several '../../', the + result was bad. + - Add a check for magic_quotes_runtime configuration. If enabled, PclZip will + disable it while working and det it back to its original value. + This resolve a lots of bad formated archive errors. + - Bug correction : PclZip now correctly unzip file in some specific situation, + when compressed content has same size as uncompressed content. + - Bug correction : When selecting option 'PCLZIP_OPT_REMOVE_ALL_PATH', + directories are not any more created. + - Code improvment : correct unclosed opendir(), better handling of . and .. in + loops. + + + Version 2.3 : + - Correct a bug with PHP5 : affecting the value 0xFE49FFE0 to a variable does not + give the same result in PHP4 and PHP5 .... + + Version 2.2 : + - Try development of PCLZIP_OPT_CRYPT ..... + However this becomes to a stop. To crypt/decrypt I need to multiply 2 long integers, + the result (greater than a long) is not supported by PHP. Even the use of bcmath + functions does not help. I did not find yet a solution ...; + - Add missing '/' at end of directory entries + - Check is a file is encrypted or not. Returns status 'unsupported_encryption' and/or + error code PCLZIP_ERR_UNSUPPORTED_ENCRYPTION. + - Corrected : Bad "version need to extract" field in local file header + - Add private method privCheckFileHeaders() in order to check local and central + file headers. PclZip is now supporting purpose bit flag bit 3. Purpose bit flag bit 3 gives + the ability to have a local file header without size, compressed size and crc filled. + - Add a generic status 'error' for file status + - Add control of compression type. PclZip only support deflate compression method. + Before v2.2, PclZip does not check the compression method used in an archive while + extracting. With v2.2 PclZip returns a new error status for a file using an unsupported + compression method. New status is "unsupported_compression". New error code is + PCLZIP_ERR_UNSUPPORTED_COMPRESSION. + - Add optional attribute PCLZIP_OPT_STOP_ON_ERROR. This will stop the extract of files + when errors like 'a folder with same name exists' or 'a newer file exists' or + 'a write protected file' exists, rather than set a status for the concerning file + and resume the extract of the zip. + - Add optional attribute PCLZIP_OPT_REPLACE_NEWER. This will force, during an extract' the + replacement of the file, even if a newer version of the file exists. + Note that today if a file with the same name already exists but is older it will be + replaced by the extracted one. + - Improve PclZipUtilOption() + - Support of zip archive with trailing bytes. Before 2.2, PclZip checks that the central + directory structure is the last data in the archive. Crypt encryption/decryption of + zip archive put trailing 0 bytes after decryption. PclZip is now supporting this. + + Version 2.1 : + - Add the ability to abort the extraction by using a user callback function. + The user can now return the value '2' in its callback which indicates to stop the + extraction. For a pre call-back extract is stopped before the extration of the current + file. For a post call back, the extraction is stopped after. + - Add the ability to extract a file (or several files) directly in the standard output. + This is done by the new parameter PCLZIP_OPT_EXTRACT_IN_OUTPUT with method extract(). + - Add support for parameters PCLZIP_OPT_COMMENT, PCLZIP_OPT_ADD_COMMENT, + PCLZIP_OPT_PREPEND_COMMENT. This will create, replace, add, or prepend comments + in the zip archive. + - When merging two archives, the comments are not any more lost, but merged, with a + blank space separator. + - Corrected bug : Files are not deleted when all files are asked to be deleted. + - Corrected bug : Folders with name '0' made PclZip to abort the create or add feature. + + + Version 2.0 : + ***** Warning : Some new features may break the backward compatibility for your scripts. + Please carefully read the readme file. + - Add the ability to delete by Index, name and regular expression. This feature is + performed by the method delete(), which uses the optional parameters + PCLZIP_OPT_BY_INDEX, PCLZIP_OPT_BY_NAME, PCLZIP_OPT_BY_EREG or PCLZIP_OPT_BY_PREG. + - Add the ability to extract by regular expression. To extract by regexp you must use the method + extract(), with the option PCLZIP_OPT_BY_EREG or PCLZIP_OPT_BY_PREG + (depending if you want to use ereg() or preg_match() syntax) followed by the + regular expression pattern. + - Add the ability to extract by index, directly with the extract() method. This is a + code improvment of the extractByIndex() method. + - Add the ability to extract by name. To extract by name you must use the method + extract(), with the option PCLZIP_OPT_BY_NAME followed by the filename to + extract or an array of filenames to extract. To extract all a folder, use the folder + name rather than the filename with a '/' at the end. + - Add the ability to add files without compression. This is done with a new attribute + which is PCLZIP_OPT_NO_COMPRESSION. + - Add the attribute PCLZIP_OPT_EXTRACT_AS_STRING, which allow to extract a file directly + in a string without using any file (or temporary file). + - Add constant PCLZIP_SEPARATOR for static configuration of filename separators in a single string. + The default separator is now a comma (,) and not any more a blank space. + THIS BREAK THE BACKWARD COMPATIBILITY : Please check if this may have an impact with + your script. + - Improve algorythm performance by removing the use of temporary files when adding or + extracting files in an archive. + - Add (correct) detection of empty filename zipping. This can occurs when the removed + path is the same + as a zipped dir. The dir is not zipped (['status'] = filtered), only its content. + - Add better support for windows paths (thanks for help from manus@manusfreedom.com). + - Corrected bug : When the archive file already exists with size=0, the add() method + fails. Corrected in 2.0. + - Remove the use of OS_WINDOWS constant. Use php_uname() function rather. + - Control the order of index ranges in extract by index feature. + - Change the internal management of folders (better handling of internal flag). + + + Version 1.3 : + - Removing the double include check. This is now done by include_once() and require_once() + PHP directives. + - Changing the error handling mecanism : Remove the use of an external error library. + The former PclError...() functions are replaced by internal equivalent methods. + By changing the environment variable PCLZIP_ERROR_EXTERNAL you can still use the former library. + Introducing the use of constants for error codes rather than integer values. This will help + in futur improvment. + Introduction of error handling functions like errorCode(), errorName() and errorInfo(). + - Remove the deprecated use of calling function with arguments passed by reference. + - Add the calling of extract(), extractByIndex(), create() and add() functions + with variable options rather than fixed arguments. + - Add the ability to remove all the file path while extracting or adding, + without any need to specify the path to remove. + This is available for extract(), extractByIndex(), create() and add() functionS by using + the new variable options parameters : + - PCLZIP_OPT_REMOVE_ALL_PATH : by indicating this option while calling the fct. + - Ability to change the mode of a file after the extraction (chmod()). + This is available for extract() and extractByIndex() functionS by using + the new variable options parameters. + - PCLZIP_OPT_SET_CHMOD : by setting the value of this option. + - Ability to definition call-back options. These call-back will be called during the adding, + or the extracting of file (extract(), extractByIndex(), create() and add() functions) : + - PCLZIP_CB_PRE_EXTRACT : will be called before each extraction of a file. The user + can trigerred the change the filename of the extracted file. The user can triggered the + skip of the extraction. This is adding a 'skipped' status in the file list result value. + - PCLZIP_CB_POST_EXTRACT : will be called after each extraction of a file. + Nothing can be triggered from that point. + - PCLZIP_CB_PRE_ADD : will be called before each add of a file. The user + can trigerred the change the stored filename of the added file. The user can triggered the + skip of the add. This is adding a 'skipped' status in the file list result value. + - PCLZIP_CB_POST_ADD : will be called after each add of a file. + Nothing can be triggered from that point. + - Two status are added in the file list returned as function result : skipped & filename_too_long + 'skipped' is used when a call-back function ask for skipping the file. + 'filename_too_long' is used while adding a file with a too long filename to archive (the file is + not added) + - Adding the function PclZipUtilPathInclusion(), that check the inclusion of a path into + a directory. + - Add a check of the presence of the archive file before some actions (like list, ...) + - Add the initialisation of field "index" in header array. This means that by + default index will be -1 when not explicitly set by the methods. + + Version 1.2 : + - Adding a duplicate function. + - Adding a merge function. The merge function is a "quick merge" function, + it just append the content of an archive at the end of the first one. There + is no check for duplicate files or more recent files. + - Improve the search of the central directory end. + + Version 1.1.2 : + + - Changing the license of PclZip. PclZip is now released under the GNU / LGPL license + (see License section). + - Adding the optional support of a static temporary directory. You will need to configure + the constant PCLZIP_TEMPORARY_DIR if you want to use this feature. + - Improving the rename() function. In some cases rename() does not work (different + Filesystems), so it will be replaced by a copy() + unlink() functions. + + Version 1.1.1 : + + - Maintenance release, no new feature. + + Version 1.1 : + + - New method Add() : adding files in the archive + - New method ExtractByIndex() : partial extract of the archive, files are identified by + their index in the archive + - New method DeleteByIndex() : delete some files/folder entries from the archive, + files are identified by their index in the archive. + - Adding a test of the zlib extension presence. If not present abort the script. + + Version 1.0.1 : + + - No new feature + + +3 - Corrected bugs +================== + + Corrected in Version 2.0 : + - Corrected : During an extraction, if a call-back fucntion is used and try to skip + a file, all the extraction process is stopped. + + Corrected in Version 1.3 : + - Corrected : Support of static synopsis for method extract() is broken. + - Corrected : invalid size of archive content field (0xFF) should be (0xFFFF). + - Corrected : When an extract is done with a remove_path parameter, the entry for + the directory with exactly the same path is not skipped/filtered. + - Corrected : extractByIndex() and deleteByIndex() were not managing index in the + right way. For example indexes '1,3-5,11' will only extract files 1 and 11. This + is due to a sort of the index resulting table that puts 11 before 3-5 (sort on + string and not interger). The sort is temporarilly removed, this means that + you must provide a sorted list of index ranges. + + Corrected in Version 1.2 : + + - Nothing. + + Corrected in Version 1.1.2 : + + - Corrected : Winzip is unable to delete or add new files in a PclZip created archives. + + Corrected in Version 1.1.1 : + + - Corrected : When archived file is not compressed (0% compression), the + extract method fails. + + Corrected in Version 1.1 : + + - Corrected : Adding a complete tree of folder may result in a bad archive + creation. + + Corrected in Version 1.0.1 : + + - Corrected : Error while compressing files greater than PCLZIP_READ_BLOCK_SIZE (default=1024). + + +4 - Known bugs or limitations +============================= + + Please publish bugs reports in SourceForge : + http://sourceforge.net/tracker/?group_id=40254&atid=427564 + + In Version 2.x : + - PclZip does only support file uncompressed or compressed with deflate (compression method 8) + - PclZip does not support password protected zip archive + - Some concern were seen when changing mtime of a file while archiving. + Seems to be linked to Daylight Saving Time (PclTest_changing_mtime). + + In Version 1.2 : + + - merge() methods does not check for duplicate files or last date of modifications. + + In Version 1.1 : + + - Limitation : Using 'extract' fields in the file header in the zip archive is not supported. + - WinZip is unable to delete a single file in a PclZip created archive. It is also unable to + add a file in a PclZip created archive. (Corrected in v.1.2) + + In Version 1.0.1 : + + - Adding a complete tree of folder may result in a bad archive + creation. (Corrected in V.1.1). + - Path given to methods must be in the unix format (/) and not the Windows format (\). + Workaround : Use only / directory separators. + - PclZip is using temporary files that are sometime the name of the file with a .tmp or .gz + added suffix. Files with these names may already exist and may be overwritten. + Workaround : none. + - PclZip does not check if the zlib extension is present. If it is absent, the zip + file is not created and the lib abort without warning. + Workaround : enable the zlib extension on the php install + + In Version 1.0 : + + - Error while compressing files greater than PCLZIP_READ_BLOCK_SIZE (default=1024). + (Corrected in v.1.0.1) + - Limitation : Multi-disk zip archive are not supported. + + +5 - License +=========== + + Since version 1.1.2, PclZip Library is released under GNU/LGPL license. + This library is free, so you can use it at no cost. + + HOWEVER, if you release a script, an application, a library or any kind of + code using PclZip library (or a part of it), YOU MUST : + - Indicate in the documentation (or a readme file), that your work + uses PclZip Library, and make a reference to the author and the web site + http://www.phpconcept.net + - Gives the ability to the final user to update the PclZip libary. + + I will also appreciate that you send me a mail (vincent@phpconcept.net), just to + be aware that someone is using PclZip. + + For more information about GNU/LGPL license : http://www.gnu.org + +6 - Warning +================= + + This library and the associated files are non commercial, non professional work. + It should not have unexpected results. However if any damage is caused by this software + the author can not be responsible. + The use of this software is at the risk of the user. + +7 - Documentation +================= + PclZip User Manuel is available in English on PhpConcept : http://www.phpconcept.net/pclzip/man/en/index.php + A Russian translation was done by Feskov Kuzma : http://php.russofile.ru/ru/authors/unsort/zip/ + +8 - Author +========== + + This software was written by Vincent Blavet (vincent@phpconcept.net) on its leasure time. + +9 - Contribute +============== + If you want to contribute to the development of PclZip, please contact vincent@phpconcept.net. + If you can help in financing PhpConcept hosting service, please go to + http://www.phpconcept.net/soutien.php diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/PasswordHasher.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/PasswordHasher.php new file mode 100644 index 0000000..65317d5 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/PasswordHasher.php @@ -0,0 +1,67 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Shared_PasswordHasher + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_PasswordHasher +{ + /** + * Create a password hash from a given string. + * + * This method is based on the algorithm provided by + * Daniel Rentz of OpenOffice and the PEAR package + * Spreadsheet_Excel_Writer by Xavier Noguer <xnoguer@rezebra.com>. + * + * @param string $pPassword Password to hash + * @return string Hashed password + */ + public static function hashPassword($pPassword = '') { + $password = 0x0000; + $i = 1; // char position + + // split the plain text password in its component characters + $chars = preg_split('//', $pPassword, -1, PREG_SPLIT_NO_EMPTY); + foreach ($chars as $char) { + $value = ord($char) << $i; // shifted ASCII value + $rotated_bits = $value >> 15; // rotated bits beyond bit 15 + $value &= 0x7fff; // first 15 bits + $password ^= ($value | $rotated_bits); + ++$i; + } + + $password ^= strlen($pPassword); + $password ^= 0xCE4B; + + return(strtoupper(dechex($password))); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/String.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/String.php new file mode 100644 index 0000000..a62a681 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/String.php @@ -0,0 +1,730 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Shared_String + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_String +{ + /** Constants */ + /** Regular Expressions */ + // Fraction + const STRING_REGEXP_FRACTION = '(-?)(\d+)\s+(\d+\/\d+)'; + + + /** + * Control characters array + * + * @var string[] + */ + private static $_controlCharacters = array(); + + /** + * SYLK Characters array + * + * $var array + */ + private static $_SYLKCharacters = array(); + + /** + * Decimal separator + * + * @var string + */ + private static $_decimalSeparator; + + /** + * Thousands separator + * + * @var string + */ + private static $_thousandsSeparator; + + /** + * Currency code + * + * @var string + */ + private static $_currencyCode; + + /** + * Is mbstring extension avalable? + * + * @var boolean + */ + private static $_isMbstringEnabled; + + /** + * Is iconv extension avalable? + * + * @var boolean + */ + private static $_isIconvEnabled; + + /** + * Build control characters array + */ + private static function _buildControlCharacters() { + for ($i = 0; $i <= 31; ++$i) { + if ($i != 9 && $i != 10 && $i != 13) { + $find = '_x' . sprintf('%04s' , strtoupper(dechex($i))) . '_'; + $replace = chr($i); + self::$_controlCharacters[$find] = $replace; + } + } + } + + /** + * Build SYLK characters array + */ + private static function _buildSYLKCharacters() + { + self::$_SYLKCharacters = array( + "\x1B 0" => chr(0), + "\x1B 1" => chr(1), + "\x1B 2" => chr(2), + "\x1B 3" => chr(3), + "\x1B 4" => chr(4), + "\x1B 5" => chr(5), + "\x1B 6" => chr(6), + "\x1B 7" => chr(7), + "\x1B 8" => chr(8), + "\x1B 9" => chr(9), + "\x1B :" => chr(10), + "\x1B ;" => chr(11), + "\x1B <" => chr(12), + "\x1B :" => chr(13), + "\x1B >" => chr(14), + "\x1B ?" => chr(15), + "\x1B!0" => chr(16), + "\x1B!1" => chr(17), + "\x1B!2" => chr(18), + "\x1B!3" => chr(19), + "\x1B!4" => chr(20), + "\x1B!5" => chr(21), + "\x1B!6" => chr(22), + "\x1B!7" => chr(23), + "\x1B!8" => chr(24), + "\x1B!9" => chr(25), + "\x1B!:" => chr(26), + "\x1B!;" => chr(27), + "\x1B!<" => chr(28), + "\x1B!=" => chr(29), + "\x1B!>" => chr(30), + "\x1B!?" => chr(31), + "\x1B'?" => chr(127), + "\x1B(0" => '€', // 128 in CP1252 + "\x1B(2" => '‚', // 130 in CP1252 + "\x1B(3" => 'ƒ', // 131 in CP1252 + "\x1B(4" => '„', // 132 in CP1252 + "\x1B(5" => '…', // 133 in CP1252 + "\x1B(6" => '†', // 134 in CP1252 + "\x1B(7" => '‡', // 135 in CP1252 + "\x1B(8" => 'ˆ', // 136 in CP1252 + "\x1B(9" => '‰', // 137 in CP1252 + "\x1B(:" => 'Š', // 138 in CP1252 + "\x1B(;" => '‹', // 139 in CP1252 + "\x1BNj" => 'Œ', // 140 in CP1252 + "\x1B(>" => 'Ž', // 142 in CP1252 + "\x1B)1" => '‘', // 145 in CP1252 + "\x1B)2" => '’', // 146 in CP1252 + "\x1B)3" => '“', // 147 in CP1252 + "\x1B)4" => '”', // 148 in CP1252 + "\x1B)5" => '•', // 149 in CP1252 + "\x1B)6" => '–', // 150 in CP1252 + "\x1B)7" => '—', // 151 in CP1252 + "\x1B)8" => '˜', // 152 in CP1252 + "\x1B)9" => '™', // 153 in CP1252 + "\x1B):" => 'š', // 154 in CP1252 + "\x1B);" => '›', // 155 in CP1252 + "\x1BNz" => 'œ', // 156 in CP1252 + "\x1B)>" => 'ž', // 158 in CP1252 + "\x1B)?" => 'Ÿ', // 159 in CP1252 + "\x1B*0" => ' ', // 160 in CP1252 + "\x1BN!" => '¡', // 161 in CP1252 + "\x1BN\"" => '¢', // 162 in CP1252 + "\x1BN#" => '£', // 163 in CP1252 + "\x1BN(" => '¤', // 164 in CP1252 + "\x1BN%" => '¥', // 165 in CP1252 + "\x1B*6" => '¦', // 166 in CP1252 + "\x1BN'" => '§', // 167 in CP1252 + "\x1BNH " => '¨', // 168 in CP1252 + "\x1BNS" => '©', // 169 in CP1252 + "\x1BNc" => 'ª', // 170 in CP1252 + "\x1BN+" => '«', // 171 in CP1252 + "\x1B*<" => '¬', // 172 in CP1252 + "\x1B*=" => '­', // 173 in CP1252 + "\x1BNR" => '®', // 174 in CP1252 + "\x1B*?" => '¯', // 175 in CP1252 + "\x1BN0" => '°', // 176 in CP1252 + "\x1BN1" => '±', // 177 in CP1252 + "\x1BN2" => '²', // 178 in CP1252 + "\x1BN3" => '³', // 179 in CP1252 + "\x1BNB " => '´', // 180 in CP1252 + "\x1BN5" => 'µ', // 181 in CP1252 + "\x1BN6" => '¶', // 182 in CP1252 + "\x1BN7" => '·', // 183 in CP1252 + "\x1B+8" => '¸', // 184 in CP1252 + "\x1BNQ" => '¹', // 185 in CP1252 + "\x1BNk" => 'º', // 186 in CP1252 + "\x1BN;" => '»', // 187 in CP1252 + "\x1BN<" => '¼', // 188 in CP1252 + "\x1BN=" => '½', // 189 in CP1252 + "\x1BN>" => '¾', // 190 in CP1252 + "\x1BN?" => '¿', // 191 in CP1252 + "\x1BNAA" => 'À', // 192 in CP1252 + "\x1BNBA" => 'Á', // 193 in CP1252 + "\x1BNCA" => 'Â', // 194 in CP1252 + "\x1BNDA" => 'Ã', // 195 in CP1252 + "\x1BNHA" => 'Ä', // 196 in CP1252 + "\x1BNJA" => 'Å', // 197 in CP1252 + "\x1BNa" => 'Æ', // 198 in CP1252 + "\x1BNKC" => 'Ç', // 199 in CP1252 + "\x1BNAE" => 'È', // 200 in CP1252 + "\x1BNBE" => 'É', // 201 in CP1252 + "\x1BNCE" => 'Ê', // 202 in CP1252 + "\x1BNHE" => 'Ë', // 203 in CP1252 + "\x1BNAI" => 'Ì', // 204 in CP1252 + "\x1BNBI" => 'Í', // 205 in CP1252 + "\x1BNCI" => 'Î', // 206 in CP1252 + "\x1BNHI" => 'Ï', // 207 in CP1252 + "\x1BNb" => 'Ð', // 208 in CP1252 + "\x1BNDN" => 'Ñ', // 209 in CP1252 + "\x1BNAO" => 'Ò', // 210 in CP1252 + "\x1BNBO" => 'Ó', // 211 in CP1252 + "\x1BNCO" => 'Ô', // 212 in CP1252 + "\x1BNDO" => 'Õ', // 213 in CP1252 + "\x1BNHO" => 'Ö', // 214 in CP1252 + "\x1B-7" => '×', // 215 in CP1252 + "\x1BNi" => 'Ø', // 216 in CP1252 + "\x1BNAU" => 'Ù', // 217 in CP1252 + "\x1BNBU" => 'Ú', // 218 in CP1252 + "\x1BNCU" => 'Û', // 219 in CP1252 + "\x1BNHU" => 'Ü', // 220 in CP1252 + "\x1B-=" => 'Ý', // 221 in CP1252 + "\x1BNl" => 'Þ', // 222 in CP1252 + "\x1BN{" => 'ß', // 223 in CP1252 + "\x1BNAa" => 'à', // 224 in CP1252 + "\x1BNBa" => 'á', // 225 in CP1252 + "\x1BNCa" => 'â', // 226 in CP1252 + "\x1BNDa" => 'ã', // 227 in CP1252 + "\x1BNHa" => 'ä', // 228 in CP1252 + "\x1BNJa" => 'å', // 229 in CP1252 + "\x1BNq" => 'æ', // 230 in CP1252 + "\x1BNKc" => 'ç', // 231 in CP1252 + "\x1BNAe" => 'è', // 232 in CP1252 + "\x1BNBe" => 'é', // 233 in CP1252 + "\x1BNCe" => 'ê', // 234 in CP1252 + "\x1BNHe" => 'ë', // 235 in CP1252 + "\x1BNAi" => 'ì', // 236 in CP1252 + "\x1BNBi" => 'í', // 237 in CP1252 + "\x1BNCi" => 'î', // 238 in CP1252 + "\x1BNHi" => 'ï', // 239 in CP1252 + "\x1BNs" => 'ð', // 240 in CP1252 + "\x1BNDn" => 'ñ', // 241 in CP1252 + "\x1BNAo" => 'ò', // 242 in CP1252 + "\x1BNBo" => 'ó', // 243 in CP1252 + "\x1BNCo" => 'ô', // 244 in CP1252 + "\x1BNDo" => 'õ', // 245 in CP1252 + "\x1BNHo" => 'ö', // 246 in CP1252 + "\x1B/7" => '÷', // 247 in CP1252 + "\x1BNy" => 'ø', // 248 in CP1252 + "\x1BNAu" => 'ù', // 249 in CP1252 + "\x1BNBu" => 'ú', // 250 in CP1252 + "\x1BNCu" => 'û', // 251 in CP1252 + "\x1BNHu" => 'ü', // 252 in CP1252 + "\x1B/=" => 'ý', // 253 in CP1252 + "\x1BN|" => 'þ', // 254 in CP1252 + "\x1BNHy" => 'ÿ', // 255 in CP1252 + ); + } + + /** + * Get whether mbstring extension is available + * + * @return boolean + */ + public static function getIsMbstringEnabled() + { + if (isset(self::$_isMbstringEnabled)) { + return self::$_isMbstringEnabled; + } + + self::$_isMbstringEnabled = function_exists('mb_convert_encoding') ? + true : false; + + return self::$_isMbstringEnabled; + } + + /** + * Get whether iconv extension is available + * + * @return boolean + */ + public static function getIsIconvEnabled() + { + if (isset(self::$_isIconvEnabled)) { + return self::$_isIconvEnabled; + } + + // Fail if iconv doesn't exist + if (!function_exists('iconv')) { + self::$_isIconvEnabled = false; + return false; + } + + // Sometimes iconv is not working, and e.g. iconv('UTF-8', 'UTF-16LE', 'x') just returns false, + if (!@iconv('UTF-8', 'UTF-16LE', 'x')) { + self::$_isIconvEnabled = false; + return false; + } + + // Sometimes iconv_substr('A', 0, 1, 'UTF-8') just returns false in PHP 5.2.0 + // we cannot use iconv in that case either (http://bugs.php.net/bug.php?id=37773) + if (!@iconv_substr('A', 0, 1, 'UTF-8')) { + self::$_isIconvEnabled = false; + return false; + } + + // CUSTOM: IBM AIX iconv() does not work + if ( defined('PHP_OS') && @stristr(PHP_OS, 'AIX') + && defined('ICONV_IMPL') && (@strcasecmp(ICONV_IMPL, 'unknown') == 0) + && defined('ICONV_VERSION') && (@strcasecmp(ICONV_VERSION, 'unknown') == 0) ) + { + self::$_isIconvEnabled = false; + return false; + } + + // If we reach here no problems were detected with iconv + self::$_isIconvEnabled = true; + return true; + } + + public static function buildCharacterSets() { + if(empty(self::$_controlCharacters)) { + self::_buildControlCharacters(); + } + if(empty(self::$_SYLKCharacters)) { + self::_buildSYLKCharacters(); + } + } + + /** + * Convert from OpenXML escaped control character to PHP control character + * + * Excel 2007 team: + * ---------------- + * That's correct, control characters are stored directly in the shared-strings table. + * We do encode characters that cannot be represented in XML using the following escape sequence: + * _xHHHH_ where H represents a hexadecimal character in the character's value... + * So you could end up with something like _x0008_ in a string (either in a cell value (<v>) + * element or in the shared string <t> element. + * + * @param string $value Value to unescape + * @return string + */ + public static function ControlCharacterOOXML2PHP($value = '') { + return str_replace( array_keys(self::$_controlCharacters), array_values(self::$_controlCharacters), $value ); + } + + /** + * Convert from PHP control character to OpenXML escaped control character + * + * Excel 2007 team: + * ---------------- + * That's correct, control characters are stored directly in the shared-strings table. + * We do encode characters that cannot be represented in XML using the following escape sequence: + * _xHHHH_ where H represents a hexadecimal character in the character's value... + * So you could end up with something like _x0008_ in a string (either in a cell value (<v>) + * element or in the shared string <t> element. + * + * @param string $value Value to escape + * @return string + */ + public static function ControlCharacterPHP2OOXML($value = '') { + return str_replace( array_values(self::$_controlCharacters), array_keys(self::$_controlCharacters), $value ); + } + + /** + * Try to sanitize UTF8, stripping invalid byte sequences. Not perfect. Does not surrogate characters. + * + * @param string $value + * @return string + */ + public static function SanitizeUTF8($value) + { + if (self::getIsIconvEnabled()) { + $value = @iconv('UTF-8', 'UTF-8', $value); + return $value; + } + + if (self::getIsMbstringEnabled()) { + $value = mb_convert_encoding($value, 'UTF-8', 'UTF-8'); + return $value; + } + + // else, no conversion + return $value; + } + + /** + * Check if a string contains UTF8 data + * + * @param string $value + * @return boolean + */ + public static function IsUTF8($value = '') { + return utf8_encode(utf8_decode($value)) === $value; + } + + /** + * Formats a numeric value as a string for output in various output writers forcing + * point as decimal separator in case locale is other than English. + * + * @param mixed $value + * @return string + */ + public static function FormatNumber($value) { + if (is_float($value)) { + return str_replace(',', '.', $value); + } + return (string) $value; + } + + /** + * Converts a UTF-8 string into BIFF8 Unicode string data (8-bit string length) + * Writes the string using uncompressed notation, no rich text, no Asian phonetics + * If mbstring extension is not available, ASCII is assumed, and compressed notation is used + * although this will give wrong results for non-ASCII strings + * see OpenOffice.org's Documentation of the Microsoft Excel File Format, sect. 2.5.3 + * + * @param string $value UTF-8 encoded string + * @return string + */ + public static function UTF8toBIFF8UnicodeShort($value, $arrcRuns = array()) + { + // character count + $ln = self::CountCharacters($value, 'UTF-8'); + + // option flags + if(empty($arrcRuns)){ + $opt = (self::getIsIconvEnabled() || self::getIsMbstringEnabled()) ? + 0x0001 : 0x0000; + $data = pack('CC', $ln, $opt); + // characters + $data .= self::ConvertEncoding($value, 'UTF-16LE', 'UTF-8'); + } + else { + $data = pack('vC', $ln, 0x08); + $data .= pack('v', count($arrcRuns)); + // characters + $data .= $value; + foreach ($arrcRuns as $cRun){ + $data .= pack('v', $cRun['strlen']); + $data .= pack('v', $cRun['fontidx']); + } + } + return $data; + } + + /** + * Converts a UTF-8 string into BIFF8 Unicode string data (16-bit string length) + * Writes the string using uncompressed notation, no rich text, no Asian phonetics + * If mbstring extension is not available, ASCII is assumed, and compressed notation is used + * although this will give wrong results for non-ASCII strings + * see OpenOffice.org's Documentation of the Microsoft Excel File Format, sect. 2.5.3 + * + * @param string $value UTF-8 encoded string + * @return string + */ + public static function UTF8toBIFF8UnicodeLong($value) + { + // character count + $ln = self::CountCharacters($value, 'UTF-8'); + + // option flags + $opt = (self::getIsIconvEnabled() || self::getIsMbstringEnabled()) ? + 0x0001 : 0x0000; + + // characters + $chars = self::ConvertEncoding($value, 'UTF-16LE', 'UTF-8'); + + $data = pack('vC', $ln, $opt) . $chars; + return $data; + } + + /** + * Convert string from one encoding to another. First try iconv, then mbstring, or no convertion + * + * @param string $value + * @param string $to Encoding to convert to, e.g. 'UTF-8' + * @param string $from Encoding to convert from, e.g. 'UTF-16LE' + * @return string + */ + public static function ConvertEncoding($value, $to, $from) + { + if (self::getIsIconvEnabled()) { + $value = iconv($from, $to, $value); + return $value; + } + + if (self::getIsMbstringEnabled()) { + $value = mb_convert_encoding($value, $to, $from); + return $value; + } + if($from == 'UTF-16LE'){ + return self::utf16_decode($value, false); + }else if($from == 'UTF-16BE'){ + return self::utf16_decode($value); + } + // else, no conversion + return $value; + } + + /** + * Decode UTF-16 encoded strings. + * + * Can handle both BOM'ed data and un-BOM'ed data. + * Assumes Big-Endian byte order if no BOM is available. + * This function was taken from http://php.net/manual/en/function.utf8-decode.php + * and $bom_be parameter added. + * + * @param string $str UTF-16 encoded data to decode. + * @return string UTF-8 / ISO encoded data. + * @access public + * @version 0.2 / 2010-05-13 + * @author Rasmus Andersson {@link http://rasmusandersson.se/} + * @author vadik56 + */ + public static function utf16_decode( $str, $bom_be=true ) { + if( strlen($str) < 2 ) return $str; + $c0 = ord($str{0}); + $c1 = ord($str{1}); + if( $c0 == 0xfe && $c1 == 0xff ) { $str = substr($str,2); } + elseif( $c0 == 0xff && $c1 == 0xfe ) { $str = substr($str,2); $bom_be = false; } + $len = strlen($str); + $newstr = ''; + for($i=0;$i<$len;$i+=2) { + if( $bom_be ) { $val = ord($str{$i}) << 4; $val += ord($str{$i+1}); } + else { $val = ord($str{$i+1}) << 4; $val += ord($str{$i}); } + $newstr .= ($val == 0x228) ? "\n" : chr($val); + } + return $newstr; + } + + /** + * Get character count. First try mbstring, then iconv, finally strlen + * + * @param string $value + * @param string $enc Encoding + * @return int Character count + */ + public static function CountCharacters($value, $enc = 'UTF-8') + { + if (self::getIsIconvEnabled()) { + return iconv_strlen($value, $enc); + } + + if (self::getIsMbstringEnabled()) { + return mb_strlen($value, $enc); + } + + // else strlen + return strlen($value); + } + + /** + * Get a substring of a UTF-8 encoded string + * + * @param string $pValue UTF-8 encoded string + * @param int $start Start offset + * @param int $length Maximum number of characters in substring + * @return string + */ + public static function Substring($pValue = '', $pStart = 0, $pLength = 0) + { + if (self::getIsIconvEnabled()) { + return iconv_substr($pValue, $pStart, $pLength, 'UTF-8'); + } + + if (self::getIsMbstringEnabled()) { + return mb_substr($pValue, $pStart, $pLength, 'UTF-8'); + } + + // else substr + return substr($pValue, $pStart, $pLength); + } + + + /** + * Identify whether a string contains a fractional numeric value, + * and convert it to a numeric if it is + * + * @param string &$operand string value to test + * @return boolean + */ + public static function convertToNumberIfFraction(&$operand) { + if (preg_match('/^'.self::STRING_REGEXP_FRACTION.'$/i', $operand, $match)) { + $sign = ($match[1] == '-') ? '-' : '+'; + $fractionFormula = '='.$sign.$match[2].$sign.$match[3]; + $operand = PHPExcel_Calculation::getInstance()->_calculateFormulaValue($fractionFormula); + return true; + } + return false; + } // function convertToNumberIfFraction() + + /** + * Get the decimal separator. If it has not yet been set explicitly, try to obtain number + * formatting information from locale. + * + * @return string + */ + public static function getDecimalSeparator() + { + if (!isset(self::$_decimalSeparator)) { + $localeconv = localeconv(); + self::$_decimalSeparator = ($localeconv['decimal_point'] != '') + ? $localeconv['decimal_point'] : $localeconv['mon_decimal_point']; + + if (self::$_decimalSeparator == '') { + // Default to . + self::$_decimalSeparator = '.'; + } + } + return self::$_decimalSeparator; + } + + /** + * Set the decimal separator. Only used by PHPExcel_Style_NumberFormat::toFormattedString() + * to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF + * + * @param string $pValue Character for decimal separator + */ + public static function setDecimalSeparator($pValue = '.') + { + self::$_decimalSeparator = $pValue; + } + + /** + * Get the thousands separator. If it has not yet been set explicitly, try to obtain number + * formatting information from locale. + * + * @return string + */ + public static function getThousandsSeparator() + { + if (!isset(self::$_thousandsSeparator)) { + $localeconv = localeconv(); + self::$_thousandsSeparator = ($localeconv['thousands_sep'] != '') + ? $localeconv['thousands_sep'] : $localeconv['mon_thousands_sep']; + } + return self::$_thousandsSeparator; + } + + /** + * Set the thousands separator. Only used by PHPExcel_Style_NumberFormat::toFormattedString() + * to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF + * + * @param string $pValue Character for thousands separator + */ + public static function setThousandsSeparator($pValue = ',') + { + self::$_thousandsSeparator = $pValue; + } + + /** + * Get the currency code. If it has not yet been set explicitly, try to obtain the + * symbol information from locale. + * + * @return string + */ + public static function getCurrencyCode() + { + if (!isset(self::$_currencyCode)) { + $localeconv = localeconv(); + self::$_currencyCode = ($localeconv['currency_symbol'] != '') + ? $localeconv['currency_symbol'] : $localeconv['int_curr_symbol']; + + if (self::$_currencyCode == '') { + // Default to $ + self::$_currencyCode = '$'; + } + } + return self::$_currencyCode; + } + + /** + * Set the currency code. Only used by PHPExcel_Style_NumberFormat::toFormattedString() + * to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF + * + * @param string $pValue Character for currency code + */ + public static function setCurrencyCode($pValue = '$') + { + self::$_currencyCode = $pValue; + } + + /** + * Convert SYLK encoded string to UTF-8 + * + * @param string $pValue + * @return string UTF-8 encoded string + */ + public static function SYLKtoUTF8($pValue = '') + { + // If there is no escape character in the string there is nothing to do + if (strpos($pValue, '') === false) { + return $pValue; + } + + foreach (self::$_SYLKCharacters as $k => $v) { + $pValue = str_replace($k, $v, $pValue); + } + + return $pValue; + } + + /** + * Retrieve any leading numeric part of a string, or return the full string if no leading numeric + * (handles basic integer or float, but not exponent or non decimal) + * + * @param string $value + * @return mixed string or only the leading numeric part of the string + */ + public static function testStringAsNumeric($value) + { + if (is_numeric($value)) + return $value; + $v = floatval($value); + return (is_numeric(substr($value,0,strlen($v)))) ? $v : $value; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/XMLWriter.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/XMLWriter.php new file mode 100644 index 0000000..403c099 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/XMLWriter.php @@ -0,0 +1,127 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +if (!defined('DATE_W3C')) { + define('DATE_W3C', 'Y-m-d\TH:i:sP'); +} + +if (!defined('DEBUGMODE_ENABLED')) { + define('DEBUGMODE_ENABLED', false); +} + + +/** + * PHPExcel_Shared_XMLWriter + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_XMLWriter extends XMLWriter { + /** Temporary storage method */ + const STORAGE_MEMORY = 1; + const STORAGE_DISK = 2; + + /** + * Temporary filename + * + * @var string + */ + private $_tempFileName = ''; + + /** + * Create a new PHPExcel_Shared_XMLWriter instance + * + * @param int $pTemporaryStorage Temporary storage location + * @param string $pTemporaryStorageFolder Temporary storage folder + */ + public function __construct($pTemporaryStorage = self::STORAGE_MEMORY, $pTemporaryStorageFolder = NULL) { + // Open temporary storage + if ($pTemporaryStorage == self::STORAGE_MEMORY) { + $this->openMemory(); + } else { + // Create temporary filename + if ($pTemporaryStorageFolder === NULL) + $pTemporaryStorageFolder = PHPExcel_Shared_File::sys_get_temp_dir(); + $this->_tempFileName = @tempnam($pTemporaryStorageFolder, 'xml'); + + // Open storage + if ($this->openUri($this->_tempFileName) === false) { + // Fallback to memory... + $this->openMemory(); + } + } + + // Set default values + if (DEBUGMODE_ENABLED) { + $this->setIndent(true); + } + } + + /** + * Destructor + */ + public function __destruct() { + // Unlink temporary files + if ($this->_tempFileName != '') { + @unlink($this->_tempFileName); + } + } + + /** + * Get written data + * + * @return $data + */ + public function getData() { + if ($this->_tempFileName == '') { + return $this->outputMemory(true); + } else { + $this->flush(); + return file_get_contents($this->_tempFileName); + } + } + + /** + * Fallback method for writeRaw, introduced in PHP 5.2 + * + * @param string $text + * @return string + */ + public function writeRawData($text) + { + if (is_array($text)) { + $text = implode("\n",$text); + } + + if (method_exists($this, 'writeRaw')) { + return $this->writeRaw(htmlspecialchars($text)); + } + + return $this->text($text); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/ZipArchive.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/ZipArchive.php new file mode 100644 index 0000000..56d7c39 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/ZipArchive.php @@ -0,0 +1,114 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_ZipArchive + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +if (!defined('PCLZIP_TEMPORARY_DIR')) { + define('PCLZIP_TEMPORARY_DIR', PHPExcel_Shared_File::sys_get_temp_dir()); +} +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/PCLZip/pclzip.lib.php'; + + +/** + * PHPExcel_Shared_ZipArchive + * + * @category PHPExcel + * @package PHPExcel_Shared_ZipArchive + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_ZipArchive +{ + + /** constants */ + const OVERWRITE = 'OVERWRITE'; + const CREATE = 'CREATE'; + + + /** + * Temporary storage directory + * + * @var string + */ + private $_tempDir; + + /** + * Zip Archive Stream Handle + * + * @var string + */ + private $_zip; + + + /** + * Open a new zip archive + * + * @param string $fileName Filename for the zip archive + * @return boolean + */ + public function open($fileName) + { + $this->_tempDir = PHPExcel_Shared_File::sys_get_temp_dir(); + + $this->_zip = new PclZip($fileName); + + return true; + } + + + /** + * Close this zip archive + * + */ + public function close() + { + } + + + /** + * Add a new file to the zip archive from a string of raw data. + * + * @param string $localname Directory/Name of the file to add to the zip archive + * @param string $contents String of data to add to the zip archive + */ + public function addFromString($localname, $contents) + { + $filenameParts = pathinfo($localname); + + $handle = fopen($this->_tempDir.'/'.$filenameParts["basename"], "wb"); + fwrite($handle, $contents); + fclose($handle); + + $res = $this->_zip->add($this->_tempDir.'/'.$filenameParts["basename"], + PCLZIP_OPT_REMOVE_PATH, $this->_tempDir, + PCLZIP_OPT_ADD_PATH, $filenameParts["dirname"] + ); + if ($res == 0) { + throw new Exception("Error zipping files : " . $this->_zip->errorInfo(true)); + } + + unlink($this->_tempDir.'/'.$filenameParts["basename"]); + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/ZipStreamWrapper.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/ZipStreamWrapper.php new file mode 100644 index 0000000..58d7e02 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/ZipStreamWrapper.php @@ -0,0 +1,183 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Shared_ZipStreamWrapper + * + * @category PHPExcel + * @package PHPExcel_Shared + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Shared_ZipStreamWrapper { + /** + * Internal ZipAcrhive + * + * @var ZipAcrhive + */ + private $_archive; + + /** + * Filename in ZipAcrhive + * + * @var string + */ + private $_fileNameInArchive = ''; + + /** + * Position in file + * + * @var int + */ + private $_position = 0; + + /** + * Data + * + * @var mixed + */ + private $_data = ''; + + /** + * Register wrapper + */ + public static function register() { + @stream_wrapper_unregister("zip"); + @stream_wrapper_register("zip", __CLASS__); + } + + /** + * Implements support for fopen(). + * + * @param string $path resource name including scheme, e.g. + * @param string $mode only "r" is supported + * @param int $options mask of STREAM_REPORT_ERRORS and STREAM_USE_PATH + * @param string &$openedPath absolute path of the opened stream (out parameter) + * @return bool true on success + */ + public function stream_open($path, $mode, $options, &$opened_path) { + // Check for mode + if ($mode{0} != 'r') { + throw new Exception('Mode ' . $mode . ' is not supported. Only read mode is supported.'); + } + + $pos = strrpos($path, '#'); + $url['host'] = substr($path, 6, $pos - 6); // 6: strlen('zip://') + $url['fragment'] = substr($path, $pos + 1); + + // Open archive + $this->_archive = new ZipArchive(); + $this->_archive->open($url['host']); + + $this->_fileNameInArchive = $url['fragment']; + $this->_position = 0; + $this->_data = $this->_archive->getFromName( $this->_fileNameInArchive ); + + return true; + } + + /** + * Implements support for fstat(). + * + * @return boolean + */ + public function stream_stat() { + return $this->_archive->statName( $this->_fileNameInArchive ); + } + + /** + * Implements support for fread(), fgets() etc. + * + * @param int $count maximum number of bytes to read + * @return string + */ + function stream_read($count) { + $ret = substr($this->_data, $this->_position, $count); + $this->_position += strlen($ret); + return $ret; + } + + /** + * Returns the position of the file pointer, i.e. its offset into the file + * stream. Implements support for ftell(). + * + * @return int + */ + public function stream_tell() { + return $this->_position; + } + + /** + * EOF stream + * + * @return bool + */ + public function stream_eof() { + return $this->_position >= strlen($this->_data); + } + + /** + * Seek stream + * + * @param int $offset byte offset + * @param int $whence SEEK_SET, SEEK_CUR or SEEK_END + * @return bool + */ + public function stream_seek($offset, $whence) { + switch ($whence) { + case SEEK_SET: + if ($offset < strlen($this->_data) && $offset >= 0) { + $this->_position = $offset; + return true; + } else { + return false; + } + break; + + case SEEK_CUR: + if ($offset >= 0) { + $this->_position += $offset; + return true; + } else { + return false; + } + break; + + case SEEK_END: + if (strlen($this->_data) + $offset >= 0) { + $this->_position = strlen($this->_data) + $offset; + return true; + } else { + return false; + } + break; + + default: + return false; + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/_notes/dwsync.xml new file mode 100644 index 0000000..af1766e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/_notes/dwsync.xml @@ -0,0 +1,101 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Date.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Drawing.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Escher.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Excel5.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="File.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Font.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="OLE.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="OLERead.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="PasswordHasher.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="String.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="XMLWriter.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="ZipArchive.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="ZipStreamWrapper.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="CodePage.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944688409999999" remote="129972060600000000" Dst="-1" /> +<file name="Drawing.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="PasswordHasher.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="XMLWriter.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="ZipArchive.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="Font.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="String.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="CodePage.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="Escher.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="OLERead.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851549999999" remote="129984144000000000" Dst="-1" /> +<file name="Date.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="ZipStreamWrapper.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="File.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="OLE.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851559999999" remote="129984144000000000" Dst="-1" /> +<file name="Excel5.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="Drawing.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997098600000000" Dst="-1" /> +<file name="PasswordHasher.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="XMLWriter.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="ZipArchive.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="Font.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="String.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="CodePage.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="Escher.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="OLERead.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851549999999" remote="129997099200000000" Dst="-1" /> +<file name="Date.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="ZipStreamWrapper.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="File.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="OLE.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851559999999" remote="129997099200000000" Dst="-1" /> +<file name="Excel5.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="Drawing.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560000942973" remote="131260196400000000" Dst="1" /> +<file name="PasswordHasher.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560001353252" remote="131260196400000000" Dst="1" /> +<file name="XMLWriter.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560001780380" remote="131260196400000000" Dst="1" /> +<file name="ZipArchive.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560002223609" remote="131260196400000000" Dst="1" /> +<file name="Font.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560002699874" remote="131260196400000000" Dst="1" /> +<file name="String.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560003217173" remote="131260196400000000" Dst="1" /> +<file name="CodePage.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560003667987" remote="131260196400000000" Dst="1" /> +<file name="Escher.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560004130765" remote="131260196400000000" Dst="1" /> +<file name="OLERead.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560004585523" remote="131260196400000000" Dst="1" /> +<file name="Date.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560005018288" remote="131260196400000000" Dst="1" /> +<file name="ZipStreamWrapper.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560005721205" remote="131260196400000000" Dst="1" /> +<file name="File.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560006262855" remote="131260196400000000" Dst="1" /> +<file name="OLE.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560007243989" remote="131260196400000000" Dst="1" /> +<file name="Excel5.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560007685584" remote="131260196400000000" Dst="1" /> +<file name="Drawing.php" server="62.244.88.21/amashow/" local="131414752296144718" remote="131414680800000000" Dst="2" /> +<file name="PasswordHasher.php" server="62.244.88.21/amashow/" local="131414752296339811" remote="131414680800000000" Dst="2" /> +<file name="ZipArchive.php" server="62.244.88.21/amashow/" local="131414752296736865" remote="131414680800000000" Dst="2" /> +<file name="XMLWriter.php" server="62.244.88.21/amashow/" local="131414752296539364" remote="131414680800000000" Dst="2" /> +<file name="Font.php" server="62.244.88.21/amashow/" local="131414752296973021" remote="131414680800000000" Dst="2" /> +<file name="String.php" server="62.244.88.21/amashow/" local="131414752297403864" remote="131414680800000000" Dst="2" /> +<file name="CodePage.php" server="62.244.88.21/amashow/" local="131414752297619057" remote="131414680800000000" Dst="2" /> +<file name="Escher.php" server="62.244.88.21/amashow/" local="131414752297812899" remote="131414680800000000" Dst="2" /> +<file name="Date.php" server="62.244.88.21/amashow/" local="131414752298235695" remote="131414680800000000" Dst="2" /> +<file name="ZipStreamWrapper.php" server="62.244.88.21/amashow/" local="131414752298439015" remote="131414680800000000" Dst="2" /> +<file name="OLERead.php" server="62.244.88.21/amashow/" local="131414752298020349" remote="131414680800000000" Dst="2" /> +<file name="File.php" server="62.244.88.21/amashow/" local="131414752298633336" remote="131414680800000000" Dst="2" /> +<file name="OLE.php" server="62.244.88.21/amashow/" local="131414752298848362" remote="131414680800000000" Dst="2" /> +<file name="Excel5.php" server="62.244.88.21/amashow/" local="131414752299061628" remote="131414680800000000" Dst="2" /> +<file name="OLE.php" server="62.244.88.21/deciday/" local="131919461304033187" remote="131826017400000000" Dst="1" /> +<file name="Date.php" server="62.244.88.21/deciday/" local="131919461280484479" remote="131826017400000000" Dst="1" /> +<file name="Drawing.php" server="62.244.88.21/deciday/" local="131919461283591380" remote="131826017400000000" Dst="1" /> +<file name="File.php" server="62.244.88.21/deciday/" local="131919461287801191" remote="131826017400000000" Dst="1" /> +<file name="String.php" server="62.244.88.21/deciday/" local="131919461307354121" remote="131826017400000000" Dst="1" /> +<file name="ZipArchive.php" server="62.244.88.21/deciday/" local="131919461318105405" remote="131826017400000000" Dst="1" /> +<file name="Escher.php" server="62.244.88.21/deciday/" local="131919461286832310" remote="131826017400000000" Dst="1" /> +<file name="Excel5.php" server="62.244.88.21/deciday/" local="131919461287980873" remote="131826017400000000" Dst="1" /> +<file name="OLERead.php" server="62.244.88.21/deciday/" local="131919461304532043" remote="131826017400000000" Dst="1" /> +<file name="Font.php" server="62.244.88.21/deciday/" local="131919461289335385" remote="131826017400000000" Dst="1" /> +<file name="CodePage.php" server="62.244.88.21/deciday/" local="131919461279141177" remote="131826017400000000" Dst="1" /> +<file name="XMLWriter.php" server="62.244.88.21/deciday/" local="131919461319056952" remote="131826017400000000" Dst="1" /> +<file name="PasswordHasher.php" server="62.244.88.21/deciday/" local="131919461305306684" remote="131826017400000000" Dst="1" /> +<file name="ZipStreamWrapper.php" server="62.244.88.21/deciday/" local="131919461318632889" remote="131826017400000000" Dst="1" /> +<file name="CodePage.php" server="62.244.88.21/deciday_18/" local="131414752297619057" remote="131825945400000000" Dst="2" /> +<file name="Date.php" server="62.244.88.21/deciday_18/" local="131414752298235695" remote="131825945400000000" Dst="2" /> +<file name="Drawing.php" server="62.244.88.21/deciday_18/" local="131414752296144718" remote="131825945400000000" Dst="2" /> +<file name="Escher.php" server="62.244.88.21/deciday_18/" local="131414752297812899" remote="131825945400000000" Dst="2" /> +<file name="Excel5.php" server="62.244.88.21/deciday_18/" local="131414752299061628" remote="131825945400000000" Dst="2" /> +<file name="File.php" server="62.244.88.21/deciday_18/" local="131414752298633336" remote="131825945400000000" Dst="2" /> +<file name="Font.php" server="62.244.88.21/deciday_18/" local="131414752296973021" remote="131825945400000000" Dst="2" /> +<file name="OLE.php" server="62.244.88.21/deciday_18/" local="131414752298848362" remote="131825945400000000" Dst="2" /> +<file name="OLERead.php" server="62.244.88.21/deciday_18/" local="131414752298020349" remote="131825945400000000" Dst="2" /> +<file name="PasswordHasher.php" server="62.244.88.21/deciday_18/" local="131414752296339811" remote="131825945400000000" Dst="2" /> +<file name="String.php" server="62.244.88.21/deciday_18/" local="131414752297403864" remote="131825945400000000" Dst="2" /> +<file name="XMLWriter.php" server="62.244.88.21/deciday_18/" local="131414752296539364" remote="131825945400000000" Dst="2" /> +<file name="ZipArchive.php" server="62.244.88.21/deciday_18/" local="131414752296736865" remote="131825945400000000" Dst="2" /> +<file name="ZipStreamWrapper.php" server="62.244.88.21/deciday_18/" local="131414752298439015" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/_notes/dwsync.xml new file mode 100644 index 0000000..38e4f29 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/_notes/dwsync.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="bestFitClass.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="exponentialBestFitClass.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="linearBestFitClass.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="logarithmicBestFitClass.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="polynomialBestFitClass.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="powerBestFitClass.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="trendClass.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="exponentialBestFitClass.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="linearBestFitClass.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="trendClass.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="powerBestFitClass.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="bestFitClass.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="logarithmicBestFitClass.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="polynomialBestFitClass.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851539999999" remote="129984144000000000" Dst="-1" /> +<file name="exponentialBestFitClass.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997099200000000" Dst="-1" /> +<file name="linearBestFitClass.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997099200000000" Dst="-1" /> +<file name="trendClass.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="powerBestFitClass.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="bestFitClass.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="logarithmicBestFitClass.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="polynomialBestFitClass.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851539999999" remote="129997099200000000" Dst="-1" /> +<file name="exponentialBestFitClass.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560008370300" remote="131260196400000000" Dst="1" /> +<file name="linearBestFitClass.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560008869046" remote="131260196400000000" Dst="1" /> +<file name="trendClass.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560009346414" remote="131260196400000000" Dst="1" /> +<file name="powerBestFitClass.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560009784255" remote="131260196400000000" Dst="1" /> +<file name="bestFitClass.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560010230015" remote="131260196400000000" Dst="1" /> +<file name="logarithmicBestFitClass.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560010677881" remote="131260196400000000" Dst="1" /> +<file name="polynomialBestFitClass.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560011131047" remote="131260196400000000" Dst="1" /> +<file name="exponentialBestFitClass.php" server="62.244.88.21/amashow/" local="131414752299746971" remote="131414680800000000" Dst="2" /> +<file name="linearBestFitClass.php" server="62.244.88.21/amashow/" local="131414752300110159" remote="131414680800000000" Dst="2" /> +<file name="trendClass.php" server="62.244.88.21/amashow/" local="131414752300481367" remote="131414680800000000" Dst="2" /> +<file name="powerBestFitClass.php" server="62.244.88.21/amashow/" local="131414752300689493" remote="131414680800000000" Dst="2" /> +<file name="bestFitClass.php" server="62.244.88.21/amashow/" local="131414752300903531" remote="131414680800000000" Dst="2" /> +<file name="logarithmicBestFitClass.php" server="62.244.88.21/amashow/" local="131414752301100952" remote="131414680800000000" Dst="2" /> +<file name="polynomialBestFitClass.php" server="62.244.88.21/amashow/" local="131414752301494449" remote="131414680800000000" Dst="2" /> +<file name="logarithmicBestFitClass.php" server="62.244.88.21/deciday/" local="131919461316539911" remote="131826017400000000" Dst="1" /> +<file name="polynomialBestFitClass.php" server="62.244.88.21/deciday/" local="131919461315717455" remote="131826017400000000" Dst="1" /> +<file name="bestFitClass.php" server="62.244.88.21/deciday/" local="131919461313582637" remote="131826017400000000" Dst="1" /> +<file name="trendClass.php" server="62.244.88.21/deciday/" local="131919461317588198" remote="131826017400000000" Dst="1" /> +<file name="linearBestFitClass.php" server="62.244.88.21/deciday/" local="131919461314111233" remote="131826017400000000" Dst="1" /> +<file name="powerBestFitClass.php" server="62.244.88.21/deciday/" local="131919461316761619" remote="131826017400000000" Dst="1" /> +<file name="exponentialBestFitClass.php" server="62.244.88.21/deciday/" local="131919461312940566" remote="131826017400000000" Dst="1" /> +<file name="bestFitClass.php" server="62.244.88.21/deciday_18/" local="131414752300903531" remote="131825945400000000" Dst="2" /> +<file name="exponentialBestFitClass.php" server="62.244.88.21/deciday_18/" local="131414752299746971" remote="131825945400000000" Dst="2" /> +<file name="linearBestFitClass.php" server="62.244.88.21/deciday_18/" local="131414752300110159" remote="131825945400000000" Dst="2" /> +<file name="logarithmicBestFitClass.php" server="62.244.88.21/deciday_18/" local="131414752301100952" remote="131825945400000000" Dst="2" /> +<file name="polynomialBestFitClass.php" server="62.244.88.21/deciday_18/" local="131414752301494449" remote="131825945400000000" Dst="2" /> +<file name="powerBestFitClass.php" server="62.244.88.21/deciday_18/" local="131414752300689493" remote="131825945400000000" Dst="2" /> +<file name="trendClass.php" server="62.244.88.21/deciday_18/" local="131414752300481367" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/bestFitClass.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/bestFitClass.php new file mode 100644 index 0000000..d86424f --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/bestFitClass.php @@ -0,0 +1,432 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Best_Fit + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Best_Fit +{ + /** + * Indicator flag for a calculation error + * + * @var boolean + **/ + protected $_error = False; + + /** + * Algorithm type to use for best-fit + * + * @var string + **/ + protected $_bestFitType = 'undetermined'; + + /** + * Number of entries in the sets of x- and y-value arrays + * + * @var int + **/ + protected $_valueCount = 0; + + /** + * X-value dataseries of values + * + * @var float[] + **/ + protected $_xValues = array(); + + /** + * Y-value dataseries of values + * + * @var float[] + **/ + protected $_yValues = array(); + + /** + * Flag indicating whether values should be adjusted to Y=0 + * + * @var boolean + **/ + protected $_adjustToZero = False; + + /** + * Y-value series of best-fit values + * + * @var float[] + **/ + protected $_yBestFitValues = array(); + + protected $_goodnessOfFit = 1; + + protected $_stdevOfResiduals = 0; + + protected $_covariance = 0; + + protected $_correlation = 0; + + protected $_SSRegression = 0; + + protected $_SSResiduals = 0; + + protected $_DFResiduals = 0; + + protected $_F = 0; + + protected $_slope = 0; + + protected $_slopeSE = 0; + + protected $_intersect = 0; + + protected $_intersectSE = 0; + + protected $_Xoffset = 0; + + protected $_Yoffset = 0; + + + public function getError() { + return $this->_error; + } // function getBestFitType() + + + public function getBestFitType() { + return $this->_bestFitType; + } // function getBestFitType() + + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + */ + public function getValueOfYForX($xValue) { + return False; + } // function getValueOfYForX() + + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + */ + public function getValueOfXForY($yValue) { + return False; + } // function getValueOfXForY() + + + /** + * Return the original set of X-Values + * + * @return float[] X-Values + */ + public function getXValues() { + return $this->_xValues; + } // function getValueOfXForY() + + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + */ + public function getEquation($dp=0) { + return False; + } // function getEquation() + + + /** + * Return the Slope of the line + * + * @param int $dp Number of places of decimal precision to display + * @return string + */ + public function getSlope($dp=0) { + if ($dp != 0) { + return round($this->_slope,$dp); + } + return $this->_slope; + } // function getSlope() + + + /** + * Return the standard error of the Slope + * + * @param int $dp Number of places of decimal precision to display + * @return string + */ + public function getSlopeSE($dp=0) { + if ($dp != 0) { + return round($this->_slopeSE,$dp); + } + return $this->_slopeSE; + } // function getSlopeSE() + + + /** + * Return the Value of X where it intersects Y = 0 + * + * @param int $dp Number of places of decimal precision to display + * @return string + */ + public function getIntersect($dp=0) { + if ($dp != 0) { + return round($this->_intersect,$dp); + } + return $this->_intersect; + } // function getIntersect() + + + /** + * Return the standard error of the Intersect + * + * @param int $dp Number of places of decimal precision to display + * @return string + */ + public function getIntersectSE($dp=0) { + if ($dp != 0) { + return round($this->_intersectSE,$dp); + } + return $this->_intersectSE; + } // function getIntersectSE() + + + /** + * Return the goodness of fit for this regression + * + * @param int $dp Number of places of decimal precision to return + * @return float + */ + public function getGoodnessOfFit($dp=0) { + if ($dp != 0) { + return round($this->_goodnessOfFit,$dp); + } + return $this->_goodnessOfFit; + } // function getGoodnessOfFit() + + + public function getGoodnessOfFitPercent($dp=0) { + if ($dp != 0) { + return round($this->_goodnessOfFit * 100,$dp); + } + return $this->_goodnessOfFit * 100; + } // function getGoodnessOfFitPercent() + + + /** + * Return the standard deviation of the residuals for this regression + * + * @param int $dp Number of places of decimal precision to return + * @return float + */ + public function getStdevOfResiduals($dp=0) { + if ($dp != 0) { + return round($this->_stdevOfResiduals,$dp); + } + return $this->_stdevOfResiduals; + } // function getStdevOfResiduals() + + + public function getSSRegression($dp=0) { + if ($dp != 0) { + return round($this->_SSRegression,$dp); + } + return $this->_SSRegression; + } // function getSSRegression() + + + public function getSSResiduals($dp=0) { + if ($dp != 0) { + return round($this->_SSResiduals,$dp); + } + return $this->_SSResiduals; + } // function getSSResiduals() + + + public function getDFResiduals($dp=0) { + if ($dp != 0) { + return round($this->_DFResiduals,$dp); + } + return $this->_DFResiduals; + } // function getDFResiduals() + + + public function getF($dp=0) { + if ($dp != 0) { + return round($this->_F,$dp); + } + return $this->_F; + } // function getF() + + + public function getCovariance($dp=0) { + if ($dp != 0) { + return round($this->_covariance,$dp); + } + return $this->_covariance; + } // function getCovariance() + + + public function getCorrelation($dp=0) { + if ($dp != 0) { + return round($this->_correlation,$dp); + } + return $this->_correlation; + } // function getCorrelation() + + + public function getYBestFitValues() { + return $this->_yBestFitValues; + } // function getYBestFitValues() + + + protected function _calculateGoodnessOfFit($sumX,$sumY,$sumX2,$sumY2,$sumXY,$meanX,$meanY, $const) { + $SSres = $SScov = $SScor = $SStot = $SSsex = 0.0; + foreach($this->_xValues as $xKey => $xValue) { + $bestFitY = $this->_yBestFitValues[$xKey] = $this->getValueOfYForX($xValue); + + $SSres += ($this->_yValues[$xKey] - $bestFitY) * ($this->_yValues[$xKey] - $bestFitY); + if ($const) { + $SStot += ($this->_yValues[$xKey] - $meanY) * ($this->_yValues[$xKey] - $meanY); + } else { + $SStot += $this->_yValues[$xKey] * $this->_yValues[$xKey]; + } + $SScov += ($this->_xValues[$xKey] - $meanX) * ($this->_yValues[$xKey] - $meanY); + if ($const) { + $SSsex += ($this->_xValues[$xKey] - $meanX) * ($this->_xValues[$xKey] - $meanX); + } else { + $SSsex += $this->_xValues[$xKey] * $this->_xValues[$xKey]; + } + } + + $this->_SSResiduals = $SSres; + $this->_DFResiduals = $this->_valueCount - 1 - $const; + + if ($this->_DFResiduals == 0.0) { + $this->_stdevOfResiduals = 0.0; + } else { + $this->_stdevOfResiduals = sqrt($SSres / $this->_DFResiduals); + } + if (($SStot == 0.0) || ($SSres == $SStot)) { + $this->_goodnessOfFit = 1; + } else { + $this->_goodnessOfFit = 1 - ($SSres / $SStot); + } + + $this->_SSRegression = $this->_goodnessOfFit * $SStot; + $this->_covariance = $SScov / $this->_valueCount; + $this->_correlation = ($this->_valueCount * $sumXY - $sumX * $sumY) / sqrt(($this->_valueCount * $sumX2 - pow($sumX,2)) * ($this->_valueCount * $sumY2 - pow($sumY,2))); + $this->_slopeSE = $this->_stdevOfResiduals / sqrt($SSsex); + $this->_intersectSE = $this->_stdevOfResiduals * sqrt(1 / ($this->_valueCount - ($sumX * $sumX) / $sumX2)); + if ($this->_SSResiduals != 0.0) { + if ($this->_DFResiduals == 0.0) { + $this->_F = 0.0; + } else { + $this->_F = $this->_SSRegression / ($this->_SSResiduals / $this->_DFResiduals); + } + } else { + if ($this->_DFResiduals == 0.0) { + $this->_F = 0.0; + } else { + $this->_F = $this->_SSRegression / $this->_DFResiduals; + } + } + } // function _calculateGoodnessOfFit() + + + protected function _leastSquareFit($yValues, $xValues, $const) { + // calculate sums + $x_sum = array_sum($xValues); + $y_sum = array_sum($yValues); + $meanX = $x_sum / $this->_valueCount; + $meanY = $y_sum / $this->_valueCount; + $mBase = $mDivisor = $xx_sum = $xy_sum = $yy_sum = 0.0; + for($i = 0; $i < $this->_valueCount; ++$i) { + $xy_sum += $xValues[$i] * $yValues[$i]; + $xx_sum += $xValues[$i] * $xValues[$i]; + $yy_sum += $yValues[$i] * $yValues[$i]; + + if ($const) { + $mBase += ($xValues[$i] - $meanX) * ($yValues[$i] - $meanY); + $mDivisor += ($xValues[$i] - $meanX) * ($xValues[$i] - $meanX); + } else { + $mBase += $xValues[$i] * $yValues[$i]; + $mDivisor += $xValues[$i] * $xValues[$i]; + } + } + + // calculate slope +// $this->_slope = (($this->_valueCount * $xy_sum) - ($x_sum * $y_sum)) / (($this->_valueCount * $xx_sum) - ($x_sum * $x_sum)); + $this->_slope = $mBase / $mDivisor; + + // calculate intersect +// $this->_intersect = ($y_sum - ($this->_slope * $x_sum)) / $this->_valueCount; + if ($const) { + $this->_intersect = $meanY - ($this->_slope * $meanX); + } else { + $this->_intersect = 0; + } + + $this->_calculateGoodnessOfFit($x_sum,$y_sum,$xx_sum,$yy_sum,$xy_sum,$meanX,$meanY,$const); + } // function _leastSquareFit() + + + /** + * Define the regression + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + function __construct($yValues, $xValues=array(), $const=True) { + // Calculate number of points + $nY = count($yValues); + $nX = count($xValues); + + // Define X Values if necessary + if ($nX == 0) { + $xValues = range(1,$nY); + $nX = $nY; + } elseif ($nY != $nX) { + // Ensure both arrays of points are the same size + $this->_error = True; + return False; + } + + $this->_valueCount = $nY; + $this->_xValues = $xValues; + $this->_yValues = $yValues; + } // function __construct() + +} // class bestFit diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/exponentialBestFitClass.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/exponentialBestFitClass.php new file mode 100644 index 0000000..cc44678 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/exponentialBestFitClass.php @@ -0,0 +1,148 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +require_once(PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/bestFitClass.php'); + + +/** + * PHPExcel_Exponential_Best_Fit + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Exponential_Best_Fit extends PHPExcel_Best_Fit +{ + /** + * Algorithm type to use for best-fit + * (Name of this trend class) + * + * @var string + **/ + protected $_bestFitType = 'exponential'; + + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + **/ + public function getValueOfYForX($xValue) { + return $this->getIntersect() * pow($this->getSlope(),($xValue - $this->_Xoffset)); + } // function getValueOfYForX() + + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + **/ + public function getValueOfXForY($yValue) { + return log(($yValue + $this->_Yoffset) / $this->getIntersect()) / log($this->getSlope()); + } // function getValueOfXForY() + + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getEquation($dp=0) { + $slope = $this->getSlope($dp); + $intersect = $this->getIntersect($dp); + + return 'Y = '.$intersect.' * '.$slope.'^X'; + } // function getEquation() + + + /** + * Return the Slope of the line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getSlope($dp=0) { + if ($dp != 0) { + return round(exp($this->_slope),$dp); + } + return exp($this->_slope); + } // function getSlope() + + + /** + * Return the Value of X where it intersects Y = 0 + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getIntersect($dp=0) { + if ($dp != 0) { + return round(exp($this->_intersect),$dp); + } + return exp($this->_intersect); + } // function getIntersect() + + + /** + * Execute the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + private function _exponential_regression($yValues, $xValues, $const) { + foreach($yValues as &$value) { + if ($value < 0.0) { + $value = 0 - log(abs($value)); + } elseif ($value > 0.0) { + $value = log($value); + } + } + unset($value); + + $this->_leastSquareFit($yValues, $xValues, $const); + } // function _exponential_regression() + + + /** + * Define the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + function __construct($yValues, $xValues=array(), $const=True) { + if (parent::__construct($yValues, $xValues) !== False) { + $this->_exponential_regression($yValues, $xValues, $const); + } + } // function __construct() + +} // class exponentialBestFit \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/linearBestFitClass.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/linearBestFitClass.php new file mode 100644 index 0000000..9aa44fe --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/linearBestFitClass.php @@ -0,0 +1,111 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +require_once(PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/bestFitClass.php'); + + +/** + * PHPExcel_Linear_Best_Fit + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Linear_Best_Fit extends PHPExcel_Best_Fit +{ + /** + * Algorithm type to use for best-fit + * (Name of this trend class) + * + * @var string + **/ + protected $_bestFitType = 'linear'; + + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + **/ + public function getValueOfYForX($xValue) { + return $this->getIntersect() + $this->getSlope() * $xValue; + } // function getValueOfYForX() + + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + **/ + public function getValueOfXForY($yValue) { + return ($yValue - $this->getIntersect()) / $this->getSlope(); + } // function getValueOfXForY() + + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getEquation($dp=0) { + $slope = $this->getSlope($dp); + $intersect = $this->getIntersect($dp); + + return 'Y = '.$intersect.' + '.$slope.' * X'; + } // function getEquation() + + + /** + * Execute the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + private function _linear_regression($yValues, $xValues, $const) { + $this->_leastSquareFit($yValues, $xValues,$const); + } // function _linear_regression() + + + /** + * Define the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + function __construct($yValues, $xValues=array(), $const=True) { + if (parent::__construct($yValues, $xValues) !== False) { + $this->_linear_regression($yValues, $xValues, $const); + } + } // function __construct() + +} // class linearBestFit \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/logarithmicBestFitClass.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/logarithmicBestFitClass.php new file mode 100644 index 0000000..38aaa88 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/logarithmicBestFitClass.php @@ -0,0 +1,120 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +require_once(PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/bestFitClass.php'); + + +/** + * PHPExcel_Logarithmic_Best_Fit + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Logarithmic_Best_Fit extends PHPExcel_Best_Fit +{ + /** + * Algorithm type to use for best-fit + * (Name of this trend class) + * + * @var string + **/ + protected $_bestFitType = 'logarithmic'; + + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + **/ + public function getValueOfYForX($xValue) { + return $this->getIntersect() + $this->getSlope() * log($xValue - $this->_Xoffset); + } // function getValueOfYForX() + + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + **/ + public function getValueOfXForY($yValue) { + return exp(($yValue - $this->getIntersect()) / $this->getSlope()); + } // function getValueOfXForY() + + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getEquation($dp=0) { + $slope = $this->getSlope($dp); + $intersect = $this->getIntersect($dp); + + return 'Y = '.$intersect.' + '.$slope.' * log(X)'; + } // function getEquation() + + + /** + * Execute the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + private function _logarithmic_regression($yValues, $xValues, $const) { + foreach($xValues as &$value) { + if ($value < 0.0) { + $value = 0 - log(abs($value)); + } elseif ($value > 0.0) { + $value = log($value); + } + } + unset($value); + + $this->_leastSquareFit($yValues, $xValues, $const); + } // function _logarithmic_regression() + + + /** + * Define the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + function __construct($yValues, $xValues=array(), $const=True) { + if (parent::__construct($yValues, $xValues) !== False) { + $this->_logarithmic_regression($yValues, $xValues, $const); + } + } // function __construct() + +} // class logarithmicBestFit \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/polynomialBestFitClass.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/polynomialBestFitClass.php new file mode 100644 index 0000000..7c05faf --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/polynomialBestFitClass.php @@ -0,0 +1,224 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/bestFitClass.php'; +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/JAMA/Matrix.php'; + + +/** + * PHPExcel_Polynomial_Best_Fit + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Polynomial_Best_Fit extends PHPExcel_Best_Fit +{ + /** + * Algorithm type to use for best-fit + * (Name of this trend class) + * + * @var string + **/ + protected $_bestFitType = 'polynomial'; + + /** + * Polynomial order + * + * @protected + * @var int + **/ + protected $_order = 0; + + + /** + * Return the order of this polynomial + * + * @return int + **/ + public function getOrder() { + return $this->_order; + } // function getOrder() + + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + **/ + public function getValueOfYForX($xValue) { + $retVal = $this->getIntersect(); + $slope = $this->getSlope(); + foreach($slope as $key => $value) { + if ($value != 0.0) { + $retVal += $value * pow($xValue, $key + 1); + } + } + return $retVal; + } // function getValueOfYForX() + + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + **/ + public function getValueOfXForY($yValue) { + return ($yValue - $this->getIntersect()) / $this->getSlope(); + } // function getValueOfXForY() + + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getEquation($dp=0) { + $slope = $this->getSlope($dp); + $intersect = $this->getIntersect($dp); + + $equation = 'Y = '.$intersect; + foreach($slope as $key => $value) { + if ($value != 0.0) { + $equation .= ' + '.$value.' * X'; + if ($key > 0) { + $equation .= '^'.($key + 1); + } + } + } + return $equation; + } // function getEquation() + + + /** + * Return the Slope of the line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getSlope($dp=0) { + if ($dp != 0) { + $coefficients = array(); + foreach($this->_slope as $coefficient) { + $coefficients[] = round($coefficient,$dp); + } + return $coefficients; + } + return $this->_slope; + } // function getSlope() + + + public function getCoefficients($dp=0) { + return array_merge(array($this->getIntersect($dp)),$this->getSlope($dp)); + } // function getCoefficients() + + + /** + * Execute the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param int $order Order of Polynomial for this regression + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + private function _polynomial_regression($order, $yValues, $xValues, $const) { + // calculate sums + $x_sum = array_sum($xValues); + $y_sum = array_sum($yValues); + $xx_sum = $xy_sum = 0; + for($i = 0; $i < $this->_valueCount; ++$i) { + $xy_sum += $xValues[$i] * $yValues[$i]; + $xx_sum += $xValues[$i] * $xValues[$i]; + $yy_sum += $yValues[$i] * $yValues[$i]; + } + /* + * This routine uses logic from the PHP port of polyfit version 0.1 + * written by Michael Bommarito and Paul Meagher + * + * The function fits a polynomial function of order $order through + * a series of x-y data points using least squares. + * + */ + for ($i = 0; $i < $this->_valueCount; ++$i) { + for ($j = 0; $j <= $order; ++$j) { + $A[$i][$j] = pow($xValues[$i], $j); + } + } + for ($i=0; $i < $this->_valueCount; ++$i) { + $B[$i] = array($yValues[$i]); + } + $matrixA = new Matrix($A); + $matrixB = new Matrix($B); + $C = $matrixA->solve($matrixB); + + $coefficients = array(); + for($i = 0; $i < $C->m; ++$i) { + $r = $C->get($i, 0); + if (abs($r) <= pow(10, -9)) { + $r = 0; + } + $coefficients[] = $r; + } + + $this->_intersect = array_shift($coefficients); + $this->_slope = $coefficients; + + $this->_calculateGoodnessOfFit($x_sum,$y_sum,$xx_sum,$yy_sum,$xy_sum); + foreach($this->_xValues as $xKey => $xValue) { + $this->_yBestFitValues[$xKey] = $this->getValueOfYForX($xValue); + } + } // function _polynomial_regression() + + + /** + * Define the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param int $order Order of Polynomial for this regression + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + function __construct($order, $yValues, $xValues=array(), $const=True) { + if (parent::__construct($yValues, $xValues) !== False) { + if ($order < $this->_valueCount) { + $this->_bestFitType .= '_'.$order; + $this->_order = $order; + $this->_polynomial_regression($order, $yValues, $xValues, $const); + if (($this->getGoodnessOfFit() < 0.0) || ($this->getGoodnessOfFit() > 1.0)) { + $this->_error = True; + } + } else { + $this->_error = True; + } + } + } // function __construct() + +} // class polynomialBestFit \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/powerBestFitClass.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/powerBestFitClass.php new file mode 100644 index 0000000..20b3674 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/powerBestFitClass.php @@ -0,0 +1,142 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/bestFitClass.php'; + + +/** + * PHPExcel_Power_Best_Fit + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Power_Best_Fit extends PHPExcel_Best_Fit +{ + /** + * Algorithm type to use for best-fit + * (Name of this trend class) + * + * @var string + **/ + protected $_bestFitType = 'power'; + + + /** + * Return the Y-Value for a specified value of X + * + * @param float $xValue X-Value + * @return float Y-Value + **/ + public function getValueOfYForX($xValue) { + return $this->getIntersect() * pow(($xValue - $this->_Xoffset),$this->getSlope()); + } // function getValueOfYForX() + + + /** + * Return the X-Value for a specified value of Y + * + * @param float $yValue Y-Value + * @return float X-Value + **/ + public function getValueOfXForY($yValue) { + return pow((($yValue + $this->_Yoffset) / $this->getIntersect()),(1 / $this->getSlope())); + } // function getValueOfXForY() + + + /** + * Return the Equation of the best-fit line + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getEquation($dp=0) { + $slope = $this->getSlope($dp); + $intersect = $this->getIntersect($dp); + + return 'Y = '.$intersect.' * X^'.$slope; + } // function getEquation() + + + /** + * Return the Value of X where it intersects Y = 0 + * + * @param int $dp Number of places of decimal precision to display + * @return string + **/ + public function getIntersect($dp=0) { + if ($dp != 0) { + return round(exp($this->_intersect),$dp); + } + return exp($this->_intersect); + } // function getIntersect() + + + /** + * Execute the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + private function _power_regression($yValues, $xValues, $const) { + foreach($xValues as &$value) { + if ($value < 0.0) { + $value = 0 - log(abs($value)); + } elseif ($value > 0.0) { + $value = log($value); + } + } + unset($value); + foreach($yValues as &$value) { + if ($value < 0.0) { + $value = 0 - log(abs($value)); + } elseif ($value > 0.0) { + $value = log($value); + } + } + unset($value); + + $this->_leastSquareFit($yValues, $xValues, $const); + } // function _power_regression() + + + /** + * Define the regression and calculate the goodness of fit for a set of X and Y data values + * + * @param float[] $yValues The set of Y-values for this regression + * @param float[] $xValues The set of X-values for this regression + * @param boolean $const + */ + function __construct($yValues, $xValues=array(), $const=True) { + if (parent::__construct($yValues, $xValues) !== False) { + $this->_power_regression($yValues, $xValues, $const); + } + } // function __construct() + +} // class powerBestFit \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/trendClass.php b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/trendClass.php new file mode 100644 index 0000000..63ccc04 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Shared/trend/trendClass.php @@ -0,0 +1,156 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/linearBestFitClass.php'; +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/logarithmicBestFitClass.php'; +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/exponentialBestFitClass.php'; +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/powerBestFitClass.php'; +require_once PHPEXCEL_ROOT . 'PHPExcel/Shared/trend/polynomialBestFitClass.php'; + + +/** + * PHPExcel_trendClass + * + * @category PHPExcel + * @package PHPExcel_Shared_Trend + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class trendClass +{ + const TREND_LINEAR = 'Linear'; + const TREND_LOGARITHMIC = 'Logarithmic'; + const TREND_EXPONENTIAL = 'Exponential'; + const TREND_POWER = 'Power'; + const TREND_POLYNOMIAL_2 = 'Polynomial_2'; + const TREND_POLYNOMIAL_3 = 'Polynomial_3'; + const TREND_POLYNOMIAL_4 = 'Polynomial_4'; + const TREND_POLYNOMIAL_5 = 'Polynomial_5'; + const TREND_POLYNOMIAL_6 = 'Polynomial_6'; + const TREND_BEST_FIT = 'Bestfit'; + const TREND_BEST_FIT_NO_POLY = 'Bestfit_no_Polynomials'; + + /** + * Names of the best-fit trend analysis methods + * + * @var string[] + **/ + private static $_trendTypes = array( self::TREND_LINEAR, + self::TREND_LOGARITHMIC, + self::TREND_EXPONENTIAL, + self::TREND_POWER + ); + /** + * Names of the best-fit trend polynomial orders + * + * @var string[] + **/ + private static $_trendTypePolyOrders = array( self::TREND_POLYNOMIAL_2, + self::TREND_POLYNOMIAL_3, + self::TREND_POLYNOMIAL_4, + self::TREND_POLYNOMIAL_5, + self::TREND_POLYNOMIAL_6 + ); + + /** + * Cached results for each method when trying to identify which provides the best fit + * + * @var PHPExcel_Best_Fit[] + **/ + private static $_trendCache = array(); + + + public static function calculate($trendType=self::TREND_BEST_FIT, $yValues, $xValues=array(), $const=True) { + // Calculate number of points in each dataset + $nY = count($yValues); + $nX = count($xValues); + + // Define X Values if necessary + if ($nX == 0) { + $xValues = range(1,$nY); + $nX = $nY; + } elseif ($nY != $nX) { + // Ensure both arrays of points are the same size + trigger_error("trend(): Number of elements in coordinate arrays do not match.", E_USER_ERROR); + } + + $key = md5($trendType.$const.serialize($yValues).serialize($xValues)); + // Determine which trend method has been requested + switch ($trendType) { + // Instantiate and return the class for the requested trend method + case self::TREND_LINEAR : + case self::TREND_LOGARITHMIC : + case self::TREND_EXPONENTIAL : + case self::TREND_POWER : + if (!isset(self::$_trendCache[$key])) { + $className = 'PHPExcel_'.$trendType.'_Best_Fit'; + self::$_trendCache[$key] = new $className($yValues,$xValues,$const); + } + return self::$_trendCache[$key]; + break; + case self::TREND_POLYNOMIAL_2 : + case self::TREND_POLYNOMIAL_3 : + case self::TREND_POLYNOMIAL_4 : + case self::TREND_POLYNOMIAL_5 : + case self::TREND_POLYNOMIAL_6 : + if (!isset(self::$_trendCache[$key])) { + $order = substr($trendType,-1); + self::$_trendCache[$key] = new PHPExcel_Polynomial_Best_Fit($order,$yValues,$xValues,$const); + } + return self::$_trendCache[$key]; + break; + case self::TREND_BEST_FIT : + case self::TREND_BEST_FIT_NO_POLY : + // If the request is to determine the best fit regression, then we test each trend line in turn + // Start by generating an instance of each available trend method + foreach(self::$_trendTypes as $trendMethod) { + $className = 'PHPExcel_'.$trendMethod.'BestFit'; + $bestFit[$trendMethod] = new $className($yValues,$xValues,$const); + $bestFitValue[$trendMethod] = $bestFit[$trendMethod]->getGoodnessOfFit(); + } + if ($trendType != self::TREND_BEST_FIT_NO_POLY) { + foreach(self::$_trendTypePolyOrders as $trendMethod) { + $order = substr($trendMethod,-1); + $bestFit[$trendMethod] = new PHPExcel_Polynomial_Best_Fit($order,$yValues,$xValues,$const); + if ($bestFit[$trendMethod]->getError()) { + unset($bestFit[$trendMethod]); + } else { + $bestFitValue[$trendMethod] = $bestFit[$trendMethod]->getGoodnessOfFit(); + } + } + } + // Determine which of our trend lines is the best fit, and then we return the instance of that trend class + arsort($bestFitValue); + $bestFitType = key($bestFitValue); + return $bestFit[$bestFitType]; + break; + default : + return false; + } + } // function calculate() + +} // class trendClass \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Style.php b/site/config/PHPExcel/Classes/PHPExcel/Style.php new file mode 100644 index 0000000..2fdef0e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Style.php @@ -0,0 +1,684 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Style + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Style implements PHPExcel_IComparable +{ + /** + * Font + * + * @var PHPExcel_Style_Font + */ + private $_font; + + /** + * Fill + * + * @var PHPExcel_Style_Fill + */ + private $_fill; + + /** + * Borders + * + * @var PHPExcel_Style_Borders + */ + private $_borders; + + /** + * Alignment + * + * @var PHPExcel_Style_Alignment + */ + private $_alignment; + + /** + * Number Format + * + * @var PHPExcel_Style_NumberFormat + */ + private $_numberFormat; + + /** + * Conditional styles + * + * @var PHPExcel_Style_Conditional[] + */ + private $_conditionalStyles; + + /** + * Protection + * + * @var PHPExcel_Style_Protection + */ + private $_protection; + + /** + * Style supervisor? + * + * @var boolean + */ + private $_isSupervisor; + + /** + * Parent. Only used for style supervisor + * + * @var PHPExcel + */ + private $_parent; + + /** + * Index of style in collection. Only used for real style. + * + * @var int + */ + private $_index; + + /** + * Create a new PHPExcel_Style + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + $this->_isSupervisor = $isSupervisor; + + // Initialise values + $this->_conditionalStyles = array(); + $this->_font = new PHPExcel_Style_Font($isSupervisor, $isConditional); + $this->_fill = new PHPExcel_Style_Fill($isSupervisor, $isConditional); + $this->_borders = new PHPExcel_Style_Borders($isSupervisor, $isConditional); + $this->_alignment = new PHPExcel_Style_Alignment($isSupervisor, $isConditional); + $this->_numberFormat = new PHPExcel_Style_NumberFormat($isSupervisor, $isConditional); + $this->_protection = new PHPExcel_Style_Protection($isSupervisor, $isConditional); + + // bind parent if we are a supervisor + if ($isSupervisor) { + $this->_font->bindParent($this); + $this->_fill->bindParent($this); + $this->_borders->bindParent($this); + $this->_alignment->bindParent($this); + $this->_numberFormat->bindParent($this); + $this->_protection->bindParent($this); + } + } + + /** + * Bind parent. Only used for supervisor + * + * @param PHPExcel $parent + * @return PHPExcel_Style + */ + public function bindParent($parent) + { + $this->_parent = $parent; + return $this; + } + + /** + * Is this a supervisor or a real style component? + * + * @return boolean + */ + public function getIsSupervisor() + { + return $this->_isSupervisor; + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style + */ + public function getSharedComponent() + { + $activeSheet = $this->getActiveSheet(); + $selectedCell = $this->getActiveCell(); // e.g. 'A1' + + if ($activeSheet->cellExists($selectedCell)) { + $xfIndex = $activeSheet->getCell($selectedCell)->getXfIndex(); + } else { + $xfIndex = 0; + } + + return $this->_parent->getCellXfByIndex($xfIndex); + } + + /** + * Get the currently active sheet. Only used for supervisor + * + * @return PHPExcel_Worksheet + */ + public function getActiveSheet() + { + return $this->_parent->getActiveSheet(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getSelectedCells() + { + return $this->_parent->getActiveSheet()->getSelectedCells(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getActiveCell() + { + return $this->_parent->getActiveSheet()->getActiveCell(); + } + + /** + * Get parent. Only used for style supervisor + * + * @return PHPExcel + */ + public function getParent() + { + return $this->_parent; + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->applyFromArray( + * array( + * 'font' => array( + * 'name' => 'Arial', + * 'bold' => true, + * 'italic' => false, + * 'underline' => PHPExcel_Style_Font::UNDERLINE_DOUBLE, + * 'strike' => false, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ), + * 'borders' => array( + * 'bottom' => array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ), + * 'top' => array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ) + * ) + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @param boolean $pAdvanced Advanced mode for setting borders. + * @throws Exception + * @return PHPExcel_Style + */ + public function applyFromArray($pStyles = null, $pAdvanced = true) { + if (is_array($pStyles)) { + if ($this->_isSupervisor) { + + $pRange = $this->getSelectedCells(); + + // Uppercase coordinate + $pRange = strtoupper($pRange); + + // Is it a cell range or a single cell? + if (strpos($pRange, ':') === false) { + $rangeA = $pRange; + $rangeB = $pRange; + } else { + list($rangeA, $rangeB) = explode(':', $pRange); + } + + // Calculate range outer borders + $rangeStart = PHPExcel_Cell::coordinateFromString($rangeA); + $rangeEnd = PHPExcel_Cell::coordinateFromString($rangeB); + + // Translate column into index + $rangeStart[0] = PHPExcel_Cell::columnIndexFromString($rangeStart[0]) - 1; + $rangeEnd[0] = PHPExcel_Cell::columnIndexFromString($rangeEnd[0]) - 1; + + // Make sure we can loop upwards on rows and columns + if ($rangeStart[0] > $rangeEnd[0] && $rangeStart[1] > $rangeEnd[1]) { + $tmp = $rangeStart; + $rangeStart = $rangeEnd; + $rangeEnd = $tmp; + } + + // ADVANCED MODE: + + if ($pAdvanced && isset($pStyles['borders'])) { + + // 'allborders' is a shorthand property for 'outline' and 'inside' and + // it applies to components that have not been set explicitly + if (isset($pStyles['borders']['allborders'])) { + foreach (array('outline', 'inside') as $component) { + if (!isset($pStyles['borders'][$component])) { + $pStyles['borders'][$component] = $pStyles['borders']['allborders']; + } + } + unset($pStyles['borders']['allborders']); // not needed any more + } + + // 'outline' is a shorthand property for 'top', 'right', 'bottom', 'left' + // it applies to components that have not been set explicitly + if (isset($pStyles['borders']['outline'])) { + foreach (array('top', 'right', 'bottom', 'left') as $component) { + if (!isset($pStyles['borders'][$component])) { + $pStyles['borders'][$component] = $pStyles['borders']['outline']; + } + } + unset($pStyles['borders']['outline']); // not needed any more + } + + // 'inside' is a shorthand property for 'vertical' and 'horizontal' + // it applies to components that have not been set explicitly + if (isset($pStyles['borders']['inside'])) { + foreach (array('vertical', 'horizontal') as $component) { + if (!isset($pStyles['borders'][$component])) { + $pStyles['borders'][$component] = $pStyles['borders']['inside']; + } + } + unset($pStyles['borders']['inside']); // not needed any more + } + + // width and height characteristics of selection, 1, 2, or 3 (for 3 or more) + $xMax = min($rangeEnd[0] - $rangeStart[0] + 1, 3); + $yMax = min($rangeEnd[1] - $rangeStart[1] + 1, 3); + + // loop through up to 3 x 3 = 9 regions + for ($x = 1; $x <= $xMax; ++$x) { + // start column index for region + $colStart = ($x == 3) ? + PHPExcel_Cell::stringFromColumnIndex($rangeEnd[0]) + : PHPExcel_Cell::stringFromColumnIndex($rangeStart[0] + $x - 1); + + // end column index for region + $colEnd = ($x == 1) ? + PHPExcel_Cell::stringFromColumnIndex($rangeStart[0]) + : PHPExcel_Cell::stringFromColumnIndex($rangeEnd[0] - $xMax + $x); + + for ($y = 1; $y <= $yMax; ++$y) { + + // which edges are touching the region + $edges = array(); + + // are we at left edge + if ($x == 1) { + $edges[] = 'left'; + } + + // are we at right edge + if ($x == $xMax) { + $edges[] = 'right'; + } + + // are we at top edge? + if ($y == 1) { + $edges[] = 'top'; + } + + // are we at bottom edge? + if ($y == $yMax) { + $edges[] = 'bottom'; + } + + // start row index for region + $rowStart = ($y == 3) ? + $rangeEnd[1] : $rangeStart[1] + $y - 1; + + // end row index for region + $rowEnd = ($y == 1) ? + $rangeStart[1] : $rangeEnd[1] - $yMax + $y; + + // build range for region + $range = $colStart . $rowStart . ':' . $colEnd . $rowEnd; + + // retrieve relevant style array for region + $regionStyles = $pStyles; + unset($regionStyles['borders']['inside']); + + // what are the inner edges of the region when looking at the selection + $innerEdges = array_diff( array('top', 'right', 'bottom', 'left'), $edges ); + + // inner edges that are not touching the region should take the 'inside' border properties if they have been set + foreach ($innerEdges as $innerEdge) { + switch ($innerEdge) { + case 'top': + case 'bottom': + // should pick up 'horizontal' border property if set + if (isset($pStyles['borders']['horizontal'])) { + $regionStyles['borders'][$innerEdge] = $pStyles['borders']['horizontal']; + } else { + unset($regionStyles['borders'][$innerEdge]); + } + break; + case 'left': + case 'right': + // should pick up 'vertical' border property if set + if (isset($pStyles['borders']['vertical'])) { + $regionStyles['borders'][$innerEdge] = $pStyles['borders']['vertical']; + } else { + unset($regionStyles['borders'][$innerEdge]); + } + break; + } + } + + // apply region style to region by calling applyFromArray() in simple mode + $this->getActiveSheet()->getStyle($range)->applyFromArray($regionStyles, false); + } + } + return $this; + } + + // SIMPLE MODE: + + // Selection type, inspect + if (preg_match('/^[A-Z]+1:[A-Z]+1048576$/', $pRange)) { + $selectionType = 'COLUMN'; + } else if (preg_match('/^A[0-9]+:XFD[0-9]+$/', $pRange)) { + $selectionType = 'ROW'; + } else { + $selectionType = 'CELL'; + } + + // First loop through columns, rows, or cells to find out which styles are affected by this operation + switch ($selectionType) { + case 'COLUMN': + $oldXfIndexes = array(); + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + $oldXfIndexes[$this->getActiveSheet()->getColumnDimensionByColumn($col)->getXfIndex()] = true; + } + break; + + case 'ROW': + $oldXfIndexes = array(); + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + if ($this->getActiveSheet()->getRowDimension($row)->getXfIndex() == null) { + $oldXfIndexes[0] = true; // row without explicit style should be formatted based on default style + } else { + $oldXfIndexes[$this->getActiveSheet()->getRowDimension($row)->getXfIndex()] = true; + } + } + break; + + case 'CELL': + $oldXfIndexes = array(); + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + $oldXfIndexes[$this->getActiveSheet()->getCellByColumnAndRow($col, $row)->getXfIndex()] = true; + } + } + break; + } + + // clone each of the affected styles, apply the style arrray, and add the new styles to the workbook + $workbook = $this->getActiveSheet()->getParent(); + foreach ($oldXfIndexes as $oldXfIndex => $dummy) { + $style = $workbook->getCellXfByIndex($oldXfIndex); + $newStyle = clone $style; + $newStyle->applyFromArray($pStyles); + + if ($existingStyle = $workbook->getCellXfByHashCode($newStyle->getHashCode())) { + // there is already such cell Xf in our collection + $newXfIndexes[$oldXfIndex] = $existingStyle->getIndex(); + } else { + // we don't have such a cell Xf, need to add + $workbook->addCellXf($newStyle); + $newXfIndexes[$oldXfIndex] = $newStyle->getIndex(); + } + } + + // Loop through columns, rows, or cells again and update the XF index + switch ($selectionType) { + case 'COLUMN': + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + $columnDimension = $this->getActiveSheet()->getColumnDimensionByColumn($col); + $oldXfIndex = $columnDimension->getXfIndex(); + $columnDimension->setXfIndex($newXfIndexes[$oldXfIndex]); + } + break; + + case 'ROW': + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + $rowDimension = $this->getActiveSheet()->getRowDimension($row); + $oldXfIndex = $rowDimension->getXfIndex() === null ? + 0 : $rowDimension->getXfIndex(); // row without explicit style should be formatted based on default style + $rowDimension->setXfIndex($newXfIndexes[$oldXfIndex]); + } + break; + + case 'CELL': + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + $cell = $this->getActiveSheet()->getCellByColumnAndRow($col, $row); + $oldXfIndex = $cell->getXfIndex(); + $cell->setXfIndex($newXfIndexes[$oldXfIndex]); + } + } + break; + } + + } else { + // not a supervisor, just apply the style array directly on style object + if (array_key_exists('fill', $pStyles)) { + $this->getFill()->applyFromArray($pStyles['fill']); + } + if (array_key_exists('font', $pStyles)) { + $this->getFont()->applyFromArray($pStyles['font']); + } + if (array_key_exists('borders', $pStyles)) { + $this->getBorders()->applyFromArray($pStyles['borders']); + } + if (array_key_exists('alignment', $pStyles)) { + $this->getAlignment()->applyFromArray($pStyles['alignment']); + } + if (array_key_exists('numberformat', $pStyles)) { + $this->getNumberFormat()->applyFromArray($pStyles['numberformat']); + } + if (array_key_exists('protection', $pStyles)) { + $this->getProtection()->applyFromArray($pStyles['protection']); + } + } + } else { + throw new Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Fill + * + * @return PHPExcel_Style_Fill + */ + public function getFill() { + return $this->_fill; + } + + /** + * Get Font + * + * @return PHPExcel_Style_Font + */ + public function getFont() { + return $this->_font; + } + + /** + * Set font + * + * @param PHPExcel_Style_Font $font + * @return PHPExcel_Style + */ + public function setFont(PHPExcel_Style_Font $font) + { + $this->_font = $font; + return $this; + } + + /** + * Get Borders + * + * @return PHPExcel_Style_Borders + */ + public function getBorders() { + return $this->_borders; + } + + /** + * Get Alignment + * + * @return PHPExcel_Style_Alignment + */ + public function getAlignment() { + return $this->_alignment; + } + + /** + * Get Number Format + * + * @return PHPExcel_Style_NumberFormat + */ + public function getNumberFormat() { + return $this->_numberFormat; + } + + /** + * Get Conditional Styles. Only used on supervisor. + * + * @return PHPExcel_Style_Conditional[] + */ + public function getConditionalStyles() { + return $this->getActiveSheet()->getConditionalStyles($this->getActiveCell()); + } + + /** + * Set Conditional Styles. Only used on supervisor. + * + * @param PHPExcel_Style_Conditional[] $pValue Array of condtional styles + * @return PHPExcel_Style + */ + public function setConditionalStyles($pValue = null) { + if (is_array($pValue)) { + $this->getActiveSheet()->setConditionalStyles($this->getSelectedCells(), $pValue); + } + return $this; + } + + /** + * Get Protection + * + * @return PHPExcel_Style_Protection + */ + public function getProtection() { + return $this->_protection; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + $hashConditionals = ''; + foreach ($this->_conditionalStyles as $conditional) { + $hashConditionals .= $conditional->getHashCode(); + } + + return md5( + $this->_fill->getHashCode() + . $this->_font->getHashCode() + . $this->_borders->getHashCode() + . $this->_alignment->getHashCode() + . $this->_numberFormat->getHashCode() + . $hashConditionals + . $this->_protection->getHashCode() + . __CLASS__ + ); + } + + /** + * Get own index in style collection + * + * @return int + */ + public function getIndex() + { + return $this->_index; + } + + /** + * Set own index in style collection + * + * @param int $pValue + */ + public function setIndex($pValue) + { + $this->_index = $pValue; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Style/Alignment.php b/site/config/PHPExcel/Classes/PHPExcel/Style/Alignment.php new file mode 100644 index 0000000..81ca387 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Style/Alignment.php @@ -0,0 +1,494 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Style_Alignment + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Style_Alignment implements PHPExcel_IComparable +{ + /* Horizontal alignment styles */ + const HORIZONTAL_GENERAL = 'general'; + const HORIZONTAL_LEFT = 'left'; + const HORIZONTAL_RIGHT = 'right'; + const HORIZONTAL_CENTER = 'center'; + const HORIZONTAL_CENTER_CONTINUOUS = 'centerContinuous'; + const HORIZONTAL_JUSTIFY = 'justify'; + + /* Vertical alignment styles */ + const VERTICAL_BOTTOM = 'bottom'; + const VERTICAL_TOP = 'top'; + const VERTICAL_CENTER = 'center'; + const VERTICAL_JUSTIFY = 'justify'; + + /** + * Horizontal + * + * @var string + */ + private $_horizontal = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL; + + /** + * Vertical + * + * @var string + */ + private $_vertical = PHPExcel_Style_Alignment::VERTICAL_BOTTOM; + + /** + * Text rotation + * + * @var int + */ + private $_textRotation = 0; + + /** + * Wrap text + * + * @var boolean + */ + private $_wrapText = false; + + /** + * Shrink to fit + * + * @var boolean + */ + private $_shrinkToFit = false; + + /** + * Indent - only possible with horizontal alignment left and right + * + * @var int + */ + private $_indent = 0; + + /** + * Parent Borders + * + * @var _parentPropertyName string + */ + private $_parentPropertyName; + + /** + * Supervisor? + * + * @var boolean + */ + private $_isSupervisor; + + /** + * Parent. Only used for supervisor + * + * @var PHPExcel_Style + */ + private $_parent; + + /** + * Create a new PHPExcel_Style_Alignment + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + $this->_isSupervisor = $isSupervisor; + + if ($isConditional) { + $this->_horizontal = NULL; + $this->_vertical = NULL; + $this->_textRotation = NULL; + } + } + + /** + * Bind parent. Only used for supervisor + * + * @param PHPExcel $parent + * @return PHPExcel_Style_Alignment + */ + public function bindParent($parent) + { + $this->_parent = $parent; + return $this; + } + + /** + * Is this a supervisor or a real style component? + * + * @return boolean + */ + public function getIsSupervisor() + { + return $this->_isSupervisor; + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Alignment + */ + public function getSharedComponent() + { + return $this->_parent->getSharedComponent()->getAlignment(); + } + + /** + * Get the currently active sheet. Only used for supervisor + * + * @return PHPExcel_Worksheet + */ + public function getActiveSheet() + { + return $this->_parent->getActiveSheet(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getSelectedCells() + { + return $this->getActiveSheet()->getSelectedCells(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getActiveCell() + { + return $this->getActiveSheet()->getActiveCell(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('alignment' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getAlignment()->applyFromArray( + * array( + * 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER, + * 'vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER, + * 'rotation' => 0, + * 'wrap' => true + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws Exception + * @return PHPExcel_Style_Alignment + */ + public function applyFromArray($pStyles = null) { + if (is_array($pStyles)) { + if ($this->_isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('horizontal', $pStyles)) { + $this->setHorizontal($pStyles['horizontal']); + } + if (array_key_exists('vertical', $pStyles)) { + $this->setVertical($pStyles['vertical']); + } + if (array_key_exists('rotation', $pStyles)) { + $this->setTextRotation($pStyles['rotation']); + } + if (array_key_exists('wrap', $pStyles)) { + $this->setWrapText($pStyles['wrap']); + } + if (array_key_exists('shrinkToFit', $pStyles)) { + $this->setShrinkToFit($pStyles['shrinkToFit']); + } + if (array_key_exists('indent', $pStyles)) { + $this->setIndent($pStyles['indent']); + } + } + } else { + throw new Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Horizontal + * + * @return string + */ + public function getHorizontal() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getHorizontal(); + } + return $this->_horizontal; + } + + /** + * Set Horizontal + * + * @param string $pValue + * @return PHPExcel_Style_Alignment + */ + public function setHorizontal($pValue = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL) { + if ($pValue == '') { + $pValue = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL; + } + + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('horizontal' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } + else { + $this->_horizontal = $pValue; + } + return $this; + } + + /** + * Get Vertical + * + * @return string + */ + public function getVertical() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getVertical(); + } + return $this->_vertical; + } + + /** + * Set Vertical + * + * @param string $pValue + * @return PHPExcel_Style_Alignment + */ + public function setVertical($pValue = PHPExcel_Style_Alignment::VERTICAL_BOTTOM) { + if ($pValue == '') { + $pValue = PHPExcel_Style_Alignment::VERTICAL_BOTTOM; + } + + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('vertical' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_vertical = $pValue; + } + return $this; + } + + /** + * Get TextRotation + * + * @return int + */ + public function getTextRotation() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getTextRotation(); + } + return $this->_textRotation; + } + + /** + * Set TextRotation + * + * @param int $pValue + * @throws Exception + * @return PHPExcel_Style_Alignment + */ + public function setTextRotation($pValue = 0) { + // Excel2007 value 255 => PHPExcel value -165 + if ($pValue == 255) { + $pValue = -165; + } + + // Set rotation + if ( ($pValue >= -90 && $pValue <= 90) || $pValue == -165 ) { + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('rotation' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_textRotation = $pValue; + } + } else { + throw new Exception("Text rotation should be a value between -90 and 90."); + } + + return $this; + } + + /** + * Get Wrap Text + * + * @return boolean + */ + public function getWrapText() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getWrapText(); + } + return $this->_wrapText; + } + + /** + * Set Wrap Text + * + * @param boolean $pValue + * @return PHPExcel_Style_Alignment + */ + public function setWrapText($pValue = false) { + if ($pValue == '') { + $pValue = false; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('wrap' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_wrapText = $pValue; + } + return $this; + } + + /** + * Get Shrink to fit + * + * @return boolean + */ + public function getShrinkToFit() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getShrinkToFit(); + } + return $this->_shrinkToFit; + } + + /** + * Set Shrink to fit + * + * @param boolean $pValue + * @return PHPExcel_Style_Alignment + */ + public function setShrinkToFit($pValue = false) { + if ($pValue == '') { + $pValue = false; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('shrinkToFit' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_shrinkToFit = $pValue; + } + return $this; + } + + /** + * Get indent + * + * @return int + */ + public function getIndent() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getIndent(); + } + return $this->_indent; + } + + /** + * Set indent + * + * @param int $pValue + * @return PHPExcel_Style_Alignment + */ + public function setIndent($pValue = 0) { + if ($pValue > 0) { + if ($this->getHorizontal() != self::HORIZONTAL_GENERAL && $this->getHorizontal() != self::HORIZONTAL_LEFT && $this->getHorizontal() != self::HORIZONTAL_RIGHT) { + $pValue = 0; // indent not supported + } + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('indent' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_indent = $pValue; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->_horizontal + . $this->_vertical + . $this->_textRotation + . ($this->_wrapText ? 't' : 'f') + . ($this->_shrinkToFit ? 't' : 'f') + . $this->_indent + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Style/Border.php b/site/config/PHPExcel/Classes/PHPExcel/Style/Border.php new file mode 100644 index 0000000..6f8767f --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Style/Border.php @@ -0,0 +1,388 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Style_Border + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Style_Border implements PHPExcel_IComparable +{ + /* Border style */ + const BORDER_NONE = 'none'; + const BORDER_DASHDOT = 'dashDot'; + const BORDER_DASHDOTDOT = 'dashDotDot'; + const BORDER_DASHED = 'dashed'; + const BORDER_DOTTED = 'dotted'; + const BORDER_DOUBLE = 'double'; + const BORDER_HAIR = 'hair'; + const BORDER_MEDIUM = 'medium'; + const BORDER_MEDIUMDASHDOT = 'mediumDashDot'; + const BORDER_MEDIUMDASHDOTDOT = 'mediumDashDotDot'; + const BORDER_MEDIUMDASHED = 'mediumDashed'; + const BORDER_SLANTDASHDOT = 'slantDashDot'; + const BORDER_THICK = 'thick'; + const BORDER_THIN = 'thin'; + + /** + * Border style + * + * @var string + */ + private $_borderStyle = PHPExcel_Style_Border::BORDER_NONE; + + /** + * Border color + * + * @var PHPExcel_Style_Color + */ + private $_color; + + /** + * Supervisor? + * + * @var boolean + */ + private $_isSupervisor; + + /** + * Parent. Only used for supervisor + * + * @var PHPExcel_Style_Borders + */ + private $_parent; + + /** + * Parent property name + * + * @var string + */ + private $_parentPropertyName; + + /** + * Create a new PHPExcel_Style_Border + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + $this->_isSupervisor = $isSupervisor; + + // Initialise values + $this->_color = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK, $isSupervisor); + + // bind parent if we are a supervisor + if ($isSupervisor) { + $this->_color->bindParent($this, '_color'); + } + } + + /** + * Bind parent. Only used for supervisor + * + * @param PHPExcel_Style_Borders $parent + * @param string $parentPropertyName + * @return PHPExcel_Style_Border + */ + public function bindParent($parent, $parentPropertyName) + { + $this->_parent = $parent; + $this->_parentPropertyName = $parentPropertyName; + return $this; + } + + /** + * Is this a supervisor or a real style component? + * + * @return boolean + */ + public function getIsSupervisor() + { + return $this->_isSupervisor; + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Border + * @throws Exception + */ + public function getSharedComponent() + { + switch ($this->_parentPropertyName) { + case '_allBorders': + case '_horizontal': + case '_inside': + case '_outline': + case '_vertical': + throw new Exception('Cannot get shared component for a pseudo-border.'); + break; + + case '_bottom': + return $this->_parent->getSharedComponent()->getBottom(); + break; + + case '_diagonal': + return $this->_parent->getSharedComponent()->getDiagonal(); + break; + + case '_left': + return $this->_parent->getSharedComponent()->getLeft(); + break; + + case '_right': + return $this->_parent->getSharedComponent()->getRight(); + break; + + case '_top': + return $this->_parent->getSharedComponent()->getTop(); + break; + + } + } + + /** + * Get the currently active sheet. Only used for supervisor + * + * @return PHPExcel_Worksheet + */ + public function getActiveSheet() + { + return $this->_parent->getActiveSheet(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getSelectedCells() + { + return $this->getActiveSheet()->getSelectedCells(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getActiveCell() + { + return $this->getActiveSheet()->getActiveCell(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + switch ($this->_parentPropertyName) { + case '_allBorders': + $key = 'allborders'; + break; + + case '_bottom': + $key = 'bottom'; + break; + + case '_diagonal': + $key = 'diagonal'; + break; + + case '_horizontal': + $key = 'horizontal'; + break; + + case '_inside': + $key = 'inside'; + break; + + case '_left': + $key = 'left'; + break; + + case '_outline': + $key = 'outline'; + break; + + case '_right': + $key = 'right'; + break; + + case '_top': + $key = 'top'; + break; + + case '_vertical': + $key = 'vertical'; + break; + } + return $this->_parent->getStyleArray(array($key => $array)); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getBorders()->getTop()->applyFromArray( + * array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws Exception + * @return PHPExcel_Style_Border + */ + public function applyFromArray($pStyles = null) { + if (is_array($pStyles)) { + if ($this->_isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('style', $pStyles)) { + $this->setBorderStyle($pStyles['style']); + } + if (array_key_exists('color', $pStyles)) { + $this->getColor()->applyFromArray($pStyles['color']); + } + } + } else { + throw new Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Border style + * + * @return string + */ + public function getBorderStyle() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getBorderStyle(); + } + return $this->_borderStyle; + } + + /** + * Set Border style + * + * @param string $pValue + * @return PHPExcel_Style_Border + */ + public function setBorderStyle($pValue = PHPExcel_Style_Border::BORDER_NONE) { + + if ($pValue == '') { + $pValue = PHPExcel_Style_Border::BORDER_NONE; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('style' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_borderStyle = $pValue; + } + return $this; + } + + /** + * Get Border Color + * + * @return PHPExcel_Style_Color + */ + public function getColor() { + return $this->_color; + } + + /** + * Set Border Color + * + * @param PHPExcel_Style_Color $pValue + * @throws Exception + * @return PHPExcel_Style_Border + */ + public function setColor(PHPExcel_Style_Color $pValue = null) { + // make sure parameter is a real color and not a supervisor + $color = $pValue->getIsSupervisor() ? $pValue->getSharedComponent() : $pValue; + + if ($this->_isSupervisor) { + $styleArray = $this->getColor()->getStyleArray(array('argb' => $color->getARGB())); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_color = $color; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->_borderStyle + . $this->_color->getHashCode() + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Style/Borders.php b/site/config/PHPExcel/Classes/PHPExcel/Style/Borders.php new file mode 100644 index 0000000..d8a3196 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Style/Borders.php @@ -0,0 +1,512 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Style_Borders + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Style_Borders implements PHPExcel_IComparable +{ + /* Diagonal directions */ + const DIAGONAL_NONE = 0; + const DIAGONAL_UP = 1; + const DIAGONAL_DOWN = 2; + const DIAGONAL_BOTH = 3; + + /** + * Left + * + * @var PHPExcel_Style_Border + */ + private $_left; + + /** + * Right + * + * @var PHPExcel_Style_Border + */ + private $_right; + + /** + * Top + * + * @var PHPExcel_Style_Border + */ + private $_top; + + /** + * Bottom + * + * @var PHPExcel_Style_Border + */ + private $_bottom; + + /** + * Diagonal + * + * @var PHPExcel_Style_Border + */ + private $_diagonal; + + /** + * DiagonalDirection + * + * @var int + */ + private $_diagonalDirection; + + /** + * All borders psedo-border. Only applies to supervisor. + * + * @var PHPExcel_Style_Border + */ + private $_allBorders; + + /** + * Outline psedo-border. Only applies to supervisor. + * + * @var PHPExcel_Style_Border + */ + private $_outline; + + /** + * Inside psedo-border. Only applies to supervisor. + * + * @var PHPExcel_Style_Border + */ + private $_inside; + + /** + * Vertical pseudo-border. Only applies to supervisor. + * + * @var PHPExcel_Style_Border + */ + private $_vertical; + + /** + * Horizontal pseudo-border. Only applies to supervisor. + * + * @var PHPExcel_Style_Border + */ + private $_horizontal; + + /** + * Parent Borders + * + * @var _parentPropertyName string + */ + private $_parentPropertyName; + + /** + * Supervisor? + * + * @var boolean + */ + private $_isSupervisor; + + /** + * Parent. Only used for supervisor + * + * @var PHPExcel_Style + */ + private $_parent; + + /** + * Create a new PHPExcel_Style_Borders + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + $this->_isSupervisor = $isSupervisor; + + // Initialise values + $this->_left = new PHPExcel_Style_Border($isSupervisor, $isConditional); + $this->_right = new PHPExcel_Style_Border($isSupervisor, $isConditional); + $this->_top = new PHPExcel_Style_Border($isSupervisor, $isConditional); + $this->_bottom = new PHPExcel_Style_Border($isSupervisor, $isConditional); + $this->_diagonal = new PHPExcel_Style_Border($isSupervisor, $isConditional); + $this->_diagonalDirection = PHPExcel_Style_Borders::DIAGONAL_NONE; + + // Specially for supervisor + if ($isSupervisor) { + // Initialize pseudo-borders + $this->_allBorders = new PHPExcel_Style_Border(true); + $this->_outline = new PHPExcel_Style_Border(true); + $this->_inside = new PHPExcel_Style_Border(true); + $this->_vertical = new PHPExcel_Style_Border(true); + $this->_horizontal = new PHPExcel_Style_Border(true); + + // bind parent if we are a supervisor + $this->_left->bindParent($this, '_left'); + $this->_right->bindParent($this, '_right'); + $this->_top->bindParent($this, '_top'); + $this->_bottom->bindParent($this, '_bottom'); + $this->_diagonal->bindParent($this, '_diagonal'); + $this->_allBorders->bindParent($this, '_allBorders'); + $this->_outline->bindParent($this, '_outline'); + $this->_inside->bindParent($this, '_inside'); + $this->_vertical->bindParent($this, '_vertical'); + $this->_horizontal->bindParent($this, '_horizontal'); + } + } + + /** + * Bind parent. Only used for supervisor + * + * @param PHPExcel_Style $parent + * @return PHPExcel_Style_Borders + */ + public function bindParent($parent) + { + $this->_parent = $parent; + return $this; + } + + /** + * Is this a supervisor or a real style component? + * + * @return boolean + */ + public function getIsSupervisor() + { + return $this->_isSupervisor; + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Borders + */ + public function getSharedComponent() + { + return $this->_parent->getSharedComponent()->getBorders(); + } + + /** + * Get the currently active sheet. Only used for supervisor + * + * @return PHPExcel_Worksheet + */ + public function getActiveSheet() + { + return $this->_parent->getActiveSheet(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getSelectedCells() + { + return $this->getActiveSheet()->getSelectedCells(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getActiveCell() + { + return $this->getActiveSheet()->getActiveCell(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('borders' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getBorders()->applyFromArray( + * array( + * 'bottom' => array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ), + * 'top' => array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ) + * ) + * ); + * </code> + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getBorders()->applyFromArray( + * array( + * 'allborders' => array( + * 'style' => PHPExcel_Style_Border::BORDER_DASHDOT, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ) + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws Exception + * @return PHPExcel_Style_Borders + */ + public function applyFromArray($pStyles = null) { + if (is_array($pStyles)) { + if ($this->_isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('left', $pStyles)) { + $this->getLeft()->applyFromArray($pStyles['left']); + } + if (array_key_exists('right', $pStyles)) { + $this->getRight()->applyFromArray($pStyles['right']); + } + if (array_key_exists('top', $pStyles)) { + $this->getTop()->applyFromArray($pStyles['top']); + } + if (array_key_exists('bottom', $pStyles)) { + $this->getBottom()->applyFromArray($pStyles['bottom']); + } + if (array_key_exists('diagonal', $pStyles)) { + $this->getDiagonal()->applyFromArray($pStyles['diagonal']); + } + if (array_key_exists('diagonaldirection', $pStyles)) { + $this->setDiagonalDirection($pStyles['diagonaldirection']); + } + if (array_key_exists('allborders', $pStyles)) { + $this->getLeft()->applyFromArray($pStyles['allborders']); + $this->getRight()->applyFromArray($pStyles['allborders']); + $this->getTop()->applyFromArray($pStyles['allborders']); + $this->getBottom()->applyFromArray($pStyles['allborders']); + } + } + } else { + throw new Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Left + * + * @return PHPExcel_Style_Border + */ + public function getLeft() { + return $this->_left; + } + + /** + * Get Right + * + * @return PHPExcel_Style_Border + */ + public function getRight() { + return $this->_right; + } + + /** + * Get Top + * + * @return PHPExcel_Style_Border + */ + public function getTop() { + return $this->_top; + } + + /** + * Get Bottom + * + * @return PHPExcel_Style_Border + */ + public function getBottom() { + return $this->_bottom; + } + + /** + * Get Diagonal + * + * @return PHPExcel_Style_Border + */ + public function getDiagonal() { + return $this->_diagonal; + } + + /** + * Get AllBorders (pseudo-border). Only applies to supervisor. + * + * @return PHPExcel_Style_Border + * @throws Exception + */ + public function getAllBorders() { + if (!$this->_isSupervisor) { + throw new Exception('Can only get pseudo-border for supervisor.'); + } + return $this->_allBorders; + } + + /** + * Get Outline (pseudo-border). Only applies to supervisor. + * + * @return boolean + * @throws Exception + */ + public function getOutline() { + if (!$this->_isSupervisor) { + throw new Exception('Can only get pseudo-border for supervisor.'); + } + return $this->_outline; + } + + /** + * Get Inside (pseudo-border). Only applies to supervisor. + * + * @return boolean + * @throws Exception + */ + public function getInside() { + if (!$this->_isSupervisor) { + throw new Exception('Can only get pseudo-border for supervisor.'); + } + return $this->_inside; + } + + /** + * Get Vertical (pseudo-border). Only applies to supervisor. + * + * @return PHPExcel_Style_Border + * @throws Exception + */ + public function getVertical() { + if (!$this->_isSupervisor) { + throw new Exception('Can only get pseudo-border for supervisor.'); + } + return $this->_vertical; + } + + /** + * Get Horizontal (pseudo-border). Only applies to supervisor. + * + * @return PHPExcel_Style_Border + * @throws Exception + */ + public function getHorizontal() { + if (!$this->_isSupervisor) { + throw new Exception('Can only get pseudo-border for supervisor.'); + } + return $this->_horizontal; + } + + /** + * Get DiagonalDirection + * + * @return int + */ + public function getDiagonalDirection() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getDiagonalDirection(); + } + return $this->_diagonalDirection; + } + + /** + * Set DiagonalDirection + * + * @param int $pValue + * @return PHPExcel_Style_Borders + */ + public function setDiagonalDirection($pValue = PHPExcel_Style_Borders::DIAGONAL_NONE) { + if ($pValue == '') { + $pValue = PHPExcel_Style_Borders::DIAGONAL_NONE; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('diagonaldirection' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_diagonalDirection = $pValue; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getHashcode(); + } + return md5( + $this->getLeft()->getHashCode() + . $this->getRight()->getHashCode() + . $this->getTop()->getHashCode() + . $this->getBottom()->getHashCode() + . $this->getDiagonal()->getHashCode() + . $this->getDiagonalDirection() + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Style/Color.php b/site/config/PHPExcel/Classes/PHPExcel/Style/Color.php new file mode 100644 index 0000000..1c0f3f6 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Style/Color.php @@ -0,0 +1,510 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Style_Color + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Style_Color implements PHPExcel_IComparable +{ + /* Colors */ + const COLOR_BLACK = 'FF000000'; + const COLOR_WHITE = 'FFFFFFFF'; + const COLOR_RED = 'FFFF0000'; + const COLOR_DARKRED = 'FF800000'; + const COLOR_BLUE = 'FF0000FF'; + const COLOR_DARKBLUE = 'FF000080'; + const COLOR_GREEN = 'FF00FF00'; + const COLOR_DARKGREEN = 'FF008000'; + const COLOR_YELLOW = 'FFFFFF00'; + const COLOR_DARKYELLOW = 'FF808000'; + + /** + * Indexed colors array + * + * @var array + */ + private static $_indexedColors; + + /** + * ARGB - Alpha RGB + * + * @var string + */ + private $_argb = NULL; + + /** + * Supervisor? + * + * @var boolean + */ + private $_isSupervisor; + + /** + * Parent. Only used for supervisor + * + * @var mixed + */ + private $_parent; + + /** + * Parent property name + * + * @var string + */ + private $_parentPropertyName; + + + /** + * Create a new PHPExcel_Style_Color + * + * @param string $pARGB ARGB value for the colour + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($pARGB = PHPExcel_Style_Color::COLOR_BLACK, $isSupervisor = false, $isConditional = false) + { + // Supervisor? + $this->_isSupervisor = $isSupervisor; + + // Initialise values + if (!$isConditional) { + $this->_argb = $pARGB; + } + } + + /** + * Bind parent. Only used for supervisor + * + * @param mixed $parent + * @param string $parentPropertyName + * @return PHPExcel_Style_Color + */ + public function bindParent($parent, $parentPropertyName) + { + $this->_parent = $parent; + $this->_parentPropertyName = $parentPropertyName; + return $this; + } + + /** + * Is this a supervisor or a real style component? + * + * @return boolean + */ + public function getIsSupervisor() + { + return $this->_isSupervisor; + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Color + */ + public function getSharedComponent() + { + switch ($this->_parentPropertyName) { + case '_endColor': + return $this->_parent->getSharedComponent()->getEndColor(); break; + case '_color': + return $this->_parent->getSharedComponent()->getColor(); break; + case '_startColor': + return $this->_parent->getSharedComponent()->getStartColor(); break; + } + } + + /** + * Get the currently active sheet. Only used for supervisor + * + * @return PHPExcel_Worksheet + */ + public function getActiveSheet() + { + return $this->_parent->getActiveSheet(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getSelectedCells() + { + return $this->getActiveSheet()->getSelectedCells(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getActiveCell() + { + return $this->getActiveSheet()->getActiveCell(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + switch ($this->_parentPropertyName) { + case '_endColor': + $key = 'endcolor'; + break; + case '_color': + $key = 'color'; + break; + case '_startColor': + $key = 'startcolor'; + break; + + } + return $this->_parent->getStyleArray(array($key => $array)); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getFont()->getColor()->applyFromArray( array('rgb' => '808080') ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws Exception + * @return PHPExcel_Style_Color + */ + public function applyFromArray($pStyles = NULL) { + if (is_array($pStyles)) { + if ($this->_isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('rgb', $pStyles)) { + $this->setRGB($pStyles['rgb']); + } + if (array_key_exists('argb', $pStyles)) { + $this->setARGB($pStyles['argb']); + } + } + } else { + throw new Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get ARGB + * + * @return string + */ + public function getARGB() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getARGB(); + } + return $this->_argb; + } + + /** + * Set ARGB + * + * @param string $pValue + * @return PHPExcel_Style_Color + */ + public function setARGB($pValue = PHPExcel_Style_Color::COLOR_BLACK) { + if ($pValue == '') { + $pValue = PHPExcel_Style_Color::COLOR_BLACK; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('argb' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_argb = $pValue; + } + return $this; + } + + /** + * Get RGB + * + * @return string + */ + public function getRGB() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getRGB(); + } + return substr($this->_argb, 2); + } + + /** + * Set RGB + * + * @param string $pValue RGB value + * @return PHPExcel_Style_Color + */ + public function setRGB($pValue = '000000') { + if ($pValue == '') { + $pValue = '000000'; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('argb' => 'FF' . $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_argb = 'FF' . $pValue; + } + return $this; + } + + /** + * Get a specified colour component of an RGB value + * + * @private + * @param string $RGB The colour as an RGB value (e.g. FF00CCCC or CCDDEE + * @param int $offset Position within the RGB value to extract + * @param boolean $hex Flag indicating whether the component should be returned as a hex or a + * decimal value + * @return string The extracted colour component + */ + private static function _getColourComponent($RGB,$offset,$hex=TRUE) { + $colour = substr($RGB, $offset, 2); + if (!$hex) + $colour = hexdec($colour); + return $colour; + } + + /** + * Get the red colour component of an RGB value + * + * @param string $RGB The colour as an RGB value (e.g. FF00CCCC or CCDDEE + * @param boolean $hex Flag indicating whether the component should be returned as a hex or a + * decimal value + * @return string The red colour component + */ + public static function getRed($RGB,$hex=TRUE) { + if (strlen($RGB) == 8) { + return self::_getColourComponent($RGB, 2, $hex); + } elseif (strlen($RGB) == 6) { + return self::_getColourComponent($RGB, 0, $hex); + } + } + + /** + * Get the green colour component of an RGB value + * + * @param string $RGB The colour as an RGB value (e.g. FF00CCCC or CCDDEE + * @param boolean $hex Flag indicating whether the component should be returned as a hex or a + * decimal value + * @return string The green colour component + */ + public static function getGreen($RGB,$hex=TRUE) { + if (strlen($RGB) == 8) { + return self::_getColourComponent($RGB, 4, $hex); + } elseif (strlen($RGB) == 6) { + return self::_getColourComponent($RGB, 2, $hex); + } + } + + /** + * Get the blue colour component of an RGB value + * + * @param string $RGB The colour as an RGB value (e.g. FF00CCCC or CCDDEE + * @param boolean $hex Flag indicating whether the component should be returned as a hex or a + * decimal value + * @return string The blue colour component + */ + public static function getBlue($RGB,$hex=TRUE) { + if (strlen($RGB) == 8) { + return self::_getColourComponent($RGB, 6, $hex); + } elseif (strlen($RGB) == 6) { + return self::_getColourComponent($RGB, 4, $hex); + } + } + + /** + * Adjust the brightness of a color + * + * @param string $hex The colour as an RGBA or RGB value (e.g. FF00CCCC or CCDDEE) + * @param float $adjustPercentage The percentage by which to adjust the colour as a float from -1 to 1 + * @return string The adjusted colour as an RGBA or RGB value (e.g. FF00CCCC or CCDDEE) + */ + public static function changeBrightness($hex, $adjustPercentage) { + $rgba = (strlen($hex) == 8); + + $red = self::getRed($hex, FALSE); + $green = self::getGreen($hex, FALSE); + $blue = self::getBlue($hex, FALSE); + if ($adjustPercentage > 0) { + $red += (255 - $red) * $adjustPercentage; + $green += (255 - $green) * $adjustPercentage; + $blue += (255 - $blue) * $adjustPercentage; + } else { + $red += $red * $adjustPercentage; + $green += $green * $adjustPercentage; + $blue += $blue * $adjustPercentage; + } + + if ($red < 0) $red = 0; + elseif ($red > 255) $red = 255; + if ($green < 0) $green = 0; + elseif ($green > 255) $green = 255; + if ($blue < 0) $blue = 0; + elseif ($blue > 255) $blue = 255; + + $rgb = strtoupper( str_pad(dechex($red), 2, '0', 0) . + str_pad(dechex($green), 2, '0', 0) . + str_pad(dechex($blue), 2, '0', 0) + ); + return (($rgba) ? 'FF' : '') . $rgb; + } + + /** + * Get indexed color + * + * @param int $pIndex Index entry point into the colour array + * @param boolean $background Flag to indicate whether default background or foreground colour + * should be returned if the indexed colour doesn't exist + * @return PHPExcel_Style_Color + */ + public static function indexedColor($pIndex, $background=FALSE) { + // Clean parameter + $pIndex = intval($pIndex); + + // Indexed colors + if (is_null(self::$_indexedColors)) { + self::$_indexedColors = array( + 1 => 'FF000000', // System Colour #1 - Black + 2 => 'FFFFFFFF', // System Colour #2 - White + 3 => 'FFFF0000', // System Colour #3 - Red + 4 => 'FF00FF00', // System Colour #4 - Green + 5 => 'FF0000FF', // System Colour #5 - Blue + 6 => 'FFFFFF00', // System Colour #6 - Yellow + 7 => 'FFFF00FF', // System Colour #7- Magenta + 8 => 'FF00FFFF', // System Colour #8- Cyan + 9 => 'FF800000', // Standard Colour #9 + 10 => 'FF008000', // Standard Colour #10 + 11 => 'FF000080', // Standard Colour #11 + 12 => 'FF808000', // Standard Colour #12 + 13 => 'FF800080', // Standard Colour #13 + 14 => 'FF008080', // Standard Colour #14 + 15 => 'FFC0C0C0', // Standard Colour #15 + 16 => 'FF808080', // Standard Colour #16 + 17 => 'FF9999FF', // Chart Fill Colour #17 + 18 => 'FF993366', // Chart Fill Colour #18 + 19 => 'FFFFFFCC', // Chart Fill Colour #19 + 20 => 'FFCCFFFF', // Chart Fill Colour #20 + 21 => 'FF660066', // Chart Fill Colour #21 + 22 => 'FFFF8080', // Chart Fill Colour #22 + 23 => 'FF0066CC', // Chart Fill Colour #23 + 24 => 'FFCCCCFF', // Chart Fill Colour #24 + 25 => 'FF000080', // Chart Line Colour #25 + 26 => 'FFFF00FF', // Chart Line Colour #26 + 27 => 'FFFFFF00', // Chart Line Colour #27 + 28 => 'FF00FFFF', // Chart Line Colour #28 + 29 => 'FF800080', // Chart Line Colour #29 + 30 => 'FF800000', // Chart Line Colour #30 + 31 => 'FF008080', // Chart Line Colour #31 + 32 => 'FF0000FF', // Chart Line Colour #32 + 33 => 'FF00CCFF', // Standard Colour #33 + 34 => 'FFCCFFFF', // Standard Colour #34 + 35 => 'FFCCFFCC', // Standard Colour #35 + 36 => 'FFFFFF99', // Standard Colour #36 + 37 => 'FF99CCFF', // Standard Colour #37 + 38 => 'FFFF99CC', // Standard Colour #38 + 39 => 'FFCC99FF', // Standard Colour #39 + 40 => 'FFFFCC99', // Standard Colour #40 + 41 => 'FF3366FF', // Standard Colour #41 + 42 => 'FF33CCCC', // Standard Colour #42 + 43 => 'FF99CC00', // Standard Colour #43 + 44 => 'FFFFCC00', // Standard Colour #44 + 45 => 'FFFF9900', // Standard Colour #45 + 46 => 'FFFF6600', // Standard Colour #46 + 47 => 'FF666699', // Standard Colour #47 + 48 => 'FF969696', // Standard Colour #48 + 49 => 'FF003366', // Standard Colour #49 + 50 => 'FF339966', // Standard Colour #50 + 51 => 'FF003300', // Standard Colour #51 + 52 => 'FF333300', // Standard Colour #52 + 53 => 'FF993300', // Standard Colour #53 + 54 => 'FF993366', // Standard Colour #54 + 55 => 'FF333399', // Standard Colour #55 + 56 => 'FF333333' // Standard Colour #56 + ); + } + + if (array_key_exists($pIndex, self::$_indexedColors)) { + return new PHPExcel_Style_Color(self::$_indexedColors[$pIndex]); + } + + if ($background) { + return new PHPExcel_Style_Color('FFFFFFFF'); + } + return new PHPExcel_Style_Color('FF000000'); + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->_argb + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Style/Conditional.php b/site/config/PHPExcel/Classes/PHPExcel/Style/Conditional.php new file mode 100644 index 0000000..d9f7dd4 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Style/Conditional.php @@ -0,0 +1,277 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Style_Conditional + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Style_Conditional implements PHPExcel_IComparable +{ + /* Condition types */ + const CONDITION_NONE = 'none'; + const CONDITION_CELLIS = 'cellIs'; + const CONDITION_CONTAINSTEXT = 'containsText'; + const CONDITION_EXPRESSION = 'expression'; + + /* Operator types */ + const OPERATOR_NONE = ''; + const OPERATOR_BEGINSWITH = 'beginsWith'; + const OPERATOR_ENDSWITH = 'endsWith'; + const OPERATOR_EQUAL = 'equal'; + const OPERATOR_GREATERTHAN = 'greaterThan'; + const OPERATOR_GREATERTHANOREQUAL = 'greaterThanOrEqual'; + const OPERATOR_LESSTHAN = 'lessThan'; + const OPERATOR_LESSTHANOREQUAL = 'lessThanOrEqual'; + const OPERATOR_NOTEQUAL = 'notEqual'; + const OPERATOR_CONTAINSTEXT = 'containsText'; + const OPERATOR_NOTCONTAINS = 'notContains'; + const OPERATOR_BETWEEN = 'between'; + + /** + * Condition type + * + * @var int + */ + private $_conditionType; + + /** + * Operator type + * + * @var int + */ + private $_operatorType; + + /** + * Text + * + * @var string + */ + private $_text; + + /** + * Condition + * + * @var string[] + */ + private $_condition = array(); + + /** + * Style + * + * @var PHPExcel_Style + */ + private $_style; + + /** + * Create a new PHPExcel_Style_Conditional + */ + public function __construct() + { + // Initialise values + $this->_conditionType = PHPExcel_Style_Conditional::CONDITION_NONE; + $this->_operatorType = PHPExcel_Style_Conditional::OPERATOR_NONE; + $this->_text = null; + $this->_condition = array(); + $this->_style = new PHPExcel_Style(FALSE, TRUE); + } + + /** + * Get Condition type + * + * @return string + */ + public function getConditionType() { + return $this->_conditionType; + } + + /** + * Set Condition type + * + * @param string $pValue PHPExcel_Style_Conditional condition type + * @return PHPExcel_Style_Conditional + */ + public function setConditionType($pValue = PHPExcel_Style_Conditional::CONDITION_NONE) { + $this->_conditionType = $pValue; + return $this; + } + + /** + * Get Operator type + * + * @return string + */ + public function getOperatorType() { + return $this->_operatorType; + } + + /** + * Set Operator type + * + * @param string $pValue PHPExcel_Style_Conditional operator type + * @return PHPExcel_Style_Conditional + */ + public function setOperatorType($pValue = PHPExcel_Style_Conditional::OPERATOR_NONE) { + $this->_operatorType = $pValue; + return $this; + } + + /** + * Get text + * + * @return string + */ + public function getText() { + return $this->_text; + } + + /** + * Set text + * + * @param string $value + * @return PHPExcel_Style_Conditional + */ + public function setText($value = null) { + $this->_text = $value; + return $this; + } + + /** + * Get Condition + * + * @deprecated Deprecated, use getConditions instead + * @return string + */ + public function getCondition() { + if (isset($this->_condition[0])) { + return $this->_condition[0]; + } + + return ''; + } + + /** + * Set Condition + * + * @deprecated Deprecated, use setConditions instead + * @param string $pValue Condition + * @return PHPExcel_Style_Conditional + */ + public function setCondition($pValue = '') { + if (!is_array($pValue)) + $pValue = array($pValue); + + return $this->setConditions($pValue); + } + + /** + * Get Conditions + * + * @return string[] + */ + public function getConditions() { + return $this->_condition; + } + + /** + * Set Conditions + * + * @param string[] $pValue Condition + * @return PHPExcel_Style_Conditional + */ + public function setConditions($pValue) { + if (!is_array($pValue)) + $pValue = array($pValue); + + $this->_condition = $pValue; + return $this; + } + + /** + * Add Condition + * + * @param string $pValue Condition + * @return PHPExcel_Style_Conditional + */ + public function addCondition($pValue = '') { + $this->_condition[] = $pValue; + return $this; + } + + /** + * Get Style + * + * @return PHPExcel_Style + */ + public function getStyle() { + return $this->_style; + } + + /** + * Set Style + * + * @param PHPExcel_Style $pValue + * @throws Exception + * @return PHPExcel_Style_Conditional + */ + public function setStyle(PHPExcel_Style $pValue = null) { + $this->_style = $pValue; + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + return md5( + $this->_conditionType + . $this->_operatorType + . implode(';', $this->_condition) + . $this->_style->getHashCode() + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Style/Fill.php b/site/config/PHPExcel/Classes/PHPExcel/Style/Fill.php new file mode 100644 index 0000000..afede65 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Style/Fill.php @@ -0,0 +1,409 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Style_Fill + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Style_Fill implements PHPExcel_IComparable +{ + /* Fill types */ + const FILL_NONE = 'none'; + const FILL_SOLID = 'solid'; + const FILL_GRADIENT_LINEAR = 'linear'; + const FILL_GRADIENT_PATH = 'path'; + const FILL_PATTERN_DARKDOWN = 'darkDown'; + const FILL_PATTERN_DARKGRAY = 'darkGray'; + const FILL_PATTERN_DARKGRID = 'darkGrid'; + const FILL_PATTERN_DARKHORIZONTAL = 'darkHorizontal'; + const FILL_PATTERN_DARKTRELLIS = 'darkTrellis'; + const FILL_PATTERN_DARKUP = 'darkUp'; + const FILL_PATTERN_DARKVERTICAL = 'darkVertical'; + const FILL_PATTERN_GRAY0625 = 'gray0625'; + const FILL_PATTERN_GRAY125 = 'gray125'; + const FILL_PATTERN_LIGHTDOWN = 'lightDown'; + const FILL_PATTERN_LIGHTGRAY = 'lightGray'; + const FILL_PATTERN_LIGHTGRID = 'lightGrid'; + const FILL_PATTERN_LIGHTHORIZONTAL = 'lightHorizontal'; + const FILL_PATTERN_LIGHTTRELLIS = 'lightTrellis'; + const FILL_PATTERN_LIGHTUP = 'lightUp'; + const FILL_PATTERN_LIGHTVERTICAL = 'lightVertical'; + const FILL_PATTERN_MEDIUMGRAY = 'mediumGray'; + + /** + * Fill type + * + * @var string + */ + private $_fillType = PHPExcel_Style_Fill::FILL_NONE; + + /** + * Rotation + * + * @var double + */ + private $_rotation = 0; + + /** + * Start color + * + * @var PHPExcel_Style_Color + */ + private $_startColor; + + /** + * End color + * + * @var PHPExcel_Style_Color + */ + private $_endColor; + + /** + * Parent Borders + * + * @var _parentPropertyName string + */ + private $_parentPropertyName; + + /** + * Supervisor? + * + * @var boolean + */ + private $_isSupervisor; + + /** + * Parent. Only used for supervisor + * + * @var PHPExcel_Style + */ + private $_parent; + + /** + * Create a new PHPExcel_Style_Fill + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + $this->_isSupervisor = $isSupervisor; + + // Initialise values + if ($isConditional) { + $this->_fillType = NULL; + } + $this->_startColor = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_WHITE, $isSupervisor, $isConditional); + $this->_endColor = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK, $isSupervisor, $isConditional); + + // bind parent if we are a supervisor + if ($isSupervisor) { + $this->_startColor->bindParent($this, '_startColor'); + $this->_endColor->bindParent($this, '_endColor'); + } + } + + /** + * Bind parent. Only used for supervisor + * + * @param PHPExcel_Style $parent + * @return PHPExcel_Style_Fill + */ + public function bindParent($parent) + { + $this->_parent = $parent; + return $this; + } + + /** + * Is this a supervisor or a real style component? + * + * @return boolean + */ + public function getIsSupervisor() + { + return $this->_isSupervisor; + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Fill + */ + public function getSharedComponent() + { + return $this->_parent->getSharedComponent()->getFill(); + } + + /** + * Get the currently active sheet. Only used for supervisor + * + * @return PHPExcel_Worksheet + */ + public function getActiveSheet() + { + return $this->_parent->getActiveSheet(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getSelectedCells() + { + return $this->getActiveSheet()->getSelectedCells(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getActiveCell() + { + return $this->getActiveSheet()->getActiveCell(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('fill' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getFill()->applyFromArray( + * array( + * 'type' => PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR, + * 'rotation' => 0, + * 'startcolor' => array( + * 'rgb' => '000000' + * ), + * 'endcolor' => array( + * 'argb' => 'FFFFFFFF' + * ) + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws Exception + * @return PHPExcel_Style_Fill + */ + public function applyFromArray($pStyles = null) { + if (is_array($pStyles)) { + if ($this->_isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('type', $pStyles)) { + $this->setFillType($pStyles['type']); + } + if (array_key_exists('rotation', $pStyles)) { + $this->setRotation($pStyles['rotation']); + } + if (array_key_exists('startcolor', $pStyles)) { + $this->getStartColor()->applyFromArray($pStyles['startcolor']); + } + if (array_key_exists('endcolor', $pStyles)) { + $this->getEndColor()->applyFromArray($pStyles['endcolor']); + } + if (array_key_exists('color', $pStyles)) { + $this->getStartColor()->applyFromArray($pStyles['color']); + } + } + } else { + throw new Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Fill Type + * + * @return string + */ + public function getFillType() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getFillType(); + } + return $this->_fillType; + } + + /** + * Set Fill Type + * + * @param string $pValue PHPExcel_Style_Fill fill type + * @return PHPExcel_Style_Fill + */ + public function setFillType($pValue = PHPExcel_Style_Fill::FILL_NONE) { + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('type' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_fillType = $pValue; + } + return $this; + } + + /** + * Get Rotation + * + * @return double + */ + public function getRotation() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getRotation(); + } + return $this->_rotation; + } + + /** + * Set Rotation + * + * @param double $pValue + * @return PHPExcel_Style_Fill + */ + public function setRotation($pValue = 0) { + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('rotation' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_rotation = $pValue; + } + return $this; + } + + /** + * Get Start Color + * + * @return PHPExcel_Style_Color + */ + public function getStartColor() { + return $this->_startColor; + } + + /** + * Set Start Color + * + * @param PHPExcel_Style_Color $pValue + * @throws Exception + * @return PHPExcel_Style_Fill + */ + public function setStartColor(PHPExcel_Style_Color $pValue = null) { + // make sure parameter is a real color and not a supervisor + $color = $pValue->getIsSupervisor() ? $pValue->getSharedComponent() : $pValue; + + if ($this->_isSupervisor) { + $styleArray = $this->getStartColor()->getStyleArray(array('argb' => $color->getARGB())); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_startColor = $color; + } + return $this; + } + + /** + * Get End Color + * + * @return PHPExcel_Style_Color + */ + public function getEndColor() { + return $this->_endColor; + } + + /** + * Set End Color + * + * @param PHPExcel_Style_Color $pValue + * @throws Exception + * @return PHPExcel_Style_Fill + */ + public function setEndColor(PHPExcel_Style_Color $pValue = null) { + // make sure parameter is a real color and not a supervisor + $color = $pValue->getIsSupervisor() ? $pValue->getSharedComponent() : $pValue; + + if ($this->_isSupervisor) { + $styleArray = $this->getEndColor()->getStyleArray(array('argb' => $color->getARGB())); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_endColor = $color; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->getFillType() + . $this->getRotation() + . $this->getStartColor()->getHashCode() + . $this->getEndColor()->getHashCode() + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Style/Font.php b/site/config/PHPExcel/Classes/PHPExcel/Style/Font.php new file mode 100644 index 0000000..59ae773 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Style/Font.php @@ -0,0 +1,640 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Style_Font + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Style_Font implements PHPExcel_IComparable +{ + /* Underline types */ + const UNDERLINE_NONE = 'none'; + const UNDERLINE_DOUBLE = 'double'; + const UNDERLINE_DOUBLEACCOUNTING = 'doubleAccounting'; + const UNDERLINE_SINGLE = 'single'; + const UNDERLINE_SINGLEACCOUNTING = 'singleAccounting'; + + /** + * Font Name + * + * @var string + */ + private $_name = 'Calibri'; + + /** + * Font Size + * + * @var float + */ + private $_size = 11; + + /** + * Bold + * + * @var boolean + */ + private $_bold = false; + + /** + * Italic + * + * @var boolean + */ + private $_italic = false; + + /** + * Superscript + * + * @var boolean + */ + private $_superScript = false; + + /** + * Subscript + * + * @var boolean + */ + private $_subScript = false; + + /** + * Underline + * + * @var string + */ + private $_underline = self::UNDERLINE_NONE; + + /** + * Strikethrough + * + * @var boolean + */ + private $_strikethrough = false; + + /** + * Foreground color + * + * @var PHPExcel_Style_Color + */ + private $_color; + + /** + * Parent Borders + * + * @var _parentPropertyName string + */ + private $_parentPropertyName; + + /** + * Supervisor? + * + * @var boolean + */ + private $_isSupervisor; + + /** + * Parent. Only used for supervisor + * + * @var PHPExcel_Style + */ + private $_parent; + + /** + * Create a new PHPExcel_Style_Font + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + $this->_isSupervisor = $isSupervisor; + + // Initialise values + if ($isConditional) { + $this->_name = NULL; + $this->_size = NULL; + $this->_bold = NULL; + $this->_italic = NULL; + $this->_superScript = NULL; + $this->_subScript = NULL; + $this->_underline = NULL; + $this->_strikethrough = NULL; + $this->_color = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK, $isSupervisor, $isConditional); + } else { + $this->_color = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK, $isSupervisor); + } + // bind parent if we are a supervisor + if ($isSupervisor) { + $this->_color->bindParent($this, '_color'); + } + } + + /** + * Bind parent. Only used for supervisor + * + * @param PHPExcel_Style $parent + * @return PHPExcel_Style_Font + */ + public function bindParent($parent) + { + $this->_parent = $parent; + } + + /** + * Is this a supervisor or a real style component? + * + * @return boolean + */ + public function getIsSupervisor() + { + return $this->_isSupervisor; + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Font + */ + public function getSharedComponent() + { + return $this->_parent->getSharedComponent()->getFont(); + } + + /** + * Get the currently active sheet. Only used for supervisor + * + * @return PHPExcel_Worksheet + */ + public function getActiveSheet() + { + return $this->_parent->getActiveSheet(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getSelectedCells() + { + return $this->getActiveSheet()->getSelectedCells(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getActiveCell() + { + return $this->getActiveSheet()->getActiveCell(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('font' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getFont()->applyFromArray( + * array( + * 'name' => 'Arial', + * 'bold' => true, + * 'italic' => false, + * 'underline' => PHPExcel_Style_Font::UNDERLINE_DOUBLE, + * 'strike' => false, + * 'color' => array( + * 'rgb' => '808080' + * ) + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws Exception + * @return PHPExcel_Style_Font + */ + public function applyFromArray($pStyles = null) { + if (is_array($pStyles)) { + if ($this->_isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('name', $pStyles)) { + $this->setName($pStyles['name']); + } + if (array_key_exists('bold', $pStyles)) { + $this->setBold($pStyles['bold']); + } + if (array_key_exists('italic', $pStyles)) { + $this->setItalic($pStyles['italic']); + } + if (array_key_exists('superScript', $pStyles)) { + $this->setSuperScript($pStyles['superScript']); + } + if (array_key_exists('subScript', $pStyles)) { + $this->setSubScript($pStyles['subScript']); + } + if (array_key_exists('underline', $pStyles)) { + $this->setUnderline($pStyles['underline']); + } + if (array_key_exists('strike', $pStyles)) { + $this->setStrikethrough($pStyles['strike']); + } + if (array_key_exists('color', $pStyles)) { + $this->getColor()->applyFromArray($pStyles['color']); + } + if (array_key_exists('size', $pStyles)) { + $this->setSize($pStyles['size']); + } + } + } else { + throw new Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Name + * + * @return string + */ + public function getName() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getName(); + } + return $this->_name; + } + + /** + * Set Name + * + * @param string $pValue + * @return PHPExcel_Style_Font + */ + public function setName($pValue = 'Calibri') { + if ($pValue == '') { + $pValue = 'Calibri'; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('name' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_name = $pValue; + } + return $this; + } + + /** + * Get Size + * + * @return double + */ + public function getSize() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getSize(); + } + return $this->_size; + } + + /** + * Set Size + * + * @param double $pValue + * @return PHPExcel_Style_Font + */ + public function setSize($pValue = 10) { + if ($pValue == '') { + $pValue = 10; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('size' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_size = $pValue; + } + return $this; + } + + /** + * Get Bold + * + * @return boolean + */ + public function getBold() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getBold(); + } + return $this->_bold; + } + + /** + * Set Bold + * + * @param boolean $pValue + * @return PHPExcel_Style_Font + */ + public function setBold($pValue = false) { + if ($pValue == '') { + $pValue = false; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('bold' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_bold = $pValue; + } + return $this; + } + + /** + * Get Italic + * + * @return boolean + */ + public function getItalic() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getItalic(); + } + return $this->_italic; + } + + /** + * Set Italic + * + * @param boolean $pValue + * @return PHPExcel_Style_Font + */ + public function setItalic($pValue = false) { + if ($pValue == '') { + $pValue = false; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('italic' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_italic = $pValue; + } + return $this; + } + + /** + * Get SuperScript + * + * @return boolean + */ + public function getSuperScript() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getSuperScript(); + } + return $this->_superScript; + } + + /** + * Set SuperScript + * + * @param boolean $pValue + * @return PHPExcel_Style_Font + */ + public function setSuperScript($pValue = false) { + if ($pValue == '') { + $pValue = false; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('superScript' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_superScript = $pValue; + $this->_subScript = !$pValue; + } + return $this; + } + + /** + * Get SubScript + * + * @return boolean + */ + public function getSubScript() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getSubScript(); + } + return $this->_subScript; + } + + /** + * Set SubScript + * + * @param boolean $pValue + * @return PHPExcel_Style_Font + */ + public function setSubScript($pValue = false) { + if ($pValue == '') { + $pValue = false; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('subScript' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_subScript = $pValue; + $this->_superScript = !$pValue; + } + return $this; + } + + /** + * Get Underline + * + * @return string + */ + public function getUnderline() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getUnderline(); + } + return $this->_underline; + } + + /** + * Set Underline + * + * @param string|boolean $pValue PHPExcel_Style_Font underline type + * If a boolean is passed, then true equates to UNDERLINE_SINGLE, + * false equates to UNDERLINE_NONE + * @return PHPExcel_Style_Font + */ + public function setUnderline($pValue = self::UNDERLINE_NONE) { + if (is_bool($pValue)) { + $pValue = ($pValue) ? self::UNDERLINE_SINGLE : self::UNDERLINE_NONE; + } elseif ($pValue == '') { + $pValue = self::UNDERLINE_NONE; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('underline' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_underline = $pValue; + } + return $this; + } + + /** + * Get Striketrough + * + * @deprecated Use getStrikethrough() instead. + * @return boolean + */ + public function getStriketrough() { + return $this->getStrikethrough(); + } + + /** + * Set Striketrough + * + * @deprecated Use setStrikethrough() instead. + * @param boolean $pValue + * @return PHPExcel_Style_Font + */ + public function setStriketrough($pValue = false) { + return $this->setStrikethrough($pValue); + } + + /** + * Get Strikethrough + * + * @return boolean + */ + public function getStrikethrough() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getStrikethrough(); + } + return $this->_strikethrough; + } + + /** + * Set Strikethrough + * + * @param boolean $pValue + * @return PHPExcel_Style_Font + */ + public function setStrikethrough($pValue = false) { + if ($pValue == '') { + $pValue = false; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('strike' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_strikethrough = $pValue; + } + return $this; + } + + /** + * Get Color + * + * @return PHPExcel_Style_Color + */ + public function getColor() { + return $this->_color; + } + + /** + * Set Color + * + * @param PHPExcel_Style_Color $pValue + * @throws Exception + * @return PHPExcel_Style_Font + */ + public function setColor(PHPExcel_Style_Color $pValue = null) { + // make sure parameter is a real color and not a supervisor + $color = $pValue->getIsSupervisor() ? $pValue->getSharedComponent() : $pValue; + + if ($this->_isSupervisor) { + $styleArray = $this->getColor()->getStyleArray(array('argb' => $color->getARGB())); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_color = $color; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->_name + . $this->_size + . ($this->_bold ? 't' : 'f') + . ($this->_italic ? 't' : 'f') + . ($this->_superScript ? 't' : 'f') + . ($this->_subScript ? 't' : 'f') + . $this->_underline + . ($this->_strikethrough ? 't' : 'f') + . $this->_color->getHashCode() + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Style/NumberFormat.php b/site/config/PHPExcel/Classes/PHPExcel/Style/NumberFormat.php new file mode 100644 index 0000000..19e064e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Style/NumberFormat.php @@ -0,0 +1,741 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Style_NumberFormat + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Style_NumberFormat implements PHPExcel_IComparable +{ + /* Pre-defined formats */ + const FORMAT_GENERAL = 'General'; + + const FORMAT_TEXT = '@'; + + const FORMAT_NUMBER = '0'; + const FORMAT_NUMBER_00 = '0.00'; + const FORMAT_NUMBER_COMMA_SEPARATED1 = '#,##0.00'; + const FORMAT_NUMBER_COMMA_SEPARATED2 = '#,##0.00_-'; + + const FORMAT_PERCENTAGE = '0%'; + const FORMAT_PERCENTAGE_00 = '0.00%'; + + const FORMAT_DATE_YYYYMMDD2 = 'yyyy-mm-dd'; + const FORMAT_DATE_YYYYMMDD = 'yy-mm-dd'; + const FORMAT_DATE_DDMMYYYY = 'dd/mm/yy'; + const FORMAT_DATE_DMYSLASH = 'd/m/y'; + const FORMAT_DATE_DMYMINUS = 'd-m-y'; + const FORMAT_DATE_DMMINUS = 'd-m'; + const FORMAT_DATE_MYMINUS = 'm-y'; + const FORMAT_DATE_XLSX14 = 'mm-dd-yy'; + const FORMAT_DATE_XLSX15 = 'd-mmm-yy'; + const FORMAT_DATE_XLSX16 = 'd-mmm'; + const FORMAT_DATE_XLSX17 = 'mmm-yy'; + const FORMAT_DATE_XLSX22 = 'm/d/yy h:mm'; + const FORMAT_DATE_DATETIME = 'd/m/y h:mm'; + const FORMAT_DATE_TIME1 = 'h:mm AM/PM'; + const FORMAT_DATE_TIME2 = 'h:mm:ss AM/PM'; + const FORMAT_DATE_TIME3 = 'h:mm'; + const FORMAT_DATE_TIME4 = 'h:mm:ss'; + const FORMAT_DATE_TIME5 = 'mm:ss'; + const FORMAT_DATE_TIME6 = 'h:mm:ss'; + const FORMAT_DATE_TIME7 = 'i:s.S'; + const FORMAT_DATE_TIME8 = 'h:mm:ss;@'; + const FORMAT_DATE_YYYYMMDDSLASH = 'yy/mm/dd;@'; + + const FORMAT_CURRENCY_USD_SIMPLE = '"$"#,##0.00_-'; + const FORMAT_CURRENCY_USD = '$#,##0_-'; + const FORMAT_CURRENCY_EUR_SIMPLE = '[$EUR ]#,##0.00_-'; + + /** + * Excel built-in number formats + * + * @var array + */ + private static $_builtInFormats; + + /** + * Excel built-in number formats (flipped, for faster lookups) + * + * @var array + */ + private static $_flippedBuiltInFormats; + + /** + * Format Code + * + * @var string + */ + private $_formatCode = PHPExcel_Style_NumberFormat::FORMAT_GENERAL; + + /** + * Built-in format Code + * + * @var string + */ + private $_builtInFormatCode = 0; + + /** + * Parent Borders + * + * @var _parentPropertyName string + */ + private $_parentPropertyName; + + /** + * Supervisor? + * + * @var boolean + */ + private $_isSupervisor; + + /** + * Parent. Only used for supervisor + * + * @var PHPExcel_Style + */ + private $_parent; + + /** + * Create a new PHPExcel_Style_NumberFormat + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + $this->_isSupervisor = $isSupervisor; + + if ($isConditional) { + $this->_formatCode = NULL; + } + } + + /** + * Bind parent. Only used for supervisor + * + * @param PHPExcel_Style $parent + * @return PHPExcel_Style_NumberFormat + */ + public function bindParent($parent) + { + $this->_parent = $parent; + } + + /** + * Is this a supervisor or a real style component? + * + * @return boolean + */ + public function getIsSupervisor() + { + return $this->_isSupervisor; + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_NumberFormat + */ + public function getSharedComponent() + { + return $this->_parent->getSharedComponent()->getNumberFormat(); + } + + /** + * Get the currently active sheet. Only used for supervisor + * + * @return PHPExcel_Worksheet + */ + public function getActiveSheet() + { + return $this->_parent->getActiveSheet(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getSelectedCells() + { + return $this->getActiveSheet()->getSelectedCells(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getActiveCell() + { + return $this->getActiveSheet()->getActiveCell(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('numberformat' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getNumberFormat()->applyFromArray( + * array( + * 'code' => PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE + * ) + * ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws Exception + * @return PHPExcel_Style_NumberFormat + */ + public function applyFromArray($pStyles = null) + { + if (is_array($pStyles)) { + if ($this->_isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('code', $pStyles)) { + $this->setFormatCode($pStyles['code']); + } + } + } else { + throw new Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get Format Code + * + * @return string + */ + public function getFormatCode() + { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getFormatCode(); + } + if ($this->_builtInFormatCode !== false) + { + return self::builtInFormatCode($this->_builtInFormatCode); + } + return $this->_formatCode; + } + + /** + * Set Format Code + * + * @param string $pValue + * @return PHPExcel_Style_NumberFormat + */ + public function setFormatCode($pValue = PHPExcel_Style_NumberFormat::FORMAT_GENERAL) + { + if ($pValue == '') { + $pValue = PHPExcel_Style_NumberFormat::FORMAT_GENERAL; + } + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('code' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_formatCode = $pValue; + $this->_builtInFormatCode = self::builtInFormatCodeIndex($pValue); + } + return $this; + } + + /** + * Get Built-In Format Code + * + * @return int + */ + public function getBuiltInFormatCode() + { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getBuiltInFormatCode(); + } + return $this->_builtInFormatCode; + } + + /** + * Set Built-In Format Code + * + * @param int $pValue + * @return PHPExcel_Style_NumberFormat + */ + public function setBuiltInFormatCode($pValue = 0) + { + + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('code' => self::builtInFormatCode($pValue))); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_builtInFormatCode = $pValue; + $this->_formatCode = self::builtInFormatCode($pValue); + } + return $this; + } + + /** + * Fill built-in format codes + */ + private static function fillBuiltInFormatCodes() + { + // Built-in format codes + if (is_null(self::$_builtInFormats)) { + self::$_builtInFormats = array(); + + // General + self::$_builtInFormats[0] = PHPExcel_Style_NumberFormat::FORMAT_GENERAL; + self::$_builtInFormats[1] = '0'; + self::$_builtInFormats[2] = '0.00'; + self::$_builtInFormats[3] = '#,##0'; + self::$_builtInFormats[4] = '#,##0.00'; + + self::$_builtInFormats[9] = '0%'; + self::$_builtInFormats[10] = '0.00%'; + self::$_builtInFormats[11] = '0.00E+00'; + self::$_builtInFormats[12] = '# ?/?'; + self::$_builtInFormats[13] = '# ??/??'; + self::$_builtInFormats[14] = 'mm-dd-yy'; + self::$_builtInFormats[15] = 'd-mmm-yy'; + self::$_builtInFormats[16] = 'd-mmm'; + self::$_builtInFormats[17] = 'mmm-yy'; + self::$_builtInFormats[18] = 'h:mm AM/PM'; + self::$_builtInFormats[19] = 'h:mm:ss AM/PM'; + self::$_builtInFormats[20] = 'h:mm'; + self::$_builtInFormats[21] = 'h:mm:ss'; + self::$_builtInFormats[22] = 'm/d/yy h:mm'; + + self::$_builtInFormats[37] = '#,##0 ;(#,##0)'; + self::$_builtInFormats[38] = '#,##0 ;[Red](#,##0)'; + self::$_builtInFormats[39] = '#,##0.00;(#,##0.00)'; + self::$_builtInFormats[40] = '#,##0.00;[Red](#,##0.00)'; + + self::$_builtInFormats[44] = '_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)'; + self::$_builtInFormats[45] = 'mm:ss'; + self::$_builtInFormats[46] = '[h]:mm:ss'; + self::$_builtInFormats[47] = 'mmss.0'; + self::$_builtInFormats[48] = '##0.0E+0'; + self::$_builtInFormats[49] = '@'; + + // CHT + self::$_builtInFormats[27] = '[$-404]e/m/d'; + self::$_builtInFormats[30] = 'm/d/yy'; + self::$_builtInFormats[36] = '[$-404]e/m/d'; + self::$_builtInFormats[50] = '[$-404]e/m/d'; + self::$_builtInFormats[57] = '[$-404]e/m/d'; + + // THA + self::$_builtInFormats[59] = 't0'; + self::$_builtInFormats[60] = 't0.00'; + self::$_builtInFormats[61] = 't#,##0'; + self::$_builtInFormats[62] = 't#,##0.00'; + self::$_builtInFormats[67] = 't0%'; + self::$_builtInFormats[68] = 't0.00%'; + self::$_builtInFormats[69] = 't# ?/?'; + self::$_builtInFormats[70] = 't# ??/??'; + + // Flip array (for faster lookups) + self::$_flippedBuiltInFormats = array_flip(self::$_builtInFormats); + } + } + + /** + * Get built-in format code + * + * @param int $pIndex + * @return string + */ + public static function builtInFormatCode($pIndex) + { + // Clean parameter + $pIndex = intval($pIndex); + + // Ensure built-in format codes are available + self::fillBuiltInFormatCodes(); + + // Lookup format code + if (isset(self::$_builtInFormats[$pIndex])) { + return self::$_builtInFormats[$pIndex]; + } + + return ''; + } + + /** + * Get built-in format code index + * + * @param string $formatCode + * @return int|boolean + */ + public static function builtInFormatCodeIndex($formatCode) + { + // Ensure built-in format codes are available + self::fillBuiltInFormatCodes(); + + // Lookup format code + if (isset(self::$_flippedBuiltInFormats[$formatCode])) { + return self::$_flippedBuiltInFormats[$formatCode]; + } + + return false; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() + { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->_formatCode + . $this->_builtInFormatCode + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() + { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } + + /** + * Search/replace values to convert Excel date/time format masks to PHP format masks + * + * @var array + */ + private static $_dateFormatReplacements = array( + // first remove escapes related to non-format characters + '\\' => '', + // 12-hour suffix + 'am/pm' => 'A', + // 4-digit year + 'e' => 'Y', + 'yyyy' => 'Y', + // 2-digit year + 'yy' => 'y', + // first letter of month - no php equivalent + 'mmmmm' => 'M', + // full month name + 'mmmm' => 'F', + // short month name + 'mmm' => 'M', + // mm is minutes if time or month w/leading zero + ':mm' => ':i', + // month leading zero + 'mm' => 'm', + // month no leading zero + 'm' => 'n', + // full day of week name + 'dddd' => 'l', + // short day of week name + 'ddd' => 'D', + // days leading zero + 'dd' => 'd', + // days no leading zero + 'd' => 'j', + // seconds + 'ss' => 's', + // fractional seconds - no php equivalent + '.s' => '' + ); + /** + * Search/replace values to convert Excel date/time format masks hours to PHP format masks (24 hr clock) + * + * @var array + */ + private static $_dateFormatReplacements24 = array( + 'hh' => 'H', + 'h' => 'G' + ); + /** + * Search/replace values to convert Excel date/time format masks hours to PHP format masks (12 hr clock) + * + * @var array + */ + private static $_dateFormatReplacements12 = array( + 'hh' => 'h', + 'h' => 'g' + ); + + /** + * Convert a value in a pre-defined format to a PHP string + * + * @param mixed $value Value to format + * @param string $format Format code + * @param array $callBack Callback function for additional formatting of string + * @return string Formatted string + */ + public static function toFormattedString($value = '', $format = '', $callBack = null) + { + // For now we do not treat strings although section 4 of a format code affects strings + if (!is_numeric($value)) return $value; + + // For 'General' format code, we just pass the value although this is not entirely the way Excel does it, + // it seems to round numbers to a total of 10 digits. + if (($format === PHPExcel_Style_NumberFormat::FORMAT_GENERAL) || ($format === PHPExcel_Style_NumberFormat::FORMAT_TEXT)) { + return $value; + } + + // Get the sections, there can be up to four sections + $sections = explode(';', $format); + + // Fetch the relevant section depending on whether number is positive, negative, or zero? + // Text not supported yet. + // Here is how the sections apply to various values in Excel: + // 1 section: [POSITIVE/NEGATIVE/ZERO/TEXT] + // 2 sections: [POSITIVE/ZERO/TEXT] [NEGATIVE] + // 3 sections: [POSITIVE/TEXT] [NEGATIVE] [ZERO] + // 4 sections: [POSITIVE] [NEGATIVE] [ZERO] [TEXT] + switch (count($sections)) { + case 1: + $format = $sections[0]; + break; + + case 2: + $format = ($value >= 0) ? $sections[0] : $sections[1]; + $value = abs($value); // Use the absolute value + break; + + case 3: + $format = ($value > 0) ? + $sections[0] : ( ($value < 0) ? + $sections[1] : $sections[2]); + $value = abs($value); // Use the absolute value + break; + + case 4: + $format = ($value > 0) ? + $sections[0] : ( ($value < 0) ? + $sections[1] : $sections[2]); + $value = abs($value); // Use the absolute value + break; + + default: + // something is wrong, just use first section + $format = $sections[0]; + break; + } + + // Save format with color information for later use below + $formatColor = $format; + + // Strip color information + $color_regex = '/^\\[[a-zA-Z]+\\]/'; + $format = preg_replace($color_regex, '', $format); + + // Let's begin inspecting the format and converting the value to a formatted string + if (preg_match('/^(\[\$[A-Z]*-[0-9A-F]*\])*[hmsdy]/i', $format)) { // datetime format + // dvc: convert Excel formats to PHP date formats + + // strip off first part containing e.g. [$-F800] or [$USD-409] + // general syntax: [$<Currency string>-<language info>] + // language info is in hexadecimal + $format = preg_replace('/^(\[\$[A-Z]*-[0-9A-F]*\])/i', '', $format); + + // OpenOffice.org uses upper-case number formats, e.g. 'YYYY', convert to lower-case + $format = strtolower($format); + + $format = strtr($format,self::$_dateFormatReplacements); + if (!strpos($format,'A')) { // 24-hour time format + $format = strtr($format,self::$_dateFormatReplacements24); + } else { // 12-hour time format + $format = strtr($format,self::$_dateFormatReplacements12); + } + + $dateObj = PHPExcel_Shared_Date::ExcelToPHPObject($value); + $value = $dateObj->format($format); + + } else if (preg_match('/%$/', $format)) { // % number format + if ($format === self::FORMAT_PERCENTAGE) { + $value = round( (100 * $value), 0) . '%'; + } else { + if (preg_match('/\.[#0]+/i', $format, $m)) { + $s = substr($m[0], 0, 1) . (strlen($m[0]) - 1); + $format = str_replace($m[0], $s, $format); + } + if (preg_match('/^[#0]+/', $format, $m)) { + $format = str_replace($m[0], strlen($m[0]), $format); + } + $format = '%' . str_replace('%', 'f%%', $format); + + $value = sprintf($format, 100 * $value); + } + + } else { + if ($format === self::FORMAT_CURRENCY_EUR_SIMPLE) { + $value = 'EUR ' . sprintf('%1.2f', $value); + + } else { + // In Excel formats, "_" is used to add spacing, which we can't do in HTML + $format = preg_replace('/_./', '', $format); + + // Some non-number characters are escaped with \, which we don't need + $format = preg_replace("/\\\\/", '', $format); + + // Some non-number strings are quoted, so we'll get rid of the quotes, likewise any positional * symbols + $format = str_replace(array('"','*'), '', $format); + + // Find out if we need thousands separator + // This is indicated by a comma enclosed by a digit placeholder: + // #,# or 0,0 + $useThousands = preg_match('/(#,#|0,0)/', $format); + if ($useThousands) { + $format = preg_replace('/0,0/', '00', $format); + $format = preg_replace('/#,#/', '##', $format); + } + + // Scale thousands, millions,... + // This is indicated by a number of commas after a digit placeholder: + // #, or 0.0,, + $scale = 1; // same as no scale + $matches = array(); + if (preg_match('/(#|0)(,+)/', $format, $matches)) { + $scale = pow(1000, strlen($matches[2])); + + // strip the commas + $format = preg_replace('/0,+/', '0', $format); + $format = preg_replace('/#,+/', '#', $format); + } + + if (preg_match('/#?.*\?\/\?/', $format, $m)) { + //echo 'Format mask is fractional '.$format.' <br />'; + if ($value != (int)$value) { + $sign = ($value < 0) ? '-' : ''; + + $integerPart = floor(abs($value)); + $decimalPart = trim(fmod(abs($value),1),'0.'); + $decimalLength = strlen($decimalPart); + $decimalDivisor = pow(10,$decimalLength); + + $GCD = PHPExcel_Calculation_MathTrig::GCD($decimalPart,$decimalDivisor); + + $adjustedDecimalPart = $decimalPart/$GCD; + $adjustedDecimalDivisor = $decimalDivisor/$GCD; + + if ((strpos($format,'0') !== false) || (strpos($format,'#') !== false) || (substr($format,0,3) == '? ?')) { + if ($integerPart == 0) { $integerPart = ''; } + $value = "$sign$integerPart $adjustedDecimalPart/$adjustedDecimalDivisor"; + } else { + $adjustedDecimalPart += $integerPart * $adjustedDecimalDivisor; + $value = "$sign$adjustedDecimalPart/$adjustedDecimalDivisor"; + } + } + + } else { + // Handle the number itself + + // scale number + $value = $value / $scale; + + // Strip # + $format = preg_replace('/\\#/', '', $format); + + $n = "/\[[^\]]+\]/"; + $m = preg_replace($n, '', $format); + $number_regex = "/(0+)(\.?)(0*)/"; + if (preg_match($number_regex, $m, $matches)) { + $left = $matches[1]; + $dec = $matches[2]; + $right = $matches[3]; + + // minimun width of formatted number (including dot) + $minWidth = strlen($left) + strlen($dec) + strlen($right); + + if ($useThousands) { + $value = number_format( + $value + , strlen($right) + , PHPExcel_Shared_String::getDecimalSeparator() + , PHPExcel_Shared_String::getThousandsSeparator() + ); + } else { + $sprintf_pattern = "%0$minWidth." . strlen($right) . "f"; + $value = sprintf($sprintf_pattern, $value); + } + + $value = preg_replace($number_regex, $value, $format); + } + } + if (preg_match('/\[\$(.*)\]/u', $format, $m)) { + // Currency or Accounting + $currencyFormat = $m[0]; + $currencyCode = $m[1]; + list($currencyCode) = explode('-',$currencyCode); + if ($currencyCode == '') { + $currencyCode = PHPExcel_Shared_String::getCurrencyCode(); + } + $value = preg_replace('/\[\$([^\]]*)\]/u',$currencyCode,$value); + } + } + } + + // Additional formatting provided by callback function + if ($callBack !== null) { + list($writerInstance, $function) = $callBack; + $value = $writerInstance->$function($value, $formatColor); + } + + return $value; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Style/Protection.php b/site/config/PHPExcel/Classes/PHPExcel/Style/Protection.php new file mode 100644 index 0000000..477742b --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Style/Protection.php @@ -0,0 +1,290 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.4.5, 2007-08-23 + */ + + +/** + * PHPExcel_Style_Protection + * + * @category PHPExcel + * @package PHPExcel_Style + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Style_Protection implements PHPExcel_IComparable +{ + /** Protection styles */ + const PROTECTION_INHERIT = 'inherit'; + const PROTECTION_PROTECTED = 'protected'; + const PROTECTION_UNPROTECTED = 'unprotected'; + + /** + * Locked + * + * @var string + */ + private $_locked; + + /** + * Hidden + * + * @var string + */ + private $_hidden; + + /** + * Parent Borders + * + * @var _parentPropertyName string + */ + private $_parentPropertyName; + + /** + * Supervisor? + * + * @var boolean + */ + private $_isSupervisor; + + /** + * Parent. Only used for supervisor + * + * @var PHPExcel_Style + */ + private $_parent; + + /** + * Create a new PHPExcel_Style_Protection + * + * @param boolean $isSupervisor Flag indicating if this is a supervisor or not + * Leave this value at default unless you understand exactly what + * its ramifications are + * @param boolean $isConditional Flag indicating if this is a conditional style or not + * Leave this value at default unless you understand exactly what + * its ramifications are + */ + public function __construct($isSupervisor = false, $isConditional = false) + { + // Supervisor? + $this->_isSupervisor = $isSupervisor; + + // Initialise values + if (!$isConditional) { + $this->_locked = self::PROTECTION_INHERIT; + $this->_hidden = self::PROTECTION_INHERIT; + } + } + + /** + * Bind parent. Only used for supervisor + * + * @param PHPExcel_Style $parent + * @return PHPExcel_Style_Protection + */ + public function bindParent($parent) + { + $this->_parent = $parent; + return $this; + } + + /** + * Is this a supervisor or a real style component? + * + * @return boolean + */ + public function getIsSupervisor() + { + return $this->_isSupervisor; + } + + /** + * Get the shared style component for the currently active cell in currently active sheet. + * Only used for style supervisor + * + * @return PHPExcel_Style_Protection + */ + public function getSharedComponent() + { + return $this->_parent->getSharedComponent()->getProtection(); + } + + /** + * Get the currently active sheet. Only used for supervisor + * + * @return PHPExcel_Worksheet + */ + public function getActiveSheet() + { + return $this->_parent->getActiveSheet(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getSelectedCells() + { + return $this->getActiveSheet()->getSelectedCells(); + } + + /** + * Get the currently active cell coordinate in currently active sheet. + * Only used for supervisor + * + * @return string E.g. 'A1' + */ + public function getActiveCell() + { + return $this->getActiveSheet()->getActiveCell(); + } + + /** + * Build style array from subcomponents + * + * @param array $array + * @return array + */ + public function getStyleArray($array) + { + return array('protection' => $array); + } + + /** + * Apply styles from array + * + * <code> + * $objPHPExcel->getActiveSheet()->getStyle('B2')->getLocked()->applyFromArray( array('locked' => true, 'hidden' => false) ); + * </code> + * + * @param array $pStyles Array containing style information + * @throws Exception + * @return PHPExcel_Style_Protection + */ + public function applyFromArray($pStyles = null) { + if (is_array($pStyles)) { + if ($this->_isSupervisor) { + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($this->getStyleArray($pStyles)); + } else { + if (array_key_exists('locked', $pStyles)) { + $this->setLocked($pStyles['locked']); + } + if (array_key_exists('hidden', $pStyles)) { + $this->setHidden($pStyles['hidden']); + } + } + } else { + throw new Exception("Invalid style array passed."); + } + return $this; + } + + /** + * Get locked + * + * @return string + */ + public function getLocked() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getLocked(); + } + return $this->_locked; + } + + /** + * Set locked + * + * @param string $pValue + * @return PHPExcel_Style_Protection + */ + public function setLocked($pValue = self::PROTECTION_INHERIT) { + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('locked' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_locked = $pValue; + } + return $this; + } + + /** + * Get hidden + * + * @return string + */ + public function getHidden() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getHidden(); + } + return $this->_hidden; + } + + /** + * Set hidden + * + * @param string $pValue + * @return PHPExcel_Style_Protection + */ + public function setHidden($pValue = self::PROTECTION_INHERIT) { + if ($this->_isSupervisor) { + $styleArray = $this->getStyleArray(array('hidden' => $pValue)); + $this->getActiveSheet()->getStyle($this->getSelectedCells())->applyFromArray($styleArray); + } else { + $this->_hidden = $pValue; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + if ($this->_isSupervisor) { + return $this->getSharedComponent()->getHashCode(); + } + return md5( + $this->_locked + . $this->_hidden + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if ((is_object($value)) && ($key != '_parent')) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Style/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Style/_notes/dwsync.xml new file mode 100644 index 0000000..587ce50 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Style/_notes/dwsync.xml @@ -0,0 +1,66 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Alignment.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Border.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Borders.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Color.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Conditional.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Fill.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Font.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="NumberFormat.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Protection.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Border.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="Alignment.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="Color.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="Borders.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="NumberFormat.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="Conditional.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="Fill.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="Font.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="Protection.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="Border.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="Alignment.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="Color.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="Borders.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="NumberFormat.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="Conditional.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="Fill.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="Font.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="Protection.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="Border.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559976704570" remote="131260196400000000" Dst="1" /> +<file name="Alignment.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559977161623" remote="131260196400000000" Dst="1" /> +<file name="Color.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559977632422" remote="131260196400000000" Dst="1" /> +<file name="Borders.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559978098126" remote="131260196400000000" Dst="1" /> +<file name="NumberFormat.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559978560151" remote="131260196400000000" Dst="1" /> +<file name="Conditional.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559978996963" remote="131260196400000000" Dst="1" /> +<file name="Fill.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559979437352" remote="131260196400000000" Dst="1" /> +<file name="Font.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559979884804" remote="131260196400000000" Dst="1" /> +<file name="Protection.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559980330466" remote="131260196400000000" Dst="1" /> +<file name="Border.php" server="62.244.88.21/amashow/" local="131414752277469169" remote="131414680800000000" Dst="2" /> +<file name="Alignment.php" server="62.244.88.21/amashow/" local="131414752277674355" remote="131414680800000000" Dst="2" /> +<file name="Color.php" server="62.244.88.21/amashow/" local="131414752278024508" remote="131414680800000000" Dst="2" /> +<file name="Borders.php" server="62.244.88.21/amashow/" local="131414752278239154" remote="131414680800000000" Dst="2" /> +<file name="NumberFormat.php" server="62.244.88.21/amashow/" local="131414752278710271" remote="131414680800000000" Dst="2" /> +<file name="Conditional.php" server="62.244.88.21/amashow/" local="131414752279120654" remote="131414680800000000" Dst="2" /> +<file name="Fill.php" server="62.244.88.21/amashow/" local="131414752279665794" remote="131414680800000000" Dst="2" /> +<file name="Font.php" server="62.244.88.21/amashow/" local="131414752279883782" remote="131414680800000000" Dst="2" /> +<file name="Protection.php" server="62.244.88.21/amashow/" local="131414752280087988" remote="131414680800000000" Dst="2" /> +<file name="Conditional.php" server="62.244.88.21/deciday/" local="131919461321199684" remote="131826017400000000" Dst="1" /> +<file name="Borders.php" server="62.244.88.21/deciday/" local="131919461320474633" remote="131826017400000000" Dst="1" /> +<file name="Protection.php" server="62.244.88.21/deciday/" local="131919461322920610" remote="131826017400000000" Dst="1" /> +<file name="Color.php" server="62.244.88.21/deciday/" local="131919461320794405" remote="131826017400000000" Dst="1" /> +<file name="NumberFormat.php" server="62.244.88.21/deciday/" local="131919461322740594" remote="131826017400000000" Dst="1" /> +<file name="Font.php" server="62.244.88.21/deciday/" local="131919461322048797" remote="131826017400000000" Dst="1" /> +<file name="Fill.php" server="62.244.88.21/deciday/" local="131919461321857873" remote="131826017400000000" Dst="1" /> +<file name="Border.php" server="62.244.88.21/deciday/" local="131919461319984205" remote="131826017400000000" Dst="1" /> +<file name="Alignment.php" server="62.244.88.21/deciday/" local="131919461319478386" remote="131826017400000000" Dst="1" /> +<file name="Alignment.php" server="62.244.88.21/deciday_18/" local="131414752277674355" remote="131825945400000000" Dst="2" /> +<file name="Border.php" server="62.244.88.21/deciday_18/" local="131414752277469169" remote="131825945400000000" Dst="2" /> +<file name="Borders.php" server="62.244.88.21/deciday_18/" local="131414752278239154" remote="131825945400000000" Dst="2" /> +<file name="Conditional.php" server="62.244.88.21/deciday_18/" local="131414752279120654" remote="131825945400000000" Dst="2" /> +<file name="Color.php" server="62.244.88.21/deciday_18/" local="131414752278024508" remote="131825945400000000" Dst="2" /> +<file name="Fill.php" server="62.244.88.21/deciday_18/" local="131414752279665794" remote="131825945400000000" Dst="2" /> +<file name="Font.php" server="62.244.88.21/deciday_18/" local="131414752279883782" remote="131825945400000000" Dst="2" /> +<file name="Protection.php" server="62.244.88.21/deciday_18/" local="131414752280087988" remote="131825945400000000" Dst="2" /> +<file name="NumberFormat.php" server="62.244.88.21/deciday_18/" local="131414752278710271" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet.php new file mode 100644 index 0000000..17ed5da --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet.php @@ -0,0 +1,2795 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet implements PHPExcel_IComparable +{ + /* Break types */ + const BREAK_NONE = 0; + const BREAK_ROW = 1; + const BREAK_COLUMN = 2; + + /* Sheet state */ + const SHEETSTATE_VISIBLE = 'visible'; + const SHEETSTATE_HIDDEN = 'hidden'; + const SHEETSTATE_VERYHIDDEN = 'veryHidden'; + + /** + * Invalid characters in sheet title + * + * @var array + */ + private static $_invalidCharacters = array('*', ':', '/', '\\', '?', '[', ']'); + + /** + * Parent spreadsheet + * + * @var PHPExcel + */ + private $_parent; + + /** + * Cacheable collection of cells + * + * @var PHPExcel_CachedObjectStorage_xxx + */ + private $_cellCollection = null; + + /** + * Collection of row dimensions + * + * @var PHPExcel_Worksheet_RowDimension[] + */ + private $_rowDimensions = array(); + + /** + * Default row dimension + * + * @var PHPExcel_Worksheet_RowDimension + */ + private $_defaultRowDimension = null; + + /** + * Collection of column dimensions + * + * @var PHPExcel_Worksheet_ColumnDimension[] + */ + private $_columnDimensions = array(); + + /** + * Default column dimension + * + * @var PHPExcel_Worksheet_ColumnDimension + */ + private $_defaultColumnDimension = null; + + /** + * Collection of drawings + * + * @var PHPExcel_Worksheet_BaseDrawing[] + */ + private $_drawingCollection = null; + + /** + * Collection of Chart objects + * + * @var PHPExcel_Chart[] + */ + private $_chartCollection = array(); + + /** + * Worksheet title + * + * @var string + */ + private $_title; + + /** + * Sheet state + * + * @var string + */ + private $_sheetState; + + /** + * Page setup + * + * @var PHPExcel_Worksheet_PageSetup + */ + private $_pageSetup; + + /** + * Page margins + * + * @var PHPExcel_Worksheet_PageMargins + */ + private $_pageMargins; + + /** + * Page header/footer + * + * @var PHPExcel_Worksheet_HeaderFooter + */ + private $_headerFooter; + + /** + * Sheet view + * + * @var PHPExcel_Worksheet_SheetView + */ + private $_sheetView; + + /** + * Protection + * + * @var PHPExcel_Worksheet_Protection + */ + private $_protection; + + /** + * Collection of styles + * + * @var PHPExcel_Style[] + */ + private $_styles = array(); + + /** + * Conditional styles. Indexed by cell coordinate, e.g. 'A1' + * + * @var array + */ + private $_conditionalStylesCollection = array(); + + /** + * Is the current cell collection sorted already? + * + * @var boolean + */ + private $_cellCollectionIsSorted = false; + + /** + * Collection of breaks + * + * @var array + */ + private $_breaks = array(); + + /** + * Collection of merged cell ranges + * + * @var array + */ + private $_mergeCells = array(); + + /** + * Collection of protected cell ranges + * + * @var array + */ + private $_protectedCells = array(); + + /** + * Autofilter Range and selection + * + * @var PHPExcel_Worksheet_AutoFilter + */ + private $_autoFilter = NULL; + + /** + * Freeze pane + * + * @var string + */ + private $_freezePane = ''; + + /** + * Show gridlines? + * + * @var boolean + */ + private $_showGridlines = true; + + /** + * Print gridlines? + * + * @var boolean + */ + private $_printGridlines = false; + + /** + * Show row and column headers? + * + * @var boolean + */ + private $_showRowColHeaders = true; + + /** + * Show summary below? (Row/Column outline) + * + * @var boolean + */ + private $_showSummaryBelow = true; + + /** + * Show summary right? (Row/Column outline) + * + * @var boolean + */ + private $_showSummaryRight = true; + + /** + * Collection of comments + * + * @var PHPExcel_Comment[] + */ + private $_comments = array(); + + /** + * Active cell. (Only one!) + * + * @var string + */ + private $_activeCell = 'A1'; + + /** + * Selected cells + * + * @var string + */ + private $_selectedCells = 'A1'; + + /** + * Cached highest column + * + * @var string + */ + private $_cachedHighestColumn = 'A'; + + /** + * Cached highest row + * + * @var int + */ + private $_cachedHighestRow = 1; + + /** + * Right-to-left? + * + * @var boolean + */ + private $_rightToLeft = false; + + /** + * Hyperlinks. Indexed by cell coordinate, e.g. 'A1' + * + * @var array + */ + private $_hyperlinkCollection = array(); + + /** + * Data validation objects. Indexed by cell coordinate, e.g. 'A1' + * + * @var array + */ + private $_dataValidationCollection = array(); + + /** + * Tab color + * + * @var PHPExcel_Style_Color + */ + private $_tabColor; + + /** + * Dirty flag + * + * @var boolean + */ + private $_dirty = true; + + /** + * Hash + * + * @var string + */ + private $_hash = null; + + /** + * Create a new worksheet + * + * @param PHPExcel $pParent + * @param string $pTitle + */ + public function __construct(PHPExcel $pParent = null, $pTitle = 'Worksheet') + { + // Set parent and title + $this->_parent = $pParent; + $this->setTitle($pTitle, FALSE); + $this->setSheetState(PHPExcel_Worksheet::SHEETSTATE_VISIBLE); + + $this->_cellCollection = PHPExcel_CachedObjectStorageFactory::getInstance($this); + + // Set page setup + $this->_pageSetup = new PHPExcel_Worksheet_PageSetup(); + + // Set page margins + $this->_pageMargins = new PHPExcel_Worksheet_PageMargins(); + + // Set page header/footer + $this->_headerFooter = new PHPExcel_Worksheet_HeaderFooter(); + + // Set sheet view + $this->_sheetView = new PHPExcel_Worksheet_SheetView(); + + // Drawing collection + $this->_drawingCollection = new ArrayObject(); + + // Chart collection + $this->_chartCollection = new ArrayObject(); + + // Protection + $this->_protection = new PHPExcel_Worksheet_Protection(); + + // Default row dimension + $this->_defaultRowDimension = new PHPExcel_Worksheet_RowDimension(NULL); + + // Default column dimension + $this->_defaultColumnDimension = new PHPExcel_Worksheet_ColumnDimension(NULL); + + $this->_autoFilter = new PHPExcel_Worksheet_AutoFilter(NULL, $this); + } + + + /** + * Disconnect all cells from this PHPExcel_Worksheet object, + * typically so that the worksheet object can be unset + * + */ + public function disconnectCells() { + $this->_cellCollection->unsetWorksheetCells(); + $this->_cellCollection = null; + + // detach ourself from the workbook, so that it can then delete this worksheet successfully + $this->_parent = null; + } + + /** + * Return the cache controller for the cell collection + * + * @return PHPExcel_CachedObjectStorage_xxx + */ + public function getCellCacheController() { + return $this->_cellCollection; + } // function getCellCacheController() + + + /** + * Get array of invalid characters for sheet title + * + * @return array + */ + public static function getInvalidCharacters() + { + return self::$_invalidCharacters; + } + + /** + * Check sheet title for valid Excel syntax + * + * @param string $pValue The string to check + * @return string The valid string + * @throws Exception + */ + private static function _checkSheetTitle($pValue) + { + // Some of the printable ASCII characters are invalid: * : / \ ? [ ] + if (str_replace(self::$_invalidCharacters, '', $pValue) !== $pValue) { + throw new Exception('Invalid character found in sheet title'); + } + + // Maximum 31 characters allowed for sheet title + if (PHPExcel_Shared_String::CountCharacters($pValue) > 31) { + throw new Exception('Maximum 31 characters allowed in sheet title.'); + } + + return $pValue; + } + + /** + * Get collection of cells + * + * @param boolean $pSorted Also sort the cell collection? + * @return PHPExcel_Cell[] + */ + public function getCellCollection($pSorted = true) + { + if ($pSorted) { + // Re-order cell collection + return $this->sortCellCollection(); + } + if ($this->_cellCollection !== NULL) { + return $this->_cellCollection->getCellList(); + } + return array(); + } + + /** + * Sort collection of cells + * + * @return PHPExcel_Worksheet + */ + public function sortCellCollection() + { + if ($this->_cellCollection !== NULL) { + return $this->_cellCollection->getSortedCellList(); + } + return array(); + } + + /** + * Get collection of row dimensions + * + * @return PHPExcel_Worksheet_RowDimension[] + */ + public function getRowDimensions() + { + return $this->_rowDimensions; + } + + /** + * Get default row dimension + * + * @return PHPExcel_Worksheet_RowDimension + */ + public function getDefaultRowDimension() + { + return $this->_defaultRowDimension; + } + + /** + * Get collection of column dimensions + * + * @return PHPExcel_Worksheet_ColumnDimension[] + */ + public function getColumnDimensions() + { + return $this->_columnDimensions; + } + + /** + * Get default column dimension + * + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function getDefaultColumnDimension() + { + return $this->_defaultColumnDimension; + } + + /** + * Get collection of drawings + * + * @return PHPExcel_Worksheet_BaseDrawing[] + */ + public function getDrawingCollection() + { + return $this->_drawingCollection; + } + + /** + * Get collection of charts + * + * @return PHPExcel_Chart[] + */ + public function getChartCollection() + { + return $this->_chartCollection; + } + + /** + * Add chart + * + * @param PHPExcel_Chart $pChart + * @param int|null $iChartIndex Index where chart should go (0,1,..., or null for last) + * @return PHPExcel_Chart + * @throws Exception + */ + public function addChart(PHPExcel_Chart $pChart = null, $iChartIndex = null) + { + $pChart->setWorksheet($this); + if (is_null($iChartIndex)) { + $this->_chartCollection[] = $pChart; + } else { + // Insert the chart at the requested index + array_splice($this->_chartCollection, $iChartIndex, 0, array($pChart)); + } + + return $pChart; + } + + /** + * Return the count of charts on this worksheet + * + * @return int The number of charts + * @throws Exception + */ + public function getChartCount() + { + return count($this->_chartCollection); + } + + /** + * Get a chart by its index position + * + * @param string $index Chart index position + * @return false|PHPExcel_Chart + * @throws Exception + */ + public function getChartByIndex($index = null) + { + $chartCount = count($this->_chartCollection); + if ($chartCount == 0) { + return false; + } + if (is_null($index)) { + $index = --$chartCount; + } + if (!isset($this->_chartCollection[$index])) { + return false; + } + + return $this->_chartCollection[$index]; + } + + /** + * Return an array of the names of charts on this worksheet + * + * @return string[] The names of charts + * @throws Exception + */ + public function getChartNames() + { + $chartNames = array(); + foreach($this->_chartCollection as $chart) { + $chartNames[] = $chart->getName(); + } + return $chartNames; + } + + /** + * Get a chart by name + * + * @param string $chartName Chart name + * @return false|PHPExcel_Chart + * @throws Exception + */ + public function getChartByName($chartName = '') + { + $chartCount = count($this->_chartCollection); + if ($chartCount == 0) { + return false; + } + foreach($this->_chartCollection as $index => $chart) { + if ($chart->getName() == $chartName) { + return $this->_chartCollection[$index]; + } + } + return false; + } + + /** + * Refresh column dimensions + * + * @return PHPExcel_Worksheet + */ + public function refreshColumnDimensions() + { + $currentColumnDimensions = $this->getColumnDimensions(); + $newColumnDimensions = array(); + + foreach ($currentColumnDimensions as $objColumnDimension) { + $newColumnDimensions[$objColumnDimension->getColumnIndex()] = $objColumnDimension; + } + + $this->_columnDimensions = $newColumnDimensions; + + return $this; + } + + /** + * Refresh row dimensions + * + * @return PHPExcel_Worksheet + */ + public function refreshRowDimensions() + { + $currentRowDimensions = $this->getRowDimensions(); + $newRowDimensions = array(); + + foreach ($currentRowDimensions as $objRowDimension) { + $newRowDimensions[$objRowDimension->getRowIndex()] = $objRowDimension; + } + + $this->_rowDimensions = $newRowDimensions; + + return $this; + } + + /** + * Calculate worksheet dimension + * + * @return string String containing the dimension of this worksheet + */ + public function calculateWorksheetDimension() + { + // Return + return 'A1' . ':' . $this->getHighestColumn() . $this->getHighestRow(); + } + + /** + * Calculate worksheet data dimension + * + * @return string String containing the dimension of this worksheet that actually contain data + */ + public function calculateWorksheetDataDimension() + { + // Return + return 'A1' . ':' . $this->getHighestDataColumn() . $this->getHighestDataRow(); + } + + /** + * Calculate widths for auto-size columns + * + * @param boolean $calculateMergeCells Calculate merge cell width + * @return PHPExcel_Worksheet; + */ + public function calculateColumnWidths($calculateMergeCells = false) + { + // initialize $autoSizes array + $autoSizes = array(); + foreach ($this->getColumnDimensions() as $colDimension) { + if ($colDimension->getAutoSize()) { + $autoSizes[$colDimension->getColumnIndex()] = -1; + } + } + + // There is only something to do if there are some auto-size columns + if (!empty($autoSizes)) { + + // build list of cells references that participate in a merge + $isMergeCell = array(); + foreach ($this->getMergeCells() as $cells) { + foreach (PHPExcel_Cell::extractAllCellReferencesInRange($cells) as $cellReference) { + $isMergeCell[$cellReference] = true; + } + } + + // loop through all cells in the worksheet + foreach ($this->getCellCollection(false) as $cellID) { + $cell = $this->getCell($cellID); + if (isset($autoSizes[$cell->getColumn()])) { + // Determine width if cell does not participate in a merge + if (!isset($isMergeCell[$cell->getCoordinate()])) { + // Calculated value + $cellValue = $cell->getCalculatedValue(); + + // To formatted string + $cellValue = PHPExcel_Style_NumberFormat::toFormattedString($cellValue, $this->getParent()->getCellXfByIndex($cell->getXfIndex())->getNumberFormat()->getFormatCode()); + + $autoSizes[$cell->getColumn()] = max( + (float)$autoSizes[$cell->getColumn()], + (float)PHPExcel_Shared_Font::calculateColumnWidth( + $this->getParent()->getCellXfByIndex($cell->getXfIndex())->getFont(), + $cellValue, + $this->getParent()->getCellXfByIndex($cell->getXfIndex())->getAlignment()->getTextRotation(), + $this->getDefaultStyle()->getFont() + ) + ); + } + } + } + + // adjust column widths + foreach ($autoSizes as $columnIndex => $width) { + if ($width == -1) $width = $this->getDefaultColumnDimension()->getWidth(); + $this->getColumnDimension($columnIndex)->setWidth($width); + } + } + + return $this; + } + + /** + * Get parent + * + * @return PHPExcel + */ + public function getParent() { + return $this->_parent; + } + + /** + * Re-bind parent + * + * @param PHPExcel $parent + * @return PHPExcel_Worksheet + */ + public function rebindParent(PHPExcel $parent) { + $namedRanges = $this->_parent->getNamedRanges(); + foreach ($namedRanges as $namedRange) { + $parent->addNamedRange($namedRange); + } + + $this->_parent->removeSheetByIndex( + $this->_parent->getIndex($this) + ); + $this->_parent = $parent; + + return $this; + } + + /** + * Get title + * + * @return string + */ + public function getTitle() + { + return $this->_title; + } + + /** + * Set title + * + * @param string $pValue String containing the dimension of this worksheet + * @param string $updateFormulaCellReferences boolean Flag indicating whether cell references in formulae should + * be updated to reflect the new sheet name. + * This should be left as the default true, unless you are + * certain that no formula cells on any worksheet contain + * references to this worksheet + * @return PHPExcel_Worksheet + */ + public function setTitle($pValue = 'Worksheet', $updateFormulaCellReferences = true) + { + // Is this a 'rename' or not? + if ($this->getTitle() == $pValue) { + return $this; + } + + // Syntax check + self::_checkSheetTitle($pValue); + + // Old title + $oldTitle = $this->getTitle(); + + if ($this->getParent()) { + // Is there already such sheet name? + if ($this->getParent()->sheetNameExists($pValue)) { + // Use name, but append with lowest possible integer + + if (PHPExcel_Shared_String::CountCharacters($pValue) > 29) { + $pValue = PHPExcel_Shared_String::Substring($pValue,0,29); + } + $i = 1; + while ($this->getParent()->sheetNameExists($pValue . ' ' . $i)) { + ++$i; + if ($i == 10) { + if (PHPExcel_Shared_String::CountCharacters($pValue) > 28) { + $pValue = PHPExcel_Shared_String::Substring($pValue,0,28); + } + } elseif ($i == 100) { + if (PHPExcel_Shared_String::CountCharacters($pValue) > 27) { + $pValue = PHPExcel_Shared_String::Substring($pValue,0,27); + } + } + } + + $altTitle = $pValue . ' ' . $i; + return $this->setTitle($altTitle,$updateFormulaCellReferences); + } + } + + // Set title + $this->_title = $pValue; + $this->_dirty = true; + + if ($this->getParent()) { + // New title + $newTitle = $this->getTitle(); + if ($updateFormulaCellReferences) + PHPExcel_ReferenceHelper::getInstance()->updateNamedFormulas($this->getParent(), $oldTitle, $newTitle); + } + + return $this; + } + + /** + * Get sheet state + * + * @return string Sheet state (visible, hidden, veryHidden) + */ + public function getSheetState() { + return $this->_sheetState; + } + + /** + * Set sheet state + * + * @param string $value Sheet state (visible, hidden, veryHidden) + * @return PHPExcel_Worksheet + */ + public function setSheetState($value = PHPExcel_Worksheet::SHEETSTATE_VISIBLE) { + $this->_sheetState = $value; + return $this; + } + + /** + * Get page setup + * + * @return PHPExcel_Worksheet_PageSetup + */ + public function getPageSetup() + { + return $this->_pageSetup; + } + + /** + * Set page setup + * + * @param PHPExcel_Worksheet_PageSetup $pValue + * @return PHPExcel_Worksheet + */ + public function setPageSetup(PHPExcel_Worksheet_PageSetup $pValue) + { + $this->_pageSetup = $pValue; + return $this; + } + + /** + * Get page margins + * + * @return PHPExcel_Worksheet_PageMargins + */ + public function getPageMargins() + { + return $this->_pageMargins; + } + + /** + * Set page margins + * + * @param PHPExcel_Worksheet_PageMargins $pValue + * @return PHPExcel_Worksheet + */ + public function setPageMargins(PHPExcel_Worksheet_PageMargins $pValue) + { + $this->_pageMargins = $pValue; + return $this; + } + + /** + * Get page header/footer + * + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function getHeaderFooter() + { + return $this->_headerFooter; + } + + /** + * Set page header/footer + * + * @param PHPExcel_Worksheet_HeaderFooter $pValue + * @return PHPExcel_Worksheet + */ + public function setHeaderFooter(PHPExcel_Worksheet_HeaderFooter $pValue) + { + $this->_headerFooter = $pValue; + return $this; + } + + /** + * Get sheet view + * + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function getSheetView() + { + return $this->_sheetView; + } + + /** + * Set sheet view + * + * @param PHPExcel_Worksheet_SheetView $pValue + * @return PHPExcel_Worksheet + */ + public function setSheetView(PHPExcel_Worksheet_SheetView $pValue) + { + $this->_sheetView = $pValue; + return $this; + } + + /** + * Get Protection + * + * @return PHPExcel_Worksheet_Protection + */ + public function getProtection() + { + return $this->_protection; + } + + /** + * Set Protection + * + * @param PHPExcel_Worksheet_Protection $pValue + * @return PHPExcel_Worksheet + */ + public function setProtection(PHPExcel_Worksheet_Protection $pValue) + { + $this->_protection = $pValue; + $this->_dirty = true; + + return $this; + } + + /** + * Get highest worksheet column + * + * @return string Highest column name + */ + public function getHighestColumn() + { + return $this->_cachedHighestColumn; + } + + /** + * Get highest worksheet column that contains data + * + * @return string Highest column name that contains data + */ + public function getHighestDataColumn() + { + return $this->_cellCollection->getHighestColumn(); + } + + /** + * Get highest worksheet row + * + * @return int Highest row number + */ + public function getHighestRow() + { + return $this->_cachedHighestRow; + } + + /** + * Get highest worksheet row that contains data + * + * @return string Highest row number that contains data + */ + public function getHighestDataRow() + { + return $this->_cellCollection->getHighestRow(); + } + + /** + * Get highest worksheet column and highest row that have cell records + * + * @return array Highest column name and highest row number + */ + public function getHighestRowAndColumn() + { + return $this->_cellCollection->getHighestRowAndColumn(); + } + + /** + * Set a cell value + * + * @param string $pCoordinate Coordinate of the cell + * @param mixed $pValue Value of the cell + * @param bool $returnCell Return the worksheet (false, default) or the cell (true) + * @return PHPExcel_Worksheet|PHPExcel_Cell Depending on the last parameter being specified + */ + public function setCellValue($pCoordinate = 'A1', $pValue = null, $returnCell = false) + { + $cell = $this->getCell($pCoordinate)->setValue($pValue); + return ($returnCell) ? $cell : $this; + } + + /** + * Set a cell value by using numeric cell coordinates + * + * @param string $pColumn Numeric column coordinate of the cell + * @param string $pRow Numeric row coordinate of the cell + * @param mixed $pValue Value of the cell + * @param bool $returnCell Return the worksheet (false, default) or the cell (true) + * @return PHPExcel_Worksheet|PHPExcel_Cell Depending on the last parameter being specified + */ + public function setCellValueByColumnAndRow($pColumn = 0, $pRow = 1, $pValue = null, $returnCell = false) + { + $cell = $this->getCell(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow)->setValue($pValue); + return ($returnCell) ? $cell : $this; + } + + /** + * Set a cell value + * + * @param string $pCoordinate Coordinate of the cell + * @param mixed $pValue Value of the cell + * @param string $pDataType Explicit data type + * @param bool $returnCell Return the worksheet (false, default) or the cell (true) + * @return PHPExcel_Worksheet|PHPExcel_Cell Depending on the last parameter being specified + */ + public function setCellValueExplicit($pCoordinate = 'A1', $pValue = null, $pDataType = PHPExcel_Cell_DataType::TYPE_STRING, $returnCell = false) + { + // Set value + $cell = $this->getCell($pCoordinate)->setValueExplicit($pValue, $pDataType); + return ($returnCell) ? $cell : $this; + } + + /** + * Set a cell value by using numeric cell coordinates + * + * @param string $pColumn Numeric column coordinate of the cell + * @param string $pRow Numeric row coordinate of the cell + * @param mixed $pValue Value of the cell + * @param string $pDataType Explicit data type + * @param bool $returnCell Return the worksheet (false, default) or the cell (true) + * @return PHPExcel_Worksheet|PHPExcel_Cell Depending on the last parameter being specified + */ + public function setCellValueExplicitByColumnAndRow($pColumn = 0, $pRow = 1, $pValue = null, $pDataType = PHPExcel_Cell_DataType::TYPE_STRING, $returnCell = false) + { + $cell = $this->getCell(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow)->setValueExplicit($pValue, $pDataType); + return ($returnCell) ? $cell : $this; + } + + /** + * Get cell at a specific coordinate + * + * @param string $pCoordinate Coordinate of the cell + * @throws Exception + * @return PHPExcel_Cell Cell that was found + */ + public function getCell($pCoordinate = 'A1') + { + // Check cell collection + if ($this->_cellCollection->isDataSet($pCoordinate)) { + return $this->_cellCollection->getCacheData($pCoordinate); + } + + // Worksheet reference? + if (strpos($pCoordinate, '!') !== false) { + $worksheetReference = PHPExcel_Worksheet::extractSheetTitle($pCoordinate, true); + return $this->getParent()->getSheetByName($worksheetReference[0])->getCell($worksheetReference[1]); + } + + // Named range? + if ((!preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_CELLREF.'$/i', $pCoordinate, $matches)) && + (preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_NAMEDRANGE.'$/i', $pCoordinate, $matches))) { + $namedRange = PHPExcel_NamedRange::resolveRange($pCoordinate, $this); + if ($namedRange !== NULL) { + $pCoordinate = $namedRange->getRange(); + return $namedRange->getWorksheet()->getCell($pCoordinate); + } + } + + // Uppercase coordinate + $pCoordinate = strtoupper($pCoordinate); + + if (strpos($pCoordinate,':') !== false || strpos($pCoordinate,',') !== false) { + throw new Exception('Cell coordinate can not be a range of cells.'); + } elseif (strpos($pCoordinate,'$') !== false) { + throw new Exception('Cell coordinate must not be absolute.'); + } else { + // Create new cell object + + // Coordinates + $aCoordinates = PHPExcel_Cell::coordinateFromString($pCoordinate); + + $cell = $this->_cellCollection->addCacheData($pCoordinate,new PHPExcel_Cell($aCoordinates[0], $aCoordinates[1], null, PHPExcel_Cell_DataType::TYPE_NULL, $this)); + $this->_cellCollectionIsSorted = false; + + if (PHPExcel_Cell::columnIndexFromString($this->_cachedHighestColumn) < PHPExcel_Cell::columnIndexFromString($aCoordinates[0])) + $this->_cachedHighestColumn = $aCoordinates[0]; + + $this->_cachedHighestRow = max($this->_cachedHighestRow,$aCoordinates[1]); + + // Cell needs appropriate xfIndex + $rowDimensions = $this->getRowDimensions(); + $columnDimensions = $this->getColumnDimensions(); + + if ( isset($rowDimensions[$aCoordinates[1]]) && $rowDimensions[$aCoordinates[1]]->getXfIndex() !== null ) { + // then there is a row dimension with explicit style, assign it to the cell + $cell->setXfIndex($rowDimensions[$aCoordinates[1]]->getXfIndex()); + } else if ( isset($columnDimensions[$aCoordinates[0]]) ) { + // then there is a column dimension, assign it to the cell + $cell->setXfIndex($columnDimensions[$aCoordinates[0]]->getXfIndex()); + } else { + // set to default index + $cell->setXfIndex(0); + } + + return $cell; + } + } + + /** + * Get cell at a specific coordinate by using numeric cell coordinates + * + * @param string $pColumn Numeric column coordinate of the cell + * @param string $pRow Numeric row coordinate of the cell + * @return PHPExcel_Cell Cell that was found + */ + public function getCellByColumnAndRow($pColumn = 0, $pRow = 1) + { + $columnLetter = PHPExcel_Cell::stringFromColumnIndex($pColumn); + $coordinate = $columnLetter . $pRow; + + if (!$this->_cellCollection->isDataSet($coordinate)) { + $cell = $this->_cellCollection->addCacheData($coordinate, new PHPExcel_Cell($columnLetter, $pRow, null, PHPExcel_Cell_DataType::TYPE_NULL, $this)); + $this->_cellCollectionIsSorted = false; + + if (PHPExcel_Cell::columnIndexFromString($this->_cachedHighestColumn) < $pColumn) + $this->_cachedHighestColumn = $columnLetter; + + $this->_cachedHighestRow = max($this->_cachedHighestRow,$pRow); + + return $cell; + } + + return $this->_cellCollection->getCacheData($coordinate); + } + + /** + * Cell at a specific coordinate exists? + * + * @param string $pCoordinate Coordinate of the cell + * @throws Exception + * @return boolean + */ + public function cellExists($pCoordinate = 'A1') + { + // Worksheet reference? + if (strpos($pCoordinate, '!') !== false) { + $worksheetReference = PHPExcel_Worksheet::extractSheetTitle($pCoordinate, true); + return $this->getParent()->getSheetByName($worksheetReference[0])->cellExists($worksheetReference[1]); + } + + // Named range? + if ((!preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_CELLREF.'$/i', $pCoordinate, $matches)) && + (preg_match('/^'.PHPExcel_Calculation::CALCULATION_REGEXP_NAMEDRANGE.'$/i', $pCoordinate, $matches))) { + $namedRange = PHPExcel_NamedRange::resolveRange($pCoordinate, $this); + if ($namedRange !== NULL) { + $pCoordinate = $namedRange->getRange(); + if ($this->getHashCode() != $namedRange->getWorksheet()->getHashCode()) { + if (!$namedRange->getLocalOnly()) { + return $namedRange->getWorksheet()->cellExists($pCoordinate); + } else { + throw new Exception('Named range ' . $namedRange->getName() . ' is not accessible from within sheet ' . $this->getTitle()); + } + } + } + } + + // Uppercase coordinate + $pCoordinate = strtoupper($pCoordinate); + + if (strpos($pCoordinate,':') !== false || strpos($pCoordinate,',') !== false) { + throw new Exception('Cell coordinate can not be a range of cells.'); + } elseif (strpos($pCoordinate,'$') !== false) { + throw new Exception('Cell coordinate must not be absolute.'); + } else { + // Coordinates + $aCoordinates = PHPExcel_Cell::coordinateFromString($pCoordinate); + + // Cell exists? + return $this->_cellCollection->isDataSet($pCoordinate); + } + } + + /** + * Cell at a specific coordinate by using numeric cell coordinates exists? + * + * @param string $pColumn Numeric column coordinate of the cell + * @param string $pRow Numeric row coordinate of the cell + * @return boolean + */ + public function cellExistsByColumnAndRow($pColumn = 0, $pRow = 1) + { + return $this->cellExists(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow); + } + + /** + * Get row dimension at a specific row + * + * @param int $pRow Numeric index of the row + * @return PHPExcel_Worksheet_RowDimension + */ + public function getRowDimension($pRow = 1) + { + // Found + $found = null; + + // Get row dimension + if (!isset($this->_rowDimensions[$pRow])) { + $this->_rowDimensions[$pRow] = new PHPExcel_Worksheet_RowDimension($pRow); + + $this->_cachedHighestRow = max($this->_cachedHighestRow,$pRow); + } + return $this->_rowDimensions[$pRow]; + } + + /** + * Get column dimension at a specific column + * + * @param string $pColumn String index of the column + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function getColumnDimension($pColumn = 'A') + { + // Uppercase coordinate + $pColumn = strtoupper($pColumn); + + // Fetch dimensions + if (!isset($this->_columnDimensions[$pColumn])) { + $this->_columnDimensions[$pColumn] = new PHPExcel_Worksheet_ColumnDimension($pColumn); + + if (PHPExcel_Cell::columnIndexFromString($this->_cachedHighestColumn) < PHPExcel_Cell::columnIndexFromString($pColumn)) + $this->_cachedHighestColumn = $pColumn; + } + return $this->_columnDimensions[$pColumn]; + } + + /** + * Get column dimension at a specific column by using numeric cell coordinates + * + * @param string $pColumn Numeric column coordinate of the cell + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function getColumnDimensionByColumn($pColumn = 0) + { + return $this->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($pColumn)); + } + + /** + * Get styles + * + * @return PHPExcel_Style[] + */ + public function getStyles() + { + return $this->_styles; + } + + /** + * Get default style of workbork. + * + * @deprecated + * @return PHPExcel_Style + * @throws Exception + */ + public function getDefaultStyle() + { + return $this->_parent->getDefaultStyle(); + } + + /** + * Set default style - should only be used by PHPExcel_IReader implementations! + * + * @deprecated + * @param PHPExcel_Style $pValue + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function setDefaultStyle(PHPExcel_Style $pValue) + { + $this->_parent->getDefaultStyle()->applyFromArray(array( + 'font' => array( + 'name' => $pValue->getFont()->getName(), + 'size' => $pValue->getFont()->getSize(), + ), + )); + return $this; + } + + /** + * Get style for cell + * + * @param string $pCellCoordinate Cell coordinate to get style for + * @return PHPExcel_Style + * @throws Exception + */ + public function getStyle($pCellCoordinate = 'A1') + { + // set this sheet as active + $this->_parent->setActiveSheetIndex($this->_parent->getIndex($this)); + + // set cell coordinate as active + $this->setSelectedCells($pCellCoordinate); + + return $this->_parent->getCellXfSupervisor(); + } + + /** + * Get conditional styles for a cell + * + * @param string $pCoordinate + * @return PHPExcel_Style_Conditional[] + */ + public function getConditionalStyles($pCoordinate = 'A1') + { + if (!isset($this->_conditionalStylesCollection[$pCoordinate])) { + $this->_conditionalStylesCollection[$pCoordinate] = array(); + } + return $this->_conditionalStylesCollection[$pCoordinate]; + } + + /** + * Do conditional styles exist for this cell? + * + * @param string $pCoordinate + * @return boolean + */ + public function conditionalStylesExists($pCoordinate = 'A1') + { + if (isset($this->_conditionalStylesCollection[$pCoordinate])) { + return true; + } + return false; + } + + /** + * Removes conditional styles for a cell + * + * @param string $pCoordinate + * @return PHPExcel_Worksheet + */ + public function removeConditionalStyles($pCoordinate = 'A1') + { + unset($this->_conditionalStylesCollection[$pCoordinate]); + return $this; + } + + /** + * Get collection of conditional styles + * + * @return array + */ + public function getConditionalStylesCollection() + { + return $this->_conditionalStylesCollection; + } + + /** + * Set conditional styles + * + * @param $pCoordinate string E.g. 'A1' + * @param $pValue PHPExcel_Style_Conditional[] + * @return PHPExcel_Worksheet + */ + public function setConditionalStyles($pCoordinate = 'A1', $pValue) + { + $this->_conditionalStylesCollection[$pCoordinate] = $pValue; + return $this; + } + + /** + * Get style for cell by using numeric cell coordinates + * + * @param int $pColumn Numeric column coordinate of the cell + * @param int $pRow Numeric row coordinate of the cell + * @return PHPExcel_Style + */ + public function getStyleByColumnAndRow($pColumn = 0, $pRow = 1) + { + return $this->getStyle(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow); + } + + /** + * Set shared cell style to a range of cells + * + * Please note that this will overwrite existing cell styles for cells in range! + * + * @deprecated + * @param PHPExcel_Style $pSharedCellStyle Cell style to share + * @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1") + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function setSharedStyle(PHPExcel_Style $pSharedCellStyle = null, $pRange = '') + { + $this->duplicateStyle($pSharedCellStyle, $pRange); + return $this; + } + + /** + * Duplicate cell style to a range of cells + * + * Please note that this will overwrite existing cell styles for cells in range! + * + * @param PHPExcel_Style $pCellStyle Cell style to duplicate + * @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1") + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function duplicateStyle(PHPExcel_Style $pCellStyle = null, $pRange = '') + { + // make sure we have a real style and not supervisor + $style = $pCellStyle->getIsSupervisor() ? $pCellStyle->getSharedComponent() : $pCellStyle; + + // Add the style to the workbook if necessary + $workbook = $this->_parent; + if ($existingStyle = $this->_parent->getCellXfByHashCode($pCellStyle->getHashCode())) { + // there is already such cell Xf in our collection + $xfIndex = $existingStyle->getIndex(); + } else { + // we don't have such a cell Xf, need to add + $workbook->addCellXf($pCellStyle); + $xfIndex = $pCellStyle->getIndex(); + } + + // Uppercase coordinate + $pRange = strtoupper($pRange); + + // Is it a cell range or a single cell? + $rangeA = ''; + $rangeB = ''; + if (strpos($pRange, ':') === false) { + $rangeA = $pRange; + $rangeB = $pRange; + } else { + list($rangeA, $rangeB) = explode(':', $pRange); + } + + // Calculate range outer borders + $rangeStart = PHPExcel_Cell::coordinateFromString($rangeA); + $rangeEnd = PHPExcel_Cell::coordinateFromString($rangeB); + + // Translate column into index + $rangeStart[0] = PHPExcel_Cell::columnIndexFromString($rangeStart[0]) - 1; + $rangeEnd[0] = PHPExcel_Cell::columnIndexFromString($rangeEnd[0]) - 1; + + // Make sure we can loop upwards on rows and columns + if ($rangeStart[0] > $rangeEnd[0] && $rangeStart[1] > $rangeEnd[1]) { + $tmp = $rangeStart; + $rangeStart = $rangeEnd; + $rangeEnd = $tmp; + } + + // Loop through cells and apply styles + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + $this->getCell(PHPExcel_Cell::stringFromColumnIndex($col) . $row)->setXfIndex($xfIndex); + } + } + + return $this; + } + + /** + * Duplicate conditional style to a range of cells + * + * Please note that this will overwrite existing cell styles for cells in range! + * + * @param array of PHPExcel_Style_Conditional $pCellStyle Cell style to duplicate + * @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1") + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function duplicateConditionalStyle(array $pCellStyle = null, $pRange = '') + { + foreach($pCellStyle as $cellStyle) { + if (!is_a($cellStyle,'PHPExcel_Style_Conditional')) { + throw new Exception('Style is not a conditional style'); + } + } + + // Uppercase coordinate + $pRange = strtoupper($pRange); + + // Is it a cell range or a single cell? + $rangeA = ''; + $rangeB = ''; + if (strpos($pRange, ':') === false) { + $rangeA = $pRange; + $rangeB = $pRange; + } else { + list($rangeA, $rangeB) = explode(':', $pRange); + } + + // Calculate range outer borders + $rangeStart = PHPExcel_Cell::coordinateFromString($rangeA); + $rangeEnd = PHPExcel_Cell::coordinateFromString($rangeB); + + // Translate column into index + $rangeStart[0] = PHPExcel_Cell::columnIndexFromString($rangeStart[0]) - 1; + $rangeEnd[0] = PHPExcel_Cell::columnIndexFromString($rangeEnd[0]) - 1; + + // Make sure we can loop upwards on rows and columns + if ($rangeStart[0] > $rangeEnd[0] && $rangeStart[1] > $rangeEnd[1]) { + $tmp = $rangeStart; + $rangeStart = $rangeEnd; + $rangeEnd = $tmp; + } + + // Loop through cells and apply styles + for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) { + for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) { + $this->setConditionalStyles(PHPExcel_Cell::stringFromColumnIndex($col) . $row, $pCellStyle); + } + } + + return $this; + } + + /** + * Duplicate cell style array to a range of cells + * + * Please note that this will overwrite existing cell styles for cells in range, + * if they are in the styles array. For example, if you decide to set a range of + * cells to font bold, only include font bold in the styles array. + * + * @deprecated + * @param array $pStyles Array containing style information + * @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1") + * @param boolean $pAdvanced Advanced mode for setting borders. + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function duplicateStyleArray($pStyles = null, $pRange = '', $pAdvanced = true) + { + $this->getStyle($pRange)->applyFromArray($pStyles, $pAdvanced); + return $this; + } + + /** + * Set break on a cell + * + * @param string $pCell Cell coordinate (e.g. A1) + * @param int $pBreak Break type (type of PHPExcel_Worksheet::BREAK_*) + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function setBreak($pCell = 'A1', $pBreak = PHPExcel_Worksheet::BREAK_NONE) + { + // Uppercase coordinate + $pCell = strtoupper($pCell); + + if ($pCell != '') { + $this->_breaks[$pCell] = $pBreak; + } else { + throw new Exception('No cell coordinate specified.'); + } + + return $this; + } + + /** + * Set break on a cell by using numeric cell coordinates + * + * @param integer $pColumn Numeric column coordinate of the cell + * @param integer $pRow Numeric row coordinate of the cell + * @param integer $pBreak Break type (type of PHPExcel_Worksheet::BREAK_*) + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function setBreakByColumnAndRow($pColumn = 0, $pRow = 1, $pBreak = PHPExcel_Worksheet::BREAK_NONE) + { + return $this->setBreak(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow, $pBreak); + } + + /** + * Get breaks + * + * @return array[] + */ + public function getBreaks() + { + return $this->_breaks; + } + + /** + * Set merge on a cell range + * + * @param string $pRange Cell range (e.g. A1:E1) + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function mergeCells($pRange = 'A1:A1') + { + // Uppercase coordinate + $pRange = strtoupper($pRange); + + if (strpos($pRange,':') !== false) { + $this->_mergeCells[$pRange] = $pRange; + + // make sure cells are created + + // get the cells in the range + $aReferences = PHPExcel_Cell::extractAllCellReferencesInRange($pRange); + + // create upper left cell if it does not already exist + $upperLeft = $aReferences[0]; + if (!$this->cellExists($upperLeft)) { + $this->getCell($upperLeft)->setValueExplicit(null, PHPExcel_Cell_DataType::TYPE_NULL); + } + + // create or blank out the rest of the cells in the range + $count = count($aReferences); + for ($i = 1; $i < $count; $i++) { + $this->getCell($aReferences[$i])->setValueExplicit(null, PHPExcel_Cell_DataType::TYPE_NULL); + } + + } else { + throw new Exception('Merge must be set on a range of cells.'); + } + + return $this; + } + + /** + * Set merge on a cell range by using numeric cell coordinates + * + * @param int $pColumn1 Numeric column coordinate of the first cell + * @param int $pRow1 Numeric row coordinate of the first cell + * @param int $pColumn2 Numeric column coordinate of the last cell + * @param int $pRow2 Numeric row coordinate of the last cell + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function mergeCellsByColumnAndRow($pColumn1 = 0, $pRow1 = 1, $pColumn2 = 0, $pRow2 = 1) + { + $cellRange = PHPExcel_Cell::stringFromColumnIndex($pColumn1) . $pRow1 . ':' . PHPExcel_Cell::stringFromColumnIndex($pColumn2) . $pRow2; + return $this->mergeCells($cellRange); + } + + /** + * Remove merge on a cell range + * + * @param string $pRange Cell range (e.g. A1:E1) + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function unmergeCells($pRange = 'A1:A1') + { + // Uppercase coordinate + $pRange = strtoupper($pRange); + + if (strpos($pRange,':') !== false) { + if (isset($this->_mergeCells[$pRange])) { + unset($this->_mergeCells[$pRange]); + } else { + throw new Exception('Cell range ' . $pRange . ' not known as merged.'); + } + } else { + throw new Exception('Merge can only be removed from a range of cells.'); + } + + return $this; + } + + /** + * Remove merge on a cell range by using numeric cell coordinates + * + * @param int $pColumn1 Numeric column coordinate of the first cell + * @param int $pRow1 Numeric row coordinate of the first cell + * @param int $pColumn2 Numeric column coordinate of the last cell + * @param int $pRow2 Numeric row coordinate of the last cell + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function unmergeCellsByColumnAndRow($pColumn1 = 0, $pRow1 = 1, $pColumn2 = 0, $pRow2 = 1) + { + $cellRange = PHPExcel_Cell::stringFromColumnIndex($pColumn1) . $pRow1 . ':' . PHPExcel_Cell::stringFromColumnIndex($pColumn2) . $pRow2; + return $this->unmergeCells($cellRange); + } + + /** + * Get merge cells array. + * + * @return array[] + */ + public function getMergeCells() + { + return $this->_mergeCells; + } + + /** + * Set merge cells array for the entire sheet. Use instead mergeCells() to merge + * a single cell range. + * + * @param array + */ + public function setMergeCells($pValue = array()) + { + $this->_mergeCells = $pValue; + + return $this; + } + + /** + * Set protection on a cell range + * + * @param string $pRange Cell (e.g. A1) or cell range (e.g. A1:E1) + * @param string $pPassword Password to unlock the protection + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function protectCells($pRange = 'A1', $pPassword = '', $pAlreadyHashed = false) + { + // Uppercase coordinate + $pRange = strtoupper($pRange); + + if (!$pAlreadyHashed) { + $pPassword = PHPExcel_Shared_PasswordHasher::hashPassword($pPassword); + } + $this->_protectedCells[$pRange] = $pPassword; + + return $this; + } + + /** + * Set protection on a cell range by using numeric cell coordinates + * + * @param int $pColumn1 Numeric column coordinate of the first cell + * @param int $pRow1 Numeric row coordinate of the first cell + * @param int $pColumn2 Numeric column coordinate of the last cell + * @param int $pRow2 Numeric row coordinate of the last cell + * @param string $pPassword Password to unlock the protection + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function protectCellsByColumnAndRow($pColumn1 = 0, $pRow1 = 1, $pColumn2 = 0, $pRow2 = 1, $pPassword = '', $pAlreadyHashed = false) + { + $cellRange = PHPExcel_Cell::stringFromColumnIndex($pColumn1) . $pRow1 . ':' . PHPExcel_Cell::stringFromColumnIndex($pColumn2) . $pRow2; + return $this->protectCells($cellRange, $pPassword, $pAlreadyHashed); + } + + /** + * Remove protection on a cell range + * + * @param string $pRange Cell (e.g. A1) or cell range (e.g. A1:E1) + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function unprotectCells($pRange = 'A1') + { + // Uppercase coordinate + $pRange = strtoupper($pRange); + + if (isset($this->_protectedCells[$pRange])) { + unset($this->_protectedCells[$pRange]); + } else { + throw new Exception('Cell range ' . $pRange . ' not known as protected.'); + } + return $this; + } + + /** + * Remove protection on a cell range by using numeric cell coordinates + * + * @param int $pColumn1 Numeric column coordinate of the first cell + * @param int $pRow1 Numeric row coordinate of the first cell + * @param int $pColumn2 Numeric column coordinate of the last cell + * @param int $pRow2 Numeric row coordinate of the last cell + * @param string $pPassword Password to unlock the protection + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function unprotectCellsByColumnAndRow($pColumn1 = 0, $pRow1 = 1, $pColumn2 = 0, $pRow2 = 1, $pPassword = '', $pAlreadyHashed = false) + { + $cellRange = PHPExcel_Cell::stringFromColumnIndex($pColumn1) . $pRow1 . ':' . PHPExcel_Cell::stringFromColumnIndex($pColumn2) . $pRow2; + return $this->unprotectCells($cellRange, $pPassword, $pAlreadyHashed); + } + + /** + * Get protected cells + * + * @return array[] + */ + public function getProtectedCells() + { + return $this->_protectedCells; + } + + /** + * Get Autofilter + * + * @return PHPExcel_Worksheet_AutoFilter + */ + public function getAutoFilter() + { + return $this->_autoFilter; + } + + /** + * Set AutoFilter + * + * @param PHPExcel_Worksheet_AutoFilter|string $pValue + * A simple string containing a Cell range like 'A1:E10' is permitted for backward compatibility + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function setAutoFilter($pValue) + { + if (is_string($pValue)) { + $this->_autoFilter->setRange($pValue); + } elseif(is_object($pValue) && ($pValue instanceof PHPExcel_Worksheet_AutoFilter)) { + $this->_autoFilter = $pValue; + } + return $this; + } + + /** + * Set Autofilter Range by using numeric cell coordinates + * + * @param int $pColumn1 Numeric column coordinate of the first cell + * @param int $pRow1 Numeric row coordinate of the first cell + * @param int $pColumn2 Numeric column coordinate of the second cell + * @param int $pRow2 Numeric row coordinate of the second cell + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function setAutoFilterByColumnAndRow($pColumn1 = 0, $pRow1 = 1, $pColumn2 = 0, $pRow2 = 1) + { + return $this->setAutoFilter( + PHPExcel_Cell::stringFromColumnIndex($pColumn1) . $pRow1 + . ':' . + PHPExcel_Cell::stringFromColumnIndex($pColumn2) . $pRow2 + ); + } + + /** + * Remove autofilter + * + * @return PHPExcel_Worksheet + */ + public function removeAutoFilter() + { + $this->_autoFilter->setRange(NULL); + return $this; + } + + /** + * Get Freeze Pane + * + * @return string + */ + public function getFreezePane() + { + return $this->_freezePane; + } + + /** + * Freeze Pane + * + * @param string $pCell Cell (i.e. A2) + * Examples: + * A2 will freeze the rows above cell A2 (i.e row 1) + * B1 will freeze the columns to the left of cell B1 (i.e column A) + * B2 will freeze the rows above and to the left of cell A2 + * (i.e row 1 and column A) + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function freezePane($pCell = '') + { + // Uppercase coordinate + $pCell = strtoupper($pCell); + + if (strpos($pCell,':') === false && strpos($pCell,',') === false) { + $this->_freezePane = $pCell; + } else { + throw new Exception('Freeze pane can not be set on a range of cells.'); + } + return $this; + } + + /** + * Freeze Pane by using numeric cell coordinates + * + * @param int $pColumn Numeric column coordinate of the cell + * @param int $pRow Numeric row coordinate of the cell + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function freezePaneByColumnAndRow($pColumn = 0, $pRow = 1) + { + return $this->freezePane(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow); + } + + /** + * Unfreeze Pane + * + * @return PHPExcel_Worksheet + */ + public function unfreezePane() + { + return $this->freezePane(''); + } + + /** + * Insert a new row, updating all possible related data + * + * @param int $pBefore Insert before this one + * @param int $pNumRows Number of rows to insert + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function insertNewRowBefore($pBefore = 1, $pNumRows = 1) { + if ($pBefore >= 1) { + $objReferenceHelper = PHPExcel_ReferenceHelper::getInstance(); + $objReferenceHelper->insertNewBefore('A' . $pBefore, 0, $pNumRows, $this); + } else { + throw new Exception("Rows can only be inserted before at least row 1."); + } + return $this; + } + + /** + * Insert a new column, updating all possible related data + * + * @param int $pBefore Insert before this one + * @param int $pNumCols Number of columns to insert + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function insertNewColumnBefore($pBefore = 'A', $pNumCols = 1) { + if (!is_numeric($pBefore)) { + $objReferenceHelper = PHPExcel_ReferenceHelper::getInstance(); + $objReferenceHelper->insertNewBefore($pBefore . '1', $pNumCols, 0, $this); + } else { + throw new Exception("Column references should not be numeric."); + } + return $this; + } + + /** + * Insert a new column, updating all possible related data + * + * @param int $pBefore Insert before this one (numeric column coordinate of the cell) + * @param int $pNumCols Number of columns to insert + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function insertNewColumnBeforeByIndex($pBefore = 0, $pNumCols = 1) { + if ($pBefore >= 0) { + return $this->insertNewColumnBefore(PHPExcel_Cell::stringFromColumnIndex($pBefore), $pNumCols); + } else { + throw new Exception("Columns can only be inserted before at least column A (0)."); + } + } + + /** + * Delete a row, updating all possible related data + * + * @param int $pRow Remove starting with this one + * @param int $pNumRows Number of rows to remove + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function removeRow($pRow = 1, $pNumRows = 1) { + if ($pRow >= 1) { + $objReferenceHelper = PHPExcel_ReferenceHelper::getInstance(); + $objReferenceHelper->insertNewBefore('A' . ($pRow + $pNumRows), 0, -$pNumRows, $this); + } else { + throw new Exception("Rows to be deleted should at least start from row 1."); + } + return $this; + } + + /** + * Remove a column, updating all possible related data + * + * @param int $pColumn Remove starting with this one + * @param int $pNumCols Number of columns to remove + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function removeColumn($pColumn = 'A', $pNumCols = 1) { + if (!is_numeric($pColumn)) { + $pColumn = PHPExcel_Cell::stringFromColumnIndex(PHPExcel_Cell::columnIndexFromString($pColumn) - 1 + $pNumCols); + $objReferenceHelper = PHPExcel_ReferenceHelper::getInstance(); + $objReferenceHelper->insertNewBefore($pColumn . '1', -$pNumCols, 0, $this); + } else { + throw new Exception("Column references should not be numeric."); + } + return $this; + } + + /** + * Remove a column, updating all possible related data + * + * @param int $pColumn Remove starting with this one (numeric column coordinate of the cell) + * @param int $pNumCols Number of columns to remove + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function removeColumnByIndex($pColumn = 0, $pNumCols = 1) { + if ($pColumn >= 0) { + return $this->removeColumn(PHPExcel_Cell::stringFromColumnIndex($pColumn), $pNumCols); + } else { + throw new Exception("Columns to be deleted should at least start from column 0"); + } + } + + /** + * Show gridlines? + * + * @return boolean + */ + public function getShowGridlines() { + return $this->_showGridlines; + } + + /** + * Set show gridlines + * + * @param boolean $pValue Show gridlines (true/false) + * @return PHPExcel_Worksheet + */ + public function setShowGridlines($pValue = false) { + $this->_showGridlines = $pValue; + return $this; + } + + /** + * Print gridlines? + * + * @return boolean + */ + public function getPrintGridlines() { + return $this->_printGridlines; + } + + /** + * Set print gridlines + * + * @param boolean $pValue Print gridlines (true/false) + * @return PHPExcel_Worksheet + */ + public function setPrintGridlines($pValue = false) { + $this->_printGridlines = $pValue; + return $this; + } + + /** + * Show row and column headers? + * + * @return boolean + */ + public function getShowRowColHeaders() { + return $this->_showRowColHeaders; + } + + /** + * Set show row and column headers + * + * @param boolean $pValue Show row and column headers (true/false) + * @return PHPExcel_Worksheet + */ + public function setShowRowColHeaders($pValue = false) { + $this->_showRowColHeaders = $pValue; + return $this; + } + + /** + * Show summary below? (Row/Column outlining) + * + * @return boolean + */ + public function getShowSummaryBelow() { + return $this->_showSummaryBelow; + } + + /** + * Set show summary below + * + * @param boolean $pValue Show summary below (true/false) + * @return PHPExcel_Worksheet + */ + public function setShowSummaryBelow($pValue = true) { + $this->_showSummaryBelow = $pValue; + return $this; + } + + /** + * Show summary right? (Row/Column outlining) + * + * @return boolean + */ + public function getShowSummaryRight() { + return $this->_showSummaryRight; + } + + /** + * Set show summary right + * + * @param boolean $pValue Show summary right (true/false) + * @return PHPExcel_Worksheet + */ + public function setShowSummaryRight($pValue = true) { + $this->_showSummaryRight = $pValue; + return $this; + } + + /** + * Get comments + * + * @return PHPExcel_Comment[] + */ + public function getComments() + { + return $this->_comments; + } + + /** + * Set comments array for the entire sheet. + * + * @param array of PHPExcel_Comment + * @return PHPExcel_Worksheet + */ + public function setComments($pValue = array()) + { + $this->_comments = $pValue; + + return $this; + } + + /** + * Get comment for cell + * + * @param string $pCellCoordinate Cell coordinate to get comment for + * @return PHPExcel_Comment + * @throws Exception + */ + public function getComment($pCellCoordinate = 'A1') + { + // Uppercase coordinate + $pCellCoordinate = strtoupper($pCellCoordinate); + + if (strpos($pCellCoordinate,':') !== false || strpos($pCellCoordinate,',') !== false) { + throw new Exception('Cell coordinate string can not be a range of cells.'); + } else if (strpos($pCellCoordinate,'$') !== false) { + throw new Exception('Cell coordinate string must not be absolute.'); + } else if ($pCellCoordinate == '') { + throw new Exception('Cell coordinate can not be zero-length string.'); + } else { + // Check if we already have a comment for this cell. + // If not, create a new comment. + if (isset($this->_comments[$pCellCoordinate])) { + return $this->_comments[$pCellCoordinate]; + } else { + $newComment = new PHPExcel_Comment(); + $this->_comments[$pCellCoordinate] = $newComment; + return $newComment; + } + } + } + + /** + * Get comment for cell by using numeric cell coordinates + * + * @param int $pColumn Numeric column coordinate of the cell + * @param int $pRow Numeric row coordinate of the cell + * @return PHPExcel_Comment + */ + public function getCommentByColumnAndRow($pColumn = 0, $pRow = 1) + { + return $this->getComment(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow); + } + + /** + * Get selected cell + * + * @deprecated + * @return string + */ + public function getSelectedCell() + { + return $this->getSelectedCells(); + } + + /** + * Get active cell + * + * @return string Example: 'A1' + */ + public function getActiveCell() + { + return $this->_activeCell; + } + + /** + * Get selected cells + * + * @return string + */ + public function getSelectedCells() + { + return $this->_selectedCells; + } + + /** + * Selected cell + * + * @param string $pCoordinate Cell (i.e. A1) + * @return PHPExcel_Worksheet + */ + public function setSelectedCell($pCoordinate = 'A1') + { + return $this->setSelectedCells($pCoordinate); + } + + /** + * Select a range of cells. + * + * @param string $pCoordinate Cell range, examples: 'A1', 'B2:G5', 'A:C', '3:6' + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function setSelectedCells($pCoordinate = 'A1') + { + // Uppercase coordinate + $pCoordinate = strtoupper($pCoordinate); + + // Convert 'A' to 'A:A' + $pCoordinate = preg_replace('/^([A-Z]+)$/', '${1}:${1}', $pCoordinate); + + // Convert '1' to '1:1' + $pCoordinate = preg_replace('/^([0-9]+)$/', '${1}:${1}', $pCoordinate); + + // Convert 'A:C' to 'A1:C1048576' + $pCoordinate = preg_replace('/^([A-Z]+):([A-Z]+)$/', '${1}1:${2}1048576', $pCoordinate); + + // Convert '1:3' to 'A1:XFD3' + $pCoordinate = preg_replace('/^([0-9]+):([0-9]+)$/', 'A${1}:XFD${2}', $pCoordinate); + + if (strpos($pCoordinate,':') !== false || strpos($pCoordinate,',') !== false) { + list($first, ) = PHPExcel_Cell::splitRange($pCoordinate); + $this->_activeCell = $first[0]; + } else { + $this->_activeCell = $pCoordinate; + } + $this->_selectedCells = $pCoordinate; + return $this; + } + + /** + * Selected cell by using numeric cell coordinates + * + * @param int $pColumn Numeric column coordinate of the cell + * @param int $pRow Numeric row coordinate of the cell + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function setSelectedCellByColumnAndRow($pColumn = 0, $pRow = 1) + { + return $this->setSelectedCells(PHPExcel_Cell::stringFromColumnIndex($pColumn) . $pRow); + } + + /** + * Get right-to-left + * + * @return boolean + */ + public function getRightToLeft() { + return $this->_rightToLeft; + } + + /** + * Set right-to-left + * + * @param boolean $value Right-to-left true/false + * @return PHPExcel_Worksheet + */ + public function setRightToLeft($value = false) { + $this->_rightToLeft = $value; + return $this; + } + + /** + * Fill worksheet from values in array + * + * @param array $source Source array + * @param mixed $nullValue Value in source array that stands for blank cell + * @param string $startCell Insert array starting from this cell address as the top left coordinate + * @param boolean $strictNullComparison Apply strict comparison when testing for null values in the array + * @throws Exception + * @return PHPExcel_Worksheet + */ + public function fromArray($source = null, $nullValue = null, $startCell = 'A1', $strictNullComparison = false) { + if (is_array($source)) { + // Convert a 1-D array to 2-D (for ease of looping) + if (!is_array(end($source))) { + $source = array($source); + } + + // start coordinate + list ($startColumn, $startRow) = PHPExcel_Cell::coordinateFromString($startCell); + + // Loop through $source + foreach ($source as $rowData) { + $currentColumn = $startColumn; + foreach($rowData as $cellValue) { + if ($strictNullComparison) { + if ($cellValue !== $nullValue) { + // Set cell value + $this->getCell($currentColumn . $startRow)->setValue($cellValue); + } + } else { + if ($cellValue != $nullValue) { + // Set cell value + $this->getCell($currentColumn . $startRow)->setValue($cellValue); + } + } + ++$currentColumn; + } + ++$startRow; + } + } else { + throw new Exception("Parameter \$source should be an array."); + } + return $this; + } + + /** + * Create array from a range of cells + * + * @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1") + * @param mixed $nullValue Value returned in the array entry if a cell doesn't exist + * @param boolean $calculateFormulas Should formulas be calculated? + * @param boolean $formatData Should formatting be applied to cell values? + * @param boolean $returnCellRef False - Return a simple array of rows and columns indexed by number counting from zero + * True - Return rows and columns indexed by their actual row and column IDs + * @return array + */ + public function rangeToArray($pRange = 'A1', $nullValue = null, $calculateFormulas = true, $formatData = true, $returnCellRef = false) { + // Returnvalue + $returnValue = array(); + + // Identify the range that we need to extract from the worksheet + list($rangeStart, $rangeEnd) = PHPExcel_Cell::rangeBoundaries($pRange); + $minCol = PHPExcel_Cell::stringFromColumnIndex($rangeStart[0] -1); + $minRow = $rangeStart[1]; + $maxCol = PHPExcel_Cell::stringFromColumnIndex($rangeEnd[0] -1); + $maxRow = $rangeEnd[1]; + + $maxCol++; + + // Loop through rows + $r = -1; + for ($row = $minRow; $row <= $maxRow; ++$row) { + $rRef = ($returnCellRef) ? $row : ++$r; + $c = -1; + // Loop through columns in the current row + for ($col = $minCol; $col != $maxCol; ++$col) { + $cRef = ($returnCellRef) ? $col : ++$c; + // Using getCell() will create a new cell if it doesn't already exist. We don't want that to happen + // so we test and retrieve directly against _cellCollection + if ($this->_cellCollection->isDataSet($col.$row)) { + // Cell exists + $cell = $this->_cellCollection->getCacheData($col.$row); + if ($cell->getValue() !== null) { + if ($cell->getValue() instanceof PHPExcel_RichText) { + $returnValue[$rRef][$cRef] = $cell->getValue()->getPlainText(); + } else { + if ($calculateFormulas) { + $returnValue[$rRef][$cRef] = $cell->getCalculatedValue(); + } else { + $returnValue[$rRef][$cRef] = $cell->getValue(); + } + } + + if ($formatData) { + $style = $this->_parent->getCellXfByIndex($cell->getXfIndex()); + $returnValue[$rRef][$cRef] = PHPExcel_Style_NumberFormat::toFormattedString($returnValue[$rRef][$cRef], $style->getNumberFormat()->getFormatCode()); + } + } else { + // Cell holds a NULL + $returnValue[$rRef][$cRef] = $nullValue; + } + } else { + // Cell doesn't exist + $returnValue[$rRef][$cRef] = $nullValue; + } + } + } + + // Return + return $returnValue; + } + + + /** + * Create array from a range of cells + * + * @param string $pNamedRange Name of the Named Range + * @param mixed $nullValue Value returned in the array entry if a cell doesn't exist + * @param boolean $calculateFormulas Should formulas be calculated? + * @param boolean $formatData Should formatting be applied to cell values? + * @param boolean $returnCellRef False - Return a simple array of rows and columns indexed by number counting from zero + * True - Return rows and columns indexed by their actual row and column IDs + * @return array + * @throws Exception + */ + public function namedRangeToArray($pNamedRange = '', $nullValue = null, $calculateFormulas = true, $formatData = true, $returnCellRef = false) { + $namedRange = PHPExcel_NamedRange::resolveRange($pNamedRange, $this); + if ($namedRange !== NULL) { + $pWorkSheet = $namedRange->getWorksheet(); + $pCellRange = $namedRange->getRange(); + + return $pWorkSheet->rangeToArray( $pCellRange, + $nullValue, $calculateFormulas, $formatData, $returnCellRef); + } + + throw new Exception('Named Range '.$pNamedRange.' does not exist.'); + } + + + /** + * Create array from worksheet + * + * @param mixed $nullValue Value returned in the array entry if a cell doesn't exist + * @param boolean $calculateFormulas Should formulas be calculated? + * @param boolean $formatData Should formatting be applied to cell values? + * @param boolean $returnCellRef False - Return a simple array of rows and columns indexed by number counting from zero + * True - Return rows and columns indexed by their actual row and column IDs + * @return array + */ + public function toArray($nullValue = null, $calculateFormulas = true, $formatData = true, $returnCellRef = false) { + // Garbage collect... + $this->garbageCollect(); + + // Identify the range that we need to extract from the worksheet + $maxCol = $this->getHighestColumn(); + $maxRow = $this->getHighestRow(); + // Return + return $this->rangeToArray( 'A1:'.$maxCol.$maxRow, + $nullValue, $calculateFormulas, $formatData, $returnCellRef); + } + + /** + * Get row iterator + * + * @param integer $startRow The row number at which to start iterating + * @return PHPExcel_Worksheet_RowIterator + */ + public function getRowIterator($startRow = 1) { + return new PHPExcel_Worksheet_RowIterator($this,$startRow); + } + + /** + * Run PHPExcel garabage collector. + * + * @return PHPExcel_Worksheet + */ + public function garbageCollect() { + // Build a reference table from images +// $imageCoordinates = array(); +// $iterator = $this->getDrawingCollection()->getIterator(); +// while ($iterator->valid()) { +// $imageCoordinates[$iterator->current()->getCoordinates()] = true; +// +// $iterator->next(); +// } +// + // Lookup highest column and highest row if cells are cleaned + $colRow = $this->_cellCollection->getHighestRowAndColumn(); + $highestRow = $colRow['row']; + $highestColumn = PHPExcel_Cell::columnIndexFromString($colRow['column']); + + // Loop through column dimensions + foreach ($this->_columnDimensions as $dimension) { + $highestColumn = max($highestColumn,PHPExcel_Cell::columnIndexFromString($dimension->getColumnIndex())); + } + + // Loop through row dimensions + foreach ($this->_rowDimensions as $dimension) { + $highestRow = max($highestRow,$dimension->getRowIndex()); + } + + // Cache values + if ($highestColumn < 0) { + $this->_cachedHighestColumn = 'A'; + } else { + $this->_cachedHighestColumn = PHPExcel_Cell::stringFromColumnIndex(--$highestColumn); + } + $this->_cachedHighestRow = $highestRow; + + // Return + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + if ($this->_dirty) { + $this->_hash = md5( $this->_title . + $this->_autoFilter . + ($this->_protection->isProtectionEnabled() ? 't' : 'f') . + __CLASS__ + ); + $this->_dirty = false; + } + return $this->_hash; + } + + /** + * Extract worksheet title from range. + * + * Example: extractSheetTitle("testSheet!A1") ==> 'A1' + * Example: extractSheetTitle("'testSheet 1'!A1", true) ==> array('testSheet 1', 'A1'); + * + * @param string $pRange Range to extract title from + * @param bool $returnRange Return range? (see example) + * @return mixed + */ + public static function extractSheetTitle($pRange, $returnRange = false) { + // Sheet title included? + if (($sep = strpos($pRange, '!')) === false) { + return ''; + } + + if ($returnRange) { + return array( trim(substr($pRange, 0, $sep),"'"), + substr($pRange, $sep + 1) + ); + } + + return substr($pRange, $sep + 1); + } + + /** + * Get hyperlink + * + * @param string $pCellCoordinate Cell coordinate to get hyperlink for + */ + public function getHyperlink($pCellCoordinate = 'A1') + { + // return hyperlink if we already have one + if (isset($this->_hyperlinkCollection[$pCellCoordinate])) { + return $this->_hyperlinkCollection[$pCellCoordinate]; + } + + // else create hyperlink + $this->_hyperlinkCollection[$pCellCoordinate] = new PHPExcel_Cell_Hyperlink(); + return $this->_hyperlinkCollection[$pCellCoordinate]; + } + + /** + * Set hyperlnk + * + * @param string $pCellCoordinate Cell coordinate to insert hyperlink + * @param PHPExcel_Cell_Hyperlink $pHyperlink + * @return PHPExcel_Worksheet + */ + public function setHyperlink($pCellCoordinate = 'A1', PHPExcel_Cell_Hyperlink $pHyperlink = null) + { + if ($pHyperlink === null) { + unset($this->_hyperlinkCollection[$pCellCoordinate]); + } else { + $this->_hyperlinkCollection[$pCellCoordinate] = $pHyperlink; + } + return $this; + } + + /** + * Hyperlink at a specific coordinate exists? + * + * @param string $pCoordinate + * @return boolean + */ + public function hyperlinkExists($pCoordinate = 'A1') + { + return isset($this->_hyperlinkCollection[$pCoordinate]); + } + + /** + * Get collection of hyperlinks + * + * @return PHPExcel_Cell_Hyperlink[] + */ + public function getHyperlinkCollection() + { + return $this->_hyperlinkCollection; + } + + /** + * Get data validation + * + * @param string $pCellCoordinate Cell coordinate to get data validation for + */ + public function getDataValidation($pCellCoordinate = 'A1') + { + // return data validation if we already have one + if (isset($this->_dataValidationCollection[$pCellCoordinate])) { + return $this->_dataValidationCollection[$pCellCoordinate]; + } + + // else create data validation + $this->_dataValidationCollection[$pCellCoordinate] = new PHPExcel_Cell_DataValidation(); + return $this->_dataValidationCollection[$pCellCoordinate]; + } + + /** + * Set data validation + * + * @param string $pCellCoordinate Cell coordinate to insert data validation + * @param PHPExcel_Cell_DataValidation $pDataValidation + * @return PHPExcel_Worksheet + */ + public function setDataValidation($pCellCoordinate = 'A1', PHPExcel_Cell_DataValidation $pDataValidation = null) + { + if ($pDataValidation === null) { + unset($this->_dataValidationCollection[$pCellCoordinate]); + } else { + $this->_dataValidationCollection[$pCellCoordinate] = $pDataValidation; + } + return $this; + } + + /** + * Data validation at a specific coordinate exists? + * + * @param string $pCoordinate + * @return boolean + */ + public function dataValidationExists($pCoordinate = 'A1') + { + return isset($this->_dataValidationCollection[$pCoordinate]); + } + + /** + * Get collection of data validations + * + * @return PHPExcel_Cell_DataValidation[] + */ + public function getDataValidationCollection() + { + return $this->_dataValidationCollection; + } + + /** + * Accepts a range, returning it as a range that falls within the current highest row and column of the worksheet + * + * @param string $range + * @return string Adjusted range value + */ + public function shrinkRangeToFit($range) { + $maxCol = $this->getHighestColumn(); + $maxRow = $this->getHighestRow(); + $maxCol = PHPExcel_Cell::columnIndexFromString($maxCol); + + $rangeBlocks = explode(' ',$range); + foreach ($rangeBlocks as &$rangeSet) { + $rangeBoundaries = PHPExcel_Cell::getRangeBoundaries($rangeSet); + + if (PHPExcel_Cell::columnIndexFromString($rangeBoundaries[0][0]) > $maxCol) { $rangeBoundaries[0][0] = PHPExcel_Cell::stringFromColumnIndex($maxCol); } + if ($rangeBoundaries[0][1] > $maxRow) { $rangeBoundaries[0][1] = $maxRow; } + if (PHPExcel_Cell::columnIndexFromString($rangeBoundaries[1][0]) > $maxCol) { $rangeBoundaries[1][0] = PHPExcel_Cell::stringFromColumnIndex($maxCol); } + if ($rangeBoundaries[1][1] > $maxRow) { $rangeBoundaries[1][1] = $maxRow; } + $rangeSet = $rangeBoundaries[0][0].$rangeBoundaries[0][1].':'.$rangeBoundaries[1][0].$rangeBoundaries[1][1]; + } + unset($rangeSet); + $stRange = implode(' ',$rangeBlocks); + + return $stRange; + } + + + /** + * Get tab color + * + * @return PHPExcel_Style_Color + */ + public function getTabColor() + { + if ($this->_tabColor === NULL) + $this->_tabColor = new PHPExcel_Style_Color(); + + return $this->_tabColor; + } + + /** + * Reset tab color + * + * @return PHPExcel_Worksheet + */ + public function resetTabColor() + { + $this->_tabColor = null; + unset($this->_tabColor); + + return $this; + } + + /** + * Tab color set? + * + * @return boolean + */ + public function isTabColorSet() + { + return ($this->_tabColor !== NULL); + } + + /** + * Copy worksheet (!= clone!) + * + * @return PHPExcel_Worksheet + */ + public function copy() { + $copied = clone $this; + + return $copied; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + foreach ($this as $key => $val) { + if ($key == '_parent') { + continue; + } + + if (is_object($val) || (is_array($val))) { + if ($key == '_cellCollection') { + $newCollection = clone $this->_cellCollection; + $newCollection->copyCellCollection($this); + $this->_cellCollection = $newCollection; + } elseif ($key == '_drawingCollection') { + $newCollection = clone $this->_drawingCollection; + $this->_drawingCollection = $newCollection; + } elseif (($key == '_autoFilter') && (is_a($this->_autoFilter,'PHPExcel_Worksheet_AutoFilter'))) { + $newAutoFilter = clone $this->_autoFilter; + $this->_autoFilter = $newAutoFilter; + $this->_autoFilter->setParent($this); + } else { + $this->{$key} = unserialize(serialize($val)); + } + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter.php new file mode 100644 index 0000000..e6ea6f2 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter.php @@ -0,0 +1,855 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_AutoFilter + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_AutoFilter +{ + /** + * Autofilter Worksheet + * + * @var PHPExcel_Worksheet + */ + private $_workSheet = NULL; + + + /** + * Autofilter Range + * + * @var string + */ + private $_range = ''; + + + /** + * Autofilter Column Ruleset + * + * @var array of PHPExcel_Worksheet_AutoFilter_Column + */ + private $_columns = array(); + + + /** + * Create a new PHPExcel_Worksheet_AutoFilter + */ + public function __construct($pRange = '', PHPExcel_Worksheet $pSheet = NULL) + { + $this->_range = $pRange; + $this->_workSheet = $pSheet; + } + + /** + * Get AutoFilter Parent Worksheet + * + * @return PHPExcel_Worksheet + */ + public function getParent() { + return $this->_workSheet; + } + + /** + * Set AutoFilter Parent Worksheet + * + * @param PHPExcel_Worksheet + * @return PHPExcel_Worksheet_AutoFilter + */ + public function setParent(PHPExcel_Worksheet $pSheet = NULL) { + $this->_workSheet = $pSheet; + + return $this; + } + + /** + * Get AutoFilter Range + * + * @return string + */ + public function getRange() { + return $this->_range; + } + + /** + * Set AutoFilter Range + * + * @param string $pRange Cell range (i.e. A1:E10) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter + */ + public function setRange($pRange = '') { + // Uppercase coordinate + $cellAddress = explode('!',strtoupper($pRange)); + if (count($cellAddress) > 1) { + list($worksheet,$pRange) = $cellAddress; + } + + if (strpos($pRange,':') !== FALSE) { + $this->_range = $pRange; + } elseif(empty($pRange)) { + $this->_range = ''; + } else { + throw new PHPExcel_Exception('Autofilter must be set on a range of cells.'); + } + + if (empty($pRange)) { + // Discard all column rules + $this->_columns = array(); + } else { + // Discard any column rules that are no longer valid within this range + list($rangeStart,$rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->_range); + foreach($this->_columns as $key => $value) { + $colIndex = PHPExcel_Cell::columnIndexFromString($key); + if (($rangeStart[0] > $colIndex) || ($rangeEnd[0] < $colIndex)) { + unset($this->_columns[$key]); + } + } + } + + return $this; + } + + /** + * Get all AutoFilter Columns + * + * @throws PHPExcel_Exception + * @return array of PHPExcel_Worksheet_AutoFilter_Column + */ + public function getColumns() { + return $this->_columns; + } + + /** + * Validate that the specified column is in the AutoFilter range + * + * @param string $column Column name (e.g. A) + * @throws PHPExcel_Exception + * @return integer The column offset within the autofilter range + */ + public function testColumnInRange($column) { + if (empty($this->_range)) { + throw new PHPExcel_Exception("No autofilter range is defined."); + } + + $columnIndex = PHPExcel_Cell::columnIndexFromString($column); + list($rangeStart,$rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->_range); + if (($rangeStart[0] > $columnIndex) || ($rangeEnd[0] < $columnIndex)) { + throw new PHPExcel_Exception("Column is outside of current autofilter range."); + } + + return $columnIndex - $rangeStart[0]; + } + + /** + * Get a specified AutoFilter Column Offset within the defined AutoFilter range + * + * @param string $pColumn Column name (e.g. A) + * @throws PHPExcel_Exception + * @return integer The offset of the specified column within the autofilter range + */ + public function getColumnOffset($pColumn) { + return $this->testColumnInRange($pColumn); + } + + /** + * Get a specified AutoFilter Column + * + * @param string $pColumn Column name (e.g. A) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function getColumn($pColumn) { + $this->testColumnInRange($pColumn); + + if (!isset($this->_columns[$pColumn])) { + $this->_columns[$pColumn] = new PHPExcel_Worksheet_AutoFilter_Column($pColumn, $this); + } + + return $this->_columns[$pColumn]; + } + + /** + * Get a specified AutoFilter Column by it's offset + * + * @param integer $pColumnOffset Column offset within range (starting from 0) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function getColumnByOffset($pColumnOffset = 0) { + list($rangeStart,$rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->_range); + $pColumn = PHPExcel_Cell::stringFromColumnIndex($rangeStart[0] + $pColumnOffset - 1); + + return $this->getColumn($pColumn); + } + + /** + * Set AutoFilter + * + * @param PHPExcel_Worksheet_AutoFilter_Column|string $pColumn + * A simple string containing a Column ID like 'A' is permitted + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter + */ + public function setColumn($pColumn) + { + if ((is_string($pColumn)) && (!empty($pColumn))) { + $column = $pColumn; + } elseif(is_object($pColumn) && ($pColumn instanceof PHPExcel_Worksheet_AutoFilter_Column)) { + $column = $pColumn->getColumnIndex(); + } else { + throw new PHPExcel_Exception("Column is not within the autofilter range."); + } + $this->testColumnInRange($column); + + if (is_string($pColumn)) { + $this->_columns[$pColumn] = new PHPExcel_Worksheet_AutoFilter_Column($pColumn, $this); + } elseif(is_object($pColumn) && ($pColumn instanceof PHPExcel_Worksheet_AutoFilter_Column)) { + $pColumn->setParent($this); + $this->_columns[$column] = $pColumn; + } + ksort($this->_columns); + + return $this; + } + + /** + * Clear a specified AutoFilter Column + * + * @param string $pColumn Column name (e.g. A) + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter + */ + public function clearColumn($pColumn) { + $this->testColumnInRange($pColumn); + + if (isset($this->_columns[$pColumn])) { + unset($this->_columns[$pColumn]); + } + + return $this; + } + + /** + * Shift an AutoFilter Column Rule to a different column + * + * Note: This method bypasses validation of the destination column to ensure it is within this AutoFilter range. + * Nor does it verify whether any column rule already exists at $toColumn, but will simply overrideany existing value. + * Use with caution. + * + * @param string $fromColumn Column name (e.g. A) + * @param string $toColumn Column name (e.g. B) + * @return PHPExcel_Worksheet_AutoFilter + */ + public function shiftColumn($fromColumn=NULL,$toColumn=NULL) { + $fromColumn = strtoupper($fromColumn); + $toColumn = strtoupper($toColumn); + + if (($fromColumn !== NULL) && (isset($this->_columns[$fromColumn])) && ($toColumn !== NULL)) { + $this->_columns[$fromColumn]->setParent(); + $this->_columns[$fromColumn]->setColumnIndex($toColumn); + $this->_columns[$toColumn] = $this->_columns[$fromColumn]; + $this->_columns[$toColumn]->setParent($this); + unset($this->_columns[$fromColumn]); + + ksort($this->_columns); + } + + return $this; + } + + + /** + * Test if cell value is in the defined set of values + * + * @param mixed $cellValue + * @param mixed[] $dataSet + * @return boolean + */ + private static function _filterTestInSimpleDataSet($cellValue,$dataSet) + { + $dataSetValues = $dataSet['filterValues']; + $blanks = $dataSet['blanks']; + if (($cellValue == '') || ($cellValue === NULL)) { + return $blanks; + } + return in_array($cellValue,$dataSetValues); + } + + /** + * Test if cell value is in the defined set of Excel date values + * + * @param mixed $cellValue + * @param mixed[] $dataSet + * @return boolean + */ + private static function _filterTestInDateGroupSet($cellValue,$dataSet) + { + $dateSet = $dataSet['filterValues']; + $blanks = $dataSet['blanks']; + if (($cellValue == '') || ($cellValue === NULL)) { + return $blanks; + } + + if (is_numeric($cellValue)) { + $dateValue = PHPExcel_Shared_Date::ExcelToPHP($cellValue); + if ($cellValue < 1) { + // Just the time part + $dtVal = date('His',$dateValue); + $dateSet = $dateSet['time']; + } elseif($cellValue == floor($cellValue)) { + // Just the date part + $dtVal = date('Ymd',$dateValue); + $dateSet = $dateSet['date']; + } else { + // date and time parts + $dtVal = date('YmdHis',$dateValue); + $dateSet = $dateSet['dateTime']; + } + foreach($dateSet as $dateValue) { + // Use of substr to extract value at the appropriate group level + if (substr($dtVal,0,strlen($dateValue)) == $dateValue) + return TRUE; + } + } + + return FALSE; + } + + /** + * Test if cell value is within a set of values defined by a ruleset + * + * @param mixed $cellValue + * @param mixed[] $dataSet + * @return boolean + */ + private static function _filterTestInCustomDataSet($cellValue,$ruleSet) + { + $dataSet = $ruleSet['filterRules']; + $join = $ruleSet['join']; + $customRuleForBlanks = isset($ruleSet['customRuleForBlanks']) ? $ruleSet['customRuleForBlanks'] : FALSE; + + if (!$customRuleForBlanks) { + // Blank cells are always ignored, so return a FALSE + if (($cellValue == '') || ($cellValue === NULL)) { + return FALSE; + } + } + $returnVal = ($join == PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND); + foreach($dataSet as $rule) { + if (is_numeric($rule['value'])) { + // Numeric values are tested using the appropriate operator + switch ($rule['operator']) { + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL : + $retVal = ($cellValue == $rule['value']); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_NOTEQUAL : + $retVal = ($cellValue != $rule['value']); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHAN : + $retVal = ($cellValue > $rule['value']); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL : + $retVal = ($cellValue >= $rule['value']); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHAN : + $retVal = ($cellValue < $rule['value']); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL : + $retVal = ($cellValue <= $rule['value']); + break; + } + } elseif($rule['value'] == '') { + switch ($rule['operator']) { + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL : + $retVal = (($cellValue == '') || ($cellValue === NULL)); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_NOTEQUAL : + $retVal = (($cellValue != '') && ($cellValue !== NULL)); + break; + default : + $retVal = TRUE; + break; + } + } else { + // String values are always tested for equality, factoring in for wildcards (hence a regexp test) + $retVal = preg_match('/^'.$rule['value'].'$/i',$cellValue); + } + // If there are multiple conditions, then we need to test both using the appropriate join operator + switch ($join) { + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_OR : + $returnVal = $returnVal || $retVal; + // Break as soon as we have a TRUE match for OR joins, + // to avoid unnecessary additional code execution + if ($returnVal) + return $returnVal; + break; + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND : + $returnVal = $returnVal && $retVal; + break; + } + } + + return $returnVal; + } + + /** + * Test if cell date value is matches a set of values defined by a set of months + * + * @param mixed $cellValue + * @param mixed[] $dataSet + * @return boolean + */ + private static function _filterTestInPeriodDateSet($cellValue,$monthSet) + { + // Blank cells are always ignored, so return a FALSE + if (($cellValue == '') || ($cellValue === NULL)) { + return FALSE; + } + + if (is_numeric($cellValue)) { + $dateValue = date('m',PHPExcel_Shared_Date::ExcelToPHP($cellValue)); + if (in_array($dateValue,$monthSet)) { + return TRUE; + } + } + + return FALSE; + } + + /** + * Search/Replace arrays to convert Excel wildcard syntax to a regexp syntax for preg_matching + * + * @var array + */ + private static $_fromReplace = array('\*', '\?', '~~', '~.*', '~.?'); + private static $_toReplace = array('.*', '.', '~', '\*', '\?'); + + + /** + * Convert a dynamic rule daterange to a custom filter range expression for ease of calculation + * + * @param string $dynamicRuleType + * @param PHPExcel_Worksheet_AutoFilter_Column $filterColumn + * @return mixed[] + */ + private function _dynamicFilterDateRange($dynamicRuleType, &$filterColumn) + { + $rDateType = PHPExcel_Calculation_Functions::getReturnDateType(); + PHPExcel_Calculation_Functions::setReturnDateType(PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC); + $val = $maxVal = NULL; + + $ruleValues = array(); + $baseDate = PHPExcel_Calculation_DateTime::DATENOW(); + // Calculate start/end dates for the required date range based on current date + switch ($dynamicRuleType) { + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK : + $baseDate = strtotime('-7 days',$baseDate); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK : + $baseDate = strtotime('-7 days',$baseDate); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH : + $baseDate = strtotime('-1 month',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH : + $baseDate = strtotime('+1 month',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER : + $baseDate = strtotime('-3 month',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER : + $baseDate = strtotime('+3 month',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR : + $baseDate = strtotime('-1 year',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR : + $baseDate = strtotime('+1 year',gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); + break; + } + + switch ($dynamicRuleType) { + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TODAY : + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY : + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW : + $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(strtotime('+1 day',$baseDate)); + $val = (int) PHPExcel_Shared_Date::PHPToExcel($baseDate); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE : + $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(strtotime('+1 day',$baseDate)); + $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0,0,0,1,1,date('Y',$baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR : + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR : + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR : + $maxVal = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0,0,0,31,12,date('Y',$baseDate))); + ++$maxVal; + $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0,0,0,1,1,date('Y',$baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER : + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER : + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER : + $thisMonth = date('m',$baseDate); + $thisQuarter = floor(--$thisMonth / 3); + $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(gmmktime(0,0,0,date('t',$baseDate),(1+$thisQuarter)*3,date('Y',$baseDate))); + ++$maxVal; + $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0,0,0,1,1+$thisQuarter*3,date('Y',$baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH : + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH : + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH : + $maxVal = (int) PHPExcel_Shared_Date::PHPtoExcel(gmmktime(0,0,0,date('t',$baseDate),date('m',$baseDate),date('Y',$baseDate))); + ++$maxVal; + $val = (int) PHPExcel_Shared_Date::PHPToExcel(gmmktime(0,0,0,1,date('m',$baseDate),date('Y',$baseDate))); + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK : + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK : + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK : + $dayOfWeek = date('w',$baseDate); + $val = (int) PHPExcel_Shared_Date::PHPToExcel($baseDate) - $dayOfWeek; + $maxVal = $val + 7; + break; + } + + switch ($dynamicRuleType) { + // Adjust Today dates for Yesterday and Tomorrow + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY : + --$maxVal; + --$val; + break; + case PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW : + ++$maxVal; + ++$val; + break; + } + + // Set the filter column rule attributes ready for writing + $filterColumn->setAttributes(array( 'val' => $val, + 'maxVal' => $maxVal + ) + ); + + // Set the rules for identifying rows for hide/show + $ruleValues[] = array( 'operator' => PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL, + 'value' => $val + ); + $ruleValues[] = array( 'operator' => PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHAN, + 'value' => $maxVal + ); + PHPExcel_Calculation_Functions::setReturnDateType($rDateType); + + return array( + 'method' => '_filterTestInCustomDataSet', + 'arguments' => array( 'filterRules' => $ruleValues, + 'join' => PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND + ) + ); + } + + private function _calculateTopTenValue($columnID,$startRow,$endRow,$ruleType,$ruleValue) { + $range = $columnID.$startRow.':'.$columnID.$endRow; + $dataValues = PHPExcel_Calculation_Functions::flattenArray( + $this->_workSheet->rangeToArray($range,NULL,TRUE,FALSE) + ); + + $dataValues = array_filter($dataValues); + if ($ruleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP) { + rsort($dataValues); + } else { + sort($dataValues); + } + + return array_pop(array_slice($dataValues,0,$ruleValue)); + } + + /** + * Apply the AutoFilter rules to the AutoFilter Range + * + * @throws PHPExcel_Exception + * @return PHPExcel_Worksheet_AutoFilter + */ + public function showHideRows() + { + list($rangeStart,$rangeEnd) = PHPExcel_Cell::rangeBoundaries($this->_range); + + // The heading row should always be visible +// echo 'AutoFilter Heading Row ',$rangeStart[1],' is always SHOWN',PHP_EOL; + $this->_workSheet->getRowDimension($rangeStart[1])->setVisible(TRUE); + + $columnFilterTests = array(); + foreach($this->_columns as $columnID => $filterColumn) { + $rules = $filterColumn->getRules(); + switch ($filterColumn->getFilterType()) { + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER : + $ruleValues = array(); + // Build a list of the filter value selections + foreach($rules as $rule) { + $ruleType = $rule->getRuleType(); + $ruleValues[] = $rule->getValue(); + } + // Test if we want to include blanks in our filter criteria + $blanks = FALSE; + $ruleDataSet = array_filter($ruleValues); + if (count($ruleValues) != count($ruleDataSet)) + $blanks = TRUE; + if ($ruleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_FILTER) { + // Filter on absolute values + $columnFilterTests[$columnID] = array( + 'method' => '_filterTestInSimpleDataSet', + 'arguments' => array( 'filterValues' => $ruleDataSet, + 'blanks' => $blanks + ) + ); + } else { + // Filter on date group values + $arguments = array(); + foreach($ruleDataSet as $ruleValue) { + $date = $time = ''; + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_YEAR])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_YEAR] !== '')) + $date .= sprintf('%04d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_YEAR]); + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MONTH])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MONTH] != '')) + $date .= sprintf('%02d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MONTH]); + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_DAY])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_DAY] !== '')) + $date .= sprintf('%02d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_DAY]); + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_HOUR])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_HOUR] !== '')) + $time .= sprintf('%02d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_HOUR]); + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE] !== '')) + $time .= sprintf('%02d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE]); + if ((isset($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_SECOND])) && + ($ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_SECOND] !== '')) + $time .= sprintf('%02d',$ruleValue[PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_SECOND]); + $dateTime = $date . $time; + $arguments['date'][] = $date; + $arguments['time'][] = $time; + $arguments['dateTime'][] = $dateTime; + } + // Remove empty elements + $arguments['date'] = array_filter($arguments['date']); + $arguments['time'] = array_filter($arguments['time']); + $arguments['dateTime'] = array_filter($arguments['dateTime']); + $columnFilterTests[$columnID] = array( + 'method' => '_filterTestInDateGroupSet', + 'arguments' => array( 'filterValues' => $arguments, + 'blanks' => $blanks + ) + ); + } + break; + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER : + $customRuleForBlanks = FALSE; + $ruleValues = array(); + // Build a list of the filter value selections + foreach($rules as $rule) { + $ruleType = $rule->getRuleType(); + $ruleValue = $rule->getValue(); + if (!is_numeric($ruleValue)) { + // Convert to a regexp allowing for regexp reserved characters, wildcards and escaped wildcards + $ruleValue = preg_quote($ruleValue); + $ruleValue = str_replace(self::$_fromReplace,self::$_toReplace,$ruleValue); + if (trim($ruleValue) == '') { + $customRuleForBlanks = TRUE; + $ruleValue = trim($ruleValue); + } + } + $ruleValues[] = array( 'operator' => $rule->getOperator(), + 'value' => $ruleValue + ); + } + $join = $filterColumn->getJoin(); + $columnFilterTests[$columnID] = array( + 'method' => '_filterTestInCustomDataSet', + 'arguments' => array( 'filterRules' => $ruleValues, + 'join' => $join, + 'customRuleForBlanks' => $customRuleForBlanks + ) + ); + break; + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_DYNAMICFILTER : + $ruleValues = array(); + foreach($rules as $rule) { + // We should only ever have one Dynamic Filter Rule anyway + $dynamicRuleType = $rule->getGrouping(); + if (($dynamicRuleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE) || + ($dynamicRuleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE)) { + // Number (Average) based + // Calculate the average + $averageFormula = '=AVERAGE('.$columnID.($rangeStart[1]+1).':'.$columnID.$rangeEnd[1].')'; + $average = PHPExcel_Calculation::getInstance()->calculateFormula($averageFormula,NULL,$this->_workSheet->getCell('A1')); + // Set above/below rule based on greaterThan or LessTan + $operator = ($dynamicRuleType === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE) + ? PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHAN + : PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHAN; + $ruleValues[] = array( 'operator' => $operator, + 'value' => $average + ); + $columnFilterTests[$columnID] = array( + 'method' => '_filterTestInCustomDataSet', + 'arguments' => array( 'filterRules' => $ruleValues, + 'join' => PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_OR + ) + ); + } else { + // Date based + if ($dynamicRuleType{0} == 'M' || $dynamicRuleType{0} == 'Q') { + // Month or Quarter + list($periodType,$period) = sscanf($dynamicRuleType,'%[A-Z]%d'); + if ($periodType == 'M') { + $ruleValues = array($period); + } else { + --$period; + $periodEnd = (1+$period)*3; + $periodStart = 1+$period*3; + $ruleValues = range($periodStart,periodEnd); + } + $columnFilterTests[$columnID] = array( + 'method' => '_filterTestInPeriodDateSet', + 'arguments' => $ruleValues + ); + $filterColumn->setAttributes(array()); + } else { + // Date Range + $columnFilterTests[$columnID] = $this->_dynamicFilterDateRange($dynamicRuleType, $filterColumn); + break; + } + } + } + break; + case PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_TOPTENFILTER : + $ruleValues = array(); + $dataRowCount = $rangeEnd[1] - $rangeStart[1]; + foreach($rules as $rule) { + // We should only ever have one Dynamic Filter Rule anyway + $toptenRuleType = $rule->getGrouping(); + $ruleValue = $rule->getValue(); + $ruleOperator = $rule->getOperator(); + } + if ($ruleOperator === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT) { + $ruleValue = floor($ruleValue * ($dataRowCount / 100)); + } + if ($ruleValue < 1) $ruleValue = 1; + if ($ruleValue > 500) $ruleValue = 500; + + $maxVal = $this->_calculateTopTenValue($columnID,$rangeStart[1]+1,$rangeEnd[1],$toptenRuleType,$ruleValue); + + $operator = ($toptenRuleType == PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP) + ? PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL + : PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL; + $ruleValues[] = array( 'operator' => $operator, + 'value' => $maxVal + ); + $columnFilterTests[$columnID] = array( + 'method' => '_filterTestInCustomDataSet', + 'arguments' => array( 'filterRules' => $ruleValues, + 'join' => PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_OR + ) + ); + $filterColumn->setAttributes( + array('maxVal' => $maxVal) + ); + break; + } + } + +// echo 'Column Filter Test CRITERIA',PHP_EOL; +// var_dump($columnFilterTests); +// + // Execute the column tests for each row in the autoFilter range to determine show/hide, + for ($row = $rangeStart[1]+1; $row <= $rangeEnd[1]; ++$row) { +// echo 'Testing Row = ',$row,PHP_EOL; + $result = TRUE; + foreach($columnFilterTests as $columnID => $columnFilterTest) { +// echo 'Testing cell ',$columnID.$row,PHP_EOL; + $cellValue = $this->_workSheet->getCell($columnID.$row)->getCalculatedValue(); +// echo 'Value is ',$cellValue,PHP_EOL; + // Execute the filter test + $result = $result && + call_user_func_array( + array('PHPExcel_Worksheet_AutoFilter',$columnFilterTest['method']), + array( + $cellValue, + $columnFilterTest['arguments'] + ) + ); +// echo (($result) ? 'VALID' : 'INVALID'),PHP_EOL; + // If filter test has resulted in FALSE, exit the loop straightaway rather than running any more tests + if (!$result) + break; + } + // Set show/hide for the row based on the result of the autoFilter result +// echo (($result) ? 'SHOW' : 'HIDE'),PHP_EOL; + $this->_workSheet->getRowDimension($row)->setVisible($result); + } + + return $this; + } + + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + if ($key == '_workSheet') { + // Detach from worksheet + $this->$key = NULL; + } else { + $this->$key = clone $value; + } + } elseif ((is_array($value)) && ($key == '_columns')) { + // The columns array of PHPExcel_Worksheet_AutoFilter objects + $this->$key = array(); + foreach ($value as $k => $v) { + $this->$key[$k] = clone $v; + // attach the new cloned Column to this new cloned Autofilter object + $this->$key[$k]->setParent($this); + } + } else { + $this->$key = $value; + } + } + } + + /** + * toString method replicates previous behavior by returning the range if object is + * referenced as a property of its parent. + */ + public function __toString() { + return (string) $this->_range; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/Column.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/Column.php new file mode 100644 index 0000000..bb70ec6 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/Column.php @@ -0,0 +1,381 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_AutoFilter_Column + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_AutoFilter_Column +{ + const AUTOFILTER_FILTERTYPE_FILTER = 'filters'; + const AUTOFILTER_FILTERTYPE_CUSTOMFILTER = 'customFilters'; + // Supports no more than 2 rules, with an And/Or join criteria + // if more than 1 rule is defined + const AUTOFILTER_FILTERTYPE_DYNAMICFILTER = 'dynamicFilter'; + // Even though the filter rule is constant, the filtered data can vary + // e.g. filtered by date = TODAY + const AUTOFILTER_FILTERTYPE_TOPTENFILTER = 'top10'; + + private static $_filterTypes = array( + // Currently we're not handling + // colorFilter + // extLst + // iconFilter + self::AUTOFILTER_FILTERTYPE_FILTER, + self::AUTOFILTER_FILTERTYPE_CUSTOMFILTER, + self::AUTOFILTER_FILTERTYPE_DYNAMICFILTER, + self::AUTOFILTER_FILTERTYPE_TOPTENFILTER, + ); + + /* Multiple Rule Connections */ + const AUTOFILTER_COLUMN_JOIN_AND = 'and'; + const AUTOFILTER_COLUMN_JOIN_OR = 'or'; + + private static $_ruleJoins = array( + self::AUTOFILTER_COLUMN_JOIN_AND, + self::AUTOFILTER_COLUMN_JOIN_OR, + ); + + /** + * Autofilter + * + * @var PHPExcel_Worksheet_AutoFilter + */ + private $_parent = NULL; + + + /** + * Autofilter Column Index + * + * @var string + */ + private $_columnIndex = ''; + + + /** + * Autofilter Column Filter Type + * + * @var string + */ + private $_filterType = self::AUTOFILTER_FILTERTYPE_FILTER; + + + /** + * Autofilter Multiple Rules And/Or + * + * @var string + */ + private $_join = self::AUTOFILTER_COLUMN_JOIN_OR; + + + /** + * Autofilter Column Rules + * + * @var array of PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + private $_ruleset = array(); + + + /** + * Autofilter Column Dynamic Attributes + * + * @var array of mixed + */ + private $_attributes = array(); + + + /** + * Create a new PHPExcel_Worksheet_AutoFilter_Column + */ + public function __construct($pColumn, PHPExcel_Worksheet_AutoFilter $pParent = NULL) + { + $this->_columnIndex = $pColumn; + $this->_parent = $pParent; + } + + /** + * Get AutoFilter Column Index + * + * @return string + */ + public function getColumnIndex() { + return $this->_columnIndex; + } + + /** + * Set AutoFilter Column Index + * + * @param string $pColumn Column (e.g. A) + * @throws Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setColumnIndex($pColumn) { + // Uppercase coordinate + $pColumn = strtoupper($pColumn); + if ($this->_parent !== NULL) { + $this->_parent->testColumnInRange($pColumn); + } + + $this->_columnIndex = $pColumn; + + return $this; + } + + /** + * Get this Column's AutoFilter Parent + * + * @return PHPExcel_Worksheet_AutoFilter + */ + public function getParent() { + return $this->_parent; + } + + /** + * Set this Column's AutoFilter Parent + * + * @param PHPExcel_Worksheet_AutoFilter + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setParent(PHPExcel_Worksheet_AutoFilter $pParent = NULL) { + $this->_parent = $pParent; + + return $this; + } + + /** + * Get AutoFilter Type + * + * @return string + */ + public function getFilterType() { + return $this->_filterType; + } + + /** + * Set AutoFilter Type + * + * @param string $pFilterType + * @throws Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setFilterType($pFilterType = self::AUTOFILTER_FILTERTYPE_FILTER) { + if (!in_array($pFilterType,self::$_filterTypes)) { + throw new PHPExcel_Exception('Invalid filter type for column AutoFilter.'); + } + + $this->_filterType = $pFilterType; + + return $this; + } + + /** + * Get AutoFilter Multiple Rules And/Or Join + * + * @return string + */ + public function getJoin() { + return $this->_join; + } + + /** + * Set AutoFilter Multiple Rules And/Or + * + * @param string $pJoin And/Or + * @throws Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setJoin($pJoin = self::AUTOFILTER_COLUMN_JOIN_OR) { + // Lowercase And/Or + $pJoin = strtolower($pJoin); + if (!in_array($pJoin,self::$_ruleJoins)) { + throw new PHPExcel_Exception('Invalid rule connection for column AutoFilter.'); + } + + $this->_join = $pJoin; + + return $this; + } + + /** + * Set AutoFilter Attributes + * + * @param string[] $pAttributes + * @throws Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setAttributes($pAttributes = array()) { + $this->_attributes = $pAttributes; + + return $this; + } + + /** + * Set An AutoFilter Attribute + * + * @param string $pName Attribute Name + * @param string $pValue Attribute Value + * @throws Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setAttribute($pName, $pValue) { + $this->_attributes[$pName] = $pValue; + + return $this; + } + + /** + * Get AutoFilter Column Attributes + * + * @return string + */ + public function getAttributes() { + return $this->_attributes; + } + + /** + * Get specific AutoFilter Column Attribute + * + * @param string $pName Attribute Name + * @return string + */ + public function getAttribute($pName) { + if (isset($this->_attributes[$pName])) + return $this->_attributes[$pName]; + return NULL; + } + + /** + * Get all AutoFilter Column Rules + * + * @throws PHPExcel_Exception + * @return array of PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function getRules() { + return $this->_ruleset; + } + + /** + * Get a specified AutoFilter Column Rule + * + * @param integer $pIndex Rule index in the ruleset array + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function getRule($pIndex) { + if (!isset($this->_ruleset[$pIndex])) { + $this->_ruleset[$pIndex] = new PHPExcel_Worksheet_AutoFilter_Column_Rule($this); + } + return $this->_ruleset[$pIndex]; + } + + /** + * Create a new AutoFilter Column Rule in the ruleset + * + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function createRule() { + $this->_ruleset[] = new PHPExcel_Worksheet_AutoFilter_Column_Rule($this); + + return end($this->_ruleset); + } + + /** + * Add a new AutoFilter Column Rule to the ruleset + * + * @param PHPExcel_Worksheet_AutoFilter_Column_Rule $pRule + * @param boolean $returnRule Flag indicating whether the rule object or the column object should be returned + * @return PHPExcel_Worksheet_AutoFilter_Column|PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function addRule(PHPExcel_Worksheet_AutoFilter_Column_Rule $pRule, $returnRule=TRUE) { + $pRule->setParent($this); + $this->_ruleset[] = $pRule; + + return ($returnRule) ? $pRule : $this; + } + + /** + * Delete a specified AutoFilter Column Rule + * If the number of rules is reduced to 1, then we reset And/Or logic to Or + * + * @param integer $pIndex Rule index in the ruleset array + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function deleteRule($pIndex) { + if (isset($this->_ruleset[$pIndex])) { + unset($this->_ruleset[$pIndex]); + // If we've just deleted down to a single rule, then reset And/Or joining to Or + if (count($this->_ruleset) <= 1) { + $this->setJoin(self::AUTOFILTER_COLUMN_JOIN_OR); + } + } + + return $this; + } + + /** + * Delete all AutoFilter Column Rules + * + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function clearRules() { + $this->_ruleset = array(); + $this->setJoin(self::AUTOFILTER_COLUMN_JOIN_OR); + + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + if ($key == '_parent') { + // Detach from autofilter parent + $this->$key = NULL; + } else { + $this->$key = clone $value; + } + } elseif ((is_array($value)) && ($key == '_ruleset')) { + // The columns array of PHPExcel_Worksheet_AutoFilter objects + $this->$key = array(); + foreach ($value as $k => $v) { + $this->$key[$k] = clone $v; + // attach the new cloned Rule to this new cloned Autofilter Cloned object + $this->$key[$k]->setParent($this); + } + } else { + $this->$key = $value; + } + } + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/Column/Rule.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/Column/Rule.php new file mode 100644 index 0000000..209012c --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/Column/Rule.php @@ -0,0 +1,462 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_AutoFilter_Column_Rule + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_AutoFilter_Column_Rule +{ + const AUTOFILTER_RULETYPE_FILTER = 'filter'; + const AUTOFILTER_RULETYPE_DATEGROUP = 'dateGroupItem'; + const AUTOFILTER_RULETYPE_CUSTOMFILTER = 'customFilter'; + const AUTOFILTER_RULETYPE_DYNAMICFILTER = 'dynamicFilter'; + const AUTOFILTER_RULETYPE_TOPTENFILTER = 'top10Filter'; + + private static $_ruleTypes = array( + // Currently we're not handling + // colorFilter + // extLst + // iconFilter + self::AUTOFILTER_RULETYPE_FILTER, + self::AUTOFILTER_RULETYPE_DATEGROUP, + self::AUTOFILTER_RULETYPE_CUSTOMFILTER, + self::AUTOFILTER_RULETYPE_DYNAMICFILTER, + self::AUTOFILTER_RULETYPE_TOPTENFILTER, + ); + + const AUTOFILTER_RULETYPE_DATEGROUP_YEAR = 'year'; + const AUTOFILTER_RULETYPE_DATEGROUP_MONTH = 'month'; + const AUTOFILTER_RULETYPE_DATEGROUP_DAY = 'day'; + const AUTOFILTER_RULETYPE_DATEGROUP_HOUR = 'hour'; + const AUTOFILTER_RULETYPE_DATEGROUP_MINUTE = 'minute'; + const AUTOFILTER_RULETYPE_DATEGROUP_SECOND = 'second'; + + private static $_dateTimeGroups = array( + self::AUTOFILTER_RULETYPE_DATEGROUP_YEAR, + self::AUTOFILTER_RULETYPE_DATEGROUP_MONTH, + self::AUTOFILTER_RULETYPE_DATEGROUP_DAY, + self::AUTOFILTER_RULETYPE_DATEGROUP_HOUR, + self::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE, + self::AUTOFILTER_RULETYPE_DATEGROUP_SECOND, + ); + + const AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY = 'yesterday'; + const AUTOFILTER_RULETYPE_DYNAMIC_TODAY = 'today'; + const AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW = 'tomorrow'; + const AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE = 'yearToDate'; + const AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR = 'thisYear'; + const AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER = 'thisQuarter'; + const AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH = 'thisMonth'; + const AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK = 'thisWeek'; + const AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR = 'lastYear'; + const AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER = 'lastQuarter'; + const AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH = 'lastMonth'; + const AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK = 'lastWeek'; + const AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR = 'nextYear'; + const AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER = 'nextQuarter'; + const AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH = 'nextMonth'; + const AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK = 'nextWeek'; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1 = 'M1'; + const AUTOFILTER_RULETYPE_DYNAMIC_JANUARY = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2 = 'M2'; + const AUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3 = 'M3'; + const AUTOFILTER_RULETYPE_DYNAMIC_MARCH = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4 = 'M4'; + const AUTOFILTER_RULETYPE_DYNAMIC_APRIL = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5 = 'M5'; + const AUTOFILTER_RULETYPE_DYNAMIC_MAY = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6 = 'M6'; + const AUTOFILTER_RULETYPE_DYNAMIC_JUNE = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7 = 'M7'; + const AUTOFILTER_RULETYPE_DYNAMIC_JULY = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8 = 'M8'; + const AUTOFILTER_RULETYPE_DYNAMIC_AUGUST = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9 = 'M9'; + const AUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10 = 'M10'; + const AUTOFILTER_RULETYPE_DYNAMIC_OCTOBER = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11 = 'M11'; + const AUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11; + const AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12 = 'M12'; + const AUTOFILTER_RULETYPE_DYNAMIC_DECEMBER = self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12; + const AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1 = 'Q1'; + const AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2 = 'Q2'; + const AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3 = 'Q3'; + const AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4 = 'Q4'; + const AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE = 'aboveAverage'; + const AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE = 'belowAverage'; + + private static $_dynamicTypes = array( + self::AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY, + self::AUTOFILTER_RULETYPE_DYNAMIC_TODAY, + self::AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW, + self::AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE, + self::AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR, + self::AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER, + self::AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH, + self::AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK, + self::AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR, + self::AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER, + self::AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH, + self::AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK, + self::AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR, + self::AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER, + self::AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH, + self::AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11, + self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12, + self::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1, + self::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2, + self::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3, + self::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4, + self::AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE, + self::AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE, + ); + + /* + * The only valid filter rule operators for filter and customFilter types are: + * <xsd:enumeration value="equal"/> + * <xsd:enumeration value="lessThan"/> + * <xsd:enumeration value="lessThanOrEqual"/> + * <xsd:enumeration value="notEqual"/> + * <xsd:enumeration value="greaterThanOrEqual"/> + * <xsd:enumeration value="greaterThan"/> + */ + const AUTOFILTER_COLUMN_RULE_EQUAL = 'equal'; + const AUTOFILTER_COLUMN_RULE_NOTEQUAL = 'notEqual'; + const AUTOFILTER_COLUMN_RULE_GREATERTHAN = 'greaterThan'; + const AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL = 'greaterThanOrEqual'; + const AUTOFILTER_COLUMN_RULE_LESSTHAN = 'lessThan'; + const AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL = 'lessThanOrEqual'; + + private static $_operators = array( + self::AUTOFILTER_COLUMN_RULE_EQUAL, + self::AUTOFILTER_COLUMN_RULE_NOTEQUAL, + self::AUTOFILTER_COLUMN_RULE_GREATERTHAN, + self::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL, + self::AUTOFILTER_COLUMN_RULE_LESSTHAN, + self::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL, + ); + + const AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE = 'byValue'; + const AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT = 'byPercent'; + + private static $_topTenValue = array( + self::AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE, + self::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT, + ); + + const AUTOFILTER_COLUMN_RULE_TOPTEN_TOP = 'top'; + const AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM = 'bottom'; + + private static $_topTenType = array( + self::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP, + self::AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM, + ); + + + /* Rule Operators (Numeric, Boolean etc) */ +// const AUTOFILTER_COLUMN_RULE_BETWEEN = 'between'; // greaterThanOrEqual 1 && lessThanOrEqual 2 + /* Rule Operators (Numeric Special) which are translated to standard numeric operators with calculated values */ +// const AUTOFILTER_COLUMN_RULE_TOPTEN = 'topTen'; // greaterThan calculated value +// const AUTOFILTER_COLUMN_RULE_TOPTENPERCENT = 'topTenPercent'; // greaterThan calculated value +// const AUTOFILTER_COLUMN_RULE_ABOVEAVERAGE = 'aboveAverage'; // Value is calculated as the average +// const AUTOFILTER_COLUMN_RULE_BELOWAVERAGE = 'belowAverage'; // Value is calculated as the average + /* Rule Operators (String) which are set as wild-carded values */ +// const AUTOFILTER_COLUMN_RULE_BEGINSWITH = 'beginsWith'; // A* +// const AUTOFILTER_COLUMN_RULE_ENDSWITH = 'endsWith'; // *Z +// const AUTOFILTER_COLUMN_RULE_CONTAINS = 'contains'; // *B* +// const AUTOFILTER_COLUMN_RULE_DOESNTCONTAIN = 'notEqual'; // notEqual *B* + /* Rule Operators (Date Special) which are translated to standard numeric operators with calculated values */ +// const AUTOFILTER_COLUMN_RULE_BEFORE = 'lessThan'; +// const AUTOFILTER_COLUMN_RULE_AFTER = 'greaterThan'; +// const AUTOFILTER_COLUMN_RULE_YESTERDAY = 'yesterday'; +// const AUTOFILTER_COLUMN_RULE_TODAY = 'today'; +// const AUTOFILTER_COLUMN_RULE_TOMORROW = 'tomorrow'; +// const AUTOFILTER_COLUMN_RULE_LASTWEEK = 'lastWeek'; +// const AUTOFILTER_COLUMN_RULE_THISWEEK = 'thisWeek'; +// const AUTOFILTER_COLUMN_RULE_NEXTWEEK = 'nextWeek'; +// const AUTOFILTER_COLUMN_RULE_LASTMONTH = 'lastMonth'; +// const AUTOFILTER_COLUMN_RULE_THISMONTH = 'thisMonth'; +// const AUTOFILTER_COLUMN_RULE_NEXTMONTH = 'nextMonth'; +// const AUTOFILTER_COLUMN_RULE_LASTQUARTER = 'lastQuarter'; +// const AUTOFILTER_COLUMN_RULE_THISQUARTER = 'thisQuarter'; +// const AUTOFILTER_COLUMN_RULE_NEXTQUARTER = 'nextQuarter'; +// const AUTOFILTER_COLUMN_RULE_LASTYEAR = 'lastYear'; +// const AUTOFILTER_COLUMN_RULE_THISYEAR = 'thisYear'; +// const AUTOFILTER_COLUMN_RULE_NEXTYEAR = 'nextYear'; +// const AUTOFILTER_COLUMN_RULE_YEARTODATE = 'yearToDate'; // <dynamicFilter val="40909" type="yearToDate" maxVal="41113"/> +// const AUTOFILTER_COLUMN_RULE_ALLDATESINMONTH = 'allDatesInMonth'; // <dynamicFilter type="M2"/> for Month/February +// const AUTOFILTER_COLUMN_RULE_ALLDATESINQUARTER = 'allDatesInQuarter'; // <dynamicFilter type="Q2"/> for Quarter 2 + + /** + * Autofilter Column + * + * @var PHPExcel_Worksheet_AutoFilter_Column + */ + private $_parent = NULL; + + + /** + * Autofilter Rule Type + * + * @var string + */ + private $_ruleType = self::AUTOFILTER_RULETYPE_FILTER; + + + /** + * Autofilter Rule Value + * + * @var string + */ + private $_value = ''; + + /** + * Autofilter Rule Operator + * + * @var string + */ + private $_operator = ''; + + /** + * DateTimeGrouping Group Value + * + * @var string + */ + private $_grouping = ''; + + + /** + * Create a new PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function __construct(PHPExcel_Worksheet_AutoFilter_Column $pParent = NULL) + { + $this->_parent = $pParent; + } + + /** + * Get AutoFilter Rule Type + * + * @return string + */ + public function getRuleType() { + return $this->_ruleType; + } + + /** + * Set AutoFilter Rule Type + * + * @param string $pRuleType + * @throws Exception + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function setRuleType($pRuleType = self::AUTOFILTER_RULETYPE_FILTER) { + if (!in_array($pRuleType,self::$_ruleTypes)) { + throw new PHPExcel_Exception('Invalid rule type for column AutoFilter Rule.'); + } + + $this->_ruleType = $pRuleType; + + return $this; + } + + /** + * Get AutoFilter Rule Value + * + * @return string + */ + public function getValue() { + return $this->_value; + } + + /** + * Set AutoFilter Rule Value + * + * @param string|string[] $pValue + * @throws Exception + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function setValue($pValue = '') { + if (is_array($pValue)) { + $grouping = -1; + foreach($pValue as $key => $value) { + // Validate array entries + if (!in_array($key,self::$_dateTimeGroups)) { + // Remove any invalid entries from the value array + unset($pValue[$key]); + } else { + // Work out what the dateTime grouping will be + $grouping = max($grouping,array_search($key,self::$_dateTimeGroups)); + } + } + if (count($pValue) == 0) { + throw new PHPExcel_Exception('Invalid rule value for column AutoFilter Rule.'); + } + // Set the dateTime grouping that we've anticipated + $this->setGrouping(self::$_dateTimeGroups[$grouping]); + } + $this->_value = $pValue; + + return $this; + } + + /** + * Get AutoFilter Rule Operator + * + * @return string + */ + public function getOperator() { + return $this->_operator; + } + + /** + * Set AutoFilter Rule Operator + * + * @param string $pOperator + * @throws Exception + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function setOperator($pOperator = self::AUTOFILTER_COLUMN_RULE_EQUAL) { + if (empty($pOperator)) + $pOperator = self::AUTOFILTER_COLUMN_RULE_EQUAL; + if ((!in_array($pOperator,self::$_operators)) && + (!in_array($pOperator,self::$_topTenValue))) { + throw new PHPExcel_Exception('Invalid operator for column AutoFilter Rule.'); + } + $this->_operator = $pOperator; + + return $this; + } + + /** + * Get AutoFilter Rule Grouping + * + * @return string + */ + public function getGrouping() { + return $this->_grouping; + } + + /** + * Set AutoFilter Rule Grouping + * + * @param string $pGrouping + * @throws Exception + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function setGrouping($pGrouping = NULL) { + if (($pGrouping !== NULL) && + (!in_array($pGrouping,self::$_dateTimeGroups)) && + (!in_array($pGrouping,self::$_dynamicTypes)) && + (!in_array($pGrouping,self::$_topTenType))) { + throw new PHPExcel_Exception('Invalid rule type for column AutoFilter Rule.'); + } + + $this->_grouping = $pGrouping; + + return $this; + } + + /** + * Set AutoFilter Rule + * + * @param string $pOperator + * @param string|string[] $pValue + * @param string $pGrouping + * @throws Exception + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function setRule($pOperator = self::AUTOFILTER_COLUMN_RULE_EQUAL, $pValue = '', $pGrouping = NULL) { + $this->setOperator($pOperator); + $this->setValue($pValue); + // Only set grouping if it's been passed in as a user-supplied argument, + // otherwise we're calculating it when we setValue() and don't want to overwrite that + // If the user supplies an argumnet for grouping, then on their own head be it + if ($pGrouping !== NULL) + $this->setGrouping($pGrouping); + + return $this; + } + + /** + * Get this Rule's AutoFilter Column Parent + * + * @return PHPExcel_Worksheet_AutoFilter_Column + */ + public function getParent() { + return $this->_parent; + } + + /** + * Set this Rule's AutoFilter Column Parent + * + * @param PHPExcel_Worksheet_AutoFilter_Column + * @return PHPExcel_Worksheet_AutoFilter_Column_Rule + */ + public function setParent(PHPExcel_Worksheet_AutoFilter_Column $pParent = NULL) { + $this->_parent = $pParent; + + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + if ($key == '_parent') { + // Detach from autofilter column parent + $this->$key = NULL; + } else { + $this->$key = clone $value; + } + } else { + $this->$key = $value; + } + } + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/Column/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/Column/_notes/dwsync.xml new file mode 100644 index 0000000..51c9e72 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/Column/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Rule.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Rule.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851409999999" remote="129984143400000000" Dst="-1" /> +<file name="Rule.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851409999999" remote="129997098000000000" Dst="-1" /> +<file name="Rule.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559883129677" remote="131260196400000000" Dst="1" /> +<file name="Rule.php" server="62.244.88.21/amashow/" local="131414752198569331" remote="131414680800000000" Dst="2" /> +<file name="Rule.php" server="62.244.88.21/deciday/" local="131919461325937533" remote="131826017400000000" Dst="1" /> +<file name="Rule.php" server="62.244.88.21/deciday_18/" local="131414752198569331" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/_notes/dwsync.xml new file mode 100644 index 0000000..546c1a1 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/AutoFilter/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Column.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Column.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851409999999" remote="129984143400000000" Dst="-1" /> +<file name="Column.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851409999999" remote="129997098000000000" Dst="-1" /> +<file name="Column.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559882419536" remote="131260196400000000" Dst="1" /> +<file name="Column.php" server="62.244.88.21/amashow/" local="131414752197836893" remote="131414680800000000" Dst="2" /> +<file name="Column.php" server="62.244.88.21/deciday/" local="131919461325751308" remote="131826017400000000" Dst="1" /> +<file name="Column.php" server="62.244.88.21/deciday_18/" local="131414752197836893" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/BaseDrawing.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/BaseDrawing.php new file mode 100644 index 0000000..1e6725a --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/BaseDrawing.php @@ -0,0 +1,485 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_BaseDrawing + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_BaseDrawing implements PHPExcel_IComparable +{ + /** + * Image counter + * + * @var int + */ + private static $_imageCounter = 0; + + /** + * Image index + * + * @var int + */ + private $_imageIndex = 0; + + /** + * Name + * + * @var string + */ + protected $_name; + + /** + * Description + * + * @var string + */ + protected $_description; + + /** + * Worksheet + * + * @var PHPExcel_Worksheet + */ + protected $_worksheet; + + /** + * Coordinates + * + * @var string + */ + protected $_coordinates; + + /** + * Offset X + * + * @var int + */ + protected $_offsetX; + + /** + * Offset Y + * + * @var int + */ + protected $_offsetY; + + /** + * Width + * + * @var int + */ + protected $_width; + + /** + * Height + * + * @var int + */ + protected $_height; + + /** + * Proportional resize + * + * @var boolean + */ + protected $_resizeProportional; + + /** + * Rotation + * + * @var int + */ + protected $_rotation; + + /** + * Shadow + * + * @var PHPExcel_Worksheet_Drawing_Shadow + */ + protected $_shadow; + + /** + * Create a new PHPExcel_Worksheet_BaseDrawing + */ + public function __construct() + { + // Initialise values + $this->_name = ''; + $this->_description = ''; + $this->_worksheet = null; + $this->_coordinates = 'A1'; + $this->_offsetX = 0; + $this->_offsetY = 0; + $this->_width = 0; + $this->_height = 0; + $this->_resizeProportional = true; + $this->_rotation = 0; + $this->_shadow = new PHPExcel_Worksheet_Drawing_Shadow(); + + // Set image index + self::$_imageCounter++; + $this->_imageIndex = self::$_imageCounter; + } + + /** + * Get image index + * + * @return int + */ + public function getImageIndex() { + return $this->_imageIndex; + } + + /** + * Get Name + * + * @return string + */ + public function getName() { + return $this->_name; + } + + /** + * Set Name + * + * @param string $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setName($pValue = '') { + $this->_name = $pValue; + return $this; + } + + /** + * Get Description + * + * @return string + */ + public function getDescription() { + return $this->_description; + } + + /** + * Set Description + * + * @param string $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setDescription($pValue = '') { + $this->_description = $pValue; + return $this; + } + + /** + * Get Worksheet + * + * @return PHPExcel_Worksheet + */ + public function getWorksheet() { + return $this->_worksheet; + } + + /** + * Set Worksheet + * + * @param PHPExcel_Worksheet $pValue + * @param bool $pOverrideOld If a Worksheet has already been assigned, overwrite it and remove image from old Worksheet? + * @throws Exception + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setWorksheet(PHPExcel_Worksheet $pValue = null, $pOverrideOld = false) { + if (is_null($this->_worksheet)) { + // Add drawing to PHPExcel_Worksheet + $this->_worksheet = $pValue; + $this->_worksheet->getCell($this->_coordinates); + $this->_worksheet->getDrawingCollection()->append($this); + } else { + if ($pOverrideOld) { + // Remove drawing from old PHPExcel_Worksheet + $iterator = $this->_worksheet->getDrawingCollection()->getIterator(); + + while ($iterator->valid()) { + if ($iterator->current()->getHashCode() == $this->getHashCode()) { + $this->_worksheet->getDrawingCollection()->offsetUnset( $iterator->key() ); + $this->_worksheet = null; + break; + } + } + + // Set new PHPExcel_Worksheet + $this->setWorksheet($pValue); + } else { + throw new Exception("A PHPExcel_Worksheet has already been assigned. Drawings can only exist on one PHPExcel_Worksheet."); + } + } + return $this; + } + + /** + * Get Coordinates + * + * @return string + */ + public function getCoordinates() { + return $this->_coordinates; + } + + /** + * Set Coordinates + * + * @param string $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setCoordinates($pValue = 'A1') { + $this->_coordinates = $pValue; + return $this; + } + + /** + * Get OffsetX + * + * @return int + */ + public function getOffsetX() { + return $this->_offsetX; + } + + /** + * Set OffsetX + * + * @param int $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setOffsetX($pValue = 0) { + $this->_offsetX = $pValue; + return $this; + } + + /** + * Get OffsetY + * + * @return int + */ + public function getOffsetY() { + return $this->_offsetY; + } + + /** + * Set OffsetY + * + * @param int $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setOffsetY($pValue = 0) { + $this->_offsetY = $pValue; + return $this; + } + + /** + * Get Width + * + * @return int + */ + public function getWidth() { + return $this->_width; + } + + /** + * Set Width + * + * @param int $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setWidth($pValue = 0) { + // Resize proportional? + if ($this->_resizeProportional && $pValue != 0) { + $ratio = $this->_height / $this->_width; + $this->_height = round($ratio * $pValue); + } + + // Set width + $this->_width = $pValue; + + return $this; + } + + /** + * Get Height + * + * @return int + */ + public function getHeight() { + return $this->_height; + } + + /** + * Set Height + * + * @param int $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setHeight($pValue = 0) { + // Resize proportional? + if ($this->_resizeProportional && $pValue != 0) { + $ratio = $this->_width / $this->_height; + $this->_width = round($ratio * $pValue); + } + + // Set height + $this->_height = $pValue; + + return $this; + } + + /** + * Set width and height with proportional resize + * Example: + * <code> + * $objDrawing->setResizeProportional(true); + * $objDrawing->setWidthAndHeight(160,120); + * </code> + * + * @author Vincent@luo MSN:kele_100@hotmail.com + * @param int $width + * @param int $height + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setWidthAndHeight($width = 0, $height = 0) { + $xratio = $width / $this->_width; + $yratio = $height / $this->_height; + if ($this->_resizeProportional && !($width == 0 || $height == 0)) { + if (($xratio * $this->_height) < $height) { + $this->_height = ceil($xratio * $this->_height); + $this->_width = $width; + } else { + $this->_width = ceil($yratio * $this->_width); + $this->_height = $height; + } + } + return $this; + } + + /** + * Get ResizeProportional + * + * @return boolean + */ + public function getResizeProportional() { + return $this->_resizeProportional; + } + + /** + * Set ResizeProportional + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setResizeProportional($pValue = true) { + $this->_resizeProportional = $pValue; + return $this; + } + + /** + * Get Rotation + * + * @return int + */ + public function getRotation() { + return $this->_rotation; + } + + /** + * Set Rotation + * + * @param int $pValue + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setRotation($pValue = 0) { + $this->_rotation = $pValue; + return $this; + } + + /** + * Get Shadow + * + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function getShadow() { + return $this->_shadow; + } + + /** + * Set Shadow + * + * @param PHPExcel_Worksheet_Drawing_Shadow $pValue + * @throws Exception + * @return PHPExcel_Worksheet_BaseDrawing + */ + public function setShadow(PHPExcel_Worksheet_Drawing_Shadow $pValue = null) { + $this->_shadow = $pValue; + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + return md5( + $this->_name + . $this->_description + . $this->_worksheet->getHashCode() + . $this->_coordinates + . $this->_offsetX + . $this->_offsetY + . $this->_width + . $this->_height + . $this->_rotation + . $this->_shadow->getHashCode() + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/CellIterator.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/CellIterator.php new file mode 100644 index 0000000..a612d55 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/CellIterator.php @@ -0,0 +1,161 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_CellIterator + * + * Used to iterate rows in a PHPExcel_Worksheet + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_CellIterator implements Iterator +{ + /** + * PHPExcel_Worksheet to iterate + * + * @var PHPExcel_Worksheet + */ + private $_subject; + + /** + * Row index + * + * @var int + */ + private $_rowIndex; + + /** + * Current iterator position + * + * @var int + */ + private $_position = 0; + + /** + * Loop only existing cells + * + * @var boolean + */ + private $_onlyExistingCells = true; + + /** + * Create a new cell iterator + * + * @param PHPExcel_Worksheet $subject + * @param int $rowIndex + */ + public function __construct(PHPExcel_Worksheet $subject = null, $rowIndex = 1) { + // Set subject and row index + $this->_subject = $subject; + $this->_rowIndex = $rowIndex; + } + + /** + * Destructor + */ + public function __destruct() { + unset($this->_subject); + } + + /** + * Rewind iterator + */ + public function rewind() { + $this->_position = 0; + } + + /** + * Current PHPExcel_Cell + * + * @return PHPExcel_Cell + */ + public function current() { + return $this->_subject->getCellByColumnAndRow($this->_position, $this->_rowIndex); + } + + /** + * Current key + * + * @return int + */ + public function key() { + return $this->_position; + } + + /** + * Next value + */ + public function next() { + ++$this->_position; + } + + /** + * Are there any more PHPExcel_Cell instances available? + * + * @return boolean + */ + public function valid() { + // columnIndexFromString() returns an index based at one, + // treat it as a count when comparing it to the base zero + // position. + $columnCount = PHPExcel_Cell::columnIndexFromString($this->_subject->getHighestColumn()); + + if ($this->_onlyExistingCells) { + // If we aren't looking at an existing cell, either + // because the first column doesn't exist or next() has + // been called onto a nonexistent cell, then loop until we + // find one, or pass the last column. + while ($this->_position < $columnCount && + !$this->_subject->cellExistsByColumnAndRow($this->_position, $this->_rowIndex)) { + ++$this->_position; + } + } + + return $this->_position < $columnCount; + } + + /** + * Get loop only existing cells + * + * @return boolean + */ + public function getIterateOnlyExistingCells() { + return $this->_onlyExistingCells; + } + + /** + * Set the iterator to loop only existing cells + * + * @param boolean $value + */ + public function setIterateOnlyExistingCells($value = true) { + $this->_onlyExistingCells = $value; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/ColumnDimension.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/ColumnDimension.php new file mode 100644 index 0000000..0915a35 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/ColumnDimension.php @@ -0,0 +1,266 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_ColumnDimension + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_ColumnDimension +{ + /** + * Column index + * + * @var int + */ + private $_columnIndex; + + /** + * Column width + * + * When this is set to a negative value, the column width should be ignored by IWriter + * + * @var double + */ + private $_width = -1; + + /** + * Auto size? + * + * @var bool + */ + private $_autoSize = false; + + /** + * Visible? + * + * @var bool + */ + private $_visible = true; + + /** + * Outline level + * + * @var int + */ + private $_outlineLevel = 0; + + /** + * Collapsed + * + * @var bool + */ + private $_collapsed = false; + + /** + * Index to cellXf + * + * @var int + */ + private $_xfIndex; + + /** + * Create a new PHPExcel_Worksheet_ColumnDimension + * + * @param string $pIndex Character column index + */ + public function __construct($pIndex = 'A') + { + // Initialise values + $this->_columnIndex = $pIndex; + + // set default index to cellXf + $this->_xfIndex = 0; + } + + /** + * Get ColumnIndex + * + * @return string + */ + public function getColumnIndex() { + return $this->_columnIndex; + } + + /** + * Set ColumnIndex + * + * @param string $pValue + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function setColumnIndex($pValue) { + $this->_columnIndex = $pValue; + return $this; + } + + /** + * Get Width + * + * @return double + */ + public function getWidth() { + return $this->_width; + } + + /** + * Set Width + * + * @param double $pValue + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function setWidth($pValue = -1) { + $this->_width = $pValue; + return $this; + } + + /** + * Get Auto Size + * + * @return bool + */ + public function getAutoSize() { + return $this->_autoSize; + } + + /** + * Set Auto Size + * + * @param bool $pValue + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function setAutoSize($pValue = false) { + $this->_autoSize = $pValue; + return $this; + } + + /** + * Get Visible + * + * @return bool + */ + public function getVisible() { + return $this->_visible; + } + + /** + * Set Visible + * + * @param bool $pValue + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function setVisible($pValue = true) { + $this->_visible = $pValue; + return $this; + } + + /** + * Get Outline Level + * + * @return int + */ + public function getOutlineLevel() { + return $this->_outlineLevel; + } + + /** + * Set Outline Level + * + * Value must be between 0 and 7 + * + * @param int $pValue + * @throws Exception + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function setOutlineLevel($pValue) { + if ($pValue < 0 || $pValue > 7) { + throw new Exception("Outline level must range between 0 and 7."); + } + + $this->_outlineLevel = $pValue; + return $this; + } + + /** + * Get Collapsed + * + * @return bool + */ + public function getCollapsed() { + return $this->_collapsed; + } + + /** + * Set Collapsed + * + * @param bool $pValue + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function setCollapsed($pValue = true) { + $this->_collapsed = $pValue; + return $this; + } + + /** + * Get index to cellXf + * + * @return int + */ + public function getXfIndex() + { + return $this->_xfIndex; + } + + /** + * Set index to cellXf + * + * @param int $pValue + * @return PHPExcel_Worksheet_ColumnDimension + */ + public function setXfIndex($pValue = 0) + { + $this->_xfIndex = $pValue; + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Drawing.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Drawing.php new file mode 100644 index 0000000..1d4e4b5 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Drawing.php @@ -0,0 +1,148 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet_Drawing + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_Drawing + * + * @category PHPExcel + * @package PHPExcel_Worksheet_Drawing + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_Drawing extends PHPExcel_Worksheet_BaseDrawing implements PHPExcel_IComparable +{ + /** + * Path + * + * @var string + */ + private $_path; + + /** + * Create a new PHPExcel_Worksheet_Drawing + */ + public function __construct() + { + // Initialise values + $this->_path = ''; + + // Initialize parent + parent::__construct(); + } + + /** + * Get Filename + * + * @return string + */ + public function getFilename() { + return basename($this->_path); + } + + /** + * Get indexed filename (using image index) + * + * @return string + */ + public function getIndexedFilename() { + $fileName = $this->getFilename(); + $fileName = str_replace(' ', '_', $fileName); + return str_replace('.' . $this->getExtension(), '', $fileName) . $this->getImageIndex() . '.' . $this->getExtension(); + } + + /** + * Get Extension + * + * @return string + */ + public function getExtension() { + $exploded = explode(".", basename($this->_path)); + return $exploded[count($exploded) - 1]; + } + + /** + * Get Path + * + * @return string + */ + public function getPath() { + return $this->_path; + } + + /** + * Set Path + * + * @param string $pValue File path + * @param boolean $pVerifyFile Verify file + * @throws Exception + * @return PHPExcel_Worksheet_Drawing + */ + public function setPath($pValue = '', $pVerifyFile = true) { + if ($pVerifyFile) { + if (file_exists($pValue)) { + $this->_path = $pValue; + + if ($this->_width == 0 && $this->_height == 0) { + // Get width/height + list($this->_width, $this->_height) = getimagesize($pValue); + } + } else { + throw new Exception("File $pValue not found!"); + } + } else { + $this->_path = $pValue; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + return md5( + $this->_path + . parent::getHashCode() + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Drawing/Shadow.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Drawing/Shadow.php new file mode 100644 index 0000000..d4a5373 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Drawing/Shadow.php @@ -0,0 +1,288 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet_Drawing + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_Drawing_Shadow + * + * @category PHPExcel + * @package PHPExcel_Worksheet_Drawing + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_Drawing_Shadow implements PHPExcel_IComparable +{ + /* Shadow alignment */ + const SHADOW_BOTTOM = 'b'; + const SHADOW_BOTTOM_LEFT = 'bl'; + const SHADOW_BOTTOM_RIGHT = 'br'; + const SHADOW_CENTER = 'ctr'; + const SHADOW_LEFT = 'l'; + const SHADOW_TOP = 't'; + const SHADOW_TOP_LEFT = 'tl'; + const SHADOW_TOP_RIGHT = 'tr'; + + /** + * Visible + * + * @var boolean + */ + private $_visible; + + /** + * Blur radius + * + * Defaults to 6 + * + * @var int + */ + private $_blurRadius; + + /** + * Shadow distance + * + * Defaults to 2 + * + * @var int + */ + private $_distance; + + /** + * Shadow direction (in degrees) + * + * @var int + */ + private $_direction; + + /** + * Shadow alignment + * + * @var int + */ + private $_alignment; + + /** + * Color + * + * @var PHPExcel_Style_Color + */ + private $_color; + + /** + * Alpha + * + * @var int + */ + private $_alpha; + + /** + * Create a new PHPExcel_Worksheet_Drawing_Shadow + */ + public function __construct() + { + // Initialise values + $this->_visible = false; + $this->_blurRadius = 6; + $this->_distance = 2; + $this->_direction = 0; + $this->_alignment = PHPExcel_Worksheet_Drawing_Shadow::SHADOW_BOTTOM_RIGHT; + $this->_color = new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_BLACK); + $this->_alpha = 50; + } + + /** + * Get Visible + * + * @return boolean + */ + public function getVisible() { + return $this->_visible; + } + + /** + * Set Visible + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setVisible($pValue = false) { + $this->_visible = $pValue; + return $this; + } + + /** + * Get Blur radius + * + * @return int + */ + public function getBlurRadius() { + return $this->_blurRadius; + } + + /** + * Set Blur radius + * + * @param int $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setBlurRadius($pValue = 6) { + $this->_blurRadius = $pValue; + return $this; + } + + /** + * Get Shadow distance + * + * @return int + */ + public function getDistance() { + return $this->_distance; + } + + /** + * Set Shadow distance + * + * @param int $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setDistance($pValue = 2) { + $this->_distance = $pValue; + return $this; + } + + /** + * Get Shadow direction (in degrees) + * + * @return int + */ + public function getDirection() { + return $this->_direction; + } + + /** + * Set Shadow direction (in degrees) + * + * @param int $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setDirection($pValue = 0) { + $this->_direction = $pValue; + return $this; + } + + /** + * Get Shadow alignment + * + * @return int + */ + public function getAlignment() { + return $this->_alignment; + } + + /** + * Set Shadow alignment + * + * @param int $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setAlignment($pValue = 0) { + $this->_alignment = $pValue; + return $this; + } + + /** + * Get Color + * + * @return PHPExcel_Style_Color + */ + public function getColor() { + return $this->_color; + } + + /** + * Set Color + * + * @param PHPExcel_Style_Color $pValue + * @throws Exception + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setColor(PHPExcel_Style_Color $pValue = null) { + $this->_color = $pValue; + return $this; + } + + /** + * Get Alpha + * + * @return int + */ + public function getAlpha() { + return $this->_alpha; + } + + /** + * Set Alpha + * + * @param int $pValue + * @return PHPExcel_Worksheet_Drawing_Shadow + */ + public function setAlpha($pValue = 0) { + $this->_alpha = $pValue; + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + return md5( + ($this->_visible ? 't' : 'f') + . $this->_blurRadius + . $this->_distance + . $this->_direction + . $this->_alignment + . $this->_color->getHashCode() + . $this->_alpha + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Drawing/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Drawing/_notes/dwsync.xml new file mode 100644 index 0000000..fec0b83 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Drawing/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Shadow.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Shadow.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851419999999" remote="129984143400000000" Dst="-1" /> +<file name="Shadow.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851419999999" remote="129997098000000000" Dst="-1" /> +<file name="Shadow.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559885964737" remote="131260196400000000" Dst="1" /> +<file name="Shadow.php" server="62.244.88.21/amashow/" local="131414752202758432" remote="131414680800000000" Dst="2" /> +<file name="Shadow.php" server="62.244.88.21/deciday/" local="131919461328988831" remote="131826017400000000" Dst="1" /> +<file name="Shadow.php" server="62.244.88.21/deciday_18/" local="131414752202758432" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/HeaderFooter.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/HeaderFooter.php new file mode 100644 index 0000000..e2524e1 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/HeaderFooter.php @@ -0,0 +1,465 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_HeaderFooter + * + * <code> + * Header/Footer Formatting Syntax taken from Office Open XML Part 4 - Markup Language Reference, page 1970: + * + * There are a number of formatting codes that can be written inline with the actual header / footer text, which + * affect the formatting in the header or footer. + * + * Example: This example shows the text "Center Bold Header" on the first line (center section), and the date on + * the second line (center section). + * &CCenter &"-,Bold"Bold&"-,Regular"Header_x000A_&D + * + * General Rules: + * There is no required order in which these codes must appear. + * + * The first occurrence of the following codes turns the formatting ON, the second occurrence turns it OFF again: + * - strikethrough + * - superscript + * - subscript + * Superscript and subscript cannot both be ON at same time. Whichever comes first wins and the other is ignored, + * while the first is ON. + * &L - code for "left section" (there are three header / footer locations, "left", "center", and "right"). When + * two or more occurrences of this section marker exist, the contents from all markers are concatenated, in the + * order of appearance, and placed into the left section. + * &P - code for "current page #" + * &N - code for "total pages" + * &font size - code for "text font size", where font size is a font size in points. + * &K - code for "text font color" + * RGB Color is specified as RRGGBB + * Theme Color is specifed as TTSNN where TT is the theme color Id, S is either "+" or "-" of the tint/shade + * value, NN is the tint/shade value. + * &S - code for "text strikethrough" on / off + * &X - code for "text super script" on / off + * &Y - code for "text subscript" on / off + * &C - code for "center section". When two or more occurrences of this section marker exist, the contents + * from all markers are concatenated, in the order of appearance, and placed into the center section. + * + * &D - code for "date" + * &T - code for "time" + * &G - code for "picture as background" + * &U - code for "text single underline" + * &E - code for "double underline" + * &R - code for "right section". When two or more occurrences of this section marker exist, the contents + * from all markers are concatenated, in the order of appearance, and placed into the right section. + * &Z - code for "this workbook's file path" + * &F - code for "this workbook's file name" + * &A - code for "sheet tab name" + * &+ - code for add to page #. + * &- - code for subtract from page #. + * &"font name,font type" - code for "text font name" and "text font type", where font name and font type + * are strings specifying the name and type of the font, separated by a comma. When a hyphen appears in font + * name, it means "none specified". Both of font name and font type can be localized values. + * &"-,Bold" - code for "bold font style" + * &B - also means "bold font style". + * &"-,Regular" - code for "regular font style" + * &"-,Italic" - code for "italic font style" + * &I - also means "italic font style" + * &"-,Bold Italic" code for "bold italic font style" + * &O - code for "outline style" + * &H - code for "shadow style" + * </code> + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_HeaderFooter +{ + /* Header/footer image location */ + const IMAGE_HEADER_LEFT = 'LH'; + const IMAGE_HEADER_CENTER = 'CH'; + const IMAGE_HEADER_RIGHT = 'RH'; + const IMAGE_FOOTER_LEFT = 'LF'; + const IMAGE_FOOTER_CENTER = 'CF'; + const IMAGE_FOOTER_RIGHT = 'RF'; + + /** + * OddHeader + * + * @var string + */ + private $_oddHeader = ''; + + /** + * OddFooter + * + * @var string + */ + private $_oddFooter = ''; + + /** + * EvenHeader + * + * @var string + */ + private $_evenHeader = ''; + + /** + * EvenFooter + * + * @var string + */ + private $_evenFooter = ''; + + /** + * FirstHeader + * + * @var string + */ + private $_firstHeader = ''; + + /** + * FirstFooter + * + * @var string + */ + private $_firstFooter = ''; + + /** + * Different header for Odd/Even, defaults to false + * + * @var boolean + */ + private $_differentOddEven = false; + + /** + * Different header for first page, defaults to false + * + * @var boolean + */ + private $_differentFirst = false; + + /** + * Scale with document, defaults to true + * + * @var boolean + */ + private $_scaleWithDocument = true; + + /** + * Align with margins, defaults to true + * + * @var boolean + */ + private $_alignWithMargins = true; + + /** + * Header/footer images + * + * @var PHPExcel_Worksheet_HeaderFooterDrawing[] + */ + private $_headerFooterImages = array(); + + /** + * Create a new PHPExcel_Worksheet_HeaderFooter + */ + public function __construct() + { + } + + /** + * Get OddHeader + * + * @return string + */ + public function getOddHeader() { + return $this->_oddHeader; + } + + /** + * Set OddHeader + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setOddHeader($pValue) { + $this->_oddHeader = $pValue; + return $this; + } + + /** + * Get OddFooter + * + * @return string + */ + public function getOddFooter() { + return $this->_oddFooter; + } + + /** + * Set OddFooter + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setOddFooter($pValue) { + $this->_oddFooter = $pValue; + return $this; + } + + /** + * Get EvenHeader + * + * @return string + */ + public function getEvenHeader() { + return $this->_evenHeader; + } + + /** + * Set EvenHeader + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setEvenHeader($pValue) { + $this->_evenHeader = $pValue; + return $this; + } + + /** + * Get EvenFooter + * + * @return string + */ + public function getEvenFooter() { + return $this->_evenFooter; + } + + /** + * Set EvenFooter + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setEvenFooter($pValue) { + $this->_evenFooter = $pValue; + return $this; + } + + /** + * Get FirstHeader + * + * @return string + */ + public function getFirstHeader() { + return $this->_firstHeader; + } + + /** + * Set FirstHeader + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setFirstHeader($pValue) { + $this->_firstHeader = $pValue; + return $this; + } + + /** + * Get FirstFooter + * + * @return string + */ + public function getFirstFooter() { + return $this->_firstFooter; + } + + /** + * Set FirstFooter + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setFirstFooter($pValue) { + $this->_firstFooter = $pValue; + return $this; + } + + /** + * Get DifferentOddEven + * + * @return boolean + */ + public function getDifferentOddEven() { + return $this->_differentOddEven; + } + + /** + * Set DifferentOddEven + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setDifferentOddEven($pValue = false) { + $this->_differentOddEven = $pValue; + return $this; + } + + /** + * Get DifferentFirst + * + * @return boolean + */ + public function getDifferentFirst() { + return $this->_differentFirst; + } + + /** + * Set DifferentFirst + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setDifferentFirst($pValue = false) { + $this->_differentFirst = $pValue; + return $this; + } + + /** + * Get ScaleWithDocument + * + * @return boolean + */ + public function getScaleWithDocument() { + return $this->_scaleWithDocument; + } + + /** + * Set ScaleWithDocument + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setScaleWithDocument($pValue = true) { + $this->_scaleWithDocument = $pValue; + return $this; + } + + /** + * Get AlignWithMargins + * + * @return boolean + */ + public function getAlignWithMargins() { + return $this->_alignWithMargins; + } + + /** + * Set AlignWithMargins + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setAlignWithMargins($pValue = true) { + $this->_alignWithMargins = $pValue; + return $this; + } + + /** + * Add header/footer image + * + * @param PHPExcel_Worksheet_HeaderFooterDrawing $image + * @param string $location + * @throws Exception + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function addImage(PHPExcel_Worksheet_HeaderFooterDrawing $image = null, $location = self::IMAGE_HEADER_LEFT) { + $this->_headerFooterImages[$location] = $image; + return $this; + } + + /** + * Remove header/footer image + * + * @param string $location + * @throws Exception + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function removeImage($location = self::IMAGE_HEADER_LEFT) { + if (isset($this->_headerFooterImages[$location])) { + unset($this->_headerFooterImages[$location]); + } + return $this; + } + + /** + * Set header/footer images + * + * @param PHPExcel_Worksheet_HeaderFooterDrawing[] $images + * @throws Exception + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setImages($images) { + if (!is_array($images)) { + throw new Exception('Invalid parameter!'); + } + + $this->_headerFooterImages = $images; + return $this; + } + + /** + * Get header/footer images + * + * @return PHPExcel_Worksheet_HeaderFooterDrawing[] + */ + public function getImages() { + // Sort array + $images = array(); + if (isset($this->_headerFooterImages[self::IMAGE_HEADER_LEFT])) $images[self::IMAGE_HEADER_LEFT] = $this->_headerFooterImages[self::IMAGE_HEADER_LEFT]; + if (isset($this->_headerFooterImages[self::IMAGE_HEADER_CENTER])) $images[self::IMAGE_HEADER_CENTER] = $this->_headerFooterImages[self::IMAGE_HEADER_CENTER]; + if (isset($this->_headerFooterImages[self::IMAGE_HEADER_RIGHT])) $images[self::IMAGE_HEADER_RIGHT] = $this->_headerFooterImages[self::IMAGE_HEADER_RIGHT]; + if (isset($this->_headerFooterImages[self::IMAGE_FOOTER_LEFT])) $images[self::IMAGE_FOOTER_LEFT] = $this->_headerFooterImages[self::IMAGE_FOOTER_LEFT]; + if (isset($this->_headerFooterImages[self::IMAGE_FOOTER_CENTER])) $images[self::IMAGE_FOOTER_CENTER] = $this->_headerFooterImages[self::IMAGE_FOOTER_CENTER]; + if (isset($this->_headerFooterImages[self::IMAGE_FOOTER_RIGHT])) $images[self::IMAGE_FOOTER_RIGHT] = $this->_headerFooterImages[self::IMAGE_FOOTER_RIGHT]; + $this->_headerFooterImages = $images; + + return $this->_headerFooterImages; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/HeaderFooterDrawing.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/HeaderFooterDrawing.php new file mode 100644 index 0000000..94672da --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/HeaderFooterDrawing.php @@ -0,0 +1,350 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_HeaderFooterDrawing + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_HeaderFooterDrawing extends PHPExcel_Worksheet_Drawing implements PHPExcel_IComparable +{ + /** + * Path + * + * @var string + */ + private $_path; + + /** + * Name + * + * @var string + */ + protected $_name; + + /** + * Offset X + * + * @var int + */ + protected $_offsetX; + + /** + * Offset Y + * + * @var int + */ + protected $_offsetY; + + /** + * Width + * + * @var int + */ + protected $_width; + + /** + * Height + * + * @var int + */ + protected $_height; + + /** + * Proportional resize + * + * @var boolean + */ + protected $_resizeProportional; + + /** + * Create a new PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function __construct() + { + // Initialise values + $this->_path = ''; + $this->_name = ''; + $this->_offsetX = 0; + $this->_offsetY = 0; + $this->_width = 0; + $this->_height = 0; + $this->_resizeProportional = true; + } + + /** + * Get Name + * + * @return string + */ + public function getName() { + return $this->_name; + } + + /** + * Set Name + * + * @param string $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setName($pValue = '') { + $this->_name = $pValue; + return $this; + } + + /** + * Get OffsetX + * + * @return int + */ + public function getOffsetX() { + return $this->_offsetX; + } + + /** + * Set OffsetX + * + * @param int $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setOffsetX($pValue = 0) { + $this->_offsetX = $pValue; + return $this; + } + + /** + * Get OffsetY + * + * @return int + */ + public function getOffsetY() { + return $this->_offsetY; + } + + /** + * Set OffsetY + * + * @param int $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setOffsetY($pValue = 0) { + $this->_offsetY = $pValue; + return $this; + } + + /** + * Get Width + * + * @return int + */ + public function getWidth() { + return $this->_width; + } + + /** + * Set Width + * + * @param int $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setWidth($pValue = 0) { + // Resize proportional? + if ($this->_resizeProportional && $pValue != 0) { + $ratio = $this->_width / $this->_height; + $this->_height = round($ratio * $pValue); + } + + // Set width + $this->_width = $pValue; + + return $this; + } + + /** + * Get Height + * + * @return int + */ + public function getHeight() { + return $this->_height; + } + + /** + * Set Height + * + * @param int $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setHeight($pValue = 0) { + // Resize proportional? + if ($this->_resizeProportional && $pValue != 0) { + $ratio = $this->_width / $this->_height; + $this->_width = round($ratio * $pValue); + } + + // Set height + $this->_height = $pValue; + + return $this; + } + + /** + * Set width and height with proportional resize + * Example: + * <code> + * $objDrawing->setResizeProportional(true); + * $objDrawing->setWidthAndHeight(160,120); + * </code> + * + * @author Vincent@luo MSN:kele_100@hotmail.com + * @param int $width + * @param int $height + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setWidthAndHeight($width = 0, $height = 0) { + $xratio = $width / $this->_width; + $yratio = $height / $this->_height; + if ($this->_resizeProportional && !($width == 0 || $height == 0)) { + if (($xratio * $this->_height) < $height) { + $this->_height = ceil($xratio * $this->_height); + $this->_width = $width; + } else { + $this->_width = ceil($yratio * $this->_width); + $this->_height = $height; + } + } + return $this; + } + + /** + * Get ResizeProportional + * + * @return boolean + */ + public function getResizeProportional() { + return $this->_resizeProportional; + } + + /** + * Set ResizeProportional + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setResizeProportional($pValue = true) { + $this->_resizeProportional = $pValue; + return $this; + } + + /** + * Get Filename + * + * @return string + */ + public function getFilename() { + return basename($this->_path); + } + + /** + * Get Extension + * + * @return string + */ + public function getExtension() { + $parts = explode(".", basename($this->_path)); + return end($parts); + } + + /** + * Get Path + * + * @return string + */ + public function getPath() { + return $this->_path; + } + + /** + * Set Path + * + * @param string $pValue File path + * @param boolean $pVerifyFile Verify file + * @throws Exception + * @return PHPExcel_Worksheet_HeaderFooterDrawing + */ + public function setPath($pValue = '', $pVerifyFile = true) { + if ($pVerifyFile) { + if (file_exists($pValue)) { + $this->_path = $pValue; + + if ($this->_width == 0 && $this->_height == 0) { + // Get width/height + list($this->_width, $this->_height) = getimagesize($pValue); + } + } else { + throw new Exception("File $pValue not found!"); + } + } else { + $this->_path = $pValue; + } + return $this; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + return md5( + $this->_path + . $this->_name + . $this->_offsetX + . $this->_offsetY + . $this->_width + . $this->_height + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/MemoryDrawing.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/MemoryDrawing.php new file mode 100644 index 0000000..223a29f --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/MemoryDrawing.php @@ -0,0 +1,200 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_MemoryDrawing + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_MemoryDrawing extends PHPExcel_Worksheet_BaseDrawing implements PHPExcel_IComparable +{ + /* Rendering functions */ + const RENDERING_DEFAULT = 'imagepng'; + const RENDERING_PNG = 'imagepng'; + const RENDERING_GIF = 'imagegif'; + const RENDERING_JPEG = 'imagejpeg'; + + /* MIME types */ + const MIMETYPE_DEFAULT = 'image/png'; + const MIMETYPE_PNG = 'image/png'; + const MIMETYPE_GIF = 'image/gif'; + const MIMETYPE_JPEG = 'image/jpeg'; + + /** + * Image resource + * + * @var resource + */ + private $_imageResource; + + /** + * Rendering function + * + * @var string + */ + private $_renderingFunction; + + /** + * Mime type + * + * @var string + */ + private $_mimeType; + + /** + * Unique name + * + * @var string + */ + private $_uniqueName; + + /** + * Create a new PHPExcel_Worksheet_MemoryDrawing + */ + public function __construct() + { + // Initialise values + $this->_imageResource = null; + $this->_renderingFunction = self::RENDERING_DEFAULT; + $this->_mimeType = self::MIMETYPE_DEFAULT; + $this->_uniqueName = md5(rand(0, 9999). time() . rand(0, 9999)); + + // Initialize parent + parent::__construct(); + } + + /** + * Get image resource + * + * @return resource + */ + public function getImageResource() { + return $this->_imageResource; + } + + /** + * Set image resource + * + * @param $value resource + * @return PHPExcel_Worksheet_MemoryDrawing + */ + public function setImageResource($value = null) { + $this->_imageResource = $value; + + if (!is_null($this->_imageResource)) { + // Get width/height + $this->_width = imagesx($this->_imageResource); + $this->_height = imagesy($this->_imageResource); + } + return $this; + } + + /** + * Get rendering function + * + * @return string + */ + public function getRenderingFunction() { + return $this->_renderingFunction; + } + + /** + * Set rendering function + * + * @param string $value + * @return PHPExcel_Worksheet_MemoryDrawing + */ + public function setRenderingFunction($value = PHPExcel_Worksheet_MemoryDrawing::RENDERING_DEFAULT) { + $this->_renderingFunction = $value; + return $this; + } + + /** + * Get mime type + * + * @return string + */ + public function getMimeType() { + return $this->_mimeType; + } + + /** + * Set mime type + * + * @param string $value + * @return PHPExcel_Worksheet_MemoryDrawing + */ + public function setMimeType($value = PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT) { + $this->_mimeType = $value; + return $this; + } + + /** + * Get indexed filename (using image index) + * + * @return string + */ + public function getIndexedFilename() { + $extension = strtolower($this->getMimeType()); + $extension = explode('/', $extension); + $extension = $extension[1]; + + return $this->_uniqueName . $this->getImageIndex() . '.' . $extension; + } + + /** + * Get hash code + * + * @return string Hash code + */ + public function getHashCode() { + return md5( + $this->_renderingFunction + . $this->_mimeType + . $this->_uniqueName + . parent::getHashCode() + . __CLASS__ + ); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/PageMargins.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/PageMargins.php new file mode 100644 index 0000000..7d31a5f --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/PageMargins.php @@ -0,0 +1,220 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_PageMargins + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_PageMargins +{ + /** + * Left + * + * @var double + */ + private $_left = 0.7; + + /** + * Right + * + * @var double + */ + private $_right = 0.7; + + /** + * Top + * + * @var double + */ + private $_top = 0.75; + + /** + * Bottom + * + * @var double + */ + private $_bottom = 0.75; + + /** + * Header + * + * @var double + */ + private $_header = 0.3; + + /** + * Footer + * + * @var double + */ + private $_footer = 0.3; + + /** + * Create a new PHPExcel_Worksheet_PageMargins + */ + public function __construct() + { + } + + /** + * Get Left + * + * @return double + */ + public function getLeft() { + return $this->_left; + } + + /** + * Set Left + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setLeft($pValue) { + $this->_left = $pValue; + return $this; + } + + /** + * Get Right + * + * @return double + */ + public function getRight() { + return $this->_right; + } + + /** + * Set Right + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setRight($pValue) { + $this->_right = $pValue; + return $this; + } + + /** + * Get Top + * + * @return double + */ + public function getTop() { + return $this->_top; + } + + /** + * Set Top + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setTop($pValue) { + $this->_top = $pValue; + return $this; + } + + /** + * Get Bottom + * + * @return double + */ + public function getBottom() { + return $this->_bottom; + } + + /** + * Set Bottom + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setBottom($pValue) { + $this->_bottom = $pValue; + return $this; + } + + /** + * Get Header + * + * @return double + */ + public function getHeader() { + return $this->_header; + } + + /** + * Set Header + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setHeader($pValue) { + $this->_header = $pValue; + return $this; + } + + /** + * Get Footer + * + * @return double + */ + public function getFooter() { + return $this->_footer; + } + + /** + * Set Footer + * + * @param double $pValue + * @return PHPExcel_Worksheet_PageMargins + */ + public function setFooter($pValue) { + $this->_footer = $pValue; + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/PageSetup.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/PageSetup.php new file mode 100644 index 0000000..693f1c6 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/PageSetup.php @@ -0,0 +1,798 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_PageSetup + * + * <code> + * Paper size taken from Office Open XML Part 4 - Markup Language Reference, page 1988: + * + * 1 = Letter paper (8.5 in. by 11 in.) + * 2 = Letter small paper (8.5 in. by 11 in.) + * 3 = Tabloid paper (11 in. by 17 in.) + * 4 = Ledger paper (17 in. by 11 in.) + * 5 = Legal paper (8.5 in. by 14 in.) + * 6 = Statement paper (5.5 in. by 8.5 in.) + * 7 = Executive paper (7.25 in. by 10.5 in.) + * 8 = A3 paper (297 mm by 420 mm) + * 9 = A4 paper (210 mm by 297 mm) + * 10 = A4 small paper (210 mm by 297 mm) + * 11 = A5 paper (148 mm by 210 mm) + * 12 = B4 paper (250 mm by 353 mm) + * 13 = B5 paper (176 mm by 250 mm) + * 14 = Folio paper (8.5 in. by 13 in.) + * 15 = Quarto paper (215 mm by 275 mm) + * 16 = Standard paper (10 in. by 14 in.) + * 17 = Standard paper (11 in. by 17 in.) + * 18 = Note paper (8.5 in. by 11 in.) + * 19 = #9 envelope (3.875 in. by 8.875 in.) + * 20 = #10 envelope (4.125 in. by 9.5 in.) + * 21 = #11 envelope (4.5 in. by 10.375 in.) + * 22 = #12 envelope (4.75 in. by 11 in.) + * 23 = #14 envelope (5 in. by 11.5 in.) + * 24 = C paper (17 in. by 22 in.) + * 25 = D paper (22 in. by 34 in.) + * 26 = E paper (34 in. by 44 in.) + * 27 = DL envelope (110 mm by 220 mm) + * 28 = C5 envelope (162 mm by 229 mm) + * 29 = C3 envelope (324 mm by 458 mm) + * 30 = C4 envelope (229 mm by 324 mm) + * 31 = C6 envelope (114 mm by 162 mm) + * 32 = C65 envelope (114 mm by 229 mm) + * 33 = B4 envelope (250 mm by 353 mm) + * 34 = B5 envelope (176 mm by 250 mm) + * 35 = B6 envelope (176 mm by 125 mm) + * 36 = Italy envelope (110 mm by 230 mm) + * 37 = Monarch envelope (3.875 in. by 7.5 in.). + * 38 = 6 3/4 envelope (3.625 in. by 6.5 in.) + * 39 = US standard fanfold (14.875 in. by 11 in.) + * 40 = German standard fanfold (8.5 in. by 12 in.) + * 41 = German legal fanfold (8.5 in. by 13 in.) + * 42 = ISO B4 (250 mm by 353 mm) + * 43 = Japanese double postcard (200 mm by 148 mm) + * 44 = Standard paper (9 in. by 11 in.) + * 45 = Standard paper (10 in. by 11 in.) + * 46 = Standard paper (15 in. by 11 in.) + * 47 = Invite envelope (220 mm by 220 mm) + * 50 = Letter extra paper (9.275 in. by 12 in.) + * 51 = Legal extra paper (9.275 in. by 15 in.) + * 52 = Tabloid extra paper (11.69 in. by 18 in.) + * 53 = A4 extra paper (236 mm by 322 mm) + * 54 = Letter transverse paper (8.275 in. by 11 in.) + * 55 = A4 transverse paper (210 mm by 297 mm) + * 56 = Letter extra transverse paper (9.275 in. by 12 in.) + * 57 = SuperA/SuperA/A4 paper (227 mm by 356 mm) + * 58 = SuperB/SuperB/A3 paper (305 mm by 487 mm) + * 59 = Letter plus paper (8.5 in. by 12.69 in.) + * 60 = A4 plus paper (210 mm by 330 mm) + * 61 = A5 transverse paper (148 mm by 210 mm) + * 62 = JIS B5 transverse paper (182 mm by 257 mm) + * 63 = A3 extra paper (322 mm by 445 mm) + * 64 = A5 extra paper (174 mm by 235 mm) + * 65 = ISO B5 extra paper (201 mm by 276 mm) + * 66 = A2 paper (420 mm by 594 mm) + * 67 = A3 transverse paper (297 mm by 420 mm) + * 68 = A3 extra transverse paper (322 mm by 445 mm) + * </code> + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_PageSetup +{ + /* Paper size */ + const PAPERSIZE_LETTER = 1; + const PAPERSIZE_LETTER_SMALL = 2; + const PAPERSIZE_TABLOID = 3; + const PAPERSIZE_LEDGER = 4; + const PAPERSIZE_LEGAL = 5; + const PAPERSIZE_STATEMENT = 6; + const PAPERSIZE_EXECUTIVE = 7; + const PAPERSIZE_A3 = 8; + const PAPERSIZE_A4 = 9; + const PAPERSIZE_A4_SMALL = 10; + const PAPERSIZE_A5 = 11; + const PAPERSIZE_B4 = 12; + const PAPERSIZE_B5 = 13; + const PAPERSIZE_FOLIO = 14; + const PAPERSIZE_QUARTO = 15; + const PAPERSIZE_STANDARD_1 = 16; + const PAPERSIZE_STANDARD_2 = 17; + const PAPERSIZE_NOTE = 18; + const PAPERSIZE_NO9_ENVELOPE = 19; + const PAPERSIZE_NO10_ENVELOPE = 20; + const PAPERSIZE_NO11_ENVELOPE = 21; + const PAPERSIZE_NO12_ENVELOPE = 22; + const PAPERSIZE_NO14_ENVELOPE = 23; + const PAPERSIZE_C = 24; + const PAPERSIZE_D = 25; + const PAPERSIZE_E = 26; + const PAPERSIZE_DL_ENVELOPE = 27; + const PAPERSIZE_C5_ENVELOPE = 28; + const PAPERSIZE_C3_ENVELOPE = 29; + const PAPERSIZE_C4_ENVELOPE = 30; + const PAPERSIZE_C6_ENVELOPE = 31; + const PAPERSIZE_C65_ENVELOPE = 32; + const PAPERSIZE_B4_ENVELOPE = 33; + const PAPERSIZE_B5_ENVELOPE = 34; + const PAPERSIZE_B6_ENVELOPE = 35; + const PAPERSIZE_ITALY_ENVELOPE = 36; + const PAPERSIZE_MONARCH_ENVELOPE = 37; + const PAPERSIZE_6_3_4_ENVELOPE = 38; + const PAPERSIZE_US_STANDARD_FANFOLD = 39; + const PAPERSIZE_GERMAN_STANDARD_FANFOLD = 40; + const PAPERSIZE_GERMAN_LEGAL_FANFOLD = 41; + const PAPERSIZE_ISO_B4 = 42; + const PAPERSIZE_JAPANESE_DOUBLE_POSTCARD = 43; + const PAPERSIZE_STANDARD_PAPER_1 = 44; + const PAPERSIZE_STANDARD_PAPER_2 = 45; + const PAPERSIZE_STANDARD_PAPER_3 = 46; + const PAPERSIZE_INVITE_ENVELOPE = 47; + const PAPERSIZE_LETTER_EXTRA_PAPER = 48; + const PAPERSIZE_LEGAL_EXTRA_PAPER = 49; + const PAPERSIZE_TABLOID_EXTRA_PAPER = 50; + const PAPERSIZE_A4_EXTRA_PAPER = 51; + const PAPERSIZE_LETTER_TRANSVERSE_PAPER = 52; + const PAPERSIZE_A4_TRANSVERSE_PAPER = 53; + const PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER = 54; + const PAPERSIZE_SUPERA_SUPERA_A4_PAPER = 55; + const PAPERSIZE_SUPERB_SUPERB_A3_PAPER = 56; + const PAPERSIZE_LETTER_PLUS_PAPER = 57; + const PAPERSIZE_A4_PLUS_PAPER = 58; + const PAPERSIZE_A5_TRANSVERSE_PAPER = 59; + const PAPERSIZE_JIS_B5_TRANSVERSE_PAPER = 60; + const PAPERSIZE_A3_EXTRA_PAPER = 61; + const PAPERSIZE_A5_EXTRA_PAPER = 62; + const PAPERSIZE_ISO_B5_EXTRA_PAPER = 63; + const PAPERSIZE_A2_PAPER = 64; + const PAPERSIZE_A3_TRANSVERSE_PAPER = 65; + const PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER = 66; + + /* Page orientation */ + const ORIENTATION_DEFAULT = 'default'; + const ORIENTATION_LANDSCAPE = 'landscape'; + const ORIENTATION_PORTRAIT = 'portrait'; + + /* Print Range Set Method */ + const SETPRINTRANGE_OVERWRITE = 'O'; + const SETPRINTRANGE_INSERT = 'I'; + + + /** + * Paper size + * + * @var int + */ + private $_paperSize = PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER; + + /** + * Orientation + * + * @var string + */ + private $_orientation = PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT; + + /** + * Scale (Print Scale) + * + * Print scaling. Valid values range from 10 to 400 + * This setting is overridden when fitToWidth and/or fitToHeight are in use + * + * @var int? + */ + private $_scale = 100; + + /** + * Fit To Page + * Whether scale or fitToWith / fitToHeight applies + * + * @var boolean + */ + private $_fitToPage = FALSE; + + /** + * Fit To Height + * Number of vertical pages to fit on + * + * @var int? + */ + private $_fitToHeight = 1; + + /** + * Fit To Width + * Number of horizontal pages to fit on + * + * @var int? + */ + private $_fitToWidth = 1; + + /** + * Columns to repeat at left + * + * @var array Containing start column and end column, empty array if option unset + */ + private $_columnsToRepeatAtLeft = array('', ''); + + /** + * Rows to repeat at top + * + * @var array Containing start row number and end row number, empty array if option unset + */ + private $_rowsToRepeatAtTop = array(0, 0); + + /** + * Center page horizontally + * + * @var boolean + */ + private $_horizontalCentered = FALSE; + + /** + * Center page vertically + * + * @var boolean + */ + private $_verticalCentered = FALSE; + + /** + * Print area + * + * @var string + */ + private $_printArea = NULL; + + /** + * First page number + * + * @var int + */ + private $_firstPageNumber = NULL; + + /** + * Create a new PHPExcel_Worksheet_PageSetup + */ + public function __construct() + { + } + + /** + * Get Paper Size + * + * @return int + */ + public function getPaperSize() { + return $this->_paperSize; + } + + /** + * Set Paper Size + * + * @param int $pValue + * @return PHPExcel_Worksheet_PageSetup + */ + public function setPaperSize($pValue = PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER) { + $this->_paperSize = $pValue; + return $this; + } + + /** + * Get Orientation + * + * @return string + */ + public function getOrientation() { + return $this->_orientation; + } + + /** + * Set Orientation + * + * @param string $pValue + * @return PHPExcel_Worksheet_PageSetup + */ + public function setOrientation($pValue = PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT) { + $this->_orientation = $pValue; + return $this; + } + + /** + * Get Scale + * + * @return int? + */ + public function getScale() { + return $this->_scale; + } + + /** + * Set Scale + * + * Print scaling. Valid values range from 10 to 400 + * This setting is overridden when fitToWidth and/or fitToHeight are in use + * + * @param int? $pValue + * @param boolean $pUpdate Update fitToPage so scaling applies rather than fitToHeight / fitToWidth + * @return PHPExcel_Worksheet_PageSetup + * @throws Exception + */ + public function setScale($pValue = 100, $pUpdate = true) { + // Microsoft Office Excel 2007 only allows setting a scale between 10 and 400 via the user interface, + // but it is apparently still able to handle any scale >= 0, where 0 results in 100 + if (($pValue >= 0) || is_null($pValue)) { + $this->_scale = $pValue; + if ($pUpdate) { + $this->_fitToPage = false; + } + } else { + throw new Exception("Scale must not be negative"); + } + return $this; + } + + /** + * Get Fit To Page + * + * @return boolean + */ + public function getFitToPage() { + return $this->_fitToPage; + } + + /** + * Set Fit To Page + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_PageSetup + */ + public function setFitToPage($pValue = TRUE) { + $this->_fitToPage = $pValue; + return $this; + } + + /** + * Get Fit To Height + * + * @return int? + */ + public function getFitToHeight() { + return $this->_fitToHeight; + } + + /** + * Set Fit To Height + * + * @param int? $pValue + * @param boolean $pUpdate Update fitToPage so it applies rather than scaling + * @return PHPExcel_Worksheet_PageSetup + */ + public function setFitToHeight($pValue = 1, $pUpdate = TRUE) { + $this->_fitToHeight = $pValue; + if ($pUpdate) { + $this->_fitToPage = TRUE; + } + return $this; + } + + /** + * Get Fit To Width + * + * @return int? + */ + public function getFitToWidth() { + return $this->_fitToWidth; + } + + /** + * Set Fit To Width + * + * @param int? $pValue + * @param boolean $pUpdate Update fitToPage so it applies rather than scaling + * @return PHPExcel_Worksheet_PageSetup + */ + public function setFitToWidth($pValue = 1, $pUpdate = TRUE) { + $this->_fitToWidth = $pValue; + if ($pUpdate) { + $this->_fitToPage = TRUE; + } + return $this; + } + + /** + * Is Columns to repeat at left set? + * + * @return boolean + */ + public function isColumnsToRepeatAtLeftSet() { + if (is_array($this->_columnsToRepeatAtLeft)) { + if ($this->_columnsToRepeatAtLeft[0] != '' && $this->_columnsToRepeatAtLeft[1] != '') { + return true; + } + } + + return false; + } + + /** + * Get Columns to repeat at left + * + * @return array Containing start column and end column, empty array if option unset + */ + public function getColumnsToRepeatAtLeft() { + return $this->_columnsToRepeatAtLeft; + } + + /** + * Set Columns to repeat at left + * + * @param array $pValue Containing start column and end column, empty array if option unset + * @return PHPExcel_Worksheet_PageSetup + */ + public function setColumnsToRepeatAtLeft($pValue = null) { + if (is_array($pValue)) { + $this->_columnsToRepeatAtLeft = $pValue; + } + return $this; + } + + /** + * Set Columns to repeat at left by start and end + * + * @param string $pStart + * @param string $pEnd + * @return PHPExcel_Worksheet_PageSetup + */ + public function setColumnsToRepeatAtLeftByStartAndEnd($pStart = 'A', $pEnd = 'A') { + $this->_columnsToRepeatAtLeft = array($pStart, $pEnd); + return $this; + } + + /** + * Is Rows to repeat at top set? + * + * @return boolean + */ + public function isRowsToRepeatAtTopSet() { + if (is_array($this->_rowsToRepeatAtTop)) { + if ($this->_rowsToRepeatAtTop[0] != 0 && $this->_rowsToRepeatAtTop[1] != 0) { + return true; + } + } + + return false; + } + + /** + * Get Rows to repeat at top + * + * @return array Containing start column and end column, empty array if option unset + */ + public function getRowsToRepeatAtTop() { + return $this->_rowsToRepeatAtTop; + } + + /** + * Set Rows to repeat at top + * + * @param array $pValue Containing start column and end column, empty array if option unset + * @return PHPExcel_Worksheet_PageSetup + */ + public function setRowsToRepeatAtTop($pValue = null) { + if (is_array($pValue)) { + $this->_rowsToRepeatAtTop = $pValue; + } + return $this; + } + + /** + * Set Rows to repeat at top by start and end + * + * @param int $pStart + * @param int $pEnd + * @return PHPExcel_Worksheet_PageSetup + */ + public function setRowsToRepeatAtTopByStartAndEnd($pStart = 1, $pEnd = 1) { + $this->_rowsToRepeatAtTop = array($pStart, $pEnd); + return $this; + } + + /** + * Get center page horizontally + * + * @return bool + */ + public function getHorizontalCentered() { + return $this->_horizontalCentered; + } + + /** + * Set center page horizontally + * + * @param bool $value + * @return PHPExcel_Worksheet_PageSetup + */ + public function setHorizontalCentered($value = false) { + $this->_horizontalCentered = $value; + return $this; + } + + /** + * Get center page vertically + * + * @return bool + */ + public function getVerticalCentered() { + return $this->_verticalCentered; + } + + /** + * Set center page vertically + * + * @param bool $value + * @return PHPExcel_Worksheet_PageSetup + */ + public function setVerticalCentered($value = false) { + $this->_verticalCentered = $value; + return $this; + } + + /** + * Get print area + * + * @param int $index Identifier for a specific print area range if several ranges have been set + * Default behaviour, or a index value of 0, will return all ranges as a comma-separated string + * Otherwise, the specific range identified by the value of $index will be returned + * Print areas are numbered from 1 + * @throws Exception + * @return string + */ + public function getPrintArea($index = 0) { + if ($index == 0) { + return $this->_printArea; + } + $printAreas = explode(',',$this->_printArea); + if (isset($printAreas[$index-1])) { + return $printAreas[$index-1]; + } + throw new Exception("Requested Print Area does not exist"); + } + + /** + * Is print area set? + * + * @param int $index Identifier for a specific print area range if several ranges have been set + * Default behaviour, or an index value of 0, will identify whether any print range is set + * Otherwise, existence of the range identified by the value of $index will be returned + * Print areas are numbered from 1 + * @return boolean + */ + public function isPrintAreaSet($index = 0) { + if ($index == 0) { + return !is_null($this->_printArea); + } + $printAreas = explode(',',$this->_printArea); + return isset($printAreas[$index-1]); + } + + /** + * Clear a print area + * + * @param int $index Identifier for a specific print area range if several ranges have been set + * Default behaviour, or an index value of 0, will clear all print ranges that are set + * Otherwise, the range identified by the value of $index will be removed from the series + * Print areas are numbered from 1 + * @return PHPExcel_Worksheet_PageSetup + */ + public function clearPrintArea($index = 0) { + if ($index == 0) { + $this->_printArea = NULL; + } else { + $printAreas = explode(',',$this->_printArea); + if (isset($printAreas[$index-1])) { + unset($printAreas[$index-1]); + $this->_printArea = implode(',',$printAreas); + } + } + + return $this; + } + + /** + * Set print area. e.g. 'A1:D10' or 'A1:D10,G5:M20' + * + * @param string $value + * @param int $index Identifier for a specific print area range allowing several ranges to be set + * When the method is "O"verwrite, then a positive integer index will overwrite that indexed + * entry in the print areas list; a negative index value will identify which entry to + * overwrite working bacward through the print area to the list, with the last entry as -1. + * Specifying an index value of 0, will overwrite <b>all</b> existing print ranges. + * When the method is "I"nsert, then a positive index will insert after that indexed entry in + * the print areas list, while a negative index will insert before the indexed entry. + * Specifying an index value of 0, will always append the new print range at the end of the + * list. + * Print areas are numbered from 1 + * @param string $method Determines the method used when setting multiple print areas + * Default behaviour, or the "O" method, overwrites existing print area + * The "I" method, inserts the new print area before any specified index, or at the end of the list + * @return PHPExcel_Worksheet_PageSetup + * @throws Exception + */ + public function setPrintArea($value, $index = 0, $method = self::SETPRINTRANGE_OVERWRITE) { + if (strpos($value,'!') !== false) { + throw new Exception('Cell coordinate must not specify a worksheet.'); + } elseif (strpos($value,':') === false) { + throw new Exception('Cell coordinate must be a range of cells.'); + } elseif (strpos($value,'$') !== false) { + throw new Exception('Cell coordinate must not be absolute.'); + } + $value = strtoupper($value); + + if ($method == self::SETPRINTRANGE_OVERWRITE) { + if ($index == 0) { + $this->_printArea = $value; + } else { + $printAreas = explode(',',$this->_printArea); + if($index < 0) { + $index = count($printAreas) - abs($index) + 1; + } + if (($index <= 0) || ($index > count($printAreas))) { + throw new Exception('Invalid index for setting print range.'); + } + $printAreas[$index-1] = $value; + $this->_printArea = implode(',',$printAreas); + } + } elseif($method == self::SETPRINTRANGE_INSERT) { + if ($index == 0) { + $this->_printArea .= ($this->_printArea == '') ? $value : ','.$value; + } else { + $printAreas = explode(',',$this->_printArea); + if($index < 0) { + $index = abs($index) - 1; + } + if ($index > count($printAreas)) { + throw new Exception('Invalid index for setting print range.'); + } + $printAreas = array_merge(array_slice($printAreas,0,$index),array($value),array_slice($printAreas,$index)); + $this->_printArea = implode(',',$printAreas); + } + } else { + throw new Exception('Invalid method for setting print range.'); + } + + return $this; + } + + /** + * Add a new print area (e.g. 'A1:D10' or 'A1:D10,G5:M20') to the list of print areas + * + * @param string $value + * @param int $index Identifier for a specific print area range allowing several ranges to be set + * A positive index will insert after that indexed entry in the print areas list, while a + * negative index will insert before the indexed entry. + * Specifying an index value of 0, will always append the new print range at the end of the + * list. + * Print areas are numbered from 1 + * @return PHPExcel_Worksheet_PageSetup + * @throws Exception + */ + public function addPrintArea($value, $index = -1) { + return $this->setPrintArea($value, $index, self::SETPRINTRANGE_INSERT); + } + + /** + * Set print area + * + * @param int $column1 Column 1 + * @param int $row1 Row 1 + * @param int $column2 Column 2 + * @param int $row2 Row 2 + * @param int $index Identifier for a specific print area range allowing several ranges to be set + * When the method is "O"verwrite, then a positive integer index will overwrite that indexed + * entry in the print areas list; a negative index value will identify which entry to + * overwrite working bacward through the print area to the list, with the last entry as -1. + * Specifying an index value of 0, will overwrite <b>all</b> existing print ranges. + * When the method is "I"nsert, then a positive index will insert after that indexed entry in + * the print areas list, while a negative index will insert before the indexed entry. + * Specifying an index value of 0, will always append the new print range at the end of the + * list. + * Print areas are numbered from 1 + * @param string $method Determines the method used when setting multiple print areas + * Default behaviour, or the "O" method, overwrites existing print area + * The "I" method, inserts the new print area before any specified index, or at the end of the list + * @return PHPExcel_Worksheet_PageSetup + * @throws Exception + */ + public function setPrintAreaByColumnAndRow($column1, $row1, $column2, $row2, $index = 0, $method = self::SETPRINTRANGE_OVERWRITE) + { + return $this->setPrintArea(PHPExcel_Cell::stringFromColumnIndex($column1) . $row1 . ':' . PHPExcel_Cell::stringFromColumnIndex($column2) . $row2, $index, $method); + } + + /** + * Add a new print area to the list of print areas + * + * @param int $column1 Start Column for the print area + * @param int $row1 Start Row for the print area + * @param int $column2 End Column for the print area + * @param int $row2 End Row for the print area + * @param int $index Identifier for a specific print area range allowing several ranges to be set + * A positive index will insert after that indexed entry in the print areas list, while a + * negative index will insert before the indexed entry. + * Specifying an index value of 0, will always append the new print range at the end of the + * list. + * Print areas are numbered from 1 + * @return PHPExcel_Worksheet_PageSetup + * @throws Exception + */ + public function addPrintAreaByColumnAndRow($column1, $row1, $column2, $row2, $index = -1) + { + return $this->setPrintArea(PHPExcel_Cell::stringFromColumnIndex($column1) . $row1 . ':' . PHPExcel_Cell::stringFromColumnIndex($column2) . $row2, $index, self::SETPRINTRANGE_INSERT); + } + + /** + * Get first page number + * + * @return int + */ + public function getFirstPageNumber() { + return $this->_firstPageNumber; + } + + /** + * Set first page number + * + * @param int $value + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function setFirstPageNumber($value = null) { + $this->_firstPageNumber = $value; + return $this; + } + + /** + * Reset first page number + * + * @return PHPExcel_Worksheet_HeaderFooter + */ + public function resetFirstPageNumber() { + return $this->setFirstPageNumber(null); + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Protection.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Protection.php new file mode 100644 index 0000000..e7c3436 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Protection.php @@ -0,0 +1,545 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_Protection + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_Protection +{ + /** + * Sheet + * + * @var boolean + */ + private $_sheet = false; + + /** + * Objects + * + * @var boolean + */ + private $_objects = false; + + /** + * Scenarios + * + * @var boolean + */ + private $_scenarios = false; + + /** + * Format cells + * + * @var boolean + */ + private $_formatCells = false; + + /** + * Format columns + * + * @var boolean + */ + private $_formatColumns = false; + + /** + * Format rows + * + * @var boolean + */ + private $_formatRows = false; + + /** + * Insert columns + * + * @var boolean + */ + private $_insertColumns = false; + + /** + * Insert rows + * + * @var boolean + */ + private $_insertRows = false; + + /** + * Insert hyperlinks + * + * @var boolean + */ + private $_insertHyperlinks = false; + + /** + * Delete columns + * + * @var boolean + */ + private $_deleteColumns = false; + + /** + * Delete rows + * + * @var boolean + */ + private $_deleteRows = false; + + /** + * Select locked cells + * + * @var boolean + */ + private $_selectLockedCells = false; + + /** + * Sort + * + * @var boolean + */ + private $_sort = false; + + /** + * AutoFilter + * + * @var boolean + */ + private $_autoFilter = false; + + /** + * Pivot tables + * + * @var boolean + */ + private $_pivotTables = false; + + /** + * Select unlocked cells + * + * @var boolean + */ + private $_selectUnlockedCells = false; + + /** + * Password + * + * @var string + */ + private $_password = ''; + + /** + * Create a new PHPExcel_Worksheet_Protection + */ + public function __construct() + { + } + + /** + * Is some sort of protection enabled? + * + * @return boolean + */ + function isProtectionEnabled() { + return $this->_sheet || + $this->_objects || + $this->_scenarios || + $this->_formatCells || + $this->_formatColumns || + $this->_formatRows || + $this->_insertColumns || + $this->_insertRows || + $this->_insertHyperlinks || + $this->_deleteColumns || + $this->_deleteRows || + $this->_selectLockedCells || + $this->_sort || + $this->_autoFilter || + $this->_pivotTables || + $this->_selectUnlockedCells; + } + + /** + * Get Sheet + * + * @return boolean + */ + function getSheet() { + return $this->_sheet; + } + + /** + * Set Sheet + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setSheet($pValue = false) { + $this->_sheet = $pValue; + return $this; + } + + /** + * Get Objects + * + * @return boolean + */ + function getObjects() { + return $this->_objects; + } + + /** + * Set Objects + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setObjects($pValue = false) { + $this->_objects = $pValue; + return $this; + } + + /** + * Get Scenarios + * + * @return boolean + */ + function getScenarios() { + return $this->_scenarios; + } + + /** + * Set Scenarios + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setScenarios($pValue = false) { + $this->_scenarios = $pValue; + return $this; + } + + /** + * Get FormatCells + * + * @return boolean + */ + function getFormatCells() { + return $this->_formatCells; + } + + /** + * Set FormatCells + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setFormatCells($pValue = false) { + $this->_formatCells = $pValue; + return $this; + } + + /** + * Get FormatColumns + * + * @return boolean + */ + function getFormatColumns() { + return $this->_formatColumns; + } + + /** + * Set FormatColumns + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setFormatColumns($pValue = false) { + $this->_formatColumns = $pValue; + return $this; + } + + /** + * Get FormatRows + * + * @return boolean + */ + function getFormatRows() { + return $this->_formatRows; + } + + /** + * Set FormatRows + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setFormatRows($pValue = false) { + $this->_formatRows = $pValue; + return $this; + } + + /** + * Get InsertColumns + * + * @return boolean + */ + function getInsertColumns() { + return $this->_insertColumns; + } + + /** + * Set InsertColumns + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setInsertColumns($pValue = false) { + $this->_insertColumns = $pValue; + return $this; + } + + /** + * Get InsertRows + * + * @return boolean + */ + function getInsertRows() { + return $this->_insertRows; + } + + /** + * Set InsertRows + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setInsertRows($pValue = false) { + $this->_insertRows = $pValue; + return $this; + } + + /** + * Get InsertHyperlinks + * + * @return boolean + */ + function getInsertHyperlinks() { + return $this->_insertHyperlinks; + } + + /** + * Set InsertHyperlinks + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setInsertHyperlinks($pValue = false) { + $this->_insertHyperlinks = $pValue; + return $this; + } + + /** + * Get DeleteColumns + * + * @return boolean + */ + function getDeleteColumns() { + return $this->_deleteColumns; + } + + /** + * Set DeleteColumns + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setDeleteColumns($pValue = false) { + $this->_deleteColumns = $pValue; + return $this; + } + + /** + * Get DeleteRows + * + * @return boolean + */ + function getDeleteRows() { + return $this->_deleteRows; + } + + /** + * Set DeleteRows + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setDeleteRows($pValue = false) { + $this->_deleteRows = $pValue; + return $this; + } + + /** + * Get SelectLockedCells + * + * @return boolean + */ + function getSelectLockedCells() { + return $this->_selectLockedCells; + } + + /** + * Set SelectLockedCells + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setSelectLockedCells($pValue = false) { + $this->_selectLockedCells = $pValue; + return $this; + } + + /** + * Get Sort + * + * @return boolean + */ + function getSort() { + return $this->_sort; + } + + /** + * Set Sort + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setSort($pValue = false) { + $this->_sort = $pValue; + return $this; + } + + /** + * Get AutoFilter + * + * @return boolean + */ + function getAutoFilter() { + return $this->_autoFilter; + } + + /** + * Set AutoFilter + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setAutoFilter($pValue = false) { + $this->_autoFilter = $pValue; + return $this; + } + + /** + * Get PivotTables + * + * @return boolean + */ + function getPivotTables() { + return $this->_pivotTables; + } + + /** + * Set PivotTables + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setPivotTables($pValue = false) { + $this->_pivotTables = $pValue; + return $this; + } + + /** + * Get SelectUnlockedCells + * + * @return boolean + */ + function getSelectUnlockedCells() { + return $this->_selectUnlockedCells; + } + + /** + * Set SelectUnlockedCells + * + * @param boolean $pValue + * @return PHPExcel_Worksheet_Protection + */ + function setSelectUnlockedCells($pValue = false) { + $this->_selectUnlockedCells = $pValue; + return $this; + } + + /** + * Get Password (hashed) + * + * @return string + */ + function getPassword() { + return $this->_password; + } + + /** + * Set Password + * + * @param string $pValue + * @param boolean $pAlreadyHashed If the password has already been hashed, set this to true + * @return PHPExcel_Worksheet_Protection + */ + function setPassword($pValue = '', $pAlreadyHashed = false) { + if (!$pAlreadyHashed) { + $pValue = PHPExcel_Shared_PasswordHasher::hashPassword($pValue); + } + $this->_password = $pValue; + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Row.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Row.php new file mode 100644 index 0000000..ba9d853 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/Row.php @@ -0,0 +1,90 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_Row + * + * Represents a row in PHPExcel_Worksheet, used by PHPExcel_Worksheet_RowIterator + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_Row +{ + /** + * PHPExcel_Worksheet + * + * @var PHPExcel_Worksheet + */ + private $_parent; + + /** + * Row index + * + * @var int + */ + private $_rowIndex = 0; + + /** + * Create a new row + * + * @param PHPExcel_Worksheet $parent + * @param int $rowIndex + */ + public function __construct(PHPExcel_Worksheet $parent = null, $rowIndex = 1) { + // Set parent and row index + $this->_parent = $parent; + $this->_rowIndex = $rowIndex; + } + + /** + * Destructor + */ + public function __destruct() { + unset($this->_parent); + } + + /** + * Get row index + * + * @return int + */ + public function getRowIndex() { + return $this->_rowIndex; + } + + /** + * Get cell iterator + * + * @return PHPExcel_Worksheet_CellIterator + */ + public function getCellIterator() { + return new PHPExcel_Worksheet_CellIterator($this->_parent, $this->_rowIndex); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/RowDimension.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/RowDimension.php new file mode 100644 index 0000000..7bacabd --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/RowDimension.php @@ -0,0 +1,265 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_RowDimension + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_RowDimension +{ + /** + * Row index + * + * @var int + */ + private $_rowIndex; + + /** + * Row height (in pt) + * + * When this is set to a negative value, the row height should be ignored by IWriter + * + * @var double + */ + private $_rowHeight = -1; + + /** + * ZeroHeight for Row? + * + * @var bool + */ + private $_zeroHeight = false; + + /** + * Visible? + * + * @var bool + */ + private $_visible = true; + + /** + * Outline level + * + * @var int + */ + private $_outlineLevel = 0; + + /** + * Collapsed + * + * @var bool + */ + private $_collapsed = false; + + /** + * Index to cellXf. Null value means row has no explicit cellXf format. + * + * @var int|null + */ + private $_xfIndex; + + /** + * Create a new PHPExcel_Worksheet_RowDimension + * + * @param int $pIndex Numeric row index + */ + public function __construct($pIndex = 0) + { + // Initialise values + $this->_rowIndex = $pIndex; + + // set row dimension as unformatted by default + $this->_xfIndex = null; + } + + /** + * Get Row Index + * + * @return int + */ + public function getRowIndex() { + return $this->_rowIndex; + } + + /** + * Set Row Index + * + * @param int $pValue + * @return PHPExcel_Worksheet_RowDimension + */ + public function setRowIndex($pValue) { + $this->_rowIndex = $pValue; + return $this; + } + + /** + * Get Row Height + * + * @return double + */ + public function getRowHeight() { + return $this->_rowHeight; + } + + /** + * Set Row Height + * + * @param double $pValue + * @return PHPExcel_Worksheet_RowDimension + */ + public function setRowHeight($pValue = -1) { + $this->_rowHeight = $pValue; + return $this; + } + + /** + * Get ZeroHeight + * + * @return bool + */ + public function getzeroHeight() { + return $this->_zeroHeight; + } + + /** + * Set ZeroHeight + * + * @param bool $pValue + * @return PHPExcel_Worksheet_RowDimension + */ + public function setzeroHeight($pValue = false) { + $this->_zeroHeight = $pValue; + return $this; + } + + /** + * Get Visible + * + * @return bool + */ + public function getVisible() { + return $this->_visible; + } + + /** + * Set Visible + * + * @param bool $pValue + * @return PHPExcel_Worksheet_RowDimension + */ + public function setVisible($pValue = true) { + $this->_visible = $pValue; + return $this; + } + + /** + * Get Outline Level + * + * @return int + */ + public function getOutlineLevel() { + return $this->_outlineLevel; + } + + /** + * Set Outline Level + * + * Value must be between 0 and 7 + * + * @param int $pValue + * @throws Exception + * @return PHPExcel_Worksheet_RowDimension + */ + public function setOutlineLevel($pValue) { + if ($pValue < 0 || $pValue > 7) { + throw new Exception("Outline level must range between 0 and 7."); + } + + $this->_outlineLevel = $pValue; + return $this; + } + + /** + * Get Collapsed + * + * @return bool + */ + public function getCollapsed() { + return $this->_collapsed; + } + + /** + * Set Collapsed + * + * @param bool $pValue + * @return PHPExcel_Worksheet_RowDimension + */ + public function setCollapsed($pValue = true) { + $this->_collapsed = $pValue; + return $this; + } + + /** + * Get index to cellXf + * + * @return int + */ + public function getXfIndex() + { + return $this->_xfIndex; + } + + /** + * Set index to cellXf + * + * @param int $pValue + * @return PHPExcel_Worksheet_RowDimension + */ + public function setXfIndex($pValue = 0) + { + $this->_xfIndex = $pValue; + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/RowIterator.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/RowIterator.php new file mode 100644 index 0000000..c8e832e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/RowIterator.php @@ -0,0 +1,148 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_RowIterator + * + * Used to iterate rows in a PHPExcel_Worksheet + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_RowIterator implements Iterator +{ + /** + * PHPExcel_Worksheet to iterate + * + * @var PHPExcel_Worksheet + */ + private $_subject; + + /** + * Current iterator position + * + * @var int + */ + private $_position = 1; + + /** + * Start position + * + * @var int + */ + private $_startRow = 1; + + + /** + * Create a new row iterator + * + * @param PHPExcel_Worksheet $subject The worksheet to iterate over + * @param integer $startRow The row number at which to start iterating + */ + public function __construct(PHPExcel_Worksheet $subject = null, $startRow = 1) { + // Set subject + $this->_subject = $subject; + $this->resetStart($startRow); + } + + /** + * Destructor + */ + public function __destruct() { + unset($this->_subject); + } + + /** + * (Re)Set the start row and the current row pointer + * + * @param integer $startRow The row number at which to start iterating + */ + public function resetStart($startRow = 1) { + $this->_startRow = $startRow; + $this->seek($startRow); + } + + /** + * Set the row pointer to the selected row + * + * @param integer $row The row number to set the current pointer at + */ + public function seek($row = 1) { + $this->_position = $row; + } + + /** + * Rewind the iterator to the starting row + */ + public function rewind() { + $this->_position = $this->_startRow; + } + + /** + * Return the current row in this worksheet + * + * @return PHPExcel_Worksheet_Row + */ + public function current() { + return new PHPExcel_Worksheet_Row($this->_subject, $this->_position); + } + + /** + * Return the current iterator key + * + * @return int + */ + public function key() { + return $this->_position; + } + + /** + * Set the iterator to its next value + */ + public function next() { + ++$this->_position; + } + + /** + * Set the iterator to its previous value + */ + public function prev() { + if ($this->_position > 1) + --$this->_position; + } + + /** + * Indicate if more rows exist in the worksheet + * + * @return boolean + */ + public function valid() { + return $this->_position <= $this->_subject->getHighestRow(); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/SheetView.php b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/SheetView.php new file mode 100644 index 0000000..bdaf323 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/SheetView.php @@ -0,0 +1,188 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Worksheet_SheetView + * + * @category PHPExcel + * @package PHPExcel_Worksheet + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Worksheet_SheetView +{ + + /* Sheet View types */ + const SHEETVIEW_NORMAL = 'normal'; + const SHEETVIEW_PAGE_LAYOUT = 'pageLayout'; + const SHEETVIEW_PAGE_BREAK_PREVIEW = 'pageBreakPreview'; + + private static $_sheetViewTypes = array( + self::SHEETVIEW_NORMAL, + self::SHEETVIEW_PAGE_LAYOUT, + self::SHEETVIEW_PAGE_BREAK_PREVIEW, + ); + + /** + * ZoomScale + * + * Valid values range from 10 to 400. + * + * @var int + */ + private $_zoomScale = 100; + + /** + * ZoomScaleNormal + * + * Valid values range from 10 to 400. + * + * @var int + */ + private $_zoomScaleNormal = 100; + + /** + * View + * + * Valid values range from 10 to 400. + * + * @var string + */ + private $_sheetviewType = self::SHEETVIEW_NORMAL; + + /** + * Create a new PHPExcel_Worksheet_SheetView + */ + public function __construct() + { + } + + /** + * Get ZoomScale + * + * @return int + */ + public function getZoomScale() { + return $this->_zoomScale; + } + + /** + * Set ZoomScale + * + * Valid values range from 10 to 400. + * + * @param int $pValue + * @throws Exception + * @return PHPExcel_Worksheet_SheetView + */ + public function setZoomScale($pValue = 100) { + // Microsoft Office Excel 2007 only allows setting a scale between 10 and 400 via the user interface, + // but it is apparently still able to handle any scale >= 1 + if (($pValue >= 1) || is_null($pValue)) { + $this->_zoomScale = $pValue; + } else { + throw new Exception("Scale must be greater than or equal to 1."); + } + return $this; + } + + /** + * Get ZoomScaleNormal + * + * @return int + */ + public function getZoomScaleNormal() { + return $this->_zoomScaleNormal; + } + + /** + * Set ZoomScale + * + * Valid values range from 10 to 400. + * + * @param int $pValue + * @throws Exception + * @return PHPExcel_Worksheet_SheetView + */ + public function setZoomScaleNormal($pValue = 100) { + if (($pValue >= 1) || is_null($pValue)) { + $this->_zoomScaleNormal = $pValue; + } else { + throw new Exception("Scale must be greater than or equal to 1."); + } + return $this; + } + + /** + * Get View + * + * @return string + */ + public function getView() { + return $this->_sheetviewType; + } + + /** + * Set View + * + * Valid values are + * 'normal' self::SHEETVIEW_NORMAL + * 'pageLayout' self::SHEETVIEW_PAGE_LAYOUT + * 'pageBreakPreview' self::SHEETVIEW_PAGE_BREAK_PREVIEW + * + * @param string $pValue + * @throws Exception + * @return PHPExcel_Worksheet_SheetView + */ + public function setView($pValue = NULL) { + // MS Excel 2007 allows setting the view to 'normal', 'pageLayout' or 'pageBreakPreview' + // via the user interface + if ($pValue === NULL) + $pValue = self::SHEETVIEW_NORMAL; + if (in_array($pValue, self::$_sheetViewTypes)) { + $this->_sheetviewType = $pValue; + } else { + throw new Exception("Invalid sheetview layout type."); + } + + return $this; + } + + /** + * Implement PHP __clone to create a deep clone, not just a shallow copy. + */ + public function __clone() { + $vars = get_object_vars($this); + foreach ($vars as $key => $value) { + if (is_object($value)) { + $this->$key = clone $value; + } else { + $this->$key = $value; + } + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Worksheet/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/_notes/dwsync.xml new file mode 100644 index 0000000..bf96033 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Worksheet/_notes/dwsync.xml @@ -0,0 +1,108 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="AutoFilter.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="BaseDrawing.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="CellIterator.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="ColumnDimension.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Drawing.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="HeaderFooter.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="HeaderFooterDrawing.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="MemoryDrawing.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="PageMargins.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="PageSetup.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Protection.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Row.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="RowDimension.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="RowIterator.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="SheetView.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="RowDimension.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851409999999" remote="129984143400000000" Dst="-1" /> +<file name="AutoFilter.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851409999999" remote="129984143400000000" Dst="-1" /> +<file name="RowIterator.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851409999999" remote="129984143400000000" Dst="-1" /> +<file name="HeaderFooterDrawing.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851409999999" remote="129984143400000000" Dst="-1" /> +<file name="MemoryDrawing.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851409999999" remote="129984143400000000" Dst="-1" /> +<file name="Protection.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851409999999" remote="129984143400000000" Dst="-1" /> +<file name="BaseDrawing.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851409999999" remote="129984143400000000" Dst="-1" /> +<file name="CellIterator.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851409999999" remote="129984143400000000" Dst="-1" /> +<file name="Drawing.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851409999999" remote="129984143400000000" Dst="-1" /> +<file name="PageMargins.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851419999999" remote="129984143400000000" Dst="-1" /> +<file name="PageSetup.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851419999999" remote="129984143400000000" Dst="-1" /> +<file name="SheetView.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851419999999" remote="129984143400000000" Dst="-1" /> +<file name="ColumnDimension.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851419999999" remote="129984143400000000" Dst="-1" /> +<file name="HeaderFooter.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851419999999" remote="129984143400000000" Dst="-1" /> +<file name="Row.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851419999999" remote="129984143400000000" Dst="-1" /> +<file name="RowDimension.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851409999999" remote="129997098000000000" Dst="-1" /> +<file name="AutoFilter.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851409999999" remote="129997098000000000" Dst="-1" /> +<file name="RowIterator.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851409999999" remote="129997098000000000" Dst="-1" /> +<file name="HeaderFooterDrawing.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851409999999" remote="129997098000000000" Dst="-1" /> +<file name="MemoryDrawing.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851409999999" remote="129997098000000000" Dst="-1" /> +<file name="Protection.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851409999999" remote="129997098000000000" Dst="-1" /> +<file name="BaseDrawing.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851409999999" remote="129997098000000000" Dst="-1" /> +<file name="CellIterator.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851409999999" remote="129997098000000000" Dst="-1" /> +<file name="Drawing.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851409999999" remote="129997098000000000" Dst="-1" /> +<file name="PageMargins.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851419999999" remote="129997098000000000" Dst="-1" /> +<file name="PageSetup.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851419999999" remote="129997098000000000" Dst="-1" /> +<file name="SheetView.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851419999999" remote="129997098000000000" Dst="-1" /> +<file name="ColumnDimension.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851419999999" remote="129997098000000000" Dst="-1" /> +<file name="HeaderFooter.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851419999999" remote="129997098000000000" Dst="-1" /> +<file name="Row.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851419999999" remote="129997098000000000" Dst="-1" /> +<file name="RowDimension.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559875248851" remote="131260196400000000" Dst="1" /> +<file name="RowIterator.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559876218477" remote="131260196400000000" Dst="1" /> +<file name="AutoFilter.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559875726742" remote="131260196400000000" Dst="1" /> +<file name="HeaderFooterDrawing.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559876688620" remote="131260196400000000" Dst="1" /> +<file name="MemoryDrawing.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559877153053" remote="131260196400000000" Dst="1" /> +<file name="Protection.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559877580844" remote="131260196400000000" Dst="1" /> +<file name="BaseDrawing.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559878042633" remote="131260196400000000" Dst="1" /> +<file name="CellIterator.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559878526047" remote="131260196400000000" Dst="1" /> +<file name="Drawing.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559878955219" remote="131260196400000000" Dst="1" /> +<file name="PageMargins.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559879407853" remote="131260196400000000" Dst="1" /> +<file name="PageSetup.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559879872094" remote="131260196400000000" Dst="1" /> +<file name="SheetView.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559880307315" remote="131260196400000000" Dst="1" /> +<file name="ColumnDimension.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559880753646" remote="131260196400000000" Dst="1" /> +<file name="HeaderFooter.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559881234295" remote="131260196400000000" Dst="1" /> +<file name="Row.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559881658738" remote="131260196400000000" Dst="1" /> +<file name="AutoFilter.php" server="62.244.88.21/amashow/" local="131414752192920016" remote="131414680800000000" Dst="2" /> +<file name="RowDimension.php" server="62.244.88.21/amashow/" local="131414752192464392" remote="131414680800000000" Dst="2" /> +<file name="RowIterator.php" server="62.244.88.21/amashow/" local="131414752193346748" remote="131414680800000000" Dst="2" /> +<file name="MemoryDrawing.php" server="62.244.88.21/amashow/" local="131414752194025455" remote="131414680800000000" Dst="2" /> +<file name="HeaderFooterDrawing.php" server="62.244.88.21/amashow/" local="131414752193811642" remote="131414680800000000" Dst="2" /> +<file name="Protection.php" server="62.244.88.21/amashow/" local="131414752194365623" remote="131414680800000000" Dst="2" /> +<file name="BaseDrawing.php" server="62.244.88.21/amashow/" local="131414752194580097" remote="131414680800000000" Dst="2" /> +<file name="CellIterator.php" server="62.244.88.21/amashow/" local="131414752194780733" remote="131414680800000000" Dst="2" /> +<file name="Drawing.php" server="62.244.88.21/amashow/" local="131414752194989619" remote="131414680800000000" Dst="2" /> +<file name="PageSetup.php" server="62.244.88.21/amashow/" local="131414752195633668" remote="131414680800000000" Dst="2" /> +<file name="PageMargins.php" server="62.244.88.21/amashow/" local="131414752195184316" remote="131414680800000000" Dst="2" /> +<file name="SheetView.php" server="62.244.88.21/amashow/" local="131414752196053522" remote="131414680800000000" Dst="2" /> +<file name="ColumnDimension.php" server="62.244.88.21/amashow/" local="131414752196484251" remote="131414680800000000" Dst="2" /> +<file name="HeaderFooter.php" server="62.244.88.21/amashow/" local="131414752196889312" remote="131414680800000000" Dst="2" /> +<file name="Row.php" server="62.244.88.21/amashow/" local="131414752197083994" remote="131414680800000000" Dst="2" /> +<file name="HeaderFooter.php" server="62.244.88.21/deciday/" local="131919461330280873" remote="131826017400000000" Dst="1" /> +<file name="HeaderFooterDrawing.php" server="62.244.88.21/deciday/" local="131919461331982226" remote="131826017400000000" Dst="1" /> +<file name="SheetView.php" server="62.244.88.21/deciday/" local="131919461334069701" remote="131826017400000000" Dst="1" /> +<file name="Protection.php" server="62.244.88.21/deciday/" local="131919461333034125" remote="131826017400000000" Dst="1" /> +<file name="Drawing.php" server="62.244.88.21/deciday/" local="131919461329174229" remote="131826017400000000" Dst="1" /> +<file name="PageSetup.php" server="62.244.88.21/deciday/" local="131919461332177070" remote="131826017400000000" Dst="1" /> +<file name="RowIterator.php" server="62.244.88.21/deciday/" local="131919461333391135" remote="131826017400000000" Dst="1" /> +<file name="MemoryDrawing.php" server="62.244.88.21/deciday/" local="131919461330727757" remote="131826017400000000" Dst="1" /> +<file name="AutoFilter.php" server="62.244.88.21/deciday/" local="131919461325030668" remote="131826017400000000" Dst="1" /> +<file name="PageMargins.php" server="62.244.88.21/deciday/" local="131919461331530330" remote="131826017400000000" Dst="1" /> +<file name="BaseDrawing.php" server="62.244.88.21/deciday/" local="131919461328732314" remote="131826017400000000" Dst="1" /> +<file name="ColumnDimension.php" server="62.244.88.21/deciday/" local="131919461326872376" remote="131826017400000000" Dst="1" /> +<file name="RowDimension.php" server="62.244.88.21/deciday/" local="131919461332847085" remote="131826017400000000" Dst="1" /> +<file name="CellIterator.php" server="62.244.88.21/deciday/" local="131919461327821531" remote="131826017400000000" Dst="1" /> +<file name="Row.php" server="62.244.88.21/deciday/" local="131919461334767808" remote="131826017400000000" Dst="1" /> +<file name="AutoFilter.php" server="62.244.88.21/deciday_18/" local="131414752192920016" remote="131825945400000000" Dst="2" /> +<file name="BaseDrawing.php" server="62.244.88.21/deciday_18/" local="131414752194580097" remote="131825945400000000" Dst="2" /> +<file name="CellIterator.php" server="62.244.88.21/deciday_18/" local="131414752194780733" remote="131825945400000000" Dst="2" /> +<file name="ColumnDimension.php" server="62.244.88.21/deciday_18/" local="131414752196484251" remote="131825945400000000" Dst="2" /> +<file name="Drawing.php" server="62.244.88.21/deciday_18/" local="131414752194989619" remote="131825945400000000" Dst="2" /> +<file name="HeaderFooter.php" server="62.244.88.21/deciday_18/" local="131414752196889312" remote="131825945400000000" Dst="2" /> +<file name="HeaderFooterDrawing.php" server="62.244.88.21/deciday_18/" local="131414752193811642" remote="131825945400000000" Dst="2" /> +<file name="MemoryDrawing.php" server="62.244.88.21/deciday_18/" local="131414752194025455" remote="131825945400000000" Dst="2" /> +<file name="PageMargins.php" server="62.244.88.21/deciday_18/" local="131414752195184316" remote="131825945400000000" Dst="2" /> +<file name="PageSetup.php" server="62.244.88.21/deciday_18/" local="131414752195633668" remote="131825945400000000" Dst="2" /> +<file name="Row.php" server="62.244.88.21/deciday_18/" local="131414752197083994" remote="131825945400000000" Dst="2" /> +<file name="RowDimension.php" server="62.244.88.21/deciday_18/" local="131414752192464392" remote="131825945400000000" Dst="2" /> +<file name="Protection.php" server="62.244.88.21/deciday_18/" local="131414752194365623" remote="131825945400000000" Dst="2" /> +<file name="RowIterator.php" server="62.244.88.21/deciday_18/" local="131414752193346748" remote="131825945400000000" Dst="2" /> +<file name="SheetView.php" server="62.244.88.21/deciday_18/" local="131414752196053522" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/WorksheetIterator.php b/site/config/PHPExcel/Classes/PHPExcel/WorksheetIterator.php new file mode 100644 index 0000000..9eff538 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/WorksheetIterator.php @@ -0,0 +1,111 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_WorksheetIterator + * + * Used to iterate worksheets in PHPExcel + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_WorksheetIterator implements Iterator +{ + /** + * Spreadsheet to iterate + * + * @var PHPExcel + */ + private $_subject; + + /** + * Current iterator position + * + * @var int + */ + private $_position = 0; + + /** + * Create a new worksheet iterator + * + * @param PHPExcel $subject + */ + public function __construct(PHPExcel $subject = null) { + // Set subject + $this->_subject = $subject; + } + + /** + * Destructor + */ + public function __destruct() { + unset($this->_subject); + } + + /** + * Rewind iterator + */ + public function rewind() { + $this->_position = 0; + } + + /** + * Current PHPExcel_Worksheet + * + * @return PHPExcel_Worksheet + */ + public function current() { + return $this->_subject->getSheet($this->_position); + } + + /** + * Current key + * + * @return int + */ + public function key() { + return $this->_position; + } + + /** + * Next value + */ + public function next() { + ++$this->_position; + } + + /** + * More PHPExcel_Worksheet instances available? + * + * @return boolean + */ + public function valid() { + return $this->_position < $this->_subject->getSheetCount(); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/CSV.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/CSV.php new file mode 100644 index 0000000..11a399e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/CSV.php @@ -0,0 +1,339 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_CSV + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_CSV implements PHPExcel_Writer_IWriter { + /** + * PHPExcel object + * + * @var PHPExcel + */ + private $_phpExcel; + + /** + * Delimiter + * + * @var string + */ + private $_delimiter = ','; + + /** + * Enclosure + * + * @var string + */ + private $_enclosure = '"'; + + /** + * Line ending + * + * @var string + */ + private $_lineEnding = PHP_EOL; + + /** + * Sheet index to write + * + * @var int + */ + private $_sheetIndex = 0; + + /** + * Pre-calculate formulas + * + * @var boolean + */ + private $_preCalculateFormulas = true; + + /** + * Whether to write a BOM (for UTF8). + * + * @var boolean + */ + private $_useBOM = false; + + /** + * Whether to write a fully Excel compatible CSV file. + * + * @var boolean + */ + private $_excelCompatibility = false; + + /** + * Create a new PHPExcel_Writer_CSV + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) { + $this->_phpExcel = $phpExcel; + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename + * @throws Exception + */ + public function save($pFilename = null) { + // Fetch sheet + $sheet = $this->_phpExcel->getSheet($this->_sheetIndex); + + $saveDebugLog = PHPExcel_Calculation::getInstance()->writeDebugLog; + PHPExcel_Calculation::getInstance()->writeDebugLog = false; + $saveArrayReturnType = PHPExcel_Calculation::getArrayReturnType(); + PHPExcel_Calculation::setArrayReturnType(PHPExcel_Calculation::RETURN_ARRAY_AS_VALUE); + + // Open file + $fileHandle = fopen($pFilename, 'wb+'); + if ($fileHandle === false) { + throw new Exception("Could not open file $pFilename for writing."); + } + + if ($this->_excelCompatibility) { + // Write the UTF-16LE BOM code + fwrite($fileHandle, "\xFF\xFE"); // Excel uses UTF-16LE encoding + $this->setEnclosure(); // Default enclosure is " + $this->setDelimiter("\t"); // Excel delimiter is a TAB + } elseif ($this->_useBOM) { + // Write the UTF-8 BOM code + fwrite($fileHandle, "\xEF\xBB\xBF"); + } + + // Identify the range that we need to extract from the worksheet + $maxCol = $sheet->getHighestColumn(); + $maxRow = $sheet->getHighestRow(); + + // Write rows to file + for($row = 1; $row <= $maxRow; ++$row) { + // Convert the row to an array... + $cellsArray = $sheet->rangeToArray('A'.$row.':'.$maxCol.$row,'', $this->_preCalculateFormulas); + // ... and write to the file + $this->_writeLine($fileHandle, $cellsArray[0]); + } + + // Close file + fclose($fileHandle); + + PHPExcel_Calculation::setArrayReturnType($saveArrayReturnType); + PHPExcel_Calculation::getInstance()->writeDebugLog = $saveDebugLog; + } + + /** + * Get delimiter + * + * @return string + */ + public function getDelimiter() { + return $this->_delimiter; + } + + /** + * Set delimiter + * + * @param string $pValue Delimiter, defaults to , + * @return PHPExcel_Writer_CSV + */ + public function setDelimiter($pValue = ',') { + $this->_delimiter = $pValue; + return $this; + } + + /** + * Get enclosure + * + * @return string + */ + public function getEnclosure() { + return $this->_enclosure; + } + + /** + * Set enclosure + * + * @param string $pValue Enclosure, defaults to " + * @return PHPExcel_Writer_CSV + */ + public function setEnclosure($pValue = '"') { + if ($pValue == '') { + $pValue = null; + } + $this->_enclosure = $pValue; + return $this; + } + + /** + * Get line ending + * + * @return string + */ + public function getLineEnding() { + return $this->_lineEnding; + } + + /** + * Set line ending + * + * @param string $pValue Line ending, defaults to OS line ending (PHP_EOL) + * @return PHPExcel_Writer_CSV + */ + public function setLineEnding($pValue = PHP_EOL) { + $this->_lineEnding = $pValue; + return $this; + } + + /** + * Get whether BOM should be used + * + * @return boolean + */ + public function getUseBOM() { + return $this->_useBOM; + } + + /** + * Set whether BOM should be used + * + * @param boolean $pValue Use UTF-8 byte-order mark? Defaults to false + * @return PHPExcel_Writer_CSV + */ + public function setUseBOM($pValue = false) { + $this->_useBOM = $pValue; + return $this; + } + + /** + * Get whether the file should be saved with full Excel Compatibility + * + * @return boolean + */ + public function getExcelCompatibility() { + return $this->_excelCompatibility; + } + + /** + * Set whether the file should be saved with full Excel Compatibility + * + * @param boolean $pValue Set the file to be written as a fully Excel compatible csv file + * Note that this overrides other settings such as useBOM, enclosure and delimiter + * @return PHPExcel_Writer_CSV + */ + public function setExcelCompatibility($pValue = false) { + $this->_excelCompatibility = $pValue; + return $this; + } + + /** + * Get sheet index + * + * @return int + */ + public function getSheetIndex() { + return $this->_sheetIndex; + } + + /** + * Set sheet index + * + * @param int $pValue Sheet index + * @return PHPExcel_Writer_CSV + */ + public function setSheetIndex($pValue = 0) { + $this->_sheetIndex = $pValue; + return $this; + } + + /** + * Write line to CSV file + * + * @param mixed $pFileHandle PHP filehandle + * @param array $pValues Array containing values in a row + * @throws Exception + */ + private function _writeLine($pFileHandle = null, $pValues = null) { + if (is_array($pValues)) { + // No leading delimiter + $writeDelimiter = false; + + // Build the line + $line = ''; + + foreach ($pValues as $element) { + // Escape enclosures + $element = str_replace($this->_enclosure, $this->_enclosure . $this->_enclosure, $element); + + // Add delimiter + if ($writeDelimiter) { + $line .= $this->_delimiter; + } else { + $writeDelimiter = true; + } + + // Add enclosed string + $line .= $this->_enclosure . $element . $this->_enclosure; + } + + // Add line ending + $line .= $this->_lineEnding; + + // Write to file + if ($this->_excelCompatibility) { + fwrite($pFileHandle, mb_convert_encoding($line,"UTF-16LE","UTF-8")); + } else { + fwrite($pFileHandle, $line); + } + } else { + throw new Exception("Invalid data row passed to CSV writer."); + } + } + + /** + * Get Pre-Calculate Formulas + * + * @return boolean + */ + public function getPreCalculateFormulas() { + return $this->_preCalculateFormulas; + } + + /** + * Set Pre-Calculate Formulas + * + * @param boolean $pValue Pre-Calculate Formulas? + * @return PHPExcel_Writer_CSV + */ + public function setPreCalculateFormulas($pValue = true) { + $this->_preCalculateFormulas = $pValue; + return $this; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007.php new file mode 100644 index 0000000..6a1b988 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007.php @@ -0,0 +1,583 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007 + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007 implements PHPExcel_Writer_IWriter +{ + /** + * Write charts that are defined in the workbook? + * Identifies whether the Writer should write definitions for any charts that exist in the PHPExcel object; + * + * @var boolean + */ + private $_includeCharts = false; + + /** + * Pre-calculate formulas + * + * @var boolean + */ + private $_preCalculateFormulas = true; + + /** + * Office2003 compatibility + * + * @var boolean + */ + private $_office2003compatibility = false; + + /** + * Private writer parts + * + * @var PHPExcel_Writer_Excel2007_WriterPart[] + */ + private $_writerParts = array(); + + /** + * Private PHPExcel + * + * @var PHPExcel + */ + private $_spreadSheet; + + /** + * Private string table + * + * @var string[] + */ + private $_stringTable = array(); + + /** + * Private unique PHPExcel_Style_Conditional HashTable + * + * @var PHPExcel_HashTable + */ + private $_stylesConditionalHashTable; + + /** + * Private unique PHPExcel_Style_Fill HashTable + * + * @var PHPExcel_HashTable + */ + private $_fillHashTable; + + /** + * Private unique PHPExcel_Style_Font HashTable + * + * @var PHPExcel_HashTable + */ + private $_fontHashTable; + + /** + * Private unique PHPExcel_Style_Borders HashTable + * + * @var PHPExcel_HashTable + */ + private $_bordersHashTable ; + + /** + * Private unique PHPExcel_Style_NumberFormat HashTable + * + * @var PHPExcel_HashTable + */ + private $_numFmtHashTable; + + /** + * Private unique PHPExcel_Worksheet_BaseDrawing HashTable + * + * @var PHPExcel_HashTable + */ + private $_drawingHashTable; + + /** + * Use disk caching where possible? + * + * @var boolean + */ + private $_useDiskCaching = false; + + /** + * Disk caching directory + * + * @var string + */ + private $_diskCachingDirectory = './'; + + /** + * Create a new PHPExcel_Writer_Excel2007 + * + * @param PHPExcel $pPHPExcel + */ + public function __construct(PHPExcel $pPHPExcel = null) + { + // Assign PHPExcel + $this->setPHPExcel($pPHPExcel); + + $writerPartsArray = array( 'stringtable' => 'PHPExcel_Writer_Excel2007_StringTable', + 'contenttypes' => 'PHPExcel_Writer_Excel2007_ContentTypes', + 'docprops' => 'PHPExcel_Writer_Excel2007_DocProps', + 'rels' => 'PHPExcel_Writer_Excel2007_Rels', + 'theme' => 'PHPExcel_Writer_Excel2007_Theme', + 'style' => 'PHPExcel_Writer_Excel2007_Style', + 'workbook' => 'PHPExcel_Writer_Excel2007_Workbook', + 'worksheet' => 'PHPExcel_Writer_Excel2007_Worksheet', + 'drawing' => 'PHPExcel_Writer_Excel2007_Drawing', + 'comments' => 'PHPExcel_Writer_Excel2007_Comments', + 'chart' => 'PHPExcel_Writer_Excel2007_Chart', + ); + + // Initialise writer parts + // and Assign their parent IWriters + foreach ($writerPartsArray as $writer => $class) { + $this->_writerParts[$writer] = new $class($this); + } + + $hashTablesArray = array( '_stylesConditionalHashTable', '_fillHashTable', '_fontHashTable', + '_bordersHashTable', '_numFmtHashTable', '_drawingHashTable' + ); + + // Set HashTable variables + foreach ($hashTablesArray as $tableName) { + $this->$tableName = new PHPExcel_HashTable(); + } + } + + /** + * Get writer part + * + * @param string $pPartName Writer part name + * @return PHPExcel_Writer_Excel2007_WriterPart + */ + public function getWriterPart($pPartName = '') { + if ($pPartName != '' && isset($this->_writerParts[strtolower($pPartName)])) { + return $this->_writerParts[strtolower($pPartName)]; + } else { + return null; + } + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename + * @throws Exception + */ + public function save($pFilename = null) + { + if ($this->_spreadSheet !== NULL) { + // garbage collect + $this->_spreadSheet->garbageCollect(); + + // If $pFilename is php://output or php://stdout, make it a temporary file... + $originalFilename = $pFilename; + if (strtolower($pFilename) == 'php://output' || strtolower($pFilename) == 'php://stdout') { + $pFilename = @tempnam(PHPExcel_Shared_File::sys_get_temp_dir(), 'phpxltmp'); + if ($pFilename == '') { + $pFilename = $originalFilename; + } + } + + $saveDebugLog = PHPExcel_Calculation::getInstance()->writeDebugLog; + PHPExcel_Calculation::getInstance()->writeDebugLog = false; + $saveDateReturnType = PHPExcel_Calculation_Functions::getReturnDateType(); + PHPExcel_Calculation_Functions::setReturnDateType(PHPExcel_Calculation_Functions::RETURNDATE_EXCEL); + + // Create string lookup table + $this->_stringTable = array(); + for ($i = 0; $i < $this->_spreadSheet->getSheetCount(); ++$i) { + $this->_stringTable = $this->getWriterPart('StringTable')->createStringTable($this->_spreadSheet->getSheet($i), $this->_stringTable); + } + + // Create styles dictionaries + $this->_stylesConditionalHashTable->addFromSource( $this->getWriterPart('Style')->allConditionalStyles($this->_spreadSheet) ); + $this->_fillHashTable->addFromSource( $this->getWriterPart('Style')->allFills($this->_spreadSheet) ); + $this->_fontHashTable->addFromSource( $this->getWriterPart('Style')->allFonts($this->_spreadSheet) ); + $this->_bordersHashTable->addFromSource( $this->getWriterPart('Style')->allBorders($this->_spreadSheet) ); + $this->_numFmtHashTable->addFromSource( $this->getWriterPart('Style')->allNumberFormats($this->_spreadSheet) ); + + // Create drawing dictionary + $this->_drawingHashTable->addFromSource( $this->getWriterPart('Drawing')->allDrawings($this->_spreadSheet) ); + + // Create new ZIP file and open it for writing + $zipClass = PHPExcel_Settings::getZipClass(); + $objZip = new $zipClass(); + + // Retrieve OVERWRITE and CREATE constants from the instantiated zip class + // This method of accessing constant values from a dynamic class should work with all appropriate versions of PHP + $ro = new ReflectionObject($objZip); + $zipOverWrite = $ro->getConstant('OVERWRITE'); + $zipCreate = $ro->getConstant('CREATE'); + + if (file_exists($pFilename)) { + unlink($pFilename); + } + // Try opening the ZIP file + if ($objZip->open($pFilename, $zipOverWrite) !== true) { + if ($objZip->open($pFilename, $zipCreate) !== true) { + throw new Exception("Could not open " . $pFilename . " for writing."); + } + } + + // Add [Content_Types].xml to ZIP file + $objZip->addFromString('[Content_Types].xml', $this->getWriterPart('ContentTypes')->writeContentTypes($this->_spreadSheet, $this->_includeCharts)); + + // Add relationships to ZIP file + $objZip->addFromString('_rels/.rels', $this->getWriterPart('Rels')->writeRelationships($this->_spreadSheet)); + $objZip->addFromString('xl/_rels/workbook.xml.rels', $this->getWriterPart('Rels')->writeWorkbookRelationships($this->_spreadSheet)); + + // Add document properties to ZIP file + $objZip->addFromString('docProps/app.xml', $this->getWriterPart('DocProps')->writeDocPropsApp($this->_spreadSheet)); + $objZip->addFromString('docProps/core.xml', $this->getWriterPart('DocProps')->writeDocPropsCore($this->_spreadSheet)); + $customPropertiesPart = $this->getWriterPart('DocProps')->writeDocPropsCustom($this->_spreadSheet); + if ($customPropertiesPart !== NULL) { + $objZip->addFromString('docProps/custom.xml', $customPropertiesPart); + } + + // Add theme to ZIP file + $objZip->addFromString('xl/theme/theme1.xml', $this->getWriterPart('Theme')->writeTheme($this->_spreadSheet)); + + // Add string table to ZIP file + $objZip->addFromString('xl/sharedStrings.xml', $this->getWriterPart('StringTable')->writeStringTable($this->_stringTable)); + + // Add styles to ZIP file + $objZip->addFromString('xl/styles.xml', $this->getWriterPart('Style')->writeStyles($this->_spreadSheet)); + + // Add workbook to ZIP file + $objZip->addFromString('xl/workbook.xml', $this->getWriterPart('Workbook')->writeWorkbook($this->_spreadSheet, $this->_preCalculateFormulas)); + + $chartCount = 0; + // Add worksheets + for ($i = 0; $i < $this->_spreadSheet->getSheetCount(); ++$i) { + $objZip->addFromString('xl/worksheets/sheet' . ($i + 1) . '.xml', $this->getWriterPart('Worksheet')->writeWorksheet($this->_spreadSheet->getSheet($i), $this->_stringTable, $this->_includeCharts)); + if ($this->_includeCharts) { + $charts = $this->_spreadSheet->getSheet($i)->getChartCollection(); + if (count($charts) > 0) { + foreach($charts as $chart) { + $objZip->addFromString('xl/charts/chart' . ($chartCount + 1) . '.xml', $this->getWriterPart('Chart')->writeChart($chart)); + $chartCount++; + } + } + } + } + + $chartRef1 = $chartRef2 = 0; + // Add worksheet relationships (drawings, ...) + for ($i = 0; $i < $this->_spreadSheet->getSheetCount(); ++$i) { + + // Add relationships + $objZip->addFromString('xl/worksheets/_rels/sheet' . ($i + 1) . '.xml.rels', $this->getWriterPart('Rels')->writeWorksheetRelationships($this->_spreadSheet->getSheet($i), ($i + 1), $this->_includeCharts)); + + $drawings = $this->_spreadSheet->getSheet($i)->getDrawingCollection(); + $drawingCount = count($drawings); + if ($this->_includeCharts) { + $chartCount = $this->_spreadSheet->getSheet($i)->getChartCount(); + } + + // Add drawing and image relationship parts + if (($drawingCount > 0) || ($chartCount > 0)) { + // Drawing relationships + $objZip->addFromString('xl/drawings/_rels/drawing' . ($i + 1) . '.xml.rels', $this->getWriterPart('Rels')->writeDrawingRelationships($this->_spreadSheet->getSheet($i),$chartRef1, $this->_includeCharts)); + + // Drawings + $objZip->addFromString('xl/drawings/drawing' . ($i + 1) . '.xml', $this->getWriterPart('Drawing')->writeDrawings($this->_spreadSheet->getSheet($i),$chartRef2,$this->_includeCharts)); + } + + // Add comment relationship parts + if (count($this->_spreadSheet->getSheet($i)->getComments()) > 0) { + // VML Comments + $objZip->addFromString('xl/drawings/vmlDrawing' . ($i + 1) . '.vml', $this->getWriterPart('Comments')->writeVMLComments($this->_spreadSheet->getSheet($i))); + + // Comments + $objZip->addFromString('xl/comments' . ($i + 1) . '.xml', $this->getWriterPart('Comments')->writeComments($this->_spreadSheet->getSheet($i))); + } + + // Add header/footer relationship parts + if (count($this->_spreadSheet->getSheet($i)->getHeaderFooter()->getImages()) > 0) { + // VML Drawings + $objZip->addFromString('xl/drawings/vmlDrawingHF' . ($i + 1) . '.vml', $this->getWriterPart('Drawing')->writeVMLHeaderFooterImages($this->_spreadSheet->getSheet($i))); + + // VML Drawing relationships + $objZip->addFromString('xl/drawings/_rels/vmlDrawingHF' . ($i + 1) . '.vml.rels', $this->getWriterPart('Rels')->writeHeaderFooterDrawingRelationships($this->_spreadSheet->getSheet($i))); + + // Media + foreach ($this->_spreadSheet->getSheet($i)->getHeaderFooter()->getImages() as $image) { + $objZip->addFromString('xl/media/' . $image->getIndexedFilename(), file_get_contents($image->getPath())); + } + } + } + + // Add media + for ($i = 0; $i < $this->getDrawingHashTable()->count(); ++$i) { + if ($this->getDrawingHashTable()->getByIndex($i) instanceof PHPExcel_Worksheet_Drawing) { + $imageContents = null; + $imagePath = $this->getDrawingHashTable()->getByIndex($i)->getPath(); + + if (strpos($imagePath, 'zip://') !== false) { + $imagePath = substr($imagePath, 6); + $imagePathSplitted = explode('#', $imagePath); + + $imageZip = new ZipArchive(); + $imageZip->open($imagePathSplitted[0]); + $imageContents = $imageZip->getFromName($imagePathSplitted[1]); + $imageZip->close(); + unset($imageZip); + } else { + $imageContents = file_get_contents($imagePath); + } + + $objZip->addFromString('xl/media/' . str_replace(' ', '_', $this->getDrawingHashTable()->getByIndex($i)->getIndexedFilename()), $imageContents); + } else if ($this->getDrawingHashTable()->getByIndex($i) instanceof PHPExcel_Worksheet_MemoryDrawing) { + ob_start(); + call_user_func( + $this->getDrawingHashTable()->getByIndex($i)->getRenderingFunction(), + $this->getDrawingHashTable()->getByIndex($i)->getImageResource() + ); + $imageContents = ob_get_contents(); + ob_end_clean(); + + $objZip->addFromString('xl/media/' . str_replace(' ', '_', $this->getDrawingHashTable()->getByIndex($i)->getIndexedFilename()), $imageContents); + } + } + + PHPExcel_Calculation_Functions::setReturnDateType($saveDateReturnType); + PHPExcel_Calculation::getInstance()->writeDebugLog = $saveDebugLog; + + // Close file + if ($objZip->close() === false) { + throw new Exception("Could not close zip file $pFilename."); + } + + // If a temporary file was used, copy it to the correct file stream + if ($originalFilename != $pFilename) { + if (copy($pFilename, $originalFilename) === false) { + throw new Exception("Could not copy temporary zip file $pFilename to $originalFilename."); + } + @unlink($pFilename); + } + } else { + throw new Exception("PHPExcel object unassigned."); + } + } + + /** + * Get PHPExcel object + * + * @return PHPExcel + * @throws Exception + */ + public function getPHPExcel() { + if ($this->_spreadSheet !== null) { + return $this->_spreadSheet; + } else { + throw new Exception("No PHPExcel assigned."); + } + } + + /** + * Set PHPExcel object + * + * @param PHPExcel $pPHPExcel PHPExcel object + * @throws Exception + * @return PHPExcel_Writer_Excel2007 + */ + public function setPHPExcel(PHPExcel $pPHPExcel = null) { + $this->_spreadSheet = $pPHPExcel; + return $this; + } + + /** + * Get string table + * + * @return string[] + */ + public function getStringTable() { + return $this->_stringTable; + } + + /** + * Get PHPExcel_Style_Conditional HashTable + * + * @return PHPExcel_HashTable + */ + public function getStylesConditionalHashTable() { + return $this->_stylesConditionalHashTable; + } + + /** + * Get PHPExcel_Style_Fill HashTable + * + * @return PHPExcel_HashTable + */ + public function getFillHashTable() { + return $this->_fillHashTable; + } + + /** + * Get PHPExcel_Style_Font HashTable + * + * @return PHPExcel_HashTable + */ + public function getFontHashTable() { + return $this->_fontHashTable; + } + + /** + * Get PHPExcel_Style_Borders HashTable + * + * @return PHPExcel_HashTable + */ + public function getBordersHashTable() { + return $this->_bordersHashTable; + } + + /** + * Get PHPExcel_Style_NumberFormat HashTable + * + * @return PHPExcel_HashTable + */ + public function getNumFmtHashTable() { + return $this->_numFmtHashTable; + } + + /** + * Get PHPExcel_Worksheet_BaseDrawing HashTable + * + * @return PHPExcel_HashTable + */ + public function getDrawingHashTable() { + return $this->_drawingHashTable; + } + + /** + * Write charts in workbook? + * If this is true, then the Writer will write definitions for any charts that exist in the PHPExcel object. + * If false (the default) it will ignore any charts defined in the PHPExcel object. + * + * @return boolean + */ + public function getIncludeCharts() { + return $this->_includeCharts; + } + + /** + * Set write charts in workbook + * Set to true, to advise the Writer to include any charts that exist in the PHPExcel object. + * Set to false (the default) to ignore charts. + * + * @param boolean $pValue + * + * @return PHPExcel_Writer_Excel2007 + */ + public function setIncludeCharts($pValue = false) { + $this->_includeCharts = (boolean) $pValue; + return $this; + } + + /** + * Get Pre-Calculate Formulas + * + * @return boolean + */ + public function getPreCalculateFormulas() { + return $this->_preCalculateFormulas; + } + + /** + * Set Pre-Calculate Formulas + * + * @param boolean $pValue Pre-Calculate Formulas? + */ + public function setPreCalculateFormulas($pValue = true) { + $this->_preCalculateFormulas = $pValue; + } + + /** + * Get Office2003 compatibility + * + * @return boolean + */ + public function getOffice2003Compatibility() { + return $this->_office2003compatibility; + } + + /** + * Set Pre-Calculate Formulas + * + * @param boolean $pValue Office2003 compatibility? + * @return PHPExcel_Writer_Excel2007 + */ + public function setOffice2003Compatibility($pValue = false) { + $this->_office2003compatibility = $pValue; + return $this; + } + + /** + * Get use disk caching where possible? + * + * @return boolean + */ + public function getUseDiskCaching() { + return $this->_useDiskCaching; + } + + /** + * Set use disk caching where possible? + * + * @param boolean $pValue + * @param string $pDirectory Disk caching directory + * @throws Exception Exception when directory does not exist + * @return PHPExcel_Writer_Excel2007 + */ + public function setUseDiskCaching($pValue = false, $pDirectory = null) { + $this->_useDiskCaching = $pValue; + + if ($pDirectory !== NULL) { + if (is_dir($pDirectory)) { + $this->_diskCachingDirectory = $pDirectory; + } else { + throw new Exception("Directory does not exist: $pDirectory"); + } + } + return $this; + } + + /** + * Get disk caching directory + * + * @return string + */ + public function getDiskCachingDirectory() { + return $this->_diskCachingDirectory; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Chart.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Chart.php new file mode 100644 index 0000000..d181d51 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Chart.php @@ -0,0 +1,1181 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_Chart + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_Chart extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write charts to XML format + * + * @param PHPExcel_Chart $pChart + * @return string XML Output + * @throws Exception + */ + public function writeChart(PHPExcel_Chart $pChart = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + // Ensure that data series values are up-to-date before we save + $pChart->refresh(); + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // c:chartSpace + $objWriter->startElement('c:chartSpace'); + $objWriter->writeAttribute('xmlns:c', 'http://schemas.openxmlformats.org/drawingml/2006/chart'); + $objWriter->writeAttribute('xmlns:a', 'http://schemas.openxmlformats.org/drawingml/2006/main'); + $objWriter->writeAttribute('xmlns:r', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + + $objWriter->startElement('c:date1904'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + $objWriter->startElement('c:lang'); + $objWriter->writeAttribute('val', "en-GB"); + $objWriter->endElement(); + $objWriter->startElement('c:roundedCorners'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $this->_writeAlternateContent($objWriter); + + $objWriter->startElement('c:chart'); + + $this->_writeTitle($pChart->getTitle(), $objWriter); + + $objWriter->startElement('c:autoTitleDeleted'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $this->_writePlotArea($pChart->getPlotArea(), + $pChart->getXAxisLabel(), + $pChart->getYAxisLabel(), + $objWriter, + $pChart->getWorksheet() + ); + + $this->_writeLegend($pChart->getLegend(), $objWriter); + + + $objWriter->startElement('c:plotVisOnly'); + $objWriter->writeAttribute('val', 1); + $objWriter->endElement(); + + $objWriter->startElement('c:dispBlanksAs'); + $objWriter->writeAttribute('val', "gap"); + $objWriter->endElement(); + + $objWriter->startElement('c:showDLblsOverMax'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->endElement(); + + $this->_writePrintSettings($objWriter); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write Chart Title + * + * @param PHPExcel_Chart_Title $title + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws Exception + */ + private function _writeTitle(PHPExcel_Chart_Title $title = null, $objWriter) + { + if (is_null($title)) { + return; + } + + $objWriter->startElement('c:title'); + $objWriter->startElement('c:tx'); + $objWriter->startElement('c:rich'); + + $objWriter->startElement('a:bodyPr'); + $objWriter->endElement(); + + $objWriter->startElement('a:lstStyle'); + $objWriter->endElement(); + + $objWriter->startElement('a:p'); + + $caption = $title->getCaption(); + if ((is_array($caption)) && (count($caption) > 0)) + $caption = $caption[0]; + $this->getParentWriter()->getWriterPart('stringtable')->writeRichTextForCharts($objWriter, $caption, 'a'); + + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + $layout = $title->getLayout(); + $this->_writeLayout($layout, $objWriter); + + $objWriter->startElement('c:overlay'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Chart Legend + * + * @param PHPExcel_Chart_Legend $legend + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws Exception + */ + private function _writeLegend(PHPExcel_Chart_Legend $legend = null, $objWriter) + { + if (is_null($legend)) { + return; + } + + $objWriter->startElement('c:legend'); + + $objWriter->startElement('c:legendPos'); + $objWriter->writeAttribute('val', $legend->getPosition()); + $objWriter->endElement(); + + $layout = $legend->getLayout(); + $this->_writeLayout($layout, $objWriter); + + $objWriter->startElement('c:overlay'); + $objWriter->writeAttribute('val', ($legend->getOverlay()) ? '1' : '0'); + $objWriter->endElement(); + + $objWriter->startElement('c:txPr'); + $objWriter->startElement('a:bodyPr'); + $objWriter->endElement(); + + $objWriter->startElement('a:lstStyle'); + $objWriter->endElement(); + + $objWriter->startElement('a:p'); + $objWriter->startElement('a:pPr'); + $objWriter->writeAttribute('rtl', 0); + + $objWriter->startElement('a:defRPr'); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('a:endParaRPr'); + $objWriter->writeAttribute('lang', "en-US"); + $objWriter->endElement(); + + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Chart Plot Area + * + * @param PHPExcel_Chart_PlotArea $plotArea + * @param PHPExcel_Chart_Title $xAxisLabel + * @param PHPExcel_Chart_Title $yAxisLabel + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws Exception + */ + private function _writePlotArea(PHPExcel_Chart_PlotArea $plotArea, + PHPExcel_Chart_Title $xAxisLabel = NULL, + PHPExcel_Chart_Title $yAxisLabel = NULL, + $objWriter, + PHPExcel_Worksheet $pSheet) + { + if (is_null($plotArea)) { + return; + } + + $id1 = $id2 = 0; + $objWriter->startElement('c:plotArea'); + + $layout = $plotArea->getLayout(); + + $this->_writeLayout($layout, $objWriter); + + $chartTypes = self::_getChartType($plotArea); + $catIsMultiLevelSeries = $valIsMultiLevelSeries = FALSE; + $plotGroupingType = ''; + foreach($chartTypes as $chartType) { + $objWriter->startElement('c:'.$chartType); + + $groupCount = $plotArea->getPlotGroupCount(); + for($i = 0; $i < $groupCount; ++$i) { + $plotGroup = $plotArea->getPlotGroupByIndex($i); + $groupType = $plotGroup->getPlotType(); + if ($groupType == $chartType) { + + $plotStyle = $plotGroup->getPlotStyle(); + if ($groupType === PHPExcel_Chart_DataSeries::TYPE_RADARCHART) { + $objWriter->startElement('c:radarStyle'); + $objWriter->writeAttribute('val', $plotStyle ); + $objWriter->endElement(); + } elseif ($groupType === PHPExcel_Chart_DataSeries::TYPE_SCATTERCHART) { + $objWriter->startElement('c:scatterStyle'); + $objWriter->writeAttribute('val', $plotStyle ); + $objWriter->endElement(); + } + + $this->_writePlotGroup($plotGroup, $chartType, $objWriter, $catIsMultiLevelSeries, $valIsMultiLevelSeries, $plotGroupingType, $pSheet); + } + } + + $this->_writeDataLbls($objWriter, $layout); + + if ($chartType === PHPExcel_Chart_DataSeries::TYPE_LINECHART) { + // Line only, Line3D can't be smoothed + + $objWriter->startElement('c:smooth'); + $objWriter->writeAttribute('val', (integer) $plotGroup->getSmoothLine() ); + $objWriter->endElement(); + } elseif (($chartType === PHPExcel_Chart_DataSeries::TYPE_BARCHART) || + ($chartType === PHPExcel_Chart_DataSeries::TYPE_BARCHART_3D)) { + + $objWriter->startElement('c:gapWidth'); + $objWriter->writeAttribute('val', 150 ); + $objWriter->endElement(); + + if ($plotGroupingType == 'percentStacked' || + $plotGroupingType == 'stacked') { + + $objWriter->startElement('c:overlap'); + $objWriter->writeAttribute('val', 100 ); + $objWriter->endElement(); + } + } elseif ($chartType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) { + + $objWriter->startElement('c:bubbleScale'); + $objWriter->writeAttribute('val', 25 ); + $objWriter->endElement(); + + $objWriter->startElement('c:showNegBubbles'); + $objWriter->writeAttribute('val', 0 ); + $objWriter->endElement(); + } elseif ($chartType === PHPExcel_Chart_DataSeries::TYPE_STOCKCHART) { + + $objWriter->startElement('c:hiLowLines'); + $objWriter->endElement(); + } + + // Generate 2 unique numbers to use for axId values +// $id1 = $id2 = rand(10000000,99999999); +// do { +// $id2 = rand(10000000,99999999); +// } while ($id1 == $id2); + $id1 = '75091328'; + $id2 = '75089408'; + + if (($chartType !== PHPExcel_Chart_DataSeries::TYPE_PIECHART) && + ($chartType !== PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) && + ($chartType !== PHPExcel_Chart_DataSeries::TYPE_DONUTCHART)) { + + $objWriter->startElement('c:axId'); + $objWriter->writeAttribute('val', $id1 ); + $objWriter->endElement(); + $objWriter->startElement('c:axId'); + $objWriter->writeAttribute('val', $id2 ); + $objWriter->endElement(); + } else { + $objWriter->startElement('c:firstSliceAng'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + if ($chartType === PHPExcel_Chart_DataSeries::TYPE_DONUTCHART) { + + $objWriter->startElement('c:holeSize'); + $objWriter->writeAttribute('val', 50); + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + } + + if (($chartType !== PHPExcel_Chart_DataSeries::TYPE_PIECHART) && + ($chartType !== PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) && + ($chartType !== PHPExcel_Chart_DataSeries::TYPE_DONUTCHART)) { + + if ($chartType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) { + $this->_writeValAx($objWriter,$plotArea,$xAxisLabel,$chartType,$id1,$id2,$catIsMultiLevelSeries); + } else { + $this->_writeCatAx($objWriter,$plotArea,$xAxisLabel,$chartType,$id1,$id2,$catIsMultiLevelSeries); + } + + $this->_writeValAx($objWriter,$plotArea,$yAxisLabel,$chartType,$id1,$id2,$valIsMultiLevelSeries); + } + + $objWriter->endElement(); + } + + /** + * Write Data Labels + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Chart_Layout $chartLayout Chart layout + * @throws Exception + */ + private function _writeDataLbls($objWriter, $chartLayout) + { + $objWriter->startElement('c:dLbls'); + + $objWriter->startElement('c:showLegendKey'); + $showLegendKey = (empty($chartLayout)) ? 0 : $chartLayout->getShowLegendKey(); + $objWriter->writeAttribute('val', ((empty($showLegendKey)) ? 0 : 1) ); + $objWriter->endElement(); + + + $objWriter->startElement('c:showVal'); + $showVal = (empty($chartLayout)) ? 0 : $chartLayout->getShowVal(); + $objWriter->writeAttribute('val', ((empty($showVal)) ? 0 : 1) ); + $objWriter->endElement(); + + $objWriter->startElement('c:showCatName'); + $showCatName = (empty($chartLayout)) ? 0 : $chartLayout->getShowCatName(); + $objWriter->writeAttribute('val', ((empty($showCatName)) ? 0 : 1) ); + $objWriter->endElement(); + + $objWriter->startElement('c:showSerName'); + $showSerName = (empty($chartLayout)) ? 0 : $chartLayout->getShowSerName(); + $objWriter->writeAttribute('val', ((empty($showSerName)) ? 0 : 1) ); + $objWriter->endElement(); + + $objWriter->startElement('c:showPercent'); + $showPercent = (empty($chartLayout)) ? 0 : $chartLayout->getShowPercent(); + $objWriter->writeAttribute('val', ((empty($showPercent)) ? 0 : 1) ); + $objWriter->endElement(); + + $objWriter->startElement('c:showBubbleSize'); + $showBubbleSize = (empty($chartLayout)) ? 0 : $chartLayout->getShowBubbleSize(); + $objWriter->writeAttribute('val', ((empty($showBubbleSize)) ? 0 : 1) ); + $objWriter->endElement(); + + $objWriter->startElement('c:showLeaderLines'); + $showLeaderLines = (empty($chartLayout)) ? 1 : $chartLayout->getShowLeaderLines(); + $objWriter->writeAttribute('val', ((empty($showLeaderLines)) ? 0 : 1) ); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Category Axis + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Chart_PlotArea $plotArea + * @param PHPExcel_Chart_Title $xAxisLabel + * @param string $groupType Chart type + * @param string $id1 + * @param string $id2 + * @param boolean $isMultiLevelSeries + * @throws Exception + */ + private function _writeCatAx($objWriter, PHPExcel_Chart_PlotArea $plotArea, $xAxisLabel, $groupType, $id1, $id2, $isMultiLevelSeries) + { + $objWriter->startElement('c:catAx'); + + if ($id1 > 0) { + $objWriter->startElement('c:axId'); + $objWriter->writeAttribute('val', $id1); + $objWriter->endElement(); + } + + $objWriter->startElement('c:scaling'); + $objWriter->startElement('c:orientation'); + $objWriter->writeAttribute('val', "minMax"); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('c:delete'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->startElement('c:axPos'); + $objWriter->writeAttribute('val', "b"); + $objWriter->endElement(); + + if (!is_null($xAxisLabel)) { + $objWriter->startElement('c:title'); + $objWriter->startElement('c:tx'); + $objWriter->startElement('c:rich'); + + $objWriter->startElement('a:bodyPr'); + $objWriter->endElement(); + + $objWriter->startElement('a:lstStyle'); + $objWriter->endElement(); + + $objWriter->startElement('a:p'); + $objWriter->startElement('a:r'); + + $caption = $xAxisLabel->getCaption(); + if (is_array($caption)) + $caption = $caption[0]; + $objWriter->startElement('a:t'); +// $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeRawData(PHPExcel_Shared_String::ControlCharacterPHP2OOXML( $caption )); + $objWriter->endElement(); + + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('c:overlay'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $layout = $xAxisLabel->getLayout(); + $this->_writeLayout($layout, $objWriter); + + $objWriter->endElement(); + + } + + $objWriter->startElement('c:numFmt'); + $objWriter->writeAttribute('formatCode', "General"); + $objWriter->writeAttribute('sourceLinked', 1); + $objWriter->endElement(); + + $objWriter->startElement('c:majorTickMark'); + $objWriter->writeAttribute('val', "out"); + $objWriter->endElement(); + + $objWriter->startElement('c:minorTickMark'); + $objWriter->writeAttribute('val', "none"); + $objWriter->endElement(); + + $objWriter->startElement('c:tickLblPos'); + $objWriter->writeAttribute('val', "nextTo"); + $objWriter->endElement(); + + if ($id2 > 0) { + $objWriter->startElement('c:crossAx'); + $objWriter->writeAttribute('val', $id2); + $objWriter->endElement(); + + $objWriter->startElement('c:crosses'); + $objWriter->writeAttribute('val', "autoZero"); + $objWriter->endElement(); + } + + $objWriter->startElement('c:auto'); + $objWriter->writeAttribute('val', 1); + $objWriter->endElement(); + + $objWriter->startElement('c:lblAlgn'); + $objWriter->writeAttribute('val', "ctr"); + $objWriter->endElement(); + + $objWriter->startElement('c:lblOffset'); + $objWriter->writeAttribute('val', 100); + $objWriter->endElement(); + + if ($isMultiLevelSeries) { + $objWriter->startElement('c:noMultiLvlLbl'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + } + $objWriter->endElement(); + + } + + + /** + * Write Value Axis + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Chart_PlotArea $plotArea + * @param PHPExcel_Chart_Title $yAxisLabel + * @param string $groupType Chart type + * @param string $id1 + * @param string $id2 + * @param boolean $isMultiLevelSeries + * @throws Exception + */ + private function _writeValAx($objWriter, PHPExcel_Chart_PlotArea $plotArea, $yAxisLabel, $groupType, $id1, $id2, $isMultiLevelSeries) + { + $objWriter->startElement('c:valAx'); + + if ($id2 > 0) { + $objWriter->startElement('c:axId'); + $objWriter->writeAttribute('val', $id2); + $objWriter->endElement(); + } + + $objWriter->startElement('c:scaling'); + $objWriter->startElement('c:orientation'); + $objWriter->writeAttribute('val', "minMax"); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('c:delete'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->startElement('c:axPos'); + $objWriter->writeAttribute('val', "l"); + $objWriter->endElement(); + + $objWriter->startElement('c:majorGridlines'); + $objWriter->endElement(); + + if (!is_null($yAxisLabel)) { + $objWriter->startElement('c:title'); + $objWriter->startElement('c:tx'); + $objWriter->startElement('c:rich'); + + $objWriter->startElement('a:bodyPr'); + $objWriter->endElement(); + + $objWriter->startElement('a:lstStyle'); + $objWriter->endElement(); + + $objWriter->startElement('a:p'); + $objWriter->startElement('a:r'); + + $caption = $yAxisLabel->getCaption(); + if (is_array($caption)) + $caption = $caption[0]; + $objWriter->startElement('a:t'); +// $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeRawData(PHPExcel_Shared_String::ControlCharacterPHP2OOXML( $caption )); + $objWriter->endElement(); + + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('c:overlay'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + if ($groupType !== PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) { + $layout = $yAxisLabel->getLayout(); + $this->_writeLayout($layout, $objWriter); + } + + $objWriter->endElement(); + } + + $objWriter->startElement('c:numFmt'); + $objWriter->writeAttribute('formatCode', "General"); + $objWriter->writeAttribute('sourceLinked', 1); + $objWriter->endElement(); + + $objWriter->startElement('c:majorTickMark'); + $objWriter->writeAttribute('val', "out"); + $objWriter->endElement(); + + $objWriter->startElement('c:minorTickMark'); + $objWriter->writeAttribute('val', "none"); + $objWriter->endElement(); + + $objWriter->startElement('c:tickLblPos'); + $objWriter->writeAttribute('val', "nextTo"); + $objWriter->endElement(); + + if ($id1 > 0) { + $objWriter->startElement('c:crossAx'); + $objWriter->writeAttribute('val', $id2); + $objWriter->endElement(); + + $objWriter->startElement('c:crosses'); + $objWriter->writeAttribute('val', "autoZero"); + $objWriter->endElement(); + + $objWriter->startElement('c:crossBetween'); + $objWriter->writeAttribute('val', "midCat"); + $objWriter->endElement(); + } + + if ($isMultiLevelSeries) { + if ($groupType !== PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) { + $objWriter->startElement('c:noMultiLvlLbl'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + } + } + $objWriter->endElement(); + + } + + + /** + * Get the data series type(s) for a chart plot series + * + * @param PHPExcel_Chart_PlotArea $plotArea + * @return string|array + * @throws Exception + */ + private static function _getChartType($plotArea) + { + $groupCount = $plotArea->getPlotGroupCount(); + + if ($groupCount == 1) { + $chartType = array($plotArea->getPlotGroupByIndex(0)->getPlotType()); + } else { + $chartTypes = array(); + for($i = 0; $i < $groupCount; ++$i) { + $chartTypes[] = $plotArea->getPlotGroupByIndex($i)->getPlotType(); + } + $chartType = array_unique($chartTypes); + if (count($chartTypes) == 0) { + throw new Exception('Chart is not yet implemented'); + } + } + + return $chartType; + } + + /** + * Write Plot Group (series of related plots) + * + * @param PHPExcel_Chart_DataSeries $plotGroup + * @param string $groupType Type of plot for dataseries + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param boolean &$catIsMultiLevelSeries Is category a multi-series category + * @param boolean &$valIsMultiLevelSeries Is value set a multi-series set + * @param string &$plotGroupingType Type of grouping for multi-series values + * @param PHPExcel_Worksheet $pSheet + * @throws Exception + */ + private function _writePlotGroup( $plotGroup, + $groupType, + $objWriter, + &$catIsMultiLevelSeries, + &$valIsMultiLevelSeries, + &$plotGroupingType, + PHPExcel_Worksheet $pSheet + ) + { + if (is_null($plotGroup)) { + return; + } + + if (($groupType == PHPExcel_Chart_DataSeries::TYPE_BARCHART) || + ($groupType == PHPExcel_Chart_DataSeries::TYPE_BARCHART_3D)) { + $objWriter->startElement('c:barDir'); + $objWriter->writeAttribute('val', $plotGroup->getPlotDirection()); + $objWriter->endElement(); + } + + if (!is_null($plotGroup->getPlotGrouping())) { + $plotGroupingType = $plotGroup->getPlotGrouping(); + $objWriter->startElement('c:grouping'); + $objWriter->writeAttribute('val', $plotGroupingType); + $objWriter->endElement(); + } + + // Get these details before the loop, because we can use the count to check for varyColors + $plotSeriesOrder = $plotGroup->getPlotOrder(); + $plotSeriesCount = count($plotSeriesOrder); + + if (($groupType !== PHPExcel_Chart_DataSeries::TYPE_RADARCHART) && + ($groupType !== PHPExcel_Chart_DataSeries::TYPE_STOCKCHART)) { + + if ($groupType !== PHPExcel_Chart_DataSeries::TYPE_LINECHART) { + if (($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART) || + ($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) || + ($groupType == PHPExcel_Chart_DataSeries::TYPE_DONUTCHART) || + ($plotSeriesCount > 1)) { + $objWriter->startElement('c:varyColors'); + $objWriter->writeAttribute('val', 1); + $objWriter->endElement(); + } else { + $objWriter->startElement('c:varyColors'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + } + } + } + + foreach($plotSeriesOrder as $plotSeriesIdx => $plotSeriesRef) { + $objWriter->startElement('c:ser'); + + $objWriter->startElement('c:idx'); + $objWriter->writeAttribute('val', $plotSeriesIdx); + $objWriter->endElement(); + + $objWriter->startElement('c:order'); + $objWriter->writeAttribute('val', $plotSeriesRef); + $objWriter->endElement(); + + if (($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART) || + ($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) || + ($groupType == PHPExcel_Chart_DataSeries::TYPE_DONUTCHART)) { + + $objWriter->startElement('c:dPt'); + $objWriter->startElement('c:idx'); + $objWriter->writeAttribute('val', 3); + $objWriter->endElement(); + + $objWriter->startElement('c:bubble3D'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + + $objWriter->startElement('c:spPr'); + $objWriter->startElement('a:solidFill'); + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', 'FF9900'); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + } + + // Labels + $plotSeriesLabel = $plotGroup->getPlotLabelByIndex($plotSeriesRef); + if ($plotSeriesLabel && ($plotSeriesLabel->getPointCount() > 0)) { + $objWriter->startElement('c:tx'); + $objWriter->startElement('c:strRef'); + $this->_writePlotSeriesLabel($plotSeriesLabel, $objWriter); + $objWriter->endElement(); + $objWriter->endElement(); + } + + // Formatting for the points + if ($groupType == PHPExcel_Chart_DataSeries::TYPE_LINECHART) { + $objWriter->startElement('c:spPr'); + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', 12700); + $objWriter->endElement(); + $objWriter->endElement(); + } + + $plotSeriesValues = $plotGroup->getPlotValuesByIndex($plotSeriesRef); + if ($plotSeriesValues) { + $plotSeriesMarker = $plotSeriesValues->getPointMarker(); + if ($plotSeriesMarker) { + $objWriter->startElement('c:marker'); + $objWriter->startElement('c:symbol'); + $objWriter->writeAttribute('val', $plotSeriesMarker); + $objWriter->endElement(); + + if ($plotSeriesMarker !== 'none') { + $objWriter->startElement('c:size'); + $objWriter->writeAttribute('val', 3); + $objWriter->endElement(); + } + $objWriter->endElement(); + } + } + + if (($groupType === PHPExcel_Chart_DataSeries::TYPE_BARCHART) || + ($groupType === PHPExcel_Chart_DataSeries::TYPE_BARCHART_3D) || + ($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART)) { + + $objWriter->startElement('c:invertIfNegative'); + $objWriter->writeAttribute('val', 0); + $objWriter->endElement(); + } + + // Category Labels + $plotSeriesCategory = $plotGroup->getPlotCategoryByIndex($plotSeriesRef); + if ($plotSeriesCategory && ($plotSeriesCategory->getPointCount() > 0)) { + $catIsMultiLevelSeries = $catIsMultiLevelSeries || $plotSeriesCategory->isMultiLevelSeries(); + + if (($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART) || + ($groupType == PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) || + ($groupType == PHPExcel_Chart_DataSeries::TYPE_DONUTCHART)) { + + if (!is_null($plotGroup->getPlotStyle())) { + $plotStyle = $plotGroup->getPlotStyle(); + if ($plotStyle) { + $objWriter->startElement('c:explosion'); + $objWriter->writeAttribute('val', 25); + $objWriter->endElement(); + } + } + } + + if (($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) || + ($groupType === PHPExcel_Chart_DataSeries::TYPE_SCATTERCHART)) { + $objWriter->startElement('c:xVal'); + } else { + $objWriter->startElement('c:cat'); + } + + $this->_writePlotSeriesValues($plotSeriesCategory, $objWriter, $groupType, 'str', $pSheet); + $objWriter->endElement(); + } + + // Values + if ($plotSeriesValues) { + $valIsMultiLevelSeries = $valIsMultiLevelSeries || $plotSeriesValues->isMultiLevelSeries(); + + if (($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) || + ($groupType === PHPExcel_Chart_DataSeries::TYPE_SCATTERCHART)) { + $objWriter->startElement('c:yVal'); + } else { + $objWriter->startElement('c:val'); + } + + $this->_writePlotSeriesValues($plotSeriesValues, $objWriter, $groupType, 'num', $pSheet); + $objWriter->endElement(); + } + + if ($groupType === PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART) { + $this->_writeBubbles($plotSeriesValues, $objWriter, $pSheet); + } + + $objWriter->endElement(); + + } + } + + /** + * Write Plot Series Label + * + * @param PHPExcel_Chart_DataSeriesValues $plotSeriesLabel + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws Exception + */ + private function _writePlotSeriesLabel($plotSeriesLabel, $objWriter) + { + if (is_null($plotSeriesLabel)) { + return; + } + + $objWriter->startElement('c:f'); + $objWriter->writeRawData($plotSeriesLabel->getDataSource()); + $objWriter->endElement(); + + $objWriter->startElement('c:strCache'); + $objWriter->startElement('c:ptCount'); + $objWriter->writeAttribute('val', $plotSeriesLabel->getPointCount() ); + $objWriter->endElement(); + + foreach($plotSeriesLabel->getDataValues() as $plotLabelKey => $plotLabelValue) { + $objWriter->startElement('c:pt'); + $objWriter->writeAttribute('idx', $plotLabelKey ); + + $objWriter->startElement('c:v'); + $objWriter->writeRawData( $plotLabelValue ); + $objWriter->endElement(); + $objWriter->endElement(); + } + $objWriter->endElement(); + + } + + /** + * Write Plot Series Values + * + * @param PHPExcel_Chart_DataSeriesValues $plotSeriesValues + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $groupType Type of plot for dataseries + * @param string $dataType Datatype of series values + * @param PHPExcel_Worksheet $pSheet + * @throws Exception + */ + private function _writePlotSeriesValues( $plotSeriesValues, + $objWriter, + $groupType, + $dataType='str', + PHPExcel_Worksheet $pSheet + ) + { + if (is_null($plotSeriesValues)) { + return; + } + + if ($plotSeriesValues->isMultiLevelSeries()) { + $levelCount = $plotSeriesValues->multiLevelCount(); + + $objWriter->startElement('c:multiLvlStrRef'); + + $objWriter->startElement('c:f'); + $objWriter->writeRawData( $plotSeriesValues->getDataSource() ); + $objWriter->endElement(); + + $objWriter->startElement('c:multiLvlStrCache'); + + $objWriter->startElement('c:ptCount'); + $objWriter->writeAttribute('val', $plotSeriesValues->getPointCount() ); + $objWriter->endElement(); + + for ($level = 0; $level < $levelCount; ++$level) { + $objWriter->startElement('c:lvl'); + + foreach($plotSeriesValues->getDataValues() as $plotSeriesKey => $plotSeriesValue) { + if (isset($plotSeriesValue[$level])) { + $objWriter->startElement('c:pt'); + $objWriter->writeAttribute('idx', $plotSeriesKey ); + + $objWriter->startElement('c:v'); + $objWriter->writeRawData( $plotSeriesValue[$level] ); + $objWriter->endElement(); + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + } + + $objWriter->endElement(); + + $objWriter->endElement(); + } else { + $objWriter->startElement('c:'.$dataType.'Ref'); + + $objWriter->startElement('c:f'); + $objWriter->writeRawData( $plotSeriesValues->getDataSource() ); + $objWriter->endElement(); + + $objWriter->startElement('c:'.$dataType.'Cache'); + + if (($groupType != PHPExcel_Chart_DataSeries::TYPE_PIECHART) && + ($groupType != PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D) && + ($groupType != PHPExcel_Chart_DataSeries::TYPE_DONUTCHART)) { + + if (($plotSeriesValues->getFormatCode() !== NULL) && + ($plotSeriesValues->getFormatCode() !== '')) { + $objWriter->startElement('c:formatCode'); + $objWriter->writeRawData( $plotSeriesValues->getFormatCode() ); + $objWriter->endElement(); + } + } + + $objWriter->startElement('c:ptCount'); + $objWriter->writeAttribute('val', $plotSeriesValues->getPointCount() ); + $objWriter->endElement(); + + $dataValues = $plotSeriesValues->getDataValues(); + if (!empty($dataValues)) { + if (is_array($dataValues)) { + foreach($dataValues as $plotSeriesKey => $plotSeriesValue) { + $objWriter->startElement('c:pt'); + $objWriter->writeAttribute('idx', $plotSeriesKey ); + + $objWriter->startElement('c:v'); + $objWriter->writeRawData( $plotSeriesValue ); + $objWriter->endElement(); + $objWriter->endElement(); + } + } + } + + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + + /** + * Write Bubble Chart Details + * + * @param PHPExcel_Chart_DataSeriesValues $plotSeriesValues + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws Exception + */ + private function _writeBubbles($plotSeriesValues, $objWriter, PHPExcel_Worksheet $pSheet) + { + if (is_null($plotSeriesValues)) { + return; + } + + $objWriter->startElement('c:bubbleSize'); + $objWriter->startElement('c:numLit'); + + $objWriter->startElement('c:formatCode'); + $objWriter->writeRawData( 'General' ); + $objWriter->endElement(); + + $objWriter->startElement('c:ptCount'); + $objWriter->writeAttribute('val', $plotSeriesValues->getPointCount() ); + $objWriter->endElement(); + + $dataValues = $plotSeriesValues->getDataValues(); + if (!empty($dataValues)) { + if (is_array($dataValues)) { + foreach($dataValues as $plotSeriesKey => $plotSeriesValue) { + $objWriter->startElement('c:pt'); + $objWriter->writeAttribute('idx', $plotSeriesKey ); + $objWriter->startElement('c:v'); + $objWriter->writeRawData( 1 ); + $objWriter->endElement(); + $objWriter->endElement(); + } + } + } + + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('c:bubble3D'); + $objWriter->writeAttribute('val', 0 ); + $objWriter->endElement(); + } + + /** + * Write Layout + * + * @param PHPExcel_Chart_Layout $layout + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws Exception + */ + private function _writeLayout(PHPExcel_Chart_Layout $layout = NULL, $objWriter) + { + $objWriter->startElement('c:layout'); + + if (!is_null($layout)) { + $objWriter->startElement('c:manualLayout'); + + $layoutTarget = $layout->getLayoutTarget(); + if (!is_null($layoutTarget)) { + $objWriter->startElement('c:layoutTarget'); + $objWriter->writeAttribute('val', $layoutTarget); + $objWriter->endElement(); + } + + $xMode = $layout->getXMode(); + if (!is_null($xMode)) { + $objWriter->startElement('c:xMode'); + $objWriter->writeAttribute('val', $xMode); + $objWriter->endElement(); + } + + $yMode = $layout->getYMode(); + if (!is_null($yMode)) { + $objWriter->startElement('c:yMode'); + $objWriter->writeAttribute('val', $yMode); + $objWriter->endElement(); + } + + $x = $layout->getXPosition(); + if (!is_null($x)) { + $objWriter->startElement('c:x'); + $objWriter->writeAttribute('val', $x); + $objWriter->endElement(); + } + + $y = $layout->getYPosition(); + if (!is_null($y)) { + $objWriter->startElement('c:y'); + $objWriter->writeAttribute('val', $y); + $objWriter->endElement(); + } + + $w = $layout->getWidth(); + if (!is_null($w)) { + $objWriter->startElement('c:w'); + $objWriter->writeAttribute('val', $w); + $objWriter->endElement(); + } + + $h = $layout->getHeight(); + if (!is_null($h)) { + $objWriter->startElement('c:h'); + $objWriter->writeAttribute('val', $h); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + /** + * Write Alternate Content block + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws Exception + */ + private function _writeAlternateContent($objWriter) + { + $objWriter->startElement('mc:AlternateContent'); + $objWriter->writeAttribute('xmlns:mc', 'http://schemas.openxmlformats.org/markup-compatibility/2006'); + + $objWriter->startElement('mc:Choice'); + $objWriter->writeAttribute('xmlns:c14', 'http://schemas.microsoft.com/office/drawing/2007/8/2/chart'); + $objWriter->writeAttribute('Requires', 'c14'); + + $objWriter->startElement('c14:style'); + $objWriter->writeAttribute('val', '102'); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('mc:Fallback'); + $objWriter->startElement('c:style'); + $objWriter->writeAttribute('val', '2'); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Printer Settings + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws Exception + */ + private function _writePrintSettings($objWriter) + { + $objWriter->startElement('c:printSettings'); + + $objWriter->startElement('c:headerFooter'); + $objWriter->endElement(); + + $objWriter->startElement('c:pageMargins'); + $objWriter->writeAttribute('footer', 0.3); + $objWriter->writeAttribute('header', 0.3); + $objWriter->writeAttribute('r', 0.7); + $objWriter->writeAttribute('l', 0.7); + $objWriter->writeAttribute('t', 0.75); + $objWriter->writeAttribute('b', 0.75); + $objWriter->endElement(); + + $objWriter->startElement('c:pageSetup'); + $objWriter->writeAttribute('orientation', "portrait"); + $objWriter->endElement(); + + $objWriter->endElement(); + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Comments.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Comments.php new file mode 100644 index 0000000..ec8a270 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Comments.php @@ -0,0 +1,268 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_Comments + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_Comments extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write comments to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @return string XML Output + * @throws Exception + */ + public function writeComments(PHPExcel_Worksheet $pWorksheet = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // Comments cache + $comments = $pWorksheet->getComments(); + + // Authors cache + $authors = array(); + $authorId = 0; + foreach ($comments as $comment) { + if (!isset($authors[$comment->getAuthor()])) { + $authors[$comment->getAuthor()] = $authorId++; + } + } + + // comments + $objWriter->startElement('comments'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/spreadsheetml/2006/main'); + + // Loop through authors + $objWriter->startElement('authors'); + foreach ($authors as $author => $index) { + $objWriter->writeElement('author', $author); + } + $objWriter->endElement(); + + // Loop through comments + $objWriter->startElement('commentList'); + foreach ($comments as $key => $value) { + $this->_writeComment($objWriter, $key, $value, $authors); + } + $objWriter->endElement(); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write comment to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pCellReference Cell reference + * @param PHPExcel_Comment $pComment Comment + * @param array $pAuthors Array of authors + * @throws Exception + */ + public function _writeComment(PHPExcel_Shared_XMLWriter $objWriter = null, $pCellReference = 'A1', PHPExcel_Comment $pComment = null, $pAuthors = null) + { + // comment + $objWriter->startElement('comment'); + $objWriter->writeAttribute('ref', $pCellReference); + $objWriter->writeAttribute('authorId', $pAuthors[$pComment->getAuthor()]); + + // text + $objWriter->startElement('text'); + $this->getParentWriter()->getWriterPart('stringtable')->writeRichText($objWriter, $pComment->getText()); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write VML comments to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @return string XML Output + * @throws Exception + */ + public function writeVMLComments(PHPExcel_Worksheet $pWorksheet = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // Comments cache + $comments = $pWorksheet->getComments(); + + // xml + $objWriter->startElement('xml'); + $objWriter->writeAttribute('xmlns:v', 'urn:schemas-microsoft-com:vml'); + $objWriter->writeAttribute('xmlns:o', 'urn:schemas-microsoft-com:office:office'); + $objWriter->writeAttribute('xmlns:x', 'urn:schemas-microsoft-com:office:excel'); + + // o:shapelayout + $objWriter->startElement('o:shapelayout'); + $objWriter->writeAttribute('v:ext', 'edit'); + + // o:idmap + $objWriter->startElement('o:idmap'); + $objWriter->writeAttribute('v:ext', 'edit'); + $objWriter->writeAttribute('data', '1'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // v:shapetype + $objWriter->startElement('v:shapetype'); + $objWriter->writeAttribute('id', '_x0000_t202'); + $objWriter->writeAttribute('coordsize', '21600,21600'); + $objWriter->writeAttribute('o:spt', '202'); + $objWriter->writeAttribute('path', 'm,l,21600r21600,l21600,xe'); + + // v:stroke + $objWriter->startElement('v:stroke'); + $objWriter->writeAttribute('joinstyle', 'miter'); + $objWriter->endElement(); + + // v:path + $objWriter->startElement('v:path'); + $objWriter->writeAttribute('gradientshapeok', 't'); + $objWriter->writeAttribute('o:connecttype', 'rect'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // Loop through comments + foreach ($comments as $key => $value) { + $this->_writeVMLComment($objWriter, $key, $value); + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write VML comment to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pCellReference Cell reference + * @param PHPExcel_Comment $pComment Comment + * @throws Exception + */ + public function _writeVMLComment(PHPExcel_Shared_XMLWriter $objWriter = null, $pCellReference = 'A1', PHPExcel_Comment $pComment = null) + { + // Metadata + list($column, $row) = PHPExcel_Cell::coordinateFromString($pCellReference); + $column = PHPExcel_Cell::columnIndexFromString($column); + $id = 1024 + $column + $row; + $id = substr($id, 0, 4); + + // v:shape + $objWriter->startElement('v:shape'); + $objWriter->writeAttribute('id', '_x0000_s' . $id); + $objWriter->writeAttribute('type', '#_x0000_t202'); + $objWriter->writeAttribute('style', 'position:absolute;margin-left:' . $pComment->getMarginLeft() . ';margin-top:' . $pComment->getMarginTop() . ';width:' . $pComment->getWidth() . ';height:' . $pComment->getHeight() . ';z-index:1;visibility:' . ($pComment->getVisible() ? 'visible' : 'hidden')); + $objWriter->writeAttribute('fillcolor', '#' . $pComment->getFillColor()->getRGB()); + $objWriter->writeAttribute('o:insetmode', 'auto'); + + // v:fill + $objWriter->startElement('v:fill'); + $objWriter->writeAttribute('color2', '#' . $pComment->getFillColor()->getRGB()); + $objWriter->endElement(); + + // v:shadow + $objWriter->startElement('v:shadow'); + $objWriter->writeAttribute('on', 't'); + $objWriter->writeAttribute('color', 'black'); + $objWriter->writeAttribute('obscured', 't'); + $objWriter->endElement(); + + // v:path + $objWriter->startElement('v:path'); + $objWriter->writeAttribute('o:connecttype', 'none'); + $objWriter->endElement(); + + // v:textbox + $objWriter->startElement('v:textbox'); + $objWriter->writeAttribute('style', 'mso-direction-alt:auto'); + + // div + $objWriter->startElement('div'); + $objWriter->writeAttribute('style', 'text-align:left'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // x:ClientData + $objWriter->startElement('x:ClientData'); + $objWriter->writeAttribute('ObjectType', 'Note'); + + // x:MoveWithCells + $objWriter->writeElement('x:MoveWithCells', ''); + + // x:SizeWithCells + $objWriter->writeElement('x:SizeWithCells', ''); + + // x:Anchor + //$objWriter->writeElement('x:Anchor', $column . ', 15, ' . ($row - 2) . ', 10, ' . ($column + 4) . ', 15, ' . ($row + 5) . ', 18'); + + // x:AutoFill + $objWriter->writeElement('x:AutoFill', 'False'); + + // x:Row + $objWriter->writeElement('x:Row', ($row - 1)); + + // x:Column + $objWriter->writeElement('x:Column', ($column - 1)); + + $objWriter->endElement(); + + $objWriter->endElement(); + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/ContentTypes.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/ContentTypes.php new file mode 100644 index 0000000..a6ee53c --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/ContentTypes.php @@ -0,0 +1,261 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_ContentTypes + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_ContentTypes extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write content types to XML format + * + * @param PHPExcel $pPHPExcel + * @param boolean $includeCharts Flag indicating if we should include drawing details for charts + * @return string XML Output + * @throws Exception + */ + public function writeContentTypes(PHPExcel $pPHPExcel = null, $includeCharts = FALSE) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // Types + $objWriter->startElement('Types'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/content-types'); + + // Theme + $this->_writeOverrideContentType( + $objWriter, '/xl/theme/theme1.xml', 'application/vnd.openxmlformats-officedocument.theme+xml' + ); + + // Styles + $this->_writeOverrideContentType( + $objWriter, '/xl/styles.xml', 'application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml' + ); + + // Rels + $this->_writeDefaultContentType( + $objWriter, 'rels', 'application/vnd.openxmlformats-package.relationships+xml' + ); + + // XML + $this->_writeDefaultContentType( + $objWriter, 'xml', 'application/xml' + ); + + // VML + $this->_writeDefaultContentType( + $objWriter, 'vml', 'application/vnd.openxmlformats-officedocument.vmlDrawing' + ); + + // Workbook + $this->_writeOverrideContentType( + $objWriter, '/xl/workbook.xml', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml' + ); + + // DocProps + $this->_writeOverrideContentType( + $objWriter, '/docProps/app.xml', 'application/vnd.openxmlformats-officedocument.extended-properties+xml' + ); + + $this->_writeOverrideContentType( + $objWriter, '/docProps/core.xml', 'application/vnd.openxmlformats-package.core-properties+xml' + ); + + $customPropertyList = $pPHPExcel->getProperties()->getCustomProperties(); + if (!empty($customPropertyList)) { + $this->_writeOverrideContentType( + $objWriter, '/docProps/custom.xml', 'application/vnd.openxmlformats-officedocument.custom-properties+xml' + ); + } + + // Worksheets + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + $this->_writeOverrideContentType( + $objWriter, '/xl/worksheets/sheet' . ($i + 1) . '.xml', 'application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml' + ); + } + + // Shared strings + $this->_writeOverrideContentType( + $objWriter, '/xl/sharedStrings.xml', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml' + ); + + // Add worksheet relationship content types + $chart = 1; + for ($i = 0; $i < $sheetCount; ++$i) { + $drawings = $pPHPExcel->getSheet($i)->getDrawingCollection(); + $drawingCount = count($drawings); + $chartCount = ($includeCharts) ? $pPHPExcel->getSheet($i)->getChartCount() : 0; + + // We need a drawing relationship for the worksheet if we have either drawings or charts + if (($drawingCount > 0) || ($chartCount > 0)) { + $this->_writeOverrideContentType( + $objWriter, '/xl/drawings/drawing' . ($i + 1) . '.xml', 'application/vnd.openxmlformats-officedocument.drawing+xml' + ); + } + + // If we have charts, then we need a chart relationship for every individual chart + if ($chartCount > 0) { + for ($c = 0; $c < $chartCount; ++$c) { + $this->_writeOverrideContentType( + $objWriter, '/xl/charts/chart' . $chart++ . '.xml', 'application/vnd.openxmlformats-officedocument.drawingml.chart+xml' + ); + } + } + } + + // Comments + for ($i = 0; $i < $sheetCount; ++$i) { + if (count($pPHPExcel->getSheet($i)->getComments()) > 0) { + $this->_writeOverrideContentType( + $objWriter, '/xl/comments' . ($i + 1) . '.xml', 'application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml' + ); + } + } + + // Add media content-types + $aMediaContentTypes = array(); + $mediaCount = $this->getParentWriter()->getDrawingHashTable()->count(); + for ($i = 0; $i < $mediaCount; ++$i) { + $extension = ''; + $mimeType = ''; + + if ($this->getParentWriter()->getDrawingHashTable()->getByIndex($i) instanceof PHPExcel_Worksheet_Drawing) { + $extension = strtolower($this->getParentWriter()->getDrawingHashTable()->getByIndex($i)->getExtension()); + $mimeType = $this->_getImageMimeType( $this->getParentWriter()->getDrawingHashTable()->getByIndex($i)->getPath() ); + } else if ($this->getParentWriter()->getDrawingHashTable()->getByIndex($i) instanceof PHPExcel_Worksheet_MemoryDrawing) { + $extension = strtolower($this->getParentWriter()->getDrawingHashTable()->getByIndex($i)->getMimeType()); + $extension = explode('/', $extension); + $extension = $extension[1]; + + $mimeType = $this->getParentWriter()->getDrawingHashTable()->getByIndex($i)->getMimeType(); + } + + if (!isset( $aMediaContentTypes[$extension]) ) { + $aMediaContentTypes[$extension] = $mimeType; + + $this->_writeDefaultContentType( + $objWriter, $extension, $mimeType + ); + } + } + + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + if (count($pPHPExcel->getSheet()->getHeaderFooter()->getImages()) > 0) { + foreach ($pPHPExcel->getSheet()->getHeaderFooter()->getImages() as $image) { + if (!isset( $aMediaContentTypes[strtolower($image->getExtension())]) ) { + $aMediaContentTypes[strtolower($image->getExtension())] = $this->_getImageMimeType( $image->getPath() ); + + $this->_writeDefaultContentType( + $objWriter, strtolower($image->getExtension()), $aMediaContentTypes[strtolower($image->getExtension())] + ); + } + } + } + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Get image mime type + * + * @param string $pFile Filename + * @return string Mime Type + * @throws Exception + */ + private function _getImageMimeType($pFile = '') + { + if (PHPExcel_Shared_File::file_exists($pFile)) { + $image = getimagesize($pFile); + return image_type_to_mime_type($image[2]); + } else { + throw new Exception("File $pFile does not exist"); + } + } + + /** + * Write Default content type + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pPartname Part name + * @param string $pContentType Content type + * @throws Exception + */ + private function _writeDefaultContentType(PHPExcel_Shared_XMLWriter $objWriter = null, $pPartname = '', $pContentType = '') + { + if ($pPartname != '' && $pContentType != '') { + // Write content type + $objWriter->startElement('Default'); + $objWriter->writeAttribute('Extension', $pPartname); + $objWriter->writeAttribute('ContentType', $pContentType); + $objWriter->endElement(); + } else { + throw new Exception("Invalid parameters passed."); + } + } + + /** + * Write Override content type + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pPartname Part name + * @param string $pContentType Content type + * @throws Exception + */ + private function _writeOverrideContentType(PHPExcel_Shared_XMLWriter $objWriter = null, $pPartname = '', $pContentType = '') + { + if ($pPartname != '' && $pContentType != '') { + // Write content type + $objWriter->startElement('Override'); + $objWriter->writeAttribute('PartName', $pPartname); + $objWriter->writeAttribute('ContentType', $pContentType); + $objWriter->endElement(); + } else { + throw new Exception("Invalid parameters passed."); + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/DocProps.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/DocProps.php new file mode 100644 index 0000000..84dd06b --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/DocProps.php @@ -0,0 +1,272 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_DocProps + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_DocProps extends PHPExcel_Writer_Excel2007_WriterPart +{ +/** + * Write docProps/app.xml to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws Exception + */ + public function writeDocPropsApp(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // Properties + $objWriter->startElement('Properties'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/officeDocument/2006/extended-properties'); + $objWriter->writeAttribute('xmlns:vt', 'http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes'); + + // Application + $objWriter->writeElement('Application', 'Microsoft Excel'); + + // DocSecurity + $objWriter->writeElement('DocSecurity', '0'); + + // ScaleCrop + $objWriter->writeElement('ScaleCrop', 'false'); + + // HeadingPairs + $objWriter->startElement('HeadingPairs'); + + // Vector + $objWriter->startElement('vt:vector'); + $objWriter->writeAttribute('size', '2'); + $objWriter->writeAttribute('baseType', 'variant'); + + // Variant + $objWriter->startElement('vt:variant'); + $objWriter->writeElement('vt:lpstr', 'Worksheets'); + $objWriter->endElement(); + + // Variant + $objWriter->startElement('vt:variant'); + $objWriter->writeElement('vt:i4', $pPHPExcel->getSheetCount()); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // TitlesOfParts + $objWriter->startElement('TitlesOfParts'); + + // Vector + $objWriter->startElement('vt:vector'); + $objWriter->writeAttribute('size', $pPHPExcel->getSheetCount()); + $objWriter->writeAttribute('baseType', 'lpstr'); + + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + $objWriter->writeElement('vt:lpstr', $pPHPExcel->getSheet($i)->getTitle()); + } + + $objWriter->endElement(); + + $objWriter->endElement(); + + // Company + $objWriter->writeElement('Company', $pPHPExcel->getProperties()->getCompany()); + + // Company + $objWriter->writeElement('Manager', $pPHPExcel->getProperties()->getManager()); + + // LinksUpToDate + $objWriter->writeElement('LinksUpToDate', 'false'); + + // SharedDoc + $objWriter->writeElement('SharedDoc', 'false'); + + // HyperlinksChanged + $objWriter->writeElement('HyperlinksChanged', 'false'); + + // AppVersion + $objWriter->writeElement('AppVersion', '12.0000'); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write docProps/core.xml to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws Exception + */ + public function writeDocPropsCore(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // cp:coreProperties + $objWriter->startElement('cp:coreProperties'); + $objWriter->writeAttribute('xmlns:cp', 'http://schemas.openxmlformats.org/package/2006/metadata/core-properties'); + $objWriter->writeAttribute('xmlns:dc', 'http://purl.org/dc/elements/1.1/'); + $objWriter->writeAttribute('xmlns:dcterms', 'http://purl.org/dc/terms/'); + $objWriter->writeAttribute('xmlns:dcmitype', 'http://purl.org/dc/dcmitype/'); + $objWriter->writeAttribute('xmlns:xsi', 'http://www.w3.org/2001/XMLSchema-instance'); + + // dc:creator + $objWriter->writeElement('dc:creator', $pPHPExcel->getProperties()->getCreator()); + + // cp:lastModifiedBy + $objWriter->writeElement('cp:lastModifiedBy', $pPHPExcel->getProperties()->getLastModifiedBy()); + + // dcterms:created + $objWriter->startElement('dcterms:created'); + $objWriter->writeAttribute('xsi:type', 'dcterms:W3CDTF'); + $objWriter->writeRawData(date(DATE_W3C, $pPHPExcel->getProperties()->getCreated())); + $objWriter->endElement(); + + // dcterms:modified + $objWriter->startElement('dcterms:modified'); + $objWriter->writeAttribute('xsi:type', 'dcterms:W3CDTF'); + $objWriter->writeRawData(date(DATE_W3C, $pPHPExcel->getProperties()->getModified())); + $objWriter->endElement(); + + // dc:title + $objWriter->writeElement('dc:title', $pPHPExcel->getProperties()->getTitle()); + + // dc:description + $objWriter->writeElement('dc:description', $pPHPExcel->getProperties()->getDescription()); + + // dc:subject + $objWriter->writeElement('dc:subject', $pPHPExcel->getProperties()->getSubject()); + + // cp:keywords + $objWriter->writeElement('cp:keywords', $pPHPExcel->getProperties()->getKeywords()); + + // cp:category + $objWriter->writeElement('cp:category', $pPHPExcel->getProperties()->getCategory()); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write docProps/custom.xml to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws Exception + */ + public function writeDocPropsCustom(PHPExcel $pPHPExcel = null) + { + $customPropertyList = $pPHPExcel->getProperties()->getCustomProperties(); + if (empty($customPropertyList)) { + return; + } + + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // cp:coreProperties + $objWriter->startElement('Properties'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/officeDocument/2006/custom-properties'); + $objWriter->writeAttribute('xmlns:vt', 'http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes'); + + + foreach($customPropertyList as $key => $customProperty) { + $propertyValue = $pPHPExcel->getProperties()->getCustomPropertyValue($customProperty); + $propertyType = $pPHPExcel->getProperties()->getCustomPropertyType($customProperty); + + $objWriter->startElement('property'); + $objWriter->writeAttribute('fmtid', '{D5CDD505-2E9C-101B-9397-08002B2CF9AE}'); + $objWriter->writeAttribute('pid', $key+2); + $objWriter->writeAttribute('name', $customProperty); + + switch($propertyType) { + case 'i' : + $objWriter->writeElement('vt:i4', $propertyValue); + break; + case 'f' : + $objWriter->writeElement('vt:r8', $propertyValue); + break; + case 'b' : + $objWriter->writeElement('vt:bool', ($propertyValue) ? 'true' : 'false'); + break; + case 'd' : + $objWriter->startElement('vt:filetime'); + $objWriter->writeRawData(date(DATE_W3C, $propertyValue)); + $objWriter->endElement(); + break; + default : + $objWriter->writeElement('vt:lpwstr', $propertyValue); + break; + } + + $objWriter->endElement(); + } + + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Drawing.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Drawing.php new file mode 100644 index 0000000..9b618c5 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Drawing.php @@ -0,0 +1,598 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_Drawing + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_Drawing extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write drawings to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @param int &$chartRef Chart ID + * @param boolean $includeCharts Flag indicating if we should include drawing details for charts + * @return string XML Output + * @throws Exception + */ + public function writeDrawings(PHPExcel_Worksheet $pWorksheet = null, &$chartRef, $includeCharts = FALSE) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // xdr:wsDr + $objWriter->startElement('xdr:wsDr'); + $objWriter->writeAttribute('xmlns:xdr', 'http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing'); + $objWriter->writeAttribute('xmlns:a', 'http://schemas.openxmlformats.org/drawingml/2006/main'); + + // Loop through images and write drawings + $i = 1; + $iterator = $pWorksheet->getDrawingCollection()->getIterator(); + while ($iterator->valid()) { + $this->_writeDrawing($objWriter, $iterator->current(), $i); + + $iterator->next(); + ++$i; + } + + if ($includeCharts) { + $chartCount = $pWorksheet->getChartCount(); + // Loop through charts and write the chart position + if ($chartCount > 0) { + for ($c = 0; $c < $chartCount; ++$c) { + $this->_writeChart($objWriter, $pWorksheet->getChartByIndex($c), $c+$i); + } + } + } + + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write drawings to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Chart $pChart + * @param int $pRelationId + * @throws Exception + */ + public function _writeChart(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Chart $pChart = null, $pRelationId = -1) + { + $tl = $pChart->getTopLeftPosition(); + $tl['colRow'] = PHPExcel_Cell::coordinateFromString($tl['cell']); + $br = $pChart->getBottomRightPosition(); + $br['colRow'] = PHPExcel_Cell::coordinateFromString($br['cell']); + + $objWriter->startElement('xdr:twoCellAnchor'); + + $objWriter->startElement('xdr:from'); + $objWriter->writeElement('xdr:col', PHPExcel_Cell::columnIndexFromString($tl['colRow'][0]) - 1); + $objWriter->writeElement('xdr:colOff', PHPExcel_Shared_Drawing::pixelsToEMU($tl['xOffset'])); + $objWriter->writeElement('xdr:row', $tl['colRow'][1] - 1); + $objWriter->writeElement('xdr:rowOff', PHPExcel_Shared_Drawing::pixelsToEMU($tl['yOffset'])); + $objWriter->endElement(); + $objWriter->startElement('xdr:to'); + $objWriter->writeElement('xdr:col', PHPExcel_Cell::columnIndexFromString($br['colRow'][0]) - 1); + $objWriter->writeElement('xdr:colOff', PHPExcel_Shared_Drawing::pixelsToEMU($br['xOffset'])); + $objWriter->writeElement('xdr:row', $br['colRow'][1] - 1); + $objWriter->writeElement('xdr:rowOff', PHPExcel_Shared_Drawing::pixelsToEMU($br['yOffset'])); + $objWriter->endElement(); + + $objWriter->startElement('xdr:graphicFrame'); + $objWriter->writeAttribute('macro', ''); + $objWriter->startElement('xdr:nvGraphicFramePr'); + $objWriter->startElement('xdr:cNvPr'); + $objWriter->writeAttribute('name', 'Chart '.$pRelationId); + $objWriter->writeAttribute('id', 1025 * $pRelationId); + $objWriter->endElement(); + $objWriter->startElement('xdr:cNvGraphicFramePr'); + $objWriter->startElement('a:graphicFrameLocks'); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('xdr:xfrm'); + $objWriter->startElement('a:off'); + $objWriter->writeAttribute('x', '0'); + $objWriter->writeAttribute('y', '0'); + $objWriter->endElement(); + $objWriter->startElement('a:ext'); + $objWriter->writeAttribute('cx', '0'); + $objWriter->writeAttribute('cy', '0'); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('a:graphic'); + $objWriter->startElement('a:graphicData'); + $objWriter->writeAttribute('uri', 'http://schemas.openxmlformats.org/drawingml/2006/chart'); + $objWriter->startElement('c:chart'); + $objWriter->writeAttribute('xmlns:c', 'http://schemas.openxmlformats.org/drawingml/2006/chart'); + $objWriter->writeAttribute('xmlns:r', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + $objWriter->writeAttribute('r:id', 'rId'.$pRelationId); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + $objWriter->endElement(); + + $objWriter->startElement('xdr:clientData'); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write drawings to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet_BaseDrawing $pDrawing + * @param int $pRelationId + * @throws Exception + */ + public function _writeDrawing(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet_BaseDrawing $pDrawing = null, $pRelationId = -1) + { + if ($pRelationId >= 0) { + // xdr:oneCellAnchor + $objWriter->startElement('xdr:oneCellAnchor'); + // Image location + $aCoordinates = PHPExcel_Cell::coordinateFromString($pDrawing->getCoordinates()); + $aCoordinates[0] = PHPExcel_Cell::columnIndexFromString($aCoordinates[0]); + + // xdr:from + $objWriter->startElement('xdr:from'); + $objWriter->writeElement('xdr:col', $aCoordinates[0] - 1); + $objWriter->writeElement('xdr:colOff', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getOffsetX())); + $objWriter->writeElement('xdr:row', $aCoordinates[1] - 1); + $objWriter->writeElement('xdr:rowOff', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getOffsetY())); + $objWriter->endElement(); + + // xdr:ext + $objWriter->startElement('xdr:ext'); + $objWriter->writeAttribute('cx', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getWidth())); + $objWriter->writeAttribute('cy', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getHeight())); + $objWriter->endElement(); + + // xdr:pic + $objWriter->startElement('xdr:pic'); + + // xdr:nvPicPr + $objWriter->startElement('xdr:nvPicPr'); + + // xdr:cNvPr + $objWriter->startElement('xdr:cNvPr'); + $objWriter->writeAttribute('id', $pRelationId); + $objWriter->writeAttribute('name', $pDrawing->getName()); + $objWriter->writeAttribute('descr', $pDrawing->getDescription()); + $objWriter->endElement(); + + // xdr:cNvPicPr + $objWriter->startElement('xdr:cNvPicPr'); + + // a:picLocks + $objWriter->startElement('a:picLocks'); + $objWriter->writeAttribute('noChangeAspect', '1'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // xdr:blipFill + $objWriter->startElement('xdr:blipFill'); + + // a:blip + $objWriter->startElement('a:blip'); + $objWriter->writeAttribute('xmlns:r', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + $objWriter->writeAttribute('r:embed', 'rId' . $pRelationId); + $objWriter->endElement(); + + // a:stretch + $objWriter->startElement('a:stretch'); + $objWriter->writeElement('a:fillRect', null); + $objWriter->endElement(); + + $objWriter->endElement(); + + // xdr:spPr + $objWriter->startElement('xdr:spPr'); + + // a:xfrm + $objWriter->startElement('a:xfrm'); + $objWriter->writeAttribute('rot', PHPExcel_Shared_Drawing::degreesToAngle($pDrawing->getRotation())); + $objWriter->endElement(); + + // a:prstGeom + $objWriter->startElement('a:prstGeom'); + $objWriter->writeAttribute('prst', 'rect'); + + // a:avLst + $objWriter->writeElement('a:avLst', null); + + $objWriter->endElement(); + +// // a:solidFill +// $objWriter->startElement('a:solidFill'); + +// // a:srgbClr +// $objWriter->startElement('a:srgbClr'); +// $objWriter->writeAttribute('val', 'FFFFFF'); + +///* SHADE +// // a:shade +// $objWriter->startElement('a:shade'); +// $objWriter->writeAttribute('val', '85000'); +// $objWriter->endElement(); +//*/ + +// $objWriter->endElement(); + +// $objWriter->endElement(); +/* + // a:ln + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', '88900'); + $objWriter->writeAttribute('cap', 'sq'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', 'FFFFFF'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:miter + $objWriter->startElement('a:miter'); + $objWriter->writeAttribute('lim', '800000'); + $objWriter->endElement(); + + $objWriter->endElement(); +*/ + + if ($pDrawing->getShadow()->getVisible()) { + // a:effectLst + $objWriter->startElement('a:effectLst'); + + // a:outerShdw + $objWriter->startElement('a:outerShdw'); + $objWriter->writeAttribute('blurRad', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getShadow()->getBlurRadius())); + $objWriter->writeAttribute('dist', PHPExcel_Shared_Drawing::pixelsToEMU($pDrawing->getShadow()->getDistance())); + $objWriter->writeAttribute('dir', PHPExcel_Shared_Drawing::degreesToAngle($pDrawing->getShadow()->getDirection())); + $objWriter->writeAttribute('algn', $pDrawing->getShadow()->getAlignment()); + $objWriter->writeAttribute('rotWithShape', '0'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', $pDrawing->getShadow()->getColor()->getRGB()); + + // a:alpha + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', $pDrawing->getShadow()->getAlpha() * 1000); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + } +/* + + // a:scene3d + $objWriter->startElement('a:scene3d'); + + // a:camera + $objWriter->startElement('a:camera'); + $objWriter->writeAttribute('prst', 'orthographicFront'); + $objWriter->endElement(); + + // a:lightRig + $objWriter->startElement('a:lightRig'); + $objWriter->writeAttribute('rig', 'twoPt'); + $objWriter->writeAttribute('dir', 't'); + + // a:rot + $objWriter->startElement('a:rot'); + $objWriter->writeAttribute('lat', '0'); + $objWriter->writeAttribute('lon', '0'); + $objWriter->writeAttribute('rev', '0'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); +*/ +/* + // a:sp3d + $objWriter->startElement('a:sp3d'); + + // a:bevelT + $objWriter->startElement('a:bevelT'); + $objWriter->writeAttribute('w', '25400'); + $objWriter->writeAttribute('h', '19050'); + $objWriter->endElement(); + + // a:contourClr + $objWriter->startElement('a:contourClr'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', 'FFFFFF'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); +*/ + $objWriter->endElement(); + + $objWriter->endElement(); + + // xdr:clientData + $objWriter->writeElement('xdr:clientData', null); + + $objWriter->endElement(); + } else { + throw new Exception("Invalid parameters passed."); + } + } + + /** + * Write VML header/footer images to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @return string XML Output + * @throws Exception + */ + public function writeVMLHeaderFooterImages(PHPExcel_Worksheet $pWorksheet = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // Header/footer images + $images = $pWorksheet->getHeaderFooter()->getImages(); + + // xml + $objWriter->startElement('xml'); + $objWriter->writeAttribute('xmlns:v', 'urn:schemas-microsoft-com:vml'); + $objWriter->writeAttribute('xmlns:o', 'urn:schemas-microsoft-com:office:office'); + $objWriter->writeAttribute('xmlns:x', 'urn:schemas-microsoft-com:office:excel'); + + // o:shapelayout + $objWriter->startElement('o:shapelayout'); + $objWriter->writeAttribute('v:ext', 'edit'); + + // o:idmap + $objWriter->startElement('o:idmap'); + $objWriter->writeAttribute('v:ext', 'edit'); + $objWriter->writeAttribute('data', '1'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // v:shapetype + $objWriter->startElement('v:shapetype'); + $objWriter->writeAttribute('id', '_x0000_t75'); + $objWriter->writeAttribute('coordsize', '21600,21600'); + $objWriter->writeAttribute('o:spt', '75'); + $objWriter->writeAttribute('o:preferrelative', 't'); + $objWriter->writeAttribute('path', 'm@4@5l@4@11@9@11@9@5xe'); + $objWriter->writeAttribute('filled', 'f'); + $objWriter->writeAttribute('stroked', 'f'); + + // v:stroke + $objWriter->startElement('v:stroke'); + $objWriter->writeAttribute('joinstyle', 'miter'); + $objWriter->endElement(); + + // v:formulas + $objWriter->startElement('v:formulas'); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'if lineDrawn pixelLineWidth 0'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'sum @0 1 0'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'sum 0 0 @1'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @2 1 2'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @3 21600 pixelWidth'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @3 21600 pixelHeight'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'sum @0 0 1'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @6 1 2'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @7 21600 pixelWidth'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'sum @8 21600 0'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'prod @7 21600 pixelHeight'); + $objWriter->endElement(); + + // v:f + $objWriter->startElement('v:f'); + $objWriter->writeAttribute('eqn', 'sum @10 21600 0'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // v:path + $objWriter->startElement('v:path'); + $objWriter->writeAttribute('o:extrusionok', 'f'); + $objWriter->writeAttribute('gradientshapeok', 't'); + $objWriter->writeAttribute('o:connecttype', 'rect'); + $objWriter->endElement(); + + // o:lock + $objWriter->startElement('o:lock'); + $objWriter->writeAttribute('v:ext', 'edit'); + $objWriter->writeAttribute('aspectratio', 't'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // Loop through images + foreach ($images as $key => $value) { + $this->_writeVMLHeaderFooterImage($objWriter, $key, $value); + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write VML comment to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pReference Reference + * @param PHPExcel_Worksheet_HeaderFooterDrawing $pImage Image + * @throws Exception + */ + public function _writeVMLHeaderFooterImage(PHPExcel_Shared_XMLWriter $objWriter = null, $pReference = '', PHPExcel_Worksheet_HeaderFooterDrawing $pImage = null) + { + // Calculate object id + preg_match('{(\d+)}', md5($pReference), $m); + $id = 1500 + (substr($m[1], 0, 2) * 1); + + // Calculate offset + $width = $pImage->getWidth(); + $height = $pImage->getHeight(); + $marginLeft = $pImage->getOffsetX(); + $marginTop = $pImage->getOffsetY(); + + // v:shape + $objWriter->startElement('v:shape'); + $objWriter->writeAttribute('id', $pReference); + $objWriter->writeAttribute('o:spid', '_x0000_s' . $id); + $objWriter->writeAttribute('type', '#_x0000_t75'); + $objWriter->writeAttribute('style', "position:absolute;margin-left:{$marginLeft}px;margin-top:{$marginTop}px;width:{$width}px;height:{$height}px;z-index:1"); + + // v:imagedata + $objWriter->startElement('v:imagedata'); + $objWriter->writeAttribute('o:relid', 'rId' . $pReference); + $objWriter->writeAttribute('o:title', $pImage->getName()); + $objWriter->endElement(); + + // o:lock + $objWriter->startElement('o:lock'); + $objWriter->writeAttribute('v:ext', 'edit'); + $objWriter->writeAttribute('rotation', 't'); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + + /** + * Get an array of all drawings + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Worksheet_Drawing[] All drawings in PHPExcel + * @throws Exception + */ + public function allDrawings(PHPExcel $pPHPExcel = null) + { + // Get an array of all drawings + $aDrawings = array(); + + // Loop through PHPExcel + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + // Loop through images and add to array + $iterator = $pPHPExcel->getSheet($i)->getDrawingCollection()->getIterator(); + while ($iterator->valid()) { + $aDrawings[] = $iterator->current(); + + $iterator->next(); + } + } + + return $aDrawings; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Rels.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Rels.php new file mode 100644 index 0000000..ff550a6 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Rels.php @@ -0,0 +1,417 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_Rels + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_Rels extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write relationships to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws Exception + */ + public function writeRelationships(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + + $customPropertyList = $pPHPExcel->getProperties()->getCustomProperties(); + if (!empty($customPropertyList)) { + // Relationship docProps/app.xml + $this->_writeRelationship( + $objWriter, + 4, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties', + 'docProps/custom.xml' + ); + + } + + // Relationship docProps/app.xml + $this->_writeRelationship( + $objWriter, + 3, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties', + 'docProps/app.xml' + ); + + // Relationship docProps/core.xml + $this->_writeRelationship( + $objWriter, + 2, + 'http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties', + 'docProps/core.xml' + ); + + // Relationship xl/workbook.xml + $this->_writeRelationship( + $objWriter, + 1, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument', + 'xl/workbook.xml' + ); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write workbook relationships to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws Exception + */ + public function writeWorkbookRelationships(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + + // Relationship styles.xml + $this->_writeRelationship( + $objWriter, + 1, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles', + 'styles.xml' + ); + + // Relationship theme/theme1.xml + $this->_writeRelationship( + $objWriter, + 2, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme', + 'theme/theme1.xml' + ); + + // Relationship sharedStrings.xml + $this->_writeRelationship( + $objWriter, + 3, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings', + 'sharedStrings.xml' + ); + + // Relationships with sheets + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + $this->_writeRelationship( + $objWriter, + ($i + 1 + 3), + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet', + 'worksheets/sheet' . ($i + 1) . '.xml' + ); + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write worksheet relationships to XML format + * + * Numbering is as follows: + * rId1 - Drawings + * rId_hyperlink_x - Hyperlinks + * + * @param PHPExcel_Worksheet $pWorksheet + * @param int $pWorksheetId + * @param boolean $includeCharts Flag indicating if we should write charts + * @return string XML Output + * @throws Exception + */ + public function writeWorksheetRelationships(PHPExcel_Worksheet $pWorksheet = null, $pWorksheetId = 1, $includeCharts = FALSE) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + + // Write drawing relationships? + $d = 0; + if ($includeCharts) { + $charts = $pWorksheet->getChartCollection(); + } else { + $charts = array(); + } + if (($pWorksheet->getDrawingCollection()->count() > 0) || + (count($charts) > 0)) { + $this->_writeRelationship( + $objWriter, + ++$d, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing', + '../drawings/drawing' . $pWorksheetId . '.xml' + ); + } + + // Write chart relationships? +// $chartCount = 0; +// $charts = $pWorksheet->getChartCollection(); +// echo 'Chart Rels: ' , count($charts) , '<br />'; +// if (count($charts) > 0) { +// foreach($charts as $chart) { +// $this->_writeRelationship( +// $objWriter, +// ++$d, +// 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart', +// '../charts/chart' . ++$chartCount . '.xml' +// ); +// } +// } +// + // Write hyperlink relationships? + $i = 1; + foreach ($pWorksheet->getHyperlinkCollection() as $hyperlink) { + if (!$hyperlink->isInternal()) { + $this->_writeRelationship( + $objWriter, + '_hyperlink_' . $i, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink', + $hyperlink->getUrl(), + 'External' + ); + + ++$i; + } + } + + // Write comments relationship? + $i = 1; + if (count($pWorksheet->getComments()) > 0) { + $this->_writeRelationship( + $objWriter, + '_comments_vml' . $i, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing', + '../drawings/vmlDrawing' . $pWorksheetId . '.vml' + ); + + $this->_writeRelationship( + $objWriter, + '_comments' . $i, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments', + '../comments' . $pWorksheetId . '.xml' + ); + } + + // Write header/footer relationship? + $i = 1; + if (count($pWorksheet->getHeaderFooter()->getImages()) > 0) { + $this->_writeRelationship( + $objWriter, + '_headerfooter_vml' . $i, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing', + '../drawings/vmlDrawingHF' . $pWorksheetId . '.vml' + ); + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write drawing relationships to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @param int &$chartRef Chart ID + * @param boolean $includeCharts Flag indicating if we should write charts + * @return string XML Output + * @throws Exception + */ + public function writeDrawingRelationships(PHPExcel_Worksheet $pWorksheet = null, &$chartRef, $includeCharts = FALSE) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + + // Loop through images and write relationships + $i = 1; + $iterator = $pWorksheet->getDrawingCollection()->getIterator(); + while ($iterator->valid()) { + if ($iterator->current() instanceof PHPExcel_Worksheet_Drawing + || $iterator->current() instanceof PHPExcel_Worksheet_MemoryDrawing) { + // Write relationship for image drawing + $this->_writeRelationship( + $objWriter, + $i, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image', + '../media/' . str_replace(' ', '', $iterator->current()->getIndexedFilename()) + ); + } + + $iterator->next(); + ++$i; + } + + if ($includeCharts) { + // Loop through charts and write relationships + $chartCount = $pWorksheet->getChartCount(); + if ($chartCount > 0) { + for ($c = 0; $c < $chartCount; ++$c) { + $this->_writeRelationship( + $objWriter, + $i++, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart', + '../charts/chart' . ++$chartRef . '.xml' + ); + } + } + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write header/footer drawing relationships to XML format + * + * @param PHPExcel_Worksheet $pWorksheet + * @return string XML Output + * @throws Exception + */ + public function writeHeaderFooterDrawingRelationships(PHPExcel_Worksheet $pWorksheet = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // Relationships + $objWriter->startElement('Relationships'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/package/2006/relationships'); + + // Loop through images and write relationships + foreach ($pWorksheet->getHeaderFooter()->getImages() as $key => $value) { + // Write relationship for image drawing + $this->_writeRelationship( + $objWriter, + $key, + 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image', + '../media/' . $value->getIndexedFilename() + ); + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write Override content type + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param int $pId Relationship ID. rId will be prepended! + * @param string $pType Relationship type + * @param string $pTarget Relationship target + * @param string $pTargetMode Relationship target mode + * @throws Exception + */ + private function _writeRelationship(PHPExcel_Shared_XMLWriter $objWriter = null, $pId = 1, $pType = '', $pTarget = '', $pTargetMode = '') + { + if ($pType != '' && $pTarget != '') { + // Write relationship + $objWriter->startElement('Relationship'); + $objWriter->writeAttribute('Id', 'rId' . $pId); + $objWriter->writeAttribute('Type', $pType); + $objWriter->writeAttribute('Target', $pTarget); + + if ($pTargetMode != '') { + $objWriter->writeAttribute('TargetMode', $pTargetMode); + } + + $objWriter->endElement(); + } else { + throw new Exception("Invalid parameters passed."); + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/StringTable.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/StringTable.php new file mode 100644 index 0000000..e9fb660 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/StringTable.php @@ -0,0 +1,319 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_StringTable + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_StringTable extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Create worksheet stringtable + * + * @param PHPExcel_Worksheet $pSheet Worksheet + * @param string[] $pExistingTable Existing table to eventually merge with + * @return string[] String table for worksheet + * @throws Exception + */ + public function createStringTable($pSheet = null, $pExistingTable = null) + { + if ($pSheet !== NULL) { + // Create string lookup table + $aStringTable = array(); + $cellCollection = null; + $aFlippedStringTable = null; // For faster lookup + + // Is an existing table given? + if (($pExistingTable !== NULL) && is_array($pExistingTable)) { + $aStringTable = $pExistingTable; + } + + // Fill index array + $aFlippedStringTable = $this->flipStringTable($aStringTable); + + // Loop through cells + foreach ($pSheet->getCellCollection() as $cellID) { + $cell = $pSheet->getCell($cellID); + $cellValue = $cell->getValue(); + if (!is_object($cellValue) && + ($cellValue !== NULL) && + $cellValue !== '' && + !isset($aFlippedStringTable[$cellValue]) && + ($cell->getDataType() == PHPExcel_Cell_DataType::TYPE_STRING || $cell->getDataType() == PHPExcel_Cell_DataType::TYPE_STRING2 || $cell->getDataType() == PHPExcel_Cell_DataType::TYPE_NULL)) { + $aStringTable[] = $cellValue; + $aFlippedStringTable[$cellValue] = true; + } elseif ($cellValue instanceof PHPExcel_RichText && + ($cellValue !== NULL) && + !isset($aFlippedStringTable[$cellValue->getHashCode()])) { + $aStringTable[] = $cellValue; + $aFlippedStringTable[$cellValue->getHashCode()] = true; + } + } + + // Return + return $aStringTable; + } else { + throw new Exception("Invalid PHPExcel_Worksheet object passed."); + } + } + + /** + * Write string table to XML format + * + * @param string[] $pStringTable + * @return string XML Output + * @throws Exception + */ + public function writeStringTable($pStringTable = null) + { + if ($pStringTable !== NULL) { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // String table + $objWriter->startElement('sst'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/spreadsheetml/2006/main'); + $objWriter->writeAttribute('uniqueCount', count($pStringTable)); + + // Loop through string table + foreach ($pStringTable as $textElement) { + $objWriter->startElement('si'); + + if (! $textElement instanceof PHPExcel_RichText) { + $textToWrite = PHPExcel_Shared_String::ControlCharacterPHP2OOXML( $textElement ); + $objWriter->startElement('t'); + if ($textToWrite !== trim($textToWrite)) { + $objWriter->writeAttribute('xml:space', 'preserve'); + } + $objWriter->writeRawData($textToWrite); + $objWriter->endElement(); + } else if ($textElement instanceof PHPExcel_RichText) { + $this->writeRichText($objWriter, $textElement); + } + + $objWriter->endElement(); + } + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } else { + throw new Exception("Invalid string table array passed."); + } + } + + /** + * Write Rich Text + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_RichText $pRichText Rich text + * @param string $prefix Optional Namespace prefix + * @throws Exception + */ + public function writeRichText(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_RichText $pRichText = null, $prefix=NULL) + { + if ($prefix !== NULL) + $prefix .= ':'; + // Loop through rich text elements + $elements = $pRichText->getRichTextElements(); + foreach ($elements as $element) { + // r + $objWriter->startElement($prefix.'r'); + + // rPr + if ($element instanceof PHPExcel_RichText_Run) { + // rPr + $objWriter->startElement($prefix.'rPr'); + + // rFont + $objWriter->startElement($prefix.'rFont'); + $objWriter->writeAttribute('val', $element->getFont()->getName()); + $objWriter->endElement(); + + // Bold + $objWriter->startElement($prefix.'b'); + $objWriter->writeAttribute('val', ($element->getFont()->getBold() ? 'true' : 'false')); + $objWriter->endElement(); + + // Italic + $objWriter->startElement($prefix.'i'); + $objWriter->writeAttribute('val', ($element->getFont()->getItalic() ? 'true' : 'false')); + $objWriter->endElement(); + + // Superscript / subscript + if ($element->getFont()->getSuperScript() || $element->getFont()->getSubScript()) { + $objWriter->startElement($prefix.'vertAlign'); + if ($element->getFont()->getSuperScript()) { + $objWriter->writeAttribute('val', 'superscript'); + } else if ($element->getFont()->getSubScript()) { + $objWriter->writeAttribute('val', 'subscript'); + } + $objWriter->endElement(); + } + + // Strikethrough + $objWriter->startElement($prefix.'strike'); + $objWriter->writeAttribute('val', ($element->getFont()->getStrikethrough() ? 'true' : 'false')); + $objWriter->endElement(); + + // Color + $objWriter->startElement($prefix.'color'); + $objWriter->writeAttribute('rgb', $element->getFont()->getColor()->getARGB()); + $objWriter->endElement(); + + // Size + $objWriter->startElement($prefix.'sz'); + $objWriter->writeAttribute('val', $element->getFont()->getSize()); + $objWriter->endElement(); + + // Underline + $objWriter->startElement($prefix.'u'); + $objWriter->writeAttribute('val', $element->getFont()->getUnderline()); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + // t + $objWriter->startElement($prefix.'t'); + $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeRawData(PHPExcel_Shared_String::ControlCharacterPHP2OOXML( $element->getText() )); + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + + /** + * Write Rich Text + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string|PHPExcel_RichText $pRichText text string or Rich text + * @param string $prefix Optional Namespace prefix + * @throws Exception + */ + public function writeRichTextForCharts(PHPExcel_Shared_XMLWriter $objWriter = null, $pRichText = null, $prefix=NULL) + { + if (!$pRichText instanceof PHPExcel_RichText) { + $textRun = $pRichText; + $pRichText = new PHPExcel_RichText(); + $pRichText->createTextRun($textRun); + } + + if ($prefix !== NULL) + $prefix .= ':'; + // Loop through rich text elements + $elements = $pRichText->getRichTextElements(); + foreach ($elements as $element) { + // r + $objWriter->startElement($prefix.'r'); + + // rPr + $objWriter->startElement($prefix.'rPr'); + + // Bold + $objWriter->writeAttribute('b', ($element->getFont()->getBold() ? 1 : 0)); + // Italic + $objWriter->writeAttribute('i', ($element->getFont()->getItalic() ? 1 : 0)); + // Underline + $underlineType = $element->getFont()->getUnderline(); + switch($underlineType) { + case 'single' : + $underlineType = 'sng'; + break; + case 'double' : + $underlineType = 'dbl'; + break; + } + $objWriter->writeAttribute('u', $underlineType); + // Strikethrough + $objWriter->writeAttribute('strike', ($element->getFont()->getStrikethrough() ? 'sngStrike' : 'noStrike')); + + // rFont + $objWriter->startElement($prefix.'latin'); + $objWriter->writeAttribute('typeface', $element->getFont()->getName()); + $objWriter->endElement(); + + // Superscript / subscript +// if ($element->getFont()->getSuperScript() || $element->getFont()->getSubScript()) { +// $objWriter->startElement($prefix.'vertAlign'); +// if ($element->getFont()->getSuperScript()) { +// $objWriter->writeAttribute('val', 'superscript'); +// } else if ($element->getFont()->getSubScript()) { +// $objWriter->writeAttribute('val', 'subscript'); +// } +// $objWriter->endElement(); +// } +// + $objWriter->endElement(); + + // t + $objWriter->startElement($prefix.'t'); +// $objWriter->writeAttribute('xml:space', 'preserve'); // Excel2010 accepts, Excel2007 complains + $objWriter->writeRawData(PHPExcel_Shared_String::ControlCharacterPHP2OOXML( $element->getText() )); + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + + /** + * Flip string table (for index searching) + * + * @param array $stringTable Stringtable + * @return array + */ + public function flipStringTable($stringTable = array()) { + // Return value + $returnValue = array(); + + // Loop through stringtable and add flipped items to $returnValue + foreach ($stringTable as $key => $value) { + if (! $value instanceof PHPExcel_RichText) { + $returnValue[$value] = $key; + } else if ($value instanceof PHPExcel_RichText) { + $returnValue[$value->getHashCode()] = $key; + } + } + + // Return + return $returnValue; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Style.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Style.php new file mode 100644 index 0000000..b24deba --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Style.php @@ -0,0 +1,701 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_Style + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_Style extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write styles to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws Exception + */ + public function writeStyles(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // styleSheet + $objWriter->startElement('styleSheet'); + $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/spreadsheetml/2006/main'); + + // numFmts + $objWriter->startElement('numFmts'); + $objWriter->writeAttribute('count', $this->getParentWriter()->getNumFmtHashTable()->count()); + + // numFmt + for ($i = 0; $i < $this->getParentWriter()->getNumFmtHashTable()->count(); ++$i) { + $this->_writeNumFmt($objWriter, $this->getParentWriter()->getNumFmtHashTable()->getByIndex($i), $i); + } + + $objWriter->endElement(); + + // fonts + $objWriter->startElement('fonts'); + $objWriter->writeAttribute('count', $this->getParentWriter()->getFontHashTable()->count()); + + // font + for ($i = 0; $i < $this->getParentWriter()->getFontHashTable()->count(); ++$i) { + $this->_writeFont($objWriter, $this->getParentWriter()->getFontHashTable()->getByIndex($i)); + } + + $objWriter->endElement(); + + // fills + $objWriter->startElement('fills'); + $objWriter->writeAttribute('count', $this->getParentWriter()->getFillHashTable()->count()); + + // fill + for ($i = 0; $i < $this->getParentWriter()->getFillHashTable()->count(); ++$i) { + $this->_writeFill($objWriter, $this->getParentWriter()->getFillHashTable()->getByIndex($i)); + } + + $objWriter->endElement(); + + // borders + $objWriter->startElement('borders'); + $objWriter->writeAttribute('count', $this->getParentWriter()->getBordersHashTable()->count()); + + // border + for ($i = 0; $i < $this->getParentWriter()->getBordersHashTable()->count(); ++$i) { + $this->_writeBorder($objWriter, $this->getParentWriter()->getBordersHashTable()->getByIndex($i)); + } + + $objWriter->endElement(); + + // cellStyleXfs + $objWriter->startElement('cellStyleXfs'); + $objWriter->writeAttribute('count', 1); + + // xf + $objWriter->startElement('xf'); + $objWriter->writeAttribute('numFmtId', 0); + $objWriter->writeAttribute('fontId', 0); + $objWriter->writeAttribute('fillId', 0); + $objWriter->writeAttribute('borderId', 0); + $objWriter->endElement(); + + $objWriter->endElement(); + + // cellXfs + $objWriter->startElement('cellXfs'); + $objWriter->writeAttribute('count', count($pPHPExcel->getCellXfCollection())); + + // xf + foreach ($pPHPExcel->getCellXfCollection() as $cellXf) { + $this->_writeCellStyleXf($objWriter, $cellXf, $pPHPExcel); + } + + $objWriter->endElement(); + + // cellStyles + $objWriter->startElement('cellStyles'); + $objWriter->writeAttribute('count', 1); + + // cellStyle + $objWriter->startElement('cellStyle'); + $objWriter->writeAttribute('name', 'Normal'); + $objWriter->writeAttribute('xfId', 0); + $objWriter->writeAttribute('builtinId', 0); + $objWriter->endElement(); + + $objWriter->endElement(); + + // dxfs + $objWriter->startElement('dxfs'); + $objWriter->writeAttribute('count', $this->getParentWriter()->getStylesConditionalHashTable()->count()); + + // dxf + for ($i = 0; $i < $this->getParentWriter()->getStylesConditionalHashTable()->count(); ++$i) { + $this->_writeCellStyleDxf($objWriter, $this->getParentWriter()->getStylesConditionalHashTable()->getByIndex($i)->getStyle()); + } + + $objWriter->endElement(); + + // tableStyles + $objWriter->startElement('tableStyles'); + $objWriter->writeAttribute('defaultTableStyle', 'TableStyleMedium9'); + $objWriter->writeAttribute('defaultPivotStyle', 'PivotTableStyle1'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write Fill + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_Fill $pFill Fill style + * @throws Exception + */ + private function _writeFill(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Fill $pFill = null) + { + // Check if this is a pattern type or gradient type + if ($pFill->getFillType() === PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR || + $pFill->getFillType() === PHPExcel_Style_Fill::FILL_GRADIENT_PATH) { + // Gradient fill + $this->_writeGradientFill($objWriter, $pFill); + } elseif($pFill->getFillType() !== NULL) { + // Pattern fill + $this->_writePatternFill($objWriter, $pFill); + } + } + + /** + * Write Gradient Fill + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_Fill $pFill Fill style + * @throws Exception + */ + private function _writeGradientFill(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Fill $pFill = null) + { + // fill + $objWriter->startElement('fill'); + + // gradientFill + $objWriter->startElement('gradientFill'); + $objWriter->writeAttribute('type', $pFill->getFillType()); + $objWriter->writeAttribute('degree', $pFill->getRotation()); + + // stop + $objWriter->startElement('stop'); + $objWriter->writeAttribute('position', '0'); + + // color + $objWriter->startElement('color'); + $objWriter->writeAttribute('rgb', $pFill->getStartColor()->getARGB()); + $objWriter->endElement(); + + $objWriter->endElement(); + + // stop + $objWriter->startElement('stop'); + $objWriter->writeAttribute('position', '1'); + + // color + $objWriter->startElement('color'); + $objWriter->writeAttribute('rgb', $pFill->getEndColor()->getARGB()); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Pattern Fill + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_Fill $pFill Fill style + * @throws Exception + */ + private function _writePatternFill(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Fill $pFill = null) + { + // fill + $objWriter->startElement('fill'); + + // patternFill + $objWriter->startElement('patternFill'); + $objWriter->writeAttribute('patternType', $pFill->getFillType()); + + if ($pFill->getFillType() !== PHPExcel_Style_Fill::FILL_NONE) { + // fgColor + if ($pFill->getStartColor()->getARGB()) { + $objWriter->startElement('fgColor'); + $objWriter->writeAttribute('rgb', $pFill->getStartColor()->getARGB()); + $objWriter->endElement(); + } + } + if ($pFill->getFillType() !== PHPExcel_Style_Fill::FILL_NONE) { + // bgColor + if ($pFill->getEndColor()->getARGB()) { + $objWriter->startElement('bgColor'); + $objWriter->writeAttribute('rgb', $pFill->getEndColor()->getARGB()); + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write Font + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_Font $pFont Font style + * @throws Exception + */ + private function _writeFont(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Font $pFont = null) + { + // font + $objWriter->startElement('font'); + // Weird! The order of these elements actually makes a difference when opening Excel2007 + // files in Excel2003 with the compatibility pack. It's not documented behaviour, + // and makes for a real WTF! + + // Bold. We explicitly write this element also when false (like MS Office Excel 2007 does + // for conditional formatting). Otherwise it will apparently not be picked up in conditional + // formatting style dialog + if ($pFont->getBold() !== NULL) { + $objWriter->startElement('b'); + $objWriter->writeAttribute('val', $pFont->getBold() ? '1' : '0'); + $objWriter->endElement(); + } + + // Italic + if ($pFont->getItalic() !== NULL) { + $objWriter->startElement('i'); + $objWriter->writeAttribute('val', $pFont->getItalic() ? '1' : '0'); + $objWriter->endElement(); + } + + // Strikethrough + if ($pFont->getStrikethrough() !== NULL) { + $objWriter->startElement('strike'); + $objWriter->writeAttribute('val', $pFont->getStrikethrough() ? '1' : '0'); + $objWriter->endElement(); + } + + // Underline + if ($pFont->getUnderline() !== NULL) { + $objWriter->startElement('u'); + $objWriter->writeAttribute('val', $pFont->getUnderline()); + $objWriter->endElement(); + } + + // Superscript / subscript + if ($pFont->getSuperScript() === TRUE || $pFont->getSubScript() === TRUE) { + $objWriter->startElement('vertAlign'); + if ($pFont->getSuperScript() === TRUE) { + $objWriter->writeAttribute('val', 'superscript'); + } else if ($pFont->getSubScript() === TRUE) { + $objWriter->writeAttribute('val', 'subscript'); + } + $objWriter->endElement(); + } + + // Size + if ($pFont->getSize() !== NULL) { + $objWriter->startElement('sz'); + $objWriter->writeAttribute('val', $pFont->getSize()); + $objWriter->endElement(); + } + + // Foreground color + if ($pFont->getColor()->getARGB() !== NULL) { + $objWriter->startElement('color'); + $objWriter->writeAttribute('rgb', $pFont->getColor()->getARGB()); + $objWriter->endElement(); + } + + // Name + if ($pFont->getName() !== NULL) { + $objWriter->startElement('name'); + $objWriter->writeAttribute('val', $pFont->getName()); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + /** + * Write Border + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_Borders $pBorders Borders style + * @throws Exception + */ + private function _writeBorder(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Borders $pBorders = null) + { + // Write border + $objWriter->startElement('border'); + // Diagonal? + switch ($pBorders->getDiagonalDirection()) { + case PHPExcel_Style_Borders::DIAGONAL_UP: + $objWriter->writeAttribute('diagonalUp', 'true'); + $objWriter->writeAttribute('diagonalDown', 'false'); + break; + case PHPExcel_Style_Borders::DIAGONAL_DOWN: + $objWriter->writeAttribute('diagonalUp', 'false'); + $objWriter->writeAttribute('diagonalDown', 'true'); + break; + case PHPExcel_Style_Borders::DIAGONAL_BOTH: + $objWriter->writeAttribute('diagonalUp', 'true'); + $objWriter->writeAttribute('diagonalDown', 'true'); + break; + } + + // BorderPr + $this->_writeBorderPr($objWriter, 'left', $pBorders->getLeft()); + $this->_writeBorderPr($objWriter, 'right', $pBorders->getRight()); + $this->_writeBorderPr($objWriter, 'top', $pBorders->getTop()); + $this->_writeBorderPr($objWriter, 'bottom', $pBorders->getBottom()); + $this->_writeBorderPr($objWriter, 'diagonal', $pBorders->getDiagonal()); + $objWriter->endElement(); + } + + /** + * Write Cell Style Xf + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style $pStyle Style + * @param PHPExcel $pPHPExcel Workbook + * @throws Exception + */ + private function _writeCellStyleXf(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style $pStyle = null, PHPExcel $pPHPExcel = null) + { + // xf + $objWriter->startElement('xf'); + $objWriter->writeAttribute('xfId', 0); + $objWriter->writeAttribute('fontId', (int)$this->getParentWriter()->getFontHashTable()->getIndexForHashCode($pStyle->getFont()->getHashCode())); + + if ($pStyle->getNumberFormat()->getBuiltInFormatCode() === false) { + $objWriter->writeAttribute('numFmtId', (int)($this->getParentWriter()->getNumFmtHashTable()->getIndexForHashCode($pStyle->getNumberFormat()->getHashCode()) + 164) ); + } else { + $objWriter->writeAttribute('numFmtId', (int)$pStyle->getNumberFormat()->getBuiltInFormatCode()); + } + + $objWriter->writeAttribute('fillId', (int)$this->getParentWriter()->getFillHashTable()->getIndexForHashCode($pStyle->getFill()->getHashCode())); + $objWriter->writeAttribute('borderId', (int)$this->getParentWriter()->getBordersHashTable()->getIndexForHashCode($pStyle->getBorders()->getHashCode())); + + // Apply styles? + $objWriter->writeAttribute('applyFont', ($pPHPExcel->getDefaultStyle()->getFont()->getHashCode() != $pStyle->getFont()->getHashCode()) ? '1' : '0'); + $objWriter->writeAttribute('applyNumberFormat', ($pPHPExcel->getDefaultStyle()->getNumberFormat()->getHashCode() != $pStyle->getNumberFormat()->getHashCode()) ? '1' : '0'); + $objWriter->writeAttribute('applyFill', ($pPHPExcel->getDefaultStyle()->getFill()->getHashCode() != $pStyle->getFill()->getHashCode()) ? '1' : '0'); + $objWriter->writeAttribute('applyBorder', ($pPHPExcel->getDefaultStyle()->getBorders()->getHashCode() != $pStyle->getBorders()->getHashCode()) ? '1' : '0'); + $objWriter->writeAttribute('applyAlignment', ($pPHPExcel->getDefaultStyle()->getAlignment()->getHashCode() != $pStyle->getAlignment()->getHashCode()) ? '1' : '0'); + if ($pStyle->getProtection()->getLocked() != PHPExcel_Style_Protection::PROTECTION_INHERIT || $pStyle->getProtection()->getHidden() != PHPExcel_Style_Protection::PROTECTION_INHERIT) { + $objWriter->writeAttribute('applyProtection', 'true'); + } + + // alignment + $objWriter->startElement('alignment'); + $objWriter->writeAttribute('horizontal', $pStyle->getAlignment()->getHorizontal()); + $objWriter->writeAttribute('vertical', $pStyle->getAlignment()->getVertical()); + + $textRotation = 0; + if ($pStyle->getAlignment()->getTextRotation() >= 0) { + $textRotation = $pStyle->getAlignment()->getTextRotation(); + } else if ($pStyle->getAlignment()->getTextRotation() < 0) { + $textRotation = 90 - $pStyle->getAlignment()->getTextRotation(); + } + $objWriter->writeAttribute('textRotation', $textRotation); + + $objWriter->writeAttribute('wrapText', ($pStyle->getAlignment()->getWrapText() ? 'true' : 'false')); + $objWriter->writeAttribute('shrinkToFit', ($pStyle->getAlignment()->getShrinkToFit() ? 'true' : 'false')); + + if ($pStyle->getAlignment()->getIndent() > 0) { + $objWriter->writeAttribute('indent', $pStyle->getAlignment()->getIndent()); + } + $objWriter->endElement(); + + // protection + if ($pStyle->getProtection()->getLocked() != PHPExcel_Style_Protection::PROTECTION_INHERIT || $pStyle->getProtection()->getHidden() != PHPExcel_Style_Protection::PROTECTION_INHERIT) { + $objWriter->startElement('protection'); + if ($pStyle->getProtection()->getLocked() != PHPExcel_Style_Protection::PROTECTION_INHERIT) { + $objWriter->writeAttribute('locked', ($pStyle->getProtection()->getLocked() == PHPExcel_Style_Protection::PROTECTION_PROTECTED ? 'true' : 'false')); + } + if ($pStyle->getProtection()->getHidden() != PHPExcel_Style_Protection::PROTECTION_INHERIT) { + $objWriter->writeAttribute('hidden', ($pStyle->getProtection()->getHidden() == PHPExcel_Style_Protection::PROTECTION_PROTECTED ? 'true' : 'false')); + } + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + /** + * Write Cell Style Dxf + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style $pStyle Style + * @throws Exception + */ + private function _writeCellStyleDxf(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style $pStyle = null) + { + // dxf + $objWriter->startElement('dxf'); + + // font + $this->_writeFont($objWriter, $pStyle->getFont()); + + // numFmt + $this->_writeNumFmt($objWriter, $pStyle->getNumberFormat()); + + // fill + $this->_writeFill($objWriter, $pStyle->getFill()); + + // alignment + $objWriter->startElement('alignment'); + if ($pStyle->getAlignment()->getHorizontal() !== NULL) { + $objWriter->writeAttribute('horizontal', $pStyle->getAlignment()->getHorizontal()); + } + if ($pStyle->getAlignment()->getVertical() !== NULL) { + $objWriter->writeAttribute('vertical', $pStyle->getAlignment()->getVertical()); + } + + if ($pStyle->getAlignment()->getTextRotation() !== NULL) { + $textRotation = 0; + if ($pStyle->getAlignment()->getTextRotation() >= 0) { + $textRotation = $pStyle->getAlignment()->getTextRotation(); + } else if ($pStyle->getAlignment()->getTextRotation() < 0) { + $textRotation = 90 - $pStyle->getAlignment()->getTextRotation(); + } + $objWriter->writeAttribute('textRotation', $textRotation); + } + $objWriter->endElement(); + + // border + $this->_writeBorder($objWriter, $pStyle->getBorders()); + + // protection + if (($pStyle->getProtection()->getLocked() !== NULL) || + ($pStyle->getProtection()->getHidden() !== NULL)) { + if ($pStyle->getProtection()->getLocked() !== PHPExcel_Style_Protection::PROTECTION_INHERIT || + $pStyle->getProtection()->getHidden() !== PHPExcel_Style_Protection::PROTECTION_INHERIT) { + $objWriter->startElement('protection'); + if (($pStyle->getProtection()->getLocked() !== NULL) && + ($pStyle->getProtection()->getLocked() !== PHPExcel_Style_Protection::PROTECTION_INHERIT)) { + $objWriter->writeAttribute('locked', ($pStyle->getProtection()->getLocked() == PHPExcel_Style_Protection::PROTECTION_PROTECTED ? 'true' : 'false')); + } + if (($pStyle->getProtection()->getHidden() !== NULL) && + ($pStyle->getProtection()->getHidden() !== PHPExcel_Style_Protection::PROTECTION_INHERIT)) { + $objWriter->writeAttribute('hidden', ($pStyle->getProtection()->getHidden() == PHPExcel_Style_Protection::PROTECTION_PROTECTED ? 'true' : 'false')); + } + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + } + + /** + * Write BorderPr + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pName Element name + * @param PHPExcel_Style_Border $pBorder Border style + * @throws Exception + */ + private function _writeBorderPr(PHPExcel_Shared_XMLWriter $objWriter = null, $pName = 'left', PHPExcel_Style_Border $pBorder = null) + { + // Write BorderPr + if ($pBorder->getBorderStyle() != PHPExcel_Style_Border::BORDER_NONE) { + $objWriter->startElement($pName); + $objWriter->writeAttribute('style', $pBorder->getBorderStyle()); + + // color + $objWriter->startElement('color'); + $objWriter->writeAttribute('rgb', $pBorder->getColor()->getARGB()); + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + + /** + * Write NumberFormat + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Style_NumberFormat $pNumberFormat Number Format + * @param int $pId Number Format identifier + * @throws Exception + */ + private function _writeNumFmt(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_NumberFormat $pNumberFormat = null, $pId = 0) + { + // Translate formatcode + $formatCode = $pNumberFormat->getFormatCode(); + + // numFmt + if ($formatCode !== NULL) { + $objWriter->startElement('numFmt'); + $objWriter->writeAttribute('numFmtId', ($pId + 164)); + $objWriter->writeAttribute('formatCode', $formatCode); + $objWriter->endElement(); + } + } + + /** + * Get an array of all styles + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style[] All styles in PHPExcel + * @throws Exception + */ + public function allStyles(PHPExcel $pPHPExcel = null) + { + $aStyles = $pPHPExcel->getCellXfCollection(); + + return $aStyles; + } + + /** + * Get an array of all conditional styles + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style_Conditional[] All conditional styles in PHPExcel + * @throws Exception + */ + public function allConditionalStyles(PHPExcel $pPHPExcel = null) + { + // Get an array of all styles + $aStyles = array(); + + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + foreach ($pPHPExcel->getSheet($i)->getConditionalStylesCollection() as $conditionalStyles) { + foreach ($conditionalStyles as $conditionalStyle) { + $aStyles[] = $conditionalStyle; + } + } + } + + return $aStyles; + } + + /** + * Get an array of all fills + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style_Fill[] All fills in PHPExcel + * @throws Exception + */ + public function allFills(PHPExcel $pPHPExcel = null) + { + // Get an array of unique fills + $aFills = array(); + + // Two first fills are predefined + $fill0 = new PHPExcel_Style_Fill(); + $fill0->setFillType(PHPExcel_Style_Fill::FILL_NONE); + $aFills[] = $fill0; + + $fill1 = new PHPExcel_Style_Fill(); + $fill1->setFillType(PHPExcel_Style_Fill::FILL_PATTERN_GRAY125); + $aFills[] = $fill1; + // The remaining fills + $aStyles = $this->allStyles($pPHPExcel); + foreach ($aStyles as $style) { + if (!array_key_exists($style->getFill()->getHashCode(), $aFills)) { + $aFills[ $style->getFill()->getHashCode() ] = $style->getFill(); + } + } + + return $aFills; + } + + /** + * Get an array of all fonts + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style_Font[] All fonts in PHPExcel + * @throws Exception + */ + public function allFonts(PHPExcel $pPHPExcel = null) + { + // Get an array of unique fonts + $aFonts = array(); + $aStyles = $this->allStyles($pPHPExcel); + + foreach ($aStyles as $style) { + if (!array_key_exists($style->getFont()->getHashCode(), $aFonts)) { + $aFonts[ $style->getFont()->getHashCode() ] = $style->getFont(); + } + } + + return $aFonts; + } + + /** + * Get an array of all borders + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style_Borders[] All borders in PHPExcel + * @throws Exception + */ + public function allBorders(PHPExcel $pPHPExcel = null) + { + // Get an array of unique borders + $aBorders = array(); + $aStyles = $this->allStyles($pPHPExcel); + + foreach ($aStyles as $style) { + if (!array_key_exists($style->getBorders()->getHashCode(), $aBorders)) { + $aBorders[ $style->getBorders()->getHashCode() ] = $style->getBorders(); + } + } + + return $aBorders; + } + + /** + * Get an array of all number formats + * + * @param PHPExcel $pPHPExcel + * @return PHPExcel_Style_NumberFormat[] All number formats in PHPExcel + * @throws Exception + */ + public function allNumberFormats(PHPExcel $pPHPExcel = null) + { + // Get an array of unique number formats + $aNumFmts = array(); + $aStyles = $this->allStyles($pPHPExcel); + + foreach ($aStyles as $style) { + if ($style->getNumberFormat()->getBuiltInFormatCode() === false && !array_key_exists($style->getNumberFormat()->getHashCode(), $aNumFmts)) { + $aNumFmts[ $style->getNumberFormat()->getHashCode() ] = $style->getNumberFormat(); + } + } + + return $aNumFmts; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Theme.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Theme.php new file mode 100644 index 0000000..e067efe --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Theme.php @@ -0,0 +1,871 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_DocProps + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_Theme extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Map of Major fonts to write + * @static array of string + * + */ + private static $_majorFonts = array( + 'Jpan' => 'MS Pゴシック', + 'Hang' => '맑은 고딕', + 'Hans' => '宋体', + 'Hant' => '新細明體', + 'Arab' => 'Times New Roman', + 'Hebr' => 'Times New Roman', + 'Thai' => 'Tahoma', + 'Ethi' => 'Nyala', + 'Beng' => 'Vrinda', + 'Gujr' => 'Shruti', + 'Khmr' => 'MoolBoran', + 'Knda' => 'Tunga', + 'Guru' => 'Raavi', + 'Cans' => 'Euphemia', + 'Cher' => 'Plantagenet Cherokee', + 'Yiii' => 'Microsoft Yi Baiti', + 'Tibt' => 'Microsoft Himalaya', + 'Thaa' => 'MV Boli', + 'Deva' => 'Mangal', + 'Telu' => 'Gautami', + 'Taml' => 'Latha', + 'Syrc' => 'Estrangelo Edessa', + 'Orya' => 'Kalinga', + 'Mlym' => 'Kartika', + 'Laoo' => 'DokChampa', + 'Sinh' => 'Iskoola Pota', + 'Mong' => 'Mongolian Baiti', + 'Viet' => 'Times New Roman', + 'Uigh' => 'Microsoft Uighur', + 'Geor' => 'Sylfaen', + ); + + /** + * Map of Minor fonts to write + * @static array of string + * + */ + private static $_minorFonts = array( + 'Jpan' => 'MS Pゴシック', + 'Hang' => '맑은 고딕', + 'Hans' => '宋体', + 'Hant' => '新細明體', + 'Arab' => 'Arial', + 'Hebr' => 'Arial', + 'Thai' => 'Tahoma', + 'Ethi' => 'Nyala', + 'Beng' => 'Vrinda', + 'Gujr' => 'Shruti', + 'Khmr' => 'DaunPenh', + 'Knda' => 'Tunga', + 'Guru' => 'Raavi', + 'Cans' => 'Euphemia', + 'Cher' => 'Plantagenet Cherokee', + 'Yiii' => 'Microsoft Yi Baiti', + 'Tibt' => 'Microsoft Himalaya', + 'Thaa' => 'MV Boli', + 'Deva' => 'Mangal', + 'Telu' => 'Gautami', + 'Taml' => 'Latha', + 'Syrc' => 'Estrangelo Edessa', + 'Orya' => 'Kalinga', + 'Mlym' => 'Kartika', + 'Laoo' => 'DokChampa', + 'Sinh' => 'Iskoola Pota', + 'Mong' => 'Mongolian Baiti', + 'Viet' => 'Arial', + 'Uigh' => 'Microsoft Uighur', + 'Geor' => 'Sylfaen', + ); + + /** + * Map of core colours + * @static array of string + * + */ + private static $_colourScheme = array( + 'dk2' => '1F497D', + 'lt2' => 'EEECE1', + 'accent1' => '4F81BD', + 'accent2' => 'C0504D', + 'accent3' => '9BBB59', + 'accent4' => '8064A2', + 'accent5' => '4BACC6', + 'accent6' => 'F79646', + 'hlink' => '0000FF', + 'folHlink' => '800080', + ); + + /** + * Write theme to XML format + * + * @param PHPExcel $pPHPExcel + * @return string XML Output + * @throws Exception + */ + public function writeTheme(PHPExcel $pPHPExcel = null) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // a:theme + $objWriter->startElement('a:theme'); + $objWriter->writeAttribute('xmlns:a', 'http://schemas.openxmlformats.org/drawingml/2006/main'); + $objWriter->writeAttribute('name', 'Office Theme'); + + // a:themeElements + $objWriter->startElement('a:themeElements'); + + // a:clrScheme + $objWriter->startElement('a:clrScheme'); + $objWriter->writeAttribute('name', 'Office'); + + // a:dk1 + $objWriter->startElement('a:dk1'); + + // a:sysClr + $objWriter->startElement('a:sysClr'); + $objWriter->writeAttribute('val', 'windowText'); + $objWriter->writeAttribute('lastClr', '000000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:lt1 + $objWriter->startElement('a:lt1'); + + // a:sysClr + $objWriter->startElement('a:sysClr'); + $objWriter->writeAttribute('val', 'window'); + $objWriter->writeAttribute('lastClr', 'FFFFFF'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:dk2 + $this->_writeColourScheme($objWriter); + + $objWriter->endElement(); + + // a:fontScheme + $objWriter->startElement('a:fontScheme'); + $objWriter->writeAttribute('name', 'Office'); + + // a:majorFont + $objWriter->startElement('a:majorFont'); + $this->_writeFonts($objWriter, 'Cambria', self::$_majorFonts); + $objWriter->endElement(); + + // a:minorFont + $objWriter->startElement('a:minorFont'); + $this->_writeFonts($objWriter, 'Calibri', self::$_minorFonts); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:fmtScheme + $objWriter->startElement('a:fmtScheme'); + $objWriter->writeAttribute('name', 'Office'); + + // a:fillStyleLst + $objWriter->startElement('a:fillStyleLst'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gradFill + $objWriter->startElement('a:gradFill'); + $objWriter->writeAttribute('rotWithShape', '1'); + + // a:gsLst + $objWriter->startElement('a:gsLst'); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '0'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '50000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '300000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '35000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '37000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '300000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '100000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '15000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '350000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:lin + $objWriter->startElement('a:lin'); + $objWriter->writeAttribute('ang', '16200000'); + $objWriter->writeAttribute('scaled', '1'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gradFill + $objWriter->startElement('a:gradFill'); + $objWriter->writeAttribute('rotWithShape', '1'); + + // a:gsLst + $objWriter->startElement('a:gsLst'); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '0'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '51000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '130000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '80000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '93000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '130000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '100000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '94000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '135000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:lin + $objWriter->startElement('a:lin'); + $objWriter->writeAttribute('ang', '16200000'); + $objWriter->writeAttribute('scaled', '0'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:lnStyleLst + $objWriter->startElement('a:lnStyleLst'); + + // a:ln + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', '9525'); + $objWriter->writeAttribute('cap', 'flat'); + $objWriter->writeAttribute('cmpd', 'sng'); + $objWriter->writeAttribute('algn', 'ctr'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '95000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '105000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:prstDash + $objWriter->startElement('a:prstDash'); + $objWriter->writeAttribute('val', 'solid'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:ln + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', '25400'); + $objWriter->writeAttribute('cap', 'flat'); + $objWriter->writeAttribute('cmpd', 'sng'); + $objWriter->writeAttribute('algn', 'ctr'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:prstDash + $objWriter->startElement('a:prstDash'); + $objWriter->writeAttribute('val', 'solid'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:ln + $objWriter->startElement('a:ln'); + $objWriter->writeAttribute('w', '38100'); + $objWriter->writeAttribute('cap', 'flat'); + $objWriter->writeAttribute('cmpd', 'sng'); + $objWriter->writeAttribute('algn', 'ctr'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:prstDash + $objWriter->startElement('a:prstDash'); + $objWriter->writeAttribute('val', 'solid'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + + + // a:effectStyleLst + $objWriter->startElement('a:effectStyleLst'); + + // a:effectStyle + $objWriter->startElement('a:effectStyle'); + + // a:effectLst + $objWriter->startElement('a:effectLst'); + + // a:outerShdw + $objWriter->startElement('a:outerShdw'); + $objWriter->writeAttribute('blurRad', '40000'); + $objWriter->writeAttribute('dist', '20000'); + $objWriter->writeAttribute('dir', '5400000'); + $objWriter->writeAttribute('rotWithShape', '0'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', '000000'); + + // a:alpha + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', '38000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:effectStyle + $objWriter->startElement('a:effectStyle'); + + // a:effectLst + $objWriter->startElement('a:effectLst'); + + // a:outerShdw + $objWriter->startElement('a:outerShdw'); + $objWriter->writeAttribute('blurRad', '40000'); + $objWriter->writeAttribute('dist', '23000'); + $objWriter->writeAttribute('dir', '5400000'); + $objWriter->writeAttribute('rotWithShape', '0'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', '000000'); + + // a:alpha + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', '35000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:effectStyle + $objWriter->startElement('a:effectStyle'); + + // a:effectLst + $objWriter->startElement('a:effectLst'); + + // a:outerShdw + $objWriter->startElement('a:outerShdw'); + $objWriter->writeAttribute('blurRad', '40000'); + $objWriter->writeAttribute('dist', '23000'); + $objWriter->writeAttribute('dir', '5400000'); + $objWriter->writeAttribute('rotWithShape', '0'); + + // a:srgbClr + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', '000000'); + + // a:alpha + $objWriter->startElement('a:alpha'); + $objWriter->writeAttribute('val', '35000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:scene3d + $objWriter->startElement('a:scene3d'); + + // a:camera + $objWriter->startElement('a:camera'); + $objWriter->writeAttribute('prst', 'orthographicFront'); + + // a:rot + $objWriter->startElement('a:rot'); + $objWriter->writeAttribute('lat', '0'); + $objWriter->writeAttribute('lon', '0'); + $objWriter->writeAttribute('rev', '0'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:lightRig + $objWriter->startElement('a:lightRig'); + $objWriter->writeAttribute('rig', 'threePt'); + $objWriter->writeAttribute('dir', 't'); + + // a:rot + $objWriter->startElement('a:rot'); + $objWriter->writeAttribute('lat', '0'); + $objWriter->writeAttribute('lon', '0'); + $objWriter->writeAttribute('rev', '1200000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:sp3d + $objWriter->startElement('a:sp3d'); + + // a:bevelT + $objWriter->startElement('a:bevelT'); + $objWriter->writeAttribute('w', '63500'); + $objWriter->writeAttribute('h', '25400'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:bgFillStyleLst + $objWriter->startElement('a:bgFillStyleLst'); + + // a:solidFill + $objWriter->startElement('a:solidFill'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gradFill + $objWriter->startElement('a:gradFill'); + $objWriter->writeAttribute('rotWithShape', '1'); + + // a:gsLst + $objWriter->startElement('a:gsLst'); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '0'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '40000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '350000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '40000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '45000'); + $objWriter->endElement(); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '99000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '350000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '100000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '20000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '255000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:path + $objWriter->startElement('a:path'); + $objWriter->writeAttribute('path', 'circle'); + + // a:fillToRect + $objWriter->startElement('a:fillToRect'); + $objWriter->writeAttribute('l', '50000'); + $objWriter->writeAttribute('t', '-80000'); + $objWriter->writeAttribute('r', '50000'); + $objWriter->writeAttribute('b', '180000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gradFill + $objWriter->startElement('a:gradFill'); + $objWriter->writeAttribute('rotWithShape', '1'); + + // a:gsLst + $objWriter->startElement('a:gsLst'); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '0'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:tint + $objWriter->startElement('a:tint'); + $objWriter->writeAttribute('val', '80000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '300000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:gs + $objWriter->startElement('a:gs'); + $objWriter->writeAttribute('pos', '100000'); + + // a:schemeClr + $objWriter->startElement('a:schemeClr'); + $objWriter->writeAttribute('val', 'phClr'); + + // a:shade + $objWriter->startElement('a:shade'); + $objWriter->writeAttribute('val', '30000'); + $objWriter->endElement(); + + // a:satMod + $objWriter->startElement('a:satMod'); + $objWriter->writeAttribute('val', '200000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:path + $objWriter->startElement('a:path'); + $objWriter->writeAttribute('path', 'circle'); + + // a:fillToRect + $objWriter->startElement('a:fillToRect'); + $objWriter->writeAttribute('l', '50000'); + $objWriter->writeAttribute('t', '50000'); + $objWriter->writeAttribute('r', '50000'); + $objWriter->writeAttribute('b', '50000'); + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + $objWriter->endElement(); + + // a:objectDefaults + $objWriter->writeElement('a:objectDefaults', null); + + // a:extraClrSchemeLst + $objWriter->writeElement('a:extraClrSchemeLst', null); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write fonts to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter + * @param string $latinFont + * @param array of string $fontSet + * @return string XML Output + * @throws Exception + */ + private function _writeFonts($objWriter, $latinFont, $fontSet) + { + // a:latin + $objWriter->startElement('a:latin'); + $objWriter->writeAttribute('typeface', $latinFont); + $objWriter->endElement(); + + // a:ea + $objWriter->startElement('a:ea'); + $objWriter->writeAttribute('typeface', ''); + $objWriter->endElement(); + + // a:cs + $objWriter->startElement('a:cs'); + $objWriter->writeAttribute('typeface', ''); + $objWriter->endElement(); + + foreach($fontSet as $fontScript => $typeface) { + $objWriter->startElement('a:font'); + $objWriter->writeAttribute('script', $fontScript); + $objWriter->writeAttribute('typeface', $typeface); + $objWriter->endElement(); + } + + } + + /** + * Write colour scheme to XML format + * + * @param PHPExcel_Shared_XMLWriter $objWriter + * @return string XML Output + * @throws Exception + */ + private function _writeColourScheme($objWriter) + { + foreach(self::$_colourScheme as $colourName => $colourValue) { + $objWriter->startElement('a:'.$colourName); + + $objWriter->startElement('a:srgbClr'); + $objWriter->writeAttribute('val', $colourValue); + $objWriter->endElement(); + + $objWriter->endElement(); + } + + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Workbook.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Workbook.php new file mode 100644 index 0000000..bbd2f92 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Workbook.php @@ -0,0 +1,452 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_Workbook + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_Workbook extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write workbook to XML format + * + * @param PHPExcel $pPHPExcel + * @param boolean $recalcRequired Indicate whether formulas should be recalculated before writing + * @return string XML Output + * @throws Exception + */ + public function writeWorkbook(PHPExcel $pPHPExcel = null, $recalcRequired = FALSE) + { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // workbook + $objWriter->startElement('workbook'); + $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/spreadsheetml/2006/main'); + $objWriter->writeAttribute('xmlns:r', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + + // fileVersion + $this->_writeFileVersion($objWriter); + + // workbookPr + $this->_writeWorkbookPr($objWriter); + + // workbookProtection + $this->_writeWorkbookProtection($objWriter, $pPHPExcel); + + // bookViews + if ($this->getParentWriter()->getOffice2003Compatibility() === false) { + $this->_writeBookViews($objWriter, $pPHPExcel); + } + + // sheets + $this->_writeSheets($objWriter, $pPHPExcel); + + // definedNames + $this->_writeDefinedNames($objWriter, $pPHPExcel); + + // calcPr + $this->_writeCalcPr($objWriter,$recalcRequired); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } + + /** + * Write file version + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws Exception + */ + private function _writeFileVersion(PHPExcel_Shared_XMLWriter $objWriter = null) + { + $objWriter->startElement('fileVersion'); + $objWriter->writeAttribute('appName', 'xl'); + $objWriter->writeAttribute('lastEdited', '4'); + $objWriter->writeAttribute('lowestEdited', '4'); + $objWriter->writeAttribute('rupBuild', '4505'); + $objWriter->endElement(); + } + + /** + * Write WorkbookPr + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @throws Exception + */ + private function _writeWorkbookPr(PHPExcel_Shared_XMLWriter $objWriter = null) + { + $objWriter->startElement('workbookPr'); + + if (PHPExcel_Shared_Date::getExcelCalendar() == PHPExcel_Shared_Date::CALENDAR_MAC_1904) { + $objWriter->writeAttribute('date1904', '1'); + } + + $objWriter->writeAttribute('codeName', 'ThisWorkbook'); + + $objWriter->endElement(); + } + + /** + * Write BookViews + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel $pPHPExcel + * @throws Exception + */ + private function _writeBookViews(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel $pPHPExcel = null) + { + // bookViews + $objWriter->startElement('bookViews'); + + // workbookView + $objWriter->startElement('workbookView'); + + $objWriter->writeAttribute('activeTab', $pPHPExcel->getActiveSheetIndex()); + $objWriter->writeAttribute('autoFilterDateGrouping', '1'); + $objWriter->writeAttribute('firstSheet', '0'); + $objWriter->writeAttribute('minimized', '0'); + $objWriter->writeAttribute('showHorizontalScroll', '1'); + $objWriter->writeAttribute('showSheetTabs', '1'); + $objWriter->writeAttribute('showVerticalScroll', '1'); + $objWriter->writeAttribute('tabRatio', '600'); + $objWriter->writeAttribute('visibility', 'visible'); + + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write WorkbookProtection + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel $pPHPExcel + * @throws Exception + */ + private function _writeWorkbookProtection(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel $pPHPExcel = null) + { + if ($pPHPExcel->getSecurity()->isSecurityEnabled()) { + $objWriter->startElement('workbookProtection'); + $objWriter->writeAttribute('lockRevision', ($pPHPExcel->getSecurity()->getLockRevision() ? 'true' : 'false')); + $objWriter->writeAttribute('lockStructure', ($pPHPExcel->getSecurity()->getLockStructure() ? 'true' : 'false')); + $objWriter->writeAttribute('lockWindows', ($pPHPExcel->getSecurity()->getLockWindows() ? 'true' : 'false')); + + if ($pPHPExcel->getSecurity()->getRevisionsPassword() != '') { + $objWriter->writeAttribute('revisionsPassword', $pPHPExcel->getSecurity()->getRevisionsPassword()); + } + + if ($pPHPExcel->getSecurity()->getWorkbookPassword() != '') { + $objWriter->writeAttribute('workbookPassword', $pPHPExcel->getSecurity()->getWorkbookPassword()); + } + + $objWriter->endElement(); + } + } + + /** + * Write calcPr + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param boolean $recalcRequired Indicate whether formulas should be recalculated before writing + * @throws Exception + */ + private function _writeCalcPr(PHPExcel_Shared_XMLWriter $objWriter = null, $recalcRequired = TRUE) + { + $objWriter->startElement('calcPr'); + + $objWriter->writeAttribute('calcId', '124519'); + $objWriter->writeAttribute('calcMode', 'auto'); + // fullCalcOnLoad isn't needed if we've recalculating for the save + $objWriter->writeAttribute('fullCalcOnLoad', ($recalcRequired) ? '0' : '1'); + + $objWriter->endElement(); + } + + /** + * Write sheets + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel $pPHPExcel + * @throws Exception + */ + private function _writeSheets(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel $pPHPExcel = null) + { + // Write sheets + $objWriter->startElement('sheets'); + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + // sheet + $this->_writeSheet( + $objWriter, + $pPHPExcel->getSheet($i)->getTitle(), + ($i + 1), + ($i + 1 + 3), + $pPHPExcel->getSheet($i)->getSheetState() + ); + } + + $objWriter->endElement(); + } + + /** + * Write sheet + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param string $pSheetname Sheet name + * @param int $pSheetId Sheet id + * @param int $pRelId Relationship ID + * @param string $sheetState Sheet state (visible, hidden, veryHidden) + * @throws Exception + */ + private function _writeSheet(PHPExcel_Shared_XMLWriter $objWriter = null, $pSheetname = '', $pSheetId = 1, $pRelId = 1, $sheetState = 'visible') + { + if ($pSheetname != '') { + // Write sheet + $objWriter->startElement('sheet'); + $objWriter->writeAttribute('name', $pSheetname); + $objWriter->writeAttribute('sheetId', $pSheetId); + if ($sheetState != 'visible' && $sheetState != '') { + $objWriter->writeAttribute('state', $sheetState); + } + $objWriter->writeAttribute('r:id', 'rId' . $pRelId); + $objWriter->endElement(); + } else { + throw new Exception("Invalid parameters passed."); + } + } + + /** + * Write Defined Names + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel $pPHPExcel + * @throws Exception + */ + private function _writeDefinedNames(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel $pPHPExcel = null) + { + // Write defined names + $objWriter->startElement('definedNames'); + + // Named ranges + if (count($pPHPExcel->getNamedRanges()) > 0) { + // Named ranges + $this->_writeNamedRanges($objWriter, $pPHPExcel); + } + + // Other defined names + $sheetCount = $pPHPExcel->getSheetCount(); + for ($i = 0; $i < $sheetCount; ++$i) { + // definedName for autoFilter + $this->_writeDefinedNameForAutofilter($objWriter, $pPHPExcel->getSheet($i), $i); + + // definedName for Print_Titles + $this->_writeDefinedNameForPrintTitles($objWriter, $pPHPExcel->getSheet($i), $i); + + // definedName for Print_Area + $this->_writeDefinedNameForPrintArea($objWriter, $pPHPExcel->getSheet($i), $i); + } + + $objWriter->endElement(); + } + + /** + * Write named ranges + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel $pPHPExcel + * @throws Exception + */ + private function _writeNamedRanges(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel $pPHPExcel) + { + // Loop named ranges + $namedRanges = $pPHPExcel->getNamedRanges(); + foreach ($namedRanges as $namedRange) { + $this->_writeDefinedNameForNamedRange($objWriter, $namedRange); + } + } + + /** + * Write Defined Name for named range + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_NamedRange $pNamedRange + * @throws Exception + */ + private function _writeDefinedNameForNamedRange(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_NamedRange $pNamedRange) + { + // definedName for named range + $objWriter->startElement('definedName'); + $objWriter->writeAttribute('name', $pNamedRange->getName()); + if ($pNamedRange->getLocalOnly()) { + $objWriter->writeAttribute('localSheetId', $pNamedRange->getScope()->getParent()->getIndex($pNamedRange->getScope())); + } + + // Create absolute coordinate and write as raw text + $range = PHPExcel_Cell::splitRange($pNamedRange->getRange()); + for ($i = 0; $i < count($range); $i++) { + $range[$i][0] = '\'' . str_replace("'", "''", $pNamedRange->getWorksheet()->getTitle()) . '\'!' . PHPExcel_Cell::absoluteReference($range[$i][0]); + if (isset($range[$i][1])) { + $range[$i][1] = PHPExcel_Cell::absoluteReference($range[$i][1]); + } + } + $range = PHPExcel_Cell::buildRange($range); + + $objWriter->writeRawData($range); + + $objWriter->endElement(); + } + + /** + * Write Defined Name for autoFilter + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet + * @param int $pSheetId + * @throws Exception + */ + private function _writeDefinedNameForAutofilter(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $pSheetId = 0) + { + // definedName for autoFilter + $autoFilterRange = $pSheet->getAutoFilter()->getRange(); + if (!empty($autoFilterRange)) { + $objWriter->startElement('definedName'); + $objWriter->writeAttribute('name', '_xlnm._FilterDatabase'); + $objWriter->writeAttribute('localSheetId', $pSheetId); + $objWriter->writeAttribute('hidden', '1'); + + // Create absolute coordinate and write as raw text + $range = PHPExcel_Cell::splitRange($autoFilterRange); + $range = $range[0]; + // Strip any worksheet ref so we can make the cell ref absolute + if (strpos($range[0],'!') !== false) { + list($ws,$range[0]) = explode('!',$range[0]); + } + + $range[0] = PHPExcel_Cell::absoluteCoordinate($range[0]); + $range[1] = PHPExcel_Cell::absoluteCoordinate($range[1]); + $range = implode(':', $range); + + $objWriter->writeRawData('\'' . str_replace("'", "''", $pSheet->getTitle()) . '\'!' . $range); + + $objWriter->endElement(); + } + } + + /** + * Write Defined Name for PrintTitles + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet + * @param int $pSheetId + * @throws Exception + */ + private function _writeDefinedNameForPrintTitles(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $pSheetId = 0) + { + // definedName for PrintTitles + if ($pSheet->getPageSetup()->isColumnsToRepeatAtLeftSet() || $pSheet->getPageSetup()->isRowsToRepeatAtTopSet()) { + $objWriter->startElement('definedName'); + $objWriter->writeAttribute('name', '_xlnm.Print_Titles'); + $objWriter->writeAttribute('localSheetId', $pSheetId); + + // Setting string + $settingString = ''; + + // Columns to repeat + if ($pSheet->getPageSetup()->isColumnsToRepeatAtLeftSet()) { + $repeat = $pSheet->getPageSetup()->getColumnsToRepeatAtLeft(); + + $settingString .= '\'' . str_replace("'", "''", $pSheet->getTitle()) . '\'!$' . $repeat[0] . ':$' . $repeat[1]; + } + + // Rows to repeat + if ($pSheet->getPageSetup()->isRowsToRepeatAtTopSet()) { + if ($pSheet->getPageSetup()->isColumnsToRepeatAtLeftSet()) { + $settingString .= ','; + } + + $repeat = $pSheet->getPageSetup()->getRowsToRepeatAtTop(); + + $settingString .= '\'' . str_replace("'", "''", $pSheet->getTitle()) . '\'!$' . $repeat[0] . ':$' . $repeat[1]; + } + + $objWriter->writeRawData($settingString); + + $objWriter->endElement(); + } + } + + /** + * Write Defined Name for PrintTitles + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet + * @param int $pSheetId + * @throws Exception + */ + private function _writeDefinedNameForPrintArea(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $pSheetId = 0) + { + // definedName for PrintArea + if ($pSheet->getPageSetup()->isPrintAreaSet()) { + $objWriter->startElement('definedName'); + $objWriter->writeAttribute('name', '_xlnm.Print_Area'); + $objWriter->writeAttribute('localSheetId', $pSheetId); + + // Setting string + $settingString = ''; + + // Print area + $printArea = PHPExcel_Cell::splitRange($pSheet->getPageSetup()->getPrintArea()); + + $chunks = array(); + foreach ($printArea as $printAreaRect) { + $printAreaRect[0] = PHPExcel_Cell::absoluteReference($printAreaRect[0]); + $printAreaRect[1] = PHPExcel_Cell::absoluteReference($printAreaRect[1]); + $chunks[] = '\'' . str_replace("'", "''", $pSheet->getTitle()) . '\'!' . implode(':', $printAreaRect); + } + + $objWriter->writeRawData(implode(',', $chunks)); + + $objWriter->endElement(); + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Worksheet.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Worksheet.php new file mode 100644 index 0000000..f720af3 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/Worksheet.php @@ -0,0 +1,1215 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_Worksheet + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel2007_Worksheet extends PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Write worksheet to XML format + * + * @param PHPExcel_Worksheet $pSheet + * @param string[] $pStringTable + * @param boolean $includeCharts Flag indicating if we should write charts + * @return string XML Output + * @throws Exception + */ + public function writeWorksheet($pSheet = null, $pStringTable = null, $includeCharts = FALSE) + { + if (!is_null($pSheet)) { + // Create XML writer + $objWriter = null; + if ($this->getParentWriter()->getUseDiskCaching()) { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_DISK, $this->getParentWriter()->getDiskCachingDirectory()); + } else { + $objWriter = new PHPExcel_Shared_XMLWriter(PHPExcel_Shared_XMLWriter::STORAGE_MEMORY); + } + + // XML header + $objWriter->startDocument('1.0','UTF-8','yes'); + + // Worksheet + $objWriter->startElement('worksheet'); + $objWriter->writeAttribute('xml:space', 'preserve'); + $objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/spreadsheetml/2006/main'); + $objWriter->writeAttribute('xmlns:r', 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'); + + // sheetPr + $this->_writeSheetPr($objWriter, $pSheet); + + // Dimension + $this->_writeDimension($objWriter, $pSheet); + + // sheetViews + $this->_writeSheetViews($objWriter, $pSheet); + + // sheetFormatPr + $this->_writeSheetFormatPr($objWriter, $pSheet); + + // cols + $this->_writeCols($objWriter, $pSheet); + + // sheetData + $this->_writeSheetData($objWriter, $pSheet, $pStringTable); + + // sheetProtection + $this->_writeSheetProtection($objWriter, $pSheet); + + // protectedRanges + $this->_writeProtectedRanges($objWriter, $pSheet); + + // autoFilter + $this->_writeAutoFilter($objWriter, $pSheet); + + // mergeCells + $this->_writeMergeCells($objWriter, $pSheet); + + // conditionalFormatting + $this->_writeConditionalFormatting($objWriter, $pSheet); + + // dataValidations + $this->_writeDataValidations($objWriter, $pSheet); + + // hyperlinks + $this->_writeHyperlinks($objWriter, $pSheet); + + // Print options + $this->_writePrintOptions($objWriter, $pSheet); + + // Page margins + $this->_writePageMargins($objWriter, $pSheet); + + // Page setup + $this->_writePageSetup($objWriter, $pSheet); + + // Header / footer + $this->_writeHeaderFooter($objWriter, $pSheet); + + // Breaks + $this->_writeBreaks($objWriter, $pSheet); + + // Drawings and/or Charts + $this->_writeDrawings($objWriter, $pSheet, $includeCharts); + + // LegacyDrawing + $this->_writeLegacyDrawing($objWriter, $pSheet); + + // LegacyDrawingHF + $this->_writeLegacyDrawingHF($objWriter, $pSheet); + + $objWriter->endElement(); + + // Return + return $objWriter->getData(); + } else { + throw new Exception("Invalid PHPExcel_Worksheet object passed."); + } + } + + /** + * Write SheetPr + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeSheetPr(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // sheetPr + $objWriter->startElement('sheetPr'); + //$objWriter->writeAttribute('codeName', $pSheet->getTitle()); + $autoFilterRange = $pSheet->getAutoFilter()->getRange(); + if (!empty($autoFilterRange)) { + $objWriter->writeAttribute('filterMode', 1); + $pSheet->getAutoFilter()->showHideRows(); + } + + // tabColor + if ($pSheet->isTabColorSet()) { + $objWriter->startElement('tabColor'); + $objWriter->writeAttribute('rgb', $pSheet->getTabColor()->getARGB()); + $objWriter->endElement(); + } + + // outlinePr + $objWriter->startElement('outlinePr'); + $objWriter->writeAttribute('summaryBelow', ($pSheet->getShowSummaryBelow() ? '1' : '0')); + $objWriter->writeAttribute('summaryRight', ($pSheet->getShowSummaryRight() ? '1' : '0')); + $objWriter->endElement(); + + // pageSetUpPr + if ($pSheet->getPageSetup()->getFitToPage()) { + $objWriter->startElement('pageSetUpPr'); + $objWriter->writeAttribute('fitToPage', '1'); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + /** + * Write Dimension + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeDimension(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // dimension + $objWriter->startElement('dimension'); + $objWriter->writeAttribute('ref', $pSheet->calculateWorksheetDimension()); + $objWriter->endElement(); + } + + /** + * Write SheetViews + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeSheetViews(PHPExcel_Shared_XMLWriter $objWriter = NULL, PHPExcel_Worksheet $pSheet = NULL) + { + // sheetViews + $objWriter->startElement('sheetViews'); + + // Sheet selected? + $sheetSelected = false; + if ($this->getParentWriter()->getPHPExcel()->getIndex($pSheet) == $this->getParentWriter()->getPHPExcel()->getActiveSheetIndex()) + $sheetSelected = true; + + + // sheetView + $objWriter->startElement('sheetView'); + $objWriter->writeAttribute('tabSelected', $sheetSelected ? '1' : '0'); + $objWriter->writeAttribute('workbookViewId', '0'); + + // Zoom scales + if ($pSheet->getSheetView()->getZoomScale() != 100) { + $objWriter->writeAttribute('zoomScale', $pSheet->getSheetView()->getZoomScale()); + } + if ($pSheet->getSheetView()->getZoomScaleNormal() != 100) { + $objWriter->writeAttribute('zoomScaleNormal', $pSheet->getSheetView()->getZoomScaleNormal()); + } + + // View Layout Type + if ($pSheet->getSheetView()->getView() !== PHPExcel_Worksheet_SheetView::SHEETVIEW_NORMAL) { + $objWriter->writeAttribute('view', $pSheet->getSheetView()->getView()); + } + + // Gridlines + if ($pSheet->getShowGridlines()) { + $objWriter->writeAttribute('showGridLines', 'true'); + } else { + $objWriter->writeAttribute('showGridLines', 'false'); + } + + // Row and column headers + if ($pSheet->getShowRowColHeaders()) { + $objWriter->writeAttribute('showRowColHeaders', '1'); + } else { + $objWriter->writeAttribute('showRowColHeaders', '0'); + } + + // Right-to-left + if ($pSheet->getRightToLeft()) { + $objWriter->writeAttribute('rightToLeft', 'true'); + } + + $activeCell = $pSheet->getActiveCell(); + + // Pane + $pane = ''; + $topLeftCell = $pSheet->getFreezePane(); + if (($topLeftCell != '') && ($topLeftCell != 'A1')) { + $activeCell = $topLeftCell; + // Calculate freeze coordinates + $xSplit = $ySplit = 0; + + list($xSplit, $ySplit) = PHPExcel_Cell::coordinateFromString($topLeftCell); + $xSplit = PHPExcel_Cell::columnIndexFromString($xSplit); + + // pane + $pane = 'topRight'; + $objWriter->startElement('pane'); + if ($xSplit > 1) + $objWriter->writeAttribute('xSplit', $xSplit - 1); + if ($ySplit > 1) { + $objWriter->writeAttribute('ySplit', $ySplit - 1); + $pane = ($xSplit > 1) ? 'bottomRight' : 'bottomLeft'; + } + $objWriter->writeAttribute('topLeftCell', $topLeftCell); + $objWriter->writeAttribute('activePane', $pane); + $objWriter->writeAttribute('state', 'frozen'); + $objWriter->endElement(); + + if (($xSplit > 1) && ($ySplit > 1)) { + // Write additional selections if more than two panes (ie both an X and a Y split) + $objWriter->startElement('selection'); $objWriter->writeAttribute('pane', 'topRight'); $objWriter->endElement(); + $objWriter->startElement('selection'); $objWriter->writeAttribute('pane', 'bottomLeft'); $objWriter->endElement(); + } + } + + // Selection +// if ($pane != '') { + // Only need to write selection element if we have a split pane + // We cheat a little by over-riding the active cell selection, setting it to the split cell + $objWriter->startElement('selection'); + if ($pane != '') { + $objWriter->writeAttribute('pane', $pane); + } + $objWriter->writeAttribute('activeCell', $activeCell); + $objWriter->writeAttribute('sqref', $activeCell); + $objWriter->endElement(); +// } + + $objWriter->endElement(); + + $objWriter->endElement(); + } + + /** + * Write SheetFormatPr + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeSheetFormatPr(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // sheetFormatPr + $objWriter->startElement('sheetFormatPr'); + + // Default row height + if ($pSheet->getDefaultRowDimension()->getRowHeight() >= 0) { + $objWriter->writeAttribute('customHeight', 'true'); + $objWriter->writeAttribute('defaultRowHeight', PHPExcel_Shared_String::FormatNumber($pSheet->getDefaultRowDimension()->getRowHeight())); + } else { + $objWriter->writeAttribute('defaultRowHeight', '14.4'); + } + + // Set Zero Height row + if ((string)$pSheet->getDefaultRowDimension()->getzeroHeight() == '1' || + strtolower((string)$pSheet->getDefaultRowDimension()->getzeroHeight()) == 'true' ) { + $objWriter->writeAttribute('zeroHeight', '1'); + } + + // Default column width + if ($pSheet->getDefaultColumnDimension()->getWidth() >= 0) { + $objWriter->writeAttribute('defaultColWidth', PHPExcel_Shared_String::FormatNumber($pSheet->getDefaultColumnDimension()->getWidth())); + } + + // Outline level - row + $outlineLevelRow = 0; + foreach ($pSheet->getRowDimensions() as $dimension) { + if ($dimension->getOutlineLevel() > $outlineLevelRow) { + $outlineLevelRow = $dimension->getOutlineLevel(); + } + } + $objWriter->writeAttribute('outlineLevelRow', (int)$outlineLevelRow); + + // Outline level - column + $outlineLevelCol = 0; + foreach ($pSheet->getColumnDimensions() as $dimension) { + if ($dimension->getOutlineLevel() > $outlineLevelCol) { + $outlineLevelCol = $dimension->getOutlineLevel(); + } + } + $objWriter->writeAttribute('outlineLevelCol', (int)$outlineLevelCol); + + $objWriter->endElement(); + } + + /** + * Write Cols + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeCols(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // cols + if (count($pSheet->getColumnDimensions()) > 0) { + $objWriter->startElement('cols'); + + $pSheet->calculateColumnWidths(); + + // Loop through column dimensions + foreach ($pSheet->getColumnDimensions() as $colDimension) { + // col + $objWriter->startElement('col'); + $objWriter->writeAttribute('min', PHPExcel_Cell::columnIndexFromString($colDimension->getColumnIndex())); + $objWriter->writeAttribute('max', PHPExcel_Cell::columnIndexFromString($colDimension->getColumnIndex())); + + if ($colDimension->getWidth() < 0) { + // No width set, apply default of 10 + $objWriter->writeAttribute('width', '9.10'); + } else { + // Width set + $objWriter->writeAttribute('width', PHPExcel_Shared_String::FormatNumber($colDimension->getWidth())); + } + + // Column visibility + if ($colDimension->getVisible() == false) { + $objWriter->writeAttribute('hidden', 'true'); + } + + // Auto size? + if ($colDimension->getAutoSize()) { + $objWriter->writeAttribute('bestFit', 'true'); + } + + // Custom width? + if ($colDimension->getWidth() != $pSheet->getDefaultColumnDimension()->getWidth()) { + $objWriter->writeAttribute('customWidth', 'true'); + } + + // Collapsed + if ($colDimension->getCollapsed() == true) { + $objWriter->writeAttribute('collapsed', 'true'); + } + + // Outline level + if ($colDimension->getOutlineLevel() > 0) { + $objWriter->writeAttribute('outlineLevel', $colDimension->getOutlineLevel()); + } + + // Style + $objWriter->writeAttribute('style', $colDimension->getXfIndex()); + + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write SheetProtection + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeSheetProtection(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // sheetProtection + $objWriter->startElement('sheetProtection'); + + if ($pSheet->getProtection()->getPassword() != '') { + $objWriter->writeAttribute('password', $pSheet->getProtection()->getPassword()); + } + + $objWriter->writeAttribute('sheet', ($pSheet->getProtection()->getSheet() ? 'true' : 'false')); + $objWriter->writeAttribute('objects', ($pSheet->getProtection()->getObjects() ? 'true' : 'false')); + $objWriter->writeAttribute('scenarios', ($pSheet->getProtection()->getScenarios() ? 'true' : 'false')); + $objWriter->writeAttribute('formatCells', ($pSheet->getProtection()->getFormatCells() ? 'true' : 'false')); + $objWriter->writeAttribute('formatColumns', ($pSheet->getProtection()->getFormatColumns() ? 'true' : 'false')); + $objWriter->writeAttribute('formatRows', ($pSheet->getProtection()->getFormatRows() ? 'true' : 'false')); + $objWriter->writeAttribute('insertColumns', ($pSheet->getProtection()->getInsertColumns() ? 'true' : 'false')); + $objWriter->writeAttribute('insertRows', ($pSheet->getProtection()->getInsertRows() ? 'true' : 'false')); + $objWriter->writeAttribute('insertHyperlinks', ($pSheet->getProtection()->getInsertHyperlinks() ? 'true' : 'false')); + $objWriter->writeAttribute('deleteColumns', ($pSheet->getProtection()->getDeleteColumns() ? 'true' : 'false')); + $objWriter->writeAttribute('deleteRows', ($pSheet->getProtection()->getDeleteRows() ? 'true' : 'false')); + $objWriter->writeAttribute('selectLockedCells', ($pSheet->getProtection()->getSelectLockedCells() ? 'true' : 'false')); + $objWriter->writeAttribute('sort', ($pSheet->getProtection()->getSort() ? 'true' : 'false')); + $objWriter->writeAttribute('autoFilter', ($pSheet->getProtection()->getAutoFilter() ? 'true' : 'false')); + $objWriter->writeAttribute('pivotTables', ($pSheet->getProtection()->getPivotTables() ? 'true' : 'false')); + $objWriter->writeAttribute('selectUnlockedCells', ($pSheet->getProtection()->getSelectUnlockedCells() ? 'true' : 'false')); + $objWriter->endElement(); + } + + /** + * Write ConditionalFormatting + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeConditionalFormatting(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // Conditional id + $id = 1; + + // Loop through styles in the current worksheet + foreach ($pSheet->getConditionalStylesCollection() as $cellCoordinate => $conditionalStyles) { + foreach ($conditionalStyles as $conditional) { + // WHY was this again? + // if ($this->getParentWriter()->getStylesConditionalHashTable()->getIndexForHashCode( $conditional->getHashCode() ) == '') { + // continue; + // } + if ($conditional->getConditionType() != PHPExcel_Style_Conditional::CONDITION_NONE) { + // conditionalFormatting + $objWriter->startElement('conditionalFormatting'); + $objWriter->writeAttribute('sqref', $cellCoordinate); + + // cfRule + $objWriter->startElement('cfRule'); + $objWriter->writeAttribute('type', $conditional->getConditionType()); + $objWriter->writeAttribute('dxfId', $this->getParentWriter()->getStylesConditionalHashTable()->getIndexForHashCode( $conditional->getHashCode() )); + $objWriter->writeAttribute('priority', $id++); + + if (($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CELLIS + || + $conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT) + && $conditional->getOperatorType() != PHPExcel_Style_Conditional::OPERATOR_NONE) { + $objWriter->writeAttribute('operator', $conditional->getOperatorType()); + } + + if ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + && !is_null($conditional->getText())) { + $objWriter->writeAttribute('text', $conditional->getText()); + } + + if ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + && $conditional->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_CONTAINSTEXT + && !is_null($conditional->getText())) { + $objWriter->writeElement('formula', 'NOT(ISERROR(SEARCH("' . $conditional->getText() . '",' . $cellCoordinate . ')))'); + } else if ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + && $conditional->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_BEGINSWITH + && !is_null($conditional->getText())) { + $objWriter->writeElement('formula', 'LEFT(' . $cellCoordinate . ',' . strlen($conditional->getText()) . ')="' . $conditional->getText() . '"'); + } else if ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + && $conditional->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_ENDSWITH + && !is_null($conditional->getText())) { + $objWriter->writeElement('formula', 'RIGHT(' . $cellCoordinate . ',' . strlen($conditional->getText()) . ')="' . $conditional->getText() . '"'); + } else if ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + && $conditional->getOperatorType() == PHPExcel_Style_Conditional::OPERATOR_NOTCONTAINS + && !is_null($conditional->getText())) { + $objWriter->writeElement('formula', 'ISERROR(SEARCH("' . $conditional->getText() . '",' . $cellCoordinate . '))'); + } else if ($conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CELLIS + || $conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT + || $conditional->getConditionType() == PHPExcel_Style_Conditional::CONDITION_EXPRESSION) { + foreach ($conditional->getConditions() as $formula) { + // Formula + $objWriter->writeElement('formula', $formula); + } + } + + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + } + } + + /** + * Write DataValidations + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeDataValidations(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // Datavalidation collection + $dataValidationCollection = $pSheet->getDataValidationCollection(); + + // Write data validations? + if (!empty($dataValidationCollection)) { + $objWriter->startElement('dataValidations'); + $objWriter->writeAttribute('count', count($dataValidationCollection)); + + foreach ($dataValidationCollection as $coordinate => $dv) { + $objWriter->startElement('dataValidation'); + + if ($dv->getType() != '') { + $objWriter->writeAttribute('type', $dv->getType()); + } + + if ($dv->getErrorStyle() != '') { + $objWriter->writeAttribute('errorStyle', $dv->getErrorStyle()); + } + + if ($dv->getOperator() != '') { + $objWriter->writeAttribute('operator', $dv->getOperator()); + } + + $objWriter->writeAttribute('allowBlank', ($dv->getAllowBlank() ? '1' : '0')); + $objWriter->writeAttribute('showDropDown', (!$dv->getShowDropDown() ? '1' : '0')); + $objWriter->writeAttribute('showInputMessage', ($dv->getShowInputMessage() ? '1' : '0')); + $objWriter->writeAttribute('showErrorMessage', ($dv->getShowErrorMessage() ? '1' : '0')); + + if ($dv->getErrorTitle() !== '') { + $objWriter->writeAttribute('errorTitle', $dv->getErrorTitle()); + } + if ($dv->getError() !== '') { + $objWriter->writeAttribute('error', $dv->getError()); + } + if ($dv->getPromptTitle() !== '') { + $objWriter->writeAttribute('promptTitle', $dv->getPromptTitle()); + } + if ($dv->getPrompt() !== '') { + $objWriter->writeAttribute('prompt', $dv->getPrompt()); + } + + $objWriter->writeAttribute('sqref', $coordinate); + + if ($dv->getFormula1() !== '') { + $objWriter->writeElement('formula1', $dv->getFormula1()); + } + if ($dv->getFormula2() !== '') { + $objWriter->writeElement('formula2', $dv->getFormula2()); + } + + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write Hyperlinks + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeHyperlinks(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // Hyperlink collection + $hyperlinkCollection = $pSheet->getHyperlinkCollection(); + + // Relation ID + $relationId = 1; + + // Write hyperlinks? + if (!empty($hyperlinkCollection)) { + $objWriter->startElement('hyperlinks'); + + foreach ($hyperlinkCollection as $coordinate => $hyperlink) { + $objWriter->startElement('hyperlink'); + + $objWriter->writeAttribute('ref', $coordinate); + if (!$hyperlink->isInternal()) { + $objWriter->writeAttribute('r:id', 'rId_hyperlink_' . $relationId); + ++$relationId; + } else { + $objWriter->writeAttribute('location', str_replace('sheet://', '', $hyperlink->getUrl())); + } + + if ($hyperlink->getTooltip() != '') { + $objWriter->writeAttribute('tooltip', $hyperlink->getTooltip()); + } + + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write ProtectedRanges + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeProtectedRanges(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + if (count($pSheet->getProtectedCells()) > 0) { + // protectedRanges + $objWriter->startElement('protectedRanges'); + + // Loop protectedRanges + foreach ($pSheet->getProtectedCells() as $protectedCell => $passwordHash) { + // protectedRange + $objWriter->startElement('protectedRange'); + $objWriter->writeAttribute('name', 'p' . md5($protectedCell)); + $objWriter->writeAttribute('sqref', $protectedCell); + $objWriter->writeAttribute('password', $passwordHash); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write MergeCells + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeMergeCells(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + if (count($pSheet->getMergeCells()) > 0) { + // mergeCells + $objWriter->startElement('mergeCells'); + + // Loop mergeCells + foreach ($pSheet->getMergeCells() as $mergeCell) { + // mergeCell + $objWriter->startElement('mergeCell'); + $objWriter->writeAttribute('ref', $mergeCell); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write PrintOptions + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writePrintOptions(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // printOptions + $objWriter->startElement('printOptions'); + + $objWriter->writeAttribute('gridLines', ($pSheet->getPrintGridlines() ? 'true': 'false')); + $objWriter->writeAttribute('gridLinesSet', 'true'); + + if ($pSheet->getPageSetup()->getHorizontalCentered()) { + $objWriter->writeAttribute('horizontalCentered', 'true'); + } + + if ($pSheet->getPageSetup()->getVerticalCentered()) { + $objWriter->writeAttribute('verticalCentered', 'true'); + } + + $objWriter->endElement(); + } + + /** + * Write PageMargins + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writePageMargins(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // pageMargins + $objWriter->startElement('pageMargins'); + $objWriter->writeAttribute('left', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getLeft())); + $objWriter->writeAttribute('right', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getRight())); + $objWriter->writeAttribute('top', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getTop())); + $objWriter->writeAttribute('bottom', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getBottom())); + $objWriter->writeAttribute('header', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getHeader())); + $objWriter->writeAttribute('footer', PHPExcel_Shared_String::FormatNumber($pSheet->getPageMargins()->getFooter())); + $objWriter->endElement(); + } + + /** + * Write AutoFilter + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeAutoFilter(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + $autoFilterRange = $pSheet->getAutoFilter()->getRange(); + if (!empty($autoFilterRange)) { + // autoFilter + $objWriter->startElement('autoFilter'); + + // Strip any worksheet reference from the filter coordinates + $range = PHPExcel_Cell::splitRange($autoFilterRange); + $range = $range[0]; + // Strip any worksheet ref + if (strpos($range[0],'!') !== false) { + list($ws,$range[0]) = explode('!',$range[0]); + } + $range = implode(':', $range); + + $objWriter->writeAttribute('ref', str_replace('$','',$range)); + + $columns = $pSheet->getAutoFilter()->getColumns(); + if (count($columns > 0)) { + foreach($columns as $columnID => $column) { + $rules = $column->getRules(); + if (count($rules > 0)) { + $objWriter->startElement('filterColumn'); + $objWriter->writeAttribute('colId', $pSheet->getAutoFilter()->getColumnOffset($columnID)); + + $objWriter->startElement( $column->getFilterType()); + if ($column->getJoin() == PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND) { + $objWriter->writeAttribute('and', 1); + } + + foreach ($rules as $rule) { + if (($column->getFilterType() === PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER) && + ($rule->getOperator() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL) && + ($rule->getValue() === '')) { + // Filter rule for Blanks + $objWriter->writeAttribute('blank', 1); + } elseif($rule->getRuleType() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMICFILTER) { + // Dynamic Filter Rule + $objWriter->writeAttribute('type', $rule->getGrouping()); + $val = $column->getAttribute('val'); + if ($val !== NULL) { + $objWriter->writeAttribute('val', $val); + } + $maxVal = $column->getAttribute('maxVal'); + if ($maxVal !== NULL) { + $objWriter->writeAttribute('maxVal', $maxVal); + } + } elseif($rule->getRuleType() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_TOPTENFILTER) { + // Top 10 Filter Rule + $objWriter->writeAttribute('val', $rule->getValue()); + $objWriter->writeAttribute('percent', (($rule->getOperator() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT) ? '1' : '0')); + $objWriter->writeAttribute('top', (($rule->getGrouping() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP) ? '1': '0')); + } else { + // Filter, DateGroupItem or CustomFilter + $objWriter->startElement($rule->getRuleType()); + + if ($rule->getOperator() !== PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL) { + $objWriter->writeAttribute('operator', $rule->getOperator()); + } + if ($rule->getRuleType() === PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP) { + // Date Group filters + foreach($rule->getValue() as $key => $value) { + if ($value > '') $objWriter->writeAttribute($key, $value); + } + $objWriter->writeAttribute('dateTimeGrouping', $rule->getGrouping()); + } else { + $objWriter->writeAttribute('val', $rule->getValue()); + } + + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + + $objWriter->endElement(); + } + } + } + + $objWriter->endElement(); + } + } + + /** + * Write PageSetup + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writePageSetup(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // pageSetup + $objWriter->startElement('pageSetup'); + $objWriter->writeAttribute('paperSize', $pSheet->getPageSetup()->getPaperSize()); + $objWriter->writeAttribute('orientation', $pSheet->getPageSetup()->getOrientation()); + + if (!is_null($pSheet->getPageSetup()->getScale())) { + $objWriter->writeAttribute('scale', $pSheet->getPageSetup()->getScale()); + } + if (!is_null($pSheet->getPageSetup()->getFitToHeight())) { + $objWriter->writeAttribute('fitToHeight', $pSheet->getPageSetup()->getFitToHeight()); + } else { + $objWriter->writeAttribute('fitToHeight', '0'); + } + if (!is_null($pSheet->getPageSetup()->getFitToWidth())) { + $objWriter->writeAttribute('fitToWidth', $pSheet->getPageSetup()->getFitToWidth()); + } else { + $objWriter->writeAttribute('fitToWidth', '0'); + } + if (!is_null($pSheet->getPageSetup()->getFirstPageNumber())) { + $objWriter->writeAttribute('firstPageNumber', $pSheet->getPageSetup()->getFirstPageNumber()); + $objWriter->writeAttribute('useFirstPageNumber', '1'); + } + + $objWriter->endElement(); + } + + /** + * Write Header / Footer + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeHeaderFooter(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // headerFooter + $objWriter->startElement('headerFooter'); + $objWriter->writeAttribute('differentOddEven', ($pSheet->getHeaderFooter()->getDifferentOddEven() ? 'true' : 'false')); + $objWriter->writeAttribute('differentFirst', ($pSheet->getHeaderFooter()->getDifferentFirst() ? 'true' : 'false')); + $objWriter->writeAttribute('scaleWithDoc', ($pSheet->getHeaderFooter()->getScaleWithDocument() ? 'true' : 'false')); + $objWriter->writeAttribute('alignWithMargins', ($pSheet->getHeaderFooter()->getAlignWithMargins() ? 'true' : 'false')); + + $objWriter->writeElement('oddHeader', $pSheet->getHeaderFooter()->getOddHeader()); + $objWriter->writeElement('oddFooter', $pSheet->getHeaderFooter()->getOddFooter()); + $objWriter->writeElement('evenHeader', $pSheet->getHeaderFooter()->getEvenHeader()); + $objWriter->writeElement('evenFooter', $pSheet->getHeaderFooter()->getEvenFooter()); + $objWriter->writeElement('firstHeader', $pSheet->getHeaderFooter()->getFirstHeader()); + $objWriter->writeElement('firstFooter', $pSheet->getHeaderFooter()->getFirstFooter()); + $objWriter->endElement(); + } + + /** + * Write Breaks + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeBreaks(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // Get row and column breaks + $aRowBreaks = array(); + $aColumnBreaks = array(); + foreach ($pSheet->getBreaks() as $cell => $breakType) { + if ($breakType == PHPExcel_Worksheet::BREAK_ROW) { + $aRowBreaks[] = $cell; + } else if ($breakType == PHPExcel_Worksheet::BREAK_COLUMN) { + $aColumnBreaks[] = $cell; + } + } + + // rowBreaks + if (!empty($aRowBreaks)) { + $objWriter->startElement('rowBreaks'); + $objWriter->writeAttribute('count', count($aRowBreaks)); + $objWriter->writeAttribute('manualBreakCount', count($aRowBreaks)); + + foreach ($aRowBreaks as $cell) { + $coords = PHPExcel_Cell::coordinateFromString($cell); + + $objWriter->startElement('brk'); + $objWriter->writeAttribute('id', $coords[1]); + $objWriter->writeAttribute('man', '1'); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + + // Second, write column breaks + if (!empty($aColumnBreaks)) { + $objWriter->startElement('colBreaks'); + $objWriter->writeAttribute('count', count($aColumnBreaks)); + $objWriter->writeAttribute('manualBreakCount', count($aColumnBreaks)); + + foreach ($aColumnBreaks as $cell) { + $coords = PHPExcel_Cell::coordinateFromString($cell); + + $objWriter->startElement('brk'); + $objWriter->writeAttribute('id', PHPExcel_Cell::columnIndexFromString($coords[0]) - 1); + $objWriter->writeAttribute('man', '1'); + $objWriter->endElement(); + } + + $objWriter->endElement(); + } + } + + /** + * Write SheetData + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @param string[] $pStringTable String table + * @throws Exception + */ + private function _writeSheetData(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $pStringTable = null) + { + if (is_array($pStringTable)) { + // Flipped stringtable, for faster index searching + $aFlippedStringTable = $this->getParentWriter()->getWriterPart('stringtable')->flipStringTable($pStringTable); + + // sheetData + $objWriter->startElement('sheetData'); + + // Get column count + $colCount = PHPExcel_Cell::columnIndexFromString($pSheet->getHighestColumn()); + + // Highest row number + $highestRow = $pSheet->getHighestRow(); + + // Loop through cells + $cellsByRow = array(); + foreach ($pSheet->getCellCollection() as $cellID) { + $cellAddress = PHPExcel_Cell::coordinateFromString($cellID); + $cellsByRow[$cellAddress[1]][] = $cellID; + } + + $currentRow = 0; + while($currentRow++ < $highestRow) { + // Get row dimension + $rowDimension = $pSheet->getRowDimension($currentRow); + + // Write current row? + $writeCurrentRow = isset($cellsByRow[$currentRow]) || + $rowDimension->getRowHeight() >= 0 || + $rowDimension->getVisible() == false || + $rowDimension->getCollapsed() == true || + $rowDimension->getOutlineLevel() > 0 || + $rowDimension->getXfIndex() !== null; + + if ($writeCurrentRow) { + // Start a new row + $objWriter->startElement('row'); + $objWriter->writeAttribute('r', $currentRow); + $objWriter->writeAttribute('spans', '1:' . $colCount); + + // Row dimensions + if ($rowDimension->getRowHeight() >= 0) { + $objWriter->writeAttribute('customHeight', '1'); + $objWriter->writeAttribute('ht', PHPExcel_Shared_String::FormatNumber($rowDimension->getRowHeight())); + } + + // Row visibility + if ($rowDimension->getVisible() == false) { + $objWriter->writeAttribute('hidden', 'true'); + } + + // Collapsed + if ($rowDimension->getCollapsed() == true) { + $objWriter->writeAttribute('collapsed', 'true'); + } + + // Outline level + if ($rowDimension->getOutlineLevel() > 0) { + $objWriter->writeAttribute('outlineLevel', $rowDimension->getOutlineLevel()); + } + + // Style + if ($rowDimension->getXfIndex() !== null) { + $objWriter->writeAttribute('s', $rowDimension->getXfIndex()); + $objWriter->writeAttribute('customFormat', '1'); + } + + // Write cells + if (isset($cellsByRow[$currentRow])) { + foreach($cellsByRow[$currentRow] as $cellAddress) { + // Write cell + $this->_writeCell($objWriter, $pSheet, $cellAddress, $pStringTable, $aFlippedStringTable); + } + } + + // End row + $objWriter->endElement(); + } + } + + $objWriter->endElement(); + } else { + throw new Exception("Invalid parameters passed."); + } + } + + /** + * Write Cell + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @param PHPExcel_Cell $pCellAddress Cell Address + * @param string[] $pStringTable String table + * @param string[] $pFlippedStringTable String table (flipped), for faster index searching + * @throws Exception + */ + private function _writeCell(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $pCellAddress = null, $pStringTable = null, $pFlippedStringTable = null) + { + if (is_array($pStringTable) && is_array($pFlippedStringTable)) { + // Cell + $pCell = $pSheet->getCell($pCellAddress); + $objWriter->startElement('c'); + $objWriter->writeAttribute('r', $pCellAddress); + + // Sheet styles + if ($pCell->getXfIndex() != '') { + $objWriter->writeAttribute('s', $pCell->getXfIndex()); + } + + // If cell value is supplied, write cell value + $cellValue = $pCell->getValue(); + if (is_object($cellValue) || $cellValue !== '') { + // Map type + $mappedType = $pCell->getDataType(); + + // Write data type depending on its type + switch (strtolower($mappedType)) { + case 'inlinestr': // Inline string + case 's': // String + case 'b': // Boolean + $objWriter->writeAttribute('t', $mappedType); + break; + case 'f': // Formula + $calculatedValue = null; + if ($this->getParentWriter()->getPreCalculateFormulas()) { + $calculatedValue = $pCell->getCalculatedValue(); + } else { + $calculatedValue = $cellValue; + } + if (is_string($calculatedValue)) { + $objWriter->writeAttribute('t', 'str'); + } + break; + case 'e': // Error + $objWriter->writeAttribute('t', $mappedType); + } + + // Write data depending on its type + switch (strtolower($mappedType)) { + case 'inlinestr': // Inline string + if (! $cellValue instanceof PHPExcel_RichText) { + $objWriter->writeElement('t', PHPExcel_Shared_String::ControlCharacterPHP2OOXML( htmlspecialchars($cellValue) ) ); + } else if ($cellValue instanceof PHPExcel_RichText) { + $objWriter->startElement('is'); + $this->getParentWriter()->getWriterPart('stringtable')->writeRichText($objWriter, $cellValue); + $objWriter->endElement(); + } + + break; + case 's': // String + if (! $cellValue instanceof PHPExcel_RichText) { + if (isset($pFlippedStringTable[$cellValue])) { + $objWriter->writeElement('v', $pFlippedStringTable[$cellValue]); + } + } else if ($cellValue instanceof PHPExcel_RichText) { + $objWriter->writeElement('v', $pFlippedStringTable[$cellValue->getHashCode()]); + } + + break; + case 'f': // Formula + $attributes = $pCell->getFormulaAttributes(); + if($attributes['t'] == 'array') { + $objWriter->startElement('f'); + $objWriter->writeAttribute('t', 'array'); + $objWriter->writeAttribute('ref', $pCellAddress); + $objWriter->writeAttribute('aca', '1'); + $objWriter->writeAttribute('ca', '1'); + $objWriter->text(substr($cellValue, 1)); + $objWriter->endElement(); + } else { + $objWriter->writeElement('f', substr($cellValue, 1)); + } + if ($this->getParentWriter()->getOffice2003Compatibility() === false) { + if ($this->getParentWriter()->getPreCalculateFormulas()) { + $calculatedValue = $pCell->getCalculatedValue(); + if (!is_array($calculatedValue) && substr($calculatedValue, 0, 1) != '#') { + $objWriter->writeElement('v', PHPExcel_Shared_String::FormatNumber($calculatedValue)); + } else { + $objWriter->writeElement('v', '0'); + } + } else { + $objWriter->writeElement('v', '0'); + } + } + break; + case 'n': // Numeric + // force point as decimal separator in case current locale uses comma + $objWriter->writeElement('v', str_replace(',', '.', $cellValue)); + break; + case 'b': // Boolean + $objWriter->writeElement('v', ($cellValue ? '1' : '0')); + break; + case 'e': // Error + if (substr($cellValue, 0, 1) == '=') { + $objWriter->writeElement('f', substr($cellValue, 1)); + $objWriter->writeElement('v', substr($cellValue, 1)); + } else { + $objWriter->writeElement('v', $cellValue); + } + + break; + } + } + + $objWriter->endElement(); + } else { + throw new Exception("Invalid parameters passed."); + } + } + + /** + * Write Drawings + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @param boolean $includeCharts Flag indicating if we should include drawing details for charts + * @throws Exception + */ + private function _writeDrawings(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null, $includeCharts = FALSE) + { + $chartCount = ($includeCharts) ? $pSheet->getChartCollection()->count() : 0; + // If sheet contains drawings, add the relationships + if (($pSheet->getDrawingCollection()->count() > 0) || + ($chartCount > 0)) { + $objWriter->startElement('drawing'); + $objWriter->writeAttribute('r:id', 'rId1'); + $objWriter->endElement(); + } + } + + /** + * Write LegacyDrawing + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeLegacyDrawing(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // If sheet contains comments, add the relationships + if (count($pSheet->getComments()) > 0) { + $objWriter->startElement('legacyDrawing'); + $objWriter->writeAttribute('r:id', 'rId_comments_vml1'); + $objWriter->endElement(); + } + } + + /** + * Write LegacyDrawingHF + * + * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer + * @param PHPExcel_Worksheet $pSheet Worksheet + * @throws Exception + */ + private function _writeLegacyDrawingHF(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Worksheet $pSheet = null) + { + // If sheet contains images, add the relationships + if (count($pSheet->getHeaderFooter()->getImages()) > 0) { + $objWriter->startElement('legacyDrawingHF'); + $objWriter->writeAttribute('r:id', 'rId_headerfooter_vml1'); + $objWriter->endElement(); + } + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/WriterPart.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/WriterPart.php new file mode 100644 index 0000000..3f50691 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/WriterPart.php @@ -0,0 +1,81 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel2007_WriterPart + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel2007 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +abstract class PHPExcel_Writer_Excel2007_WriterPart +{ + /** + * Parent IWriter object + * + * @var PHPExcel_Writer_IWriter + */ + private $_parentWriter; + + /** + * Set parent IWriter object + * + * @param PHPExcel_Writer_IWriter $pWriter + * @throws Exception + */ + public function setParentWriter(PHPExcel_Writer_IWriter $pWriter = null) { + $this->_parentWriter = $pWriter; + } + + /** + * Get parent IWriter object + * + * @return PHPExcel_Writer_IWriter + * @throws Exception + */ + public function getParentWriter() { + if (!is_null($this->_parentWriter)) { + return $this->_parentWriter; + } else { + throw new Exception("No parent PHPExcel_Writer_IWriter assigned."); + } + } + + /** + * Set parent IWriter object + * + * @param PHPExcel_Writer_IWriter $pWriter + * @throws Exception + */ + public function __construct(PHPExcel_Writer_IWriter $pWriter = null) { + if (!is_null($pWriter)) { + $this->_parentWriter = $pWriter; + } + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/_notes/dwsync.xml new file mode 100644 index 0000000..312b558 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel2007/_notes/dwsync.xml @@ -0,0 +1,87 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Chart.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Comments.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="ContentTypes.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="DocProps.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Drawing.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Rels.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="StringTable.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Style.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Theme.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Workbook.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Worksheet.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="WriterPart.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Workbook.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="StringTable.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="ContentTypes.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="Style.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="Chart.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="Theme.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="WriterPart.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="Comments.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="Rels.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="DocProps.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="Drawing.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="Worksheet.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="Workbook.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="StringTable.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="ContentTypes.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="Style.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="Chart.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="Theme.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="WriterPart.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="Comments.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="Rels.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="DocProps.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="Drawing.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="Worksheet.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="Workbook.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559896328943" remote="131260196400000000" Dst="1" /> +<file name="StringTable.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559896779020" remote="131260196400000000" Dst="1" /> +<file name="ContentTypes.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559897236248" remote="131260196400000000" Dst="1" /> +<file name="Style.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559897707734" remote="131260196400000000" Dst="1" /> +<file name="Chart.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559898246608" remote="131260196400000000" Dst="1" /> +<file name="Theme.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559898728457" remote="131260196400000000" Dst="1" /> +<file name="WriterPart.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559899136118" remote="131260196400000000" Dst="1" /> +<file name="Comments.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559899581984" remote="131260196400000000" Dst="1" /> +<file name="Rels.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559900061366" remote="131260196400000000" Dst="1" /> +<file name="DocProps.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559900513069" remote="131260196400000000" Dst="1" /> +<file name="Drawing.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559900977139" remote="131260196400000000" Dst="1" /> +<file name="Worksheet.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559901546044" remote="131260196400000000" Dst="1" /> +<file name="Workbook.php" server="62.244.88.21/amashow/" local="131414752212489984" remote="131414680800000000" Dst="2" /> +<file name="StringTable.php" server="62.244.88.21/amashow/" local="131414752212868048" remote="131414680800000000" Dst="2" /> +<file name="ContentTypes.php" server="62.244.88.21/amashow/" local="131414752213084151" remote="131414680800000000" Dst="2" /> +<file name="Style.php" server="62.244.88.21/amashow/" local="131414752213520365" remote="131414680800000000" Dst="2" /> +<file name="Chart.php" server="62.244.88.21/amashow/" local="131414752213776223" remote="131414680800000000" Dst="2" /> +<file name="Theme.php" server="62.244.88.21/amashow/" local="131414752214151400" remote="131414680800000000" Dst="2" /> +<file name="WriterPart.php" server="62.244.88.21/amashow/" local="131414752214350489" remote="131414680800000000" Dst="2" /> +<file name="Comments.php" server="62.244.88.21/amashow/" local="131414752214807204" remote="131414680800000000" Dst="2" /> +<file name="Rels.php" server="62.244.88.21/amashow/" local="131414752215027573" remote="131414680800000000" Dst="2" /> +<file name="DocProps.php" server="62.244.88.21/amashow/" local="131414752215237970" remote="131414680800000000" Dst="2" /> +<file name="Drawing.php" server="62.244.88.21/amashow/" local="131414752215476016" remote="131414680800000000" Dst="2" /> +<file name="Worksheet.php" server="62.244.88.21/amashow/" local="131414752215914354" remote="131414680800000000" Dst="2" /> +<file name="Workbook.php" server="62.244.88.21/deciday/" local="131919461346239293" remote="131826017400000000" Dst="1" /> +<file name="Rels.php" server="62.244.88.21/deciday/" local="131919461343025154" remote="131826017400000000" Dst="1" /> +<file name="DocProps.php" server="62.244.88.21/deciday/" local="131919461342699121" remote="131826017400000000" Dst="1" /> +<file name="Theme.php" server="62.244.88.21/deciday/" local="131919461345457719" remote="131826017400000000" Dst="1" /> +<file name="Drawing.php" server="62.244.88.21/deciday/" local="131919461343645600" remote="131826017400000000" Dst="1" /> +<file name="Style.php" server="62.244.88.21/deciday/" local="131919461344462334" remote="131826017400000000" Dst="1" /> +<file name="StringTable.php" server="62.244.88.21/deciday/" local="131919461345264099" remote="131826017400000000" Dst="1" /> +<file name="ContentTypes.php" server="62.244.88.21/deciday/" local="131919461341859846" remote="131826017400000000" Dst="1" /> +<file name="Chart.php" server="62.244.88.21/deciday/" local="131919461341493654" remote="131826017400000000" Dst="1" /> +<file name="Worksheet.php" server="62.244.88.21/deciday/" local="131919461347533736" remote="131826017400000000" Dst="1" /> +<file name="WriterPart.php" server="62.244.88.21/deciday/" local="131919461347281834" remote="131826017400000000" Dst="1" /> +<file name="Comments.php" server="62.244.88.21/deciday/" local="131919461341676411" remote="131826017400000000" Dst="1" /> +<file name="Comments.php" server="62.244.88.21/deciday_18/" local="131414752214807204" remote="131825945400000000" Dst="2" /> +<file name="Chart.php" server="62.244.88.21/deciday_18/" local="131414752213776223" remote="131825945400000000" Dst="2" /> +<file name="ContentTypes.php" server="62.244.88.21/deciday_18/" local="131414752213084151" remote="131825945400000000" Dst="2" /> +<file name="DocProps.php" server="62.244.88.21/deciday_18/" local="131414752215237970" remote="131825945400000000" Dst="2" /> +<file name="Rels.php" server="62.244.88.21/deciday_18/" local="131414752215027573" remote="131825945400000000" Dst="2" /> +<file name="Drawing.php" server="62.244.88.21/deciday_18/" local="131414752215476016" remote="131825945400000000" Dst="2" /> +<file name="StringTable.php" server="62.244.88.21/deciday_18/" local="131414752212868048" remote="131825945400000000" Dst="2" /> +<file name="Style.php" server="62.244.88.21/deciday_18/" local="131414752213520365" remote="131825945400000000" Dst="2" /> +<file name="Workbook.php" server="62.244.88.21/deciday_18/" local="131414752212489984" remote="131825945400000000" Dst="2" /> +<file name="Theme.php" server="62.244.88.21/deciday_18/" local="131414752214151400" remote="131825945400000000" Dst="2" /> +<file name="WriterPart.php" server="62.244.88.21/deciday_18/" local="131414752214350489" remote="131825945400000000" Dst="2" /> +<file name="Worksheet.php" server="62.244.88.21/deciday_18/" local="131414752215914354" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5.php new file mode 100644 index 0000000..9297c78 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5.php @@ -0,0 +1,961 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel5 + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel5 implements PHPExcel_Writer_IWriter +{ + /** + * Pre-calculate formulas + * + * @var boolean + */ + private $_preCalculateFormulas = true; + + /** + * PHPExcel object + * + * @var PHPExcel + */ + private $_phpExcel; + + /** + * Total number of shared strings in workbook + * + * @var int + */ + private $_str_total = 0; + + /** + * Number of unique shared strings in workbook + * + * @var int + */ + private $_str_unique = 0; + + /** + * Array of unique shared strings in workbook + * + * @var array + */ + private $_str_table = array(); + + /** + * Color cache. Mapping between RGB value and color index. + * + * @var array + */ + private $_colors; + + /** + * Formula parser + * + * @var PHPExcel_Writer_Excel5_Parser + */ + private $_parser; + + /** + * Identifier clusters for drawings. Used in MSODRAWINGGROUP record. + * + * @var array + */ + private $_IDCLs; + + /** + * Basic OLE object summary information + * + * @var array + */ + private $_summaryInformation; + + /** + * Extended OLE object document summary information + * + * @var array + */ + private $_documentSummaryInformation; + + /** + * Create a new PHPExcel_Writer_Excel5 + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) { + $this->_phpExcel = $phpExcel; + + $this->_parser = new PHPExcel_Writer_Excel5_Parser(); + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename + * @throws Exception + */ + public function save($pFilename = null) { + + // garbage collect + $this->_phpExcel->garbageCollect(); + + $saveDebugLog = PHPExcel_Calculation::getInstance()->writeDebugLog; + PHPExcel_Calculation::getInstance()->writeDebugLog = false; + $saveDateReturnType = PHPExcel_Calculation_Functions::getReturnDateType(); + PHPExcel_Calculation_Functions::setReturnDateType(PHPExcel_Calculation_Functions::RETURNDATE_EXCEL); + + // initialize colors array + $this->_colors = array(); + + // Initialise workbook writer + $this->_writerWorkbook = new PHPExcel_Writer_Excel5_Workbook($this->_phpExcel, + $this->_str_total, $this->_str_unique, $this->_str_table, + $this->_colors, $this->_parser); + + // Initialise worksheet writers + $countSheets = $this->_phpExcel->getSheetCount(); + for ($i = 0; $i < $countSheets; ++$i) { + $this->_writerWorksheets[$i] = new PHPExcel_Writer_Excel5_Worksheet($this->_str_total, $this->_str_unique, + $this->_str_table, $this->_colors, + $this->_parser, + $this->_preCalculateFormulas, + $this->_phpExcel->getSheet($i)); + } + + // build Escher objects. Escher objects for workbooks needs to be build before Escher object for workbook. + $this->_buildWorksheetEschers(); + $this->_buildWorkbookEscher(); + + // add 15 identical cell style Xfs + // for now, we use the first cellXf instead of cellStyleXf + $cellXfCollection = $this->_phpExcel->getCellXfCollection(); + for ($i = 0; $i < 15; ++$i) { + $this->_writerWorkbook->addXfWriter($cellXfCollection[0], true); + } + + // add all the cell Xfs + foreach ($this->_phpExcel->getCellXfCollection() as $style) { + $this->_writerWorkbook->addXfWriter($style, false); + } + + // add fonts from rich text eleemnts + for ($i = 0; $i < $countSheets; ++$i) { + foreach ($this->_writerWorksheets[$i]->_phpSheet->getCellCollection() as $cellID) { + $cell = $this->_writerWorksheets[$i]->_phpSheet->getCell($cellID); + $cVal = $cell->getValue(); + if ($cVal instanceof PHPExcel_RichText) { + $elements = $cVal->getRichTextElements(); + foreach ($elements as $element) { + if ($element instanceof PHPExcel_RichText_Run) { + $font = $element->getFont(); + $this->_writerWorksheets[$i]->_fntHashIndex[$font->getHashCode()] = $this->_writerWorkbook->_addFont($font); + } + } + } + } + } + + // initialize OLE file + $workbookStreamName = 'Workbook'; + $OLE = new PHPExcel_Shared_OLE_PPS_File(PHPExcel_Shared_OLE::Asc2Ucs($workbookStreamName)); + + // Write the worksheet streams before the global workbook stream, + // because the byte sizes of these are needed in the global workbook stream + $worksheetSizes = array(); + for ($i = 0; $i < $countSheets; ++$i) { + $this->_writerWorksheets[$i]->close(); + $worksheetSizes[] = $this->_writerWorksheets[$i]->_datasize; + } + + // add binary data for global workbook stream + $OLE->append( $this->_writerWorkbook->writeWorkbook($worksheetSizes) ); + + // add binary data for sheet streams + for ($i = 0; $i < $countSheets; ++$i) { + $OLE->append($this->_writerWorksheets[$i]->getData()); + } + + $this->_documentSummaryInformation = $this->_writeDocumentSummaryInformation(); + // initialize OLE Document Summary Information + if(isset($this->_documentSummaryInformation) && !empty($this->_documentSummaryInformation)){ + $OLE_DocumentSummaryInformation = new PHPExcel_Shared_OLE_PPS_File(PHPExcel_Shared_OLE::Asc2Ucs(chr(5) . 'DocumentSummaryInformation')); + $OLE_DocumentSummaryInformation->append($this->_documentSummaryInformation); + } + + $this->_summaryInformation = $this->_writeSummaryInformation(); + // initialize OLE Summary Information + if(isset($this->_summaryInformation) && !empty($this->_summaryInformation)){ + $OLE_SummaryInformation = new PHPExcel_Shared_OLE_PPS_File(PHPExcel_Shared_OLE::Asc2Ucs(chr(5) . 'SummaryInformation')); + $OLE_SummaryInformation->append($this->_summaryInformation); + } + + // define OLE Parts + $arrRootData = array($OLE); + // initialize OLE Properties file + if(isset($OLE_SummaryInformation)){ + $arrRootData[] = $OLE_SummaryInformation; + } + // initialize OLE Extended Properties file + if(isset($OLE_DocumentSummaryInformation)){ + $arrRootData[] = $OLE_DocumentSummaryInformation; + } + + $root = new PHPExcel_Shared_OLE_PPS_Root(time(), time(), $arrRootData); + // save the OLE file + $res = $root->save($pFilename); + + PHPExcel_Calculation_Functions::setReturnDateType($saveDateReturnType); + PHPExcel_Calculation::getInstance()->writeDebugLog = $saveDebugLog; + } + + /** + * Set temporary storage directory + * + * @deprecated + * @param string $pValue Temporary storage directory + * @throws Exception Exception when directory does not exist + * @return PHPExcel_Writer_Excel5 + */ + public function setTempDir($pValue = '') { + return $this; + } + + /** + * Get Pre-Calculate Formulas + * + * @return boolean + */ + public function getPreCalculateFormulas() { + return $this->_preCalculateFormulas; + } + + /** + * Set Pre-Calculate Formulas + * + * @param boolean $pValue Pre-Calculate Formulas? + */ + public function setPreCalculateFormulas($pValue = true) { + $this->_preCalculateFormulas = $pValue; + } + + /** + * Build the Worksheet Escher objects + * + */ + private function _buildWorksheetEschers() + { + // 1-based index to BstoreContainer + $blipIndex = 0; + $lastReducedSpId = 0; + $lastSpId = 0; + + foreach ($this->_phpExcel->getAllsheets() as $sheet) { + // sheet index + $sheetIndex = $sheet->getParent()->getIndex($sheet); + + $escher = null; + + // check if there are any shapes for this sheet + $filterRange = $sheet->getAutoFilter()->getRange(); + if (count($sheet->getDrawingCollection()) == 0 && empty($filterRange)) { + continue; + } + + // create intermediate Escher object + $escher = new PHPExcel_Shared_Escher(); + + // dgContainer + $dgContainer = new PHPExcel_Shared_Escher_DgContainer(); + + // set the drawing index (we use sheet index + 1) + $dgId = $sheet->getParent()->getIndex($sheet) + 1; + $dgContainer->setDgId($dgId); + $escher->setDgContainer($dgContainer); + + // spgrContainer + $spgrContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer(); + $dgContainer->setSpgrContainer($spgrContainer); + + // add one shape which is the group shape + $spContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer(); + $spContainer->setSpgr(true); + $spContainer->setSpType(0); + $spContainer->setSpId(($sheet->getParent()->getIndex($sheet) + 1) << 10); + $spgrContainer->addChild($spContainer); + + // add the shapes + + $countShapes[$sheetIndex] = 0; // count number of shapes (minus group shape), in sheet + + foreach ($sheet->getDrawingCollection() as $drawing) { + ++$blipIndex; + + ++$countShapes[$sheetIndex]; + + // add the shape + $spContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer(); + + // set the shape type + $spContainer->setSpType(0x004B); + // set the shape flag + $spContainer->setSpFlag(0x02); + + // set the shape index (we combine 1-based sheet index and $countShapes to create unique shape index) + $reducedSpId = $countShapes[$sheetIndex]; + $spId = $reducedSpId + | ($sheet->getParent()->getIndex($sheet) + 1) << 10; + $spContainer->setSpId($spId); + + // keep track of last reducedSpId + $lastReducedSpId = $reducedSpId; + + // keep track of last spId + $lastSpId = $spId; + + // set the BLIP index + $spContainer->setOPT(0x4104, $blipIndex); + + // set coordinates and offsets, client anchor + $coordinates = $drawing->getCoordinates(); + $offsetX = $drawing->getOffsetX(); + $offsetY = $drawing->getOffsetY(); + $width = $drawing->getWidth(); + $height = $drawing->getHeight(); + + $twoAnchor = PHPExcel_Shared_Excel5::oneAnchor2twoAnchor($sheet, $coordinates, $offsetX, $offsetY, $width, $height); + + $spContainer->setStartCoordinates($twoAnchor['startCoordinates']); + $spContainer->setStartOffsetX($twoAnchor['startOffsetX']); + $spContainer->setStartOffsetY($twoAnchor['startOffsetY']); + $spContainer->setEndCoordinates($twoAnchor['endCoordinates']); + $spContainer->setEndOffsetX($twoAnchor['endOffsetX']); + $spContainer->setEndOffsetY($twoAnchor['endOffsetY']); + + $spgrContainer->addChild($spContainer); + } + + // AutoFilters + if(!empty($filterRange)){ + $rangeBounds = PHPExcel_Cell::rangeBoundaries($filterRange); + $iNumColStart = $rangeBounds[0][0]; + $iNumColEnd = $rangeBounds[1][0]; + + $iInc = $iNumColStart; + while($iInc <= $iNumColEnd){ + ++$countShapes[$sheetIndex]; + + // create an Drawing Object for the dropdown + $oDrawing = new PHPExcel_Worksheet_BaseDrawing(); + // get the coordinates of drawing + $cDrawing = PHPExcel_Cell::stringFromColumnIndex($iInc - 1) . $rangeBounds[0][1]; + $oDrawing->setCoordinates($cDrawing); + $oDrawing->setWorksheet($sheet); + + // add the shape + $spContainer = new PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer(); + // set the shape type + $spContainer->setSpType(0x00C9); + // set the shape flag + $spContainer->setSpFlag(0x01); + + // set the shape index (we combine 1-based sheet index and $countShapes to create unique shape index) + $reducedSpId = $countShapes[$sheetIndex]; + $spId = $reducedSpId + | ($sheet->getParent()->getIndex($sheet) + 1) << 10; + $spContainer->setSpId($spId); + + // keep track of last reducedSpId + $lastReducedSpId = $reducedSpId; + + // keep track of last spId + $lastSpId = $spId; + + $spContainer->setOPT(0x007F, 0x01040104); // Protection -> fLockAgainstGrouping + $spContainer->setOPT(0x00BF, 0x00080008); // Text -> fFitTextToShape + $spContainer->setOPT(0x01BF, 0x00010000); // Fill Style -> fNoFillHitTest + $spContainer->setOPT(0x01FF, 0x00080000); // Line Style -> fNoLineDrawDash + $spContainer->setOPT(0x03BF, 0x000A0000); // Group Shape -> fPrint + + // set coordinates and offsets, client anchor + $endCoordinates = PHPExcel_Cell::stringFromColumnIndex(PHPExcel_Cell::stringFromColumnIndex($iInc - 1)); + $endCoordinates .= $rangeBounds[0][1] + 1; + + $spContainer->setStartCoordinates($cDrawing); + $spContainer->setStartOffsetX(0); + $spContainer->setStartOffsetY(0); + $spContainer->setEndCoordinates($endCoordinates); + $spContainer->setEndOffsetX(0); + $spContainer->setEndOffsetY(0); + + $spgrContainer->addChild($spContainer); + $iInc++; + } + } + + // identifier clusters, used for workbook Escher object + $this->_IDCLs[$dgId] = $lastReducedSpId; + + // set last shape index + $dgContainer->setLastSpId($lastSpId); + + // set the Escher object + $this->_writerWorksheets[$sheetIndex]->setEscher($escher); + } + } + + /** + * Build the Escher object corresponding to the MSODRAWINGGROUP record + */ + private function _buildWorkbookEscher() + { + $escher = null; + + // any drawings in this workbook? + $found = false; + foreach ($this->_phpExcel->getAllSheets() as $sheet) { + if (count($sheet->getDrawingCollection()) > 0) { + $found = true; + break; + } + } + + // nothing to do if there are no drawings + if (!$found) { + return; + } + + // if we reach here, then there are drawings in the workbook + $escher = new PHPExcel_Shared_Escher(); + + // dggContainer + $dggContainer = new PHPExcel_Shared_Escher_DggContainer(); + $escher->setDggContainer($dggContainer); + + // set IDCLs (identifier clusters) + $dggContainer->setIDCLs($this->_IDCLs); + + // this loop is for determining maximum shape identifier of all drawing + $spIdMax = 0; + $totalCountShapes = 0; + $countDrawings = 0; + + foreach ($this->_phpExcel->getAllsheets() as $sheet) { + $sheetCountShapes = 0; // count number of shapes (minus group shape), in sheet + + if (count($sheet->getDrawingCollection()) > 0) { + ++$countDrawings; + + foreach ($sheet->getDrawingCollection() as $drawing) { + ++$sheetCountShapes; + ++$totalCountShapes; + + $spId = $sheetCountShapes + | ($this->_phpExcel->getIndex($sheet) + 1) << 10; + $spIdMax = max($spId, $spIdMax); + } + } + } + + $dggContainer->setSpIdMax($spIdMax + 1); + $dggContainer->setCDgSaved($countDrawings); + $dggContainer->setCSpSaved($totalCountShapes + $countDrawings); // total number of shapes incl. one group shapes per drawing + + // bstoreContainer + $bstoreContainer = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer(); + $dggContainer->setBstoreContainer($bstoreContainer); + + // the BSE's (all the images) + foreach ($this->_phpExcel->getAllsheets() as $sheet) { + foreach ($sheet->getDrawingCollection() as $drawing) { + if ($drawing instanceof PHPExcel_Worksheet_Drawing) { + + $filename = $drawing->getPath(); + + list($imagesx, $imagesy, $imageFormat) = getimagesize($filename); + + switch ($imageFormat) { + + case 1: // GIF, not supported by BIFF8, we convert to PNG + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG; + ob_start(); + imagepng(imagecreatefromgif($filename)); + $blipData = ob_get_contents(); + ob_end_clean(); + break; + + case 2: // JPEG + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_JPEG; + $blipData = file_get_contents($filename); + break; + + case 3: // PNG + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG; + $blipData = file_get_contents($filename); + break; + + case 6: // Windows DIB (BMP), we convert to PNG + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG; + ob_start(); + imagepng(PHPExcel_Shared_Drawing::imagecreatefrombmp($filename)); + $blipData = ob_get_contents(); + ob_end_clean(); + break; + + default: continue 2; + + } + + $blip = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip(); + $blip->setData($blipData); + + $BSE = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE(); + $BSE->setBlipType($blipType); + $BSE->setBlip($blip); + + $bstoreContainer->addBSE($BSE); + + } else if ($drawing instanceof PHPExcel_Worksheet_MemoryDrawing) { + + switch ($drawing->getRenderingFunction()) { + + case PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG: + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_JPEG; + $renderingFunction = 'imagejpeg'; + break; + + case PHPExcel_Worksheet_MemoryDrawing::RENDERING_GIF: + case PHPExcel_Worksheet_MemoryDrawing::RENDERING_PNG: + case PHPExcel_Worksheet_MemoryDrawing::RENDERING_DEFAULT: + $blipType = PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG; + $renderingFunction = 'imagepng'; + break; + + } + + ob_start(); + call_user_func($renderingFunction, $drawing->getImageResource()); + $blipData = ob_get_contents(); + ob_end_clean(); + + $blip = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip(); + $blip->setData($blipData); + + $BSE = new PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE(); + $BSE->setBlipType($blipType); + $BSE->setBlip($blip); + + $bstoreContainer->addBSE($BSE); + } + } + } + + // Set the Escher object + $this->_writerWorkbook->setEscher($escher); + } + + /** + * Build the OLE Part for DocumentSummary Information + * @return string + */ + private function _writeDocumentSummaryInformation(){ + + // offset: 0; size: 2; must be 0xFE 0xFF (UTF-16 LE byte order mark) + $data = pack('v', 0xFFFE); + // offset: 2; size: 2; + $data .= pack('v', 0x0000); + // offset: 4; size: 2; OS version + $data .= pack('v', 0x0106); + // offset: 6; size: 2; OS indicator + $data .= pack('v', 0x0002); + // offset: 8; size: 16 + $data .= pack('VVVV', 0x00, 0x00, 0x00, 0x00); + // offset: 24; size: 4; section count + $data .= pack('V', 0x0001); + + // offset: 28; size: 16; first section's class id: 02 d5 cd d5 9c 2e 1b 10 93 97 08 00 2b 2c f9 ae + $data .= pack('vvvvvvvv', 0xD502, 0xD5CD, 0x2E9C, 0x101B, 0x9793, 0x0008, 0x2C2B, 0xAEF9); + // offset: 44; size: 4; offset of the start + $data .= pack('V', 0x30); + + // SECTION + $dataSection = array(); + $dataSection_NumProps = 0; + $dataSection_Summary = ''; + $dataSection_Content = ''; + + // GKPIDDSI_CODEPAGE: CodePage + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x01), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x02), // 2 byte signed integer + 'data' => array('data' => 1252)); + $dataSection_NumProps++; + + // GKPIDDSI_CATEGORY : Category + if($this->_phpExcel->getProperties()->getCategory()){ + $dataProp = $this->_phpExcel->getProperties()->getCategory(); + $dataProp = 'Test result file'; + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x02), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // GKPIDDSI_VERSION :Version of the application that wrote the property storage + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x17), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x03), + 'data' => array('pack' => 'V', 'data' => 0x000C0000)); + $dataSection_NumProps++; + // GKPIDDSI_SCALE : FALSE + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x0B), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x0B), + 'data' => array('data' => false)); + $dataSection_NumProps++; + // GKPIDDSI_LINKSDIRTY : True if any of the values for the linked properties have changed outside of the application + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x10), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x0B), + 'data' => array('data' => false)); + $dataSection_NumProps++; + // GKPIDDSI_SHAREDOC : FALSE + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x13), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x0B), + 'data' => array('data' => false)); + $dataSection_NumProps++; + // GKPIDDSI_HYPERLINKSCHANGED : True if any of the values for the _PID_LINKS (hyperlink text) have changed outside of the application + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x16), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x0B), + 'data' => array('data' => false)); + $dataSection_NumProps++; + + // GKPIDDSI_DOCSPARTS + // MS-OSHARED p75 (2.3.3.2.2.1) + // Structure is VtVecUnalignedLpstrValue (2.3.3.1.9) + // cElements + $dataProp = pack('v', 0x0001); + $dataProp .= pack('v', 0x0000); + // array of UnalignedLpstr + // cch + $dataProp .= pack('v', 0x000A); + $dataProp .= pack('v', 0x0000); + // value + $dataProp .= 'Worksheet'.chr(0); + + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x0D), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x101E), + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + + // GKPIDDSI_HEADINGPAIR + // VtVecHeadingPairValue + // cElements + $dataProp = pack('v', 0x0002); + $dataProp .= pack('v', 0x0000); + // Array of vtHeadingPair + // vtUnalignedString - headingString + // stringType + $dataProp .= pack('v', 0x001E); + // padding + $dataProp .= pack('v', 0x0000); + // UnalignedLpstr + // cch + $dataProp .= pack('v', 0x0013); + $dataProp .= pack('v', 0x0000); + // value + $dataProp .= 'Feuilles de calcul'; + // vtUnalignedString - headingParts + // wType : 0x0003 = 32 bit signed integer + $dataProp .= pack('v', 0x0300); + // padding + $dataProp .= pack('v', 0x0000); + // value + $dataProp .= pack('v', 0x0100); + $dataProp .= pack('v', 0x0000); + $dataProp .= pack('v', 0x0000); + $dataProp .= pack('v', 0x0000); + + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x0C), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x100C), + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + + // 4 Section Length + // 4 Property count + // 8 * $dataSection_NumProps (8 = ID (4) + OffSet(4)) + $dataSection_Content_Offset = 8 + $dataSection_NumProps * 8; + foreach ($dataSection as $dataProp){ + // Summary + $dataSection_Summary .= pack($dataProp['summary']['pack'], $dataProp['summary']['data']); + // Offset + $dataSection_Summary .= pack($dataProp['offset']['pack'], $dataSection_Content_Offset); + // DataType + $dataSection_Content .= pack($dataProp['type']['pack'], $dataProp['type']['data']); + // Data + if($dataProp['type']['data'] == 0x02){ // 2 byte signed integer + $dataSection_Content .= pack('V', $dataProp['data']['data']); + + $dataSection_Content_Offset += 4 + 4; + } + elseif($dataProp['type']['data'] == 0x03){ // 4 byte signed integer + $dataSection_Content .= pack('V', $dataProp['data']['data']); + + $dataSection_Content_Offset += 4 + 4; + } + elseif($dataProp['type']['data'] == 0x0B){ // Boolean + if($dataProp['data']['data'] == false){ + $dataSection_Content .= pack('V', 0x0000); + } else { + $dataSection_Content .= pack('V', 0x0001); + } + $dataSection_Content_Offset += 4 + 4; + } + elseif($dataProp['type']['data'] == 0x1E){ // null-terminated string prepended by dword string length + // Null-terminated string + $dataProp['data']['data'] .= chr(0); + $dataProp['data']['length'] += 1; + // Complete the string with null string for being a %4 + $dataProp['data']['length'] = $dataProp['data']['length'] + ((4 - $dataProp['data']['length'] % 4)==4 ? 0 : (4 - $dataProp['data']['length'] % 4)); + $dataProp['data']['data'] = str_pad($dataProp['data']['data'], $dataProp['data']['length'], chr(0), STR_PAD_RIGHT); + + $dataSection_Content .= pack('V', $dataProp['data']['length']); + $dataSection_Content .= $dataProp['data']['data']; + + $dataSection_Content_Offset += 4 + 4 + strlen($dataProp['data']['data']); + } + elseif($dataProp['type']['data'] == 0x40){ // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + $dataSection_Content .= $dataProp['data']['data']; + + $dataSection_Content_Offset += 4 + 8; + } + else { + // Data Type Not Used at the moment + $dataSection_Content .= $dataProp['data']['data']; + + $dataSection_Content_Offset += 4 + $dataProp['data']['length']; + } + } + // Now $dataSection_Content_Offset contains the size of the content + + // section header + // offset: $secOffset; size: 4; section length + // + x Size of the content (summary + content) + $data .= pack('V', $dataSection_Content_Offset); + // offset: $secOffset+4; size: 4; property count + $data .= pack('V', $dataSection_NumProps); + // Section Summary + $data .= $dataSection_Summary; + // Section Content + $data .= $dataSection_Content; + + return $data; + } + + /** + * Build the OLE Part for Summary Information + * @return string + */ + private function _writeSummaryInformation(){ + // offset: 0; size: 2; must be 0xFE 0xFF (UTF-16 LE byte order mark) + $data = pack('v', 0xFFFE); + // offset: 2; size: 2; + $data .= pack('v', 0x0000); + // offset: 4; size: 2; OS version + $data .= pack('v', 0x0106); + // offset: 6; size: 2; OS indicator + $data .= pack('v', 0x0002); + // offset: 8; size: 16 + $data .= pack('VVVV', 0x00, 0x00, 0x00, 0x00); + // offset: 24; size: 4; section count + $data .= pack('V', 0x0001); + + // offset: 28; size: 16; first section's class id: e0 85 9f f2 f9 4f 68 10 ab 91 08 00 2b 27 b3 d9 + $data .= pack('vvvvvvvv', 0x85E0, 0xF29F, 0x4FF9, 0x1068, 0x91AB, 0x0008, 0x272B, 0xD9B3); + // offset: 44; size: 4; offset of the start + $data .= pack('V', 0x30); + + // SECTION + $dataSection = array(); + $dataSection_NumProps = 0; + $dataSection_Summary = ''; + $dataSection_Content = ''; + + // CodePage : CP-1252 + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x01), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x02), // 2 byte signed integer + 'data' => array('data' => 1252)); + $dataSection_NumProps++; + + // Title + if($this->_phpExcel->getProperties()->getTitle()){ + $dataProp = $this->_phpExcel->getProperties()->getTitle(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x02), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Subject + if($this->_phpExcel->getProperties()->getSubject()){ + $dataProp = $this->_phpExcel->getProperties()->getSubject(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x03), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Author (Creator) + if($this->_phpExcel->getProperties()->getCreator()){ + $dataProp = $this->_phpExcel->getProperties()->getCreator(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x04), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Keywords + if($this->_phpExcel->getProperties()->getKeywords()){ + $dataProp = $this->_phpExcel->getProperties()->getKeywords(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x05), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Comments (Description) + if($this->_phpExcel->getProperties()->getDescription()){ + $dataProp = $this->_phpExcel->getProperties()->getDescription(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x06), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Last Saved By (LastModifiedBy) + if($this->_phpExcel->getProperties()->getLastModifiedBy()){ + $dataProp = $this->_phpExcel->getProperties()->getLastModifiedBy(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x08), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x1E), // null-terminated string prepended by dword string length + 'data' => array('data' => $dataProp, 'length' => strlen($dataProp))); + $dataSection_NumProps++; + } + // Created Date/Time + if($this->_phpExcel->getProperties()->getCreated()){ + $dataProp = $this->_phpExcel->getProperties()->getCreated(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x0C), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x40), // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + 'data' => array('data' => PHPExcel_Shared_OLE::LocalDate2OLE($dataProp))); + $dataSection_NumProps++; + } + // Modified Date/Time + if($this->_phpExcel->getProperties()->getModified()){ + $dataProp = $this->_phpExcel->getProperties()->getModified(); + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x0D), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x40), // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + 'data' => array('data' => PHPExcel_Shared_OLE::LocalDate2OLE($dataProp))); + $dataSection_NumProps++; + } + // Security + $dataSection[] = array('summary'=> array('pack' => 'V', 'data' => 0x13), + 'offset' => array('pack' => 'V'), + 'type' => array('pack' => 'V', 'data' => 0x03), // 4 byte signed integer + 'data' => array('data' => 0x00)); + $dataSection_NumProps++; + + + // 4 Section Length + // 4 Property count + // 8 * $dataSection_NumProps (8 = ID (4) + OffSet(4)) + $dataSection_Content_Offset = 8 + $dataSection_NumProps * 8; + foreach ($dataSection as $dataProp){ + // Summary + $dataSection_Summary .= pack($dataProp['summary']['pack'], $dataProp['summary']['data']); + // Offset + $dataSection_Summary .= pack($dataProp['offset']['pack'], $dataSection_Content_Offset); + // DataType + $dataSection_Content .= pack($dataProp['type']['pack'], $dataProp['type']['data']); + // Data + if($dataProp['type']['data'] == 0x02){ // 2 byte signed integer + $dataSection_Content .= pack('V', $dataProp['data']['data']); + + $dataSection_Content_Offset += 4 + 4; + } + elseif($dataProp['type']['data'] == 0x03){ // 4 byte signed integer + $dataSection_Content .= pack('V', $dataProp['data']['data']); + + $dataSection_Content_Offset += 4 + 4; + } + elseif($dataProp['type']['data'] == 0x1E){ // null-terminated string prepended by dword string length + // Null-terminated string + $dataProp['data']['data'] .= chr(0); + $dataProp['data']['length'] += 1; + // Complete the string with null string for being a %4 + $dataProp['data']['length'] = $dataProp['data']['length'] + ((4 - $dataProp['data']['length'] % 4)==4 ? 0 : (4 - $dataProp['data']['length'] % 4)); + $dataProp['data']['data'] = str_pad($dataProp['data']['data'], $dataProp['data']['length'], chr(0), STR_PAD_RIGHT); + + $dataSection_Content .= pack('V', $dataProp['data']['length']); + $dataSection_Content .= $dataProp['data']['data']; + + $dataSection_Content_Offset += 4 + 4 + strlen($dataProp['data']['data']); + } + elseif($dataProp['type']['data'] == 0x40){ // Filetime (64-bit value representing the number of 100-nanosecond intervals since January 1, 1601) + $dataSection_Content .= $dataProp['data']['data']; + + $dataSection_Content_Offset += 4 + 8; + } + else { + // Data Type Not Used at the moment + } + } + // Now $dataSection_Content_Offset contains the size of the content + + // section header + // offset: $secOffset; size: 4; section length + // + x Size of the content (summary + content) + $data .= pack('V', $dataSection_Content_Offset); + // offset: $secOffset+4; size: 4; property count + $data .= pack('V', $dataSection_NumProps); + // Section Summary + $data .= $dataSection_Summary; + // Section Content + $data .= $dataSection_Content; + + return $data; + } +} \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/BIFFwriter.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/BIFFwriter.php new file mode 100644 index 0000000..b678225 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/BIFFwriter.php @@ -0,0 +1,255 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +// Original file header of PEAR::Spreadsheet_Excel_Writer_BIFFwriter (used as the base for this class): +// ----------------------------------------------------------------------------------------- +// * Module written/ported by Xavier Noguer <xnoguer@rezebra.com> +// * +// * The majority of this is _NOT_ my code. I simply ported it from the +// * PERL Spreadsheet::WriteExcel module. +// * +// * The author of the Spreadsheet::WriteExcel module is John McNamara +// * <jmcnamara@cpan.org> +// * +// * I _DO_ maintain this code, and John McNamara has nothing to do with the +// * porting of this code to PHP. Any questions directly related to this +// * class library should be directed to me. +// * +// * License Information: +// * +// * Spreadsheet_Excel_Writer: A library for generating Excel Spreadsheets +// * Copyright (c) 2002-2003 Xavier Noguer xnoguer@rezebra.com +// * +// * 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 library 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 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 +// */ + + +/** + * PHPExcel_Writer_Excel5_BIFFwriter + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel5_BIFFwriter +{ + /** + * The byte order of this architecture. 0 => little endian, 1 => big endian + * @var integer + */ + private static $_byte_order; + + /** + * The string containing the data of the BIFF stream + * @var string + */ + public $_data; + + /** + * The size of the data in bytes. Should be the same as strlen($this->_data) + * @var integer + */ + public $_datasize; + + /** + * The maximum length for a BIFF record (excluding record header and length field). See _addContinue() + * @var integer + * @see _addContinue() + */ + public $_limit = 8224; + + /** + * Constructor + */ + public function __construct() + { + $this->_data = ''; + $this->_datasize = 0; +// $this->_limit = 8224; + } + + /** + * Determine the byte order and store it as class data to avoid + * recalculating it for each call to new(). + * + * @return int + */ + public static function getByteOrder() + { + if (!isset(self::$_byte_order)) { + // Check if "pack" gives the required IEEE 64bit float + $teststr = pack("d", 1.2345); + $number = pack("C8", 0x8D, 0x97, 0x6E, 0x12, 0x83, 0xC0, 0xF3, 0x3F); + if ($number == $teststr) { + $byte_order = 0; // Little Endian + } elseif ($number == strrev($teststr)){ + $byte_order = 1; // Big Endian + } else { + // Give up. I'll fix this in a later version. + throw new Exception("Required floating point format not supported on this platform."); + } + self::$_byte_order = $byte_order; + } + + return self::$_byte_order; + } + + /** + * General storage function + * + * @param string $data binary data to append + * @access private + */ + function _append($data) + { + if (strlen($data) - 4 > $this->_limit) { + $data = $this->_addContinue($data); + } + $this->_data .= $data; + $this->_datasize += strlen($data); + } + + /** + * General storage function like _append, but returns string instead of modifying $this->_data + * + * @param string $data binary data to write + * @return string + */ + public function writeData($data) + { + if (strlen($data) - 4 > $this->_limit) { + $data = $this->_addContinue($data); + } + $this->_datasize += strlen($data); + + return $data; + } + + /** + * Writes Excel BOF record to indicate the beginning of a stream or + * sub-stream in the BIFF file. + * + * @param integer $type Type of BIFF file to write: 0x0005 Workbook, + * 0x0010 Worksheet. + * @access private + */ + function _storeBof($type) + { + $record = 0x0809; // Record identifier (BIFF5-BIFF8) + $length = 0x0010; + + // by inspection of real files, MS Office Excel 2007 writes the following + $unknown = pack("VV", 0x000100D1, 0x00000406); + + $build = 0x0DBB; // Excel 97 + $year = 0x07CC; // Excel 97 + + $version = 0x0600; // BIFF8 + + $header = pack("vv", $record, $length); + $data = pack("vvvv", $version, $type, $build, $year); + $this->_append($header . $data . $unknown); + } + + /** + * Writes Excel EOF record to indicate the end of a BIFF stream. + * + * @access private + */ + function _storeEof() + { + $record = 0x000A; // Record identifier + $length = 0x0000; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $this->_append($header); + } + + /** + * Writes Excel EOF record to indicate the end of a BIFF stream. + * + * @access private + */ + public function writeEof() + { + $record = 0x000A; // Record identifier + $length = 0x0000; // Number of bytes to follow + $header = pack("vv", $record, $length); + return $this->writeData($header); + } + + /** + * Excel limits the size of BIFF records. In Excel 5 the limit is 2084 bytes. In + * Excel 97 the limit is 8228 bytes. Records that are longer than these limits + * must be split up into CONTINUE blocks. + * + * This function takes a long BIFF record and inserts CONTINUE records as + * necessary. + * + * @param string $data The original binary data to be written + * @return string A very convenient string of continue blocks + * @access private + */ + function _addContinue($data) + { + $limit = $this->_limit; + $record = 0x003C; // Record identifier + + // The first 2080/8224 bytes remain intact. However, we have to change + // the length field of the record. + $tmp = substr($data, 0, 2) . pack("v", $limit) . substr($data, 4, $limit); + + $header = pack("vv", $record, $limit); // Headers for continue records + + // Retrieve chunks of 2080/8224 bytes +4 for the header. + $data_length = strlen($data); + for ($i = $limit + 4; $i < ($data_length - $limit); $i += $limit) { + $tmp .= $header; + $tmp .= substr($data, $i, $limit); + } + + // Retrieve the last chunk of data + $header = pack("vv", $record, strlen($data) - $i); + $tmp .= $header; + $tmp .= substr($data, $i, strlen($data) - $i); + + return $tmp; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Escher.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Escher.php new file mode 100644 index 0000000..94b769a --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Escher.php @@ -0,0 +1,537 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Shared_Escher_DggContainer_BstoreContainer + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel5_Escher +{ + /** + * The object we are writing + */ + private $_object; + + /** + * The written binary data + */ + private $_data; + + /** + * Shape offsets. Positions in binary stream where a new shape record begins + * + * @var array + */ + private $_spOffsets; + + /** + * Shape types. + * + * @var array + */ + private $_spTypes; + + /** + * Constructor + * + * @param mixed + */ + public function __construct($object) + { + $this->_object = $object; + } + + /** + * Process the object to be written + */ + public function close() + { + // initialize + $this->_data = ''; + + switch (get_class($this->_object)) { + + case 'PHPExcel_Shared_Escher': + if ($dggContainer = $this->_object->getDggContainer()) { + $writer = new PHPExcel_Writer_Excel5_Escher($dggContainer); + $this->_data = $writer->close(); + } else if ($dgContainer = $this->_object->getDgContainer()) { + $writer = new PHPExcel_Writer_Excel5_Escher($dgContainer); + $this->_data = $writer->close(); + $this->_spOffsets = $writer->getSpOffsets(); + $this->_spTypes = $writer->getSpTypes(); + } + break; + + case 'PHPExcel_Shared_Escher_DggContainer': + // this is a container record + + // initialize + $innerData = ''; + + // write the dgg + $recVer = 0x0; + $recInstance = 0x0000; + $recType = 0xF006; + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + // dgg data + $dggData = + pack('VVVV' + , $this->_object->getSpIdMax() // maximum shape identifier increased by one + , $this->_object->getCDgSaved() + 1 // number of file identifier clusters increased by one + , $this->_object->getCSpSaved() + , $this->_object->getCDgSaved() // count total number of drawings saved + ); + + // add file identifier clusters (one per drawing) + $IDCLs = $this->_object->getIDCLs(); + + foreach ($IDCLs as $dgId => $maxReducedSpId) { + $dggData .= pack('VV', $dgId, $maxReducedSpId + 1); + } + + $header = pack('vvV', $recVerInstance, $recType, strlen($dggData)); + $innerData .= $header . $dggData; + + // write the bstoreContainer + if ($bstoreContainer = $this->_object->getBstoreContainer()) { + $writer = new PHPExcel_Writer_Excel5_Escher($bstoreContainer); + $innerData .= $writer->close(); + } + + // write the record + $recVer = 0xF; + $recInstance = 0x0000; + $recType = 0xF000; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->_data = $header . $innerData; + break; + + case 'PHPExcel_Shared_Escher_DggContainer_BstoreContainer': + // this is a container record + + // initialize + $innerData = ''; + + // treat the inner data + if ($BSECollection = $this->_object->getBSECollection()) { + foreach ($BSECollection as $BSE) { + $writer = new PHPExcel_Writer_Excel5_Escher($BSE); + $innerData .= $writer->close(); + } + } + + // write the record + $recVer = 0xF; + $recInstance = count($this->_object->getBSECollection()); + $recType = 0xF001; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->_data = $header . $innerData; + break; + + case 'PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE': + // this is a semi-container record + + // initialize + $innerData = ''; + + // here we treat the inner data + if ($blip = $this->_object->getBlip()) { + $writer = new PHPExcel_Writer_Excel5_Escher($blip); + $innerData .= $writer->close(); + } + + // initialize + $data = ''; + + $btWin32 = $this->_object->getBlipType(); + $btMacOS = $this->_object->getBlipType(); + $data .= pack('CC', $btWin32, $btMacOS); + + $rgbUid = pack('VVVV', 0,0,0,0); // todo + $data .= $rgbUid; + + $tag = 0; + $size = strlen($innerData); + $cRef = 1; + $foDelay = 0; //todo + $unused1 = 0x0; + $cbName = 0x0; + $unused2 = 0x0; + $unused3 = 0x0; + $data .= pack('vVVVCCCC', $tag, $size, $cRef, $foDelay, $unused1, $cbName, $unused2, $unused3); + + $data .= $innerData; + + // write the record + $recVer = 0x2; + $recInstance = $this->_object->getBlipType(); + $recType = 0xF007; + $length = strlen($data); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->_data = $header; + + $this->_data .= $data; + break; + + case 'PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip': + // this is an atom record + + // write the record + switch ($this->_object->getParent()->getBlipType()) { + + case PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_JPEG: + // initialize + $innerData = ''; + + $rgbUid1 = pack('VVVV', 0,0,0,0); // todo + $innerData .= $rgbUid1; + + $tag = 0xFF; // todo + $innerData .= pack('C', $tag); + + $innerData .= $this->_object->getData(); + + $recVer = 0x0; + $recInstance = 0x46A; + $recType = 0xF01D; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->_data = $header; + + $this->_data .= $innerData; + break; + + case PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG: + // initialize + $innerData = ''; + + $rgbUid1 = pack('VVVV', 0,0,0,0); // todo + $innerData .= $rgbUid1; + + $tag = 0xFF; // todo + $innerData .= pack('C', $tag); + + $innerData .= $this->_object->getData(); + + $recVer = 0x0; + $recInstance = 0x6E0; + $recType = 0xF01E; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->_data = $header; + + $this->_data .= $innerData; + break; + + } + break; + + case 'PHPExcel_Shared_Escher_DgContainer': + // this is a container record + + // initialize + $innerData = ''; + + // write the dg + $recVer = 0x0; + $recInstance = $this->_object->getDgId(); + $recType = 0xF008; + $length = 8; + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + // number of shapes in this drawing (including group shape) + $countShapes = count($this->_object->getSpgrContainer()->getChildren()); + $innerData .= $header . pack('VV', $countShapes, $this->_object->getLastSpId()); + //$innerData .= $header . pack('VV', 0, 0); + + // write the spgrContainer + if ($spgrContainer = $this->_object->getSpgrContainer()) { + $writer = new PHPExcel_Writer_Excel5_Escher($spgrContainer); + $innerData .= $writer->close(); + + // get the shape offsets relative to the spgrContainer record + $spOffsets = $writer->getSpOffsets(); + $spTypes = $writer->getSpTypes(); + + // save the shape offsets relative to dgContainer + foreach ($spOffsets as & $spOffset) { + $spOffset += 24; // add length of dgContainer header data (8 bytes) plus dg data (16 bytes) + } + + $this->_spOffsets = $spOffsets; + $this->_spTypes = $spTypes; + } + + // write the record + $recVer = 0xF; + $recInstance = 0x0000; + $recType = 0xF002; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->_data = $header . $innerData; + break; + + case 'PHPExcel_Shared_Escher_DgContainer_SpgrContainer': + // this is a container record + + // initialize + $innerData = ''; + + // initialize spape offsets + $totalSize = 8; + $spOffsets = array(); + $spTypes = array(); + + // treat the inner data + foreach ($this->_object->getChildren() as $spContainer) { + $writer = new PHPExcel_Writer_Excel5_Escher($spContainer); + $spData = $writer->close(); + $innerData .= $spData; + + // save the shape offsets (where new shape records begin) + $totalSize += strlen($spData); + $spOffsets[] = $totalSize; + + $spTypes = array_merge($spTypes, $writer->getSpTypes()); + } + + // write the record + $recVer = 0xF; + $recInstance = 0x0000; + $recType = 0xF003; + $length = strlen($innerData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->_data = $header . $innerData; + $this->_spOffsets = $spOffsets; + $this->_spTypes = $spTypes; + break; + + case 'PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer': + // initialize + $data = ''; + + // build the data + + // write group shape record, if necessary? + if ($this->_object->getSpgr()) { + $recVer = 0x1; + $recInstance = 0x0000; + $recType = 0xF009; + $length = 0x00000010; + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $data .= $header . pack('VVVV', 0,0,0,0); + } + $this->_spTypes[] = ($this->_object->getSpType()); + + // write the shape record + $recVer = 0x2; + $recInstance = $this->_object->getSpType(); // shape type + $recType = 0xF00A; + $length = 0x00000008; + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $data .= $header . pack('VV', $this->_object->getSpId(), $this->_object->getSpgr() ? 0x0005 : 0x0A00); + + + // the options + if ($this->_object->getOPTCollection()) { + $optData = ''; + + $recVer = 0x3; + $recInstance = count($this->_object->getOPTCollection()); + $recType = 0xF00B; + foreach ($this->_object->getOPTCollection() as $property => $value) { + $optData .= pack('vV', $property, $value); + } + $length = strlen($optData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + $data .= $header . $optData; + } + + // the client anchor + if ($this->_object->getStartCoordinates()) { + $clientAnchorData = ''; + + $recVer = 0x0; + $recInstance = 0x0; + $recType = 0xF010; + + // start coordinates + list($column, $row) = PHPExcel_Cell::coordinateFromString($this->_object->getStartCoordinates()); + $c1 = PHPExcel_Cell::columnIndexFromString($column) - 1; + $r1 = $row - 1; + + // start offsetX + $startOffsetX = $this->_object->getStartOffsetX(); + + // start offsetY + $startOffsetY = $this->_object->getStartOffsetY(); + + // end coordinates + list($column, $row) = PHPExcel_Cell::coordinateFromString($this->_object->getEndCoordinates()); + $c2 = PHPExcel_Cell::columnIndexFromString($column) - 1; + $r2 = $row - 1; + + // end offsetX + $endOffsetX = $this->_object->getEndOffsetX(); + + // end offsetY + $endOffsetY = $this->_object->getEndOffsetY(); + + $clientAnchorData = pack('vvvvvvvvv', $this->_object->getSpFlag(), + $c1, $startOffsetX, $r1, $startOffsetY, + $c2, $endOffsetX, $r2, $endOffsetY); + + $length = strlen($clientAnchorData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + $data .= $header . $clientAnchorData; + } + + // the client data, just empty for now + if (!$this->_object->getSpgr()) { + $clientDataData = ''; + + $recVer = 0x0; + $recInstance = 0x0; + $recType = 0xF011; + + $length = strlen($clientDataData); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + $data .= $header . $clientDataData; + } + + // write the record + $recVer = 0xF; + $recInstance = 0x0000; + $recType = 0xF004; + $length = strlen($data); + + $recVerInstance = $recVer; + $recVerInstance |= $recInstance << 4; + + $header = pack('vvV', $recVerInstance, $recType, $length); + + $this->_data = $header . $data; + break; + + } + + return $this->_data; + } + + /** + * Gets the shape offsets + * + * @return array + */ + public function getSpOffsets() + { + return $this->_spOffsets; + } + + /** + * Gets the shape types + * + * @return array + */ + public function getSpTypes() + { + return $this->_spTypes; + } + + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Font.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Font.php new file mode 100644 index 0000000..f67dd11 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Font.php @@ -0,0 +1,165 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_Excel5_Font + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel5_Font +{ + /** + * Color index + * + * @var int + */ + private $_colorIndex; + + /** + * Font + * + * @var PHPExcel_Style_Font + */ + private $_font; + + /** + * Constructor + * + * @param PHPExcel_Style_Font $font + */ + public function __construct(PHPExcel_Style_Font $font = null) + { + $this->_colorIndex = 0x7FFF; + $this->_font = $font; + } + + /** + * Set the color index + * + * @param int $colorIndex + */ + public function setColorIndex($colorIndex) + { + $this->_colorIndex = $colorIndex; + } + + /** + * Get font record data + * + * @return string + */ + public function writeFont() + { + $font_outline = 0; + $font_shadow = 0; + + $icv = $this->_colorIndex; // Index to color palette + if ($this->_font->getSuperScript()) { + $sss = 1; + } else if ($this->_font->getSubScript()) { + $sss = 2; + } else { + $sss = 0; + } + $bFamily = 0; // Font family + $bCharSet = PHPExcel_Shared_Font::getCharsetFromFontName($this->_font->getName()); // Character set + + $record = 0x31; // Record identifier + $reserved = 0x00; // Reserved + $grbit = 0x00; // Font attributes + if ($this->_font->getItalic()) { + $grbit |= 0x02; + } + if ($this->_font->getStrikethrough()) { + $grbit |= 0x08; + } + if ($font_outline) { + $grbit |= 0x10; + } + if ($font_shadow) { + $grbit |= 0x20; + } + + $data = pack("vvvvvCCCC", + $this->_font->getSize() * 20, // Fontsize (in twips) + $grbit, + $icv, // Colour + self::_mapBold($this->_font->getBold()), // Font weight + $sss, // Superscript/Subscript + self::_mapUnderline($this->_font->getUnderline()), + $bFamily, + $bCharSet, + $reserved + ); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort($this->_font->getName()); + + $length = strlen($data); + $header = pack("vv", $record, $length); + + return($header . $data); + } + + /** + * Map to BIFF5-BIFF8 codes for bold + * + * @param boolean $bold + * @return int + */ + private static function _mapBold($bold) { + if ($bold) { + return 0x2BC; // 700 = Bold font weight + } + return 0x190; // 400 = Normal font weight + } + + /** + * Map of BIFF2-BIFF8 codes for underline styles + * @static array of int + * + */ + private static $_mapUnderline = array( PHPExcel_Style_Font::UNDERLINE_NONE => 0x00, + PHPExcel_Style_Font::UNDERLINE_SINGLE => 0x01, + PHPExcel_Style_Font::UNDERLINE_DOUBLE => 0x02, + PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING => 0x21, + PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING => 0x22, + ); + /** + * Map underline + * + * @param string + * @return int + */ + private static function _mapUnderline($underline) { + if (isset(self::$_mapUnderline[$underline])) + return self::$_mapUnderline[$underline]; + return 0x00; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Parser.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Parser.php new file mode 100644 index 0000000..88b777e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Parser.php @@ -0,0 +1,1583 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +// Original file header of PEAR::Spreadsheet_Excel_Writer_Parser (used as the base for this class): +// ----------------------------------------------------------------------------------------- +// * Class for parsing Excel formulas +// * +// * License Information: +// * +// * Spreadsheet_Excel_Writer: A library for generating Excel Spreadsheets +// * Copyright (c) 2002-2003 Xavier Noguer xnoguer@rezebra.com +// * +// * 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 library 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 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 +// */ + + +/** + * PHPExcel_Writer_Excel5_Parser + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel5_Parser +{ + /** Constants */ + // Sheet title in unquoted form + // Invalid sheet title characters cannot occur in the sheet title: + // *:/\?[] + // Moreover, there are valid sheet title characters that cannot occur in unquoted form (there may be more?) + // +-% '^&<>=,;#()"{} + const REGEX_SHEET_TITLE_UNQUOTED = '[^\*\:\/\\\\\?\[\]\+\-\% \\\'\^\&\<\>\=\,\;\#\(\)\"\{\}]+'; + + // Sheet title in quoted form (without surrounding quotes) + // Invalid sheet title characters cannot occur in the sheet title: + // *:/\?[] (usual invalid sheet title characters) + // Single quote is represented as a pair '' + const REGEX_SHEET_TITLE_QUOTED = '(([^\*\:\/\\\\\?\[\]\\\'])+|(\\\'\\\')+)+'; + + /** + * The index of the character we are currently looking at + * @var integer + */ + public $_current_char; + + /** + * The token we are working on. + * @var string + */ + public $_current_token; + + /** + * The formula to parse + * @var string + */ + public $_formula; + + /** + * The character ahead of the current char + * @var string + */ + public $_lookahead; + + /** + * The parse tree to be generated + * @var string + */ + public $_parse_tree; + + /** + * Array of external sheets + * @var array + */ + public $_ext_sheets; + + /** + * Array of sheet references in the form of REF structures + * @var array + */ + public $_references; + + /** + * The class constructor + * + */ + public function __construct() + { + $this->_current_char = 0; + $this->_current_token = ''; // The token we are working on. + $this->_formula = ''; // The formula to parse. + $this->_lookahead = ''; // The character ahead of the current char. + $this->_parse_tree = ''; // The parse tree to be generated. + $this->_initializeHashes(); // Initialize the hashes: ptg's and function's ptg's + $this->_ext_sheets = array(); + $this->_references = array(); + } + + /** + * Initialize the ptg and function hashes. + * + * @access private + */ + function _initializeHashes() + { + // The Excel ptg indices + $this->ptg = array( + 'ptgExp' => 0x01, + 'ptgTbl' => 0x02, + 'ptgAdd' => 0x03, + 'ptgSub' => 0x04, + 'ptgMul' => 0x05, + 'ptgDiv' => 0x06, + 'ptgPower' => 0x07, + 'ptgConcat' => 0x08, + 'ptgLT' => 0x09, + 'ptgLE' => 0x0A, + 'ptgEQ' => 0x0B, + 'ptgGE' => 0x0C, + 'ptgGT' => 0x0D, + 'ptgNE' => 0x0E, + 'ptgIsect' => 0x0F, + 'ptgUnion' => 0x10, + 'ptgRange' => 0x11, + 'ptgUplus' => 0x12, + 'ptgUminus' => 0x13, + 'ptgPercent' => 0x14, + 'ptgParen' => 0x15, + 'ptgMissArg' => 0x16, + 'ptgStr' => 0x17, + 'ptgAttr' => 0x19, + 'ptgSheet' => 0x1A, + 'ptgEndSheet' => 0x1B, + 'ptgErr' => 0x1C, + 'ptgBool' => 0x1D, + 'ptgInt' => 0x1E, + 'ptgNum' => 0x1F, + 'ptgArray' => 0x20, + 'ptgFunc' => 0x21, + 'ptgFuncVar' => 0x22, + 'ptgName' => 0x23, + 'ptgRef' => 0x24, + 'ptgArea' => 0x25, + 'ptgMemArea' => 0x26, + 'ptgMemErr' => 0x27, + 'ptgMemNoMem' => 0x28, + 'ptgMemFunc' => 0x29, + 'ptgRefErr' => 0x2A, + 'ptgAreaErr' => 0x2B, + 'ptgRefN' => 0x2C, + 'ptgAreaN' => 0x2D, + 'ptgMemAreaN' => 0x2E, + 'ptgMemNoMemN' => 0x2F, + 'ptgNameX' => 0x39, + 'ptgRef3d' => 0x3A, + 'ptgArea3d' => 0x3B, + 'ptgRefErr3d' => 0x3C, + 'ptgAreaErr3d' => 0x3D, + 'ptgArrayV' => 0x40, + 'ptgFuncV' => 0x41, + 'ptgFuncVarV' => 0x42, + 'ptgNameV' => 0x43, + 'ptgRefV' => 0x44, + 'ptgAreaV' => 0x45, + 'ptgMemAreaV' => 0x46, + 'ptgMemErrV' => 0x47, + 'ptgMemNoMemV' => 0x48, + 'ptgMemFuncV' => 0x49, + 'ptgRefErrV' => 0x4A, + 'ptgAreaErrV' => 0x4B, + 'ptgRefNV' => 0x4C, + 'ptgAreaNV' => 0x4D, + 'ptgMemAreaNV' => 0x4E, + 'ptgMemNoMemN' => 0x4F, + 'ptgFuncCEV' => 0x58, + 'ptgNameXV' => 0x59, + 'ptgRef3dV' => 0x5A, + 'ptgArea3dV' => 0x5B, + 'ptgRefErr3dV' => 0x5C, + 'ptgAreaErr3d' => 0x5D, + 'ptgArrayA' => 0x60, + 'ptgFuncA' => 0x61, + 'ptgFuncVarA' => 0x62, + 'ptgNameA' => 0x63, + 'ptgRefA' => 0x64, + 'ptgAreaA' => 0x65, + 'ptgMemAreaA' => 0x66, + 'ptgMemErrA' => 0x67, + 'ptgMemNoMemA' => 0x68, + 'ptgMemFuncA' => 0x69, + 'ptgRefErrA' => 0x6A, + 'ptgAreaErrA' => 0x6B, + 'ptgRefNA' => 0x6C, + 'ptgAreaNA' => 0x6D, + 'ptgMemAreaNA' => 0x6E, + 'ptgMemNoMemN' => 0x6F, + 'ptgFuncCEA' => 0x78, + 'ptgNameXA' => 0x79, + 'ptgRef3dA' => 0x7A, + 'ptgArea3dA' => 0x7B, + 'ptgRefErr3dA' => 0x7C, + 'ptgAreaErr3d' => 0x7D + ); + + // Thanks to Michael Meeks and Gnumeric for the initial arg values. + // + // The following hash was generated by "function_locale.pl" in the distro. + // Refer to function_locale.pl for non-English function names. + // + // The array elements are as follow: + // ptg: The Excel function ptg code. + // args: The number of arguments that the function takes: + // >=0 is a fixed number of arguments. + // -1 is a variable number of arguments. + // class: The reference, value or array class of the function args. + // vol: The function is volatile. + // + $this->_functions = array( + // function ptg args class vol + 'COUNT' => array( 0, -1, 0, 0 ), + 'IF' => array( 1, -1, 1, 0 ), + 'ISNA' => array( 2, 1, 1, 0 ), + 'ISERROR' => array( 3, 1, 1, 0 ), + 'SUM' => array( 4, -1, 0, 0 ), + 'AVERAGE' => array( 5, -1, 0, 0 ), + 'MIN' => array( 6, -1, 0, 0 ), + 'MAX' => array( 7, -1, 0, 0 ), + 'ROW' => array( 8, -1, 0, 0 ), + 'COLUMN' => array( 9, -1, 0, 0 ), + 'NA' => array( 10, 0, 0, 0 ), + 'NPV' => array( 11, -1, 1, 0 ), + 'STDEV' => array( 12, -1, 0, 0 ), + 'DOLLAR' => array( 13, -1, 1, 0 ), + 'FIXED' => array( 14, -1, 1, 0 ), + 'SIN' => array( 15, 1, 1, 0 ), + 'COS' => array( 16, 1, 1, 0 ), + 'TAN' => array( 17, 1, 1, 0 ), + 'ATAN' => array( 18, 1, 1, 0 ), + 'PI' => array( 19, 0, 1, 0 ), + 'SQRT' => array( 20, 1, 1, 0 ), + 'EXP' => array( 21, 1, 1, 0 ), + 'LN' => array( 22, 1, 1, 0 ), + 'LOG10' => array( 23, 1, 1, 0 ), + 'ABS' => array( 24, 1, 1, 0 ), + 'INT' => array( 25, 1, 1, 0 ), + 'SIGN' => array( 26, 1, 1, 0 ), + 'ROUND' => array( 27, 2, 1, 0 ), + 'LOOKUP' => array( 28, -1, 0, 0 ), + 'INDEX' => array( 29, -1, 0, 1 ), + 'REPT' => array( 30, 2, 1, 0 ), + 'MID' => array( 31, 3, 1, 0 ), + 'LEN' => array( 32, 1, 1, 0 ), + 'VALUE' => array( 33, 1, 1, 0 ), + 'TRUE' => array( 34, 0, 1, 0 ), + 'FALSE' => array( 35, 0, 1, 0 ), + 'AND' => array( 36, -1, 0, 0 ), + 'OR' => array( 37, -1, 0, 0 ), + 'NOT' => array( 38, 1, 1, 0 ), + 'MOD' => array( 39, 2, 1, 0 ), + 'DCOUNT' => array( 40, 3, 0, 0 ), + 'DSUM' => array( 41, 3, 0, 0 ), + 'DAVERAGE' => array( 42, 3, 0, 0 ), + 'DMIN' => array( 43, 3, 0, 0 ), + 'DMAX' => array( 44, 3, 0, 0 ), + 'DSTDEV' => array( 45, 3, 0, 0 ), + 'VAR' => array( 46, -1, 0, 0 ), + 'DVAR' => array( 47, 3, 0, 0 ), + 'TEXT' => array( 48, 2, 1, 0 ), + 'LINEST' => array( 49, -1, 0, 0 ), + 'TREND' => array( 50, -1, 0, 0 ), + 'LOGEST' => array( 51, -1, 0, 0 ), + 'GROWTH' => array( 52, -1, 0, 0 ), + 'PV' => array( 56, -1, 1, 0 ), + 'FV' => array( 57, -1, 1, 0 ), + 'NPER' => array( 58, -1, 1, 0 ), + 'PMT' => array( 59, -1, 1, 0 ), + 'RATE' => array( 60, -1, 1, 0 ), + 'MIRR' => array( 61, 3, 0, 0 ), + 'IRR' => array( 62, -1, 0, 0 ), + 'RAND' => array( 63, 0, 1, 1 ), + 'MATCH' => array( 64, -1, 0, 0 ), + 'DATE' => array( 65, 3, 1, 0 ), + 'TIME' => array( 66, 3, 1, 0 ), + 'DAY' => array( 67, 1, 1, 0 ), + 'MONTH' => array( 68, 1, 1, 0 ), + 'YEAR' => array( 69, 1, 1, 0 ), + 'WEEKDAY' => array( 70, -1, 1, 0 ), + 'HOUR' => array( 71, 1, 1, 0 ), + 'MINUTE' => array( 72, 1, 1, 0 ), + 'SECOND' => array( 73, 1, 1, 0 ), + 'NOW' => array( 74, 0, 1, 1 ), + 'AREAS' => array( 75, 1, 0, 1 ), + 'ROWS' => array( 76, 1, 0, 1 ), + 'COLUMNS' => array( 77, 1, 0, 1 ), + 'OFFSET' => array( 78, -1, 0, 1 ), + 'SEARCH' => array( 82, -1, 1, 0 ), + 'TRANSPOSE' => array( 83, 1, 1, 0 ), + 'TYPE' => array( 86, 1, 1, 0 ), + 'ATAN2' => array( 97, 2, 1, 0 ), + 'ASIN' => array( 98, 1, 1, 0 ), + 'ACOS' => array( 99, 1, 1, 0 ), + 'CHOOSE' => array( 100, -1, 1, 0 ), + 'HLOOKUP' => array( 101, -1, 0, 0 ), + 'VLOOKUP' => array( 102, -1, 0, 0 ), + 'ISREF' => array( 105, 1, 0, 0 ), + 'LOG' => array( 109, -1, 1, 0 ), + 'CHAR' => array( 111, 1, 1, 0 ), + 'LOWER' => array( 112, 1, 1, 0 ), + 'UPPER' => array( 113, 1, 1, 0 ), + 'PROPER' => array( 114, 1, 1, 0 ), + 'LEFT' => array( 115, -1, 1, 0 ), + 'RIGHT' => array( 116, -1, 1, 0 ), + 'EXACT' => array( 117, 2, 1, 0 ), + 'TRIM' => array( 118, 1, 1, 0 ), + 'REPLACE' => array( 119, 4, 1, 0 ), + 'SUBSTITUTE' => array( 120, -1, 1, 0 ), + 'CODE' => array( 121, 1, 1, 0 ), + 'FIND' => array( 124, -1, 1, 0 ), + 'CELL' => array( 125, -1, 0, 1 ), + 'ISERR' => array( 126, 1, 1, 0 ), + 'ISTEXT' => array( 127, 1, 1, 0 ), + 'ISNUMBER' => array( 128, 1, 1, 0 ), + 'ISBLANK' => array( 129, 1, 1, 0 ), + 'T' => array( 130, 1, 0, 0 ), + 'N' => array( 131, 1, 0, 0 ), + 'DATEVALUE' => array( 140, 1, 1, 0 ), + 'TIMEVALUE' => array( 141, 1, 1, 0 ), + 'SLN' => array( 142, 3, 1, 0 ), + 'SYD' => array( 143, 4, 1, 0 ), + 'DDB' => array( 144, -1, 1, 0 ), + 'INDIRECT' => array( 148, -1, 1, 1 ), + 'CALL' => array( 150, -1, 1, 0 ), + 'CLEAN' => array( 162, 1, 1, 0 ), + 'MDETERM' => array( 163, 1, 2, 0 ), + 'MINVERSE' => array( 164, 1, 2, 0 ), + 'MMULT' => array( 165, 2, 2, 0 ), + 'IPMT' => array( 167, -1, 1, 0 ), + 'PPMT' => array( 168, -1, 1, 0 ), + 'COUNTA' => array( 169, -1, 0, 0 ), + 'PRODUCT' => array( 183, -1, 0, 0 ), + 'FACT' => array( 184, 1, 1, 0 ), + 'DPRODUCT' => array( 189, 3, 0, 0 ), + 'ISNONTEXT' => array( 190, 1, 1, 0 ), + 'STDEVP' => array( 193, -1, 0, 0 ), + 'VARP' => array( 194, -1, 0, 0 ), + 'DSTDEVP' => array( 195, 3, 0, 0 ), + 'DVARP' => array( 196, 3, 0, 0 ), + 'TRUNC' => array( 197, -1, 1, 0 ), + 'ISLOGICAL' => array( 198, 1, 1, 0 ), + 'DCOUNTA' => array( 199, 3, 0, 0 ), + 'USDOLLAR' => array( 204, -1, 1, 0 ), + 'FINDB' => array( 205, -1, 1, 0 ), + 'SEARCHB' => array( 206, -1, 1, 0 ), + 'REPLACEB' => array( 207, 4, 1, 0 ), + 'LEFTB' => array( 208, -1, 1, 0 ), + 'RIGHTB' => array( 209, -1, 1, 0 ), + 'MIDB' => array( 210, 3, 1, 0 ), + 'LENB' => array( 211, 1, 1, 0 ), + 'ROUNDUP' => array( 212, 2, 1, 0 ), + 'ROUNDDOWN' => array( 213, 2, 1, 0 ), + 'ASC' => array( 214, 1, 1, 0 ), + 'DBCS' => array( 215, 1, 1, 0 ), + 'RANK' => array( 216, -1, 0, 0 ), + 'ADDRESS' => array( 219, -1, 1, 0 ), + 'DAYS360' => array( 220, -1, 1, 0 ), + 'TODAY' => array( 221, 0, 1, 1 ), + 'VDB' => array( 222, -1, 1, 0 ), + 'MEDIAN' => array( 227, -1, 0, 0 ), + 'SUMPRODUCT' => array( 228, -1, 2, 0 ), + 'SINH' => array( 229, 1, 1, 0 ), + 'COSH' => array( 230, 1, 1, 0 ), + 'TANH' => array( 231, 1, 1, 0 ), + 'ASINH' => array( 232, 1, 1, 0 ), + 'ACOSH' => array( 233, 1, 1, 0 ), + 'ATANH' => array( 234, 1, 1, 0 ), + 'DGET' => array( 235, 3, 0, 0 ), + 'INFO' => array( 244, 1, 1, 1 ), + 'DB' => array( 247, -1, 1, 0 ), + 'FREQUENCY' => array( 252, 2, 0, 0 ), + 'ERROR.TYPE' => array( 261, 1, 1, 0 ), + 'REGISTER.ID' => array( 267, -1, 1, 0 ), + 'AVEDEV' => array( 269, -1, 0, 0 ), + 'BETADIST' => array( 270, -1, 1, 0 ), + 'GAMMALN' => array( 271, 1, 1, 0 ), + 'BETAINV' => array( 272, -1, 1, 0 ), + 'BINOMDIST' => array( 273, 4, 1, 0 ), + 'CHIDIST' => array( 274, 2, 1, 0 ), + 'CHIINV' => array( 275, 2, 1, 0 ), + 'COMBIN' => array( 276, 2, 1, 0 ), + 'CONFIDENCE' => array( 277, 3, 1, 0 ), + 'CRITBINOM' => array( 278, 3, 1, 0 ), + 'EVEN' => array( 279, 1, 1, 0 ), + 'EXPONDIST' => array( 280, 3, 1, 0 ), + 'FDIST' => array( 281, 3, 1, 0 ), + 'FINV' => array( 282, 3, 1, 0 ), + 'FISHER' => array( 283, 1, 1, 0 ), + 'FISHERINV' => array( 284, 1, 1, 0 ), + 'FLOOR' => array( 285, 2, 1, 0 ), + 'GAMMADIST' => array( 286, 4, 1, 0 ), + 'GAMMAINV' => array( 287, 3, 1, 0 ), + 'CEILING' => array( 288, 2, 1, 0 ), + 'HYPGEOMDIST' => array( 289, 4, 1, 0 ), + 'LOGNORMDIST' => array( 290, 3, 1, 0 ), + 'LOGINV' => array( 291, 3, 1, 0 ), + 'NEGBINOMDIST' => array( 292, 3, 1, 0 ), + 'NORMDIST' => array( 293, 4, 1, 0 ), + 'NORMSDIST' => array( 294, 1, 1, 0 ), + 'NORMINV' => array( 295, 3, 1, 0 ), + 'NORMSINV' => array( 296, 1, 1, 0 ), + 'STANDARDIZE' => array( 297, 3, 1, 0 ), + 'ODD' => array( 298, 1, 1, 0 ), + 'PERMUT' => array( 299, 2, 1, 0 ), + 'POISSON' => array( 300, 3, 1, 0 ), + 'TDIST' => array( 301, 3, 1, 0 ), + 'WEIBULL' => array( 302, 4, 1, 0 ), + 'SUMXMY2' => array( 303, 2, 2, 0 ), + 'SUMX2MY2' => array( 304, 2, 2, 0 ), + 'SUMX2PY2' => array( 305, 2, 2, 0 ), + 'CHITEST' => array( 306, 2, 2, 0 ), + 'CORREL' => array( 307, 2, 2, 0 ), + 'COVAR' => array( 308, 2, 2, 0 ), + 'FORECAST' => array( 309, 3, 2, 0 ), + 'FTEST' => array( 310, 2, 2, 0 ), + 'INTERCEPT' => array( 311, 2, 2, 0 ), + 'PEARSON' => array( 312, 2, 2, 0 ), + 'RSQ' => array( 313, 2, 2, 0 ), + 'STEYX' => array( 314, 2, 2, 0 ), + 'SLOPE' => array( 315, 2, 2, 0 ), + 'TTEST' => array( 316, 4, 2, 0 ), + 'PROB' => array( 317, -1, 2, 0 ), + 'DEVSQ' => array( 318, -1, 0, 0 ), + 'GEOMEAN' => array( 319, -1, 0, 0 ), + 'HARMEAN' => array( 320, -1, 0, 0 ), + 'SUMSQ' => array( 321, -1, 0, 0 ), + 'KURT' => array( 322, -1, 0, 0 ), + 'SKEW' => array( 323, -1, 0, 0 ), + 'ZTEST' => array( 324, -1, 0, 0 ), + 'LARGE' => array( 325, 2, 0, 0 ), + 'SMALL' => array( 326, 2, 0, 0 ), + 'QUARTILE' => array( 327, 2, 0, 0 ), + 'PERCENTILE' => array( 328, 2, 0, 0 ), + 'PERCENTRANK' => array( 329, -1, 0, 0 ), + 'MODE' => array( 330, -1, 2, 0 ), + 'TRIMMEAN' => array( 331, 2, 0, 0 ), + 'TINV' => array( 332, 2, 1, 0 ), + 'CONCATENATE' => array( 336, -1, 1, 0 ), + 'POWER' => array( 337, 2, 1, 0 ), + 'RADIANS' => array( 342, 1, 1, 0 ), + 'DEGREES' => array( 343, 1, 1, 0 ), + 'SUBTOTAL' => array( 344, -1, 0, 0 ), + 'SUMIF' => array( 345, -1, 0, 0 ), + 'COUNTIF' => array( 346, 2, 0, 0 ), + 'COUNTBLANK' => array( 347, 1, 0, 0 ), + 'ISPMT' => array( 350, 4, 1, 0 ), + 'DATEDIF' => array( 351, 3, 1, 0 ), + 'DATESTRING' => array( 352, 1, 1, 0 ), + 'NUMBERSTRING' => array( 353, 2, 1, 0 ), + 'ROMAN' => array( 354, -1, 1, 0 ), + 'GETPIVOTDATA' => array( 358, -1, 0, 0 ), + 'HYPERLINK' => array( 359, -1, 1, 0 ), + 'PHONETIC' => array( 360, 1, 0, 0 ), + 'AVERAGEA' => array( 361, -1, 0, 0 ), + 'MAXA' => array( 362, -1, 0, 0 ), + 'MINA' => array( 363, -1, 0, 0 ), + 'STDEVPA' => array( 364, -1, 0, 0 ), + 'VARPA' => array( 365, -1, 0, 0 ), + 'STDEVA' => array( 366, -1, 0, 0 ), + 'VARA' => array( 367, -1, 0, 0 ), + 'BAHTTEXT' => array( 368, 1, 0, 0 ), + ); + } + + /** + * Convert a token to the proper ptg value. + * + * @access private + * @param mixed $token The token to convert. + * @return mixed the converted token on success + */ + function _convert($token) + { + if (preg_match("/\"([^\"]|\"\"){0,255}\"/", $token)) { + return $this->_convertString($token); + + } elseif (is_numeric($token)) { + return $this->_convertNumber($token); + + // match references like A1 or $A$1 + } elseif (preg_match('/^\$?([A-Ia-i]?[A-Za-z])\$?(\d+)$/',$token)) { + return $this->_convertRef2d($token); + + // match external references like Sheet1!A1 or Sheet1:Sheet2!A1 or Sheet1!$A$1 or Sheet1:Sheet2!$A$1 + } elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?[A-Ia-i]?[A-Za-z]\\$?(\d+)$/u",$token)) { + return $this->_convertRef3d($token); + + // match external references like 'Sheet1'!A1 or 'Sheet1:Sheet2'!A1 or 'Sheet1'!$A$1 or 'Sheet1:Sheet2'!$A$1 + } elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?[A-Ia-i]?[A-Za-z]\\$?(\d+)$/u",$token)) { + return $this->_convertRef3d($token); + + // match ranges like A1:B2 or $A$1:$B$2 + } elseif (preg_match('/^(\$)?[A-Ia-i]?[A-Za-z](\$)?(\d+)\:(\$)?[A-Ia-i]?[A-Za-z](\$)?(\d+)$/', $token)) { + return $this->_convertRange2d($token); + + // match external ranges like Sheet1!A1:B2 or Sheet1:Sheet2!A1:B2 or Sheet1!$A$1:$B$2 or Sheet1:Sheet2!$A$1:$B$2 + } elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?([A-Ia-i]?[A-Za-z])?\\$?(\d+)\:\\$?([A-Ia-i]?[A-Za-z])?\\$?(\d+)$/u",$token)) { + return $this->_convertRange3d($token); + + // match external ranges like 'Sheet1'!A1:B2 or 'Sheet1:Sheet2'!A1:B2 or 'Sheet1'!$A$1:$B$2 or 'Sheet1:Sheet2'!$A$1:$B$2 + } elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?([A-Ia-i]?[A-Za-z])?\\$?(\d+)\:\\$?([A-Ia-i]?[A-Za-z])?\\$?(\d+)$/u",$token)) { + return $this->_convertRange3d($token); + + // operators (including parentheses) + } elseif (isset($this->ptg[$token])) { + return pack("C", $this->ptg[$token]); + + // match error codes + } elseif (preg_match("/^#[A-Z0\/]{3,5}[!?]{1}$/", $token) or $token == '#N/A') { + return $this->_convertError($token); + + // commented so argument number can be processed correctly. See toReversePolish(). + /*elseif (preg_match("/[A-Z0-9\xc0-\xdc\.]+/",$token)) + { + return($this->_convertFunction($token,$this->_func_args)); + }*/ + + // if it's an argument, ignore the token (the argument remains) + } elseif ($token == 'arg') { + return ''; + } + + // TODO: use real error codes + throw new Exception("Unknown token $token"); + } + + /** + * Convert a number token to ptgInt or ptgNum + * + * @access private + * @param mixed $num an integer or double for conversion to its ptg value + */ + function _convertNumber($num) + { + // Integer in the range 0..2**16-1 + if ((preg_match("/^\d+$/", $num)) and ($num <= 65535)) { + return pack("Cv", $this->ptg['ptgInt'], $num); + } else { // A float + if (PHPExcel_Writer_Excel5_BIFFwriter::getByteOrder()) { // if it's Big Endian + $num = strrev($num); + } + return pack("Cd", $this->ptg['ptgNum'], $num); + } + } + + /** + * Convert a string token to ptgStr + * + * @access private + * @param string $string A string for conversion to its ptg value. + * @return mixed the converted token on success + */ + function _convertString($string) + { + // chop away beggining and ending quotes + $string = substr($string, 1, strlen($string) - 2); + if (strlen($string) > 255) { + throw new Exception("String is too long"); + } + + return pack('C', $this->ptg['ptgStr']) . PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort($string); + } + + /** + * Convert a function to a ptgFunc or ptgFuncVarV depending on the number of + * args that it takes. + * + * @access private + * @param string $token The name of the function for convertion to ptg value. + * @param integer $num_args The number of arguments the function receives. + * @return string The packed ptg for the function + */ + function _convertFunction($token, $num_args) + { + $args = $this->_functions[$token][1]; +// $volatile = $this->_functions[$token][3]; + + // Fixed number of args eg. TIME($i,$j,$k). + if ($args >= 0) { + return pack("Cv", $this->ptg['ptgFuncV'], $this->_functions[$token][0]); + } + // Variable number of args eg. SUM($i,$j,$k, ..). + if ($args == -1) { + return pack("CCv", $this->ptg['ptgFuncVarV'], $num_args, $this->_functions[$token][0]); + } + } + + /** + * Convert an Excel range such as A1:D4 to a ptgRefV. + * + * @access private + * @param string $range An Excel range in the A1:A2 + * @param int $class + */ + function _convertRange2d($range, $class=0) + { + + // TODO: possible class value 0,1,2 check Formula.pm + // Split the range into 2 cell refs + if (preg_match('/^(\$)?([A-Ia-i]?[A-Za-z])(\$)?(\d+)\:(\$)?([A-Ia-i]?[A-Za-z])(\$)?(\d+)$/', $range)) { + list($cell1, $cell2) = explode(':', $range); + } else { + // TODO: use real error codes + throw new Exception("Unknown range separator"); + } + + // Convert the cell references + list($row1, $col1) = $this->_cellToPackedRowcol($cell1); + list($row2, $col2) = $this->_cellToPackedRowcol($cell2); + + // The ptg value depends on the class of the ptg. + if ($class == 0) { + $ptgArea = pack("C", $this->ptg['ptgArea']); + } elseif ($class == 1) { + $ptgArea = pack("C", $this->ptg['ptgAreaV']); + } elseif ($class == 2) { + $ptgArea = pack("C", $this->ptg['ptgAreaA']); + } else { + // TODO: use real error codes + throw new Exception("Unknown class $class"); + } + return $ptgArea . $row1 . $row2 . $col1. $col2; + } + + /** + * Convert an Excel 3d range such as "Sheet1!A1:D4" or "Sheet1:Sheet2!A1:D4" to + * a ptgArea3d. + * + * @access private + * @param string $token An Excel range in the Sheet1!A1:A2 format. + * @return mixed The packed ptgArea3d token on success. + */ + function _convertRange3d($token) + { +// $class = 0; // formulas like Sheet1!$A$1:$A$2 in list type data validation need this class (0x3B) + + // Split the ref at the ! symbol + list($ext_ref, $range) = explode('!', $token); + + // Convert the external reference part (different for BIFF8) + $ext_ref = $this->_getRefIndex($ext_ref); + + // Split the range into 2 cell refs + list($cell1, $cell2) = explode(':', $range); + + // Convert the cell references + if (preg_match("/^(\\$)?[A-Ia-i]?[A-Za-z](\\$)?(\d+)$/", $cell1)) { + list($row1, $col1) = $this->_cellToPackedRowcol($cell1); + list($row2, $col2) = $this->_cellToPackedRowcol($cell2); + } else { // It's a rows range (like 26:27) + list($row1, $col1, $row2, $col2) = $this->_rangeToPackedRange($cell1.':'.$cell2); + } + + // The ptg value depends on the class of the ptg. +// if ($class == 0) { + $ptgArea = pack("C", $this->ptg['ptgArea3d']); +// } elseif ($class == 1) { +// $ptgArea = pack("C", $this->ptg['ptgArea3dV']); +// } elseif ($class == 2) { +// $ptgArea = pack("C", $this->ptg['ptgArea3dA']); +// } else { +// throw new Exception("Unknown class $class"); +// } + + return $ptgArea . $ext_ref . $row1 . $row2 . $col1. $col2; + } + + /** + * Convert an Excel reference such as A1, $B2, C$3 or $D$4 to a ptgRefV. + * + * @access private + * @param string $cell An Excel cell reference + * @return string The cell in packed() format with the corresponding ptg + */ + function _convertRef2d($cell) + { +// $class = 2; // as far as I know, this is magick. + + // Convert the cell reference + $cell_array = $this->_cellToPackedRowcol($cell); + list($row, $col) = $cell_array; + + // The ptg value depends on the class of the ptg. +// if ($class == 0) { +// $ptgRef = pack("C", $this->ptg['ptgRef']); +// } elseif ($class == 1) { +// $ptgRef = pack("C", $this->ptg['ptgRefV']); +// } elseif ($class == 2) { + $ptgRef = pack("C", $this->ptg['ptgRefA']); +// } else { +// // TODO: use real error codes +// throw new Exception("Unknown class $class"); +// } + return $ptgRef.$row.$col; + } + + /** + * Convert an Excel 3d reference such as "Sheet1!A1" or "Sheet1:Sheet2!A1" to a + * ptgRef3d. + * + * @access private + * @param string $cell An Excel cell reference + * @return mixed The packed ptgRef3d token on success. + */ + function _convertRef3d($cell) + { +// $class = 2; // as far as I know, this is magick. + + // Split the ref at the ! symbol + list($ext_ref, $cell) = explode('!', $cell); + + // Convert the external reference part (different for BIFF8) + $ext_ref = $this->_getRefIndex($ext_ref); + + // Convert the cell reference part + list($row, $col) = $this->_cellToPackedRowcol($cell); + + // The ptg value depends on the class of the ptg. +// if ($class == 0) { +// $ptgRef = pack("C", $this->ptg['ptgRef3d']); +// } elseif ($class == 1) { +// $ptgRef = pack("C", $this->ptg['ptgRef3dV']); +// } elseif ($class == 2) { + $ptgRef = pack("C", $this->ptg['ptgRef3dA']); +// } else { +// throw new Exception("Unknown class $class"); +// } + + return $ptgRef . $ext_ref. $row . $col; + } + + /** + * Convert an error code to a ptgErr + * + * @access private + * @param string $errorCode The error code for conversion to its ptg value + * @return string The error code ptgErr + */ + function _convertError($errorCode) + { + switch ($errorCode) { + case '#NULL!': return pack("C", 0x00); + case '#DIV/0!': return pack("C", 0x07); + case '#VALUE!': return pack("C", 0x0F); + case '#REF!': return pack("C", 0x17); + case '#NAME?': return pack("C", 0x1D); + case '#NUM!': return pack("C", 0x24); + case '#N/A': return pack("C", 0x2A); + } + return pack("C", 0xFF); + } + + /** + * Convert the sheet name part of an external reference, for example "Sheet1" or + * "Sheet1:Sheet2", to a packed structure. + * + * @access private + * @param string $ext_ref The name of the external reference + * @return string The reference index in packed() format + */ + function _packExtRef($ext_ref) + { + $ext_ref = preg_replace("/^'/", '', $ext_ref); // Remove leading ' if any. + $ext_ref = preg_replace("/'$/", '', $ext_ref); // Remove trailing ' if any. + + // Check if there is a sheet range eg., Sheet1:Sheet2. + if (preg_match("/:/", $ext_ref)) { + list($sheet_name1, $sheet_name2) = explode(':', $ext_ref); + + $sheet1 = $this->_getSheetIndex($sheet_name1); + if ($sheet1 == -1) { + throw new Exception("Unknown sheet name $sheet_name1 in formula"); + } + $sheet2 = $this->_getSheetIndex($sheet_name2); + if ($sheet2 == -1) { + throw new Exception("Unknown sheet name $sheet_name2 in formula"); + } + + // Reverse max and min sheet numbers if necessary + if ($sheet1 > $sheet2) { + list($sheet1, $sheet2) = array($sheet2, $sheet1); + } + } else { // Single sheet name only. + $sheet1 = $this->_getSheetIndex($ext_ref); + if ($sheet1 == -1) { + throw new Exception("Unknown sheet name $ext_ref in formula"); + } + $sheet2 = $sheet1; + } + + // References are stored relative to 0xFFFF. + $offset = -1 - $sheet1; + + return pack('vdvv', $offset, 0x00, $sheet1, $sheet2); + } + + /** + * Look up the REF index that corresponds to an external sheet name + * (or range). If it doesn't exist yet add it to the workbook's references + * array. It assumes all sheet names given must exist. + * + * @access private + * @param string $ext_ref The name of the external reference + * @return mixed The reference index in packed() format on success + */ + function _getRefIndex($ext_ref) + { + $ext_ref = preg_replace("/^'/", '', $ext_ref); // Remove leading ' if any. + $ext_ref = preg_replace("/'$/", '', $ext_ref); // Remove trailing ' if any. + $ext_ref = str_replace('\'\'', '\'', $ext_ref); // Replace escaped '' with ' + + // Check if there is a sheet range eg., Sheet1:Sheet2. + if (preg_match("/:/", $ext_ref)) { + list($sheet_name1, $sheet_name2) = explode(':', $ext_ref); + + $sheet1 = $this->_getSheetIndex($sheet_name1); + if ($sheet1 == -1) { + throw new Exception("Unknown sheet name $sheet_name1 in formula"); + } + $sheet2 = $this->_getSheetIndex($sheet_name2); + if ($sheet2 == -1) { + throw new Exception("Unknown sheet name $sheet_name2 in formula"); + } + + // Reverse max and min sheet numbers if necessary + if ($sheet1 > $sheet2) { + list($sheet1, $sheet2) = array($sheet2, $sheet1); + } + } else { // Single sheet name only. + $sheet1 = $this->_getSheetIndex($ext_ref); + if ($sheet1 == -1) { + throw new Exception("Unknown sheet name $ext_ref in formula"); + } + $sheet2 = $sheet1; + } + + // assume all references belong to this document + $supbook_index = 0x00; + $ref = pack('vvv', $supbook_index, $sheet1, $sheet2); + $total_references = count($this->_references); + $index = -1; + for ($i = 0; $i < $total_references; ++$i) { + if ($ref == $this->_references[$i]) { + $index = $i; + break; + } + } + // if REF was not found add it to references array + if ($index == -1) { + $this->_references[$total_references] = $ref; + $index = $total_references; + } + + return pack('v', $index); + } + + /** + * Look up the index that corresponds to an external sheet name. The hash of + * sheet names is updated by the addworksheet() method of the + * PHPExcel_Writer_Excel5_Workbook class. + * + * @access private + * @param string $sheet_name Sheet name + * @return integer The sheet index, -1 if the sheet was not found + */ + function _getSheetIndex($sheet_name) + { + if (!isset($this->_ext_sheets[$sheet_name])) { + return -1; + } else { + return $this->_ext_sheets[$sheet_name]; + } + } + + /** + * This method is used to update the array of sheet names. It is + * called by the addWorksheet() method of the + * PHPExcel_Writer_Excel5_Workbook class. + * + * @access public + * @see PHPExcel_Writer_Excel5_Workbook::addWorksheet() + * @param string $name The name of the worksheet being added + * @param integer $index The index of the worksheet being added + */ + function setExtSheet($name, $index) + { + $this->_ext_sheets[$name] = $index; + } + + /** + * pack() row and column into the required 3 or 4 byte format. + * + * @access private + * @param string $cell The Excel cell reference to be packed + * @return array Array containing the row and column in packed() format + */ + function _cellToPackedRowcol($cell) + { + $cell = strtoupper($cell); + list($row, $col, $row_rel, $col_rel) = $this->_cellToRowcol($cell); + if ($col >= 256) { + throw new Exception("Column in: $cell greater than 255"); + } + // FIXME: change for BIFF8 + if ($row >= 16384) { + throw new Exception("Row in: $cell greater than 16384 "); + } + + // Set the high bits to indicate if row or col are relative. + $col |= $col_rel << 14; + $col |= $row_rel << 15; + $col = pack('v', $col); + + $row = pack('v', $row); + + return array($row, $col); + } + + /** + * pack() row range into the required 3 or 4 byte format. + * Just using maximum col/rows, which is probably not the correct solution + * + * @access private + * @param string $range The Excel range to be packed + * @return array Array containing (row1,col1,row2,col2) in packed() format + */ + function _rangeToPackedRange($range) + { + preg_match('/(\$)?(\d+)\:(\$)?(\d+)/', $range, $match); + // return absolute rows if there is a $ in the ref + $row1_rel = empty($match[1]) ? 1 : 0; + $row1 = $match[2]; + $row2_rel = empty($match[3]) ? 1 : 0; + $row2 = $match[4]; + // Convert 1-index to zero-index + --$row1; + --$row2; + // Trick poor inocent Excel + $col1 = 0; + $col2 = 16383; // FIXME: maximum possible value for Excel 5 (change this!!!) + + // FIXME: this changes for BIFF8 + if (($row1 >= 16384) or ($row2 >= 16384)) { + throw new Exception("Row in: $range greater than 16384 "); + } + + // Set the high bits to indicate if rows are relative. + $col1 |= $row1_rel << 15; + $col2 |= $row2_rel << 15; + $col1 = pack('v', $col1); + $col2 = pack('v', $col2); + + $row1 = pack('v', $row1); + $row2 = pack('v', $row2); + + return array($row1, $col1, $row2, $col2); + } + + /** + * Convert an Excel cell reference such as A1 or $B2 or C$3 or $D$4 to a zero + * indexed row and column number. Also returns two (0,1) values to indicate + * whether the row or column are relative references. + * + * @access private + * @param string $cell The Excel cell reference in A1 format. + * @return array + */ + function _cellToRowcol($cell) + { + preg_match('/(\$)?([A-I]?[A-Z])(\$)?(\d+)/',$cell,$match); + // return absolute column if there is a $ in the ref + $col_rel = empty($match[1]) ? 1 : 0; + $col_ref = $match[2]; + $row_rel = empty($match[3]) ? 1 : 0; + $row = $match[4]; + + // Convert base26 column string to a number. + $expn = strlen($col_ref) - 1; + $col = 0; + $col_ref_length = strlen($col_ref); + for ($i = 0; $i < $col_ref_length; ++$i) { + $col += (ord($col_ref{$i}) - 64) * pow(26, $expn); + --$expn; + } + + // Convert 1-index to zero-index + --$row; + --$col; + + return array($row, $col, $row_rel, $col_rel); + } + + /** + * Advance to the next valid token. + * + * @access private + */ + function _advance() + { + $i = $this->_current_char; + $formula_length = strlen($this->_formula); + // eat up white spaces + if ($i < $formula_length) { + while ($this->_formula{$i} == " ") { + ++$i; + } + + if ($i < ($formula_length - 1)) { + $this->_lookahead = $this->_formula{$i+1}; + } + $token = ''; + } + + while ($i < $formula_length) { + $token .= $this->_formula{$i}; + + if ($i < ($formula_length - 1)) { + $this->_lookahead = $this->_formula{$i+1}; + } else { + $this->_lookahead = ''; + } + + if ($this->_match($token) != '') { + //if ($i < strlen($this->_formula) - 1) { + // $this->_lookahead = $this->_formula{$i+1}; + //} + $this->_current_char = $i + 1; + $this->_current_token = $token; + return 1; + } + + if ($i < ($formula_length - 2)) { + $this->_lookahead = $this->_formula{$i+2}; + } else { // if we run out of characters _lookahead becomes empty + $this->_lookahead = ''; + } + ++$i; + } + //die("Lexical error ".$this->_current_char); + } + + /** + * Checks if it's a valid token. + * + * @access private + * @param mixed $token The token to check. + * @return mixed The checked token or false on failure + */ + function _match($token) + { + switch($token) { + case "+": + case "-": + case "*": + case "/": + case "(": + case ")": + case ",": + case ";": + case ">=": + case "<=": + case "=": + case "<>": + case "^": + case "&": + case "%": + return $token; + break; + case ">": + if ($this->_lookahead == '=') { // it's a GE token + break; + } + return $token; + break; + case "<": + // it's a LE or a NE token + if (($this->_lookahead == '=') or ($this->_lookahead == '>')) { + break; + } + return $token; + break; + default: + // if it's a reference A1 or $A$1 or $A1 or A$1 + if (preg_match('/^\$?[A-Ia-i]?[A-Za-z]\$?[0-9]+$/',$token) and + !preg_match("/[0-9]/",$this->_lookahead) and + ($this->_lookahead != ':') and ($this->_lookahead != '.') and + ($this->_lookahead != '!')) + { + return $token; + } + // If it's an external reference (Sheet1!A1 or Sheet1:Sheet2!A1 or Sheet1!$A$1 or Sheet1:Sheet2!$A$1) + elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?[A-Ia-i]?[A-Za-z]\\$?[0-9]+$/u",$token) and + !preg_match("/[0-9]/",$this->_lookahead) and + ($this->_lookahead != ':') and ($this->_lookahead != '.')) + { + return $token; + } + // If it's an external reference ('Sheet1'!A1 or 'Sheet1:Sheet2'!A1 or 'Sheet1'!$A$1 or 'Sheet1:Sheet2'!$A$1) + elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?[A-Ia-i]?[A-Za-z]\\$?[0-9]+$/u",$token) and + !preg_match("/[0-9]/",$this->_lookahead) and + ($this->_lookahead != ':') and ($this->_lookahead != '.')) + { + return $token; + } + // if it's a range A1:A2 or $A$1:$A$2 + elseif (preg_match('/^(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+:(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+$/', $token) and + !preg_match("/[0-9]/",$this->_lookahead)) + { + return $token; + } + // If it's an external range like Sheet1!A1:B2 or Sheet1:Sheet2!A1:B2 or Sheet1!$A$1:$B$2 or Sheet1:Sheet2!$A$1:$B$2 + elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+:\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+$/u",$token) and + !preg_match("/[0-9]/",$this->_lookahead)) + { + return $token; + } + // If it's an external range like 'Sheet1'!A1:B2 or 'Sheet1:Sheet2'!A1:B2 or 'Sheet1'!$A$1:$B$2 or 'Sheet1:Sheet2'!$A$1:$B$2 + elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+:\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+$/u",$token) and + !preg_match("/[0-9]/",$this->_lookahead)) + { + return $token; + } + // If it's a number (check that it's not a sheet name or range) + elseif (is_numeric($token) and + (!is_numeric($token.$this->_lookahead) or ($this->_lookahead == '')) and + ($this->_lookahead != '!') and ($this->_lookahead != ':')) + { + return $token; + } + // If it's a string (of maximum 255 characters) + elseif (preg_match("/\"([^\"]|\"\"){0,255}\"/",$token) and $this->_lookahead != '"' and (substr_count($token, '"')%2 == 0)) + { + return $token; + } + // If it's an error code + elseif (preg_match("/^#[A-Z0\/]{3,5}[!?]{1}$/", $token) or $token == '#N/A') + { + return $token; + } + // if it's a function call + elseif (preg_match("/^[A-Z0-9\xc0-\xdc\.]+$/i",$token) and ($this->_lookahead == "(")) + { + return $token; + } + // It's an argument of some description (e.g. a named range), + // precise nature yet to be determined + elseif(substr($token,-1) == ')') { + return $token; + } + return ''; + } + } + + /** + * The parsing method. It parses a formula. + * + * @access public + * @param string $formula The formula to parse, without the initial equal + * sign (=). + * @return mixed true on success + */ + function parse($formula) + { + $this->_current_char = 0; + $this->_formula = $formula; + $this->_lookahead = isset($formula{1}) ? $formula{1} : ''; + $this->_advance(); + $this->_parse_tree = $this->_condition(); + return true; + } + + /** + * It parses a condition. It assumes the following rule: + * Cond -> Expr [(">" | "<") Expr] + * + * @access private + * @return mixed The parsed ptg'd tree on success + */ + function _condition() + { + $result = $this->_expression(); + if ($this->_current_token == "<") { + $this->_advance(); + $result2 = $this->_expression(); + $result = $this->_createTree('ptgLT', $result, $result2); + } elseif ($this->_current_token == ">") { + $this->_advance(); + $result2 = $this->_expression(); + $result = $this->_createTree('ptgGT', $result, $result2); + } elseif ($this->_current_token == "<=") { + $this->_advance(); + $result2 = $this->_expression(); + $result = $this->_createTree('ptgLE', $result, $result2); + } elseif ($this->_current_token == ">=") { + $this->_advance(); + $result2 = $this->_expression(); + $result = $this->_createTree('ptgGE', $result, $result2); + } elseif ($this->_current_token == "=") { + $this->_advance(); + $result2 = $this->_expression(); + $result = $this->_createTree('ptgEQ', $result, $result2); + } elseif ($this->_current_token == "<>") { + $this->_advance(); + $result2 = $this->_expression(); + $result = $this->_createTree('ptgNE', $result, $result2); + } elseif ($this->_current_token == "&") { + $this->_advance(); + $result2 = $this->_expression(); + $result = $this->_createTree('ptgConcat', $result, $result2); + } + return $result; + } + + /** + * It parses a expression. It assumes the following rule: + * Expr -> Term [("+" | "-") Term] + * -> "string" + * -> "-" Term : Negative value + * -> "+" Term : Positive value + * -> Error code + * + * @access private + * @return mixed The parsed ptg'd tree on success + */ + function _expression() + { + // If it's a string return a string node + if (preg_match("/\"([^\"]|\"\"){0,255}\"/", $this->_current_token)) { + $tmp = str_replace('""', '"', $this->_current_token); + if (($tmp == '"') || ($tmp == '')) $tmp = '""'; // Trap for "" that has been used for an empty string + $result = $this->_createTree($tmp, '', ''); + $this->_advance(); + return $result; + // If it's an error code + } elseif (preg_match("/^#[A-Z0\/]{3,5}[!?]{1}$/", $this->_current_token) or $this->_current_token == '#N/A'){ + $result = $this->_createTree($this->_current_token, 'ptgErr', ''); + $this->_advance(); + return $result; + // If it's a negative value + } elseif ($this->_current_token == "-") { + // catch "-" Term + $this->_advance(); + $result2 = $this->_expression(); + $result = $this->_createTree('ptgUminus', $result2, ''); + return $result; + // If it's a positive value + } elseif ($this->_current_token == "+") { + // catch "+" Term + $this->_advance(); + $result2 = $this->_expression(); + $result = $this->_createTree('ptgUplus', $result2, ''); + return $result; + } + $result = $this->_term(); + while (($this->_current_token == "+") or + ($this->_current_token == "-") or + ($this->_current_token == "^")) { + /**/ + if ($this->_current_token == "+") { + $this->_advance(); + $result2 = $this->_term(); + $result = $this->_createTree('ptgAdd', $result, $result2); + } elseif ($this->_current_token == "-") { + $this->_advance(); + $result2 = $this->_term(); + $result = $this->_createTree('ptgSub', $result, $result2); + } else { + $this->_advance(); + $result2 = $this->_term(); + $result = $this->_createTree('ptgPower', $result, $result2); + } + } + return $result; + } + + /** + * This function just introduces a ptgParen element in the tree, so that Excel + * doesn't get confused when working with a parenthesized formula afterwards. + * + * @access private + * @see _fact() + * @return array The parsed ptg'd tree + */ + function _parenthesizedExpression() + { + $result = $this->_createTree('ptgParen', $this->_expression(), ''); + return $result; + } + + /** + * It parses a term. It assumes the following rule: + * Term -> Fact [("*" | "/") Fact] + * + * @access private + * @return mixed The parsed ptg'd tree on success + */ + function _term() + { + $result = $this->_fact(); + while (($this->_current_token == "*") or + ($this->_current_token == "/")) { + /**/ + if ($this->_current_token == "*") { + $this->_advance(); + $result2 = $this->_fact(); + $result = $this->_createTree('ptgMul', $result, $result2); + } else { + $this->_advance(); + $result2 = $this->_fact(); + $result = $this->_createTree('ptgDiv', $result, $result2); + } + } + return $result; + } + + /** + * It parses a factor. It assumes the following rule: + * Fact -> ( Expr ) + * | CellRef + * | CellRange + * | Number + * | Function + * + * @access private + * @return mixed The parsed ptg'd tree on success + */ + function _fact() + { + if ($this->_current_token == "(") { + $this->_advance(); // eat the "(" + $result = $this->_parenthesizedExpression(); + if ($this->_current_token != ")") { + throw new Exception("')' token expected."); + } + $this->_advance(); // eat the ")" + return $result; + } + // if it's a reference + if (preg_match('/^\$?[A-Ia-i]?[A-Za-z]\$?[0-9]+$/',$this->_current_token)) + { + $result = $this->_createTree($this->_current_token, '', ''); + $this->_advance(); + return $result; + } + // If it's an external reference (Sheet1!A1 or Sheet1:Sheet2!A1 or Sheet1!$A$1 or Sheet1:Sheet2!$A$1) + elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?[A-Ia-i]?[A-Za-z]\\$?[0-9]+$/u",$this->_current_token)) + { + $result = $this->_createTree($this->_current_token, '', ''); + $this->_advance(); + return $result; + } + // If it's an external reference ('Sheet1'!A1 or 'Sheet1:Sheet2'!A1 or 'Sheet1'!$A$1 or 'Sheet1:Sheet2'!$A$1) + elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?[A-Ia-i]?[A-Za-z]\\$?[0-9]+$/u",$this->_current_token)) + { + $result = $this->_createTree($this->_current_token, '', ''); + $this->_advance(); + return $result; + } + // if it's a range A1:B2 or $A$1:$B$2 + elseif (preg_match('/^(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+:(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+$/',$this->_current_token) or + preg_match('/^(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+\.\.(\$)?[A-Ia-i]?[A-Za-z](\$)?[0-9]+$/',$this->_current_token)) + { + // must be an error? + $result = $this->_createTree($this->_current_token, '', ''); + $this->_advance(); + return $result; + } + // If it's an external range (Sheet1!A1:B2 or Sheet1:Sheet2!A1:B2 or Sheet1!$A$1:$B$2 or Sheet1:Sheet2!$A$1:$B$2) + elseif (preg_match("/^" . self::REGEX_SHEET_TITLE_UNQUOTED . "(\:" . self::REGEX_SHEET_TITLE_UNQUOTED . ")?\!\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+:\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+$/u",$this->_current_token)) + { + // must be an error? + //$result = $this->_current_token; + $result = $this->_createTree($this->_current_token, '', ''); + $this->_advance(); + return $result; + } + // If it's an external range ('Sheet1'!A1:B2 or 'Sheet1'!A1:B2 or 'Sheet1'!$A$1:$B$2 or 'Sheet1'!$A$1:$B$2) + elseif (preg_match("/^'" . self::REGEX_SHEET_TITLE_QUOTED . "(\:" . self::REGEX_SHEET_TITLE_QUOTED . ")?'\!\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+:\\$?([A-Ia-i]?[A-Za-z])?\\$?[0-9]+$/u",$this->_current_token)) + { + // must be an error? + //$result = $this->_current_token; + $result = $this->_createTree($this->_current_token, '', ''); + $this->_advance(); + return $result; + } + // If it's a number or a percent + elseif (is_numeric($this->_current_token)) + { + if($this->_lookahead == '%'){ + $result = $this->_createTree('ptgPercent', $this->_current_token, ''); + } else { + $result = $this->_createTree($this->_current_token, '', ''); + } + $this->_advance(); + return $result; + } + // if it's a function call + elseif (preg_match("/^[A-Z0-9\xc0-\xdc\.]+$/i",$this->_current_token)) + { + $result = $this->_func(); + return $result; + } + throw new Exception("Syntax error: ".$this->_current_token. + ", lookahead: ".$this->_lookahead. + ", current char: ".$this->_current_char); + } + + /** + * It parses a function call. It assumes the following rule: + * Func -> ( Expr [,Expr]* ) + * + * @access private + * @return mixed The parsed ptg'd tree on success + */ + function _func() + { + $num_args = 0; // number of arguments received + $function = strtoupper($this->_current_token); + $result = ''; // initialize result + $this->_advance(); + $this->_advance(); // eat the "(" + while ($this->_current_token != ')') { + /**/ + if ($num_args > 0) { + if ($this->_current_token == "," or + $this->_current_token == ";") + { + $this->_advance(); // eat the "," or ";" + } else { + throw new Exception("Syntax error: comma expected in ". + "function $function, arg #{$num_args}"); + } + $result2 = $this->_condition(); + $result = $this->_createTree('arg', $result, $result2); + } else { // first argument + $result2 = $this->_condition(); + $result = $this->_createTree('arg', '', $result2); + } + ++$num_args; + } + if (!isset($this->_functions[$function])) { + throw new Exception("Function $function() doesn't exist"); + } + $args = $this->_functions[$function][1]; + // If fixed number of args eg. TIME($i,$j,$k). Check that the number of args is valid. + if (($args >= 0) and ($args != $num_args)) { + throw new Exception("Incorrect number of arguments in function $function() "); + } + + $result = $this->_createTree($function, $result, $num_args); + $this->_advance(); // eat the ")" + return $result; + } + + /** + * Creates a tree. In fact an array which may have one or two arrays (sub-trees) + * as elements. + * + * @access private + * @param mixed $value The value of this node. + * @param mixed $left The left array (sub-tree) or a final node. + * @param mixed $right The right array (sub-tree) or a final node. + * @return array A tree + */ + function _createTree($value, $left, $right) + { + return array('value' => $value, 'left' => $left, 'right' => $right); + } + + /** + * Builds a string containing the tree in reverse polish notation (What you + * would use in a HP calculator stack). + * The following tree: + * + * + + * / \ + * 2 3 + * + * produces: "23+" + * + * The following tree: + * + * + + * / \ + * 3 * + * / \ + * 6 A1 + * + * produces: "36A1*+" + * + * In fact all operands, functions, references, etc... are written as ptg's + * + * @access public + * @param array $tree The optional tree to convert. + * @return string The tree in reverse polish notation + */ + function toReversePolish($tree = array()) + { + $polish = ""; // the string we are going to return + if (empty($tree)) { // If it's the first call use _parse_tree + $tree = $this->_parse_tree; + } + + if (is_array($tree['left'])) { + $converted_tree = $this->toReversePolish($tree['left']); + $polish .= $converted_tree; + } elseif ($tree['left'] != '') { // It's a final node + $converted_tree = $this->_convert($tree['left']); + $polish .= $converted_tree; + } + if (is_array($tree['right'])) { + $converted_tree = $this->toReversePolish($tree['right']); + $polish .= $converted_tree; + } elseif ($tree['right'] != '') { // It's a final node + $converted_tree = $this->_convert($tree['right']); + $polish .= $converted_tree; + } + // if it's a function convert it here (so we can set it's arguments) + if (preg_match("/^[A-Z0-9\xc0-\xdc\.]+$/",$tree['value']) and + !preg_match('/^([A-Ia-i]?[A-Za-z])(\d+)$/',$tree['value']) and + !preg_match("/^[A-Ia-i]?[A-Za-z](\d+)\.\.[A-Ia-i]?[A-Za-z](\d+)$/",$tree['value']) and + !is_numeric($tree['value']) and + !isset($this->ptg[$tree['value']])) + { + // left subtree for a function is always an array. + if ($tree['left'] != '') { + $left_tree = $this->toReversePolish($tree['left']); + } else { + $left_tree = ''; + } + // add it's left subtree and return. + return $left_tree.$this->_convertFunction($tree['value'], $tree['right']); + } else { + $converted_tree = $this->_convert($tree['value']); + } + $polish .= $converted_tree; + return $polish; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Workbook.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Workbook.php new file mode 100644 index 0000000..2e177ce --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Workbook.php @@ -0,0 +1,1450 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +// Original file header of PEAR::Spreadsheet_Excel_Writer_Workbook (used as the base for this class): +// ----------------------------------------------------------------------------------------- +// /* +// * Module written/ported by Xavier Noguer <xnoguer@rezebra.com> +// * +// * The majority of this is _NOT_ my code. I simply ported it from the +// * PERL Spreadsheet::WriteExcel module. +// * +// * The author of the Spreadsheet::WriteExcel module is John McNamara +// * <jmcnamara@cpan.org> +// * +// * I _DO_ maintain this code, and John McNamara has nothing to do with the +// * porting of this code to PHP. Any questions directly related to this +// * class library should be directed to me. +// * +// * License Information: +// * +// * Spreadsheet_Excel_Writer: A library for generating Excel Spreadsheets +// * Copyright (c) 2002-2003 Xavier Noguer xnoguer@rezebra.com +// * +// * 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 library 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 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 +// */ + + +/** + * PHPExcel_Writer_Excel5_Workbook + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel5_Workbook extends PHPExcel_Writer_Excel5_BIFFwriter +{ + /** + * Formula parser + * + * @var PHPExcel_Writer_Excel5_Parser + */ + private $_parser; + + /** + * The BIFF file size for the workbook. + * @var integer + * @see _calcSheetOffsets() + */ + public $_biffsize; + + /** + * XF Writers + * @var PHPExcel_Writer_Excel5_Xf[] + */ + private $_xfWriters = array(); + + /** + * Array containing the colour palette + * @var array + */ + public $_palette; + + /** + * The codepage indicates the text encoding used for strings + * @var integer + */ + public $_codepage; + + /** + * The country code used for localization + * @var integer + */ + public $_country_code; + + /** + * Workbook + * @var PHPExcel + */ + private $_phpExcel; + + /** + * Fonts writers + * + * @var PHPExcel_Writer_Excel5_Font[] + */ + private $_fontWriters = array(); + + /** + * Added fonts. Maps from font's hash => index in workbook + * + * @var array + */ + private $_addedFonts = array(); + + /** + * Shared number formats + * + * @var array + */ + private $_numberFormats = array(); + + /** + * Added number formats. Maps from numberFormat's hash => index in workbook + * + * @var array + */ + private $_addedNumberFormats = array(); + + /** + * Sizes of the binary worksheet streams + * + * @var array + */ + private $_worksheetSizes = array(); + + /** + * Offsets of the binary worksheet streams relative to the start of the global workbook stream + * + * @var array + */ + private $_worksheetOffsets = array(); + + /** + * Total number of shared strings in workbook + * + * @var int + */ + private $_str_total; + + /** + * Number of unique shared strings in workbook + * + * @var int + */ + private $_str_unique; + + /** + * Array of unique shared strings in workbook + * + * @var array + */ + private $_str_table; + + /** + * Color cache + */ + private $_colors; + + /** + * Escher object corresponding to MSODRAWINGGROUP + * + * @var PHPExcel_Shared_Escher + */ + private $_escher; + + + /** + * Class constructor + * + * @param PHPExcel $phpExcel The Workbook + * @param int &$str_total Total number of strings + * @param int &$str_unique Total number of unique strings + * @param array &$str_table String Table + * @param array &$colors Colour Table + * @param mixed $parser The formula parser created for the Workbook + */ + public function __construct(PHPExcel $phpExcel = null, + &$str_total, &$str_unique, &$str_table, &$colors, + $parser ) + { + // It needs to call its parent's constructor explicitly + parent::__construct(); + + $this->_parser = $parser; + $this->_biffsize = 0; + $this->_palette = array(); + $this->_country_code = -1; + + $this->_str_total = &$str_total; + $this->_str_unique = &$str_unique; + $this->_str_table = &$str_table; + $this->_colors = &$colors; + $this->_setPaletteXl97(); + + $this->_phpExcel = $phpExcel; + + // set BIFFwriter limit for CONTINUE records + // $this->_limit = 8224; + $this->_codepage = 0x04B0; + + // Add empty sheets and Build color cache + $countSheets = $phpExcel->getSheetCount(); + for ($i = 0; $i < $countSheets; ++$i) { + $phpSheet = $phpExcel->getSheet($i); + + $this->_parser->setExtSheet($phpSheet->getTitle(), $i); // Register worksheet name with parser + + $supbook_index = 0x00; + $ref = pack('vvv', $supbook_index, $i, $i); + $this->_parser->_references[] = $ref; // Register reference with parser + + // Sheet tab colors? + if ($phpSheet->isTabColorSet()) { + $this->_addColor($phpSheet->getTabColor()->getRGB()); + } + } + + } + + /** + * Add a new XF writer + * + * @param PHPExcel_Style + * @param boolean Is it a style XF? + * @return int Index to XF record + */ + public function addXfWriter($style, $isStyleXf = false) + { + $xfWriter = new PHPExcel_Writer_Excel5_Xf($style); + $xfWriter->setIsStyleXf($isStyleXf); + + // Add the font if not already added + $fontIndex = $this->_addFont($style->getFont()); + + // Assign the font index to the xf record + $xfWriter->setFontIndex($fontIndex); + + // Background colors, best to treat these after the font so black will come after white in custom palette + $xfWriter->setFgColor($this->_addColor($style->getFill()->getStartColor()->getRGB())); + $xfWriter->setBgColor($this->_addColor($style->getFill()->getEndColor()->getRGB())); + $xfWriter->setBottomColor($this->_addColor($style->getBorders()->getBottom()->getColor()->getRGB())); + $xfWriter->setTopColor($this->_addColor($style->getBorders()->getTop()->getColor()->getRGB())); + $xfWriter->setRightColor($this->_addColor($style->getBorders()->getRight()->getColor()->getRGB())); + $xfWriter->setLeftColor($this->_addColor($style->getBorders()->getLeft()->getColor()->getRGB())); + $xfWriter->setDiagColor($this->_addColor($style->getBorders()->getDiagonal()->getColor()->getRGB())); + + // Add the number format if it is not a built-in one and not already added + if ($style->getNumberFormat()->getBuiltInFormatCode() === false) { + $numberFormatHashCode = $style->getNumberFormat()->getHashCode(); + + if (isset($this->_addedNumberFormats[$numberFormatHashCode])) { + $numberFormatIndex = $this->_addedNumberFormats[$numberFormatHashCode]; + } else { + $numberFormatIndex = 164 + count($this->_numberFormats); + $this->_numberFormats[$numberFormatIndex] = $style->getNumberFormat(); + $this->_addedNumberFormats[$numberFormatHashCode] = $numberFormatIndex; + } + } else { + $numberFormatIndex = (int) $style->getNumberFormat()->getBuiltInFormatCode(); + } + + // Assign the number format index to xf record + $xfWriter->setNumberFormatIndex($numberFormatIndex); + + $this->_xfWriters[] = $xfWriter; + + $xfIndex = count($this->_xfWriters) - 1; + return $xfIndex; + } + + /** + * Add a font to added fonts + * + * @param PHPExcel_Style_Font $font + * @return int Index to FONT record + */ + public function _addFont(PHPExcel_Style_Font $font) + { + $fontHashCode = $font->getHashCode(); + if(isset($this->_addedFonts[$fontHashCode])){ + $fontIndex = $this->_addedFonts[$fontHashCode]; + } else { + $countFonts = count($this->_fontWriters); + $fontIndex = ($countFonts < 4) ? $countFonts : $countFonts + 1; + + $fontWriter = new PHPExcel_Writer_Excel5_Font($font); + $fontWriter->setColorIndex($this->_addColor($font->getColor()->getRGB())); + $this->_fontWriters[] = $fontWriter; + + $this->_addedFonts[$fontHashCode] = $fontIndex; + } + return $fontIndex; + } + /** + * Alter color palette adding a custom color + * + * @param string $rgb E.g. 'FF00AA' + * @return int Color index + */ + private function _addColor($rgb) { + if (!isset($this->_colors[$rgb])) { + if (count($this->_colors) < 57) { + // then we add a custom color altering the palette + $colorIndex = 8 + count($this->_colors); + $this->_palette[$colorIndex] = + array( + hexdec(substr($rgb, 0, 2)), + hexdec(substr($rgb, 2, 2)), + hexdec(substr($rgb, 4)), + 0 + ); + $this->_colors[$rgb] = $colorIndex; + } else { + // no room for more custom colors, just map to black + $colorIndex = 0; + } + } else { + // fetch already added custom color + $colorIndex = $this->_colors[$rgb]; + } + + return $colorIndex; + } + + /** + * Sets the colour palette to the Excel 97+ default. + * + * @access private + */ + function _setPaletteXl97() + { + $this->_palette = array( + 0x08 => array(0x00, 0x00, 0x00, 0x00), + 0x09 => array(0xff, 0xff, 0xff, 0x00), + 0x0A => array(0xff, 0x00, 0x00, 0x00), + 0x0B => array(0x00, 0xff, 0x00, 0x00), + 0x0C => array(0x00, 0x00, 0xff, 0x00), + 0x0D => array(0xff, 0xff, 0x00, 0x00), + 0x0E => array(0xff, 0x00, 0xff, 0x00), + 0x0F => array(0x00, 0xff, 0xff, 0x00), + 0x10 => array(0x80, 0x00, 0x00, 0x00), + 0x11 => array(0x00, 0x80, 0x00, 0x00), + 0x12 => array(0x00, 0x00, 0x80, 0x00), + 0x13 => array(0x80, 0x80, 0x00, 0x00), + 0x14 => array(0x80, 0x00, 0x80, 0x00), + 0x15 => array(0x00, 0x80, 0x80, 0x00), + 0x16 => array(0xc0, 0xc0, 0xc0, 0x00), + 0x17 => array(0x80, 0x80, 0x80, 0x00), + 0x18 => array(0x99, 0x99, 0xff, 0x00), + 0x19 => array(0x99, 0x33, 0x66, 0x00), + 0x1A => array(0xff, 0xff, 0xcc, 0x00), + 0x1B => array(0xcc, 0xff, 0xff, 0x00), + 0x1C => array(0x66, 0x00, 0x66, 0x00), + 0x1D => array(0xff, 0x80, 0x80, 0x00), + 0x1E => array(0x00, 0x66, 0xcc, 0x00), + 0x1F => array(0xcc, 0xcc, 0xff, 0x00), + 0x20 => array(0x00, 0x00, 0x80, 0x00), + 0x21 => array(0xff, 0x00, 0xff, 0x00), + 0x22 => array(0xff, 0xff, 0x00, 0x00), + 0x23 => array(0x00, 0xff, 0xff, 0x00), + 0x24 => array(0x80, 0x00, 0x80, 0x00), + 0x25 => array(0x80, 0x00, 0x00, 0x00), + 0x26 => array(0x00, 0x80, 0x80, 0x00), + 0x27 => array(0x00, 0x00, 0xff, 0x00), + 0x28 => array(0x00, 0xcc, 0xff, 0x00), + 0x29 => array(0xcc, 0xff, 0xff, 0x00), + 0x2A => array(0xcc, 0xff, 0xcc, 0x00), + 0x2B => array(0xff, 0xff, 0x99, 0x00), + 0x2C => array(0x99, 0xcc, 0xff, 0x00), + 0x2D => array(0xff, 0x99, 0xcc, 0x00), + 0x2E => array(0xcc, 0x99, 0xff, 0x00), + 0x2F => array(0xff, 0xcc, 0x99, 0x00), + 0x30 => array(0x33, 0x66, 0xff, 0x00), + 0x31 => array(0x33, 0xcc, 0xcc, 0x00), + 0x32 => array(0x99, 0xcc, 0x00, 0x00), + 0x33 => array(0xff, 0xcc, 0x00, 0x00), + 0x34 => array(0xff, 0x99, 0x00, 0x00), + 0x35 => array(0xff, 0x66, 0x00, 0x00), + 0x36 => array(0x66, 0x66, 0x99, 0x00), + 0x37 => array(0x96, 0x96, 0x96, 0x00), + 0x38 => array(0x00, 0x33, 0x66, 0x00), + 0x39 => array(0x33, 0x99, 0x66, 0x00), + 0x3A => array(0x00, 0x33, 0x00, 0x00), + 0x3B => array(0x33, 0x33, 0x00, 0x00), + 0x3C => array(0x99, 0x33, 0x00, 0x00), + 0x3D => array(0x99, 0x33, 0x66, 0x00), + 0x3E => array(0x33, 0x33, 0x99, 0x00), + 0x3F => array(0x33, 0x33, 0x33, 0x00), + ); + } + + /** + * Assemble worksheets into a workbook and send the BIFF data to an OLE + * storage. + * + * @param array $pWorksheetSizes The sizes in bytes of the binary worksheet streams + * @return string Binary data for workbook stream + */ + public function writeWorkbook($pWorksheetSizes = null) + { + $this->_worksheetSizes = $pWorksheetSizes; + + // Calculate the number of selected worksheet tabs and call the finalization + // methods for each worksheet + $total_worksheets = $this->_phpExcel->getSheetCount(); + + // Add part 1 of the Workbook globals, what goes before the SHEET records + $this->_storeBof(0x0005); + $this->_writeCodepage(); + $this->_writeWindow1(); + + $this->_writeDatemode(); + $this->_writeAllFonts(); + $this->_writeAllNumFormats(); + $this->_writeAllXfs(); + $this->_writeAllStyles(); + $this->_writePalette(); + + // Prepare part 3 of the workbook global stream, what goes after the SHEET records + $part3 = ''; + if ($this->_country_code != -1) { + $part3 .= $this->_writeCountry(); + } + $part3 .= $this->_writeRecalcId(); + + $part3 .= $this->_writeSupbookInternal(); + /* TODO: store external SUPBOOK records and XCT and CRN records + in case of external references for BIFF8 */ + $part3 .= $this->_writeExternsheetBiff8(); + $part3 .= $this->_writeAllDefinedNamesBiff8(); + $part3 .= $this->_writeMsoDrawingGroup(); + $part3 .= $this->_writeSharedStringsTable(); + + $part3 .= $this->writeEof(); + + // Add part 2 of the Workbook globals, the SHEET records + $this->_calcSheetOffsets(); + for ($i = 0; $i < $total_worksheets; ++$i) { + $this->_writeBoundsheet($this->_phpExcel->getSheet($i), $this->_worksheetOffsets[$i]); + } + + // Add part 3 of the Workbook globals + $this->_data .= $part3; + + return $this->_data; + } + + /** + * Calculate offsets for Worksheet BOF records. + * + * @access private + */ + function _calcSheetOffsets() + { + $boundsheet_length = 10; // fixed length for a BOUNDSHEET record + + // size of Workbook globals part 1 + 3 + $offset = $this->_datasize; + + // add size of Workbook globals part 2, the length of the SHEET records + $total_worksheets = count($this->_phpExcel->getAllSheets()); + foreach ($this->_phpExcel->getWorksheetIterator() as $sheet) { + $offset += $boundsheet_length + strlen(PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort($sheet->getTitle())); + } + + // add the sizes of each of the Sheet substreams, respectively + for ($i = 0; $i < $total_worksheets; ++$i) { + $this->_worksheetOffsets[$i] = $offset; + $offset += $this->_worksheetSizes[$i]; + } + $this->_biffsize = $offset; + } + + /** + * Store the Excel FONT records. + */ + private function _writeAllFonts() + { + foreach ($this->_fontWriters as $fontWriter) { + $this->_append($fontWriter->writeFont()); + } + } + + /** + * Store user defined numerical formats i.e. FORMAT records + */ + private function _writeAllNumFormats() + { + foreach ($this->_numberFormats as $numberFormatIndex => $numberFormat) { + $this->_writeNumFormat($numberFormat->getFormatCode(), $numberFormatIndex); + } + } + + /** + * Write all XF records. + */ + private function _writeAllXfs() + { + foreach ($this->_xfWriters as $xfWriter) { + $this->_append($xfWriter->writeXf()); + } + } + + /** + * Write all STYLE records. + */ + private function _writeAllStyles() + { + $this->_writeStyle(); + } + + /** + * Write the EXTERNCOUNT and EXTERNSHEET records. These are used as indexes for + * the NAME records. + */ + private function _writeExterns() + { + $countSheets = $this->_phpExcel->getSheetCount(); + // Create EXTERNCOUNT with number of worksheets + $this->_writeExterncount($countSheets); + + // Create EXTERNSHEET for each worksheet + for ($i = 0; $i < $countSheets; ++$i) { + $this->_writeExternsheet($this->_phpExcel->getSheet($i)->getTitle()); + } + } + + /** + * Write the NAME record to define the print area and the repeat rows and cols. + */ + private function _writeNames() + { + // total number of sheets + $total_worksheets = $this->_phpExcel->getSheetCount(); + + // Create the print area NAME records + for ($i = 0; $i < $total_worksheets; ++$i) { + $sheetSetup = $this->_phpExcel->getSheet($i)->getPageSetup(); + // Write a Name record if the print area has been defined + if ($sheetSetup->isPrintAreaSet()) { + // Print area + $printArea = PHPExcel_Cell::splitRange($sheetSetup->getPrintArea()); + $printArea = $printArea[0]; + $printArea[0] = PHPExcel_Cell::coordinateFromString($printArea[0]); + $printArea[1] = PHPExcel_Cell::coordinateFromString($printArea[1]); + + $print_rowmin = $printArea[0][1] - 1; + $print_rowmax = $printArea[1][1] - 1; + $print_colmin = PHPExcel_Cell::columnIndexFromString($printArea[0][0]) - 1; + $print_colmax = PHPExcel_Cell::columnIndexFromString($printArea[1][0]) - 1; + + $this->_writeNameShort( + $i, // sheet index + 0x06, // NAME type + $print_rowmin, + $print_rowmax, + $print_colmin, + $print_colmax + ); + } + } + + // Create the print title NAME records + for ($i = 0; $i < $total_worksheets; ++$i) { + $sheetSetup = $this->_phpExcel->getSheet($i)->getPageSetup(); + + // simultaneous repeatColumns repeatRows + if ($sheetSetup->isColumnsToRepeatAtLeftSet() && $sheetSetup->isRowsToRepeatAtTopSet()) { + $repeat = $sheetSetup->getColumnsToRepeatAtLeft(); + $colmin = PHPExcel_Cell::columnIndexFromString($repeat[0]) - 1; + $colmax = PHPExcel_Cell::columnIndexFromString($repeat[1]) - 1; + + $repeat = $sheetSetup->getRowsToRepeatAtTop(); + $rowmin = $repeat[0] - 1; + $rowmax = $repeat[1] - 1; + + $this->_writeNameLong( + $i, // sheet index + 0x07, // NAME type + $rowmin, + $rowmax, + $colmin, + $colmax + ); + + // (exclusive) either repeatColumns or repeatRows + } else if ($sheetSetup->isColumnsToRepeatAtLeftSet() || $sheetSetup->isRowsToRepeatAtTopSet()) { + + // Columns to repeat + if ($sheetSetup->isColumnsToRepeatAtLeftSet()) { + $repeat = $sheetSetup->getColumnsToRepeatAtLeft(); + $colmin = PHPExcel_Cell::columnIndexFromString($repeat[0]) - 1; + $colmax = PHPExcel_Cell::columnIndexFromString($repeat[1]) - 1; + } else { + $colmin = 0; + $colmax = 255; + } + + // Rows to repeat + if ($sheetSetup->isRowsToRepeatAtTopSet()) { + $repeat = $sheetSetup->getRowsToRepeatAtTop(); + $rowmin = $repeat[0] - 1; + $rowmax = $repeat[1] - 1; + } else { + $rowmin = 0; + $rowmax = 16383; + } + + $this->_writeNameShort( + $i, // sheet index + 0x07, // NAME type + $rowmin, + $rowmax, + $colmin, + $colmax + ); + } + } + } + + /** + * Writes all the DEFINEDNAME records (BIFF8). + * So far this is only used for repeating rows/columns (print titles) and print areas + */ + private function _writeAllDefinedNamesBiff8() + { + $chunk = ''; + + // Named ranges + if (count($this->_phpExcel->getNamedRanges()) > 0) { + // Loop named ranges + $namedRanges = $this->_phpExcel->getNamedRanges(); + foreach ($namedRanges as $namedRange) { + + // Create absolute coordinate + $range = PHPExcel_Cell::splitRange($namedRange->getRange()); + for ($i = 0; $i < count($range); $i++) { + $range[$i][0] = '\'' . str_replace("'", "''", $namedRange->getWorksheet()->getTitle()) . '\'!' . PHPExcel_Cell::absoluteCoordinate($range[$i][0]); + if (isset($range[$i][1])) { + $range[$i][1] = PHPExcel_Cell::absoluteCoordinate($range[$i][1]); + } + } + $range = PHPExcel_Cell::buildRange($range); // e.g. Sheet1!$A$1:$B$2 + + // parse formula + try { + $error = $this->_parser->parse($range); + $formulaData = $this->_parser->toReversePolish(); + + // make sure tRef3d is of type tRef3dR (0x3A) + if (isset($formulaData{0}) and ($formulaData{0} == "\x7A" or $formulaData{0} == "\x5A")) { + $formulaData = "\x3A" . substr($formulaData, 1); + } + + if ($namedRange->getLocalOnly()) { + // local scope + $scope = $this->_phpExcel->getIndex($namedRange->getScope()) + 1; + } else { + // global scope + $scope = 0; + } + $chunk .= $this->writeData($this->_writeDefinedNameBiff8($namedRange->getName(), $formulaData, $scope, false)); + + } catch(Exception $e) { + // do nothing + } + } + } + + // total number of sheets + $total_worksheets = $this->_phpExcel->getSheetCount(); + + // write the print titles (repeating rows, columns), if any + for ($i = 0; $i < $total_worksheets; ++$i) { + $sheetSetup = $this->_phpExcel->getSheet($i)->getPageSetup(); + // simultaneous repeatColumns repeatRows + if ($sheetSetup->isColumnsToRepeatAtLeftSet() && $sheetSetup->isRowsToRepeatAtTopSet()) { + $repeat = $sheetSetup->getColumnsToRepeatAtLeft(); + $colmin = PHPExcel_Cell::columnIndexFromString($repeat[0]) - 1; + $colmax = PHPExcel_Cell::columnIndexFromString($repeat[1]) - 1; + + $repeat = $sheetSetup->getRowsToRepeatAtTop(); + $rowmin = $repeat[0] - 1; + $rowmax = $repeat[1] - 1; + + // construct formula data manually + $formulaData = pack('Cv', 0x29, 0x17); // tMemFunc + $formulaData .= pack('Cvvvvv', 0x3B, $i, 0, 65535, $colmin, $colmax); // tArea3d + $formulaData .= pack('Cvvvvv', 0x3B, $i, $rowmin, $rowmax, 0, 255); // tArea3d + $formulaData .= pack('C', 0x10); // tList + + // store the DEFINEDNAME record + $chunk .= $this->writeData($this->_writeDefinedNameBiff8(pack('C', 0x07), $formulaData, $i + 1, true)); + + // (exclusive) either repeatColumns or repeatRows + } else if ($sheetSetup->isColumnsToRepeatAtLeftSet() || $sheetSetup->isRowsToRepeatAtTopSet()) { + + // Columns to repeat + if ($sheetSetup->isColumnsToRepeatAtLeftSet()) { + $repeat = $sheetSetup->getColumnsToRepeatAtLeft(); + $colmin = PHPExcel_Cell::columnIndexFromString($repeat[0]) - 1; + $colmax = PHPExcel_Cell::columnIndexFromString($repeat[1]) - 1; + } else { + $colmin = 0; + $colmax = 255; + } + // Rows to repeat + if ($sheetSetup->isRowsToRepeatAtTopSet()) { + $repeat = $sheetSetup->getRowsToRepeatAtTop(); + $rowmin = $repeat[0] - 1; + $rowmax = $repeat[1] - 1; + } else { + $rowmin = 0; + $rowmax = 65535; + } + + // construct formula data manually because parser does not recognize absolute 3d cell references + $formulaData = pack('Cvvvvv', 0x3B, $i, $rowmin, $rowmax, $colmin, $colmax); + + // store the DEFINEDNAME record + $chunk .= $this->writeData($this->_writeDefinedNameBiff8(pack('C', 0x07), $formulaData, $i + 1, true)); + } + } + + // write the print areas, if any + for ($i = 0; $i < $total_worksheets; ++$i) { + $sheetSetup = $this->_phpExcel->getSheet($i)->getPageSetup(); + if ($sheetSetup->isPrintAreaSet()) { + // Print area, e.g. A3:J6,H1:X20 + $printArea = PHPExcel_Cell::splitRange($sheetSetup->getPrintArea()); + $countPrintArea = count($printArea); + + $formulaData = ''; + for ($j = 0; $j < $countPrintArea; ++$j) { + $printAreaRect = $printArea[$j]; // e.g. A3:J6 + $printAreaRect[0] = PHPExcel_Cell::coordinateFromString($printAreaRect[0]); + $printAreaRect[1] = PHPExcel_Cell::coordinateFromString($printAreaRect[1]); + + $print_rowmin = $printAreaRect[0][1] - 1; + $print_rowmax = $printAreaRect[1][1] - 1; + $print_colmin = PHPExcel_Cell::columnIndexFromString($printAreaRect[0][0]) - 1; + $print_colmax = PHPExcel_Cell::columnIndexFromString($printAreaRect[1][0]) - 1; + + // construct formula data manually because parser does not recognize absolute 3d cell references + $formulaData .= pack('Cvvvvv', 0x3B, $i, $print_rowmin, $print_rowmax, $print_colmin, $print_colmax); + + if ($j > 0) { + $formulaData .= pack('C', 0x10); // list operator token ',' + } + } + + // store the DEFINEDNAME record + $chunk .= $this->writeData($this->_writeDefinedNameBiff8(pack('C', 0x06), $formulaData, $i + 1, true)); + } + } + + // write autofilters, if any + for ($i = 0; $i < $total_worksheets; ++$i) { + $sheetAutoFilter = $this->_phpExcel->getSheet($i)->getAutoFilter(); + $autoFilterRange = $sheetAutoFilter->getRange(); + if(!empty($autoFilterRange)) { + $rangeBounds = PHPExcel_Cell::rangeBoundaries($autoFilterRange); + + //Autofilter built in name + $name = pack('C', 0x0D); + + $chunk .= $this->writeData($this->_writeShortNameBiff8($name, $i + 1, $rangeBounds, true)); + } + } + + return $chunk; + } + + /** + * Write a DEFINEDNAME record for BIFF8 using explicit binary formula data + * + * @param string $name The name in UTF-8 + * @param string $formulaData The binary formula data + * @param string $sheetIndex 1-based sheet index the defined name applies to. 0 = global + * @param boolean $isBuiltIn Built-in name? + * @return string Complete binary record data + */ + private function _writeDefinedNameBiff8($name, $formulaData, $sheetIndex = 0, $isBuiltIn = false) + { + $record = 0x0018; + + // option flags + $options = $isBuiltIn ? 0x20 : 0x00; + + // length of the name, character count + $nlen = PHPExcel_Shared_String::CountCharacters($name); + + // name with stripped length field + $name = substr(PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($name), 2); + + // size of the formula (in bytes) + $sz = strlen($formulaData); + + // combine the parts + $data = pack('vCCvvvCCCC', $options, 0, $nlen, $sz, 0, $sheetIndex, 0, 0, 0, 0) + . $name . $formulaData; + $length = strlen($data); + + $header = pack('vv', $record, $length); + + return $header . $data; + } + + /** + * Write a short NAME record + * + * @param string $name + * @param string $sheetIndex 1-based sheet index the defined name applies to. 0 = global + * @param int[][] $range rangeboundaries + * @param bool $isHidden + * @return string Complete binary record data + * */ + private function _writeShortNameBiff8($name, $sheetIndex = 0, $rangeBounds, $isHidden = false){ + $record = 0x0018; + + // option flags + $options = ($isHidden ? 0x21 : 0x00); + + $extra = pack('Cvvvvv', + 0x3B, + $sheetIndex - 1, + $rangeBounds[0][1] - 1, + $rangeBounds[1][1] - 1, + $rangeBounds[0][0] - 1, + $rangeBounds[1][0] - 1); + + // size of the formula (in bytes) + $sz = strlen($extra); + + // combine the parts + $data = pack('vCCvvvCCCCC', $options, 0, 1, $sz, 0, $sheetIndex, 0, 0, 0, 0, 0) + . $name . $extra; + $length = strlen($data); + + $header = pack('vv', $record, $length); + + return $header . $data; + } + + /** + * Stores the CODEPAGE biff record. + */ + private function _writeCodepage() + { + $record = 0x0042; // Record identifier + $length = 0x0002; // Number of bytes to follow + $cv = $this->_codepage; // The code page + + $header = pack('vv', $record, $length); + $data = pack('v', $cv); + + $this->_append($header . $data); + } + + /** + * Write Excel BIFF WINDOW1 record. + */ + private function _writeWindow1() + { + $record = 0x003D; // Record identifier + $length = 0x0012; // Number of bytes to follow + + $xWn = 0x0000; // Horizontal position of window + $yWn = 0x0000; // Vertical position of window + $dxWn = 0x25BC; // Width of window + $dyWn = 0x1572; // Height of window + + $grbit = 0x0038; // Option flags + + // not supported by PHPExcel, so there is only one selected sheet, the active + $ctabsel = 1; // Number of workbook tabs selected + + $wTabRatio = 0x0258; // Tab to scrollbar ratio + + // not supported by PHPExcel, set to 0 + $itabFirst = 0; // 1st displayed worksheet + $itabCur = $this->_phpExcel->getActiveSheetIndex(); // Active worksheet + + $header = pack("vv", $record, $length); + $data = pack("vvvvvvvvv", $xWn, $yWn, $dxWn, $dyWn, + $grbit, + $itabCur, $itabFirst, + $ctabsel, $wTabRatio); + $this->_append($header . $data); + } + + /** + * Writes Excel BIFF BOUNDSHEET record. + * + * @param PHPExcel_Worksheet $sheet Worksheet name + * @param integer $offset Location of worksheet BOF + */ + private function _writeBoundsheet($sheet, $offset) + { + $sheetname = $sheet->getTitle(); + $record = 0x0085; // Record identifier + + // sheet state + switch ($sheet->getSheetState()) { + case PHPExcel_Worksheet::SHEETSTATE_VISIBLE: $ss = 0x00; break; + case PHPExcel_Worksheet::SHEETSTATE_HIDDEN: $ss = 0x01; break; + case PHPExcel_Worksheet::SHEETSTATE_VERYHIDDEN: $ss = 0x02; break; + default: $ss = 0x00; break; + } + + // sheet type + $st = 0x00; + + $grbit = 0x0000; // Visibility and sheet type + + $data = pack("VCC", $offset, $ss, $st); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort($sheetname); + + $length = strlen($data); + $header = pack("vv", $record, $length); + $this->_append($header . $data); + } + + /** + * Write Internal SUPBOOK record + */ + private function _writeSupbookInternal() + { + $record = 0x01AE; // Record identifier + $length = 0x0004; // Bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("vv", $this->_phpExcel->getSheetCount(), 0x0401); + return $this->writeData($header . $data); + } + + /** + * Writes the Excel BIFF EXTERNSHEET record. These references are used by + * formulas. + * + */ + private function _writeExternsheetBiff8() + { + $total_references = count($this->_parser->_references); + $record = 0x0017; // Record identifier + $length = 2 + 6 * $total_references; // Number of bytes to follow + + $supbook_index = 0; // FIXME: only using internal SUPBOOK record + $header = pack("vv", $record, $length); + $data = pack('v', $total_references); + for ($i = 0; $i < $total_references; ++$i) { + $data .= $this->_parser->_references[$i]; + } + return $this->writeData($header . $data); + } + + /** + * Write Excel BIFF STYLE records. + */ + private function _writeStyle() + { + $record = 0x0293; // Record identifier + $length = 0x0004; // Bytes to follow + + $ixfe = 0x8000; // Index to cell style XF + $BuiltIn = 0x00; // Built-in style + $iLevel = 0xff; // Outline style level + + $header = pack("vv", $record, $length); + $data = pack("vCC", $ixfe, $BuiltIn, $iLevel); + $this->_append($header . $data); + } + + /** + * Writes Excel FORMAT record for non "built-in" numerical formats. + * + * @param string $format Custom format string + * @param integer $ifmt Format index code + */ + private function _writeNumFormat($format, $ifmt) + { + $record = 0x041E; // Record identifier + + $numberFormatString = PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($format); + $length = 2 + strlen($numberFormatString); // Number of bytes to follow + + + $header = pack("vv", $record, $length); + $data = pack("v", $ifmt) . $numberFormatString; + $this->_append($header . $data); + } + + /** + * Write DATEMODE record to indicate the date system in use (1904 or 1900). + */ + private function _writeDatemode() + { + $record = 0x0022; // Record identifier + $length = 0x0002; // Bytes to follow + + $f1904 = (PHPExcel_Shared_Date::getExcelCalendar() == PHPExcel_Shared_Date::CALENDAR_MAC_1904) ? + 1 : 0; // Flag for 1904 date system + + $header = pack("vv", $record, $length); + $data = pack("v", $f1904); + $this->_append($header . $data); + } + + /** + * Write BIFF record EXTERNCOUNT to indicate the number of external sheet + * references in the workbook. + * + * Excel only stores references to external sheets that are used in NAME. + * The workbook NAME record is required to define the print area and the repeat + * rows and columns. + * + * A similar method is used in Worksheet.php for a slightly different purpose. + * + * @param integer $cxals Number of external references + */ + private function _writeExterncount($cxals) + { + $record = 0x0016; // Record identifier + $length = 0x0002; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("v", $cxals); + $this->_append($header . $data); + } + + /** + * Writes the Excel BIFF EXTERNSHEET record. These references are used by + * formulas. NAME record is required to define the print area and the repeat + * rows and columns. + * + * A similar method is used in Worksheet.php for a slightly different purpose. + * + * @param string $sheetname Worksheet name + */ + private function _writeExternsheet($sheetname) + { + $record = 0x0017; // Record identifier + $length = 0x02 + strlen($sheetname); // Number of bytes to follow + + $cch = strlen($sheetname); // Length of sheet name + $rgch = 0x03; // Filename encoding + + $header = pack("vv", $record, $length); + $data = pack("CC", $cch, $rgch); + $this->_append($header . $data . $sheetname); + } + + /** + * Store the NAME record in the short format that is used for storing the print + * area, repeat rows only and repeat columns only. + * + * @param integer $index Sheet index + * @param integer $type Built-in name type + * @param integer $rowmin Start row + * @param integer $rowmax End row + * @param integer $colmin Start colum + * @param integer $colmax End column + */ + private function _writeNameShort($index, $type, $rowmin, $rowmax, $colmin, $colmax) + { + $record = 0x0018; // Record identifier + $length = 0x0024; // Number of bytes to follow + + $grbit = 0x0020; // Option flags + $chKey = 0x00; // Keyboard shortcut + $cch = 0x01; // Length of text name + $cce = 0x0015; // Length of text definition + $ixals = $index + 1; // Sheet index + $itab = $ixals; // Equal to ixals + $cchCustMenu = 0x00; // Length of cust menu text + $cchDescription = 0x00; // Length of description text + $cchHelptopic = 0x00; // Length of help topic text + $cchStatustext = 0x00; // Length of status bar text + $rgch = $type; // Built-in name type + + $unknown03 = 0x3b; + $unknown04 = 0xffff-$index; + $unknown05 = 0x0000; + $unknown06 = 0x0000; + $unknown07 = 0x1087; + $unknown08 = 0x8005; + + $header = pack("vv", $record, $length); + $data = pack("v", $grbit); + $data .= pack("C", $chKey); + $data .= pack("C", $cch); + $data .= pack("v", $cce); + $data .= pack("v", $ixals); + $data .= pack("v", $itab); + $data .= pack("C", $cchCustMenu); + $data .= pack("C", $cchDescription); + $data .= pack("C", $cchHelptopic); + $data .= pack("C", $cchStatustext); + $data .= pack("C", $rgch); + $data .= pack("C", $unknown03); + $data .= pack("v", $unknown04); + $data .= pack("v", $unknown05); + $data .= pack("v", $unknown06); + $data .= pack("v", $unknown07); + $data .= pack("v", $unknown08); + $data .= pack("v", $index); + $data .= pack("v", $index); + $data .= pack("v", $rowmin); + $data .= pack("v", $rowmax); + $data .= pack("C", $colmin); + $data .= pack("C", $colmax); + $this->_append($header . $data); + } + + /** + * Store the NAME record in the long format that is used for storing the repeat + * rows and columns when both are specified. This shares a lot of code with + * _writeNameShort() but we use a separate method to keep the code clean. + * Code abstraction for reuse can be carried too far, and I should know. ;-) + * + * @param integer $index Sheet index + * @param integer $type Built-in name type + * @param integer $rowmin Start row + * @param integer $rowmax End row + * @param integer $colmin Start colum + * @param integer $colmax End column + */ + private function _writeNameLong($index, $type, $rowmin, $rowmax, $colmin, $colmax) + { + $record = 0x0018; // Record identifier + $length = 0x003d; // Number of bytes to follow + $grbit = 0x0020; // Option flags + $chKey = 0x00; // Keyboard shortcut + $cch = 0x01; // Length of text name + $cce = 0x002e; // Length of text definition + $ixals = $index + 1; // Sheet index + $itab = $ixals; // Equal to ixals + $cchCustMenu = 0x00; // Length of cust menu text + $cchDescription = 0x00; // Length of description text + $cchHelptopic = 0x00; // Length of help topic text + $cchStatustext = 0x00; // Length of status bar text + $rgch = $type; // Built-in name type + + $unknown01 = 0x29; + $unknown02 = 0x002b; + $unknown03 = 0x3b; + $unknown04 = 0xffff-$index; + $unknown05 = 0x0000; + $unknown06 = 0x0000; + $unknown07 = 0x1087; + $unknown08 = 0x8008; + + $header = pack("vv", $record, $length); + $data = pack("v", $grbit); + $data .= pack("C", $chKey); + $data .= pack("C", $cch); + $data .= pack("v", $cce); + $data .= pack("v", $ixals); + $data .= pack("v", $itab); + $data .= pack("C", $cchCustMenu); + $data .= pack("C", $cchDescription); + $data .= pack("C", $cchHelptopic); + $data .= pack("C", $cchStatustext); + $data .= pack("C", $rgch); + $data .= pack("C", $unknown01); + $data .= pack("v", $unknown02); + // Column definition + $data .= pack("C", $unknown03); + $data .= pack("v", $unknown04); + $data .= pack("v", $unknown05); + $data .= pack("v", $unknown06); + $data .= pack("v", $unknown07); + $data .= pack("v", $unknown08); + $data .= pack("v", $index); + $data .= pack("v", $index); + $data .= pack("v", 0x0000); + $data .= pack("v", 0x3fff); + $data .= pack("C", $colmin); + $data .= pack("C", $colmax); + // Row definition + $data .= pack("C", $unknown03); + $data .= pack("v", $unknown04); + $data .= pack("v", $unknown05); + $data .= pack("v", $unknown06); + $data .= pack("v", $unknown07); + $data .= pack("v", $unknown08); + $data .= pack("v", $index); + $data .= pack("v", $index); + $data .= pack("v", $rowmin); + $data .= pack("v", $rowmax); + $data .= pack("C", 0x00); + $data .= pack("C", 0xff); + // End of data + $data .= pack("C", 0x10); + $this->_append($header . $data); + } + + /** + * Stores the COUNTRY record for localization + * + * @return string + */ + private function _writeCountry() + { + $record = 0x008C; // Record identifier + $length = 4; // Number of bytes to follow + + $header = pack('vv', $record, $length); + /* using the same country code always for simplicity */ + $data = pack('vv', $this->_country_code, $this->_country_code); + //$this->_append($header . $data); + return $this->writeData($header . $data); + } + + /** + * Write the RECALCID record + * + * @return string + */ + private function _writeRecalcId() + { + $record = 0x01C1; // Record identifier + $length = 8; // Number of bytes to follow + + $header = pack('vv', $record, $length); + + // by inspection of real Excel files, MS Office Excel 2007 writes this + $data = pack('VV', 0x000001C1, 0x00001E667); + + return $this->writeData($header . $data); + } + + /** + * Stores the PALETTE biff record. + */ + private function _writePalette() + { + $aref = $this->_palette; + + $record = 0x0092; // Record identifier + $length = 2 + 4 * count($aref); // Number of bytes to follow + $ccv = count($aref); // Number of RGB values to follow + $data = ''; // The RGB data + + // Pack the RGB data + foreach ($aref as $color) { + foreach ($color as $byte) { + $data .= pack("C",$byte); + } + } + + $header = pack("vvv", $record, $length, $ccv); + $this->_append($header . $data); + } + + /** + * Handling of the SST continue blocks is complicated by the need to include an + * additional continuation byte depending on whether the string is split between + * blocks or whether it starts at the beginning of the block. (There are also + * additional complications that will arise later when/if Rich Strings are + * supported). + * + * The Excel documentation says that the SST record should be followed by an + * EXTSST record. The EXTSST record is a hash table that is used to optimise + * access to SST. However, despite the documentation it doesn't seem to be + * required so we will ignore it. + * + * @return string Binary data + */ + private function _writeSharedStringsTable() + { + // maximum size of record data (excluding record header) + $continue_limit = 8224; + + // initialize array of record data blocks + $recordDatas = array(); + + // start SST record data block with total number of strings, total number of unique strings + $recordData = pack("VV", $this->_str_total, $this->_str_unique); + + // loop through all (unique) strings in shared strings table + foreach (array_keys($this->_str_table) as $string) { + + // here $string is a BIFF8 encoded string + + // length = character count + $headerinfo = unpack("vlength/Cencoding", $string); + + // currently, this is always 1 = uncompressed + $encoding = $headerinfo["encoding"]; + + // initialize finished writing current $string + $finished = false; + + while ($finished === false) { + + // normally, there will be only one cycle, but if string cannot immediately be written as is + // there will be need for more than one cylcle, if string longer than one record data block, there + // may be need for even more cycles + + if (strlen($recordData) + strlen($string) <= $continue_limit) { + // then we can write the string (or remainder of string) without any problems + $recordData .= $string; + + if (strlen($recordData) + strlen($string) == $continue_limit) { + // we close the record data block, and initialize a new one + $recordDatas[] = $recordData; + $recordData = ''; + } + + // we are finished writing this string + $finished = true; + } else { + // special treatment writing the string (or remainder of the string) + // If the string is very long it may need to be written in more than one CONTINUE record. + + // check how many bytes more there is room for in the current record + $space_remaining = $continue_limit - strlen($recordData); + + // minimum space needed + // uncompressed: 2 byte string length length field + 1 byte option flags + 2 byte character + // compressed: 2 byte string length length field + 1 byte option flags + 1 byte character + $min_space_needed = ($encoding == 1) ? 5 : 4; + + // We have two cases + // 1. space remaining is less than minimum space needed + // here we must waste the space remaining and move to next record data block + // 2. space remaining is greater than or equal to minimum space needed + // here we write as much as we can in the current block, then move to next record data block + + // 1. space remaining is less than minimum space needed + if ($space_remaining < $min_space_needed) { + // we close the block, store the block data + $recordDatas[] = $recordData; + + // and start new record data block where we start writing the string + $recordData = ''; + + // 2. space remaining is greater than or equal to minimum space needed + } else { + // initialize effective remaining space, for Unicode strings this may need to be reduced by 1, see below + $effective_space_remaining = $space_remaining; + + // for uncompressed strings, sometimes effective space remaining is reduced by 1 + if ( $encoding == 1 && (strlen($string) - $space_remaining) % 2 == 1 ) { + --$effective_space_remaining; + } + + // one block fininshed, store the block data + $recordData .= substr($string, 0, $effective_space_remaining); + + $string = substr($string, $effective_space_remaining); // for next cycle in while loop + $recordDatas[] = $recordData; + + // start new record data block with the repeated option flags + $recordData = pack('C', $encoding); + } + } + } + } + + // Store the last record data block unless it is empty + // if there was no need for any continue records, this will be the for SST record data block itself + if (strlen($recordData) > 0) { + $recordDatas[] = $recordData; + } + + // combine into one chunk with all the blocks SST, CONTINUE,... + $chunk = ''; + foreach ($recordDatas as $i => $recordData) { + // first block should have the SST record header, remaing should have CONTINUE header + $record = ($i == 0) ? 0x00FC : 0x003C; + + $header = pack("vv", $record, strlen($recordData)); + $data = $header . $recordData; + + $chunk .= $this->writeData($data); + } + + return $chunk; + } + + /** + * Writes the MSODRAWINGGROUP record if needed. Possibly split using CONTINUE records. + */ + private function _writeMsoDrawingGroup() + { + // write the Escher stream if necessary + if (isset($this->_escher)) { + $writer = new PHPExcel_Writer_Excel5_Escher($this->_escher); + $data = $writer->close(); + + $record = 0x00EB; + $length = strlen($data); + $header = pack("vv", $record, $length); + + return $this->writeData($header . $data); + + } else { + return ''; + } + } + + /** + * Get Escher object + * + * @return PHPExcel_Shared_Escher + */ + public function getEscher() + { + return $this->_escher; + } + + /** + * Set Escher object + * + * @param PHPExcel_Shared_Escher $pValue + */ + public function setEscher(PHPExcel_Shared_Escher $pValue = null) + { + $this->_escher = $pValue; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Worksheet.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Worksheet.php new file mode 100644 index 0000000..9aa5083 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Worksheet.php @@ -0,0 +1,2954 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +// Original file header of PEAR::Spreadsheet_Excel_Writer_Worksheet (used as the base for this class): +// ----------------------------------------------------------------------------------------- +// /* +// * Module written/ported by Xavier Noguer <xnoguer@rezebra.com> +// * +// * The majority of this is _NOT_ my code. I simply ported it from the +// * PERL Spreadsheet::WriteExcel module. +// * +// * The author of the Spreadsheet::WriteExcel module is John McNamara +// * <jmcnamara@cpan.org> +// * +// * I _DO_ maintain this code, and John McNamara has nothing to do with the +// * porting of this code to PHP. Any questions directly related to this +// * class library should be directed to me. +// * +// * License Information: +// * +// * Spreadsheet_Excel_Writer: A library for generating Excel Spreadsheets +// * Copyright (c) 2002-2003 Xavier Noguer xnoguer@rezebra.com +// * +// * 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 library 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 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 +// */ + + +/** + * PHPExcel_Writer_Excel5_Worksheet + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel5_Worksheet extends PHPExcel_Writer_Excel5_BIFFwriter +{ + /** + * Formula parser + * + * @var PHPExcel_Writer_Excel5_Parser + */ + private $_parser; + + /** + * Maximum number of characters for a string (LABEL record in BIFF5) + * @var integer + */ + public $_xls_strmax; + + /** + * Array containing format information for columns + * @var array + */ + public $_colinfo; + + /** + * Array containing the selected area for the worksheet + * @var array + */ + public $_selection; + + /** + * The active pane for the worksheet + * @var integer + */ + public $_active_pane; + + /** + * Whether to use outline. + * @var integer + */ + public $_outline_on; + + /** + * Auto outline styles. + * @var bool + */ + public $_outline_style; + + /** + * Whether to have outline summary below. + * @var bool + */ + public $_outline_below; + + /** + * Whether to have outline summary at the right. + * @var bool + */ + public $_outline_right; + + /** + * Reference to the total number of strings in the workbook + * @var integer + */ + public $_str_total; + + /** + * Reference to the number of unique strings in the workbook + * @var integer + */ + public $_str_unique; + + /** + * Reference to the array containing all the unique strings in the workbook + * @var array + */ + public $_str_table; + + /** + * Color cache + */ + private $_colors; + + /** + * Index of first used row (at least 0) + * @var int + */ + private $_firstRowIndex; + + /** + * Index of last used row. (no used rows means -1) + * @var int + */ + private $_lastRowIndex; + + /** + * Index of first used column (at least 0) + * @var int + */ + private $_firstColumnIndex; + + /** + * Index of last used column (no used columns means -1) + * @var int + */ + private $_lastColumnIndex; + + /** + * Sheet object + * @var PHPExcel_Worksheet + */ + public $_phpSheet; + + /** + * Count cell style Xfs + * + * @var int + */ + private $_countCellStyleXfs; + + /** + * Escher object corresponding to MSODRAWING + * + * @var PHPExcel_Shared_Escher + */ + private $_escher; + + /** + * Array of font hashes associated to FONT records index + * + * @var array + */ + public $_fntHashIndex; + + /** + * Constructor + * + * @param int &$str_total Total number of strings + * @param int &$str_unique Total number of unique strings + * @param array &$str_table String Table + * @param array &$colors Colour Table + * @param mixed $parser The formula parser created for the Workbook + * @param boolean $preCalculateFormulas Flag indicating whether formulas should be calculated or just written + * @param string $phpSheet The worksheet to write + * @param PHPExcel_Worksheet $phpSheet + */ + public function __construct(&$str_total, &$str_unique, &$str_table, &$colors, + $parser, $preCalculateFormulas, $phpSheet) + { + // It needs to call its parent's constructor explicitly + parent::__construct(); + + // change BIFFwriter limit for CONTINUE records +// $this->_limit = 8224; + + + $this->_preCalculateFormulas = $preCalculateFormulas; + $this->_str_total = &$str_total; + $this->_str_unique = &$str_unique; + $this->_str_table = &$str_table; + $this->_colors = &$colors; + $this->_parser = $parser; + + $this->_phpSheet = $phpSheet; + + //$this->ext_sheets = array(); + //$this->offset = 0; + $this->_xls_strmax = 255; + $this->_colinfo = array(); + $this->_selection = array(0,0,0,0); + $this->_active_pane = 3; + + $this->_print_headers = 0; + + $this->_outline_style = 0; + $this->_outline_below = 1; + $this->_outline_right = 1; + $this->_outline_on = 1; + + $this->_fntHashIndex = array(); + + // calculate values for DIMENSIONS record + $minR = 1; + $minC = 'A'; + + $maxR = $this->_phpSheet->getHighestRow(); + $maxC = $this->_phpSheet->getHighestColumn(); + + // Determine lowest and highest column and row +// $this->_firstRowIndex = ($minR > 65535) ? 65535 : $minR; + $this->_lastRowIndex = ($maxR > 65535) ? 65535 : $maxR ; + + $this->_firstColumnIndex = PHPExcel_Cell::columnIndexFromString($minC); + $this->_lastColumnIndex = PHPExcel_Cell::columnIndexFromString($maxC); + +// if ($this->_firstColumnIndex > 255) $this->_firstColumnIndex = 255; + if ($this->_lastColumnIndex > 255) $this->_lastColumnIndex = 255; + + $this->_countCellStyleXfs = count($phpSheet->getParent()->getCellStyleXfCollection()); + } + + /** + * Add data to the beginning of the workbook (note the reverse order) + * and to the end of the workbook. + * + * @access public + * @see PHPExcel_Writer_Excel5_Workbook::storeWorkbook() + */ + function close() + { + $_phpSheet = $this->_phpSheet; + + $num_sheets = $_phpSheet->getParent()->getSheetCount(); + + // Write BOF record + $this->_storeBof(0x0010); + + // Write PRINTHEADERS + $this->_writePrintHeaders(); + + // Write PRINTGRIDLINES + $this->_writePrintGridlines(); + + // Write GRIDSET + $this->_writeGridset(); + + // Calculate column widths + $_phpSheet->calculateColumnWidths(); + + // Column dimensions + if (($defaultWidth = $_phpSheet->getDefaultColumnDimension()->getWidth()) < 0) { + $defaultWidth = PHPExcel_Shared_Font::getDefaultColumnWidthByFont($_phpSheet->getParent()->getDefaultStyle()->getFont()); + } + + $columnDimensions = $_phpSheet->getColumnDimensions(); + $maxCol = $this->_lastColumnIndex -1; + for ($i = 0; $i <= $maxCol; ++$i) { + $hidden = 0; + $level = 0; + $xfIndex = 15; // there are 15 cell style Xfs + + $width = $defaultWidth; + + $columnLetter = PHPExcel_Cell::stringFromColumnIndex($i); + if (isset($columnDimensions[$columnLetter])) { + $columnDimension = $columnDimensions[$columnLetter]; + if ($columnDimension->getWidth() >= 0) { + $width = $columnDimension->getWidth(); + } + $hidden = $columnDimension->getVisible() ? 0 : 1; + $level = $columnDimension->getOutlineLevel(); + $xfIndex = $columnDimension->getXfIndex() + 15; // there are 15 cell style Xfs + } + + // Components of _colinfo: + // $firstcol first column on the range + // $lastcol last column on the range + // $width width to set + // $xfIndex The optional cell style Xf index to apply to the columns + // $hidden The optional hidden atribute + // $level The optional outline level + $this->_colinfo[] = array($i, $i, $width, $xfIndex, $hidden, $level); + } + + // Write GUTS + $this->_writeGuts(); + + // Write DEFAULTROWHEIGHT + $this->_writeDefaultRowHeight(); + + // Write WSBOOL + $this->_writeWsbool(); + + // Write horizontal and vertical page breaks + $this->_writeBreaks(); + + // Write page header + $this->_writeHeader(); + + // Write page footer + $this->_writeFooter(); + + // Write page horizontal centering + $this->_writeHcenter(); + + // Write page vertical centering + $this->_writeVcenter(); + + // Write left margin + $this->_writeMarginLeft(); + + // Write right margin + $this->_writeMarginRight(); + + // Write top margin + $this->_writeMarginTop(); + + // Write bottom margin + $this->_writeMarginBottom(); + + // Write page setup + $this->_writeSetup(); + + // Write sheet protection + $this->_writeProtect(); + + // Write SCENPROTECT + $this->_writeScenProtect(); + + // Write OBJECTPROTECT + $this->_writeObjectProtect(); + + // Write sheet password + $this->_writePassword(); + + // Write DEFCOLWIDTH record + $this->_writeDefcol(); + + // Write the COLINFO records if they exist + if (!empty($this->_colinfo)) { + $colcount = count($this->_colinfo); + for ($i = 0; $i < $colcount; ++$i) { + $this->_writeColinfo($this->_colinfo[$i]); + } + } + $autoFilterRange = $_phpSheet->getAutoFilter()->getRange(); + if (!empty($autoFilterRange)) { + // Write AUTOFILTERINFO + $this->_writeAutoFilterInfo(); + } + + // Write sheet dimensions + $this->_writeDimensions(); + + // Row dimensions + foreach ($_phpSheet->getRowDimensions() as $rowDimension) { + $xfIndex = $rowDimension->getXfIndex() + 15; // there are 15 cellXfs + $this->_writeRow( $rowDimension->getRowIndex() - 1, $rowDimension->getRowHeight(), $xfIndex, ($rowDimension->getVisible() ? '0' : '1'), $rowDimension->getOutlineLevel() ); + } + + // Write Cells + foreach ($_phpSheet->getCellCollection() as $cellID) { + $cell = $_phpSheet->getCell($cellID); + $row = $cell->getRow() - 1; + $column = PHPExcel_Cell::columnIndexFromString($cell->getColumn()) - 1; + + // Don't break Excel! +// if ($row + 1 > 65536 or $column + 1 > 256) { + if ($row > 65535 || $column > 255) { + break; + } + + // Write cell value + $xfIndex = $cell->getXfIndex() + 15; // there are 15 cell style Xfs + + $cVal = $cell->getValue(); + if ($cVal instanceof PHPExcel_RichText) { + // $this->_writeString($row, $column, $cVal->getPlainText(), $xfIndex); + $arrcRun = array(); + $str_len = strlen($cVal->getPlainText()); + $str_pos = 0; + $elements = $cVal->getRichTextElements(); + foreach ($elements as $element) { + // FONT Index + if ($element instanceof PHPExcel_RichText_Run) { + $str_fontidx = $this->_fntHashIndex[$element->getFont()->getHashCode()]; + } + else { + $str_fontidx = 0; + } + $arrcRun[] = array('strlen' => $str_pos, 'fontidx' => $str_fontidx); + // Position FROM + $str_pos += strlen($element->getText()); + } + $this->_writeRichTextString($row, $column, $cVal->getPlainText(), $xfIndex, $arrcRun); + } else { + switch ($cell->getDatatype()) { + case PHPExcel_Cell_DataType::TYPE_STRING: + case PHPExcel_Cell_DataType::TYPE_NULL: + if ($cVal === '' || $cVal === null) { + $this->_writeBlank($row, $column, $xfIndex); + } else { + $this->_writeString($row, $column, $cVal, $xfIndex); + } + break; + + case PHPExcel_Cell_DataType::TYPE_NUMERIC: + $this->_writeNumber($row, $column, $cVal, $xfIndex); + break; + + case PHPExcel_Cell_DataType::TYPE_FORMULA: + $calculatedValue = $this->_preCalculateFormulas ? + $cell->getCalculatedValue() : null; + $this->_writeFormula($row, $column, $cVal, $xfIndex, $calculatedValue); + break; + + case PHPExcel_Cell_DataType::TYPE_BOOL: + $this->_writeBoolErr($row, $column, $cVal, 0, $xfIndex); + break; + + case PHPExcel_Cell_DataType::TYPE_ERROR: + $this->_writeBoolErr($row, $column, self::_mapErrorCode($cVal), 1, $xfIndex); + break; + + } + } + } + + // Append + $this->_writeMsoDrawing(); + + $this->_writeWindow2(); + $this->_writeZoom(); + if ($_phpSheet->getFreezePane()) { + $this->_writePanes(); + } + $this->_writeSelection(); + $this->_writeMergedCells(); + + // Hyperlinks + foreach ($_phpSheet->getHyperLinkCollection() as $coordinate => $hyperlink) { + list($column, $row) = PHPExcel_Cell::coordinateFromString($coordinate); + + $url = $hyperlink->getUrl(); + + if ( strpos($url, 'sheet://') !== false ) { + // internal to current workbook + $url = str_replace('sheet://', 'internal:', $url); + + } else if ( preg_match('/^(http:|https:|ftp:|mailto:)/', $url) ) { + // URL + // $url = $url; + + } else { + // external (local file) + $url = 'external:' . $url; + } + + $this->_writeUrl($row - 1, PHPExcel_Cell::columnIndexFromString($column) - 1, $url); + } + + $this->_writeDataValidity(); + $this->_writeSheetLayout(); + $this->_writeSheetProtection(); + $this->_writeRangeProtection(); + + $this->_storeEof(); + } + + /** + * Write a cell range address in BIFF8 + * always fixed range + * See section 2.5.14 in OpenOffice.org's Documentation of the Microsoft Excel File Format + * + * @param string $range E.g. 'A1' or 'A1:B6' + * @return string Binary data + */ + private function _writeBIFF8CellRangeAddressFixed($range = 'A1') + { + $explodes = explode(':', $range); + + // extract first cell, e.g. 'A1' + $firstCell = $explodes[0]; + + // extract last cell, e.g. 'B6' + if (count($explodes) == 1) { + $lastCell = $firstCell; + } else { + $lastCell = $explodes[1]; + } + + $firstCellCoordinates = PHPExcel_Cell::coordinateFromString($firstCell); // e.g. array(0, 1) + $lastCellCoordinates = PHPExcel_Cell::coordinateFromString($lastCell); // e.g. array(1, 6) + + return(pack('vvvv', + $firstCellCoordinates[1] - 1, + $lastCellCoordinates[1] - 1, + PHPExcel_Cell::columnIndexFromString($firstCellCoordinates[0]) - 1, + PHPExcel_Cell::columnIndexFromString($lastCellCoordinates[0]) - 1 + )); + } + + /** + * Retrieves data from memory in one chunk, or from disk in $buffer + * sized chunks. + * + * @return string The data + */ + function getData() + { + $buffer = 4096; + + // Return data stored in memory + if (isset($this->_data)) { + $tmp = $this->_data; + unset($this->_data); + return $tmp; + } + // No data to return + return false; + } + + /** + * Set the option to print the row and column headers on the printed page. + * + * @access public + * @param integer $print Whether to print the headers or not. Defaults to 1 (print). + */ + function printRowColHeaders($print = 1) + { + $this->_print_headers = $print; + } + + /** + * This method sets the properties for outlining and grouping. The defaults + * correspond to Excel's defaults. + * + * @param bool $visible + * @param bool $symbols_below + * @param bool $symbols_right + * @param bool $auto_style + */ + function setOutline($visible = true, $symbols_below = true, $symbols_right = true, $auto_style = false) + { + $this->_outline_on = $visible; + $this->_outline_below = $symbols_below; + $this->_outline_right = $symbols_right; + $this->_outline_style = $auto_style; + + // Ensure this is a boolean vale for Window2 + if ($this->_outline_on) { + $this->_outline_on = 1; + } + } + + /** + * Write a double to the specified row and column (zero indexed). + * An integer can be written as a double. Excel will display an + * integer. $format is optional. + * + * Returns 0 : normal termination + * -2 : row or column out of range + * + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param float $num The number to write + * @param mixed $xfIndex The optional XF format + * @return integer + */ + private function _writeNumber($row, $col, $num, $xfIndex) + { + $record = 0x0203; // Record identifier + $length = 0x000E; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("vvv", $row, $col, $xfIndex); + $xl_double = pack("d", $num); + if (self::getByteOrder()) { // if it's Big Endian + $xl_double = strrev($xl_double); + } + + $this->_append($header.$data.$xl_double); + return(0); + } + + /** + * Write a LABELSST record or a LABEL record. Which one depends on BIFF version + * + * @param int $row Row index (0-based) + * @param int $col Column index (0-based) + * @param string $str The string + * @param int $xfIndex Index to XF record + */ + private function _writeString($row, $col, $str, $xfIndex) + { + $this->_writeLabelSst($row, $col, $str, $xfIndex); + } + /** + * Write a LABELSST record or a LABEL record. Which one depends on BIFF version + * It differs from _writeString by the writing of rich text strings. + * @param int $row Row index (0-based) + * @param int $col Column index (0-based) + * @param string $str The string + * @param mixed $xfIndex The XF format index for the cell + * @param array $arrcRun Index to Font record and characters beginning + */ + private function _writeRichTextString($row, $col, $str, $xfIndex, $arrcRun){ + $record = 0x00FD; // Record identifier + $length = 0x000A; // Bytes to follow + + $str = PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort($str, $arrcRun); + + /* check if string is already present */ + if (!isset($this->_str_table[$str])) { + $this->_str_table[$str] = $this->_str_unique++; + } + $this->_str_total++; + + $header = pack('vv', $record, $length); + $data = pack('vvvV', $row, $col, $xfIndex, $this->_str_table[$str]); + $this->_append($header.$data); + } + + /** + * Write a string to the specified row and column (zero indexed). + * NOTE: there is an Excel 5 defined limit of 255 characters. + * $format is optional. + * Returns 0 : normal termination + * -2 : row or column out of range + * -3 : long string truncated to 255 chars + * + * @access public + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param string $str The string to write + * @param mixed $xfIndex The XF format index for the cell + * @return integer + */ + private function _writeLabel($row, $col, $str, $xfIndex) + { + $strlen = strlen($str); + $record = 0x0204; // Record identifier + $length = 0x0008 + $strlen; // Bytes to follow + + $str_error = 0; + + if ($strlen > $this->_xls_strmax) { // LABEL must be < 255 chars + $str = substr($str, 0, $this->_xls_strmax); + $length = 0x0008 + $this->_xls_strmax; + $strlen = $this->_xls_strmax; + $str_error = -3; + } + + $header = pack("vv", $record, $length); + $data = pack("vvvv", $row, $col, $xfIndex, $strlen); + $this->_append($header . $data . $str); + return($str_error); + } + + /** + * Write a string to the specified row and column (zero indexed). + * This is the BIFF8 version (no 255 chars limit). + * $format is optional. + * Returns 0 : normal termination + * -2 : row or column out of range + * -3 : long string truncated to 255 chars + * + * @access public + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param string $str The string to write + * @param mixed $xfIndex The XF format index for the cell + * @return integer + */ + private function _writeLabelSst($row, $col, $str, $xfIndex) + { + $record = 0x00FD; // Record identifier + $length = 0x000A; // Bytes to follow + + $str = PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($str); + + /* check if string is already present */ + if (!isset($this->_str_table[$str])) { + $this->_str_table[$str] = $this->_str_unique++; + } + $this->_str_total++; + + $header = pack('vv', $record, $length); + $data = pack('vvvV', $row, $col, $xfIndex, $this->_str_table[$str]); + $this->_append($header.$data); + } + + /** + * Writes a note associated with the cell given by the row and column. + * NOTE records don't have a length limit. + * + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param string $note The note to write + */ + private function _writeNote($row, $col, $note) + { + $note_length = strlen($note); + $record = 0x001C; // Record identifier + $max_length = 2048; // Maximun length for a NOTE record + + // Length for this record is no more than 2048 + 6 + $length = 0x0006 + min($note_length, 2048); + $header = pack("vv", $record, $length); + $data = pack("vvv", $row, $col, $note_length); + $this->_append($header . $data . substr($note, 0, 2048)); + + for ($i = $max_length; $i < $note_length; $i += $max_length) { + $chunk = substr($note, $i, $max_length); + $length = 0x0006 + strlen($chunk); + $header = pack("vv", $record, $length); + $data = pack("vvv", -1, 0, strlen($chunk)); + $this->_append($header.$data.$chunk); + } + return(0); + } + + /** + * Write a blank cell to the specified row and column (zero indexed). + * A blank cell is used to specify formatting without adding a string + * or a number. + * + * A blank cell without a format serves no purpose. Therefore, we don't write + * a BLANK record unless a format is specified. + * + * Returns 0 : normal termination (including no format) + * -1 : insufficient number of arguments + * -2 : row or column out of range + * + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param mixed $xfIndex The XF format index + */ + function _writeBlank($row, $col, $xfIndex) + { + $record = 0x0201; // Record identifier + $length = 0x0006; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("vvv", $row, $col, $xfIndex); + $this->_append($header . $data); + return 0; + } + + /** + * Write a boolean or an error type to the specified row and column (zero indexed) + * + * @param int $row Row index (0-based) + * @param int $col Column index (0-based) + * @param int $value + * @param boolean $isError Error or Boolean? + * @param int $xfIndex + */ + private function _writeBoolErr($row, $col, $value, $isError, $xfIndex) + { + $record = 0x0205; + $length = 8; + + $header = pack("vv", $record, $length); + $data = pack("vvvCC", $row, $col, $xfIndex, $value, $isError); + $this->_append($header . $data); + return 0; + } + + /** + * Write a formula to the specified row and column (zero indexed). + * The textual representation of the formula is passed to the parser in + * Parser.php which returns a packed binary string. + * + * Returns 0 : normal termination + * -1 : formula errors (bad formula) + * -2 : row or column out of range + * + * @param integer $row Zero indexed row + * @param integer $col Zero indexed column + * @param string $formula The formula text string + * @param mixed $xfIndex The XF format index + * @param mixed $calculatedValue Calculated value + * @return integer + */ + private function _writeFormula($row, $col, $formula, $xfIndex, $calculatedValue) + { + $record = 0x0006; // Record identifier + + // Initialize possible additional value for STRING record that should be written after the FORMULA record? + $stringValue = null; + + // calculated value + if (isset($calculatedValue)) { + // Since we can't yet get the data type of the calculated value, + // we use best effort to determine data type + if (is_bool($calculatedValue)) { + // Boolean value + $num = pack('CCCvCv', 0x01, 0x00, (int)$calculatedValue, 0x00, 0x00, 0xFFFF); + } elseif (is_int($calculatedValue) || is_float($calculatedValue)) { + // Numeric value + $num = pack('d', $calculatedValue); + } elseif (is_string($calculatedValue)) { + if (array_key_exists($calculatedValue, PHPExcel_Cell_DataType::getErrorCodes())) { + // Error value + $num = pack('CCCvCv', 0x02, 0x00, self::_mapErrorCode($calculatedValue), 0x00, 0x00, 0xFFFF); + } elseif ($calculatedValue === '') { + // Empty string (and BIFF8) + $num = pack('CCCvCv', 0x03, 0x00, 0x00, 0x00, 0x00, 0xFFFF); + } else { + // Non-empty string value (or empty string BIFF5) + $stringValue = $calculatedValue; + $num = pack('CCCvCv', 0x00, 0x00, 0x00, 0x00, 0x00, 0xFFFF); + } + } else { + // We are really not supposed to reach here + $num = pack('d', 0x00); + } + } else { + $num = pack('d', 0x00); + } + + $grbit = 0x03; // Option flags + $unknown = 0x0000; // Must be zero + + // Strip the '=' or '@' sign at the beginning of the formula string + if ($formula{0} == '=') { + $formula = substr($formula,1); + } else { + // Error handling + $this->_writeString($row, $col, 'Unrecognised character for formula'); + return -1; + } + + // Parse the formula using the parser in Parser.php + try { + $error = $this->_parser->parse($formula); + $formula = $this->_parser->toReversePolish(); + + $formlen = strlen($formula); // Length of the binary string + $length = 0x16 + $formlen; // Length of the record data + + $header = pack("vv", $record, $length); + + $data = pack("vvv", $row, $col, $xfIndex) + . $num + . pack("vVv", $grbit, $unknown, $formlen); + $this->_append($header . $data . $formula); + + // Append also a STRING record if necessary + if ($stringValue !== null) { + $this->_writeStringRecord($stringValue); + } + + return 0; + + } catch (Exception $e) { + // do nothing + } + + } + + /** + * Write a STRING record. This + * + * @param string $stringValue + */ + private function _writeStringRecord($stringValue) + { + $record = 0x0207; // Record identifier + $data = PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($stringValue); + + $length = strlen($data); + $header = pack('vv', $record, $length); + + $this->_append($header . $data); + } + + /** + * Write a hyperlink. + * This is comprised of two elements: the visible label and + * the invisible link. The visible label is the same as the link unless an + * alternative string is specified. The label is written using the + * _writeString() method. Therefore the 255 characters string limit applies. + * $string and $format are optional. + * + * The hyperlink can be to a http, ftp, mail, internal sheet (not yet), or external + * directory url. + * + * Returns 0 : normal termination + * -2 : row or column out of range + * -3 : long string truncated to 255 chars + * + * @param integer $row Row + * @param integer $col Column + * @param string $url URL string + * @return integer + */ + private function _writeUrl($row, $col, $url) + { + // Add start row and col to arg list + return($this->_writeUrlRange($row, $col, $row, $col, $url)); + } + + /** + * This is the more general form of _writeUrl(). It allows a hyperlink to be + * written to a range of cells. This function also decides the type of hyperlink + * to be written. These are either, Web (http, ftp, mailto), Internal + * (Sheet1!A1) or external ('c:\temp\foo.xls#Sheet1!A1'). + * + * @access private + * @see _writeUrl() + * @param integer $row1 Start row + * @param integer $col1 Start column + * @param integer $row2 End row + * @param integer $col2 End column + * @param string $url URL string + * @return integer + */ + function _writeUrlRange($row1, $col1, $row2, $col2, $url) + { + // Check for internal/external sheet links or default to web link + if (preg_match('[^internal:]', $url)) { + return($this->_writeUrlInternal($row1, $col1, $row2, $col2, $url)); + } + if (preg_match('[^external:]', $url)) { + return($this->_writeUrlExternal($row1, $col1, $row2, $col2, $url)); + } + return($this->_writeUrlWeb($row1, $col1, $row2, $col2, $url)); + } + + /** + * Used to write http, ftp and mailto hyperlinks. + * The link type ($options) is 0x03 is the same as absolute dir ref without + * sheet. However it is differentiated by the $unknown2 data stream. + * + * @access private + * @see _writeUrl() + * @param integer $row1 Start row + * @param integer $col1 Start column + * @param integer $row2 End row + * @param integer $col2 End column + * @param string $url URL string + * @return integer + */ + function _writeUrlWeb($row1, $col1, $row2, $col2, $url) + { + $record = 0x01B8; // Record identifier + $length = 0x00000; // Bytes to follow + + // Pack the undocumented parts of the hyperlink stream + $unknown1 = pack("H*", "D0C9EA79F9BACE118C8200AA004BA90B02000000"); + $unknown2 = pack("H*", "E0C9EA79F9BACE118C8200AA004BA90B"); + + // Pack the option flags + $options = pack("V", 0x03); + + // Convert URL to a null terminated wchar string + $url = join("\0", preg_split("''", $url, -1, PREG_SPLIT_NO_EMPTY)); + $url = $url . "\0\0\0"; + + // Pack the length of the URL + $url_len = pack("V", strlen($url)); + + // Calculate the data length + $length = 0x34 + strlen($url); + + // Pack the header data + $header = pack("vv", $record, $length); + $data = pack("vvvv", $row1, $row2, $col1, $col2); + + // Write the packed data + $this->_append($header . $data . + $unknown1 . $options . + $unknown2 . $url_len . $url); + return 0; + } + + /** + * Used to write internal reference hyperlinks such as "Sheet1!A1". + * + * @access private + * @see _writeUrl() + * @param integer $row1 Start row + * @param integer $col1 Start column + * @param integer $row2 End row + * @param integer $col2 End column + * @param string $url URL string + * @return integer + */ + function _writeUrlInternal($row1, $col1, $row2, $col2, $url) + { + $record = 0x01B8; // Record identifier + $length = 0x00000; // Bytes to follow + + // Strip URL type + $url = preg_replace('/^internal:/', '', $url); + + // Pack the undocumented parts of the hyperlink stream + $unknown1 = pack("H*", "D0C9EA79F9BACE118C8200AA004BA90B02000000"); + + // Pack the option flags + $options = pack("V", 0x08); + + // Convert the URL type and to a null terminated wchar string + $url .= "\0"; + + // character count + $url_len = PHPExcel_Shared_String::CountCharacters($url); + $url_len = pack('V', $url_len); + + $url = PHPExcel_Shared_String::ConvertEncoding($url, 'UTF-16LE', 'UTF-8'); + + // Calculate the data length + $length = 0x24 + strlen($url); + + // Pack the header data + $header = pack("vv", $record, $length); + $data = pack("vvvv", $row1, $row2, $col1, $col2); + + // Write the packed data + $this->_append($header . $data . + $unknown1 . $options . + $url_len . $url); + return 0; + } + + /** + * Write links to external directory names such as 'c:\foo.xls', + * c:\foo.xls#Sheet1!A1', '../../foo.xls'. and '../../foo.xls#Sheet1!A1'. + * + * Note: Excel writes some relative links with the $dir_long string. We ignore + * these cases for the sake of simpler code. + * + * @access private + * @see _writeUrl() + * @param integer $row1 Start row + * @param integer $col1 Start column + * @param integer $row2 End row + * @param integer $col2 End column + * @param string $url URL string + * @return integer + */ + function _writeUrlExternal($row1, $col1, $row2, $col2, $url) + { + // Network drives are different. We will handle them separately + // MS/Novell network drives and shares start with \\ + if (preg_match('[^external:\\\\]', $url)) { + return; //($this->_writeUrlExternal_net($row1, $col1, $row2, $col2, $url, $str, $format)); + } + + $record = 0x01B8; // Record identifier + $length = 0x00000; // Bytes to follow + + // Strip URL type and change Unix dir separator to Dos style (if needed) + // + $url = preg_replace('/^external:/', '', $url); + $url = preg_replace('/\//', "\\", $url); + + // Determine if the link is relative or absolute: + // relative if link contains no dir separator, "somefile.xls" + // relative if link starts with up-dir, "..\..\somefile.xls" + // otherwise, absolute + + $absolute = 0x00; // relative path + if ( preg_match('/^[A-Z]:/', $url) ) { + $absolute = 0x02; // absolute path on Windows, e.g. C:\... + } + $link_type = 0x01 | $absolute; + + // Determine if the link contains a sheet reference and change some of the + // parameters accordingly. + // Split the dir name and sheet name (if it exists) + $dir_long = $url; + if (preg_match("/\#/", $url)) { + $link_type |= 0x08; + } + + + // Pack the link type + $link_type = pack("V", $link_type); + + // Calculate the up-level dir count e.g.. (..\..\..\ == 3) + $up_count = preg_match_all("/\.\.\\\/", $dir_long, $useless); + $up_count = pack("v", $up_count); + + // Store the short dos dir name (null terminated) + $dir_short = preg_replace("/\.\.\\\/", '', $dir_long) . "\0"; + + // Store the long dir name as a wchar string (non-null terminated) + $dir_long = $dir_long . "\0"; + + // Pack the lengths of the dir strings + $dir_short_len = pack("V", strlen($dir_short) ); + $dir_long_len = pack("V", strlen($dir_long) ); + $stream_len = pack("V", 0);//strlen($dir_long) + 0x06); + + // Pack the undocumented parts of the hyperlink stream + $unknown1 = pack("H*",'D0C9EA79F9BACE118C8200AA004BA90B02000000' ); + $unknown2 = pack("H*",'0303000000000000C000000000000046' ); + $unknown3 = pack("H*",'FFFFADDE000000000000000000000000000000000000000'); + $unknown4 = pack("v", 0x03 ); + + // Pack the main data stream + $data = pack("vvvv", $row1, $row2, $col1, $col2) . + $unknown1 . + $link_type . + $unknown2 . + $up_count . + $dir_short_len. + $dir_short . + $unknown3 . + $stream_len ;/*. + $dir_long_len . + $unknown4 . + $dir_long . + $sheet_len . + $sheet ;*/ + + // Pack the header data + $length = strlen($data); + $header = pack("vv", $record, $length); + + // Write the packed data + $this->_append($header. $data); + return 0; + } + + /** + * This method is used to set the height and format for a row. + * + * @param integer $row The row to set + * @param integer $height Height we are giving to the row. + * Use null to set XF without setting height + * @param integer $xfIndex The optional cell style Xf index to apply to the columns + * @param bool $hidden The optional hidden attribute + * @param integer $level The optional outline level for row, in range [0,7] + */ + private function _writeRow($row, $height, $xfIndex, $hidden = false, $level = 0) + { + $record = 0x0208; // Record identifier + $length = 0x0010; // Number of bytes to follow + + $colMic = 0x0000; // First defined column + $colMac = 0x0000; // Last defined column + $irwMac = 0x0000; // Used by Excel to optimise loading + $reserved = 0x0000; // Reserved + $grbit = 0x0000; // Option flags + $ixfe = $xfIndex; + + if ( $height < 0 ){ + $height = null; + } + + // Use _writeRow($row, null, $XF) to set XF format without setting height + if ($height != null) { + $miyRw = $height * 20; // row height + } else { + $miyRw = 0xff; // default row height is 256 + } + + // Set the options flags. fUnsynced is used to show that the font and row + // heights are not compatible. This is usually the case for WriteExcel. + // The collapsed flag 0x10 doesn't seem to be used to indicate that a row + // is collapsed. Instead it is used to indicate that the previous row is + // collapsed. The zero height flag, 0x20, is used to collapse a row. + + $grbit |= $level; + if ($hidden) { + $grbit |= 0x0020; + } + if ($height !== null) { + $grbit |= 0x0040; // fUnsynced + } + if ($xfIndex !== 0xF) { + $grbit |= 0x0080; + } + $grbit |= 0x0100; + + $header = pack("vv", $record, $length); + $data = pack("vvvvvvvv", $row, $colMic, $colMac, $miyRw, + $irwMac,$reserved, $grbit, $ixfe); + $this->_append($header.$data); + } + + /** + * Writes Excel DIMENSIONS to define the area in which there is data. + */ + private function _writeDimensions() + { + $record = 0x0200; // Record identifier + + $length = 0x000E; + $data = pack('VVvvv' + , $this->_firstRowIndex + , $this->_lastRowIndex + 1 + , $this->_firstColumnIndex + , $this->_lastColumnIndex + 1 + , 0x0000 // reserved + ); + + $header = pack("vv", $record, $length); + $this->_append($header.$data); + } + + /** + * Write BIFF record Window2. + */ + private function _writeWindow2() + { + $record = 0x023E; // Record identifier + $length = 0x0012; + + $grbit = 0x00B6; // Option flags + $rwTop = 0x0000; // Top row visible in window + $colLeft = 0x0000; // Leftmost column visible in window + + + // The options flags that comprise $grbit + $fDspFmla = 0; // 0 - bit + $fDspGrid = $this->_phpSheet->getShowGridlines() ? 1 : 0; // 1 + $fDspRwCol = $this->_phpSheet->getShowRowColHeaders() ? 1 : 0; // 2 + $fFrozen = $this->_phpSheet->getFreezePane() ? 1 : 0; // 3 + $fDspZeros = 1; // 4 + $fDefaultHdr = 1; // 5 + $fArabic = $this->_phpSheet->getRightToLeft() ? 1 : 0; // 6 + $fDspGuts = $this->_outline_on; // 7 + $fFrozenNoSplit = 0; // 0 - bit + // no support in PHPExcel for selected sheet, therefore sheet is only selected if it is the active sheet + $fSelected = ($this->_phpSheet === $this->_phpSheet->getParent()->getActiveSheet()) ? 1 : 0; + $fPaged = 1; // 2 + + $grbit = $fDspFmla; + $grbit |= $fDspGrid << 1; + $grbit |= $fDspRwCol << 2; + $grbit |= $fFrozen << 3; + $grbit |= $fDspZeros << 4; + $grbit |= $fDefaultHdr << 5; + $grbit |= $fArabic << 6; + $grbit |= $fDspGuts << 7; + $grbit |= $fFrozenNoSplit << 8; + $grbit |= $fSelected << 9; + $grbit |= $fPaged << 10; + + $header = pack("vv", $record, $length); + $data = pack("vvv", $grbit, $rwTop, $colLeft); + + // FIXME !!! + $rgbHdr = 0x0040; // Row/column heading and gridline color index + $zoom_factor_page_break = 0x0000; + $zoom_factor_normal = 0x0000; + $data .= pack("vvvvV", $rgbHdr, 0x0000, $zoom_factor_page_break, $zoom_factor_normal, 0x00000000); + + $this->_append($header.$data); + } + + /** + * Write BIFF record DEFAULTROWHEIGHT. + */ + private function _writeDefaultRowHeight() + { + $defaultRowHeight = $this->_phpSheet->getDefaultRowDimension()->getRowHeight(); + + if ($defaultRowHeight < 0) { + return; + } + + // convert to twips + $defaultRowHeight = (int) 20 * $defaultRowHeight; + + $record = 0x0225; // Record identifier + $length = 0x0004; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("vv", 1, $defaultRowHeight); + $this->_append($header . $data); + } + + /** + * Write BIFF record DEFCOLWIDTH if COLINFO records are in use. + */ + private function _writeDefcol() + { + $defaultColWidth = 8; + + $record = 0x0055; // Record identifier + $length = 0x0002; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("v", $defaultColWidth); + $this->_append($header . $data); + } + + /** + * Write BIFF record COLINFO to define column widths + * + * Note: The SDK says the record length is 0x0B but Excel writes a 0x0C + * length record. + * + * @param array $col_array This is the only parameter received and is composed of the following: + * 0 => First formatted column, + * 1 => Last formatted column, + * 2 => Col width (8.43 is Excel default), + * 3 => The optional XF format of the column, + * 4 => Option flags. + * 5 => Optional outline level + */ + private function _writeColinfo($col_array) + { + if (isset($col_array[0])) { + $colFirst = $col_array[0]; + } + if (isset($col_array[1])) { + $colLast = $col_array[1]; + } + if (isset($col_array[2])) { + $coldx = $col_array[2]; + } else { + $coldx = 8.43; + } + if (isset($col_array[3])) { + $xfIndex = $col_array[3]; + } else { + $xfIndex = 15; + } + if (isset($col_array[4])) { + $grbit = $col_array[4]; + } else { + $grbit = 0; + } + if (isset($col_array[5])) { + $level = $col_array[5]; + } else { + $level = 0; + } + $record = 0x007D; // Record identifier + $length = 0x000C; // Number of bytes to follow + + $coldx *= 256; // Convert to units of 1/256 of a char + + $ixfe = $xfIndex; + $reserved = 0x0000; // Reserved + + $level = max(0, min($level, 7)); + $grbit |= $level << 8; + + $header = pack("vv", $record, $length); + $data = pack("vvvvvv", $colFirst, $colLast, $coldx, + $ixfe, $grbit, $reserved); + $this->_append($header.$data); + } + + /** + * Write BIFF record SELECTION. + */ + private function _writeSelection() + { + // look up the selected cell range + $selectedCells = $this->_phpSheet->getSelectedCells(); + $selectedCells = PHPExcel_Cell::splitRange($this->_phpSheet->getSelectedCells()); + $selectedCells = $selectedCells[0]; + if (count($selectedCells) == 2) { + list($first, $last) = $selectedCells; + } else { + $first = $selectedCells[0]; + $last = $selectedCells[0]; + } + + list($colFirst, $rwFirst) = PHPExcel_Cell::coordinateFromString($first); + $colFirst = PHPExcel_Cell::columnIndexFromString($colFirst) - 1; // base 0 column index + --$rwFirst; // base 0 row index + + list($colLast, $rwLast) = PHPExcel_Cell::coordinateFromString($last); + $colLast = PHPExcel_Cell::columnIndexFromString($colLast) - 1; // base 0 column index + --$rwLast; // base 0 row index + + // make sure we are not out of bounds + $colFirst = min($colFirst, 255); + $colLast = min($colLast, 255); + + $rwFirst = min($rwFirst, 65535); + $rwLast = min($rwLast, 65535); + + $record = 0x001D; // Record identifier + $length = 0x000F; // Number of bytes to follow + + $pnn = $this->_active_pane; // Pane position + $rwAct = $rwFirst; // Active row + $colAct = $colFirst; // Active column + $irefAct = 0; // Active cell ref + $cref = 1; // Number of refs + + if (!isset($rwLast)) { + $rwLast = $rwFirst; // Last row in reference + } + if (!isset($colLast)) { + $colLast = $colFirst; // Last col in reference + } + + // Swap last row/col for first row/col as necessary + if ($rwFirst > $rwLast) { + list($rwFirst, $rwLast) = array($rwLast, $rwFirst); + } + + if ($colFirst > $colLast) { + list($colFirst, $colLast) = array($colLast, $colFirst); + } + + $header = pack("vv", $record, $length); + $data = pack("CvvvvvvCC", $pnn, $rwAct, $colAct, + $irefAct, $cref, + $rwFirst, $rwLast, + $colFirst, $colLast); + $this->_append($header . $data); + } + + /** + * Store the MERGEDCELLS records for all ranges of merged cells + */ + private function _writeMergedCells() + { + $mergeCells = $this->_phpSheet->getMergeCells(); + $countMergeCells = count($mergeCells); + + if ($countMergeCells == 0) { + return; + } + + // maximum allowed number of merged cells per record + $maxCountMergeCellsPerRecord = 1027; + + // record identifier + $record = 0x00E5; + + // counter for total number of merged cells treated so far by the writer + $i = 0; + + // counter for number of merged cells written in record currently being written + $j = 0; + + // initialize record data + $recordData = ''; + + // loop through the merged cells + foreach ($mergeCells as $mergeCell) { + ++$i; + ++$j; + + // extract the row and column indexes + $range = PHPExcel_Cell::splitRange($mergeCell); + list($first, $last) = $range[0]; + list($firstColumn, $firstRow) = PHPExcel_Cell::coordinateFromString($first); + list($lastColumn, $lastRow) = PHPExcel_Cell::coordinateFromString($last); + + $recordData .= pack('vvvv', $firstRow - 1, $lastRow - 1, PHPExcel_Cell::columnIndexFromString($firstColumn) - 1, PHPExcel_Cell::columnIndexFromString($lastColumn) - 1); + + // flush record if we have reached limit for number of merged cells, or reached final merged cell + if ($j == $maxCountMergeCellsPerRecord or $i == $countMergeCells) { + $recordData = pack('v', $j) . $recordData; + $length = strlen($recordData); + $header = pack('vv', $record, $length); + $this->_append($header . $recordData); + + // initialize for next record, if any + $recordData = ''; + $j = 0; + } + } + } + + /** + * Write SHEETLAYOUT record + */ + private function _writeSheetLayout() + { + if (!$this->_phpSheet->isTabColorSet()) { + return; + } + + $recordData = pack( + 'vvVVVvv' + , 0x0862 + , 0x0000 // unused + , 0x00000000 // unused + , 0x00000000 // unused + , 0x00000014 // size of record data + , $this->_colors[$this->_phpSheet->getTabColor()->getRGB()] // color index + , 0x0000 // unused + ); + + $length = strlen($recordData); + + $record = 0x0862; // Record identifier + $header = pack('vv', $record, $length); + $this->_append($header . $recordData); + } + + /** + * Write SHEETPROTECTION + */ + private function _writeSheetProtection() + { + // record identifier + $record = 0x0867; + + // prepare options + $options = (int) !$this->_phpSheet->getProtection()->getObjects() + | (int) !$this->_phpSheet->getProtection()->getScenarios() << 1 + | (int) !$this->_phpSheet->getProtection()->getFormatCells() << 2 + | (int) !$this->_phpSheet->getProtection()->getFormatColumns() << 3 + | (int) !$this->_phpSheet->getProtection()->getFormatRows() << 4 + | (int) !$this->_phpSheet->getProtection()->getInsertColumns() << 5 + | (int) !$this->_phpSheet->getProtection()->getInsertRows() << 6 + | (int) !$this->_phpSheet->getProtection()->getInsertHyperlinks() << 7 + | (int) !$this->_phpSheet->getProtection()->getDeleteColumns() << 8 + | (int) !$this->_phpSheet->getProtection()->getDeleteRows() << 9 + | (int) !$this->_phpSheet->getProtection()->getSelectLockedCells() << 10 + | (int) !$this->_phpSheet->getProtection()->getSort() << 11 + | (int) !$this->_phpSheet->getProtection()->getAutoFilter() << 12 + | (int) !$this->_phpSheet->getProtection()->getPivotTables() << 13 + | (int) !$this->_phpSheet->getProtection()->getSelectUnlockedCells() << 14 ; + + // record data + $recordData = pack( + 'vVVCVVvv' + , 0x0867 // repeated record identifier + , 0x0000 // not used + , 0x0000 // not used + , 0x00 // not used + , 0x01000200 // unknown data + , 0xFFFFFFFF // unknown data + , $options // options + , 0x0000 // not used + ); + + $length = strlen($recordData); + $header = pack('vv', $record, $length); + + $this->_append($header . $recordData); + } + + /** + * Write BIFF record RANGEPROTECTION + * + * Openoffice.org's Documentaion of the Microsoft Excel File Format uses term RANGEPROTECTION for these records + * Microsoft Office Excel 97-2007 Binary File Format Specification uses term FEAT for these records + */ + private function _writeRangeProtection() + { + foreach ($this->_phpSheet->getProtectedCells() as $range => $password) { + // number of ranges, e.g. 'A1:B3 C20:D25' + $cellRanges = explode(' ', $range); + $cref = count($cellRanges); + + $recordData = pack( + 'vvVVvCVvVv', + 0x0868, + 0x00, + 0x0000, + 0x0000, + 0x02, + 0x0, + 0x0000, + $cref, + 0x0000, + 0x00 + ); + + foreach ($cellRanges as $cellRange) { + $recordData .= $this->_writeBIFF8CellRangeAddressFixed($cellRange); + } + + // the rgbFeat structure + $recordData .= pack( + 'VV', + 0x0000, + hexdec($password) + ); + + $recordData .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong('p' . md5($recordData)); + + $length = strlen($recordData); + + $record = 0x0868; // Record identifier + $header = pack("vv", $record, $length); + $this->_append($header . $recordData); + } + } + + /** + * Write BIFF record EXTERNCOUNT to indicate the number of external sheet + * references in a worksheet. + * + * Excel only stores references to external sheets that are used in formulas. + * For simplicity we store references to all the sheets in the workbook + * regardless of whether they are used or not. This reduces the overall + * complexity and eliminates the need for a two way dialogue between the formula + * parser the worksheet objects. + * + * @param integer $count The number of external sheet references in this worksheet + */ + private function _writeExterncount($count) + { + $record = 0x0016; // Record identifier + $length = 0x0002; // Number of bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("v", $count); + $this->_append($header . $data); + } + + /** + * Writes the Excel BIFF EXTERNSHEET record. These references are used by + * formulas. A formula references a sheet name via an index. Since we store a + * reference to all of the external worksheets the EXTERNSHEET index is the same + * as the worksheet index. + * + * @param string $sheetname The name of a external worksheet + */ + private function _writeExternsheet($sheetname) + { + $record = 0x0017; // Record identifier + + // References to the current sheet are encoded differently to references to + // external sheets. + // + if ($this->_phpSheet->getTitle() == $sheetname) { + $sheetname = ''; + $length = 0x02; // The following 2 bytes + $cch = 1; // The following byte + $rgch = 0x02; // Self reference + } else { + $length = 0x02 + strlen($sheetname); + $cch = strlen($sheetname); + $rgch = 0x03; // Reference to a sheet in the current workbook + } + + $header = pack("vv", $record, $length); + $data = pack("CC", $cch, $rgch); + $this->_append($header . $data . $sheetname); + } + + /** + * Writes the Excel BIFF PANE record. + * The panes can either be frozen or thawed (unfrozen). + * Frozen panes are specified in terms of an integer number of rows and columns. + * Thawed panes are specified in terms of Excel's units for rows and columns. + */ + private function _writePanes() + { + $panes = array(); + if ($freezePane = $this->_phpSheet->getFreezePane()) { + list($column, $row) = PHPExcel_Cell::coordinateFromString($freezePane); + $panes[0] = $row - 1; + $panes[1] = PHPExcel_Cell::columnIndexFromString($column) - 1; + } else { + // thaw panes + return; + } + + $y = isset($panes[0]) ? $panes[0] : null; + $x = isset($panes[1]) ? $panes[1] : null; + $rwTop = isset($panes[2]) ? $panes[2] : null; + $colLeft = isset($panes[3]) ? $panes[3] : null; + if (count($panes) > 4) { // if Active pane was received + $pnnAct = $panes[4]; + } else { + $pnnAct = null; + } + $record = 0x0041; // Record identifier + $length = 0x000A; // Number of bytes to follow + + // Code specific to frozen or thawed panes. + if ($this->_phpSheet->getFreezePane()) { + // Set default values for $rwTop and $colLeft + if (!isset($rwTop)) { + $rwTop = $y; + } + if (!isset($colLeft)) { + $colLeft = $x; + } + } else { + // Set default values for $rwTop and $colLeft + if (!isset($rwTop)) { + $rwTop = 0; + } + if (!isset($colLeft)) { + $colLeft = 0; + } + + // Convert Excel's row and column units to the internal units. + // The default row height is 12.75 + // The default column width is 8.43 + // The following slope and intersection values were interpolated. + // + $y = 20*$y + 255; + $x = 113.879*$x + 390; + } + + + // Determine which pane should be active. There is also the undocumented + // option to override this should it be necessary: may be removed later. + // + if (!isset($pnnAct)) { + if ($x != 0 && $y != 0) { + $pnnAct = 0; // Bottom right + } + if ($x != 0 && $y == 0) { + $pnnAct = 1; // Top right + } + if ($x == 0 && $y != 0) { + $pnnAct = 2; // Bottom left + } + if ($x == 0 && $y == 0) { + $pnnAct = 3; // Top left + } + } + + $this->_active_pane = $pnnAct; // Used in _writeSelection + + $header = pack("vv", $record, $length); + $data = pack("vvvvv", $x, $y, $rwTop, $colLeft, $pnnAct); + $this->_append($header . $data); + } + + /** + * Store the page setup SETUP BIFF record. + */ + private function _writeSetup() + { + $record = 0x00A1; // Record identifier + $length = 0x0022; // Number of bytes to follow + + $iPaperSize = $this->_phpSheet->getPageSetup()->getPaperSize(); // Paper size + + $iScale = $this->_phpSheet->getPageSetup()->getScale() ? + $this->_phpSheet->getPageSetup()->getScale() : 100; // Print scaling factor + + $iPageStart = 0x01; // Starting page number + $iFitWidth = (int) $this->_phpSheet->getPageSetup()->getFitToWidth(); // Fit to number of pages wide + $iFitHeight = (int) $this->_phpSheet->getPageSetup()->getFitToHeight(); // Fit to number of pages high + $grbit = 0x00; // Option flags + $iRes = 0x0258; // Print resolution + $iVRes = 0x0258; // Vertical print resolution + + $numHdr = $this->_phpSheet->getPageMargins()->getHeader(); // Header Margin + + $numFtr = $this->_phpSheet->getPageMargins()->getFooter(); // Footer Margin + $iCopies = 0x01; // Number of copies + + $fLeftToRight = 0x0; // Print over then down + + // Page orientation + $fLandscape = ($this->_phpSheet->getPageSetup()->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? + 0x0 : 0x1; + + $fNoPls = 0x0; // Setup not read from printer + $fNoColor = 0x0; // Print black and white + $fDraft = 0x0; // Print draft quality + $fNotes = 0x0; // Print notes + $fNoOrient = 0x0; // Orientation not set + $fUsePage = 0x0; // Use custom starting page + + $grbit = $fLeftToRight; + $grbit |= $fLandscape << 1; + $grbit |= $fNoPls << 2; + $grbit |= $fNoColor << 3; + $grbit |= $fDraft << 4; + $grbit |= $fNotes << 5; + $grbit |= $fNoOrient << 6; + $grbit |= $fUsePage << 7; + + $numHdr = pack("d", $numHdr); + $numFtr = pack("d", $numFtr); + if (self::getByteOrder()) { // if it's Big Endian + $numHdr = strrev($numHdr); + $numFtr = strrev($numFtr); + } + + $header = pack("vv", $record, $length); + $data1 = pack("vvvvvvvv", $iPaperSize, + $iScale, + $iPageStart, + $iFitWidth, + $iFitHeight, + $grbit, + $iRes, + $iVRes); + $data2 = $numHdr.$numFtr; + $data3 = pack("v", $iCopies); + $this->_append($header . $data1 . $data2 . $data3); + } + + /** + * Store the header caption BIFF record. + */ + private function _writeHeader() + { + $record = 0x0014; // Record identifier + + /* removing for now + // need to fix character count (multibyte!) + if (strlen($this->_phpSheet->getHeaderFooter()->getOddHeader()) <= 255) { + $str = $this->_phpSheet->getHeaderFooter()->getOddHeader(); // header string + } else { + $str = ''; + } + */ + + $recordData = PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($this->_phpSheet->getHeaderFooter()->getOddHeader()); + $length = strlen($recordData); + + $header = pack("vv", $record, $length); + + $this->_append($header . $recordData); + } + + /** + * Store the footer caption BIFF record. + */ + private function _writeFooter() + { + $record = 0x0015; // Record identifier + + /* removing for now + // need to fix character count (multibyte!) + if (strlen($this->_phpSheet->getHeaderFooter()->getOddFooter()) <= 255) { + $str = $this->_phpSheet->getHeaderFooter()->getOddFooter(); + } else { + $str = ''; + } + */ + + $recordData = PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($this->_phpSheet->getHeaderFooter()->getOddFooter()); + $length = strlen($recordData); + + $header = pack("vv", $record, $length); + + $this->_append($header . $recordData); + } + + /** + * Store the horizontal centering HCENTER BIFF record. + * + * @access private + */ + private function _writeHcenter() + { + $record = 0x0083; // Record identifier + $length = 0x0002; // Bytes to follow + + $fHCenter = $this->_phpSheet->getPageSetup()->getHorizontalCentered() ? 1 : 0; // Horizontal centering + + $header = pack("vv", $record, $length); + $data = pack("v", $fHCenter); + + $this->_append($header.$data); + } + + /** + * Store the vertical centering VCENTER BIFF record. + */ + private function _writeVcenter() + { + $record = 0x0084; // Record identifier + $length = 0x0002; // Bytes to follow + + $fVCenter = $this->_phpSheet->getPageSetup()->getVerticalCentered() ? 1 : 0; // Horizontal centering + + $header = pack("vv", $record, $length); + $data = pack("v", $fVCenter); + $this->_append($header . $data); + } + + /** + * Store the LEFTMARGIN BIFF record. + */ + private function _writeMarginLeft() + { + $record = 0x0026; // Record identifier + $length = 0x0008; // Bytes to follow + + $margin = $this->_phpSheet->getPageMargins()->getLeft(); // Margin in inches + + $header = pack("vv", $record, $length); + $data = pack("d", $margin); + if (self::getByteOrder()) { // if it's Big Endian + $data = strrev($data); + } + + $this->_append($header . $data); + } + + /** + * Store the RIGHTMARGIN BIFF record. + */ + private function _writeMarginRight() + { + $record = 0x0027; // Record identifier + $length = 0x0008; // Bytes to follow + + $margin = $this->_phpSheet->getPageMargins()->getRight(); // Margin in inches + + $header = pack("vv", $record, $length); + $data = pack("d", $margin); + if (self::getByteOrder()) { // if it's Big Endian + $data = strrev($data); + } + + $this->_append($header . $data); + } + + /** + * Store the TOPMARGIN BIFF record. + */ + private function _writeMarginTop() + { + $record = 0x0028; // Record identifier + $length = 0x0008; // Bytes to follow + + $margin = $this->_phpSheet->getPageMargins()->getTop(); // Margin in inches + + $header = pack("vv", $record, $length); + $data = pack("d", $margin); + if (self::getByteOrder()) { // if it's Big Endian + $data = strrev($data); + } + + $this->_append($header . $data); + } + + /** + * Store the BOTTOMMARGIN BIFF record. + */ + private function _writeMarginBottom() + { + $record = 0x0029; // Record identifier + $length = 0x0008; // Bytes to follow + + $margin = $this->_phpSheet->getPageMargins()->getBottom(); // Margin in inches + + $header = pack("vv", $record, $length); + $data = pack("d", $margin); + if (self::getByteOrder()) { // if it's Big Endian + $data = strrev($data); + } + + $this->_append($header . $data); + } + + /** + * Write the PRINTHEADERS BIFF record. + */ + private function _writePrintHeaders() + { + $record = 0x002a; // Record identifier + $length = 0x0002; // Bytes to follow + + $fPrintRwCol = $this->_print_headers; // Boolean flag + + $header = pack("vv", $record, $length); + $data = pack("v", $fPrintRwCol); + $this->_append($header . $data); + } + + /** + * Write the PRINTGRIDLINES BIFF record. Must be used in conjunction with the + * GRIDSET record. + */ + private function _writePrintGridlines() + { + $record = 0x002b; // Record identifier + $length = 0x0002; // Bytes to follow + + $fPrintGrid = $this->_phpSheet->getPrintGridlines() ? 1 : 0; // Boolean flag + + $header = pack("vv", $record, $length); + $data = pack("v", $fPrintGrid); + $this->_append($header . $data); + } + + /** + * Write the GRIDSET BIFF record. Must be used in conjunction with the + * PRINTGRIDLINES record. + */ + private function _writeGridset() + { + $record = 0x0082; // Record identifier + $length = 0x0002; // Bytes to follow + + $fGridSet = !$this->_phpSheet->getPrintGridlines(); // Boolean flag + + $header = pack("vv", $record, $length); + $data = pack("v", $fGridSet); + $this->_append($header . $data); + } + + /** + * Write the AUTOFILTERINFO BIFF record. This is used to configure the number of autofilter select used in the sheet. + */ + private function _writeAutoFilterInfo(){ + $record = 0x009D; // Record identifier + $length = 0x0002; // Bytes to follow + + $rangeBounds = PHPExcel_Cell::rangeBoundaries($this->_phpSheet->getAutoFilter()->getRange()); + $iNumFilters = 1 + $rangeBounds[1][0] - $rangeBounds[0][0]; + + $header = pack("vv", $record, $length); + $data = pack("v", $iNumFilters); + $this->_append($header . $data); + } + + /** + * Write the GUTS BIFF record. This is used to configure the gutter margins + * where Excel outline symbols are displayed. The visibility of the gutters is + * controlled by a flag in WSBOOL. + * + * @see _writeWsbool() + */ + private function _writeGuts() + { + $record = 0x0080; // Record identifier + $length = 0x0008; // Bytes to follow + + $dxRwGut = 0x0000; // Size of row gutter + $dxColGut = 0x0000; // Size of col gutter + + // determine maximum row outline level + $maxRowOutlineLevel = 0; + foreach ($this->_phpSheet->getRowDimensions() as $rowDimension) { + $maxRowOutlineLevel = max($maxRowOutlineLevel, $rowDimension->getOutlineLevel()); + } + + $col_level = 0; + + // Calculate the maximum column outline level. The equivalent calculation + // for the row outline level is carried out in _writeRow(). + $colcount = count($this->_colinfo); + for ($i = 0; $i < $colcount; ++$i) { + $col_level = max($this->_colinfo[$i][5], $col_level); + } + + // Set the limits for the outline levels (0 <= x <= 7). + $col_level = max(0, min($col_level, 7)); + + // The displayed level is one greater than the max outline levels + if ($maxRowOutlineLevel) { + ++$maxRowOutlineLevel; + } + if ($col_level) { + ++$col_level; + } + + $header = pack("vv", $record, $length); + $data = pack("vvvv", $dxRwGut, $dxColGut, $maxRowOutlineLevel, $col_level); + + $this->_append($header.$data); + } + + /** + * Write the WSBOOL BIFF record, mainly for fit-to-page. Used in conjunction + * with the SETUP record. + */ + private function _writeWsbool() + { + $record = 0x0081; // Record identifier + $length = 0x0002; // Bytes to follow + $grbit = 0x0000; + + // The only option that is of interest is the flag for fit to page. So we + // set all the options in one go. + // + // Set the option flags + $grbit |= 0x0001; // Auto page breaks visible + if ($this->_outline_style) { + $grbit |= 0x0020; // Auto outline styles + } + if ($this->_phpSheet->getShowSummaryBelow()) { + $grbit |= 0x0040; // Outline summary below + } + if ($this->_phpSheet->getShowSummaryRight()) { + $grbit |= 0x0080; // Outline summary right + } + if ($this->_phpSheet->getPageSetup()->getFitToPage()) { + $grbit |= 0x0100; // Page setup fit to page + } + if ($this->_outline_on) { + $grbit |= 0x0400; // Outline symbols displayed + } + + $header = pack("vv", $record, $length); + $data = pack("v", $grbit); + $this->_append($header . $data); + } + + /** + * Write the HORIZONTALPAGEBREAKS and VERTICALPAGEBREAKS BIFF records. + */ + private function _writeBreaks() + { + // initialize + $vbreaks = array(); + $hbreaks = array(); + + foreach ($this->_phpSheet->getBreaks() as $cell => $breakType) { + // Fetch coordinates + $coordinates = PHPExcel_Cell::coordinateFromString($cell); + + // Decide what to do by the type of break + switch ($breakType) { + case PHPExcel_Worksheet::BREAK_COLUMN: + // Add to list of vertical breaks + $vbreaks[] = PHPExcel_Cell::columnIndexFromString($coordinates[0]) - 1; + break; + + case PHPExcel_Worksheet::BREAK_ROW: + // Add to list of horizontal breaks + $hbreaks[] = $coordinates[1]; + break; + + case PHPExcel_Worksheet::BREAK_NONE: + default: + // Nothing to do + break; + } + } + + //horizontal page breaks + if (!empty($hbreaks)) { + + // Sort and filter array of page breaks + sort($hbreaks, SORT_NUMERIC); + if ($hbreaks[0] == 0) { // don't use first break if it's 0 + array_shift($hbreaks); + } + + $record = 0x001b; // Record identifier + $cbrk = count($hbreaks); // Number of page breaks + $length = 2 + 6 * $cbrk; // Bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("v", $cbrk); + + // Append each page break + foreach ($hbreaks as $hbreak) { + $data .= pack("vvv", $hbreak, 0x0000, 0x00ff); + } + + $this->_append($header . $data); + } + + // vertical page breaks + if (!empty($vbreaks)) { + + // 1000 vertical pagebreaks appears to be an internal Excel 5 limit. + // It is slightly higher in Excel 97/200, approx. 1026 + $vbreaks = array_slice($vbreaks, 0, 1000); + + // Sort and filter array of page breaks + sort($vbreaks, SORT_NUMERIC); + if ($vbreaks[0] == 0) { // don't use first break if it's 0 + array_shift($vbreaks); + } + + $record = 0x001a; // Record identifier + $cbrk = count($vbreaks); // Number of page breaks + $length = 2 + 6 * $cbrk; // Bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("v", $cbrk); + + // Append each page break + foreach ($vbreaks as $vbreak) { + $data .= pack("vvv", $vbreak, 0x0000, 0xffff); + } + + $this->_append($header . $data); + } + } + + /** + * Set the Biff PROTECT record to indicate that the worksheet is protected. + */ + private function _writeProtect() + { + // Exit unless sheet protection has been specified + if (!$this->_phpSheet->getProtection()->getSheet()) { + return; + } + + $record = 0x0012; // Record identifier + $length = 0x0002; // Bytes to follow + + $fLock = 1; // Worksheet is protected + + $header = pack("vv", $record, $length); + $data = pack("v", $fLock); + + $this->_append($header.$data); + } + + /** + * Write SCENPROTECT + */ + private function _writeScenProtect() + { + // Exit if sheet protection is not active + if (!$this->_phpSheet->getProtection()->getSheet()) { + return; + } + + // Exit if scenarios are not protected + if (!$this->_phpSheet->getProtection()->getScenarios()) { + return; + } + + $record = 0x00DD; // Record identifier + $length = 0x0002; // Bytes to follow + + $header = pack('vv', $record, $length); + $data = pack('v', 1); + + $this->_append($header . $data); + } + + /** + * Write OBJECTPROTECT + */ + private function _writeObjectProtect() + { + // Exit if sheet protection is not active + if (!$this->_phpSheet->getProtection()->getSheet()) { + return; + } + + // Exit if objects are not protected + if (!$this->_phpSheet->getProtection()->getObjects()) { + return; + } + + $record = 0x0063; // Record identifier + $length = 0x0002; // Bytes to follow + + $header = pack('vv', $record, $length); + $data = pack('v', 1); + + $this->_append($header . $data); + } + + /** + * Write the worksheet PASSWORD record. + */ + private function _writePassword() + { + // Exit unless sheet protection and password have been specified + if (!$this->_phpSheet->getProtection()->getSheet() || !$this->_phpSheet->getProtection()->getPassword()) { + return; + } + + $record = 0x0013; // Record identifier + $length = 0x0002; // Bytes to follow + + $wPassword = hexdec($this->_phpSheet->getProtection()->getPassword()); // Encoded password + + $header = pack("vv", $record, $length); + $data = pack("v", $wPassword); + + $this->_append($header . $data); + } + + /** + * Insert a 24bit bitmap image in a worksheet. + * + * @access public + * @param integer $row The row we are going to insert the bitmap into + * @param integer $col The column we are going to insert the bitmap into + * @param mixed $bitmap The bitmap filename or GD-image resource + * @param integer $x The horizontal position (offset) of the image inside the cell. + * @param integer $y The vertical position (offset) of the image inside the cell. + * @param float $scale_x The horizontal scale + * @param float $scale_y The vertical scale + */ + function insertBitmap($row, $col, $bitmap, $x = 0, $y = 0, $scale_x = 1, $scale_y = 1) + { + $bitmap_array = (is_resource($bitmap) ? $this->_processBitmapGd($bitmap) : $this->_processBitmap($bitmap)); + list($width, $height, $size, $data) = $bitmap_array; //$this->_processBitmap($bitmap); + + // Scale the frame of the image. + $width *= $scale_x; + $height *= $scale_y; + + // Calculate the vertices of the image and write the OBJ record + $this->_positionImage($col, $row, $x, $y, $width, $height); + + // Write the IMDATA record to store the bitmap data + $record = 0x007f; + $length = 8 + $size; + $cf = 0x09; + $env = 0x01; + $lcb = $size; + + $header = pack("vvvvV", $record, $length, $cf, $env, $lcb); + $this->_append($header.$data); + } + + /** + * Calculate the vertices that define the position of the image as required by + * the OBJ record. + * + * +------------+------------+ + * | A | B | + * +-----+------------+------------+ + * | |(x1,y1) | | + * | 1 |(A1)._______|______ | + * | | | | | + * | | | | | + * +-----+----| BITMAP |-----+ + * | | | | | + * | 2 | |______________. | + * | | | (B2)| + * | | | (x2,y2)| + * +---- +------------+------------+ + * + * Example of a bitmap that covers some of the area from cell A1 to cell B2. + * + * Based on the width and height of the bitmap we need to calculate 8 vars: + * $col_start, $row_start, $col_end, $row_end, $x1, $y1, $x2, $y2. + * The width and height of the cells are also variable and have to be taken into + * account. + * The values of $col_start and $row_start are passed in from the calling + * function. The values of $col_end and $row_end are calculated by subtracting + * the width and height of the bitmap from the width and height of the + * underlying cells. + * The vertices are expressed as a percentage of the underlying cell width as + * follows (rhs values are in pixels): + * + * x1 = X / W *1024 + * y1 = Y / H *256 + * x2 = (X-1) / W *1024 + * y2 = (Y-1) / H *256 + * + * Where: X is distance from the left side of the underlying cell + * Y is distance from the top of the underlying cell + * W is the width of the cell + * H is the height of the cell + * The SDK incorrectly states that the height should be expressed as a + * percentage of 1024. + * + * @access private + * @param integer $col_start Col containing upper left corner of object + * @param integer $row_start Row containing top left corner of object + * @param integer $x1 Distance to left side of object + * @param integer $y1 Distance to top of object + * @param integer $width Width of image frame + * @param integer $height Height of image frame + */ + function _positionImage($col_start, $row_start, $x1, $y1, $width, $height) + { + // Initialise end cell to the same as the start cell + $col_end = $col_start; // Col containing lower right corner of object + $row_end = $row_start; // Row containing bottom right corner of object + + // Zero the specified offset if greater than the cell dimensions + if ($x1 >= PHPExcel_Shared_Excel5::sizeCol($this->_phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_start))) { + $x1 = 0; + } + if ($y1 >= PHPExcel_Shared_Excel5::sizeRow($this->_phpSheet, $row_start + 1)) { + $y1 = 0; + } + + $width = $width + $x1 -1; + $height = $height + $y1 -1; + + // Subtract the underlying cell widths to find the end cell of the image + while ($width >= PHPExcel_Shared_Excel5::sizeCol($this->_phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_end))) { + $width -= PHPExcel_Shared_Excel5::sizeCol($this->_phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_end)); + ++$col_end; + } + + // Subtract the underlying cell heights to find the end cell of the image + while ($height >= PHPExcel_Shared_Excel5::sizeRow($this->_phpSheet, $row_end + 1)) { + $height -= PHPExcel_Shared_Excel5::sizeRow($this->_phpSheet, $row_end + 1); + ++$row_end; + } + + // Bitmap isn't allowed to start or finish in a hidden cell, i.e. a cell + // with zero eight or width. + // + if (PHPExcel_Shared_Excel5::sizeCol($this->_phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_start)) == 0) { + return; + } + if (PHPExcel_Shared_Excel5::sizeCol($this->_phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_end)) == 0) { + return; + } + if (PHPExcel_Shared_Excel5::sizeRow($this->_phpSheet, $row_start + 1) == 0) { + return; + } + if (PHPExcel_Shared_Excel5::sizeRow($this->_phpSheet, $row_end + 1) == 0) { + return; + } + + // Convert the pixel values to the percentage value expected by Excel + $x1 = $x1 / PHPExcel_Shared_Excel5::sizeCol($this->_phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_start)) * 1024; + $y1 = $y1 / PHPExcel_Shared_Excel5::sizeRow($this->_phpSheet, $row_start + 1) * 256; + $x2 = $width / PHPExcel_Shared_Excel5::sizeCol($this->_phpSheet, PHPExcel_Cell::stringFromColumnIndex($col_end)) * 1024; // Distance to right side of object + $y2 = $height / PHPExcel_Shared_Excel5::sizeRow($this->_phpSheet, $row_end + 1) * 256; // Distance to bottom of object + + $this->_writeObjPicture($col_start, $x1, + $row_start, $y1, + $col_end, $x2, + $row_end, $y2); + } + + /** + * Store the OBJ record that precedes an IMDATA record. This could be generalise + * to support other Excel objects. + * + * @param integer $colL Column containing upper left corner of object + * @param integer $dxL Distance from left side of cell + * @param integer $rwT Row containing top left corner of object + * @param integer $dyT Distance from top of cell + * @param integer $colR Column containing lower right corner of object + * @param integer $dxR Distance from right of cell + * @param integer $rwB Row containing bottom right corner of object + * @param integer $dyB Distance from bottom of cell + */ + private function _writeObjPicture($colL,$dxL,$rwT,$dyT,$colR,$dxR,$rwB,$dyB) + { + $record = 0x005d; // Record identifier + $length = 0x003c; // Bytes to follow + + $cObj = 0x0001; // Count of objects in file (set to 1) + $OT = 0x0008; // Object type. 8 = Picture + $id = 0x0001; // Object ID + $grbit = 0x0614; // Option flags + + $cbMacro = 0x0000; // Length of FMLA structure + $Reserved1 = 0x0000; // Reserved + $Reserved2 = 0x0000; // Reserved + + $icvBack = 0x09; // Background colour + $icvFore = 0x09; // Foreground colour + $fls = 0x00; // Fill pattern + $fAuto = 0x00; // Automatic fill + $icv = 0x08; // Line colour + $lns = 0xff; // Line style + $lnw = 0x01; // Line weight + $fAutoB = 0x00; // Automatic border + $frs = 0x0000; // Frame style + $cf = 0x0009; // Image format, 9 = bitmap + $Reserved3 = 0x0000; // Reserved + $cbPictFmla = 0x0000; // Length of FMLA structure + $Reserved4 = 0x0000; // Reserved + $grbit2 = 0x0001; // Option flags + $Reserved5 = 0x0000; // Reserved + + + $header = pack("vv", $record, $length); + $data = pack("V", $cObj); + $data .= pack("v", $OT); + $data .= pack("v", $id); + $data .= pack("v", $grbit); + $data .= pack("v", $colL); + $data .= pack("v", $dxL); + $data .= pack("v", $rwT); + $data .= pack("v", $dyT); + $data .= pack("v", $colR); + $data .= pack("v", $dxR); + $data .= pack("v", $rwB); + $data .= pack("v", $dyB); + $data .= pack("v", $cbMacro); + $data .= pack("V", $Reserved1); + $data .= pack("v", $Reserved2); + $data .= pack("C", $icvBack); + $data .= pack("C", $icvFore); + $data .= pack("C", $fls); + $data .= pack("C", $fAuto); + $data .= pack("C", $icv); + $data .= pack("C", $lns); + $data .= pack("C", $lnw); + $data .= pack("C", $fAutoB); + $data .= pack("v", $frs); + $data .= pack("V", $cf); + $data .= pack("v", $Reserved3); + $data .= pack("v", $cbPictFmla); + $data .= pack("v", $Reserved4); + $data .= pack("v", $grbit2); + $data .= pack("V", $Reserved5); + + $this->_append($header . $data); + } + + /** + * Convert a GD-image into the internal format. + * + * @access private + * @param resource $image The image to process + * @return array Array with data and properties of the bitmap + */ + function _processBitmapGd($image) { + $width = imagesx($image); + $height = imagesy($image); + + $data = pack("Vvvvv", 0x000c, $width, $height, 0x01, 0x18); + for ($j=$height; $j--; ) { + for ($i=0; $i < $width; ++$i) { + $color = imagecolorsforindex($image, imagecolorat($image, $i, $j)); + foreach (array("red", "green", "blue") as $key) { + $color[$key] = $color[$key] + round((255 - $color[$key]) * $color["alpha"] / 127); + } + $data .= chr($color["blue"]) . chr($color["green"]) . chr($color["red"]); + } + if (3*$width % 4) { + $data .= str_repeat("\x00", 4 - 3*$width % 4); + } + } + + return array($width, $height, strlen($data), $data); + } + + /** + * Convert a 24 bit bitmap into the modified internal format used by Windows. + * This is described in BITMAPCOREHEADER and BITMAPCOREINFO structures in the + * MSDN library. + * + * @access private + * @param string $bitmap The bitmap to process + * @return array Array with data and properties of the bitmap + */ + function _processBitmap($bitmap) + { + // Open file. + $bmp_fd = @fopen($bitmap,"rb"); + if (!$bmp_fd) { + throw new Exception("Couldn't import $bitmap"); + } + + // Slurp the file into a string. + $data = fread($bmp_fd, filesize($bitmap)); + + // Check that the file is big enough to be a bitmap. + if (strlen($data) <= 0x36) { + throw new Exception("$bitmap doesn't contain enough data.\n"); + } + + // The first 2 bytes are used to identify the bitmap. + $identity = unpack("A2ident", $data); + if ($identity['ident'] != "BM") { + throw new Exception("$bitmap doesn't appear to be a valid bitmap image.\n"); + } + + // Remove bitmap data: ID. + $data = substr($data, 2); + + // Read and remove the bitmap size. This is more reliable than reading + // the data size at offset 0x22. + // + $size_array = unpack("Vsa", substr($data, 0, 4)); + $size = $size_array['sa']; + $data = substr($data, 4); + $size -= 0x36; // Subtract size of bitmap header. + $size += 0x0C; // Add size of BIFF header. + + // Remove bitmap data: reserved, offset, header length. + $data = substr($data, 12); + + // Read and remove the bitmap width and height. Verify the sizes. + $width_and_height = unpack("V2", substr($data, 0, 8)); + $width = $width_and_height[1]; + $height = $width_and_height[2]; + $data = substr($data, 8); + if ($width > 0xFFFF) { + throw new Exception("$bitmap: largest image width supported is 65k.\n"); + } + if ($height > 0xFFFF) { + throw new Exception("$bitmap: largest image height supported is 65k.\n"); + } + + // Read and remove the bitmap planes and bpp data. Verify them. + $planes_and_bitcount = unpack("v2", substr($data, 0, 4)); + $data = substr($data, 4); + if ($planes_and_bitcount[2] != 24) { // Bitcount + throw new Exception("$bitmap isn't a 24bit true color bitmap.\n"); + } + if ($planes_and_bitcount[1] != 1) { + throw new Exception("$bitmap: only 1 plane supported in bitmap image.\n"); + } + + // Read and remove the bitmap compression. Verify compression. + $compression = unpack("Vcomp", substr($data, 0, 4)); + $data = substr($data, 4); + + //$compression = 0; + if ($compression['comp'] != 0) { + throw new Exception("$bitmap: compression not supported in bitmap image.\n"); + } + + // Remove bitmap data: data size, hres, vres, colours, imp. colours. + $data = substr($data, 20); + + // Add the BITMAPCOREHEADER data + $header = pack("Vvvvv", 0x000c, $width, $height, 0x01, 0x18); + $data = $header . $data; + + return (array($width, $height, $size, $data)); + } + + /** + * Store the window zoom factor. This should be a reduced fraction but for + * simplicity we will store all fractions with a numerator of 100. + */ + private function _writeZoom() + { + // If scale is 100 we don't need to write a record + if ($this->_phpSheet->getSheetView()->getZoomScale() == 100) { + return; + } + + $record = 0x00A0; // Record identifier + $length = 0x0004; // Bytes to follow + + $header = pack("vv", $record, $length); + $data = pack("vv", $this->_phpSheet->getSheetView()->getZoomScale(), 100); + $this->_append($header . $data); + } + + /** + * Get Escher object + * + * @return PHPExcel_Shared_Escher + */ + public function getEscher() + { + return $this->_escher; + } + + /** + * Set Escher object + * + * @param PHPExcel_Shared_Escher $pValue + */ + public function setEscher(PHPExcel_Shared_Escher $pValue = null) + { + $this->_escher = $pValue; + } + + /** + * Write MSODRAWING record + */ + private function _writeMsoDrawing() + { + // write the Escher stream if necessary + if (isset($this->_escher)) { + $writer = new PHPExcel_Writer_Excel5_Escher($this->_escher); + $data = $writer->close(); + $spOffsets = $writer->getSpOffsets(); + $spTypes = $writer->getSpTypes(); + // write the neccesary MSODRAWING, OBJ records + + // split the Escher stream + $spOffsets[0] = 0; + $nm = count($spOffsets) - 1; // number of shapes excluding first shape + for ($i = 1; $i <= $nm; ++$i) { + // MSODRAWING record + $record = 0x00EC; // Record identifier + + // chunk of Escher stream for one shape + $dataChunk = substr($data, $spOffsets[$i -1], $spOffsets[$i] - $spOffsets[$i - 1]); + + $length = strlen($dataChunk); + $header = pack("vv", $record, $length); + + $this->_append($header . $dataChunk); + + // OBJ record + $record = 0x005D; // record identifier + $objData = ''; + + // ftCmo + if($spTypes[$i] == 0x00C9){ + // Add ftCmo (common object data) subobject + $objData .= + pack('vvvvvVVV' + , 0x0015 // 0x0015 = ftCmo + , 0x0012 // length of ftCmo data + , 0x0014 // object type, 0x0014 = filter + , $i // object id number, Excel seems to use 1-based index, local for the sheet + , 0x2101 // option flags, 0x2001 is what OpenOffice.org uses + , 0 // reserved + , 0 // reserved + , 0 // reserved + ); + + // Add ftSbs Scroll bar subobject + $objData .= pack('vv', 0x00C, 0x0014); + $objData .= pack('H*', '0000000000000000640001000A00000010000100'); + // Add ftLbsData (List box data) subobject + $objData .= pack('vv', 0x0013, 0x1FEE); + $objData .= pack('H*', '00000000010001030000020008005700'); + } + else { + // Add ftCmo (common object data) subobject + $objData .= + pack('vvvvvVVV' + , 0x0015 // 0x0015 = ftCmo + , 0x0012 // length of ftCmo data + , 0x0008 // object type, 0x0008 = picture + , $i // object id number, Excel seems to use 1-based index, local for the sheet + , 0x6011 // option flags, 0x6011 is what OpenOffice.org uses + , 0 // reserved + , 0 // reserved + , 0 // reserved + ); + } + + // ftEnd + $objData .= + pack('vv' + , 0x0000 // 0x0000 = ftEnd + , 0x0000 // length of ftEnd data + ); + + $length = strlen($objData); + $header = pack('vv', $record, $length); + $this->_append($header . $objData); + } + } + } + + /** + * Store the DATAVALIDATIONS and DATAVALIDATION records. + */ + private function _writeDataValidity() + { + // Datavalidation collection + $dataValidationCollection = $this->_phpSheet->getDataValidationCollection(); + + // Write data validations? + if (!empty($dataValidationCollection)) { + + // DATAVALIDATIONS record + $record = 0x01B2; // Record identifier + $length = 0x0012; // Bytes to follow + + $grbit = 0x0000; // Prompt box at cell, no cached validity data at DV records + $horPos = 0x00000000; // Horizontal position of prompt box, if fixed position + $verPos = 0x00000000; // Vertical position of prompt box, if fixed position + $objId = 0xFFFFFFFF; // Object identifier of drop down arrow object, or -1 if not visible + + $header = pack('vv', $record, $length); + $data = pack('vVVVV', $grbit, $horPos, $verPos, $objId, + count($dataValidationCollection)); + $this->_append($header.$data); + + // DATAVALIDATION records + $record = 0x01BE; // Record identifier + + foreach ($dataValidationCollection as $cellCoordinate => $dataValidation) { + // initialize record data + $data = ''; + + // options + $options = 0x00000000; + + // data type + $type = $dataValidation->getType(); + switch ($type) { + case PHPExcel_Cell_DataValidation::TYPE_NONE: $type = 0x00; break; + case PHPExcel_Cell_DataValidation::TYPE_WHOLE: $type = 0x01; break; + case PHPExcel_Cell_DataValidation::TYPE_DECIMAL: $type = 0x02; break; + case PHPExcel_Cell_DataValidation::TYPE_LIST: $type = 0x03; break; + case PHPExcel_Cell_DataValidation::TYPE_DATE: $type = 0x04; break; + case PHPExcel_Cell_DataValidation::TYPE_TIME: $type = 0x05; break; + case PHPExcel_Cell_DataValidation::TYPE_TEXTLENGTH: $type = 0x06; break; + case PHPExcel_Cell_DataValidation::TYPE_CUSTOM: $type = 0x07; break; + } + $options |= $type << 0; + + // error style + $errorStyle = $dataValidation->getType(); + switch ($errorStyle) { + case PHPExcel_Cell_DataValidation::STYLE_STOP: $errorStyle = 0x00; break; + case PHPExcel_Cell_DataValidation::STYLE_WARNING: $errorStyle = 0x01; break; + case PHPExcel_Cell_DataValidation::STYLE_INFORMATION: $errorStyle = 0x02; break; + } + $options |= $errorStyle << 4; + + // explicit formula? + if ($type == 0x03 && preg_match('/^\".*\"$/', $dataValidation->getFormula1())) { + $options |= 0x01 << 7; + } + + // empty cells allowed + $options |= $dataValidation->getAllowBlank() << 8; + + // show drop down + $options |= (!$dataValidation->getShowDropDown()) << 9; + + // show input message + $options |= $dataValidation->getShowInputMessage() << 18; + + // show error message + $options |= $dataValidation->getShowErrorMessage() << 19; + + // condition operator + $operator = $dataValidation->getOperator(); + switch ($operator) { + case PHPExcel_Cell_DataValidation::OPERATOR_BETWEEN: $operator = 0x00 ; break; + case PHPExcel_Cell_DataValidation::OPERATOR_NOTBETWEEN: $operator = 0x01 ; break; + case PHPExcel_Cell_DataValidation::OPERATOR_EQUAL: $operator = 0x02 ; break; + case PHPExcel_Cell_DataValidation::OPERATOR_NOTEQUAL: $operator = 0x03 ; break; + case PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHAN: $operator = 0x04 ; break; + case PHPExcel_Cell_DataValidation::OPERATOR_LESSTHAN: $operator = 0x05 ; break; + case PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHANOREQUAL: $operator = 0x06; break; + case PHPExcel_Cell_DataValidation::OPERATOR_LESSTHANOREQUAL: $operator = 0x07 ; break; + } + $options |= $operator << 20; + + $data = pack('V', $options); + + // prompt title + $promptTitle = $dataValidation->getPromptTitle() !== '' ? + $dataValidation->getPromptTitle() : chr(0); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($promptTitle); + + // error title + $errorTitle = $dataValidation->getErrorTitle() !== '' ? + $dataValidation->getErrorTitle() : chr(0); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($errorTitle); + + // prompt text + $prompt = $dataValidation->getPrompt() !== '' ? + $dataValidation->getPrompt() : chr(0); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($prompt); + + // error text + $error = $dataValidation->getError() !== '' ? + $dataValidation->getError() : chr(0); + $data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong($error); + + // formula 1 + try { + $formula1 = $dataValidation->getFormula1(); + if ($type == 0x03) { // list type + $formula1 = str_replace(',', chr(0), $formula1); + } + $this->_parser->parse($formula1); + $formula1 = $this->_parser->toReversePolish(); + $sz1 = strlen($formula1); + + } catch(Exception $e) { + $sz1 = 0; + $formula1 = ''; + } + $data .= pack('vv', $sz1, 0x0000); + $data .= $formula1; + + // formula 2 + try { + $formula2 = $dataValidation->getFormula2(); + if ($formula2 === '') { + throw new Exception('No formula2'); + } + $this->_parser->parse($formula2); + $formula2 = $this->_parser->toReversePolish(); + $sz2 = strlen($formula2); + + } catch(Exception $e) { + $sz2 = 0; + $formula2 = ''; + } + $data .= pack('vv', $sz2, 0x0000); + $data .= $formula2; + + // cell range address list + $data .= pack('v', 0x0001); + $data .= $this->_writeBIFF8CellRangeAddressFixed($cellCoordinate); + + $length = strlen($data); + $header = pack("vv", $record, $length); + + $this->_append($header . $data); + } + } + } + + /** + * Map Error code + * + * @param string $errorCode + * @return int + */ + private static function _mapErrorCode($errorCode) { + switch ($errorCode) { + case '#NULL!': return 0x00; + case '#DIV/0!': return 0x07; + case '#VALUE!': return 0x0F; + case '#REF!': return 0x17; + case '#NAME?': return 0x1D; + case '#NUM!': return 0x24; + case '#N/A': return 0x2A; + } + + return 0; + } + +} \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Xf.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Xf.php new file mode 100644 index 0000000..06fb1d9 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/Xf.php @@ -0,0 +1,546 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +// Original file header of PEAR::Spreadsheet_Excel_Writer_Format (used as the base for this class): +// ----------------------------------------------------------------------------------------- +// /* +// * Module written/ported by Xavier Noguer <xnoguer@rezebra.com> +// * +// * The majority of this is _NOT_ my code. I simply ported it from the +// * PERL Spreadsheet::WriteExcel module. +// * +// * The author of the Spreadsheet::WriteExcel module is John McNamara +// * <jmcnamara@cpan.org> +// * +// * I _DO_ maintain this code, and John McNamara has nothing to do with the +// * porting of this code to PHP. Any questions directly related to this +// * class library should be directed to me. +// * +// * License Information: +// * +// * Spreadsheet_Excel_Writer: A library for generating Excel Spreadsheets +// * Copyright (c) 2002-2003 Xavier Noguer xnoguer@rezebra.com +// * +// * 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 library 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 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 +// */ + + +/** + * PHPExcel_Writer_Excel5_Xf + * + * @category PHPExcel + * @package PHPExcel_Writer_Excel5 + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_Excel5_Xf +{ + /** + * Style XF or a cell XF ? + * + * @var boolean + */ + private $_isStyleXf; + + /** + * Index to the FONT record. Index 4 does not exist + * @var integer + */ + private $_fontIndex; + + /** + * An index (2 bytes) to a FORMAT record (number format). + * @var integer + */ + public $_numberFormatIndex; + + /** + * 1 bit, apparently not used. + * @var integer + */ + public $_text_justlast; + + /** + * The cell's foreground color. + * @var integer + */ + public $_fg_color; + + /** + * The cell's background color. + * @var integer + */ + public $_bg_color; + + /** + * Color of the bottom border of the cell. + * @var integer + */ + public $_bottom_color; + + /** + * Color of the top border of the cell. + * @var integer + */ + public $_top_color; + + /** + * Color of the left border of the cell. + * @var integer + */ + public $_left_color; + + /** + * Color of the right border of the cell. + * @var integer + */ + public $_right_color; + + /** + * Constructor + * + * @access public + * @param PHPExcel_Style The XF format + */ + public function __construct(PHPExcel_Style $style = null) + { + $this->_isStyleXf = false; + $this->_fontIndex = 0; + + $this->_numberFormatIndex = 0; + + $this->_text_justlast = 0; + + $this->_fg_color = 0x40; + $this->_bg_color = 0x41; + + $this->_diag = 0; + + $this->_bottom_color = 0x40; + $this->_top_color = 0x40; + $this->_left_color = 0x40; + $this->_right_color = 0x40; + $this->_diag_color = 0x40; + $this->_style = $style; + + } + + + /** + * Generate an Excel BIFF XF record (style or cell). + * + * @return string The XF record + */ + function writeXf() + { + // Set the type of the XF record and some of the attributes. + if ($this->_isStyleXf) { + $style = 0xFFF5; + } else { + $style = self::_mapLocked($this->_style->getProtection()->getLocked()); + $style |= self::_mapHidden($this->_style->getProtection()->getHidden()) << 1; + } + + // Flags to indicate if attributes have been set. + $atr_num = ($this->_numberFormatIndex != 0)?1:0; + $atr_fnt = ($this->_fontIndex != 0)?1:0; + $atr_alc = ((int) $this->_style->getAlignment()->getWrapText())?1:0; + $atr_bdr = (self::_mapBorderStyle($this->_style->getBorders()->getBottom()->getBorderStyle()) || + self::_mapBorderStyle($this->_style->getBorders()->getTop()->getBorderStyle()) || + self::_mapBorderStyle($this->_style->getBorders()->getLeft()->getBorderStyle()) || + self::_mapBorderStyle($this->_style->getBorders()->getRight()->getBorderStyle()))?1:0; + $atr_pat = (($this->_fg_color != 0x40) || + ($this->_bg_color != 0x41) || + self::_mapFillType($this->_style->getFill()->getFillType()))?1:0; + $atr_prot = self::_mapLocked($this->_style->getProtection()->getLocked()) + | self::_mapHidden($this->_style->getProtection()->getHidden()); + + // Zero the default border colour if the border has not been set. + if (self::_mapBorderStyle($this->_style->getBorders()->getBottom()->getBorderStyle()) == 0) { + $this->_bottom_color = 0; + } + if (self::_mapBorderStyle($this->_style->getBorders()->getTop()->getBorderStyle()) == 0) { + $this->_top_color = 0; + } + if (self::_mapBorderStyle($this->_style->getBorders()->getRight()->getBorderStyle()) == 0) { + $this->_right_color = 0; + } + if (self::_mapBorderStyle($this->_style->getBorders()->getLeft()->getBorderStyle()) == 0) { + $this->_left_color = 0; + } + if (self::_mapBorderStyle($this->_style->getBorders()->getDiagonal()->getBorderStyle()) == 0) { + $this->_diag_color = 0; + } + + $record = 0x00E0; // Record identifier + $length = 0x0014; // Number of bytes to follow + + $ifnt = $this->_fontIndex; // Index to FONT record + $ifmt = $this->_numberFormatIndex; // Index to FORMAT record + + $align = $this->_mapHAlign($this->_style->getAlignment()->getHorizontal()); // Alignment + $align |= (int) $this->_style->getAlignment()->getWrapText() << 3; + $align |= self::_mapVAlign($this->_style->getAlignment()->getVertical()) << 4; + $align |= $this->_text_justlast << 7; + + $used_attrib = $atr_num << 2; + $used_attrib |= $atr_fnt << 3; + $used_attrib |= $atr_alc << 4; + $used_attrib |= $atr_bdr << 5; + $used_attrib |= $atr_pat << 6; + $used_attrib |= $atr_prot << 7; + + $icv = $this->_fg_color; // fg and bg pattern colors + $icv |= $this->_bg_color << 7; + + $border1 = self::_mapBorderStyle($this->_style->getBorders()->getLeft()->getBorderStyle()); // Border line style and color + $border1 |= self::_mapBorderStyle($this->_style->getBorders()->getRight()->getBorderStyle()) << 4; + $border1 |= self::_mapBorderStyle($this->_style->getBorders()->getTop()->getBorderStyle()) << 8; + $border1 |= self::_mapBorderStyle($this->_style->getBorders()->getBottom()->getBorderStyle()) << 12; + $border1 |= $this->_left_color << 16; + $border1 |= $this->_right_color << 23; + + $diagonalDirection = $this->_style->getBorders()->getDiagonalDirection(); + $diag_tl_to_rb = $diagonalDirection == PHPExcel_Style_Borders::DIAGONAL_BOTH + || $diagonalDirection == PHPExcel_Style_Borders::DIAGONAL_DOWN; + $diag_tr_to_lb = $diagonalDirection == PHPExcel_Style_Borders::DIAGONAL_BOTH + || $diagonalDirection == PHPExcel_Style_Borders::DIAGONAL_UP; + $border1 |= $diag_tl_to_rb << 30; + $border1 |= $diag_tr_to_lb << 31; + + $border2 = $this->_top_color; // Border color + $border2 |= $this->_bottom_color << 7; + $border2 |= $this->_diag_color << 14; + $border2 |= self::_mapBorderStyle($this->_style->getBorders()->getDiagonal()->getBorderStyle()) << 21; + $border2 |= self::_mapFillType($this->_style->getFill()->getFillType()) << 26; + + $header = pack("vv", $record, $length); + + //BIFF8 options: identation, shrinkToFit and text direction + $biff8_options = $this->_style->getAlignment()->getIndent(); + $biff8_options |= (int) $this->_style->getAlignment()->getShrinkToFit() << 4; + + $data = pack("vvvC", $ifnt, $ifmt, $style, $align); + $data .= pack("CCC" + , self::_mapTextRotation($this->_style->getAlignment()->getTextRotation()) + , $biff8_options + , $used_attrib + ); + $data .= pack("VVv", $border1, $border2, $icv); + + return($header . $data); + } + + /** + * Is this a style XF ? + * + * @param boolean $value + */ + public function setIsStyleXf($value) + { + $this->_isStyleXf = $value; + } + + /** + * Sets the cell's bottom border color + * + * @access public + * @param int $colorIndex Color index + */ + function setBottomColor($colorIndex) + { + $this->_bottom_color = $colorIndex; + } + + /** + * Sets the cell's top border color + * + * @access public + * @param int $colorIndex Color index + */ + function setTopColor($colorIndex) + { + $this->_top_color = $colorIndex; + } + + /** + * Sets the cell's left border color + * + * @access public + * @param int $colorIndex Color index + */ + function setLeftColor($colorIndex) + { + $this->_left_color = $colorIndex; + } + + /** + * Sets the cell's right border color + * + * @access public + * @param int $colorIndex Color index + */ + function setRightColor($colorIndex) + { + $this->_right_color = $colorIndex; + } + + /** + * Sets the cell's diagonal border color + * + * @access public + * @param int $colorIndex Color index + */ + function setDiagColor($colorIndex) + { + $this->_diag_color = $colorIndex; + } + + + /** + * Sets the cell's foreground color + * + * @access public + * @param int $colorIndex Color index + */ + function setFgColor($colorIndex) + { + $this->_fg_color = $colorIndex; + } + + /** + * Sets the cell's background color + * + * @access public + * @param int $colorIndex Color index + */ + function setBgColor($colorIndex) + { + $this->_bg_color = $colorIndex; + } + + /** + * Sets the index to the number format record + * It can be date, time, currency, etc... + * + * @access public + * @param integer $numberFormatIndex Index to format record + */ + function setNumberFormatIndex($numberFormatIndex) + { + $this->_numberFormatIndex = $numberFormatIndex; + } + + /** + * Set the font index. + * + * @param int $value Font index, note that value 4 does not exist + */ + public function setFontIndex($value) + { + $this->_fontIndex = $value; + } + + /** + * Map of BIFF2-BIFF8 codes for border styles + * @static array of int + * + */ + private static $_mapBorderStyle = array ( PHPExcel_Style_Border::BORDER_NONE => 0x00, + PHPExcel_Style_Border::BORDER_THIN => 0x01, + PHPExcel_Style_Border::BORDER_MEDIUM => 0x02, + PHPExcel_Style_Border::BORDER_DASHED => 0x03, + PHPExcel_Style_Border::BORDER_DOTTED => 0x04, + PHPExcel_Style_Border::BORDER_THICK => 0x05, + PHPExcel_Style_Border::BORDER_DOUBLE => 0x06, + PHPExcel_Style_Border::BORDER_HAIR => 0x07, + PHPExcel_Style_Border::BORDER_MEDIUMDASHED => 0x08, + PHPExcel_Style_Border::BORDER_DASHDOT => 0x09, + PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT => 0x0A, + PHPExcel_Style_Border::BORDER_DASHDOTDOT => 0x0B, + PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT => 0x0C, + PHPExcel_Style_Border::BORDER_SLANTDASHDOT => 0x0D, + ); + + /** + * Map border style + * + * @param string $borderStyle + * @return int + */ + private static function _mapBorderStyle($borderStyle) { + if (isset(self::$_mapBorderStyle[$borderStyle])) + return self::$_mapBorderStyle[$borderStyle]; + return 0x00; + } + + /** + * Map of BIFF2-BIFF8 codes for fill types + * @static array of int + * + */ + private static $_mapFillType = array( PHPExcel_Style_Fill::FILL_NONE => 0x00, + PHPExcel_Style_Fill::FILL_SOLID => 0x01, + PHPExcel_Style_Fill::FILL_PATTERN_MEDIUMGRAY => 0x02, + PHPExcel_Style_Fill::FILL_PATTERN_DARKGRAY => 0x03, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRAY => 0x04, + PHPExcel_Style_Fill::FILL_PATTERN_DARKHORIZONTAL => 0x05, + PHPExcel_Style_Fill::FILL_PATTERN_DARKVERTICAL => 0x06, + PHPExcel_Style_Fill::FILL_PATTERN_DARKDOWN => 0x07, + PHPExcel_Style_Fill::FILL_PATTERN_DARKUP => 0x08, + PHPExcel_Style_Fill::FILL_PATTERN_DARKGRID => 0x09, + PHPExcel_Style_Fill::FILL_PATTERN_DARKTRELLIS => 0x0A, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTHORIZONTAL => 0x0B, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTVERTICAL => 0x0C, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTDOWN => 0x0D, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTUP => 0x0E, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRID => 0x0F, + PHPExcel_Style_Fill::FILL_PATTERN_LIGHTTRELLIS => 0x10, + PHPExcel_Style_Fill::FILL_PATTERN_GRAY125 => 0x11, + PHPExcel_Style_Fill::FILL_PATTERN_GRAY0625 => 0x12, + PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR => 0x00, // does not exist in BIFF8 + PHPExcel_Style_Fill::FILL_GRADIENT_PATH => 0x00, // does not exist in BIFF8 + ); + /** + * Map fill type + * + * @param string $fillType + * @return int + */ + private static function _mapFillType($fillType) { + if (isset(self::$_mapFillType[$fillType])) + return self::$_mapFillType[$fillType]; + return 0x00; + } + + /** + * Map of BIFF2-BIFF8 codes for horizontal alignment + * @static array of int + * + */ + private static $_mapHAlign = array( PHPExcel_Style_Alignment::HORIZONTAL_GENERAL => 0, + PHPExcel_Style_Alignment::HORIZONTAL_LEFT => 1, + PHPExcel_Style_Alignment::HORIZONTAL_CENTER => 2, + PHPExcel_Style_Alignment::HORIZONTAL_RIGHT => 3, + PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY => 5, + PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS => 6, + ); + /** + * Map to BIFF2-BIFF8 codes for horizontal alignment + * + * @param string $hAlign + * @return int + */ + private function _mapHAlign($hAlign) + { + if (isset(self::$_mapHAlign[$hAlign])) + return self::$_mapHAlign[$hAlign]; + return 0; + } + + /** + * Map of BIFF2-BIFF8 codes for vertical alignment + * @static array of int + * + */ + private static $_mapVAlign = array( PHPExcel_Style_Alignment::VERTICAL_TOP => 0, + PHPExcel_Style_Alignment::VERTICAL_CENTER => 1, + PHPExcel_Style_Alignment::VERTICAL_BOTTOM => 2, + PHPExcel_Style_Alignment::VERTICAL_JUSTIFY => 3, + ); + /** + * Map to BIFF2-BIFF8 codes for vertical alignment + * + * @param string $vAlign + * @return int + */ + private static function _mapVAlign($vAlign) { + if (isset(self::$_mapVAlign[$vAlign])) + return self::$_mapVAlign[$vAlign]; + return 2; + } + + /** + * Map to BIFF8 codes for text rotation angle + * + * @param int $textRotation + * @return int + */ + private static function _mapTextRotation($textRotation) { + if ($textRotation >= 0) { + return $textRotation; + } + if ($textRotation == -165) { + return 255; + } + if ($textRotation < 0) { + return 90 - $textRotation; + } + } + + /** + * Map locked + * + * @param string + * @return int + */ + private static function _mapLocked($locked) { + switch ($locked) { + case PHPExcel_Style_Protection::PROTECTION_INHERIT: return 1; + case PHPExcel_Style_Protection::PROTECTION_PROTECTED: return 1; + case PHPExcel_Style_Protection::PROTECTION_UNPROTECTED: return 0; + default: return 1; + } + } + + /** + * Map hidden + * + * @param string + * @return int + */ + private static function _mapHidden($hidden) { + switch ($hidden) { + case PHPExcel_Style_Protection::PROTECTION_INHERIT: return 0; + case PHPExcel_Style_Protection::PROTECTION_PROTECTED: return 1; + case PHPExcel_Style_Protection::PROTECTION_UNPROTECTED: return 0; + default: return 0; + } + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/_notes/dwsync.xml new file mode 100644 index 0000000..556ff95 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/Excel5/_notes/dwsync.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="BIFFwriter.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Escher.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Font.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Parser.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Workbook.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Worksheet.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Xf.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Escher.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="Worksheet.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="Parser.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="Workbook.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="Xf.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="BIFFwriter.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="Font.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="Escher.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="Worksheet.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="Parser.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="Workbook.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="Xf.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="BIFFwriter.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="Font.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="Escher.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559890905420" remote="131260196400000000" Dst="1" /> +<file name="Parser.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559892130565" remote="131260196400000000" Dst="1" /> +<file name="Worksheet.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559891590375" remote="131260196400000000" Dst="1" /> +<file name="Workbook.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559892675843" remote="131260196400000000" Dst="1" /> +<file name="Xf.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559893151987" remote="131260196400000000" Dst="1" /> +<file name="BIFFwriter.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559893616614" remote="131260196400000000" Dst="1" /> +<file name="Font.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559894070964" remote="131260196400000000" Dst="1" /> +<file name="Escher.php" server="62.244.88.21/amashow/" local="131414752207422247" remote="131414680800000000" Dst="2" /> +<file name="Parser.php" server="62.244.88.21/amashow/" local="131414752208376134" remote="131414680800000000" Dst="2" /> +<file name="Worksheet.php" server="62.244.88.21/amashow/" local="131414752207903773" remote="131414680800000000" Dst="2" /> +<file name="Workbook.php" server="62.244.88.21/amashow/" local="131414752208875151" remote="131414680800000000" Dst="2" /> +<file name="Xf.php" server="62.244.88.21/amashow/" local="131414752209359666" remote="131414680800000000" Dst="2" /> +<file name="BIFFwriter.php" server="62.244.88.21/amashow/" local="131414752209755382" remote="131414680800000000" Dst="2" /> +<file name="Font.php" server="62.244.88.21/amashow/" local="131414752210096914" remote="131414680800000000" Dst="2" /> +<file name="Workbook.php" server="62.244.88.21/deciday/" local="131919461351681959" remote="131826017400000000" Dst="1" /> +<file name="BIFFwriter.php" server="62.244.88.21/deciday/" local="131919461348433272" remote="131826017400000000" Dst="1" /> +<file name="Parser.php" server="62.244.88.21/deciday/" local="131919461351422213" remote="131826017400000000" Dst="1" /> +<file name="Escher.php" server="62.244.88.21/deciday/" local="131919461351413931" remote="131826017400000000" Dst="1" /> +<file name="Font.php" server="62.244.88.21/deciday/" local="131919461349187349" remote="131826017400000000" Dst="1" /> +<file name="Xf.php" server="62.244.88.21/deciday/" local="131919461352858970" remote="131826017400000000" Dst="1" /> +<file name="Worksheet.php" server="62.244.88.21/deciday/" local="131919461353334189" remote="131826017400000000" Dst="1" /> +<file name="BIFFwriter.php" server="62.244.88.21/deciday_18/" local="131414752209755382" remote="131825945400000000" Dst="2" /> +<file name="Escher.php" server="62.244.88.21/deciday_18/" local="131414752207422247" remote="131825945400000000" Dst="2" /> +<file name="Font.php" server="62.244.88.21/deciday_18/" local="131414752210096914" remote="131825945400000000" Dst="2" /> +<file name="Parser.php" server="62.244.88.21/deciday_18/" local="131414752208376134" remote="131825945400000000" Dst="2" /> +<file name="Workbook.php" server="62.244.88.21/deciday_18/" local="131414752208875151" remote="131825945400000000" Dst="2" /> +<file name="Xf.php" server="62.244.88.21/deciday_18/" local="131414752209359666" remote="131825945400000000" Dst="2" /> +<file name="Worksheet.php" server="62.244.88.21/deciday_18/" local="131414752207903773" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/HTML.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/HTML.php new file mode 100644 index 0000000..f0aafaf --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/HTML.php @@ -0,0 +1,1377 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_HTML + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_HTML implements PHPExcel_Writer_IWriter { + /** + * PHPExcel object + * + * @var PHPExcel + */ + protected $_phpExcel; + + /** + * Sheet index to write + * + * @var int + */ + private $_sheetIndex = 0; + + /** + * Pre-calculate formulas + * + * @var boolean + */ + private $_preCalculateFormulas = true; + + /** + * Images root + * + * @var string + */ + private $_imagesRoot = '.'; + + /** + * Use inline CSS? + * + * @var boolean + */ + private $_useInlineCss = false; + + /** + * Array of CSS styles + * + * @var array + */ + private $_cssStyles = null; + + /** + * Array of column widths in points + * + * @var array + */ + private $_columnWidths = null; + + /** + * Default font + * + * @var PHPExcel_Style_Font + */ + private $_defaultFont; + + /** + * Flag whether spans have been calculated + * + * @var boolean + */ + private $_spansAreCalculated = false; + + /** + * Excel cells that should not be written as HTML cells + * + * @var array + */ + private $_isSpannedCell = array(); + + /** + * Excel cells that are upper-left corner in a cell merge + * + * @var array + */ + private $_isBaseCell = array(); + + /** + * Excel rows that should not be written as HTML rows + * + * @var array + */ + private $_isSpannedRow = array(); + + /** + * Is the current writer creating PDF? + * + * @var boolean + */ + protected $_isPdf = false; + + /** + * Generate the Navigation block + * + * @var boolean + */ + private $_generateSheetNavigationBlock = true; + + /** + * Create a new PHPExcel_Writer_HTML + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) { + $this->_phpExcel = $phpExcel; + $this->_defaultFont = $this->_phpExcel->getDefaultStyle()->getFont(); + } + + /** + * Save PHPExcel to file + * + * @param string $pFilename + * @throws Exception + */ + public function save($pFilename = null) { + // garbage collect + $this->_phpExcel->garbageCollect(); + + $saveDebugLog = PHPExcel_Calculation::getInstance()->writeDebugLog; + PHPExcel_Calculation::getInstance()->writeDebugLog = false; + $saveArrayReturnType = PHPExcel_Calculation::getArrayReturnType(); + PHPExcel_Calculation::setArrayReturnType(PHPExcel_Calculation::RETURN_ARRAY_AS_VALUE); + + // Build CSS + $this->buildCSS(!$this->_useInlineCss); + + // Open file + $fileHandle = fopen($pFilename, 'wb+'); + if ($fileHandle === false) { + throw new Exception("Could not open file $pFilename for writing."); + } + + // Write headers + fwrite($fileHandle, $this->generateHTMLHeader(!$this->_useInlineCss)); + + // Write navigation (tabs) + if ((!$this->_isPdf) && ($this->_generateSheetNavigationBlock)) { + fwrite($fileHandle, $this->generateNavigation()); + } + + // Write data + fwrite($fileHandle, $this->generateSheetData()); + + // Write footer + fwrite($fileHandle, $this->generateHTMLFooter()); + + // Close file + fclose($fileHandle); + + PHPExcel_Calculation::setArrayReturnType($saveArrayReturnType); + PHPExcel_Calculation::getInstance()->writeDebugLog = $saveDebugLog; + } + + /** + * Map VAlign + * + * @param string $vAlign Vertical alignment + * @return string + */ + private function _mapVAlign($vAlign) { + switch ($vAlign) { + case PHPExcel_Style_Alignment::VERTICAL_BOTTOM: return 'bottom'; + case PHPExcel_Style_Alignment::VERTICAL_TOP: return 'top'; + case PHPExcel_Style_Alignment::VERTICAL_CENTER: + case PHPExcel_Style_Alignment::VERTICAL_JUSTIFY: return 'middle'; + default: return 'baseline'; + } + } + + /** + * Map HAlign + * + * @param string $hAlign Horizontal alignment + * @return string|false + */ + private function _mapHAlign($hAlign) { + switch ($hAlign) { + case PHPExcel_Style_Alignment::HORIZONTAL_GENERAL: return false; + case PHPExcel_Style_Alignment::HORIZONTAL_LEFT: return 'left'; + case PHPExcel_Style_Alignment::HORIZONTAL_RIGHT: return 'right'; + case PHPExcel_Style_Alignment::HORIZONTAL_CENTER: + case PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS: return 'center'; + case PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY: return 'justify'; + default: return false; + } + } + + /** + * Map border style + * + * @param int $borderStyle Sheet index + * @return string + */ + private function _mapBorderStyle($borderStyle) { + switch ($borderStyle) { + case PHPExcel_Style_Border::BORDER_NONE: return 'none'; + case PHPExcel_Style_Border::BORDER_DASHDOT: return '1px dashed'; + case PHPExcel_Style_Border::BORDER_DASHDOTDOT: return '1px dotted'; + case PHPExcel_Style_Border::BORDER_DASHED: return '1px dashed'; + case PHPExcel_Style_Border::BORDER_DOTTED: return '1px dotted'; + case PHPExcel_Style_Border::BORDER_DOUBLE: return '3px double'; + case PHPExcel_Style_Border::BORDER_HAIR: return '1px solid'; + case PHPExcel_Style_Border::BORDER_MEDIUM: return '2px solid'; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT: return '2px dashed'; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT: return '2px dotted'; + case PHPExcel_Style_Border::BORDER_MEDIUMDASHED: return '2px dashed'; + case PHPExcel_Style_Border::BORDER_SLANTDASHDOT: return '2px dashed'; + case PHPExcel_Style_Border::BORDER_THICK: return '3px solid'; + case PHPExcel_Style_Border::BORDER_THIN: return '1px solid'; + default: return '1px solid'; // map others to thin + } + } + + /** + * Get sheet index + * + * @return int + */ + public function getSheetIndex() { + return $this->_sheetIndex; + } + + /** + * Set sheet index + * + * @param int $pValue Sheet index + * @return PHPExcel_Writer_HTML + */ + public function setSheetIndex($pValue = 0) { + $this->_sheetIndex = $pValue; + return $this; + } + + /** + * Get sheet index + * + * @return boolean + */ + public function getGenerateSheetNavigationBlock() { + return $this->_generateSheetNavigationBlock; + } + + /** + * Set sheet index + * + * @param boolean $pValue Flag indicating whether the sheet navigation block should be generated or not + * @return PHPExcel_Writer_HTML + */ + public function setGenerateSheetNavigationBlock($pValue = true) { + $this->_generateSheetNavigationBlock = (bool) $pValue; + return $this; + } + + /** + * Write all sheets (resets sheetIndex to NULL) + */ + public function writeAllSheets() { + $this->_sheetIndex = null; + return $this; + } + + /** + * Generate HTML header + * + * @param boolean $pIncludeStyles Include styles? + * @return string + * @throws Exception + */ + public function generateHTMLHeader($pIncludeStyles = false) { + // PHPExcel object known? + if (is_null($this->_phpExcel)) { + throw new Exception('Internal PHPExcel object not set to an instance of an object.'); + } + + // Construct HTML + $properties = $this->_phpExcel->getProperties(); + $html = '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">' . PHP_EOL; + $html .= '<!-- Generated by PHPExcel - http://www.phpexcel.net -->' . PHP_EOL; + $html .= '<html>' . PHP_EOL; + $html .= ' <head>' . PHP_EOL; + $html .= ' <meta http-equiv="Content-Type" content="text/html; charset=utf-8">' . PHP_EOL; + if ($properties->getTitle() > '') + $html .= ' <title>' . htmlspecialchars($properties->getTitle()) . '</title>' . PHP_EOL; + + if ($properties->getCreator() > '') + $html .= ' <meta name="author" content="' . htmlspecialchars($properties->getCreator()) . '" />' . PHP_EOL; + if ($properties->getTitle() > '') + $html .= ' <meta name="title" content="' . htmlspecialchars($properties->getTitle()) . '" />' . PHP_EOL; + if ($properties->getDescription() > '') + $html .= ' <meta name="description" content="' . htmlspecialchars($properties->getDescription()) . '" />' . PHP_EOL; + if ($properties->getSubject() > '') + $html .= ' <meta name="subject" content="' . htmlspecialchars($properties->getSubject()) . '" />' . PHP_EOL; + if ($properties->getKeywords() > '') + $html .= ' <meta name="keywords" content="' . htmlspecialchars($properties->getKeywords()) . '" />' . PHP_EOL; + if ($properties->getCategory() > '') + $html .= ' <meta name="category" content="' . htmlspecialchars($properties->getCategory()) . '" />' . PHP_EOL; + if ($properties->getCompany() > '') + $html .= ' <meta name="company" content="' . htmlspecialchars($properties->getCompany()) . '" />' . PHP_EOL; + if ($properties->getManager() > '') + $html .= ' <meta name="manager" content="' . htmlspecialchars($properties->getManager()) . '" />' . PHP_EOL; + + if ($pIncludeStyles) { + $html .= $this->generateStyles(true); + } + + $html .= ' </head>' . PHP_EOL; + $html .= '' . PHP_EOL; + $html .= ' <body>' . PHP_EOL; + + // Return + return $html; + } + + /** + * Generate sheet data + * + * @return string + * @throws Exception + */ + public function generateSheetData() { + // PHPExcel object known? + if (is_null($this->_phpExcel)) { + throw new Exception('Internal PHPExcel object not set to an instance of an object.'); + } + + // Ensure that Spans have been calculated? + if (!$this->_spansAreCalculated) { + $this->_calculateSpans(); + } + + // Fetch sheets + $sheets = array(); + if (is_null($this->_sheetIndex)) { + $sheets = $this->_phpExcel->getAllSheets(); + } else { + $sheets[] = $this->_phpExcel->getSheet($this->_sheetIndex); + } + + // Construct HTML + $html = ''; + + // Loop all sheets + $sheetId = 0; + foreach ($sheets as $sheet) { + // Write table header + $html .= $this->_generateTableHeader($sheet); + + // Get worksheet dimension + $dimension = explode(':', $sheet->calculateWorksheetDimension()); + $dimension[0] = PHPExcel_Cell::coordinateFromString($dimension[0]); + $dimension[0][0] = PHPExcel_Cell::columnIndexFromString($dimension[0][0]) - 1; + $dimension[1] = PHPExcel_Cell::coordinateFromString($dimension[1]); + $dimension[1][0] = PHPExcel_Cell::columnIndexFromString($dimension[1][0]) - 1; + + // row min,max + $rowMin = $dimension[0][1]; + $rowMax = $dimension[1][1]; + + // calculate start of <tbody>, <thead> + $tbodyStart = $rowMin; + $tbodyEnd = $rowMax; + $theadStart = $theadEnd = 0; // default: no <thead> no </thead> + if ($sheet->getPageSetup()->isRowsToRepeatAtTopSet()) { + $rowsToRepeatAtTop = $sheet->getPageSetup()->getRowsToRepeatAtTop(); + + // we can only support repeating rows that start at top row + if ($rowsToRepeatAtTop[0] == 1) { + $theadStart = $rowsToRepeatAtTop[0]; + $theadEnd = $rowsToRepeatAtTop[1]; + $tbodyStart = $rowsToRepeatAtTop[1] + 1; + } + } + + // Loop through cells + $row = $rowMin-1; + while($row++ < $rowMax) { + // <thead> ? + if ($row == $theadStart) { + $html .= ' <thead>' . PHP_EOL; + } + + // <tbody> ? + if ($row == $tbodyStart) { + $html .= ' <tbody>' . PHP_EOL; + } + + // Write row if there are HTML table cells in it + if ( !isset($this->_isSpannedRow[$sheet->getParent()->getIndex($sheet)][$row]) ) { + // Start a new rowData + $rowData = array(); + // Loop through columns + $column = $dimension[0][0] - 1; + while($column++ < $dimension[1][0]) { + // Cell exists? + if ($sheet->cellExistsByColumnAndRow($column, $row)) { + $rowData[$column] = $sheet->getCellByColumnAndRow($column, $row); + } else { + $rowData[$column] = ''; + } + } + $html .= $this->_generateRow($sheet, $rowData, $row - 1); + } + + // </thead> ? + if ($row == $theadEnd) { + $html .= ' </thead>' . PHP_EOL; + } + + // </tbody> ? + if ($row == $tbodyEnd) { + $html .= ' </tbody>' . PHP_EOL; + } + } + + // Write table footer + $html .= $this->_generateTableFooter(); + + // Writing PDF? + if ($this->_isPdf) { + if (is_null($this->_sheetIndex) && $sheetId + 1 < $this->_phpExcel->getSheetCount()) { + $html .= '<div style="page-break-before:always" />'; + } + } + + // Next sheet + ++$sheetId; + } + + // Return + return $html; + } + + /** + * Generate sheet tabs + * + * @return string + * @throws Exception + */ + public function generateNavigation() + { + // PHPExcel object known? + if (is_null($this->_phpExcel)) { + throw new Exception('Internal PHPExcel object not set to an instance of an object.'); + } + + // Fetch sheets + $sheets = array(); + if (is_null($this->_sheetIndex)) { + $sheets = $this->_phpExcel->getAllSheets(); + } else { + $sheets[] = $this->_phpExcel->getSheet($this->_sheetIndex); + } + + // Construct HTML + $html = ''; + + // Only if there are more than 1 sheets + if (count($sheets) > 1) { + // Loop all sheets + $sheetId = 0; + + $html .= '<ul class="navigation">' . PHP_EOL; + + foreach ($sheets as $sheet) { + $html .= ' <li class="sheet' . $sheetId . '"><a href="#sheet' . $sheetId . '">' . $sheet->getTitle() . '</a></li>' . PHP_EOL; + ++$sheetId; + } + + $html .= '</ul>' . PHP_EOL; + } + + return $html; + } + + /** + * Generate image tag in cell + * + * @param PHPExcel_Worksheet $pSheet PHPExcel_Worksheet + * @param string $coordinates Cell coordinates + * @return string + * @throws Exception + */ + private function _writeImageTagInCell(PHPExcel_Worksheet $pSheet, $coordinates) { + // Construct HTML + $html = ''; + + // Write images + foreach ($pSheet->getDrawingCollection() as $drawing) { + if ($drawing instanceof PHPExcel_Worksheet_Drawing) { + if ($drawing->getCoordinates() == $coordinates) { + $filename = $drawing->getPath(); + + // Strip off eventual '.' + if (substr($filename, 0, 1) == '.') { + $filename = substr($filename, 1); + } + + // Prepend images root + $filename = $this->getImagesRoot() . $filename; + + // Strip off eventual '.' + if (substr($filename, 0, 1) == '.' && substr($filename, 0, 2) != './') { + $filename = substr($filename, 1); + } + + // Convert UTF8 data to PCDATA + $filename = htmlspecialchars($filename); + + $html .= PHP_EOL; + $html .= ' <img style="position: relative; left: ' . $drawing->getOffsetX() . 'px; top: ' . $drawing->getOffsetY() . 'px; width: ' . $drawing->getWidth() . 'px; height: ' . $drawing->getHeight() . 'px;" src="' . $filename . '" border="0" width="' . $drawing->getWidth() . '" height="' . $drawing->getHeight() . '" />' . PHP_EOL; + } + } + } + + // Return + return $html; + } + + /** + * Generate CSS styles + * + * @param boolean $generateSurroundingHTML Generate surrounding HTML tags? (<style> and </style>) + * @return string + * @throws Exception + */ + public function generateStyles($generateSurroundingHTML = true) { + // PHPExcel object known? + if (is_null($this->_phpExcel)) { + throw new Exception('Internal PHPExcel object not set to an instance of an object.'); + } + + // Build CSS + $css = $this->buildCSS($generateSurroundingHTML); + + // Construct HTML + $html = ''; + + // Start styles + if ($generateSurroundingHTML) { + $html .= ' <style type="text/css">' . PHP_EOL; + $html .= ' html { ' . $this->_assembleCSS($css['html']) . ' }' . PHP_EOL; + } + + // Write all other styles + foreach ($css as $styleName => $styleDefinition) { + if ($styleName != 'html') { + $html .= ' ' . $styleName . ' { ' . $this->_assembleCSS($styleDefinition) . ' }' . PHP_EOL; + } + } + + // End styles + if ($generateSurroundingHTML) { + $html .= ' </style>' . PHP_EOL; + } + + // Return + return $html; + } + + /** + * Build CSS styles + * + * @param boolean $generateSurroundingHTML Generate surrounding HTML style? (html { }) + * @return array + * @throws Exception + */ + public function buildCSS($generateSurroundingHTML = true) { + // PHPExcel object known? + if (is_null($this->_phpExcel)) { + throw new Exception('Internal PHPExcel object not set to an instance of an object.'); + } + + // Cached? + if (!is_null($this->_cssStyles)) { + return $this->_cssStyles; + } + + // Ensure that spans have been calculated + if (!$this->_spansAreCalculated) { + $this->_calculateSpans(); + } + + // Construct CSS + $css = array(); + + // Start styles + if ($generateSurroundingHTML) { + // html { } + $css['html']['font-family'] = 'Calibri, Arial, Helvetica, sans-serif'; + $css['html']['font-size'] = '11pt'; + $css['html']['background-color'] = 'white'; + } + + + // table { } + $css['table']['border-collapse'] = 'collapse'; + if (!$this->_isPdf) { + $css['table']['page-break-after'] = 'always'; + } + + // .gridlines td { } + $css['.gridlines td']['border'] = '1px dotted black'; + + // .b {} + $css['.b']['text-align'] = 'center'; // BOOL + + // .e {} + $css['.e']['text-align'] = 'center'; // ERROR + + // .f {} + $css['.f']['text-align'] = 'right'; // FORMULA + + // .inlineStr {} + $css['.inlineStr']['text-align'] = 'left'; // INLINE + + // .n {} + $css['.n']['text-align'] = 'right'; // NUMERIC + + // .s {} + $css['.s']['text-align'] = 'left'; // STRING + + // Calculate cell style hashes + foreach ($this->_phpExcel->getCellXfCollection() as $index => $style) { + $css['td.style' . $index] = $this->_createCSSStyle( $style ); + } + + // Fetch sheets + $sheets = array(); + if (is_null($this->_sheetIndex)) { + $sheets = $this->_phpExcel->getAllSheets(); + } else { + $sheets[] = $this->_phpExcel->getSheet($this->_sheetIndex); + } + + // Build styles per sheet + foreach ($sheets as $sheet) { + // Calculate hash code + $sheetIndex = $sheet->getParent()->getIndex($sheet); + + // Build styles + // Calculate column widths + $sheet->calculateColumnWidths(); + + // col elements, initialize + $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($sheet->getHighestColumn()) - 1; + $column = -1; + while($column++ < $highestColumnIndex) { + $this->_columnWidths[$sheetIndex][$column] = 42; // approximation + $css['table.sheet' . $sheetIndex . ' col.col' . $column]['width'] = '42pt'; + } + + // col elements, loop through columnDimensions and set width + foreach ($sheet->getColumnDimensions() as $columnDimension) { + if (($width = PHPExcel_Shared_Drawing::cellDimensionToPixels($columnDimension->getWidth(), $this->_defaultFont)) >= 0) { + $width = PHPExcel_Shared_Drawing::pixelsToPoints($width); + $column = PHPExcel_Cell::columnIndexFromString($columnDimension->getColumnIndex()) - 1; + $this->_columnWidths[$sheetIndex][$column] = $width; + $css['table.sheet' . $sheetIndex . ' col.col' . $column]['width'] = $width . 'pt'; + + if ($columnDimension->getVisible() === false) { + $css['table.sheet' . $sheetIndex . ' col.col' . $column]['visibility'] = 'collapse'; + $css['table.sheet' . $sheetIndex . ' col.col' . $column]['*display'] = 'none'; // target IE6+7 + } + } + } + + // Default row height + $rowDimension = $sheet->getDefaultRowDimension(); + + // table.sheetN tr { } + $css['table.sheet' . $sheetIndex . ' tr'] = array(); + + if ($rowDimension->getRowHeight() == -1) { + $pt_height = PHPExcel_Shared_Font::getDefaultRowHeightByFont($this->_phpExcel->getDefaultStyle()->getFont()); + } else { + $pt_height = $rowDimension->getRowHeight(); + } + $css['table.sheet' . $sheetIndex . ' tr']['height'] = $pt_height . 'pt'; + if ($rowDimension->getVisible() === false) { + $css['table.sheet' . $sheetIndex . ' tr']['display'] = 'none'; + $css['table.sheet' . $sheetIndex . ' tr']['visibility'] = 'hidden'; + } + + // Calculate row heights + foreach ($sheet->getRowDimensions() as $rowDimension) { + $row = $rowDimension->getRowIndex() - 1; + + // table.sheetN tr.rowYYYYYY { } + $css['table.sheet' . $sheetIndex . ' tr.row' . $row] = array(); + + if ($rowDimension->getRowHeight() == -1) { + $pt_height = PHPExcel_Shared_Font::getDefaultRowHeightByFont($this->_phpExcel->getDefaultStyle()->getFont()); + } else { + $pt_height = $rowDimension->getRowHeight(); + } + $css['table.sheet' . $sheetIndex . ' tr.row' . $row]['height'] = $pt_height . 'pt'; + if ($rowDimension->getVisible() === false) { + $css['table.sheet' . $sheetIndex . ' tr.row' . $row]['display'] = 'none'; + $css['table.sheet' . $sheetIndex . ' tr.row' . $row]['visibility'] = 'hidden'; + } + } + } + + // Cache + if (is_null($this->_cssStyles)) { + $this->_cssStyles = $css; + } + + // Return + return $css; + } + + /** + * Create CSS style + * + * @param PHPExcel_Style $pStyle PHPExcel_Style + * @return array + */ + private function _createCSSStyle(PHPExcel_Style $pStyle) { + // Construct CSS + $css = ''; + + // Create CSS + $css = array_merge( + $this->_createCSSStyleAlignment($pStyle->getAlignment()) + , $this->_createCSSStyleBorders($pStyle->getBorders()) + , $this->_createCSSStyleFont($pStyle->getFont()) + , $this->_createCSSStyleFill($pStyle->getFill()) + ); + + // Return + return $css; + } + + /** + * Create CSS style (PHPExcel_Style_Alignment) + * + * @param PHPExcel_Style_Alignment $pStyle PHPExcel_Style_Alignment + * @return array + */ + private function _createCSSStyleAlignment(PHPExcel_Style_Alignment $pStyle) { + // Construct CSS + $css = array(); + + // Create CSS + $css['vertical-align'] = $this->_mapVAlign($pStyle->getVertical()); + if ($textAlign = $this->_mapHAlign($pStyle->getHorizontal())) { + $css['text-align'] = $textAlign; + if(in_array($textAlign,array('left','right'))) + $css['padding-'.$textAlign] = (string)((int)$pStyle->getIndent() * 9).'px'; + } + + // Return + return $css; + } + + /** + * Create CSS style (PHPExcel_Style_Font) + * + * @param PHPExcel_Style_Font $pStyle PHPExcel_Style_Font + * @return array + */ + private function _createCSSStyleFont(PHPExcel_Style_Font $pStyle) { + // Construct CSS + $css = array(); + + // Create CSS + if ($pStyle->getBold()) { + $css['font-weight'] = 'bold'; + } + if ($pStyle->getUnderline() != PHPExcel_Style_Font::UNDERLINE_NONE && $pStyle->getStrikethrough()) { + $css['text-decoration'] = 'underline line-through'; + } else if ($pStyle->getUnderline() != PHPExcel_Style_Font::UNDERLINE_NONE) { + $css['text-decoration'] = 'underline'; + } else if ($pStyle->getStrikethrough()) { + $css['text-decoration'] = 'line-through'; + } + if ($pStyle->getItalic()) { + $css['font-style'] = 'italic'; + } + + $css['color'] = '#' . $pStyle->getColor()->getRGB(); + $css['font-family'] = '\'' . $pStyle->getName() . '\''; + $css['font-size'] = $pStyle->getSize() . 'pt'; + + // Return + return $css; + } + + /** + * Create CSS style (PHPExcel_Style_Borders) + * + * @param PHPExcel_Style_Borders $pStyle PHPExcel_Style_Borders + * @return array + */ + private function _createCSSStyleBorders(PHPExcel_Style_Borders $pStyle) { + // Construct CSS + $css = array(); + + // Create CSS + $css['border-bottom'] = $this->_createCSSStyleBorder($pStyle->getBottom()); + $css['border-top'] = $this->_createCSSStyleBorder($pStyle->getTop()); + $css['border-left'] = $this->_createCSSStyleBorder($pStyle->getLeft()); + $css['border-right'] = $this->_createCSSStyleBorder($pStyle->getRight()); + + // Return + return $css; + } + + /** + * Create CSS style (PHPExcel_Style_Border) + * + * @param PHPExcel_Style_Border $pStyle PHPExcel_Style_Border + * @return string + */ + private function _createCSSStyleBorder(PHPExcel_Style_Border $pStyle) { + // Create CSS + $css = $this->_mapBorderStyle($pStyle->getBorderStyle()) . ' #' . $pStyle->getColor()->getRGB(); + + // Return + return $css; + } + + /** + * Create CSS style (PHPExcel_Style_Fill) + * + * @param PHPExcel_Style_Fill $pStyle PHPExcel_Style_Fill + * @return array + */ + private function _createCSSStyleFill(PHPExcel_Style_Fill $pStyle) { + // Construct HTML + $css = array(); + + // Create CSS + $value = $pStyle->getFillType() == PHPExcel_Style_Fill::FILL_NONE ? + 'white' : '#' . $pStyle->getStartColor()->getRGB(); + $css['background-color'] = $value; + + // Return + return $css; + } + + /** + * Generate HTML footer + */ + public function generateHTMLFooter() { + // Construct HTML + $html = ''; + $html .= ' </body>' . PHP_EOL; + $html .= '</html>' . PHP_EOL; + + // Return + return $html; + } + + /** + * Generate table header + * + * @param PHPExcel_Worksheet $pSheet The worksheet for the table we are writing + * @return string + * @throws Exception + */ + private function _generateTableHeader($pSheet) { + $sheetIndex = $pSheet->getParent()->getIndex($pSheet); + + // Construct HTML + $html = ''; + + if (!$this->_useInlineCss) { + $gridlines = $pSheet->getShowGridLines() ? ' gridlines' : ''; + $html .= ' <table border="0" cellpadding="0" cellspacing="0" id="sheet' . $sheetIndex . '" class="sheet' . $sheetIndex . $gridlines . '">' . PHP_EOL; + } else { + $style = isset($this->_cssStyles['table']) ? + $this->_assembleCSS($this->_cssStyles['table']) : ''; + + if ($this->_isPdf && $pSheet->getShowGridLines()) { + $html .= ' <table border="1" cellpadding="1" id="sheet' . $sheetIndex . '" cellspacing="4" style="' . $style . '">' . PHP_EOL; + } else { + $html .= ' <table border="0" cellpadding="1" id="sheet' . $sheetIndex . '" cellspacing="4" style="' . $style . '">' . PHP_EOL; + } + } + + // Write <col> elements + $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($pSheet->getHighestColumn()) - 1; + $i = -1; + while($i++ < $highestColumnIndex) { + if (!$this->_isPdf) { + if (!$this->_useInlineCss) { + $html .= ' <col class="col' . $i . '">' . PHP_EOL; + } else { + $style = isset($this->_cssStyles['table.sheet' . $sheetIndex . ' col.col' . $i]) ? + $this->_assembleCSS($this->_cssStyles['table.sheet' . $sheetIndex . ' col.col' . $i]) : ''; + $html .= ' <col style="' . $style . '">' . PHP_EOL; + } + } + } + + // Return + return $html; + } + + /** + * Generate table footer + * + * @throws Exception + */ + private function _generateTableFooter() { + // Construct HTML + $html = ''; + $html .= ' </table>' . PHP_EOL; + + // Return + return $html; + } + + /** + * Generate row + * + * @param PHPExcel_Worksheet $pSheet PHPExcel_Worksheet + * @param array $pValues Array containing cells in a row + * @param int $pRow Row number (0-based) + * @return string + * @throws Exception + */ + private function _generateRow(PHPExcel_Worksheet $pSheet, $pValues = null, $pRow = 0) { + if (is_array($pValues)) { + // Construct HTML + $html = ''; + + // Sheet index + $sheetIndex = $pSheet->getParent()->getIndex($pSheet); + + // DomPDF and breaks + if ($this->_isPdf && count($pSheet->getBreaks()) > 0) { + $breaks = $pSheet->getBreaks(); + + // check if a break is needed before this row + if (isset($breaks['A' . $pRow])) { + // close table: </table> + $html .= $this->_generateTableFooter(); + + // insert page break + $html .= '<div style="page-break-before:always" />'; + + // open table again: <table> + <col> etc. + $html .= $this->_generateTableHeader($pSheet); + } + } + + // Write row start + if (!$this->_useInlineCss) { + $html .= ' <tr class="row' . $pRow . '">' . PHP_EOL; + } else { + $style = isset($this->_cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]) + ? $this->_assembleCSS($this->_cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]) : ''; + + $html .= ' <tr style="' . $style . '">' . PHP_EOL; + } + + // Write cells + $colNum = 0; + foreach ($pValues as $cell) { + $coordinate = PHPExcel_Cell::stringFromColumnIndex($colNum) . ($pRow + 1); + + if (!$this->_useInlineCss) { + $cssClass = ''; + $cssClass = 'column' . $colNum; + } else { + $cssClass = array(); + if (isset($this->_cssStyles['table.sheet' . $sheetIndex . ' td.column' . $colNum])) { + $this->_cssStyles['table.sheet' . $sheetIndex . ' td.column' . $colNum]; + } + } + $colSpan = 1; + $rowSpan = 1; + + // initialize + $cellData = ''; + + // PHPExcel_Cell + if ($cell instanceof PHPExcel_Cell) { + if (is_null($cell->getParent())) { + $cell->attach($pSheet); + } + // Value + if ($cell->getValue() instanceof PHPExcel_RichText) { + // Loop through rich text elements + $elements = $cell->getValue()->getRichTextElements(); + foreach ($elements as $element) { + // Rich text start? + if ($element instanceof PHPExcel_RichText_Run) { + $cellData .= '<span style="' . $this->_assembleCSS($this->_createCSSStyleFont($element->getFont())) . '">'; + + if ($element->getFont()->getSuperScript()) { + $cellData .= '<sup>'; + } else if ($element->getFont()->getSubScript()) { + $cellData .= '<sub>'; + } + } + + // Convert UTF8 data to PCDATA + $cellText = $element->getText(); + $cellData .= htmlspecialchars($cellText); + + if ($element instanceof PHPExcel_RichText_Run) { + if ($element->getFont()->getSuperScript()) { + $cellData .= '</sup>'; + } else if ($element->getFont()->getSubScript()) { + $cellData .= '</sub>'; + } + + $cellData .= '</span>'; + } + } + } else { + if ($this->_preCalculateFormulas) { + $cellData = PHPExcel_Style_NumberFormat::toFormattedString( + $cell->getCalculatedValue(), + $pSheet->getParent()->getCellXfByIndex( $cell->getXfIndex() )->getNumberFormat()->getFormatCode(), + array($this, 'formatColor') + ); + } else { + $cellData = PHPExcel_Style_NumberFormat::ToFormattedString( + $cell->getValue(), + $pSheet->getParent()->getCellXfByIndex( $cell->getXfIndex() )->getNumberFormat()->getFormatCode(), + array($this, 'formatColor') + ); + } + $cellData = htmlspecialchars($cellData); + if ($pSheet->getParent()->getCellXfByIndex( $cell->getXfIndex() )->getFont()->getSuperScript()) { + $cellData = '<sup>'.$cellData.'</sup>'; + } elseif ($pSheet->getParent()->getCellXfByIndex( $cell->getXfIndex() )->getFont()->getSubScript()) { + $cellData = '<sub>'.$cellData.'</sub>'; + } + } + + // Converts the cell content so that spaces occuring at beginning of each new line are replaced by &nbsp; + // Example: " Hello\n to the world" is converted to "&nbsp;&nbsp;Hello\n&nbsp;to the world" + $cellData = preg_replace("/(?m)(?:^|\\G) /", '&nbsp;', $cellData); + + // convert newline "\n" to '<br>' + $cellData = nl2br($cellData); + + // Extend CSS class? + if (!$this->_useInlineCss) { + $cssClass .= ' style' . $cell->getXfIndex(); + $cssClass .= ' ' . $cell->getDataType(); + } else { + if (isset($this->_cssStyles['td.style' . $cell->getXfIndex()])) { + $cssClass = array_merge($cssClass, $this->_cssStyles['td.style' . $cell->getXfIndex()]); + } + + // General horizontal alignment: Actual horizontal alignment depends on dataType + $sharedStyle = $pSheet->getParent()->getCellXfByIndex( $cell->getXfIndex() ); + if ($sharedStyle->getAlignment()->getHorizontal() == PHPExcel_Style_Alignment::HORIZONTAL_GENERAL + && isset($this->_cssStyles['.' . $cell->getDataType()]['text-align'])) + { + $cssClass['text-align'] = $this->_cssStyles['.' . $cell->getDataType()]['text-align']; + } + } + } + + // Hyperlink? + if ($pSheet->hyperlinkExists($coordinate) && !$pSheet->getHyperlink($coordinate)->isInternal()) { + $cellData = '<a href="' . htmlspecialchars($pSheet->getHyperlink($coordinate)->getUrl()) . '" title="' . htmlspecialchars($pSheet->getHyperlink($coordinate)->getTooltip()) . '">' . $cellData . '</a>'; + } + + // Should the cell be written or is it swallowed by a rowspan or colspan? + $writeCell = ! ( isset($this->_isSpannedCell[$pSheet->getParent()->getIndex($pSheet)][$pRow + 1][$colNum]) + && $this->_isSpannedCell[$pSheet->getParent()->getIndex($pSheet)][$pRow + 1][$colNum] ); + + // Colspan and Rowspan + $colspan = 1; + $rowspan = 1; + if (isset($this->_isBaseCell[$pSheet->getParent()->getIndex($pSheet)][$pRow + 1][$colNum])) { + $spans = $this->_isBaseCell[$pSheet->getParent()->getIndex($pSheet)][$pRow + 1][$colNum]; + $rowSpan = $spans['rowspan']; + $colSpan = $spans['colspan']; + } + + // Write + if ($writeCell) { + // Column start + $html .= ' <td'; + if (!$this->_useInlineCss) { + $html .= ' class="' . $cssClass . '"'; + } else { + //** Necessary redundant code for the sake of PHPExcel_Writer_PDF ** + // We must explicitly write the width of the <td> element because TCPDF + // does not recognize e.g. <col style="width:42pt"> + $width = 0; + $i = $colNum - 1; + $e = $colNum + $colSpan - 1; + while($i++ < $e) { + if (isset($this->_columnWidths[$sheetIndex][$i])) { + $width += $this->_columnWidths[$sheetIndex][$i]; + } + } + $cssClass['width'] = $width . 'pt'; + + // We must also explicitly write the height of the <td> element because TCPDF + // does not recognize e.g. <tr style="height:50pt"> + if (isset($this->_cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]['height'])) { + $height = $this->_cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]['height']; + $cssClass['height'] = $height; + } + //** end of redundant code ** + + $html .= ' style="' . $this->_assembleCSS($cssClass) . '"'; + } + if ($colSpan > 1) { + $html .= ' colspan="' . $colSpan . '"'; + } + if ($rowSpan > 1) { + $html .= ' rowspan="' . $rowSpan . '"'; + } + $html .= '>'; + + // Image? + $html .= $this->_writeImageTagInCell($pSheet, $coordinate); + + // Cell data + $html .= $cellData; + + // Column end + $html .= '</td>' . PHP_EOL; + } + + // Next column + ++$colNum; + } + + // Write row end + $html .= ' </tr>' . PHP_EOL; + + // Return + return $html; + } else { + throw new Exception("Invalid parameters passed."); + } + } + + /** + * Takes array where of CSS properties / values and converts to CSS string + * + * @param array + * @return string + */ + private function _assembleCSS($pValue = array()) + { + $pairs = array(); + foreach ($pValue as $property => $value) { + $pairs[] = $property . ':' . $value; + } + $string = implode('; ', $pairs); + + return $string; + } + + /** + * Get Pre-Calculate Formulas + * + * @return boolean + */ + public function getPreCalculateFormulas() { + return $this->_preCalculateFormulas; + } + + /** + * Set Pre-Calculate Formulas + * + * @param boolean $pValue Pre-Calculate Formulas? + * @return PHPExcel_Writer_HTML + */ + public function setPreCalculateFormulas($pValue = true) { + $this->_preCalculateFormulas = $pValue; + return $this; + } + + /** + * Get images root + * + * @return string + */ + public function getImagesRoot() { + return $this->_imagesRoot; + } + + /** + * Set images root + * + * @param string $pValue + * @return PHPExcel_Writer_HTML + */ + public function setImagesRoot($pValue = '.') { + $this->_imagesRoot = $pValue; + return $this; + } + + /** + * Get use inline CSS? + * + * @return boolean + */ + public function getUseInlineCss() { + return $this->_useInlineCss; + } + + /** + * Set use inline CSS? + * + * @param boolean $pValue + * @return PHPExcel_Writer_HTML + */ + public function setUseInlineCss($pValue = false) { + $this->_useInlineCss = $pValue; + return $this; + } + + /** + * Add color to formatted string as inline style + * + * @param string $pValue Plain formatted value without color + * @param string $pFormat Format code + * @return string + */ + public function formatColor($pValue, $pFormat) + { + // Color information, e.g. [Red] is always at the beginning + $color = null; // initialize + $matches = array(); + + $color_regex = '/^\\[[a-zA-Z]+\\]/'; + if (preg_match($color_regex, $pFormat, $matches)) { + $color = str_replace('[', '', $matches[0]); + $color = str_replace(']', '', $color); + $color = strtolower($color); + } + + // convert to PCDATA + $value = htmlspecialchars($pValue); + + // color span tag + if ($color !== null) { + $value = '<span style="color:' . $color . '">' . $value . '</span>'; + } + + return $value; + } + + /** + * Calculate information about HTML colspan and rowspan which is not always the same as Excel's + */ + private function _calculateSpans() + { + // Identify all cells that should be omitted in HTML due to cell merge. + // In HTML only the upper-left cell should be written and it should have + // appropriate rowspan / colspan attribute + $sheetIndexes = $this->_sheetIndex !== null ? + array($this->_sheetIndex) : range(0, $this->_phpExcel->getSheetCount() - 1); + + foreach ($sheetIndexes as $sheetIndex) { + $sheet = $this->_phpExcel->getSheet($sheetIndex); + + $candidateSpannedRow = array(); + + // loop through all Excel merged cells + foreach ($sheet->getMergeCells() as $cells) { + list($cells, ) = PHPExcel_Cell::splitRange($cells); + $first = $cells[0]; + $last = $cells[1]; + + list($fc, $fr) = PHPExcel_Cell::coordinateFromString($first); + $fc = PHPExcel_Cell::columnIndexFromString($fc) - 1; + + list($lc, $lr) = PHPExcel_Cell::coordinateFromString($last); + $lc = PHPExcel_Cell::columnIndexFromString($lc) - 1; + + // loop through the individual cells in the individual merge + $r = $fr - 1; + while($r++ < $lr) { + // also, flag this row as a HTML row that is candidate to be omitted + $candidateSpannedRow[$r] = $r; + + $c = $fc - 1; + while($c++ < $lc) { + if ( !($c == $fc && $r == $fr) ) { + // not the upper-left cell (should not be written in HTML) + $this->_isSpannedCell[$sheetIndex][$r][$c] = array( + 'baseCell' => array($fr, $fc), + ); + } else { + // upper-left is the base cell that should hold the colspan/rowspan attribute + $this->_isBaseCell[$sheetIndex][$r][$c] = array( + 'xlrowspan' => $lr - $fr + 1, // Excel rowspan + 'rowspan' => $lr - $fr + 1, // HTML rowspan, value may change + 'xlcolspan' => $lc - $fc + 1, // Excel colspan + 'colspan' => $lc - $fc + 1, // HTML colspan, value may change + ); + } + } + } + } + + // Identify which rows should be omitted in HTML. These are the rows where all the cells + // participate in a merge and the where base cells are somewhere above. + $countColumns = PHPExcel_Cell::columnIndexFromString($sheet->getHighestColumn()); + foreach ($candidateSpannedRow as $rowIndex) { + if (isset($this->_isSpannedCell[$sheetIndex][$rowIndex])) { + if (count($this->_isSpannedCell[$sheetIndex][$rowIndex]) == $countColumns) { + $this->_isSpannedRow[$sheetIndex][$rowIndex] = $rowIndex; + }; + } + } + + // For each of the omitted rows we found above, the affected rowspans should be subtracted by 1 + if ( isset($this->_isSpannedRow[$sheetIndex]) ) { + foreach ($this->_isSpannedRow[$sheetIndex] as $rowIndex) { + $adjustedBaseCells = array(); + $c = -1; + $e = $countColumns - 1; + while($c++ < $e) { + $baseCell = $this->_isSpannedCell[$sheetIndex][$rowIndex][$c]['baseCell']; + + if ( !in_array($baseCell, $adjustedBaseCells) ) { + // subtract rowspan by 1 + --$this->_isBaseCell[$sheetIndex][ $baseCell[0] ][ $baseCell[1] ]['rowspan']; + $adjustedBaseCells[] = $baseCell; + } + } + } + } + + // TODO: Same for columns + } + + // We have calculated the spans + $this->_spansAreCalculated = true; + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/IWriter.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/IWriter.php new file mode 100644 index 0000000..af97f07 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/IWriter.php @@ -0,0 +1,45 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_IWriter + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +interface PHPExcel_Writer_IWriter +{ + /** + * Save PHPExcel to file + * + * @param string $pFilename + * @throws Exception + */ + public function save($pFilename = null); +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF.php new file mode 100644 index 0000000..7c10445 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF.php @@ -0,0 +1,76 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_PDF + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_PDF { + + private $_renderer = NULL; + + /** + * Create a new PHPExcel_Writer_PDF + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) { + + $pdfLibraryName = PHPExcel_Settings::getPdfRendererName(); + if (is_null($pdfLibraryName)) { + throw new Exception("PDF Rendering library has not been defined."); + } + + $pdfLibraryPath = PHPExcel_Settings::getPdfRendererPath(); + if (is_null($pdfLibraryName)) { + throw new Exception("PDF Rendering library path has not been defined."); + } + $includePath = str_replace('\\','/',get_include_path()); + $rendererPath = str_replace('\\','/',$pdfLibraryPath); + if (strpos($rendererPath,$includePath) === false) { + set_include_path(get_include_path() . PATH_SEPARATOR . $pdfLibraryPath); + } + + $rendererName = 'PHPExcel_Writer_PDF_'.$pdfLibraryName; + $this->_renderer = new $rendererName($phpExcel); + } + + + public function __call($name, $arguments) + { + if ($this->_renderer === NULL) { + throw new Exception("PDF Renderer has not been defined."); + } + + return call_user_func_array(array($this->_renderer,$name),$arguments); + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/Core.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/Core.php new file mode 100644 index 0000000..b9154ac --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/Core.php @@ -0,0 +1,239 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** + * PHPExcel_Writer_PDF_Core + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +abstract class PHPExcel_Writer_PDF_Core extends PHPExcel_Writer_HTML { + /** + * Temporary storage directory + * + * @var string + */ + private $_tempDir = ''; + + /** + * Font + * + * @var string + */ + private $_font = 'freesans'; + + /** + * Orientation (Over-ride) + * + * @var string + */ + private $_orientation = null; + + /** + * Paper size (Over-ride) + * + * @var int + */ + private $_paperSize = null; + + + /** + * Paper Sizes xRef List + * + * @var array + */ + protected static $_paperSizes = array( + // Excel Paper Size TCPDF Paper Size + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER => 'LETTER', // (8.5 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_SMALL => 'LETTER', // (8.5 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_TABLOID => array(792.00,1224.00), // (11 in. by 17 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEDGER => array(1224.00,792.00), // (17 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEGAL => 'LEGAL', // (8.5 in. by 14 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STATEMENT => array(396.00,612.00), // (5.5 in. by 8.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_EXECUTIVE => 'EXECUTIVE', // (7.25 in. by 10.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3 => 'A3', // (297 mm by 420 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4 => 'A4', // (210 mm by 297 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_SMALL => 'A4', // (210 mm by 297 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5 => 'A5', // (148 mm by 210 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_B4 => 'B4', // (250 mm by 353 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_B5 => 'B5', // (176 mm by 250 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_FOLIO => 'FOLIO', // (8.5 in. by 13 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_QUARTO => array(609.45,779.53), // (215 mm by 275 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_1 => array(720.00,1008.00), // (10 in. by 14 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_2 => array(792.00,1224.00), // (11 in. by 17 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NOTE => 'LETTER', // (8.5 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO9_ENVELOPE => array(279.00,639.00), // (3.875 in. by 8.875 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO10_ENVELOPE => array(297.00,684.00), // (4.125 in. by 9.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO11_ENVELOPE => array(324.00,747.00), // (4.5 in. by 10.375 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO12_ENVELOPE => array(342.00,792.00), // (4.75 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO14_ENVELOPE => array(360.00,828.00), // (5 in. by 11.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C => array(1224.00,1584.00), // (17 in. by 22 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_D => array(1584.00,2448.00), // (22 in. by 34 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_E => array(2448.00,3168.00), // (34 in. by 44 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_DL_ENVELOPE => array(311.81,623.62), // (110 mm by 220 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C5_ENVELOPE => 'C5', // (162 mm by 229 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C3_ENVELOPE => 'C3', // (324 mm by 458 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C4_ENVELOPE => 'C4', // (229 mm by 324 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C6_ENVELOPE => 'C6', // (114 mm by 162 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_C65_ENVELOPE => array(323.15,649.13), // (114 mm by 229 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_B4_ENVELOPE => 'B4', // (250 mm by 353 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_B5_ENVELOPE => 'B5', // (176 mm by 250 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_B6_ENVELOPE => array(498.90,354.33), // (176 mm by 125 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_ITALY_ENVELOPE => array(311.81,651.97), // (110 mm by 230 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_MONARCH_ENVELOPE => array(279.00,540.00), // (3.875 in. by 7.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_6_3_4_ENVELOPE => array(261.00,468.00), // (3.625 in. by 6.5 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_US_STANDARD_FANFOLD => array(1071.00,792.00), // (14.875 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_GERMAN_STANDARD_FANFOLD => array(612.00,864.00), // (8.5 in. by 12 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_GERMAN_LEGAL_FANFOLD => 'FOLIO', // (8.5 in. by 13 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_ISO_B4 => 'B4', // (250 mm by 353 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_JAPANESE_DOUBLE_POSTCARD => array(566.93,419.53), // (200 mm by 148 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_1 => array(648.00,792.00), // (9 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_2 => array(720.00,792.00), // (10 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_3 => array(1080.00,792.00), // (15 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_INVITE_ENVELOPE => array(623.62,623.62), // (220 mm by 220 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_EXTRA_PAPER => array(667.80,864.00), // (9.275 in. by 12 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEGAL_EXTRA_PAPER => array(667.80,1080.00), // (9.275 in. by 15 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_TABLOID_EXTRA_PAPER => array(841.68,1296.00), // (11.69 in. by 18 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_EXTRA_PAPER => array(668.98,912.76), // (236 mm by 322 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_TRANSVERSE_PAPER => array(595.80,792.00), // (8.275 in. by 11 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_TRANSVERSE_PAPER => 'A4', // (210 mm by 297 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER => array(667.80,864.00), // (9.275 in. by 12 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_SUPERA_SUPERA_A4_PAPER => array(643.46,1009.13), // (227 mm by 356 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_SUPERB_SUPERB_A3_PAPER => array(864.57,1380.47), // (305 mm by 487 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_PLUS_PAPER => array(612.00,913.68), // (8.5 in. by 12.69 in.) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_PLUS_PAPER => array(595.28,935.43), // (210 mm by 330 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5_TRANSVERSE_PAPER => 'A5', // (148 mm by 210 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_JIS_B5_TRANSVERSE_PAPER => array(515.91,728.50), // (182 mm by 257 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_EXTRA_PAPER => array(912.76,1261.42), // (322 mm by 445 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5_EXTRA_PAPER => array(493.23,666.14), // (174 mm by 235 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_ISO_B5_EXTRA_PAPER => array(569.76,782.36), // (201 mm by 276 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A2_PAPER => 'A2', // (420 mm by 594 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_TRANSVERSE_PAPER => 'A3', // (297 mm by 420 mm) + PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER => array(912.76,1261.42) // (322 mm by 445 mm) + ); + + /** + * Create a new PHPExcel_Writer_PDF + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) { + parent::__construct($phpExcel); + $this->setUseInlineCss(true); + $this->_tempDir = PHPExcel_Shared_File::sys_get_temp_dir(); + } + + /** + * Get Font + * + * @return string + */ + public function getFont() { + return $this->_font; + } + + /** + * Set font. Examples: + * 'arialunicid0-chinese-simplified' + * 'arialunicid0-chinese-traditional' + * 'arialunicid0-korean' + * 'arialunicid0-japanese' + * + * @param string $fontName + */ + public function setFont($fontName) { + $this->_font = $fontName; + return $this; + } + + /** + * Get Paper Size + * + * @return int + */ + public function getPaperSize() { + return $this->_paperSize; + } + + /** + * Set Paper Size + * + * @param int $pValue + * @return PHPExcel_Writer_PDF + */ + public function setPaperSize($pValue = PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER) { + $this->_paperSize = $pValue; + return $this; + } + + /** + * Get Orientation + * + * @return string + */ + public function getOrientation() { + return $this->_orientation; + } + + /** + * Set Orientation + * + * @param string $pValue + * @return PHPExcel_Writer_PDF + */ + public function setOrientation($pValue = PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT) { + $this->_orientation = $pValue; + return $this; + } + + /** + * Get temporary storage directory + * + * @return string + */ + public function getTempDir() { + return $this->_tempDir; + } + + /** + * Set temporary storage directory + * + * @param string $pValue Temporary storage directory + * @throws Exception Exception when directory does not exist + * @return PHPExcel_Writer_PDF + */ + public function setTempDir($pValue = '') { + if (is_dir($pValue)) { + $this->_tempDir = $pValue; + } else { + throw new Exception("Directory does not exist: $pValue"); + } + return $this; + } +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/DomPDF.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/DomPDF.php new file mode 100644 index 0000000..a8ab4ef --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/DomPDF.php @@ -0,0 +1,128 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** Require DomPDF library */ +$pdfRendererClassFile = PHPExcel_Settings::getPdfRendererPath() . '/dompdf_config.inc.php'; +if (file_exists($pdfRendererClassFile)) { + require_once $pdfRendererClassFile; +} else { + throw new Exception('Unable to load PDF Rendering library'); +} + +/** + * PHPExcel_Writer_PDF_DomPDF + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_PDF_DomPDF extends PHPExcel_Writer_PDF_Core implements PHPExcel_Writer_IWriter { + /** + * Create a new PHPExcel_Writer_PDF + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) { + parent::__construct($phpExcel); + } + + /** + * Save PHPExcel to file + * + * @param string $pFileName + * @throws Exception + */ + public function save($pFilename = null) { + // garbage collect + $this->_phpExcel->garbageCollect(); + + $saveArrayReturnType = PHPExcel_Calculation::getArrayReturnType(); + PHPExcel_Calculation::setArrayReturnType(PHPExcel_Calculation::RETURN_ARRAY_AS_VALUE); + + // Open file + $fileHandle = fopen($pFilename, 'w'); + if ($fileHandle === false) { + throw new Exception("Could not open file $pFilename for writing."); + } + + // Set PDF + $this->_isPdf = true; + // Build CSS + $this->buildCSS(true); + + // Default PDF paper size + $paperSize = 'LETTER'; // Letter (8.5 in. by 11 in.) + + // Check for paper size and page orientation + if (is_null($this->getSheetIndex())) { + $orientation = ($this->_phpExcel->getSheet(0)->getPageSetup()->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->_phpExcel->getSheet(0)->getPageSetup()->getPaperSize(); + $printMargins = $this->_phpExcel->getSheet(0)->getPageMargins(); + } else { + $orientation = ($this->_phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->_phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getPaperSize(); + $printMargins = $this->_phpExcel->getSheet($this->getSheetIndex())->getPageMargins(); + } + + // Override Page Orientation + if (!is_null($this->getOrientation())) { + $orientation = ($this->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT) ? + PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT : $this->getOrientation(); + } + // Override Paper Size + if (!is_null($this->getPaperSize())) { + $printPaperSize = $this->getPaperSize(); + } + + if (isset(self::$_paperSizes[$printPaperSize])) { + $paperSize = self::$_paperSizes[$printPaperSize]; + } + + $orientation = ($orientation == 'L') ? 'landscape' : 'portrait'; + + // Create PDF + $pdf = new DOMPDF(); + $pdf->set_paper(strtolower($paperSize), $orientation); + + $pdf->load_html( + $this->generateHTMLHeader(false) . + $this->generateSheetData() . + $this->generateHTMLFooter() + ); + $pdf->render(); + + // Write to file + fwrite($fileHandle, $pdf->output()); + + // Close file + fclose($fileHandle); + + PHPExcel_Calculation::setArrayReturnType($saveArrayReturnType); + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/_notes/dwsync.xml new file mode 100644 index 0000000..2ebcc72 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/_notes/dwsync.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Core.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="DomPDF.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="mPDF.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="tcPDF.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="tcPDF.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="mPDF.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="Core.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="DomPDF.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="tcPDF.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="mPDF.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="Core.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="DomPDF.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="tcPDF.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559903117990" remote="131260196400000000" Dst="1" /> +<file name="mPDF.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559903611960" remote="131260196400000000" Dst="1" /> +<file name="Core.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559904093137" remote="131260196400000000" Dst="1" /> +<file name="DomPDF.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559904581484" remote="131260196400000000" Dst="1" /> +<file name="tcPDF.php" server="62.244.88.21/amashow/" local="131414752217591568" remote="131414680800000000" Dst="2" /> +<file name="mPDF.php" server="62.244.88.21/amashow/" local="131414752218014763" remote="131414680800000000" Dst="2" /> +<file name="Core.php" server="62.244.88.21/amashow/" local="131414752218358898" remote="131414680800000000" Dst="2" /> +<file name="DomPDF.php" server="62.244.88.21/amashow/" local="131414752218783384" remote="131414680800000000" Dst="2" /> +<file name="Core.php" server="62.244.88.21/deciday/" local="131919461355467878" remote="131826017400000000" Dst="1" /> +<file name="DomPDF.php" server="62.244.88.21/deciday/" local="131919461355292037" remote="131826017400000000" Dst="1" /> +<file name="mPDF.php" server="62.244.88.21/deciday/" local="131919461356140487" remote="131826017400000000" Dst="1" /> +<file name="tcPDF.php" server="62.244.88.21/deciday/" local="131919461356768688" remote="131826017400000000" Dst="1" /> +<file name="Core.php" server="62.244.88.21/deciday_18/" local="131414752218358898" remote="131825945400000000" Dst="2" /> +<file name="DomPDF.php" server="62.244.88.21/deciday_18/" local="131414752218783384" remote="131825945400000000" Dst="2" /> +<file name="mPDF.php" server="62.244.88.21/deciday_18/" local="131414752218014763" remote="131825945400000000" Dst="2" /> +<file name="tcPDF.php" server="62.244.88.21/deciday_18/" local="131414752217591568" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/mPDF.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/mPDF.php new file mode 100644 index 0000000..5f9f2a3 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/mPDF.php @@ -0,0 +1,135 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** Require mPDF library */ +$pdfRendererClassFile = PHPExcel_Settings::getPdfRendererPath() . '/mpdf.php'; +if (file_exists($pdfRendererClassFile)) { + require_once $pdfRendererClassFile; +} else { + throw new Exception('Unable to load PDF Rendering library'); +} + +/** + * PHPExcel_Writer_PDF_mPDF + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_PDF_mPDF extends PHPExcel_Writer_PDF_Core implements PHPExcel_Writer_IWriter { + /** + * Create a new PHPExcel_Writer_PDF + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) { + parent::__construct($phpExcel); + } + + /** + * Save PHPExcel to file + * + * @param string $pFileName + * @throws Exception + */ + public function save($pFilename = null) { + // garbage collect + $this->_phpExcel->garbageCollect(); + + $saveArrayReturnType = PHPExcel_Calculation::getArrayReturnType(); + PHPExcel_Calculation::setArrayReturnType(PHPExcel_Calculation::RETURN_ARRAY_AS_VALUE); + + // Open file + $fileHandle = fopen($pFilename, 'w'); + if ($fileHandle === false) { + throw new Exception("Could not open file $pFilename for writing."); + } + + // Set PDF + $this->_isPdf = true; + // Build CSS + $this->buildCSS(true); + + // Default PDF paper size + $paperSize = 'LETTER'; // Letter (8.5 in. by 11 in.) + + // Check for paper size and page orientation + if (is_null($this->getSheetIndex())) { + $orientation = ($this->_phpExcel->getSheet(0)->getPageSetup()->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->_phpExcel->getSheet(0)->getPageSetup()->getPaperSize(); + $printMargins = $this->_phpExcel->getSheet(0)->getPageMargins(); + } else { + $orientation = ($this->_phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->_phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getPaperSize(); + $printMargins = $this->_phpExcel->getSheet($this->getSheetIndex())->getPageMargins(); + } + $this->setOrientation($orientation); + + // Override Page Orientation + if (!is_null($this->getOrientation())) { + $orientation = ($this->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT) ? + PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT : $this->getOrientation(); + } + $orientation = strtoupper($orientation); + + // Override Paper Size + if (!is_null($this->getPaperSize())) { + $printPaperSize = $this->getPaperSize(); + } + + if (isset(self::$_paperSizes[$printPaperSize])) { + $paperSize = self::$_paperSizes[$printPaperSize]; + } + + // Create PDF + $pdf = new mpdf(); + $pdf->_setPageSize(strtoupper($paperSize), $orientation); + $pdf->DefOrientation = $orientation; + // Document info + $pdf->SetTitle($this->_phpExcel->getProperties()->getTitle()); + $pdf->SetAuthor($this->_phpExcel->getProperties()->getCreator()); + $pdf->SetSubject($this->_phpExcel->getProperties()->getSubject()); + $pdf->SetKeywords($this->_phpExcel->getProperties()->getKeywords()); + $pdf->SetCreator($this->_phpExcel->getProperties()->getCreator()); + + $pdf->WriteHTML( + $this->generateHTMLHeader(false) . + $this->generateSheetData() . + $this->generateHTMLFooter() + ); + + // Write to file + fwrite($fileHandle, $pdf->Output('','S')); + + // Close file + fclose($fileHandle); + + PHPExcel_Calculation::setArrayReturnType($saveArrayReturnType); + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/tcPDF.php b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/tcPDF.php new file mode 100644 index 0000000..d77ab91 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/PDF/tcPDF.php @@ -0,0 +1,147 @@ +<?php +/** + * PHPExcel + * + * Copyright (c) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + + +/** Require tcPDF library */ +$pdfRendererClassFile = PHPExcel_Settings::getPdfRendererPath() . '/tcpdf.php'; +if (file_exists($pdfRendererClassFile)) { + $k_path_url = PHPExcel_Settings::getPdfRendererPath(); + require_once $pdfRendererClassFile; +} else { + throw new Exception('Unable to load PDF Rendering library'); +} + +/** + * PHPExcel_Writer_PDF_tcPDF + * + * @category PHPExcel + * @package PHPExcel_Writer + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + */ +class PHPExcel_Writer_PDF_tcPDF extends PHPExcel_Writer_PDF_Core implements PHPExcel_Writer_IWriter { + /** + * Create a new PHPExcel_Writer_PDF + * + * @param PHPExcel $phpExcel PHPExcel object + */ + public function __construct(PHPExcel $phpExcel) { + parent::__construct($phpExcel); + } + + /** + * Save PHPExcel to file + * + * @param string $pFileName + * @throws Exception + */ + public function save($pFilename = null) { + // garbage collect + $this->_phpExcel->garbageCollect(); + + $saveArrayReturnType = PHPExcel_Calculation::getArrayReturnType(); + PHPExcel_Calculation::setArrayReturnType(PHPExcel_Calculation::RETURN_ARRAY_AS_VALUE); + + // Open file + $fileHandle = fopen($pFilename, 'w'); + if ($fileHandle === false) { + throw new Exception("Could not open file $pFilename for writing."); + } + + // Set PDF + $this->_isPdf = true; + // Build CSS + $this->buildCSS(true); + + // Default PDF paper size + $paperSize = 'LETTER'; // Letter (8.5 in. by 11 in.) + + // Check for paper size and page orientation + if (is_null($this->getSheetIndex())) { + $orientation = ($this->_phpExcel->getSheet(0)->getPageSetup()->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->_phpExcel->getSheet(0)->getPageSetup()->getPaperSize(); + $printMargins = $this->_phpExcel->getSheet(0)->getPageMargins(); + } else { + $orientation = ($this->_phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? 'L' : 'P'; + $printPaperSize = $this->_phpExcel->getSheet($this->getSheetIndex())->getPageSetup()->getPaperSize(); + $printMargins = $this->_phpExcel->getSheet($this->getSheetIndex())->getPageMargins(); + } + + // Override Page Orientation + if (!is_null($this->getOrientation())) { + $orientation = ($this->getOrientation() == PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE) ? + 'L' : 'P'; + } + // Override Paper Size + if (!is_null($this->getPaperSize())) { + $printPaperSize = $this->getPaperSize(); + } + + + if (isset(self::$_paperSizes[$printPaperSize])) { + $paperSize = self::$_paperSizes[$printPaperSize]; + } + + + // Create PDF + $pdf = new TCPDF($orientation, 'pt', $paperSize); + $pdf->setFontSubsetting(false); + // Set margins, converting inches to points (using 72 dpi) + $pdf->SetMargins($printMargins->getLeft() * 72,$printMargins->getTop() * 72,$printMargins->getRight() * 72); + $pdf->SetAutoPageBreak(true,$printMargins->getBottom() * 72); +// $pdf->setHeaderMargin($printMargins->getHeader() * 72); +// $pdf->setFooterMargin($printMargins->getFooter() * 72); + + $pdf->setPrintHeader(false); + $pdf->setPrintFooter(false); + + $pdf->AddPage(); + + // Set the appropriate font + $pdf->SetFont($this->getFont()); + $pdf->writeHTML( + $this->generateHTMLHeader(false) . + $this->generateSheetData() . + $this->generateHTMLFooter() + ); + + // Document info + $pdf->SetTitle($this->_phpExcel->getProperties()->getTitle()); + $pdf->SetAuthor($this->_phpExcel->getProperties()->getCreator()); + $pdf->SetSubject($this->_phpExcel->getProperties()->getSubject()); + $pdf->SetKeywords($this->_phpExcel->getProperties()->getKeywords()); + $pdf->SetCreator($this->_phpExcel->getProperties()->getCreator()); + + // Write to file + fwrite($fileHandle, $pdf->output($pFilename, 'S')); + + // Close file + fclose($fileHandle); + + PHPExcel_Calculation::setArrayReturnType($saveArrayReturnType); + } + +} diff --git a/site/config/PHPExcel/Classes/PHPExcel/Writer/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/Writer/_notes/dwsync.xml new file mode 100644 index 0000000..2c49f39 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/Writer/_notes/dwsync.xml @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="CSV.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Excel2007.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Excel5.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="HTML.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="IWriter.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="PDF.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="CSV.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851429999999" remote="129984143400000000" Dst="-1" /> +<file name="HTML.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="Excel5.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="IWriter.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="Excel2007.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="PDF.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="CSV.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851429999999" remote="129997098000000000" Dst="-1" /> +<file name="HTML.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="Excel5.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="IWriter.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="Excel2007.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="PDF.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="CSV.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559887630296" remote="131260196400000000" Dst="1" /> +<file name="HTML.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559888190943" remote="131260196400000000" Dst="1" /> +<file name="Excel5.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559888848648" remote="131260196400000000" Dst="1" /> +<file name="IWriter.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559889285881" remote="131260196400000000" Dst="1" /> +<file name="Excel2007.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559889799005" remote="131260196400000000" Dst="1" /> +<file name="PDF.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559890250285" remote="131260196400000000" Dst="1" /> +<file name="CSV.php" server="62.244.88.21/amashow/" local="131414752204575127" remote="131414680800000000" Dst="2" /> +<file name="HTML.php" server="62.244.88.21/amashow/" local="131414752204999805" remote="131414680800000000" Dst="2" /> +<file name="Excel5.php" server="62.244.88.21/amashow/" local="131414752205554621" remote="131414680800000000" Dst="2" /> +<file name="IWriter.php" server="62.244.88.21/amashow/" local="131414752205930354" remote="131414680800000000" Dst="2" /> +<file name="Excel2007.php" server="62.244.88.21/amashow/" local="131414752206382636" remote="131414680800000000" Dst="2" /> +<file name="PDF.php" server="62.244.88.21/amashow/" local="131414752206572771" remote="131414680800000000" Dst="2" /> +<file name="Excel2007.php" server="62.244.88.21/deciday/" local="131919461347782105" remote="131826017400000000" Dst="1" /> +<file name="PDF.php" server="62.244.88.21/deciday/" local="131919461356517492" remote="131826017400000000" Dst="1" /> +<file name="CSV.php" server="62.244.88.21/deciday/" local="131919461335885191" remote="131826017400000000" Dst="1" /> +<file name="HTML.php" server="62.244.88.21/deciday/" local="131919461355111835" remote="131826017400000000" Dst="1" /> +<file name="IWriter.php" server="62.244.88.21/deciday/" local="131919461354329256" remote="131826017400000000" Dst="1" /> +<file name="Excel5.php" server="62.244.88.21/deciday/" local="131919461353506304" remote="131826017400000000" Dst="1" /> +<file name="CSV.php" server="62.244.88.21/deciday_18/" local="131414752204575127" remote="131825945400000000" Dst="2" /> +<file name="Excel2007.php" server="62.244.88.21/deciday_18/" local="131414752206382636" remote="131825945400000000" Dst="2" /> +<file name="Excel5.php" server="62.244.88.21/deciday_18/" local="131414752205554621" remote="131825945400000000" Dst="2" /> +<file name="HTML.php" server="62.244.88.21/deciday_18/" local="131414752204999805" remote="131825945400000000" Dst="2" /> +<file name="IWriter.php" server="62.244.88.21/deciday_18/" local="131414752205930354" remote="131825945400000000" Dst="2" /> +<file name="PDF.php" server="62.244.88.21/deciday_18/" local="131414752206572771" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/_notes/dwsync.xml new file mode 100644 index 0000000..4034754 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/_notes/dwsync.xml @@ -0,0 +1,136 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Autoloader.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="CachedObjectStorageFactory.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Calculation.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Cell.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Chart.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Comment.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="DocumentProperties.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="DocumentSecurity.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="Exception.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="HashTable.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="IComparable.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="IOFactory.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="NamedRange.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="ReferenceHelper.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="RichText.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Settings.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="Style.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="Worksheet.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="WorksheetIterator.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="WorksheetIterator.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851439999999" remote="129984143400000000" Dst="-1" /> +<file name="RichText.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="HashTable.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="DocumentProperties.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="ReferenceHelper.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="Calculation.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="Exception.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="Autoloader.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="IOFactory.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="Style.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="Settings.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851459999999" remote="129984143400000000" Dst="-1" /> +<file name="NamedRange.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="Chart.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="Comment.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851469999999" remote="129984143400000000" Dst="-1" /> +<file name="DocumentSecurity.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984143400000000" Dst="-1" /> +<file name="CachedObjectStorageFactory.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="Worksheet.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851529999999" remote="129984144000000000" Dst="-1" /> +<file name="IComparable.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="Cell.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="WorksheetIterator.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851439999999" remote="129997098000000000" Dst="-1" /> +<file name="RichText.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098000000000" Dst="-1" /> +<file name="HashTable.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098000000000" Dst="-1" /> +<file name="DocumentProperties.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098000000000" Dst="-1" /> +<file name="ReferenceHelper.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098000000000" Dst="-1" /> +<file name="Calculation.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098000000000" Dst="-1" /> +<file name="Exception.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098000000000" Dst="-1" /> +<file name="Autoloader.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098000000000" Dst="-1" /> +<file name="IOFactory.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098000000000" Dst="-1" /> +<file name="Style.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098000000000" Dst="-1" /> +<file name="Settings.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851459999999" remote="129997098000000000" Dst="-1" /> +<file name="NamedRange.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098000000000" Dst="-1" /> +<file name="Chart.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098000000000" Dst="-1" /> +<file name="Comment.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851469999999" remote="129997098000000000" Dst="-1" /> +<file name="DocumentSecurity.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098000000000" Dst="-1" /> +<file name="CachedObjectStorageFactory.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098000000000" Dst="-1" /> +<file name="Worksheet.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851529999999" remote="129997098000000000" Dst="-1" /> +<file name="IComparable.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997098000000000" Dst="-1" /> +<file name="Cell.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997098000000000" Dst="-1" /> +<file name="WorksheetIterator.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559868252930" remote="131260196400000000" Dst="1" /> +<file name="RichText.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559868528644" remote="131260196400000000" Dst="1" /> +<file name="HashTable.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559868801389" remote="131260196400000000" Dst="1" /> +<file name="ReferenceHelper.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559869380826" remote="131260196400000000" Dst="1" /> +<file name="Exception.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559870115634" remote="131260196400000000" Dst="1" /> +<file name="DocumentProperties.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559869083425" remote="131260196400000000" Dst="1" /> +<file name="Autoloader.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559870860548" remote="131260196400000000" Dst="1" /> +<file name="IOFactory.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559871133528" remote="131260196400000000" Dst="1" /> +<file name="Style.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559871415072" remote="131260196400000000" Dst="1" /> +<file name="Calculation.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559869859971" remote="131260196400000000" Dst="1" /> +<file name="Settings.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559871707933" remote="131260196400000000" Dst="1" /> +<file name="NamedRange.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559871977250" remote="131260196400000000" Dst="1" /> +<file name="Chart.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559872264780" remote="131260196400000000" Dst="1" /> +<file name="Comment.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559872542455" remote="131260196400000000" Dst="1" /> +<file name="DocumentSecurity.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559872813802" remote="131260196400000000" Dst="1" /> +<file name="CachedObjectStorageFactory.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559873096807" remote="131260196400000000" Dst="1" /> +<file name="IComparable.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559873714000" remote="131260196400000000" Dst="1" /> +<file name="Worksheet.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559873456959" remote="131260196400000000" Dst="1" /> +<file name="Cell.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559874021534" remote="131260196400000000" Dst="1" /> +<file name="WorksheetIterator.php" server="62.244.88.21/amashow/" local="131414752185711398" remote="131414680800000000" Dst="2" /> +<file name="RichText.php" server="62.244.88.21/amashow/" local="131414752185909678" remote="131414680800000000" Dst="2" /> +<file name="HashTable.php" server="62.244.88.21/amashow/" local="131414752186284432" remote="131414680800000000" Dst="2" /> +<file name="DocumentProperties.php" server="62.244.88.21/amashow/" local="131414752186750174" remote="131414680800000000" Dst="2" /> +<file name="ReferenceHelper.php" server="62.244.88.21/amashow/" local="131414752186989758" remote="131414680800000000" Dst="2" /> +<file name="Autoloader.php" server="62.244.88.21/amashow/" local="131414752188037588" remote="131414680800000000" Dst="2" /> +<file name="Exception.php" server="62.244.88.21/amashow/" local="131414752187841709" remote="131414680800000000" Dst="2" /> +<file name="IOFactory.php" server="62.244.88.21/amashow/" local="131414752188416745" remote="131414680800000000" Dst="2" /> +<file name="Calculation.php" server="62.244.88.21/amashow/" local="131414752187644606" remote="131414680800000000" Dst="2" /> +<file name="Style.php" server="62.244.88.21/amashow/" local="131414752188881096" remote="131414680800000000" Dst="2" /> +<file name="Settings.php" server="62.244.88.21/amashow/" local="131414752189095620" remote="131414680800000000" Dst="2" /> +<file name="NamedRange.php" server="62.244.88.21/amashow/" local="131414752189521918" remote="131414680800000000" Dst="2" /> +<file name="Chart.php" server="62.244.88.21/amashow/" local="131414752189739131" remote="131414680800000000" Dst="2" /> +<file name="Comment.php" server="62.244.88.21/amashow/" local="131414752190150745" remote="131414680800000000" Dst="2" /> +<file name="DocumentSecurity.php" server="62.244.88.21/amashow/" local="131414752190496714" remote="131414680800000000" Dst="2" /> +<file name="CachedObjectStorageFactory.php" server="62.244.88.21/amashow/" local="131414752190712751" remote="131414680800000000" Dst="2" /> +<file name="Cell.php" server="62.244.88.21/amashow/" local="131414752191640967" remote="131414680800000000" Dst="2" /> +<file name="Worksheet.php" server="62.244.88.21/amashow/" local="131414752191089317" remote="131414680800000000" Dst="2" /> +<file name="IComparable.php" server="62.244.88.21/amashow/" local="131414752191271746" remote="131414680800000000" Dst="2" /> +<file name="Exception.php" server="62.244.88.21/deciday/" local="131919461233217837" remote="131826017400000000" Dst="1" /> +<file name="Autoloader.php" server="62.244.88.21/deciday/" local="131919461199146033" remote="131826017400000000" Dst="1" /> +<file name="NamedRange.php" server="62.244.88.21/deciday/" local="131919461259812443" remote="131826017400000000" Dst="1" /> +<file name="IOFactory.php" server="62.244.88.21/deciday/" local="131919461234465802" remote="131826017400000000" Dst="1" /> +<file name="IComparable.php" server="62.244.88.21/deciday/" local="131919461233980431" remote="131826017400000000" Dst="1" /> +<file name="Calculation.php" server="62.244.88.21/deciday/" local="131919461222217568" remote="131826017400000000" Dst="1" /> +<file name="Settings.php" server="62.244.88.21/deciday/" local="131919461279485270" remote="131826017400000000" Dst="1" /> +<file name="Style.php" server="62.244.88.21/deciday/" local="131919461323347405" remote="131826017400000000" Dst="1" /> +<file name="HashTable.php" server="62.244.88.21/deciday/" local="131919461233809139" remote="131826017400000000" Dst="1" /> +<file name="DocumentSecurity.php" server="62.244.88.21/deciday/" local="131919461232880529" remote="131826017400000000" Dst="1" /> +<file name="Comment.php" server="62.244.88.21/deciday/" local="131919461231896802" remote="131826017400000000" Dst="1" /> +<file name="DocumentProperties.php" server="62.244.88.21/deciday/" local="131919461232376278" remote="131826017400000000" Dst="1" /> +<file name="Chart.php" server="62.244.88.21/deciday/" local="131919461232143708" remote="131826017400000000" Dst="1" /> +<file name="WorksheetIterator.php" server="62.244.88.21/deciday/" local="131919461334412466" remote="131826017400000000" Dst="1" /> +<file name="RichText.php" server="62.244.88.21/deciday/" local="131919461278055067" remote="131826017400000000" Dst="1" /> +<file name="CachedObjectStorageFactory.php" server="62.244.88.21/deciday/" local="131919461208170450" remote="131826017400000000" Dst="1" /> +<file name="Worksheet.php" server="62.244.88.21/deciday/" local="131919461336096720" remote="131826017400000000" Dst="1" /> +<file name="ReferenceHelper.php" server="62.244.88.21/deciday/" local="131919461275006866" remote="131826017400000000" Dst="1" /> +<file name="Cell.php" server="62.244.88.21/deciday/" local="131919461224190119" remote="131826017400000000" Dst="1" /> +<file name="Autoloader.php" server="62.244.88.21/deciday_18/" local="131414752188037588" remote="131825945400000000" Dst="2" /> +<file name="CachedObjectStorageFactory.php" server="62.244.88.21/deciday_18/" local="131414752190712751" remote="131825945400000000" Dst="2" /> +<file name="Calculation.php" server="62.244.88.21/deciday_18/" local="131414752187644606" remote="131825945400000000" Dst="2" /> +<file name="Cell.php" server="62.244.88.21/deciday_18/" local="131414752191640967" remote="131825945400000000" Dst="2" /> +<file name="Chart.php" server="62.244.88.21/deciday_18/" local="131414752189739131" remote="131825945400000000" Dst="2" /> +<file name="Comment.php" server="62.244.88.21/deciday_18/" local="131414752190150745" remote="131825945400000000" Dst="2" /> +<file name="DocumentProperties.php" server="62.244.88.21/deciday_18/" local="131414752186750174" remote="131825945400000000" Dst="2" /> +<file name="DocumentSecurity.php" server="62.244.88.21/deciday_18/" local="131414752190496714" remote="131825945400000000" Dst="2" /> +<file name="Exception.php" server="62.244.88.21/deciday_18/" local="131414752187841709" remote="131825945400000000" Dst="2" /> +<file name="IComparable.php" server="62.244.88.21/deciday_18/" local="131414752191271746" remote="131825945400000000" Dst="2" /> +<file name="IOFactory.php" server="62.244.88.21/deciday_18/" local="131414752188416745" remote="131825945400000000" Dst="2" /> +<file name="HashTable.php" server="62.244.88.21/deciday_18/" local="131414752186284432" remote="131825945400000000" Dst="2" /> +<file name="NamedRange.php" server="62.244.88.21/deciday_18/" local="131414752189521918" remote="131825945400000000" Dst="2" /> +<file name="ReferenceHelper.php" server="62.244.88.21/deciday_18/" local="131414752186989758" remote="131825945400000000" Dst="2" /> +<file name="Settings.php" server="62.244.88.21/deciday_18/" local="131414752189095620" remote="131825945400000000" Dst="2" /> +<file name="RichText.php" server="62.244.88.21/deciday_18/" local="131414752185909678" remote="131825945400000000" Dst="2" /> +<file name="Style.php" server="62.244.88.21/deciday_18/" local="131414752188881096" remote="131825945400000000" Dst="2" /> +<file name="WorksheetIterator.php" server="62.244.88.21/deciday_18/" local="131414752185711398" remote="131825945400000000" Dst="2" /> +<file name="Worksheet.php" server="62.244.88.21/deciday_18/" local="131414752191089317" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/cs/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/cs/_notes/dwsync.xml new file mode 100644 index 0000000..6ab85e4 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/cs/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559974908890" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559975391406" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752275470880" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752275955764" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461239143916" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461236821653" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752275470880" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752275955764" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/cs/config b/site/config/PHPExcel/Classes/PHPExcel/locale/cs/config new file mode 100644 index 0000000..38a4412 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/cs/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = Kč + + +## +## Excel Error Codes (For future use) +## +NULL = #NULL! +DIV0 = #DIV/0! +VALUE = #HODNOTA! +REF = #REF! +NAME = #NÁZEV? +NUM = #NUM! +NA = #N/A diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/cs/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/cs/functions new file mode 100644 index 0000000..992dc37 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/cs/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Funkce doplňků a automatizace +## +GETPIVOTDATA = ZÍSKATKONTDATA ## Vrátí data uložená v kontingenční tabulce. Pomocí funkce ZÍSKATKONTDATA můžete načíst souhrnná data z kontingenční tabulky, pokud jsou tato data v kontingenční sestavě zobrazena. + + +## +## Cube functions Funkce pro práci s krychlemi +## +CUBEKPIMEMBER = CUBEKPIMEMBER ## Vrátí název, vlastnost a velikost klíčového ukazatele výkonu (KUV) a zobrazí v buňce název a vlastnost. Klíčový ukazatel výkonu je kvantifikovatelná veličina, například hrubý měsíční zisk nebo čtvrtletní obrat na zaměstnance, která se používá pro sledování výkonnosti organizace. +CUBEMEMBER = CUBEMEMBER ## Vrátí člen nebo n-tici v hierarchii krychle. Slouží k ověření, zda v krychli existuje člen nebo n-tice. +CUBEMEMBERPROPERTY = CUBEMEMBERPROPERTY ## Vrátí hodnotu vlastnosti člena v krychli. Slouží k ověření, zda v krychli existuje člen s daným názvem, a k vrácení konkrétní vlastnosti tohoto člena. +CUBERANKEDMEMBER = CUBERANKEDMEMBER ## Vrátí n-tý nebo pořadový člen sady. Použijte ji pro vrácení jednoho nebo více prvků sady, například obchodníka s nejvyšším obratem nebo deseti nejlepších studentů. +CUBESET = CUBESET ## Definuje vypočtenou sadu členů nebo n-tic odesláním výrazu sady do krychle na serveru, který vytvoří sadu a potom ji vrátí do aplikace Microsoft Office Excel. +CUBESETCOUNT = CUBESETCOUNT ## Vrátí počet položek v množině +CUBEVALUE = CUBEVALUE ## Vrátí úhrnnou hodnotu z krychle. + + +## +## Database functions Funkce databáze +## +DAVERAGE = DPRŮMĚR ## Vrátí průměr vybraných položek databáze. +DCOUNT = DPOČET ## Spočítá buňky databáze obsahující čísla. +DCOUNTA = DPOČET2 ## Spočítá buňky databáze, které nejsou prázdné. +DGET = DZÍSKAT ## Extrahuje z databáze jeden záznam splňující zadaná kritéria. +DMAX = DMAX ## Vrátí maximální hodnotu z vybraných položek databáze. +DMIN = DMIN ## Vrátí minimální hodnotu z vybraných položek databáze. +DPRODUCT = DSOUČIN ## Vynásobí hodnoty určitého pole záznamů v databázi, které splňují daná kritéria. +DSTDEV = DSMODCH.VÝBĚR ## Odhadne směrodatnou odchylku výběru vybraných položek databáze. +DSTDEVP = DSMODCH ## Vypočte směrodatnou odchylku základního souboru vybraných položek databáze. +DSUM = DSUMA ## Sečte čísla ve sloupcovém poli záznamů databáze, která splňují daná kritéria. +DVAR = DVAR.VÝBĚR ## Odhadne rozptyl výběru vybraných položek databáze. +DVARP = DVAR ## Vypočte rozptyl základního souboru vybraných položek databáze. + + +## +## Date and time functions Funkce data a času +## +DATE = DATUM ## Vrátí pořadové číslo určitého data. +DATEVALUE = DATUMHODN ## Převede datum ve formě textu na pořadové číslo. +DAY = DEN ## Převede pořadové číslo na den v měsíci. +DAYS360 = ROK360 ## Vrátí počet dní mezi dvěma daty na základě roku s 360 dny. +EDATE = EDATE ## Vrátí pořadové číslo data, které označuje určený počet měsíců před nebo po počátečním datu. +EOMONTH = EOMONTH ## Vrátí pořadové číslo posledního dne měsíce před nebo po zadaném počtu měsíců. +HOUR = HODINA ## Převede pořadové číslo na hodinu. +MINUTE = MINUTA ## Převede pořadové číslo na minutu. +MONTH = MĚSÍC ## Převede pořadové číslo na měsíc. +NETWORKDAYS = NETWORKDAYS ## Vrátí počet celých pracovních dní mezi dvěma daty. +NOW = NYNÍ ## Vrátí pořadové číslo aktuálního data a času. +SECOND = SEKUNDA ## Převede pořadové číslo na sekundu. +TIME = ČAS ## Vrátí pořadové číslo určitého času. +TIMEVALUE = ČASHODN ## Převede čas ve formě textu na pořadové číslo. +TODAY = DNES ## Vrátí pořadové číslo dnešního data. +WEEKDAY = DENTÝDNE ## Převede pořadové číslo na den v týdnu. +WEEKNUM = WEEKNUM ## Převede pořadové číslo na číslo představující číselnou pozici týdne v roce. +WORKDAY = WORKDAY ## Vrátí pořadové číslo data před nebo po zadaném počtu pracovních dní. +YEAR = ROK ## Převede pořadové číslo na rok. +YEARFRAC = YEARFRAC ## Vrátí část roku vyjádřenou zlomkem a představující počet celých dní mezi počátečním a koncovým datem. + + +## +## Engineering functions Inženýrské funkce (Technické funkce) +## +BESSELI = BESSELI ## Vrátí modifikovanou Besselovu funkci In(x). +BESSELJ = BESSELJ ## Vrátí modifikovanou Besselovu funkci Jn(x). +BESSELK = BESSELK ## Vrátí modifikovanou Besselovu funkci Kn(x). +BESSELY = BESSELY ## Vrátí Besselovu funkci Yn(x). +BIN2DEC = BIN2DEC ## Převede binární číslo na desítkové. +BIN2HEX = BIN2HEX ## Převede binární číslo na šestnáctkové. +BIN2OCT = BIN2OCT ## Převede binární číslo na osmičkové. +COMPLEX = COMPLEX ## Převede reálnou a imaginární část na komplexní číslo. +CONVERT = CONVERT ## Převede číslo do jiného jednotkového měrného systému. +DEC2BIN = DEC2BIN ## Převede desítkového čísla na dvojkové +DEC2HEX = DEC2HEX ## Převede desítkové číslo na šestnáctkové. +DEC2OCT = DEC2OCT ## Převede desítkové číslo na osmičkové. +DELTA = DELTA ## Testuje rovnost dvou hodnot. +ERF = ERF ## Vrátí chybovou funkci. +ERFC = ERFC ## Vrátí doplňkovou chybovou funkci. +GESTEP = GESTEP ## Testuje, zda je číslo větší než mezní hodnota. +HEX2BIN = HEX2BIN ## Převede šestnáctkové číslo na binární. +HEX2DEC = HEX2DEC ## Převede šestnáctkové číslo na desítkové. +HEX2OCT = HEX2OCT ## Převede šestnáctkové číslo na osmičkové. +IMABS = IMABS ## Vrátí absolutní hodnotu (modul) komplexního čísla. +IMAGINARY = IMAGINARY ## Vrátí imaginární část komplexního čísla. +IMARGUMENT = IMARGUMENT ## Vrátí argument théta, úhel vyjádřený v radiánech. +IMCONJUGATE = IMCONJUGATE ## Vrátí komplexně sdružené číslo ke komplexnímu číslu. +IMCOS = IMCOS ## Vrátí kosinus komplexního čísla. +IMDIV = IMDIV ## Vrátí podíl dvou komplexních čísel. +IMEXP = IMEXP ## Vrátí exponenciální tvar komplexního čísla. +IMLN = IMLN ## Vrátí přirozený logaritmus komplexního čísla. +IMLOG10 = IMLOG10 ## Vrátí dekadický logaritmus komplexního čísla. +IMLOG2 = IMLOG2 ## Vrátí logaritmus komplexního čísla při základu 2. +IMPOWER = IMPOWER ## Vrátí komplexní číslo umocněné na celé číslo. +IMPRODUCT = IMPRODUCT ## Vrátí součin komplexních čísel. +IMREAL = IMREAL ## Vrátí reálnou část komplexního čísla. +IMSIN = IMSIN ## Vrátí sinus komplexního čísla. +IMSQRT = IMSQRT ## Vrátí druhou odmocninu komplexního čísla. +IMSUB = IMSUB ## Vrátí rozdíl mezi dvěma komplexními čísly. +IMSUM = IMSUM ## Vrátí součet dvou komplexních čísel. +OCT2BIN = OCT2BIN ## Převede osmičkové číslo na binární. +OCT2DEC = OCT2DEC ## Převede osmičkové číslo na desítkové. +OCT2HEX = OCT2HEX ## Převede osmičkové číslo na šestnáctkové. + + +## +## Financial functions Finanční funkce +## +ACCRINT = ACCRINT ## Vrátí nahromaděný úrok z cenného papíru, ze kterého je úrok placen v pravidelných termínech. +ACCRINTM = ACCRINTM ## Vrátí nahromaděný úrok z cenného papíru, ze kterého je úrok placen k datu splatnosti. +AMORDEGRC = AMORDEGRC ## Vrátí lineární amortizaci v každém účetním období pomocí koeficientu amortizace. +AMORLINC = AMORLINC ## Vrátí lineární amortizaci v každém účetním období. +COUPDAYBS = COUPDAYBS ## Vrátí počet dnů od začátku období placení kupónů do data splatnosti. +COUPDAYS = COUPDAYS ## Vrátí počet dnů v období placení kupónů, které obsahuje den zúčtování. +COUPDAYSNC = COUPDAYSNC ## Vrátí počet dnů od data zúčtování do následujícího data placení kupónu. +COUPNCD = COUPNCD ## Vrátí následující datum placení kupónu po datu zúčtování. +COUPNUM = COUPNUM ## Vrátí počet kupónů splatných mezi datem zúčtování a datem splatnosti. +COUPPCD = COUPPCD ## Vrátí předchozí datum placení kupónu před datem zúčtování. +CUMIPMT = CUMIPMT ## Vrátí kumulativní úrok splacený mezi dvěma obdobími. +CUMPRINC = CUMPRINC ## Vrátí kumulativní jistinu splacenou mezi dvěma obdobími půjčky. +DB = ODPIS.ZRYCH ## Vrátí odpis aktiva za určité období pomocí degresivní metody odpisu s pevným zůstatkem. +DDB = ODPIS.ZRYCH2 ## Vrátí odpis aktiva za určité období pomocí dvojité degresivní metody odpisu nebo jiné metody, kterou zadáte. +DISC = DISC ## Vrátí diskontní sazbu cenného papíru. +DOLLARDE = DOLLARDE ## Převede částku v korunách vyjádřenou zlomkem na částku v korunách vyjádřenou desetinným číslem. +DOLLARFR = DOLLARFR ## Převede částku v korunách vyjádřenou desetinným číslem na částku v korunách vyjádřenou zlomkem. +DURATION = DURATION ## Vrátí roční dobu cenného papíru s pravidelnými úrokovými sazbami. +EFFECT = EFFECT ## Vrátí efektivní roční úrokovou sazbu. +FV = BUDHODNOTA ## Vrátí budoucí hodnotu investice. +FVSCHEDULE = FVSCHEDULE ## Vrátí budoucí hodnotu počáteční jistiny po použití série sazeb složitého úroku. +INTRATE = INTRATE ## Vrátí úrokovou sazbu plně investovaného cenného papíru. +IPMT = PLATBA.ÚROK ## Vrátí výšku úroku investice za dané období. +IRR = MÍRA.VÝNOSNOSTI ## Vrátí vnitřní výnosové procento série peněžních toků. +ISPMT = ISPMT ## Vypočte výši úroku z investice zaplaceného během určitého období. +MDURATION = MDURATION ## Vrátí Macauleyho modifikovanou dobu cenného papíru o nominální hodnotě 100 Kč. +MIRR = MOD.MÍRA.VÝNOSNOSTI ## Vrátí vnitřní sazbu výnosu, přičemž kladné a záporné hodnoty peněžních prostředků jsou financovány podle různých sazeb. +NOMINAL = NOMINAL ## Vrátí nominální roční úrokovou sazbu. +NPER = POČET.OBDOBÍ ## Vrátí počet období pro investici. +NPV = ČISTÁ.SOUČHODNOTA ## Vrátí čistou současnou hodnotu investice vypočítanou na základě série pravidelných peněžních toků a diskontní sazby. +ODDFPRICE = ODDFPRICE ## Vrátí cenu cenného papíru o nominální hodnotě 100 Kč s odlišným prvním obdobím. +ODDFYIELD = ODDFYIELD ## Vrátí výnos cenného papíru s odlišným prvním obdobím. +ODDLPRICE = ODDLPRICE ## Vrátí cenu cenného papíru o nominální hodnotě 100 Kč s odlišným posledním obdobím. +ODDLYIELD = ODDLYIELD ## Vrátí výnos cenného papíru s odlišným posledním obdobím. +PMT = PLATBA ## Vrátí hodnotu pravidelné splátky anuity. +PPMT = PLATBA.ZÁKLAD ## Vrátí hodnotu splátky jistiny pro zadanou investici za dané období. +PRICE = PRICE ## Vrátí cenu cenného papíru o nominální hodnotě 100 Kč, ze kterého je úrok placen v pravidelných termínech. +PRICEDISC = PRICEDISC ## Vrátí cenu diskontního cenného papíru o nominální hodnotě 100 Kč. +PRICEMAT = PRICEMAT ## Vrátí cenu cenného papíru o nominální hodnotě 100 Kč, ze kterého je úrok placen k datu splatnosti. +PV = SOUČHODNOTA ## Vrátí současnou hodnotu investice. +RATE = ÚROKOVÁ.MÍRA ## Vrátí úrokovou sazbu vztaženou na období anuity. +RECEIVED = RECEIVED ## Vrátí částku obdrženou k datu splatnosti plně investovaného cenného papíru. +SLN = ODPIS.LIN ## Vrátí přímé odpisy aktiva pro jedno období. +SYD = ODPIS.NELIN ## Vrátí směrné číslo ročních odpisů aktiva pro zadané období. +TBILLEQ = TBILLEQ ## Vrátí výnos směnky státní pokladny ekvivalentní výnosu obligace. +TBILLPRICE = TBILLPRICE ## Vrátí cenu směnky státní pokladny o nominální hodnotě 100 Kč. +TBILLYIELD = TBILLYIELD ## Vrátí výnos směnky státní pokladny. +VDB = ODPIS.ZA.INT ## Vrátí odpis aktiva pro určité období nebo část období pomocí degresivní metody odpisu. +XIRR = XIRR ## Vrátí vnitřní výnosnost pro harmonogram peněžních toků, který nemusí být nutně periodický. +XNPV = XNPV ## Vrátí čistou současnou hodnotu pro harmonogram peněžních toků, který nemusí být nutně periodický. +YIELD = YIELD ## Vrátí výnos cenného papíru, ze kterého je úrok placen v pravidelných termínech. +YIELDDISC = YIELDDISC ## Vrátí roční výnos diskontního cenného papíru, například směnky státní pokladny. +YIELDMAT = YIELDMAT ## Vrátí roční výnos cenného papíru, ze kterého je úrok placen k datu splatnosti. + + +## +## Information functions Informační funkce +## +CELL = POLÍČKO ## Vrátí informace o formátování, umístění nebo obsahu buňky. +ERROR.TYPE = CHYBA.TYP ## Vrátí číslo odpovídající typu chyby. +INFO = O.PROSTŘEDÍ ## Vrátí informace o aktuálním pracovním prostředí. +ISBLANK = JE.PRÁZDNÉ ## Vrátí hodnotu PRAVDA, pokud se argument hodnota odkazuje na prázdnou buňku. +ISERR = JE.CHYBA ## Vrátí hodnotu PRAVDA, pokud je argument hodnota libovolná chybová hodnota (kromě #N/A). +ISERROR = JE.CHYBHODN ## Vrátí hodnotu PRAVDA, pokud je argument hodnota libovolná chybová hodnota. +ISEVEN = ISEVEN ## Vrátí hodnotu PRAVDA, pokud je číslo sudé. +ISLOGICAL = JE.LOGHODN ## Vrátí hodnotu PRAVDA, pokud je argument hodnota logická hodnota. +ISNA = JE.NEDEF ## Vrátí hodnotu PRAVDA, pokud je argument hodnota chybová hodnota #N/A. +ISNONTEXT = JE.NETEXT ## Vrátí hodnotu PRAVDA, pokud argument hodnota není text. +ISNUMBER = JE.ČÍSLO ## Vrátí hodnotu PRAVDA, pokud je argument hodnota číslo. +ISODD = ISODD ## Vrátí hodnotu PRAVDA, pokud je číslo liché. +ISREF = JE.ODKAZ ## Vrátí hodnotu PRAVDA, pokud je argument hodnota odkaz. +ISTEXT = JE.TEXT ## Vrátí hodnotu PRAVDA, pokud je argument hodnota text. +N = N ## Vrátí hodnotu převedenou na číslo. +NA = NEDEF ## Vrátí chybovou hodnotu #N/A. +TYPE = TYP ## Vrátí číslo označující datový typ hodnoty. + + +## +## Logical functions Logické funkce +## +AND = A ## Vrátí hodnotu PRAVDA, mají-li všechny argumenty hodnotu PRAVDA. +FALSE = NEPRAVDA ## Vrátí logickou hodnotu NEPRAVDA. +IF = KDYŽ ## Určí, který logický test má proběhnout. +IFERROR = IFERROR ## Pokud je vzorec vyhodnocen jako chyba, vrátí zadanou hodnotu. V opačném případě vrátí výsledek vzorce. +NOT = NE ## Provede logickou negaci argumentu funkce. +OR = NEBO ## Vrátí hodnotu PRAVDA, je-li alespoň jeden argument roven hodnotě PRAVDA. +TRUE = PRAVDA ## Vrátí logickou hodnotu PRAVDA. + + +## +## Lookup and reference functions Vyhledávací funkce +## +ADDRESS = ODKAZ ## Vrátí textový odkaz na jednu buňku listu. +AREAS = POČET.BLOKŮ ## Vrátí počet oblastí v odkazu. +CHOOSE = ZVOLIT ## Zvolí hodnotu ze seznamu hodnot. +COLUMN = SLOUPEC ## Vrátí číslo sloupce odkazu. +COLUMNS = SLOUPCE ## Vrátí počet sloupců v odkazu. +HLOOKUP = VVYHLEDAT ## Prohledá horní řádek matice a vrátí hodnotu určené buňky. +HYPERLINK = HYPERTEXTOVÝ.ODKAZ ## Vytvoří zástupce nebo odkaz, který otevře dokument uložený na síťovém serveru, v síti intranet nebo Internet. +INDEX = INDEX ## Pomocí rejstříku zvolí hodnotu z odkazu nebo matice. +INDIRECT = NEPŘÍMÝ.ODKAZ ## Vrátí odkaz určený textovou hodnotou. +LOOKUP = VYHLEDAT ## Vyhledá hodnoty ve vektoru nebo matici. +MATCH = POZVYHLEDAT ## Vyhledá hodnoty v odkazu nebo matici. +OFFSET = POSUN ## Vrátí posun odkazu od zadaného odkazu. +ROW = ŘÁDEK ## Vrátí číslo řádku odkazu. +ROWS = ŘÁDKY ## Vrátí počet řádků v odkazu. +RTD = RTD ## Načte data reálného času z programu, který podporuje automatizaci modelu COM (Automatizace: Způsob práce s objekty určité aplikace z jiné aplikace nebo nástroje pro vývoj. Automatizace (dříve nazývaná automatizace OLE) je počítačovým standardem a je funkcí modelu COM (Component Object Model).). +TRANSPOSE = TRANSPOZICE ## Vrátí transponovanou matici. +VLOOKUP = SVYHLEDAT ## Prohledá první sloupec matice, přesune kurzor v řádku a vrátí hodnotu buňky. + + +## +## Math and trigonometry functions Matematické a trigonometrické funkce +## +ABS = ABS ## Vrátí absolutní hodnotu čísla. +ACOS = ARCCOS ## Vrátí arkuskosinus čísla. +ACOSH = ARCCOSH ## Vrátí hyperbolický arkuskosinus čísla. +ASIN = ARCSIN ## Vrátí arkussinus čísla. +ASINH = ARCSINH ## Vrátí hyperbolický arkussinus čísla. +ATAN = ARCTG ## Vrátí arkustangens čísla. +ATAN2 = ARCTG2 ## Vrátí arkustangens x-ové a y-ové souřadnice. +ATANH = ARCTGH ## Vrátí hyperbolický arkustangens čísla. +CEILING = ZAOKR.NAHORU ## Zaokrouhlí číslo na nejbližší celé číslo nebo na nejbližší násobek zadané hodnoty. +COMBIN = KOMBINACE ## Vrátí počet kombinací pro daný počet položek. +COS = COS ## Vrátí kosinus čísla. +COSH = COSH ## Vrátí hyperbolický kosinus čísla. +DEGREES = DEGREES ## Převede radiány na stupně. +EVEN = ZAOKROUHLIT.NA.SUDÉ ## Zaokrouhlí číslo nahoru na nejbližší celé sudé číslo. +EXP = EXP ## Vrátí základ přirozeného logaritmu e umocněný na zadané číslo. +FACT = FAKTORIÁL ## Vrátí faktoriál čísla. +FACTDOUBLE = FACTDOUBLE ## Vrátí dvojitý faktoriál čísla. +FLOOR = ZAOKR.DOLŮ ## Zaokrouhlí číslo dolů, směrem k nule. +GCD = GCD ## Vrátí největší společný dělitel. +INT = CELÁ.ČÁST ## Zaokrouhlí číslo dolů na nejbližší celé číslo. +LCM = LCM ## Vrátí nejmenší společný násobek. +LN = LN ## Vrátí přirozený logaritmus čísla. +LOG = LOGZ ## Vrátí logaritmus čísla při zadaném základu. +LOG10 = LOG ## Vrátí dekadický logaritmus čísla. +MDETERM = DETERMINANT ## Vrátí determinant matice. +MINVERSE = INVERZE ## Vrátí inverzní matici. +MMULT = SOUČIN.MATIC ## Vrátí součin dvou matic. +MOD = MOD ## Vrátí zbytek po dělení. +MROUND = MROUND ## Vrátí číslo zaokrouhlené na požadovaný násobek. +MULTINOMIAL = MULTINOMIAL ## Vrátí mnohočlen z množiny čísel. +ODD = ZAOKROUHLIT.NA.LICHÉ ## Zaokrouhlí číslo nahoru na nejbližší celé liché číslo. +PI = PI ## Vrátí hodnotu čísla pí. +POWER = POWER ## Umocní číslo na zadanou mocninu. +PRODUCT = SOUČIN ## Vynásobí argumenty funkce. +QUOTIENT = QUOTIENT ## Vrátí celou část dělení. +RADIANS = RADIANS ## Převede stupně na radiány. +RAND = NÁHČÍSLO ## Vrátí náhodné číslo mezi 0 a 1. +RANDBETWEEN = RANDBETWEEN ## Vrátí náhodné číslo mezi zadanými čísly. +ROMAN = ROMAN ## Převede arabskou číslici na římskou ve formátu textu. +ROUND = ZAOKROUHLIT ## Zaokrouhlí číslo na zadaný počet číslic. +ROUNDDOWN = ROUNDDOWN ## Zaokrouhlí číslo dolů, směrem k nule. +ROUNDUP = ROUNDUP ## Zaokrouhlí číslo nahoru, směrem od nuly. +SERIESSUM = SERIESSUM ## Vrátí součet mocninné řady určené podle vzorce. +SIGN = SIGN ## Vrátí znaménko čísla. +SIN = SIN ## Vrátí sinus daného úhlu. +SINH = SINH ## Vrátí hyperbolický sinus čísla. +SQRT = ODMOCNINA ## Vrátí kladnou druhou odmocninu. +SQRTPI = SQRTPI ## Vrátí druhou odmocninu výrazu (číslo * pí). +SUBTOTAL = SUBTOTAL ## Vrátí souhrn v seznamu nebo databázi. +SUM = SUMA ## Sečte argumenty funkce. +SUMIF = SUMIF ## Sečte buňky vybrané podle zadaných kritérií. +SUMIFS = SUMIFS ## Sečte buňky určené více zadanými podmínkami. +SUMPRODUCT = SOUČIN.SKALÁRNÍ ## Vrátí součet součinů odpovídajících prvků matic. +SUMSQ = SUMA.ČTVERCŮ ## Vrátí součet čtverců argumentů. +SUMX2MY2 = SUMX2MY2 ## Vrátí součet rozdílu čtverců odpovídajících hodnot ve dvou maticích. +SUMX2PY2 = SUMX2PY2 ## Vrátí součet součtu čtverců odpovídajících hodnot ve dvou maticích. +SUMXMY2 = SUMXMY2 ## Vrátí součet čtverců rozdílů odpovídajících hodnot ve dvou maticích. +TAN = TGTG ## Vrátí tangens čísla. +TANH = TGH ## Vrátí hyperbolický tangens čísla. +TRUNC = USEKNOUT ## Zkrátí číslo na celé číslo. + + +## +## Statistical functions Statistické funkce +## +AVEDEV = PRŮMODCHYLKA ## Vrátí průměrnou hodnotu absolutních odchylek datových bodů od jejich střední hodnoty. +AVERAGE = PRŮMĚR ## Vrátí průměrnou hodnotu argumentů. +AVERAGEA = AVERAGEA ## Vrátí průměrnou hodnotu argumentů včetně čísel, textu a logických hodnot. +AVERAGEIF = AVERAGEIF ## Vrátí průměrnou hodnotu (aritmetický průměr) všech buněk v oblasti, které vyhovují příslušné podmínce. +AVERAGEIFS = AVERAGEIFS ## Vrátí průměrnou hodnotu (aritmetický průměr) všech buněk vyhovujících několika podmínkám. +BETADIST = BETADIST ## Vrátí hodnotu součtového rozdělení beta. +BETAINV = BETAINV ## Vrátí inverzní hodnotu součtového rozdělení pro zadané rozdělení beta. +BINOMDIST = BINOMDIST ## Vrátí hodnotu binomického rozdělení pravděpodobnosti jednotlivých veličin. +CHIDIST = CHIDIST ## Vrátí jednostrannou pravděpodobnost rozdělení chí-kvadrát. +CHIINV = CHIINV ## Vrátí hodnotu funkce inverzní k distribuční funkci jednostranné pravděpodobnosti rozdělení chí-kvadrát. +CHITEST = CHITEST ## Vrátí test nezávislosti. +CONFIDENCE = CONFIDENCE ## Vrátí interval spolehlivosti pro střední hodnotu základního souboru. +CORREL = CORREL ## Vrátí korelační koeficient mezi dvěma množinami dat. +COUNT = POČET ## Vrátí počet čísel v seznamu argumentů. +COUNTA = POČET2 ## Vrátí počet hodnot v seznamu argumentů. +COUNTBLANK = COUNTBLANK ## Spočítá počet prázdných buněk v oblasti. +COUNTIF = COUNTIF ## Spočítá buňky v oblasti, které odpovídají zadaným kritériím. +COUNTIFS = COUNTIFS ## Spočítá buňky v oblasti, které odpovídají více kritériím. +COVAR = COVAR ## Vrátí hodnotu kovariance, průměrnou hodnotu součinů párových odchylek +CRITBINOM = CRITBINOM ## Vrátí nejmenší hodnotu, pro kterou má součtové binomické rozdělení hodnotu větší nebo rovnu hodnotě kritéria. +DEVSQ = DEVSQ ## Vrátí součet čtverců odchylek. +EXPONDIST = EXPONDIST ## Vrátí hodnotu exponenciálního rozdělení. +FDIST = FDIST ## Vrátí hodnotu rozdělení pravděpodobnosti F. +FINV = FINV ## Vrátí hodnotu inverzní funkce k distribuční funkci rozdělení F. +FISHER = FISHER ## Vrátí hodnotu Fisherovy transformace. +FISHERINV = FISHERINV ## Vrátí hodnotu inverzní funkce k Fisherově transformaci. +FORECAST = FORECAST ## Vrátí hodnotu lineárního trendu. +FREQUENCY = ČETNOSTI ## Vrátí četnost rozdělení jako svislou matici. +FTEST = FTEST ## Vrátí výsledek F-testu. +GAMMADIST = GAMMADIST ## Vrátí hodnotu rozdělení gama. +GAMMAINV = GAMMAINV ## Vrátí hodnotu inverzní funkce k distribuční funkci součtového rozdělení gama. +GAMMALN = GAMMALN ## Vrátí přirozený logaritmus funkce gama, Γ(x). +GEOMEAN = GEOMEAN ## Vrátí geometrický průměr. +GROWTH = LOGLINTREND ## Vrátí hodnoty exponenciálního trendu. +HARMEAN = HARMEAN ## Vrátí harmonický průměr. +HYPGEOMDIST = HYPGEOMDIST ## Vrátí hodnotu hypergeometrického rozdělení. +INTERCEPT = INTERCEPT ## Vrátí úsek lineární regresní čáry. +KURT = KURT ## Vrátí hodnotu excesu množiny dat. +LARGE = LARGE ## Vrátí k-tou největší hodnotu množiny dat. +LINEST = LINREGRESE ## Vrátí parametry lineárního trendu. +LOGEST = LOGLINREGRESE ## Vrátí parametry exponenciálního trendu. +LOGINV = LOGINV ## Vrátí inverzní funkci k distribuční funkci logaritmicko-normálního rozdělení. +LOGNORMDIST = LOGNORMDIST ## Vrátí hodnotu součtového logaritmicko-normálního rozdělení. +MAX = MAX ## Vrátí maximální hodnotu seznamu argumentů. +MAXA = MAXA ## Vrátí maximální hodnotu seznamu argumentů včetně čísel, textu a logických hodnot. +MEDIAN = MEDIAN ## Vrátí střední hodnotu zadaných čísel. +MIN = MIN ## Vrátí minimální hodnotu seznamu argumentů. +MINA = MINA ## Vrátí nejmenší hodnotu v seznamu argumentů včetně čísel, textu a logických hodnot. +MODE = MODE ## Vrátí hodnotu, která se v množině dat vyskytuje nejčastěji. +NEGBINOMDIST = NEGBINOMDIST ## Vrátí hodnotu negativního binomického rozdělení. +NORMDIST = NORMDIST ## Vrátí hodnotu normálního součtového rozdělení. +NORMINV = NORMINV ## Vrátí inverzní funkci k funkci normálního součtového rozdělení. +NORMSDIST = NORMSDIST ## Vrátí hodnotu standardního normálního součtového rozdělení. +NORMSINV = NORMSINV ## Vrátí inverzní funkci k funkci standardního normálního součtového rozdělení. +PEARSON = PEARSON ## Vrátí Pearsonův výsledný momentový korelační koeficient. +PERCENTILE = PERCENTIL ## Vrátí hodnotu k-tého percentilu hodnot v oblasti. +PERCENTRANK = PERCENTRANK ## Vrátí pořadí hodnoty v množině dat vyjádřené procentuální částí množiny dat. +PERMUT = PERMUTACE ## Vrátí počet permutací pro zadaný počet objektů. +POISSON = POISSON ## Vrátí hodnotu distribuční funkce Poissonova rozdělení. +PROB = PROB ## Vrátí pravděpodobnost výskytu hodnot v oblasti mezi dvěma mezními hodnotami. +QUARTILE = QUARTIL ## Vrátí hodnotu kvartilu množiny dat. +RANK = RANK ## Vrátí pořadí čísla v seznamu čísel. +RSQ = RKQ ## Vrátí druhou mocninu Pearsonova výsledného momentového korelačního koeficientu. +SKEW = SKEW ## Vrátí zešikmení rozdělení. +SLOPE = SLOPE ## Vrátí směrnici lineární regresní čáry. +SMALL = SMALL ## Vrátí k-tou nejmenší hodnotu množiny dat. +STANDARDIZE = STANDARDIZE ## Vrátí normalizovanou hodnotu. +STDEV = SMODCH.VÝBĚR ## Vypočte směrodatnou odchylku výběru. +STDEVA = STDEVA ## Vypočte směrodatnou odchylku výběru včetně čísel, textu a logických hodnot. +STDEVP = SMODCH ## Vypočte směrodatnou odchylku základního souboru. +STDEVPA = STDEVPA ## Vypočte směrodatnou odchylku základního souboru včetně čísel, textu a logických hodnot. +STEYX = STEYX ## Vrátí standardní chybu předpovězené hodnoty y pro každou hodnotu x v regresi. +TDIST = TDIST ## Vrátí hodnotu Studentova t-rozdělení. +TINV = TINV ## Vrátí inverzní funkci k distribuční funkci Studentova t-rozdělení. +TREND = LINTREND ## Vrátí hodnoty lineárního trendu. +TRIMMEAN = TRIMMEAN ## Vrátí střední hodnotu vnitřní části množiny dat. +TTEST = TTEST ## Vrátí pravděpodobnost spojenou se Studentovým t-testem. +VAR = VAR.VÝBĚR ## Vypočte rozptyl výběru. +VARA = VARA ## Vypočte rozptyl výběru včetně čísel, textu a logických hodnot. +VARP = VAR ## Vypočte rozptyl základního souboru. +VARPA = VARPA ## Vypočte rozptyl základního souboru včetně čísel, textu a logických hodnot. +WEIBULL = WEIBULL ## Vrátí hodnotu Weibullova rozdělení. +ZTEST = ZTEST ## Vrátí jednostrannou P-hodnotu z-testu. + + +## +## Text functions Textové funkce +## +ASC = ASC ## Změní znaky s plnou šířkou (dvoubajtové)v řetězci znaků na znaky s poloviční šířkou (jednobajtové). +BAHTTEXT = BAHTTEXT ## Převede číslo na text ve formátu, měny ß (baht). +CHAR = ZNAK ## Vrátí znak určený číslem kódu. +CLEAN = VYČISTIT ## Odebere z textu všechny netisknutelné znaky. +CODE = KÓD ## Vrátí číselný kód prvního znaku zadaného textového řetězce. +CONCATENATE = CONCATENATE ## Spojí několik textových položek do jedné. +DOLLAR = KČ ## Převede číslo na text ve formátu měny Kč (česká koruna). +EXACT = STEJNÉ ## Zkontroluje, zda jsou dvě textové hodnoty shodné. +FIND = NAJÍT ## Nalezne textovou hodnotu uvnitř jiné (rozlišuje malá a velká písmena). +FINDB = FINDB ## Nalezne textovou hodnotu uvnitř jiné (rozlišuje malá a velká písmena). +FIXED = ZAOKROUHLIT.NA.TEXT ## Zformátuje číslo jako text s pevným počtem desetinných míst. +JIS = JIS ## Změní znaky s poloviční šířkou (jednobajtové) v řetězci znaků na znaky s plnou šířkou (dvoubajtové). +LEFT = ZLEVA ## Vrátí první znaky textové hodnoty umístěné nejvíce vlevo. +LEFTB = LEFTB ## Vrátí první znaky textové hodnoty umístěné nejvíce vlevo. +LEN = DÉLKA ## Vrátí počet znaků textového řetězce. +LENB = LENB ## Vrátí počet znaků textového řetězce. +LOWER = MALÁ ## Převede text na malá písmena. +MID = ČÁST ## Vrátí určitý počet znaků textového řetězce počínaje zadaným místem. +MIDB = MIDB ## Vrátí určitý počet znaků textového řetězce počínaje zadaným místem. +PHONETIC = ZVUKOVÉ ## Extrahuje fonetické znaky (furigana) z textového řetězce. +PROPER = VELKÁ2 ## Převede první písmeno každého slova textové hodnoty na velké. +REPLACE = NAHRADIT ## Nahradí znaky uvnitř textu. +REPLACEB = NAHRADITB ## Nahradí znaky uvnitř textu. +REPT = OPAKOVAT ## Zopakuje text podle zadaného počtu opakování. +RIGHT = ZPRAVA ## Vrátí první znaky textové hodnoty umístěné nejvíce vpravo. +RIGHTB = RIGHTB ## Vrátí první znaky textové hodnoty umístěné nejvíce vpravo. +SEARCH = HLEDAT ## Nalezne textovou hodnotu uvnitř jiné (malá a velká písmena nejsou rozlišována). +SEARCHB = SEARCHB ## Nalezne textovou hodnotu uvnitř jiné (malá a velká písmena nejsou rozlišována). +SUBSTITUTE = DOSADIT ## V textovém řetězci nahradí starý text novým. +T = T ## Převede argumenty na text. +TEXT = HODNOTA.NA.TEXT ## Zformátuje číslo a převede ho na text. +TRIM = PROČISTIT ## Odstraní z textu mezery. +UPPER = VELKÁ ## Převede text na velká písmena. +VALUE = HODNOTA ## Převede textový argument na číslo. diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/da/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/da/_notes/dwsync.xml new file mode 100644 index 0000000..4528203 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/da/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851499999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851499999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851499999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851499999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559958404879" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559958966842" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752261304640" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752261583394" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461239152737" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461238502833" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752261304640" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752261583394" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/da/config b/site/config/PHPExcel/Classes/PHPExcel/locale/da/config new file mode 100644 index 0000000..49292f1 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/da/config @@ -0,0 +1,48 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = kr + + + +## +## Excel Error Codes (For future use) +## +NULL = #NUL! +DIV0 = #DIVISION/0! +VALUE = #VÆRDI! +REF = #REFERENCE! +NAME = #NAVN? +NUM = #NUM! +NA = #I/T diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/da/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/da/functions new file mode 100644 index 0000000..affc19a --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/da/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Tilføjelsesprogram- og automatiseringsfunktioner +## +GETPIVOTDATA = HENTPIVOTDATA ## Returnerer data, der er lagret i en pivottabelrapport + + +## +## Cube functions Kubefunktioner +## +CUBEKPIMEMBER = KUBE.KPI.MEDLEM ## Returnerer navn, egenskab og mål for en KPI-indikator og viser navnet og egenskaben i cellen. En KPI-indikator er en målbar størrelse, f.eks. bruttooverskud pr. måned eller personaleudskiftning pr. kvartal, der bruges til at overvåge en organisations præstationer. +CUBEMEMBER = KUBE.MEDLEM ## Returnerer et medlem eller en tupel fra kubehierarkiet. Bruges til at validere, om et medlem eller en tupel findes i kuben. +CUBEMEMBERPROPERTY = KUBEMEDLEM.EGENSKAB ## Returnerer værdien af en egenskab for et medlem i kuben. Bruges til at validere, om et medlemsnavn findes i kuben, og returnere den angivne egenskab for medlemmet. +CUBERANKEDMEMBER = KUBEMEDLEM.RANG ## Returnerer det n'te eller rangordnede medlem i et sæt. Bruges til at returnere et eller flere elementer i et sæt, f.eks. topsælgere eller de 10 bedste elever. +CUBESET = KUBESÆT ## Definerer et beregnet sæt medlemmer eller tupler ved at sende et sætudtryk til kuben på serveren, som opretter sættet og returnerer det til Microsoft Office Excel. +CUBESETCOUNT = KUBESÆT.TÆL ## Returnerer antallet af elementer i et sæt. +CUBEVALUE = KUBEVÆRDI ## Returnerer en sammenlagt (aggregeret) værdi fra en kube. + + +## +## Database functions Databasefunktioner +## +DAVERAGE = DMIDDEL ## Returnerer gennemsnittet af markerede databaseposter +DCOUNT = DTÆL ## Tæller de celler, der indeholder tal, i en database +DCOUNTA = DTÆLV ## Tæller udfyldte celler i en database +DGET = DHENT ## Uddrager en enkelt post, der opfylder de angivne kriterier, fra en database +DMAX = DMAKS ## Returnerer den største værdi blandt markerede databaseposter +DMIN = DMIN ## Returnerer den mindste værdi blandt markerede databaseposter +DPRODUCT = DPRODUKT ## Ganger værdierne i et bestemt felt med poster, der opfylder kriterierne i en database +DSTDEV = DSTDAFV ## Beregner et skøn over standardafvigelsen baseret på en stikprøve af markerede databaseposter +DSTDEVP = DSTDAFVP ## Beregner standardafvigelsen baseret på hele populationen af markerede databaseposter +DSUM = DSUM ## Sammenlægger de tal i feltkolonnen i databasen, der opfylder kriterierne +DVAR = DVARIANS ## Beregner varians baseret på en stikprøve af markerede databaseposter +DVARP = DVARIANSP ## Beregner varians baseret på hele populationen af markerede databaseposter + + +## +## Date and time functions Dato- og klokkeslætsfunktioner +## +DATE = DATO ## Returnerer serienummeret for en bestemt dato +DATEVALUE = DATOVÆRDI ## Konverterer en dato i form af tekst til et serienummer +DAY = DAG ## Konverterer et serienummer til en dag i måneden +DAYS360 = DAGE360 ## Beregner antallet af dage mellem to datoer på grundlag af et år med 360 dage +EDATE = EDATO ## Returnerer serienummeret for den dato, der ligger det angivne antal måneder før eller efter startdatoen +EOMONTH = SLUT.PÅ.MÅNED ## Returnerer serienummeret på den sidste dag i måneden før eller efter et angivet antal måneder +HOUR = TIME ## Konverterer et serienummer til en time +MINUTE = MINUT ## Konverterer et serienummer til et minut +MONTH = MÅNED ## Konverterer et serienummer til en måned +NETWORKDAYS = ANTAL.ARBEJDSDAGE ## Returnerer antallet af hele arbejdsdage mellem to datoer +NOW = NU ## Returnerer serienummeret for den aktuelle dato eller det aktuelle klokkeslæt +SECOND = SEKUND ## Konverterer et serienummer til et sekund +TIME = KLOKKESLÆT ## Returnerer serienummeret for et bestemt klokkeslæt +TIMEVALUE = TIDSVÆRDI ## Konverterer et klokkeslæt i form af tekst til et serienummer +TODAY = IDAG ## Returnerer serienummeret for dags dato +WEEKDAY = UGEDAG ## Konverterer et serienummer til en ugedag +WEEKNUM = UGE.NR ## Konverterer et serienummer til et tal, der angiver ugenummeret i året +WORKDAY = ARBEJDSDAG ## Returnerer serienummeret for dagen før eller efter det angivne antal arbejdsdage +YEAR = ÅR ## Konverterer et serienummer til et år +YEARFRAC = ÅR.BRØK ## Returnerer årsbrøken, der repræsenterer antallet af hele dage mellem startdato og slutdato + + +## +## Engineering functions Tekniske funktioner +## +BESSELI = BESSELI ## Returnerer den modificerede Bessel-funktion In(x) +BESSELJ = BESSELJ ## Returnerer Bessel-funktionen Jn(x) +BESSELK = BESSELK ## Returnerer den modificerede Bessel-funktion Kn(x) +BESSELY = BESSELY ## Returnerer Bessel-funktionen Yn(x) +BIN2DEC = BIN.TIL.DEC ## Konverterer et binært tal til et decimaltal +BIN2HEX = BIN.TIL.HEX ## Konverterer et binært tal til et heksadecimalt tal +BIN2OCT = BIN.TIL.OKT ## Konverterer et binært tal til et oktaltal. +COMPLEX = KOMPLEKS ## Konverterer reelle og imaginære koefficienter til et komplekst tal +CONVERT = KONVERTER ## Konverterer et tal fra én måleenhed til en anden +DEC2BIN = DEC.TIL.BIN ## Konverterer et decimaltal til et binært tal +DEC2HEX = DEC.TIL.HEX ## Konverterer et decimaltal til et heksadecimalt tal +DEC2OCT = DEC.TIL.OKT ## Konverterer et decimaltal til et oktaltal +DELTA = DELTA ## Tester, om to værdier er ens +ERF = FEJLFUNK ## Returner fejlfunktionen +ERFC = FEJLFUNK.KOMP ## Returnerer den komplementære fejlfunktion +GESTEP = GETRIN ## Tester, om et tal er større end en grænseværdi +HEX2BIN = HEX.TIL.BIN ## Konverterer et heksadecimalt tal til et binært tal +HEX2DEC = HEX.TIL.DEC ## Konverterer et decimaltal til et heksadecimalt tal +HEX2OCT = HEX.TIL.OKT ## Konverterer et heksadecimalt tal til et oktaltal +IMABS = IMAGABS ## Returnerer den absolutte værdi (modulus) for et komplekst tal +IMAGINARY = IMAGINÆR ## Returnerer den imaginære koefficient for et komplekst tal +IMARGUMENT = IMAGARGUMENT ## Returnerer argumentet theta, en vinkel udtrykt i radianer +IMCONJUGATE = IMAGKONJUGERE ## Returnerer den komplekse konjugation af et komplekst tal +IMCOS = IMAGCOS ## Returnerer et komplekst tals cosinus +IMDIV = IMAGDIV ## Returnerer kvotienten for to komplekse tal +IMEXP = IMAGEKSP ## Returnerer et komplekst tals eksponentialfunktion +IMLN = IMAGLN ## Returnerer et komplekst tals naturlige logaritme +IMLOG10 = IMAGLOG10 ## Returnerer et komplekst tals sædvanlige logaritme (titalslogaritme) +IMLOG2 = IMAGLOG2 ## Returnerer et komplekst tals sædvanlige logaritme (totalslogaritme) +IMPOWER = IMAGPOTENS ## Returnerer et komplekst tal opløftet i en heltalspotens +IMPRODUCT = IMAGPRODUKT ## Returnerer produktet af komplekse tal +IMREAL = IMAGREELT ## Returnerer den reelle koefficient for et komplekst tal +IMSIN = IMAGSIN ## Returnerer et komplekst tals sinus +IMSQRT = IMAGKVROD ## Returnerer et komplekst tals kvadratrod +IMSUB = IMAGSUB ## Returnerer forskellen mellem to komplekse tal +IMSUM = IMAGSUM ## Returnerer summen af komplekse tal +OCT2BIN = OKT.TIL.BIN ## Konverterer et oktaltal til et binært tal +OCT2DEC = OKT.TIL.DEC ## Konverterer et oktaltal til et decimaltal +OCT2HEX = OKT.TIL.HEX ## Konverterer et oktaltal til et heksadecimalt tal + + +## +## Financial functions Finansielle funktioner +## +ACCRINT = PÅLØBRENTE ## Returnerer den påløbne rente for et værdipapir med periodiske renteudbetalinger +ACCRINTM = PÅLØBRENTE.UDLØB ## Returnerer den påløbne rente for et værdipapir, hvor renteudbetalingen finder sted ved papirets udløb +AMORDEGRC = AMORDEGRC ## Returnerer afskrivningsbeløbet for hver regnskabsperiode ved hjælp af en afskrivningskoefficient +AMORLINC = AMORLINC ## Returnerer afskrivningsbeløbet for hver regnskabsperiode +COUPDAYBS = KUPONDAGE.SA ## Returnerer antallet af dage fra starten af kuponperioden til afregningsdatoen +COUPDAYS = KUPONDAGE.A ## Returnerer antallet af dage fra begyndelsen af kuponperioden til afregningsdatoen +COUPDAYSNC = KUPONDAGE.ANK ## Returnerer antallet af dage i den kuponperiode, der indeholder afregningsdatoen +COUPNCD = KUPONDAG.NÆSTE ## Returnerer den næste kupondato efter afregningsdatoen +COUPNUM = KUPONBETALINGER ## Returnerer antallet af kuponudbetalinger mellem afregnings- og udløbsdatoen +COUPPCD = KUPONDAG.FORRIGE ## Returnerer den forrige kupondato før afregningsdatoen +CUMIPMT = AKKUM.RENTE ## Returnerer den akkumulerede rente, der betales på et lån mellem to perioder +CUMPRINC = AKKUM.HOVEDSTOL ## Returnerer den akkumulerede nedbringelse af hovedstol mellem to perioder +DB = DB ## Returnerer afskrivningen på et aktiv i en angivet periode ved anvendelse af saldometoden +DDB = DSA ## Returnerer afskrivningsbeløbet for et aktiv over en bestemt periode ved anvendelse af dobbeltsaldometoden eller en anden afskrivningsmetode, som du angiver +DISC = DISKONTO ## Returnerer et værdipapirs diskonto +DOLLARDE = KR.DECIMAL ## Konverterer en kronepris udtrykt som brøk til en kronepris udtrykt som decimaltal +DOLLARFR = KR.BRØK ## Konverterer en kronepris udtrykt som decimaltal til en kronepris udtrykt som brøk +DURATION = VARIGHED ## Returnerer den årlige løbetid for et værdipapir med periodiske renteudbetalinger +EFFECT = EFFEKTIV.RENTE ## Returnerer den årlige effektive rente +FV = FV ## Returnerer fremtidsværdien af en investering +FVSCHEDULE = FVTABEL ## Returnerer den fremtidige værdi af en hovedstol, når der er tilskrevet rente og rentes rente efter forskellige rentesatser +INTRATE = RENTEFOD ## Returnerer renten på et fuldt ud investeret værdipapir +IPMT = R.YDELSE ## Returnerer renten fra en investering for en given periode +IRR = IA ## Returnerer den interne rente for en række pengestrømme +ISPMT = ISPMT ## Beregner den betalte rente i løbet af en bestemt investeringsperiode +MDURATION = MVARIGHED ## Returnerer Macauleys modificerede løbetid for et værdipapir med en formodet pari på kr. 100 +MIRR = MIA ## Returnerer den interne forrentning, hvor positive og negative pengestrømme finansieres til forskellig rente +NOMINAL = NOMINEL ## Returnerer den årlige nominelle rente +NPER = NPER ## Returnerer antallet af perioder for en investering +NPV = NUTIDSVÆRDI ## Returnerer nettonutidsværdien for en investering baseret på en række periodiske pengestrømme og en diskonteringssats +ODDFPRICE = ULIGE.KURS.PÅLYDENDE ## Returnerer kursen pr. kr. 100 nominel værdi for et værdipapir med en ulige (kort eller lang) første periode +ODDFYIELD = ULIGE.FØRSTE.AFKAST ## Returnerer afkastet for et værdipapir med ulige første periode +ODDLPRICE = ULIGE.SIDSTE.KURS ## Returnerer kursen pr. kr. 100 nominel værdi for et værdipapir med ulige sidste periode +ODDLYIELD = ULIGE.SIDSTE.AFKAST ## Returnerer afkastet for et værdipapir med ulige sidste periode +PMT = YDELSE ## Returnerer renten fra en investering for en given periode +PPMT = H.YDELSE ## Returnerer ydelsen på hovedstolen for en investering i en given periode +PRICE = KURS ## Returnerer kursen pr. kr 100 nominel værdi for et værdipapir med periodiske renteudbetalinger +PRICEDISC = KURS.DISKONTO ## Returnerer kursen pr. kr 100 nominel værdi for et diskonteret værdipapir +PRICEMAT = KURS.UDLØB ## Returnerer kursen pr. kr 100 nominel værdi for et værdipapir, hvor renten udbetales ved papirets udløb +PV = NV ## Returnerer den nuværende værdi af en investering +RATE = RENTE ## Returnerer renten i hver periode for en annuitet +RECEIVED = MODTAGET.VED.UDLØB ## Returnerer det beløb, der modtages ved udløbet af et fuldt ud investeret værdipapir +SLN = LA ## Returnerer den lineære afskrivning for et aktiv i en enkelt periode +SYD = ÅRSAFSKRIVNING ## Returnerer den årlige afskrivning på et aktiv i en bestemt periode +TBILLEQ = STATSOBLIGATION ## Returnerer det obligationsækvivalente afkast for en statsobligation +TBILLPRICE = STATSOBLIGATION.KURS ## Returnerer kursen pr. kr 100 nominel værdi for en statsobligation +TBILLYIELD = STATSOBLIGATION.AFKAST ## Returnerer en afkastet på en statsobligation +VDB = VSA ## Returnerer afskrivningen på et aktiv i en angivet periode, herunder delperioder, ved brug af dobbeltsaldometoden +XIRR = INTERN.RENTE ## Returnerer den interne rente for en plan over pengestrømme, der ikke behøver at være periodiske +XNPV = NETTO.NUTIDSVÆRDI ## Returnerer nutidsværdien for en plan over pengestrømme, der ikke behøver at være periodiske +YIELD = AFKAST ## Returnerer afkastet for et værdipapir med periodiske renteudbetalinger +YIELDDISC = AFKAST.DISKONTO ## Returnerer det årlige afkast for et diskonteret værdipapir, f.eks. en statsobligation +YIELDMAT = AFKAST.UDLØBSDATO ## Returnerer det årlige afkast for et værdipapir, hvor renten udbetales ved papirets udløb + + +## +## Information functions Informationsfunktioner +## +CELL = CELLE ## Returnerer oplysninger om formatering, placering eller indhold af en celle +ERROR.TYPE = FEJLTYPE ## Returnerer et tal, der svarer til en fejltype +INFO = INFO ## Returnerer oplysninger om det aktuelle operativmiljø +ISBLANK = ER.TOM ## Returnerer SAND, hvis værdien er tom +ISERR = ER.FJL ## Returnerer SAND, hvis værdien er en fejlværdi undtagen #I/T +ISERROR = ER.FEJL ## Returnerer SAND, hvis værdien er en fejlværdi +ISEVEN = ER.LIGE ## Returnerer SAND, hvis tallet er lige +ISLOGICAL = ER.LOGISK ## Returnerer SAND, hvis værdien er en logisk værdi +ISNA = ER.IKKE.TILGÆNGELIG ## Returnerer SAND, hvis værdien er fejlværdien #I/T +ISNONTEXT = ER.IKKE.TEKST ## Returnerer SAND, hvis værdien ikke er tekst +ISNUMBER = ER.TAL ## Returnerer SAND, hvis værdien er et tal +ISODD = ER.ULIGE ## Returnerer SAND, hvis tallet er ulige +ISREF = ER.REFERENCE ## Returnerer SAND, hvis værdien er en reference +ISTEXT = ER.TEKST ## Returnerer SAND, hvis værdien er tekst +N = TAL ## Returnerer en værdi konverteret til et tal +NA = IKKE.TILGÆNGELIG ## Returnerer fejlværdien #I/T +TYPE = VÆRDITYPE ## Returnerer et tal, der angiver datatypen for en værdi + + +## +## Logical functions Logiske funktioner +## +AND = OG ## Returnerer SAND, hvis alle argumenterne er sande +FALSE = FALSK ## Returnerer den logiske værdi FALSK +IF = HVIS ## Angiver en logisk test, der skal udføres +IFERROR = HVIS.FEJL ## Returnerer en værdi, du angiver, hvis en formel evauleres som en fejl. Returnerer i modsat fald resultatet af formlen +NOT = IKKE ## Vender argumentets logik om +OR = ELLER ## Returneret værdien SAND, hvis mindst ét argument er sandt +TRUE = SAND ## Returnerer den logiske værdi SAND + + +## +## Lookup and reference functions Opslags- og referencefunktioner +## +ADDRESS = ADRESSE ## Returnerer en reference som tekst til en enkelt celle i et regneark +AREAS = OMRÅDER ## Returnerer antallet af områder i en reference +CHOOSE = VÆLG ## Vælger en værdi på en liste med værdier +COLUMN = KOLONNE ## Returnerer kolonnenummeret i en reference +COLUMNS = KOLONNER ## Returnerer antallet af kolonner i en reference +HLOOKUP = VOPSLAG ## Søger i den øverste række af en matrix og returnerer værdien af den angivne celle +HYPERLINK = HYPERLINK ## Opretter en genvej kaldet et hyperlink, der åbner et dokument, som er lagret på en netværksserver, på et intranet eller på internettet +INDEX = INDEKS ## Anvender et indeks til at vælge en værdi fra en reference eller en matrix +INDIRECT = INDIREKTE ## Returnerer en reference, der er angivet af en tekstværdi +LOOKUP = SLÅ.OP ## Søger værdier i en vektor eller en matrix +MATCH = SAMMENLIGN ## Søger værdier i en reference eller en matrix +OFFSET = FORSKYDNING ## Returnerer en reference forskudt i forhold til en given reference +ROW = RÆKKE ## Returnerer rækkenummeret for en reference +ROWS = RÆKKER ## Returnerer antallet af rækker i en reference +RTD = RTD ## Henter realtidsdata fra et program, der understøtter COM-automatisering (Automation: En metode til at arbejde med objekter fra et andet program eller udviklingsværktøj. Automation, som tidligere blev kaldt OLE Automation, er en industristandard og en funktion i COM (Component Object Model).) +TRANSPOSE = TRANSPONER ## Returnerer en transponeret matrix +VLOOKUP = LOPSLAG ## Søger i øverste række af en matrix og flytter på tværs af rækken for at returnere en celleværdi + + +## +## Math and trigonometry functions Matematiske og trigonometriske funktioner +## +ABS = ABS ## Returnerer den absolutte værdi af et tal +ACOS = ARCCOS ## Returnerer et tals arcus cosinus +ACOSH = ARCCOSH ## Returnerer den inverse hyperbolske cosinus af tal +ASIN = ARCSIN ## Returnerer et tals arcus sinus +ASINH = ARCSINH ## Returnerer den inverse hyperbolske sinus for tal +ATAN = ARCTAN ## Returnerer et tals arcus tangens +ATAN2 = ARCTAN2 ## Returnerer de angivne x- og y-koordinaters arcus tangens +ATANH = ARCTANH ## Returnerer et tals inverse hyperbolske tangens +CEILING = AFRUND.LOFT ## Afrunder et tal til nærmeste heltal eller til nærmeste multiplum af betydning +COMBIN = KOMBIN ## Returnerer antallet af kombinationer for et givet antal objekter +COS = COS ## Returnerer et tals cosinus +COSH = COSH ## Returnerer den inverse hyperbolske cosinus af et tal +DEGREES = GRADER ## Konverterer radianer til grader +EVEN = LIGE ## Runder et tal op til nærmeste lige heltal +EXP = EKSP ## Returnerer e opløftet til en potens af et angivet tal +FACT = FAKULTET ## Returnerer et tals fakultet +FACTDOUBLE = DOBBELT.FAKULTET ## Returnerer et tals dobbelte fakultet +FLOOR = AFRUND.GULV ## Runder et tal ned mod nul +GCD = STØRSTE.FÆLLES.DIVISOR ## Returnerer den største fælles divisor +INT = HELTAL ## Nedrunder et tal til det nærmeste heltal +LCM = MINDSTE.FÆLLES.MULTIPLUM ## Returnerer det mindste fælles multiplum +LN = LN ## Returnerer et tals naturlige logaritme +LOG = LOG ## Returnerer logaritmen for et tal på grundlag af et angivet grundtal +LOG10 = LOG10 ## Returnerer titalslogaritmen af et tal +MDETERM = MDETERM ## Returnerer determinanten for en matrix +MINVERSE = MINVERT ## Returnerer den inverse matrix for en matrix +MMULT = MPRODUKT ## Returnerer matrixproduktet af to matrixer +MOD = REST ## Returnerer restværdien fra division +MROUND = MAFRUND ## Returnerer et tal afrundet til det ønskede multiplum +MULTINOMIAL = MULTINOMIAL ## Returnerer et multinomialt talsæt +ODD = ULIGE ## Runder et tal op til nærmeste ulige heltal +PI = PI ## Returnerer værdien af pi +POWER = POTENS ## Returnerer resultatet af et tal opløftet til en potens +PRODUCT = PRODUKT ## Multiplicerer argumenterne +QUOTIENT = KVOTIENT ## Returnerer heltalsdelen ved division +RADIANS = RADIANER ## Konverterer grader til radianer +RAND = SLUMP ## Returnerer et tilfældigt tal mellem 0 og 1 +RANDBETWEEN = SLUMP.MELLEM ## Returnerer et tilfældigt tal mellem de tal, der angives +ROMAN = ROMERTAL ## Konverterer et arabertal til romertal som tekst +ROUND = AFRUND ## Afrunder et tal til et angivet antal decimaler +ROUNDDOWN = RUND.NED ## Runder et tal ned mod nul +ROUNDUP = RUND.OP ## Runder et tal op, væk fra 0 (nul) +SERIESSUM = SERIESUM ## Returnerer summen af en potensserie baseret på en formel +SIGN = FORTEGN ## Returnerer et tals fortegn +SIN = SIN ## Returnerer en given vinkels sinusværdi +SINH = SINH ## Returnerer den hyperbolske sinus af et tal +SQRT = KVROD ## Returnerer en positiv kvadratrod +SQRTPI = KVRODPI ## Returnerer kvadratroden af (tal * pi;) +SUBTOTAL = SUBTOTAL ## Returnerer en subtotal på en liste eller i en database +SUM = SUM ## Lægger argumenterne sammen +SUMIF = SUM.HVIS ## Lægger de celler sammen, der er specificeret af et givet kriterium. +SUMIFS = SUM.HVISER ## Lægger de celler i et område sammen, der opfylder flere kriterier. +SUMPRODUCT = SUMPRODUKT ## Returnerer summen af produkter af ens matrixkomponenter +SUMSQ = SUMKV ## Returnerer summen af argumenternes kvadrater +SUMX2MY2 = SUMX2MY2 ## Returnerer summen af differensen mellem kvadrater af ens værdier i to matrixer +SUMX2PY2 = SUMX2PY2 ## Returnerer summen af summen af kvadrater af tilsvarende værdier i to matrixer +SUMXMY2 = SUMXMY2 ## Returnerer summen af kvadrater af differenser mellem ens værdier i to matrixer +TAN = TAN ## Returnerer et tals tangens +TANH = TANH ## Returnerer et tals hyperbolske tangens +TRUNC = AFKORT ## Afkorter et tal til et heltal + + +## +## Statistical functions Statistiske funktioner +## +AVEDEV = MAD ## Returnerer den gennemsnitlige numeriske afvigelse fra stikprøvens middelværdi +AVERAGE = MIDDEL ## Returnerer middelværdien af argumenterne +AVERAGEA = MIDDELV ## Returnerer middelværdien af argumenterne og medtager tal, tekst og logiske værdier +AVERAGEIF = MIDDEL.HVIS ## Returnerer gennemsnittet (den aritmetiske middelværdi) af alle de celler, der opfylder et givet kriterium, i et område +AVERAGEIFS = MIDDEL.HVISER ## Returnerer gennemsnittet (den aritmetiske middelværdi) af alle de celler, der opfylder flere kriterier. +BETADIST = BETAFORDELING ## Returnerer den kumulative betafordelingsfunktion +BETAINV = BETAINV ## Returnerer den inverse kumulative fordelingsfunktion for en angivet betafordeling +BINOMDIST = BINOMIALFORDELING ## Returnerer punktsandsynligheden for binomialfordelingen +CHIDIST = CHIFORDELING ## Returnerer fraktilsandsynligheden for en chi2-fordeling +CHIINV = CHIINV ## Returnerer den inverse fraktilsandsynlighed for en chi2-fordeling +CHITEST = CHITEST ## Foretager en test for uafhængighed +CONFIDENCE = KONFIDENSINTERVAL ## Returnerer et konfidensinterval for en population +CORREL = KORRELATION ## Returnerer korrelationskoefficienten mellem to datasæt +COUNT = TÆL ## Tæller antallet af tal på en liste med argumenter +COUNTA = TÆLV ## Tæller antallet af værdier på en liste med argumenter +COUNTBLANK = ANTAL.BLANKE ## Tæller antallet af tomme celler i et område +COUNTIF = TÆLHVIS ## Tæller antallet af celler, som opfylder de givne kriterier, i et område +COUNTIFS = TÆL.HVISER ## Tæller antallet af de celler, som opfylder flere kriterier, i et område +COVAR = KOVARIANS ## Beregner kovariansen mellem to stokastiske variabler +CRITBINOM = KRITBINOM ## Returnerer den mindste værdi for x, for hvilken det gælder, at fordelingsfunktionen er mindre end eller lig med kriterieværdien. +DEVSQ = SAK ## Returnerer summen af de kvadrerede afvigelser fra middelværdien +EXPONDIST = EKSPFORDELING ## Returnerer eksponentialfordelingen +FDIST = FFORDELING ## Returnerer fraktilsandsynligheden for F-fordelingen +FINV = FINV ## Returnerer den inverse fraktilsandsynlighed for F-fordelingen +FISHER = FISHER ## Returnerer Fisher-transformationen +FISHERINV = FISHERINV ## Returnerer den inverse Fisher-transformation +FORECAST = PROGNOSE ## Returnerer en prognoseværdi baseret på lineær tendens +FREQUENCY = FREKVENS ## Returnerer en frekvensfordeling i en søjlevektor +FTEST = FTEST ## Returnerer resultatet af en F-test til sammenligning af varians +GAMMADIST = GAMMAFORDELING ## Returnerer fordelingsfunktionen for gammafordelingen +GAMMAINV = GAMMAINV ## Returnerer den inverse fordelingsfunktion for gammafordelingen +GAMMALN = GAMMALN ## Returnerer den naturlige logaritme til gammafordelingen, G(x) +GEOMEAN = GEOMIDDELVÆRDI ## Returnerer det geometriske gennemsnit +GROWTH = FORØGELSE ## Returnerer værdier langs en eksponentiel tendens +HARMEAN = HARMIDDELVÆRDI ## Returnerer det harmoniske gennemsnit +HYPGEOMDIST = HYPGEOFORDELING ## Returnerer punktsandsynligheden i en hypergeometrisk fordeling +INTERCEPT = SKÆRING ## Returnerer afskæringsværdien på y-aksen i en lineær regression +KURT = TOPSTEJL ## Returnerer kurtosisværdien for en stokastisk variabel +LARGE = STOR ## Returnerer den k'te største værdi i et datasæt +LINEST = LINREGR ## Returnerer parameterestimaterne for en lineær tendens +LOGEST = LOGREGR ## Returnerer parameterestimaterne for en eksponentiel tendens +LOGINV = LOGINV ## Returnerer den inverse fordelingsfunktion for lognormalfordelingen +LOGNORMDIST = LOGNORMFORDELING ## Returnerer fordelingsfunktionen for lognormalfordelingen +MAX = MAKS ## Returnerer den maksimale værdi på en liste med argumenter. +MAXA = MAKSV ## Returnerer den maksimale værdi på en liste med argumenter og medtager tal, tekst og logiske værdier +MEDIAN = MEDIAN ## Returnerer medianen for de angivne tal +MIN = MIN ## Returnerer den mindste værdi på en liste med argumenter. +MINA = MINV ## Returnerer den mindste værdi på en liste med argumenter og medtager tal, tekst og logiske værdier +MODE = HYPPIGST ## Returnerer den hyppigste værdi i et datasæt +NEGBINOMDIST = NEGBINOMFORDELING ## Returnerer den negative binomialfordeling +NORMDIST = NORMFORDELING ## Returnerer fordelingsfunktionen for normalfordelingen +NORMINV = NORMINV ## Returnerer den inverse fordelingsfunktion for normalfordelingen +NORMSDIST = STANDARDNORMFORDELING ## Returnerer fordelingsfunktionen for standardnormalfordelingen +NORMSINV = STANDARDNORMINV ## Returnerer den inverse fordelingsfunktion for standardnormalfordelingen +PEARSON = PEARSON ## Returnerer Pearsons korrelationskoefficient +PERCENTILE = FRAKTIL ## Returnerer den k'te fraktil for datasættet +PERCENTRANK = PROCENTPLADS ## Returnerer den procentuelle rang for en given værdi i et datasæt +PERMUT = PERMUT ## Returnerer antallet af permutationer for et givet sæt objekter +POISSON = POISSON ## Returnerer fordelingsfunktionen for en Poisson-fordeling +PROB = SANDSYNLIGHED ## Returnerer intervalsandsynligheden +QUARTILE = KVARTIL ## Returnerer kvartilen i et givet datasæt +RANK = PLADS ## Returnerer rangen for et tal på en liste med tal +RSQ = FORKLARINGSGRAD ## Returnerer R2-værdien fra en simpel lineær regression +SKEW = SKÆVHED ## Returnerer skævheden for en stokastisk variabel +SLOPE = HÆLDNING ## Returnerer estimatet på hældningen fra en simpel lineær regression +SMALL = MINDSTE ## Returnerer den k'te mindste værdi i datasættet +STANDARDIZE = STANDARDISER ## Returnerer en standardiseret værdi +STDEV = STDAFV ## Estimerer standardafvigelsen på basis af en stikprøve +STDEVA = STDAFVV ## Beregner standardafvigelsen på basis af en prøve og medtager tal, tekst og logiske værdier +STDEVP = STDAFVP ## Beregner standardafvigelsen på basis af en hel population +STDEVPA = STDAFVPV ## Beregner standardafvigelsen på basis af en hel population og medtager tal, tekst og logiske værdier +STEYX = STFYX ## Returnerer standardafvigelsen for de estimerede y-værdier i den simple lineære regression +TDIST = TFORDELING ## Returnerer fordelingsfunktionen for Student's t-fordeling +TINV = TINV ## Returnerer den inverse fordelingsfunktion for Student's t-fordeling +TREND = TENDENS ## Returnerer værdi under antagelse af en lineær tendens +TRIMMEAN = TRIMMIDDELVÆRDI ## Returnerer den trimmede middelværdi for datasættet +TTEST = TTEST ## Returnerer den sandsynlighed, der er forbundet med Student's t-test +VAR = VARIANS ## Beregner variansen på basis af en prøve +VARA = VARIANSV ## Beregner variansen på basis af en prøve og medtager tal, tekst og logiske værdier +VARP = VARIANSP ## Beregner variansen på basis af hele populationen +VARPA = VARIANSPV ## Beregner variansen på basis af hele populationen og medtager tal, tekst og logiske værdier +WEIBULL = WEIBULL ## Returnerer fordelingsfunktionen for Weibull-fordelingen +ZTEST = ZTEST ## Returnerer sandsynlighedsværdien ved en en-sidet z-test + + +## +## Text functions Tekstfunktioner +## +ASC = ASC ## Ændrer engelske tegn i fuld bredde (dobbelt-byte) eller katakana i en tegnstreng til tegn i halv bredde (enkelt-byte) +BAHTTEXT = BAHTTEKST ## Konverterer et tal til tekst ved hjælp af valutaformatet ß (baht) +CHAR = TEGN ## Returnerer det tegn, der svarer til kodenummeret +CLEAN = RENS ## Fjerner alle tegn, der ikke kan udskrives, fra tekst +CODE = KODE ## Returnerer en numerisk kode for det første tegn i en tekststreng +CONCATENATE = SAMMENKÆDNING ## Sammenkæder adskillige tekstelementer til ét tekstelement +DOLLAR = KR ## Konverterer et tal til tekst ved hjælp af valutaformatet kr. (kroner) +EXACT = EKSAKT ## Kontrollerer, om to tekstværdier er identiske +FIND = FIND ## Søger efter en tekstværdi i en anden tekstværdi (der skelnes mellem store og små bogstaver) +FINDB = FINDB ## Søger efter en tekstværdi i en anden tekstværdi (der skelnes mellem store og små bogstaver) +FIXED = FAST ## Formaterer et tal som tekst med et fast antal decimaler +JIS = JIS ## Ændrer engelske tegn i halv bredde (enkelt-byte) eller katakana i en tegnstreng til tegn i fuld bredde (dobbelt-byte) +LEFT = VENSTRE ## Returnerer tegnet længst til venstre i en tekstværdi +LEFTB = VENSTREB ## Returnerer tegnet længst til venstre i en tekstværdi +LEN = LÆNGDE ## Returnerer antallet af tegn i en tekststreng +LENB = LÆNGDEB ## Returnerer antallet af tegn i en tekststreng +LOWER = SMÅ.BOGSTAVER ## Konverterer tekst til små bogstaver +MID = MIDT ## Returnerer et bestemt antal tegn fra en tekststreng fra og med den angivne startposition +MIDB = MIDTB ## Returnerer et bestemt antal tegn fra en tekststreng fra og med den angivne startposition +PHONETIC = FONETISK ## Uddrager de fonetiske (furigana) tegn fra en tekststreng +PROPER = STORT.FORBOGSTAV ## Konverterer første bogstav i hvert ord i teksten til stort bogstav +REPLACE = ERSTAT ## Erstatter tegn i tekst +REPLACEB = ERSTATB ## Erstatter tegn i tekst +REPT = GENTAG ## Gentager tekst et givet antal gange +RIGHT = HØJRE ## Returnerer tegnet længste til højre i en tekstværdi +RIGHTB = HØJREB ## Returnerer tegnet længste til højre i en tekstværdi +SEARCH = SØG ## Søger efter en tekstværdi i en anden tekstværdi (der skelnes ikke mellem store og små bogstaver) +SEARCHB = SØGB ## Søger efter en tekstværdi i en anden tekstværdi (der skelnes ikke mellem store og små bogstaver) +SUBSTITUTE = UDSKIFT ## Udskifter gammel tekst med ny tekst i en tekststreng +T = T ## Konverterer argumenterne til tekst +TEXT = TEKST ## Formaterer et tal og konverterer det til tekst +TRIM = FJERN.OVERFLØDIGE.BLANKE ## Fjerner mellemrum fra tekst +UPPER = STORE.BOGSTAVER ## Konverterer tekst til store bogstaver +VALUE = VÆRDI ## Konverterer et tekstargument til et tal diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/de/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/de/_notes/dwsync.xml new file mode 100644 index 0000000..b309815 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/de/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851499999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851499999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851499999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851499999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559964588638" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559965240516" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752267153268" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752267640035" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461239837788" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461241084064" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752267153268" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752267640035" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/de/config b/site/config/PHPExcel/Classes/PHPExcel/locale/de/config new file mode 100644 index 0000000..9519349 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/de/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = € + + +## +## Excel Error Codes (For future use) +## +NULL = #NULL! +DIV0 = #DIV/0! +VALUE = #WERT! +REF = #BEZUG! +NAME = #NAME? +NUM = #ZAHL! +NA = #NV diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/de/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/de/functions new file mode 100644 index 0000000..1c19c5b --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/de/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Add-In- und Automatisierungsfunktionen +## +GETPIVOTDATA = PIVOTDATENZUORDNEN ## In einem PivotTable-Bericht gespeicherte Daten werden zurückgegeben. + + +## +## Cube functions Cubefunktionen +## +CUBEKPIMEMBER = CUBEKPIELEMENT ## Gibt Name, Eigenschaft und Measure eines Key Performance Indicators (KPI) zurück und zeigt den Namen und die Eigenschaft in der Zelle an. Ein KPI ist ein quantifizierbares Maß, wie z. B. der monatliche Bruttogewinn oder die vierteljährliche Mitarbeiterfluktuation, mit dessen Hilfe das Leistungsverhalten eines Unternehmens überwacht werden kann. +CUBEMEMBER = CUBEELEMENT ## Gibt ein Element oder ein Tuple in einer Cubehierarchie zurück. Wird verwendet, um zu überprüfen, ob das Element oder Tuple im Cube vorhanden ist. +CUBEMEMBERPROPERTY = CUBEELEMENTEIGENSCHAFT ## Gibt den Wert einer Elementeigenschaft im Cube zurück. Wird verwendet, um zu überprüfen, ob ein Elementname im Cube vorhanden ist, und um die für dieses Element angegebene Eigenschaft zurückzugeben. +CUBERANKEDMEMBER = CUBERANGELEMENT ## Gibt das n-te oder n-rangige Element in einer Menge zurück. Wird verwendet, um mindestens ein Element in einer Menge zurückzugeben, wie z. B. bester Vertriebsmitarbeiter oder 10 beste Kursteilnehmer. +CUBESET = CUBEMENGE ## Definiert eine berechnete Menge Elemente oder Tuples durch Senden eines Mengenausdrucks an den Cube auf dem Server, der die Menge erstellt und an Microsoft Office Excel zurückgibt. +CUBESETCOUNT = CUBEMENGENANZAHL ## Gibt die Anzahl der Elemente in einer Menge zurück. +CUBEVALUE = CUBEWERT ## Gibt einen Aggregatwert aus einem Cube zurück. + + +## +## Database functions Datenbankfunktionen +## +DAVERAGE = DBMITTELWERT ## Gibt den Mittelwert der ausgewählten Datenbankeinträge zurück +DCOUNT = DBANZAHL ## Zählt die Zellen mit Zahlen in einer Datenbank +DCOUNTA = DBANZAHL2 ## Zählt nicht leere Zellen in einer Datenbank +DGET = DBAUSZUG ## Extrahiert aus einer Datenbank einen einzelnen Datensatz, der den angegebenen Kriterien entspricht +DMAX = DBMAX ## Gibt den größten Wert aus ausgewählten Datenbankeinträgen zurück +DMIN = DBMIN ## Gibt den kleinsten Wert aus ausgewählten Datenbankeinträgen zurück +DPRODUCT = DBPRODUKT ## Multipliziert die Werte in einem bestimmten Feld mit Datensätzen, die den Kriterien in einer Datenbank entsprechen +DSTDEV = DBSTDABW ## Schätzt die Standardabweichung auf der Grundlage einer Stichprobe aus ausgewählten Datenbankeinträgen +DSTDEVP = DBSTDABWN ## Berechnet die Standardabweichung auf der Grundlage der Grundgesamtheit ausgewählter Datenbankeinträge +DSUM = DBSUMME ## Addiert die Zahlen in der Feldspalte mit Datensätzen in der Datenbank, die den Kriterien entsprechen +DVAR = DBVARIANZ ## Schätzt die Varianz auf der Grundlage ausgewählter Datenbankeinträge +DVARP = DBVARIANZEN ## Berechnet die Varianz auf der Grundlage der Grundgesamtheit ausgewählter Datenbankeinträge + + +## +## Date and time functions Datums- und Zeitfunktionen +## +DATE = DATUM ## Gibt die fortlaufende Zahl eines bestimmten Datums zurück +DATEVALUE = DATWERT ## Wandelt ein Datum in Form von Text in eine fortlaufende Zahl um +DAY = TAG ## Wandelt eine fortlaufende Zahl in den Tag des Monats um +DAYS360 = TAGE360 ## Berechnet die Anzahl der Tage zwischen zwei Datumsangaben ausgehend von einem Jahr, das 360 Tage hat +EDATE = EDATUM ## Gibt die fortlaufende Zahl des Datums zurück, bei dem es sich um die angegebene Anzahl von Monaten vor oder nach dem Anfangstermin handelt +EOMONTH = MONATSENDE ## Gibt die fortlaufende Zahl des letzten Tags des Monats vor oder nach einer festgelegten Anzahl von Monaten zurück +HOUR = STUNDE ## Wandelt eine fortlaufende Zahl in eine Stunde um +MINUTE = MINUTE ## Wandelt eine fortlaufende Zahl in eine Minute um +MONTH = MONAT ## Wandelt eine fortlaufende Zahl in einen Monat um +NETWORKDAYS = NETTOARBEITSTAGE ## Gibt die Anzahl von ganzen Arbeitstagen zwischen zwei Datumswerten zurück +NOW = JETZT ## Gibt die fortlaufende Zahl des aktuellen Datums und der aktuellen Uhrzeit zurück +SECOND = SEKUNDE ## Wandelt eine fortlaufende Zahl in eine Sekunde um +TIME = ZEIT ## Gibt die fortlaufende Zahl einer bestimmten Uhrzeit zurück +TIMEVALUE = ZEITWERT ## Wandelt eine Uhrzeit in Form von Text in eine fortlaufende Zahl um +TODAY = HEUTE ## Gibt die fortlaufende Zahl des heutigen Datums zurück +WEEKDAY = WOCHENTAG ## Wandelt eine fortlaufende Zahl in den Wochentag um +WEEKNUM = KALENDERWOCHE ## Wandelt eine fortlaufende Zahl in eine Zahl um, die angibt, in welche Woche eines Jahres das angegebene Datum fällt +WORKDAY = ARBEITSTAG ## Gibt die fortlaufende Zahl des Datums vor oder nach einer bestimmten Anzahl von Arbeitstagen zurück +YEAR = JAHR ## Wandelt eine fortlaufende Zahl in ein Jahr um +YEARFRAC = BRTEILJAHRE ## Gibt die Anzahl der ganzen Tage zwischen Ausgangsdatum und Enddatum in Bruchteilen von Jahren zurück + + +## +## Engineering functions Konstruktionsfunktionen +## +BESSELI = BESSELI ## Gibt die geänderte Besselfunktion In(x) zurück +BESSELJ = BESSELJ ## Gibt die Besselfunktion Jn(x) zurück +BESSELK = BESSELK ## Gibt die geänderte Besselfunktion Kn(x) zurück +BESSELY = BESSELY ## Gibt die Besselfunktion Yn(x) zurück +BIN2DEC = BININDEZ ## Wandelt eine binäre Zahl (Dualzahl) in eine dezimale Zahl um +BIN2HEX = BININHEX ## Wandelt eine binäre Zahl (Dualzahl) in eine hexadezimale Zahl um +BIN2OCT = BININOKT ## Wandelt eine binäre Zahl (Dualzahl) in eine oktale Zahl um +COMPLEX = KOMPLEXE ## Wandelt den Real- und Imaginärteil in eine komplexe Zahl um +CONVERT = UMWANDELN ## Wandelt eine Zahl von einem Maßsystem in ein anderes um +DEC2BIN = DEZINBIN ## Wandelt eine dezimale Zahl in eine binäre Zahl (Dualzahl) um +DEC2HEX = DEZINHEX ## Wandelt eine dezimale Zahl in eine hexadezimale Zahl um +DEC2OCT = DEZINOKT ## Wandelt eine dezimale Zahl in eine oktale Zahl um +DELTA = DELTA ## Überprüft, ob zwei Werte gleich sind +ERF = GAUSSFEHLER ## Gibt die Gauss'sche Fehlerfunktion zurück +ERFC = GAUSSFKOMPL ## Gibt das Komplement zur Gauss'schen Fehlerfunktion zurück +GESTEP = GGANZZAHL ## Überprüft, ob eine Zahl größer als ein gegebener Schwellenwert ist +HEX2BIN = HEXINBIN ## Wandelt eine hexadezimale Zahl in eine Binärzahl um +HEX2DEC = HEXINDEZ ## Wandelt eine hexadezimale Zahl in eine dezimale Zahl um +HEX2OCT = HEXINOKT ## Wandelt eine hexadezimale Zahl in eine Oktalzahl um +IMABS = IMABS ## Gibt den Absolutbetrag (Modulo) einer komplexen Zahl zurück +IMAGINARY = IMAGINÄRTEIL ## Gibt den Imaginärteil einer komplexen Zahl zurück +IMARGUMENT = IMARGUMENT ## Gibt das Argument Theta zurück, einen Winkel, der als Bogenmaß ausgedrückt wird +IMCONJUGATE = IMKONJUGIERTE ## Gibt die konjugierte komplexe Zahl zu einer komplexen Zahl zurück +IMCOS = IMCOS ## Gibt den Kosinus einer komplexen Zahl zurück +IMDIV = IMDIV ## Gibt den Quotienten zweier komplexer Zahlen zurück +IMEXP = IMEXP ## Gibt die algebraische Form einer in exponentieller Schreibweise vorliegenden komplexen Zahl zurück +IMLN = IMLN ## Gibt den natürlichen Logarithmus einer komplexen Zahl zurück +IMLOG10 = IMLOG10 ## Gibt den Logarithmus einer komplexen Zahl zur Basis 10 zurück +IMLOG2 = IMLOG2 ## Gibt den Logarithmus einer komplexen Zahl zur Basis 2 zurück +IMPOWER = IMAPOTENZ ## Potenziert eine komplexe Zahl mit einer ganzen Zahl +IMPRODUCT = IMPRODUKT ## Gibt das Produkt von komplexen Zahlen zurück +IMREAL = IMREALTEIL ## Gibt den Realteil einer komplexen Zahl zurück +IMSIN = IMSIN ## Gibt den Sinus einer komplexen Zahl zurück +IMSQRT = IMWURZEL ## Gibt die Quadratwurzel einer komplexen Zahl zurück +IMSUB = IMSUB ## Gibt die Differenz zwischen zwei komplexen Zahlen zurück +IMSUM = IMSUMME ## Gibt die Summe von komplexen Zahlen zurück +OCT2BIN = OKTINBIN ## Wandelt eine oktale Zahl in eine binäre Zahl (Dualzahl) um +OCT2DEC = OKTINDEZ ## Wandelt eine oktale Zahl in eine dezimale Zahl um +OCT2HEX = OKTINHEX ## Wandelt eine oktale Zahl in eine hexadezimale Zahl um + + +## +## Financial functions Finanzmathematische Funktionen +## +ACCRINT = AUFGELZINS ## Gibt die aufgelaufenen Zinsen (Stückzinsen) eines Wertpapiers mit periodischen Zinszahlungen zurück +ACCRINTM = AUFGELZINSF ## Gibt die aufgelaufenen Zinsen (Stückzinsen) eines Wertpapiers zurück, die bei Fälligkeit ausgezahlt werden +AMORDEGRC = AMORDEGRK ## Gibt die Abschreibung für die einzelnen Abschreibungszeiträume mithilfe eines Abschreibungskoeffizienten zurück +AMORLINC = AMORLINEARK ## Gibt die Abschreibung für die einzelnen Abschreibungszeiträume zurück +COUPDAYBS = ZINSTERMTAGVA ## Gibt die Anzahl der Tage vom Anfang des Zinstermins bis zum Abrechnungstermin zurück +COUPDAYS = ZINSTERMTAGE ## Gibt die Anzahl der Tage der Zinsperiode zurück, die den Abrechnungstermin einschließt +COUPDAYSNC = ZINSTERMTAGNZ ## Gibt die Anzahl der Tage vom Abrechnungstermin bis zum nächsten Zinstermin zurück +COUPNCD = ZINSTERMNZ ## Gibt das Datum des ersten Zinstermins nach dem Abrechnungstermin zurück +COUPNUM = ZINSTERMZAHL ## Gibt die Anzahl der Zinstermine zwischen Abrechnungs- und Fälligkeitsdatum zurück +COUPPCD = ZINSTERMVZ ## Gibt das Datum des letzten Zinstermins vor dem Abrechnungstermin zurück +CUMIPMT = KUMZINSZ ## Berechnet die kumulierten Zinsen, die zwischen zwei Perioden zu zahlen sind +CUMPRINC = KUMKAPITAL ## Berechnet die aufgelaufene Tilgung eines Darlehens, die zwischen zwei Perioden zu zahlen ist +DB = GDA2 ## Gibt die geometrisch-degressive Abschreibung eines Wirtschaftsguts für eine bestimmte Periode zurück +DDB = GDA ## Gibt die Abschreibung eines Anlageguts für einen angegebenen Zeitraum unter Verwendung der degressiven Doppelraten-Abschreibung oder eines anderen von Ihnen angegebenen Abschreibungsverfahrens zurück +DISC = DISAGIO ## Gibt den in Prozent ausgedrückten Abzinsungssatz eines Wertpapiers zurück +DOLLARDE = NOTIERUNGDEZ ## Wandelt eine Notierung, die als Dezimalbruch ausgedrückt wurde, in eine Dezimalzahl um +DOLLARFR = NOTIERUNGBRU ## Wandelt eine Notierung, die als Dezimalzahl ausgedrückt wurde, in einen Dezimalbruch um +DURATION = DURATION ## Gibt die jährliche Duration eines Wertpapiers mit periodischen Zinszahlungen zurück +EFFECT = EFFEKTIV ## Gibt die jährliche Effektivverzinsung zurück +FV = ZW ## Gibt den zukünftigen Wert (Endwert) einer Investition zurück +FVSCHEDULE = ZW2 ## Gibt den aufgezinsten Wert des Anfangskapitals für eine Reihe periodisch unterschiedlicher Zinssätze zurück +INTRATE = ZINSSATZ ## Gibt den Zinssatz eines voll investierten Wertpapiers zurück +IPMT = ZINSZ ## Gibt die Zinszahlung einer Investition für die angegebene Periode zurück +IRR = IKV ## Gibt den internen Zinsfuß einer Investition ohne Finanzierungskosten oder Reinvestitionsgewinne zurück +ISPMT = ISPMT ## Berechnet die während eines bestimmten Zeitraums für eine Investition gezahlten Zinsen +MDURATION = MDURATION ## Gibt die geänderte Dauer für ein Wertpapier mit einem angenommenen Nennwert von 100 € zurück +MIRR = QIKV ## Gibt den internen Zinsfuß zurück, wobei positive und negative Zahlungen zu unterschiedlichen Sätzen finanziert werden +NOMINAL = NOMINAL ## Gibt die jährliche Nominalverzinsung zurück +NPER = ZZR ## Gibt die Anzahl der Zahlungsperioden einer Investition zurück +NPV = NBW ## Gibt den Nettobarwert einer Investition auf Basis periodisch anfallender Zahlungen und eines Abzinsungsfaktors zurück +ODDFPRICE = UNREGER.KURS ## Gibt den Kurs pro 100 € Nennwert eines Wertpapiers mit einem unregelmäßigen ersten Zinstermin zurück +ODDFYIELD = UNREGER.REND ## Gibt die Rendite eines Wertpapiers mit einem unregelmäßigen ersten Zinstermin zurück +ODDLPRICE = UNREGLE.KURS ## Gibt den Kurs pro 100 € Nennwert eines Wertpapiers mit einem unregelmäßigen letzten Zinstermin zurück +ODDLYIELD = UNREGLE.REND ## Gibt die Rendite eines Wertpapiers mit einem unregelmäßigen letzten Zinstermin zurück +PMT = RMZ ## Gibt die periodische Zahlung für eine Annuität zurück +PPMT = KAPZ ## Gibt die Kapitalrückzahlung einer Investition für eine angegebene Periode zurück +PRICE = KURS ## Gibt den Kurs pro 100 € Nennwert eines Wertpapiers zurück, das periodisch Zinsen auszahlt +PRICEDISC = KURSDISAGIO ## Gibt den Kurs pro 100 € Nennwert eines unverzinslichen Wertpapiers zurück +PRICEMAT = KURSFÄLLIG ## Gibt den Kurs pro 100 € Nennwert eines Wertpapiers zurück, das Zinsen am Fälligkeitsdatum auszahlt +PV = BW ## Gibt den Barwert einer Investition zurück +RATE = ZINS ## Gibt den Zinssatz pro Zeitraum einer Annuität zurück +RECEIVED = AUSZAHLUNG ## Gibt den Auszahlungsbetrag eines voll investierten Wertpapiers am Fälligkeitstermin zurück +SLN = LIA ## Gibt die lineare Abschreibung eines Wirtschaftsguts pro Periode zurück +SYD = DIA ## Gibt die arithmetisch-degressive Abschreibung eines Wirtschaftsguts für eine bestimmte Periode zurück +TBILLEQ = TBILLÄQUIV ## Gibt die Rendite für ein Wertpapier zurück +TBILLPRICE = TBILLKURS ## Gibt den Kurs pro 100 € Nennwert eines Wertpapiers zurück +TBILLYIELD = TBILLRENDITE ## Gibt die Rendite für ein Wertpapier zurück +VDB = VDB ## Gibt die degressive Abschreibung eines Wirtschaftsguts für eine bestimmte Periode oder Teilperiode zurück +XIRR = XINTZINSFUSS ## Gibt den internen Zinsfuß einer Reihe nicht periodisch anfallender Zahlungen zurück +XNPV = XKAPITALWERT ## Gibt den Nettobarwert (Kapitalwert) einer Reihe nicht periodisch anfallender Zahlungen zurück +YIELD = RENDITE ## Gibt die Rendite eines Wertpapiers zurück, das periodisch Zinsen auszahlt +YIELDDISC = RENDITEDIS ## Gibt die jährliche Rendite eines unverzinslichen Wertpapiers zurück +YIELDMAT = RENDITEFÄLL ## Gibt die jährliche Rendite eines Wertpapiers zurück, das Zinsen am Fälligkeitsdatum auszahlt + + +## +## Information functions Informationsfunktionen +## +CELL = ZELLE ## Gibt Informationen zu Formatierung, Position oder Inhalt einer Zelle zurück +ERROR.TYPE = FEHLER.TYP ## Gibt eine Zahl zurück, die einem Fehlertyp entspricht +INFO = INFO ## Gibt Informationen zur aktuellen Betriebssystemumgebung zurück +ISBLANK = ISTLEER ## Gibt WAHR zurück, wenn der Wert leer ist +ISERR = ISTFEHL ## Gibt WAHR zurück, wenn der Wert ein beliebiger Fehlerwert außer #N/V ist +ISERROR = ISTFEHLER ## Gibt WAHR zurück, wenn der Wert ein beliebiger Fehlerwert ist +ISEVEN = ISTGERADE ## Gibt WAHR zurück, wenn es sich um eine gerade Zahl handelt +ISLOGICAL = ISTLOG ## Gibt WAHR zurück, wenn der Wert ein Wahrheitswert ist +ISNA = ISTNV ## Gibt WAHR zurück, wenn der Wert der Fehlerwert #N/V ist +ISNONTEXT = ISTKTEXT ## Gibt WAHR zurück, wenn der Wert ein Element ist, das keinen Text enthält +ISNUMBER = ISTZAHL ## Gibt WAHR zurück, wenn der Wert eine Zahl ist +ISODD = ISTUNGERADE ## Gibt WAHR zurück, wenn es sich um eine ungerade Zahl handelt +ISREF = ISTBEZUG ## Gibt WAHR zurück, wenn der Wert ein Bezug ist +ISTEXT = ISTTEXT ## Gibt WAHR zurück, wenn der Wert ein Element ist, das Text enthält +N = N ## Gibt den in eine Zahl umgewandelten Wert zurück +NA = NV ## Gibt den Fehlerwert #NV zurück +TYPE = TYP ## Gibt eine Zahl zurück, die den Datentyp des angegebenen Werts anzeigt + + +## +## Logical functions Logische Funktionen +## +AND = UND ## Gibt WAHR zurück, wenn alle zugehörigen Argumente WAHR sind +FALSE = FALSCH ## Gibt den Wahrheitswert FALSCH zurück +IF = WENN ## Gibt einen logischen Test zum Ausführen an +IFERROR = WENNFEHLER ## Gibt einen von Ihnen festgelegten Wert zurück, wenn die Auswertung der Formel zu einem Fehler führt; andernfalls wird das Ergebnis der Formel zurückgegeben +NOT = NICHT ## Kehrt den Wahrheitswert der zugehörigen Argumente um +OR = ODER ## Gibt WAHR zurück, wenn ein Argument WAHR ist +TRUE = WAHR ## Gibt den Wahrheitswert WAHR zurück + + +## +## Lookup and reference functions Nachschlage- und Verweisfunktionen +## +ADDRESS = ADRESSE ## Gibt einen Bezug auf eine einzelne Zelle in einem Tabellenblatt als Text zurück +AREAS = BEREICHE ## Gibt die Anzahl der innerhalb eines Bezugs aufgeführten Bereiche zurück +CHOOSE = WAHL ## Wählt einen Wert aus eine Liste mit Werten aus +COLUMN = SPALTE ## Gibt die Spaltennummer eines Bezugs zurück +COLUMNS = SPALTEN ## Gibt die Anzahl der Spalten in einem Bezug zurück +HLOOKUP = HVERWEIS ## Sucht in der obersten Zeile einer Matrix und gibt den Wert der angegebenen Zelle zurück +HYPERLINK = HYPERLINK ## Erstellt eine Verknüpfung, über die ein auf einem Netzwerkserver, in einem Intranet oder im Internet gespeichertes Dokument geöffnet wird +INDEX = INDEX ## Verwendet einen Index, um einen Wert aus einem Bezug oder einer Matrix auszuwählen +INDIRECT = INDIREKT ## Gibt einen Bezug zurück, der von einem Textwert angegeben wird +LOOKUP = LOOKUP ## Sucht Werte in einem Vektor oder einer Matrix +MATCH = VERGLEICH ## Sucht Werte in einem Bezug oder einer Matrix +OFFSET = BEREICH.VERSCHIEBEN ## Gibt einen Bezugoffset aus einem gegebenen Bezug zurück +ROW = ZEILE ## Gibt die Zeilennummer eines Bezugs zurück +ROWS = ZEILEN ## Gibt die Anzahl der Zeilen in einem Bezug zurück +RTD = RTD ## Ruft Echtzeitdaten von einem Programm ab, das die COM-Automatisierung (Automatisierung: Ein Verfahren, bei dem aus einer Anwendung oder einem Entwicklungstool heraus mit den Objekten einer anderen Anwendung gearbeitet wird. Die früher als OLE-Automatisierung bezeichnete Automatisierung ist ein Industriestandard und eine Funktion von COM (Component Object Model).) unterstützt +TRANSPOSE = MTRANS ## Gibt die transponierte Matrix einer Matrix zurück +VLOOKUP = SVERWEIS ## Sucht in der ersten Spalte einer Matrix und arbeitet sich durch die Zeile, um den Wert einer Zelle zurückzugeben + + +## +## Math and trigonometry functions Mathematische und trigonometrische Funktionen +## +ABS = ABS ## Gibt den Absolutwert einer Zahl zurück +ACOS = ARCCOS ## Gibt den Arkuskosinus einer Zahl zurück +ACOSH = ARCCOSHYP ## Gibt den umgekehrten hyperbolischen Kosinus einer Zahl zurück +ASIN = ARCSIN ## Gibt den Arkussinus einer Zahl zurück +ASINH = ARCSINHYP ## Gibt den umgekehrten hyperbolischen Sinus einer Zahl zurück +ATAN = ARCTAN ## Gibt den Arkustangens einer Zahl zurück +ATAN2 = ARCTAN2 ## Gibt den Arkustangens einer x- und einer y-Koordinate zurück +ATANH = ARCTANHYP ## Gibt den umgekehrten hyperbolischen Tangens einer Zahl zurück +CEILING = OBERGRENZE ## Rundet eine Zahl auf die nächste ganze Zahl oder das nächste Vielfache von Schritt +COMBIN = KOMBINATIONEN ## Gibt die Anzahl der Kombinationen für eine bestimmte Anzahl von Objekten zurück +COS = COS ## Gibt den Kosinus einer Zahl zurück +COSH = COSHYP ## Gibt den hyperbolischen Kosinus einer Zahl zurück +DEGREES = GRAD ## Wandelt Bogenmaß (Radiant) in Grad um +EVEN = GERADE ## Rundet eine Zahl auf die nächste gerade ganze Zahl auf +EXP = EXP ## Potenziert die Basis e mit der als Argument angegebenen Zahl +FACT = FAKULTÄT ## Gibt die Fakultät einer Zahl zurück +FACTDOUBLE = ZWEIFAKULTÄT ## Gibt die Fakultät zu Zahl mit Schrittlänge 2 zurück +FLOOR = UNTERGRENZE ## Rundet die Zahl auf Anzahl_Stellen ab +GCD = GGT ## Gibt den größten gemeinsamen Teiler zurück +INT = GANZZAHL ## Rundet eine Zahl auf die nächstkleinere ganze Zahl ab +LCM = KGV ## Gibt das kleinste gemeinsame Vielfache zurück +LN = LN ## Gibt den natürlichen Logarithmus einer Zahl zurück +LOG = LOG ## Gibt den Logarithmus einer Zahl zu der angegebenen Basis zurück +LOG10 = LOG10 ## Gibt den Logarithmus einer Zahl zur Basis 10 zurück +MDETERM = MDET ## Gibt die Determinante einer Matrix zurück +MINVERSE = MINV ## Gibt die inverse Matrix einer Matrix zurück +MMULT = MMULT ## Gibt das Produkt zweier Matrizen zurück +MOD = REST ## Gibt den Rest einer Division zurück +MROUND = VRUNDEN ## Gibt eine auf das gewünschte Vielfache gerundete Zahl zurück +MULTINOMIAL = POLYNOMIAL ## Gibt den Polynomialkoeffizienten einer Gruppe von Zahlen zurück +ODD = UNGERADE ## Rundet eine Zahl auf die nächste ungerade ganze Zahl auf +PI = PI ## Gibt den Wert Pi zurück +POWER = POTENZ ## Gibt als Ergebnis eine potenzierte Zahl zurück +PRODUCT = PRODUKT ## Multipliziert die zugehörigen Argumente +QUOTIENT = QUOTIENT ## Gibt den ganzzahligen Anteil einer Division zurück +RADIANS = BOGENMASS ## Wandelt Grad in Bogenmaß (Radiant) um +RAND = ZUFALLSZAHL ## Gibt eine Zufallszahl zwischen 0 und 1 zurück +RANDBETWEEN = ZUFALLSBEREICH ## Gibt eine Zufallszahl aus dem festgelegten Bereich zurück +ROMAN = RÖMISCH ## Wandelt eine arabische Zahl in eine römische Zahl als Text um +ROUND = RUNDEN ## Rundet eine Zahl auf eine bestimmte Anzahl von Dezimalstellen +ROUNDDOWN = ABRUNDEN ## Rundet die Zahl auf Anzahl_Stellen ab +ROUNDUP = AUFRUNDEN ## Rundet die Zahl auf Anzahl_Stellen auf +SERIESSUM = POTENZREIHE ## Gibt die Summe von Potenzen (zur Berechnung von Potenzreihen und dichotomen Wahrscheinlichkeiten) zurück +SIGN = VORZEICHEN ## Gibt das Vorzeichen einer Zahl zurück +SIN = SIN ## Gibt den Sinus einer Zahl zurück +SINH = SINHYP ## Gibt den hyperbolischen Sinus einer Zahl zurück +SQRT = WURZEL ## Gibt die Quadratwurzel einer Zahl zurück +SQRTPI = WURZELPI ## Gibt die Wurzel aus der mit Pi (pi) multiplizierten Zahl zurück +SUBTOTAL = TEILERGEBNIS ## Gibt ein Teilergebnis in einer Liste oder Datenbank zurück +SUM = SUMME ## Addiert die zugehörigen Argumente +SUMIF = SUMMEWENN ## Addiert Zahlen, die mit den Suchkriterien übereinstimmen +SUMIFS = SUMMEWENNS ## Die Zellen, die mehrere Kriterien erfüllen, werden in einem Bereich hinzugefügt +SUMPRODUCT = SUMMENPRODUKT ## Gibt die Summe der Produkte zusammengehöriger Matrixkomponenten zurück +SUMSQ = QUADRATESUMME ## Gibt die Summe der quadrierten Argumente zurück +SUMX2MY2 = SUMMEX2MY2 ## Gibt die Summe der Differenzen der Quadrate für zusammengehörige Komponenten zweier Matrizen zurück +SUMX2PY2 = SUMMEX2PY2 ## Gibt die Summe der Quadrate für zusammengehörige Komponenten zweier Matrizen zurück +SUMXMY2 = SUMMEXMY2 ## Gibt die Summe der quadrierten Differenzen für zusammengehörige Komponenten zweier Matrizen zurück +TAN = TAN ## Gibt den Tangens einer Zahl zurück +TANH = TANHYP ## Gibt den hyperbolischen Tangens einer Zahl zurück +TRUNC = KÜRZEN ## Schneidet die Kommastellen einer Zahl ab und gibt als Ergebnis eine ganze Zahl zurück + + +## +## Statistical functions Statistische Funktionen +## +AVEDEV = MITTELABW ## Gibt die durchschnittliche absolute Abweichung einer Reihe von Merkmalsausprägungen und ihrem Mittelwert zurück +AVERAGE = MITTELWERT ## Gibt den Mittelwert der zugehörigen Argumente zurück +AVERAGEA = MITTELWERTA ## Gibt den Mittelwert der zugehörigen Argumente, die Zahlen, Text und Wahrheitswerte enthalten, zurück +AVERAGEIF = MITTELWERTWENN ## Der Durchschnittswert (arithmetisches Mittel) für alle Zellen in einem Bereich, die einem angegebenen Kriterium entsprechen, wird zurückgegeben +AVERAGEIFS = MITTELWERTWENNS ## Gibt den Durchschnittswert (arithmetisches Mittel) aller Zellen zurück, die mehreren Kriterien entsprechen +BETADIST = BETAVERT ## Gibt die Werte der kumulierten Betaverteilungsfunktion zurück +BETAINV = BETAINV ## Gibt das Quantil der angegebenen Betaverteilung zurück +BINOMDIST = BINOMVERT ## Gibt Wahrscheinlichkeiten einer binomialverteilten Zufallsvariablen zurück +CHIDIST = CHIVERT ## Gibt Werte der Verteilungsfunktion (1-Alpha) einer Chi-Quadrat-verteilten Zufallsgröße zurück +CHIINV = CHIINV ## Gibt Quantile der Verteilungsfunktion (1-Alpha) der Chi-Quadrat-Verteilung zurück +CHITEST = CHITEST ## Gibt die Teststatistik eines Unabhängigkeitstests zurück +CONFIDENCE = KONFIDENZ ## Ermöglicht die Berechnung des 1-Alpha Konfidenzintervalls für den Erwartungswert einer Zufallsvariablen +CORREL = KORREL ## Gibt den Korrelationskoeffizienten zweier Reihen von Merkmalsausprägungen zurück +COUNT = ANZAHL ## Gibt die Anzahl der Zahlen in der Liste mit Argumenten an +COUNTA = ANZAHL2 ## Gibt die Anzahl der Werte in der Liste mit Argumenten an +COUNTBLANK = ANZAHLLEEREZELLEN ## Gibt die Anzahl der leeren Zellen in einem Bereich an +COUNTIF = ZÄHLENWENN ## Gibt die Anzahl der Zellen in einem Bereich an, deren Inhalte mit den Suchkriterien übereinstimmen +COUNTIFS = ZÄHLENWENNS ## Gibt die Anzahl der Zellen in einem Bereich an, deren Inhalte mit mehreren Suchkriterien übereinstimmen +COVAR = KOVAR ## Gibt die Kovarianz zurück, den Mittelwert der für alle Datenpunktpaare gebildeten Produkte der Abweichungen +CRITBINOM = KRITBINOM ## Gibt den kleinsten Wert zurück, für den die kumulierten Wahrscheinlichkeiten der Binomialverteilung kleiner oder gleich einer Grenzwahrscheinlichkeit sind +DEVSQ = SUMQUADABW ## Gibt die Summe der quadrierten Abweichungen der Datenpunkte von ihrem Stichprobenmittelwert zurück +EXPONDIST = EXPONVERT ## Gibt Wahrscheinlichkeiten einer exponential verteilten Zufallsvariablen zurück +FDIST = FVERT ## Gibt Werte der Verteilungsfunktion (1-Alpha) einer F-verteilten Zufallsvariablen zurück +FINV = FINV ## Gibt Quantile der F-Verteilung zurück +FISHER = FISHER ## Gibt die Fisher-Transformation zurück +FISHERINV = FISHERINV ## Gibt die Umkehrung der Fisher-Transformation zurück +FORECAST = PROGNOSE ## Gibt einen Wert zurück, der sich aus einem linearen Trend ergibt +FREQUENCY = HÄUFIGKEIT ## Gibt eine Häufigkeitsverteilung als vertikale Matrix zurück +FTEST = FTEST ## Gibt die Teststatistik eines F-Tests zurück +GAMMADIST = GAMMAVERT ## Gibt Wahrscheinlichkeiten einer gammaverteilten Zufallsvariablen zurück +GAMMAINV = GAMMAINV ## Gibt Quantile der Gammaverteilung zurück +GAMMALN = GAMMALN ## Gibt den natürlichen Logarithmus der Gammafunktion zurück, Γ(x) +GEOMEAN = GEOMITTEL ## Gibt das geometrische Mittel zurück +GROWTH = VARIATION ## Gibt Werte zurück, die sich aus einem exponentiellen Trend ergeben +HARMEAN = HARMITTEL ## Gibt das harmonische Mittel zurück +HYPGEOMDIST = HYPGEOMVERT ## Gibt Wahrscheinlichkeiten einer hypergeometrisch-verteilten Zufallsvariablen zurück +INTERCEPT = ACHSENABSCHNITT ## Gibt den Schnittpunkt der Regressionsgeraden zurück +KURT = KURT ## Gibt die Kurtosis (Exzess) einer Datengruppe zurück +LARGE = KGRÖSSTE ## Gibt den k-größten Wert einer Datengruppe zurück +LINEST = RGP ## Gibt die Parameter eines linearen Trends zurück +LOGEST = RKP ## Gibt die Parameter eines exponentiellen Trends zurück +LOGINV = LOGINV ## Gibt Quantile der Lognormalverteilung zurück +LOGNORMDIST = LOGNORMVERT ## Gibt Werte der Verteilungsfunktion einer lognormalverteilten Zufallsvariablen zurück +MAX = MAX ## Gibt den Maximalwert einer Liste mit Argumenten zurück +MAXA = MAXA ## Gibt den Maximalwert einer Liste mit Argumenten zurück, die Zahlen, Text und Wahrheitswerte enthalten +MEDIAN = MEDIAN ## Gibt den Median der angegebenen Zahlen zurück +MIN = MIN ## Gibt den Minimalwert einer Liste mit Argumenten zurück +MINA = MINA ## Gibt den kleinsten Wert einer Liste mit Argumenten zurück, die Zahlen, Text und Wahrheitswerte enthalten +MODE = MODALWERT ## Gibt den am häufigsten vorkommenden Wert in einer Datengruppe zurück +NEGBINOMDIST = NEGBINOMVERT ## Gibt Wahrscheinlichkeiten einer negativen, binominal verteilten Zufallsvariablen zurück +NORMDIST = NORMVERT ## Gibt Wahrscheinlichkeiten einer normal verteilten Zufallsvariablen zurück +NORMINV = NORMINV ## Gibt Quantile der Normalverteilung zurück +NORMSDIST = STANDNORMVERT ## Gibt Werte der Verteilungsfunktion einer standardnormalverteilten Zufallsvariablen zurück +NORMSINV = STANDNORMINV ## Gibt Quantile der Standardnormalverteilung zurück +PEARSON = PEARSON ## Gibt den Pearsonschen Korrelationskoeffizienten zurück +PERCENTILE = QUANTIL ## Gibt das Alpha-Quantil einer Gruppe von Daten zurück +PERCENTRANK = QUANTILSRANG ## Gibt den prozentualen Rang (Alpha) eines Werts in einer Datengruppe zurück +PERMUT = VARIATIONEN ## Gibt die Anzahl der Möglichkeiten zurück, um k Elemente aus einer Menge von n Elementen ohne Zurücklegen zu ziehen +POISSON = POISSON ## Gibt Wahrscheinlichkeiten einer poissonverteilten Zufallsvariablen zurück +PROB = WAHRSCHBEREICH ## Gibt die Wahrscheinlichkeit für ein von zwei Werten eingeschlossenes Intervall zurück +QUARTILE = QUARTILE ## Gibt die Quartile der Datengruppe zurück +RANK = RANG ## Gibt den Rang zurück, den eine Zahl innerhalb einer Liste von Zahlen einnimmt +RSQ = BESTIMMTHEITSMASS ## Gibt das Quadrat des Pearsonschen Korrelationskoeffizienten zurück +SKEW = SCHIEFE ## Gibt die Schiefe einer Verteilung zurück +SLOPE = STEIGUNG ## Gibt die Steigung der Regressionsgeraden zurück +SMALL = KKLEINSTE ## Gibt den k-kleinsten Wert einer Datengruppe zurück +STANDARDIZE = STANDARDISIERUNG ## Gibt den standardisierten Wert zurück +STDEV = STABW ## Schätzt die Standardabweichung ausgehend von einer Stichprobe +STDEVA = STABWA ## Schätzt die Standardabweichung ausgehend von einer Stichprobe, die Zahlen, Text und Wahrheitswerte enthält +STDEVP = STABWN ## Berechnet die Standardabweichung ausgehend von der Grundgesamtheit +STDEVPA = STABWNA ## Berechnet die Standardabweichung ausgehend von der Grundgesamtheit, die Zahlen, Text und Wahrheitswerte enthält +STEYX = STFEHLERYX ## Gibt den Standardfehler der geschätzten y-Werte für alle x-Werte der Regression zurück +TDIST = TVERT ## Gibt Werte der Verteilungsfunktion (1-Alpha) einer (Student) t-verteilten Zufallsvariablen zurück +TINV = TINV ## Gibt Quantile der t-Verteilung zurück +TREND = TREND ## Gibt Werte zurück, die sich aus einem linearen Trend ergeben +TRIMMEAN = GESTUTZTMITTEL ## Gibt den Mittelwert einer Datengruppe zurück, ohne die Randwerte zu berücksichtigen +TTEST = TTEST ## Gibt die Teststatistik eines Student'schen t-Tests zurück +VAR = VARIANZ ## Schätzt die Varianz ausgehend von einer Stichprobe +VARA = VARIANZA ## Schätzt die Varianz ausgehend von einer Stichprobe, die Zahlen, Text und Wahrheitswerte enthält +VARP = VARIANZEN ## Berechnet die Varianz ausgehend von der Grundgesamtheit +VARPA = VARIANZENA ## Berechnet die Varianz ausgehend von der Grundgesamtheit, die Zahlen, Text und Wahrheitswerte enthält +WEIBULL = WEIBULL ## Gibt Wahrscheinlichkeiten einer weibullverteilten Zufallsvariablen zurück +ZTEST = GTEST ## Gibt den einseitigen Wahrscheinlichkeitswert für einen Gausstest (Normalverteilung) zurück + + +## +## Text functions Textfunktionen +## +ASC = ASC ## Konvertiert DB-Text in einer Zeichenfolge (lateinische Buchstaben oder Katakana) in SB-Text +BAHTTEXT = BAHTTEXT ## Wandelt eine Zahl in Text im Währungsformat ß (Baht) um +CHAR = ZEICHEN ## Gibt das der Codezahl entsprechende Zeichen zurück +CLEAN = SÄUBERN ## Löscht alle nicht druckbaren Zeichen aus einem Text +CODE = CODE ## Gibt die Codezahl des ersten Zeichens in einem Text zurück +CONCATENATE = VERKETTEN ## Verknüpft mehrere Textelemente zu einem Textelement +DOLLAR = DM ## Wandelt eine Zahl in Text im Währungsformat € (Euro) um +EXACT = IDENTISCH ## Prüft, ob zwei Textwerte identisch sind +FIND = FINDEN ## Sucht nach einem Textwert, der in einem anderen Textwert enthalten ist (Groß-/Kleinschreibung wird unterschieden) +FINDB = FINDENB ## Sucht nach einem Textwert, der in einem anderen Textwert enthalten ist (Groß-/Kleinschreibung wird unterschieden) +FIXED = FEST ## Formatiert eine Zahl als Text mit einer festen Anzahl von Dezimalstellen +JIS = JIS ## Konvertiert SB-Text in einer Zeichenfolge (lateinische Buchstaben oder Katakana) in DB-Text +LEFT = LINKS ## Gibt die Zeichen ganz links in einem Textwert zurück +LEFTB = LINKSB ## Gibt die Zeichen ganz links in einem Textwert zurück +LEN = LÄNGE ## Gibt die Anzahl der Zeichen in einer Zeichenfolge zurück +LENB = LÄNGEB ## Gibt die Anzahl der Zeichen in einer Zeichenfolge zurück +LOWER = KLEIN ## Wandelt Text in Kleinbuchstaben um +MID = TEIL ## Gibt eine bestimmte Anzahl Zeichen aus einer Zeichenfolge ab der von Ihnen angegebenen Stelle zurück +MIDB = TEILB ## Gibt eine bestimmte Anzahl Zeichen aus einer Zeichenfolge ab der von Ihnen angegebenen Stelle zurück +PHONETIC = PHONETIC ## Extrahiert die phonetischen (Furigana-)Zeichen aus einer Textzeichenfolge +PROPER = GROSS2 ## Wandelt den ersten Buchstaben aller Wörter eines Textwerts in Großbuchstaben um +REPLACE = ERSETZEN ## Ersetzt Zeichen in Text +REPLACEB = ERSETZENB ## Ersetzt Zeichen in Text +REPT = WIEDERHOLEN ## Wiederholt einen Text so oft wie angegeben +RIGHT = RECHTS ## Gibt die Zeichen ganz rechts in einem Textwert zurück +RIGHTB = RECHTSB ## Gibt die Zeichen ganz rechts in einem Textwert zurück +SEARCH = SUCHEN ## Sucht nach einem Textwert, der in einem anderen Textwert enthalten ist (Groß-/Kleinschreibung wird nicht unterschieden) +SEARCHB = SUCHENB ## Sucht nach einem Textwert, der in einem anderen Textwert enthalten ist (Groß-/Kleinschreibung wird nicht unterschieden) +SUBSTITUTE = WECHSELN ## Ersetzt in einer Zeichenfolge neuen Text gegen alten +T = T ## Wandelt die zugehörigen Argumente in Text um +TEXT = TEXT ## Formatiert eine Zahl und wandelt sie in Text um +TRIM = GLÄTTEN ## Entfernt Leerzeichen aus Text +UPPER = GROSS ## Wandelt Text in Großbuchstaben um +VALUE = WERT ## Wandelt ein Textargument in eine Zahl um diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/en/uk/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/en/uk/_notes/dwsync.xml new file mode 100644 index 0000000..d61960a --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/en/uk/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559973283806" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752273702378" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461240336028" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752273702378" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/en/uk/config b/site/config/PHPExcel/Classes/PHPExcel/locale/en/uk/config new file mode 100644 index 0000000..1bcfcb2 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/en/uk/config @@ -0,0 +1,32 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +## +## (For future use) +## +currencySymbol = £ diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/es/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/es/_notes/dwsync.xml new file mode 100644 index 0000000..319d70e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/es/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984143400000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984143400000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559939339833" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559939903763" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752243005270" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752243549841" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461240900507" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461244049323" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752243005270" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752243549841" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/es/config b/site/config/PHPExcel/Classes/PHPExcel/locale/es/config new file mode 100644 index 0000000..039f5b8 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/es/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = $ ## I'm surprised that the Excel Documentation suggests $ rather than € + + +## +## Excel Error Codes (For future use) +## +NULL = #¡NULO! +DIV0 = #¡DIV/0! +VALUE = #¡VALOR! +REF = #¡REF! +NAME = #¿NOMBRE? +NUM = #¡NÚM! +NA = #N/A diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/es/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/es/functions new file mode 100644 index 0000000..9d47f0e --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/es/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Funciones de complementos y automatización +## +GETPIVOTDATA = IMPORTARDATOSDINAMICOS ## Devuelve los datos almacenados en un informe de tabla dinámica. + + +## +## Cube functions Funciones de cubo +## +CUBEKPIMEMBER = MIEMBROKPICUBO ## Devuelve un nombre, propiedad y medida de indicador de rendimiento clave (KPI) y muestra el nombre y la propiedad en la celda. Un KPI es una medida cuantificable, como los beneficios brutos mensuales o la facturación trimestral por empleado, que se usa para supervisar el rendimiento de una organización. +CUBEMEMBER = MIEMBROCUBO ## Devuelve un miembro o tupla en una jerarquía de cubo. Se usa para validar la existencia del miembro o la tupla en el cubo. +CUBEMEMBERPROPERTY = PROPIEDADMIEMBROCUBO ## Devuelve el valor de una propiedad de miembro del cubo Se usa para validar la existencia de un nombre de miembro en el cubo y para devolver la propiedad especificada para este miembro. +CUBERANKEDMEMBER = MIEMBRORANGOCUBO ## Devuelve el miembro n, o clasificado, de un conjunto. Se usa para devolver uno o más elementos de un conjunto, por ejemplo, el representante con mejores ventas o los diez mejores alumnos. +CUBESET = CONJUNTOCUBO ## Define un conjunto calculado de miembros o tuplas mediante el envío de una expresión de conjunto al cubo en el servidor, lo que crea el conjunto y, después, devuelve dicho conjunto a Microsoft Office Excel. +CUBESETCOUNT = RECUENTOCONJUNTOCUBO ## Devuelve el número de elementos de un conjunto. +CUBEVALUE = VALORCUBO ## Devuelve un valor agregado de un cubo. + + +## +## Database functions Funciones de base de datos +## +DAVERAGE = BDPROMEDIO ## Devuelve el promedio de las entradas seleccionadas en la base de datos. +DCOUNT = BDCONTAR ## Cuenta el número de celdas que contienen números en una base de datos. +DCOUNTA = BDCONTARA ## Cuenta el número de celdas no vacías en una base de datos. +DGET = BDEXTRAER ## Extrae de una base de datos un único registro que cumple los criterios especificados. +DMAX = BDMAX ## Devuelve el valor máximo de las entradas seleccionadas de la base de datos. +DMIN = BDMIN ## Devuelve el valor mínimo de las entradas seleccionadas de la base de datos. +DPRODUCT = BDPRODUCTO ## Multiplica los valores de un campo concreto de registros de una base de datos que cumplen los criterios especificados. +DSTDEV = BDDESVEST ## Calcula la desviación estándar a partir de una muestra de entradas seleccionadas en la base de datos. +DSTDEVP = BDDESVESTP ## Calcula la desviación estándar en función de la población total de las entradas seleccionadas de la base de datos. +DSUM = BDSUMA ## Suma los números de la columna de campo de los registros de la base de datos que cumplen los criterios. +DVAR = BDVAR ## Calcula la varianza a partir de una muestra de entradas seleccionadas de la base de datos. +DVARP = BDVARP ## Calcula la varianza a partir de la población total de entradas seleccionadas de la base de datos. + + +## +## Date and time functions Funciones de fecha y hora +## +DATE = FECHA ## Devuelve el número de serie correspondiente a una fecha determinada. +DATEVALUE = FECHANUMERO ## Convierte una fecha con formato de texto en un valor de número de serie. +DAY = DIA ## Convierte un número de serie en un valor de día del mes. +DAYS360 = DIAS360 ## Calcula el número de días entre dos fechas a partir de un año de 360 días. +EDATE = FECHA.MES ## Devuelve el número de serie de la fecha equivalente al número indicado de meses anteriores o posteriores a la fecha inicial. +EOMONTH = FIN.MES ## Devuelve el número de serie correspondiente al último día del mes anterior o posterior a un número de meses especificado. +HOUR = HORA ## Convierte un número de serie en un valor de hora. +MINUTE = MINUTO ## Convierte un número de serie en un valor de minuto. +MONTH = MES ## Convierte un número de serie en un valor de mes. +NETWORKDAYS = DIAS.LAB ## Devuelve el número de todos los días laborables existentes entre dos fechas. +NOW = AHORA ## Devuelve el número de serie correspondiente a la fecha y hora actuales. +SECOND = SEGUNDO ## Convierte un número de serie en un valor de segundo. +TIME = HORA ## Devuelve el número de serie correspondiente a una hora determinada. +TIMEVALUE = HORANUMERO ## Convierte una hora con formato de texto en un valor de número de serie. +TODAY = HOY ## Devuelve el número de serie correspondiente al día actual. +WEEKDAY = DIASEM ## Convierte un número de serie en un valor de día de la semana. +WEEKNUM = NUM.DE.SEMANA ## Convierte un número de serie en un número que representa el lugar numérico correspondiente a una semana de un año. +WORKDAY = DIA.LAB ## Devuelve el número de serie de la fecha que tiene lugar antes o después de un número determinado de días laborables. +YEAR = AÑO ## Convierte un número de serie en un valor de año. +YEARFRAC = FRAC.AÑO ## Devuelve la fracción de año que representa el número total de días existentes entre el valor de fecha_inicial y el de fecha_final. + + +## +## Engineering functions Funciones de ingeniería +## +BESSELI = BESSELI ## Devuelve la función Bessel In(x) modificada. +BESSELJ = BESSELJ ## Devuelve la función Bessel Jn(x). +BESSELK = BESSELK ## Devuelve la función Bessel Kn(x) modificada. +BESSELY = BESSELY ## Devuelve la función Bessel Yn(x). +BIN2DEC = BIN.A.DEC ## Convierte un número binario en decimal. +BIN2HEX = BIN.A.HEX ## Convierte un número binario en hexadecimal. +BIN2OCT = BIN.A.OCT ## Convierte un número binario en octal. +COMPLEX = COMPLEJO ## Convierte coeficientes reales e imaginarios en un número complejo. +CONVERT = CONVERTIR ## Convierte un número de un sistema de medida a otro. +DEC2BIN = DEC.A.BIN ## Convierte un número decimal en binario. +DEC2HEX = DEC.A.HEX ## Convierte un número decimal en hexadecimal. +DEC2OCT = DEC.A.OCT ## Convierte un número decimal en octal. +DELTA = DELTA ## Comprueba si dos valores son iguales. +ERF = FUN.ERROR ## Devuelve la función de error. +ERFC = FUN.ERROR.COMPL ## Devuelve la función de error complementario. +GESTEP = MAYOR.O.IGUAL ## Comprueba si un número es mayor que un valor de umbral. +HEX2BIN = HEX.A.BIN ## Convierte un número hexadecimal en binario. +HEX2DEC = HEX.A.DEC ## Convierte un número hexadecimal en decimal. +HEX2OCT = HEX.A.OCT ## Convierte un número hexadecimal en octal. +IMABS = IM.ABS ## Devuelve el valor absoluto (módulo) de un número complejo. +IMAGINARY = IMAGINARIO ## Devuelve el coeficiente imaginario de un número complejo. +IMARGUMENT = IM.ANGULO ## Devuelve el argumento theta, un ángulo expresado en radianes. +IMCONJUGATE = IM.CONJUGADA ## Devuelve la conjugada compleja de un número complejo. +IMCOS = IM.COS ## Devuelve el coseno de un número complejo. +IMDIV = IM.DIV ## Devuelve el cociente de dos números complejos. +IMEXP = IM.EXP ## Devuelve el valor exponencial de un número complejo. +IMLN = IM.LN ## Devuelve el logaritmo natural (neperiano) de un número complejo. +IMLOG10 = IM.LOG10 ## Devuelve el logaritmo en base 10 de un número complejo. +IMLOG2 = IM.LOG2 ## Devuelve el logaritmo en base 2 de un número complejo. +IMPOWER = IM.POT ## Devuelve un número complejo elevado a una potencia entera. +IMPRODUCT = IM.PRODUCT ## Devuelve el producto de números complejos. +IMREAL = IM.REAL ## Devuelve el coeficiente real de un número complejo. +IMSIN = IM.SENO ## Devuelve el seno de un número complejo. +IMSQRT = IM.RAIZ2 ## Devuelve la raíz cuadrada de un número complejo. +IMSUB = IM.SUSTR ## Devuelve la diferencia entre dos números complejos. +IMSUM = IM.SUM ## Devuelve la suma de números complejos. +OCT2BIN = OCT.A.BIN ## Convierte un número octal en binario. +OCT2DEC = OCT.A.DEC ## Convierte un número octal en decimal. +OCT2HEX = OCT.A.HEX ## Convierte un número octal en hexadecimal. + + +## +## Financial functions Funciones financieras +## +ACCRINT = INT.ACUM ## Devuelve el interés acumulado de un valor bursátil con pagos de interés periódicos. +ACCRINTM = INT.ACUM.V ## Devuelve el interés acumulado de un valor bursátil con pagos de interés al vencimiento. +AMORDEGRC = AMORTIZ.PROGRE ## Devuelve la amortización de cada período contable mediante el uso de un coeficiente de amortización. +AMORLINC = AMORTIZ.LIN ## Devuelve la amortización de cada uno de los períodos contables. +COUPDAYBS = CUPON.DIAS.L1 ## Devuelve el número de días desde el principio del período de un cupón hasta la fecha de liquidación. +COUPDAYS = CUPON.DIAS ## Devuelve el número de días del período (entre dos cupones) donde se encuentra la fecha de liquidación. +COUPDAYSNC = CUPON.DIAS.L2 ## Devuelve el número de días desde la fecha de liquidación hasta la fecha del próximo cupón. +COUPNCD = CUPON.FECHA.L2 ## Devuelve la fecha del próximo cupón después de la fecha de liquidación. +COUPNUM = CUPON.NUM ## Devuelve el número de pagos de cupón entre la fecha de liquidación y la fecha de vencimiento. +COUPPCD = CUPON.FECHA.L1 ## Devuelve la fecha de cupón anterior a la fecha de liquidación. +CUMIPMT = PAGO.INT.ENTRE ## Devuelve el interés acumulado pagado entre dos períodos. +CUMPRINC = PAGO.PRINC.ENTRE ## Devuelve el capital acumulado pagado de un préstamo entre dos períodos. +DB = DB ## Devuelve la amortización de un bien durante un período específico a través del método de amortización de saldo fijo. +DDB = DDB ## Devuelve la amortización de un bien durante un período específico a través del método de amortización por doble disminución de saldo u otro método que se especifique. +DISC = TASA.DESC ## Devuelve la tasa de descuento de un valor bursátil. +DOLLARDE = MONEDA.DEC ## Convierte una cotización de un valor bursátil expresada en forma fraccionaria en una cotización de un valor bursátil expresada en forma decimal. +DOLLARFR = MONEDA.FRAC ## Convierte una cotización de un valor bursátil expresada en forma decimal en una cotización de un valor bursátil expresada en forma fraccionaria. +DURATION = DURACION ## Devuelve la duración anual de un valor bursátil con pagos de interés periódico. +EFFECT = INT.EFECTIVO ## Devuelve la tasa de interés anual efectiva. +FV = VF ## Devuelve el valor futuro de una inversión. +FVSCHEDULE = VF.PLAN ## Devuelve el valor futuro de un capital inicial después de aplicar una serie de tasas de interés compuesto. +INTRATE = TASA.INT ## Devuelve la tasa de interés para la inversión total de un valor bursátil. +IPMT = PAGOINT ## Devuelve el pago de intereses de una inversión durante un período determinado. +IRR = TIR ## Devuelve la tasa interna de retorno para una serie de flujos de efectivo periódicos. +ISPMT = INT.PAGO.DIR ## Calcula el interés pagado durante un período específico de una inversión. +MDURATION = DURACION.MODIF ## Devuelve la duración de Macauley modificada de un valor bursátil con un valor nominal supuesto de 100 $. +MIRR = TIRM ## Devuelve la tasa interna de retorno donde se financian flujos de efectivo positivos y negativos a tasas diferentes. +NOMINAL = TASA.NOMINAL ## Devuelve la tasa nominal de interés anual. +NPER = NPER ## Devuelve el número de períodos de una inversión. +NPV = VNA ## Devuelve el valor neto actual de una inversión en función de una serie de flujos periódicos de efectivo y una tasa de descuento. +ODDFPRICE = PRECIO.PER.IRREGULAR.1 ## Devuelve el precio por un valor nominal de 100 $ de un valor bursátil con un primer período impar. +ODDFYIELD = RENDTO.PER.IRREGULAR.1 ## Devuelve el rendimiento de un valor bursátil con un primer período impar. +ODDLPRICE = PRECIO.PER.IRREGULAR.2 ## Devuelve el precio por un valor nominal de 100 $ de un valor bursátil con un último período impar. +ODDLYIELD = RENDTO.PER.IRREGULAR.2 ## Devuelve el rendimiento de un valor bursátil con un último período impar. +PMT = PAGO ## Devuelve el pago periódico de una anualidad. +PPMT = PAGOPRIN ## Devuelve el pago de capital de una inversión durante un período determinado. +PRICE = PRECIO ## Devuelve el precio por un valor nominal de 100 $ de un valor bursátil que paga una tasa de interés periódico. +PRICEDISC = PRECIO.DESCUENTO ## Devuelve el precio por un valor nominal de 100 $ de un valor bursátil con descuento. +PRICEMAT = PRECIO.VENCIMIENTO ## Devuelve el precio por un valor nominal de 100 $ de un valor bursátil que paga interés a su vencimiento. +PV = VALACT ## Devuelve el valor actual de una inversión. +RATE = TASA ## Devuelve la tasa de interés por período de una anualidad. +RECEIVED = CANTIDAD.RECIBIDA ## Devuelve la cantidad recibida al vencimiento de un valor bursátil completamente invertido. +SLN = SLN ## Devuelve la amortización por método directo de un bien en un período dado. +SYD = SYD ## Devuelve la amortización por suma de dígitos de los años de un bien durante un período especificado. +TBILLEQ = LETRA.DE.TES.EQV.A.BONO ## Devuelve el rendimiento de un bono equivalente a una letra del Tesoro (de EE.UU.) +TBILLPRICE = LETRA.DE.TES.PRECIO ## Devuelve el precio por un valor nominal de 100 $ de una letra del Tesoro (de EE.UU.) +TBILLYIELD = LETRA.DE.TES.RENDTO ## Devuelve el rendimiento de una letra del Tesoro (de EE.UU.) +VDB = DVS ## Devuelve la amortización de un bien durante un período específico o parcial a través del método de cálculo del saldo en disminución. +XIRR = TIR.NO.PER ## Devuelve la tasa interna de retorno para un flujo de efectivo que no es necesariamente periódico. +XNPV = VNA.NO.PER ## Devuelve el valor neto actual para un flujo de efectivo que no es necesariamente periódico. +YIELD = RENDTO ## Devuelve el rendimiento de un valor bursátil que paga intereses periódicos. +YIELDDISC = RENDTO.DESC ## Devuelve el rendimiento anual de un valor bursátil con descuento; por ejemplo, una letra del Tesoro (de EE.UU.) +YIELDMAT = RENDTO.VENCTO ## Devuelve el rendimiento anual de un valor bursátil que paga intereses al vencimiento. + + +## +## Information functions Funciones de información +## +CELL = CELDA ## Devuelve información acerca del formato, la ubicación o el contenido de una celda. +ERROR.TYPE = TIPO.DE.ERROR ## Devuelve un número que corresponde a un tipo de error. +INFO = INFO ## Devuelve información acerca del entorno operativo en uso. +ISBLANK = ESBLANCO ## Devuelve VERDADERO si el valor está en blanco. +ISERR = ESERR ## Devuelve VERDADERO si el valor es cualquier valor de error excepto #N/A. +ISERROR = ESERROR ## Devuelve VERDADERO si el valor es cualquier valor de error. +ISEVEN = ES.PAR ## Devuelve VERDADERO si el número es par. +ISLOGICAL = ESLOGICO ## Devuelve VERDADERO si el valor es un valor lógico. +ISNA = ESNOD ## Devuelve VERDADERO si el valor es el valor de error #N/A. +ISNONTEXT = ESNOTEXTO ## Devuelve VERDADERO si el valor no es texto. +ISNUMBER = ESNUMERO ## Devuelve VERDADERO si el valor es un número. +ISODD = ES.IMPAR ## Devuelve VERDADERO si el número es impar. +ISREF = ESREF ## Devuelve VERDADERO si el valor es una referencia. +ISTEXT = ESTEXTO ## Devuelve VERDADERO si el valor es texto. +N = N ## Devuelve un valor convertido en un número. +NA = ND ## Devuelve el valor de error #N/A. +TYPE = TIPO ## Devuelve un número que indica el tipo de datos de un valor. + + +## +## Logical functions Funciones lógicas +## +AND = Y ## Devuelve VERDADERO si todos sus argumentos son VERDADERO. +FALSE = FALSO ## Devuelve el valor lógico FALSO. +IF = SI ## Especifica una prueba lógica que realizar. +IFERROR = SI.ERROR ## Devuelve un valor que se especifica si una fórmula lo evalúa como un error; de lo contrario, devuelve el resultado de la fórmula. +NOT = NO ## Invierte el valor lógico del argumento. +OR = O ## Devuelve VERDADERO si cualquier argumento es VERDADERO. +TRUE = VERDADERO ## Devuelve el valor lógico VERDADERO. + + +## +## Lookup and reference functions Funciones de búsqueda y referencia +## +ADDRESS = DIRECCION ## Devuelve una referencia como texto a una sola celda de una hoja de cálculo. +AREAS = AREAS ## Devuelve el número de áreas de una referencia. +CHOOSE = ELEGIR ## Elige un valor de una lista de valores. +COLUMN = COLUMNA ## Devuelve el número de columna de una referencia. +COLUMNS = COLUMNAS ## Devuelve el número de columnas de una referencia. +HLOOKUP = BUSCARH ## Busca en la fila superior de una matriz y devuelve el valor de la celda indicada. +HYPERLINK = HIPERVINCULO ## Crea un acceso directo o un salto que abre un documento almacenado en un servidor de red, en una intranet o en Internet. +INDEX = INDICE ## Usa un índice para elegir un valor de una referencia o matriz. +INDIRECT = INDIRECTO ## Devuelve una referencia indicada por un valor de texto. +LOOKUP = BUSCAR ## Busca valores de un vector o una matriz. +MATCH = COINCIDIR ## Busca valores de una referencia o matriz. +OFFSET = DESREF ## Devuelve un desplazamiento de referencia respecto a una referencia dada. +ROW = FILA ## Devuelve el número de fila de una referencia. +ROWS = FILAS ## Devuelve el número de filas de una referencia. +RTD = RDTR ## Recupera datos en tiempo real desde un programa compatible con la automatización COM (automatización: modo de trabajar con los objetos de una aplicación desde otra aplicación o herramienta de entorno. La automatización, antes denominada automatización OLE, es un estándar de la industria y una función del Modelo de objetos componentes (COM).). +TRANSPOSE = TRANSPONER ## Devuelve la transposición de una matriz. +VLOOKUP = BUSCARV ## Busca en la primera columna de una matriz y se mueve en horizontal por la fila para devolver el valor de una celda. + + +## +## Math and trigonometry functions Funciones matemáticas y trigonométricas +## +ABS = ABS ## Devuelve el valor absoluto de un número. +ACOS = ACOS ## Devuelve el arcocoseno de un número. +ACOSH = ACOSH ## Devuelve el coseno hiperbólico inverso de un número. +ASIN = ASENO ## Devuelve el arcoseno de un número. +ASINH = ASENOH ## Devuelve el seno hiperbólico inverso de un número. +ATAN = ATAN ## Devuelve la arcotangente de un número. +ATAN2 = ATAN2 ## Devuelve la arcotangente de las coordenadas "x" e "y". +ATANH = ATANH ## Devuelve la tangente hiperbólica inversa de un número. +CEILING = MULTIPLO.SUPERIOR ## Redondea un número al entero más próximo o al múltiplo significativo más cercano. +COMBIN = COMBINAT ## Devuelve el número de combinaciones para un número determinado de objetos. +COS = COS ## Devuelve el coseno de un número. +COSH = COSH ## Devuelve el coseno hiperbólico de un número. +DEGREES = GRADOS ## Convierte radianes en grados. +EVEN = REDONDEA.PAR ## Redondea un número hasta el entero par más próximo. +EXP = EXP ## Devuelve e elevado a la potencia de un número dado. +FACT = FACT ## Devuelve el factorial de un número. +FACTDOUBLE = FACT.DOBLE ## Devuelve el factorial doble de un número. +FLOOR = MULTIPLO.INFERIOR ## Redondea un número hacia abajo, en dirección hacia cero. +GCD = M.C.D ## Devuelve el máximo común divisor. +INT = ENTERO ## Redondea un número hacia abajo hasta el entero más próximo. +LCM = M.C.M ## Devuelve el mínimo común múltiplo. +LN = LN ## Devuelve el logaritmo natural (neperiano) de un número. +LOG = LOG ## Devuelve el logaritmo de un número en una base especificada. +LOG10 = LOG10 ## Devuelve el logaritmo en base 10 de un número. +MDETERM = MDETERM ## Devuelve la determinante matricial de una matriz. +MINVERSE = MINVERSA ## Devuelve la matriz inversa de una matriz. +MMULT = MMULT ## Devuelve el producto de matriz de dos matrices. +MOD = RESIDUO ## Devuelve el resto de la división. +MROUND = REDOND.MULT ## Devuelve un número redondeado al múltiplo deseado. +MULTINOMIAL = MULTINOMIAL ## Devuelve el polinomio de un conjunto de números. +ODD = REDONDEA.IMPAR ## Redondea un número hacia arriba hasta el entero impar más próximo. +PI = PI ## Devuelve el valor de pi. +POWER = POTENCIA ## Devuelve el resultado de elevar un número a una potencia. +PRODUCT = PRODUCTO ## Multiplica sus argumentos. +QUOTIENT = COCIENTE ## Devuelve la parte entera de una división. +RADIANS = RADIANES ## Convierte grados en radianes. +RAND = ALEATORIO ## Devuelve un número aleatorio entre 0 y 1. +RANDBETWEEN = ALEATORIO.ENTRE ## Devuelve un número aleatorio entre los números que especifique. +ROMAN = NUMERO.ROMANO ## Convierte un número arábigo en número romano, con formato de texto. +ROUND = REDONDEAR ## Redondea un número al número de decimales especificado. +ROUNDDOWN = REDONDEAR.MENOS ## Redondea un número hacia abajo, en dirección hacia cero. +ROUNDUP = REDONDEAR.MAS ## Redondea un número hacia arriba, en dirección contraria a cero. +SERIESSUM = SUMA.SERIES ## Devuelve la suma de una serie de potencias en función de la fórmula. +SIGN = SIGNO ## Devuelve el signo de un número. +SIN = SENO ## Devuelve el seno de un ángulo determinado. +SINH = SENOH ## Devuelve el seno hiperbólico de un número. +SQRT = RAIZ ## Devuelve la raíz cuadrada positiva de un número. +SQRTPI = RAIZ2PI ## Devuelve la raíz cuadrada de un número multiplicado por PI (número * pi). +SUBTOTAL = SUBTOTALES ## Devuelve un subtotal en una lista o base de datos. +SUM = SUMA ## Suma sus argumentos. +SUMIF = SUMAR.SI ## Suma las celdas especificadas que cumplen unos criterios determinados. +SUMIFS = SUMAR.SI.CONJUNTO ## Suma las celdas de un rango que cumplen varios criterios. +SUMPRODUCT = SUMAPRODUCTO ## Devuelve la suma de los productos de los correspondientes componentes de matriz. +SUMSQ = SUMA.CUADRADOS ## Devuelve la suma de los cuadrados de los argumentos. +SUMX2MY2 = SUMAX2MENOSY2 ## Devuelve la suma de la diferencia de los cuadrados de los valores correspondientes de dos matrices. +SUMX2PY2 = SUMAX2MASY2 ## Devuelve la suma de la suma de los cuadrados de los valores correspondientes de dos matrices. +SUMXMY2 = SUMAXMENOSY2 ## Devuelve la suma de los cuadrados de las diferencias de los valores correspondientes de dos matrices. +TAN = TAN ## Devuelve la tangente de un número. +TANH = TANH ## Devuelve la tangente hiperbólica de un número. +TRUNC = TRUNCAR ## Trunca un número a un entero. + + +## +## Statistical functions Funciones estadísticas +## +AVEDEV = DESVPROM ## Devuelve el promedio de las desviaciones absolutas de la media de los puntos de datos. +AVERAGE = PROMEDIO ## Devuelve el promedio de sus argumentos. +AVERAGEA = PROMEDIOA ## Devuelve el promedio de sus argumentos, incluidos números, texto y valores lógicos. +AVERAGEIF = PROMEDIO.SI ## Devuelve el promedio (media aritmética) de todas las celdas de un rango que cumplen unos criterios determinados. +AVERAGEIFS = PROMEDIO.SI.CONJUNTO ## Devuelve el promedio (media aritmética) de todas las celdas que cumplen múltiples criterios. +BETADIST = DISTR.BETA ## Devuelve la función de distribución beta acumulativa. +BETAINV = DISTR.BETA.INV ## Devuelve la función inversa de la función de distribución acumulativa de una distribución beta especificada. +BINOMDIST = DISTR.BINOM ## Devuelve la probabilidad de una variable aleatoria discreta siguiendo una distribución binomial. +CHIDIST = DISTR.CHI ## Devuelve la probabilidad de una variable aleatoria continua siguiendo una distribución chi cuadrado de una sola cola. +CHIINV = PRUEBA.CHI.INV ## Devuelve la función inversa de la probabilidad de una variable aleatoria continua siguiendo una distribución chi cuadrado de una sola cola. +CHITEST = PRUEBA.CHI ## Devuelve la prueba de independencia. +CONFIDENCE = INTERVALO.CONFIANZA ## Devuelve el intervalo de confianza de la media de una población. +CORREL = COEF.DE.CORREL ## Devuelve el coeficiente de correlación entre dos conjuntos de datos. +COUNT = CONTAR ## Cuenta cuántos números hay en la lista de argumentos. +COUNTA = CONTARA ## Cuenta cuántos valores hay en la lista de argumentos. +COUNTBLANK = CONTAR.BLANCO ## Cuenta el número de celdas en blanco de un rango. +COUNTIF = CONTAR.SI ## Cuenta el número de celdas, dentro del rango, que cumplen el criterio especificado. +COUNTIFS = CONTAR.SI.CONJUNTO ## Cuenta el número de celdas, dentro del rango, que cumplen varios criterios. +COVAR = COVAR ## Devuelve la covarianza, que es el promedio de los productos de las desviaciones para cada pareja de puntos de datos. +CRITBINOM = BINOM.CRIT ## Devuelve el menor valor cuya distribución binomial acumulativa es menor o igual a un valor de criterio. +DEVSQ = DESVIA2 ## Devuelve la suma de los cuadrados de las desviaciones. +EXPONDIST = DISTR.EXP ## Devuelve la distribución exponencial. +FDIST = DISTR.F ## Devuelve la distribución de probabilidad F. +FINV = DISTR.F.INV ## Devuelve la función inversa de la distribución de probabilidad F. +FISHER = FISHER ## Devuelve la transformación Fisher. +FISHERINV = PRUEBA.FISHER.INV ## Devuelve la función inversa de la transformación Fisher. +FORECAST = PRONOSTICO ## Devuelve un valor en una tendencia lineal. +FREQUENCY = FRECUENCIA ## Devuelve una distribución de frecuencia como una matriz vertical. +FTEST = PRUEBA.F ## Devuelve el resultado de una prueba F. +GAMMADIST = DISTR.GAMMA ## Devuelve la distribución gamma. +GAMMAINV = DISTR.GAMMA.INV ## Devuelve la función inversa de la distribución gamma acumulativa. +GAMMALN = GAMMA.LN ## Devuelve el logaritmo natural de la función gamma, G(x). +GEOMEAN = MEDIA.GEOM ## Devuelve la media geométrica. +GROWTH = CRECIMIENTO ## Devuelve valores en una tendencia exponencial. +HARMEAN = MEDIA.ARMO ## Devuelve la media armónica. +HYPGEOMDIST = DISTR.HIPERGEOM ## Devuelve la distribución hipergeométrica. +INTERCEPT = INTERSECCION.EJE ## Devuelve la intersección de la línea de regresión lineal. +KURT = CURTOSIS ## Devuelve la curtosis de un conjunto de datos. +LARGE = K.ESIMO.MAYOR ## Devuelve el k-ésimo mayor valor de un conjunto de datos. +LINEST = ESTIMACION.LINEAL ## Devuelve los parámetros de una tendencia lineal. +LOGEST = ESTIMACION.LOGARITMICA ## Devuelve los parámetros de una tendencia exponencial. +LOGINV = DISTR.LOG.INV ## Devuelve la función inversa de la distribución logarítmico-normal. +LOGNORMDIST = DISTR.LOG.NORM ## Devuelve la distribución logarítmico-normal acumulativa. +MAX = MAX ## Devuelve el valor máximo de una lista de argumentos. +MAXA = MAXA ## Devuelve el valor máximo de una lista de argumentos, incluidos números, texto y valores lógicos. +MEDIAN = MEDIANA ## Devuelve la mediana de los números dados. +MIN = MIN ## Devuelve el valor mínimo de una lista de argumentos. +MINA = MINA ## Devuelve el valor mínimo de una lista de argumentos, incluidos números, texto y valores lógicos. +MODE = MODA ## Devuelve el valor más común de un conjunto de datos. +NEGBINOMDIST = NEGBINOMDIST ## Devuelve la distribución binomial negativa. +NORMDIST = DISTR.NORM ## Devuelve la distribución normal acumulativa. +NORMINV = DISTR.NORM.INV ## Devuelve la función inversa de la distribución normal acumulativa. +NORMSDIST = DISTR.NORM.ESTAND ## Devuelve la distribución normal estándar acumulativa. +NORMSINV = DISTR.NORM.ESTAND.INV ## Devuelve la función inversa de la distribución normal estándar acumulativa. +PEARSON = PEARSON ## Devuelve el coeficiente de momento de correlación de producto Pearson. +PERCENTILE = PERCENTIL ## Devuelve el k-ésimo percentil de los valores de un rango. +PERCENTRANK = RANGO.PERCENTIL ## Devuelve el rango porcentual de un valor de un conjunto de datos. +PERMUT = PERMUTACIONES ## Devuelve el número de permutaciones de un número determinado de objetos. +POISSON = POISSON ## Devuelve la distribución de Poisson. +PROB = PROBABILIDAD ## Devuelve la probabilidad de que los valores de un rango se encuentren entre dos límites. +QUARTILE = CUARTIL ## Devuelve el cuartil de un conjunto de datos. +RANK = JERARQUIA ## Devuelve la jerarquía de un número en una lista de números. +RSQ = COEFICIENTE.R2 ## Devuelve el cuadrado del coeficiente de momento de correlación de producto Pearson. +SKEW = COEFICIENTE.ASIMETRIA ## Devuelve la asimetría de una distribución. +SLOPE = PENDIENTE ## Devuelve la pendiente de la línea de regresión lineal. +SMALL = K.ESIMO.MENOR ## Devuelve el k-ésimo menor valor de un conjunto de datos. +STANDARDIZE = NORMALIZACION ## Devuelve un valor normalizado. +STDEV = DESVEST ## Calcula la desviación estándar a partir de una muestra. +STDEVA = DESVESTA ## Calcula la desviación estándar a partir de una muestra, incluidos números, texto y valores lógicos. +STDEVP = DESVESTP ## Calcula la desviación estándar en función de toda la población. +STDEVPA = DESVESTPA ## Calcula la desviación estándar en función de toda la población, incluidos números, texto y valores lógicos. +STEYX = ERROR.TIPICO.XY ## Devuelve el error estándar del valor de "y" previsto para cada "x" de la regresión. +TDIST = DISTR.T ## Devuelve la distribución de t de Student. +TINV = DISTR.T.INV ## Devuelve la función inversa de la distribución de t de Student. +TREND = TENDENCIA ## Devuelve valores en una tendencia lineal. +TRIMMEAN = MEDIA.ACOTADA ## Devuelve la media del interior de un conjunto de datos. +TTEST = PRUEBA.T ## Devuelve la probabilidad asociada a una prueba t de Student. +VAR = VAR ## Calcula la varianza en función de una muestra. +VARA = VARA ## Calcula la varianza en función de una muestra, incluidos números, texto y valores lógicos. +VARP = VARP ## Calcula la varianza en función de toda la población. +VARPA = VARPA ## Calcula la varianza en función de toda la población, incluidos números, texto y valores lógicos. +WEIBULL = DIST.WEIBULL ## Devuelve la distribución de Weibull. +ZTEST = PRUEBA.Z ## Devuelve el valor de una probabilidad de una cola de una prueba z. + + +## +## Text functions Funciones de texto +## +ASC = ASC ## Convierte las letras inglesas o katakana de ancho completo (de dos bytes) dentro de una cadena de caracteres en caracteres de ancho medio (de un byte). +BAHTTEXT = TEXTOBAHT ## Convierte un número en texto, con el formato de moneda ß (Baht). +CHAR = CARACTER ## Devuelve el carácter especificado por el número de código. +CLEAN = LIMPIAR ## Quita del texto todos los caracteres no imprimibles. +CODE = CODIGO ## Devuelve un código numérico del primer carácter de una cadena de texto. +CONCATENATE = CONCATENAR ## Concatena varios elementos de texto en uno solo. +DOLLAR = MONEDA ## Convierte un número en texto, con el formato de moneda $ (dólar). +EXACT = IGUAL ## Comprueba si dos valores de texto son idénticos. +FIND = ENCONTRAR ## Busca un valor de texto dentro de otro (distingue mayúsculas de minúsculas). +FINDB = ENCONTRARB ## Busca un valor de texto dentro de otro (distingue mayúsculas de minúsculas). +FIXED = DECIMAL ## Da formato a un número como texto con un número fijo de decimales. +JIS = JIS ## Convierte las letras inglesas o katakana de ancho medio (de un byte) dentro de una cadena de caracteres en caracteres de ancho completo (de dos bytes). +LEFT = IZQUIERDA ## Devuelve los caracteres del lado izquierdo de un valor de texto. +LEFTB = IZQUIERDAB ## Devuelve los caracteres del lado izquierdo de un valor de texto. +LEN = LARGO ## Devuelve el número de caracteres de una cadena de texto. +LENB = LARGOB ## Devuelve el número de caracteres de una cadena de texto. +LOWER = MINUSC ## Pone el texto en minúsculas. +MID = EXTRAE ## Devuelve un número específico de caracteres de una cadena de texto que comienza en la posición que se especifique. +MIDB = EXTRAEB ## Devuelve un número específico de caracteres de una cadena de texto que comienza en la posición que se especifique. +PHONETIC = FONETICO ## Extrae los caracteres fonéticos (furigana) de una cadena de texto. +PROPER = NOMPROPIO ## Pone en mayúscula la primera letra de cada palabra de un valor de texto. +REPLACE = REEMPLAZAR ## Reemplaza caracteres de texto. +REPLACEB = REEMPLAZARB ## Reemplaza caracteres de texto. +REPT = REPETIR ## Repite el texto un número determinado de veces. +RIGHT = DERECHA ## Devuelve los caracteres del lado derecho de un valor de texto. +RIGHTB = DERECHAB ## Devuelve los caracteres del lado derecho de un valor de texto. +SEARCH = HALLAR ## Busca un valor de texto dentro de otro (no distingue mayúsculas de minúsculas). +SEARCHB = HALLARB ## Busca un valor de texto dentro de otro (no distingue mayúsculas de minúsculas). +SUBSTITUTE = SUSTITUIR ## Sustituye texto nuevo por texto antiguo en una cadena de texto. +T = T ## Convierte sus argumentos a texto. +TEXT = TEXTO ## Da formato a un número y lo convierte en texto. +TRIM = ESPACIOS ## Quita los espacios del texto. +UPPER = MAYUSC ## Pone el texto en mayúsculas. +VALUE = VALOR ## Convierte un argumento de texto en un número. diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/fi/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/fi/_notes/dwsync.xml new file mode 100644 index 0000000..78f0c74 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/fi/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851509999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851509999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559970397412" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559970957776" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752271484194" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752271834748" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461241881691" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461242719072" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752271484194" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752271834748" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/fi/config b/site/config/PHPExcel/Classes/PHPExcel/locale/fi/config new file mode 100644 index 0000000..ba274e1 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/fi/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = $ # Symbol not known, should it be a € (Euro)? + + +## +## Excel Error Codes (For future use) +## +NULL = #TYHJÄ! +DIV0 = #JAKO/0! +VALUE = #ARVO! +REF = #VIITTAUS! +NAME = #NIMI? +NUM = #LUKU! +NA = #PUUTTUU diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/fi/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/fi/functions new file mode 100644 index 0000000..25e08ea --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/fi/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Apuohjelma- ja automaatiofunktiot +## +GETPIVOTDATA = NOUDA.PIVOT.TIEDOT ## Palauttaa pivot-taulukkoraporttiin tallennettuja tietoja. + + +## +## Cube functions Kuutiofunktiot +## +CUBEKPIMEMBER = KUUTIOKPIJÄSEN ## Palauttaa suorituskykyilmaisimen (KPI) nimen, ominaisuuden sekä mitan ja näyttää nimen sekä ominaisuuden solussa. KPI on mitattavissa oleva suure, kuten kuukauden bruttotuotto tai vuosineljänneksen työntekijäkohtainen liikevaihto, joiden avulla tarkkaillaan organisaation suorituskykyä. +CUBEMEMBER = KUUTIONJÄSEN ## Palauttaa kuutiohierarkian jäsenen tai monikon. Tällä funktiolla voit tarkistaa, että jäsen tai monikko on olemassa kuutiossa. +CUBEMEMBERPROPERTY = KUUTIONJÄSENENOMINAISUUS ## Palauttaa kuution jäsenominaisuuden arvon. Tällä funktiolla voit tarkistaa, että nimi on olemassa kuutiossa, ja palauttaa tämän jäsenen määritetyn ominaisuuden. +CUBERANKEDMEMBER = KUUTIONLUOKITELTUJÄSEN ## Palauttaa joukon n:nnen jäsenen. Tällä funktiolla voit palauttaa joukosta elementtejä, kuten parhaan myyjän tai 10 parasta opiskelijaa. +CUBESET = KUUTIOJOUKKO ## Määrittää lasketun jäsen- tai monikkojoukon lähettämällä joukon lausekkeita palvelimessa olevalle kuutiolle. Palvelin luo joukon ja palauttaa sen Microsoft Office Excelille. +CUBESETCOUNT = KUUTIOJOUKKOJENMÄÄRÄ ## Palauttaa joukon kohteiden määrän. +CUBEVALUE = KUUTIONARVO ## Palauttaa koostetun arvon kuutiosta. + + +## +## Database functions Tietokantafunktiot +## +DAVERAGE = TKESKIARVO ## Palauttaa valittujen tietokantamerkintöjen keskiarvon. +DCOUNT = TLASKE ## Laskee tietokannan lukuja sisältävien solujen määrän. +DCOUNTA = TLASKEA ## Laskee tietokannan tietoja sisältävien solujen määrän. +DGET = TNOUDA ## Hakee määritettyjä ehtoja vastaavan tietueen tietokannasta. +DMAX = TMAKS ## Palauttaa suurimman arvon tietokannasta valittujen arvojen joukosta. +DMIN = TMIN ## Palauttaa pienimmän arvon tietokannasta valittujen arvojen joukosta. +DPRODUCT = TTULO ## Kertoo määritetyn ehdon täyttävien tietokannan tietueiden tietyssä kentässä olevat arvot. +DSTDEV = TKESKIHAJONTA ## Laskee keskihajonnan tietokannasta valituista arvoista muodostuvan otoksen perusteella. +DSTDEVP = TKESKIHAJONTAP ## Laskee keskihajonnan tietokannasta valittujen arvojen koko populaation perusteella. +DSUM = TSUMMA ## Lisää luvut määritetyn ehdon täyttävien tietokannan tietueiden kenttäsarakkeeseen. +DVAR = TVARIANSSI ## Laskee varianssin tietokannasta valittujen arvojen otoksen perusteella. +DVARP = TVARIANSSIP ## Laskee varianssin tietokannasta valittujen arvojen koko populaation perusteella. + + +## +## Date and time functions Päivämäärä- ja aikafunktiot +## +DATE = PÄIVÄYS ## Palauttaa annetun päivämäärän järjestysluvun. +DATEVALUE = PÄIVÄYSARVO ## Muuntaa tekstimuodossa olevan päivämäärän järjestysluvuksi. +DAY = PÄIVÄ ## Muuntaa järjestysluvun kuukauden päiväksi. +DAYS360 = PÄIVÄT360 ## Laskee kahden päivämäärän välisten päivien määrän käyttäen perustana 360-päiväistä vuotta. +EDATE = PÄIVÄ.KUUKAUSI ## Palauttaa järjestyslukuna päivämäärän, joka poikkeaa aloituspäivän päivämäärästä annetun kuukausimäärän verran joko eteen- tai taaksepäin. +EOMONTH = KUUKAUSI.LOPPU ## Palauttaa järjestyslukuna sen kuukauden viimeisen päivämäärän, joka poikkeaa annetun kuukausimäärän verran eteen- tai taaksepäin. +HOUR = TUNNIT ## Muuntaa järjestysluvun tunneiksi. +MINUTE = MINUUTIT ## Muuntaa järjestysluvun minuuteiksi. +MONTH = KUUKAUSI ## Muuntaa järjestysluvun kuukausiksi. +NETWORKDAYS = TYÖPÄIVÄT ## Palauttaa kahden päivämäärän välissä olevien täysien työpäivien määrän. +NOW = NYT ## Palauttaa kuluvan päivämäärän ja ajan järjestysnumeron. +SECOND = SEKUNNIT ## Muuntaa järjestysluvun sekunneiksi. +TIME = AIKA ## Palauttaa annetun kellonajan järjestysluvun. +TIMEVALUE = AIKA_ARVO ## Muuntaa tekstimuodossa olevan kellonajan järjestysluvuksi. +TODAY = TÄMÄ.PÄIVÄ ## Palauttaa kuluvan päivän päivämäärän järjestysluvun. +WEEKDAY = VIIKONPÄIVÄ ## Muuntaa järjestysluvun viikonpäiväksi. +WEEKNUM = VIIKKO.NRO ## Muuntaa järjestysluvun luvuksi, joka ilmaisee viikon järjestysluvun vuoden alusta laskettuna. +WORKDAY = TYÖPÄIVÄ ## Palauttaa järjestysluvun päivämäärälle, joka sijaitsee annettujen työpäivien verran eteen tai taaksepäin. +YEAR = VUOSI ## Muuntaa järjestysluvun vuosiksi. +YEARFRAC = VUOSI.OSA ## Palauttaa määritettyjen päivämäärien (aloituspäivä ja lopetuspäivä) välisen osan vuodesta. + + +## +## Engineering functions Tekniset funktiot +## +BESSELI = BESSELI ## Palauttaa muunnetun Bessel-funktion In(x). +BESSELJ = BESSELJ ## Palauttaa Bessel-funktion Jn(x). +BESSELK = BESSELK ## Palauttaa muunnetun Bessel-funktion Kn(x). +BESSELY = BESSELY ## Palauttaa Bessel-funktion Yn(x). +BIN2DEC = BINDES ## Muuntaa binaariluvun desimaaliluvuksi. +BIN2HEX = BINHEKSA ## Muuntaa binaariluvun heksadesimaaliluvuksi. +BIN2OCT = BINOKT ## Muuntaa binaariluvun oktaaliluvuksi. +COMPLEX = KOMPLEKSI ## Muuntaa reaali- ja imaginaariosien kertoimet kompleksiluvuksi. +CONVERT = MUUNNA ## Muuntaa luvun toisen mittajärjestelmän mukaiseksi. +DEC2BIN = DESBIN ## Muuntaa desimaaliluvun binaariluvuksi. +DEC2HEX = DESHEKSA ## Muuntaa kymmenjärjestelmän luvun heksadesimaaliluvuksi. +DEC2OCT = DESOKT ## Muuntaa kymmenjärjestelmän luvun oktaaliluvuksi. +DELTA = SAMA.ARVO ## Tarkistaa, ovatko kaksi arvoa yhtä suuria. +ERF = VIRHEFUNKTIO ## Palauttaa virhefunktion. +ERFC = VIRHEFUNKTIO.KOMPLEMENTTI ## Palauttaa komplementtivirhefunktion. +GESTEP = RAJA ## Testaa, onko luku suurempi kuin kynnysarvo. +HEX2BIN = HEKSABIN ## Muuntaa heksadesimaaliluvun binaariluvuksi. +HEX2DEC = HEKSADES ## Muuntaa heksadesimaaliluvun desimaaliluvuksi. +HEX2OCT = HEKSAOKT ## Muuntaa heksadesimaaliluvun oktaaliluvuksi. +IMABS = KOMPLEKSI.ITSEISARVO ## Palauttaa kompleksiluvun itseisarvon (moduluksen). +IMAGINARY = KOMPLEKSI.IMAG ## Palauttaa kompleksiluvun imaginaariosan kertoimen. +IMARGUMENT = KOMPLEKSI.ARG ## Palauttaa theeta-argumentin, joka on radiaaneina annettu kulma. +IMCONJUGATE = KOMPLEKSI.KONJ ## Palauttaa kompleksiluvun konjugaattiluvun. +IMCOS = KOMPLEKSI.COS ## Palauttaa kompleksiluvun kosinin. +IMDIV = KOMPLEKSI.OSAM ## Palauttaa kahden kompleksiluvun osamäärän. +IMEXP = KOMPLEKSI.EKSP ## Palauttaa kompleksiluvun eksponentin. +IMLN = KOMPLEKSI.LN ## Palauttaa kompleksiluvun luonnollisen logaritmin. +IMLOG10 = KOMPLEKSI.LOG10 ## Palauttaa kompleksiluvun kymmenkantaisen logaritmin. +IMLOG2 = KOMPLEKSI.LOG2 ## Palauttaa kompleksiluvun kaksikantaisen logaritmin. +IMPOWER = KOMPLEKSI.POT ## Palauttaa kokonaislukupotenssiin korotetun kompleksiluvun. +IMPRODUCT = KOMPLEKSI.TULO ## Palauttaa kompleksilukujen tulon. +IMREAL = KOMPLEKSI.REAALI ## Palauttaa kompleksiluvun reaaliosan kertoimen. +IMSIN = KOMPLEKSI.SIN ## Palauttaa kompleksiluvun sinin. +IMSQRT = KOMPLEKSI.NELIÖJ ## Palauttaa kompleksiluvun neliöjuuren. +IMSUB = KOMPLEKSI.EROTUS ## Palauttaa kahden kompleksiluvun erotuksen. +IMSUM = KOMPLEKSI.SUM ## Palauttaa kompleksilukujen summan. +OCT2BIN = OKTBIN ## Muuntaa oktaaliluvun binaariluvuksi. +OCT2DEC = OKTDES ## Muuntaa oktaaliluvun desimaaliluvuksi. +OCT2HEX = OKTHEKSA ## Muuntaa oktaaliluvun heksadesimaaliluvuksi. + + +## +## Financial functions Rahoitusfunktiot +## +ACCRINT = KERTYNYT.KORKO ## Laskee arvopaperille kertyneen koron, kun korko kertyy säännöllisin väliajoin. +ACCRINTM = KERTYNYT.KORKO.LOPUSSA ## Laskee arvopaperille kertyneen koron, kun korko maksetaan eräpäivänä. +AMORDEGRC = AMORDEGRC ## Laskee kunkin laskentakauden poiston poistokerrointa käyttämällä. +AMORLINC = AMORLINC ## Palauttaa kunkin laskentakauden poiston. +COUPDAYBS = KORKOPÄIVÄT.ALUSTA ## Palauttaa koronmaksukauden aloituspäivän ja tilityspäivän välisen ajanjakson päivien määrän. +COUPDAYS = KORKOPÄIVÄT ## Palauttaa päivien määrän koronmaksukaudelta, johon tilityspäivä kuuluu. +COUPDAYSNC = KORKOPÄIVÄT.SEURAAVA ## Palauttaa tilityspäivän ja seuraavan koronmaksupäivän välisen ajanjakson päivien määrän. +COUPNCD = KORKOMAKSU.SEURAAVA ## Palauttaa tilityspäivän jälkeisen seuraavan koronmaksupäivän. +COUPNUM = KORKOPÄIVÄJAKSOT ## Palauttaa arvopaperin ostopäivän ja erääntymispäivän välisten koronmaksupäivien määrän. +COUPPCD = KORKOPÄIVÄ.EDELLINEN ## Palauttaa tilityspäivää edeltävän koronmaksupäivän. +CUMIPMT = MAKSETTU.KORKO ## Palauttaa kahden jakson välisenä aikana kertyneen koron. +CUMPRINC = MAKSETTU.LYHENNYS ## Palauttaa lainalle kahden jakson välisenä aikana kertyneen lyhennyksen. +DB = DB ## Palauttaa kauden kirjanpidollisen poiston amerikkalaisen DB-menetelmän (Fixed-declining balance) mukaan. +DDB = DDB ## Palauttaa kauden kirjanpidollisen poiston amerikkalaisen DDB-menetelmän (Double-Declining Balance) tai jonkin muun määrittämäsi menetelmän mukaan. +DISC = DISKONTTOKORKO ## Palauttaa arvopaperin diskonttokoron. +DOLLARDE = VALUUTTA.DES ## Muuntaa murtolukuna ilmoitetun valuuttamäärän desimaaliluvuksi. +DOLLARFR = VALUUTTA.MURTO ## Muuntaa desimaalilukuna ilmaistun valuuttamäärän murtoluvuksi. +DURATION = KESTO ## Palauttaa keston arvopaperille, jonka koronmaksu tapahtuu säännöllisesti. +EFFECT = KORKO.EFEKT ## Palauttaa todellisen vuosikoron. +FV = TULEVA.ARVO ## Palauttaa sijoituksen tulevan arvon. +FVSCHEDULE = TULEVA.ARVO.ERIKORKO ## Palauttaa pääoman tulevan arvon, kun pääomalle on kertynyt korkoa vaihtelevasti. +INTRATE = KORKO.ARVOPAPERI ## Palauttaa arvopaperin korkokannan täysin sijoitetulle arvopaperille. +IPMT = IPMT ## Laskee sijoitukselle tai lainalle tiettynä ajanjaksona kertyvän koron. +IRR = SISÄINEN.KORKO ## Laskee sisäisen korkokannan kassavirrasta muodostuvalle sarjalle. +ISPMT = ONMAKSU ## Laskee sijoituksen maksetun koron tietyllä jaksolla. +MDURATION = KESTO.MUUNN ## Palauttaa muunnetun Macauley-keston arvopaperille, jonka oletettu nimellisarvo on 100 euroa. +MIRR = MSISÄINEN ## Palauttaa sisäisen korkokannan, kun positiivisten ja negatiivisten kassavirtojen rahoituskorko on erilainen. +NOMINAL = KORKO.VUOSI ## Palauttaa vuosittaisen nimelliskoron. +NPER = NJAKSO ## Palauttaa sijoituksen jaksojen määrän. +NPV = NNA ## Palauttaa sijoituksen nykyarvon toistuvista kassavirroista muodostuvan sarjan ja diskonttokoron perusteella. +ODDFPRICE = PARITON.ENS.NIMELLISARVO ## Palauttaa arvopaperin hinnan tilanteessa, jossa ensimmäinen jakso on pariton. +ODDFYIELD = PARITON.ENS.TUOTTO ## Palauttaa arvopaperin tuoton tilanteessa, jossa ensimmäinen jakso on pariton. +ODDLPRICE = PARITON.VIIM.NIMELLISARVO ## Palauttaa arvopaperin hinnan tilanteessa, jossa viimeinen jakso on pariton. +ODDLYIELD = PARITON.VIIM.TUOTTO ## Palauttaa arvopaperin tuoton tilanteessa, jossa viimeinen jakso on pariton. +PMT = MAKSU ## Palauttaa annuiteetin kausittaisen maksuerän. +PPMT = PPMT ## Laskee sijoitukselle tai lainalle tiettynä ajanjaksona maksettavan lyhennyksen. +PRICE = HINTA ## Palauttaa hinnan 100 euron nimellisarvoa kohden arvopaperille, jonka korko maksetaan säännöllisin väliajoin. +PRICEDISC = HINTA.DISK ## Palauttaa diskontatun arvopaperin hinnan 100 euron nimellisarvoa kohden. +PRICEMAT = HINTA.LUNASTUS ## Palauttaa hinnan 100 euron nimellisarvoa kohden arvopaperille, jonka korko maksetaan erääntymispäivänä. +PV = NA ## Palauttaa sijoituksen nykyarvon. +RATE = KORKO ## Palauttaa annuiteetin kausittaisen korkokannan. +RECEIVED = SAATU.HINTA ## Palauttaa arvopaperin tuoton erääntymispäivänä kokonaan maksetulle sijoitukselle. +SLN = STP ## Palauttaa sijoituksen tasapoiston yhdeltä jaksolta. +SYD = VUOSIPOISTO ## Palauttaa sijoituksen vuosipoiston annettuna kautena amerikkalaisen SYD-menetelmän (Sum-of-Year's Digits) avulla. +TBILLEQ = OBLIG.TUOTTOPROS ## Palauttaa valtion obligaation tuoton vastaavana joukkovelkakirjan tuottona. +TBILLPRICE = OBLIG.HINTA ## Palauttaa obligaation hinnan 100 euron nimellisarvoa kohden. +TBILLYIELD = OBLIG.TUOTTO ## Palauttaa obligaation tuoton. +VDB = VDB ## Palauttaa annetun kauden tai kauden osan kirjanpidollisen poiston amerikkalaisen DB-menetelmän (Fixed-declining balance) mukaan. +XIRR = SISÄINEN.KORKO.JAKSOTON ## Palauttaa sisäisen korkokannan kassavirtojen sarjoille, jotka eivät välttämättä ole säännöllisiä. +XNPV = NNA.JAKSOTON ## Palauttaa nettonykyarvon kassavirtasarjalle, joka ei välttämättä ole kausittainen. +YIELD = TUOTTO ## Palauttaa tuoton arvopaperille, jonka korko maksetaan säännöllisin väliajoin. +YIELDDISC = TUOTTO.DISK ## Palauttaa diskontatun arvopaperin, kuten obligaation, vuosittaisen tuoton. +YIELDMAT = TUOTTO.ERÄP ## Palauttaa erääntymispäivänään korkoa tuottavan arvopaperin vuosittaisen tuoton. + + +## +## Information functions Erikoisfunktiot +## +CELL = SOLU ## Palauttaa tietoja solun muotoilusta, sijainnista ja sisällöstä. +ERROR.TYPE = VIRHEEN.LAJI ## Palauttaa virhetyyppiä vastaavan luvun. +INFO = KUVAUS ## Palauttaa tietoja nykyisestä käyttöympäristöstä. +ISBLANK = ONTYHJÄ ## Palauttaa arvon TOSI, jos arvo on tyhjä. +ISERR = ONVIRH ## Palauttaa arvon TOSI, jos arvo on mikä tahansa virhearvo paitsi arvo #PUUTTUU!. +ISERROR = ONVIRHE ## Palauttaa arvon TOSI, jos arvo on mikä tahansa virhearvo. +ISEVEN = ONPARILLINEN ## Palauttaa arvon TOSI, jos arvo on parillinen. +ISLOGICAL = ONTOTUUS ## Palauttaa arvon TOSI, jos arvo on mikä tahansa looginen arvo. +ISNA = ONPUUTTUU ## Palauttaa arvon TOSI, jos virhearvo on #PUUTTUU!. +ISNONTEXT = ONEI_TEKSTI ## Palauttaa arvon TOSI, jos arvo ei ole teksti. +ISNUMBER = ONLUKU ## Palauttaa arvon TOSI, jos arvo on luku. +ISODD = ONPARITON ## Palauttaa arvon TOSI, jos arvo on pariton. +ISREF = ONVIITT ## Palauttaa arvon TOSI, jos arvo on viittaus. +ISTEXT = ONTEKSTI ## Palauttaa arvon TOSI, jos arvo on teksti. +N = N ## Palauttaa arvon luvuksi muunnettuna. +NA = PUUTTUU ## Palauttaa virhearvon #PUUTTUU!. +TYPE = TYYPPI ## Palauttaa luvun, joka ilmaisee arvon tietotyypin. + + +## +## Logical functions Loogiset funktiot +## +AND = JA ## Palauttaa arvon TOSI, jos kaikkien argumenttien arvo on TOSI. +FALSE = EPÄTOSI ## Palauttaa totuusarvon EPÄTOSI. +IF = JOS ## Määrittää suoritettavan loogisen testin. +IFERROR = JOSVIRHE ## Palauttaa määrittämäsi arvon, jos kaavan tulos on virhe; muussa tapauksessa palauttaa kaavan tuloksen. +NOT = EI ## Kääntää argumentin loogisen arvon. +OR = TAI ## Palauttaa arvon TOSI, jos minkä tahansa argumentin arvo on TOSI. +TRUE = TOSI ## Palauttaa totuusarvon TOSI. + + +## +## Lookup and reference functions Haku- ja viitefunktiot +## +ADDRESS = OSOITE ## Palauttaa laskentataulukon soluun osoittavan viittauksen tekstinä. +AREAS = ALUEET ## Palauttaa viittauksessa olevien alueiden määrän. +CHOOSE = VALITSE.INDEKSI ## Valitsee arvon arvoluettelosta. +COLUMN = SARAKE ## Palauttaa viittauksen sarakenumeron. +COLUMNS = SARAKKEET ## Palauttaa viittauksessa olevien sarakkeiden määrän. +HLOOKUP = VHAKU ## Suorittaa haun matriisin ylimmältä riviltä ja palauttaa määritetyn solun arvon. +HYPERLINK = HYPERLINKKI ## Luo pikakuvakkeen tai tekstin, joka avaa verkkopalvelimeen, intranetiin tai Internetiin tallennetun tiedoston. +INDEX = INDEKSI ## Valitsee arvon viittauksesta tai matriisista indeksin mukaan. +INDIRECT = EPÄSUORA ## Palauttaa tekstiarvona ilmaistun viittauksen. +LOOKUP = HAKU ## Etsii arvoja vektorista tai matriisista. +MATCH = VASTINE ## Etsii arvoja viittauksesta tai matriisista. +OFFSET = SIIRTYMÄ ## Palauttaa annetun viittauksen siirtymän. +ROW = RIVI ## Palauttaa viittauksen rivinumeron. +ROWS = RIVIT ## Palauttaa viittauksessa olevien rivien määrän. +RTD = RTD ## Noutaa COM-automaatiota (automaatio: Tapa käsitellä sovelluksen objekteja toisesta sovelluksesta tai kehitystyökalusta. Automaatio, jota aiemmin kutsuttiin OLE-automaatioksi, on teollisuusstandardi ja COM-mallin (Component Object Model) ominaisuus.) tukevasta ohjelmasta reaaliaikaisia tietoja. +TRANSPOSE = TRANSPONOI ## Palauttaa matriisin käänteismatriisin. +VLOOKUP = PHAKU ## Suorittaa haun matriisin ensimmäisestä sarakkeesta ja palauttaa rivillä olevan solun arvon. + + +## +## Math and trigonometry functions Matemaattiset ja trigonometriset funktiot +## +ABS = ITSEISARVO ## Palauttaa luvun itseisarvon. +ACOS = ACOS ## Palauttaa luvun arkuskosinin. +ACOSH = ACOSH ## Palauttaa luvun käänteisen hyperbolisen kosinin. +ASIN = ASIN ## Palauttaa luvun arkussinin. +ASINH = ASINH ## Palauttaa luvun käänteisen hyperbolisen sinin. +ATAN = ATAN ## Palauttaa luvun arkustangentin. +ATAN2 = ATAN2 ## Palauttaa arkustangentin x- ja y-koordinaatin perusteella. +ATANH = ATANH ## Palauttaa luvun käänteisen hyperbolisen tangentin. +CEILING = PYÖRISTÄ.KERR.YLÖS ## Pyöristää luvun lähimpään kokonaislukuun tai tarkkuusargumentin lähimpään kerrannaiseen. +COMBIN = KOMBINAATIO ## Palauttaa mahdollisten kombinaatioiden määrän annetulle objektien määrälle. +COS = COS ## Palauttaa luvun kosinin. +COSH = COSH ## Palauttaa luvun hyperbolisen kosinin. +DEGREES = ASTEET ## Muuntaa radiaanit asteiksi. +EVEN = PARILLINEN ## Pyöristää luvun ylöspäin lähimpään parilliseen kokonaislukuun. +EXP = EKSPONENTTI ## Palauttaa e:n korotettuna annetun luvun osoittamaan potenssiin. +FACT = KERTOMA ## Palauttaa luvun kertoman. +FACTDOUBLE = KERTOMA.OSA ## Palauttaa luvun osakertoman. +FLOOR = PYÖRISTÄ.KERR.ALAS ## Pyöristää luvun alaspäin (nollaa kohti). +GCD = SUURIN.YHT.TEKIJÄ ## Palauttaa suurimman yhteisen tekijän. +INT = KOKONAISLUKU ## Pyöristää luvun alaspäin lähimpään kokonaislukuun. +LCM = PIENIN.YHT.JAETTAVA ## Palauttaa pienimmän yhteisen tekijän. +LN = LUONNLOG ## Palauttaa luvun luonnollisen logaritmin. +LOG = LOG ## Laskee luvun logaritmin käyttämällä annettua kantalukua. +LOG10 = LOG10 ## Palauttaa luvun kymmenkantaisen logaritmin. +MDETERM = MDETERM ## Palauttaa matriisin matriisideterminantin. +MINVERSE = MKÄÄNTEINEN ## Palauttaa matriisin käänteismatriisin. +MMULT = MKERRO ## Palauttaa kahden matriisin tulon. +MOD = JAKOJ ## Palauttaa jakolaskun jäännöksen. +MROUND = PYÖRISTÄ.KERR ## Palauttaa luvun pyöristettynä annetun luvun kerrannaiseen. +MULTINOMIAL = MULTINOMI ## Palauttaa lukujoukon multinomin. +ODD = PARITON ## Pyöristää luvun ylöspäin lähimpään parittomaan kokonaislukuun. +PI = PII ## Palauttaa piin arvon. +POWER = POTENSSI ## Palauttaa luvun korotettuna haluttuun potenssiin. +PRODUCT = TULO ## Kertoo annetut argumentit. +QUOTIENT = OSAMÄÄRÄ ## Palauttaa osamäärän kokonaislukuosan. +RADIANS = RADIAANIT ## Muuntaa asteet radiaaneiksi. +RAND = SATUNNAISLUKU ## Palauttaa satunnaisluvun väliltä 0–1. +RANDBETWEEN = SATUNNAISLUKU.VÄLILTÄ ## Palauttaa satunnaisluvun määritettyjen lukujen väliltä. +ROMAN = ROMAN ## Muuntaa arabialaisen numeron tekstimuotoiseksi roomalaiseksi numeroksi. +ROUND = PYÖRISTÄ ## Pyöristää luvun annettuun määrään desimaaleja. +ROUNDDOWN = PYÖRISTÄ.DES.ALAS ## Pyöristää luvun alaspäin (nollaa kohti). +ROUNDUP = PYÖRISTÄ.DES.YLÖS ## Pyöristää luvun ylöspäin (poispäin nollasta). +SERIESSUM = SARJA.SUMMA ## Palauttaa kaavaan perustuvan potenssisarjan arvon. +SIGN = ETUMERKKI ## Palauttaa luvun etumerkin. +SIN = SIN ## Palauttaa annetun kulman sinin. +SINH = SINH ## Palauttaa luvun hyperbolisen sinin. +SQRT = NELIÖJUURI ## Palauttaa positiivisen neliöjuuren. +SQRTPI = NELIÖJUURI.PII ## Palauttaa tulon (luku * pii) neliöjuuren. +SUBTOTAL = VÄLISUMMA ## Palauttaa luettelon tai tietokannan välisumman. +SUM = SUMMA ## Laskee yhteen annetut argumentit. +SUMIF = SUMMA.JOS ## Laskee ehdot täyttävien solujen summan. +SUMIFS = SUMMA.JOS.JOUKKO ## Laskee yhteen solualueen useita ehtoja vastaavat solut. +SUMPRODUCT = TULOJEN.SUMMA ## Palauttaa matriisin toisiaan vastaavien osien tulojen summan. +SUMSQ = NELIÖSUMMA ## Palauttaa argumenttien neliöiden summan. +SUMX2MY2 = NELIÖSUMMIEN.EROTUS ## Palauttaa kahden matriisin toisiaan vastaavien arvojen laskettujen neliösummien erotuksen. +SUMX2PY2 = NELIÖSUMMIEN.SUMMA ## Palauttaa kahden matriisin toisiaan vastaavien arvojen neliösummien summan. +SUMXMY2 = EROTUSTEN.NELIÖSUMMA ## Palauttaa kahden matriisin toisiaan vastaavien arvojen erotusten neliösumman. +TAN = TAN ## Palauttaa luvun tangentin. +TANH = TANH ## Palauttaa luvun hyperbolisen tangentin. +TRUNC = KATKAISE ## Katkaisee luvun kokonaisluvuksi. + + +## +## Statistical functions Tilastolliset funktiot +## +AVEDEV = KESKIPOIKKEAMA ## Palauttaa hajontojen itseisarvojen keskiarvon. +AVERAGE = KESKIARVO ## Palauttaa argumenttien keskiarvon. +AVERAGEA = KESKIARVOA ## Palauttaa argumenttien, mukaan lukien lukujen, tekstin ja loogisten arvojen, keskiarvon. +AVERAGEIF = KESKIARVO.JOS ## Palauttaa alueen niiden solujen keskiarvon (aritmeettisen keskiarvon), jotka täyttävät annetut ehdot. +AVERAGEIFS = KESKIARVO.JOS.JOUKKO ## Palauttaa niiden solujen keskiarvon (aritmeettisen keskiarvon), jotka vastaavat useita ehtoja. +BETADIST = BEETAJAKAUMA ## Palauttaa kumulatiivisen beetajakaumafunktion arvon. +BETAINV = BEETAJAKAUMA.KÄÄNT ## Palauttaa määritetyn beetajakauman käänteisen kumulatiivisen jakaumafunktion arvon. +BINOMDIST = BINOMIJAKAUMA ## Palauttaa yksittäisen termin binomijakaumatodennäköisyyden. +CHIDIST = CHIJAKAUMA ## Palauttaa yksisuuntaisen chi-neliön jakauman todennäköisyyden. +CHIINV = CHIJAKAUMA.KÄÄNT ## Palauttaa yksisuuntaisen chi-neliön jakauman todennäköisyyden käänteisarvon. +CHITEST = CHITESTI ## Palauttaa riippumattomuustestin tuloksen. +CONFIDENCE = LUOTTAMUSVÄLI ## Palauttaa luottamusvälin populaation keskiarvolle. +CORREL = KORRELAATIO ## Palauttaa kahden arvojoukon korrelaatiokertoimen. +COUNT = LASKE ## Laskee argumenttiluettelossa olevien lukujen määrän. +COUNTA = LASKE.A ## Laskee argumenttiluettelossa olevien arvojen määrän. +COUNTBLANK = LASKE.TYHJÄT ## Laskee alueella olevien tyhjien solujen määrän. +COUNTIF = LASKE.JOS ## Laskee alueella olevien sellaisten solujen määrän, joiden sisältö vastaa annettuja ehtoja. +COUNTIFS = LASKE.JOS.JOUKKO ## Laskee alueella olevien sellaisten solujen määrän, joiden sisältö vastaa useita ehtoja. +COVAR = KOVARIANSSI ## Palauttaa kovarianssin, joka on keskiarvo havaintoaineiston kunkin pisteparin poikkeamien tuloista. +CRITBINOM = BINOMIJAKAUMA.KRIT ## Palauttaa pienimmän arvon, jossa binomijakauman kertymäfunktion arvo on pienempi tai yhtä suuri kuin vertailuarvo. +DEVSQ = OIKAISTU.NELIÖSUMMA ## Palauttaa keskipoikkeamien neliösumman. +EXPONDIST = EKSPONENTIAALIJAKAUMA ## Palauttaa eksponentiaalijakauman. +FDIST = FJAKAUMA ## Palauttaa F-todennäköisyysjakauman. +FINV = FJAKAUMA.KÄÄNT ## Palauttaa F-todennäköisyysjakauman käänteisfunktion. +FISHER = FISHER ## Palauttaa Fisher-muunnoksen. +FISHERINV = FISHER.KÄÄNT ## Palauttaa käänteisen Fisher-muunnoksen. +FORECAST = ENNUSTE ## Palauttaa lineaarisen trendin arvon. +FREQUENCY = TAAJUUS ## Palauttaa frekvenssijakautuman pystysuuntaisena matriisina. +FTEST = FTESTI ## Palauttaa F-testin tuloksen. +GAMMADIST = GAMMAJAKAUMA ## Palauttaa gammajakauman. +GAMMAINV = GAMMAJAKAUMA.KÄÄNT ## Palauttaa käänteisen gammajakauman kertymäfunktion. +GAMMALN = GAMMALN ## Palauttaa gammafunktion luonnollisen logaritmin G(x). +GEOMEAN = KESKIARVO.GEOM ## Palauttaa geometrisen keskiarvon. +GROWTH = KASVU ## Palauttaa eksponentiaalisen trendin arvon. +HARMEAN = KESKIARVO.HARM ## Palauttaa harmonisen keskiarvon. +HYPGEOMDIST = HYPERGEOM.JAKAUMA ## Palauttaa hypergeometrisen jakauman. +INTERCEPT = LEIKKAUSPISTE ## Palauttaa lineaarisen regressiosuoran leikkauspisteen. +KURT = KURT ## Palauttaa tietoalueen vinous-arvon eli huipukkuuden. +LARGE = SUURI ## Palauttaa tietojoukon k:nneksi suurimman arvon. +LINEST = LINREGR ## Palauttaa lineaarisen trendin parametrit. +LOGEST = LOGREGR ## Palauttaa eksponentiaalisen trendin parametrit. +LOGINV = LOGNORM.JAKAUMA.KÄÄNT ## Palauttaa lognormeeratun jakauman käänteisfunktion. +LOGNORMDIST = LOGNORM.JAKAUMA ## Palauttaa lognormaalisen jakauman kertymäfunktion. +MAX = MAKS ## Palauttaa suurimman arvon argumenttiluettelosta. +MAXA = MAKSA ## Palauttaa argumenttien, mukaan lukien lukujen, tekstin ja loogisten arvojen, suurimman arvon. +MEDIAN = MEDIAANI ## Palauttaa annettujen lukujen mediaanin. +MIN = MIN ## Palauttaa pienimmän arvon argumenttiluettelosta. +MINA = MINA ## Palauttaa argumenttien, mukaan lukien lukujen, tekstin ja loogisten arvojen, pienimmän arvon. +MODE = MOODI ## Palauttaa tietojoukossa useimmin esiintyvän arvon. +NEGBINOMDIST = BINOMIJAKAUMA.NEG ## Palauttaa negatiivisen binomijakauman. +NORMDIST = NORM.JAKAUMA ## Palauttaa normaalijakauman kertymäfunktion. +NORMINV = NORM.JAKAUMA.KÄÄNT ## Palauttaa käänteisen normaalijakauman kertymäfunktion. +NORMSDIST = NORM.JAKAUMA.NORMIT ## Palauttaa normitetun normaalijakauman kertymäfunktion. +NORMSINV = NORM.JAKAUMA.NORMIT.KÄÄNT ## Palauttaa normitetun normaalijakauman kertymäfunktion käänteisarvon. +PEARSON = PEARSON ## Palauttaa Pearsonin tulomomenttikorrelaatiokertoimen. +PERCENTILE = PROSENTTIPISTE ## Palauttaa alueen arvojen k:nnen prosenttipisteen. +PERCENTRANK = PROSENTTIJÄRJESTYS ## Palauttaa tietojoukon arvon prosentuaalisen järjestysluvun. +PERMUT = PERMUTAATIO ## Palauttaa mahdollisten permutaatioiden määrän annetulle objektien määrälle. +POISSON = POISSON ## Palauttaa Poissonin todennäköisyysjakauman. +PROB = TODENNÄKÖISYYS ## Palauttaa todennäköisyyden sille, että arvot ovat tietyltä väliltä. +QUARTILE = NELJÄNNES ## Palauttaa tietoalueen neljänneksen. +RANK = ARVON.MUKAAN ## Palauttaa luvun paikan lukuarvoluettelossa. +RSQ = PEARSON.NELIÖ ## Palauttaa Pearsonin tulomomenttikorrelaatiokertoimen neliön. +SKEW = JAKAUMAN.VINOUS ## Palauttaa jakauman vinouden. +SLOPE = KULMAKERROIN ## Palauttaa lineaarisen regressiosuoran kulmakertoimen. +SMALL = PIENI ## Palauttaa tietojoukon k:nneksi pienimmän arvon. +STANDARDIZE = NORMITA ## Palauttaa normitetun arvon. +STDEV = KESKIHAJONTA ## Laskee populaation keskihajonnan otoksen perusteella. +STDEVA = KESKIHAJONTAA ## Laskee populaation keskihajonnan otoksen perusteella, mukaan lukien luvut, tekstin ja loogiset arvot. +STDEVP = KESKIHAJONTAP ## Laskee normaalijakautuman koko populaation perusteella. +STDEVPA = KESKIHAJONTAPA ## Laskee populaation keskihajonnan koko populaation perusteella, mukaan lukien luvut, tekstin ja totuusarvot. +STEYX = KESKIVIRHE ## Palauttaa regression kutakin x-arvoa vastaavan ennustetun y-arvon keskivirheen. +TDIST = TJAKAUMA ## Palauttaa t-jakautuman. +TINV = TJAKAUMA.KÄÄNT ## Palauttaa käänteisen t-jakauman. +TREND = SUUNTAUS ## Palauttaa lineaarisen trendin arvoja. +TRIMMEAN = KESKIARVO.TASATTU ## Palauttaa tietojoukon tasatun keskiarvon. +TTEST = TTESTI ## Palauttaa t-testiin liittyvän todennäköisyyden. +VAR = VAR ## Arvioi populaation varianssia otoksen perusteella. +VARA = VARA ## Laskee populaation varianssin otoksen perusteella, mukaan lukien luvut, tekstin ja loogiset arvot. +VARP = VARP ## Laskee varianssin koko populaation perusteella. +VARPA = VARPA ## Laskee populaation varianssin koko populaation perusteella, mukaan lukien luvut, tekstin ja totuusarvot. +WEIBULL = WEIBULL ## Palauttaa Weibullin jakauman. +ZTEST = ZTESTI ## Palauttaa z-testin yksisuuntaisen todennäköisyysarvon. + + +## +## Text functions Tekstifunktiot +## +ASC = ASC ## Muuntaa merkkijonossa olevat englanninkieliset DBCS- tai katakana-merkit SBCS-merkeiksi. +BAHTTEXT = BAHTTEKSTI ## Muuntaa luvun tekstiksi ß (baht) -valuuttamuotoa käyttämällä. +CHAR = MERKKI ## Palauttaa koodin lukua vastaavan merkin. +CLEAN = SIIVOA ## Poistaa tekstistä kaikki tulostumattomat merkit. +CODE = KOODI ## Palauttaa tekstimerkkijonon ensimmäisen merkin numerokoodin. +CONCATENATE = KETJUTA ## Yhdistää useat merkkijonot yhdeksi merkkijonoksi. +DOLLAR = VALUUTTA ## Muuntaa luvun tekstiksi $ (dollari) -valuuttamuotoa käyttämällä. +EXACT = VERTAA ## Tarkistaa, ovatko kaksi tekstiarvoa samanlaiset. +FIND = ETSI ## Etsii tekstiarvon toisen tekstin sisältä (tunnistaa isot ja pienet kirjaimet). +FINDB = ETSIB ## Etsii tekstiarvon toisen tekstin sisältä (tunnistaa isot ja pienet kirjaimet). +FIXED = KIINTEÄ ## Muotoilee luvun tekstiksi, jossa on kiinteä määrä desimaaleja. +JIS = JIS ## Muuntaa merkkijonossa olevat englanninkieliset SBCS- tai katakana-merkit DBCS-merkeiksi. +LEFT = VASEN ## Palauttaa tekstiarvon vasemmanpuoliset merkit. +LEFTB = VASENB ## Palauttaa tekstiarvon vasemmanpuoliset merkit. +LEN = PITUUS ## Palauttaa tekstimerkkijonon merkkien määrän. +LENB = PITUUSB ## Palauttaa tekstimerkkijonon merkkien määrän. +LOWER = PIENET ## Muuntaa tekstin pieniksi kirjaimiksi. +MID = POIMI.TEKSTI ## Palauttaa määritetyn määrän merkkejä merkkijonosta alkaen annetusta kohdasta. +MIDB = POIMI.TEKSTIB ## Palauttaa määritetyn määrän merkkejä merkkijonosta alkaen annetusta kohdasta. +PHONETIC = FONEETTINEN ## Hakee foneettiset (furigana) merkit merkkijonosta. +PROPER = ERISNIMI ## Muuttaa merkkijonon kunkin sanan ensimmäisen kirjaimen isoksi. +REPLACE = KORVAA ## Korvaa tekstissä olevat merkit. +REPLACEB = KORVAAB ## Korvaa tekstissä olevat merkit. +REPT = TOISTA ## Toistaa tekstin annetun määrän kertoja. +RIGHT = OIKEA ## Palauttaa tekstiarvon oikeanpuoliset merkit. +RIGHTB = OIKEAB ## Palauttaa tekstiarvon oikeanpuoliset merkit. +SEARCH = KÄY.LÄPI ## Etsii tekstiarvon toisen tekstin sisältä (isot ja pienet kirjaimet tulkitaan samoiksi merkeiksi). +SEARCHB = KÄY.LÄPIB ## Etsii tekstiarvon toisen tekstin sisältä (isot ja pienet kirjaimet tulkitaan samoiksi merkeiksi). +SUBSTITUTE = VAIHDA ## Korvaa merkkijonossa olevan tekstin toisella. +T = T ## Muuntaa argumentit tekstiksi. +TEXT = TEKSTI ## Muotoilee luvun ja muuntaa sen tekstiksi. +TRIM = POISTA.VÄLIT ## Poistaa välilyönnit tekstistä. +UPPER = ISOT ## Muuntaa tekstin isoiksi kirjaimiksi. +VALUE = ARVO ## Muuntaa tekstiargumentin luvuksi. diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/fr/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/fr/_notes/dwsync.xml new file mode 100644 index 0000000..4e4b3cd --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/fr/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984143400000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984143400000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559941237356" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559941816638" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752245084393" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752245625424" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461242894355" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461245359970" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752245084393" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752245625424" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/fr/config b/site/config/PHPExcel/Classes/PHPExcel/locale/fr/config new file mode 100644 index 0000000..8ae183a --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/fr/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = € + + +## +## Excel Error Codes (For future use) +## +NULL = #NUL! +DIV0 = #DIV/0! +VALUE = #VALEUR! +REF = #REF! +NAME = #NOM? +NUM = #NOMBRE! +NA = #N/A diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/fr/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/fr/functions new file mode 100644 index 0000000..ebb8339 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/fr/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Fonctions de complément et d’automatisation +## +GETPIVOTDATA = LIREDONNEESTABCROISDYNAMIQUE ## Renvoie les données stockées dans un rapport de tableau croisé dynamique. + + +## +## Cube functions Fonctions Cube +## +CUBEKPIMEMBER = MEMBREKPICUBE ## Renvoie un nom, une propriété et une mesure d’indicateur de performance clé et affiche le nom et la propriété dans la cellule. Un indicateur de performance clé est une mesure quantifiable, telle que la marge bénéficiaire brute mensuelle ou la rotation trimestrielle du personnel, utilisée pour évaluer les performances d’une entreprise. +CUBEMEMBER = MEMBRECUBE ## Renvoie un membre ou un uplet dans une hiérarchie de cubes. Utilisez cette fonction pour valider l’existence du membre ou de l’uplet dans le cube. +CUBEMEMBERPROPERTY = PROPRIETEMEMBRECUBE ## Renvoie la valeur d’une propriété de membre du cube. Utilisez cette fonction pour valider l’existence d’un nom de membre dans le cube et pour renvoyer la propriété spécifiée pour ce membre. +CUBERANKEDMEMBER = RANGMEMBRECUBE ## Renvoie le nième membre ou le membre placé à un certain rang dans un ensemble. Utilisez cette fonction pour renvoyer un ou plusieurs éléments d’un ensemble, tels que les meilleurs vendeurs ou les 10 meilleurs étudiants. +CUBESET = JEUCUBE ## Définit un ensemble calculé de membres ou d’uplets en envoyant une expression définie au cube sur le serveur qui crée l’ensemble et le renvoie à Microsoft Office Excel. +CUBESETCOUNT = NBJEUCUBE ## Renvoie le nombre d’éléments dans un jeu. +CUBEVALUE = VALEURCUBE ## Renvoie une valeur d’agrégation issue d’un cube. + + +## +## Database functions Fonctions de base de données +## +DAVERAGE = BDMOYENNE ## Renvoie la moyenne des entrées de base de données sélectionnées. +DCOUNT = BCOMPTE ## Compte le nombre de cellules d’une base de données qui contiennent des nombres. +DCOUNTA = BDNBVAL ## Compte les cellules non vides d’une base de données. +DGET = BDLIRE ## Extrait d’une base de données un enregistrement unique répondant aux critères spécifiés. +DMAX = BDMAX ## Renvoie la valeur maximale des entrées de base de données sélectionnées. +DMIN = BDMIN ## Renvoie la valeur minimale des entrées de base de données sélectionnées. +DPRODUCT = BDPRODUIT ## Multiplie les valeurs d’un champ particulier des enregistrements d’une base de données, qui répondent aux critères spécifiés. +DSTDEV = BDECARTYPE ## Calcule l’écart type pour un échantillon d’entrées de base de données sélectionnées. +DSTDEVP = BDECARTYPEP ## Calcule l’écart type pour l’ensemble d’une population d’entrées de base de données sélectionnées. +DSUM = BDSOMME ## Ajoute les nombres dans la colonne de champ des enregistrements de la base de données, qui répondent aux critères. +DVAR = BDVAR ## Calcule la variance pour un échantillon d’entrées de base de données sélectionnées. +DVARP = BDVARP ## Calcule la variance pour l’ensemble d’une population d’entrées de base de données sélectionnées. + + +## +## Date and time functions Fonctions de date et d’heure +## +DATE = DATE ## Renvoie le numéro de série d’une date précise. +DATEVALUE = DATEVAL ## Convertit une date représentée sous forme de texte en numéro de série. +DAY = JOUR ## Convertit un numéro de série en jour du mois. +DAYS360 = JOURS360 ## Calcule le nombre de jours qui séparent deux dates sur la base d’une année de 360 jours. +EDATE = MOIS.DECALER ## Renvoie le numéro séquentiel de la date qui représente une date spécifiée (l’argument date_départ), corrigée en plus ou en moins du nombre de mois indiqué. +EOMONTH = FIN.MOIS ## Renvoie le numéro séquentiel de la date du dernier jour du mois précédant ou suivant la date_départ du nombre de mois indiqué. +HOUR = HEURE ## Convertit un numéro de série en heure. +MINUTE = MINUTE ## Convertit un numéro de série en minute. +MONTH = MOIS ## Convertit un numéro de série en mois. +NETWORKDAYS = NB.JOURS.OUVRES ## Renvoie le nombre de jours ouvrés entiers compris entre deux dates. +NOW = MAINTENANT ## Renvoie le numéro de série de la date et de l’heure du jour. +SECOND = SECONDE ## Convertit un numéro de série en seconde. +TIME = TEMPS ## Renvoie le numéro de série d’une heure précise. +TIMEVALUE = TEMPSVAL ## Convertit une date représentée sous forme de texte en numéro de série. +TODAY = AUJOURDHUI ## Renvoie le numéro de série de la date du jour. +WEEKDAY = JOURSEM ## Convertit un numéro de série en jour de la semaine. +WEEKNUM = NO.SEMAINE ## Convertit un numéro de série en un numéro représentant l’ordre de la semaine dans l’année. +WORKDAY = SERIE.JOUR.OUVRE ## Renvoie le numéro de série de la date avant ou après le nombre de jours ouvrés spécifiés. +YEAR = ANNEE ## Convertit un numéro de série en année. +YEARFRAC = FRACTION.ANNEE ## Renvoie la fraction de l’année représentant le nombre de jours entre la date de début et la date de fin. + + +## +## Engineering functions Fonctions d’ingénierie +## +BESSELI = BESSELI ## Renvoie la fonction Bessel modifiée In(x). +BESSELJ = BESSELJ ## Renvoie la fonction Bessel Jn(x). +BESSELK = BESSELK ## Renvoie la fonction Bessel modifiée Kn(x). +BESSELY = BESSELY ## Renvoie la fonction Bessel Yn(x). +BIN2DEC = BINDEC ## Convertit un nombre binaire en nombre décimal. +BIN2HEX = BINHEX ## Convertit un nombre binaire en nombre hexadécimal. +BIN2OCT = BINOCT ## Convertit un nombre binaire en nombre octal. +COMPLEX = COMPLEXE ## Convertit des coefficients réel et imaginaire en un nombre complexe. +CONVERT = CONVERT ## Convertit un nombre d’une unité de mesure à une autre. +DEC2BIN = DECBIN ## Convertit un nombre décimal en nombre binaire. +DEC2HEX = DECHEX ## Convertit un nombre décimal en nombre hexadécimal. +DEC2OCT = DECOCT ## Convertit un nombre décimal en nombre octal. +DELTA = DELTA ## Teste l’égalité de deux nombres. +ERF = ERF ## Renvoie la valeur de la fonction d’erreur. +ERFC = ERFC ## Renvoie la valeur de la fonction d’erreur complémentaire. +GESTEP = SUP.SEUIL ## Teste si un nombre est supérieur à une valeur de seuil. +HEX2BIN = HEXBIN ## Convertit un nombre hexadécimal en nombre binaire. +HEX2DEC = HEXDEC ## Convertit un nombre hexadécimal en nombre décimal. +HEX2OCT = HEXOCT ## Convertit un nombre hexadécimal en nombre octal. +IMABS = COMPLEXE.MODULE ## Renvoie la valeur absolue (module) d’un nombre complexe. +IMAGINARY = COMPLEXE.IMAGINAIRE ## Renvoie le coefficient imaginaire d’un nombre complexe. +IMARGUMENT = COMPLEXE.ARGUMENT ## Renvoie l’argument thêta, un angle exprimé en radians. +IMCONJUGATE = COMPLEXE.CONJUGUE ## Renvoie le nombre complexe conjugué d’un nombre complexe. +IMCOS = IMCOS ## Renvoie le cosinus d’un nombre complexe. +IMDIV = COMPLEXE.DIV ## Renvoie le quotient de deux nombres complexes. +IMEXP = COMPLEXE.EXP ## Renvoie la fonction exponentielle d’un nombre complexe. +IMLN = COMPLEXE.LN ## Renvoie le logarithme népérien d’un nombre complexe. +IMLOG10 = COMPLEXE.LOG10 ## Calcule le logarithme en base 10 d’un nombre complexe. +IMLOG2 = COMPLEXE.LOG2 ## Calcule le logarithme en base 2 d’un nombre complexe. +IMPOWER = COMPLEXE.PUISSANCE ## Renvoie un nombre complexe élevé à une puissance entière. +IMPRODUCT = COMPLEXE.PRODUIT ## Renvoie le produit de plusieurs nombres complexes. +IMREAL = COMPLEXE.REEL ## Renvoie le coefficient réel d’un nombre complexe. +IMSIN = COMPLEXE.SIN ## Renvoie le sinus d’un nombre complexe. +IMSQRT = COMPLEXE.RACINE ## Renvoie la racine carrée d’un nombre complexe. +IMSUB = COMPLEXE.DIFFERENCE ## Renvoie la différence entre deux nombres complexes. +IMSUM = COMPLEXE.SOMME ## Renvoie la somme de plusieurs nombres complexes. +OCT2BIN = OCTBIN ## Convertit un nombre octal en nombre binaire. +OCT2DEC = OCTDEC ## Convertit un nombre octal en nombre décimal. +OCT2HEX = OCTHEX ## Convertit un nombre octal en nombre hexadécimal. + + +## +## Financial functions Fonctions financières +## +ACCRINT = INTERET.ACC ## Renvoie l’intérêt couru non échu d’un titre dont l’intérêt est perçu périodiquement. +ACCRINTM = INTERET.ACC.MAT ## Renvoie l’intérêt couru non échu d’un titre dont l’intérêt est perçu à l’échéance. +AMORDEGRC = AMORDEGRC ## Renvoie l’amortissement correspondant à chaque période comptable en utilisant un coefficient d’amortissement. +AMORLINC = AMORLINC ## Renvoie l’amortissement d’un bien à la fin d’une période fiscale donnée. +COUPDAYBS = NB.JOURS.COUPON.PREC ## Renvoie le nombre de jours entre le début de la période de coupon et la date de liquidation. +COUPDAYS = NB.JOURS.COUPONS ## Renvoie le nombre de jours pour la période du coupon contenant la date de liquidation. +COUPDAYSNC = NB.JOURS.COUPON.SUIV ## Renvoie le nombre de jours entre la date de liquidation et la date du coupon suivant la date de liquidation. +COUPNCD = DATE.COUPON.SUIV ## Renvoie la première date de coupon ultérieure à la date de règlement. +COUPNUM = NB.COUPONS ## Renvoie le nombre de coupons dus entre la date de règlement et la date d’échéance. +COUPPCD = DATE.COUPON.PREC ## Renvoie la date de coupon précédant la date de règlement. +CUMIPMT = CUMUL.INTER ## Renvoie l’intérêt cumulé payé sur un emprunt entre deux périodes. +CUMPRINC = CUMUL.PRINCPER ## Renvoie le montant cumulé des remboursements du capital d’un emprunt effectués entre deux périodes. +DB = DB ## Renvoie l’amortissement d’un bien pour une période spécifiée en utilisant la méthode de l’amortissement dégressif à taux fixe. +DDB = DDB ## Renvoie l’amortissement d’un bien pour toute période spécifiée, en utilisant la méthode de l’amortissement dégressif à taux double ou selon un coefficient à spécifier. +DISC = TAUX.ESCOMPTE ## Calcule le taux d’escompte d’une transaction. +DOLLARDE = PRIX.DEC ## Convertit un prix en euros, exprimé sous forme de fraction, en un prix en euros exprimé sous forme de nombre décimal. +DOLLARFR = PRIX.FRAC ## Convertit un prix en euros, exprimé sous forme de nombre décimal, en un prix en euros exprimé sous forme de fraction. +DURATION = DUREE ## Renvoie la durée, en années, d’un titre dont l’intérêt est perçu périodiquement. +EFFECT = TAUX.EFFECTIF ## Renvoie le taux d’intérêt annuel effectif. +FV = VC ## Renvoie la valeur future d’un investissement. +FVSCHEDULE = VC.PAIEMENTS ## Calcule la valeur future d’un investissement en appliquant une série de taux d’intérêt composites. +INTRATE = TAUX.INTERET ## Affiche le taux d’intérêt d’un titre totalement investi. +IPMT = INTPER ## Calcule le montant des intérêts d’un investissement pour une période donnée. +IRR = TRI ## Calcule le taux de rentabilité interne d’un investissement pour une succession de trésoreries. +ISPMT = ISPMT ## Calcule le montant des intérêts d’un investissement pour une période donnée. +MDURATION = DUREE.MODIFIEE ## Renvoie la durée de Macauley modifiée pour un titre ayant une valeur nominale hypothétique de 100_euros. +MIRR = TRIM ## Calcule le taux de rentabilité interne lorsque les paiements positifs et négatifs sont financés à des taux différents. +NOMINAL = TAUX.NOMINAL ## Calcule le taux d’intérêt nominal annuel. +NPER = NPM ## Renvoie le nombre de versements nécessaires pour rembourser un emprunt. +NPV = VAN ## Calcule la valeur actuelle nette d’un investissement basé sur une série de décaissements et un taux d’escompte. +ODDFPRICE = PRIX.PCOUPON.IRREG ## Renvoie le prix par tranche de valeur nominale de 100 euros d’un titre dont la première période de coupon est irrégulière. +ODDFYIELD = REND.PCOUPON.IRREG ## Renvoie le taux de rendement d’un titre dont la première période de coupon est irrégulière. +ODDLPRICE = PRIX.DCOUPON.IRREG ## Renvoie le prix par tranche de valeur nominale de 100 euros d’un titre dont la première période de coupon est irrégulière. +ODDLYIELD = REND.DCOUPON.IRREG ## Renvoie le taux de rendement d’un titre dont la dernière période de coupon est irrégulière. +PMT = VPM ## Calcule le paiement périodique d’un investissement donné. +PPMT = PRINCPER ## Calcule, pour une période donnée, la part de remboursement du principal d’un investissement. +PRICE = PRIX.TITRE ## Renvoie le prix d’un titre rapportant des intérêts périodiques, pour une valeur nominale de 100 euros. +PRICEDISC = VALEUR.ENCAISSEMENT ## Renvoie la valeur d’encaissement d’un escompte commercial, pour une valeur nominale de 100 euros. +PRICEMAT = PRIX.TITRE.ECHEANCE ## Renvoie le prix d’un titre dont la valeur nominale est 100 euros et qui rapporte des intérêts à l’échéance. +PV = PV ## Calcule la valeur actuelle d’un investissement. +RATE = TAUX ## Calcule le taux d’intérêt par période pour une annuité. +RECEIVED = VALEUR.NOMINALE ## Renvoie la valeur nominale à échéance d’un effet de commerce. +SLN = AMORLIN ## Calcule l’amortissement linéaire d’un bien pour une période donnée. +SYD = SYD ## Calcule l’amortissement d’un bien pour une période donnée sur la base de la méthode américaine Sum-of-Years Digits (amortissement dégressif à taux décroissant appliqué à une valeur constante). +TBILLEQ = TAUX.ESCOMPTE.R ## Renvoie le taux d’escompte rationnel d’un bon du Trésor. +TBILLPRICE = PRIX.BON.TRESOR ## Renvoie le prix d’un bon du Trésor d’une valeur nominale de 100 euros. +TBILLYIELD = RENDEMENT.BON.TRESOR ## Calcule le taux de rendement d’un bon du Trésor. +VDB = VDB ## Renvoie l’amortissement d’un bien pour une période spécifiée ou partielle en utilisant une méthode de l’amortissement dégressif à taux fixe. +XIRR = TRI.PAIEMENTS ## Calcule le taux de rentabilité interne d’un ensemble de paiements non périodiques. +XNPV = VAN.PAIEMENTS ## Renvoie la valeur actuelle nette d’un ensemble de paiements non périodiques. +YIELD = RENDEMENT.TITRE ## Calcule le rendement d’un titre rapportant des intérêts périodiquement. +YIELDDISC = RENDEMENT.SIMPLE ## Calcule le taux de rendement d’un emprunt à intérêt simple (par exemple, un bon du Trésor). +YIELDMAT = RENDEMENT.TITRE.ECHEANCE ## Renvoie le rendement annuel d’un titre qui rapporte des intérêts à l’échéance. + + +## +## Information functions Fonctions d’information +## +CELL = CELLULE ## Renvoie des informations sur la mise en forme, l’emplacement et le contenu d’une cellule. +ERROR.TYPE = TYPE.ERREUR ## Renvoie un nombre correspondant à un type d’erreur. +INFO = INFORMATIONS ## Renvoie des informations sur l’environnement d’exploitation actuel. +ISBLANK = ESTVIDE ## Renvoie VRAI si l’argument valeur est vide. +ISERR = ESTERR ## Renvoie VRAI si l’argument valeur fait référence à une valeur d’erreur, sauf #N/A. +ISERROR = ESTERREUR ## Renvoie VRAI si l’argument valeur fait référence à une valeur d’erreur. +ISEVEN = EST.PAIR ## Renvoie VRAI si le chiffre est pair. +ISLOGICAL = ESTLOGIQUE ## Renvoie VRAI si l’argument valeur fait référence à une valeur logique. +ISNA = ESTNA ## Renvoie VRAI si l’argument valeur fait référence à la valeur d’erreur #N/A. +ISNONTEXT = ESTNONTEXTE ## Renvoie VRAI si l’argument valeur ne se présente pas sous forme de texte. +ISNUMBER = ESTNUM ## Renvoie VRAI si l’argument valeur représente un nombre. +ISODD = EST.IMPAIR ## Renvoie VRAI si le chiffre est impair. +ISREF = ESTREF ## Renvoie VRAI si l’argument valeur est une référence. +ISTEXT = ESTTEXTE ## Renvoie VRAI si l’argument valeur se présente sous forme de texte. +N = N ## Renvoie une valeur convertie en nombre. +NA = NA ## Renvoie la valeur d’erreur #N/A. +TYPE = TYPE ## Renvoie un nombre indiquant le type de données d’une valeur. + + +## +## Logical functions Fonctions logiques +## +AND = ET ## Renvoie VRAI si tous ses arguments sont VRAI. +FALSE = FAUX ## Renvoie la valeur logique FAUX. +IF = SI ## Spécifie un test logique à effectuer. +IFERROR = SIERREUR ## Renvoie une valeur que vous spécifiez si une formule génère une erreur ; sinon, elle renvoie le résultat de la formule. +NOT = NON ## Inverse la logique de cet argument. +OR = OU ## Renvoie VRAI si un des arguments est VRAI. +TRUE = VRAI ## Renvoie la valeur logique VRAI. + + +## +## Lookup and reference functions Fonctions de recherche et de référence +## +ADDRESS = ADRESSE ## Renvoie une référence sous forme de texte à une seule cellule d’une feuille de calcul. +AREAS = ZONES ## Renvoie le nombre de zones dans une référence. +CHOOSE = CHOISIR ## Choisit une valeur dans une liste. +COLUMN = COLONNE ## Renvoie le numéro de colonne d’une référence. +COLUMNS = COLONNES ## Renvoie le nombre de colonnes dans une référence. +HLOOKUP = RECHERCHEH ## Effectue une recherche dans la première ligne d’une matrice et renvoie la valeur de la cellule indiquée. +HYPERLINK = LIEN_HYPERTEXTE ## Crée un raccourci ou un renvoi qui ouvre un document stocké sur un serveur réseau, sur un réseau Intranet ou sur Internet. +INDEX = INDEX ## Utilise un index pour choisir une valeur provenant d’une référence ou d’une matrice. +INDIRECT = INDIRECT ## Renvoie une référence indiquée par une valeur de texte. +LOOKUP = RECHERCHE ## Recherche des valeurs dans un vecteur ou une matrice. +MATCH = EQUIV ## Recherche des valeurs dans une référence ou une matrice. +OFFSET = DECALER ## Renvoie une référence décalée par rapport à une référence donnée. +ROW = LIGNE ## Renvoie le numéro de ligne d’une référence. +ROWS = LIGNES ## Renvoie le nombre de lignes dans une référence. +RTD = RTD ## Extrait les données en temps réel à partir d’un programme prenant en charge l’automation COM (Automation : utilisation des objets d'une application à partir d'une autre application ou d'un autre outil de développement. Autrefois appelée OLE Automation, Automation est une norme industrielle et une fonctionnalité du modèle d'objet COM (Component Object Model).). +TRANSPOSE = TRANSPOSE ## Renvoie la transposition d’une matrice. +VLOOKUP = RECHERCHEV ## Effectue une recherche dans la première colonne d’une matrice et se déplace sur la ligne pour renvoyer la valeur d’une cellule. + + +## +## Math and trigonometry functions Fonctions mathématiques et trigonométriques +## +ABS = ABS ## Renvoie la valeur absolue d’un nombre. +ACOS = ACOS ## Renvoie l’arccosinus d’un nombre. +ACOSH = ACOSH ## Renvoie le cosinus hyperbolique inverse d’un nombre. +ASIN = ASIN ## Renvoie l’arcsinus d’un nombre. +ASINH = ASINH ## Renvoie le sinus hyperbolique inverse d’un nombre. +ATAN = ATAN ## Renvoie l’arctangente d’un nombre. +ATAN2 = ATAN2 ## Renvoie l’arctangente des coordonnées x et y. +ATANH = ATANH ## Renvoie la tangente hyperbolique inverse d’un nombre. +CEILING = PLAFOND ## Arrondit un nombre au nombre entier le plus proche ou au multiple le plus proche de l’argument précision en s’éloignant de zéro. +COMBIN = COMBIN ## Renvoie le nombre de combinaisons que l’on peut former avec un nombre donné d’objets. +COS = COS ## Renvoie le cosinus d’un nombre. +COSH = COSH ## Renvoie le cosinus hyperbolique d’un nombre. +DEGREES = DEGRES ## Convertit des radians en degrés. +EVEN = PAIR ## Arrondit un nombre au nombre entier pair le plus proche en s’éloignant de zéro. +EXP = EXP ## Renvoie e élevé à la puissance d’un nombre donné. +FACT = FACT ## Renvoie la factorielle d’un nombre. +FACTDOUBLE = FACTDOUBLE ## Renvoie la factorielle double d’un nombre. +FLOOR = PLANCHER ## Arrondit un nombre en tendant vers 0 (zéro). +GCD = PGCD ## Renvoie le plus grand commun diviseur. +INT = ENT ## Arrondit un nombre à l’entier immédiatement inférieur. +LCM = PPCM ## Renvoie le plus petit commun multiple. +LN = LN ## Renvoie le logarithme népérien d’un nombre. +LOG = LOG ## Renvoie le logarithme d’un nombre dans la base spécifiée. +LOG10 = LOG10 ## Calcule le logarithme en base 10 d’un nombre. +MDETERM = DETERMAT ## Renvoie le déterminant d’une matrice. +MINVERSE = INVERSEMAT ## Renvoie la matrice inverse d’une matrice. +MMULT = PRODUITMAT ## Renvoie le produit de deux matrices. +MOD = MOD ## Renvoie le reste d’une division. +MROUND = ARRONDI.AU.MULTIPLE ## Donne l’arrondi d’un nombre au multiple spécifié. +MULTINOMIAL = MULTINOMIALE ## Calcule la multinomiale d’un ensemble de nombres. +ODD = IMPAIR ## Renvoie le nombre, arrondi à la valeur du nombre entier impair le plus proche en s’éloignant de zéro. +PI = PI ## Renvoie la valeur de pi. +POWER = PUISSANCE ## Renvoie la valeur du nombre élevé à une puissance. +PRODUCT = PRODUIT ## Multiplie ses arguments. +QUOTIENT = QUOTIENT ## Renvoie la partie entière du résultat d’une division. +RADIANS = RADIANS ## Convertit des degrés en radians. +RAND = ALEA ## Renvoie un nombre aléatoire compris entre 0 et 1. +RANDBETWEEN = ALEA.ENTRE.BORNES ## Renvoie un nombre aléatoire entre les nombres que vous spécifiez. +ROMAN = ROMAIN ## Convertit des chiffres arabes en chiffres romains, sous forme de texte. +ROUND = ARRONDI ## Arrondit un nombre au nombre de chiffres indiqué. +ROUNDDOWN = ARRONDI.INF ## Arrondit un nombre en tendant vers 0 (zéro). +ROUNDUP = ARRONDI.SUP ## Arrondit un nombre à l’entier supérieur, en s’éloignant de zéro. +SERIESSUM = SOMME.SERIES ## Renvoie la somme d’une série géométrique en s’appuyant sur la formule suivante : +SIGN = SIGNE ## Renvoie le signe d’un nombre. +SIN = SIN ## Renvoie le sinus d’un angle donné. +SINH = SINH ## Renvoie le sinus hyperbolique d’un nombre. +SQRT = RACINE ## Renvoie la racine carrée d’un nombre. +SQRTPI = RACINE.PI ## Renvoie la racine carrée de (nombre * pi). +SUBTOTAL = SOUS.TOTAL ## Renvoie un sous-total dans une liste ou une base de données. +SUM = SOMME ## Calcule la somme de ses arguments. +SUMIF = SOMME.SI ## Additionne les cellules spécifiées si elles répondent à un critère donné. +SUMIFS = SOMME.SI.ENS ## Ajoute les cellules d’une plage qui répondent à plusieurs critères. +SUMPRODUCT = SOMMEPROD ## Multiplie les valeurs correspondantes des matrices spécifiées et calcule la somme de ces produits. +SUMSQ = SOMME.CARRES ## Renvoie la somme des carrés des arguments. +SUMX2MY2 = SOMME.X2MY2 ## Renvoie la somme de la différence des carrés des valeurs correspondantes de deux matrices. +SUMX2PY2 = SOMME.X2PY2 ## Renvoie la somme de la somme des carrés des valeurs correspondantes de deux matrices. +SUMXMY2 = SOMME.XMY2 ## Renvoie la somme des carrés des différences entre les valeurs correspondantes de deux matrices. +TAN = TAN ## Renvoie la tangente d’un nombre. +TANH = TANH ## Renvoie la tangente hyperbolique d’un nombre. +TRUNC = TRONQUE ## Renvoie la partie entière d’un nombre. + + +## +## Statistical functions Fonctions statistiques +## +AVEDEV = ECART.MOYEN ## Renvoie la moyenne des écarts absolus observés dans la moyenne des points de données. +AVERAGE = MOYENNE ## Renvoie la moyenne de ses arguments. +AVERAGEA = AVERAGEA ## Renvoie la moyenne de ses arguments, nombres, texte et valeurs logiques inclus. +AVERAGEIF = MOYENNE.SI ## Renvoie la moyenne (arithmétique) de toutes les cellules d’une plage qui répondent à des critères donnés. +AVERAGEIFS = MOYENNE.SI.ENS ## Renvoie la moyenne (arithmétique) de toutes les cellules qui répondent à plusieurs critères. +BETADIST = LOI.BETA ## Renvoie la fonction de distribution cumulée. +BETAINV = BETA.INVERSE ## Renvoie l’inverse de la fonction de distribution cumulée pour une distribution bêta spécifiée. +BINOMDIST = LOI.BINOMIALE ## Renvoie la probabilité d’une variable aléatoire discrète suivant la loi binomiale. +CHIDIST = LOI.KHIDEUX ## Renvoie la probabilité unilatérale de la distribution khi-deux. +CHIINV = KHIDEUX.INVERSE ## Renvoie l’inverse de la probabilité unilatérale de la distribution khi-deux. +CHITEST = TEST.KHIDEUX ## Renvoie le test d’indépendance. +CONFIDENCE = INTERVALLE.CONFIANCE ## Renvoie l’intervalle de confiance pour une moyenne de population. +CORREL = COEFFICIENT.CORRELATION ## Renvoie le coefficient de corrélation entre deux séries de données. +COUNT = NB ## Détermine les nombres compris dans la liste des arguments. +COUNTA = NBVAL ## Détermine le nombre de valeurs comprises dans la liste des arguments. +COUNTBLANK = NB.VIDE ## Compte le nombre de cellules vides dans une plage. +COUNTIF = NB.SI ## Compte le nombre de cellules qui répondent à un critère donné dans une plage. +COUNTIFS = NB.SI.ENS ## Compte le nombre de cellules à l’intérieur d’une plage qui répondent à plusieurs critères. +COVAR = COVARIANCE ## Renvoie la covariance, moyenne des produits des écarts pour chaque série d’observations. +CRITBINOM = CRITERE.LOI.BINOMIALE ## Renvoie la plus petite valeur pour laquelle la distribution binomiale cumulée est inférieure ou égale à une valeur de critère. +DEVSQ = SOMME.CARRES.ECARTS ## Renvoie la somme des carrés des écarts. +EXPONDIST = LOI.EXPONENTIELLE ## Renvoie la distribution exponentielle. +FDIST = LOI.F ## Renvoie la distribution de probabilité F. +FINV = INVERSE.LOI.F ## Renvoie l’inverse de la distribution de probabilité F. +FISHER = FISHER ## Renvoie la transformation de Fisher. +FISHERINV = FISHER.INVERSE ## Renvoie l’inverse de la transformation de Fisher. +FORECAST = PREVISION ## Calcule une valeur par rapport à une tendance linéaire. +FREQUENCY = FREQUENCE ## Calcule la fréquence d’apparition des valeurs dans une plage de valeurs, puis renvoie des nombres sous forme de matrice verticale. +FTEST = TEST.F ## Renvoie le résultat d’un test F. +GAMMADIST = LOI.GAMMA ## Renvoie la probabilité d’une variable aléatoire suivant une loi Gamma. +GAMMAINV = LOI.GAMMA.INVERSE ## Renvoie, pour une probabilité donnée, la valeur d’une variable aléatoire suivant une loi Gamma. +GAMMALN = LNGAMMA ## Renvoie le logarithme népérien de la fonction Gamma, G(x) +GEOMEAN = MOYENNE.GEOMETRIQUE ## Renvoie la moyenne géométrique. +GROWTH = CROISSANCE ## Calcule des valeurs par rapport à une tendance exponentielle. +HARMEAN = MOYENNE.HARMONIQUE ## Renvoie la moyenne harmonique. +HYPGEOMDIST = LOI.HYPERGEOMETRIQUE ## Renvoie la probabilité d’une variable aléatoire discrète suivant une loi hypergéométrique. +INTERCEPT = ORDONNEE.ORIGINE ## Renvoie l’ordonnée à l’origine d’une droite de régression linéaire. +KURT = KURTOSIS ## Renvoie le kurtosis d’une série de données. +LARGE = GRANDE.VALEUR ## Renvoie la k-ième plus grande valeur d’une série de données. +LINEST = DROITEREG ## Renvoie les paramètres d’une tendance linéaire. +LOGEST = LOGREG ## Renvoie les paramètres d’une tendance exponentielle. +LOGINV = LOI.LOGNORMALE.INVERSE ## Renvoie l’inverse de la probabilité pour une variable aléatoire suivant la loi lognormale. +LOGNORMDIST = LOI.LOGNORMALE ## Renvoie la probabilité d’une variable aléatoire continue suivant une loi lognormale. +MAX = MAX ## Renvoie la valeur maximale contenue dans une liste d’arguments. +MAXA = MAXA ## Renvoie la valeur maximale d’une liste d’arguments, nombres, texte et valeurs logiques inclus. +MEDIAN = MEDIANE ## Renvoie la valeur médiane des nombres donnés. +MIN = MIN ## Renvoie la valeur minimale contenue dans une liste d’arguments. +MINA = MINA ## Renvoie la plus petite valeur d’une liste d’arguments, nombres, texte et valeurs logiques inclus. +MODE = MODE ## Renvoie la valeur la plus courante d’une série de données. +NEGBINOMDIST = LOI.BINOMIALE.NEG ## Renvoie la probabilité d’une variable aléatoire discrète suivant une loi binomiale négative. +NORMDIST = LOI.NORMALE ## Renvoie la probabilité d’une variable aléatoire continue suivant une loi normale. +NORMINV = LOI.NORMALE.INVERSE ## Renvoie, pour une probabilité donnée, la valeur d’une variable aléatoire suivant une loi normale standard. +NORMSDIST = LOI.NORMALE.STANDARD ## Renvoie la probabilité d’une variable aléatoire continue suivant une loi normale standard. +NORMSINV = LOI.NORMALE.STANDARD.INVERSE ## Renvoie l’inverse de la distribution cumulée normale standard. +PEARSON = PEARSON ## Renvoie le coefficient de corrélation d’échantillonnage de Pearson. +PERCENTILE = CENTILE ## Renvoie le k-ième centile des valeurs d’une plage. +PERCENTRANK = RANG.POURCENTAGE ## Renvoie le rang en pourcentage d’une valeur d’une série de données. +PERMUT = PERMUTATION ## Renvoie le nombre de permutations pour un nombre donné d’objets. +POISSON = LOI.POISSON ## Renvoie la probabilité d’une variable aléatoire suivant une loi de Poisson. +PROB = PROBABILITE ## Renvoie la probabilité que des valeurs d’une plage soient comprises entre deux limites. +QUARTILE = QUARTILE ## Renvoie le quartile d’une série de données. +RANK = RANG ## Renvoie le rang d’un nombre contenu dans une liste. +RSQ = COEFFICIENT.DETERMINATION ## Renvoie la valeur du coefficient de détermination R^2 d’une régression linéaire. +SKEW = COEFFICIENT.ASYMETRIE ## Renvoie l’asymétrie d’une distribution. +SLOPE = PENTE ## Renvoie la pente d’une droite de régression linéaire. +SMALL = PETITE.VALEUR ## Renvoie la k-ième plus petite valeur d’une série de données. +STANDARDIZE = CENTREE.REDUITE ## Renvoie une valeur centrée réduite. +STDEV = ECARTYPE ## Évalue l’écart type d’une population en se basant sur un échantillon de cette population. +STDEVA = STDEVA ## Évalue l’écart type d’une population en se basant sur un échantillon de cette population, nombres, texte et valeurs logiques inclus. +STDEVP = ECARTYPEP ## Calcule l’écart type d’une population à partir de la population entière. +STDEVPA = STDEVPA ## Calcule l’écart type d’une population à partir de l’ensemble de la population, nombres, texte et valeurs logiques inclus. +STEYX = ERREUR.TYPE.XY ## Renvoie l’erreur type de la valeur y prévue pour chaque x de la régression. +TDIST = LOI.STUDENT ## Renvoie la probabilité d’une variable aléatoire suivant une loi T de Student. +TINV = LOI.STUDENT.INVERSE ## Renvoie, pour une probabilité donnée, la valeur d’une variable aléatoire suivant une loi T de Student. +TREND = TENDANCE ## Renvoie des valeurs par rapport à une tendance linéaire. +TRIMMEAN = MOYENNE.REDUITE ## Renvoie la moyenne de l’intérieur d’une série de données. +TTEST = TEST.STUDENT ## Renvoie la probabilité associée à un test T de Student. +VAR = VAR ## Calcule la variance sur la base d’un échantillon. +VARA = VARA ## Estime la variance d’une population en se basant sur un échantillon de cette population, nombres, texte et valeurs logiques incluses. +VARP = VAR.P ## Calcule la variance sur la base de l’ensemble de la population. +VARPA = VARPA ## Calcule la variance d’une population en se basant sur la population entière, nombres, texte et valeurs logiques inclus. +WEIBULL = LOI.WEIBULL ## Renvoie la probabilité d’une variable aléatoire suivant une loi de Weibull. +ZTEST = TEST.Z ## Renvoie la valeur de probabilité unilatérale d’un test z. + + +## +## Text functions Fonctions de texte +## +ASC = ASC ## Change les caractères anglais ou katakana à pleine chasse (codés sur deux octets) à l’intérieur d’une chaîne de caractères en caractères à demi-chasse (codés sur un octet). +BAHTTEXT = BAHTTEXT ## Convertit un nombre en texte en utilisant le format monétaire ß (baht). +CHAR = CAR ## Renvoie le caractère spécifié par le code numérique. +CLEAN = EPURAGE ## Supprime tous les caractères de contrôle du texte. +CODE = CODE ## Renvoie le numéro de code du premier caractère du texte. +CONCATENATE = CONCATENER ## Assemble plusieurs éléments textuels de façon à n’en former qu’un seul. +DOLLAR = EURO ## Convertit un nombre en texte en utilisant le format monétaire € (euro). +EXACT = EXACT ## Vérifie si deux valeurs de texte sont identiques. +FIND = TROUVE ## Trouve un valeur textuelle dans une autre, en respectant la casse. +FINDB = TROUVERB ## Trouve un valeur textuelle dans une autre, en respectant la casse. +FIXED = CTXT ## Convertit un nombre au format texte avec un nombre de décimales spécifié. +JIS = JIS ## Change les caractères anglais ou katakana à demi-chasse (codés sur un octet) à l’intérieur d’une chaîne de caractères en caractères à à pleine chasse (codés sur deux octets). +LEFT = GAUCHE ## Renvoie des caractères situés à l’extrême gauche d’une chaîne de caractères. +LEFTB = GAUCHEB ## Renvoie des caractères situés à l’extrême gauche d’une chaîne de caractères. +LEN = NBCAR ## Renvoie le nombre de caractères contenus dans une chaîne de texte. +LENB = LENB ## Renvoie le nombre de caractères contenus dans une chaîne de texte. +LOWER = MINUSCULE ## Convertit le texte en minuscules. +MID = STXT ## Renvoie un nombre déterminé de caractères d’une chaîne de texte à partir de la position que vous indiquez. +MIDB = STXTB ## Renvoie un nombre déterminé de caractères d’une chaîne de texte à partir de la position que vous indiquez. +PHONETIC = PHONETIQUE ## Extrait les caractères phonétiques (furigana) d’une chaîne de texte. +PROPER = NOMPROPRE ## Met en majuscules la première lettre de chaque mot dans une chaîne textuelle. +REPLACE = REMPLACER ## Remplace des caractères dans un texte. +REPLACEB = REMPLACERB ## Remplace des caractères dans un texte. +REPT = REPT ## Répète un texte un certain nombre de fois. +RIGHT = DROITE ## Renvoie des caractères situés à l’extrême droite d’une chaîne de caractères. +RIGHTB = DROITEB ## Renvoie des caractères situés à l’extrême droite d’une chaîne de caractères. +SEARCH = CHERCHE ## Trouve un texte dans un autre texte (sans respecter la casse). +SEARCHB = CHERCHERB ## Trouve un texte dans un autre texte (sans respecter la casse). +SUBSTITUTE = SUBSTITUE ## Remplace l’ancien texte d’une chaîne de caractères par un nouveau. +T = T ## Convertit ses arguments en texte. +TEXT = TEXTE ## Convertit un nombre au format texte. +TRIM = SUPPRESPACE ## Supprime les espaces du texte. +UPPER = MAJUSCULE ## Convertit le texte en majuscules. +VALUE = CNUM ## Convertit un argument textuel en nombre diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/hu/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/hu/_notes/dwsync.xml new file mode 100644 index 0000000..2d0e9a0 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/hu/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559947670098" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559948102650" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752251370300" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752251564302" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461243723650" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461246256608" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752251564302" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752251370300" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/hu/config b/site/config/PHPExcel/Classes/PHPExcel/locale/hu/config new file mode 100644 index 0000000..725b569 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/hu/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = Ft + + +## +## Excel Error Codes (For future use) +## +NULL = #NULLA! +DIV0 = #ZÉRÓOSZTÓ! +VALUE = #ÉRTÉK! +REF = #HIV! +NAME = #NÉV? +NUM = #SZÁM! +NA = #HIÁNYZIK diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/hu/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/hu/functions new file mode 100644 index 0000000..a3855c0 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/hu/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Bővítmények és automatizálási függvények +## +GETPIVOTDATA = KIMUTATÁSADATOT.VESZ ## A kimutatásokban tárolt adatok visszaadására használható. + + +## +## Cube functions Kockafüggvények +## +CUBEKPIMEMBER = KOCKA.FŐTELJMUT ## Egy fő teljesítménymutató (KPI) nevét, tulajdonságát és mértékegységét adja eredményül, a nevet és a tulajdonságot megjeleníti a cellában. A KPI-k számszerűsíthető mérési lehetőséget jelentenek – ilyen mutató például a havi bruttó nyereség vagy az egy alkalmazottra jutó negyedéves forgalom –, egy szervezet teljesítményének nyomonkövetésére használhatók. +CUBEMEMBER = KOCKA.TAG ## Kockahierachia tagját vagy rekordját adja eredményül. Ellenőrizhető vele, hogy szerepel-e a kockában az adott tag vagy rekord. +CUBEMEMBERPROPERTY = KOCKA.TAG.TUL ## A kocka egyik tagtulajdonságának értékét adja eredményül. Használatával ellenőrizhető, hogy szerepel-e egy tagnév a kockában, eredménye pedig az erre a tagra vonatkozó, megadott tulajdonság. +CUBERANKEDMEMBER = KOCKA.HALM.ELEM ## Egy halmaz rangsor szerinti n-edik tagját adja eredményül. Használatával egy halmaz egy vagy több elemét kaphatja meg, például a legnagyobb teljesítményű üzletkötőt vagy a 10 legjobb tanulót. +CUBESET = KOCKA.HALM ## Számított tagok vagy rekordok halmazát adja eredményül, ehhez egy beállított kifejezést elküld a kiszolgálón található kockának, majd ezt a halmazt adja vissza a Microsoft Office Excel alkalmazásnak. +CUBESETCOUNT = KOCKA.HALM.DB ## Egy halmaz elemszámát adja eredményül. +CUBEVALUE = KOCKA.ÉRTÉK ## Kockából összesített értéket ad eredményül. + + +## +## Database functions Adatbázis-kezelő függvények +## +DAVERAGE = AB.ÁTLAG ## A kijelölt adatbáziselemek átlagát számítja ki. +DCOUNT = AB.DARAB ## Megszámolja, hogy az adatbázisban hány cella tartalmaz számokat. +DCOUNTA = AB.DARAB2 ## Megszámolja az adatbázisban lévő nem üres cellákat. +DGET = AB.MEZŐ ## Egy adatbázisból egyetlen olyan rekordot ad vissza, amely megfelel a megadott feltételeknek. +DMAX = AB.MAX ## A kiválasztott adatbáziselemek közül a legnagyobb értéket adja eredményül. +DMIN = AB.MIN ## A kijelölt adatbáziselemek közül a legkisebb értéket adja eredményül. +DPRODUCT = AB.SZORZAT ## Az adatbázis megadott feltételeknek eleget tevő rekordjaira összeszorozza a megadott mezőben található számértékeket, és eredményül ezt a szorzatot adja. +DSTDEV = AB.SZÓRÁS ## A kijelölt adatbáziselemek egy mintája alapján megbecsüli a szórást. +DSTDEVP = AB.SZÓRÁS2 ## A kijelölt adatbáziselemek teljes sokasága alapján kiszámítja a szórást. +DSUM = AB.SZUM ## Összeadja a feltételnek megfelelő adatbázisrekordok mezőoszlopában a számokat. +DVAR = AB.VAR ## A kijelölt adatbáziselemek mintája alapján becslést ad a szórásnégyzetre. +DVARP = AB.VAR2 ## A kijelölt adatbáziselemek teljes sokasága alapján kiszámítja a szórásnégyzetet. + + +## +## Date and time functions Dátumfüggvények +## +DATE = DÁTUM ## Adott dátum dátumértékét adja eredményül. +DATEVALUE = DÁTUMÉRTÉK ## Szövegként megadott dátumot dátumértékké alakít át. +DAY = NAP ## Dátumértéket a hónap egy napjává (0-31) alakít. +DAYS360 = NAP360 ## Két dátum közé eső napok számát számítja ki a 360 napos év alapján. +EDATE = EDATE ## Adott dátumnál adott számú hónappal korábbi vagy későbbi dátum dátumértékét adja eredményül. +EOMONTH = EOMONTH ## Adott dátumnál adott számú hónappal korábbi vagy későbbi hónap utolsó napjának dátumértékét adja eredményül. +HOUR = ÓRA ## Időértéket órákká alakít. +MINUTE = PERC ## Időértéket percekké alakít. +MONTH = HÓNAP ## Időértéket hónapokká alakít. +NETWORKDAYS = NETWORKDAYS ## Két dátum között a teljes munkanapok számát adja meg. +NOW = MOST ## A napi dátum dátumértékét és a pontos idő időértékét adja eredményül. +SECOND = MPERC ## Időértéket másodpercekké alakít át. +TIME = IDŐ ## Adott időpont időértékét adja meg. +TIMEVALUE = IDŐÉRTÉK ## Szövegként megadott időpontot időértékké alakít át. +TODAY = MA ## A napi dátum dátumértékét adja eredményül. +WEEKDAY = HÉT.NAPJA ## Dátumértéket a hét napjává alakítja át. +WEEKNUM = WEEKNUM ## Visszatérési értéke egy szám, amely azt mutatja meg, hogy a megadott dátum az év hányadik hetére esik. +WORKDAY = WORKDAY ## Adott dátumnál adott munkanappal korábbi vagy későbbi dátum dátumértékét adja eredményül. +YEAR = ÉV ## Sorszámot évvé alakít át. +YEARFRAC = YEARFRAC ## Az adott dátumok közötti teljes napok számát törtévként adja meg. + + +## +## Engineering functions Mérnöki függvények +## +BESSELI = BESSELI ## Az In(x) módosított Bessel-függvény értékét adja eredményül. +BESSELJ = BESSELJ ## A Jn(x) Bessel-függvény értékét adja eredményül. +BESSELK = BESSELK ## A Kn(x) módosított Bessel-függvény értékét adja eredményül. +BESSELY = BESSELY ## Az Yn(x) módosított Bessel-függvény értékét adja eredményül. +BIN2DEC = BIN2DEC ## Bináris számot decimálissá alakít át. +BIN2HEX = BIN2HEX ## Bináris számot hexadecimálissá alakít át. +BIN2OCT = BIN2OCT ## Bináris számot oktálissá alakít át. +COMPLEX = COMPLEX ## Valós és képzetes részből komplex számot képez. +CONVERT = CONVERT ## Mértékegységeket vált át. +DEC2BIN = DEC2BIN ## Decimális számot binárissá alakít át. +DEC2HEX = DEC2HEX ## Decimális számot hexadecimálissá alakít át. +DEC2OCT = DEC2OCT ## Decimális számot oktálissá alakít át. +DELTA = DELTA ## Azt vizsgálja, hogy két érték egyenlő-e. +ERF = ERF ## A hibafüggvény értékét adja eredményül. +ERFC = ERFC ## A kiegészített hibafüggvény értékét adja eredményül. +GESTEP = GESTEP ## Azt vizsgálja, hogy egy szám nagyobb-e adott küszöbértéknél. +HEX2BIN = HEX2BIN ## Hexadecimális számot binárissá alakít át. +HEX2DEC = HEX2DEC ## Hexadecimális számot decimálissá alakít át. +HEX2OCT = HEX2OCT ## Hexadecimális számot oktálissá alakít át. +IMABS = IMABS ## Komplex szám abszolút értékét (modulusát) adja eredményül. +IMAGINARY = IMAGINARY ## Komplex szám képzetes részét adja eredményül. +IMARGUMENT = IMARGUMENT ## A komplex szám radiánban kifejezett théta argumentumát adja eredményül. +IMCONJUGATE = IMCONJUGATE ## Komplex szám komplex konjugáltját adja eredményül. +IMCOS = IMCOS ## Komplex szám koszinuszát adja eredményül. +IMDIV = IMDIV ## Két komplex szám hányadosát adja eredményül. +IMEXP = IMEXP ## Az e szám komplex kitevőjű hatványát adja eredményül. +IMLN = IMLN ## Komplex szám természetes logaritmusát adja eredményül. +IMLOG10 = IMLOG10 ## Komplex szám tízes alapú logaritmusát adja eredményül. +IMLOG2 = IMLOG2 ## Komplex szám kettes alapú logaritmusát adja eredményül. +IMPOWER = IMPOWER ## Komplex szám hatványát adja eredményül. +IMPRODUCT = IMPRODUCT ## Komplex számok szorzatát adja eredményül. +IMREAL = IMREAL ## Komplex szám valós részét adja eredményül. +IMSIN = IMSIN ## Komplex szám szinuszát adja eredményül. +IMSQRT = IMSQRT ## Komplex szám négyzetgyökét adja eredményül. +IMSUB = IMSUB ## Két komplex szám különbségét adja eredményül. +IMSUM = IMSUM ## Komplex számok összegét adja eredményül. +OCT2BIN = OCT2BIN ## Oktális számot binárissá alakít át. +OCT2DEC = OCT2DEC ## Oktális számot decimálissá alakít át. +OCT2HEX = OCT2HEX ## Oktális számot hexadecimálissá alakít át. + + +## +## Financial functions Pénzügyi függvények +## +ACCRINT = ACCRINT ## Periodikusan kamatozó értékpapír felszaporodott kamatát adja eredményül. +ACCRINTM = ACCRINTM ## Lejáratkor kamatozó értékpapír felszaporodott kamatát adja eredményül. +AMORDEGRC = AMORDEGRC ## Állóeszköz lineáris értékcsökkenését adja meg az egyes könyvelési időszakokra vonatkozóan. +AMORLINC = AMORLINC ## Az egyes könyvelési időszakokban az értékcsökkenést adja meg. +COUPDAYBS = COUPDAYBS ## A szelvényidőszak kezdetétől a kifizetés időpontjáig eltelt napokat adja vissza. +COUPDAYS = COUPDAYS ## A kifizetés időpontját magában foglaló szelvényperiódus hosszát adja meg napokban. +COUPDAYSNC = COUPDAYSNC ## A kifizetés időpontja és a legközelebbi szelvénydátum közötti napok számát adja meg. +COUPNCD = COUPNCD ## A kifizetést követő legelső szelvénydátumot adja eredményül. +COUPNUM = COUPNUM ## A kifizetés és a lejárat időpontja között kifizetendő szelvények számát adja eredményül. +COUPPCD = COUPPCD ## A kifizetés előtti utolsó szelvénydátumot adja eredményül. +CUMIPMT = CUMIPMT ## Két fizetési időszak között kifizetett kamat halmozott értékét adja eredményül. +CUMPRINC = CUMPRINC ## Két fizetési időszak között kifizetett részletek halmozott (kamatot nem tartalmazó) értékét adja eredményül. +DB = KCS2 ## Eszköz adott időszak alatti értékcsökkenését számítja ki a lineáris leírási modell alkalmazásával. +DDB = KCSA ## Eszköz értékcsökkenését számítja ki adott időszakra vonatkozóan a progresszív vagy egyéb megadott leírási modell alkalmazásával. +DISC = DISC ## Értékpapír leszámítolási kamatlábát adja eredményül. +DOLLARDE = DOLLARDE ## Egy közönséges törtként megadott számot tizedes törtté alakít át. +DOLLARFR = DOLLARFR ## Tizedes törtként megadott számot közönséges törtté alakít át. +DURATION = DURATION ## Periodikus kamatfizetésű értékpapír éves kamatérzékenységét adja eredményül. +EFFECT = EFFECT ## Az éves tényleges kamatláb értékét adja eredményül. +FV = JBÉ ## Befektetés jövőbeli értékét számítja ki. +FVSCHEDULE = FVSCHEDULE ## A kezdőtőke adott kamatlábak szerint megnövelt jövőbeli értékét adja eredményül. +INTRATE = INTRATE ## A lejáratig teljesen lekötött értékpapír kamatrátáját adja eredményül. +IPMT = RRÉSZLET ## Hiteltörlesztésen belül a tőketörlesztés nagyságát számítja ki adott időszakra. +IRR = BMR ## A befektetés belső megtérülési rátáját számítja ki pénzáramláshoz. +ISPMT = LRÉSZLETKAMAT ## A befektetés adott időszakára fizetett kamatot számítja ki. +MDURATION = MDURATION ## Egy 100 Ft névértékű értékpapír Macauley-féle módosított kamatérzékenységét adja eredményül. +MIRR = MEGTÉRÜLÉS ## A befektetés belső megtérülési rátáját számítja ki a költségek és a bevételek különböző kamatlába mellett. +NOMINAL = NOMINAL ## Az éves névleges kamatláb értékét adja eredményül. +NPER = PER.SZÁM ## A törlesztési időszakok számát adja meg. +NPV = NMÉ ## Befektetéshez kapcsolódó pénzáramlás nettó jelenértékét számítja ki ismert pénzáramlás és kamatláb mellett. +ODDFPRICE = ODDFPRICE ## Egy 100 Ft névértékű, a futamidő elején töredék-időszakos értékpapír árát adja eredményül. +ODDFYIELD = ODDFYIELD ## A futamidő elején töredék-időszakos értékpapír hozamát adja eredményül. +ODDLPRICE = ODDLPRICE ## Egy 100 Ft névértékű, a futamidő végén töredék-időszakos értékpapír árát adja eredményül. +ODDLYIELD = ODDLYIELD ## A futamidő végén töredék-időszakos értékpapír hozamát adja eredményül. +PMT = RÉSZLET ## A törlesztési időszakra vonatkozó törlesztési összeget számítja ki. +PPMT = PRÉSZLET ## Hiteltörlesztésen belül a tőketörlesztés nagyságát számítja ki adott időszakra. +PRICE = PRICE ## Egy 100 Ft névértékű, periodikusan kamatozó értékpapír árát adja eredményül. +PRICEDISC = PRICEDISC ## Egy 100 Ft névértékű leszámítolt értékpapír árát adja eredményül. +PRICEMAT = PRICEMAT ## Egy 100 Ft névértékű, a lejáratkor kamatozó értékpapír árát adja eredményül. +PV = MÉ ## Befektetés jelenlegi értékét számítja ki. +RATE = RÁTA ## Egy törlesztési időszakban az egy időszakra eső kamatláb nagyságát számítja ki. +RECEIVED = RECEIVED ## A lejáratig teljesen lekötött értékpapír lejáratakor kapott összegét adja eredményül. +SLN = LCSA ## Tárgyi eszköz egy időszakra eső amortizációját adja meg bruttó érték szerinti lineáris leírási kulcsot alkalmazva. +SYD = SYD ## Tárgyi eszköz értékcsökkenését számítja ki adott időszakra az évek számjegyösszegével dolgozó módszer alapján. +TBILLEQ = TBILLEQ ## Kincstárjegy kötvény-egyenértékű hozamát adja eredményül. +TBILLPRICE = TBILLPRICE ## Egy 100 Ft névértékű kincstárjegy árát adja eredményül. +TBILLYIELD = TBILLYIELD ## Kincstárjegy hozamát adja eredményül. +VDB = ÉCSRI ## Tárgyi eszköz amortizációját számítja ki megadott vagy részidőszakra a csökkenő egyenleg módszerének alkalmazásával. +XIRR = XIRR ## Ütemezett készpénzforgalom (cash flow) belső megtérülési kamatrátáját adja eredményül. +XNPV = XNPV ## Ütemezett készpénzforgalom (cash flow) nettó jelenlegi értékét adja eredményül. +YIELD = YIELD ## Periodikusan kamatozó értékpapír hozamát adja eredményül. +YIELDDISC = YIELDDISC ## Leszámítolt értékpapír (például kincstárjegy) éves hozamát adja eredményül. +YIELDMAT = YIELDMAT ## Lejáratkor kamatozó értékpapír éves hozamát adja eredményül. + + +## +## Information functions Információs függvények +## +CELL = CELLA ## Egy cella formátumára, elhelyezkedésére vagy tartalmára vonatkozó adatokat ad eredményül. +ERROR.TYPE = HIBA.TÍPUS ## Egy hibatípushoz tartozó számot ad eredményül. +INFO = INFÓ ## A rendszer- és munkakörnyezet pillanatnyi állapotáról ad felvilágosítást. +ISBLANK = ÜRES ## Eredménye IGAZ, ha az érték üres. +ISERR = HIBA ## Eredménye IGAZ, ha az érték valamelyik hibaérték a #HIÁNYZIK kivételével. +ISERROR = HIBÁS ## Eredménye IGAZ, ha az érték valamelyik hibaérték. +ISEVEN = ISEVEN ## Eredménye IGAZ, ha argumentuma páros szám. +ISLOGICAL = LOGIKAI ## Eredménye IGAZ, ha az érték logikai érték. +ISNA = NINCS ## Eredménye IGAZ, ha az érték a #HIÁNYZIK hibaérték. +ISNONTEXT = NEM.SZÖVEG ## Eredménye IGAZ, ha az érték nem szöveg. +ISNUMBER = SZÁM ## Eredménye IGAZ, ha az érték szám. +ISODD = ISODD ## Eredménye IGAZ, ha argumentuma páratlan szám. +ISREF = HIVATKOZÁS ## Eredménye IGAZ, ha az érték hivatkozás. +ISTEXT = SZÖVEG.E ## Eredménye IGAZ, ha az érték szöveg. +N = N ## Argumentumának értékét számmá alakítja. +NA = HIÁNYZIK ## Eredménye a #HIÁNYZIK hibaérték. +TYPE = TÍPUS ## Érték adattípusának azonosítószámát adja eredményül. + + +## +## Logical functions Logikai függvények +## +AND = ÉS ## Eredménye IGAZ, ha minden argumentuma IGAZ. +FALSE = HAMIS ## A HAMIS logikai értéket adja eredményül. +IF = HA ## Logikai vizsgálatot hajt végre. +IFERROR = HAHIBA ## A megadott értéket adja vissza, ha egy képlet hibához vezet; más esetben a képlet értékét adja eredményül. +NOT = NEM ## Argumentuma értékének ellentettjét adja eredményül. +OR = VAGY ## Eredménye IGAZ, ha bármely argumentuma IGAZ. +TRUE = IGAZ ## Az IGAZ logikai értéket adja eredményül. + + +## +## Lookup and reference functions Keresési és hivatkozási függvények +## +ADDRESS = CÍM ## A munkalap egy cellájára való hivatkozást adja szövegként eredményül. +AREAS = TERÜLET ## Hivatkozásban a területek számát adja eredményül. +CHOOSE = VÁLASZT ## Értékek listájából választ ki egy elemet. +COLUMN = OSZLOP ## Egy hivatkozás oszlopszámát adja eredményül. +COLUMNS = OSZLOPOK ## A hivatkozásban található oszlopok számát adja eredményül. +HLOOKUP = VKERES ## A megadott tömb felső sorában adott értékű elemet keres, és a megtalált elem oszlopából adott sorban elhelyezkedő értékkel tér vissza. +HYPERLINK = HIPERHIVATKOZÁS ## Hálózati kiszolgálón, intraneten vagy az interneten tárolt dokumentumot megnyitó parancsikont vagy hivatkozást hoz létre. +INDEX = INDEX ## Tömb- vagy hivatkozás indexszel megadott értékét adja vissza. +INDIRECT = INDIREKT ## Szöveg megadott hivatkozást ad eredményül. +LOOKUP = KERES ## Vektorban vagy tömbben keres meg értékeket. +MATCH = HOL.VAN ## Hivatkozásban vagy tömbben értékeket keres. +OFFSET = OFSZET ## Hivatkozás egy másik hivatkozástól számított távolságát adja meg. +ROW = SOR ## Egy hivatkozás sorának számát adja meg. +ROWS = SOROK ## Egy hivatkozás sorainak számát adja meg. +RTD = RTD ## Valós idejű adatokat keres vissza a COM automatizmust (automatizálás: Egy alkalmazás objektumaival való munka másik alkalmazásból vagy fejlesztőeszközből. A korábban OLE automatizmusnak nevezett automatizálás iparági szabvány, a Component Object Model (COM) szolgáltatása.) támogató programból. +TRANSPOSE = TRANSZPONÁLÁS ## Egy tömb transzponáltját adja eredményül. +VLOOKUP = FKERES ## A megadott tömb bal szélső oszlopában megkeres egy értéket, majd annak sora és a megadott oszlop metszéspontjában levő értéked adja eredményül. + + +## +## Math and trigonometry functions Matematikai és trigonometrikus függvények +## +ABS = ABS ## Egy szám abszolút értékét adja eredményül. +ACOS = ARCCOS ## Egy szám arkusz koszinuszát számítja ki. +ACOSH = ACOSH ## Egy szám inverz koszinusz hiperbolikuszát számítja ki. +ASIN = ARCSIN ## Egy szám arkusz szinuszát számítja ki. +ASINH = ASINH ## Egy szám inverz szinusz hiperbolikuszát számítja ki. +ATAN = ARCTAN ## Egy szám arkusz tangensét számítja ki. +ATAN2 = ARCTAN2 ## X és y koordináták alapján számítja ki az arkusz tangens értéket. +ATANH = ATANH ## A szám inverz tangens hiperbolikuszát számítja ki. +CEILING = PLAFON ## Egy számot a legközelebbi egészre vagy a pontosságként megadott érték legközelebb eső többszörösére kerekít. +COMBIN = KOMBINÁCIÓK ## Adott számú objektum összes lehetséges kombinációinak számát számítja ki. +COS = COS ## Egy szám koszinuszát számítja ki. +COSH = COSH ## Egy szám koszinusz hiperbolikuszát számítja ki. +DEGREES = FOK ## Radiánt fokká alakít át. +EVEN = PÁROS ## Egy számot a legközelebbi páros egész számra kerekít. +EXP = KITEVŐ ## Az e adott kitevőjű hatványát adja eredményül. +FACT = FAKT ## Egy szám faktoriálisát számítja ki. +FACTDOUBLE = FACTDOUBLE ## Egy szám dupla faktoriálisát adja eredményül. +FLOOR = PADLÓ ## Egy számot lefelé, a nulla felé kerekít. +GCD = GCD ## A legnagyobb közös osztót adja eredményül. +INT = INT ## Egy számot lefelé kerekít a legközelebbi egészre. +LCM = LCM ## A legkisebb közös többszöröst adja eredményül. +LN = LN ## Egy szám természetes logaritmusát számítja ki. +LOG = LOG ## Egy szám adott alapú logaritmusát számítja ki. +LOG10 = LOG10 ## Egy szám 10-es alapú logaritmusát számítja ki. +MDETERM = MDETERM ## Egy tömb mátrix-determinánsát számítja ki. +MINVERSE = INVERZ.MÁTRIX ## Egy tömb mátrix inverzét adja eredményül. +MMULT = MSZORZAT ## Két tömb mátrix-szorzatát adja meg. +MOD = MARADÉK ## Egy szám osztási maradékát adja eredményül. +MROUND = MROUND ## A kívánt többszörösére kerekített értéket ad eredményül. +MULTINOMIAL = MULTINOMIAL ## Számhalmaz multinomiálisát adja eredményül. +ODD = PÁRATLAN ## Egy számot a legközelebbi páratlan számra kerekít. +PI = PI ## A pi matematikai állandót adja vissza. +POWER = HATVÁNY ## Egy szám adott kitevőjű hatványát számítja ki. +PRODUCT = SZORZAT ## Argumentumai szorzatát számítja ki. +QUOTIENT = QUOTIENT ## Egy hányados egész részét adja eredményül. +RADIANS = RADIÁN ## Fokot radiánná alakít át. +RAND = VÉL ## Egy 0 és 1 közötti véletlen számot ad eredményül. +RANDBETWEEN = RANDBETWEEN ## Megadott számok közé eső véletlen számot állít elő. +ROMAN = RÓMAI ## Egy számot római számokkal kifejezve szövegként ad eredményül. +ROUND = KEREKÍTÉS ## Egy számot adott számú számjegyre kerekít. +ROUNDDOWN = KEREKÍTÉS.LE ## Egy számot lefelé, a nulla felé kerekít. +ROUNDUP = KEREKÍTÉS.FEL ## Egy számot felfelé, a nullától távolabbra kerekít. +SERIESSUM = SERIESSUM ## Hatványsor összegét adja eredményül. +SIGN = ELŐJEL ## Egy szám előjelét adja meg. +SIN = SIN ## Egy szög szinuszát számítja ki. +SINH = SINH ## Egy szám szinusz hiperbolikuszát számítja ki. +SQRT = GYÖK ## Egy szám pozitív négyzetgyökét számítja ki. +SQRTPI = SQRTPI ## A (szám*pi) négyzetgyökét adja eredményül. +SUBTOTAL = RÉSZÖSSZEG ## Lista vagy adatbázis részösszegét adja eredményül. +SUM = SZUM ## Összeadja az argumentumlistájában lévő számokat. +SUMIF = SZUMHA ## A megadott feltételeknek eleget tevő cellákban található értékeket adja össze. +SUMIFS = SZUMHATÖBB ## Több megadott feltételnek eleget tévő tartománycellák összegét adja eredményül. +SUMPRODUCT = SZORZATÖSSZEG ## A megfelelő tömbelemek szorzatának összegét számítja ki. +SUMSQ = NÉGYZETÖSSZEG ## Argumentumai négyzetének összegét számítja ki. +SUMX2MY2 = SZUMX2BŐLY2 ## Két tömb megfelelő elemei négyzetének különbségét összegzi. +SUMX2PY2 = SZUMX2MEGY2 ## Két tömb megfelelő elemei négyzetének összegét összegzi. +SUMXMY2 = SZUMXBŐLY2 ## Két tömb megfelelő elemei különbségének négyzetösszegét számítja ki. +TAN = TAN ## Egy szám tangensét számítja ki. +TANH = TANH ## Egy szám tangens hiperbolikuszát számítja ki. +TRUNC = CSONK ## Egy számot egésszé csonkít. + + +## +## Statistical functions Statisztikai függvények +## +AVEDEV = ÁTL.ELTÉRÉS ## Az adatpontoknak átlaguktól való átlagos abszolút eltérését számítja ki. +AVERAGE = ÁTLAG ## Argumentumai átlagát számítja ki. +AVERAGEA = ÁTLAGA ## Argumentumai átlagát számítja ki (beleértve a számokat, szöveget és logikai értékeket). +AVERAGEIF = ÁTLAGHA ## A megadott feltételnek eleget tévő tartomány celláinak átlagát (számtani közepét) adja eredményül. +AVERAGEIFS = ÁTLAGHATÖBB ## A megadott feltételeknek eleget tévő cellák átlagát (számtani közepét) adja eredményül. +BETADIST = BÉTA.ELOSZLÁS ## A béta-eloszlás függvényt számítja ki. +BETAINV = INVERZ.BÉTA ## Adott béta-eloszláshoz kiszámítja a béta eloszlásfüggvény inverzét. +BINOMDIST = BINOM.ELOSZLÁS ## A diszkrét binomiális eloszlás valószínűségértékét számítja ki. +CHIDIST = KHI.ELOSZLÁS ## A khi-négyzet-eloszlás egyszélű valószínűségértékét számítja ki. +CHIINV = INVERZ.KHI ## A khi-négyzet-eloszlás egyszélű valószínűségértékének inverzét számítja ki. +CHITEST = KHI.PRÓBA ## Függetlenségvizsgálatot hajt végre. +CONFIDENCE = MEGBÍZHATÓSÁG ## Egy statisztikai sokaság várható értékének megbízhatósági intervallumát adja eredményül. +CORREL = KORREL ## Két adathalmaz korrelációs együtthatóját számítja ki. +COUNT = DARAB ## Megszámolja, hogy argumentumlistájában hány szám található. +COUNTA = DARAB2 ## Megszámolja, hogy argumentumlistájában hány érték található. +COUNTBLANK = DARABÜRES ## Egy tartományban összeszámolja az üres cellákat. +COUNTIF = DARABTELI ## Egy tartományban összeszámolja azokat a cellákat, amelyek eleget tesznek a megadott feltételnek. +COUNTIFS = DARABHATÖBB ## Egy tartományban összeszámolja azokat a cellákat, amelyek eleget tesznek több feltételnek. +COVAR = KOVAR ## A kovarianciát, azaz a páronkénti eltérések szorzatának átlagát számítja ki. +CRITBINOM = KRITBINOM ## Azt a legkisebb számot adja eredményül, amelyre a binomiális eloszlásfüggvény értéke nem kisebb egy adott határértéknél. +DEVSQ = SQ ## Az átlagtól való eltérések négyzetének összegét számítja ki. +EXPONDIST = EXP.ELOSZLÁS ## Az exponenciális eloszlás értékét számítja ki. +FDIST = F.ELOSZLÁS ## Az F-eloszlás értékét számítja ki. +FINV = INVERZ.F ## Az F-eloszlás inverzének értékét számítja ki. +FISHER = FISHER ## Fisher-transzformációt hajt végre. +FISHERINV = INVERZ.FISHER ## A Fisher-transzformáció inverzét hajtja végre. +FORECAST = ELŐREJELZÉS ## Az ismert értékek alapján lineáris regresszióval becsült értéket ad eredményül. +FREQUENCY = GYAKORISÁG ## A gyakorisági vagy empirikus eloszlás értékét függőleges tömbként adja eredményül. +FTEST = F.PRÓBA ## Az F-próba értékét adja eredményül. +GAMMADIST = GAMMA.ELOSZLÁS ## A gamma-eloszlás értékét számítja ki. +GAMMAINV = INVERZ.GAMMA ## A gamma-eloszlás eloszlásfüggvénye inverzének értékét számítja ki. +GAMMALN = GAMMALN ## A gamma-függvény természetes logaritmusát számítja ki. +GEOMEAN = MÉRTANI.KÖZÉP ## Argumentumai mértani középértékét számítja ki. +GROWTH = NÖV ## Exponenciális regresszió alapján ad becslést. +HARMEAN = HARM.KÖZÉP ## Argumentumai harmonikus átlagát számítja ki. +HYPGEOMDIST = HIPERGEOM.ELOSZLÁS ## A hipergeometriai eloszlás értékét számítja ki. +INTERCEPT = METSZ ## A regressziós egyenes y tengellyel való metszéspontját határozza meg. +KURT = CSÚCSOSSÁG ## Egy adathalmaz csúcsosságát számítja ki. +LARGE = NAGY ## Egy adathalmaz k-adik legnagyobb elemét adja eredményül. +LINEST = LIN.ILL ## A legkisebb négyzetek módszerével az adatokra illesztett egyenes paramétereit határozza meg. +LOGEST = LOG.ILL ## Az adatokra illesztett exponenciális görbe paramétereit határozza meg. +LOGINV = INVERZ.LOG.ELOSZLÁS ## A lognormális eloszlás inverzét számítja ki. +LOGNORMDIST = LOG.ELOSZLÁS ## A lognormális eloszlásfüggvény értékét számítja ki. +MAX = MAX ## Az argumentumai között szereplő legnagyobb számot adja meg. +MAXA = MAX2 ## Az argumentumai között szereplő legnagyobb számot adja meg (beleértve a számokat, szöveget és logikai értékeket). +MEDIAN = MEDIÁN ## Adott számhalmaz mediánját számítja ki. +MIN = MIN ## Az argumentumai között szereplő legkisebb számot adja meg. +MINA = MIN2 ## Az argumentumai között szereplő legkisebb számot adja meg, beleértve a számokat, szöveget és logikai értékeket. +MODE = MÓDUSZ ## Egy adathalmazból kiválasztja a leggyakrabban előforduló számot. +NEGBINOMDIST = NEGBINOM.ELOSZL ## A negatív binomiális eloszlás értékét számítja ki. +NORMDIST = NORM.ELOSZL ## A normális eloszlás értékét számítja ki. +NORMINV = INVERZ.NORM ## A normális eloszlás eloszlásfüggvénye inverzének értékét számítja ki. +NORMSDIST = STNORMELOSZL ## A standard normális eloszlás eloszlásfüggvényének értékét számítja ki. +NORMSINV = INVERZ.STNORM ## A standard normális eloszlás eloszlásfüggvénye inverzének értékét számítja ki. +PEARSON = PEARSON ## A Pearson-féle korrelációs együtthatót számítja ki. +PERCENTILE = PERCENTILIS ## Egy tartományban található értékek k-adik percentilisét, azaz százalékosztályát adja eredményül. +PERCENTRANK = SZÁZALÉKRANG ## Egy értéknek egy adathalmazon belül vett százalékos rangját (elhelyezkedését) számítja ki. +PERMUT = VARIÁCIÓK ## Adott számú objektum k-ad osztályú ismétlés nélküli variációinak számát számítja ki. +POISSON = POISSON ## A Poisson-eloszlás értékét számítja ki. +PROB = VALÓSZÍNŰSÉG ## Annak valószínűségét számítja ki, hogy adott értékek két határérték közé esnek. +QUARTILE = KVARTILIS ## Egy adathalmaz kvartilisét (negyedszintjét) számítja ki. +RANK = SORSZÁM ## Kiszámítja, hogy egy szám hányadik egy számsorozatban. +RSQ = RNÉGYZET ## Kiszámítja a Pearson-féle szorzatmomentum korrelációs együtthatójának négyzetét. +SKEW = FERDESÉG ## Egy eloszlás ferdeségét határozza meg. +SLOPE = MEREDEKSÉG ## Egy lineáris regressziós egyenes meredekségét számítja ki. +SMALL = KICSI ## Egy adathalmaz k-adik legkisebb elemét adja meg. +STANDARDIZE = NORMALIZÁLÁS ## Normalizált értéket ad eredményül. +STDEV = SZÓRÁS ## Egy statisztikai sokaság mintájából kiszámítja annak szórását. +STDEVA = SZÓRÁSA ## Egy statisztikai sokaság mintájából kiszámítja annak szórását (beleértve a számokat, szöveget és logikai értékeket). +STDEVP = SZÓRÁSP ## Egy statisztikai sokaság egészéből kiszámítja annak szórását. +STDEVPA = SZÓRÁSPA ## Egy statisztikai sokaság egészéből kiszámítja annak szórását (beleértve számokat, szöveget és logikai értékeket). +STEYX = STHIBAYX ## Egy regresszió esetén az egyes x-értékek alapján meghatározott y-értékek standard hibáját számítja ki. +TDIST = T.ELOSZLÁS ## A Student-féle t-eloszlás értékét számítja ki. +TINV = INVERZ.T ## A Student-féle t-eloszlás inverzét számítja ki. +TREND = TREND ## Lineáris trend értékeit számítja ki. +TRIMMEAN = RÉSZÁTLAG ## Egy adathalmaz középső részének átlagát számítja ki. +TTEST = T.PRÓBA ## A Student-féle t-próbához tartozó valószínűséget számítja ki. +VAR = VAR ## Minta alapján becslést ad a varianciára. +VARA = VARA ## Minta alapján becslést ad a varianciára (beleértve számokat, szöveget és logikai értékeket). +VARP = VARP ## Egy statisztikai sokaság varianciáját számítja ki. +VARPA = VARPA ## Egy statisztikai sokaság varianciáját számítja ki (beleértve számokat, szöveget és logikai értékeket). +WEIBULL = WEIBULL ## A Weibull-féle eloszlás értékét számítja ki. +ZTEST = Z.PRÓBA ## Az egyszélű z-próbával kapott valószínűségértéket számítja ki. + + +## +## Text functions Szövegműveletekhez használható függvények +## +ASC = ASC ## Szöveg teljes szélességű (kétbájtos) latin és katakana karaktereit félszélességű (egybájtos) karakterekké alakítja. +BAHTTEXT = BAHTSZÖVEG ## Számot szöveggé alakít a ß (baht) pénznemformátum használatával. +CHAR = KARAKTER ## A kódszámmal meghatározott karaktert adja eredményül. +CLEAN = TISZTÍT ## A szövegből eltávolítja az összes nem nyomtatható karaktert. +CODE = KÓD ## Karaktersorozat első karakterének numerikus kódját adja eredményül. +CONCATENATE = ÖSSZEFŰZ ## Több szövegelemet egyetlen szöveges elemmé fűz össze. +DOLLAR = FORINT ## Számot pénznem formátumú szöveggé alakít át. +EXACT = AZONOS ## Megvizsgálja, hogy két érték azonos-e. +FIND = SZÖVEG.TALÁL ## Karaktersorozatot keres egy másikban (a kis- és nagybetűk megkülönböztetésével). +FINDB = SZÖVEG.TALÁL2 ## Karaktersorozatot keres egy másikban (a kis- és nagybetűk megkülönböztetésével). +FIXED = FIX ## Számot szöveges formátumúra alakít adott számú tizedesjegyre kerekítve. +JIS = JIS ## A félszélességű (egybájtos) latin és a katakana karaktereket teljes szélességű (kétbájtos) karakterekké alakítja. +LEFT = BAL ## Szöveg bal szélső karaktereit adja eredményül. +LEFTB = BAL2 ## Szöveg bal szélső karaktereit adja eredményül. +LEN = HOSSZ ## Szöveg karakterekben mért hosszát adja eredményül. +LENB = HOSSZ2 ## Szöveg karakterekben mért hosszát adja eredményül. +LOWER = KISBETŰ ## Szöveget kisbetűssé alakít át. +MID = KÖZÉP ## A szöveg adott pozíciójától kezdve megadott számú karaktert ad vissza eredményként. +MIDB = KÖZÉP2 ## A szöveg adott pozíciójától kezdve megadott számú karaktert ad vissza eredményként. +PHONETIC = PHONETIC ## Szöveg furigana (fonetikus) karaktereit adja vissza. +PROPER = TNÉV ## Szöveg minden szavának kezdőbetűjét nagybetűsre cseréli. +REPLACE = CSERE ## A szövegen belül karaktereket cserél. +REPLACEB = CSERE2 ## A szövegen belül karaktereket cserél. +REPT = SOKSZOR ## Megadott számú alkalommal megismétel egy szövegrészt. +RIGHT = JOBB ## Szövegrész jobb szélső karaktereit adja eredményül. +RIGHTB = JOBB2 ## Szövegrész jobb szélső karaktereit adja eredményül. +SEARCH = SZÖVEG.KERES ## Karaktersorozatot keres egy másikban (a kis- és nagybetűk között nem tesz különbséget). +SEARCHB = SZÖVEG.KERES2 ## Karaktersorozatot keres egy másikban (a kis- és nagybetűk között nem tesz különbséget). +SUBSTITUTE = HELYETTE ## Szövegben adott karaktereket másikra cserél. +T = T ## Argumentumát szöveggé alakítja át. +TEXT = SZÖVEG ## Számértéket alakít át adott számformátumú szöveggé. +TRIM = TRIM ## A szövegből eltávolítja a szóközöket. +UPPER = NAGYBETŰS ## Szöveget nagybetűssé alakít át. +VALUE = ÉRTÉK ## Szöveget számmá alakít át. diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/it/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/it/_notes/dwsync.xml new file mode 100644 index 0000000..c432ca3 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/it/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559949742748" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559950335122" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752253139529" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752253574764" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461245170967" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461247517852" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752253139529" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752253574764" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/it/config b/site/config/PHPExcel/Classes/PHPExcel/locale/it/config new file mode 100644 index 0000000..5baad53 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/it/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = € + + +## +## Excel Error Codes (For future use) +## +NULL = #NULLO! +DIV0 = #DIV/0! +VALUE = #VALORE! +REF = #RIF! +NAME = #NOME? +NUM = #NUM! +NA = #N/D diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/it/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/it/functions new file mode 100644 index 0000000..3d09204 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/it/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Funzioni di automazione e dei componenti aggiuntivi +## +GETPIVOTDATA = INFO.DATI.TAB.PIVOT ## Restituisce i dati memorizzati in un rapporto di tabella pivot + + +## +## Cube functions Funzioni cubo +## +CUBEKPIMEMBER = MEMBRO.KPI.CUBO ## Restituisce il nome, la proprietà e la misura di un indicatore di prestazioni chiave (KPI) e visualizza il nome e la proprietà nella cella. Un KPI è una misura quantificabile, ad esempio l'utile lordo mensile o il fatturato trimestrale dei dipendenti, utilizzata per il monitoraggio delle prestazioni di un'organizzazione. +CUBEMEMBER = MEMBRO.CUBO ## Restituisce un membro o una tupla in una gerarchia di cubi. Consente di verificare l'esistenza del membro o della tupla nel cubo. +CUBEMEMBERPROPERTY = PROPRIETÀ.MEMBRO.CUBO ## Restituisce il valore di una proprietà di un membro del cubo. Consente di verificare l'esistenza di un nome di membro all'interno del cubo e di restituire la proprietà specificata per tale membro. +CUBERANKEDMEMBER = MEMBRO.CUBO.CON.RANGO ## Restituisce l'n-esimo membro o il membro ordinato di un insieme. Consente di restituire uno o più elementi in un insieme, ad esempio l'agente di vendita migliore o i primi 10 studenti. +CUBESET = SET.CUBO ## Definisce un insieme di tuple o membri calcolati mediante l'invio di un'espressione di insieme al cubo sul server. In questo modo l'insieme viene creato e restituito a Microsoft Office Excel. +CUBESETCOUNT = CONTA.SET.CUBO ## Restituisce il numero di elementi di un insieme. +CUBEVALUE = VALORE.CUBO ## Restituisce un valore aggregato da un cubo. + + +## +## Database functions Funzioni di database +## +DAVERAGE = DB.MEDIA ## Restituisce la media di voci del database selezionate +DCOUNT = DB.CONTA.NUMERI ## Conta le celle di un database contenenti numeri +DCOUNTA = DB.CONTA.VALORI ## Conta le celle non vuote in un database +DGET = DB.VALORI ## Estrae da un database un singolo record che soddisfa i criteri specificati +DMAX = DB.MAX ## Restituisce il valore massimo dalle voci selezionate in un database +DMIN = DB.MIN ## Restituisce il valore minimo dalle voci di un database selezionate +DPRODUCT = DB.PRODOTTO ## Moltiplica i valori in un determinato campo di record che soddisfano i criteri del database +DSTDEV = DB.DEV.ST ## Restituisce una stima della deviazione standard sulla base di un campione di voci di un database selezionate +DSTDEVP = DB.DEV.ST.POP ## Calcola la deviazione standard sulla base di tutte le voci di un database selezionate +DSUM = DB.SOMMA ## Aggiunge i numeri nel campo colonna di record del database che soddisfa determinati criteri +DVAR = DB.VAR ## Restituisce una stima della varianza sulla base di un campione da voci di un database selezionate +DVARP = DB.VAR.POP ## Calcola la varianza sulla base di tutte le voci di un database selezionate + + +## +## Date and time functions Funzioni data e ora +## +DATE = DATA ## Restituisce il numero seriale di una determinata data +DATEVALUE = DATA.VALORE ## Converte una data sotto forma di testo in un numero seriale +DAY = GIORNO ## Converte un numero seriale in un giorno del mese +DAYS360 = GIORNO360 ## Calcola il numero di giorni compreso tra due date basandosi su un anno di 360 giorni +EDATE = DATA.MESE ## Restituisce il numero seriale della data che rappresenta il numero di mesi prima o dopo la data di inizio +EOMONTH = FINE.MESE ## Restituisce il numero seriale dell'ultimo giorno del mese, prima o dopo un determinato numero di mesi +HOUR = ORA ## Converte un numero seriale in un'ora +MINUTE = MINUTO ## Converte un numero seriale in un minuto +MONTH = MESE ## Converte un numero seriale in un mese +NETWORKDAYS = GIORNI.LAVORATIVI.TOT ## Restituisce il numero di tutti i giorni lavorativi compresi fra due date +NOW = ADESSO ## Restituisce il numero seriale della data e dell'ora corrente +SECOND = SECONDO ## Converte un numero seriale in un secondo +TIME = ORARIO ## Restituisce il numero seriale di una determinata ora +TIMEVALUE = ORARIO.VALORE ## Converte un orario in forma di testo in un numero seriale +TODAY = OGGI ## Restituisce il numero seriale relativo alla data odierna +WEEKDAY = GIORNO.SETTIMANA ## Converte un numero seriale in un giorno della settimana +WEEKNUM = NUM.SETTIMANA ## Converte un numero seriale in un numero che rappresenta la posizione numerica di una settimana nell'anno +WORKDAY = GIORNO.LAVORATIVO ## Restituisce il numero della data prima o dopo un determinato numero di giorni lavorativi +YEAR = ANNO ## Converte un numero seriale in un anno +YEARFRAC = FRAZIONE.ANNO ## Restituisce la frazione dell'anno che rappresenta il numero dei giorni compresi tra una data_ iniziale e una data_finale + + +## +## Engineering functions Funzioni ingegneristiche +## +BESSELI = BESSEL.I ## Restituisce la funzione di Bessel modificata In(x) +BESSELJ = BESSEL.J ## Restituisce la funzione di Bessel Jn(x) +BESSELK = BESSEL.K ## Restituisce la funzione di Bessel modificata Kn(x) +BESSELY = BESSEL.Y ## Restituisce la funzione di Bessel Yn(x) +BIN2DEC = BINARIO.DECIMALE ## Converte un numero binario in decimale +BIN2HEX = BINARIO.HEX ## Converte un numero binario in esadecimale +BIN2OCT = BINARIO.OCT ## Converte un numero binario in ottale +COMPLEX = COMPLESSO ## Converte i coefficienti reali e immaginari in numeri complessi +CONVERT = CONVERTI ## Converte un numero da un sistema di misura in un altro +DEC2BIN = DECIMALE.BINARIO ## Converte un numero decimale in binario +DEC2HEX = DECIMALE.HEX ## Converte un numero decimale in esadecimale +DEC2OCT = DECIMALE.OCT ## Converte un numero decimale in ottale +DELTA = DELTA ## Verifica se due valori sono uguali +ERF = FUNZ.ERRORE ## Restituisce la funzione di errore +ERFC = FUNZ.ERRORE.COMP ## Restituisce la funzione di errore complementare +GESTEP = SOGLIA ## Verifica se un numero è maggiore del valore di soglia +HEX2BIN = HEX.BINARIO ## Converte un numero esadecimale in binario +HEX2DEC = HEX.DECIMALE ## Converte un numero esadecimale in decimale +HEX2OCT = HEX.OCT ## Converte un numero esadecimale in ottale +IMABS = COMP.MODULO ## Restituisce il valore assoluto (modulo) di un numero complesso +IMAGINARY = COMP.IMMAGINARIO ## Restituisce il coefficiente immaginario di un numero complesso +IMARGUMENT = COMP.ARGOMENTO ## Restituisce l'argomento theta, un angolo espresso in radianti +IMCONJUGATE = COMP.CONIUGATO ## Restituisce il complesso coniugato del numero complesso +IMCOS = COMP.COS ## Restituisce il coseno di un numero complesso +IMDIV = COMP.DIV ## Restituisce il quoziente di due numeri complessi +IMEXP = COMP.EXP ## Restituisce il valore esponenziale di un numero complesso +IMLN = COMP.LN ## Restituisce il logaritmo naturale di un numero complesso +IMLOG10 = COMP.LOG10 ## Restituisce il logaritmo in base 10 di un numero complesso +IMLOG2 = COMP.LOG2 ## Restituisce un logaritmo in base 2 di un numero complesso +IMPOWER = COMP.POTENZA ## Restituisce il numero complesso elevato a una potenza intera +IMPRODUCT = COMP.PRODOTTO ## Restituisce il prodotto di numeri complessi compresi tra 2 e 29 +IMREAL = COMP.PARTE.REALE ## Restituisce il coefficiente reale di un numero complesso +IMSIN = COMP.SEN ## Restituisce il seno di un numero complesso +IMSQRT = COMP.RADQ ## Restituisce la radice quadrata di un numero complesso +IMSUB = COMP.DIFF ## Restituisce la differenza fra due numeri complessi +IMSUM = COMP.SOMMA ## Restituisce la somma di numeri complessi +OCT2BIN = OCT.BINARIO ## Converte un numero ottale in binario +OCT2DEC = OCT.DECIMALE ## Converte un numero ottale in decimale +OCT2HEX = OCT.HEX ## Converte un numero ottale in esadecimale + + +## +## Financial functions Funzioni finanziarie +## +ACCRINT = INT.MATURATO.PER ## Restituisce l'interesse maturato di un titolo che paga interessi periodici +ACCRINTM = INT.MATURATO.SCAD ## Restituisce l'interesse maturato di un titolo che paga interessi alla scadenza +AMORDEGRC = AMMORT.DEGR ## Restituisce l'ammortamento per ogni periodo contabile utilizzando un coefficiente di ammortamento +AMORLINC = AMMORT.PER ## Restituisce l'ammortamento per ogni periodo contabile +COUPDAYBS = GIORNI.CED.INIZ.LIQ ## Restituisce il numero dei giorni che vanno dall'inizio del periodo di durata della cedola alla data di liquidazione +COUPDAYS = GIORNI.CED ## Restituisce il numero dei giorni relativi al periodo della cedola che contiene la data di liquidazione +COUPDAYSNC = GIORNI.CED.NUOVA ## Restituisce il numero di giorni che vanno dalla data di liquidazione alla data della cedola successiva +COUPNCD = DATA.CED.SUCC ## Restituisce un numero che rappresenta la data della cedola successiva alla data di liquidazione +COUPNUM = NUM.CED ## Restituisce il numero di cedole pagabili fra la data di liquidazione e la data di scadenza +COUPPCD = DATA.CED.PREC ## Restituisce un numero che rappresenta la data della cedola precedente alla data di liquidazione +CUMIPMT = INT.CUMUL ## Restituisce l'interesse cumulativo pagato fra due periodi +CUMPRINC = CAP.CUM ## Restituisce il capitale cumulativo pagato per estinguere un debito fra due periodi +DB = DB ## Restituisce l'ammortamento di un bene per un periodo specificato utilizzando il metodo di ammortamento a quote fisse decrescenti +DDB = AMMORT ## Restituisce l'ammortamento di un bene per un periodo specificato utilizzando il metodo di ammortamento a doppie quote decrescenti o altri metodi specificati +DISC = TASSO.SCONTO ## Restituisce il tasso di sconto per un titolo +DOLLARDE = VALUTA.DEC ## Converte un prezzo valuta, espresso come frazione, in prezzo valuta, espresso come numero decimale +DOLLARFR = VALUTA.FRAZ ## Converte un prezzo valuta, espresso come numero decimale, in prezzo valuta, espresso come frazione +DURATION = DURATA ## Restituisce la durata annuale di un titolo con i pagamenti di interesse periodico +EFFECT = EFFETTIVO ## Restituisce l'effettivo tasso di interesse annuo +FV = VAL.FUT ## Restituisce il valore futuro di un investimento +FVSCHEDULE = VAL.FUT.CAPITALE ## Restituisce il valore futuro di un capitale iniziale dopo aver applicato una serie di tassi di interesse composti +INTRATE = TASSO.INT ## Restituisce il tasso di interesse per un titolo interamente investito +IPMT = INTERESSI ## Restituisce il valore degli interessi per un investimento relativo a un periodo specifico +IRR = TIR.COST ## Restituisce il tasso di rendimento interno per una serie di flussi di cassa +ISPMT = INTERESSE.RATA ## Calcola l'interesse di un investimento pagato durante un periodo specifico +MDURATION = DURATA.M ## Restituisce la durata Macauley modificata per un titolo con un valore presunto di € 100 +MIRR = TIR.VAR ## Restituisce il tasso di rendimento interno in cui i flussi di cassa positivi e negativi sono finanziati a tassi differenti +NOMINAL = NOMINALE ## Restituisce il tasso di interesse nominale annuale +NPER = NUM.RATE ## Restituisce un numero di periodi relativi a un investimento +NPV = VAN ## Restituisce il valore attuale netto di un investimento basato su una serie di flussi di cassa periodici e sul tasso di sconto +ODDFPRICE = PREZZO.PRIMO.IRR ## Restituisce il prezzo di un titolo dal valore nominale di € 100 avente il primo periodo di durata irregolare +ODDFYIELD = REND.PRIMO.IRR ## Restituisce il rendimento di un titolo avente il primo periodo di durata irregolare +ODDLPRICE = PREZZO.ULTIMO.IRR ## Restituisce il prezzo di un titolo dal valore nominale di € 100 avente l'ultimo periodo di durata irregolare +ODDLYIELD = REND.ULTIMO.IRR ## Restituisce il rendimento di un titolo avente l'ultimo periodo di durata irregolare +PMT = RATA ## Restituisce il pagamento periodico di una rendita annua +PPMT = P.RATA ## Restituisce il pagamento sul capitale di un investimento per un dato periodo +PRICE = PREZZO ## Restituisce il prezzo di un titolo dal valore nominale di € 100 che paga interessi periodici +PRICEDISC = PREZZO.SCONT ## Restituisce il prezzo di un titolo scontato dal valore nominale di € 100 +PRICEMAT = PREZZO.SCAD ## Restituisce il prezzo di un titolo dal valore nominale di € 100 che paga gli interessi alla scadenza +PV = VA ## Restituisce il valore attuale di un investimento +RATE = TASSO ## Restituisce il tasso di interesse per un periodo di un'annualità +RECEIVED = RICEV.SCAD ## Restituisce l'ammontare ricevuto alla scadenza di un titolo interamente investito +SLN = AMMORT.COST ## Restituisce l'ammortamento a quote costanti di un bene per un singolo periodo +SYD = AMMORT.ANNUO ## Restituisce l'ammortamento a somma degli anni di un bene per un periodo specificato +TBILLEQ = BOT.EQUIV ## Restituisce il rendimento equivalente ad un'obbligazione per un Buono ordinario del Tesoro +TBILLPRICE = BOT.PREZZO ## Restituisce il prezzo di un Buono del Tesoro dal valore nominale di € 100 +TBILLYIELD = BOT.REND ## Restituisce il rendimento di un Buono del Tesoro +VDB = AMMORT.VAR ## Restituisce l'ammortamento di un bene per un periodo specificato o parziale utilizzando il metodo a doppie quote proporzionali ai valori residui +XIRR = TIR.X ## Restituisce il tasso di rendimento interno di un impiego di flussi di cassa +XNPV = VAN.X ## Restituisce il valore attuale netto di un impiego di flussi di cassa non necessariamente periodici +YIELD = REND ## Restituisce il rendimento di un titolo che frutta interessi periodici +YIELDDISC = REND.TITOLI.SCONT ## Restituisce il rendimento annuale di un titolo scontato, ad esempio un Buono del Tesoro +YIELDMAT = REND.SCAD ## Restituisce il rendimento annuo di un titolo che paga interessi alla scadenza + + +## +## Information functions Funzioni relative alle informazioni +## +CELL = CELLA ## Restituisce le informazioni sulla formattazione, la posizione o i contenuti di una cella +ERROR.TYPE = ERRORE.TIPO ## Restituisce un numero che corrisponde a un tipo di errore +INFO = INFO ## Restituisce le informazioni sull'ambiente operativo corrente +ISBLANK = VAL.VUOTO ## Restituisce VERO se il valore è vuoto +ISERR = VAL.ERR ## Restituisce VERO se il valore è un valore di errore qualsiasi tranne #N/D +ISERROR = VAL.ERRORE ## Restituisce VERO se il valore è un valore di errore qualsiasi +ISEVEN = VAL.PARI ## Restituisce VERO se il numero è pari +ISLOGICAL = VAL.LOGICO ## Restituisce VERO se il valore è un valore logico +ISNA = VAL.NON.DISP ## Restituisce VERO se il valore è un valore di errore #N/D +ISNONTEXT = VAL.NON.TESTO ## Restituisce VERO se il valore non è in formato testo +ISNUMBER = VAL.NUMERO ## Restituisce VERO se il valore è un numero +ISODD = VAL.DISPARI ## Restituisce VERO se il numero è dispari +ISREF = VAL.RIF ## Restituisce VERO se il valore è un riferimento +ISTEXT = VAL.TESTO ## Restituisce VERO se il valore è in formato testo +N = NUM ## Restituisce un valore convertito in numero +NA = NON.DISP ## Restituisce il valore di errore #N/D +TYPE = TIPO ## Restituisce un numero che indica il tipo di dati relativi a un valore + + +## +## Logical functions Funzioni logiche +## +AND = E ## Restituisce VERO se tutti gli argomenti sono VERO +FALSE = FALSO ## Restituisce il valore logico FALSO +IF = SE ## Specifica un test logico da eseguire +IFERROR = SE.ERRORE ## Restituisce un valore specificato se una formula fornisce un errore come risultato; in caso contrario, restituisce il risultato della formula +NOT = NON ## Inverte la logica degli argomenti +OR = O ## Restituisce VERO se un argomento qualsiasi è VERO +TRUE = VERO ## Restituisce il valore logico VERO + + +## +## Lookup and reference functions Funzioni di ricerca e di riferimento +## +ADDRESS = INDIRIZZO ## Restituisce un riferimento come testo in una singola cella di un foglio di lavoro +AREAS = AREE ## Restituisce il numero di aree in un riferimento +CHOOSE = SCEGLI ## Sceglie un valore da un elenco di valori +COLUMN = RIF.COLONNA ## Restituisce il numero di colonna di un riferimento +COLUMNS = COLONNE ## Restituisce il numero di colonne in un riferimento +HLOOKUP = CERCA.ORIZZ ## Effettua una ricerca nella riga superiore di una matrice e restituisce il valore della cella specificata +HYPERLINK = COLLEG.IPERTESTUALE ## Crea un collegamento che apre un documento memorizzato in un server di rete, una rete Intranet o Internet +INDEX = INDICE ## Utilizza un indice per scegliere un valore da un riferimento o da una matrice +INDIRECT = INDIRETTO ## Restituisce un riferimento specificato da un valore testo +LOOKUP = CERCA ## Ricerca i valori in un vettore o in una matrice +MATCH = CONFRONTA ## Ricerca i valori in un riferimento o in una matrice +OFFSET = SCARTO ## Restituisce uno scarto di riferimento da un riferimento dato +ROW = RIF.RIGA ## Restituisce il numero di riga di un riferimento +ROWS = RIGHE ## Restituisce il numero delle righe in un riferimento +RTD = DATITEMPOREALE ## Recupera dati in tempo reale da un programma che supporta l'automazione COM (automazione: Metodo per utilizzare gli oggetti di un'applicazione da un'altra applicazione o da un altro strumento di sviluppo. Precedentemente nota come automazione OLE, l'automazione è uno standard del settore e una caratteristica del modello COM (Component Object Model).) +TRANSPOSE = MATR.TRASPOSTA ## Restituisce la trasposizione di una matrice +VLOOKUP = CERCA.VERT ## Effettua una ricerca nella prima colonna di una matrice e si sposta attraverso la riga per restituire il valore di una cella + + +## +## Math and trigonometry functions Funzioni matematiche e trigonometriche +## +ABS = ASS ## Restituisce il valore assoluto di un numero. +ACOS = ARCCOS ## Restituisce l'arcocoseno di un numero +ACOSH = ARCCOSH ## Restituisce l'inverso del coseno iperbolico di un numero +ASIN = ARCSEN ## Restituisce l'arcoseno di un numero +ASINH = ARCSENH ## Restituisce l'inverso del seno iperbolico di un numero +ATAN = ARCTAN ## Restituisce l'arcotangente di un numero +ATAN2 = ARCTAN.2 ## Restituisce l'arcotangente delle coordinate x e y specificate +ATANH = ARCTANH ## Restituisce l'inverso della tangente iperbolica di un numero +CEILING = ARROTONDA.ECCESSO ## Arrotonda un numero per eccesso all'intero più vicino o al multiplo più vicino a peso +COMBIN = COMBINAZIONE ## Restituisce il numero di combinazioni possibili per un numero assegnato di elementi +COS = COS ## Restituisce il coseno dell'angolo specificato +COSH = COSH ## Restituisce il coseno iperbolico di un numero +DEGREES = GRADI ## Converte i radianti in gradi +EVEN = PARI ## Arrotonda il valore assoluto di un numero per eccesso al più vicino intero pari +EXP = ESP ## Restituisce il numero e elevato alla potenza di num +FACT = FATTORIALE ## Restituisce il fattoriale di un numero +FACTDOUBLE = FATT.DOPPIO ## Restituisce il fattoriale doppio di un numero +FLOOR = ARROTONDA.DIFETTO ## Arrotonda un numero per difetto al multiplo più vicino a zero +GCD = MCD ## Restituisce il massimo comune divisore +INT = INT ## Arrotonda un numero per difetto al numero intero più vicino +LCM = MCM ## Restituisce il minimo comune multiplo +LN = LN ## Restituisce il logaritmo naturale di un numero +LOG = LOG ## Restituisce il logaritmo di un numero in una specificata base +LOG10 = LOG10 ## Restituisce il logaritmo in base 10 di un numero +MDETERM = MATR.DETERM ## Restituisce il determinante di una matrice +MINVERSE = MATR.INVERSA ## Restituisce l'inverso di una matrice +MMULT = MATR.PRODOTTO ## Restituisce il prodotto di due matrici +MOD = RESTO ## Restituisce il resto della divisione +MROUND = ARROTONDA.MULTIPLO ## Restituisce un numero arrotondato al multiplo desiderato +MULTINOMIAL = MULTINOMIALE ## Restituisce il multinomiale di un insieme di numeri +ODD = DISPARI ## Arrotonda un numero per eccesso al più vicino intero dispari +PI = PI.GRECO ## Restituisce il valore di pi greco +POWER = POTENZA ## Restituisce il risultato di un numero elevato a potenza +PRODUCT = PRODOTTO ## Moltiplica i suoi argomenti +QUOTIENT = QUOZIENTE ## Restituisce la parte intera di una divisione +RADIANS = RADIANTI ## Converte i gradi in radianti +RAND = CASUALE ## Restituisce un numero casuale compreso tra 0 e 1 +RANDBETWEEN = CASUALE.TRA ## Restituisce un numero casuale compreso tra i numeri specificati +ROMAN = ROMANO ## Restituisce il numero come numero romano sotto forma di testo +ROUND = ARROTONDA ## Arrotonda il numero al numero di cifre specificato +ROUNDDOWN = ARROTONDA.PER.DIF ## Arrotonda il valore assoluto di un numero per difetto +ROUNDUP = ARROTONDA.PER.ECC ## Arrotonda il valore assoluto di un numero per eccesso +SERIESSUM = SOMMA.SERIE ## Restituisce la somma di una serie di potenze in base alla formula +SIGN = SEGNO ## Restituisce il segno di un numero +SIN = SEN ## Restituisce il seno di un dato angolo +SINH = SENH ## Restituisce il seno iperbolico di un numero +SQRT = RADQ ## Restituisce una radice quadrata +SQRTPI = RADQ.PI.GRECO ## Restituisce la radice quadrata di un numero (numero * pi greco) +SUBTOTAL = SUBTOTALE ## Restituisce un subtotale in un elenco o in un database +SUM = SOMMA ## Somma i suoi argomenti +SUMIF = SOMMA.SE ## Somma le celle specificate da un dato criterio +SUMIFS = SOMMA.PIÙ.SE ## Somma le celle in un intervallo che soddisfano più criteri +SUMPRODUCT = MATR.SOMMA.PRODOTTO ## Restituisce la somma dei prodotti dei componenti corrispondenti della matrice +SUMSQ = SOMMA.Q ## Restituisce la somma dei quadrati degli argomenti +SUMX2MY2 = SOMMA.DIFF.Q ## Restituisce la somma della differenza dei quadrati dei corrispondenti elementi in due matrici +SUMX2PY2 = SOMMA.SOMMA.Q ## Restituisce la somma della somma dei quadrati dei corrispondenti elementi in due matrici +SUMXMY2 = SOMMA.Q.DIFF ## Restituisce la somma dei quadrati delle differenze dei corrispondenti elementi in due matrici +TAN = TAN ## Restituisce la tangente di un numero +TANH = TANH ## Restituisce la tangente iperbolica di un numero +TRUNC = TRONCA ## Tronca la parte decimale di un numero + + +## +## Statistical functions Funzioni statistiche +## +AVEDEV = MEDIA.DEV ## Restituisce la media delle deviazioni assolute delle coordinate rispetto alla loro media +AVERAGE = MEDIA ## Restituisce la media degli argomenti +AVERAGEA = MEDIA.VALORI ## Restituisce la media degli argomenti, inclusi i numeri, il testo e i valori logici +AVERAGEIF = MEDIA.SE ## Restituisce la media aritmetica di tutte le celle in un intervallo che soddisfano un determinato criterio +AVERAGEIFS = MEDIA.PIÙ.SE ## Restituisce la media aritmetica di tutte le celle che soddisfano più criteri +BETADIST = DISTRIB.BETA ## Restituisce la funzione di distribuzione cumulativa beta +BETAINV = INV.BETA ## Restituisce l'inverso della funzione di distribuzione cumulativa per una distribuzione beta specificata +BINOMDIST = DISTRIB.BINOM ## Restituisce la distribuzione binomiale per il termine individuale +CHIDIST = DISTRIB.CHI ## Restituisce la probabilità a una coda per la distribuzione del chi quadrato +CHIINV = INV.CHI ## Restituisce l'inverso della probabilità ad una coda per la distribuzione del chi quadrato +CHITEST = TEST.CHI ## Restituisce il test per l'indipendenza +CONFIDENCE = CONFIDENZA ## Restituisce l'intervallo di confidenza per una popolazione +CORREL = CORRELAZIONE ## Restituisce il coefficiente di correlazione tra due insiemi di dati +COUNT = CONTA.NUMERI ## Conta la quantità di numeri nell'elenco di argomenti +COUNTA = CONTA.VALORI ## Conta il numero di valori nell'elenco di argomenti +COUNTBLANK = CONTA.VUOTE ## Conta il numero di celle vuote all'interno di un intervallo +COUNTIF = CONTA.SE ## Conta il numero di celle all'interno di un intervallo che soddisfa i criteri specificati +COUNTIFS = CONTA.PIÙ.SE ## Conta il numero di celle in un intervallo che soddisfano più criteri. +COVAR = COVARIANZA ## Calcola la covarianza, la media dei prodotti delle deviazioni accoppiate +CRITBINOM = CRIT.BINOM ## Restituisce il più piccolo valore per il quale la distribuzione cumulativa binomiale risulta maggiore o uguale ad un valore di criterio +DEVSQ = DEV.Q ## Restituisce la somma dei quadrati delle deviazioni +EXPONDIST = DISTRIB.EXP ## Restituisce la distribuzione esponenziale +FDIST = DISTRIB.F ## Restituisce la distribuzione di probabilità F +FINV = INV.F ## Restituisce l'inverso della distribuzione della probabilità F +FISHER = FISHER ## Restituisce la trasformazione di Fisher +FISHERINV = INV.FISHER ## Restituisce l'inverso della trasformazione di Fisher +FORECAST = PREVISIONE ## Restituisce i valori lungo una tendenza lineare +FREQUENCY = FREQUENZA ## Restituisce la distribuzione di frequenza come matrice verticale +FTEST = TEST.F ## Restituisce il risultato di un test F +GAMMADIST = DISTRIB.GAMMA ## Restituisce la distribuzione gamma +GAMMAINV = INV.GAMMA ## Restituisce l'inverso della distribuzione cumulativa gamma +GAMMALN = LN.GAMMA ## Restituisce il logaritmo naturale della funzione gamma, G(x) +GEOMEAN = MEDIA.GEOMETRICA ## Restituisce la media geometrica +GROWTH = CRESCITA ## Restituisce i valori lungo una linea di tendenza esponenziale +HARMEAN = MEDIA.ARMONICA ## Restituisce la media armonica +HYPGEOMDIST = DISTRIB.IPERGEOM ## Restituisce la distribuzione ipergeometrica +INTERCEPT = INTERCETTA ## Restituisce l'intercetta della retta di regressione lineare +KURT = CURTOSI ## Restituisce la curtosi di un insieme di dati +LARGE = GRANDE ## Restituisce il k-esimo valore più grande in un insieme di dati +LINEST = REGR.LIN ## Restituisce i parametri di una tendenza lineare +LOGEST = REGR.LOG ## Restituisce i parametri di una linea di tendenza esponenziale +LOGINV = INV.LOGNORM ## Restituisce l'inverso di una distribuzione lognormale +LOGNORMDIST = DISTRIB.LOGNORM ## Restituisce la distribuzione lognormale cumulativa +MAX = MAX ## Restituisce il valore massimo in un elenco di argomenti +MAXA = MAX.VALORI ## Restituisce il valore massimo in un elenco di argomenti, inclusi i numeri, il testo e i valori logici +MEDIAN = MEDIANA ## Restituisce la mediana dei numeri specificati +MIN = MIN ## Restituisce il valore minimo in un elenco di argomenti +MINA = MIN.VALORI ## Restituisce il più piccolo valore in un elenco di argomenti, inclusi i numeri, il testo e i valori logici +MODE = MODA ## Restituisce il valore più comune in un insieme di dati +NEGBINOMDIST = DISTRIB.BINOM.NEG ## Restituisce la distribuzione binomiale negativa +NORMDIST = DISTRIB.NORM ## Restituisce la distribuzione cumulativa normale +NORMINV = INV.NORM ## Restituisce l'inverso della distribuzione cumulativa normale standard +NORMSDIST = DISTRIB.NORM.ST ## Restituisce la distribuzione cumulativa normale standard +NORMSINV = INV.NORM.ST ## Restituisce l'inverso della distribuzione cumulativa normale +PEARSON = PEARSON ## Restituisce il coefficiente del momento di correlazione di Pearson +PERCENTILE = PERCENTILE ## Restituisce il k-esimo dato percentile di valori in un intervallo +PERCENTRANK = PERCENT.RANGO ## Restituisce il rango di un valore in un insieme di dati come percentuale +PERMUT = PERMUTAZIONE ## Restituisce il numero delle permutazioni per un determinato numero di oggetti +POISSON = POISSON ## Restituisce la distribuzione di Poisson +PROB = PROBABILITÀ ## Calcola la probabilità che dei valori in un intervallo siano compresi tra due limiti +QUARTILE = QUARTILE ## Restituisce il quartile di un insieme di dati +RANK = RANGO ## Restituisce il rango di un numero in un elenco di numeri +RSQ = RQ ## Restituisce la radice quadrata del coefficiente di momento di correlazione di Pearson +SKEW = ASIMMETRIA ## Restituisce il grado di asimmetria di una distribuzione +SLOPE = PENDENZA ## Restituisce la pendenza di una retta di regressione lineare +SMALL = PICCOLO ## Restituisce il k-esimo valore più piccolo in un insieme di dati +STANDARDIZE = NORMALIZZA ## Restituisce un valore normalizzato +STDEV = DEV.ST ## Restituisce una stima della deviazione standard sulla base di un campione +STDEVA = DEV.ST.VALORI ## Restituisce una stima della deviazione standard sulla base di un campione, inclusi i numeri, il testo e i valori logici +STDEVP = DEV.ST.POP ## Calcola la deviazione standard sulla base di un'intera popolazione +STDEVPA = DEV.ST.POP.VALORI ## Calcola la deviazione standard sulla base sull'intera popolazione, inclusi i numeri, il testo e i valori logici +STEYX = ERR.STD.YX ## Restituisce l'errore standard del valore previsto per y per ogni valore x nella regressione +TDIST = DISTRIB.T ## Restituisce la distribuzione t di Student +TINV = INV.T ## Restituisce l'inversa della distribuzione t di Student +TREND = TENDENZA ## Restituisce i valori lungo una linea di tendenza lineare +TRIMMEAN = MEDIA.TRONCATA ## Restituisce la media della parte interna di un insieme di dati +TTEST = TEST.T ## Restituisce la probabilità associata ad un test t di Student +VAR = VAR ## Stima la varianza sulla base di un campione +VARA = VAR.VALORI ## Stima la varianza sulla base di un campione, inclusi i numeri, il testo e i valori logici +VARP = VAR.POP ## Calcola la varianza sulla base dell'intera popolazione +VARPA = VAR.POP.VALORI ## Calcola la deviazione standard sulla base sull'intera popolazione, inclusi i numeri, il testo e i valori logici +WEIBULL = WEIBULL ## Restituisce la distribuzione di Weibull +ZTEST = TEST.Z ## Restituisce il valore di probabilità a una coda per un test z + + +## +## Text functions Funzioni di testo +## +ASC = ASC ## Modifica le lettere inglesi o il katakana a doppio byte all'interno di una stringa di caratteri in caratteri a singolo byte +BAHTTEXT = BAHTTESTO ## Converte un numero in testo, utilizzando il formato valuta ß (baht) +CHAR = CODICE.CARATT ## Restituisce il carattere specificato dal numero di codice +CLEAN = LIBERA ## Elimina dal testo tutti i caratteri che non è possibile stampare +CODE = CODICE ## Restituisce il codice numerico del primo carattere di una stringa di testo +CONCATENATE = CONCATENA ## Unisce diversi elementi di testo in un unico elemento di testo +DOLLAR = VALUTA ## Converte un numero in testo, utilizzando il formato valuta € (euro) +EXACT = IDENTICO ## Verifica se due valori di testo sono uguali +FIND = TROVA ## Rileva un valore di testo all'interno di un altro (distinzione tra maiuscole e minuscole) +FINDB = TROVA.B ## Rileva un valore di testo all'interno di un altro (distinzione tra maiuscole e minuscole) +FIXED = FISSO ## Formatta un numero come testo con un numero fisso di decimali +JIS = ORDINAMENTO.JIS ## Modifica le lettere inglesi o i caratteri katakana a byte singolo all'interno di una stringa di caratteri in caratteri a byte doppio. +LEFT = SINISTRA ## Restituisce il carattere più a sinistra di un valore di testo +LEFTB = SINISTRA.B ## Restituisce il carattere più a sinistra di un valore di testo +LEN = LUNGHEZZA ## Restituisce il numero di caratteri di una stringa di testo +LENB = LUNB ## Restituisce il numero di caratteri di una stringa di testo +LOWER = MINUSC ## Converte il testo in lettere minuscole +MID = MEDIA ## Restituisce un numero specifico di caratteri di una stringa di testo a partire dalla posizione specificata +MIDB = MEDIA.B ## Restituisce un numero specifico di caratteri di una stringa di testo a partire dalla posizione specificata +PHONETIC = FURIGANA ## Estrae i caratteri fonetici (furigana) da una stringa di testo. +PROPER = MAIUSC.INIZ ## Converte in maiuscolo la prima lettera di ogni parola di un valore di testo +REPLACE = RIMPIAZZA ## Sostituisce i caratteri all'interno di un testo +REPLACEB = SOSTITUISCI.B ## Sostituisce i caratteri all'interno di un testo +REPT = RIPETI ## Ripete un testo per un dato numero di volte +RIGHT = DESTRA ## Restituisce il carattere più a destra di un valore di testo +RIGHTB = DESTRA.B ## Restituisce il carattere più a destra di un valore di testo +SEARCH = RICERCA ## Rileva un valore di testo all'interno di un altro (non è sensibile alle maiuscole e minuscole) +SEARCHB = CERCA.B ## Rileva un valore di testo all'interno di un altro (non è sensibile alle maiuscole e minuscole) +SUBSTITUTE = SOSTITUISCI ## Sostituisce il nuovo testo al testo contenuto in una stringa +T = T ## Converte gli argomenti in testo +TEXT = TESTO ## Formatta un numero e lo converte in testo +TRIM = ANNULLA.SPAZI ## Elimina gli spazi dal testo +UPPER = MAIUSC ## Converte il testo in lettere maiuscole +VALUE = VALORE ## Converte un argomento di testo in numero diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/nl/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/nl/_notes/dwsync.xml new file mode 100644 index 0000000..ef12873 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/nl/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851479999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851479999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559943511372" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559944085979" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752247384857" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752247845620" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461247044247" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461249054064" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752247384857" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752247845620" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/nl/config b/site/config/PHPExcel/Classes/PHPExcel/locale/nl/config new file mode 100644 index 0000000..d56b38f --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/nl/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = € + + +## +## Excel Error Codes (For future use) +## +NULL = #LEEG! +DIV0 = #DEEL/0! +VALUE = #WAARDE! +REF = #VERW! +NAME = #NAAM? +NUM = #GETAL! +NA = #N/B diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/nl/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/nl/functions new file mode 100644 index 0000000..6e94121 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/nl/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Automatiseringsfuncties en functies in invoegtoepassingen +## +GETPIVOTDATA = DRAAITABEL.OPHALEN ## Geeft gegevens uit een draaitabelrapport als resultaat + + +## +## Cube functions Kubusfuncties +## +CUBEKPIMEMBER = KUBUSKPILID ## Retourneert de naam, eigenschap en waarde van een KPI (prestatie-indicator) en geeft de naam en de eigenschap in de cel weer. Een KPI is een meetbare waarde, zoals de maandelijkse brutowinst of de omzet per kwartaal per werknemer, die wordt gebruikt om de prestaties van een organisatie te bewaken +CUBEMEMBER = KUBUSLID ## Retourneert een lid of tupel in een kubushiërarchie. Wordt gebruikt om te controleren of het lid of de tupel in de kubus aanwezig is +CUBEMEMBERPROPERTY = KUBUSLIDEIGENSCHAP ## Retourneert de waarde van een lideigenschap in de kubus. Wordt gebruikt om te controleren of de lidnaam in de kubus bestaat en retourneert de opgegeven eigenschap voor dit lid +CUBERANKEDMEMBER = KUBUSGERANGCHIKTLID ## Retourneert het zoveelste, gerangschikte lid in een set. Wordt gebruikt om een of meer elementen in een set te retourneren, zoals de tien beste verkopers of de tien beste studenten +CUBESET = KUBUSSET ## Definieert een berekende set leden of tupels door een ingestelde expressie naar de kubus op de server te sturen, alwaar de set wordt gemaakt en vervolgens wordt geretourneerd naar Microsoft Office Excel +CUBESETCOUNT = KUBUSSETAANTAL ## Retourneert het aantal onderdelen in een set +CUBEVALUE = KUBUSWAARDE ## Retourneert een samengestelde waarde van een kubus + + +## +## Database functions Databasefuncties +## +DAVERAGE = DBGEMIDDELDE ## Berekent de gemiddelde waarde in geselecteerde databasegegevens +DCOUNT = DBAANTAL ## Telt de cellen met getallen in een database +DCOUNTA = DBAANTALC ## Telt de niet-lege cellen in een database +DGET = DBLEZEN ## Retourneert één record dat voldoet aan de opgegeven criteria uit een database +DMAX = DBMAX ## Retourneert de maximumwaarde in de geselecteerde databasegegevens +DMIN = DBMIN ## Retourneert de minimumwaarde in de geselecteerde databasegegevens +DPRODUCT = DBPRODUCT ## Vermenigvuldigt de waarden in een bepaald veld van de records die voldoen aan de criteria in een database +DSTDEV = DBSTDEV ## Maakt een schatting van de standaarddeviatie op basis van een steekproef uit geselecteerde databasegegevens +DSTDEVP = DBSTDEVP ## Berekent de standaarddeviatie op basis van de volledige populatie van geselecteerde databasegegevens +DSUM = DBSOM ## Telt de getallen uit een kolom records in de database op die voldoen aan de criteria +DVAR = DBVAR ## Maakt een schatting van de variantie op basis van een steekproef uit geselecteerde databasegegevens +DVARP = DBVARP ## Berekent de variantie op basis van de volledige populatie van geselecteerde databasegegevens + + +## +## Date and time functions Datum- en tijdfuncties +## +DATE = DATUM ## Geeft als resultaat het seriële getal van een opgegeven datum +DATEVALUE = DATUMWAARDE ## Converteert een datum in de vorm van tekst naar een serieel getal +DAY = DAG ## Converteert een serieel getal naar een dag van de maand +DAYS360 = DAGEN360 ## Berekent het aantal dagen tussen twee datums op basis van een jaar met 360 dagen +EDATE = ZELFDE.DAG ## Geeft als resultaat het seriële getal van een datum die het opgegeven aantal maanden voor of na de begindatum ligt +EOMONTH = LAATSTE.DAG ## Geeft als resultaat het seriële getal van de laatste dag van de maand voor of na het opgegeven aantal maanden +HOUR = UUR ## Converteert een serieel getal naar uren +MINUTE = MINUUT ## Converteert een serieel naar getal minuten +MONTH = MAAND ## Converteert een serieel getal naar een maand +NETWORKDAYS = NETTO.WERKDAGEN ## Geeft als resultaat het aantal hele werkdagen tussen twee datums +NOW = NU ## Geeft als resultaat het seriële getal van de huidige datum en tijd +SECOND = SECONDE ## Converteert een serieel getal naar seconden +TIME = TIJD ## Geeft als resultaat het seriële getal van een bepaald tijdstip +TIMEVALUE = TIJDWAARDE ## Converteert de tijd in de vorm van tekst naar een serieel getal +TODAY = VANDAAG ## Geeft als resultaat het seriële getal van de huidige datum +WEEKDAY = WEEKDAG ## Converteert een serieel getal naar een weekdag +WEEKNUM = WEEKNUMMER ## Converteert een serieel getal naar een weeknummer +WORKDAY = WERKDAG ## Geeft als resultaat het seriële getal van de datum voor of na een bepaald aantal werkdagen +YEAR = JAAR ## Converteert een serieel getal naar een jaar +YEARFRAC = JAAR.DEEL ## Geeft als resultaat het gedeelte van het jaar, uitgedrukt in het aantal hele dagen tussen begindatum en einddatum + + +## +## Engineering functions Technische functies +## +BESSELI = BESSEL.Y ## Geeft als resultaat de gewijzigde Bessel-functie In(x) +BESSELJ = BESSEL.J ## Geeft als resultaat de Bessel-functie Jn(x) +BESSELK = BESSEL.K ## Geeft als resultaat de gewijzigde Bessel-functie Kn(x) +BESSELY = BESSEL.Y ## Geeft als resultaat de gewijzigde Bessel-functie Yn(x) +BIN2DEC = BIN.N.DEC ## Converteert een binair getal naar een decimaal getal +BIN2HEX = BIN.N.HEX ## Converteert een binair getal naar een hexadecimaal getal +BIN2OCT = BIN.N.OCT ## Converteert een binair getal naar een octaal getal +COMPLEX = COMPLEX ## Converteert reële en imaginaire coëfficiënten naar een complex getal +CONVERT = CONVERTEREN ## Converteert een getal in de ene maateenheid naar een getal in een andere maateenheid +DEC2BIN = DEC.N.BIN ## Converteert een decimaal getal naar een binair getal +DEC2HEX = DEC.N.HEX ## Converteert een decimaal getal naar een hexadecimaal getal +DEC2OCT = DEC.N.OCT ## Converteert een decimaal getal naar een octaal getal +DELTA = DELTA ## Test of twee waarden gelijk zijn +ERF = FOUTFUNCTIE ## Geeft als resultaat de foutfunctie +ERFC = FOUT.COMPLEMENT ## Geeft als resultaat de complementaire foutfunctie +GESTEP = GROTER.DAN ## Test of een getal groter is dan de drempelwaarde +HEX2BIN = HEX.N.BIN ## Converteert een hexadecimaal getal naar een binair getal +HEX2DEC = HEX.N.DEC ## Converteert een hexadecimaal getal naar een decimaal getal +HEX2OCT = HEX.N.OCT ## Converteert een hexadecimaal getal naar een octaal getal +IMABS = C.ABS ## Geeft als resultaat de absolute waarde (modulus) van een complex getal +IMAGINARY = C.IM.DEEL ## Geeft als resultaat de imaginaire coëfficiënt van een complex getal +IMARGUMENT = C.ARGUMENT ## Geeft als resultaat het argument thèta, een hoek uitgedrukt in radialen +IMCONJUGATE = C.TOEGEVOEGD ## Geeft als resultaat het complexe toegevoegde getal van een complex getal +IMCOS = C.COS ## Geeft als resultaat de cosinus van een complex getal +IMDIV = C.QUOTIENT ## Geeft als resultaat het quotiënt van twee complexe getallen +IMEXP = C.EXP ## Geeft als resultaat de exponent van een complex getal +IMLN = C.LN ## Geeft als resultaat de natuurlijke logaritme van een complex getal +IMLOG10 = C.LOG10 ## Geeft als resultaat de logaritme met grondtal 10 van een complex getal +IMLOG2 = C.LOG2 ## Geeft als resultaat de logaritme met grondtal 2 van een complex getal +IMPOWER = C.MACHT ## Geeft als resultaat een complex getal dat is verheven tot de macht van een geheel getal +IMPRODUCT = C.PRODUCT ## Geeft als resultaat het product van complexe getallen +IMREAL = C.REEEL.DEEL ## Geeft als resultaat de reële coëfficiënt van een complex getal +IMSIN = C.SIN ## Geeft als resultaat de sinus van een complex getal +IMSQRT = C.WORTEL ## Geeft als resultaat de vierkantswortel van een complex getal +IMSUB = C.VERSCHIL ## Geeft als resultaat het verschil tussen twee complexe getallen +IMSUM = C.SOM ## Geeft als resultaat de som van complexe getallen +OCT2BIN = OCT.N.BIN ## Converteert een octaal getal naar een binair getal +OCT2DEC = OCT.N.DEC ## Converteert een octaal getal naar een decimaal getal +OCT2HEX = OCT.N.HEX ## Converteert een octaal getal naar een hexadecimaal getal + + +## +## Financial functions Financiële functies +## +ACCRINT = SAMENG.RENTE ## Berekent de opgelopen rente voor een waardepapier waarvan de rente periodiek wordt uitgekeerd +ACCRINTM = SAMENG.RENTE.V ## Berekent de opgelopen rente voor een waardepapier waarvan de rente op de vervaldatum wordt uitgekeerd +AMORDEGRC = AMORDEGRC ## Geeft als resultaat de afschrijving voor elke boekingsperiode door een afschrijvingscoëfficiënt toe te passen +AMORLINC = AMORLINC ## Berekent de afschrijving voor elke boekingsperiode +COUPDAYBS = COUP.DAGEN.BB ## Berekent het aantal dagen vanaf het begin van de coupontermijn tot de stortingsdatum +COUPDAYS = COUP.DAGEN ## Geeft als resultaat het aantal dagen in de coupontermijn waarin de stortingsdatum valt +COUPDAYSNC = COUP.DAGEN.VV ## Geeft als resultaat het aantal dagen vanaf de stortingsdatum tot de volgende couponvervaldatum +COUPNCD = COUP.DATUM.NB ## Geeft als resultaat de volgende coupondatum na de stortingsdatum +COUPNUM = COUP.AANTAL ## Geeft als resultaat het aantal coupons dat nog moet worden uitbetaald tussen de stortingsdatum en de vervaldatum +COUPPCD = COUP.DATUM.VB ## Geeft als resultaat de vorige couponvervaldatum vóór de stortingsdatum +CUMIPMT = CUM.RENTE ## Geeft als resultaat de cumulatieve rente die tussen twee termijnen is uitgekeerd +CUMPRINC = CUM.HOOFDSOM ## Geeft als resultaat de cumulatieve hoofdsom van een lening die tussen twee termijnen is terugbetaald +DB = DB ## Geeft als resultaat de afschrijving van activa voor een bepaalde periode met behulp van de 'fixed declining balance'-methode +DDB = DDB ## Geeft als resultaat de afschrijving van activa over een bepaalde termijn met behulp van de 'double declining balance'-methode of een andere methode die u opgeeft +DISC = DISCONTO ## Geeft als resultaat het discontopercentage voor een waardepapier +DOLLARDE = EURO.DE ## Converteert een prijs in euro's, uitgedrukt in een breuk, naar een prijs in euro's, uitgedrukt in een decimaal getal +DOLLARFR = EURO.BR ## Converteert een prijs in euro's, uitgedrukt in een decimaal getal, naar een prijs in euro's, uitgedrukt in een breuk +DURATION = DUUR ## Geeft als resultaat de gewogen gemiddelde looptijd voor een waardepapier met periodieke rentebetalingen +EFFECT = EFFECT.RENTE ## Geeft als resultaat het effectieve jaarlijkse rentepercentage +FV = TW ## Geeft als resultaat de toekomstige waarde van een investering +FVSCHEDULE = TOEK.WAARDE2 ## Geeft als resultaat de toekomstige waarde van een bepaalde hoofdsom na het toepassen van een reeks samengestelde rentepercentages +INTRATE = RENTEPERCENTAGE ## Geeft als resultaat het rentepercentage voor een volgestort waardepapier +IPMT = IBET ## Geeft als resultaat de te betalen rente voor een investering over een bepaalde termijn +IRR = IR ## Geeft als resultaat de interne rentabiliteit voor een reeks cashflows +ISPMT = ISBET ## Geeft als resultaat de rente die is betaald tijdens een bepaalde termijn van een investering +MDURATION = AANG.DUUR ## Geeft als resultaat de aangepaste Macauley-looptijd voor een waardepapier, aangenomen dat de nominale waarde € 100 bedraagt +MIRR = GIR ## Geeft als resultaat de interne rentabiliteit voor een serie cashflows, waarbij voor betalingen een ander rentepercentage geldt dan voor inkomsten +NOMINAL = NOMINALE.RENTE ## Geeft als resultaat het nominale jaarlijkse rentepercentage +NPER = NPER ## Geeft als resultaat het aantal termijnen van een investering +NPV = NHW ## Geeft als resultaat de netto huidige waarde van een investering op basis van een reeks periodieke cashflows en een discontopercentage +ODDFPRICE = AFW.ET.PRIJS ## Geeft als resultaat de prijs per € 100 nominale waarde voor een waardepapier met een afwijkende eerste termijn +ODDFYIELD = AFW.ET.REND ## Geeft als resultaat het rendement voor een waardepapier met een afwijkende eerste termijn +ODDLPRICE = AFW.LT.PRIJS ## Geeft als resultaat de prijs per € 100 nominale waarde voor een waardepapier met een afwijkende laatste termijn +ODDLYIELD = AFW.LT.REND ## Geeft als resultaat het rendement voor een waardepapier met een afwijkende laatste termijn +PMT = BET ## Geeft als resultaat de periodieke betaling voor een annuïteit +PPMT = PBET ## Geeft als resultaat de afbetaling op de hoofdsom voor een bepaalde termijn +PRICE = PRIJS.NOM ## Geeft als resultaat de prijs per € 100 nominale waarde voor een waardepapier waarvan de rente periodiek wordt uitgekeerd +PRICEDISC = PRIJS.DISCONTO ## Geeft als resultaat de prijs per € 100 nominale waarde voor een verdisconteerd waardepapier +PRICEMAT = PRIJS.VERVALDAG ## Geeft als resultaat de prijs per € 100 nominale waarde voor een waardepapier waarvan de rente wordt uitgekeerd op de vervaldatum +PV = HW ## Geeft als resultaat de huidige waarde van een investering +RATE = RENTE ## Geeft als resultaat het periodieke rentepercentage voor een annuïteit +RECEIVED = OPBRENGST ## Geeft als resultaat het bedrag dat op de vervaldatum wordt uitgekeerd voor een volgestort waardepapier +SLN = LIN.AFSCHR ## Geeft als resultaat de lineaire afschrijving van activa over één termijn +SYD = SYD ## Geeft als resultaat de afschrijving van activa over een bepaalde termijn met behulp van de 'Sum-Of-Years-Digits'-methode +TBILLEQ = SCHATK.OBL ## Geeft als resultaat het rendement op schatkistpapier, dat op dezelfde manier wordt berekend als het rendement op obligaties +TBILLPRICE = SCHATK.PRIJS ## Bepaalt de prijs per € 100 nominale waarde voor schatkistpapier +TBILLYIELD = SCHATK.REND ## Berekent het rendement voor schatkistpapier +VDB = VDB ## Geeft als resultaat de afschrijving van activa over een gehele of gedeeltelijke termijn met behulp van de 'declining balance'-methode +XIRR = IR.SCHEMA ## Berekent de interne rentabiliteit voor een betalingsschema van cashflows +XNPV = NHW2 ## Berekent de huidige nettowaarde voor een betalingsschema van cashflows +YIELD = RENDEMENT ## Geeft als resultaat het rendement voor een waardepapier waarvan de rente periodiek wordt uitgekeerd +YIELDDISC = REND.DISCONTO ## Geeft als resultaat het jaarlijkse rendement voor een verdisconteerd waardepapier, bijvoorbeeld schatkistpapier +YIELDMAT = REND.VERVAL ## Geeft als resultaat het jaarlijkse rendement voor een waardepapier waarvan de rente wordt uitgekeerd op de vervaldatum + + +## +## Information functions Informatiefuncties +## +CELL = CEL ## Geeft als resultaat informatie over de opmaak, locatie of inhoud van een cel +ERROR.TYPE = TYPE.FOUT ## Geeft als resultaat een getal dat overeenkomt met een van de foutwaarden van Microsoft Excel +INFO = INFO ## Geeft als resultaat informatie over de huidige besturingsomgeving +ISBLANK = ISLEEG ## Geeft als resultaat WAAR als de waarde leeg is +ISERR = ISFOUT2 ## Geeft als resultaat WAAR als de waarde een foutwaarde is, met uitzondering van #N/B +ISERROR = ISFOUT ## Geeft als resultaat WAAR als de waarde een foutwaarde is +ISEVEN = IS.EVEN ## Geeft als resultaat WAAR als het getal even is +ISLOGICAL = ISLOGISCH ## Geeft als resultaat WAAR als de waarde een logische waarde is +ISNA = ISNB ## Geeft als resultaat WAAR als de waarde de foutwaarde #N/B is +ISNONTEXT = ISGEENTEKST ## Geeft als resultaat WAAR als de waarde geen tekst is +ISNUMBER = ISGETAL ## Geeft als resultaat WAAR als de waarde een getal is +ISODD = IS.ONEVEN ## Geeft als resultaat WAAR als het getal oneven is +ISREF = ISVERWIJZING ## Geeft als resultaat WAAR als de waarde een verwijzing is +ISTEXT = ISTEKST ## Geeft als resultaat WAAR als de waarde tekst is +N = N ## Geeft als resultaat een waarde die is geconverteerd naar een getal +NA = NB ## Geeft als resultaat de foutwaarde #N/B +TYPE = TYPE ## Geeft als resultaat een getal dat het gegevenstype van een waarde aangeeft + + +## +## Logical functions Logische functies +## +AND = EN ## Geeft als resultaat WAAR als alle argumenten WAAR zijn +FALSE = ONWAAR ## Geeft als resultaat de logische waarde ONWAAR +IF = ALS ## Geeft een logische test aan +IFERROR = ALS.FOUT ## Retourneert een waarde die u opgeeft als een formule een fout oplevert, anders wordt het resultaat van de formule geretourneerd +NOT = NIET ## Keert de logische waarde van het argument om +OR = OF ## Geeft als resultaat WAAR als minimaal een van de argumenten WAAR is +TRUE = WAAR ## Geeft als resultaat de logische waarde WAAR + + +## +## Lookup and reference functions Zoek- en verwijzingsfuncties +## +ADDRESS = ADRES ## Geeft als resultaat een verwijzing, in de vorm van tekst, naar één bepaalde cel in een werkblad +AREAS = BEREIKEN ## Geeft als resultaat het aantal bereiken in een verwijzing +CHOOSE = KIEZEN ## Kiest een waarde uit een lijst met waarden +COLUMN = KOLOM ## Geeft als resultaat het kolomnummer van een verwijzing +COLUMNS = KOLOMMEN ## Geeft als resultaat het aantal kolommen in een verwijzing +HLOOKUP = HORIZ.ZOEKEN ## Zoekt in de bovenste rij van een matrix naar een bepaalde waarde en geeft als resultaat de gevonden waarde in de opgegeven cel +HYPERLINK = HYPERLINK ## Maakt een snelkoppeling of een sprong waarmee een document wordt geopend dat is opgeslagen op een netwerkserver, een intranet of op internet +INDEX = INDEX ## Kiest met een index een waarde uit een verwijzing of een matrix +INDIRECT = INDIRECT ## Geeft als resultaat een verwijzing die wordt aangegeven met een tekstwaarde +LOOKUP = ZOEKEN ## Zoekt naar bepaalde waarden in een vector of een matrix +MATCH = VERGELIJKEN ## Zoekt naar bepaalde waarden in een verwijzing of een matrix +OFFSET = VERSCHUIVING ## Geeft als resultaat een nieuwe verwijzing die is verschoven ten opzichte van een bepaalde verwijzing +ROW = RIJ ## Geeft als resultaat het rijnummer van een verwijzing +ROWS = RIJEN ## Geeft als resultaat het aantal rijen in een verwijzing +RTD = RTG ## Haalt realtimegegevens op uit een programma dat COM-automatisering (automatisering: een methode waarmee de ene toepassing objecten van een andere toepassing of ontwikkelprogramma kan besturen. Automatisering werd vroeger OLE-automatisering genoemd. Automatisering is een industrienorm die deel uitmaakt van het Component Object Model (COM).) ondersteunt +TRANSPOSE = TRANSPONEREN ## Geeft als resultaat de getransponeerde van een matrix +VLOOKUP = VERT.ZOEKEN ## Zoekt in de meest linkse kolom van een matrix naar een bepaalde waarde en geeft als resultaat de waarde in de opgegeven cel + + +## +## Math and trigonometry functions Wiskundige en trigonometrische functies +## +ABS = ABS ## Geeft als resultaat de absolute waarde van een getal +ACOS = BOOGCOS ## Geeft als resultaat de boogcosinus van een getal +ACOSH = BOOGCOSH ## Geeft als resultaat de inverse cosinus hyperbolicus van een getal +ASIN = BOOGSIN ## Geeft als resultaat de boogsinus van een getal +ASINH = BOOGSINH ## Geeft als resultaat de inverse sinus hyperbolicus van een getal +ATAN = BOOGTAN ## Geeft als resultaat de boogtangens van een getal +ATAN2 = BOOGTAN2 ## Geeft als resultaat de boogtangens van de x- en y-coördinaten +ATANH = BOOGTANH ## Geeft als resultaat de inverse tangens hyperbolicus van een getal +CEILING = AFRONDEN.BOVEN ## Rondt de absolute waarde van een getal naar boven af op het dichtstbijzijnde gehele getal of het dichtstbijzijnde significante veelvoud +COMBIN = COMBINATIES ## Geeft als resultaat het aantal combinaties voor een bepaald aantal objecten +COS = COS ## Geeft als resultaat de cosinus van een getal +COSH = COSH ## Geeft als resultaat de cosinus hyperbolicus van een getal +DEGREES = GRADEN ## Converteert radialen naar graden +EVEN = EVEN ## Rondt het getal af op het dichtstbijzijnde gehele even getal +EXP = EXP ## Verheft e tot de macht van een bepaald getal +FACT = FACULTEIT ## Geeft als resultaat de faculteit van een getal +FACTDOUBLE = DUBBELE.FACULTEIT ## Geeft als resultaat de dubbele faculteit van een getal +FLOOR = AFRONDEN.BENEDEN ## Rondt de absolute waarde van een getal naar beneden af +GCD = GGD ## Geeft als resultaat de grootste gemene deler +INT = INTEGER ## Rondt een getal naar beneden af op het dichtstbijzijnde gehele getal +LCM = KGV ## Geeft als resultaat het kleinste gemene veelvoud +LN = LN ## Geeft als resultaat de natuurlijke logaritme van een getal +LOG = LOG ## Geeft als resultaat de logaritme met het opgegeven grondtal van een getal +LOG10 = LOG10 ## Geeft als resultaat de logaritme met grondtal 10 van een getal +MDETERM = DETERMINANTMAT ## Geeft als resultaat de determinant van een matrix +MINVERSE = INVERSEMAT ## Geeft als resultaat de inverse van een matrix +MMULT = PRODUCTMAT ## Geeft als resultaat het product van twee matrices +MOD = REST ## Geeft als resultaat het restgetal van een deling +MROUND = AFRONDEN.N.VEELVOUD ## Geeft als resultaat een getal afgerond op het gewenste veelvoud +MULTINOMIAL = MULTINOMIAAL ## Geeft als resultaat de multinomiaalcoëfficiënt van een reeks getallen +ODD = ONEVEN ## Rondt de absolute waarde van het getal naar boven af op het dichtstbijzijnde gehele oneven getal +PI = PI ## Geeft als resultaat de waarde van pi +POWER = MACHT ## Verheft een getal tot een macht +PRODUCT = PRODUCT ## Vermenigvuldigt de argumenten met elkaar +QUOTIENT = QUOTIENT ## Geeft als resultaat de uitkomst van een deling als geheel getal +RADIANS = RADIALEN ## Converteert graden naar radialen +RAND = ASELECT ## Geeft als resultaat een willekeurig getal tussen 0 en 1 +RANDBETWEEN = ASELECTTUSSEN ## Geeft een willekeurig getal tussen de getallen die u hebt opgegeven +ROMAN = ROMEINS ## Converteert een Arabisch getal naar een Romeins getal en geeft het resultaat weer in de vorm van tekst +ROUND = AFRONDEN ## Rondt een getal af op het opgegeven aantal decimalen +ROUNDDOWN = AFRONDEN.NAAR.BENEDEN ## Rondt de absolute waarde van een getal naar beneden af +ROUNDUP = AFRONDEN.NAAR.BOVEN ## Rondt de absolute waarde van een getal naar boven af +SERIESSUM = SOM.MACHTREEKS ## Geeft als resultaat de som van een machtreeks die is gebaseerd op de formule +SIGN = POS.NEG ## Geeft als resultaat het teken van een getal +SIN = SIN ## Geeft als resultaat de sinus van de opgegeven hoek +SINH = SINH ## Geeft als resultaat de sinus hyperbolicus van een getal +SQRT = WORTEL ## Geeft als resultaat de positieve vierkantswortel van een getal +SQRTPI = WORTEL.PI ## Geeft als resultaat de vierkantswortel van (getal * pi) +SUBTOTAL = SUBTOTAAL ## Geeft als resultaat een subtotaal voor een bereik +SUM = SOM ## Telt de argumenten op +SUMIF = SOM.ALS ## Telt de getallen bij elkaar op die voldoen aan een bepaald criterium +SUMIFS = SOMMEN.ALS ## Telt de cellen in een bereik op die aan meerdere criteria voldoen +SUMPRODUCT = SOMPRODUCT ## Geeft als resultaat de som van de producten van de corresponderende matrixelementen +SUMSQ = KWADRATENSOM ## Geeft als resultaat de som van de kwadraten van de argumenten +SUMX2MY2 = SOM.X2MINY2 ## Geeft als resultaat de som van het verschil tussen de kwadraten van corresponderende waarden in twee matrices +SUMX2PY2 = SOM.X2PLUSY2 ## Geeft als resultaat de som van de kwadratensom van corresponderende waarden in twee matrices +SUMXMY2 = SOM.XMINY.2 ## Geeft als resultaat de som van de kwadraten van de verschillen tussen de corresponderende waarden in twee matrices +TAN = TAN ## Geeft als resultaat de tangens van een getal +TANH = TANH ## Geeft als resultaat de tangens hyperbolicus van een getal +TRUNC = GEHEEL ## Kapt een getal af tot een geheel getal + + +## +## Statistical functions Statistische functies +## +AVEDEV = GEM.DEVIATIE ## Geeft als resultaat het gemiddelde van de absolute deviaties van gegevenspunten ten opzichte van hun gemiddelde waarde +AVERAGE = GEMIDDELDE ## Geeft als resultaat het gemiddelde van de argumenten +AVERAGEA = GEMIDDELDEA ## Geeft als resultaat het gemiddelde van de argumenten, inclusief getallen, tekst en logische waarden +AVERAGEIF = GEMIDDELDE.ALS ## Geeft het gemiddelde (rekenkundig gemiddelde) als resultaat van alle cellen in een bereik die voldoen aan de opgegeven criteria +AVERAGEIFS = GEMIDDELDEN.ALS ## Geeft het gemiddelde (rekenkundig gemiddelde) als resultaat van alle cellen die aan meerdere criteria voldoen +BETADIST = BETA.VERD ## Geeft als resultaat de cumulatieve bèta-verdelingsfunctie +BETAINV = BETA.INV ## Geeft als resultaat de inverse van de cumulatieve verdelingsfunctie voor een gegeven bèta-verdeling +BINOMDIST = BINOMIALE.VERD ## Geeft als resultaat de binomiale verdeling +CHIDIST = CHI.KWADRAAT ## Geeft als resultaat de eenzijdige kans van de chi-kwadraatverdeling +CHIINV = CHI.KWADRAAT.INV ## Geeft als resultaat de inverse van een eenzijdige kans van de chi-kwadraatverdeling +CHITEST = CHI.TOETS ## Geeft als resultaat de onafhankelijkheidstoets +CONFIDENCE = BETROUWBAARHEID ## Geeft als resultaat het betrouwbaarheidsinterval van een gemiddelde waarde voor de elementen van een populatie +CORREL = CORRELATIE ## Geeft als resultaat de correlatiecoëfficiënt van twee gegevensverzamelingen +COUNT = AANTAL ## Telt het aantal getallen in de argumentenlijst +COUNTA = AANTALARG ## Telt het aantal waarden in de argumentenlijst +COUNTBLANK = AANTAL.LEGE.CELLEN ## Telt het aantal lege cellen in een bereik +COUNTIF = AANTAL.ALS ## Telt in een bereik het aantal cellen die voldoen aan een bepaald criterium +COUNTIFS = AANTALLEN.ALS ## Telt in een bereik het aantal cellen die voldoen aan meerdere criteria +COVAR = COVARIANTIE ## Geeft als resultaat de covariantie, het gemiddelde van de producten van de gepaarde deviaties +CRITBINOM = CRIT.BINOM ## Geeft als resultaat de kleinste waarde waarvoor de binomiale verdeling kleiner is dan of gelijk is aan het criterium +DEVSQ = DEV.KWAD ## Geeft als resultaat de som van de deviaties in het kwadraat +EXPONDIST = EXPON.VERD ## Geeft als resultaat de exponentiële verdeling +FDIST = F.VERDELING ## Geeft als resultaat de F-verdeling +FINV = F.INVERSE ## Geeft als resultaat de inverse van de F-verdeling +FISHER = FISHER ## Geeft als resultaat de Fisher-transformatie +FISHERINV = FISHER.INV ## Geeft als resultaat de inverse van de Fisher-transformatie +FORECAST = VOORSPELLEN ## Geeft als resultaat een waarde op basis van een lineaire trend +FREQUENCY = FREQUENTIE ## Geeft als resultaat een frequentieverdeling in de vorm van een verticale matrix +FTEST = F.TOETS ## Geeft als resultaat een F-toets +GAMMADIST = GAMMA.VERD ## Geeft als resultaat de gamma-verdeling +GAMMAINV = GAMMA.INV ## Geeft als resultaat de inverse van de cumulatieve gamma-verdeling +GAMMALN = GAMMA.LN ## Geeft als resultaat de natuurlijke logaritme van de gamma-functie, G(x) +GEOMEAN = MEETK.GEM ## Geeft als resultaat het meetkundige gemiddelde +GROWTH = GROEI ## Geeft als resultaat de waarden voor een exponentiële trend +HARMEAN = HARM.GEM ## Geeft als resultaat het harmonische gemiddelde +HYPGEOMDIST = HYPERGEO.VERD ## Geeft als resultaat de hypergeometrische verdeling +INTERCEPT = SNIJPUNT ## Geeft als resultaat het snijpunt van de lineaire regressielijn met de y-as +KURT = KURTOSIS ## Geeft als resultaat de kurtosis van een gegevensverzameling +LARGE = GROOTSTE ## Geeft als resultaat de op k-1 na grootste waarde in een gegevensverzameling +LINEST = LIJNSCH ## Geeft als resultaat de parameters van een lineaire trend +LOGEST = LOGSCH ## Geeft als resultaat de parameters van een exponentiële trend +LOGINV = LOG.NORM.INV ## Geeft als resultaat de inverse van de logaritmische normale verdeling +LOGNORMDIST = LOG.NORM.VERD ## Geeft als resultaat de cumulatieve logaritmische normale verdeling +MAX = MAX ## Geeft als resultaat de maximumwaarde in een lijst met argumenten +MAXA = MAXA ## Geeft als resultaat de maximumwaarde in een lijst met argumenten, inclusief getallen, tekst en logische waarden +MEDIAN = MEDIAAN ## Geeft als resultaat de mediaan van de opgegeven getallen +MIN = MIN ## Geeft als resultaat de minimumwaarde in een lijst met argumenten +MINA = MINA ## Geeft als resultaat de minimumwaarde in een lijst met argumenten, inclusief getallen, tekst en logische waarden +MODE = MODUS ## Geeft als resultaat de meest voorkomende waarde in een gegevensverzameling +NEGBINOMDIST = NEG.BINOM.VERD ## Geeft als resultaat de negatieve binomiaalverdeling +NORMDIST = NORM.VERD ## Geeft als resultaat de cumulatieve normale verdeling +NORMINV = NORM.INV ## Geeft als resultaat de inverse van de cumulatieve standaardnormale verdeling +NORMSDIST = STAND.NORM.VERD ## Geeft als resultaat de cumulatieve standaardnormale verdeling +NORMSINV = STAND.NORM.INV ## Geeft als resultaat de inverse van de cumulatieve normale verdeling +PEARSON = PEARSON ## Geeft als resultaat de correlatiecoëfficiënt van Pearson +PERCENTILE = PERCENTIEL ## Geeft als resultaat het k-de percentiel van waarden in een bereik +PERCENTRANK = PERCENT.RANG ## Geeft als resultaat de positie, in procenten uitgedrukt, van een waarde in de rangorde van een gegevensverzameling +PERMUT = PERMUTATIES ## Geeft als resultaat het aantal permutaties voor een gegeven aantal objecten +POISSON = POISSON ## Geeft als resultaat de Poisson-verdeling +PROB = KANS ## Geeft als resultaat de kans dat waarden zich tussen twee grenzen bevinden +QUARTILE = KWARTIEL ## Geeft als resultaat het kwartiel van een gegevensverzameling +RANK = RANG ## Geeft als resultaat het rangnummer van een getal in een lijst getallen +RSQ = R.KWADRAAT ## Geeft als resultaat het kwadraat van de Pearson-correlatiecoëfficiënt +SKEW = SCHEEFHEID ## Geeft als resultaat de mate van asymmetrie van een verdeling +SLOPE = RICHTING ## Geeft als resultaat de richtingscoëfficiënt van een lineaire regressielijn +SMALL = KLEINSTE ## Geeft als resultaat de op k-1 na kleinste waarde in een gegevensverzameling +STANDARDIZE = NORMALISEREN ## Geeft als resultaat een genormaliseerde waarde +STDEV = STDEV ## Maakt een schatting van de standaarddeviatie op basis van een steekproef +STDEVA = STDEVA ## Maakt een schatting van de standaarddeviatie op basis van een steekproef, inclusief getallen, tekst en logische waarden +STDEVP = STDEVP ## Berekent de standaarddeviatie op basis van de volledige populatie +STDEVPA = STDEVPA ## Berekent de standaarddeviatie op basis van de volledige populatie, inclusief getallen, tekst en logische waarden +STEYX = STAND.FOUT.YX ## Geeft als resultaat de standaardfout in de voorspelde y-waarde voor elke x in een regressie +TDIST = T.VERD ## Geeft als resultaat de Student T-verdeling +TINV = T.INV ## Geeft als resultaat de inverse van de Student T-verdeling +TREND = TREND ## Geeft als resultaat de waarden voor een lineaire trend +TRIMMEAN = GETRIMD.GEM ## Geeft als resultaat het gemiddelde van waarden in een gegevensverzameling +TTEST = T.TOETS ## Geeft als resultaat de kans met behulp van de Student T-toets +VAR = VAR ## Maakt een schatting van de variantie op basis van een steekproef +VARA = VARA ## Maakt een schatting van de variantie op basis van een steekproef, inclusief getallen, tekst en logische waarden +VARP = VARP ## Berekent de variantie op basis van de volledige populatie +VARPA = VARPA ## Berekent de standaarddeviatie op basis van de volledige populatie, inclusief getallen, tekst en logische waarden +WEIBULL = WEIBULL ## Geeft als resultaat de Weibull-verdeling +ZTEST = Z.TOETS ## Geeft als resultaat de eenzijdige kanswaarde van een Z-toets + + +## +## Text functions Tekstfuncties +## +ASC = ASC ## Wijzigt Nederlandse letters of katakanatekens over de volle breedte (dubbel-bytetekens) binnen een tekenreeks in tekens over de halve breedte (enkel-bytetekens) +BAHTTEXT = BAHT.TEKST ## Converteert een getal naar tekst met de valutanotatie ß (baht) +CHAR = TEKEN ## Geeft als resultaat het teken dat hoort bij de opgegeven code +CLEAN = WISSEN.CONTROL ## Verwijdert alle niet-afdrukbare tekens uit een tekst +CODE = CODE ## Geeft als resultaat de numerieke code voor het eerste teken in een tekenreeks +CONCATENATE = TEKST.SAMENVOEGEN ## Voegt verschillende tekstfragmenten samen tot één tekstfragment +DOLLAR = EURO ## Converteert een getal naar tekst met de valutanotatie € (euro) +EXACT = GELIJK ## Controleert of twee tekenreeksen identiek zijn +FIND = VIND.ALLES ## Zoekt een bepaalde tekenreeks in een tekst (waarbij onderscheid wordt gemaakt tussen hoofdletters en kleine letters) +FINDB = VIND.ALLES.B ## Zoekt een bepaalde tekenreeks in een tekst (waarbij onderscheid wordt gemaakt tussen hoofdletters en kleine letters) +FIXED = VAST ## Maakt een getal als tekst met een vast aantal decimalen op +JIS = JIS ## Wijzigt Nederlandse letters of katakanatekens over de halve breedte (enkel-bytetekens) binnen een tekenreeks in tekens over de volle breedte (dubbel-bytetekens) +LEFT = LINKS ## Geeft als resultaat de meest linkse tekens in een tekenreeks +LEFTB = LINKSB ## Geeft als resultaat de meest linkse tekens in een tekenreeks +LEN = LENGTE ## Geeft als resultaat het aantal tekens in een tekenreeks +LENB = LENGTEB ## Geeft als resultaat het aantal tekens in een tekenreeks +LOWER = KLEINE.LETTERS ## Zet tekst om in kleine letters +MID = MIDDEN ## Geeft als resultaat een bepaald aantal tekens van een tekenreeks vanaf de positie die u opgeeft +MIDB = DEELB ## Geeft als resultaat een bepaald aantal tekens van een tekenreeks vanaf de positie die u opgeeft +PHONETIC = FONETISCH ## Haalt de fonetische tekens (furigana) uit een tekenreeks op +PROPER = BEGINLETTERS ## Zet de eerste letter van elk woord in een tekst om in een hoofdletter +REPLACE = VERVANG ## Vervangt tekens binnen een tekst +REPLACEB = VERVANGENB ## Vervangt tekens binnen een tekst +REPT = HERHALING ## Herhaalt een tekst een aantal malen +RIGHT = RECHTS ## Geeft als resultaat de meest rechtse tekens in een tekenreeks +RIGHTB = RECHTSB ## Geeft als resultaat de meest rechtse tekens in een tekenreeks +SEARCH = VIND.SPEC ## Zoekt een bepaalde tekenreeks in een tekst (waarbij geen onderscheid wordt gemaakt tussen hoofdletters en kleine letters) +SEARCHB = VIND.SPEC.B ## Zoekt een bepaalde tekenreeks in een tekst (waarbij geen onderscheid wordt gemaakt tussen hoofdletters en kleine letters) +SUBSTITUTE = SUBSTITUEREN ## Vervangt oude tekst door nieuwe tekst in een tekenreeks +T = T ## Converteert de argumenten naar tekst +TEXT = TEKST ## Maakt een getal op en converteert het getal naar tekst +TRIM = SPATIES.WISSEN ## Verwijdert de spaties uit een tekst +UPPER = HOOFDLETTERS ## Zet tekst om in hoofdletters +VALUE = WAARDE ## Converteert tekst naar een getal diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/no/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/no/_notes/dwsync.xml new file mode 100644 index 0000000..24b1c5b --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/no/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559952106603" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559952646422" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752255161782" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752255439992" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461248850575" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461249377941" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752255161782" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752255439992" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/no/config b/site/config/PHPExcel/Classes/PHPExcel/locale/no/config new file mode 100644 index 0000000..482e4bc --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/no/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = kr + + +## +## Excel Error Codes (For future use) +## +NULL = #NULL! +DIV0 = #DIV/0! +VALUE = #VERDI! +REF = #REF! +NAME = #NAVN? +NUM = #NUM! +NA = #I/T diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/no/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/no/functions new file mode 100644 index 0000000..eb5ae02 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/no/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Funksjonene Tillegg og Automatisering +## +GETPIVOTDATA = HENTPIVOTDATA ## Returnerer data som er lagret i en pivottabellrapport + + +## +## Cube functions Kubefunksjoner +## +CUBEKPIMEMBER = KUBEKPIMEDLEM ## Returnerer navnet, egenskapen og målet for en viktig ytelsesindikator (KPI), og viser navnet og egenskapen i cellen. En KPI er en målbar enhet, for eksempel månedlig bruttoinntjening eller kvartalsvis inntjening per ansatt, og brukes til å overvåke ytelsen i en organisasjon. +CUBEMEMBER = KUBEMEDLEM ## Returnerer et medlem eller en tuppel i et kubehierarki. Brukes til å validere at medlemmet eller tuppelen finnes i kuben. +CUBEMEMBERPROPERTY = KUBEMEDLEMEGENSKAP ## Returnerer verdien til en medlemsegenskap i kuben. Brukes til å validere at et medlemsnavn finnes i kuben, og til å returnere den angitte egenskapen for dette medlemmet. +CUBERANKEDMEMBER = KUBERANGERTMEDLEM ## Returnerer det n-te, eller rangerte, medlemmet i et sett. Brukes til å returnere ett eller flere elementer i et sett, for eksempel de 10 beste studentene. +CUBESET = KUBESETT ## Definerer et beregnet sett av medlemmer eller tuppeler ved å sende et settuttrykk til kuben på serveren, noe som oppretter settet og deretter returnerer dette settet til Microsoft Office Excel. +CUBESETCOUNT = KUBESETTANTALL ## Returnerer antallet elementer i et sett. +CUBEVALUE = KUBEVERDI ## Returnerer en aggregert verdi fra en kube. + + +## +## Database functions Databasefunksjoner +## +DAVERAGE = DGJENNOMSNITT ## Returnerer gjennomsnittet av merkede databaseposter +DCOUNT = DANTALL ## Teller celler som inneholder tall i en database +DCOUNTA = DANTALLA ## Teller celler som ikke er tomme i en database +DGET = DHENT ## Trekker ut fra en database en post som oppfyller angitte vilkår +DMAX = DMAKS ## Returnerer maksimumsverdien fra merkede databaseposter +DMIN = DMIN ## Returnerer minimumsverdien fra merkede databaseposter +DPRODUCT = DPRODUKT ## Multipliserer verdiene i et bestemt felt med poster som oppfyller vilkårene i en database +DSTDEV = DSTDAV ## Estimerer standardavviket basert på et utvalg av merkede databaseposter +DSTDEVP = DSTAVP ## Beregner standardavviket basert på at merkede databaseposter utgjør hele populasjonen +DSUM = DSUMMER ## Legger til tallene i feltkolonnen med poster, i databasen som oppfyller vilkårene +DVAR = DVARIANS ## Estimerer variansen basert på et utvalg av merkede databaseposter +DVARP = DVARIANSP ## Beregner variansen basert på at merkede databaseposter utgjør hele populasjonen + + +## +## Date and time functions Dato- og tidsfunksjoner +## +DATE = DATO ## Returnerer serienummeret som svarer til en bestemt dato +DATEVALUE = DATOVERDI ## Konverterer en dato med tekstformat til et serienummer +DAY = DAG ## Konverterer et serienummer til en dag i måneden +DAYS360 = DAGER360 ## Beregner antall dager mellom to datoer basert på et år med 360 dager +EDATE = DAG.ETTER ## Returnerer serienummeret som svarer til datoen som er det indikerte antall måneder før eller etter startdatoen +EOMONTH = MÅNEDSSLUTT ## Returnerer serienummeret som svarer til siste dag i måneden, før eller etter et angitt antall måneder +HOUR = TIME ## Konverterer et serienummer til en time +MINUTE = MINUTT ## Konverterer et serienummer til et minutt +MONTH = MÅNED ## Konverterer et serienummer til en måned +NETWORKDAYS = NETT.ARBEIDSDAGER ## Returnerer antall hele arbeidsdager mellom to datoer +NOW = NÅ ## Returnerer serienummeret som svarer til gjeldende dato og klokkeslett +SECOND = SEKUND ## Konverterer et serienummer til et sekund +TIME = TID ## Returnerer serienummeret som svarer til et bestemt klokkeslett +TIMEVALUE = TIDSVERDI ## Konverterer et klokkeslett i tekstformat til et serienummer +TODAY = IDAG ## Returnerer serienummeret som svarer til dagens dato +WEEKDAY = UKEDAG ## Konverterer et serienummer til en ukedag +WEEKNUM = UKENR ## Konverterer et serienummer til et tall som representerer hvilket nummer uken har i et år +WORKDAY = ARBEIDSDAG ## Returnerer serienummeret som svarer til datoen før eller etter et angitt antall arbeidsdager +YEAR = ÅR ## Konverterer et serienummer til et år +YEARFRAC = ÅRDEL ## Returnerer brøkdelen for året, som svarer til antall hele dager mellom startdato og sluttdato + + +## +## Engineering functions Tekniske funksjoner +## +BESSELI = BESSELI ## Returnerer den endrede Bessel-funksjonen In(x) +BESSELJ = BESSELJ ## Returnerer Bessel-funksjonen Jn(x) +BESSELK = BESSELK ## Returnerer den endrede Bessel-funksjonen Kn(x) +BESSELY = BESSELY ## Returnerer Bessel-funksjonen Yn(x) +BIN2DEC = BINTILDES ## Konverterer et binært tall til et desimaltall +BIN2HEX = BINTILHEKS ## Konverterer et binært tall til et heksadesimaltall +BIN2OCT = BINTILOKT ## Konverterer et binært tall til et oktaltall +COMPLEX = KOMPLEKS ## Konverterer reelle og imaginære koeffisienter til et komplekst tall +CONVERT = KONVERTER ## Konverterer et tall fra ett målsystem til et annet +DEC2BIN = DESTILBIN ## Konverterer et desimaltall til et binærtall +DEC2HEX = DESTILHEKS ## Konverterer et heltall i 10-tallsystemet til et heksadesimalt tall +DEC2OCT = DESTILOKT ## Konverterer et heltall i 10-tallsystemet til et oktaltall +DELTA = DELTA ## Undersøker om to verdier er like +ERF = FEILF ## Returnerer feilfunksjonen +ERFC = FEILFK ## Returnerer den komplementære feilfunksjonen +GESTEP = GRENSEVERDI ## Tester om et tall er større enn en terskelverdi +HEX2BIN = HEKSTILBIN ## Konverterer et heksadesimaltall til et binært tall +HEX2DEC = HEKSTILDES ## Konverterer et heksadesimalt tall til et heltall i 10-tallsystemet +HEX2OCT = HEKSTILOKT ## Konverterer et heksadesimalt tall til et oktaltall +IMABS = IMABS ## Returnerer absoluttverdien (koeffisienten) til et komplekst tall +IMAGINARY = IMAGINÆR ## Returnerer den imaginære koeffisienten til et komplekst tall +IMARGUMENT = IMARGUMENT ## Returnerer argumentet theta, som er en vinkel uttrykt i radianer +IMCONJUGATE = IMKONJUGERT ## Returnerer den komplekse konjugaten til et komplekst tall +IMCOS = IMCOS ## Returnerer cosinus til et komplekst tall +IMDIV = IMDIV ## Returnerer kvotienten til to komplekse tall +IMEXP = IMEKSP ## Returnerer eksponenten til et komplekst tall +IMLN = IMLN ## Returnerer den naturlige logaritmen for et komplekst tall +IMLOG10 = IMLOG10 ## Returnerer logaritmen med grunntall 10 for et komplekst tall +IMLOG2 = IMLOG2 ## Returnerer logaritmen med grunntall 2 for et komplekst tall +IMPOWER = IMOPPHØY ## Returnerer et komplekst tall opphøyd til en heltallspotens +IMPRODUCT = IMPRODUKT ## Returnerer produktet av komplekse tall +IMREAL = IMREELL ## Returnerer den reelle koeffisienten til et komplekst tall +IMSIN = IMSIN ## Returnerer sinus til et komplekst tall +IMSQRT = IMROT ## Returnerer kvadratroten av et komplekst tall +IMSUB = IMSUB ## Returnerer differansen mellom to komplekse tall +IMSUM = IMSUMMER ## Returnerer summen av komplekse tall +OCT2BIN = OKTTILBIN ## Konverterer et oktaltall til et binært tall +OCT2DEC = OKTTILDES ## Konverterer et oktaltall til et desimaltall +OCT2HEX = OKTTILHEKS ## Konverterer et oktaltall til et heksadesimaltall + + +## +## Financial functions Økonomiske funksjoner +## +ACCRINT = PÅLØPT.PERIODISK.RENTE ## Returnerer påløpte renter for et verdipapir som betaler periodisk rente +ACCRINTM = PÅLØPT.FORFALLSRENTE ## Returnerer den påløpte renten for et verdipapir som betaler rente ved forfall +AMORDEGRC = AMORDEGRC ## Returnerer avskrivningen for hver regnskapsperiode ved hjelp av en avskrivingskoeffisient +AMORLINC = AMORLINC ## Returnerer avskrivingen for hver regnskapsperiode +COUPDAYBS = OBLIG.DAGER.FF ## Returnerer antall dager fra begynnelsen av den rentebærende perioden til innløsningsdatoen +COUPDAYS = OBLIG.DAGER ## Returnerer antall dager i den rentebærende perioden som inneholder innløsningsdatoen +COUPDAYSNC = OBLIG.DAGER.NF ## Returnerer antall dager fra betalingsdato til neste renteinnbetalingsdato +COUPNCD = OBLIG.DAGER.EF ## Returnerer obligasjonsdatoen som kommer etter oppgjørsdatoen +COUPNUM = OBLIG.ANTALL ## Returnerer antall obligasjoner som skal betales mellom oppgjørsdatoen og forfallsdatoen +COUPPCD = OBLIG.DAG.FORRIGE ## Returnerer obligasjonsdatoen som kommer før oppgjørsdatoen +CUMIPMT = SAMLET.RENTE ## Returnerer den kumulative renten som er betalt mellom to perioder +CUMPRINC = SAMLET.HOVEDSTOL ## Returnerer den kumulative hovedstolen som er betalt for et lån mellom to perioder +DB = DAVSKR ## Returnerer avskrivningen for et aktivum i en angitt periode, foretatt med fast degressiv avskrivning +DDB = DEGRAVS ## Returnerer avskrivningen for et aktivum for en gitt periode, ved hjelp av dobbel degressiv avskrivning eller en metode som du selv angir +DISC = DISKONTERT ## Returnerer diskonteringsraten for et verdipapir +DOLLARDE = DOLLARDE ## Konverterer en valutapris uttrykt som en brøk, til en valutapris uttrykt som et desimaltall +DOLLARFR = DOLLARBR ## Konverterer en valutapris uttrykt som et desimaltall, til en valutapris uttrykt som en brøk +DURATION = VARIGHET ## Returnerer årlig varighet for et verdipapir med renter som betales periodisk +EFFECT = EFFEKTIV.RENTE ## Returnerer den effektive årlige rentesatsen +FV = SLUTTVERDI ## Returnerer fremtidig verdi for en investering +FVSCHEDULE = SVPLAN ## Returnerer den fremtidige verdien av en inngående hovedstol etter å ha anvendt en serie med sammensatte rentesatser +INTRATE = RENTESATS ## Returnerer rentefoten av et fullfinansiert verdipapir +IPMT = RAVDRAG ## Returnerer betalte renter på en investering for en gitt periode +IRR = IR ## Returnerer internrenten for en serie kontantstrømmer +ISPMT = ER.AVDRAG ## Beregner renten som er betalt for en investering i løpet av en bestemt periode +MDURATION = MVARIGHET ## Returnerer Macauleys modifiserte varighet for et verdipapir med en antatt pålydende verdi på kr 100,00 +MIRR = MODIR ## Returnerer internrenten der positive og negative kontantstrømmer finansieres med forskjellige satser +NOMINAL = NOMINELL ## Returnerer årlig nominell rentesats +NPER = PERIODER ## Returnerer antall perioder for en investering +NPV = NNV ## Returnerer netto nåverdi for en investering, basert på en serie periodiske kontantstrømmer og en rentesats +ODDFPRICE = AVVIKFP.PRIS ## Returnerer pris pålydende kr 100 for et verdipapir med en odde første periode +ODDFYIELD = AVVIKFP.AVKASTNING ## Returnerer avkastingen for et verdipapir med en odde første periode +ODDLPRICE = AVVIKSP.PRIS ## Returnerer pris pålydende kr 100 for et verdipapir med en odde siste periode +ODDLYIELD = AVVIKSP.AVKASTNING ## Returnerer avkastingen for et verdipapir med en odde siste periode +PMT = AVDRAG ## Returnerer periodisk betaling for en annuitet +PPMT = AMORT ## Returnerer betalingen på hovedstolen for en investering i en gitt periode +PRICE = PRIS ## Returnerer prisen per pålydende kr 100 for et verdipapir som gir periodisk avkastning +PRICEDISC = PRIS.DISKONTERT ## Returnerer prisen per pålydende kr 100 for et diskontert verdipapir +PRICEMAT = PRIS.FORFALL ## Returnerer prisen per pålydende kr 100 av et verdipapir som betaler rente ved forfall +PV = NÅVERDI ## Returnerer nåverdien av en investering +RATE = RENTE ## Returnerer rentesatsen per periode for en annuitet +RECEIVED = MOTTATT.AVKAST ## Returnerer summen som mottas ved forfallsdato for et fullinvestert verdipapir +SLN = LINAVS ## Returnerer den lineære avskrivningen for et aktivum i én periode +SYD = ÅRSAVS ## Returnerer årsavskrivningen for et aktivum i en angitt periode +TBILLEQ = TBILLEKV ## Returnerer den obligasjonsekvivalente avkastningen for en statsobligasjon +TBILLPRICE = TBILLPRIS ## Returnerer prisen per pålydende kr 100 for en statsobligasjon +TBILLYIELD = TBILLAVKASTNING ## Returnerer avkastningen til en statsobligasjon +VDB = VERDIAVS ## Returnerer avskrivningen for et aktivum i en angitt periode eller delperiode, ved hjelp av degressiv avskrivning +XIRR = XIR ## Returnerer internrenten for en serie kontantstrømmer som ikke nødvendigvis er periodiske +XNPV = XNNV ## Returnerer netto nåverdi for en serie kontantstrømmer som ikke nødvendigvis er periodiske +YIELD = AVKAST ## Returnerer avkastningen på et verdipapir som betaler periodisk rente +YIELDDISC = AVKAST.DISKONTERT ## Returnerer årlig avkastning for et diskontert verdipapir, for eksempel en statskasseveksel +YIELDMAT = AVKAST.FORFALL ## Returnerer den årlige avkastningen for et verdipapir som betaler rente ved forfallsdato + + +## +## Information functions Informasjonsfunksjoner +## +CELL = CELLE ## Returnerer informasjon om formatering, plassering eller innholdet til en celle +ERROR.TYPE = FEIL.TYPE ## Returnerer et tall som svarer til en feiltype +INFO = INFO ## Returnerer informasjon om gjeldende operativmiljø +ISBLANK = ERTOM ## Returnerer SANN hvis verdien er tom +ISERR = ERFEIL ## Returnerer SANN hvis verdien er en hvilken som helst annen feilverdi enn #I/T +ISERROR = ERFEIL ## Returnerer SANN hvis verdien er en hvilken som helst feilverdi +ISEVEN = ERPARTALL ## Returnerer SANN hvis tallet er et partall +ISLOGICAL = ERLOGISK ## Returnerer SANN hvis verdien er en logisk verdi +ISNA = ERIT ## Returnerer SANN hvis verdien er feilverdien #I/T +ISNONTEXT = ERIKKETEKST ## Returnerer SANN hvis verdien ikke er tekst +ISNUMBER = ERTALL ## Returnerer SANN hvis verdien er et tall +ISODD = ERODDETALL ## Returnerer SANN hvis tallet er et oddetall +ISREF = ERREF ## Returnerer SANN hvis verdien er en referanse +ISTEXT = ERTEKST ## Returnerer SANN hvis verdien er tekst +N = N ## Returnerer en verdi som er konvertert til et tall +NA = IT ## Returnerer feilverdien #I/T +TYPE = VERDITYPE ## Returnerer et tall som indikerer datatypen til en verdi + + +## +## Logical functions Logiske funksjoner +## +AND = OG ## Returnerer SANN hvis alle argumentene er lik SANN +FALSE = USANN ## Returnerer den logiske verdien USANN +IF = HVIS ## Angir en logisk test som skal utføres +IFERROR = HVISFEIL ## Returnerer en verdi du angir hvis en formel evaluerer til en feil. Ellers returnerer den resultatet av formelen. +NOT = IKKE ## Reverserer logikken til argumentet +OR = ELLER ## Returnerer SANN hvis ett eller flere argumenter er lik SANN +TRUE = SANN ## Returnerer den logiske verdien SANN + + +## +## Lookup and reference functions Oppslag- og referansefunksjoner +## +ADDRESS = ADRESSE ## Returnerer en referanse som tekst til en enkelt celle i et regneark +AREAS = OMRÅDER ## Returnerer antall områder i en referanse +CHOOSE = VELG ## Velger en verdi fra en liste med verdier +COLUMN = KOLONNE ## Returnerer kolonnenummeret for en referanse +COLUMNS = KOLONNER ## Returnerer antall kolonner i en referanse +HLOOKUP = FINN.KOLONNE ## Leter i den øverste raden i en matrise og returnerer verdien for den angitte cellen +HYPERLINK = HYPERKOBLING ## Oppretter en snarvei eller et hopp som åpner et dokument som er lagret på en nettverksserver, et intranett eller Internett +INDEX = INDEKS ## Bruker en indeks til å velge en verdi fra en referanse eller matrise +INDIRECT = INDIREKTE ## Returnerer en referanse angitt av en tekstverdi +LOOKUP = SLÅ.OPP ## Slår opp verdier i en vektor eller matrise +MATCH = SAMMENLIGNE ## Slår opp verdier i en referanse eller matrise +OFFSET = FORSKYVNING ## Returnerer en referanseforskyvning fra en gitt referanse +ROW = RAD ## Returnerer radnummeret for en referanse +ROWS = RADER ## Returnerer antall rader i en referanse +RTD = RTD ## Henter sanntidsdata fra et program som støtter COM-automatisering (automatisering: En måte å arbeide på med programobjekter fra et annet program- eller utviklingsverktøy. Tidligere kalt OLE-automatisering. Automatisering er en bransjestandard og en funksjon i Component Object Model (COM).) +TRANSPOSE = TRANSPONER ## Returnerer transponeringen av en matrise +VLOOKUP = FINN.RAD ## Leter i den første kolonnen i en matrise og flytter bortover raden for å returnere verdien til en celle + + +## +## Math and trigonometry functions Matematikk- og trigonometrifunksjoner +## +ABS = ABS ## Returnerer absoluttverdien til et tall +ACOS = ARCCOS ## Returnerer arcus cosinus til et tall +ACOSH = ARCCOSH ## Returnerer den inverse hyperbolske cosinus til et tall +ASIN = ARCSIN ## Returnerer arcus sinus til et tall +ASINH = ARCSINH ## Returnerer den inverse hyperbolske sinus til et tall +ATAN = ARCTAN ## Returnerer arcus tangens til et tall +ATAN2 = ARCTAN2 ## Returnerer arcus tangens fra x- og y-koordinater +ATANH = ARCTANH ## Returnerer den inverse hyperbolske tangens til et tall +CEILING = AVRUND.GJELDENDE.MULTIPLUM ## Runder av et tall til nærmeste heltall eller til nærmeste signifikante multiplum +COMBIN = KOMBINASJON ## Returnerer antall kombinasjoner for ett gitt antall objekter +COS = COS ## Returnerer cosinus til et tall +COSH = COSH ## Returnerer den hyperbolske cosinus til et tall +DEGREES = GRADER ## Konverterer radianer til grader +EVEN = AVRUND.TIL.PARTALL ## Runder av et tall oppover til nærmeste heltall som er et partall +EXP = EKSP ## Returnerer e opphøyd i en angitt potens +FACT = FAKULTET ## Returnerer fakultet til et tall +FACTDOUBLE = DOBBELFAKT ## Returnerer et talls doble fakultet +FLOOR = AVRUND.GJELDENDE.MULTIPLUM.NED ## Avrunder et tall nedover, mot null +GCD = SFF ## Returnerer høyeste felles divisor +INT = HELTALL ## Avrunder et tall nedover til nærmeste heltall +LCM = MFM ## Returnerer minste felles multiplum +LN = LN ## Returnerer den naturlige logaritmen til et tall +LOG = LOG ## Returnerer logaritmen for et tall til et angitt grunntall +LOG10 = LOG10 ## Returnerer logaritmen med grunntall 10 for et tall +MDETERM = MDETERM ## Returnerer matrisedeterminanten til en matrise +MINVERSE = MINVERS ## Returnerer den inverse matrisen til en matrise +MMULT = MMULT ## Returnerer matriseproduktet av to matriser +MOD = REST ## Returnerer resten fra en divisjon +MROUND = MRUND ## Returnerer et tall avrundet til det ønskede multiplum +MULTINOMIAL = MULTINOMINELL ## Returnerer det multinominelle for et sett med tall +ODD = AVRUND.TIL.ODDETALL ## Runder av et tall oppover til nærmeste heltall som er et oddetall +PI = PI ## Returnerer verdien av pi +POWER = OPPHØYD.I ## Returnerer resultatet av et tall opphøyd i en potens +PRODUCT = PRODUKT ## Multipliserer argumentene +QUOTIENT = KVOTIENT ## Returnerer heltallsdelen av en divisjon +RADIANS = RADIANER ## Konverterer grader til radianer +RAND = TILFELDIG ## Returnerer et tilfeldig tall mellom 0 og 1 +RANDBETWEEN = TILFELDIGMELLOM ## Returnerer et tilfeldig tall innenfor et angitt område +ROMAN = ROMERTALL ## Konverterer vanlige tall til romertall, som tekst +ROUND = AVRUND ## Avrunder et tall til et angitt antall sifre +ROUNDDOWN = AVRUND.NED ## Avrunder et tall nedover, mot null +ROUNDUP = AVRUND.OPP ## Runder av et tall oppover, bort fra null +SERIESSUM = SUMMER.REKKE ## Returnerer summen av en geometrisk rekke, basert på formelen +SIGN = FORTEGN ## Returnerer fortegnet for et tall +SIN = SIN ## Returnerer sinus til en gitt vinkel +SINH = SINH ## Returnerer den hyperbolske sinus til et tall +SQRT = ROT ## Returnerer en positiv kvadratrot +SQRTPI = ROTPI ## Returnerer kvadratroten av (tall * pi) +SUBTOTAL = DELSUM ## Returnerer en delsum i en liste eller database +SUM = SUMMER ## Legger sammen argumentene +SUMIF = SUMMERHVIS ## Legger sammen cellene angitt ved et gitt vilkår +SUMIFS = SUMMER.HVIS.SETT ## Legger sammen cellene i et område som oppfyller flere vilkår +SUMPRODUCT = SUMMERPRODUKT ## Returnerer summen av produktene av tilsvarende matrisekomponenter +SUMSQ = SUMMERKVADRAT ## Returnerer kvadratsummen av argumentene +SUMX2MY2 = SUMMERX2MY2 ## Returnerer summen av differansen av kvadratene for tilsvarende verdier i to matriser +SUMX2PY2 = SUMMERX2PY2 ## Returnerer summen av kvadratsummene for tilsvarende verdier i to matriser +SUMXMY2 = SUMMERXMY2 ## Returnerer summen av kvadratene av differansen for tilsvarende verdier i to matriser +TAN = TAN ## Returnerer tangens for et tall +TANH = TANH ## Returnerer den hyperbolske tangens for et tall +TRUNC = AVKORT ## Korter av et tall til et heltall + + +## +## Statistical functions Statistiske funksjoner +## +AVEDEV = GJENNOMSNITTSAVVIK ## Returnerer datapunktenes gjennomsnittlige absoluttavvik fra middelverdien +AVERAGE = GJENNOMSNITT ## Returnerer gjennomsnittet for argumentene +AVERAGEA = GJENNOMSNITTA ## Returnerer gjennomsnittet for argumentene, inkludert tall, tekst og logiske verdier +AVERAGEIF = GJENNOMSNITTHVIS ## Returnerer gjennomsnittet (aritmetisk gjennomsnitt) av alle cellene i et område som oppfyller et bestemt vilkår +AVERAGEIFS = GJENNOMSNITT.HVIS.SETT ## Returnerer gjennomsnittet (aritmetisk middelverdi) av alle celler som oppfyller flere vilkår. +BETADIST = BETA.FORDELING ## Returnerer den kumulative betafordelingsfunksjonen +BETAINV = INVERS.BETA.FORDELING ## Returnerer den inverse verdien til fordelingsfunksjonen for en angitt betafordeling +BINOMDIST = BINOM.FORDELING ## Returnerer den individuelle binomiske sannsynlighetsfordelingen +CHIDIST = KJI.FORDELING ## Returnerer den ensidige sannsynligheten for en kjikvadrert fordeling +CHIINV = INVERS.KJI.FORDELING ## Returnerer den inverse av den ensidige sannsynligheten for den kjikvadrerte fordelingen +CHITEST = KJI.TEST ## Utfører testen for uavhengighet +CONFIDENCE = KONFIDENS ## Returnerer konfidensintervallet til gjennomsnittet for en populasjon +CORREL = KORRELASJON ## Returnerer korrelasjonskoeffisienten mellom to datasett +COUNT = ANTALL ## Teller hvor mange tall som er i argumentlisten +COUNTA = ANTALLA ## Teller hvor mange verdier som er i argumentlisten +COUNTBLANK = TELLBLANKE ## Teller antall tomme celler i et område. +COUNTIF = ANTALL.HVIS ## Teller antall celler i et område som oppfyller gitte vilkår +COUNTIFS = ANTALL.HVIS.SETT ## Teller antallet ikke-tomme celler i et område som oppfyller flere vilkår +COVAR = KOVARIANS ## Returnerer kovariansen, gjennomsnittet av produktene av parvise avvik +CRITBINOM = GRENSE.BINOM ## Returnerer den minste verdien der den kumulative binomiske fordelingen er mindre enn eller lik en vilkårsverdi +DEVSQ = AVVIK.KVADRERT ## Returnerer summen av kvadrerte avvik +EXPONDIST = EKSP.FORDELING ## Returnerer eksponentialfordelingen +FDIST = FFORDELING ## Returnerer F-sannsynlighetsfordelingen +FINV = FFORDELING.INVERS ## Returnerer den inverse av den sannsynlige F-fordelingen +FISHER = FISHER ## Returnerer Fisher-transformasjonen +FISHERINV = FISHERINV ## Returnerer den inverse av Fisher-transformasjonen +FORECAST = PROGNOSE ## Returnerer en verdi langs en lineær trend +FREQUENCY = FREKVENS ## Returnerer en frekvensdistribusjon som en loddrett matrise +FTEST = FTEST ## Returnerer resultatet av en F-test +GAMMADIST = GAMMAFORDELING ## Returnerer gammafordelingen +GAMMAINV = GAMMAINV ## Returnerer den inverse av den gammakumulative fordelingen +GAMMALN = GAMMALN ## Returnerer den naturlige logaritmen til gammafunksjonen G(x) +GEOMEAN = GJENNOMSNITT.GEOMETRISK ## Returnerer den geometriske middelverdien +GROWTH = VEKST ## Returnerer verdier langs en eksponentiell trend +HARMEAN = GJENNOMSNITT.HARMONISK ## Returnerer den harmoniske middelverdien +HYPGEOMDIST = HYPGEOM.FORDELING ## Returnerer den hypergeometriske fordelingen +INTERCEPT = SKJÆRINGSPUNKT ## Returnerer skjæringspunktet til den lineære regresjonslinjen +KURT = KURT ## Returnerer kurtosen til et datasett +LARGE = N.STØRST ## Returnerer den n-te største verdien i et datasett +LINEST = RETTLINJE ## Returnerer parameterne til en lineær trend +LOGEST = KURVE ## Returnerer parameterne til en eksponentiell trend +LOGINV = LOGINV ## Returnerer den inverse lognormale fordelingen +LOGNORMDIST = LOGNORMFORD ## Returnerer den kumulative lognormale fordelingen +MAX = STØRST ## Returnerer maksimumsverdien i en argumentliste +MAXA = MAKSA ## Returnerer maksimumsverdien i en argumentliste, inkludert tall, tekst og logiske verdier +MEDIAN = MEDIAN ## Returnerer medianen til tallene som er gitt +MIN = MIN ## Returnerer minimumsverdien i en argumentliste +MINA = MINA ## Returnerer den minste verdien i en argumentliste, inkludert tall, tekst og logiske verdier +MODE = MODUS ## Returnerer den vanligste verdien i et datasett +NEGBINOMDIST = NEGBINOM.FORDELING ## Returnerer den negative binomiske fordelingen +NORMDIST = NORMALFORDELING ## Returnerer den kumulative normalfordelingen +NORMINV = NORMINV ## Returnerer den inverse kumulative normalfordelingen +NORMSDIST = NORMSFORDELING ## Returnerer standard kumulativ normalfordeling +NORMSINV = NORMSINV ## Returnerer den inverse av den den kumulative standard normalfordelingen +PEARSON = PEARSON ## Returnerer produktmomentkorrelasjonskoeffisienten, Pearson +PERCENTILE = PERSENTIL ## Returnerer den n-te persentil av verdiene i et område +PERCENTRANK = PROSENTDEL ## Returnerer prosentrangeringen av en verdi i et datasett +PERMUT = PERMUTER ## Returnerer antall permutasjoner for et gitt antall objekter +POISSON = POISSON ## Returnerer Poissons sannsynlighetsfordeling +PROB = SANNSYNLIG ## Returnerer sannsynligheten for at verdier i et område ligger mellom to grenser +QUARTILE = KVARTIL ## Returnerer kvartilen til et datasett +RANK = RANG ## Returnerer rangeringen av et tall, eller plassen tallet har i en rekke +RSQ = RKVADRAT ## Returnerer kvadratet av produktmomentkorrelasjonskoeffisienten (Pearsons r) +SKEW = SKJEVFORDELING ## Returnerer skjevheten i en fordeling +SLOPE = STIGNINGSTALL ## Returnerer stigningtallet for den lineære regresjonslinjen +SMALL = N.MINST ## Returnerer den n-te minste verdien i et datasett +STANDARDIZE = NORMALISER ## Returnerer en normalisert verdi +STDEV = STDAV ## Estimere standardavvik på grunnlag av et utvalg +STDEVA = STDAVVIKA ## Estimerer standardavvik basert på et utvalg, inkludert tall, tekst og logiske verdier +STDEVP = STDAVP ## Beregner standardavvik basert på hele populasjonen +STDEVPA = STDAVVIKPA ## Beregner standardavvik basert på hele populasjonen, inkludert tall, tekst og logiske verdier +STEYX = STANDARDFEIL ## Returnerer standardfeilen for den predikerte y-verdien for hver x i regresjonen +TDIST = TFORDELING ## Returnerer en Student t-fordeling +TINV = TINV ## Returnerer den inverse Student t-fordelingen +TREND = TREND ## Returnerer verdier langs en lineær trend +TRIMMEAN = TRIMMET.GJENNOMSNITT ## Returnerer den interne middelverdien til et datasett +TTEST = TTEST ## Returnerer sannsynligheten assosiert med en Student t-test +VAR = VARIANS ## Estimerer varians basert på et utvalg +VARA = VARIANSA ## Estimerer varians basert på et utvalg, inkludert tall, tekst og logiske verdier +VARP = VARIANSP ## Beregner varians basert på hele populasjonen +VARPA = VARIANSPA ## Beregner varians basert på hele populasjonen, inkludert tall, tekst og logiske verdier +WEIBULL = WEIBULL.FORDELING ## Returnerer Weibull-fordelingen +ZTEST = ZTEST ## Returnerer den ensidige sannsynlighetsverdien for en z-test + + +## +## Text functions Tekstfunksjoner +## +ASC = STIGENDE ## Endrer fullbreddes (dobbeltbyte) engelske bokstaver eller katakana i en tegnstreng, til halvbreddes (enkeltbyte) tegn +BAHTTEXT = BAHTTEKST ## Konverterer et tall til tekst, og bruker valutaformatet ß (baht) +CHAR = TEGNKODE ## Returnerer tegnet som svarer til kodenummeret +CLEAN = RENSK ## Fjerner alle tegn som ikke kan skrives ut, fra teksten +CODE = KODE ## Returnerer en numerisk kode for det første tegnet i en tekststreng +CONCATENATE = KJEDE.SAMMEN ## Slår sammen flere tekstelementer til ett tekstelement +DOLLAR = VALUTA ## Konverterer et tall til tekst, og bruker valutaformatet $ (dollar) +EXACT = EKSAKT ## Kontrollerer om to tekstverdier er like +FIND = FINN ## Finner en tekstverdi inne i en annen (skiller mellom store og små bokstaver) +FINDB = FINNB ## Finner en tekstverdi inne i en annen (skiller mellom store og små bokstaver) +FIXED = FASTSATT ## Formaterer et tall som tekst med et bestemt antall desimaler +JIS = JIS ## Endrer halvbreddes (enkeltbyte) engelske bokstaver eller katakana i en tegnstreng, til fullbreddes (dobbeltbyte) tegn +LEFT = VENSTRE ## Returnerer tegnene lengst til venstre i en tekstverdi +LEFTB = VENSTREB ## Returnerer tegnene lengst til venstre i en tekstverdi +LEN = LENGDE ## Returnerer antall tegn i en tekststreng +LENB = LENGDEB ## Returnerer antall tegn i en tekststreng +LOWER = SMÅ ## Konverterer tekst til små bokstaver +MID = DELTEKST ## Returnerer et angitt antall tegn fra en tekststreng, og begynner fra posisjonen du angir +MIDB = DELTEKSTB ## Returnerer et angitt antall tegn fra en tekststreng, og begynner fra posisjonen du angir +PHONETIC = FURIGANA ## Trekker ut fonetiske tegn (furigana) fra en tekststreng +PROPER = STOR.FORBOKSTAV ## Gir den første bokstaven i hvert ord i en tekstverdi stor forbokstav +REPLACE = ERSTATT ## Erstatter tegn i en tekst +REPLACEB = ERSTATTB ## Erstatter tegn i en tekst +REPT = GJENTA ## Gjentar tekst et gitt antall ganger +RIGHT = HØYRE ## Returnerer tegnene lengst til høyre i en tekstverdi +RIGHTB = HØYREB ## Returnerer tegnene lengst til høyre i en tekstverdi +SEARCH = SØK ## Finner en tekstverdi inne i en annen (skiller ikke mellom store og små bokstaver) +SEARCHB = SØKB ## Finner en tekstverdi inne i en annen (skiller ikke mellom store og små bokstaver) +SUBSTITUTE = BYTT.UT ## Bytter ut gammel tekst med ny tekst i en tekststreng +T = T ## Konverterer argumentene til tekst +TEXT = TEKST ## Formaterer et tall og konverterer det til tekst +TRIM = TRIMME ## Fjerner mellomrom fra tekst +UPPER = STORE ## Konverterer tekst til store bokstaver +VALUE = VERDI ## Konverterer et tekstargument til et tall diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/pl/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/pl/_notes/dwsync.xml new file mode 100644 index 0000000..fe8801b --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/pl/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559945527262" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559946100537" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752249279093" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752249817694" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461250152085" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461252127995" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752249279093" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752249817694" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/pl/config b/site/config/PHPExcel/Classes/PHPExcel/locale/pl/config new file mode 100644 index 0000000..6823761 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/pl/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = zł + + +## +## Excel Error Codes (For future use) +## +NULL = #ZERO! +DIV0 = #DZIEL/0! +VALUE = #ARG! +REF = #ADR! +NAME = #NAZWA? +NUM = #LICZBA! +NA = #N/D! diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/pl/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/pl/functions new file mode 100644 index 0000000..1485843 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/pl/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Funkcje dodatków i automatyzacji +## +GETPIVOTDATA = WEŹDANETABELI ## Zwraca dane przechowywane w raporcie tabeli przestawnej. + + +## +## Cube functions Funkcje modułów +## +CUBEKPIMEMBER = ELEMENT.KPI.MODUŁU ## Zwraca nazwę, właściwość i miarę kluczowego wskaźnika wydajności (KPI) oraz wyświetla nazwę i właściwość w komórce. Wskaźnik KPI jest miarą ilościową, taką jak miesięczny zysk brutto lub kwartalna fluktuacja pracowników, używaną do monitorowania wydajności organizacji. +CUBEMEMBER = ELEMENT.MODUŁU ## Zwraca element lub krotkę z hierarchii modułu. Służy do sprawdzania, czy element lub krotka istnieje w module. +CUBEMEMBERPROPERTY = WŁAŚCIWOŚĆ.ELEMENTU.MODUŁU ## Zwraca wartość właściwości elementu w module. Służy do sprawdzania, czy nazwa elementu istnieje w module, i zwracania określonej właściwości dla tego elementu. +CUBERANKEDMEMBER = USZEREGOWANY.ELEMENT.MODUŁU ## Zwraca n-ty (albo uszeregowany) element zestawu. Służy do zwracania elementu lub elementów zestawu, na przykład najlepszego sprzedawcy lub 10 najlepszych studentów. +CUBESET = ZESTAW.MODUŁÓW ## Definiuje obliczony zestaw elementów lub krotek, wysyłając wyrażenie zestawu do serwera modułu, który tworzy zestaw i zwraca go do programu Microsoft Office Excel. +CUBESETCOUNT = LICZNIK.MODUŁÓW.ZESTAWU ## Zwraca liczbę elementów zestawu. +CUBEVALUE = WARTOŚĆ.MODUŁU ## Zwraca zagregowaną wartość z modułu. + + +## +## Database functions Funkcje baz danych +## +DAVERAGE = BD.ŚREDNIA ## Zwraca wartość średniej wybranych wpisów bazy danych. +DCOUNT = BD.ILE.REKORDÓW ## Zlicza komórki zawierające liczby w bazie danych. +DCOUNTA = BD.ILE.REKORDÓW.A ## Zlicza niepuste komórki w bazie danych. +DGET = BD.POLE ## Wyodrębnia z bazy danych jeden rekord spełniający określone kryteria. +DMAX = BD.MAX ## Zwraca wartość maksymalną z wybranych wpisów bazy danych. +DMIN = BD.MIN ## Zwraca wartość minimalną z wybranych wpisów bazy danych. +DPRODUCT = BD.ILOCZYN ## Mnoży wartości w konkretnym, spełniającym kryteria polu rekordów bazy danych. +DSTDEV = BD.ODCH.STANDARD ## Szacuje odchylenie standardowe na podstawie próbki z wybranych wpisów bazy danych. +DSTDEVP = BD.ODCH.STANDARD.POPUL ## Oblicza odchylenie standardowe na podstawie całej populacji wybranych wpisów bazy danych. +DSUM = BD.SUMA ## Dodaje liczby w kolumnie pól rekordów bazy danych, które spełniają kryteria. +DVAR = BD.WARIANCJA ## Szacuje wariancję na podstawie próbki z wybranych wpisów bazy danych. +DVARP = BD.WARIANCJA.POPUL ## Oblicza wariancję na podstawie całej populacji wybranych wpisów bazy danych. + + +## +## Date and time functions Funkcje dat, godzin i czasu +## +DATE = DATA ## Zwraca liczbę seryjną dla wybranej daty. +DATEVALUE = DATA.WARTOŚĆ ## Konwertuje datę w formie tekstu na liczbę seryjną. +DAY = DZIEŃ ## Konwertuje liczbę seryjną na dzień miesiąca. +DAYS360 = DNI.360 ## Oblicza liczbę dni między dwiema datami na podstawie roku 360-dniowego. +EDATE = UPŁDNI ## Zwraca liczbę seryjną daty jako wskazaną liczbę miesięcy przed określoną datą początkową lub po niej. +EOMONTH = EOMONTH ## Zwraca liczbę seryjną ostatniego dnia miesiąca przed określoną liczbą miesięcy lub po niej. +HOUR = GODZINA ## Konwertuje liczbę seryjną na godzinę. +MINUTE = MINUTA ## Konwertuje liczbę seryjną na minutę. +MONTH = MIESIĄC ## Konwertuje liczbę seryjną na miesiąc. +NETWORKDAYS = NETWORKDAYS ## Zwraca liczbę pełnych dni roboczych między dwiema datami. +NOW = TERAZ ## Zwraca liczbę seryjną bieżącej daty i godziny. +SECOND = SEKUNDA ## Konwertuje liczbę seryjną na sekundę. +TIME = CZAS ## Zwraca liczbę seryjną określonego czasu. +TIMEVALUE = CZAS.WARTOŚĆ ## Konwertuje czas w formie tekstu na liczbę seryjną. +TODAY = DZIŚ ## Zwraca liczbę seryjną dla daty bieżącej. +WEEKDAY = DZIEŃ.TYG ## Konwertuje liczbę seryjną na dzień tygodnia. +WEEKNUM = WEEKNUM ## Konwertuje liczbę seryjną na liczbę reprezentującą numer tygodnia w roku. +WORKDAY = WORKDAY ## Zwraca liczbę seryjną dla daty przed określoną liczbą dni roboczych lub po niej. +YEAR = ROK ## Konwertuje liczbę seryjną na rok. +YEARFRAC = YEARFRAC ## Zwraca część roku reprezentowaną przez pełną liczbę dni między datą początkową a datą końcową. + + +## +## Engineering functions Funkcje inżynierskie +## +BESSELI = BESSELI ## Zwraca wartość zmodyfikowanej funkcji Bessela In(x). +BESSELJ = BESSELJ ## Zwraca wartość funkcji Bessela Jn(x). +BESSELK = BESSELK ## Zwraca wartość zmodyfikowanej funkcji Bessela Kn(x). +BESSELY = BESSELY ## Zwraca wartość funkcji Bessela Yn(x). +BIN2DEC = BIN2DEC ## Konwertuje liczbę w postaci dwójkowej na liczbę w postaci dziesiętnej. +BIN2HEX = BIN2HEX ## Konwertuje liczbę w postaci dwójkowej na liczbę w postaci szesnastkowej. +BIN2OCT = BIN2OCT ## Konwertuje liczbę w postaci dwójkowej na liczbę w postaci ósemkowej. +COMPLEX = COMPLEX ## Konwertuje część rzeczywistą i urojoną na liczbę zespoloną. +CONVERT = CONVERT ## Konwertuje liczbę z jednego systemu miar na inny. +DEC2BIN = DEC2BIN ## Konwertuje liczbę w postaci dziesiętnej na postać dwójkową. +DEC2HEX = DEC2HEX ## Konwertuje liczbę w postaci dziesiętnej na liczbę w postaci szesnastkowej. +DEC2OCT = DEC2OCT ## Konwertuje liczbę w postaci dziesiętnej na liczbę w postaci ósemkowej. +DELTA = DELTA ## Sprawdza, czy dwie wartości są równe. +ERF = ERF ## Zwraca wartość funkcji błędu. +ERFC = ERFC ## Zwraca wartość komplementarnej funkcji błędu. +GESTEP = GESTEP ## Sprawdza, czy liczba jest większa niż wartość progowa. +HEX2BIN = HEX2BIN ## Konwertuje liczbę w postaci szesnastkowej na liczbę w postaci dwójkowej. +HEX2DEC = HEX2DEC ## Konwertuje liczbę w postaci szesnastkowej na liczbę w postaci dziesiętnej. +HEX2OCT = HEX2OCT ## Konwertuje liczbę w postaci szesnastkowej na liczbę w postaci ósemkowej. +IMABS = IMABS ## Zwraca wartość bezwzględną (moduł) liczby zespolonej. +IMAGINARY = IMAGINARY ## Zwraca wartość części urojonej liczby zespolonej. +IMARGUMENT = IMARGUMENT ## Zwraca wartość argumentu liczby zespolonej, przy czym kąt wyrażony jest w radianach. +IMCONJUGATE = IMCONJUGATE ## Zwraca wartość liczby sprzężonej danej liczby zespolonej. +IMCOS = IMCOS ## Zwraca wartość cosinusa liczby zespolonej. +IMDIV = IMDIV ## Zwraca wartość ilorazu dwóch liczb zespolonych. +IMEXP = IMEXP ## Zwraca postać wykładniczą liczby zespolonej. +IMLN = IMLN ## Zwraca wartość logarytmu naturalnego liczby zespolonej. +IMLOG10 = IMLOG10 ## Zwraca wartość logarytmu dziesiętnego liczby zespolonej. +IMLOG2 = IMLOG2 ## Zwraca wartość logarytmu liczby zespolonej przy podstawie 2. +IMPOWER = IMPOWER ## Zwraca wartość liczby zespolonej podniesionej do potęgi całkowitej. +IMPRODUCT = IMPRODUCT ## Zwraca wartość iloczynu liczb zespolonych. +IMREAL = IMREAL ## Zwraca wartość części rzeczywistej liczby zespolonej. +IMSIN = IMSIN ## Zwraca wartość sinusa liczby zespolonej. +IMSQRT = IMSQRT ## Zwraca wartość pierwiastka kwadratowego z liczby zespolonej. +IMSUB = IMSUB ## Zwraca wartość różnicy dwóch liczb zespolonych. +IMSUM = IMSUM ## Zwraca wartość sumy liczb zespolonych. +OCT2BIN = OCT2BIN ## Konwertuje liczbę w postaci ósemkowej na liczbę w postaci dwójkowej. +OCT2DEC = OCT2DEC ## Konwertuje liczbę w postaci ósemkowej na liczbę w postaci dziesiętnej. +OCT2HEX = OCT2HEX ## Konwertuje liczbę w postaci ósemkowej na liczbę w postaci szesnastkowej. + + +## +## Financial functions Funkcje finansowe +## +ACCRINT = ACCRINT ## Zwraca narosłe odsetki dla papieru wartościowego z oprocentowaniem okresowym. +ACCRINTM = ACCRINTM ## Zwraca narosłe odsetki dla papieru wartościowego z oprocentowaniem w terminie wykupu. +AMORDEGRC = AMORDEGRC ## Zwraca amortyzację dla każdego okresu rozliczeniowego z wykorzystaniem współczynnika amortyzacji. +AMORLINC = AMORLINC ## Zwraca amortyzację dla każdego okresu rozliczeniowego. +COUPDAYBS = COUPDAYBS ## Zwraca liczbę dni od początku okresu dywidendy do dnia rozliczeniowego. +COUPDAYS = COUPDAYS ## Zwraca liczbę dni w okresie dywidendy, z uwzględnieniem dnia rozliczeniowego. +COUPDAYSNC = COUPDAYSNC ## Zwraca liczbę dni od dnia rozliczeniowego do daty następnego dnia dywidendy. +COUPNCD = COUPNCD ## Zwraca dzień następnej dywidendy po dniu rozliczeniowym. +COUPNUM = COUPNUM ## Zwraca liczbę dywidend płatnych między dniem rozliczeniowym a dniem wykupu. +COUPPCD = COUPPCD ## Zwraca dzień poprzedniej dywidendy przed dniem rozliczeniowym. +CUMIPMT = CUMIPMT ## Zwraca wartość procentu składanego płatnego między dwoma okresami. +CUMPRINC = CUMPRINC ## Zwraca wartość kapitału skumulowanego spłaty pożyczki między dwoma okresami. +DB = DB ## Zwraca amortyzację środka trwałego w danym okresie metodą degresywną z zastosowaniem stałej bazowej. +DDB = DDB ## Zwraca amortyzację środka trwałego za podany okres metodą degresywną z zastosowaniem podwójnej bazowej lub metodą określoną przez użytkownika. +DISC = DISC ## Zwraca wartość stopy dyskontowej papieru wartościowego. +DOLLARDE = DOLLARDE ## Konwertuje cenę w postaci ułamkowej na cenę wyrażoną w postaci dziesiętnej. +DOLLARFR = DOLLARFR ## Konwertuje cenę wyrażoną w postaci dziesiętnej na cenę wyrażoną w postaci ułamkowej. +DURATION = DURATION ## Zwraca wartość rocznego przychodu z papieru wartościowego o okresowych wypłatach oprocentowania. +EFFECT = EFFECT ## Zwraca wartość efektywnej rocznej stopy procentowej. +FV = FV ## Zwraca przyszłą wartość lokaty. +FVSCHEDULE = FVSCHEDULE ## Zwraca przyszłą wartość kapitału początkowego wraz z szeregiem procentów składanych. +INTRATE = INTRATE ## Zwraca wartość stopy procentowej papieru wartościowego całkowicie ulokowanego. +IPMT = IPMT ## Zwraca wysokość spłaty oprocentowania lokaty za dany okres. +IRR = IRR ## Zwraca wartość wewnętrznej stopy zwrotu dla serii przepływów gotówkowych. +ISPMT = ISPMT ## Oblicza wysokość spłaty oprocentowania za dany okres lokaty. +MDURATION = MDURATION ## Zwraca wartość zmodyfikowanego okresu Macauleya dla papieru wartościowego o założonej wartości nominalnej 100 zł. +MIRR = MIRR ## Zwraca wartość wewnętrznej stopy zwrotu dla przypadku, gdy dodatnie i ujemne przepływy gotówkowe mają różne stopy. +NOMINAL = NOMINAL ## Zwraca wysokość nominalnej rocznej stopy procentowej. +NPER = NPER ## Zwraca liczbę okresów dla lokaty. +NPV = NPV ## Zwraca wartość bieżącą netto lokaty na podstawie szeregu okresowych przepływów gotówkowych i stopy dyskontowej. +ODDFPRICE = ODDFPRICE ## Zwraca cenę za 100 zł wartości nominalnej papieru wartościowego z nietypowym pierwszym okresem. +ODDFYIELD = ODDFYIELD ## Zwraca rentowność papieru wartościowego z nietypowym pierwszym okresem. +ODDLPRICE = ODDLPRICE ## Zwraca cenę za 100 zł wartości nominalnej papieru wartościowego z nietypowym ostatnim okresem. +ODDLYIELD = ODDLYIELD ## Zwraca rentowność papieru wartościowego z nietypowym ostatnim okresem. +PMT = PMT ## Zwraca wartość okresowej płatności raty rocznej. +PPMT = PPMT ## Zwraca wysokość spłaty kapitału w przypadku lokaty dla danego okresu. +PRICE = PRICE ## Zwraca cenę za 100 zł wartości nominalnej papieru wartościowego z oprocentowaniem okresowym. +PRICEDISC = PRICEDISC ## Zwraca cenę za 100 zł wartości nominalnej papieru wartościowego zdyskontowanego. +PRICEMAT = PRICEMAT ## Zwraca cenę za 100 zł wartości nominalnej papieru wartościowego z oprocentowaniem w terminie wykupu. +PV = PV ## Zwraca wartość bieżącą lokaty. +RATE = RATE ## Zwraca wysokość stopy procentowej w okresie raty rocznej. +RECEIVED = RECEIVED ## Zwraca wartość kapitału otrzymanego przy wykupie papieru wartościowego całkowicie ulokowanego. +SLN = SLN ## Zwraca amortyzację środka trwałego za jeden okres metodą liniową. +SYD = SYD ## Zwraca amortyzację środka trwałego za dany okres metodą sumy cyfr lat amortyzacji. +TBILLEQ = TBILLEQ ## Zwraca rentowność ekwiwalentu obligacji dla bonu skarbowego. +TBILLPRICE = TBILLPRICE ## Zwraca cenę za 100 zł wartości nominalnej bonu skarbowego. +TBILLYIELD = TBILLYIELD ## Zwraca rentowność bonu skarbowego. +VDB = VDB ## Oblicza amortyzację środka trwałego w danym okresie lub jego części metodą degresywną. +XIRR = XIRR ## Zwraca wartość wewnętrznej stopy zwrotu dla serii rozłożonych w czasie przepływów gotówkowych, niekoniecznie okresowych. +XNPV = XNPV ## Zwraca wartość bieżącą netto dla serii rozłożonych w czasie przepływów gotówkowych, niekoniecznie okresowych. +YIELD = YIELD ## Zwraca rentowność papieru wartościowego z oprocentowaniem okresowym. +YIELDDISC = YIELDDISC ## Zwraca roczną rentowność zdyskontowanego papieru wartościowego, na przykład bonu skarbowego. +YIELDMAT = YIELDMAT ## Zwraca roczną rentowność papieru wartościowego oprocentowanego przy wykupie. + + +## +## Information functions Funkcje informacyjne +## +CELL = KOMÓRKA ## Zwraca informacje o formacie, położeniu lub zawartości komórki. +ERROR.TYPE = NR.BŁĘDU ## Zwraca liczbę odpowiadającą typowi błędu. +INFO = INFO ## Zwraca informację o aktualnym środowisku pracy. +ISBLANK = CZY.PUSTA ## Zwraca wartość PRAWDA, jeśli wartość jest pusta. +ISERR = CZY.BŁ ## Zwraca wartość PRAWDA, jeśli wartość jest dowolną wartością błędu, z wyjątkiem #N/D!. +ISERROR = CZY.BŁĄD ## Zwraca wartość PRAWDA, jeśli wartość jest dowolną wartością błędu. +ISEVEN = ISEVEN ## Zwraca wartość PRAWDA, jeśli liczba jest parzysta. +ISLOGICAL = CZY.LOGICZNA ## Zwraca wartość PRAWDA, jeśli wartość jest wartością logiczną. +ISNA = CZY.BRAK ## Zwraca wartość PRAWDA, jeśli wartość jest wartością błędu #N/D!. +ISNONTEXT = CZY.NIE.TEKST ## Zwraca wartość PRAWDA, jeśli wartość nie jest tekstem. +ISNUMBER = CZY.LICZBA ## Zwraca wartość PRAWDA, jeśli wartość jest liczbą. +ISODD = ISODD ## Zwraca wartość PRAWDA, jeśli liczba jest nieparzysta. +ISREF = CZY.ADR ## Zwraca wartość PRAWDA, jeśli wartość jest odwołaniem. +ISTEXT = CZY.TEKST ## Zwraca wartość PRAWDA, jeśli wartość jest tekstem. +N = L ## Zwraca wartość przekonwertowaną na postać liczbową. +NA = BRAK ## Zwraca wartość błędu #N/D!. +TYPE = TYP ## Zwraca liczbę wskazującą typ danych wartości. + + +## +## Logical functions Funkcje logiczne +## +AND = ORAZ ## Zwraca wartość PRAWDA, jeśli wszystkie argumenty mają wartość PRAWDA. +FALSE = FAŁSZ ## Zwraca wartość logiczną FAŁSZ. +IF = JEŻELI ## Określa warunek logiczny do sprawdzenia. +IFERROR = JEŻELI.BŁĄD ## Zwraca określoną wartość, jeśli wynikiem obliczenia formuły jest błąd; w przeciwnym przypadku zwraca wynik formuły. +NOT = NIE ## Odwraca wartość logiczną argumentu. +OR = LUB ## Zwraca wartość PRAWDA, jeśli co najmniej jeden z argumentów ma wartość PRAWDA. +TRUE = PRAWDA ## Zwraca wartość logiczną PRAWDA. + + +## +## Lookup and reference functions Funkcje wyszukiwania i odwołań +## +ADDRESS = ADRES ## Zwraca odwołanie do jednej komórki w arkuszu jako wartość tekstową. +AREAS = OBSZARY ## Zwraca liczbę obszarów występujących w odwołaniu. +CHOOSE = WYBIERZ ## Wybiera wartość z listy wartości. +COLUMN = NR.KOLUMNY ## Zwraca numer kolumny z odwołania. +COLUMNS = LICZBA.KOLUMN ## Zwraca liczbę kolumn dla danego odwołania. +HLOOKUP = WYSZUKAJ.POZIOMO ## Przegląda górny wiersz tablicy i zwraca wartość wskazanej komórki. +HYPERLINK = HIPERŁĄCZE ## Tworzy skrót lub skok, który pozwala otwierać dokument przechowywany na serwerze sieciowym, w sieci intranet lub w Internecie. +INDEX = INDEKS ## Używa indeksu do wybierania wartości z odwołania lub tablicy. +INDIRECT = ADR.POŚR ## Zwraca odwołanie określone przez wartość tekstową. +LOOKUP = WYSZUKAJ ## Wyszukuje wartości w wektorze lub tablicy. +MATCH = PODAJ.POZYCJĘ ## Wyszukuje wartości w odwołaniu lub w tablicy. +OFFSET = PRZESUNIĘCIE ## Zwraca adres przesunięty od danego odwołania. +ROW = WIERSZ ## Zwraca numer wiersza odwołania. +ROWS = ILE.WIERSZY ## Zwraca liczbę wierszy dla danego odwołania. +RTD = RTD ## Pobiera dane w czasie rzeczywistym z programu obsługującego automatyzację COM (Automatyzacja: Sposób pracy z obiektami aplikacji pochodzącymi z innej aplikacji lub narzędzia projektowania. Nazywana wcześniej Automatyzacją OLE, Automatyzacja jest standardem przemysłowym i funkcją obiektowego modelu składników (COM, Component Object Model).). +TRANSPOSE = TRANSPONUJ ## Zwraca transponowaną tablicę. +VLOOKUP = WYSZUKAJ.PIONOWO ## Przeszukuje pierwszą kolumnę tablicy i przechodzi wzdłuż wiersza, aby zwrócić wartość komórki. + + +## +## Math and trigonometry functions Funkcje matematyczne i trygonometryczne +## +ABS = MODUŁ.LICZBY ## Zwraca wartość absolutną liczby. +ACOS = ACOS ## Zwraca arcus cosinus liczby. +ACOSH = ACOSH ## Zwraca arcus cosinus hiperboliczny liczby. +ASIN = ASIN ## Zwraca arcus sinus liczby. +ASINH = ASINH ## Zwraca arcus sinus hiperboliczny liczby. +ATAN = ATAN ## Zwraca arcus tangens liczby. +ATAN2 = ATAN2 ## Zwraca arcus tangens liczby na podstawie współrzędnych x i y. +ATANH = ATANH ## Zwraca arcus tangens hiperboliczny liczby. +CEILING = ZAOKR.W.GÓRĘ ## Zaokrągla liczbę do najbliższej liczby całkowitej lub do najbliższej wielokrotności dokładności. +COMBIN = KOMBINACJE ## Zwraca liczbę kombinacji dla danej liczby obiektów. +COS = COS ## Zwraca cosinus liczby. +COSH = COSH ## Zwraca cosinus hiperboliczny liczby. +DEGREES = STOPNIE ## Konwertuje radiany na stopnie. +EVEN = ZAOKR.DO.PARZ ## Zaokrągla liczbę w górę do najbliższej liczby parzystej. +EXP = EXP ## Zwraca wartość liczby e podniesionej do potęgi określonej przez podaną liczbę. +FACT = SILNIA ## Zwraca silnię liczby. +FACTDOUBLE = FACTDOUBLE ## Zwraca podwójną silnię liczby. +FLOOR = ZAOKR.W.DÓŁ ## Zaokrągla liczbę w dół, w kierunku zera. +GCD = GCD ## Zwraca największy wspólny dzielnik. +INT = ZAOKR.DO.CAŁK ## Zaokrągla liczbę w dół do najbliższej liczby całkowitej. +LCM = LCM ## Zwraca najmniejszą wspólną wielokrotność. +LN = LN ## Zwraca logarytm naturalny podanej liczby. +LOG = LOG ## Zwraca logarytm danej liczby przy zadanej podstawie. +LOG10 = LOG10 ## Zwraca logarytm dziesiętny liczby. +MDETERM = WYZNACZNIK.MACIERZY ## Zwraca wyznacznik macierzy tablicy. +MINVERSE = MACIERZ.ODW ## Zwraca odwrotność macierzy tablicy. +MMULT = MACIERZ.ILOCZYN ## Zwraca iloczyn macierzy dwóch tablic. +MOD = MOD ## Zwraca resztę z dzielenia. +MROUND = MROUND ## Zwraca liczbę zaokrągloną do żądanej wielokrotności. +MULTINOMIAL = MULTINOMIAL ## Zwraca wielomian dla zbioru liczb. +ODD = ZAOKR.DO.NPARZ ## Zaokrągla liczbę w górę do najbliższej liczby nieparzystej. +PI = PI ## Zwraca wartość liczby Pi. +POWER = POTĘGA ## Zwraca liczbę podniesioną do potęgi. +PRODUCT = ILOCZYN ## Mnoży argumenty. +QUOTIENT = QUOTIENT ## Zwraca iloraz (całkowity). +RADIANS = RADIANY ## Konwertuje stopnie na radiany. +RAND = LOS ## Zwraca liczbę pseudolosową z zakresu od 0 do 1. +RANDBETWEEN = RANDBETWEEN ## Zwraca liczbę pseudolosową z zakresu określonego przez podane argumenty. +ROMAN = RZYMSKIE ## Konwertuje liczbę arabską na rzymską jako tekst. +ROUND = ZAOKR ## Zaokrągla liczbę do określonej liczby cyfr. +ROUNDDOWN = ZAOKR.DÓŁ ## Zaokrągla liczbę w dół, w kierunku zera. +ROUNDUP = ZAOKR.GÓRA ## Zaokrągla liczbę w górę, w kierunku od zera. +SERIESSUM = SERIESSUM ## Zwraca sumę szeregu potęgowego na podstawie wzoru. +SIGN = ZNAK.LICZBY ## Zwraca znak liczby. +SIN = SIN ## Zwraca sinus danego kąta. +SINH = SINH ## Zwraca sinus hiperboliczny liczby. +SQRT = PIERWIASTEK ## Zwraca dodatni pierwiastek kwadratowy. +SQRTPI = SQRTPI ## Zwraca pierwiastek kwadratowy iloczynu (liczba * Pi). +SUBTOTAL = SUMY.POŚREDNIE ## Zwraca sumę częściową listy lub bazy danych. +SUM = SUMA ## Dodaje argumenty. +SUMIF = SUMA.JEŻELI ## Dodaje komórki określone przez podane kryterium. +SUMIFS = SUMA.WARUNKÓW ## Dodaje komórki w zakresie, które spełniają wiele kryteriów. +SUMPRODUCT = SUMA.ILOCZYNÓW ## Zwraca sumę iloczynów odpowiednich elementów tablicy. +SUMSQ = SUMA.KWADRATÓW ## Zwraca sumę kwadratów argumentów. +SUMX2MY2 = SUMA.X2.M.Y2 ## Zwraca sumę różnic kwadratów odpowiednich wartości w dwóch tablicach. +SUMX2PY2 = SUMA.X2.P.Y2 ## Zwraca sumę sum kwadratów odpowiednich wartości w dwóch tablicach. +SUMXMY2 = SUMA.XMY.2 ## Zwraca sumę kwadratów różnic odpowiednich wartości w dwóch tablicach. +TAN = TAN ## Zwraca tangens liczby. +TANH = TANH ## Zwraca tangens hiperboliczny liczby. +TRUNC = LICZBA.CAŁK ## Przycina liczbę do wartości całkowitej. + + +## +## Statistical functions Funkcje statystyczne +## +AVEDEV = ODCH.ŚREDNIE ## Zwraca średnią wartość odchyleń absolutnych punktów danych od ich wartości średniej. +AVERAGE = ŚREDNIA ## Zwraca wartość średnią argumentów. +AVERAGEA = ŚREDNIA.A ## Zwraca wartość średnią argumentów, z uwzględnieniem liczb, tekstów i wartości logicznych. +AVERAGEIF = ŚREDNIA.JEŻELI ## Zwraca średnią (średnią arytmetyczną) wszystkich komórek w zakresie, które spełniają podane kryteria. +AVERAGEIFS = ŚREDNIA.WARUNKÓW ## Zwraca średnią (średnią arytmetyczną) wszystkich komórek, które spełniają jedno lub więcej kryteriów. +BETADIST = ROZKŁAD.BETA ## Zwraca skumulowaną funkcję gęstości prawdopodobieństwa beta. +BETAINV = ROZKŁAD.BETA.ODW ## Zwraca odwrotność skumulowanej funkcji gęstości prawdopodobieństwa beta. +BINOMDIST = ROZKŁAD.DWUM ## Zwraca pojedynczy składnik dwumianowego rozkładu prawdopodobieństwa. +CHIDIST = ROZKŁAD.CHI ## Zwraca wartość jednostronnego prawdopodobieństwa rozkładu chi-kwadrat. +CHIINV = ROZKŁAD.CHI.ODW ## Zwraca odwrotność wartości jednostronnego prawdopodobieństwa rozkładu chi-kwadrat. +CHITEST = TEST.CHI ## Zwraca test niezależności. +CONFIDENCE = UFNOŚĆ ## Zwraca interwał ufności dla średniej populacji. +CORREL = WSP.KORELACJI ## Zwraca współczynnik korelacji dwóch zbiorów danych. +COUNT = ILE.LICZB ## Zlicza liczby znajdujące się na liście argumentów. +COUNTA = ILE.NIEPUSTYCH ## Zlicza wartości znajdujące się na liście argumentów. +COUNTBLANK = LICZ.PUSTE ## Zwraca liczbę pustych komórek w pewnym zakresie. +COUNTIF = LICZ.JEŻELI ## Zlicza komórki wewnątrz zakresu, które spełniają podane kryteria. +COUNTIFS = LICZ.WARUNKI ## Zlicza komórki wewnątrz zakresu, które spełniają wiele kryteriów. +COVAR = KOWARIANCJA ## Zwraca kowariancję, czyli średnią wartość iloczynów odpowiednich odchyleń. +CRITBINOM = PRÓG.ROZKŁAD.DWUM ## Zwraca najmniejszą wartość, dla której skumulowany rozkład dwumianowy jest mniejszy niż wartość kryterium lub równy jej. +DEVSQ = ODCH.KWADRATOWE ## Zwraca sumę kwadratów odchyleń. +EXPONDIST = ROZKŁAD.EXP ## Zwraca rozkład wykładniczy. +FDIST = ROZKŁAD.F ## Zwraca rozkład prawdopodobieństwa F. +FINV = ROZKŁAD.F.ODW ## Zwraca odwrotność rozkładu prawdopodobieństwa F. +FISHER = ROZKŁAD.FISHER ## Zwraca transformację Fishera. +FISHERINV = ROZKŁAD.FISHER.ODW ## Zwraca odwrotność transformacji Fishera. +FORECAST = REGLINX ## Zwraca wartość trendu liniowego. +FREQUENCY = CZĘSTOŚĆ ## Zwraca rozkład częstotliwości jako tablicę pionową. +FTEST = TEST.F ## Zwraca wynik testu F. +GAMMADIST = ROZKŁAD.GAMMA ## Zwraca rozkład gamma. +GAMMAINV = ROZKŁAD.GAMMA.ODW ## Zwraca odwrotność skumulowanego rozkładu gamma. +GAMMALN = ROZKŁAD.LIN.GAMMA ## Zwraca logarytm naturalny funkcji gamma, Γ(x). +GEOMEAN = ŚREDNIA.GEOMETRYCZNA ## Zwraca średnią geometryczną. +GROWTH = REGEXPW ## Zwraca wartości trendu wykładniczego. +HARMEAN = ŚREDNIA.HARMONICZNA ## Zwraca średnią harmoniczną. +HYPGEOMDIST = ROZKŁAD.HIPERGEOM ## Zwraca rozkład hipergeometryczny. +INTERCEPT = ODCIĘTA ## Zwraca punkt przecięcia osi pionowej z linią regresji liniowej. +KURT = KURTOZA ## Zwraca kurtozę zbioru danych. +LARGE = MAX.K ## Zwraca k-tą największą wartość ze zbioru danych. +LINEST = REGLINP ## Zwraca parametry trendu liniowego. +LOGEST = REGEXPP ## Zwraca parametry trendu wykładniczego. +LOGINV = ROZKŁAD.LOG.ODW ## Zwraca odwrotność rozkładu logarytmu naturalnego. +LOGNORMDIST = ROZKŁAD.LOG ## Zwraca skumulowany rozkład logarytmu naturalnego. +MAX = MAX ## Zwraca maksymalną wartość listy argumentów. +MAXA = MAX.A ## Zwraca maksymalną wartość listy argumentów, z uwzględnieniem liczb, tekstów i wartości logicznych. +MEDIAN = MEDIANA ## Zwraca medianę podanych liczb. +MIN = MIN ## Zwraca minimalną wartość listy argumentów. +MINA = MIN.A ## Zwraca najmniejszą wartość listy argumentów, z uwzględnieniem liczb, tekstów i wartości logicznych. +MODE = WYST.NAJCZĘŚCIEJ ## Zwraca wartość najczęściej występującą w zbiorze danych. +NEGBINOMDIST = ROZKŁAD.DWUM.PRZEC ## Zwraca ujemny rozkład dwumianowy. +NORMDIST = ROZKŁAD.NORMALNY ## Zwraca rozkład normalny skumulowany. +NORMINV = ROZKŁAD.NORMALNY.ODW ## Zwraca odwrotność rozkładu normalnego skumulowanego. +NORMSDIST = ROZKŁAD.NORMALNY.S ## Zwraca standardowy rozkład normalny skumulowany. +NORMSINV = ROZKŁAD.NORMALNY.S.ODW ## Zwraca odwrotność standardowego rozkładu normalnego skumulowanego. +PEARSON = PEARSON ## Zwraca współczynnik korelacji momentu iloczynu Pearsona. +PERCENTILE = PERCENTYL ## Wyznacza k-ty percentyl wartości w zakresie. +PERCENTRANK = PROCENT.POZYCJA ## Zwraca procentową pozycję wartości w zbiorze danych. +PERMUT = PERMUTACJE ## Zwraca liczbę permutacji dla danej liczby obiektów. +POISSON = ROZKŁAD.POISSON ## Zwraca rozkład Poissona. +PROB = PRAWDPD ## Zwraca prawdopodobieństwo, że wartości w zakresie leżą pomiędzy dwiema granicami. +QUARTILE = KWARTYL ## Wyznacza kwartyl zbioru danych. +RANK = POZYCJA ## Zwraca pozycję liczby na liście liczb. +RSQ = R.KWADRAT ## Zwraca kwadrat współczynnika korelacji momentu iloczynu Pearsona. +SKEW = SKOŚNOŚĆ ## Zwraca skośność rozkładu. +SLOPE = NACHYLENIE ## Zwraca nachylenie linii regresji liniowej. +SMALL = MIN.K ## Zwraca k-tą najmniejszą wartość ze zbioru danych. +STANDARDIZE = NORMALIZUJ ## Zwraca wartość znormalizowaną. +STDEV = ODCH.STANDARDOWE ## Szacuje odchylenie standardowe na podstawie próbki. +STDEVA = ODCH.STANDARDOWE.A ## Szacuje odchylenie standardowe na podstawie próbki, z uwzględnieniem liczb, tekstów i wartości logicznych. +STDEVP = ODCH.STANDARD.POPUL ## Oblicza odchylenie standardowe na podstawie całej populacji. +STDEVPA = ODCH.STANDARD.POPUL.A ## Oblicza odchylenie standardowe na podstawie całej populacji, z uwzględnieniem liczb, teksów i wartości logicznych. +STEYX = REGBŁSTD ## Zwraca błąd standardowy przewidzianej wartości y dla każdej wartości x w regresji. +TDIST = ROZKŁAD.T ## Zwraca rozkład t-Studenta. +TINV = ROZKŁAD.T.ODW ## Zwraca odwrotność rozkładu t-Studenta. +TREND = REGLINW ## Zwraca wartości trendu liniowego. +TRIMMEAN = ŚREDNIA.WEWN ## Zwraca średnią wartość dla wnętrza zbioru danych. +TTEST = TEST.T ## Zwraca prawdopodobieństwo związane z testem t-Studenta. +VAR = WARIANCJA ## Szacuje wariancję na podstawie próbki. +VARA = WARIANCJA.A ## Szacuje wariancję na podstawie próbki, z uwzględnieniem liczb, tekstów i wartości logicznych. +VARP = WARIANCJA.POPUL ## Oblicza wariancję na podstawie całej populacji. +VARPA = WARIANCJA.POPUL.A ## Oblicza wariancję na podstawie całej populacji, z uwzględnieniem liczb, tekstów i wartości logicznych. +WEIBULL = ROZKŁAD.WEIBULL ## Zwraca rozkład Weibulla. +ZTEST = TEST.Z ## Zwraca wartość jednostronnego prawdopodobieństwa testu z. + + +## +## Text functions Funkcje tekstowe +## +ASC = ASC ## Zamienia litery angielskie lub katakana o pełnej szerokości (dwubajtowe) w ciągu znaków na znaki o szerokości połówkowej (jednobajtowe). +BAHTTEXT = BAHTTEXT ## Konwertuje liczbę na tekst, stosując format walutowy ß (baht). +CHAR = ZNAK ## Zwraca znak o podanym numerze kodu. +CLEAN = OCZYŚĆ ## Usuwa z tekstu wszystkie znaki, które nie mogą być drukowane. +CODE = KOD ## Zwraca kod numeryczny pierwszego znaku w ciągu tekstowym. +CONCATENATE = ZŁĄCZ.TEKSTY ## Łączy kilka oddzielnych tekstów w jeden tekst. +DOLLAR = KWOTA ## Konwertuje liczbę na tekst, stosując format walutowy $ (dolar). +EXACT = PORÓWNAJ ## Sprawdza identyczność dwóch wartości tekstowych. +FIND = ZNAJDŹ ## Znajduje jedną wartość tekstową wewnątrz innej (z uwzględnieniem wielkich i małych liter). +FINDB = ZNAJDŹB ## Znajduje jedną wartość tekstową wewnątrz innej (z uwzględnieniem wielkich i małych liter). +FIXED = ZAOKR.DO.TEKST ## Formatuje liczbę jako tekst przy stałej liczbie miejsc dziesiętnych. +JIS = JIS ## Zmienia litery angielskie lub katakana o szerokości połówkowej (jednobajtowe) w ciągu znaków na znaki o pełnej szerokości (dwubajtowe). +LEFT = LEWY ## Zwraca skrajne lewe znaki z wartości tekstowej. +LEFTB = LEWYB ## Zwraca skrajne lewe znaki z wartości tekstowej. +LEN = DŁ ## Zwraca liczbę znaków ciągu tekstowego. +LENB = DŁ.B ## Zwraca liczbę znaków ciągu tekstowego. +LOWER = LITERY.MAŁE ## Konwertuje wielkie litery tekstu na małe litery. +MID = FRAGMENT.TEKSTU ## Zwraca określoną liczbę znaków z ciągu tekstowego, zaczynając od zadanej pozycji. +MIDB = FRAGMENT.TEKSTU.B ## Zwraca określoną liczbę znaków z ciągu tekstowego, zaczynając od zadanej pozycji. +PHONETIC = PHONETIC ## Wybiera znaki fonetyczne (furigana) z ciągu tekstowego. +PROPER = Z.WIELKIEJ.LITERY ## Zastępuje pierwszą literę każdego wyrazu tekstu wielką literą. +REPLACE = ZASTĄP ## Zastępuje znaki w tekście. +REPLACEB = ZASTĄP.B ## Zastępuje znaki w tekście. +REPT = POWT ## Powiela tekst daną liczbę razy. +RIGHT = PRAWY ## Zwraca skrajne prawe znaki z wartości tekstowej. +RIGHTB = PRAWYB ## Zwraca skrajne prawe znaki z wartości tekstowej. +SEARCH = SZUKAJ.TEKST ## Wyszukuje jedną wartość tekstową wewnątrz innej (bez uwzględniania wielkości liter). +SEARCHB = SZUKAJ.TEKST.B ## Wyszukuje jedną wartość tekstową wewnątrz innej (bez uwzględniania wielkości liter). +SUBSTITUTE = PODSTAW ## Podstawia nowy tekst w miejsce poprzedniego tekstu w ciągu tekstowym. +T = T ## Konwertuje argumenty na tekst. +TEXT = TEKST ## Formatuje liczbę i konwertuje ją na tekst. +TRIM = USUŃ.ZBĘDNE.ODSTĘPY ## Usuwa spacje z tekstu. +UPPER = LITERY.WIELKIE ## Konwertuje znaki tekstu na wielkie litery. +VALUE = WARTOŚĆ ## Konwertuje argument tekstowy na liczbę. diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/pt/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/_notes/dwsync.xml new file mode 100644 index 0000000..769bf45 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559954185785" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559954722299" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752256883246" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752257179108" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461252583016" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461255241033" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752256883246" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752257179108" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/pt/br/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/br/_notes/dwsync.xml new file mode 100644 index 0000000..adb1ea5 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/br/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851489999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851489999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559956208906" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559956771535" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752259046614" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752259516507" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461251456170" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461251946387" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752259046614" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752259516507" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/pt/br/config b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/br/config new file mode 100644 index 0000000..b8e6964 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/br/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = R$ + + +## +## Excel Error Codes (For future use) +## +NULL = #NULO! +DIV0 = #DIV/0! +VALUE = #VALOR! +REF = #REF! +NAME = #NOME? +NUM = #NÚM! +NA = #N/D diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/pt/br/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/br/functions new file mode 100644 index 0000000..11d45f1 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/br/functions @@ -0,0 +1,408 @@ +## +## Add-in and Automation functions Funções Suplemento e Automação +## +GETPIVOTDATA = INFODADOSTABELADINÂMICA ## Retorna os dados armazenados em um relatório de tabela dinâmica + + +## +## Cube functions Funções de Cubo +## +CUBEKPIMEMBER = MEMBROKPICUBO ## Retorna o nome de um KPI (indicador de desempenho-chave), uma propriedade e uma medida e exibe o nome e a propriedade na célula. Um KPI é uma medida quantificável, como o lucro bruto mensal ou a rotatividade trimestral dos funcionários, usada para monitorar o desempenho de uma organização. +CUBEMEMBER = MEMBROCUBO ## Retorna um membro ou tupla em uma hierarquia de cubo. Use para validar se o membro ou tupla existe no cubo. +CUBEMEMBERPROPERTY = PROPRIEDADEMEMBROCUBO ## Retorna o valor da propriedade de um membro no cubo. Usada para validar a existência do nome do membro no cubo e para retornar a propriedade especificada para esse membro. +CUBERANKEDMEMBER = MEMBROCLASSIFICADOCUBO ## Retorna o enésimo membro, ou o membro ordenado, em um conjunto. Use para retornar um ou mais elementos em um conjunto, assim como o melhor vendedor ou os dez melhores alunos. +CUBESET = CONJUNTOCUBO ## Define um conjunto calculado de membros ou tuplas enviando uma expressão do conjunto para o cubo no servidor, que cria o conjunto e o retorna para o Microsoft Office Excel. +CUBESETCOUNT = CONTAGEMCONJUNTOCUBO ## Retorna o número de itens em um conjunto. +CUBEVALUE = VALORCUBO ## Retorna um valor agregado de um cubo. + + +## +## Database functions Funções de banco de dados +## +DAVERAGE = BDMÉDIA ## Retorna a média das entradas selecionadas de um banco de dados +DCOUNT = BDCONTAR ## Conta as células que contêm números em um banco de dados +DCOUNTA = BDCONTARA ## Conta células não vazias em um banco de dados +DGET = BDEXTRAIR ## Extrai de um banco de dados um único registro que corresponde a um critério específico +DMAX = BDMÁX ## Retorna o valor máximo de entradas selecionadas de um banco de dados +DMIN = BDMÍN ## Retorna o valor mínimo de entradas selecionadas de um banco de dados +DPRODUCT = BDMULTIPL ## Multiplica os valores em um campo específico de registros que correspondem ao critério em um banco de dados +DSTDEV = BDEST ## Estima o desvio padrão com base em uma amostra de entradas selecionadas de um banco de dados +DSTDEVP = BDDESVPA ## Calcula o desvio padrão com base na população inteira de entradas selecionadas de um banco de dados +DSUM = BDSOMA ## Adiciona os números à coluna de campos de registros do banco de dados que correspondem ao critério +DVAR = BDVAREST ## Estima a variância com base em uma amostra de entradas selecionadas de um banco de dados +DVARP = BDVARP ## Calcula a variância com base na população inteira de entradas selecionadas de um banco de dados + + +## +## Date and time functions Funções de data e hora +## +DATE = DATA ## Retorna o número de série de uma data específica +DATEVALUE = DATA.VALOR ## Converte uma data na forma de texto para um número de série +DAY = DIA ## Converte um número de série em um dia do mês +DAYS360 = DIAS360 ## Calcula o número de dias entre duas datas com base em um ano de 360 dias +EDATE = DATAM ## Retorna o número de série da data que é o número indicado de meses antes ou depois da data inicial +EOMONTH = FIMMÊS ## Retorna o número de série do último dia do mês antes ou depois de um número especificado de meses +HOUR = HORA ## Converte um número de série em uma hora +MINUTE = MINUTO ## Converte um número de série em um minuto +MONTH = MÊS ## Converte um número de série em um mês +NETWORKDAYS = DIATRABALHOTOTAL ## Retorna o número de dias úteis inteiros entre duas datas +NOW = AGORA ## Retorna o número de série seqüencial da data e hora atuais +SECOND = SEGUNDO ## Converte um número de série em um segundo +TIME = HORA ## Retorna o número de série de uma hora específica +TIMEVALUE = VALOR.TEMPO ## Converte um horário na forma de texto para um número de série +TODAY = HOJE ## Retorna o número de série da data de hoje +WEEKDAY = DIA.DA.SEMANA ## Converte um número de série em um dia da semana +WEEKNUM = NÚMSEMANA ## Converte um número de série em um número que representa onde a semana cai numericamente em um ano +WORKDAY = DIATRABALHO ## Retorna o número de série da data antes ou depois de um número específico de dias úteis +YEAR = ANO ## Converte um número de série em um ano +YEARFRAC = FRAÇÃOANO ## Retorna a fração do ano que representa o número de dias entre data_inicial e data_final + + +## +## Engineering functions Funções de engenharia +## +BESSELI = BESSELI ## Retorna a função de Bessel In(x) modificada +BESSELJ = BESSELJ ## Retorna a função de Bessel Jn(x) +BESSELK = BESSELK ## Retorna a função de Bessel Kn(x) modificada +BESSELY = BESSELY ## Retorna a função de Bessel Yn(x) +BIN2DEC = BIN2DEC ## Converte um número binário em decimal +BIN2HEX = BIN2HEX ## Converte um número binário em hexadecimal +BIN2OCT = BIN2OCT ## Converte um número binário em octal +COMPLEX = COMPLEX ## Converte coeficientes reais e imaginários e um número complexo +CONVERT = CONVERTER ## Converte um número de um sistema de medida para outro +DEC2BIN = DECABIN ## Converte um número decimal em binário +DEC2HEX = DECAHEX ## Converte um número decimal em hexadecimal +DEC2OCT = DECAOCT ## Converte um número decimal em octal +DELTA = DELTA ## Testa se dois valores são iguais +ERF = FUNERRO ## Retorna a função de erro +ERFC = FUNERROCOMPL ## Retorna a função de erro complementar +GESTEP = DEGRAU ## Testa se um número é maior do que um valor limite +HEX2BIN = HEXABIN ## Converte um número hexadecimal em binário +HEX2DEC = HEXADEC ## Converte um número hexadecimal em decimal +HEX2OCT = HEXAOCT ## Converte um número hexadecimal em octal +IMABS = IMABS ## Retorna o valor absoluto (módulo) de um número complexo +IMAGINARY = IMAGINÁRIO ## Retorna o coeficiente imaginário de um número complexo +IMARGUMENT = IMARG ## Retorna o argumento teta, um ângulo expresso em radianos +IMCONJUGATE = IMCONJ ## Retorna o conjugado complexo de um número complexo +IMCOS = IMCOS ## Retorna o cosseno de um número complexo +IMDIV = IMDIV ## Retorna o quociente de dois números complexos +IMEXP = IMEXP ## Retorna o exponencial de um número complexo +IMLN = IMLN ## Retorna o logaritmo natural de um número complexo +IMLOG10 = IMLOG10 ## Retorna o logaritmo de base 10 de um número complexo +IMLOG2 = IMLOG2 ## Retorna o logaritmo de base 2 de um número complexo +IMPOWER = IMPOT ## Retorna um número complexo elevado a uma potência inteira +IMPRODUCT = IMPROD ## Retorna o produto de números complexos +IMREAL = IMREAL ## Retorna o coeficiente real de um número complexo +IMSIN = IMSENO ## Retorna o seno de um número complexo +IMSQRT = IMRAIZ ## Retorna a raiz quadrada de um número complexo +IMSUB = IMSUBTR ## Retorna a diferença entre dois números complexos +IMSUM = IMSOMA ## Retorna a soma de números complexos +OCT2BIN = OCTABIN ## Converte um número octal em binário +OCT2DEC = OCTADEC ## Converte um número octal em decimal +OCT2HEX = OCTAHEX ## Converte um número octal em hexadecimal + + +## +## Financial functions Funções financeiras +## +ACCRINT = JUROSACUM ## Retorna a taxa de juros acumulados de um título que paga uma taxa periódica de juros +ACCRINTM = JUROSACUMV ## Retorna os juros acumulados de um título que paga juros no vencimento +AMORDEGRC = AMORDEGRC ## Retorna a depreciação para cada período contábil usando o coeficiente de depreciação +AMORLINC = AMORLINC ## Retorna a depreciação para cada período contábil +COUPDAYBS = CUPDIASINLIQ ## Retorna o número de dias do início do período de cupom até a data de liquidação +COUPDAYS = CUPDIAS ## Retorna o número de dias no período de cupom que contém a data de quitação +COUPDAYSNC = CUPDIASPRÓX ## Retorna o número de dias da data de liquidação até a data do próximo cupom +COUPNCD = CUPDATAPRÓX ## Retorna a próxima data de cupom após a data de quitação +COUPNUM = CUPNÚM ## Retorna o número de cupons pagáveis entre as datas de quitação e vencimento +COUPPCD = CUPDATAANT ## Retorna a data de cupom anterior à data de quitação +CUMIPMT = PGTOJURACUM ## Retorna os juros acumulados pagos entre dois períodos +CUMPRINC = PGTOCAPACUM ## Retorna o capital acumulado pago sobre um empréstimo entre dois períodos +DB = BD ## Retorna a depreciação de um ativo para um período especificado, usando o método de balanço de declínio fixo +DDB = BDD ## Retorna a depreciação de um ativo com relação a um período especificado usando o método de saldos decrescentes duplos ou qualquer outro método especificado por você +DISC = DESC ## Retorna a taxa de desconto de um título +DOLLARDE = MOEDADEC ## Converte um preço em formato de moeda, na forma fracionária, em um preço na forma decimal +DOLLARFR = MOEDAFRA ## Converte um preço, apresentado na forma decimal, em um preço apresentado na forma fracionária +DURATION = DURAÇÃO ## Retorna a duração anual de um título com pagamentos de juros periódicos +EFFECT = EFETIVA ## Retorna a taxa de juros anual efetiva +FV = VF ## Retorna o valor futuro de um investimento +FVSCHEDULE = VFPLANO ## Retorna o valor futuro de um capital inicial após a aplicação de uma série de taxas de juros compostas +INTRATE = TAXAJUROS ## Retorna a taxa de juros de um título totalmente investido +IPMT = IPGTO ## Retorna o pagamento de juros para um investimento em um determinado período +IRR = TIR ## Retorna a taxa interna de retorno de uma série de fluxos de caixa +ISPMT = ÉPGTO ## Calcula os juros pagos durante um período específico de um investimento +MDURATION = MDURAÇÃO ## Retorna a duração de Macauley modificada para um título com um valor de paridade equivalente a R$ 100 +MIRR = MTIR ## Calcula a taxa interna de retorno em que fluxos de caixa positivos e negativos são financiados com diferentes taxas +NOMINAL = NOMINAL ## Retorna a taxa de juros nominal anual +NPER = NPER ## Retorna o número de períodos de um investimento +NPV = VPL ## Retorna o valor líquido atual de um investimento com base em uma série de fluxos de caixa periódicos e em uma taxa de desconto +ODDFPRICE = PREÇOPRIMINC ## Retorna o preço por R$ 100 de valor nominal de um título com um primeiro período indefinido +ODDFYIELD = LUCROPRIMINC ## Retorna o rendimento de um título com um primeiro período indefinido +ODDLPRICE = PREÇOÚLTINC ## Retorna o preço por R$ 100 de valor nominal de um título com um último período de cupom indefinido +ODDLYIELD = LUCROÚLTINC ## Retorna o rendimento de um título com um último período indefinido +PMT = PGTO ## Retorna o pagamento periódico de uma anuidade +PPMT = PPGTO ## Retorna o pagamento de capital para determinado período de investimento +PRICE = PREÇO ## Retorna a preço por R$ 100,00 de valor nominal de um título que paga juros periódicos +PRICEDISC = PREÇODESC ## Retorna o preço por R$ 100,00 de valor nominal de um título descontado +PRICEMAT = PREÇOVENC ## Retorna o preço por R$ 100,00 de valor nominal de um título que paga juros no vencimento +PV = VP ## Retorna o valor presente de um investimento +RATE = TAXA ## Retorna a taxa de juros por período de uma anuidade +RECEIVED = RECEBER ## Retorna a quantia recebida no vencimento de um título totalmente investido +SLN = DPD ## Retorna a depreciação em linha reta de um ativo durante um período +SYD = SDA ## Retorna a depreciação dos dígitos da soma dos anos de um ativo para um período especificado +TBILLEQ = OTN ## Retorna o rendimento de um título equivalente a uma obrigação do Tesouro +TBILLPRICE = OTNVALOR ## Retorna o preço por R$ 100,00 de valor nominal de uma obrigação do Tesouro +TBILLYIELD = OTNLUCRO ## Retorna o rendimento de uma obrigação do Tesouro +VDB = BDV ## Retorna a depreciação de um ativo para um período especificado ou parcial usando um método de balanço declinante +XIRR = XTIR ## Fornece a taxa interna de retorno para um programa de fluxos de caixa que não é necessariamente periódico +XNPV = XVPL ## Retorna o valor presente líquido de um programa de fluxos de caixa que não é necessariamente periódico +YIELD = LUCRO ## Retorna o lucro de um título que paga juros periódicos +YIELDDISC = LUCRODESC ## Retorna o rendimento anual de um título descontado. Por exemplo, uma obrigação do Tesouro +YIELDMAT = LUCROVENC ## Retorna o lucro anual de um título que paga juros no vencimento + + +## +## Information functions Funções de informação +## +CELL = CÉL ## Retorna informações sobre formatação, localização ou conteúdo de uma célula +ERROR.TYPE = TIPO.ERRO ## Retorna um número correspondente a um tipo de erro +INFO = INFORMAÇÃO ## Retorna informações sobre o ambiente operacional atual +ISBLANK = ÉCÉL.VAZIA ## Retorna VERDADEIRO se o valor for vazio +ISERR = ÉERRO ## Retorna VERDADEIRO se o valor for um valor de erro diferente de #N/D +ISERROR = ÉERROS ## Retorna VERDADEIRO se o valor for um valor de erro +ISEVEN = ÉPAR ## Retorna VERDADEIRO se o número for par +ISLOGICAL = ÉLÓGICO ## Retorna VERDADEIRO se o valor for um valor lógico +ISNA = É.NÃO.DISP ## Retorna VERDADEIRO se o valor for o valor de erro #N/D +ISNONTEXT = É.NÃO.TEXTO ## Retorna VERDADEIRO se o valor for diferente de texto +ISNUMBER = ÉNÚM ## Retorna VERDADEIRO se o valor for um número +ISODD = ÉIMPAR ## Retorna VERDADEIRO se o número for ímpar +ISREF = ÉREF ## Retorna VERDADEIRO se o valor for uma referência +ISTEXT = ÉTEXTO ## Retorna VERDADEIRO se o valor for texto +N = N ## Retorna um valor convertido em um número +NA = NÃO.DISP ## Retorna o valor de erro #N/D +TYPE = TIPO ## Retorna um número indicando o tipo de dados de um valor + + +## +## Logical functions Funções lógicas +## +AND = E ## Retorna VERDADEIRO se todos os seus argumentos forem VERDADEIROS +FALSE = FALSO ## Retorna o valor lógico FALSO +IF = SE ## Especifica um teste lógico a ser executado +IFERROR = SEERRO ## Retornará um valor que você especifica se uma fórmula for avaliada para um erro; do contrário, retornará o resultado da fórmula +NOT = NÃO ## Inverte o valor lógico do argumento +OR = OU ## Retorna VERDADEIRO se um dos argumentos for VERDADEIRO +TRUE = VERDADEIRO ## Retorna o valor lógico VERDADEIRO + + +## +## Lookup and reference functions Funções de pesquisa e referência +## +ADDRESS = ENDEREÇO ## Retorna uma referência como texto para uma única célula em uma planilha +AREAS = ÁREAS ## Retorna o número de áreas em uma referência +CHOOSE = ESCOLHER ## Escolhe um valor a partir de uma lista de valores +COLUMN = COL ## Retorna o número da coluna de uma referência +COLUMNS = COLS ## Retorna o número de colunas em uma referência +HLOOKUP = PROCH ## Procura na linha superior de uma matriz e retorna o valor da célula especificada +HYPERLINK = HYPERLINK ## Cria um atalho ou salto que abre um documento armazenado em um servidor de rede, uma intranet ou na Internet +INDEX = ÍNDICE ## Usa um índice para escolher um valor de uma referência ou matriz +INDIRECT = INDIRETO ## Retorna uma referência indicada por um valor de texto +LOOKUP = PROC ## Procura valores em um vetor ou em uma matriz +MATCH = CORRESP ## Procura valores em uma referência ou em uma matriz +OFFSET = DESLOC ## Retorna um deslocamento de referência com base em uma determinada referência +ROW = LIN ## Retorna o número da linha de uma referência +ROWS = LINS ## Retorna o número de linhas em uma referência +RTD = RTD ## Recupera dados em tempo real de um programa que ofereça suporte a automação COM (automação: uma forma de trabalhar com objetos de um aplicativo a partir de outro aplicativo ou ferramenta de desenvolvimento. Chamada inicialmente de automação OLE, a automação é um padrão industrial e um recurso do modelo de objeto componente (COM).) +TRANSPOSE = TRANSPOR ## Retorna a transposição de uma matriz +VLOOKUP = PROCV ## Procura na primeira coluna de uma matriz e move ao longo da linha para retornar o valor de uma célula + + +## +## Math and trigonometry functions Funções matemáticas e trigonométricas +## +ABS = ABS ## Retorna o valor absoluto de um número +ACOS = ACOS ## Retorna o arco cosseno de um número +ACOSH = ACOSH ## Retorna o cosseno hiperbólico inverso de um número +ASIN = ASEN ## Retorna o arco seno de um número +ASINH = ASENH ## Retorna o seno hiperbólico inverso de um número +ATAN = ATAN ## Retorna o arco tangente de um número +ATAN2 = ATAN2 ## Retorna o arco tangente das coordenadas x e y especificadas +ATANH = ATANH ## Retorna a tangente hiperbólica inversa de um número +CEILING = TETO ## Arredonda um número para o inteiro mais próximo ou para o múltiplo mais próximo de significância +COMBIN = COMBIN ## Retorna o número de combinações de um determinado número de objetos +COS = COS ## Retorna o cosseno de um número +COSH = COSH ## Retorna o cosseno hiperbólico de um número +DEGREES = GRAUS ## Converte radianos em graus +EVEN = PAR ## Arredonda um número para cima até o inteiro par mais próximo +EXP = EXP ## Retorna e elevado à potência de um número especificado +FACT = FATORIAL ## Retorna o fatorial de um número +FACTDOUBLE = FATDUPLO ## Retorna o fatorial duplo de um número +FLOOR = ARREDMULTB ## Arredonda um número para baixo até zero +GCD = MDC ## Retorna o máximo divisor comum +INT = INT ## Arredonda um número para baixo até o número inteiro mais próximo +LCM = MMC ## Retorna o mínimo múltiplo comum +LN = LN ## Retorna o logaritmo natural de um número +LOG = LOG ## Retorna o logaritmo de um número de uma base especificada +LOG10 = LOG10 ## Retorna o logaritmo de base 10 de um número +MDETERM = MATRIZ.DETERM ## Retorna o determinante de uma matriz de uma variável do tipo matriz +MINVERSE = MATRIZ.INVERSO ## Retorna a matriz inversa de uma matriz +MMULT = MATRIZ.MULT ## Retorna o produto de duas matrizes +MOD = RESTO ## Retorna o resto da divisão +MROUND = MARRED ## Retorna um número arredondado ao múltiplo desejado +MULTINOMIAL = MULTINOMIAL ## Retorna o multinomial de um conjunto de números +ODD = ÍMPAR ## Arredonda um número para cima até o inteiro ímpar mais próximo +PI = PI ## Retorna o valor de Pi +POWER = POTÊNCIA ## Fornece o resultado de um número elevado a uma potência +PRODUCT = MULT ## Multiplica seus argumentos +QUOTIENT = QUOCIENTE ## Retorna a parte inteira de uma divisão +RADIANS = RADIANOS ## Converte graus em radianos +RAND = ALEATÓRIO ## Retorna um número aleatório entre 0 e 1 +RANDBETWEEN = ALEATÓRIOENTRE ## Retorna um número aleatório entre os números especificados +ROMAN = ROMANO ## Converte um algarismo arábico em romano, como texto +ROUND = ARRED ## Arredonda um número até uma quantidade especificada de dígitos +ROUNDDOWN = ARREDONDAR.PARA.BAIXO ## Arredonda um número para baixo até zero +ROUNDUP = ARREDONDAR.PARA.CIMA ## Arredonda um número para cima, afastando-o de zero +SERIESSUM = SOMASEQÜÊNCIA ## Retorna a soma de uma série polinomial baseada na fórmula +SIGN = SINAL ## Retorna o sinal de um número +SIN = SEN ## Retorna o seno de um ângulo dado +SINH = SENH ## Retorna o seno hiperbólico de um número +SQRT = RAIZ ## Retorna uma raiz quadrada positiva +SQRTPI = RAIZPI ## Retorna a raiz quadrada de (núm* pi) +SUBTOTAL = SUBTOTAL ## Retorna um subtotal em uma lista ou em um banco de dados +SUM = SOMA ## Soma seus argumentos +SUMIF = SOMASE ## Adiciona as células especificadas por um determinado critério +SUMIFS = SOMASE ## Adiciona as células em um intervalo que atende a vários critérios +SUMPRODUCT = SOMARPRODUTO ## Retorna a soma dos produtos de componentes correspondentes de matrizes +SUMSQ = SOMAQUAD ## Retorna a soma dos quadrados dos argumentos +SUMX2MY2 = SOMAX2DY2 ## Retorna a soma da diferença dos quadrados dos valores correspondentes em duas matrizes +SUMX2PY2 = SOMAX2SY2 ## Retorna a soma da soma dos quadrados dos valores correspondentes em duas matrizes +SUMXMY2 = SOMAXMY2 ## Retorna a soma dos quadrados das diferenças dos valores correspondentes em duas matrizes +TAN = TAN ## Retorna a tangente de um número +TANH = TANH ## Retorna a tangente hiperbólica de um número +TRUNC = TRUNCAR ## Trunca um número para um inteiro + + +## +## Statistical functions Funções estatísticas +## +AVEDEV = DESV.MÉDIO ## Retorna a média aritmética dos desvios médios dos pontos de dados a partir de sua média +AVERAGE = MÉDIA ## Retorna a média dos argumentos +AVERAGEA = MÉDIAA ## Retorna a média dos argumentos, inclusive números, texto e valores lógicos +AVERAGEIF = MÉDIASE ## Retorna a média (média aritmética) de todas as células em um intervalo que atendem a um determinado critério +AVERAGEIFS = MÉDIASES ## Retorna a média (média aritmética) de todas as células que atendem a múltiplos critérios. +BETADIST = DISTBETA ## Retorna a função de distribuição cumulativa beta +BETAINV = BETA.ACUM.INV ## Retorna o inverso da função de distribuição cumulativa para uma distribuição beta especificada +BINOMDIST = DISTRBINOM ## Retorna a probabilidade de distribuição binomial do termo individual +CHIDIST = DIST.QUI ## Retorna a probabilidade unicaudal da distribuição qui-quadrada +CHIINV = INV.QUI ## Retorna o inverso da probabilidade uni-caudal da distribuição qui-quadrada +CHITEST = TESTE.QUI ## Retorna o teste para independência +CONFIDENCE = INT.CONFIANÇA ## Retorna o intervalo de confiança para uma média da população +CORREL = CORREL ## Retorna o coeficiente de correlação entre dois conjuntos de dados +COUNT = CONT.NÚM ## Calcula quantos números há na lista de argumentos +COUNTA = CONT.VALORES ## Calcula quantos valores há na lista de argumentos +COUNTBLANK = CONTAR.VAZIO ## Conta o número de células vazias no intervalo especificado +COUNTIF = CONT.SE ## Calcula o número de células não vazias em um intervalo que corresponde a determinados critérios +COUNTIFS = CONT.SES ## Conta o número de células dentro de um intervalo que atende a múltiplos critérios +COVAR = COVAR ## Retorna a covariância, a média dos produtos dos desvios pares +CRITBINOM = CRIT.BINOM ## Retorna o menor valor para o qual a distribuição binomial cumulativa é menor ou igual ao valor padrão +DEVSQ = DESVQ ## Retorna a soma dos quadrados dos desvios +EXPONDIST = DISTEXPON ## Retorna a distribuição exponencial +FDIST = DISTF ## Retorna a distribuição de probabilidade F +FINV = INVF ## Retorna o inverso da distribuição de probabilidades F +FISHER = FISHER ## Retorna a transformação Fisher +FISHERINV = FISHERINV ## Retorna o inverso da transformação Fisher +FORECAST = PREVISÃO ## Retorna um valor ao longo de uma linha reta +FREQUENCY = FREQÜÊNCIA ## Retorna uma distribuição de freqüência como uma matriz vertical +FTEST = TESTEF ## Retorna o resultado de um teste F +GAMMADIST = DISTGAMA ## Retorna a distribuição gama +GAMMAINV = INVGAMA ## Retorna o inverso da distribuição cumulativa gama +GAMMALN = LNGAMA ## Retorna o logaritmo natural da função gama, G(x) +GEOMEAN = MÉDIA.GEOMÉTRICA ## Retorna a média geométrica +GROWTH = CRESCIMENTO ## Retorna valores ao longo de uma tendência exponencial +HARMEAN = MÉDIA.HARMÔNICA ## Retorna a média harmônica +HYPGEOMDIST = DIST.HIPERGEOM ## Retorna a distribuição hipergeométrica +INTERCEPT = INTERCEPÇÃO ## Retorna a intercepção da linha de regressão linear +KURT = CURT ## Retorna a curtose de um conjunto de dados +LARGE = MAIOR ## Retorna o maior valor k-ésimo de um conjunto de dados +LINEST = PROJ.LIN ## Retorna os parâmetros de uma tendência linear +LOGEST = PROJ.LOG ## Retorna os parâmetros de uma tendência exponencial +LOGINV = INVLOG ## Retorna o inverso da distribuição lognormal +LOGNORMDIST = DIST.LOGNORMAL ## Retorna a distribuição lognormal cumulativa +MAX = MÁXIMO ## Retorna o valor máximo em uma lista de argumentos +MAXA = MÁXIMOA ## Retorna o maior valor em uma lista de argumentos, inclusive números, texto e valores lógicos +MEDIAN = MED ## Retorna a mediana dos números indicados +MIN = MÍNIMO ## Retorna o valor mínimo em uma lista de argumentos +MINA = MÍNIMOA ## Retorna o menor valor em uma lista de argumentos, inclusive números, texto e valores lógicos +MODE = MODO ## Retorna o valor mais comum em um conjunto de dados +NEGBINOMDIST = DIST.BIN.NEG ## Retorna a distribuição binomial negativa +NORMDIST = DIST.NORM ## Retorna a distribuição cumulativa normal +NORMINV = INV.NORM ## Retorna o inverso da distribuição cumulativa normal +NORMSDIST = DIST.NORMP ## Retorna a distribuição cumulativa normal padrão +NORMSINV = INV.NORMP ## Retorna o inverso da distribuição cumulativa normal padrão +PEARSON = PEARSON ## Retorna o coeficiente de correlação do momento do produto Pearson +PERCENTILE = PERCENTIL ## Retorna o k-ésimo percentil de valores em um intervalo +PERCENTRANK = ORDEM.PORCENTUAL ## Retorna a ordem percentual de um valor em um conjunto de dados +PERMUT = PERMUT ## Retorna o número de permutações de um determinado número de objetos +POISSON = POISSON ## Retorna a distribuição Poisson +PROB = PROB ## Retorna a probabilidade de valores em um intervalo estarem entre dois limites +QUARTILE = QUARTIL ## Retorna o quartil do conjunto de dados +RANK = ORDEM ## Retorna a posição de um número em uma lista de números +RSQ = RQUAD ## Retorna o quadrado do coeficiente de correlação do momento do produto de Pearson +SKEW = DISTORÇÃO ## Retorna a distorção de uma distribuição +SLOPE = INCLINAÇÃO ## Retorna a inclinação da linha de regressão linear +SMALL = MENOR ## Retorna o menor valor k-ésimo do conjunto de dados +STANDARDIZE = PADRONIZAR ## Retorna um valor normalizado +STDEV = DESVPAD ## Estima o desvio padrão com base em uma amostra +STDEVA = DESVPADA ## Estima o desvio padrão com base em uma amostra, inclusive números, texto e valores lógicos +STDEVP = DESVPADP ## Calcula o desvio padrão com base na população total +STDEVPA = DESVPADPA ## Calcula o desvio padrão com base na população total, inclusive números, texto e valores lógicos +STEYX = EPADYX ## Retorna o erro padrão do valor-y previsto para cada x da regressão +TDIST = DISTT ## Retorna a distribuição t de Student +TINV = INVT ## Retorna o inverso da distribuição t de Student +TREND = TENDÊNCIA ## Retorna valores ao longo de uma tendência linear +TRIMMEAN = MÉDIA.INTERNA ## Retorna a média do interior de um conjunto de dados +TTEST = TESTET ## Retorna a probabilidade associada ao teste t de Student +VAR = VAR ## Estima a variância com base em uma amostra +VARA = VARA ## Estima a variância com base em uma amostra, inclusive números, texto e valores lógicos +VARP = VARP ## Calcula a variância com base na população inteira +VARPA = VARPA ## Calcula a variância com base na população total, inclusive números, texto e valores lógicos +WEIBULL = WEIBULL ## Retorna a distribuição Weibull +ZTEST = TESTEZ ## Retorna o valor de probabilidade uni-caudal de um teste-z + + +## +## Text functions Funções de texto +## +ASC = ASC ## Altera letras do inglês ou katakana de largura total (bytes duplos) dentro de uma seqüência de caracteres para caracteres de meia largura (byte único) +BAHTTEXT = BAHTTEXT ## Converte um número em um texto, usando o formato de moeda ß (baht) +CHAR = CARACT ## Retorna o caractere especificado pelo número de código +CLEAN = TIRAR ## Remove todos os caracteres do texto que não podem ser impressos +CODE = CÓDIGO ## Retorna um código numérico para o primeiro caractere de uma seqüência de caracteres de texto +CONCATENATE = CONCATENAR ## Agrupa vários itens de texto em um único item de texto +DOLLAR = MOEDA ## Converte um número em texto, usando o formato de moeda $ (dólar) +EXACT = EXATO ## Verifica se dois valores de texto são idênticos +FIND = PROCURAR ## Procura um valor de texto dentro de outro (diferencia maiúsculas de minúsculas) +FINDB = PROCURARB ## Procura um valor de texto dentro de outro (diferencia maiúsculas de minúsculas) +FIXED = DEF.NÚM.DEC ## Formata um número como texto com um número fixo de decimais +JIS = JIS ## Altera letras do inglês ou katakana de meia largura (byte único) dentro de uma seqüência de caracteres para caracteres de largura total (bytes duplos) +LEFT = ESQUERDA ## Retorna os caracteres mais à esquerda de um valor de texto +LEFTB = ESQUERDAB ## Retorna os caracteres mais à esquerda de um valor de texto +LEN = NÚM.CARACT ## Retorna o número de caracteres em uma seqüência de texto +LENB = NÚM.CARACTB ## Retorna o número de caracteres em uma seqüência de texto +LOWER = MINÚSCULA ## Converte texto para minúsculas +MID = EXT.TEXTO ## Retorna um número específico de caracteres de uma seqüência de texto começando na posição especificada +MIDB = EXT.TEXTOB ## Retorna um número específico de caracteres de uma seqüência de texto começando na posição especificada +PHONETIC = FONÉTICA ## Extrai os caracteres fonéticos (furigana) de uma seqüência de caracteres de texto +PROPER = PRI.MAIÚSCULA ## Coloca a primeira letra de cada palavra em maiúscula em um valor de texto +REPLACE = MUDAR ## Muda os caracteres dentro do texto +REPLACEB = MUDARB ## Muda os caracteres dentro do texto +REPT = REPT ## Repete o texto um determinado número de vezes +RIGHT = DIREITA ## Retorna os caracteres mais à direita de um valor de texto +RIGHTB = DIREITAB ## Retorna os caracteres mais à direita de um valor de texto +SEARCH = LOCALIZAR ## Localiza um valor de texto dentro de outro (não diferencia maiúsculas de minúsculas) +SEARCHB = LOCALIZARB ## Localiza um valor de texto dentro de outro (não diferencia maiúsculas de minúsculas) +SUBSTITUTE = SUBSTITUIR ## Substitui um novo texto por um texto antigo em uma seqüência de texto +T = T ## Converte os argumentos em texto +TEXT = TEXTO ## Formata um número e o converte em texto +TRIM = ARRUMAR ## Remove espaços do texto +UPPER = MAIÚSCULA ## Converte o texto em maiúsculas +VALUE = VALOR ## Converte um argumento de texto em um número diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/pt/config b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/config new file mode 100644 index 0000000..595ee96 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = € + + +## +## Excel Error Codes (For future use) +## +NULL = #NULO! +DIV0 = #DIV/0! +VALUE = #VALOR! +REF = #REF! +NAME = #NOME? +NUM = #NÚM! +NA = #N/D diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/pt/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/functions new file mode 100644 index 0000000..05e8bca --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/pt/functions @@ -0,0 +1,408 @@ +## +## Add-in and Automation functions Funções de Suplemento e Automatização +## +GETPIVOTDATA = OBTERDADOSDIN ## Devolve dados armazenados num relatório de Tabela Dinâmica + + +## +## Cube functions Funções de cubo +## +CUBEKPIMEMBER = MEMBROKPICUBO ## Devolve o nome, propriedade e medição de um KPI (key performance indicator) e apresenta o nome e a propriedade na célula. Um KPI é uma medida quantificável, como, por exemplo, o lucro mensal bruto ou a rotatividade trimestral de pessoal, utilizada para monitorizar o desempenho de uma organização. +CUBEMEMBER = MEMBROCUBO ## Devolve um membro ou cadeia de identificação numa hierarquia de cubo. Utilizada para validar a existência do membro ou cadeia de identificação no cubo. +CUBEMEMBERPROPERTY = PROPRIEDADEMEMBROCUBO ## Devolve o valor de uma propriedade de membro no cubo. Utilizada para validar a existência de um nome de membro no cubo e para devolver a propriedade especificada para esse membro. +CUBERANKEDMEMBER = MEMBROCLASSIFICADOCUBO ## Devolve o enésimo ou a classificação mais alta num conjunto. Utilizada para devolver um ou mais elementos num conjunto, tal como o melhor vendedor ou os 10 melhores alunos. +CUBESET = CONJUNTOCUBO ## Define um conjunto calculado de membros ou cadeias de identificação enviando uma expressão de conjunto para o cubo no servidor, que cria o conjunto e, em seguida, devolve o conjunto ao Microsoft Office Excel. +CUBESETCOUNT = CONTARCONJUNTOCUBO ## Devolve o número de itens num conjunto. +CUBEVALUE = VALORCUBO ## Devolve um valor agregado do cubo. + + +## +## Database functions Funções de base de dados +## +DAVERAGE = BDMÉDIA ## Devolve a média das entradas da base de dados seleccionadas +DCOUNT = BDCONTAR ## Conta as células que contêm números numa base de dados +DCOUNTA = BDCONTAR.VAL ## Conta as células que não estejam em branco numa base de dados +DGET = BDOBTER ## Extrai de uma base de dados um único registo que corresponde aos critérios especificados +DMAX = BDMÁX ## Devolve o valor máximo das entradas da base de dados seleccionadas +DMIN = BDMÍN ## Devolve o valor mínimo das entradas da base de dados seleccionadas +DPRODUCT = BDMULTIPL ## Multiplica os valores de um determinado campo de registos que correspondem aos critérios numa base de dados +DSTDEV = BDDESVPAD ## Calcula o desvio-padrão com base numa amostra de entradas da base de dados seleccionadas +DSTDEVP = BDDESVPADP ## Calcula o desvio-padrão com base na população total das entradas da base de dados seleccionadas +DSUM = BDSOMA ## Adiciona os números na coluna de campo dos registos de base de dados que correspondem aos critérios +DVAR = BDVAR ## Calcula a variância com base numa amostra das entradas de base de dados seleccionadas +DVARP = BDVARP ## Calcula a variância com base na população total das entradas de base de dados seleccionadas + + +## +## Date and time functions Funções de data e hora +## +DATE = DATA ## Devolve o número de série de uma determinada data +DATEVALUE = DATA.VALOR ## Converte uma data em forma de texto num número de série +DAY = DIA ## Converte um número de série num dia do mês +DAYS360 = DIAS360 ## Calcula o número de dias entre duas datas com base num ano com 360 dias +EDATE = DATAM ## Devolve um número de série de data que corresponde ao número de meses indicado antes ou depois da data de início +EOMONTH = FIMMÊS ## Devolve o número de série do último dia do mês antes ou depois de um número de meses especificado +HOUR = HORA ## Converte um número de série numa hora +MINUTE = MINUTO ## Converte um número de série num minuto +MONTH = MÊS ## Converte um número de série num mês +NETWORKDAYS = DIATRABALHOTOTAL ## Devolve o número total de dias úteis entre duas datas +NOW = AGORA ## Devolve o número de série da data e hora actuais +SECOND = SEGUNDO ## Converte um número de série num segundo +TIME = TEMPO ## Devolve o número de série de um determinado tempo +TIMEVALUE = VALOR.TEMPO ## Converte um tempo em forma de texto num número de série +TODAY = HOJE ## Devolve o número de série da data actual +WEEKDAY = DIA.SEMANA ## Converte um número de série num dia da semana +WEEKNUM = NÚMSEMANA ## Converte um número de série num número que representa o número da semana num determinado ano +WORKDAY = DIA.TRABALHO ## Devolve o número de série da data antes ou depois de um número de dias úteis especificado +YEAR = ANO ## Converte um número de série num ano +YEARFRAC = FRACÇÃOANO ## Devolve a fracção de ano que representa o número de dias inteiros entre a data_de_início e a data_de_fim + + +## +## Engineering functions Funções de engenharia +## +BESSELI = BESSELI ## Devolve a função de Bessel modificada In(x) +BESSELJ = BESSELJ ## Devolve a função de Bessel Jn(x) +BESSELK = BESSELK ## Devolve a função de Bessel modificada Kn(x) +BESSELY = BESSELY ## Devolve a função de Bessel Yn(x) +BIN2DEC = BINADEC ## Converte um número binário em decimal +BIN2HEX = BINAHEX ## Converte um número binário em hexadecimal +BIN2OCT = BINAOCT ## Converte um número binário em octal +COMPLEX = COMPLEXO ## Converte coeficientes reais e imaginários num número complexo +CONVERT = CONVERTER ## Converte um número de um sistema de medida noutro +DEC2BIN = DECABIN ## Converte um número decimal em binário +DEC2HEX = DECAHEX ## Converte um número decimal em hexadecimal +DEC2OCT = DECAOCT ## Converte um número decimal em octal +DELTA = DELTA ## Testa se dois valores são iguais +ERF = FUNCERRO ## Devolve a função de erro +ERFC = FUNCERROCOMPL ## Devolve a função de erro complementar +GESTEP = DEGRAU ## Testa se um número é maior do que um valor limite +HEX2BIN = HEXABIN ## Converte um número hexadecimal em binário +HEX2DEC = HEXADEC ## Converte um número hexadecimal em decimal +HEX2OCT = HEXAOCT ## Converte um número hexadecimal em octal +IMABS = IMABS ## Devolve o valor absoluto (módulo) de um número complexo +IMAGINARY = IMAGINÁRIO ## Devolve o coeficiente imaginário de um número complexo +IMARGUMENT = IMARG ## Devolve o argumento Teta, um ângulo expresso em radianos +IMCONJUGATE = IMCONJ ## Devolve o conjugado complexo de um número complexo +IMCOS = IMCOS ## Devolve o co-seno de um número complexo +IMDIV = IMDIV ## Devolve o quociente de dois números complexos +IMEXP = IMEXP ## Devolve o exponencial de um número complexo +IMLN = IMLN ## Devolve o logaritmo natural de um número complexo +IMLOG10 = IMLOG10 ## Devolve o logaritmo de base 10 de um número complexo +IMLOG2 = IMLOG2 ## Devolve o logaritmo de base 2 de um número complexo +IMPOWER = IMPOT ## Devolve um número complexo elevado a uma potência inteira +IMPRODUCT = IMPROD ## Devolve o produto de números complexos +IMREAL = IMREAL ## Devolve o coeficiente real de um número complexo +IMSIN = IMSENO ## Devolve o seno de um número complexo +IMSQRT = IMRAIZ ## Devolve a raiz quadrada de um número complexo +IMSUB = IMSUBTR ## Devolve a diferença entre dois números complexos +IMSUM = IMSOMA ## Devolve a soma de números complexos +OCT2BIN = OCTABIN ## Converte um número octal em binário +OCT2DEC = OCTADEC ## Converte um número octal em decimal +OCT2HEX = OCTAHEX ## Converte um número octal em hexadecimal + + +## +## Financial functions Funções financeiras +## +ACCRINT = JUROSACUM ## Devolve os juros acumulados de um título que paga juros periódicos +ACCRINTM = JUROSACUMV ## Devolve os juros acumulados de um título que paga juros no vencimento +AMORDEGRC = AMORDEGRC ## Devolve a depreciação correspondente a cada período contabilístico utilizando um coeficiente de depreciação +AMORLINC = AMORLINC ## Devolve a depreciação correspondente a cada período contabilístico +COUPDAYBS = CUPDIASINLIQ ## Devolve o número de dias entre o início do período do cupão e a data de regularização +COUPDAYS = CUPDIAS ## Devolve o número de dias no período do cupão que contém a data de regularização +COUPDAYSNC = CUPDIASPRÓX ## Devolve o número de dias entre a data de regularização e a data do cupão seguinte +COUPNCD = CUPDATAPRÓX ## Devolve a data do cupão seguinte após a data de regularização +COUPNUM = CUPNÚM ## Devolve o número de cupões a serem pagos entre a data de regularização e a data de vencimento +COUPPCD = CUPDATAANT ## Devolve a data do cupão anterior antes da data de regularização +CUMIPMT = PGTOJURACUM ## Devolve os juros cumulativos pagos entre dois períodos +CUMPRINC = PGTOCAPACUM ## Devolve o capital cumulativo pago a título de empréstimo entre dois períodos +DB = BD ## Devolve a depreciação de um activo relativo a um período especificado utilizando o método das quotas degressivas fixas +DDB = BDD ## Devolve a depreciação de um activo relativo a um período especificado utilizando o método das quotas degressivas duplas ou qualquer outro método especificado +DISC = DESC ## Devolve a taxa de desconto de um título +DOLLARDE = MOEDADEC ## Converte um preço em unidade monetária, expresso como uma fracção, num preço em unidade monetária, expresso como um número decimal +DOLLARFR = MOEDAFRA ## Converte um preço em unidade monetária, expresso como um número decimal, num preço em unidade monetária, expresso como uma fracção +DURATION = DURAÇÃO ## Devolve a duração anual de um título com pagamentos de juros periódicos +EFFECT = EFECTIVA ## Devolve a taxa de juros anual efectiva +FV = VF ## Devolve o valor futuro de um investimento +FVSCHEDULE = VFPLANO ## Devolve o valor futuro de um capital inicial após a aplicação de uma série de taxas de juro compostas +INTRATE = TAXAJUROS ## Devolve a taxa de juros de um título investido na totalidade +IPMT = IPGTO ## Devolve o pagamento dos juros de um investimento durante um determinado período +IRR = TIR ## Devolve a taxa de rentabilidade interna para uma série de fluxos monetários +ISPMT = É.PGTO ## Calcula os juros pagos durante um período específico de um investimento +MDURATION = MDURAÇÃO ## Devolve a duração modificada de Macauley de um título com um valor de paridade equivalente a € 100 +MIRR = MTIR ## Devolve a taxa interna de rentabilidade em que os fluxos monetários positivos e negativos são financiados com taxas diferentes +NOMINAL = NOMINAL ## Devolve a taxa de juros nominal anual +NPER = NPER ## Devolve o número de períodos de um investimento +NPV = VAL ## Devolve o valor actual líquido de um investimento com base numa série de fluxos monetários periódicos e numa taxa de desconto +ODDFPRICE = PREÇOPRIMINC ## Devolve o preço por € 100 do valor nominal de um título com um período inicial incompleto +ODDFYIELD = LUCROPRIMINC ## Devolve o lucro de um título com um período inicial incompleto +ODDLPRICE = PREÇOÚLTINC ## Devolve o preço por € 100 do valor nominal de um título com um período final incompleto +ODDLYIELD = LUCROÚLTINC ## Devolve o lucro de um título com um período final incompleto +PMT = PGTO ## Devolve o pagamento periódico de uma anuidade +PPMT = PPGTO ## Devolve o pagamento sobre o capital de um investimento num determinado período +PRICE = PREÇO ## Devolve o preço por € 100 do valor nominal de um título que paga juros periódicos +PRICEDISC = PREÇODESC ## Devolve o preço por € 100 do valor nominal de um título descontado +PRICEMAT = PREÇOVENC ## Devolve o preço por € 100 do valor nominal de um título que paga juros no vencimento +PV = VA ## Devolve o valor actual de um investimento +RATE = TAXA ## Devolve a taxa de juros por período de uma anuidade +RECEIVED = RECEBER ## Devolve o montante recebido no vencimento de um título investido na totalidade +SLN = AMORT ## Devolve uma depreciação linear de um activo durante um período +SYD = AMORTD ## Devolve a depreciação por algarismos da soma dos anos de um activo durante um período especificado +TBILLEQ = OTN ## Devolve o lucro de um título equivalente a uma Obrigação do Tesouro +TBILLPRICE = OTNVALOR ## Devolve o preço por € 100 de valor nominal de uma Obrigação do Tesouro +TBILLYIELD = OTNLUCRO ## Devolve o lucro de uma Obrigação do Tesouro +VDB = BDV ## Devolve a depreciação de um activo relativo a um período específico ou parcial utilizando um método de quotas degressivas +XIRR = XTIR ## Devolve a taxa interna de rentabilidade de um plano de fluxos monetários que não seja necessariamente periódica +XNPV = XVAL ## Devolve o valor actual líquido de um plano de fluxos monetários que não seja necessariamente periódico +YIELD = LUCRO ## Devolve o lucro de um título que paga juros periódicos +YIELDDISC = LUCRODESC ## Devolve o lucro anual de um título emitido abaixo do valor nominal, por exemplo, uma Obrigação do Tesouro +YIELDMAT = LUCROVENC ## Devolve o lucro anual de um título que paga juros na data de vencimento + + +## +## Information functions Funções de informação +## +CELL = CÉL ## Devolve informações sobre a formatação, localização ou conteúdo de uma célula +ERROR.TYPE = TIPO.ERRO ## Devolve um número correspondente a um tipo de erro +INFO = INFORMAÇÃO ## Devolve informações sobre o ambiente de funcionamento actual +ISBLANK = É.CÉL.VAZIA ## Devolve VERDADEIRO se o valor estiver em branco +ISERR = É.ERROS ## Devolve VERDADEIRO se o valor for um valor de erro diferente de #N/D +ISERROR = É.ERRO ## Devolve VERDADEIRO se o valor for um valor de erro +ISEVEN = ÉPAR ## Devolve VERDADEIRO se o número for par +ISLOGICAL = É.LÓGICO ## Devolve VERDADEIRO se o valor for lógico +ISNA = É.NÃO.DISP ## Devolve VERDADEIRO se o valor for o valor de erro #N/D +ISNONTEXT = É.NÃO.TEXTO ## Devolve VERDADEIRO se o valor não for texto +ISNUMBER = É.NÚM ## Devolve VERDADEIRO se o valor for um número +ISODD = ÉÍMPAR ## Devolve VERDADEIRO se o número for ímpar +ISREF = É.REF ## Devolve VERDADEIRO se o valor for uma referência +ISTEXT = É.TEXTO ## Devolve VERDADEIRO se o valor for texto +N = N ## Devolve um valor convertido num número +NA = NÃO.DISP ## Devolve o valor de erro #N/D +TYPE = TIPO ## Devolve um número que indica o tipo de dados de um valor + + +## +## Logical functions Funções lógicas +## +AND = E ## Devolve VERDADEIRO se todos os respectivos argumentos corresponderem a VERDADEIRO +FALSE = FALSO ## Devolve o valor lógico FALSO +IF = SE ## Especifica um teste lógico a ser executado +IFERROR = SE.ERRO ## Devolve um valor definido pelo utilizador se ocorrer um erro na fórmula, e devolve o resultado da fórmula se não ocorrer nenhum erro +NOT = NÃO ## Inverte a lógica do respectivo argumento +OR = OU ## Devolve VERDADEIRO se qualquer argumento for VERDADEIRO +TRUE = VERDADEIRO ## Devolve o valor lógico VERDADEIRO + + +## +## Lookup and reference functions Funções de pesquisa e referência +## +ADDRESS = ENDEREÇO ## Devolve uma referência a uma única célula numa folha de cálculo como texto +AREAS = ÁREAS ## Devolve o número de áreas numa referência +CHOOSE = SELECCIONAR ## Selecciona um valor a partir de uma lista de valores +COLUMN = COL ## Devolve o número da coluna de uma referência +COLUMNS = COLS ## Devolve o número de colunas numa referência +HLOOKUP = PROCH ## Procura na linha superior de uma matriz e devolve o valor da célula indicada +HYPERLINK = HIPERLIGAÇÃO ## Cria um atalho ou hiperligação que abre um documento armazenado num servidor de rede, numa intranet ou na Internet +INDEX = ÍNDICE ## Utiliza um índice para escolher um valor de uma referência ou de uma matriz +INDIRECT = INDIRECTO ## Devolve uma referência indicada por um valor de texto +LOOKUP = PROC ## Procura valores num vector ou numa matriz +MATCH = CORRESP ## Procura valores numa referência ou numa matriz +OFFSET = DESLOCAMENTO ## Devolve o deslocamento de referência de uma determinada referência +ROW = LIN ## Devolve o número da linha de uma referência +ROWS = LINS ## Devolve o número de linhas numa referência +RTD = RTD ## Obtém dados em tempo real a partir de um programa que suporte automatização COM (automatização: modo de trabalhar com objectos de uma aplicação a partir de outra aplicação ou ferramenta de desenvolvimento. Anteriormente conhecida como automatização OLE, a automatização é uma norma da indústria de software e uma funcionalidade COM (Component Object Model).) +TRANSPOSE = TRANSPOR ## Devolve a transposição de uma matriz +VLOOKUP = PROCV ## Procura na primeira coluna de uma matriz e percorre a linha para devolver o valor de uma célula + + +## +## Math and trigonometry functions Funções matemáticas e trigonométricas +## +ABS = ABS ## Devolve o valor absoluto de um número +ACOS = ACOS ## Devolve o arco de co-seno de um número +ACOSH = ACOSH ## Devolve o co-seno hiperbólico inverso de um número +ASIN = ASEN ## Devolve o arco de seno de um número +ASINH = ASENH ## Devolve o seno hiperbólico inverso de um número +ATAN = ATAN ## Devolve o arco de tangente de um número +ATAN2 = ATAN2 ## Devolve o arco de tangente das coordenadas x e y +ATANH = ATANH ## Devolve a tangente hiperbólica inversa de um número +CEILING = ARRED.EXCESSO ## Arredonda um número para o número inteiro mais próximo ou para o múltiplo de significância mais próximo +COMBIN = COMBIN ## Devolve o número de combinações de um determinado número de objectos +COS = COS ## Devolve o co-seno de um número +COSH = COSH ## Devolve o co-seno hiperbólico de um número +DEGREES = GRAUS ## Converte radianos em graus +EVEN = PAR ## Arredonda um número por excesso para o número inteiro mais próximo +EXP = EXP ## Devolve e elevado à potência de um determinado número +FACT = FACTORIAL ## Devolve o factorial de um número +FACTDOUBLE = FACTDUPLO ## Devolve o factorial duplo de um número +FLOOR = ARRED.DEFEITO ## Arredonda um número por defeito até zero +GCD = MDC ## Devolve o maior divisor comum +INT = INT ## Arredonda um número por defeito para o número inteiro mais próximo +LCM = MMC ## Devolve o mínimo múltiplo comum +LN = LN ## Devolve o logaritmo natural de um número +LOG = LOG ## Devolve o logaritmo de um número com uma base especificada +LOG10 = LOG10 ## Devolve o logaritmo de base 10 de um número +MDETERM = MATRIZ.DETERM ## Devolve o determinante matricial de uma matriz +MINVERSE = MATRIZ.INVERSA ## Devolve o inverso matricial de uma matriz +MMULT = MATRIZ.MULT ## Devolve o produto matricial de duas matrizes +MOD = RESTO ## Devolve o resto da divisão +MROUND = MARRED ## Devolve um número arredondado para o múltiplo pretendido +MULTINOMIAL = POLINOMIAL ## Devolve o polinomial de um conjunto de números +ODD = ÍMPAR ## Arredonda por excesso um número para o número inteiro ímpar mais próximo +PI = PI ## Devolve o valor de pi +POWER = POTÊNCIA ## Devolve o resultado de um número elevado a uma potência +PRODUCT = PRODUTO ## Multiplica os respectivos argumentos +QUOTIENT = QUOCIENTE ## Devolve a parte inteira de uma divisão +RADIANS = RADIANOS ## Converte graus em radianos +RAND = ALEATÓRIO ## Devolve um número aleatório entre 0 e 1 +RANDBETWEEN = ALEATÓRIOENTRE ## Devolve um número aleatório entre os números especificados +ROMAN = ROMANO ## Converte um número árabe em romano, como texto +ROUND = ARRED ## Arredonda um número para um número de dígitos especificado +ROUNDDOWN = ARRED.PARA.BAIXO ## Arredonda um número por defeito até zero +ROUNDUP = ARRED.PARA.CIMA ## Arredonda um número por excesso, afastando-o de zero +SERIESSUM = SOMASÉRIE ## Devolve a soma de uma série de potências baseada na fórmula +SIGN = SINAL ## Devolve o sinal de um número +SIN = SEN ## Devolve o seno de um determinado ângulo +SINH = SENH ## Devolve o seno hiperbólico de um número +SQRT = RAIZQ ## Devolve uma raiz quadrada positiva +SQRTPI = RAIZPI ## Devolve a raiz quadrada de (núm * pi) +SUBTOTAL = SUBTOTAL ## Devolve um subtotal numa lista ou base de dados +SUM = SOMA ## Adiciona os respectivos argumentos +SUMIF = SOMA.SE ## Adiciona as células especificadas por um determinado critério +SUMIFS = SOMA.SE.S ## Adiciona as células num intervalo que cumpre vários critérios +SUMPRODUCT = SOMARPRODUTO ## Devolve a soma dos produtos de componentes de matrizes correspondentes +SUMSQ = SOMARQUAD ## Devolve a soma dos quadrados dos argumentos +SUMX2MY2 = SOMAX2DY2 ## Devolve a soma da diferença dos quadrados dos valores correspondentes em duas matrizes +SUMX2PY2 = SOMAX2SY2 ## Devolve a soma da soma dos quadrados dos valores correspondentes em duas matrizes +SUMXMY2 = SOMAXMY2 ## Devolve a soma dos quadrados da diferença dos valores correspondentes em duas matrizes +TAN = TAN ## Devolve a tangente de um número +TANH = TANH ## Devolve a tangente hiperbólica de um número +TRUNC = TRUNCAR ## Trunca um número para um número inteiro + + +## +## Statistical functions Funções estatísticas +## +AVEDEV = DESV.MÉDIO ## Devolve a média aritmética dos desvios absolutos à média dos pontos de dados +AVERAGE = MÉDIA ## Devolve a média dos respectivos argumentos +AVERAGEA = MÉDIAA ## Devolve uma média dos respectivos argumentos, incluindo números, texto e valores lógicos +AVERAGEIF = MÉDIA.SE ## Devolve a média aritmética de todas as células num intervalo que cumprem determinado critério +AVERAGEIFS = MÉDIA.SE.S ## Devolve a média aritmética de todas as células que cumprem múltiplos critérios +BETADIST = DISTBETA ## Devolve a função de distribuição cumulativa beta +BETAINV = BETA.ACUM.INV ## Devolve o inverso da função de distribuição cumulativa relativamente a uma distribuição beta específica +BINOMDIST = DISTRBINOM ## Devolve a probabilidade de distribuição binomial de termo individual +CHIDIST = DIST.CHI ## Devolve a probabilidade unicaudal da distribuição qui-quadrada +CHIINV = INV.CHI ## Devolve o inverso da probabilidade unicaudal da distribuição qui-quadrada +CHITEST = TESTE.CHI ## Devolve o teste para independência +CONFIDENCE = INT.CONFIANÇA ## Devolve o intervalo de confiança correspondente a uma média de população +CORREL = CORREL ## Devolve o coeficiente de correlação entre dois conjuntos de dados +COUNT = CONTAR ## Conta os números que existem na lista de argumentos +COUNTA = CONTAR.VAL ## Conta os valores que existem na lista de argumentos +COUNTBLANK = CONTAR.VAZIO ## Conta o número de células em branco num intervalo +COUNTIF = CONTAR.SE ## Calcula o número de células num intervalo que corresponde aos critérios determinados +COUNTIFS = CONTAR.SE.S ## Conta o número de células num intervalo que cumprem múltiplos critérios +COVAR = COVAR ## Devolve a covariância, que é a média dos produtos de desvios de pares +CRITBINOM = CRIT.BINOM ## Devolve o menor valor em que a distribuição binomial cumulativa é inferior ou igual a um valor de critério +DEVSQ = DESVQ ## Devolve a soma dos quadrados dos desvios +EXPONDIST = DISTEXPON ## Devolve a distribuição exponencial +FDIST = DISTF ## Devolve a distribuição da probabilidade F +FINV = INVF ## Devolve o inverso da distribuição da probabilidade F +FISHER = FISHER ## Devolve a transformação Fisher +FISHERINV = FISHERINV ## Devolve o inverso da transformação Fisher +FORECAST = PREVISÃO ## Devolve um valor ao longo de uma tendência linear +FREQUENCY = FREQUÊNCIA ## Devolve uma distribuição de frequência como uma matriz vertical +FTEST = TESTEF ## Devolve o resultado de um teste F +GAMMADIST = DISTGAMA ## Devolve a distribuição gama +GAMMAINV = INVGAMA ## Devolve o inverso da distribuição gama cumulativa +GAMMALN = LNGAMA ## Devolve o logaritmo natural da função gama, Γ(x) +GEOMEAN = MÉDIA.GEOMÉTRICA ## Devolve a média geométrica +GROWTH = CRESCIMENTO ## Devolve valores ao longo de uma tendência exponencial +HARMEAN = MÉDIA.HARMÓNICA ## Devolve a média harmónica +HYPGEOMDIST = DIST.HIPERGEOM ## Devolve a distribuição hipergeométrica +INTERCEPT = INTERCEPTAR ## Devolve a intercepção da linha de regressão linear +KURT = CURT ## Devolve a curtose de um conjunto de dados +LARGE = MAIOR ## Devolve o maior valor k-ésimo de um conjunto de dados +LINEST = PROJ.LIN ## Devolve os parâmetros de uma tendência linear +LOGEST = PROJ.LOG ## Devolve os parâmetros de uma tendência exponencial +LOGINV = INVLOG ## Devolve o inverso da distribuição normal logarítmica +LOGNORMDIST = DIST.NORMALLOG ## Devolve a distribuição normal logarítmica cumulativa +MAX = MÁXIMO ## Devolve o valor máximo numa lista de argumentos +MAXA = MÁXIMOA ## Devolve o valor máximo numa lista de argumentos, incluindo números, texto e valores lógicos +MEDIAN = MED ## Devolve a mediana dos números indicados +MIN = MÍNIMO ## Devolve o valor mínimo numa lista de argumentos +MINA = MÍNIMOA ## Devolve o valor mínimo numa lista de argumentos, incluindo números, texto e valores lógicos +MODE = MODA ## Devolve o valor mais comum num conjunto de dados +NEGBINOMDIST = DIST.BIN.NEG ## Devolve a distribuição binominal negativa +NORMDIST = DIST.NORM ## Devolve a distribuição cumulativa normal +NORMINV = INV.NORM ## Devolve o inverso da distribuição cumulativa normal +NORMSDIST = DIST.NORMP ## Devolve a distribuição cumulativa normal padrão +NORMSINV = INV.NORMP ## Devolve o inverso da distribuição cumulativa normal padrão +PEARSON = PEARSON ## Devolve o coeficiente de correlação momento/produto de Pearson +PERCENTILE = PERCENTIL ## Devolve o k-ésimo percentil de valores num intervalo +PERCENTRANK = ORDEM.PERCENTUAL ## Devolve a ordem percentual de um valor num conjunto de dados +PERMUT = PERMUTAR ## Devolve o número de permutações de um determinado número de objectos +POISSON = POISSON ## Devolve a distribuição de Poisson +PROB = PROB ## Devolve a probabilidade dos valores num intervalo se encontrarem entre dois limites +QUARTILE = QUARTIL ## Devolve o quartil de um conjunto de dados +RANK = ORDEM ## Devolve a ordem de um número numa lista numérica +RSQ = RQUAD ## Devolve o quadrado do coeficiente de correlação momento/produto de Pearson +SKEW = DISTORÇÃO ## Devolve a distorção de uma distribuição +SLOPE = DECLIVE ## Devolve o declive da linha de regressão linear +SMALL = MENOR ## Devolve o menor valor de k-ésimo de um conjunto de dados +STANDARDIZE = NORMALIZAR ## Devolve um valor normalizado +STDEV = DESVPAD ## Calcula o desvio-padrão com base numa amostra +STDEVA = DESVPADA ## Calcula o desvio-padrão com base numa amostra, incluindo números, texto e valores lógicos +STDEVP = DESVPADP ## Calcula o desvio-padrão com base na população total +STDEVPA = DESVPADPA ## Calcula o desvio-padrão com base na população total, incluindo números, texto e valores lógicos +STEYX = EPADYX ## Devolve o erro-padrão do valor de y previsto para cada x na regressão +TDIST = DISTT ## Devolve a distribuição t de Student +TINV = INVT ## Devolve o inverso da distribuição t de Student +TREND = TENDÊNCIA ## Devolve valores ao longo de uma tendência linear +TRIMMEAN = MÉDIA.INTERNA ## Devolve a média do interior de um conjunto de dados +TTEST = TESTET ## Devolve a probabilidade associada ao teste t de Student +VAR = VAR ## Calcula a variância com base numa amostra +VARA = VARA ## Calcula a variância com base numa amostra, incluindo números, texto e valores lógicos +VARP = VARP ## Calcula a variância com base na população total +VARPA = VARPA ## Calcula a variância com base na população total, incluindo números, texto e valores lógicos +WEIBULL = WEIBULL ## Devolve a distribuição Weibull +ZTEST = TESTEZ ## Devolve o valor de probabilidade unicaudal de um teste-z + + +## +## Text functions Funções de texto +## +ASC = ASC ## Altera letras ou katakana de largura total (byte duplo) numa cadeia de caracteres para caracteres de largura média (byte único) +BAHTTEXT = TEXTO.BAHT ## Converte um número em texto, utilizando o formato monetário ß (baht) +CHAR = CARÁCT ## Devolve o carácter especificado pelo número de código +CLEAN = LIMPAR ## Remove do texto todos os caracteres não imprimíveis +CODE = CÓDIGO ## Devolve um código numérico correspondente ao primeiro carácter numa cadeia de texto +CONCATENATE = CONCATENAR ## Agrupa vários itens de texto num único item de texto +DOLLAR = MOEDA ## Converte um número em texto, utilizando o formato monetário € (Euro) +EXACT = EXACTO ## Verifica se dois valores de texto são idênticos +FIND = LOCALIZAR ## Localiza um valor de texto dentro de outro (sensível às maiúsculas e minúsculas) +FINDB = LOCALIZARB ## Localiza um valor de texto dentro de outro (sensível às maiúsculas e minúsculas) +FIXED = FIXA ## Formata um número como texto com um número fixo de decimais +JIS = JIS ## Altera letras ou katakana de largura média (byte único) numa cadeia de caracteres para caracteres de largura total (byte duplo) +LEFT = ESQUERDA ## Devolve os caracteres mais à esquerda de um valor de texto +LEFTB = ESQUERDAB ## Devolve os caracteres mais à esquerda de um valor de texto +LEN = NÚM.CARACT ## Devolve o número de caracteres de uma cadeia de texto +LENB = NÚM.CARACTB ## Devolve o número de caracteres de uma cadeia de texto +LOWER = MINÚSCULAS ## Converte o texto em minúsculas +MID = SEG.TEXTO ## Devolve um número específico de caracteres de uma cadeia de texto, a partir da posição especificada +MIDB = SEG.TEXTOB ## Devolve um número específico de caracteres de uma cadeia de texto, a partir da posição especificada +PHONETIC = FONÉTICA ## Retira os caracteres fonéticos (furigana) de uma cadeia de texto +PROPER = INICIAL.MAIÚSCULA ## Coloca em maiúsculas a primeira letra de cada palavra de um valor de texto +REPLACE = SUBSTITUIR ## Substitui caracteres no texto +REPLACEB = SUBSTITUIRB ## Substitui caracteres no texto +REPT = REPETIR ## Repete texto um determinado número de vezes +RIGHT = DIREITA ## Devolve os caracteres mais à direita de um valor de texto +RIGHTB = DIREITAB ## Devolve os caracteres mais à direita de um valor de texto +SEARCH = PROCURAR ## Localiza um valor de texto dentro de outro (não sensível a maiúsculas e minúsculas) +SEARCHB = PROCURARB ## Localiza um valor de texto dentro de outro (não sensível a maiúsculas e minúsculas) +SUBSTITUTE = SUBST ## Substitui texto novo por texto antigo numa cadeia de texto +T = T ## Converte os respectivos argumentos em texto +TEXT = TEXTO ## Formata um número e converte-o em texto +TRIM = COMPACTAR ## Remove espaços do texto +UPPER = MAIÚSCULAS ## Converte texto em maiúsculas +VALUE = VALOR ## Converte um argumento de texto num número diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/ru/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/ru/_notes/dwsync.xml new file mode 100644 index 0000000..4386795 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/ru/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851499999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851499999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851499999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851499999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559962487368" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559963133303" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752265132229" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752265621118" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461253149749" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461258123874" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752265132229" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752265621118" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/ru/config b/site/config/PHPExcel/Classes/PHPExcel/locale/ru/config new file mode 100644 index 0000000..aa7e685 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/ru/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = р + + +## +## Excel Error Codes (For future use) +## +NULL = #ПУСТО! +DIV0 = #ДЕЛ/0! +VALUE = #ЗНАЧ! +REF = #ССЫЛ! +NAME = #ИМЯ? +NUM = #ЧИСЛО! +NA = #Н/Д diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/ru/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/ru/functions new file mode 100644 index 0000000..f37afc2 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/ru/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from information provided by web-junior (http://www.web-junior.net/) +## +## + + +## +## Add-in and Automation functions Функции надстроек и автоматизации +## +GETPIVOTDATA = ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ ## Возвращает данные, хранящиеся в отчете сводной таблицы. + + +## +## Cube functions Функции Куб +## +CUBEKPIMEMBER = КУБЭЛЕМЕНТКИП ## Возвращает свойство ключевого индикатора производительности «(КИП)» и отображает имя «КИП» в ячейке. «КИП» представляет собой количественную величину, такую как ежемесячная валовая прибыль или ежеквартальная текучесть кадров, используемой для контроля эффективности работы организации. +CUBEMEMBER = КУБЭЛЕМЕНТ ## Возвращает элемент или кортеж из куба. Используется для проверки существования элемента или кортежа в кубе. +CUBEMEMBERPROPERTY = КУБСВОЙСТВОЭЛЕМЕНТА ## Возвращает значение свойства элемента из куба. Используется для проверки существования имени элемента в кубе и возвращает указанное свойство для этого элемента. +CUBERANKEDMEMBER = КУБПОРЭЛЕМЕНТ ## Возвращает n-ый или ранжированный элемент в множество. Используется для возвращения одного или нескольких элементов в множество, например, лучшего продавца или 10 лучших студентов. +CUBESET = КУБМНОЖ ## Определяет вычислительное множество элементов или кортежей, отправляя на сервер выражение, которое создает множество, а затем возвращает его в Microsoft Office Excel. +CUBESETCOUNT = КУБЧИСЛОЭЛМНОЖ ## Возвращает число элементов множества. +CUBEVALUE = КУБЗНАЧЕНИЕ ## Возвращает обобщенное значение из куба. + + +## +## Database functions Функции для работы с базами данных +## +DAVERAGE = ДСРЗНАЧ ## Возвращает среднее значение выбранных записей базы данных. +DCOUNT = БСЧЁТ ## Подсчитывает количество числовых ячеек в базе данных. +DCOUNTA = БСЧЁТА ## Подсчитывает количество непустых ячеек в базе данных. +DGET = БИЗВЛЕЧЬ ## Извлекает из базы данных одну запись, удовлетворяющую заданному условию. +DMAX = ДМАКС ## Возвращает максимальное значение среди выделенных записей базы данных. +DMIN = ДМИН ## Возвращает минимальное значение среди выделенных записей базы данных. +DPRODUCT = БДПРОИЗВЕД ## Перемножает значения определенного поля в записях базы данных, удовлетворяющих условию. +DSTDEV = ДСТАНДОТКЛ ## Оценивает стандартное отклонение по выборке для выделенных записей базы данных. +DSTDEVP = ДСТАНДОТКЛП ## Вычисляет стандартное отклонение по генеральной совокупности для выделенных записей базы данных +DSUM = БДСУММ ## Суммирует числа в поле для записей базы данных, удовлетворяющих условию. +DVAR = БДДИСП ## Оценивает дисперсию по выборке из выделенных записей базы данных +DVARP = БДДИСПП ## Вычисляет дисперсию по генеральной совокупности для выделенных записей базы данных + + +## +## Date and time functions Функции даты и времени +## +DATE = ДАТА ## Возвращает заданную дату в числовом формате. +DATEVALUE = ДАТАЗНАЧ ## Преобразует дату из текстового формата в числовой формат. +DAY = ДЕНЬ ## Преобразует дату в числовом формате в день месяца. +DAYS360 = ДНЕЙ360 ## Вычисляет количество дней между двумя датами на основе 360-дневного года. +EDATE = ДАТАМЕС ## Возвращает дату в числовом формате, отстоящую на заданное число месяцев вперед или назад от начальной даты. +EOMONTH = КОНМЕСЯЦА ## Возвращает дату в числовом формате для последнего дня месяца, отстоящего вперед или назад на заданное число месяцев. +HOUR = ЧАС ## Преобразует дату в числовом формате в часы. +MINUTE = МИНУТЫ ## Преобразует дату в числовом формате в минуты. +MONTH = МЕСЯЦ ## Преобразует дату в числовом формате в месяцы. +NETWORKDAYS = ЧИСТРАБДНИ ## Возвращает количество рабочих дней между двумя датами. +NOW = ТДАТА ## Возвращает текущую дату и время в числовом формате. +SECOND = СЕКУНДЫ ## Преобразует дату в числовом формате в секунды. +TIME = ВРЕМЯ ## Возвращает заданное время в числовом формате. +TIMEVALUE = ВРЕМЗНАЧ ## Преобразует время из текстового формата в числовой формат. +TODAY = СЕГОДНЯ ## Возвращает текущую дату в числовом формате. +WEEKDAY = ДЕНЬНЕД ## Преобразует дату в числовом формате в день недели. +WEEKNUM = НОМНЕДЕЛИ ## Преобразует числовое представление в число, которое указывает, на какую неделю года приходится указанная дата. +WORKDAY = РАБДЕНЬ ## Возвращает дату в числовом формате, отстоящую вперед или назад на заданное количество рабочих дней. +YEAR = ГОД ## Преобразует дату в числовом формате в год. +YEARFRAC = ДОЛЯГОДА ## Возвращает долю года, которую составляет количество дней между начальной и конечной датами. + + +## +## Engineering functions Инженерные функции +## +BESSELI = БЕССЕЛЬ.I ## Возвращает модифицированную функцию Бесселя In(x). +BESSELJ = БЕССЕЛЬ.J ## Возвращает функцию Бесселя Jn(x). +BESSELK = БЕССЕЛЬ.K ## Возвращает модифицированную функцию Бесселя Kn(x). +BESSELY = БЕССЕЛЬ.Y ## Возвращает функцию Бесселя Yn(x). +BIN2DEC = ДВ.В.ДЕС ## Преобразует двоичное число в десятичное. +BIN2HEX = ДВ.В.ШЕСТН ## Преобразует двоичное число в шестнадцатеричное. +BIN2OCT = ДВ.В.ВОСЬМ ## Преобразует двоичное число в восьмеричное. +COMPLEX = КОМПЛЕКСН ## Преобразует коэффициенты при вещественной и мнимой частях комплексного числа в комплексное число. +CONVERT = ПРЕОБР ## Преобразует число из одной системы единиц измерения в другую. +DEC2BIN = ДЕС.В.ДВ ## Преобразует десятичное число в двоичное. +DEC2HEX = ДЕС.В.ШЕСТН ## Преобразует десятичное число в шестнадцатеричное. +DEC2OCT = ДЕС.В.ВОСЬМ ## Преобразует десятичное число в восьмеричное. +DELTA = ДЕЛЬТА ## Проверяет равенство двух значений. +ERF = ФОШ ## Возвращает функцию ошибки. +ERFC = ДФОШ ## Возвращает дополнительную функцию ошибки. +GESTEP = ПОРОГ ## Проверяет, не превышает ли данное число порогового значения. +HEX2BIN = ШЕСТН.В.ДВ ## Преобразует шестнадцатеричное число в двоичное. +HEX2DEC = ШЕСТН.В.ДЕС ## Преобразует шестнадцатеричное число в десятичное. +HEX2OCT = ШЕСТН.В.ВОСЬМ ## Преобразует шестнадцатеричное число в восьмеричное. +IMABS = МНИМ.ABS ## Возвращает абсолютную величину (модуль) комплексного числа. +IMAGINARY = МНИМ.ЧАСТЬ ## Возвращает коэффициент при мнимой части комплексного числа. +IMARGUMENT = МНИМ.АРГУМЕНТ ## Возвращает значение аргумента комплексного числа (тета) — угол, выраженный в радианах. +IMCONJUGATE = МНИМ.СОПРЯЖ ## Возвращает комплексно-сопряженное комплексное число. +IMCOS = МНИМ.COS ## Возвращает косинус комплексного числа. +IMDIV = МНИМ.ДЕЛ ## Возвращает частное от деления двух комплексных чисел. +IMEXP = МНИМ.EXP ## Возвращает экспоненту комплексного числа. +IMLN = МНИМ.LN ## Возвращает натуральный логарифм комплексного числа. +IMLOG10 = МНИМ.LOG10 ## Возвращает обычный (десятичный) логарифм комплексного числа. +IMLOG2 = МНИМ.LOG2 ## Возвращает двоичный логарифм комплексного числа. +IMPOWER = МНИМ.СТЕПЕНЬ ## Возвращает комплексное число, возведенное в целую степень. +IMPRODUCT = МНИМ.ПРОИЗВЕД ## Возвращает произведение от 2 до 29 комплексных чисел. +IMREAL = МНИМ.ВЕЩ ## Возвращает коэффициент при вещественной части комплексного числа. +IMSIN = МНИМ.SIN ## Возвращает синус комплексного числа. +IMSQRT = МНИМ.КОРЕНЬ ## Возвращает значение квадратного корня из комплексного числа. +IMSUB = МНИМ.РАЗН ## Возвращает разность двух комплексных чисел. +IMSUM = МНИМ.СУММ ## Возвращает сумму комплексных чисел. +OCT2BIN = ВОСЬМ.В.ДВ ## Преобразует восьмеричное число в двоичное. +OCT2DEC = ВОСЬМ.В.ДЕС ## Преобразует восьмеричное число в десятичное. +OCT2HEX = ВОСЬМ.В.ШЕСТН ## Преобразует восьмеричное число в шестнадцатеричное. + + +## +## Financial functions Финансовые функции +## +ACCRINT = НАКОПДОХОД ## Возвращает накопленный процент по ценным бумагам с периодической выплатой процентов. +ACCRINTM = НАКОПДОХОДПОГАШ ## Возвращает накопленный процент по ценным бумагам, проценты по которым выплачиваются в срок погашения. +AMORDEGRC = АМОРУМ ## Возвращает величину амортизации для каждого периода, используя коэффициент амортизации. +AMORLINC = АМОРУВ ## Возвращает величину амортизации для каждого периода. +COUPDAYBS = ДНЕЙКУПОНДО ## Возвращает количество дней от начала действия купона до даты соглашения. +COUPDAYS = ДНЕЙКУПОН ## Возвращает число дней в периоде купона, содержащем дату соглашения. +COUPDAYSNC = ДНЕЙКУПОНПОСЛЕ ## Возвращает число дней от даты соглашения до срока следующего купона. +COUPNCD = ДАТАКУПОНПОСЛЕ ## Возвращает следующую дату купона после даты соглашения. +COUPNUM = ЧИСЛКУПОН ## Возвращает количество купонов, которые могут быть оплачены между датой соглашения и сроком вступления в силу. +COUPPCD = ДАТАКУПОНДО ## Возвращает предыдущую дату купона перед датой соглашения. +CUMIPMT = ОБЩПЛАТ ## Возвращает общую выплату, произведенную между двумя периодическими выплатами. +CUMPRINC = ОБЩДОХОД ## Возвращает общую выплату по займу между двумя периодами. +DB = ФУО ## Возвращает величину амортизации актива для заданного периода, рассчитанную методом фиксированного уменьшения остатка. +DDB = ДДОБ ## Возвращает величину амортизации актива за данный период, используя метод двойного уменьшения остатка или иной явно указанный метод. +DISC = СКИДКА ## Возвращает норму скидки для ценных бумаг. +DOLLARDE = РУБЛЬ.ДЕС ## Преобразует цену в рублях, выраженную в виде дроби, в цену в рублях, выраженную десятичным числом. +DOLLARFR = РУБЛЬ.ДРОБЬ ## Преобразует цену в рублях, выраженную десятичным числом, в цену в рублях, выраженную в виде дроби. +DURATION = ДЛИТ ## Возвращает ежегодную продолжительность действия ценных бумаг с периодическими выплатами по процентам. +EFFECT = ЭФФЕКТ ## Возвращает действующие ежегодные процентные ставки. +FV = БС ## Возвращает будущую стоимость инвестиции. +FVSCHEDULE = БЗРАСПИС ## Возвращает будущую стоимость первоначальной основной суммы после начисления ряда сложных процентов. +INTRATE = ИНОРМА ## Возвращает процентную ставку для полностью инвестированных ценных бумаг. +IPMT = ПРПЛТ ## Возвращает величину выплаты прибыли на вложения за данный период. +IRR = ВСД ## Возвращает внутреннюю ставку доходности для ряда потоков денежных средств. +ISPMT = ПРОЦПЛАТ ## Вычисляет выплаты за указанный период инвестиции. +MDURATION = МДЛИТ ## Возвращает модифицированную длительность Маколея для ценных бумаг с предполагаемой номинальной стоимостью 100 рублей. +MIRR = МВСД ## Возвращает внутреннюю ставку доходности, при которой положительные и отрицательные денежные потоки имеют разные значения ставки. +NOMINAL = НОМИНАЛ ## Возвращает номинальную годовую процентную ставку. +NPER = КПЕР ## Возвращает общее количество периодов выплаты для данного вклада. +NPV = ЧПС ## Возвращает чистую приведенную стоимость инвестиции, основанной на серии периодических денежных потоков и ставке дисконтирования. +ODDFPRICE = ЦЕНАПЕРВНЕРЕГ ## Возвращает цену за 100 рублей нарицательной стоимости ценных бумаг с нерегулярным первым периодом. +ODDFYIELD = ДОХОДПЕРВНЕРЕГ ## Возвращает доход по ценным бумагам с нерегулярным первым периодом. +ODDLPRICE = ЦЕНАПОСЛНЕРЕГ ## Возвращает цену за 100 рублей нарицательной стоимости ценных бумаг с нерегулярным последним периодом. +ODDLYIELD = ДОХОДПОСЛНЕРЕГ ## Возвращает доход по ценным бумагам с нерегулярным последним периодом. +PMT = ПЛТ ## Возвращает величину выплаты за один период аннуитета. +PPMT = ОСПЛТ ## Возвращает величину выплат в погашение основной суммы по инвестиции за заданный период. +PRICE = ЦЕНА ## Возвращает цену за 100 рублей нарицательной стоимости ценных бумаг, по которым производится периодическая выплата процентов. +PRICEDISC = ЦЕНАСКИДКА ## Возвращает цену за 100 рублей номинальной стоимости ценных бумаг, на которые сделана скидка. +PRICEMAT = ЦЕНАПОГАШ ## Возвращает цену за 100 рублей номинальной стоимости ценных бумаг, проценты по которым выплачиваются в срок погашения. +PV = ПС ## Возвращает приведенную (к текущему моменту) стоимость инвестиции. +RATE = СТАВКА ## Возвращает процентную ставку по аннуитету за один период. +RECEIVED = ПОЛУЧЕНО ## Возвращает сумму, полученную к сроку погашения полностью обеспеченных ценных бумаг. +SLN = АПЛ ## Возвращает величину линейной амортизации актива за один период. +SYD = АСЧ ## Возвращает величину амортизации актива за данный период, рассчитанную методом суммы годовых чисел. +TBILLEQ = РАВНОКЧЕК ## Возвращает эквивалентный облигации доход по казначейскому чеку. +TBILLPRICE = ЦЕНАКЧЕК ## Возвращает цену за 100 рублей нарицательной стоимости для казначейского чека. +TBILLYIELD = ДОХОДКЧЕК ## Возвращает доход по казначейскому чеку. +VDB = ПУО ## Возвращает величину амортизации актива для указанного или частичного периода при использовании метода сокращающегося баланса. +XIRR = ЧИСТВНДОХ ## Возвращает внутреннюю ставку доходности для графика денежных потоков, которые не обязательно носят периодический характер. +XNPV = ЧИСТНЗ ## Возвращает чистую приведенную стоимость для денежных потоков, которые не обязательно являются периодическими. +YIELD = ДОХОД ## Возвращает доход от ценных бумаг, по которым производятся периодические выплаты процентов. +YIELDDISC = ДОХОДСКИДКА ## Возвращает годовой доход по ценным бумагам, на которые сделана скидка (пример — казначейские чеки). +YIELDMAT = ДОХОДПОГАШ ## Возвращает годовой доход от ценных бумаг, проценты по которым выплачиваются в срок погашения. + + +## +## Information functions Информационные функции +## +CELL = ЯЧЕЙКА ## Возвращает информацию о формате, расположении или содержимом ячейки. +ERROR.TYPE = ТИП.ОШИБКИ ## Возвращает числовой код, соответствующий типу ошибки. +INFO = ИНФОРМ ## Возвращает информацию о текущей операционной среде. +ISBLANK = ЕПУСТО ## Возвращает значение ИСТИНА, если аргумент является ссылкой на пустую ячейку. +ISERR = ЕОШ ## Возвращает значение ИСТИНА, если аргумент ссылается на любое значение ошибки, кроме #Н/Д. +ISERROR = ЕОШИБКА ## Возвращает значение ИСТИНА, если аргумент ссылается на любое значение ошибки. +ISEVEN = ЕЧЁТН ## Возвращает значение ИСТИНА, если значение аргумента является четным числом. +ISLOGICAL = ЕЛОГИЧ ## Возвращает значение ИСТИНА, если аргумент ссылается на логическое значение. +ISNA = ЕНД ## Возвращает значение ИСТИНА, если аргумент ссылается на значение ошибки #Н/Д. +ISNONTEXT = ЕНЕТЕКСТ ## Возвращает значение ИСТИНА, если значение аргумента не является текстом. +ISNUMBER = ЕЧИСЛО ## Возвращает значение ИСТИНА, если аргумент ссылается на число. +ISODD = ЕНЕЧЁТ ## Возвращает значение ИСТИНА, если значение аргумента является нечетным числом. +ISREF = ЕССЫЛКА ## Возвращает значение ИСТИНА, если значение аргумента является ссылкой. +ISTEXT = ЕТЕКСТ ## Возвращает значение ИСТИНА, если значение аргумента является текстом. +N = Ч ## Возвращает значение, преобразованное в число. +NA = НД ## Возвращает значение ошибки #Н/Д. +TYPE = ТИП ## Возвращает число, обозначающее тип данных значения. + + +## +## Logical functions Логические функции +## +AND = И ## Renvoie VRAI si tous ses arguments sont VRAI. +FALSE = ЛОЖЬ ## Возвращает логическое значение ЛОЖЬ. +IF = ЕСЛИ ## Выполняет проверку условия. +IFERROR = ЕСЛИОШИБКА ## Возвращает введённое значение, если вычисление по формуле вызывает ошибку; в противном случае функция возвращает результат вычисления. +NOT = НЕ ## Меняет логическое значение своего аргумента на противоположное. +OR = ИЛИ ## Возвращает значение ИСТИНА, если хотя бы один аргумент имеет значение ИСТИНА. +TRUE = ИСТИНА ## Возвращает логическое значение ИСТИНА. + + +## +## Lookup and reference functions Функции ссылки и поиска +## +ADDRESS = АДРЕС ## Возвращает ссылку на отдельную ячейку листа в виде текста. +AREAS = ОБЛАСТИ ## Возвращает количество областей в ссылке. +CHOOSE = ВЫБОР ## Выбирает значение из списка значений по индексу. +COLUMN = СТОЛБЕЦ ## Возвращает номер столбца, на который указывает ссылка. +COLUMNS = ЧИСЛСТОЛБ ## Возвращает количество столбцов в ссылке. +HLOOKUP = ГПР ## Ищет в первой строке массива и возвращает значение отмеченной ячейки +HYPERLINK = ГИПЕРССЫЛКА ## Создает ссылку, открывающую документ, который находится на сервере сети, в интрасети или в Интернете. +INDEX = ИНДЕКС ## Использует индекс для выбора значения из ссылки или массива. +INDIRECT = ДВССЫЛ ## Возвращает ссылку, заданную текстовым значением. +LOOKUP = ПРОСМОТР ## Ищет значения в векторе или массиве. +MATCH = ПОИСКПОЗ ## Ищет значения в ссылке или массиве. +OFFSET = СМЕЩ ## Возвращает смещение ссылки относительно заданной ссылки. +ROW = СТРОКА ## Возвращает номер строки, определяемой ссылкой. +ROWS = ЧСТРОК ## Возвращает количество строк в ссылке. +RTD = ДРВ ## Извлекает данные реального времени из программ, поддерживающих автоматизацию COM (Программирование объектов. Стандартное средство для работы с объектами некоторого приложения из другого приложения или средства разработки. Программирование объектов (ранее называемое программированием OLE) является функцией модели COM (Component Object Model, модель компонентных объектов).). +TRANSPOSE = ТРАНСП ## Возвращает транспонированный массив. +VLOOKUP = ВПР ## Ищет значение в первом столбце массива и возвращает значение из ячейки в найденной строке и указанном столбце. + + +## +## Math and trigonometry functions Математические и тригонометрические функции +## +ABS = ABS ## Возвращает модуль (абсолютную величину) числа. +ACOS = ACOS ## Возвращает арккосинус числа. +ACOSH = ACOSH ## Возвращает гиперболический арккосинус числа. +ASIN = ASIN ## Возвращает арксинус числа. +ASINH = ASINH ## Возвращает гиперболический арксинус числа. +ATAN = ATAN ## Возвращает арктангенс числа. +ATAN2 = ATAN2 ## Возвращает арктангенс для заданных координат x и y. +ATANH = ATANH ## Возвращает гиперболический арктангенс числа. +CEILING = ОКРВВЕРХ ## Округляет число до ближайшего целого или до ближайшего кратного указанному значению. +COMBIN = ЧИСЛКОМБ ## Возвращает количество комбинаций для заданного числа объектов. +COS = COS ## Возвращает косинус числа. +COSH = COSH ## Возвращает гиперболический косинус числа. +DEGREES = ГРАДУСЫ ## Преобразует радианы в градусы. +EVEN = ЧЁТН ## Округляет число до ближайшего четного целого. +EXP = EXP ## Возвращает число e, возведенное в указанную степень. +FACT = ФАКТР ## Возвращает факториал числа. +FACTDOUBLE = ДВФАКТР ## Возвращает двойной факториал числа. +FLOOR = ОКРВНИЗ ## Округляет число до ближайшего меньшего по модулю значения. +GCD = НОД ## Возвращает наибольший общий делитель. +INT = ЦЕЛОЕ ## Округляет число до ближайшего меньшего целого. +LCM = НОК ## Возвращает наименьшее общее кратное. +LN = LN ## Возвращает натуральный логарифм числа. +LOG = LOG ## Возвращает логарифм числа по заданному основанию. +LOG10 = LOG10 ## Возвращает десятичный логарифм числа. +MDETERM = МОПРЕД ## Возвращает определитель матрицы массива. +MINVERSE = МОБР ## Возвращает обратную матрицу массива. +MMULT = МУМНОЖ ## Возвращает произведение матриц двух массивов. +MOD = ОСТАТ ## Возвращает остаток от деления. +MROUND = ОКРУГЛТ ## Возвращает число, округленное с требуемой точностью. +MULTINOMIAL = МУЛЬТИНОМ ## Возвращает мультиномиальный коэффициент множества чисел. +ODD = НЕЧЁТ ## Округляет число до ближайшего нечетного целого. +PI = ПИ ## Возвращает число пи. +POWER = СТЕПЕНЬ ## Возвращает результат возведения числа в степень. +PRODUCT = ПРОИЗВЕД ## Возвращает произведение аргументов. +QUOTIENT = ЧАСТНОЕ ## Возвращает целую часть частного при делении. +RADIANS = РАДИАНЫ ## Преобразует градусы в радианы. +RAND = СЛЧИС ## Возвращает случайное число в интервале от 0 до 1. +RANDBETWEEN = СЛУЧМЕЖДУ ## Возвращает случайное число в интервале между двумя заданными числами. +ROMAN = РИМСКОЕ ## Преобразует арабские цифры в римские в виде текста. +ROUND = ОКРУГЛ ## Округляет число до указанного количества десятичных разрядов. +ROUNDDOWN = ОКРУГЛВНИЗ ## Округляет число до ближайшего меньшего по модулю значения. +ROUNDUP = ОКРУГЛВВЕРХ ## Округляет число до ближайшего большего по модулю значения. +SERIESSUM = РЯД.СУММ ## Возвращает сумму степенного ряда, вычисленную по формуле. +SIGN = ЗНАК ## Возвращает знак числа. +SIN = SIN ## Возвращает синус заданного угла. +SINH = SINH ## Возвращает гиперболический синус числа. +SQRT = КОРЕНЬ ## Возвращает положительное значение квадратного корня. +SQRTPI = КОРЕНЬПИ ## Возвращает квадратный корень из значения выражения (число * ПИ). +SUBTOTAL = ПРОМЕЖУТОЧНЫЕ.ИТОГИ ## Возвращает промежуточный итог в списке или базе данных. +SUM = СУММ ## Суммирует аргументы. +SUMIF = СУММЕСЛИ ## Суммирует ячейки, удовлетворяющие заданному условию. +SUMIFS = СУММЕСЛИМН ## Суммирует диапазон ячеек, удовлетворяющих нескольким условиям. +SUMPRODUCT = СУММПРОИЗВ ## Возвращает сумму произведений соответствующих элементов массивов. +SUMSQ = СУММКВ ## Возвращает сумму квадратов аргументов. +SUMX2MY2 = СУММРАЗНКВ ## Возвращает сумму разностей квадратов соответствующих значений в двух массивах. +SUMX2PY2 = СУММСУММКВ ## Возвращает сумму сумм квадратов соответствующих элементов двух массивов. +SUMXMY2 = СУММКВРАЗН ## Возвращает сумму квадратов разностей соответствующих значений в двух массивах. +TAN = TAN ## Возвращает тангенс числа. +TANH = TANH ## Возвращает гиперболический тангенс числа. +TRUNC = ОТБР ## Отбрасывает дробную часть числа. + + +## +## Statistical functions Статистические функции +## +AVEDEV = СРОТКЛ ## Возвращает среднее арифметическое абсолютных значений отклонений точек данных от среднего. +AVERAGE = СРЗНАЧ ## Возвращает среднее арифметическое аргументов. +AVERAGEA = СРЗНАЧА ## Возвращает среднее арифметическое аргументов, включая числа, текст и логические значения. +AVERAGEIF = СРЗНАЧЕСЛИ ## Возвращает среднее значение (среднее арифметическое) всех ячеек в диапазоне, которые удовлетворяют данному условию. +AVERAGEIFS = СРЗНАЧЕСЛИМН ## Возвращает среднее значение (среднее арифметическое) всех ячеек, которые удовлетворяют нескольким условиям. +BETADIST = БЕТАРАСП ## Возвращает интегральную функцию бета-распределения. +BETAINV = БЕТАОБР ## Возвращает обратную интегральную функцию указанного бета-распределения. +BINOMDIST = БИНОМРАСП ## Возвращает отдельное значение биномиального распределения. +CHIDIST = ХИ2РАСП ## Возвращает одностороннюю вероятность распределения хи-квадрат. +CHIINV = ХИ2ОБР ## Возвращает обратное значение односторонней вероятности распределения хи-квадрат. +CHITEST = ХИ2ТЕСТ ## Возвращает тест на независимость. +CONFIDENCE = ДОВЕРИТ ## Возвращает доверительный интервал для среднего значения по генеральной совокупности. +CORREL = КОРРЕЛ ## Возвращает коэффициент корреляции между двумя множествами данных. +COUNT = СЧЁТ ## Подсчитывает количество чисел в списке аргументов. +COUNTA = СЧЁТЗ ## Подсчитывает количество значений в списке аргументов. +COUNTBLANK = СЧИТАТЬПУСТОТЫ ## Подсчитывает количество пустых ячеек в диапазоне +COUNTIF = СЧЁТЕСЛИ ## Подсчитывает количество ячеек в диапазоне, удовлетворяющих заданному условию +COUNTIFS = СЧЁТЕСЛИМН ## Подсчитывает количество ячеек внутри диапазона, удовлетворяющих нескольким условиям. +COVAR = КОВАР ## Возвращает ковариацию, среднее произведений парных отклонений +CRITBINOM = КРИТБИНОМ ## Возвращает наименьшее значение, для которого интегральное биномиальное распределение меньше или равно заданному критерию. +DEVSQ = КВАДРОТКЛ ## Возвращает сумму квадратов отклонений. +EXPONDIST = ЭКСПРАСП ## Возвращает экспоненциальное распределение. +FDIST = FРАСП ## Возвращает F-распределение вероятности. +FINV = FРАСПОБР ## Возвращает обратное значение для F-распределения вероятности. +FISHER = ФИШЕР ## Возвращает преобразование Фишера. +FISHERINV = ФИШЕРОБР ## Возвращает обратное преобразование Фишера. +FORECAST = ПРЕДСКАЗ ## Возвращает значение линейного тренда. +FREQUENCY = ЧАСТОТА ## Возвращает распределение частот в виде вертикального массива. +FTEST = ФТЕСТ ## Возвращает результат F-теста. +GAMMADIST = ГАММАРАСП ## Возвращает гамма-распределение. +GAMMAINV = ГАММАОБР ## Возвращает обратное гамма-распределение. +GAMMALN = ГАММАНЛОГ ## Возвращает натуральный логарифм гамма функции, Γ(x). +GEOMEAN = СРГЕОМ ## Возвращает среднее геометрическое. +GROWTH = РОСТ ## Возвращает значения в соответствии с экспоненциальным трендом. +HARMEAN = СРГАРМ ## Возвращает среднее гармоническое. +HYPGEOMDIST = ГИПЕРГЕОМЕТ ## Возвращает гипергеометрическое распределение. +INTERCEPT = ОТРЕЗОК ## Возвращает отрезок, отсекаемый на оси линией линейной регрессии. +KURT = ЭКСЦЕСС ## Возвращает эксцесс множества данных. +LARGE = НАИБОЛЬШИЙ ## Возвращает k-ое наибольшее значение в множестве данных. +LINEST = ЛИНЕЙН ## Возвращает параметры линейного тренда. +LOGEST = ЛГРФПРИБЛ ## Возвращает параметры экспоненциального тренда. +LOGINV = ЛОГНОРМОБР ## Возвращает обратное логарифмическое нормальное распределение. +LOGNORMDIST = ЛОГНОРМРАСП ## Возвращает интегральное логарифмическое нормальное распределение. +MAX = МАКС ## Возвращает наибольшее значение в списке аргументов. +MAXA = МАКСА ## Возвращает наибольшее значение в списке аргументов, включая числа, текст и логические значения. +MEDIAN = МЕДИАНА ## Возвращает медиану заданных чисел. +MIN = МИН ## Возвращает наименьшее значение в списке аргументов. +MINA = МИНА ## Возвращает наименьшее значение в списке аргументов, включая числа, текст и логические значения. +MODE = МОДА ## Возвращает значение моды множества данных. +NEGBINOMDIST = ОТРБИНОМРАСП ## Возвращает отрицательное биномиальное распределение. +NORMDIST = НОРМРАСП ## Возвращает нормальную функцию распределения. +NORMINV = НОРМОБР ## Возвращает обратное нормальное распределение. +NORMSDIST = НОРМСТРАСП ## Возвращает стандартное нормальное интегральное распределение. +NORMSINV = НОРМСТОБР ## Возвращает обратное значение стандартного нормального распределения. +PEARSON = ПИРСОН ## Возвращает коэффициент корреляции Пирсона. +PERCENTILE = ПЕРСЕНТИЛЬ ## Возвращает k-ую персентиль для значений диапазона. +PERCENTRANK = ПРОЦЕНТРАНГ ## Возвращает процентную норму значения в множестве данных. +PERMUT = ПЕРЕСТ ## Возвращает количество перестановок для заданного числа объектов. +POISSON = ПУАССОН ## Возвращает распределение Пуассона. +PROB = ВЕРОЯТНОСТЬ ## Возвращает вероятность того, что значение из диапазона находится внутри заданных пределов. +QUARTILE = КВАРТИЛЬ ## Возвращает квартиль множества данных. +RANK = РАНГ ## Возвращает ранг числа в списке чисел. +RSQ = КВПИРСОН ## Возвращает квадрат коэффициента корреляции Пирсона. +SKEW = СКОС ## Возвращает асимметрию распределения. +SLOPE = НАКЛОН ## Возвращает наклон линии линейной регрессии. +SMALL = НАИМЕНЬШИЙ ## Возвращает k-ое наименьшее значение в множестве данных. +STANDARDIZE = НОРМАЛИЗАЦИЯ ## Возвращает нормализованное значение. +STDEV = СТАНДОТКЛОН ## Оценивает стандартное отклонение по выборке. +STDEVA = СТАНДОТКЛОНА ## Оценивает стандартное отклонение по выборке, включая числа, текст и логические значения. +STDEVP = СТАНДОТКЛОНП ## Вычисляет стандартное отклонение по генеральной совокупности. +STDEVPA = СТАНДОТКЛОНПА ## Вычисляет стандартное отклонение по генеральной совокупности, включая числа, текст и логические значения. +STEYX = СТОШYX ## Возвращает стандартную ошибку предсказанных значений y для каждого значения x в регрессии. +TDIST = СТЬЮДРАСП ## Возвращает t-распределение Стьюдента. +TINV = СТЬЮДРАСПОБР ## Возвращает обратное t-распределение Стьюдента. +TREND = ТЕНДЕНЦИЯ ## Возвращает значения в соответствии с линейным трендом. +TRIMMEAN = УРЕЗСРЕДНЕЕ ## Возвращает среднее внутренности множества данных. +TTEST = ТТЕСТ ## Возвращает вероятность, соответствующую критерию Стьюдента. +VAR = ДИСП ## Оценивает дисперсию по выборке. +VARA = ДИСПА ## Оценивает дисперсию по выборке, включая числа, текст и логические значения. +VARP = ДИСПР ## Вычисляет дисперсию для генеральной совокупности. +VARPA = ДИСПРА ## Вычисляет дисперсию для генеральной совокупности, включая числа, текст и логические значения. +WEIBULL = ВЕЙБУЛЛ ## Возвращает распределение Вейбулла. +ZTEST = ZТЕСТ ## Возвращает двустороннее P-значение z-теста. + + +## +## Text functions Текстовые функции +## +ASC = ASC ## Для языков с двухбайтовыми наборами знаков (например, катакана) преобразует полноширинные (двухбайтовые) знаки в полуширинные (однобайтовые). +BAHTTEXT = БАТТЕКСТ ## Преобразует число в текст, используя денежный формат ß (БАТ). +CHAR = СИМВОЛ ## Возвращает знак с заданным кодом. +CLEAN = ПЕЧСИМВ ## Удаляет все непечатаемые знаки из текста. +CODE = КОДСИМВ ## Возвращает числовой код первого знака в текстовой строке. +CONCATENATE = СЦЕПИТЬ ## Объединяет несколько текстовых элементов в один. +DOLLAR = РУБЛЬ ## Преобразует число в текст, используя денежный формат. +EXACT = СОВПАД ## Проверяет идентичность двух текстовых значений. +FIND = НАЙТИ ## Ищет вхождения одного текстового значения в другом (с учетом регистра). +FINDB = НАЙТИБ ## Ищет вхождения одного текстового значения в другом (с учетом регистра). +FIXED = ФИКСИРОВАННЫЙ ## Форматирует число и преобразует его в текст с заданным числом десятичных знаков. +JIS = JIS ## Для языков с двухбайтовыми наборами знаков (например, катакана) преобразует полуширинные (однобайтовые) знаки в текстовой строке в полноширинные (двухбайтовые). +LEFT = ЛЕВСИМВ ## Возвращает крайние слева знаки текстового значения. +LEFTB = ЛЕВБ ## Возвращает крайние слева знаки текстового значения. +LEN = ДЛСТР ## Возвращает количество знаков в текстовой строке. +LENB = ДЛИНБ ## Возвращает количество знаков в текстовой строке. +LOWER = СТРОЧН ## Преобразует все буквы текста в строчные. +MID = ПСТР ## Возвращает заданное число знаков из строки текста, начиная с указанной позиции. +MIDB = ПСТРБ ## Возвращает заданное число знаков из строки текста, начиная с указанной позиции. +PHONETIC = PHONETIC ## Извлекает фонетические (фуригана) знаки из текстовой строки. +PROPER = ПРОПНАЧ ## Преобразует первую букву в каждом слове текста в прописную. +REPLACE = ЗАМЕНИТЬ ## Заменяет знаки в тексте. +REPLACEB = ЗАМЕНИТЬБ ## Заменяет знаки в тексте. +REPT = ПОВТОР ## Повторяет текст заданное число раз. +RIGHT = ПРАВСИМВ ## Возвращает крайние справа знаки текстовой строки. +RIGHTB = ПРАВБ ## Возвращает крайние справа знаки текстовой строки. +SEARCH = ПОИСК ## Ищет вхождения одного текстового значения в другом (без учета регистра). +SEARCHB = ПОИСКБ ## Ищет вхождения одного текстового значения в другом (без учета регистра). +SUBSTITUTE = ПОДСТАВИТЬ ## Заменяет в текстовой строке старый текст новым. +T = Т ## Преобразует аргументы в текст. +TEXT = ТЕКСТ ## Форматирует число и преобразует его в текст. +TRIM = СЖПРОБЕЛЫ ## Удаляет из текста пробелы. +UPPER = ПРОПИСН ## Преобразует все буквы текста в прописные. +VALUE = ЗНАЧЕН ## Преобразует текстовый аргумент в число. diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/sv/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/sv/_notes/dwsync.xml new file mode 100644 index 0000000..a728e18 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/sv/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851499999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851499999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851499999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851499999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559967629296" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559968222204" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752269540178" remote="131414680800000000" Dst="2" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752270024576" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461254151684" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461257612287" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752269540178" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752270024576" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/sv/config b/site/config/PHPExcel/Classes/PHPExcel/locale/sv/config new file mode 100644 index 0000000..6a59778 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/sv/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = kr + + +## +## Excel Error Codes (For future use) +## +NULL = #Skärning! +DIV0 = #Division/0! +VALUE = #Värdefel! +REF = #Referens! +NAME = #Namn? +NUM = #Ogiltigt! +NA = #Saknas! diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/sv/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/sv/functions new file mode 100644 index 0000000..27f61e7 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/sv/functions @@ -0,0 +1,408 @@ +## +## Add-in and Automation functions Tilläggs- och automatiseringsfunktioner +## +GETPIVOTDATA = HÄMTA.PIVOTDATA ## Returnerar data som lagrats i en pivottabellrapport + + +## +## Cube functions Kubfunktioner +## +CUBEKPIMEMBER = KUBKPIMEDLEM ## Returnerar namn, egenskap och mått för en KPI och visar namnet och egenskapen i cellen. En KPI, eller prestandaindikator, är ett kvantifierbart mått, t.ex. månatlig bruttovinst eller personalomsättning per kvartal, som används för att analysera ett företags resultat. +CUBEMEMBER = KUBMEDLEM ## Returnerar en medlem eller ett par i en kubhierarki. Används för att verifiera att medlemmen eller paret finns i kuben. +CUBEMEMBERPROPERTY = KUBMEDLEMSEGENSKAP ## Returnerar värdet för en medlemsegenskap i kuben. Används för att verifiera att ett medlemsnamn finns i kuben, samt för att returnera den angivna egenskapen för medlemmen. +CUBERANKEDMEMBER = KUBRANGORDNADMEDLEM ## Returnerar den n:te, eller rangordnade, medlemmen i en uppsättning. Används för att returnera ett eller flera element i en uppsättning, till exempelvis den bästa försäljaren eller de tio bästa eleverna. +CUBESET = KUBINSTÄLLNING ## Definierar en beräknad uppsättning medlemmar eller par genom att skicka ett bestämt uttryck till kuben på servern, som skapar uppsättningen och sedan returnerar den till Microsoft Office Excel. +CUBESETCOUNT = KUBINSTÄLLNINGANTAL ## Returnerar antalet objekt i en uppsättning. +CUBEVALUE = KUBVÄRDE ## Returnerar ett mängdvärde från en kub. + + +## +## Database functions Databasfunktioner +## +DAVERAGE = DMEDEL ## Returnerar medelvärdet av databasposterna +DCOUNT = DANTAL ## Räknar antalet celler som innehåller tal i en databas +DCOUNTA = DANTALV ## Räknar ifyllda celler i en databas +DGET = DHÄMTA ## Hämtar en enstaka post från en databas som uppfyller de angivna villkoren +DMAX = DMAX ## Returnerar det största värdet från databasposterna +DMIN = DMIN ## Returnerar det minsta värdet från databasposterna +DPRODUCT = DPRODUKT ## Multiplicerar värdena i ett visst fält i poster som uppfyller villkoret +DSTDEV = DSTDAV ## Uppskattar standardavvikelsen baserat på ett urval av databasposterna +DSTDEVP = DSTDAVP ## Beräknar standardavvikelsen utifrån hela populationen av valda databasposter +DSUM = DSUMMA ## Summerar talen i kolumnfält i databasposter som uppfyller villkoret +DVAR = DVARIANS ## Uppskattar variansen baserat på ett urval av databasposterna +DVARP = DVARIANSP ## Beräknar variansen utifrån hela populationen av valda databasposter + + +## +## Date and time functions Tid- och datumfunktioner +## +DATE = DATUM ## Returnerar ett serienummer för ett visst datum +DATEVALUE = DATUMVÄRDE ## Konverterar ett datum i textformat till ett serienummer +DAY = DAG ## Konverterar ett serienummer till dag i månaden +DAYS360 = DAGAR360 ## Beräknar antalet dagar mellan två datum baserat på ett 360-dagarsår +EDATE = EDATUM ## Returnerar serienumret för ett datum som infaller ett visst antal månader före eller efter startdatumet +EOMONTH = SLUTMÅNAD ## Returnerar serienumret för sista dagen i månaden ett visst antal månader tidigare eller senare +HOUR = TIMME ## Konverterar ett serienummer till en timme +MINUTE = MINUT ## Konverterar ett serienummer till en minut +MONTH = MÅNAD ## Konverterar ett serienummer till en månad +NETWORKDAYS = NETTOARBETSDAGAR ## Returnerar antalet hela arbetsdagar mellan två datum +NOW = NU ## Returnerar serienumret för dagens datum och aktuell tid +SECOND = SEKUND ## Konverterar ett serienummer till en sekund +TIME = KLOCKSLAG ## Returnerar serienumret för en viss tid +TIMEVALUE = TIDVÄRDE ## Konverterar en tid i textformat till ett serienummer +TODAY = IDAG ## Returnerar serienumret för dagens datum +WEEKDAY = VECKODAG ## Konverterar ett serienummer till en dag i veckan +WEEKNUM = VECKONR ## Konverterar ett serienummer till ett veckonummer +WORKDAY = ARBETSDAGAR ## Returnerar serienumret för ett datum ett visst antal arbetsdagar tidigare eller senare +YEAR = ÅR ## Konverterar ett serienummer till ett år +YEARFRAC = ÅRDEL ## Returnerar en del av ett år som representerar antalet hela dagar mellan start- och slutdatum + + +## +## Engineering functions Tekniska funktioner +## +BESSELI = BESSELI ## Returnerar den modifierade Bessel-funktionen In(x) +BESSELJ = BESSELJ ## Returnerar Bessel-funktionen Jn(x) +BESSELK = BESSELK ## Returnerar den modifierade Bessel-funktionen Kn(x) +BESSELY = BESSELY ## Returnerar Bessel-funktionen Yn(x) +BIN2DEC = BIN.TILL.DEC ## Omvandlar ett binärt tal till decimalt +BIN2HEX = BIN.TILL.HEX ## Omvandlar ett binärt tal till hexadecimalt +BIN2OCT = BIN.TILL.OKT ## Omvandlar ett binärt tal till oktalt +COMPLEX = KOMPLEX ## Omvandlar reella och imaginära koefficienter till ett komplext tal +CONVERT = KONVERTERA ## Omvandlar ett tal från ett måttsystem till ett annat +DEC2BIN = DEC.TILL.BIN ## Omvandlar ett decimalt tal till binärt +DEC2HEX = DEC.TILL.HEX ## Omvandlar ett decimalt tal till hexadecimalt +DEC2OCT = DEC.TILL.OKT ## Omvandlar ett decimalt tal till oktalt +DELTA = DELTA ## Testar om två värden är lika +ERF = FELF ## Returnerar felfunktionen +ERFC = FELFK ## Returnerar den komplementära felfunktionen +GESTEP = SLSTEG ## Testar om ett tal är större än ett tröskelvärde +HEX2BIN = HEX.TILL.BIN ## Omvandlar ett hexadecimalt tal till binärt +HEX2DEC = HEX.TILL.DEC ## Omvandlar ett hexadecimalt tal till decimalt +HEX2OCT = HEX.TILL.OKT ## Omvandlar ett hexadecimalt tal till oktalt +IMABS = IMABS ## Returnerar absolutvärdet (modulus) för ett komplext tal +IMAGINARY = IMAGINÄR ## Returnerar den imaginära koefficienten för ett komplext tal +IMARGUMENT = IMARGUMENT ## Returnerar det komplexa talets argument, en vinkel uttryckt i radianer +IMCONJUGATE = IMKONJUGAT ## Returnerar det komplexa talets konjugat +IMCOS = IMCOS ## Returnerar cosinus för ett komplext tal +IMDIV = IMDIV ## Returnerar kvoten för två komplexa tal +IMEXP = IMEUPPHÖJT ## Returnerar exponenten för ett komplext tal +IMLN = IMLN ## Returnerar den naturliga logaritmen för ett komplext tal +IMLOG10 = IMLOG10 ## Returnerar 10-logaritmen för ett komplext tal +IMLOG2 = IMLOG2 ## Returnerar 2-logaritmen för ett komplext tal +IMPOWER = IMUPPHÖJT ## Returnerar ett komplext tal upphöjt till en exponent +IMPRODUCT = IMPRODUKT ## Returnerar produkten av komplexa tal +IMREAL = IMREAL ## Returnerar den reella koefficienten för ett komplext tal +IMSIN = IMSIN ## Returnerar sinus för ett komplext tal +IMSQRT = IMROT ## Returnerar kvadratroten av ett komplext tal +IMSUB = IMDIFF ## Returnerar differensen mellan två komplexa tal +IMSUM = IMSUM ## Returnerar summan av komplexa tal +OCT2BIN = OKT.TILL.BIN ## Omvandlar ett oktalt tal till binärt +OCT2DEC = OKT.TILL.DEC ## Omvandlar ett oktalt tal till decimalt +OCT2HEX = OKT.TILL.HEX ## Omvandlar ett oktalt tal till hexadecimalt + + +## +## Financial functions Finansiella funktioner +## +ACCRINT = UPPLRÄNTA ## Returnerar den upplupna räntan för värdepapper med periodisk ränta +ACCRINTM = UPPLOBLRÄNTA ## Returnerar den upplupna räntan för ett värdepapper som ger avkastning på förfallodagen +AMORDEGRC = AMORDEGRC ## Returnerar avskrivningen för varje redovisningsperiod med hjälp av en avskrivningskoefficient +AMORLINC = AMORLINC ## Returnerar avskrivningen för varje redovisningsperiod +COUPDAYBS = KUPDAGBB ## Returnerar antal dagar från början av kupongperioden till likviddagen +COUPDAYS = KUPDAGARS ## Returnerar antalet dagar i kupongperioden som innehåller betalningsdatumet +COUPDAYSNC = KUPDAGNK ## Returnerar antalet dagar från betalningsdatumet till nästa kupongdatum +COUPNCD = KUPNKD ## Returnerar nästa kupongdatum efter likviddagen +COUPNUM = KUPANT ## Returnerar kuponger som förfaller till betalning mellan likviddagen och förfallodagen +COUPPCD = KUPFKD ## Returnerar föregående kupongdatum före likviddagen +CUMIPMT = KUMRÄNTA ## Returnerar den ackumulerade räntan som betalats mellan två perioder +CUMPRINC = KUMPRIS ## Returnerar det ackumulerade kapitalbeloppet som betalats på ett lån mellan två perioder +DB = DB ## Returnerar avskrivningen för en tillgång under en angiven tid enligt metoden för fast degressiv avskrivning +DDB = DEGAVSKR ## Returnerar en tillgångs värdeminskning under en viss period med hjälp av dubbel degressiv avskrivning eller någon annan metod som du anger +DISC = DISK ## Returnerar diskonteringsräntan för ett värdepapper +DOLLARDE = DECTAL ## Omvandlar ett pris uttryckt som ett bråk till ett decimaltal +DOLLARFR = BRÅK ## Omvandlar ett pris i kronor uttryckt som ett decimaltal till ett bråk +DURATION = LÖPTID ## Returnerar den årliga löptiden för en säkerhet med periodiska räntebetalningar +EFFECT = EFFRÄNTA ## Returnerar den årliga effektiva räntesatsen +FV = SLUTVÄRDE ## Returnerar det framtida värdet på en investering +FVSCHEDULE = FÖRRÄNTNING ## Returnerar det framtida värdet av ett begynnelsekapital beräknat på olika räntenivåer +INTRATE = ÅRSRÄNTA ## Returnerar räntesatsen för ett betalt värdepapper +IPMT = RBETALNING ## Returnerar räntedelen av en betalning för en given period +IRR = IR ## Returnerar internräntan för en serie betalningar +ISPMT = RALÅN ## Beräknar räntan som har betalats under en specifik betalningsperiod +MDURATION = MLÖPTID ## Returnerar den modifierade Macauley-löptiden för ett värdepapper med det antagna nominella värdet 100 kr +MIRR = MODIR ## Returnerar internräntan där positiva och negativa betalningar finansieras med olika räntor +NOMINAL = NOMRÄNTA ## Returnerar den årliga nominella räntesatsen +NPER = PERIODER ## Returnerar antalet perioder för en investering +NPV = NETNUVÄRDE ## Returnerar nuvärdet av en serie periodiska betalningar vid en given diskonteringsränta +ODDFPRICE = UDDAFPRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper med en udda första period +ODDFYIELD = UDDAFAVKASTNING ## Returnerar avkastningen för en säkerhet med en udda första period +ODDLPRICE = UDDASPRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper med en udda sista period +ODDLYIELD = UDDASAVKASTNING ## Returnerar avkastningen för en säkerhet med en udda sista period +PMT = BETALNING ## Returnerar den periodiska betalningen för en annuitet +PPMT = AMORT ## Returnerar amorteringsdelen av en annuitetsbetalning för en given period +PRICE = PRIS ## Returnerar priset per 100 kr nominellt värde för ett värdepapper som ger periodisk ränta +PRICEDISC = PRISDISK ## Returnerar priset per 100 kr nominellt värde för ett diskonterat värdepapper +PRICEMAT = PRISFÖRF ## Returnerar priset per 100 kr nominellt värde för ett värdepapper som ger ränta på förfallodagen +PV = PV ## Returnerar nuvärdet av en serie lika stora periodiska betalningar +RATE = RÄNTA ## Returnerar räntesatsen per period i en annuitet +RECEIVED = BELOPP ## Returnerar beloppet som utdelas på förfallodagen för ett betalat värdepapper +SLN = LINAVSKR ## Returnerar den linjära avskrivningen för en tillgång under en period +SYD = ÅRSAVSKR ## Returnerar den årliga avskrivningssumman för en tillgång under en angiven period +TBILLEQ = SSVXEKV ## Returnerar avkastningen motsvarande en obligation för en statsskuldväxel +TBILLPRICE = SSVXPRIS ## Returnerar priset per 100 kr nominellt värde för en statsskuldväxel +TBILLYIELD = SSVXRÄNTA ## Returnerar avkastningen för en statsskuldväxel +VDB = VDEGRAVSKR ## Returnerar avskrivningen för en tillgång under en angiven period (med degressiv avskrivning) +XIRR = XIRR ## Returnerar internräntan för en serie betalningar som inte nödvändigtvis är periodiska +XNPV = XNUVÄRDE ## Returnerar det nuvarande nettovärdet för en serie betalningar som inte nödvändigtvis är periodiska +YIELD = NOMAVK ## Returnerar avkastningen för ett värdepapper som ger periodisk ränta +YIELDDISC = NOMAVKDISK ## Returnerar den årliga avkastningen för diskonterade värdepapper, exempelvis en statsskuldväxel +YIELDMAT = NOMAVKFÖRF ## Returnerar den årliga avkastningen för ett värdepapper som ger ränta på förfallodagen + + +## +## Information functions Informationsfunktioner +## +CELL = CELL ## Returnerar information om formatering, plats och innehåll i en cell +ERROR.TYPE = FEL.TYP ## Returnerar ett tal som motsvarar ett felvärde +INFO = INFO ## Returnerar information om operativsystemet +ISBLANK = ÄRREF ## Returnerar SANT om värdet är tomt +ISERR = Ä ## Returnerar SANT om värdet är ett felvärde annat än #SAKNAS! +ISERROR = ÄRFEL ## Returnerar SANT om värdet är ett felvärde +ISEVEN = ÄRJÄMN ## Returnerar SANT om talet är jämnt +ISLOGICAL = ÄREJTEXT ## Returnerar SANT om värdet är ett logiskt värde +ISNA = ÄRLOGISK ## Returnerar SANT om värdet är felvärdet #SAKNAS! +ISNONTEXT = ÄRSAKNAD ## Returnerar SANT om värdet inte är text +ISNUMBER = ÄRTAL ## Returnerar SANT om värdet är ett tal +ISODD = ÄRUDDA ## Returnerar SANT om talet är udda +ISREF = ÄRTOM ## Returnerar SANT om värdet är en referens +ISTEXT = ÄRTEXT ## Returnerar SANT om värdet är text +N = N ## Returnerar ett värde omvandlat till ett tal +NA = SAKNAS ## Returnerar felvärdet #SAKNAS! +TYPE = VÄRDETYP ## Returnerar ett tal som anger värdets datatyp + + +## +## Logical functions Logiska funktioner +## +AND = OCH ## Returnerar SANT om alla argument är sanna +FALSE = FALSKT ## Returnerar det logiska värdet FALSKT +IF = OM ## Anger vilket logiskt test som ska utföras +IFERROR = OMFEL ## Returnerar ett värde som du anger om en formel utvärderar till ett fel; annars returneras resultatet av formeln +NOT = ICKE ## Inverterar logiken för argumenten +OR = ELLER ## Returnerar SANT om något argument är SANT +TRUE = SANT ## Returnerar det logiska värdet SANT + + +## +## Lookup and reference functions Sök- och referensfunktioner +## +ADDRESS = ADRESS ## Returnerar en referens som text till en enstaka cell i ett kalkylblad +AREAS = OMRÅDEN ## Returnerar antalet områden i en referens +CHOOSE = VÄLJ ## Väljer ett värde i en lista över värden +COLUMN = KOLUMN ## Returnerar kolumnnumret för en referens +COLUMNS = KOLUMNER ## Returnerar antalet kolumner i en referens +HLOOKUP = LETAKOLUMN ## Söker i den översta raden i en matris och returnerar värdet för angiven cell +HYPERLINK = HYPERLÄNK ## Skapar en genväg eller ett hopp till ett dokument i nätverket, i ett intranät eller på Internet +INDEX = INDEX ## Använder ett index för ett välja ett värde i en referens eller matris +INDIRECT = INDIREKT ## Returnerar en referens som anges av ett textvärde +LOOKUP = LETAUPP ## Letar upp värden i en vektor eller matris +MATCH = PASSA ## Letar upp värden i en referens eller matris +OFFSET = FÖRSKJUTNING ## Returnerar en referens förskjuten i förhållande till en given referens +ROW = RAD ## Returnerar radnumret för en referens +ROWS = RADER ## Returnerar antalet rader i en referens +RTD = RTD ## Hämtar realtidsdata från ett program som stöder COM-automation (Automation: Ett sätt att arbeta med ett programs objekt från ett annat program eller utvecklingsverktyg. Detta kallades tidigare för OLE Automation, och är en branschstandard och ingår i Component Object Model (COM).) +TRANSPOSE = TRANSPONERA ## Transponerar en matris +VLOOKUP = LETARAD ## Letar i den första kolumnen i en matris och flyttar över raden för att returnera värdet för en cell + + +## +## Math and trigonometry functions Matematiska och trigonometriska funktioner +## +ABS = ABS ## Returnerar absolutvärdet av ett tal +ACOS = ARCCOS ## Returnerar arcus cosinus för ett tal +ACOSH = ARCCOSH ## Returnerar inverterad hyperbolisk cosinus för ett tal +ASIN = ARCSIN ## Returnerar arcus cosinus för ett tal +ASINH = ARCSINH ## Returnerar hyperbolisk arcus sinus för ett tal +ATAN = ARCTAN ## Returnerar arcus tangens för ett tal +ATAN2 = ARCTAN2 ## Returnerar arcus tangens för en x- och en y- koordinat +ATANH = ARCTANH ## Returnerar hyperbolisk arcus tangens för ett tal +CEILING = RUNDA.UPP ## Avrundar ett tal till närmaste heltal eller närmaste signifikanta multipel +COMBIN = KOMBIN ## Returnerar antalet kombinationer för ett givet antal objekt +COS = COS ## Returnerar cosinus för ett tal +COSH = COSH ## Returnerar hyperboliskt cosinus för ett tal +DEGREES = GRADER ## Omvandlar radianer till grader +EVEN = JÄMN ## Avrundar ett tal uppåt till närmaste heltal +EXP = EXP ## Returnerar e upphöjt till ett givet tal +FACT = FAKULTET ## Returnerar fakulteten för ett tal +FACTDOUBLE = DUBBELFAKULTET ## Returnerar dubbelfakulteten för ett tal +FLOOR = RUNDA.NED ## Avrundar ett tal nedåt mot noll +GCD = SGD ## Returnerar den största gemensamma nämnaren +INT = HELTAL ## Avrundar ett tal nedåt till närmaste heltal +LCM = MGM ## Returnerar den minsta gemensamma multipeln +LN = LN ## Returnerar den naturliga logaritmen för ett tal +LOG = LOG ## Returnerar logaritmen för ett tal för en given bas +LOG10 = LOG10 ## Returnerar 10-logaritmen för ett tal +MDETERM = MDETERM ## Returnerar matrisen som är avgörandet av en matris +MINVERSE = MINVERT ## Returnerar matrisinversen av en matris +MMULT = MMULT ## Returnerar matrisprodukten av två matriser +MOD = REST ## Returnerar resten vid en division +MROUND = MAVRUNDA ## Returnerar ett tal avrundat till en given multipel +MULTINOMIAL = MULTINOMIAL ## Returnerar multinomialen för en uppsättning tal +ODD = UDDA ## Avrundar ett tal uppåt till närmaste udda heltal +PI = PI ## Returnerar värdet pi +POWER = UPPHÖJT.TILL ## Returnerar resultatet av ett tal upphöjt till en exponent +PRODUCT = PRODUKT ## Multiplicerar argumenten +QUOTIENT = KVOT ## Returnerar heltalsdelen av en division +RADIANS = RADIANER ## Omvandlar grader till radianer +RAND = SLUMP ## Returnerar ett slumptal mellan 0 och 1 +RANDBETWEEN = SLUMP.MELLAN ## Returnerar ett slumptal mellan de tal som du anger +ROMAN = ROMERSK ## Omvandlar vanliga (arabiska) siffror till romerska som text +ROUND = AVRUNDA ## Avrundar ett tal till ett angivet antal siffror +ROUNDDOWN = AVRUNDA.NEDÅT ## Avrundar ett tal nedåt mot noll +ROUNDUP = AVRUNDA.UPPÅT ## Avrundar ett tal uppåt, från noll +SERIESSUM = SERIESUMMA ## Returnerar summan av en potensserie baserat på formeln +SIGN = TECKEN ## Returnerar tecknet för ett tal +SIN = SIN ## Returnerar sinus för en given vinkel +SINH = SINH ## Returnerar hyperbolisk sinus för ett tal +SQRT = ROT ## Returnerar den positiva kvadratroten +SQRTPI = ROTPI ## Returnerar kvadratroten för (tal * pi) +SUBTOTAL = DELSUMMA ## Returnerar en delsumma i en lista eller databas +SUM = SUMMA ## Summerar argumenten +SUMIF = SUMMA.OM ## Summerar celler enligt ett angivet villkor +SUMIFS = SUMMA.OMF ## Lägger till cellerna i ett område som uppfyller flera kriterier +SUMPRODUCT = PRODUKTSUMMA ## Returnerar summan av produkterna i motsvarande matriskomponenter +SUMSQ = KVADRATSUMMA ## Returnerar summan av argumentens kvadrater +SUMX2MY2 = SUMMAX2MY2 ## Returnerar summan av differensen mellan kvadraterna för motsvarande värden i två matriser +SUMX2PY2 = SUMMAX2PY2 ## Returnerar summan av summan av kvadraterna av motsvarande värden i två matriser +SUMXMY2 = SUMMAXMY2 ## Returnerar summan av kvadraten av skillnaden mellan motsvarande värden i två matriser +TAN = TAN ## Returnerar tangens för ett tal +TANH = TANH ## Returnerar hyperbolisk tangens för ett tal +TRUNC = AVKORTA ## Avkortar ett tal till ett heltal + + +## +## Statistical functions Statistiska funktioner +## +AVEDEV = MEDELAVV ## Returnerar medelvärdet för datapunkters absoluta avvikelse från deras medelvärde +AVERAGE = MEDEL ## Returnerar medelvärdet av argumenten +AVERAGEA = AVERAGEA ## Returnerar medelvärdet av argumenten, inklusive tal, text och logiska värden +AVERAGEIF = MEDELOM ## Returnerar medelvärdet (aritmetiskt medelvärde) för alla celler i ett område som uppfyller ett givet kriterium +AVERAGEIFS = MEDELOMF ## Returnerar medelvärdet (det aritmetiska medelvärdet) för alla celler som uppfyller flera villkor. +BETADIST = BETAFÖRD ## Returnerar den kumulativa betafördelningsfunktionen +BETAINV = BETAINV ## Returnerar inversen till den kumulativa fördelningsfunktionen för en viss betafördelning +BINOMDIST = BINOMFÖRD ## Returnerar den individuella binomialfördelningen +CHIDIST = CHI2FÖRD ## Returnerar den ensidiga sannolikheten av c2-fördelningen +CHIINV = CHI2INV ## Returnerar inversen av chi2-fördelningen +CHITEST = CHI2TEST ## Returnerar oberoendetesten +CONFIDENCE = KONFIDENS ## Returnerar konfidensintervallet för en populations medelvärde +CORREL = KORREL ## Returnerar korrelationskoefficienten mellan två datamängder +COUNT = ANTAL ## Räknar hur många tal som finns bland argumenten +COUNTA = ANTALV ## Räknar hur många värden som finns bland argumenten +COUNTBLANK = ANTAL.TOMMA ## Räknar antalet tomma celler i ett område +COUNTIF = ANTAL.OM ## Räknar antalet celler i ett område som uppfyller angivna villkor. +COUNTIFS = ANTAL.OMF ## Räknar antalet celler i ett område som uppfyller flera villkor. +COVAR = KOVAR ## Returnerar kovariansen, d.v.s. medelvärdet av produkterna för parade avvikelser +CRITBINOM = KRITBINOM ## Returnerar det minsta värdet för vilket den kumulativa binomialfördelningen är mindre än eller lika med ett villkorsvärde +DEVSQ = KVADAVV ## Returnerar summan av kvadrater på avvikelser +EXPONDIST = EXPONFÖRD ## Returnerar exponentialfördelningen +FDIST = FFÖRD ## Returnerar F-sannolikhetsfördelningen +FINV = FINV ## Returnerar inversen till F-sannolikhetsfördelningen +FISHER = FISHER ## Returnerar Fisher-transformationen +FISHERINV = FISHERINV ## Returnerar inversen till Fisher-transformationen +FORECAST = PREDIKTION ## Returnerar ett värde längs en linjär trendlinje +FREQUENCY = FREKVENS ## Returnerar en frekvensfördelning som en lodrät matris +FTEST = FTEST ## Returnerar resultatet av en F-test +GAMMADIST = GAMMAFÖRD ## Returnerar gammafördelningen +GAMMAINV = GAMMAINV ## Returnerar inversen till den kumulativa gammafördelningen +GAMMALN = GAMMALN ## Returnerar den naturliga logaritmen för gammafunktionen, G(x) +GEOMEAN = GEOMEDEL ## Returnerar det geometriska medelvärdet +GROWTH = EXPTREND ## Returnerar värden längs en exponentiell trend +HARMEAN = HARMMEDEL ## Returnerar det harmoniska medelvärdet +HYPGEOMDIST = HYPGEOMFÖRD ## Returnerar den hypergeometriska fördelningen +INTERCEPT = SKÄRNINGSPUNKT ## Returnerar skärningspunkten för en linjär regressionslinje +KURT = TOPPIGHET ## Returnerar toppigheten av en mängd data +LARGE = STÖRSTA ## Returnerar det n:te största värdet i en mängd data +LINEST = REGR ## Returnerar parametrar till en linjär trendlinje +LOGEST = EXPREGR ## Returnerar parametrarna i en exponentiell trend +LOGINV = LOGINV ## Returnerar inversen till den lognormala fördelningen +LOGNORMDIST = LOGNORMFÖRD ## Returnerar den kumulativa lognormala fördelningen +MAX = MAX ## Returnerar det största värdet i en lista av argument +MAXA = MAXA ## Returnerar det största värdet i en lista av argument, inklusive tal, text och logiska värden +MEDIAN = MEDIAN ## Returnerar medianen för angivna tal +MIN = MIN ## Returnerar det minsta värdet i en lista med argument +MINA = MINA ## Returnerar det minsta värdet i en lista över argument, inklusive tal, text och logiska värden +MODE = TYPVÄRDE ## Returnerar det vanligaste värdet i en datamängd +NEGBINOMDIST = NEGBINOMFÖRD ## Returnerar den negativa binomialfördelningen +NORMDIST = NORMFÖRD ## Returnerar den kumulativa normalfördelningen +NORMINV = NORMINV ## Returnerar inversen till den kumulativa normalfördelningen +NORMSDIST = NORMSFÖRD ## Returnerar den kumulativa standardnormalfördelningen +NORMSINV = NORMSINV ## Returnerar inversen till den kumulativa standardnormalfördelningen +PEARSON = PEARSON ## Returnerar korrelationskoefficienten till Pearsons momentprodukt +PERCENTILE = PERCENTIL ## Returnerar den n:te percentilen av värden i ett område +PERCENTRANK = PROCENTRANG ## Returnerar procentrangen för ett värde i en datamängd +PERMUT = PERMUT ## Returnerar antal permutationer för ett givet antal objekt +POISSON = POISSON ## Returnerar Poisson-fördelningen +PROB = SANNOLIKHET ## Returnerar sannolikheten att värden i ett område ligger mellan två gränser +QUARTILE = KVARTIL ## Returnerar kvartilen av en mängd data +RANK = RANG ## Returnerar rangordningen för ett tal i en lista med tal +RSQ = RKV ## Returnerar kvadraten av Pearsons produktmomentkorrelationskoefficient +SKEW = SNEDHET ## Returnerar snedheten för en fördelning +SLOPE = LUTNING ## Returnerar lutningen på en linjär regressionslinje +SMALL = MINSTA ## Returnerar det n:te minsta värdet i en mängd data +STANDARDIZE = STANDARDISERA ## Returnerar ett normaliserat värde +STDEV = STDAV ## Uppskattar standardavvikelsen baserat på ett urval +STDEVA = STDEVA ## Uppskattar standardavvikelsen baserat på ett urval, inklusive tal, text och logiska värden +STDEVP = STDAVP ## Beräknar standardavvikelsen baserat på hela populationen +STDEVPA = STDEVPA ## Beräknar standardavvikelsen baserat på hela populationen, inklusive tal, text och logiska värden +STEYX = STDFELYX ## Returnerar standardfelet för ett förutspått y-värde för varje x-värde i regressionen +TDIST = TFÖRD ## Returnerar Students t-fördelning +TINV = TINV ## Returnerar inversen till Students t-fördelning +TREND = TREND ## Returnerar värden längs en linjär trend +TRIMMEAN = TRIMMEDEL ## Returnerar medelvärdet av mittpunkterna i en datamängd +TTEST = TTEST ## Returnerar sannolikheten beräknad ur Students t-test +VAR = VARIANS ## Uppskattar variansen baserat på ett urval +VARA = VARA ## Uppskattar variansen baserat på ett urval, inklusive tal, text och logiska värden +VARP = VARIANSP ## Beräknar variansen baserat på hela populationen +VARPA = VARPA ## Beräknar variansen baserat på hela populationen, inklusive tal, text och logiska värden +WEIBULL = WEIBULL ## Returnerar Weibull-fördelningen +ZTEST = ZTEST ## Returnerar det ensidiga sannolikhetsvärdet av ett z-test + + +## +## Text functions Textfunktioner +## +ASC = ASC ## Ändrar helbredds (dubbel byte) engelska bokstäver eller katakana inom en teckensträng till tecken med halvt breddsteg (enkel byte) +BAHTTEXT = BAHTTEXT ## Omvandlar ett tal till text med valutaformatet ß (baht) +CHAR = TECKENKOD ## Returnerar tecknet som anges av kod +CLEAN = STÄDA ## Tar bort alla icke utskrivbara tecken i en text +CODE = KOD ## Returnerar en numerisk kod för det första tecknet i en textsträng +CONCATENATE = SAMMANFOGA ## Sammanfogar flera textdelar till en textsträng +DOLLAR = VALUTA ## Omvandlar ett tal till text med valutaformat +EXACT = EXAKT ## Kontrollerar om två textvärden är identiska +FIND = HITTA ## Hittar en text i en annan (skiljer på gemener och versaler) +FINDB = HITTAB ## Hittar en text i en annan (skiljer på gemener och versaler) +FIXED = FASTTAL ## Formaterar ett tal som text med ett fast antal decimaler +JIS = JIS ## Ändrar halvbredds (enkel byte) engelska bokstäver eller katakana inom en teckensträng till tecken med helt breddsteg (dubbel byte) +LEFT = VÄNSTER ## Returnerar tecken längst till vänster i en sträng +LEFTB = VÄNSTERB ## Returnerar tecken längst till vänster i en sträng +LEN = LÄNGD ## Returnerar antalet tecken i en textsträng +LENB = LÄNGDB ## Returnerar antalet tecken i en textsträng +LOWER = GEMENER ## Omvandlar text till gemener +MID = EXTEXT ## Returnerar angivet antal tecken från en text med början vid den position som du anger +MIDB = EXTEXTB ## Returnerar angivet antal tecken från en text med början vid den position som du anger +PHONETIC = PHONETIC ## Returnerar de fonetiska (furigana) tecknen i en textsträng +PROPER = INITIAL ## Ändrar första bokstaven i varje ord i ett textvärde till versal +REPLACE = ERSÄTT ## Ersätter tecken i text +REPLACEB = ERSÄTTB ## Ersätter tecken i text +REPT = REP ## Upprepar en text ett bestämt antal gånger +RIGHT = HÖGER ## Returnerar tecken längst till höger i en sträng +RIGHTB = HÖGERB ## Returnerar tecken längst till höger i en sträng +SEARCH = SÖK ## Hittar ett textvärde i ett annat (skiljer inte på gemener och versaler) +SEARCHB = SÖKB ## Hittar ett textvärde i ett annat (skiljer inte på gemener och versaler) +SUBSTITUTE = BYT.UT ## Ersätter gammal text med ny text i en textsträng +T = T ## Omvandlar argumenten till text +TEXT = TEXT ## Formaterar ett tal och omvandlar det till text +TRIM = RENSA ## Tar bort blanksteg från text +UPPER = VERSALER ## Omvandlar text till versaler +VALUE = TEXTNUM ## Omvandlar ett textargument till ett tal diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/tr/_notes/dwsync.xml b/site/config/PHPExcel/Classes/PHPExcel/locale/tr/_notes/dwsync.xml new file mode 100644 index 0000000..10354cd --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/tr/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060600000000" Dst="-1" /> +<file name="functions" server="web2.pointvirgule.net/valtra/monope/" local="129973851499999999" remote="129984144000000000" Dst="-1" /> +<file name="config" server="web2.pointvirgule.net/valtra/monope/" local="129973851499999999" remote="129984144000000000" Dst="-1" /> +<file name="functions" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851499999999" remote="129997098600000000" Dst="-1" /> +<file name="config" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851499999999" remote="129997098600000000" Dst="-1" /> +<file name="functions" server="62.244.88.111/actions-fendt/lisa/" local="131244559960539183" remote="131260196400000000" Dst="1" /> +<file name="config" server="62.244.88.111/actions-fendt/lisa/" local="131244559960998832" remote="131260196400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/amashow/" local="131414752263368524" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/amashow/" local="131414752263569702" remote="131414680800000000" Dst="2" /> +<file name="config" server="62.244.88.21/deciday/" local="131919461257812403" remote="131826017400000000" Dst="1" /> +<file name="functions" server="62.244.88.21/deciday/" local="131919461259626692" remote="131826017400000000" Dst="1" /> +<file name="config" server="62.244.88.21/deciday_18/" local="131414752263569702" remote="131825945400000000" Dst="2" /> +<file name="functions" server="62.244.88.21/deciday_18/" local="131414752263368524" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/tr/config b/site/config/PHPExcel/Classes/PHPExcel/locale/tr/config new file mode 100644 index 0000000..bd75af6 --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/tr/config @@ -0,0 +1,47 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Settings +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## + + +ArgumentSeparator = ; + + +## +## (For future use) +## +currencySymbol = YTL + + +## +## Excel Error Codes (For future use) +## +NULL = #BOŞ! +DIV0 = #SAYI/0! +VALUE = #DEĞER! +REF = #BAŞV! +NAME = #AD? +NUM = #SAYI! +NA = #YOK diff --git a/site/config/PHPExcel/Classes/PHPExcel/locale/tr/functions b/site/config/PHPExcel/Classes/PHPExcel/locale/tr/functions new file mode 100644 index 0000000..f8cd30f --- /dev/null +++ b/site/config/PHPExcel/Classes/PHPExcel/locale/tr/functions @@ -0,0 +1,438 @@ +## +## PHPExcel +## +## Copyright (c) 2006 - 2011 PHPExcel +## +## 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 library 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 GNU Lesser General Public +## License along with this library; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +## +## @category PHPExcel +## @package PHPExcel_Calculation +## @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel) +## @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +## @version 1.7.8, 2012-10-12 +## +## Data in this file derived from http://www.piuha.fi/excel-function-name-translation/ +## +## + + +## +## Add-in and Automation functions Eklenti ve Otomasyon fonksiyonları +## +GETPIVOTDATA = ÖZETVERİAL ## Bir Özet Tablo raporunda saklanan verileri verir. + + +## +## Cube functions Küp işlevleri +## +CUBEKPIMEMBER = KÜPKPIÜYE ## Kilit performans göstergesi (KPI-Key Performance Indicator) adını, özelliğini ve ölçüsünü verir ve hücredeki ad ve özelliği gösterir. KPI, bir kurumun performansını izlemek için kullanılan aylık brüt kâr ya da üç aylık çalışan giriş çıkışları gibi ölçülebilen bir birimdir. +CUBEMEMBER = KÜPÜYE ## Bir küp hiyerarşisinde bir üyeyi veya kaydı verir. Üye veya kaydın küpte varolduğunu doğrulamak için kullanılır. +CUBEMEMBERPROPERTY = KÜPÜYEÖZELLİĞİ ## Bir küpte bir üyenin özelliğinin değerini verir. Küp içinde üye adının varlığını doğrulamak ve bu üyenin belli özelliklerini getirmek için kullanılır. +CUBERANKEDMEMBER = KÜPÜYESIRASI ## Bir küme içindeki üyenin derecesini veya kaçıncı olduğunu verir. En iyi satış elemanı, veya en iyi on öğrenci gibi bir kümedeki bir veya daha fazla öğeyi getirmek için kullanılır. +CUBESET = KÜPKÜME ## Kümeyi oluşturan ve ardından bu kümeyi Microsoft Office Excel'e getiren sunucudaki küpe küme ifadelerini göndererek hesaplanan üye veya kayıt kümesini tanımlar. +CUBESETCOUNT = KÜPKÜMESAY ## Bir kümedeki öğelerin sayısını getirir. +CUBEVALUE = KÜPDEĞER ## Bir küpten toplam değeri getirir. + + +## +## Database functions Veritabanı işlevleri +## +DAVERAGE = VSEÇORT ## Seçili veritabanı girdilerinin ortalamasını verir. +DCOUNT = VSEÇSAY ## Veritabanında sayı içeren hücre sayısını hesaplar. +DCOUNTA = VSEÇSAYDOLU ## Veritabanındaki boş olmayan hücreleri sayar. +DGET = VAL ## Veritabanından, belirtilen ölçütlerle eşleşen tek bir rapor çıkarır. +DMAX = VSEÇMAK ## Seçili veritabanı girişlerinin en yüksek değerini verir. +DMIN = VSEÇMİN ## Seçili veritabanı girişlerinin en düşük değerini verir. +DPRODUCT = VSEÇÇARP ## Kayıtların belli bir alanında bulunan, bir veritabanındaki ölçütlerle eşleşen değerleri çarpar. +DSTDEV = VSEÇSTDSAPMA ## Seçili veritabanı girişlerinden oluşan bir örneğe dayanarak, standart sapmayı tahmin eder. +DSTDEVP = VSEÇSTDSAPMAS ## Standart sapmayı, seçili veritabanı girişlerinin tüm popülasyonunu esas alarak hesaplar. +DSUM = VSEÇTOPLA ## Kayıtların alan sütununda bulunan, ölçütle eşleşen sayıları toplar. +DVAR = VSEÇVAR ## Seçili veritabanı girişlerinden oluşan bir örneği esas alarak farkı tahmin eder. +DVARP = VSEÇVARS ## Seçili veritabanı girişlerinin tüm popülasyonunu esas alarak farkı hesaplar. + + +## +## Date and time functions Tarih ve saat işlevleri +## +DATE = TARİH ## Belirli bir tarihin seri numarasını verir. +DATEVALUE = TARİHSAYISI ## Metin biçimindeki bir tarihi seri numarasına dönüştürür. +DAY = GÜN ## Seri numarasını, ayın bir gününe dönüştürür. +DAYS360 = GÜN360 ## İki tarih arasındaki gün sayısını, 360 günlük yılı esas alarak hesaplar. +EDATE = SERİTARİH ## Başlangıç tarihinden itibaren, belirtilen ay sayısından önce veya sonraki tarihin seri numarasını verir. +EOMONTH = SERİAY ## Belirtilen sayıda ay önce veya sonraki ayın son gününün seri numarasını verir. +HOUR = SAAT ## Bir seri numarasını saate dönüştürür. +MINUTE = DAKİKA ## Bir seri numarasını dakikaya dönüştürür. +MONTH = AY ## Bir seri numarasını aya dönüştürür. +NETWORKDAYS = TAMİŞGÜNÜ ## İki tarih arasındaki tam çalışma günlerinin sayısını verir. +NOW = ŞİMDİ ## Geçerli tarihin ve saatin seri numarasını verir. +SECOND = SANİYE ## Bir seri numarasını saniyeye dönüştürür. +TIME = ZAMAN ## Belirli bir zamanın seri numarasını verir. +TIMEVALUE = ZAMANSAYISI ## Metin biçimindeki zamanı seri numarasına dönüştürür. +TODAY = BUGÜN ## Bugünün tarihini seri numarasına dönüştürür. +WEEKDAY = HAFTANINGÜNÜ ## Bir seri numarasını, haftanın gününe dönüştürür. +WEEKNUM = HAFTASAY ## Dizisel değerini, haftanın yıl içinde bulunduğu konumu sayısal olarak gösteren sayıya dönüştürür. +WORKDAY = İŞGÜNÜ ## Belirtilen sayıda çalışma günü öncesinin ya da sonrasının tarihinin seri numarasını verir. +YEAR = YIL ## Bir seri numarasını yıla dönüştürür. +YEARFRAC = YILORAN ## Başlangıç_tarihi ve bitiş_tarihi arasındaki tam günleri gösteren yıl kesrini verir. + + +## +## Engineering functions Mühendislik işlevleri +## +BESSELI = BESSELI ## Değiştirilmiş Bessel fonksiyonu In(x)'i verir. +BESSELJ = BESSELJ ## Bessel fonksiyonu Jn(x)'i verir. +BESSELK = BESSELK ## Değiştirilmiş Bessel fonksiyonu Kn(x)'i verir. +BESSELY = BESSELY ## Bessel fonksiyonu Yn(x)'i verir. +BIN2DEC = BIN2DEC ## İkili bir sayıyı, ondalık sayıya dönüştürür. +BIN2HEX = BIN2HEX ## İkili bir sayıyı, onaltılıya dönüştürür. +BIN2OCT = BIN2OCT ## İkili bir sayıyı, sekizliye dönüştürür. +COMPLEX = KARMAŞIK ## Gerçek ve sanal katsayıları, karmaşık sayıya dönüştürür. +CONVERT = ÇEVİR ## Bir sayıyı, bir ölçüm sisteminden bir başka ölçüm sistemine dönüştürür. +DEC2BIN = DEC2BIN ## Ondalık bir sayıyı, ikiliye dönüştürür. +DEC2HEX = DEC2HEX ## Ondalık bir sayıyı, onaltılıya dönüştürür. +DEC2OCT = DEC2OCT ## Ondalık bir sayıyı sekizliğe dönüştürür. +DELTA = DELTA ## İki değerin eşit olup olmadığını sınar. +ERF = HATAİŞLEV ## Hata işlevini verir. +ERFC = TÜMHATAİŞLEV ## Tümleyici hata işlevini verir. +GESTEP = BESINIR ## Bir sayının eşik değerinden büyük olup olmadığını sınar. +HEX2BIN = HEX2BIN ## Onaltılı bir sayıyı ikiliye dönüştürür. +HEX2DEC = HEX2DEC ## Onaltılı bir sayıyı ondalığa dönüştürür. +HEX2OCT = HEX2OCT ## Onaltılı bir sayıyı sekizliğe dönüştürür. +IMABS = SANMUTLAK ## Karmaşık bir sayının mutlak değerini (modül) verir. +IMAGINARY = SANAL ## Karmaşık bir sayının sanal katsayısını verir. +IMARGUMENT = SANBAĞ_DEĞİŞKEN ## Radyanlarla belirtilen bir açı olan teta bağımsız değişkenini verir. +IMCONJUGATE = SANEŞLENEK ## Karmaşık bir sayının karmaşık eşleniğini verir. +IMCOS = SANCOS ## Karmaşık bir sayının kosinüsünü verir. +IMDIV = SANBÖL ## İki karmaşık sayının bölümünü verir. +IMEXP = SANÜS ## Karmaşık bir sayının üssünü verir. +IMLN = SANLN ## Karmaşık bir sayının doğal logaritmasını verir. +IMLOG10 = SANLOG10 ## Karmaşık bir sayının, 10 tabanında logaritmasını verir. +IMLOG2 = SANLOG2 ## Karmaşık bir sayının 2 tabanında logaritmasını verir. +IMPOWER = SANÜSSÜ ## Karmaşık bir sayıyı, bir tamsayı üssüne yükseltilmiş olarak verir. +IMPRODUCT = SANÇARP ## Karmaşık sayıların çarpımını verir. +IMREAL = SANGERÇEK ## Karmaşık bir sayının, gerçek katsayısını verir. +IMSIN = SANSIN ## Karmaşık bir sayının sinüsünü verir. +IMSQRT = SANKAREKÖK ## Karmaşık bir sayının karekökünü verir. +IMSUB = SANÇIKAR ## İki karmaşık sayının farkını verir. +IMSUM = SANTOPLA ## Karmaşık sayıların toplamını verir. +OCT2BIN = OCT2BIN ## Sekizli bir sayıyı ikiliye dönüştürür. +OCT2DEC = OCT2DEC ## Sekizli bir sayıyı ondalığa dönüştürür. +OCT2HEX = OCT2HEX ## Sekizli bir sayıyı onaltılıya dönüştürür. + + +## +## Financial functions Finansal fonksiyonlar +## +ACCRINT = GERÇEKFAİZ ## Dönemsel faiz ödeyen hisse senedine ilişkin tahakkuk eden faizi getirir. +ACCRINTM = GERÇEKFAİZV ## Vadesinde ödeme yapan bir tahvilin tahakkuk etmiş faizini verir. +AMORDEGRC = AMORDEGRC ## Yıpranma katsayısı kullanarak her hesap döneminin değer kaybını verir. +AMORLINC = AMORLINC ## Her hesap dönemi içindeki yıpranmayı verir. +COUPDAYBS = KUPONGÜNBD ## Kupon süresinin başlangıcından alış tarihine kadar olan süredeki gün sayısını verir. +COUPDAYS = KUPONGÜN ## Kupon süresindeki, gün sayısını, alış tarihini de içermek üzere, verir. +COUPDAYSNC = KUPONGÜNDSK ## Alış tarihinden bir sonraki kupon tarihine kadar olan gün sayısını verir. +COUPNCD = KUPONGÜNSKT ## Alış tarihinden bir sonraki kupon tarihini verir. +COUPNUM = KUPONSAYI ## Alış tarihiyle vade tarihi arasında ödenecek kuponların sayısını verir. +COUPPCD = KUPONGÜNÖKT ## Alış tarihinden bir önceki kupon tarihini verir. +CUMIPMT = AİÇVERİMORANI ## İki dönem arasında ödenen kümülatif faizi verir. +CUMPRINC = ANA_PARA_ÖDEMESİ ## İki dönem arasında bir borç üzerine ödenen birikimli temeli verir. +DB = AZALANBAKİYE ## Bir malın belirtilen bir süre içindeki yıpranmasını, sabit azalan bakiye yöntemini kullanarak verir. +DDB = ÇİFTAZALANBAKİYE ## Bir malın belirtilen bir süre içindeki yıpranmasını, çift azalan bakiye yöntemi ya da sizin belirttiğiniz başka bir yöntemi kullanarak verir. +DISC = İNDİRİM ## Bir tahvilin indirim oranını verir. +DOLLARDE = LİRAON ## Kesir olarak tanımlanmış lira fiyatını, ondalık sayı olarak tanımlanmış lira fiyatına dönüştürür. +DOLLARFR = LİRAKES ## Ondalık sayı olarak tanımlanmış lira fiyatını, kesir olarak tanımlanmış lira fiyatına dönüştürür. +DURATION = SÜRE ## Belli aralıklarla faiz ödemesi yapan bir tahvilin yıllık süresini verir. +EFFECT = ETKİN ## Efektif yıllık faiz oranını verir. +FV = ANBD ## Bir yatırımın gelecekteki değerini verir. +FVSCHEDULE = GDPROGRAM ## Bir seri birleşik faiz oranı uyguladıktan sonra, bir başlangıçtaki anaparanın gelecekteki değerini verir. +INTRATE = FAİZORANI ## Tam olarak yatırım yapılmış bir tahvilin faiz oranını verir. +IPMT = FAİZTUTARI ## Bir yatırımın verilen bir süre için faiz ödemesini verir. +IRR = İÇ_VERİM_ORANI ## Bir para akışı serisi için, iç verim oranını verir. +ISPMT = ISPMT ## Yatırımın belirli bir dönemi boyunca ödenen faizi hesaplar. +MDURATION = MSÜRE ## Varsayılan par değeri 10.000.000 lira olan bir tahvil için Macauley değiştirilmiş süreyi verir. +MIRR = D_İÇ_VERİM_ORANI ## Pozitif ve negatif para akışlarının farklı oranlarda finanse edildiği durumlarda, iç verim oranını verir. +NOMINAL = NOMİNAL ## Yıllık nominal faiz oranını verir. +NPER = DÖNEM_SAYISI ## Bir yatırımın dönem sayısını verir. +NPV = NBD ## Bir yatırımın bugünkü net değerini, bir dönemsel para akışları serisine ve bir indirim oranına bağlı olarak verir. +ODDFPRICE = TEKYDEĞER ## Tek bir ilk dönemi olan bir tahvilin değerini, her 100.000.000 lirada bir verir. +ODDFYIELD = TEKYÖDEME ## Tek bir ilk dönemi olan bir tahvilin ödemesini verir. +ODDLPRICE = TEKSDEĞER ## Tek bir son dönemi olan bir tahvilin fiyatını her 10.000.000 lirada bir verir. +ODDLYIELD = TEKSÖDEME ## Tek bir son dönemi olan bir tahvilin ödemesini verir. +PMT = DEVRESEL_ÖDEME ## Bir yıllık dönemsel ödemeyi verir. +PPMT = ANA_PARA_ÖDEMESİ ## Verilen bir süre için, bir yatırımın anaparasına dayanan ödemeyi verir. +PRICE = DEĞER ## Dönemsel faiz ödeyen bir tahvilin fiyatını 10.000.00 liralık değer başına verir. +PRICEDISC = DEĞERİND ## İndirimli bir tahvilin fiyatını 10.000.000 liralık nominal değer başına verir. +PRICEMAT = DEĞERVADE ## Faizini vade sonunda ödeyen bir tahvilin fiyatını 10.000.000 nominal değer başına verir. +PV = BD ## Bir yatırımın bugünkü değerini verir. +RATE = FAİZ_ORANI ## Bir yıllık dönem başına düşen faiz oranını verir. +RECEIVED = GETİRİ ## Tam olarak yatırılmış bir tahvilin vadesinin bitiminde alınan miktarı verir. +SLN = DA ## Bir malın bir dönem içindeki doğrusal yıpranmasını verir. +SYD = YAT ## Bir malın belirli bir dönem için olan amortismanını verir. +TBILLEQ = HTAHEŞ ## Bir Hazine bonosunun bono eşdeğeri ödemesini verir. +TBILLPRICE = HTAHDEĞER ## Bir Hazine bonosunun değerini, 10.000.000 liralık nominal değer başına verir. +TBILLYIELD = HTAHÖDEME ## Bir Hazine bonosunun ödemesini verir. +VDB = DAB ## Bir malın amortismanını, belirlenmiş ya da kısmi bir dönem için, bir azalan bakiye yöntemi kullanarak verir. +XIRR = AİÇVERİMORANI ## Dönemsel olması gerekmeyen bir para akışları programı için, iç verim oranını verir. +XNPV = ANBD ## Dönemsel olması gerekmeyen bir para akışları programı için, bugünkü net değeri verir. +YIELD = ÖDEME ## Belirli aralıklarla faiz ödeyen bir tahvilin ödemesini verir. +YIELDDISC = ÖDEMEİND ## İndirimli bir tahvilin yıllık ödemesini verir; örneğin, bir Hazine bonosunun. +YIELDMAT = ÖDEMEVADE ## Vadesinin bitiminde faiz ödeyen bir tahvilin yıllık ödemesini verir. + + +## +## Information functions Bilgi fonksiyonları +## +CELL = HÜCRE ## Bir hücrenin biçimlendirmesi, konumu ya da içeriği hakkında bilgi verir. +ERROR.TYPE = HATA.TİPİ ## Bir hata türüne ilişkin sayıları verir. +INFO = BİLGİ ## Geçerli işletim ortamı hakkında bilgi verir. +ISBLANK = EBOŞSA ## Değer boşsa, DOĞRU verir. +ISERR = EHATA ## Değer, #YOK dışındaki bir hata değeriyse, DOĞRU verir. +ISERROR = EHATALIYSA ## Değer, herhangi bir hata değeriyse, DOĞRU verir. +ISEVEN = ÇİFTTİR ## Sayı çiftse, DOĞRU verir. +ISLOGICAL = EMANTIKSALSA ## Değer, mantıksal bir değerse, DOĞRU verir. +ISNA = EYOKSA ## Değer, #YOK hata değeriyse, DOĞRU verir. +ISNONTEXT = EMETİNDEĞİLSE ## Değer, metin değilse, DOĞRU verir. +ISNUMBER = ESAYIYSA ## Değer, bir sayıysa, DOĞRU verir. +ISODD = TEKTİR ## Sayı tekse, DOĞRU verir. +ISREF = EREFSE ## Değer bir başvuruysa, DOĞRU verir. +ISTEXT = EMETİNSE ## Değer bir metinse DOĞRU verir. +N = N ## Sayıya dönüştürülmüş bir değer verir. +NA = YOKSAY ## #YOK hata değerini verir. +TYPE = TİP ## Bir değerin veri türünü belirten bir sayı verir. + + +## +## Logical functions Mantıksal fonksiyonlar +## +AND = VE ## Bütün bağımsız değişkenleri DOĞRU ise, DOĞRU verir. +FALSE = YANLIŞ ## YANLIŞ mantıksal değerini verir. +IF = EĞER ## Gerçekleştirilecek bir mantıksal sınama belirtir. +IFERROR = EĞERHATA ## Formül hatalıysa belirttiğiniz değeri verir; bunun dışındaki durumlarda formülün sonucunu verir. +NOT = DEĞİL ## Bağımsız değişkeninin mantığını tersine çevirir. +OR = YADA ## Bağımsız değişkenlerden herhangi birisi DOĞRU ise, DOĞRU verir. +TRUE = DOĞRU ## DOĞRU mantıksal değerini verir. + + +## +## Lookup and reference functions Arama ve Başvuru fonksiyonları +## +ADDRESS = ADRES ## Bir başvuruyu, çalışma sayfasındaki tek bir hücreye metin olarak verir. +AREAS = ALANSAY ## Renvoie le nombre de zones dans une référence. +CHOOSE = ELEMAN ## Değerler listesinden bir değer seçer. +COLUMN = SÜTUN ## Bir başvurunun sütun sayısını verir. +COLUMNS = SÜTUNSAY ## Bir başvurudaki sütunların sayısını verir. +HLOOKUP = YATAYARA ## Bir dizinin en üst satırına bakar ve belirtilen hücrenin değerini verir. +HYPERLINK = KÖPRÜ ## Bir ağ sunucusunda, bir intranette ya da Internet'te depolanan bir belgeyi açan bir kısayol ya da atlama oluşturur. +INDEX = İNDİS ## Başvurudan veya diziden bir değer seçmek için, bir dizin kullanır. +INDIRECT = DOLAYLI ## Metin değeriyle belirtilen bir başvuru verir. +LOOKUP = ARA ## Bir vektördeki veya dizideki değerleri arar. +MATCH = KAÇINCI ## Bir başvurudaki veya dizideki değerleri arar. +OFFSET = KAYDIR ## Verilen bir başvurudan, bir başvuru kaydırmayı verir. +ROW = SATIR ## Bir başvurunun satır sayısını verir. +ROWS = SATIRSAY ## Bir başvurudaki satırların sayısını verir. +RTD = RTD ## COM otomasyonunu destekleyen programdan gerçek zaman verileri alır. +TRANSPOSE = DEVRİK_DÖNÜŞÜM ## Bir dizinin devrik dönüşümünü verir. +VLOOKUP = DÜŞEYARA ## Bir dizinin ilk sütununa bakar ve bir hücrenin değerini vermek için satır boyunca hareket eder. + + +## +## Math and trigonometry functions Matematik ve trigonometri fonksiyonları +## +ABS = MUTLAK ## Bir sayının mutlak değerini verir. +ACOS = ACOS ## Bir sayının ark kosinüsünü verir. +ACOSH = ACOSH ## Bir sayının ters hiperbolik kosinüsünü verir. +ASIN = ASİN ## Bir sayının ark sinüsünü verir. +ASINH = ASİNH ## Bir sayının ters hiperbolik sinüsünü verir. +ATAN = ATAN ## Bir sayının ark tanjantını verir. +ATAN2 = ATAN2 ## Ark tanjantı, x- ve y- koordinatlarından verir. +ATANH = ATANH ## Bir sayının ters hiperbolik tanjantını verir. +CEILING = TAVANAYUVARLA ## Bir sayıyı, en yakın tamsayıya ya da en yakın katına yuvarlar. +COMBIN = KOMBİNASYON ## Verilen sayıda öğenin kombinasyon sayısını verir. +COS = COS ## Bir sayının kosinüsünü verir. +COSH = COSH ## Bir sayının hiperbolik kosinüsünü verir. +DEGREES = DERECE ## Radyanları dereceye dönüştürür. +EVEN = ÇİFT ## Bir sayıyı, en yakın daha büyük çift tamsayıya yuvarlar. +EXP = ÜS ## e'yi, verilen bir sayının üssüne yükseltilmiş olarak verir. +FACT = ÇARPINIM ## Bir sayının faktörünü verir. +FACTDOUBLE = ÇİFTFAKTÖR ## Bir sayının çift çarpınımını verir. +FLOOR = TABANAYUVARLA ## Bir sayıyı, daha küçük sayıya, sıfıra yakınsayarak yuvarlar. +GCD = OBEB ## En büyük ortak böleni verir. +INT = TAMSAYI ## Bir sayıyı aşağıya doğru en yakın tamsayıya yuvarlar. +LCM = OKEK ## En küçük ortak katı verir. +LN = LN ## Bir sayının doğal logaritmasını verir. +LOG = LOG ## Bir sayının, belirtilen bir tabandaki logaritmasını verir. +LOG10 = LOG10 ## Bir sayının 10 tabanında logaritmasını verir. +MDETERM = DETERMİNANT ## Bir dizinin dizey determinantını verir. +MINVERSE = DİZEY_TERS ## Bir dizinin dizey tersini verir. +MMULT = DÇARP ## İki dizinin dizey çarpımını verir. +MOD = MODÜLO ## Bölmeden kalanı verir. +MROUND = KYUVARLA ## İstenen kata yuvarlanmış bir sayı verir. +MULTINOMIAL = ÇOKTERİMLİ ## Bir sayılar kümesinin çok terimlisini verir. +ODD = TEK ## Bir sayıyı en yakın daha büyük tek sayıya yuvarlar. +PI = Pİ ## Pi değerini verir. +POWER = KUVVET ## Bir üsse yükseltilmiş sayının sonucunu verir. +PRODUCT = ÇARPIM ## Bağımsız değişkenlerini çarpar. +QUOTIENT = BÖLÜM ## Bir bölme işleminin tamsayı kısmını verir. +RADIANS = RADYAN ## Dereceleri radyanlara dönüştürür. +RAND = S_SAYI_ÜRET ## 0 ile 1 arasında rastgele bir sayı verir. +RANDBETWEEN = RASTGELEARALIK ## Belirttiğiniz sayılar arasında rastgele bir sayı verir. +ROMAN = ROMEN ## Bir normal rakamı, metin olarak, romen rakamına çevirir. +ROUND = YUVARLA ## Bir sayıyı, belirtilen basamak sayısına yuvarlar. +ROUNDDOWN = AŞAĞIYUVARLA ## Bir sayıyı, daha küçük sayıya, sıfıra yakınsayarak yuvarlar. +ROUNDUP = YUKARIYUVARLA ## Bir sayıyı daha büyük sayıya, sıfırdan ıraksayarak yuvarlar. +SERIESSUM = SERİTOPLA ## Bir üs serisinin toplamını, formüle bağlı olarak verir. +SIGN = İŞARET ## Bir sayının işaretini verir. +SIN = SİN ## Verilen bir açının sinüsünü verir. +SINH = SİNH ## Bir sayının hiperbolik sinüsünü verir. +SQRT = KAREKÖK ## Pozitif bir karekök verir. +SQRTPI = KAREKÖKPİ ## (* Pi sayısının) kare kökünü verir. +SUBTOTAL = ALTTOPLAM ## Bir listedeki ya da veritabanındaki bir alt toplamı verir. +SUM = TOPLA ## Bağımsız değişkenlerini toplar. +SUMIF = ETOPLA ## Verilen ölçütle belirlenen hücreleri toplar. +SUMIFS = SUMIFS ## Bir aralıktaki, birden fazla ölçüte uyan hücreleri ekler. +SUMPRODUCT = TOPLA.ÇARPIM ## İlişkili dizi bileşenlerinin çarpımlarının toplamını verir. +SUMSQ = TOPKARE ## Bağımsız değişkenlerin karelerinin toplamını verir. +SUMX2MY2 = TOPX2EY2 ## İki dizideki ilişkili değerlerin farkının toplamını verir. +SUMX2PY2 = TOPX2AY2 ## İki dizideki ilişkili değerlerin karelerinin toplamının toplamını verir. +SUMXMY2 = TOPXEY2 ## İki dizideki ilişkili değerlerin farklarının karelerinin toplamını verir. +TAN = TAN ## Bir sayının tanjantını verir. +TANH = TANH ## Bir sayının hiperbolik tanjantını verir. +TRUNC = NSAT ## Bir sayının, tamsayı durumuna gelecek şekilde, fazlalıklarını atar. + + +## +## Statistical functions İstatistiksel fonksiyonlar +## +AVEDEV = ORTSAP ## Veri noktalarının ortalamalarından mutlak sapmalarının ortalamasını verir. +AVERAGE = ORTALAMA ## Bağımsız değişkenlerinin ortalamasını verir. +AVERAGEA = ORTALAMAA ## Bağımsız değişkenlerinin, sayılar, metin ve mantıksal değerleri içermek üzere ortalamasını verir. +AVERAGEIF = EĞERORTALAMA ## Verili ölçütü karşılayan bir aralıktaki bütün hücrelerin ortalamasını (aritmetik ortalama) hesaplar. +AVERAGEIFS = EĞERLERORTALAMA ## Birden çok ölçüte uyan tüm hücrelerin ortalamasını (aritmetik ortalama) hesaplar. +BETADIST = BETADAĞ ## Beta birikimli dağılım fonksiyonunu verir. +BETAINV = BETATERS ## Belirli bir beta dağılımı için birikimli dağılım fonksiyonunun tersini verir. +BINOMDIST = BİNOMDAĞ ## Tek terimli binom dağılımı olasılığını verir. +CHIDIST = KİKAREDAĞ ## Kikare dağılımın tek kuyruklu olasılığını verir. +CHIINV = KİKARETERS ## Kikare dağılımın kuyruklu olasılığının tersini verir. +CHITEST = KİKARETEST ## Bağımsızlık sınamalarını verir. +CONFIDENCE = GÜVENİRLİK ## Bir popülasyon ortalaması için güvenirlik aralığını verir. +CORREL = KORELASYON ## İki veri kümesi arasındaki bağlantı katsayısını verir. +COUNT = BAĞ_DEĞ_SAY ## Bağımsız değişkenler listesinde kaç tane sayı bulunduğunu sayar. +COUNTA = BAĞ_DEĞ_DOLU_SAY ## Bağımsız değişkenler listesinde kaç tane değer bulunduğunu sayar. +COUNTBLANK = BOŞLUKSAY ## Aralıktaki boş hücre sayısını hesaplar. +COUNTIF = EĞERSAY ## Verilen ölçütlere uyan bir aralık içindeki hücreleri sayar. +COUNTIFS = ÇOKEĞERSAY ## Birden çok ölçüte uyan bir aralık içindeki hücreleri sayar. +COVAR = KOVARYANS ## Eşleştirilmiş sapmaların ortalaması olan kovaryansı verir. +CRITBINOM = KRİTİKBİNOM ## Birikimli binom dağılımının bir ölçüt değerinden küçük veya ölçüt değerine eşit olduğu en küçük değeri verir. +DEVSQ = SAPKARE ## Sapmaların karelerinin toplamını verir. +EXPONDIST = ÜSTELDAĞ ## Üstel dağılımı verir. +FDIST = FDAĞ ## F olasılık dağılımını verir. +FINV = FTERS ## F olasılık dağılımının tersini verir. +FISHER = FISHER ## Fisher dönüşümünü verir. +FISHERINV = FISHERTERS ## Fisher dönüşümünün tersini verir. +FORECAST = TAHMİN ## Bir doğrusal eğilim boyunca bir değer verir. +FREQUENCY = SIKLIK ## Bir sıklık dağılımını, dikey bir dizi olarak verir. +FTEST = FTEST ## Bir F-test'in sonucunu verir. +GAMMADIST = GAMADAĞ ## Gama dağılımını verir. +GAMMAINV = GAMATERS ## Gama kümülatif dağılımının tersini verir. +GAMMALN = GAMALN ## Gama fonksiyonunun (?(x)) doğal logaritmasını verir. +GEOMEAN = GEOORT ## Geometrik ortayı verir. +GROWTH = BÜYÜME ## Üstel bir eğilim boyunca değerler verir. +HARMEAN = HARORT ## Harmonik ortayı verir. +HYPGEOMDIST = HİPERGEOMDAĞ ## Hipergeometrik dağılımı verir. +INTERCEPT = KESMENOKTASI ## Doğrusal çakıştırma çizgisinin kesişme noktasını verir. +KURT = BASIKLIK ## Bir veri kümesinin basıklığını verir. +LARGE = BÜYÜK ## Bir veri kümesinde k. en büyük değeri verir. +LINEST = DOT ## Doğrusal bir eğilimin parametrelerini verir. +LOGEST = LOT ## Üstel bir eğilimin parametrelerini verir. +LOGINV = LOGTERS ## Bir lognormal dağılımının tersini verir. +LOGNORMDIST = LOGNORMDAĞ ## Birikimli lognormal dağılımını verir. +MAX = MAK ## Bir bağımsız değişkenler listesindeki en büyük değeri verir. +MAXA = MAKA ## Bir bağımsız değişkenler listesindeki, sayılar, metin ve mantıksal değerleri içermek üzere, en büyük değeri verir. +MEDIAN = ORTANCA ## Belirtilen sayıların orta değerini verir. +MIN = MİN ## Bir bağımsız değişkenler listesindeki en küçük değeri verir. +MINA = MİNA ## Bir bağımsız değişkenler listesindeki, sayılar, metin ve mantıksal değerleri de içermek üzere, en küçük değeri verir. +MODE = ENÇOK_OLAN ## Bir veri kümesindeki en sık rastlanan değeri verir. +NEGBINOMDIST = NEGBİNOMDAĞ ## Negatif binom dağılımını verir. +NORMDIST = NORMDAĞ ## Normal birikimli dağılımı verir. +NORMINV = NORMTERS ## Normal kümülatif dağılımın tersini verir. +NORMSDIST = NORMSDAĞ ## Standart normal birikimli dağılımı verir. +NORMSINV = NORMSTERS ## Standart normal birikimli dağılımın tersini verir. +PEARSON = PEARSON ## Pearson çarpım moment korelasyon katsayısını verir. +PERCENTILE = YÜZDEBİRLİK ## Bir aralık içerisinde bulunan değerlerin k. frekans toplamını verir. +PERCENTRANK = YÜZDERANK ## Bir veri kümesindeki bir değerin yüzde mertebesini verir. +PERMUT = PERMÜTASYON ## Verilen sayıda nesne için permütasyon sayısını verir. +POISSON = POISSON ## Poisson dağılımını verir. +PROB = OLASILIK ## Bir aralıktaki değerlerin iki sınır arasında olması olasılığını verir. +QUARTILE = DÖRTTEBİRLİK ## Bir veri kümesinin dörtte birliğini verir. +RANK = RANK ## Bir sayılar listesinde bir sayının mertebesini verir. +RSQ = RKARE ## Pearson çarpım moment korelasyon katsayısının karesini verir. +SKEW = ÇARPIKLIK ## Bir dağılımın çarpıklığını verir. +SLOPE = EĞİM ## Doğrusal çakışma çizgisinin eğimini verir. +SMALL = KÜÇÜK ## Bir veri kümesinde k. en küçük değeri verir. +STANDARDIZE = STANDARTLAŞTIRMA ## Normalleştirilmiş bir değer verir. +STDEV = STDSAPMA ## Bir örneğe dayanarak standart sapmayı tahmin eder. +STDEVA = STDSAPMAA ## Standart sapmayı, sayılar, metin ve mantıksal değerleri içermek üzere, bir örneğe bağlı olarak tahmin eder. +STDEVP = STDSAPMAS ## Standart sapmayı, tüm popülasyona bağlı olarak hesaplar. +STDEVPA = STDSAPMASA ## Standart sapmayı, sayılar, metin ve mantıksal değerleri içermek üzere, tüm popülasyona bağlı olarak hesaplar. +STEYX = STHYX ## Regresyondaki her x için tahmini y değerinin standart hatasını verir. +TDIST = TDAĞ ## T-dağılımını verir. +TINV = TTERS ## T-dağılımının tersini verir. +TREND = EĞİLİM ## Doğrusal bir eğilim boyunca değerler verir. +TRIMMEAN = KIRPORTALAMA ## Bir veri kümesinin içinin ortalamasını verir. +TTEST = TTEST ## T-test'le ilişkilendirilmiş olasılığı verir. +VAR = VAR ## Varyansı, bir örneğe bağlı olarak tahmin eder. +VARA = VARA ## Varyansı, sayılar, metin ve mantıksal değerleri içermek üzere, bir örneğe bağlı olarak tahmin eder. +VARP = VARS ## Varyansı, tüm popülasyona dayanarak hesaplar. +VARPA = VARSA ## Varyansı, sayılar, metin ve mantıksal değerleri içermek üzere, tüm popülasyona bağlı olarak hesaplar. +WEIBULL = WEIBULL ## Weibull dağılımını hesaplar. +ZTEST = ZTEST ## Z-testinin tek kuyruklu olasılık değerini hesaplar. + + +## +## Text functions Metin fonksiyonları +## +ASC = ASC ## Bir karakter dizesindeki çift enli (iki bayt) İngilizce harfleri veya katakanayı yarım enli (tek bayt) karakterlerle değiştirir. +BAHTTEXT = BAHTTEXT ## Sayıyı, ß (baht) para birimi biçimini kullanarak metne dönüştürür. +CHAR = DAMGA ## Kod sayısıyla belirtilen karakteri verir. +CLEAN = TEMİZ ## Metindeki bütün yazdırılamaz karakterleri kaldırır. +CODE = KOD ## Bir metin dizesindeki ilk karakter için sayısal bir kod verir. +CONCATENATE = BİRLEŞTİR ## Pek çok metin öğesini bir metin öğesi olarak birleştirir. +DOLLAR = LİRA ## Bir sayıyı YTL (yeni Türk lirası) para birimi biçimini kullanarak metne dönüştürür. +EXACT = ÖZDEŞ ## İki metin değerinin özdeş olup olmadığını anlamak için, değerleri denetler. +FIND = BUL ## Bir metin değerini, bir başkasının içinde bulur (büyük küçük harf duyarlıdır). +FINDB = BULB ## Bir metin değerini, bir başkasının içinde bulur (büyük küçük harf duyarlıdır). +FIXED = SAYIDÜZENLE ## Bir sayıyı, sabit sayıda ondalıkla, metin olarak biçimlendirir. +JIS = JIS ## Bir karakter dizesindeki tek enli (tek bayt) İngilizce harfleri veya katakanayı çift enli (iki bayt) karakterlerle değiştirir. +LEFT = SOL ## Bir metin değerinden en soldaki karakterleri verir. +LEFTB = SOLB ## Bir metin değerinden en soldaki karakterleri verir. +LEN = UZUNLUK ## Bir metin dizesindeki karakter sayısını verir. +LENB = UZUNLUKB ## Bir metin dizesindeki karakter sayısını verir. +LOWER = KÜÇÜKHARF ## Metni küçük harfe çevirir. +MID = ORTA ## Bir metin dizesinden belirli sayıda karakteri, belirttiğiniz konumdan başlamak üzere verir. +MIDB = ORTAB ## Bir metin dizesinden belirli sayıda karakteri, belirttiğiniz konumdan başlamak üzere verir. +PHONETIC = SES ## Metin dizesinden ses (furigana) karakterlerini ayıklar. +PROPER = YAZIM.DÜZENİ ## Bir metin değerinin her bir sözcüğünün ilk harfini büyük harfe çevirir. +REPLACE = DEĞİŞTİR ## Metnin içindeki karakterleri değiştirir. +REPLACEB = DEĞİŞTİRB ## Metnin içindeki karakterleri değiştirir. +REPT = YİNELE ## Metni belirtilen sayıda yineler. +RIGHT = SAĞ ## Bir metin değerinden en sağdaki karakterleri verir. +RIGHTB = SAĞB ## Bir metin değerinden en sağdaki karakterleri verir. +SEARCH = BUL ## Bir metin değerini, bir başkasının içinde bulur (büyük küçük harf duyarlı değildir). +SEARCHB = BULB ## Bir metin değerini, bir başkasının içinde bulur (büyük küçük harf duyarlı değildir). +SUBSTITUTE = YERİNEKOY ## Bir metin dizesinde, eski metnin yerine yeni metin koyar. +T = M ## Bağımsız değerlerini metne dönüştürür. +TEXT = METNEÇEVİR ## Bir sayıyı biçimlendirir ve metne dönüştürür. +TRIM = KIRP ## Metindeki boşlukları kaldırır. +UPPER = BÜYÜKHARF ## Metni büyük harfe çevirir. +VALUE = SAYIYAÇEVİR ## Bir metin bağımsız değişkenini sayıya dönüştürür. diff --git a/site/config/PHPExcel/Classes/_notes/dwsync.xml b/site/config/PHPExcel/Classes/_notes/dwsync.xml new file mode 100644 index 0000000..4bb42d5 --- /dev/null +++ b/site/config/PHPExcel/Classes/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972060600000000" Dst="-1" /> +<file name="PHPExcel.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851399999999" remote="129984143400000000" Dst="-1" /> +<file name="PHPExcel.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851399999999" remote="129997098000000000" Dst="-1" /> +<file name="PHPExcel.php" server="62.244.88.111/actions-fendt/lisa/" local="131244559867162915" remote="131260196400000000" Dst="1" /> +<file name="PHPExcel.php" server="62.244.88.21/amashow/" local="131414752183398983" remote="131414680800000000" Dst="2" /> +<file name="PHPExcel.php" server="62.244.88.21/deciday/" local="131919461358068351" remote="131826017400000000" Dst="1" /> +<file name="PHPExcel.php" server="62.244.88.21/deciday_18/" local="131414752183398983" remote="131825945400000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/Benchmark.html b/site/config/PHPExcel/Documentation/API/JAMA/Benchmark.html new file mode 100644 index 0000000..dc0b990 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/Benchmark.html @@ -0,0 +1,456 @@ +<html> +<head> +<title>Docs For Class Benchmark</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: Benchmark</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/benchmark.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">Example of use of Matrix Class, featuring magic squares.</div><br /><br /> + + + + + + + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../JAMA/Benchmark.html#var$stat">$stat</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../JAMA/Benchmark.html#method__construct">__construct</a></li> + <li><a href="../JAMA/Benchmark.html#methoddisplayStats">displayStats</a></li> + <li><a href="../JAMA/Benchmark.html#methodmicrotime_float">microtime_float</a></li> + <li><a href="../JAMA/Benchmark.html#methodrun">run</a></li> + <li><a href="../JAMA/Benchmark.html#methodrunCholesky">runCholesky</a></li> + <li><a href="../JAMA/Benchmark.html#methodrunEig">runEig</a></li> + <li><a href="../JAMA/Benchmark.html#methodrunLU">runLU</a></li> + <li><a href="../JAMA/Benchmark.html#methodrunQR">runQR</a></li> + <li><a href="../JAMA/Benchmark.html#methodrunSVD">runSVD</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 16]<br /> +Example of use of Matrix Class, featuring magic squares.<br /><br /></div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$stat"></a> + <p></p> + <h4>$stat = <span class="value"></span></h4> + <p>[line 17]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 159]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Benchmark __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddisplayStats"></a> + <h3>method displayStats <span class="smalllinenumber">[line 30]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void displayStats( +[ +$times = null])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$times</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmicrotime_float"></a> + <h3>method microtime_float <span class="smalllinenumber">[line 23]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void microtime_float( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Simple function to replicate PHP 5 behaviour<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrun"></a> + <h3>method run <span class="smalllinenumber">[line 123]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void run( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrunCholesky"></a> + <h3>method runCholesky <span class="smalllinenumber">[line 93]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void runCholesky( +[ +$n = 4], [ +$t = 100])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$t</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrunEig"></a> + <h3>method runEig <span class="smalllinenumber">[line 48]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void runEig( +[ +$n = 4], [ +$t = 100])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$t</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrunLU"></a> + <h3>method runLU <span class="smalllinenumber">[line 63]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void runLU( +[ +$n = 4], [ +$t = 100])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$t</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrunQR"></a> + <h3>method runQR <span class="smalllinenumber">[line 78]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void runQR( +[ +$n = 4], [ +$t = 100])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$t</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrunSVD"></a> + <h3>method runSVD <span class="smalllinenumber">[line 108]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void runSVD( +[ +$n = 4], [ +$t = 100])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$t</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/CholeskyDecomposition.html b/site/config/PHPExcel/Documentation/API/JAMA/CholeskyDecomposition.html new file mode 100644 index 0000000..85cb0d4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/CholeskyDecomposition.html @@ -0,0 +1,320 @@ +<html> +<head> +<title>Docs For Class CholeskyDecomposition</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: CholeskyDecomposition</h1> +Source Location: /PHPExcel/Shared/JAMA/CholeskyDecomposition.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description"></div><br /><br /> +<h4>Author(s):</h4> +<ul> + <li>Michael Bommarito</li> + <li>Paul Meagher</li> + </ul> + + + + + + +<h4>Version:</h4> +<ul> + <li>1.2</li> +</ul> + + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../JAMA/CholeskyDecomposition.html#method__construct">__construct</a></li> + <li><a href="../JAMA/CholeskyDecomposition.html#methodgetL">getL</a></li> + <li><a href="../JAMA/CholeskyDecomposition.html#methodisSPD">isSPD</a></li> + <li><a href="../JAMA/CholeskyDecomposition.html#methodsolve">solve</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html#a18">18</a>]<br /> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Bommarito</td> + </tr> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Paul Meagher</td> + </tr> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.2</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html#a48">48</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>CholeskyDecomposition __construct( +[mixed +$A = null])</code> + </td></tr></table> + </td></tr></table><br /> + + CholeskyDecomposition<br /><br /><p>Class constructor - decomposes symmetric positive definite matrix</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$A</b>&nbsp;&nbsp;</td> + <td>Matrix square symmetric positive definite matrix</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetL"></a> + <h3>method getL <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html#a97">97</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix getL( +)</code> + </td></tr></table> + </td></tr></table><br /> + + getL<br /><br /><p>Return triangular factor.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Lower triangular matrix</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisSPD"></a> + <h3>method isSPD <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html#a86">86</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isSPD( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is the matrix symmetric and positive definite?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsolve"></a> + <h3>method solve <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html#a108">108</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix solve( +[$B +$B = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Solve A*X = B<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>L * L' * X = B</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">$B&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Row-equal matrix</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:27 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/EigenvalueDecomposition.html b/site/config/PHPExcel/Documentation/API/JAMA/EigenvalueDecomposition.html new file mode 100644 index 0000000..754675a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/EigenvalueDecomposition.html @@ -0,0 +1,331 @@ +<html> +<head> +<title>Docs For Class EigenvalueDecomposition</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: EigenvalueDecomposition</h1> +Source Location: /PHPExcel/Shared/JAMA/EigenvalueDecomposition.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description"></div><br /><br /> +<h4>Author(s):</h4> +<ul> + <li>Paul Meagher</li> + </ul> + + + + + + +<h4>Version:</h4> +<ul> + <li>1.1</li> +</ul> + + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../JAMA/EigenvalueDecomposition.html#method__construct">__construct</a></li> + <li><a href="../JAMA/EigenvalueDecomposition.html#methodgetD">getD</a></li> + <li><a href="../JAMA/EigenvalueDecomposition.html#methodgetImagEigenvalues">getImagEigenvalues</a></li> + <li><a href="../JAMA/EigenvalueDecomposition.html#methodgetRealEigenvalues">getRealEigenvalues</a></li> + <li><a href="../JAMA/EigenvalueDecomposition.html#methodgetV">getV</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html#a24">24</a>]<br /> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Paul Meagher</td> + </tr> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.1</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td>PHP</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html#a782">782</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Structure __construct( +A +$Arg)</code> + </td></tr></table> + </td></tr></table><br /> + + Constructor: Check for symmetry, then construct the eigenvalue decomposition<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>to access D and V.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">A&nbsp;&nbsp;</td> + <td><b>$Arg</b>&nbsp;&nbsp;</td> + <td>Square matrix</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetD"></a> + <h3>method getD <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html#a849">849</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>D getD( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the block diagonal eigenvalue matrix<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetImagEigenvalues"></a> + <h3>method getImagEigenvalues <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html#a838">838</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>imag(diag(D)) getImagEigenvalues( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the imaginary parts of the eigenvalues<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRealEigenvalues"></a> + <h3>method getRealEigenvalues <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html#a827">827</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>real(diag(D)) getRealEigenvalues( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the real parts of the eigenvalues<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetV"></a> + <h3>method getV <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html#a816">816</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>V getV( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the eigenvector matrix<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/MagicSquareExample.html b/site/config/PHPExcel/Documentation/API/JAMA/MagicSquareExample.html new file mode 100644 index 0000000..a52ef30 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/MagicSquareExample.html @@ -0,0 +1,225 @@ +<html> +<head> +<title>Docs For Class MagicSquareExample</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: MagicSquareExample</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/MagicSquareExample.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">Example of use of Matrix Class, featuring magic squares.</div><br /><br /> + + + + + + + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../JAMA/MagicSquareExample.html#methodmagic">magic</a></li> + <li><a href="../JAMA/MagicSquareExample.html#methodmain">main</a></li> + <li><a href="../JAMA/MagicSquareExample.html#methodmicrotime_float">microtime_float</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 11]<br /> +Example of use of Matrix Class, featuring magic squares.<br /><br /></div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodmagic"></a> + <h3>method magic <span class="smalllinenumber">[line 17]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void magic( +int +$n)</code> + </td></tr></table> + </td></tr></table><br /> + + Generate magic square test matrix.<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td>n dimension of matrix</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmain"></a> + <h3>method main <span class="smalllinenumber">[line 100]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void main( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Tests LU, QR, SVD and symmetric Eig decompositions.<br /><br /><p>n = order of magic square. trace = diagonal sum, should be the magic sum, (n^3 + n)/2. max_eig = maximum eigenvalue of (A + A')/2, should equal trace. rank = linear algebraic rank, should equal n if n is odd, be less than n if n is even. cond = L_2 condition number, ratio of singular values. lu_res = test of LU factorization, norm1(L*U-A(p,:))/(n*eps). qr_res = test of QR factorization, norm1(Q*R-A)/(n*eps).</p><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmicrotime_float"></a> + <h3>method microtime_float <span class="smalllinenumber">[line 83]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void microtime_float( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Simple function to replicate PHP 5 behaviour<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:40 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html b/site/config/PHPExcel/Documentation/API/JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html new file mode 100644 index 0000000..816d7e7 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html @@ -0,0 +1,481 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_JAMA_LUDecomposition</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_JAMA_LUDecomposition</h1> +Source Location: /PHPExcel/Shared/JAMA/LUDecomposition.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description"></div><br /><br /> +<h4>Author(s):</h4> +<ul> + <li>Michael Bommarito</li> + <li>Paul Meagher</li> + <li>Bartosz Matosiuk</li> + </ul> + + + + + + +<h4>Version:</h4> +<ul> + <li>1.1</li> +</ul> + + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#constMatrixSingularException">MatrixSingularException</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#constMatrixSquareException">MatrixSquareException</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#method__construct">__construct</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methoddet">det</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetDoublePivot">getDoublePivot</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetL">getL</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetPivot">getPivot</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetU">getU</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodisNonsingular">isNonsingular</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodsolve">solve</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html#a21">21</a>]<br /> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Bommarito</td> + </tr> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Paul Meagher</td> + </tr> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Bartosz Matosiuk</td> + </tr> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.1</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td>PHP</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html#a63">63</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Structure __construct( +$A +$A)</code> + </td></tr></table> + </td></tr></table><br /> + + LU Decomposition constructor.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>to access L, U and piv.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">$A&nbsp;&nbsp;</td> + <td><b>$A</b>&nbsp;&nbsp;</td> + <td>Rectangular matrix</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddet"></a> + <h3>method det <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html#a203">203</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array det( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Count determinants<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>d matrix deterninat</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDoublePivot"></a> + <h3>method getDoublePivot <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html#a178">178</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getDoublePivot( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Alias for getPivot<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetPivot">PHPExcel_Shared_JAMA_LUDecomposition::getPivot()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetL"></a> + <h3>method getL <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html#a128">128</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getL( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get lower triangular factor.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Lower triangular factor</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPivot"></a> + <h3>method getPivot <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html#a168">168</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getPivot( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return pivot permutation vector.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Pivot vector</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetU"></a> + <h3>method getU <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html#a149">149</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getU( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get upper triangular factor.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Upper triangular factor</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisNonsingular"></a> + <h3>method isNonsingular <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html#a188">188</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>true isNonsingular( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is the matrix nonsingular?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>if U, and hence A, is nonsingular.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsolve"></a> + <h3>method solve <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html#a224">224</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>X solve( +$B +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + Solve A*X = B<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>so that L*U*X = B(piv,:)</td> + </tr> + <tr> + <td><b>exception:</b>&nbsp;&nbsp;</td><td>RuntimeException Matrix is singular.</td> + </tr> + <tr> + <td><b>exception:</b>&nbsp;&nbsp;</td><td>IllegalArgumentException Matrix row dimensions must agree.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">$B&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>A Matrix with as many rows as A and any number of columns.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constMatrixSingularException"></a> + <p></p> + <h4>MatrixSingularException = <span class="value">&nbsp;&quot;Can&nbsp;only&nbsp;perform&nbsp;operation&nbsp;on&nbsp;singular&nbsp;matrix.&quot;</span></h4> + <p>[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html#a23">23</a>]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constMatrixSquareException"></a> + <p></p> + <h4>MatrixSquareException = <span class="value">&nbsp;&quot;Mismatched&nbsp;Row&nbsp;dimension&quot;</span></h4> + <p>[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html#a24">24</a>]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:40 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/PHPExcel_Shared_JAMA_Matrix.html b/site/config/PHPExcel/Documentation/API/JAMA/PHPExcel_Shared_JAMA_Matrix.html new file mode 100644 index 0000000..39db0ed --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/PHPExcel_Shared_JAMA_Matrix.html @@ -0,0 +1,1461 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_JAMA_Matrix</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_JAMA_Matrix</h1> +Source Location: /PHPExcel/Shared/JAMA/Matrix.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description"></div><br /><br /> + + + + + + + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#var$A">$A</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#constArgumentBoundsException">ArgumentBoundsException</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#constArgumentTypeException">ArgumentTypeException</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#constArrayLengthException">ArrayLengthException</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#constMatrixDimensionException">MatrixDimensionException</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#constPolymorphicArgumentException">PolymorphicArgumentException</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayLeftDivide">arrayLeftDivide</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayLeftDivideEquals">arrayLeftDivideEquals</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#method__construct">__construct</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayRightDivide">arrayRightDivide</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayRightDivideEquals">arrayRightDivideEquals</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayTimes">arrayTimes</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayTimesEquals">arrayTimesEquals</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodcheckMatrixDimensions">checkMatrixDimensions</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodconcat">concat</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methoddet">det</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methoddiagonal">diagonal</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodget">get</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetArray">getArray</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetColumnDimension">getColumnDimension</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetMatrix">getMatrix</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetMatrixByCol">getMatrixByCol</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetMatrixByRow">getMatrixByRow</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetRowDimension">getRowDimension</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodidentity">identity</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodinverse">inverse</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodminus">minus</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodminusEquals">minusEquals</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodplus">plus</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodplusEquals">plusEquals</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodpower">power</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodset">set</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodsolve">solve</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodtimes">times</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodtrace">trace</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodtranspose">transpose</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html#methoduminus">uminus</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 27]<br /> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$A"></a> + <p></p> + <h4>$A = <span class="value">array()</span></h4> + <p>[line 42]</p> + Matrix storage<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodarrayLeftDivide"></a> + <h3>method arrayLeftDivide <span class="smalllinenumber">[line 778]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix arrayLeftDivide( +Matrix +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + arrayLeftDivide<br /><br /><p>Element-by-element Left division A / B</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Division result</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">Matrix&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix B</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodarrayLeftDivideEquals"></a> + <h3>method arrayLeftDivideEquals <span class="smalllinenumber">[line 815]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix arrayLeftDivideEquals( +mixed +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + arrayLeftDivideEquals<br /><br /><p>Element-by-element Left division Aij = Aij / Bij</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Matrix Aij</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix/Array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 66]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Shared_JAMA_Matrix __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Polymorphic constructor<br /><br /><p>As PHP has no support for polymorphic constructors, we hack our own sort of polymorphism using func_num_args, func_get_arg, and gettype. In essence, we're just implementing a simple RTTI filter and calling the appropriate constructor.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodarrayRightDivide"></a> + <h3>method arrayRightDivide <span class="smalllinenumber">[line 685]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix arrayRightDivide( +Matrix +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + arrayRightDivide<br /><br /><p>Element-by-element right division A / B</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Division result</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">Matrix&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix B</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodarrayRightDivideEquals"></a> + <h3>method arrayRightDivideEquals <span class="smalllinenumber">[line 741]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix arrayRightDivideEquals( +mixed +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + arrayRightDivideEquals<br /><br /><p>Element-by-element right division Aij = Aij / Bij</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Matrix Aij</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix/Array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodarrayTimes"></a> + <h3>method arrayTimes <span class="smalllinenumber">[line 597]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix arrayTimes( +mixed +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + arrayTimes<br /><br /><p>Element-by-element multiplication Cij = Aij * Bij</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Matrix Cij</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix/Array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodarrayTimesEquals"></a> + <h3>method arrayTimesEquals <span class="smalllinenumber">[line 634]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix arrayTimesEquals( +mixed +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + arrayTimesEquals<br /><br /><p>Element-by-element multiplication Aij = Aij * Bij</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Matrix Aij</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix/Array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcheckMatrixDimensions"></a> + <h3>method checkMatrixDimensions <span class="smalllinenumber">[line 272]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean checkMatrixDimensions( +[Matrix +$B = null])</code> + </td></tr></table> + </td></tr></table><br /> + + checkMatrixDimensions<br /><br /><p>Is matrix B the same size?</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">Matrix&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix B</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodconcat"></a> + <h3>method concat <span class="smalllinenumber">[line 992]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix concat( +mixed +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + concat<br /><br /><p>A = A &amp; B</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Sum</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix/Array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddet"></a> + <h3>method det <span class="smalllinenumber">[line 1053]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float det( +)</code> + </td></tr></table> + </td></tr></table><br /> + + det<br /><br /><p>Calculate determinant</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Determinant</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddiagonal"></a> + <h3>method diagonal <span class="smalllinenumber">[line 323]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix diagonal( +[int +$m = null], [int +$n = null], [mixed +$c = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + diagonal<br /><br /><p>Generate a diagonal matrix</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Diagonal matrix</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$m</b>&nbsp;&nbsp;</td> + <td>Row dimension</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td>Column dimension</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$c</b>&nbsp;&nbsp;</td> + <td>Diagonal value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodget"></a> + <h3>method get <span class="smalllinenumber">[line 156]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed get( +[int +$i = null], [int +$j = null])</code> + </td></tr></table> + </td></tr></table><br /> + + get<br /><br /><p>Get the i,j-th element of the matrix.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Element (int/float/double)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$i</b>&nbsp;&nbsp;</td> + <td>Row position</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$j</b>&nbsp;&nbsp;</td> + <td>Column position</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetArray"></a> + <h3>method getArray <span class="smalllinenumber">[line 123]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getArray( +)</code> + </td></tr></table> + </td></tr></table><br /> + + getArray<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Matrix array</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumnDimension"></a> + <h3>method getColumnDimension <span class="smalllinenumber">[line 143]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getColumnDimension( +)</code> + </td></tr></table> + </td></tr></table><br /> + + getColumnDimension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Column dimension</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetMatrix"></a> + <h3>method getMatrix <span class="smalllinenumber">[line 171]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix getMatrix( +int +$i0, int +$iF, int +$j0, int +$jF)</code> + </td></tr></table> + </td></tr></table><br /> + + getMatrix<br /><br /><p>Get a submatrix</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Submatrix</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$i0</b>&nbsp;&nbsp;</td> + <td>Initial row index</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$iF</b>&nbsp;&nbsp;</td> + <td>Final row index</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$j0</b>&nbsp;&nbsp;</td> + <td>Initial column index</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$jF</b>&nbsp;&nbsp;</td> + <td>Final column index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetMatrixByCol"></a> + <h3>method getMatrixByCol <span class="smalllinenumber">[line 361]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix getMatrixByCol( +[ +$j0 = null], [ +$jF = null], int +$i0, int +$iF)</code> + </td></tr></table> + </td></tr></table><br /> + + getMatrixByCol<br /><br /><p>Get a submatrix by column index/range</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Submatrix</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$i0</b>&nbsp;&nbsp;</td> + <td>Initial column index</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$iF</b>&nbsp;&nbsp;</td> + <td>Final column index</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$j0</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$jF</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetMatrixByRow"></a> + <h3>method getMatrixByRow <span class="smalllinenumber">[line 340]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix getMatrixByRow( +[int +$i0 = null], [int +$iF = null])</code> + </td></tr></table> + </td></tr></table><br /> + + getMatrixByRow<br /><br /><p>Get a submatrix by row index/range</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Submatrix</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$i0</b>&nbsp;&nbsp;</td> + <td>Initial row index</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$iF</b>&nbsp;&nbsp;</td> + <td>Final row index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRowDimension"></a> + <h3>method getRowDimension <span class="smalllinenumber">[line 133]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getRowDimension( +)</code> + </td></tr></table> + </td></tr></table><br /> + + getRowDimension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Row dimension</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodidentity"></a> + <h3>method identity <span class="smalllinenumber">[line 309]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix identity( +[int +$m = null], [int +$n = null])</code> + </td></tr></table> + </td></tr></table><br /> + + identity<br /><br /><p>Generate an identity matrix.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Identity matrix</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$m</b>&nbsp;&nbsp;</td> + <td>Row dimension</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td>Column dimension</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinverse"></a> + <h3>method inverse <span class="smalllinenumber">[line 1042]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix inverse( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Matrix inverse or pseudoinverse.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>... Inverse(A) if A is square, pseudoinverse otherwise.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodminus"></a> + <h3>method minus <span class="smalllinenumber">[line 510]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix minus( +mixed +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + minus<br /><br /><p>A - B</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Sum</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix/Array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodminusEquals"></a> + <h3>method minusEquals <span class="smalllinenumber">[line 546]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix minusEquals( +mixed +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + minusEquals<br /><br /><p>A = A - B</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Sum</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix/Array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodplus"></a> + <h3>method plus <span class="smalllinenumber">[line 424]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix plus( +mixed +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + plus<br /><br /><p>A + B</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Sum</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix/Array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodplusEquals"></a> + <h3>method plusEquals <span class="smalllinenumber">[line 460]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix plusEquals( +mixed +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + plusEquals<br /><br /><p>A = A + B</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Sum</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix/Array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodpower"></a> + <h3>method power <span class="smalllinenumber">[line 942]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix power( +mixed +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + power<br /><br /><p>A = A ^ B</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Sum</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Matrix/Array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodset"></a> + <h3>method set <span class="smalllinenumber">[line 295]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed set( +[int +$i = null], [int +$j = null], [mixed +$c = null])</code> + </td></tr></table> + </td></tr></table><br /> + + set<br /><br /><p>Set the i,j-th element of the matrix.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Element (int/float/double)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$i</b>&nbsp;&nbsp;</td> + <td>Row position</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$j</b>&nbsp;&nbsp;</td> + <td>Column position</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$c</b>&nbsp;&nbsp;</td> + <td>Int/float/double value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsolve"></a> + <h3>method solve <span class="smalllinenumber">[line 1026]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix solve( +Matrix +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + Solve A*X = B.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>... Solution if A is square, least squares solution otherwise</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">Matrix&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>Right hand side</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtimes"></a> + <h3>method times <span class="smalllinenumber">[line 851]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix times( +mixed +$n)</code> + </td></tr></table> + </td></tr></table><br /> + + times<br /><br /><p>Matrix multiplication</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Product</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td>Matrix/Array/Scalar</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtrace"></a> + <h3>method trace <span class="smalllinenumber">[line 397]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float trace( +)</code> + </td></tr></table> + </td></tr></table><br /> + + trace<br /><br /><p>Sum of diagonal elements</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Sum of diagonal elements</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtranspose"></a> + <h3>method transpose <span class="smalllinenumber">[line 380]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix transpose( +)</code> + </td></tr></table> + </td></tr></table><br /> + + transpose<br /><br /><p>Tranpose matrix</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Transposed matrix</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoduminus"></a> + <h3>method uminus <span class="smalllinenumber">[line 413]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix uminus( +)</code> + </td></tr></table> + </td></tr></table><br /> + + uminus<br /><br /><p>Unary minus matrix -A</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Unary minus matrix</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constArgumentBoundsException"></a> + <p></p> + <h4>ArgumentBoundsException = <span class="value">&nbsp;&quot;Invalid&nbsp;argument&nbsp;range.&quot;</span></h4> + <p>[line 32]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constArgumentTypeException"></a> + <p></p> + <h4>ArgumentTypeException = <span class="value">&nbsp;&quot;Invalid&nbsp;argument&nbsp;type.&quot;</span></h4> + <p>[line 31]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constArrayLengthException"></a> + <p></p> + <h4>ArrayLengthException = <span class="value">&nbsp;&quot;Array&nbsp;length&nbsp;must&nbsp;be&nbsp;a&nbsp;multiple&nbsp;of&nbsp;m.&quot;</span></h4> + <p>[line 34]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constMatrixDimensionException"></a> + <p></p> + <h4>MatrixDimensionException = <span class="value">&nbsp;&quot;Matrix&nbsp;dimensions&nbsp;are&nbsp;not&nbsp;equal.&quot;</span></h4> + <p>[line 33]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPolymorphicArgumentException"></a> + <p></p> + <h4>PolymorphicArgumentException = <span class="value">&nbsp;&quot;Invalid&nbsp;argument&nbsp;pattern&nbsp;for&nbsp;polymorphic&nbsp;function.&quot;</span></h4> + <p>[line 30]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:41 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html b/site/config/PHPExcel/Documentation/API/JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html new file mode 100644 index 0000000..57fc228 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html @@ -0,0 +1,401 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_JAMA_QRDecomposition</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_JAMA_QRDecomposition</h1> +Source Location: /PHPExcel/Shared/JAMA/QRDecomposition.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description"></div><br /><br /> +<h4>Author(s):</h4> +<ul> + <li>Paul Meagher</li> + </ul> + + + + + + +<h4>Version:</h4> +<ul> + <li>1.1</li> +</ul> + + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#constMatrixRankException">MatrixRankException</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#method__construct">__construct</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetH">getH</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetQ">getQ</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetR">getR</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodisFullRank">isFullRank</a></li> + <li><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodsolve">solve</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html#a19">19</a>]<br /> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Paul Meagher</td> + </tr> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.1</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td>PHP</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html#a54">54</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Structure __construct( +matrix +$A)</code> + </td></tr></table> + </td></tr></table><br /> + + QR Decomposition computed by Householder reflections.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>to access R and the Householder vectors and compute Q.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">matrix&nbsp;&nbsp;</td> + <td><b>$A</b>&nbsp;&nbsp;</td> + <td>Rectangular matrix</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetH"></a> + <h3>method getH <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html#a116">116</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix getH( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Householder vectors<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Lower trapezoidal matrix whose columns define the reflections</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetQ"></a> + <h3>method getQ <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html#a156">156</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix getQ( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Generate and return the (economy-sized) orthogonal factor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>orthogonal factor</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetR"></a> + <h3>method getR <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html#a135">135</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix getR( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the upper triangular factor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>upper triangular factor</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisFullRank"></a> + <h3>method isFullRank <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html#a101">101</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isFullRank( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is the matrix full rank?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true if R, and hence A, has full rank, else false.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsolve"></a> + <h3>method solve <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html#a194">194</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix solve( +Matrix +$B)</code> + </td></tr></table> + </td></tr></table><br /> + + Least squares solution of A*X = B<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Matrix that minimizes the two norm of Q*R*X-B.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">Matrix&nbsp;&nbsp;</td> + <td><b>$B</b>&nbsp;&nbsp;</td> + <td>A Matrix with as many rows as A and any number of columns.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constMatrixRankException"></a> + <p></p> + <h4>MatrixRankException = <span class="value">&nbsp;&quot;Can&nbsp;only&nbsp;perform&nbsp;operation&nbsp;on&nbsp;full-rank&nbsp;matrix.&quot;</span></h4> + <p>[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html#a21">21</a>]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:33 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/SingularValueDecomposition.html b/site/config/PHPExcel/Documentation/API/JAMA/SingularValueDecomposition.html new file mode 100644 index 0000000..b1c6663 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/SingularValueDecomposition.html @@ -0,0 +1,415 @@ +<html> +<head> +<title>Docs For Class SingularValueDecomposition</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: SingularValueDecomposition</h1> +Source Location: /PHPExcel/Shared/JAMA/SingularValueDecomposition.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description"></div><br /><br /> +<h4>Author(s):</h4> +<ul> + <li>Paul Meagher</li> + </ul> + + + + + + +<h4>Version:</h4> +<ul> + <li>1.1</li> +</ul> + + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../JAMA/SingularValueDecomposition.html#method__construct">__construct</a></li> + <li><a href="../JAMA/SingularValueDecomposition.html#methodcond">cond</a></li> + <li><a href="../JAMA/SingularValueDecomposition.html#methodgetS">getS</a></li> + <li><a href="../JAMA/SingularValueDecomposition.html#methodgetSingularValues">getSingularValues</a></li> + <li><a href="../JAMA/SingularValueDecomposition.html#methodgetU">getU</a></li> + <li><a href="../JAMA/SingularValueDecomposition.html#methodgetV">getV</a></li> + <li><a href="../JAMA/SingularValueDecomposition.html#methodnorm2">norm2</a></li> + <li><a href="../JAMA/SingularValueDecomposition.html#methodrank">rank</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html#a20">20</a>]<br /> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Paul Meagher</td> + </tr> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.1</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td>PHP</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html#a61">61</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Structure __construct( +$A +$Arg)</code> + </td></tr></table> + </td></tr></table><br /> + + Construct the singular value decomposition<br /><br /><p>Derived from LINPACK code.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>to access U, S and V.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">$A&nbsp;&nbsp;</td> + <td><b>$Arg</b>&nbsp;&nbsp;</td> + <td>Rectangular matrix</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcond"></a> + <h3>method cond <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html#a503">503</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>max(S)/min(S) cond( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Two norm condition number<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetS"></a> + <h3>method getS <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html#a475">475</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>S getS( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the diagonal matrix of singular values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSingularValues"></a> + <h3>method getSingularValues <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html#a464">464</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>diagonal getSingularValues( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the one-dimensional array of singular values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of S.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetU"></a> + <h3>method getU <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html#a442">442</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>U getU( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the left singular vectors<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetV"></a> + <h3>method getV <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html#a453">453</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>V getV( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the right singular vectors<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodnorm2"></a> + <h3>method norm2 <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html#a492">492</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>max(S) norm2( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Two norm<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrank"></a> + <h3>method rank <span class="smalllinenumber">[line <a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html#a514">514</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Number rank( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Effective numerical matrix rank<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of nonnegligible singular values.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:45 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html new file mode 100644 index 0000000..6e07033 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html @@ -0,0 +1,134 @@ +<html> +<head> +<title>Docs for page CholeskyDecomposition.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: CholeskyDecomposition.php</h1> +Source Location: /PHPExcel/Shared/JAMA/CholeskyDecomposition.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a></dt> + <dd></dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:25 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html new file mode 100644 index 0000000..654ed55 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html @@ -0,0 +1,134 @@ +<html> +<head> +<title>Docs for page EigenvalueDecomposition.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: EigenvalueDecomposition.php</h1> +Source Location: /PHPExcel/Shared/JAMA/EigenvalueDecomposition.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a></dt> + <dd></dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:50 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html new file mode 100644 index 0000000..aba8206 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html @@ -0,0 +1,134 @@ +<html> +<head> +<title>Docs for page LUDecomposition.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: LUDecomposition.php</h1> +Source Location: /PHPExcel/Shared/JAMA/LUDecomposition.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a></dt> + <dd></dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html new file mode 100644 index 0000000..054c61d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html @@ -0,0 +1,129 @@ +<html> +<head> +<title>Docs for page Matrix.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Matrix.php</h1> +Source Location: /PHPExcel/Shared/JAMA/Matrix.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></dt> + <dd></dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 12]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:41 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html new file mode 100644 index 0000000..0ed8b90 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html @@ -0,0 +1,134 @@ +<html> +<head> +<title>Docs for page QRDecomposition.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: QRDecomposition.php</h1> +Source Location: /PHPExcel/Shared/JAMA/QRDecomposition.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a></dt> + <dd></dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html new file mode 100644 index 0000000..981078d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html @@ -0,0 +1,134 @@ +<html> +<head> +<title>Docs for page SingularValueDecomposition.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: SingularValueDecomposition.php</h1> +Source Location: /PHPExcel/Shared/JAMA/SingularValueDecomposition.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a></dt> + <dd></dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:38 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html new file mode 100644 index 0000000..892aa0e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html @@ -0,0 +1,129 @@ +<html> +<head> +<title>Docs for page MagicSquareExample.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: MagicSquareExample.php</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/MagicSquareExample.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a></dt> + <dd>Example of use of Matrix Class, featuring magic squares.</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html">"../Matrix.php"</a>) [line 6]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:40 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html new file mode 100644 index 0000000..9aeb75e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html @@ -0,0 +1,130 @@ +<html> +<head> +<title>Docs for page benchmark.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: benchmark.php</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/benchmark.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../JAMA/Benchmark.html">Benchmark</a></dt> + <dd>Example of use of Matrix Class, featuring magic squares.</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html">'../Matrix.php'</a>) [line 9]<br /> +require_once(<a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html">'Stats.php'</a>) [line 10]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html new file mode 100644 index 0000000..614fcba --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html @@ -0,0 +1,303 @@ +<html> +<head> +<title>Docs for page Error.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Error.php</h1> +Source Location: /PHPExcel/Shared/JAMA/utils/Error.php<br /><br /> + +<br> +<br> + + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Bommarito</td> + </tr> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>01292005</td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> + <hr /> + <a name="defineArgumentBoundsException"></a> + <h3>ArgumentBoundsException <span class="smalllinenumber">[line 34]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>ArgumentBoundsException = -3</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineArgumentTypeException"></a> + <h3>ArgumentTypeException <span class="smalllinenumber">[line 29]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>ArgumentTypeException = -2</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineArrayLengthException"></a> + <h3>ArrayLengthException <span class="smalllinenumber">[line 60]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>ArrayLengthException = -9</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineJAMALANG"></a> + <h3>JAMALANG <span class="smalllinenumber">[line 11]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>JAMALANG = 'EN'</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineMatrixDimensionException"></a> + <h3>MatrixDimensionException <span class="smalllinenumber">[line 39]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>MatrixDimensionException = -4</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineMatrixRankException"></a> + <h3>MatrixRankException <span class="smalllinenumber">[line 57]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>MatrixRankException = -8</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineMatrixSingularException"></a> + <h3>MatrixSingularException <span class="smalllinenumber">[line 54]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>MatrixSingularException = -7</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineMatrixSPDException"></a> + <h3>MatrixSPDException <span class="smalllinenumber">[line 49]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>MatrixSPDException = -6</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePolymorphicArgumentException"></a> + <h3>PolymorphicArgumentException <span class="smalllinenumber">[line 24]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PolymorphicArgumentException = -1</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePrecisionLossException"></a> + <h3>PrecisionLossException <span class="smalllinenumber">[line 44]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PrecisionLossException = -5</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineRowLengthException"></a> + <h3>RowLengthException <span class="smalllinenumber">[line 63]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>RowLengthException = -10</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + <hr /> + <a name="functionJAMAError"></a> + <h3>JAMAError <span class="smalllinenumber">[line 70]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void JAMAError( +[ $errorNumber = null], int $num)</code> + </td></tr></table> + </td></tr></table><br /> + + Custom error handler<br /><br /> <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$num</b>&nbsp;&nbsp;</td> + <td>Error number</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$errorNumber</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html new file mode 100644 index 0000000..4109735 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html @@ -0,0 +1,148 @@ +<html> +<head> +<title>Docs for page Maths.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../JAMA/Benchmark.html">Benchmark</a><br /> + <a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="../JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Maths.php</h1> +Source Location: /PHPExcel/Shared/JAMA/utils/Maths.php<br /><br /> + +<br> +<br> + + +<h2>Page Details:</h2> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + <hr /> + <a name="functionhypo"></a> + <h3>hypo <span class="smalllinenumber">[line 14]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void hypo( + $a, $b)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$a</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$b</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:40 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/JAMA/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/JAMA/_notes/dwsync.xml new file mode 100644 index 0000000..89c7d3f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/JAMA/_notes/dwsync.xml @@ -0,0 +1,129 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Benchmark.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="CholeskyDecomposition.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="EigenvalueDecomposition.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="MagicSquareExample.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Shared_JAMA_LUDecomposition.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Shared_JAMA_Matrix.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Shared_JAMA_QRDecomposition.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="SingularValueDecomposition.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---benchmark.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---LUDecomposition.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---Matrix.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---QRDecomposition.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---utils---Error.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---utils---Maths.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Shared_JAMA_Matrix.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="MagicSquareExample.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="CholeskyDecomposition.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="SingularValueDecomposition.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="EigenvalueDecomposition.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---benchmark.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_Shared_JAMA_LUDecomposition.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_Shared_JAMA_QRDecomposition.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---utils---Maths.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---Matrix.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="Benchmark.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---LUDecomposition.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---QRDecomposition.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---utils---Error.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_Shared_JAMA_Matrix.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="MagicSquareExample.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="CholeskyDecomposition.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="SingularValueDecomposition.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="EigenvalueDecomposition.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---benchmark.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_JAMA_LUDecomposition.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_JAMA_QRDecomposition.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---utils---Maths.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---Matrix.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="Benchmark.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---LUDecomposition.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---QRDecomposition.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---utils---Error.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_JAMA_Matrix.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560408631507" remote="131260197000000000" Dst="1" /> +<file name="MagicSquareExample.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560409013098" remote="131260197000000000" Dst="1" /> +<file name="CholeskyDecomposition.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560409418090" remote="131260197000000000" Dst="1" /> +<file name="SingularValueDecomposition.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560409802068" remote="131260197000000000" Dst="1" /> +<file name="EigenvalueDecomposition.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560410170798" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---benchmark.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560410561159" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_JAMA_LUDecomposition.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560411001167" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_JAMA_QRDecomposition.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560411438043" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---utils---Maths.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560411875005" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---Matrix.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560412261265" remote="131260197000000000" Dst="1" /> +<file name="Benchmark.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560412649267" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---LUDecomposition.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560413058646" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560413443040" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560413844786" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---QRDecomposition.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560414268003" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---utils---Error.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560414699506" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560415076023" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560415461044" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_JAMA_Matrix.html" server="62.244.88.21/amashow/" local="131414752748204580" remote="131414681400000000" Dst="2" /> +<file name="CholeskyDecomposition.html" server="62.244.88.21/amashow/" local="131414752748836200" remote="131414681400000000" Dst="2" /> +<file name="MagicSquareExample.html" server="62.244.88.21/amashow/" local="131414752748627568" remote="131414681400000000" Dst="2" /> +<file name="SingularValueDecomposition.html" server="62.244.88.21/amashow/" local="131414752749210888" remote="131414681400000000" Dst="2" /> +<file name="EigenvalueDecomposition.html" server="62.244.88.21/amashow/" local="131414752749668466" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---benchmark.php.html" server="62.244.88.21/amashow/" local="131414752750082253" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_JAMA_LUDecomposition.html" server="62.244.88.21/amashow/" local="131414752750629458" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_JAMA_QRDecomposition.html" server="62.244.88.21/amashow/" local="131414752750837653" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---utils---Maths.php.html" server="62.244.88.21/amashow/" local="131414752751050907" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---Matrix.php.html" server="62.244.88.21/amashow/" local="131414752751500632" remote="131414681400000000" Dst="2" /> +<file name="Benchmark.html" server="62.244.88.21/amashow/" local="131414752751914605" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---LUDecomposition.php.html" server="62.244.88.21/amashow/" local="131414752752126131" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html" server="62.244.88.21/amashow/" local="131414752752335493" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---QRDecomposition.php.html" server="62.244.88.21/amashow/" local="131414752752997895" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---utils---Error.php.html" server="62.244.88.21/amashow/" local="131414752753376349" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html" server="62.244.88.21/amashow/" local="131414752752787276" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html" server="62.244.88.21/amashow/" local="131414752753770987" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html" server="62.244.88.21/amashow/" local="131414752753977869" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_JAMA_QRDecomposition.html" server="62.244.88.21/deciday/" local="131919461457685104" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html" server="62.244.88.21/deciday/" local="131919461458863476" remote="131826018000000000" Dst="1" /> +<file name="MagicSquareExample.html" server="62.244.88.21/deciday/" local="131919461443365230" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_JAMA_Matrix.html" server="62.244.88.21/deciday/" local="131919461455195686" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---utils---Maths.php.html" server="62.244.88.21/deciday/" local="131919461460050413" remote="131826018000000000" Dst="1" /> +<file name="EigenvalueDecomposition.html" server="62.244.88.21/deciday/" local="131919461444357682" remote="131826017400000000" Dst="1" /> +<file name="CholeskyDecomposition.html" server="62.244.88.21/deciday/" local="131919461441877860" remote="131826017400000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html" server="62.244.88.21/deciday/" local="131919461448020878" remote="131826018000000000" Dst="1" /> +<file name="Benchmark.html" server="62.244.88.21/deciday/" local="131919461442087330" remote="131826017400000000" Dst="1" /> +<file name="PHPExcel_Shared_JAMA_LUDecomposition.html" server="62.244.88.21/deciday/" local="131919461450435104" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---LUDecomposition.php.html" server="62.244.88.21/deciday/" local="131919461451926597" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---QRDecomposition.php.html" server="62.244.88.21/deciday/" local="131919461458392788" remote="131826018000000000" Dst="1" /> +<file name="SingularValueDecomposition.html" server="62.244.88.21/deciday/" local="131919461465646657" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html" server="62.244.88.21/deciday/" local="131919461450635922" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---Matrix.php.html" server="62.244.88.21/deciday/" local="131919461457237809" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---utils---Error.php.html" server="62.244.88.21/deciday/" local="131919461459759852" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html" server="62.244.88.21/deciday/" local="131919461445521901" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---benchmark.php.html" server="62.244.88.21/deciday/" local="131919461447696411" remote="131826018000000000" Dst="1" /> +<file name="Benchmark.html" server="62.244.88.21/deciday_18/" local="131414752751914605" remote="131825945400000000" Dst="2" /> +<file name="CholeskyDecomposition.html" server="62.244.88.21/deciday_18/" local="131414752748836200" remote="131825945400000000" Dst="2" /> +<file name="EigenvalueDecomposition.html" server="62.244.88.21/deciday_18/" local="131414752749668466" remote="131825945400000000" Dst="2" /> +<file name="MagicSquareExample.html" server="62.244.88.21/deciday_18/" local="131414752748627568" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_JAMA_LUDecomposition.html" server="62.244.88.21/deciday_18/" local="131414752750629458" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_JAMA_Matrix.html" server="62.244.88.21/deciday_18/" local="131414752748204580" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_JAMA_QRDecomposition.html" server="62.244.88.21/deciday_18/" local="131414752750837653" remote="131825946000000000" Dst="2" /> +<file name="SingularValueDecomposition.html" server="62.244.88.21/deciday_18/" local="131414752749210888" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html" server="62.244.88.21/deciday_18/" local="131414752752335493" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---benchmark.php.html" server="62.244.88.21/deciday_18/" local="131414752750082253" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html" server="62.244.88.21/deciday_18/" local="131414752753977869" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html" server="62.244.88.21/deciday_18/" local="131414752753770987" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---LUDecomposition.php.html" server="62.244.88.21/deciday_18/" local="131414752752126131" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---Matrix.php.html" server="62.244.88.21/deciday_18/" local="131414752751500632" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---QRDecomposition.php.html" server="62.244.88.21/deciday_18/" local="131414752752997895" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html" server="62.244.88.21/deciday_18/" local="131414752752787276" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---utils---Error.php.html" server="62.244.88.21/deciday_18/" local="131414752753376349" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---utils---Maths.php.html" server="62.244.88.21/deciday_18/" local="131414752751050907" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/Math_Stats/Base.html b/site/config/PHPExcel/Documentation/API/Math_Stats/Base.html new file mode 100644 index 0000000..907551d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/Math_Stats/Base.html @@ -0,0 +1,2035 @@ +<html> +<head> +<title>Docs For Class Base</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">Math_Stats</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_Math_Stats.html" class="menu">class tree: Math_Stats</a> ] + [ <a href="../elementindex_Math_Stats.html" class="menu">index: Math_Stats</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html"> Stats.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../Math_Stats/Base.html">Base</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: Base</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/Stats.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">A class to calculate descriptive statistics from a data set.</div><br /><br /> +<h4>Author(s):</h4> +<ul> + <li>Jesus M. Castagnetto &lt;<a href="mailto:jmcastagnetto@php.net">jmcastagnetto@php.net</a>&gt;</li> + </ul> + + + + + + +<h4>Version:</h4> +<ul> + <li>0.8</li> +</ul> + + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../Math_Stats/Base.html#var$_calculatedValues">$_calculatedValues</a></li> + <li><a href="../Math_Stats/Base.html#var$_data">$_data</a></li> + <li><a href="../Math_Stats/Base.html#var$_dataExpanded">$_dataExpanded</a></li> + <li><a href="../Math_Stats/Base.html#var$_dataOption">$_dataOption</a></li> + <li><a href="../Math_Stats/Base.html#var$_nullOption">$_nullOption</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../Math_Stats/Base.html#methodabsDev">absDev</a></li> + <li><a href="../Math_Stats/Base.html#methodabsDevWithMean">absDevWithMean</a></li> + <li><a href="../Math_Stats/Base.html#methodcalc">calc</a></li> + <li><a href="../Math_Stats/Base.html#methodcalcBasic">calcBasic</a></li> + <li><a href="../Math_Stats/Base.html#methodcalcFull">calcFull</a></li> + <li><a href="../Math_Stats/Base.html#methodcenter">center</a></li> + <li><a href="../Math_Stats/Base.html#methodcoeffOfVariation">coeffOfVariation</a></li> + <li><a href="../Math_Stats/Base.html#methodcount">count</a></li> + <li><a href="../Math_Stats/Base.html#methodfrequency">frequency</a></li> + <li><a href="../Math_Stats/Base.html#methodgeometricMean">geometricMean</a></li> + <li><a href="../Math_Stats/Base.html#methodgetData">getData</a></li> + <li><a href="../Math_Stats/Base.html#methodharmonicMean">harmonicMean</a></li> + <li><a href="../Math_Stats/Base.html#methodinterquartileMean">interquartileMean</a></li> + <li><a href="../Math_Stats/Base.html#methodinterquartileRange">interquartileRange</a></li> + <li><a href="../Math_Stats/Base.html#methodkurtosis">kurtosis</a></li> + <li><a href="../Math_Stats/Base.html#methodMath_Stats">Math_Stats</a></li> + <li><a href="../Math_Stats/Base.html#methodmax">max</a></li> + <li><a href="../Math_Stats/Base.html#methodmean">mean</a></li> + <li><a href="../Math_Stats/Base.html#methodmedian">median</a></li> + <li><a href="../Math_Stats/Base.html#methodmidrange">midrange</a></li> + <li><a href="../Math_Stats/Base.html#methodmin">min</a></li> + <li><a href="../Math_Stats/Base.html#methodmode">mode</a></li> + <li><a href="../Math_Stats/Base.html#methodpercentile">percentile</a></li> + <li><a href="../Math_Stats/Base.html#methodproduct">product</a></li> + <li><a href="../Math_Stats/Base.html#methodproductN">productN</a></li> + <li><a href="../Math_Stats/Base.html#methodquartileDeviation">quartileDeviation</a></li> + <li><a href="../Math_Stats/Base.html#methodquartiles">quartiles</a></li> + <li><a href="../Math_Stats/Base.html#methodquartileSkewnessCoefficient">quartileSkewnessCoefficient</a></li> + <li><a href="../Math_Stats/Base.html#methodquartileVariationCoefficient">quartileVariationCoefficient</a></li> + <li><a href="../Math_Stats/Base.html#methodrange">range</a></li> + <li><a href="../Math_Stats/Base.html#methodsampleCentralMoment">sampleCentralMoment</a></li> + <li><a href="../Math_Stats/Base.html#methodsampleRawMoment">sampleRawMoment</a></li> + <li><a href="../Math_Stats/Base.html#methodsetData">setData</a></li> + <li><a href="../Math_Stats/Base.html#methodsetNullOption">setNullOption</a></li> + <li><a href="../Math_Stats/Base.html#methodskewness">skewness</a></li> + <li><a href="../Math_Stats/Base.html#methodstdErrorOfMean">stdErrorOfMean</a></li> + <li><a href="../Math_Stats/Base.html#methodstDev">stDev</a></li> + <li><a href="../Math_Stats/Base.html#methodstDevWithMean">stDevWithMean</a></li> + <li><a href="../Math_Stats/Base.html#methodstudentize">studentize</a></li> + <li><a href="../Math_Stats/Base.html#methodsum">sum</a></li> + <li><a href="../Math_Stats/Base.html#methodsum2">sum2</a></li> + <li><a href="../Math_Stats/Base.html#methodsumN">sumN</a></li> + <li><a href="../Math_Stats/Base.html#methodvariance">variance</a></li> + <li><a href="../Math_Stats/Base.html#methodvarianceWithMean">varianceWithMean</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a119">119</a>]<br /> +A class to calculate descriptive statistics from a data set.<br /><br /><p>Data sets can be simple arrays of data, or a cummulative hash. The second form is useful when passing large data set, for example the data set:</p><p><pre> $data1 = array (1,2,1,1,1,1,3,3,4.1,3,2,2,4.1,1,1,2,3,3,2,2,1,1,2,2);</pre></p><p>can be epxressed more compactly as:</p><p><pre> $data2 = array('1'=>9, '2'=>8, '3'=>5, '4.1'=>2);</pre></p><p>Example of use:</p><p><pre> include_once 'Math/Stats.php'; + $s = new Math_Stats(); + $s->setData($data1); + // or + // $s->setData($data2, STATS_DATA_CUMMULATIVE); + $stats = $s->calcBasic(); + echo 'Mean: '.$stats['mean'].' StDev: '.$stats['stdev'].' <br />\n'; + + // using data with nulls + // first ignoring them: + $data3 = array(1.2, 'foo', 2.4, 3.1, 4.2, 3.2, null, 5.1, 6.2); + $s->setNullOption(STATS_IGNORE_NULL); + $s->setData($data3); + $stats3 = $s->calcFull(); + + // and then assuming nulls == 0 + $s->setNullOption(STATS_USE_NULL_AS_ZERO); + $s->setData($data3); + $stats3 = $s->calcFull();</pre></p><p>Originally this class was part of NumPHP (Numeric PHP package)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Jesus M. Castagnetto &lt;<a href="mailto:jmcastagnetto@php.net">jmcastagnetto@php.net</a>&gt;</td> + </tr> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>0.8</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_calculatedValues"></a> + <p></p> + <h4>$_calculatedValues = <span class="value">array()</span></h4> + <p>[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a165">165</a>]</p> + Array for caching result values, should be reset when using setData()<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_data"></a> + <p></p> + <h4>$_data = <span class="value">&nbsp;null</span></h4> + <p>[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a129">129</a>]</p> + The simple or cummulative data set.<br /><br /><p>Null by default.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_dataExpanded"></a> + <p></p> + <h4>$_dataExpanded = <span class="value">&nbsp;null</span></h4> + <p>[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a138">138</a>]</p> + Expanded data set. Only set when cummulative data is being used. Null by default.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_dataOption"></a> + <p></p> + <h4>$_dataOption = <span class="value">&nbsp;null</span></h4> + <p>[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a147">147</a>]</p> + Flag for data type, one of STATS_DATA_SIMPLE or STATS_DATA_CUMMULATIVE. Null by default.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_nullOption"></a> + <p></p> + <h4>$_nullOption = <span class="value"></span></h4> + <p>[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a156">156</a>]</p> + Flag for null handling options. One of STATS_REJECT_NULL, STATS_IGNORE_NULL or STATS_USE_NULL_AS_ZERO<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodabsDev"></a> + <h3>method absDev <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a750">750</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed absDev( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the absolute deviation of the data points in the set Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the absolute deviation on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodabsDevWithMean">Base::absDevWithMean()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcount">Base::count()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>__sumabsdev()</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodabsDevWithMean"></a> + <h3>method absDevWithMean <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a773">773</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed absDevWithMean( +numeric +$mean)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the absolute deviation of the data points in the set given a fixed mean (average) value. Not used in calcBasic(), calcFull() or calc().<br /><br /><p>Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the absolute deviation on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodabsDev">Base::absDev()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>__sumabsdev()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">numeric&nbsp;&nbsp;</td> + <td><b>$mean</b>&nbsp;&nbsp;</td> + <td>the fixed mean value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcalc"></a> + <h3>method calc <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a326">326</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed calc( +int +$mode, [boolean +$returnErrorObject = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the basic or full statistics for the data set<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>an associative array of statistics on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalcFull">Base::calcFull()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalcBasic">Base::calcBasic()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$mode</b>&nbsp;&nbsp;</td> + <td>one of STATS_BASIC or STATS_FULL</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$returnErrorObject</b>&nbsp;&nbsp;</td> + <td>whether the raw PEAR_Error (when true, default), or only the error message will be returned (when false), if an error happens.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcalcBasic"></a> + <h3>method calcBasic <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a349">349</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed calcBasic( +[boolean +$returnErrorObject = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates a basic set of statistics<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>an associative array of statistics on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalcFull">Base::calcFull()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$returnErrorObject</b>&nbsp;&nbsp;</td> + <td>whether the raw PEAR_Error (when true, default), or only the error message will be returned (when false), if an error happens.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcalcFull"></a> + <h3>method calcFull <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a373">373</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed calcFull( +[boolean +$returnErrorObject = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates a full set of statistics<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>an associative array of statistics on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalcBasic">Base::calcBasic()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$returnErrorObject</b>&nbsp;&nbsp;</td> + <td>whether the raw PEAR_Error (when true, default), or only the error message will be returned (when false), if an error happens.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcenter"></a> + <h3>method center <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a295">295</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed center( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Transforms the data by substracting each entry from the mean.<br /><br /><p>This will reset all pre-calculated values to their original (unset) defaults.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodsetData">Base::setData()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodmean">Base::mean()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcoeffOfVariation"></a> + <h3>method coeffOfVariation <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1109">1109</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed coeffOfVariation( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the coefficient of variation of a data set.<br /><br /><p>The coefficient of variation measures the spread of a set of data as a proportion of its mean. It is often expressed as a percentage. Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the coefficient of variation on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodmean">Base::mean()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodstDev">Base::stDev()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcount"></a> + <h3>method count <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a599">599</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed count( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the number of data points in the set Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the count on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodfrequency"></a> + <h3>method frequency <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1171">1171</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed frequency( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the value frequency table of a data set.<br /><br /><p>Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>an associative array of value=&gt;frequency items on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodmax">Base::max()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodmin">Base::min()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgeometricMean"></a> + <h3>method geometricMean <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a965">965</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed geometricMean( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the geometrical mean of the data points in the set Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the geometrical mean value on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcount">Base::count()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodproduct">Base::product()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetData"></a> + <h3>method getData <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a217">217</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getData( +[boolean +$expanded = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Returns the data which might have been modified according to the current null handling options.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>array of data on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>_validate()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$expanded</b>&nbsp;&nbsp;</td> + <td>whether to return a expanded list, default is false</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodharmonicMean"></a> + <h3>method harmonicMean <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a995">995</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed harmonicMean( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the harmonic mean of the data points in the set Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the harmonic mean value on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcount">Base::count()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinterquartileMean"></a> + <h3>method interquartileMean <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1235">1235</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed interquartileMean( +)</code> + </td></tr></table> + </td></tr></table><br /> + + The interquartile mean is defined as the mean of the values left after discarding the lower 25% and top 25% ranked values, i.e.:<br /><br /><p>interquart mean = mean(&lt;P(25),P(75)&gt;)</p><p>where: P = percentile</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>a numeric value on success, a PEAR_Error otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodquartiles">Base::quartiles()</a></td> + </tr> + <tr> + <td><b>todo:</b>&nbsp;&nbsp;</td><td>need to double check the equation</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinterquartileRange"></a> + <h3>method interquartileRange <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1273">1273</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed interquartileRange( +)</code> + </td></tr></table> + </td></tr></table><br /> + + The interquartile range is the distance between the 75th and 25th percentiles. Basically the range of the middle 50% of the data set, and thus is not affected by outliers or extreme values.<br /><br /><p>interquart range = P(75) - P(25)</p><p>where: P = percentile</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>a numeric value on success, a PEAR_Error otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodquartiles">Base::quartiles()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodkurtosis"></a> + <h3>method kurtosis <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a832">832</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed kurtosis( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the kurtosis of the data distribution in the set The kurtosis measures the degrees of peakedness of a distribution.<br /><br /><p>It is also called the &quot;excess&quot; or &quot;excess coefficient&quot;, and is a normalized form of the fourth central moment of a distribution. A normal distributions has kurtosis = 0 A narrow and peaked (leptokurtic) distribution has a kurtosis &gt; 0 A flat and wide (platykurtic) distribution has a kurtosis &lt; 0 Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the kurtosis value on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodstDev">Base::stDev()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcount">Base::count()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>__sumdiff()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMath_Stats"></a> + <h3>method Math_Stats <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a176">176</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>object Math_Stats Math_Stats( +[optional +$nullOption = STATS_REJECT_NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Constructor for the class<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">optional&nbsp;&nbsp;</td> + <td><b>$nullOption</b>&nbsp;&nbsp;</td> + <td>int $nullOption how to handle null values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmax"></a> + <h3>method max <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a451">451</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed max( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the maximum of a data set.<br /><br /><p>Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the maximum value on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodmin">Base::min()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmean"></a> + <h3>method mean <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a624">624</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed mean( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the mean (average) of the data points in the set Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the mean value on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcount">Base::count()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodsum">Base::sum()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmedian"></a> + <h3>method median <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a864">864</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed median( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the median of a data set.<br /><br /><p>The median is the value such that half of the points are below it in a sorted data set. If the number of values is odd, it is the middle item. If the number of values is even, is the average of the two middle items. Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the median value on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcount">Base::count()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmidrange"></a> + <h3>method midrange <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a940">940</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed midrange( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the midrange of a data set.<br /><br /><p>The midrange is the average of the minimum and maximum of the data set. Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the midrange value on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodmax">Base::max()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodmin">Base::min()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmin"></a> + <h3>method min <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a427">427</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed min( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the minimum of a data set.<br /><br /><p>Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the minimum value on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodmax">Base::max()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmode"></a> + <h3>method mode <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a900">900</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed mode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the mode of a data set.<br /><br /><p>The mode is the value with the highest frequency in the data set. There can be more than one mode. Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>an array of mode value on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodfrequency">Base::frequency()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodpercentile"></a> + <h3>method percentile <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1389">1389</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed percentile( +numeric +$p)</code> + </td></tr></table> + </td></tr></table><br /> + + The pth percentile is the value such that p% of the a sorted data set is smaller than it, and (100 - p)% of the data is larger.<br /><br /><p>A quick algorithm to pick the appropriate value from a sorted data set is as follows:</p><p><ul><li>Count the number of values: n</li><li>Calculate the position of the value in the data list: i = p * (n + 1)</li><li>if i is an integer, return the data at that position</li><li>if i &lt; 1, return the minimum of the data set</li><li>if i &gt; n, return the maximum of the data set</li><li>otherwise, average the entries at adjacent positions to i</li></ul> The median is the 50th percentile value.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>a numeric value on success, a PEAR_Error otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodmedian">Base::median()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodquartiles">Base::quartiles()</a></td> + </tr> + <tr> + <td><b>todo:</b>&nbsp;&nbsp;</td><td>need to double check generality of the algorithm</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">numeric&nbsp;&nbsp;</td> + <td><b>$p</b>&nbsp;&nbsp;</td> + <td>the percentile to estimate, e.g. 25 for 25th percentile</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodproduct"></a> + <h3>method product <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a546">546</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed product( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates PROD { (xi) }, (the product of all observations) Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the product on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodproductN">Base::productN()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodproductN"></a> + <h3>method productN <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a567">567</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed productN( +numeric +$n)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates PROD { (xi)^n }, which is the product of all observations Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the product on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodproduct">Base::product()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">numeric&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td>the exponent</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodquartileDeviation"></a> + <h3>method quartileDeviation <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1298">1298</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed quartileDeviation( +)</code> + </td></tr></table> + </td></tr></table><br /> + + The quartile deviation is half of the interquartile range value<br /><br /><p>quart dev = (P(75) - P(25)) / 2</p><p>where: P = percentile</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>a numeric value on success, a PEAR_Error otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodinterquartileRange">Base::interquartileRange()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodquartiles">Base::quartiles()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodquartiles"></a> + <h3>method quartiles <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1199">1199</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed quartiles( +)</code> + </td></tr></table> + </td></tr></table><br /> + + The quartiles are defined as the values that divide a sorted data set into four equal-sized subsets, and correspond to the 25th, 50th, and 75th percentiles.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>an associative array of quartiles on success, a PEAR_Error otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodpercentile">Base::percentile()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodquartileSkewnessCoefficient"></a> + <h3>method quartileSkewnessCoefficient <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1349">1349</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed quartileSkewnessCoefficient( +)</code> + </td></tr></table> + </td></tr></table><br /> + + The quartile skewness coefficient (also known as Bowley Skewness), is defined as follows:<br /><br /><p>quart skewness coeff = (P(25) - 2*P(50) + P(75)) / (P(75) - P(25))</p><p>where: P = percentile</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>a numeric value on success, a PEAR_Error otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodquartiles">Base::quartiles()</a></td> + </tr> + <tr> + <td><b>todo:</b>&nbsp;&nbsp;</td><td>need to double check the equation</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodquartileVariationCoefficient"></a> + <h3>method quartileVariationCoefficient <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1321">1321</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed quartileVariationCoefficient( +)</code> + </td></tr></table> + </td></tr></table><br /> + + The quartile variation coefficient is defines as follows:<br /><br /><p>quart var coeff = 100 * (P(75) - P(25)) / (P(75) + P(25))</p><p>where: P = percentile</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>a numeric value on success, a PEAR_Error otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodquartiles">Base::quartiles()</a></td> + </tr> + <tr> + <td><b>todo:</b>&nbsp;&nbsp;</td><td>need to double check the equation</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrange"></a> + <h3>method range <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a645">645</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed range( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the range of the data set = max - min<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the value of the range on success, a PEAR_Error object otherwise.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsampleCentralMoment"></a> + <h3>method sampleCentralMoment <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1040">1040</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed sampleCentralMoment( +integer +$n)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the nth central moment (m{n}) of a data set.<br /><br /><p>The definition of a sample central moment is:</p><p>m{n} = 1/N * SUM { (xi - avg)^n }</p><p>where: N = sample size, avg = sample mean.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the numeric value of the moment on success, PEAR_Error otherwise</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td>moment to calculate</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsampleRawMoment"></a> + <h3>method sampleRawMoment <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1076">1076</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed sampleRawMoment( +integer +$n)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the nth raw moment (m{n}) of a data set.<br /><br /><p>The definition of a sample central moment is:</p><p>m{n} = 1/N * SUM { xi^n }</p><p>where: N = sample size, avg = sample mean.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the numeric value of the moment on success, PEAR_Error otherwise</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td>moment to calculate</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetData"></a> + <h3>method setData <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a189">189</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed setData( +array +$arr, [optional +$opt = STATS_DATA_SIMPLE])</code> + </td></tr></table> + </td></tr></table><br /> + + Sets and verifies the data, checking for nulls and using the current null handling option<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$arr</b>&nbsp;&nbsp;</td> + <td>the data set</td> + </tr> + <tr> + <td class="type">optional&nbsp;&nbsp;</td> + <td><b>$opt</b>&nbsp;&nbsp;</td> + <td>int $opt data format: STATS_DATA_CUMMULATIVE or STATS_DATA_SIMPLE (default)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetNullOption"></a> + <h3>method setNullOption <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a236">236</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed setNullOption( + +$nullOption)</code> + </td></tr></table> + </td></tr></table><br /> + + Sets the null handling option.<br /><br /><p>Must be called before assigning a new data set containing null values</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>_validate()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$nullOption</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodskewness"></a> + <h3>method skewness <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a795">795</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed skewness( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the skewness of the data distribution in the set The skewness measures the degree of asymmetry of a distribution, and is related to the third central moment of a distribution.<br /><br /><p>A normal distribution has a skewness = 0 A distribution with a tail off towards the high end of the scale (positive skew) has a skewness &gt; 0 A distribution with a tail off towards the low end of the scale (negative skew) has a skewness &lt; 0 Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the skewness value on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodstDev">Base::stDev()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcount">Base::count()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>__sumdiff()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstdErrorOfMean"></a> + <h3>method stdErrorOfMean <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a1146">1146</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed stdErrorOfMean( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the standard error of the mean.<br /><br /><p>It is the standard deviation of the sampling distribution of the mean. The formula is:</p><p>S.E. Mean = SD / (N)^(1/2)</p><p>This formula does not assume a normal distribution, and shows that the size of the standard error of the mean is inversely proportional to the square root of the sample size.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the standard error of the mean on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcount">Base::count()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodstDev">Base::stDev()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstDev"></a> + <h3>method stDev <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a691">691</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed stDev( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the standard deviation (unbiased) of the data points in the set Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the standard deviation on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodvariance">Base::variance()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstDevWithMean"></a> + <h3>method stDevWithMean <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a731">731</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed stDevWithMean( +numeric +$mean)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the standard deviation (unbiased) of the data points in the set given a fixed mean (average) value. Not used in calcBasic(), calcFull() or calc().<br /><br /><p>Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the standard deviation on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodstDev">Base::stDev()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodvarianceWithMean">Base::varianceWithMean()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">numeric&nbsp;&nbsp;</td> + <td><b>$mean</b>&nbsp;&nbsp;</td> + <td>the fixed mean value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstudentize"></a> + <h3>method studentize <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a259">259</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed studentize( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Transforms the data by substracting each entry from the mean and dividing by its standard deviation. This will reset all pre-calculated values to their original (unset) defaults.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodsetData">Base::setData()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodstDev">Base::stDev()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodmean">Base::mean()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsum"></a> + <h3>method sum <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a476">476</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed sum( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates SUM { xi } Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the sum on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodsumN">Base::sumN()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodsum2">Base::sum2()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsum2"></a> + <h3>method sum2 <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a498">498</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed sum2( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates SUM { (xi)^2 } Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the sum on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodsumN">Base::sumN()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodsum">Base::sum()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsumN"></a> + <h3>method sumN <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a521">521</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed sumN( +numeric +$n)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates SUM { (xi)^n } Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the sum on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodsum2">Base::sum2()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodsum">Base::sum()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">numeric&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td>the exponent</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodvariance"></a> + <h3>method variance <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a671">671</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed variance( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the variance (unbiased) of the data points in the set Handles cummulative data sets correctly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the variance value on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcount">Base::count()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>__sumdiff()</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcalc">Base::calc()</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodvarianceWithMean"></a> + <h3>method varianceWithMean <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a715">715</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed varianceWithMean( +numeric +$mean)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculates the variance (unbiased) of the data points in the set given a fixed mean (average) value. Not used in calcBasic(), calcFull() or calc().<br /><br /><p>Handles cummulative data sets correctly</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the variance on success, a PEAR_Error object otherwise</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodvariance">Base::variance()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="../Math_Stats/Base.html#methodcount">Base::count()</a></td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>__sumdiff()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">numeric&nbsp;&nbsp;</td> + <td><b>$mean</b>&nbsp;&nbsp;</td> + <td>the fixed mean value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:03 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html b/site/config/PHPExcel/Documentation/API/Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html new file mode 100644 index 0000000..9152d34 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html @@ -0,0 +1,204 @@ +<html> +<head> +<title>Docs for page Stats.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">Math_Stats</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_Math_Stats.html" class="menu">class tree: Math_Stats</a> ] + [ <a href="../elementindex_Math_Stats.html" class="menu">index: Math_Stats</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html"> Stats.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../Math_Stats/Base.html">Base</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Stats.php</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/Stats.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../Math_Stats/Base.html">Base</a></dt> + <dd>A class to calculate descriptive statistics from a data set.</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +include_once('PEAR.php') [line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a22">22</a>]<br /> +</div> +<br /><br /> +<br /><br /> + <hr /> + <a name="defineSTATS_BASIC"></a> + <h3>STATS_BASIC <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a32">32</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>STATS_BASIC = 1</code> + </td></tr></table> + </td></tr></table> + + STATS_BASIC to generate the basic descriptive statistics<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineSTATS_DATA_CUMMULATIVE"></a> + <h3>STATS_DATA_CUMMULATIVE <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a51">51</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>STATS_DATA_CUMMULATIVE = 1</code> + </td></tr></table> + </td></tr></table> + + STATS_DATA_CUMMULATIVE for an associative array of frequency values,<br /><br /><p>where in each array entry, the index is the data point and the value the count (frequency): e.g. $data = array(3=&gt;4, 2.3=&gt;5, 1.25=&gt;6, 0.5=&gt;3)</p><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineSTATS_DATA_SIMPLE"></a> + <h3>STATS_DATA_SIMPLE <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a44">44</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>STATS_DATA_SIMPLE = 0</code> + </td></tr></table> + </td></tr></table> + + STATS_DATA_SIMPLE for an array of numeric values. This is the default.<br /><br /><p>e.g. $data = array(2,3,4,5,1,1,6);</p><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineSTATS_FULL"></a> + <h3>STATS_FULL <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a36">36</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>STATS_FULL = 2</code> + </td></tr></table> + </td></tr></table> + + STATS_FULL to generate also higher moments, mode, median, etc.<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineSTATS_IGNORE_NULL"></a> + <h3>STATS_IGNORE_NULL <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a64">64</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>STATS_IGNORE_NULL = -2</code> + </td></tr></table> + </td></tr></table> + + STATS_IGNORE_NULL, ignore null values and prune them from the data.<br /><br /><p>Any non-numeric value is considered a null in this context.</p><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineSTATS_REJECT_NULL"></a> + <h3>STATS_REJECT_NULL <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a59">59</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>STATS_REJECT_NULL = -1</code> + </td></tr></table> + </td></tr></table> + + STATS_REJECT_NULL, reject data sets with null values. This is the default.<br /><br /><p>Any non-numeric value is considered a null in this context.</p><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineSTATS_USE_NULL_AS_ZERO"></a> + <h3>STATS_USE_NULL_AS_ZERO <span class="smalllinenumber">[line <a href="../__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html#a69">69</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>STATS_USE_NULL_AS_ZERO = -3</code> + </td></tr></table> + </td></tr></table> + + STATS_USE_NULL_AS_ZERO, assign the value of 0 (zero) to null values.<br /><br /><p>Any non-numeric value is considered a null in this context.</p><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:50 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/Math_Stats/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/Math_Stats/_notes/dwsync.xml new file mode 100644 index 0000000..ae6a1e0 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/Math_Stats/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="Base.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---Stats.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="Base.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---Stats.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="Base.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---Stats.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---Stats.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560301152125" remote="131260197000000000" Dst="1" /> +<file name="Base.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560300622804" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---Stats.php.html" server="62.244.88.21/amashow/" local="131414752657676733" remote="131414681400000000" Dst="2" /> +<file name="Base.html" server="62.244.88.21/amashow/" local="131414752657214449" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---Stats.php.html" server="62.244.88.21/deciday/" local="131919461480320364" remote="131826018000000000" Dst="1" /> +<file name="Base.html" server="62.244.88.21/deciday/" local="131919461482218703" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---Stats.php.html" server="62.244.88.21/deciday_18/" local="131414752657676733" remote="131825946000000000" Dst="2" /> +<file name="Base.html" server="62.244.88.21/deciday_18/" local="131414752657214449" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/LMQuadTest.html b/site/config/PHPExcel/Documentation/API/PHPExcel/LMQuadTest.html new file mode 100644 index 0000000..10f9178 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/LMQuadTest.html @@ -0,0 +1,303 @@ +<html> +<head> +<title>Docs For Class LMQuadTest</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: LMQuadTest</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/LMQuadTest.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">quadratic (p-o)'S'S(p-o)</div><br /><br /> + + + + + + + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/LMQuadTest.html#methodgrad">grad</a></li> + <li><a href="../PHPExcel/LMQuadTest.html#methodinitial">initial</a></li> + <li><a href="../PHPExcel/LMQuadTest.html#methodtestdata">testdata</a></li> + <li><a href="../PHPExcel/LMQuadTest.html#methodval">val</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html#a7">7</a>]<br /> +quadratic (p-o)'S'S(p-o)<br /><br /><p>solve for o, S S is a single scale factor</p><br /></div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgrad"></a> + <h3>method grad <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html#a44">44</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void grad( +array[] +$x, array[] +$a, int +$a_k)</code> + </td></tr></table> + </td></tr></table><br /> + + z = (p-o)'S'S(p-o) dz/dp = 2S'S(p-o)<br /><br /><p>z = (s*(px-ox))^2 + (s*(py-oy))^2 dz/dox = -2(s*(px-ox))*s dz/ds = 2*s*[(px-ox)^2 + (py-oy)^2]</p><p>z = (s*dx)^2 + (s*dy)^2 dz/ds = 2(s*dx)*dx + 2(s*dy)*dy</p><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array[]&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">array[]&nbsp;&nbsp;</td> + <td><b>$a</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$a_k</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinitial"></a> + <h3>method initial <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html#a68">68</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array[] initial( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtestdata"></a> + <h3>method testdata <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html#a80">80</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Object[] testdata( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodval"></a> + <h3>method val <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html#a13">13</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void val( +array[] +$x, array[] +$a)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array[]&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">array[]&nbsp;&nbsp;</td> + <td><b>$a</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/LagrangeInterpolation.html b/site/config/PHPExcel/Documentation/API/PHPExcel/LagrangeInterpolation.html new file mode 100644 index 0000000..87da917 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/LagrangeInterpolation.html @@ -0,0 +1,258 @@ +<html> +<head> +<title>Docs For Class LagrangeInterpolation</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: LagrangeInterpolation</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/LagrangeInterpolation.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">Given n points (x0,y0)...(xn-1,yn-1), the following methid computes the polynomial factors of the n-1't degree polynomial passing through the n points.</div><br /><br /> +<h4>Author(s):</h4> +<ul> + <li>Jacob Dreyer</li> + <li>Paul Meagher (port to PHP and minor changes)</li> + </ul> + + + + + + + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/LagrangeInterpolation.html#methodfindPolynomialFactors">findPolynomialFactors</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html#a21">21</a>]<br /> +Given n points (x0,y0)...(xn-1,yn-1), the following methid computes the polynomial factors of the n-1't degree polynomial passing through the n points.<br /><br /><p>Example: Passing in three points (2,3) (1,4) and (3,7) will produce the results [2.5, -8.5, 10] which means that the points are on the curve y = 2.5x² - 8.5x + 10.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Jacob Dreyer</td> + </tr> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Paul Meagher (port to PHP and minor changes)</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td><a href="http://geosoft.no/software/lagrange/LagrangeInterpolation.java.html">http://geosoft.no/software/lagrange/LagrangeInterpolation.java.html</a></td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodfindPolynomialFactors"></a> + <h3>method findPolynomialFactors <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html#a23">23</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void findPolynomialFactors( + +$x, +$y)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$y</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:32 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/LevenbergMarquardt.html b/site/config/PHPExcel/Documentation/API/PHPExcel/LevenbergMarquardt.html new file mode 100644 index 0000000..7fe0f30 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/LevenbergMarquardt.html @@ -0,0 +1,350 @@ +<html> +<head> +<title>Docs For Class LevenbergMarquardt</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: LevenbergMarquardt</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/LevenbergMarquardt.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description"></div><br /><br /> + + + + + + + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/LevenbergMarquardt.html#methodchiSquared">chiSquared</a></li> + <li><a href="../PHPExcel/LevenbergMarquardt.html#methodsolve">solve</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html#a7">7</a>]<br /> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodchiSquared"></a> + <h3>method chiSquared <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html#a21">21</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void chiSquared( +double[][] +$x, double[] +$a, +$y, +$s, object +$f, double[] +$y,, double[] +$s,)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate the current sum-squared-error<br /><br /><p>Chi-squared is the distribution of squared Gaussian errors, thus the name.</p><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">double[][]&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">double[]&nbsp;&nbsp;</td> + <td><b>$a</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">double[]&nbsp;&nbsp;</td> + <td><b>$y,</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">double[]&nbsp;&nbsp;</td> + <td><b>$s,</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">object&nbsp;&nbsp;</td> + <td><b>$f</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$y</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$s</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsolve"></a> + <h3>method solve <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html#a57">57</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>the solve( +x +$x, y +$a, a +$y, vary +$s, s2 +$vary, lambda +$f, termepsilon +$lambda, maxiter +$termepsilon, verbose +$maxiter, +$verbose)</code> + </td></tr></table> + </td></tr></table><br /> + + Minimize E = sum {(y[k] - f(x[k],a)) / s[k]}^2 The individual errors are optionally scaled by s[k].<br /><br /><p>Note that LMfunc implements the value and gradient of f(x,a), NOT the value and gradient of E with respect to a!</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>new lambda for future iterations. Can use this and maxiter to interleave the LM descent with some other task, setting maxiter to something small.</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">x&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>array of domain points, each may be multidimensional</td> + </tr> + <tr> + <td class="type">y&nbsp;&nbsp;</td> + <td><b>$a</b>&nbsp;&nbsp;</td> + <td>corresponding array of values</td> + </tr> + <tr> + <td class="type">a&nbsp;&nbsp;</td> + <td><b>$y</b>&nbsp;&nbsp;</td> + <td>the parameters/state of the model</td> + </tr> + <tr> + <td class="type">vary&nbsp;&nbsp;</td> + <td><b>$s</b>&nbsp;&nbsp;</td> + <td>false to indicate the corresponding a[k] is to be held fixed</td> + </tr> + <tr> + <td class="type">s2&nbsp;&nbsp;</td> + <td><b>$vary</b>&nbsp;&nbsp;</td> + <td>sigma^2 for point i</td> + </tr> + <tr> + <td class="type">lambda&nbsp;&nbsp;</td> + <td><b>$f</b>&nbsp;&nbsp;</td> + <td>blend between steepest descent (lambda high) and jump to bottom of quadratic (lambda zero). Start with 0.001.</td> + </tr> + <tr> + <td class="type">termepsilon&nbsp;&nbsp;</td> + <td><b>$lambda</b>&nbsp;&nbsp;</td> + <td>termination accuracy (0.01)</td> + </tr> + <tr> + <td class="type">maxiter&nbsp;&nbsp;</td> + <td><b>$termepsilon</b>&nbsp;&nbsp;</td> + <td>stop and return after this many iterations if not done</td> + </tr> + <tr> + <td class="type">verbose&nbsp;&nbsp;</td> + <td><b>$maxiter</b>&nbsp;&nbsp;</td> + <td>set to zero (no prints), 1, 2</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$verbose</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel.html new file mode 100644 index 0000000..40e6b55 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel.html @@ -0,0 +1,1646 @@ +<html> +<head> +<title>Docs For Class PHPExcel</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel</h1> +Source Location: /PHPExcel.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodaddCellStyleXf">addCellStyleXf</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodaddCellXf">addCellXf</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodaddExternalSheet">addExternalSheet</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodaddNamedRange">addNamedRange</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodaddSheet">addSheet</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodcopy">copy</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodcreateSheet">createSheet</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methoddisconnectWorksheets">disconnectWorksheets</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgarbageCollect">garbageCollect</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetActiveSheet">getActiveSheet</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetActiveSheetIndex">getActiveSheetIndex</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetAllSheets">getAllSheets</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetCellStyleXfByHashCode">getCellStyleXfByHashCode</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetCellStyleXfByIndex">getCellStyleXfByIndex</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetCellStyleXfCollection">getCellStyleXfCollection</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetCellXfByHashCode">getCellXfByHashCode</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetCellXfByIndex">getCellXfByIndex</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetCellXfCollection">getCellXfCollection</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetCellXfSupervisor">getCellXfSupervisor</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetDefaultStyle">getDefaultStyle</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetIndex">getIndex</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetNamedRange">getNamedRange</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetNamedRanges">getNamedRanges</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetProperties">getProperties</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetSecurity">getSecurity</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetSheet">getSheet</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetSheetByName">getSheetByName</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetSheetCount">getSheetCount</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetSheetNames">getSheetNames</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodgetWorksheetIterator">getWorksheetIterator</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodremoveCellStyleXfByIndex">removeCellStyleXfByIndex</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodremoveCellXfByIndex">removeCellXfByIndex</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodremoveNamedRange">removeNamedRange</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodremoveSheetByIndex">removeSheetByIndex</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodsetActiveSheetIndex">setActiveSheetIndex</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodsetActiveSheetIndexByName">setActiveSheetIndexByName</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodsetIndexByName">setIndexByName</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodsetProperties">setProperties</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodsetSecurity">setSecurity</a></li> + <li><a href="../PHPExcel/PHPExcel.html#methodsheetNameExists">sheetNameExists</a></li> + <li><a href="../PHPExcel/PHPExcel.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 43]<br /> +PHPExcel<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 104]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel with one Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddCellStyleXf"></a> + <h3>method addCellStyleXf <span class="smalllinenumber">[line 718]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCellStyleXf( +PHPExcel_Style +$pStyle)</code> + </td></tr></table> + </td></tr></table><br /> + + Add a cellStyleXf to the workbook<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$pStyle</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddCellXf"></a> + <h3>method addCellXf <span class="smalllinenumber">[line 629]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCellXf( +PHPExcel_Style +$style)</code> + </td></tr></table> + </td></tr></table><br /> + + Add a cellXf to the workbook<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$style</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddExternalSheet"></a> + <h3>method addExternalSheet <span class="smalllinenumber">[line 440]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> addExternalSheet( +PHPExcel_Worksheet +$pSheet, [int|null +$iSheetIndex = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Add external sheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td>External sheet to add</td> + </tr> + <tr> + <td class="type">int|null&nbsp;&nbsp;</td> + <td><b>$iSheetIndex</b>&nbsp;&nbsp;</td> + <td>Index where sheet should go (0,1,..., or null for last)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddNamedRange"></a> + <h3>method addNamedRange <span class="smalllinenumber">[line 480]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> addNamedRange( +<a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a> +$namedRange)</code> + </td></tr></table> + </td></tr></table><br /> + + Add named range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a>&nbsp;&nbsp;</td> + <td><b>$namedRange</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddSheet"></a> + <h3>method addSheet <span class="smalllinenumber">[line 227]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> addSheet( +PHPExcel_Worksheet +$pSheet, [int|null +$iSheetIndex = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Add sheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int|null&nbsp;&nbsp;</td> + <td><b>$iSheetIndex</b>&nbsp;&nbsp;</td> + <td>Index where sheet should go (0,1,..., or null for last)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopy"></a> + <h3>method copy <span class="smalllinenumber">[line 550]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> copy( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Copy workbook (!= clone!)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcreateSheet"></a> + <h3>method createSheet <span class="smalllinenumber">[line 201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> createSheet( +[int|null +$iSheetIndex = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Create sheet and add it to this workbook<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int|null&nbsp;&nbsp;</td> + <td><b>$iSheetIndex</b>&nbsp;&nbsp;</td> + <td>Index where sheet should go (0,1,..., or null for last)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddisconnectWorksheets"></a> + <h3>method disconnectWorksheets <span class="smalllinenumber">[line 135]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void disconnectWorksheets( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Disconnect all worksheets from this PHPExcel workbook object,<br /><br /><p>typically so that the PHPExcel object can be unset</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgarbageCollect"></a> + <h3>method garbageCollect <span class="smalllinenumber">[line 743]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void garbageCollect( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Eliminate all unneeded cellXf and afterwards update the xfIndex for all cells<br /><br /><p>and columns in the workbook</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveSheet"></a> + <h3>method getActiveSheet <span class="smalllinenumber">[line 189]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getActiveSheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get active sheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveSheetIndex"></a> + <h3>method getActiveSheetIndex <span class="smalllinenumber">[line 377]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getActiveSheetIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get active sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Active sheet index</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAllSheets"></a> + <h3>method getAllSheets <span class="smalllinenumber">[line 297]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet[] getAllSheets( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get all sheets<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellStyleXfByHashCode"></a> + <h3>method getCellStyleXfByHashCode <span class="smalllinenumber">[line 703]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>|false getCellStyleXfByHashCode( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Get cellStyleXf by hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellStyleXfByIndex"></a> + <h3>method getCellStyleXfByIndex <span class="smalllinenumber">[line 692]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> getCellStyleXfByIndex( +[int +$pIndex = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Get cellStyleXf by index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellStyleXfCollection"></a> + <h3>method getCellStyleXfCollection <span class="smalllinenumber">[line 681]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style[] getCellStyleXfCollection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the workbook collection of cellStyleXfs<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellXfByHashCode"></a> + <h3>method getCellXfByHashCode <span class="smalllinenumber">[line 600]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>|false getCellXfByHashCode( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Get cellXf by hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellXfByIndex"></a> + <h3>method getCellXfByIndex <span class="smalllinenumber">[line 589]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> getCellXfByIndex( +[int +$pIndex = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Get cellXf by index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellXfCollection"></a> + <h3>method getCellXfCollection <span class="smalllinenumber">[line 578]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style[] getCellXfCollection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the workbook collection of cellXfs<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellXfSupervisor"></a> + <h3>method getCellXfSupervisor <span class="smalllinenumber">[line 671]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> getCellXfSupervisor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the cellXf supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDefaultStyle"></a> + <h3>method getDefaultStyle <span class="smalllinenumber">[line 616]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> getDefaultStyle( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get default style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIndex"></a> + <h3>method getIndex <span class="smalllinenumber">[line 328]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Sheet getIndex( +PHPExcel_Worksheet +$pSheet)</code> + </td></tr></table> + </td></tr></table><br /> + + Get index for sheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>index</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetNamedRange"></a> + <h3>method getNamedRange <span class="smalllinenumber">[line 498]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a>|null getNamedRange( +string +$namedRange, [PHPExcel_Worksheet +$pSheet = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Get named range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$namedRange</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>|null&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td>Scope. Use null for global scope</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetNamedRanges"></a> + <h3>method getNamedRanges <span class="smalllinenumber">[line 470]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_NamedRange[] getNamedRanges( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get named ranges<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetProperties"></a> + <h3>method getProperties <span class="smalllinenumber">[line 149]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> getProperties( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get properties<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSecurity"></a> + <h3>method getSecurity <span class="smalllinenumber">[line 169]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a> getSecurity( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get security<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheet"></a> + <h3>method getSheet <span class="smalllinenumber">[line 283]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getSheet( +[int +$pIndex = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet by index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td>Sheet index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheetByName"></a> + <h3>method getSheetByName <span class="smalllinenumber">[line 309]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getSheetByName( +[string +$pName = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet by name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pName</b>&nbsp;&nbsp;</td> + <td>Sheet name</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheetCount"></a> + <h3>method getSheetCount <span class="smalllinenumber">[line 367]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getSheetCount( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet count<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheetNames"></a> + <h3>method getSheetNames <span class="smalllinenumber">[line 421]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string[] getSheetNames( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet names<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWorksheetIterator"></a> + <h3>method getWorksheetIterator <span class="smalllinenumber">[line 541]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a> getWorksheetIterator( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get worksheet iterator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodremoveCellStyleXfByIndex"></a> + <h3>method removeCellStyleXfByIndex <span class="smalllinenumber">[line 730]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void removeCellStyleXfByIndex( +[int +$pIndex = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove cellStyleXf by index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodremoveCellXfByIndex"></a> + <h3>method removeCellXfByIndex <span class="smalllinenumber">[line 641]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void removeCellXfByIndex( +[int +$pIndex = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove cellXf by index. It is ensured that all cells get their xf index updated.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td>Index to cellXf</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodremoveNamedRange"></a> + <h3>method removeNamedRange <span class="smalllinenumber">[line 523]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> removeNamedRange( +string +$namedRange, [PHPExcel_Worksheet +$pSheet = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove named range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$namedRange</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>|null&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td>Scope: use null for global scope.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodremoveSheetByIndex"></a> + <h3>method removeSheetByIndex <span class="smalllinenumber">[line 261]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void removeSheetByIndex( +[int +$pIndex = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove sheet by index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td>Active sheet index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetActiveSheetIndex"></a> + <h3>method setActiveSheetIndex <span class="smalllinenumber">[line 389]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setActiveSheetIndex( +[int +$pIndex = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set active sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td>Active sheet index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetActiveSheetIndexByName"></a> + <h3>method setActiveSheetIndexByName <span class="smalllinenumber">[line 406]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setActiveSheetIndexByName( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set active sheet index by name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Sheet title</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetIndexByName"></a> + <h3>method setIndexByName <span class="smalllinenumber">[line 345]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>New setIndexByName( +string +$sheetName, int +$newIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Set index for sheet by sheet name.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>sheet index</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$sheetName</b>&nbsp;&nbsp;</td> + <td>Sheet name to modify index for</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$newIndex</b>&nbsp;&nbsp;</td> + <td>New index for the sheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetProperties"></a> + <h3>method setProperties <span class="smalllinenumber">[line 159]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setProperties( +<a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set properties<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSecurity"></a> + <h3>method setSecurity <span class="smalllinenumber">[line 179]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setSecurity( +<a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set security<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsheetNameExists"></a> + <h3>method sheetNameExists <span class="smalllinenumber">[line 214]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean sheetNameExists( +string +$pSheetName)</code> + </td></tr></table> + </td></tr></table><br /> + + Chech if a sheet with a specified name already exists<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pSheetName</b>&nbsp;&nbsp;</td> + <td>Name of the worksheet to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 565]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:26 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_Autoloader.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_Autoloader.html new file mode 100644 index 0000000..4b7e63a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_Autoloader.html @@ -0,0 +1,275 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Autoloader</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Autoloader</h1> +Source Location: /PHPExcel/Autoloader.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Autoloader</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_Autoloader.html#methodLoad">Load</a></li> + <li><a href="../PHPExcel/PHPExcel_Autoloader.html#methodRegister">Register</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 46]<br /> +PHPExcel_Autoloader<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodLoad"></a> + <h3>static method Load <span class="smalllinenumber">[line 67]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void Load( +string +$pClassName)</code> + </td></tr></table> + </td></tr></table><br /> + + Autoload a class identified by name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pClassName</b>&nbsp;&nbsp;</td> + <td>Name of the object to load</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodRegister"></a> + <h3>static method Register <span class="smalllinenumber">[line 52]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void Register( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Register the Autoloader with SPL<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_Comment.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_Comment.html new file mode 100644 index 0000000..f2eba46 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_Comment.html @@ -0,0 +1,837 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Comment</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Comment</h1> +Source Location: /PHPExcel/Comment.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Comment</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_Comment.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodgetAlignment">getAlignment</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodgetAuthor">getAuthor</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodgetFillColor">getFillColor</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodgetHeight">getHeight</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodgetMarginLeft">getMarginLeft</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodgetMarginTop">getMarginTop</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodgetText">getText</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodgetVisible">getVisible</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodgetWidth">getWidth</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodsetAlignment">setAlignment</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodsetAuthor">setAuthor</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodsetHeight">setHeight</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodsetMarginLeft">setMarginLeft</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodsetMarginTop">setMarginTop</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodsetText">setText</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodsetVisible">setVisible</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#methodsetWidth">setWidth</a></li> + <li><a href="../PHPExcel/PHPExcel_Comment.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Comment<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 106]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Comment __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Comment<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAlignment"></a> + <h3>method getAlignment <span class="smalllinenumber">[line 280]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getAlignment( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Alignment<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAuthor"></a> + <h3>method getAuthor <span class="smalllinenumber">[line 120]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getAuthor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Author<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFillColor"></a> + <h3>method getFillColor <span class="smalllinenumber">[line 260]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> getFillColor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get fill color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 289]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel/PHPExcel_IComparable.html#methodgetHashCode">PHPExcel_IComparable::getHashCode()</a></dt> + <dd>Get hash code</dd> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHeight"></a> + <h3>method getHeight <span class="smalllinenumber">[line 180]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHeight( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get comment height (CSS style, i.e. XXpx or YYpt)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetMarginLeft"></a> + <h3>method getMarginLeft <span class="smalllinenumber">[line 200]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getMarginLeft( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get left margin (CSS style, i.e. XXpx or YYpt)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetMarginTop"></a> + <h3>method getMarginTop <span class="smalllinenumber">[line 220]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getMarginTop( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get top margin (CSS style, i.e. XXpx or YYpt)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetText"></a> + <h3>method getText <span class="smalllinenumber">[line 140]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a> getText( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Rich text comment<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetVisible"></a> + <h3>method getVisible <span class="smalllinenumber">[line 240]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getVisible( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is the comment visible by default?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWidth"></a> + <h3>method getWidth <span class="smalllinenumber">[line 160]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getWidth( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get comment width (CSS style, i.e. XXpx or YYpt)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAlignment"></a> + <h3>method setAlignment <span class="smalllinenumber">[line 270]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a> setAlignment( +[string +$pValue = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Alignment<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAuthor"></a> + <h3>method setAuthor <span class="smalllinenumber">[line 130]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a> setAuthor( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Author<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetHeight"></a> + <h3>method setHeight <span class="smalllinenumber">[line 190]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a> setHeight( +[string +$value = '55.5pt'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set comment height (CSS style, i.e. XXpx or YYpt)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetMarginLeft"></a> + <h3>method setMarginLeft <span class="smalllinenumber">[line 210]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a> setMarginLeft( +[string +$value = '59.25pt'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set left margin (CSS style, i.e. XXpx or YYpt)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetMarginTop"></a> + <h3>method setMarginTop <span class="smalllinenumber">[line 230]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a> setMarginTop( +[string +$value = '1.5pt'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set top margin (CSS style, i.e. XXpx or YYpt)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetText"></a> + <h3>method setText <span class="smalllinenumber">[line 150]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a> setText( +PHPExcel_RichText +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Rich text comment<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetVisible"></a> + <h3>method setVisible <span class="smalllinenumber">[line 250]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a> setVisible( +[boolean +$value = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set comment default visibility<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWidth"></a> + <h3>method setWidth <span class="smalllinenumber">[line 170]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a> setWidth( +[string +$value = '96pt'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set comment width (CSS style, i.e. XXpx or YYpt)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 307]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:32 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_DocumentProperties.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_DocumentProperties.html new file mode 100644 index 0000000..2ba7c42 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_DocumentProperties.html @@ -0,0 +1,1284 @@ +<html> +<head> +<title>Docs For Class PHPExcel_DocumentProperties</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_DocumentProperties</h1> +Source Location: /PHPExcel/DocumentProperties.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_DocumentProperties</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_BOOLEAN">PROPERTY_TYPE_BOOLEAN</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_DATE">PROPERTY_TYPE_DATE</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_FLOAT">PROPERTY_TYPE_FLOAT</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_INTEGER">PROPERTY_TYPE_INTEGER</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_STRING">PROPERTY_TYPE_STRING</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_UNKNOWN">PROPERTY_TYPE_UNKNOWN</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodconvertProperty">convertProperty</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodconvertPropertyType">convertPropertyType</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetCategory">getCategory</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetCompany">getCompany</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetCreated">getCreated</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetCreator">getCreator</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetCustomProperties">getCustomProperties</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetCustomPropertyType">getCustomPropertyType</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetCustomPropertyValue">getCustomPropertyValue</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetDescription">getDescription</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetKeywords">getKeywords</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetLastModifiedBy">getLastModifiedBy</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetManager">getManager</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetModified">getModified</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetSubject">getSubject</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodgetTitle">getTitle</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodisCustomPropertySet">isCustomPropertySet</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetCategory">setCategory</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetCompany">setCompany</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetCreated">setCreated</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetCreator">setCreator</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetCustomProperty">setCustomProperty</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetDescription">setDescription</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetKeywords">setKeywords</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetLastModifiedBy">setLastModifiedBy</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetManager">setManager</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetModified">setModified</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetSubject">setSubject</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#methodsetTitle">setTitle</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentProperties.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_DocumentProperties<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodconvertProperty"></a> + <h3>static method convertProperty <span class="smalllinenumber">[line 478]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void convertProperty( + +$propertyValue, +$propertyType)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$propertyValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$propertyType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodconvertPropertyType"></a> + <h3>static method convertPropertyType <span class="smalllinenumber">[line 536]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void convertPropertyType( + +$propertyType)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$propertyType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 135]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_DocumentProperties __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_DocumentProperties<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCategory"></a> + <h3>method getCategory <span class="smalllinenumber">[line 328]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getCategory( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Category<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCompany"></a> + <h3>method getCompany <span class="smalllinenumber">[line 348]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getCompany( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Company<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCreated"></a> + <h3>method getCreated <span class="smalllinenumber">[line 188]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>datetime getCreated( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Created<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCreator"></a> + <h3>method getCreator <span class="smalllinenumber">[line 148]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getCreator( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Creator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCustomProperties"></a> + <h3>method getCustomProperties <span class="smalllinenumber">[line 388]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getCustomProperties( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a List of Custom Property Names<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of string</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCustomPropertyType"></a> + <h3>method getCustomPropertyType <span class="smalllinenumber">[line 421]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getCustomPropertyType( +string +$propertyName)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a Custom Property Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$propertyName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCustomPropertyValue"></a> + <h3>method getCustomPropertyValue <span class="smalllinenumber">[line 408]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getCustomPropertyValue( +string +$propertyName)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a Custom Property Value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$propertyName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDescription"></a> + <h3>method getDescription <span class="smalllinenumber">[line 268]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getDescription( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Description<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetKeywords"></a> + <h3>method getKeywords <span class="smalllinenumber">[line 308]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getKeywords( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Keywords<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLastModifiedBy"></a> + <h3>method getLastModifiedBy <span class="smalllinenumber">[line 168]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getLastModifiedBy( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Last Modified By<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetManager"></a> + <h3>method getManager <span class="smalllinenumber">[line 368]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getManager( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Manager<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetModified"></a> + <h3>method getModified <span class="smalllinenumber">[line 218]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>datetime getModified( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Modified<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSubject"></a> + <h3>method getSubject <span class="smalllinenumber">[line 288]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSubject( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Subject<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTitle"></a> + <h3>method getTitle <span class="smalllinenumber">[line 248]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getTitle( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisCustomPropertySet"></a> + <h3>method isCustomPropertySet <span class="smalllinenumber">[line 398]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isCustomPropertySet( +string +$propertyName)</code> + </td></tr></table> + </td></tr></table><br /> + + Check if a Custom Property is defined<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$propertyName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCategory"></a> + <h3>method setCategory <span class="smalllinenumber">[line 338]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setCategory( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Category<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCompany"></a> + <h3>method setCompany <span class="smalllinenumber">[line 358]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setCompany( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Company<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCreated"></a> + <h3>method setCreated <span class="smalllinenumber">[line 198]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setCreated( +[datetime +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Created<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">datetime&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCreator"></a> + <h3>method setCreator <span class="smalllinenumber">[line 158]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setCreator( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Creator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCustomProperty"></a> + <h3>method setCustomProperty <span class="smalllinenumber">[line 441]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setCustomProperty( +string +$propertyName, [mixed +$propertyValue = ''], [string +$propertyType = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set a Custom Property<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$propertyName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$propertyValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$propertyType</b>&nbsp;&nbsp;</td> + <td>'i' : Integer 'f' : Floating Point 's' : String 'd' : Date/Time 'b' : Boolean</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDescription"></a> + <h3>method setDescription <span class="smalllinenumber">[line 278]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setDescription( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Description<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetKeywords"></a> + <h3>method setKeywords <span class="smalllinenumber">[line 318]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setKeywords( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Keywords<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLastModifiedBy"></a> + <h3>method setLastModifiedBy <span class="smalllinenumber">[line 178]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setLastModifiedBy( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Last Modified By<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetManager"></a> + <h3>method setManager <span class="smalllinenumber">[line 378]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setManager( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Manager<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetModified"></a> + <h3>method setModified <span class="smalllinenumber">[line 228]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setModified( +[datetime +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Modified<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">datetime&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSubject"></a> + <h3>method setSubject <span class="smalllinenumber">[line 298]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setSubject( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Subject<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTitle"></a> + <h3>method setTitle <span class="smalllinenumber">[line 258]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a> setTitle( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 467]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constPROPERTY_TYPE_BOOLEAN"></a> + <p></p> + <h4>PROPERTY_TYPE_BOOLEAN = <span class="value">&nbsp;'b'</span></h4> + <p>[line 39]</p> + constants<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPROPERTY_TYPE_DATE"></a> + <p></p> + <h4>PROPERTY_TYPE_DATE = <span class="value">&nbsp;'d'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPROPERTY_TYPE_FLOAT"></a> + <p></p> + <h4>PROPERTY_TYPE_FLOAT = <span class="value">&nbsp;'f'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPROPERTY_TYPE_INTEGER"></a> + <p></p> + <h4>PROPERTY_TYPE_INTEGER = <span class="value">&nbsp;'i'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPROPERTY_TYPE_STRING"></a> + <p></p> + <h4>PROPERTY_TYPE_STRING = <span class="value">&nbsp;'s'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPROPERTY_TYPE_UNKNOWN"></a> + <p></p> + <h4>PROPERTY_TYPE_UNKNOWN = <span class="value">&nbsp;'u'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:45 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_DocumentSecurity.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_DocumentSecurity.html new file mode 100644 index 0000000..091340b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_DocumentSecurity.html @@ -0,0 +1,518 @@ +<html> +<head> +<title>Docs For Class PHPExcel_DocumentSecurity</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_DocumentSecurity</h1> +Source Location: /PHPExcel/DocumentSecurity.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_DocumentSecurity</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#methodgetLockRevision">getLockRevision</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#methodgetLockStructure">getLockStructure</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#methodgetLockWindows">getLockWindows</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#methodgetRevisionsPassword">getRevisionsPassword</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#methodgetWorkbookPassword">getWorkbookPassword</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#methodisSecurityEnabled">isSecurityEnabled</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#methodsetLockRevision">setLockRevision</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#methodsetLockStructure">setLockStructure</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#methodsetLockWindows">setLockWindows</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#methodsetRevisionsPassword">setRevisionsPassword</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#methodsetWorkbookPassword">setWorkbookPassword</a></li> + <li><a href="../PHPExcel/PHPExcel_DocumentSecurity.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_DocumentSecurity<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 76]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_DocumentSecurity __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_DocumentSecurity<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLockRevision"></a> + <h3>method getLockRevision <span class="smalllinenumber">[line 102]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getLockRevision( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get LockRevision<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLockStructure"></a> + <h3>method getLockStructure <span class="smalllinenumber">[line 122]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getLockStructure( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get LockStructure<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLockWindows"></a> + <h3>method getLockWindows <span class="smalllinenumber">[line 142]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getLockWindows( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get LockWindows<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRevisionsPassword"></a> + <h3>method getRevisionsPassword <span class="smalllinenumber">[line 162]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getRevisionsPassword( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get RevisionsPassword (hashed)<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWorkbookPassword"></a> + <h3>method getWorkbookPassword <span class="smalllinenumber">[line 186]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getWorkbookPassword( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get WorkbookPassword (hashed)<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisSecurityEnabled"></a> + <h3>method isSecurityEnabled <span class="smalllinenumber">[line 91]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isSecurityEnabled( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is some sort of dcument security enabled?<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLockRevision"></a> + <h3>method setLockRevision <span class="smalllinenumber">[line 112]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a> setLockRevision( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set LockRevision<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLockStructure"></a> + <h3>method setLockStructure <span class="smalllinenumber">[line 132]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a> setLockStructure( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set LockStructure<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLockWindows"></a> + <h3>method setLockWindows <span class="smalllinenumber">[line 152]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a> setLockWindows( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set LockWindows<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRevisionsPassword"></a> + <h3>method setRevisionsPassword <span class="smalllinenumber">[line 173]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a> setRevisionsPassword( +[string +$pValue = ''], [boolean +$pAlreadyHashed = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set RevisionsPassword<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pAlreadyHashed</b>&nbsp;&nbsp;</td> + <td>If the password has already been hashed, set this to true</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWorkbookPassword"></a> + <h3>method setWorkbookPassword <span class="smalllinenumber">[line 197]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a> setWorkbookPassword( +[string +$pValue = ''], [boolean +$pAlreadyHashed = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set WorkbookPassword<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pAlreadyHashed</b>&nbsp;&nbsp;</td> + <td>If the password has already been hashed, set this to true</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 208]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:47 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_Exception.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_Exception.html new file mode 100644 index 0000000..60d6b6a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_Exception.html @@ -0,0 +1,393 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Exception</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Exception</h1> +Source Location: /PHPExcel/Exception.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre>Exception + | + --PHPExcel_Exception</pre><br /> +<div class="description">PHPExcel_Exception</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_Exception.html#methoderrorHandlerCallback">errorHandlerCallback</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: Exception (Internal Class)</h4> +<dl> +<dt> + $code + </dt> +<dd> + +</dd> +<dt> + $file + </dt> +<dd> + +</dd> +<dt> + $line + </dt> +<dd> + +</dd> +<dt> + $message + </dt> +<dd> + +</dd> +<dt> + $previous + </dt> +<dd> + +</dd> +<dt> + $string + </dt> +<dd> + +</dd> +<dt> + $trace + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: Exception (Internal Class)</h4> +<dl> + <dt> + constructor __construct ( [$message = ], [$code = ], [$previous = ] ) + </dt> + <dd> + + </dd> + <dt> + getCode ( ) + </dt> + <dd> + + </dd> + <dt> + getFile ( ) + </dt> + <dd> + + </dd> + <dt> + getLine ( ) + </dt> + <dd> + + </dd> + <dt> + getMessage ( ) + </dt> + <dd> + + </dd> + <dt> + getPrevious ( ) + </dt> + <dd> + + </dd> + <dt> + getTrace ( ) + </dt> + <dd> + + </dd> + <dt> + getTraceAsString ( ) + </dt> + <dd> + + </dd> + <dt> + __clone ( ) + </dt> + <dd> + + </dd> + <dt> + __toString ( ) + </dt> + <dd> + + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Exception<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methoderrorHandlerCallback"></a> + <h3>static method errorHandlerCallback <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void errorHandlerCallback( +mixed +$code, mixed +$string, mixed +$file, mixed +$line, mixed +$context)</code> + </td></tr></table> + </td></tr></table><br /> + + Error handler callback<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$code</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$string</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$file</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$line</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$context</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_HashTable.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_HashTable.html new file mode 100644 index 0000000..61b9537 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_HashTable.html @@ -0,0 +1,650 @@ +<html> +<head> +<title>Docs For Class PHPExcel_HashTable</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_HashTable</h1> +Source Location: /PHPExcel/HashTable.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_HashTable</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#var$_items">$_items</a></li> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#var$_keyMap">$_keyMap</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#methodadd">add</a></li> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#methodaddFromSource">addFromSource</a></li> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#methodclear">clear</a></li> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#methodcount">count</a></li> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#methodgetByHashCode">getByHashCode</a></li> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#methodgetByIndex">getByIndex</a></li> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#methodgetIndexForHashCode">getIndexForHashCode</a></li> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#methodremove">remove</a></li> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#methodtoArray">toArray</a></li> + <li><a href="../PHPExcel/PHPExcel_HashTable.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_HashTable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_items"></a> + <p></p> + <h4>$_items = <span class="value">array()</span></h4> + <p>[line 43]</p> + HashTable elements<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_keyMap"></a> + <p></p> + <h4>$_keyMap = <span class="value">array()</span></h4> + <p>[line 50]</p> + HashTable key map<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 58]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_HashTable __construct( +[PHPExcel_IComparable[] +$pSource = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_HashTable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">PHPExcel_IComparable[]&nbsp;&nbsp;</td> + <td><b>$pSource</b>&nbsp;&nbsp;</td> + <td>Optional source array to create HashTable from</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodadd"></a> + <h3>method add <span class="smalllinenumber">[line 91]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void add( +[<a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a> +$pSource = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Add HashTable item<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a>&nbsp;&nbsp;</td> + <td><b>$pSource</b>&nbsp;&nbsp;</td> + <td>Item to add</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddFromSource"></a> + <h3>method addFromSource <span class="smalllinenumber">[line 72]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addFromSource( +[PHPExcel_IComparable[] +$pSource = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Add HashTable items from source<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">PHPExcel_IComparable[]&nbsp;&nbsp;</td> + <td><b>$pSource</b>&nbsp;&nbsp;</td> + <td>Source array to create HashTable from</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodclear"></a> + <h3>method clear <span class="smalllinenumber">[line 128]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void clear( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear HashTable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcount"></a> + <h3>method count <span class="smalllinenumber">[line 138]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int count( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Count<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetByHashCode"></a> + <h3>method getByHashCode <span class="smalllinenumber">[line 174]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a> getByHashCode( +[string +$pHashCode = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Get by hashcode<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pHashCode</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetByIndex"></a> + <h3>method getByIndex <span class="smalllinenumber">[line 159]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a> getByIndex( +[int +$pIndex = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Get by index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIndexForHashCode"></a> + <h3>method getIndexForHashCode <span class="smalllinenumber">[line 148]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getIndexForHashCode( +[string +$pHashCode = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Get index for hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Index</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pHashCode</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodremove"></a> + <h3>method remove <span class="smalllinenumber">[line 105]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void remove( +[<a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a> +$pSource = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove HashTable item<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a>&nbsp;&nbsp;</td> + <td><b>$pSource</b>&nbsp;&nbsp;</td> + <td>Item to remove</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtoArray"></a> + <h3>method toArray <span class="smalllinenumber">[line 187]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_IComparable[] toArray( +)</code> + </td></tr></table> + </td></tr></table><br /> + + HashTable to array<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 194]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:21 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_IComparable.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_IComparable.html new file mode 100644 index 0000000..6dd96ec --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_IComparable.html @@ -0,0 +1,241 @@ +<html> +<head> +<title>Docs For Class PHPExcel_IComparable</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_IComparable</h1> +Source Location: /PHPExcel/IComparable.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Interface Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_IComparable</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html#methodgetHashCode">getHashCode</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 34]<br /> +PHPExcel_IComparable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 41]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_IOFactory.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_IOFactory.html new file mode 100644 index 0000000..c36bca5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_IOFactory.html @@ -0,0 +1,551 @@ +<html> +<head> +<title>Docs For Class PHPExcel_IOFactory</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_IOFactory</h1> +Source Location: /PHPExcel/IOFactory.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_IOFactory</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_IOFactory.html#methodaddSearchLocation">addSearchLocation</a></li> + <li><a href="../PHPExcel/PHPExcel_IOFactory.html#methodcreateReader">createReader</a></li> + <li><a href="../PHPExcel/PHPExcel_IOFactory.html#methodcreateReaderForFile">createReaderForFile</a></li> + <li><a href="../PHPExcel/PHPExcel_IOFactory.html#methodcreateWriter">createWriter</a></li> + <li><a href="../PHPExcel/PHPExcel_IOFactory.html#methodgetSearchLocations">getSearchLocations</a></li> + <li><a href="../PHPExcel/PHPExcel_IOFactory.html#methodidentify">identify</a></li> + <li><a href="../PHPExcel/PHPExcel_IOFactory.html#methodload">load</a></li> + <li><a href="../PHPExcel/PHPExcel_IOFactory.html#methodsetSearchLocations">setSearchLocations</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 45]<br /> +PHPExcel_IOFactory<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodaddSearchLocation"></a> + <h3>static method addSearchLocation <span class="smalllinenumber">[line 118]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void addSearchLocation( +[string +$type = ''], [string +$location = ''], [string +$classname = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Add search location<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td>Example: IWriter</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$location</b>&nbsp;&nbsp;</td> + <td>Example: PHPExcel/Writer/{0}.php</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$classname</b>&nbsp;&nbsp;</td> + <td>Example: PHPExcel_Writer_{0}</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcreateReader"></a> + <h3>static method createReader <span class="smalllinenumber">[line 161]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a> createReader( +[string +$readerType = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Create PHPExcel_Reader_IReader<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$readerType</b>&nbsp;&nbsp;</td> + <td>Example: Excel2007</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcreateReaderForFile"></a> + <h3>static method createReaderForFile <span class="smalllinenumber">[line 221]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a> createReaderForFile( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Create PHPExcel_Reader_IReader for file using automatic PHPExcel_Reader_IReader resolution<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td>The name of the spreadsheet file</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcreateWriter"></a> + <h3>static method createWriter <span class="smalllinenumber">[line 132]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a> createWriter( +<a href="../PHPExcel/PHPExcel.html">PHPExcel</a> +$phpExcel, [string +$writerType = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Create PHPExcel_Writer_IWriter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$phpExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$writerType</b>&nbsp;&nbsp;</td> + <td>Example: Excel2007</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSearchLocations"></a> + <h3>static method getSearchLocations <span class="smalllinenumber">[line 89]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array getSearchLocations( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get search locations<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodidentify"></a> + <h3>static method identify <span class="smalllinenumber">[line 204]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string identify( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify file type using automatic PHPExcel_Reader_IReader resolution<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td>The name of the spreadsheet file to identify</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodload"></a> + <h3>static method load <span class="smalllinenumber">[line 190]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static <a href="../PHPExcel/PHPExcel.html">PHPExcel</a> load( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file using automatic PHPExcel_Reader_IReader resolution<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td>The name of the spreadsheet file</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSearchLocations"></a> + <h3>static method setSearchLocations <span class="smalllinenumber">[line 101]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void setSearchLocations( +array +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set search locations<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_NamedRange.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_NamedRange.html new file mode 100644 index 0000000..f6ad578 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_NamedRange.html @@ -0,0 +1,657 @@ +<html> +<head> +<title>Docs For Class PHPExcel_NamedRange</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_NamedRange</h1> +Source Location: /PHPExcel/NamedRange.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_NamedRange</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#methodgetLocalOnly">getLocalOnly</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#methodgetName">getName</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#methodgetRange">getRange</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#methodgetScope">getScope</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#methodgetWorksheet">getWorksheet</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#methodresolveRange">resolveRange</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#methodsetLocalOnly">setLocalOnly</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#methodsetName">setName</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#methodsetRange">setRange</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#methodsetScope">setScope</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#methodsetWorksheet">setWorksheet</a></li> + <li><a href="../PHPExcel/PHPExcel_NamedRange.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_NamedRange<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodresolveRange"></a> + <h3>static method resolveRange <span class="smalllinenumber">[line 228]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a> resolveRange( +[string +$pNamedRange = ''], PHPExcel_Worksheet +$pSheet)</code> + </td></tr></table> + </td></tr></table><br /> + + Resolve a named range to a regular cell range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pNamedRange</b>&nbsp;&nbsp;</td> + <td>Named range</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>|null&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td>Scope. Use null for global scope</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 82]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_NamedRange __construct( +[string +$pName = null], PHPExcel_Worksheet +$pWorksheet, [string +$pRange = 'A1'], [bool +$pLocalOnly = false], [<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>|null +$pScope = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new NamedRange<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pWorksheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$pLocalOnly</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>|null&nbsp;&nbsp;</td> + <td><b>$pScope</b>&nbsp;&nbsp;</td> + <td>Scope. Only applies when $pLocalOnly = true. Null for global scope.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLocalOnly"></a> + <h3>method getLocalOnly <span class="smalllinenumber">[line 184]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool getLocalOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get localOnly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetName"></a> + <h3>method getName <span class="smalllinenumber">[line 103]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRange"></a> + <h3>method getRange <span class="smalllinenumber">[line 162]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getRange( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetScope"></a> + <h3>method getScope <span class="smalllinenumber">[line 205]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>|null getScope( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get scope<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWorksheet"></a> + <h3>method getWorksheet <span class="smalllinenumber">[line 140]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getWorksheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLocalOnly"></a> + <h3>method setLocalOnly <span class="smalllinenumber">[line 194]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a> setLocalOnly( +[bool +$value = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set localOnly<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetName"></a> + <h3>method setName <span class="smalllinenumber">[line 113]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a> setName( +[string +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRange"></a> + <h3>method setRange <span class="smalllinenumber">[line 172]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a> setRange( +[string +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetScope"></a> + <h3>method setScope <span class="smalllinenumber">[line 215]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a> setScope( +[PHPExcel_Worksheet +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set scope<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>|null&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWorksheet"></a> + <h3>method setWorksheet <span class="smalllinenumber">[line 150]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a> setWorksheet( +[PHPExcel_Worksheet +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 235]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:44 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_ReferenceHelper.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_ReferenceHelper.html new file mode 100644 index 0000000..d25b7b0 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_ReferenceHelper.html @@ -0,0 +1,570 @@ +<html> +<head> +<title>Docs For Class PHPExcel_ReferenceHelper</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_ReferenceHelper</h1> +Source Location: /PHPExcel/ReferenceHelper.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_ReferenceHelper (Singleton)</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_CELLRANGE">REFHELPER_REGEXP_CELLRANGE</a></li> + <li><a href="../PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_CELLREF">REFHELPER_REGEXP_CELLREF</a></li> + <li><a href="../PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_COLRANGE">REFHELPER_REGEXP_COLRANGE</a></li> + <li><a href="../PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_ROWRANGE">REFHELPER_REGEXP_ROWRANGE</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_ReferenceHelper.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel/PHPExcel_ReferenceHelper.html#methodgetInstance">getInstance</a></li> + <li><a href="../PHPExcel/PHPExcel_ReferenceHelper.html#methodinsertNewBefore">insertNewBefore</a></li> + <li><a href="../PHPExcel/PHPExcel_ReferenceHelper.html#methodupdateCellReference">updateCellReference</a></li> + <li><a href="../PHPExcel/PHPExcel_ReferenceHelper.html#methodupdateFormulaReferences">updateFormulaReferences</a></li> + <li><a href="../PHPExcel/PHPExcel_ReferenceHelper.html#methodupdateNamedFormulas">updateNamedFormulas</a></li> + <li><a href="../PHPExcel/PHPExcel_ReferenceHelper.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_ReferenceHelper (Singleton)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodgetInstance"></a> + <h3>static method getInstance <span class="smalllinenumber">[line 57]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a> getInstance( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get an instance of this class<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 68]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_ReferenceHelper __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_ReferenceHelper<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinsertNewBefore"></a> + <h3>method insertNewBefore <span class="smalllinenumber">[line 79]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void insertNewBefore( +[int +$pBefore = 'A1'], [int +$pNumCols = 0], [int +$pNumRows = 0], [PHPExcel_Worksheet +$pSheet = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Insert a new column, updating all possible related data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pBefore</b>&nbsp;&nbsp;</td> + <td>Insert before this one</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumCols</b>&nbsp;&nbsp;</td> + <td>Number of columns to insert</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumRows</b>&nbsp;&nbsp;</td> + <td>Number of rows to insert</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodupdateCellReference"></a> + <h3>method updateCellReference <span class="smalllinenumber">[line 554]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string updateCellReference( +[string +$pCellRange = 'A1'], [int +$pBefore = 'A1'], [int +$pNumCols = 0], [int +$pNumRows = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Update cell reference<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Updated cell range</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCellRange</b>&nbsp;&nbsp;</td> + <td>Cell range</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pBefore</b>&nbsp;&nbsp;</td> + <td>Insert before this one</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumCols</b>&nbsp;&nbsp;</td> + <td>Number of columns to increment</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumRows</b>&nbsp;&nbsp;</td> + <td>Number of rows to increment</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodupdateFormulaReferences"></a> + <h3>method updateFormulaReferences <span class="smalllinenumber">[line 420]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string updateFormulaReferences( +[string +$pFormula = ''], [int +$pBefore = 'A1'], [int +$pNumCols = 0], [int +$pNumRows = 0], [ +$sheetName = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Update references within formulas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Updated formula</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFormula</b>&nbsp;&nbsp;</td> + <td>Formula to update</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pBefore</b>&nbsp;&nbsp;</td> + <td>Insert before this one</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumCols</b>&nbsp;&nbsp;</td> + <td>Number of columns to insert</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumRows</b>&nbsp;&nbsp;</td> + <td>Number of rows to insert</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$sheetName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodupdateNamedFormulas"></a> + <h3>method updateNamedFormulas <span class="smalllinenumber">[line 578]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void updateNamedFormulas( +<a href="../PHPExcel/PHPExcel.html">PHPExcel</a> +$pPhpExcel, [string +$oldName = ''], [string +$newName = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Update named formulas (i.e. containing worksheet references / named ranges)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPhpExcel</b>&nbsp;&nbsp;</td> + <td>Object to update</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$oldName</b>&nbsp;&nbsp;</td> + <td>Old name (name to replace)</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$newName</b>&nbsp;&nbsp;</td> + <td>New name</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 682]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + __clone implementation. Cloning should not be allowed in a Singleton!<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constREFHELPER_REGEXP_CELLRANGE"></a> + <p></p> + <h4>REFHELPER_REGEXP_CELLRANGE = <span class="value">&nbsp;'((\w*|\'[^!]*\')!)?(\$?[a-z]{1,3}\$?\d+):(\$?[a-z]{1,3}\$?\d+)'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constREFHELPER_REGEXP_CELLREF"></a> + <p></p> + <h4>REFHELPER_REGEXP_CELLREF = <span class="value">&nbsp;'((\w*|\'[^!]*\')!)?(?&lt;![:a-z\$])(\$?[a-z]{1,3}\$?\d+)(?=[^:!\d\'])'</span></h4> + <p>[line 40]</p> + Regular Expressions<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constREFHELPER_REGEXP_COLRANGE"></a> + <p></p> + <h4>REFHELPER_REGEXP_COLRANGE = <span class="value">&nbsp;'((\w*|\'[^!]*\')!)?(\$?[a-z]{1,3}):(\$?[a-z]{1,3})'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constREFHELPER_REGEXP_ROWRANGE"></a> + <p></p> + <h4>REFHELPER_REGEXP_ROWRANGE = <span class="value">&nbsp;'((\w*|\'[^!]*\')!)?(\$?\d+):(\$?\d+)'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_WorksheetIterator.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_WorksheetIterator.html new file mode 100644 index 0000000..76c7b2b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PHPExcel_WorksheetIterator.html @@ -0,0 +1,435 @@ +<html> +<head> +<title>Docs For Class PHPExcel_WorksheetIterator</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_WorksheetIterator</h1> +Source Location: /PHPExcel/WorksheetIterator.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_WorksheetIterator</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li>Iterator (internal interface)</li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PHPExcel_WorksheetIterator.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel/PHPExcel_WorksheetIterator.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel/PHPExcel_WorksheetIterator.html#methodcurrent">current</a></li> + <li><a href="../PHPExcel/PHPExcel_WorksheetIterator.html#methodkey">key</a></li> + <li><a href="../PHPExcel/PHPExcel_WorksheetIterator.html#methodnext">next</a></li> + <li><a href="../PHPExcel/PHPExcel_WorksheetIterator.html#methodrewind">rewind</a></li> + <li><a href="../PHPExcel/PHPExcel_WorksheetIterator.html#methodvalid">valid</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 38]<br /> +PHPExcel_WorksheetIterator<br /><br /><p>Used to iterate worksheets in PHPExcel</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 59]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_WorksheetIterator __construct( +[<a href="../PHPExcel/PHPExcel.html">PHPExcel</a> +$subject = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new worksheet iterator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$subject</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 67]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcurrent"></a> + <h3>method current <span class="smalllinenumber">[line 83]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> current( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Current PHPExcel_Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::current</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodkey"></a> + <h3>method key <span class="smalllinenumber">[line 92]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int key( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Current key<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::key</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodnext"></a> + <h3>method next <span class="smalllinenumber">[line 99]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void next( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Next value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::next</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrewind"></a> + <h3>method rewind <span class="smalllinenumber">[line 74]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void rewind( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Rewind iterator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::rewind</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodvalid"></a> + <h3>method valid <span class="smalllinenumber">[line 108]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean valid( +)</code> + </td></tr></table> + </td></tr></table><br /> + + More PHPExcel_Worksheet instances available?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::valid</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/PclZip.html b/site/config/PHPExcel/Documentation/API/PHPExcel/PclZip.html new file mode 100644 index 0000000..3cf623d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/PclZip.html @@ -0,0 +1,1826 @@ +<html> +<head> +<title>Docs For Class PclZip</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PclZip</h1> +Source Location: /PHPExcel/Shared/PCLZip/pclzip.lib.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description"></div><br /><br /> + + + + + + + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel/PclZip.html#var$error_code">$error_code</a></li> + <li><a href="../PHPExcel/PclZip.html#var$error_string">$error_string</a></li> + <li><a href="../PHPExcel/PclZip.html#var$magic_quotes_status">$magic_quotes_status</a></li> + <li><a href="../PHPExcel/PclZip.html#var$zipname">$zipname</a></li> + <li><a href="../PHPExcel/PclZip.html#var$zip_fd">$zip_fd</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a></li> + <li><a href="../PHPExcel/PclZip.html#methodadd">add</a></li> + <li><a href="../PHPExcel/PclZip.html#methodcreate">create</a></li> + <li><a href="../PHPExcel/PclZip.html#methoddelete">delete</a></li> + <li><a href="../PHPExcel/PclZip.html#methoddeleteByIndex">deleteByIndex</a></li> + <li><a href="../PHPExcel/PclZip.html#methodduplicate">duplicate</a></li> + <li><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a></li> + <li><a href="../PHPExcel/PclZip.html#methoderrorInfo">errorInfo</a></li> + <li><a href="../PHPExcel/PclZip.html#methoderrorName">errorName</a></li> + <li><a href="../PHPExcel/PclZip.html#methodextract">extract</a></li> + <li><a href="../PHPExcel/PclZip.html#methodextractByIndex">extractByIndex</a></li> + <li><a href="../PHPExcel/PclZip.html#methodlistContent">listContent</a></li> + <li><a href="../PHPExcel/PclZip.html#methodmerge">merge</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivAdd">privAdd</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivAddFile">privAddFile</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivAddFileList">privAddFileList</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivAddFileUsingTempFile">privAddFileUsingTempFile</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivAddList">privAddList</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivCalculateStoredFilename">privCalculateStoredFilename</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivCheckFileHeaders">privCheckFileHeaders</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivCheckFormat">privCheckFormat</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivCreate">privCreate</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivDeleteByRule">privDeleteByRule</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivDirCheck">privDirCheck</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivDisableMagicQuotes">privDisableMagicQuotes</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivDuplicate">privDuplicate</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivExtractByRule">privExtractByRule</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivExtractFile">privExtractFile</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivExtractFileAsString">privExtractFileAsString</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivExtractFileInOutput">privExtractFileInOutput</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivExtractFileUsingTempFile">privExtractFileUsingTempFile</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivFileDescrExpand">privFileDescrExpand</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivFileDescrParseAtt">privFileDescrParseAtt</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivList">privList</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivMerge">privMerge</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivOpenFd">privOpenFd</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivOptionDefaultThreshold">privOptionDefaultThreshold</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivParseOptions">privParseOptions</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivReadCentralFileHeader">privReadCentralFileHeader</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivReadEndCentralDir">privReadEndCentralDir</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivReadFileHeader">privReadFileHeader</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivWriteCentralFileHeader">privWriteCentralFileHeader</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivWriteCentralHeader">privWriteCentralHeader</a></li> + <li><a href="../PHPExcel/PclZip.html#methodprivWriteFileHeader">privWriteFileHeader</a></li> + <li><a href="../PHPExcel/PclZip.html#methodproperties">properties</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a190">190</a>]<br /> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$error_code"></a> + <p></p> + <h4>$error_code = <span class="value">&nbsp;1</span></h4> + <p>[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a199">199</a>]</p> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$error_string"></a> + <p></p> + <h4>$error_string = <span class="value">&nbsp;''</span></h4> + <p>[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a200">200</a>]</p> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$magic_quotes_status"></a> + <p></p> + <h4>$magic_quotes_status = <span class="value"></span></h4> + <p>[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a205">205</a>]</p> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$zipname"></a> + <p></p> + <h4>$zipname = <span class="value">&nbsp;''</span></h4> + <p>[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a193">193</a>]</p> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$zip_fd"></a> + <p></p> + <h4>$zip_fd = <span class="value">&nbsp;0</span></h4> + <p>[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a196">196</a>]</p> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodPclZip"></a> + <h3>constructor PclZip <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a215">215</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PclZip PclZip( + +$p_zipname)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_zipname</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodadd"></a> + <h3>method add <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a454">454</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void add( + +$p_filelist)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_filelist</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcreate"></a> + <h3>method create <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a271">271</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void create( + +$p_filelist)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_filelist</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddelete"></a> + <h3>method delete <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1006">1006</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void delete( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddeleteByIndex"></a> + <h3>method deleteByIndex <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1065">1065</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void deleteByIndex( + +$p_index)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_index</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodduplicate"></a> + <h3>method duplicate <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1162">1162</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void duplicate( + +$p_archive)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_archive</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoderrorCode"></a> + <h3>method errorCode <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1272">1272</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void errorCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoderrorInfo"></a> + <h3>method errorInfo <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1334">1334</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void errorInfo( +[ +$p_full = false])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_full</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoderrorName"></a> + <h3>method errorName <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1288">1288</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void errorName( +[ +$p_with_code = false])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_with_code</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodextract"></a> + <h3>method extract <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a700">700</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void extract( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodextractByIndex"></a> + <h3>method extractByIndex <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a857">857</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void extractByIndex( + +$p_index)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_index</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistContent"></a> + <h3>method listContent <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a643">643</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listContent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmerge"></a> + <h3>method merge <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1221">1221</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void merge( + +$p_archive_to_add)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_archive_to_add</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivAdd"></a> + <h3>method privAdd <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a2159">2159</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privAdd( + +$p_filedescr_list, +&$p_result_list, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_filedescr_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_result_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivAddFile"></a> + <h3>method privAddFile <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a2525">2525</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privAddFile( + +$p_filedescr, +&$p_header, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_filedescr</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_header</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivAddFileList"></a> + <h3>method privAddFileList <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a2463">2463</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privAddFileList( + +$p_filedescr_list, +&$p_result_list, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_filedescr_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_result_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivAddFileUsingTempFile"></a> + <h3>method privAddFileUsingTempFile <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a2798">2798</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privAddFileUsingTempFile( + +$p_filedescr, +&$p_header, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_filedescr</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_header</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivAddList"></a> + <h3>method privAddList <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a2399">2399</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privAddList( + +$p_filedescr_list, +&$p_result_list, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_filedescr_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_result_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivCalculateStoredFilename"></a> + <h3>method privCalculateStoredFilename <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a2910">2910</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privCalculateStoredFilename( + +&$p_filedescr, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_filedescr</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivCheckFileHeaders"></a> + <h3>method privCheckFileHeaders <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a4488">4488</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privCheckFileHeaders( + +&$p_local_header, +&$p_central_header)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_local_header</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_central_header</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivCheckFormat"></a> + <h3>method privCheckFormat <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1373">1373</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privCheckFormat( +[ +$p_level = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_level</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivCloseFd"></a> + <h3>method privCloseFd <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a2372">2372</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privCloseFd( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivConvertHeader2FileInfo"></a> + <h3>method privConvertHeader2FileInfo <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a3236">3236</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privConvertHeader2FileInfo( + +$p_header, +&$p_info)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_header</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_info</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivCreate"></a> + <h3>method privCreate <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a2124">2124</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privCreate( + +$p_filedescr_list, +&$p_result_list, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_filedescr_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_result_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivDeleteByRule"></a> + <h3>method privDeleteByRule <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a4682">4682</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privDeleteByRule( + +&$p_result_list, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_result_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivDirCheck"></a> + <h3>method privDirCheck <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a4992">4992</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privDirCheck( + +$p_dir, [ +$p_is_dir = false])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_dir</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_is_dir</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivDisableMagicQuotes"></a> + <h3>method privDisableMagicQuotes <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5327">5327</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privDisableMagicQuotes( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivDuplicate"></a> + <h3>method privDuplicate <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5232">5232</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privDuplicate( + +$p_archive_filename)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_archive_filename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivErrorLog"></a> + <h3>method privErrorLog <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5292">5292</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privErrorLog( +[ +$p_error_code = 0], [ +$p_error_string = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_error_code</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_error_string</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivErrorReset"></a> + <h3>method privErrorReset <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5309">5309</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privErrorReset( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivExtractByRule"></a> + <h3>method privExtractByRule <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a3275">3275</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privExtractByRule( + +&$p_file_list, +$p_path, +$p_remove_path, +$p_remove_all_path, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_file_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_path</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_remove_path</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_remove_all_path</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivExtractFile"></a> + <h3>method privExtractFile <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a3615">3615</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privExtractFile( + +&$p_entry, +$p_path, +$p_remove_path, +$p_remove_all_path, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_entry</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_path</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_remove_path</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_remove_all_path</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivExtractFileAsString"></a> + <h3>method privExtractFileAsString <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a4154">4154</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privExtractFileAsString( + +&$p_entry, +&$p_string, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_entry</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_string</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivExtractFileInOutput"></a> + <h3>method privExtractFileInOutput <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a4042">4042</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privExtractFileInOutput( + +&$p_entry, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_entry</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivExtractFileUsingTempFile"></a> + <h3>method privExtractFileUsingTempFile <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a3966">3966</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privExtractFileUsingTempFile( + +&$p_entry, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_entry</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivFileDescrExpand"></a> + <h3>method privFileDescrExpand <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1999">1999</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privFileDescrExpand( + +&$p_filedescr_list, +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_filedescr_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivFileDescrParseAtt"></a> + <h3>method privFileDescrParseAtt <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1870">1870</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privFileDescrParseAtt( + +&$p_file_list, +&$p_filedescr, +$v_options, [ +$v_requested_options = false])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_file_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_filedescr</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$v_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$v_requested_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivList"></a> + <h3>method privList <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a3149">3149</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privList( + +&$p_list)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivMerge"></a> + <h3>method privMerge <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5047">5047</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privMerge( + +&$p_archive_to_add)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_archive_to_add</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivOpenFd"></a> + <h3>method privOpenFd <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a2338">2338</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privOpenFd( + +$p_mode)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_mode</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivOptionDefaultThreshold"></a> + <h3>method privOptionDefaultThreshold <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1826">1826</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privOptionDefaultThreshold( + +&$p_options)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivParseOptions"></a> + <h3>method privParseOptions <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1426">1426</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privParseOptions( + +&$p_options_list, +$p_size, +&$v_result_list, [ +$v_requested_options = false])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_options_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_size</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$v_result_list</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$v_requested_options</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivReadCentralFileHeader"></a> + <h3>method privReadCentralFileHeader <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a4380">4380</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privReadCentralFileHeader( + +&$p_header)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_header</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivReadEndCentralDir"></a> + <h3>method privReadEndCentralDir <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a4525">4525</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privReadEndCentralDir( + +&$p_central_dir)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_central_dir</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivReadFileHeader"></a> + <h3>method privReadFileHeader <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a4277">4277</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privReadFileHeader( + +&$p_header)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_header</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivSwapBackMagicQuotes"></a> + <h3>method privSwapBackMagicQuotes <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5361">5361</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privSwapBackMagicQuotes( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivWriteCentralFileHeader"></a> + <h3>method privWriteCentralFileHeader <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a3067">3067</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privWriteCentralFileHeader( + +&$p_header)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_header</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivWriteCentralHeader"></a> + <h3>method privWriteCentralHeader <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a3120">3120</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privWriteCentralHeader( + +$p_nb_entries, +$p_size, +$p_offset, +$p_comment)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_nb_entries</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_size</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_offset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_comment</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprivWriteFileHeader"></a> + <h3>method privWriteFileHeader <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a3022">3022</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void privWriteFileHeader( + +&$p_header)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$p_header</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodproperties"></a> + <h3>method properties <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a1089">1089</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void properties( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:25 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/TestMatrix.html b/site/config/PHPExcel/Documentation/API/PHPExcel/TestMatrix.html new file mode 100644 index 0000000..b185197 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/TestMatrix.html @@ -0,0 +1,504 @@ +<html> +<head> +<title>Docs For Class TestMatrix</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: TestMatrix</h1> +Source Location: /PHPExcel/Shared/JAMA/tests/TestMatrix.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description"></div><br /><br /> + + + + + + + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel/TestMatrix.html#methodTestMatrix">TestMatrix</a></li> + <li><a href="../PHPExcel/TestMatrix.html#methodcheckArrays">checkArrays</a></li> + <li><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a></li> + <li><a href="../PHPExcel/TestMatrix.html#methodcheckScalars">checkScalars</a></li> + <li><a href="../PHPExcel/TestMatrix.html#methodcheckVectors">checkVectors</a></li> + <li><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a></li> + <li><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a></li> + <li><a href="../PHPExcel/TestMatrix.html#methodtry_warning">try_warning</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html#a5">5</a>]<br /> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodTestMatrix"></a> + <h3>constructor TestMatrix <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html#a7">7</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>TestMatrix TestMatrix( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcheckArrays"></a> + <h3>method checkArrays <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html#a385">385</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void checkArrays( + +$x, +$y, float +$x[][], float +$y[][])</code> + </td></tr></table> + </td></tr></table><br /> + + Check norm of difference of &quot;arrays&quot;.<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$x[][]</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$y[][]</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$y</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcheckMatrices"></a> + <h3>method checkMatrices <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html#a396">396</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void checkMatrices( +[matrix +$X = null], [matrix +$Y = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Check norm of difference of &quot;matrices&quot;.<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">matrix&nbsp;&nbsp;</td> + <td><b>$X</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">matrix&nbsp;&nbsp;</td> + <td><b>$Y</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcheckScalars"></a> + <h3>method checkScalars <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html#a355">355</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void checkScalars( +float +$x, float +$y)</code> + </td></tr></table> + </td></tr></table><br /> + + Check magnitude of difference of &quot;scalars&quot;.<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$y</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcheckVectors"></a> + <h3>method checkVectors <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html#a370">370</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void checkVectors( + +$x, +$y, float +$x[], float +$y[])</code> + </td></tr></table> + </td></tr></table><br /> + + Check norm of difference of &quot;vectors&quot;.<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$x[]</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$y[]</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$y</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtry_failure"></a> + <h3>method try_failure <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html#a333">333</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int try_failure( +int +$count, string +$s, [string +$e = &quot;&quot;])</code> + </td></tr></table> + </td></tr></table><br /> + + Print appropriate messages for unsuccessful outcome try<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>incremented counter</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$count</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$s</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$e</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtry_success"></a> + <h3>method try_success <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html#a320">320</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void try_success( +string +$s, [string +$e = &quot;&quot;])</code> + </td></tr></table> + </td></tr></table><br /> + + Print appropriate messages for successful outcome try<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$s</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$e</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtry_warning"></a> + <h3>method try_warning <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html#a345">345</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int try_warning( +int +$count, string +$s, [string +$e = &quot;&quot;])</code> + </td></tr></table> + </td></tr></table><br /> + + Print appropriate messages for unsuccessful outcome try<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>incremented counter</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$count</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$s</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$e</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:10 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Autoloader.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Autoloader.php.html new file mode 100644 index 0000000..e30fd4b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Autoloader.php.html @@ -0,0 +1,172 @@ +<html> +<head> +<title>Docs for page Autoloader.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Autoloader.php</h1> +Source Location: /PHPExcel/Autoloader.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a></dt> + <dd>PHPExcel_Autoloader</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Comment.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Comment.php.html new file mode 100644 index 0000000..f4791ed --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Comment.php.html @@ -0,0 +1,172 @@ +<html> +<head> +<title>Docs for page Comment.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Comment.php</h1> +Source Location: /PHPExcel/Comment.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a></dt> + <dd>PHPExcel_Comment</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:32 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---DocumentProperties.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---DocumentProperties.php.html new file mode 100644 index 0000000..c6effea --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---DocumentProperties.php.html @@ -0,0 +1,172 @@ +<html> +<head> +<title>Docs for page DocumentProperties.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DocumentProperties.php</h1> +Source Location: /PHPExcel/DocumentProperties.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a></dt> + <dd>PHPExcel_DocumentProperties</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:45 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---DocumentSecurity.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---DocumentSecurity.php.html new file mode 100644 index 0000000..0ce6c5d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---DocumentSecurity.php.html @@ -0,0 +1,172 @@ +<html> +<head> +<title>Docs for page DocumentSecurity.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DocumentSecurity.php</h1> +Source Location: /PHPExcel/DocumentSecurity.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a></dt> + <dd>PHPExcel_DocumentSecurity</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:47 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Exception.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Exception.php.html new file mode 100644 index 0000000..4ffa4d8 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Exception.php.html @@ -0,0 +1,172 @@ +<html> +<head> +<title>Docs for page Exception.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Exception.php</h1> +Source Location: /PHPExcel/Exception.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a></dt> + <dd>PHPExcel_Exception</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---HashTable.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---HashTable.php.html new file mode 100644 index 0000000..ec6163b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---HashTable.php.html @@ -0,0 +1,172 @@ +<html> +<head> +<title>Docs for page HashTable.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: HashTable.php</h1> +Source Location: /PHPExcel/HashTable.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a></dt> + <dd>PHPExcel_HashTable</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:21 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---IComparable.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---IComparable.php.html new file mode 100644 index 0000000..5dd24cc --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---IComparable.php.html @@ -0,0 +1,172 @@ +<html> +<head> +<title>Docs for page IComparable.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: IComparable.php</h1> +Source Location: /PHPExcel/IComparable.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></dt> + <dd>PHPExcel_IComparable</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---IOFactory.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---IOFactory.php.html new file mode 100644 index 0000000..30f5c7e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---IOFactory.php.html @@ -0,0 +1,176 @@ +<html> +<head> +<title>Docs for page IOFactory.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: IOFactory.php</h1> +Source Location: /PHPExcel/IOFactory.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a></dt> + <dd>PHPExcel_IOFactory</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---NamedRange.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---NamedRange.php.html new file mode 100644 index 0000000..3ce6c39 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---NamedRange.php.html @@ -0,0 +1,172 @@ +<html> +<head> +<title>Docs for page NamedRange.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: NamedRange.php</h1> +Source Location: /PHPExcel/NamedRange.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a></dt> + <dd>PHPExcel_NamedRange</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:44 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---ReferenceHelper.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---ReferenceHelper.php.html new file mode 100644 index 0000000..2717c8a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---ReferenceHelper.php.html @@ -0,0 +1,172 @@ +<html> +<head> +<title>Docs for page ReferenceHelper.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: ReferenceHelper.php</h1> +Source Location: /PHPExcel/ReferenceHelper.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a></dt> + <dd>PHPExcel_ReferenceHelper (Singleton)</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html new file mode 100644 index 0000000..95e7d8f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html @@ -0,0 +1,166 @@ +<html> +<head> +<title>Docs for page LMQuadTest.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: LMQuadTest.php</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/LMQuadTest.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a></dt> + <dd>quadratic (p-o)'S'S(p-o)</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html new file mode 100644 index 0000000..66ebe91 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html @@ -0,0 +1,170 @@ +<html> +<head> +<title>Docs for page LagrangeInterpolation.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: LagrangeInterpolation.php</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/LagrangeInterpolation.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a></dt> + <dd>Given n points (x0,y0)...(xn-1,yn-1), the following methid computes the polynomial factors of the n-1't degree polynomial passing through the n points.</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html">"../Matrix.php"</a>) [line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html#a3">3</a>]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:32 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html new file mode 100644 index 0000000..3c68256 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html @@ -0,0 +1,170 @@ +<html> +<head> +<title>Docs for page LagrangeInterpolation2.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: LagrangeInterpolation2.php</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/LagrangeInterpolation2.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt></dt> + <dd>Given n points (x0,y0)...(xn-1,yn-1), the following method computes the polynomial factors of the n-1't degree polynomial passing through the n points.</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html">"../Matrix.php"</a>) [line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html#a3">3</a>]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:32 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html new file mode 100644 index 0000000..be9a8cf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html @@ -0,0 +1,166 @@ +<html> +<head> +<title>Docs for page LevenbergMarquardt.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: LevenbergMarquardt.php</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/LevenbergMarquardt.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a></dt> + <dd></dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:33 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html new file mode 100644 index 0000000..9800021 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html @@ -0,0 +1,221 @@ +<html> +<head> +<title>Docs for page polyfit.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: polyfit.php</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/polyfit.php<br /><br /> + +<br> +<br> + + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html">"../Matrix.php"</a>) [line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html#a2">2</a>]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + <hr /> + <a name="functionpolyfit"></a> + <h3>polyfit <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html#a18">18</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void polyfit( + $X, $Y, $n)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$X</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$Y</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + <hr /> + <a name="functionprintpoly"></a> + <h3>printpoly <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html#a30">30</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void printpoly( +[ $C = null])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$C</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:27 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html new file mode 100644 index 0000000..03fb28d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html @@ -0,0 +1,198 @@ +<html> +<head> +<title>Docs for page tile.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: tile.php</h1> +Source Location: /PHPExcel/Shared/JAMA/examples/tile.php<br /><br /> + +<br> +<br> + + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +include(<a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html">"../Matrix.php"</a>) [line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html#a3">3</a>]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + <hr /> + <a name="functiontile"></a> + <h3>tile <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html#a22">22</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>Matrix tile( +X &$X, rowWise $rowWise, colWise $colWise)</code> + </td></tr></table> + </td></tr></table><br /> + + Tiling of matrix X in [rowWise by colWise] dimension. Tiling creates a larger matrix than the original data X. Example, if X is to be tiled in a [3 x 4] manner, then:<br /><br /><p>/ \ | X X X X | C = | X X X X | | X X X X | \ /</p><br /> <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">X&nbsp;&nbsp;</td> + <td><b>&$X</b>&nbsp;&nbsp;</td> + <td>Matrix</td> + </tr> + <tr> + <td class="type">rowWise&nbsp;&nbsp;</td> + <td><b>$rowWise</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + <tr> + <td class="type">colWise&nbsp;&nbsp;</td> + <td><b>$colWise</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html new file mode 100644 index 0000000..7abf8b6 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html @@ -0,0 +1,170 @@ +<html> +<head> +<title>Docs for page TestMatrix.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: TestMatrix.php</h1> +Source Location: /PHPExcel/Shared/JAMA/tests/TestMatrix.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/TestMatrix.html">TestMatrix</a></dt> + <dd></dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html">"../Matrix.php"</a>) [line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html#a3">3</a>]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:07 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html new file mode 100644 index 0000000..4a477fb --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html @@ -0,0 +1,1140 @@ +<html> +<head> +<title>Docs for page pclzip.lib.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: pclzip.lib.php</h1> +Source Location: /PHPExcel/Shared/PCLZip/pclzip.lib.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PclZip.html">PclZip</a></dt> + <dd></dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> + <hr /> + <a name="definePCLZIP_ATT_FILE_COMMENT"></a> + <h3>PCLZIP_ATT_FILE_COMMENT <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a162">162</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ATT_FILE_COMMENT = 79006</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ATT_FILE_CONTENT"></a> + <h3>PCLZIP_ATT_FILE_CONTENT <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a161">161</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ATT_FILE_CONTENT = 79005</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ATT_FILE_MTIME"></a> + <h3>PCLZIP_ATT_FILE_MTIME <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a160">160</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ATT_FILE_MTIME = 79004</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ATT_FILE_NAME"></a> + <h3>PCLZIP_ATT_FILE_NAME <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a157">157</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ATT_FILE_NAME = 79001</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ATT_FILE_NEW_FULL_NAME"></a> + <h3>PCLZIP_ATT_FILE_NEW_FULL_NAME <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a159">159</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ATT_FILE_NEW_FULL_NAME = 79003</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ATT_FILE_NEW_SHORT_NAME"></a> + <h3>PCLZIP_ATT_FILE_NEW_SHORT_NAME <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a158">158</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ATT_FILE_NEW_SHORT_NAME = 79002</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_CB_POST_ADD"></a> + <h3>PCLZIP_CB_POST_ADD <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a168">168</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_CB_POST_ADD = 78004</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_CB_POST_EXTRACT"></a> + <h3>PCLZIP_CB_POST_EXTRACT <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a166">166</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_CB_POST_EXTRACT = 78002</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_CB_PRE_ADD"></a> + <h3>PCLZIP_CB_PRE_ADD <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a167">167</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_CB_PRE_ADD = 78003</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_CB_PRE_EXTRACT"></a> + <h3>PCLZIP_CB_PRE_EXTRACT <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a165">165</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_CB_PRE_EXTRACT = 78001</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERROR_EXTERNAL"></a> + <h3>PCLZIP_ERROR_EXTERNAL <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a53">53</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERROR_EXTERNAL = 0</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_ALREADY_A_DIRECTORY"></a> + <h3>PCLZIP_ERR_ALREADY_A_DIRECTORY <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a121">121</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_ALREADY_A_DIRECTORY = -17</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_BAD_CHECKSUM"></a> + <h3>PCLZIP_ERR_BAD_CHECKSUM <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a117">117</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_BAD_CHECKSUM = -13</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_BAD_EXTENSION"></a> + <h3>PCLZIP_ERR_BAD_EXTENSION <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a113">113</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_BAD_EXTENSION = -9</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_BAD_EXTRACTED_FILE"></a> + <h3>PCLZIP_ERR_BAD_EXTRACTED_FILE <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a111">111</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_BAD_EXTRACTED_FILE = -7</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_BAD_FORMAT"></a> + <h3>PCLZIP_ERR_BAD_FORMAT <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a114">114</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_BAD_FORMAT = -10</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_DELETE_FILE_FAIL"></a> + <h3>PCLZIP_ERR_DELETE_FILE_FAIL <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a115">115</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_DELETE_FILE_FAIL = -11</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_DIRECTORY_RESTRICTION"></a> + <h3>PCLZIP_ERR_DIRECTORY_RESTRICTION <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a125">125</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_DIRECTORY_RESTRICTION = -21</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_DIR_CREATE_FAIL"></a> + <h3>PCLZIP_ERR_DIR_CREATE_FAIL <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a112">112</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_DIR_CREATE_FAIL = -8</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_FILENAME_TOO_LONG"></a> + <h3>PCLZIP_ERR_FILENAME_TOO_LONG <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a109">109</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_FILENAME_TOO_LONG = -5</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_INVALID_ARCHIVE_ZIP"></a> + <h3>PCLZIP_ERR_INVALID_ARCHIVE_ZIP <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a118">118</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_INVALID_ARCHIVE_ZIP = -14</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE"></a> + <h3>PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a124">124</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE = -20</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_INVALID_OPTION_VALUE"></a> + <h3>PCLZIP_ERR_INVALID_OPTION_VALUE <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a120">120</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_INVALID_OPTION_VALUE = -16</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_INVALID_PARAMETER"></a> + <h3>PCLZIP_ERR_INVALID_PARAMETER <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a107">107</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_INVALID_PARAMETER = -3</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_INVALID_ZIP"></a> + <h3>PCLZIP_ERR_INVALID_ZIP <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a110">110</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_INVALID_ZIP = -6</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_MISSING_FILE"></a> + <h3>PCLZIP_ERR_MISSING_FILE <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a108">108</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_MISSING_FILE = -4</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_MISSING_OPTION_VALUE"></a> + <h3>PCLZIP_ERR_MISSING_OPTION_VALUE <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a119">119</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_MISSING_OPTION_VALUE = -15</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_NO_ERROR"></a> + <h3>PCLZIP_ERR_NO_ERROR <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a104">104</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_NO_ERROR = 0</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_READ_OPEN_FAIL"></a> + <h3>PCLZIP_ERR_READ_OPEN_FAIL <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a106">106</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_READ_OPEN_FAIL = -2</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_RENAME_FILE_FAIL"></a> + <h3>PCLZIP_ERR_RENAME_FILE_FAIL <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a116">116</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_RENAME_FILE_FAIL = -12</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_UNSUPPORTED_COMPRESSION"></a> + <h3>PCLZIP_ERR_UNSUPPORTED_COMPRESSION <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a122">122</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_UNSUPPORTED_COMPRESSION = -18</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_UNSUPPORTED_ENCRYPTION"></a> + <h3>PCLZIP_ERR_UNSUPPORTED_ENCRYPTION <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a123">123</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_UNSUPPORTED_ENCRYPTION = -19</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_USER_ABORTED"></a> + <h3>PCLZIP_ERR_USER_ABORTED <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a103">103</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_USER_ABORTED = 2</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_ERR_WRITE_OPEN_FAIL"></a> + <h3>PCLZIP_ERR_WRITE_OPEN_FAIL <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a105">105</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_ERR_WRITE_OPEN_FAIL = -1</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_ADD_COMMENT"></a> + <h3>PCLZIP_OPT_ADD_COMMENT <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a140">140</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_ADD_COMMENT = 77013</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_ADD_PATH"></a> + <h3>PCLZIP_OPT_ADD_PATH <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a129">129</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_ADD_PATH = 77002</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_ADD_TEMP_FILE_OFF"></a> + <h3>PCLZIP_OPT_ADD_TEMP_FILE_OFF <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a154">154</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_ADD_TEMP_FILE_OFF = 77022</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_ADD_TEMP_FILE_ON"></a> + <h3>PCLZIP_OPT_ADD_TEMP_FILE_ON <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a152">152</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_ADD_TEMP_FILE_ON = 77021</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD"></a> + <h3>PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a150">150</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD = 77020</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_BY_EREG"></a> + <h3>PCLZIP_OPT_BY_EREG <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a137">137</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_BY_EREG = 77010</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_BY_INDEX"></a> + <h3>PCLZIP_OPT_BY_INDEX <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a136">136</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_BY_INDEX = 77009</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_BY_NAME"></a> + <h3>PCLZIP_OPT_BY_NAME <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a135">135</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_BY_NAME = 77008</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_BY_PREG"></a> + <h3>PCLZIP_OPT_BY_PREG <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a138">138</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_BY_PREG = 77011</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_COMMENT"></a> + <h3>PCLZIP_OPT_COMMENT <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a139">139</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_COMMENT = 77012</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_EXTRACT_AS_STRING"></a> + <h3>PCLZIP_OPT_EXTRACT_AS_STRING <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a133">133</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_EXTRACT_AS_STRING = 77006</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_EXTRACT_DIR_RESTRICTION"></a> + <h3>PCLZIP_OPT_EXTRACT_DIR_RESTRICTION <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a148">148</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_EXTRACT_DIR_RESTRICTION = 77019</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_EXTRACT_IN_OUTPUT"></a> + <h3>PCLZIP_OPT_EXTRACT_IN_OUTPUT <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a142">142</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_EXTRACT_IN_OUTPUT = 77015</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_NO_COMPRESSION"></a> + <h3>PCLZIP_OPT_NO_COMPRESSION <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a134">134</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_NO_COMPRESSION = 77007</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_PATH"></a> + <h3>PCLZIP_OPT_PATH <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a128">128</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_PATH = 77001</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_PREPEND_COMMENT"></a> + <h3>PCLZIP_OPT_PREPEND_COMMENT <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a141">141</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_PREPEND_COMMENT = 77014</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_REMOVE_ALL_PATH"></a> + <h3>PCLZIP_OPT_REMOVE_ALL_PATH <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a131">131</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_REMOVE_ALL_PATH = 77004</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_REMOVE_PATH"></a> + <h3>PCLZIP_OPT_REMOVE_PATH <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a130">130</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_REMOVE_PATH = 77003</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_REPLACE_NEWER"></a> + <h3>PCLZIP_OPT_REPLACE_NEWER <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a143">143</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_REPLACE_NEWER = 77016</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_SET_CHMOD"></a> + <h3>PCLZIP_OPT_SET_CHMOD <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a132">132</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_SET_CHMOD = 77005</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_STOP_ON_ERROR"></a> + <h3>PCLZIP_OPT_STOP_ON_ERROR <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a144">144</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_STOP_ON_ERROR = 77017</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_TEMP_FILE_OFF"></a> + <h3>PCLZIP_OPT_TEMP_FILE_OFF <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a153">153</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_TEMP_FILE_OFF = 77022</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_TEMP_FILE_ON"></a> + <h3>PCLZIP_OPT_TEMP_FILE_ON <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a151">151</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_TEMP_FILE_ON = 77021</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_OPT_TEMP_FILE_THRESHOLD"></a> + <h3>PCLZIP_OPT_TEMP_FILE_THRESHOLD <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a149">149</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_OPT_TEMP_FILE_THRESHOLD = 77020</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_READ_BLOCK_SIZE"></a> + <h3>PCLZIP_READ_BLOCK_SIZE <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a30">30</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_READ_BLOCK_SIZE = 2048</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_SEPARATOR"></a> + <h3>PCLZIP_SEPARATOR <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a44">44</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_SEPARATOR = ','</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_TEMPORARY_DIR"></a> + <h3>PCLZIP_TEMPORARY_DIR <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a66">66</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_TEMPORARY_DIR = ''</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePCLZIP_TEMPORARY_FILE_RATIO"></a> + <h3>PCLZIP_TEMPORARY_FILE_RATIO <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a78">78</a>]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_TEMPORARY_FILE_RATIO = 0.47</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + <hr /> + <a name="functionPclZipUtilCopyBlock"></a> + <h3>PclZipUtilCopyBlock <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5554">5554</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void PclZipUtilCopyBlock( + $p_src, $p_dest, $p_size, [ $p_mode = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_src</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_dest</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_size</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_mode</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + <hr /> + <a name="functionPclZipUtilOptionText"></a> + <h3>PclZipUtilOptionText <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5646">5646</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void PclZipUtilOptionText( + $p_option)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_option</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + <hr /> + <a name="functionPclZipUtilPathInclusion"></a> + <h3>PclZipUtilPathInclusion <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5477">5477</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void PclZipUtilPathInclusion( + $p_dir, $p_path)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_dir</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_path</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + <hr /> + <a name="functionPclZipUtilPathReduction"></a> + <h3>PclZipUtilPathReduction <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5396">5396</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void PclZipUtilPathReduction( + $p_dir)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_dir</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + <hr /> + <a name="functionPclZipUtilRename"></a> + <h3>PclZipUtilRename <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5616">5616</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void PclZipUtilRename( + $p_src, $p_dest)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_src</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_dest</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + <hr /> + <a name="functionPclZipUtilTranslateWinPath"></a> + <h3>PclZipUtilTranslateWinPath <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html#a5677">5677</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void PclZipUtilTranslateWinPath( + $p_path, [ $p_remove_disk_letter = true])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_path</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_remove_disk_letter</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:53 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---WorksheetIterator.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---WorksheetIterator.php.html new file mode 100644 index 0000000..7700371 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel---WorksheetIterator.php.html @@ -0,0 +1,172 @@ +<html> +<head> +<title>Docs for page WorksheetIterator.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: WorksheetIterator.php</h1> +Source Location: /PHPExcel/WorksheetIterator.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a></dt> + <dd>PHPExcel_WorksheetIterator</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel.php.html new file mode 100644 index 0000000..afda4dd --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_PHPExcel.php.html @@ -0,0 +1,189 @@ +<html> +<head> +<title>Docs for page PHPExcel.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="../PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="../PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="../PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="../PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="../PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="../PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="../PHPExcel/PclZip.html">PclZip</a><br /> + <a href="../PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="../PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="../PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="../PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="../PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="../PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="../PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="../PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="../PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: PHPExcel.php</h1> +Source Location: /PHPExcel.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel/PHPExcel.html">PHPExcel</a></dt> + <dd>PHPExcel</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 32]<br /> +</div> +<br /><br /> +<br /><br /> + <hr /> + <a name="definePHPEXCEL_ROOT"></a> + <h3>PHPEXCEL_ROOT <span class="smalllinenumber">[line 31]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPEXCEL_ROOT = dirname(__FILE__).'/'</code> + </td></tr></table> + </td></tr></table> + + PHPExcel root directory<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:26 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel/_notes/dwsync.xml new file mode 100644 index 0000000..de316fa --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel/_notes/dwsync.xml @@ -0,0 +1,262 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="LagrangeInterpolation.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="LevenbergMarquardt.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="LMQuadTest.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PclZip.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Autoloader.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Comment.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_DocumentProperties.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_DocumentSecurity.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Exception.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_HashTable.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_IComparable.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_IOFactory.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_NamedRange.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_ReferenceHelper.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_WorksheetIterator.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="TestMatrix.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Autoloader.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Comment.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---DocumentProperties.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---DocumentSecurity.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Exception.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---HashTable.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---IComparable.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---IOFactory.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---NamedRange.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---ReferenceHelper.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---polyfit.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---tile.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---PCLZip---pclzip.lib.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---WorksheetIterator.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_IComparable.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_WorksheetIterator.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---polyfit.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---DocumentProperties.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Shared---PCLZip---pclzip.lib.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_HashTable.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---Exception.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="LMQuadTest.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_DocumentProperties.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_ReferenceHelper.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_IOFactory.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_Comment.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="PclZip.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---IComparable.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---WorksheetIterator.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---HashTable.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---ReferenceHelper.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---Autoloader.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---IOFactory.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---NamedRange.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_Exception.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---tile.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---Comment.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_Autoloader.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="LagrangeInterpolation.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_NamedRange.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="LevenbergMarquardt.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---DocumentSecurity.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_DocumentSecurity.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="TestMatrix.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851869999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_IComparable.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_WorksheetIterator.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---polyfit.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---DocumentProperties.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---PCLZip---pclzip.lib.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_HashTable.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Exception.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="LMQuadTest.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_DocumentProperties.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_ReferenceHelper.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_IOFactory.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Comment.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="PclZip.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---IComparable.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---WorksheetIterator.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---HashTable.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---ReferenceHelper.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Autoloader.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---IOFactory.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---NamedRange.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Exception.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---tile.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Comment.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Autoloader.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="LagrangeInterpolation.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_NamedRange.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="LevenbergMarquardt.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---DocumentSecurity.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_DocumentSecurity.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="TestMatrix.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851869999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_IComparable.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560417116976" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_WorksheetIterator.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560418184799" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---polyfit.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560418579391" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560417791010" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---DocumentProperties.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560418971035" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---PCLZip---pclzip.lib.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560419462181" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_HashTable.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560419859484" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560420272046" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Exception.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560420666197" remote="131260197000000000" Dst="1" /> +<file name="LMQuadTest.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560421054302" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_DocumentProperties.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560421509359" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_ReferenceHelper.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560421875952" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_IOFactory.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560422246222" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Comment.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560422667714" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560423075021" remote="131260197000000000" Dst="1" /> +<file name="PclZip.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560423670538" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---IComparable.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560424098810" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---WorksheetIterator.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560424543436" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560424990411" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---HashTable.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560425413804" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560425947407" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560426334799" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---ReferenceHelper.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560426726018" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Autoloader.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560427099293" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---IOFactory.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560427471629" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---NamedRange.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560427867157" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Exception.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560428302699" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---tile.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560428739038" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Comment.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560429136069" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Autoloader.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560429527537" remote="131260197000000000" Dst="1" /> +<file name="LagrangeInterpolation.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560429923233" remote="131260197000000000" Dst="1" /> +<file name="LevenbergMarquardt.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560430705138" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_NamedRange.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560430336487" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---DocumentSecurity.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560431089566" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_DocumentSecurity.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560431479261" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560431869305" remote="131260197000000000" Dst="1" /> +<file name="TestMatrix.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560432236021" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_IComparable.html" server="62.244.88.21/amashow/" local="131414752755634718" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel.html" server="62.244.88.21/amashow/" local="131414752756119523" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_WorksheetIterator.html" server="62.244.88.21/amashow/" local="131414752756341568" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---polyfit.php.html" server="62.244.88.21/amashow/" local="131414752756788544" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---DocumentProperties.php.html" server="62.244.88.21/amashow/" local="131414752757002055" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---PCLZip---pclzip.lib.php.html" server="62.244.88.21/amashow/" local="131414752757509645" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_HashTable.html" server="62.244.88.21/amashow/" local="131414752757921699" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html" server="62.244.88.21/amashow/" local="131414752758126290" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Exception.php.html" server="62.244.88.21/amashow/" local="131414752758331761" remote="131414681400000000" Dst="2" /> +<file name="LMQuadTest.html" server="62.244.88.21/amashow/" local="131414752758567941" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_DocumentProperties.html" server="62.244.88.21/amashow/" local="131414752759064042" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_ReferenceHelper.html" server="62.244.88.21/amashow/" local="131414752759299673" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_IOFactory.html" server="62.244.88.21/amashow/" local="131414752759770161" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Comment.html" server="62.244.88.21/amashow/" local="131414752760341468" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel.php.html" server="62.244.88.21/amashow/" local="131414752760863302" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---IComparable.php.html" server="62.244.88.21/amashow/" local="131414752761645566" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---WorksheetIterator.php.html" server="62.244.88.21/amashow/" local="131414752761865640" remote="131414681400000000" Dst="2" /> +<file name="PclZip.html" server="62.244.88.21/amashow/" local="131414752761415527" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html" server="62.244.88.21/amashow/" local="131414752762081350" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---HashTable.php.html" server="62.244.88.21/amashow/" local="131414752762305213" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html" server="62.244.88.21/amashow/" local="131414752762519166" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html" server="62.244.88.21/amashow/" local="131414752762738498" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---ReferenceHelper.php.html" server="62.244.88.21/amashow/" local="131414752762947023" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Autoloader.php.html" server="62.244.88.21/amashow/" local="131414752763157194" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Exception.html" server="62.244.88.21/amashow/" local="131414752763806355" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---IOFactory.php.html" server="62.244.88.21/amashow/" local="131414752763366656" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---tile.php.html" server="62.244.88.21/amashow/" local="131414752764020879" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---NamedRange.php.html" server="62.244.88.21/amashow/" local="131414752763577175" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Comment.php.html" server="62.244.88.21/amashow/" local="131414752764236043" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Autoloader.html" server="62.244.88.21/amashow/" local="131414752764448556" remote="131414681400000000" Dst="2" /> +<file name="LagrangeInterpolation.html" server="62.244.88.21/amashow/" local="131414752764660206" remote="131414681400000000" Dst="2" /> +<file name="LevenbergMarquardt.html" server="62.244.88.21/amashow/" local="131414752765573502" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_NamedRange.html" server="62.244.88.21/amashow/" local="131414752765129322" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---DocumentSecurity.php.html" server="62.244.88.21/amashow/" local="131414752765799007" remote="131414681400000000" Dst="2" /> +<file name="TestMatrix.html" server="62.244.88.21/amashow/" local="131414752766721751" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_DocumentSecurity.html" server="62.244.88.21/amashow/" local="131414752766095763" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html" server="62.244.88.21/amashow/" local="131414752766488467" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_NamedRange.html" server="62.244.88.21/deciday/" local="131919461501853740" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Autoloader.php.html" server="62.244.88.21/deciday/" local="131919461484841742" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---PCLZip---pclzip.lib.php.html" server="62.244.88.21/deciday/" local="131919461510294783" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Exception.php.html" server="62.244.88.21/deciday/" local="131919461494461546" remote="131826018000000000" Dst="1" /> +<file name="LevenbergMarquardt.html" server="62.244.88.21/deciday/" local="131919461483210575" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html" server="62.244.88.21/deciday/" local="131919461506252976" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---ReferenceHelper.php.html" server="62.244.88.21/deciday/" local="131919461504123107" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---IOFactory.php.html" server="62.244.88.21/deciday/" local="131919461501256844" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_DocumentSecurity.html" server="62.244.88.21/deciday/" local="131919461489651974" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel.php.html" server="62.244.88.21/deciday/" local="131919461503917501" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_IOFactory.html" server="62.244.88.21/deciday/" local="131919461502036669" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Comment.html" server="62.244.88.21/deciday/" local="131919461487009648" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---HashTable.php.html" server="62.244.88.21/deciday/" local="131919461496704368" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_WorksheetIterator.html" server="62.244.88.21/deciday/" local="131919461509232971" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html" server="62.244.88.21/deciday/" local="131919461508750752" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---DocumentSecurity.php.html" server="62.244.88.21/deciday/" local="131919461498466893" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html" server="62.244.88.21/deciday/" local="131919461505733007" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_DocumentProperties.html" server="62.244.88.21/deciday/" local="131919461493615491" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---NamedRange.php.html" server="62.244.88.21/deciday/" local="131919461502905569" remote="131826018000000000" Dst="1" /> +<file name="LagrangeInterpolation.html" server="62.244.88.21/deciday/" local="131919461482886072" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel.html" server="62.244.88.21/deciday/" local="131919461499159151" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---WorksheetIterator.php.html" server="62.244.88.21/deciday/" local="131919461510466247" remote="131826018000000000" Dst="1" /> +<file name="TestMatrix.html" server="62.244.88.21/deciday/" local="131919461511449317" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_IComparable.html" server="62.244.88.21/deciday/" local="131919461499940244" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html" server="62.244.88.21/deciday/" local="131919461504972155" remote="131826018000000000" Dst="1" /> +<file name="PclZip.html" server="62.244.88.21/deciday/" local="131919461486079001" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html" server="62.244.88.21/deciday/" local="131919461505299078" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---IComparable.php.html" server="62.244.88.21/deciday/" local="131919461500290070" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Comment.php.html" server="62.244.88.21/deciday/" local="131919461486815600" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---DocumentProperties.php.html" server="62.244.88.21/deciday/" local="131919461488465210" remote="131826018000000000" Dst="1" /> +<file name="LMQuadTest.html" server="62.244.88.21/deciday/" local="131919461483546998" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_HashTable.html" server="62.244.88.21/deciday/" local="131919461497361855" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Exception.html" server="62.244.88.21/deciday/" local="131919461491443113" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---polyfit.php.html" server="62.244.88.21/deciday/" local="131919461506703384" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---JAMA---examples---tile.php.html" server="62.244.88.21/deciday/" local="131919461506925986" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Autoloader.html" server="62.244.88.21/deciday/" local="131919461484555420" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_ReferenceHelper.html" server="62.244.88.21/deciday/" local="131919461503420377" remote="131826018000000000" Dst="1" /> +<file name="LagrangeInterpolation.html" server="62.244.88.21/deciday_18/" local="131414752764660206" remote="131825946000000000" Dst="2" /> +<file name="LevenbergMarquardt.html" server="62.244.88.21/deciday_18/" local="131414752765573502" remote="131825946000000000" Dst="2" /> +<file name="PclZip.html" server="62.244.88.21/deciday_18/" local="131414752761415527" remote="131825946000000000" Dst="2" /> +<file name="LMQuadTest.html" server="62.244.88.21/deciday_18/" local="131414752758567941" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel.html" server="62.244.88.21/deciday_18/" local="131414752756119523" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Autoloader.html" server="62.244.88.21/deciday_18/" local="131414752764448556" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Comment.html" server="62.244.88.21/deciday_18/" local="131414752760341468" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_DocumentProperties.html" server="62.244.88.21/deciday_18/" local="131414752759064042" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_DocumentSecurity.html" server="62.244.88.21/deciday_18/" local="131414752766095763" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Exception.html" server="62.244.88.21/deciday_18/" local="131414752763806355" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_HashTable.html" server="62.244.88.21/deciday_18/" local="131414752757921699" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_IComparable.html" server="62.244.88.21/deciday_18/" local="131414752755634718" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_IOFactory.html" server="62.244.88.21/deciday_18/" local="131414752759770161" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_NamedRange.html" server="62.244.88.21/deciday_18/" local="131414752765129322" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_ReferenceHelper.html" server="62.244.88.21/deciday_18/" local="131414752759299673" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_WorksheetIterator.html" server="62.244.88.21/deciday_18/" local="131414752756341568" remote="131825946000000000" Dst="2" /> +<file name="TestMatrix.html" server="62.244.88.21/deciday_18/" local="131414752766721751" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Autoloader.php.html" server="62.244.88.21/deciday_18/" local="131414752763157194" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Comment.php.html" server="62.244.88.21/deciday_18/" local="131414752764236043" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---DocumentProperties.php.html" server="62.244.88.21/deciday_18/" local="131414752757002055" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---DocumentSecurity.php.html" server="62.244.88.21/deciday_18/" local="131414752765799007" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Exception.php.html" server="62.244.88.21/deciday_18/" local="131414752758331761" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---HashTable.php.html" server="62.244.88.21/deciday_18/" local="131414752762305213" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---IComparable.php.html" server="62.244.88.21/deciday_18/" local="131414752761645566" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---IOFactory.php.html" server="62.244.88.21/deciday_18/" local="131414752763366656" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---NamedRange.php.html" server="62.244.88.21/deciday_18/" local="131414752763577175" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---ReferenceHelper.php.html" server="62.244.88.21/deciday_18/" local="131414752762947023" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html" server="62.244.88.21/deciday_18/" local="131414752762738498" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html" server="62.244.88.21/deciday_18/" local="131414752766488467" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html" server="62.244.88.21/deciday_18/" local="131414752758126290" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html" server="62.244.88.21/deciday_18/" local="131414752762081350" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---polyfit.php.html" server="62.244.88.21/deciday_18/" local="131414752756788544" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---examples---tile.php.html" server="62.244.88.21/deciday_18/" local="131414752764020879" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html" server="62.244.88.21/deciday_18/" local="131414752762519166" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---PCLZip---pclzip.lib.php.html" server="62.244.88.21/deciday_18/" local="131414752757509645" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---WorksheetIterator.php.html" server="62.244.88.21/deciday_18/" local="131414752761865640" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel.php.html" server="62.244.88.21/deciday_18/" local="131414752760863302" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html new file mode 100644 index 0000000..c6f7987 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html @@ -0,0 +1,479 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorageFactory</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorageFactory</h1> +Source Location: /PHPExcel/CachedObjectStorageFactory.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_CachedObjectStorageFactory</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_igbinary">cache_igbinary</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_in_memory">cache_in_memory</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_in_memory_gzip">cache_in_memory_gzip</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_in_memory_serialized">cache_in_memory_serialized</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_apc">cache_to_apc</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_discISAM">cache_to_discISAM</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_memcache">cache_to_memcache</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_phpTemp">cache_to_phpTemp</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_sqlite">cache_to_sqlite</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_sqlite3">cache_to_sqlite3</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_wincache">cache_to_wincache</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetAllCacheStorageMethods">getAllCacheStorageMethods</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetCacheStorageClass">getCacheStorageClass</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetCacheStorageMethod">getCacheStorageMethod</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetCacheStorageMethods">getCacheStorageMethods</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetInstance">getInstance</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodinitialize">initialize</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 37]<br /> +PHPExcel_CachedObjectStorageFactory<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodgetAllCacheStorageMethods"></a> + <h3>static method getAllCacheStorageMethods <span class="smalllinenumber">[line 155]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string[] getAllCacheStorageMethods( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the list of all possible cache storage methods<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheStorageClass"></a> + <h3>static method getCacheStorageClass <span class="smalllinenumber">[line 144]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>|NULL getCacheStorageClass( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the current cache storage class<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheStorageMethod"></a> + <h3>static method getCacheStorageMethod <span class="smalllinenumber">[line 133]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string|NULL getCacheStorageMethod( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the current cache storage method<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheStorageMethods"></a> + <h3>static method getCacheStorageMethods <span class="smalllinenumber">[line 166]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string[] getCacheStorageMethods( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the list of all available cache storage methods<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetInstance"></a> + <h3>static method getInstance <span class="smalllinenumber">[line 220]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a> getInstance( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Initialise the cache storage<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>Enable cell caching for this worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinitialize"></a> + <h3>static method initialize <span class="smalllinenumber">[line 187]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean initialize( +[string +$method = self::cache_in_memory], [array +$arguments = array()])</code> + </td></tr></table> + </td></tr></table><br /> + + Identify the cache storage method to use<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$method</b>&nbsp;&nbsp;</td> + <td>Name of the method to use for cell cacheing</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$arguments</b>&nbsp;&nbsp;</td> + <td>of mixed $arguments Additional arguments to pass to the cell caching class when instantiating</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constcache_igbinary"></a> + <p></p> + <h4>cache_igbinary = <span class="value">&nbsp;'Igbinary'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constcache_in_memory"></a> + <p></p> + <h4>cache_in_memory = <span class="value">&nbsp;'Memory'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constcache_in_memory_gzip"></a> + <p></p> + <h4>cache_in_memory_gzip = <span class="value">&nbsp;'MemoryGZip'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constcache_in_memory_serialized"></a> + <p></p> + <h4>cache_in_memory_serialized = <span class="value">&nbsp;'MemorySerialized'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constcache_to_apc"></a> + <p></p> + <h4>cache_to_apc = <span class="value">&nbsp;'APC'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constcache_to_discISAM"></a> + <p></p> + <h4>cache_to_discISAM = <span class="value">&nbsp;'DiscISAM'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constcache_to_memcache"></a> + <p></p> + <h4>cache_to_memcache = <span class="value">&nbsp;'Memcache'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constcache_to_phpTemp"></a> + <p></p> + <h4>cache_to_phpTemp = <span class="value">&nbsp;'PHPTemp'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constcache_to_sqlite"></a> + <p></p> + <h4>cache_to_sqlite = <span class="value">&nbsp;'SQLite'</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constcache_to_sqlite3"></a> + <p></p> + <h4>cache_to_sqlite3 = <span class="value">&nbsp;'SQLite3'</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constcache_to_wincache"></a> + <p></p> + <h4>cache_to_wincache = <span class="value">&nbsp;'Wincache'</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:20 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html new file mode 100644 index 0000000..b18f8bf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html @@ -0,0 +1,682 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_APC</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_APC</h1> +Source Location: /PHPExcel/CachedObjectStorage/APC.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a> + | + --PHPExcel_CachedObjectStorage_APC</pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_APC</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodcacheMethodIsAvailable">cacheMethodIsAvailable</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodcopyCellCollection">copyCellCollection</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methoddeleteCacheData">deleteCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodisDataSet">isDataSet</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodunsetWorksheetCells">unsetWorksheetCells</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> + </dt> + <dd> + Initialise this new cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> + </dt> + <dd> + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> + </dt> + <dd> + Clone the cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> + </dt> + <dd> + Delete a cell in cache identified by coordinate address + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> + </dt> + <dd> + Get a list of all cell addresses currently held in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a> + </dt> + <dd> + Get highest worksheet column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a> + </dt> + <dd> + Get highest worksheet row + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a> + </dt> + <dd> + Get highest worksheet column and highest row that have cell records + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a> + </dt> + <dd> + Sort the list of all cell addresses currently held in cache by row and column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> + </dt> + <dd> + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a> + </dt> + <dd> + Add or Update a cell in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a> + </dt> + <dd> + Generate a unique ID for cache referencing + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_APC<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodcacheMethodIsAvailable"></a> + <h3>static method cacheMethodIsAvailable <span class="smalllinenumber">[line 269]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean cacheMethodIsAvailable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_ICache::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> (Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 239]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_CachedObjectStorage_APC __construct( +PHPExcel_Worksheet +$parent, array +$arguments)</code> + </td></tr></table> + </td></tr></table><br /> + + Initialise this new cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> (Initialise this new cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The worksheet for this cell collection</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$arguments</b>&nbsp;&nbsp;</td> + <td>of mixed $arguments Additional initialisation arguments</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 255]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destroy this cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 86]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a></dt> + <dd>Add or Update a cell in cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopyCellCollection"></a> + <h3>method copyCellCollection <span class="smalllinenumber">[line 188]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void copyCellCollection( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Clone the cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_ICache::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> (Clone the cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The new worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddeleteCacheData"></a> + <h3>method deleteCacheData <span class="smalllinenumber">[line 172]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void deleteCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Delete a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_ICache::deleteCacheData()</a></dt> + <dd>Delete a cell in cache identified by coordinate address</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> (Delete a cell in cache identified by coordinate address)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to delete</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 135]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a></dt> + <dd>Fetch a cell from cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisDataSet"></a> + <h3>method isDataSet <span class="smalllinenumber">[line 108]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void isDataSet( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodisDataSet">PHPExcel_CachedObjectStorage_ICache::isDataSet()</a></dt> + <dd>Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> (Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunsetWorksheetCells"></a> + <h3>method unsetWorksheetCells <span class="smalllinenumber">[line 217]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void unsetWorksheetCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear the cell collection and disconnect from our parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html new file mode 100644 index 0000000..50ea031 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html @@ -0,0 +1,919 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_CacheBase</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_CacheBase</h1> +Source Location: /PHPExcel/CachedObjectStorage/CacheBase.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_CacheBase</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">$_cellCache</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">$_currentCellIsDirty</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">$_currentObject</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">$_currentObjectID</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">$_parent</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">cacheMethodIsAvailable</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">copyCellCollection</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">deleteCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">getCellList</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">getHighestColumn</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">getHighestRow</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">getHighestRowAndColumn</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">getSortedCellList</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">isDataSet</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">updateCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">_getUniqueID</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + +<td valign="top"> +<h3>Child classes:</h3> +<div class="tags"> +<dl> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a></dt> + <dd>PHPExcel_CachedObjectStorage_APC</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a></dt> + <dd>PHPExcel_CachedObjectStorage_DiscISAM</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a></dt> + <dd>PHPExcel_CachedObjectStorage_Igbinary</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a></dt> + <dd>PHPExcel_CachedObjectStorage_Memcache</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a></dt> + <dd>PHPExcel_CachedObjectStorage_Memory</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a></dt> + <dd>PHPExcel_CachedObjectStorage_MemoryGZip</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a></dt> + <dd>PHPExcel_CachedObjectStorage_MemorySerialized</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a></dt> + <dd>PHPExcel_CachedObjectStorage_PHPTemp</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a></dt> + <dd>PHPExcel_CachedObjectStorage_SQLite</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a></dt> + <dd>PHPExcel_CachedObjectStorage_SQLite3</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a></dt> + <dd>PHPExcel_CachedObjectStorage_Wincache</dd> +</dl> +</div> +</td> + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_CacheBase<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>abstract:</b>&nbsp;&nbsp;</td><td></td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_cellCache"></a> + <p></p> + <h4>$_cellCache = <span class="value">array()</span></h4> + <p>[line 73]</p> + An array of cells or cell pointers for the worksheet cells held in this cache, and indexed by their coordinate address within the worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>var:</b>&nbsp;&nbsp;</td><td>of mixed</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_currentCellIsDirty"></a> + <p></p> + <h4>$_currentCellIsDirty = <span class="value">&nbsp;true</span></h4> + <p>[line 65]</p> + Flag indicating whether the currently active Cell requires saving<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>boolean</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_currentObject"></a> + <p></p> + <h4>$_currentObject = <span class="value">&nbsp;null</span></h4> + <p>[line 50]</p> + The currently active Cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a></td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_currentObjectID"></a> + <p></p> + <h4>$_currentObjectID = <span class="value">&nbsp;null</span></h4> + <p>[line 57]</p> + Coordinate address of the currently active Cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_parent"></a> + <p></p> + <h4>$_parent = <span class="value"></span></h4> + <p>[line 43]</p> + Parent worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a></td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodcacheMethodIsAvailable"></a> + <h3>static method cacheMethodIsAvailable <span class="smalllinenumber">[line 248]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean cacheMethodIsAvailable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_APC::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_Igbinary::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_Memcache::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_SQLite::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_SQLite3::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_Wincache::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 81]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_CachedObjectStorage_CacheBase __construct( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Initialise this new cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#method__construct">PHPExcel_CachedObjectStorage_APC::__construct()</a></dt> + <dd>Initialise this new cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#method__construct">PHPExcel_CachedObjectStorage_DiscISAM::__construct()</a></dt> + <dd>Initialise this new cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#method__construct">PHPExcel_CachedObjectStorage_Memcache::__construct()</a></dt> + <dd>Initialise this new cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#method__construct">PHPExcel_CachedObjectStorage_PHPTemp::__construct()</a></dt> + <dd>Initialise this new cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#method__construct">PHPExcel_CachedObjectStorage_SQLite::__construct()</a></dt> + <dd>Initialise this new cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#method__construct">PHPExcel_CachedObjectStorage_SQLite3::__construct()</a></dt> + <dd>Initialise this new cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#method__construct">PHPExcel_CachedObjectStorage_Wincache::__construct()</a></dt> + <dd>Initialise this new cell collection</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The worksheet for this cell collection</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopyCellCollection"></a> + <h3>method copyCellCollection <span class="smalllinenumber">[line 234]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void copyCellCollection( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Clone the cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_APC::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_DiscISAM::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_Memcache::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_Memory::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_PHPTemp::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_SQLite::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_SQLite3::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_Wincache::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The new worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddeleteCacheData"></a> + <h3>method deleteCacheData <span class="smalllinenumber">[line 122]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void deleteCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Delete a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_APC::deleteCacheData()</a></dt> + <dd>Delete a cell in cache identified by coordinate address</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_Memcache::deleteCacheData()</a></dt> + <dd>Delete a cell in cache identified by coordinate address</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_SQLite::deleteCacheData()</a></dt> + <dd>Delete a cell in cache identified by coordinate address</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_SQLite3::deleteCacheData()</a></dt> + <dd>Delete a cell in cache identified by coordinate address</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_Wincache::deleteCacheData()</a></dt> + <dd>Delete a cell in cache identified by coordinate address</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to delete</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellList"></a> + <h3>method getCellList <span class="smalllinenumber">[line 141]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getCellList( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a list of all cell addresses currently held in cache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of string</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodgetCellList">PHPExcel_CachedObjectStorage_SQLite::getCellList()</a></dt> + <dd>Get a list of all cell addresses currently held in cache</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodgetCellList">PHPExcel_CachedObjectStorage_SQLite3::getCellList()</a></dt> + <dd>Get a list of all cell addresses currently held in cache</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHighestColumn"></a> + <h3>method getHighestColumn <span class="smalllinenumber">[line 196]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHighestColumn( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get highest worksheet column<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Highest column name</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHighestRow"></a> + <h3>method getHighestRow <span class="smalllinenumber">[line 207]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getHighestRow( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get highest worksheet row<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Highest row number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHighestRowAndColumn"></a> + <h3>method getHighestRowAndColumn <span class="smalllinenumber">[line 169]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getHighestRowAndColumn( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get highest worksheet column and highest row that have cell records<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Highest column name and highest row number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSortedCellList"></a> + <h3>method getSortedCellList <span class="smalllinenumber">[line 151]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getSortedCellList( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Sort the list of all cell addresses currently held in cache by row and column<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisDataSet"></a> + <h3>method isDataSet <span class="smalllinenumber">[line 95]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isDataSet( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodisDataSet">PHPExcel_CachedObjectStorage_APC::isDataSet()</a></dt> + <dd>Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodisDataSet">PHPExcel_CachedObjectStorage_Memcache::isDataSet()</a></dt> + <dd>Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodisDataSet">PHPExcel_CachedObjectStorage_SQLite::isDataSet()</a></dt> + <dd>Is a value set for an indexed cell?</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodisDataSet">PHPExcel_CachedObjectStorage_SQLite3::isDataSet()</a></dt> + <dd>Is a value set for an indexed cell?</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodisDataSet">PHPExcel_CachedObjectStorage_Wincache::isDataSet()</a></dt> + <dd>Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodupdateCacheData"></a> + <h3>method updateCacheData <span class="smalllinenumber">[line 111]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void updateCacheData( +PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_getUniqueID"></a> + <h3>method _getUniqueID <span class="smalllinenumber">[line 219]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string _getUniqueID( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Generate a unique ID for cache referencing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Unique Reference</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html new file mode 100644 index 0000000..a0ce6c9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html @@ -0,0 +1,561 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_DiscISAM</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_DiscISAM</h1> +Source Location: /PHPExcel/CachedObjectStorage/DiscISAM.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a> + | + --PHPExcel_CachedObjectStorage_DiscISAM</pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_DiscISAM</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodcopyCellCollection">copyCellCollection</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodunsetWorksheetCells">unsetWorksheetCells</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> + </dt> + <dd> + Initialise this new cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> + </dt> + <dd> + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> + </dt> + <dd> + Clone the cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> + </dt> + <dd> + Delete a cell in cache identified by coordinate address + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> + </dt> + <dd> + Get a list of all cell addresses currently held in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a> + </dt> + <dd> + Get highest worksheet column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a> + </dt> + <dd> + Get highest worksheet row + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a> + </dt> + <dd> + Get highest worksheet column and highest row that have cell records + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a> + </dt> + <dd> + Sort the list of all cell addresses currently held in cache by row and column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> + </dt> + <dd> + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a> + </dt> + <dd> + Add or Update a cell in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a> + </dt> + <dd> + Generate a unique ID for cache referencing + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_DiscISAM<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 180]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_CachedObjectStorage_DiscISAM __construct( +PHPExcel_Worksheet +$parent, array +$arguments)</code> + </td></tr></table> + </td></tr></table><br /> + + Initialise this new cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> (Initialise this new cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The worksheet for this cell collection</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$arguments</b>&nbsp;&nbsp;</td> + <td>of mixed $arguments Additional initialisation arguments</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 197]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destroy this cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 91]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a></dt> + <dd>Add or Update a cell in cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopyCellCollection"></a> + <h3>method copyCellCollection <span class="smalllinenumber">[line 141]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void copyCellCollection( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Clone the cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_ICache::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> (Clone the cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The new worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 111]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a></dt> + <dd>Fetch a cell from cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunsetWorksheetCells"></a> + <h3>method unsetWorksheetCells <span class="smalllinenumber">[line 159]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void unsetWorksheetCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear the cell collection and disconnect from our parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:44 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html new file mode 100644 index 0000000..8003f8b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html @@ -0,0 +1,521 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_ICache</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_ICache</h1> +Source Location: /PHPExcel/CachedObjectStorage/ICache.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Interface Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_ICache</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcacheMethodIsAvailable">cacheMethodIsAvailable</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcopyCellCollection">copyCellCollection</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methoddeleteCacheData">deleteCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCellList">getCellList</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetSortedCellList">getSortedCellList</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodisDataSet">isDataSet</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodupdateCacheData">updateCacheData</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_ICache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodcacheMethodIsAvailable"></a> + <h3>static method cacheMethodIsAvailable <span class="smalllinenumber">[line 110]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean cacheMethodIsAvailable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopyCellCollection"></a> + <h3>method copyCellCollection <span class="smalllinenumber">[line 102]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void copyCellCollection( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Clone the cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The new worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddeleteCacheData"></a> + <h3>method deleteCacheData <span class="smalllinenumber">[line 72]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void deleteCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Delete a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to delete</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 64]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Fetch a cell from cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to retrieve</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellList"></a> + <h3>method getCellList <span class="smalllinenumber">[line 87]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getCellList( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a list of all cell addresses currently held in cache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of string</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSortedCellList"></a> + <h3>method getSortedCellList <span class="smalllinenumber">[line 94]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getSortedCellList( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the list of all cell addresses currently held in cache sorted by column and row<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisDataSet"></a> + <h3>method isDataSet <span class="smalllinenumber">[line 80]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isDataSet( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodupdateCacheData"></a> + <h3>method updateCacheData <span class="smalllinenumber">[line 55]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void updateCacheData( +PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html new file mode 100644 index 0000000..fd3a56f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html @@ -0,0 +1,481 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_Igbinary</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_Igbinary</h1> +Source Location: /PHPExcel/CachedObjectStorage/Igbinary.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a> + | + --PHPExcel_CachedObjectStorage_Igbinary</pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_Igbinary</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodcacheMethodIsAvailable">cacheMethodIsAvailable</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodunsetWorksheetCells">unsetWorksheetCells</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> + </dt> + <dd> + Initialise this new cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> + </dt> + <dd> + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> + </dt> + <dd> + Clone the cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> + </dt> + <dd> + Delete a cell in cache identified by coordinate address + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> + </dt> + <dd> + Get a list of all cell addresses currently held in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a> + </dt> + <dd> + Get highest worksheet column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a> + </dt> + <dd> + Get highest worksheet row + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a> + </dt> + <dd> + Get highest worksheet column and highest row that have cell records + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a> + </dt> + <dd> + Sort the list of all cell addresses currently held in cache by row and column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> + </dt> + <dd> + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a> + </dt> + <dd> + Add or Update a cell in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a> + </dt> + <dd> + Generate a unique ID for cache referencing + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_Igbinary<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodcacheMethodIsAvailable"></a> + <h3>static method cacheMethodIsAvailable <span class="smalllinenumber">[line 130]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean cacheMethodIsAvailable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_ICache::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> (Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 64]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a></dt> + <dd>Add or Update a cell in cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 84]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a></dt> + <dd>Fetch a cell from cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunsetWorksheetCells"></a> + <h3>method unsetWorksheetCells <span class="smalllinenumber">[line 112]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void unsetWorksheetCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear the cell collection and disconnect from our parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html new file mode 100644 index 0000000..d27fc1f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html @@ -0,0 +1,728 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_Memcache</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_Memcache</h1> +Source Location: /PHPExcel/CachedObjectStorage/Memcache.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a> + | + --PHPExcel_CachedObjectStorage_Memcache</pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_Memcache</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodcacheMethodIsAvailable">cacheMethodIsAvailable</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodcopyCellCollection">copyCellCollection</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methoddeleteCacheData">deleteCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodfailureCallback">failureCallback</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodisDataSet">isDataSet</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodunsetWorksheetCells">unsetWorksheetCells</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> + </dt> + <dd> + Initialise this new cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> + </dt> + <dd> + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> + </dt> + <dd> + Clone the cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> + </dt> + <dd> + Delete a cell in cache identified by coordinate address + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> + </dt> + <dd> + Get a list of all cell addresses currently held in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a> + </dt> + <dd> + Get highest worksheet column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a> + </dt> + <dd> + Get highest worksheet row + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a> + </dt> + <dd> + Get highest worksheet column and highest row that have cell records + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a> + </dt> + <dd> + Sort the list of all cell addresses currently held in cache by row and column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> + </dt> + <dd> + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a> + </dt> + <dd> + Add or Update a cell in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a> + </dt> + <dd> + Generate a unique ID for cache referencing + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_Memcache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodcacheMethodIsAvailable"></a> + <h3>static method cacheMethodIsAvailable <span class="smalllinenumber">[line 290]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean cacheMethodIsAvailable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_ICache::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> (Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 241]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_CachedObjectStorage_Memcache __construct( +PHPExcel_Worksheet +$parent, array +$arguments)</code> + </td></tr></table> + </td></tr></table><br /> + + Initialise this new cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> (Initialise this new cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The worksheet for this cell collection</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$arguments</b>&nbsp;&nbsp;</td> + <td>of mixed $arguments Additional initialisation arguments</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 277]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destroy this cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 92]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a></dt> + <dd>Add or Update a cell in cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopyCellCollection"></a> + <h3>method copyCellCollection <span class="smalllinenumber">[line 190]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void copyCellCollection( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Clone the cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_ICache::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> (Clone the cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The new worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddeleteCacheData"></a> + <h3>method deleteCacheData <span class="smalllinenumber">[line 175]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void deleteCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Delete a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_ICache::deleteCacheData()</a></dt> + <dd>Delete a cell in cache identified by coordinate address</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> (Delete a cell in cache identified by coordinate address)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to delete</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodfailureCallback"></a> + <h3>method failureCallback <span class="smalllinenumber">[line 269]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void failureCallback( +string +$host, integer +$port)</code> + </td></tr></table> + </td></tr></table><br /> + + Memcache error handler<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$host</b>&nbsp;&nbsp;</td> + <td>Memcache server</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$port</b>&nbsp;&nbsp;</td> + <td>Memcache port</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 139]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a></dt> + <dd>Fetch a cell from cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisDataSet"></a> + <h3>method isDataSet <span class="smalllinenumber">[line 113]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void isDataSet( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodisDataSet">PHPExcel_CachedObjectStorage_ICache::isDataSet()</a></dt> + <dd>Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> (Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunsetWorksheetCells"></a> + <h3>method unsetWorksheetCells <span class="smalllinenumber">[line 219]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void unsetWorksheetCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear the cell collection and disconnect from our parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:42 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html new file mode 100644 index 0000000..2dd8bb4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html @@ -0,0 +1,492 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_Memory</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_Memory</h1> +Source Location: /PHPExcel/CachedObjectStorage/Memory.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a> + | + --PHPExcel_CachedObjectStorage_Memory</pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_Memory</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodcopyCellCollection">copyCellCollection</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodunsetWorksheetCells">unsetWorksheetCells</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> + </dt> + <dd> + Initialise this new cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> + </dt> + <dd> + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> + </dt> + <dd> + Clone the cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> + </dt> + <dd> + Delete a cell in cache identified by coordinate address + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> + </dt> + <dd> + Get a list of all cell addresses currently held in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a> + </dt> + <dd> + Get highest worksheet column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a> + </dt> + <dd> + Get highest worksheet row + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a> + </dt> + <dd> + Get highest worksheet column and highest row that have cell records + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a> + </dt> + <dd> + Sort the list of all cell addresses currently held in cache by row and column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> + </dt> + <dd> + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a> + </dt> + <dd> + Add or Update a cell in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a> + </dt> + <dd> + Generate a unique ID for cache referencing + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_Memory<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a></dt> + <dd>Add or Update a cell in cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopyCellCollection"></a> + <h3>method copyCellCollection <span class="smalllinenumber">[line 77]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void copyCellCollection( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Clone the cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_ICache::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> (Clone the cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The new worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 59]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a></dt> + <dd>Fetch a cell from cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunsetWorksheetCells"></a> + <h3>method unsetWorksheetCells <span class="smalllinenumber">[line 95]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void unsetWorksheetCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear the cell collection and disconnect from our parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:42 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html new file mode 100644 index 0000000..c3ebc2d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html @@ -0,0 +1,449 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_MemoryGZip</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_MemoryGZip</h1> +Source Location: /PHPExcel/CachedObjectStorage/MemoryGZip.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a> + | + --PHPExcel_CachedObjectStorage_MemoryGZip</pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_MemoryGZip</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html#methodunsetWorksheetCells">unsetWorksheetCells</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> + </dt> + <dd> + Initialise this new cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> + </dt> + <dd> + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> + </dt> + <dd> + Clone the cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> + </dt> + <dd> + Delete a cell in cache identified by coordinate address + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> + </dt> + <dd> + Get a list of all cell addresses currently held in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a> + </dt> + <dd> + Get highest worksheet column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a> + </dt> + <dd> + Get highest worksheet row + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a> + </dt> + <dd> + Get highest worksheet column and highest row that have cell records + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a> + </dt> + <dd> + Sort the list of all cell addresses currently held in cache by row and column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> + </dt> + <dd> + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a> + </dt> + <dd> + Add or Update a cell in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a> + </dt> + <dd> + Generate a unique ID for cache referencing + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_MemoryGZip<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 64]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a></dt> + <dd>Add or Update a cell in cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 84]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a></dt> + <dd>Fetch a cell from cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunsetWorksheetCells"></a> + <h3>method unsetWorksheetCells <span class="smalllinenumber">[line 112]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void unsetWorksheetCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear the cell collection and disconnect from our parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html new file mode 100644 index 0000000..2915f52 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html @@ -0,0 +1,449 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_MemorySerialized</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_MemorySerialized</h1> +Source Location: /PHPExcel/CachedObjectStorage/MemorySerialized.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a> + | + --PHPExcel_CachedObjectStorage_MemorySerialized</pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_MemorySerialized</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html#methodunsetWorksheetCells">unsetWorksheetCells</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> + </dt> + <dd> + Initialise this new cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> + </dt> + <dd> + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> + </dt> + <dd> + Clone the cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> + </dt> + <dd> + Delete a cell in cache identified by coordinate address + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> + </dt> + <dd> + Get a list of all cell addresses currently held in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a> + </dt> + <dd> + Get highest worksheet column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a> + </dt> + <dd> + Get highest worksheet row + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a> + </dt> + <dd> + Get highest worksheet column and highest row that have cell records + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a> + </dt> + <dd> + Sort the list of all cell addresses currently held in cache by row and column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> + </dt> + <dd> + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a> + </dt> + <dd> + Add or Update a cell in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a> + </dt> + <dd> + Generate a unique ID for cache referencing + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_MemorySerialized<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 64]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a></dt> + <dd>Add or Update a cell in cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 84]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a></dt> + <dd>Fetch a cell from cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunsetWorksheetCells"></a> + <h3>method unsetWorksheetCells <span class="smalllinenumber">[line 112]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void unsetWorksheetCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear the cell collection and disconnect from our parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html new file mode 100644 index 0000000..3f7f415 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html @@ -0,0 +1,561 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_PHPTemp</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_PHPTemp</h1> +Source Location: /PHPExcel/CachedObjectStorage/PHPTemp.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a> + | + --PHPExcel_CachedObjectStorage_PHPTemp</pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_PHPTemp</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodcopyCellCollection">copyCellCollection</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodunsetWorksheetCells">unsetWorksheetCells</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> + </dt> + <dd> + Initialise this new cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> + </dt> + <dd> + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> + </dt> + <dd> + Clone the cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> + </dt> + <dd> + Delete a cell in cache identified by coordinate address + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> + </dt> + <dd> + Get a list of all cell addresses currently held in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a> + </dt> + <dd> + Get highest worksheet column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a> + </dt> + <dd> + Get highest worksheet row + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a> + </dt> + <dd> + Get highest worksheet column and highest row that have cell records + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a> + </dt> + <dd> + Sort the list of all cell addresses currently held in cache by row and column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> + </dt> + <dd> + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a> + </dt> + <dd> + Add or Update a cell in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a> + </dt> + <dd> + Generate a unique ID for cache referencing + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_PHPTemp<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 172]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_CachedObjectStorage_PHPTemp __construct( +PHPExcel_Worksheet +$parent, array +$arguments)</code> + </td></tr></table> + </td></tr></table><br /> + + Initialise this new cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> (Initialise this new cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The worksheet for this cell collection</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$arguments</b>&nbsp;&nbsp;</td> + <td>of mixed $arguments Additional initialisation arguments</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 185]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destroy this cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 83]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a></dt> + <dd>Add or Update a cell in cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopyCellCollection"></a> + <h3>method copyCellCollection <span class="smalllinenumber">[line 133]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void copyCellCollection( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Clone the cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_ICache::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> (Clone the cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The new worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 103]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a></dt> + <dd>Fetch a cell from cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunsetWorksheetCells"></a> + <h3>method unsetWorksheetCells <span class="smalllinenumber">[line 151]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void unsetWorksheetCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear the cell collection and disconnect from our parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:27 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html new file mode 100644 index 0000000..e941acb --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html @@ -0,0 +1,711 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_SQLite</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_SQLite</h1> +Source Location: /PHPExcel/CachedObjectStorage/SQLite.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a> + | + --PHPExcel_CachedObjectStorage_SQLite</pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_SQLite</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodcacheMethodIsAvailable">cacheMethodIsAvailable</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodcopyCellCollection">copyCellCollection</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methoddeleteCacheData">deleteCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodgetCellList">getCellList</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodisDataSet">isDataSet</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodunsetWorksheetCells">unsetWorksheetCells</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> + </dt> + <dd> + Initialise this new cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> + </dt> + <dd> + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> + </dt> + <dd> + Clone the cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> + </dt> + <dd> + Delete a cell in cache identified by coordinate address + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> + </dt> + <dd> + Get a list of all cell addresses currently held in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a> + </dt> + <dd> + Get highest worksheet column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a> + </dt> + <dd> + Get highest worksheet row + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a> + </dt> + <dd> + Get highest worksheet column and highest row that have cell records + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a> + </dt> + <dd> + Sort the list of all cell addresses currently held in cache by row and column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> + </dt> + <dd> + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a> + </dt> + <dd> + Add or Update a cell in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a> + </dt> + <dd> + Generate a unique ID for cache referencing + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_SQLite<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodcacheMethodIsAvailable"></a> + <h3>static method cacheMethodIsAvailable <span class="smalllinenumber">[line 262]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean cacheMethodIsAvailable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_ICache::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> (Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 233]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_CachedObjectStorage_SQLite __construct( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Initialise this new cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> (Initialise this new cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The worksheet for this cell collection</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 251]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destroy this cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 79]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a></dt> + <dd>Add or Update a cell in cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopyCellCollection"></a> + <h3>method copyCellCollection <span class="smalllinenumber">[line 198]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void copyCellCollection( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Clone the cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_ICache::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> (Clone the cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The new worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddeleteCacheData"></a> + <h3>method deleteCacheData <span class="smalllinenumber">[line 157]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void deleteCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Delete a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_ICache::deleteCacheData()</a></dt> + <dd>Delete a cell in cache identified by coordinate address</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> (Delete a cell in cache identified by coordinate address)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to delete</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 99]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a></dt> + <dd>Fetch a cell from cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellList"></a> + <h3>method getCellList <span class="smalllinenumber">[line 177]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getCellList( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a list of all cell addresses currently held in cache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of string</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCellList">PHPExcel_CachedObjectStorage_ICache::getCellList()</a></dt> + <dd>Get a list of all cell addresses currently held in cache</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> (Get a list of all cell addresses currently held in cache)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisDataSet"></a> + <h3>method isDataSet <span class="smalllinenumber">[line 133]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isDataSet( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Is a value set for an indexed cell?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodisDataSet">PHPExcel_CachedObjectStorage_ICache::isDataSet()</a></dt> + <dd>Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> (Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunsetWorksheetCells"></a> + <h3>method unsetWorksheetCells <span class="smalllinenumber">[line 215]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void unsetWorksheetCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear the cell collection and disconnect from our parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:46 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html new file mode 100644 index 0000000..63fdbab --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html @@ -0,0 +1,711 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_SQLite3</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_SQLite3</h1> +Source Location: /PHPExcel/CachedObjectStorage/SQLite3.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a> + | + --PHPExcel_CachedObjectStorage_SQLite3</pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_SQLite3</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodcacheMethodIsAvailable">cacheMethodIsAvailable</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodcopyCellCollection">copyCellCollection</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methoddeleteCacheData">deleteCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodgetCellList">getCellList</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodisDataSet">isDataSet</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodunsetWorksheetCells">unsetWorksheetCells</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> + </dt> + <dd> + Initialise this new cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> + </dt> + <dd> + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> + </dt> + <dd> + Clone the cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> + </dt> + <dd> + Delete a cell in cache identified by coordinate address + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> + </dt> + <dd> + Get a list of all cell addresses currently held in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a> + </dt> + <dd> + Get highest worksheet column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a> + </dt> + <dd> + Get highest worksheet row + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a> + </dt> + <dd> + Get highest worksheet column and highest row that have cell records + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a> + </dt> + <dd> + Sort the list of all cell addresses currently held in cache by row and column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> + </dt> + <dd> + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a> + </dt> + <dd> + Add or Update a cell in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a> + </dt> + <dd> + Generate a unique ID for cache referencing + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_SQLite3<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodcacheMethodIsAvailable"></a> + <h3>static method cacheMethodIsAvailable <span class="smalllinenumber">[line 269]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean cacheMethodIsAvailable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_ICache::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> (Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 237]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_CachedObjectStorage_SQLite3 __construct( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Initialise this new cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> (Initialise this new cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The worksheet for this cell collection</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 255]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destroy this cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 83]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a></dt> + <dd>Add or Update a cell in cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopyCellCollection"></a> + <h3>method copyCellCollection <span class="smalllinenumber">[line 202]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void copyCellCollection( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Clone the cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_ICache::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> (Clone the cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The new worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddeleteCacheData"></a> + <h3>method deleteCacheData <span class="smalllinenumber">[line 160]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void deleteCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Delete a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_ICache::deleteCacheData()</a></dt> + <dd>Delete a cell in cache identified by coordinate address</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> (Delete a cell in cache identified by coordinate address)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to delete</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 103]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a></dt> + <dd>Fetch a cell from cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellList"></a> + <h3>method getCellList <span class="smalllinenumber">[line 181]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getCellList( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a list of all cell addresses currently held in cache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of string</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCellList">PHPExcel_CachedObjectStorage_ICache::getCellList()</a></dt> + <dd>Get a list of all cell addresses currently held in cache</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> (Get a list of all cell addresses currently held in cache)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisDataSet"></a> + <h3>method isDataSet <span class="smalllinenumber">[line 136]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isDataSet( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Is a value set for an indexed cell?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodisDataSet">PHPExcel_CachedObjectStorage_ICache::isDataSet()</a></dt> + <dd>Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> (Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunsetWorksheetCells"></a> + <h3>method unsetWorksheetCells <span class="smalllinenumber">[line 219]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void unsetWorksheetCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear the cell collection and disconnect from our parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:46 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html new file mode 100644 index 0000000..dbfd4b6 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html @@ -0,0 +1,682 @@ +<html> +<head> +<title>Docs For Class PHPExcel_CachedObjectStorage_Wincache</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_CachedObjectStorage_Wincache</h1> +Source Location: /PHPExcel/CachedObjectStorage/Wincache.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a> + | + --PHPExcel_CachedObjectStorage_Wincache</pre><br /> +<div class="description">PHPExcel_CachedObjectStorage_Wincache</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodaddCacheData">addCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodcacheMethodIsAvailable">cacheMethodIsAvailable</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodcopyCellCollection">copyCellCollection</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methoddeleteCacheData">deleteCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodgetCacheData">getCacheData</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodisDataSet">isDataSet</a></li> + <li><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodunsetWorksheetCells">unsetWorksheetCells</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></h4> +<dl> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> + </dt> + <dd> + Initialise this new cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> + </dt> + <dd> + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> + </dt> + <dd> + Clone the cell collection + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> + </dt> + <dd> + Delete a cell in cache identified by coordinate address + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a> + </dt> + <dd> + Get a list of all cell addresses currently held in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a> + </dt> + <dd> + Get highest worksheet column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a> + </dt> + <dd> + Get highest worksheet row + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a> + </dt> + <dd> + Get highest worksheet column and highest row that have cell records + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a> + </dt> + <dd> + Sort the list of all cell addresses currently held in cache by row and column + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> + </dt> + <dd> + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell? + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a> + </dt> + <dd> + Add or Update a cell in cache + </dd> + <dt> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a> + </dt> + <dd> + Generate a unique ID for cache referencing + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_CachedObjectStorage_Wincache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodcacheMethodIsAvailable"></a> + <h3>static method cacheMethodIsAvailable <span class="smalllinenumber">[line 272]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean cacheMethodIsAvailable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_ICache::cacheMethodIsAvailable()</a></dt> + <dd>Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a> (Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 242]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_CachedObjectStorage_Wincache __construct( +PHPExcel_Worksheet +$parent, array +$arguments)</code> + </td></tr></table> + </td></tr></table><br /> + + Initialise this new cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a> (Initialise this new cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The worksheet for this cell collection</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$arguments</b>&nbsp;&nbsp;</td> + <td>of mixed $arguments Additional initialisation arguments</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 258]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destroy this cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddCacheData"></a> + <h3>method addCacheData <span class="smalllinenumber">[line 91]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addCacheData( +string +$pCoord, PHPExcel_Cell +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Add or Update a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a></dt> + <dd>Add or Update a cell in cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to update</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to update</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopyCellCollection"></a> + <h3>method copyCellCollection <span class="smalllinenumber">[line 190]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void copyCellCollection( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Clone the cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_ICache::copyCellCollection()</a></dt> + <dd>Clone the cell collection</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a> (Clone the cell collection)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td>The new worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddeleteCacheData"></a> + <h3>method deleteCacheData <span class="smalllinenumber">[line 175]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void deleteCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Delete a cell in cache identified by coordinate address<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_ICache::deleteCacheData()</a></dt> + <dd>Delete a cell in cache identified by coordinate address</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a> (Delete a cell in cache identified by coordinate address)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to delete</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheData"></a> + <h3>method getCacheData <span class="smalllinenumber">[line 137]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCacheData( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found, or null if not found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a></dt> + <dd>Fetch a cell from cache identified by coordinate address</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisDataSet"></a> + <h3>method isDataSet <span class="smalllinenumber">[line 111]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isDataSet( +string +$pCoord)</code> + </td></tr></table> + </td></tr></table><br /> + + Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodisDataSet">PHPExcel_CachedObjectStorage_ICache::isDataSet()</a></dt> + <dd>Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + </dl> + Overrides <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a> (Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoord</b>&nbsp;&nbsp;</td> + <td>Coordinate address of the cell to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunsetWorksheetCells"></a> + <h3>method unsetWorksheetCells <span class="smalllinenumber">[line 220]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void unsetWorksheetCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear the cell collection and disconnect from our parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html new file mode 100644 index 0000000..1b2ec8f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page APC.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: APC.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/APC.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a></dt> + <dd>PHPExcel_CachedObjectStorage_APC</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html new file mode 100644 index 0000000..ca63719 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page CacheBase.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: CacheBase.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/CacheBase.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a></dt> + <dd>PHPExcel_CachedObjectStorage_CacheBase</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html new file mode 100644 index 0000000..212ea3d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page DiscISAM.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DiscISAM.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/DiscISAM.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a></dt> + <dd>PHPExcel_CachedObjectStorage_DiscISAM</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:44 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html new file mode 100644 index 0000000..ea1cf68 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page ICache.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: ICache.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/ICache.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></dt> + <dd>PHPExcel_CachedObjectStorage_ICache</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html new file mode 100644 index 0000000..cd136d1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page Igbinary.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Igbinary.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/Igbinary.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a></dt> + <dd>PHPExcel_CachedObjectStorage_Igbinary</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html new file mode 100644 index 0000000..200732a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page Memcache.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Memcache.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/Memcache.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a></dt> + <dd>PHPExcel_CachedObjectStorage_Memcache</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:42 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html new file mode 100644 index 0000000..52413c8 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page Memory.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Memory.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/Memory.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a></dt> + <dd>PHPExcel_CachedObjectStorage_Memory</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:42 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html new file mode 100644 index 0000000..0e4f398 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page MemoryGZip.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: MemoryGZip.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/MemoryGZip.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a></dt> + <dd>PHPExcel_CachedObjectStorage_MemoryGZip</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html new file mode 100644 index 0000000..2482b51 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page MemorySerialized.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: MemorySerialized.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/MemorySerialized.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a></dt> + <dd>PHPExcel_CachedObjectStorage_MemorySerialized</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html new file mode 100644 index 0000000..62a6911 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page PHPTemp.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: PHPTemp.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/PHPTemp.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a></dt> + <dd>PHPExcel_CachedObjectStorage_PHPTemp</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:27 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html new file mode 100644 index 0000000..d514860 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page SQLite.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: SQLite.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/SQLite.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a></dt> + <dd>PHPExcel_CachedObjectStorage_SQLite</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:46 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html new file mode 100644 index 0000000..fe48127 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page SQLite3.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: SQLite3.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/SQLite3.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a></dt> + <dd>PHPExcel_CachedObjectStorage_SQLite3</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:46 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html new file mode 100644 index 0000000..ba61170 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page Wincache.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Wincache.php</h1> +Source Location: /PHPExcel/CachedObjectStorage/Wincache.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a></dt> + <dd>PHPExcel_CachedObjectStorage_Wincache</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html new file mode 100644 index 0000000..68be48d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page CachedObjectStorageFactory.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="../PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: CachedObjectStorageFactory.php</h1> +Source Location: /PHPExcel/CachedObjectStorageFactory.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a></dt> + <dd>PHPExcel_CachedObjectStorageFactory</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:20 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_notes/dwsync.xml new file mode 100644 index 0000000..7915eca --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_CachedObjectStorage/_notes/dwsync.xml @@ -0,0 +1,199 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_CachedObjectStorageFactory.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_APC.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_CacheBase.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_DiscISAM.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_ICache.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Igbinary.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Memcache.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Memory.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_MemoryGZip.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_MemorySerialized.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_PHPTemp.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_SQLite.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_SQLite3.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Wincache.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---APC.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---CacheBase.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---DiscISAM.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---ICache.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Igbinary.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Memcache.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Memory.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---MemoryGZip.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---MemorySerialized.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---PHPTemp.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite3.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Wincache.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorageFactory.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---MemorySerialized.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite3.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_DiscISAM.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_CacheBase.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_SQLite.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---DiscISAM.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_MemoryGZip.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Memcache.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---CacheBase.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_APC.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Igbinary.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorageFactory.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---MemoryGZip.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Memcache.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorageFactory.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Memory.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---APC.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Igbinary.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147000000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_ICache.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Memory.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_PHPTemp.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---ICache.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Wincache.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851879999999" remote="129984147600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---PHPTemp.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_SQLite3.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_MemorySerialized.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Wincache.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---MemorySerialized.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite3.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_DiscISAM.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_CacheBase.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_SQLite.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---DiscISAM.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_MemoryGZip.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Memcache.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---CacheBase.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_APC.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Igbinary.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorageFactory.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---MemoryGZip.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Memcache.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorageFactory.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Memory.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---APC.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Igbinary.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_ICache.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Memory.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_PHPTemp.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---ICache.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_Wincache.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851879999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---PHPTemp.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_SQLite3.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_CachedObjectStorage_MemorySerialized.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---Wincache.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---CachedObjectStorage---MemorySerialized.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560433656930" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite3.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560434039457" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_DiscISAM.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560434450368" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_CacheBase.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560434913861" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_SQLite.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560435318771" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---DiscISAM.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560435743732" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_MemoryGZip.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560436191260" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_Memcache.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560436639573" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---CacheBase.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560437091632" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_APC.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560437532061" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorageFactory.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560438408874" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_Igbinary.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560437969841" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560438804553" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---MemoryGZip.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560439174307" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---Memcache.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560439567389" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorageFactory.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560439972510" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_Memory.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560440400613" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---APC.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560440820580" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---Igbinary.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560441248120" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---Memory.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560442077689" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_ICache.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560441681781" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_PHPTemp.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560442496616" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---ICache.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560442903262" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_Wincache.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560443362160" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---PHPTemp.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560443746861" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_SQLite3.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560444141472" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_MemorySerialized.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560444533403" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---Wincache.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560444908644" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite3.php.html" server="62.244.88.21/amashow/" local="131414752768691937" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---MemorySerialized.php.html" server="62.244.88.21/amashow/" local="131414752768260963" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_DiscISAM.html" server="62.244.88.21/amashow/" local="131414752769104637" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_CacheBase.html" server="62.244.88.21/amashow/" local="131414752769604694" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---DiscISAM.php.html" server="62.244.88.21/amashow/" local="131414752770505865" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_SQLite.html" server="62.244.88.21/amashow/" local="131414752770044647" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_Memcache.html" server="62.244.88.21/amashow/" local="131414752771397866" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_MemoryGZip.html" server="62.244.88.21/amashow/" local="131414752770948927" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---CacheBase.php.html" server="62.244.88.21/amashow/" local="131414752771791145" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_Igbinary.html" server="62.244.88.21/amashow/" local="131414752772511689" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_APC.html" server="62.244.88.21/amashow/" local="131414752772033954" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorageFactory.php.html" server="62.244.88.21/amashow/" local="131414752772728351" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---MemoryGZip.php.html" server="62.244.88.21/amashow/" local="131414752773168742" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---Memcache.php.html" server="62.244.88.21/amashow/" local="131414752773386120" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite.php.html" server="62.244.88.21/amashow/" local="131414752772952929" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---APC.php.html" server="62.244.88.21/amashow/" local="131414752774660833" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorageFactory.html" server="62.244.88.21/amashow/" local="131414752773769994" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_Memory.html" server="62.244.88.21/amashow/" local="131414752774241501" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---Igbinary.php.html" server="62.244.88.21/amashow/" local="131414752775037836" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_ICache.html" server="62.244.88.21/amashow/" local="131414752775281211" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---Memory.php.html" server="62.244.88.21/amashow/" local="131414752775516764" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---ICache.php.html" server="62.244.88.21/amashow/" local="131414752776162289" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_PHPTemp.html" server="62.244.88.21/amashow/" local="131414752775759533" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_SQLite3.html" server="62.244.88.21/amashow/" local="131414752777100557" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_Wincache.html" server="62.244.88.21/amashow/" local="131414752776407847" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---PHPTemp.php.html" server="62.244.88.21/amashow/" local="131414752776631838" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_MemorySerialized.html" server="62.244.88.21/amashow/" local="131414752777580586" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---Wincache.php.html" server="62.244.88.21/amashow/" local="131414752777808245" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_DiscISAM.html" server="62.244.88.21/deciday/" local="131919461513731070" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---MemorySerialized.php.html" server="62.244.88.21/deciday/" local="131919461522525327" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorageFactory.php.html" server="62.244.88.21/deciday/" local="131919461514831188" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---APC.php.html" server="62.244.88.21/deciday/" local="131919461511831132" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite3.php.html" server="62.244.88.21/deciday/" local="131919461524607182" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_PHPTemp.html" server="62.244.88.21/deciday/" local="131919461523349833" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_APC.html" server="62.244.88.21/deciday/" local="131919461512038197" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---DiscISAM.php.html" server="62.244.88.21/deciday/" local="131919461514639857" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---ICache.php.html" server="62.244.88.21/deciday/" local="131919461516511974" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_ICache.html" server="62.244.88.21/deciday/" local="131919461517458233" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_Memcache.html" server="62.244.88.21/deciday/" local="131919461519773317" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_Igbinary.html" server="62.244.88.21/deciday/" local="131919461517272910" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_CacheBase.html" server="62.244.88.21/deciday/" local="131919461513554051" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---Wincache.php.html" server="62.244.88.21/deciday/" local="131919461526852966" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_MemorySerialized.html" server="62.244.88.21/deciday/" local="131919461521674233" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorageFactory.html" server="62.244.88.21/deciday/" local="131919461515033532" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---Igbinary.php.html" server="62.244.88.21/deciday/" local="131919461517785193" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_MemoryGZip.html" server="62.244.88.21/deciday/" local="131919461520040297" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_Wincache.html" server="62.244.88.21/deciday/" local="131919461526666360" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---Memcache.php.html" server="62.244.88.21/deciday/" local="131919461518996931" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---PHPTemp.php.html" server="62.244.88.21/deciday/" local="131919461523672748" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_Memory.html" server="62.244.88.21/deciday/" local="131919461522718737" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---MemoryGZip.php.html" server="62.244.88.21/deciday/" local="131919461520219522" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_SQLite.html" server="62.244.88.21/deciday/" local="131919461525230518" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorage_SQLite3.html" server="62.244.88.21/deciday/" local="131919461524408837" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite.php.html" server="62.244.88.21/deciday/" local="131919461525810876" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---Memory.php.html" server="62.244.88.21/deciday/" local="131919461521236026" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---CachedObjectStorage---CacheBase.php.html" server="62.244.88.21/deciday/" local="131919461512944199" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_CachedObjectStorageFactory.html" server="62.244.88.21/deciday_18/" local="131414752773769994" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_APC.html" server="62.244.88.21/deciday_18/" local="131414752772033954" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_DiscISAM.html" server="62.244.88.21/deciday_18/" local="131414752769104637" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_CacheBase.html" server="62.244.88.21/deciday_18/" local="131414752769604694" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_ICache.html" server="62.244.88.21/deciday_18/" local="131414752775281211" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_Igbinary.html" server="62.244.88.21/deciday_18/" local="131414752772511689" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_Memcache.html" server="62.244.88.21/deciday_18/" local="131414752771397866" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_Memory.html" server="62.244.88.21/deciday_18/" local="131414752774241501" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_MemoryGZip.html" server="62.244.88.21/deciday_18/" local="131414752770948927" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_MemorySerialized.html" server="62.244.88.21/deciday_18/" local="131414752777580586" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_PHPTemp.html" server="62.244.88.21/deciday_18/" local="131414752775759533" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_SQLite.html" server="62.244.88.21/deciday_18/" local="131414752770044647" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_SQLite3.html" server="62.244.88.21/deciday_18/" local="131414752777100557" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---APC.php.html" server="62.244.88.21/deciday_18/" local="131414752774660833" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---CacheBase.php.html" server="62.244.88.21/deciday_18/" local="131414752771791145" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_CachedObjectStorage_Wincache.html" server="62.244.88.21/deciday_18/" local="131414752776407847" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---DiscISAM.php.html" server="62.244.88.21/deciday_18/" local="131414752770505865" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---ICache.php.html" server="62.244.88.21/deciday_18/" local="131414752776162289" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---Igbinary.php.html" server="62.244.88.21/deciday_18/" local="131414752775037836" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---Memcache.php.html" server="62.244.88.21/deciday_18/" local="131414752773386120" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---Memory.php.html" server="62.244.88.21/deciday_18/" local="131414752775516764" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---MemoryGZip.php.html" server="62.244.88.21/deciday_18/" local="131414752773168742" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---MemorySerialized.php.html" server="62.244.88.21/deciday_18/" local="131414752768260963" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---PHPTemp.php.html" server="62.244.88.21/deciday_18/" local="131414752776631838" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite.php.html" server="62.244.88.21/deciday_18/" local="131414752772952929" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---SQLite3.php.html" server="62.244.88.21/deciday_18/" local="131414752768691937" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorage---Wincache.php.html" server="62.244.88.21/deciday_18/" local="131414752777808245" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---CachedObjectStorageFactory.php.html" server="62.244.88.21/deciday_18/" local="131414752772728351" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation.html new file mode 100644 index 0000000..72288c2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation.html @@ -0,0 +1,1760 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation</h1> +Source Location: /PHPExcel/Calculation.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation (Singleton)</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#var$cyclicFormulaCount">$cyclicFormulaCount</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#var$debugLog">$debugLog</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#var$echoDebugLog">$echoDebugLog</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#var$formulaError">$formulaError</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#var$suppressFormulaErrors">$suppressFormulaErrors</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#var$writeDebugLog">$writeDebugLog</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#var$_localeBoolean">$_localeBoolean</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_CELLREF">CALCULATION_REGEXP_CELLREF</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_ERROR">CALCULATION_REGEXP_ERROR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_FUNCTION">CALCULATION_REGEXP_FUNCTION</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_NAMEDRANGE">CALCULATION_REGEXP_NAMEDRANGE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_NUMBER">CALCULATION_REGEXP_NUMBER</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_OPENBRACE">CALCULATION_REGEXP_OPENBRACE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_STRING">CALCULATION_REGEXP_STRING</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#constRETURN_ARRAY_AS_ARRAY">RETURN_ARRAY_AS_ARRAY</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#constRETURN_ARRAY_AS_ERROR">RETURN_ARRAY_AS_ERROR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#constRETURN_ARRAY_AS_VALUE">RETURN_ARRAY_AS_VALUE</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodcalculate">calculate</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodcalculateCellValue">calculateCellValue</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodcalculateFormula">calculateFormula</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodclearCalculationCache">clearCalculationCache</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methoddisableCalculationCache">disableCalculationCache</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodenableCalculationCache">enableCalculationCache</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodextractCellRange">extractCellRange</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodextractNamedRange">extractNamedRange</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodflushInstance">flushInstance</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetArrayReturnType">getArrayReturnType</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetCalculationCacheEnabled">getCalculationCacheEnabled</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetCalculationCacheExpirationTime">getCalculationCacheExpirationTime</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetFALSE">getFALSE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetInstance">getInstance</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetLocale">getLocale</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetTRUE">getTRUE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodisImplemented">isImplemented</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodlistAllFunctionNames">listAllFunctionNames</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodlistFunctionNames">listFunctionNames</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodlistFunctions">listFunctions</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodparseFormula">parseFormula</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetArrayReturnType">setArrayReturnType</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetCalculationCacheEnabled">setCalculationCacheEnabled</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetCalculationCacheExpirationTime">setCalculationCacheExpirationTime</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetLocale">setLocale</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method_calculateFormulaValue">_calculateFormulaValue</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method_getMatrixDimensions">_getMatrixDimensions</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method_localeFunc">_localeFunc</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method_raiseFormulaError">_raiseFormulaError</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method_translateFormulaToEnglish">_translateFormulaToEnglish</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method_translateFormulaToLocale">_translateFormulaToLocale</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method_translateSeparator">_translateSeparator</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method_unwrapResult">_unwrapResult</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method_wrapResult">_wrapResult</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 62]<br /> +PHPExcel_Calculation (Singleton)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_localeBoolean"></a> + <p></p> + <h4>static $_localeBoolean = <span class="value">array(&nbsp;&nbsp;&nbsp;'TRUE'&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'TRUE',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'FALSE'&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'FALSE',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'NULL'&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'NULL'<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)</span></h4> + <p>[line 226]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$cyclicFormulaCount"></a> + <p></p> + <h4>$cyclicFormulaCount = <span class="value">&nbsp;0</span></h4> + <p>[line 215]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$debugLog"></a> + <p></p> + <h4>$debugLog = <span class="value">array()</span></h4> + <p>[line 212]</p> + The debug log generated by the calculation engine<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>var:</b>&nbsp;&nbsp;</td><td>of string</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$echoDebugLog"></a> + <p></p> + <h4>$echoDebugLog = <span class="value">&nbsp;false</span></h4> + <p>[line 193]</p> + Flag to determine whether a debug log should be echoed by the calculation engine<br /><br /><p>If true, then a debug log will be echoed If false, then a debug log will not be echoed A debug log can only be echoed if it is generated</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>boolean</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$formulaError"></a> + <p></p> + <h4>$formulaError = <span class="value">&nbsp;null</span></h4> + <p>[line 170]</p> + Error message for any error that was raised/thrown by the calculation engine<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$suppressFormulaErrors"></a> + <p></p> + <h4>$suppressFormulaErrors = <span class="value">&nbsp;false</span></h4> + <p>[line 161]</p> + Flag to determine how formula errors should be handled If true, then a user error will be triggered If false, then an exception will be thrown<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>boolean</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$writeDebugLog"></a> + <p></p> + <h4>$writeDebugLog = <span class="value">&nbsp;false</span></h4> + <p>[line 181]</p> + Flag to determine whether a debug log should be generated by the calculation engine If true, then a debug log will be generated If false, then a debug log will not be generated<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>boolean</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodflushInstance"></a> + <h3>static method flushInstance <span class="smalllinenumber">[line 1728]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static null flushInstance( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Flush the calculation cache for any existing instance of this class but only if a PHPExcel_Calculation instance exists<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetArrayReturnType"></a> + <h3>static method getArrayReturnType <span class="smalllinenumber">[line 1790]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getArrayReturnType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Array Return Type (Array or Value of first element in the array)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Array return type</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFALSE"></a> + <h3>static method getFALSE <span class="smalllinenumber">[line 1762]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getFALSE( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the locale-specific translation of FALSE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>locale-specific translation of FALSE</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetInstance"></a> + <h3>static method getInstance <span class="smalllinenumber">[line 1712]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a> getInstance( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get an instance of this class<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTRUE"></a> + <h3>static method getTRUE <span class="smalllinenumber">[line 1752]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getTRUE( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the locale-specific translation of TRUE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>locale-specific translation of TRUE</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetArrayReturnType"></a> + <h3>static method setArrayReturnType <span class="smalllinenumber">[line 1773]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setArrayReturnType( +string +$returnType)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the Array Return Type (Array or Value of first element in the array)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$returnType</b>&nbsp;&nbsp;</td> + <td>Array return type</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_getMatrixDimensions"></a> + <h3>static method _getMatrixDimensions <span class="smalllinenumber">[line 2391]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array _getMatrixDimensions( +mixed +&$matrix)</code> + </td></tr></table> + </td></tr></table><br /> + + Read the dimensions of a matrix, and re-index it with straight numeric keys starting from row 0, column 0<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>An array comprising the number of rows, and number of columns</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>&$matrix</b>&nbsp;&nbsp;</td> + <td>matrix operand</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_localeFunc"></a> + <h3>static method _localeFunc <span class="smalllinenumber">[line 2056]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void _localeFunc( + +$function)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$function</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_translateSeparator"></a> + <h3>static method _translateSeparator <span class="smalllinenumber">[line 1951]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void _translateSeparator( + +$fromSeparator, +$toSeparator, +$formula, +&$inBraces)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$fromSeparator</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$toSeparator</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$formula</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$inBraces</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_unwrapResult"></a> + <h3>static method _unwrapResult <span class="smalllinenumber">[line 2101]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed _unwrapResult( +mixed +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Remove quotes used as a wrapper to identify string values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_wrapResult"></a> + <h3>static method _wrapResult <span class="smalllinenumber">[line 2077]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed _wrapResult( +mixed +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Wrap string values in quotes<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 1700]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcalculate"></a> + <h3>method calculate <span class="smalllinenumber">[line 2125]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed calculate( +[PHPExcel_Cell +$pCell = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate cell value (using formula from a cell ID) Retained for backward compatibility<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$pCell</b>&nbsp;&nbsp;</td> + <td>Cell to calculate</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcalculateCellValue"></a> + <h3>method calculateCellValue <span class="smalllinenumber">[line 2143]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed calculateCellValue( +[PHPExcel_Cell +$pCell = null], [Boolean +$resetLog = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate the value of a cell formula<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$pCell</b>&nbsp;&nbsp;</td> + <td>Cell to calculate</td> + </tr> + <tr> + <td class="type">Boolean&nbsp;&nbsp;</td> + <td><b>$resetLog</b>&nbsp;&nbsp;</td> + <td>Flag indicating whether the debug log should be reset or not</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcalculateFormula"></a> + <h3>method calculateFormula <span class="smalllinenumber">[line 2227]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed calculateFormula( +string +$formula, [ +$cellID = null], [PHPExcel_Cell +$pCell = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate the value of a formula<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$formula</b>&nbsp;&nbsp;</td> + <td>Formula to parse</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$cellID</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$pCell</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodclearCalculationCache"></a> + <h3>method clearCalculationCache <span class="smalllinenumber">[line 1837]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void clearCalculationCache( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear calculation cache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddisableCalculationCache"></a> + <h3>method disableCalculationCache <span class="smalllinenumber">[line 1829]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void disableCalculationCache( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Disable calculation cache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodenableCalculationCache"></a> + <h3>method enableCalculationCache <span class="smalllinenumber">[line 1821]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void enableCalculationCache( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Enable calculation cache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodextractCellRange"></a> + <h3>method extractCellRange <span class="smalllinenumber">[line 3611]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed extractCellRange( +[string +&$pRange = 'A1'], [PHPExcel_Worksheet +$pSheet = null], [ +$resetLog = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Extract range values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Array of values in range if range contains more than one element. Otherwise, a single value is returned.</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>&$pRange</b>&nbsp;&nbsp;</td> + <td>String based range representation</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td>Worksheet</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$resetLog</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodextractNamedRange"></a> + <h3>method extractNamedRange <span class="smalllinenumber">[line 3667]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed extractNamedRange( +[string +&$pRange = 'A1'], [PHPExcel_Worksheet +$pSheet = null], [ +$resetLog = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Extract range values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Array of values in range if range contains more than one element. Otherwise, a single value is returned.</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>&$pRange</b>&nbsp;&nbsp;</td> + <td>String based range representation</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td>Worksheet</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$resetLog</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCalculationCacheEnabled"></a> + <h3>method getCalculationCacheEnabled <span class="smalllinenumber">[line 1801]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getCalculationCacheEnabled( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is calculation caching enabled?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCalculationCacheExpirationTime"></a> + <h3>method getCalculationCacheExpirationTime <span class="smalllinenumber">[line 1847]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getCalculationCacheExpirationTime( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get calculation cache expiration time<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLocale"></a> + <h3>method getLocale <span class="smalllinenumber">[line 1869]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getLocale( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently defined locale code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisImplemented"></a> + <h3>method isImplemented <span class="smalllinenumber">[line 3749]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isImplemented( +[string +$pFunction = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Is a specific function implemented?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFunction</b>&nbsp;&nbsp;</td> + <td>Function Name</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistAllFunctionNames"></a> + <h3>method listAllFunctionNames <span class="smalllinenumber">[line 3787]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array listAllFunctionNames( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a list of all Excel function names<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistFunctionNames"></a> + <h3>method listFunctionNames <span class="smalllinenumber">[line 3796]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array listFunctionNames( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a list of implemented Excel function names<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistFunctions"></a> + <h3>method listFunctions <span class="smalllinenumber">[line 3764]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array listFunctions( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a list of all implemented functions as an array of function objects<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of PHPExcel_Calculation_Function</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodparseFormula"></a> + <h3>method parseFormula <span class="smalllinenumber">[line 2207]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array parseFormula( +string +$formula)</code> + </td></tr></table> + </td></tr></table><br /> + + Validate and parse a formula string<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$formula</b>&nbsp;&nbsp;</td> + <td>Formula to parse</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCalculationCacheEnabled"></a> + <h3>method setCalculationCacheEnabled <span class="smalllinenumber">[line 1812]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setCalculationCacheEnabled( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Enable/disable calculation cache<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCalculationCacheExpirationTime"></a> + <h3>method setCalculationCacheExpirationTime <span class="smalllinenumber">[line 1857]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setCalculationCacheExpirationTime( +[float +$pValue = 15])</code> + </td></tr></table> + </td></tr></table><br /> + + Set calculation cache expiration time<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLocale"></a> + <h3>method setLocale <span class="smalllinenumber">[line 1879]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean setLocale( +[ +$locale = 'en_us'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the locale code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$locale</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_calculateFormulaValue"></a> + <h3>method _calculateFormulaValue <span class="smalllinenumber">[line 2259]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed _calculateFormulaValue( +string +$formula, [string +$cellID = null], [PHPExcel_Cell +$pCell = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Parse a cell formula and calculate its value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$formula</b>&nbsp;&nbsp;</td> + <td>The formula to parse and calculate</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$cellID</b>&nbsp;&nbsp;</td> + <td>The ID (e.g. A3) of the cell that we are calculating</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$pCell</b>&nbsp;&nbsp;</td> + <td>Cell to calculate</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_raiseFormulaError"></a> + <h3>method _raiseFormulaError <span class="smalllinenumber">[line 3595]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _raiseFormulaError( + +$errorMessage)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$errorMessage</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_translateFormulaToEnglish"></a> + <h3>method _translateFormulaToEnglish <span class="smalllinenumber">[line 2031]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _translateFormulaToEnglish( + +$formula)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$formula</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_translateFormulaToLocale"></a> + <h3>method _translateFormulaToLocale <span class="smalllinenumber">[line 2002]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _translateFormulaToLocale( + +$formula)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$formula</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 1741]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + __clone implementation. Cloning should not be allowed in a Singleton!<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constCALCULATION_REGEXP_CELLREF"></a> + <p></p> + <h4>CALCULATION_REGEXP_CELLREF = <span class="value">&nbsp;CALCULATION_REGEXP_CELLREF</span></h4> + <p>[line 75]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCALCULATION_REGEXP_ERROR"></a> + <p></p> + <h4>CALCULATION_REGEXP_ERROR = <span class="value">&nbsp;'\#[A-Z][A-Z0_\/]*[!\?]?'</span></h4> + <p>[line 79]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCALCULATION_REGEXP_FUNCTION"></a> + <p></p> + <h4>CALCULATION_REGEXP_FUNCTION = <span class="value">&nbsp;'@?([A-Z][A-Z0-9\.]*)[\s]*\('</span></h4> + <p>[line 73]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCALCULATION_REGEXP_NAMEDRANGE"></a> + <p></p> + <h4>CALCULATION_REGEXP_NAMEDRANGE = <span class="value">&nbsp;CALCULATION_REGEXP_NAMEDRANGE</span></h4> + <p>[line 77]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCALCULATION_REGEXP_NUMBER"></a> + <p></p> + <h4>CALCULATION_REGEXP_NUMBER = <span class="value">&nbsp;'[-+]?\d*\.?\d+(e[-+]?\d+)?'</span></h4> + <p>[line 67]</p> + Regular Expressions<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCALCULATION_REGEXP_OPENBRACE"></a> + <p></p> + <h4>CALCULATION_REGEXP_OPENBRACE = <span class="value">&nbsp;'\('</span></h4> + <p>[line 71]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCALCULATION_REGEXP_STRING"></a> + <p></p> + <h4>CALCULATION_REGEXP_STRING = <span class="value">&nbsp;'&quot;(?:[^&quot;]|&quot;&quot;)*&quot;'</span></h4> + <p>[line 69]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constRETURN_ARRAY_AS_ARRAY"></a> + <p></p> + <h4>RETURN_ARRAY_AS_ARRAY = <span class="value">&nbsp;'array'</span></h4> + <p>[line 85]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constRETURN_ARRAY_AS_ERROR"></a> + <p></p> + <h4>RETURN_ARRAY_AS_ERROR = <span class="value">&nbsp;'error'</span></h4> + <p>[line 83]</p> + constants<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constRETURN_ARRAY_AS_VALUE"></a> + <p></p> + <h4>RETURN_ARRAY_AS_VALUE = <span class="value">&nbsp;'value'</span></h4> + <p>[line 84]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:20 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Database.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Database.html new file mode 100644 index 0000000..15040f1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Database.html @@ -0,0 +1,797 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_Database</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_Database</h1> +Source Location: /PHPExcel/Calculation/Database.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_Database</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDAVERAGE">DAVERAGE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDCOUNT">DCOUNT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDCOUNTA">DCOUNTA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDGET">DGET</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDMAX">DMAX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDMIN">DMIN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDPRODUCT">DPRODUCT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDSTDEV">DSTDEV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDSTDEVP">DSTDEVP</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDSUM">DSUM</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDVAR">DVAR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDVARP">DVARP</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 46]<br /> +PHPExcel_Calculation_Database<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodDAVERAGE"></a> + <h3>static method DAVERAGE <span class="smalllinenumber">[line 180]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DAVERAGE( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DAVERAGE<br /><br /><p>Averages the values in a column of a list or database that match conditions you specify.</p><p>Excel Function: DAVERAGE(database,field,criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDCOUNT"></a> + <h3>static method DCOUNT <span class="smalllinenumber">[line 232]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer DCOUNT( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DCOUNT<br /><br /><p>Counts the cells that contain numbers in a column of a list or database that match conditions that you specify.</p><p>Excel Function: DCOUNT(database,[field],criteria)</p><p>Excel Function: DAVERAGE(database,field,criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>TODO:</b>&nbsp;&nbsp;</td><td>The field argument is optional. If field is omitted, DCOUNT counts all records in the database that match the criteria.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDCOUNTA"></a> + <h3>static method DCOUNTA <span class="smalllinenumber">[line 281]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer DCOUNTA( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DCOUNTA<br /><br /><p>Counts the nonblank cells in a column of a list or database that match conditions that you specify.</p><p>Excel Function: DCOUNTA(database,[field],criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>TODO:</b>&nbsp;&nbsp;</td><td>The field argument is optional. If field is omitted, DCOUNTA counts all records in the database that match the criteria.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDGET"></a> + <h3>static method DGET <span class="smalllinenumber">[line 328]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed DGET( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DGET<br /><br /><p>Extracts a single value from a column of a list or database that matches conditions that you specify.</p><p>Excel Function: DGET(database,field,criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDMAX"></a> + <h3>static method DMAX <span class="smalllinenumber">[line 379]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DMAX( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DMAX<br /><br /><p>Returns the largest number in a column of a list or database that matches conditions you that specify.</p><p>Excel Function: DMAX(database,field,criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDMIN"></a> + <h3>static method DMIN <span class="smalllinenumber">[line 426]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DMIN( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DMIN<br /><br /><p>Returns the smallest number in a column of a list or database that matches conditions you that specify.</p><p>Excel Function: DMIN(database,field,criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDPRODUCT"></a> + <h3>static method DPRODUCT <span class="smalllinenumber">[line 472]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DPRODUCT( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DPRODUCT<br /><br /><p>Multiplies the values in a column of a list or database that match conditions that you specify.</p><p>Excel Function: DPRODUCT(database,field,criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDSTDEV"></a> + <h3>static method DSTDEV <span class="smalllinenumber">[line 519]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DSTDEV( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DSTDEV<br /><br /><p>Estimates the standard deviation of a population based on a sample by using the numbers in a column of a list or database that match conditions that you specify.</p><p>Excel Function: DSTDEV(database,field,criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDSTDEVP"></a> + <h3>static method DSTDEVP <span class="smalllinenumber">[line 566]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DSTDEVP( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DSTDEVP<br /><br /><p>Calculates the standard deviation of a population based on the entire population by using the numbers in a column of a list or database that match conditions that you specify.</p><p>Excel Function: DSTDEVP(database,field,criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDSUM"></a> + <h3>static method DSUM <span class="smalllinenumber">[line 612]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DSUM( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DSUM<br /><br /><p>Adds the numbers in a column of a list or database that match conditions that you specify.</p><p>Excel Function: DSUM(database,field,criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDVAR"></a> + <h3>static method DVAR <span class="smalllinenumber">[line 659]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DVAR( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DVAR<br /><br /><p>Estimates the variance of a population based on a sample by using the numbers in a column of a list or database that match conditions that you specify.</p><p>Excel Function: DVAR(database,field,criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDVARP"></a> + <h3>static method DVARP <span class="smalllinenumber">[line 706]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DVARP( +mixed[] +$database, string|integer +$field, mixed[] +$criteria)</code> + </td></tr></table> + </td></tr></table><br /> + + DVARP<br /><br /><p>Calculates the variance of a population based on the entire population by using the numbers in a column of a list or database that match conditions that you specify.</p><p>Excel Function: DVARP(database,field,criteria)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$database</b>&nbsp;&nbsp;</td> + <td>The range of cells that makes up the list or database. A database is a list of related data in which rows of related information are records, and columns of data are fields. The first row of the list contains labels for each column.</td> + </tr> + <tr> + <td class="type">string|integer&nbsp;&nbsp;</td> + <td><b>$field</b>&nbsp;&nbsp;</td> + <td>Indicates which column is used in the function. Enter the column label enclosed between double quotation marks, such as &quot;Age&quot; or &quot;Yield,&quot; or a number (without quotation marks) that represents the position of the column within the list: 1 for the first column, 2 for the second column, and so on.</td> + </tr> + <tr> + <td class="type">mixed[]&nbsp;&nbsp;</td> + <td><b>$criteria</b>&nbsp;&nbsp;</td> + <td>The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:38 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html new file mode 100644 index 0000000..32655e6 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html @@ -0,0 +1,1209 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_DateTime</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_DateTime</h1> +Source Location: /PHPExcel/Calculation/DateTime.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_DateTime</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATE">DATE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATEDIF">DATEDIF</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATENOW">DATENOW</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATETIMENOW">DATETIMENOW</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATEVALUE">DATEVALUE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDAYOFMONTH">DAYOFMONTH</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDAYOFWEEK">DAYOFWEEK</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDAYS360">DAYS360</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodEDATE">EDATE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodEOMONTH">EOMONTH</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodHOUROFDAY">HOUROFDAY</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodMINUTEOFHOUR">MINUTEOFHOUR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodMONTHOFYEAR">MONTHOFYEAR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodNETWORKDAYS">NETWORKDAYS</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodSECONDOFMINUTE">SECONDOFMINUTE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodTIME">TIME</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodTIMEVALUE">TIMEVALUE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodWEEKOFYEAR">WEEKOFYEAR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodWORKDAY">WORKDAY</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodYEAR">YEAR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodYEARFRAC">YEARFRAC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#method_getDateValue">_getDateValue</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#method_isLeapYear">_isLeapYear</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 46]<br /> +PHPExcel_Calculation_DateTime<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodDATE"></a> + <h3>static method DATE <span class="smalllinenumber">[line 276]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed DATE( +[integer +$year = 0], [integer +$month = 1], [integer +$day = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + DATE<br /><br /><p>The DATE function returns a value that represents a particular date.</p><p>NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date format of your regional settings. PHPExcel does not change cell formatting in this way.</p><p>Excel Function: DATE(year,month,day)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, PHP date/time serial value or PHP date/time object, depending on the value of the ReturnDateType flag</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$year</b>&nbsp;&nbsp;</td> + <td>The value of the year argument can include one to four digits. Excel interprets the year argument according to the configured date system: 1900 or 1904. If year is between 0 (zero) and 1899 (inclusive), Excel adds that value to 1900 to calculate the year. For example, DATE(108,1,2) returns January 2, 2008 (1900+108). If year is between 1900 and 9999 (inclusive), Excel uses that value as the year. For example, DATE(2008,1,2) returns January 2, 2008. If year is less than 0 or is 10000 or greater, Excel returns the #NUM! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$month</b>&nbsp;&nbsp;</td> + <td>A positive or negative integer representing the month of the year from 1 to 12 (January to December). If month is greater than 12, month adds that number of months to the first month in the year specified. For example, DATE(2008,14,2) returns the serial number representing February 2, 2009. If month is less than 1, month subtracts the magnitude of that number of months, plus 1, from the first month in the year specified. For example, DATE(2008,-3,2) returns the serial number representing September 2, 2007.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$day</b>&nbsp;&nbsp;</td> + <td>A positive or negative integer representing the day of the month from 1 to 31. If day is greater than the number of days in the month specified, day adds that number of days to the first day in the month. For example, DATE(2008,1,35) returns the serial number representing February 4, 2008. If day is less than 1, day subtracts the magnitude that number of days, plus one, from the first day of the month specified. For example, DATE(2008,1,-15) returns the serial number representing December 16, 2007.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDATEDIF"></a> + <h3>static method DATEDIF <span class="smalllinenumber">[line 594]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer DATEDIF( +[mixed +$startDate = 0], [mixed +$endDate = 0], [string +$unit = 'D'])</code> + </td></tr></table> + </td></tr></table><br /> + + DATEDIF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Interval between the dates</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$startDate</b>&nbsp;&nbsp;</td> + <td>Excel date serial value, PHP date/time stamp, PHP DateTime object or a standard date string</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$endDate</b>&nbsp;&nbsp;</td> + <td>Excel date serial value, PHP date/time stamp, PHP DateTime object or a standard date string</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$unit</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDATENOW"></a> + <h3>static method DATENOW <span class="smalllinenumber">[line 208]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed DATENOW( +)</code> + </td></tr></table> + </td></tr></table><br /> + + DATENOW<br /><br /><p>Returns the current date. The NOW function is useful when you need to display the current date and time on a worksheet or calculate a value based on the current date and time, and have that value updated each time you open the worksheet.</p><p>NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date and time format of your regional settings. PHPExcel does not change cell formatting in this way.</p><p>Excel Function: TODAY()</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, PHP date/time serial value or PHP date/time object, depending on the value of the ReturnDateType flag</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDATETIMENOW"></a> + <h3>static method DATETIMENOW <span class="smalllinenumber">[line 168]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed DATETIMENOW( +)</code> + </td></tr></table> + </td></tr></table><br /> + + DATETIMENOW<br /><br /><p>Returns the current date and time. The NOW function is useful when you need to display the current date and time on a worksheet or calculate a value based on the current date and time, and have that value updated each time you open the worksheet.</p><p>NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date and time format of your regional settings. PHPExcel does not change cell formatting in this way.</p><p>Excel Function: NOW()</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, PHP date/time serial value or PHP date/time object, depending on the value of the ReturnDateType flag</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDATEVALUE"></a> + <h3>static method DATEVALUE <span class="smalllinenumber">[line 457]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed DATEVALUE( +[string +$dateValue = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + DATEVALUE<br /><br /><p>Returns a value that represents a particular date. Use DATEVALUE to convert a date represented by a text string to an Excel or PHP date/time stamp value.</p><p>NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the date format of your regional settings. PHPExcel does not change cell formatting in this way.</p><p>Excel Function: DATEVALUE(dateValue)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, PHP date/time serial value or PHP date/time object, depending on the value of the ReturnDateType flag</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>Text that represents a date in a Microsoft Excel date format. For example, &quot;1/30/2008&quot; or &quot;30-Jan-2008&quot; are text strings within quotation marks that represent dates. Using the default date system in Excel for Windows, date_text must represent a date from January 1, 1900, to December 31, 9999. Using the default date system in Excel for the Macintosh, date_text must represent a date from January 1, 1904, to December 31, 9999. DATEVALUE returns the #VALUE! error value if date_text is out of this range.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDAYOFMONTH"></a> + <h3>static method DAYOFMONTH <span class="smalllinenumber">[line 1043]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int DAYOFMONTH( +[mixed +$dateValue = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + DAYOFMONTH<br /><br /><p>Returns the day of the month, for a specified date. The day is given as an integer ranging from 1 to 31.</p><p>Excel Function: DAY(dateValue)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Day of the month</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDAYOFWEEK"></a> + <h3>static method DAYOFWEEK <span class="smalllinenumber">[line 1078]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int DAYOFWEEK( +[mixed +$dateValue = 1], [int +$style = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + DAYOFWEEK<br /><br /><p>Returns the day of the week for a specified date. The day is given as an integer ranging from 0 to 7 (dependent on the requested style).</p><p>Excel Function: WEEKDAY(dateValue[,style])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Day of the week value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$style</b>&nbsp;&nbsp;</td> + <td>A number that determines the type of return value <ol><li>or omitted Numbers 1 (Sunday) through 7 (Saturday).</li><li>Numbers 1 (Monday) through 7 (Sunday).</li><li>Numbers 0 (Monday) through 6 (Sunday).</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDAYS360"></a> + <h3>static method DAYS360 <span class="smalllinenumber">[line 712]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer DAYS360( +[mixed +$startDate = 0], [mixed +$endDate = 0], [boolean +$method = false])</code> + </td></tr></table> + </td></tr></table><br /> + + DAYS360<br /><br /><p>Returns the number of days between two dates based on a 360-day year (twelve 30-day months), which is used in some accounting calculations. Use this function to help compute payments if your accounting system is based on twelve 30-day months.</p><p>Excel Function: DAYS360(startDate,endDate[,method])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Number of days between start date and end date</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$startDate</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$endDate</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$method</b>&nbsp;&nbsp;</td> + <td>US or European Method FALSE or omitted: U.S. (NASD) method. If the starting date is the last day of a month, it becomes equal to the 30th of the same month. If the ending date is the last day of a month and the starting date is earlier than the 30th of a month, the ending date becomes equal to the 1st of the next month; otherwise the ending date becomes equal to the 30th of the same month. TRUE: European method. Starting dates and ending dates that occur on the 31st of a month become equal to the 30th of the same month.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodEDATE"></a> + <h3>static method EDATE <span class="smalllinenumber">[line 1372]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed EDATE( +[mixed +$dateValue = 1], [int +$adjustmentMonths = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + EDATE<br /><br /><p>Returns the serial number that represents the date that is the indicated number of months before or after a specified date (the start_date). Use EDATE to calculate maturity dates or due dates that fall on the same day of the month as the date of issue.</p><p>Excel Function: EDATE(dateValue,adjustmentMonths)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, PHP date/time serial value or PHP date/time object, depending on the value of the ReturnDateType flag</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$adjustmentMonths</b>&nbsp;&nbsp;</td> + <td>The number of months before or after start_date. A positive value for months yields a future date; a negative value yields a past date.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodEOMONTH"></a> + <h3>static method EOMONTH <span class="smalllinenumber">[line 1417]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed EOMONTH( +[mixed +$dateValue = 1], [int +$adjustmentMonths = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + EOMONTH<br /><br /><p>Returns the date value for the last day of the month that is the indicated number of months before or after start_date. Use EOMONTH to calculate maturity dates or due dates that fall on the last day of the month.</p><p>Excel Function: EOMONTH(dateValue,adjustmentMonths)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, PHP date/time serial value or PHP date/time object, depending on the value of the ReturnDateType flag</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$adjustmentMonths</b>&nbsp;&nbsp;</td> + <td>The number of months before or after start_date. A positive value for months yields a future date; a negative value yields a past date.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodHOUROFDAY"></a> + <h3>static method HOUROFDAY <span class="smalllinenumber">[line 1246]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int HOUROFDAY( +[mixed +$timeValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + HOUROFDAY<br /><br /><p>Returns the hour of a time value. The hour is given as an integer, ranging from 0 (12:00 A.M.) to 23 (11:00 P.M.).</p><p>Excel Function: HOUR(timeValue)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hour</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$timeValue</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard time string</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMINUTEOFHOUR"></a> + <h3>static method MINUTEOFHOUR <span class="smalllinenumber">[line 1286]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int MINUTEOFHOUR( +[mixed +$timeValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + MINUTEOFHOUR<br /><br /><p>Returns the minutes of a time value. The minute is given as an integer, ranging from 0 to 59.</p><p>Excel Function: MINUTE(timeValue)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Minute</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$timeValue</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard time string</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMONTHOFYEAR"></a> + <h3>static method MONTHOFYEAR <span class="smalllinenumber">[line 1188]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int MONTHOFYEAR( +[mixed +$dateValue = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + MONTHOFYEAR<br /><br /><p>Returns the month of a date represented by a serial number. The month is given as an integer, ranging from 1 (January) to 12 (December).</p><p>Excel Function: MONTH(dateValue)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Month of the year</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNETWORKDAYS"></a> + <h3>static method NETWORKDAYS <span class="smalllinenumber">[line 858]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer NETWORKDAYS( +mixed +$startDate, mixed +$endDate, mixed +$holidays,...)</code> + </td></tr></table> + </td></tr></table><br /> + + NETWORKDAYS<br /><br /><p>Returns the number of whole working days between start_date and end_date. Working days exclude weekends and any dates identified in holidays. Use NETWORKDAYS to calculate employee benefits that accrue based on the number of days worked during a specific term.</p><p>Excel Function: NETWORKDAYS(startDate,endDate[,holidays[,holiday[,...]]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Interval between the dates</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$startDate</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$endDate</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$holidays,...</b>&nbsp;&nbsp;</td> + <td>Optional series of Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date strings that will be excluded from the working calendar, such as state and federal holidays and floating holidays.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSECONDOFMINUTE"></a> + <h3>static method SECONDOFMINUTE <span class="smalllinenumber">[line 1326]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int SECONDOFMINUTE( +[mixed +$timeValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + SECONDOFMINUTE<br /><br /><p>Returns the seconds of a time value. The second is given as an integer in the range 0 (zero) to 59.</p><p>Excel Function: SECOND(timeValue)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Second</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$timeValue</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard time string</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTIME"></a> + <h3>static method TIME <span class="smalllinenumber">[line 362]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed TIME( +[integer +$hour = 0], [integer +$minute = 0], [integer +$second = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + TIME<br /><br /><p>The TIME function returns a value that represents a particular time.</p><p>NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the time format of your regional settings. PHPExcel does not change cell formatting in this way.</p><p>Excel Function: TIME(hour,minute,second)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, PHP date/time serial value or PHP date/time object, depending on the value of the ReturnDateType flag</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$hour</b>&nbsp;&nbsp;</td> + <td>A number from 0 (zero) to 32767 representing the hour. Any value greater than 23 will be divided by 24 and the remainder will be treated as the hour value. For example, TIME(27,0,0) = TIME(3,0,0) = .125 or 3:00 AM.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$minute</b>&nbsp;&nbsp;</td> + <td>A number from 0 to 32767 representing the minute. Any value greater than 59 will be converted to hours and minutes. For example, TIME(0,750,0) = TIME(12,30,0) = .520833 or 12:30 PM.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$second</b>&nbsp;&nbsp;</td> + <td>A number from 0 to 32767 representing the second. Any value greater than 59 will be converted to hours, minutes, and seconds. For example, TIME(0,0,2000) = TIME(0,33,22) = .023148 or 12:33:20 AM</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTIMEVALUE"></a> + <h3>static method TIMEVALUE <span class="smalllinenumber">[line 559]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed TIMEVALUE( +string +$timeValue)</code> + </td></tr></table> + </td></tr></table><br /> + + TIMEVALUE<br /><br /><p>Returns a value that represents a particular time. Use TIMEVALUE to convert a time represented by a text string to an Excel or PHP date/time stamp value.</p><p>NOTE: When used in a Cell Formula, MS Excel changes the cell format so that it matches the time format of your regional settings. PHPExcel does not change cell formatting in this way.</p><p>Excel Function: TIMEVALUE(timeValue)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, PHP date/time serial value or PHP date/time object, depending on the value of the ReturnDateType flag</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$timeValue</b>&nbsp;&nbsp;</td> + <td>A text string that represents a time in any one of the Microsoft Excel time formats; for example, &quot;6:45 PM&quot; and &quot;18:45&quot; text strings within quotation marks that represent time. Date information in time_text is ignored.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodWEEKOFYEAR"></a> + <h3>static method WEEKOFYEAR <span class="smalllinenumber">[line 1144]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int WEEKOFYEAR( +[mixed +$dateValue = 1], [boolean +$method = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + WEEKOFYEAR<br /><br /><p>Returns the week of the year for a specified date. The WEEKNUM function considers the week containing January 1 to be the first week of the year. However, there is a European standard that defines the first week as the one with the majority of days (four or more) falling in the new year. This means that for years in which there are three days or less in the first week of January, the WEEKNUM function returns week numbers that are incorrect according to the European standard.</p><p>Excel Function: WEEKNUM(dateValue[,style])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Week Number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$method</b>&nbsp;&nbsp;</td> + <td>Week begins on Sunday or Monday <ol><li>or omitted Week begins on Sunday.</li><li>Week begins on Monday.</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodWORKDAY"></a> + <h3>static method WORKDAY <span class="smalllinenumber">[line 940]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed WORKDAY( +mixed +$startDate, integer +$endDays, mixed +$holidays,...)</code> + </td></tr></table> + </td></tr></table><br /> + + WORKDAY<br /><br /><p>Returns the date that is the indicated number of working days before or after a date (the starting date). Working days exclude weekends and any dates identified as holidays. Use WORKDAY to exclude weekends or holidays when you calculate invoice due dates, expected delivery times, or the number of days of work performed.</p><p>Excel Function: WORKDAY(startDate,endDays[,holidays[,holiday[,...]]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, PHP date/time serial value or PHP date/time object, depending on the value of the ReturnDateType flag</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$startDate</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$endDays</b>&nbsp;&nbsp;</td> + <td>The number of nonweekend and nonholiday days before or after startDate. A positive value for days yields a future date; a negative value yields a past date.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$holidays,...</b>&nbsp;&nbsp;</td> + <td>Optional series of Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date strings that will be excluded from the working calendar, such as state and federal holidays and floating holidays.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodYEAR"></a> + <h3>static method YEAR <span class="smalllinenumber">[line 1217]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int YEAR( +[mixed +$dateValue = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + YEAR<br /><br /><p>Returns the year corresponding to a date. The year is returned as an integer in the range 1900-9999.</p><p>Excel Function: YEAR(dateValue)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Year</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodYEARFRAC"></a> + <h3>static method YEARFRAC <span class="smalllinenumber">[line 763]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float YEARFRAC( +[mixed +$startDate = 0], [mixed +$endDate = 0], [integer +$method = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + YEARFRAC<br /><br /><p>Calculates the fraction of the year represented by the number of whole days between two dates (the start_date and the end_date). Use the YEARFRAC worksheet function to identify the proportion of a whole year's benefits or obligations to assign to a specific term.</p><p>Excel Function: YEARFRAC(startDate,endDate[,method])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>fraction of the year</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$startDate</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$endDate</b>&nbsp;&nbsp;</td> + <td>Excel date serial value (float), PHP date timestamp (integer), PHP DateTime object, or a standard date string</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$method</b>&nbsp;&nbsp;</td> + <td>Method used for the calculation <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_getDateValue"></a> + <h3>static method _getDateValue <span class="smalllinenumber">[line 89]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed _getDateValue( +string +$dateValue)</code> + </td></tr></table> + </td></tr></table><br /> + + _getDateValue<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, or string if error</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_isLeapYear"></a> + <h3>static method _isLeapYear <span class="smalllinenumber">[line 54]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean _isLeapYear( +integer +$year)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify if a year is a leap year or not<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>TRUE if the year is a leap year, otherwise FALSE</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$year</b>&nbsp;&nbsp;</td> + <td>The year to test</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:42 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html new file mode 100644 index 0000000..d45ece1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html @@ -0,0 +1,1990 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_Engineering</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_Engineering</h1> +Source Location: /PHPExcel/Calculation/Engineering.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_Engineering</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELI">BESSELI</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELJ">BESSELJ</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELK">BESSELK</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELY">BESSELY</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBINTODEC">BINTODEC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBINTOHEX">BINTOHEX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBINTOOCT">BINTOOCT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodCOMPLEX">COMPLEX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodCONVERTUOM">CONVERTUOM</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDECTOBIN">DECTOBIN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDECTOHEX">DECTOHEX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDECTOOCT">DECTOOCT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDELTA">DELTA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodERF">ERF</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodERFC">ERFC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodGESTEP">GESTEP</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionGroups">getConversionGroups</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionGroupUnitDetails">getConversionGroupUnitDetails</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionGroupUnits">getConversionGroupUnits</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionMultipliers">getConversionMultipliers</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodHEXTOBIN">HEXTOBIN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodHEXTODEC">HEXTODEC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodHEXTOOCT">HEXTOOCT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMABS">IMABS</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMAGINARY">IMAGINARY</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMARGUMENT">IMARGUMENT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMCONJUGATE">IMCONJUGATE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMCOS">IMCOS</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMDIV">IMDIV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMEXP">IMEXP</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMLN">IMLN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMLOG2">IMLOG2</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMLOG10">IMLOG10</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMPOWER">IMPOWER</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMPRODUCT">IMPRODUCT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMREAL">IMREAL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSIN">IMSIN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSQRT">IMSQRT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSUB">IMSUB</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSUM">IMSUM</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodOCTTOBIN">OCTTOBIN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodOCTTODEC">OCTTODEC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodOCTTOHEX">OCTTOHEX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#method_erfVal">_erfVal</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#method_parseComplex">_parseComplex</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 50]<br /> +PHPExcel_Calculation_Engineering<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodBESSELI"></a> + <h3>static method BESSELI <span class="smalllinenumber">[line 793]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float BESSELI( +float +$x, integer +$ord)</code> + </td></tr></table> + </td></tr></table><br /> + + BESSELI<br /><br /><p>Returns the modified Bessel function In(x), which is equivalent to the Bessel function evaluated for purely imaginary arguments</p><p>Excel Function: BESSELI(x,ord)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The value at which to evaluate the function. If x is nonnumeric, BESSELI returns the #VALUE! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$ord</b>&nbsp;&nbsp;</td> + <td>The order of the Bessel function. If ord is not an integer, it is truncated. If $ord is nonnumeric, BESSELI returns the #VALUE! error value. If $ord &lt; 0, BESSELI returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodBESSELJ"></a> + <h3>static method BESSELJ <span class="smalllinenumber">[line 845]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float BESSELJ( +float +$x, integer +$ord)</code> + </td></tr></table> + </td></tr></table><br /> + + BESSELJ<br /><br /><p>Returns the Bessel function</p><p>Excel Function: BESSELJ(x,ord)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The value at which to evaluate the function. If x is nonnumeric, BESSELJ returns the #VALUE! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$ord</b>&nbsp;&nbsp;</td> + <td>The order of the Bessel function. If n is not an integer, it is truncated. If $ord is nonnumeric, BESSELJ returns the #VALUE! error value. If $ord &lt; 0, BESSELJ returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodBESSELK"></a> + <h3>static method BESSELK <span class="smalllinenumber">[line 934]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float BESSELK( +float +$x, integer +$ord)</code> + </td></tr></table> + </td></tr></table><br /> + + BESSELK<br /><br /><p>Returns the modified Bessel function Kn(x), which is equivalent to the Bessel functions evaluated for purely imaginary arguments.</p><p>Excel Function: BESSELK(x,ord)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The value at which to evaluate the function. If x is nonnumeric, BESSELK returns the #VALUE! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$ord</b>&nbsp;&nbsp;</td> + <td>The order of the Bessel function. If n is not an integer, it is truncated. If $ord is nonnumeric, BESSELK returns the #VALUE! error value. If $ord &lt; 0, BESSELK returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodBESSELY"></a> + <h3>static method BESSELY <span class="smalllinenumber">[line 1014]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float BESSELY( +float +$x, integer +$ord)</code> + </td></tr></table> + </td></tr></table><br /> + + BESSELY<br /><br /><p>Returns the Bessel function, which is also called the Weber function or the Neumann function.</p><p>Excel Function: BESSELY(x,ord)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The value at which to evaluate the function. If x is nonnumeric, BESSELK returns the #VALUE! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$ord</b>&nbsp;&nbsp;</td> + <td>The order of the Bessel function. If n is not an integer, it is truncated. If $ord is nonnumeric, BESSELK returns the #VALUE! error value. If $ord &lt; 0, BESSELK returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodBINTODEC"></a> + <h3>static method BINTODEC <span class="smalllinenumber">[line 1061]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string BINTODEC( +string +$x)</code> + </td></tr></table> + </td></tr></table><br /> + + BINTODEC<br /><br /><p>Return a binary value as decimal.</p><p>Excel Function: BIN2DEC(x)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The binary number (as a string) that you want to convert. The number cannot contain more than 10 characters (10 bits). The most significant bit of number is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is not a valid binary number, or if number contains more than 10 characters (10 bits), BIN2DEC returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodBINTOHEX"></a> + <h3>static method BINTOHEX <span class="smalllinenumber">[line 1113]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string BINTOHEX( +string +$x, [integer +$places = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + BINTOHEX<br /><br /><p>Return a binary value as hex.</p><p>Excel Function: BIN2HEX(x[,places])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The binary number (as a string) that you want to convert. The number cannot contain more than 10 characters (10 bits). The most significant bit of number is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is not a valid binary number, or if number contains more than 10 characters (10 bits), BIN2HEX returns the #NUM! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$places</b>&nbsp;&nbsp;</td> + <td>The number of characters to use. If places is omitted, BIN2HEX uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, BIN2HEX returns the #VALUE! error value. If places is negative, BIN2HEX returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodBINTOOCT"></a> + <h3>static method BINTOOCT <span class="smalllinenumber">[line 1167]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string BINTOOCT( +string +$x, [integer +$places = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + BINTOOCT<br /><br /><p>Return a binary value as octal.</p><p>Excel Function: BIN2OCT(x[,places])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The binary number (as a string) that you want to convert. The number cannot contain more than 10 characters (10 bits). The most significant bit of number is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is not a valid binary number, or if number contains more than 10 characters (10 bits), BIN2OCT returns the #NUM! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$places</b>&nbsp;&nbsp;</td> + <td>The number of characters to use. If places is omitted, BIN2OCT uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, BIN2OCT returns the #VALUE! error value. If places is negative, BIN2OCT returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOMPLEX"></a> + <h3>static method COMPLEX <span class="smalllinenumber">[line 1637]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string COMPLEX( +[float +$realNumber = 0.0], [float +$imaginary = 0.0], [string +$suffix = 'i'])</code> + </td></tr></table> + </td></tr></table><br /> + + COMPLEX<br /><br /><p>Converts real and imaginary coefficients into a complex number of the form x + yi or x + yj.</p><p>Excel Function: COMPLEX(realNumber,imaginary[,places])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$realNumber</b>&nbsp;&nbsp;</td> + <td>The real coefficient of the complex number.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$imaginary</b>&nbsp;&nbsp;</td> + <td>The imaginary coefficient of the complex number.</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$suffix</b>&nbsp;&nbsp;</td> + <td>The suffix for the imaginary component of the complex number. If omitted, the suffix is assumed to be &quot;i&quot;.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCONVERTUOM"></a> + <h3>static method CONVERTUOM <span class="smalllinenumber">[line 2418]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float CONVERTUOM( +float +$value, string +$fromUOM, string +$toUOM)</code> + </td></tr></table> + </td></tr></table><br /> + + CONVERTUOM<br /><br /><p>Converts a number from one measurement system to another. For example, CONVERT can translate a table of distances in miles to a table of distances in kilometers.</p><p>Excel Function: CONVERT(value,fromUOM,toUOM)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>The value in fromUOM to convert.</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$fromUOM</b>&nbsp;&nbsp;</td> + <td>The units for value.</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$toUOM</b>&nbsp;&nbsp;</td> + <td>The units for the result.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDECTOBIN"></a> + <h3>static method DECTOBIN <span class="smalllinenumber">[line 1225]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string DECTOBIN( +string +$x, [integer +$places = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + DECTOBIN<br /><br /><p>Return a decimal value as binary.</p><p>Excel Function: DEC2BIN(x[,places])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The decimal integer you want to convert. If number is negative, valid place values are ignored and DEC2BIN returns a 10-character (10-bit) binary number in which the most significant bit is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number &lt; -512 or if number &gt; 511, DEC2BIN returns the #NUM! error value. If number is nonnumeric, DEC2BIN returns the #VALUE! error value. If DEC2BIN requires more than places characters, it returns the #NUM! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$places</b>&nbsp;&nbsp;</td> + <td>The number of characters to use. If places is omitted, DEC2BIN uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, DEC2BIN returns the #VALUE! error value. If places is zero or negative, DEC2BIN returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDECTOHEX"></a> + <h3>static method DECTOHEX <span class="smalllinenumber">[line 1281]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string DECTOHEX( +string +$x, [integer +$places = null])</code> + </td></tr></table> + </td></tr></table><br /> + + DECTOHEX<br /><br /><p>Return a decimal value as hex.</p><p>Excel Function: DEC2HEX(x[,places])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The decimal integer you want to convert. If number is negative, places is ignored and DEC2HEX returns a 10-character (40-bit) hexadecimal number in which the most significant bit is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number &lt; -549,755,813,888 or if number &gt; 549,755,813,887, DEC2HEX returns the #NUM! error value. If number is nonnumeric, DEC2HEX returns the #VALUE! error value. If DEC2HEX requires more than places characters, it returns the #NUM! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$places</b>&nbsp;&nbsp;</td> + <td>The number of characters to use. If places is omitted, DEC2HEX uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, DEC2HEX returns the #VALUE! error value. If places is zero or negative, DEC2HEX returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDECTOOCT"></a> + <h3>static method DECTOOCT <span class="smalllinenumber">[line 1335]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string DECTOOCT( +string +$x, [integer +$places = null])</code> + </td></tr></table> + </td></tr></table><br /> + + DECTOOCT<br /><br /><p>Return an decimal value as octal.</p><p>Excel Function: DEC2OCT(x[,places])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The decimal integer you want to convert. If number is negative, places is ignored and DEC2OCT returns a 10-character (30-bit) octal number in which the most significant bit is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number &lt; -536,870,912 or if number &gt; 536,870,911, DEC2OCT returns the #NUM! error value. If number is nonnumeric, DEC2OCT returns the #VALUE! error value. If DEC2OCT requires more than places characters, it returns the #NUM! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$places</b>&nbsp;&nbsp;</td> + <td>The number of characters to use. If places is omitted, DEC2OCT uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, DEC2OCT returns the #VALUE! error value. If places is zero or negative, DEC2OCT returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDELTA"></a> + <h3>static method DELTA <span class="smalllinenumber">[line 2189]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int DELTA( +float +$a, [float +$b = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + DELTA<br /><br /><p>Tests whether two values are equal. Returns 1 if number1 = number2; returns 0 otherwise. Use this function to filter a set of values. For example, by summing several DELTA functions you calculate the count of equal pairs. This function is also known as the Kronecker Delta function.</p><p>Excel Function: DELTA(a[,b])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$a</b>&nbsp;&nbsp;</td> + <td>The first number.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$b</b>&nbsp;&nbsp;</td> + <td>The second number. If omitted, b is assumed to be zero.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodERF"></a> + <h3>static method ERF <span class="smalllinenumber">[line 2265]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float ERF( +float +$lower, [float +$upper = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + ERF<br /><br /><p>Returns the error function integrated between the lower and upper bound arguments.</p><p>Note: In Excel 2007 or earlier, if you input a negative value for the upper or lower bound arguments, the function would return a #NUM! error. However, in Excel 2010, the function algorithm was improved, so that it can now calculate the function for both positive and negative ranges. PHPExcel follows Excel 2010 behaviour, and accepts nagative arguments.</p><p>Excel Function: ERF(lower[,upper])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$lower</b>&nbsp;&nbsp;</td> + <td>lower bound for integrating ERF</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$upper</b>&nbsp;&nbsp;</td> + <td>upper bound for integrating ERF. If omitted, ERF integrates between zero and lower_limit</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodERFC"></a> + <h3>static method ERFC <span class="smalllinenumber">[line 2329]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float ERFC( +float +$x)</code> + </td></tr></table> + </td></tr></table><br /> + + ERFC<br /><br /><p>Returns the complementary ERF function integrated between x and infinity</p><p>Note: In Excel 2007 or earlier, if you input a negative value for the lower bound argument, the function would return a #NUM! error. However, in Excel 2010, the function algorithm was improved, so that it can now calculate the function for both positive and negative x values. PHPExcel follows Excel 2010 behaviour, and accepts nagative arguments.</p><p>Excel Function: ERFC(x)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The lower bound for integrating ERFC</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodGESTEP"></a> + <h3>static method GESTEP <span class="smalllinenumber">[line 2212]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int GESTEP( +float +$number, [float +$step = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + GESTEP<br /><br /><p>Excel Function: GESTEP(number[,step])</p><p>Returns 1 if number &gt;= step; returns 0 (zero) otherwise Use this function to filter a set of values. For example, by summing several GESTEP functions you calculate the count of values that exceed a threshold.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>The value to test against step.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$step</b>&nbsp;&nbsp;</td> + <td>The threshold value. If you omit a value for step, GESTEP uses zero.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetConversionGroups"></a> + <h3>static method getConversionGroups <span class="smalllinenumber">[line 2345]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array getConversionGroups( +)</code> + </td></tr></table> + </td></tr></table><br /> + + getConversionGroups Returns a list of the different conversion groups for UOM conversions<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetConversionGroupUnitDetails"></a> + <h3>static method getConversionGroupUnitDetails <span class="smalllinenumber">[line 2378]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array getConversionGroupUnitDetails( +[ +$group = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + getConversionGroupUnitDetails<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$group</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetConversionGroupUnits"></a> + <h3>static method getConversionGroupUnits <span class="smalllinenumber">[line 2362]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array getConversionGroupUnits( +[string +$group = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + getConversionGroupUnits Returns an array of units of measure, for a specified conversion group, or for all groups<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$group</b>&nbsp;&nbsp;</td> + <td>The group whose units of measure you want to retrieve</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetConversionMultipliers"></a> + <h3>static method getConversionMultipliers <span class="smalllinenumber">[line 2397]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array getConversionMultipliers( +)</code> + </td></tr></table> + </td></tr></table><br /> + + getConversionMultipliers Returns an array of the Multiplier prefixes that can be used with Units of Measure in CONVERTUOM()<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of mixed</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodHEXTOBIN"></a> + <h3>static method HEXTOBIN <span class="smalllinenumber">[line 1392]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string HEXTOBIN( +string +$x, [integer +$places = null])</code> + </td></tr></table> + </td></tr></table><br /> + + HEXTOBIN<br /><br /><p>Return a hex value as binary.</p><p>Excel Function: HEX2BIN(x[,places])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>the hexadecimal number you want to convert. Number cannot contain more than 10 characters. The most significant bit of number is the sign bit (40th bit from the right). The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is negative, HEX2BIN ignores places and returns a 10-character binary number. If number is negative, it cannot be less than FFFFFFFE00, and if number is positive, it cannot be greater than 1FF. If number is not a valid hexadecimal number, HEX2BIN returns the #NUM! error value. If HEX2BIN requires more than places characters, it returns the #NUM! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$places</b>&nbsp;&nbsp;</td> + <td>The number of characters to use. If places is omitted, HEX2BIN uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, HEX2BIN returns the #VALUE! error value. If places is negative, HEX2BIN returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodHEXTODEC"></a> + <h3>static method HEXTODEC <span class="smalllinenumber">[line 1428]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string HEXTODEC( +string +$x)</code> + </td></tr></table> + </td></tr></table><br /> + + HEXTODEC<br /><br /><p>Return a hex value as decimal.</p><p>Excel Function: HEX2DEC(x)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The hexadecimal number you want to convert. This number cannot contain more than 10 characters (40 bits). The most significant bit of number is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is not a valid hexadecimal number, HEX2DEC returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodHEXTOOCT"></a> + <h3>static method HEXTOOCT <span class="smalllinenumber">[line 1474]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string HEXTOOCT( +string +$x, [integer +$places = null])</code> + </td></tr></table> + </td></tr></table><br /> + + HEXTOOCT<br /><br /><p>Return a hex value as octal.</p><p>Excel Function: HEX2OCT(x[,places])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The hexadecimal number you want to convert. Number cannot contain more than 10 characters. The most significant bit of number is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is negative, HEX2OCT ignores places and returns a 10-character octal number. If number is negative, it cannot be less than FFE0000000, and if number is positive, it cannot be greater than 1FFFFFFF. If number is not a valid hexadecimal number, HEX2OCT returns the #NUM! error value. If HEX2OCT requires more than places characters, it returns the #NUM! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$places</b>&nbsp;&nbsp;</td> + <td>The number of characters to use. If places is omitted, HEX2OCT uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, HEX2OCT returns the #VALUE! error value. If places is negative, HEX2OCT returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMABS"></a> + <h3>static method IMABS <span class="smalllinenumber">[line 1726]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float IMABS( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMABS<br /><br /><p>Returns the absolute value (modulus) of a complex number in x + yi or x + yj text format.</p><p>Excel Function: IMABS(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the absolute value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMAGINARY"></a> + <h3>static method IMAGINARY <span class="smalllinenumber">[line 1686]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float IMAGINARY( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMAGINARY<br /><br /><p>Returns the imaginary coefficient of a complex number in x + yi or x + yj text format.</p><p>Excel Function: IMAGINARY(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the imaginary coefficient.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMARGUMENT"></a> + <h3>static method IMARGUMENT <span class="smalllinenumber">[line 1747]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float IMARGUMENT( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMARGUMENT<br /><br /><p>Returns the argument theta of a complex number, i.e. the angle in radians from the real axis to the representation of the number in polar coordinates.</p><p>Excel Function: IMARGUMENT(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the argument theta.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMCONJUGATE"></a> + <h3>static method IMCONJUGATE <span class="smalllinenumber">[line 1781]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string IMCONJUGATE( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMCONJUGATE<br /><br /><p>Returns the complex conjugate of a complex number in x + yi or x + yj text format.</p><p>Excel Function: IMCONJUGATE(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the conjugate.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMCOS"></a> + <h3>static method IMCOS <span class="smalllinenumber">[line 1809]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string|float IMCOS( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMCOS<br /><br /><p>Returns the cosine of a complex number in x + yi or x + yj text format.</p><p>Excel Function: IMCOS(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the cosine.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMDIV"></a> + <h3>static method IMDIV <span class="smalllinenumber">[line 2037]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string IMDIV( +string +$complexDividend, string +$complexDivisor)</code> + </td></tr></table> + </td></tr></table><br /> + + IMDIV<br /><br /><p>Returns the quotient of two complex numbers in x + yi or x + yj text format.</p><p>Excel Function: IMDIV(complexDividend,complexDivisor)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexDividend</b>&nbsp;&nbsp;</td> + <td>The complex numerator or dividend.</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexDivisor</b>&nbsp;&nbsp;</td> + <td>The complex denominator or divisor.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMEXP"></a> + <h3>static method IMEXP <span class="smalllinenumber">[line 1969]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string IMEXP( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMEXP<br /><br /><p>Returns the exponential of a complex number in x + yi or x + yj text format.</p><p>Excel Function: IMEXP(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the exponential.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMLN"></a> + <h3>static method IMLN <span class="smalllinenumber">[line 1886]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string IMLN( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMLN<br /><br /><p>Returns the natural logarithm of a complex number in x + yi or x + yj text format.</p><p>Excel Function: IMLN(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the natural logarithm.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMLOG2"></a> + <h3>static method IMLOG2 <span class="smalllinenumber">[line 1943]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string IMLOG2( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMLOG2<br /><br /><p>Returns the common logarithm (base 10) of a complex number in x + yi or x + yj text format.</p><p>Excel Function: IMLOG2(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the base-2 logarithm.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMLOG10"></a> + <h3>static method IMLOG10 <span class="smalllinenumber">[line 1917]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string IMLOG10( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMLOG10<br /><br /><p>Returns the common logarithm (base 10) of a complex number in x + yi or x + yj text format.</p><p>Excel Function: IMLOG10(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the common logarithm.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMPOWER"></a> + <h3>static method IMPOWER <span class="smalllinenumber">[line 2002]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string IMPOWER( +string +$complexNumber, float +$realNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMPOWER<br /><br /><p>Returns a complex number in x + yi or x + yj text format raised to a power.</p><p>Excel Function: IMPOWER(complexNumber,realNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number you want to raise to a power.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$realNumber</b>&nbsp;&nbsp;</td> + <td>The power to which you want to raise the complex number.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMPRODUCT"></a> + <h3>static method IMPRODUCT <span class="smalllinenumber">[line 2149]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string IMPRODUCT( +string +$complexNumber,...)</code> + </td></tr></table> + </td></tr></table><br /> + + IMPRODUCT<br /><br /><p>Returns the product of two or more complex numbers in x + yi or x + yj text format.</p><p>Excel Function: IMPRODUCT(complexNumber[,complexNumber[,...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber,...</b>&nbsp;&nbsp;</td> + <td>Series of complex numbers to multiply</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMREAL"></a> + <h3>static method IMREAL <span class="smalllinenumber">[line 1707]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float IMREAL( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMREAL<br /><br /><p>Returns the real coefficient of a complex number in x + yi or x + yj text format.</p><p>Excel Function: IMREAL(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the real coefficient.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMSIN"></a> + <h3>static method IMSIN <span class="smalllinenumber">[line 1833]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string|float IMSIN( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMSIN<br /><br /><p>Returns the sine of a complex number in x + yi or x + yj text format.</p><p>Excel Function: IMSIN(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the sine.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMSQRT"></a> + <h3>static method IMSQRT <span class="smalllinenumber">[line 1857]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string IMSQRT( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + IMSQRT<br /><br /><p>Returns the square root of a complex number in x + yi or x + yj text format.</p><p>Excel Function: IMSQRT(complexNumber)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number for which you want the square root.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMSUB"></a> + <h3>static method IMSUB <span class="smalllinenumber">[line 2081]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string IMSUB( +string +$complexNumber1, string +$complexNumber2)</code> + </td></tr></table> + </td></tr></table><br /> + + IMSUB<br /><br /><p>Returns the difference of two complex numbers in x + yi or x + yj text format.</p><p>Excel Function: IMSUB(complexNumber1,complexNumber2)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber1</b>&nbsp;&nbsp;</td> + <td>The complex number from which to subtract complexNumber2.</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber2</b>&nbsp;&nbsp;</td> + <td>The complex number to subtract from complexNumber1.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIMSUM"></a> + <h3>static method IMSUM <span class="smalllinenumber">[line 2113]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string IMSUM( +string +$complexNumber,...)</code> + </td></tr></table> + </td></tr></table><br /> + + IMSUM<br /><br /><p>Returns the sum of two or more complex numbers in x + yi or x + yj text format.</p><p>Excel Function: IMSUM(complexNumber[,complexNumber[,...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber,...</b>&nbsp;&nbsp;</td> + <td>Series of complex numbers to add</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodOCTTOBIN"></a> + <h3>static method OCTTOBIN <span class="smalllinenumber">[line 1525]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string OCTTOBIN( +string +$x, [integer +$places = null])</code> + </td></tr></table> + </td></tr></table><br /> + + OCTTOBIN<br /><br /><p>Return an octal value as binary.</p><p>Excel Function: OCT2BIN(x[,places])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The octal number you want to convert. Number may not contain more than 10 characters. The most significant bit of number is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is negative, OCT2BIN ignores places and returns a 10-character binary number. If number is negative, it cannot be less than 7777777000, and if number is positive, it cannot be greater than 777. If number is not a valid octal number, OCT2BIN returns the #NUM! error value. If OCT2BIN requires more than places characters, it returns the #NUM! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$places</b>&nbsp;&nbsp;</td> + <td>The number of characters to use. If places is omitted, OCT2BIN uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, OCT2BIN returns the #VALUE! error value. If places is negative, OCT2BIN returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodOCTTODEC"></a> + <h3>static method OCTTODEC <span class="smalllinenumber">[line 1561]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string OCTTODEC( +string +$x)</code> + </td></tr></table> + </td></tr></table><br /> + + OCTTODEC<br /><br /><p>Return an octal value as decimal.</p><p>Excel Function: OCT2DEC(x)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The octal number you want to convert. Number may not contain more than 10 octal characters (30 bits). The most significant bit of number is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is not a valid octal number, OCT2DEC returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodOCTTOHEX"></a> + <h3>static method OCTTOHEX <span class="smalllinenumber">[line 1604]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string OCTTOHEX( +string +$x, [integer +$places = null])</code> + </td></tr></table> + </td></tr></table><br /> + + OCTTOHEX<br /><br /><p>Return an octal value as hex.</p><p>Excel Function: OCT2HEX(x[,places])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The octal number you want to convert. Number may not contain more than 10 octal characters (30 bits). The most significant bit of number is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is negative, OCT2HEX ignores places and returns a 10-character hexadecimal number. If number is not a valid octal number, OCT2HEX returns the #NUM! error value. If OCT2HEX requires more than places characters, it returns the #NUM! error value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$places</b>&nbsp;&nbsp;</td> + <td>The number of characters to use. If places is omitted, OCT2HEX uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, OCT2HEX returns the #VALUE! error value. If places is negative, OCT2HEX returns the #NUM! error value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_erfVal"></a> + <h3>static method _erfVal <span class="smalllinenumber">[line 2225]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void _erfVal( + +$x)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_parseComplex"></a> + <h3>static method _parseComplex <span class="smalllinenumber">[line 696]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string[] _parseComplex( +string +$complexNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + _parseComplex<br /><br /><p>Parses a complex number into its real and imaginary parts, and an I or J suffix</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Indexed on &quot;real&quot;, &quot;imaginary&quot; and &quot;suffix&quot;</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$complexNumber</b>&nbsp;&nbsp;</td> + <td>The complex number</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Exception.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Exception.html new file mode 100644 index 0000000..06d9bdf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Exception.html @@ -0,0 +1,384 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_Exception</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_Exception</h1> +Source Location: /PHPExcel/Calculation/Exception.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre>Exception + | + --PHPExcel_Calculation_Exception</pre><br /> +<div class="description">PHPExcel_Calculation_Exception</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html#methoderrorHandlerCallback">errorHandlerCallback</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: Exception (Internal Class)</h4> +<dl> +<dt> + $code + </dt> +<dd> + +</dd> +<dt> + $file + </dt> +<dd> + +</dd> +<dt> + $line + </dt> +<dd> + +</dd> +<dt> + $message + </dt> +<dd> + +</dd> +<dt> + $previous + </dt> +<dd> + +</dd> +<dt> + $string + </dt> +<dd> + +</dd> +<dt> + $trace + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: Exception (Internal Class)</h4> +<dl> + <dt> + constructor __construct ( [$message = ], [$code = ], [$previous = ] ) + </dt> + <dd> + + </dd> + <dt> + getCode ( ) + </dt> + <dd> + + </dd> + <dt> + getFile ( ) + </dt> + <dd> + + </dd> + <dt> + getLine ( ) + </dt> + <dd> + + </dd> + <dt> + getMessage ( ) + </dt> + <dd> + + </dd> + <dt> + getPrevious ( ) + </dt> + <dd> + + </dd> + <dt> + getTrace ( ) + </dt> + <dd> + + </dd> + <dt> + getTraceAsString ( ) + </dt> + <dd> + + </dd> + <dt> + __clone ( ) + </dt> + <dd> + + </dd> + <dt> + __toString ( ) + </dt> + <dd> + + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Calculation_Exception<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methoderrorHandlerCallback"></a> + <h3>static method errorHandlerCallback <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void errorHandlerCallback( +mixed +$code, mixed +$string, mixed +$file, mixed +$line, mixed +$context)</code> + </td></tr></table> + </td></tr></table><br /> + + Error handler callback<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$code</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$string</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$file</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$line</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$context</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html new file mode 100644 index 0000000..024ff28 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html @@ -0,0 +1,255 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_ExceptionHandler</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_ExceptionHandler</h1> +Source Location: /PHPExcel/Calculation/ExceptionHandler.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_ExceptionHandler</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html#method__destruct">__destruct</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Calculation_ExceptionHandler<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 39]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Calculation_ExceptionHandler __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Register errorhandler<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Unregister errorhandler<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Financial.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Financial.html new file mode 100644 index 0000000..b19e72b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Financial.html @@ -0,0 +1,2757 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_Financial</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_Financial</h1> +Source Location: /PHPExcel/Calculation/Financial.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_Financial</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodACCRINT">ACCRINT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodACCRINTM">ACCRINTM</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodAMORDEGRC">AMORDEGRC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodAMORLINC">AMORLINC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPDAYBS">COUPDAYBS</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPDAYS">COUPDAYS</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPDAYSNC">COUPDAYSNC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPNCD">COUPNCD</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPNUM">COUPNUM</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPPCD">COUPPCD</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCUMIPMT">CUMIPMT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCUMPRINC">CUMPRINC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDB">DB</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDDB">DDB</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDISC">DISC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDOLLARDE">DOLLARDE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDOLLARFR">DOLLARFR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodEFFECT">EFFECT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodFV">FV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodFVSCHEDULE">FVSCHEDULE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodINTRATE">INTRATE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodIPMT">IPMT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodIRR">IRR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodISPMT">ISPMT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodMIRR">MIRR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodNOMINAL">NOMINAL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodNPER">NPER</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodNPV">NPV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPMT">PMT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPPMT">PPMT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPRICE">PRICE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPRICEDISC">PRICEDISC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPRICEMAT">PRICEMAT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPV">PV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodRATE">RATE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodRECEIVED">RECEIVED</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodSLN">SLN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodSYD">SYD</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodTBILLEQ">TBILLEQ</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodTBILLPRICE">TBILLPRICE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodTBILLYIELD">TBILLYIELD</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodXIRR">XIRR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodXNPV">XNPV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodYIELDDISC">YIELDDISC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodYIELDMAT">YIELDMAT</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 53]<br /> +PHPExcel_Calculation_Financial<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodACCRINT"></a> + <h3>static method ACCRINT <span class="smalllinenumber">[line 201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float ACCRINT( +mixed +$issue, mixed +$firstinterest, mixed +$settlement, float +$rate, [float +$par = 1000], [integer +$frequency = 1], [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + ACCRINT<br /><br /><p>Returns the accrued interest for a security that pays periodic interest.</p><p>Excel Function: ACCRINT(issue,firstinterest,settlement,rate,par,frequency[,basis])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$issue</b>&nbsp;&nbsp;</td> + <td>The security's issue date.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$firstinterest</b>&nbsp;&nbsp;</td> + <td>The security's first interest date.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>The security's annual coupon rate.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$par</b>&nbsp;&nbsp;</td> + <td>The security's par value. If you omit par, ACCRINT uses $1,000.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$frequency</b>&nbsp;&nbsp;</td> + <td>the number of coupon payments per year. Valid frequency values are: <ol><li>Annual</li><li>Semi-Annual</li></ol> 4 Quarterly If working in Gnumeric Mode, the following frequency options are also available 6 Bimonthly 12 Monthly</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodACCRINTM"></a> + <h3>static method ACCRINTM <span class="smalllinenumber">[line 253]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float ACCRINTM( +mixed +$issue, mixed +$settlement, float +$rate, [float +$par = 1000], [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + ACCRINTM<br /><br /><p>Returns the accrued interest for a security that pays interest at maturity.</p><p>Excel Function: ACCRINTM(issue,settlement,rate[,par[,basis]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$issue</b>&nbsp;&nbsp;</td> + <td>issue The security's issue date.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement (or maturity) date.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>rate The security's annual coupon rate.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$par</b>&nbsp;&nbsp;</td> + <td>par The security's par value. If you omit par, ACCRINT uses $1,000.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodAMORDEGRC"></a> + <h3>static method AMORDEGRC <span class="smalllinenumber">[line 309]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float AMORDEGRC( +float +$cost, mixed +$purchased, mixed +$firstPeriod, mixed +$salvage, float +$period, float +$rate, [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + AMORDEGRC<br /><br /><p>Returns the depreciation for each accounting period. This function is provided for the French accounting system. If an asset is purchased in the middle of the accounting period, the prorated depreciation is taken into account. The function is similar to AMORLINC, except that a depreciation coefficient is applied in the calculation depending on the life of the assets. This function will return the depreciation until the last period of the life of the assets or until the cumulated value of depreciation is greater than the cost of the assets minus the salvage value.</p><p>Excel Function: AMORDEGRC(cost,purchased,firstPeriod,salvage,period,rate[,basis])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$cost</b>&nbsp;&nbsp;</td> + <td>cost The cost of the asset.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$purchased</b>&nbsp;&nbsp;</td> + <td>purchased Date of the purchase of the asset.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$firstPeriod</b>&nbsp;&nbsp;</td> + <td>firstPeriod Date of the end of the first period.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$salvage</b>&nbsp;&nbsp;</td> + <td>salvage The salvage value at the end of the life of the asset.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$period</b>&nbsp;&nbsp;</td> + <td>period The period.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>rate Rate of depreciation.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodAMORLINC"></a> + <h3>static method AMORLINC <span class="smalllinenumber">[line 385]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float AMORLINC( +float +$cost, mixed +$purchased, mixed +$firstPeriod, mixed +$salvage, float +$period, float +$rate, [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + AMORLINC<br /><br /><p>Returns the depreciation for each accounting period. This function is provided for the French accounting system. If an asset is purchased in the middle of the accounting period, the prorated depreciation is taken into account.</p><p>Excel Function: AMORLINC(cost,purchased,firstPeriod,salvage,period,rate[,basis])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$cost</b>&nbsp;&nbsp;</td> + <td>cost The cost of the asset.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$purchased</b>&nbsp;&nbsp;</td> + <td>purchased Date of the purchase of the asset.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$firstPeriod</b>&nbsp;&nbsp;</td> + <td>firstPeriod Date of the end of the first period.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$salvage</b>&nbsp;&nbsp;</td> + <td>salvage The salvage value at the end of the life of the asset.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$period</b>&nbsp;&nbsp;</td> + <td>period The period.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>rate Rate of depreciation.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOUPDAYBS"></a> + <h3>static method COUPDAYBS <span class="smalllinenumber">[line 451]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float COUPDAYBS( +mixed +$settlement, mixed +$maturity, mixed +$frequency, [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + COUPDAYBS<br /><br /><p>Returns the number of days from the beginning of the coupon period to the settlement date.</p><p>Excel Function: COUPDAYBS(settlement,maturity,frequency[,basis])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$frequency</b>&nbsp;&nbsp;</td> + <td>frequency the number of coupon payments per year. Valid frequency values are: <ol><li>Annual</li><li>Semi-Annual</li></ol> 4 Quarterly If working in Gnumeric Mode, the following frequency options are also available 6 Bimonthly 12 Monthly</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOUPDAYS"></a> + <h3>static method COUPDAYS <span class="smalllinenumber">[line 509]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float COUPDAYS( +mixed +$settlement, mixed +$maturity, mixed +$frequency, [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + COUPDAYS<br /><br /><p>Returns the number of days in the coupon period that contains the settlement date.</p><p>Excel Function: COUPDAYS(settlement,maturity,frequency[,basis])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$frequency</b>&nbsp;&nbsp;</td> + <td>frequency the number of coupon payments per year. Valid frequency values are: <ol><li>Annual</li><li>Semi-Annual</li></ol> 4 Quarterly If working in Gnumeric Mode, the following frequency options are also available 6 Bimonthly 12 Monthly</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOUPDAYSNC"></a> + <h3>static method COUPDAYSNC <span class="smalllinenumber">[line 579]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float COUPDAYSNC( +mixed +$settlement, mixed +$maturity, mixed +$frequency, [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + COUPDAYSNC<br /><br /><p>Returns the number of days from the settlement date to the next coupon date.</p><p>Excel Function: COUPDAYSNC(settlement,maturity,frequency[,basis])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$frequency</b>&nbsp;&nbsp;</td> + <td>frequency the number of coupon payments per year. Valid frequency values are: <ol><li>Annual</li><li>Semi-Annual</li></ol> 4 Quarterly If working in Gnumeric Mode, the following frequency options are also available 6 Bimonthly 12 Monthly</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOUPNCD"></a> + <h3>static method COUPNCD <span class="smalllinenumber">[line 638]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed COUPNCD( +mixed +$settlement, mixed +$maturity, mixed +$frequency, [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + COUPNCD<br /><br /><p>Returns the next coupon date after the settlement date.</p><p>Excel Function: COUPNCD(settlement,maturity,frequency[,basis])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, PHP date/time serial value or PHP date/time object, depending on the value of the ReturnDateType flag</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$frequency</b>&nbsp;&nbsp;</td> + <td>frequency the number of coupon payments per year. Valid frequency values are: <ol><li>Annual</li><li>Semi-Annual</li></ol> 4 Quarterly If working in Gnumeric Mode, the following frequency options are also available 6 Bimonthly 12 Monthly</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOUPNUM"></a> + <h3>static method COUPNUM <span class="smalllinenumber">[line 694]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer COUPNUM( +mixed +$settlement, mixed +$maturity, mixed +$frequency, [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + COUPNUM<br /><br /><p>Returns the number of coupons payable between the settlement date and maturity date, rounded up to the nearest whole coupon.</p><p>Excel Function: COUPNUM(settlement,maturity,frequency[,basis])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$frequency</b>&nbsp;&nbsp;</td> + <td>frequency the number of coupon payments per year. Valid frequency values are: <ol><li>Annual</li><li>Semi-Annual</li></ol> 4 Quarterly If working in Gnumeric Mode, the following frequency options are also available 6 Bimonthly 12 Monthly</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOUPPCD"></a> + <h3>static method COUPPCD <span class="smalllinenumber">[line 765]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed COUPPCD( +mixed +$settlement, mixed +$maturity, mixed +$frequency, [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + COUPPCD<br /><br /><p>Returns the previous coupon date before the settlement date.</p><p>Excel Function: COUPPCD(settlement,maturity,frequency[,basis])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value, PHP date/time serial value or PHP date/time object, depending on the value of the ReturnDateType flag</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$frequency</b>&nbsp;&nbsp;</td> + <td>frequency the number of coupon payments per year. Valid frequency values are: <ol><li>Annual</li><li>Semi-Annual</li></ol> 4 Quarterly If working in Gnumeric Mode, the following frequency options are also available 6 Bimonthly 12 Monthly</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCUMIPMT"></a> + <h3>static method CUMIPMT <span class="smalllinenumber">[line 809]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float CUMIPMT( +float +$rate, integer +$nper, float +$pv, integer +$start, integer +$end, [integer +$type = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + CUMIPMT<br /><br /><p>Returns the cumulative interest paid on a loan between the start and end periods.</p><p>Excel Function: CUMIPMT(rate,nper,pv,start,end[,type])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>The Interest rate</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$nper</b>&nbsp;&nbsp;</td> + <td>The total number of payment periods</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pv</b>&nbsp;&nbsp;</td> + <td>Present Value</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$start</b>&nbsp;&nbsp;</td> + <td>The first period in the calculation. Payment periods are numbered beginning with 1.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$end</b>&nbsp;&nbsp;</td> + <td>The last period in the calculation.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td>A number 0 or 1 and indicates when payments are due: <ol><li>or omitted At the end of the period.</li><li>At the beginning of the period.</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCUMPRINC"></a> + <h3>static method CUMPRINC <span class="smalllinenumber">[line 856]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float CUMPRINC( +float +$rate, integer +$nper, float +$pv, integer +$start, integer +$end, [integer +$type = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + CUMPRINC<br /><br /><p>Returns the cumulative principal paid on a loan between the start and end periods.</p><p>Excel Function: CUMPRINC(rate,nper,pv,start,end[,type])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>The Interest rate</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$nper</b>&nbsp;&nbsp;</td> + <td>The total number of payment periods</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pv</b>&nbsp;&nbsp;</td> + <td>Present Value</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$start</b>&nbsp;&nbsp;</td> + <td>The first period in the calculation. Payment periods are numbered beginning with 1.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$end</b>&nbsp;&nbsp;</td> + <td>The last period in the calculation.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td>A number 0 or 1 and indicates when payments are due: <ol><li>or omitted At the end of the period.</li><li>At the beginning of the period.</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDB"></a> + <h3>static method DB <span class="smalllinenumber">[line 908]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DB( +float +$cost, float +$salvage, integer +$life, integer +$period, [integer +$month = 12])</code> + </td></tr></table> + </td></tr></table><br /> + + DB<br /><br /><p>Returns the depreciation of an asset for a specified period using the fixed-declining balance method. This form of depreciation is used if you want to get a higher depreciation value at the beginning of the depreciation (as opposed to linear depreciation). The depreciation value is reduced with every depreciation period by the depreciation already deducted from the initial cost.</p><p>Excel Function: DB(cost,salvage,life,period[,month])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$cost</b>&nbsp;&nbsp;</td> + <td>cost Initial cost of the asset.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$salvage</b>&nbsp;&nbsp;</td> + <td>salvage Value at the end of the depreciation. (Sometimes called the salvage value of the asset)</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$life</b>&nbsp;&nbsp;</td> + <td>life Number of periods over which the asset is depreciated. (Sometimes called the useful life of the asset)</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$period</b>&nbsp;&nbsp;</td> + <td>period The period for which you want to calculate the depreciation. Period must use the same units as life.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$month</b>&nbsp;&nbsp;</td> + <td>month Number of months in the first year. If month is omitted, it defaults to 12.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDDB"></a> + <h3>static method DDB <span class="smalllinenumber">[line 975]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DDB( +float +$cost, float +$salvage, integer +$life, integer +$period, [float +$factor = 2.0])</code> + </td></tr></table> + </td></tr></table><br /> + + DDB<br /><br /><p>Returns the depreciation of an asset for a specified period using the double-declining balance method or some other method you specify.</p><p>Excel Function: DDB(cost,salvage,life,period[,factor])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$cost</b>&nbsp;&nbsp;</td> + <td>cost Initial cost of the asset.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$salvage</b>&nbsp;&nbsp;</td> + <td>salvage Value at the end of the depreciation. (Sometimes called the salvage value of the asset)</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$life</b>&nbsp;&nbsp;</td> + <td>life Number of periods over which the asset is depreciated. (Sometimes called the useful life of the asset)</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$period</b>&nbsp;&nbsp;</td> + <td>period The period for which you want to calculate the depreciation. Period must use the same units as life.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$factor</b>&nbsp;&nbsp;</td> + <td>factor The rate at which the balance declines. If factor is omitted, it is assumed to be 2 (the double-declining balance method).</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDISC"></a> + <h3>static method DISC <span class="smalllinenumber">[line 1036]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DISC( +mixed +$settlement, mixed +$maturity, integer +$price, integer +$redemption, [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + DISC<br /><br /><p>Returns the discount rate for a security.</p><p>Excel Function: DISC(settlement,maturity,price,redemption[,basis])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$price</b>&nbsp;&nbsp;</td> + <td>price The security's price per $100 face value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$redemption</b>&nbsp;&nbsp;</td> + <td>redemption The security's redemption value per $100 face value.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDOLLARDE"></a> + <h3>static method DOLLARDE <span class="smalllinenumber">[line 1079]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DOLLARDE( +[float +$fractional_dollar = Null], [integer +$fraction = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + DOLLARDE<br /><br /><p>Converts a dollar price expressed as an integer part and a fraction part into a dollar price expressed as a decimal number. Fractional dollar numbers are sometimes used for security prices.</p><p>Excel Function: DOLLARDE(fractional_dollar,fraction)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$fractional_dollar</b>&nbsp;&nbsp;</td> + <td>Fractional Dollar</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$fraction</b>&nbsp;&nbsp;</td> + <td>Fraction</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDOLLARFR"></a> + <h3>static method DOLLARFR <span class="smalllinenumber">[line 1115]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DOLLARFR( +[float +$decimal_dollar = Null], [integer +$fraction = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + DOLLARFR<br /><br /><p>Converts a dollar price expressed as a decimal number into a dollar price expressed as a fraction. Fractional dollar numbers are sometimes used for security prices.</p><p>Excel Function: DOLLARFR(decimal_dollar,fraction)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$decimal_dollar</b>&nbsp;&nbsp;</td> + <td>Decimal Dollar</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$fraction</b>&nbsp;&nbsp;</td> + <td>Fraction</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodEFFECT"></a> + <h3>static method EFFECT <span class="smalllinenumber">[line 1150]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float EFFECT( +[float +$nominal_rate = 0], [integer +$npery = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + EFFECT<br /><br /><p>Returns the effective interest rate given the nominal rate and the number of compounding payments per year.</p><p>Excel Function: EFFECT(nominal_rate,npery)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$nominal_rate</b>&nbsp;&nbsp;</td> + <td>Nominal interest rate</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$npery</b>&nbsp;&nbsp;</td> + <td>Number of compounding payments per year</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodFV"></a> + <h3>static method FV <span class="smalllinenumber">[line 1185]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float FV( +[float +$rate = 0], [int +$nper = 0], [float +$pmt = 0], [float +$pv = 0], [integer +$type = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + FV<br /><br /><p>Returns the Future Value of a cash flow with constant payments and interest rate (annuities).</p><p>Excel Function: FV(rate,nper,pmt[,pv[,type]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>The interest rate per period</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$nper</b>&nbsp;&nbsp;</td> + <td>Total number of payment periods in an annuity</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pmt</b>&nbsp;&nbsp;</td> + <td>The payment made each period: it cannot change over the life of the annuity. Typically, pmt contains principal and interest but no other fees or taxes.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pv</b>&nbsp;&nbsp;</td> + <td>Present Value, or the lump-sum amount that a series of future payments is worth right now.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td>A number 0 or 1 and indicates when payments are due: <ol><li>or omitted At the end of the period.</li><li>At the beginning of the period.</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodFVSCHEDULE"></a> + <h3>static method FVSCHEDULE <span class="smalllinenumber">[line 1210]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void FVSCHEDULE( + +$principal, +$schedule)</code> + </td></tr></table> + </td></tr></table><br /> + + FVSCHEDULE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$principal</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$schedule</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodINTRATE"></a> + <h3>static method INTRATE <span class="smalllinenumber">[line 1244]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float INTRATE( +mixed +$settlement, mixed +$maturity, integer +$investment, integer +$redemption, [integer +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + INTRATE<br /><br /><p>Returns the interest rate for a fully invested security.</p><p>Excel Function: INTRATE(settlement,maturity,investment,redemption[,basis])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$investment</b>&nbsp;&nbsp;</td> + <td>investment The amount invested in the security.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$redemption</b>&nbsp;&nbsp;</td> + <td>redemption The amount to be received at maturity.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIPMT"></a> + <h3>static method IPMT <span class="smalllinenumber">[line 1284]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float IPMT( +float +$rate, int +$per, int +$nper, float +$pv, [float +$fv = 0], [int +$type = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + IPMT<br /><br /><p>Returns the interest payment for a given period for an investment based on periodic, constant payments and a constant interest rate.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>Interest rate per period</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$per</b>&nbsp;&nbsp;</td> + <td>Period for which we want to find the interest</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$nper</b>&nbsp;&nbsp;</td> + <td>Number of periods</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pv</b>&nbsp;&nbsp;</td> + <td>Present Value</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$fv</b>&nbsp;&nbsp;</td> + <td>Future Value</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td>Payment type: 0 = at the end of each period, 1 = at the beginning of each period</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIRR"></a> + <h3>static method IRR <span class="smalllinenumber">[line 1306]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void IRR( + +$values, [ +$guess = 0.1])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$values</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$guess</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodISPMT"></a> + <h3>static method ISPMT <span class="smalllinenumber">[line 1362]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void ISPMT( +)</code> + </td></tr></table> + </td></tr></table><br /> + + ISPMT<br /><br /><p>Returns the interest payment for an investment based on an interest rate and a constant payment schedule.</p><p>Excel Function: =ISPMT(interest_rate, period, number_payments, PV)</p><p>interest_rate is the interest rate for the investment</p><p>period is the period to calculate the interest rate. It must be betweeen 1 and number_payments.</p><p>number_payments is the number of payments for the annuity</p><p>PV is the loan amount or present value of the payments</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMIRR"></a> + <h3>static method MIRR <span class="smalllinenumber">[line 1387]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void MIRR( + +$values, +$finance_rate, +$reinvestment_rate)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$values</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$finance_rate</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$reinvestment_rate</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNOMINAL"></a> + <h3>static method NOMINAL <span class="smalllinenumber">[line 1426]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float NOMINAL( +[float +$effect_rate = 0], [int +$npery = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + NOMINAL<br /><br /><p>Returns the nominal interest rate given the effective rate and the number of compounding payments per year.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$effect_rate</b>&nbsp;&nbsp;</td> + <td>Effective interest rate</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$npery</b>&nbsp;&nbsp;</td> + <td>Number of compounding payments per year</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNPER"></a> + <h3>static method NPER <span class="smalllinenumber">[line 1452]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float NPER( +[float +$rate = 0], [int +$pmt = 0], [float +$pv = 0], [float +$fv = 0], [int +$type = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + NPER<br /><br /><p>Returns the number of periods for a cash flow with constant periodic payments (annuities), and interest rate.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>Interest rate per period</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pmt</b>&nbsp;&nbsp;</td> + <td>Periodic payment (annuity)</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pv</b>&nbsp;&nbsp;</td> + <td>Present Value</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$fv</b>&nbsp;&nbsp;</td> + <td>Future Value</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td>Payment type: 0 = at the end of each period, 1 = at the beginning of each period</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNPV"></a> + <h3>static method NPV <span class="smalllinenumber">[line 1488]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float NPV( +float +0, array +1)</code> + </td></tr></table> + </td></tr></table><br /> + + NPV<br /><br /><p>Returns the Net Present Value of a cash flow series given a discount rate.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>0</b>&nbsp;&nbsp;</td> + <td>Discount interest rate</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>1</b>&nbsp;&nbsp;</td> + <td>Cash flow series</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPMT"></a> + <h3>static method PMT <span class="smalllinenumber">[line 1521]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float PMT( +[float +$rate = 0], [int +$nper = 0], [float +$pv = 0], [float +$fv = 0], [int +$type = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + PMT<br /><br /><p>Returns the constant payment (annuity) for a cash flow with a constant interest rate.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>Interest rate per period</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$nper</b>&nbsp;&nbsp;</td> + <td>Number of periods</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pv</b>&nbsp;&nbsp;</td> + <td>Present Value</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$fv</b>&nbsp;&nbsp;</td> + <td>Future Value</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td>Payment type: 0 = at the end of each period, 1 = at the beginning of each period</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPPMT"></a> + <h3>static method PPMT <span class="smalllinenumber">[line 1555]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float PPMT( +float +$rate, int +$per, int +$nper, float +$pv, [float +$fv = 0], [int +$type = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + PPMT<br /><br /><p>Returns the interest payment for a given period for an investment based on periodic, constant payments and a constant interest rate.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>Interest rate per period</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$per</b>&nbsp;&nbsp;</td> + <td>Period for which we want to find the interest</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$nper</b>&nbsp;&nbsp;</td> + <td>Number of periods</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pv</b>&nbsp;&nbsp;</td> + <td>Present Value</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$fv</b>&nbsp;&nbsp;</td> + <td>Future Value</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td>Payment type: 0 = at the end of each period, 1 = at the beginning of each period</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPRICE"></a> + <h3>static method PRICE <span class="smalllinenumber">[line 1577]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void PRICE( + +$settlement, +$maturity, +$rate, +$yield, +$redemption, +$frequency, [ +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$yield</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$redemption</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$frequency</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPRICEDISC"></a> + <h3>static method PRICEDISC <span class="smalllinenumber">[line 1637]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float PRICEDISC( +mixed +$settlement, mixed +$maturity, int +$discount, int +$redemption, [int +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + PRICEDISC<br /><br /><p>Returns the price per $100 face value of a discounted security.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$discount</b>&nbsp;&nbsp;</td> + <td>discount The security's discount rate.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$redemption</b>&nbsp;&nbsp;</td> + <td>redemption The security's redemption value per $100 face value.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPRICEMAT"></a> + <h3>static method PRICEMAT <span class="smalllinenumber">[line 1681]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float PRICEMAT( +mixed +$settlement, mixed +$maturity, mixed +$issue, int +$rate, int +$yield, [int +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + PRICEMAT<br /><br /><p>Returns the price per $100 face value of a security that pays interest at maturity.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security's settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$issue</b>&nbsp;&nbsp;</td> + <td>issue The security's issue date.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>rate The security's interest rate at date of issue.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$yield</b>&nbsp;&nbsp;</td> + <td>yield The security's annual yield.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPV"></a> + <h3>static method PV <span class="smalllinenumber">[line 1737]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float PV( +[float +$rate = 0], [int +$nper = 0], [float +$pmt = 0], [float +$fv = 0], [int +$type = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + PV<br /><br /><p>Returns the Present Value of a cash flow with constant payments and interest rate (annuities).</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>Interest rate per period</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$nper</b>&nbsp;&nbsp;</td> + <td>Number of periods</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pmt</b>&nbsp;&nbsp;</td> + <td>Periodic payment (annuity)</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$fv</b>&nbsp;&nbsp;</td> + <td>Future Value</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td>Payment type: 0 = at the end of each period, 1 = at the beginning of each period</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodRATE"></a> + <h3>static method RATE <span class="smalllinenumber">[line 1788]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float RATE( +float +$nper, float +$pmt, float +$pv, [float +$fv = 0.0], [integer +$type = 0], [float +$guess = 0.1])</code> + </td></tr></table> + </td></tr></table><br /> + + RATE<br /><br /><p>Returns the interest rate per period of an annuity. RATE is calculated by iteration and can have zero or more solutions. If the successive results of RATE do not converge to within 0.0000001 after 20 iterations, RATE returns the #NUM! error value.</p><p>Excel Function: RATE(nper,pmt,pv[,fv[,type[,guess]]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$nper</b>&nbsp;&nbsp;</td> + <td>nper The total number of payment periods in an annuity.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pmt</b>&nbsp;&nbsp;</td> + <td>pmt The payment made each period and cannot change over the life of the annuity. Typically, pmt includes principal and interest but no other fees or taxes.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pv</b>&nbsp;&nbsp;</td> + <td>pv The present value - the total amount that a series of future payments is worth now.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$fv</b>&nbsp;&nbsp;</td> + <td>fv The future value, or a cash balance you want to attain after the last payment is made. If fv is omitted, it is assumed to be 0 (the future value of a loan, for example, is 0).</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td>type A number 0 or 1 and indicates when payments are due: <ol><li>or omitted At the end of the period.</li><li>At the beginning of the period.</li></ol></td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$guess</b>&nbsp;&nbsp;</td> + <td>guess Your guess for what the rate will be. If you omit guess, it is assumed to be 10 percent.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodRECEIVED"></a> + <h3>static method RECEIVED <span class="smalllinenumber">[line 1850]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float RECEIVED( +mixed +$settlement, mixed +$maturity, int +$investment, int +$discount, [int +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + RECEIVED<br /><br /><p>Returns the price per $100 face value of a discounted security.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$investment</b>&nbsp;&nbsp;</td> + <td>investment The amount invested in the security.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$discount</b>&nbsp;&nbsp;</td> + <td>discount The security's discount rate.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSLN"></a> + <h3>static method SLN <span class="smalllinenumber">[line 1884]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SLN( +cost +$cost, salvage +$salvage, life +$life)</code> + </td></tr></table> + </td></tr></table><br /> + + SLN<br /><br /><p>Returns the straight-line depreciation of an asset for one period</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">cost&nbsp;&nbsp;</td> + <td><b>$cost</b>&nbsp;&nbsp;</td> + <td>Initial cost of the asset</td> + </tr> + <tr> + <td class="type">salvage&nbsp;&nbsp;</td> + <td><b>$salvage</b>&nbsp;&nbsp;</td> + <td>Value at the end of the depreciation</td> + </tr> + <tr> + <td class="type">life&nbsp;&nbsp;</td> + <td><b>$life</b>&nbsp;&nbsp;</td> + <td>Number of periods over which the asset is depreciated</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSYD"></a> + <h3>static method SYD <span class="smalllinenumber">[line 1911]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SYD( +cost +$cost, salvage +$salvage, life +$life, period +$period)</code> + </td></tr></table> + </td></tr></table><br /> + + SYD<br /><br /><p>Returns the sum-of-years' digits depreciation of an asset for a specified period.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">cost&nbsp;&nbsp;</td> + <td><b>$cost</b>&nbsp;&nbsp;</td> + <td>Initial cost of the asset</td> + </tr> + <tr> + <td class="type">salvage&nbsp;&nbsp;</td> + <td><b>$salvage</b>&nbsp;&nbsp;</td> + <td>Value at the end of the depreciation</td> + </tr> + <tr> + <td class="type">life&nbsp;&nbsp;</td> + <td><b>$life</b>&nbsp;&nbsp;</td> + <td>Number of periods over which the asset is depreciated</td> + </tr> + <tr> + <td class="type">period&nbsp;&nbsp;</td> + <td><b>$period</b>&nbsp;&nbsp;</td> + <td>Period</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTBILLEQ"></a> + <h3>static method TBILLEQ <span class="smalllinenumber">[line 1940]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float TBILLEQ( +mixed +$settlement, mixed +$maturity, int +$discount)</code> + </td></tr></table> + </td></tr></table><br /> + + TBILLEQ<br /><br /><p>Returns the bond-equivalent yield for a Treasury bill.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The Treasury bill's settlement date. The Treasury bill's settlement date is the date after the issue date when the Treasury bill is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The Treasury bill's maturity date. The maturity date is the date when the Treasury bill expires.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$discount</b>&nbsp;&nbsp;</td> + <td>discount The Treasury bill's discount rate.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTBILLPRICE"></a> + <h3>static method TBILLPRICE <span class="smalllinenumber">[line 1978]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float TBILLPRICE( +mixed +$settlement, mixed +$maturity, int +$discount)</code> + </td></tr></table> + </td></tr></table><br /> + + TBILLPRICE<br /><br /><p>Returns the yield for a Treasury bill.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The Treasury bill's settlement date. The Treasury bill's settlement date is the date after the issue date when the Treasury bill is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The Treasury bill's maturity date. The maturity date is the date when the Treasury bill expires.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$discount</b>&nbsp;&nbsp;</td> + <td>discount The Treasury bill's discount rate.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTBILLYIELD"></a> + <h3>static method TBILLYIELD <span class="smalllinenumber">[line 2030]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float TBILLYIELD( +mixed +$settlement, mixed +$maturity, int +$price)</code> + </td></tr></table> + </td></tr></table><br /> + + TBILLYIELD<br /><br /><p>Returns the yield for a Treasury bill.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The Treasury bill's settlement date. The Treasury bill's settlement date is the date after the issue date when the Treasury bill is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The Treasury bill's maturity date. The maturity date is the date when the Treasury bill expires.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$price</b>&nbsp;&nbsp;</td> + <td>price The Treasury bill's price per $100 face value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodXIRR"></a> + <h3>static method XIRR <span class="smalllinenumber">[line 2062]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void XIRR( + +$values, +$dates, [ +$guess = 0.1])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$values</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dates</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$guess</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodXNPV"></a> + <h3>static method XNPV <span class="smalllinenumber">[line 2118]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float XNPV( +float +$rate, array +$values, array +$dates)</code> + </td></tr></table> + </td></tr></table><br /> + + XNPV<br /><br /><p>Returns the net present value for a schedule of cash flows that is not necessarily periodic. To calculate the net present value for a series of cash flows that is periodic, use the NPV function.</p><p>Excel Function: =XNPV(rate,values,dates)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>The discount rate to apply to the cash flows.</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$values</b>&nbsp;&nbsp;</td> + <td>of float $values A series of cash flows that corresponds to a schedule of payments in dates. The first payment is optional and corresponds to a cost or payment that occurs at the beginning of the investment. If the first value is a cost or payment, it must be a negative value. All succeeding payments are discounted based on a 365-day year. The series of values must contain at least one positive value and one negative value.</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$dates</b>&nbsp;&nbsp;</td> + <td>of mixed $dates A schedule of payment dates that corresponds to the cash flow payments. The first payment date indicates the beginning of the schedule of payments. All other dates must be later than this date, but they may occur in any order.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodYIELDDISC"></a> + <h3>static method YIELDDISC <span class="smalllinenumber">[line 2156]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float YIELDDISC( +mixed +$settlement, mixed +$maturity, int +$price, int +$redemption, [int +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + YIELDDISC<br /><br /><p>Returns the annual yield of a security that pays interest at maturity.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security's settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$price</b>&nbsp;&nbsp;</td> + <td>price The security's price per $100 face value.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$redemption</b>&nbsp;&nbsp;</td> + <td>redemption The security's redemption value per $100 face value.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodYIELDMAT"></a> + <h3>static method YIELDMAT <span class="smalllinenumber">[line 2205]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float YIELDMAT( +mixed +$settlement, mixed +$maturity, mixed +$issue, int +$rate, int +$price, [int +$basis = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + YIELDMAT<br /><br /><p>Returns the annual yield of a security that pays interest at maturity.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$settlement</b>&nbsp;&nbsp;</td> + <td>settlement The security's settlement date. The security's settlement date is the date after the issue date when the security is traded to the buyer.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$maturity</b>&nbsp;&nbsp;</td> + <td>maturity The security's maturity date. The maturity date is the date when the security expires.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$issue</b>&nbsp;&nbsp;</td> + <td>issue The security's issue date.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$rate</b>&nbsp;&nbsp;</td> + <td>rate The security's interest rate at date of issue.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$price</b>&nbsp;&nbsp;</td> + <td>price The security's price per $100 face value.</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$basis</b>&nbsp;&nbsp;</td> + <td>basis The type of day count to use. <ol><li>or omitted US (NASD) 30/360</li><li>Actual/actual</li><li>Actual/360</li><li>Actual/365</li><li>European 30/360</li></ol></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:15 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html new file mode 100644 index 0000000..2a06ec5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html @@ -0,0 +1,491 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_FormulaParser</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_FormulaParser</h1> +Source Location: /PHPExcel/Calculation/FormulaParser.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_FormulaParser</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACE_CLOSE">BRACE_CLOSE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACE_OPEN">BRACE_OPEN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACKET_CLOSE">BRACKET_CLOSE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACKET_OPEN">BRACKET_OPEN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constCOMMA">COMMA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constERROR_START">ERROR_START</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constOPERATORS_INFIX">OPERATORS_INFIX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constOPERATORS_POSTFIX">OPERATORS_POSTFIX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constOPERATORS_SN">OPERATORS_SN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constPAREN_CLOSE">PAREN_CLOSE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constPAREN_OPEN">PAREN_OPEN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constQUOTE_DOUBLE">QUOTE_DOUBLE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constQUOTE_SINGLE">QUOTE_SINGLE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constSEMICOLON">SEMICOLON</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constWHITESPACE">WHITESPACE</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetFormula">getFormula</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetToken">getToken</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetTokenCount">getTokenCount</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetTokens">getTokens</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 59]<br /> +PHPExcel_Calculation_FormulaParser<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 98]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Calculation_FormulaParser __construct( +[string +$pFormula = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Calculation_FormulaParser<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFormula</b>&nbsp;&nbsp;</td> + <td>Formula to parse</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFormula"></a> + <h3>method getFormula <span class="smalllinenumber">[line 116]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFormula( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Formula<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetToken"></a> + <h3>method getToken <span class="smalllinenumber">[line 127]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getToken( +[int +$pId = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Get Token<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pId</b>&nbsp;&nbsp;</td> + <td>Token id</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTokenCount"></a> + <h3>method getTokenCount <span class="smalllinenumber">[line 140]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getTokenCount( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Token count<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTokens"></a> + <h3>method getTokens <span class="smalllinenumber">[line 149]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Calculation_FormulaToken[] getTokens( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Tokens<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constBRACE_CLOSE"></a> + <p></p> + <h4>BRACE_CLOSE = <span class="value">&nbsp;'}'</span></h4> + <p>[line 66]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBRACE_OPEN"></a> + <p></p> + <h4>BRACE_OPEN = <span class="value">&nbsp;'{'</span></h4> + <p>[line 65]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBRACKET_CLOSE"></a> + <p></p> + <h4>BRACKET_CLOSE = <span class="value">&nbsp;']'</span></h4> + <p>[line 63]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBRACKET_OPEN"></a> + <p></p> + <h4>BRACKET_OPEN = <span class="value">&nbsp;'['</span></h4> + <p>[line 64]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOMMA"></a> + <p></p> + <h4>COMMA = <span class="value">&nbsp;','</span></h4> + <p>[line 71]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constERROR_START"></a> + <p></p> + <h4>ERROR_START = <span class="value">&nbsp;'#'</span></h4> + <p>[line 72]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATORS_INFIX"></a> + <p></p> + <h4>OPERATORS_INFIX = <span class="value">&nbsp;&quot;+-*/^&amp;=&gt;&lt;&quot;</span></h4> + <p>[line 75]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATORS_POSTFIX"></a> + <p></p> + <h4>OPERATORS_POSTFIX = <span class="value">&nbsp;&quot;%&quot;</span></h4> + <p>[line 76]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATORS_SN"></a> + <p></p> + <h4>OPERATORS_SN = <span class="value">&nbsp;&quot;+-&quot;</span></h4> + <p>[line 74]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAREN_CLOSE"></a> + <p></p> + <h4>PAREN_CLOSE = <span class="value">&nbsp;')'</span></h4> + <p>[line 68]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAREN_OPEN"></a> + <p></p> + <h4>PAREN_OPEN = <span class="value">&nbsp;'('</span></h4> + <p>[line 67]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constQUOTE_DOUBLE"></a> + <p></p> + <h4>QUOTE_DOUBLE = <span class="value">&nbsp;'&quot;'</span></h4> + <p>[line 61]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constQUOTE_SINGLE"></a> + <p></p> + <h4>QUOTE_SINGLE = <span class="value">&nbsp;'\''</span></h4> + <p>[line 62]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSEMICOLON"></a> + <p></p> + <h4>SEMICOLON = <span class="value">&nbsp;';'</span></h4> + <p>[line 69]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constWHITESPACE"></a> + <p></p> + <h4>WHITESPACE = <span class="value">&nbsp;'&nbsp;'</span></h4> + <p>[line 70]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html new file mode 100644 index 0000000..2b17808 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html @@ -0,0 +1,627 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_FormulaToken</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_FormulaToken</h1> +Source Location: /PHPExcel/Calculation/FormulaToken.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_FormulaToken</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_CONCATENATION">TOKEN_SUBTYPE_CONCATENATION</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_ERROR">TOKEN_SUBTYPE_ERROR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_INTERSECTION">TOKEN_SUBTYPE_INTERSECTION</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_LOGICAL">TOKEN_SUBTYPE_LOGICAL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_MATH">TOKEN_SUBTYPE_MATH</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_NOTHING">TOKEN_SUBTYPE_NOTHING</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_NUMBER">TOKEN_SUBTYPE_NUMBER</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_RANGE">TOKEN_SUBTYPE_RANGE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_START">TOKEN_SUBTYPE_START</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_STOP">TOKEN_SUBTYPE_STOP</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_TEXT">TOKEN_SUBTYPE_TEXT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_UNION">TOKEN_SUBTYPE_UNION</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_ARGUMENT">TOKEN_TYPE_ARGUMENT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_FUNCTION">TOKEN_TYPE_FUNCTION</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_NOOP">TOKEN_TYPE_NOOP</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERAND">TOKEN_TYPE_OPERAND</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERATORINFIX">TOKEN_TYPE_OPERATORINFIX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERATORPOSTFIX">TOKEN_TYPE_OPERATORPOSTFIX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERATORPREFIX">TOKEN_TYPE_OPERATORPREFIX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_SUBEXPRESSION">TOKEN_TYPE_SUBEXPRESSION</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_UNKNOWN">TOKEN_TYPE_UNKNOWN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_WHITESPACE">TOKEN_TYPE_WHITESPACE</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodgetTokenSubType">getTokenSubType</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodgetTokenType">getTokenType</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodgetValue">getValue</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodsetTokenSubType">setTokenSubType</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodsetTokenType">setTokenType</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodsetValue">setValue</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#method__construct">__construct</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 60]<br /> +PHPExcel_Calculation_FormulaToken<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetTokenSubType"></a> + <h3>method getTokenSubType <span class="smalllinenumber">[line 164]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getTokenSubType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Token SubType (represented by TOKEN_SUBTYPE_*)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTokenType"></a> + <h3>method getTokenType <span class="smalllinenumber">[line 146]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getTokenType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Token Type (represented by TOKEN_TYPE_*)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValue"></a> + <h3>method getValue <span class="smalllinenumber">[line 128]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getValue( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTokenSubType"></a> + <h3>method setTokenSubType <span class="smalllinenumber">[line 173]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setTokenSubType( +[string +$value = PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NOTHING])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Token SubType<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTokenType"></a> + <h3>method setTokenType <span class="smalllinenumber">[line 155]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setTokenType( +[string +$value = PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Token Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetValue"></a> + <h3>method setValue <span class="smalllinenumber">[line 137]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setValue( +string +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 115]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Calculation_FormulaToken __construct( +string +$pValue, [string +$pTokenType = PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN], [string +$pTokenSubType = PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NOTHING])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Calculation_FormulaToken<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pTokenType</b>&nbsp;&nbsp;</td> + <td>Token type (represented by TOKEN_TYPE_*)</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pTokenSubType</b>&nbsp;&nbsp;</td> + <td>Token Subtype (represented by TOKEN_SUBTYPE_*)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constTOKEN_SUBTYPE_CONCATENATION"></a> + <p></p> + <h4>TOKEN_SUBTYPE_CONCATENATION = <span class="value">&nbsp;'Concatenation'</span></h4> + <p>[line 83]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_SUBTYPE_ERROR"></a> + <p></p> + <h4>TOKEN_SUBTYPE_ERROR = <span class="value">&nbsp;'Error'</span></h4> + <p>[line 80]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_SUBTYPE_INTERSECTION"></a> + <p></p> + <h4>TOKEN_SUBTYPE_INTERSECTION = <span class="value">&nbsp;'Intersection'</span></h4> + <p>[line 84]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_SUBTYPE_LOGICAL"></a> + <p></p> + <h4>TOKEN_SUBTYPE_LOGICAL = <span class="value">&nbsp;'Logical'</span></h4> + <p>[line 79]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_SUBTYPE_MATH"></a> + <p></p> + <h4>TOKEN_SUBTYPE_MATH = <span class="value">&nbsp;'Math'</span></h4> + <p>[line 82]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_SUBTYPE_NOTHING"></a> + <p></p> + <h4>TOKEN_SUBTYPE_NOTHING = <span class="value">&nbsp;'Nothing'</span></h4> + <p>[line 74]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_SUBTYPE_NUMBER"></a> + <p></p> + <h4>TOKEN_SUBTYPE_NUMBER = <span class="value">&nbsp;'Number'</span></h4> + <p>[line 78]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_SUBTYPE_RANGE"></a> + <p></p> + <h4>TOKEN_SUBTYPE_RANGE = <span class="value">&nbsp;'Range'</span></h4> + <p>[line 81]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_SUBTYPE_START"></a> + <p></p> + <h4>TOKEN_SUBTYPE_START = <span class="value">&nbsp;'Start'</span></h4> + <p>[line 75]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_SUBTYPE_STOP"></a> + <p></p> + <h4>TOKEN_SUBTYPE_STOP = <span class="value">&nbsp;'Stop'</span></h4> + <p>[line 76]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_SUBTYPE_TEXT"></a> + <p></p> + <h4>TOKEN_SUBTYPE_TEXT = <span class="value">&nbsp;'Text'</span></h4> + <p>[line 77]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_SUBTYPE_UNION"></a> + <p></p> + <h4>TOKEN_SUBTYPE_UNION = <span class="value">&nbsp;'Union'</span></h4> + <p>[line 85]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_TYPE_ARGUMENT"></a> + <p></p> + <h4>TOKEN_TYPE_ARGUMENT = <span class="value">&nbsp;'Argument'</span></h4> + <p>[line 66]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_TYPE_FUNCTION"></a> + <p></p> + <h4>TOKEN_TYPE_FUNCTION = <span class="value">&nbsp;'Function'</span></h4> + <p>[line 64]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_TYPE_NOOP"></a> + <p></p> + <h4>TOKEN_TYPE_NOOP = <span class="value">&nbsp;'Noop'</span></h4> + <p>[line 62]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_TYPE_OPERAND"></a> + <p></p> + <h4>TOKEN_TYPE_OPERAND = <span class="value">&nbsp;'Operand'</span></h4> + <p>[line 63]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_TYPE_OPERATORINFIX"></a> + <p></p> + <h4>TOKEN_TYPE_OPERATORINFIX = <span class="value">&nbsp;'OperatorInfix'</span></h4> + <p>[line 68]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_TYPE_OPERATORPOSTFIX"></a> + <p></p> + <h4>TOKEN_TYPE_OPERATORPOSTFIX = <span class="value">&nbsp;'OperatorPostfix'</span></h4> + <p>[line 69]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_TYPE_OPERATORPREFIX"></a> + <p></p> + <h4>TOKEN_TYPE_OPERATORPREFIX = <span class="value">&nbsp;'OperatorPrefix'</span></h4> + <p>[line 67]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_TYPE_SUBEXPRESSION"></a> + <p></p> + <h4>TOKEN_TYPE_SUBEXPRESSION = <span class="value">&nbsp;'Subexpression'</span></h4> + <p>[line 65]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_TYPE_UNKNOWN"></a> + <p></p> + <h4>TOKEN_TYPE_UNKNOWN = <span class="value">&nbsp;'Unknown'</span></h4> + <p>[line 71]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTOKEN_TYPE_WHITESPACE"></a> + <p></p> + <h4>TOKEN_TYPE_WHITESPACE = <span class="value">&nbsp;'Whitespace'</span></h4> + <p>[line 70]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:20 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Function.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Function.html new file mode 100644 index 0000000..ea4c7c6 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Function.html @@ -0,0 +1,545 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_Function</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_Function</h1> +Source Location: /PHPExcel/Calculation/Function.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_Function</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_CUBE">CATEGORY_CUBE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_DATABASE">CATEGORY_DATABASE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_DATE_AND_TIME">CATEGORY_DATE_AND_TIME</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_ENGINEERING">CATEGORY_ENGINEERING</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_FINANCIAL">CATEGORY_FINANCIAL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_INFORMATION">CATEGORY_INFORMATION</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_LOGICAL">CATEGORY_LOGICAL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_LOOKUP_AND_REFERENCE">CATEGORY_LOOKUP_AND_REFERENCE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_MATH_AND_TRIG">CATEGORY_MATH_AND_TRIG</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_STATISTICAL">CATEGORY_STATISTICAL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_TEXT_AND_DATA">CATEGORY_TEXT_AND_DATA</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodgetCategory">getCategory</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodgetExcelName">getExcelName</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodgetPHPExcelName">getPHPExcelName</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodsetCategory">setCategory</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodsetExcelName">setExcelName</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodsetPHPExcelName">setPHPExcelName</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Calculation_Function<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 79]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Calculation_Function __construct( +[string +$pCategory = NULL], [string +$pExcelName = NULL], [string +$pPHPExcelName = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Calculation_Function<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCategory</b>&nbsp;&nbsp;</td> + <td>Category (represented by CATEGORY_*)</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pExcelName</b>&nbsp;&nbsp;</td> + <td>Excel function name</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pPHPExcelName</b>&nbsp;&nbsp;</td> + <td>PHPExcel function mapping</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCategory"></a> + <h3>method getCategory <span class="smalllinenumber">[line 96]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getCategory( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Category (represented by CATEGORY_*)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetExcelName"></a> + <h3>method getExcelName <span class="smalllinenumber">[line 119]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getExcelName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Excel name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPHPExcelName"></a> + <h3>method getPHPExcelName <span class="smalllinenumber">[line 137]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPHPExcelName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get PHPExcel name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCategory"></a> + <h3>method setCategory <span class="smalllinenumber">[line 106]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setCategory( +[string +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Category (represented by CATEGORY_*)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetExcelName"></a> + <h3>method setExcelName <span class="smalllinenumber">[line 128]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setExcelName( +string +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Excel name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPHPExcelName"></a> + <h3>method setPHPExcelName <span class="smalllinenumber">[line 146]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setPHPExcelName( +string +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set PHPExcel name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constCATEGORY_CUBE"></a> + <p></p> + <h4>CATEGORY_CUBE = <span class="value">&nbsp;'Cube'</span></h4> + <p>[line 38]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCATEGORY_DATABASE"></a> + <p></p> + <h4>CATEGORY_DATABASE = <span class="value">&nbsp;'Database'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCATEGORY_DATE_AND_TIME"></a> + <p></p> + <h4>CATEGORY_DATE_AND_TIME = <span class="value">&nbsp;'Date&nbsp;and&nbsp;Time'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCATEGORY_ENGINEERING"></a> + <p></p> + <h4>CATEGORY_ENGINEERING = <span class="value">&nbsp;'Engineering'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCATEGORY_FINANCIAL"></a> + <p></p> + <h4>CATEGORY_FINANCIAL = <span class="value">&nbsp;'Financial'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCATEGORY_INFORMATION"></a> + <p></p> + <h4>CATEGORY_INFORMATION = <span class="value">&nbsp;'Information'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCATEGORY_LOGICAL"></a> + <p></p> + <h4>CATEGORY_LOGICAL = <span class="value">&nbsp;'Logical'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCATEGORY_LOOKUP_AND_REFERENCE"></a> + <p></p> + <h4>CATEGORY_LOOKUP_AND_REFERENCE = <span class="value">&nbsp;'Lookup&nbsp;and&nbsp;Reference'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCATEGORY_MATH_AND_TRIG"></a> + <p></p> + <h4>CATEGORY_MATH_AND_TRIG = <span class="value">&nbsp;'Math&nbsp;and&nbsp;Trig'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCATEGORY_STATISTICAL"></a> + <p></p> + <h4>CATEGORY_STATISTICAL = <span class="value">&nbsp;'Statistical'</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCATEGORY_TEXT_AND_DATA"></a> + <p></p> + <h4>CATEGORY_TEXT_AND_DATA = <span class="value">&nbsp;'Text&nbsp;and&nbsp;Data'</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:20 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Functions.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Functions.html new file mode 100644 index 0000000..f53cbc1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Functions.html @@ -0,0 +1,1505 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_Functions</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_Functions</h1> +Source Location: /PHPExcel/Calculation/Functions.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_Functions</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#var$compatibilityMode">$compatibilityMode</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#var$ReturnDateType">$ReturnDateType</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#var$_errorCodes">$_errorCodes</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constCOMPATIBILITY_EXCEL">COMPATIBILITY_EXCEL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constCOMPATIBILITY_GNUMERIC">COMPATIBILITY_GNUMERIC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constCOMPATIBILITY_OPENOFFICE">COMPATIBILITY_OPENOFFICE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constRETURNDATE_EXCEL">RETURNDATE_EXCEL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constRETURNDATE_PHP_NUMERIC">RETURNDATE_PHP_NUMERIC</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constRETURNDATE_PHP_OBJECT">RETURNDATE_PHP_OBJECT</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodDIV0">DIV0</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodDUMMY">DUMMY</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodERROR_TYPE">ERROR_TYPE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodflattenArray">flattenArray</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodflattenArrayIndexed">flattenArrayIndexed</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodflattenSingleValue">flattenSingleValue</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodgetCompatibilityMode">getCompatibilityMode</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodgetReturnDateType">getReturnDateType</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodisCellValue">isCellValue</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodisMatrixValue">isMatrixValue</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodisValue">isValue</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_BLANK">IS_BLANK</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_ERR">IS_ERR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_ERROR">IS_ERROR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_EVEN">IS_EVEN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_LOGICAL">IS_LOGICAL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_NA">IS_NA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_NONTEXT">IS_NONTEXT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_NUMBER">IS_NUMBER</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_ODD">IS_ODD</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_TEXT">IS_TEXT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodN">N</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNA">NA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNAME">NAME</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNaN">NaN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNULL">NULL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodREF">REF</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodsetCompatibilityMode">setCompatibilityMode</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodsetReturnDateType">setReturnDateType</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodTYPE">TYPE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodVALUE">VALUE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodVERSION">VERSION</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#method_ifCondition">_ifCondition</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 59]<br /> +PHPExcel_Calculation_Functions<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$compatibilityMode"></a> + <p></p> + <h4>static $compatibilityMode = <span class="value">&nbsp;self::COMPATIBILITY_EXCEL</span></h4> + <p>[line 77]</p> + Compatibility mode to use for error checking and responses<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$ReturnDateType"></a> + <p></p> + <h4>static $ReturnDateType = <span class="value">&nbsp;self::RETURNDATE_EXCEL</span></h4> + <p>[line 85]</p> + Data Type to use when returning date values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_errorCodes"></a> + <p></p> + <h4>static $_errorCodes = <span class="value">array(&nbsp;'null'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'#NULL!',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'divisionbyzero'&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'#DIV/0!',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'value'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'#VALUE!',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'reference'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'#REF!',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'name'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'#NAME?',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'num'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'#NUM!',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'na'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'#N/A',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'gettingdata'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'#GETTING_DATA'<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)</span></h4> + <p>[line 93]</p> + List of error codes<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodDIV0"></a> + <h3>static method DIV0 <span class="smalllinenumber">[line 201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string DIV0( +)</code> + </td></tr></table> + </td></tr></table><br /> + + DIV0<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>#Not Yet Implemented</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDUMMY"></a> + <h3>static method DUMMY <span class="smalllinenumber">[line 189]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string DUMMY( +)</code> + </td></tr></table> + </td></tr></table><br /> + + DUMMY<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>#Not Yet Implemented</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodERROR_TYPE"></a> + <h3>static method ERROR_TYPE <span class="smalllinenumber">[line 329]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean ERROR_TYPE( +[mixed +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + ERROR_TYPE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodflattenArray"></a> + <h3>static method flattenArray <span class="smalllinenumber">[line 592]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array flattenArray( +array +$array)</code> + </td></tr></table> + </td></tr></table><br /> + + Convert a multi-dimensional array to a simple 1-dimensional array<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Flattened array</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$array</b>&nbsp;&nbsp;</td> + <td>Array to be flattened</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodflattenArrayIndexed"></a> + <h3>static method flattenArrayIndexed <span class="smalllinenumber">[line 624]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array flattenArrayIndexed( +array +$array)</code> + </td></tr></table> + </td></tr></table><br /> + + Convert a multi-dimensional array to a simple 1-dimensional array, but retain an element of indexing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Flattened array</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$array</b>&nbsp;&nbsp;</td> + <td>Array to be flattened</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodflattenSingleValue"></a> + <h3>static method flattenSingleValue <span class="smalllinenumber">[line 656]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed flattenSingleValue( +[mixed +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert an array to a single scalar value by extracting the first element<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Array or scalar value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCompatibilityMode"></a> + <h3>static method getCompatibilityMode <span class="smalllinenumber">[line 138]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getCompatibilityMode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the current Compatibility Mode<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Compatibility Mode Possible Return values are: PHPExcel_Calculation_Functions::COMPATIBILITY_EXCEL 'Excel' PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC 'Gnumeric' PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE 'OpenOfficeCalc'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReturnDateType"></a> + <h3>static method getReturnDateType <span class="smalllinenumber">[line 177]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getReturnDateType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the current Return Date Format for functions that return a date/time (Excel, PHP Serialized Numeric or PHP Object)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Return Date Format Possible Return values are: PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC 'P' PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT 'O' PHPExcel_Calculation_Functions::RETURNDATE_EXCEL 'E'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisCellValue"></a> + <h3>static method isCellValue <span class="smalllinenumber">[line 304]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void isCellValue( + +$idx)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$idx</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisMatrixValue"></a> + <h3>static method isMatrixValue <span class="smalllinenumber">[line 294]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void isMatrixValue( + +$idx)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$idx</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisValue"></a> + <h3>static method isValue <span class="smalllinenumber">[line 299]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void isValue( + +$idx)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$idx</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIS_BLANK"></a> + <h3>static method IS_BLANK <span class="smalllinenumber">[line 349]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean IS_BLANK( +[mixed +$value = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + IS_BLANK<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIS_ERR"></a> + <h3>static method IS_ERR <span class="smalllinenumber">[line 364]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean IS_ERR( +[mixed +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + IS_ERR<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIS_ERROR"></a> + <h3>static method IS_ERROR <span class="smalllinenumber">[line 377]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean IS_ERROR( +[mixed +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + IS_ERROR<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIS_EVEN"></a> + <h3>static method IS_EVEN <span class="smalllinenumber">[line 405]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean IS_EVEN( +[mixed +$value = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + IS_EVEN<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIS_LOGICAL"></a> + <h3>static method IS_LOGICAL <span class="smalllinenumber">[line 455]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean IS_LOGICAL( +[mixed +$value = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + IS_LOGICAL<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIS_NA"></a> + <h3>static method IS_NA <span class="smalllinenumber">[line 392]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean IS_NA( +[mixed +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + IS_NA<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIS_NONTEXT"></a> + <h3>static method IS_NONTEXT <span class="smalllinenumber">[line 481]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean IS_NONTEXT( +[mixed +$value = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + IS_NONTEXT<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIS_NUMBER"></a> + <h3>static method IS_NUMBER <span class="smalllinenumber">[line 439]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean IS_NUMBER( +[mixed +$value = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + IS_NUMBER<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIS_ODD"></a> + <h3>static method IS_ODD <span class="smalllinenumber">[line 422]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean IS_ODD( +[mixed +$value = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + IS_ODD<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIS_TEXT"></a> + <h3>static method IS_TEXT <span class="smalllinenumber">[line 468]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean IS_TEXT( +[mixed +$value = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + IS_TEXT<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodN"></a> + <h3>static method N <span class="smalllinenumber">[line 511]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static number N( +[value +$value = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + N<br /><br /><p>Returns a value converted to a number</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>N converts values listed in the following table If value is or refers to N returns A number That number A date The serial number of that date TRUE 1 FALSE 0 An error value The error value Anything else 0</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">value&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>The value you want converted</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNA"></a> + <h3>static method NA <span class="smalllinenumber">[line 219]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string NA( +)</code> + </td></tr></table> + </td></tr></table><br /> + + NA<br /><br /><p>Excel Function: =NA()</p><p>Returns the error value #N/A #N/A is the error value that means &quot;no value is available.&quot;</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>#N/A!</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNAME"></a> + <h3>static method NAME <span class="smalllinenumber">[line 247]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string NAME( +)</code> + </td></tr></table> + </td></tr></table><br /> + + NAME<br /><br /><p>Returns the error value #NAME?</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>#NAME?</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNaN"></a> + <h3>static method NaN <span class="smalllinenumber">[line 233]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string NaN( +)</code> + </td></tr></table> + </td></tr></table><br /> + + NaN<br /><br /><p>Returns the error value #NUM!</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>#NUM!</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNULL"></a> + <h3>static method NULL <span class="smalllinenumber">[line 275]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string NULL( +)</code> + </td></tr></table> + </td></tr></table><br /> + + NULL<br /><br /><p>Returns the error value #NULL!</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>#REF!</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodREF"></a> + <h3>static method REF <span class="smalllinenumber">[line 261]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string REF( +)</code> + </td></tr></table> + </td></tr></table><br /> + + REF<br /><br /><p>Returns the error value #REF!</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>#REF!</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCompatibilityMode"></a> + <h3>static method setCompatibilityMode <span class="smalllinenumber">[line 116]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setCompatibilityMode( +string +$compatibilityMode)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the Compatibility Mode<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>(Success or Failure)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$compatibilityMode</b>&nbsp;&nbsp;</td> + <td>Compatibility Mode Permitted values are: PHPExcel_Calculation_Functions::COMPATIBILITY_EXCEL 'Excel' PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC 'Gnumeric' PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE 'OpenOfficeCalc'</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReturnDateType"></a> + <h3>static method setReturnDateType <span class="smalllinenumber">[line 155]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setReturnDateType( +string +$returnDateType)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the Return Date Format used by functions that return a date/time (Excel, PHP Serialized Numeric or PHP Object)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$returnDateType</b>&nbsp;&nbsp;</td> + <td>Return Date Format Permitted values are: PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC 'P' PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT 'O' PHPExcel_Calculation_Functions::RETURNDATE_EXCEL 'E'</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTYPE"></a> + <h3>static method TYPE <span class="smalllinenumber">[line 550]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static number TYPE( +[value +$value = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + TYPE<br /><br /><p>Returns a number that identifies the type of a value</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>N converts values listed in the following table If value is or refers to N returns A number 1 Text 2 Logical Value 4 An error value 16 Array or Matrix 64</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">value&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>The value you want tested</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodVALUE"></a> + <h3>static method VALUE <span class="smalllinenumber">[line 289]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string VALUE( +)</code> + </td></tr></table> + </td></tr></table><br /> + + VALUE<br /><br /><p>Returns the error value #VALUE!</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>#VALUE!</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodVERSION"></a> + <h3>static method VERSION <span class="smalllinenumber">[line 491]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string VERSION( +)</code> + </td></tr></table> + </td></tr></table><br /> + + VERSION<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Version information</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_ifCondition"></a> + <h3>static method _ifCondition <span class="smalllinenumber">[line 309]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void _ifCondition( + +$condition)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$condition</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constCOMPATIBILITY_EXCEL"></a> + <p></p> + <h4>COMPATIBILITY_EXCEL = <span class="value">&nbsp;'Excel'</span></h4> + <p>[line 62]</p> + constants<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOMPATIBILITY_GNUMERIC"></a> + <p></p> + <h4>COMPATIBILITY_GNUMERIC = <span class="value">&nbsp;'Gnumeric'</span></h4> + <p>[line 63]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOMPATIBILITY_OPENOFFICE"></a> + <p></p> + <h4>COMPATIBILITY_OPENOFFICE = <span class="value">&nbsp;'OpenOfficeCalc'</span></h4> + <p>[line 64]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constRETURNDATE_EXCEL"></a> + <p></p> + <h4>RETURNDATE_EXCEL = <span class="value">&nbsp;'E'</span></h4> + <p>[line 68]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constRETURNDATE_PHP_NUMERIC"></a> + <p></p> + <h4>RETURNDATE_PHP_NUMERIC = <span class="value">&nbsp;'P'</span></h4> + <p>[line 66]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constRETURNDATE_PHP_OBJECT"></a> + <p></p> + <h4>RETURNDATE_PHP_OBJECT = <span class="value">&nbsp;'O'</span></h4> + <p>[line 67]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:20 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Logical.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Logical.html new file mode 100644 index 0000000..d5d6a89 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Logical.html @@ -0,0 +1,479 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_Logical</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_Logical</h1> +Source Location: /PHPExcel/Calculation/Logical.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_Logical</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodFALSE">FALSE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodIFERROR">IFERROR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodLOGICAL_AND">LOGICAL_AND</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodLOGICAL_OR">LOGICAL_OR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodNOT">NOT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodSTATEMENT_IF">STATEMENT_IF</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodTRUE">TRUE</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 46]<br /> +PHPExcel_Calculation_Logical<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodFALSE"></a> + <h3>static method FALSE <span class="smalllinenumber">[line 77]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean FALSE( +)</code> + </td></tr></table> + </td></tr></table><br /> + + FALSE<br /><br /><p>Returns the boolean FALSE.</p><p>Excel Function: =FALSE()</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>False</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIFERROR"></a> + <h3>static method IFERROR <span class="smalllinenumber">[line 281]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed IFERROR( +[mixed +$testValue = ''], [mixed +$errorpart = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + IFERROR<br /><br /><p>Excel Function: =IFERROR(testValue,errorpart)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The value of errorpart or testValue determined by error condition</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$testValue</b>&nbsp;&nbsp;</td> + <td>Value to check, is also the value returned when no error</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$errorpart</b>&nbsp;&nbsp;</td> + <td>Value to return when testValue is an error condition</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLOGICAL_AND"></a> + <h3>static method LOGICAL_AND <span class="smalllinenumber">[line 103]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean LOGICAL_AND( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + LOGICAL_AND<br /><br /><p>Returns boolean TRUE if all its arguments are TRUE; returns FALSE if one or more argument is FALSE.</p><p>Excel Function: =AND(logical1[,logical2[, ...]])</p><p>The arguments must evaluate to logical values such as TRUE or FALSE, or the arguments must be arrays or references that contain logical values.</p><p>Boolean arguments are treated as True or False as appropriate Integer or floating point arguments are treated as True, except for 0 or 0.0 which are False If any argument value is a string, or a Null, the function returns a #VALUE! error, unless the string holds the value TRUE or FALSE, in which case it is evaluated as the corresponding boolean value</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The logical AND of the arguments.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLOGICAL_OR"></a> + <h3>static method LOGICAL_OR <span class="smalllinenumber">[line 158]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean LOGICAL_OR( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + LOGICAL_OR<br /><br /><p>Returns boolean TRUE if any argument is TRUE; returns FALSE if all arguments are FALSE.</p><p>Excel Function: =OR(logical1[,logical2[, ...]])</p><p>The arguments must evaluate to logical values such as TRUE or FALSE, or the arguments must be arrays or references that contain logical values.</p><p>Boolean arguments are treated as True or False as appropriate Integer or floating point arguments are treated as True, except for 0 or 0.0 which are False If any argument value is a string, or a Null, the function returns a #VALUE! error, unless the string holds the value TRUE or FALSE, in which case it is evaluated as the corresponding boolean value</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The logical OR of the arguments.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNOT"></a> + <h3>static method NOT <span class="smalllinenumber">[line 212]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean NOT( +[mixed +$logical = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + NOT<br /><br /><p>Returns the boolean inverse of the argument.</p><p>Excel Function: =NOT(logical)</p><p>The argument must evaluate to a logical value such as TRUE or FALSE</p><p>Boolean arguments are treated as True or False as appropriate Integer or floating point arguments are treated as True, except for 0 or 0.0 which are False If any argument value is a string, or a Null, the function returns a #VALUE! error, unless the string holds the value TRUE or FALSE, in which case it is evaluated as the corresponding boolean value</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The boolean inverse of the argument.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$logical</b>&nbsp;&nbsp;</td> + <td>A value or expression that can be evaluated to TRUE or FALSE</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSTATEMENT_IF"></a> + <h3>static method STATEMENT_IF <span class="smalllinenumber">[line 260]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed STATEMENT_IF( +[mixed +$condition = TRUE], [mixed +$returnIfTrue = 0], [mixed +$returnIfFalse = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + STATEMENT_IF<br /><br /><p>Returns one value if a condition you specify evaluates to TRUE and another value if it evaluates to FALSE.</p><p>Excel Function: =IF(condition[,returnIfTrue[,returnIfFalse]])</p><p>Condition is any value or expression that can be evaluated to TRUE or FALSE. For example, A10=100 is a logical expression; if the value in cell A10 is equal to 100, the expression evaluates to TRUE. Otherwise, the expression evaluates to FALSE. This argument can use any comparison calculation operator. ReturnIfTrue is the value that is returned if condition evaluates to TRUE. For example, if this argument is the text string &quot;Within budget&quot; and the condition argument evaluates to TRUE, then the IF function returns the text &quot;Within budget&quot; If condition is TRUE and ReturnIfTrue is blank, this argument returns 0 (zero). To display the word TRUE, use the logical value TRUE for this argument. ReturnIfTrue can be another formula. ReturnIfFalse is the value that is returned if condition evaluates to FALSE. For example, if this argument is the text string &quot;Over budget&quot; and the condition argument evaluates to FALSE, then the IF function returns the text &quot;Over budget&quot;. If condition is FALSE and ReturnIfFalse is omitted, then the logical value FALSE is returned. If condition is FALSE and ReturnIfFalse is blank, then the value 0 (zero) is returned. ReturnIfFalse can be another formula.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The value of returnIfTrue or returnIfFalse determined by condition</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$condition</b>&nbsp;&nbsp;</td> + <td>Condition to evaluate</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$returnIfTrue</b>&nbsp;&nbsp;</td> + <td>Value to return when condition is true</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$returnIfFalse</b>&nbsp;&nbsp;</td> + <td>Optional value to return when condition is false</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTRUE"></a> + <h3>static method TRUE <span class="smalllinenumber">[line 60]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean TRUE( +)</code> + </td></tr></table> + </td></tr></table><br /> + + TRUE<br /><br /><p>Returns the boolean TRUE.</p><p>Excel Function: =TRUE()</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>True</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html new file mode 100644 index 0000000..7062644 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html @@ -0,0 +1,889 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_LookupRef</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_LookupRef</h1> +Source Location: /PHPExcel/Calculation/LookupRef.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_LookupRef</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCELL_ADDRESS">CELL_ADDRESS</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCHOOSE">CHOOSE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCOLUMN">COLUMN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCOLUMNS">COLUMNS</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodHYPERLINK">HYPERLINK</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodINDEX">INDEX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodINDIRECT">INDIRECT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodLOOKUP">LOOKUP</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodMATCH">MATCH</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodOFFSET">OFFSET</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodROW">ROW</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodROWS">ROWS</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodTRANSPOSE">TRANSPOSE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodVLOOKUP">VLOOKUP</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 46]<br /> +PHPExcel_Calculation_LookupRef<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodCELL_ADDRESS"></a> + <h3>static method CELL_ADDRESS <span class="smalllinenumber">[line 70]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string CELL_ADDRESS( +row +$row, column +$column, [relativity +$relativity = 1], [referenceStyle +$referenceStyle = True], [sheetText +$sheetText = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + CELL_ADDRESS<br /><br /><p>Creates a cell address as text, given specified row and column numbers.</p><p>Excel Function: =ADDRESS(row, column, [relativity], [referenceStyle], [sheetText])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">row&nbsp;&nbsp;</td> + <td><b>$row</b>&nbsp;&nbsp;</td> + <td>Row number to use in the cell reference</td> + </tr> + <tr> + <td class="type">column&nbsp;&nbsp;</td> + <td><b>$column</b>&nbsp;&nbsp;</td> + <td>Column number to use in the cell reference</td> + </tr> + <tr> + <td class="type">relativity&nbsp;&nbsp;</td> + <td><b>$relativity</b>&nbsp;&nbsp;</td> + <td>Flag indicating the type of reference to return <ol><li>or omitted Absolute</li><li>Absolute row; relative column</li><li>Relative row; absolute column</li><li>Relative</li></ol></td> + </tr> + <tr> + <td class="type">referenceStyle&nbsp;&nbsp;</td> + <td><b>$referenceStyle</b>&nbsp;&nbsp;</td> + <td>A logical value that specifies the A1 or R1C1 reference style. TRUE or omitted CELL_ADDRESS returns an A1-style reference FALSE CELL_ADDRESS returns an R1C1-style reference</td> + </tr> + <tr> + <td class="type">sheetText&nbsp;&nbsp;</td> + <td><b>$sheetText</b>&nbsp;&nbsp;</td> + <td>Optional Name of worksheet to use</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCHOOSE"></a> + <h3>static method CHOOSE <span class="smalllinenumber">[line 447]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed CHOOSE( +index_num +0, value1... +1)</code> + </td></tr></table> + </td></tr></table><br /> + + CHOOSE<br /><br /><p>Uses lookup_value to return a value from the list of value arguments. Use CHOOSE to select one of up to 254 values based on the lookup_value.</p><p>Excel Function: =CHOOSE(index_num, value1, [value2], ...)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The selected value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">index_num&nbsp;&nbsp;</td> + <td><b>0</b>&nbsp;&nbsp;</td> + <td>Specifies which value argument is selected. Index_num must be a number between 1 and 254, or a formula or reference to a cell containing a number between 1 and 254.</td> + </tr> + <tr> + <td class="type">value1...&nbsp;&nbsp;</td> + <td><b>1</b>&nbsp;&nbsp;</td> + <td>Value1 is required, subsequent values are optional. Between 1 to 254 value arguments from which CHOOSE selects a value or an action to perform based on index_num. The arguments can be numbers, cell references, defined names, formulas, functions, or text.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOLUMN"></a> + <h3>static method COLUMN <span class="smalllinenumber">[line 112]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer COLUMN( +[cellAddress +$cellAddress = Null])</code> + </td></tr></table> + </td></tr></table><br /> + + COLUMN<br /><br /><p>Returns the column number of the given cell reference If the cell reference is a range of cells, COLUMN returns the column numbers of each column in the reference as a horizontal array. If cell reference is omitted, and the function is being called through the calculation engine, then it is assumed to be the reference of the cell in which the COLUMN function appears; otherwise this function returns 0.</p><p>Excel Function: =COLUMN([cellAddress])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>or array of integer</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">cellAddress&nbsp;&nbsp;</td> + <td><b>$cellAddress</b>&nbsp;&nbsp;</td> + <td>A reference to a range of cells for which you want the column numbers</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOLUMNS"></a> + <h3>static method COLUMNS <span class="smalllinenumber">[line 152]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer COLUMNS( +[cellAddress +$cellAddress = Null])</code> + </td></tr></table> + </td></tr></table><br /> + + COLUMNS<br /><br /><p>Returns the number of columns in an array or reference.</p><p>Excel Function: =COLUMNS(cellAddress)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The number of columns in cellAddress</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">cellAddress&nbsp;&nbsp;</td> + <td><b>$cellAddress</b>&nbsp;&nbsp;</td> + <td>An array or array formula, or a reference to a range of cells for which you want the number of columns</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodHYPERLINK"></a> + <h3>static method HYPERLINK <span class="smalllinenumber">[line 258]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed HYPERLINK( +[string +$linkURL = ''], [string +$displayName = null], [PHPExcel_Cell +$pCell = null])</code> + </td></tr></table> + </td></tr></table><br /> + + HYPERLINK<br /><br /><p>Excel Function: =HYPERLINK(linkURL,displayName)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The value of $displayName (or $linkURL if $displayName was blank)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$linkURL</b>&nbsp;&nbsp;</td> + <td>Value to check, is also the value returned when no error</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$displayName</b>&nbsp;&nbsp;</td> + <td>Value to return when testValue is an error condition</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$pCell</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodINDEX"></a> + <h3>static method INDEX <span class="smalllinenumber">[line 599]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed INDEX( +range_array +$arrayValues, [row_num +$rowNum = 0], [column_num +$columnNum = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + INDEX<br /><br /><p>Uses an index to choose a value from a reference or array</p><p>Excel Function: =INDEX(range_array, row_num, [column_num])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>the value of a specified cell or array of cells</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">range_array&nbsp;&nbsp;</td> + <td><b>$arrayValues</b>&nbsp;&nbsp;</td> + <td>A range of cells or an array constant</td> + </tr> + <tr> + <td class="type">row_num&nbsp;&nbsp;</td> + <td><b>$rowNum</b>&nbsp;&nbsp;</td> + <td>The row in array from which to return a value. If row_num is omitted, column_num is required.</td> + </tr> + <tr> + <td class="type">column_num&nbsp;&nbsp;</td> + <td><b>$columnNum</b>&nbsp;&nbsp;</td> + <td>The column in array from which to return a value. If column_num is omitted, row_num is required.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodINDIRECT"></a> + <h3>static method INDIRECT <span class="smalllinenumber">[line 296]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed INDIRECT( +[cellAddress +$cellAddress = Null], [PHPExcel_Cell +$pCell = null])</code> + </td></tr></table> + </td></tr></table><br /> + + INDIRECT<br /><br /><p>Returns the reference specified by a text string. References are immediately evaluated to display their contents.</p><p>Excel Function: =INDIRECT(cellAddress)</p><p>NOTE - INDIRECT() does not yet support the optional a1 parameter introduced in Excel 2010</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The cells referenced by cellAddress</td> + </tr> + <tr> + <td><b>todo:</b>&nbsp;&nbsp;</td><td>Support for the optional a1 parameter introduced in Excel 2010</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">cellAddress&nbsp;&nbsp;</td> + <td><b>$cellAddress</b>&nbsp;&nbsp;</td> + <td>An array or array formula, or a reference to a range of cells for which you want the number of rows</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$pCell</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLOOKUP"></a> + <h3>static method LOOKUP <span class="smalllinenumber">[line 749]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed LOOKUP( +lookup_value +$lookup_value, lookup_vector +$lookup_vector, [result_vector +$result_vector = null])</code> + </td></tr></table> + </td></tr></table><br /> + + LOOKUP The LOOKUP function searches for value either from a one-row or one-column range or from an array.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The value of the found cell</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">lookup_value&nbsp;&nbsp;</td> + <td><b>$lookup_value</b>&nbsp;&nbsp;</td> + <td>The value that you want to match in lookup_array</td> + </tr> + <tr> + <td class="type">lookup_vector&nbsp;&nbsp;</td> + <td><b>$lookup_vector</b>&nbsp;&nbsp;</td> + <td>The range of cells being searched</td> + </tr> + <tr> + <td class="type">result_vector&nbsp;&nbsp;</td> + <td><b>$result_vector</b>&nbsp;&nbsp;</td> + <td>The column from which the matching value must be returned</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMATCH"></a> + <h3>static method MATCH <span class="smalllinenumber">[line 486]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer MATCH( +lookup_value +$lookup_value, lookup_array +$lookup_array, [match_type +$match_type = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + MATCH<br /><br /><p>The MATCH function searches for a specified item in a range of cells</p><p>Excel Function: =MATCH(lookup_value, lookup_array, [match_type])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The relative position of the found item</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">lookup_value&nbsp;&nbsp;</td> + <td><b>$lookup_value</b>&nbsp;&nbsp;</td> + <td>The value that you want to match in lookup_array</td> + </tr> + <tr> + <td class="type">lookup_array&nbsp;&nbsp;</td> + <td><b>$lookup_array</b>&nbsp;&nbsp;</td> + <td>The range of cells being searched</td> + </tr> + <tr> + <td class="type">match_type&nbsp;&nbsp;</td> + <td><b>$match_type</b>&nbsp;&nbsp;</td> + <td>The number -1, 0, or 1. -1 means above, 0 means exact match, 1 means below. If match_type is 1 or -1, the list has to be ordered.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodOFFSET"></a> + <h3>static method OFFSET <span class="smalllinenumber">[line 361]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string OFFSET( +[cellAddress +$cellAddress = Null], [rows +$rows = 0], [cols +$columns = 0], [height +$height = null], [width +$width = null])</code> + </td></tr></table> + </td></tr></table><br /> + + OFFSET<br /><br /><p>Returns a reference to a range that is a specified number of rows and columns from a cell or range of cells. The reference that is returned can be a single cell or a range of cells. You can specify the number of rows and the number of columns to be returned.</p><p>Excel Function: =OFFSET(cellAddress, rows, cols, [height], [width])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>A reference to a cell or range of cells</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">cellAddress&nbsp;&nbsp;</td> + <td><b>$cellAddress</b>&nbsp;&nbsp;</td> + <td>The reference from which you want to base the offset. Reference must refer to a cell or range of adjacent cells; otherwise, OFFSET returns the #VALUE! error value.</td> + </tr> + <tr> + <td class="type">rows&nbsp;&nbsp;</td> + <td><b>$rows</b>&nbsp;&nbsp;</td> + <td>The number of rows, up or down, that you want the upper-left cell to refer to. Using 5 as the rows argument specifies that the upper-left cell in the reference is five rows below reference. Rows can be positive (which means below the starting reference) or negative (which means above the starting reference).</td> + </tr> + <tr> + <td class="type">cols&nbsp;&nbsp;</td> + <td><b>$columns</b>&nbsp;&nbsp;</td> + <td>The number of columns, to the left or right, that you want the upper-left cell of the result to refer to. Using 5 as the cols argument specifies that the upper-left cell in the reference is five columns to the right of reference. Cols can be positive (which means to the right of the starting reference) or negative (which means to the left of the starting reference).</td> + </tr> + <tr> + <td class="type">height&nbsp;&nbsp;</td> + <td><b>$height</b>&nbsp;&nbsp;</td> + <td>The height, in number of rows, that you want the returned reference to be. Height must be a positive number.</td> + </tr> + <tr> + <td class="type">width&nbsp;&nbsp;</td> + <td><b>$width</b>&nbsp;&nbsp;</td> + <td>The width, in number of columns, that you want the returned reference to be. Width must be a positive number.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodROW"></a> + <h3>static method ROW <span class="smalllinenumber">[line 186]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer ROW( +[cellAddress +$cellAddress = Null])</code> + </td></tr></table> + </td></tr></table><br /> + + ROW<br /><br /><p>Returns the row number of the given cell reference If the cell reference is a range of cells, ROW returns the row numbers of each row in the reference as a vertical array. If cell reference is omitted, and the function is being called through the calculation engine, then it is assumed to be the reference of the cell in which the ROW function appears; otherwise this function returns 0.</p><p>Excel Function: =ROW([cellAddress])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>or array of integer</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">cellAddress&nbsp;&nbsp;</td> + <td><b>$cellAddress</b>&nbsp;&nbsp;</td> + <td>A reference to a range of cells for which you want the row numbers</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodROWS"></a> + <h3>static method ROWS <span class="smalllinenumber">[line 227]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer ROWS( +[cellAddress +$cellAddress = Null])</code> + </td></tr></table> + </td></tr></table><br /> + + ROWS<br /><br /><p>Returns the number of rows in an array or reference.</p><p>Excel Function: =ROWS(cellAddress)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The number of rows in cellAddress</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">cellAddress&nbsp;&nbsp;</td> + <td><b>$cellAddress</b>&nbsp;&nbsp;</td> + <td>An array or array formula, or a reference to a range of cells for which you want the number of rows</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTRANSPOSE"></a> + <h3>static method TRANSPOSE <span class="smalllinenumber">[line 653]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array TRANSPOSE( +array +$matrixData)</code> + </td></tr></table> + </td></tr></table><br /> + + TRANSPOSE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Unlike the Excel TRANSPOSE function, which will only work on a single row or column, this function will transpose a full matrix.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$matrixData</b>&nbsp;&nbsp;</td> + <td>A matrix of values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodVLOOKUP"></a> + <h3>static method VLOOKUP <span class="smalllinenumber">[line 689]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed VLOOKUP( +lookup_value +$lookup_value, lookup_array +$lookup_array, index_number +$index_number, [not_exact_match +$not_exact_match = true])</code> + </td></tr></table> + </td></tr></table><br /> + + VLOOKUP The VLOOKUP function searches for value in the left-most column of lookup_array and returns the value in the same row based on the index_number.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The value of the found cell</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">lookup_value&nbsp;&nbsp;</td> + <td><b>$lookup_value</b>&nbsp;&nbsp;</td> + <td>The value that you want to match in lookup_array</td> + </tr> + <tr> + <td class="type">lookup_array&nbsp;&nbsp;</td> + <td><b>$lookup_array</b>&nbsp;&nbsp;</td> + <td>The range of cells being searched</td> + </tr> + <tr> + <td class="type">index_number&nbsp;&nbsp;</td> + <td><b>$index_number</b>&nbsp;&nbsp;</td> + <td>The column number in table_array from which the matching value must be returned. The first column is 1.</td> + </tr> + <tr> + <td class="type">not_exact_match&nbsp;&nbsp;</td> + <td><b>$not_exact_match</b>&nbsp;&nbsp;</td> + <td>Determines if you are looking for an exact match based on lookup_value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html new file mode 100644 index 0000000..f0c4fa1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html @@ -0,0 +1,1797 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_MathTrig</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_MathTrig</h1> +Source Location: /PHPExcel/Calculation/MathTrig.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_MathTrig</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodATAN2">ATAN2</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodCEILING">CEILING</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodCOMBIN">COMBIN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodEVEN">EVEN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodFACT">FACT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodFACTDOUBLE">FACTDOUBLE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodFLOOR">FLOOR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodGCD">GCD</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodINT">INT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodLCM">LCM</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodLOG_BASE">LOG_BASE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMDETERM">MDETERM</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMINVERSE">MINVERSE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMMULT">MMULT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMOD">MOD</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMROUND">MROUND</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMULTINOMIAL">MULTINOMIAL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodODD">ODD</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodPOWER">POWER</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodPRODUCT">PRODUCT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodQUOTIENT">QUOTIENT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodRAND">RAND</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodROMAN">ROMAN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodROUNDDOWN">ROUNDDOWN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodROUNDUP">ROUNDUP</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSERIESSUM">SERIESSUM</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSIGN">SIGN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSQRTPI">SQRTPI</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUBTOTAL">SUBTOTAL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUM">SUM</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMIF">SUMIF</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMPRODUCT">SUMPRODUCT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMSQ">SUMSQ</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMX2MY2">SUMX2MY2</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMX2PY2">SUMX2PY2</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMXMY2">SUMXMY2</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodTRUNC">TRUNC</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 46]<br /> +PHPExcel_Calculation_MathTrig<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodATAN2"></a> + <h3>static method ATAN2 <span class="smalllinenumber">[line 100]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float ATAN2( +[float +$xCoordinate = NULL], [float +$yCoordinate = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + ATAN2<br /><br /><p>This function calculates the arc tangent of the two variables x and y. It is similar to calculating the arc tangent of y x, except that the signs of both arguments are used to determine the quadrant of the result. The arctangent is the angle from the x-axis to a line containing the origin (0, 0) and a point with coordinates (xCoordinate, yCoordinate). The angle is given in radians between -pi and pi, excluding -pi.</p><p>Note that the Excel ATAN2() function accepts its arguments in the reverse order to the standard PHP atan2() function, so we need to reverse them here before calling the PHP atan() function.</p><p>Excel Function: ATAN2(xCoordinate,yCoordinate)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The inverse tangent of the specified x- and y-coordinates.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$xCoordinate</b>&nbsp;&nbsp;</td> + <td>The x-coordinate of the point.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$yCoordinate</b>&nbsp;&nbsp;</td> + <td>The y-coordinate of the point.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCEILING"></a> + <h3>static method CEILING <span class="smalllinenumber">[line 139]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float CEILING( +float +$number, [float +$significance = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + CEILING<br /><br /><p>Returns number rounded up, away from zero, to the nearest multiple of significance. For example, if you want to avoid using pennies in your prices and your product is priced at $4.42, use the formula =CEILING(4.42,0.05) to round prices up to the nearest nickel.</p><p>Excel Function: CEILING(number[,significance])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Rounded Number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>The number you want to round.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$significance</b>&nbsp;&nbsp;</td> + <td>The multiple to which you want to round.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOMBIN"></a> + <h3>static method COMBIN <span class="smalllinenumber">[line 176]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int COMBIN( +int +$numObjs, int +$numInSet)</code> + </td></tr></table> + </td></tr></table><br /> + + COMBIN<br /><br /><p>Returns the number of combinations for a given number of items. Use COMBIN to determine the total possible number of groups for a given number of items.</p><p>Excel Function: COMBIN(numObjs,numInSet)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Number of combinations</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$numObjs</b>&nbsp;&nbsp;</td> + <td>Number of different objects</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$numInSet</b>&nbsp;&nbsp;</td> + <td>Number of objects in each combination</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodEVEN"></a> + <h3>static method EVEN <span class="smalllinenumber">[line 209]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int EVEN( +float +$number)</code> + </td></tr></table> + </td></tr></table><br /> + + EVEN<br /><br /><p>Returns number rounded up to the nearest even integer. You can use this function for processing items that come in twos. For example, a packing crate accepts rows of one or two items. The crate is full when the number of items, rounded up to the nearest two, matches the crate's capacity.</p><p>Excel Function: EVEN(number)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Rounded Number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>Number to round</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodFACT"></a> + <h3>static method FACT <span class="smalllinenumber">[line 240]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int FACT( +float +$factVal)</code> + </td></tr></table> + </td></tr></table><br /> + + FACT<br /><br /><p>Returns the factorial of a number. The factorial of a number is equal to 1*2*3*...* number.</p><p>Excel Function: FACT(factVal)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Factorial</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$factVal</b>&nbsp;&nbsp;</td> + <td>Factorial Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodFACTDOUBLE"></a> + <h3>static method FACTDOUBLE <span class="smalllinenumber">[line 277]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int FACTDOUBLE( +float +$factVal)</code> + </td></tr></table> + </td></tr></table><br /> + + FACTDOUBLE<br /><br /><p>Returns the double factorial of a number.</p><p>Excel Function: FACTDOUBLE(factVal)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Double Factorial</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$factVal</b>&nbsp;&nbsp;</td> + <td>Factorial Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodFLOOR"></a> + <h3>static method FLOOR <span class="smalllinenumber">[line 310]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float FLOOR( +float +$number, [float +$significance = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + FLOOR<br /><br /><p>Rounds number down, toward zero, to the nearest multiple of significance.</p><p>Excel Function: FLOOR(number[,significance])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Rounded Number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>Number to round</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$significance</b>&nbsp;&nbsp;</td> + <td>Significance</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodGCD"></a> + <h3>static method GCD <span class="smalllinenumber">[line 347]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer GCD( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + GCD<br /><br /><p>Returns the greatest common divisor of a series of numbers. The greatest common divisor is the largest integer that divides both number1 and number2 without a remainder.</p><p>Excel Function: GCD(number1[,number2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Greatest Common Divisor</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodINT"></a> + <h3>static method INT <span class="smalllinenumber">[line 421]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer INT( +float +$number)</code> + </td></tr></table> + </td></tr></table><br /> + + INT<br /><br /><p>Casts a floating point value to an integer</p><p>Excel Function: INT(number)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Integer value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>Number to cast to an integer</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLCM"></a> + <h3>static method LCM <span class="smalllinenumber">[line 452]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int LCM( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + LCM<br /><br /><p>Returns the lowest common multiplier of a series of numbers The least common multiple is the smallest positive integer that is a multiple of all integer arguments number1, number2, and so on. Use LCM to add fractions with different denominators.</p><p>Excel Function: LCM(number1[,number2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Lowest Common Multiplier</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLOG_BASE"></a> + <h3>static method LOG_BASE <span class="smalllinenumber">[line 502]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float LOG_BASE( +[ +$number = NULL], [float +$base = 10], float +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + LOG_BASE<br /><br /><p>Returns the logarithm of a number to a specified base. The default base is 10.</p><p>Excel Function: LOG(number[,base])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>The positive real number for which you want the logarithm</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$base</b>&nbsp;&nbsp;</td> + <td>The base of the logarithm. If base is omitted, it is assumed to be 10.</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMDETERM"></a> + <h3>static method MDETERM <span class="smalllinenumber">[line 527]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float MDETERM( +array +$matrixValues)</code> + </td></tr></table> + </td></tr></table><br /> + + MDETERM<br /><br /><p>Returns the matrix determinant of an array.</p><p>Excel Function: MDETERM(array)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$matrixValues</b>&nbsp;&nbsp;</td> + <td>A matrix of values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMINVERSE"></a> + <h3>static method MINVERSE <span class="smalllinenumber">[line 569]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array MINVERSE( +array +$matrixValues)</code> + </td></tr></table> + </td></tr></table><br /> + + MINVERSE<br /><br /><p>Returns the inverse matrix for the matrix stored in an array.</p><p>Excel Function: MINVERSE(array)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$matrixValues</b>&nbsp;&nbsp;</td> + <td>A matrix of values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMMULT"></a> + <h3>static method MMULT <span class="smalllinenumber">[line 605]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array MMULT( +array +$matrixData1, array +$matrixData2)</code> + </td></tr></table> + </td></tr></table><br /> + + MMULT<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$matrixData1</b>&nbsp;&nbsp;</td> + <td>A matrix of values</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$matrixData2</b>&nbsp;&nbsp;</td> + <td>A matrix of values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMOD"></a> + <h3>static method MOD <span class="smalllinenumber">[line 658]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int MOD( +[int +$a = 1], [int +$b = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + MOD<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Remainder</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$a</b>&nbsp;&nbsp;</td> + <td>Dividend</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$b</b>&nbsp;&nbsp;</td> + <td>Divisor</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMROUND"></a> + <h3>static method MROUND <span class="smalllinenumber">[line 683]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float MROUND( +float +$number, int +$multiple)</code> + </td></tr></table> + </td></tr></table><br /> + + MROUND<br /><br /><p>Rounds a number to the nearest multiple of a specified value</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Rounded Number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>Number to round</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$multiple</b>&nbsp;&nbsp;</td> + <td>Multiple to which you want to round $number</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMULTINOMIAL"></a> + <h3>static method MULTINOMIAL <span class="smalllinenumber">[line 709]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float MULTINOMIAL( +array +0)</code> + </td></tr></table> + </td></tr></table><br /> + + MULTINOMIAL<br /><br /><p>Returns the ratio of the factorial of a sum of values to the product of factorials.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>0</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodODD"></a> + <h3>static method ODD <span class="smalllinenumber">[line 743]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int ODD( +float +$number)</code> + </td></tr></table> + </td></tr></table><br /> + + ODD<br /><br /><p>Returns number rounded up to the nearest odd integer.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Rounded Number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>Number to round</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPOWER"></a> + <h3>static method POWER <span class="smalllinenumber">[line 778]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float POWER( +[float +$x = 0], [float +$y = 2])</code> + </td></tr></table> + </td></tr></table><br /> + + POWER<br /><br /><p>Computes x raised to the power y.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$y</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPRODUCT"></a> + <h3>static method PRODUCT <span class="smalllinenumber">[line 808]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float PRODUCT( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + PRODUCT<br /><br /><p>PRODUCT returns the product of all the values and cells referenced in the argument list.</p><p>Excel Function: PRODUCT(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodQUOTIENT"></a> + <h3>static method QUOTIENT <span class="smalllinenumber">[line 846]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float QUOTIENT( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + QUOTIENT<br /><br /><p>QUOTIENT function returns the integer portion of a division. Numerator is the divided number and denominator is the divisor.</p><p>Excel Function: QUOTIENT(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodRAND"></a> + <h3>static method RAND <span class="smalllinenumber">[line 878]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int RAND( +[int +$min = 0], [int +$max = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + RAND<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Random number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$min</b>&nbsp;&nbsp;</td> + <td>Minimal value</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$max</b>&nbsp;&nbsp;</td> + <td>Maximal value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodROMAN"></a> + <h3>static method ROMAN <span class="smalllinenumber">[line 890]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void ROMAN( + +$aValue, [ +$style = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$aValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$style</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodROUNDDOWN"></a> + <h3>static method ROUNDDOWN <span class="smalllinenumber">[line 953]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float ROUNDDOWN( +float +$number, int +$digits)</code> + </td></tr></table> + </td></tr></table><br /> + + ROUNDDOWN<br /><br /><p>Rounds a number down to a specified number of decimal places</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Rounded Number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>Number to round</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$digits</b>&nbsp;&nbsp;</td> + <td>Number of digits to which you want to round $number</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodROUNDUP"></a> + <h3>static method ROUNDUP <span class="smalllinenumber">[line 928]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float ROUNDUP( +float +$number, int +$digits)</code> + </td></tr></table> + </td></tr></table><br /> + + ROUNDUP<br /><br /><p>Rounds a number up to a specified number of decimal places</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Rounded Number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>Number to round</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$digits</b>&nbsp;&nbsp;</td> + <td>Number of digits to which you want to round $number</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSERIESSUM"></a> + <h3>static method SERIESSUM <span class="smalllinenumber">[line 980]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SERIESSUM( +float +$x, float +$n, float +$m, array +3)</code> + </td></tr></table> + </td></tr></table><br /> + + SERIESSUM<br /><br /><p>Returns the sum of a power series</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>Input value to the power series</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td>Initial power to which you want to raise $x</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$m</b>&nbsp;&nbsp;</td> + <td>Step by which to increase $n for each term in the series</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>3</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSIGN"></a> + <h3>static method SIGN <span class="smalllinenumber">[line 1018]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int SIGN( +float +$number)</code> + </td></tr></table> + </td></tr></table><br /> + + SIGN<br /><br /><p>Determines the sign of a number. Returns 1 if the number is positive, zero (0) if the number is 0, and -1 if the number is negative.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>sign value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>Number to round</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSQRTPI"></a> + <h3>static method SQRTPI <span class="smalllinenumber">[line 1041]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SQRTPI( +float +$number)</code> + </td></tr></table> + </td></tr></table><br /> + + SQRTPI<br /><br /><p>Returns the square root of (number * pi).</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Square Root of Number * Pi</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>Number</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSUBTOTAL"></a> + <h3>static method SUBTOTAL <span class="smalllinenumber">[line 1064]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SUBTOTAL( +int +0, array +1)</code> + </td></tr></table> + </td></tr></table><br /> + + SUBTOTAL<br /><br /><p>Returns a subtotal in a list or database.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>0</b>&nbsp;&nbsp;</td> + <td>the number 1 to 11 that specifies which function to use in calculating subtotals within a list.</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>1</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSUM"></a> + <h3>static method SUM <span class="smalllinenumber">[line 1124]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SUM( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + SUM<br /><br /><p>SUM computes the sum of all the values and cells referenced in the argument list.</p><p>Excel Function: SUM(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSUMIF"></a> + <h3>static method SUMIF <span class="smalllinenumber">[line 1155]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SUMIF( + +$aArgs, string +$condition, [ +$sumArgs = array()], mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + SUMIF<br /><br /><p>Counts the number of cells that contain numbers within the list of arguments</p><p>Excel Function: SUMIF(value1[,value2[, ...]],condition)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$condition</b>&nbsp;&nbsp;</td> + <td>The criteria that defines which cells will be summed.</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$aArgs</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$sumArgs</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSUMPRODUCT"></a> + <h3>static method SUMPRODUCT <span class="smalllinenumber">[line 1191]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SUMPRODUCT( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + SUMPRODUCT<br /><br /><p>Excel Function: SUMPRODUCT(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSUMSQ"></a> + <h3>static method SUMSQ <span class="smalllinenumber">[line 1235]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SUMSQ( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + SUMSQ<br /><br /><p>SUMSQ returns the sum of the squares of the arguments</p><p>Excel Function: SUMSQ(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSUMX2MY2"></a> + <h3>static method SUMX2MY2 <span class="smalllinenumber">[line 1258]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SUMX2MY2( + +$matrixData1, +$matrixData2, mixed +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + SUMX2MY2<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$matrixData1</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$matrixData2</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSUMX2PY2"></a> + <h3>static method SUMX2PY2 <span class="smalllinenumber">[line 1287]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SUMX2PY2( + +$matrixData1, +$matrixData2, mixed +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + SUMX2PY2<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$matrixData1</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$matrixData2</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSUMXMY2"></a> + <h3>static method SUMXMY2 <span class="smalllinenumber">[line 1316]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SUMXMY2( + +$matrixData1, +$matrixData2, mixed +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + SUMXMY2<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$matrixData1</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$matrixData2</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTRUNC"></a> + <h3>static method TRUNC <span class="smalllinenumber">[line 1348]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float TRUNC( +[float +$value = 0], [int +$digits = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + TRUNC<br /><br /><p>Truncates value to the number of fractional digits by number_digits.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Truncated value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$digits</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:40 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html new file mode 100644 index 0000000..a661772 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html @@ -0,0 +1,3593 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_Statistical</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_Statistical</h1> +Source Location: /PHPExcel/Calculation/Statistical.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_Statistical</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVEDEV">AVEDEV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVERAGE">AVERAGE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVERAGEA">AVERAGEA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVERAGEIF">AVERAGEIF</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodBETADIST">BETADIST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodBETAINV">BETAINV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodBINOMDIST">BINOMDIST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCHIDIST">CHIDIST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCHIINV">CHIINV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCONFIDENCE">CONFIDENCE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCORREL">CORREL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNT">COUNT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNTA">COUNTA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNTBLANK">COUNTBLANK</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNTIF">COUNTIF</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOVAR">COVAR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCRITBINOM">CRITBINOM</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodDEVSQ">DEVSQ</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodEXPONDIST">EXPONDIST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodFISHER">FISHER</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodFISHERINV">FISHERINV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodFORECAST">FORECAST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGAMMADIST">GAMMADIST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGAMMAINV">GAMMAINV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGAMMALN">GAMMALN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGEOMEAN">GEOMEAN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGROWTH">GROWTH</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodHARMEAN">HARMEAN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodHYPGEOMDIST">HYPGEOMDIST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodINTERCEPT">INTERCEPT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodKURT">KURT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLARGE">LARGE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLINEST">LINEST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLOGEST">LOGEST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLOGINV">LOGINV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLOGNORMDIST">LOGNORMDIST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMAX">MAX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMAXA">MAXA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMAXIF">MAXIF</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMEDIAN">MEDIAN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMIN">MIN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMINA">MINA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMINIF">MINIF</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMODE">MODE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNEGBINOMDIST">NEGBINOMDIST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMDIST">NORMDIST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMINV">NORMINV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMSDIST">NORMSDIST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMSINV">NORMSINV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPERCENTILE">PERCENTILE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPERCENTRANK">PERCENTRANK</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPERMUT">PERMUT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPOISSON">POISSON</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodQUARTILE">QUARTILE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodRANK">RANK</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodRSQ">RSQ</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSKEW">SKEW</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSLOPE">SLOPE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSMALL">SMALL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTANDARDIZE">STANDARDIZE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEV">STDEV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEVA">STDEVA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEVP">STDEVP</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEVPA">STDEVPA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTEYX">STEYX</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTDIST">TDIST</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTINV">TINV</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTREND">TREND</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTRIMMEAN">TRIMMEAN</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARA">VARA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARFunc">VARFunc</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARP">VARP</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARPA">VARPA</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodWEIBULL">WEIBULL</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodZTEST">ZTEST</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 62]<br /> +PHPExcel_Calculation_Statistical<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodAVEDEV"></a> + <h3>static method AVEDEV <span class="smalllinenumber">[line 700]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float AVEDEV( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + AVEDEV<br /><br /><p>Returns the average of the absolute deviations of data points from their mean. AVEDEV is a measure of the variability in a data set.</p><p>Excel Function: AVEDEV(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodAVERAGE"></a> + <h3>static method AVERAGE <span class="smalllinenumber">[line 748]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float AVERAGE( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + AVERAGE<br /><br /><p>Returns the average (arithmetic mean) of the arguments</p><p>Excel Function: AVERAGE(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodAVERAGEA"></a> + <h3>static method AVERAGEA <span class="smalllinenumber">[line 790]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float AVERAGEA( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + AVERAGEA<br /><br /><p>Returns the average of its arguments, including numbers, text, and logical values</p><p>Excel Function: AVERAGEA(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodAVERAGEIF"></a> + <h3>static method AVERAGEIF <span class="smalllinenumber">[line 839]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float AVERAGEIF( + +$aArgs, string +$condition, [ +$averageArgs = array()], mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + AVERAGEIF<br /><br /><p>Returns the average value from a range of cells that contain numbers within the list of arguments</p><p>Excel Function: AVERAGEIF(value1[,value2[, ...]],condition)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$condition</b>&nbsp;&nbsp;</td> + <td>The criteria that defines which cells will be checked.</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$aArgs</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$averageArgs</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodBETADIST"></a> + <h3>static method BETADIST <span class="smalllinenumber">[line 883]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float BETADIST( +float +$value, float +$alpha, float +$beta, [ +$rMin = 0], [ +$rMax = 1], boolean +$cumulative)</code> + </td></tr></table> + </td></tr></table><br /> + + BETADIST<br /><br /><p>Returns the beta distribution.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value at which you want to evaluate the distribution</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$alpha</b>&nbsp;&nbsp;</td> + <td>Parameter to the distribution</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$beta</b>&nbsp;&nbsp;</td> + <td>Parameter to the distribution</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$cumulative</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$rMin</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$rMax</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodBETAINV"></a> + <h3>static method BETAINV <span class="smalllinenumber">[line 919]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float BETAINV( +float +$probability, float +$alpha, float +$beta, [ +$rMin = 0], [ +$rMax = 1], boolean +$cumulative)</code> + </td></tr></table> + </td></tr></table><br /> + + BETAINV<br /><br /><p>Returns the inverse of the beta distribution.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$probability</b>&nbsp;&nbsp;</td> + <td>Probability at which you want to evaluate the distribution</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$alpha</b>&nbsp;&nbsp;</td> + <td>Parameter to the distribution</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$beta</b>&nbsp;&nbsp;</td> + <td>Parameter to the distribution</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$cumulative</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$rMin</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$rMax</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodBINOMDIST"></a> + <h3>static method BINOMDIST <span class="smalllinenumber">[line 977]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float BINOMDIST( +float +$value, float +$trials, float +$probability, boolean +$cumulative)</code> + </td></tr></table> + </td></tr></table><br /> + + BINOMDIST<br /><br /><p>Returns the individual term binomial distribution probability. Use BINOMDIST in problems with a fixed number of tests or trials, when the outcomes of any trial are only success or failure, when trials are independent, and when the probability of success is constant throughout the experiment. For example, BINOMDIST can calculate the probability that two of the next three babies born are male.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>todo:</b>&nbsp;&nbsp;</td><td>Cumulative distribution function</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Number of successes in trials</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$trials</b>&nbsp;&nbsp;</td> + <td>Number of trials</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$probability</b>&nbsp;&nbsp;</td> + <td>Probability of success on each trial</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$cumulative</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCHIDIST"></a> + <h3>static method CHIDIST <span class="smalllinenumber">[line 1014]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float CHIDIST( +float +$value, float +$degrees)</code> + </td></tr></table> + </td></tr></table><br /> + + CHIDIST<br /><br /><p>Returns the one-tailed probability of the chi-squared distribution.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value for the function</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$degrees</b>&nbsp;&nbsp;</td> + <td>degrees of freedom</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCHIINV"></a> + <h3>static method CHIINV <span class="smalllinenumber">[line 1043]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float CHIINV( +float +$probability, float +$degrees)</code> + </td></tr></table> + </td></tr></table><br /> + + CHIINV<br /><br /><p>Returns the one-tailed probability of the chi-squared distribution.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$probability</b>&nbsp;&nbsp;</td> + <td>Probability for the function</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$degrees</b>&nbsp;&nbsp;</td> + <td>degrees of freedom</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCONFIDENCE"></a> + <h3>static method CONFIDENCE <span class="smalllinenumber">[line 1101]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float CONFIDENCE( +float +$alpha, float +$stdDev, float +$size)</code> + </td></tr></table> + </td></tr></table><br /> + + CONFIDENCE<br /><br /><p>Returns the confidence interval for a population mean</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$alpha</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$stdDev</b>&nbsp;&nbsp;</td> + <td>Standard Deviation</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$size</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCORREL"></a> + <h3>static method CORREL <span class="smalllinenumber">[line 1128]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float CORREL( +array +$yValues, [array +$xValues = null])</code> + </td></tr></table> + </td></tr></table><br /> + + CORREL<br /><br /><p>Returns covariance, the average of the products of deviations for each data point pair.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series X</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOUNT"></a> + <h3>static method COUNT <span class="smalllinenumber">[line 1162]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int COUNT( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + COUNT<br /><br /><p>Counts the number of cells that contain numbers within the list of arguments</p><p>Excel Function: COUNT(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOUNTA"></a> + <h3>static method COUNTA <span class="smalllinenumber">[line 1197]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int COUNTA( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + COUNTA<br /><br /><p>Counts the number of cells that are not empty within the list of arguments</p><p>Excel Function: COUNTA(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOUNTBLANK"></a> + <h3>static method COUNTBLANK <span class="smalllinenumber">[line 1228]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int COUNTBLANK( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + COUNTBLANK<br /><br /><p>Counts the number of empty cells within the list of arguments</p><p>Excel Function: COUNTBLANK(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOUNTIF"></a> + <h3>static method COUNTIF <span class="smalllinenumber">[line 1260]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int COUNTIF( + +$aArgs, string +$condition, mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + COUNTIF<br /><br /><p>Counts the number of cells that contain numbers within the list of arguments</p><p>Excel Function: COUNTIF(value1[,value2[, ...]],condition)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$condition</b>&nbsp;&nbsp;</td> + <td>The criteria that defines which cells will be counted.</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$aArgs</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCOVAR"></a> + <h3>static method COVAR <span class="smalllinenumber">[line 1290]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float COVAR( +array +$yValues, array +$xValues)</code> + </td></tr></table> + </td></tr></table><br /> + + COVAR<br /><br /><p>Returns covariance, the average of the products of deviations for each data point pair.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series X</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCRITBINOM"></a> + <h3>static method CRITBINOM <span class="smalllinenumber">[line 1327]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int CRITBINOM( +float +$trials, float +$probability, float +$alpha)</code> + </td></tr></table> + </td></tr></table><br /> + + CRITBINOM<br /><br /><p>Returns the smallest value for which the cumulative binomial distribution is greater than or equal to a criterion value</p><p>See http://support.microsoft.com/kb/828117/ for details of the algorithm used</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>todo:</b>&nbsp;&nbsp;</td><td>Warning. This implementation differs from the algorithm detailed on the MS web site in that $CumPGuessMinus1 = $CumPGuess - 1 rather than $CumPGuess - $PGuess This eliminates a potential endless loop error, but may have an adverse affect on the accuracy of the function (although all my tests have so far returned correct results).</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$trials</b>&nbsp;&nbsp;</td> + <td>number of Bernoulli trials</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$probability</b>&nbsp;&nbsp;</td> + <td>probability of a success on each trial</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$alpha</b>&nbsp;&nbsp;</td> + <td>criterion value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDEVSQ"></a> + <h3>static method DEVSQ <span class="smalllinenumber">[line 1431]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float DEVSQ( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + DEVSQ<br /><br /><p>Returns the sum of squares of deviations of data points from their sample mean.</p><p>Excel Function: DEVSQ(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodEXPONDIST"></a> + <h3>static method EXPONDIST <span class="smalllinenumber">[line 1479]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float EXPONDIST( +float +$value, float +$lambda, boolean +$cumulative)</code> + </td></tr></table> + </td></tr></table><br /> + + EXPONDIST<br /><br /><p>Returns the exponential distribution. Use EXPONDIST to model the time between events, such as how long an automated bank teller takes to deliver cash. For example, you can use EXPONDIST to determine the probability that the process takes at most 1 minute.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value of the function</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$lambda</b>&nbsp;&nbsp;</td> + <td>The parameter value</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$cumulative</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodFISHER"></a> + <h3>static method FISHER <span class="smalllinenumber">[line 1510]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float FISHER( +float +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + FISHER<br /><br /><p>Returns the Fisher transformation at x. This transformation produces a function that is normally distributed rather than skewed. Use this function to perform hypothesis testing on the correlation coefficient.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodFISHERINV"></a> + <h3>static method FISHERINV <span class="smalllinenumber">[line 1533]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float FISHERINV( +float +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + FISHERINV<br /><br /><p>Returns the inverse of the Fisher transformation. Use this transformation when analyzing correlations between ranges or arrays of data. If y = FISHER(x), then FISHERINV(y) = x.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodFORECAST"></a> + <h3>static method FORECAST <span class="smalllinenumber">[line 1553]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float FORECAST( +float +$xValue, array +$yValues, array +$xValues)</code> + </td></tr></table> + </td></tr></table><br /> + + FORECAST<br /><br /><p>Calculates, or predicts, a future value by using existing values. The predicted value is a y-value for a given x-value.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$xValue</b>&nbsp;&nbsp;</td> + <td>Value of X for which we want to find Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series X</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodGAMMADIST"></a> + <h3>static method GAMMADIST <span class="smalllinenumber">[line 1588]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float GAMMADIST( +float +$value, float +$a, float +$b, boolean +$cumulative)</code> + </td></tr></table> + </td></tr></table><br /> + + GAMMADIST<br /><br /><p>Returns the gamma distribution.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value at which you want to evaluate the distribution</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$a</b>&nbsp;&nbsp;</td> + <td>Parameter to the distribution</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$b</b>&nbsp;&nbsp;</td> + <td>Parameter to the distribution</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$cumulative</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodGAMMAINV"></a> + <h3>static method GAMMAINV <span class="smalllinenumber">[line 1620]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float GAMMAINV( +float +$probability, float +$alpha, float +$beta)</code> + </td></tr></table> + </td></tr></table><br /> + + GAMMAINV<br /><br /><p>Returns the inverse of the beta distribution.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$probability</b>&nbsp;&nbsp;</td> + <td>Probability at which you want to evaluate the distribution</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$alpha</b>&nbsp;&nbsp;</td> + <td>Parameter to the distribution</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$beta</b>&nbsp;&nbsp;</td> + <td>Parameter to the distribution</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodGAMMALN"></a> + <h3>static method GAMMALN <span class="smalllinenumber">[line 1678]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float GAMMALN( +float +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + GAMMALN<br /><br /><p>Returns the natural logarithm of the gamma function.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodGEOMEAN"></a> + <h3>static method GEOMEAN <span class="smalllinenumber">[line 1706]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float GEOMEAN( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + GEOMEAN<br /><br /><p>Returns the geometric mean of an array or range of positive data. For example, you can use GEOMEAN to calculate average growth rate given compound interest with variable rates.</p><p>Excel Function: GEOMEAN(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodGROWTH"></a> + <h3>static method GROWTH <span class="smalllinenumber">[line 1731]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array GROWTH( +array +$yValues, [array +$xValues = array()], [array +$newValues = array()], [boolean +$const = True])</code> + </td></tr></table> + </td></tr></table><br /> + + GROWTH<br /><br /><p>Returns values along a predicted emponential trend</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of float</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series X</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$newValues</b>&nbsp;&nbsp;</td> + <td>of mixed Values of X for which we want to find Y</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td>A logical value specifying whether to force the intersect to equal 0.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodHARMEAN"></a> + <h3>static method HARMEAN <span class="smalllinenumber">[line 1765]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float HARMEAN( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + HARMEAN<br /><br /><p>Returns the harmonic mean of a data set. The harmonic mean is the reciprocal of the arithmetic mean of reciprocals.</p><p>Excel Function: HARMEAN(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodHYPGEOMDIST"></a> + <h3>static method HYPGEOMDIST <span class="smalllinenumber">[line 1812]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float HYPGEOMDIST( +float +$sampleSuccesses, float +$sampleNumber, float +$populationSuccesses, float +$populationNumber)</code> + </td></tr></table> + </td></tr></table><br /> + + HYPGEOMDIST<br /><br /><p>Returns the hypergeometric distribution. HYPGEOMDIST returns the probability of a given number of sample successes, given the sample size, population successes, and population size.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$sampleSuccesses</b>&nbsp;&nbsp;</td> + <td>Number of successes in the sample</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$sampleNumber</b>&nbsp;&nbsp;</td> + <td>Size of the sample</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$populationSuccesses</b>&nbsp;&nbsp;</td> + <td>Number of successes in the population</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$populationNumber</b>&nbsp;&nbsp;</td> + <td>Population size</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodINTERCEPT"></a> + <h3>static method INTERCEPT <span class="smalllinenumber">[line 1845]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float INTERCEPT( +array +$yValues, array +$xValues)</code> + </td></tr></table> + </td></tr></table><br /> + + INTERCEPT<br /><br /><p>Calculates the point at which a line will intersect the y-axis by using existing x-values and y-values.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series X</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodKURT"></a> + <h3>static method KURT <span class="smalllinenumber">[line 1874]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float KURT( +array +0)</code> + </td></tr></table> + </td></tr></table><br /> + + KURT<br /><br /><p>Returns the kurtosis of a data set. Kurtosis characterizes the relative peakedness or flatness of a distribution compared with the normal distribution. Positive kurtosis indicates a relatively peaked distribution. Negative kurtosis indicates a relatively flat distribution.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>0</b>&nbsp;&nbsp;</td> + <td>Data Series</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLARGE"></a> + <h3>static method LARGE <span class="smalllinenumber">[line 1919]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float LARGE( +mixed +$arg,..., int +$entry)</code> + </td></tr></table> + </td></tr></table><br /> + + LARGE<br /><br /><p>Returns the nth largest value in a data set. You can use this function to select a value based on its relative standing.</p><p>Excel Function: LARGE(value1[,value2[, ...]],entry)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$entry</b>&nbsp;&nbsp;</td> + <td>Position (ordered from the largest) in the array or range of data to return</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLINEST"></a> + <h3>static method LINEST <span class="smalllinenumber">[line 1957]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array LINEST( +array +$yValues, [array +$xValues = null], [boolean +$const = True], [boolean +$stats = False])</code> + </td></tr></table> + </td></tr></table><br /> + + LINEST<br /><br /><p>Calculates the statistics for a line by using the &quot;least squares&quot; method to calculate a straight line that best fits your data, and then returns an array that describes the line.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series X</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td>A logical value specifying whether to force the intersect to equal 0.</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$stats</b>&nbsp;&nbsp;</td> + <td>A logical value specifying whether to return additional regression statistics.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLOGEST"></a> + <h3>static method LOGEST <span class="smalllinenumber">[line 2010]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array LOGEST( +array +$yValues, [array +$xValues = null], [boolean +$const = True], [boolean +$stats = False])</code> + </td></tr></table> + </td></tr></table><br /> + + LOGEST<br /><br /><p>Calculates an exponential curve that best fits the X and Y data series, and then returns an array that describes the line.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series X</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td>A logical value specifying whether to force the intersect to equal 0.</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$stats</b>&nbsp;&nbsp;</td> + <td>A logical value specifying whether to return additional regression statistics.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLOGINV"></a> + <h3>static method LOGINV <span class="smalllinenumber">[line 2069]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float LOGINV( + +$probability, +$mean, +$stdDev, float +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + LOGINV<br /><br /><p>Returns the inverse of the normal cumulative distribution</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>todo:</b>&nbsp;&nbsp;</td><td>Try implementing P J Acklam's refinement algorithm for greater accuracy if I can get my head round the mathematics (as described at) http://home.online.no/~pjacklam/notes/invnorm/</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$probability</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$mean</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$stdDev</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLOGNORMDIST"></a> + <h3>static method LOGNORMDIST <span class="smalllinenumber">[line 2093]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float LOGNORMDIST( +float +$value, +$mean, +$stdDev)</code> + </td></tr></table> + </td></tr></table><br /> + + LOGNORMDIST<br /><br /><p>Returns the cumulative lognormal distribution of x, where ln(x) is normally distributed with parameters mean and standard_dev.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$mean</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$stdDev</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMAX"></a> + <h3>static method MAX <span class="smalllinenumber">[line 2122]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float MAX( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + MAX<br /><br /><p>MAX returns the value of the element of the values passed that has the highest value, with negative numbers considered smaller than positive numbers.</p><p>Excel Function: MAX(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMAXA"></a> + <h3>static method MAXA <span class="smalllinenumber">[line 2158]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float MAXA( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + MAXA<br /><br /><p>Returns the greatest value in a list of arguments, including numbers, text, and logical values</p><p>Excel Function: MAXA(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMAXIF"></a> + <h3>static method MAXIF <span class="smalllinenumber">[line 2200]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float MAXIF( + +$aArgs, string +$condition, [ +$sumArgs = array()], mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + MAXIF<br /><br /><p>Counts the maximum value within a range of cells that contain numbers within the list of arguments</p><p>Excel Function: MAXIF(value1[,value2[, ...]],condition)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$condition</b>&nbsp;&nbsp;</td> + <td>The criteria that defines which cells will be checked.</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$aArgs</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$sumArgs</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMEDIAN"></a> + <h3>static method MEDIAN <span class="smalllinenumber">[line 2239]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float MEDIAN( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + MEDIAN<br /><br /><p>Returns the median of the given numbers. The median is the number in the middle of a set of numbers.</p><p>Excel Function: MEDIAN(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMIN"></a> + <h3>static method MIN <span class="smalllinenumber">[line 2284]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float MIN( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + MIN<br /><br /><p>MIN returns the value of the element of the values passed that has the smallest value, with negative numbers considered smaller than positive numbers.</p><p>Excel Function: MIN(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMINA"></a> + <h3>static method MINA <span class="smalllinenumber">[line 2320]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float MINA( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + MINA<br /><br /><p>Returns the smallest value in a list of arguments, including numbers, text, and logical values</p><p>Excel Function: MINA(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMINIF"></a> + <h3>static method MINIF <span class="smalllinenumber">[line 2362]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float MINIF( + +$aArgs, string +$condition, [ +$sumArgs = array()], mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + MINIF<br /><br /><p>Returns the minimum value within a range of cells that contain numbers within the list of arguments</p><p>Excel Function: MINIF(value1[,value2[, ...]],condition)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$condition</b>&nbsp;&nbsp;</td> + <td>The criteria that defines which cells will be checked.</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$aArgs</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$sumArgs</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMODE"></a> + <h3>static method MODE <span class="smalllinenumber">[line 2435]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float MODE( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + MODE<br /><br /><p>Returns the most frequently occurring, or repetitive, value in an array or range of data</p><p>Excel Function: MODE(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNEGBINOMDIST"></a> + <h3>static method NEGBINOMDIST <span class="smalllinenumber">[line 2474]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float NEGBINOMDIST( +float +$failures, float +$successes, float +$probability)</code> + </td></tr></table> + </td></tr></table><br /> + + NEGBINOMDIST<br /><br /><p>Returns the negative binomial distribution. NEGBINOMDIST returns the probability that there will be number_f failures before the number_s-th success, when the constant probability of a success is probability_s. This function is similar to the binomial distribution, except that the number of successes is fixed, and the number of trials is variable. Like the binomial, trials are assumed to be independent.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$failures</b>&nbsp;&nbsp;</td> + <td>Number of Failures</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$successes</b>&nbsp;&nbsp;</td> + <td>Threshold number of Successes</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$probability</b>&nbsp;&nbsp;</td> + <td>Probability of success on each trial</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNORMDIST"></a> + <h3>static method NORMDIST <span class="smalllinenumber">[line 2511]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float NORMDIST( +float +$value, float +$mean, float +$stdDev, boolean +$cumulative)</code> + </td></tr></table> + </td></tr></table><br /> + + NORMDIST<br /><br /><p>Returns the normal distribution for the specified mean and standard deviation. This function has a very wide range of applications in statistics, including hypothesis testing.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$mean</b>&nbsp;&nbsp;</td> + <td>Mean Value</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$stdDev</b>&nbsp;&nbsp;</td> + <td>Standard Deviation</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$cumulative</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNORMINV"></a> + <h3>static method NORMINV <span class="smalllinenumber">[line 2543]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float NORMINV( + +$probability, float +$mean, float +$stdDev, float +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + NORMINV<br /><br /><p>Returns the inverse of the normal cumulative distribution for the specified mean and standard deviation.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$mean</b>&nbsp;&nbsp;</td> + <td>Mean Value</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$stdDev</b>&nbsp;&nbsp;</td> + <td>Standard Deviation</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$probability</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNORMSDIST"></a> + <h3>static method NORMSDIST <span class="smalllinenumber">[line 2571]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float NORMSDIST( +float +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + NORMSDIST<br /><br /><p>Returns the standard normal cumulative distribution function. The distribution has a mean of 0 (zero) and a standard deviation of one. Use this function in place of a table of standard normal curve areas.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodNORMSINV"></a> + <h3>static method NORMSINV <span class="smalllinenumber">[line 2586]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float NORMSINV( +float +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + NORMSINV<br /><br /><p>Returns the inverse of the standard normal cumulative distribution</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPERCENTILE"></a> + <h3>static method PERCENTILE <span class="smalllinenumber">[line 2605]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float PERCENTILE( +mixed +$arg,..., float +$entry)</code> + </td></tr></table> + </td></tr></table><br /> + + PERCENTILE<br /><br /><p>Returns the nth percentile of values in a range..</p><p>Excel Function: PERCENTILE(value1[,value2[, ...]],entry)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$entry</b>&nbsp;&nbsp;</td> + <td>Percentile value in the range 0..1, inclusive.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPERCENTRANK"></a> + <h3>static method PERCENTRANK <span class="smalllinenumber">[line 2651]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float PERCENTRANK( +array +$valueSet, number +$value, [number +$significance = 3])</code> + </td></tr></table> + </td></tr></table><br /> + + PERCENTRANK<br /><br /><p>Returns the rank of a value in a data set as a percentage of the data set.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$valueSet</b>&nbsp;&nbsp;</td> + <td>of number An array of, or a reference to, a list of numbers.</td> + </tr> + <tr> + <td class="type">number&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>The number whose rank you want to find.</td> + </tr> + <tr> + <td class="type">number&nbsp;&nbsp;</td> + <td><b>$significance</b>&nbsp;&nbsp;</td> + <td>The number of significant digits for the returned percentage value.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPERMUT"></a> + <h3>static method PERMUT <span class="smalllinenumber">[line 2700]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int PERMUT( +int +$numObjs, int +$numInSet)</code> + </td></tr></table> + </td></tr></table><br /> + + PERMUT<br /><br /><p>Returns the number of permutations for a given number of objects that can be selected from number objects. A permutation is any set or subset of objects or events where internal order is significant. Permutations are different from combinations, for which the internal order is not significant. Use this function for lottery-style probability calculations.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Number of permutations</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$numObjs</b>&nbsp;&nbsp;</td> + <td>Number of different objects</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$numInSet</b>&nbsp;&nbsp;</td> + <td>Number of objects in each permutation</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPOISSON"></a> + <h3>static method POISSON <span class="smalllinenumber">[line 2728]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float POISSON( +float +$value, float +$mean, boolean +$cumulative)</code> + </td></tr></table> + </td></tr></table><br /> + + POISSON<br /><br /><p>Returns the Poisson distribution. A common application of the Poisson distribution is predicting the number of events over a specific time, such as the number of cars arriving at a toll plaza in 1 minute.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$mean</b>&nbsp;&nbsp;</td> + <td>Mean Value</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$cumulative</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodQUARTILE"></a> + <h3>static method QUARTILE <span class="smalllinenumber">[line 2766]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float QUARTILE( +mixed +$arg,..., int +$entry)</code> + </td></tr></table> + </td></tr></table><br /> + + QUARTILE<br /><br /><p>Returns the quartile of a data set.</p><p>Excel Function: QUARTILE(value1[,value2[, ...]],entry)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$entry</b>&nbsp;&nbsp;</td> + <td>Quartile value in the range 1..3, inclusive.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodRANK"></a> + <h3>static method RANK <span class="smalllinenumber">[line 2793]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float RANK( +number +$value, array +$valueSet, [mixed +$order = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + RANK<br /><br /><p>Returns the rank of a number in a list of numbers.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">number&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>The number whose rank you want to find.</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$valueSet</b>&nbsp;&nbsp;</td> + <td>of number An array of, or a reference to, a list of numbers.</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$order</b>&nbsp;&nbsp;</td> + <td>Order to sort the values in the value set</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodRSQ"></a> + <h3>static method RSQ <span class="smalllinenumber">[line 2827]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float RSQ( +array +$yValues, array +$xValues)</code> + </td></tr></table> + </td></tr></table><br /> + + RSQ<br /><br /><p>Returns the square of the Pearson product moment correlation coefficient through data points in known_y's and known_x's.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series X</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSKEW"></a> + <h3>static method SKEW <span class="smalllinenumber">[line 2856]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SKEW( +array +0)</code> + </td></tr></table> + </td></tr></table><br /> + + SKEW<br /><br /><p>Returns the skewness of a distribution. Skewness characterizes the degree of asymmetry of a distribution around its mean. Positive skewness indicates a distribution with an asymmetric tail extending toward more positive values. Negative skewness indicates a distribution with an asymmetric tail extending toward more negative values.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>0</b>&nbsp;&nbsp;</td> + <td>Data Series</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSLOPE"></a> + <h3>static method SLOPE <span class="smalllinenumber">[line 2892]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SLOPE( +array +$yValues, array +$xValues)</code> + </td></tr></table> + </td></tr></table><br /> + + SLOPE<br /><br /><p>Returns the slope of the linear regression line through data points in known_y's and known_x's.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series X</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSMALL"></a> + <h3>static method SMALL <span class="smalllinenumber">[line 2925]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float SMALL( +mixed +$arg,..., int +$entry)</code> + </td></tr></table> + </td></tr></table><br /> + + SMALL<br /><br /><p>Returns the nth smallest value in a data set. You can use this function to select a value based on its relative standing.</p><p>Excel Function: SMALL(value1[,value2[, ...]],entry)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$entry</b>&nbsp;&nbsp;</td> + <td>Position (ordered from the smallest) in the array or range of data to return</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSTANDARDIZE"></a> + <h3>static method STANDARDIZE <span class="smalllinenumber">[line 2961]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float STANDARDIZE( +float +$value, float +$mean, float +$stdDev)</code> + </td></tr></table> + </td></tr></table><br /> + + STANDARDIZE<br /><br /><p>Returns a normalized value from a distribution characterized by mean and standard_dev.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Standardized value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to normalize</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$mean</b>&nbsp;&nbsp;</td> + <td>Mean Value</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$stdDev</b>&nbsp;&nbsp;</td> + <td>Standard Deviation</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSTDEV"></a> + <h3>static method STDEV <span class="smalllinenumber">[line 2990]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float STDEV( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + STDEV<br /><br /><p>Estimates standard deviation based on a sample. The standard deviation is a measure of how widely values are dispersed from the average value (the mean).</p><p>Excel Function: STDEV(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSTDEVA"></a> + <h3>static method STDEVA <span class="smalllinenumber">[line 3037]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float STDEVA( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + STDEVA<br /><br /><p>Estimates standard deviation based on a sample, including numbers, text, and logical values</p><p>Excel Function: STDEVA(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSTDEVP"></a> + <h3>static method STDEVP <span class="smalllinenumber">[line 3089]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float STDEVP( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + STDEVP<br /><br /><p>Calculates standard deviation based on the entire population</p><p>Excel Function: STDEVP(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSTDEVPA"></a> + <h3>static method STDEVPA <span class="smalllinenumber">[line 3136]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float STDEVPA( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + STDEVPA<br /><br /><p>Calculates standard deviation based on the entire population, including numbers, text, and logical values</p><p>Excel Function: STDEVPA(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSTEYX"></a> + <h3>static method STEYX <span class="smalllinenumber">[line 3184]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float STEYX( +array +$yValues, array +$xValues)</code> + </td></tr></table> + </td></tr></table><br /> + + STEYX<br /><br /><p>Returns the standard error of the predicted y-value for each x in the regression.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series X</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTDIST"></a> + <h3>static method TDIST <span class="smalllinenumber">[line 3212]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float TDIST( +float +$value, float +$degrees, float +$tails)</code> + </td></tr></table> + </td></tr></table><br /> + + TDIST<br /><br /><p>Returns the probability of Student's T distribution.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value for the function</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$degrees</b>&nbsp;&nbsp;</td> + <td>degrees of freedom</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$tails</b>&nbsp;&nbsp;</td> + <td>number of tails (1 or 2)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTINV"></a> + <h3>static method TINV <span class="smalllinenumber">[line 3272]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float TINV( +float +$probability, float +$degrees)</code> + </td></tr></table> + </td></tr></table><br /> + + TINV<br /><br /><p>Returns the one-tailed probability of the chi-squared distribution.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$probability</b>&nbsp;&nbsp;</td> + <td>Probability for the function</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$degrees</b>&nbsp;&nbsp;</td> + <td>degrees of freedom</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTREND"></a> + <h3>static method TREND <span class="smalllinenumber">[line 3329]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array TREND( +array +$yValues, [array +$xValues = array()], [array +$newValues = array()], [boolean +$const = True])</code> + </td></tr></table> + </td></tr></table><br /> + + TREND<br /><br /><p>Returns values along a linear trend</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of float</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series Y</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>of mixed Data Series X</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$newValues</b>&nbsp;&nbsp;</td> + <td>of mixed Values of X for which we want to find Y</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td>A logical value specifying whether to force the intersect to equal 0.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTRIMMEAN"></a> + <h3>static method TRIMMEAN <span class="smalllinenumber">[line 3365]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float TRIMMEAN( +mixed +$arg,..., float +$discard)</code> + </td></tr></table> + </td></tr></table><br /> + + TRIMMEAN<br /><br /><p>Returns the mean of the interior of a data set. TRIMMEAN calculates the mean taken by excluding a percentage of data points from the top and bottom tails of a data set.</p><p>Excel Function: TRIMEAN(value1[,value2[, ...]],$discard)</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$discard</b>&nbsp;&nbsp;</td> + <td>Percentage to discard</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodVARA"></a> + <h3>static method VARA <span class="smalllinenumber">[line 3449]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float VARA( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + VARA<br /><br /><p>Estimates variance based on a sample, including numbers, text, and logical values</p><p>Excel Function: VARA(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodVARFunc"></a> + <h3>static method VARFunc <span class="smalllinenumber">[line 3407]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float VARFunc( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + VARFunc<br /><br /><p>Estimates variance based on a sample.</p><p>Excel Function: VAR(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodVARP"></a> + <h3>static method VARP <span class="smalllinenumber">[line 3502]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float VARP( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + VARP<br /><br /><p>Calculates variance based on the entire population</p><p>Excel Function: VARP(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodVARPA"></a> + <h3>static method VARPA <span class="smalllinenumber">[line 3544]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float VARPA( +mixed +$arg,...)</code> + </td></tr></table> + </td></tr></table><br /> + + VARPA<br /><br /><p>Calculates variance based on the entire population, including numbers, text, and logical values</p><p>Excel Function: VARPA(value1[,value2[, ...]])</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$arg,...</b>&nbsp;&nbsp;</td> + <td>Data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodWEIBULL"></a> + <h3>static method WEIBULL <span class="smalllinenumber">[line 3597]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float WEIBULL( +float +$value, float +$alpha, float +$beta, boolean +$cumulative)</code> + </td></tr></table> + </td></tr></table><br /> + + WEIBULL<br /><br /><p>Returns the Weibull distribution. Use this distribution in reliability analysis, such as calculating a device's mean time to failure.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$alpha</b>&nbsp;&nbsp;</td> + <td>Alpha Parameter</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$beta</b>&nbsp;&nbsp;</td> + <td>Beta Parameter</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$cumulative</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodZTEST"></a> + <h3>static method ZTEST <span class="smalllinenumber">[line 3631]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float ZTEST( + +$dataSet, +$m0, [ +$sigma = null], float +$value, float +$alpha, float +$beta, boolean +$cumulative)</code> + </td></tr></table> + </td></tr></table><br /> + + ZTEST<br /><br /><p>Returns the Weibull distribution. Use this distribution in reliability analysis, such as calculating a device's mean time to failure.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$alpha</b>&nbsp;&nbsp;</td> + <td>Alpha Parameter</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$beta</b>&nbsp;&nbsp;</td> + <td>Beta Parameter</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$cumulative</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dataSet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$m0</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$sigma</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:48 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_TextData.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_TextData.html new file mode 100644 index 0000000..6152d52 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_TextData.html @@ -0,0 +1,1076 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_TextData</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_TextData</h1> +Source Location: /PHPExcel/Calculation/TextData.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Calculation_TextData</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodASCIICODE">ASCIICODE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodCHARACTER">CHARACTER</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodCONCATENATE">CONCATENATE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodDOLLAR">DOLLAR</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodFIXEDFORMAT">FIXEDFORMAT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodLEFT">LEFT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodLOWERCASE">LOWERCASE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodMID">MID</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodPROPERCASE">PROPERCASE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodREPLACE">REPLACE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodRETURNSTRING">RETURNSTRING</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodRIGHT">RIGHT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSEARCHINSENSITIVE">SEARCHINSENSITIVE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSEARCHSENSITIVE">SEARCHSENSITIVE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSTRINGLENGTH">STRINGLENGTH</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSUBSTITUTE">SUBSTITUTE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodTEXTFORMAT">TEXTFORMAT</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodTRIMNONPRINTABLE">TRIMNONPRINTABLE</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodTRIMSPACES">TRIMSPACES</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodUPPERCASE">UPPERCASE</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 46]<br /> +PHPExcel_Calculation_TextData<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodASCIICODE"></a> + <h3>static method ASCIICODE <span class="smalllinenumber">[line 139]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int ASCIICODE( + +$characters, string +$character)</code> + </td></tr></table> + </td></tr></table><br /> + + ASCIICODE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$character</b>&nbsp;&nbsp;</td> + <td>Value</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$characters</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCHARACTER"></a> + <h3>static method CHARACTER <span class="smalllinenumber">[line 74]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int CHARACTER( +string +$character)</code> + </td></tr></table> + </td></tr></table><br /> + + CHARACTER<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$character</b>&nbsp;&nbsp;</td> + <td>Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCONCATENATE"></a> + <h3>static method CONCATENATE <span class="smalllinenumber">[line 167]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string CONCATENATE( +)</code> + </td></tr></table> + </td></tr></table><br /> + + CONCATENATE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodDOLLAR"></a> + <h3>static method DOLLAR <span class="smalllinenumber">[line 201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string DOLLAR( +[float +$value = 0], [int +$decimals = 2])</code> + </td></tr></table> + </td></tr></table><br /> + + DOLLAR<br /><br /><p>This function converts a number to text using currency format, with the decimals rounded to the specified place. The format used is $#,##0.00_);($#,##0.00)..</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>The value to format</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$decimals</b>&nbsp;&nbsp;</td> + <td>The number of digits to display to the right of the decimal point. If decimals is negative, number is rounded to the left of the decimal point. If you omit decimals, it is assumed to be 2</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodFIXEDFORMAT"></a> + <h3>static method FIXEDFORMAT <span class="smalllinenumber">[line 302]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean FIXEDFORMAT( +mixed +$value, [ +$decimals = 2], [ +$no_commas = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + FIXEDFORMAT<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$decimals</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$no_commas</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLEFT"></a> + <h3>static method LEFT <span class="smalllinenumber">[line 330]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string LEFT( +[string +$value = ''], [int +$chars = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + LEFT<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$chars</b>&nbsp;&nbsp;</td> + <td>Number of characters</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLOWERCASE"></a> + <h3>static method LOWERCASE <span class="smalllinenumber">[line 436]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string LOWERCASE( +string +$mixedCaseString)</code> + </td></tr></table> + </td></tr></table><br /> + + LOWERCASE<br /><br /><p>Converts a string value to upper case.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$mixedCaseString</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodMID"></a> + <h3>static method MID <span class="smalllinenumber">[line 358]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string MID( +[string +$value = ''], [int +$start = 1], [int +$chars = null])</code> + </td></tr></table> + </td></tr></table><br /> + + MID<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$start</b>&nbsp;&nbsp;</td> + <td>Start character</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$chars</b>&nbsp;&nbsp;</td> + <td>Number of characters</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPROPERCASE"></a> + <h3>static method PROPERCASE <span class="smalllinenumber">[line 482]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string PROPERCASE( +string +$mixedCaseString)</code> + </td></tr></table> + </td></tr></table><br /> + + PROPERCASE<br /><br /><p>Converts a string value to upper case.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$mixedCaseString</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodREPLACE"></a> + <h3>static method REPLACE <span class="smalllinenumber">[line 505]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string REPLACE( +[ +$oldText = ''], [int +$start = 1], [int +$chars = null], +$newText, string +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + REPLACE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$start</b>&nbsp;&nbsp;</td> + <td>Start character</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$chars</b>&nbsp;&nbsp;</td> + <td>Number of characters</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$oldText</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$newText</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodRETURNSTRING"></a> + <h3>static method RETURNSTRING <span class="smalllinenumber">[line 571]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean RETURNSTRING( +[ +$testValue = ''], mixed +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + RETURNSTRING<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$testValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodRIGHT"></a> + <h3>static method RIGHT <span class="smalllinenumber">[line 386]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string RIGHT( +[string +$value = ''], [int +$chars = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + RIGHT<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$chars</b>&nbsp;&nbsp;</td> + <td>Number of characters</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSEARCHINSENSITIVE"></a> + <h3>static method SEARCHINSENSITIVE <span class="smalllinenumber">[line 268]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string SEARCHINSENSITIVE( +string +$needle, string +$haystack, [int +$offset = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + SEARCHINSENSITIVE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$needle</b>&nbsp;&nbsp;</td> + <td>The string to look for</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$haystack</b>&nbsp;&nbsp;</td> + <td>The string in which to look</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$offset</b>&nbsp;&nbsp;</td> + <td>Offset within $haystack</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSEARCHSENSITIVE"></a> + <h3>static method SEARCHSENSITIVE <span class="smalllinenumber">[line 232]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string SEARCHSENSITIVE( +string +$needle, string +$haystack, [int +$offset = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + SEARCHSENSITIVE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$needle</b>&nbsp;&nbsp;</td> + <td>The string to look for</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$haystack</b>&nbsp;&nbsp;</td> + <td>The string in which to look</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$offset</b>&nbsp;&nbsp;</td> + <td>Offset within $haystack</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSTRINGLENGTH"></a> + <h3>static method STRINGLENGTH <span class="smalllinenumber">[line 413]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string STRINGLENGTH( +[string +$value = ''], int +$chars)</code> + </td></tr></table> + </td></tr></table><br /> + + STRINGLENGTH<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$chars</b>&nbsp;&nbsp;</td> + <td>Number of characters</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSUBSTITUTE"></a> + <h3>static method SUBSTITUTE <span class="smalllinenumber">[line 527]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string SUBSTITUTE( +[string +$text = ''], [string +$fromText = ''], [string +$toText = ''], [integer +$instance = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + SUBSTITUTE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$text</b>&nbsp;&nbsp;</td> + <td>Value</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$fromText</b>&nbsp;&nbsp;</td> + <td>From Value</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$toText</b>&nbsp;&nbsp;</td> + <td>To Value</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$instance</b>&nbsp;&nbsp;</td> + <td>Instance Number</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTEXTFORMAT"></a> + <h3>static method TEXTFORMAT <span class="smalllinenumber">[line 587]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean TEXTFORMAT( +mixed +$value, +$format)</code> + </td></tr></table> + </td></tr></table><br /> + + TEXTFORMAT<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$format</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTRIMNONPRINTABLE"></a> + <h3>static method TRIMNONPRINTABLE <span class="smalllinenumber">[line 95]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string TRIMNONPRINTABLE( +[ +$stringValue = ''], mixed +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + TRIMNONPRINTABLE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$stringValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodTRIMSPACES"></a> + <h3>static method TRIMSPACES <span class="smalllinenumber">[line 119]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string TRIMSPACES( +[ +$stringValue = ''], mixed +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + TRIMSPACES<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to check</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$stringValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodUPPERCASE"></a> + <h3>static method UPPERCASE <span class="smalllinenumber">[line 459]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string UPPERCASE( +string +$mixedCaseString)</code> + </td></tr></table> + </td></tr></table><br /> + + UPPERCASE<br /><br /><p>Converts a string value to upper case.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$mixedCaseString</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:10 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html new file mode 100644 index 0000000..ac8ea89 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html @@ -0,0 +1,369 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Calculation_Token_Stack</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Calculation_Token_Stack</h1> +Source Location: /PHPExcel/Calculation/Token/Stack.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Version:</h4> +<ul> + <li>1.7.8, 2012-10-12</li> +</ul> + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodcount">count</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodlast">last</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodpop">pop</a></li> + <li><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodpush">push</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line <a href="../__filesource/fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html#a29">29</a>]<br /> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html#a70">70</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Calculation_Token_Stack __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcount"></a> + <h3>method count <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html#a35">35</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void count( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlast"></a> + <h3>method last <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html#a62">62</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void last( +[ +$n = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$n</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodpop"></a> + <h3>method pop <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html#a54">54</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void pop( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodpush"></a> + <h3>method push <span class="smalllinenumber">[line <a href="../__filesource/fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html#a40">40</a>]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void push( + +$type, +$value, [ +$reference = null])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$reference</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:48 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html new file mode 100644 index 0000000..10f648a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html @@ -0,0 +1,167 @@ +<html> +<head> +<title>Docs for page Database.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Database.php</h1> +Source Location: /PHPExcel/Calculation/Database.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a></dt> + <dd>PHPExcel_Calculation_Database</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:38 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html new file mode 100644 index 0000000..a87aa56 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html @@ -0,0 +1,167 @@ +<html> +<head> +<title>Docs for page DateTime.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DateTime.php</h1> +Source Location: /PHPExcel/Calculation/DateTime.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a></dt> + <dd>PHPExcel_Calculation_DateTime</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:42 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html new file mode 100644 index 0000000..57076b6 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html @@ -0,0 +1,180 @@ +<html> +<head> +<title>Docs for page Engineering.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Engineering.php</h1> +Source Location: /PHPExcel/Calculation/Engineering.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a></dt> + <dd>PHPExcel_Calculation_Engineering</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> + <hr /> + <a name="defineEULER"></a> + <h3>EULER <span class="smalllinenumber">[line 40]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>EULER = 2.71828182845904523536</code> + </td></tr></table> + </td></tr></table> + + EULER<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html new file mode 100644 index 0000000..ef1ad6f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page Exception.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Exception.php</h1> +Source Location: /PHPExcel/Calculation/Exception.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a></dt> + <dd>PHPExcel_Calculation_Exception</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html new file mode 100644 index 0000000..7f9f358 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page ExceptionHandler.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: ExceptionHandler.php</h1> +Source Location: /PHPExcel/Calculation/ExceptionHandler.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a></dt> + <dd>PHPExcel_Calculation_ExceptionHandler</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html new file mode 100644 index 0000000..8a66ab2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html @@ -0,0 +1,193 @@ +<html> +<head> +<title>Docs for page Financial.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Financial.php</h1> +Source Location: /PHPExcel/Calculation/Financial.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a></dt> + <dd>PHPExcel_Calculation_Financial</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> + <hr /> + <a name="defineFINANCIAL_MAX_ITERATIONS"></a> + <h3>FINANCIAL_MAX_ITERATIONS <span class="smalllinenumber">[line 40]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>FINANCIAL_MAX_ITERATIONS = 128</code> + </td></tr></table> + </td></tr></table> + + FINANCIAL_MAX_ITERATIONS<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineFINANCIAL_PRECISION"></a> + <h3>FINANCIAL_PRECISION <span class="smalllinenumber">[line 43]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>FINANCIAL_PRECISION = 1.0e-08</code> + </td></tr></table> + </td></tr></table> + + FINANCIAL_PRECISION<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:15 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html new file mode 100644 index 0000000..9085cac --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page FormulaParser.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: FormulaParser.php</h1> +Source Location: /PHPExcel/Calculation/FormulaParser.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a></dt> + <dd>PHPExcel_Calculation_FormulaParser</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html new file mode 100644 index 0000000..8b0f90c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page FormulaToken.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: FormulaToken.php</h1> +Source Location: /PHPExcel/Calculation/FormulaToken.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a></dt> + <dd>PHPExcel_Calculation_FormulaToken</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:20 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html new file mode 100644 index 0000000..85e834c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page Function.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Function.php</h1> +Source Location: /PHPExcel/Calculation/Function.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a></dt> + <dd>PHPExcel_Calculation_Function</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:20 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html new file mode 100644 index 0000000..f30ce1d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html @@ -0,0 +1,349 @@ +<html> +<head> +<title>Docs for page Functions.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Functions.php</h1> +Source Location: /PHPExcel/Calculation/Functions.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a></dt> + <dd>PHPExcel_Calculation_Functions</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> + <hr /> + <a name="defineMAX_ITERATIONS"></a> + <h3>MAX_ITERATIONS <span class="smalllinenumber">[line 46]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>MAX_ITERATIONS = 256</code> + </td></tr></table> + </td></tr></table> + + MAX_ITERATIONS<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineMAX_VALUE"></a> + <h3>MAX_VALUE <span class="smalllinenumber">[line 40]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>MAX_VALUE = 1.2e308</code> + </td></tr></table> + </td></tr></table> + + MAX_VALUE<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineM_2DIVPI"></a> + <h3>M_2DIVPI <span class="smalllinenumber">[line 43]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>M_2DIVPI = 0.63661977236758134307553505349006</code> + </td></tr></table> + </td></tr></table> + + 2 / PI<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="definePRECISION"></a> + <h3>PRECISION <span class="smalllinenumber">[line 49]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PRECISION = 8.88E-016</code> + </td></tr></table> + </td></tr></table> + + PRECISION<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + <hr /> + <a name="functionacosh"></a> + <h3>acosh <span class="smalllinenumber">[line 673]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void acosh( + $x)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + <hr /> + <a name="functionasinh"></a> + <h3>asinh <span class="smalllinenumber">[line 679]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void asinh( + $x)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + <hr /> + <a name="functionatanh"></a> + <h3>atanh <span class="smalllinenumber">[line 685]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void atanh( + $x)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + <hr /> + <a name="functionmb_str_replace"></a> + <h3>mb_str_replace <span class="smalllinenumber">[line 791]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void mb_str_replace( + $search, $replace, $subject)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$search</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$replace</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$subject</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + <hr /> + <a name="functionmoney_format"></a> + <h3>money_format <span class="smalllinenumber">[line 691]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void money_format( + $format, $number)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> + + <h4>Parameters</h4> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$format</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + </div> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:20 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html new file mode 100644 index 0000000..777910a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html @@ -0,0 +1,167 @@ +<html> +<head> +<title>Docs for page Logical.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Logical.php</h1> +Source Location: /PHPExcel/Calculation/Logical.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a></dt> + <dd>PHPExcel_Calculation_Logical</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html new file mode 100644 index 0000000..685893d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html @@ -0,0 +1,167 @@ +<html> +<head> +<title>Docs for page LookupRef.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: LookupRef.php</h1> +Source Location: /PHPExcel/Calculation/LookupRef.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a></dt> + <dd>PHPExcel_Calculation_LookupRef</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html new file mode 100644 index 0000000..8d74bbf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html @@ -0,0 +1,167 @@ +<html> +<head> +<title>Docs for page MathTrig.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: MathTrig.php</h1> +Source Location: /PHPExcel/Calculation/MathTrig.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a></dt> + <dd>PHPExcel_Calculation_MathTrig</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:40 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html new file mode 100644 index 0000000..3b97478 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html @@ -0,0 +1,220 @@ +<html> +<head> +<title>Docs for page Statistical.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Statistical.php</h1> +Source Location: /PHPExcel/Calculation/Statistical.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a></dt> + <dd>PHPExcel_Calculation_Statistical</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +require_once(<a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/trend/trendClass.php'</a>) [line 39]<br /> +</div> +<br /><br /> +<br /><br /> + <hr /> + <a name="defineEPS"></a> + <h3>EPS <span class="smalllinenumber">[line 49]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>EPS = 2.22e-16</code> + </td></tr></table> + </td></tr></table> + + EPS<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineLOG_GAMMA_X_MAX_VALUE"></a> + <h3>LOG_GAMMA_X_MAX_VALUE <span class="smalllinenumber">[line 43]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>LOG_GAMMA_X_MAX_VALUE = 2.55e305</code> + </td></tr></table> + </td></tr></table> + + LOG_GAMMA_X_MAX_VALUE<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineSQRT2PI"></a> + <h3>SQRT2PI <span class="smalllinenumber">[line 52]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>SQRT2PI = 2.5066282746310005024157652848110452530069867406099</code> + </td></tr></table> + </td></tr></table> + + SQRT2PI<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineXMININ"></a> + <h3>XMININ <span class="smalllinenumber">[line 46]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>XMININ = 2.23e-308</code> + </td></tr></table> + </td></tr></table> + + XMININ<br /><br /> <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:48 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html new file mode 100644 index 0000000..54273bf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html @@ -0,0 +1,167 @@ +<html> +<head> +<title>Docs for page TextData.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: TextData.php</h1> +Source Location: /PHPExcel/Calculation/TextData.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a></dt> + <dd>PHPExcel_Calculation_TextData</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:10 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html new file mode 100644 index 0000000..00741ce --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Docs for page Stack.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Stack.php</h1> +Source Location: /PHPExcel/Calculation/Token/Stack.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a></dt> + <dd>PHPExcel</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +<br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>filesource:</b>&nbsp;&nbsp;</td><td><a href="../__filesource/fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html">Source Code for this file</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:47 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation.php.html new file mode 100644 index 0000000..f6ddb3e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_PHPExcel---Calculation.php.html @@ -0,0 +1,193 @@ +<html> +<head> +<title>Docs for page Calculation.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Calculation.php</h1> +Source Location: /PHPExcel/Calculation.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a></dt> + <dd>PHPExcel_Calculation (Singleton)</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> + <hr /> + <a name="defineCALCULATION_REGEXP_CELLREF"></a> + <h3>CALCULATION_REGEXP_CELLREF <span class="smalllinenumber">[line 43]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>CALCULATION_REGEXP_CELLREF = '((([^\s,!&amp;%^\/\*\+&lt;&gt;=-]*)|(\'[^\']*\')|(\&quot;[^\&quot;]*\&quot;))!)?\$?([a-z]{1,3})\$?(\d{1,7})'</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineCALCULATION_REGEXP_NAMEDRANGE"></a> + <h3>CALCULATION_REGEXP_NAMEDRANGE <span class="smalllinenumber">[line 45]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>CALCULATION_REGEXP_NAMEDRANGE = '((([^\s,!&amp;%^\/\*\+&lt;&gt;=-]*)|(\'[^\']*\')|(\&quot;[^\&quot;]*\&quot;))!)?([_A-Z][_A-Z0-9\.]*)'</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:20 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_notes/dwsync.xml new file mode 100644 index 0000000..9031f3a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Calculation/_notes/dwsync.xml @@ -0,0 +1,241 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Calculation.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Database.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_DateTime.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Engineering.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Exception.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_ExceptionHandler.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Financial.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_FormulaParser.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_FormulaToken.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Function.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Functions.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Logical.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_LookupRef.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_MathTrig.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Statistical.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_TextData.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Token_Stack.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Database.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---DateTime.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Engineering.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Exception.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---ExceptionHandler.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Financial.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---FormulaParser.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---FormulaToken.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Function.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Functions.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Logical.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---LookupRef.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---MathTrig.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Statistical.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---TextData.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Token---Stack.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_MathTrig.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_FormulaParser.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Token---Stack.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Statistical.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---MathTrig.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Function.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Financial.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Engineering.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Function.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_ExceptionHandler.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Exception.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---ExceptionHandler.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Token_Stack.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_LookupRef.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851749999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_FormulaToken.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851759999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---FormulaToken.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851759999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Functions.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851759999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_TextData.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851759999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Logical.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851759999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851759999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---TextData.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851759999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Financial.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851759999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---FormulaParser.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851759999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Statistical.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851759999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_DateTime.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851769999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Engineering.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851769999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---DateTime.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851769999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Exception.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851769999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Database.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851769999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Functions.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851769999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Database.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851769999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Logical.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851769999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---LookupRef.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851769999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Calculation.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_MathTrig.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_FormulaParser.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Token---Stack.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Statistical.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---MathTrig.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Function.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Financial.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Engineering.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Function.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_ExceptionHandler.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Exception.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---ExceptionHandler.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Token_Stack.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_LookupRef.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851749999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_FormulaToken.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851759999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---FormulaToken.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851759999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Functions.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851759999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_TextData.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851759999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Logical.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851759999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851759999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---TextData.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851759999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Financial.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851759999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---FormulaParser.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851759999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Statistical.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851759999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_DateTime.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851769999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Engineering.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851769999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---DateTime.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851769999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Exception.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851769999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Database.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851769999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Functions.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851769999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---Database.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851769999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Calculation_Logical.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851769999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation---LookupRef.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851769999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Calculation.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560323919229" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_MathTrig.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560324496575" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_FormulaParser.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560324966447" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Token---Stack.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560325415291" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---MathTrig.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560326522699" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Function.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560326960037" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Financial.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560327383253" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Statistical.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560326108327" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Function.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560328451366" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Engineering.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560328032575" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_ExceptionHandler.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560328857835" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Exception.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560329305506" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---ExceptionHandler.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560329737749" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Token_Stack.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560330183995" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_LookupRef.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560330755007" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_FormulaToken.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560331188806" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---FormulaToken.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560331614653" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Functions.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560332098611" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Logical.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560333089437" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_TextData.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560332637811" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560333691412" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---TextData.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560334146486" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---FormulaParser.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560335253825" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Statistical.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560335664666" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Financial.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560334824500" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Engineering.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560336607911" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---DateTime.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560337006677" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_DateTime.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560336199150" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Exception.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560337416243" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Database.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560337974673" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Functions.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560338511681" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Database.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560338940303" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Logical.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560339375861" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---LookupRef.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560339830667" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Calculation.php.html" server="62.244.88.21/amashow/" local="131414752675823725" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_FormulaParser.html" server="62.244.88.21/amashow/" local="131414752676831376" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_MathTrig.html" server="62.244.88.21/amashow/" local="131414752676391933" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Token---Stack.php.html" server="62.244.88.21/amashow/" local="131414752677310332" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_Statistical.html" server="62.244.88.21/amashow/" local="131414752677897287" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---MathTrig.php.html" server="62.244.88.21/amashow/" local="131414752678115178" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_Function.html" server="62.244.88.21/amashow/" local="131414752678537232" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_Engineering.html" server="62.244.88.21/amashow/" local="131414752679546224" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Function.php.html" server="62.244.88.21/amashow/" local="131414752679894716" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Financial.php.html" server="62.244.88.21/amashow/" local="131414752679028762" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_ExceptionHandler.html" server="62.244.88.21/amashow/" local="131414752680104311" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_Exception.html" server="62.244.88.21/amashow/" local="131414752680316790" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---ExceptionHandler.php.html" server="62.244.88.21/amashow/" local="131414752680526955" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_LookupRef.html" server="62.244.88.21/amashow/" local="131414752681029373" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_Token_Stack.html" server="62.244.88.21/amashow/" local="131414752680753451" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_FormulaToken.html" server="62.244.88.21/amashow/" local="131414752681433244" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_TextData.html" server="62.244.88.21/amashow/" local="131414752682179578" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---FormulaToken.php.html" server="62.244.88.21/amashow/" local="131414752681640876" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Functions.php.html" server="62.244.88.21/amashow/" local="131414752681874467" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---TextData.php.html" server="62.244.88.21/amashow/" local="131414752682890712" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Logical.php.html" server="62.244.88.21/amashow/" local="131414752682394306" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation.html" server="62.244.88.21/amashow/" local="131414752682670487" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---FormulaParser.php.html" server="62.244.88.21/amashow/" local="131414752683704571" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Statistical.php.html" server="62.244.88.21/amashow/" local="131414752683942291" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_Financial.html" server="62.244.88.21/amashow/" local="131414752683494046" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_DateTime.html" server="62.244.88.21/amashow/" local="131414752684421005" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Engineering.php.html" server="62.244.88.21/amashow/" local="131414752684642335" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Exception.php.html" server="62.244.88.21/amashow/" local="131414752685563443" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---DateTime.php.html" server="62.244.88.21/amashow/" local="131414752685117738" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_Database.html" server="62.244.88.21/amashow/" local="131414752685845555" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_Functions.html" server="62.244.88.21/amashow/" local="131414752686128359" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Database.php.html" server="62.244.88.21/amashow/" local="131414752686346803" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_Logical.html" server="62.244.88.21/amashow/" local="131414752686577808" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Calculation---LookupRef.php.html" server="62.244.88.21/amashow/" local="131414752686797381" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Calculation_FormulaToken.html" server="62.244.88.21/deciday/" local="131919461536436612" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---FormulaToken.php.html" server="62.244.88.21/deciday/" local="131919461536197358" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation.php.html" server="62.244.88.21/deciday/" local="131919461544652483" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---TextData.php.html" server="62.244.88.21/deciday/" local="131919461545587077" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Exception.html" server="62.244.88.21/deciday/" local="131919461532678546" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Token_Stack.html" server="62.244.88.21/deciday/" local="131919461546078601" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---LookupRef.php.html" server="62.244.88.21/deciday/" local="131919461541025365" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Logical.php.html" server="62.244.88.21/deciday/" local="131919461540333982" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Engineering.php.html" server="62.244.88.21/deciday/" local="131919461531173499" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Database.php.html" server="62.244.88.21/deciday/" local="131919461528321939" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_FormulaParser.html" server="62.244.88.21/deciday/" local="131919461534461576" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_LookupRef.html" server="62.244.88.21/deciday/" local="131919461541596320" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Database.html" server="62.244.88.21/deciday/" local="131919461527779287" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Financial.html" server="62.244.88.21/deciday/" local="131919461534812387" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---ExceptionHandler.php.html" server="62.244.88.21/deciday/" local="131919461532287117" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Functions.html" server="62.244.88.21/deciday/" local="131919461538293899" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Functions.php.html" server="62.244.88.21/deciday/" local="131919461538959027" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Logical.html" server="62.244.88.21/deciday/" local="131919461539798688" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---FormulaParser.php.html" server="62.244.88.21/deciday/" local="131919461535688008" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Function.html" server="62.244.88.21/deciday/" local="131919461537133066" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---MathTrig.php.html" server="62.244.88.21/deciday/" local="131919461542086003" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Exception.php.html" server="62.244.88.21/deciday/" local="131919461532685542" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Function.php.html" server="62.244.88.21/deciday/" local="131919461537448183" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Statistical.html" server="62.244.88.21/deciday/" local="131919461544372382" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_ExceptionHandler.html" server="62.244.88.21/deciday/" local="131919461530682405" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Token---Stack.php.html" server="62.244.88.21/deciday/" local="131919461546569236" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_Engineering.html" server="62.244.88.21/deciday/" local="131919461530886837" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation.html" server="62.244.88.21/deciday/" local="131919461539525412" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Financial.php.html" server="62.244.88.21/deciday/" local="131919461534988511" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---Statistical.php.html" server="62.244.88.21/deciday/" local="131919461543845869" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_MathTrig.html" server="62.244.88.21/deciday/" local="131919461542513034" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Calculation---DateTime.php.html" server="62.244.88.21/deciday/" local="131919461529546278" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_TextData.html" server="62.244.88.21/deciday/" local="131919461545413807" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation_DateTime.html" server="62.244.88.21/deciday/" local="131919461529355880" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Calculation.html" server="62.244.88.21/deciday_18/" local="131414752682670487" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_Database.html" server="62.244.88.21/deciday_18/" local="131414752685845555" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_DateTime.html" server="62.244.88.21/deciday_18/" local="131414752684421005" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_Exception.html" server="62.244.88.21/deciday_18/" local="131414752680316790" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_ExceptionHandler.html" server="62.244.88.21/deciday_18/" local="131414752680104311" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_Engineering.html" server="62.244.88.21/deciday_18/" local="131414752679546224" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_FormulaParser.html" server="62.244.88.21/deciday_18/" local="131414752676831376" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_FormulaToken.html" server="62.244.88.21/deciday_18/" local="131414752681433244" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_Financial.html" server="62.244.88.21/deciday_18/" local="131414752683494046" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_Function.html" server="62.244.88.21/deciday_18/" local="131414752678537232" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_Functions.html" server="62.244.88.21/deciday_18/" local="131414752686128359" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_Logical.html" server="62.244.88.21/deciday_18/" local="131414752686577808" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_LookupRef.html" server="62.244.88.21/deciday_18/" local="131414752681029373" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_MathTrig.html" server="62.244.88.21/deciday_18/" local="131414752676391933" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_Statistical.html" server="62.244.88.21/deciday_18/" local="131414752677897287" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_TextData.html" server="62.244.88.21/deciday_18/" local="131414752682179578" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Calculation_Token_Stack.html" server="62.244.88.21/deciday_18/" local="131414752680753451" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Database.php.html" server="62.244.88.21/deciday_18/" local="131414752686346803" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Engineering.php.html" server="62.244.88.21/deciday_18/" local="131414752684642335" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---DateTime.php.html" server="62.244.88.21/deciday_18/" local="131414752685117738" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Exception.php.html" server="62.244.88.21/deciday_18/" local="131414752685563443" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Financial.php.html" server="62.244.88.21/deciday_18/" local="131414752679028762" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---ExceptionHandler.php.html" server="62.244.88.21/deciday_18/" local="131414752680526955" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---FormulaParser.php.html" server="62.244.88.21/deciday_18/" local="131414752683704571" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---FormulaToken.php.html" server="62.244.88.21/deciday_18/" local="131414752681640876" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Function.php.html" server="62.244.88.21/deciday_18/" local="131414752679894716" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Functions.php.html" server="62.244.88.21/deciday_18/" local="131414752681874467" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Logical.php.html" server="62.244.88.21/deciday_18/" local="131414752682394306" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---LookupRef.php.html" server="62.244.88.21/deciday_18/" local="131414752686797381" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---MathTrig.php.html" server="62.244.88.21/deciday_18/" local="131414752678115178" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---TextData.php.html" server="62.244.88.21/deciday_18/" local="131414752682890712" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Token---Stack.php.html" server="62.244.88.21/deciday_18/" local="131414752677310332" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation---Statistical.php.html" server="62.244.88.21/deciday_18/" local="131414752683942291" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Calculation.php.html" server="62.244.88.21/deciday_18/" local="131414752675823725" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell.html new file mode 100644 index 0000000..a614d13 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell.html @@ -0,0 +1,1776 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Cell</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Cell</h1> +Source Location: /PHPExcel/Cell.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Cell</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#constDEFAULT_RANGE">DEFAULT_RANGE</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodabsoluteCoordinate">absoluteCoordinate</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodabsoluteReference">absoluteReference</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodattach">attach</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodbuildRange">buildRange</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodcolumnIndexFromString">columnIndexFromString</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodcompareCells">compareCells</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodcoordinateFromString">coordinateFromString</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methoddetach">detach</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodextractAllCellReferencesInRange">extractAllCellReferencesInRange</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetCalculatedValue">getCalculatedValue</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetColumn">getColumn</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetCoordinate">getCoordinate</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetDataType">getDataType</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetDataValidation">getDataValidation</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetFormattedValue">getFormattedValue</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetFormulaAttributes">getFormulaAttributes</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetHyperlink">getHyperlink</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetOldCalculatedValue">getOldCalculatedValue</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetParent">getParent</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetRangeBoundaries">getRangeBoundaries</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetRow">getRow</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetValue">getValue</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetValueBinder">getValueBinder</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodgetXfIndex">getXfIndex</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodhasDataValidation">hasDataValidation</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodhasHyperlink">hasHyperlink</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodisInRange">isInRange</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodnotifyCacheController">notifyCacheController</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodrangeBoundaries">rangeBoundaries</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodrangeDimension">rangeDimension</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodrebindParent">rebindParent</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodsetCalculatedValue">setCalculatedValue</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodsetDataType">setDataType</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodsetDataValidation">setDataValidation</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodsetFormulaAttributes">setFormulaAttributes</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodsetHyperlink">setHyperlink</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodsetValue">setValue</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodsetValueBinder">setValueBinder</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodsetValueExplicit">setValueExplicit</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodsetXfIndex">setXfIndex</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodsplitRange">splitRange</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#methodstringFromColumnIndex">stringFromColumnIndex</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#method__clone">__clone</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell.html#method__toString">__toString</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodabsoluteCoordinate"></a> + <h3>static method absoluteCoordinate <span class="smalllinenumber">[line 580]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string absoluteCoordinate( +[string +$pCoordinateString = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Make string coordinate absolute<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Absolute coordinate e.g. '$A$1'</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinateString</b>&nbsp;&nbsp;</td> + <td>e.g. 'A1'</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodabsoluteReference"></a> + <h3>static method absoluteReference <span class="smalllinenumber">[line 550]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string absoluteReference( +[string +$pCoordinateString = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Make string row, column or cell coordinate absolute<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Absolute coordinate e.g. '$A' or '$1' or '$A$1'</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinateString</b>&nbsp;&nbsp;</td> + <td>e.g. 'A' or '1' or 'A1' Note that this value can be a row or column reference as well as a cell reference</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbuildRange"></a> + <h3>static method buildRange <span class="smalllinenumber">[line 631]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string buildRange( +array +$pRange)</code> + </td></tr></table> + </td></tr></table><br /> + + Build range from coordinate strings<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>String representation of $pRange</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Array containg one or more arrays containing one or two coordinate strings</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcolumnIndexFromString"></a> + <h3>static method columnIndexFromString <span class="smalllinenumber">[line 732]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int columnIndexFromString( +[string +$pString = 'A'])</code> + </td></tr></table> + </td></tr></table><br /> + + Column index from string<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Column index (base 1 !!!)</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pString</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcompareCells"></a> + <h3>static method compareCells <span class="smalllinenumber">[line 867]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int compareCells( +<a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> +$a, <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> +$b)</code> + </td></tr></table> + </td></tr></table><br /> + + Compare 2 cells<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Result of comparison (always -1 or 1, never zero!)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$a</b>&nbsp;&nbsp;</td> + <td>Cell b</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$b</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcoordinateFromString"></a> + <h3>static method coordinateFromString <span class="smalllinenumber">[line 529]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array coordinateFromString( +[string +$pCoordinateString = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Coordinate from string<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Array containing column and row (indexes 0 and 1)</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinateString</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodextractAllCellReferencesInRange"></a> + <h3>static method extractAllCellReferencesInRange <span class="smalllinenumber">[line 804]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array extractAllCellReferencesInRange( +[string +$pRange = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Extract all cell references in range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Array containing single cell references</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Range (e.g. A1 or A1:C10 or A1:E10 A20:E25)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRangeBoundaries"></a> + <h3>static method getRangeBoundaries <span class="smalllinenumber">[line 705]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array getRangeBoundaries( +[string +$pRange = 'A1:A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate range boundaries<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Range coordinates array(Start Cell, End Cell) where Start Cell and End Cell are arrays (Column ID, Row Number)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Cell range (e.g. A1:A1)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueBinder"></a> + <h3>static method getValueBinder <span class="smalllinenumber">[line 885]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a> getValueBinder( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get value binder to use<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrangeBoundaries"></a> + <h3>static method rangeBoundaries <span class="smalllinenumber">[line 656]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array rangeBoundaries( +[string +$pRange = 'A1:A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate range boundaries<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Range coordinates array(Start Cell, End Cell) where Start Cell and End Cell are arrays (Column Number, Row Number)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Cell range (e.g. A1:A1)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrangeDimension"></a> + <h3>static method rangeDimension <span class="smalllinenumber">[line 690]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array rangeDimension( +[string +$pRange = 'A1:A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate range dimension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Range dimension (width, height)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Cell range (e.g. A1:A1)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetValueBinder"></a> + <h3>static method setValueBinder <span class="smalllinenumber">[line 899]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void setValueBinder( +[<a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a> +$binder = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set value binder to use<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a>&nbsp;&nbsp;</td> + <td><b>$binder</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsplitRange"></a> + <h3>static method splitRange <span class="smalllinenumber">[line 609]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array splitRange( +[string +$pRange = 'A1:A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Split range into coordinate strings<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Array containg one or more arrays containing one or two coordinate strings e.g. array('B4','D9') or array(array('B4','D9'),array('H2','O11')) or array('B4')</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>e.g. 'B4:D9' or 'B4:D9,H2:O11' or 'B4'</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstringFromColumnIndex"></a> + <h3>static method stringFromColumnIndex <span class="smalllinenumber">[line 775]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string stringFromColumnIndex( +[int +$pColumnIndex = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + String from columnindex<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumnIndex</b>&nbsp;&nbsp;</td> + <td>Column index (base 0 !!!)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 143]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Cell __construct( +[string +$pColumn = 'A'], [int +$pRow = 1], [mixed +$pValue = NULL], [string +$pDataType = NULL], [PHPExcel_Worksheet +$pSheet = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new Cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pDataType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodattach"></a> + <h3>method attach <span class="smalllinenumber">[line 128]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void attach( + +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddetach"></a> + <h3>method detach <span class="smalllinenumber">[line 124]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void detach( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCalculatedValue"></a> + <h3>method getCalculatedValue <span class="smalllinenumber">[line 291]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getCalculatedValue( +[ +$resetLog = TRUE])</code> + </td></tr></table> + </td></tr></table><br /> + + Get calculated cell value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td>Since version 1.7.8 for planned changes to cell for array formula handling</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$resetLog</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumn"></a> + <h3>method getColumn <span class="smalllinenumber">[line 175]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getColumn( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell coordinate column<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCoordinate"></a> + <h3>method getCoordinate <span class="smalllinenumber">[line 195]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getCoordinate( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDataType"></a> + <h3>method getDataType <span class="smalllinenumber">[line 364]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getDataType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell data type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDataValidation"></a> + <h3>method getDataValidation <span class="smalllinenumber">[line 406]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> getDataValidation( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Data validation rules<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFormattedValue"></a> + <h3>method getFormattedValue <span class="smalllinenumber">[line 215]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFormattedValue( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell value with formatting<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFormulaAttributes"></a> + <h3>method getFormulaAttributes <span class="smalllinenumber">[line 956]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getFormulaAttributes( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td>Since version 1.7.8 for planned changes to cell for array formula handling</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHyperlink"></a> + <h3>method getHyperlink <span class="smalllinenumber">[line 454]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a> getHyperlink( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Hyperlink<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOldCalculatedValue"></a> + <h3>method getOldCalculatedValue <span class="smalllinenumber">[line 354]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getOldCalculatedValue( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get old calculated value (cached) This returns the value last calculated by MS Excel or whichever spreadsheet program was used to create the original spreadsheet file.<br /><br /><p>Note that this value is not guaranteed to refelect the actual calculated value because it is possible that auto-calculation was disabled in the original spreadsheet, and underlying data values used by the formula have changed since it was last calculated.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetParent"></a> + <h3>method getParent <span class="smalllinenumber">[line 486]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getParent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get parent worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRow"></a> + <h3>method getRow <span class="smalllinenumber">[line 185]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getRow( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell coordinate row<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValue"></a> + <h3>method getValue <span class="smalllinenumber">[line 205]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getValue( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetXfIndex"></a> + <h3>method getXfIndex <span class="smalllinenumber">[line 926]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getXfIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get index to cellXf<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodhasDataValidation"></a> + <h3>method hasDataValidation <span class="smalllinenumber">[line 391]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean hasDataValidation( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Does this cell contain Data validation rules?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodhasHyperlink"></a> + <h3>method hasHyperlink <span class="smalllinenumber">[line 439]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean hasHyperlink( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Does this cell contain a Hyperlink?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisInRange"></a> + <h3>method isInRange <span class="smalllinenumber">[line 508]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isInRange( +[string +$pRange = 'A1:A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Is cell in a specific range?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Cell range (e.g. A1:A1)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodnotifyCacheController"></a> + <h3>method notifyCacheController <span class="smalllinenumber">[line 119]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void notifyCacheController( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Send notification to the cache controller<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrebindParent"></a> + <h3>method rebindParent <span class="smalllinenumber">[line 496]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> rebindParent( +PHPExcel_Worksheet +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Re-bind parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCalculatedValue"></a> + <h3>method setCalculatedValue <span class="smalllinenumber">[line 335]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> setCalculatedValue( +[mixed +$pValue = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set old calculated value (cached)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDataType"></a> + <h3>method setDataType <span class="smalllinenumber">[line 375]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> setDataType( +[string +$pDataType = PHPExcel_Cell_DataType::TYPE_STRING])</code> + </td></tr></table> + </td></tr></table><br /> + + Set cell data type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pDataType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDataValidation"></a> + <h3>method setDataValidation <span class="smalllinenumber">[line 422]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> setDataValidation( +[<a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> +$pDataValidation = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Data validation rules<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a>&nbsp;&nbsp;</td> + <td><b>$pDataValidation</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFormulaAttributes"></a> + <h3>method setFormulaAttributes <span class="smalllinenumber">[line 947]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setFormulaAttributes( + +$pAttributes)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td>Since version 1.7.8 for planned changes to cell for array formula handling</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pAttributes</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetHyperlink"></a> + <h3>method setHyperlink <span class="smalllinenumber">[line 470]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> setHyperlink( +[<a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a> +$pHyperlink = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Hyperlink<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a>&nbsp;&nbsp;</td> + <td><b>$pHyperlink</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetValue"></a> + <h3>method setValue <span class="smalllinenumber">[line 233]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> setValue( +[mixed +$pValue = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set cell value<br /><br /><p>Sets the value for a cell, automatically determining the datatype using the value binder</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetValueExplicit"></a> + <h3>method setValueExplicit <span class="smalllinenumber">[line 249]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> setValueExplicit( +[mixed +$pValue = NULL], [string +$pDataType = PHPExcel_Cell_DataType::TYPE_STRING])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the value for a cell, with the explicit data type passed to the method (bypassing any use of the value binder)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pDataType</b>&nbsp;&nbsp;</td> + <td>Explicit data type</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetXfIndex"></a> + <h3>method setXfIndex <span class="smalllinenumber">[line 937]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> setXfIndex( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set index to cellXf<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 910]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__toString"></a> + <h3>method __toString <span class="smalllinenumber">[line 966]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string __toString( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Convert to string<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constDEFAULT_RANGE"></a> + <p></p> + <h4>DEFAULT_RANGE = <span class="value">&nbsp;'A1:A1'</span></h4> + <p>[line 44]</p> + Default range variable constant<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:21 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html new file mode 100644 index 0000000..63f4730 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html @@ -0,0 +1,252 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Cell_AdvancedValueBinder</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Cell_AdvancedValueBinder</h1> +Source Location: /PHPExcel/Cell/AdvancedValueBinder.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a> + | + --PHPExcel_Cell_AdvancedValueBinder</pre><br /> +<div class="description">PHPExcel_Cell_AdvancedValueBinder</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html#methodbindValue">bindValue</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html#methodbindValue">PHPExcel_Cell_DefaultValueBinder::bindValue()</a> + </dt> + <dd> + Bind value to a cell + </dd> + <dt> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html#methoddataTypeForValue">PHPExcel_Cell_DefaultValueBinder::dataTypeForValue()</a> + </dt> + <dd> + DataType for value + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 46]<br /> +PHPExcel_Cell_AdvancedValueBinder<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodbindValue"></a> + <h3>method bindValue <span class="smalllinenumber">[line 55]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean bindValue( +<a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> +$cell, [mixed +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Bind value to a cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html#methodbindValue">PHPExcel_Cell_IValueBinder::bindValue()</a></dt> + <dd>Bind value to a cell</dd> + </dl> + Overrides <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html#methodbindValue">PHPExcel_Cell_DefaultValueBinder::bindValue()</a> (Bind value to a cell)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to bind value to</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to bind in cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_DataType.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_DataType.html new file mode 100644 index 0000000..8475ae5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_DataType.html @@ -0,0 +1,396 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Cell_DataType</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Cell_DataType</h1> +Source Location: /PHPExcel/Cell/DataType.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Cell_DataType</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_BOOL">TYPE_BOOL</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_ERROR">TYPE_ERROR</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_FORMULA">TYPE_FORMULA</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_INLINE">TYPE_INLINE</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_NULL">TYPE_NULL</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_NUMERIC">TYPE_NUMERIC</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_STRING">TYPE_STRING</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_STRING2">TYPE_STRING2</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#methodcheckErrorCode">checkErrorCode</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#methodcheckString">checkString</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#methoddataTypeForValue">dataTypeForValue</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html#methodgetErrorCodes">getErrorCodes</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Cell_DataType<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodcheckErrorCode"></a> + <h3>static method checkErrorCode <span class="smalllinenumber">[line 103]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string checkErrorCode( +[mixed +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Check a value that it is a valid error code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Sanitized value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value to sanitize to an Excel error code</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcheckString"></a> + <h3>static method checkString <span class="smalllinenumber">[line 81]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed checkString( +[mixed +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Check a string that it satisfies Excel requirements<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Sanitized value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value to sanitize to an Excel string</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddataTypeForValue"></a> + <h3>static method dataTypeForValue <span class="smalllinenumber">[line 71]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int dataTypeForValue( +[mixed +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + DataType for value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td>Replaced by PHPExcel_Cell_IValueBinder infrastructure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetErrorCodes"></a> + <h3>static method getErrorCodes <span class="smalllinenumber">[line 60]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array getErrorCodes( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get list of error codes<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constTYPE_BOOL"></a> + <p></p> + <h4>TYPE_BOOL = <span class="value">&nbsp;'b'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_ERROR"></a> + <p></p> + <h4>TYPE_ERROR = <span class="value">&nbsp;'e'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_FORMULA"></a> + <p></p> + <h4>TYPE_FORMULA = <span class="value">&nbsp;'f'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_INLINE"></a> + <p></p> + <h4>TYPE_INLINE = <span class="value">&nbsp;'inlineStr'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_NULL"></a> + <p></p> + <h4>TYPE_NULL = <span class="value">&nbsp;'null'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_NUMERIC"></a> + <p></p> + <h4>TYPE_NUMERIC = <span class="value">&nbsp;'n'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_STRING"></a> + <p></p> + <h4>TYPE_STRING = <span class="value">&nbsp;'s'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_STRING2"></a> + <p></p> + <h4>TYPE_STRING2 = <span class="value">&nbsp;'str'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:40 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_DataValidation.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_DataValidation.html new file mode 100644 index 0000000..1f56549 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_DataValidation.html @@ -0,0 +1,1241 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Cell_DataValidation</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Cell_DataValidation</h1> +Source Location: /PHPExcel/Cell/DataValidation.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Cell_DataValidation</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_BETWEEN">OPERATOR_BETWEEN</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_EQUAL">OPERATOR_EQUAL</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_GREATERTHAN">OPERATOR_GREATERTHAN</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_GREATERTHANOREQUAL">OPERATOR_GREATERTHANOREQUAL</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_LESSTHAN">OPERATOR_LESSTHAN</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_LESSTHANOREQUAL">OPERATOR_LESSTHANOREQUAL</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_NOTBETWEEN">OPERATOR_NOTBETWEEN</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_NOTEQUAL">OPERATOR_NOTEQUAL</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constSTYLE_INFORMATION">STYLE_INFORMATION</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constSTYLE_STOP">STYLE_STOP</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constSTYLE_WARNING">STYLE_WARNING</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_CUSTOM">TYPE_CUSTOM</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_DATE">TYPE_DATE</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_DECIMAL">TYPE_DECIMAL</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_LIST">TYPE_LIST</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_NONE">TYPE_NONE</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_TEXTLENGTH">TYPE_TEXTLENGTH</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_TIME">TYPE_TIME</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_WHOLE">TYPE_WHOLE</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetAllowBlank">getAllowBlank</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetError">getError</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetErrorStyle">getErrorStyle</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetErrorTitle">getErrorTitle</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetFormula1">getFormula1</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetFormula2">getFormula2</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetOperator">getOperator</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetPrompt">getPrompt</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetPromptTitle">getPromptTitle</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetShowDropDown">getShowDropDown</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetShowErrorMessage">getShowErrorMessage</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetShowInputMessage">getShowInputMessage</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetType">getType</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetAllowBlank">setAllowBlank</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetError">setError</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetErrorStyle">setErrorStyle</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetErrorTitle">setErrorTitle</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetFormula1">setFormula1</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetFormula2">setFormula2</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetOperator">setOperator</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetPrompt">setPrompt</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetPromptTitle">setPromptTitle</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetShowDropDown">setShowDropDown</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetShowErrorMessage">setShowErrorMessage</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetShowInputMessage">setShowInputMessage</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetType">setType</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Cell_DataValidation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 159]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Cell_DataValidation __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Cell_DataValidation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAllowBlank"></a> + <h3>method getAllowBlank <span class="smalllinenumber">[line 282]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getAllowBlank( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Allow Blank<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetError"></a> + <h3>method getError <span class="smalllinenumber">[line 382]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getError( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Error<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetErrorStyle"></a> + <h3>method getErrorStyle <span class="smalllinenumber">[line 242]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getErrorStyle( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Error style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetErrorTitle"></a> + <h3>method getErrorTitle <span class="smalllinenumber">[line 362]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getErrorTitle( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Error title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFormula1"></a> + <h3>method getFormula1 <span class="smalllinenumber">[line 182]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFormula1( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Formula 1<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFormula2"></a> + <h3>method getFormula2 <span class="smalllinenumber">[line 202]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFormula2( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Formula 2<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 442]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOperator"></a> + <h3>method getOperator <span class="smalllinenumber">[line 262]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getOperator( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Operator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPrompt"></a> + <h3>method getPrompt <span class="smalllinenumber">[line 422]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPrompt( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Prompt<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPromptTitle"></a> + <h3>method getPromptTitle <span class="smalllinenumber">[line 402]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPromptTitle( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Prompt title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowDropDown"></a> + <h3>method getShowDropDown <span class="smalllinenumber">[line 302]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowDropDown( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Show DropDown<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowErrorMessage"></a> + <h3>method getShowErrorMessage <span class="smalllinenumber">[line 342]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowErrorMessage( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Show ErrorMessage<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowInputMessage"></a> + <h3>method getShowInputMessage <span class="smalllinenumber">[line 322]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowInputMessage( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Show InputMessage<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetType"></a> + <h3>method getType <span class="smalllinenumber">[line 222]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAllowBlank"></a> + <h3>method setAllowBlank <span class="smalllinenumber">[line 292]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setAllowBlank( +[boolean +$value = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Allow Blank<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetError"></a> + <h3>method setError <span class="smalllinenumber">[line 392]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setError( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Error<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetErrorStyle"></a> + <h3>method setErrorStyle <span class="smalllinenumber">[line 252]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setErrorStyle( +[string +$value = PHPExcel_Cell_DataValidation::STYLE_STOP])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Error style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetErrorTitle"></a> + <h3>method setErrorTitle <span class="smalllinenumber">[line 372]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setErrorTitle( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Error title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFormula1"></a> + <h3>method setFormula1 <span class="smalllinenumber">[line 192]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setFormula1( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Formula 1<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFormula2"></a> + <h3>method setFormula2 <span class="smalllinenumber">[line 212]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setFormula2( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Formula 2<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOperator"></a> + <h3>method setOperator <span class="smalllinenumber">[line 272]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setOperator( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Operator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPrompt"></a> + <h3>method setPrompt <span class="smalllinenumber">[line 432]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setPrompt( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Prompt<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPromptTitle"></a> + <h3>method setPromptTitle <span class="smalllinenumber">[line 412]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setPromptTitle( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Prompt title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowDropDown"></a> + <h3>method setShowDropDown <span class="smalllinenumber">[line 312]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setShowDropDown( +[boolean +$value = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Show DropDown<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowErrorMessage"></a> + <h3>method setShowErrorMessage <span class="smalllinenumber">[line 352]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setShowErrorMessage( +[boolean +$value = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Show ErrorMessage<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowInputMessage"></a> + <h3>method setShowInputMessage <span class="smalllinenumber">[line 332]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setShowInputMessage( +[boolean +$value = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Show InputMessage<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetType"></a> + <h3>method setType <span class="smalllinenumber">[line 232]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a> setType( +[string +$value = PHPExcel_Cell_DataValidation::TYPE_NONE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 464]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constOPERATOR_BETWEEN"></a> + <p></p> + <h4>OPERATOR_BETWEEN = <span class="value">&nbsp;'between'</span></h4> + <p>[line 54]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_EQUAL"></a> + <p></p> + <h4>OPERATOR_EQUAL = <span class="value">&nbsp;'equal'</span></h4> + <p>[line 55]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_GREATERTHAN"></a> + <p></p> + <h4>OPERATOR_GREATERTHAN = <span class="value">&nbsp;'greaterThan'</span></h4> + <p>[line 56]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_GREATERTHANOREQUAL"></a> + <p></p> + <h4>OPERATOR_GREATERTHANOREQUAL = <span class="value">&nbsp;'greaterThanOrEqual'</span></h4> + <p>[line 57]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_LESSTHAN"></a> + <p></p> + <h4>OPERATOR_LESSTHAN = <span class="value">&nbsp;'lessThan'</span></h4> + <p>[line 58]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_LESSTHANOREQUAL"></a> + <p></p> + <h4>OPERATOR_LESSTHANOREQUAL = <span class="value">&nbsp;'lessThanOrEqual'</span></h4> + <p>[line 59]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_NOTBETWEEN"></a> + <p></p> + <h4>OPERATOR_NOTBETWEEN = <span class="value">&nbsp;'notBetween'</span></h4> + <p>[line 60]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_NOTEQUAL"></a> + <p></p> + <h4>OPERATOR_NOTEQUAL = <span class="value">&nbsp;'notEqual'</span></h4> + <p>[line 61]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSTYLE_INFORMATION"></a> + <p></p> + <h4>STYLE_INFORMATION = <span class="value">&nbsp;'information'</span></h4> + <p>[line 51]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSTYLE_STOP"></a> + <p></p> + <h4>STYLE_STOP = <span class="value">&nbsp;'stop'</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSTYLE_WARNING"></a> + <p></p> + <h4>STYLE_WARNING = <span class="value">&nbsp;'warning'</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_CUSTOM"></a> + <p></p> + <h4>TYPE_CUSTOM = <span class="value">&nbsp;'custom'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_DATE"></a> + <p></p> + <h4>TYPE_DATE = <span class="value">&nbsp;'date'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_DECIMAL"></a> + <p></p> + <h4>TYPE_DECIMAL = <span class="value">&nbsp;'decimal'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_LIST"></a> + <p></p> + <h4>TYPE_LIST = <span class="value">&nbsp;'list'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_NONE"></a> + <p></p> + <h4>TYPE_NONE = <span class="value">&nbsp;'none'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_TEXTLENGTH"></a> + <p></p> + <h4>TYPE_TEXTLENGTH = <span class="value">&nbsp;'textLength'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_TIME"></a> + <p></p> + <h4>TYPE_TIME = <span class="value">&nbsp;'time'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_WHOLE"></a> + <p></p> + <h4>TYPE_WHOLE = <span class="value">&nbsp;'whole'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:40 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html new file mode 100644 index 0000000..47a8000 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html @@ -0,0 +1,282 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Cell_DefaultValueBinder</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Cell_DefaultValueBinder</h1> +Source Location: /PHPExcel/Cell/DefaultValueBinder.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Cell_DefaultValueBinder</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html#methodbindValue">bindValue</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html#methoddataTypeForValue">dataTypeForValue</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + +<td valign="top"> +<h3>Child classes:</h3> +<div class="tags"> +<dl> +<dt><a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a></dt> + <dd>PHPExcel_Cell_AdvancedValueBinder</dd> +</dl> +</div> +</td> + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 46]<br /> +PHPExcel_Cell_DefaultValueBinder<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methoddataTypeForValue"></a> + <h3>static method dataTypeForValue <span class="smalllinenumber">[line 75]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int dataTypeForValue( +[mixed +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + DataType for value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="methodbindValue"></a> + <h3>method bindValue <span class="smalllinenumber">[line 55]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean bindValue( +<a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> +$cell, [mixed +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Bind value to a cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html#methodbindValue">PHPExcel_Cell_AdvancedValueBinder::bindValue()</a></dt> + <dd>Bind value to a cell</dd> + </dl> + </p> + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html#methodbindValue">PHPExcel_Cell_IValueBinder::bindValue()</a></dt> + <dd>Bind value to a cell</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to bind value to</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to bind in cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html new file mode 100644 index 0000000..5a2f335 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html @@ -0,0 +1,403 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Cell_Hyperlink</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Cell_Hyperlink</h1> +Source Location: /PHPExcel/Cell/Hyperlink.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Cell_Hyperlink</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodgetTooltip">getTooltip</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodgetUrl">getUrl</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodisInternal">isInternal</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodsetTooltip">setTooltip</a></li> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodsetUrl">setUrl</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Cell_Hyperlink<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 59]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Cell_Hyperlink __construct( +[string +$pUrl = ''], [string +$pTooltip = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Cell_Hyperlink<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pUrl</b>&nbsp;&nbsp;</td> + <td>Url to link the cell to</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pTooltip</b>&nbsp;&nbsp;</td> + <td>Tooltip to display on the hyperlink</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 120]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTooltip"></a> + <h3>method getTooltip <span class="smalllinenumber">[line 91]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getTooltip( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get tooltip<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetUrl"></a> + <h3>method getUrl <span class="smalllinenumber">[line 71]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getUrl( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get URL<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisInternal"></a> + <h3>method isInternal <span class="smalllinenumber">[line 111]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isInternal( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is this hyperlink internal? (to another sheet)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTooltip"></a> + <h3>method setTooltip <span class="smalllinenumber">[line 101]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a> setTooltip( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set tooltip<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetUrl"></a> + <h3>method setUrl <span class="smalllinenumber">[line 81]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a> setUrl( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set URL<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:29 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html new file mode 100644 index 0000000..62227f2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html @@ -0,0 +1,219 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Cell_IValueBinder</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Cell_IValueBinder</h1> +Source Location: /PHPExcel/Cell/IValueBinder.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Interface Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Cell_IValueBinder</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html#methodbindValue">bindValue</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Cell_IValueBinder<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodbindValue"></a> + <h3>method bindValue <span class="smalllinenumber">[line 45]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean bindValue( +<a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> +$cell, [mixed +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Bind value to a cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td>Cell to bind value to</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to bind in cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html new file mode 100644 index 0000000..fdaf014 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html @@ -0,0 +1,140 @@ +<html> +<head> +<title>Docs for page AdvancedValueBinder.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: AdvancedValueBinder.php</h1> +Source Location: /PHPExcel/Cell/AdvancedValueBinder.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a></dt> + <dd>PHPExcel_Cell_AdvancedValueBinder</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html new file mode 100644 index 0000000..c218bcc --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page DataType.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DataType.php</h1> +Source Location: /PHPExcel/Cell/DataType.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a></dt> + <dd>PHPExcel_Cell_DataType</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:40 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html new file mode 100644 index 0000000..0db9cb1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page DataValidation.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DataValidation.php</h1> +Source Location: /PHPExcel/Cell/DataValidation.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a></dt> + <dd>PHPExcel_Cell_DataValidation</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:40 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html new file mode 100644 index 0000000..1d90196 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html @@ -0,0 +1,140 @@ +<html> +<head> +<title>Docs for page DefaultValueBinder.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DefaultValueBinder.php</h1> +Source Location: /PHPExcel/Cell/DefaultValueBinder.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a></dt> + <dd>PHPExcel_Cell_DefaultValueBinder</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html new file mode 100644 index 0000000..0578e19 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page Hyperlink.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Hyperlink.php</h1> +Source Location: /PHPExcel/Cell/Hyperlink.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a></dt> + <dd>PHPExcel_Cell_Hyperlink</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:29 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html new file mode 100644 index 0000000..dc6dd9e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page IValueBinder.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: IValueBinder.php</h1> +Source Location: /PHPExcel/Cell/IValueBinder.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a></dt> + <dd>PHPExcel_Cell_IValueBinder</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell.php.html new file mode 100644 index 0000000..e747199 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_PHPExcel---Cell.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page Cell.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="../elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="../PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Cell.php</h1> +Source Location: /PHPExcel/Cell.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a></dt> + <dd>PHPExcel_Cell</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:21 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_notes/dwsync.xml new file mode 100644 index 0000000..b418c5d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Cell/_notes/dwsync.xml @@ -0,0 +1,101 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Cell.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Cell_AdvancedValueBinder.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Cell_DataType.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Cell_DataValidation.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Cell_DefaultValueBinder.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Cell_Hyperlink.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Cell_IValueBinder.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---AdvancedValueBinder.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---DataType.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---DataValidation.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---DefaultValueBinder.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---Hyperlink.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---IValueBinder.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="_PHPExcel---Cell.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Cell_IValueBinder.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---DataValidation.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---DefaultValueBinder.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---Hyperlink.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Cell_DataType.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---AdvancedValueBinder.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Cell.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---IValueBinder.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Cell.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Cell---DataType.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Cell_DataValidation.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Cell_DefaultValueBinder.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Cell_Hyperlink.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Cell_AdvancedValueBinder.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Cell_IValueBinder.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Cell---DataValidation.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Cell---DefaultValueBinder.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Cell---Hyperlink.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Cell_DataType.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Cell---AdvancedValueBinder.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Cell.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Cell---IValueBinder.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Cell.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Cell---DataType.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Cell_DataValidation.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Cell_DefaultValueBinder.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Cell_Hyperlink.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Cell_AdvancedValueBinder.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Cell_IValueBinder.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560302793986" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Cell---DataValidation.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560303308435" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Cell---DefaultValueBinder.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560303838847" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Cell---Hyperlink.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560304361185" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Cell_DataType.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560304861340" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Cell---AdvancedValueBinder.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560305366959" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Cell.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560305879021" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Cell---IValueBinder.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560306367476" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Cell.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560306995434" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Cell---DataType.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560307535563" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Cell_DataValidation.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560308170952" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Cell_DefaultValueBinder.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560308695669" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Cell_Hyperlink.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560309230149" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Cell_AdvancedValueBinder.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560309724012" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Cell_IValueBinder.html" server="62.244.88.21/amashow/" local="131414752659291113" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Cell---DataValidation.php.html" server="62.244.88.21/amashow/" local="131414752659741365" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Cell---DefaultValueBinder.php.html" server="62.244.88.21/amashow/" local="131414752660299995" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Cell---Hyperlink.php.html" server="62.244.88.21/amashow/" local="131414752660699743" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Cell---AdvancedValueBinder.php.html" server="62.244.88.21/amashow/" local="131414752661431264" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Cell.php.html" server="62.244.88.21/amashow/" local="131414752661643039" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Cell_DataType.html" server="62.244.88.21/amashow/" local="131414752660910504" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Cell---IValueBinder.php.html" server="62.244.88.21/amashow/" local="131414752662081850" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Cell.html" server="62.244.88.21/amashow/" local="131414752662541887" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Cell---DataType.php.html" server="62.244.88.21/amashow/" local="131414752662744248" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Cell_DataValidation.html" server="62.244.88.21/amashow/" local="131414752663194103" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Cell_DefaultValueBinder.html" server="62.244.88.21/amashow/" local="131414752663561169" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Cell_Hyperlink.html" server="62.244.88.21/amashow/" local="131414752663796304" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Cell_AdvancedValueBinder.html" server="62.244.88.21/amashow/" local="131414752664173268" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Cell_DataType.html" server="62.244.88.21/deciday/" local="131919461548067880" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Cell---DataType.php.html" server="62.244.88.21/deciday/" local="131919461547883418" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Cell---AdvancedValueBinder.php.html" server="62.244.88.21/deciday/" local="131919461547512637" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Cell---Hyperlink.php.html" server="62.244.88.21/deciday/" local="131919461551255193" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Cell---DataValidation.php.html" server="62.244.88.21/deciday/" local="131919461548909018" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Cell---IValueBinder.php.html" server="62.244.88.21/deciday/" local="131919461552348466" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Cell---DefaultValueBinder.php.html" server="62.244.88.21/deciday/" local="131919461550107622" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Cell_IValueBinder.html" server="62.244.88.21/deciday/" local="131919461552170233" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Cell_DefaultValueBinder.html" server="62.244.88.21/deciday/" local="131919461549453840" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Cell_DataValidation.html" server="62.244.88.21/deciday/" local="131919461549283647" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Cell_Hyperlink.html" server="62.244.88.21/deciday/" local="131919461550622743" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Cell.html" server="62.244.88.21/deciday/" local="131919461551993748" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Cell.php.html" server="62.244.88.21/deciday/" local="131919461553139249" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Cell_AdvancedValueBinder.html" server="62.244.88.21/deciday/" local="131919461546741427" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Cell_AdvancedValueBinder.html" server="62.244.88.21/deciday_18/" local="131414752664173268" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Cell.html" server="62.244.88.21/deciday_18/" local="131414752662541887" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Cell_DataType.html" server="62.244.88.21/deciday_18/" local="131414752660910504" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Cell_DefaultValueBinder.html" server="62.244.88.21/deciday_18/" local="131414752663561169" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Cell_DataValidation.html" server="62.244.88.21/deciday_18/" local="131414752663194103" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Cell_IValueBinder.html" server="62.244.88.21/deciday_18/" local="131414752659291113" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Cell_Hyperlink.html" server="62.244.88.21/deciday_18/" local="131414752663796304" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Cell---AdvancedValueBinder.php.html" server="62.244.88.21/deciday_18/" local="131414752661431264" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Cell---DataType.php.html" server="62.244.88.21/deciday_18/" local="131414752662744248" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Cell---DefaultValueBinder.php.html" server="62.244.88.21/deciday_18/" local="131414752660299995" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Cell---DataValidation.php.html" server="62.244.88.21/deciday_18/" local="131414752659741365" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Cell---Hyperlink.php.html" server="62.244.88.21/deciday_18/" local="131414752660699743" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Cell---IValueBinder.php.html" server="62.244.88.21/deciday_18/" local="131414752662081850" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Cell.php.html" server="62.244.88.21/deciday_18/" local="131414752661643039" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart.html new file mode 100644 index 0000000..4b5dfe5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart.html @@ -0,0 +1,1488 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Chart</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Chart</h1> +Source Location: /PHPExcel/Chart.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Chart</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightCell">getBottomRightCell</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightOffset">getBottomRightOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightPosition">getBottomRightPosition</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightXOffset">getBottomRightXOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightYOffset">getBottomRightYOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetDisplayBlanksAs">getDisplayBlanksAs</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetLegend">getLegend</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetName">getName</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetPlotArea">getPlotArea</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetPlotVisibleOnly">getPlotVisibleOnly</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetTitle">getTitle</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftCell">getTopLeftCell</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftOffset">getTopLeftOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftPosition">getTopLeftPosition</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftXOffset">getTopLeftXOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftYOffset">getTopLeftYOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetWorksheet">getWorksheet</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetXAxisLabel">getXAxisLabel</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodgetYAxisLabel">getYAxisLabel</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodrefresh">refresh</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodrender">render</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightCell">setBottomRightCell</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightOffset">setBottomRightOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightPosition">setBottomRightPosition</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightXOffset">setBottomRightXOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightYOffset">setBottomRightYOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetDisplayBlanksAs">setDisplayBlanksAs</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetLegend">setLegend</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetPlotVisibleOnly">setPlotVisibleOnly</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetTitle">setTitle</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftCell">setTopLeftCell</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftOffset">setTopLeftOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftPosition">setTopLeftPosition</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftXOffset">setTopLeftXOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftYOffset">setTopLeftYOffset</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetWorksheet">setWorksheet</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetXAxisLabel">setXAxisLabel</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart.html#methodsetYAxisLabel">setYAxisLabel</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Chart<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 153]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Chart __construct( + +$name, [<a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a> +$title = null], [<a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a> +$legend = null], [<a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a> +$plotArea = null], [ +$plotVisibleOnly = true], [ +$displayBlanksAs = '0'], [<a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a> +$xAxisLabel = null], [<a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a> +$yAxisLabel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Chart<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$name</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a>&nbsp;&nbsp;</td> + <td><b>$title</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a>&nbsp;&nbsp;</td> + <td><b>$legend</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a>&nbsp;&nbsp;</td> + <td><b>$plotArea</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$plotVisibleOnly</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$displayBlanksAs</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a>&nbsp;&nbsp;</td> + <td><b>$xAxisLabel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a>&nbsp;&nbsp;</td> + <td><b>$yAxisLabel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBottomRightCell"></a> + <h3>method getBottomRightCell <span class="smalllinenumber">[line 457]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getBottomRightCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the cell address where the bottom right of the chart is fixed<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBottomRightOffset"></a> + <h3>method getBottomRightOffset <span class="smalllinenumber">[line 470]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getBottomRightOffset( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBottomRightPosition"></a> + <h3>method getBottomRightPosition <span class="smalllinenumber">[line 439]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getBottomRightPosition( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the bottom right position of the chart<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>an associative array containing the cell address, X-Offset and Y-Offset from the top left of that cell</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBottomRightXOffset"></a> + <h3>method getBottomRightXOffset <span class="smalllinenumber">[line 482]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getBottomRightXOffset( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBottomRightYOffset"></a> + <h3>method getBottomRightYOffset <span class="smalllinenumber">[line 492]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getBottomRightYOffset( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDisplayBlanksAs"></a> + <h3>method getDisplayBlanksAs <span class="smalllinenumber">[line 315]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getDisplayBlanksAs( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Display Blanks as<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLegend"></a> + <h3>method getLegend <span class="smalllinenumber">[line 222]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a> getLegend( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Legend<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetName"></a> + <h3>method getName <span class="smalllinenumber">[line 170]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotArea"></a> + <h3>method getPlotArea <span class="smalllinenumber">[line 285]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a> getPlotArea( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Area<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotVisibleOnly"></a> + <h3>method getPlotVisibleOnly <span class="smalllinenumber">[line 294]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getPlotVisibleOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Visible Only<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTitle"></a> + <h3>method getTitle <span class="smalllinenumber">[line 201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a> getTitle( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTopLeftCell"></a> + <h3>method getTopLeftCell <span class="smalllinenumber">[line 365]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getTopLeftCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the cell address where the top left of the chart is fixed<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTopLeftOffset"></a> + <h3>method getTopLeftOffset <span class="smalllinenumber">[line 390]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getTopLeftOffset( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTopLeftPosition"></a> + <h3>method getTopLeftPosition <span class="smalllinenumber">[line 353]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getTopLeftPosition( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the top left position of the chart<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>an associative array containing the cell address, X-Offset and Y-Offset from the top left of that cell</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTopLeftXOffset"></a> + <h3>method getTopLeftXOffset <span class="smalllinenumber">[line 402]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getTopLeftXOffset( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTopLeftYOffset"></a> + <h3>method getTopLeftYOffset <span class="smalllinenumber">[line 412]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getTopLeftYOffset( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWorksheet"></a> + <h3>method getWorksheet <span class="smalllinenumber">[line 179]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getWorksheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetXAxisLabel"></a> + <h3>method getXAxisLabel <span class="smalllinenumber">[line 243]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a> getXAxisLabel( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get X-Axis Label<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetYAxisLabel"></a> + <h3>method getYAxisLabel <span class="smalllinenumber">[line 264]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a> getYAxisLabel( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Y-Axis Label<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrefresh"></a> + <h3>method refresh <span class="smalllinenumber">[line 497]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void refresh( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrender"></a> + <h3>method render <span class="smalllinenumber">[line 503]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void render( +[ +$outputDestination = null])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$outputDestination</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBottomRightCell"></a> + <h3>method setBottomRightCell <span class="smalllinenumber">[line 446]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setBottomRightCell( + +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBottomRightOffset"></a> + <h3>method setBottomRightOffset <span class="smalllinenumber">[line 461]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setBottomRightOffset( +[ +$xOffset = null], [ +$yOffset = null])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$xOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$yOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBottomRightPosition"></a> + <h3>method setBottomRightPosition <span class="smalllinenumber">[line 424]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> setBottomRightPosition( +string +$cell, [integer +$xOffset = null], [integer +$yOffset = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the Bottom Right position of the chart<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$xOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$yOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBottomRightXOffset"></a> + <h3>method setBottomRightXOffset <span class="smalllinenumber">[line 476]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setBottomRightXOffset( + +$xOffset)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$xOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBottomRightYOffset"></a> + <h3>method setBottomRightYOffset <span class="smalllinenumber">[line 486]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setBottomRightYOffset( + +$yOffset)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$yOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDisplayBlanksAs"></a> + <h3>method setDisplayBlanksAs <span class="smalllinenumber">[line 325]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> setDisplayBlanksAs( +[string +$displayBlanksAs = '0'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Display Blanks as<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$displayBlanksAs</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLegend"></a> + <h3>method setLegend <span class="smalllinenumber">[line 232]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> setLegend( +<a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a> +$legend)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Legend<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a>&nbsp;&nbsp;</td> + <td><b>$legend</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPlotVisibleOnly"></a> + <h3>method setPlotVisibleOnly <span class="smalllinenumber">[line 304]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> setPlotVisibleOnly( +[boolean +$plotVisibleOnly = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Plot Visible Only<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$plotVisibleOnly</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTitle"></a> + <h3>method setTitle <span class="smalllinenumber">[line 211]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> setTitle( +<a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a> +$title)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a>&nbsp;&nbsp;</td> + <td><b>$title</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTopLeftCell"></a> + <h3>method setTopLeftCell <span class="smalllinenumber">[line 375]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> setTopLeftCell( +string +$cell)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the Top Left cell position for the chart<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTopLeftOffset"></a> + <h3>method setTopLeftOffset <span class="smalllinenumber">[line 381]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setTopLeftOffset( +[ +$xOffset = null], [ +$yOffset = null])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$xOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$yOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTopLeftPosition"></a> + <h3>method setTopLeftPosition <span class="smalllinenumber">[line 338]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> setTopLeftPosition( +string +$cell, [integer +$xOffset = null], [integer +$yOffset = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the Top Left position for the chart<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$cell</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$xOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$yOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTopLeftXOffset"></a> + <h3>method setTopLeftXOffset <span class="smalllinenumber">[line 396]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setTopLeftXOffset( + +$xOffset)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$xOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTopLeftYOffset"></a> + <h3>method setTopLeftYOffset <span class="smalllinenumber">[line 406]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setTopLeftYOffset( + +$yOffset)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$yOffset</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWorksheet"></a> + <h3>method setWorksheet <span class="smalllinenumber">[line 190]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> setWorksheet( +[PHPExcel_Worksheet +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetXAxisLabel"></a> + <h3>method setXAxisLabel <span class="smalllinenumber">[line 253]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> setXAxisLabel( +<a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a> +$label)</code> + </td></tr></table> + </td></tr></table><br /> + + Set X-Axis Label<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a>&nbsp;&nbsp;</td> + <td><b>$label</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetYAxisLabel"></a> + <h3>method setYAxisLabel <span class="smalllinenumber">[line 274]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> setYAxisLabel( +<a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a> +$label)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Y-Axis Label<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a>&nbsp;&nbsp;</td> + <td><b>$label</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:23 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_DataSeries.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_DataSeries.html new file mode 100644 index 0000000..c2b13a7 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_DataSeries.html @@ -0,0 +1,1101 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Chart_DataSeries</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Chart_DataSeries</h1> +Source Location: /PHPExcel/Chart/DataSeries.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Chart_DataSeries</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_BAR">DIRECTION_BAR</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_COL">DIRECTION_COL</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_COLUMN">DIRECTION_COLUMN</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_HORIZONTAL">DIRECTION_HORIZONTAL</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_VERTICAL">DIRECTION_VERTICAL</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_CLUSTERED">GROUPING_CLUSTERED</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_PERCENT_STACKED">GROUPING_PERCENT_STACKED</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_STACKED">GROUPING_STACKED</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_STANDARD">GROUPING_STANDARD</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_FILLED">STYLE_FILLED</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_LINEMARKER">STYLE_LINEMARKER</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_MARKER">STYLE_MARKER</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_SMOOTHMARKER">STYLE_SMOOTHMARKER</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_AREACHART">TYPE_AREACHART</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_AREACHART_3D">TYPE_AREACHART_3D</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_BARCHART">TYPE_BARCHART</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_BARCHART_3D">TYPE_BARCHART_3D</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_BUBBLECHART">TYPE_BUBBLECHART</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_DONUTCHART">TYPE_DONUTCHART</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_DOUGHTNUTCHART">TYPE_DOUGHTNUTCHART</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_LINECHART">TYPE_LINECHART</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_LINECHART_3D">TYPE_LINECHART_3D</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_PIECHART">TYPE_PIECHART</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_PIECHART_3D">TYPE_PIECHART_3D</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_RADARCHART">TYPE_RADARCHART</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_SCATTERCHART">TYPE_SCATTERCHART</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_STOCKCHART">TYPE_STOCKCHART</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_SURFACECHART">TYPE_SURFACECHART</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_SURFACECHART_3D">TYPE_SURFACECHART_3D</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotCategories">getPlotCategories</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotCategoryByIndex">getPlotCategoryByIndex</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotDirection">getPlotDirection</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotGrouping">getPlotGrouping</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotLabelByIndex">getPlotLabelByIndex</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotLabels">getPlotLabels</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotOrder">getPlotOrder</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotSeriesCount">getPlotSeriesCount</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotStyle">getPlotStyle</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotType">getPlotType</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotValues">getPlotValues</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotValuesByIndex">getPlotValuesByIndex</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetSmoothLine">getSmoothLine</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodrefresh">refresh</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotDirection">setPlotDirection</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotGrouping">setPlotGrouping</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotStyle">setPlotStyle</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotType">setPlotType</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetSmoothLine">setSmoothLine</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Chart_DataSeries<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 139]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Chart_DataSeries __construct( +[ +$plotType = null], [ +$plotGrouping = null], [ +$plotOrder = array()], [ +$plotLabel = array()], [ +$plotCategory = array()], [ +$plotValues = array()], [ +$smoothLine = null], [ +$plotStyle = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Chart_DataSeries<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$plotType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$plotGrouping</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$plotOrder</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$plotLabel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$plotCategory</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$plotValues</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$smoothLine</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$plotStyle</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotCategories"></a> + <h3>method getPlotCategories <span class="smalllinenumber">[line 251]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getPlotCategories( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Categories<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of PHPExcel_Chart_DataSeriesValues</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotCategoryByIndex"></a> + <h3>method getPlotCategoryByIndex <span class="smalllinenumber">[line 260]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a> getPlotCategoryByIndex( + +$index)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Category by Index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotDirection"></a> + <h3>method getPlotDirection <span class="smalllinenumber">[line 200]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPlotDirection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Direction<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotGrouping"></a> + <h3>method getPlotGrouping <span class="smalllinenumber">[line 182]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPlotGrouping( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Grouping Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotLabelByIndex"></a> + <h3>method getPlotLabelByIndex <span class="smalllinenumber">[line 236]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a> getPlotLabelByIndex( + +$index)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Label by Index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotLabels"></a> + <h3>method getPlotLabels <span class="smalllinenumber">[line 227]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getPlotLabels( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Labels<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of PHPExcel_Chart_DataSeriesValues</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotOrder"></a> + <h3>method getPlotOrder <span class="smalllinenumber">[line 218]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPlotOrder( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Order<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotSeriesCount"></a> + <h3>method getPlotSeriesCount <span class="smalllinenumber">[line 317]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>integer getPlotSeriesCount( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Number of Plot Series<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotStyle"></a> + <h3>method getPlotStyle <span class="smalllinenumber">[line 275]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPlotStyle( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotType"></a> + <h3>method getPlotType <span class="smalllinenumber">[line 164]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPlotType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotValues"></a> + <h3>method getPlotValues <span class="smalllinenumber">[line 293]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getPlotValues( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of PHPExcel_Chart_DataSeriesValues</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotValuesByIndex"></a> + <h3>method getPlotValuesByIndex <span class="smalllinenumber">[line 302]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a> getPlotValuesByIndex( + +$index)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Values by Index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSmoothLine"></a> + <h3>method getSmoothLine <span class="smalllinenumber">[line 326]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getSmoothLine( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Smooth Line<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrefresh"></a> + <h3>method refresh <span class="smalllinenumber">[line 339]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void refresh( +PHPExcel_Worksheet +$worksheet)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$worksheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPlotDirection"></a> + <h3>method setPlotDirection <span class="smalllinenumber">[line 209]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setPlotDirection( +[string +$plotDirection = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Plot Direction<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$plotDirection</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPlotGrouping"></a> + <h3>method setPlotGrouping <span class="smalllinenumber">[line 191]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setPlotGrouping( +[string +$groupingType = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Plot Grouping Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$groupingType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPlotStyle"></a> + <h3>method setPlotStyle <span class="smalllinenumber">[line 284]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setPlotStyle( +[string +$plotStyle = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Plot Style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$plotStyle</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPlotType"></a> + <h3>method setPlotType <span class="smalllinenumber">[line 173]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setPlotType( +[string +$plotType = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Plot Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$plotType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSmoothLine"></a> + <h3>method setSmoothLine <span class="smalllinenumber">[line 335]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setSmoothLine( +[boolean +$smoothLine = TRUE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Smooth Line<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$smoothLine</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constDIRECTION_BAR"></a> + <p></p> + <h4>DIRECTION_BAR = <span class="value">&nbsp;'bar'</span></h4> + <p>[line 61]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDIRECTION_COL"></a> + <p></p> + <h4>DIRECTION_COL = <span class="value">&nbsp;'col'</span></h4> + <p>[line 63]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDIRECTION_COLUMN"></a> + <p></p> + <h4>DIRECTION_COLUMN = <span class="value">&nbsp;self::DIRECTION_COL</span></h4> + <p>[line 64]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDIRECTION_HORIZONTAL"></a> + <p></p> + <h4>DIRECTION_HORIZONTAL = <span class="value">&nbsp;self::DIRECTION_BAR</span></h4> + <p>[line 62]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDIRECTION_VERTICAL"></a> + <p></p> + <h4>DIRECTION_VERTICAL = <span class="value">&nbsp;self::DIRECTION_COL</span></h4> + <p>[line 65]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constGROUPING_CLUSTERED"></a> + <p></p> + <h4>GROUPING_CLUSTERED = <span class="value">&nbsp;'clustered'</span></h4> + <p>[line 56]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constGROUPING_PERCENT_STACKED"></a> + <p></p> + <h4>GROUPING_PERCENT_STACKED = <span class="value">&nbsp;'percentStacked'</span></h4> + <p>[line 58]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constGROUPING_STACKED"></a> + <p></p> + <h4>GROUPING_STACKED = <span class="value">&nbsp;'stacked'</span></h4> + <p>[line 57]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constGROUPING_STANDARD"></a> + <p></p> + <h4>GROUPING_STANDARD = <span class="value">&nbsp;'standard'</span></h4> + <p>[line 59]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSTYLE_FILLED"></a> + <p></p> + <h4>STYLE_FILLED = <span class="value">&nbsp;'filled'</span></h4> + <p>[line 70]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSTYLE_LINEMARKER"></a> + <p></p> + <h4>STYLE_LINEMARKER = <span class="value">&nbsp;'lineMarker'</span></h4> + <p>[line 67]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSTYLE_MARKER"></a> + <p></p> + <h4>STYLE_MARKER = <span class="value">&nbsp;'marker'</span></h4> + <p>[line 69]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSTYLE_SMOOTHMARKER"></a> + <p></p> + <h4>STYLE_SMOOTHMARKER = <span class="value">&nbsp;'smoothMarker'</span></h4> + <p>[line 68]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_AREACHART"></a> + <p></p> + <h4>TYPE_AREACHART = <span class="value">&nbsp;'areaChart'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_AREACHART_3D"></a> + <p></p> + <h4>TYPE_AREACHART_3D = <span class="value">&nbsp;'area3DChart'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_BARCHART"></a> + <p></p> + <h4>TYPE_BARCHART = <span class="value">&nbsp;'barChart'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_BARCHART_3D"></a> + <p></p> + <h4>TYPE_BARCHART_3D = <span class="value">&nbsp;'bar3DChart'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_BUBBLECHART"></a> + <p></p> + <h4>TYPE_BUBBLECHART = <span class="value">&nbsp;'bubbleChart'</span></h4> + <p>[line 53]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_DONUTCHART"></a> + <p></p> + <h4>TYPE_DONUTCHART = <span class="value">&nbsp;self::TYPE_DOUGHTNUTCHART</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_DOUGHTNUTCHART"></a> + <p></p> + <h4>TYPE_DOUGHTNUTCHART = <span class="value">&nbsp;'doughnutChart'</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_LINECHART"></a> + <p></p> + <h4>TYPE_LINECHART = <span class="value">&nbsp;'lineChart'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_LINECHART_3D"></a> + <p></p> + <h4>TYPE_LINECHART_3D = <span class="value">&nbsp;'line3DChart'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_PIECHART"></a> + <p></p> + <h4>TYPE_PIECHART = <span class="value">&nbsp;'pieChart'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_PIECHART_3D"></a> + <p></p> + <h4>TYPE_PIECHART_3D = <span class="value">&nbsp;'pie3DChart'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_RADARCHART"></a> + <p></p> + <h4>TYPE_RADARCHART = <span class="value">&nbsp;'radarChart'</span></h4> + <p>[line 52]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_SCATTERCHART"></a> + <p></p> + <h4>TYPE_SCATTERCHART = <span class="value">&nbsp;'scatterChart'</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_STOCKCHART"></a> + <p></p> + <h4>TYPE_STOCKCHART = <span class="value">&nbsp;'stockChart'</span></h4> + <p>[line 54]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_SURFACECHART"></a> + <p></p> + <h4>TYPE_SURFACECHART = <span class="value">&nbsp;'surfaceChart'</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_SURFACECHART_3D"></a> + <p></p> + <h4>TYPE_SURFACECHART_3D = <span class="value">&nbsp;'surface3DChart'</span></h4> + <p>[line 51]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:38 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html new file mode 100644 index 0000000..c1db8af --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html @@ -0,0 +1,748 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Chart_DataSeriesValues</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Chart_DataSeriesValues</h1> +Source Location: /PHPExcel/Chart/DataSeriesValues.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Chart_DataSeriesValues</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#constDATASERIES_TYPE_NUMBER">DATASERIES_TYPE_NUMBER</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#constDATASERIES_TYPE_STRING">DATASERIES_TYPE_STRING</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataSource">getDataSource</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataType">getDataType</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataValue">getDataValue</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataValues">getDataValues</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetFormatCode">getFormatCode</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetPointCount">getPointCount</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetPointMarker">getPointMarker</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodisMultiLevelSeries">isMultiLevelSeries</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodmultiLevelCount">multiLevelCount</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodrefresh">refresh</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetDataSource">setDataSource</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetDataType">setDataType</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetDataValues">setDataValues</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetFormatCode">setFormatCode</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetPointMarker">setPointMarker</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Chart_DataSeriesValues<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 92]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Chart_DataSeriesValues __construct( +[ +$dataType = self::DATASERIES_TYPE_NUMBER], [ +$dataSource = null], [ +$formatCode = null], [ +$pointCount = 0], [ +$dataValues = array()], [ +$marker = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Chart_DataSeriesValues object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dataType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dataSource</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$formatCode</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pointCount</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dataValues</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$marker</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDataSource"></a> + <h3>method getDataSource <span class="smalllinenumber">[line 136]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getDataSource( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Series Data Source (formula)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDataType"></a> + <h3>method getDataType <span class="smalllinenumber">[line 107]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getDataType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Series Data Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDataValue"></a> + <h3>method getDataValue <span class="smalllinenumber">[line 246]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getDataValue( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the first Series Data value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDataValues"></a> + <h3>method getDataValues <span class="smalllinenumber">[line 237]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getDataValues( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Series Data Values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of mixed</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFormatCode"></a> + <h3>method getFormatCode <span class="smalllinenumber">[line 182]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFormatCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Series Format Code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPointCount"></a> + <h3>method getPointCount <span class="smalllinenumber">[line 203]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>integer getPointCount( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Series Point Count<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPointMarker"></a> + <h3>method getPointMarker <span class="smalllinenumber">[line 161]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPointMarker( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Point Marker<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisMultiLevelSeries"></a> + <h3>method isMultiLevelSeries <span class="smalllinenumber">[line 212]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isMultiLevelSeries( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify if the Data Series is a multi-level or a simple series<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmultiLevelCount"></a> + <h3>method multiLevelCount <span class="smalllinenumber">[line 224]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean multiLevelCount( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the level count of a multi-level Data Series<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrefresh"></a> + <h3>method refresh <span class="smalllinenumber">[line 280]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void refresh( +PHPExcel_Worksheet +$worksheet, [ +$flatten = TRUE])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$worksheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$flatten</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDataSource"></a> + <h3>method setDataSource <span class="smalllinenumber">[line 146]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a> setDataSource( +[string +$dataSource = null], [ +$refreshDataValues = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Series Data Source (formula)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$dataSource</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$refreshDataValues</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDataType"></a> + <h3>method setDataType <span class="smalllinenumber">[line 122]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a> setDataType( +[string +$dataType = self::DATASERIES_TYPE_NUMBER])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Series Data Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$dataType</b>&nbsp;&nbsp;</td> + <td>Datatype of this data series Typical values are: PHPExcel_Chart_DataSeriesValues::DATASERIES_TYPE_STRING Normally used for axis point values PHPExcel_Chart_DataSeriesValues::DATASERIES_TYPE_NUMBER Normally used for chart data values</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDataValues"></a> + <h3>method setDataValues <span class="smalllinenumber">[line 265]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a> setDataValues( +[array +$dataValues = array()], [boolean +$refreshDataSource = TRUE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Series Data Values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$dataValues</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$refreshDataSource</b>&nbsp;&nbsp;</td> + <td>TRUE - refresh the value of _dataSource based on the values of $dataValues FALSE - don't change the value of _dataSource</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFormatCode"></a> + <h3>method setFormatCode <span class="smalllinenumber">[line 192]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a> setFormatCode( +[string +$formatCode = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Series Format Code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$formatCode</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPointMarker"></a> + <h3>method setPointMarker <span class="smalllinenumber">[line 171]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a> setPointMarker( +[string +$marker = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Point Marker<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$marker</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constDATASERIES_TYPE_NUMBER"></a> + <p></p> + <h4>DATASERIES_TYPE_NUMBER = <span class="value">&nbsp;'Number'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDATASERIES_TYPE_STRING"></a> + <p></p> + <h4>DATASERIES_TYPE_STRING = <span class="value">&nbsp;'String'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:39 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Exception.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Exception.html new file mode 100644 index 0000000..2f4d388 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Exception.html @@ -0,0 +1,359 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Chart_Exception</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Chart_Exception</h1> +Source Location: /PHPExcel/Chart/Exception.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre>Exception + | + --PHPExcel_Chart_Exception</pre><br /> +<div class="description">PHPExcel_Chart_Exception</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html#methoderrorHandlerCallback">errorHandlerCallback</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: Exception (Internal Class)</h4> +<dl> +<dt> + $code + </dt> +<dd> + +</dd> +<dt> + $file + </dt> +<dd> + +</dd> +<dt> + $line + </dt> +<dd> + +</dd> +<dt> + $message + </dt> +<dd> + +</dd> +<dt> + $previous + </dt> +<dd> + +</dd> +<dt> + $string + </dt> +<dd> + +</dd> +<dt> + $trace + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: Exception (Internal Class)</h4> +<dl> + <dt> + constructor __construct ( [$message = ], [$code = ], [$previous = ] ) + </dt> + <dd> + + </dd> + <dt> + getCode ( ) + </dt> + <dd> + + </dd> + <dt> + getFile ( ) + </dt> + <dd> + + </dd> + <dt> + getLine ( ) + </dt> + <dd> + + </dd> + <dt> + getMessage ( ) + </dt> + <dd> + + </dd> + <dt> + getPrevious ( ) + </dt> + <dd> + + </dd> + <dt> + getTrace ( ) + </dt> + <dd> + + </dd> + <dt> + getTraceAsString ( ) + </dt> + <dd> + + </dd> + <dt> + __clone ( ) + </dt> + <dd> + + </dd> + <dt> + __toString ( ) + </dt> + <dd> + + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Chart_Exception<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methoderrorHandlerCallback"></a> + <h3>static method errorHandlerCallback <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void errorHandlerCallback( +mixed +$code, mixed +$string, mixed +$file, mixed +$line, mixed +$context)</code> + </td></tr></table> + </td></tr></table><br /> + + Error handler callback<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$code</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$string</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$file</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$line</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$context</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Layout.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Layout.html new file mode 100644 index 0000000..eb18576 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Layout.html @@ -0,0 +1,1097 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Chart_Layout</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Chart_Layout</h1> +Source Location: /PHPExcel/Chart/Layout.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Chart_Layout</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetHeight">getHeight</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetLayoutTarget">getLayoutTarget</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowBubbleSize">getShowBubbleSize</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowCatName">getShowCatName</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowLeaderLines">getShowLeaderLines</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowLegendKey">getShowLegendKey</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowPercent">getShowPercent</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowSerName">getShowSerName</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowVal">getShowVal</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetWidth">getWidth</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetXMode">getXMode</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetXPosition">getXPosition</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetYMode">getYMode</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetYPosition">getYPosition</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetHeight">setHeight</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetLayoutTarget">setLayoutTarget</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowBubbleSize">setShowBubbleSize</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowCatName">setShowCatName</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowLeaderLines">setShowLeaderLines</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowLegendKey">setShowLegendKey</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowPercent">setShowPercent</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowSerName">setShowSerName</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowVal">setShowVal</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetWidth">setWidth</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetXMode">setXMode</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetXPosition">setXPosition</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetYMode">setYMode</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetYPosition">setYPosition</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Chart_Layout<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 146]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Chart_Layout __construct( +[ +$layout = array()])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Chart_Layout<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$layout</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHeight"></a> + <h3>method getHeight <span class="smalllinenumber">[line 270]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>number getHeight( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLayoutTarget"></a> + <h3>method getLayoutTarget <span class="smalllinenumber">[line 162]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getLayoutTarget( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Layout Target<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowBubbleSize"></a> + <h3>method getShowBubbleSize <span class="smalllinenumber">[line 384]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowBubbleSize( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get show bubble size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowCatName"></a> + <h3>method getShowCatName <span class="smalllinenumber">[line 327]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowCatName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get show category name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowLeaderLines"></a> + <h3>method getShowLeaderLines <span class="smalllinenumber">[line 403]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowLeaderLines( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get show leader lines<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowLegendKey"></a> + <h3>method getShowLegendKey <span class="smalllinenumber">[line 289]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowLegendKey( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get show legend key<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowPercent"></a> + <h3>method getShowPercent <span class="smalllinenumber">[line 365]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowPercent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get show percentage<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowSerName"></a> + <h3>method getShowSerName <span class="smalllinenumber">[line 346]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowSerName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get show data series name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowVal"></a> + <h3>method getShowVal <span class="smalllinenumber">[line 308]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowVal( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get show value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWidth"></a> + <h3>method getWidth <span class="smalllinenumber">[line 252]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>number getWidth( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetXMode"></a> + <h3>method getXMode <span class="smalllinenumber">[line 180]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getXMode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get X-Mode<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetXPosition"></a> + <h3>method getXPosition <span class="smalllinenumber">[line 216]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>number getXPosition( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get X-Position<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetYMode"></a> + <h3>method getYMode <span class="smalllinenumber">[line 198]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getYMode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Y-Mode<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetYPosition"></a> + <h3>method getYPosition <span class="smalllinenumber">[line 234]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>number getYPosition( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Y-Position<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetHeight"></a> + <h3>method setHeight <span class="smalllinenumber">[line 279]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setHeight( +Height +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">Height&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLayoutTarget"></a> + <h3>method setLayoutTarget <span class="smalllinenumber">[line 171]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setLayoutTarget( +Layout +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Layout Target<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">Layout&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Target $value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowBubbleSize"></a> + <h3>method setShowBubbleSize <span class="smalllinenumber">[line 394]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setShowBubbleSize( +boolean +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set show bubble size Specifies that the bubble size should be shown in data labels.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Show bubble size</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowCatName"></a> + <h3>method setShowCatName <span class="smalllinenumber">[line 337]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setShowCatName( +boolean +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set show cat name Specifies that the category name should be shown in data labels.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Show cat name</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowLeaderLines"></a> + <h3>method setShowLeaderLines <span class="smalllinenumber">[line 413]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setShowLeaderLines( +boolean +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set show leader lines Specifies that leader lines should be shown in data labels.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Show leader lines</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowLegendKey"></a> + <h3>method setShowLegendKey <span class="smalllinenumber">[line 299]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setShowLegendKey( +boolean +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set show legend key Specifies that legend keys should be shown in data labels.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Show legend key</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowPercent"></a> + <h3>method setShowPercent <span class="smalllinenumber">[line 375]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setShowPercent( +boolean +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set show percentage Specifies that the percentage should be shown in data labels.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Show percentage</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowSerName"></a> + <h3>method setShowSerName <span class="smalllinenumber">[line 356]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setShowSerName( +boolean +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set show ser name Specifies that the series name should be shown in data labels.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Show ser name</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowVal"></a> + <h3>method setShowVal <span class="smalllinenumber">[line 318]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setShowVal( +boolean +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set show val Specifies that the value should be shown in data labels.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Show val</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWidth"></a> + <h3>method setWidth <span class="smalllinenumber">[line 261]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setWidth( +Width +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">Width&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetXMode"></a> + <h3>method setXMode <span class="smalllinenumber">[line 189]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setXMode( +X-Mode +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set X-Mode<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">X-Mode&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetXPosition"></a> + <h3>method setXPosition <span class="smalllinenumber">[line 225]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setXPosition( +X-Position +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set X-Position<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">X-Position&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetYMode"></a> + <h3>method setYMode <span class="smalllinenumber">[line 207]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setYMode( +Y-Mode +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Y-Mode<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">Y-Mode&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetYPosition"></a> + <h3>method setYPosition <span class="smalllinenumber">[line 243]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setYPosition( +Y-Position +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Y-Position<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">Y-Position&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:32 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Legend.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Legend.html new file mode 100644 index 0000000..2f21f34 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Legend.html @@ -0,0 +1,540 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Chart_Legend</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Chart_Legend</h1> +Source Location: /PHPExcel/Chart/Legend.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Chart_Legend</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_BOTTOM">POSITION_BOTTOM</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_LEFT">POSITION_LEFT</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_RIGHT">POSITION_RIGHT</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_TOP">POSITION_TOP</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_TOPRIGHT">POSITION_TOPRIGHT</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionBottom">xlLegendPositionBottom</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionCorner">xlLegendPositionCorner</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionCustom">xlLegendPositionCustom</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionLeft">xlLegendPositionLeft</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionRight">xlLegendPositionRight</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionTop">xlLegendPositionTop</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetLayout">getLayout</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetOverlay">getOverlay</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetPosition">getPosition</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetPositionXL">getPositionXL</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodsetOverlay">setOverlay</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodsetPosition">setPosition</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodsetPositionXL">setPositionXL</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Chart_Legend<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetLayout"></a> + <h3>method getLayout <span class="smalllinenumber">[line 167]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a> getLayout( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Layout<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOverlay"></a> + <h3>method getOverlay <span class="smalllinenumber">[line 143]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getOverlay( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get allow overlay of other elements?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPosition"></a> + <h3>method getPosition <span class="smalllinenumber">[line 97]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPosition( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get legend position as an excel string value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPositionXL"></a> + <h3>method getPositionXL <span class="smalllinenumber">[line 120]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>number getPositionXL( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get legend position as an Excel internal numeric value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 85]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Chart_Legend __construct( +[ +$position = self::POSITION_RIGHT], [<a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a> +$layout = NULL], [ +$overlay = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Chart_Legend<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$position</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a>&nbsp;&nbsp;</td> + <td><b>$layout</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$overlay</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOverlay"></a> + <h3>method setOverlay <span class="smalllinenumber">[line 153]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean setOverlay( +[boolean +$overlay = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set allow overlay of other elements?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$overlay</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPosition"></a> + <h3>method setPosition <span class="smalllinenumber">[line 106]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setPosition( +[string +$position = self::POSITION_RIGHT])</code> + </td></tr></table> + </td></tr></table><br /> + + Get legend position using an excel string value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$position</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPositionXL"></a> + <h3>method setPositionXL <span class="smalllinenumber">[line 129]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setPositionXL( +[number +$positionXL = self::xlLegendPositionRight])</code> + </td></tr></table> + </td></tr></table><br /> + + Set legend position using an Excel internal numeric value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">number&nbsp;&nbsp;</td> + <td><b>$positionXL</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constPOSITION_BOTTOM"></a> + <p></p> + <h4>POSITION_BOTTOM = <span class="value">&nbsp;'b'</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPOSITION_LEFT"></a> + <p></p> + <h4>POSITION_LEFT = <span class="value">&nbsp;'l'</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPOSITION_RIGHT"></a> + <p></p> + <h4>POSITION_RIGHT = <span class="value">&nbsp;'r'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPOSITION_TOP"></a> + <p></p> + <h4>POSITION_TOP = <span class="value">&nbsp;'t'</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPOSITION_TOPRIGHT"></a> + <p></p> + <h4>POSITION_TOPRIGHT = <span class="value">&nbsp;'tr'</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constxlLegendPositionBottom"></a> + <p></p> + <h4>xlLegendPositionBottom = <span class="value">&nbsp;-4107</span></h4> + <p>[line 39]</p> + Legend positions<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constxlLegendPositionCorner"></a> + <p></p> + <h4>xlLegendPositionCorner = <span class="value">&nbsp;2</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constxlLegendPositionCustom"></a> + <p></p> + <h4>xlLegendPositionCustom = <span class="value">&nbsp;-4161</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constxlLegendPositionLeft"></a> + <p></p> + <h4>xlLegendPositionLeft = <span class="value">&nbsp;-4131</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constxlLegendPositionRight"></a> + <p></p> + <h4>xlLegendPositionRight = <span class="value">&nbsp;-4152</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constxlLegendPositionTop"></a> + <p></p> + <h4>xlLegendPositionTop = <span class="value">&nbsp;-4160</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:33 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_PlotArea.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_PlotArea.html new file mode 100644 index 0000000..ed5269f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_PlotArea.html @@ -0,0 +1,442 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Chart_PlotArea</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Chart_PlotArea</h1> +Source Location: /PHPExcel/Chart/PlotArea.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Chart_PlotArea</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetLayout">getLayout</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotGroup">getPlotGroup</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotGroupByIndex">getPlotGroupByIndex</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotGroupCount">getPlotGroupCount</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotSeriesCount">getPlotSeriesCount</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodrefresh">refresh</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodsetPlotSeries">setPlotSeries</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Chart_PlotArea<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 55]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Chart_PlotArea __construct( +[<a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a> +$layout = null], [ +$plotSeries = array()])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Chart_PlotArea<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a>&nbsp;&nbsp;</td> + <td><b>$layout</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$plotSeries</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLayout"></a> + <h3>method getLayout <span class="smalllinenumber">[line 66]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a> getLayout( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Layout<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotGroup"></a> + <h3>method getPlotGroup <span class="smalllinenumber">[line 97]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getPlotGroup( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Series<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of PHPExcel_Chart_DataSeries</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotGroupByIndex"></a> + <h3>method getPlotGroupByIndex <span class="smalllinenumber">[line 106]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a> getPlotGroupByIndex( + +$index)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Plot Series by Index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotGroupCount"></a> + <h3>method getPlotGroupCount <span class="smalllinenumber">[line 75]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getPlotGroupCount( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Number of Plot Groups<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of PHPExcel_Chart_DataSeries</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlotSeriesCount"></a> + <h3>method getPlotSeriesCount <span class="smalllinenumber">[line 84]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>integer getPlotSeriesCount( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Number of Plot Series<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrefresh"></a> + <h3>method refresh <span class="smalllinenumber">[line 119]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void refresh( +PHPExcel_Worksheet +$worksheet)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$worksheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPlotSeries"></a> + <h3>method setPlotSeries <span class="smalllinenumber">[line 115]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setPlotSeries( +[array +$plotSeries = array()])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Plot Series<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$plotSeries</b>&nbsp;&nbsp;</td> + <td>of PHPExcel_Chart_DataSeries</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:27 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Title.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Title.html new file mode 100644 index 0000000..76cb48f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/PHPExcel_Chart_Title.html @@ -0,0 +1,310 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Chart_Title</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Chart_Title</h1> +Source Location: /PHPExcel/Chart/Title.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Chart_Title</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html#methodgetCaption">getCaption</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html#methodgetLayout">getLayout</a></li> + <li><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html#methodsetCaption">setCaption</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Chart_Title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 56]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Chart_Title __construct( +[ +$caption = null], [<a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a> +$layout = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Chart_Title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$caption</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a>&nbsp;&nbsp;</td> + <td><b>$layout</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCaption"></a> + <h3>method getCaption <span class="smalllinenumber">[line 67]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getCaption( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get caption<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLayout"></a> + <h3>method getLayout <span class="smalllinenumber">[line 85]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a> getLayout( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Layout<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCaption"></a> + <h3>method setCaption <span class="smalllinenumber">[line 76]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setCaption( +[string +$caption = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set caption<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$caption</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html new file mode 100644 index 0000000..1bcc66a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html @@ -0,0 +1,138 @@ +<html> +<head> +<title>Docs for page DataSeries.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DataSeries.php</h1> +Source Location: /PHPExcel/Chart/DataSeries.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a></dt> + <dd>PHPExcel_Chart_DataSeries</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:38 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html new file mode 100644 index 0000000..bae7339 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html @@ -0,0 +1,138 @@ +<html> +<head> +<title>Docs for page DataSeriesValues.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DataSeriesValues.php</h1> +Source Location: /PHPExcel/Chart/DataSeriesValues.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a></dt> + <dd>PHPExcel_Chart_DataSeriesValues</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:39 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html new file mode 100644 index 0000000..55b3a29 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html @@ -0,0 +1,138 @@ +<html> +<head> +<title>Docs for page Exception.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Exception.php</h1> +Source Location: /PHPExcel/Chart/Exception.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a></dt> + <dd>PHPExcel_Chart_Exception</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html new file mode 100644 index 0000000..3073d99 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html @@ -0,0 +1,138 @@ +<html> +<head> +<title>Docs for page Layout.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Layout.php</h1> +Source Location: /PHPExcel/Chart/Layout.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a></dt> + <dd>PHPExcel_Chart_Layout</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:32 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html new file mode 100644 index 0000000..e531415 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html @@ -0,0 +1,138 @@ +<html> +<head> +<title>Docs for page Legend.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Legend.php</h1> +Source Location: /PHPExcel/Chart/Legend.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a></dt> + <dd>PHPExcel_Chart_Legend</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:33 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html new file mode 100644 index 0000000..e201ea7 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html @@ -0,0 +1,138 @@ +<html> +<head> +<title>Docs for page PlotArea.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: PlotArea.php</h1> +Source Location: /PHPExcel/Chart/PlotArea.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a></dt> + <dd>PHPExcel_Chart_PlotArea</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:27 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html new file mode 100644 index 0000000..1d1b3a2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html @@ -0,0 +1,142 @@ +<html> +<head> +<title>Docs for page jpgraph.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: jpgraph.php</h1> +Source Location: /PHPExcel/Chart/Renderer/jpgraph.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html">PHPExcel_Chart_Renderer_jpgraph</a></dt> + <dd>PHPExcel_Chart_Renderer_jpgraph</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(PHPExcel_Settings::getChartRendererPath().'/jpgraph.php') [line 30]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Title.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Title.php.html new file mode 100644 index 0000000..1d6290b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart---Title.php.html @@ -0,0 +1,138 @@ +<html> +<head> +<title>Docs for page Title.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Title.php</h1> +Source Location: /PHPExcel/Chart/Title.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a></dt> + <dd>PHPExcel_Chart_Title</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart.php.html new file mode 100644 index 0000000..4869cb5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_PHPExcel---Chart.php.html @@ -0,0 +1,138 @@ +<html> +<head> +<title>Docs for page Chart.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="../elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="../PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="../PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Chart.php</h1> +Source Location: /PHPExcel/Chart.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a></dt> + <dd>PHPExcel_Chart</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:23 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_notes/dwsync.xml new file mode 100644 index 0000000..82db34c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart/_notes/dwsync.xml @@ -0,0 +1,122 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Chart.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Chart_DataSeries.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Chart_DataSeriesValues.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Chart_Exception.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Chart_Layout.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Chart_Legend.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Chart_PlotArea.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="PHPExcel_Chart_Title.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Chart---DataSeries.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Chart---DataSeriesValues.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Exception.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Layout.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Legend.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Chart---PlotArea.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Renderer---jpgraph.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Title.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Chart.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Title.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Chart---DataSeries.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Chart_Exception.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Chart_Legend.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Renderer---jpgraph.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Legend.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Exception.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Chart_DataSeriesValues.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Chart_PlotArea.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Chart---DataSeriesValues.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Chart---PlotArea.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Chart.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Chart_Layout.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Chart.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Chart_Title.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Layout.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851679999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Chart_DataSeries.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Title.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Chart---DataSeries.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Chart_Exception.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Chart_Legend.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Renderer---jpgraph.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Legend.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Exception.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Chart_DataSeriesValues.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Chart_PlotArea.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Chart---DataSeriesValues.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Chart---PlotArea.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Chart.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Chart_Layout.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Chart.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Chart_Title.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Layout.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851679999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Chart_DataSeries.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Chart---Title.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560257591025" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Chart---DataSeries.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560258092858" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Chart_Exception.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560258618372" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Chart_Legend.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560259158605" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Chart---Renderer---jpgraph.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560259667167" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Chart---Legend.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560260189141" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Chart---Exception.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560260687461" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Chart_DataSeriesValues.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560261196474" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Chart_PlotArea.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560261712963" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Chart---DataSeriesValues.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560262223932" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Chart---PlotArea.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560262716449" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Chart.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560263242317" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Chart_Layout.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560263851750" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Chart_Title.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560264995627" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Chart.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560264503588" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Chart---Layout.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560265442750" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Chart_DataSeries.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560266394747" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Chart---Title.php.html" server="62.244.88.21/amashow/" local="131414752622131122" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Chart_Exception.html" server="62.244.88.21/amashow/" local="131414752622727864" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Chart---DataSeries.php.html" server="62.244.88.21/amashow/" local="131414752622511772" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Chart_Legend.html" server="62.244.88.21/amashow/" local="131414752622963814" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Chart---Exception.php.html" server="62.244.88.21/amashow/" local="131414752623822255" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Chart---Renderer---jpgraph.php.html" server="62.244.88.21/amashow/" local="131414752623182536" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Chart---Legend.php.html" server="62.244.88.21/amashow/" local="131414752623393807" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Chart_DataSeriesValues.html" server="62.244.88.21/amashow/" local="131414752624343203" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Chart_PlotArea.html" server="62.244.88.21/amashow/" local="131414752624569263" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Chart---DataSeriesValues.php.html" server="62.244.88.21/amashow/" local="131414752625120138" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Chart---PlotArea.php.html" server="62.244.88.21/amashow/" local="131414752625329702" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Chart.php.html" server="62.244.88.21/amashow/" local="131414752625784399" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Chart_Layout.html" server="62.244.88.21/amashow/" local="131414752626066110" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Chart_Title.html" server="62.244.88.21/amashow/" local="131414752626811539" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Chart.html" server="62.244.88.21/amashow/" local="131414752626599336" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Chart---Layout.php.html" server="62.244.88.21/amashow/" local="131414752627265800" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Chart_DataSeries.html" server="62.244.88.21/amashow/" local="131414752627807843" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Chart---DataSeriesValues.php.html" server="62.244.88.21/deciday/" local="131919461554714495" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Chart---PlotArea.php.html" server="62.244.88.21/deciday/" local="131919461560845291" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Chart---DataSeries.php.html" server="62.244.88.21/deciday/" local="131919461553585545" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Chart_Legend.html" server="62.244.88.21/deciday/" local="131919461559222230" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Chart_Layout.html" server="62.244.88.21/deciday/" local="131919461558386285" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Chart_PlotArea.html" server="62.244.88.21/deciday/" local="131919461560662221" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Chart_Exception.html" server="62.244.88.21/deciday/" local="131919461555976633" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Chart.php.html" server="62.244.88.21/deciday/" local="131919461559830757" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Chart---Exception.php.html" server="62.244.88.21/deciday/" local="131919461557000117" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Chart_Title.html" server="62.244.88.21/deciday/" local="131919461562134303" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Chart_DataSeries.html" server="62.244.88.21/deciday/" local="131919461553775031" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Chart---Renderer---jpgraph.php.html" server="62.244.88.21/deciday/" local="131919461561110643" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Chart---Title.php.html" server="62.244.88.21/deciday/" local="131919461561934289" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Chart---Legend.php.html" server="62.244.88.21/deciday/" local="131919461559653520" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Chart---Layout.php.html" server="62.244.88.21/deciday/" local="131919461558565164" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Chart_DataSeriesValues.html" server="62.244.88.21/deciday/" local="131919461555609302" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Chart.html" server="62.244.88.21/deciday/" local="131919461557860420" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Chart_DataSeries.html" server="62.244.88.21/deciday_18/" local="131414752627807843" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Chart.html" server="62.244.88.21/deciday_18/" local="131414752626599336" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Chart_DataSeriesValues.html" server="62.244.88.21/deciday_18/" local="131414752624343203" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Chart_Exception.html" server="62.244.88.21/deciday_18/" local="131414752622727864" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Chart_Layout.html" server="62.244.88.21/deciday_18/" local="131414752626066110" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Chart_PlotArea.html" server="62.244.88.21/deciday_18/" local="131414752624569263" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Chart_Legend.html" server="62.244.88.21/deciday_18/" local="131414752622963814" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Chart_Title.html" server="62.244.88.21/deciday_18/" local="131414752626811539" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Chart---DataSeries.php.html" server="62.244.88.21/deciday_18/" local="131414752622511772" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Chart---DataSeriesValues.php.html" server="62.244.88.21/deciday_18/" local="131414752625120138" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Chart---Exception.php.html" server="62.244.88.21/deciday_18/" local="131414752623822255" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Chart---Layout.php.html" server="62.244.88.21/deciday_18/" local="131414752627265800" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Chart---Legend.php.html" server="62.244.88.21/deciday_18/" local="131414752623393807" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Chart---PlotArea.php.html" server="62.244.88.21/deciday_18/" local="131414752625329702" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Chart---Renderer---jpgraph.php.html" server="62.244.88.21/deciday_18/" local="131414752623182536" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Chart---Title.php.html" server="62.244.88.21/deciday_18/" local="131414752622131122" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Chart.php.html" server="62.244.88.21/deciday_18/" local="131414752625784399" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html new file mode 100644 index 0000000..91b64a5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html @@ -0,0 +1,224 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Chart_Renderer_jpgraph</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart_Renderer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Chart_Renderer.html" class="menu">class tree: PHPExcel_Chart_Renderer</a> ] + [ <a href="../elementindex_PHPExcel_Chart_Renderer.html" class="menu">index: PHPExcel_Chart_Renderer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html">PHPExcel_Chart_Renderer_jpgraph</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Chart_Renderer_jpgraph</h1> +Source Location: /PHPExcel/Chart/Renderer/jpgraph.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Chart_Renderer_jpgraph</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html#methodrender">render</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 40]<br /> +PHPExcel_Chart_Renderer_jpgraph<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 833]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Chart_Renderer_jpgraph __construct( +PHPExcel_Chart +$chart)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Chart_Renderer_jpgraph<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a>&nbsp;&nbsp;</td> + <td><b>$chart</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrender"></a> + <h3>method render <span class="smalllinenumber">[line 752]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void render( + +$outputDestination)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$outputDestination</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Chart_Renderer/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart_Renderer/_notes/dwsync.xml new file mode 100644 index 0000000..ae45568 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Chart_Renderer/_notes/dwsync.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Chart_Renderer_jpgraph.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Chart_Renderer_jpgraph.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Chart_Renderer_jpgraph.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Chart_Renderer_jpgraph.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560245526539" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Chart_Renderer_jpgraph.html" server="62.244.88.21/amashow/" local="131414752612069544" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Chart_Renderer_jpgraph.html" server="62.244.88.21/deciday/" local="131919461562309653" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Chart_Renderer_jpgraph.html" server="62.244.88.21/deciday_18/" local="131414752612069544" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_CSV.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_CSV.html new file mode 100644 index 0000000..45352c8 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_CSV.html @@ -0,0 +1,847 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_CSV</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_CSV</h1> +Source Location: /PHPExcel/Reader/CSV.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_CSV</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodcanRead">canRead</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetContiguous">getContiguous</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetDelimiter">getDelimiter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetEnclosure">getEnclosure</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetInputEncoding">getInputEncoding</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetLineEnding">getLineEnding</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetReadFilter">getReadFilter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetSheetIndex">getSheetIndex</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodlistWorksheetInfo">listWorksheetInfo</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodload">load</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodloadIntoExisting">loadIntoExisting</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetContiguous">setContiguous</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetDelimiter">setDelimiter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetEnclosure">setEnclosure</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetInputEncoding">setInputEncoding</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetLineEnding">setLineEnding</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetReadFilter">setReadFilter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetSheetIndex">setSheetIndex</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 45]<br /> +PHPExcel_Reader_CSV<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 116]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Reader_CSV __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Reader_CSV<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcanRead"></a> + <h3>method canRead <span class="smalllinenumber">[line 129]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean canRead( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Can the current PHPExcel_Reader_IReader read the file?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodcanRead">PHPExcel_Reader_IReader::canRead()</a></dt> + <dd>Can the current PHPExcel_Reader_IReader read the file?</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetContiguous"></a> + <h3>method getContiguous <span class="smalllinenumber">[line 501]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getContiguous( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Contiguous<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDelimiter"></a> + <h3>method getDelimiter <span class="smalllinenumber">[line 385]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getDelimiter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get delimiter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEnclosure"></a> + <h3>method getEnclosure <span class="smalllinenumber">[line 409]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getEnclosure( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get enclosure<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetInputEncoding"></a> + <h3>method getInputEncoding <span class="smalllinenumber">[line 182]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getInputEncoding( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get input encoding<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLineEnding"></a> + <h3>method getLineEnding <span class="smalllinenumber">[line 436]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getLineEnding( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get line ending<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadFilter"></a> + <h3>method getReadFilter <span class="smalllinenumber">[line 146]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> getReadFilter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheetIndex"></a> + <h3>method getSheetIndex <span class="smalllinenumber">[line 460]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getSheetIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetInfo"></a> + <h3>method listWorksheetInfo <span class="smalllinenumber">[line 195]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetInfo( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodload"></a> + <h3>method load <span class="smalllinenumber">[line 267]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> load( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodload">PHPExcel_Reader_IReader::load()</a></dt> + <dd>Loads PHPExcel from file</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodloadIntoExisting"></a> + <h3>method loadIntoExisting <span class="smalllinenumber">[line 286]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> loadIntoExisting( +string +$pFilename, PHPExcel +$objPHPExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file into PHPExcel instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$objPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetContiguous"></a> + <h3>method setContiguous <span class="smalllinenumber">[line 484]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setContiguous( +[ +$contiguous = false], string +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Contiguous<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Input encoding</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$contiguous</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDelimiter"></a> + <h3>method setDelimiter <span class="smalllinenumber">[line 397]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a> setDelimiter( +[string +$pValue = ','])</code> + </td></tr></table> + </td></tr></table><br /> + + Set delimiter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Delimiter, defaults to ,</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetEnclosure"></a> + <h3>method setEnclosure <span class="smalllinenumber">[line 421]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a> setEnclosure( +[string +$pValue = '&quot;'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set enclosure<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Enclosure, defaults to &quot;</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetInputEncoding"></a> + <h3>method setInputEncoding <span class="smalllinenumber">[line 169]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setInputEncoding( +[string +$pValue = 'UTF-8'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set input encoding<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Input encoding</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLineEnding"></a> + <h3>method setLineEnding <span class="smalllinenumber">[line 448]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a> setLineEnding( +[string +$pValue = PHP_EOL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set line ending<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Line ending, defaults to OS line ending (PHP_EOL)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadFilter"></a> + <h3>method setReadFilter <span class="smalllinenumber">[line 157]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setReadFilter( +<a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSheetIndex"></a> + <h3>method setSheetIndex <span class="smalllinenumber">[line 472]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a> setSheetIndex( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Sheet index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html new file mode 100644 index 0000000..99fa08c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html @@ -0,0 +1,245 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_DefaultReadFilter</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_DefaultReadFilter</h1> +Source Location: /PHPExcel/Reader/DefaultReadFilter.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_DefaultReadFilter</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html#methodreadCell">readCell</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 45]<br /> +PHPExcel_Reader_DefaultReadFilter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodreadCell"></a> + <h3>method readCell <span class="smalllinenumber">[line 55]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean readCell( +$column +$column, $row +$row, [$worksheetName +$worksheetName = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Should this cell be read?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html#methodreadCell">PHPExcel_Reader_IReadFilter::readCell()</a></dt> + <dd>Should this cell be read?</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">$column&nbsp;&nbsp;</td> + <td><b>$column</b>&nbsp;&nbsp;</td> + <td>String column index</td> + </tr> + <tr> + <td class="type">$row&nbsp;&nbsp;</td> + <td><b>$row</b>&nbsp;&nbsp;</td> + <td>Row index</td> + </tr> + <tr> + <td class="type">$worksheetName&nbsp;&nbsp;</td> + <td><b>$worksheetName</b>&nbsp;&nbsp;</td> + <td>Optional worksheet name</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html new file mode 100644 index 0000000..cbe3e0f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html @@ -0,0 +1,655 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_Excel2003XML</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_Excel2003XML</h1> +Source Location: /PHPExcel/Reader/Excel2003XML.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_Excel2003XML</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodcanRead">canRead</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodgetLoadSheetsOnly">getLoadSheetsOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodgetReadDataOnly">getReadDataOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodgetReadFilter">getReadFilter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodlistWorksheetInfo">listWorksheetInfo</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodlistWorksheetNames">listWorksheetNames</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodload">load</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodloadIntoExisting">loadIntoExisting</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetLoadAllSheets">setLoadAllSheets</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetLoadSheetsOnly">setLoadSheetsOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetReadDataOnly">setReadDataOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetReadFilter">setReadFilter</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 45]<br /> +PHPExcel_Reader_Excel2003XML<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 86]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Reader_Excel2003XML __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Reader_Excel2003XML<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcanRead"></a> + <h3>method canRead <span class="smalllinenumber">[line 179]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean canRead( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Can the current PHPExcel_Reader_IReader read the file?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodcanRead">PHPExcel_Reader_IReader::canRead()</a></dt> + <dd>Can the current PHPExcel_Reader_IReader read the file?</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLoadSheetsOnly"></a> + <h3>method getLoadSheetsOnly <span class="smalllinenumber">[line 118]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getLoadSheetsOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get which sheets to load<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadDataOnly"></a> + <h3>method getReadDataOnly <span class="smalllinenumber">[line 96]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getReadDataOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read data only?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadFilter"></a> + <h3>method getReadFilter <span class="smalllinenumber">[line 155]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> getReadFilter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetInfo"></a> + <h3>method listWorksheetInfo <span class="smalllinenumber">[line 263]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetInfo( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetNames"></a> + <h3>method listWorksheetNames <span class="smalllinenumber">[line 232]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetNames( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodload"></a> + <h3>method load <span class="smalllinenumber">[line 335]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> load( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodload">PHPExcel_Reader_IReader::load()</a></dt> + <dd>Loads PHPExcel from file</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodloadIntoExisting"></a> + <h3>method loadIntoExisting <span class="smalllinenumber">[line 397]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> loadIntoExisting( +string +$pFilename, PHPExcel +$objPHPExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file into PHPExcel instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$objPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLoadAllSheets"></a> + <h3>method setLoadAllSheets <span class="smalllinenumber">[line 143]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a> setLoadAllSheets( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Set all sheets to load<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLoadSheetsOnly"></a> + <h3>method setLoadSheetsOnly <span class="smalllinenumber">[line 130]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a> setLoadSheetsOnly( +[mixed +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set which sheets to load<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadDataOnly"></a> + <h3>method setReadDataOnly <span class="smalllinenumber">[line 107]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a> setReadDataOnly( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set read data only<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadFilter"></a> + <h3>method setReadFilter <span class="smalllinenumber">[line 166]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a> setReadFilter( +<a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_Excel2007.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_Excel2007.html new file mode 100644 index 0000000..251b66a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_Excel2007.html @@ -0,0 +1,715 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_Excel2007</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_Excel2007</h1> +Source Location: /PHPExcel/Reader/Excel2007.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_Excel2007</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodcanRead">canRead</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetIncludeCharts">getIncludeCharts</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetLoadSheetsOnly">getLoadSheetsOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetReadDataOnly">getReadDataOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetReadFilter">getReadFilter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodlistWorksheetInfo">listWorksheetInfo</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodlistWorksheetNames">listWorksheetNames</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodload">load</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetIncludeCharts">setIncludeCharts</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetLoadAllSheets">setLoadAllSheets</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetLoadSheetsOnly">setLoadSheetsOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetReadDataOnly">setReadDataOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetReadFilter">setReadFilter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#method_getFromZipArchive">_getFromZipArchive</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 45]<br /> +PHPExcel_Reader_Excel2007<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 97]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Reader_Excel2007 __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Reader_Excel2007 instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcanRead"></a> + <h3>method canRead <span class="smalllinenumber">[line 231]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean canRead( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Can the current PHPExcel_Reader_IReader read the file?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodcanRead">PHPExcel_Reader_IReader::canRead()</a></dt> + <dd>Can the current PHPExcel_Reader_IReader read the file?</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIncludeCharts"></a> + <h3>method getIncludeCharts <span class="smalllinenumber">[line 138]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIncludeCharts( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read charts in workbook? If this is true, then the Reader will include any charts that exist in the workbook.<br /><br /><p>Note that a ReadDataOnly value of false overrides, and charts won't be read regardless of the IncludeCharts value. If false (the default) it will ignore any charts defined in the workbook file.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLoadSheetsOnly"></a> + <h3>method getLoadSheetsOnly <span class="smalllinenumber">[line 166]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getLoadSheetsOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadDataOnly"></a> + <h3>method getReadDataOnly <span class="smalllinenumber">[line 110]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getReadDataOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.<br /><br /><p>If false (the default) it will read data and formatting.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadFilter"></a> + <h3>method getReadFilter <span class="smalllinenumber">[line 207]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> getReadFilter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetInfo"></a> + <h3>method listWorksheetInfo <span class="smalllinenumber">[line 274]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetInfo( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetNames"></a> + <h3>method listWorksheetNames <span class="smalllinenumber">[line 444]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetNames( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodload"></a> + <h3>method load <span class="smalllinenumber">[line 483]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void load( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodload">PHPExcel_Reader_IReader::load()</a></dt> + <dd>Loads PHPExcel from file</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetIncludeCharts"></a> + <h3>method setIncludeCharts <span class="smalllinenumber">[line 153]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a> setIncludeCharts( +[boolean +$pValue = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set read charts in workbook Set to true, to advise the Reader to include any charts that exist in the workbook.<br /><br /><p>Note that a ReadDataOnly value of false overrides, and charts won't be read regardless of the IncludeCharts value. Set to false (the default) to discard charts.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLoadAllSheets"></a> + <h3>method setLoadAllSheets <span class="smalllinenumber">[line 195]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a> setLoadAllSheets( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Set all sheets to load Tells the Reader to load all worksheets from the workbook.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLoadSheetsOnly"></a> + <h3>method setLoadSheetsOnly <span class="smalllinenumber">[line 181]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a> setLoadSheetsOnly( +[mixed +$value = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set which sheets to load<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>This should be either an array of worksheet names to be loaded, or a string containing a single worksheet name. If NULL, then it tells the Reader to read all worksheets in the workbook</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadDataOnly"></a> + <h3>method setReadDataOnly <span class="smalllinenumber">[line 124]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a> setReadDataOnly( +[boolean +$pValue = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.<br /><br /><p>Set to false (the default) to advise the Reader to read both data and formatting for cells.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadFilter"></a> + <h3>method setReadFilter <span class="smalllinenumber">[line 218]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a> setReadFilter( +<a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_getFromZipArchive"></a> + <h3>method _getFromZipArchive <span class="smalllinenumber">[line 418]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _getFromZipArchive( +ZipArchive +$archive, [ +$fileName = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">ZipArchive&nbsp;&nbsp;</td> + <td><b>$archive</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$fileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html new file mode 100644 index 0000000..54bcefb --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html @@ -0,0 +1,655 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_Gnumeric</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_Gnumeric</h1> +Source Location: /PHPExcel/Reader/Gnumeric.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_Gnumeric</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodcanRead">canRead</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodgetLoadSheetsOnly">getLoadSheetsOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodgetReadDataOnly">getReadDataOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodgetReadFilter">getReadFilter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodlistWorksheetInfo">listWorksheetInfo</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodlistWorksheetNames">listWorksheetNames</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodload">load</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodloadIntoExisting">loadIntoExisting</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetLoadAllSheets">setLoadAllSheets</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetLoadSheetsOnly">setLoadSheetsOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetReadDataOnly">setReadDataOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetReadFilter">setReadFilter</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 45]<br /> +PHPExcel_Reader_Gnumeric<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 91]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Reader_Gnumeric __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Reader_Gnumeric<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcanRead"></a> + <h3>method canRead <span class="smalllinenumber">[line 196]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean canRead( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Can the current PHPExcel_Reader_IReader read the file?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodcanRead">PHPExcel_Reader_IReader::canRead()</a></dt> + <dd>Can the current PHPExcel_Reader_IReader read the file?</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLoadSheetsOnly"></a> + <h3>method getLoadSheetsOnly <span class="smalllinenumber">[line 131]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getLoadSheetsOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadDataOnly"></a> + <h3>method getReadDataOnly <span class="smalllinenumber">[line 104]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getReadDataOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.<br /><br /><p>If false (the default) it will read data and formatting.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadFilter"></a> + <h3>method getReadFilter <span class="smalllinenumber">[line 172]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> getReadFilter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetInfo"></a> + <h3>method listWorksheetInfo <span class="smalllinenumber">[line 227]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetInfo( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetNames"></a> + <h3>method listWorksheetNames <span class="smalllinenumber">[line 307]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetNames( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodload"></a> + <h3>method load <span class="smalllinenumber">[line 291]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> load( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodload">PHPExcel_Reader_IReader::load()</a></dt> + <dd>Loads PHPExcel from file</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodloadIntoExisting"></a> + <h3>method loadIntoExisting <span class="smalllinenumber">[line 339]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> loadIntoExisting( +string +$pFilename, PHPExcel +$objPHPExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file into PHPExcel instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$objPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLoadAllSheets"></a> + <h3>method setLoadAllSheets <span class="smalllinenumber">[line 160]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a> setLoadAllSheets( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Set all sheets to load Tells the Reader to load all worksheets from the workbook.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLoadSheetsOnly"></a> + <h3>method setLoadSheetsOnly <span class="smalllinenumber">[line 146]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a> setLoadSheetsOnly( +[mixed +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set which sheets to load<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>This should be either an array of worksheet names to be loaded, or a string containing a single worksheet name. If NULL, then it tells the Reader to read all worksheets in the workbook</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadDataOnly"></a> + <h3>method setReadDataOnly <span class="smalllinenumber">[line 118]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a> setReadDataOnly( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.<br /><br /><p>Set to false (the default) to advise the Reader to read both data and formatting for cells.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadFilter"></a> + <h3>method setReadFilter <span class="smalllinenumber">[line 183]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a> setReadFilter( +<a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:21 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_HTML.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_HTML.html new file mode 100644 index 0000000..efbb111 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_HTML.html @@ -0,0 +1,549 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_HTML</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_HTML</h1> +Source Location: /PHPExcel/Reader/HTML.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_HTML</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodcanRead">canRead</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodgetInputEncoding">getInputEncoding</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodgetReadFilter">getReadFilter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodgetSheetIndex">getSheetIndex</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodload">load</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodloadIntoExisting">loadIntoExisting</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodsetInputEncoding">setInputEncoding</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodsetReadFilter">setReadFilter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodsetSheetIndex">setSheetIndex</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 45]<br /> +PHPExcel_Reader_HTML<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 114]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Reader_HTML __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Reader_HTML<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcanRead"></a> + <h3>method canRead <span class="smalllinenumber">[line 125]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean canRead( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Can the current PHPExcel_Reader_IReader read the file?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodcanRead">PHPExcel_Reader_IReader::canRead()</a></dt> + <dd>Can the current PHPExcel_Reader_IReader read the file?</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetInputEncoding"></a> + <h3>method getInputEncoding <span class="smalllinenumber">[line 191]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getInputEncoding( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get input encoding<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadFilter"></a> + <h3>method getReadFilter <span class="smalllinenumber">[line 161]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> getReadFilter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheetIndex"></a> + <h3>method getSheetIndex <span class="smalllinenumber">[line 484]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getSheetIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodload"></a> + <h3>method load <span class="smalllinenumber">[line 147]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> load( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodload">PHPExcel_Reader_IReader::load()</a></dt> + <dd>Loads PHPExcel from file</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodloadIntoExisting"></a> + <h3>method loadIntoExisting <span class="smalllinenumber">[line 438]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> loadIntoExisting( +string +$pFilename, PHPExcel +$objPHPExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file into PHPExcel instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$objPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetInputEncoding"></a> + <h3>method setInputEncoding <span class="smalllinenumber">[line 180]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setInputEncoding( +[string +$pValue = 'ANSI'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set input encoding<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Input encoding</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadFilter"></a> + <h3>method setReadFilter <span class="smalllinenumber">[line 170]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setReadFilter( +<a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSheetIndex"></a> + <h3>method setSheetIndex <span class="smalllinenumber">[line 494]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a> setSheetIndex( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Sheet index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:28 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html new file mode 100644 index 0000000..843bcd5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html @@ -0,0 +1,234 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_IReadFilter</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_IReadFilter</h1> +Source Location: /PHPExcel/Reader/IReadFilter.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Interface Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_IReadFilter</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html#methodreadCell">readCell</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Reader_IReadFilter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodreadCell"></a> + <h3>method readCell <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean readCell( +$column +$column, $row +$row, [$worksheetName +$worksheetName = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Should this cell be read?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">$column&nbsp;&nbsp;</td> + <td><b>$column</b>&nbsp;&nbsp;</td> + <td>String column index</td> + </tr> + <tr> + <td class="type">$row&nbsp;&nbsp;</td> + <td><b>$row</b>&nbsp;&nbsp;</td> + <td>Row index</td> + </tr> + <tr> + <td class="type">$worksheetName&nbsp;&nbsp;</td> + <td><b>$worksheetName</b>&nbsp;&nbsp;</td> + <td>Optional worksheet name</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_IReader.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_IReader.html new file mode 100644 index 0000000..1650a2a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_IReader.html @@ -0,0 +1,274 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_IReader</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_IReader</h1> +Source Location: /PHPExcel/Reader/IReader.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Interface Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_IReader</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodcanRead">canRead</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodload">load</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Reader_IReader<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodcanRead"></a> + <h3>method canRead <span class="smalllinenumber">[line 44]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean canRead( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Can the current PHPExcel_Reader_IReader read the file?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodload"></a> + <h3>method load <span class="smalllinenumber">[line 52]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void load( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_OOCalc.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_OOCalc.html new file mode 100644 index 0000000..a7bdee9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_OOCalc.html @@ -0,0 +1,655 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_OOCalc</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_OOCalc</h1> +Source Location: /PHPExcel/Reader/OOCalc.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_OOCalc</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodcanRead">canRead</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodgetLoadSheetsOnly">getLoadSheetsOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodgetReadDataOnly">getReadDataOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodgetReadFilter">getReadFilter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodlistWorksheetInfo">listWorksheetInfo</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodlistWorksheetNames">listWorksheetNames</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodload">load</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodloadIntoExisting">loadIntoExisting</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetLoadAllSheets">setLoadAllSheets</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetLoadSheetsOnly">setLoadSheetsOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetReadDataOnly">setReadDataOnly</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetReadFilter">setReadFilter</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 45]<br /> +PHPExcel_Reader_OOCalc<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 82]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Reader_OOCalc __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Reader_OOCalc<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcanRead"></a> + <h3>method canRead <span class="smalllinenumber">[line 185]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean canRead( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Can the current PHPExcel_Reader_IReader read the file?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodcanRead">PHPExcel_Reader_IReader::canRead()</a></dt> + <dd>Can the current PHPExcel_Reader_IReader read the file?</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLoadSheetsOnly"></a> + <h3>method getLoadSheetsOnly <span class="smalllinenumber">[line 120]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getLoadSheetsOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadDataOnly"></a> + <h3>method getReadDataOnly <span class="smalllinenumber">[line 94]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getReadDataOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.<br /><br /><p>If false (the default) it will read data and formatting.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadFilter"></a> + <h3>method getReadFilter <span class="smalllinenumber">[line 161]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> getReadFilter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetInfo"></a> + <h3>method listWorksheetInfo <span class="smalllinenumber">[line 289]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetInfo( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetNames"></a> + <h3>method listWorksheetNames <span class="smalllinenumber">[line 224]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetNames( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodload"></a> + <h3>method load <span class="smalllinenumber">[line 261]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> load( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodload">PHPExcel_Reader_IReader::load()</a></dt> + <dd>Loads PHPExcel from file</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodloadIntoExisting"></a> + <h3>method loadIntoExisting <span class="smalllinenumber">[line 363]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> loadIntoExisting( +string +$pFilename, PHPExcel +$objPHPExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file into PHPExcel instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$objPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLoadAllSheets"></a> + <h3>method setLoadAllSheets <span class="smalllinenumber">[line 149]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a> setLoadAllSheets( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Set all sheets to load Tells the Reader to load all worksheets from the workbook.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLoadSheetsOnly"></a> + <h3>method setLoadSheetsOnly <span class="smalllinenumber">[line 135]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a> setLoadSheetsOnly( +[mixed +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set which sheets to load<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>This should be either an array of worksheet names to be loaded, or a string containing a single worksheet name. If NULL, then it tells the Reader to read all worksheets in the workbook</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadDataOnly"></a> + <h3>method setReadDataOnly <span class="smalllinenumber">[line 107]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a> setReadDataOnly( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.<br /><br /><p>Set to false (the default) to advise the Reader to read both data and formatting for cells.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadFilter"></a> + <h3>method setReadFilter <span class="smalllinenumber">[line 172]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a> setReadFilter( +<a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:46 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_SYLK.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_SYLK.html new file mode 100644 index 0000000..177b489 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/PHPExcel_Reader_SYLK.html @@ -0,0 +1,589 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_SYLK</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_SYLK</h1> +Source Location: /PHPExcel/Reader/SYLK.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_SYLK</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodcanRead">canRead</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodgetInputEncoding">getInputEncoding</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodgetReadFilter">getReadFilter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodgetSheetIndex">getSheetIndex</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodlistWorksheetInfo">listWorksheetInfo</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodload">load</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodloadIntoExisting">loadIntoExisting</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodsetInputEncoding">setInputEncoding</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodsetReadFilter">setReadFilter</a></li> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodsetSheetIndex">setSheetIndex</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 45]<br /> +PHPExcel_Reader_SYLK<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 86]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Reader_SYLK __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Reader_SYLK<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcanRead"></a> + <h3>method canRead <span class="smalllinenumber">[line 98]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean canRead( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Can the current PHPExcel_Reader_IReader read the file?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodcanRead">PHPExcel_Reader_IReader::canRead()</a></dt> + <dd>Can the current PHPExcel_Reader_IReader read the file?</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetInputEncoding"></a> + <h3>method getInputEncoding <span class="smalllinenumber">[line 164]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getInputEncoding( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get input encoding<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadFilter"></a> + <h3>method getReadFilter <span class="smalllinenumber">[line 131]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> getReadFilter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheetIndex"></a> + <h3>method getSheetIndex <span class="smalllinenumber">[line 482]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getSheetIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetInfo"></a> + <h3>method listWorksheetInfo <span class="smalllinenumber">[line 176]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetInfo( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodload"></a> + <h3>method load <span class="smalllinenumber">[line 249]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> load( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodload">PHPExcel_Reader_IReader::load()</a></dt> + <dd>Loads PHPExcel from file</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodloadIntoExisting"></a> + <h3>method loadIntoExisting <span class="smalllinenumber">[line 267]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> loadIntoExisting( +string +$pFilename, PHPExcel +$objPHPExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file into PHPExcel instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$objPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetInputEncoding"></a> + <h3>method setInputEncoding <span class="smalllinenumber">[line 152]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setInputEncoding( +[string +$pValue = 'ANSI'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set input encoding<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Input encoding</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadFilter"></a> + <h3>method setReadFilter <span class="smalllinenumber">[line 141]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setReadFilter( +<a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSheetIndex"></a> + <h3>method setSheetIndex <span class="smalllinenumber">[line 493]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a> setSheetIndex( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Sheet index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:06 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html new file mode 100644 index 0000000..f04ae7d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html @@ -0,0 +1,149 @@ +<html> +<head> +<title>Docs for page CSV.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: CSV.php</h1> +Source Location: /PHPExcel/Reader/CSV.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a></dt> + <dd>PHPExcel_Reader_CSV</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html new file mode 100644 index 0000000..68364ca --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html @@ -0,0 +1,149 @@ +<html> +<head> +<title>Docs for page DefaultReadFilter.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DefaultReadFilter.php</h1> +Source Location: /PHPExcel/Reader/DefaultReadFilter.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a></dt> + <dd>PHPExcel_Reader_DefaultReadFilter</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html new file mode 100644 index 0000000..51199bf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html @@ -0,0 +1,149 @@ +<html> +<head> +<title>Docs for page Excel2003XML.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Excel2003XML.php</h1> +Source Location: /PHPExcel/Reader/Excel2003XML.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a></dt> + <dd>PHPExcel_Reader_Excel2003XML</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html new file mode 100644 index 0000000..5b8fa52 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html @@ -0,0 +1,149 @@ +<html> +<head> +<title>Docs for page Excel2007.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Excel2007.php</h1> +Source Location: /PHPExcel/Reader/Excel2007.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a></dt> + <dd>PHPExcel_Reader_Excel2007</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html new file mode 100644 index 0000000..9eadf17 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html @@ -0,0 +1,149 @@ +<html> +<head> +<title>Docs for page Gnumeric.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Gnumeric.php</h1> +Source Location: /PHPExcel/Reader/Gnumeric.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a></dt> + <dd>PHPExcel_Reader_Gnumeric</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:21 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html new file mode 100644 index 0000000..2030a6f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html @@ -0,0 +1,149 @@ +<html> +<head> +<title>Docs for page HTML.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: HTML.php</h1> +Source Location: /PHPExcel/Reader/HTML.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a></dt> + <dd>PHPExcel_Reader_HTML</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:28 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html new file mode 100644 index 0000000..a59d5b4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html @@ -0,0 +1,145 @@ +<html> +<head> +<title>Docs for page IReadFilter.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: IReadFilter.php</h1> +Source Location: /PHPExcel/Reader/IReadFilter.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a></dt> + <dd>PHPExcel_Reader_IReadFilter</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html new file mode 100644 index 0000000..51a28cc --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html @@ -0,0 +1,145 @@ +<html> +<head> +<title>Docs for page IReader.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: IReader.php</h1> +Source Location: /PHPExcel/Reader/IReader.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a></dt> + <dd>PHPExcel_Reader_IReader</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html new file mode 100644 index 0000000..d4c204f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html @@ -0,0 +1,149 @@ +<html> +<head> +<title>Docs for page OOCalc.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: OOCalc.php</h1> +Source Location: /PHPExcel/Reader/OOCalc.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a></dt> + <dd>PHPExcel_Reader_OOCalc</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:46 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html new file mode 100644 index 0000000..13003a4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html @@ -0,0 +1,149 @@ +<html> +<head> +<title>Docs for page SYLK.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="../elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="../PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: SYLK.php</h1> +Source Location: /PHPExcel/Reader/SYLK.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a></dt> + <dd>PHPExcel_Reader_SYLK</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 35]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:06 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_notes/dwsync.xml new file mode 100644 index 0000000..aa712ee --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader/_notes/dwsync.xml @@ -0,0 +1,143 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Reader_CSV.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_DefaultReadFilter.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2003XML.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2007.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_Gnumeric.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_HTML.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_IReader.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_IReadFilter.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_OOCalc.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_SYLK.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---CSV.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---DefaultReadFilter.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2003XML.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2007.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Gnumeric.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---HTML.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---IReader.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---IReadFilter.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---OOCalc.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---SYLK.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2007.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Reader_Gnumeric.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Reader---HTML.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Reader_IReader.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2007.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Gnumeric.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Reader---IReader.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Reader_SYLK.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2003XML.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Reader_DefaultReadFilter.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Reader---SYLK.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Reader_IReadFilter.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Reader_CSV.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Reader---DefaultReadFilter.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2003XML.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Reader---IReadFilter.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Reader_OOCalc.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Reader---CSV.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Reader_HTML.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Reader---OOCalc.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2007.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Reader_Gnumeric.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Reader---HTML.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Reader_IReader.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2007.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Gnumeric.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Reader---IReader.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Reader_SYLK.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2003XML.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Reader_DefaultReadFilter.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Reader---SYLK.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Reader_IReadFilter.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Reader_CSV.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Reader---DefaultReadFilter.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2003XML.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Reader---IReadFilter.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Reader_OOCalc.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Reader---CSV.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Reader_HTML.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Reader---OOCalc.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2007.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560268544629" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_Gnumeric.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560269198842" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---HTML.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560269819855" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_IReader.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560270456314" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Excel2007.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560271057955" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Gnumeric.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560271624057" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---IReader.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560272110393" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_SYLK.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560272618879" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel2003XML.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560273126925" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_DefaultReadFilter.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560273642764" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---SYLK.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560274229627" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_IReadFilter.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560274761102" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---DefaultReadFilter.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560275788865" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Excel2003XML.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560276302784" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_CSV.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560275284762" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---IReadFilter.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560276867227" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_OOCalc.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560277371612" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---CSV.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560277977830" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_HTML.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560278513602" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---OOCalc.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560279047495" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel2007.html" server="62.244.88.21/amashow/" local="131414752630310597" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_Gnumeric.html" server="62.244.88.21/amashow/" local="131414752630797566" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---HTML.php.html" server="62.244.88.21/amashow/" local="131414752631001676" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_IReader.html" server="62.244.88.21/amashow/" local="131414752631458766" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel2007.php.html" server="62.244.88.21/amashow/" local="131414752631917956" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---Gnumeric.php.html" server="62.244.88.21/amashow/" local="131414752632625286" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---IReader.php.html" server="62.244.88.21/amashow/" local="131414752632829446" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_SYLK.html" server="62.244.88.21/amashow/" local="131414752633053634" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_Excel2003XML.html" server="62.244.88.21/amashow/" local="131414752633292124" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_DefaultReadFilter.html" server="62.244.88.21/amashow/" local="131414752633503660" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---SYLK.php.html" server="62.244.88.21/amashow/" local="131414752633729331" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_IReadFilter.html" server="62.244.88.21/amashow/" local="131414752633994035" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_CSV.html" server="62.244.88.21/amashow/" local="131414752634227223" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel2003XML.php.html" server="62.244.88.21/amashow/" local="131414752634665391" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---DefaultReadFilter.php.html" server="62.244.88.21/amashow/" local="131414752634432667" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---IReadFilter.php.html" server="62.244.88.21/amashow/" local="131414752635675305" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_OOCalc.html" server="62.244.88.21/amashow/" local="131414752636278726" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---CSV.php.html" server="62.244.88.21/amashow/" local="131414752636507114" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_HTML.html" server="62.244.88.21/amashow/" local="131414752637181625" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---OOCalc.php.html" server="62.244.88.21/amashow/" local="131414752640968577" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---HTML.php.html" server="62.244.88.21/deciday/" local="131919461568356406" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---CSV.php.html" server="62.244.88.21/deciday/" local="131919461563661320" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---OOCalc.php.html" server="62.244.88.21/deciday/" local="131919461571541183" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_IReader.html" server="62.244.88.21/deciday/" local="131919461569256209" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---SYLK.php.html" server="62.244.88.21/deciday/" local="131919461572745432" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel2003XML.html" server="62.244.88.21/deciday/" local="131919461565151112" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_DefaultReadFilter.html" server="62.244.88.21/deciday/" local="131919461563303417" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---DefaultReadFilter.php.html" server="62.244.88.21/deciday/" local="131919461564792414" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---IReader.php.html" server="62.244.88.21/deciday/" local="131919461569603178" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Excel2007.php.html" server="62.244.88.21/deciday/" local="131919461566356513" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Excel2003XML.php.html" server="62.244.88.21/deciday/" local="131919461564971993" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_IReadFilter.html" server="62.244.88.21/deciday/" local="131919461569893345" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_OOCalc.html" server="62.244.88.21/deciday/" local="131919461571359732" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_CSV.html" server="62.244.88.21/deciday/" local="131919461563479550" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_SYLK.html" server="62.244.88.21/deciday/" local="131919461571902738" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_HTML.html" server="62.244.88.21/deciday/" local="131919461567912367" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---IReadFilter.php.html" server="62.244.88.21/deciday/" local="131919461570473822" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel2007.html" server="62.244.88.21/deciday/" local="131919461566741838" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_Gnumeric.html" server="62.244.88.21/deciday/" local="131919461566538655" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Gnumeric.php.html" server="62.244.88.21/deciday/" local="131919461567574177" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_DefaultReadFilter.html" server="62.244.88.21/deciday_18/" local="131414752633503660" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Reader_CSV.html" server="62.244.88.21/deciday_18/" local="131414752634227223" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Reader_Excel2003XML.html" server="62.244.88.21/deciday_18/" local="131414752633292124" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Reader_Excel2007.html" server="62.244.88.21/deciday_18/" local="131414752630310597" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Reader_Gnumeric.html" server="62.244.88.21/deciday_18/" local="131414752630797566" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Reader_IReader.html" server="62.244.88.21/deciday_18/" local="131414752631458766" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Reader_HTML.html" server="62.244.88.21/deciday_18/" local="131414752637181625" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Reader_IReadFilter.html" server="62.244.88.21/deciday_18/" local="131414752633994035" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Reader_SYLK.html" server="62.244.88.21/deciday_18/" local="131414752633053634" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---CSV.php.html" server="62.244.88.21/deciday_18/" local="131414752636507114" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Reader_OOCalc.html" server="62.244.88.21/deciday_18/" local="131414752636278726" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel2003XML.php.html" server="62.244.88.21/deciday_18/" local="131414752634665391" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel2007.php.html" server="62.244.88.21/deciday_18/" local="131414752631917956" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---DefaultReadFilter.php.html" server="62.244.88.21/deciday_18/" local="131414752634432667" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---Gnumeric.php.html" server="62.244.88.21/deciday_18/" local="131414752632625286" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---HTML.php.html" server="62.244.88.21/deciday_18/" local="131414752631001676" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---IReader.php.html" server="62.244.88.21/deciday_18/" local="131414752632829446" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---OOCalc.php.html" server="62.244.88.21/deciday_18/" local="131414752640968577" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---SYLK.php.html" server="62.244.88.21/deciday_18/" local="131414752633729331" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---IReadFilter.php.html" server="62.244.88.21/deciday_18/" local="131414752635675305" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html new file mode 100644 index 0000000..3bbb0f3 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html @@ -0,0 +1,199 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_Excel2007_Chart</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader_Excel2007.html" class="menu">class tree: PHPExcel_Reader_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Reader_Excel2007.html" class="menu">index: PHPExcel_Reader_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel2007/_PHPExcel---Reader---Excel2007---Theme.php.html"> Theme.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html">PHPExcel_Reader_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html">PHPExcel_Reader_Excel2007_Theme</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_Excel2007_Chart</h1> +Source Location: /PHPExcel/Reader/Excel2007/Chart.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_Excel2007_Chart</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html#methodreadChart">readChart</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Reader_Excel2007_Chart<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodreadChart"></a> + <h3>static method readChart <span class="smalllinenumber">[line 63]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void readChart( + +$chartElements, +$chartName)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$chartElements</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$chartName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:24 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html new file mode 100644 index 0000000..a5dc437 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html @@ -0,0 +1,320 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_Excel2007_Theme</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader_Excel2007.html" class="menu">class tree: PHPExcel_Reader_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Reader_Excel2007.html" class="menu">index: PHPExcel_Reader_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel2007/_PHPExcel---Reader---Excel2007---Theme.php.html"> Theme.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html">PHPExcel_Reader_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html">PHPExcel_Reader_Excel2007_Theme</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_Excel2007_Theme</h1> +Source Location: /PHPExcel/Reader/Excel2007/Theme.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_Excel2007_Theme</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#methodgetColourByIndex">getColourByIndex</a></li> + <li><a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#methodgetColourSchemeName">getColourSchemeName</a></li> + <li><a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#methodgetThemeName">getThemeName</a></li> + <li><a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Reader_Excel2007_Theme<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 72]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Reader_Excel2007_Theme __construct( + +$themeName, +$colourSchemeName, +$colourMap)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Theme<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$themeName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$colourSchemeName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$colourMap</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColourByIndex"></a> + <h3>method getColourByIndex <span class="smalllinenumber">[line 104]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getColourByIndex( +[ +$index = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Get colour Map Value by Position<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColourSchemeName"></a> + <h3>method getColourSchemeName <span class="smalllinenumber">[line 95]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getColourSchemeName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get colour Scheme Name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetThemeName"></a> + <h3>method getThemeName <span class="smalllinenumber">[line 85]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getThemeName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Theme Name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 114]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/_PHPExcel---Reader---Excel2007---Theme.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/_PHPExcel---Reader---Excel2007---Theme.php.html new file mode 100644 index 0000000..bb314c9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/_PHPExcel---Reader---Excel2007---Theme.php.html @@ -0,0 +1,116 @@ +<html> +<head> +<title>Docs for page Theme.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader_Excel2007.html" class="menu">class tree: PHPExcel_Reader_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Reader_Excel2007.html" class="menu">index: PHPExcel_Reader_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel2007/_PHPExcel---Reader---Excel2007---Theme.php.html"> Theme.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html">PHPExcel_Reader_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html">PHPExcel_Reader_Excel2007_Theme</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Theme.php</h1> +Source Location: /PHPExcel/Reader/Excel2007/Theme.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html">PHPExcel_Reader_Excel2007_Theme</a></dt> + <dd>PHPExcel_Reader_Excel2007_Theme</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/_notes/dwsync.xml new file mode 100644 index 0000000..656add8 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel2007/_notes/dwsync.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Reader_Excel2007_Chart.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2007_Theme.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2007---Theme.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2007---Theme.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2007_Chart.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2007_Theme.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2007---Theme.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2007_Chart.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel2007_Theme.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2007---Theme.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560321476753" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel2007_Chart.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560321914600" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel2007_Theme.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560322362611" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Excel2007---Theme.php.html" server="62.244.88.21/amashow/" local="131414752673296765" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_Excel2007_Theme.html" server="62.244.88.21/amashow/" local="131414752673959810" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_Excel2007_Chart.html" server="62.244.88.21/amashow/" local="131414752673738798" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_Excel2007_Theme.html" server="62.244.88.21/deciday/" local="131919461573222660" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Excel2007---Theme.php.html" server="62.244.88.21/deciday/" local="131919461573737315" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel2007_Chart.html" server="62.244.88.21/deciday/" local="131919461572566218" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel2007_Theme.html" server="62.244.88.21/deciday_18/" local="131414752673959810" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel2007---Theme.php.html" server="62.244.88.21/deciday_18/" local="131414752673296765" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Reader_Excel2007_Chart.html" server="62.244.88.21/deciday_18/" local="131414752673738798" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html new file mode 100644 index 0000000..075e85c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html @@ -0,0 +1,1284 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_Excel5</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader_Excel5.html" class="menu">class tree: PHPExcel_Reader_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Reader_Excel5.html" class="menu">index: PHPExcel_Reader_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html"> Excel5.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html">PHPExcel_Reader_Excel5_Escher</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_Excel5</h1> +Source Location: /PHPExcel/Reader/Excel5.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_Excel5</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_BIFF7">XLS_BIFF7</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_BIFF8">XLS_BIFF8</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_ARRAY">XLS_Type_ARRAY</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BLANK">XLS_Type_BLANK</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BOF">XLS_Type_BOF</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BOOLERR">XLS_Type_BOOLERR</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BOTTOMMARGIN">XLS_Type_BOTTOMMARGIN</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_CODEPAGE">XLS_Type_CODEPAGE</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_COLINFO">XLS_Type_COLINFO</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_CONTINUE">XLS_Type_CONTINUE</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DATAVALIDATION">XLS_Type_DATAVALIDATION</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DATAVALIDATIONS">XLS_Type_DATAVALIDATIONS</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DATEMODE">XLS_Type_DATEMODE</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DBCELL">XLS_Type_DBCELL</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DEFAULTROWHEIGHT">XLS_Type_DEFAULTROWHEIGHT</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DEFCOLWIDTH">XLS_Type_DEFCOLWIDTH</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DEFINEDNAME">XLS_Type_DEFINEDNAME</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DIMENSION">XLS_Type_DIMENSION</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EOF">XLS_Type_EOF</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTERNALBOOK">XLS_Type_EXTERNALBOOK</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTERNNAME">XLS_Type_EXTERNNAME</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTERNSHEET">XLS_Type_EXTERNSHEET</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTSST">XLS_Type_EXTSST</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FILEPASS">XLS_Type_FILEPASS</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FONT">XLS_Type_FONT</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FOOTER">XLS_Type_FOOTER</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FORMAT">XLS_Type_FORMAT</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FORMULA">XLS_Type_FORMULA</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HCENTER">XLS_Type_HCENTER</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HEADER">XLS_Type_HEADER</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HORIZONTALPAGEBREAKS">XLS_Type_HORIZONTALPAGEBREAKS</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HYPERLINK">XLS_Type_HYPERLINK</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_IMDATA">XLS_Type_IMDATA</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_INDEX">XLS_Type_INDEX</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_LABEL">XLS_Type_LABEL</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_LABELSST">XLS_Type_LABELSST</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_LEFTMARGIN">XLS_Type_LEFTMARGIN</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MERGEDCELLS">XLS_Type_MERGEDCELLS</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MSODRAWING">XLS_Type_MSODRAWING</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MSODRAWINGGROUP">XLS_Type_MSODRAWINGGROUP</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MULBLANK">XLS_Type_MULBLANK</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MULRK">XLS_Type_MULRK</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_NOTE">XLS_Type_NOTE</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_NUMBER">XLS_Type_NUMBER</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_OBJ">XLS_Type_OBJ</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_OBJECTPROTECT">XLS_Type_OBJECTPROTECT</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PAGESETUP">XLS_Type_PAGESETUP</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PALETTE">XLS_Type_PALETTE</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PANE">XLS_Type_PANE</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PASSWORD">XLS_Type_PASSWORD</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PRINTGRIDLINES">XLS_Type_PRINTGRIDLINES</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PROTECT">XLS_Type_PROTECT</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_RANGEPROTECTION">XLS_Type_RANGEPROTECTION</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_RIGHTMARGIN">XLS_Type_RIGHTMARGIN</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_RK">XLS_Type_RK</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_ROW">XLS_Type_ROW</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SCENPROTECT">XLS_Type_SCENPROTECT</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SCL">XLS_Type_SCL</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SELECTION">XLS_Type_SELECTION</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHAREDFMLA">XLS_Type_SHAREDFMLA</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEET">XLS_Type_SHEET</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEETLAYOUT">XLS_Type_SHEETLAYOUT</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEETPR">XLS_Type_SHEETPR</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEETPROTECTION">XLS_Type_SHEETPROTECTION</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SST">XLS_Type_SST</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_STRING">XLS_Type_STRING</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_STYLE">XLS_Type_STYLE</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_TOPMARGIN">XLS_Type_TOPMARGIN</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_TXO">XLS_Type_TXO</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_UNKNOWN">XLS_Type_UNKNOWN</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_VCENTER">XLS_Type_VCENTER</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_VERTICALPAGEBREAKS">XLS_Type_VERTICALPAGEBREAKS</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_WINDOW2">XLS_Type_WINDOW2</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_XF">XLS_Type_XF</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_XFEXT">XLS_Type_XFEXT</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_WorkbookGlobals">XLS_WorkbookGlobals</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Worksheet">XLS_Worksheet</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodcanRead">canRead</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodgetLoadSheetsOnly">getLoadSheetsOnly</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodgetReadDataOnly">getReadDataOnly</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodgetReadFilter">getReadFilter</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodlistWorksheetInfo">listWorksheetInfo</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodlistWorksheetNames">listWorksheetNames</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodload">load</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetLoadAllSheets">setLoadAllSheets</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetLoadSheetsOnly">setLoadSheetsOnly</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetReadDataOnly">setReadDataOnly</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetReadFilter">setReadFilter</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#method_GetInt2d">_GetInt2d</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#method_GetInt4d">_GetInt4d</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 78]<br /> +PHPExcel_Reader_Excel5<br /><br /><p>This class uses <a href="http://sourceforge.net/projects/phpexcelreader/parseXL">http://sourceforge.net/projects/phpexcelreader/parseXL</a></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="method_GetInt2d"></a> + <h3>static method _GetInt2d <span class="smalllinenumber">[line 6576]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int _GetInt2d( +string +$data, int +$pos)</code> + </td></tr></table> + </td></tr></table><br /> + + Read 16-bit unsigned integer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$data</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pos</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_GetInt4d"></a> + <h3>static method _GetInt4d <span class="smalllinenumber">[line 6589]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int _GetInt4d( +string +$data, int +$pos)</code> + </td></tr></table> + </td></tr></table><br /> + + Read 32-bit signed integer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$data</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pos</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="methodcanRead"></a> + <h3>method canRead <span class="smalllinenumber">[line 515]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean canRead( + +$pFilename, string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Can the current PHPExcel_Reader_IReader read the file?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLoadSheetsOnly"></a> + <h3>method getLoadSheetsOnly <span class="smalllinenumber">[line 450]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getLoadSheetsOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadDataOnly"></a> + <h3>method getReadDataOnly <span class="smalllinenumber">[line 421]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getReadDataOnly( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.<br /><br /><p>If false (the default) it will read data and formatting.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetReadFilter"></a> + <h3>method getReadFilter <span class="smalllinenumber">[line 491]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a> getReadFilter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetInfo"></a> + <h3>method listWorksheetInfo <span class="smalllinenumber">[line 591]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetInfo( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodlistWorksheetNames"></a> + <h3>method listWorksheetNames <span class="smalllinenumber">[line 542]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void listWorksheetNames( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodload"></a> + <h3>method load <span class="smalllinenumber">[line 686]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> load( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Loads PHPExcel from file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLoadAllSheets"></a> + <h3>method setLoadAllSheets <span class="smalllinenumber">[line 479]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a> setLoadAllSheets( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Set all sheets to load Tells the Reader to load all worksheets from the workbook.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLoadSheetsOnly"></a> + <h3>method setLoadSheetsOnly <span class="smalllinenumber">[line 465]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a> setLoadSheetsOnly( +[mixed +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set which sheets to load<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>This should be either an array of worksheet names to be loaded, or a string containing a single worksheet name. If NULL, then it tells the Reader to read all worksheets in the workbook</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadDataOnly"></a> + <h3>method setReadDataOnly <span class="smalllinenumber">[line 436]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a> setReadDataOnly( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.<br /><br /><p>Set to false (the default) to advise the Reader to read both data and formatting for cells.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetReadFilter"></a> + <h3>method setReadFilter <span class="smalllinenumber">[line 502]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a> setReadFilter( +PHPExcel_Reader_IReadFilter +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set read filter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 409]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Reader_Excel5 __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Reader_Excel5 instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constXLS_BIFF7"></a> + <p></p> + <h4>XLS_BIFF7 = <span class="value">&nbsp;0x0500</span></h4> + <p>[line 82]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_BIFF8"></a> + <p></p> + <h4>XLS_BIFF8 = <span class="value">&nbsp;0x0600</span></h4> + <p>[line 81]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_ARRAY"></a> + <p></p> + <h4>XLS_Type_ARRAY = <span class="value">&nbsp;0x0221</span></h4> + <p>[line 147]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_BLANK"></a> + <p></p> + <h4>XLS_Type_BLANK = <span class="value">&nbsp;0x0201</span></h4> + <p>[line 140]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_BOF"></a> + <p></p> + <h4>XLS_Type_BOF = <span class="value">&nbsp;0x0809</span></h4> + <p>[line 154]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_BOOLERR"></a> + <p></p> + <h4>XLS_Type_BOOLERR = <span class="value">&nbsp;0x0205</span></h4> + <p>[line 143]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_BOTTOMMARGIN"></a> + <p></p> + <h4>XLS_Type_BOTTOMMARGIN = <span class="value">&nbsp;0x0029</span></h4> + <p>[line 106]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_CODEPAGE"></a> + <p></p> + <h4>XLS_Type_CODEPAGE = <span class="value">&nbsp;0x0042</span></h4> + <p>[line 112]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_COLINFO"></a> + <p></p> + <h4>XLS_Type_COLINFO = <span class="value">&nbsp;0x007d</span></h4> + <p>[line 115]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_CONTINUE"></a> + <p></p> + <h4>XLS_Type_CONTINUE = <span class="value">&nbsp;0x003c</span></h4> + <p>[line 110]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_DATAVALIDATION"></a> + <p></p> + <h4>XLS_Type_DATAVALIDATION = <span class="value">&nbsp;0x01be</span></h4> + <p>[line 138]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_DATAVALIDATIONS"></a> + <p></p> + <h4>XLS_Type_DATAVALIDATIONS = <span class="value">&nbsp;0x01b2</span></h4> + <p>[line 135]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_DATEMODE"></a> + <p></p> + <h4>XLS_Type_DATEMODE = <span class="value">&nbsp;0x0022</span></h4> + <p>[line 101]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_DBCELL"></a> + <p></p> + <h4>XLS_Type_DBCELL = <span class="value">&nbsp;0x00d7</span></h4> + <p>[line 126]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_DEFAULTROWHEIGHT"></a> + <p></p> + <h4>XLS_Type_DEFAULTROWHEIGHT = <span class="value">&nbsp;0x0225</span></h4> + <p>[line 148]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_DEFCOLWIDTH"></a> + <p></p> + <h4>XLS_Type_DEFCOLWIDTH = <span class="value">&nbsp;0x0055</span></h4> + <p>[line 113]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_DEFINEDNAME"></a> + <p></p> + <h4>XLS_Type_DEFINEDNAME = <span class="value">&nbsp;0x0018</span></h4> + <p>[line 96]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_DIMENSION"></a> + <p></p> + <h4>XLS_Type_DIMENSION = <span class="value">&nbsp;0x0200</span></h4> + <p>[line 139]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_EOF"></a> + <p></p> + <h4>XLS_Type_EOF = <span class="value">&nbsp;0x000a</span></h4> + <p>[line 88]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_EXTERNALBOOK"></a> + <p></p> + <h4>XLS_Type_EXTERNALBOOK = <span class="value">&nbsp;0x01ae</span></h4> + <p>[line 134]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_EXTERNNAME"></a> + <p></p> + <h4>XLS_Type_EXTERNNAME = <span class="value">&nbsp;0x0023</span></h4> + <p>[line 102]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_EXTERNSHEET"></a> + <p></p> + <h4>XLS_Type_EXTERNSHEET = <span class="value">&nbsp;0x0017</span></h4> + <p>[line 95]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_EXTSST"></a> + <p></p> + <h4>XLS_Type_EXTSST = <span class="value">&nbsp;0x00ff</span></h4> + <p>[line 133]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_FILEPASS"></a> + <p></p> + <h4>XLS_Type_FILEPASS = <span class="value">&nbsp;0x002f</span></h4> + <p>[line 108]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_FONT"></a> + <p></p> + <h4>XLS_Type_FONT = <span class="value">&nbsp;0x0031</span></h4> + <p>[line 109]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_FOOTER"></a> + <p></p> + <h4>XLS_Type_FOOTER = <span class="value">&nbsp;0x0015</span></h4> + <p>[line 94]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_FORMAT"></a> + <p></p> + <h4>XLS_Type_FORMAT = <span class="value">&nbsp;0x041e</span></h4> + <p>[line 152]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_FORMULA"></a> + <p></p> + <h4>XLS_Type_FORMULA = <span class="value">&nbsp;0x0006</span></h4> + <p>[line 87]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_HCENTER"></a> + <p></p> + <h4>XLS_Type_HCENTER = <span class="value">&nbsp;0x0083</span></h4> + <p>[line 118]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_HEADER"></a> + <p></p> + <h4>XLS_Type_HEADER = <span class="value">&nbsp;0x0014</span></h4> + <p>[line 93]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_HORIZONTALPAGEBREAKS"></a> + <p></p> + <h4>XLS_Type_HORIZONTALPAGEBREAKS = <span class="value">&nbsp;0x001b</span></h4> + <p>[line 98]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_HYPERLINK"></a> + <p></p> + <h4>XLS_Type_HYPERLINK = <span class="value">&nbsp;0x01b8</span></h4> + <p>[line 137]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_IMDATA"></a> + <p></p> + <h4>XLS_Type_IMDATA = <span class="value">&nbsp;0x007f</span></h4> + <p>[line 116]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_INDEX"></a> + <p></p> + <h4>XLS_Type_INDEX = <span class="value">&nbsp;0x020b</span></h4> + <p>[line 146]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_LABEL"></a> + <p></p> + <h4>XLS_Type_LABEL = <span class="value">&nbsp;0x0204</span></h4> + <p>[line 142]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_LABELSST"></a> + <p></p> + <h4>XLS_Type_LABELSST = <span class="value">&nbsp;0x00fd</span></h4> + <p>[line 132]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_LEFTMARGIN"></a> + <p></p> + <h4>XLS_Type_LEFTMARGIN = <span class="value">&nbsp;0x0026</span></h4> + <p>[line 103]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_MERGEDCELLS"></a> + <p></p> + <h4>XLS_Type_MERGEDCELLS = <span class="value">&nbsp;0x00e5</span></h4> + <p>[line 128]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_MSODRAWING"></a> + <p></p> + <h4>XLS_Type_MSODRAWING = <span class="value">&nbsp;0x00ec</span></h4> + <p>[line 130]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_MSODRAWINGGROUP"></a> + <p></p> + <h4>XLS_Type_MSODRAWINGGROUP = <span class="value">&nbsp;0x00eb</span></h4> + <p>[line 129]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_MULBLANK"></a> + <p></p> + <h4>XLS_Type_MULBLANK = <span class="value">&nbsp;0x00be</span></h4> + <p>[line 125]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_MULRK"></a> + <p></p> + <h4>XLS_Type_MULRK = <span class="value">&nbsp;0x00bd</span></h4> + <p>[line 124]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_NOTE"></a> + <p></p> + <h4>XLS_Type_NOTE = <span class="value">&nbsp;0x001c</span></h4> + <p>[line 99]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_NUMBER"></a> + <p></p> + <h4>XLS_Type_NUMBER = <span class="value">&nbsp;0x0203</span></h4> + <p>[line 141]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_OBJ"></a> + <p></p> + <h4>XLS_Type_OBJ = <span class="value">&nbsp;0x005d</span></h4> + <p>[line 114]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_OBJECTPROTECT"></a> + <p></p> + <h4>XLS_Type_OBJECTPROTECT = <span class="value">&nbsp;0x0063</span></h4> + <p>[line 90]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_PAGESETUP"></a> + <p></p> + <h4>XLS_Type_PAGESETUP = <span class="value">&nbsp;0x00a1</span></h4> + <p>[line 123]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_PALETTE"></a> + <p></p> + <h4>XLS_Type_PALETTE = <span class="value">&nbsp;0x0092</span></h4> + <p>[line 121]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_PANE"></a> + <p></p> + <h4>XLS_Type_PANE = <span class="value">&nbsp;0x0041</span></h4> + <p>[line 111]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_PASSWORD"></a> + <p></p> + <h4>XLS_Type_PASSWORD = <span class="value">&nbsp;0x0013</span></h4> + <p>[line 92]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_PRINTGRIDLINES"></a> + <p></p> + <h4>XLS_Type_PRINTGRIDLINES = <span class="value">&nbsp;0x002b</span></h4> + <p>[line 107]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_PROTECT"></a> + <p></p> + <h4>XLS_Type_PROTECT = <span class="value">&nbsp;0x0012</span></h4> + <p>[line 89]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_RANGEPROTECTION"></a> + <p></p> + <h4>XLS_Type_RANGEPROTECTION = <span class="value">&nbsp;0x0868</span></h4> + <p>[line 156]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_RIGHTMARGIN"></a> + <p></p> + <h4>XLS_Type_RIGHTMARGIN = <span class="value">&nbsp;0x0027</span></h4> + <p>[line 104]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_RK"></a> + <p></p> + <h4>XLS_Type_RK = <span class="value">&nbsp;0x027e</span></h4> + <p>[line 150]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_ROW"></a> + <p></p> + <h4>XLS_Type_ROW = <span class="value">&nbsp;0x0208</span></h4> + <p>[line 145]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_SCENPROTECT"></a> + <p></p> + <h4>XLS_Type_SCENPROTECT = <span class="value">&nbsp;0x00dd</span></h4> + <p>[line 91]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_SCL"></a> + <p></p> + <h4>XLS_Type_SCL = <span class="value">&nbsp;0x00a0</span></h4> + <p>[line 122]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_SELECTION"></a> + <p></p> + <h4>XLS_Type_SELECTION = <span class="value">&nbsp;0x001d</span></h4> + <p>[line 100]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_SHAREDFMLA"></a> + <p></p> + <h4>XLS_Type_SHAREDFMLA = <span class="value">&nbsp;0x04bc</span></h4> + <p>[line 153]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_SHEET"></a> + <p></p> + <h4>XLS_Type_SHEET = <span class="value">&nbsp;0x0085</span></h4> + <p>[line 120]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_SHEETLAYOUT"></a> + <p></p> + <h4>XLS_Type_SHEETLAYOUT = <span class="value">&nbsp;0x0862</span></h4> + <p>[line 157]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_SHEETPR"></a> + <p></p> + <h4>XLS_Type_SHEETPR = <span class="value">&nbsp;0x0081</span></h4> + <p>[line 117]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_SHEETPROTECTION"></a> + <p></p> + <h4>XLS_Type_SHEETPROTECTION = <span class="value">&nbsp;0x0867</span></h4> + <p>[line 155]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_SST"></a> + <p></p> + <h4>XLS_Type_SST = <span class="value">&nbsp;0x00fc</span></h4> + <p>[line 131]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_STRING"></a> + <p></p> + <h4>XLS_Type_STRING = <span class="value">&nbsp;0x0207</span></h4> + <p>[line 144]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_STYLE"></a> + <p></p> + <h4>XLS_Type_STYLE = <span class="value">&nbsp;0x0293</span></h4> + <p>[line 151]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_TOPMARGIN"></a> + <p></p> + <h4>XLS_Type_TOPMARGIN = <span class="value">&nbsp;0x0028</span></h4> + <p>[line 105]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_TXO"></a> + <p></p> + <h4>XLS_Type_TXO = <span class="value">&nbsp;0x01b6</span></h4> + <p>[line 136]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_UNKNOWN"></a> + <p></p> + <h4>XLS_Type_UNKNOWN = <span class="value">&nbsp;0xffff</span></h4> + <p>[line 159]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_VCENTER"></a> + <p></p> + <h4>XLS_Type_VCENTER = <span class="value">&nbsp;0x0084</span></h4> + <p>[line 119]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_VERTICALPAGEBREAKS"></a> + <p></p> + <h4>XLS_Type_VERTICALPAGEBREAKS = <span class="value">&nbsp;0x001a</span></h4> + <p>[line 97]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_WINDOW2"></a> + <p></p> + <h4>XLS_Type_WINDOW2 = <span class="value">&nbsp;0x023e</span></h4> + <p>[line 149]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_XF"></a> + <p></p> + <h4>XLS_Type_XF = <span class="value">&nbsp;0x00e0</span></h4> + <p>[line 127]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Type_XFEXT"></a> + <p></p> + <h4>XLS_Type_XFEXT = <span class="value">&nbsp;0x087d</span></h4> + <p>[line 158]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_WorkbookGlobals"></a> + <p></p> + <h4>XLS_WorkbookGlobals = <span class="value">&nbsp;0x0005</span></h4> + <p>[line 83]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constXLS_Worksheet"></a> + <p></p> + <h4>XLS_Worksheet = <span class="value">&nbsp;0x0010</span></h4> + <p>[line 84]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html new file mode 100644 index 0000000..6a979c1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html @@ -0,0 +1,388 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Reader_Excel5_Escher</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader_Excel5.html" class="menu">class tree: PHPExcel_Reader_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Reader_Excel5.html" class="menu">index: PHPExcel_Reader_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html"> Excel5.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html">PHPExcel_Reader_Excel5_Escher</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Reader_Excel5_Escher</h1> +Source Location: /PHPExcel/Reader/Excel5/Escher.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Reader_Excel5_Escher</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBLIPJPEG">BLIPJPEG</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBLIPPNG">BLIPPNG</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBSE">BSE</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBSTORECONTAINER">BSTORECONTAINER</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constCLIENTANCHOR">CLIENTANCHOR</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constCLIENTDATA">CLIENTDATA</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constCLIENTTEXTBOX">CLIENTTEXTBOX</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDG">DG</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDGCONTAINER">DGCONTAINER</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDGG">DGG</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDGGCONTAINER">DGGCONTAINER</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constOPT">OPT</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSP">SP</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPCONTAINER">SPCONTAINER</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPGR">SPGR</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPGRCONTAINER">SPGRCONTAINER</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPLITMENUCOLORS">SPLITMENUCOLORS</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constTERTIARYOPT">TERTIARYOPT</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#methodload">load</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Reader_Excel5_Escher<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 89]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Reader_Excel5_Escher __construct( +mixed +$object)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Reader_Excel5_Escher instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$object</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodload"></a> + <h3>method load <span class="smalllinenumber">[line 99]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void load( +string +$data)</code> + </td></tr></table> + </td></tr></table><br /> + + Load Escher stream data. May be a partial Escher stream.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$data</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constBLIPJPEG"></a> + <p></p> + <h4>BLIPJPEG = <span class="value">&nbsp;0xF01D</span></h4> + <p>[line 51]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBLIPPNG"></a> + <p></p> + <h4>BLIPPNG = <span class="value">&nbsp;0xF01E</span></h4> + <p>[line 52]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBSE"></a> + <p></p> + <h4>BSE = <span class="value">&nbsp;0xF007</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBSTORECONTAINER"></a> + <p></p> + <h4>BSTORECONTAINER = <span class="value">&nbsp;0xF001</span></h4> + <p>[line 38]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCLIENTANCHOR"></a> + <p></p> + <h4>CLIENTANCHOR = <span class="value">&nbsp;0xF010</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCLIENTDATA"></a> + <p></p> + <h4>CLIENTDATA = <span class="value">&nbsp;0xF011</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCLIENTTEXTBOX"></a> + <p></p> + <h4>CLIENTTEXTBOX = <span class="value">&nbsp;0xF00D</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDG"></a> + <p></p> + <h4>DG = <span class="value">&nbsp;0xF008</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDGCONTAINER"></a> + <p></p> + <h4>DGCONTAINER = <span class="value">&nbsp;0xF002</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDGG"></a> + <p></p> + <h4>DGG = <span class="value">&nbsp;0xF006</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDGGCONTAINER"></a> + <p></p> + <h4>DGGCONTAINER = <span class="value">&nbsp;0xF000</span></h4> + <p>[line 37]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPT"></a> + <p></p> + <h4>OPT = <span class="value">&nbsp;0xF00B</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSP"></a> + <p></p> + <h4>SP = <span class="value">&nbsp;0xF00A</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSPCONTAINER"></a> + <p></p> + <h4>SPCONTAINER = <span class="value">&nbsp;0xF004</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSPGR"></a> + <p></p> + <h4>SPGR = <span class="value">&nbsp;0xF009</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSPGRCONTAINER"></a> + <p></p> + <h4>SPGRCONTAINER = <span class="value">&nbsp;0xF003</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSPLITMENUCOLORS"></a> + <p></p> + <h4>SPLITMENUCOLORS = <span class="value">&nbsp;0xF11E</span></h4> + <p>[line 53]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTERTIARYOPT"></a> + <p></p> + <h4>TERTIARYOPT = <span class="value">&nbsp;0xF122</span></h4> + <p>[line 54]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html new file mode 100644 index 0000000..a652378 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html @@ -0,0 +1,120 @@ +<html> +<head> +<title>Docs for page Chart.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader_Excel5.html" class="menu">class tree: PHPExcel_Reader_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Reader_Excel5.html" class="menu">index: PHPExcel_Reader_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html"> Excel5.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html">PHPExcel_Reader_Excel5_Escher</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Chart.php</h1> +Source Location: /PHPExcel/Reader/Excel2007/Chart.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html">PHPExcel_Reader_Excel2007_Chart</a></dt> + <dd>PHPExcel_Reader_Excel2007_Chart</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:24 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html new file mode 100644 index 0000000..979f5d1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html @@ -0,0 +1,120 @@ +<html> +<head> +<title>Docs for page Escher.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader_Excel5.html" class="menu">class tree: PHPExcel_Reader_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Reader_Excel5.html" class="menu">index: PHPExcel_Reader_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html"> Excel5.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html">PHPExcel_Reader_Excel5_Escher</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Escher.php</h1> +Source Location: /PHPExcel/Reader/Excel5/Escher.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html">PHPExcel_Reader_Excel5_Escher</a></dt> + <dd>PHPExcel_Reader_Excel5_Escher</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html new file mode 100644 index 0000000..eae21cb --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html @@ -0,0 +1,124 @@ +<html> +<head> +<title>Docs for page Excel5.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Reader_Excel5.html" class="menu">class tree: PHPExcel_Reader_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Reader_Excel5.html" class="menu">index: PHPExcel_Reader_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html"> Excel5.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html">PHPExcel_Reader_Excel5_Escher</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Excel5.php</h1> +Source Location: /PHPExcel/Reader/Excel5.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a></dt> + <dd>PHPExcel_Reader_Excel5</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 66]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_notes/dwsync.xml new file mode 100644 index 0000000..edc9f4d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Reader_Excel5/_notes/dwsync.xml @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Reader_Excel5.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel5_Escher.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2007---Chart.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel5---Escher.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel5.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel5.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2007---Chart.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel5.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel5---Escher.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel5_Escher.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel5.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel2007---Chart.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel5.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Reader---Excel5---Escher.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel5_Escher.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Reader_Excel5.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560296539121" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Excel2007---Chart.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560297044288" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Excel5.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560297544129" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Excel5---Escher.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560298063232" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel5_Escher.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560298586731" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel5.html" server="62.244.88.21/amashow/" local="131414752653359216" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel2007---Chart.php.html" server="62.244.88.21/amashow/" local="131414752653848560" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel5---Escher.php.html" server="62.244.88.21/amashow/" local="131414752654669619" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel5.php.html" server="62.244.88.21/amashow/" local="131414752654282011" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Reader_Excel5_Escher.html" server="62.244.88.21/amashow/" local="131414752655095055" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel5---Escher.php.html" server="62.244.88.21/deciday/" local="131919461579264015" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel5_Escher.html" server="62.244.88.21/deciday/" local="131919461574636324" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Excel2007---Chart.php.html" server="62.244.88.21/deciday/" local="131919461573915048" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel5.html" server="62.244.88.21/deciday/" local="131919461579531557" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Reader---Excel5.php.html" server="62.244.88.21/deciday/" local="131919461580318953" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Reader_Excel5_Escher.html" server="62.244.88.21/deciday_18/" local="131414752655095055" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel2007---Chart.php.html" server="62.244.88.21/deciday_18/" local="131414752653848560" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Reader_Excel5.html" server="62.244.88.21/deciday_18/" local="131414752653359216" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel5---Escher.php.html" server="62.244.88.21/deciday_18/" local="131414752654669619" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Reader---Excel5.php.html" server="62.244.88.21/deciday_18/" local="131414752654282011" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText.html b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText.html new file mode 100644 index 0000000..777b128 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText.html @@ -0,0 +1,511 @@ +<html> +<head> +<title>Docs For Class PHPExcel_RichText</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_RichText</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_RichText.html" class="menu">class tree: PHPExcel_RichText</a> ] + [ <a href="../elementindex_PHPExcel_RichText.html" class="menu">index: PHPExcel_RichText</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html"> ITextElement.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText.php.html"> RichText.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---Run.php.html"> Run.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html"> TextElement.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_RichText</h1> +Source Location: /PHPExcel/RichText.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_RichText</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText.html#methodaddText">addText</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText.html#methodcreateText">createText</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText.html#methodcreateTextRun">createTextRun</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText.html#methodgetPlainText">getPlainText</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText.html#methodgetRichTextElements">getRichTextElements</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText.html#methodsetRichTextElements">setRichTextElements</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText.html#method__clone">__clone</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText.html#method__toString">__toString</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_RichText<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 51]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_RichText __construct( +[PHPExcel_Cell +$pCell = null], <a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> +$pParent)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_RichText instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$pParent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$pCell</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddText"></a> + <h3>method addText <span class="smalllinenumber">[line 77]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a> addText( +[<a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a> +$pText = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Add text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a>&nbsp;&nbsp;</td> + <td><b>$pText</b>&nbsp;&nbsp;</td> + <td>Rich text element</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcreateText"></a> + <h3>method createText <span class="smalllinenumber">[line 90]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a> createText( +[string +$pText = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Create text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pText</b>&nbsp;&nbsp;</td> + <td>Text</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcreateTextRun"></a> + <h3>method createTextRun <span class="smalllinenumber">[line 104]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a> createTextRun( +[string +$pText = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Create text run<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pText</b>&nbsp;&nbsp;</td> + <td>Text</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 171]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPlainText"></a> + <h3>method getPlainText <span class="smalllinenumber">[line 116]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPlainText( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get plain text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRichTextElements"></a> + <h3>method getRichTextElements <span class="smalllinenumber">[line 144]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_RichText_ITextElement[] getRichTextElements( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Rich Text elements<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRichTextElements"></a> + <h3>method setRichTextElements <span class="smalllinenumber">[line 156]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a> setRichTextElements( +[PHPExcel_RichText_ITextElement[] +$pElements = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Rich Text elements<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">PHPExcel_RichText_ITextElement[]&nbsp;&nbsp;</td> + <td><b>$pElements</b>&nbsp;&nbsp;</td> + <td>Array of elements</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 186]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__toString"></a> + <h3>method __toString <span class="smalllinenumber">[line 135]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string __toString( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Convert to string<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText_ITextElement.html b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText_ITextElement.html new file mode 100644 index 0000000..f1861bb --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText_ITextElement.html @@ -0,0 +1,288 @@ +<html> +<head> +<title>Docs For Class PHPExcel_RichText_ITextElement</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_RichText</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_RichText.html" class="menu">class tree: PHPExcel_RichText</a> ] + [ <a href="../elementindex_PHPExcel_RichText.html" class="menu">index: PHPExcel_RichText</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html"> ITextElement.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText.php.html"> RichText.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---Run.php.html"> Run.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html"> TextElement.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_RichText_ITextElement</h1> +Source Location: /PHPExcel/RichText/ITextElement.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Interface Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_RichText_ITextElement</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetFont">getFont</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetText">getText</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodsetText">setText</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 34]<br /> +PHPExcel_RichText_ITextElement<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetFont"></a> + <h3>method getFont <span class="smalllinenumber">[line 56]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> getFont( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 63]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetText"></a> + <h3>method getText <span class="smalllinenumber">[line 41]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getText( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Text</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetText"></a> + <h3>method setText <span class="smalllinenumber">[line 49]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a> setText( +[$pText +$pText = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">$pText&nbsp;&nbsp;</td> + <td><b>$pText</b>&nbsp;&nbsp;</td> + <td>string Text</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText_Run.html b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText_Run.html new file mode 100644 index 0000000..4e1ad40 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText_Run.html @@ -0,0 +1,388 @@ +<html> +<head> +<title>Docs For Class PHPExcel_RichText_Run</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_RichText</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_RichText.html" class="menu">class tree: PHPExcel_RichText</a> ] + [ <a href="../elementindex_PHPExcel_RichText.html" class="menu">index: PHPExcel_RichText</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html"> ITextElement.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText.php.html"> RichText.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---Run.php.html"> Run.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html"> TextElement.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_RichText_Run</h1> +Source Location: /PHPExcel/RichText/Run.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a> + | + --PHPExcel_RichText_Run</pre><br /> +<div class="description">PHPExcel_RichText_Run</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html#methodgetFont">getFont</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html#methodsetFont">setFont</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a></h4> +<dl> + <dt> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#method__construct">PHPExcel_RichText_TextElement::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_RichText_TextElement instance + </dd> + <dt> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetFont">PHPExcel_RichText_TextElement::getFont()</a> + </dt> + <dd> + Get font + </dd> + <dt> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetHashCode">PHPExcel_RichText_TextElement::getHashCode()</a> + </dt> + <dd> + Get hash code + </dd> + <dt> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetText">PHPExcel_RichText_TextElement::getText()</a> + </dt> + <dd> + Get text + </dd> + <dt> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodsetText">PHPExcel_RichText_TextElement::setText()</a> + </dt> + <dd> + Set text + </dd> + <dt> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#method__clone">PHPExcel_RichText_TextElement::__clone()</a> + </dt> + <dd> + Implement PHP __clone to create a deep clone, not just a shallow copy. + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 34]<br /> +PHPExcel_RichText_Run<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 48]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_RichText_Run __construct( +[string +$pText = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_RichText_Run instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#method__construct">PHPExcel_RichText_TextElement::__construct()</a> (Create a new PHPExcel_RichText_TextElement instance)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pText</b>&nbsp;&nbsp;</td> + <td>Text</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFont"></a> + <h3>method getFont <span class="smalllinenumber">[line 60]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> getFont( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetFont">PHPExcel_RichText_ITextElement::getFont()</a></dt> + <dd>Get font</dd> + </dl> + Overrides <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetFont">PHPExcel_RichText_TextElement::getFont()</a> (Get font)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 81]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetHashCode">PHPExcel_RichText_ITextElement::getHashCode()</a></dt> + <dd>Get hash code</dd> + </dl> + Overrides <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetHashCode">PHPExcel_RichText_TextElement::getHashCode()</a> (Get hash code)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFont"></a> + <h3>method setFont <span class="smalllinenumber">[line 71]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a> setFont( +[PHPExcel_Style_Font +$pFont = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$pFont</b>&nbsp;&nbsp;</td> + <td>Font</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 92]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#method__clone">PHPExcel_RichText_TextElement::__clone()</a> (Implement PHP __clone to create a deep clone, not just a shallow copy.)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText_TextElement.html b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText_TextElement.html new file mode 100644 index 0000000..868f548 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/PHPExcel_RichText_TextElement.html @@ -0,0 +1,413 @@ +<html> +<head> +<title>Docs For Class PHPExcel_RichText_TextElement</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_RichText</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_RichText.html" class="menu">class tree: PHPExcel_RichText</a> ] + [ <a href="../elementindex_PHPExcel_RichText.html" class="menu">index: PHPExcel_RichText</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html"> ITextElement.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText.php.html"> RichText.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---Run.php.html"> Run.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html"> TextElement.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_RichText_TextElement</h1> +Source Location: /PHPExcel/RichText/TextElement.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_RichText_TextElement</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetFont">getFont</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetText">getText</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodsetText">setText</a></li> + <li><a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + +<td valign="top"> +<h3>Child classes:</h3> +<div class="tags"> +<dl> +<dt><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a></dt> + <dd>PHPExcel_RichText_Run</dd> +</dl> +</div> +</td> + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 34]<br /> +PHPExcel_RichText_TextElement<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 48]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_RichText_TextElement __construct( +[string +$pText = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_RichText_TextElement instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html#method__construct">PHPExcel_RichText_Run::__construct()</a></dt> + <dd>Create a new PHPExcel_RichText_Run instance</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pText</b>&nbsp;&nbsp;</td> + <td>Text</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFont"></a> + <h3>method getFont <span class="smalllinenumber">[line 79]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> getFont( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html#methodgetFont">PHPExcel_RichText_Run::getFont()</a></dt> + <dd>Get font</dd> + </dl> + </p> + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetFont">PHPExcel_RichText_ITextElement::getFont()</a></dt> + <dd>Get font</dd> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 88]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html#methodgetHashCode">PHPExcel_RichText_Run::getHashCode()</a></dt> + <dd>Get hash code</dd> + </dl> + </p> + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetHashCode">PHPExcel_RichText_ITextElement::getHashCode()</a></dt> + <dd>Get hash code</dd> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetText"></a> + <h3>method getText <span class="smalllinenumber">[line 59]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getText( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Text</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetText">PHPExcel_RichText_ITextElement::getText()</a></dt> + <dd>Get text</dd> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetText"></a> + <h3>method setText <span class="smalllinenumber">[line 69]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a> setText( +[$pText +$pText = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodsetText">PHPExcel_RichText_ITextElement::setText()</a></dt> + <dd>Set text</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">$pText&nbsp;&nbsp;</td> + <td><b>$pText</b>&nbsp;&nbsp;</td> + <td>string Text</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 98]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html#method__clone">PHPExcel_RichText_Run::__clone()</a></dt> + <dd>Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html new file mode 100644 index 0000000..e62cba1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html @@ -0,0 +1,127 @@ +<html> +<head> +<title>Docs for page ITextElement.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_RichText</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_RichText.html" class="menu">class tree: PHPExcel_RichText</a> ] + [ <a href="../elementindex_PHPExcel_RichText.html" class="menu">index: PHPExcel_RichText</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html"> ITextElement.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText.php.html"> RichText.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---Run.php.html"> Run.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html"> TextElement.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: ITextElement.php</h1> +Source Location: /PHPExcel/RichText/ITextElement.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a></dt> + <dd>PHPExcel_RichText_ITextElement</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText---Run.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText---Run.php.html new file mode 100644 index 0000000..3e9face --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText---Run.php.html @@ -0,0 +1,127 @@ +<html> +<head> +<title>Docs for page Run.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_RichText</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_RichText.html" class="menu">class tree: PHPExcel_RichText</a> ] + [ <a href="../elementindex_PHPExcel_RichText.html" class="menu">index: PHPExcel_RichText</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html"> ITextElement.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText.php.html"> RichText.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---Run.php.html"> Run.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html"> TextElement.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Run.php</h1> +Source Location: /PHPExcel/RichText/Run.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a></dt> + <dd>PHPExcel_RichText_Run</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html new file mode 100644 index 0000000..0714aad --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html @@ -0,0 +1,127 @@ +<html> +<head> +<title>Docs for page TextElement.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_RichText</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_RichText.html" class="menu">class tree: PHPExcel_RichText</a> ] + [ <a href="../elementindex_PHPExcel_RichText.html" class="menu">index: PHPExcel_RichText</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html"> ITextElement.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText.php.html"> RichText.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---Run.php.html"> Run.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html"> TextElement.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: TextElement.php</h1> +Source Location: /PHPExcel/RichText/TextElement.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a></dt> + <dd>PHPExcel_RichText_TextElement</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText.php.html new file mode 100644 index 0000000..0e3cf4d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_PHPExcel---RichText.php.html @@ -0,0 +1,127 @@ +<html> +<head> +<title>Docs for page RichText.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_RichText</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_RichText.html" class="menu">class tree: PHPExcel_RichText</a> ] + [ <a href="../elementindex_PHPExcel_RichText.html" class="menu">index: PHPExcel_RichText</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html"> ITextElement.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText.php.html"> RichText.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---Run.php.html"> Run.php + </a><br> + <a href="../PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html"> TextElement.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br /> + <a href="../PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: RichText.php</h1> +Source Location: /PHPExcel/RichText.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a></dt> + <dd>PHPExcel_RichText</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_notes/dwsync.xml new file mode 100644 index 0000000..0d9976f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_RichText/_notes/dwsync.xml @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_RichText.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_RichText_ITextElement.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_RichText_Run.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_RichText_TextElement.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---RichText---ITextElement.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---RichText---Run.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---RichText---TextElement.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---RichText.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---RichText---Run.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---RichText---ITextElement.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---RichText.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_RichText_TextElement.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_RichText.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---RichText---TextElement.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_RichText_Run.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_RichText_ITextElement.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---RichText---Run.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---RichText---ITextElement.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---RichText.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_RichText_TextElement.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_RichText.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---RichText---TextElement.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_RichText_Run.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_RichText_ITextElement.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---RichText---Run.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560250937373" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---RichText---ITextElement.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560251565052" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---RichText.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560252250573" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_RichText_TextElement.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560252776237" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_RichText.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560253282544" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---RichText---TextElement.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560253795306" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_RichText_Run.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560254325820" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_RichText_ITextElement.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560254856513" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---RichText---Run.php.html" server="62.244.88.21/amashow/" local="131414752615851233" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---RichText---ITextElement.php.html" server="62.244.88.21/amashow/" local="131414752616263356" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---RichText.php.html" server="62.244.88.21/amashow/" local="131414752616681401" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_RichText.html" server="62.244.88.21/amashow/" local="131414752617386013" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---RichText---TextElement.php.html" server="62.244.88.21/amashow/" local="131414752617603717" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_RichText_TextElement.html" server="62.244.88.21/amashow/" local="131414752616889324" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_RichText_Run.html" server="62.244.88.21/amashow/" local="131414752618043357" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_RichText_ITextElement.html" server="62.244.88.21/amashow/" local="131414752618258510" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_RichText_TextElement.html" server="62.244.88.21/deciday/" local="131919461583630452" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---RichText---Run.php.html" server="62.244.88.21/deciday/" local="131919461582702516" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_RichText_Run.html" server="62.244.88.21/deciday/" local="131919461582519577" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_RichText.html" server="62.244.88.21/deciday/" local="131919461580675591" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---RichText---ITextElement.php.html" server="62.244.88.21/deciday/" local="131919461581400673" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---RichText.php.html" server="62.244.88.21/deciday/" local="131919461582204510" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---RichText---TextElement.php.html" server="62.244.88.21/deciday/" local="131919461583817300" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_RichText_ITextElement.html" server="62.244.88.21/deciday/" local="131919461581035478" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_RichText.html" server="62.244.88.21/deciday_18/" local="131414752617386013" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_RichText_ITextElement.html" server="62.244.88.21/deciday_18/" local="131414752618258510" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_RichText_Run.html" server="62.244.88.21/deciday_18/" local="131414752618043357" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_RichText_TextElement.html" server="62.244.88.21/deciday_18/" local="131414752616889324" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---RichText---ITextElement.php.html" server="62.244.88.21/deciday_18/" local="131414752616263356" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---RichText---Run.php.html" server="62.244.88.21/deciday_18/" local="131414752615851233" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---RichText---TextElement.php.html" server="62.244.88.21/deciday_18/" local="131414752617603717" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---RichText.php.html" server="62.244.88.21/deciday_18/" local="131414752616681401" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Settings/PHPExcel_Settings.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Settings/PHPExcel_Settings.html new file mode 100644 index 0000000..2be3f22 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Settings/PHPExcel_Settings.html @@ -0,0 +1,777 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Settings</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Settings</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Settings.html" class="menu">class tree: PHPExcel_Settings</a> ] + [ <a href="../elementindex_PHPExcel_Settings.html" class="menu">index: PHPExcel_Settings</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Settings/_PHPExcel---Settings.php.html"> Settings.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Settings/PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Settings</h1> +Source Location: /PHPExcel/Settings.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description"></div><br /><br /> + + + + + + + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#constCHART_RENDERER_JPGRAPH">CHART_RENDERER_JPGRAPH</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#constPCLZIP">PCLZIP</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#constPDF_RENDERER_DOMPDF">PDF_RENDERER_DOMPDF</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#constPDF_RENDERER_MPDF">PDF_RENDERER_MPDF</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#constPDF_RENDERER_TCPDF">PDF_RENDERER_TCPDF</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#constZIPARCHIVE">ZIPARCHIVE</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodgetCacheStorageClass">getCacheStorageClass</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodgetCacheStorageMethod">getCacheStorageMethod</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodgetChartRendererName">getChartRendererName</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodgetChartRendererPath">getChartRendererPath</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodgetPdfRendererName">getPdfRendererName</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodgetPdfRendererPath">getPdfRendererPath</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodgetZipClass">getZipClass</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodsetCacheStorageMethod">setCacheStorageMethod</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodsetChartRenderer">setChartRenderer</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodsetChartRendererName">setChartRendererName</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodsetChartRendererPath">setChartRendererPath</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodsetLocale">setLocale</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodsetPdfRenderer">setPdfRenderer</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodsetPdfRendererName">setPdfRendererName</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodsetPdfRendererPath">setPdfRendererPath</a></li> + <li><a href="../PHPExcel_Settings/PHPExcel_Settings.html#methodsetZipClass">setZipClass</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 38]<br /> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodgetCacheStorageClass"></a> + <h3>static method getCacheStorageClass <span class="smalllinenumber">[line 154]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getCacheStorageClass( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the name of the class that is currently being used for cell cacheing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Name of the class currently being used for cacheing</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCacheStorageMethod"></a> + <h3>static method getCacheStorageMethod <span class="smalllinenumber">[line 144]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getCacheStorageMethod( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the name of the method that is currently configured for cell cacheing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Name of the cacheing method</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetChartRendererName"></a> + <h3>static method getChartRendererName <span class="smalllinenumber">[line 239]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string|NULL getChartRendererName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Chart Rendering Library that PHPExcel is currently configured to use (e.g. jpgraph)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Internal reference name of the Chart Rendering Library that PHPExcel is currently configured to use e.g. PHPExcel_Settings::CHART_RENDERER_JPGRAPH</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetChartRendererPath"></a> + <h3>static method getChartRendererPath <span class="smalllinenumber">[line 250]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string|NULL getChartRendererPath( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the directory path to the Chart Rendering Library that PHPExcel is currently configured to use<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Directory Path to the Chart Rendering Library that PHPExcel is currently configured to use</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPdfRendererName"></a> + <h3>static method getPdfRendererName <span class="smalllinenumber">[line 317]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string|NULL getPdfRendererName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the PDF Rendering Library that PHPExcel is currently configured to use (e.g. dompdf)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Internal reference name of the PDF Rendering Library that PHPExcel is currently configured to use e.g. PHPExcel_Settings::PDF_RENDERER_TCPDF, PHPExcel_Settings::PDF_RENDERER_DOMPDF or PHPExcel_Settings::PDF_RENDERER_MPDF</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPdfRendererPath"></a> + <h3>static method getPdfRendererPath <span class="smalllinenumber">[line 328]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string|NULL getPdfRendererPath( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the directory path to the PDF Rendering Library that PHPExcel is currently configured to use<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Directory Path to the PDF Rendering Library that PHPExcel is currently configured to use</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetZipClass"></a> + <h3>static method getZipClass <span class="smalllinenumber">[line 134]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getZipClass( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the name of the Zip handler Class that PHPExcel is configured to use (PCLZip or ZipArchive) for Zip file management<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Name of the Zip handler Class that PHPExcel is configured to use for Zip file management e.g. PHPExcel_Settings::PCLZip or PHPExcel_Settings::ZipArchive</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCacheStorageMethod"></a> + <h3>static method setCacheStorageMethod <span class="smalllinenumber">[line 166]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setCacheStorageMethod( +[string +$method = PHPExcel_CachedObjectStorageFactory::cache_in_memory], [array +$arguments = array()])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the method that should be used for cell cacheing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$method</b>&nbsp;&nbsp;</td> + <td>Name of the cacheing method</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$arguments</b>&nbsp;&nbsp;</td> + <td>Optional configuration arguments for the cacheing method</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetChartRenderer"></a> + <h3>static method setChartRenderer <span class="smalllinenumber">[line 191]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setChartRenderer( +string +$libraryName, string +$libraryBaseDir)</code> + </td></tr></table> + </td></tr></table><br /> + + Set details of the external library that PHPExcel should use for rendering charts<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$libraryName</b>&nbsp;&nbsp;</td> + <td>Internal reference name of the library e.g. PHPExcel_Settings::CHART_RENDERER_JPGRAPH</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$libraryBaseDir</b>&nbsp;&nbsp;</td> + <td>Directory path to the library's base folder</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetChartRendererName"></a> + <h3>static method setChartRendererName <span class="smalllinenumber">[line 205]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setChartRendererName( +string +$libraryName)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify to PHPExcel the external library to use for rendering charts<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$libraryName</b>&nbsp;&nbsp;</td> + <td>Internal reference name of the library e.g. PHPExcel_Settings::CHART_RENDERER_JPGRAPH</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetChartRendererPath"></a> + <h3>static method setChartRendererPath <span class="smalllinenumber">[line 222]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setChartRendererPath( +string +$libraryBaseDir)</code> + </td></tr></table> + </td></tr></table><br /> + + Tell PHPExcel where to find the external library to use for rendering charts<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$libraryBaseDir</b>&nbsp;&nbsp;</td> + <td>Directory path to the library's base folder</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLocale"></a> + <h3>static method setLocale <span class="smalllinenumber">[line 178]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setLocale( +[string +$locale = 'en_us'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the locale code to use for formula translations and any special formatting<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$locale</b>&nbsp;&nbsp;</td> + <td>The locale code to use (e.g. &quot;fr&quot; or &quot;pt_br&quot; or &quot;en_uk&quot;)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPdfRenderer"></a> + <h3>static method setPdfRenderer <span class="smalllinenumber">[line 265]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setPdfRenderer( +string +$libraryName, string +$libraryBaseDir)</code> + </td></tr></table> + </td></tr></table><br /> + + Set details of the external library that PHPExcel should use for rendering PDF files<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$libraryName</b>&nbsp;&nbsp;</td> + <td>Internal reference name of the library e.g. PHPExcel_Settings::PDF_RENDERER_TCPDF, PHPExcel_Settings::PDF_RENDERER_DOMPDF or PHPExcel_Settings::PDF_RENDERER_MPDF</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$libraryBaseDir</b>&nbsp;&nbsp;</td> + <td>Directory path to the library's base folder</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPdfRendererName"></a> + <h3>static method setPdfRendererName <span class="smalllinenumber">[line 281]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setPdfRendererName( +string +$libraryName)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify to PHPExcel the external library to use for rendering PDF files<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$libraryName</b>&nbsp;&nbsp;</td> + <td>Internal reference name of the library e.g. PHPExcel_Settings::PDF_RENDERER_TCPDF, PHPExcel_Settings::PDF_RENDERER_DOMPDF or PHPExcel_Settings::PDF_RENDERER_MPDF</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPdfRendererPath"></a> + <h3>static method setPdfRendererPath <span class="smalllinenumber">[line 298]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setPdfRendererPath( +string +$libraryBaseDir)</code> + </td></tr></table> + </td></tr></table><br /> + + Tell PHPExcel where to find the external library to use for rendering PDF files<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$libraryBaseDir</b>&nbsp;&nbsp;</td> + <td>Directory path to the library's base folder</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetZipClass"></a> + <h3>static method setZipClass <span class="smalllinenumber">[line 116]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setZipClass( +string +$zipClass)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the Zip handler Class that PHPExcel should use for Zip file management (PCLZip or ZipArchive)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$zipClass</b>&nbsp;&nbsp;</td> + <td>The Zip handler class that PHPExcel should use for Zip file management e.g. PHPExcel_Settings::PCLZip or PHPExcel_Settings::ZipArchive</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constCHART_RENDERER_JPGRAPH"></a> + <p></p> + <h4>CHART_RENDERER_JPGRAPH = <span class="value">&nbsp;'jpgraph'</span></h4> + <p>[line 46]</p> + Optional Chart Rendering libraries<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPCLZIP"></a> + <p></p> + <h4>PCLZIP = <span class="value">&nbsp;'PHPExcel_Shared_ZipArchive'</span></h4> + <p>[line 42]</p> + Available Zip library classes<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPDF_RENDERER_DOMPDF"></a> + <p></p> + <h4>PDF_RENDERER_DOMPDF = <span class="value">&nbsp;'DomPDF'</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPDF_RENDERER_MPDF"></a> + <p></p> + <h4>PDF_RENDERER_MPDF = <span class="value">&nbsp;'mPDF'</span></h4> + <p>[line 51]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPDF_RENDERER_TCPDF"></a> + <p></p> + <h4>PDF_RENDERER_TCPDF = <span class="value">&nbsp;'tcPDF'</span></h4> + <p>[line 49]</p> + Optional PDF Rendering libraries<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constZIPARCHIVE"></a> + <p></p> + <h4>ZIPARCHIVE = <span class="value">&nbsp;'ZipArchive'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Settings/_PHPExcel---Settings.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Settings/_PHPExcel---Settings.php.html new file mode 100644 index 0000000..e18ca41 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Settings/_PHPExcel---Settings.php.html @@ -0,0 +1,119 @@ +<html> +<head> +<title>Docs for page Settings.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Settings</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Settings.html" class="menu">class tree: PHPExcel_Settings</a> ] + [ <a href="../elementindex_PHPExcel_Settings.html" class="menu">index: PHPExcel_Settings</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Settings/_PHPExcel---Settings.php.html"> Settings.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Settings/PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Settings.php</h1> +Source Location: /PHPExcel/Settings.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Settings/PHPExcel_Settings.html">PHPExcel_Settings</a></dt> + <dd></dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require(<a href="../PHPExcel/_PHPExcel---Autoloader.php.html">PHPEXCEL_ROOT.'PHPExcel/Autoloader.php'</a>) [line 34]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Settings/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Settings/_notes/dwsync.xml new file mode 100644 index 0000000..0851b34 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Settings/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Settings.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Settings.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Settings.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Settings.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Settings.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Settings.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Settings.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560346088423" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Settings.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560346656444" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Settings.php.html" server="62.244.88.21/amashow/" local="131414752690143555" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Settings.html" server="62.244.88.21/amashow/" local="131414752691509645" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Settings.php.html" server="62.244.88.21/deciday/" local="131919461585074356" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Settings.html" server="62.244.88.21/deciday/" local="131919461584185029" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Settings.html" server="62.244.88.21/deciday_18/" local="131414752691509645" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Settings.php.html" server="62.244.88.21/deciday_18/" local="131414752690143555" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_CodePage.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_CodePage.html new file mode 100644 index 0000000..5d140ed --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_CodePage.html @@ -0,0 +1,234 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_CodePage</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_CodePage</h1> +Source Location: /PHPExcel/Shared/CodePage.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_CodePage</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html#methodNumberToName">NumberToName</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Shared_CodePage<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodNumberToName"></a> + <h3>static method NumberToName <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string NumberToName( +[ +$codePage = '1252'], int +$number)</code> + </td></tr></table> + </td></tr></table><br /> + + Convert Microsoft Code Page Identifier to Code Page Name which iconv and mbstring understands<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Code Page Name</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$number</b>&nbsp;&nbsp;</td> + <td>Microsoft Code Page Indentifier</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$codePage</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:29 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Date.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Date.html new file mode 100644 index 0000000..9d3dbd9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Date.html @@ -0,0 +1,693 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Date</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Date</h1> +Source Location: /PHPExcel/Shared/Date.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Date</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#var$dateTimeObjectType">$dateTimeObjectType</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#var$_monthNames">$_monthNames</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#constCALENDAR_MAC_1904">CALENDAR_MAC_1904</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#constCALENDAR_WINDOWS_1900">CALENDAR_WINDOWS_1900</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#methodExcelToPHP">ExcelToPHP</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#methodExcelToPHPObject">ExcelToPHPObject</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#methodFormattedPHPToExcel">FormattedPHPToExcel</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#methodgetExcelCalendar">getExcelCalendar</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#methodisDateTime">isDateTime</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#methodisDateTimeFormat">isDateTimeFormat</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#methodisDateTimeFormatCode">isDateTimeFormatCode</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#methodPHPToExcel">PHPToExcel</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#methodsetExcelCalendar">setExcelCalendar</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html#methodstringToExcel">stringToExcel</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 37]<br /> +PHPExcel_Shared_Date<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$dateTimeObjectType"></a> + <p></p> + <h4>static $dateTimeObjectType = <span class="value">&nbsp;'DateTime'</span></h4> + <p>[line 78]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_monthNames"></a> + <p></p> + <h4>static $_monthNames = <span class="value">array(&nbsp;&nbsp;&nbsp;'Jan'&nbsp;=&gt;&nbsp;'January',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'Feb'&nbsp;=&gt;&nbsp;'February',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'Mar'&nbsp;=&gt;&nbsp;'March',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'Apr'&nbsp;=&gt;&nbsp;'April',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'May'&nbsp;=&gt;&nbsp;'May',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'Jun'&nbsp;=&gt;&nbsp;'June',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'Jul'&nbsp;=&gt;&nbsp;'July',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'Aug'&nbsp;=&gt;&nbsp;'August',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'Sep'&nbsp;=&gt;&nbsp;'September',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'Oct'&nbsp;=&gt;&nbsp;'October',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'Nov'&nbsp;=&gt;&nbsp;'November',<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'Dec'&nbsp;=&gt;&nbsp;'December'<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)</span></h4> + <p>[line 50]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodExcelToPHP"></a> + <h3>static method ExcelToPHP <span class="smalllinenumber">[line 113]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static long ExcelToPHP( +[long +$dateValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert a date from Excel to PHP<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>PHP serialized date/time</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">long&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>Excel date/time value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodExcelToPHPObject"></a> + <h3>static method ExcelToPHPObject <span class="smalllinenumber">[line 149]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static long ExcelToPHPObject( +[long +$dateValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert a date from Excel to a PHP Date/Time object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>PHP date/time object</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">long&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>Excel date/time value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodFormattedPHPToExcel"></a> + <h3>static method FormattedPHPToExcel <span class="smalllinenumber">[line 201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static long FormattedPHPToExcel( +long +$year, long +$month, long +$day, [long +$hours = 0], [long +$minutes = 0], [long +$seconds = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + FormattedPHPToExcel<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">long&nbsp;&nbsp;</td> + <td><b>$year</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">long&nbsp;&nbsp;</td> + <td><b>$month</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">long&nbsp;&nbsp;</td> + <td><b>$day</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">long&nbsp;&nbsp;</td> + <td><b>$hours</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">long&nbsp;&nbsp;</td> + <td><b>$minutes</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">long&nbsp;&nbsp;</td> + <td><b>$seconds</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetExcelCalendar"></a> + <h3>static method getExcelCalendar <span class="smalllinenumber">[line 102]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer getExcelCalendar( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Excel calendar (Windows 1900 or Mac 1904)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel base date</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisDateTime"></a> + <h3>static method isDateTime <span class="smalllinenumber">[line 240]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean isDateTime( +PHPExcel_Cell +$pCell)</code> + </td></tr></table> + </td></tr></table><br /> + + Is a given cell a date/time?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a>&nbsp;&nbsp;</td> + <td><b>$pCell</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisDateTimeFormat"></a> + <h3>static method isDateTimeFormat <span class="smalllinenumber">[line 255]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean isDateTimeFormat( +PHPExcel_Style_NumberFormat +$pFormat)</code> + </td></tr></table> + </td></tr></table><br /> + + Is a given number format a date/time?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a>&nbsp;&nbsp;</td> + <td><b>$pFormat</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisDateTimeFormatCode"></a> + <h3>static method isDateTimeFormatCode <span class="smalllinenumber">[line 268]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean isDateTimeFormatCode( +[string +$pFormatCode = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Is a given number format code a date/time?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFormatCode</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodPHPToExcel"></a> + <h3>static method PHPToExcel <span class="smalllinenumber">[line 171]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed PHPToExcel( +[mixed +$dateValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert a date from PHP to Excel<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time value or boolean FALSE on failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>PHP serialized date/time or date object</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetExcelCalendar"></a> + <h3>static method setExcelCalendar <span class="smalllinenumber">[line 87]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setExcelCalendar( +integer +$baseDate)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the Excel calendar (Windows 1900 or Mac 1904)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$baseDate</b>&nbsp;&nbsp;</td> + <td>Excel base date</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstringToExcel"></a> + <h3>static method stringToExcel <span class="smalllinenumber">[line 332]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float|FALSE stringToExcel( +[string +$dateValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert a date/time string to Excel time<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Excel date/time serial value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$dateValue</b>&nbsp;&nbsp;</td> + <td>Examples: '2009-12-31', '2009-12-31 15:59', '2009-12-31 15:59:10'</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constCALENDAR_MAC_1904"></a> + <p></p> + <h4>CALENDAR_MAC_1904 = <span class="value">&nbsp;1904</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCALENDAR_WINDOWS_1900"></a> + <p></p> + <h4>CALENDAR_WINDOWS_1900 = <span class="value">&nbsp;1900</span></h4> + <p>[line 40]</p> + constants<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:41 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Drawing.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Drawing.html new file mode 100644 index 0000000..919dc76 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Drawing.html @@ -0,0 +1,563 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Drawing</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Drawing</h1> +Source Location: /PHPExcel/Shared/Drawing.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Drawing</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodangleToDegrees">angleToDegrees</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodcellDimensionToPixels">cellDimensionToPixels</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methoddegreesToAngle">degreesToAngle</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodEMUToPixels">EMUToPixels</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodimagecreatefrombmp">imagecreatefrombmp</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpixelsToCellDimension">pixelsToCellDimension</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpixelsToEMU">pixelsToEMU</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpixelsToPoints">pixelsToPoints</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpointsToPixels">pointsToPixels</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Shared_Drawing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodangleToDegrees"></a> + <h3>static method angleToDegrees <span class="smalllinenumber">[line 164]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int angleToDegrees( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert angle to degrees<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Degrees</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Angle</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcellDimensionToPixels"></a> + <h3>static method cellDimensionToPixels <span class="smalllinenumber">[line 99]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int cellDimensionToPixels( +[float +$pValue = 0], PHPExcel_Style_Font +$pDefaultFont)</code> + </td></tr></table> + </td></tr></table><br /> + + Convert column width from (intrinsic) Excel units to pixels<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Value in pixels</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value in cell dimension</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$pDefaultFont</b>&nbsp;&nbsp;</td> + <td>Default font of the workbook</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddegreesToAngle"></a> + <h3>static method degreesToAngle <span class="smalllinenumber">[line 154]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int degreesToAngle( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert degrees to angle<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Angle</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Degrees</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodEMUToPixels"></a> + <h3>static method EMUToPixels <span class="smalllinenumber">[line 54]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int EMUToPixels( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert EMU to pixels<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Value in pixels</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value in EMU</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodimagecreatefrombmp"></a> + <h3>static method imagecreatefrombmp <span class="smalllinenumber">[line 179]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static resource imagecreatefrombmp( + +$p_sFile, string +$filename)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new image from file. By alexander at alexauto dot nl<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>link:</b>&nbsp;&nbsp;</td><td><a href="http://www.php.net/manual/en/function.imagecreatefromwbmp.php#86214">http://www.php.net/manual/en/function.imagecreatefromwbmp.php#86214</a></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$filename</b>&nbsp;&nbsp;</td> + <td>Path to Windows DIB (BMP) image</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$p_sFile</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodpixelsToCellDimension"></a> + <h3>static method pixelsToCellDimension <span class="smalllinenumber">[line 71]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int pixelsToCellDimension( +[int +$pValue = 0], PHPExcel_Style_Font +$pDefaultFont)</code> + </td></tr></table> + </td></tr></table><br /> + + Convert pixels to column width. Exact algorithm not known.<br /><br /><p>By inspection of a real Excel file using Calibri 11, one finds 1000px ~ 142.85546875 This gives a conversion factor of 7. Also, we assume that pixels and font size are proportional.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Value in cell dimension</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value in pixels</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$pDefaultFont</b>&nbsp;&nbsp;</td> + <td>Default font of the workbook</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodpixelsToEMU"></a> + <h3>static method pixelsToEMU <span class="smalllinenumber">[line 44]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int pixelsToEMU( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert pixels to EMU<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Value in EMU</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value in pixels</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodpixelsToPoints"></a> + <h3>static method pixelsToPoints <span class="smalllinenumber">[line 130]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int pixelsToPoints( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert pixels to points<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Value in points</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value in pixels</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodpointsToPixels"></a> + <h3>static method pointsToPixels <span class="smalllinenumber">[line 140]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int pointsToPixels( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert points to pixels<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Value in pixels</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value in points</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:49 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Excel5.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Excel5.html new file mode 100644 index 0000000..fa878e6 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Excel5.html @@ -0,0 +1,496 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Excel5</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Excel5</h1> +Source Location: /PHPExcel/Shared/Excel5.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Excel5</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodgetDistanceX">getDistanceX</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodgetDistanceY">getDistanceY</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodoneAnchor2twoAnchor">oneAnchor2twoAnchor</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodsizeCol">sizeCol</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodsizeRow">sizeRow</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Shared_Excel5<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodgetDistanceX"></a> + <h3>static method getDistanceX <span class="smalllinenumber">[line 144]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer getDistanceX( +PHPExcel_Worksheet +$sheet, [string +$startColumn = 'A'], [ +$startOffsetX = 0], [string +$endColumn = 'A'], [ +$endOffsetX = 0], integer +$startOffset, integer +$endOffset)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the horizontal distance in pixels between two anchors The distanceX is found as sum of all the spanning columns widths minus correction for the two offsets<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Horizontal measured in pixels</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$sheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$startColumn</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$startOffset</b>&nbsp;&nbsp;</td> + <td>Offset within start cell measured in 1/1024 of the cell width</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$endColumn</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$endOffset</b>&nbsp;&nbsp;</td> + <td>Offset within end cell measured in 1/1024 of the cell width</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$startOffsetX</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$endOffsetX</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDistanceY"></a> + <h3>static method getDistanceY <span class="smalllinenumber">[line 175]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer getDistanceY( +PHPExcel_Worksheet +$sheet, [string +$startRow = 1], [ +$startOffsetY = 0], [string +$endRow = 1], [ +$endOffsetY = 0], integer +$startOffset, integer +$endOffset)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the vertical distance in pixels between two anchors The distanceY is found as sum of all the spanning rows minus two offsets<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Vertical distance measured in pixels</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$sheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$startRow</b>&nbsp;&nbsp;</td> + <td>(1-based)</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$startOffset</b>&nbsp;&nbsp;</td> + <td>Offset within start cell measured in 1/256 of the cell height</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$endRow</b>&nbsp;&nbsp;</td> + <td>(1-based)</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$endOffset</b>&nbsp;&nbsp;</td> + <td>Offset within end cell measured in 1/256 of the cell height</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$startOffsetY</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$endOffsetY</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodoneAnchor2twoAnchor"></a> + <h3>static method oneAnchor2twoAnchor <span class="smalllinenumber">[line 245]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array oneAnchor2twoAnchor( +<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$sheet, string +$coordinates, integer +$offsetX, integer +$offsetY, integer +$width, integer +$height)</code> + </td></tr></table> + </td></tr></table><br /> + + Convert 1-cell anchor coordinates to 2-cell anchor coordinates This function is ported from PEAR Spreadsheet_Writer_Excel with small modifications<br /><br /><p>Calculate the vertices that define the position of the image as required by the OBJ record.</p><p>+------------+------------+ | A | B | +-----+------------+------------+ | |(x1,y1) | | | 1 |(A1)._______|______ | | | | | | | | | | | +-----+----| BITMAP |-----+ | | | | | | 2 | |______________. | | | | (B2)| | | | (x2,y2)| +---- +------------+------------+</p><p>Example of a bitmap that covers some of the area from cell A1 to cell B2.</p><p>Based on the width and height of the bitmap we need to calculate 8 vars: $col_start, $row_start, $col_end, $row_end, $x1, $y1, $x2, $y2. The width and height of the cells are also variable and have to be taken into account. The values of $col_start and $row_start are passed in from the calling function. The values of $col_end and $row_end are calculated by subtracting the width and height of the bitmap from the width and height of the underlying cells. The vertices are expressed as a percentage of the underlying cell width as follows (rhs values are in pixels):</p><p>x1 = X / W *1024 y1 = Y / H *256 x2 = (X-1) / W *1024 y2 = (Y-1) / H *256</p><p>Where: X is distance from the left side of the underlying cell Y is distance from the top of the underlying cell W is the width of the cell H is the height of the cell</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$sheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$coordinates</b>&nbsp;&nbsp;</td> + <td>E.g. 'A1'</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$offsetX</b>&nbsp;&nbsp;</td> + <td>Horizontal offset in pixels</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$offsetY</b>&nbsp;&nbsp;</td> + <td>Vertical offset in pixels</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$width</b>&nbsp;&nbsp;</td> + <td>Width in pixels</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$height</b>&nbsp;&nbsp;</td> + <td>Height in pixels</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsizeCol"></a> + <h3>static method sizeCol <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer sizeCol( +<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$sheet, [integer +$col = 'A'])</code> + </td></tr></table> + </td></tr></table><br /> + + Get the width of a column in pixels. We use the relationship y = ceil(7x) where x is the width in intrinsic Excel units (measuring width in number of normal characters) This holds for Arial 10<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The width in pixels</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$sheet</b>&nbsp;&nbsp;</td> + <td>The sheet</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$col</b>&nbsp;&nbsp;</td> + <td>The column</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsizeRow"></a> + <h3>static method sizeRow <span class="smalllinenumber">[line 93]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer sizeRow( +<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$sheet, [integer +$row = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert the height of a cell from user's units to pixels. By interpolation the relationship is: y = 4/3x. If the height hasn't been set by the user we use the default value. If the row is hidden we use a value of zero.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The width in pixels</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$sheet</b>&nbsp;&nbsp;</td> + <td>The sheet</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$row</b>&nbsp;&nbsp;</td> + <td>The row index (1-based)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_File.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_File.html new file mode 100644 index 0000000..78f8455 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_File.html @@ -0,0 +1,285 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_File</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_File</h1> +Source Location: /PHPExcel/Shared/File.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_File</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_File.html#methodfile_exists">file_exists</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_File.html#methodrealpath">realpath</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_File.html#methodsys_get_temp_dir">sys_get_temp_dir</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Shared_File<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodfile_exists"></a> + <h3>static method file_exists <span class="smalllinenumber">[line 44]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static bool file_exists( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Verify if a file exists<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td>Filename</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrealpath"></a> + <h3>static method realpath <span class="smalllinenumber">[line 73]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string realpath( +string +$pFilename)</code> + </td></tr></table> + </td></tr></table><br /> + + Returns canonicalized absolute pathname, also for ZIP archives<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsys_get_temp_dir"></a> + <h3>static method sys_get_temp_dir <span class="smalllinenumber">[line 106]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string sys_get_temp_dir( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the systems temporary directory.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:15 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Font.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Font.html new file mode 100644 index 0000000..88bf6ce --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_Font.html @@ -0,0 +1,1349 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Font</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Font</h1> +Source Location: /PHPExcel/Shared/Font.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Font</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#var$defaultColumnWidths">$defaultColumnWidths</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL">ARIAL</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL_BOLD">ARIAL_BOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL_BOLD_ITALIC">ARIAL_BOLD_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL_ITALIC">ARIAL_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constAUTOSIZE_METHOD_APPROX">AUTOSIZE_METHOD_APPROX</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constAUTOSIZE_METHOD_EXACT">AUTOSIZE_METHOD_EXACT</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI">CALIBRI</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI_BOLD">CALIBRI_BOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI_BOLD_ITALIC">CALIBRI_BOLD_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI_ITALIC">CALIBRI_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_ARABIC">CHARSET_ANSI_ARABIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_BALTIC">CHARSET_ANSI_BALTIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_CHINESE_SIMIPLIFIED">CHARSET_ANSI_CHINESE_SIMIPLIFIED</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_CHINESE_TRADITIONAL">CHARSET_ANSI_CHINESE_TRADITIONAL</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_CYRILLIC">CHARSET_ANSI_CYRILLIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_GREEK">CHARSET_ANSI_GREEK</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_HEBREW">CHARSET_ANSI_HEBREW</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_JAPANESE_SHIFTJIS">CHARSET_ANSI_JAPANESE_SHIFTJIS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_KOREAN_HANGUL">CHARSET_ANSI_KOREAN_HANGUL</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_KOREAN_JOHAB">CHARSET_ANSI_KOREAN_JOHAB</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_LATIN">CHARSET_ANSI_LATIN</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_LATIN_II">CHARSET_ANSI_LATIN_II</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_THAI">CHARSET_ANSI_THAI</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_TURKISH">CHARSET_ANSI_TURKISH</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_VIETNAMESE">CHARSET_ANSI_VIETNAMESE</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_APPLE_ROMAN">CHARSET_APPLE_ROMAN</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_OEM_LATIN_I">CHARSET_OEM_LATIN_I</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_SYMBOL">CHARSET_SYMBOL</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_SYSTEM_DEFAULT">CHARSET_SYSTEM_DEFAULT</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOMIC_SANS_MS">COMIC_SANS_MS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOMIC_SANS_MS_BOLD">COMIC_SANS_MS_BOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW">COURIER_NEW</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW_BOLD">COURIER_NEW_BOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW_BOLD_ITALIC">COURIER_NEW_BOLD_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW_ITALIC">COURIER_NEW_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA">GEORGIA</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA_BOLD">GEORGIA_BOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA_BOLD_ITALIC">GEORGIA_BOLD_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA_ITALIC">GEORGIA_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constIMPACT">IMPACT</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS">LIBERATION_SANS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS_BOLD">LIBERATION_SANS_BOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS_BOLD_ITALIC">LIBERATION_SANS_BOLD_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS_ITALIC">LIBERATION_SANS_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constLUCIDA_CONSOLE">LUCIDA_CONSOLE</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constLUCIDA_SANS_UNICODE">LUCIDA_SANS_UNICODE</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constMICROSOFT_SANS_SERIF">MICROSOFT_SANS_SERIF</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE">PALATINO_LINOTYPE</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE_BOLD">PALATINO_LINOTYPE_BOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE_BOLD_ITALIC">PALATINO_LINOTYPE_BOLD_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE_ITALIC">PALATINO_LINOTYPE_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constSYMBOL">SYMBOL</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constTAHOMA">TAHOMA</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constTAHOMA_BOLD">TAHOMA_BOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN">TIMES_NEW_ROMAN</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN_BOLD">TIMES_NEW_ROMAN_BOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN_BOLD_ITALIC">TIMES_NEW_ROMAN_BOLD_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN_ITALIC">TIMES_NEW_ROMAN_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS">TREBUCHET_MS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS_BOLD">TREBUCHET_MS_BOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS_BOLD_ITALIC">TREBUCHET_MS_BOLD_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS_ITALIC">TREBUCHET_MS_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA">VERDANA</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA_BOLD">VERDANA_BOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA_BOLD_ITALIC">VERDANA_BOLD_ITALIC</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA_ITALIC">VERDANA_ITALIC</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodcalculateColumnWidth">calculateColumnWidth</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodcentimeterSizeToPixels">centimeterSizeToPixels</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodfontSizeToPixels">fontSizeToPixels</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetAutoSizeMethod">getAutoSizeMethod</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetCharsetFromFontName">getCharsetFromFontName</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetDefaultColumnWidthByFont">getDefaultColumnWidthByFont</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetDefaultRowHeightByFont">getDefaultRowHeightByFont</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTextWidthPixelsApprox">getTextWidthPixelsApprox</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTextWidthPixelsExact">getTextWidthPixelsExact</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTrueTypeFontFileFromFont">getTrueTypeFontFileFromFont</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTrueTypeFontPath">getTrueTypeFontPath</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodinchSizeToPixels">inchSizeToPixels</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodsetAutoSizeMethod">setAutoSizeMethod</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html#methodsetTrueTypeFontPath">setTrueTypeFontPath</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Shared_Font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$defaultColumnWidths"></a> + <p></p> + <h4>static $defaultColumnWidths = <span class="value">array(<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'Arial'&nbsp;=&gt;&nbsp;array(<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;=&gt;&nbsp;array('px'&nbsp;=&gt;&nbsp;24,&nbsp;'width'&nbsp;=&gt;&nbsp;12.00000000),2=&gt;array('px'=&gt;24,'width'=&gt;12.00000000),3=&gt;array('px'=&gt;32,'width'=&gt;10.66406250),4=&gt;array('px'=&gt;32,'width'=&gt;10.66406250),5=&gt;array('px'=&gt;40,'width'=&gt;10.00000000),6=&gt;array('px'=&gt;48,'width'=&gt;9.59765625),7=&gt;array('px'=&gt;48,'width'=&gt;9.59765625),8=&gt;array('px'=&gt;56,'width'=&gt;9.33203125),9=&gt;array('px'=&gt;64,'width'=&gt;9.14062500),10=&gt;array('px'=&gt;64,'width'=&gt;9.14062500),),'Calibri'=&gt;array(1=&gt;array('px'=&gt;24,'width'=&gt;12.00000000),2=&gt;array('px'=&gt;24,'width'=&gt;12.00000000),3=&gt;array('px'=&gt;32,'width'=&gt;10.66406250),4=&gt;array('px'=&gt;32,'width'=&gt;10.66406250),5=&gt;array('px'=&gt;40,'width'=&gt;10.00000000),6=&gt;array('px'=&gt;48,'width'=&gt;9.59765625),7=&gt;array('px'=&gt;48,'width'=&gt;9.59765625),8=&gt;array('px'=&gt;56,'width'=&gt;9.33203125),9=&gt;array('px'=&gt;56,'width'=&gt;9.33203125),10=&gt;array('px'=&gt;64,'width'=&gt;9.14062500),11=&gt;array('px'=&gt;64,'width'=&gt;9.14062500),),'Verdana'=&gt;array(1=&gt;array('px'=&gt;24,'width'=&gt;12.00000000),2=&gt;array('px'=&gt;24,'width'=&gt;12.00000000),3=&gt;array('px'=&gt;32,'width'=&gt;10.66406250),4=&gt;array('px'=&gt;32,'width'=&gt;10.66406250),5=&gt;array('px'=&gt;40,'width'=&gt;10.00000000),6=&gt;array('px'=&gt;48,'width'=&gt;9.59765625),7=&gt;array('px'=&gt;48,'width'=&gt;9.59765625),8=&gt;array('px'=&gt;64,'width'=&gt;9.14062500),9=&gt;array('px'=&gt;72,'width'=&gt;9.00000000),10=&gt;array('px'=&gt;72,'width'=&gt;9.00000000),),)</span></h4> + <p>[line 151]</p> + How wide is a default column for a given default font and size? Empirical data found by inspecting real Excel files and reading off the pixel width in Microsoft Office Excel 2007.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodcalculateColumnWidth"></a> + <h3>static method calculateColumnWidth <span class="smalllinenumber">[line 253]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int calculateColumnWidth( +PHPExcel_Style_Font +$font, [string +$cellText = ''], [int +$rotation = 0], [PHPExcel_Style_Font +$defaultFont = null], int +$fontSize, bool +$fontSizeInPixels)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate an (approximate) OpenXML column width, based on font size and text contained<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Column width</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$fontSize</b>&nbsp;&nbsp;</td> + <td>Font size (in pixels or points)</td> + </tr> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$fontSizeInPixels</b>&nbsp;&nbsp;</td> + <td>Is the font size specified in pixels (true) or in points (false) ?</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$cellText</b>&nbsp;&nbsp;</td> + <td>Text to calculate width</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$rotation</b>&nbsp;&nbsp;</td> + <td>Rotation angle</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$font</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$defaultFont</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcentimeterSizeToPixels"></a> + <h3>static method centimeterSizeToPixels <span class="smalllinenumber">[line 416]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int centimeterSizeToPixels( +[int +$sizeInCm = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate an (approximate) pixel size, based on centimeter size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Size (in pixels)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$sizeInCm</b>&nbsp;&nbsp;</td> + <td>Font size (in centimeters)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodfontSizeToPixels"></a> + <h3>static method fontSizeToPixels <span class="smalllinenumber">[line 396]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int fontSizeToPixels( +[int +$fontSizeInPoints = 11])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate an (approximate) pixel size, based on a font points size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Font size (in pixels)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$fontSizeInPoints</b>&nbsp;&nbsp;</td> + <td>Font size (in points)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAutoSizeMethod"></a> + <h3>static method getAutoSizeMethod <span class="smalllinenumber">[line 213]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getAutoSizeMethod( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get autoSize method<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCharsetFromFontName"></a> + <h3>static method getCharsetFromFontName <span class="smalllinenumber">[line 553]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int getCharsetFromFontName( +string +$name)</code> + </td></tr></table> + </td></tr></table><br /> + + Returns the associated charset for the font name.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Character set code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$name</b>&nbsp;&nbsp;</td> + <td>Font name</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDefaultColumnWidthByFont"></a> + <h3>static method getDefaultColumnWidthByFont <span class="smalllinenumber">[line 573]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed getDefaultColumnWidthByFont( +PHPExcel_Style_Font +$font, [boolean +$pPixels = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Get the effective column width for columns without a column dimension or column with width -1 For example, for Calibri 11 this is 9.140625 (64 px)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Column width</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$font</b>&nbsp;&nbsp;</td> + <td>The workbooks default font</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pPixels</b>&nbsp;&nbsp;</td> + <td>true = return column width in pixels, false = return in OOXML units</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDefaultRowHeightByFont"></a> + <h3>static method getDefaultRowHeightByFont <span class="smalllinenumber">[line 605]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static float getDefaultRowHeightByFont( +PHPExcel_Style_Font +$font)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the effective row height for rows without a row dimension or rows with height -1 For example, for Calibri 11 this is 15 points<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Row height in points</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$font</b>&nbsp;&nbsp;</td> + <td>The workbooks default font</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTextWidthPixelsApprox"></a> + <h3>static method getTextWidthPixelsApprox <span class="smalllinenumber">[line 341]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int getTextWidthPixelsApprox( +string +$columnText, [PHPExcel_Style_Font +$font = null], [int +$rotation = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Get approximate width in pixels for a string of text in a certain font at a certain rotation angle<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Text width in pixels (no padding added)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$columnText</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$font</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$rotation</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTextWidthPixelsExact"></a> + <h3>static method getTextWidthPixelsExact <span class="smalllinenumber">[line 307]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int getTextWidthPixelsExact( +string +$text, PHPExcel_Style_Font +$font, [int +$rotation = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Get GD text width in pixels for a string of text in a certain font at a certain rotation angle<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$text</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$rotation</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$font</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTrueTypeFontFileFromFont"></a> + <h3>static method getTrueTypeFontFileFromFont <span class="smalllinenumber">[line 426]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getTrueTypeFontFileFromFont( +<a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> +$font)</code> + </td></tr></table> + </td></tr></table><br /> + + Returns the font path given the font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Path to TrueType font file</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$font</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTrueTypeFontPath"></a> + <h3>static method getTrueTypeFontPath <span class="smalllinenumber">[line 239]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getTrueTypeFontPath( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the path to the folder containing .ttf files.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinchSizeToPixels"></a> + <h3>static method inchSizeToPixels <span class="smalllinenumber">[line 406]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int inchSizeToPixels( +[int +$sizeInInch = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate an (approximate) pixel size, based on inch size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Size (in pixels)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$sizeInInch</b>&nbsp;&nbsp;</td> + <td>Font size (in inch)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAutoSizeMethod"></a> + <h3>static method setAutoSizeMethod <span class="smalllinenumber">[line 197]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean setAutoSizeMethod( +[string +$pValue = self::AUTOSIZE_METHOD_APPROX])</code> + </td></tr></table> + </td></tr></table><br /> + + Set autoSize method<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Success or failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTrueTypeFontPath"></a> + <h3>static method setTrueTypeFontPath <span class="smalllinenumber">[line 229]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void setTrueTypeFontPath( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the path to the folder containing .ttf files. There should be a trailing slash.<br /><br /><p>Typical locations on variout some platforms: <ul><li>C:/Windows/Fonts/</li><li>/usr/share/fonts/truetype/</li><li>~/.fonts/</li></ul></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constARIAL"></a> + <p></p> + <h4>ARIAL = <span class="value">&nbsp;'arial.ttf'</span></h4> + <p>[line 70]</p> + Font filenames<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constARIAL_BOLD"></a> + <p></p> + <h4>ARIAL_BOLD = <span class="value">&nbsp;'arialbd.ttf'</span></h4> + <p>[line 71]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constARIAL_BOLD_ITALIC"></a> + <p></p> + <h4>ARIAL_BOLD_ITALIC = <span class="value">&nbsp;'arialbi.ttf'</span></h4> + <p>[line 73]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constARIAL_ITALIC"></a> + <p></p> + <h4>ARIAL_ITALIC = <span class="value">&nbsp;'ariali.ttf'</span></h4> + <p>[line 72]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOSIZE_METHOD_APPROX"></a> + <p></p> + <h4>AUTOSIZE_METHOD_APPROX = <span class="value">&nbsp;'approx'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOSIZE_METHOD_EXACT"></a> + <p></p> + <h4>AUTOSIZE_METHOD_EXACT = <span class="value">&nbsp;'exact'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCALIBRI"></a> + <p></p> + <h4>CALIBRI = <span class="value">&nbsp;'CALIBRI.TTF'</span></h4> + <p>[line 75]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCALIBRI_BOLD"></a> + <p></p> + <h4>CALIBRI_BOLD = <span class="value">&nbsp;'CALIBRIB.TTF'</span></h4> + <p>[line 76]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCALIBRI_BOLD_ITALIC"></a> + <p></p> + <h4>CALIBRI_BOLD_ITALIC = <span class="value">&nbsp;'CALIBRIZ.TTF'</span></h4> + <p>[line 78]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCALIBRI_ITALIC"></a> + <p></p> + <h4>CALIBRI_ITALIC = <span class="value">&nbsp;'CALIBRII.TTF'</span></h4> + <p>[line 77]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_ARABIC"></a> + <p></p> + <h4>CHARSET_ANSI_ARABIC = <span class="value">&nbsp;0xB2</span></h4> + <p>[line 61]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_BALTIC"></a> + <p></p> + <h4>CHARSET_ANSI_BALTIC = <span class="value">&nbsp;0xBA</span></h4> + <p>[line 62]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_CHINESE_SIMIPLIFIED"></a> + <p></p> + <h4>CHARSET_ANSI_CHINESE_SIMIPLIFIED = <span class="value">&nbsp;0x86</span></h4> + <p>[line 55]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_CHINESE_TRADITIONAL"></a> + <p></p> + <h4>CHARSET_ANSI_CHINESE_TRADITIONAL = <span class="value">&nbsp;0x88</span></h4> + <p>[line 56]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_CYRILLIC"></a> + <p></p> + <h4>CHARSET_ANSI_CYRILLIC = <span class="value">&nbsp;0xCC</span></h4> + <p>[line 63]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_GREEK"></a> + <p></p> + <h4>CHARSET_ANSI_GREEK = <span class="value">&nbsp;0xA1</span></h4> + <p>[line 57]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_HEBREW"></a> + <p></p> + <h4>CHARSET_ANSI_HEBREW = <span class="value">&nbsp;0xB1</span></h4> + <p>[line 60]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_JAPANESE_SHIFTJIS"></a> + <p></p> + <h4>CHARSET_ANSI_JAPANESE_SHIFTJIS = <span class="value">&nbsp;0x80</span></h4> + <p>[line 52]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_KOREAN_HANGUL"></a> + <p></p> + <h4>CHARSET_ANSI_KOREAN_HANGUL = <span class="value">&nbsp;0x81</span></h4> + <p>[line 53]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_KOREAN_JOHAB"></a> + <p></p> + <h4>CHARSET_ANSI_KOREAN_JOHAB = <span class="value">&nbsp;0x82</span></h4> + <p>[line 54]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_LATIN"></a> + <p></p> + <h4>CHARSET_ANSI_LATIN = <span class="value">&nbsp;0x00</span></h4> + <p>[line 48]</p> + Character set codes used by BIFF5-8 in Font records<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_LATIN_II"></a> + <p></p> + <h4>CHARSET_ANSI_LATIN_II = <span class="value">&nbsp;0xEE</span></h4> + <p>[line 65]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_THAI"></a> + <p></p> + <h4>CHARSET_ANSI_THAI = <span class="value">&nbsp;0xDD</span></h4> + <p>[line 64]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_TURKISH"></a> + <p></p> + <h4>CHARSET_ANSI_TURKISH = <span class="value">&nbsp;0xA2</span></h4> + <p>[line 58]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_ANSI_VIETNAMESE"></a> + <p></p> + <h4>CHARSET_ANSI_VIETNAMESE = <span class="value">&nbsp;0xA3</span></h4> + <p>[line 59]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_APPLE_ROMAN"></a> + <p></p> + <h4>CHARSET_APPLE_ROMAN = <span class="value">&nbsp;0x4D</span></h4> + <p>[line 51]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_OEM_LATIN_I"></a> + <p></p> + <h4>CHARSET_OEM_LATIN_I = <span class="value">&nbsp;0xFF</span></h4> + <p>[line 66]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_SYMBOL"></a> + <p></p> + <h4>CHARSET_SYMBOL = <span class="value">&nbsp;0x02</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCHARSET_SYSTEM_DEFAULT"></a> + <p></p> + <h4>CHARSET_SYSTEM_DEFAULT = <span class="value">&nbsp;0x01</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOMIC_SANS_MS"></a> + <p></p> + <h4>COMIC_SANS_MS = <span class="value">&nbsp;'comic.ttf'</span></h4> + <p>[line 80]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOMIC_SANS_MS_BOLD"></a> + <p></p> + <h4>COMIC_SANS_MS_BOLD = <span class="value">&nbsp;'comicbd.ttf'</span></h4> + <p>[line 81]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOURIER_NEW"></a> + <p></p> + <h4>COURIER_NEW = <span class="value">&nbsp;'cour.ttf'</span></h4> + <p>[line 83]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOURIER_NEW_BOLD"></a> + <p></p> + <h4>COURIER_NEW_BOLD = <span class="value">&nbsp;'courbd.ttf'</span></h4> + <p>[line 84]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOURIER_NEW_BOLD_ITALIC"></a> + <p></p> + <h4>COURIER_NEW_BOLD_ITALIC = <span class="value">&nbsp;'courbi.ttf'</span></h4> + <p>[line 86]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOURIER_NEW_ITALIC"></a> + <p></p> + <h4>COURIER_NEW_ITALIC = <span class="value">&nbsp;'couri.ttf'</span></h4> + <p>[line 85]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constGEORGIA"></a> + <p></p> + <h4>GEORGIA = <span class="value">&nbsp;'georgia.ttf'</span></h4> + <p>[line 88]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constGEORGIA_BOLD"></a> + <p></p> + <h4>GEORGIA_BOLD = <span class="value">&nbsp;'georgiab.ttf'</span></h4> + <p>[line 89]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constGEORGIA_BOLD_ITALIC"></a> + <p></p> + <h4>GEORGIA_BOLD_ITALIC = <span class="value">&nbsp;'georgiaz.ttf'</span></h4> + <p>[line 91]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constGEORGIA_ITALIC"></a> + <p></p> + <h4>GEORGIA_ITALIC = <span class="value">&nbsp;'georgiai.ttf'</span></h4> + <p>[line 90]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constIMPACT"></a> + <p></p> + <h4>IMPACT = <span class="value">&nbsp;'impact.ttf'</span></h4> + <p>[line 93]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constLIBERATION_SANS"></a> + <p></p> + <h4>LIBERATION_SANS = <span class="value">&nbsp;'LiberationSans-Regular.ttf'</span></h4> + <p>[line 95]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constLIBERATION_SANS_BOLD"></a> + <p></p> + <h4>LIBERATION_SANS_BOLD = <span class="value">&nbsp;'LiberationSans-Bold.ttf'</span></h4> + <p>[line 96]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constLIBERATION_SANS_BOLD_ITALIC"></a> + <p></p> + <h4>LIBERATION_SANS_BOLD_ITALIC = <span class="value">&nbsp;'LiberationSans-BoldItalic.ttf'</span></h4> + <p>[line 98]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constLIBERATION_SANS_ITALIC"></a> + <p></p> + <h4>LIBERATION_SANS_ITALIC = <span class="value">&nbsp;'LiberationSans-Italic.ttf'</span></h4> + <p>[line 97]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constLUCIDA_CONSOLE"></a> + <p></p> + <h4>LUCIDA_CONSOLE = <span class="value">&nbsp;'lucon.ttf'</span></h4> + <p>[line 100]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constLUCIDA_SANS_UNICODE"></a> + <p></p> + <h4>LUCIDA_SANS_UNICODE = <span class="value">&nbsp;'l_10646.ttf'</span></h4> + <p>[line 101]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constMICROSOFT_SANS_SERIF"></a> + <p></p> + <h4>MICROSOFT_SANS_SERIF = <span class="value">&nbsp;'micross.ttf'</span></h4> + <p>[line 103]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPALATINO_LINOTYPE"></a> + <p></p> + <h4>PALATINO_LINOTYPE = <span class="value">&nbsp;'pala.ttf'</span></h4> + <p>[line 105]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPALATINO_LINOTYPE_BOLD"></a> + <p></p> + <h4>PALATINO_LINOTYPE_BOLD = <span class="value">&nbsp;'palab.ttf'</span></h4> + <p>[line 106]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPALATINO_LINOTYPE_BOLD_ITALIC"></a> + <p></p> + <h4>PALATINO_LINOTYPE_BOLD_ITALIC = <span class="value">&nbsp;'palabi.ttf'</span></h4> + <p>[line 108]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPALATINO_LINOTYPE_ITALIC"></a> + <p></p> + <h4>PALATINO_LINOTYPE_ITALIC = <span class="value">&nbsp;'palai.ttf'</span></h4> + <p>[line 107]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSYMBOL"></a> + <p></p> + <h4>SYMBOL = <span class="value">&nbsp;'symbol.ttf'</span></h4> + <p>[line 110]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTAHOMA"></a> + <p></p> + <h4>TAHOMA = <span class="value">&nbsp;'tahoma.ttf'</span></h4> + <p>[line 112]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTAHOMA_BOLD"></a> + <p></p> + <h4>TAHOMA_BOLD = <span class="value">&nbsp;'tahomabd.ttf'</span></h4> + <p>[line 113]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTIMES_NEW_ROMAN"></a> + <p></p> + <h4>TIMES_NEW_ROMAN = <span class="value">&nbsp;'times.ttf'</span></h4> + <p>[line 115]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTIMES_NEW_ROMAN_BOLD"></a> + <p></p> + <h4>TIMES_NEW_ROMAN_BOLD = <span class="value">&nbsp;'timesbd.ttf'</span></h4> + <p>[line 116]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTIMES_NEW_ROMAN_BOLD_ITALIC"></a> + <p></p> + <h4>TIMES_NEW_ROMAN_BOLD_ITALIC = <span class="value">&nbsp;'timesbi.ttf'</span></h4> + <p>[line 118]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTIMES_NEW_ROMAN_ITALIC"></a> + <p></p> + <h4>TIMES_NEW_ROMAN_ITALIC = <span class="value">&nbsp;'timesi.ttf'</span></h4> + <p>[line 117]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREBUCHET_MS"></a> + <p></p> + <h4>TREBUCHET_MS = <span class="value">&nbsp;'trebuc.ttf'</span></h4> + <p>[line 120]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREBUCHET_MS_BOLD"></a> + <p></p> + <h4>TREBUCHET_MS_BOLD = <span class="value">&nbsp;'trebucbd.ttf'</span></h4> + <p>[line 121]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREBUCHET_MS_BOLD_ITALIC"></a> + <p></p> + <h4>TREBUCHET_MS_BOLD_ITALIC = <span class="value">&nbsp;'trebucbi.ttf'</span></h4> + <p>[line 123]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREBUCHET_MS_ITALIC"></a> + <p></p> + <h4>TREBUCHET_MS_ITALIC = <span class="value">&nbsp;'trebucit.ttf'</span></h4> + <p>[line 122]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constVERDANA"></a> + <p></p> + <h4>VERDANA = <span class="value">&nbsp;'verdana.ttf'</span></h4> + <p>[line 125]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constVERDANA_BOLD"></a> + <p></p> + <h4>VERDANA_BOLD = <span class="value">&nbsp;'verdanab.ttf'</span></h4> + <p>[line 126]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constVERDANA_BOLD_ITALIC"></a> + <p></p> + <h4>VERDANA_BOLD_ITALIC = <span class="value">&nbsp;'verdanaz.ttf'</span></h4> + <p>[line 128]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constVERDANA_ITALIC"></a> + <p></p> + <h4>VERDANA_ITALIC = <span class="value">&nbsp;'verdanai.ttf'</span></h4> + <p>[line 127]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_OLERead.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_OLERead.html new file mode 100644 index 0000000..34e278e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_OLERead.html @@ -0,0 +1,460 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_OLERead</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_OLERead</h1> +Source Location: /PHPExcel/Shared/OLERead.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description"></div><br /><br /> + + + + + + + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#var$documentSummaryInformation">$documentSummaryInformation</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#var$summaryInformation">$summaryInformation</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#var$wrkbook">$wrkbook</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constBIG_BLOCK_DEPOT_BLOCKS_POS">BIG_BLOCK_DEPOT_BLOCKS_POS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constBIG_BLOCK_SIZE">BIG_BLOCK_SIZE</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constEXTENSION_BLOCK_POS">EXTENSION_BLOCK_POS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constIDENTIFIER_OLE">IDENTIFIER_OLE</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constNUM_BIG_BLOCK_DEPOT_BLOCKS_POS">NUM_BIG_BLOCK_DEPOT_BLOCKS_POS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constNUM_EXTENSION_BLOCK_POS">NUM_EXTENSION_BLOCK_POS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constPROPERTY_STORAGE_BLOCK_SIZE">PROPERTY_STORAGE_BLOCK_SIZE</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constROOT_START_BLOCK_POS">ROOT_START_BLOCK_POS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSIZE_OF_NAME_POS">SIZE_OF_NAME_POS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSIZE_POS">SIZE_POS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSMALL_BLOCK_DEPOT_BLOCK_POS">SMALL_BLOCK_DEPOT_BLOCK_POS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSMALL_BLOCK_SIZE">SMALL_BLOCK_SIZE</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSMALL_BLOCK_THRESHOLD">SMALL_BLOCK_THRESHOLD</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSTART_BLOCK_POS">START_BLOCK_POS</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constTYPE_POS">TYPE_POS</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#methodgetStream">getStream</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html#methodread">read</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 30]<br /> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$documentSummaryInformation"></a> + <p></p> + <h4>$documentSummaryInformation = <span class="value">&nbsp;null</span></h4> + <p>[line 66]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$summaryInformation"></a> + <p></p> + <h4>$summaryInformation = <span class="value">&nbsp;null</span></h4> + <p>[line 65]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$wrkbook"></a> + <p></p> + <h4>$wrkbook = <span class="value">&nbsp;null</span></h4> + <p>[line 64]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetStream"></a> + <h3>method getStream <span class="smalllinenumber">[line 176]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getStream( + +$stream)</code> + </td></tr></table> + </td></tr></table><br /> + + Extract binary stream data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$stream</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodread"></a> + <h3>method read <span class="smalllinenumber">[line 75]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void read( +$sFileName +$sFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Read the file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">$sFileName&nbsp;&nbsp;</td> + <td><b>$sFileName</b>&nbsp;&nbsp;</td> + <td>string Filename</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constBIG_BLOCK_DEPOT_BLOCKS_POS"></a> + <p></p> + <h4>BIG_BLOCK_DEPOT_BLOCKS_POS = <span class="value">&nbsp;0x4c</span></h4> + <p>[line 54]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBIG_BLOCK_SIZE"></a> + <p></p> + <h4>BIG_BLOCK_SIZE = <span class="value">&nbsp;0x200</span></h4> + <p>[line 37]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constEXTENSION_BLOCK_POS"></a> + <p></p> + <h4>EXTENSION_BLOCK_POS = <span class="value">&nbsp;0x44</span></h4> + <p>[line 52]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constIDENTIFIER_OLE"></a> + <p></p> + <h4>IDENTIFIER_OLE = <span class="value">&nbsp;IDENTIFIER_OLE</span></h4> + <p>[line 34]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constNUM_BIG_BLOCK_DEPOT_BLOCKS_POS"></a> + <p></p> + <h4>NUM_BIG_BLOCK_DEPOT_BLOCKS_POS = <span class="value">&nbsp;0x2c</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constNUM_EXTENSION_BLOCK_POS"></a> + <p></p> + <h4>NUM_EXTENSION_BLOCK_POS = <span class="value">&nbsp;0x48</span></h4> + <p>[line 53]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPROPERTY_STORAGE_BLOCK_SIZE"></a> + <p></p> + <h4>PROPERTY_STORAGE_BLOCK_SIZE = <span class="value">&nbsp;0x80</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constROOT_START_BLOCK_POS"></a> + <p></p> + <h4>ROOT_START_BLOCK_POS = <span class="value">&nbsp;0x30</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSIZE_OF_NAME_POS"></a> + <p></p> + <h4>SIZE_OF_NAME_POS = <span class="value">&nbsp;0x40</span></h4> + <p>[line 57]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSIZE_POS"></a> + <p></p> + <h4>SIZE_POS = <span class="value">&nbsp;0x78</span></h4> + <p>[line 60]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSMALL_BLOCK_DEPOT_BLOCK_POS"></a> + <p></p> + <h4>SMALL_BLOCK_DEPOT_BLOCK_POS = <span class="value">&nbsp;0x3c</span></h4> + <p>[line 51]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSMALL_BLOCK_SIZE"></a> + <p></p> + <h4>SMALL_BLOCK_SIZE = <span class="value">&nbsp;0x40</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSMALL_BLOCK_THRESHOLD"></a> + <p></p> + <h4>SMALL_BLOCK_THRESHOLD = <span class="value">&nbsp;0x1000</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSTART_BLOCK_POS"></a> + <p></p> + <h4>START_BLOCK_POS = <span class="value">&nbsp;0x74</span></h4> + <p>[line 59]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTYPE_POS"></a> + <p></p> + <h4>TYPE_POS = <span class="value">&nbsp;0x42</span></h4> + <p>[line 58]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:45 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html new file mode 100644 index 0000000..21b5896 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html @@ -0,0 +1,225 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_PasswordHasher</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_PasswordHasher</h1> +Source Location: /PHPExcel/Shared/PasswordHasher.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_PasswordHasher</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html#methodhashPassword">hashPassword</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Shared_PasswordHasher<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodhashPassword"></a> + <h3>static method hashPassword <span class="smalllinenumber">[line 48]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string hashPassword( +[string +$pPassword = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a password hash from a given string.<br /><br /><p>This method is based on the algorithm provided by Daniel Rentz of OpenOffice and the PEAR package Spreadsheet_Excel_Writer by Xavier Noguer &lt;xnoguer@rezebra.com&gt;.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hashed password</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pPassword</b>&nbsp;&nbsp;</td> + <td>Password to hash</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:53 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_String.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_String.html new file mode 100644 index 0000000..970723d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_String.html @@ -0,0 +1,1063 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_String</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_String</h1> +Source Location: /PHPExcel/Shared/String.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_String</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#constSTRING_REGEXP_FRACTION">STRING_REGEXP_FRACTION</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodbuildCharacterSets">buildCharacterSets</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodControlCharacterOOXML2PHP">ControlCharacterOOXML2PHP</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodControlCharacterPHP2OOXML">ControlCharacterPHP2OOXML</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodConvertEncoding">ConvertEncoding</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodconvertToNumberIfFraction">convertToNumberIfFraction</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodCountCharacters">CountCharacters</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodFormatNumber">FormatNumber</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetCurrencyCode">getCurrencyCode</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetDecimalSeparator">getDecimalSeparator</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetIsIconvEnabled">getIsIconvEnabled</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetIsMbstringEnabled">getIsMbstringEnabled</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetThousandsSeparator">getThousandsSeparator</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodIsUTF8">IsUTF8</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodSanitizeUTF8">SanitizeUTF8</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodsetCurrencyCode">setCurrencyCode</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodsetDecimalSeparator">setDecimalSeparator</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodsetThousandsSeparator">setThousandsSeparator</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodSubstring">Substring</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodSYLKtoUTF8">SYLKtoUTF8</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodtestStringAsNumeric">testStringAsNumeric</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodUTF8toBIFF8UnicodeLong">UTF8toBIFF8UnicodeLong</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodUTF8toBIFF8UnicodeShort">UTF8toBIFF8UnicodeShort</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html#methodutf16_decode">utf16_decode</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Shared_String<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodbuildCharacterSets"></a> + <h3>static method buildCharacterSets <span class="smalllinenumber">[line 332]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void buildCharacterSets( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodControlCharacterOOXML2PHP"></a> + <h3>static method ControlCharacterOOXML2PHP <span class="smalllinenumber">[line 355]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string ControlCharacterOOXML2PHP( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert from OpenXML escaped control character to PHP control character<br /><br /><p>Excel 2007 team: ---------------- That's correct, control characters are stored directly in the shared-strings table. We do encode characters that cannot be represented in XML using the following escape sequence: _xHHHH_ where H represents a hexadecimal character in the character's value... So you could end up with something like _x0008_ in a string (either in a cell value (&lt;v&gt;) element or in the shared string &lt;t&gt; element.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to unescape</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodControlCharacterPHP2OOXML"></a> + <h3>static method ControlCharacterPHP2OOXML <span class="smalllinenumber">[line 373]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string ControlCharacterPHP2OOXML( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert from PHP control character to OpenXML escaped control character<br /><br /><p>Excel 2007 team: ---------------- That's correct, control characters are stored directly in the shared-strings table. We do encode characters that cannot be represented in XML using the following escape sequence: _xHHHH_ where H represents a hexadecimal character in the character's value... So you could end up with something like _x0008_ in a string (either in a cell value (&lt;v&gt;) element or in the shared string &lt;t&gt; element.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to escape</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodConvertEncoding"></a> + <h3>static method ConvertEncoding <span class="smalllinenumber">[line 493]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string ConvertEncoding( +string +$value, string +$to, string +$from)</code> + </td></tr></table> + </td></tr></table><br /> + + Convert string from one encoding to another. First try iconv, then mbstring, or no convertion<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$to</b>&nbsp;&nbsp;</td> + <td>Encoding to convert to, e.g. 'UTF-8'</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$from</b>&nbsp;&nbsp;</td> + <td>Encoding to convert from, e.g. 'UTF-16LE'</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodconvertToNumberIfFraction"></a> + <h3>static method convertToNumberIfFraction <span class="smalllinenumber">[line 595]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean convertToNumberIfFraction( +string +&$operand)</code> + </td></tr></table> + </td></tr></table><br /> + + Identify whether a string contains a fractional numeric value, and convert it to a numeric if it is<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>&$operand</b>&nbsp;&nbsp;</td> + <td>string value to test</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodCountCharacters"></a> + <h3>static method CountCharacters <span class="smalllinenumber">[line 551]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int CountCharacters( +string +$value, [string +$enc = 'UTF-8'])</code> + </td></tr></table> + </td></tr></table><br /> + + Get character count. First try mbstring, then iconv, finally strlen<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Character count</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$enc</b>&nbsp;&nbsp;</td> + <td>Encoding</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodFormatNumber"></a> + <h3>static method FormatNumber <span class="smalllinenumber">[line 416]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string FormatNumber( +mixed +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Formats a numeric value as a string for output in various output writers forcing point as decimal separator in case locale is other than English.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCurrencyCode"></a> + <h3>static method getCurrencyCode <span class="smalllinenumber">[line 670]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getCurrencyCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currency code. If it has not yet been set explicitly, try to obtain the symbol information from locale.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDecimalSeparator"></a> + <h3>static method getDecimalSeparator <span class="smalllinenumber">[line 611]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getDecimalSeparator( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the decimal separator. If it has not yet been set explicitly, try to obtain number formatting information from locale.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIsIconvEnabled"></a> + <h3>static method getIsIconvEnabled <span class="smalllinenumber">[line 293]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean getIsIconvEnabled( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get whether iconv extension is available<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIsMbstringEnabled"></a> + <h3>static method getIsMbstringEnabled <span class="smalllinenumber">[line 276]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean getIsMbstringEnabled( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get whether mbstring extension is available<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetThousandsSeparator"></a> + <h3>static method getThousandsSeparator <span class="smalllinenumber">[line 643]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getThousandsSeparator( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the thousands separator. If it has not yet been set explicitly, try to obtain number formatting information from locale.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodIsUTF8"></a> + <h3>static method IsUTF8 <span class="smalllinenumber">[line 405]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static boolean IsUTF8( +[string +$value = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Check if a string contains UTF8 data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSanitizeUTF8"></a> + <h3>static method SanitizeUTF8 <span class="smalllinenumber">[line 383]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string SanitizeUTF8( +string +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Try to sanitize UTF8, stripping invalid byte sequences. Not perfect. Does not surrogate characters.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCurrencyCode"></a> + <h3>static method setCurrencyCode <span class="smalllinenumber">[line 691]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void setCurrencyCode( +[string +$pValue = '$'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the currency code. Only used by PHPExcel_Style_NumberFormat::toFormattedString() to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Character for currency code</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDecimalSeparator"></a> + <h3>static method setDecimalSeparator <span class="smalllinenumber">[line 632]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void setDecimalSeparator( +[string +$pValue = '.'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the decimal separator. Only used by PHPExcel_Style_NumberFormat::toFormattedString() to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Character for decimal separator</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetThousandsSeparator"></a> + <h3>static method setThousandsSeparator <span class="smalllinenumber">[line 659]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void setThousandsSeparator( +[string +$pValue = ','])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the thousands separator. Only used by PHPExcel_Style_NumberFormat::toFormattedString() to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Character for thousands separator</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSubstring"></a> + <h3>static method Substring <span class="smalllinenumber">[line 573]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string Substring( +[string +$pValue = ''], [ +$pStart = 0], [ +$pLength = 0], int +$start, int +$length)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a substring of a UTF-8 encoded string<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>UTF-8 encoded string</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$start</b>&nbsp;&nbsp;</td> + <td>Start offset</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$length</b>&nbsp;&nbsp;</td> + <td>Maximum number of characters in substring</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pStart</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pLength</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodSYLKtoUTF8"></a> + <h3>static method SYLKtoUTF8 <span class="smalllinenumber">[line 702]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string SYLKtoUTF8( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert SYLK encoded string to UTF-8<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>UTF-8 encoded string</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtestStringAsNumeric"></a> + <h3>static method testStringAsNumeric <span class="smalllinenumber">[line 723]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed testStringAsNumeric( +string +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Retrieve any leading numeric part of a string, or return the full string if no leading numeric (handles basic integer or float, but not exponent or non decimal)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>string or only the leading numeric part of the string</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodUTF8toBIFF8UnicodeLong"></a> + <h3>static method UTF8toBIFF8UnicodeLong <span class="smalllinenumber">[line 469]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string UTF8toBIFF8UnicodeLong( +string +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Converts a UTF-8 string into BIFF8 Unicode string data (16-bit string length)<br /><br /><p>Writes the string using uncompressed notation, no rich text, no Asian phonetics If mbstring extension is not available, ASCII is assumed, and compressed notation is used although this will give wrong results for non-ASCII strings see OpenOffice.org's Documentation of the Microsoft Excel File Format, sect. 2.5.3</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>UTF-8 encoded string</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodUTF8toBIFF8UnicodeShort"></a> + <h3>static method UTF8toBIFF8UnicodeShort <span class="smalllinenumber">[line 433]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string UTF8toBIFF8UnicodeShort( +string +$value, [ +$arrcRuns = array()])</code> + </td></tr></table> + </td></tr></table><br /> + + Converts a UTF-8 string into BIFF8 Unicode string data (8-bit string length)<br /><br /><p>Writes the string using uncompressed notation, no rich text, no Asian phonetics If mbstring extension is not available, ASCII is assumed, and compressed notation is used although this will give wrong results for non-ASCII strings see OpenOffice.org's Documentation of the Microsoft Excel File Format, sect. 2.5.3</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>UTF-8 encoded string</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$arrcRuns</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodutf16_decode"></a> + <h3>static method utf16_decode <span class="smalllinenumber">[line 528]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string utf16_decode( +string +$str, [ +$bom_be = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Decode UTF-16 encoded strings.<br /><br /><p>Can handle both BOM'ed data and un-BOM'ed data. Assumes Big-Endian byte order if no BOM is available. This function was taken from http://php.net/manual/en/function.utf8-decode.php and $bom_be parameter added.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>UTF-8 / ISO encoded data.</td> + </tr> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>vadik56</td> + </tr> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Rasmus Andersson <a href="http://rasmusandersson.se/">http://rasmusandersson.se/</a></td> + </tr> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>0.2 / 2010-05-13</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$str</b>&nbsp;&nbsp;</td> + <td>UTF-16 encoded data to decode.</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$bom_be</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constSTRING_REGEXP_FRACTION"></a> + <p></p> + <h4>STRING_REGEXP_FRACTION = <span class="value">&nbsp;'(-?)(\d+)\s+(\d+\/\d+)'</span></h4> + <p>[line 41]</p> + Regular Expressions<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html new file mode 100644 index 0000000..b7bc307 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html @@ -0,0 +1,605 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_XMLWriter</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_XMLWriter</h1> +Source Location: /PHPExcel/Shared/XMLWriter.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre>XMLWriter + | + --PHPExcel_Shared_XMLWriter</pre><br /> +<div class="description">PHPExcel_Shared_XMLWriter</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#constSTORAGE_DISK">STORAGE_DISK</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#constSTORAGE_MEMORY">STORAGE_MEMORY</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#methodgetData">getData</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#methodwriteRawData">writeRawData</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: XMLWriter (Internal Class)</h4> +<dl> + <dt> + endAttribute ( ) + </dt> + <dd> + + </dd> + <dt> + endCdata ( ) + </dt> + <dd> + + </dd> + <dt> + endComment ( ) + </dt> + <dd> + + </dd> + <dt> + endDocument ( ) + </dt> + <dd> + + </dd> + <dt> + endDtd ( ) + </dt> + <dd> + + </dd> + <dt> + endDtdAttlist ( ) + </dt> + <dd> + + </dd> + <dt> + endDtdElement ( ) + </dt> + <dd> + + </dd> + <dt> + endDtdEntity ( ) + </dt> + <dd> + + </dd> + <dt> + endElement ( ) + </dt> + <dd> + + </dd> + <dt> + endPi ( ) + </dt> + <dd> + + </dd> + <dt> + flush ( [$empty = ] ) + </dt> + <dd> + + </dd> + <dt> + fullEndElement ( ) + </dt> + <dd> + + </dd> + <dt> + openMemory ( ) + </dt> + <dd> + + </dd> + <dt> + openUri ( $uri ) + </dt> + <dd> + + </dd> + <dt> + outputMemory ( [$flush = ] ) + </dt> + <dd> + + </dd> + <dt> + setIndent ( $indent ) + </dt> + <dd> + + </dd> + <dt> + setIndentString ( $indentString ) + </dt> + <dd> + + </dd> + <dt> + startAttribute ( $name ) + </dt> + <dd> + + </dd> + <dt> + startAttributeNs ( $prefix, $name, $uri ) + </dt> + <dd> + + </dd> + <dt> + startCdata ( ) + </dt> + <dd> + + </dd> + <dt> + startComment ( ) + </dt> + <dd> + + </dd> + <dt> + startDocument ( [$version = ], [$encoding = ], [$standalone = ] ) + </dt> + <dd> + + </dd> + <dt> + startDtd ( $qualifiedName, [$publicId = ], [$systemId = ] ) + </dt> + <dd> + + </dd> + <dt> + startDtdAttlist ( $name ) + </dt> + <dd> + + </dd> + <dt> + startDtdElement ( $qualifiedName ) + </dt> + <dd> + + </dd> + <dt> + startDtdEntity ( $name, $isparam ) + </dt> + <dd> + + </dd> + <dt> + startElement ( $name ) + </dt> + <dd> + + </dd> + <dt> + startElementNs ( $prefix, $name, $uri ) + </dt> + <dd> + + </dd> + <dt> + startPi ( $target ) + </dt> + <dd> + + </dd> + <dt> + text ( $content ) + </dt> + <dd> + + </dd> + <dt> + writeAttribute ( $name, $value ) + </dt> + <dd> + + </dd> + <dt> + writeAttributeNs ( $prefix, $name, $uri, $content ) + </dt> + <dd> + + </dd> + <dt> + writeCdata ( $content ) + </dt> + <dd> + + </dd> + <dt> + writeComment ( $content ) + </dt> + <dd> + + </dd> + <dt> + writeDtd ( $name, [$publicId = ], [$systemId = ], [$subset = ] ) + </dt> + <dd> + + </dd> + <dt> + writeDtdAttlist ( $name, $content ) + </dt> + <dd> + + </dd> + <dt> + writeDtdElement ( $name, $content ) + </dt> + <dd> + + </dd> + <dt> + writeDtdEntity ( $name, $content ) + </dt> + <dd> + + </dd> + <dt> + writeElement ( $name, [$content = ] ) + </dt> + <dd> + + </dd> + <dt> + writeElementNs ( $prefix, $name, $uri, [$content = ] ) + </dt> + <dd> + + </dd> + <dt> + writePi ( $target, $content ) + </dt> + <dd> + + </dd> + <dt> + writeRaw ( $content ) + </dt> + <dd> + + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 44]<br /> +PHPExcel_Shared_XMLWriter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 62]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Shared_XMLWriter __construct( +[int +$pTemporaryStorage = self::STORAGE_MEMORY], [string +$pTemporaryStorageFolder = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Shared_XMLWriter instance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pTemporaryStorage</b>&nbsp;&nbsp;</td> + <td>Temporary storage location</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pTemporaryStorageFolder</b>&nbsp;&nbsp;</td> + <td>Temporary storage folder</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 88]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetData"></a> + <h3>method getData <span class="smalllinenumber">[line 100]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>$data getData( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get written data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteRawData"></a> + <h3>method writeRawData <span class="smalllinenumber">[line 115]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeRawData( +string +$text)</code> + </td></tr></table> + </td></tr></table><br /> + + Fallback method for writeRaw, introduced in PHP 5.2<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$text</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constSTORAGE_DISK"></a> + <p></p> + <h4>STORAGE_DISK = <span class="value">&nbsp;2</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSTORAGE_MEMORY"></a> + <p></p> + <h4>STORAGE_MEMORY = <span class="value">&nbsp;1</span></h4> + <p>[line 46]</p> + Temporary storage method<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html new file mode 100644 index 0000000..36ae1b2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html @@ -0,0 +1,424 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_ZipStreamWrapper</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_ZipStreamWrapper</h1> +Source Location: /PHPExcel/Shared/ZipStreamWrapper.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_ZipStreamWrapper</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodregister">register</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_eof">stream_eof</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_open">stream_open</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_read">stream_read</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_seek">stream_seek</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_stat">stream_stat</a></li> + <li><a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_tell">stream_tell</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Shared_ZipStreamWrapper<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodregister"></a> + <h3>static method register <span class="smalllinenumber">[line 68]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void register( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Register wrapper<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="methodstream_eof"></a> + <h3>method stream_eof <span class="smalllinenumber">[line 139]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool stream_eof( +)</code> + </td></tr></table> + </td></tr></table><br /> + + EOF stream<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstream_open"></a> + <h3>method stream_open <span class="smalllinenumber">[line 82]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool stream_open( +string +$path, string +$mode, int +$options, +&$opened_path, string +&$openedPath)</code> + </td></tr></table> + </td></tr></table><br /> + + Implements support for fopen().<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true on success</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$path</b>&nbsp;&nbsp;</td> + <td>resource name including scheme, e.g.</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$mode</b>&nbsp;&nbsp;</td> + <td>only &quot;r&quot; is supported</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$options</b>&nbsp;&nbsp;</td> + <td>mask of STREAM_REPORT_ERRORS and STREAM_USE_PATH</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>&$openedPath</b>&nbsp;&nbsp;</td> + <td>absolute path of the opened stream (out parameter)</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$opened_path</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstream_read"></a> + <h3>method stream_read <span class="smalllinenumber">[line 118]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string stream_read( +int +$count)</code> + </td></tr></table> + </td></tr></table><br /> + + Implements support for fread(), fgets() etc.<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$count</b>&nbsp;&nbsp;</td> + <td>maximum number of bytes to read</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstream_seek"></a> + <h3>method stream_seek <span class="smalllinenumber">[line 150]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool stream_seek( +int +$offset, int +$whence)</code> + </td></tr></table> + </td></tr></table><br /> + + Seek stream<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$offset</b>&nbsp;&nbsp;</td> + <td>byte offset</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$whence</b>&nbsp;&nbsp;</td> + <td>SEEK_SET, SEEK_CUR or SEEK_END</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstream_stat"></a> + <h3>method stream_stat <span class="smalllinenumber">[line 108]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean stream_stat( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implements support for fstat().<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstream_tell"></a> + <h3>method stream_tell <span class="smalllinenumber">[line 130]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int stream_tell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Returns the position of the file pointer, i.e. its offset into the file stream. Implements support for ftell().<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html new file mode 100644 index 0000000..a97f748 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html @@ -0,0 +1,145 @@ +<html> +<head> +<title>Docs for page CodePage.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: CodePage.php</h1> +Source Location: /PHPExcel/Shared/CodePage.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a></dt> + <dd>PHPExcel_Shared_CodePage</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:29 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Date.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Date.php.html new file mode 100644 index 0000000..7edd2b1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Date.php.html @@ -0,0 +1,145 @@ +<html> +<head> +<title>Docs for page Date.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Date.php</h1> +Source Location: /PHPExcel/Shared/Date.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a></dt> + <dd>PHPExcel_Shared_Date</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:41 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html new file mode 100644 index 0000000..1d0cf10 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html @@ -0,0 +1,145 @@ +<html> +<head> +<title>Docs for page Drawing.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Drawing.php</h1> +Source Location: /PHPExcel/Shared/Drawing.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a></dt> + <dd>PHPExcel_Shared_Drawing</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:49 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html new file mode 100644 index 0000000..a3d0e90 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html @@ -0,0 +1,145 @@ +<html> +<head> +<title>Docs for page Excel5.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Excel5.php</h1> +Source Location: /PHPExcel/Shared/Excel5.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a></dt> + <dd>PHPExcel_Shared_Excel5</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---File.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---File.php.html new file mode 100644 index 0000000..85dbfda --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---File.php.html @@ -0,0 +1,145 @@ +<html> +<head> +<title>Docs for page File.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: File.php</h1> +Source Location: /PHPExcel/Shared/File.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a></dt> + <dd>PHPExcel_Shared_File</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:15 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Font.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Font.php.html new file mode 100644 index 0000000..4087958 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---Font.php.html @@ -0,0 +1,145 @@ +<html> +<head> +<title>Docs for page Font.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Font.php</h1> +Source Location: /PHPExcel/Shared/Font.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a></dt> + <dd>PHPExcel_Shared_Font</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html new file mode 100644 index 0000000..5d7c1ea --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html @@ -0,0 +1,173 @@ +<html> +<head> +<title>Docs for page OLERead.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: OLERead.php</h1> +Source Location: /PHPExcel/Shared/OLERead.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a></dt> + <dd></dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> + <hr /> + <a name="defineIDENTIFIER_OLE"></a> + <h3>IDENTIFIER_OLE <span class="smalllinenumber">[line 28]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>IDENTIFIER_OLE = pack('CCCCCCCC',0xd0,0xcf,0x11,0xe0,0xa1,0xb1,0x1a,0xe1)</code> + </td></tr></table> + </td></tr></table> + + PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:45 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html new file mode 100644 index 0000000..395b92d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html @@ -0,0 +1,145 @@ +<html> +<head> +<title>Docs for page PasswordHasher.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: PasswordHasher.php</h1> +Source Location: /PHPExcel/Shared/PasswordHasher.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a></dt> + <dd>PHPExcel_Shared_PasswordHasher</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:53 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---String.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---String.php.html new file mode 100644 index 0000000..a7be0c2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---String.php.html @@ -0,0 +1,145 @@ +<html> +<head> +<title>Docs for page String.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: String.php</h1> +Source Location: /PHPExcel/Shared/String.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a></dt> + <dd>PHPExcel_Shared_String</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html new file mode 100644 index 0000000..6cf825f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html @@ -0,0 +1,186 @@ +<html> +<head> +<title>Docs for page XMLWriter.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: XMLWriter.php</h1> +Source Location: /PHPExcel/Shared/XMLWriter.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a></dt> + <dd>PHPExcel_Shared_XMLWriter</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> + <hr /> + <a name="defineDATE_W3C"></a> + <h3>DATE_W3C <span class="smalllinenumber">[line 29]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>DATE_W3C = 'Y-m-d\TH:i:sP'</code> + </td></tr></table> + </td></tr></table> + + PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> + <hr /> + <a name="defineDEBUGMODE_ENABLED"></a> + <h3>DEBUGMODE_ENABLED <span class="smalllinenumber">[line 33]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>DEBUGMODE_ENABLED = false</code> + </td></tr></table> + </td></tr></table> + + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html new file mode 100644 index 0000000..9aaacb8 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html @@ -0,0 +1,145 @@ +<html> +<head> +<title>Docs for page ZipStreamWrapper.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="../elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="../PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: ZipStreamWrapper.php</h1> +Source Location: /PHPExcel/Shared/ZipStreamWrapper.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a></dt> + <dd>PHPExcel_Shared_ZipStreamWrapper</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_notes/dwsync.xml new file mode 100644 index 0000000..6f431f5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared/_notes/dwsync.xml @@ -0,0 +1,157 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Shared_CodePage.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Date.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Drawing.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Excel5.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_File.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Font.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLERead.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_PasswordHasher.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_String.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_XMLWriter.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_ZipStreamWrapper.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---CodePage.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Date.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Drawing.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Excel5.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---File.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Font.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLERead.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---PasswordHasher.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---String.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---XMLWriter.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---ZipStreamWrapper.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Excel5.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Shared_Drawing.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Shared_XMLWriter.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Shared_PasswordHasher.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Drawing.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---PasswordHasher.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---XMLWriter.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Shared_Font.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Shared_String.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Shared_CodePage.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---String.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Font.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLERead.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---CodePage.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Shared_Date.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Shared_File.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Shared_ZipStreamWrapper.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLERead.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Date.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---ZipStreamWrapper.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---File.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Shared_Excel5.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Excel5.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_Drawing.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_XMLWriter.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_PasswordHasher.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Drawing.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---PasswordHasher.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---XMLWriter.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_Font.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_String.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_CodePage.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---String.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Font.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLERead.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---CodePage.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_Date.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_File.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_ZipStreamWrapper.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLERead.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Date.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---ZipStreamWrapper.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---File.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_Excel5.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Excel5.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560355711941" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_XMLWriter.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560356827279" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_PasswordHasher.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560357269390" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Drawing.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560356381040" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Drawing.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560357723768" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---PasswordHasher.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560358167203" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---XMLWriter.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560358618427" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Font.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560359180434" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_String.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560359759035" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_CodePage.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560360238828" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---String.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560360701197" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Font.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560361155602" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLERead.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560361604573" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---CodePage.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560362047951" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Date.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560362532602" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_File.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560362977059" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_ZipStreamWrapper.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560363427873" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLERead.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560363922013" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Date.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560364380511" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---ZipStreamWrapper.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560364828486" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---File.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560365275683" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Excel5.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560365718772" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Excel5.php.html" server="62.244.88.21/amashow/" local="131414752701374417" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Drawing.html" server="62.244.88.21/amashow/" local="131414752701840918" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_XMLWriter.html" server="62.244.88.21/amashow/" local="131414752702296428" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_PasswordHasher.html" server="62.244.88.21/amashow/" local="131414752702698568" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Drawing.php.html" server="62.244.88.21/amashow/" local="131414752703159256" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---PasswordHasher.php.html" server="62.244.88.21/amashow/" local="131414752703733329" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---XMLWriter.php.html" server="62.244.88.21/amashow/" local="131414752704202055" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_String.html" server="62.244.88.21/amashow/" local="131414752704790475" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Font.html" server="62.244.88.21/amashow/" local="131414752704516517" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_CodePage.html" server="62.244.88.21/amashow/" local="131414752705212391" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Font.php.html" server="62.244.88.21/amashow/" local="131414752705920834" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---String.php.html" server="62.244.88.21/amashow/" local="131414752705422725" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_OLERead.html" server="62.244.88.21/amashow/" local="131414752706439527" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---CodePage.php.html" server="62.244.88.21/amashow/" local="131414752706882221" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Date.html" server="62.244.88.21/amashow/" local="131414752707324463" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_File.html" server="62.244.88.21/amashow/" local="131414752707809499" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_ZipStreamWrapper.html" server="62.244.88.21/amashow/" local="131414752708041261" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---OLERead.php.html" server="62.244.88.21/amashow/" local="131414752708268043" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Date.php.html" server="62.244.88.21/amashow/" local="131414752708496999" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---ZipStreamWrapper.php.html" server="62.244.88.21/amashow/" local="131414752708710602" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---File.php.html" server="62.244.88.21/amashow/" local="131414752708924247" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Excel5.html" server="62.244.88.21/amashow/" local="131414752709191727" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Date.php.html" server="62.244.88.21/deciday/" local="131919461586472794" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_PasswordHasher.html" server="62.244.88.21/deciday/" local="131919461592414943" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Drawing.html" server="62.244.88.21/deciday/" local="131919461587757476" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_CodePage.html" server="62.244.88.21/deciday/" local="131919461585092187" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Date.html" server="62.244.88.21/deciday/" local="131919461586933292" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Font.html" server="62.244.88.21/deciday/" local="131919461591393077" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_ZipStreamWrapper.html" server="62.244.88.21/deciday/" local="131919461595411164" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Font.php.html" server="62.244.88.21/deciday/" local="131919461590616713" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLERead.php.html" server="62.244.88.21/deciday/" local="131919461592232178" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_XMLWriter.html" server="62.244.88.21/deciday/" local="131919461594221210" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---XMLWriter.php.html" server="62.244.88.21/deciday/" local="131919461594897350" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_File.html" server="62.244.88.21/deciday/" local="131919461589068472" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Excel5.php.html" server="62.244.88.21/deciday/" local="131919461589325952" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Excel5.html" server="62.244.88.21/deciday/" local="131919461588374879" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_String.html" server="62.244.88.21/deciday/" local="131919461594421411" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---CodePage.php.html" server="62.244.88.21/deciday/" local="131919461586059527" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Drawing.php.html" server="62.244.88.21/deciday/" local="131919461587940875" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---PasswordHasher.php.html" server="62.244.88.21/deciday/" local="131919461592744717" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---File.php.html" server="62.244.88.21/deciday/" local="131919461589597026" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---ZipStreamWrapper.php.html" server="62.244.88.21/deciday/" local="131919461595604999" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---String.php.html" server="62.244.88.21/deciday/" local="131919461593716541" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLERead.html" server="62.244.88.21/deciday/" local="131919461591058229" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_CodePage.html" server="62.244.88.21/deciday_18/" local="131414752705212391" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_Date.html" server="62.244.88.21/deciday_18/" local="131414752707324463" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_Drawing.html" server="62.244.88.21/deciday_18/" local="131414752701840918" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_File.html" server="62.244.88.21/deciday_18/" local="131414752707809499" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_Excel5.html" server="62.244.88.21/deciday_18/" local="131414752709191727" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_Font.html" server="62.244.88.21/deciday_18/" local="131414752704516517" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_PasswordHasher.html" server="62.244.88.21/deciday_18/" local="131414752702698568" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_OLERead.html" server="62.244.88.21/deciday_18/" local="131414752706439527" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_String.html" server="62.244.88.21/deciday_18/" local="131414752704790475" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_XMLWriter.html" server="62.244.88.21/deciday_18/" local="131414752702296428" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_ZipStreamWrapper.html" server="62.244.88.21/deciday_18/" local="131414752708041261" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---CodePage.php.html" server="62.244.88.21/deciday_18/" local="131414752706882221" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Date.php.html" server="62.244.88.21/deciday_18/" local="131414752708496999" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Drawing.php.html" server="62.244.88.21/deciday_18/" local="131414752703159256" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Excel5.php.html" server="62.244.88.21/deciday_18/" local="131414752701374417" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---File.php.html" server="62.244.88.21/deciday_18/" local="131414752708924247" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Font.php.html" server="62.244.88.21/deciday_18/" local="131414752705920834" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---OLERead.php.html" server="62.244.88.21/deciday_18/" local="131414752708268043" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---PasswordHasher.php.html" server="62.244.88.21/deciday_18/" local="131414752703733329" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---String.php.html" server="62.244.88.21/deciday_18/" local="131414752705422725" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---XMLWriter.php.html" server="62.244.88.21/deciday_18/" local="131414752704202055" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---ZipStreamWrapper.php.html" server="62.244.88.21/deciday_18/" local="131414752708710602" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html new file mode 100644 index 0000000..2b1f81c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html @@ -0,0 +1,302 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Escher</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Escher</h1> +Source Location: /PHPExcel/Shared/Escher.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Escher</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodgetDgContainer">getDgContainer</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodgetDggContainer">getDggContainer</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodsetDgContainer">setDgContainer</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodsetDggContainer">setDggContainer</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Shared_Escher<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetDgContainer"></a> + <h3>method getDgContainer <span class="smalllinenumber">[line 76]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a> getDgContainer( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Drawing Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDggContainer"></a> + <h3>method getDggContainer <span class="smalllinenumber">[line 56]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a> getDggContainer( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Drawing Group Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDgContainer"></a> + <h3>method setDgContainer <span class="smalllinenumber">[line 86]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setDgContainer( +<a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a> +$dgContainer)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Drawing Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a>&nbsp;&nbsp;</td> + <td><b>$dgContainer</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDggContainer"></a> + <h3>method setDggContainer <span class="smalllinenumber">[line 66]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setDggContainer( +<a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a> +$dggContainer)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Drawing Group Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a>&nbsp;&nbsp;</td> + <td><b>$dggContainer</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html new file mode 100644 index 0000000..c79582e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html @@ -0,0 +1,365 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Escher_DgContainer</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Escher_DgContainer</h1> +Source Location: /PHPExcel/Shared/Escher/DgContainer.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Escher_DgContainer</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodgetDgId">getDgId</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodgetLastSpId">getLastSpId</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodgetSpgrContainer">getSpgrContainer</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodsetDgId">setDgId</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodsetLastSpId">setLastSpId</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodsetSpgrContainer">setSpgrContainer</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Shared_Escher_DgContainer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetDgId"></a> + <h3>method getDgId <span class="smalllinenumber">[line 53]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getDgId( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLastSpId"></a> + <h3>method getLastSpId <span class="smalllinenumber">[line 63]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getLastSpId( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSpgrContainer"></a> + <h3>method getSpgrContainer <span class="smalllinenumber">[line 73]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getSpgrContainer( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDgId"></a> + <h3>method setDgId <span class="smalllinenumber">[line 58]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setDgId( + +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLastSpId"></a> + <h3>method setLastSpId <span class="smalllinenumber">[line 68]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setLastSpId( + +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSpgrContainer"></a> + <h3>method setSpgrContainer <span class="smalllinenumber">[line 78]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setSpgrContainer( + +$spgrContainer)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$spgrContainer</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html new file mode 100644 index 0000000..2f6cb5c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html @@ -0,0 +1,328 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Escher_DgContainer_SpgrContainer</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Escher_DgContainer_SpgrContainer</h1> +Source Location: /PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodaddChild">addChild</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodgetAllSpContainers">getAllSpContainers</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodgetChildren">getChildren</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodgetParent">getParent</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodsetParent">setParent</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Shared_Escher_DgContainer_SpgrContainer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodaddChild"></a> + <h3>method addChild <span class="smalllinenumber">[line 76]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addChild( +mixed +$child)</code> + </td></tr></table> + </td></tr></table><br /> + + Add a child. This will be either spgrContainer or spContainer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$child</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAllSpContainers"></a> + <h3>method getAllSpContainers <span class="smalllinenumber">[line 95]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer[] getAllSpContainers( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Recursively get all spContainers within this spgrContainer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetChildren"></a> + <h3>method getChildren <span class="smalllinenumber">[line 85]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getChildren( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get collection of Shape Containers<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetParent"></a> + <h3>method getParent <span class="smalllinenumber">[line 66]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a>|null getParent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the parent Shape Group Container if any<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetParent"></a> + <h3>method setParent <span class="smalllinenumber">[line 56]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setParent( +<a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a> +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Set parent Shape Group Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:46 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html new file mode 100644 index 0000000..2e20918 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html @@ -0,0 +1,1010 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</h1> +Source Location: /PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetEndCoordinates">getEndCoordinates</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetEndOffsetX">getEndOffsetX</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetEndOffsetY">getEndOffsetY</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetNestingLevel">getNestingLevel</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetOPT">getOPT</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetOPTCollection">getOPTCollection</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetParent">getParent</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpFlag">getSpFlag</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpgr">getSpgr</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpId">getSpId</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpType">getSpType</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetStartCoordinates">getStartCoordinates</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetStartOffsetX">getStartOffsetX</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetStartOffsetY">getStartOffsetY</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetEndCoordinates">setEndCoordinates</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetEndOffsetX">setEndOffsetX</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetEndOffsetY">setEndOffsetY</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetOPT">setOPT</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetParent">setParent</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpFlag">setSpFlag</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpgr">setSpgr</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpId">setSpId</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpType">setSpType</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetStartCoordinates">setStartCoordinates</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetStartOffsetX">setStartOffsetX</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetStartOffsetY">setStartOffsetY</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetEndCoordinates"></a> + <h3>method getEndCoordinates <span class="smalllinenumber">[line 331]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getEndCoordinates( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell coordinates of bottom-right corner of shape<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEndOffsetX"></a> + <h3>method getEndOffsetX <span class="smalllinenumber">[line 351]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getEndOffsetX( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get offset in x-direction of bottom-right corner of shape measured in 1/1024 of column width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEndOffsetY"></a> + <h3>method getEndOffsetY <span class="smalllinenumber">[line 371]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getEndOffsetY( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get offset in y-direction of bottom-right corner of shape measured in 1/256 of row height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetNestingLevel"></a> + <h3>method getNestingLevel <span class="smalllinenumber">[line 383]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getNestingLevel( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the nesting level of this spContainer. This is the number of spgrContainers between this spContainer and the dgContainer. A value of 1 = immediately within first spgrContainer Higher nesting level occurs if and only if spContainer is part of a shape group<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Nesting level</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOPT"></a> + <h3>method getOPT <span class="smalllinenumber">[line 238]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getOPT( +int +$property)</code> + </td></tr></table> + </td></tr></table><br /> + + Get an option for the Shape Group Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$property</b>&nbsp;&nbsp;</td> + <td>The number specifies the option</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOPTCollection"></a> + <h3>method getOPTCollection <span class="smalllinenumber">[line 251]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getOPTCollection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the collection of options<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetParent"></a> + <h3>method getParent <span class="smalllinenumber">[line 136]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a> getParent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the parent Shape Group Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSpFlag"></a> + <h3>method getSpFlag <span class="smalllinenumber">[line 196]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getSpFlag( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shape flag<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSpgr"></a> + <h3>method getSpgr <span class="smalllinenumber">[line 156]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getSpgr( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get whether this is a group shape<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSpId"></a> + <h3>method getSpId <span class="smalllinenumber">[line 216]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getSpId( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shape index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSpType"></a> + <h3>method getSpType <span class="smalllinenumber">[line 176]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getSpType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shape type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStartCoordinates"></a> + <h3>method getStartCoordinates <span class="smalllinenumber">[line 271]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getStartCoordinates( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell coordinates of upper-left corner of shape<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStartOffsetX"></a> + <h3>method getStartOffsetX <span class="smalllinenumber">[line 291]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getStartOffsetX( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get offset in x-direction of upper-left corner of shape measured in 1/1024 of column width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStartOffsetY"></a> + <h3>method getStartOffsetY <span class="smalllinenumber">[line 311]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getStartOffsetY( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get offset in y-direction of upper-left corner of shape measured in 1/256 of row height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetEndCoordinates"></a> + <h3>method setEndCoordinates <span class="smalllinenumber">[line 321]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setEndCoordinates( +[string +$value = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set cell coordinates of bottom-right corner of shape<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetEndOffsetX"></a> + <h3>method setEndOffsetX <span class="smalllinenumber">[line 341]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setEndOffsetX( +[ +$endOffsetX = 0], int +$startOffsetX)</code> + </td></tr></table> + </td></tr></table><br /> + + Set offset in x-direction of bottom-right corner of shape measured in 1/1024 of column width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$startOffsetX</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$endOffsetX</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetEndOffsetY"></a> + <h3>method setEndOffsetY <span class="smalllinenumber">[line 361]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setEndOffsetY( +[int +$endOffsetY = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set offset in y-direction of bottom-right corner of shape measured in 1/256 of row height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$endOffsetY</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOPT"></a> + <h3>method setOPT <span class="smalllinenumber">[line 227]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setOPT( +int +$property, mixed +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set an option for the Shape Group Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$property</b>&nbsp;&nbsp;</td> + <td>The number specifies the option</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetParent"></a> + <h3>method setParent <span class="smalllinenumber">[line 126]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setParent( +<a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a> +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Set parent Shape Group Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSpFlag"></a> + <h3>method setSpFlag <span class="smalllinenumber">[line 186]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setSpFlag( +int +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the shape flag<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSpgr"></a> + <h3>method setSpgr <span class="smalllinenumber">[line 146]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setSpgr( +[boolean +$value = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set whether this is a group shape<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSpId"></a> + <h3>method setSpId <span class="smalllinenumber">[line 206]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setSpId( +int +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the shape index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSpType"></a> + <h3>method setSpType <span class="smalllinenumber">[line 166]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setSpType( +int +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the shape type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetStartCoordinates"></a> + <h3>method setStartCoordinates <span class="smalllinenumber">[line 261]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setStartCoordinates( +[string +$value = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set cell coordinates of upper-left corner of shape<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetStartOffsetX"></a> + <h3>method setStartOffsetX <span class="smalllinenumber">[line 281]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setStartOffsetX( +[int +$startOffsetX = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set offset in x-direction of upper-left corner of shape measured in 1/1024 of column width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$startOffsetX</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetStartOffsetY"></a> + <h3>method setStartOffsetY <span class="smalllinenumber">[line 301]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setStartOffsetY( +[int +$startOffsetY = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set offset in y-direction of upper-left corner of shape measured in 1/256 of row height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$startOffsetY</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:45 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html new file mode 100644 index 0000000..65d4249 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html @@ -0,0 +1,571 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Escher_DggContainer</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Escher_DggContainer</h1> +Source Location: /PHPExcel/Shared/Escher/DggContainer.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Escher_DggContainer</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetBstoreContainer">getBstoreContainer</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetCDgSaved">getCDgSaved</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetCSpSaved">getCSpSaved</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetIDCLs">getIDCLs</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetOPT">getOPT</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetSpIdMax">getSpIdMax</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetBstoreContainer">setBstoreContainer</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetCDgSaved">setCDgSaved</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetCSpSaved">setCSpSaved</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetIDCLs">setIDCLs</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetOPT">setOPT</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetSpIdMax">setSpIdMax</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Shared_Escher_DggContainer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetBstoreContainer"></a> + <h3>method getBstoreContainer <span class="smalllinenumber">[line 144]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a> getBstoreContainer( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get BLIP Store Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCDgSaved"></a> + <h3>method getCDgSaved <span class="smalllinenumber">[line 104]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getCDgSaved( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get total number of drawings saved<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCSpSaved"></a> + <h3>method getCSpSaved <span class="smalllinenumber">[line 124]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getCSpSaved( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get total number of shapes saved (including group shapes)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIDCLs"></a> + <h3>method getIDCLs <span class="smalllinenumber">[line 189]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getIDCLs( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get identifier clusters<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOPT"></a> + <h3>method getOPT <span class="smalllinenumber">[line 176]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed getOPT( +int +$property)</code> + </td></tr></table> + </td></tr></table><br /> + + Get an option for the drawing group<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$property</b>&nbsp;&nbsp;</td> + <td>The number specifies the option</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSpIdMax"></a> + <h3>method getSpIdMax <span class="smalllinenumber">[line 84]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getSpIdMax( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get maximum shape index of all shapes in all drawings (plus one)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBstoreContainer"></a> + <h3>method setBstoreContainer <span class="smalllinenumber">[line 154]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setBstoreContainer( +<a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a> +$bstoreContainer)</code> + </td></tr></table> + </td></tr></table><br /> + + Set BLIP Store Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a>&nbsp;&nbsp;</td> + <td><b>$bstoreContainer</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCDgSaved"></a> + <h3>method setCDgSaved <span class="smalllinenumber">[line 114]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setCDgSaved( +int +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set total number of drawings saved<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCSpSaved"></a> + <h3>method setCSpSaved <span class="smalllinenumber">[line 134]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setCSpSaved( +int +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set total number of shapes saved (including group shapes)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetIDCLs"></a> + <h3>method setIDCLs <span class="smalllinenumber">[line 199]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setIDCLs( +array +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set identifier clusters. array(&lt;drawingId&gt; =&gt; &lt;max shape id&gt;, ...)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOPT"></a> + <h3>method setOPT <span class="smalllinenumber">[line 165]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setOPT( +int +$property, mixed +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set an option for the drawing group<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$property</b>&nbsp;&nbsp;</td> + <td>The number specifies the option</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSpIdMax"></a> + <h3>method setSpIdMax <span class="smalllinenumber">[line 94]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setSpIdMax( +int +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set maximum shape index of all shapes in all drawings (plus one)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html new file mode 100644 index 0000000..2e3ae93 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html @@ -0,0 +1,239 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Escher_DggContainer_BstoreContainer</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Escher_DggContainer_BstoreContainer</h1> +Source Location: /PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html#methodaddBSE">addBSE</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html#methodgetBSECollection">getBSECollection</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Shared_Escher_DggContainer_BstoreContainer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodaddBSE"></a> + <h3>method addBSE <span class="smalllinenumber">[line 49]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addBSE( +<a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a> +$BSE)</code> + </td></tr></table> + </td></tr></table><br /> + + Add a BLIP Store Entry<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a>&nbsp;&nbsp;</td> + <td><b>$BSE</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBSECollection"></a> + <h3>method getBSECollection <span class="smalllinenumber">[line 60]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE[] getBSECollection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the collection of BLIP Store Entries<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html new file mode 100644 index 0000000..4dc8236 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html @@ -0,0 +1,429 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</h1> +Source Location: /PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_CMYKJPEG">BLIPTYPE_CMYKJPEG</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_DIB">BLIPTYPE_DIB</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_EMF">BLIPTYPE_EMF</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_ERROR">BLIPTYPE_ERROR</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_JPEG">BLIPTYPE_JPEG</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_PICT">BLIPTYPE_PICT</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_PNG">BLIPTYPE_PNG</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_TIFF">BLIPTYPE_TIFF</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_UNKNOWN">BLIPTYPE_UNKNOWN</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_WMF">BLIPTYPE_WMF</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodgetBlip">getBlip</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodgetBlipType">getBlipType</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodsetBlip">setBlip</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodsetBlipType">setBlipType</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodsetParent">setParent</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetBlip"></a> + <h3>method getBlip <span class="smalllinenumber">[line 84]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a> getBlip( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the BLIP<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBlipType"></a> + <h3>method getBlipType <span class="smalllinenumber">[line 105]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getBlipType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the BLIP type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBlip"></a> + <h3>method setBlip <span class="smalllinenumber">[line 94]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setBlip( +<a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a> +$blip)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the BLIP<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a>&nbsp;&nbsp;</td> + <td><b>$blip</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBlipType"></a> + <h3>method setBlipType <span class="smalllinenumber">[line 115]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setBlipType( +int +$blipType)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the BLIP type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$blipType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetParent"></a> + <h3>method setParent <span class="smalllinenumber">[line 74]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setParent( +<a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a> +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Set parent BLIP Store Entry Container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constBLIPTYPE_CMYKJPEG"></a> + <p></p> + <h4>BLIPTYPE_CMYKJPEG = <span class="value">&nbsp;0x12</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBLIPTYPE_DIB"></a> + <p></p> + <h4>BLIPTYPE_DIB = <span class="value">&nbsp;0x07</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBLIPTYPE_EMF"></a> + <p></p> + <h4>BLIPTYPE_EMF = <span class="value">&nbsp;0x02</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBLIPTYPE_ERROR"></a> + <p></p> + <h4>BLIPTYPE_ERROR = <span class="value">&nbsp;0x00</span></h4> + <p>[line 37]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBLIPTYPE_JPEG"></a> + <p></p> + <h4>BLIPTYPE_JPEG = <span class="value">&nbsp;0x05</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBLIPTYPE_PICT"></a> + <p></p> + <h4>BLIPTYPE_PICT = <span class="value">&nbsp;0x04</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBLIPTYPE_PNG"></a> + <p></p> + <h4>BLIPTYPE_PNG = <span class="value">&nbsp;0x06</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBLIPTYPE_TIFF"></a> + <p></p> + <h4>BLIPTYPE_TIFF = <span class="value">&nbsp;0x11</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBLIPTYPE_UNKNOWN"></a> + <p></p> + <h4>BLIPTYPE_UNKNOWN = <span class="value">&nbsp;0x01</span></h4> + <p>[line 38]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBLIPTYPE_WMF"></a> + <p></p> + <h4>BLIPTYPE_WMF = <span class="value">&nbsp;0x03</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html new file mode 100644 index 0000000..20a794e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html @@ -0,0 +1,302 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</h1> +Source Location: /PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodgetData">getData</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodgetParent">getParent</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodsetData">setData</a></li> + <li><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodsetParent">setParent</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 35]<br /> +PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetData"></a> + <h3>method getData <span class="smalllinenumber">[line 56]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getData( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the raw image data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetParent"></a> + <h3>method getParent <span class="smalllinenumber">[line 86]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a> getParent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get parent BSE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetData"></a> + <h3>method setData <span class="smalllinenumber">[line 66]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setData( +string +$data)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the raw image data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$data</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetParent"></a> + <h3>method setParent <span class="smalllinenumber">[line 76]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setParent( +<a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a> +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Set parent BSE<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:16 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html new file mode 100644 index 0000000..8d63266 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page SpContainer.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: SpContainer.php</h1> +Source Location: /PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a></dt> + <dd>PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:45 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html new file mode 100644 index 0000000..d0c0b0c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page SpgrContainer.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: SpgrContainer.php</h1> +Source Location: /PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a></dt> + <dd>PHPExcel_Shared_Escher_DgContainer_SpgrContainer</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:46 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html new file mode 100644 index 0000000..047b5a0 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page DgContainer.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DgContainer.php</h1> +Source Location: /PHPExcel/Shared/Escher/DgContainer.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a></dt> + <dd>PHPExcel_Shared_Escher_DgContainer</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html new file mode 100644 index 0000000..f57532e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page Blip.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Blip.php</h1> +Source Location: /PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a></dt> + <dd>PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:16 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html new file mode 100644 index 0000000..eab276d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page BSE.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: BSE.php</h1> +Source Location: /PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a></dt> + <dd>PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html new file mode 100644 index 0000000..3258bd9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page BstoreContainer.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: BstoreContainer.php</h1> +Source Location: /PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a></dt> + <dd>PHPExcel_Shared_Escher_DggContainer_BstoreContainer</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html new file mode 100644 index 0000000..dd5cb7d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page DggContainer.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DggContainer.php</h1> +Source Location: /PHPExcel/Shared/Escher/DggContainer.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a></dt> + <dd>PHPExcel_Shared_Escher_DggContainer</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html new file mode 100644 index 0000000..1888fc4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page Escher.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="../PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Escher.php</h1> +Source Location: /PHPExcel/Shared/Escher.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a></dt> + <dd>PHPExcel_Shared_Escher</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_notes/dwsync.xml new file mode 100644 index 0000000..e3e923d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Escher/_notes/dwsync.xml @@ -0,0 +1,115 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Shared_Escher.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DgContainer.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DgContainer.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DgContainer.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560387542849" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DgContainer.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560387934440" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560388327802" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560388817213" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DggContainer.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560389333851" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560389749213" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560390186457" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560390611303" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560391028867" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560391416689" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560391785040" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560392142997" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560392518322" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560392911545" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560393336156" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560393772702" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html" server="62.244.88.21/amashow/" local="131414752726713704" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DgContainer.html" server="62.244.88.21/amashow/" local="131414752727114672" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html" server="62.244.88.21/amashow/" local="131414752727579772" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html" server="62.244.88.21/amashow/" local="131414752728067414" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DggContainer.html" server="62.244.88.21/amashow/" local="131414752728501048" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DgContainer.php.html" server="62.244.88.21/amashow/" local="131414752728879932" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html" server="62.244.88.21/amashow/" local="131414752729091749" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html" server="62.244.88.21/amashow/" local="131414752729685075" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher.html" server="62.244.88.21/amashow/" local="131414752730386431" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html" server="62.244.88.21/amashow/" local="131414752730154298" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html" server="62.244.88.21/amashow/" local="131414752730597497" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DggContainer.php.html" server="62.244.88.21/amashow/" local="131414752730816861" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html" server="62.244.88.21/amashow/" local="131414752731053147" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html" server="62.244.88.21/amashow/" local="131414752731864855" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html" server="62.244.88.21/amashow/" local="131414752732291857" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher.php.html" server="62.244.88.21/amashow/" local="131414752731401245" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html" server="62.244.88.21/deciday/" local="131919461600884636" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html" server="62.244.88.21/deciday/" local="131919461596908703" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer.php.html" server="62.244.88.21/deciday/" local="131919461596432215" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher.html" server="62.244.88.21/deciday/" local="131919461602882790" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DgContainer.html" server="62.244.88.21/deciday/" local="131919461596619941" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html" server="62.244.88.21/deciday/" local="131919461599546922" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher.php.html" server="62.244.88.21/deciday/" local="131919461603117069" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html" server="62.244.88.21/deciday/" local="131919461599364570" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html" server="62.244.88.21/deciday/" local="131919461600227090" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer.php.html" server="62.244.88.21/deciday/" local="131919461602114522" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html" server="62.244.88.21/deciday/" local="131919461601608731" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html" server="62.244.88.21/deciday/" local="131919461601081250" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html" server="62.244.88.21/deciday/" local="131919461598311325" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DggContainer.html" server="62.244.88.21/deciday/" local="131919461602305437" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html" server="62.244.88.21/deciday/" local="131919461598685530" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html" server="62.244.88.21/deciday/" local="131919461598001121" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_Escher.html" server="62.244.88.21/deciday_18/" local="131414752730386431" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DgContainer.html" server="62.244.88.21/deciday_18/" local="131414752727114672" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html" server="62.244.88.21/deciday_18/" local="131414752726713704" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DggContainer.html" server="62.244.88.21/deciday_18/" local="131414752728501048" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html" server="62.244.88.21/deciday_18/" local="131414752728067414" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html" server="62.244.88.21/deciday_18/" local="131414752731864855" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html" server="62.244.88.21/deciday_18/" local="131414752731053147" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html" server="62.244.88.21/deciday_18/" local="131414752730154298" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html" server="62.244.88.21/deciday_18/" local="131414752727579772" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html" server="62.244.88.21/deciday_18/" local="131414752730597497" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DgContainer.php.html" server="62.244.88.21/deciday_18/" local="131414752728879932" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html" server="62.244.88.21/deciday_18/" local="131414752732291857" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html" server="62.244.88.21/deciday_18/" local="131414752729685075" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html" server="62.244.88.21/deciday_18/" local="131414752729091749" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher---DggContainer.php.html" server="62.244.88.21/deciday_18/" local="131414752730816861" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---Escher.php.html" server="62.244.88.21/deciday_18/" local="131414752731401245" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html new file mode 100644 index 0000000..3a56371 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html @@ -0,0 +1,949 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_OLE</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_OLE</h1> +Source Location: /PHPExcel/Shared/OLE.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">OLE package base class.</div><br /><br /> +<h4>Author(s):</h4> +<ul> + <li>Xavier Noguer &lt;<a href="mailto:xnoguer@php.net">xnoguer@php.net</a>&gt;</li> + <li>Christian Schmidt &lt;<a href="mailto:schmidt@php.net">schmidt@php.net</a>&gt;</li> + </ul> + + + + + + + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$bbat">$bbat</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$bigBlockSize">$bigBlockSize</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$root">$root</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$sbat">$sbat</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$smallBlockSize">$smallBlockSize</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$_file_handle">$_file_handle</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$_list">$_list</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_DATA_SIZE_SMALL">OLE_DATA_SIZE_SMALL</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_LONG_INT_SIZE">OLE_LONG_INT_SIZE</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_SIZE">OLE_PPS_SIZE</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_TYPE_DIR">OLE_PPS_TYPE_DIR</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_TYPE_FILE">OLE_PPS_TYPE_FILE</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_TYPE_ROOT">OLE_PPS_TYPE_ROOT</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodAsc2Ucs">Asc2Ucs</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodgetData">getData</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodgetDataLength">getDataLength</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodgetStream">getStream</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodisFile">isFile</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodisRoot">isRoot</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodLocalDate2OLE">LocalDate2OLE</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodOLE2LocalDate">OLE2LocalDate</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodppsTotal">ppsTotal</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodread">read</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#method_getBlockOffset">_getBlockOffset</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#method_ppsTreeComplete">_ppsTreeComplete</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#method_readPpsWks">_readPpsWks</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 38]<br /> +OLE package base class.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Xavier Noguer &lt;<a href="mailto:xnoguer@php.net">xnoguer@php.net</a>&gt;</td> + </tr> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Christian Schmidt &lt;<a href="mailto:schmidt@php.net">schmidt@php.net</a>&gt;</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$bbat"></a> + <p></p> + <h4>$bbat = <span class="value"></span></h4> + <p>[line 69]</p> + Big Block Allocation Table<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>var:</b>&nbsp;&nbsp;</td><td>(blockId =&gt; nextBlockId)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$bigBlockSize"></a> + <p></p> + <h4>$bigBlockSize = <span class="value"></span></h4> + <p>[line 81]</p> + Size of big blocks. This is usually 512.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>var:</b>&nbsp;&nbsp;</td><td>number of octets per block.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$root"></a> + <p></p> + <h4>$root = <span class="value"></span></h4> + <p>[line 63]</p> + Root directory of OLE container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>OLE_PPS_Root</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$sbat"></a> + <p></p> + <h4>$sbat = <span class="value"></span></h4> + <p>[line 75]</p> + Short Block Allocation Table<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>var:</b>&nbsp;&nbsp;</td><td>(blockId =&gt; nextBlockId)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$smallBlockSize"></a> + <p></p> + <h4>$smallBlockSize = <span class="value"></span></h4> + <p>[line 87]</p> + Size of small blocks. This is usually 64.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>var:</b>&nbsp;&nbsp;</td><td>number of octets per block</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_file_handle"></a> + <p></p> + <h4>$_file_handle = <span class="value"></span></h4> + <p>[line 51]</p> + The file handle for reading an OLE container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>resource</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_list"></a> + <p></p> + <h4>$_list = <span class="value">array()</span></h4> + <p>[line 57]</p> + Array of PPS's found on the OLE container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodAsc2Ucs"></a> + <h3>static method Asc2Ucs <span class="smalllinenumber">[line 446]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string Asc2Ucs( +string +$ascii)</code> + </td></tr></table> + </td></tr></table><br /> + + Utility function to transform ASCII text to Unicode<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The string in Unicode</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$ascii</b>&nbsp;&nbsp;</td> + <td>The ASCII string to transform</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodLocalDate2OLE"></a> + <h3>static method LocalDate2OLE <span class="smalllinenumber">[line 464]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string LocalDate2OLE( +[integer +$date = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Utility function Returns a string for the OLE container with the date given<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The string for the OLE container</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$date</b>&nbsp;&nbsp;</td> + <td>A timestamp</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodOLE2LocalDate"></a> + <h3>static method OLE2LocalDate <span class="smalllinenumber">[line 509]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string OLE2LocalDate( +integer +$string)</code> + </td></tr></table> + </td></tr></table><br /> + + Returns a timestamp from an OLE container's date<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The timestamp corresponding to the string</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$string</b>&nbsp;&nbsp;</td> + <td>A binary string with the encoded date</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="methodgetData"></a> + <h3>method getData <span class="smalllinenumber">[line 410]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getData( +integer +$index, integer +$position, integer +$length)</code> + </td></tr></table> + </td></tr></table><br /> + + Gets data from a PPS If there is no PPS for the index given, it will return an empty string.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The binary string containing the data requested</td> + </tr> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>OLE_PPS_File::getStream()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>The index for the PPS</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$position</b>&nbsp;&nbsp;</td> + <td>The position from which to start reading (relative to the PPS)</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$length</b>&nbsp;&nbsp;</td> + <td>The amount of bytes to read (at most)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDataLength"></a> + <h3>method getDataLength <span class="smalllinenumber">[line 430]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>integer getDataLength( +integer +$index)</code> + </td></tr></table> + </td></tr></table><br /> + + Gets the data length from a PPS If there is no PPS for the index given, it will return 0.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The amount of bytes in data the PPS has</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>The index for the PPS</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStream"></a> + <h3>method getStream <span class="smalllinenumber">[line 197]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>resource getStream( +int|PPS +$blockIdOrPps)</code> + </td></tr></table> + </td></tr></table><br /> + + Returns a stream for use with fread() etc. External callers should use PHPExcel_Shared_OLE_PPS_File::getStream().<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>read-only stream</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int|PPS&nbsp;&nbsp;</td> + <td><b>$blockIdOrPps</b>&nbsp;&nbsp;</td> + <td>block id or PPS</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisFile"></a> + <h3>method isFile <span class="smalllinenumber">[line 363]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool isFile( +integer +$index)</code> + </td></tr></table> + </td></tr></table><br /> + + Checks whether a PPS is a File PPS or not.<br /><br /><p>If there is no PPS for the index given, it will return false.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true if it's a File PPS, false otherwise</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>The index for the PPS</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisRoot"></a> + <h3>method isRoot <span class="smalllinenumber">[line 379]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool isRoot( +integer +$index)</code> + </td></tr></table> + </td></tr></table><br /> + + Checks whether a PPS is a Root PPS or not.<br /><br /><p>If there is no PPS for the index given, it will return false.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true if it's a Root PPS, false otherwise</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>The index for the PPS.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodppsTotal"></a> + <h3>method ppsTotal <span class="smalllinenumber">[line 393]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>integer ppsTotal( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Gives the total number of PPS's found in the OLE container.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The total number of PPS's found in the OLE container</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodread"></a> + <h3>method read <span class="smalllinenumber">[line 96]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed read( +string +$file)</code> + </td></tr></table> + </td></tr></table><br /> + + Reads an OLE container from the contents of the file given.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true on success, PEAR_Error on failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$file</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_getBlockOffset"></a> + <h3>method _getBlockOffset <span class="smalllinenumber">[line 186]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _getBlockOffset( +int +$blockId, int +1)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>1</b>&nbsp;&nbsp;</td> + <td>byte offset from beginning of file</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$blockId</b>&nbsp;&nbsp;</td> + <td>block id</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_ppsTreeComplete"></a> + <h3>method _ppsTreeComplete <span class="smalllinenumber">[line 343]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean _ppsTreeComplete( +integer +$index)</code> + </td></tr></table> + </td></tr></table><br /> + + It checks whether the PPS tree is complete (all PPS's read) starting with the given PPS (not necessarily root)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Whether the PPS tree for the given PPS is complete</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>The index of the PPS from which we are checking</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_readPpsWks"></a> + <h3>method _readPpsWks <span class="smalllinenumber">[line 266]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed _readPpsWks( +integer +$blockId)</code> + </td></tr></table> + </td></tr></table><br /> + + Gets information about all PPS's on the OLE container from the PPS WK's creates an OLE_PPS object for each one.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true on success, PEAR_Error on failure</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$blockId</b>&nbsp;&nbsp;</td> + <td>the block id of the first block</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constOLE_DATA_SIZE_SMALL"></a> + <p></p> + <h4>OLE_DATA_SIZE_SMALL = <span class="value">&nbsp;0x1000</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOLE_LONG_INT_SIZE"></a> + <p></p> + <h4>OLE_LONG_INT_SIZE = <span class="value">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOLE_PPS_SIZE"></a> + <p></p> + <h4>OLE_PPS_SIZE = <span class="value">&nbsp;&nbsp;&nbsp;0x80</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOLE_PPS_TYPE_DIR"></a> + <p></p> + <h4>OLE_PPS_TYPE_DIR = <span class="value">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOLE_PPS_TYPE_FILE"></a> + <p></p> + <h4>OLE_PPS_TYPE_FILE = <span class="value">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOLE_PPS_TYPE_ROOT"></a> + <p></p> + <h4>OLE_PPS_TYPE_ROOT = <span class="value">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:44 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html new file mode 100644 index 0000000..7fede9e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html @@ -0,0 +1,508 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_OLE_ChainedBlockStream</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_OLE_ChainedBlockStream</h1> +Source Location: /PHPExcel/Shared/OLE/ChainedBlockStream.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_OLE_ChainedBlockStream</div><br /><br /> + + + + + + + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$data">$data</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$ole">$ole</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$params">$params</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$pos">$pos</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_close">stream_close</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_eof">stream_eof</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_open">stream_open</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_read">stream_read</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_seek">stream_seek</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_stat">stream_stat</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_tell">stream_tell</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 38]<br /> +PHPExcel_Shared_OLE_ChainedBlockStream<br /><br /><p>Stream wrapper for reading data stored in an OLE file. Implements methods for PHP's stream_wrapper_register(). For creating streams using this wrapper, use PHPExcel_Shared_OLE_PPS_File::getStream().</p><br /></div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$data"></a> + <p></p> + <h4>$data = <span class="value"></span></h4> + <p>[line 56]</p> + The binary data of the file.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$ole"></a> + <p></p> + <h4>$ole = <span class="value"></span></h4> + <p>[line 44]</p> + The OLE container of the file that is being read.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>OLE</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$params"></a> + <p></p> + <h4>$params = <span class="value"></span></h4> + <p>[line 50]</p> + Parameters specified by fopen().<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$pos"></a> + <p></p> + <h4>$pos = <span class="value"></span></h4> + <p>[line 62]</p> + The file pointer.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>var:</b>&nbsp;&nbsp;</td><td>byte offset</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodstream_close"></a> + <h3>method stream_close <span class="smalllinenumber">[line 135]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void stream_close( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implements support for fclose().<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstream_eof"></a> + <h3>method stream_eof <span class="smalllinenumber">[line 162]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool stream_eof( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implements support for feof().<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>TRUE if the file pointer is at EOF; otherwise FALSE</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstream_open"></a> + <h3>method stream_open <span class="smalllinenumber">[line 75]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool stream_open( +string +$path, string +$mode, int +$options, string +&$openedPath)</code> + </td></tr></table> + </td></tr></table><br /> + + Implements support for fopen().<br /><br /><p>For creating streams using this wrapper, use OLE_PPS_File::getStream().</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true on success</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$path</b>&nbsp;&nbsp;</td> + <td>resource name including scheme, e.g. ole-chainedblockstream://oleInstanceId=1</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$mode</b>&nbsp;&nbsp;</td> + <td>only &quot;r&quot; is supported</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$options</b>&nbsp;&nbsp;</td> + <td>mask of STREAM_REPORT_ERRORS and STREAM_USE_PATH</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>&$openedPath</b>&nbsp;&nbsp;</td> + <td>absolute path of the opened stream (out parameter)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstream_read"></a> + <h3>method stream_read <span class="smalllinenumber">[line 147]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string stream_read( +int +$count)</code> + </td></tr></table> + </td></tr></table><br /> + + Implements support for fread(), fgets() etc.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$count</b>&nbsp;&nbsp;</td> + <td>maximum number of bytes to read</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstream_seek"></a> + <h3>method stream_seek <span class="smalllinenumber">[line 192]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool stream_seek( +int +$offset, int +$whence)</code> + </td></tr></table> + </td></tr></table><br /> + + Implements support for fseek().<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$offset</b>&nbsp;&nbsp;</td> + <td>byte offset</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$whence</b>&nbsp;&nbsp;</td> + <td>SEEK_SET, SEEK_CUR or SEEK_END</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstream_stat"></a> + <h3>method stream_stat <span class="smalllinenumber">[line 211]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array stream_stat( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implements support for fstat(). Currently the only supported field is &quot;size&quot;.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodstream_tell"></a> + <h3>method stream_tell <span class="smalllinenumber">[line 180]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int stream_tell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Returns the position of the file pointer, i.e. its offset into the file stream. Implements support for ftell().<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:23 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html new file mode 100644 index 0000000..5991047 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html @@ -0,0 +1,722 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_OLE_PPS</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_OLE_PPS</h1> +Source Location: /PHPExcel/Shared/OLE/PPS.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">Class for creating PPS's for OLE containers</div><br /><br /> +<h4>Author(s):</h4> +<ul> + <li>Xavier Noguer &lt;<a href="mailto:xnoguer@php.net">xnoguer@php.net</a>&gt;</li> + </ul> + + + + + + + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$children">$children</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$DirPps">$DirPps</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Name">$Name</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$NextPps">$NextPps</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$No">$No</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$ole">$ole</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$PrevPps">$PrevPps</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Size">$Size</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Time1st">$Time1st</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Time2nd">$Time2nd</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Type">$Type</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$_data">$_data</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$_StartBlock">$_StartBlock</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_DataLen">_DataLen</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_getPpsWk">_getPpsWk</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_savePpsSetPnt">_savePpsSetPnt</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + +<td valign="top"> +<h3>Child classes:</h3> +<div class="tags"> +<dl> +<dt><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a></dt> + <dd>Class for creating File PPS's for OLE containers</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a></dt> + <dd>Class for creating Root PPS's for OLE containers</dd> +</dl> +</div> +</td> + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 30]<br /> +Class for creating PPS's for OLE containers<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Xavier Noguer &lt;<a href="mailto:xnoguer@php.net">xnoguer@php.net</a>&gt;</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$children"></a> + <p></p> + <h4>$children = <span class="value">array()</span></h4> + <p>[line 102]</p> + Array of child PPS's (only used by Root and Dir PPS's)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$DirPps"></a> + <p></p> + <h4>$DirPps = <span class="value"></span></h4> + <p>[line 66]</p> + The index of it's first child if this is a Dir or Root PPS<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$Name"></a> + <p></p> + <h4>$Name = <span class="value"></span></h4> + <p>[line 42]</p> + The PPS name (in Unicode)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$NextPps"></a> + <p></p> + <h4>$NextPps = <span class="value"></span></h4> + <p>[line 60]</p> + The index of the next PPS<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$No"></a> + <p></p> + <h4>$No = <span class="value"></span></h4> + <p>[line 36]</p> + The PPS index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$ole"></a> + <p></p> + <h4>$ole = <span class="value"></span></h4> + <p>[line 108]</p> + Pointer to OLE container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>OLE</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$PrevPps"></a> + <p></p> + <h4>$PrevPps = <span class="value"></span></h4> + <p>[line 54]</p> + The index of the previous PPS<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$Size"></a> + <p></p> + <h4>$Size = <span class="value"></span></h4> + <p>[line 90]</p> + The size of the PPS's data (in bytes)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$Time1st"></a> + <p></p> + <h4>$Time1st = <span class="value"></span></h4> + <p>[line 72]</p> + A timestamp<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$Time2nd"></a> + <p></p> + <h4>$Time2nd = <span class="value"></span></h4> + <p>[line 78]</p> + A timestamp<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$Type"></a> + <p></p> + <h4>$Type = <span class="value"></span></h4> + <p>[line 48]</p> + The PPS type. Dir, Root or File<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_data"></a> + <p></p> + <h4>$_data = <span class="value"></span></h4> + <p>[line 96]</p> + The PPS's data (only used if it's not using a temporary file)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_StartBlock"></a> + <p></p> + <h4>$_StartBlock = <span class="value"></span></h4> + <p>[line 84]</p> + Starting block (small or big) for this PPS's data inside the container<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="method_savePpsSetPnt"></a> + <h3>static method _savePpsSetPnt <span class="smalllinenumber">[line 203]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static integer _savePpsSetPnt( +array +&$raList, +$to_save, [ +$depth = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Updates index and pointers to previous, next and children PPS's for this PPS. I don't think it'll work with Dir PPS's.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The index for this PPS</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>&$raList</b>&nbsp;&nbsp;</td> + <td>Reference to the array of PPS's for the whole OLE container</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$to_save</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$depth</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 125]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Shared_OLE_PPS __construct( +integer +$No, string +$name, integer +$type, integer +$prev, integer +$next, integer +$dir, integer +$time_1st, integer +$time_2nd, string +$data, array +$children)</code> + </td></tr></table> + </td></tr></table><br /> + + The constructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#method__construct">PHPExcel_Shared_OLE_PPS_File::__construct()</a></dt> + <dd>The constructor</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method__construct">PHPExcel_Shared_OLE_PPS_Root::__construct()</a></dt> + <dd></dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$No</b>&nbsp;&nbsp;</td> + <td>The PPS index</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$name</b>&nbsp;&nbsp;</td> + <td>The PPS name</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$type</b>&nbsp;&nbsp;</td> + <td>The PPS type. Dir, Root or File</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$prev</b>&nbsp;&nbsp;</td> + <td>The index of the previous PPS</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$next</b>&nbsp;&nbsp;</td> + <td>The index of the next PPS</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$dir</b>&nbsp;&nbsp;</td> + <td>The index of it's first child if this is a Dir or Root PPS</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$time_1st</b>&nbsp;&nbsp;</td> + <td>A timestamp</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$time_2nd</b>&nbsp;&nbsp;</td> + <td>A timestamp</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$data</b>&nbsp;&nbsp;</td> + <td>The (usually binary) source data of the PPS</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$children</b>&nbsp;&nbsp;</td> + <td>Array containing children PPS for this PPS</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_DataLen"></a> + <h3>method _DataLen <span class="smalllinenumber">[line 150]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>integer _DataLen( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Returns the amount of data saved for this PPS<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The amount of data (in bytes)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_getPpsWk"></a> + <h3>method _getPpsWk <span class="smalllinenumber">[line 170]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string _getPpsWk( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Returns a string with the PPS's WK (What is a WK?)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The binary string</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:29 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html new file mode 100644 index 0000000..5084195 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html @@ -0,0 +1,418 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_OLE_PPS_File</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_OLE_PPS_File</h1> +Source Location: /PHPExcel/Shared/OLE/PPS/File.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a> + | + --PHPExcel_Shared_OLE_PPS_File</pre><br /> +<div class="description">Class for creating File PPS's for OLE containers</div><br /><br /> +<h4>Author(s):</h4> +<ul> + <li>Xavier Noguer &lt;<a href="mailto:xnoguer@php.net">xnoguer@php.net</a>&gt;</li> + </ul> + + + + + + + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#methodappend">append</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#methodgetStream">getStream</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#methodinit">init</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$children">PHPExcel_Shared_OLE_PPS::$children</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$DirPps">PHPExcel_Shared_OLE_PPS::$DirPps</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Name">PHPExcel_Shared_OLE_PPS::$Name</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$NextPps">PHPExcel_Shared_OLE_PPS::$NextPps</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$No">PHPExcel_Shared_OLE_PPS::$No</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$ole">PHPExcel_Shared_OLE_PPS::$ole</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$PrevPps">PHPExcel_Shared_OLE_PPS::$PrevPps</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Size">PHPExcel_Shared_OLE_PPS::$Size</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Time1st">PHPExcel_Shared_OLE_PPS::$Time1st</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Time2nd">PHPExcel_Shared_OLE_PPS::$Time2nd</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Type">PHPExcel_Shared_OLE_PPS::$Type</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$_data">PHPExcel_Shared_OLE_PPS::$_data</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$_StartBlock">PHPExcel_Shared_OLE_PPS::$_StartBlock</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method__construct">PHPExcel_Shared_OLE_PPS::__construct()</a> + </dt> + <dd> + The constructor + </dd> + <dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_DataLen">PHPExcel_Shared_OLE_PPS::_DataLen()</a> + </dt> + <dd> + Returns the amount of data saved for this PPS + </dd> + <dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_getPpsWk">PHPExcel_Shared_OLE_PPS::_getPpsWk()</a> + </dt> + <dd> + Returns a string with the PPS's WK (What is a WK?) + </dd> + <dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_savePpsSetPnt">PHPExcel_Shared_OLE_PPS::_savePpsSetPnt()</a> + </dt> + <dd> + Updates index and pointers to previous, next and children PPS's for this PPS. I don't think it'll work with Dir PPS's. + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 30]<br /> +Class for creating File PPS's for OLE containers<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Xavier Noguer &lt;<a href="mailto:xnoguer@php.net">xnoguer@php.net</a>&gt;</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 39]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Shared_OLE_PPS_File __construct( +string +$name)</code> + </td></tr></table> + </td></tr></table><br /> + + The constructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>OLE::Asc2Ucs()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method__construct">PHPExcel_Shared_OLE_PPS::__construct()</a> (The constructor)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$name</b>&nbsp;&nbsp;</td> + <td>The name of the file (in Unicode)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodappend"></a> + <h3>method append <span class="smalllinenumber">[line 71]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void append( +string +$data)</code> + </td></tr></table> + </td></tr></table><br /> + + Append data to PPS<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$data</b>&nbsp;&nbsp;</td> + <td>The data to append</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStream"></a> + <h3>method getStream <span class="smalllinenumber">[line 80]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>resource getStream( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Returns a stream for reading this file using fread() etc.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>a read-only stream</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinit"></a> + <h3>method init <span class="smalllinenumber">[line 60]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed init( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Initialization method. Has to be called right after OLE_PPS_File().<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true on success</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:15 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html new file mode 100644 index 0000000..b7362dc --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html @@ -0,0 +1,674 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_OLE_PPS_Root</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_OLE_PPS_Root</h1> +Source Location: /PHPExcel/Shared/OLE/PPS/Root.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a> + | + --PHPExcel_Shared_OLE_PPS_Root</pre><br /> +<div class="description">Class for creating Root PPS's for OLE containers</div><br /><br /> +<h4>Author(s):</h4> +<ul> + <li>Xavier Noguer &lt;<a href="mailto:xnoguer@php.net">xnoguer@php.net</a>&gt;</li> + </ul> + + + + + + + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#var$_tmp_dir">$_tmp_dir</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#methodsave">save</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_calcSize">_calcSize</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_makeSmallData">_makeSmallData</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_saveBbd">_saveBbd</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_saveBigData">_saveBigData</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_saveHeader">_saveHeader</a></li> + <li><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_savePps">_savePps</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$children">PHPExcel_Shared_OLE_PPS::$children</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$DirPps">PHPExcel_Shared_OLE_PPS::$DirPps</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Name">PHPExcel_Shared_OLE_PPS::$Name</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$NextPps">PHPExcel_Shared_OLE_PPS::$NextPps</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$No">PHPExcel_Shared_OLE_PPS::$No</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$ole">PHPExcel_Shared_OLE_PPS::$ole</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$PrevPps">PHPExcel_Shared_OLE_PPS::$PrevPps</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Size">PHPExcel_Shared_OLE_PPS::$Size</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Time1st">PHPExcel_Shared_OLE_PPS::$Time1st</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Time2nd">PHPExcel_Shared_OLE_PPS::$Time2nd</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Type">PHPExcel_Shared_OLE_PPS::$Type</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$_data">PHPExcel_Shared_OLE_PPS::$_data</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$_StartBlock">PHPExcel_Shared_OLE_PPS::$_StartBlock</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method__construct">PHPExcel_Shared_OLE_PPS::__construct()</a> + </dt> + <dd> + The constructor + </dd> + <dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_DataLen">PHPExcel_Shared_OLE_PPS::_DataLen()</a> + </dt> + <dd> + Returns the amount of data saved for this PPS + </dd> + <dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_getPpsWk">PHPExcel_Shared_OLE_PPS::_getPpsWk()</a> + </dt> + <dd> + Returns a string with the PPS's WK (What is a WK?) + </dd> + <dt> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_savePpsSetPnt">PHPExcel_Shared_OLE_PPS::_savePpsSetPnt()</a> + </dt> + <dd> + Updates index and pointers to previous, next and children PPS's for this PPS. I don't think it'll work with Dir PPS's. + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 30]<br /> +Class for creating Root PPS's for OLE containers<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Xavier Noguer &lt;<a href="mailto:xnoguer@php.net">xnoguer@php.net</a>&gt;</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_tmp_dir"></a> + <p></p> + <h4>$_tmp_dir = <span class="value">&nbsp;NULL</span></h4> + <p>[line 37]</p> + Directory for temporary files<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 43]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Shared_OLE_PPS_Root __construct( +integer +$time_1st, integer +$time_2nd, +$raChild)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method__construct">PHPExcel_Shared_OLE_PPS::__construct()</a> (The constructor)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$time_1st</b>&nbsp;&nbsp;</td> + <td>A timestamp</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$time_2nd</b>&nbsp;&nbsp;</td> + <td>A timestamp</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$raChild</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsave"></a> + <h3>method save <span class="smalllinenumber">[line 71]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed save( +string|resource +$filename)</code> + </td></tr></table> + </td></tr></table><br /> + + Method for saving the whole OLE container (including files).<br /><br /><p>In fact, if called with an empty argument (or '-'), it saves to a temporary file and then outputs it's contents to stdout. If a resource pointer to a stream created by fopen() is passed it will be used, but you have to close such stream by yourself.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true on success</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string|resource&nbsp;&nbsp;</td> + <td><b>$filename</b>&nbsp;&nbsp;</td> + <td>The name of the file or stream where to save the OLE container.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_calcSize"></a> + <h3>method _calcSize <span class="smalllinenumber">[line 127]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array _calcSize( + +&$raList, array +$raList)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate some numbers<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The array of numbers</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$raList</b>&nbsp;&nbsp;</td> + <td>Reference to an array of PPS's</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$raList</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_makeSmallData"></a> + <h3>method _makeSmallData <span class="smalllinenumber">[line 307]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _makeSmallData( +array +&$raList)</code> + </td></tr></table> + </td></tr></table><br /> + + get small data (PPS's with data smaller than PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>&$raList</b>&nbsp;&nbsp;</td> + <td>Reference to array of PPS's</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_saveBbd"></a> + <h3>method _saveBbd <span class="smalllinenumber">[line 387]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _saveBbd( +integer +$iSbdSize, integer +$iBsize, integer +$iPpsCnt)</code> + </td></tr></table> + </td></tr></table><br /> + + Saving Big Block Depot<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$iSbdSize</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$iBsize</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$iPpsCnt</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_saveBigData"></a> + <h3>method _saveBigData <span class="smalllinenumber">[line 258]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _saveBigData( +integer +$iStBlk, array +&$raList)</code> + </td></tr></table> + </td></tr></table><br /> + + Saving big data (PPS's with data bigger than PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$iStBlk</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>&$raList</b>&nbsp;&nbsp;</td> + <td>Reference to array of PPS's</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_saveHeader"></a> + <h3>method _saveHeader <span class="smalllinenumber">[line 180]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _saveHeader( +integer +$iSBDcnt, integer +$iBBcnt, integer +$iPPScnt)</code> + </td></tr></table> + </td></tr></table><br /> + + Save OLE header<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$iSBDcnt</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$iBBcnt</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$iPPScnt</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_savePps"></a> + <h3>method _savePps <span class="smalllinenumber">[line 364]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _savePps( + +&$raList, array +$raList)</code> + </td></tr></table> + </td></tr></table><br /> + + Saves all the PPS's WKs<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$raList</b>&nbsp;&nbsp;</td> + <td>Reference to an array with all PPS's</td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>&$raList</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html new file mode 100644 index 0000000..dc2ef2f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html @@ -0,0 +1,127 @@ +<html> +<head> +<title>Docs for page ChainedBlockStream.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: ChainedBlockStream.php</h1> +Source Location: /PHPExcel/Shared/OLE/ChainedBlockStream.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a></dt> + <dd>PHPExcel_Shared_OLE_ChainedBlockStream</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (C) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2007 Christian Schmidt</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:23 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html new file mode 100644 index 0000000..e9ecc73 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html @@ -0,0 +1,121 @@ +<html> +<head> +<title>Docs for page File.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: File.php</h1> +Source Location: /PHPExcel/Shared/OLE/PPS/File.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a></dt> + <dd>Class for creating File PPS's for OLE containers</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +Class for creating File PPS's for OLE containers<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Xavier Noguer &lt;<a href="mailto:xnoguer@php.net">xnoguer@php.net</a>&gt;</td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:15 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html new file mode 100644 index 0000000..2635b2f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html @@ -0,0 +1,121 @@ +<html> +<head> +<title>Docs for page Root.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Root.php</h1> +Source Location: /PHPExcel/Shared/OLE/PPS/Root.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a></dt> + <dd>Class for creating Root PPS's for OLE containers</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +Class for creating Root PPS's for OLE containers<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Xavier Noguer &lt;<a href="mailto:xnoguer@php.net">xnoguer@php.net</a>&gt;</td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html new file mode 100644 index 0000000..399c5f7 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html @@ -0,0 +1,121 @@ +<html> +<head> +<title>Docs for page PPS.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: PPS.php</h1> +Source Location: /PHPExcel/Shared/OLE/PPS.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a></dt> + <dd>Class for creating PPS's for OLE containers</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +Class for creating PPS's for OLE containers<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Xavier Noguer &lt;<a href="mailto:xnoguer@php.net">xnoguer@php.net</a>&gt;</td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:29 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html new file mode 100644 index 0000000..328dbee --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html @@ -0,0 +1,112 @@ +<html> +<head> +<title>Docs for page OLE.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="../PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: OLE.php</h1> +Source Location: /PHPExcel/Shared/OLE.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a></dt> + <dd>OLE package base class.</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +Array for storing OLE instances that are accessed from OLE_ChainedBlockStream::stream_open().<br /><br /><br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:44 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_notes/dwsync.xml new file mode 100644 index 0000000..ec3bc91 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_OLE/_notes/dwsync.xml @@ -0,0 +1,73 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Shared_OLE.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_ChainedBlockStream.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_PPS.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_PPS_File.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_PPS_Root.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---ChainedBlockStream.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---PPS---File.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---PPS---Root.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---PPS.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---PPS---Root.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---ChainedBlockStream.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---PPS.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_PPS_File.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_ChainedBlockStream.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_PPS.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_PPS_Root.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---PPS---File.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---PPS---Root.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---ChainedBlockStream.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---PPS.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_PPS_File.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_ChainedBlockStream.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_PPS.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Shared_OLE_PPS_Root.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---PPS---File.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Shared---OLE---PPS---Root.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560395573967" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLE---ChainedBlockStream.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560395995691" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLE---PPS.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560396429285" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLE.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560396859360" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLE_PPS_File.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560397254090" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLE_ChainedBlockStream.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560397651663" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLE_PPS.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560398045980" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLE_PPS_Root.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560398458874" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLE.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560398869258" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLE---PPS---File.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560399276805" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLE---PPS---Root.php.html" server="62.244.88.21/amashow/" local="131414752733944956" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---OLE---ChainedBlockStream.php.html" server="62.244.88.21/amashow/" local="131414752734363318" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---OLE---PPS.php.html" server="62.244.88.21/amashow/" local="131414752734738994" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_OLE.html" server="62.244.88.21/amashow/" local="131414752735171647" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_OLE_PPS_File.html" server="62.244.88.21/amashow/" local="131414752735606095" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_OLE_ChainedBlockStream.html" server="62.244.88.21/amashow/" local="131414752736140554" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_OLE_PPS.html" server="62.244.88.21/amashow/" local="131414752736632876" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_OLE_PPS_Root.html" server="62.244.88.21/amashow/" local="131414752737101734" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---OLE.php.html" server="62.244.88.21/amashow/" local="131414752737310602" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---OLE---PPS---File.php.html" server="62.244.88.21/amashow/" local="131414752737518236" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_OLE_PPS_Root.html" server="62.244.88.21/deciday/" local="131919461607552979" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLE_PPS_File.html" server="62.244.88.21/deciday/" local="131919461605562302" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLE_ChainedBlockStream.html" server="62.244.88.21/deciday/" local="131919461603797517" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLE---PPS.php.html" server="62.244.88.21/deciday/" local="131919461607072872" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLE_PPS.html" server="62.244.88.21/deciday/" local="131919461606475541" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLE.html" server="62.244.88.21/deciday/" local="131919461604706286" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLE.php.html" server="62.244.88.21/deciday/" local="131919461604899281" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLE---PPS---File.php.html" server="62.244.88.21/deciday/" local="131919461605818213" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLE---ChainedBlockStream.php.html" server="62.244.88.21/deciday/" local="131919461604103022" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---OLE---PPS---Root.php.html" server="62.244.88.21/deciday/" local="131919461607912098" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_OLE.html" server="62.244.88.21/deciday_18/" local="131414752735171647" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_OLE_ChainedBlockStream.html" server="62.244.88.21/deciday_18/" local="131414752736140554" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_OLE_PPS.html" server="62.244.88.21/deciday_18/" local="131414752736632876" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_OLE_PPS_File.html" server="62.244.88.21/deciday_18/" local="131414752735606095" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Shared_OLE_PPS_Root.html" server="62.244.88.21/deciday_18/" local="131414752737101734" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---OLE---ChainedBlockStream.php.html" server="62.244.88.21/deciday_18/" local="131414752734363318" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---OLE---PPS---File.php.html" server="62.244.88.21/deciday_18/" local="131414752737518236" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---OLE---PPS---Root.php.html" server="62.244.88.21/deciday_18/" local="131414752733944956" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---OLE---PPS.php.html" server="62.244.88.21/deciday_18/" local="131414752734738994" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---OLE.php.html" server="62.244.88.21/deciday_18/" local="131414752737310602" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html new file mode 100644 index 0000000..736a291 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html @@ -0,0 +1,1714 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Best_Fit</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Best_Fit</h1> +Source Location: /PHPExcel/Shared/trend/bestFitClass.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Best_Fit</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_adjustToZero">$_adjustToZero</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_bestFitType">$_bestFitType</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_correlation">$_correlation</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_covariance">$_covariance</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_DFResiduals">$_DFResiduals</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_error">$_error</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_F">$_F</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_goodnessOfFit">$_goodnessOfFit</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersect">$_intersect</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersectSE">$_intersectSE</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slope">$_slope</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slopeSE">$_slopeSE</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSRegression">$_SSRegression</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSResiduals">$_SSResiduals</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_stdevOfResiduals">$_stdevOfResiduals</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_valueCount">$_valueCount</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Xoffset">$_Xoffset</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_xValues">$_xValues</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yBestFitValues">$_yBestFitValues</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Yoffset">$_Yoffset</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yValues">$_yValues</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetBestFitType">getBestFitType</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCorrelation">getCorrelation</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCovariance">getCovariance</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetDFResiduals">getDFResiduals</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">getEquation</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetError">getError</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetF">getF</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFit">getGoodnessOfFit</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFitPercent">getGoodnessOfFitPercent</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersect">getIntersect</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersectSE">getIntersectSE</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlope">getSlope</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlopeSE">getSlopeSE</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSRegression">getSSRegression</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSResiduals">getSSResiduals</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetStdevOfResiduals">getStdevOfResiduals</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">getValueOfXForY</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">getValueOfYForX</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetXValues">getXValues</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetYBestFitValues">getYBestFitValues</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_calculateGoodnessOfFit">_calculateGoodnessOfFit</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_leastSquareFit">_leastSquareFit</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + +<td valign="top"> +<h3>Child classes:</h3> +<div class="tags"> +<dl> +<dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a></dt> + <dd>PHPExcel_Exponential_Best_Fit</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a></dt> + <dd>PHPExcel_Linear_Best_Fit</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a></dt> + <dd>PHPExcel_Logarithmic_Best_Fit</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a></dt> + <dd>PHPExcel_Polynomial_Best_Fit</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a></dt> + <dd>PHPExcel_Power_Best_Fit</dd> +</dl> +</div> +</td> + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Best_Fit<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_adjustToZero"></a> + <p></p> + <h4>$_adjustToZero = <span class="value">&nbsp;False</span></h4> + <p>[line 78]</p> + Flag indicating whether values should be adjusted to Y=0<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>boolean</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_bestFitType"></a> + <p></p> + <h4>$_bestFitType = <span class="value">&nbsp;'undetermined'</span></h4> + <p>[line 50]</p> + Algorithm type to use for best-fit<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_correlation"></a> + <p></p> + <h4>$_correlation = <span class="value">&nbsp;0</span></h4> + <p>[line 93]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_covariance"></a> + <p></p> + <h4>$_covariance = <span class="value">&nbsp;0</span></h4> + <p>[line 91]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_DFResiduals"></a> + <p></p> + <h4>$_DFResiduals = <span class="value">&nbsp;0</span></h4> + <p>[line 99]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_error"></a> + <p></p> + <h4>$_error = <span class="value">&nbsp;False</span></h4> + <p>[line 43]</p> + Indicator flag for a calculation error<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>boolean</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_F"></a> + <p></p> + <h4>$_F = <span class="value">&nbsp;0</span></h4> + <p>[line 101]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_goodnessOfFit"></a> + <p></p> + <h4>$_goodnessOfFit = <span class="value">&nbsp;1</span></h4> + <p>[line 87]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_intersect"></a> + <p></p> + <h4>$_intersect = <span class="value">&nbsp;0</span></h4> + <p>[line 107]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_intersectSE"></a> + <p></p> + <h4>$_intersectSE = <span class="value">&nbsp;0</span></h4> + <p>[line 109]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_slope"></a> + <p></p> + <h4>$_slope = <span class="value">&nbsp;0</span></h4> + <p>[line 103]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_slopeSE"></a> + <p></p> + <h4>$_slopeSE = <span class="value">&nbsp;0</span></h4> + <p>[line 105]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_SSRegression"></a> + <p></p> + <h4>$_SSRegression = <span class="value">&nbsp;0</span></h4> + <p>[line 95]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_SSResiduals"></a> + <p></p> + <h4>$_SSResiduals = <span class="value">&nbsp;0</span></h4> + <p>[line 97]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_stdevOfResiduals"></a> + <p></p> + <h4>$_stdevOfResiduals = <span class="value">&nbsp;0</span></h4> + <p>[line 89]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_valueCount"></a> + <p></p> + <h4>$_valueCount = <span class="value">&nbsp;0</span></h4> + <p>[line 57]</p> + Number of entries in the sets of x- and y-value arrays<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_Xoffset"></a> + <p></p> + <h4>$_Xoffset = <span class="value">&nbsp;0</span></h4> + <p>[line 111]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_xValues"></a> + <p></p> + <h4>$_xValues = <span class="value">array()</span></h4> + <p>[line 64]</p> + X-value dataseries of values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>float[]</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_yBestFitValues"></a> + <p></p> + <h4>$_yBestFitValues = <span class="value">array()</span></h4> + <p>[line 85]</p> + Y-value series of best-fit values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>float[]</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_Yoffset"></a> + <p></p> + <h4>$_Yoffset = <span class="value">&nbsp;0</span></h4> + <p>[line 113]</p> + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>mixed</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_yValues"></a> + <p></p> + <h4>$_yValues = <span class="value">array()</span></h4> + <p>[line 71]</p> + Y-value dataseries of values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>float[]</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 412]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Best_Fit __construct( +float[] +$yValues, [float[] +$xValues = array()], [boolean +$const = True])</code> + </td></tr></table> + </td></tr></table><br /> + + Define the regression<br /><br /><br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#method__construct">PHPExcel_Exponential_Best_Fit::__construct()</a></dt> + <dd>Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#method__construct">PHPExcel_Linear_Best_Fit::__construct()</a></dt> + <dd>Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#method__construct">PHPExcel_Logarithmic_Best_Fit::__construct()</a></dt> + <dd>Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#method__construct">PHPExcel_Polynomial_Best_Fit::__construct()</a></dt> + <dd>Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#method__construct">PHPExcel_Power_Best_Fit::__construct()</a></dt> + <dd>Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>The set of Y-values for this regression</td> + </tr> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>The set of X-values for this regression</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBestFitType"></a> + <h3>method getBestFitType <span class="smalllinenumber">[line 121]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getBestFitType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCorrelation"></a> + <h3>method getCorrelation <span class="smalllinenumber">[line 301]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getCorrelation( +[ +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCovariance"></a> + <h3>method getCovariance <span class="smalllinenumber">[line 293]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getCovariance( +[ +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDFResiduals"></a> + <h3>method getDFResiduals <span class="smalllinenumber">[line 277]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getDFResiduals( +[ +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEquation"></a> + <h3>method getEquation <span class="smalllinenumber">[line 164]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getEquation( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Equation of the best-fit line<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetEquation">PHPExcel_Exponential_Best_Fit::getEquation()</a></dt> + <dd>Return the Equation of the best-fit line</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetEquation">PHPExcel_Linear_Best_Fit::getEquation()</a></dt> + <dd>Return the Equation of the best-fit line</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetEquation">PHPExcel_Logarithmic_Best_Fit::getEquation()</a></dt> + <dd>Return the Equation of the best-fit line</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetEquation">PHPExcel_Polynomial_Best_Fit::getEquation()</a></dt> + <dd>Return the Equation of the best-fit line</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetEquation">PHPExcel_Power_Best_Fit::getEquation()</a></dt> + <dd>Return the Equation of the best-fit line</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetError"></a> + <h3>method getError <span class="smalllinenumber">[line 116]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getError( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetF"></a> + <h3>method getF <span class="smalllinenumber">[line 285]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getF( +[ +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetGoodnessOfFit"></a> + <h3>method getGoodnessOfFit <span class="smalllinenumber">[line 231]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getGoodnessOfFit( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the goodness of fit for this regression<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to return</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetGoodnessOfFitPercent"></a> + <h3>method getGoodnessOfFitPercent <span class="smalllinenumber">[line 239]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getGoodnessOfFitPercent( +[ +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIntersect"></a> + <h3>method getIntersect <span class="smalllinenumber">[line 203]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getIntersect( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Value of X where it intersects Y = 0<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetIntersect">PHPExcel_Exponential_Best_Fit::getIntersect()</a></dt> + <dd>Return the Value of X where it intersects Y = 0</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetIntersect">PHPExcel_Power_Best_Fit::getIntersect()</a></dt> + <dd>Return the Value of X where it intersects Y = 0</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIntersectSE"></a> + <h3>method getIntersectSE <span class="smalllinenumber">[line 217]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getIntersectSE( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the standard error of the Intersect<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSlope"></a> + <h3>method getSlope <span class="smalllinenumber">[line 175]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSlope( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Slope of the line<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetSlope">PHPExcel_Exponential_Best_Fit::getSlope()</a></dt> + <dd>Return the Slope of the line</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetSlope">PHPExcel_Polynomial_Best_Fit::getSlope()</a></dt> + <dd>Return the Slope of the line</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSlopeSE"></a> + <h3>method getSlopeSE <span class="smalllinenumber">[line 189]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSlopeSE( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the standard error of the Slope<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSSRegression"></a> + <h3>method getSSRegression <span class="smalllinenumber">[line 261]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getSSRegression( +[ +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSSResiduals"></a> + <h3>method getSSResiduals <span class="smalllinenumber">[line 269]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getSSResiduals( +[ +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStdevOfResiduals"></a> + <h3>method getStdevOfResiduals <span class="smalllinenumber">[line 253]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getStdevOfResiduals( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the standard deviation of the residuals for this regression<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to return</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfXForY"></a> + <h3>method getValueOfXForY <span class="smalllinenumber">[line 143]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfXForY( +float +$yValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the X-Value for a specified value of Y<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>X-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Exponential_Best_Fit::getValueOfXForY()</a></dt> + <dd>Return the X-Value for a specified value of Y</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Linear_Best_Fit::getValueOfXForY()</a></dt> + <dd>Return the X-Value for a specified value of Y</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Logarithmic_Best_Fit::getValueOfXForY()</a></dt> + <dd>Return the X-Value for a specified value of Y</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Polynomial_Best_Fit::getValueOfXForY()</a></dt> + <dd>Return the X-Value for a specified value of Y</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Power_Best_Fit::getValueOfXForY()</a></dt> + <dd>Return the X-Value for a specified value of Y</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$yValue</b>&nbsp;&nbsp;</td> + <td>Y-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfYForX"></a> + <h3>method getValueOfYForX <span class="smalllinenumber">[line 132]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfYForX( +float +$xValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Y-Value for a specified value of X<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Y-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Exponential_Best_Fit::getValueOfYForX()</a></dt> + <dd>Return the Y-Value for a specified value of X</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Linear_Best_Fit::getValueOfYForX()</a></dt> + <dd>Return the Y-Value for a specified value of X</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Logarithmic_Best_Fit::getValueOfYForX()</a></dt> + <dd>Return the Y-Value for a specified value of X</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Polynomial_Best_Fit::getValueOfYForX()</a></dt> + <dd>Return the Y-Value for a specified value of X</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Power_Best_Fit::getValueOfYForX()</a></dt> + <dd>Return the Y-Value for a specified value of X</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$xValue</b>&nbsp;&nbsp;</td> + <td>X-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetXValues"></a> + <h3>method getXValues <span class="smalllinenumber">[line 153]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float[] getXValues( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the original set of X-Values<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>X-Values</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetYBestFitValues"></a> + <h3>method getYBestFitValues <span class="smalllinenumber">[line 309]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getYBestFitValues( +)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_calculateGoodnessOfFit"></a> + <h3>method _calculateGoodnessOfFit <span class="smalllinenumber">[line 314]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _calculateGoodnessOfFit( + +$sumX, +$sumY, +$sumX2, +$sumY2, +$sumXY, +$meanX, +$meanY, +$const)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$sumX</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$sumY</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$sumX2</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$sumY2</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$sumXY</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$meanX</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$meanY</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_leastSquareFit"></a> + <h3>method _leastSquareFit <span class="smalllinenumber">[line 368]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _leastSquareFit( + +$yValues, +$xValues, +$const)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:15 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html new file mode 100644 index 0000000..1c8e930 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html @@ -0,0 +1,719 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Exponential_Best_Fit</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Exponential_Best_Fit</h1> +Source Location: /PHPExcel/Shared/trend/exponentialBestFitClass.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a> + | + --PHPExcel_Exponential_Best_Fit</pre><br /> +<div class="description">PHPExcel_Exponential_Best_Fit</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#var$_bestFitType">$_bestFitType</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetEquation">getEquation</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetIntersect">getIntersect</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetSlope">getSlope</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetValueOfXForY">getValueOfXForY</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetValueOfYForX">getValueOfYForX</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_adjustToZero">PHPExcel_Best_Fit::$_adjustToZero</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_correlation">PHPExcel_Best_Fit::$_correlation</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_covariance">PHPExcel_Best_Fit::$_covariance</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_DFResiduals">PHPExcel_Best_Fit::$_DFResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_error">PHPExcel_Best_Fit::$_error</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_F">PHPExcel_Best_Fit::$_F</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_goodnessOfFit">PHPExcel_Best_Fit::$_goodnessOfFit</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersect">PHPExcel_Best_Fit::$_intersect</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersectSE">PHPExcel_Best_Fit::$_intersectSE</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slope">PHPExcel_Best_Fit::$_slope</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slopeSE">PHPExcel_Best_Fit::$_slopeSE</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSRegression">PHPExcel_Best_Fit::$_SSRegression</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSResiduals">PHPExcel_Best_Fit::$_SSResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_stdevOfResiduals">PHPExcel_Best_Fit::$_stdevOfResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_valueCount">PHPExcel_Best_Fit::$_valueCount</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Xoffset">PHPExcel_Best_Fit::$_Xoffset</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_xValues">PHPExcel_Best_Fit::$_xValues</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yBestFitValues">PHPExcel_Best_Fit::$_yBestFitValues</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Yoffset">PHPExcel_Best_Fit::$_Yoffset</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yValues">PHPExcel_Best_Fit::$_yValues</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a> + </dt> + <dd> + Define the regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetBestFitType">PHPExcel_Best_Fit::getBestFitType()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCorrelation">PHPExcel_Best_Fit::getCorrelation()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCovariance">PHPExcel_Best_Fit::getCovariance()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetDFResiduals">PHPExcel_Best_Fit::getDFResiduals()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a> + </dt> + <dd> + Return the Equation of the best-fit line + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetError">PHPExcel_Best_Fit::getError()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetF">PHPExcel_Best_Fit::getF()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFit">PHPExcel_Best_Fit::getGoodnessOfFit()</a> + </dt> + <dd> + Return the goodness of fit for this regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFitPercent">PHPExcel_Best_Fit::getGoodnessOfFitPercent()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersect">PHPExcel_Best_Fit::getIntersect()</a> + </dt> + <dd> + Return the Value of X where it intersects Y = 0 + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersectSE">PHPExcel_Best_Fit::getIntersectSE()</a> + </dt> + <dd> + Return the standard error of the Intersect + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlope">PHPExcel_Best_Fit::getSlope()</a> + </dt> + <dd> + Return the Slope of the line + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlopeSE">PHPExcel_Best_Fit::getSlopeSE()</a> + </dt> + <dd> + Return the standard error of the Slope + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSRegression">PHPExcel_Best_Fit::getSSRegression()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSResiduals">PHPExcel_Best_Fit::getSSResiduals()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetStdevOfResiduals">PHPExcel_Best_Fit::getStdevOfResiduals()</a> + </dt> + <dd> + Return the standard deviation of the residuals for this regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a> + </dt> + <dd> + Return the X-Value for a specified value of Y + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a> + </dt> + <dd> + Return the Y-Value for a specified value of X + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetXValues">PHPExcel_Best_Fit::getXValues()</a> + </dt> + <dd> + Return the original set of X-Values + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetYBestFitValues">PHPExcel_Best_Fit::getYBestFitValues()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_calculateGoodnessOfFit">PHPExcel_Best_Fit::_calculateGoodnessOfFit()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_leastSquareFit">PHPExcel_Best_Fit::_leastSquareFit()</a> + </dt> + <dd> + + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 39]<br /> +PHPExcel_Exponential_Best_Fit<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_bestFitType"></a> + <p></p> + <h4>$_bestFitType = <span class="value">&nbsp;'exponential'</span></h4> + <p>[line 47]</p> + Algorithm type to use for best-fit (Name of this trend class)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + <tr> + <td><b>Overrides:</b>&nbsp;&nbsp;</td> + <td>Array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 142]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Exponential_Best_Fit __construct( +float[] +$yValues, [float[] +$xValues = array()], [boolean +$const = True])</code> + </td></tr></table> + </td></tr></table><br /> + + Define the regression and calculate the goodness of fit for a set of X and Y data values<br /><br /><br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a> (Define the regression)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>The set of Y-values for this regression</td> + </tr> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>The set of X-values for this regression</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEquation"></a> + <h3>method getEquation <span class="smalllinenumber">[line 78]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getEquation( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Equation of the best-fit line<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a> (Return the Equation of the best-fit line)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIntersect"></a> + <h3>method getIntersect <span class="smalllinenumber">[line 106]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getIntersect( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Value of X where it intersects Y = 0<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersect">PHPExcel_Best_Fit::getIntersect()</a> (Return the Value of X where it intersects Y = 0)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSlope"></a> + <h3>method getSlope <span class="smalllinenumber">[line 92]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSlope( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Slope of the line<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlope">PHPExcel_Best_Fit::getSlope()</a> (Return the Slope of the line)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfXForY"></a> + <h3>method getValueOfXForY <span class="smalllinenumber">[line 67]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfXForY( +float +$yValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the X-Value for a specified value of Y<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>X-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a> (Return the X-Value for a specified value of Y)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$yValue</b>&nbsp;&nbsp;</td> + <td>Y-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfYForX"></a> + <h3>method getValueOfYForX <span class="smalllinenumber">[line 56]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfYForX( +float +$xValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Y-Value for a specified value of X<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Y-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a> (Return the Y-Value for a specified value of X)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$xValue</b>&nbsp;&nbsp;</td> + <td>X-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html new file mode 100644 index 0000000..c6b041b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html @@ -0,0 +1,645 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Linear_Best_Fit</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Linear_Best_Fit</h1> +Source Location: /PHPExcel/Shared/trend/linearBestFitClass.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a> + | + --PHPExcel_Linear_Best_Fit</pre><br /> +<div class="description">PHPExcel_Linear_Best_Fit</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#var$_bestFitType">$_bestFitType</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetEquation">getEquation</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetValueOfXForY">getValueOfXForY</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetValueOfYForX">getValueOfYForX</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_adjustToZero">PHPExcel_Best_Fit::$_adjustToZero</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_correlation">PHPExcel_Best_Fit::$_correlation</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_covariance">PHPExcel_Best_Fit::$_covariance</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_DFResiduals">PHPExcel_Best_Fit::$_DFResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_error">PHPExcel_Best_Fit::$_error</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_F">PHPExcel_Best_Fit::$_F</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_goodnessOfFit">PHPExcel_Best_Fit::$_goodnessOfFit</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersect">PHPExcel_Best_Fit::$_intersect</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersectSE">PHPExcel_Best_Fit::$_intersectSE</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slope">PHPExcel_Best_Fit::$_slope</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slopeSE">PHPExcel_Best_Fit::$_slopeSE</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSRegression">PHPExcel_Best_Fit::$_SSRegression</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSResiduals">PHPExcel_Best_Fit::$_SSResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_stdevOfResiduals">PHPExcel_Best_Fit::$_stdevOfResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_valueCount">PHPExcel_Best_Fit::$_valueCount</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Xoffset">PHPExcel_Best_Fit::$_Xoffset</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_xValues">PHPExcel_Best_Fit::$_xValues</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yBestFitValues">PHPExcel_Best_Fit::$_yBestFitValues</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Yoffset">PHPExcel_Best_Fit::$_Yoffset</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yValues">PHPExcel_Best_Fit::$_yValues</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a> + </dt> + <dd> + Define the regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetBestFitType">PHPExcel_Best_Fit::getBestFitType()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCorrelation">PHPExcel_Best_Fit::getCorrelation()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCovariance">PHPExcel_Best_Fit::getCovariance()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetDFResiduals">PHPExcel_Best_Fit::getDFResiduals()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a> + </dt> + <dd> + Return the Equation of the best-fit line + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetError">PHPExcel_Best_Fit::getError()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetF">PHPExcel_Best_Fit::getF()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFit">PHPExcel_Best_Fit::getGoodnessOfFit()</a> + </dt> + <dd> + Return the goodness of fit for this regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFitPercent">PHPExcel_Best_Fit::getGoodnessOfFitPercent()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersect">PHPExcel_Best_Fit::getIntersect()</a> + </dt> + <dd> + Return the Value of X where it intersects Y = 0 + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersectSE">PHPExcel_Best_Fit::getIntersectSE()</a> + </dt> + <dd> + Return the standard error of the Intersect + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlope">PHPExcel_Best_Fit::getSlope()</a> + </dt> + <dd> + Return the Slope of the line + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlopeSE">PHPExcel_Best_Fit::getSlopeSE()</a> + </dt> + <dd> + Return the standard error of the Slope + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSRegression">PHPExcel_Best_Fit::getSSRegression()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSResiduals">PHPExcel_Best_Fit::getSSResiduals()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetStdevOfResiduals">PHPExcel_Best_Fit::getStdevOfResiduals()</a> + </dt> + <dd> + Return the standard deviation of the residuals for this regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a> + </dt> + <dd> + Return the X-Value for a specified value of Y + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a> + </dt> + <dd> + Return the Y-Value for a specified value of X + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetXValues">PHPExcel_Best_Fit::getXValues()</a> + </dt> + <dd> + Return the original set of X-Values + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetYBestFitValues">PHPExcel_Best_Fit::getYBestFitValues()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_calculateGoodnessOfFit">PHPExcel_Best_Fit::_calculateGoodnessOfFit()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_leastSquareFit">PHPExcel_Best_Fit::_leastSquareFit()</a> + </dt> + <dd> + + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 39]<br /> +PHPExcel_Linear_Best_Fit<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_bestFitType"></a> + <p></p> + <h4>$_bestFitType = <span class="value">&nbsp;'linear'</span></h4> + <p>[line 47]</p> + Algorithm type to use for best-fit (Name of this trend class)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + <tr> + <td><b>Overrides:</b>&nbsp;&nbsp;</td> + <td>Array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 105]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Linear_Best_Fit __construct( +float[] +$yValues, [float[] +$xValues = array()], [boolean +$const = True])</code> + </td></tr></table> + </td></tr></table><br /> + + Define the regression and calculate the goodness of fit for a set of X and Y data values<br /><br /><br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a> (Define the regression)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>The set of Y-values for this regression</td> + </tr> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>The set of X-values for this regression</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEquation"></a> + <h3>method getEquation <span class="smalllinenumber">[line 78]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getEquation( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Equation of the best-fit line<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a> (Return the Equation of the best-fit line)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfXForY"></a> + <h3>method getValueOfXForY <span class="smalllinenumber">[line 67]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfXForY( +float +$yValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the X-Value for a specified value of Y<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>X-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a> (Return the X-Value for a specified value of Y)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$yValue</b>&nbsp;&nbsp;</td> + <td>Y-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfYForX"></a> + <h3>method getValueOfYForX <span class="smalllinenumber">[line 56]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfYForX( +float +$xValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Y-Value for a specified value of X<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Y-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a> (Return the Y-Value for a specified value of X)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$xValue</b>&nbsp;&nbsp;</td> + <td>X-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html new file mode 100644 index 0000000..0048296 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html @@ -0,0 +1,645 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Logarithmic_Best_Fit</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Logarithmic_Best_Fit</h1> +Source Location: /PHPExcel/Shared/trend/logarithmicBestFitClass.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a> + | + --PHPExcel_Logarithmic_Best_Fit</pre><br /> +<div class="description">PHPExcel_Logarithmic_Best_Fit</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#var$_bestFitType">$_bestFitType</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetEquation">getEquation</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetValueOfXForY">getValueOfXForY</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetValueOfYForX">getValueOfYForX</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_adjustToZero">PHPExcel_Best_Fit::$_adjustToZero</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_correlation">PHPExcel_Best_Fit::$_correlation</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_covariance">PHPExcel_Best_Fit::$_covariance</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_DFResiduals">PHPExcel_Best_Fit::$_DFResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_error">PHPExcel_Best_Fit::$_error</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_F">PHPExcel_Best_Fit::$_F</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_goodnessOfFit">PHPExcel_Best_Fit::$_goodnessOfFit</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersect">PHPExcel_Best_Fit::$_intersect</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersectSE">PHPExcel_Best_Fit::$_intersectSE</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slope">PHPExcel_Best_Fit::$_slope</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slopeSE">PHPExcel_Best_Fit::$_slopeSE</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSRegression">PHPExcel_Best_Fit::$_SSRegression</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSResiduals">PHPExcel_Best_Fit::$_SSResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_stdevOfResiduals">PHPExcel_Best_Fit::$_stdevOfResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_valueCount">PHPExcel_Best_Fit::$_valueCount</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Xoffset">PHPExcel_Best_Fit::$_Xoffset</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_xValues">PHPExcel_Best_Fit::$_xValues</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yBestFitValues">PHPExcel_Best_Fit::$_yBestFitValues</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Yoffset">PHPExcel_Best_Fit::$_Yoffset</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yValues">PHPExcel_Best_Fit::$_yValues</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a> + </dt> + <dd> + Define the regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetBestFitType">PHPExcel_Best_Fit::getBestFitType()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCorrelation">PHPExcel_Best_Fit::getCorrelation()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCovariance">PHPExcel_Best_Fit::getCovariance()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetDFResiduals">PHPExcel_Best_Fit::getDFResiduals()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a> + </dt> + <dd> + Return the Equation of the best-fit line + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetError">PHPExcel_Best_Fit::getError()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetF">PHPExcel_Best_Fit::getF()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFit">PHPExcel_Best_Fit::getGoodnessOfFit()</a> + </dt> + <dd> + Return the goodness of fit for this regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFitPercent">PHPExcel_Best_Fit::getGoodnessOfFitPercent()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersect">PHPExcel_Best_Fit::getIntersect()</a> + </dt> + <dd> + Return the Value of X where it intersects Y = 0 + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersectSE">PHPExcel_Best_Fit::getIntersectSE()</a> + </dt> + <dd> + Return the standard error of the Intersect + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlope">PHPExcel_Best_Fit::getSlope()</a> + </dt> + <dd> + Return the Slope of the line + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlopeSE">PHPExcel_Best_Fit::getSlopeSE()</a> + </dt> + <dd> + Return the standard error of the Slope + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSRegression">PHPExcel_Best_Fit::getSSRegression()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSResiduals">PHPExcel_Best_Fit::getSSResiduals()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetStdevOfResiduals">PHPExcel_Best_Fit::getStdevOfResiduals()</a> + </dt> + <dd> + Return the standard deviation of the residuals for this regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a> + </dt> + <dd> + Return the X-Value for a specified value of Y + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a> + </dt> + <dd> + Return the Y-Value for a specified value of X + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetXValues">PHPExcel_Best_Fit::getXValues()</a> + </dt> + <dd> + Return the original set of X-Values + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetYBestFitValues">PHPExcel_Best_Fit::getYBestFitValues()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_calculateGoodnessOfFit">PHPExcel_Best_Fit::_calculateGoodnessOfFit()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_leastSquareFit">PHPExcel_Best_Fit::_leastSquareFit()</a> + </dt> + <dd> + + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 39]<br /> +PHPExcel_Logarithmic_Best_Fit<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_bestFitType"></a> + <p></p> + <h4>$_bestFitType = <span class="value">&nbsp;'logarithmic'</span></h4> + <p>[line 47]</p> + Algorithm type to use for best-fit (Name of this trend class)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + <tr> + <td><b>Overrides:</b>&nbsp;&nbsp;</td> + <td>Array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 114]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Logarithmic_Best_Fit __construct( +float[] +$yValues, [float[] +$xValues = array()], [boolean +$const = True])</code> + </td></tr></table> + </td></tr></table><br /> + + Define the regression and calculate the goodness of fit for a set of X and Y data values<br /><br /><br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a> (Define the regression)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>The set of Y-values for this regression</td> + </tr> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>The set of X-values for this regression</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEquation"></a> + <h3>method getEquation <span class="smalllinenumber">[line 78]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getEquation( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Equation of the best-fit line<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a> (Return the Equation of the best-fit line)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfXForY"></a> + <h3>method getValueOfXForY <span class="smalllinenumber">[line 67]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfXForY( +float +$yValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the X-Value for a specified value of Y<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>X-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a> (Return the X-Value for a specified value of Y)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$yValue</b>&nbsp;&nbsp;</td> + <td>Y-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfYForX"></a> + <h3>method getValueOfYForX <span class="smalllinenumber">[line 56]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfYForX( +float +$xValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Y-Value for a specified value of X<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Y-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a> (Return the Y-Value for a specified value of X)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$xValue</b>&nbsp;&nbsp;</td> + <td>X-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html new file mode 100644 index 0000000..a9ef665 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html @@ -0,0 +1,776 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Polynomial_Best_Fit</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Polynomial_Best_Fit</h1> +Source Location: /PHPExcel/Shared/trend/polynomialBestFitClass.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a> + | + --PHPExcel_Polynomial_Best_Fit</pre><br /> +<div class="description">PHPExcel_Polynomial_Best_Fit</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#var$_bestFitType">$_bestFitType</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#var$_order">$_order</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetCoefficients">getCoefficients</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetEquation">getEquation</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetOrder">getOrder</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetSlope">getSlope</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetValueOfXForY">getValueOfXForY</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetValueOfYForX">getValueOfYForX</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_adjustToZero">PHPExcel_Best_Fit::$_adjustToZero</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_correlation">PHPExcel_Best_Fit::$_correlation</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_covariance">PHPExcel_Best_Fit::$_covariance</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_DFResiduals">PHPExcel_Best_Fit::$_DFResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_error">PHPExcel_Best_Fit::$_error</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_F">PHPExcel_Best_Fit::$_F</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_goodnessOfFit">PHPExcel_Best_Fit::$_goodnessOfFit</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersect">PHPExcel_Best_Fit::$_intersect</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersectSE">PHPExcel_Best_Fit::$_intersectSE</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slope">PHPExcel_Best_Fit::$_slope</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slopeSE">PHPExcel_Best_Fit::$_slopeSE</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSRegression">PHPExcel_Best_Fit::$_SSRegression</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSResiduals">PHPExcel_Best_Fit::$_SSResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_stdevOfResiduals">PHPExcel_Best_Fit::$_stdevOfResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_valueCount">PHPExcel_Best_Fit::$_valueCount</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Xoffset">PHPExcel_Best_Fit::$_Xoffset</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_xValues">PHPExcel_Best_Fit::$_xValues</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yBestFitValues">PHPExcel_Best_Fit::$_yBestFitValues</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Yoffset">PHPExcel_Best_Fit::$_Yoffset</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yValues">PHPExcel_Best_Fit::$_yValues</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a> + </dt> + <dd> + Define the regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetBestFitType">PHPExcel_Best_Fit::getBestFitType()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCorrelation">PHPExcel_Best_Fit::getCorrelation()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCovariance">PHPExcel_Best_Fit::getCovariance()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetDFResiduals">PHPExcel_Best_Fit::getDFResiduals()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a> + </dt> + <dd> + Return the Equation of the best-fit line + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetError">PHPExcel_Best_Fit::getError()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetF">PHPExcel_Best_Fit::getF()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFit">PHPExcel_Best_Fit::getGoodnessOfFit()</a> + </dt> + <dd> + Return the goodness of fit for this regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFitPercent">PHPExcel_Best_Fit::getGoodnessOfFitPercent()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersect">PHPExcel_Best_Fit::getIntersect()</a> + </dt> + <dd> + Return the Value of X where it intersects Y = 0 + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersectSE">PHPExcel_Best_Fit::getIntersectSE()</a> + </dt> + <dd> + Return the standard error of the Intersect + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlope">PHPExcel_Best_Fit::getSlope()</a> + </dt> + <dd> + Return the Slope of the line + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlopeSE">PHPExcel_Best_Fit::getSlopeSE()</a> + </dt> + <dd> + Return the standard error of the Slope + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSRegression">PHPExcel_Best_Fit::getSSRegression()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSResiduals">PHPExcel_Best_Fit::getSSResiduals()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetStdevOfResiduals">PHPExcel_Best_Fit::getStdevOfResiduals()</a> + </dt> + <dd> + Return the standard deviation of the residuals for this regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a> + </dt> + <dd> + Return the X-Value for a specified value of Y + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a> + </dt> + <dd> + Return the Y-Value for a specified value of X + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetXValues">PHPExcel_Best_Fit::getXValues()</a> + </dt> + <dd> + Return the original set of X-Values + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetYBestFitValues">PHPExcel_Best_Fit::getYBestFitValues()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_calculateGoodnessOfFit">PHPExcel_Best_Fit::_calculateGoodnessOfFit()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_leastSquareFit">PHPExcel_Best_Fit::_leastSquareFit()</a> + </dt> + <dd> + + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 40]<br /> +PHPExcel_Polynomial_Best_Fit<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_bestFitType"></a> + <p></p> + <h4>$_bestFitType = <span class="value">&nbsp;'polynomial'</span></h4> + <p>[line 48]</p> + Algorithm type to use for best-fit (Name of this trend class)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + <tr> + <td><b>Overrides:</b>&nbsp;&nbsp;</td> + <td>Array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_order"></a> + <p></p> + <h4>$_order = <span class="value">&nbsp;0</span></h4> + <p>[line 56]</p> + Polynomial order<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 209]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Polynomial_Best_Fit __construct( +int +$order, float[] +$yValues, [float[] +$xValues = array()], [boolean +$const = True])</code> + </td></tr></table> + </td></tr></table><br /> + + Define the regression and calculate the goodness of fit for a set of X and Y data values<br /><br /><br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a> (Define the regression)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$order</b>&nbsp;&nbsp;</td> + <td>Order of Polynomial for this regression</td> + </tr> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>The set of Y-values for this regression</td> + </tr> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>The set of X-values for this regression</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCoefficients"></a> + <h3>method getCoefficients <span class="smalllinenumber">[line 139]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getCoefficients( +[ +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEquation"></a> + <h3>method getEquation <span class="smalllinenumber">[line 104]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getEquation( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Equation of the best-fit line<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a> (Return the Equation of the best-fit line)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOrder"></a> + <h3>method getOrder <span class="smalllinenumber">[line 64]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getOrder( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the order of this polynomial<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSlope"></a> + <h3>method getSlope <span class="smalllinenumber">[line 127]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSlope( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Slope of the line<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlope">PHPExcel_Best_Fit::getSlope()</a> (Return the Slope of the line)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfXForY"></a> + <h3>method getValueOfXForY <span class="smalllinenumber">[line 93]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfXForY( +float +$yValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the X-Value for a specified value of Y<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>X-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a> (Return the X-Value for a specified value of Y)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$yValue</b>&nbsp;&nbsp;</td> + <td>Y-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfYForX"></a> + <h3>method getValueOfYForX <span class="smalllinenumber">[line 75]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfYForX( +float +$xValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Y-Value for a specified value of X<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Y-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a> (Return the Y-Value for a specified value of X)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$xValue</b>&nbsp;&nbsp;</td> + <td>X-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:28 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html new file mode 100644 index 0000000..62f4dba --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html @@ -0,0 +1,682 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Power_Best_Fit</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Power_Best_Fit</h1> +Source Location: /PHPExcel/Shared/trend/powerBestFitClass.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a> + | + --PHPExcel_Power_Best_Fit</pre><br /> +<div class="description">PHPExcel_Power_Best_Fit</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#var$_bestFitType">$_bestFitType</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetEquation">getEquation</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetIntersect">getIntersect</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetValueOfXForY">getValueOfXForY</a></li> + <li><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetValueOfYForX">getValueOfYForX</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_adjustToZero">PHPExcel_Best_Fit::$_adjustToZero</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_correlation">PHPExcel_Best_Fit::$_correlation</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_covariance">PHPExcel_Best_Fit::$_covariance</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_DFResiduals">PHPExcel_Best_Fit::$_DFResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_error">PHPExcel_Best_Fit::$_error</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_F">PHPExcel_Best_Fit::$_F</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_goodnessOfFit">PHPExcel_Best_Fit::$_goodnessOfFit</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersect">PHPExcel_Best_Fit::$_intersect</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersectSE">PHPExcel_Best_Fit::$_intersectSE</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slope">PHPExcel_Best_Fit::$_slope</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slopeSE">PHPExcel_Best_Fit::$_slopeSE</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSRegression">PHPExcel_Best_Fit::$_SSRegression</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSResiduals">PHPExcel_Best_Fit::$_SSResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_stdevOfResiduals">PHPExcel_Best_Fit::$_stdevOfResiduals</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_valueCount">PHPExcel_Best_Fit::$_valueCount</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Xoffset">PHPExcel_Best_Fit::$_Xoffset</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_xValues">PHPExcel_Best_Fit::$_xValues</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yBestFitValues">PHPExcel_Best_Fit::$_yBestFitValues</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Yoffset">PHPExcel_Best_Fit::$_Yoffset</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yValues">PHPExcel_Best_Fit::$_yValues</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a> + </dt> + <dd> + Define the regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetBestFitType">PHPExcel_Best_Fit::getBestFitType()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCorrelation">PHPExcel_Best_Fit::getCorrelation()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCovariance">PHPExcel_Best_Fit::getCovariance()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetDFResiduals">PHPExcel_Best_Fit::getDFResiduals()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a> + </dt> + <dd> + Return the Equation of the best-fit line + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetError">PHPExcel_Best_Fit::getError()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetF">PHPExcel_Best_Fit::getF()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFit">PHPExcel_Best_Fit::getGoodnessOfFit()</a> + </dt> + <dd> + Return the goodness of fit for this regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFitPercent">PHPExcel_Best_Fit::getGoodnessOfFitPercent()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersect">PHPExcel_Best_Fit::getIntersect()</a> + </dt> + <dd> + Return the Value of X where it intersects Y = 0 + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersectSE">PHPExcel_Best_Fit::getIntersectSE()</a> + </dt> + <dd> + Return the standard error of the Intersect + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlope">PHPExcel_Best_Fit::getSlope()</a> + </dt> + <dd> + Return the Slope of the line + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlopeSE">PHPExcel_Best_Fit::getSlopeSE()</a> + </dt> + <dd> + Return the standard error of the Slope + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSRegression">PHPExcel_Best_Fit::getSSRegression()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSResiduals">PHPExcel_Best_Fit::getSSResiduals()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetStdevOfResiduals">PHPExcel_Best_Fit::getStdevOfResiduals()</a> + </dt> + <dd> + Return the standard deviation of the residuals for this regression + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a> + </dt> + <dd> + Return the X-Value for a specified value of Y + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a> + </dt> + <dd> + Return the Y-Value for a specified value of X + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetXValues">PHPExcel_Best_Fit::getXValues()</a> + </dt> + <dd> + Return the original set of X-Values + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetYBestFitValues">PHPExcel_Best_Fit::getYBestFitValues()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_calculateGoodnessOfFit">PHPExcel_Best_Fit::_calculateGoodnessOfFit()</a> + </dt> + <dd> + + </dd> + <dt> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_leastSquareFit">PHPExcel_Best_Fit::_leastSquareFit()</a> + </dt> + <dd> + + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 39]<br /> +PHPExcel_Power_Best_Fit<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_bestFitType"></a> + <p></p> + <h4>$_bestFitType = <span class="value">&nbsp;'power'</span></h4> + <p>[line 47]</p> + Algorithm type to use for best-fit (Name of this trend class)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + <tr> + <td><b>Overrides:</b>&nbsp;&nbsp;</td> + <td>Array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 136]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Power_Best_Fit __construct( +float[] +$yValues, [float[] +$xValues = array()], [boolean +$const = True])</code> + </td></tr></table> + </td></tr></table><br /> + + Define the regression and calculate the goodness of fit for a set of X and Y data values<br /><br /><br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a> (Define the regression)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td>The set of Y-values for this regression</td> + </tr> + <tr> + <td class="type">float[]&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td>The set of X-values for this regression</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEquation"></a> + <h3>method getEquation <span class="smalllinenumber">[line 78]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getEquation( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Equation of the best-fit line<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a> (Return the Equation of the best-fit line)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIntersect"></a> + <h3>method getIntersect <span class="smalllinenumber">[line 92]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getIntersect( +[int +$dp = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Value of X where it intersects Y = 0<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersect">PHPExcel_Best_Fit::getIntersect()</a> (Return the Value of X where it intersects Y = 0)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$dp</b>&nbsp;&nbsp;</td> + <td>Number of places of decimal precision to display</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfXForY"></a> + <h3>method getValueOfXForY <span class="smalllinenumber">[line 67]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfXForY( +float +$yValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the X-Value for a specified value of Y<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>X-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a> (Return the X-Value for a specified value of Y)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$yValue</b>&nbsp;&nbsp;</td> + <td>Y-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValueOfYForX"></a> + <h3>method getValueOfYForX <span class="smalllinenumber">[line 56]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>float getValueOfYForX( +float +$xValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the Y-Value for a specified value of X<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Y-Value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a> (Return the Y-Value for a specified value of X)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$xValue</b>&nbsp;&nbsp;</td> + <td>X-Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:28 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html new file mode 100644 index 0000000..43577cd --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html @@ -0,0 +1,133 @@ +<html> +<head> +<title>Docs for page bestFitClass.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: bestFitClass.php</h1> +Source Location: /PHPExcel/Shared/trend/bestFitClass.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a></dt> + <dd>PHPExcel_Best_Fit</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:15 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html new file mode 100644 index 0000000..0a92f3d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html @@ -0,0 +1,152 @@ +<html> +<head> +<title>Docs for page exponentialBestFitClass.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: exponentialBestFitClass.php</h1> +Source Location: /PHPExcel/Shared/trend/exponentialBestFitClass.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a></dt> + <dd>PHPExcel_Exponential_Best_Fit</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/trend/bestFitClass.php'</a>) [line 29]<br /> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html new file mode 100644 index 0000000..c3342ba --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html @@ -0,0 +1,152 @@ +<html> +<head> +<title>Docs for page linearBestFitClass.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: linearBestFitClass.php</h1> +Source Location: /PHPExcel/Shared/trend/linearBestFitClass.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a></dt> + <dd>PHPExcel_Linear_Best_Fit</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/trend/bestFitClass.php'</a>) [line 29]<br /> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html new file mode 100644 index 0000000..c97ff3d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html @@ -0,0 +1,152 @@ +<html> +<head> +<title>Docs for page logarithmicBestFitClass.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: logarithmicBestFitClass.php</h1> +Source Location: /PHPExcel/Shared/trend/logarithmicBestFitClass.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a></dt> + <dd>PHPExcel_Logarithmic_Best_Fit</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/trend/bestFitClass.php'</a>) [line 29]<br /> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html new file mode 100644 index 0000000..437d271 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html @@ -0,0 +1,153 @@ +<html> +<head> +<title>Docs for page polynomialBestFitClass.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: polynomialBestFitClass.php</h1> +Source Location: /PHPExcel/Shared/trend/polynomialBestFitClass.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a></dt> + <dd>PHPExcel_Polynomial_Best_Fit</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/trend/bestFitClass.php'</a>) [line 29]<br /> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +require_once(<a href="../JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/JAMA/Matrix.php'</a>) [line 30]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:28 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html new file mode 100644 index 0000000..ba18149 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html @@ -0,0 +1,152 @@ +<html> +<head> +<title>Docs for page powerBestFitClass.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: powerBestFitClass.php</h1> +Source Location: /PHPExcel/Shared/trend/powerBestFitClass.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a></dt> + <dd>PHPExcel_Power_Best_Fit</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/trend/bestFitClass.php'</a>) [line 29]<br /> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:28 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html new file mode 100644 index 0000000..6db0ef7 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html @@ -0,0 +1,156 @@ +<html> +<head> +<title>Docs for page trendClass.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: trendClass.php</h1> +Source Location: /PHPExcel/Shared/trend/trendClass.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a></dt> + <dd>PHPExcel_trendClass</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/trend/linearBestFitClass.php'</a>) [line 29]<br /> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +require_once(<a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/trend/logarithmicBestFitClass.php'</a>) [line 30]<br /> +require_once(<a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/trend/exponentialBestFitClass.php'</a>) [line 31]<br /> +require_once(<a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/trend/powerBestFitClass.php'</a>) [line 32]<br /> +require_once(<a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/trend/polynomialBestFitClass.php'</a>) [line 33]<br /> +</div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_notes/dwsync.xml new file mode 100644 index 0000000..dce1ca4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/_notes/dwsync.xml @@ -0,0 +1,101 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Best_Fit.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Exponential_Best_Fit.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Linear_Best_Fit.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Logarithmic_Best_Fit.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Polynomial_Best_Fit.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Power_Best_Fit.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="trendClass.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---bestFitClass.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---exponentialBestFitClass.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---linearBestFitClass.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---polynomialBestFitClass.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---powerBestFitClass.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---trendClass.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Logarithmic_Best_Fit.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---trendClass.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Polynomial_Best_Fit.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---powerBestFitClass.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Exponential_Best_Fit.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---bestFitClass.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Linear_Best_Fit.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---polynomialBestFitClass.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="trendClass.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Power_Best_Fit.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---exponentialBestFitClass.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Best_Fit.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---linearBestFitClass.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851789999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Logarithmic_Best_Fit.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---trendClass.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Polynomial_Best_Fit.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---powerBestFitClass.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Exponential_Best_Fit.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---bestFitClass.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Linear_Best_Fit.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---polynomialBestFitClass.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="trendClass.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Power_Best_Fit.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---exponentialBestFitClass.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Best_Fit.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---trend---linearBestFitClass.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851789999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Logarithmic_Best_Fit.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560348129108" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---trendClass.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560348539170" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Polynomial_Best_Fit.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560349087639" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---powerBestFitClass.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560349672034" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Exponential_Best_Fit.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560350141422" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---bestFitClass.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560350583960" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560351048640" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Linear_Best_Fit.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560351509073" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---polynomialBestFitClass.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560351959220" remote="131260197000000000" Dst="1" /> +<file name="trendClass.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560352429350" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Power_Best_Fit.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560352876844" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---exponentialBestFitClass.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560353327632" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Best_Fit.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560353890219" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---linearBestFitClass.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560354357023" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Logarithmic_Best_Fit.html" server="62.244.88.21/amashow/" local="131414752694881253" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---trendClass.php.html" server="62.244.88.21/amashow/" local="131414752695311064" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Polynomial_Best_Fit.html" server="62.244.88.21/amashow/" local="131414752695749921" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---powerBestFitClass.php.html" server="62.244.88.21/amashow/" local="131414752695952183" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Exponential_Best_Fit.html" server="62.244.88.21/amashow/" local="131414752696432569" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---bestFitClass.php.html" server="62.244.88.21/amashow/" local="131414752696646783" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html" server="62.244.88.21/amashow/" local="131414752697066864" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Linear_Best_Fit.html" server="62.244.88.21/amashow/" local="131414752697541422" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---polynomialBestFitClass.php.html" server="62.244.88.21/amashow/" local="131414752697971336" remote="131414681400000000" Dst="2" /> +<file name="trendClass.html" server="62.244.88.21/amashow/" local="131414752698180967" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Power_Best_Fit.html" server="62.244.88.21/amashow/" local="131414752698636958" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---exponentialBestFitClass.php.html" server="62.244.88.21/amashow/" local="131414752698858097" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Best_Fit.html" server="62.244.88.21/amashow/" local="131414752699424813" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---linearBestFitClass.php.html" server="62.244.88.21/amashow/" local="131414752699649977" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---exponentialBestFitClass.php.html" server="62.244.88.21/deciday/" local="131919461613823735" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Power_Best_Fit.html" server="62.244.88.21/deciday/" local="131919461614107968" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Exponential_Best_Fit.html" server="62.244.88.21/deciday/" local="131919461609051698" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Logarithmic_Best_Fit.html" server="62.244.88.21/deciday/" local="131919461610474259" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---linearBestFitClass.php.html" server="62.244.88.21/deciday/" local="131919461613198493" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html" server="62.244.88.21/deciday/" local="131919461614849523" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Linear_Best_Fit.html" server="62.244.88.21/deciday/" local="131919461609487654" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---bestFitClass.php.html" server="62.244.88.21/deciday/" local="131919461611649240" remote="131826018000000000" Dst="1" /> +<file name="trendClass.html" server="62.244.88.21/deciday/" local="131919461616892366" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Polynomial_Best_Fit.html" server="62.244.88.21/deciday/" local="131919461610650027" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---polynomialBestFitClass.php.html" server="62.244.88.21/deciday/" local="131919461615452403" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---trendClass.php.html" server="62.244.88.21/deciday/" local="131919461616154616" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Shared---trend---powerBestFitClass.php.html" server="62.244.88.21/deciday/" local="131919461615625821" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Best_Fit.html" server="62.244.88.21/deciday/" local="131919461608859554" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Exponential_Best_Fit.html" server="62.244.88.21/deciday_18/" local="131414752696432569" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Linear_Best_Fit.html" server="62.244.88.21/deciday_18/" local="131414752697541422" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Best_Fit.html" server="62.244.88.21/deciday_18/" local="131414752699424813" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Logarithmic_Best_Fit.html" server="62.244.88.21/deciday_18/" local="131414752694881253" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Polynomial_Best_Fit.html" server="62.244.88.21/deciday_18/" local="131414752695749921" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Power_Best_Fit.html" server="62.244.88.21/deciday_18/" local="131414752698636958" remote="131825946000000000" Dst="2" /> +<file name="trendClass.html" server="62.244.88.21/deciday_18/" local="131414752698180967" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---bestFitClass.php.html" server="62.244.88.21/deciday_18/" local="131414752696646783" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---exponentialBestFitClass.php.html" server="62.244.88.21/deciday_18/" local="131414752698858097" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---linearBestFitClass.php.html" server="62.244.88.21/deciday_18/" local="131414752699649977" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html" server="62.244.88.21/deciday_18/" local="131414752697066864" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---polynomialBestFitClass.php.html" server="62.244.88.21/deciday_18/" local="131414752697971336" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---powerBestFitClass.php.html" server="62.244.88.21/deciday_18/" local="131414752695952183" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---trend---trendClass.php.html" server="62.244.88.21/deciday_18/" local="131414752695311064" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/trendClass.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/trendClass.html new file mode 100644 index 0000000..c15270d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_Trend/trendClass.html @@ -0,0 +1,326 @@ +<html> +<head> +<title>Docs For Class trendClass</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="../PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="../PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: trendClass</h1> +Source Location: /PHPExcel/Shared/trend/trendClass.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_trendClass</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#constTREND_BEST_FIT">TREND_BEST_FIT</a></li> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#constTREND_BEST_FIT_NO_POLY">TREND_BEST_FIT_NO_POLY</a></li> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#constTREND_EXPONENTIAL">TREND_EXPONENTIAL</a></li> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#constTREND_LINEAR">TREND_LINEAR</a></li> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#constTREND_LOGARITHMIC">TREND_LOGARITHMIC</a></li> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_2">TREND_POLYNOMIAL_2</a></li> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_3">TREND_POLYNOMIAL_3</a></li> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_4">TREND_POLYNOMIAL_4</a></li> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_5">TREND_POLYNOMIAL_5</a></li> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_6">TREND_POLYNOMIAL_6</a></li> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#constTREND_POWER">TREND_POWER</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_Trend/trendClass.html#methodcalculate">calculate</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 43]<br /> +PHPExcel_trendClass<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodcalculate"></a> + <h3>static method calculate <span class="smalllinenumber">[line 87]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static void calculate( +[ +$trendType = self::TREND_BEST_FIT], +$yValues, [ +$xValues = array()], [ +$const = True])</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$trendType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$yValues</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$xValues</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$const</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constTREND_BEST_FIT"></a> + <p></p> + <h4>TREND_BEST_FIT = <span class="value">&nbsp;'Bestfit'</span></h4> + <p>[line 54]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREND_BEST_FIT_NO_POLY"></a> + <p></p> + <h4>TREND_BEST_FIT_NO_POLY = <span class="value">&nbsp;'Bestfit_no_Polynomials'</span></h4> + <p>[line 55]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREND_EXPONENTIAL"></a> + <p></p> + <h4>TREND_EXPONENTIAL = <span class="value">&nbsp;'Exponential'</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREND_LINEAR"></a> + <p></p> + <h4>TREND_LINEAR = <span class="value">&nbsp;'Linear'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREND_LOGARITHMIC"></a> + <p></p> + <h4>TREND_LOGARITHMIC = <span class="value">&nbsp;'Logarithmic'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREND_POLYNOMIAL_2"></a> + <p></p> + <h4>TREND_POLYNOMIAL_2 = <span class="value">&nbsp;'Polynomial_2'</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREND_POLYNOMIAL_3"></a> + <p></p> + <h4>TREND_POLYNOMIAL_3 = <span class="value">&nbsp;'Polynomial_3'</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREND_POLYNOMIAL_4"></a> + <p></p> + <h4>TREND_POLYNOMIAL_4 = <span class="value">&nbsp;'Polynomial_4'</span></h4> + <p>[line 51]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREND_POLYNOMIAL_5"></a> + <p></p> + <h4>TREND_POLYNOMIAL_5 = <span class="value">&nbsp;'Polynomial_5'</span></h4> + <p>[line 52]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREND_POLYNOMIAL_6"></a> + <p></p> + <h4>TREND_POLYNOMIAL_6 = <span class="value">&nbsp;'Polynomial_6'</span></h4> + <p>[line 53]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constTREND_POWER"></a> + <p></p> + <h4>TREND_POWER = <span class="value">&nbsp;'Power'</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html new file mode 100644 index 0000000..9d5da77 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html @@ -0,0 +1,287 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Shared_ZipArchive</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_ZipArchive</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_ZipArchive.html" class="menu">class tree: PHPExcel_Shared_ZipArchive</a> ] + [ <a href="../elementindex_PHPExcel_Shared_ZipArchive.html" class="menu">index: PHPExcel_Shared_ZipArchive</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_ZipArchive/_PHPExcel---Shared---ZipArchive.php.html"> ZipArchive.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Shared_ZipArchive</h1> +Source Location: /PHPExcel/Shared/ZipArchive.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_ZipArchive</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#constCREATE">CREATE</a></li> + <li><a href="../PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#constOVERWRITE">OVERWRITE</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#methodaddFromString">addFromString</a></li> + <li><a href="../PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#methodclose">close</a></li> + <li><a href="../PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#methodopen">open</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 41]<br /> +PHPExcel_Shared_ZipArchive<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodaddFromString"></a> + <h3>method addFromString <span class="smalllinenumber">[line 95]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void addFromString( +string +$localname, string +$contents)</code> + </td></tr></table> + </td></tr></table><br /> + + Add a new file to the zip archive from a string of raw data.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$localname</b>&nbsp;&nbsp;</td> + <td>Directory/Name of the file to add to the zip archive</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$contents</b>&nbsp;&nbsp;</td> + <td>String of data to add to the zip archive</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodclose"></a> + <h3>method close <span class="smalllinenumber">[line 84]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void close( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Close this zip archive<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodopen"></a> + <h3>method open <span class="smalllinenumber">[line 70]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean open( +string +$fileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Open a new zip archive<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$fileName</b>&nbsp;&nbsp;</td> + <td>Filename for the zip archive</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constCREATE"></a> + <p></p> + <h4>CREATE = <span class="value">&nbsp;'CREATE'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOVERWRITE"></a> + <p></p> + <h4>OVERWRITE = <span class="value">&nbsp;'OVERWRITE'</span></h4> + <p>[line 45]</p> + constants<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_ZipArchive/_PHPExcel---Shared---ZipArchive.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_ZipArchive/_PHPExcel---Shared---ZipArchive.php.html new file mode 100644 index 0000000..ec96abe --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_ZipArchive/_PHPExcel---Shared---ZipArchive.php.html @@ -0,0 +1,147 @@ +<html> +<head> +<title>Docs for page ZipArchive.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_ZipArchive</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Shared_ZipArchive.html" class="menu">class tree: PHPExcel_Shared_ZipArchive</a> ] + [ <a href="../elementindex_PHPExcel_Shared_ZipArchive.html" class="menu">index: PHPExcel_Shared_ZipArchive</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_ZipArchive/_PHPExcel---Shared---ZipArchive.php.html"> ZipArchive.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: ZipArchive.php</h1> +Source Location: /PHPExcel/Shared/ZipArchive.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a></dt> + <dd>PHPExcel_Shared_ZipArchive</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once(<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html">PHPEXCEL_ROOT.'PHPExcel/Shared/PCLZip/pclzip.lib.php'</a>) [line 31]<br /> +</div> +<br /><br /> +<br /><br /> + <hr /> + <a name="definePCLZIP_TEMPORARY_DIR"></a> + <h3>PCLZIP_TEMPORARY_DIR <span class="smalllinenumber">[line 29]</span></h3> + <div class="tags"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PCLZIP_TEMPORARY_DIR = PHPExcel_Shared_File::sys_get_temp_dir()</code> + </td></tr></table> + </td></tr></table> + + PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> + <br /> + </div> + <div class="top">[ <a href="#top">Top</a> ]</div><br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_ZipArchive/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_ZipArchive/_notes/dwsync.xml new file mode 100644 index 0000000..3297ab5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Shared_ZipArchive/_notes/dwsync.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Shared_ZipArchive.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---ZipArchive.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---ZipArchive.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Shared_ZipArchive.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Shared---ZipArchive.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Shared_ZipArchive.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Shared---ZipArchive.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560385826503" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Shared_ZipArchive.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560386247383" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Shared---ZipArchive.php.html" server="62.244.88.21/amashow/" local="131414752724820373" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/amashow/" local="131414752725184514" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Shared---ZipArchive.php.html" server="62.244.88.21/deciday/" local="131919461617407873" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/deciday/" local="131919461617067993" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/deciday_18/" local="131414752725184514" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Shared---ZipArchive.php.html" server="62.244.88.21/deciday_18/" local="131414752724820373" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style.html new file mode 100644 index 0000000..aa290d9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style.html @@ -0,0 +1,877 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Style</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Style</h1> +Source Location: /PHPExcel/Style.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Style</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodapplyFromArray">applyFromArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodbindParent">bindParent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetActiveCell">getActiveCell</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetActiveSheet">getActiveSheet</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetAlignment">getAlignment</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetBorders">getBorders</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetConditionalStyles">getConditionalStyles</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetFill">getFill</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetFont">getFont</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetIndex">getIndex</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetIsSupervisor">getIsSupervisor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetNumberFormat">getNumberFormat</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetParent">getParent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetProtection">getProtection</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetSelectedCells">getSelectedCells</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetSharedComponent">getSharedComponent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodsetConditionalStyles">setConditionalStyles</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodsetFont">setFont</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#methodsetIndex">setIndex</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 118]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style __construct( +[boolean +$isSupervisor = false], [boolean +$isConditional = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isSupervisor</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a supervisor or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isConditional</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a conditional style or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodapplyFromArray"></a> + <h3>method applyFromArray <span class="smalllinenumber">[line 266]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> applyFromArray( +[array +$pStyles = null], [boolean +$pAdvanced = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Apply styles from array<br /><br /><p><ol><li><div class="src-line">&nbsp;<span class="src-var">$objPHPExcel</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style.html#methodgetActiveSheet">getActiveSheet</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getStyle</span><span class="src-sym">(</span><span class="src-str">'B2'</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style.html#methodapplyFromArray">applyFromArray</a><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'font'&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'name'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-str">'Arial'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'bold'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-id">true</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'italic'&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-id">false</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'underline'&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a></span><span class="src-sym">::</span><span class="src-id">UNDERLINE_DOUBLE</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'strike'&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-id">false</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'color'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'rgb'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'808080'</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'borders'&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'bottom'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'style'&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a></span><span class="src-sym">::</span><span class="src-id">BORDER_DASHDOT</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'color'&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'rgb'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'808080'</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'top'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'style'&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a></span><span class="src-sym">::</span><span class="src-id">BORDER_DASHDOT</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'color'&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'rgb'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'808080'</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pStyles</b>&nbsp;&nbsp;</td> + <td>Array containing style information</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pAdvanced</b>&nbsp;&nbsp;</td> + <td>Advanced mode for setting borders.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbindParent"></a> + <h3>method bindParent <span class="smalllinenumber">[line 149]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> bindParent( +<a href="../PHPExcel/PHPExcel.html">PHPExcel</a> +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Bind parent. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveCell"></a> + <h3>method getActiveCell <span class="smalllinenumber">[line 212]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getActiveCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveSheet"></a> + <h3>method getActiveSheet <span class="smalllinenumber">[line 190]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getActiveSheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active sheet. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAlignment"></a> + <h3>method getAlignment <span class="smalllinenumber">[line 584]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a> getAlignment( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Alignment<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBorders"></a> + <h3>method getBorders <span class="smalllinenumber">[line 575]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a> getBorders( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Borders<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetConditionalStyles"></a> + <h3>method getConditionalStyles <span class="smalllinenumber">[line 602]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Conditional[] getConditionalStyles( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Conditional Styles. Only used on supervisor.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFill"></a> + <h3>method getFill <span class="smalllinenumber">[line 545]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a> getFill( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Fill<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFont"></a> + <h3>method getFont <span class="smalllinenumber">[line 554]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> getFont( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 633]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIndex"></a> + <h3>method getIndex <span class="smalllinenumber">[line 656]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get own index in style collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIsSupervisor"></a> + <h3>method getIsSupervisor <span class="smalllinenumber">[line 160]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIsSupervisor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is this a supervisor or a real style component?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetNumberFormat"></a> + <h3>method getNumberFormat <span class="smalllinenumber">[line 593]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a> getNumberFormat( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Number Format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetParent"></a> + <h3>method getParent <span class="smalllinenumber">[line 222]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> getParent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get parent. Only used for style supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetProtection"></a> + <h3>method getProtection <span class="smalllinenumber">[line 624]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a> getProtection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Protection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectedCells"></a> + <h3>method getSelectedCells <span class="smalllinenumber">[line 201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSelectedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSharedComponent"></a> + <h3>method getSharedComponent <span class="smalllinenumber">[line 171]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> getSharedComponent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shared style component for the currently active cell in currently active sheet.<br /><br /><p>Only used for style supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetConditionalStyles"></a> + <h3>method setConditionalStyles <span class="smalllinenumber">[line 612]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> setConditionalStyles( +[PHPExcel_Style_Conditional[] +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Conditional Styles. Only used on supervisor.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">PHPExcel_Style_Conditional[]&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Array of condtional styles</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFont"></a> + <h3>method setFont <span class="smalllinenumber">[line 564]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> setFont( +<a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> +$font)</code> + </td></tr></table> + </td></tr></table><br /> + + Set font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$font</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetIndex"></a> + <h3>method setIndex <span class="smalllinenumber">[line 666]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setIndex( +int +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set own index in style collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 674]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:06 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Alignment.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Alignment.html new file mode 100644 index 0000000..07fd142 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Alignment.html @@ -0,0 +1,1014 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Style_Alignment</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Style_Alignment</h1> +Source Location: /PHPExcel/Style/Alignment.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Style_Alignment</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_CENTER">HORIZONTAL_CENTER</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_CENTER_CONTINUOUS">HORIZONTAL_CENTER_CONTINUOUS</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_GENERAL">HORIZONTAL_GENERAL</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_JUSTIFY">HORIZONTAL_JUSTIFY</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_LEFT">HORIZONTAL_LEFT</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_RIGHT">HORIZONTAL_RIGHT</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_BOTTOM">VERTICAL_BOTTOM</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_CENTER">VERTICAL_CENTER</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_JUSTIFY">VERTICAL_JUSTIFY</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_TOP">VERTICAL_TOP</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodapplyFromArray">applyFromArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodbindParent">bindParent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetActiveCell">getActiveCell</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetActiveSheet">getActiveSheet</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetHorizontal">getHorizontal</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetIndent">getIndent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetIsSupervisor">getIsSupervisor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetSelectedCells">getSelectedCells</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetSharedComponent">getSharedComponent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetShrinkToFit">getShrinkToFit</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetStyleArray">getStyleArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetTextRotation">getTextRotation</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetVertical">getVertical</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetWrapText">getWrapText</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetHorizontal">setHorizontal</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetIndent">setIndent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetShrinkToFit">setShrinkToFit</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetTextRotation">setTextRotation</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetVertical">setVertical</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetWrapText">setWrapText</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Style_Alignment<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 125]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Alignment __construct( +[boolean +$isSupervisor = false], [boolean +$isConditional = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Style_Alignment<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isSupervisor</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a supervisor or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isConditional</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a conditional style or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodapplyFromArray"></a> + <h3>method applyFromArray <span class="smalllinenumber">[line 231]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a> applyFromArray( +[array +$pStyles = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Apply styles from array<br /><br /><p><ol><li><div class="src-line">&nbsp;<span class="src-var">$objPHPExcel</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetActiveSheet">getActiveSheet</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getStyle</span><span class="src-sym">(</span><span class="src-str">'B2'</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getAlignment</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html#methodapplyFromArray">applyFromArray</a><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'horizontal'&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a></span><span class="src-sym">::</span><span class="src-id">HORIZONTAL_CENTER</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'vertical'&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a></span><span class="src-sym">::</span><span class="src-id">VERTICAL_CENTER</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'rotation'&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'wrap'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-id">true</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pStyles</b>&nbsp;&nbsp;</td> + <td>Array containing style information</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbindParent"></a> + <h3>method bindParent <span class="smalllinenumber">[line 143]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a> bindParent( +<a href="../PHPExcel/PHPExcel.html">PHPExcel</a> +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Bind parent. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveCell"></a> + <h3>method getActiveCell <span class="smalllinenumber">[line 197]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getActiveCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveSheet"></a> + <h3>method getActiveSheet <span class="smalllinenumber">[line 175]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getActiveSheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active sheet. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 466]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHorizontal"></a> + <h3>method getHorizontal <span class="smalllinenumber">[line 266]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHorizontal( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Horizontal<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIndent"></a> + <h3>method getIndent <span class="smalllinenumber">[line 433]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getIndent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get indent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIsSupervisor"></a> + <h3>method getIsSupervisor <span class="smalllinenumber">[line 154]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIsSupervisor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is this a supervisor or a real style component?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectedCells"></a> + <h3>method getSelectedCells <span class="smalllinenumber">[line 186]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSelectedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSharedComponent"></a> + <h3>method getSharedComponent <span class="smalllinenumber">[line 165]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a> getSharedComponent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shared style component for the currently active cell in currently active sheet.<br /><br /><p>Only used for style supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShrinkToFit"></a> + <h3>method getShrinkToFit <span class="smalllinenumber">[line 402]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShrinkToFit( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Shrink to fit<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyleArray"></a> + <h3>method getStyleArray <span class="smalllinenumber">[line 208]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getStyleArray( +array +$array)</code> + </td></tr></table> + </td></tr></table><br /> + + Build style array from subcomponents<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$array</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTextRotation"></a> + <h3>method getTextRotation <span class="smalllinenumber">[line 331]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getTextRotation( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get TextRotation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetVertical"></a> + <h3>method getVertical <span class="smalllinenumber">[line 299]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getVertical( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Vertical<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWrapText"></a> + <h3>method getWrapText <span class="smalllinenumber">[line 371]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getWrapText( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Wrap Text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetHorizontal"></a> + <h3>method setHorizontal <span class="smalllinenumber">[line 279]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a> setHorizontal( +[string +$pValue = PHPExcel_Style_Alignment::HORIZONTAL_GENERAL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Horizontal<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetIndent"></a> + <h3>method setIndent <span class="smalllinenumber">[line 446]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a> setIndent( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set indent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShrinkToFit"></a> + <h3>method setShrinkToFit <span class="smalllinenumber">[line 415]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a> setShrinkToFit( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Shrink to fit<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTextRotation"></a> + <h3>method setTextRotation <span class="smalllinenumber">[line 345]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a> setTextRotation( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set TextRotation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetVertical"></a> + <h3>method setVertical <span class="smalllinenumber">[line 312]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a> setVertical( +[string +$pValue = PHPExcel_Style_Alignment::VERTICAL_BOTTOM])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Vertical<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWrapText"></a> + <h3>method setWrapText <span class="smalllinenumber">[line 384]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a> setWrapText( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Wrap Text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 484]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constHORIZONTAL_CENTER"></a> + <p></p> + <h4>HORIZONTAL_CENTER = <span class="value">&nbsp;'center'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constHORIZONTAL_CENTER_CONTINUOUS"></a> + <p></p> + <h4>HORIZONTAL_CENTER_CONTINUOUS = <span class="value">&nbsp;'centerContinuous'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constHORIZONTAL_GENERAL"></a> + <p></p> + <h4>HORIZONTAL_GENERAL = <span class="value">&nbsp;'general'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constHORIZONTAL_JUSTIFY"></a> + <p></p> + <h4>HORIZONTAL_JUSTIFY = <span class="value">&nbsp;'justify'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constHORIZONTAL_LEFT"></a> + <p></p> + <h4>HORIZONTAL_LEFT = <span class="value">&nbsp;'left'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constHORIZONTAL_RIGHT"></a> + <p></p> + <h4>HORIZONTAL_RIGHT = <span class="value">&nbsp;'right'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constVERTICAL_BOTTOM"></a> + <p></p> + <h4>VERTICAL_BOTTOM = <span class="value">&nbsp;'bottom'</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constVERTICAL_CENTER"></a> + <p></p> + <h4>VERTICAL_CENTER = <span class="value">&nbsp;'center'</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constVERTICAL_JUSTIFY"></a> + <p></p> + <h4>VERTICAL_JUSTIFY = <span class="value">&nbsp;'justify'</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constVERTICAL_TOP"></a> + <p></p> + <h4>VERTICAL_TOP = <span class="value">&nbsp;'top'</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Border.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Border.html new file mode 100644 index 0000000..0fd439c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Border.html @@ -0,0 +1,803 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Style_Border</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Style_Border</h1> +Source Location: /PHPExcel/Style/Border.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Style_Border</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DASHDOT">BORDER_DASHDOT</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DASHDOTDOT">BORDER_DASHDOTDOT</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DASHED">BORDER_DASHED</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DOTTED">BORDER_DOTTED</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DOUBLE">BORDER_DOUBLE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_HAIR">BORDER_HAIR</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUM">BORDER_MEDIUM</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUMDASHDOT">BORDER_MEDIUMDASHDOT</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUMDASHDOTDOT">BORDER_MEDIUMDASHDOTDOT</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUMDASHED">BORDER_MEDIUMDASHED</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_NONE">BORDER_NONE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_SLANTDASHDOT">BORDER_SLANTDASHDOT</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_THICK">BORDER_THICK</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_THIN">BORDER_THIN</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodapplyFromArray">applyFromArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodbindParent">bindParent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodgetActiveCell">getActiveCell</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodgetActiveSheet">getActiveSheet</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodgetBorderStyle">getBorderStyle</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodgetColor">getColor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodgetIsSupervisor">getIsSupervisor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodgetSelectedCells">getSelectedCells</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodgetSharedComponent">getSharedComponent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodgetStyleArray">getStyleArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodsetBorderStyle">setBorderStyle</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodsetColor">setColor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Style_Border<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodapplyFromArray"></a> + <h3>method applyFromArray <span class="smalllinenumber">[line 280]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> applyFromArray( +[array +$pStyles = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Apply styles from array<br /><br /><p><ol><li><div class="src-line">&nbsp;<span class="src-var">$objPHPExcel</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodgetActiveSheet">getActiveSheet</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getStyle</span><span class="src-sym">(</span><span class="src-str">'B2'</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getBorders</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getTop</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Border.html#methodapplyFromArray">applyFromArray</a><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'style'&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a></span><span class="src-sym">::</span><span class="src-id">BORDER_DASHDOT</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'color'&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'rgb'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'808080'</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pStyles</b>&nbsp;&nbsp;</td> + <td>Array containing style information</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbindParent"></a> + <h3>method bindParent <span class="smalllinenumber">[line 120]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> bindParent( +<a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a> +$parent, string +$parentPropertyName)</code> + </td></tr></table> + </td></tr></table><br /> + + Bind parent. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$parentPropertyName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 99]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Border __construct( +[boolean +$isSupervisor = false], [boolean +$isConditional = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Style_Border<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isSupervisor</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a supervisor or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isConditional</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a conditional style or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveCell"></a> + <h3>method getActiveCell <span class="smalllinenumber">[line 205]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getActiveCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveSheet"></a> + <h3>method getActiveSheet <span class="smalllinenumber">[line 183]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getActiveSheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active sheet. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBorderStyle"></a> + <h3>method getBorderStyle <span class="smalllinenumber">[line 303]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getBorderStyle( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Border style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColor"></a> + <h3>method getColor <span class="smalllinenumber">[line 335]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> getColor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Border Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 364]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIsSupervisor"></a> + <h3>method getIsSupervisor <span class="smalllinenumber">[line 132]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIsSupervisor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is this a supervisor or a real style component?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectedCells"></a> + <h3>method getSelectedCells <span class="smalllinenumber">[line 194]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSelectedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSharedComponent"></a> + <h3>method getSharedComponent <span class="smalllinenumber">[line 144]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> getSharedComponent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shared style component for the currently active cell in currently active sheet.<br /><br /><p>Only used for style supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyleArray"></a> + <h3>method getStyleArray <span class="smalllinenumber">[line 216]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getStyleArray( +array +$array)</code> + </td></tr></table> + </td></tr></table><br /> + + Build style array from subcomponents<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$array</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBorderStyle"></a> + <h3>method setBorderStyle <span class="smalllinenumber">[line 316]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> setBorderStyle( +[string +$pValue = PHPExcel_Style_Border::BORDER_NONE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Border style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetColor"></a> + <h3>method setColor <span class="smalllinenumber">[line 346]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> setColor( +[<a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Border Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 378]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constBORDER_DASHDOT"></a> + <p></p> + <h4>BORDER_DASHDOT = <span class="value">&nbsp;'dashDot'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_DASHDOTDOT"></a> + <p></p> + <h4>BORDER_DASHDOTDOT = <span class="value">&nbsp;'dashDotDot'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_DASHED"></a> + <p></p> + <h4>BORDER_DASHED = <span class="value">&nbsp;'dashed'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_DOTTED"></a> + <p></p> + <h4>BORDER_DOTTED = <span class="value">&nbsp;'dotted'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_DOUBLE"></a> + <p></p> + <h4>BORDER_DOUBLE = <span class="value">&nbsp;'double'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_HAIR"></a> + <p></p> + <h4>BORDER_HAIR = <span class="value">&nbsp;'hair'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_MEDIUM"></a> + <p></p> + <h4>BORDER_MEDIUM = <span class="value">&nbsp;'medium'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_MEDIUMDASHDOT"></a> + <p></p> + <h4>BORDER_MEDIUMDASHDOT = <span class="value">&nbsp;'mediumDashDot'</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_MEDIUMDASHDOTDOT"></a> + <p></p> + <h4>BORDER_MEDIUMDASHDOTDOT = <span class="value">&nbsp;'mediumDashDotDot'</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_MEDIUMDASHED"></a> + <p></p> + <h4>BORDER_MEDIUMDASHED = <span class="value">&nbsp;'mediumDashed'</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_NONE"></a> + <p></p> + <h4>BORDER_NONE = <span class="value">&nbsp;'none'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_SLANTDASHDOT"></a> + <p></p> + <h4>BORDER_SLANTDASHDOT = <span class="value">&nbsp;'slantDashDot'</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_THICK"></a> + <p></p> + <h4>BORDER_THICK = <span class="value">&nbsp;'thick'</span></h4> + <p>[line 51]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBORDER_THIN"></a> + <p></p> + <h4>BORDER_THIN = <span class="value">&nbsp;'thin'</span></h4> + <p>[line 52]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:17 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Borders.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Borders.html new file mode 100644 index 0000000..6ec5b67 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Borders.html @@ -0,0 +1,941 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Style_Borders</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Style_Borders</h1> +Source Location: /PHPExcel/Style/Borders.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Style_Borders</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_BOTH">DIAGONAL_BOTH</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_DOWN">DIAGONAL_DOWN</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_NONE">DIAGONAL_NONE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_UP">DIAGONAL_UP</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodapplyFromArray">applyFromArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodbindParent">bindParent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetActiveCell">getActiveCell</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetActiveSheet">getActiveSheet</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetAllBorders">getAllBorders</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetBottom">getBottom</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetDiagonal">getDiagonal</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetDiagonalDirection">getDiagonalDirection</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetHorizontal">getHorizontal</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetInside">getInside</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetIsSupervisor">getIsSupervisor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetLeft">getLeft</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetOutline">getOutline</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetRight">getRight</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetSelectedCells">getSelectedCells</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetSharedComponent">getSharedComponent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetStyleArray">getStyleArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetTop">getTop</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetVertical">getVertical</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodsetDiagonalDirection">setDiagonalDirection</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Style_Borders<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 152]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Borders __construct( +[boolean +$isSupervisor = false], [boolean +$isConditional = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Style_Borders<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isSupervisor</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a supervisor or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isConditional</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a conditional style or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodapplyFromArray"></a> + <h3>method applyFromArray <span class="smalllinenumber">[line 302]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a> applyFromArray( +[array +$pStyles = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Apply styles from array<br /><br /><p><ol><li><div class="src-line">&nbsp;<span class="src-var">$objPHPExcel</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetActiveSheet">getActiveSheet</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getStyle</span><span class="src-sym">(</span><span class="src-str">'B2'</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getBorders</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodapplyFromArray">applyFromArray</a><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'bottom'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'style'&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a></span><span class="src-sym">::</span><span class="src-id">BORDER_DASHDOT</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'color'&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'rgb'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'808080'</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'top'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'style'&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a></span><span class="src-sym">::</span><span class="src-id">BORDER_DASHDOT</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'color'&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'rgb'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'808080'</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +</ol> <ol><li><div class="src-line">&nbsp;<span class="src-var">$objPHPExcel</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetActiveSheet">getActiveSheet</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getStyle</span><span class="src-sym">(</span><span class="src-str">'B2'</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getBorders</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html#methodapplyFromArray">applyFromArray</a><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'allborders'&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'style'&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a></span><span class="src-sym">::</span><span class="src-id">BORDER_DASHDOT</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'color'&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'rgb'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'808080'</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pStyles</b>&nbsp;&nbsp;</td> + <td>Array containing style information</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbindParent"></a> + <h3>method bindParent <span class="smalllinenumber">[line 194]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a> bindParent( +<a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Bind parent. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveCell"></a> + <h3>method getActiveCell <span class="smalllinenumber">[line 248]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getActiveCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveSheet"></a> + <h3>method getActiveSheet <span class="smalllinenumber">[line 226]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getActiveSheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active sheet. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAllBorders"></a> + <h3>method getAllBorders <span class="smalllinenumber">[line 389]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> getAllBorders( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AllBorders (pseudo-border). Only applies to supervisor.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBottom"></a> + <h3>method getBottom <span class="smalllinenumber">[line 370]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> getBottom( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Bottom<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDiagonal"></a> + <h3>method getDiagonal <span class="smalllinenumber">[line 379]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> getDiagonal( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Diagonal<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDiagonalDirection"></a> + <h3>method getDiagonalDirection <span class="smalllinenumber">[line 453]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getDiagonalDirection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get DiagonalDirection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 484]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHorizontal"></a> + <h3>method getHorizontal <span class="smalllinenumber">[line 441]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> getHorizontal( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Horizontal (pseudo-border). Only applies to supervisor.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetInside"></a> + <h3>method getInside <span class="smalllinenumber">[line 415]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getInside( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Inside (pseudo-border). Only applies to supervisor.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIsSupervisor"></a> + <h3>method getIsSupervisor <span class="smalllinenumber">[line 205]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIsSupervisor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is this a supervisor or a real style component?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLeft"></a> + <h3>method getLeft <span class="smalllinenumber">[line 343]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> getLeft( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Left<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOutline"></a> + <h3>method getOutline <span class="smalllinenumber">[line 402]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getOutline( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Outline (pseudo-border). Only applies to supervisor.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRight"></a> + <h3>method getRight <span class="smalllinenumber">[line 352]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> getRight( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Right<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectedCells"></a> + <h3>method getSelectedCells <span class="smalllinenumber">[line 237]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSelectedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSharedComponent"></a> + <h3>method getSharedComponent <span class="smalllinenumber">[line 216]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a> getSharedComponent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shared style component for the currently active cell in currently active sheet.<br /><br /><p>Only used for style supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyleArray"></a> + <h3>method getStyleArray <span class="smalllinenumber">[line 259]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getStyleArray( +array +$array)</code> + </td></tr></table> + </td></tr></table><br /> + + Build style array from subcomponents<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$array</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTop"></a> + <h3>method getTop <span class="smalllinenumber">[line 361]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> getTop( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Top<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetVertical"></a> + <h3>method getVertical <span class="smalllinenumber">[line 428]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> getVertical( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Vertical (pseudo-border). Only applies to supervisor.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDiagonalDirection"></a> + <h3>method setDiagonalDirection <span class="smalllinenumber">[line 466]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a> setDiagonalDirection( +[int +$pValue = PHPExcel_Style_Borders::DIAGONAL_NONE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set DiagonalDirection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 502]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constDIAGONAL_BOTH"></a> + <p></p> + <h4>DIAGONAL_BOTH = <span class="value">&nbsp;3</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDIAGONAL_DOWN"></a> + <p></p> + <h4>DIAGONAL_DOWN = <span class="value">&nbsp;2</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDIAGONAL_NONE"></a> + <p></p> + <h4>DIAGONAL_NONE = <span class="value">&nbsp;0</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constDIAGONAL_UP"></a> + <p></p> + <h4>DIAGONAL_UP = <span class="value">&nbsp;1</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Color.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Color.html new file mode 100644 index 0000000..52e8d3e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Color.html @@ -0,0 +1,991 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Style_Color</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Style_Color</h1> +Source Location: /PHPExcel/Style/Color.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Style_Color</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_BLACK">COLOR_BLACK</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_BLUE">COLOR_BLUE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKBLUE">COLOR_DARKBLUE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKGREEN">COLOR_DARKGREEN</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKRED">COLOR_DARKRED</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKYELLOW">COLOR_DARKYELLOW</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_GREEN">COLOR_GREEN</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_RED">COLOR_RED</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_WHITE">COLOR_WHITE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_YELLOW">COLOR_YELLOW</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodapplyFromArray">applyFromArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodbindParent">bindParent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodchangeBrightness">changeBrightness</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetActiveCell">getActiveCell</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetActiveSheet">getActiveSheet</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetARGB">getARGB</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetBlue">getBlue</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetGreen">getGreen</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetIsSupervisor">getIsSupervisor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetRed">getRed</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetRGB">getRGB</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetSelectedCells">getSelectedCells</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetSharedComponent">getSharedComponent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetStyleArray">getStyleArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodindexedColor">indexedColor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodsetARGB">setARGB</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodsetRGB">setRGB</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Style_Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodchangeBrightness"></a> + <h3>static method changeBrightness <span class="smalllinenumber">[line 368]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string changeBrightness( +string +$hex, float +$adjustPercentage)</code> + </td></tr></table> + </td></tr></table><br /> + + Adjust the brightness of a color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The adjusted colour as an RGBA or RGB value (e.g. FF00CCCC or CCDDEE)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$hex</b>&nbsp;&nbsp;</td> + <td>The colour as an RGBA or RGB value (e.g. FF00CCCC or CCDDEE)</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$adjustPercentage</b>&nbsp;&nbsp;</td> + <td>The percentage by which to adjust the colour as a float from -1 to 1</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBlue"></a> + <h3>static method getBlue <span class="smalllinenumber">[line 353]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getBlue( +string +$RGB, [boolean +$hex = TRUE])</code> + </td></tr></table> + </td></tr></table><br /> + + Get the blue colour component of an RGB value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The blue colour component</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$RGB</b>&nbsp;&nbsp;</td> + <td>The colour as an RGB value (e.g. FF00CCCC or CCDDEE</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$hex</b>&nbsp;&nbsp;</td> + <td>Flag indicating whether the component should be returned as a hex or a decimal value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetGreen"></a> + <h3>static method getGreen <span class="smalllinenumber">[line 337]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getGreen( +string +$RGB, [boolean +$hex = TRUE])</code> + </td></tr></table> + </td></tr></table><br /> + + Get the green colour component of an RGB value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The green colour component</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$RGB</b>&nbsp;&nbsp;</td> + <td>The colour as an RGB value (e.g. FF00CCCC or CCDDEE</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$hex</b>&nbsp;&nbsp;</td> + <td>Flag indicating whether the component should be returned as a hex or a decimal value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRed"></a> + <h3>static method getRed <span class="smalllinenumber">[line 321]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string getRed( +string +$RGB, [boolean +$hex = TRUE])</code> + </td></tr></table> + </td></tr></table><br /> + + Get the red colour component of an RGB value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The red colour component</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$RGB</b>&nbsp;&nbsp;</td> + <td>The colour as an RGB value (e.g. FF00CCCC or CCDDEE</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$hex</b>&nbsp;&nbsp;</td> + <td>Flag indicating whether the component should be returned as a hex or a decimal value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodindexedColor"></a> + <h3>static method indexedColor <span class="smalllinenumber">[line 406]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> indexedColor( +int +$pIndex, [boolean +$background = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + Get indexed color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td>Index entry point into the colour array</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$background</b>&nbsp;&nbsp;</td> + <td>Flag to indicate whether default background or foreground colour should be returned if the indexed colour doesn't exist</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="methodapplyFromArray"></a> + <h3>method applyFromArray <span class="smalllinenumber">[line 216]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> applyFromArray( +[array +$pStyles = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Apply styles from array<br /><br /><p><ol><li><div class="src-line">&nbsp;<span class="src-var">$objPHPExcel</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodgetActiveSheet">getActiveSheet</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getStyle</span><span class="src-sym">(</span><span class="src-str">'B2'</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getFont</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getColor</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Color.html#methodapplyFromArray">applyFromArray</a><span class="src-sym">(&nbsp;</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'rgb'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'808080'</span><span class="src-sym">)&nbsp;)</span><span class="src-sym">;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pStyles</b>&nbsp;&nbsp;</td> + <td>Array containing style information</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbindParent"></a> + <h3>method bindParent <span class="smalllinenumber">[line 115]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> bindParent( +mixed +$parent, string +$parentPropertyName)</code> + </td></tr></table> + </td></tr></table><br /> + + Bind parent. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$parentPropertyName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 97]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Color __construct( +[string +$pARGB = PHPExcel_Style_Color::COLOR_BLACK], [boolean +$isSupervisor = false], [boolean +$isConditional = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Style_Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pARGB</b>&nbsp;&nbsp;</td> + <td>ARGB value for the colour</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isSupervisor</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a supervisor or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isConditional</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a conditional style or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveCell"></a> + <h3>method getActiveCell <span class="smalllinenumber">[line 177]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getActiveCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveSheet"></a> + <h3>method getActiveSheet <span class="smalllinenumber">[line 155]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getActiveSheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active sheet. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetARGB"></a> + <h3>method getARGB <span class="smalllinenumber">[line 239]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getARGB( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get ARGB<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 487]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIsSupervisor"></a> + <h3>method getIsSupervisor <span class="smalllinenumber">[line 127]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIsSupervisor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is this a supervisor or a real style component?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRGB"></a> + <h3>method getRGB <span class="smalllinenumber">[line 270]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getRGB( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get RGB<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectedCells"></a> + <h3>method getSelectedCells <span class="smalllinenumber">[line 166]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSelectedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSharedComponent"></a> + <h3>method getSharedComponent <span class="smalllinenumber">[line 138]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> getSharedComponent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shared style component for the currently active cell in currently active sheet.<br /><br /><p>Only used for style supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyleArray"></a> + <h3>method getStyleArray <span class="smalllinenumber">[line 188]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getStyleArray( +array +$array)</code> + </td></tr></table> + </td></tr></table><br /> + + Build style array from subcomponents<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$array</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetARGB"></a> + <h3>method setARGB <span class="smalllinenumber">[line 252]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> setARGB( +[string +$pValue = PHPExcel_Style_Color::COLOR_BLACK])</code> + </td></tr></table> + </td></tr></table><br /> + + Set ARGB<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRGB"></a> + <h3>method setRGB <span class="smalllinenumber">[line 283]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> setRGB( +[string +$pValue = '000000'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set RGB<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>RGB value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 500]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constCOLOR_BLACK"></a> + <p></p> + <h4>COLOR_BLACK = <span class="value">&nbsp;'FF000000'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOLOR_BLUE"></a> + <p></p> + <h4>COLOR_BLUE = <span class="value">&nbsp;'FF0000FF'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOLOR_DARKBLUE"></a> + <p></p> + <h4>COLOR_DARKBLUE = <span class="value">&nbsp;'FF000080'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOLOR_DARKGREEN"></a> + <p></p> + <h4>COLOR_DARKGREEN = <span class="value">&nbsp;'FF008000'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOLOR_DARKRED"></a> + <p></p> + <h4>COLOR_DARKRED = <span class="value">&nbsp;'FF800000'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOLOR_DARKYELLOW"></a> + <p></p> + <h4>COLOR_DARKYELLOW = <span class="value">&nbsp;'FF808000'</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOLOR_GREEN"></a> + <p></p> + <h4>COLOR_GREEN = <span class="value">&nbsp;'FF00FF00'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOLOR_RED"></a> + <p></p> + <h4>COLOR_RED = <span class="value">&nbsp;'FFFF0000'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOLOR_WHITE"></a> + <p></p> + <h4>COLOR_WHITE = <span class="value">&nbsp;'FFFFFFFF'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCOLOR_YELLOW"></a> + <p></p> + <h4>COLOR_YELLOW = <span class="value">&nbsp;'FFFFFF00'</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:29 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Conditional.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Conditional.html new file mode 100644 index 0000000..6b079e1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Conditional.html @@ -0,0 +1,830 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Style_Conditional</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Style_Conditional</h1> +Source Location: /PHPExcel/Style/Conditional.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Style_Conditional</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_CELLIS">CONDITION_CELLIS</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_CONTAINSTEXT">CONDITION_CONTAINSTEXT</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_EXPRESSION">CONDITION_EXPRESSION</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_NONE">CONDITION_NONE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_BEGINSWITH">OPERATOR_BEGINSWITH</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_BETWEEN">OPERATOR_BETWEEN</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_CONTAINSTEXT">OPERATOR_CONTAINSTEXT</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_ENDSWITH">OPERATOR_ENDSWITH</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_EQUAL">OPERATOR_EQUAL</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_GREATERTHAN">OPERATOR_GREATERTHAN</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_GREATERTHANOREQUAL">OPERATOR_GREATERTHANOREQUAL</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_LESSTHAN">OPERATOR_LESSTHAN</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_LESSTHANOREQUAL">OPERATOR_LESSTHANOREQUAL</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_NONE">OPERATOR_NONE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_NOTCONTAINS">OPERATOR_NOTCONTAINS</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_NOTEQUAL">OPERATOR_NOTEQUAL</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodaddCondition">addCondition</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetCondition">getCondition</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetConditions">getConditions</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetConditionType">getConditionType</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetOperatorType">getOperatorType</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetStyle">getStyle</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetText">getText</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetCondition">setCondition</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetConditions">setConditions</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetConditionType">setConditionType</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetOperatorType">setOperatorType</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetStyle">setStyle</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetText">setText</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Style_Conditional<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodaddCondition"></a> + <h3>method addCondition <span class="smalllinenumber">[line 223]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a> addCondition( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Add Condition<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Condition</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 96]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Conditional __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Style_Conditional<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCondition"></a> + <h3>method getCondition <span class="smalllinenumber">[line 172]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getCondition( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Condition<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td>Deprecated, use getConditions instead</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetConditions"></a> + <h3>method getConditions <span class="smalllinenumber">[line 199]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string[] getConditions( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Conditions<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetConditionType"></a> + <h3>method getConditionType <span class="smalllinenumber">[line 111]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getConditionType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Condition type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 254]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOperatorType"></a> + <h3>method getOperatorType <span class="smalllinenumber">[line 131]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getOperatorType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Operator type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyle"></a> + <h3>method getStyle <span class="smalllinenumber">[line 233]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> getStyle( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetText"></a> + <h3>method getText <span class="smalllinenumber">[line 151]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getText( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCondition"></a> + <h3>method setCondition <span class="smalllinenumber">[line 187]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a> setCondition( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Condition<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td>Deprecated, use setConditions instead</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Condition</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetConditions"></a> + <h3>method setConditions <span class="smalllinenumber">[line 209]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a> setConditions( +string[] +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Conditions<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string[]&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Condition</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetConditionType"></a> + <h3>method setConditionType <span class="smalllinenumber">[line 121]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a> setConditionType( +[string +$pValue = PHPExcel_Style_Conditional::CONDITION_NONE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Condition type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>PHPExcel_Style_Conditional condition type</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOperatorType"></a> + <h3>method setOperatorType <span class="smalllinenumber">[line 141]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a> setOperatorType( +[string +$pValue = PHPExcel_Style_Conditional::OPERATOR_NONE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Operator type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>PHPExcel_Style_Conditional operator type</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetStyle"></a> + <h3>method setStyle <span class="smalllinenumber">[line 244]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a> setStyle( +[<a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetText"></a> + <h3>method setText <span class="smalllinenumber">[line 161]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a> setText( +[string +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 267]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constCONDITION_CELLIS"></a> + <p></p> + <h4>CONDITION_CELLIS = <span class="value">&nbsp;'cellIs'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCONDITION_CONTAINSTEXT"></a> + <p></p> + <h4>CONDITION_CONTAINSTEXT = <span class="value">&nbsp;'containsText'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCONDITION_EXPRESSION"></a> + <p></p> + <h4>CONDITION_EXPRESSION = <span class="value">&nbsp;'expression'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constCONDITION_NONE"></a> + <p></p> + <h4>CONDITION_NONE = <span class="value">&nbsp;'none'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_BEGINSWITH"></a> + <p></p> + <h4>OPERATOR_BEGINSWITH = <span class="value">&nbsp;'beginsWith'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_BETWEEN"></a> + <p></p> + <h4>OPERATOR_BETWEEN = <span class="value">&nbsp;'between'</span></h4> + <p>[line 56]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_CONTAINSTEXT"></a> + <p></p> + <h4>OPERATOR_CONTAINSTEXT = <span class="value">&nbsp;'containsText'</span></h4> + <p>[line 54]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_ENDSWITH"></a> + <p></p> + <h4>OPERATOR_ENDSWITH = <span class="value">&nbsp;'endsWith'</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_EQUAL"></a> + <p></p> + <h4>OPERATOR_EQUAL = <span class="value">&nbsp;'equal'</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_GREATERTHAN"></a> + <p></p> + <h4>OPERATOR_GREATERTHAN = <span class="value">&nbsp;'greaterThan'</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_GREATERTHANOREQUAL"></a> + <p></p> + <h4>OPERATOR_GREATERTHANOREQUAL = <span class="value">&nbsp;'greaterThanOrEqual'</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_LESSTHAN"></a> + <p></p> + <h4>OPERATOR_LESSTHAN = <span class="value">&nbsp;'lessThan'</span></h4> + <p>[line 51]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_LESSTHANOREQUAL"></a> + <p></p> + <h4>OPERATOR_LESSTHANOREQUAL = <span class="value">&nbsp;'lessThanOrEqual'</span></h4> + <p>[line 52]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_NONE"></a> + <p></p> + <h4>OPERATOR_NONE = <span class="value">&nbsp;''</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_NOTCONTAINS"></a> + <p></p> + <h4>OPERATOR_NOTCONTAINS = <span class="value">&nbsp;'notContains'</span></h4> + <p>[line 55]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constOPERATOR_NOTEQUAL"></a> + <p></p> + <h4>OPERATOR_NOTEQUAL = <span class="value">&nbsp;'notEqual'</span></h4> + <p>[line 53]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:33 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Fill.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Fill.html new file mode 100644 index 0000000..3fe1a80 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Fill.html @@ -0,0 +1,983 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Style_Fill</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Style_Fill</h1> +Source Location: /PHPExcel/Style/Fill.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Style_Fill</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_GRADIENT_LINEAR">FILL_GRADIENT_LINEAR</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_GRADIENT_PATH">FILL_GRADIENT_PATH</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_NONE">FILL_NONE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKDOWN">FILL_PATTERN_DARKDOWN</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKGRAY">FILL_PATTERN_DARKGRAY</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKGRID">FILL_PATTERN_DARKGRID</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKHORIZONTAL">FILL_PATTERN_DARKHORIZONTAL</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKTRELLIS">FILL_PATTERN_DARKTRELLIS</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKUP">FILL_PATTERN_DARKUP</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKVERTICAL">FILL_PATTERN_DARKVERTICAL</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_GRAY0625">FILL_PATTERN_GRAY0625</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_GRAY125">FILL_PATTERN_GRAY125</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTDOWN">FILL_PATTERN_LIGHTDOWN</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTGRAY">FILL_PATTERN_LIGHTGRAY</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTGRID">FILL_PATTERN_LIGHTGRID</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTHORIZONTAL">FILL_PATTERN_LIGHTHORIZONTAL</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTTRELLIS">FILL_PATTERN_LIGHTTRELLIS</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTUP">FILL_PATTERN_LIGHTUP</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTVERTICAL">FILL_PATTERN_LIGHTVERTICAL</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_MEDIUMGRAY">FILL_PATTERN_MEDIUMGRAY</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_SOLID">FILL_SOLID</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodapplyFromArray">applyFromArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodbindParent">bindParent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetActiveCell">getActiveCell</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetActiveSheet">getActiveSheet</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetEndColor">getEndColor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetFillType">getFillType</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetIsSupervisor">getIsSupervisor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetRotation">getRotation</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetSelectedCells">getSelectedCells</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetSharedComponent">getSharedComponent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetStartColor">getStartColor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetStyleArray">getStyleArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetEndColor">setEndColor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetFillType">setFillType</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetRotation">setRotation</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetStartColor">setStartColor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Style_Fill<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 120]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Fill __construct( +[boolean +$isSupervisor = false], [boolean +$isConditional = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Style_Fill<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isSupervisor</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a supervisor or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isConditional</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a conditional style or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodapplyFromArray"></a> + <h3>method applyFromArray <span class="smalllinenumber">[line 237]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a> applyFromArray( +[array +$pStyles = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Apply styles from array<br /><br /><p><ol><li><div class="src-line">&nbsp;<span class="src-var">$objPHPExcel</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetActiveSheet">getActiveSheet</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getStyle</span><span class="src-sym">(</span><span class="src-str">'B2'</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getFill</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html#methodapplyFromArray">applyFromArray</a><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'type'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a></span><span class="src-sym">::</span><span class="src-id">FILL_GRADIENT_LINEAR</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'rotation'&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'startcolor'&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'rgb'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'000000'</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'endcolor'&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'argb'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'FFFFFFFF'</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pStyles</b>&nbsp;&nbsp;</td> + <td>Array containing style information</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbindParent"></a> + <h3>method bindParent <span class="smalllinenumber">[line 145]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a> bindParent( +<a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Bind parent. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveCell"></a> + <h3>method getActiveCell <span class="smalllinenumber">[line 199]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getActiveCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveSheet"></a> + <h3>method getActiveSheet <span class="smalllinenumber">[line 177]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getActiveSheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active sheet. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEndColor"></a> + <h3>method getEndColor <span class="smalllinenumber">[line 354]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> getEndColor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get End Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFillType"></a> + <h3>method getFillType <span class="smalllinenumber">[line 269]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFillType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Fill Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 383]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIsSupervisor"></a> + <h3>method getIsSupervisor <span class="smalllinenumber">[line 156]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIsSupervisor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is this a supervisor or a real style component?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRotation"></a> + <h3>method getRotation <span class="smalllinenumber">[line 297]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>double getRotation( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Rotation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectedCells"></a> + <h3>method getSelectedCells <span class="smalllinenumber">[line 188]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSelectedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSharedComponent"></a> + <h3>method getSharedComponent <span class="smalllinenumber">[line 167]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a> getSharedComponent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shared style component for the currently active cell in currently active sheet.<br /><br /><p>Only used for style supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStartColor"></a> + <h3>method getStartColor <span class="smalllinenumber">[line 325]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> getStartColor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Start Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyleArray"></a> + <h3>method getStyleArray <span class="smalllinenumber">[line 210]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getStyleArray( +array +$array)</code> + </td></tr></table> + </td></tr></table><br /> + + Build style array from subcomponents<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$array</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetEndColor"></a> + <h3>method setEndColor <span class="smalllinenumber">[line 365]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a> setEndColor( +[<a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set End Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFillType"></a> + <h3>method setFillType <span class="smalllinenumber">[line 282]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a> setFillType( +[string +$pValue = PHPExcel_Style_Fill::FILL_NONE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Fill Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>PHPExcel_Style_Fill fill type</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRotation"></a> + <h3>method setRotation <span class="smalllinenumber">[line 310]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a> setRotation( +[double +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Rotation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">double&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetStartColor"></a> + <h3>method setStartColor <span class="smalllinenumber">[line 336]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a> setStartColor( +[<a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Start Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 399]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constFILL_GRADIENT_LINEAR"></a> + <p></p> + <h4>FILL_GRADIENT_LINEAR = <span class="value">&nbsp;'linear'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_GRADIENT_PATH"></a> + <p></p> + <h4>FILL_GRADIENT_PATH = <span class="value">&nbsp;'path'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_NONE"></a> + <p></p> + <h4>FILL_NONE = <span class="value">&nbsp;'none'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_DARKDOWN"></a> + <p></p> + <h4>FILL_PATTERN_DARKDOWN = <span class="value">&nbsp;'darkDown'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_DARKGRAY"></a> + <p></p> + <h4>FILL_PATTERN_DARKGRAY = <span class="value">&nbsp;'darkGray'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_DARKGRID"></a> + <p></p> + <h4>FILL_PATTERN_DARKGRID = <span class="value">&nbsp;'darkGrid'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_DARKHORIZONTAL"></a> + <p></p> + <h4>FILL_PATTERN_DARKHORIZONTAL = <span class="value">&nbsp;'darkHorizontal'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_DARKTRELLIS"></a> + <p></p> + <h4>FILL_PATTERN_DARKTRELLIS = <span class="value">&nbsp;'darkTrellis'</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_DARKUP"></a> + <p></p> + <h4>FILL_PATTERN_DARKUP = <span class="value">&nbsp;'darkUp'</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_DARKVERTICAL"></a> + <p></p> + <h4>FILL_PATTERN_DARKVERTICAL = <span class="value">&nbsp;'darkVertical'</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_GRAY0625"></a> + <p></p> + <h4>FILL_PATTERN_GRAY0625 = <span class="value">&nbsp;'gray0625'</span></h4> + <p>[line 50]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_GRAY125"></a> + <p></p> + <h4>FILL_PATTERN_GRAY125 = <span class="value">&nbsp;'gray125'</span></h4> + <p>[line 51]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_LIGHTDOWN"></a> + <p></p> + <h4>FILL_PATTERN_LIGHTDOWN = <span class="value">&nbsp;'lightDown'</span></h4> + <p>[line 52]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_LIGHTGRAY"></a> + <p></p> + <h4>FILL_PATTERN_LIGHTGRAY = <span class="value">&nbsp;'lightGray'</span></h4> + <p>[line 53]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_LIGHTGRID"></a> + <p></p> + <h4>FILL_PATTERN_LIGHTGRID = <span class="value">&nbsp;'lightGrid'</span></h4> + <p>[line 54]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_LIGHTHORIZONTAL"></a> + <p></p> + <h4>FILL_PATTERN_LIGHTHORIZONTAL = <span class="value">&nbsp;'lightHorizontal'</span></h4> + <p>[line 55]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_LIGHTTRELLIS"></a> + <p></p> + <h4>FILL_PATTERN_LIGHTTRELLIS = <span class="value">&nbsp;'lightTrellis'</span></h4> + <p>[line 56]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_LIGHTUP"></a> + <p></p> + <h4>FILL_PATTERN_LIGHTUP = <span class="value">&nbsp;'lightUp'</span></h4> + <p>[line 57]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_LIGHTVERTICAL"></a> + <p></p> + <h4>FILL_PATTERN_LIGHTVERTICAL = <span class="value">&nbsp;'lightVertical'</span></h4> + <p>[line 58]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_PATTERN_MEDIUMGRAY"></a> + <p></p> + <h4>FILL_PATTERN_MEDIUMGRAY = <span class="value">&nbsp;'mediumGray'</span></h4> + <p>[line 59]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFILL_SOLID"></a> + <p></p> + <h4>FILL_SOLID = <span class="value">&nbsp;'solid'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:15 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Font.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Font.html new file mode 100644 index 0000000..3fc60bb --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Font.html @@ -0,0 +1,1236 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Style_Font</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Style_Font</h1> +Source Location: /PHPExcel/Style/Font.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Style_Font</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_DOUBLE">UNDERLINE_DOUBLE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_DOUBLEACCOUNTING">UNDERLINE_DOUBLEACCOUNTING</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_NONE">UNDERLINE_NONE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_SINGLE">UNDERLINE_SINGLE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_SINGLEACCOUNTING">UNDERLINE_SINGLEACCOUNTING</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodapplyFromArray">applyFromArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodbindParent">bindParent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetActiveCell">getActiveCell</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetActiveSheet">getActiveSheet</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetBold">getBold</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetColor">getColor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetIsSupervisor">getIsSupervisor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetItalic">getItalic</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetName">getName</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSelectedCells">getSelectedCells</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSharedComponent">getSharedComponent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSize">getSize</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetStrikethrough">getStrikethrough</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetStriketrough">getStriketrough</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetStyleArray">getStyleArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSubScript">getSubScript</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSuperScript">getSuperScript</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetUnderline">getUnderline</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodsetBold">setBold</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodsetColor">setColor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodsetItalic">setItalic</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodsetName">setName</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodsetSize">setSize</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodsetStrikethrough">setStrikethrough</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodsetStriketrough">setStriketrough</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodsetSubScript">setSubScript</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodsetSuperScript">setSuperScript</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodsetUnderline">setUnderline</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Style_Font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 139]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Font __construct( +[boolean +$isSupervisor = false], [boolean +$isConditional = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Style_Font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isSupervisor</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a supervisor or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isConditional</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a conditional style or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodapplyFromArray"></a> + <h3>method applyFromArray <span class="smalllinenumber">[line 261]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> applyFromArray( +[array +$pStyles = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Apply styles from array<br /><br /><p><ol><li><div class="src-line">&nbsp;<span class="src-var">$objPHPExcel</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodgetActiveSheet">getActiveSheet</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getStyle</span><span class="src-sym">(</span><span class="src-str">'B2'</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getFont</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Font.html#methodapplyFromArray">applyFromArray</a><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'name'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-str">'Arial'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'bold'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-id">true</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'italic'&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-id">false</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'underline'&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a></span><span class="src-sym">::</span><span class="src-id">UNDERLINE_DOUBLE</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'strike'&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-id">false</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'color'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'rgb'&nbsp;</span>=&gt;&nbsp;<span class="src-str">'808080'</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pStyles</b>&nbsp;&nbsp;</td> + <td>Array containing style information</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbindParent"></a> + <h3>method bindParent <span class="smalllinenumber">[line 170]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> bindParent( +<a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Bind parent. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveCell"></a> + <h3>method getActiveCell <span class="smalllinenumber">[line 223]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getActiveCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveSheet"></a> + <h3>method getActiveSheet <span class="smalllinenumber">[line 201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getActiveSheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active sheet. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBold"></a> + <h3>method getBold <span class="smalllinenumber">[line 367]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getBold( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Bold<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColor"></a> + <h3>method getColor <span class="smalllinenumber">[line 580]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> getColor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 609]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIsSupervisor"></a> + <h3>method getIsSupervisor <span class="smalllinenumber">[line 180]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIsSupervisor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is this a supervisor or a real style component?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetItalic"></a> + <h3>method getItalic <span class="smalllinenumber">[line 398]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getItalic( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Italic<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetName"></a> + <h3>method getName <span class="smalllinenumber">[line 305]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectedCells"></a> + <h3>method getSelectedCells <span class="smalllinenumber">[line 212]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSelectedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSharedComponent"></a> + <h3>method getSharedComponent <span class="smalllinenumber">[line 191]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> getSharedComponent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shared style component for the currently active cell in currently active sheet.<br /><br /><p>Only used for style supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSize"></a> + <h3>method getSize <span class="smalllinenumber">[line 336]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>double getSize( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStrikethrough"></a> + <h3>method getStrikethrough <span class="smalllinenumber">[line 549]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getStrikethrough( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Strikethrough<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStriketrough"></a> + <h3>method getStriketrough <span class="smalllinenumber">[line 529]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getStriketrough( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Striketrough<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td>Use getStrikethrough() instead.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyleArray"></a> + <h3>method getStyleArray <span class="smalllinenumber">[line 234]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getStyleArray( +array +$array)</code> + </td></tr></table> + </td></tr></table><br /> + + Build style array from subcomponents<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$array</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSubScript"></a> + <h3>method getSubScript <span class="smalllinenumber">[line 461]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getSubScript( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get SubScript<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSuperScript"></a> + <h3>method getSuperScript <span class="smalllinenumber">[line 429]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getSuperScript( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get SuperScript<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetUnderline"></a> + <h3>method getUnderline <span class="smalllinenumber">[line 493]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getUnderline( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Underline<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBold"></a> + <h3>method setBold <span class="smalllinenumber">[line 380]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> setBold( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Bold<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetColor"></a> + <h3>method setColor <span class="smalllinenumber">[line 591]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> setColor( +[<a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetItalic"></a> + <h3>method setItalic <span class="smalllinenumber">[line 411]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> setItalic( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Italic<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetName"></a> + <h3>method setName <span class="smalllinenumber">[line 318]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> setName( +[string +$pValue = 'Calibri'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSize"></a> + <h3>method setSize <span class="smalllinenumber">[line 349]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> setSize( +[double +$pValue = 10])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">double&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetStrikethrough"></a> + <h3>method setStrikethrough <span class="smalllinenumber">[line 562]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> setStrikethrough( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Strikethrough<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetStriketrough"></a> + <h3>method setStriketrough <span class="smalllinenumber">[line 540]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> setStriketrough( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Striketrough<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td>Use setStrikethrough() instead.</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSubScript"></a> + <h3>method setSubScript <span class="smalllinenumber">[line 474]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> setSubScript( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set SubScript<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSuperScript"></a> + <h3>method setSuperScript <span class="smalllinenumber">[line 442]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> setSuperScript( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set SuperScript<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetUnderline"></a> + <h3>method setUnderline <span class="smalllinenumber">[line 508]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> setUnderline( +[string|boolean +$pValue = self::UNDERLINE_NONE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Underline<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string|boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>PHPExcel_Style_Font underline type If a boolean is passed, then true equates to UNDERLINE_SINGLE, false equates to UNDERLINE_NONE</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 630]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constUNDERLINE_DOUBLE"></a> + <p></p> + <h4>UNDERLINE_DOUBLE = <span class="value">&nbsp;'double'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constUNDERLINE_DOUBLEACCOUNTING"></a> + <p></p> + <h4>UNDERLINE_DOUBLEACCOUNTING = <span class="value">&nbsp;'doubleAccounting'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constUNDERLINE_NONE"></a> + <p></p> + <h4>UNDERLINE_NONE = <span class="value">&nbsp;'none'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constUNDERLINE_SINGLE"></a> + <p></p> + <h4>UNDERLINE_SINGLE = <span class="value">&nbsp;'single'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constUNDERLINE_SINGLEACCOUNTING"></a> + <p></p> + <h4>UNDERLINE_SINGLEACCOUNTING = <span class="value">&nbsp;'singleAccounting'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_NumberFormat.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_NumberFormat.html new file mode 100644 index 0000000..30126d4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_NumberFormat.html @@ -0,0 +1,1066 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Style_NumberFormat</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Style_NumberFormat</h1> +Source Location: /PHPExcel/Style/NumberFormat.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Style_NumberFormat</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_CURRENCY_EUR_SIMPLE">FORMAT_CURRENCY_EUR_SIMPLE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_CURRENCY_USD">FORMAT_CURRENCY_USD</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_CURRENCY_USD_SIMPLE">FORMAT_CURRENCY_USD_SIMPLE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DATETIME">FORMAT_DATE_DATETIME</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DDMMYYYY">FORMAT_DATE_DDMMYYYY</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DMMINUS">FORMAT_DATE_DMMINUS</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DMYMINUS">FORMAT_DATE_DMYMINUS</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DMYSLASH">FORMAT_DATE_DMYSLASH</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_MYMINUS">FORMAT_DATE_MYMINUS</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME1">FORMAT_DATE_TIME1</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME2">FORMAT_DATE_TIME2</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME3">FORMAT_DATE_TIME3</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME4">FORMAT_DATE_TIME4</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME5">FORMAT_DATE_TIME5</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME6">FORMAT_DATE_TIME6</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME7">FORMAT_DATE_TIME7</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME8">FORMAT_DATE_TIME8</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX14">FORMAT_DATE_XLSX14</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX15">FORMAT_DATE_XLSX15</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX16">FORMAT_DATE_XLSX16</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX17">FORMAT_DATE_XLSX17</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX22">FORMAT_DATE_XLSX22</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_YYYYMMDD">FORMAT_DATE_YYYYMMDD</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_YYYYMMDD2">FORMAT_DATE_YYYYMMDD2</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_YYYYMMDDSLASH">FORMAT_DATE_YYYYMMDDSLASH</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_GENERAL">FORMAT_GENERAL</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER">FORMAT_NUMBER</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER_00">FORMAT_NUMBER_00</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER_COMMA_SEPARATED1">FORMAT_NUMBER_COMMA_SEPARATED1</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER_COMMA_SEPARATED2">FORMAT_NUMBER_COMMA_SEPARATED2</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_PERCENTAGE">FORMAT_PERCENTAGE</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_PERCENTAGE_00">FORMAT_PERCENTAGE_00</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_TEXT">FORMAT_TEXT</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodapplyFromArray">applyFromArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodbindParent">bindParent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodbuiltInFormatCode">builtInFormatCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodbuiltInFormatCodeIndex">builtInFormatCodeIndex</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetActiveCell">getActiveCell</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetActiveSheet">getActiveSheet</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetBuiltInFormatCode">getBuiltInFormatCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetFormatCode">getFormatCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetIsSupervisor">getIsSupervisor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetSelectedCells">getSelectedCells</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetSharedComponent">getSharedComponent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetStyleArray">getStyleArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodsetBuiltInFormatCode">setBuiltInFormatCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodsetFormatCode">setFormatCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodtoFormattedString">toFormattedString</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Style_NumberFormat<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodbuiltInFormatCode"></a> + <h3>static method builtInFormatCode <span class="smalllinenumber">[line 394]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string builtInFormatCode( +int +$pIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Get built-in format code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbuiltInFormatCodeIndex"></a> + <h3>static method builtInFormatCodeIndex <span class="smalllinenumber">[line 416]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int|boolean builtInFormatCodeIndex( +string +$formatCode)</code> + </td></tr></table> + </td></tr></table><br /> + + Get built-in format code index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$formatCode</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtoFormattedString"></a> + <h3>static method toFormattedString <span class="smalllinenumber">[line 528]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static string toFormattedString( +[mixed +$value = ''], [string +$format = ''], [array +$callBack = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Convert a value in a pre-defined format to a PHP string<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Formatted string</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Value to format</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$format</b>&nbsp;&nbsp;</td> + <td>Format code</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$callBack</b>&nbsp;&nbsp;</td> + <td>Callback function for additional formatting of string</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="methodapplyFromArray"></a> + <h3>method applyFromArray <span class="smalllinenumber">[line 237]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a> applyFromArray( +[array +$pStyles = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Apply styles from array<br /><br /><p><ol><li><div class="src-line">&nbsp;<span class="src-var">$objPHPExcel</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetActiveSheet">getActiveSheet</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getStyle</span><span class="src-sym">(</span><span class="src-str">'B2'</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getNumberFormat</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodapplyFromArray">applyFromArray</a><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array</span><span class="src-sym">(</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'code'&nbsp;</span>=&gt;&nbsp;<span class="src-id"><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a></span><span class="src-sym">::</span><span class="src-id">FORMAT_CURRENCY_EUR_SIMPLE</span></div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pStyles</b>&nbsp;&nbsp;</td> + <td>Array containing style information</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbindParent"></a> + <h3>method bindParent <span class="smalllinenumber">[line 153]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a> bindParent( +<a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Bind parent. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 137]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_NumberFormat __construct( +[boolean +$isSupervisor = false], [boolean +$isConditional = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Style_NumberFormat<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isSupervisor</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a supervisor or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isConditional</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a conditional style or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveCell"></a> + <h3>method getActiveCell <span class="smalllinenumber">[line 206]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getActiveCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveSheet"></a> + <h3>method getActiveSheet <span class="smalllinenumber">[line 184]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getActiveSheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active sheet. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBuiltInFormatCode"></a> + <h3>method getBuiltInFormatCode <span class="smalllinenumber">[line 296]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getBuiltInFormatCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Built-In Format Code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFormatCode"></a> + <h3>method getFormatCode <span class="smalllinenumber">[line 258]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFormatCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Format Code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 434]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIsSupervisor"></a> + <h3>method getIsSupervisor <span class="smalllinenumber">[line 163]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIsSupervisor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is this a supervisor or a real style component?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectedCells"></a> + <h3>method getSelectedCells <span class="smalllinenumber">[line 195]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSelectedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSharedComponent"></a> + <h3>method getSharedComponent <span class="smalllinenumber">[line 174]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a> getSharedComponent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shared style component for the currently active cell in currently active sheet.<br /><br /><p>Only used for style supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyleArray"></a> + <h3>method getStyleArray <span class="smalllinenumber">[line 217]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getStyleArray( +array +$array)</code> + </td></tr></table> + </td></tr></table><br /> + + Build style array from subcomponents<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$array</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBuiltInFormatCode"></a> + <h3>method setBuiltInFormatCode <span class="smalllinenumber">[line 310]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a> setBuiltInFormatCode( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Built-In Format Code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFormatCode"></a> + <h3>method setFormatCode <span class="smalllinenumber">[line 276]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a> setFormatCode( +[string +$pValue = PHPExcel_Style_NumberFormat::FORMAT_GENERAL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Format Code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 449]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constFORMAT_CURRENCY_EUR_SIMPLE"></a> + <p></p> + <h4>FORMAT_CURRENCY_EUR_SIMPLE = <span class="value">&nbsp;'[$EUR&nbsp;]#,##0.00_-'</span></h4> + <p>[line 76]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_CURRENCY_USD"></a> + <p></p> + <h4>FORMAT_CURRENCY_USD = <span class="value">&nbsp;'$#,##0_-'</span></h4> + <p>[line 75]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_CURRENCY_USD_SIMPLE"></a> + <p></p> + <h4>FORMAT_CURRENCY_USD_SIMPLE = <span class="value">&nbsp;'&quot;$&quot;#,##0.00_-'</span></h4> + <p>[line 74]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_DATETIME"></a> + <p></p> + <h4>FORMAT_DATE_DATETIME = <span class="value">&nbsp;'d/m/y&nbsp;h:mm'</span></h4> + <p>[line 63]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_DDMMYYYY"></a> + <p></p> + <h4>FORMAT_DATE_DDMMYYYY = <span class="value">&nbsp;'dd/mm/yy'</span></h4> + <p>[line 53]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_DMMINUS"></a> + <p></p> + <h4>FORMAT_DATE_DMMINUS = <span class="value">&nbsp;'d-m'</span></h4> + <p>[line 56]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_DMYMINUS"></a> + <p></p> + <h4>FORMAT_DATE_DMYMINUS = <span class="value">&nbsp;'d-m-y'</span></h4> + <p>[line 55]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_DMYSLASH"></a> + <p></p> + <h4>FORMAT_DATE_DMYSLASH = <span class="value">&nbsp;'d/m/y'</span></h4> + <p>[line 54]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_MYMINUS"></a> + <p></p> + <h4>FORMAT_DATE_MYMINUS = <span class="value">&nbsp;'m-y'</span></h4> + <p>[line 57]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_TIME1"></a> + <p></p> + <h4>FORMAT_DATE_TIME1 = <span class="value">&nbsp;'h:mm&nbsp;AM/PM'</span></h4> + <p>[line 64]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_TIME2"></a> + <p></p> + <h4>FORMAT_DATE_TIME2 = <span class="value">&nbsp;'h:mm:ss&nbsp;AM/PM'</span></h4> + <p>[line 65]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_TIME3"></a> + <p></p> + <h4>FORMAT_DATE_TIME3 = <span class="value">&nbsp;'h:mm'</span></h4> + <p>[line 66]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_TIME4"></a> + <p></p> + <h4>FORMAT_DATE_TIME4 = <span class="value">&nbsp;'h:mm:ss'</span></h4> + <p>[line 67]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_TIME5"></a> + <p></p> + <h4>FORMAT_DATE_TIME5 = <span class="value">&nbsp;'mm:ss'</span></h4> + <p>[line 68]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_TIME6"></a> + <p></p> + <h4>FORMAT_DATE_TIME6 = <span class="value">&nbsp;'h:mm:ss'</span></h4> + <p>[line 69]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_TIME7"></a> + <p></p> + <h4>FORMAT_DATE_TIME7 = <span class="value">&nbsp;'i:s.S'</span></h4> + <p>[line 70]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_TIME8"></a> + <p></p> + <h4>FORMAT_DATE_TIME8 = <span class="value">&nbsp;'h:mm:ss;@'</span></h4> + <p>[line 71]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_XLSX14"></a> + <p></p> + <h4>FORMAT_DATE_XLSX14 = <span class="value">&nbsp;'mm-dd-yy'</span></h4> + <p>[line 58]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_XLSX15"></a> + <p></p> + <h4>FORMAT_DATE_XLSX15 = <span class="value">&nbsp;'d-mmm-yy'</span></h4> + <p>[line 59]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_XLSX16"></a> + <p></p> + <h4>FORMAT_DATE_XLSX16 = <span class="value">&nbsp;'d-mmm'</span></h4> + <p>[line 60]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_XLSX17"></a> + <p></p> + <h4>FORMAT_DATE_XLSX17 = <span class="value">&nbsp;'mmm-yy'</span></h4> + <p>[line 61]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_XLSX22"></a> + <p></p> + <h4>FORMAT_DATE_XLSX22 = <span class="value">&nbsp;'m/d/yy&nbsp;h:mm'</span></h4> + <p>[line 62]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_YYYYMMDD"></a> + <p></p> + <h4>FORMAT_DATE_YYYYMMDD = <span class="value">&nbsp;'yy-mm-dd'</span></h4> + <p>[line 52]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_YYYYMMDD2"></a> + <p></p> + <h4>FORMAT_DATE_YYYYMMDD2 = <span class="value">&nbsp;'yyyy-mm-dd'</span></h4> + <p>[line 51]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_DATE_YYYYMMDDSLASH"></a> + <p></p> + <h4>FORMAT_DATE_YYYYMMDDSLASH = <span class="value">&nbsp;'yy/mm/dd;@'</span></h4> + <p>[line 72]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_GENERAL"></a> + <p></p> + <h4>FORMAT_GENERAL = <span class="value">&nbsp;'General'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_NUMBER"></a> + <p></p> + <h4>FORMAT_NUMBER = <span class="value">&nbsp;'0'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_NUMBER_00"></a> + <p></p> + <h4>FORMAT_NUMBER_00 = <span class="value">&nbsp;'0.00'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_NUMBER_COMMA_SEPARATED1"></a> + <p></p> + <h4>FORMAT_NUMBER_COMMA_SEPARATED1 = <span class="value">&nbsp;'#,##0.00'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_NUMBER_COMMA_SEPARATED2"></a> + <p></p> + <h4>FORMAT_NUMBER_COMMA_SEPARATED2 = <span class="value">&nbsp;'#,##0.00_-'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_PERCENTAGE"></a> + <p></p> + <h4>FORMAT_PERCENTAGE = <span class="value">&nbsp;'0%'</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_PERCENTAGE_00"></a> + <p></p> + <h4>FORMAT_PERCENTAGE_00 = <span class="value">&nbsp;'0.00%'</span></h4> + <p>[line 49]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constFORMAT_TEXT"></a> + <p></p> + <h4>FORMAT_TEXT = <span class="value">&nbsp;'@'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:44 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Protection.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Protection.html new file mode 100644 index 0000000..488db72 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/PHPExcel_Style_Protection.html @@ -0,0 +1,696 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Style_Protection</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Style_Protection</h1> +Source Location: /PHPExcel/Style/Protection.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Style_Protection</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#constPROTECTION_INHERIT">PROTECTION_INHERIT</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#constPROTECTION_PROTECTED">PROTECTION_PROTECTED</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#constPROTECTION_UNPROTECTED">PROTECTION_UNPROTECTED</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodapplyFromArray">applyFromArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodbindParent">bindParent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetActiveCell">getActiveCell</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetActiveSheet">getActiveSheet</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetHidden">getHidden</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetIsSupervisor">getIsSupervisor</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetLocked">getLocked</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetSelectedCells">getSelectedCells</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetSharedComponent">getSharedComponent</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetStyleArray">getStyleArray</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodsetHidden">setHidden</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodsetLocked">setLocked</a></li> + <li><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Style_Protection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 88]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Protection __construct( +[boolean +$isSupervisor = false], [boolean +$isConditional = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Style_Protection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isSupervisor</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a supervisor or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isConditional</b>&nbsp;&nbsp;</td> + <td>Flag indicating if this is a conditional style or not Leave this value at default unless you understand exactly what its ramifications are</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodapplyFromArray"></a> + <h3>method applyFromArray <span class="smalllinenumber">[line 187]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a> applyFromArray( +[array +$pStyles = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Apply styles from array<br /><br /><p><ol><li><div class="src-line">&nbsp;<span class="src-var">$objPHPExcel</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetActiveSheet">getActiveSheet</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><span class="src-id">getStyle</span><span class="src-sym">(</span><span class="src-str">'B2'</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetLocked">getLocked</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html#methodapplyFromArray">applyFromArray</a><span class="src-sym">(&nbsp;</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'locked'&nbsp;</span>=&gt;&nbsp;<span class="src-id">true</span><span class="src-sym">,&nbsp;</span><span class="src-str">'hidden'&nbsp;</span>=&gt;&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;)</span><span class="src-sym">;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pStyles</b>&nbsp;&nbsp;</td> + <td>Array containing style information</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbindParent"></a> + <h3>method bindParent <span class="smalllinenumber">[line 106]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a> bindParent( +<a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Bind parent. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveCell"></a> + <h3>method getActiveCell <span class="smalllinenumber">[line 160]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getActiveCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveSheet"></a> + <h3>method getActiveSheet <span class="smalllinenumber">[line 138]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getActiveSheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active sheet. Only used for supervisor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 266]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHidden"></a> + <h3>method getHidden <span class="smalllinenumber">[line 238]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHidden( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hidden<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIsSupervisor"></a> + <h3>method getIsSupervisor <span class="smalllinenumber">[line 117]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIsSupervisor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is this a supervisor or a real style component?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLocked"></a> + <h3>method getLocked <span class="smalllinenumber">[line 210]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getLocked( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get locked<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectedCells"></a> + <h3>method getSelectedCells <span class="smalllinenumber">[line 149]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSelectedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the currently active cell coordinate in currently active sheet.<br /><br /><p>Only used for supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>E.g. 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSharedComponent"></a> + <h3>method getSharedComponent <span class="smalllinenumber">[line 128]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a> getSharedComponent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get the shared style component for the currently active cell in currently active sheet.<br /><br /><p>Only used for style supervisor</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyleArray"></a> + <h3>method getStyleArray <span class="smalllinenumber">[line 171]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getStyleArray( +array +$array)</code> + </td></tr></table> + </td></tr></table><br /> + + Build style array from subcomponents<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$array</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetHidden"></a> + <h3>method setHidden <span class="smalllinenumber">[line 251]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a> setHidden( +[string +$pValue = self::PROTECTION_INHERIT])</code> + </td></tr></table> + </td></tr></table><br /> + + Set hidden<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLocked"></a> + <h3>method setLocked <span class="smalllinenumber">[line 223]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a> setLocked( +[string +$pValue = self::PROTECTION_INHERIT])</code> + </td></tr></table> + </td></tr></table><br /> + + Set locked<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 280]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constPROTECTION_INHERIT"></a> + <p></p> + <h4>PROTECTION_INHERIT = <span class="value">&nbsp;'inherit'</span></h4> + <p>[line 39]</p> + Protection styles<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPROTECTION_PROTECTED"></a> + <p></p> + <h4>PROTECTION_PROTECTED = <span class="value">&nbsp;'protected'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPROTECTION_UNPROTECTED"></a> + <p></p> + <h4>PROTECTION_UNPROTECTED = <span class="value">&nbsp;'unprotected'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Alignment.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Alignment.php.html new file mode 100644 index 0000000..9ee3e43 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Alignment.php.html @@ -0,0 +1,142 @@ +<html> +<head> +<title>Docs for page Alignment.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Alignment.php</h1> +Source Location: /PHPExcel/Style/Alignment.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a></dt> + <dd>PHPExcel_Style_Alignment</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Border.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Border.php.html new file mode 100644 index 0000000..9122029 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Border.php.html @@ -0,0 +1,142 @@ +<html> +<head> +<title>Docs for page Border.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Border.php</h1> +Source Location: /PHPExcel/Style/Border.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a></dt> + <dd>PHPExcel_Style_Border</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:17 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Borders.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Borders.php.html new file mode 100644 index 0000000..a1249a4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Borders.php.html @@ -0,0 +1,142 @@ +<html> +<head> +<title>Docs for page Borders.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Borders.php</h1> +Source Location: /PHPExcel/Style/Borders.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a></dt> + <dd>PHPExcel_Style_Borders</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Color.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Color.php.html new file mode 100644 index 0000000..87be4a9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Color.php.html @@ -0,0 +1,142 @@ +<html> +<head> +<title>Docs for page Color.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Color.php</h1> +Source Location: /PHPExcel/Style/Color.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a></dt> + <dd>PHPExcel_Style_Color</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:29 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Conditional.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Conditional.php.html new file mode 100644 index 0000000..3bcf021 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Conditional.php.html @@ -0,0 +1,142 @@ +<html> +<head> +<title>Docs for page Conditional.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Conditional.php</h1> +Source Location: /PHPExcel/Style/Conditional.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a></dt> + <dd>PHPExcel_Style_Conditional</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:33 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Fill.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Fill.php.html new file mode 100644 index 0000000..0278597 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Fill.php.html @@ -0,0 +1,142 @@ +<html> +<head> +<title>Docs for page Fill.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Fill.php</h1> +Source Location: /PHPExcel/Style/Fill.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a></dt> + <dd>PHPExcel_Style_Fill</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:15 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Font.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Font.php.html new file mode 100644 index 0000000..df2af5c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Font.php.html @@ -0,0 +1,142 @@ +<html> +<head> +<title>Docs for page Font.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Font.php</h1> +Source Location: /PHPExcel/Style/Font.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a></dt> + <dd>PHPExcel_Style_Font</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html new file mode 100644 index 0000000..92af9e4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html @@ -0,0 +1,142 @@ +<html> +<head> +<title>Docs for page NumberFormat.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: NumberFormat.php</h1> +Source Location: /PHPExcel/Style/NumberFormat.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a></dt> + <dd>PHPExcel_Style_NumberFormat</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:44 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Protection.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Protection.php.html new file mode 100644 index 0000000..d9f421c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style---Protection.php.html @@ -0,0 +1,142 @@ +<html> +<head> +<title>Docs for page Protection.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Protection.php</h1> +Source Location: /PHPExcel/Style/Protection.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a></dt> + <dd>PHPExcel_Style_Protection</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.4.5, 2007-08-23</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style.php.html new file mode 100644 index 0000000..a2d05ee --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_PHPExcel---Style.php.html @@ -0,0 +1,142 @@ +<html> +<head> +<title>Docs for page Style.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="../elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="../PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Style.php</h1> +Source Location: /PHPExcel/Style.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a></dt> + <dd>PHPExcel_Style</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:06 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_notes/dwsync.xml new file mode 100644 index 0000000..89d8ff9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Style/_notes/dwsync.xml @@ -0,0 +1,143 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Style.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Style_Alignment.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Style_Border.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Style_Borders.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Style_Color.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Style_Conditional.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Style_Fill.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Style_Font.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Style_NumberFormat.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Style_Protection.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Style---Alignment.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Style---Border.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Style---Borders.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Style---Color.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Style---Conditional.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Style---Fill.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Style---Font.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Style---NumberFormat.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Style---Protection.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Style.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Style_Borders.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Style_NumberFormat.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Style_Conditional.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Style---Borders.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Style---NumberFormat.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Style_Font.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Style---Conditional.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Style---Font.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Style.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Style_Border.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Style_Alignment.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Style_Color.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Style.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Style---Border.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Style---Alignment.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Style---Color.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Style_Protection.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Style_Fill.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Style---Fill.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Style---Protection.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Style_Borders.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Style_NumberFormat.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Style_Conditional.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Style---Borders.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Style---NumberFormat.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Style_Font.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Style---Conditional.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Style---Font.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Style.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Style_Border.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Style_Alignment.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Style_Color.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Style.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Style---Border.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Style---Alignment.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Style---Color.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Style_Protection.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Style_Fill.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Style---Fill.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Style---Protection.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Style_Borders.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560220255060" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Style_NumberFormat.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560221026362" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Style_Conditional.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560221690315" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Style---Borders.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560222314095" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Style---NumberFormat.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560222965525" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Style_Font.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560223572954" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Style---Conditional.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560224057747" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Style---Font.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560224545254" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Style.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560225003867" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Style_Border.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560225445044" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Style_Alignment.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560225998713" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Style_Color.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560226531369" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Style.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560227071818" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Style---Border.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560227515371" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Style---Color.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560228441507" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Style---Alignment.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560227999284" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Style_Protection.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560228901839" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Style_Fill.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560229447747" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Style---Fill.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560229920693" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Style---Protection.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560230374909" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Style_Borders.html" server="62.244.88.21/amashow/" local="131414752593209222" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Style_NumberFormat.html" server="62.244.88.21/amashow/" local="131414752593825533" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Style---Borders.php.html" server="62.244.88.21/amashow/" local="131414752594346482" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Style_Conditional.html" server="62.244.88.21/amashow/" local="131414752594106843" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Style---NumberFormat.php.html" server="62.244.88.21/amashow/" local="131414752594576494" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Style_Font.html" server="62.244.88.21/amashow/" local="131414752594842461" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Style---Conditional.php.html" server="62.244.88.21/amashow/" local="131414752595065640" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Style---Font.php.html" server="62.244.88.21/amashow/" local="131414752595275005" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Style.php.html" server="62.244.88.21/amashow/" local="131414752595773683" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Style_Border.html" server="62.244.88.21/amashow/" local="131414752596254453" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Style_Alignment.html" server="62.244.88.21/amashow/" local="131414752596588910" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Style.html" server="62.244.88.21/amashow/" local="131414752597603766" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Style_Color.html" server="62.244.88.21/amashow/" local="131414752597106583" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Style---Border.php.html" server="62.244.88.21/amashow/" local="131414752597814001" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Style---Alignment.php.html" server="62.244.88.21/amashow/" local="131414752598185261" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Style---Color.php.html" server="62.244.88.21/amashow/" local="131414752598400218" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Style_Protection.html" server="62.244.88.21/amashow/" local="131414752598649162" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Style_Fill.html" server="62.244.88.21/amashow/" local="131414752599097930" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Style---Fill.php.html" server="62.244.88.21/amashow/" local="131414752599305278" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Style---Protection.php.html" server="62.244.88.21/amashow/" local="131414752599514531" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Style_Borders.html" server="62.244.88.21/deciday/" local="131919461620569317" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Style---Conditional.php.html" server="62.244.88.21/deciday/" local="131919461623224938" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Style_Alignment.html" server="62.244.88.21/deciday/" local="131919461618689601" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Style.php.html" server="62.244.88.21/deciday/" local="131919461626918215" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Style_Color.html" server="62.244.88.21/deciday/" local="131919461622199195" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Style.html" server="62.244.88.21/deciday/" local="131919461625703633" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Style_Conditional.html" server="62.244.88.21/deciday/" local="131919461622480423" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Style---Fill.php.html" server="62.244.88.21/deciday/" local="131919461623716929" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Style---Alignment.php.html" server="62.244.88.21/deciday/" local="131919461619197506" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Style---Borders.php.html" server="62.244.88.21/deciday/" local="131919461620255825" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Style_NumberFormat.html" server="62.244.88.21/deciday/" local="131919461626734725" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Style---Font.php.html" server="62.244.88.21/deciday/" local="131919461624751713" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Style_Font.html" server="62.244.88.21/deciday/" local="131919461625066556" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Style---Border.php.html" server="62.244.88.21/deciday/" local="131919461619976360" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Style_Protection.html" server="62.244.88.21/deciday/" local="131919461627558979" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Style_Border.html" server="62.244.88.21/deciday/" local="131919461619017524" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Style---Protection.php.html" server="62.244.88.21/deciday/" local="131919461627905137" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Style---NumberFormat.php.html" server="62.244.88.21/deciday/" local="131919461626190937" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Style---Color.php.html" server="62.244.88.21/deciday/" local="131919461621980782" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Style_Fill.html" server="62.244.88.21/deciday/" local="131919461623917726" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Style.html" server="62.244.88.21/deciday_18/" local="131414752597603766" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Style_Alignment.html" server="62.244.88.21/deciday_18/" local="131414752596588910" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Style_Border.html" server="62.244.88.21/deciday_18/" local="131414752596254453" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Style_Borders.html" server="62.244.88.21/deciday_18/" local="131414752593209222" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Style_Color.html" server="62.244.88.21/deciday_18/" local="131414752597106583" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Style_Conditional.html" server="62.244.88.21/deciday_18/" local="131414752594106843" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Style_Fill.html" server="62.244.88.21/deciday_18/" local="131414752599097930" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Style_Font.html" server="62.244.88.21/deciday_18/" local="131414752594842461" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Style_NumberFormat.html" server="62.244.88.21/deciday_18/" local="131414752593825533" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Style---Alignment.php.html" server="62.244.88.21/deciday_18/" local="131414752598185261" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Style_Protection.html" server="62.244.88.21/deciday_18/" local="131414752598649162" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Style---Border.php.html" server="62.244.88.21/deciday_18/" local="131414752597814001" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Style---Borders.php.html" server="62.244.88.21/deciday_18/" local="131414752594346482" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Style---Color.php.html" server="62.244.88.21/deciday_18/" local="131414752598400218" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Style---Font.php.html" server="62.244.88.21/deciday_18/" local="131414752595275005" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Style---Conditional.php.html" server="62.244.88.21/deciday_18/" local="131414752595065640" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Style---Fill.php.html" server="62.244.88.21/deciday_18/" local="131414752599305278" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Style---NumberFormat.php.html" server="62.244.88.21/deciday_18/" local="131414752594576494" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Style---Protection.php.html" server="62.244.88.21/deciday_18/" local="131414752599514531" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Style.php.html" server="62.244.88.21/deciday_18/" local="131414752595773683" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet.html new file mode 100644 index 0000000..0184a1a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet.html @@ -0,0 +1,5441 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet</h1> +Source Location: /PHPExcel/Worksheet.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#constBREAK_COLUMN">BREAK_COLUMN</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#constBREAK_NONE">BREAK_NONE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#constBREAK_ROW">BREAK_ROW</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#constSHEETSTATE_HIDDEN">SHEETSTATE_HIDDEN</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#constSHEETSTATE_VERYHIDDEN">SHEETSTATE_VERYHIDDEN</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#constSHEETSTATE_VISIBLE">SHEETSTATE_VISIBLE</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodaddChart">addChart</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcalculateColumnWidths">calculateColumnWidths</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcalculateWorksheetDataDimension">calculateWorksheetDataDimension</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcalculateWorksheetDimension">calculateWorksheetDimension</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcellExists">cellExists</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcellExistsByColumnAndRow">cellExistsByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodconditionalStylesExists">conditionalStylesExists</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcopy">copy</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methoddataValidationExists">dataValidationExists</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methoddisconnectCells">disconnectCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodduplicateConditionalStyle">duplicateConditionalStyle</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodduplicateStyle">duplicateStyle</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodduplicateStyleArray">duplicateStyleArray</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodextractSheetTitle">extractSheetTitle</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodfreezePane">freezePane</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodfreezePaneByColumnAndRow">freezePaneByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodfromArray">fromArray</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgarbageCollect">garbageCollect</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetActiveCell">getActiveCell</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetAutoFilter">getAutoFilter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetBreaks">getBreaks</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCell">getCell</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCellByColumnAndRow">getCellByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCellCacheController">getCellCacheController</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCellCollection">getCellCollection</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartByIndex">getChartByIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartByName">getChartByName</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartCollection">getChartCollection</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartCount">getChartCount</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartNames">getChartNames</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetColumnDimension">getColumnDimension</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetColumnDimensionByColumn">getColumnDimensionByColumn</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetColumnDimensions">getColumnDimensions</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetComment">getComment</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCommentByColumnAndRow">getCommentByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetComments">getComments</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetConditionalStyles">getConditionalStyles</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetConditionalStylesCollection">getConditionalStylesCollection</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDataValidation">getDataValidation</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDataValidationCollection">getDataValidationCollection</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDefaultColumnDimension">getDefaultColumnDimension</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDefaultRowDimension">getDefaultRowDimension</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDefaultStyle">getDefaultStyle</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDrawingCollection">getDrawingCollection</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetFreezePane">getFreezePane</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHeaderFooter">getHeaderFooter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestColumn">getHighestColumn</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestDataColumn">getHighestDataColumn</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestDataRow">getHighestDataRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestRow">getHighestRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestRowAndColumn">getHighestRowAndColumn</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHyperlink">getHyperlink</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHyperlinkCollection">getHyperlinkCollection</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetInvalidCharacters">getInvalidCharacters</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetMergeCells">getMergeCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetPageMargins">getPageMargins</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetPageSetup">getPageSetup</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetParent">getParent</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetPrintGridlines">getPrintGridlines</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetProtectedCells">getProtectedCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetProtection">getProtection</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRightToLeft">getRightToLeft</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRowDimension">getRowDimension</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRowDimensions">getRowDimensions</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRowIterator">getRowIterator</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSelectedCell">getSelectedCell</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSelectedCells">getSelectedCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSheetState">getSheetState</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSheetView">getSheetView</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowGridlines">getShowGridlines</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowRowColHeaders">getShowRowColHeaders</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowSummaryBelow">getShowSummaryBelow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowSummaryRight">getShowSummaryRight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetStyle">getStyle</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetStyleByColumnAndRow">getStyleByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetStyles">getStyles</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetTabColor">getTabColor</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetTitle">getTitle</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodhyperlinkExists">hyperlinkExists</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodinsertNewColumnBefore">insertNewColumnBefore</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodinsertNewColumnBeforeByIndex">insertNewColumnBeforeByIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodinsertNewRowBefore">insertNewRowBefore</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodisTabColorSet">isTabColorSet</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodmergeCells">mergeCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodmergeCellsByColumnAndRow">mergeCellsByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodnamedRangeToArray">namedRangeToArray</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodprotectCells">protectCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodprotectCellsByColumnAndRow">protectCellsByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrangeToArray">rangeToArray</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrebindParent">rebindParent</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrefreshColumnDimensions">refreshColumnDimensions</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrefreshRowDimensions">refreshRowDimensions</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveAutoFilter">removeAutoFilter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveColumn">removeColumn</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveColumnByIndex">removeColumnByIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveConditionalStyles">removeConditionalStyles</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveRow">removeRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodresetTabColor">resetTabColor</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetAutoFilter">setAutoFilter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetAutoFilterByColumnAndRow">setAutoFilterByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetBreak">setBreak</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetBreakByColumnAndRow">setBreakByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValue">setCellValue</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValueByColumnAndRow">setCellValueByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValueExplicit">setCellValueExplicit</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValueExplicitByColumnAndRow">setCellValueExplicitByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetComments">setComments</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetConditionalStyles">setConditionalStyles</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetDataValidation">setDataValidation</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetDefaultStyle">setDefaultStyle</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetHeaderFooter">setHeaderFooter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetHyperlink">setHyperlink</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetMergeCells">setMergeCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetPageMargins">setPageMargins</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetPageSetup">setPageSetup</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetPrintGridlines">setPrintGridlines</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetProtection">setProtection</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetRightToLeft">setRightToLeft</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSelectedCell">setSelectedCell</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSelectedCellByColumnAndRow">setSelectedCellByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSelectedCells">setSelectedCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSharedStyle">setSharedStyle</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSheetState">setSheetState</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSheetView">setSheetView</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowGridlines">setShowGridlines</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowRowColHeaders">setShowRowColHeaders</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowSummaryBelow">setShowSummaryBelow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowSummaryRight">setShowSummaryRight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetTitle">setTitle</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodshrinkRangeToFit">shrinkRangeToFit</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsortCellCollection">sortCellCollection</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodtoArray">toArray</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunfreezePane">unfreezePane</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunmergeCells">unmergeCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunmergeCellsByColumnAndRow">unmergeCellsByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunprotectCells">unprotectCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunprotectCellsByColumnAndRow">unprotectCellsByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodextractSheetTitle"></a> + <h3>static method extractSheetTitle <span class="smalllinenumber">[line 2568]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static mixed extractSheetTitle( +string +$pRange, [bool +$returnRange = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Extract worksheet title from range.<br /><br /><p>Example: extractSheetTitle(&quot;testSheet!A1&quot;) ==&gt; 'A1' Example: extractSheetTitle(&quot;'testSheet 1'!A1&quot;, true) ==&gt; array('testSheet 1', 'A1');</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Range to extract title from</td> + </tr> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$returnRange</b>&nbsp;&nbsp;</td> + <td>Return range? (see example)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetInvalidCharacters"></a> + <h3>static method getInvalidCharacters <span class="smalllinenumber">[line 402]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static array getInvalidCharacters( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get array of invalid characters for sheet title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="methodaddChart"></a> + <h3>method addChart <span class="smalllinenumber">[line 528]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> addChart( +[PHPExcel_Chart +$pChart = null], [int|null +$iChartIndex = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Add chart<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a>&nbsp;&nbsp;</td> + <td><b>$pChart</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int|null&nbsp;&nbsp;</td> + <td><b>$iChartIndex</b>&nbsp;&nbsp;</td> + <td>Index where chart should go (0,1,..., or null for last)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 334]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet __construct( +[PHPExcel +$pParent = null], [string +$pTitle = 'Worksheet'])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pParent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pTitle</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcalculateColumnWidths"></a> + <h3>method calculateColumnWidths <span class="smalllinenumber">[line 677]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet; calculateColumnWidths( +[boolean +$calculateMergeCells = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate widths for auto-size columns<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$calculateMergeCells</b>&nbsp;&nbsp;</td> + <td>Calculate merge cell width</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcalculateWorksheetDataDimension"></a> + <h3>method calculateWorksheetDataDimension <span class="smalllinenumber">[line 665]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string calculateWorksheetDataDimension( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate worksheet data dimension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>String containing the dimension of this worksheet that actually contain data</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcalculateWorksheetDimension"></a> + <h3>method calculateWorksheetDimension <span class="smalllinenumber">[line 654]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string calculateWorksheetDimension( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Calculate worksheet dimension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>String containing the dimension of this worksheet</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcellExists"></a> + <h3>method cellExists <span class="smalllinenumber">[line 1184]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean cellExists( +[string +$pCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Cell at a specific coordinate exists?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcellExistsByColumnAndRow"></a> + <h3>method cellExistsByColumnAndRow <span class="smalllinenumber">[line 1231]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean cellExistsByColumnAndRow( +[string +$pColumn = 0], [string +$pRow = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Cell at a specific coordinate by using numeric cell coordinates exists?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the cell</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodconditionalStylesExists"></a> + <h3>method conditionalStylesExists <span class="smalllinenumber">[line 1367]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean conditionalStylesExists( +[string +$pCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Do conditional styles exist for this cell?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcopy"></a> + <h3>method copy <span class="smalllinenumber">[line 2762]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> copy( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Copy worksheet (!= clone!)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddataValidationExists"></a> + <h3>method dataValidationExists <span class="smalllinenumber">[line 2678]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean dataValidationExists( +[string +$pCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Data validation at a specific coordinate exists?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddisconnectCells"></a> + <h3>method disconnectCells <span class="smalllinenumber">[line 379]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void disconnectCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Disconnect all cells from this PHPExcel_Worksheet object,<br /><br /><p>typically so that the worksheet object can be unset</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodduplicateConditionalStyle"></a> + <h3>method duplicateConditionalStyle <span class="smalllinenumber">[line 1513]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> duplicateConditionalStyle( +[array +$pCellStyle = null], [string +$pRange = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Duplicate conditional style to a range of cells<br /><br /><p>Please note that this will overwrite existing cell styles for cells in range!</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Range of cells (i.e. &quot;A1:B10&quot;), or just one cell (i.e. &quot;A1&quot;)</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pCellStyle</b>&nbsp;&nbsp;</td> + <td>of PHPExcel_Style_Conditional $pCellStyle Cell style to duplicate</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodduplicateStyle"></a> + <h3>method duplicateStyle <span class="smalllinenumber">[line 1449]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> duplicateStyle( +[PHPExcel_Style +$pCellStyle = null], [string +$pRange = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Duplicate cell style to a range of cells<br /><br /><p>Please note that this will overwrite existing cell styles for cells in range!</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$pCellStyle</b>&nbsp;&nbsp;</td> + <td>Cell style to duplicate</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Range of cells (i.e. &quot;A1:B10&quot;), or just one cell (i.e. &quot;A1&quot;)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodduplicateStyleArray"></a> + <h3>method duplicateStyleArray <span class="smalllinenumber">[line 1573]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> duplicateStyleArray( +[array +$pStyles = null], [string +$pRange = ''], [boolean +$pAdvanced = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Duplicate cell style array to a range of cells<br /><br /><p>Please note that this will overwrite existing cell styles for cells in range, if they are in the styles array. For example, if you decide to set a range of cells to font bold, only include font bold in the styles array.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td></td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pStyles</b>&nbsp;&nbsp;</td> + <td>Array containing style information</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Range of cells (i.e. &quot;A1:B10&quot;), or just one cell (i.e. &quot;A1&quot;)</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pAdvanced</b>&nbsp;&nbsp;</td> + <td>Advanced mode for setting borders.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodfreezePane"></a> + <h3>method freezePane <span class="smalllinenumber">[line 1912]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> freezePane( +[string +$pCell = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Freeze Pane<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCell</b>&nbsp;&nbsp;</td> + <td>Cell (i.e. A2) Examples: A2 will freeze the rows above cell A2 (i.e row 1) B1 will freeze the columns to the left of cell B1 (i.e column A) B2 will freeze the rows above and to the left of cell A2 (i.e row 1 and column A)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodfreezePaneByColumnAndRow"></a> + <h3>method freezePaneByColumnAndRow <span class="smalllinenumber">[line 1933]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> freezePaneByColumnAndRow( +[int +$pColumn = 0], [int +$pRow = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Freeze Pane by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodfromArray"></a> + <h3>method fromArray <span class="smalllinenumber">[line 2338]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> fromArray( +[array +$source = null], [mixed +$nullValue = null], [string +$startCell = 'A1'], [boolean +$strictNullComparison = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Fill worksheet from values in array<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$source</b>&nbsp;&nbsp;</td> + <td>Source array</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$nullValue</b>&nbsp;&nbsp;</td> + <td>Value in source array that stands for blank cell</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$startCell</b>&nbsp;&nbsp;</td> + <td>Insert array starting from this cell address as the top left coordinate</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$strictNullComparison</b>&nbsp;&nbsp;</td> + <td>Apply strict comparison when testing for null values in the array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgarbageCollect"></a> + <h3>method garbageCollect <span class="smalllinenumber">[line 2504]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> garbageCollect( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Run PHPExcel garabage collector.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetActiveCell"></a> + <h3>method getActiveCell <span class="smalllinenumber">[line 2235]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getActiveCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get active cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Example: 'A1'</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAutoFilter"></a> + <h3>method getAutoFilter <span class="smalllinenumber">[line 1837]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a> getAutoFilter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Autofilter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBreaks"></a> + <h3>method getBreaks <span class="smalllinenumber">[line 1620]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array[] getBreaks( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get breaks<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCell"></a> + <h3>method getCell <span class="smalllinenumber">[line 1087]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCell( +[string +$pCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellByColumnAndRow"></a> + <h3>method getCellByColumnAndRow <span class="smalllinenumber">[line 1157]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> getCellByColumnAndRow( +[string +$pColumn = 0], [string +$pRow = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell at a specific coordinate by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Cell that was found</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the cell</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellCacheController"></a> + <h3>method getCellCacheController <span class="smalllinenumber">[line 392]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_CachedObjectStorage_xxx getCellCacheController( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the cache controller for the cell collection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellCollection"></a> + <h3>method getCellCollection <span class="smalllinenumber">[line 435]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Cell[] getCellCollection( +[boolean +$pSorted = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Get collection of cells<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pSorted</b>&nbsp;&nbsp;</td> + <td>Also sort the cell collection?</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetChartByIndex"></a> + <h3>method getChartByIndex <span class="smalllinenumber">[line 559]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>false|<a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> getChartByIndex( +[string +$index = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Get a chart by its index position<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>Chart index position</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetChartByName"></a> + <h3>method getChartByName <span class="smalllinenumber">[line 597]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>false|<a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a> getChartByName( +[string +$chartName = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Get a chart by name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$chartName</b>&nbsp;&nbsp;</td> + <td>Chart name</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetChartCollection"></a> + <h3>method getChartCollection <span class="smalllinenumber">[line 515]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Chart[] getChartCollection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get collection of charts<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetChartCount"></a> + <h3>method getChartCount <span class="smalllinenumber">[line 547]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getChartCount( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the count of charts on this worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The number of charts</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetChartNames"></a> + <h3>method getChartNames <span class="smalllinenumber">[line 581]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string[] getChartNames( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return an array of the names of charts on this worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The names of charts</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumnDimension"></a> + <h3>method getColumnDimension <span class="smalllinenumber">[line 1262]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a> getColumnDimension( +[string +$pColumn = 'A'])</code> + </td></tr></table> + </td></tr></table><br /> + + Get column dimension at a specific column<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>String index of the column</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumnDimensionByColumn"></a> + <h3>method getColumnDimensionByColumn <span class="smalllinenumber">[line 1283]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a> getColumnDimensionByColumn( +[string +$pColumn = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Get column dimension at a specific column by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumnDimensions"></a> + <h3>method getColumnDimensions <span class="smalllinenumber">[line 485]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_ColumnDimension[] getColumnDimensions( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get collection of column dimensions<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetComment"></a> + <h3>method getComment <span class="smalllinenumber">[line 2183]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a> getComment( +[string +$pCellCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Get comment for cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCellCoordinate</b>&nbsp;&nbsp;</td> + <td>Cell coordinate to get comment for</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCommentByColumnAndRow"></a> + <h3>method getCommentByColumnAndRow <span class="smalllinenumber">[line 2214]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a> getCommentByColumnAndRow( +[int +$pColumn = 0], [int +$pRow = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Get comment for cell by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetComments"></a> + <h3>method getComments <span class="smalllinenumber">[line 2158]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Comment[] getComments( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get comments<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetConditionalStyles"></a> + <h3>method getConditionalStyles <span class="smalllinenumber">[line 1353]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Conditional[] getConditionalStyles( +[string +$pCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Get conditional styles for a cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetConditionalStylesCollection"></a> + <h3>method getConditionalStylesCollection <span class="smalllinenumber">[line 1392]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getConditionalStylesCollection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get collection of conditional styles<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDataValidation"></a> + <h3>method getDataValidation <span class="smalllinenumber">[line 2643]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getDataValidation( +[string +$pCellCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Get data validation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCellCoordinate</b>&nbsp;&nbsp;</td> + <td>Cell coordinate to get data validation for</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDataValidationCollection"></a> + <h3>method getDataValidationCollection <span class="smalllinenumber">[line 2688]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Cell_DataValidation[] getDataValidationCollection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get collection of data validations<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDefaultColumnDimension"></a> + <h3>method getDefaultColumnDimension <span class="smalllinenumber">[line 495]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a> getDefaultColumnDimension( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get default column dimension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDefaultRowDimension"></a> + <h3>method getDefaultRowDimension <span class="smalllinenumber">[line 475]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a> getDefaultRowDimension( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get default row dimension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDefaultStyle"></a> + <h3>method getDefaultStyle <span class="smalllinenumber">[line 1305]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> getDefaultStyle( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get default style of workbork.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td></td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDrawingCollection"></a> + <h3>method getDrawingCollection <span class="smalllinenumber">[line 505]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_BaseDrawing[] getDrawingCollection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get collection of drawings<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFreezePane"></a> + <h3>method getFreezePane <span class="smalllinenumber">[line 1895]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFreezePane( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Freeze Pane<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 2546]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHeaderFooter"></a> + <h3>method getHeaderFooter <span class="smalllinenumber">[line 906]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> getHeaderFooter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get page header/footer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHighestColumn"></a> + <h3>method getHighestColumn <span class="smalllinenumber">[line 974]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHighestColumn( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get highest worksheet column<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Highest column name</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHighestDataColumn"></a> + <h3>method getHighestDataColumn <span class="smalllinenumber">[line 984]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHighestDataColumn( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get highest worksheet column that contains data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Highest column name that contains data</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHighestDataRow"></a> + <h3>method getHighestDataRow <span class="smalllinenumber">[line 1004]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHighestDataRow( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get highest worksheet row that contains data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Highest row number that contains data</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHighestRow"></a> + <h3>method getHighestRow <span class="smalllinenumber">[line 994]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getHighestRow( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get highest worksheet row<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Highest row number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHighestRowAndColumn"></a> + <h3>method getHighestRowAndColumn <span class="smalllinenumber">[line 1014]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getHighestRowAndColumn( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get highest worksheet column and highest row that have cell records<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Highest column name and highest row number</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHyperlink"></a> + <h3>method getHyperlink <span class="smalllinenumber">[line 2588]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void getHyperlink( +[string +$pCellCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Get hyperlink<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCellCoordinate</b>&nbsp;&nbsp;</td> + <td>Cell coordinate to get hyperlink for</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHyperlinkCollection"></a> + <h3>method getHyperlinkCollection <span class="smalllinenumber">[line 2633]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Cell_Hyperlink[] getHyperlinkCollection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get collection of hyperlinks<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetMergeCells"></a> + <h3>method getMergeCells <span class="smalllinenumber">[line 1726]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array[] getMergeCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get merge cells array.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPageMargins"></a> + <h3>method getPageMargins <span class="smalllinenumber">[line 884]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a> getPageMargins( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get page margins<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPageSetup"></a> + <h3>method getPageSetup <span class="smalllinenumber">[line 862]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> getPageSetup( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get page setup<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetParent"></a> + <h3>method getParent <span class="smalllinenumber">[line 738]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> getParent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPrintGridlines"></a> + <h3>method getPrintGridlines <span class="smalllinenumber">[line 2078]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getPrintGridlines( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Print gridlines?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetProtectedCells"></a> + <h3>method getProtectedCells <span class="smalllinenumber">[line 1827]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array[] getProtectedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get protected cells<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetProtection"></a> + <h3>method getProtection <span class="smalllinenumber">[line 950]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> getProtection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Protection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRightToLeft"></a> + <h3>method getRightToLeft <span class="smalllinenumber">[line 2313]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getRightToLeft( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get right-to-left<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRowDimension"></a> + <h3>method getRowDimension <span class="smalllinenumber">[line 1242]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a> getRowDimension( +[int +$pRow = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Get row dimension at a specific row<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td>Numeric index of the row</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRowDimensions"></a> + <h3>method getRowDimensions <span class="smalllinenumber">[line 465]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_RowDimension[] getRowDimensions( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get collection of row dimensions<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRowIterator"></a> + <h3>method getRowIterator <span class="smalllinenumber">[line 2495]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a> getRowIterator( +[integer +$startRow = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Get row iterator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$startRow</b>&nbsp;&nbsp;</td> + <td>The row number at which to start iterating</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectedCell"></a> + <h3>method getSelectedCell <span class="smalllinenumber">[line 2225]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSelectedCell( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get selected cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td></td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectedCells"></a> + <h3>method getSelectedCells <span class="smalllinenumber">[line 2245]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSelectedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get selected cells<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheetState"></a> + <h3>method getSheetState <span class="smalllinenumber">[line 842]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getSheetState( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet state<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Sheet state (visible, hidden, veryHidden)</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheetView"></a> + <h3>method getSheetView <span class="smalllinenumber">[line 928]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> getSheetView( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet view<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowGridlines"></a> + <h3>method getShowGridlines <span class="smalllinenumber">[line 2058]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowGridlines( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Show gridlines?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowRowColHeaders"></a> + <h3>method getShowRowColHeaders <span class="smalllinenumber">[line 2098]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowRowColHeaders( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Show row and column headers?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowSummaryBelow"></a> + <h3>method getShowSummaryBelow <span class="smalllinenumber">[line 2118]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowSummaryBelow( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Show summary below? (Row/Column outlining)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShowSummaryRight"></a> + <h3>method getShowSummaryRight <span class="smalllinenumber">[line 2138]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getShowSummaryRight( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Show summary right? (Row/Column outlining)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyle"></a> + <h3>method getStyle <span class="smalllinenumber">[line 1336]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> getStyle( +[string +$pCellCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Get style for cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCellCoordinate</b>&nbsp;&nbsp;</td> + <td>Cell coordinate to get style for</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyleByColumnAndRow"></a> + <h3>method getStyleByColumnAndRow <span class="smalllinenumber">[line 1417]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> getStyleByColumnAndRow( +[int +$pColumn = 0], [int +$pRow = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Get style for cell by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStyles"></a> + <h3>method getStyles <span class="smalllinenumber">[line 1293]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style[] getStyles( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get styles<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTabColor"></a> + <h3>method getTabColor <span class="smalllinenumber">[line 2726]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> getTabColor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get tab color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTitle"></a> + <h3>method getTitle <span class="smalllinenumber">[line 767]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getTitle( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodhyperlinkExists"></a> + <h3>method hyperlinkExists <span class="smalllinenumber">[line 2623]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean hyperlinkExists( +[string +$pCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Hyperlink at a specific coordinate exists?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinsertNewColumnBefore"></a> + <h3>method insertNewColumnBefore <span class="smalllinenumber">[line 1974]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> insertNewColumnBefore( +[int +$pBefore = 'A'], [int +$pNumCols = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Insert a new column, updating all possible related data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pBefore</b>&nbsp;&nbsp;</td> + <td>Insert before this one</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumCols</b>&nbsp;&nbsp;</td> + <td>Number of columns to insert</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinsertNewColumnBeforeByIndex"></a> + <h3>method insertNewColumnBeforeByIndex <span class="smalllinenumber">[line 1992]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> insertNewColumnBeforeByIndex( +[int +$pBefore = 0], [int +$pNumCols = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Insert a new column, updating all possible related data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pBefore</b>&nbsp;&nbsp;</td> + <td>Insert before this one (numeric column coordinate of the cell)</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumCols</b>&nbsp;&nbsp;</td> + <td>Number of columns to insert</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinsertNewRowBefore"></a> + <h3>method insertNewRowBefore <span class="smalllinenumber">[line 1956]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> insertNewRowBefore( +[int +$pBefore = 1], [int +$pNumRows = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Insert a new row, updating all possible related data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pBefore</b>&nbsp;&nbsp;</td> + <td>Insert before this one</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumRows</b>&nbsp;&nbsp;</td> + <td>Number of rows to insert</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisTabColorSet"></a> + <h3>method isTabColorSet <span class="smalllinenumber">[line 2752]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isTabColorSet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Tab color set?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmergeCells"></a> + <h3>method mergeCells <span class="smalllinenumber">[line 1632]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> mergeCells( +[string +$pRange = 'A1:A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set merge on a cell range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Cell range (e.g. A1:E1)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodmergeCellsByColumnAndRow"></a> + <h3>method mergeCellsByColumnAndRow <span class="smalllinenumber">[line 1674]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> mergeCellsByColumnAndRow( +[int +$pColumn1 = 0], [int +$pRow1 = 1], [int +$pColumn2 = 0], [int +$pRow2 = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Set merge on a cell range by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn1</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the first cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow1</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the first cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn2</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the last cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow2</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the last cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodnamedRangeToArray"></a> + <h3>method namedRangeToArray <span class="smalllinenumber">[line 2453]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array namedRangeToArray( +[string +$pNamedRange = ''], [mixed +$nullValue = null], [boolean +$calculateFormulas = true], [boolean +$formatData = true], [boolean +$returnCellRef = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create array from a range of cells<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pNamedRange</b>&nbsp;&nbsp;</td> + <td>Name of the Named Range</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$nullValue</b>&nbsp;&nbsp;</td> + <td>Value returned in the array entry if a cell doesn't exist</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$calculateFormulas</b>&nbsp;&nbsp;</td> + <td>Should formulas be calculated?</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$formatData</b>&nbsp;&nbsp;</td> + <td>Should formatting be applied to cell values?</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$returnCellRef</b>&nbsp;&nbsp;</td> + <td>False - Return a simple array of rows and columns indexed by number counting from zero True - Return rows and columns indexed by their actual row and column IDs</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprotectCells"></a> + <h3>method protectCells <span class="smalllinenumber">[line 1753]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> protectCells( +[string +$pRange = 'A1'], [string +$pPassword = ''], [boolean +$pAlreadyHashed = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set protection on a cell range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Cell (e.g. A1) or cell range (e.g. A1:E1)</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pPassword</b>&nbsp;&nbsp;</td> + <td>Password to unlock the protection</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pAlreadyHashed</b>&nbsp;&nbsp;</td> + <td>If the password has already been hashed, set this to true</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprotectCellsByColumnAndRow"></a> + <h3>method protectCellsByColumnAndRow <span class="smalllinenumber">[line 1778]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> protectCellsByColumnAndRow( +[int +$pColumn1 = 0], [int +$pRow1 = 1], [int +$pColumn2 = 0], [int +$pRow2 = 1], [string +$pPassword = ''], [boolean +$pAlreadyHashed = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set protection on a cell range by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn1</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the first cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow1</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the first cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn2</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the last cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow2</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the last cell</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pPassword</b>&nbsp;&nbsp;</td> + <td>Password to unlock the protection</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pAlreadyHashed</b>&nbsp;&nbsp;</td> + <td>If the password has already been hashed, set this to true</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrangeToArray"></a> + <h3>method rangeToArray <span class="smalllinenumber">[line 2384]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array rangeToArray( +[string +$pRange = 'A1'], [mixed +$nullValue = null], [boolean +$calculateFormulas = true], [boolean +$formatData = true], [boolean +$returnCellRef = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create array from a range of cells<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Range of cells (i.e. &quot;A1:B10&quot;), or just one cell (i.e. &quot;A1&quot;)</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$nullValue</b>&nbsp;&nbsp;</td> + <td>Value returned in the array entry if a cell doesn't exist</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$calculateFormulas</b>&nbsp;&nbsp;</td> + <td>Should formulas be calculated?</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$formatData</b>&nbsp;&nbsp;</td> + <td>Should formatting be applied to cell values?</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$returnCellRef</b>&nbsp;&nbsp;</td> + <td>False - Return a simple array of rows and columns indexed by number counting from zero True - Return rows and columns indexed by their actual row and column IDs</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrebindParent"></a> + <h3>method rebindParent <span class="smalllinenumber">[line 748]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> rebindParent( +PHPExcel +$parent)</code> + </td></tr></table> + </td></tr></table><br /> + + Re-bind parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrefreshColumnDimensions"></a> + <h3>method refreshColumnDimensions <span class="smalllinenumber">[line 616]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> refreshColumnDimensions( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Refresh column dimensions<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrefreshRowDimensions"></a> + <h3>method refreshRowDimensions <span class="smalllinenumber">[line 635]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> refreshRowDimensions( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Refresh row dimensions<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodremoveAutoFilter"></a> + <h3>method removeAutoFilter <span class="smalllinenumber">[line 1884]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> removeAutoFilter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Remove autofilter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodremoveColumn"></a> + <h3>method removeColumn <span class="smalllinenumber">[line 2026]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> removeColumn( +[int +$pColumn = 'A'], [int +$pNumCols = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove a column, updating all possible related data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Remove starting with this one</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumCols</b>&nbsp;&nbsp;</td> + <td>Number of columns to remove</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodremoveColumnByIndex"></a> + <h3>method removeColumnByIndex <span class="smalllinenumber">[line 2045]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> removeColumnByIndex( +[int +$pColumn = 0], [int +$pNumCols = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove a column, updating all possible related data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Remove starting with this one (numeric column coordinate of the cell)</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumCols</b>&nbsp;&nbsp;</td> + <td>Number of columns to remove</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodremoveConditionalStyles"></a> + <h3>method removeConditionalStyles <span class="smalllinenumber">[line 1381]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> removeConditionalStyles( +[string +$pCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Removes conditional styles for a cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodremoveRow"></a> + <h3>method removeRow <span class="smalllinenumber">[line 2008]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> removeRow( +[int +$pRow = 1], [int +$pNumRows = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Delete a row, updating all possible related data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td>Remove starting with this one</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pNumRows</b>&nbsp;&nbsp;</td> + <td>Number of rows to remove</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodresetTabColor"></a> + <h3>method resetTabColor <span class="smalllinenumber">[line 2739]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> resetTabColor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Reset tab color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAutoFilter"></a> + <h3>method setAutoFilter <span class="smalllinenumber">[line 1850]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setAutoFilter( +<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a>|string +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a>|string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>A simple string containing a Cell range like 'A1:E10' is permitted for backward compatibility</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAutoFilterByColumnAndRow"></a> + <h3>method setAutoFilterByColumnAndRow <span class="smalllinenumber">[line 1870]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setAutoFilterByColumnAndRow( +[int +$pColumn1 = 0], [int +$pRow1 = 1], [int +$pColumn2 = 0], [int +$pRow2 = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Autofilter Range by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn1</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the first cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow1</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the first cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn2</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the second cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow2</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the second cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBreak"></a> + <h3>method setBreak <span class="smalllinenumber">[line 1587]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setBreak( +[string +$pCell = 'A1'], [int +$pBreak = PHPExcel_Worksheet::BREAK_NONE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set break on a cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCell</b>&nbsp;&nbsp;</td> + <td>Cell coordinate (e.g. A1)</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pBreak</b>&nbsp;&nbsp;</td> + <td>Break type (type of PHPExcel_Worksheet::BREAK_*)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBreakByColumnAndRow"></a> + <h3>method setBreakByColumnAndRow <span class="smalllinenumber">[line 1610]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setBreakByColumnAndRow( +[integer +$pColumn = 0], [integer +$pRow = 1], [integer +$pBreak = PHPExcel_Worksheet::BREAK_NONE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set break on a cell by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the cell</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the cell</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$pBreak</b>&nbsp;&nbsp;</td> + <td>Break type (type of PHPExcel_Worksheet::BREAK_*)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCellValue"></a> + <h3>method setCellValue <span class="smalllinenumber">[line 1027]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>|<a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> setCellValue( +[string +$pCoordinate = 'A1'], [mixed +$pValue = null], [bool +$returnCell = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set a cell value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Depending on the last parameter being specified</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value of the cell</td> + </tr> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$returnCell</b>&nbsp;&nbsp;</td> + <td>Return the worksheet (false, default) or the cell (true)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCellValueByColumnAndRow"></a> + <h3>method setCellValueByColumnAndRow <span class="smalllinenumber">[line 1042]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>|<a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> setCellValueByColumnAndRow( +[string +$pColumn = 0], [string +$pRow = 1], [mixed +$pValue = null], [bool +$returnCell = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set a cell value by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Depending on the last parameter being specified</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the cell</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the cell</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value of the cell</td> + </tr> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$returnCell</b>&nbsp;&nbsp;</td> + <td>Return the worksheet (false, default) or the cell (true)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCellValueExplicit"></a> + <h3>method setCellValueExplicit <span class="smalllinenumber">[line 1057]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>|<a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> setCellValueExplicit( +[string +$pCoordinate = 'A1'], [mixed +$pValue = null], [string +$pDataType = PHPExcel_Cell_DataType::TYPE_STRING], [bool +$returnCell = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set a cell value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Depending on the last parameter being specified</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td>Coordinate of the cell</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value of the cell</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pDataType</b>&nbsp;&nbsp;</td> + <td>Explicit data type</td> + </tr> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$returnCell</b>&nbsp;&nbsp;</td> + <td>Return the worksheet (false, default) or the cell (true)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCellValueExplicitByColumnAndRow"></a> + <h3>method setCellValueExplicitByColumnAndRow <span class="smalllinenumber">[line 1074]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>|<a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> setCellValueExplicitByColumnAndRow( +[string +$pColumn = 0], [string +$pRow = 1], [mixed +$pValue = null], [string +$pDataType = PHPExcel_Cell_DataType::TYPE_STRING], [bool +$returnCell = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set a cell value by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Depending on the last parameter being specified</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the cell</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the cell</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Value of the cell</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pDataType</b>&nbsp;&nbsp;</td> + <td>Explicit data type</td> + </tr> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$returnCell</b>&nbsp;&nbsp;</td> + <td>Return the worksheet (false, default) or the cell (true)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetComments"></a> + <h3>method setComments <span class="smalllinenumber">[line 2169]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setComments( +[array +$pValue = array()])</code> + </td></tr></table> + </td></tr></table><br /> + + Set comments array for the entire sheet.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>of PHPExcel_Comment</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetConditionalStyles"></a> + <h3>method setConditionalStyles <span class="smalllinenumber">[line 1404]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setConditionalStyles( +[$pCoordinate +$pCoordinate = 'A1'], $pValue +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set conditional styles<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">$pCoordinate&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td>string E.g. 'A1'</td> + </tr> + <tr> + <td class="type">$pValue&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>PHPExcel_Style_Conditional[]</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDataValidation"></a> + <h3>method setDataValidation <span class="smalllinenumber">[line 2662]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setDataValidation( +[string +$pCellCoordinate = 'A1'], [PHPExcel_Cell_DataValidation +$pDataValidation = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set data validation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCellCoordinate</b>&nbsp;&nbsp;</td> + <td>Cell coordinate to insert data validation</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a>&nbsp;&nbsp;</td> + <td><b>$pDataValidation</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDefaultStyle"></a> + <h3>method setDefaultStyle <span class="smalllinenumber">[line 1318]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setDefaultStyle( +PHPExcel_Style +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set default style - should only be used by PHPExcel_IReader implementations!<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td></td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetHeaderFooter"></a> + <h3>method setHeaderFooter <span class="smalllinenumber">[line 917]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setHeaderFooter( +<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set page header/footer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetHyperlink"></a> + <h3>method setHyperlink <span class="smalllinenumber">[line 2607]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setHyperlink( +[string +$pCellCoordinate = 'A1'], [PHPExcel_Cell_Hyperlink +$pHyperlink = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set hyperlnk<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCellCoordinate</b>&nbsp;&nbsp;</td> + <td>Cell coordinate to insert hyperlink</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a>&nbsp;&nbsp;</td> + <td><b>$pHyperlink</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetMergeCells"></a> + <h3>method setMergeCells <span class="smalllinenumber">[line 1737]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setMergeCells( +[array +$pValue = array()])</code> + </td></tr></table> + </td></tr></table><br /> + + Set merge cells array for the entire sheet. Use instead mergeCells() to merge a single cell range.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPageMargins"></a> + <h3>method setPageMargins <span class="smalllinenumber">[line 895]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setPageMargins( +<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set page margins<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPageSetup"></a> + <h3>method setPageSetup <span class="smalllinenumber">[line 873]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setPageSetup( +<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set page setup<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPrintGridlines"></a> + <h3>method setPrintGridlines <span class="smalllinenumber">[line 2088]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setPrintGridlines( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set print gridlines<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Print gridlines (true/false)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetProtection"></a> + <h3>method setProtection <span class="smalllinenumber">[line 961]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setProtection( +<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Protection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRightToLeft"></a> + <h3>method setRightToLeft <span class="smalllinenumber">[line 2323]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setRightToLeft( +[boolean +$value = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set right-to-left<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Right-to-left true/false</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSelectedCell"></a> + <h3>method setSelectedCell <span class="smalllinenumber">[line 2256]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setSelectedCell( +[string +$pCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Selected cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td>Cell (i.e. A1)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSelectedCellByColumnAndRow"></a> + <h3>method setSelectedCellByColumnAndRow <span class="smalllinenumber">[line 2303]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setSelectedCellByColumnAndRow( +[int +$pColumn = 0], [int +$pRow = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Selected cell by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSelectedCells"></a> + <h3>method setSelectedCells <span class="smalllinenumber">[line 2268]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setSelectedCells( +[string +$pCoordinate = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Select a range of cells.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCoordinate</b>&nbsp;&nbsp;</td> + <td>Cell range, examples: 'A1', 'B2:G5', 'A:C', '3:6'</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSharedStyle"></a> + <h3>method setSharedStyle <span class="smalllinenumber">[line 1433]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setSharedStyle( +[PHPExcel_Style +$pSharedCellStyle = null], [string +$pRange = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set shared cell style to a range of cells<br /><br /><p>Please note that this will overwrite existing cell styles for cells in range!</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td></td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$pSharedCellStyle</b>&nbsp;&nbsp;</td> + <td>Cell style to share</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Range of cells (i.e. &quot;A1:B10&quot;), or just one cell (i.e. &quot;A1&quot;)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSheetState"></a> + <h3>method setSheetState <span class="smalllinenumber">[line 852]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setSheetState( +[string +$value = PHPExcel_Worksheet::SHEETSTATE_VISIBLE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set sheet state<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Sheet state (visible, hidden, veryHidden)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSheetView"></a> + <h3>method setSheetView <span class="smalllinenumber">[line 939]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setSheetView( +<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a> +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set sheet view<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowGridlines"></a> + <h3>method setShowGridlines <span class="smalllinenumber">[line 2068]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setShowGridlines( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set show gridlines<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Show gridlines (true/false)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowRowColHeaders"></a> + <h3>method setShowRowColHeaders <span class="smalllinenumber">[line 2108]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setShowRowColHeaders( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set show row and column headers<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Show row and column headers (true/false)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowSummaryBelow"></a> + <h3>method setShowSummaryBelow <span class="smalllinenumber">[line 2128]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setShowSummaryBelow( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set show summary below<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Show summary below (true/false)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShowSummaryRight"></a> + <h3>method setShowSummaryRight <span class="smalllinenumber">[line 2148]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setShowSummaryRight( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set show summary right<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Show summary right (true/false)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTitle"></a> + <h3>method setTitle <span class="smalllinenumber">[line 783]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> setTitle( +[string +$pValue = 'Worksheet'], [string +$updateFormulaCellReferences = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set title<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>String containing the dimension of this worksheet</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$updateFormulaCellReferences</b>&nbsp;&nbsp;</td> + <td>boolean Flag indicating whether cell references in formulae should be updated to reflect the new sheet name. This should be left as the default true, unless you are certain that no formula cells on any worksheet contain references to this worksheet</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodshrinkRangeToFit"></a> + <h3>method shrinkRangeToFit <span class="smalllinenumber">[line 2699]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string shrinkRangeToFit( +string +$range)</code> + </td></tr></table> + </td></tr></table><br /> + + Accepts a range, returning it as a range that falls within the current highest row and column of the worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Adjusted range value</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$range</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsortCellCollection"></a> + <h3>method sortCellCollection <span class="smalllinenumber">[line 452]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> sortCellCollection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Sort collection of cells<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtoArray"></a> + <h3>method toArray <span class="smalllinenumber">[line 2477]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array toArray( +[mixed +$nullValue = null], [boolean +$calculateFormulas = true], [boolean +$formatData = true], [boolean +$returnCellRef = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Create array from worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$nullValue</b>&nbsp;&nbsp;</td> + <td>Value returned in the array entry if a cell doesn't exist</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$calculateFormulas</b>&nbsp;&nbsp;</td> + <td>Should formulas be calculated?</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$formatData</b>&nbsp;&nbsp;</td> + <td>Should formatting be applied to cell values?</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$returnCellRef</b>&nbsp;&nbsp;</td> + <td>False - Return a simple array of rows and columns indexed by number counting from zero True - Return rows and columns indexed by their actual row and column IDs</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunfreezePane"></a> + <h3>method unfreezePane <span class="smalllinenumber">[line 1943]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> unfreezePane( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Unfreeze Pane<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunmergeCells"></a> + <h3>method unmergeCells <span class="smalllinenumber">[line 1687]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> unmergeCells( +[string +$pRange = 'A1:A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove merge on a cell range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Cell range (e.g. A1:E1)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunmergeCellsByColumnAndRow"></a> + <h3>method unmergeCellsByColumnAndRow <span class="smalllinenumber">[line 1715]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> unmergeCellsByColumnAndRow( +[int +$pColumn1 = 0], [int +$pRow1 = 1], [int +$pColumn2 = 0], [int +$pRow2 = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove merge on a cell range by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn1</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the first cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow1</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the first cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn2</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the last cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow2</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the last cell</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunprotectCells"></a> + <h3>method unprotectCells <span class="smalllinenumber">[line 1791]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> unprotectCells( +[string +$pRange = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove protection on a cell range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Cell (e.g. A1) or cell range (e.g. A1:E1)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodunprotectCellsByColumnAndRow"></a> + <h3>method unprotectCellsByColumnAndRow <span class="smalllinenumber">[line 1816]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> unprotectCellsByColumnAndRow( +[int +$pColumn1 = 0], [int +$pRow1 = 1], [int +$pColumn2 = 0], [int +$pRow2 = 1], [string +$pPassword = ''], [boolean +$pAlreadyHashed = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove protection on a cell range by using numeric cell coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn1</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the first cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow1</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the first cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pColumn2</b>&nbsp;&nbsp;</td> + <td>Numeric column coordinate of the last cell</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRow2</b>&nbsp;&nbsp;</td> + <td>Numeric row coordinate of the last cell</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pPassword</b>&nbsp;&nbsp;</td> + <td>Password to unlock the protection</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pAlreadyHashed</b>&nbsp;&nbsp;</td> + <td>If the password has already been hashed, set this to true</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 2771]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constBREAK_COLUMN"></a> + <p></p> + <h4>BREAK_COLUMN = <span class="value">&nbsp;2</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBREAK_NONE"></a> + <p></p> + <h4>BREAK_NONE = <span class="value">&nbsp;0</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constBREAK_ROW"></a> + <p></p> + <h4>BREAK_ROW = <span class="value">&nbsp;1</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHEETSTATE_HIDDEN"></a> + <p></p> + <h4>SHEETSTATE_HIDDEN = <span class="value">&nbsp;'hidden'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHEETSTATE_VERYHIDDEN"></a> + <p></p> + <h4>SHEETSTATE_VERYHIDDEN = <span class="value">&nbsp;'veryHidden'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHEETSTATE_VISIBLE"></a> + <p></p> + <h4>SHEETSTATE_VISIBLE = <span class="value">&nbsp;'visible'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html new file mode 100644 index 0000000..d56d54b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html @@ -0,0 +1,777 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_AutoFilter</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_AutoFilter</h1> +Source Location: /PHPExcel/Worksheet/AutoFilter.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_AutoFilter</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodclearColumn">clearColumn</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumn">getColumn</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumnByOffset">getColumnByOffset</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumnOffset">getColumnOffset</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumns">getColumns</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetParent">getParent</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetRange">getRange</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodsetColumn">setColumn</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodsetParent">setParent</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodsetRange">setRange</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodshiftColumn">shiftColumn</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodshowHideRows">showHideRows</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodtestColumnInRange">testColumnInRange</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#method__clone">__clone</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#method__toString">__toString</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_AutoFilter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 65]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_AutoFilter __construct( +[ +$pRange = ''], [<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$pSheet = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_AutoFilter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodclearColumn"></a> + <h3>method clearColumn <span class="smalllinenumber">[line 250]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a> clearColumn( +string +$pColumn)</code> + </td></tr></table> + </td></tr></table><br /> + + Clear a specified AutoFilter Column<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Column name (e.g. A)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumn"></a> + <h3>method getColumn <span class="smalllinenumber">[line 189]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> getColumn( +string +$pColumn)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a specified AutoFilter Column<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Column name (e.g. A)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumnByOffset"></a> + <h3>method getColumnByOffset <span class="smalllinenumber">[line 206]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> getColumnByOffset( +[integer +$pColumnOffset = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Get a specified AutoFilter Column by it's offset<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$pColumnOffset</b>&nbsp;&nbsp;</td> + <td>Column offset within range (starting from 0)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumnOffset"></a> + <h3>method getColumnOffset <span class="smalllinenumber">[line 178]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>integer getColumnOffset( +string +$pColumn)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a specified AutoFilter Column Offset within the defined AutoFilter range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The offset of the specified column within the autofilter range</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Column name (e.g. A)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumns"></a> + <h3>method getColumns <span class="smalllinenumber">[line 146]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getColumns( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get all AutoFilter Columns<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of PHPExcel_Worksheet_AutoFilter_Column</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetParent"></a> + <h3>method getParent <span class="smalllinenumber">[line 76]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getParent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AutoFilter Parent Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRange"></a> + <h3>method getRange <span class="smalllinenumber">[line 97]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getRange( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AutoFilter Range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetColumn"></a> + <h3>method setColumn <span class="smalllinenumber">[line 221]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a> setColumn( +<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a>|string +$pColumn)</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a>|string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>A simple string containing a Column ID like 'A' is permitted</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetParent"></a> + <h3>method setParent <span class="smalllinenumber">[line 86]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a> setParent( +[<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$pSheet = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter Parent Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRange"></a> + <h3>method setRange <span class="smalllinenumber">[line 108]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a> setRange( +[string +$pRange = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter Range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRange</b>&nbsp;&nbsp;</td> + <td>Cell range (i.e. A1:E10)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodshiftColumn"></a> + <h3>method shiftColumn <span class="smalllinenumber">[line 271]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a> shiftColumn( +[string +$fromColumn = NULL], [string +$toColumn = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Shift an AutoFilter Column Rule to a different column<br /><br /><p>Note: This method bypasses validation of the destination column to ensure it is within this AutoFilter range. Nor does it verify whether any column rule already exists at $toColumn, but will simply overrideany existing value. Use with caution.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$fromColumn</b>&nbsp;&nbsp;</td> + <td>Column name (e.g. A)</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$toColumn</b>&nbsp;&nbsp;</td> + <td>Column name (e.g. B)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodshowHideRows"></a> + <h3>method showHideRows <span class="smalllinenumber">[line 599]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a> showHideRows( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Apply the AutoFilter rules to the AutoFilter Range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtestColumnInRange"></a> + <h3>method testColumnInRange <span class="smalllinenumber">[line 157]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>integer testColumnInRange( +string +$column)</code> + </td></tr></table> + </td></tr></table><br /> + + Validate that the specified column is in the AutoFilter range<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The column offset within the autofilter range</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$column</b>&nbsp;&nbsp;</td> + <td>Column name (e.g. A)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 823]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__toString"></a> + <h3>method __toString <span class="smalllinenumber">[line 851]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __toString( +)</code> + </td></tr></table> + </td></tr></table><br /> + + toString method replicates previous behavior by returning the range if object is referenced as a property of its parent.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html new file mode 100644 index 0000000..7bf660e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html @@ -0,0 +1,941 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_AutoFilter_Column</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_AutoFilter_Column</h1> +Source Location: /PHPExcel/Worksheet/AutoFilter/Column.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_AutoFilter_Column</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_COLUMN_JOIN_AND">AUTOFILTER_COLUMN_JOIN_AND</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_COLUMN_JOIN_OR">AUTOFILTER_COLUMN_JOIN_OR</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_CUSTOMFILTER">AUTOFILTER_FILTERTYPE_CUSTOMFILTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_DYNAMICFILTER">AUTOFILTER_FILTERTYPE_DYNAMICFILTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_FILTER">AUTOFILTER_FILTERTYPE_FILTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_TOPTENFILTER">AUTOFILTER_FILTERTYPE_TOPTENFILTER</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodaddRule">addRule</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodclearRules">clearRules</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodcreateRule">createRule</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methoddeleteRule">deleteRule</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetAttribute">getAttribute</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetAttributes">getAttributes</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetColumnIndex">getColumnIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetFilterType">getFilterType</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetJoin">getJoin</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetParent">getParent</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetRule">getRule</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetRules">getRules</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetAttribute">setAttribute</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetAttributes">setAttributes</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetColumnIndex">setColumnIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetFilterType">setFilterType</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetJoin">setJoin</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetParent">setParent</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_AutoFilter_Column<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodaddRule"></a> + <h3>method addRule <span class="smalllinenumber">[line 316]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a>|<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a> addRule( +<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a> +$pRule, [boolean +$returnRule = TRUE])</code> + </td></tr></table> + </td></tr></table><br /> + + Add a new AutoFilter Column Rule to the ruleset<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a>&nbsp;&nbsp;</td> + <td><b>$pRule</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$returnRule</b>&nbsp;&nbsp;</td> + <td>Flag indicating whether the rule object or the column object should be returned</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 118]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_AutoFilter_Column __construct( + +$pColumn, [<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a> +$pParent = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_AutoFilter_Column<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a>&nbsp;&nbsp;</td> + <td><b>$pParent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodclearRules"></a> + <h3>method clearRules <span class="smalllinenumber">[line 347]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> clearRules( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Delete all AutoFilter Column Rules<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcreateRule"></a> + <h3>method createRule <span class="smalllinenumber">[line 303]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a> createRule( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new AutoFilter Column Rule in the ruleset<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methoddeleteRule"></a> + <h3>method deleteRule <span class="smalllinenumber">[line 330]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> deleteRule( +integer +$pIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Delete a specified AutoFilter Column Rule If the number of rules is reduced to 1, then we reset And/Or logic to Or<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td>Rule index in the ruleset array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAttribute"></a> + <h3>method getAttribute <span class="smalllinenumber">[line 269]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getAttribute( +string +$pName)</code> + </td></tr></table> + </td></tr></table><br /> + + Get specific AutoFilter Column Attribute<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pName</b>&nbsp;&nbsp;</td> + <td>Attribute Name</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAttributes"></a> + <h3>method getAttributes <span class="smalllinenumber">[line 259]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getAttributes( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AutoFilter Column Attributes<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumnIndex"></a> + <h3>method getColumnIndex <span class="smalllinenumber">[line 129]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getColumnIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AutoFilter Column Index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFilterType"></a> + <h3>method getFilterType <span class="smalllinenumber">[line 178]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFilterType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AutoFilter Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetJoin"></a> + <h3>method getJoin <span class="smalllinenumber">[line 204]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getJoin( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AutoFilter Multiple Rules And/Or Join<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetParent"></a> + <h3>method getParent <span class="smalllinenumber">[line 157]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a> getParent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get this Column's AutoFilter Parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRule"></a> + <h3>method getRule <span class="smalllinenumber">[line 291]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a> getRule( +integer +$pIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Get a specified AutoFilter Column Rule<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td>Rule index in the ruleset array</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRules"></a> + <h3>method getRules <span class="smalllinenumber">[line 281]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getRules( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get all AutoFilter Column Rules<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>of PHPExcel_Worksheet_AutoFilter_Column_Rule</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>PHPExcel_Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAttribute"></a> + <h3>method setAttribute <span class="smalllinenumber">[line 248]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> setAttribute( +string +$pName, string +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set An AutoFilter Attribute<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pName</b>&nbsp;&nbsp;</td> + <td>Attribute Name</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Attribute Value</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAttributes"></a> + <h3>method setAttributes <span class="smalllinenumber">[line 234]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> setAttributes( +[string[] +$pAttributes = array()])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter Attributes<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string[]&nbsp;&nbsp;</td> + <td><b>$pAttributes</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetColumnIndex"></a> + <h3>method setColumnIndex <span class="smalllinenumber">[line 140]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> setColumnIndex( +string +$pColumn)</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter Column Index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pColumn</b>&nbsp;&nbsp;</td> + <td>Column (e.g. A)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFilterType"></a> + <h3>method setFilterType <span class="smalllinenumber">[line 189]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> setFilterType( +[string +$pFilterType = self::AUTOFILTER_FILTERTYPE_FILTER])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilterType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetJoin"></a> + <h3>method setJoin <span class="smalllinenumber">[line 215]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> setJoin( +[string +$pJoin = self::AUTOFILTER_COLUMN_JOIN_OR])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter Multiple Rules And/Or<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pJoin</b>&nbsp;&nbsp;</td> + <td>And/Or</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetParent"></a> + <h3>method setParent <span class="smalllinenumber">[line 167]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> setParent( +[<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a> +$pParent = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set this Column's AutoFilter Parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a>&nbsp;&nbsp;</td> + <td><b>$pParent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 357]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constAUTOFILTER_COLUMN_JOIN_AND"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_JOIN_AND = <span class="value">&nbsp;'and'</span></h4> + <p>[line 59]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_COLUMN_JOIN_OR"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_JOIN_OR = <span class="value">&nbsp;'or'</span></h4> + <p>[line 60]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_FILTERTYPE_CUSTOMFILTER"></a> + <p></p> + <h4>AUTOFILTER_FILTERTYPE_CUSTOMFILTER = <span class="value">&nbsp;'customFilters'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_FILTERTYPE_DYNAMICFILTER"></a> + <p></p> + <h4>AUTOFILTER_FILTERTYPE_DYNAMICFILTER = <span class="value">&nbsp;'dynamicFilter'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_FILTERTYPE_FILTER"></a> + <p></p> + <h4>AUTOFILTER_FILTERTYPE_FILTER = <span class="value">&nbsp;'filters'</span></h4> + <p>[line 38]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_FILTERTYPE_TOPTENFILTER"></a> + <p></p> + <h4>AUTOFILTER_FILTERTYPE_TOPTENFILTER = <span class="value">&nbsp;'top10'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html new file mode 100644 index 0000000..4493adf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html @@ -0,0 +1,1191 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_AutoFilter_Column_Rule</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_AutoFilter_Column_Rule</h1> +Source Location: /PHPExcel/Worksheet/AutoFilter/Column/Rule.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_AutoFilter_Column_Rule</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_EQUAL">AUTOFILTER_COLUMN_RULE_EQUAL</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_GREATERTHAN">AUTOFILTER_COLUMN_RULE_GREATERTHAN</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL">AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_LESSTHAN">AUTOFILTER_COLUMN_RULE_LESSTHAN</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL">AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_NOTEQUAL">AUTOFILTER_COLUMN_RULE_NOTEQUAL</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM">AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE">AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT">AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_TOP">AUTOFILTER_COLUMN_RULE_TOPTEN_TOP</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_CUSTOMFILTER">AUTOFILTER_RULETYPE_CUSTOMFILTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP">AUTOFILTER_RULETYPE_DATEGROUP</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_DAY">AUTOFILTER_RULETYPE_DATEGROUP_DAY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_HOUR">AUTOFILTER_RULETYPE_DATEGROUP_HOUR</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_MINUTE">AUTOFILTER_RULETYPE_DATEGROUP_MINUTE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_MONTH">AUTOFILTER_RULETYPE_DATEGROUP_MONTH</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_SECOND">AUTOFILTER_RULETYPE_DATEGROUP_SECOND</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_YEAR">AUTOFILTER_RULETYPE_DATEGROUP_YEAR</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMICFILTER">AUTOFILTER_RULETYPE_DYNAMICFILTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE">AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_APRIL">AUTOFILTER_RULETYPE_DYNAMIC_APRIL</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_AUGUST">AUTOFILTER_RULETYPE_DYNAMIC_AUGUST</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE">AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_DECEMBER">AUTOFILTER_RULETYPE_DYNAMIC_DECEMBER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY">AUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_JANUARY">AUTOFILTER_RULETYPE_DYNAMIC_JANUARY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_JULY">AUTOFILTER_RULETYPE_DYNAMIC_JULY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_JUNE">AUTOFILTER_RULETYPE_DYNAMIC_JUNE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH">AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER">AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK">AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR">AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MARCH">AUTOFILTER_RULETYPE_DYNAMIC_MARCH</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MAY">AUTOFILTER_RULETYPE_DYNAMIC_MAY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_1">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_2">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_3">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_4">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_5">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_6">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_7">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_8">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_9">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_10">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_11">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_12">AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH">AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER">AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK">AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR">AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER">AUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_OCTOBER">AUTOFILTER_RULETYPE_DYNAMIC_OCTOBER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1">AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2">AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3">AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4">AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER">AUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISMONTH">AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER">AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISWEEK">AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISYEAR">AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_TODAY">AUTOFILTER_RULETYPE_DYNAMIC_TODAY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_TOMORROW">AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE">AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY">AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_FILTER">AUTOFILTER_RULETYPE_FILTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_TOPTENFILTER">AUTOFILTER_RULETYPE_TOPTENFILTER</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetGrouping">getGrouping</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetOperator">getOperator</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetParent">getParent</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetRuleType">getRuleType</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetValue">getValue</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetGrouping">setGrouping</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetOperator">setOperator</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetParent">setParent</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetRule">setRule</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetRuleType">setRuleType</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetValue">setValue</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_AutoFilter_Column_Rule<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 273]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_AutoFilter_Column_Rule __construct( +[<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> +$pParent = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_AutoFilter_Column_Rule<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a>&nbsp;&nbsp;</td> + <td><b>$pParent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetGrouping"></a> + <h3>method getGrouping <span class="smalllinenumber">[line 377]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getGrouping( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AutoFilter Rule Grouping<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOperator"></a> + <h3>method getOperator <span class="smalllinenumber">[line 349]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getOperator( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AutoFilter Rule Operator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetParent"></a> + <h3>method getParent <span class="smalllinenumber">[line 427]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> getParent( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get this Rule's AutoFilter Column Parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRuleType"></a> + <h3>method getRuleType <span class="smalllinenumber">[line 283]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getRuleType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AutoFilter Rule Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetValue"></a> + <h3>method getValue <span class="smalllinenumber">[line 309]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getValue( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AutoFilter Rule Value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetGrouping"></a> + <h3>method setGrouping <span class="smalllinenumber">[line 388]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a> setGrouping( +[string +$pGrouping = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter Rule Grouping<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pGrouping</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOperator"></a> + <h3>method setOperator <span class="smalllinenumber">[line 360]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a> setOperator( +[string +$pOperator = self::AUTOFILTER_COLUMN_RULE_EQUAL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter Rule Operator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pOperator</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetParent"></a> + <h3>method setParent <span class="smalllinenumber">[line 437]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a> setParent( +[<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> +$pParent = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set this Rule's AutoFilter Column Parent<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a>&nbsp;&nbsp;</td> + <td><b>$pParent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRule"></a> + <h3>method setRule <span class="smalllinenumber">[line 410]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a> setRule( +[string +$pOperator = self::AUTOFILTER_COLUMN_RULE_EQUAL], [string|string[] +$pValue = ''], [string +$pGrouping = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter Rule<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pOperator</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string|string[]&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pGrouping</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRuleType"></a> + <h3>method setRuleType <span class="smalllinenumber">[line 294]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a> setRuleType( +[string +$pRuleType = self::AUTOFILTER_RULETYPE_FILTER])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter Rule Type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pRuleType</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetValue"></a> + <h3>method setValue <span class="smalllinenumber">[line 320]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a> setValue( +[string|string[] +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter Rule Value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string|string[]&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 446]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constAUTOFILTER_COLUMN_RULE_EQUAL"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_RULE_EQUAL = <span class="value">&nbsp;'equal'</span></h4> + <p>[line 165]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_COLUMN_RULE_GREATERTHAN"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_RULE_GREATERTHAN = <span class="value">&nbsp;'greaterThan'</span></h4> + <p>[line 167]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL = <span class="value">&nbsp;'greaterThanOrEqual'</span></h4> + <p>[line 168]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_COLUMN_RULE_LESSTHAN"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_RULE_LESSTHAN = <span class="value">&nbsp;'lessThan'</span></h4> + <p>[line 169]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL = <span class="value">&nbsp;'lessThanOrEqual'</span></h4> + <p>[line 170]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_COLUMN_RULE_NOTEQUAL"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_RULE_NOTEQUAL = <span class="value">&nbsp;'notEqual'</span></h4> + <p>[line 166]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM = <span class="value">&nbsp;'bottom'</span></h4> + <p>[line 190]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE = <span class="value">&nbsp;'byValue'</span></h4> + <p>[line 181]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT = <span class="value">&nbsp;'byPercent'</span></h4> + <p>[line 182]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_COLUMN_RULE_TOPTEN_TOP"></a> + <p></p> + <h4>AUTOFILTER_COLUMN_RULE_TOPTEN_TOP = <span class="value">&nbsp;'top'</span></h4> + <p>[line 189]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_CUSTOMFILTER"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_CUSTOMFILTER = <span class="value">&nbsp;'customFilter'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DATEGROUP"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DATEGROUP = <span class="value">&nbsp;'dateGroupItem'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DATEGROUP_DAY"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DATEGROUP_DAY = <span class="value">&nbsp;'day'</span></h4> + <p>[line 58]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DATEGROUP_HOUR"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DATEGROUP_HOUR = <span class="value">&nbsp;'hour'</span></h4> + <p>[line 59]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DATEGROUP_MINUTE"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DATEGROUP_MINUTE = <span class="value">&nbsp;'minute'</span></h4> + <p>[line 60]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DATEGROUP_MONTH"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DATEGROUP_MONTH = <span class="value">&nbsp;'month'</span></h4> + <p>[line 57]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DATEGROUP_SECOND"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DATEGROUP_SECOND = <span class="value">&nbsp;'second'</span></h4> + <p>[line 61]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DATEGROUP_YEAR"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DATEGROUP_YEAR = <span class="value">&nbsp;'year'</span></h4> + <p>[line 56]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMICFILTER"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMICFILTER = <span class="value">&nbsp;'dynamicFilter'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE = <span class="value">&nbsp;'aboveAverage'</span></h4> + <p>[line 116]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_APRIL"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_APRIL = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4</span></h4> + <p>[line 95]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_AUGUST"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_AUGUST = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8</span></h4> + <p>[line 103]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE = <span class="value">&nbsp;'belowAverage'</span></h4> + <p>[line 117]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_DECEMBER"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_DECEMBER = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12</span></h4> + <p>[line 111]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2</span></h4> + <p>[line 91]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_JANUARY"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_JANUARY = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1</span></h4> + <p>[line 89]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_JULY"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_JULY = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7</span></h4> + <p>[line 101]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_JUNE"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_JUNE = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6</span></h4> + <p>[line 99]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH = <span class="value">&nbsp;'lastMonth'</span></h4> + <p>[line 82]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER = <span class="value">&nbsp;'lastQuarter'</span></h4> + <p>[line 81]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK = <span class="value">&nbsp;'lastWeek'</span></h4> + <p>[line 83]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR = <span class="value">&nbsp;'lastYear'</span></h4> + <p>[line 80]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MARCH"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MARCH = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3</span></h4> + <p>[line 93]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MAY"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MAY = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5</span></h4> + <p>[line 97]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_1"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1 = <span class="value">&nbsp;'M1'</span></h4> + <p>[line 88]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_2"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2 = <span class="value">&nbsp;'M2'</span></h4> + <p>[line 90]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_3"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3 = <span class="value">&nbsp;'M3'</span></h4> + <p>[line 92]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_4"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4 = <span class="value">&nbsp;'M4'</span></h4> + <p>[line 94]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_5"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5 = <span class="value">&nbsp;'M5'</span></h4> + <p>[line 96]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_6"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6 = <span class="value">&nbsp;'M6'</span></h4> + <p>[line 98]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_7"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7 = <span class="value">&nbsp;'M7'</span></h4> + <p>[line 100]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_8"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8 = <span class="value">&nbsp;'M8'</span></h4> + <p>[line 102]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_9"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9 = <span class="value">&nbsp;'M9'</span></h4> + <p>[line 104]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_10"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10 = <span class="value">&nbsp;'M10'</span></h4> + <p>[line 106]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_11"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11 = <span class="value">&nbsp;'M11'</span></h4> + <p>[line 108]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_12"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12 = <span class="value">&nbsp;'M12'</span></h4> + <p>[line 110]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH = <span class="value">&nbsp;'nextMonth'</span></h4> + <p>[line 86]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER = <span class="value">&nbsp;'nextQuarter'</span></h4> + <p>[line 85]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK = <span class="value">&nbsp;'nextWeek'</span></h4> + <p>[line 87]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR = <span class="value">&nbsp;'nextYear'</span></h4> + <p>[line 84]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11</span></h4> + <p>[line 109]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_OCTOBER"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_OCTOBER = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10</span></h4> + <p>[line 107]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1 = <span class="value">&nbsp;'Q1'</span></h4> + <p>[line 112]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2 = <span class="value">&nbsp;'Q2'</span></h4> + <p>[line 113]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3 = <span class="value">&nbsp;'Q3'</span></h4> + <p>[line 114]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4 = <span class="value">&nbsp;'Q4'</span></h4> + <p>[line 115]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER = <span class="value">&nbsp;self::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9</span></h4> + <p>[line 105]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_THISMONTH"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH = <span class="value">&nbsp;'thisMonth'</span></h4> + <p>[line 78]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER = <span class="value">&nbsp;'thisQuarter'</span></h4> + <p>[line 77]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_THISWEEK"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK = <span class="value">&nbsp;'thisWeek'</span></h4> + <p>[line 79]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_THISYEAR"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR = <span class="value">&nbsp;'thisYear'</span></h4> + <p>[line 76]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_TODAY"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_TODAY = <span class="value">&nbsp;'today'</span></h4> + <p>[line 73]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_TOMORROW"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW = <span class="value">&nbsp;'tomorrow'</span></h4> + <p>[line 74]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE = <span class="value">&nbsp;'yearToDate'</span></h4> + <p>[line 75]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY = <span class="value">&nbsp;'yesterday'</span></h4> + <p>[line 72]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_FILTER"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_FILTER = <span class="value">&nbsp;'filter'</span></h4> + <p>[line 38]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constAUTOFILTER_RULETYPE_TOPTENFILTER"></a> + <p></p> + <h4>AUTOFILTER_RULETYPE_TOPTENFILTER = <span class="value">&nbsp;'top10Filter'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html new file mode 100644 index 0000000..724b883 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html @@ -0,0 +1,1486 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_BaseDrawing</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_BaseDrawing</h1> +Source Location: /PHPExcel/Worksheet/BaseDrawing.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_BaseDrawing</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_coordinates">$_coordinates</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_description">$_description</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_height">$_height</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_name">$_name</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_offsetX">$_offsetX</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_offsetY">$_offsetY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_resizeProportional">$_resizeProportional</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_rotation">$_rotation</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_shadow">$_shadow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_width">$_width</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_worksheet">$_worksheet</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetCoordinates">getCoordinates</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetDescription">getDescription</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHeight">getHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetImageIndex">getImageIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetName">getName</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetX">getOffsetX</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetY">getOffsetY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetResizeProportional">getResizeProportional</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetRotation">getRotation</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetShadow">getShadow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWidth">getWidth</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWorksheet">getWorksheet</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetCoordinates">setCoordinates</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetDescription">setDescription</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetHeight">setHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetName">setName</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetX">setOffsetX</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetY">setOffsetY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetResizeProportional">setResizeProportional</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetRotation">setRotation</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetShadow">setShadow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidth">setWidth</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidthAndHeight">setWidthAndHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWorksheet">setWorksheet</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + +<td valign="top"> +<h3>Child classes:</h3> +<div class="tags"> +<dl> +<dt><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a></dt> + <dd>PHPExcel_Worksheet_Drawing</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a></dt> + <dd>PHPExcel_Worksheet_MemoryDrawing</dd> +</dl> +</div> +</td> + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_BaseDrawing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_coordinates"></a> + <p></p> + <h4>$_coordinates = <span class="value"></span></h4> + <p>[line 78]</p> + Coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_description"></a> + <p></p> + <h4>$_description = <span class="value"></span></h4> + <p>[line 64]</p> + Description<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_height"></a> + <p></p> + <h4>$_height = <span class="value"></span></h4> + <p>[line 106]</p> + Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_name"></a> + <p></p> + <h4>$_name = <span class="value"></span></h4> + <p>[line 57]</p> + Name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_offsetX"></a> + <p></p> + <h4>$_offsetX = <span class="value"></span></h4> + <p>[line 85]</p> + Offset X<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_offsetY"></a> + <p></p> + <h4>$_offsetY = <span class="value"></span></h4> + <p>[line 92]</p> + Offset Y<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_resizeProportional"></a> + <p></p> + <h4>$_resizeProportional = <span class="value"></span></h4> + <p>[line 113]</p> + Proportional resize<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>boolean</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_rotation"></a> + <p></p> + <h4>$_rotation = <span class="value"></span></h4> + <p>[line 120]</p> + Rotation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_shadow"></a> + <p></p> + <h4>$_shadow = <span class="value"></span></h4> + <p>[line 127]</p> + Shadow<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a></td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_width"></a> + <p></p> + <h4>$_width = <span class="value"></span></h4> + <p>[line 99]</p> + Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_worksheet"></a> + <p></p> + <h4>$_worksheet = <span class="value"></span></h4> + <p>[line 71]</p> + Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a></td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 132]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_BaseDrawing __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_BaseDrawing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__construct">PHPExcel_Worksheet_Drawing::__construct()</a></dt> + <dd>Create a new PHPExcel_Worksheet_Drawing</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#method__construct">PHPExcel_Worksheet_HeaderFooterDrawing::__construct()</a></dt> + <dd>Create a new PHPExcel_Worksheet_HeaderFooterDrawing</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#method__construct">PHPExcel_Worksheet_MemoryDrawing::__construct()</a></dt> + <dd>Create a new PHPExcel_Worksheet_MemoryDrawing</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCoordinates"></a> + <h3>method getCoordinates <span class="smalllinenumber">[line 251]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getCoordinates( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDescription"></a> + <h3>method getDescription <span class="smalllinenumber">[line 186]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getDescription( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Description<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 456]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetHashCode">PHPExcel_Worksheet_Drawing::getHashCode()</a></dt> + <dd>Get hash code</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetHashCode">PHPExcel_Worksheet_HeaderFooterDrawing::getHashCode()</a></dt> + <dd>Get hash code</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetHashCode">PHPExcel_Worksheet_MemoryDrawing::getHashCode()</a></dt> + <dd>Get hash code</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHeight"></a> + <h3>method getHeight <span class="smalllinenumber">[line 339]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getHeight( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetHeight">PHPExcel_Worksheet_HeaderFooterDrawing::getHeight()</a></dt> + <dd>Get Height</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetImageIndex"></a> + <h3>method getImageIndex <span class="smalllinenumber">[line 157]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getImageIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get image index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetName"></a> + <h3>method getName <span class="smalllinenumber">[line 166]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetName">PHPExcel_Worksheet_HeaderFooterDrawing::getName()</a></dt> + <dd>Get Name</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOffsetX"></a> + <h3>method getOffsetX <span class="smalllinenumber">[line 271]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getOffsetX( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get OffsetX<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetOffsetX">PHPExcel_Worksheet_HeaderFooterDrawing::getOffsetX()</a></dt> + <dd>Get OffsetX</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOffsetY"></a> + <h3>method getOffsetY <span class="smalllinenumber">[line 291]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getOffsetY( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get OffsetY<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetOffsetY">PHPExcel_Worksheet_HeaderFooterDrawing::getOffsetY()</a></dt> + <dd>Get OffsetY</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetResizeProportional"></a> + <h3>method getResizeProportional <span class="smalllinenumber">[line 395]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getResizeProportional( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get ResizeProportional<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetResizeProportional">PHPExcel_Worksheet_HeaderFooterDrawing::getResizeProportional()</a></dt> + <dd>Get ResizeProportional</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRotation"></a> + <h3>method getRotation <span class="smalllinenumber">[line 415]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getRotation( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Rotation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetShadow"></a> + <h3>method getShadow <span class="smalllinenumber">[line 435]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a> getShadow( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Shadow<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWidth"></a> + <h3>method getWidth <span class="smalllinenumber">[line 311]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getWidth( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetWidth">PHPExcel_Worksheet_HeaderFooterDrawing::getWidth()</a></dt> + <dd>Get Width</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWorksheet"></a> + <h3>method getWorksheet <span class="smalllinenumber">[line 206]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> getWorksheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCoordinates"></a> + <h3>method setCoordinates <span class="smalllinenumber">[line 261]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setCoordinates( +[string +$pValue = 'A1'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Coordinates<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDescription"></a> + <h3>method setDescription <span class="smalllinenumber">[line 196]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setDescription( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Description<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetHeight"></a> + <h3>method setHeight <span class="smalllinenumber">[line 349]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setHeight( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetHeight">PHPExcel_Worksheet_HeaderFooterDrawing::setHeight()</a></dt> + <dd>Set Height</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetName"></a> + <h3>method setName <span class="smalllinenumber">[line 176]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setName( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetName">PHPExcel_Worksheet_HeaderFooterDrawing::setName()</a></dt> + <dd>Set Name</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOffsetX"></a> + <h3>method setOffsetX <span class="smalllinenumber">[line 281]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setOffsetX( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set OffsetX<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetOffsetX">PHPExcel_Worksheet_HeaderFooterDrawing::setOffsetX()</a></dt> + <dd>Set OffsetX</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOffsetY"></a> + <h3>method setOffsetY <span class="smalllinenumber">[line 301]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setOffsetY( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set OffsetY<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetOffsetY">PHPExcel_Worksheet_HeaderFooterDrawing::setOffsetY()</a></dt> + <dd>Set OffsetY</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetResizeProportional"></a> + <h3>method setResizeProportional <span class="smalllinenumber">[line 405]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setResizeProportional( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set ResizeProportional<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetResizeProportional">PHPExcel_Worksheet_HeaderFooterDrawing::setResizeProportional()</a></dt> + <dd>Set ResizeProportional</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRotation"></a> + <h3>method setRotation <span class="smalllinenumber">[line 425]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setRotation( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Rotation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetShadow"></a> + <h3>method setShadow <span class="smalllinenumber">[line 446]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setShadow( +[PHPExcel_Worksheet_Drawing_Shadow +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Shadow<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWidth"></a> + <h3>method setWidth <span class="smalllinenumber">[line 321]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setWidth( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetWidth">PHPExcel_Worksheet_HeaderFooterDrawing::setWidth()</a></dt> + <dd>Set Width</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWidthAndHeight"></a> + <h3>method setWidthAndHeight <span class="smalllinenumber">[line 375]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setWidthAndHeight( +[int +$width = 0], [int +$height = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set width and height with proportional resize<br /><br /><p>Example: <ol><li><div class="src-line">&nbsp;<span class="src-var">$objDrawing</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetResizeProportional">setResizeProportional</a><span class="src-sym">(</span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-var">$objDrawing</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidthAndHeight">setWidthAndHeight</a><span class="src-sym">(</span><span class="src-num">160</span><span class="src-sym">,</span><span class="src-num">120</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Vincent@luo MSN:kele_100@hotmail.com</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetWidthAndHeight">PHPExcel_Worksheet_HeaderFooterDrawing::setWidthAndHeight()</a></dt> + <dd>Set width and height with proportional resize</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$width</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$height</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWorksheet"></a> + <h3>method setWorksheet <span class="smalllinenumber">[line 218]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> setWorksheet( +[<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$pValue = null], [bool +$pOverrideOld = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$pOverrideOld</b>&nbsp;&nbsp;</td> + <td>If a Worksheet has already been assigned, overwrite it and remove image from old Worksheet?</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 475]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__clone">PHPExcel_Worksheet_Drawing::__clone()</a></dt> + <dd>Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#method__clone">PHPExcel_Worksheet_HeaderFooterDrawing::__clone()</a></dt> + <dd>Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#method__clone">PHPExcel_Worksheet_MemoryDrawing::__clone()</a></dt> + <dd>Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html new file mode 100644 index 0000000..397c46c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html @@ -0,0 +1,495 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_CellIterator</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_CellIterator</h1> +Source Location: /PHPExcel/Worksheet/CellIterator.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_CellIterator</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li>Iterator (internal interface)</li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodcurrent">current</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodgetIterateOnlyExistingCells">getIterateOnlyExistingCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodkey">key</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodnext">next</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodrewind">rewind</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodsetIterateOnlyExistingCells">setIterateOnlyExistingCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodvalid">valid</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 38]<br /> +PHPExcel_Worksheet_CellIterator<br /><br /><p>Used to iterate rows in a PHPExcel_Worksheet</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 74]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_CellIterator __construct( +[<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$subject = null], [int +$rowIndex = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new cell iterator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$subject</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$rowIndex</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 83]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcurrent"></a> + <h3>method current <span class="smalllinenumber">[line 99]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a> current( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Current PHPExcel_Cell<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::current</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIterateOnlyExistingCells"></a> + <h3>method getIterateOnlyExistingCells <span class="smalllinenumber">[line 149]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIterateOnlyExistingCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get loop only existing cells<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodkey"></a> + <h3>method key <span class="smalllinenumber">[line 108]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int key( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Current key<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::key</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodnext"></a> + <h3>method next <span class="smalllinenumber">[line 115]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void next( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Next value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::next</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrewind"></a> + <h3>method rewind <span class="smalllinenumber">[line 90]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void rewind( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Rewind iterator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::rewind</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetIterateOnlyExistingCells"></a> + <h3>method setIterateOnlyExistingCells <span class="smalllinenumber">[line 158]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setIterateOnlyExistingCells( +[boolean +$value = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the iterator to loop only existing cells<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodvalid"></a> + <h3>method valid <span class="smalllinenumber">[line 124]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean valid( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Are there any more PHPExcel_Cell instances available?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::valid</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:22 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html new file mode 100644 index 0000000..f02336a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html @@ -0,0 +1,710 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_ColumnDimension</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_ColumnDimension</h1> +Source Location: /PHPExcel/Worksheet/ColumnDimension.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_ColumnDimension</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetAutoSize">getAutoSize</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetCollapsed">getCollapsed</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetColumnIndex">getColumnIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetOutlineLevel">getOutlineLevel</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetVisible">getVisible</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetWidth">getWidth</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetXfIndex">getXfIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetAutoSize">setAutoSize</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetCollapsed">setCollapsed</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetColumnIndex">setColumnIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetOutlineLevel">setOutlineLevel</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetVisible">setVisible</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetWidth">setWidth</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetXfIndex">setXfIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_ColumnDimension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 94]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_ColumnDimension __construct( +[string +$pIndex = 'A'])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_ColumnDimension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td>Character column index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAutoSize"></a> + <h3>method getAutoSize <span class="smalllinenumber">[line 148]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool getAutoSize( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Auto Size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCollapsed"></a> + <h3>method getCollapsed <span class="smalllinenumber">[line 215]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool getCollapsed( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Collapsed<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumnIndex"></a> + <h3>method getColumnIndex <span class="smalllinenumber">[line 108]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getColumnIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get ColumnIndex<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOutlineLevel"></a> + <h3>method getOutlineLevel <span class="smalllinenumber">[line 188]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getOutlineLevel( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Outline Level<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetVisible"></a> + <h3>method getVisible <span class="smalllinenumber">[line 168]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool getVisible( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Visible<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWidth"></a> + <h3>method getWidth <span class="smalllinenumber">[line 128]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>double getWidth( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetXfIndex"></a> + <h3>method getXfIndex <span class="smalllinenumber">[line 235]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getXfIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get index to cellXf<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAutoSize"></a> + <h3>method setAutoSize <span class="smalllinenumber">[line 158]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a> setAutoSize( +[bool +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Auto Size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCollapsed"></a> + <h3>method setCollapsed <span class="smalllinenumber">[line 225]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a> setCollapsed( +[bool +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Collapsed<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetColumnIndex"></a> + <h3>method setColumnIndex <span class="smalllinenumber">[line 118]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a> setColumnIndex( +string +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set ColumnIndex<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOutlineLevel"></a> + <h3>method setOutlineLevel <span class="smalllinenumber">[line 201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a> setOutlineLevel( +int +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Outline Level<br /><br /><p>Value must be between 0 and 7</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetVisible"></a> + <h3>method setVisible <span class="smalllinenumber">[line 178]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a> setVisible( +[bool +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Visible<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWidth"></a> + <h3>method setWidth <span class="smalllinenumber">[line 138]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a> setWidth( +[double +$pValue = -1])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">double&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetXfIndex"></a> + <h3>method setXfIndex <span class="smalllinenumber">[line 246]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a> setXfIndex( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set index to cellXf<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 255]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html new file mode 100644 index 0000000..d10d2ee --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html @@ -0,0 +1,1152 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_HeaderFooter</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_HeaderFooter</h1> +Source Location: /PHPExcel/Worksheet/HeaderFooter.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_HeaderFooter</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_FOOTER_CENTER">IMAGE_FOOTER_CENTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_FOOTER_LEFT">IMAGE_FOOTER_LEFT</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_FOOTER_RIGHT">IMAGE_FOOTER_RIGHT</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_HEADER_CENTER">IMAGE_HEADER_CENTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_HEADER_LEFT">IMAGE_HEADER_LEFT</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_HEADER_RIGHT">IMAGE_HEADER_RIGHT</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodaddImage">addImage</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetAlignWithMargins">getAlignWithMargins</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetDifferentFirst">getDifferentFirst</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetDifferentOddEven">getDifferentOddEven</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetEvenFooter">getEvenFooter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetEvenHeader">getEvenHeader</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetFirstFooter">getFirstFooter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetFirstHeader">getFirstHeader</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetImages">getImages</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetOddFooter">getOddFooter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetOddHeader">getOddHeader</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetScaleWithDocument">getScaleWithDocument</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodremoveImage">removeImage</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetAlignWithMargins">setAlignWithMargins</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetDifferentFirst">setDifferentFirst</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetDifferentOddEven">setDifferentOddEven</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetEvenFooter">setEvenFooter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetEvenHeader">setEvenHeader</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetFirstFooter">setFirstFooter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetFirstHeader">setFirstHeader</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetImages">setImages</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetOddFooter">setOddFooter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetOddHeader">setOddHeader</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetScaleWithDocument">setScaleWithDocument</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 96]<br /> +PHPExcel_Worksheet_HeaderFooter<br /><br /><p><ol><li><div class="src-line">&nbsp;<span class="src-id">Header</span>/<span class="src-id">Footer&nbsp;Formatting&nbsp;Syntax&nbsp;taken&nbsp;from&nbsp;Office&nbsp;Open&nbsp;XML&nbsp;Part&nbsp;</span><span class="src-num">4&nbsp;</span>-&nbsp;<span class="src-id">Markup&nbsp;Language&nbsp;Reference</span><span class="src-sym">,&nbsp;</span><span class="src-id">page&nbsp;</span><span class="src-num">1970</span>:</div></li> +<li><div class="src-line">&nbsp;</div></li> +<li><div class="src-line">&nbsp;<span class="src-id">There&nbsp;are&nbsp;a&nbsp;number&nbsp;of&nbsp;formatting&nbsp;codes&nbsp;that&nbsp;can&nbsp;be&nbsp;written&nbsp;inline&nbsp;with&nbsp;the&nbsp;actual&nbsp;</span><a href="http://www.php.net/header">header</a>&nbsp;/&nbsp;<span class="src-id">footer&nbsp;text</span><span class="src-sym">,&nbsp;</span><span class="src-id">which</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">affect&nbsp;the&nbsp;formatting&nbsp;in&nbsp;the&nbsp;</span><a href="http://www.php.net/header">header</a>&nbsp;<span class="src-key">or&nbsp;</span><span class="src-id">footer</span>.</div></li> +<li><div class="src-line">&nbsp;</div></li> +<li><div class="src-line">&nbsp;<span class="src-id">Example</span>:&nbsp;<span class="src-id">This&nbsp;example&nbsp;shows&nbsp;the&nbsp;text&nbsp;</span><span class="src-str">&quot;Center&nbsp;Bold&nbsp;Header&quot;&nbsp;</span><span class="src-id">on&nbsp;the&nbsp;first&nbsp;line&nbsp;</span><span class="src-sym">(</span><span class="src-id">center&nbsp;section</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-key">and&nbsp;</span><span class="src-id">the&nbsp;</span><a href="http://www.php.net/date">date</a>&nbsp;<span class="src-id">on</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">the&nbsp;second&nbsp;line&nbsp;</span><span class="src-sym">(</span><span class="src-id">center&nbsp;section</span><span class="src-sym">)</span>.</div></li> +<li><div class="src-line">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">&amp;</span><span class="src-id">CCenter&nbsp;</span><span class="src-sym">&amp;</span><span class="src-str">&quot;-,Bold&quot;</span><span class="src-id">Bold</span><span class="src-sym">&amp;</span><span class="src-str">&quot;-,Regular&quot;</span><span class="src-id">Header_x000A_</span><span class="src-sym">&amp;</span><span class="src-id">D</span></div></li> +<li><div class="src-line">&nbsp;</div></li> +<li><div class="src-line">&nbsp;<span class="src-id">General&nbsp;Rules</span>:</div></li> +<li><div class="src-line">&nbsp;<span class="src-id">There&nbsp;is&nbsp;no&nbsp;required&nbsp;order&nbsp;in&nbsp;which&nbsp;these&nbsp;codes&nbsp;must&nbsp;appear</span>.</div></li> +<li><div class="src-line">&nbsp;</div></li> +<li><div class="src-line">&nbsp;<span class="src-id">The&nbsp;first&nbsp;occurrence&nbsp;of&nbsp;the&nbsp;following&nbsp;codes&nbsp;turns&nbsp;the&nbsp;formatting&nbsp;ON</span><span class="src-sym">,&nbsp;</span><span class="src-id">the&nbsp;second&nbsp;occurrence&nbsp;turns&nbsp;it&nbsp;OFF&nbsp;again</span>:</div></li> +<li><div class="src-line">&nbsp;-&nbsp;<span class="src-id">strikethrough</span></div></li> +<li><div class="src-line">&nbsp;-&nbsp;<span class="src-id">superscript</span></div></li> +<li><div class="src-line">&nbsp;-&nbsp;<span class="src-id">subscript</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">Superscript&nbsp;</span><span class="src-key">and&nbsp;</span><span class="src-id">subscript&nbsp;cannot&nbsp;both&nbsp;be&nbsp;ON&nbsp;at&nbsp;same&nbsp;</span><a href="http://www.php.net/time">time</a>.&nbsp;<span class="src-id">Whichever&nbsp;comes&nbsp;first&nbsp;wins&nbsp;</span><span class="src-key">and&nbsp;</span><span class="src-id">the&nbsp;other&nbsp;is&nbsp;ignored</span><span class="src-sym">,</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-key">while&nbsp;</span><span class="src-id">the&nbsp;first&nbsp;is&nbsp;ON</span>.</div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">L&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;left&nbsp;section&quot;&nbsp;</span><span class="src-sym">(</span><span class="src-id">there&nbsp;are&nbsp;three&nbsp;</span><a href="http://www.php.net/header">header</a>&nbsp;/&nbsp;<span class="src-id">footer&nbsp;locations</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;left&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;center&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-key">and&nbsp;</span><span class="src-str">&quot;right&quot;</span><span class="src-sym">)</span>.&nbsp;<span class="src-id">When</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">two&nbsp;</span><span class="src-key">or&nbsp;</span><span class="src-id">more&nbsp;occurrences&nbsp;of&nbsp;this&nbsp;section&nbsp;marker&nbsp;exist</span><span class="src-sym">,&nbsp;</span><span class="src-id">the&nbsp;contents&nbsp;from&nbsp;all&nbsp;markers&nbsp;are&nbsp;concatenated</span><span class="src-sym">,&nbsp;</span><span class="src-id">in&nbsp;the</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">order&nbsp;of&nbsp;appearance</span><span class="src-sym">,&nbsp;</span><span class="src-key">and&nbsp;</span><span class="src-id">placed&nbsp;into&nbsp;the&nbsp;left&nbsp;section</span>.</div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">P&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;current&nbsp;page&nbsp;#&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">N&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;total&nbsp;pages&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">font&nbsp;size&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;text&nbsp;font&nbsp;size&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-id">where&nbsp;font&nbsp;size&nbsp;is&nbsp;a&nbsp;font&nbsp;size&nbsp;in&nbsp;points</span>.</div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">K&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;text&nbsp;font&nbsp;color&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">RGB&nbsp;Color&nbsp;is&nbsp;specified&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-id">RRGGBB</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">Theme&nbsp;Color&nbsp;is&nbsp;specifed&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-id">TTSNN&nbsp;where&nbsp;TT&nbsp;is&nbsp;the&nbsp;theme&nbsp;color&nbsp;Id</span><span class="src-sym">,&nbsp;</span><span class="src-id">S&nbsp;is&nbsp;either&nbsp;</span><span class="src-str">&quot;+&quot;&nbsp;</span><span class="src-key">or&nbsp;</span><span class="src-str">&quot;-&quot;&nbsp;</span><span class="src-id">of&nbsp;the&nbsp;tint</span>/<span class="src-id">shade</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">value</span><span class="src-sym">,&nbsp;</span><span class="src-id">NN&nbsp;is&nbsp;the&nbsp;tint</span>/<span class="src-id">shade&nbsp;value</span>.</div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">S&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;text&nbsp;strikethrough&quot;&nbsp;</span><span class="src-id">on&nbsp;</span>/&nbsp;<span class="src-id">off</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">X&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;text&nbsp;super&nbsp;script&quot;&nbsp;</span><span class="src-id">on&nbsp;</span>/&nbsp;<span class="src-id">off</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">Y&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;text&nbsp;subscript&quot;&nbsp;</span><span class="src-id">on&nbsp;</span>/&nbsp;<span class="src-id">off</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">C&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;center&nbsp;section&quot;</span>.&nbsp;<span class="src-id">When&nbsp;two&nbsp;</span><span class="src-key">or&nbsp;</span><span class="src-id">more&nbsp;occurrences&nbsp;of&nbsp;this&nbsp;section&nbsp;marker&nbsp;exist</span><span class="src-sym">,&nbsp;</span><span class="src-id">the&nbsp;contents</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">from&nbsp;all&nbsp;markers&nbsp;are&nbsp;concatenated</span><span class="src-sym">,&nbsp;</span><span class="src-id">in&nbsp;the&nbsp;order&nbsp;of&nbsp;appearance</span><span class="src-sym">,&nbsp;</span><span class="src-key">and&nbsp;</span><span class="src-id">placed&nbsp;into&nbsp;the&nbsp;center&nbsp;section</span>.</div></li> +<li><div class="src-line">&nbsp;</div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">D&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;date&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">T&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;time&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">G&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;picture&nbsp;as&nbsp;background&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">U&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;text&nbsp;single&nbsp;underline&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">E&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;double&nbsp;underline&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">R&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;right&nbsp;section&quot;</span>.&nbsp;<span class="src-id">When&nbsp;two&nbsp;</span><span class="src-key">or&nbsp;</span><span class="src-id">more&nbsp;occurrences&nbsp;of&nbsp;this&nbsp;section&nbsp;marker&nbsp;exist</span><span class="src-sym">,&nbsp;</span><span class="src-id">the&nbsp;contents</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">from&nbsp;all&nbsp;markers&nbsp;are&nbsp;concatenated</span><span class="src-sym">,&nbsp;</span><span class="src-id">in&nbsp;the&nbsp;order&nbsp;of&nbsp;appearance</span><span class="src-sym">,&nbsp;</span><span class="src-key">and&nbsp;</span><span class="src-id">placed&nbsp;into&nbsp;the&nbsp;right&nbsp;section</span>.</div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">Z&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;this&nbsp;workbook's&nbsp;file&nbsp;path&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">F&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;this&nbsp;workbook's&nbsp;file&nbsp;name&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">A&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;sheet&nbsp;tab&nbsp;name&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span>+&nbsp;-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-id">add&nbsp;to&nbsp;page&nbsp;</span><span class="src-comm">#.</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span>-&nbsp;-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-id">subtract&nbsp;from&nbsp;page&nbsp;</span><span class="src-comm">#.</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-str">&quot;font&nbsp;name,font&nbsp;type&quot;&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;text&nbsp;font&nbsp;name&quot;&nbsp;</span><span class="src-key">and&nbsp;</span><span class="src-str">&quot;text&nbsp;font&nbsp;type&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-id">where&nbsp;font&nbsp;name&nbsp;</span><span class="src-key">and&nbsp;</span><span class="src-id">font&nbsp;type</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">are&nbsp;strings&nbsp;specifying&nbsp;the&nbsp;name&nbsp;</span><span class="src-key">and&nbsp;</span><span class="src-id">type&nbsp;of&nbsp;the&nbsp;font</span><span class="src-sym">,&nbsp;</span><span class="src-id">separated&nbsp;by&nbsp;a&nbsp;comma</span>.&nbsp;<span class="src-id">When&nbsp;a&nbsp;hyphen&nbsp;appears&nbsp;in&nbsp;font</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-id">name</span><span class="src-sym">,&nbsp;</span><span class="src-id">it&nbsp;means&nbsp;</span><span class="src-str">&quot;none&nbsp;specified&quot;</span>.&nbsp;<span class="src-id">Both&nbsp;of&nbsp;font&nbsp;name&nbsp;</span><span class="src-key">and&nbsp;</span><span class="src-id">font&nbsp;type&nbsp;can&nbsp;be&nbsp;localized&nbsp;values</span>.</div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-str">&quot;-,Bold&quot;&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;bold&nbsp;font&nbsp;style&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">B&nbsp;</span>-&nbsp;<span class="src-id">also&nbsp;means&nbsp;</span><span class="src-str">&quot;bold&nbsp;font&nbsp;style&quot;</span>.</div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-str">&quot;-,Regular&quot;&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;regular&nbsp;font&nbsp;style&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-str">&quot;-,Italic&quot;&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;italic&nbsp;font&nbsp;style&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">I&nbsp;</span>-&nbsp;<span class="src-id">also&nbsp;means&nbsp;</span><span class="src-str">&quot;italic&nbsp;font&nbsp;style&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-str">&quot;-,Bold&nbsp;Italic&quot;&nbsp;</span><span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;bold&nbsp;italic&nbsp;font&nbsp;style&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">O&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;outline&nbsp;style&quot;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-sym">&amp;</span><span class="src-id">H&nbsp;</span>-&nbsp;<span class="src-id">code&nbsp;</span><span class="src-key">for&nbsp;</span><span class="src-str">&quot;shadow&nbsp;style&quot;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 186]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_HeaderFooter __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_HeaderFooter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddImage"></a> + <h3>method addImage <span class="smalllinenumber">[line 398]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> addImage( +[<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> +$image = null], [string +$location = self::IMAGE_HEADER_LEFT])</code> + </td></tr></table> + </td></tr></table><br /> + + Add header/footer image<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a>&nbsp;&nbsp;</td> + <td><b>$image</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$location</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAlignWithMargins"></a> + <h3>method getAlignWithMargins <span class="smalllinenumber">[line 375]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getAlignWithMargins( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AlignWithMargins<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDifferentFirst"></a> + <h3>method getDifferentFirst <span class="smalllinenumber">[line 335]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getDifferentFirst( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get DifferentFirst<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDifferentOddEven"></a> + <h3>method getDifferentOddEven <span class="smalllinenumber">[line 315]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getDifferentOddEven( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get DifferentOddEven<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEvenFooter"></a> + <h3>method getEvenFooter <span class="smalllinenumber">[line 255]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getEvenFooter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get EvenFooter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEvenHeader"></a> + <h3>method getEvenHeader <span class="smalllinenumber">[line 235]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getEvenHeader( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get EvenHeader<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFirstFooter"></a> + <h3>method getFirstFooter <span class="smalllinenumber">[line 295]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFirstFooter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get FirstFooter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFirstHeader"></a> + <h3>method getFirstHeader <span class="smalllinenumber">[line 275]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFirstHeader( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get FirstHeader<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetImages"></a> + <h3>method getImages <span class="smalllinenumber">[line 438]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_HeaderFooterDrawing[] getImages( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get header/footer images<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOddFooter"></a> + <h3>method getOddFooter <span class="smalllinenumber">[line 215]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getOddFooter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get OddFooter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOddHeader"></a> + <h3>method getOddHeader <span class="smalllinenumber">[line 195]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getOddHeader( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get OddHeader<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetScaleWithDocument"></a> + <h3>method getScaleWithDocument <span class="smalllinenumber">[line 355]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getScaleWithDocument( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get ScaleWithDocument<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodremoveImage"></a> + <h3>method removeImage <span class="smalllinenumber">[line 410]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> removeImage( +[string +$location = self::IMAGE_HEADER_LEFT])</code> + </td></tr></table> + </td></tr></table><br /> + + Remove header/footer image<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$location</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAlignWithMargins"></a> + <h3>method setAlignWithMargins <span class="smalllinenumber">[line 385]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setAlignWithMargins( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AlignWithMargins<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDifferentFirst"></a> + <h3>method setDifferentFirst <span class="smalllinenumber">[line 345]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setDifferentFirst( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set DifferentFirst<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDifferentOddEven"></a> + <h3>method setDifferentOddEven <span class="smalllinenumber">[line 325]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setDifferentOddEven( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set DifferentOddEven<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetEvenFooter"></a> + <h3>method setEvenFooter <span class="smalllinenumber">[line 265]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setEvenFooter( +string +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set EvenFooter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetEvenHeader"></a> + <h3>method setEvenHeader <span class="smalllinenumber">[line 245]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setEvenHeader( +string +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set EvenHeader<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFirstFooter"></a> + <h3>method setFirstFooter <span class="smalllinenumber">[line 305]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setFirstFooter( +string +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set FirstFooter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFirstHeader"></a> + <h3>method setFirstHeader <span class="smalllinenumber">[line 285]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setFirstHeader( +string +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set FirstHeader<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetImages"></a> + <h3>method setImages <span class="smalllinenumber">[line 424]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setImages( +PHPExcel_Worksheet_HeaderFooterDrawing[] +$images)</code> + </td></tr></table> + </td></tr></table><br /> + + Set header/footer images<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">PHPExcel_Worksheet_HeaderFooterDrawing[]&nbsp;&nbsp;</td> + <td><b>$images</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOddFooter"></a> + <h3>method setOddFooter <span class="smalllinenumber">[line 225]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setOddFooter( +string +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set OddFooter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOddHeader"></a> + <h3>method setOddHeader <span class="smalllinenumber">[line 205]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setOddHeader( +string +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set OddHeader<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetScaleWithDocument"></a> + <h3>method setScaleWithDocument <span class="smalllinenumber">[line 365]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setScaleWithDocument( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set ScaleWithDocument<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 455]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constIMAGE_FOOTER_CENTER"></a> + <p></p> + <h4>IMAGE_FOOTER_CENTER = <span class="value">&nbsp;'CF'</span></h4> + <p>[line 103]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constIMAGE_FOOTER_LEFT"></a> + <p></p> + <h4>IMAGE_FOOTER_LEFT = <span class="value">&nbsp;'LF'</span></h4> + <p>[line 102]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constIMAGE_FOOTER_RIGHT"></a> + <p></p> + <h4>IMAGE_FOOTER_RIGHT = <span class="value">&nbsp;'RF'</span></h4> + <p>[line 104]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constIMAGE_HEADER_CENTER"></a> + <p></p> + <h4>IMAGE_HEADER_CENTER = <span class="value">&nbsp;'CH'</span></h4> + <p>[line 100]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constIMAGE_HEADER_LEFT"></a> + <p></p> + <h4>IMAGE_HEADER_LEFT = <span class="value">&nbsp;'LH'</span></h4> + <p>[line 99]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constIMAGE_HEADER_RIGHT"></a> + <p></p> + <h4>IMAGE_HEADER_RIGHT = <span class="value">&nbsp;'RH'</span></h4> + <p>[line 101]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:21 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html new file mode 100644 index 0000000..79f390a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html @@ -0,0 +1,1286 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_HeaderFooterDrawing</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_HeaderFooterDrawing</h1> +Source Location: /PHPExcel/Worksheet/HeaderFooterDrawing.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> + | + --<a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a> + | + --PHPExcel_Worksheet_HeaderFooterDrawing</pre><br /> +<div class="description">PHPExcel_Worksheet_HeaderFooterDrawing</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_height">$_height</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_name">$_name</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_offsetX">$_offsetX</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_offsetY">$_offsetY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_resizeProportional">$_resizeProportional</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_width">$_width</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetExtension">getExtension</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetFilename">getFilename</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetHeight">getHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetName">getName</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetOffsetX">getOffsetX</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetOffsetY">getOffsetY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetPath">getPath</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetResizeProportional">getResizeProportional</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetWidth">getWidth</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetHeight">setHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetName">setName</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetOffsetX">setOffsetX</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetOffsetY">setOffsetY</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetPath">setPath</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetResizeProportional">setResizeProportional</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetWidth">setWidth</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetWidthAndHeight">setWidthAndHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_coordinates">PHPExcel_Worksheet_BaseDrawing::$_coordinates</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_description">PHPExcel_Worksheet_BaseDrawing::$_description</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_rotation">PHPExcel_Worksheet_BaseDrawing::$_rotation</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_shadow">PHPExcel_Worksheet_BaseDrawing::$_shadow</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_worksheet">PHPExcel_Worksheet_BaseDrawing::$_worksheet</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__construct">PHPExcel_Worksheet_Drawing::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_Worksheet_Drawing + </dd> + <dt> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetExtension">PHPExcel_Worksheet_Drawing::getExtension()</a> + </dt> + <dd> + Get Extension + </dd> + <dt> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetFilename">PHPExcel_Worksheet_Drawing::getFilename()</a> + </dt> + <dd> + Get Filename + </dd> + <dt> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetHashCode">PHPExcel_Worksheet_Drawing::getHashCode()</a> + </dt> + <dd> + Get hash code + </dd> + <dt> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetIndexedFilename">PHPExcel_Worksheet_Drawing::getIndexedFilename()</a> + </dt> + <dd> + Get indexed filename (using image index) + </dd> + <dt> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetPath">PHPExcel_Worksheet_Drawing::getPath()</a> + </dt> + <dd> + Get Path + </dd> + <dt> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodsetPath">PHPExcel_Worksheet_Drawing::setPath()</a> + </dt> + <dd> + Set Path + </dd> + <dt> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__clone">PHPExcel_Worksheet_Drawing::__clone()</a> + </dt> + <dd> + Implement PHP __clone to create a deep clone, not just a shallow copy. + </dd> + </dl> +<h4>Class: <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__construct">PHPExcel_Worksheet_BaseDrawing::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_Worksheet_BaseDrawing + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetCoordinates">PHPExcel_Worksheet_BaseDrawing::getCoordinates()</a> + </dt> + <dd> + Get Coordinates + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetDescription">PHPExcel_Worksheet_BaseDrawing::getDescription()</a> + </dt> + <dd> + Get Description + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHashCode">PHPExcel_Worksheet_BaseDrawing::getHashCode()</a> + </dt> + <dd> + Get hash code + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHeight">PHPExcel_Worksheet_BaseDrawing::getHeight()</a> + </dt> + <dd> + Get Height + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetImageIndex">PHPExcel_Worksheet_BaseDrawing::getImageIndex()</a> + </dt> + <dd> + Get image index + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetName">PHPExcel_Worksheet_BaseDrawing::getName()</a> + </dt> + <dd> + Get Name + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetX">PHPExcel_Worksheet_BaseDrawing::getOffsetX()</a> + </dt> + <dd> + Get OffsetX + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetY">PHPExcel_Worksheet_BaseDrawing::getOffsetY()</a> + </dt> + <dd> + Get OffsetY + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetResizeProportional">PHPExcel_Worksheet_BaseDrawing::getResizeProportional()</a> + </dt> + <dd> + Get ResizeProportional + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetRotation">PHPExcel_Worksheet_BaseDrawing::getRotation()</a> + </dt> + <dd> + Get Rotation + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetShadow">PHPExcel_Worksheet_BaseDrawing::getShadow()</a> + </dt> + <dd> + Get Shadow + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWidth">PHPExcel_Worksheet_BaseDrawing::getWidth()</a> + </dt> + <dd> + Get Width + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWorksheet">PHPExcel_Worksheet_BaseDrawing::getWorksheet()</a> + </dt> + <dd> + Get Worksheet + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetCoordinates">PHPExcel_Worksheet_BaseDrawing::setCoordinates()</a> + </dt> + <dd> + Set Coordinates + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetDescription">PHPExcel_Worksheet_BaseDrawing::setDescription()</a> + </dt> + <dd> + Set Description + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetHeight">PHPExcel_Worksheet_BaseDrawing::setHeight()</a> + </dt> + <dd> + Set Height + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetName">PHPExcel_Worksheet_BaseDrawing::setName()</a> + </dt> + <dd> + Set Name + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetX">PHPExcel_Worksheet_BaseDrawing::setOffsetX()</a> + </dt> + <dd> + Set OffsetX + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetY">PHPExcel_Worksheet_BaseDrawing::setOffsetY()</a> + </dt> + <dd> + Set OffsetY + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetResizeProportional">PHPExcel_Worksheet_BaseDrawing::setResizeProportional()</a> + </dt> + <dd> + Set ResizeProportional + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetRotation">PHPExcel_Worksheet_BaseDrawing::setRotation()</a> + </dt> + <dd> + Set Rotation + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetShadow">PHPExcel_Worksheet_BaseDrawing::setShadow()</a> + </dt> + <dd> + Set Shadow + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidth">PHPExcel_Worksheet_BaseDrawing::setWidth()</a> + </dt> + <dd> + Set Width + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidthAndHeight">PHPExcel_Worksheet_BaseDrawing::setWidthAndHeight()</a> + </dt> + <dd> + Set width and height with proportional resize + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWorksheet">PHPExcel_Worksheet_BaseDrawing::setWorksheet()</a> + </dt> + <dd> + Set Worksheet + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__clone">PHPExcel_Worksheet_BaseDrawing::__clone()</a> + </dt> + <dd> + Implement PHP __clone to create a deep clone, not just a shallow copy. + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_HeaderFooterDrawing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_height"></a> + <p></p> + <h4>$_height = <span class="value"></span></h4> + <p>[line 78]</p> + Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + <tr> + <td><b>Overrides:</b>&nbsp;&nbsp;</td> + <td>Array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_name"></a> + <p></p> + <h4>$_name = <span class="value"></span></h4> + <p>[line 50]</p> + Name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + <tr> + <td><b>Overrides:</b>&nbsp;&nbsp;</td> + <td>Array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_offsetX"></a> + <p></p> + <h4>$_offsetX = <span class="value"></span></h4> + <p>[line 57]</p> + Offset X<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + <tr> + <td><b>Overrides:</b>&nbsp;&nbsp;</td> + <td>Array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_offsetY"></a> + <p></p> + <h4>$_offsetY = <span class="value"></span></h4> + <p>[line 64]</p> + Offset Y<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + <tr> + <td><b>Overrides:</b>&nbsp;&nbsp;</td> + <td>Array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_resizeProportional"></a> + <p></p> + <h4>$_resizeProportional = <span class="value"></span></h4> + <p>[line 85]</p> + Proportional resize<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>boolean</td> + </tr> + <tr> + <td><b>Overrides:</b>&nbsp;&nbsp;</td> + <td>Array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_width"></a> + <p></p> + <h4>$_width = <span class="value"></span></h4> + <p>[line 71]</p> + Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>int</td> + </tr> + <tr> + <td><b>Overrides:</b>&nbsp;&nbsp;</td> + <td>Array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 90]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_HeaderFooterDrawing __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_HeaderFooterDrawing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__construct">PHPExcel_Worksheet_Drawing::__construct()</a> (Create a new PHPExcel_Worksheet_Drawing)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetExtension"></a> + <h3>method getExtension <span class="smalllinenumber">[line 280]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getExtension( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Extension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetExtension">PHPExcel_Worksheet_Drawing::getExtension()</a> (Get Extension)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFilename"></a> + <h3>method getFilename <span class="smalllinenumber">[line 271]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFilename( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Filename<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetFilename">PHPExcel_Worksheet_Drawing::getFilename()</a> (Get Filename)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 325]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetHashCode">PHPExcel_Worksheet_Drawing::getHashCode()</a> (Get hash code)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHeight"></a> + <h3>method getHeight <span class="smalllinenumber">[line 195]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getHeight( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHeight">PHPExcel_Worksheet_BaseDrawing::getHeight()</a> (Get Height)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetName"></a> + <h3>method getName <span class="smalllinenumber">[line 107]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getName( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetName">PHPExcel_Worksheet_BaseDrawing::getName()</a> (Get Name)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOffsetX"></a> + <h3>method getOffsetX <span class="smalllinenumber">[line 127]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getOffsetX( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get OffsetX<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetX">PHPExcel_Worksheet_BaseDrawing::getOffsetX()</a> (Get OffsetX)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOffsetY"></a> + <h3>method getOffsetY <span class="smalllinenumber">[line 147]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getOffsetY( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get OffsetY<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetY">PHPExcel_Worksheet_BaseDrawing::getOffsetY()</a> (Get OffsetY)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPath"></a> + <h3>method getPath <span class="smalllinenumber">[line 290]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPath( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Path<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetPath">PHPExcel_Worksheet_Drawing::getPath()</a> (Get Path)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetResizeProportional"></a> + <h3>method getResizeProportional <span class="smalllinenumber">[line 251]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getResizeProportional( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get ResizeProportional<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetResizeProportional">PHPExcel_Worksheet_BaseDrawing::getResizeProportional()</a> (Get ResizeProportional)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWidth"></a> + <h3>method getWidth <span class="smalllinenumber">[line 167]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getWidth( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWidth">PHPExcel_Worksheet_BaseDrawing::getWidth()</a> (Get Width)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetHeight"></a> + <h3>method setHeight <span class="smalllinenumber">[line 205]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> setHeight( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetHeight">PHPExcel_Worksheet_BaseDrawing::setHeight()</a> (Set Height)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetName"></a> + <h3>method setName <span class="smalllinenumber">[line 117]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> setName( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Name<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetName">PHPExcel_Worksheet_BaseDrawing::setName()</a> (Set Name)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOffsetX"></a> + <h3>method setOffsetX <span class="smalllinenumber">[line 137]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> setOffsetX( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set OffsetX<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetX">PHPExcel_Worksheet_BaseDrawing::setOffsetX()</a> (Set OffsetX)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOffsetY"></a> + <h3>method setOffsetY <span class="smalllinenumber">[line 157]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> setOffsetY( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set OffsetY<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetY">PHPExcel_Worksheet_BaseDrawing::setOffsetY()</a> (Set OffsetY)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPath"></a> + <h3>method setPath <span class="smalllinenumber">[line 302]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> setPath( +[string +$pValue = ''], [boolean +$pVerifyFile = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Path<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodsetPath">PHPExcel_Worksheet_Drawing::setPath()</a> (Set Path)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>File path</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pVerifyFile</b>&nbsp;&nbsp;</td> + <td>Verify file</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetResizeProportional"></a> + <h3>method setResizeProportional <span class="smalllinenumber">[line 261]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> setResizeProportional( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set ResizeProportional<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetResizeProportional">PHPExcel_Worksheet_BaseDrawing::setResizeProportional()</a> (Set ResizeProportional)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWidth"></a> + <h3>method setWidth <span class="smalllinenumber">[line 177]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> setWidth( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidth">PHPExcel_Worksheet_BaseDrawing::setWidth()</a> (Set Width)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetWidthAndHeight"></a> + <h3>method setWidthAndHeight <span class="smalllinenumber">[line 231]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> setWidthAndHeight( +[int +$width = 0], [int +$height = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set width and height with proportional resize<br /><br /><p>Example: <ol><li><div class="src-line">&nbsp;<span class="src-var">$objDrawing</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetResizeProportional">setResizeProportional</a><span class="src-sym">(</span><span class="src-id">true</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-var">$objDrawing</span><span class="src-sym">-&gt;</span><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetWidthAndHeight">setWidthAndHeight</a><span class="src-sym">(</span><span class="src-num">160</span><span class="src-sym">,</span><span class="src-num">120</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>author:</b>&nbsp;&nbsp;</td><td>Vincent@luo MSN:kele_100@hotmail.com</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidthAndHeight">PHPExcel_Worksheet_BaseDrawing::setWidthAndHeight()</a> (Set width and height with proportional resize)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$width</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$height</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 340]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__clone">PHPExcel_Worksheet_Drawing::__clone()</a> (Implement PHP __clone to create a deep clone, not just a shallow copy.)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:27 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html new file mode 100644 index 0000000..d49db5f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html @@ -0,0 +1,824 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_MemoryDrawing</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_MemoryDrawing</h1> +Source Location: /PHPExcel/Worksheet/MemoryDrawing.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> + | + --PHPExcel_Worksheet_MemoryDrawing</pre><br /> +<div class="description">PHPExcel_Worksheet_MemoryDrawing</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_DEFAULT">MIMETYPE_DEFAULT</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_GIF">MIMETYPE_GIF</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_JPEG">MIMETYPE_JPEG</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_PNG">MIMETYPE_PNG</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_DEFAULT">RENDERING_DEFAULT</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_GIF">RENDERING_GIF</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_JPEG">RENDERING_JPEG</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_PNG">RENDERING_PNG</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetImageResource">getImageResource</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetIndexedFilename">getIndexedFilename</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetMimeType">getMimeType</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetRenderingFunction">getRenderingFunction</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodsetImageResource">setImageResource</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodsetMimeType">setMimeType</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodsetRenderingFunction">setRenderingFunction</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_coordinates">PHPExcel_Worksheet_BaseDrawing::$_coordinates</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_description">PHPExcel_Worksheet_BaseDrawing::$_description</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_height">PHPExcel_Worksheet_BaseDrawing::$_height</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_name">PHPExcel_Worksheet_BaseDrawing::$_name</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_offsetX">PHPExcel_Worksheet_BaseDrawing::$_offsetX</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_offsetY">PHPExcel_Worksheet_BaseDrawing::$_offsetY</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_resizeProportional">PHPExcel_Worksheet_BaseDrawing::$_resizeProportional</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_rotation">PHPExcel_Worksheet_BaseDrawing::$_rotation</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_shadow">PHPExcel_Worksheet_BaseDrawing::$_shadow</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_width">PHPExcel_Worksheet_BaseDrawing::$_width</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_worksheet">PHPExcel_Worksheet_BaseDrawing::$_worksheet</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__construct">PHPExcel_Worksheet_BaseDrawing::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_Worksheet_BaseDrawing + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetCoordinates">PHPExcel_Worksheet_BaseDrawing::getCoordinates()</a> + </dt> + <dd> + Get Coordinates + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetDescription">PHPExcel_Worksheet_BaseDrawing::getDescription()</a> + </dt> + <dd> + Get Description + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHashCode">PHPExcel_Worksheet_BaseDrawing::getHashCode()</a> + </dt> + <dd> + Get hash code + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHeight">PHPExcel_Worksheet_BaseDrawing::getHeight()</a> + </dt> + <dd> + Get Height + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetImageIndex">PHPExcel_Worksheet_BaseDrawing::getImageIndex()</a> + </dt> + <dd> + Get image index + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetName">PHPExcel_Worksheet_BaseDrawing::getName()</a> + </dt> + <dd> + Get Name + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetX">PHPExcel_Worksheet_BaseDrawing::getOffsetX()</a> + </dt> + <dd> + Get OffsetX + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetY">PHPExcel_Worksheet_BaseDrawing::getOffsetY()</a> + </dt> + <dd> + Get OffsetY + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetResizeProportional">PHPExcel_Worksheet_BaseDrawing::getResizeProportional()</a> + </dt> + <dd> + Get ResizeProportional + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetRotation">PHPExcel_Worksheet_BaseDrawing::getRotation()</a> + </dt> + <dd> + Get Rotation + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetShadow">PHPExcel_Worksheet_BaseDrawing::getShadow()</a> + </dt> + <dd> + Get Shadow + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWidth">PHPExcel_Worksheet_BaseDrawing::getWidth()</a> + </dt> + <dd> + Get Width + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWorksheet">PHPExcel_Worksheet_BaseDrawing::getWorksheet()</a> + </dt> + <dd> + Get Worksheet + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetCoordinates">PHPExcel_Worksheet_BaseDrawing::setCoordinates()</a> + </dt> + <dd> + Set Coordinates + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetDescription">PHPExcel_Worksheet_BaseDrawing::setDescription()</a> + </dt> + <dd> + Set Description + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetHeight">PHPExcel_Worksheet_BaseDrawing::setHeight()</a> + </dt> + <dd> + Set Height + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetName">PHPExcel_Worksheet_BaseDrawing::setName()</a> + </dt> + <dd> + Set Name + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetX">PHPExcel_Worksheet_BaseDrawing::setOffsetX()</a> + </dt> + <dd> + Set OffsetX + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetY">PHPExcel_Worksheet_BaseDrawing::setOffsetY()</a> + </dt> + <dd> + Set OffsetY + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetResizeProportional">PHPExcel_Worksheet_BaseDrawing::setResizeProportional()</a> + </dt> + <dd> + Set ResizeProportional + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetRotation">PHPExcel_Worksheet_BaseDrawing::setRotation()</a> + </dt> + <dd> + Set Rotation + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetShadow">PHPExcel_Worksheet_BaseDrawing::setShadow()</a> + </dt> + <dd> + Set Shadow + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidth">PHPExcel_Worksheet_BaseDrawing::setWidth()</a> + </dt> + <dd> + Set Width + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidthAndHeight">PHPExcel_Worksheet_BaseDrawing::setWidthAndHeight()</a> + </dt> + <dd> + Set width and height with proportional resize + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWorksheet">PHPExcel_Worksheet_BaseDrawing::setWorksheet()</a> + </dt> + <dd> + Set Worksheet + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__clone">PHPExcel_Worksheet_BaseDrawing::__clone()</a> + </dt> + <dd> + Implement PHP __clone to create a deep clone, not just a shallow copy. + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_MemoryDrawing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 177]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHashCode">PHPExcel_Worksheet_BaseDrawing::getHashCode()</a> (Get hash code)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetImageResource"></a> + <h3>method getImageResource <span class="smalllinenumber">[line 98]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>resource getImageResource( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get image resource<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIndexedFilename"></a> + <h3>method getIndexedFilename <span class="smalllinenumber">[line 164]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getIndexedFilename( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get indexed filename (using image index)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetMimeType"></a> + <h3>method getMimeType <span class="smalllinenumber">[line 144]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getMimeType( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get mime type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRenderingFunction"></a> + <h3>method getRenderingFunction <span class="smalllinenumber">[line 124]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getRenderingFunction( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get rendering function<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 81]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_MemoryDrawing __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_MemoryDrawing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__construct">PHPExcel_Worksheet_BaseDrawing::__construct()</a> (Create a new PHPExcel_Worksheet_BaseDrawing)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetImageResource"></a> + <h3>method setImageResource <span class="smalllinenumber">[line 108]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a> setImageResource( +[$value +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set image resource<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">$value&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>resource</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetMimeType"></a> + <h3>method setMimeType <span class="smalllinenumber">[line 154]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a> setMimeType( +[string +$value = PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT])</code> + </td></tr></table> + </td></tr></table><br /> + + Set mime type<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRenderingFunction"></a> + <h3>method setRenderingFunction <span class="smalllinenumber">[line 134]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a> setRenderingFunction( +[string +$value = PHPExcel_Worksheet_MemoryDrawing::RENDERING_DEFAULT])</code> + </td></tr></table> + </td></tr></table><br /> + + Set rendering function<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 190]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__clone">PHPExcel_Worksheet_BaseDrawing::__clone()</a> (Implement PHP __clone to create a deep clone, not just a shallow copy.)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constMIMETYPE_DEFAULT"></a> + <p></p> + <h4>MIMETYPE_DEFAULT = <span class="value">&nbsp;'image/png'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constMIMETYPE_GIF"></a> + <p></p> + <h4>MIMETYPE_GIF = <span class="value">&nbsp;'image/gif'</span></h4> + <p>[line 47]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constMIMETYPE_JPEG"></a> + <p></p> + <h4>MIMETYPE_JPEG = <span class="value">&nbsp;'image/jpeg'</span></h4> + <p>[line 48]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constMIMETYPE_PNG"></a> + <p></p> + <h4>MIMETYPE_PNG = <span class="value">&nbsp;'image/png'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constRENDERING_DEFAULT"></a> + <p></p> + <h4>RENDERING_DEFAULT = <span class="value">&nbsp;'imagepng'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constRENDERING_GIF"></a> + <p></p> + <h4>RENDERING_GIF = <span class="value">&nbsp;'imagegif'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constRENDERING_JPEG"></a> + <p></p> + <h4>RENDERING_JPEG = <span class="value">&nbsp;'imagejpeg'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constRENDERING_PNG"></a> + <p></p> + <h4>RENDERING_PNG = <span class="value">&nbsp;'imagepng'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:42 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html new file mode 100644 index 0000000..0e2ad02 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html @@ -0,0 +1,633 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_PageMargins</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_PageMargins</h1> +Source Location: /PHPExcel/Worksheet/PageMargins.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_PageMargins</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetBottom">getBottom</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetFooter">getFooter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetHeader">getHeader</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetLeft">getLeft</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetRight">getRight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetTop">getTop</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetBottom">setBottom</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetFooter">setFooter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetHeader">setHeader</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetLeft">setLeft</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetRight">setRight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetTop">setTop</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_PageMargins<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 83]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_PageMargins __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_PageMargins<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBottom"></a> + <h3>method getBottom <span class="smalllinenumber">[line 152]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>double getBottom( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Bottom<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFooter"></a> + <h3>method getFooter <span class="smalllinenumber">[line 192]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>double getFooter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Footer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHeader"></a> + <h3>method getHeader <span class="smalllinenumber">[line 172]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>double getHeader( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Header<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLeft"></a> + <h3>method getLeft <span class="smalllinenumber">[line 92]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>double getLeft( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Left<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRight"></a> + <h3>method getRight <span class="smalllinenumber">[line 112]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>double getRight( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Right<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTop"></a> + <h3>method getTop <span class="smalllinenumber">[line 132]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>double getTop( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Top<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBottom"></a> + <h3>method setBottom <span class="smalllinenumber">[line 162]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a> setBottom( +double +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Bottom<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">double&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFooter"></a> + <h3>method setFooter <span class="smalllinenumber">[line 202]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a> setFooter( +double +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Footer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">double&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetHeader"></a> + <h3>method setHeader <span class="smalllinenumber">[line 182]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a> setHeader( +double +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Header<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">double&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLeft"></a> + <h3>method setLeft <span class="smalllinenumber">[line 102]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a> setLeft( +double +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Left<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">double&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRight"></a> + <h3>method setRight <span class="smalllinenumber">[line 122]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a> setRight( +double +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Right<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">double&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTop"></a> + <h3>method setTop <span class="smalllinenumber">[line 142]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a> setTop( +double +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Top<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">double&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 210]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:47 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html new file mode 100644 index 0000000..3ac1834 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html @@ -0,0 +1,2131 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_PageSetup</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_PageSetup</h1> +Source Location: /PHPExcel/Worksheet/PageSetup.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_PageSetup</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constORIENTATION_DEFAULT">ORIENTATION_DEFAULT</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constORIENTATION_LANDSCAPE">ORIENTATION_LANDSCAPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constORIENTATION_PORTRAIT">ORIENTATION_PORTRAIT</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_6_3_4_ENVELOPE">PAPERSIZE_6_3_4_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A2_PAPER">PAPERSIZE_A2_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3">PAPERSIZE_A3</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3_EXTRA_PAPER">PAPERSIZE_A3_EXTRA_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER">PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3_TRANSVERSE_PAPER">PAPERSIZE_A3_TRANSVERSE_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4">PAPERSIZE_A4</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_EXTRA_PAPER">PAPERSIZE_A4_EXTRA_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_PLUS_PAPER">PAPERSIZE_A4_PLUS_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_SMALL">PAPERSIZE_A4_SMALL</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_TRANSVERSE_PAPER">PAPERSIZE_A4_TRANSVERSE_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A5">PAPERSIZE_A5</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A5_EXTRA_PAPER">PAPERSIZE_A5_EXTRA_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A5_TRANSVERSE_PAPER">PAPERSIZE_A5_TRANSVERSE_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B4">PAPERSIZE_B4</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B4_ENVELOPE">PAPERSIZE_B4_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B5">PAPERSIZE_B5</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B5_ENVELOPE">PAPERSIZE_B5_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B6_ENVELOPE">PAPERSIZE_B6_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C">PAPERSIZE_C</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C3_ENVELOPE">PAPERSIZE_C3_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C4_ENVELOPE">PAPERSIZE_C4_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C5_ENVELOPE">PAPERSIZE_C5_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C6_ENVELOPE">PAPERSIZE_C6_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C65_ENVELOPE">PAPERSIZE_C65_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_D">PAPERSIZE_D</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_DL_ENVELOPE">PAPERSIZE_DL_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_E">PAPERSIZE_E</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_EXECUTIVE">PAPERSIZE_EXECUTIVE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_FOLIO">PAPERSIZE_FOLIO</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_GERMAN_LEGAL_FANFOLD">PAPERSIZE_GERMAN_LEGAL_FANFOLD</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_GERMAN_STANDARD_FANFOLD">PAPERSIZE_GERMAN_STANDARD_FANFOLD</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_INVITE_ENVELOPE">PAPERSIZE_INVITE_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_ISO_B4">PAPERSIZE_ISO_B4</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_ISO_B5_EXTRA_PAPER">PAPERSIZE_ISO_B5_EXTRA_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_ITALY_ENVELOPE">PAPERSIZE_ITALY_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_JAPANESE_DOUBLE_POSTCARD">PAPERSIZE_JAPANESE_DOUBLE_POSTCARD</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_JIS_B5_TRANSVERSE_PAPER">PAPERSIZE_JIS_B5_TRANSVERSE_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LEDGER">PAPERSIZE_LEDGER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LEGAL">PAPERSIZE_LEGAL</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LEGAL_EXTRA_PAPER">PAPERSIZE_LEGAL_EXTRA_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER">PAPERSIZE_LETTER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_EXTRA_PAPER">PAPERSIZE_LETTER_EXTRA_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER">PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_PLUS_PAPER">PAPERSIZE_LETTER_PLUS_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_SMALL">PAPERSIZE_LETTER_SMALL</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_TRANSVERSE_PAPER">PAPERSIZE_LETTER_TRANSVERSE_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_MONARCH_ENVELOPE">PAPERSIZE_MONARCH_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO9_ENVELOPE">PAPERSIZE_NO9_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO10_ENVELOPE">PAPERSIZE_NO10_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO11_ENVELOPE">PAPERSIZE_NO11_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO12_ENVELOPE">PAPERSIZE_NO12_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO14_ENVELOPE">PAPERSIZE_NO14_ENVELOPE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NOTE">PAPERSIZE_NOTE</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_QUARTO">PAPERSIZE_QUARTO</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_1">PAPERSIZE_STANDARD_1</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_2">PAPERSIZE_STANDARD_2</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_PAPER_1">PAPERSIZE_STANDARD_PAPER_1</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_PAPER_2">PAPERSIZE_STANDARD_PAPER_2</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_PAPER_3">PAPERSIZE_STANDARD_PAPER_3</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STATEMENT">PAPERSIZE_STATEMENT</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_SUPERA_SUPERA_A4_PAPER">PAPERSIZE_SUPERA_SUPERA_A4_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_SUPERB_SUPERB_A3_PAPER">PAPERSIZE_SUPERB_SUPERB_A3_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_TABLOID">PAPERSIZE_TABLOID</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_TABLOID_EXTRA_PAPER">PAPERSIZE_TABLOID_EXTRA_PAPER</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_US_STANDARD_FANFOLD">PAPERSIZE_US_STANDARD_FANFOLD</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constSETPRINTRANGE_INSERT">SETPRINTRANGE_INSERT</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constSETPRINTRANGE_OVERWRITE">SETPRINTRANGE_OVERWRITE</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodaddPrintArea">addPrintArea</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodaddPrintAreaByColumnAndRow">addPrintAreaByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodclearPrintArea">clearPrintArea</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetColumnsToRepeatAtLeft">getColumnsToRepeatAtLeft</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFirstPageNumber">getFirstPageNumber</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFitToHeight">getFitToHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFitToPage">getFitToPage</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFitToWidth">getFitToWidth</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetHorizontalCentered">getHorizontalCentered</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetOrientation">getOrientation</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetPaperSize">getPaperSize</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetPrintArea">getPrintArea</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetRowsToRepeatAtTop">getRowsToRepeatAtTop</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetScale">getScale</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetVerticalCentered">getVerticalCentered</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodisColumnsToRepeatAtLeftSet">isColumnsToRepeatAtLeftSet</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodisPrintAreaSet">isPrintAreaSet</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodisRowsToRepeatAtTopSet">isRowsToRepeatAtTopSet</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodresetFirstPageNumber">resetFirstPageNumber</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetColumnsToRepeatAtLeft">setColumnsToRepeatAtLeft</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetColumnsToRepeatAtLeftByStartAndEnd">setColumnsToRepeatAtLeftByStartAndEnd</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFirstPageNumber">setFirstPageNumber</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFitToHeight">setFitToHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFitToPage">setFitToPage</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFitToWidth">setFitToWidth</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetHorizontalCentered">setHorizontalCentered</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetOrientation">setOrientation</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetPaperSize">setPaperSize</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetPrintArea">setPrintArea</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetPrintAreaByColumnAndRow">setPrintAreaByColumnAndRow</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetRowsToRepeatAtTop">setRowsToRepeatAtTop</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetRowsToRepeatAtTopByStartAndEnd">setRowsToRepeatAtTopByStartAndEnd</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetScale">setScale</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetVerticalCentered">setVerticalCentered</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 107]<br /> +PHPExcel_Worksheet_PageSetup<br /><br /><p><ol><li><div class="src-line">&nbsp;<span class="src-id">Paper&nbsp;size&nbsp;taken&nbsp;from&nbsp;Office&nbsp;Open&nbsp;XML&nbsp;Part&nbsp;</span><span class="src-num">4&nbsp;</span>-&nbsp;<span class="src-id">Markup&nbsp;Language&nbsp;Reference</span><span class="src-sym">,&nbsp;</span><span class="src-id">page&nbsp;</span><span class="src-num">1988</span>:</div></li> +<li><div class="src-line">&nbsp;</div></li> +<li><div class="src-line">&nbsp;<span class="src-num">1&nbsp;</span>=&nbsp;<span class="src-id">Letter&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">8.5&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">11&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">2&nbsp;</span>=&nbsp;<span class="src-id">Letter&nbsp;small&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">8.5&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">11&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">3&nbsp;</span>=&nbsp;<span class="src-id">Tabloid&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">11&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">17&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">4&nbsp;</span>=&nbsp;<span class="src-id">Ledger&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">17&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">11&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">5&nbsp;</span>=&nbsp;<span class="src-id">Legal&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">8.5&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">14&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">6&nbsp;</span>=&nbsp;<span class="src-id">Statement&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">5.5&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">8.5&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">7&nbsp;</span>=&nbsp;<span class="src-id">Executive&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">7.25&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">10.5&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">8&nbsp;</span>=&nbsp;<span class="src-id">A3&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">297&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">420&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">9&nbsp;</span>=&nbsp;<span class="src-id">A4&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">210&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">297&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">10&nbsp;</span>=&nbsp;<span class="src-id">A4&nbsp;small&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">210&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">297&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">11&nbsp;</span>=&nbsp;<span class="src-id">A5&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">148&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">210&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">12&nbsp;</span>=&nbsp;<span class="src-id">B4&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">250&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">353&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">13&nbsp;</span>=&nbsp;<span class="src-id">B5&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">176&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">250&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">14&nbsp;</span>=&nbsp;<span class="src-id">Folio&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">8.5&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">13&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">15&nbsp;</span>=&nbsp;<span class="src-id">Quarto&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">215&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">275&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">16&nbsp;</span>=&nbsp;<span class="src-id">Standard&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">10&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">14&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">17&nbsp;</span>=&nbsp;<span class="src-id">Standard&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">11&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">17&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">18&nbsp;</span>=&nbsp;<span class="src-id">Note&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">8.5&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">11&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">19&nbsp;</span>=&nbsp;<span class="src-comm">#9&nbsp;envelope&nbsp;(3.875&nbsp;in.&nbsp;by&nbsp;8.875&nbsp;in.)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">20&nbsp;</span>=&nbsp;<span class="src-comm">#10&nbsp;envelope&nbsp;(4.125&nbsp;in.&nbsp;by&nbsp;9.5&nbsp;in.)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">21&nbsp;</span>=&nbsp;<span class="src-comm">#11&nbsp;envelope&nbsp;(4.5&nbsp;in.&nbsp;by&nbsp;10.375&nbsp;in.)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">22&nbsp;</span>=&nbsp;<span class="src-comm">#12&nbsp;envelope&nbsp;(4.75&nbsp;in.&nbsp;by&nbsp;11&nbsp;in.)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">23&nbsp;</span>=&nbsp;<span class="src-comm">#14&nbsp;envelope&nbsp;(5&nbsp;in.&nbsp;by&nbsp;11.5&nbsp;in.)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">24&nbsp;</span>=&nbsp;<span class="src-id">C&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">17&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">22&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">25&nbsp;</span>=&nbsp;<span class="src-id">D&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">22&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">34&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">26&nbsp;</span>=&nbsp;<span class="src-id">E&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">34&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">44&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">27&nbsp;</span>=&nbsp;<span class="src-id">DL&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">110&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">220&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">28&nbsp;</span>=&nbsp;<span class="src-id">C5&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">162&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">229&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">29&nbsp;</span>=&nbsp;<span class="src-id">C3&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">324&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">458&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">30&nbsp;</span>=&nbsp;<span class="src-id">C4&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">229&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">324&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">31&nbsp;</span>=&nbsp;<span class="src-id">C6&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">114&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">162&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">32&nbsp;</span>=&nbsp;<span class="src-id">C65&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">114&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">229&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">33&nbsp;</span>=&nbsp;<span class="src-id">B4&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">250&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">353&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">34&nbsp;</span>=&nbsp;<span class="src-id">B5&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">176&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">250&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">35&nbsp;</span>=&nbsp;<span class="src-id">B6&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">176&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">125&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">36&nbsp;</span>=&nbsp;<span class="src-id">Italy&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">110&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">230&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">37&nbsp;</span>=&nbsp;<span class="src-id">Monarch&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">3.875&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">7.5&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span>.</div></li> +<li><div class="src-line">&nbsp;<span class="src-num">38&nbsp;</span>=&nbsp;<span class="src-num">6&nbsp;3</span>/<span class="src-num">4&nbsp;</span><span class="src-id">envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">3.625&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">6.5&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">39&nbsp;</span>=&nbsp;<span class="src-id">US&nbsp;standard&nbsp;fanfold&nbsp;</span><span class="src-sym">(</span><span class="src-num">14.875&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">11&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">40&nbsp;</span>=&nbsp;<span class="src-id">German&nbsp;standard&nbsp;fanfold&nbsp;</span><span class="src-sym">(</span><span class="src-num">8.5&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">12&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">41&nbsp;</span>=&nbsp;<span class="src-id">German&nbsp;legal&nbsp;fanfold&nbsp;</span><span class="src-sym">(</span><span class="src-num">8.5&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">13&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">42&nbsp;</span>=&nbsp;<span class="src-id">ISO&nbsp;B4&nbsp;</span><span class="src-sym">(</span><span class="src-num">250&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">353&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">43&nbsp;</span>=&nbsp;<span class="src-id">Japanese&nbsp;double&nbsp;postcard&nbsp;</span><span class="src-sym">(</span><span class="src-num">200&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">148&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">44&nbsp;</span>=&nbsp;<span class="src-id">Standard&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">9&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">11&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">45&nbsp;</span>=&nbsp;<span class="src-id">Standard&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">10&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">11&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">46&nbsp;</span>=&nbsp;<span class="src-id">Standard&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">15&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">11&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">47&nbsp;</span>=&nbsp;<span class="src-id">Invite&nbsp;envelope&nbsp;</span><span class="src-sym">(</span><span class="src-num">220&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">220&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">50&nbsp;</span>=&nbsp;<span class="src-id">Letter&nbsp;extra&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">9.275&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">12&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">51&nbsp;</span>=&nbsp;<span class="src-id">Legal&nbsp;extra&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">9.275&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">15&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">52&nbsp;</span>=&nbsp;<span class="src-id">Tabloid&nbsp;extra&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">11.69&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">18&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">53&nbsp;</span>=&nbsp;<span class="src-id">A4&nbsp;extra&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">236&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">322&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">54&nbsp;</span>=&nbsp;<span class="src-id">Letter&nbsp;transverse&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">8.275&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">11&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">55&nbsp;</span>=&nbsp;<span class="src-id">A4&nbsp;transverse&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">210&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">297&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">56&nbsp;</span>=&nbsp;<span class="src-id">Letter&nbsp;extra&nbsp;transverse&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">9.275&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">12&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">57&nbsp;</span>=&nbsp;<span class="src-id">SuperA</span>/<span class="src-id">SuperA</span>/<span class="src-id">A4&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">227&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">356&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">58&nbsp;</span>=&nbsp;<span class="src-id">SuperB</span>/<span class="src-id">SuperB</span>/<span class="src-id">A3&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">305&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">487&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">59&nbsp;</span>=&nbsp;<span class="src-id">Letter&nbsp;plus&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">8.5&nbsp;</span><span class="src-id">in</span>.&nbsp;<span class="src-id">by&nbsp;</span><span class="src-num">12.69&nbsp;</span><span class="src-id">in</span>.<span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">60&nbsp;</span>=&nbsp;<span class="src-id">A4&nbsp;plus&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">210&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">330&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">61&nbsp;</span>=&nbsp;<span class="src-id">A5&nbsp;transverse&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">148&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">210&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">62&nbsp;</span>=&nbsp;<span class="src-id">JIS&nbsp;B5&nbsp;transverse&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">182&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">257&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">63&nbsp;</span>=&nbsp;<span class="src-id">A3&nbsp;extra&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">322&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">445&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">64&nbsp;</span>=&nbsp;<span class="src-id">A5&nbsp;extra&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">174&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">235&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">65&nbsp;</span>=&nbsp;<span class="src-id">ISO&nbsp;B5&nbsp;extra&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">201&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">276&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">66&nbsp;</span>=&nbsp;<span class="src-id">A2&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">420&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">594&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">67&nbsp;</span>=&nbsp;<span class="src-id">A3&nbsp;transverse&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">297&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">420&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +<li><div class="src-line">&nbsp;<span class="src-num">68&nbsp;</span>=&nbsp;<span class="src-id">A3&nbsp;extra&nbsp;transverse&nbsp;paper&nbsp;</span><span class="src-sym">(</span><span class="src-num">322&nbsp;</span><span class="src-id">mm&nbsp;by&nbsp;</span><span class="src-num">445&nbsp;</span><span class="src-id">mm</span><span class="src-sym">)</span></div></li> +</ol></p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodaddPrintArea"></a> + <h3>method addPrintArea <span class="smalllinenumber">[line 703]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> addPrintArea( +string +$value, [int +$index = -1])</code> + </td></tr></table> + </td></tr></table><br /> + + Add a new print area (e.g. 'A1:D10' or 'A1:D10,G5:M20') to the list of print areas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>Identifier for a specific print area range allowing several ranges to be set A positive index will insert after that indexed entry in the print areas list, while a negative index will insert before the indexed entry. Specifying an index value of 0, will always append the new print range at the end of the list. Print areas are numbered from 1</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddPrintAreaByColumnAndRow"></a> + <h3>method addPrintAreaByColumnAndRow <span class="smalllinenumber">[line 751]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> addPrintAreaByColumnAndRow( +int +$column1, int +$row1, int +$column2, int +$row2, [int +$index = -1])</code> + </td></tr></table> + </td></tr></table><br /> + + Add a new print area to the list of print areas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$column1</b>&nbsp;&nbsp;</td> + <td>Start Column for the print area</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$row1</b>&nbsp;&nbsp;</td> + <td>Start Row for the print area</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$column2</b>&nbsp;&nbsp;</td> + <td>End Column for the print area</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$row2</b>&nbsp;&nbsp;</td> + <td>End Row for the print area</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>Identifier for a specific print area range allowing several ranges to be set A positive index will insert after that indexed entry in the print areas list, while a negative index will insert before the indexed entry. Specifying an index value of 0, will always append the new print range at the end of the list. Print areas are numbered from 1</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodclearPrintArea"></a> + <h3>method clearPrintArea <span class="smalllinenumber">[line 611]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> clearPrintArea( +[int +$index = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Clear a print area<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>Identifier for a specific print area range if several ranges have been set Default behaviour, or an index value of 0, will clear all print ranges that are set Otherwise, the range identified by the value of $index will be removed from the series Print areas are numbered from 1</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColumnsToRepeatAtLeft"></a> + <h3>method getColumnsToRepeatAtLeft <span class="smalllinenumber">[line 446]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getColumnsToRepeatAtLeft( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Columns to repeat at left<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Containing start column and end column, empty array if option unset</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFirstPageNumber"></a> + <h3>method getFirstPageNumber <span class="smalllinenumber">[line 761]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getFirstPageNumber( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get first page number<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFitToHeight"></a> + <h3>method getFitToHeight <span class="smalllinenumber">[line 383]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int? getFitToHeight( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Fit To Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFitToPage"></a> + <h3>method getFitToPage <span class="smalllinenumber">[line 363]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getFitToPage( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Fit To Page<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFitToWidth"></a> + <h3>method getFitToWidth <span class="smalllinenumber">[line 407]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int? getFitToWidth( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Fit To Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHorizontalCentered"></a> + <h3>method getHorizontalCentered <span class="smalllinenumber">[line 529]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool getHorizontalCentered( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get center page horizontally<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOrientation"></a> + <h3>method getOrientation <span class="smalllinenumber">[line 309]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getOrientation( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Orientation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPaperSize"></a> + <h3>method getPaperSize <span class="smalllinenumber">[line 289]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getPaperSize( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Paper Size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPrintArea"></a> + <h3>method getPrintArea <span class="smalllinenumber">[line 574]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPrintArea( +[int +$index = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Get print area<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>Identifier for a specific print area range if several ranges have been set Default behaviour, or a index value of 0, will return all ranges as a comma-separated string Otherwise, the specific range identified by the value of $index will be returned Print areas are numbered from 1</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRowsToRepeatAtTop"></a> + <h3>method getRowsToRepeatAtTop <span class="smalllinenumber">[line 495]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getRowsToRepeatAtTop( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Rows to repeat at top<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Containing start column and end column, empty array if option unset</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetScale"></a> + <h3>method getScale <span class="smalllinenumber">[line 329]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int? getScale( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Scale<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetVerticalCentered"></a> + <h3>method getVerticalCentered <span class="smalllinenumber">[line 549]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool getVerticalCentered( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get center page vertically<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisColumnsToRepeatAtLeftSet"></a> + <h3>method isColumnsToRepeatAtLeftSet <span class="smalllinenumber">[line 431]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isColumnsToRepeatAtLeftSet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is Columns to repeat at left set?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisPrintAreaSet"></a> + <h3>method isPrintAreaSet <span class="smalllinenumber">[line 594]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isPrintAreaSet( +[int +$index = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Is print area set?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>Identifier for a specific print area range if several ranges have been set Default behaviour, or an index value of 0, will identify whether any print range is set Otherwise, existence of the range identified by the value of $index will be returned Print areas are numbered from 1</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisRowsToRepeatAtTopSet"></a> + <h3>method isRowsToRepeatAtTopSet <span class="smalllinenumber">[line 480]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isRowsToRepeatAtTopSet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is Rows to repeat at top set?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 280]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_PageSetup __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_PageSetup<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodresetFirstPageNumber"></a> + <h3>method resetFirstPageNumber <span class="smalllinenumber">[line 781]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> resetFirstPageNumber( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Reset first page number<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetColumnsToRepeatAtLeft"></a> + <h3>method setColumnsToRepeatAtLeft <span class="smalllinenumber">[line 456]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setColumnsToRepeatAtLeft( +[array +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Columns to repeat at left<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Containing start column and end column, empty array if option unset</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetColumnsToRepeatAtLeftByStartAndEnd"></a> + <h3>method setColumnsToRepeatAtLeftByStartAndEnd <span class="smalllinenumber">[line 470]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setColumnsToRepeatAtLeftByStartAndEnd( +[string +$pStart = 'A'], [string +$pEnd = 'A'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Columns to repeat at left by start and end<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pStart</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pEnd</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFirstPageNumber"></a> + <h3>method setFirstPageNumber <span class="smalllinenumber">[line 771]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a> setFirstPageNumber( +[int +$value = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set first page number<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFitToHeight"></a> + <h3>method setFitToHeight <span class="smalllinenumber">[line 394]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setFitToHeight( +[int? +$pValue = 1], [boolean +$pUpdate = TRUE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Fit To Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int?&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pUpdate</b>&nbsp;&nbsp;</td> + <td>Update fitToPage so it applies rather than scaling</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFitToPage"></a> + <h3>method setFitToPage <span class="smalllinenumber">[line 373]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setFitToPage( +[boolean +$pValue = TRUE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Fit To Page<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFitToWidth"></a> + <h3>method setFitToWidth <span class="smalllinenumber">[line 418]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setFitToWidth( +[int? +$pValue = 1], [boolean +$pUpdate = TRUE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Fit To Width<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int?&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pUpdate</b>&nbsp;&nbsp;</td> + <td>Update fitToPage so it applies rather than scaling</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetHorizontalCentered"></a> + <h3>method setHorizontalCentered <span class="smalllinenumber">[line 539]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setHorizontalCentered( +[bool +$value = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set center page horizontally<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOrientation"></a> + <h3>method setOrientation <span class="smalllinenumber">[line 319]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setOrientation( +[string +$pValue = PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Orientation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPaperSize"></a> + <h3>method setPaperSize <span class="smalllinenumber">[line 299]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setPaperSize( +[int +$pValue = PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Paper Size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPrintArea"></a> + <h3>method setPrintArea <span class="smalllinenumber">[line 645]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setPrintArea( +string +$value, [int +$index = 0], [string +$method = self::SETPRINTRANGE_OVERWRITE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set print area. e.g. 'A1:D10' or 'A1:D10,G5:M20'<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>Identifier for a specific print area range allowing several ranges to be set When the method is &quot;O&quot;verwrite, then a positive integer index will overwrite that indexed entry in the print areas list; a negative index value will identify which entry to overwrite working bacward through the print area to the list, with the last entry as -1. Specifying an index value of 0, will overwrite <strong>all</strong> existing print ranges. When the method is &quot;I&quot;nsert, then a positive index will insert after that indexed entry in the print areas list, while a negative index will insert before the indexed entry. Specifying an index value of 0, will always append the new print range at the end of the list. Print areas are numbered from 1</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$method</b>&nbsp;&nbsp;</td> + <td>Determines the method used when setting multiple print areas Default behaviour, or the &quot;O&quot; method, overwrites existing print area The &quot;I&quot; method, inserts the new print area before any specified index, or at the end of the list</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPrintAreaByColumnAndRow"></a> + <h3>method setPrintAreaByColumnAndRow <span class="smalllinenumber">[line 730]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setPrintAreaByColumnAndRow( +int +$column1, int +$row1, int +$column2, int +$row2, [int +$index = 0], [string +$method = self::SETPRINTRANGE_OVERWRITE])</code> + </td></tr></table> + </td></tr></table><br /> + + Set print area<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$column1</b>&nbsp;&nbsp;</td> + <td>Column 1</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$row1</b>&nbsp;&nbsp;</td> + <td>Row 1</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$column2</b>&nbsp;&nbsp;</td> + <td>Column 2</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$row2</b>&nbsp;&nbsp;</td> + <td>Row 2</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>Identifier for a specific print area range allowing several ranges to be set When the method is &quot;O&quot;verwrite, then a positive integer index will overwrite that indexed entry in the print areas list; a negative index value will identify which entry to overwrite working bacward through the print area to the list, with the last entry as -1. Specifying an index value of 0, will overwrite <strong>all</strong> existing print ranges. When the method is &quot;I&quot;nsert, then a positive index will insert after that indexed entry in the print areas list, while a negative index will insert before the indexed entry. Specifying an index value of 0, will always append the new print range at the end of the list. Print areas are numbered from 1</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$method</b>&nbsp;&nbsp;</td> + <td>Determines the method used when setting multiple print areas Default behaviour, or the &quot;O&quot; method, overwrites existing print area The &quot;I&quot; method, inserts the new print area before any specified index, or at the end of the list</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRowsToRepeatAtTop"></a> + <h3>method setRowsToRepeatAtTop <span class="smalllinenumber">[line 505]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setRowsToRepeatAtTop( +[array +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Rows to repeat at top<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Containing start column and end column, empty array if option unset</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRowsToRepeatAtTopByStartAndEnd"></a> + <h3>method setRowsToRepeatAtTopByStartAndEnd <span class="smalllinenumber">[line 519]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setRowsToRepeatAtTopByStartAndEnd( +[int +$pStart = 1], [int +$pEnd = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Rows to repeat at top by start and end<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pStart</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pEnd</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetScale"></a> + <h3>method setScale <span class="smalllinenumber">[line 344]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setScale( +[int? +$pValue = 100], [boolean +$pUpdate = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Scale<br /><br /><p>Print scaling. Valid values range from 10 to 400 This setting is overridden when fitToWidth and/or fitToHeight are in use</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int?&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pUpdate</b>&nbsp;&nbsp;</td> + <td>Update fitToPage so scaling applies rather than fitToHeight / fitToWidth</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetVerticalCentered"></a> + <h3>method setVerticalCentered <span class="smalllinenumber">[line 559]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a> setVerticalCentered( +[bool +$value = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set center page vertically<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 788]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constORIENTATION_DEFAULT"></a> + <p></p> + <h4>ORIENTATION_DEFAULT = <span class="value">&nbsp;'default'</span></h4> + <p>[line 178]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constORIENTATION_LANDSCAPE"></a> + <p></p> + <h4>ORIENTATION_LANDSCAPE = <span class="value">&nbsp;'landscape'</span></h4> + <p>[line 179]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constORIENTATION_PORTRAIT"></a> + <p></p> + <h4>ORIENTATION_PORTRAIT = <span class="value">&nbsp;'portrait'</span></h4> + <p>[line 180]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_6_3_4_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_6_3_4_ENVELOPE = <span class="value">&nbsp;38</span></h4> + <p>[line 147]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A2_PAPER"></a> + <p></p> + <h4>PAPERSIZE_A2_PAPER = <span class="value">&nbsp;64</span></h4> + <p>[line 173]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A3"></a> + <p></p> + <h4>PAPERSIZE_A3 = <span class="value">&nbsp;8</span></h4> + <p>[line 117]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A3_EXTRA_PAPER"></a> + <p></p> + <h4>PAPERSIZE_A3_EXTRA_PAPER = <span class="value">&nbsp;61</span></h4> + <p>[line 170]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER"></a> + <p></p> + <h4>PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER = <span class="value">&nbsp;66</span></h4> + <p>[line 175]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A3_TRANSVERSE_PAPER"></a> + <p></p> + <h4>PAPERSIZE_A3_TRANSVERSE_PAPER = <span class="value">&nbsp;65</span></h4> + <p>[line 174]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A4"></a> + <p></p> + <h4>PAPERSIZE_A4 = <span class="value">&nbsp;9</span></h4> + <p>[line 118]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A4_EXTRA_PAPER"></a> + <p></p> + <h4>PAPERSIZE_A4_EXTRA_PAPER = <span class="value">&nbsp;51</span></h4> + <p>[line 160]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A4_PLUS_PAPER"></a> + <p></p> + <h4>PAPERSIZE_A4_PLUS_PAPER = <span class="value">&nbsp;58</span></h4> + <p>[line 167]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A4_SMALL"></a> + <p></p> + <h4>PAPERSIZE_A4_SMALL = <span class="value">&nbsp;10</span></h4> + <p>[line 119]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A4_TRANSVERSE_PAPER"></a> + <p></p> + <h4>PAPERSIZE_A4_TRANSVERSE_PAPER = <span class="value">&nbsp;53</span></h4> + <p>[line 162]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A5"></a> + <p></p> + <h4>PAPERSIZE_A5 = <span class="value">&nbsp;11</span></h4> + <p>[line 120]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A5_EXTRA_PAPER"></a> + <p></p> + <h4>PAPERSIZE_A5_EXTRA_PAPER = <span class="value">&nbsp;62</span></h4> + <p>[line 171]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_A5_TRANSVERSE_PAPER"></a> + <p></p> + <h4>PAPERSIZE_A5_TRANSVERSE_PAPER = <span class="value">&nbsp;59</span></h4> + <p>[line 168]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_B4"></a> + <p></p> + <h4>PAPERSIZE_B4 = <span class="value">&nbsp;12</span></h4> + <p>[line 121]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_B4_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_B4_ENVELOPE = <span class="value">&nbsp;33</span></h4> + <p>[line 142]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_B5"></a> + <p></p> + <h4>PAPERSIZE_B5 = <span class="value">&nbsp;13</span></h4> + <p>[line 122]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_B5_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_B5_ENVELOPE = <span class="value">&nbsp;34</span></h4> + <p>[line 143]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_B6_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_B6_ENVELOPE = <span class="value">&nbsp;35</span></h4> + <p>[line 144]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_C"></a> + <p></p> + <h4>PAPERSIZE_C = <span class="value">&nbsp;24</span></h4> + <p>[line 133]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_C3_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_C3_ENVELOPE = <span class="value">&nbsp;29</span></h4> + <p>[line 138]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_C4_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_C4_ENVELOPE = <span class="value">&nbsp;30</span></h4> + <p>[line 139]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_C5_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_C5_ENVELOPE = <span class="value">&nbsp;28</span></h4> + <p>[line 137]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_C6_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_C6_ENVELOPE = <span class="value">&nbsp;31</span></h4> + <p>[line 140]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_C65_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_C65_ENVELOPE = <span class="value">&nbsp;32</span></h4> + <p>[line 141]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_D"></a> + <p></p> + <h4>PAPERSIZE_D = <span class="value">&nbsp;25</span></h4> + <p>[line 134]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_DL_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_DL_ENVELOPE = <span class="value">&nbsp;27</span></h4> + <p>[line 136]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_E"></a> + <p></p> + <h4>PAPERSIZE_E = <span class="value">&nbsp;26</span></h4> + <p>[line 135]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_EXECUTIVE"></a> + <p></p> + <h4>PAPERSIZE_EXECUTIVE = <span class="value">&nbsp;7</span></h4> + <p>[line 116]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_FOLIO"></a> + <p></p> + <h4>PAPERSIZE_FOLIO = <span class="value">&nbsp;14</span></h4> + <p>[line 123]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_GERMAN_LEGAL_FANFOLD"></a> + <p></p> + <h4>PAPERSIZE_GERMAN_LEGAL_FANFOLD = <span class="value">&nbsp;41</span></h4> + <p>[line 150]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_GERMAN_STANDARD_FANFOLD"></a> + <p></p> + <h4>PAPERSIZE_GERMAN_STANDARD_FANFOLD = <span class="value">&nbsp;40</span></h4> + <p>[line 149]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_INVITE_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_INVITE_ENVELOPE = <span class="value">&nbsp;47</span></h4> + <p>[line 156]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_ISO_B4"></a> + <p></p> + <h4>PAPERSIZE_ISO_B4 = <span class="value">&nbsp;42</span></h4> + <p>[line 151]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_ISO_B5_EXTRA_PAPER"></a> + <p></p> + <h4>PAPERSIZE_ISO_B5_EXTRA_PAPER = <span class="value">&nbsp;63</span></h4> + <p>[line 172]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_ITALY_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_ITALY_ENVELOPE = <span class="value">&nbsp;36</span></h4> + <p>[line 145]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_JAPANESE_DOUBLE_POSTCARD"></a> + <p></p> + <h4>PAPERSIZE_JAPANESE_DOUBLE_POSTCARD = <span class="value">&nbsp;43</span></h4> + <p>[line 152]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_JIS_B5_TRANSVERSE_PAPER"></a> + <p></p> + <h4>PAPERSIZE_JIS_B5_TRANSVERSE_PAPER = <span class="value">&nbsp;60</span></h4> + <p>[line 169]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_LEDGER"></a> + <p></p> + <h4>PAPERSIZE_LEDGER = <span class="value">&nbsp;4</span></h4> + <p>[line 113]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_LEGAL"></a> + <p></p> + <h4>PAPERSIZE_LEGAL = <span class="value">&nbsp;5</span></h4> + <p>[line 114]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_LEGAL_EXTRA_PAPER"></a> + <p></p> + <h4>PAPERSIZE_LEGAL_EXTRA_PAPER = <span class="value">&nbsp;49</span></h4> + <p>[line 158]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_LETTER"></a> + <p></p> + <h4>PAPERSIZE_LETTER = <span class="value">&nbsp;1</span></h4> + <p>[line 110]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_LETTER_EXTRA_PAPER"></a> + <p></p> + <h4>PAPERSIZE_LETTER_EXTRA_PAPER = <span class="value">&nbsp;48</span></h4> + <p>[line 157]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER"></a> + <p></p> + <h4>PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER = <span class="value">&nbsp;54</span></h4> + <p>[line 163]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_LETTER_PLUS_PAPER"></a> + <p></p> + <h4>PAPERSIZE_LETTER_PLUS_PAPER = <span class="value">&nbsp;57</span></h4> + <p>[line 166]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_LETTER_SMALL"></a> + <p></p> + <h4>PAPERSIZE_LETTER_SMALL = <span class="value">&nbsp;2</span></h4> + <p>[line 111]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_LETTER_TRANSVERSE_PAPER"></a> + <p></p> + <h4>PAPERSIZE_LETTER_TRANSVERSE_PAPER = <span class="value">&nbsp;52</span></h4> + <p>[line 161]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_MONARCH_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_MONARCH_ENVELOPE = <span class="value">&nbsp;37</span></h4> + <p>[line 146]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_NO9_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_NO9_ENVELOPE = <span class="value">&nbsp;19</span></h4> + <p>[line 128]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_NO10_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_NO10_ENVELOPE = <span class="value">&nbsp;20</span></h4> + <p>[line 129]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_NO11_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_NO11_ENVELOPE = <span class="value">&nbsp;21</span></h4> + <p>[line 130]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_NO12_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_NO12_ENVELOPE = <span class="value">&nbsp;22</span></h4> + <p>[line 131]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_NO14_ENVELOPE"></a> + <p></p> + <h4>PAPERSIZE_NO14_ENVELOPE = <span class="value">&nbsp;23</span></h4> + <p>[line 132]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_NOTE"></a> + <p></p> + <h4>PAPERSIZE_NOTE = <span class="value">&nbsp;18</span></h4> + <p>[line 127]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_QUARTO"></a> + <p></p> + <h4>PAPERSIZE_QUARTO = <span class="value">&nbsp;15</span></h4> + <p>[line 124]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_STANDARD_1"></a> + <p></p> + <h4>PAPERSIZE_STANDARD_1 = <span class="value">&nbsp;16</span></h4> + <p>[line 125]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_STANDARD_2"></a> + <p></p> + <h4>PAPERSIZE_STANDARD_2 = <span class="value">&nbsp;17</span></h4> + <p>[line 126]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_STANDARD_PAPER_1"></a> + <p></p> + <h4>PAPERSIZE_STANDARD_PAPER_1 = <span class="value">&nbsp;44</span></h4> + <p>[line 153]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_STANDARD_PAPER_2"></a> + <p></p> + <h4>PAPERSIZE_STANDARD_PAPER_2 = <span class="value">&nbsp;45</span></h4> + <p>[line 154]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_STANDARD_PAPER_3"></a> + <p></p> + <h4>PAPERSIZE_STANDARD_PAPER_3 = <span class="value">&nbsp;46</span></h4> + <p>[line 155]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_STATEMENT"></a> + <p></p> + <h4>PAPERSIZE_STATEMENT = <span class="value">&nbsp;6</span></h4> + <p>[line 115]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_SUPERA_SUPERA_A4_PAPER"></a> + <p></p> + <h4>PAPERSIZE_SUPERA_SUPERA_A4_PAPER = <span class="value">&nbsp;55</span></h4> + <p>[line 164]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_SUPERB_SUPERB_A3_PAPER"></a> + <p></p> + <h4>PAPERSIZE_SUPERB_SUPERB_A3_PAPER = <span class="value">&nbsp;56</span></h4> + <p>[line 165]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_TABLOID"></a> + <p></p> + <h4>PAPERSIZE_TABLOID = <span class="value">&nbsp;3</span></h4> + <p>[line 112]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_TABLOID_EXTRA_PAPER"></a> + <p></p> + <h4>PAPERSIZE_TABLOID_EXTRA_PAPER = <span class="value">&nbsp;50</span></h4> + <p>[line 159]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constPAPERSIZE_US_STANDARD_FANFOLD"></a> + <p></p> + <h4>PAPERSIZE_US_STANDARD_FANFOLD = <span class="value">&nbsp;39</span></h4> + <p>[line 148]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSETPRINTRANGE_INSERT"></a> + <p></p> + <h4>SETPRINTRANGE_INSERT = <span class="value">&nbsp;'I'</span></h4> + <p>[line 184]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSETPRINTRANGE_OVERWRITE"></a> + <p></p> + <h4>SETPRINTRANGE_OVERWRITE = <span class="value">&nbsp;'O'</span></h4> + <p>[line 183]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:47 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html new file mode 100644 index 0000000..a1c56fb --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html @@ -0,0 +1,1043 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_Protection</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_Protection</h1> +Source Location: /PHPExcel/Worksheet/Protection.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_Protection</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetAutoFilter">getAutoFilter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetDeleteColumns">getDeleteColumns</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetDeleteRows">getDeleteRows</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetFormatCells">getFormatCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetFormatColumns">getFormatColumns</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetFormatRows">getFormatRows</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetInsertColumns">getInsertColumns</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetInsertHyperlinks">getInsertHyperlinks</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetInsertRows">getInsertRows</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetObjects">getObjects</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetPassword">getPassword</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetPivotTables">getPivotTables</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetScenarios">getScenarios</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSelectLockedCells">getSelectLockedCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSelectUnlockedCells">getSelectUnlockedCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSheet">getSheet</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSort">getSort</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodisProtectionEnabled">isProtectionEnabled</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetAutoFilter">setAutoFilter</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetDeleteColumns">setDeleteColumns</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetDeleteRows">setDeleteRows</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetFormatCells">setFormatCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetFormatColumns">setFormatColumns</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetFormatRows">setFormatRows</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetInsertColumns">setInsertColumns</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetInsertHyperlinks">setInsertHyperlinks</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetInsertRows">setInsertRows</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetObjects">setObjects</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetPassword">setPassword</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetPivotTables">setPivotTables</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetScenarios">setScenarios</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSelectLockedCells">setSelectLockedCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSelectUnlockedCells">setSelectUnlockedCells</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSheet">setSheet</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSort">setSort</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_Protection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 160]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_Protection __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_Protection<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAutoFilter"></a> + <h3>method getAutoFilter <span class="smalllinenumber">[line 453]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getAutoFilter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get AutoFilter<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDeleteColumns"></a> + <h3>method getDeleteColumns <span class="smalllinenumber">[line 373]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getDeleteColumns( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get DeleteColumns<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDeleteRows"></a> + <h3>method getDeleteRows <span class="smalllinenumber">[line 393]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getDeleteRows( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get DeleteRows<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFormatCells"></a> + <h3>method getFormatCells <span class="smalllinenumber">[line 253]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getFormatCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get FormatCells<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFormatColumns"></a> + <h3>method getFormatColumns <span class="smalllinenumber">[line 273]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getFormatColumns( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get FormatColumns<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFormatRows"></a> + <h3>method getFormatRows <span class="smalllinenumber">[line 293]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getFormatRows( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get FormatRows<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetInsertColumns"></a> + <h3>method getInsertColumns <span class="smalllinenumber">[line 313]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getInsertColumns( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get InsertColumns<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetInsertHyperlinks"></a> + <h3>method getInsertHyperlinks <span class="smalllinenumber">[line 353]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getInsertHyperlinks( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get InsertHyperlinks<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetInsertRows"></a> + <h3>method getInsertRows <span class="smalllinenumber">[line 333]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getInsertRows( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get InsertRows<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetObjects"></a> + <h3>method getObjects <span class="smalllinenumber">[line 213]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getObjects( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Objects<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPassword"></a> + <h3>method getPassword <span class="smalllinenumber">[line 513]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPassword( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Password (hashed)<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPivotTables"></a> + <h3>method getPivotTables <span class="smalllinenumber">[line 473]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getPivotTables( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get PivotTables<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetScenarios"></a> + <h3>method getScenarios <span class="smalllinenumber">[line 233]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getScenarios( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Scenarios<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectLockedCells"></a> + <h3>method getSelectLockedCells <span class="smalllinenumber">[line 413]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getSelectLockedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get SelectLockedCells<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSelectUnlockedCells"></a> + <h3>method getSelectUnlockedCells <span class="smalllinenumber">[line 493]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getSelectUnlockedCells( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get SelectUnlockedCells<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheet"></a> + <h3>method getSheet <span class="smalllinenumber">[line 193]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getSheet( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Sheet<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSort"></a> + <h3>method getSort <span class="smalllinenumber">[line 433]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getSort( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Sort<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodisProtectionEnabled"></a> + <h3>method isProtectionEnabled <span class="smalllinenumber">[line 169]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean isProtectionEnabled( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Is some sort of protection enabled?<br /><br /><br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAutoFilter"></a> + <h3>method setAutoFilter <span class="smalllinenumber">[line 463]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setAutoFilter( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set AutoFilter<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDeleteColumns"></a> + <h3>method setDeleteColumns <span class="smalllinenumber">[line 383]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setDeleteColumns( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set DeleteColumns<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDeleteRows"></a> + <h3>method setDeleteRows <span class="smalllinenumber">[line 403]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setDeleteRows( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set DeleteRows<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFormatCells"></a> + <h3>method setFormatCells <span class="smalllinenumber">[line 263]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setFormatCells( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set FormatCells<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFormatColumns"></a> + <h3>method setFormatColumns <span class="smalllinenumber">[line 283]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setFormatColumns( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set FormatColumns<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFormatRows"></a> + <h3>method setFormatRows <span class="smalllinenumber">[line 303]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setFormatRows( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set FormatRows<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetInsertColumns"></a> + <h3>method setInsertColumns <span class="smalllinenumber">[line 323]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setInsertColumns( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set InsertColumns<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetInsertHyperlinks"></a> + <h3>method setInsertHyperlinks <span class="smalllinenumber">[line 363]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setInsertHyperlinks( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set InsertHyperlinks<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetInsertRows"></a> + <h3>method setInsertRows <span class="smalllinenumber">[line 343]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setInsertRows( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set InsertRows<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetObjects"></a> + <h3>method setObjects <span class="smalllinenumber">[line 223]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setObjects( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Objects<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPassword"></a> + <h3>method setPassword <span class="smalllinenumber">[line 524]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setPassword( +[string +$pValue = ''], [boolean +$pAlreadyHashed = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Password<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pAlreadyHashed</b>&nbsp;&nbsp;</td> + <td>If the password has already been hashed, set this to true</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPivotTables"></a> + <h3>method setPivotTables <span class="smalllinenumber">[line 483]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setPivotTables( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set PivotTables<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetScenarios"></a> + <h3>method setScenarios <span class="smalllinenumber">[line 243]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setScenarios( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Scenarios<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSelectLockedCells"></a> + <h3>method setSelectLockedCells <span class="smalllinenumber">[line 423]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setSelectLockedCells( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set SelectLockedCells<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSelectUnlockedCells"></a> + <h3>method setSelectUnlockedCells <span class="smalllinenumber">[line 503]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setSelectUnlockedCells( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set SelectUnlockedCells<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSheet"></a> + <h3>method setSheet <span class="smalllinenumber">[line 203]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setSheet( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Sheet<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSort"></a> + <h3>method setSort <span class="smalllinenumber">[line 443]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a> setSort( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Sort<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 535]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:29 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html new file mode 100644 index 0000000..88e03e1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html @@ -0,0 +1,324 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_Row</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_Row</h1> +Source Location: /PHPExcel/Worksheet/Row.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_Row</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#methodgetCellIterator">getCellIterator</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#methodgetRowIndex">getRowIndex</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 38]<br /> +PHPExcel_Worksheet_Row<br /><br /><p>Represents a row in PHPExcel_Worksheet, used by PHPExcel_Worksheet_RowIterator</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 60]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_Row __construct( +[<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$parent = null], [int +$rowIndex = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new row<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$parent</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$rowIndex</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 69]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCellIterator"></a> + <h3>method getCellIterator <span class="smalllinenumber">[line 87]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a> getCellIterator( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get cell iterator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRowIndex"></a> + <h3>method getRowIndex <span class="smalllinenumber">[line 78]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getRowIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get row index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html new file mode 100644 index 0000000..5e27510 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html @@ -0,0 +1,710 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_RowDimension</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_RowDimension</h1> +Source Location: /PHPExcel/Worksheet/RowDimension.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_RowDimension</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetCollapsed">getCollapsed</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetOutlineLevel">getOutlineLevel</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetRowHeight">getRowHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetRowIndex">getRowIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetVisible">getVisible</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetXfIndex">getXfIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetzeroHeight">getzeroHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetCollapsed">setCollapsed</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetOutlineLevel">setOutlineLevel</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetRowHeight">setRowHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetRowIndex">setRowIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetVisible">setVisible</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetXfIndex">setXfIndex</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetzeroHeight">setzeroHeight</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_RowDimension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 94]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_RowDimension __construct( +[int +$pIndex = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_RowDimension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pIndex</b>&nbsp;&nbsp;</td> + <td>Numeric row index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetCollapsed"></a> + <h3>method getCollapsed <span class="smalllinenumber">[line 215]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool getCollapsed( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Collapsed<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOutlineLevel"></a> + <h3>method getOutlineLevel <span class="smalllinenumber">[line 188]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getOutlineLevel( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Outline Level<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRowHeight"></a> + <h3>method getRowHeight <span class="smalllinenumber">[line 128]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>double getRowHeight( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Row Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetRowIndex"></a> + <h3>method getRowIndex <span class="smalllinenumber">[line 108]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getRowIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Row Index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetVisible"></a> + <h3>method getVisible <span class="smalllinenumber">[line 168]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool getVisible( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Visible<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetXfIndex"></a> + <h3>method getXfIndex <span class="smalllinenumber">[line 235]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getXfIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get index to cellXf<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetzeroHeight"></a> + <h3>method getzeroHeight <span class="smalllinenumber">[line 148]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>bool getzeroHeight( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get ZeroHeight<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetCollapsed"></a> + <h3>method setCollapsed <span class="smalllinenumber">[line 225]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a> setCollapsed( +[bool +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Collapsed<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOutlineLevel"></a> + <h3>method setOutlineLevel <span class="smalllinenumber">[line 201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a> setOutlineLevel( +int +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Outline Level<br /><br /><p>Value must be between 0 and 7</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRowHeight"></a> + <h3>method setRowHeight <span class="smalllinenumber">[line 138]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a> setRowHeight( +[double +$pValue = -1])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Row Height<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">double&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRowIndex"></a> + <h3>method setRowIndex <span class="smalllinenumber">[line 118]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a> setRowIndex( +int +$pValue)</code> + </td></tr></table> + </td></tr></table><br /> + + Set Row Index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetVisible"></a> + <h3>method setVisible <span class="smalllinenumber">[line 178]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a> setVisible( +[bool +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Visible<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetXfIndex"></a> + <h3>method setXfIndex <span class="smalllinenumber">[line 246]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a> setXfIndex( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set index to cellXf<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetzeroHeight"></a> + <h3>method setzeroHeight <span class="smalllinenumber">[line 158]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a> setzeroHeight( +[bool +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set ZeroHeight<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 255]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html new file mode 100644 index 0000000..827b791 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html @@ -0,0 +1,532 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_RowIterator</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_RowIterator</h1> +Source Location: /PHPExcel/Worksheet/RowIterator.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_RowIterator</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li>Iterator (internal interface)</li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#method__destruct">__destruct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodcurrent">current</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodkey">key</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodnext">next</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodprev">prev</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodresetStart">resetStart</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodrewind">rewind</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodseek">seek</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodvalid">valid</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 38]<br /> +PHPExcel_Worksheet_RowIterator<br /><br /><p>Used to iterate rows in a PHPExcel_Worksheet</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 68]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_RowIterator __construct( +[<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$subject = null], [integer +$startRow = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new row iterator<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$subject</b>&nbsp;&nbsp;</td> + <td>The worksheet to iterate over</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$startRow</b>&nbsp;&nbsp;</td> + <td>The row number at which to start iterating</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__destruct"></a> + <h3>destructor __destruct <span class="smalllinenumber">[line 77]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __destruct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Destructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodcurrent"></a> + <h3>method current <span class="smalllinenumber">[line 112]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a> current( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the current row in this worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::current</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodkey"></a> + <h3>method key <span class="smalllinenumber">[line 121]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int key( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Return the current iterator key<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::key</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodnext"></a> + <h3>method next <span class="smalllinenumber">[line 128]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void next( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the iterator to its next value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::next</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprev"></a> + <h3>method prev <span class="smalllinenumber">[line 135]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void prev( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the iterator to its previous value<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodresetStart"></a> + <h3>method resetStart <span class="smalllinenumber">[line 86]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void resetStart( +[integer +$startRow = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + (Re)Set the start row and the current row pointer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$startRow</b>&nbsp;&nbsp;</td> + <td>The row number at which to start iterating</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodrewind"></a> + <h3>method rewind <span class="smalllinenumber">[line 103]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void rewind( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Rewind the iterator to the starting row<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::rewind</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodseek"></a> + <h3>method seek <span class="smalllinenumber">[line 96]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void seek( +[integer +$row = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the row pointer to the selected row<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$row</b>&nbsp;&nbsp;</td> + <td>The row number to set the current pointer at</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodvalid"></a> + <h3>method valid <span class="smalllinenumber">[line 145]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean valid( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Indicate if more rows exist in the worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt>Iterator::valid</dt> + </dl> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html new file mode 100644 index 0000000..f15cee5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html @@ -0,0 +1,487 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_SheetView</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_SheetView</h1> +Source Location: /PHPExcel/Worksheet/SheetView.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_SheetView</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#constSHEETVIEW_NORMAL">SHEETVIEW_NORMAL</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#constSHEETVIEW_PAGE_BREAK_PREVIEW">SHEETVIEW_PAGE_BREAK_PREVIEW</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#constSHEETVIEW_PAGE_LAYOUT">SHEETVIEW_PAGE_LAYOUT</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodgetView">getView</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodgetZoomScale">getZoomScale</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodgetZoomScaleNormal">getZoomScaleNormal</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodsetView">setView</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodsetZoomScale">setZoomScale</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodsetZoomScaleNormal">setZoomScaleNormal</a></li> + <li><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_SheetView<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 80]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_SheetView __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_SheetView<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetView"></a> + <h3>method getView <span class="smalllinenumber">[line 145]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getView( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get View<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetZoomScale"></a> + <h3>method getZoomScale <span class="smalllinenumber">[line 89]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getZoomScale( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get ZoomScale<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetZoomScaleNormal"></a> + <h3>method getZoomScaleNormal <span class="smalllinenumber">[line 118]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getZoomScaleNormal( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get ZoomScaleNormal<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetView"></a> + <h3>method setView <span class="smalllinenumber">[line 161]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a> setView( +[string +$pValue = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set View<br /><br /><p>Valid values are 'normal' self::SHEETVIEW_NORMAL 'pageLayout' self::SHEETVIEW_PAGE_LAYOUT 'pageBreakPreview' self::SHEETVIEW_PAGE_BREAK_PREVIEW</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetZoomScale"></a> + <h3>method setZoomScale <span class="smalllinenumber">[line 102]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a> setZoomScale( +[int +$pValue = 100])</code> + </td></tr></table> + </td></tr></table><br /> + + Set ZoomScale<br /><br /><p>Valid values range from 10 to 400.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetZoomScaleNormal"></a> + <h3>method setZoomScaleNormal <span class="smalllinenumber">[line 131]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a> setZoomScaleNormal( +[int +$pValue = 100])</code> + </td></tr></table> + </td></tr></table><br /> + + Set ZoomScale<br /><br /><p>Valid values range from 10 to 400.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 178]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constSHEETVIEW_NORMAL"></a> + <p></p> + <h4>SHEETVIEW_NORMAL = <span class="value">&nbsp;'normal'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHEETVIEW_PAGE_BREAK_PREVIEW"></a> + <p></p> + <h4>SHEETVIEW_PAGE_BREAK_PREVIEW = <span class="value">&nbsp;'pageBreakPreview'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHEETVIEW_PAGE_LAYOUT"></a> + <p></p> + <h4>SHEETVIEW_PAGE_LAYOUT = <span class="value">&nbsp;'pageLayout'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:37 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html new file mode 100644 index 0000000..72e7238 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page Rule.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Rule.php</h1> +Source Location: /PHPExcel/Worksheet/AutoFilter/Column/Rule.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a></dt> + <dd>PHPExcel_Worksheet_AutoFilter_Column_Rule</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html new file mode 100644 index 0000000..00a3dc8 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page Column.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Column.php</h1> +Source Location: /PHPExcel/Worksheet/AutoFilter/Column.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a></dt> + <dd>PHPExcel_Worksheet_AutoFilter_Column</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:30 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html new file mode 100644 index 0000000..16b1a51 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page AutoFilter.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: AutoFilter.php</h1> +Source Location: /PHPExcel/Worksheet/AutoFilter.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a></dt> + <dd>PHPExcel_Worksheet_AutoFilter</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html new file mode 100644 index 0000000..2fecdab --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page BaseDrawing.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: BaseDrawing.php</h1> +Source Location: /PHPExcel/Worksheet/BaseDrawing.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a></dt> + <dd>PHPExcel_Worksheet_BaseDrawing</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html new file mode 100644 index 0000000..14991ec --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page CellIterator.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: CellIterator.php</h1> +Source Location: /PHPExcel/Worksheet/CellIterator.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a></dt> + <dd>PHPExcel_Worksheet_CellIterator</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:22 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html new file mode 100644 index 0000000..620124a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page ColumnDimension.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: ColumnDimension.php</h1> +Source Location: /PHPExcel/Worksheet/ColumnDimension.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a></dt> + <dd>PHPExcel_Worksheet_ColumnDimension</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html new file mode 100644 index 0000000..d8b8ea9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page HeaderFooter.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: HeaderFooter.php</h1> +Source Location: /PHPExcel/Worksheet/HeaderFooter.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a></dt> + <dd>PHPExcel_Worksheet_HeaderFooter</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:21 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html new file mode 100644 index 0000000..c3dee89 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page HeaderFooterDrawing.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: HeaderFooterDrawing.php</h1> +Source Location: /PHPExcel/Worksheet/HeaderFooterDrawing.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a></dt> + <dd>PHPExcel_Worksheet_HeaderFooterDrawing</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:27 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html new file mode 100644 index 0000000..8d41c2f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page MemoryDrawing.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: MemoryDrawing.php</h1> +Source Location: /PHPExcel/Worksheet/MemoryDrawing.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a></dt> + <dd>PHPExcel_Worksheet_MemoryDrawing</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:42 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html new file mode 100644 index 0000000..a33612e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page PageMargins.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: PageMargins.php</h1> +Source Location: /PHPExcel/Worksheet/PageMargins.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a></dt> + <dd>PHPExcel_Worksheet_PageMargins</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:47 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html new file mode 100644 index 0000000..b76b9f6 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page PageSetup.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: PageSetup.php</h1> +Source Location: /PHPExcel/Worksheet/PageSetup.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a></dt> + <dd>PHPExcel_Worksheet_PageSetup</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:47 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html new file mode 100644 index 0000000..0f62efa --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page Protection.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Protection.php</h1> +Source Location: /PHPExcel/Worksheet/Protection.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a></dt> + <dd>PHPExcel_Worksheet_Protection</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:29 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html new file mode 100644 index 0000000..4c9bb01 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page Row.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Row.php</h1> +Source Location: /PHPExcel/Worksheet/Row.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a></dt> + <dd>PHPExcel_Worksheet_Row</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html new file mode 100644 index 0000000..8b7d955 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page RowDimension.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: RowDimension.php</h1> +Source Location: /PHPExcel/Worksheet/RowDimension.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a></dt> + <dd>PHPExcel_Worksheet_RowDimension</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html new file mode 100644 index 0000000..658dcd4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page RowIterator.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: RowIterator.php</h1> +Source Location: /PHPExcel/Worksheet/RowIterator.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a></dt> + <dd>PHPExcel_Worksheet_RowIterator</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html new file mode 100644 index 0000000..766e502 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page SheetView.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: SheetView.php</h1> +Source Location: /PHPExcel/Worksheet/SheetView.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a></dt> + <dd>PHPExcel_Worksheet_SheetView</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:37 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html new file mode 100644 index 0000000..7d9ecfd --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html @@ -0,0 +1,163 @@ +<html> +<head> +<title>Docs for page Worksheet.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="../PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Worksheet.php</h1> +Source Location: /PHPExcel/Worksheet.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a></dt> + <dd>PHPExcel_Worksheet</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:14 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_notes/dwsync.xml new file mode 100644 index 0000000..5b7b87f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet/_notes/dwsync.xml @@ -0,0 +1,241 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Worksheet.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_AutoFilter.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column_Rule.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_BaseDrawing.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_CellIterator.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_ColumnDimension.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_HeaderFooter.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_HeaderFooterDrawing.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_MemoryDrawing.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_PageMargins.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_PageSetup.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_Protection.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_Row.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_RowDimension.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_RowIterator.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_SheetView.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---AutoFilter.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---BaseDrawing.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---CellIterator.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---ColumnDimension.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---HeaderFooter.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---HeaderFooterDrawing.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---MemoryDrawing.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---PageMargins.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---PageSetup.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Protection.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Row.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---RowDimension.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---RowIterator.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---SheetView.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_BaseDrawing.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---RowIterator.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---HeaderFooterDrawing.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---MemoryDrawing.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_PageSetup.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_PageMargins.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_ColumnDimension.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_SheetView.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_Row.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_AutoFilter.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_RowIterator.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---AutoFilter.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_HeaderFooterDrawing.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_MemoryDrawing.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_Protection.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_CellIterator.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Protection.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---BaseDrawing.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---CellIterator.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---PageSetup.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---PageMargins.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_HeaderFooter.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---ColumnDimension.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---SheetView.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---HeaderFooter.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Row.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_RowDimension.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column_Rule.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---RowDimension.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_BaseDrawing.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---RowIterator.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---HeaderFooterDrawing.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---MemoryDrawing.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_PageSetup.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_PageMargins.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_ColumnDimension.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_SheetView.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_Row.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_AutoFilter.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_RowIterator.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---AutoFilter.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_HeaderFooterDrawing.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_MemoryDrawing.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_Protection.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_CellIterator.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Protection.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---BaseDrawing.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---CellIterator.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---PageSetup.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---PageMargins.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_HeaderFooter.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---ColumnDimension.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---SheetView.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---HeaderFooter.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Row.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_RowDimension.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column_Rule.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---RowDimension.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_BaseDrawing.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560368332787" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---RowIterator.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560368989963" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---HeaderFooterDrawing.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560369499675" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---MemoryDrawing.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560369981362" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_PageMargins.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560371264474" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_PageSetup.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560370838876" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_ColumnDimension.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560371684555" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_SheetView.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560372163313" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560372583889" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_Row.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560373028960" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560373489403" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_AutoFilter.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560373910475" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_RowIterator.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560375180198" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---AutoFilter.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560375578482" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_HeaderFooterDrawing.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560376107352" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560374740563" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_MemoryDrawing.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560376541126" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_Protection.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560377033650" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_CellIterator.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560377440964" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---Protection.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560377842056" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---BaseDrawing.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560378257375" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560378830219" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---CellIterator.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560379286005" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---PageSetup.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560379679317" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---PageMargins.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560380091115" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---ColumnDimension.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560381117950" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_HeaderFooter.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560380676956" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---SheetView.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560381560293" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---Row.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560382373850" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---HeaderFooter.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560381969392" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560382790073" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_RowDimension.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560383227206" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---RowDimension.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560384139274" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column_Rule.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560383745500" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_BaseDrawing.html" server="62.244.88.21/amashow/" local="131414752711474723" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---RowIterator.php.html" server="62.244.88.21/amashow/" local="131414752711962605" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---HeaderFooterDrawing.php.html" server="62.244.88.21/amashow/" local="131414752712393507" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---MemoryDrawing.php.html" server="62.244.88.21/amashow/" local="131414752712698775" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_PageMargins.html" server="62.244.88.21/amashow/" local="131414752713702649" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_PageSetup.html" server="62.244.88.21/amashow/" local="131414752713292936" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_ColumnDimension.html" server="62.244.88.21/amashow/" local="131414752714160243" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_SheetView.html" server="62.244.88.21/amashow/" local="131414752714555840" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html" server="62.244.88.21/amashow/" local="131414752714772543" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_Row.html" server="62.244.88.21/amashow/" local="131414752715233768" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column.php.html" server="62.244.88.21/amashow/" local="131414752715448962" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_AutoFilter.html" server="62.244.88.21/amashow/" local="131414752715716635" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_RowIterator.html" server="62.244.88.21/amashow/" local="131414752716824447" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---AutoFilter.php.html" server="62.244.88.21/amashow/" local="131414752717034095" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet.html" server="62.244.88.21/amashow/" local="131414752716365692" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_MemoryDrawing.html" server="62.244.88.21/amashow/" local="131414752717713989" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_HeaderFooterDrawing.html" server="62.244.88.21/amashow/" local="131414752717317203" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_Protection.html" server="62.244.88.21/amashow/" local="131414752718028485" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_CellIterator.html" server="62.244.88.21/amashow/" local="131414752718260800" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---Protection.php.html" server="62.244.88.21/amashow/" local="131414752718476691" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---BaseDrawing.php.html" server="62.244.88.21/amashow/" local="131414752718693842" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column.html" server="62.244.88.21/amashow/" local="131414752719153827" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---CellIterator.php.html" server="62.244.88.21/amashow/" local="131414752719388293" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---PageSetup.php.html" server="62.244.88.21/amashow/" local="131414752719606697" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---PageMargins.php.html" server="62.244.88.21/amashow/" local="131414752720064036" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_HeaderFooter.html" server="62.244.88.21/amashow/" local="131414752720366067" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---ColumnDimension.php.html" server="62.244.88.21/amashow/" local="131414752720772596" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---SheetView.php.html" server="62.244.88.21/amashow/" local="131414752721194495" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---HeaderFooter.php.html" server="62.244.88.21/amashow/" local="131414752721434381" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---Row.php.html" server="62.244.88.21/amashow/" local="131414752721651515" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet.php.html" server="62.244.88.21/amashow/" local="131414752721865482" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_RowDimension.html" server="62.244.88.21/amashow/" local="131414752722336297" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column_Rule.html" server="62.244.88.21/amashow/" local="131414752722616379" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---RowDimension.php.html" server="62.244.88.21/amashow/" local="131414752722833950" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_RowDimension.html" server="62.244.88.21/deciday/" local="131919461646861419" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column.php.html" server="62.244.88.21/deciday/" local="131919461628714319" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---SheetView.php.html" server="62.244.88.21/deciday/" local="131919461649792484" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_BaseDrawing.html" server="62.244.88.21/deciday/" local="131919461635269831" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_HeaderFooterDrawing.html" server="62.244.88.21/deciday/" local="131919461636747255" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_MemoryDrawing.html" server="62.244.88.21/deciday/" local="131919461638935946" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---AutoFilter.php.html" server="62.244.88.21/deciday/" local="131919461631742150" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---Row.php.html" server="62.244.88.21/deciday/" local="131919461649487538" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_HeaderFooter.html" server="62.244.88.21/deciday/" local="131919461637611764" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_RowIterator.html" server="62.244.88.21/deciday/" local="131919461648444074" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---MemoryDrawing.php.html" server="62.244.88.21/deciday/" local="131919461639137277" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---HeaderFooter.php.html" server="62.244.88.21/deciday/" local="131919461637403227" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---RowIterator.php.html" server="62.244.88.21/deciday/" local="131919461648714699" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column_Rule.html" server="62.244.88.21/deciday/" local="131919461630755247" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_Row.html" server="62.244.88.21/deciday/" local="131919461647879838" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_PageMargins.html" server="62.244.88.21/deciday/" local="131919461642117539" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---PageSetup.php.html" server="62.244.88.21/deciday/" local="131919461641365078" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---RowDimension.php.html" server="62.244.88.21/deciday/" local="131919461647571500" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet.html" server="62.244.88.21/deciday/" local="131919461639676532" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---PageMargins.php.html" server="62.244.88.21/deciday/" local="131919461640202961" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_SheetView.html" server="62.244.88.21/deciday/" local="131919461649977501" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_ColumnDimension.html" server="62.244.88.21/deciday/" local="131919461635707121" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---ColumnDimension.php.html" server="62.244.88.21/deciday/" local="131919461634719990" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column.html" server="62.244.88.21/deciday/" local="131919461628949736" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---HeaderFooterDrawing.php.html" server="62.244.88.21/deciday/" local="131919461636367069" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---BaseDrawing.php.html" server="62.244.88.21/deciday/" local="131919461632513719" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet.php.html" server="62.244.88.21/deciday/" local="131919461642455492" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---CellIterator.php.html" server="62.244.88.21/deciday/" local="131919461633657957" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_PageSetup.html" server="62.244.88.21/deciday/" local="131919461641796928" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---Protection.php.html" server="62.244.88.21/deciday/" local="131919461643362197" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html" server="62.244.88.21/deciday/" local="131919461631093704" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_CellIterator.html" server="62.244.88.21/deciday/" local="131919461633407513" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_Protection.html" server="62.244.88.21/deciday/" local="131919461646648226" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_AutoFilter.html" server="62.244.88.21/deciday/" local="131919461630543961" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_AutoFilter.html" server="62.244.88.21/deciday_18/" local="131414752715716635" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column.html" server="62.244.88.21/deciday_18/" local="131414752719153827" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet.html" server="62.244.88.21/deciday_18/" local="131414752716365692" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_AutoFilter_Column_Rule.html" server="62.244.88.21/deciday_18/" local="131414752722616379" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_BaseDrawing.html" server="62.244.88.21/deciday_18/" local="131414752711474723" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_CellIterator.html" server="62.244.88.21/deciday_18/" local="131414752718260800" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_ColumnDimension.html" server="62.244.88.21/deciday_18/" local="131414752714160243" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_HeaderFooter.html" server="62.244.88.21/deciday_18/" local="131414752720366067" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_MemoryDrawing.html" server="62.244.88.21/deciday_18/" local="131414752717713989" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_PageMargins.html" server="62.244.88.21/deciday_18/" local="131414752713702649" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_HeaderFooterDrawing.html" server="62.244.88.21/deciday_18/" local="131414752717317203" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_Row.html" server="62.244.88.21/deciday_18/" local="131414752715233768" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_PageSetup.html" server="62.244.88.21/deciday_18/" local="131414752713292936" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_Protection.html" server="62.244.88.21/deciday_18/" local="131414752718028485" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_RowDimension.html" server="62.244.88.21/deciday_18/" local="131414752722336297" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_RowIterator.html" server="62.244.88.21/deciday_18/" local="131414752716824447" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_SheetView.html" server="62.244.88.21/deciday_18/" local="131414752714555840" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html" server="62.244.88.21/deciday_18/" local="131414752714772543" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---AutoFilter.php.html" server="62.244.88.21/deciday_18/" local="131414752717034095" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---AutoFilter---Column.php.html" server="62.244.88.21/deciday_18/" local="131414752715448962" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---BaseDrawing.php.html" server="62.244.88.21/deciday_18/" local="131414752718693842" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---CellIterator.php.html" server="62.244.88.21/deciday_18/" local="131414752719388293" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---ColumnDimension.php.html" server="62.244.88.21/deciday_18/" local="131414752720772596" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---HeaderFooter.php.html" server="62.244.88.21/deciday_18/" local="131414752721434381" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---HeaderFooterDrawing.php.html" server="62.244.88.21/deciday_18/" local="131414752712393507" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---MemoryDrawing.php.html" server="62.244.88.21/deciday_18/" local="131414752712698775" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---PageMargins.php.html" server="62.244.88.21/deciday_18/" local="131414752720064036" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---PageSetup.php.html" server="62.244.88.21/deciday_18/" local="131414752719606697" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---Protection.php.html" server="62.244.88.21/deciday_18/" local="131414752718476691" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---Row.php.html" server="62.244.88.21/deciday_18/" local="131414752721651515" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---RowIterator.php.html" server="62.244.88.21/deciday_18/" local="131414752711962605" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---SheetView.php.html" server="62.244.88.21/deciday_18/" local="131414752721194495" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---RowDimension.php.html" server="62.244.88.21/deciday_18/" local="131414752722833950" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet.php.html" server="62.244.88.21/deciday_18/" local="131414752721865482" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html new file mode 100644 index 0000000..44edd6f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html @@ -0,0 +1,691 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_Drawing</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet_Drawing</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet_Drawing.html" class="menu">class tree: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet_Drawing.html" class="menu">index: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing---Shadow.php.html"> Shadow.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_Drawing</h1> +Source Location: /PHPExcel/Worksheet/Drawing.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> + | + --PHPExcel_Worksheet_Drawing</pre><br /> +<div class="description">PHPExcel_Worksheet_Drawing</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetExtension">getExtension</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetFilename">getFilename</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetIndexedFilename">getIndexedFilename</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetPath">getPath</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodsetPath">setPath</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + +<td valign="top"> +<h3>Child classes:</h3> +<div class="tags"> +<dl> +<dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a></dt> + <dd>PHPExcel_Worksheet_HeaderFooterDrawing</dd> +</dl> +</div> +</td> + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_coordinates">PHPExcel_Worksheet_BaseDrawing::$_coordinates</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_description">PHPExcel_Worksheet_BaseDrawing::$_description</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_height">PHPExcel_Worksheet_BaseDrawing::$_height</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_name">PHPExcel_Worksheet_BaseDrawing::$_name</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_offsetX">PHPExcel_Worksheet_BaseDrawing::$_offsetX</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_offsetY">PHPExcel_Worksheet_BaseDrawing::$_offsetY</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_resizeProportional">PHPExcel_Worksheet_BaseDrawing::$_resizeProportional</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_rotation">PHPExcel_Worksheet_BaseDrawing::$_rotation</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_shadow">PHPExcel_Worksheet_BaseDrawing::$_shadow</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_width">PHPExcel_Worksheet_BaseDrawing::$_width</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_worksheet">PHPExcel_Worksheet_BaseDrawing::$_worksheet</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__construct">PHPExcel_Worksheet_BaseDrawing::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_Worksheet_BaseDrawing + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetCoordinates">PHPExcel_Worksheet_BaseDrawing::getCoordinates()</a> + </dt> + <dd> + Get Coordinates + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetDescription">PHPExcel_Worksheet_BaseDrawing::getDescription()</a> + </dt> + <dd> + Get Description + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHashCode">PHPExcel_Worksheet_BaseDrawing::getHashCode()</a> + </dt> + <dd> + Get hash code + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHeight">PHPExcel_Worksheet_BaseDrawing::getHeight()</a> + </dt> + <dd> + Get Height + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetImageIndex">PHPExcel_Worksheet_BaseDrawing::getImageIndex()</a> + </dt> + <dd> + Get image index + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetName">PHPExcel_Worksheet_BaseDrawing::getName()</a> + </dt> + <dd> + Get Name + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetX">PHPExcel_Worksheet_BaseDrawing::getOffsetX()</a> + </dt> + <dd> + Get OffsetX + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetY">PHPExcel_Worksheet_BaseDrawing::getOffsetY()</a> + </dt> + <dd> + Get OffsetY + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetResizeProportional">PHPExcel_Worksheet_BaseDrawing::getResizeProportional()</a> + </dt> + <dd> + Get ResizeProportional + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetRotation">PHPExcel_Worksheet_BaseDrawing::getRotation()</a> + </dt> + <dd> + Get Rotation + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetShadow">PHPExcel_Worksheet_BaseDrawing::getShadow()</a> + </dt> + <dd> + Get Shadow + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWidth">PHPExcel_Worksheet_BaseDrawing::getWidth()</a> + </dt> + <dd> + Get Width + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWorksheet">PHPExcel_Worksheet_BaseDrawing::getWorksheet()</a> + </dt> + <dd> + Get Worksheet + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetCoordinates">PHPExcel_Worksheet_BaseDrawing::setCoordinates()</a> + </dt> + <dd> + Set Coordinates + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetDescription">PHPExcel_Worksheet_BaseDrawing::setDescription()</a> + </dt> + <dd> + Set Description + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetHeight">PHPExcel_Worksheet_BaseDrawing::setHeight()</a> + </dt> + <dd> + Set Height + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetName">PHPExcel_Worksheet_BaseDrawing::setName()</a> + </dt> + <dd> + Set Name + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetX">PHPExcel_Worksheet_BaseDrawing::setOffsetX()</a> + </dt> + <dd> + Set OffsetX + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetY">PHPExcel_Worksheet_BaseDrawing::setOffsetY()</a> + </dt> + <dd> + Set OffsetY + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetResizeProportional">PHPExcel_Worksheet_BaseDrawing::setResizeProportional()</a> + </dt> + <dd> + Set ResizeProportional + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetRotation">PHPExcel_Worksheet_BaseDrawing::setRotation()</a> + </dt> + <dd> + Set Rotation + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetShadow">PHPExcel_Worksheet_BaseDrawing::setShadow()</a> + </dt> + <dd> + Set Shadow + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidth">PHPExcel_Worksheet_BaseDrawing::setWidth()</a> + </dt> + <dd> + Set Width + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidthAndHeight">PHPExcel_Worksheet_BaseDrawing::setWidthAndHeight()</a> + </dt> + <dd> + Set width and height with proportional resize + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWorksheet">PHPExcel_Worksheet_BaseDrawing::setWorksheet()</a> + </dt> + <dd> + Set Worksheet + </dd> + <dt> + <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__clone">PHPExcel_Worksheet_BaseDrawing::__clone()</a> + </dt> + <dd> + Implement PHP __clone to create a deep clone, not just a shallow copy. + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_Drawing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 48]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_Drawing __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_Drawing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#method__construct">PHPExcel_Worksheet_HeaderFooterDrawing::__construct()</a></dt> + <dd>Create a new PHPExcel_Worksheet_HeaderFooterDrawing</dd> + </dl> + </p> + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__construct">PHPExcel_Worksheet_BaseDrawing::__construct()</a> (Create a new PHPExcel_Worksheet_BaseDrawing)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetExtension"></a> + <h3>method getExtension <span class="smalllinenumber">[line 82]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getExtension( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Extension<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetExtension">PHPExcel_Worksheet_HeaderFooterDrawing::getExtension()</a></dt> + <dd>Get Extension</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFilename"></a> + <h3>method getFilename <span class="smalllinenumber">[line 62]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFilename( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Filename<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetFilename">PHPExcel_Worksheet_HeaderFooterDrawing::getFilename()</a></dt> + <dd>Get Filename</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 127]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetHashCode">PHPExcel_Worksheet_HeaderFooterDrawing::getHashCode()</a></dt> + <dd>Get hash code</dd> + </dl> + </p> + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHashCode">PHPExcel_Worksheet_BaseDrawing::getHashCode()</a> (Get hash code)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIndexedFilename"></a> + <h3>method getIndexedFilename <span class="smalllinenumber">[line 71]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getIndexedFilename( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get indexed filename (using image index)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPath"></a> + <h3>method getPath <span class="smalllinenumber">[line 92]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getPath( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Path<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetPath">PHPExcel_Worksheet_HeaderFooterDrawing::getPath()</a></dt> + <dd>Get Path</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPath"></a> + <h3>method setPath <span class="smalllinenumber">[line 104]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a> setPath( +[string +$pValue = ''], [boolean +$pVerifyFile = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Path<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetPath">PHPExcel_Worksheet_HeaderFooterDrawing::setPath()</a></dt> + <dd>Set Path</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>File path</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pVerifyFile</b>&nbsp;&nbsp;</td> + <td>Verify file</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 138]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#method__clone">PHPExcel_Worksheet_HeaderFooterDrawing::__clone()</a></dt> + <dd>Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + </dl> + </p> + Overrides <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__clone">PHPExcel_Worksheet_BaseDrawing::__clone()</a> (Implement PHP __clone to create a deep clone, not just a shallow copy.)<br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:48 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html new file mode 100644 index 0000000..55fb43f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html @@ -0,0 +1,762 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Worksheet_Drawing_Shadow</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet_Drawing</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet_Drawing.html" class="menu">class tree: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet_Drawing.html" class="menu">index: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing---Shadow.php.html"> Shadow.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Worksheet_Drawing_Shadow</h1> +Source Location: /PHPExcel/Worksheet/Drawing/Shadow.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Worksheet_Drawing_Shadow</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li> </ul> + </p> + +</td> + + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_BOTTOM">SHADOW_BOTTOM</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_BOTTOM_LEFT">SHADOW_BOTTOM_LEFT</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_BOTTOM_RIGHT">SHADOW_BOTTOM_RIGHT</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_CENTER">SHADOW_CENTER</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_LEFT">SHADOW_LEFT</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_TOP">SHADOW_TOP</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_TOP_LEFT">SHADOW_TOP_LEFT</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_TOP_RIGHT">SHADOW_TOP_RIGHT</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetAlignment">getAlignment</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetAlpha">getAlpha</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetBlurRadius">getBlurRadius</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetColor">getColor</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetDirection">getDirection</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetDistance">getDistance</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetHashCode">getHashCode</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetVisible">getVisible</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetAlignment">setAlignment</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetAlpha">setAlpha</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetBlurRadius">setBlurRadius</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetColor">setColor</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetDirection">setDirection</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetDistance">setDistance</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetVisible">setVisible</a></li> + <li><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#method__clone">__clone</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Worksheet_Drawing_Shadow<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 104]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_Drawing_Shadow __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Worksheet_Drawing_Shadow<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAlignment"></a> + <h3>method getAlignment <span class="smalllinenumber">[line 201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getAlignment( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Shadow alignment<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetAlpha"></a> + <h3>method getAlpha <span class="smalllinenumber">[line 242]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getAlpha( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Alpha<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBlurRadius"></a> + <h3>method getBlurRadius <span class="smalllinenumber">[line 141]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getBlurRadius( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Blur radius<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetColor"></a> + <h3>method getColor <span class="smalllinenumber">[line 221]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> getColor( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDirection"></a> + <h3>method getDirection <span class="smalllinenumber">[line 181]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getDirection( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Shadow direction (in degrees)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDistance"></a> + <h3>method getDistance <span class="smalllinenumber">[line 161]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getDistance( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Shadow distance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetHashCode"></a> + <h3>method getHashCode <span class="smalllinenumber">[line 262]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getHashCode( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get hash code<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Hash code</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetVisible"></a> + <h3>method getVisible <span class="smalllinenumber">[line 121]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getVisible( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Visible<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAlignment"></a> + <h3>method setAlignment <span class="smalllinenumber">[line 211]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a> setAlignment( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Shadow alignment<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetAlpha"></a> + <h3>method setAlpha <span class="smalllinenumber">[line 252]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a> setAlpha( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Alpha<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBlurRadius"></a> + <h3>method setBlurRadius <span class="smalllinenumber">[line 151]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a> setBlurRadius( +[int +$pValue = 6])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Blur radius<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetColor"></a> + <h3>method setColor <span class="smalllinenumber">[line 232]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a> setColor( +[PHPExcel_Style_Color +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDirection"></a> + <h3>method setDirection <span class="smalllinenumber">[line 191]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a> setDirection( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Shadow direction (in degrees)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDistance"></a> + <h3>method setDistance <span class="smalllinenumber">[line 171]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a> setDistance( +[int +$pValue = 2])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Shadow distance<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetVisible"></a> + <h3>method setVisible <span class="smalllinenumber">[line 131]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a> setVisible( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Visible<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__clone"></a> + <h3>method __clone <span class="smalllinenumber">[line 278]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __clone( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Implement PHP __clone to create a deep clone, not just a shallow copy.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constSHADOW_BOTTOM"></a> + <p></p> + <h4>SHADOW_BOTTOM = <span class="value">&nbsp;'b'</span></h4> + <p>[line 39]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHADOW_BOTTOM_LEFT"></a> + <p></p> + <h4>SHADOW_BOTTOM_LEFT = <span class="value">&nbsp;'bl'</span></h4> + <p>[line 40]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHADOW_BOTTOM_RIGHT"></a> + <p></p> + <h4>SHADOW_BOTTOM_RIGHT = <span class="value">&nbsp;'br'</span></h4> + <p>[line 41]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHADOW_CENTER"></a> + <p></p> + <h4>SHADOW_CENTER = <span class="value">&nbsp;'ctr'</span></h4> + <p>[line 42]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHADOW_LEFT"></a> + <p></p> + <h4>SHADOW_LEFT = <span class="value">&nbsp;'l'</span></h4> + <p>[line 43]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHADOW_TOP"></a> + <p></p> + <h4>SHADOW_TOP = <span class="value">&nbsp;'t'</span></h4> + <p>[line 44]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHADOW_TOP_LEFT"></a> + <p></p> + <h4>SHADOW_TOP_LEFT = <span class="value">&nbsp;'tl'</span></h4> + <p>[line 45]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constSHADOW_TOP_RIGHT"></a> + <p></p> + <h4>SHADOW_TOP_RIGHT = <span class="value">&nbsp;'tr'</span></h4> + <p>[line 46]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:37 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing---Shadow.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing---Shadow.php.html new file mode 100644 index 0000000..6a41907 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing---Shadow.php.html @@ -0,0 +1,118 @@ +<html> +<head> +<title>Docs for page Shadow.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet_Drawing</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet_Drawing.html" class="menu">class tree: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet_Drawing.html" class="menu">index: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing---Shadow.php.html"> Shadow.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Shadow.php</h1> +Source Location: /PHPExcel/Worksheet/Drawing/Shadow.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a></dt> + <dd>PHPExcel_Worksheet_Drawing_Shadow</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:37 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing.php.html new file mode 100644 index 0000000..7699b78 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing.php.html @@ -0,0 +1,118 @@ +<html> +<head> +<title>Docs for page Drawing.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet_Drawing</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Worksheet_Drawing.html" class="menu">class tree: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="../elementindex_PHPExcel_Worksheet_Drawing.html" class="menu">index: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing---Shadow.php.html"> Shadow.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Drawing.php</h1> +Source Location: /PHPExcel/Worksheet/Drawing.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a></dt> + <dd>PHPExcel_Worksheet_Drawing</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:48 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/_notes/dwsync.xml new file mode 100644 index 0000000..ce583cb --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Worksheet_Drawing/_notes/dwsync.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Worksheet_Drawing.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_Drawing_Shadow.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Drawing---Shadow.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Drawing.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_Drawing.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Drawing---Shadow.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_Drawing_Shadow.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Drawing.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_Drawing.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Drawing---Shadow.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Worksheet_Drawing_Shadow.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Drawing.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Worksheet---Drawing---Shadow.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560446684120" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_Drawing.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560446299021" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---Drawing.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560447463700" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_Drawing_Shadow.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560447083187" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/amashow/" local="131414752779705982" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---Drawing.php.html" server="62.244.88.21/amashow/" local="131414752780607874" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---Drawing---Shadow.php.html" server="62.244.88.21/amashow/" local="131414752779916305" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Worksheet_Drawing_Shadow.html" server="62.244.88.21/amashow/" local="131414752780387647" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---Drawing---Shadow.php.html" server="62.244.88.21/deciday/" local="131919461652106517" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Worksheet---Drawing.php.html" server="62.244.88.21/deciday/" local="131919461650963087" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_Drawing_Shadow.html" server="62.244.88.21/deciday/" local="131919461651455955" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/deciday/" local="131919461651177282" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/deciday_18/" local="131414752779705982" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Worksheet_Drawing_Shadow.html" server="62.244.88.21/deciday_18/" local="131414752780387647" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---Drawing---Shadow.php.html" server="62.244.88.21/deciday_18/" local="131414752779916305" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Worksheet---Drawing.php.html" server="62.244.88.21/deciday_18/" local="131414752780607874" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_CSV.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_CSV.html new file mode 100644 index 0000000..c60ba97 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_CSV.html @@ -0,0 +1,708 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_CSV</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_CSV</h1> +Source Location: /PHPExcel/Writer/CSV.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Writer_CSV</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetDelimiter">getDelimiter</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetEnclosure">getEnclosure</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetExcelCompatibility">getExcelCompatibility</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetLineEnding">getLineEnding</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetPreCalculateFormulas">getPreCalculateFormulas</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetSheetIndex">getSheetIndex</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetUseBOM">getUseBOM</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsave">save</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetDelimiter">setDelimiter</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetEnclosure">setEnclosure</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetExcelCompatibility">setExcelCompatibility</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetLineEnding">setLineEnding</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetPreCalculateFormulas">setPreCalculateFormulas</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetSheetIndex">setSheetIndex</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetUseBOM">setUseBOM</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_CSV<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 98]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_CSV __construct( +PHPExcel +$phpExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Writer_CSV<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$phpExcel</b>&nbsp;&nbsp;</td> + <td>PHPExcel object</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDelimiter"></a> + <h3>method getDelimiter <span class="smalllinenumber">[line 157]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getDelimiter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get delimiter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEnclosure"></a> + <h3>method getEnclosure <span class="smalllinenumber">[line 177]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getEnclosure( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get enclosure<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetExcelCompatibility"></a> + <h3>method getExcelCompatibility <span class="smalllinenumber">[line 240]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getExcelCompatibility( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get whether the file should be saved with full Excel Compatibility<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetLineEnding"></a> + <h3>method getLineEnding <span class="smalllinenumber">[line 200]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getLineEnding( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get line ending<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPreCalculateFormulas"></a> + <h3>method getPreCalculateFormulas <span class="smalllinenumber">[line 325]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getPreCalculateFormulas( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Pre-Calculate Formulas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheetIndex"></a> + <h3>method getSheetIndex <span class="smalllinenumber">[line 261]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getSheetIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetUseBOM"></a> + <h3>method getUseBOM <span class="smalllinenumber">[line 220]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getUseBOM( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get whether BOM should be used<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsave"></a> + <h3>method save <span class="smalllinenumber">[line 108]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void save( +[string +$pFilename = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Save PHPExcel to file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html#methodsave">PHPExcel_Writer_IWriter::save()</a></dt> + <dd>Save PHPExcel to file</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDelimiter"></a> + <h3>method setDelimiter <span class="smalllinenumber">[line 167]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a> setDelimiter( +[string +$pValue = ','])</code> + </td></tr></table> + </td></tr></table><br /> + + Set delimiter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Delimiter, defaults to ,</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetEnclosure"></a> + <h3>method setEnclosure <span class="smalllinenumber">[line 187]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a> setEnclosure( +[string +$pValue = '&quot;'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set enclosure<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Enclosure, defaults to &quot;</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetExcelCompatibility"></a> + <h3>method setExcelCompatibility <span class="smalllinenumber">[line 251]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a> setExcelCompatibility( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set whether the file should be saved with full Excel Compatibility<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Set the file to be written as a fully Excel compatible csv file Note that this overrides other settings such as useBOM, enclosure and delimiter</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLineEnding"></a> + <h3>method setLineEnding <span class="smalllinenumber">[line 210]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a> setLineEnding( +[string +$pValue = PHP_EOL])</code> + </td></tr></table> + </td></tr></table><br /> + + Set line ending<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Line ending, defaults to OS line ending (PHP_EOL)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPreCalculateFormulas"></a> + <h3>method setPreCalculateFormulas <span class="smalllinenumber">[line 335]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a> setPreCalculateFormulas( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Pre-Calculate Formulas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Pre-Calculate Formulas?</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSheetIndex"></a> + <h3>method setSheetIndex <span class="smalllinenumber">[line 271]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a> setSheetIndex( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Sheet index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetUseBOM"></a> + <h3>method setUseBOM <span class="smalllinenumber">[line 230]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a> setUseBOM( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set whether BOM should be used<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Use UTF-8 byte-order mark? Defaults to false</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_HTML.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_HTML.html new file mode 100644 index 0000000..f1ac0c4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_HTML.html @@ -0,0 +1,956 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_HTML</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_HTML</h1> +Source Location: /PHPExcel/Writer/HTML.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Writer_HTML</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a></li> </ul> + </p> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_isPdf">$_isPdf</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_phpExcel">$_phpExcel</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodbuildCSS">buildCSS</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodformatColor">formatColor</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLFooter">generateHTMLFooter</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLHeader">generateHTMLHeader</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateNavigation">generateNavigation</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateSheetData">generateSheetData</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateStyles">generateStyles</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetGenerateSheetNavigationBlock">getGenerateSheetNavigationBlock</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetImagesRoot">getImagesRoot</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetPreCalculateFormulas">getPreCalculateFormulas</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetSheetIndex">getSheetIndex</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetUseInlineCss">getUseInlineCss</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsave">save</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetGenerateSheetNavigationBlock">setGenerateSheetNavigationBlock</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetImagesRoot">setImagesRoot</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetPreCalculateFormulas">setPreCalculateFormulas</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetSheetIndex">setSheetIndex</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetUseInlineCss">setUseInlineCss</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodwriteAllSheets">writeAllSheets</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + +<td valign="top"> +<h3>Child classes:</h3> +<div class="tags"> +<dl> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a></dt> + <dd>PHPExcel_Writer_PDF_Core</dd> +</dl> +</div> +</td> + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_HTML<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_isPdf"></a> + <p></p> + <h4>$_isPdf = <span class="value">&nbsp;false</span></h4> + <p>[line 126]</p> + Is the current writer creating PDF?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>boolean</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_phpExcel"></a> + <p></p> + <h4>$_phpExcel = <span class="value"></span></h4> + <p>[line 42]</p> + PHPExcel object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td><a href="../PHPExcel/PHPExcel.html">PHPExcel</a></td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 140]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_HTML __construct( +PHPExcel +$phpExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Writer_HTML<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#method__construct">PHPExcel_Writer_PDF_Core::__construct()</a></dt> + <dd>Create a new PHPExcel_Writer_PDF</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html#method__construct">PHPExcel_Writer_PDF_DomPDF::__construct()</a></dt> + <dd>Create a new PHPExcel_Writer_PDF</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html#method__construct">PHPExcel_Writer_PDF_mPDF::__construct()</a></dt> + <dd>Create a new PHPExcel_Writer_PDF</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html#method__construct">PHPExcel_Writer_PDF_tcPDF::__construct()</a></dt> + <dd>Create a new PHPExcel_Writer_PDF</dd> + </dl> + </p> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$phpExcel</b>&nbsp;&nbsp;</td> + <td>PHPExcel object</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodbuildCSS"></a> + <h3>method buildCSS <span class="smalllinenumber">[line 603]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array buildCSS( +[boolean +$generateSurroundingHTML = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Build CSS styles<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$generateSurroundingHTML</b>&nbsp;&nbsp;</td> + <td>Generate surrounding HTML style? (html { })</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodformatColor"></a> + <h3>method formatColor <span class="smalllinenumber">[line 1263]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string formatColor( +string +$pValue, string +$pFormat)</code> + </td></tr></table> + </td></tr></table><br /> + + Add color to formatted string as inline style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Plain formatted value without color</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFormat</b>&nbsp;&nbsp;</td> + <td>Format code</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgenerateHTMLFooter"></a> + <h3>method generateHTMLFooter <span class="smalllinenumber">[line 882]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void generateHTMLFooter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Generate HTML footer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgenerateHTMLHeader"></a> + <h3>method generateHTMLHeader <span class="smalllinenumber">[line 305]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string generateHTMLHeader( +[boolean +$pIncludeStyles = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Generate HTML header<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pIncludeStyles</b>&nbsp;&nbsp;</td> + <td>Include styles?</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgenerateNavigation"></a> + <h3>method generateNavigation <span class="smalllinenumber">[line 475]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string generateNavigation( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Generate sheet tabs<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgenerateSheetData"></a> + <h3>method generateSheetData <span class="smalllinenumber">[line 356]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string generateSheetData( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Generate sheet data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgenerateStyles"></a> + <h3>method generateStyles <span class="smalllinenumber">[line 562]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string generateStyles( +[boolean +$generateSurroundingHTML = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Generate CSS styles<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$generateSurroundingHTML</b>&nbsp;&nbsp;</td> + <td>Generate surrounding HTML tags? (&lt;style&gt; and &lt;/style&gt;)</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetGenerateSheetNavigationBlock"></a> + <h3>method getGenerateSheetNavigationBlock <span class="smalllinenumber">[line 275]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getGenerateSheetNavigationBlock( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetImagesRoot"></a> + <h3>method getImagesRoot <span class="smalllinenumber">[line 1221]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getImagesRoot( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get images root<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPreCalculateFormulas"></a> + <h3>method getPreCalculateFormulas <span class="smalllinenumber">[line 1201]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getPreCalculateFormulas( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Pre-Calculate Formulas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSheetIndex"></a> + <h3>method getSheetIndex <span class="smalllinenumber">[line 255]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getSheetIndex( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetUseInlineCss"></a> + <h3>method getUseInlineCss <span class="smalllinenumber">[line 1241]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getUseInlineCss( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get use inline CSS?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsave"></a> + <h3>method save <span class="smalllinenumber">[line 151]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void save( +[string +$pFilename = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Save PHPExcel to file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html#methodsave">PHPExcel_Writer_PDF_DomPDF::save()</a></dt> + <dd>Save PHPExcel to file</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html#methodsave">PHPExcel_Writer_PDF_mPDF::save()</a></dt> + <dd>Save PHPExcel to file</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html#methodsave">PHPExcel_Writer_PDF_tcPDF::save()</a></dt> + <dd>Save PHPExcel to file</dd> + </dl> + </p> + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html#methodsave">PHPExcel_Writer_IWriter::save()</a></dt> + <dd>Save PHPExcel to file</dd> + </dl> + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetGenerateSheetNavigationBlock"></a> + <h3>method setGenerateSheetNavigationBlock <span class="smalllinenumber">[line 285]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a> setGenerateSheetNavigationBlock( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Flag indicating whether the sheet navigation block should be generated or not</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetImagesRoot"></a> + <h3>method setImagesRoot <span class="smalllinenumber">[line 1231]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a> setImagesRoot( +[string +$pValue = '.'])</code> + </td></tr></table> + </td></tr></table><br /> + + Set images root<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPreCalculateFormulas"></a> + <h3>method setPreCalculateFormulas <span class="smalllinenumber">[line 1211]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a> setPreCalculateFormulas( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Pre-Calculate Formulas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Pre-Calculate Formulas?</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetSheetIndex"></a> + <h3>method setSheetIndex <span class="smalllinenumber">[line 265]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a> setSheetIndex( +[int +$pValue = 0])</code> + </td></tr></table> + </td></tr></table><br /> + + Set sheet index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Sheet index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetUseInlineCss"></a> + <h3>method setUseInlineCss <span class="smalllinenumber">[line 1251]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a> setUseInlineCss( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set use inline CSS?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteAllSheets"></a> + <h3>method writeAllSheets <span class="smalllinenumber">[line 293]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void writeAllSheets( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Write all sheets (resets sheetIndex to NULL)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:28 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_IWriter.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_IWriter.html new file mode 100644 index 0000000..3618f26 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_IWriter.html @@ -0,0 +1,219 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_IWriter</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_IWriter</h1> +Source Location: /PHPExcel/Writer/IWriter.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Interface Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Writer_IWriter</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html#methodsave">save</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_IWriter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodsave"></a> + <h3>method save <span class="smalllinenumber">[line 44]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void save( +[string +$pFilename = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Save PHPExcel to file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF.html new file mode 100644 index 0000000..71565f5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF.html @@ -0,0 +1,259 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_PDF</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_PDF</h1> +Source Location: /PHPExcel/Writer/PDF.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Writer_PDF</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html#method__call">__call</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_PDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 45]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_PDF __construct( +PHPExcel +$phpExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Writer_PDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$phpExcel</b>&nbsp;&nbsp;</td> + <td>PHPExcel object</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__call"></a> + <h3>method __call <span class="smalllinenumber">[line 67]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void __call( + +$name, +$arguments)</code> + </td></tr></table> + </td></tr></table><br /> + + <br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$name</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$arguments</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:26 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html new file mode 100644 index 0000000..bb5c626 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html @@ -0,0 +1,758 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_PDF_Core</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_PDF_Core</h1> +Source Location: /PHPExcel/Writer/PDF/Core.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a> + | + --PHPExcel_Writer_PDF_Core</pre><br /> +<div class="description">PHPExcel_Writer_PDF_Core</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#var$_paperSizes">$_paperSizes</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetFont">getFont</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetOrientation">getOrientation</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetPaperSize">getPaperSize</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetTempDir">getTempDir</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetFont">setFont</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetOrientation">setOrientation</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetPaperSize">setPaperSize</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetTempDir">setTempDir</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + +<td valign="top"> +<h3>Child classes:</h3> +<div class="tags"> +<dl> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a></dt> + <dd>PHPExcel_Writer_PDF_DomPDF</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a></dt> + <dd>PHPExcel_Writer_PDF_mPDF</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a></dt> + <dd>PHPExcel_Writer_PDF_tcPDF</dd> +</dl> +</div> +</td> + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_isPdf">PHPExcel_Writer_HTML::$_isPdf</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_phpExcel">PHPExcel_Writer_HTML::$_phpExcel</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#method__construct">PHPExcel_Writer_HTML::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_Writer_HTML + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodbuildCSS">PHPExcel_Writer_HTML::buildCSS()</a> + </dt> + <dd> + Build CSS styles + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodformatColor">PHPExcel_Writer_HTML::formatColor()</a> + </dt> + <dd> + Add color to formatted string as inline style + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLFooter">PHPExcel_Writer_HTML::generateHTMLFooter()</a> + </dt> + <dd> + Generate HTML footer + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLHeader">PHPExcel_Writer_HTML::generateHTMLHeader()</a> + </dt> + <dd> + Generate HTML header + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateNavigation">PHPExcel_Writer_HTML::generateNavigation()</a> + </dt> + <dd> + Generate sheet tabs + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateSheetData">PHPExcel_Writer_HTML::generateSheetData()</a> + </dt> + <dd> + Generate sheet data + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateStyles">PHPExcel_Writer_HTML::generateStyles()</a> + </dt> + <dd> + Generate CSS styles + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::getGenerateSheetNavigationBlock()</a> + </dt> + <dd> + Get sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetImagesRoot">PHPExcel_Writer_HTML::getImagesRoot()</a> + </dt> + <dd> + Get images root + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetPreCalculateFormulas">PHPExcel_Writer_HTML::getPreCalculateFormulas()</a> + </dt> + <dd> + Get Pre-Calculate Formulas + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetSheetIndex">PHPExcel_Writer_HTML::getSheetIndex()</a> + </dt> + <dd> + Get sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetUseInlineCss">PHPExcel_Writer_HTML::getUseInlineCss()</a> + </dt> + <dd> + Get use inline CSS? + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsave">PHPExcel_Writer_HTML::save()</a> + </dt> + <dd> + Save PHPExcel to file + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::setGenerateSheetNavigationBlock()</a> + </dt> + <dd> + Set sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetImagesRoot">PHPExcel_Writer_HTML::setImagesRoot()</a> + </dt> + <dd> + Set images root + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetPreCalculateFormulas">PHPExcel_Writer_HTML::setPreCalculateFormulas()</a> + </dt> + <dd> + Set Pre-Calculate Formulas + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetSheetIndex">PHPExcel_Writer_HTML::setSheetIndex()</a> + </dt> + <dd> + Set sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetUseInlineCss">PHPExcel_Writer_HTML::setUseInlineCss()</a> + </dt> + <dd> + Set use inline CSS? + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodwriteAllSheets">PHPExcel_Writer_HTML::writeAllSheets()</a> + </dt> + <dd> + Write all sheets (resets sheetIndex to NULL) + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_PDF_Core<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>abstract:</b>&nbsp;&nbsp;</td><td></td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_paperSizes"></a> + <p></p> + <h4>static $_paperSizes = <span class="value">array(<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp;&nbsp;Excel&nbsp;Paper&nbsp;Size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TCPDF&nbsp;Paper&nbsp;Size<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'LETTER',&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp;&nbsp;(8.5&nbsp;in.&nbsp;by&nbsp;11&nbsp;in.)<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_SMALL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt;&nbsp;'LETTER',&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp;&nbsp;(8.5&nbsp;in.&nbsp;by&nbsp;11&nbsp;in.)<br> +&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_PageSetup::PAPERSIZE_TABLOID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&gt;&nbsp;array(792.00,1224.00),//&nbsp;&nbsp;&nbsp;(11&nbsp;in.&nbsp;by&nbsp;17&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEDGER=&gt;array(1224.00,792.00),//&nbsp;&nbsp;&nbsp;(17&nbsp;in.&nbsp;by&nbsp;11&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEGAL=&gt;'LEGAL',//&nbsp;&nbsp;&nbsp;(8.5&nbsp;in.&nbsp;by&nbsp;14&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_STATEMENT=&gt;array(396.00,612.00),//&nbsp;&nbsp;&nbsp;(5.5&nbsp;in.&nbsp;by&nbsp;8.5&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_EXECUTIVE=&gt;'EXECUTIVE',//&nbsp;&nbsp;&nbsp;(7.25&nbsp;in.&nbsp;by&nbsp;10.5&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3=&gt;'A3',//&nbsp;&nbsp;&nbsp;(297&nbsp;mm&nbsp;by&nbsp;420&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4=&gt;'A4',//&nbsp;&nbsp;&nbsp;(210&nbsp;mm&nbsp;by&nbsp;297&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_SMALL=&gt;'A4',//&nbsp;&nbsp;&nbsp;(210&nbsp;mm&nbsp;by&nbsp;297&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5=&gt;'A5',//&nbsp;&nbsp;&nbsp;(148&nbsp;mm&nbsp;by&nbsp;210&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_B4=&gt;'B4',//&nbsp;&nbsp;&nbsp;(250&nbsp;mm&nbsp;by&nbsp;353&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_B5=&gt;'B5',//&nbsp;&nbsp;&nbsp;(176&nbsp;mm&nbsp;by&nbsp;250&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_FOLIO=&gt;'FOLIO',//&nbsp;&nbsp;&nbsp;(8.5&nbsp;in.&nbsp;by&nbsp;13&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_QUARTO=&gt;array(609.45,779.53),//&nbsp;&nbsp;&nbsp;(215&nbsp;mm&nbsp;by&nbsp;275&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_1=&gt;array(720.00,1008.00),//&nbsp;&nbsp;&nbsp;(10&nbsp;in.&nbsp;by&nbsp;14&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_2=&gt;array(792.00,1224.00),//&nbsp;&nbsp;&nbsp;(11&nbsp;in.&nbsp;by&nbsp;17&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_NOTE=&gt;'LETTER',//&nbsp;&nbsp;&nbsp;(8.5&nbsp;in.&nbsp;by&nbsp;11&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO9_ENVELOPE=&gt;array(279.00,639.00),//&nbsp;&nbsp;&nbsp;(3.875&nbsp;in.&nbsp;by&nbsp;8.875&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO10_ENVELOPE=&gt;array(297.00,684.00),//&nbsp;&nbsp;&nbsp;(4.125&nbsp;in.&nbsp;by&nbsp;9.5&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO11_ENVELOPE=&gt;array(324.00,747.00),//&nbsp;&nbsp;&nbsp;(4.5&nbsp;in.&nbsp;by&nbsp;10.375&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO12_ENVELOPE=&gt;array(342.00,792.00),//&nbsp;&nbsp;&nbsp;(4.75&nbsp;in.&nbsp;by&nbsp;11&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO14_ENVELOPE=&gt;array(360.00,828.00),//&nbsp;&nbsp;&nbsp;(5&nbsp;in.&nbsp;by&nbsp;11.5&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_C=&gt;array(1224.00,1584.00),//&nbsp;&nbsp;&nbsp;(17&nbsp;in.&nbsp;by&nbsp;22&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_D=&gt;array(1584.00,2448.00),//&nbsp;&nbsp;&nbsp;(22&nbsp;in.&nbsp;by&nbsp;34&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_E=&gt;array(2448.00,3168.00),//&nbsp;&nbsp;&nbsp;(34&nbsp;in.&nbsp;by&nbsp;44&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_DL_ENVELOPE=&gt;array(311.81,623.62),//&nbsp;&nbsp;&nbsp;(110&nbsp;mm&nbsp;by&nbsp;220&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_C5_ENVELOPE=&gt;'C5',//&nbsp;&nbsp;&nbsp;(162&nbsp;mm&nbsp;by&nbsp;229&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_C3_ENVELOPE=&gt;'C3',//&nbsp;&nbsp;&nbsp;(324&nbsp;mm&nbsp;by&nbsp;458&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_C4_ENVELOPE=&gt;'C4',//&nbsp;&nbsp;&nbsp;(229&nbsp;mm&nbsp;by&nbsp;324&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_C6_ENVELOPE=&gt;'C6',//&nbsp;&nbsp;&nbsp;(114&nbsp;mm&nbsp;by&nbsp;162&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_C65_ENVELOPE=&gt;array(323.15,649.13),//&nbsp;&nbsp;&nbsp;(114&nbsp;mm&nbsp;by&nbsp;229&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_B4_ENVELOPE=&gt;'B4',//&nbsp;&nbsp;&nbsp;(250&nbsp;mm&nbsp;by&nbsp;353&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_B5_ENVELOPE=&gt;'B5',//&nbsp;&nbsp;&nbsp;(176&nbsp;mm&nbsp;by&nbsp;250&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_B6_ENVELOPE=&gt;array(498.90,354.33),//&nbsp;&nbsp;&nbsp;(176&nbsp;mm&nbsp;by&nbsp;125&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_ITALY_ENVELOPE=&gt;array(311.81,651.97),//&nbsp;&nbsp;&nbsp;(110&nbsp;mm&nbsp;by&nbsp;230&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_MONARCH_ENVELOPE=&gt;array(279.00,540.00),//&nbsp;&nbsp;&nbsp;(3.875&nbsp;in.&nbsp;by&nbsp;7.5&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_6_3_4_ENVELOPE=&gt;array(261.00,468.00),//&nbsp;&nbsp;&nbsp;(3.625&nbsp;in.&nbsp;by&nbsp;6.5&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_US_STANDARD_FANFOLD=&gt;array(1071.00,792.00),//&nbsp;&nbsp;&nbsp;(14.875&nbsp;in.&nbsp;by&nbsp;11&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_GERMAN_STANDARD_FANFOLD=&gt;array(612.00,864.00),//&nbsp;&nbsp;&nbsp;(8.5&nbsp;in.&nbsp;by&nbsp;12&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_GERMAN_LEGAL_FANFOLD=&gt;'FOLIO',//&nbsp;&nbsp;&nbsp;(8.5&nbsp;in.&nbsp;by&nbsp;13&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_ISO_B4=&gt;'B4',//&nbsp;&nbsp;&nbsp;(250&nbsp;mm&nbsp;by&nbsp;353&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_JAPANESE_DOUBLE_POSTCARD=&gt;array(566.93,419.53),//&nbsp;&nbsp;&nbsp;(200&nbsp;mm&nbsp;by&nbsp;148&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_1=&gt;array(648.00,792.00),//&nbsp;&nbsp;&nbsp;(9&nbsp;in.&nbsp;by&nbsp;11&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_2=&gt;array(720.00,792.00),//&nbsp;&nbsp;&nbsp;(10&nbsp;in.&nbsp;by&nbsp;11&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_3=&gt;array(1080.00,792.00),//&nbsp;&nbsp;&nbsp;(15&nbsp;in.&nbsp;by&nbsp;11&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_INVITE_ENVELOPE=&gt;array(623.62,623.62),//&nbsp;&nbsp;&nbsp;(220&nbsp;mm&nbsp;by&nbsp;220&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_EXTRA_PAPER=&gt;array(667.80,864.00),//&nbsp;&nbsp;&nbsp;(9.275&nbsp;in.&nbsp;by&nbsp;12&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEGAL_EXTRA_PAPER=&gt;array(667.80,1080.00),//&nbsp;&nbsp;&nbsp;(9.275&nbsp;in.&nbsp;by&nbsp;15&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_TABLOID_EXTRA_PAPER=&gt;array(841.68,1296.00),//&nbsp;&nbsp;&nbsp;(11.69&nbsp;in.&nbsp;by&nbsp;18&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_EXTRA_PAPER=&gt;array(668.98,912.76),//&nbsp;&nbsp;&nbsp;(236&nbsp;mm&nbsp;by&nbsp;322&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_TRANSVERSE_PAPER=&gt;array(595.80,792.00),//&nbsp;&nbsp;&nbsp;(8.275&nbsp;in.&nbsp;by&nbsp;11&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_TRANSVERSE_PAPER=&gt;'A4',//&nbsp;&nbsp;&nbsp;(210&nbsp;mm&nbsp;by&nbsp;297&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER=&gt;array(667.80,864.00),//&nbsp;&nbsp;&nbsp;(9.275&nbsp;in.&nbsp;by&nbsp;12&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_SUPERA_SUPERA_A4_PAPER=&gt;array(643.46,1009.13),//&nbsp;&nbsp;&nbsp;(227&nbsp;mm&nbsp;by&nbsp;356&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_SUPERB_SUPERB_A3_PAPER=&gt;array(864.57,1380.47),//&nbsp;&nbsp;&nbsp;(305&nbsp;mm&nbsp;by&nbsp;487&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_PLUS_PAPER=&gt;array(612.00,913.68),//&nbsp;&nbsp;&nbsp;(8.5&nbsp;in.&nbsp;by&nbsp;12.69&nbsp;in.)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_PLUS_PAPER=&gt;array(595.28,935.43),//&nbsp;&nbsp;&nbsp;(210&nbsp;mm&nbsp;by&nbsp;330&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5_TRANSVERSE_PAPER=&gt;'A5',//&nbsp;&nbsp;&nbsp;(148&nbsp;mm&nbsp;by&nbsp;210&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_JIS_B5_TRANSVERSE_PAPER=&gt;array(515.91,728.50),//&nbsp;&nbsp;&nbsp;(182&nbsp;mm&nbsp;by&nbsp;257&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_EXTRA_PAPER=&gt;array(912.76,1261.42),//&nbsp;&nbsp;&nbsp;(322&nbsp;mm&nbsp;by&nbsp;445&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5_EXTRA_PAPER=&gt;array(493.23,666.14),//&nbsp;&nbsp;&nbsp;(174&nbsp;mm&nbsp;by&nbsp;235&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_ISO_B5_EXTRA_PAPER=&gt;array(569.76,782.36),//&nbsp;&nbsp;&nbsp;(201&nbsp;mm&nbsp;by&nbsp;276&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A2_PAPER=&gt;'A2',//&nbsp;&nbsp;&nbsp;(420&nbsp;mm&nbsp;by&nbsp;594&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_TRANSVERSE_PAPER=&gt;'A3',//&nbsp;&nbsp;&nbsp;(297&nbsp;mm&nbsp;by&nbsp;420&nbsp;mm)<br> +PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER=&gt;array(912.76,1261.42)//&nbsp;&nbsp;&nbsp;(322&nbsp;mm&nbsp;by&nbsp;445&nbsp;mm)<br> +)</span></h4> + <p>[line 71]</p> + Paper Sizes xRef List<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>protected</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 146]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_PDF_Core __construct( +PHPExcel +$phpExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Writer_PDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html#method__construct">PHPExcel_Writer_PDF_DomPDF::__construct()</a></dt> + <dd>Create a new PHPExcel_Writer_PDF</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html#method__construct">PHPExcel_Writer_PDF_mPDF::__construct()</a></dt> + <dd>Create a new PHPExcel_Writer_PDF</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html#method__construct">PHPExcel_Writer_PDF_tcPDF::__construct()</a></dt> + <dd>Create a new PHPExcel_Writer_PDF</dd> + </dl> + </p> + Overrides <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#method__construct">PHPExcel_Writer_HTML::__construct()</a> (Create a new PHPExcel_Writer_HTML)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$phpExcel</b>&nbsp;&nbsp;</td> + <td>PHPExcel object</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFont"></a> + <h3>method getFont <span class="smalllinenumber">[line 157]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getFont( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOrientation"></a> + <h3>method getOrientation <span class="smalllinenumber">[line 200]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getOrientation( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Orientation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPaperSize"></a> + <h3>method getPaperSize <span class="smalllinenumber">[line 180]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int getPaperSize( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Paper Size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetTempDir"></a> + <h3>method getTempDir <span class="smalllinenumber">[line 220]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getTempDir( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get temporary storage directory<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFont"></a> + <h3>method setFont <span class="smalllinenumber">[line 170]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setFont( +string +$fontName)</code> + </td></tr></table> + </td></tr></table><br /> + + Set font. Examples:<br /><br /><p>'arialunicid0-chinese-simplified' 'arialunicid0-chinese-traditional' 'arialunicid0-korean' 'arialunicid0-japanese'</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$fontName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOrientation"></a> + <h3>method setOrientation <span class="smalllinenumber">[line 210]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a> setOrientation( +[string +$pValue = PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Orientation<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPaperSize"></a> + <h3>method setPaperSize <span class="smalllinenumber">[line 190]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a> setPaperSize( +[int +$pValue = PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Paper Size<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTempDir"></a> + <h3>method setTempDir <span class="smalllinenumber">[line 231]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a> setTempDir( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set temporary storage directory<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception Exception when directory does not exist</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Temporary storage directory</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html new file mode 100644 index 0000000..be73238 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html @@ -0,0 +1,493 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_PDF_DomPDF</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_PDF_DomPDF</h1> +Source Location: /PHPExcel/Writer/PDF/DomPDF.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a> + | + --<a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a> + | + --PHPExcel_Writer_PDF_DomPDF</pre><br /> +<div class="description">PHPExcel_Writer_PDF_DomPDF</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html#methodsave">save</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#var$_paperSizes">PHPExcel_Writer_PDF_Core::$_paperSizes</a> + </dt> +<dd> + +</dd> +</dl> +</div> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_isPdf">PHPExcel_Writer_HTML::$_isPdf</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_phpExcel">PHPExcel_Writer_HTML::$_phpExcel</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#method__construct">PHPExcel_Writer_PDF_Core::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_Writer_PDF + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetFont">PHPExcel_Writer_PDF_Core::getFont()</a> + </dt> + <dd> + Get Font + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetOrientation">PHPExcel_Writer_PDF_Core::getOrientation()</a> + </dt> + <dd> + Get Orientation + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetPaperSize">PHPExcel_Writer_PDF_Core::getPaperSize()</a> + </dt> + <dd> + Get Paper Size + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetTempDir">PHPExcel_Writer_PDF_Core::getTempDir()</a> + </dt> + <dd> + Get temporary storage directory + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetFont">PHPExcel_Writer_PDF_Core::setFont()</a> + </dt> + <dd> + Set font. Examples: + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetOrientation">PHPExcel_Writer_PDF_Core::setOrientation()</a> + </dt> + <dd> + Set Orientation + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetPaperSize">PHPExcel_Writer_PDF_Core::setPaperSize()</a> + </dt> + <dd> + Set Paper Size + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetTempDir">PHPExcel_Writer_PDF_Core::setTempDir()</a> + </dt> + <dd> + Set temporary storage directory + </dd> + </dl> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#method__construct">PHPExcel_Writer_HTML::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_Writer_HTML + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodbuildCSS">PHPExcel_Writer_HTML::buildCSS()</a> + </dt> + <dd> + Build CSS styles + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodformatColor">PHPExcel_Writer_HTML::formatColor()</a> + </dt> + <dd> + Add color to formatted string as inline style + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLFooter">PHPExcel_Writer_HTML::generateHTMLFooter()</a> + </dt> + <dd> + Generate HTML footer + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLHeader">PHPExcel_Writer_HTML::generateHTMLHeader()</a> + </dt> + <dd> + Generate HTML header + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateNavigation">PHPExcel_Writer_HTML::generateNavigation()</a> + </dt> + <dd> + Generate sheet tabs + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateSheetData">PHPExcel_Writer_HTML::generateSheetData()</a> + </dt> + <dd> + Generate sheet data + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateStyles">PHPExcel_Writer_HTML::generateStyles()</a> + </dt> + <dd> + Generate CSS styles + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::getGenerateSheetNavigationBlock()</a> + </dt> + <dd> + Get sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetImagesRoot">PHPExcel_Writer_HTML::getImagesRoot()</a> + </dt> + <dd> + Get images root + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetPreCalculateFormulas">PHPExcel_Writer_HTML::getPreCalculateFormulas()</a> + </dt> + <dd> + Get Pre-Calculate Formulas + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetSheetIndex">PHPExcel_Writer_HTML::getSheetIndex()</a> + </dt> + <dd> + Get sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetUseInlineCss">PHPExcel_Writer_HTML::getUseInlineCss()</a> + </dt> + <dd> + Get use inline CSS? + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsave">PHPExcel_Writer_HTML::save()</a> + </dt> + <dd> + Save PHPExcel to file + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::setGenerateSheetNavigationBlock()</a> + </dt> + <dd> + Set sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetImagesRoot">PHPExcel_Writer_HTML::setImagesRoot()</a> + </dt> + <dd> + Set images root + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetPreCalculateFormulas">PHPExcel_Writer_HTML::setPreCalculateFormulas()</a> + </dt> + <dd> + Set Pre-Calculate Formulas + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetSheetIndex">PHPExcel_Writer_HTML::setSheetIndex()</a> + </dt> + <dd> + Set sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetUseInlineCss">PHPExcel_Writer_HTML::setUseInlineCss()</a> + </dt> + <dd> + Set use inline CSS? + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodwriteAllSheets">PHPExcel_Writer_HTML::writeAllSheets()</a> + </dt> + <dd> + Write all sheets (resets sheetIndex to NULL) + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 44]<br /> +PHPExcel_Writer_PDF_DomPDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 50]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_PDF_DomPDF __construct( +PHPExcel +$phpExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Writer_PDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#method__construct">PHPExcel_Writer_PDF_Core::__construct()</a> (Create a new PHPExcel_Writer_PDF)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$phpExcel</b>&nbsp;&nbsp;</td> + <td>PHPExcel object</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsave"></a> + <h3>method save <span class="smalllinenumber">[line 60]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void save( +[ +$pFilename = null], string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Save PHPExcel to file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html#methodsave">PHPExcel_Writer_IWriter::save()</a></dt> + <dd>Save PHPExcel to file</dd> + </dl> + Overrides <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsave">PHPExcel_Writer_HTML::save()</a> (Save PHPExcel to file)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:47 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html new file mode 100644 index 0000000..c11d8df --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html @@ -0,0 +1,493 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_PDF_mPDF</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_PDF_mPDF</h1> +Source Location: /PHPExcel/Writer/PDF/mPDF.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a> + | + --<a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a> + | + --PHPExcel_Writer_PDF_mPDF</pre><br /> +<div class="description">PHPExcel_Writer_PDF_mPDF</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html#methodsave">save</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#var$_paperSizes">PHPExcel_Writer_PDF_Core::$_paperSizes</a> + </dt> +<dd> + +</dd> +</dl> +</div> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_isPdf">PHPExcel_Writer_HTML::$_isPdf</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_phpExcel">PHPExcel_Writer_HTML::$_phpExcel</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#method__construct">PHPExcel_Writer_PDF_Core::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_Writer_PDF + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetFont">PHPExcel_Writer_PDF_Core::getFont()</a> + </dt> + <dd> + Get Font + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetOrientation">PHPExcel_Writer_PDF_Core::getOrientation()</a> + </dt> + <dd> + Get Orientation + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetPaperSize">PHPExcel_Writer_PDF_Core::getPaperSize()</a> + </dt> + <dd> + Get Paper Size + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetTempDir">PHPExcel_Writer_PDF_Core::getTempDir()</a> + </dt> + <dd> + Get temporary storage directory + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetFont">PHPExcel_Writer_PDF_Core::setFont()</a> + </dt> + <dd> + Set font. Examples: + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetOrientation">PHPExcel_Writer_PDF_Core::setOrientation()</a> + </dt> + <dd> + Set Orientation + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetPaperSize">PHPExcel_Writer_PDF_Core::setPaperSize()</a> + </dt> + <dd> + Set Paper Size + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetTempDir">PHPExcel_Writer_PDF_Core::setTempDir()</a> + </dt> + <dd> + Set temporary storage directory + </dd> + </dl> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#method__construct">PHPExcel_Writer_HTML::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_Writer_HTML + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodbuildCSS">PHPExcel_Writer_HTML::buildCSS()</a> + </dt> + <dd> + Build CSS styles + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodformatColor">PHPExcel_Writer_HTML::formatColor()</a> + </dt> + <dd> + Add color to formatted string as inline style + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLFooter">PHPExcel_Writer_HTML::generateHTMLFooter()</a> + </dt> + <dd> + Generate HTML footer + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLHeader">PHPExcel_Writer_HTML::generateHTMLHeader()</a> + </dt> + <dd> + Generate HTML header + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateNavigation">PHPExcel_Writer_HTML::generateNavigation()</a> + </dt> + <dd> + Generate sheet tabs + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateSheetData">PHPExcel_Writer_HTML::generateSheetData()</a> + </dt> + <dd> + Generate sheet data + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateStyles">PHPExcel_Writer_HTML::generateStyles()</a> + </dt> + <dd> + Generate CSS styles + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::getGenerateSheetNavigationBlock()</a> + </dt> + <dd> + Get sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetImagesRoot">PHPExcel_Writer_HTML::getImagesRoot()</a> + </dt> + <dd> + Get images root + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetPreCalculateFormulas">PHPExcel_Writer_HTML::getPreCalculateFormulas()</a> + </dt> + <dd> + Get Pre-Calculate Formulas + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetSheetIndex">PHPExcel_Writer_HTML::getSheetIndex()</a> + </dt> + <dd> + Get sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetUseInlineCss">PHPExcel_Writer_HTML::getUseInlineCss()</a> + </dt> + <dd> + Get use inline CSS? + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsave">PHPExcel_Writer_HTML::save()</a> + </dt> + <dd> + Save PHPExcel to file + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::setGenerateSheetNavigationBlock()</a> + </dt> + <dd> + Set sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetImagesRoot">PHPExcel_Writer_HTML::setImagesRoot()</a> + </dt> + <dd> + Set images root + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetPreCalculateFormulas">PHPExcel_Writer_HTML::setPreCalculateFormulas()</a> + </dt> + <dd> + Set Pre-Calculate Formulas + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetSheetIndex">PHPExcel_Writer_HTML::setSheetIndex()</a> + </dt> + <dd> + Set sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetUseInlineCss">PHPExcel_Writer_HTML::setUseInlineCss()</a> + </dt> + <dd> + Set use inline CSS? + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodwriteAllSheets">PHPExcel_Writer_HTML::writeAllSheets()</a> + </dt> + <dd> + Write all sheets (resets sheetIndex to NULL) + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 44]<br /> +PHPExcel_Writer_PDF_mPDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 50]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_PDF_mPDF __construct( +PHPExcel +$phpExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Writer_PDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#method__construct">PHPExcel_Writer_PDF_Core::__construct()</a> (Create a new PHPExcel_Writer_PDF)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$phpExcel</b>&nbsp;&nbsp;</td> + <td>PHPExcel object</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsave"></a> + <h3>method save <span class="smalllinenumber">[line 60]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void save( +[ +$pFilename = null], string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Save PHPExcel to file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html#methodsave">PHPExcel_Writer_IWriter::save()</a></dt> + <dd>Save PHPExcel to file</dd> + </dl> + Overrides <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsave">PHPExcel_Writer_HTML::save()</a> (Save PHPExcel to file)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html new file mode 100644 index 0000000..50990e0 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html @@ -0,0 +1,493 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_PDF_tcPDF</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_PDF_tcPDF</h1> +Source Location: /PHPExcel/Writer/PDF/tcPDF.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a> + | + --<a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a> + | + --PHPExcel_Writer_PDF_tcPDF</pre><br /> +<div class="description">PHPExcel_Writer_PDF_tcPDF</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html#methodsave">save</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#var$_paperSizes">PHPExcel_Writer_PDF_Core::$_paperSizes</a> + </dt> +<dd> + +</dd> +</dl> +</div> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_isPdf">PHPExcel_Writer_HTML::$_isPdf</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_phpExcel">PHPExcel_Writer_HTML::$_phpExcel</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#method__construct">PHPExcel_Writer_PDF_Core::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_Writer_PDF + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetFont">PHPExcel_Writer_PDF_Core::getFont()</a> + </dt> + <dd> + Get Font + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetOrientation">PHPExcel_Writer_PDF_Core::getOrientation()</a> + </dt> + <dd> + Get Orientation + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetPaperSize">PHPExcel_Writer_PDF_Core::getPaperSize()</a> + </dt> + <dd> + Get Paper Size + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetTempDir">PHPExcel_Writer_PDF_Core::getTempDir()</a> + </dt> + <dd> + Get temporary storage directory + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetFont">PHPExcel_Writer_PDF_Core::setFont()</a> + </dt> + <dd> + Set font. Examples: + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetOrientation">PHPExcel_Writer_PDF_Core::setOrientation()</a> + </dt> + <dd> + Set Orientation + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetPaperSize">PHPExcel_Writer_PDF_Core::setPaperSize()</a> + </dt> + <dd> + Set Paper Size + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetTempDir">PHPExcel_Writer_PDF_Core::setTempDir()</a> + </dt> + <dd> + Set temporary storage directory + </dd> + </dl> +<h4>Class: <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#method__construct">PHPExcel_Writer_HTML::__construct()</a> + </dt> + <dd> + Create a new PHPExcel_Writer_HTML + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodbuildCSS">PHPExcel_Writer_HTML::buildCSS()</a> + </dt> + <dd> + Build CSS styles + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodformatColor">PHPExcel_Writer_HTML::formatColor()</a> + </dt> + <dd> + Add color to formatted string as inline style + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLFooter">PHPExcel_Writer_HTML::generateHTMLFooter()</a> + </dt> + <dd> + Generate HTML footer + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLHeader">PHPExcel_Writer_HTML::generateHTMLHeader()</a> + </dt> + <dd> + Generate HTML header + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateNavigation">PHPExcel_Writer_HTML::generateNavigation()</a> + </dt> + <dd> + Generate sheet tabs + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateSheetData">PHPExcel_Writer_HTML::generateSheetData()</a> + </dt> + <dd> + Generate sheet data + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateStyles">PHPExcel_Writer_HTML::generateStyles()</a> + </dt> + <dd> + Generate CSS styles + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::getGenerateSheetNavigationBlock()</a> + </dt> + <dd> + Get sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetImagesRoot">PHPExcel_Writer_HTML::getImagesRoot()</a> + </dt> + <dd> + Get images root + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetPreCalculateFormulas">PHPExcel_Writer_HTML::getPreCalculateFormulas()</a> + </dt> + <dd> + Get Pre-Calculate Formulas + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetSheetIndex">PHPExcel_Writer_HTML::getSheetIndex()</a> + </dt> + <dd> + Get sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetUseInlineCss">PHPExcel_Writer_HTML::getUseInlineCss()</a> + </dt> + <dd> + Get use inline CSS? + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsave">PHPExcel_Writer_HTML::save()</a> + </dt> + <dd> + Save PHPExcel to file + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::setGenerateSheetNavigationBlock()</a> + </dt> + <dd> + Set sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetImagesRoot">PHPExcel_Writer_HTML::setImagesRoot()</a> + </dt> + <dd> + Set images root + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetPreCalculateFormulas">PHPExcel_Writer_HTML::setPreCalculateFormulas()</a> + </dt> + <dd> + Set Pre-Calculate Formulas + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetSheetIndex">PHPExcel_Writer_HTML::setSheetIndex()</a> + </dt> + <dd> + Set sheet index + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetUseInlineCss">PHPExcel_Writer_HTML::setUseInlineCss()</a> + </dt> + <dd> + Set use inline CSS? + </dd> + <dt> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodwriteAllSheets">PHPExcel_Writer_HTML::writeAllSheets()</a> + </dt> + <dd> + Write all sheets (resets sheetIndex to NULL) + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 45]<br /> +PHPExcel_Writer_PDF_tcPDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 51]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_PDF_tcPDF __construct( +PHPExcel +$phpExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Writer_PDF<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#method__construct">PHPExcel_Writer_PDF_Core::__construct()</a> (Create a new PHPExcel_Writer_PDF)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$phpExcel</b>&nbsp;&nbsp;</td> + <td>PHPExcel object</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsave"></a> + <h3>method save <span class="smalllinenumber">[line 61]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void save( +[ +$pFilename = null], string +$pFileName)</code> + </td></tr></table> + </td></tr></table><br /> + + Save PHPExcel to file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <hr class="separator" /> + <div class="notes">Implementation of:</div> + <dl> + <dt><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html#methodsave">PHPExcel_Writer_IWriter::save()</a></dt> + <dd>Save PHPExcel to file</dd> + </dl> + Overrides <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsave">PHPExcel_Writer_HTML::save()</a> (Save PHPExcel to file)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFileName</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:07 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html new file mode 100644 index 0000000..8b5bddd --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html @@ -0,0 +1,139 @@ +<html> +<head> +<title>Docs for page CSV.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: CSV.php</h1> +Source Location: /PHPExcel/Writer/CSV.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a></dt> + <dd>PHPExcel_Writer_CSV</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:36 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html new file mode 100644 index 0000000..4d42699 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html @@ -0,0 +1,139 @@ +<html> +<head> +<title>Docs for page HTML.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: HTML.php</h1> +Source Location: /PHPExcel/Writer/HTML.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a></dt> + <dd>PHPExcel_Writer_HTML</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:28 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html new file mode 100644 index 0000000..3c589d3 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html @@ -0,0 +1,139 @@ +<html> +<head> +<title>Docs for page IWriter.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: IWriter.php</h1> +Source Location: /PHPExcel/Writer/IWriter.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a></dt> + <dd>PHPExcel_Writer_IWriter</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:31 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html new file mode 100644 index 0000000..ef1f3cf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html @@ -0,0 +1,139 @@ +<html> +<head> +<title>Docs for page Core.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Core.php</h1> +Source Location: /PHPExcel/Writer/PDF/Core.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a></dt> + <dd>PHPExcel_Writer_PDF_Core</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html new file mode 100644 index 0000000..9008011 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html @@ -0,0 +1,143 @@ +<html> +<head> +<title>Docs for page DomPDF.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DomPDF.php</h1> +Source Location: /PHPExcel/Writer/PDF/DomPDF.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a></dt> + <dd>PHPExcel_Writer_PDF_DomPDF</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once($pdfRendererClassFile) [line 32]<br /> +Require DomPDF library<br /><br /></div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:47 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html new file mode 100644 index 0000000..a37008d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html @@ -0,0 +1,143 @@ +<html> +<head> +<title>Docs for page mPDF.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: mPDF.php</h1> +Source Location: /PHPExcel/Writer/PDF/mPDF.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a></dt> + <dd>PHPExcel_Writer_PDF_mPDF</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once($pdfRendererClassFile) [line 32]<br /> +Require mPDF library<br /><br /></div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:43 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html new file mode 100644 index 0000000..a0c0bf5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html @@ -0,0 +1,143 @@ +<html> +<head> +<title>Docs for page tcPDF.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: tcPDF.php</h1> +Source Location: /PHPExcel/Writer/PDF/tcPDF.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a></dt> + <dd>PHPExcel_Writer_PDF_tcPDF</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<h4>Includes:</h4> +<div class="tags"> +require_once($pdfRendererClassFile) [line 33]<br /> +Require tcPDF library<br /><br /></div> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:07 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html new file mode 100644 index 0000000..c8c19fa --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html @@ -0,0 +1,139 @@ +<html> +<head> +<title>Docs for page PDF.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="../elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="../PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="../PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: PDF.php</h1> +Source Location: /PHPExcel/Writer/PDF.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a></dt> + <dd>PHPExcel_Writer_PDF</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:26 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_notes/dwsync.xml new file mode 100644 index 0000000..475653b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer/_notes/dwsync.xml @@ -0,0 +1,115 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Writer_CSV.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_HTML.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_IWriter.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_Core.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_DomPDF.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_mPDF.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_tcPDF.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---CSV.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---HTML.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---IWriter.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---Core.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---DomPDF.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---mPDF.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---tcPDF.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---HTML.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_mPDF.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---DomPDF.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_Core.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_Writer_IWriter.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_tcPDF.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---IWriter.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_Writer_CSV.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---mPDF.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---Core.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---CSV.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_DomPDF.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_Writer_HTML.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---tcPDF.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---HTML.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_mPDF.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---DomPDF.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_Core.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Writer_IWriter.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_tcPDF.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---IWriter.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Writer_CSV.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---mPDF.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---Core.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---CSV.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF_DomPDF.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Writer_HTML.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---PDF---tcPDF.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997101600000000" Dst="-1" /> +<file name="PHPExcel_Writer_PDF.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560400855484" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---HTML.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560401308143" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---PDF.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560401809449" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_PDF_mPDF.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560402205780" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---PDF---DomPDF.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560402587041" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_PDF_Core.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560403049126" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_IWriter.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560403430893" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_PDF_tcPDF.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560403841024" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---IWriter.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560404264496" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_CSV.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560404697346" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---PDF---mPDF.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560405089236" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---PDF---Core.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560405476255" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---CSV.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560405812008" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_PDF_DomPDF.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560406202455" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_HTML.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560406662176" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---PDF---tcPDF.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560407079679" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_PDF.html" server="62.244.88.21/amashow/" local="131414752740336917" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---HTML.php.html" server="62.244.88.21/amashow/" local="131414752740661691" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---PDF.php.html" server="62.244.88.21/amashow/" local="131414752740994893" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_PDF_mPDF.html" server="62.244.88.21/amashow/" local="131414752741326040" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---PDF---DomPDF.php.html" server="62.244.88.21/amashow/" local="131414752741650517" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_IWriter.html" server="62.244.88.21/amashow/" local="131414752742735058" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_PDF_Core.html" server="62.244.88.21/amashow/" local="131414752742432866" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_PDF_tcPDF.html" server="62.244.88.21/amashow/" local="131414752743112095" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---IWriter.php.html" server="62.244.88.21/amashow/" local="131414752743323240" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_CSV.html" server="62.244.88.21/amashow/" local="131414752743754976" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---PDF---mPDF.php.html" server="62.244.88.21/amashow/" local="131414752743965589" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---PDF---Core.php.html" server="62.244.88.21/amashow/" local="131414752744473369" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---CSV.php.html" server="62.244.88.21/amashow/" local="131414752744682626" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_PDF_DomPDF.html" server="62.244.88.21/amashow/" local="131414752744903317" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_HTML.html" server="62.244.88.21/amashow/" local="131414752745157592" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---PDF---tcPDF.php.html" server="62.244.88.21/amashow/" local="131414752745676222" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---PDF---DomPDF.php.html" server="62.244.88.21/deciday/" local="131919461656497198" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_PDF_Core.html" server="62.244.88.21/deciday/" local="131919461655656475" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---PDF---tcPDF.php.html" server="62.244.88.21/deciday/" local="131919461659395079" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---CSV.php.html" server="62.244.88.21/deciday/" local="131919461652947162" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_PDF_DomPDF.html" server="62.244.88.21/deciday/" local="131919461656730855" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_IWriter.html" server="62.244.88.21/deciday/" local="131919461654207091" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_CSV.html" server="62.244.88.21/deciday/" local="131919461652769075" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_HTML.html" server="62.244.88.21/deciday/" local="131919461653755786" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---PDF---mPDF.php.html" server="62.244.88.21/deciday/" local="131919461657930957" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_PDF.html" server="62.244.88.21/deciday/" local="131919461656910980" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---IWriter.php.html" server="62.244.88.21/deciday/" local="131919461655135652" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---PDF.php.html" server="62.244.88.21/deciday/" local="131919461658286022" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---HTML.php.html" server="62.244.88.21/deciday/" local="131919461653938876" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---PDF---Core.php.html" server="62.244.88.21/deciday/" local="131919461655455547" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_PDF_mPDF.html" server="62.244.88.21/deciday/" local="131919461658105951" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_PDF_tcPDF.html" server="62.244.88.21/deciday/" local="131919461659753335" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_CSV.html" server="62.244.88.21/deciday_18/" local="131414752743754976" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_IWriter.html" server="62.244.88.21/deciday_18/" local="131414752742735058" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_HTML.html" server="62.244.88.21/deciday_18/" local="131414752745157592" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_PDF.html" server="62.244.88.21/deciday_18/" local="131414752740336917" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_PDF_Core.html" server="62.244.88.21/deciday_18/" local="131414752742432866" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_PDF_DomPDF.html" server="62.244.88.21/deciday_18/" local="131414752744903317" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_PDF_mPDF.html" server="62.244.88.21/deciday_18/" local="131414752741326040" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_PDF_tcPDF.html" server="62.244.88.21/deciday_18/" local="131414752743112095" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---CSV.php.html" server="62.244.88.21/deciday_18/" local="131414752744682626" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---HTML.php.html" server="62.244.88.21/deciday_18/" local="131414752740661691" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---IWriter.php.html" server="62.244.88.21/deciday_18/" local="131414752743323240" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---PDF---Core.php.html" server="62.244.88.21/deciday_18/" local="131414752744473369" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---PDF---DomPDF.php.html" server="62.244.88.21/deciday_18/" local="131414752741650517" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---PDF---mPDF.php.html" server="62.244.88.21/deciday_18/" local="131414752743965589" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---PDF---tcPDF.php.html" server="62.244.88.21/deciday_18/" local="131414752745676222" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---PDF.php.html" server="62.244.88.21/deciday_18/" local="131414752740994893" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html new file mode 100644 index 0000000..6e3f267 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html @@ -0,0 +1,848 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007</h1> +Source Location: /PHPExcel/Writer/Excel2007.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Writer_Excel2007</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetBordersHashTable">getBordersHashTable</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetDiskCachingDirectory">getDiskCachingDirectory</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetDrawingHashTable">getDrawingHashTable</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetFillHashTable">getFillHashTable</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetFontHashTable">getFontHashTable</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetIncludeCharts">getIncludeCharts</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetNumFmtHashTable">getNumFmtHashTable</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetOffice2003Compatibility">getOffice2003Compatibility</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetPHPExcel">getPHPExcel</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetPreCalculateFormulas">getPreCalculateFormulas</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetStringTable">getStringTable</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetStylesConditionalHashTable">getStylesConditionalHashTable</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetUseDiskCaching">getUseDiskCaching</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetWriterPart">getWriterPart</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsave">save</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetIncludeCharts">setIncludeCharts</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetOffice2003Compatibility">setOffice2003Compatibility</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetPHPExcel">setPHPExcel</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetPreCalculateFormulas">setPreCalculateFormulas</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetUseDiskCaching">setUseDiskCaching</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 142]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_Excel2007 __construct( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Writer_Excel2007<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetBordersHashTable"></a> + <h3>method getBordersHashTable <span class="smalllinenumber">[line 460]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a> getBordersHashTable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get PHPExcel_Style_Borders HashTable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDiskCachingDirectory"></a> + <h3>method getDiskCachingDirectory <span class="smalllinenumber">[line 580]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getDiskCachingDirectory( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get disk caching directory<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetDrawingHashTable"></a> + <h3>method getDrawingHashTable <span class="smalllinenumber">[line 478]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a> getDrawingHashTable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get PHPExcel_Worksheet_BaseDrawing HashTable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFillHashTable"></a> + <h3>method getFillHashTable <span class="smalllinenumber">[line 442]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a> getFillHashTable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get PHPExcel_Style_Fill HashTable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetFontHashTable"></a> + <h3>method getFontHashTable <span class="smalllinenumber">[line 451]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a> getFontHashTable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get PHPExcel_Style_Font HashTable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetIncludeCharts"></a> + <h3>method getIncludeCharts <span class="smalllinenumber">[line 489]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getIncludeCharts( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Write charts in workbook? If this is true, then the Writer will write definitions for any charts that exist in the PHPExcel object.<br /><br /><p>If false (the default) it will ignore any charts defined in the PHPExcel object.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetNumFmtHashTable"></a> + <h3>method getNumFmtHashTable <span class="smalllinenumber">[line 469]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a> getNumFmtHashTable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get PHPExcel_Style_NumberFormat HashTable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetOffice2003Compatibility"></a> + <h3>method getOffice2003Compatibility <span class="smalllinenumber">[line 530]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getOffice2003Compatibility( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Office2003 compatibility<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPHPExcel"></a> + <h3>method getPHPExcel <span class="smalllinenumber">[line 399]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel.html">PHPExcel</a> getPHPExcel( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get PHPExcel object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPreCalculateFormulas"></a> + <h3>method getPreCalculateFormulas <span class="smalllinenumber">[line 512]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getPreCalculateFormulas( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Pre-Calculate Formulas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStringTable"></a> + <h3>method getStringTable <span class="smalllinenumber">[line 424]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string[] getStringTable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get string table<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetStylesConditionalHashTable"></a> + <h3>method getStylesConditionalHashTable <span class="smalllinenumber">[line 433]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a> getStylesConditionalHashTable( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get PHPExcel_Style_Conditional HashTable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetUseDiskCaching"></a> + <h3>method getUseDiskCaching <span class="smalllinenumber">[line 550]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getUseDiskCaching( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get use disk caching where possible?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetWriterPart"></a> + <h3>method getWriterPart <span class="smalllinenumber">[line 182]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> getWriterPart( +[string +$pPartName = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Get writer part<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pPartName</b>&nbsp;&nbsp;</td> + <td>Writer part name</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsave"></a> + <h3>method save <span class="smalllinenumber">[line 196]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void save( +[string +$pFilename = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Save PHPExcel to file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetIncludeCharts"></a> + <h3>method setIncludeCharts <span class="smalllinenumber">[line 502]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a> setIncludeCharts( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set write charts in workbook Set to true, to advise the Writer to include any charts that exist in the PHPExcel object.<br /><br /><p>Set to false (the default) to ignore charts.</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOffice2003Compatibility"></a> + <h3>method setOffice2003Compatibility <span class="smalllinenumber">[line 540]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a> setOffice2003Compatibility( +[boolean +$pValue = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Pre-Calculate Formulas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Office2003 compatibility?</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPHPExcel"></a> + <h3>method setPHPExcel <span class="smalllinenumber">[line 414]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a> setPHPExcel( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set PHPExcel object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td>PHPExcel object</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPreCalculateFormulas"></a> + <h3>method setPreCalculateFormulas <span class="smalllinenumber">[line 521]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setPreCalculateFormulas( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Pre-Calculate Formulas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Pre-Calculate Formulas?</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetUseDiskCaching"></a> + <h3>method setUseDiskCaching <span class="smalllinenumber">[line 562]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a> setUseDiskCaching( +[boolean +$pValue = false], [string +$pDirectory = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set use disk caching where possible?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception Exception when directory does not exist</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pDirectory</b>&nbsp;&nbsp;</td> + <td>Disk caching directory</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html new file mode 100644 index 0000000..540913c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html @@ -0,0 +1,262 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_Chart</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_Chart</h1> +Source Location: /PHPExcel/Writer/Excel2007/Chart.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> + | + --PHPExcel_Writer_Excel2007_Chart</pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_Chart</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html#methodwriteChart">writeChart</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a> + </dt> + <dd> + Get parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_Chart<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodwriteChart"></a> + <h3>method writeChart <span class="smalllinenumber">[line 45]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeChart( +[PHPExcel_Chart +$pChart = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write charts to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a>&nbsp;&nbsp;</td> + <td><b>$pChart</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:24 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html new file mode 100644 index 0000000..cbc3236 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html @@ -0,0 +1,415 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_Comments</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_Comments</h1> +Source Location: /PHPExcel/Writer/Excel2007/Comments.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> + | + --PHPExcel_Writer_Excel2007_Comments</pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_Comments</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#methodwriteComments">writeComments</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#methodwriteVMLComments">writeVMLComments</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#method_writeComment">_writeComment</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#method_writeVMLComment">_writeVMLComment</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a> + </dt> + <dd> + Get parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_Comments<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodwriteComments"></a> + <h3>method writeComments <span class="smalllinenumber">[line 45]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeComments( +[PHPExcel_Worksheet +$pWorksheet = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write comments to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pWorksheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteVMLComments"></a> + <h3>method writeVMLComments <span class="smalllinenumber">[line 125]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeVMLComments( +[PHPExcel_Worksheet +$pWorksheet = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write VML comments to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pWorksheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_writeComment"></a> + <h3>method _writeComment <span class="smalllinenumber">[line 103]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _writeComment( +[PHPExcel_Shared_XMLWriter +$objWriter = null], [string +$pCellReference = 'A1'], [PHPExcel_Comment +$pComment = null], [array +$pAuthors = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write comment to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a>&nbsp;&nbsp;</td> + <td><b>$objWriter</b>&nbsp;&nbsp;</td> + <td>XML Writer</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCellReference</b>&nbsp;&nbsp;</td> + <td>Cell reference</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a>&nbsp;&nbsp;</td> + <td><b>$pComment</b>&nbsp;&nbsp;</td> + <td>Comment</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pAuthors</b>&nbsp;&nbsp;</td> + <td>Array of authors</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_writeVMLComment"></a> + <h3>method _writeVMLComment <span class="smalllinenumber">[line 198]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _writeVMLComment( +[PHPExcel_Shared_XMLWriter +$objWriter = null], [string +$pCellReference = 'A1'], [PHPExcel_Comment +$pComment = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write VML comment to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a>&nbsp;&nbsp;</td> + <td><b>$objWriter</b>&nbsp;&nbsp;</td> + <td>XML Writer</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pCellReference</b>&nbsp;&nbsp;</td> + <td>Cell reference</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a>&nbsp;&nbsp;</td> + <td><b>$pComment</b>&nbsp;&nbsp;</td> + <td>Comment</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:33 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html new file mode 100644 index 0000000..7b955a0 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html @@ -0,0 +1,268 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_ContentTypes</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_ContentTypes</h1> +Source Location: /PHPExcel/Writer/Excel2007/ContentTypes.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> + | + --PHPExcel_Writer_Excel2007_ContentTypes</pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_ContentTypes</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html#methodwriteContentTypes">writeContentTypes</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a> + </dt> + <dd> + Get parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_ContentTypes<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodwriteContentTypes"></a> + <h3>method writeContentTypes <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeContentTypes( +[PHPExcel +$pPHPExcel = null], [boolean +$includeCharts = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + Write content types to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$includeCharts</b>&nbsp;&nbsp;</td> + <td>Flag indicating if we should include drawing details for charts</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html new file mode 100644 index 0000000..6cc5f2a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html @@ -0,0 +1,348 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_DocProps</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_DocProps</h1> +Source Location: /PHPExcel/Writer/Excel2007/DocProps.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> + | + --PHPExcel_Writer_Excel2007_DocProps</pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_DocProps</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html#methodwriteDocPropsApp">writeDocPropsApp</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html#methodwriteDocPropsCore">writeDocPropsCore</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html#methodwriteDocPropsCustom">writeDocPropsCustom</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a> + </dt> + <dd> + Get parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_DocProps<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodwriteDocPropsApp"></a> + <h3>method writeDocPropsApp <span class="smalllinenumber">[line 45]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeDocPropsApp( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write docProps/app.xml to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteDocPropsCore"></a> + <h3>method writeDocPropsCore <span class="smalllinenumber">[line 142]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeDocPropsCore( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write docProps/core.xml to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteDocPropsCustom"></a> + <h3>method writeDocPropsCustom <span class="smalllinenumber">[line 209]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeDocPropsCustom( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write docProps/custom.xml to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:45 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html new file mode 100644 index 0000000..1da97eb --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html @@ -0,0 +1,516 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_Drawing</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_Drawing</h1> +Source Location: /PHPExcel/Writer/Excel2007/Drawing.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> + | + --PHPExcel_Writer_Excel2007_Drawing</pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_Drawing</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#methodallDrawings">allDrawings</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#methodwriteDrawings">writeDrawings</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#methodwriteVMLHeaderFooterImages">writeVMLHeaderFooterImages</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#method_writeChart">_writeChart</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#method_writeDrawing">_writeDrawing</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#method_writeVMLHeaderFooterImage">_writeVMLHeaderFooterImage</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a> + </dt> + <dd> + Get parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_Drawing<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodallDrawings"></a> + <h3>method allDrawings <span class="smalllinenumber">[line 579]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Worksheet_Drawing[] allDrawings( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Get an array of all drawings<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>All drawings in PHPExcel</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteDrawings"></a> + <h3>method writeDrawings <span class="smalllinenumber">[line 47]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeDrawings( +[PHPExcel_Worksheet +$pWorksheet = null], int +&$chartRef, [boolean +$includeCharts = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + Write drawings to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pWorksheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>&$chartRef</b>&nbsp;&nbsp;</td> + <td>Chart ID</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$includeCharts</b>&nbsp;&nbsp;</td> + <td>Flag indicating if we should include drawing details for charts</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteVMLHeaderFooterImages"></a> + <h3>method writeVMLHeaderFooterImages <span class="smalllinenumber">[line 389]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeVMLHeaderFooterImages( +[PHPExcel_Worksheet +$pWorksheet = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write VML header/footer images to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pWorksheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_writeChart"></a> + <h3>method _writeChart <span class="smalllinenumber">[line 100]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _writeChart( +[PHPExcel_Shared_XMLWriter +$objWriter = null], [PHPExcel_Chart +$pChart = null], [int +$pRelationId = -1])</code> + </td></tr></table> + </td></tr></table><br /> + + Write drawings to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a>&nbsp;&nbsp;</td> + <td><b>$objWriter</b>&nbsp;&nbsp;</td> + <td>XML Writer</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a>&nbsp;&nbsp;</td> + <td><b>$pChart</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRelationId</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_writeDrawing"></a> + <h3>method _writeDrawing <span class="smalllinenumber">[line 172]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _writeDrawing( +[PHPExcel_Shared_XMLWriter +$objWriter = null], [PHPExcel_Worksheet_BaseDrawing +$pDrawing = null], [int +$pRelationId = -1])</code> + </td></tr></table> + </td></tr></table><br /> + + Write drawings to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a>&nbsp;&nbsp;</td> + <td><b>$objWriter</b>&nbsp;&nbsp;</td> + <td>XML Writer</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a>&nbsp;&nbsp;</td> + <td><b>$pDrawing</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pRelationId</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_writeVMLHeaderFooterImage"></a> + <h3>method _writeVMLHeaderFooterImage <span class="smalllinenumber">[line 537]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void _writeVMLHeaderFooterImage( +[PHPExcel_Shared_XMLWriter +$objWriter = null], [string +$pReference = ''], [PHPExcel_Worksheet_HeaderFooterDrawing +$pImage = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write VML comment to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a>&nbsp;&nbsp;</td> + <td><b>$objWriter</b>&nbsp;&nbsp;</td> + <td>XML Writer</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pReference</b>&nbsp;&nbsp;</td> + <td>Reference</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a>&nbsp;&nbsp;</td> + <td><b>$pImage</b>&nbsp;&nbsp;</td> + <td>Image</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:50 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html new file mode 100644 index 0000000..cf8c29f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html @@ -0,0 +1,458 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_Rels</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_Rels</h1> +Source Location: /PHPExcel/Writer/Excel2007/Rels.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> + | + --PHPExcel_Writer_Excel2007_Rels</pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_Rels</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteDrawingRelationships">writeDrawingRelationships</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteHeaderFooterDrawingRelationships">writeHeaderFooterDrawingRelationships</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteRelationships">writeRelationships</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteWorkbookRelationships">writeWorkbookRelationships</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteWorksheetRelationships">writeWorksheetRelationships</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a> + </dt> + <dd> + Get parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_Rels<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodwriteDrawingRelationships"></a> + <h3>method writeDrawingRelationships <span class="smalllinenumber">[line 291]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeDrawingRelationships( +[PHPExcel_Worksheet +$pWorksheet = null], int +&$chartRef, [boolean +$includeCharts = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + Write drawing relationships to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pWorksheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>&$chartRef</b>&nbsp;&nbsp;</td> + <td>Chart ID</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$includeCharts</b>&nbsp;&nbsp;</td> + <td>Flag indicating if we should write charts</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteHeaderFooterDrawingRelationships"></a> + <h3>method writeHeaderFooterDrawingRelationships <span class="smalllinenumber">[line 355]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeHeaderFooterDrawingRelationships( +[PHPExcel_Worksheet +$pWorksheet = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write header/footer drawing relationships to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pWorksheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteRelationships"></a> + <h3>method writeRelationships <span class="smalllinenumber">[line 45]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeRelationships( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write relationships to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteWorkbookRelationships"></a> + <h3>method writeWorkbookRelationships <span class="smalllinenumber">[line 111]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeWorkbookRelationships( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write workbook relationships to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteWorksheetRelationships"></a> + <h3>method writeWorksheetRelationships <span class="smalllinenumber">[line 182]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeWorksheetRelationships( +[PHPExcel_Worksheet +$pWorksheet = null], [int +$pWorksheetId = 1], [boolean +$includeCharts = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + Write worksheet relationships to XML format<br /><br /><p>Numbering is as follows: rId1 - Drawings rId_hyperlink_x - Hyperlinks</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pWorksheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$pWorksheetId</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$includeCharts</b>&nbsp;&nbsp;</td> + <td>Flag indicating if we should write charts</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html new file mode 100644 index 0000000..e1c70ff --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html @@ -0,0 +1,452 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_StringTable</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_StringTable</h1> +Source Location: /PHPExcel/Writer/Excel2007/StringTable.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> + | + --PHPExcel_Writer_Excel2007_StringTable</pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_StringTable</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodcreateStringTable">createStringTable</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodflipStringTable">flipStringTable</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodwriteRichText">writeRichText</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodwriteRichTextForCharts">writeRichTextForCharts</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodwriteStringTable">writeStringTable</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a> + </dt> + <dd> + Get parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_StringTable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodcreateStringTable"></a> + <h3>method createStringTable <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string[] createStringTable( +[<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$pSheet = null], [string[] +$pExistingTable = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Create worksheet stringtable<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>String table for worksheet</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td>Worksheet</td> + </tr> + <tr> + <td class="type">string[]&nbsp;&nbsp;</td> + <td><b>$pExistingTable</b>&nbsp;&nbsp;</td> + <td>Existing table to eventually merge with</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodflipStringTable"></a> + <h3>method flipStringTable <span class="smalllinenumber">[line 303]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array flipStringTable( +[array +$stringTable = array()])</code> + </td></tr></table> + </td></tr></table><br /> + + Flip string table (for index searching)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$stringTable</b>&nbsp;&nbsp;</td> + <td>Stringtable</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteRichText"></a> + <h3>method writeRichText <span class="smalllinenumber">[line 150]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void writeRichText( +[PHPExcel_Shared_XMLWriter +$objWriter = null], [PHPExcel_RichText +$pRichText = null], [string +$prefix = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Write Rich Text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a>&nbsp;&nbsp;</td> + <td><b>$objWriter</b>&nbsp;&nbsp;</td> + <td>XML Writer</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a>&nbsp;&nbsp;</td> + <td><b>$pRichText</b>&nbsp;&nbsp;</td> + <td>Rich text</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$prefix</b>&nbsp;&nbsp;</td> + <td>Optional Namespace prefix</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteRichTextForCharts"></a> + <h3>method writeRichTextForCharts <span class="smalllinenumber">[line 232]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void writeRichTextForCharts( +[PHPExcel_Shared_XMLWriter +$objWriter = null], [string|<a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a> +$pRichText = null], [string +$prefix = NULL])</code> + </td></tr></table> + </td></tr></table><br /> + + Write Rich Text<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a>&nbsp;&nbsp;</td> + <td><b>$objWriter</b>&nbsp;&nbsp;</td> + <td>XML Writer</td> + </tr> + <tr> + <td class="type">string|<a href="../PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a>&nbsp;&nbsp;</td> + <td><b>$pRichText</b>&nbsp;&nbsp;</td> + <td>text string or Rich text</td> + </tr> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$prefix</b>&nbsp;&nbsp;</td> + <td>Optional Namespace prefix</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteStringTable"></a> + <h3>method writeStringTable <span class="smalllinenumber">[line 95]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeStringTable( +[string[] +$pStringTable = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write string table to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string[]&nbsp;&nbsp;</td> + <td><b>$pStringTable</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:06 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html new file mode 100644 index 0000000..e6a2d89 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html @@ -0,0 +1,520 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_Style</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_Style</h1> +Source Location: /PHPExcel/Writer/Excel2007/Style.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> + | + --PHPExcel_Writer_Excel2007_Style</pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_Style</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallBorders">allBorders</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallConditionalStyles">allConditionalStyles</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallFills">allFills</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallFonts">allFonts</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallNumberFormats">allNumberFormats</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallStyles">allStyles</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodwriteStyles">writeStyles</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a> + </dt> + <dd> + Get parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_Style<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodallBorders"></a> + <h3>method allBorders <span class="smalllinenumber">[line 665]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Borders[] allBorders( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Get an array of all borders<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>All borders in PHPExcel</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodallConditionalStyles"></a> + <h3>method allConditionalStyles <span class="smalllinenumber">[line 588]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Conditional[] allConditionalStyles( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Get an array of all conditional styles<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>All conditional styles in PHPExcel</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodallFills"></a> + <h3>method allFills <span class="smalllinenumber">[line 612]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Fill[] allFills( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Get an array of all fills<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>All fills in PHPExcel</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodallFonts"></a> + <h3>method allFonts <span class="smalllinenumber">[line 643]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_Font[] allFonts( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Get an array of all fonts<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>All fonts in PHPExcel</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodallNumberFormats"></a> + <h3>method allNumberFormats <span class="smalllinenumber">[line 687]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style_NumberFormat[] allNumberFormats( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Get an array of all number formats<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>All number formats in PHPExcel</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodallStyles"></a> + <h3>method allStyles <span class="smalllinenumber">[line 574]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Style[] allStyles( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Get an array of all styles<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>All styles in PHPExcel</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteStyles"></a> + <h3>method writeStyles <span class="smalllinenumber">[line 45]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeStyles( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write styles to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:06 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html new file mode 100644 index 0000000..46cc110 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html @@ -0,0 +1,262 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_Theme</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_Theme</h1> +Source Location: /PHPExcel/Writer/Excel2007/Theme.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> + | + --PHPExcel_Writer_Excel2007_Theme</pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_DocProps</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html#methodwriteTheme">writeTheme</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a> + </dt> + <dd> + Get parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_DocProps<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodwriteTheme"></a> + <h3>method writeTheme <span class="smalllinenumber">[line 139]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeTheme( +[PHPExcel +$pPHPExcel = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Write theme to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html new file mode 100644 index 0000000..ae5611e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html @@ -0,0 +1,268 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_Workbook</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_Workbook</h1> +Source Location: /PHPExcel/Writer/Excel2007/Workbook.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> + | + --PHPExcel_Writer_Excel2007_Workbook</pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_Workbook</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html#methodwriteWorkbook">writeWorkbook</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a> + </dt> + <dd> + Get parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_Workbook<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodwriteWorkbook"></a> + <h3>method writeWorkbook <span class="smalllinenumber">[line 46]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeWorkbook( +[PHPExcel +$pPHPExcel = null], [boolean +$recalcRequired = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + Write workbook to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$pPHPExcel</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$recalcRequired</b>&nbsp;&nbsp;</td> + <td>Indicate whether formulas should be recalculated before writing</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html new file mode 100644 index 0000000..3d0cc0a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html @@ -0,0 +1,274 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_Worksheet</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_Worksheet</h1> +Source Location: /PHPExcel/Writer/Excel2007/Worksheet.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a> + | + --PHPExcel_Writer_Excel2007_Worksheet</pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_Worksheet</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html#methodwriteWorksheet">writeWorksheet</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a> + </dt> + <dd> + Get parent IWriter object + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a> + </dt> + <dd> + Set parent IWriter object + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodwriteWorksheet"></a> + <h3>method writeWorksheet <span class="smalllinenumber">[line 47]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeWorksheet( +[<a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$pSheet = null], [string[] +$pStringTable = null], [boolean +$includeCharts = FALSE])</code> + </td></tr></table> + </td></tr></table><br /> + + Write worksheet to XML format<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>XML Output</td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$pSheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">string[]&nbsp;&nbsp;</td> + <td><b>$pStringTable</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$includeCharts</b>&nbsp;&nbsp;</td> + <td>Flag indicating if we should write charts</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html new file mode 100644 index 0000000..7f58d95 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html @@ -0,0 +1,352 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel2007_WriterPart</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel2007_WriterPart</h1> +Source Location: /PHPExcel/Writer/Excel2007/WriterPart.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Writer_Excel2007_WriterPart</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">getParentWriter</a></li> + <li><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">setParentWriter</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + +<td valign="top"> +<h3>Child classes:</h3> +<div class="tags"> +<dl> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a></dt> + <dd>PHPExcel_Writer_Excel2007_Chart</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a></dt> + <dd>PHPExcel_Writer_Excel2007_Comments</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a></dt> + <dd>PHPExcel_Writer_Excel2007_ContentTypes</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a></dt> + <dd>PHPExcel_Writer_Excel2007_DocProps</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a></dt> + <dd>PHPExcel_Writer_Excel2007_Drawing</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a></dt> + <dd>PHPExcel_Writer_Excel2007_Rels</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a></dt> + <dd>PHPExcel_Writer_Excel2007_StringTable</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a></dt> + <dd>PHPExcel_Writer_Excel2007_Style</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a></dt> + <dd>PHPExcel_Writer_Excel2007_DocProps</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a></dt> + <dd>PHPExcel_Writer_Excel2007_Workbook</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a></dt> + <dd>PHPExcel_Writer_Excel2007_Worksheet</dd> +</dl> +</div> +</td> + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel2007_WriterPart<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>abstract:</b>&nbsp;&nbsp;</td><td></td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 75]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_Excel2007_WriterPart __construct( +[PHPExcel_Writer_IWriter +$pWriter = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set parent IWriter object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a>&nbsp;&nbsp;</td> + <td><b>$pWriter</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetParentWriter"></a> + <h3>method getParentWriter <span class="smalllinenumber">[line 61]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a> getParentWriter( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get parent IWriter object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetParentWriter"></a> + <h3>method setParentWriter <span class="smalllinenumber">[line 51]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setParentWriter( +[PHPExcel_Writer_IWriter +$pWriter = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set parent IWriter object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a>&nbsp;&nbsp;</td> + <td><b>$pWriter</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html new file mode 100644 index 0000000..74265d2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page Chart.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Chart.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/Chart.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a></dt> + <dd>PHPExcel_Writer_Excel2007_Chart</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:24 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html new file mode 100644 index 0000000..23f618c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page Comments.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Comments.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/Comments.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a></dt> + <dd>PHPExcel_Writer_Excel2007_Comments</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:33 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html new file mode 100644 index 0000000..7d2a45c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page ContentTypes.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: ContentTypes.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/ContentTypes.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a></dt> + <dd>PHPExcel_Writer_Excel2007_ContentTypes</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html new file mode 100644 index 0000000..3e96e62 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page DocProps.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: DocProps.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/DocProps.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a></dt> + <dd>PHPExcel_Writer_Excel2007_DocProps</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:45 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html new file mode 100644 index 0000000..7160067 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page Drawing.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Drawing.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/Drawing.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a></dt> + <dd>PHPExcel_Writer_Excel2007_Drawing</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:50 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html new file mode 100644 index 0000000..44f1cdc --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page Rels.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Rels.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/Rels.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a></dt> + <dd>PHPExcel_Writer_Excel2007_Rels</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html new file mode 100644 index 0000000..2521901 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page StringTable.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: StringTable.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/StringTable.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a></dt> + <dd>PHPExcel_Writer_Excel2007_StringTable</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:06 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html new file mode 100644 index 0000000..c64d6c5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page Style.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Style.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/Style.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a></dt> + <dd>PHPExcel_Writer_Excel2007_Style</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:06 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html new file mode 100644 index 0000000..cb20954 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page Theme.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Theme.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/Theme.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a></dt> + <dd>PHPExcel_Writer_Excel2007_DocProps</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html new file mode 100644 index 0000000..a07b7bf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page Workbook.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Workbook.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/Workbook.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a></dt> + <dd>PHPExcel_Writer_Excel2007_Workbook</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html new file mode 100644 index 0000000..21f48bd --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page Worksheet.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Worksheet.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/Worksheet.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a></dt> + <dd>PHPExcel_Writer_Excel2007_Worksheet</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html new file mode 100644 index 0000000..394dc87 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page WriterPart.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: WriterPart.php</h1> +Source Location: /PHPExcel/Writer/Excel2007/WriterPart.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a></dt> + <dd>PHPExcel_Writer_Excel2007_WriterPart</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html new file mode 100644 index 0000000..4c998c9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>Docs for page Excel2007.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Excel2007.php</h1> +Source Location: /PHPExcel/Writer/Excel2007.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a></dt> + <dd>PHPExcel_Writer_Excel2007</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_notes/dwsync.xml new file mode 100644 index 0000000..01f0252 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel2007/_notes/dwsync.xml @@ -0,0 +1,185 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Writer_Excel2007.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Chart.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Comments.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_ContentTypes.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_DocProps.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Drawing.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Rels.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_StringTable.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Style.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Theme.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Workbook.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Worksheet.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_WriterPart.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Chart.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Comments.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---ContentTypes.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---DocProps.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Drawing.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Rels.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---StringTable.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Style.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Theme.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Workbook.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Worksheet.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---WriterPart.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Workbook.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_ContentTypes.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Style.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Chart.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Theme.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Comments.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_WriterPart.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Rels.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---DocProps.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Drawing.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Workbook.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Worksheet.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---ContentTypes.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Style.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_StringTable.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Chart.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Theme.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---WriterPart.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Rels.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Comments.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Worksheet.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_DocProps.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Drawing.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---StringTable.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Workbook.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_ContentTypes.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Style.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Chart.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Theme.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Comments.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_WriterPart.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Rels.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---DocProps.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Drawing.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Workbook.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Worksheet.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---ContentTypes.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Style.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_StringTable.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Chart.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Theme.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---WriterPart.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Rels.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Comments.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---Worksheet.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_DocProps.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Drawing.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel2007---StringTable.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997100400000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel2007_Workbook.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560231945864" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_ContentTypes.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560232424517" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Style.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560232898304" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Theme.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560233815468" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Comments.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560234266591" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Chart.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560233343190" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_WriterPart.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560234721665" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---DocProps.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560235651997" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Rels.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560235180471" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Drawing.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560236105673" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Workbook.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560236558755" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Worksheet.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560237022110" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---ContentTypes.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560237483743" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Style.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560237930311" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_StringTable.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560238431161" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Chart.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560238880192" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Theme.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560239345645" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560239842975" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---WriterPart.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560240292196" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Rels.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560240734644" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Comments.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560241217395" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560241659877" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Worksheet.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560242101788" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_DocProps.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560242588854" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Drawing.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560243036710" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---StringTable.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560243471764" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Workbook.html" server="62.244.88.21/amashow/" local="131414752602082017" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_ContentTypes.html" server="62.244.88.21/amashow/" local="131414752602376948" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Style.html" server="62.244.88.21/amashow/" local="131414752602863503" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Chart.html" server="62.244.88.21/amashow/" local="131414752603080670" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Theme.html" server="62.244.88.21/amashow/" local="131414752603494693" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Comments.php.html" server="62.244.88.21/amashow/" local="131414752603706453" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_WriterPart.html" server="62.244.88.21/amashow/" local="131414752603923650" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Rels.html" server="62.244.88.21/amashow/" local="131414752604333876" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---DocProps.php.html" server="62.244.88.21/amashow/" local="131414752604559651" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Drawing.php.html" server="62.244.88.21/amashow/" local="131414752605043885" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Workbook.php.html" server="62.244.88.21/amashow/" local="131414752605423031" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Worksheet.html" server="62.244.88.21/amashow/" local="131414752605645591" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---ContentTypes.php.html" server="62.244.88.21/amashow/" local="131414752605871043" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Style.php.html" server="62.244.88.21/amashow/" local="131414752606084821" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_StringTable.html" server="62.244.88.21/amashow/" local="131414752606581126" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Chart.php.html" server="62.244.88.21/amashow/" local="131414752606804255" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Theme.php.html" server="62.244.88.21/amashow/" local="131414752607022570" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007.html" server="62.244.88.21/amashow/" local="131414752607479070" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Rels.php.html" server="62.244.88.21/amashow/" local="131414752608150918" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Comments.html" server="62.244.88.21/amashow/" local="131414752608369523" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---WriterPart.php.html" server="62.244.88.21/amashow/" local="131414752607937112" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007.php.html" server="62.244.88.21/amashow/" local="131414752608756964" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Worksheet.php.html" server="62.244.88.21/amashow/" local="131414752608982430" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_DocProps.html" server="62.244.88.21/amashow/" local="131414752609530962" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---StringTable.php.html" server="62.244.88.21/amashow/" local="131414752609979597" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Drawing.html" server="62.244.88.21/amashow/" local="131414752609766177" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---ContentTypes.php.html" server="62.244.88.21/deciday/" local="131919461663353539" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Chart.html" server="62.244.88.21/deciday/" local="131919461659763055" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---StringTable.php.html" server="62.244.88.21/deciday/" local="131919461667880026" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Worksheet.php.html" server="62.244.88.21/deciday/" local="131919461671532391" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Style.php.html" server="62.244.88.21/deciday/" local="131919461669170744" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Rels.php.html" server="62.244.88.21/deciday/" local="131919461667563517" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007.php.html" server="62.244.88.21/deciday/" local="131919461666312573" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Rels.html" server="62.244.88.21/deciday/" local="131919461666546617" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Drawing.html" server="62.244.88.21/deciday/" local="131919461664850916" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Theme.php.html" server="62.244.88.21/deciday/" local="131919461670175897" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_DocProps.html" server="62.244.88.21/deciday/" local="131919461663530282" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Comments.html" server="62.244.88.21/deciday/" local="131919461661908190" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Style.html" server="62.244.88.21/deciday/" local="131919461668990314" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_ContentTypes.html" server="62.244.88.21/deciday/" local="131919461663345576" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---DocProps.php.html" server="62.244.88.21/deciday/" local="131919461665214408" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_StringTable.html" server="62.244.88.21/deciday/" local="131919461668545518" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Comments.php.html" server="62.244.88.21/deciday/" local="131919461662234678" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Worksheet.html" server="62.244.88.21/deciday/" local="131919461671926197" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Theme.html" server="62.244.88.21/deciday/" local="131919461670362313" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Chart.php.html" server="62.244.88.21/deciday/" local="131919461661437133" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Workbook.php.html" server="62.244.88.21/deciday/" local="131919461671247101" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007.html" server="62.244.88.21/deciday/" local="131919461666738650" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---Drawing.php.html" server="62.244.88.21/deciday/" local="131919461665030286" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_WriterPart.html" server="62.244.88.21/deciday/" local="131919461673989747" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007_Workbook.html" server="62.244.88.21/deciday/" local="131919461670544684" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel2007---WriterPart.php.html" server="62.244.88.21/deciday/" local="131919461673615011" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel2007.html" server="62.244.88.21/deciday_18/" local="131414752607479070" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Chart.html" server="62.244.88.21/deciday_18/" local="131414752603080670" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Comments.html" server="62.244.88.21/deciday_18/" local="131414752608369523" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_ContentTypes.html" server="62.244.88.21/deciday_18/" local="131414752602376948" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_DocProps.html" server="62.244.88.21/deciday_18/" local="131414752609530962" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Drawing.html" server="62.244.88.21/deciday_18/" local="131414752609766177" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Rels.html" server="62.244.88.21/deciday_18/" local="131414752604333876" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_StringTable.html" server="62.244.88.21/deciday_18/" local="131414752606581126" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Style.html" server="62.244.88.21/deciday_18/" local="131414752602863503" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Theme.html" server="62.244.88.21/deciday_18/" local="131414752603494693" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Workbook.html" server="62.244.88.21/deciday_18/" local="131414752602082017" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_Worksheet.html" server="62.244.88.21/deciday_18/" local="131414752605645591" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel2007_WriterPart.html" server="62.244.88.21/deciday_18/" local="131414752603923650" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Chart.php.html" server="62.244.88.21/deciday_18/" local="131414752606804255" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Comments.php.html" server="62.244.88.21/deciday_18/" local="131414752603706453" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---ContentTypes.php.html" server="62.244.88.21/deciday_18/" local="131414752605871043" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---DocProps.php.html" server="62.244.88.21/deciday_18/" local="131414752604559651" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Drawing.php.html" server="62.244.88.21/deciday_18/" local="131414752605043885" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Rels.php.html" server="62.244.88.21/deciday_18/" local="131414752608150918" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---StringTable.php.html" server="62.244.88.21/deciday_18/" local="131414752609979597" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Style.php.html" server="62.244.88.21/deciday_18/" local="131414752606084821" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Theme.php.html" server="62.244.88.21/deciday_18/" local="131414752607022570" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Workbook.php.html" server="62.244.88.21/deciday_18/" local="131414752605423031" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---Worksheet.php.html" server="62.244.88.21/deciday_18/" local="131414752608982430" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007---WriterPart.php.html" server="62.244.88.21/deciday_18/" local="131414752607937112" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel2007.php.html" server="62.244.88.21/deciday_18/" local="131414752608756964" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html new file mode 100644 index 0000000..8684ebf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html @@ -0,0 +1,364 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel5</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel5</h1> +Source Location: /PHPExcel/Writer/Excel5.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Writer_Excel5</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + <p class="implements"> + Implements interfaces: + <ul> + <li><a href="../PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a></li> </ul> + </p> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodgetPreCalculateFormulas">getPreCalculateFormulas</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodsave">save</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodsetPreCalculateFormulas">setPreCalculateFormulas</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodsetTempDir">setTempDir</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel5<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 113]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_Excel5 __construct( +PHPExcel +$phpExcel)</code> + </td></tr></table> + </td></tr></table><br /> + + Create a new PHPExcel_Writer_Excel5<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$phpExcel</b>&nbsp;&nbsp;</td> + <td>PHPExcel object</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetPreCalculateFormulas"></a> + <h3>method getPreCalculateFormulas <span class="smalllinenumber">[line 256]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>boolean getPreCalculateFormulas( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Pre-Calculate Formulas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsave"></a> + <h3>method save <span class="smalllinenumber">[line 125]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void save( +[string +$pFilename = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Save PHPExcel to file<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pFilename</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetPreCalculateFormulas"></a> + <h3>method setPreCalculateFormulas <span class="smalllinenumber">[line 265]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setPreCalculateFormulas( +[boolean +$pValue = true])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Pre-Calculate Formulas<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Pre-Calculate Formulas?</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTempDir"></a> + <h3>method setTempDir <span class="smalllinenumber">[line 247]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a> setTempDir( +[string +$pValue = ''])</code> + </td></tr></table> + </td></tr></table><br /> + + Set temporary storage directory<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>deprecated:</b>&nbsp;&nbsp;</td><td></td> + </tr> + <tr> + <td><b>throws:</b>&nbsp;&nbsp;</td><td>Exception Exception when directory does not exist</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td>Temporary storage directory</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html new file mode 100644 index 0000000..984b2c5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html @@ -0,0 +1,402 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel5_BIFFwriter</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel5_BIFFwriter</h1> +Source Location: /PHPExcel/Writer/Excel5/BIFFwriter.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Writer_Excel5_BIFFwriter</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_data">$_data</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_datasize">$_datasize</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_limit">$_limit</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodgetByteOrder">getByteOrder</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodwriteData">writeData</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodwriteEof">writeEof</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + +<td valign="top"> +<h3>Child classes:</h3> +<div class="tags"> +<dl> +<dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a></dt> + <dd>PHPExcel_Writer_Excel5_Workbook</dd> +</dl> +<dl> +<dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a></dt> + <dd>PHPExcel_Writer_Excel5_Worksheet</dd> +</dl> +</div> +</td> + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 70]<br /> +PHPExcel_Writer_Excel5_BIFFwriter<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_data"></a> + <p></p> + <h4>$_data = <span class="value"></span></h4> + <p>[line 82]</p> + The string containing the data of the BIFF stream<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_datasize"></a> + <p></p> + <h4>$_datasize = <span class="value"></span></h4> + <p>[line 88]</p> + The size of the data in bytes. Should be the same as strlen($this-&gt;_data)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_limit"></a> + <p></p> + <h4>$_limit = <span class="value">&nbsp;8224</span></h4> + <p>[line 95]</p> + The maximum length for a BIFF record (excluding record header and length field). See _addContinue()<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>_addContinue()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + <hr /> + <a name="methodgetByteOrder"></a> + <h3>static method getByteOrder <span class="smalllinenumber">[line 113]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>static int getByteOrder( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Determine the byte order and store it as class data to avoid recalculating it for each call to new().<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 100]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_Excel5_BIFFwriter __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Constructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + <p>Overridden in child classes as:<br /> + <dl> + <dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#method__construct">PHPExcel_Writer_Excel5_Workbook::__construct()</a></dt> + <dd>Class constructor</dd> + </dl> + <dl> + <dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#method__construct">PHPExcel_Writer_Excel5_Worksheet::__construct()</a></dt> + <dd>Constructor</dd> + </dl> + </p> + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteData"></a> + <h3>method writeData <span class="smalllinenumber">[line 154]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeData( +string +$data)</code> + </td></tr></table> + </td></tr></table><br /> + + General storage function like _append, but returns string instead of modifying $this-&gt;_data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$data</b>&nbsp;&nbsp;</td> + <td>binary data to write</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteEof"></a> + <h3>method writeEof <span class="smalllinenumber">[line 209]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void writeEof( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Writes Excel EOF record to indicate the end of a BIFF stream.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:16 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html new file mode 100644 index 0000000..c4d68cd --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html @@ -0,0 +1,291 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel5_Escher</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel5_Escher</h1> +Source Location: /PHPExcel/Writer/Excel5/Escher.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#methodclose">close</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#methodgetSpOffsets">getSpOffsets</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#methodgetSpTypes">getSpTypes</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Shared_Escher_DggContainer_BstoreContainer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 67]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_Excel5_Escher __construct( +mixed +$object)</code> + </td></tr></table> + </td></tr></table><br /> + + Constructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$object</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodclose"></a> + <h3>method close <span class="smalllinenumber">[line 75]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void close( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Process the object to be written<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSpOffsets"></a> + <h3>method getSpOffsets <span class="smalllinenumber">[line 521]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getSpOffsets( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Gets the shape offsets<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetSpTypes"></a> + <h3>method getSpTypes <span class="smalllinenumber">[line 531]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>array getSpTypes( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Gets the shape types<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html new file mode 100644 index 0000000..9223471 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html @@ -0,0 +1,276 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel5_Font</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel5_Font</h1> +Source Location: /PHPExcel/Writer/Excel5/Font.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Writer_Excel5_Font</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html#methodsetColorIndex">setColorIndex</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html#methodwriteFont">writeFont</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 36]<br /> +PHPExcel_Writer_Excel5_Font<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 57]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_Excel5_Font __construct( +[PHPExcel_Style_Font +$font = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Constructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$font</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetColorIndex"></a> + <h3>method setColorIndex <span class="smalllinenumber">[line 68]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setColorIndex( +int +$colorIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the color index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$colorIndex</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteFont"></a> + <h3>method writeFont <span class="smalllinenumber">[line 78]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeFont( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get font record data<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html new file mode 100644 index 0000000..3fd95b4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html @@ -0,0 +1,539 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel5_Parser</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel5_Parser</h1> +Source Location: /PHPExcel/Writer/Excel5/Parser.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Writer_Excel5_Parser</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_current_char">$_current_char</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_current_token">$_current_token</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_ext_sheets">$_ext_sheets</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_formula">$_formula</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_lookahead">$_lookahead</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_parse_tree">$_parse_tree</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_references">$_references</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_consts">Constants</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#constREGEX_SHEET_TITLE_QUOTED">REGEX_SHEET_TITLE_QUOTED</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#constREGEX_SHEET_TITLE_UNQUOTED">REGEX_SHEET_TITLE_UNQUOTED</a></li> + </ul> +</td> + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#methodparse">parse</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#methodsetExtSheet">setExtSheet</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#methodtoReversePolish">toReversePolish</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 60]<br /> +PHPExcel_Writer_Excel5_Parser<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_current_char"></a> + <p></p> + <h4>$_current_char = <span class="value"></span></h4> + <p>[line 80]</p> + The index of the character we are currently looking at<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_current_token"></a> + <p></p> + <h4>$_current_token = <span class="value"></span></h4> + <p>[line 86]</p> + The token we are working on.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_ext_sheets"></a> + <p></p> + <h4>$_ext_sheets = <span class="value"></span></h4> + <p>[line 110]</p> + Array of external sheets<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_formula"></a> + <p></p> + <h4>$_formula = <span class="value"></span></h4> + <p>[line 92]</p> + The formula to parse<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_lookahead"></a> + <p></p> + <h4>$_lookahead = <span class="value"></span></h4> + <p>[line 98]</p> + The character ahead of the current char<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_parse_tree"></a> + <p></p> + <h4>$_parse_tree = <span class="value"></span></h4> + <p>[line 104]</p> + The parse tree to be generated<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>string</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_references"></a> + <p></p> + <h4>$_references = <span class="value"></span></h4> + <p>[line 116]</p> + Array of sheet references in the form of REF structures<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="methodparse"></a> + <h3>method parse <span class="smalllinenumber">[line 1205]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>mixed parse( +string +$formula)</code> + </td></tr></table> + </td></tr></table><br /> + + The parsing method. It parses a formula.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>true on success</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$formula</b>&nbsp;&nbsp;</td> + <td>The formula to parse, without the initial equal sign (=).</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 122]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_Excel5_Parser __construct( +)</code> + </td></tr></table> + </td></tr></table><br /> + + The class constructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetExtSheet"></a> + <h3>method setExtSheet <span class="smalllinenumber">[line 928]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setExtSheet( +string +$name, integer +$index)</code> + </td></tr></table> + </td></tr></table><br /> + + This method is used to update the array of sheet names. It is called by the addWorksheet() method of the PHPExcel_Writer_Excel5_Workbook class.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>PHPExcel_Writer_Excel5_Workbook::addWorksheet()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">string&nbsp;&nbsp;</td> + <td><b>$name</b>&nbsp;&nbsp;</td> + <td>The name of the worksheet being added</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$index</b>&nbsp;&nbsp;</td> + <td>The index of the worksheet being added</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodtoReversePolish"></a> + <h3>method toReversePolish <span class="smalllinenumber">[line 1540]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string toReversePolish( +[array +$tree = array()])</code> + </td></tr></table> + </td></tr></table><br /> + + Builds a string containing the tree in reverse polish notation (What you would use in a HP calculator stack).<br /><br /><p>The following tree:</p><p>+ / \ 2 3</p><p>produces: &quot;23+&quot;</p><p>The following tree:</p><p>+ / \ 3 * / \ 6 A1</p><p>produces: &quot;36A1*+&quot;</p><p>In fact all operands, functions, references, etc... are written as ptg's</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The tree in reverse polish notation</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$tree</b>&nbsp;&nbsp;</td> + <td>The optional tree to convert.</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + +<hr /> +<a name="class_consts"></a> +<h3>Class Constants</h3> +<div class="tags"> + <a name="constREGEX_SHEET_TITLE_QUOTED"></a> + <p></p> + <h4>REGEX_SHEET_TITLE_QUOTED = <span class="value">&nbsp;'(([^\*\:\/\\\\\?\[\]\\\'])+|(\\\'\\\')+)+'</span></h4> + <p>[line 74]</p> + + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="constREGEX_SHEET_TITLE_UNQUOTED"></a> + <p></p> + <h4>REGEX_SHEET_TITLE_UNQUOTED = <span class="value">&nbsp;'[^\*\:\/\\\\\?\[\]\+\-\%&nbsp;\\\'\^\&amp;\&lt;\&gt;\=\,\;\#\(\)\&quot;\{\}]+'</span></h4> + <p>[line 68]</p> + Constants<br /><br /> + <br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:53 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html new file mode 100644 index 0000000..76b467c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html @@ -0,0 +1,605 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel5_Workbook</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel5_Workbook</h1> +Source Location: /PHPExcel/Writer/Excel5/Workbook.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a> + | + --PHPExcel_Writer_Excel5_Workbook</pre><br /> +<div class="description">PHPExcel_Writer_Excel5_Workbook</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_biffsize">$_biffsize</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_codepage">$_codepage</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_country_code">$_country_code</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_palette">$_palette</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodaddXfWriter">addXfWriter</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodgetEscher">getEscher</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodsetEscher">setEscher</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodwriteWorkbook">writeWorkbook</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#method_addFont">_addFont</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_data">PHPExcel_Writer_Excel5_BIFFwriter::$_data</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_datasize">PHPExcel_Writer_Excel5_BIFFwriter::$_datasize</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_limit">PHPExcel_Writer_Excel5_BIFFwriter::$_limit</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#method__construct">PHPExcel_Writer_Excel5_BIFFwriter::__construct()</a> + </dt> + <dd> + Constructor + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodgetByteOrder">PHPExcel_Writer_Excel5_BIFFwriter::getByteOrder()</a> + </dt> + <dd> + Determine the byte order and store it as class data to avoid recalculating it for each call to new(). + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodwriteData">PHPExcel_Writer_Excel5_BIFFwriter::writeData()</a> + </dt> + <dd> + General storage function like _append, but returns string instead of modifying $this-&gt;_data + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodwriteEof">PHPExcel_Writer_Excel5_BIFFwriter::writeEof()</a> + </dt> + <dd> + Writes Excel EOF record to indicate the end of a BIFF stream. + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 71]<br /> +PHPExcel_Writer_Excel5_Workbook<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_biffsize"></a> + <p></p> + <h4>$_biffsize = <span class="value"></span></h4> + <p>[line 85]</p> + The BIFF file size for the workbook.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>_calcSheetOffsets()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_codepage"></a> + <p></p> + <h4>$_codepage = <span class="value"></span></h4> + <p>[line 103]</p> + The codepage indicates the text encoding used for strings<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_country_code"></a> + <p></p> + <h4>$_country_code = <span class="value"></span></h4> + <p>[line 109]</p> + The country code used for localization<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_palette"></a> + <p></p> + <h4>$_palette = <span class="value"></span></h4> + <p>[line 97]</p> + Array containing the colour palette<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 203]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_Excel5_Workbook __construct( +[PHPExcel +$phpExcel = null], int +&$str_total, int +&$str_unique, array +&$str_table, array +&$colors, mixed +$parser)</code> + </td></tr></table> + </td></tr></table><br /> + + Class constructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#method__construct">PHPExcel_Writer_Excel5_BIFFwriter::__construct()</a> (Constructor)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel/PHPExcel.html">PHPExcel</a>&nbsp;&nbsp;</td> + <td><b>$phpExcel</b>&nbsp;&nbsp;</td> + <td>The Workbook</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>&$str_total</b>&nbsp;&nbsp;</td> + <td>Total number of strings</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>&$str_unique</b>&nbsp;&nbsp;</td> + <td>Total number of unique strings</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>&$str_table</b>&nbsp;&nbsp;</td> + <td>String Table</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>&$colors</b>&nbsp;&nbsp;</td> + <td>Colour Table</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$parser</b>&nbsp;&nbsp;</td> + <td>The formula parser created for the Workbook</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodaddXfWriter"></a> + <h3>method addXfWriter <span class="smalllinenumber">[line 253]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int addXfWriter( +<a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> +$style, [boolean +$isStyleXf = false])</code> + </td></tr></table> + </td></tr></table><br /> + + Add a new XF writer<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Index to XF record</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$style</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$isStyleXf</b>&nbsp;&nbsp;</td> + <td>Is it a style XF?</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEscher"></a> + <h3>method getEscher <span class="smalllinenumber">[line 1435]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a> getEscher( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Escher object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetEscher"></a> + <h3>method setEscher <span class="smalllinenumber">[line 1445]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setEscher( +[PHPExcel_Shared_Escher +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Escher object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteWorkbook"></a> + <h3>method writeWorkbook <span class="smalllinenumber">[line 425]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeWorkbook( +[array +$pWorksheetSizes = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Assemble worksheets into a workbook and send the BIFF data to an OLE storage.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Binary data for workbook stream</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>$pWorksheetSizes</b>&nbsp;&nbsp;</td> + <td>The sizes in bytes of the binary worksheet streams</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="method_addFont"></a> + <h3>method _addFont <span class="smalllinenumber">[line 303]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>int _addFont( +PHPExcel_Style_Font +$font)</code> + </td></tr></table> + </td></tr></table><br /> + + Add a font to added fonts<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>Index to FONT record</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a>&nbsp;&nbsp;</td> + <td><b>$font</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html new file mode 100644 index 0000000..8814302 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html @@ -0,0 +1,918 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel5_Worksheet</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel5_Worksheet</h1> +Source Location: /PHPExcel/Writer/Excel5/Worksheet.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a> + | + --PHPExcel_Writer_Excel5_Worksheet</pre><br /> +<div class="description">PHPExcel_Writer_Excel5_Worksheet</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_active_pane">$_active_pane</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_colinfo">$_colinfo</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_fntHashIndex">$_fntHashIndex</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_below">$_outline_below</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_on">$_outline_on</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_right">$_outline_right</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_style">$_outline_style</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_phpSheet">$_phpSheet</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_selection">$_selection</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_str_table">$_str_table</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_str_total">$_str_total</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_str_unique">$_str_unique</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_xls_strmax">$_xls_strmax</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodclose">close</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodgetData">getData</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodgetEscher">getEscher</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodinsertBitmap">insertBitmap</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodprintRowColHeaders">printRowColHeaders</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodsetEscher">setEscher</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodsetOutline">setOutline</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + +<td valign="top"> +<h3>Inherited Variables</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a></h4> +<dl> +<dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_data">PHPExcel_Writer_Excel5_BIFFwriter::$_data</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_datasize">PHPExcel_Writer_Excel5_BIFFwriter::$_datasize</a> + </dt> +<dd> + +</dd> +<dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_limit">PHPExcel_Writer_Excel5_BIFFwriter::$_limit</a> + </dt> +<dd> + +</dd> +</dl> +</div> +</td> + +<td valign="top"> +<h3>Inherited Methods</h3> +<div class="tags"> +<h4>Class: <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a></h4> +<dl> + <dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#method__construct">PHPExcel_Writer_Excel5_BIFFwriter::__construct()</a> + </dt> + <dd> + Constructor + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodgetByteOrder">PHPExcel_Writer_Excel5_BIFFwriter::getByteOrder()</a> + </dt> + <dd> + Determine the byte order and store it as class data to avoid recalculating it for each call to new(). + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodwriteData">PHPExcel_Writer_Excel5_BIFFwriter::writeData()</a> + </dt> + <dd> + General storage function like _append, but returns string instead of modifying $this-&gt;_data + </dd> + <dt> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodwriteEof">PHPExcel_Writer_Excel5_BIFFwriter::writeEof()</a> + </dt> + <dd> + Writes Excel EOF record to indicate the end of a BIFF stream. + </dd> + </dl> +</div> +</td> + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 71]<br /> +PHPExcel_Writer_Excel5_Worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_active_pane"></a> + <p></p> + <h4>$_active_pane = <span class="value"></span></h4> + <p>[line 102]</p> + The active pane for the worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_colinfo"></a> + <p></p> + <h4>$_colinfo = <span class="value"></span></h4> + <p>[line 90]</p> + Array containing format information for columns<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_fntHashIndex"></a> + <p></p> + <h4>$_fntHashIndex = <span class="value"></span></h4> + <p>[line 200]</p> + Array of font hashes associated to FONT records index<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_outline_below"></a> + <p></p> + <h4>$_outline_below = <span class="value"></span></h4> + <p>[line 120]</p> + Whether to have outline summary below.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>bool</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_outline_on"></a> + <p></p> + <h4>$_outline_on = <span class="value"></span></h4> + <p>[line 108]</p> + Whether to use outline.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_outline_right"></a> + <p></p> + <h4>$_outline_right = <span class="value"></span></h4> + <p>[line 126]</p> + Whether to have outline summary at the right.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>bool</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_outline_style"></a> + <p></p> + <h4>$_outline_style = <span class="value"></span></h4> + <p>[line 114]</p> + Auto outline styles.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>bool</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_phpSheet"></a> + <p></p> + <h4>$_phpSheet = <span class="value"></span></h4> + <p>[line 179]</p> + Sheet object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a></td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_selection"></a> + <p></p> + <h4>$_selection = <span class="value"></span></h4> + <p>[line 96]</p> + Array containing the selected area for the worksheet<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_str_table"></a> + <p></p> + <h4>$_str_table = <span class="value"></span></h4> + <p>[line 144]</p> + Reference to the array containing all the unique strings in the workbook<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>array</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_str_total"></a> + <p></p> + <h4>$_str_total = <span class="value"></span></h4> + <p>[line 132]</p> + Reference to the total number of strings in the workbook<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_str_unique"></a> + <p></p> + <h4>$_str_unique = <span class="value"></span></h4> + <p>[line 138]</p> + Reference to the number of unique strings in the workbook<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_xls_strmax"></a> + <p></p> + <h4>$_xls_strmax = <span class="value"></span></h4> + <p>[line 84]</p> + Maximum number of characters for a string (LABEL record in BIFF5)<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 214]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_Excel5_Worksheet __construct( +int +&$str_total, int +&$str_unique, array +&$str_table, array +&$colors, mixed +$parser, boolean +$preCalculateFormulas, <a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> +$phpSheet)</code> + </td></tr></table> + </td></tr></table><br /> + + Constructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + Overrides <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#method__construct">PHPExcel_Writer_Excel5_BIFFwriter::__construct()</a> (Constructor)<br /><br /> + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>&$str_total</b>&nbsp;&nbsp;</td> + <td>Total number of strings</td> + </tr> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>&$str_unique</b>&nbsp;&nbsp;</td> + <td>Total number of unique strings</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>&$str_table</b>&nbsp;&nbsp;</td> + <td>String Table</td> + </tr> + <tr> + <td class="type">array&nbsp;&nbsp;</td> + <td><b>&$colors</b>&nbsp;&nbsp;</td> + <td>Colour Table</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$parser</b>&nbsp;&nbsp;</td> + <td>The formula parser created for the Workbook</td> + </tr> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$preCalculateFormulas</b>&nbsp;&nbsp;</td> + <td>Flag indicating whether formulas should be calculated or just written</td> + </tr> + <tr> + <td class="type"><a href="../PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a>&nbsp;&nbsp;</td> + <td><b>$phpSheet</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodclose"></a> + <h3>method close <span class="smalllinenumber">[line 276]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void close( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Add data to the beginning of the workbook (note the reverse order) and to the end of the workbook.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>see:</b>&nbsp;&nbsp;</td><td>PHPExcel_Writer_Excel5_Workbook::storeWorkbook()</td> + </tr> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetData"></a> + <h3>method getData <span class="smalllinenumber">[line 556]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string getData( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Retrieves data from memory in one chunk, or from disk in $buffer sized chunks.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The data</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodgetEscher"></a> + <h3>method getEscher <span class="smalllinenumber">[line 2679]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a> getEscher( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Get Escher object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodinsertBitmap"></a> + <h3>method insertBitmap <span class="smalllinenumber">[line 2330]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void insertBitmap( +integer +$row, integer +$col, mixed +$bitmap, [integer +$x = 0], [integer +$y = 0], [float +$scale_x = 1], [float +$scale_y = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Insert a 24bit bitmap image in a worksheet.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$row</b>&nbsp;&nbsp;</td> + <td>The row we are going to insert the bitmap into</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$col</b>&nbsp;&nbsp;</td> + <td>The column we are going to insert the bitmap into</td> + </tr> + <tr> + <td class="type">mixed&nbsp;&nbsp;</td> + <td><b>$bitmap</b>&nbsp;&nbsp;</td> + <td>The bitmap filename or GD-image resource</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$x</b>&nbsp;&nbsp;</td> + <td>The horizontal position (offset) of the image inside the cell.</td> + </tr> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$y</b>&nbsp;&nbsp;</td> + <td>The vertical position (offset) of the image inside the cell.</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$scale_x</b>&nbsp;&nbsp;</td> + <td>The horizontal scale</td> + </tr> + <tr> + <td class="type">float&nbsp;&nbsp;</td> + <td><b>$scale_y</b>&nbsp;&nbsp;</td> + <td>The vertical scale</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodprintRowColHeaders"></a> + <h3>method printRowColHeaders <span class="smalllinenumber">[line 576]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void printRowColHeaders( +[integer +$print = 1])</code> + </td></tr></table> + </td></tr></table><br /> + + Set the option to print the row and column headers on the printed page.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$print</b>&nbsp;&nbsp;</td> + <td>Whether to print the headers or not. Defaults to 1 (print).</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetEscher"></a> + <h3>method setEscher <span class="smalllinenumber">[line 2689]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setEscher( +[PHPExcel_Shared_Escher +$pValue = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Set Escher object<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a>&nbsp;&nbsp;</td> + <td><b>$pValue</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetOutline"></a> + <h3>method setOutline <span class="smalllinenumber">[line 590]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setOutline( +[bool +$visible = true], [bool +$symbols_below = true], [bool +$symbols_right = true], [bool +$auto_style = false])</code> + </td></tr></table> + </td></tr></table><br /> + + This method sets the properties for outlining and grouping. The defaults correspond to Excel's defaults.<br /><br /><br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$visible</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$symbols_below</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$symbols_right</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + <tr> + <td class="type">bool&nbsp;&nbsp;</td> + <td><b>$auto_style</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:17 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html new file mode 100644 index 0000000..dfd33cb --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html @@ -0,0 +1,819 @@ +<html> +<head> +<title>Docs For Class PHPExcel_Writer_Excel5_Xf</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class: PHPExcel_Writer_Excel5_Xf</h1> +Source Location: /PHPExcel/Writer/Excel5/Xf.php<br /><br /> + + +<table width="100%" border="0"> +<tr><td valign="top"> + +<h3><a href="#class_details">Class Overview</a></h3> +<pre></pre><br /> +<div class="description">PHPExcel_Writer_Excel5_Xf</div><br /><br /> +<h4>Author(s):</h4> +<ul> + </ul> + + + + + + + +<h4>Copyright:</h4> +<ul> + <li>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</li> +</ul> + +</td> + +<td valign="top"> +<h3><a href="#class_vars">Variables</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_bg_color">$_bg_color</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_bottom_color">$_bottom_color</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_fg_color">$_fg_color</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_left_color">$_left_color</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_numberFormatIndex">$_numberFormatIndex</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_right_color">$_right_color</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_text_justlast">$_text_justlast</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_top_color">$_top_color</a></li> + </ul> +</td> + + +<td valign="top"> +<h3><a href="#class_methods">Methods</a></h3> +<ul> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#method__construct">__construct</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetBgColor">setBgColor</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetBottomColor">setBottomColor</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetDiagColor">setDiagColor</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetFgColor">setFgColor</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetFontIndex">setFontIndex</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetIsStyleXf">setIsStyleXf</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetLeftColor">setLeftColor</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetNumberFormatIndex">setNumberFormatIndex</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetRightColor">setRightColor</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetTopColor">setTopColor</a></li> + <li><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodwriteXf">writeXf</a></li> + </ul> +</td> + +</tr></table> +<hr /> + +<table width="100%" border="0"><tr> + + + + + + +</tr></table> +<hr /> + +<a name="class_details"></a> +<h3>Class Details</h3> +<div class="tags"> +[line 71]<br /> +PHPExcel_Writer_Excel5_Xf<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> +</table> +</div> +</div><br /><br /> +<div class="top">[ <a href="#top">Top</a> ]</div><br /> + +<hr /> +<a name="class_vars"></a> +<h3>Class Variables</h3> +<div class="tags"> + <a name="var$_bg_color"></a> + <p></p> + <h4>$_bg_color = <span class="value"></span></h4> + <p>[line 108]</p> + The cell's background color.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_bottom_color"></a> + <p></p> + <h4>$_bottom_color = <span class="value"></span></h4> + <p>[line 114]</p> + Color of the bottom border of the cell.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_fg_color"></a> + <p></p> + <h4>$_fg_color = <span class="value"></span></h4> + <p>[line 102]</p> + The cell's foreground color.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_left_color"></a> + <p></p> + <h4>$_left_color = <span class="value"></span></h4> + <p>[line 126]</p> + Color of the left border of the cell.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_numberFormatIndex"></a> + <p></p> + <h4>$_numberFormatIndex = <span class="value"></span></h4> + <p>[line 90]</p> + An index (2 bytes) to a FORMAT record (number format).<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_right_color"></a> + <p></p> + <h4>$_right_color = <span class="value"></span></h4> + <p>[line 132]</p> + Color of the right border of the cell.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_text_justlast"></a> + <p></p> + <h4>$_text_justlast = <span class="value"></span></h4> + <p>[line 96]</p> + 1 bit, apparently not used.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> + <a name="var$_top_color"></a> + <p></p> + <h4>$_top_color = <span class="value"></span></h4> + <p>[line 120]</p> + Color of the top border of the cell.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> + + <br /> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>Type:</b>&nbsp;&nbsp;</td> + <td>integer</td> + </tr> + </table> + </div><br /><br /> + <div class="top">[ <a href="#top">Top</a> ]</div><br /> +</div><br /> + +<hr /> +<a name="class_methods"></a> +<h3>Class Methods</h3> +<div class="tags"> + + <hr /> + <a name="method__construct"></a> + <h3>constructor __construct <span class="smalllinenumber">[line 140]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>PHPExcel_Writer_Excel5_Xf __construct( +[PHPExcel_Style +$style = null])</code> + </td></tr></table> + </td></tr></table><br /> + + Constructor<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type"><a href="../PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a>&nbsp;&nbsp;</td> + <td><b>$style</b>&nbsp;&nbsp;</td> + <td>The XF format</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBgColor"></a> + <h3>method setBgColor <span class="smalllinenumber">[line 352]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setBgColor( +int +$colorIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Sets the cell's background color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$colorIndex</b>&nbsp;&nbsp;</td> + <td>Color index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetBottomColor"></a> + <h3>method setBottomColor <span class="smalllinenumber">[line 285]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setBottomColor( +int +$colorIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Sets the cell's bottom border color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$colorIndex</b>&nbsp;&nbsp;</td> + <td>Color index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetDiagColor"></a> + <h3>method setDiagColor <span class="smalllinenumber">[line 329]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setDiagColor( +int +$colorIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Sets the cell's diagonal border color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$colorIndex</b>&nbsp;&nbsp;</td> + <td>Color index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFgColor"></a> + <h3>method setFgColor <span class="smalllinenumber">[line 341]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setFgColor( +int +$colorIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Sets the cell's foreground color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$colorIndex</b>&nbsp;&nbsp;</td> + <td>Color index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetFontIndex"></a> + <h3>method setFontIndex <span class="smalllinenumber">[line 374]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setFontIndex( +int +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Set the font index.<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td>Font index, note that value 4 does not exist</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetIsStyleXf"></a> + <h3>method setIsStyleXf <span class="smalllinenumber">[line 274]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setIsStyleXf( +boolean +$value)</code> + </td></tr></table> + </td></tr></table><br /> + + Is this a style XF ?<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">boolean&nbsp;&nbsp;</td> + <td><b>$value</b>&nbsp;&nbsp;</td> + <td></td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetLeftColor"></a> + <h3>method setLeftColor <span class="smalllinenumber">[line 307]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setLeftColor( +int +$colorIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Sets the cell's left border color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$colorIndex</b>&nbsp;&nbsp;</td> + <td>Color index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetNumberFormatIndex"></a> + <h3>method setNumberFormatIndex <span class="smalllinenumber">[line 364]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setNumberFormatIndex( +integer +$numberFormatIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Sets the index to the number format record It can be date, time, currency, etc...<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">integer&nbsp;&nbsp;</td> + <td><b>$numberFormatIndex</b>&nbsp;&nbsp;</td> + <td>Index to format record</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetRightColor"></a> + <h3>method setRightColor <span class="smalllinenumber">[line 318]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setRightColor( +int +$colorIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Sets the cell's right border color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$colorIndex</b>&nbsp;&nbsp;</td> + <td>Color index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodsetTopColor"></a> + <h3>method setTopColor <span class="smalllinenumber">[line 296]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>void setTopColor( +int +$colorIndex)</code> + </td></tr></table> + </td></tr></table><br /> + + Sets the cell's top border color<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>access:</b>&nbsp;&nbsp;</td><td>public</td> + </tr> +</table> +</div> +<br /><br /> + + + <h4>Parameters:</h4> + <div class="tags"> + <table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td class="type">int&nbsp;&nbsp;</td> + <td><b>$colorIndex</b>&nbsp;&nbsp;</td> + <td>Color index</td> + </tr> + </table> + </div><br /> + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> + <hr /> + <a name="methodwriteXf"></a> + <h3>method writeXf <span class="smalllinenumber">[line 169]</span></h3> + <div class="function"> + <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> + <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> + <code>string writeXf( +)</code> + </td></tr></table> + </td></tr></table><br /> + + Generate an Excel BIFF XF record (style or cell).<br /><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>return:</b>&nbsp;&nbsp;</td><td>The XF record</td> + </tr> +</table> +</div> +<br /><br /> + + + <div class="top">[ <a href="#top">Top</a> ]</div> + </div> +</div><br /> + + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html new file mode 100644 index 0000000..381eb6f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page BIFFwriter.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: BIFFwriter.php</h1> +Source Location: /PHPExcel/Writer/Excel5/BIFFwriter.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a></dt> + <dd>PHPExcel_Writer_Excel5_BIFFwriter</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:16 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html new file mode 100644 index 0000000..ddb199a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page Escher.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Escher.php</h1> +Source Location: /PHPExcel/Writer/Excel5/Escher.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a></dt> + <dd>PHPExcel_Shared_Escher_DggContainer_BstoreContainer</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:11 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html new file mode 100644 index 0000000..16e718f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page Font.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Font.php</h1> +Source Location: /PHPExcel/Writer/Excel5/Font.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a></dt> + <dd>PHPExcel_Writer_Excel5_Font</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html new file mode 100644 index 0000000..5daa3c5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page Parser.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Parser.php</h1> +Source Location: /PHPExcel/Writer/Excel5/Parser.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a></dt> + <dd>PHPExcel_Writer_Excel5_Parser</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:53 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html new file mode 100644 index 0000000..36ae7d0 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page Workbook.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Workbook.php</h1> +Source Location: /PHPExcel/Writer/Excel5/Workbook.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a></dt> + <dd>PHPExcel_Writer_Excel5_Workbook</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html new file mode 100644 index 0000000..675d73f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page Worksheet.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Worksheet.php</h1> +Source Location: /PHPExcel/Writer/Excel5/Worksheet.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a></dt> + <dd>PHPExcel_Writer_Excel5_Worksheet</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:17 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html new file mode 100644 index 0000000..c0def33 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page Xf.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Xf.php</h1> +Source Location: /PHPExcel/Writer/Excel5/Xf.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a></dt> + <dd>PHPExcel_Writer_Excel5_Xf</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:18 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html new file mode 100644 index 0000000..56ae8a9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html @@ -0,0 +1,136 @@ +<html> +<head> +<title>Docs for page Excel5.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="../PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Procedural File: Excel5.php</h1> +Source Location: /PHPExcel/Writer/Excel5.php<br /><br /> + +<br> +<br> + +<div class="contents"> +<h2>Classes:</h2> +<dt><a href="../PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a></dt> + <dd>PHPExcel_Writer_Excel5</dd> +</div><br /><br /> + +<h2>Page Details:</h2> +PHPExcel<br /><br /><p>Copyright (c) 2006 - 2012 PHPExcel</p><p>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.</p><p>This library 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.</p><p>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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA</p><br /><br /><br /> +<h4>Tags:</h4> +<div class="tags"> +<table border="0" cellspacing="0" cellpadding="0"> + <tr> + <td><b>version:</b>&nbsp;&nbsp;</td><td>1.7.8, 2012-10-12</td> + </tr> + <tr> + <td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel)</td> + </tr> + <tr> + <td><b>license:</b>&nbsp;&nbsp;</td><td><a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</a></td> + </tr> +</table> +</div> +<br /><br /> +<br /><br /> +<br /><br /> +<br /> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:13 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_notes/dwsync.xml new file mode 100644 index 0000000..4e82b4e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/PHPExcel_Writer_Excel5/_notes/dwsync.xml @@ -0,0 +1,115 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="PHPExcel_Writer_Excel5.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_BIFFwriter.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Escher.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Font.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Parser.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Workbook.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Worksheet.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Xf.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---BIFFwriter.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Escher.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Font.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Parser.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Workbook.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Worksheet.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Xf.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Escher.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Parser.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Workbook.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Worksheet.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Xf.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---BIFFwriter.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Font.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Escher.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Worksheet.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Xf.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Parser.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Workbook.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_BIFFwriter.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Font.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Escher.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Parser.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Workbook.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Worksheet.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Xf.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---BIFFwriter.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Font.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Escher.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Worksheet.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="_PHPExcel---Writer---Excel5---Xf.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Parser.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Workbook.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_BIFFwriter.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Font.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997101000000000" Dst="-1" /> +<file name="PHPExcel_Writer_Excel5_Escher.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560310918763" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---Parser.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560311366477" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---Workbook.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560311832291" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Worksheet.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560312312757" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Xf.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560312732029" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560313176590" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---BIFFwriter.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560313572496" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---Font.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560313970696" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560314391661" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---Escher.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560314814943" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---Worksheet.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560315244986" remote="131260197000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---Xf.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560315714982" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Parser.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560316527208" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Workbook.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560318655197" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_BIFFwriter.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560319081525" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Font.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560319531699" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Escher.html" server="62.244.88.21/amashow/" local="131414752666270740" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Parser.php.html" server="62.244.88.21/amashow/" local="131414752666641001" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Workbook.php.html" server="62.244.88.21/amashow/" local="131414752667067150" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_Worksheet.html" server="62.244.88.21/amashow/" local="131414752667545980" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_Xf.html" server="62.244.88.21/amashow/" local="131414752667951136" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5.html" server="62.244.88.21/amashow/" local="131414752668413772" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---BIFFwriter.php.html" server="62.244.88.21/amashow/" local="131414752668626209" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Font.php.html" server="62.244.88.21/amashow/" local="131414752669059541" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5.php.html" server="62.244.88.21/amashow/" local="131414752669273225" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Escher.php.html" server="62.244.88.21/amashow/" local="131414752669509119" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Worksheet.php.html" server="62.244.88.21/amashow/" local="131414752669725124" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Xf.php.html" server="62.244.88.21/amashow/" local="131414752669947795" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_Parser.html" server="62.244.88.21/amashow/" local="131414752670195796" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_Workbook.html" server="62.244.88.21/amashow/" local="131414752670447769" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_BIFFwriter.html" server="62.244.88.21/amashow/" local="131414752670905406" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_Font.html" server="62.244.88.21/amashow/" local="131414752671161396" remote="131414681400000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Parser.php.html" server="62.244.88.21/deciday/" local="131919461684246003" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Font.html" server="62.244.88.21/deciday/" local="131919461683171073" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---Workbook.php.html" server="62.244.88.21/deciday/" local="131919461685455074" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Worksheet.html" server="62.244.88.21/deciday/" local="131919461686285412" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---BIFFwriter.php.html" server="62.244.88.21/deciday/" local="131919461679818649" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---Worksheet.php.html" server="62.244.88.21/deciday/" local="131919461686472536" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---Xf.php.html" server="62.244.88.21/deciday/" local="131919461687308907" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---Font.php.html" server="62.244.88.21/deciday/" local="131919461683182595" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Xf.html" server="62.244.88.21/deciday/" local="131919461687499967" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Workbook.html" server="62.244.88.21/deciday/" local="131919461685643911" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5---Escher.php.html" server="62.244.88.21/deciday/" local="131919461679483014" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_BIFFwriter.html" server="62.244.88.21/deciday/" local="131919461673802396" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Parser.html" server="62.244.88.21/deciday/" local="131919461684628715" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5.html" server="62.244.88.21/deciday/" local="131919461682832433" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5_Escher.html" server="62.244.88.21/deciday/" local="131919461679827715" remote="131826018000000000" Dst="1" /> +<file name="_PHPExcel---Writer---Excel5.php.html" server="62.244.88.21/deciday/" local="131919461684434387" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel_Writer_Excel5.html" server="62.244.88.21/deciday_18/" local="131414752668413772" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_BIFFwriter.html" server="62.244.88.21/deciday_18/" local="131414752670905406" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_Escher.html" server="62.244.88.21/deciday_18/" local="131414752666270740" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_Font.html" server="62.244.88.21/deciday_18/" local="131414752671161396" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_Parser.html" server="62.244.88.21/deciday_18/" local="131414752670195796" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_Workbook.html" server="62.244.88.21/deciday_18/" local="131414752670447769" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_Worksheet.html" server="62.244.88.21/deciday_18/" local="131414752667545980" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel_Writer_Excel5_Xf.html" server="62.244.88.21/deciday_18/" local="131414752667951136" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---BIFFwriter.php.html" server="62.244.88.21/deciday_18/" local="131414752668626209" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Font.php.html" server="62.244.88.21/deciday_18/" local="131414752669059541" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Parser.php.html" server="62.244.88.21/deciday_18/" local="131414752666641001" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Escher.php.html" server="62.244.88.21/deciday_18/" local="131414752669509119" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Workbook.php.html" server="62.244.88.21/deciday_18/" local="131414752667067150" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Worksheet.php.html" server="62.244.88.21/deciday_18/" local="131414752669725124" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5---Xf.php.html" server="62.244.88.21/deciday_18/" local="131414752669947795" remote="131825946000000000" Dst="2" /> +<file name="_PHPExcel---Writer---Excel5.php.html" server="62.244.88.21/deciday_18/" local="131414752669273225" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/__filesource/_notes/dwsync.xml new file mode 100644 index 0000000..8df3c4e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/_notes/dwsync.xml @@ -0,0 +1,108 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851699999999" remote="129984144600000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851699999999" remote="129984144600000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851699999999" remote="129984144600000000" Dst="-1" /> +<file name="fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851699999999" remote="129984144600000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851699999999" remote="129984144600000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851699999999" remote="129984144600000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851699999999" remote="129984144600000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851699999999" remote="129984144600000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851699999999" remote="129984145200000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851699999999" remote="129984145200000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851699999999" remote="129984145200000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851699999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851699999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851699999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851699999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851699999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851699999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851699999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851699999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851699999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851699999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851699999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997100400000000" Dst="-1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560280797977" remote="131260197000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560282375398" remote="131260197000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560281713334" remote="131260197000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560284671017" remote="131260197000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560289064543" remote="131260197000000000" Dst="1" /> +<file name="fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560284227135" remote="131260197000000000" Dst="1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560290180080" remote="131260197000000000" Dst="1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560289676937" remote="131260197000000000" Dst="1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560291777260" remote="131260197000000000" Dst="1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560291121716" remote="131260197000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560293726937" remote="131260197000000000" Dst="1" /> +<file name="fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560294171232" remote="131260197000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560294656439" remote="131260197000000000" Dst="1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560293246965" remote="131260197000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560288636644" remote="131260197000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html" server="62.244.88.21/amashow/" local="131414752642756574" remote="131414681400000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html" server="62.244.88.21/amashow/" local="131414752643348296" remote="131414681400000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html" server="62.244.88.21/amashow/" local="131414752644048418" remote="131414681400000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html" server="62.244.88.21/amashow/" local="131414752645501909" remote="131414681400000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html" server="62.244.88.21/amashow/" local="131414752647717869" remote="131414681400000000" Dst="2" /> +<file name="fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html" server="62.244.88.21/amashow/" local="131414752645010215" remote="131414681400000000" Dst="2" /> +<file name="fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html" server="62.244.88.21/amashow/" local="131414752648295411" remote="131414681400000000" Dst="2" /> +<file name="fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html" server="62.244.88.21/amashow/" local="131414752648022341" remote="131414681400000000" Dst="2" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html" server="62.244.88.21/amashow/" local="131414752649082305" remote="131414681400000000" Dst="2" /> +<file name="fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html" server="62.244.88.21/amashow/" local="131414752648768518" remote="131414681400000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html" server="62.244.88.21/amashow/" local="131414752650290957" remote="131414681400000000" Dst="2" /> +<file name="fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html" server="62.244.88.21/amashow/" local="131414752650737257" remote="131414681400000000" Dst="2" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html" server="62.244.88.21/amashow/" local="131414752649775123" remote="131414681400000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html" server="62.244.88.21/amashow/" local="131414752651010970" remote="131414681400000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html" server="62.244.88.21/amashow/" local="131414752647239885" remote="131414681400000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html" server="62.244.88.21/deciday/" local="131919461427935818" remote="131826018000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html" server="62.244.88.21/deciday/" local="131919461432944255" remote="131826018000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html" server="62.244.88.21/deciday/" local="131919461427682999" remote="131826018000000000" Dst="1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html" server="62.244.88.21/deciday/" local="131919461407801752" remote="131826018000000000" Dst="1" /> +<file name="fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html" server="62.244.88.21/deciday/" local="131919461425382334" remote="131826018000000000" Dst="1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html" server="62.244.88.21/deciday/" local="131919461417829429" remote="131826018000000000" Dst="1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html" server="62.244.88.21/deciday/" local="131919461409949123" remote="131826018000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html" server="62.244.88.21/deciday/" local="131919461424287844" remote="131826018000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html" server="62.244.88.21/deciday/" local="131919461426290169" remote="131826018000000000" Dst="1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html" server="62.244.88.21/deciday/" local="131919461416898515" remote="131826018000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html" server="62.244.88.21/deciday/" local="131919461429074866" remote="131826018000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html" server="62.244.88.21/deciday/" local="131919461475315797" remote="131826018000000000" Dst="1" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html" server="62.244.88.21/deciday/" local="131919461435597036" remote="131826018000000000" Dst="1" /> +<file name="fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html" server="62.244.88.21/deciday/" local="131919461426042372" remote="131826018000000000" Dst="1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html" server="62.244.88.21/deciday/" local="131919461417390887" remote="131826018000000000" Dst="1" /> +<file name="fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html" server="62.244.88.21/deciday_18/" local="131414752648295411" remote="131825946000000000" Dst="2" /> +<file name="fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html" server="62.244.88.21/deciday_18/" local="131414752648022341" remote="131825946000000000" Dst="2" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html" server="62.244.88.21/deciday_18/" local="131414752649082305" remote="131825946000000000" Dst="2" /> +<file name="fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html" server="62.244.88.21/deciday_18/" local="131414752649775123" remote="131825946000000000" Dst="2" /> +<file name="fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html" server="62.244.88.21/deciday_18/" local="131414752648768518" remote="131825946000000000" Dst="2" /> +<file name="fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html" server="62.244.88.21/deciday_18/" local="131414752650737257" remote="131825946000000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html" server="62.244.88.21/deciday_18/" local="131414752642756574" remote="131825946000000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html" server="62.244.88.21/deciday_18/" local="131414752647717869" remote="131825946000000000" Dst="2" /> +<file name="fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html" server="62.244.88.21/deciday_18/" local="131414752645010215" remote="131825946000000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html" server="62.244.88.21/deciday_18/" local="131414752644048418" remote="131825946000000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html" server="62.244.88.21/deciday_18/" local="131414752650290957" remote="131825946000000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html" server="62.244.88.21/deciday_18/" local="131414752651010970" remote="131825946000000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html" server="62.244.88.21/deciday_18/" local="131414752645501909" remote="131825946000000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html" server="62.244.88.21/deciday_18/" local="131414752643348296" remote="131825946000000000" Dst="2" /> +<file name="fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html" server="62.244.88.21/deciday_18/" local="131414752647239885" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html new file mode 100644 index 0000000..f36d4be --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMACholeskyDecomposition.php.html @@ -0,0 +1,227 @@ +<html> +<head> +<title>File Source for CholeskyDecomposition.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file CholeskyDecomposition.php</h1> +<p>Documentation is available at <a href="../JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html">CholeskyDecomposition.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;JAMA</span></div></li> +<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cholesky&nbsp;decomposition&nbsp;class</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;For&nbsp;a&nbsp;symmetric,&nbsp;positive&nbsp;definite&nbsp;matrix&nbsp;A,&nbsp;the&nbsp;Cholesky&nbsp;decomposition</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is&nbsp;an&nbsp;lower&nbsp;triangular&nbsp;matrix&nbsp;L&nbsp;so&nbsp;that&nbsp;A&nbsp;=&nbsp;L*L'.</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If&nbsp;the&nbsp;matrix&nbsp;is&nbsp;not&nbsp;symmetric&nbsp;or&nbsp;positive&nbsp;definite,&nbsp;the&nbsp;constructor</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;returns&nbsp;a&nbsp;partial&nbsp;decomposition&nbsp;and&nbsp;sets&nbsp;an&nbsp;internal&nbsp;flag&nbsp;that&nbsp;may</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;be&nbsp;queried&nbsp;by&nbsp;the&nbsp;isSPD()&nbsp;method.</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Paul&nbsp;Meagher</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Michael&nbsp;Bommarito</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;1.2</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-key">class&nbsp;</span><a href="../JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a>&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a19"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a20"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Decomposition&nbsp;storage</span></div></li> +<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$L&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a26"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Matrix&nbsp;row&nbsp;and&nbsp;column&nbsp;dimension</span></div></li> +<li><div class="src-line"><a name="a29"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">int&nbsp;</span></div></li> +<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$m</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a33"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Symmetric&nbsp;positive&nbsp;definite&nbsp;flag</span></div></li> +<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span></div></li> +<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a38"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$isspd&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a40"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a41"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;CholeskyDecomposition</span></div></li> +<li><div class="src-line"><a name="a44"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a45"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Class&nbsp;constructor&nbsp;-&nbsp;decomposes&nbsp;symmetric&nbsp;positive&nbsp;definite&nbsp;matrix</span></div></li> +<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">Matrix&nbsp;square&nbsp;symmetric&nbsp;positive&nbsp;definite&nbsp;matrix</span></div></li> +<li><div class="src-line"><a name="a47"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/CholeskyDecomposition.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$A&nbsp;</span>instanceof&nbsp;<span class="src-id">Matrix</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getArray</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a52"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$sum&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$i&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sum&nbsp;</span>-=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>==&nbsp;<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$sum&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$sum</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">isspd&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$sum&nbsp;</span>/&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a70"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#functionJAMAError">JAMAError</a><span class="src-sym">(</span><span class="src-id"><a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineArgumentTypeException">ArgumentTypeException</a></span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;__construct()</span></div></li> +<li><div class="src-line"><a name="a79"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a80"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a82"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Is&nbsp;the&nbsp;matrix&nbsp;symmetric&nbsp;and&nbsp;positive&nbsp;definite?</span></div></li> +<li><div class="src-line"><a name="a83"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a84"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span></div></li> +<li><div class="src-line"><a name="a85"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/CholeskyDecomposition.html#methodisSPD">isSPD</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">isspd</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;isSPD()</span></div></li> +<li><div class="src-line"><a name="a89"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a90"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a92"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;getL</span></div></li> +<li><div class="src-line"><a name="a93"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a94"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;triangular&nbsp;factor.</span></div></li> +<li><div class="src-line"><a name="a95"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Matrix&nbsp;</span><span class="src-doc">Lower&nbsp;triangular&nbsp;matrix</span></div></li> +<li><div class="src-line"><a name="a96"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/CholeskyDecomposition.html#methodgetL">getL</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getL()</span></div></li> +<li><div class="src-line"><a name="a100"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a101"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a103"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Solve&nbsp;A*X&nbsp;=&nbsp;B</span></div></li> +<li><div class="src-line"><a name="a104"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a105"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">$B&nbsp;</span><span class="src-doc">Row-equal&nbsp;matrix</span></div></li> +<li><div class="src-line"><a name="a106"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Matrix&nbsp;</span><span class="src-doc">L&nbsp;*&nbsp;L'&nbsp;*&nbsp;X&nbsp;=&nbsp;B</span></div></li> +<li><div class="src-line"><a name="a107"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/CholeskyDecomposition.html#methodsolve">solve</a><span class="src-sym">(</span><span class="src-var">$B&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$B&nbsp;</span>instanceof&nbsp;<span class="src-id">Matrix</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">isspd</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getArrayCopy</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nx&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a114"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nx</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nx</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>/=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a125"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nx</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>/=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nx</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">L</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a136"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">,&nbsp;</span><span class="src-var">$nx</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#functionJAMAError">JAMAError</a><span class="src-sym">(</span><span class="src-id"><a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineMatrixSPDException">MatrixSPDException</a></span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#functionJAMAError">JAMAError</a><span class="src-sym">(</span><span class="src-id"><a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineMatrixDimensionException">MatrixDimensionException</a></span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#functionJAMAError">JAMAError</a><span class="src-sym">(</span><span class="src-id"><a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineArgumentTypeException">ArgumentTypeException</a></span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;solve()</span></div></li> +<li><div class="src-line"><a name="a148"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a149"></a><span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;CholeskyDecomposition</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:27 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html new file mode 100644 index 0000000..2f3a636 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMAEigenvalueDecomposition.php.html @@ -0,0 +1,940 @@ +<html> +<head> +<title>File Source for EigenvalueDecomposition.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file EigenvalueDecomposition.php</h1> +<p>Documentation is available at <a href="../JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html">EigenvalueDecomposition.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;JAMA</span></div></li> +<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Class&nbsp;to&nbsp;obtain&nbsp;eigenvalues&nbsp;and&nbsp;eigenvectors&nbsp;of&nbsp;a&nbsp;real&nbsp;matrix.</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If&nbsp;A&nbsp;is&nbsp;symmetric,&nbsp;then&nbsp;A&nbsp;=&nbsp;V*D*V'&nbsp;where&nbsp;the&nbsp;eigenvalue&nbsp;matrix&nbsp;D</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is&nbsp;diagonal&nbsp;and&nbsp;the&nbsp;eigenvector&nbsp;matrix&nbsp;V&nbsp;is&nbsp;orthogonal&nbsp;(i.e.</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A&nbsp;=&nbsp;V.times(D.times(V.transpose()))&nbsp;and&nbsp;V.times(V.transpose())</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;equals&nbsp;the&nbsp;identity&nbsp;matrix).</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If&nbsp;A&nbsp;is&nbsp;not&nbsp;symmetric,&nbsp;then&nbsp;the&nbsp;eigenvalue&nbsp;matrix&nbsp;D&nbsp;is&nbsp;block&nbsp;diagonal</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;with&nbsp;the&nbsp;real&nbsp;eigenvalues&nbsp;in&nbsp;1-by-1&nbsp;blocks&nbsp;and&nbsp;any&nbsp;complex&nbsp;eigenvalues,</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lambda&nbsp;+&nbsp;i*mu,&nbsp;in&nbsp;2-by-2&nbsp;blocks,&nbsp;[lambda,&nbsp;mu;&nbsp;-mu,&nbsp;lambda].&nbsp;&nbsp;The</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;columns&nbsp;of&nbsp;V&nbsp;represent&nbsp;the&nbsp;eigenvectors&nbsp;in&nbsp;the&nbsp;sense&nbsp;that&nbsp;A*V&nbsp;=&nbsp;V*D,</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i.e.&nbsp;A.times(V)&nbsp;equals&nbsp;V.times(D).&nbsp;&nbsp;The&nbsp;matrix&nbsp;V&nbsp;may&nbsp;be&nbsp;badly</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;conditioned,&nbsp;or&nbsp;even&nbsp;singular,&nbsp;so&nbsp;the&nbsp;validity&nbsp;of&nbsp;the&nbsp;equation</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A&nbsp;=&nbsp;V*D*inverse(V)&nbsp;depends&nbsp;upon&nbsp;V.cond().</span></div></li> +<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;Paul&nbsp;Meagher</span></div></li> +<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;PHP&nbsp;v3.0</span></div></li> +<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;1.1</span></div></li> +<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a24"></a><span class="src-key">class&nbsp;</span><a href="../JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a>&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a25"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a27"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Row&nbsp;and&nbsp;column&nbsp;dimension&nbsp;(square&nbsp;matrix).</span></div></li> +<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">int&nbsp;</span></div></li> +<li><div class="src-line"><a name="a29"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$n</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a31"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Internal&nbsp;symmetry&nbsp;flag.</span></div></li> +<li><div class="src-line"><a name="a34"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">int&nbsp;</span></div></li> +<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$issymmetric</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a37"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a39"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Arrays&nbsp;for&nbsp;internal&nbsp;storage&nbsp;of&nbsp;eigenvalues.</span></div></li> +<li><div class="src-line"><a name="a40"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$d&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$e&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a44"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Array&nbsp;for&nbsp;internal&nbsp;storage&nbsp;of&nbsp;eigenvectors.</span></div></li> +<li><div class="src-line"><a name="a47"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a48"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$V&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a50"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a52"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Array&nbsp;for&nbsp;internal&nbsp;storage&nbsp;of&nbsp;nonsymmetric&nbsp;Hessenberg&nbsp;form.</span></div></li> +<li><div class="src-line"><a name="a53"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a54"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$H&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a56"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a58"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Working&nbsp;storage&nbsp;for&nbsp;nonsymmetric&nbsp;algorithm.</span></div></li> +<li><div class="src-line"><a name="a59"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$ort</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a62"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a64"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Used&nbsp;for&nbsp;complex&nbsp;scalar&nbsp;division.</span></div></li> +<li><div class="src-line"><a name="a65"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">float&nbsp;</span></div></li> +<li><div class="src-line"><a name="a66"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$cdivr</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$cdivi</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a69"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a70"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a72"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Symmetric&nbsp;Householder&nbsp;reduction&nbsp;to&nbsp;tridiagonal&nbsp;form.</span></div></li> +<li><div class="src-line"><a name="a73"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a74"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a75"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">tred2&nbsp;</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;This&nbsp;is&nbsp;derived&nbsp;from&nbsp;the&nbsp;Algol&nbsp;procedures&nbsp;tred2&nbsp;by</span></div></li> +<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;Bowdler,&nbsp;Martin,&nbsp;Reinsch,&nbsp;and&nbsp;Wilkinson,&nbsp;Handbook&nbsp;for</span></div></li> +<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;Auto.&nbsp;Comp.,&nbsp;Vol.ii-Linear&nbsp;Algebra,&nbsp;and&nbsp;the&nbsp;corresponding</span></div></li> +<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;Fortran&nbsp;subroutine&nbsp;in&nbsp;EISPACK.</span></div></li> +<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Householder&nbsp;reduction&nbsp;to&nbsp;tridiagonal&nbsp;form.</span></div></li> +<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i_&nbsp;</span>=&nbsp;<span class="src-var">$i&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Scale&nbsp;to&nbsp;avoid&nbsp;under/overflow.</span></div></li> +<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$h&nbsp;</span>=&nbsp;<span class="src-var">$scale&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$scale&nbsp;</span>+=&nbsp;<a href="http://www.php.net/array_sum">array_sum</a><span class="src-sym">(</span><a href="http://www.php.net/array_map">array_map</a><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$scale&nbsp;</span>==&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i_</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d&nbsp;</span>=&nbsp;<a href="http://www.php.net/array_slice">array_slice</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i_</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$i_</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a95"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Generate&nbsp;Householder&nbsp;vector.</span></div></li> +<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>/=&nbsp;<span class="src-var">$scale</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$h&nbsp;</span>+=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i_</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$h</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$f&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;-<span class="src-var">$g</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$scale&nbsp;</span>*&nbsp;<span class="src-var">$g</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$h&nbsp;</span>=&nbsp;<span class="src-var">$h&nbsp;</span>-&nbsp;<span class="src-var">$f&nbsp;</span>*&nbsp;<span class="src-var">$g</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i_</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$f&nbsp;</span>-&nbsp;<span class="src-var">$g</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Apply&nbsp;similarity&nbsp;transformation&nbsp;to&nbsp;remaining&nbsp;columns.</span></div></li> +<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$f</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$f</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;=&nbsp;<span class="src-var">$i_</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$f</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$g</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>/=&nbsp;<span class="src-var">$h</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$hh&nbsp;</span>=&nbsp;<span class="src-var">$f&nbsp;</span>/&nbsp;<span class="src-sym">(</span><span class="src-num">2&nbsp;</span>*&nbsp;<span class="src-var">$h</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$hh&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$j</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;=&nbsp;<span class="src-var">$i_</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-sym">(</span><span class="src-var">$f&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$g&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$h</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a143"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Accumulate&nbsp;transformations.</span></div></li> +<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$h&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$h&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;=&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a151"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$h</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a152"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;=&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;=&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;=&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$g&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a161"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a162"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a163"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;=&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a164"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a166"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a167"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a168"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/array_fill">array_fill</a><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$j</span><span class="src-sym">,&nbsp;</span><span class="src-num">0.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a171"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a173"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a174"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a176"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Symmetric&nbsp;tridiagonal&nbsp;QL&nbsp;algorithm.</span></div></li> +<li><div class="src-line"><a name="a177"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a178"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;This&nbsp;is&nbsp;derived&nbsp;from&nbsp;the&nbsp;Algol&nbsp;procedures&nbsp;tql2,&nbsp;by</span></div></li> +<li><div class="src-line"><a name="a179"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Bowdler,&nbsp;Martin,&nbsp;Reinsch,&nbsp;and&nbsp;Wilkinson,&nbsp;Handbook&nbsp;for</span></div></li> +<li><div class="src-line"><a name="a180"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Auto.&nbsp;Comp.,&nbsp;Vol.ii-Linear&nbsp;Algebra,&nbsp;and&nbsp;the&nbsp;corresponding</span></div></li> +<li><div class="src-line"><a name="a181"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Fortran&nbsp;subroutine&nbsp;in&nbsp;EISPACK.</span></div></li> +<li><div class="src-line"><a name="a182"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a183"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a184"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a185"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">tql2</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a186"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a187"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a188"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a189"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a190"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tst1&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a192"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$eps&nbsp;&nbsp;</span>=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-num">2.0</span><span class="src-sym">,</span>-<span class="src-num">52.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a193"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a194"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$l&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$l&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$l</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a195"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Find&nbsp;small&nbsp;subdiagonal&nbsp;element</span></div></li> +<li><div class="src-line"><a name="a196"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tst1&nbsp;</span>=&nbsp;<a href="http://www.php.net/max">max</a><span class="src-sym">(</span><span class="src-var">$tst1</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$m&nbsp;</span>=&nbsp;<span class="src-var">$l</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$m&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&lt;=&nbsp;<span class="src-var">$eps&nbsp;</span>*&nbsp;<span class="src-var">$tst1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a201"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;++<span class="src-var">$m</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a202"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a203"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;If&nbsp;m&nbsp;==&nbsp;l,&nbsp;$this-&gt;d[l]&nbsp;is&nbsp;an&nbsp;eigenvalue,</span></div></li> +<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;otherwise,&nbsp;iterate.</span></div></li> +<li><div class="src-line"><a name="a205"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$m&nbsp;</span>&gt;&nbsp;<span class="src-var">$l</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a206"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$iter&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a207"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;do&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a208"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Could&nbsp;check&nbsp;iteration&nbsp;count&nbsp;here.</span></div></li> +<li><div class="src-line"><a name="a209"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$iter&nbsp;</span>+=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a210"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Compute&nbsp;implicit&nbsp;shift</span></div></li> +<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$l</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$g</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-sym">(</span><span class="src-num">2.0&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a213"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html#functionhypo">hypo</a><span class="src-sym">(</span><span class="src-var">$p</span><span class="src-sym">,&nbsp;</span><span class="src-num">1.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a214"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p&nbsp;</span>&lt;&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a215"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>*=&nbsp;-<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a216"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-sym">(</span><span class="src-var">$p&nbsp;</span>+&nbsp;<span class="src-var">$r</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a217"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$l</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-sym">(</span><span class="src-var">$p&nbsp;</span>+&nbsp;<span class="src-var">$r</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a218"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$dl1&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$l</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a219"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$h&nbsp;</span>=&nbsp;<span class="src-var">$g&nbsp;</span>-&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a220"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$l&nbsp;</span>+&nbsp;<span class="src-num">2</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$h</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a222"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>+=&nbsp;<span class="src-var">$h</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a223"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Implicit&nbsp;QL&nbsp;transformation.</span></div></li> +<li><div class="src-line"><a name="a224"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a225"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$c&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a226"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$c2&nbsp;</span>=&nbsp;<span class="src-var">$c3&nbsp;</span>=&nbsp;<span class="src-var">$c</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a227"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$el1&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$l&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a228"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$s2&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a229"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$m</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&gt;=&nbsp;<span class="src-var">$l</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a230"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$c3&nbsp;</span>=&nbsp;<span class="src-var">$c2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a231"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$c2&nbsp;</span>=&nbsp;<span class="src-var">$c</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a232"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s2&nbsp;</span>=&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a233"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$c&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a234"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$h&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$c&nbsp;</span>*&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a235"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;&nbsp;</span>=&nbsp;<a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html#functionhypo">hypo</a><span class="src-sym">(</span><span class="src-var">$p</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a236"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a237"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a238"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$c&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>/&nbsp;<span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$c&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$g</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a240"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$h&nbsp;</span>+&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-sym">(</span><span class="src-var">$c&nbsp;</span>*&nbsp;<span class="src-var">$g&nbsp;</span>+&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a241"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Accumulate&nbsp;transformation.</span></div></li> +<li><div class="src-line"><a name="a242"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a243"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$h&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a244"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$c&nbsp;</span>*&nbsp;<span class="src-var">$h</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a245"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$c&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$h</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a246"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a247"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a248"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;-<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$s2&nbsp;</span>*&nbsp;<span class="src-var">$c3&nbsp;</span>*&nbsp;<span class="src-var">$el1&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$dl1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a249"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a250"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$c&nbsp;</span>*&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a251"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Check&nbsp;for&nbsp;convergence.</span></div></li> +<li><div class="src-line"><a name="a252"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">while&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-var">$eps&nbsp;</span>*&nbsp;<span class="src-var">$tst1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a253"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a254"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$f</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a256"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a257"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a258"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Sort&nbsp;eigenvalues&nbsp;and&nbsp;corresponding&nbsp;vectors.</span></div></li> +<li><div class="src-line"><a name="a259"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a260"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a261"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a262"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a263"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>&lt;&nbsp;<span class="src-var">$p</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a264"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$j</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a265"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a266"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a267"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a268"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>!=&nbsp;<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a269"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a270"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a271"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a272"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a273"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a274"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a275"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a276"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a277"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a278"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a279"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a280"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a281"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a282"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Nonsymmetric&nbsp;reduction&nbsp;to&nbsp;Hessenberg&nbsp;form.</span></div></li> +<li><div class="src-line"><a name="a283"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a284"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;This&nbsp;is&nbsp;derived&nbsp;from&nbsp;the&nbsp;Algol&nbsp;procedures&nbsp;orthes&nbsp;and&nbsp;ortran,</span></div></li> +<li><div class="src-line"><a name="a285"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;by&nbsp;Martin&nbsp;and&nbsp;Wilkinson,&nbsp;Handbook&nbsp;for&nbsp;Auto.&nbsp;Comp.,</span></div></li> +<li><div class="src-line"><a name="a286"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Vol.ii-Linear&nbsp;Algebra,&nbsp;and&nbsp;the&nbsp;corresponding</span></div></li> +<li><div class="src-line"><a name="a287"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Fortran&nbsp;subroutines&nbsp;in&nbsp;EISPACK.</span></div></li> +<li><div class="src-line"><a name="a288"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a289"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a290"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a291"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">orthes&nbsp;</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a292"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$low&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a293"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$high&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a294"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a295"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$m&nbsp;</span>=&nbsp;<span class="src-var">$low</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$m&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$m</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a296"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Scale&nbsp;column.</span></div></li> +<li><div class="src-line"><a name="a297"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$scale&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a298"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$m</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a299"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$scale&nbsp;</span>=&nbsp;<span class="src-var">$scale&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a300"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a301"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$scale&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a302"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Compute&nbsp;Householder&nbsp;transformation.</span></div></li> +<li><div class="src-line"><a name="a303"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$h&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a304"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&gt;=&nbsp;<span class="src-var">$m</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a305"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$scale</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a306"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$h&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a307"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a308"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$h</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a309"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a310"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>*=&nbsp;-<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a311"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a312"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$h&nbsp;</span>-=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$g</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a313"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$g</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a314"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Apply&nbsp;Householder&nbsp;similarity&nbsp;transformation</span></div></li> +<li><div class="src-line"><a name="a315"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;H&nbsp;=&nbsp;(I&nbsp;-u&nbsp;*&nbsp;u'&nbsp;/&nbsp;h)&nbsp;*&nbsp;H&nbsp;*&nbsp;(I&nbsp;-u&nbsp;*&nbsp;u')&nbsp;/&nbsp;h)</span></div></li> +<li><div class="src-line"><a name="a316"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$m</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a317"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a318"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&gt;=&nbsp;<span class="src-var">$m</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a319"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a320"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a321"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>/=&nbsp;<span class="src-var">$h</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a322"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$m</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a323"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$f&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a324"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a325"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a326"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a327"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a328"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&gt;=&nbsp;<span class="src-var">$m</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a329"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a330"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a331"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-var">$f&nbsp;</span>/&nbsp;<span class="src-var">$h</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a332"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$m</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a333"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$f&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a334"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a335"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a336"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$scale&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a337"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$scale&nbsp;</span>*&nbsp;<span class="src-var">$g</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a338"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a339"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a340"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a341"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Accumulate&nbsp;transformations&nbsp;(Algol's&nbsp;ortran).</span></div></li> +<li><div class="src-line"><a name="a342"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a343"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a344"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>==&nbsp;<span class="src-var">$j&nbsp;</span>?&nbsp;<span class="src-num">1.0&nbsp;</span>:&nbsp;<span class="src-num">0.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a345"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a346"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a347"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$m&nbsp;</span>=&nbsp;<span class="src-var">$high</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$m&nbsp;</span>&gt;=&nbsp;<span class="src-var">$low</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$m</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a348"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a349"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$m</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a350"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a351"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a352"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$m</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a353"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a354"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$m</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a355"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a356"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a357"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Double&nbsp;division&nbsp;avoids&nbsp;possible&nbsp;underflow</span></div></li> +<li><div class="src-line"><a name="a358"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$g&nbsp;</span>/&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a359"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$m</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a360"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-var">$g&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a361"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a362"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a363"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a364"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a365"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a366"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a367"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a368"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a369"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Performs&nbsp;complex&nbsp;division.</span></div></li> +<li><div class="src-line"><a name="a370"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a371"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a372"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a373"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">cdiv</span><span class="src-sym">(</span><span class="src-var">$xr</span><span class="src-sym">,&nbsp;</span><span class="src-var">$xi</span><span class="src-sym">,&nbsp;</span><span class="src-var">$yr</span><span class="src-sym">,&nbsp;</span><span class="src-var">$yi</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a374"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$yr</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$yi</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a375"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-var">$yi&nbsp;</span>/&nbsp;<span class="src-var">$yr</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a376"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$d&nbsp;</span>=&nbsp;<span class="src-var">$yr&nbsp;</span>+&nbsp;<span class="src-var">$r&nbsp;</span>*&nbsp;<span class="src-var">$yi</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a377"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivr&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$xr&nbsp;</span>+&nbsp;<span class="src-var">$r&nbsp;</span>*&nbsp;<span class="src-var">$xi</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$d</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a378"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivi&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$xi&nbsp;</span>-&nbsp;<span class="src-var">$r&nbsp;</span>*&nbsp;<span class="src-var">$xr</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$d</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a379"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a380"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-var">$yr&nbsp;</span>/&nbsp;<span class="src-var">$yi</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a381"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$d&nbsp;</span>=&nbsp;<span class="src-var">$yi&nbsp;</span>+&nbsp;<span class="src-var">$r&nbsp;</span>*&nbsp;<span class="src-var">$yr</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a382"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivr&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$r&nbsp;</span>*&nbsp;<span class="src-var">$xr&nbsp;</span>+&nbsp;<span class="src-var">$xi</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$d</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a383"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivi&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$r&nbsp;</span>*&nbsp;<span class="src-var">$xi&nbsp;</span>-&nbsp;<span class="src-var">$xr</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$d</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a384"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a385"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a386"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a387"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a388"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a389"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Nonsymmetric&nbsp;reduction&nbsp;from&nbsp;Hessenberg&nbsp;to&nbsp;real&nbsp;Schur&nbsp;form.</span></div></li> +<li><div class="src-line"><a name="a390"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a391"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Code&nbsp;is&nbsp;derived&nbsp;from&nbsp;the&nbsp;Algol&nbsp;procedure&nbsp;hqr2,</span></div></li> +<li><div class="src-line"><a name="a392"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;by&nbsp;Martin&nbsp;and&nbsp;Wilkinson,&nbsp;Handbook&nbsp;for&nbsp;Auto.&nbsp;Comp.,</span></div></li> +<li><div class="src-line"><a name="a393"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Vol.ii-Linear&nbsp;Algebra,&nbsp;and&nbsp;the&nbsp;corresponding</span></div></li> +<li><div class="src-line"><a name="a394"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Fortran&nbsp;subroutine&nbsp;in&nbsp;EISPACK.</span></div></li> +<li><div class="src-line"><a name="a395"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a396"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a397"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a398"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-key">function&nbsp;</span><span class="src-id">hqr2&nbsp;</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a399"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;Initialize</span></div></li> +<li><div class="src-line"><a name="a400"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nn&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a401"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$n&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$nn&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a402"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$low&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a403"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$high&nbsp;</span>=&nbsp;<span class="src-var">$nn&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a404"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$eps&nbsp;</span>=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-num">2.0</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">52.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a405"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$exshift&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a406"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>=&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a407"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Store&nbsp;roots&nbsp;isolated&nbsp;by&nbsp;balanc&nbsp;and&nbsp;compute&nbsp;matrix&nbsp;norm</span></div></li> +<li><div class="src-line"><a name="a408"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$norm&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a409"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a410"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$nn</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a411"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$low</span><span class="src-sym">)&nbsp;</span><span class="src-key">OR&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>&gt;&nbsp;<span class="src-var">$high</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a412"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a413"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a414"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a415"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<a href="http://www.php.net/max">max</a><span class="src-sym">(</span><span class="src-var">$i</span>-<span class="src-num">1</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nn</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a416"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$norm&nbsp;</span>=&nbsp;<span class="src-var">$norm&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a417"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a418"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a419"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a420"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Outer&nbsp;loop&nbsp;over&nbsp;eigenvalue&nbsp;index</span></div></li> +<li><div class="src-line"><a name="a421"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$iter&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a422"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$n&nbsp;</span>&gt;=&nbsp;<span class="src-var">$low</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a423"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Look&nbsp;for&nbsp;single&nbsp;small&nbsp;sub-diagonal&nbsp;element</span></div></li> +<li><div class="src-line"><a name="a424"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$l&nbsp;</span>=&nbsp;<span class="src-var">$n</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a425"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$l&nbsp;</span>&gt;&nbsp;<span class="src-var">$low</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a426"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$l</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$l</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a427"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$s&nbsp;</span>==&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a428"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$norm</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a429"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a430"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$l</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$l</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&lt;&nbsp;<span class="src-var">$eps&nbsp;</span>*&nbsp;<span class="src-var">$s</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a431"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a432"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a433"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--<span class="src-var">$l</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a434"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a435"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Check&nbsp;for&nbsp;convergence</span></div></li> +<li><div class="src-line"><a name="a436"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;One&nbsp;root&nbsp;found</span></div></li> +<li><div class="src-line"><a name="a437"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$l&nbsp;</span>==&nbsp;<span class="src-var">$n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a438"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$exshift</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a439"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a440"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a441"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--<span class="src-var">$n</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a442"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$iter&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a443"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Two&nbsp;roots&nbsp;found</span></div></li> +<li><div class="src-line"><a name="a444"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$l&nbsp;</span>==&nbsp;<span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a445"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$w&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a446"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-num">2.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a447"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$p&nbsp;</span>+&nbsp;<span class="src-var">$w</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a448"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$q</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a449"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$exshift</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a450"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$exshift</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a451"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$x&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a452"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Real&nbsp;pair</span></div></li> +<li><div class="src-line"><a name="a453"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$q&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a454"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a455"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>+&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a456"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a457"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>-&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a458"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a459"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$x&nbsp;</span>+&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a460"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a461"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$z&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a462"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$x&nbsp;</span>-&nbsp;<span class="src-var">$w&nbsp;</span>/&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a463"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a464"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a465"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a466"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$x&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a467"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$z</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a468"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$x&nbsp;</span>/&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a469"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q&nbsp;</span>=&nbsp;<span class="src-var">$z&nbsp;</span>/&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a470"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$p&nbsp;</span>+&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$q</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a471"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>/&nbsp;<span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a472"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>/&nbsp;<span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a473"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Row&nbsp;modification</span></div></li> +<li><div class="src-line"><a name="a474"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nn</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a475"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a476"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$z&nbsp;</span>+&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a477"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a478"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a479"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Column&nbsp;modification</span></div></li> +<li><div class="src-line"><a name="a480"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-id">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a481"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a482"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$z&nbsp;</span>+&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a483"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a484"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a485"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Accumulate&nbsp;transformations</span></div></li> +<li><div class="src-line"><a name="a486"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$low</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a487"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a488"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$z&nbsp;</span>+&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a489"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a490"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a491"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Complex&nbsp;pair</span></div></li> +<li><div class="src-line"><a name="a492"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a493"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$x&nbsp;</span>+&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a494"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$x&nbsp;</span>+&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a495"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a496"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a497"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a498"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$n&nbsp;</span>=&nbsp;<span class="src-var">$n&nbsp;</span>-&nbsp;<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a499"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$iter&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a500"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;No&nbsp;convergence&nbsp;yet</span></div></li> +<li><div class="src-line"><a name="a501"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a502"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Form&nbsp;shift</span></div></li> +<li><div class="src-line"><a name="a503"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$x&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a504"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$y&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a505"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$w&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a506"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$l&nbsp;</span>&lt;&nbsp;<span class="src-var">$n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a507"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$y&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a508"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$w&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a509"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a510"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Wilkinson's&nbsp;original&nbsp;ad&nbsp;hoc&nbsp;shift</span></div></li> +<li><div class="src-line"><a name="a511"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$iter&nbsp;</span>==&nbsp;<span class="src-num">10</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a512"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$exshift&nbsp;</span>+=&nbsp;<span class="src-var">$x</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a513"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$low</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a514"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$x</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a515"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a516"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a517"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$x&nbsp;</span>=&nbsp;<span class="src-var">$y&nbsp;</span>=&nbsp;<span class="src-num">0.75&nbsp;</span>*&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a518"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$w&nbsp;</span>=&nbsp;-<span class="src-num">0.4375&nbsp;</span>*&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a519"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a520"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;MATLAB's&nbsp;new&nbsp;ad&nbsp;hoc&nbsp;shift</span></div></li> +<li><div class="src-line"><a name="a521"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$iter&nbsp;</span>==&nbsp;<span class="src-num">30</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a522"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$y&nbsp;</span>-&nbsp;<span class="src-var">$x</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-num">2.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a523"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$s&nbsp;</span>+&nbsp;<span class="src-var">$w</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a524"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$s&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a525"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$s</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a526"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$y&nbsp;</span>&lt;&nbsp;<span class="src-var">$x</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a527"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;-<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a528"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a529"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$x&nbsp;</span>-&nbsp;<span class="src-var">$w&nbsp;</span>/&nbsp;<span class="src-sym">((</span><span class="src-var">$y&nbsp;</span>-&nbsp;<span class="src-var">$x</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-num">2.0&nbsp;</span>+&nbsp;<span class="src-var">$s</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a530"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$low</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a531"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a532"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a533"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$exshift&nbsp;</span>+=&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a534"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$x&nbsp;</span>=&nbsp;<span class="src-var">$y&nbsp;</span>=&nbsp;<span class="src-var">$w&nbsp;</span>=&nbsp;<span class="src-num">0.964</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a535"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a536"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a537"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Could&nbsp;check&nbsp;iteration&nbsp;count&nbsp;here.</span></div></li> +<li><div class="src-line"><a name="a538"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$iter&nbsp;</span>=&nbsp;<span class="src-var">$iter&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a539"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Look&nbsp;for&nbsp;two&nbsp;consecutive&nbsp;small&nbsp;sub-diagonal&nbsp;elements</span></div></li> +<li><div class="src-line"><a name="a540"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$m&nbsp;</span>=&nbsp;<span class="src-var">$n&nbsp;</span>-&nbsp;<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a541"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$m&nbsp;</span>&gt;=&nbsp;<span class="src-var">$l</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a542"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a543"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-var">$x&nbsp;</span>-&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a544"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$y&nbsp;</span>-&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a545"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$r&nbsp;</span>*&nbsp;<span class="src-var">$s&nbsp;</span>-&nbsp;<span class="src-var">$w</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$m</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a546"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$m</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$z&nbsp;</span>-&nbsp;<span class="src-var">$r&nbsp;</span>-&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a547"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$m</span>+<span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a548"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$p</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$q</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$r</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a549"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>/&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a550"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>/&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a551"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-var">$r&nbsp;</span>/&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a552"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$m&nbsp;</span>==&nbsp;<span class="src-var">$l</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a553"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a554"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a555"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$m</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$q</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$r</span><span class="src-sym">))&nbsp;</span>&lt;</div></li> +<li><div class="src-line"><a name="a556"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$eps&nbsp;</span>*&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$p</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$m</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$z</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$m</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$m</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a557"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a558"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a559"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--<span class="src-var">$m</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a560"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a561"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$m&nbsp;</span>+&nbsp;<span class="src-num">2</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a562"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span>-<span class="src-num">2</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a563"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>&gt;&nbsp;<span class="src-var">$m</span>+<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a564"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span>-<span class="src-num">3</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a565"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a566"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a567"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Double&nbsp;QR&nbsp;step&nbsp;involving&nbsp;rows&nbsp;l:n&nbsp;and&nbsp;columns&nbsp;m:n</span></div></li> +<li><div class="src-line"><a name="a568"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$m</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;=&nbsp;<span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a569"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$notlast&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>!=&nbsp;<span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a570"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>!=&nbsp;<span class="src-var">$m</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a571"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a572"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a573"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$notlast&nbsp;</span>?&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>:&nbsp;<span class="src-num">0.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a574"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$x&nbsp;</span>=&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$p</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$q</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$r</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a575"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$x&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a576"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>/&nbsp;<span class="src-var">$x</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a577"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>/&nbsp;<span class="src-var">$x</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a578"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-var">$r&nbsp;</span>/&nbsp;<span class="src-var">$x</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a579"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a580"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a581"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$x&nbsp;</span>==&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a582"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a583"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a584"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$p&nbsp;</span>+&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$q&nbsp;</span>+&nbsp;<span class="src-var">$r&nbsp;</span>*&nbsp;<span class="src-var">$r</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a585"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p&nbsp;</span>&lt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a586"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;-<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a587"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a588"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$s&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a589"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>!=&nbsp;<span class="src-var">$m</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a590"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$x</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a591"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$l&nbsp;</span>!=&nbsp;<span class="src-var">$m</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a592"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a593"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a594"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>+&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a595"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$x&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>/&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a596"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$y&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>/&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a597"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-var">$r&nbsp;</span>/&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a598"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>/&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a599"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-var">$r&nbsp;</span>/&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a600"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Row&nbsp;modification</span></div></li> +<li><div class="src-line"><a name="a601"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nn</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a602"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a603"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$notlast</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a604"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>+&nbsp;<span class="src-var">$r&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a605"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a606"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a607"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$x</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a608"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$y</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a609"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a610"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Column&nbsp;modification</span></div></li> +<li><div class="src-line"><a name="a611"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<a href="http://www.php.net/min">min</a><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">,&nbsp;</span><span class="src-var">$k</span>+<span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a612"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$x&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$y&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a613"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$notlast</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a614"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>+&nbsp;<span class="src-var">$z&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a615"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">2</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">2</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a616"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a617"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a618"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$q</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a619"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a620"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Accumulate&nbsp;transformations</span></div></li> +<li><div class="src-line"><a name="a621"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$low</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a622"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$x&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$y&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a623"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$notlast</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a624"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>+&nbsp;<span class="src-var">$z&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a625"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">2</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">2</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a626"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a627"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a628"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-var">$q</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a629"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a630"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;($s&nbsp;!=&nbsp;0)</span></div></li> +<li><div class="src-line"><a name="a631"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;k&nbsp;loop</span></div></li> +<li><div class="src-line"><a name="a632"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;check&nbsp;convergence</span></div></li> +<li><div class="src-line"><a name="a633"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;while&nbsp;($n&nbsp;&gt;=&nbsp;$low)</span></div></li> +<li><div class="src-line"><a name="a634"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a635"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Backsubstitute&nbsp;to&nbsp;find&nbsp;vectors&nbsp;of&nbsp;upper&nbsp;triangular&nbsp;form</span></div></li> +<li><div class="src-line"><a name="a636"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$norm&nbsp;</span>==&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a637"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a638"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a639"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a640"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$n&nbsp;</span>=&nbsp;<span class="src-var">$nn</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$n&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a641"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a642"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a643"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Real&nbsp;vector</span></div></li> +<li><div class="src-line"><a name="a644"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$q&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a645"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$l&nbsp;</span>=&nbsp;<span class="src-var">$n</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a646"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a647"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a648"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$w&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a649"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a650"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$l</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;=&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a651"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-var">$r&nbsp;</span>+&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a652"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a653"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>&lt;&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a654"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-var">$w</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a655"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a656"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a657"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$l&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a658"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a659"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$w&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a660"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$r&nbsp;</span>/&nbsp;<span class="src-var">$w</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a661"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a662"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$r&nbsp;</span>/&nbsp;<span class="src-sym">(</span><span class="src-var">$eps&nbsp;</span>*&nbsp;<span class="src-var">$norm</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a663"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a664"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Solve&nbsp;real&nbsp;equations</span></div></li> +<li><div class="src-line"><a name="a665"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a666"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$x&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a667"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$y&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a668"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a669"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$x&nbsp;</span>*&nbsp;<span class="src-var">$s&nbsp;</span>-&nbsp;<span class="src-var">$z&nbsp;</span>*&nbsp;<span class="src-var">$r</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$q</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a670"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a671"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$z</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a672"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">(</span>-<span class="src-var">$r&nbsp;</span>-&nbsp;<span class="src-var">$w&nbsp;</span>*&nbsp;<span class="src-var">$t</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$x</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a673"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a674"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">(</span>-<span class="src-var">$s&nbsp;</span>-&nbsp;<span class="src-var">$y&nbsp;</span>*&nbsp;<span class="src-var">$t</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a675"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a676"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a677"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Overflow&nbsp;control</span></div></li> +<li><div class="src-line"><a name="a678"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a679"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$eps&nbsp;</span>*&nbsp;<span class="src-var">$t</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-var">$t&nbsp;</span>&gt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a680"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;=&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a681"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a682"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a683"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a684"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a685"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a686"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Complex&nbsp;vector</span></div></li> +<li><div class="src-line"><a name="a687"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$q&nbsp;</span>&lt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a688"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$l&nbsp;</span>=&nbsp;<span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a689"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Last&nbsp;vector&nbsp;component&nbsp;imaginary&nbsp;so&nbsp;matrix&nbsp;is&nbsp;triangular</span></div></li> +<li><div class="src-line"><a name="a690"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a691"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$q&nbsp;</span>/&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a692"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a693"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a694"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">cdiv</span><span class="src-sym">(</span><span class="src-num">0.0</span><span class="src-sym">,&nbsp;</span>-<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p</span><span class="src-sym">,&nbsp;</span><span class="src-var">$q</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a695"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivr</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a696"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivi</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a697"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a698"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a699"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a700"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$n</span>-<span class="src-num">2</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a701"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;double&nbsp;ra,sa,vr,vi;</span></div></li> +<li><div class="src-line"><a name="a702"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ra&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a703"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sa&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a704"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$l</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;=&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a705"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ra&nbsp;</span>=&nbsp;<span class="src-var">$ra&nbsp;</span>+&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a706"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sa&nbsp;</span>=&nbsp;<span class="src-var">$sa&nbsp;</span>+&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a707"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a708"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$w&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a709"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>&lt;&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a710"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-var">$w</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a711"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-var">$ra</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a712"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$sa</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a713"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a714"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$l&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a715"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a716"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">cdiv</span><span class="src-sym">(</span>-<span class="src-var">$ra</span><span class="src-sym">,&nbsp;</span>-<span class="src-var">$sa</span><span class="src-sym">,&nbsp;</span><span class="src-var">$w</span><span class="src-sym">,&nbsp;</span><span class="src-var">$q</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a717"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivr</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a718"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivi</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a719"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a720"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Solve&nbsp;complex&nbsp;equations</span></div></li> +<li><div class="src-line"><a name="a721"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$x&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a722"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$y&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a723"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$vr&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$q</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a724"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$vi&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$p</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-num">2.0&nbsp;</span>*&nbsp;<span class="src-var">$q</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a725"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$vr&nbsp;</span>==&nbsp;<span class="src-num">0.0&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-var">$vi&nbsp;</span>==&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a726"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$vr&nbsp;</span>=&nbsp;<span class="src-var">$eps&nbsp;</span>*&nbsp;<span class="src-var">$norm&nbsp;</span>*&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$w</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$q</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$y</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$z</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a727"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a728"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">cdiv</span><span class="src-sym">(</span><span class="src-var">$x&nbsp;</span>*&nbsp;<span class="src-var">$r&nbsp;</span>-&nbsp;<span class="src-var">$z&nbsp;</span>*&nbsp;<span class="src-var">$ra&nbsp;</span>+&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$sa</span><span class="src-sym">,&nbsp;</span><span class="src-var">$x&nbsp;</span>*&nbsp;<span class="src-var">$s&nbsp;</span>-&nbsp;<span class="src-var">$z&nbsp;</span>*&nbsp;<span class="src-var">$sa&nbsp;</span>-&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$ra</span><span class="src-sym">,&nbsp;</span><span class="src-var">$vr</span><span class="src-sym">,&nbsp;</span><span class="src-var">$vi</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a729"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivr</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a730"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivi</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a731"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$z</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$q</span><span class="src-sym">)))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a732"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">(</span>-<span class="src-var">$ra&nbsp;</span>-&nbsp;<span class="src-var">$w&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$x</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a733"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">(</span>-<span class="src-var">$sa&nbsp;</span>-&nbsp;<span class="src-var">$w&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$q&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$x</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a734"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a735"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">cdiv</span><span class="src-sym">(</span>-<span class="src-var">$r&nbsp;</span>-&nbsp;<span class="src-var">$y&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span>-<span class="src-var">$s&nbsp;</span>-&nbsp;<span class="src-var">$y&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$z</span><span class="src-sym">,&nbsp;</span><span class="src-var">$q</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a736"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivr</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a737"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">cdivi</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a738"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a739"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a740"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Overflow&nbsp;control</span></div></li> +<li><div class="src-line"><a name="a741"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<a href="http://www.php.net/max">max</a><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">,</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a742"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$eps&nbsp;</span>*&nbsp;<span class="src-var">$t</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-var">$t&nbsp;</span>&gt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a743"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;=&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a744"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a745"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a746"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a747"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a748"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//&nbsp;end&nbsp;else</span></div></li> +<li><div class="src-line"><a name="a749"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//&nbsp;end&nbsp;for</span></div></li> +<li><div class="src-line"><a name="a750"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//&nbsp;end&nbsp;else&nbsp;for&nbsp;complex&nbsp;case</span></div></li> +<li><div class="src-line"><a name="a751"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//&nbsp;end&nbsp;for</span></div></li> +<li><div class="src-line"><a name="a752"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a753"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Vectors&nbsp;of&nbsp;isolated&nbsp;roots</span></div></li> +<li><div class="src-line"><a name="a754"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$nn</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a755"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$low&nbsp;</span>|&nbsp;<span class="src-var">$i&nbsp;</span>&gt;&nbsp;<span class="src-var">$high</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a756"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nn</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a757"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a758"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a759"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a760"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a761"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a762"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Back&nbsp;transformation&nbsp;to&nbsp;get&nbsp;eigenvectors&nbsp;of&nbsp;original&nbsp;matrix</span></div></li> +<li><div class="src-line"><a name="a763"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$nn</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&gt;=&nbsp;<span class="src-var">$low</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a764"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$low</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$high</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a765"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a766"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$low</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;=&nbsp;<a href="http://www.php.net/min">min</a><span class="src-sym">(</span><span class="src-var">$j</span><span class="src-sym">,</span><span class="src-var">$high</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a767"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$z&nbsp;</span>=&nbsp;<span class="src-var">$z&nbsp;</span>+&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a768"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a769"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$z</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a770"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a771"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a772"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//&nbsp;end&nbsp;hqr2</span></div></li> +<li><div class="src-line"><a name="a773"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a774"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a775"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a776"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Constructor:&nbsp;Check&nbsp;for&nbsp;symmetry,&nbsp;then&nbsp;construct&nbsp;the&nbsp;eigenvalue&nbsp;decomposition</span></div></li> +<li><div class="src-line"><a name="a777"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a778"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a779"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">A&nbsp;</span><span class="src-doc">&nbsp;Square&nbsp;matrix</span></div></li> +<li><div class="src-line"><a name="a780"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Structure&nbsp;</span><span class="src-doc">to&nbsp;access&nbsp;D&nbsp;and&nbsp;V.</span></div></li> +<li><div class="src-line"><a name="a781"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a782"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/EigenvalueDecomposition.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-var">$Arg</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a783"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">A&nbsp;</span>=&nbsp;<span class="src-var">$Arg</span><span class="src-sym">-&gt;</span><span class="src-id">getArray</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a784"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n&nbsp;</span>=&nbsp;<span class="src-var">$Arg</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a785"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a786"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$issymmetric&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a787"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-var">$issymmetric</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a788"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-var">$issymmetric</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a789"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$issymmetric&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">A</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a790"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a791"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a792"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a793"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$issymmetric</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a794"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">A</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a795"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Tridiagonalize.</span></div></li> +<li><div class="src-line"><a name="a796"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">tred2</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a797"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Diagonalize.</span></div></li> +<li><div class="src-line"><a name="a798"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">tql2</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a799"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a800"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">H&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">A</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a801"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">ort&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a802"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Reduce&nbsp;to&nbsp;Hessenberg&nbsp;form.</span></div></li> +<li><div class="src-line"><a name="a803"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">orthes</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a804"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Reduce&nbsp;Hessenberg&nbsp;to&nbsp;real&nbsp;Schur&nbsp;form.</span></div></li> +<li><div class="src-line"><a name="a805"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">hqr2</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a806"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a807"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a808"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a809"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a810"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a811"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;the&nbsp;eigenvector&nbsp;matrix</span></div></li> +<li><div class="src-line"><a name="a812"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a813"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a814"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">V&nbsp;</span></div></li> +<li><div class="src-line"><a name="a815"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a816"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/EigenvalueDecomposition.html#methodgetV">getV</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a817"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a818"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a819"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a820"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a821"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a822"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;the&nbsp;real&nbsp;parts&nbsp;of&nbsp;the&nbsp;eigenvalues</span></div></li> +<li><div class="src-line"><a name="a823"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a824"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a825"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">real(diag(D))&nbsp;</span></div></li> +<li><div class="src-line"><a name="a826"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a827"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/EigenvalueDecomposition.html#methodgetRealEigenvalues">getRealEigenvalues</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a828"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a829"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a830"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a831"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a832"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a833"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;the&nbsp;imaginary&nbsp;parts&nbsp;of&nbsp;the&nbsp;eigenvalues</span></div></li> +<li><div class="src-line"><a name="a834"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a835"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a836"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">imag(diag(D))&nbsp;</span></div></li> +<li><div class="src-line"><a name="a837"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a838"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/EigenvalueDecomposition.html#methodgetImagEigenvalues">getImagEigenvalues</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a839"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a840"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a841"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a842"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a843"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a844"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;the&nbsp;block&nbsp;diagonal&nbsp;eigenvalue&nbsp;matrix</span></div></li> +<li><div class="src-line"><a name="a845"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a846"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a847"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">D&nbsp;</span></div></li> +<li><div class="src-line"><a name="a848"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a849"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/EigenvalueDecomposition.html#methodgetD">getD</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a850"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a851"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$D</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/array_fill">array_fill</a><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">,&nbsp;</span><span class="src-num">0.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a852"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$D</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">d</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a853"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a854"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">continue</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a855"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a856"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$o&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span>?&nbsp;<span class="src-var">$i&nbsp;</span>+&nbsp;<span class="src-num">1&nbsp;</span>:&nbsp;<span class="src-var">$i&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a857"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$D</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$o</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a858"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a859"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$D</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a860"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a861"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a862"></a><span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;EigenvalueDecomposition</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html new file mode 100644 index 0000000..30bcc9a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMALUDecomposition.php.html @@ -0,0 +1,336 @@ +<html> +<head> +<title>File Source for LUDecomposition.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file LUDecomposition.php</h1> +<p>Documentation is available at <a href="../JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html">LUDecomposition.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;JAMA</span></div></li> +<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;For&nbsp;an&nbsp;m-by-n&nbsp;matrix&nbsp;A&nbsp;with&nbsp;m&nbsp;&gt;=&nbsp;n,&nbsp;the&nbsp;LU&nbsp;decomposition&nbsp;is&nbsp;an&nbsp;m-by-n</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unit&nbsp;lower&nbsp;triangular&nbsp;matrix&nbsp;L,&nbsp;an&nbsp;n-by-n&nbsp;upper&nbsp;triangular&nbsp;matrix&nbsp;U,</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;and&nbsp;a&nbsp;permutation&nbsp;vector&nbsp;piv&nbsp;of&nbsp;length&nbsp;m&nbsp;so&nbsp;that&nbsp;A(piv,:)&nbsp;=&nbsp;L*U.</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If&nbsp;m&nbsp;&lt;&nbsp;n,&nbsp;then&nbsp;L&nbsp;is&nbsp;m-by-m&nbsp;and&nbsp;U&nbsp;is&nbsp;m-by-n.</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;LU&nbsp;decompostion&nbsp;with&nbsp;pivoting&nbsp;always&nbsp;exists,&nbsp;even&nbsp;if&nbsp;the&nbsp;matrix&nbsp;is</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;singular,&nbsp;so&nbsp;the&nbsp;constructor&nbsp;will&nbsp;never&nbsp;fail.&nbsp;The&nbsp;primary&nbsp;use&nbsp;of&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LU&nbsp;decomposition&nbsp;is&nbsp;in&nbsp;the&nbsp;solution&nbsp;of&nbsp;square&nbsp;systems&nbsp;of&nbsp;simultaneous</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;linear&nbsp;equations.&nbsp;This&nbsp;will&nbsp;fail&nbsp;if&nbsp;isNonsingular()&nbsp;returns&nbsp;false.</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Paul&nbsp;Meagher</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Bartosz&nbsp;Matosiuk</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Michael&nbsp;Bommarito</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;1.1</span></div></li> +<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;PHP&nbsp;v3.0</span></div></li> +<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a21"></a><span class="src-key">class&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a>&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a22"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">MatrixSingularException&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-str">&quot;Can&nbsp;only&nbsp;perform&nbsp;operation&nbsp;on&nbsp;singular&nbsp;matrix.&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">MatrixSquareException&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-str">&quot;Mismatched&nbsp;Row&nbsp;dimension&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a25"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a27"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Decomposition&nbsp;storage</span></div></li> +<li><div class="src-line"><a name="a28"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a29"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$LU&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a31"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Row&nbsp;dimension.</span></div></li> +<li><div class="src-line"><a name="a34"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">int&nbsp;</span></div></li> +<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$m</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a37"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a39"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Column&nbsp;dimension.</span></div></li> +<li><div class="src-line"><a name="a40"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">int&nbsp;</span></div></li> +<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$n</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a43"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a45"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Pivot&nbsp;sign.</span></div></li> +<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">int&nbsp;</span></div></li> +<li><div class="src-line"><a name="a47"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$pivsign</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a49"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a51"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Internal&nbsp;storage&nbsp;of&nbsp;pivot&nbsp;vector.</span></div></li> +<li><div class="src-line"><a name="a52"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a53"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$piv&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a55"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a56"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a58"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;LU&nbsp;Decomposition&nbsp;constructor.</span></div></li> +<li><div class="src-line"><a name="a59"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">$A&nbsp;</span><span class="src-doc">Rectangular&nbsp;matrix</span></div></li> +<li><div class="src-line"><a name="a61"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Structure&nbsp;</span><span class="src-doc">to&nbsp;access&nbsp;L,&nbsp;U&nbsp;and&nbsp;piv.</span></div></li> +<li><div class="src-line"><a name="a62"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$A&nbsp;</span>instanceof&nbsp;<span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Use&nbsp;a&nbsp;&quot;left-looking&quot;,&nbsp;dot-product,&nbsp;Crout/Doolittle&nbsp;algorithm.</span></div></li> +<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getArray</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">piv</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pivsign&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$LUrowi&nbsp;</span>=&nbsp;<span class="src-var">$LUcolj&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a74"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Outer&nbsp;loop.</span></div></li> +<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Make&nbsp;a&nbsp;copy&nbsp;of&nbsp;the&nbsp;j-th&nbsp;column&nbsp;to&nbsp;localize&nbsp;references.</span></div></li> +<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$LUcolj</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">&amp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Apply&nbsp;previous&nbsp;transformations.</span></div></li> +<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$LUrowi&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Most&nbsp;of&nbsp;the&nbsp;time&nbsp;is&nbsp;spent&nbsp;in&nbsp;the&nbsp;following&nbsp;dot&nbsp;product.</span></div></li> +<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$kmax&nbsp;</span>=&nbsp;<a href="http://www.php.net/min">min</a><span class="src-sym">(</span><span class="src-var">$i</span><span class="src-sym">,</span><span class="src-var">$j</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$kmax</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>+=&nbsp;<span class="src-var">$LUrowi</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$LUcolj</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$LUrowi</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$LUcolj</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Find&nbsp;pivot&nbsp;and&nbsp;exchange&nbsp;if&nbsp;necessary.</span></div></li> +<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$j</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a95"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$LUcolj</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$LUcolj</span><span class="src-sym">[</span><span class="src-var">$p</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p&nbsp;</span>!=&nbsp;<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$p</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$p</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">piv</span><span class="src-sym">[</span><span class="src-var">$p</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">piv</span><span class="src-sym">[</span><span class="src-var">$p</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">piv</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">piv</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pivsign&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pivsign&nbsp;</span>*&nbsp;-<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Compute&nbsp;multipliers.</span></div></li> +<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>/=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">::</span><span class="src-id">ArgumentTypeException</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;__construct()</span></div></li> +<li><div class="src-line"><a name="a121"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a122"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a124"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Get&nbsp;lower&nbsp;triangular&nbsp;factor.</span></div></li> +<li><div class="src-line"><a name="a125"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a126"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">Lower&nbsp;triangular&nbsp;factor</span></div></li> +<li><div class="src-line"><a name="a127"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetL">getL</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>&gt;&nbsp;<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$L</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>==&nbsp;<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$L</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$L</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">(</span><span class="src-var">$L</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getL()</span></div></li> +<li><div class="src-line"><a name="a142"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a143"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a145"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Get&nbsp;upper&nbsp;triangular&nbsp;factor.</span></div></li> +<li><div class="src-line"><a name="a146"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a147"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">Upper&nbsp;triangular&nbsp;factor</span></div></li> +<li><div class="src-line"><a name="a148"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetU">getU</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a151"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a152"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">(</span><span class="src-var">$U</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getU()</span></div></li> +<li><div class="src-line"><a name="a161"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a162"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a163"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a164"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;pivot&nbsp;permutation&nbsp;vector.</span></div></li> +<li><div class="src-line"><a name="a165"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a166"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">Pivot&nbsp;vector</span></div></li> +<li><div class="src-line"><a name="a167"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a168"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetPivot">getPivot</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">piv</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getPivot()</span></div></li> +<li><div class="src-line"><a name="a171"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a172"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a173"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a174"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Alias&nbsp;for&nbsp;getPivot</span></div></li> +<li><div class="src-line"><a name="a175"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a176"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;getPivot</span></div></li> +<li><div class="src-line"><a name="a177"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetDoublePivot">getDoublePivot</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetPivot">getPivot</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getDoublePivot()</span></div></li> +<li><div class="src-line"><a name="a181"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a182"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a184"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Is&nbsp;the&nbsp;matrix&nbsp;nonsingular?</span></div></li> +<li><div class="src-line"><a name="a185"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a186"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">true&nbsp;</span><span class="src-doc">if&nbsp;U,&nbsp;and&nbsp;hence&nbsp;A,&nbsp;is&nbsp;nonsingular.</span></div></li> +<li><div class="src-line"><a name="a187"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a188"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodisNonsingular">isNonsingular</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a189"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a190"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a192"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a194"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a195"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;isNonsingular()</span></div></li> +<li><div class="src-line"><a name="a196"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a197"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a198"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a199"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Count&nbsp;determinants</span></div></li> +<li><div class="src-line"><a name="a200"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a201"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">d&nbsp;matrix&nbsp;deterninat</span></div></li> +<li><div class="src-line"><a name="a202"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a203"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methoddet">det</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m&nbsp;</span>==&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a205"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$d&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">pivsign</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a206"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a207"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$d&nbsp;</span>*=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a208"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a209"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$d</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a210"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">::</span><span class="src-id">MatrixDimensionException</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a213"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;det()</span></div></li> +<li><div class="src-line"><a name="a214"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a215"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a216"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a217"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Solve&nbsp;A*X&nbsp;=&nbsp;B</span></div></li> +<li><div class="src-line"><a name="a218"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a219"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">$B&nbsp;</span><span class="src-doc">&nbsp;A&nbsp;Matrix&nbsp;with&nbsp;as&nbsp;many&nbsp;rows&nbsp;as&nbsp;A&nbsp;and&nbsp;any&nbsp;number&nbsp;of&nbsp;columns.</span></div></li> +<li><div class="src-line"><a name="a220"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">X&nbsp;</span><span class="src-doc">so&nbsp;that&nbsp;L*U*X&nbsp;=&nbsp;B(piv,:)</span></div></li> +<li><div class="src-line"><a name="a221"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-tag">@exception</span><span class="src-doc">&nbsp;&nbsp;IllegalArgumentException&nbsp;Matrix&nbsp;row&nbsp;dimensions&nbsp;must&nbsp;agree.</span></div></li> +<li><div class="src-line"><a name="a222"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-tag">@exception</span><span class="src-doc">&nbsp;&nbsp;RuntimeException&nbsp;&nbsp;Matrix&nbsp;is&nbsp;singular.</span></div></li> +<li><div class="src-line"><a name="a223"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a224"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodsolve">solve</a><span class="src-sym">(</span><span class="src-var">$B</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a225"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a226"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodisNonsingular">isNonsingular</a><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a227"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Copy&nbsp;right&nbsp;hand&nbsp;side&nbsp;with&nbsp;pivoting</span></div></li> +<li><div class="src-line"><a name="a228"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nx&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a229"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getMatrix</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">piv</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$nx</span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a230"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Solve&nbsp;L*Y&nbsp;=&nbsp;B(piv,:)</span></div></li> +<li><div class="src-line"><a name="a231"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a232"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a233"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nx</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a234"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">A</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a235"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a236"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a237"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a238"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Solve&nbsp;U*X&nbsp;=&nbsp;Y;</span></div></li> +<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a240"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nx</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a241"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">A</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>/=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a242"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a243"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a244"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nx</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a245"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">A</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">LU</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a246"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a247"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a248"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a249"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$X</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a250"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a251"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">MatrixSingularException</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a252"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a253"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a254"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">MatrixSquareException</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a256"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;solve()</span></div></li> +<li><div class="src-line"><a name="a257"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a258"></a><span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;PHPExcel_Shared_JAMA_LUDecomposition</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:40 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html new file mode 100644 index 0000000..d84d585 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMAQRDecomposition.php.html @@ -0,0 +1,312 @@ +<html> +<head> +<title>File Source for QRDecomposition.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file QRDecomposition.php</h1> +<p>Documentation is available at <a href="../JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html">QRDecomposition.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;JAMA</span></div></li> +<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;For&nbsp;an&nbsp;m-by-n&nbsp;matrix&nbsp;A&nbsp;with&nbsp;m&nbsp;&gt;=&nbsp;n,&nbsp;the&nbsp;QR&nbsp;decomposition&nbsp;is&nbsp;an&nbsp;m-by-n</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;orthogonal&nbsp;matrix&nbsp;Q&nbsp;and&nbsp;an&nbsp;n-by-n&nbsp;upper&nbsp;triangular&nbsp;matrix&nbsp;R&nbsp;so&nbsp;that</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A&nbsp;=&nbsp;Q*R.</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;QR&nbsp;decompostion&nbsp;always&nbsp;exists,&nbsp;even&nbsp;if&nbsp;the&nbsp;matrix&nbsp;does&nbsp;not&nbsp;have</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;full&nbsp;rank,&nbsp;so&nbsp;the&nbsp;constructor&nbsp;will&nbsp;never&nbsp;fail.&nbsp;&nbsp;The&nbsp;primary&nbsp;use&nbsp;of&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;QR&nbsp;decomposition&nbsp;is&nbsp;in&nbsp;the&nbsp;least&nbsp;squares&nbsp;solution&nbsp;of&nbsp;nonsquare&nbsp;systems</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;of&nbsp;simultaneous&nbsp;linear&nbsp;equations.&nbsp;&nbsp;This&nbsp;will&nbsp;fail&nbsp;if&nbsp;isFullRank()</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;returns&nbsp;false.</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;Paul&nbsp;Meagher</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;PHP&nbsp;v3.0</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;1.1</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a19"></a><span class="src-key">class&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a>&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a20"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a21"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">const&nbsp;</span><span class="src-id">MatrixRankException&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-str">&quot;Can&nbsp;only&nbsp;perform&nbsp;operation&nbsp;on&nbsp;full-rank&nbsp;matrix.&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a22"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Array&nbsp;for&nbsp;internal&nbsp;storage&nbsp;of&nbsp;decomposition.</span></div></li> +<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$QR&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a28"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Row&nbsp;dimension.</span></div></li> +<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">integer&nbsp;</span></div></li> +<li><div class="src-line"><a name="a32"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$m</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a34"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Column&nbsp;dimension.</span></div></li> +<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">integer&nbsp;</span></div></li> +<li><div class="src-line"><a name="a38"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$n</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a40"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Array&nbsp;for&nbsp;internal&nbsp;storage&nbsp;of&nbsp;diagonal&nbsp;of&nbsp;R.</span></div></li> +<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a44"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$Rdiag&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a46"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a47"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;QR&nbsp;Decomposition&nbsp;computed&nbsp;by&nbsp;Householder&nbsp;reflections.</span></div></li> +<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a51"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">matrix&nbsp;</span><span class="src-doc-var">$A&nbsp;</span><span class="src-doc">Rectangular&nbsp;matrix</span></div></li> +<li><div class="src-line"><a name="a52"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Structure&nbsp;</span><span class="src-doc">to&nbsp;access&nbsp;R&nbsp;and&nbsp;the&nbsp;Householder&nbsp;vectors&nbsp;and&nbsp;compute&nbsp;Q.</span></div></li> +<li><div class="src-line"><a name="a53"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$A&nbsp;</span>instanceof&nbsp;<span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Initialize.</span></div></li> +<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getArrayCopy</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Main&nbsp;loop.</span></div></li> +<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Compute&nbsp;2-norm&nbsp;of&nbsp;k-th&nbsp;column&nbsp;without&nbsp;under/overflow.</span></div></li> +<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nrm&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nrm&nbsp;</span>=&nbsp;<a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html#functionhypo">hypo</a><span class="src-sym">(</span><span class="src-var">$nrm</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$nrm&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Form&nbsp;k-th&nbsp;Householder&nbsp;vector.</span></div></li> +<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>&lt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nrm&nbsp;</span>=&nbsp;-<span class="src-var">$nrm</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>/=&nbsp;<span class="src-var">$nrm</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Apply&nbsp;transformation&nbsp;to&nbsp;remaining&nbsp;columns.</span></div></li> +<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;-<span class="src-var">$s</span>/<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Rdiag</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$nrm</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">::</span><span class="src-id">ArgumentTypeException</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;__construct()</span></div></li> +<li><div class="src-line"><a name="a94"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a95"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a97"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Is&nbsp;the&nbsp;matrix&nbsp;full&nbsp;rank?</span></div></li> +<li><div class="src-line"><a name="a98"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a99"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc">true&nbsp;if&nbsp;R,&nbsp;and&nbsp;hence&nbsp;A,&nbsp;has&nbsp;full&nbsp;rank,&nbsp;else&nbsp;false.</span></div></li> +<li><div class="src-line"><a name="a100"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodisFullRank">isFullRank</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Rdiag</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;isFullRank()</span></div></li> +<li><div class="src-line"><a name="a109"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a110"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a112"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;the&nbsp;Householder&nbsp;vectors</span></div></li> +<li><div class="src-line"><a name="a113"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a114"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Matrix&nbsp;</span><span class="src-doc">Lower&nbsp;trapezoidal&nbsp;matrix&nbsp;whose&nbsp;columns&nbsp;define&nbsp;the&nbsp;reflections</span></div></li> +<li><div class="src-line"><a name="a115"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetH">getH</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>&gt;=&nbsp;<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$H</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">(</span><span class="src-var">$H</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getH()</span></div></li> +<li><div class="src-line"><a name="a128"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a129"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a131"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;the&nbsp;upper&nbsp;triangular&nbsp;factor</span></div></li> +<li><div class="src-line"><a name="a132"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a133"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Matrix&nbsp;</span><span class="src-doc">upper&nbsp;triangular&nbsp;factor</span></div></li> +<li><div class="src-line"><a name="a134"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetR">getR</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$R</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>==&nbsp;<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$R</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Rdiag</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$R</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">(</span><span class="src-var">$R</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getR()</span></div></li> +<li><div class="src-line"><a name="a149"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a150"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a151"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a152"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Generate&nbsp;and&nbsp;return&nbsp;the&nbsp;(economy-sized)&nbsp;orthogonal&nbsp;factor</span></div></li> +<li><div class="src-line"><a name="a153"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a154"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Matrix&nbsp;</span><span class="src-doc">orthogonal&nbsp;factor</span></div></li> +<li><div class="src-line"><a name="a155"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetQ">getQ</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$Q</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a161"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$Q</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a162"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a163"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a164"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a166"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$Q</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a168"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;-<span class="src-var">$s</span>/<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$Q</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a171"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">/*</span></div></li> +<li><div class="src-line"><a name="a176"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for($i&nbsp;=&nbsp;0;&nbsp;$i&nbsp;&lt;&nbsp;count($Q);&nbsp;++$i)&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a177"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for($j&nbsp;=&nbsp;0;&nbsp;$j&nbsp;&lt;&nbsp;count($Q);&nbsp;++$j)&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a178"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!&nbsp;isset($Q[$i][$j])&nbsp;)&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a179"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$Q[$i][$j]&nbsp;=&nbsp;0;</span></div></li> +<li><div class="src-line"><a name="a180"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a181"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a182"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a183"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a184"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">(</span><span class="src-var">$Q</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a185"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;getQ()</span></div></li> +<li><div class="src-line"><a name="a186"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a187"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a188"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a189"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Least&nbsp;squares&nbsp;solution&nbsp;of&nbsp;A*X&nbsp;=&nbsp;B</span></div></li> +<li><div class="src-line"><a name="a190"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a191"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">Matrix&nbsp;</span><span class="src-doc-var">$B&nbsp;</span><span class="src-doc">A&nbsp;Matrix&nbsp;with&nbsp;as&nbsp;many&nbsp;rows&nbsp;as&nbsp;A&nbsp;and&nbsp;any&nbsp;number&nbsp;of&nbsp;columns.</span></div></li> +<li><div class="src-line"><a name="a192"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Matrix&nbsp;</span><span class="src-doc">Matrix&nbsp;that&nbsp;minimizes&nbsp;the&nbsp;two&nbsp;norm&nbsp;of&nbsp;Q*R*X-B.</span></div></li> +<li><div class="src-line"><a name="a193"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a194"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodsolve">solve</a><span class="src-sym">(</span><span class="src-var">$B</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a195"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a196"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodisFullRank">isFullRank</a><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Copy&nbsp;right&nbsp;hand&nbsp;side</span></div></li> +<li><div class="src-line"><a name="a198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nx&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getArrayCopy</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Compute&nbsp;Y&nbsp;=&nbsp;transpose(Q)*B</span></div></li> +<li><div class="src-line"><a name="a201"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a202"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nx</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a203"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a205"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a206"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a207"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;-<span class="src-var">$s</span>/<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a208"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a209"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a210"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a213"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Solve&nbsp;R*X&nbsp;=&nbsp;Y;</span></div></li> +<li><div class="src-line"><a name="a214"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a215"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nx</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a216"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>/=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">Rdiag</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a217"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a218"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a219"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nx</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a220"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-=&nbsp;<span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">QR</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a222"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a223"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a224"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a225"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">getMatrix</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span>-<span class="src-num">1</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$nx</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a226"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a227"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-id">self</span><span class="src-sym">::</span><span class="src-id">MatrixRankException</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a228"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a229"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a230"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Exception</span><span class="src-sym">(</span><span class="src-id"><a href="../JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></span><span class="src-sym">::</span><span class="src-id">MatrixDimensionException</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a231"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a232"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;solve()</span></div></li> +<li><div class="src-line"><a name="a233"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a234"></a><span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_JAMA_class&nbsp;QRDecomposition</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:33 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html new file mode 100644 index 0000000..31f8dca --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_JAMA__PHPExcelSharedJAMASingularValueDecomposition.php.html @@ -0,0 +1,604 @@ +<html> +<head> +<title>File Source for SingularValueDecomposition.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="../elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file SingularValueDecomposition.php</h1> +<p>Documentation is available at <a href="../JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html">SingularValueDecomposition.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;JAMA</span></div></li> +<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;For&nbsp;an&nbsp;m-by-n&nbsp;matrix&nbsp;A&nbsp;with&nbsp;m&nbsp;&gt;=&nbsp;n,&nbsp;the&nbsp;singular&nbsp;value&nbsp;decomposition&nbsp;is</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;an&nbsp;m-by-n&nbsp;orthogonal&nbsp;matrix&nbsp;U,&nbsp;an&nbsp;n-by-n&nbsp;diagonal&nbsp;matrix&nbsp;S,&nbsp;and</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;an&nbsp;n-by-n&nbsp;orthogonal&nbsp;matrix&nbsp;V&nbsp;so&nbsp;that&nbsp;A&nbsp;=&nbsp;U*S*V'.</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;singular&nbsp;values,&nbsp;sigma[$k]&nbsp;=&nbsp;S[$k][$k],&nbsp;are&nbsp;ordered&nbsp;so&nbsp;that</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sigma[0]&nbsp;&gt;=&nbsp;sigma[1]&nbsp;&gt;=&nbsp;...&nbsp;&gt;=&nbsp;sigma[n-1].</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;singular&nbsp;value&nbsp;decompostion&nbsp;always&nbsp;exists,&nbsp;so&nbsp;the&nbsp;constructor&nbsp;will</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;never&nbsp;fail.&nbsp;&nbsp;The&nbsp;matrix&nbsp;condition&nbsp;number&nbsp;and&nbsp;the&nbsp;effective&nbsp;numerical</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rank&nbsp;can&nbsp;be&nbsp;computed&nbsp;from&nbsp;this&nbsp;decomposition.</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;Paul&nbsp;Meagher</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;PHP&nbsp;v3.0</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;1.1</span></div></li> +<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a20"></a><span class="src-key">class&nbsp;</span><a href="../JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a21"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a22"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Internal&nbsp;storage&nbsp;of&nbsp;U.</span></div></li> +<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$U&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a29"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Internal&nbsp;storage&nbsp;of&nbsp;V.</span></div></li> +<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$V&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a33"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Internal&nbsp;storage&nbsp;of&nbsp;singular&nbsp;values.</span></div></li> +<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a39"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Row&nbsp;dimension.</span></div></li> +<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">int&nbsp;</span></div></li> +<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$m</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a45"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a47"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Column&nbsp;dimension.</span></div></li> +<li><div class="src-line"><a name="a48"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">int&nbsp;</span></div></li> +<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$n</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a51"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a52"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a54"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Construct&nbsp;the&nbsp;singular&nbsp;value&nbsp;decomposition</span></div></li> +<li><div class="src-line"><a name="a55"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a56"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Derived&nbsp;from&nbsp;LINPACK&nbsp;code.</span></div></li> +<li><div class="src-line"><a name="a57"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a58"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">$A&nbsp;</span><span class="src-doc">Rectangular&nbsp;matrix</span></div></li> +<li><div class="src-line"><a name="a59"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Structure&nbsp;</span><span class="src-doc">to&nbsp;access&nbsp;U,&nbsp;S&nbsp;and&nbsp;V.</span></div></li> +<li><div class="src-line"><a name="a60"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/SingularValueDecomposition.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-var">$Arg</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a62"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Initialize.</span></div></li> +<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-var">$Arg</span><span class="src-sym">-&gt;</span><span class="src-id">getArrayCopy</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m&nbsp;</span>=&nbsp;<span class="src-var">$Arg</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n&nbsp;</span>=&nbsp;<span class="src-var">$Arg</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nu&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<a href="http://www.php.net/min">min</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$work&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$wantu&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$wantv&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nct&nbsp;</span>=&nbsp;<a href="http://www.php.net/min">min</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nrt&nbsp;</span>=&nbsp;<a href="http://www.php.net/max">max</a><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/min">min</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n&nbsp;</span>-&nbsp;<span class="src-num">2</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a74"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Reduce&nbsp;A&nbsp;to&nbsp;bidiagonal&nbsp;form,&nbsp;storing&nbsp;the&nbsp;diagonal&nbsp;elements</span></div></li> +<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;in&nbsp;s&nbsp;and&nbsp;the&nbsp;super-diagonal&nbsp;elements&nbsp;in&nbsp;e.</span></div></li> +<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<a href="http://www.php.net/max">max</a><span class="src-sym">(</span><span class="src-var">$nct</span><span class="src-sym">,</span><span class="src-var">$nrt</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a78"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$nct</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Compute&nbsp;the&nbsp;transformation&nbsp;for&nbsp;the&nbsp;k-th&nbsp;column&nbsp;and</span></div></li> +<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;place&nbsp;the&nbsp;k-th&nbsp;diagonal&nbsp;in&nbsp;s[$k].</span></div></li> +<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Compute&nbsp;2-norm&nbsp;of&nbsp;k-th&nbsp;column&nbsp;without&nbsp;under/overflow.</span></div></li> +<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html#functionhypo">hypo</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>&lt;&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>/=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a95"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a98"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$nct</span><span class="src-sym">)&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Apply&nbsp;the&nbsp;transformation.</span></div></li> +<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>+=&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;-<span class="src-var">$t&nbsp;</span>/&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-var">$t&nbsp;</span>*&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Place&nbsp;the&nbsp;k-th&nbsp;row&nbsp;of&nbsp;A&nbsp;into&nbsp;e&nbsp;for&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;subsequent&nbsp;calculation&nbsp;of&nbsp;the&nbsp;row&nbsp;transformation.</span></div></li> +<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a115"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$wantu&nbsp;</span><span class="src-key">AND&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$nct</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Place&nbsp;the&nbsp;transformation&nbsp;in&nbsp;U&nbsp;for&nbsp;subsequent&nbsp;back</span></div></li> +<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;multiplication.</span></div></li> +<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a123"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$nrt</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Compute&nbsp;the&nbsp;k-th&nbsp;row&nbsp;transformation&nbsp;and&nbsp;place&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;k-th&nbsp;super-diagonal&nbsp;in&nbsp;e[$k].</span></div></li> +<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Compute&nbsp;2-norm&nbsp;without&nbsp;under/overflow.</span></div></li> +<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html#functionhypo">hypo</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>&lt;&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>/=&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$k</span>+<span class="src-num">1&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">)&nbsp;</span><span class="src-key">AND&nbsp;</span><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Apply&nbsp;the&nbsp;transformation.</span></div></li> +<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$work</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$work</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a151"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a152"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;-<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-var">$t&nbsp;</span>*&nbsp;<span class="src-var">$work</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$wantv</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Place&nbsp;the&nbsp;transformation&nbsp;in&nbsp;V&nbsp;for&nbsp;subsequent</span></div></li> +<li><div class="src-line"><a name="a161"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;back&nbsp;multiplication.</span></div></li> +<li><div class="src-line"><a name="a162"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a163"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a164"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a166"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a168"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Set&nbsp;up&nbsp;the&nbsp;final&nbsp;bidiagonal&nbsp;matrix&nbsp;or&nbsp;order&nbsp;p.</span></div></li> +<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p&nbsp;</span>=&nbsp;<a href="http://www.php.net/min">min</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a171"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$nct&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$nct</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$nct</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$nct</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m&nbsp;</span>&lt;&nbsp;<span class="src-var">$p</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a177"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$nrt&nbsp;</span>+&nbsp;<span class="src-num">1&nbsp;</span>&lt;&nbsp;<span class="src-var">$p</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$nrt</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$nrt</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;If&nbsp;required,&nbsp;generate&nbsp;U.</span></div></li> +<li><div class="src-line"><a name="a182"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$wantu</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$nct</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nu</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a184"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a185"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a186"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a187"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a188"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a189"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$nct&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a190"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nu</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a192"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a194"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a195"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a196"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;-<span class="src-var">$t&nbsp;</span>/&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-var">$t&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a201"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i&nbsp;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a202"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a203"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.0&nbsp;</span>+&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a205"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$k&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a206"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a207"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a208"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a209"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a210"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a213"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a214"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a215"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a216"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a217"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;If&nbsp;required,&nbsp;generate&nbsp;V.</span></div></li> +<li><div class="src-line"><a name="a218"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$wantv</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a219"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a220"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$nrt</span><span class="src-sym">)&nbsp;</span><span class="src-key">AND&nbsp;</span><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$nu</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a222"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a223"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a224"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>+=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a225"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a226"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;-<span class="src-var">$t&nbsp;</span>/&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a227"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a228"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-var">$t&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a229"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a230"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a231"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a232"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a233"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a234"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a235"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a236"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a237"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a238"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Main&nbsp;iteration&nbsp;loop&nbsp;for&nbsp;the&nbsp;singular&nbsp;values.</span></div></li> +<li><div class="src-line"><a name="a240"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$pp&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a241"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$iter&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a242"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$eps&nbsp;&nbsp;</span>=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-num">2.0</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">52.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a243"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a244"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a245"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;is&nbsp;where&nbsp;a&nbsp;test&nbsp;for&nbsp;too&nbsp;many&nbsp;iterations&nbsp;would&nbsp;go.</span></div></li> +<li><div class="src-line"><a name="a246"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;This&nbsp;section&nbsp;of&nbsp;the&nbsp;program&nbsp;inspects&nbsp;for&nbsp;negligible</span></div></li> +<li><div class="src-line"><a name="a247"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;elements&nbsp;in&nbsp;the&nbsp;s&nbsp;and&nbsp;e&nbsp;arrays.&nbsp;&nbsp;On&nbsp;completion&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a248"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;variables&nbsp;kase&nbsp;and&nbsp;k&nbsp;are&nbsp;set&nbsp;as&nbsp;follows:</span></div></li> +<li><div class="src-line"><a name="a249"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;kase&nbsp;=&nbsp;1&nbsp;&nbsp;if&nbsp;s(p)&nbsp;and&nbsp;e[k-1]&nbsp;are&nbsp;negligible&nbsp;and&nbsp;k&lt;p</span></div></li> +<li><div class="src-line"><a name="a250"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;kase&nbsp;=&nbsp;2&nbsp;&nbsp;if&nbsp;s(k)&nbsp;is&nbsp;negligible&nbsp;and&nbsp;k&lt;p</span></div></li> +<li><div class="src-line"><a name="a251"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;kase&nbsp;=&nbsp;3&nbsp;&nbsp;if&nbsp;e[k-1]&nbsp;is&nbsp;negligible,&nbsp;k&lt;p,&nbsp;and</span></div></li> +<li><div class="src-line"><a name="a252"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s(k),&nbsp;...,&nbsp;s(p)&nbsp;are&nbsp;not&nbsp;negligible&nbsp;(qr&nbsp;step).</span></div></li> +<li><div class="src-line"><a name="a253"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;kase&nbsp;=&nbsp;4&nbsp;&nbsp;if&nbsp;e(p-1)&nbsp;is&nbsp;negligible&nbsp;(convergence).</span></div></li> +<li><div class="src-line"><a name="a254"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>-&nbsp;<span class="src-num">2</span><span class="src-sym">;&nbsp;</span><span class="src-var">$k&nbsp;</span>&gt;=&nbsp;-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>==&nbsp;-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a256"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a257"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a258"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&lt;=&nbsp;<span class="src-var">$eps&nbsp;</span>*&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>+&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a259"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a260"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a261"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a262"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a263"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>==&nbsp;<span class="src-var">$p&nbsp;</span>-&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a264"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$kase&nbsp;</span>=&nbsp;<span class="src-num">4</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a265"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a266"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ks&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$ks&nbsp;</span>&gt;=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$ks</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a267"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ks&nbsp;</span>==&nbsp;<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a268"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a269"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a270"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$ks&nbsp;</span>!=&nbsp;<span class="src-var">$p&nbsp;</span>?&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$ks</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>:&nbsp;<span class="src-num">0.</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$ks&nbsp;</span>!=&nbsp;<span class="src-var">$k&nbsp;</span>+&nbsp;<span class="src-num">1&nbsp;</span>?&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$ks</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>:&nbsp;<span class="src-num">0.</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a271"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$ks</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&lt;=&nbsp;<span class="src-var">$eps&nbsp;</span>*&nbsp;<span class="src-var">$t</span><span class="src-sym">)&nbsp;&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a272"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$ks</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a273"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a274"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a275"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a276"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ks&nbsp;</span>==&nbsp;<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a277"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$kase&nbsp;</span>=&nbsp;<span class="src-num">3</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a278"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$ks&nbsp;</span>==&nbsp;<span class="src-var">$p</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a279"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$kase&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a280"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a281"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$kase&nbsp;</span>=&nbsp;<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a282"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$k&nbsp;</span>=&nbsp;<span class="src-var">$ks</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a283"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a284"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a285"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;++<span class="src-var">$k</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a286"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a287"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Perform&nbsp;the&nbsp;task&nbsp;indicated&nbsp;by&nbsp;kase.</span></div></li> +<li><div class="src-line"><a name="a288"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$kase</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a289"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Deflate&nbsp;negligible&nbsp;s(p).</span></div></li> +<li><div class="src-line"><a name="a290"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-num">1</span>:</div></li> +<li><div class="src-line"><a name="a291"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a292"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">2</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a293"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>-&nbsp;<span class="src-num">2</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&gt;=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a294"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;&nbsp;</span>=&nbsp;<a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html#functionhypo">hypo</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-var">$f</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a295"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cs&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a296"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sn&nbsp;</span>=&nbsp;<span class="src-var">$f&nbsp;</span>/&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a297"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a298"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>!=&nbsp;<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a299"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;-<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a300"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a301"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a302"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$wantv</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a303"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a304"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a305"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a306"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a307"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a308"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a309"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a310"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a311"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Split&nbsp;at&nbsp;negligible&nbsp;s(k).</span></div></li> +<li><div class="src-line"><a name="a312"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-num">2</span>:</div></li> +<li><div class="src-line"><a name="a313"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a314"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a315"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$p</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a316"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html#functionhypo">hypo</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$f</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a317"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cs&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a318"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sn&nbsp;</span>=&nbsp;<span class="src-var">$f&nbsp;</span>/&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a319"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a320"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;-<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a321"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a322"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$wantu</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a323"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a324"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a325"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a326"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a327"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a328"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a329"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a330"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a331"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Perform&nbsp;one&nbsp;qr&nbsp;step.</span></div></li> +<li><div class="src-line"><a name="a332"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-num">3</span>:</div></li> +<li><div class="src-line"><a name="a333"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Calculate&nbsp;the&nbsp;shift.</span></div></li> +<li><div class="src-line"><a name="a334"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$scale&nbsp;</span>=&nbsp;<a href="http://www.php.net/max">max</a><span class="src-sym">(</span><a href="http://www.php.net/max">max</a><span class="src-sym">(</span><a href="http://www.php.net/max">max</a><span class="src-sym">(</span><a href="http://www.php.net/max">max</a><span class="src-sym">(</span></div></li> +<li><div class="src-line"><a name="a335"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">,</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">,</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a336"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a337"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sp&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$scale</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a338"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$spm1&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">2</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$scale</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a339"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$epm1&nbsp;</span>=&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">2</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$scale</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a340"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sk&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$scale</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a341"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ek&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$scale</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a342"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$b&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-sym">((</span><span class="src-var">$spm1&nbsp;</span>+&nbsp;<span class="src-var">$sp</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-sym">(</span><span class="src-var">$spm1&nbsp;</span>-&nbsp;<span class="src-var">$sp</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-var">$epm1&nbsp;</span>*&nbsp;<span class="src-var">$epm1</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-num">2.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a343"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$c&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$sp&nbsp;</span>*&nbsp;<span class="src-var">$epm1</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-sym">(</span><span class="src-var">$sp&nbsp;</span>*&nbsp;<span class="src-var">$epm1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a344"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$shift&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a345"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$b&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span>||&nbsp;<span class="src-sym">(</span><span class="src-var">$c&nbsp;</span>!=&nbsp;<span class="src-num">0.0</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a346"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$shift&nbsp;</span>=&nbsp;<a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$b&nbsp;</span>*&nbsp;<span class="src-var">$b&nbsp;</span>+&nbsp;<span class="src-var">$c</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a347"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$b&nbsp;</span>&lt;&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a348"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$shift&nbsp;</span>=&nbsp;-<span class="src-var">$shift</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a349"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a350"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$shift&nbsp;</span>=&nbsp;<span class="src-var">$c&nbsp;</span>/&nbsp;<span class="src-sym">(</span><span class="src-var">$b&nbsp;</span>+&nbsp;<span class="src-var">$shift</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a351"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a352"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$sk&nbsp;</span>+&nbsp;<span class="src-var">$sp</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-sym">(</span><span class="src-var">$sk&nbsp;</span>-&nbsp;<span class="src-var">$sp</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-var">$shift</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a353"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<span class="src-var">$sk&nbsp;</span>*&nbsp;<span class="src-var">$ek</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a354"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Chase&nbsp;zeros.</span></div></li> +<li><div class="src-line"><a name="a355"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-var">$k</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$p</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a356"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;&nbsp;</span>=&nbsp;<a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html#functionhypo">hypo</a><span class="src-sym">(</span><span class="src-var">$f</span><span class="src-sym">,</span><span class="src-var">$g</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a357"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cs&nbsp;</span>=&nbsp;<span class="src-var">$f</span>/<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a358"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sn&nbsp;</span>=&nbsp;<span class="src-var">$g</span>/<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a359"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>!=&nbsp;<span class="src-var">$k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a360"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a361"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a362"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a363"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a364"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a365"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a366"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$wantv</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a367"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a368"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a369"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a370"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a371"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a372"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a373"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<a href="../JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html#functionhypo">hypo</a><span class="src-sym">(</span><span class="src-var">$f</span><span class="src-sym">,</span><span class="src-var">$g</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a374"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cs&nbsp;</span>=&nbsp;<span class="src-var">$f</span>/<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a375"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sn&nbsp;</span>=&nbsp;<span class="src-var">$g</span>/<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a376"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a377"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a378"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a379"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a380"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a381"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$wantu&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a382"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a383"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a384"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$sn&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$cs&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a385"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a386"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a387"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a388"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a389"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e</span><span class="src-sym">[</span><span class="src-var">$p</span>-<span class="src-num">2</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$f</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a390"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$iter&nbsp;</span>=&nbsp;<span class="src-var">$iter&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a391"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a392"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Convergence.</span></div></li> +<li><div class="src-line"><a name="a393"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-num">4</span>:</div></li> +<li><div class="src-line"><a name="a394"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Make&nbsp;the&nbsp;singular&nbsp;values&nbsp;positive.</span></div></li> +<li><div class="src-line"><a name="a395"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>&lt;=&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a396"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>&lt;&nbsp;<span class="src-num">0.0&nbsp;</span>?&nbsp;-<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>:&nbsp;<span class="src-num">0.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a397"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$wantv</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a398"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;=&nbsp;<span class="src-var">$pp</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a399"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a400"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a401"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a402"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a403"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Order&nbsp;the&nbsp;singular&nbsp;values.</span></div></li> +<li><div class="src-line"><a name="a404"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$pp</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a405"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>&gt;=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a406"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a407"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a408"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a409"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a410"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a411"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$wantv&nbsp;</span><span class="src-key">AND&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a412"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a413"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a414"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a415"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a416"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a417"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a418"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$wantu&nbsp;</span><span class="src-key">AND&nbsp;</span><span class="src-sym">(</span><span class="src-var">$k&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span>-<span class="src-num">1</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a419"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a420"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$t&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a421"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a422"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$k</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$t</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a423"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a424"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a425"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;++<span class="src-var">$k</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a426"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a427"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$iter&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a428"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;--<span class="src-var">$p</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a429"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a430"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//&nbsp;end&nbsp;switch</span></div></li> +<li><div class="src-line"><a name="a431"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//&nbsp;end&nbsp;while</span></div></li> +<li><div class="src-line"><a name="a432"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a433"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//&nbsp;end&nbsp;constructor</span></div></li> +<li><div class="src-line"><a name="a434"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a435"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a436"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a437"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;the&nbsp;left&nbsp;singular&nbsp;vectors</span></div></li> +<li><div class="src-line"><a name="a438"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a439"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a440"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">U&nbsp;</span></div></li> +<li><div class="src-line"><a name="a441"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a442"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/SingularValueDecomposition.html#methodgetU">getU</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a443"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">U</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/min">min</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a444"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a445"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a446"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a447"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a448"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;the&nbsp;right&nbsp;singular&nbsp;vectors</span></div></li> +<li><div class="src-line"><a name="a449"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a450"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a451"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">V&nbsp;</span></div></li> +<li><div class="src-line"><a name="a452"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a453"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/SingularValueDecomposition.html#methodgetV">getV</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a454"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">V</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a455"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a456"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a457"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a458"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a459"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;the&nbsp;one-dimensional&nbsp;array&nbsp;of&nbsp;singular&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a460"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a461"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a462"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">diagonal&nbsp;</span><span class="src-doc">of&nbsp;S.</span></div></li> +<li><div class="src-line"><a name="a463"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a464"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/SingularValueDecomposition.html#methodgetSingularValues">getSingularValues</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a465"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a466"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a467"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a468"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a469"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a470"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Return&nbsp;the&nbsp;diagonal&nbsp;matrix&nbsp;of&nbsp;singular&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a471"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a472"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a473"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">S&nbsp;</span></div></li> +<li><div class="src-line"><a name="a474"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a475"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/SingularValueDecomposition.html#methodgetS">getS</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a476"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a477"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a478"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$S</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a479"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a480"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$S</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a481"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a482"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$S</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a483"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a484"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a485"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a486"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a487"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Two&nbsp;norm</span></div></li> +<li><div class="src-line"><a name="a488"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a489"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a490"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">max(S)&nbsp;</span></div></li> +<li><div class="src-line"><a name="a491"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a492"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/SingularValueDecomposition.html#methodnorm2">norm2</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a493"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a494"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a495"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a496"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a497"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a498"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Two&nbsp;norm&nbsp;condition&nbsp;number</span></div></li> +<li><div class="src-line"><a name="a499"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a500"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a501"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">max(S)/min(S)&nbsp;</span></div></li> +<li><div class="src-line"><a name="a502"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a503"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/SingularValueDecomposition.html#methodcond">cond</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a504"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>/&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><a href="http://www.php.net/min">min</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">)&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a505"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a506"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a507"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a508"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a509"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;Effective&nbsp;numerical&nbsp;matrix&nbsp;rank</span></div></li> +<li><div class="src-line"><a name="a510"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a511"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a512"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Number&nbsp;</span><span class="src-doc">of&nbsp;nonnegligible&nbsp;singular&nbsp;values.</span></div></li> +<li><div class="src-line"><a name="a513"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a514"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../JAMA/SingularValueDecomposition.html#methodrank">rank</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a515"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$eps&nbsp;</span>=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-num">2.0</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">52.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a516"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tol&nbsp;</span>=&nbsp;<a href="http://www.php.net/max">max</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">m</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">n</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$eps</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a517"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a518"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a519"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">s</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>&gt;&nbsp;<span class="src-var">$tol</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a520"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;++<span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a521"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a522"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a523"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a524"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a525"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a526"></a><span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;SingularValueDecomposition</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:45 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html new file mode 100644 index 0000000..5ab9176 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_Math_Stats__PHPExcelSharedJAMAexamplesStats.php.html @@ -0,0 +1,1683 @@ +<html> +<head> +<title>File Source for Stats.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">Math_Stats</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_Math_Stats.html" class="menu">class tree: Math_Stats</a> ] + [ <a href="../elementindex_Math_Stats.html" class="menu">index: Math_Stats</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file Stats.php</h1> +<p>Documentation is available at <a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html">Stats.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a><span class="src-comm">//</span></div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-comm">//&nbsp;+----------------------------------------------------------------------+</span></div></li> +<li><div class="src-line"><a name="a4"></a><span class="src-comm">//&nbsp;|&nbsp;PHP&nbsp;Version&nbsp;4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-comm">//&nbsp;+----------------------------------------------------------------------+</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-comm">//&nbsp;|&nbsp;Copyright&nbsp;(c)&nbsp;1997-2003&nbsp;The&nbsp;PHP&nbsp;Group&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-comm">//&nbsp;+----------------------------------------------------------------------+</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-comm">//&nbsp;|&nbsp;This&nbsp;source&nbsp;file&nbsp;is&nbsp;subject&nbsp;to&nbsp;version&nbsp;2.0&nbsp;of&nbsp;the&nbsp;PHP&nbsp;license,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-comm">//&nbsp;|&nbsp;that&nbsp;is&nbsp;bundled&nbsp;with&nbsp;this&nbsp;package&nbsp;in&nbsp;the&nbsp;file&nbsp;LICENSE,&nbsp;and&nbsp;is&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-comm">//&nbsp;|&nbsp;available&nbsp;at&nbsp;through&nbsp;the&nbsp;world-wide-web&nbsp;at&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-comm">//&nbsp;|&nbsp;http://www.php.net/license/2_02.txt.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-comm">//&nbsp;|&nbsp;If&nbsp;you&nbsp;did&nbsp;not&nbsp;receive&nbsp;a&nbsp;copy&nbsp;of&nbsp;the&nbsp;PHP&nbsp;license&nbsp;and&nbsp;are&nbsp;unable&nbsp;to&nbsp;&nbsp;&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-comm">//&nbsp;|&nbsp;obtain&nbsp;it&nbsp;through&nbsp;the&nbsp;world-wide-web,&nbsp;please&nbsp;send&nbsp;a&nbsp;note&nbsp;to&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-comm">//&nbsp;|&nbsp;license@php.net&nbsp;so&nbsp;we&nbsp;can&nbsp;mail&nbsp;you&nbsp;a&nbsp;copy&nbsp;immediately.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-comm">//&nbsp;+----------------------------------------------------------------------+</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-comm">//&nbsp;|&nbsp;Authors:&nbsp;Jesus&nbsp;M.&nbsp;Castagnetto&nbsp;&lt;jmcastagnetto@php.net&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-comm">//&nbsp;+----------------------------------------------------------------------+</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-comm">//</span></div></li> +<li><div class="src-line"><a name="a19"></a><span class="src-comm">//&nbsp;$Id:&nbsp;Stats.php,v&nbsp;1.15&nbsp;2003/06/01&nbsp;11:40:30&nbsp;jmcastagnetto&nbsp;Exp&nbsp;$</span></div></li> +<li><div class="src-line"><a name="a20"></a><span class="src-comm">//</span></div></li> +<li><div class="src-line"><a name="a21"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a22"></a><span class="src-inc">include_once&nbsp;</span><span class="src-str">'PEAR.php'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a23"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a24"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a25"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;Math_Stats</span></div></li> +<li><div class="src-line"><a name="a26"></a><span class="src-doc">*/</span></div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a28"></a><span class="src-comm">//&nbsp;Constants&nbsp;for&nbsp;defining&nbsp;the&nbsp;statistics&nbsp;to&nbsp;calculate&nbsp;/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a29"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a30"></a><span class="src-doc">*&nbsp;STATS_BASIC&nbsp;to&nbsp;generate&nbsp;the&nbsp;basic&nbsp;descriptive&nbsp;statistics</span></div></li> +<li><div class="src-line"><a name="a31"></a><span class="src-doc">*/</span></div></li> +<li><div class="src-line"><a name="a32"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'STATS_BASIC'</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a33"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a34"></a><span class="src-doc">*&nbsp;STATS_FULL&nbsp;to&nbsp;generate&nbsp;also&nbsp;higher&nbsp;moments,&nbsp;mode,&nbsp;median,&nbsp;etc.</span></div></li> +<li><div class="src-line"><a name="a35"></a><span class="src-doc">*/</span></div></li> +<li><div class="src-line"><a name="a36"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'STATS_FULL'</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a37"></a><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a38"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a39"></a><span class="src-comm">//&nbsp;Constants&nbsp;describing&nbsp;the&nbsp;data&nbsp;set&nbsp;format&nbsp;/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a40"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a41"></a><span class="src-doc">*&nbsp;STATS_DATA_SIMPLE&nbsp;for&nbsp;an&nbsp;array&nbsp;of&nbsp;numeric&nbsp;values.&nbsp;This&nbsp;is&nbsp;the&nbsp;default.</span></div></li> +<li><div class="src-line"><a name="a42"></a><span class="src-doc">*&nbsp;e.g.&nbsp;$data&nbsp;=&nbsp;array(2,3,4,5,1,1,6);</span></div></li> +<li><div class="src-line"><a name="a43"></a><span class="src-doc">*/</span></div></li> +<li><div class="src-line"><a name="a44"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'STATS_DATA_SIMPLE'</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a45"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a46"></a><span class="src-doc">*&nbsp;STATS_DATA_CUMMULATIVE&nbsp;for&nbsp;an&nbsp;associative&nbsp;array&nbsp;of&nbsp;frequency&nbsp;values,</span></div></li> +<li><div class="src-line"><a name="a47"></a><span class="src-doc">*&nbsp;where&nbsp;in&nbsp;each&nbsp;array&nbsp;entry,&nbsp;the&nbsp;index&nbsp;is&nbsp;the&nbsp;data&nbsp;point&nbsp;and&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a48"></a><span class="src-doc">*&nbsp;value&nbsp;the&nbsp;count&nbsp;(frequency):</span></div></li> +<li><div class="src-line"><a name="a49"></a><span class="src-doc">*&nbsp;e.g.&nbsp;$data&nbsp;=&nbsp;array(3=&gt;4,&nbsp;2.3=&gt;5,&nbsp;1.25=&gt;6,&nbsp;0.5=&gt;3)</span></div></li> +<li><div class="src-line"><a name="a50"></a><span class="src-doc">*/</span></div></li> +<li><div class="src-line"><a name="a51"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'STATS_DATA_CUMMULATIVE'</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a52"></a><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a53"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a54"></a><span class="src-comm">//&nbsp;Constants&nbsp;defining&nbsp;how&nbsp;to&nbsp;handle&nbsp;nulls&nbsp;/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a55"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a56"></a><span class="src-doc">*&nbsp;STATS_REJECT_NULL,&nbsp;reject&nbsp;data&nbsp;sets&nbsp;with&nbsp;null&nbsp;values.&nbsp;This&nbsp;is&nbsp;the&nbsp;default.</span></div></li> +<li><div class="src-line"><a name="a57"></a><span class="src-doc">*&nbsp;Any&nbsp;non-numeric&nbsp;value&nbsp;is&nbsp;considered&nbsp;a&nbsp;null&nbsp;in&nbsp;this&nbsp;context.</span></div></li> +<li><div class="src-line"><a name="a58"></a><span class="src-doc">*/</span></div></li> +<li><div class="src-line"><a name="a59"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'STATS_REJECT_NULL'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a60"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a61"></a><span class="src-doc">*&nbsp;STATS_IGNORE_NULL,&nbsp;ignore&nbsp;null&nbsp;values&nbsp;and&nbsp;prune&nbsp;them&nbsp;from&nbsp;the&nbsp;data.</span></div></li> +<li><div class="src-line"><a name="a62"></a><span class="src-doc">*&nbsp;Any&nbsp;non-numeric&nbsp;value&nbsp;is&nbsp;considered&nbsp;a&nbsp;null&nbsp;in&nbsp;this&nbsp;context.</span></div></li> +<li><div class="src-line"><a name="a63"></a><span class="src-doc">*/</span></div></li> +<li><div class="src-line"><a name="a64"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'STATS_IGNORE_NULL'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a65"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a66"></a><span class="src-doc">*&nbsp;STATS_USE_NULL_AS_ZERO,&nbsp;assign&nbsp;the&nbsp;value&nbsp;of&nbsp;0&nbsp;(zero)&nbsp;to&nbsp;null&nbsp;values.</span></div></li> +<li><div class="src-line"><a name="a67"></a><span class="src-doc">*&nbsp;Any&nbsp;non-numeric&nbsp;value&nbsp;is&nbsp;considered&nbsp;a&nbsp;null&nbsp;in&nbsp;this&nbsp;context.</span></div></li> +<li><div class="src-line"><a name="a68"></a><span class="src-doc">*/</span></div></li> +<li><div class="src-line"><a name="a69"></a><a href="http://www.php.net/define">define</a><span class="src-sym">(</span><span class="src-str">'STATS_USE_NULL_AS_ZERO'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a70"></a><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a71"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a72"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a73"></a><span class="src-doc">*&nbsp;A&nbsp;class&nbsp;to&nbsp;calculate&nbsp;descriptive&nbsp;statistics&nbsp;from&nbsp;a&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a74"></a><span class="src-doc">*&nbsp;Data&nbsp;sets&nbsp;can&nbsp;be&nbsp;simple&nbsp;arrays&nbsp;of&nbsp;data,&nbsp;or&nbsp;a&nbsp;cummulative&nbsp;hash.</span></div></li> +<li><div class="src-line"><a name="a75"></a><span class="src-doc">*&nbsp;The&nbsp;second&nbsp;form&nbsp;is&nbsp;useful&nbsp;when&nbsp;passing&nbsp;large&nbsp;data&nbsp;set,</span></div></li> +<li><div class="src-line"><a name="a76"></a><span class="src-doc">*&nbsp;for&nbsp;example&nbsp;the&nbsp;data&nbsp;set:</span></div></li> +<li><div class="src-line"><a name="a77"></a><span class="src-doc">*</span></div></li> +<li><div class="src-line"><a name="a78"></a><span class="src-doc">*&nbsp;&lt;pre&gt;</span></div></li> +<li><div class="src-line"><a name="a79"></a><span class="src-doc">*&nbsp;$data1&nbsp;=&nbsp;array&nbsp;(1,2,1,1,1,1,3,3,4.1,3,2,2,4.1,1,1,2,3,3,2,2,1,1,2,2);</span></div></li> +<li><div class="src-line"><a name="a80"></a><span class="src-doc">*&nbsp;&lt;/pre&gt;</span></div></li> +<li><div class="src-line"><a name="a81"></a><span class="src-doc">*</span></div></li> +<li><div class="src-line"><a name="a82"></a><span class="src-doc">*&nbsp;can&nbsp;be&nbsp;epxressed&nbsp;more&nbsp;compactly&nbsp;as:</span></div></li> +<li><div class="src-line"><a name="a83"></a><span class="src-doc">*</span></div></li> +<li><div class="src-line"><a name="a84"></a><span class="src-doc">*&nbsp;&lt;pre&gt;</span></div></li> +<li><div class="src-line"><a name="a85"></a><span class="src-doc">*&nbsp;$data2&nbsp;=&nbsp;array('1'=&gt;9,&nbsp;'2'=&gt;8,&nbsp;'3'=&gt;5,&nbsp;'4.1'=&gt;2);</span></div></li> +<li><div class="src-line"><a name="a86"></a><span class="src-doc">*&nbsp;&lt;/pre&gt;</span></div></li> +<li><div class="src-line"><a name="a87"></a><span class="src-doc">*</span></div></li> +<li><div class="src-line"><a name="a88"></a><span class="src-doc">*&nbsp;Example&nbsp;of&nbsp;use:</span></div></li> +<li><div class="src-line"><a name="a89"></a><span class="src-doc">*</span></div></li> +<li><div class="src-line"><a name="a90"></a><span class="src-doc">*&nbsp;&lt;pre&gt;</span></div></li> +<li><div class="src-line"><a name="a91"></a><span class="src-doc">*&nbsp;include_once&nbsp;'Math/Stats.php';</span></div></li> +<li><div class="src-line"><a name="a92"></a><span class="src-doc">*&nbsp;$s&nbsp;=&nbsp;new&nbsp;Math_Stats();</span></div></li> +<li><div class="src-line"><a name="a93"></a><span class="src-doc">*&nbsp;$s-&gt;setData($data1);</span></div></li> +<li><div class="src-line"><a name="a94"></a><span class="src-doc">*&nbsp;//&nbsp;or</span></div></li> +<li><div class="src-line"><a name="a95"></a><span class="src-doc">*&nbsp;//&nbsp;$s-&gt;setData($data2,&nbsp;STATS_DATA_CUMMULATIVE);</span></div></li> +<li><div class="src-line"><a name="a96"></a><span class="src-doc">*&nbsp;$stats&nbsp;=&nbsp;$s-&gt;calcBasic();</span></div></li> +<li><div class="src-line"><a name="a97"></a><span class="src-doc">*&nbsp;echo&nbsp;'Mean:&nbsp;'.$stats['mean'].'&nbsp;StDev:&nbsp;'.$stats['stdev'].'&nbsp;&lt;br&nbsp;/&gt;\n';</span></div></li> +<li><div class="src-line"><a name="a98"></a><span class="src-doc">*</span></div></li> +<li><div class="src-line"><a name="a99"></a><span class="src-doc">*&nbsp;//&nbsp;using&nbsp;data&nbsp;with&nbsp;nulls</span></div></li> +<li><div class="src-line"><a name="a100"></a><span class="src-doc">*&nbsp;//&nbsp;first&nbsp;ignoring&nbsp;them:</span></div></li> +<li><div class="src-line"><a name="a101"></a><span class="src-doc">*&nbsp;$data3&nbsp;=&nbsp;array(1.2,&nbsp;'foo',&nbsp;2.4,&nbsp;3.1,&nbsp;4.2,&nbsp;3.2,&nbsp;null,&nbsp;5.1,&nbsp;6.2);</span></div></li> +<li><div class="src-line"><a name="a102"></a><span class="src-doc">*&nbsp;$s-&gt;setNullOption(STATS_IGNORE_NULL);</span></div></li> +<li><div class="src-line"><a name="a103"></a><span class="src-doc">*&nbsp;$s-&gt;setData($data3);</span></div></li> +<li><div class="src-line"><a name="a104"></a><span class="src-doc">*&nbsp;$stats3&nbsp;=&nbsp;$s-&gt;calcFull();</span></div></li> +<li><div class="src-line"><a name="a105"></a><span class="src-doc">*</span></div></li> +<li><div class="src-line"><a name="a106"></a><span class="src-doc">*&nbsp;//&nbsp;and&nbsp;then&nbsp;assuming&nbsp;nulls&nbsp;==&nbsp;0</span></div></li> +<li><div class="src-line"><a name="a107"></a><span class="src-doc">*&nbsp;$s-&gt;setNullOption(STATS_USE_NULL_AS_ZERO);</span></div></li> +<li><div class="src-line"><a name="a108"></a><span class="src-doc">*&nbsp;$s-&gt;setData($data3);</span></div></li> +<li><div class="src-line"><a name="a109"></a><span class="src-doc">*&nbsp;$stats3&nbsp;=&nbsp;$s-&gt;calcFull();</span></div></li> +<li><div class="src-line"><a name="a110"></a><span class="src-doc">*&nbsp;&lt;/pre&gt;</span></div></li> +<li><div class="src-line"><a name="a111"></a><span class="src-doc">*</span></div></li> +<li><div class="src-line"><a name="a112"></a><span class="src-doc">*&nbsp;Originally&nbsp;this&nbsp;class&nbsp;was&nbsp;part&nbsp;of&nbsp;NumPHP&nbsp;(Numeric&nbsp;PHP&nbsp;package)</span></div></li> +<li><div class="src-line"><a name="a113"></a><span class="src-doc">*</span></div></li> +<li><div class="src-line"><a name="a114"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;&nbsp;Jesus&nbsp;M.&nbsp;Castagnetto&nbsp;&lt;jmcastagnetto@php.net&gt;</span></div></li> +<li><div class="src-line"><a name="a115"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;0.8</span></div></li> +<li><div class="src-line"><a name="a116"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a117"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;Math_Stats</span></div></li> +<li><div class="src-line"><a name="a118"></a><span class="src-doc">*/</span></div></li> +<li><div class="src-line"><a name="a119"></a><span class="src-key">class&nbsp;</span><a href="../Math_Stats/Base.html">Base</a>&nbsp;<span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;properties&nbsp;/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a121"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a123"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;simple&nbsp;or&nbsp;cummulative&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a124"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Null&nbsp;by&nbsp;default.</span></div></li> +<li><div class="src-line"><a name="a125"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a126"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a127"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a128"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><a href="../Math_Stats/Base.html#var$_data">$_data</a>&nbsp;=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a130"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a132"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Expanded&nbsp;data&nbsp;set.&nbsp;Only&nbsp;set&nbsp;when&nbsp;cummulative&nbsp;data</span></div></li> +<li><div class="src-line"><a name="a133"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;is&nbsp;being&nbsp;used.&nbsp;Null&nbsp;by&nbsp;default.</span></div></li> +<li><div class="src-line"><a name="a134"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a135"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a136"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a137"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">$_dataExpanded</a>&nbsp;=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a139"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a141"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Flag&nbsp;for&nbsp;data&nbsp;type,&nbsp;one&nbsp;of&nbsp;STATS_DATA_SIMPLE&nbsp;or</span></div></li> +<li><div class="src-line"><a name="a142"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;STATS_DATA_CUMMULATIVE.&nbsp;Null&nbsp;by&nbsp;default.</span></div></li> +<li><div class="src-line"><a name="a143"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a144"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a145"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">int&nbsp;</span></div></li> +<li><div class="src-line"><a name="a146"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><a href="../Math_Stats/Base.html#var$_dataOption">$_dataOption</a>&nbsp;=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a148"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a150"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Flag&nbsp;for&nbsp;null&nbsp;handling&nbsp;options.&nbsp;One&nbsp;of&nbsp;STATS_REJECT_NULL,</span></div></li> +<li><div class="src-line"><a name="a151"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;STATS_IGNORE_NULL&nbsp;or&nbsp;STATS_USE_NULL_AS_ZERO</span></div></li> +<li><div class="src-line"><a name="a152"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a153"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a154"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">int&nbsp;</span></div></li> +<li><div class="src-line"><a name="a155"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><a href="../Math_Stats/Base.html#var$_nullOption">$_nullOption</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a157"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a159"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Array&nbsp;for&nbsp;caching&nbsp;result&nbsp;values,&nbsp;should&nbsp;be&nbsp;reset</span></div></li> +<li><div class="src-line"><a name="a160"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;when&nbsp;using&nbsp;setData()</span></div></li> +<li><div class="src-line"><a name="a161"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a162"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a163"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@var&nbsp;</span><span class="src-doc-type">array&nbsp;</span></div></li> +<li><div class="src-line"><a name="a164"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">$_calculatedValues</a>&nbsp;=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a166"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a168"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a170"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructor&nbsp;for&nbsp;the&nbsp;class</span></div></li> +<li><div class="src-line"><a name="a171"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a172"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a173"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">optional&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;int&nbsp;$nullOption&nbsp;how&nbsp;to&nbsp;handle&nbsp;null&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a174"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">object&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">Math_Stats&nbsp;</span></div></li> +<li><div class="src-line"><a name="a175"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodMath_Stats">Math_Stats</a><span class="src-sym">(</span><span class="src-var">$nullOption</span>=<span class="src-id">STATS_REJECT_NULL</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a177"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_nullOption">_nullOption</a>&nbsp;=&nbsp;<span class="src-var">$nullOption</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a179"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a181"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Sets&nbsp;and&nbsp;verifies&nbsp;the&nbsp;data,&nbsp;checking&nbsp;for&nbsp;nulls&nbsp;and&nbsp;using</span></div></li> +<li><div class="src-line"><a name="a182"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;the&nbsp;current&nbsp;null&nbsp;handling&nbsp;option</span></div></li> +<li><div class="src-line"><a name="a183"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a184"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a185"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">array&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-var">$arr&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;the&nbsp;data&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a186"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">optional&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;int&nbsp;$opt&nbsp;&nbsp;&nbsp;&nbsp;data&nbsp;format:&nbsp;STATS_DATA_CUMMULATIVE&nbsp;or&nbsp;STATS_DATA_SIMPLE&nbsp;(default)</span></div></li> +<li><div class="src-line"><a name="a187"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;true&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a188"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a189"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodsetData">setData</a><span class="src-sym">(</span><span class="src-var">$arr</span><span class="src-sym">,&nbsp;</span><span class="src-var">$opt</span>=<span class="src-id">STATS_DATA_SIMPLE</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a190"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$arr</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'invalid&nbsp;data,&nbsp;an&nbsp;array&nbsp;of&nbsp;numeric&nbsp;data&nbsp;was&nbsp;expected'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a192"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a194"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">_dataExpanded</a>&nbsp;=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a195"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a196"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a>&nbsp;=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$opt&nbsp;</span>==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_SIMPLE">STATS_DATA_SIMPLE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;=&nbsp;<span class="src-var">$opt</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;=&nbsp;<a href="http://www.php.net/array_values">array_values</a><span class="src-sym">(</span><span class="src-var">$arr</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$opt&nbsp;</span>==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a201"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;=&nbsp;<span class="src-var">$opt</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a202"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;=&nbsp;<span class="src-var">$arr</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a203"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">_dataExpanded</a>&nbsp;=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a205"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">_validate</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a206"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a207"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a208"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a209"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Returns&nbsp;the&nbsp;data&nbsp;which&nbsp;might&nbsp;have&nbsp;been&nbsp;modified</span></div></li> +<li><div class="src-line"><a name="a210"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;according&nbsp;to&nbsp;the&nbsp;current&nbsp;null&nbsp;handling&nbsp;options.</span></div></li> +<li><div class="src-line"><a name="a211"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a212"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a213"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc-var">$expanded&nbsp;</span><span class="src-doc">whether&nbsp;to&nbsp;return&nbsp;a&nbsp;expanded&nbsp;list,&nbsp;default&nbsp;is&nbsp;false</span></div></li> +<li><div class="src-line"><a name="a214"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;array&nbsp;of&nbsp;data&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a215"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;_validate()</span></div></li> +<li><div class="src-line"><a name="a216"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a217"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodgetData">getData</a><span class="src-sym">(</span><span class="src-var">$expanded</span>=<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a218"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a219"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a220"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a>&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$expanded</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a222"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">_dataExpanded</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a223"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a224"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a225"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a226"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a227"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a228"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a229"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Sets&nbsp;the&nbsp;null&nbsp;handling&nbsp;option.</span></div></li> +<li><div class="src-line"><a name="a230"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Must&nbsp;be&nbsp;called&nbsp;before&nbsp;assigning&nbsp;a&nbsp;new&nbsp;data&nbsp;set&nbsp;containing&nbsp;null&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a231"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a232"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a233"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;true&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a234"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;_validate()</span></div></li> +<li><div class="src-line"><a name="a235"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a236"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodsetNullOption">setNullOption</a><span class="src-sym">(</span><span class="src-var">$nullOption</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a237"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$nullOption&nbsp;</span>==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_REJECT_NULL">STATS_REJECT_NULL</a></span></div></li> +<li><div class="src-line"><a name="a238"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-var">$nullOption&nbsp;</span>==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_IGNORE_NULL">STATS_IGNORE_NULL</a></span></div></li> +<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-var">$nullOption&nbsp;</span>==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_USE_NULL_AS_ZERO">STATS_USE_NULL_AS_ZERO</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a240"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_nullOption">_nullOption</a>&nbsp;=&nbsp;<span class="src-var">$nullOption</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a241"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a242"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a243"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'invalid&nbsp;null&nbsp;handling&nbsp;option&nbsp;expecting:&nbsp;'</span>.</div></li> +<li><div class="src-line"><a name="a244"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'STATS_REJECT_NULL,&nbsp;STATS_IGNORE_NULL&nbsp;or&nbsp;STATS_USE_NULL_AS_ZERO'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a245"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a246"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a247"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a248"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a249"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Transforms&nbsp;the&nbsp;data&nbsp;by&nbsp;substracting&nbsp;each&nbsp;entry&nbsp;from&nbsp;the&nbsp;mean&nbsp;and</span></div></li> +<li><div class="src-line"><a name="a250"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dividing&nbsp;by&nbsp;its&nbsp;standard&nbsp;deviation.&nbsp;This&nbsp;will&nbsp;reset&nbsp;all&nbsp;pre-calculated</span></div></li> +<li><div class="src-line"><a name="a251"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;values&nbsp;to&nbsp;their&nbsp;original&nbsp;(unset)&nbsp;defaults.</span></div></li> +<li><div class="src-line"><a name="a252"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a253"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a254"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">true&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a255"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;mean()</span></div></li> +<li><div class="src-line"><a name="a256"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;stDev()</span></div></li> +<li><div class="src-line"><a name="a257"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;setData()</span></div></li> +<li><div class="src-line"><a name="a258"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a259"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodstudentize">studentize</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a260"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$mean&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmean">mean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a261"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a262"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$mean</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a263"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a264"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$std&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodstDev">stDev</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a265"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$std</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a266"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$std</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a267"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a268"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$std&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a269"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'cannot&nbsp;studentize&nbsp;data,&nbsp;standard&nbsp;deviation&nbsp;is&nbsp;zero.'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a270"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a271"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$arr&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a272"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a273"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span>=&gt;<span class="src-var">$freq</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a274"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$newval&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$val&nbsp;</span>-&nbsp;<span class="src-var">$mean</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$std</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a275"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$arr</span><span class="src-sym">[</span><span class="src-str">&quot;</span><span class="src-str"><span class="src-var">$newval</span></span><span class="src-str">&quot;</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$freq</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a276"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a277"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a278"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a279"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$newval&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$val&nbsp;</span>-&nbsp;<span class="src-var">$mean</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-var">$std</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a280"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$arr</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$newval</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a281"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a282"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a283"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsetData">setData</a><span class="src-sym">(</span><span class="src-var">$arr</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a284"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a285"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a286"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a287"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Transforms&nbsp;the&nbsp;data&nbsp;by&nbsp;substracting&nbsp;each&nbsp;entry&nbsp;from&nbsp;the&nbsp;mean.</span></div></li> +<li><div class="src-line"><a name="a288"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;This&nbsp;will&nbsp;reset&nbsp;all&nbsp;pre-calculated&nbsp;values&nbsp;to&nbsp;their&nbsp;original&nbsp;(unset)&nbsp;defaults.</span></div></li> +<li><div class="src-line"><a name="a289"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a290"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a291"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">true&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a292"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;mean()</span></div></li> +<li><div class="src-line"><a name="a293"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;setData()</span></div></li> +<li><div class="src-line"><a name="a294"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a295"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodcenter">center</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a296"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$mean&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmean">mean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a297"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a298"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$mean</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a299"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a300"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$arr&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a301"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a302"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span>=&gt;<span class="src-var">$freq</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a303"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$newval&nbsp;</span>=&nbsp;<span class="src-var">$val&nbsp;</span>-&nbsp;<span class="src-var">$mean</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a304"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$arr</span><span class="src-sym">[</span><span class="src-str">&quot;</span><span class="src-str"><span class="src-var">$newval</span></span><span class="src-str">&quot;</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$freq</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a305"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a306"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a307"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a308"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$newval&nbsp;</span>=&nbsp;<span class="src-var">$val&nbsp;</span>-&nbsp;<span class="src-var">$mean</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a309"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$arr</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$newval</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a310"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a311"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a312"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsetData">setData</a><span class="src-sym">(</span><span class="src-var">$arr</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a313"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a314"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a315"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a316"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;basic&nbsp;or&nbsp;full&nbsp;statistics&nbsp;for&nbsp;the&nbsp;data&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a317"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a318"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a319"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc-var">$mode&nbsp;</span><span class="src-doc">&nbsp;&nbsp;one&nbsp;of&nbsp;STATS_BASIC&nbsp;or&nbsp;STATS_FULL</span></div></li> +<li><div class="src-line"><a name="a320"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc-var">$returnErrorObject&nbsp;</span><span class="src-doc">whether&nbsp;the&nbsp;raw&nbsp;PEAR_Error&nbsp;(when&nbsp;true,&nbsp;default),</span></div></li> +<li><div class="src-line"><a name="a321"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or&nbsp;only&nbsp;the&nbsp;error&nbsp;message&nbsp;will&nbsp;be&nbsp;returned&nbsp;(when&nbsp;false),&nbsp;if&nbsp;an&nbsp;error&nbsp;happens.</span></div></li> +<li><div class="src-line"><a name="a322"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;an&nbsp;associative&nbsp;array&nbsp;of&nbsp;statistics&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a323"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calcBasic()</span></div></li> +<li><div class="src-line"><a name="a324"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calcFull()</span></div></li> +<li><div class="src-line"><a name="a325"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a326"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodcalc">calc</a><span class="src-sym">(</span><span class="src-var">$mode</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span>=<span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a327"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a328"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a329"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a330"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mode&nbsp;</span>==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_BASIC">STATS_BASIC</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a331"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcalcBasic">calcBasic</a><span class="src-sym">(</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a332"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mode&nbsp;</span>==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_FULL">STATS_FULL</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a333"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcalcFull">calcFull</a><span class="src-sym">(</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a334"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a335"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'incorrect&nbsp;mode,&nbsp;expected&nbsp;STATS_BASIC&nbsp;or&nbsp;STATS_FULL'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a336"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a337"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a338"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a339"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a340"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;a&nbsp;basic&nbsp;set&nbsp;of&nbsp;statistics</span></div></li> +<li><div class="src-line"><a name="a341"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a342"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a343"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc-var">$returnErrorObject&nbsp;</span><span class="src-doc">whether&nbsp;the&nbsp;raw&nbsp;PEAR_Error&nbsp;(when&nbsp;true,&nbsp;default),</span></div></li> +<li><div class="src-line"><a name="a344"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or&nbsp;only&nbsp;the&nbsp;error&nbsp;message&nbsp;will&nbsp;be&nbsp;returned&nbsp;(when&nbsp;false),&nbsp;if&nbsp;an&nbsp;error&nbsp;happens.</span></div></li> +<li><div class="src-line"><a name="a345"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;an&nbsp;associative&nbsp;array&nbsp;of&nbsp;statistics&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a346"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a347"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calcFull()</span></div></li> +<li><div class="src-line"><a name="a348"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a349"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodcalcBasic">calcBasic</a><span class="src-sym">(</span><span class="src-var">$returnErrorObject</span>=<span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a350"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">array&nbsp;</span><span class="src-sym">(</span></div></li> +<li><div class="src-line"><a name="a351"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'min'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmin">min</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a352"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'max'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmax">max</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a353"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'sum'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsum">sum</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a354"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'sum2'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsum2">sum2</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a355"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'count'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a356"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'mean'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmean">mean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a357"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'stdev'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodstDev">stDev</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a358"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'variance'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodvariance">variance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a359"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'range'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodrange">range</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a360"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a361"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a362"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a363"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a364"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;a&nbsp;full&nbsp;set&nbsp;of&nbsp;statistics</span></div></li> +<li><div class="src-line"><a name="a365"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a366"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a367"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc-var">$returnErrorObject&nbsp;</span><span class="src-doc">whether&nbsp;the&nbsp;raw&nbsp;PEAR_Error&nbsp;(when&nbsp;true,&nbsp;default),</span></div></li> +<li><div class="src-line"><a name="a368"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or&nbsp;only&nbsp;the&nbsp;error&nbsp;message&nbsp;will&nbsp;be&nbsp;returned&nbsp;(when&nbsp;false),&nbsp;if&nbsp;an&nbsp;error&nbsp;happens.</span></div></li> +<li><div class="src-line"><a name="a369"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;an&nbsp;associative&nbsp;array&nbsp;of&nbsp;statistics&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a370"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a371"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calcBasic()</span></div></li> +<li><div class="src-line"><a name="a372"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a373"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodcalcFull">calcFull</a><span class="src-sym">(</span><span class="src-var">$returnErrorObject</span>=<span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a374"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">array&nbsp;</span><span class="src-sym">(</span></div></li> +<li><div class="src-line"><a name="a375"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'min'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmin">min</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a376"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'max'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmax">max</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a377"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'sum'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsum">sum</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a378"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'sum2'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsum2">sum2</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a379"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'count'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a380"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'mean'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmean">mean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a381"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'median'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmedian">median</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a382"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'mode'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmode">mode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a383"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'midrange'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmidrange">midrange</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a384"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'geometric_mean'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodgeometricMean">geometricMean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a385"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'harmonic_mean'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodharmonicMean">harmonicMean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a386"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'stdev'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodstDev">stDev</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a387"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'absdev'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodabsDev">absDev</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a388"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'variance'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodvariance">variance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a389"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'range'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodrange">range</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a390"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'std_error_of_mean'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodstdErrorOfMean">stdErrorOfMean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a391"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'skewness'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodskewness">skewness</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a392"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'kurtosis'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodkurtosis">kurtosis</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a393"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'coeff_of_variation'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcoeffOfVariation">coeffOfVariation</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a394"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'sample_central_moments'&nbsp;</span>=&gt;&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span></div></li> +<li><div class="src-line"><a name="a395"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-num">1&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsampleCentralMoment">sampleCentralMoment</a><span class="src-sym">(</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a396"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-num">2&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsampleCentralMoment">sampleCentralMoment</a><span class="src-sym">(</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a397"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-num">3&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsampleCentralMoment">sampleCentralMoment</a><span class="src-sym">(</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a398"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-num">4&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsampleCentralMoment">sampleCentralMoment</a><span class="src-sym">(</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a399"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-num">5&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsampleCentralMoment">sampleCentralMoment</a><span class="src-sym">(</span><span class="src-num">5</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a400"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a401"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'sample_raw_moments'&nbsp;</span>=&gt;&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span></div></li> +<li><div class="src-line"><a name="a402"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-num">1&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsampleRawMoment">sampleRawMoment</a><span class="src-sym">(</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a403"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-num">2&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsampleRawMoment">sampleRawMoment</a><span class="src-sym">(</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a404"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-num">3&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsampleRawMoment">sampleRawMoment</a><span class="src-sym">(</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a405"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-num">4&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsampleRawMoment">sampleRawMoment</a><span class="src-sym">(</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a406"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-num">5&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsampleRawMoment">sampleRawMoment</a><span class="src-sym">(</span><span class="src-num">5</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a407"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a408"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'frequency'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodfrequency">frequency</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a409"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'quartiles'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodquartiles">quartiles</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a410"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'interquartile_range'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodinterquartileRange">interquartileRange</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a411"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'interquartile_mean'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodinterquartileMean">interquartileMean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a412"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'quartile_deviation'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodquartileDeviation">quartileDeviation</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a413"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'quartile_variation_coefficient'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodquartileVariationCoefficient">quartileVariationCoefficient</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a414"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'quartile_skewness_coefficient'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodquartileSkewnessCoefficient">quartileSkewnessCoefficient</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$returnErrorObject</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a415"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a416"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a417"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a418"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a419"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;minimum&nbsp;of&nbsp;a&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a420"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a421"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a422"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a423"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;minimum&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a424"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a425"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;max()</span></div></li> +<li><div class="src-line"><a name="a426"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a427"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodmin">min</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a428"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a429"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a430"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a431"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'min'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a432"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a433"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$min&nbsp;</span>=&nbsp;<a href="../Math_Stats/Base.html#methodmin">min</a><span class="src-sym">(</span><a href="http://www.php.net/array_keys">array_keys</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a434"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a435"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$min&nbsp;</span>=&nbsp;<a href="../Math_Stats/Base.html#methodmin">min</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a436"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a437"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'min'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$min</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a438"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a439"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'min'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a440"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a441"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a442"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a443"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;maximum&nbsp;of&nbsp;a&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a444"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a445"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a446"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a447"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;maximum&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a448"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a449"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;min()</span></div></li> +<li><div class="src-line"><a name="a450"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a451"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodmax">max</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a452"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a453"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a454"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a455"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'max'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a456"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a457"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$max&nbsp;</span>=&nbsp;<a href="../Math_Stats/Base.html#methodmax">max</a><span class="src-sym">(</span><a href="http://www.php.net/array_keys">array_keys</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a458"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a459"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$max&nbsp;</span>=&nbsp;<a href="../Math_Stats/Base.html#methodmax">max</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a460"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a461"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'max'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$max</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a462"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a463"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'max'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a464"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a465"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a466"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a467"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;SUM&nbsp;{&nbsp;xi&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a468"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a469"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a470"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a471"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;sum&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a472"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a473"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;sum2()</span></div></li> +<li><div class="src-line"><a name="a474"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;sumN()</span></div></li> +<li><div class="src-line"><a name="a475"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a476"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodsum">sum</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a477"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'sum'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a478"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sum&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsumN">sumN</a><span class="src-sym">(</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a479"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$sum</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a480"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sum</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a481"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a482"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'sum'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$sum</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a483"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a484"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a485"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'sum'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a486"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a487"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a488"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a489"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;SUM&nbsp;{&nbsp;(xi)^2&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a490"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a491"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a492"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a493"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;sum&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a494"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a495"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;sum()</span></div></li> +<li><div class="src-line"><a name="a496"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;sumN()</span></div></li> +<li><div class="src-line"><a name="a497"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a498"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodsum2">sum2</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a499"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'sum2'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a500"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sum2&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsumN">sumN</a><span class="src-sym">(</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a501"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$sum2</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a502"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sum2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a503"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a504"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'sum2'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$sum2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a505"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a506"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a507"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'sum2'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a508"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a509"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a510"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a511"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;SUM&nbsp;{&nbsp;(xi)^n&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a512"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a513"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a514"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a515"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">numeric&nbsp;</span><span class="src-doc-var">$n&nbsp;</span><span class="src-doc">&nbsp;the&nbsp;exponent</span></div></li> +<li><div class="src-line"><a name="a516"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;sum&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a517"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a518"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;sum()</span></div></li> +<li><div class="src-line"><a name="a519"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;sum2()</span></div></li> +<li><div class="src-line"><a name="a520"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a521"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodsumN">sumN</a><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a522"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a523"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a524"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a525"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sumN&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a526"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a527"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span>=&gt;<span class="src-var">$freq</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a528"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sumN&nbsp;</span>+=&nbsp;<span class="src-var">$freq&nbsp;</span>*&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span>(double)<span class="src-var">$val</span><span class="src-sym">,&nbsp;</span>(double)<span class="src-var">$n</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a529"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a530"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a531"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a532"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sumN&nbsp;</span>+=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span>(double)<span class="src-var">$val</span><span class="src-sym">,&nbsp;</span>(double)<span class="src-var">$n</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a533"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a534"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a535"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sumN</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a536"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a537"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a538"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a539"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;PROD&nbsp;{&nbsp;(xi)&nbsp;},&nbsp;(the&nbsp;product&nbsp;of&nbsp;all&nbsp;observations)</span></div></li> +<li><div class="src-line"><a name="a540"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a541"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a542"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a543"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;product&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a544"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;productN()</span></div></li> +<li><div class="src-line"><a name="a545"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a546"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodproduct">product</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a547"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'product'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a548"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$product&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodproductN">productN</a><span class="src-sym">(</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a549"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$product</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a550"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$product</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a551"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a552"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'product'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$product</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a553"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a554"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a555"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'product'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a556"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a557"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a558"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a559"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;PROD&nbsp;{&nbsp;(xi)^n&nbsp;},&nbsp;which&nbsp;is&nbsp;the&nbsp;product&nbsp;of&nbsp;all&nbsp;observations</span></div></li> +<li><div class="src-line"><a name="a560"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a561"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a562"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a563"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">numeric&nbsp;</span><span class="src-doc-var">$n&nbsp;</span><span class="src-doc">&nbsp;the&nbsp;exponent</span></div></li> +<li><div class="src-line"><a name="a564"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;product&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a565"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;product()</span></div></li> +<li><div class="src-line"><a name="a566"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a567"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodproductN">productN</a><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a568"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a569"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a570"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a571"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$prodN&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a572"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a573"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span>=&gt;<span class="src-var">$freq</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a574"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$val&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a575"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a576"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a577"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$prodN&nbsp;</span>*=&nbsp;<span class="src-var">$freq&nbsp;</span>*&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span>(double)<span class="src-var">$val</span><span class="src-sym">,&nbsp;</span>(double)<span class="src-var">$n</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a578"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a579"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a580"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a581"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$val&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a582"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a583"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a584"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$prodN&nbsp;</span>*=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span>(double)<span class="src-var">$val</span><span class="src-sym">,&nbsp;</span>(double)<span class="src-var">$n</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a585"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a586"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a587"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$prodN</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a588"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a589"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a590"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a591"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a592"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;number&nbsp;of&nbsp;data&nbsp;points&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a593"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a594"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a595"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a596"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;count&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a597"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a598"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a599"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a600"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a601"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a602"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a603"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'count'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a604"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a605"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">_dataExpanded</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a606"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a607"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a608"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a609"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'count'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a610"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a611"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'count'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a612"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a613"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a614"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a615"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;mean&nbsp;(average)&nbsp;of&nbsp;the&nbsp;data&nbsp;points&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a616"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a617"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a618"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a619"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;mean&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a620"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a621"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;sum()</span></div></li> +<li><div class="src-line"><a name="a622"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;count()</span></div></li> +<li><div class="src-line"><a name="a623"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a624"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodmean">mean</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a625"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'mean'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a626"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sum&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsum">sum</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a627"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$sum</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a628"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sum</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a629"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a630"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a631"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a632"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a633"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a634"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'mean'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$sum&nbsp;</span>/&nbsp;<span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a635"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a636"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'mean'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a637"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a638"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a639"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a640"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;range&nbsp;of&nbsp;the&nbsp;data&nbsp;set&nbsp;=&nbsp;max&nbsp;-&nbsp;min</span></div></li> +<li><div class="src-line"><a name="a641"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a642"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a643"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">the&nbsp;value&nbsp;of&nbsp;the&nbsp;range&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise.</span></div></li> +<li><div class="src-line"><a name="a644"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a645"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodrange">range</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a646"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'range'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a647"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$min&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmin">min</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a648"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$min</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a649"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$min</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a650"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a651"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$max&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmax">max</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a652"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$max</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a653"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$max</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a654"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a655"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'range'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$max&nbsp;</span>-&nbsp;<span class="src-var">$min</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a656"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a657"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'range'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a658"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a659"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a660"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a661"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a662"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;variance&nbsp;(unbiased)&nbsp;of&nbsp;the&nbsp;data&nbsp;points&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a663"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a664"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a665"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a666"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;variance&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a667"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a668"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;__sumdiff()</span></div></li> +<li><div class="src-line"><a name="a669"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;count()</span></div></li> +<li><div class="src-line"><a name="a670"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a671"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodvariance">variance</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a672"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'variance'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a673"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$variance&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__calcVariance</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a674"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$variance</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a675"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$variance</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a676"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a677"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'variance'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$variance</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a678"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a679"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'variance'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a680"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a681"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a682"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a683"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;standard&nbsp;deviation&nbsp;(unbiased)&nbsp;of&nbsp;the&nbsp;data&nbsp;points&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a684"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a685"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a686"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a687"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;standard&nbsp;deviation&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a688"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a689"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;variance()</span></div></li> +<li><div class="src-line"><a name="a690"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a691"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodstDev">stDev</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a692"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'stDev'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a693"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$variance&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodvariance">variance</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a694"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$variance</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a695"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$variance</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a696"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a697"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'stDev'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$variance</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a698"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a699"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'stDev'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a700"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a701"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a702"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a703"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;variance&nbsp;(unbiased)&nbsp;of&nbsp;the&nbsp;data&nbsp;points&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a704"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;given&nbsp;a&nbsp;fixed&nbsp;mean&nbsp;(average)&nbsp;value.&nbsp;Not&nbsp;used&nbsp;in&nbsp;calcBasic(),&nbsp;calcFull()</span></div></li> +<li><div class="src-line"><a name="a705"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;or&nbsp;calc().</span></div></li> +<li><div class="src-line"><a name="a706"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a707"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a708"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a709"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">numeric&nbsp;</span><span class="src-doc-var">$mean&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;fixed&nbsp;mean&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a710"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;variance&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a711"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;__sumdiff()</span></div></li> +<li><div class="src-line"><a name="a712"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;count()</span></div></li> +<li><div class="src-line"><a name="a713"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;variance()</span></div></li> +<li><div class="src-line"><a name="a714"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a715"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodvarianceWithMean">varianceWithMean</a><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a716"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__calcVariance</span><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a717"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a718"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a719"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a720"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;standard&nbsp;deviation&nbsp;(unbiased)&nbsp;of&nbsp;the&nbsp;data&nbsp;points&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a721"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;given&nbsp;a&nbsp;fixed&nbsp;mean&nbsp;(average)&nbsp;value.&nbsp;Not&nbsp;used&nbsp;in&nbsp;calcBasic(),&nbsp;calcFull()</span></div></li> +<li><div class="src-line"><a name="a722"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;or&nbsp;calc().</span></div></li> +<li><div class="src-line"><a name="a723"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a724"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a725"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a726"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">numeric&nbsp;</span><span class="src-doc-var">$mean&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;fixed&nbsp;mean&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a727"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;standard&nbsp;deviation&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a728"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;varianceWithMean()</span></div></li> +<li><div class="src-line"><a name="a729"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;stDev()</span></div></li> +<li><div class="src-line"><a name="a730"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a731"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodstDevWithMean">stDevWithMean</a><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a732"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$varianceWM&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodvarianceWithMean">varianceWithMean</a><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a733"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$varianceWM</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a734"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$varianceWM</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a735"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a736"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$varianceWM</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a737"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a738"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a739"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a740"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;absolute&nbsp;deviation&nbsp;of&nbsp;the&nbsp;data&nbsp;points&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a741"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a742"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a743"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a744"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;absolute&nbsp;deviation&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a745"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a746"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;__sumabsdev()</span></div></li> +<li><div class="src-line"><a name="a747"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;count()</span></div></li> +<li><div class="src-line"><a name="a748"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;absDevWithMean()</span></div></li> +<li><div class="src-line"><a name="a749"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a750"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodabsDev">absDev</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a751"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'absDev'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a752"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$absDev&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__calcAbsoluteDeviation</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a753"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$absdev</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a754"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$absdev</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a755"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a756"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'absDev'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$absDev</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a757"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a758"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'absDev'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a759"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a760"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a761"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a762"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;absolute&nbsp;deviation&nbsp;of&nbsp;the&nbsp;data&nbsp;points&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a763"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;given&nbsp;a&nbsp;fixed&nbsp;mean&nbsp;(average)&nbsp;value.&nbsp;Not&nbsp;used&nbsp;in&nbsp;calcBasic(),&nbsp;calcFull()</span></div></li> +<li><div class="src-line"><a name="a764"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;or&nbsp;calc().</span></div></li> +<li><div class="src-line"><a name="a765"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a766"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a767"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a768"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">numeric&nbsp;</span><span class="src-doc-var">$mean&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;fixed&nbsp;mean&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a769"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;absolute&nbsp;deviation&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a770"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;__sumabsdev()</span></div></li> +<li><div class="src-line"><a name="a771"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;absDev()</span></div></li> +<li><div class="src-line"><a name="a772"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a773"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodabsDevWithMean">absDevWithMean</a><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a774"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__calcAbsoluteDeviation</span><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a775"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a776"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a777"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a778"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;skewness&nbsp;of&nbsp;the&nbsp;data&nbsp;distribution&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a779"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;skewness&nbsp;measures&nbsp;the&nbsp;degree&nbsp;of&nbsp;asymmetry&nbsp;of&nbsp;a&nbsp;distribution,</span></div></li> +<li><div class="src-line"><a name="a780"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;and&nbsp;is&nbsp;related&nbsp;to&nbsp;the&nbsp;third&nbsp;central&nbsp;moment&nbsp;of&nbsp;a&nbsp;distribution.</span></div></li> +<li><div class="src-line"><a name="a781"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;A&nbsp;normal&nbsp;distribution&nbsp;has&nbsp;a&nbsp;skewness&nbsp;=&nbsp;0</span></div></li> +<li><div class="src-line"><a name="a782"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;A&nbsp;distribution&nbsp;with&nbsp;a&nbsp;tail&nbsp;off&nbsp;towards&nbsp;the&nbsp;high&nbsp;end&nbsp;of&nbsp;the&nbsp;scale</span></div></li> +<li><div class="src-line"><a name="a783"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;(positive&nbsp;skew)&nbsp;has&nbsp;a&nbsp;skewness&nbsp;&gt;&nbsp;0</span></div></li> +<li><div class="src-line"><a name="a784"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;A&nbsp;distribution&nbsp;with&nbsp;a&nbsp;tail&nbsp;off&nbsp;towards&nbsp;the&nbsp;low&nbsp;end&nbsp;of&nbsp;the&nbsp;scale</span></div></li> +<li><div class="src-line"><a name="a785"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;(negative&nbsp;skew)&nbsp;has&nbsp;a&nbsp;skewness&nbsp;&lt;&nbsp;0</span></div></li> +<li><div class="src-line"><a name="a786"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a787"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a788"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a789"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;skewness&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a790"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;__sumdiff()</span></div></li> +<li><div class="src-line"><a name="a791"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;count()</span></div></li> +<li><div class="src-line"><a name="a792"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;stDev()</span></div></li> +<li><div class="src-line"><a name="a793"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a794"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a795"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodskewness">skewness</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a796"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'skewness'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a797"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a798"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a799"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a800"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a801"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$stDev&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodstDev">stDev</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a802"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$stDev</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a803"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$stDev</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a804"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a805"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sumdiff3&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__sumdiff</span><span class="src-sym">(</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a806"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$sumdiff3</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a807"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sumdiff3</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a808"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a809"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'skewness'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$sumdiff3&nbsp;</span>/&nbsp;<span class="src-sym">(</span><span class="src-var">$count&nbsp;</span>*&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-var">$stDev</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a810"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a811"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'skewness'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a812"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a813"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a814"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a815"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;kurtosis&nbsp;of&nbsp;the&nbsp;data&nbsp;distribution&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a816"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;kurtosis&nbsp;measures&nbsp;the&nbsp;degrees&nbsp;of&nbsp;peakedness&nbsp;of&nbsp;a&nbsp;distribution.</span></div></li> +<li><div class="src-line"><a name="a817"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;It&nbsp;is&nbsp;also&nbsp;called&nbsp;the&nbsp;&quot;excess&quot;&nbsp;or&nbsp;&quot;excess&nbsp;coefficient&quot;,&nbsp;and&nbsp;is</span></div></li> +<li><div class="src-line"><a name="a818"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;a&nbsp;normalized&nbsp;form&nbsp;of&nbsp;the&nbsp;fourth&nbsp;central&nbsp;moment&nbsp;of&nbsp;a&nbsp;distribution.</span></div></li> +<li><div class="src-line"><a name="a819"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;A&nbsp;normal&nbsp;distributions&nbsp;has&nbsp;kurtosis&nbsp;=&nbsp;0</span></div></li> +<li><div class="src-line"><a name="a820"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;A&nbsp;narrow&nbsp;and&nbsp;peaked&nbsp;(leptokurtic)&nbsp;distribution&nbsp;has&nbsp;a</span></div></li> +<li><div class="src-line"><a name="a821"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;kurtosis&nbsp;&gt;&nbsp;0</span></div></li> +<li><div class="src-line"><a name="a822"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;A&nbsp;flat&nbsp;and&nbsp;wide&nbsp;(platykurtic)&nbsp;distribution&nbsp;has&nbsp;a&nbsp;kurtosis&nbsp;&lt;&nbsp;0</span></div></li> +<li><div class="src-line"><a name="a823"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a824"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a825"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a826"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;kurtosis&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a827"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;__sumdiff()</span></div></li> +<li><div class="src-line"><a name="a828"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;count()</span></div></li> +<li><div class="src-line"><a name="a829"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;stDev()</span></div></li> +<li><div class="src-line"><a name="a830"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a831"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a832"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodkurtosis">kurtosis</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a833"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'kurtosis'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a834"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a835"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a836"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a837"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a838"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$stDev&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodstDev">stDev</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a839"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$stDev</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a840"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$stDev</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a841"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a842"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sumdiff4&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__sumdiff</span><span class="src-sym">(</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a843"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$sumdiff4</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a844"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sumdiff4</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a845"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a846"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'kurtosis'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$sumdiff4&nbsp;</span>/&nbsp;<span class="src-sym">(</span><span class="src-var">$count&nbsp;</span>*&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-var">$stDev</span><span class="src-sym">,&nbsp;</span><span class="src-num">4</span><span class="src-sym">)))&nbsp;</span>-&nbsp;<span class="src-num">3</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a847"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a848"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'kurtosis'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a849"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a850"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a851"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a852"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;median&nbsp;of&nbsp;a&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a853"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;median&nbsp;is&nbsp;the&nbsp;value&nbsp;such&nbsp;that&nbsp;half&nbsp;of&nbsp;the&nbsp;points&nbsp;are&nbsp;below&nbsp;it</span></div></li> +<li><div class="src-line"><a name="a854"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;in&nbsp;a&nbsp;sorted&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a855"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;If&nbsp;the&nbsp;number&nbsp;of&nbsp;values&nbsp;is&nbsp;odd,&nbsp;it&nbsp;is&nbsp;the&nbsp;middle&nbsp;item.</span></div></li> +<li><div class="src-line"><a name="a856"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;If&nbsp;the&nbsp;number&nbsp;of&nbsp;values&nbsp;is&nbsp;even,&nbsp;is&nbsp;the&nbsp;average&nbsp;of&nbsp;the&nbsp;two&nbsp;middle&nbsp;items.</span></div></li> +<li><div class="src-line"><a name="a857"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a858"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a859"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a860"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;median&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a861"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;count()</span></div></li> +<li><div class="src-line"><a name="a862"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a863"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a864"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodmedian">median</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a865"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a866"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a867"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a868"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'median'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a869"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a870"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$arr&nbsp;</span>=<span class="src-sym">&amp;&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">_dataExpanded</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a871"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a872"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$arr&nbsp;</span>=<span class="src-sym">&amp;&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a873"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a874"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$n&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a875"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a876"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$n</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a877"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a878"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$h&nbsp;</span>=&nbsp;<a href="http://www.php.net/intval">intval</a><span class="src-sym">(</span><span class="src-var">$n&nbsp;</span>/&nbsp;<span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a879"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$n&nbsp;</span>%&nbsp;<span class="src-num">2&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a880"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$median&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$arr</span><span class="src-sym">[</span><span class="src-var">$h</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$arr</span><span class="src-sym">[</span><span class="src-var">$h&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a881"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a882"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$median&nbsp;</span>=&nbsp;<span class="src-var">$arr</span><span class="src-sym">[</span><span class="src-var">$h&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a883"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a884"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'median'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$median</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a885"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a886"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'median'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a887"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a888"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a889"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a890"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;mode&nbsp;of&nbsp;a&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a891"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;mode&nbsp;is&nbsp;the&nbsp;value&nbsp;with&nbsp;the&nbsp;highest&nbsp;frequency&nbsp;in&nbsp;the&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a892"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;There&nbsp;can&nbsp;be&nbsp;more&nbsp;than&nbsp;one&nbsp;mode.</span></div></li> +<li><div class="src-line"><a name="a893"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a894"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a895"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a896"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;an&nbsp;array&nbsp;of&nbsp;mode&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a897"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;frequency()</span></div></li> +<li><div class="src-line"><a name="a898"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a899"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a900"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodmode">mode</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a901"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a902"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a903"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a904"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'mode'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a905"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a906"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$arr&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a907"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a908"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$arr&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodfrequency">frequency</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a909"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a910"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/arsort">arsort</a><span class="src-sym">(</span><span class="src-var">$arr</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a911"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$mcount&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a912"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$arr&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$val</span>=&gt;<span class="src-var">$freq</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a913"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mcount&nbsp;</span>==&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a914"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$mode&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$val</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a915"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$mfreq&nbsp;</span>=&nbsp;<span class="src-var">$freq</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a916"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;++<span class="src-var">$mcount</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a917"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">continue</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a918"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a919"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mfreq&nbsp;</span>==&nbsp;<span class="src-var">$freq</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a920"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$mode</span><span class="src-sym">[</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$val</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a921"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mfreq&nbsp;</span>&gt;&nbsp;<span class="src-var">$freq</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a922"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a923"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a924"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'mode'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$mode</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a925"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a926"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'mode'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a927"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a928"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a929"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a930"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;midrange&nbsp;of&nbsp;a&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a931"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;midrange&nbsp;is&nbsp;the&nbsp;average&nbsp;of&nbsp;the&nbsp;minimum&nbsp;and&nbsp;maximum&nbsp;of&nbsp;the&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a932"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a933"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a934"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a935"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;midrange&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a936"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;min()</span></div></li> +<li><div class="src-line"><a name="a937"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;max()</span></div></li> +<li><div class="src-line"><a name="a938"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a939"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a940"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodmidrange">midrange</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a941"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'midrange'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a942"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$min&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmin">min</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a943"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$min</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a944"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$min</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a945"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a946"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$max&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmax">max</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a947"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$max</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a948"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$max</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a949"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a950"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'midrange'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">((</span><span class="src-var">$max&nbsp;</span>+&nbsp;<span class="src-var">$min</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a951"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a952"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'midrange'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a953"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a954"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a955"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a956"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;geometrical&nbsp;mean&nbsp;of&nbsp;the&nbsp;data&nbsp;points&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a957"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a958"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a959"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a960"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">the&nbsp;geometrical&nbsp;mean&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a961"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a962"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;product()</span></div></li> +<li><div class="src-line"><a name="a963"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;count()</span></div></li> +<li><div class="src-line"><a name="a964"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a965"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodgeometricMean">geometricMean</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a966"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'geometricMean'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a967"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a968"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a969"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a970"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a971"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$prod&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodproduct">product</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a972"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$prod</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a973"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$prod</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a974"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a975"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$prod&nbsp;</span>==&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a976"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a977"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a978"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$prod&nbsp;</span>&lt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a979"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'The&nbsp;product&nbsp;of&nbsp;the&nbsp;data&nbsp;set&nbsp;is&nbsp;negative,&nbsp;geometric&nbsp;mean&nbsp;undefined.'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a980"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a981"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'geometricMean'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-var">$prod&nbsp;</span><span class="src-sym">,&nbsp;</span><span class="src-num">1&nbsp;</span>/&nbsp;<span class="src-var">$count</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a982"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a983"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'geometricMean'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a984"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a985"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a986"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a987"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;harmonic&nbsp;mean&nbsp;of&nbsp;the&nbsp;data&nbsp;points&nbsp;in&nbsp;the&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a988"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a989"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a990"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a991"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">the&nbsp;harmonic&nbsp;mean&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a992"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a993"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;count()</span></div></li> +<li><div class="src-line"><a name="a994"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a995"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodharmonicMean">harmonicMean</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a996"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a997"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a998"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a999"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'harmonicMean'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1000"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1001"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1002"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1003"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1004"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$invsum&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1005"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1006"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span>=&gt;<span class="src-var">$freq</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1007"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$val&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1008"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'cannot&nbsp;calculate&nbsp;a&nbsp;'</span>.</div></li> +<li><div class="src-line"><a name="a1009"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'harmonic&nbsp;mean&nbsp;with&nbsp;data&nbsp;values&nbsp;of&nbsp;zero.'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1010"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1011"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$invsum&nbsp;</span>+=&nbsp;<span class="src-var">$freq&nbsp;</span>/&nbsp;<span class="src-var">$val</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1012"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1013"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1014"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1015"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$val&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1016"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'cannot&nbsp;calculate&nbsp;a&nbsp;'</span>.</div></li> +<li><div class="src-line"><a name="a1017"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'harmonic&nbsp;mean&nbsp;with&nbsp;data&nbsp;values&nbsp;of&nbsp;zero.'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1018"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1019"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$invsum&nbsp;</span>+=&nbsp;<span class="src-num">1&nbsp;</span>/&nbsp;<span class="src-var">$val</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1020"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1021"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1022"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'harmonicMean'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$count&nbsp;</span>/&nbsp;<span class="src-var">$invsum</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1023"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1024"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'harmonicMean'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1025"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1026"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1027"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1028"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;nth&nbsp;central&nbsp;moment&nbsp;(m{n})&nbsp;of&nbsp;a&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a1029"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1030"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;definition&nbsp;of&nbsp;a&nbsp;sample&nbsp;central&nbsp;moment&nbsp;is:</span></div></li> +<li><div class="src-line"><a name="a1031"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1032"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m{n}&nbsp;=&nbsp;1/N&nbsp;*&nbsp;SUM&nbsp;{&nbsp;(xi&nbsp;-&nbsp;avg)^n&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a1033"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1034"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;where:&nbsp;N&nbsp;=&nbsp;sample&nbsp;size,&nbsp;avg&nbsp;=&nbsp;sample&nbsp;mean.</span></div></li> +<li><div class="src-line"><a name="a1035"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1036"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1037"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">integer&nbsp;</span><span class="src-doc-var">$n&nbsp;</span><span class="src-doc">moment&nbsp;to&nbsp;calculate</span></div></li> +<li><div class="src-line"><a name="a1038"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">the&nbsp;numeric&nbsp;value&nbsp;of&nbsp;the&nbsp;moment&nbsp;on&nbsp;success,&nbsp;PEAR_Error&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1039"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1040"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodsampleCentralMoment">sampleCentralMoment</a><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1041"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_int">is_int</a><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">)&nbsp;</span>||&nbsp;<span class="src-var">$n&nbsp;</span>&lt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1042"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-str">'moment&nbsp;must&nbsp;be&nbsp;a&nbsp;positive&nbsp;integer&nbsp;&gt;=&nbsp;1.'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1043"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1044"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1045"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$n&nbsp;</span>==&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1046"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1047"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1048"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1049"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1050"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1051"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1052"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$count&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1053"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">&quot;</span><span class="src-str">Cannot&nbsp;calculate&nbsp;{<span class="src-var">$n</span><span class="src-sym">}</span>th&nbsp;sample&nbsp;moment,&nbsp;</span><span class="src-str">&quot;</span>.</div></li> +<li><div class="src-line"><a name="a1054"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'there&nbsp;are&nbsp;zero&nbsp;data&nbsp;entries'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1055"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1056"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sum&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__sumdiff</span><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1057"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$sum</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1058"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sum</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1059"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1060"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-sym">(</span><span class="src-var">$sum&nbsp;</span>/&nbsp;<span class="src-var">$count</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1061"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1062"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1063"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1064"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;nth&nbsp;raw&nbsp;moment&nbsp;(m{n})&nbsp;of&nbsp;a&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a1065"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1066"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;definition&nbsp;of&nbsp;a&nbsp;sample&nbsp;central&nbsp;moment&nbsp;is:</span></div></li> +<li><div class="src-line"><a name="a1067"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1068"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m{n}&nbsp;=&nbsp;1/N&nbsp;*&nbsp;SUM&nbsp;{&nbsp;xi^n&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a1069"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1070"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;where:&nbsp;N&nbsp;=&nbsp;sample&nbsp;size,&nbsp;avg&nbsp;=&nbsp;sample&nbsp;mean.</span></div></li> +<li><div class="src-line"><a name="a1071"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1072"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1073"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">integer&nbsp;</span><span class="src-doc-var">$n&nbsp;</span><span class="src-doc">moment&nbsp;to&nbsp;calculate</span></div></li> +<li><div class="src-line"><a name="a1074"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">the&nbsp;numeric&nbsp;value&nbsp;of&nbsp;the&nbsp;moment&nbsp;on&nbsp;success,&nbsp;PEAR_Error&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1075"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1076"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodsampleRawMoment">sampleRawMoment</a><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1077"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_int">is_int</a><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">)&nbsp;</span>||&nbsp;<span class="src-var">$n&nbsp;</span>&lt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1078"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-str">'moment&nbsp;must&nbsp;be&nbsp;a&nbsp;positive&nbsp;integer&nbsp;&gt;=&nbsp;1.'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1079"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1080"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1081"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1082"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1083"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1084"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1085"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$count&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1086"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">&quot;</span><span class="src-str">Cannot&nbsp;calculate&nbsp;{<span class="src-var">$n</span><span class="src-sym">}</span>th&nbsp;raw&nbsp;moment,&nbsp;</span><span class="src-str">&quot;</span>.</div></li> +<li><div class="src-line"><a name="a1087"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'there&nbsp;are&nbsp;zero&nbsp;data&nbsp;entries.'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1088"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1089"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sum&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodsumN">sumN</a><span class="src-sym">(</span><span class="src-var">$n</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1090"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$sum</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1091"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sum</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1092"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1093"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-sym">(</span><span class="src-var">$sum&nbsp;</span>/&nbsp;<span class="src-var">$count</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1094"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1095"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1096"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1097"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1098"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;coefficient&nbsp;of&nbsp;variation&nbsp;of&nbsp;a&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a1099"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;coefficient&nbsp;of&nbsp;variation&nbsp;measures&nbsp;the&nbsp;spread&nbsp;of&nbsp;a&nbsp;set&nbsp;of&nbsp;data</span></div></li> +<li><div class="src-line"><a name="a1100"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;as&nbsp;a&nbsp;proportion&nbsp;of&nbsp;its&nbsp;mean.&nbsp;It&nbsp;is&nbsp;often&nbsp;expressed&nbsp;as&nbsp;a&nbsp;percentage.</span></div></li> +<li><div class="src-line"><a name="a1101"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a1102"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1103"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1104"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;coefficient&nbsp;of&nbsp;variation&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1105"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;stDev()</span></div></li> +<li><div class="src-line"><a name="a1106"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;mean()</span></div></li> +<li><div class="src-line"><a name="a1107"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a1108"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1109"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodcoeffOfVariation">coeffOfVariation</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'coeffOfVariation'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$mean&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmean">mean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$mean</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$mean&nbsp;</span>==&nbsp;<span class="src-num">0.0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'cannot&nbsp;calculate&nbsp;the&nbsp;coefficient&nbsp;'</span>.</div></li> +<li><div class="src-line"><a name="a1117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'of&nbsp;variation,&nbsp;mean&nbsp;of&nbsp;sample&nbsp;is&nbsp;zero'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$stDev&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodstDev">stDev</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$stDev</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$stDev</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1123"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'coeffOfVariation'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$stDev&nbsp;</span>/&nbsp;<span class="src-var">$mean</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'coeffOfVariation'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1127"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1128"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1129"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1130"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;standard&nbsp;error&nbsp;of&nbsp;the&nbsp;mean.</span></div></li> +<li><div class="src-line"><a name="a1131"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;It&nbsp;is&nbsp;the&nbsp;standard&nbsp;deviation&nbsp;of&nbsp;the&nbsp;sampling&nbsp;distribution&nbsp;of</span></div></li> +<li><div class="src-line"><a name="a1132"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;the&nbsp;mean.&nbsp;The&nbsp;formula&nbsp;is:</span></div></li> +<li><div class="src-line"><a name="a1133"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1134"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;S.E.&nbsp;Mean&nbsp;=&nbsp;SD&nbsp;/&nbsp;(N)^(1/2)</span></div></li> +<li><div class="src-line"><a name="a1135"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1136"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;This&nbsp;formula&nbsp;does&nbsp;not&nbsp;assume&nbsp;a&nbsp;normal&nbsp;distribution,&nbsp;and&nbsp;shows</span></div></li> +<li><div class="src-line"><a name="a1137"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;that&nbsp;the&nbsp;size&nbsp;of&nbsp;the&nbsp;standard&nbsp;error&nbsp;of&nbsp;the&nbsp;mean&nbsp;is&nbsp;inversely</span></div></li> +<li><div class="src-line"><a name="a1138"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;proportional&nbsp;to&nbsp;the&nbsp;square&nbsp;root&nbsp;of&nbsp;the&nbsp;sample&nbsp;size.</span></div></li> +<li><div class="src-line"><a name="a1139"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1140"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1141"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;standard&nbsp;error&nbsp;of&nbsp;the&nbsp;mean&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1142"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;stDev()</span></div></li> +<li><div class="src-line"><a name="a1143"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;count()</span></div></li> +<li><div class="src-line"><a name="a1144"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a1145"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1146"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodstdErrorOfMean">stdErrorOfMean</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1147"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'stdErrorOfMean'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1148"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1149"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1150"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1151"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1152"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$stDev&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodstDev">stDev</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1153"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$stDev</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1154"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$stDev</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1155"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1156"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'stdErrorOfMean'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$stDev&nbsp;</span>/&nbsp;<a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1158"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'stdErrorOfMean'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1159"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1160"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1161"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1162"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculates&nbsp;the&nbsp;value&nbsp;frequency&nbsp;table&nbsp;of&nbsp;a&nbsp;data&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a1163"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Handles&nbsp;cummulative&nbsp;data&nbsp;sets&nbsp;correctly</span></div></li> +<li><div class="src-line"><a name="a1164"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1165"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1166"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;an&nbsp;associative&nbsp;array&nbsp;of&nbsp;value=&gt;frequency&nbsp;items&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1167"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;min()</span></div></li> +<li><div class="src-line"><a name="a1168"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;max()</span></div></li> +<li><div class="src-line"><a name="a1169"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;calc()</span></div></li> +<li><div class="src-line"><a name="a1170"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1171"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodfrequency">frequency</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1172"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1174"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'frequency'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1176"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1177"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$freq&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1178"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1179"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$freq&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$freq</span><span class="src-sym">[</span><span class="src-str">&quot;</span><span class="src-str"><span class="src-var">$val</span></span><span class="src-str">&quot;</span><span class="src-sym">]</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1182"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1183"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/ksort">ksort</a><span class="src-sym">(</span><span class="src-var">$freq</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1184"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1185"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'frequency'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$freq</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1186"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1187"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'frequency'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1188"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1189"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1190"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1191"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;quartiles&nbsp;are&nbsp;defined&nbsp;as&nbsp;the&nbsp;values&nbsp;that&nbsp;divide&nbsp;a&nbsp;sorted</span></div></li> +<li><div class="src-line"><a name="a1192"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;data&nbsp;set&nbsp;into&nbsp;four&nbsp;equal-sized&nbsp;subsets,&nbsp;and&nbsp;correspond&nbsp;to&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a1193"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;25th,&nbsp;50th,&nbsp;and&nbsp;75th&nbsp;percentiles.</span></div></li> +<li><div class="src-line"><a name="a1194"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1195"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1196"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">an&nbsp;associative&nbsp;array&nbsp;of&nbsp;quartiles&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1197"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;percentile()</span></div></li> +<li><div class="src-line"><a name="a1198"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1199"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodquartiles">quartiles</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1200"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'quartiles'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1201"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q1&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodpercentile">percentile</a><span class="src-sym">(</span><span class="src-num">25</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1202"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$q1</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1203"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$q1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1204"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1205"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q2&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodpercentile">percentile</a><span class="src-sym">(</span><span class="src-num">50</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1206"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$q2</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1207"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$q2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1208"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1209"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q3&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodpercentile">percentile</a><span class="src-sym">(</span><span class="src-num">75</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1210"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$q3</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$q3</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1212"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1213"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'quartiles'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span></div></li> +<li><div class="src-line"><a name="a1214"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'25'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$q1</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1215"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'50'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$q2</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1216"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'75'&nbsp;</span>=&gt;&nbsp;<span class="src-var">$q3</span></div></li> +<li><div class="src-line"><a name="a1217"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1218"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1219"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'quartiles'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1220"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1221"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1222"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1223"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;interquartile&nbsp;mean&nbsp;is&nbsp;defined&nbsp;as&nbsp;the&nbsp;mean&nbsp;of&nbsp;the&nbsp;values&nbsp;left</span></div></li> +<li><div class="src-line"><a name="a1224"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;after&nbsp;discarding&nbsp;the&nbsp;lower&nbsp;25%&nbsp;and&nbsp;top&nbsp;25%&nbsp;ranked&nbsp;values,&nbsp;i.e.:</span></div></li> +<li><div class="src-line"><a name="a1225"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1226"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;interquart&nbsp;mean&nbsp;=&nbsp;mean(&lt;P(25),P(75)&gt;)</span></div></li> +<li><div class="src-line"><a name="a1227"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1228"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;where:&nbsp;P&nbsp;=&nbsp;percentile</span></div></li> +<li><div class="src-line"><a name="a1229"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1230"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@todo</span><span class="src-doc">&nbsp;need&nbsp;to&nbsp;double&nbsp;check&nbsp;the&nbsp;equation</span></div></li> +<li><div class="src-line"><a name="a1231"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1232"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">a&nbsp;numeric&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1233"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;quartiles()</span></div></li> +<li><div class="src-line"><a name="a1234"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1235"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodinterquartileMean">interquartileMean</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1236"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'interquartileMean'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1237"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$quart&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodquartiles">quartiles</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1238"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$quart</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1239"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$quart</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1240"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1241"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q3&nbsp;</span>=&nbsp;<span class="src-var">$quart</span><span class="src-sym">[</span><span class="src-str">'75'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1242"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q1&nbsp;</span>=&nbsp;<span class="src-var">$quart</span><span class="src-sym">[</span><span class="src-str">'25'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1243"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sum&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1244"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$n&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1245"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodgetData">getData</a><span class="src-sym">(</span><span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$val</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1246"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$val&nbsp;</span>&gt;=&nbsp;<span class="src-var">$q1&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$val&nbsp;</span>&lt;=&nbsp;<span class="src-var">$q3</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1247"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sum&nbsp;</span>+=&nbsp;<span class="src-var">$val</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1248"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;++<span class="src-var">$n</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1249"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1250"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1251"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$n&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1252"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'error&nbsp;calculating&nbsp;interquartile&nbsp;mean,&nbsp;'</span>.</div></li> +<li><div class="src-line"><a name="a1253"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'empty&nbsp;interquartile&nbsp;range&nbsp;of&nbsp;values.'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1254"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'interquartileMean'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$sum&nbsp;</span>/&nbsp;<span class="src-var">$n</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1256"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1257"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'interquartileMean'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1258"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1259"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1260"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1261"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;interquartile&nbsp;range&nbsp;is&nbsp;the&nbsp;distance&nbsp;between&nbsp;the&nbsp;75th&nbsp;and&nbsp;25th</span></div></li> +<li><div class="src-line"><a name="a1262"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;percentiles.&nbsp;Basically&nbsp;the&nbsp;range&nbsp;of&nbsp;the&nbsp;middle&nbsp;50%&nbsp;of&nbsp;the&nbsp;data&nbsp;set,</span></div></li> +<li><div class="src-line"><a name="a1263"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;and&nbsp;thus&nbsp;is&nbsp;not&nbsp;affected&nbsp;by&nbsp;outliers&nbsp;or&nbsp;extreme&nbsp;values.</span></div></li> +<li><div class="src-line"><a name="a1264"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1265"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;interquart&nbsp;range&nbsp;=&nbsp;P(75)&nbsp;-&nbsp;P(25)</span></div></li> +<li><div class="src-line"><a name="a1266"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1267"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;where:&nbsp;P&nbsp;=&nbsp;percentile</span></div></li> +<li><div class="src-line"><a name="a1268"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1269"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1270"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">a&nbsp;numeric&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1271"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;quartiles()</span></div></li> +<li><div class="src-line"><a name="a1272"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1273"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodinterquartileRange">interquartileRange</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1274"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'interquartileRange'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1275"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$quart&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodquartiles">quartiles</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1276"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$quart</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1277"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$quart</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1278"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1279"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q3&nbsp;</span>=&nbsp;<span class="src-var">$quart</span><span class="src-sym">[</span><span class="src-str">'75'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1280"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q1&nbsp;</span>=&nbsp;<span class="src-var">$quart</span><span class="src-sym">[</span><span class="src-str">'25'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1281"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'interquartileRange'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$q3&nbsp;</span>-&nbsp;<span class="src-var">$q1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1282"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1283"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'interquartileRange'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1284"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1285"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1286"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1287"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;quartile&nbsp;deviation&nbsp;is&nbsp;half&nbsp;of&nbsp;the&nbsp;interquartile&nbsp;range&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1288"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1289"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;quart&nbsp;dev&nbsp;=&nbsp;(P(75)&nbsp;-&nbsp;P(25))&nbsp;/&nbsp;2</span></div></li> +<li><div class="src-line"><a name="a1290"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1291"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;where:&nbsp;P&nbsp;=&nbsp;percentile</span></div></li> +<li><div class="src-line"><a name="a1292"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1293"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1294"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">a&nbsp;numeric&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1295"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;quartiles()</span></div></li> +<li><div class="src-line"><a name="a1296"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;interquartileRange()</span></div></li> +<li><div class="src-line"><a name="a1297"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1298"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodquartileDeviation">quartileDeviation</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1299"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'quartileDeviation'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1300"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$iqr&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodinterquartileRange">interquartileRange</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1301"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$iqr</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1302"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$iqr</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1303"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1304"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'quartileDeviation'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$iqr&nbsp;</span>/&nbsp;<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1305"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1306"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'quartileDeviation'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1307"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1308"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1309"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1310"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;quartile&nbsp;variation&nbsp;coefficient&nbsp;is&nbsp;defines&nbsp;as&nbsp;follows:</span></div></li> +<li><div class="src-line"><a name="a1311"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1312"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;quart&nbsp;var&nbsp;coeff&nbsp;=&nbsp;100&nbsp;*&nbsp;(P(75)&nbsp;-&nbsp;P(25))&nbsp;/&nbsp;(P(75)&nbsp;+&nbsp;P(25))</span></div></li> +<li><div class="src-line"><a name="a1313"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1314"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;where:&nbsp;P&nbsp;=&nbsp;percentile</span></div></li> +<li><div class="src-line"><a name="a1315"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1316"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@todo</span><span class="src-doc">&nbsp;need&nbsp;to&nbsp;double&nbsp;check&nbsp;the&nbsp;equation</span></div></li> +<li><div class="src-line"><a name="a1317"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1318"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">a&nbsp;numeric&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1319"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;quartiles()</span></div></li> +<li><div class="src-line"><a name="a1320"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1321"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodquartileVariationCoefficient">quartileVariationCoefficient</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1322"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'quartileVariationCoefficient'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1323"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$quart&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodquartiles">quartiles</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1324"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$quart</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1325"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$quart</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1326"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1327"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q3&nbsp;</span>=&nbsp;<span class="src-var">$quart</span><span class="src-sym">[</span><span class="src-str">'75'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1328"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q1&nbsp;</span>=&nbsp;<span class="src-var">$quart</span><span class="src-sym">[</span><span class="src-str">'25'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1329"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$d&nbsp;</span>=&nbsp;<span class="src-var">$q3&nbsp;</span>-&nbsp;<span class="src-var">$q1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1330"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$q3&nbsp;</span>+&nbsp;<span class="src-var">$q1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1331"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'quartileVariationCoefficient'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">100&nbsp;</span>*&nbsp;<span class="src-var">$d&nbsp;</span>/&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1332"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1333"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'quartileVariationCoefficient'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1334"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1335"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1336"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1337"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;quartile&nbsp;skewness&nbsp;coefficient&nbsp;(also&nbsp;known&nbsp;as&nbsp;Bowley&nbsp;Skewness),</span></div></li> +<li><div class="src-line"><a name="a1338"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;is&nbsp;defined&nbsp;as&nbsp;follows:</span></div></li> +<li><div class="src-line"><a name="a1339"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1340"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;quart&nbsp;skewness&nbsp;coeff&nbsp;=&nbsp;(P(25)&nbsp;-&nbsp;2*P(50)&nbsp;+&nbsp;P(75))&nbsp;/&nbsp;(P(75)&nbsp;-&nbsp;P(25))</span></div></li> +<li><div class="src-line"><a name="a1341"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1342"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;where:&nbsp;P&nbsp;=&nbsp;percentile</span></div></li> +<li><div class="src-line"><a name="a1343"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1344"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@todo</span><span class="src-doc">&nbsp;need&nbsp;to&nbsp;double&nbsp;check&nbsp;the&nbsp;equation</span></div></li> +<li><div class="src-line"><a name="a1345"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1346"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">a&nbsp;numeric&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1347"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;quartiles()</span></div></li> +<li><div class="src-line"><a name="a1348"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1349"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodquartileSkewnessCoefficient">quartileSkewnessCoefficient</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1350"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/array_key_exists">array_key_exists</a><span class="src-sym">(</span><span class="src-str">'quartileSkewnessCoefficient'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1351"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$quart&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodquartiles">quartiles</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1352"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$quart</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1353"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$quart</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1354"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1355"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q3&nbsp;</span>=&nbsp;<span class="src-var">$quart</span><span class="src-sym">[</span><span class="src-str">'75'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1356"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q2&nbsp;</span>=&nbsp;<span class="src-var">$quart</span><span class="src-sym">[</span><span class="src-str">'50'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1357"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$q1&nbsp;</span>=&nbsp;<span class="src-var">$quart</span><span class="src-sym">[</span><span class="src-str">'25'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1358"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$d&nbsp;</span>=&nbsp;<span class="src-var">$q3&nbsp;</span>-&nbsp;<span class="src-num">2</span>*<span class="src-var">$q2&nbsp;</span>+&nbsp;<span class="src-var">$q1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1359"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$q3&nbsp;</span>-&nbsp;<span class="src-var">$q1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1360"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'quartileSkewnessCoefficient'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$d&nbsp;</span>/&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1361"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1362"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_calculatedValues">_calculatedValues</a><span class="src-sym">[</span><span class="src-str">'quartileSkewnessCoefficient'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1363"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1364"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1365"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1366"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;pth&nbsp;percentile&nbsp;is&nbsp;the&nbsp;value&nbsp;such&nbsp;that&nbsp;p%&nbsp;of&nbsp;the&nbsp;a&nbsp;sorted&nbsp;data&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a1367"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;is&nbsp;smaller&nbsp;than&nbsp;it,&nbsp;and&nbsp;(100&nbsp;-&nbsp;p)%&nbsp;of&nbsp;the&nbsp;data&nbsp;is&nbsp;larger.</span></div></li> +<li><div class="src-line"><a name="a1368"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1369"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;A&nbsp;quick&nbsp;algorithm&nbsp;to&nbsp;pick&nbsp;the&nbsp;appropriate&nbsp;value&nbsp;from&nbsp;a&nbsp;sorted&nbsp;data</span></div></li> +<li><div class="src-line"><a name="a1370"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;set&nbsp;is&nbsp;as&nbsp;follows:</span></div></li> +<li><div class="src-line"><a name="a1371"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1372"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;Count&nbsp;the&nbsp;number&nbsp;of&nbsp;values:&nbsp;n</span></div></li> +<li><div class="src-line"><a name="a1373"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;Calculate&nbsp;the&nbsp;position&nbsp;of&nbsp;the&nbsp;value&nbsp;in&nbsp;the&nbsp;data&nbsp;list:&nbsp;i&nbsp;=&nbsp;p&nbsp;*&nbsp;(n&nbsp;+&nbsp;1)</span></div></li> +<li><div class="src-line"><a name="a1374"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;if&nbsp;i&nbsp;is&nbsp;an&nbsp;integer,&nbsp;return&nbsp;the&nbsp;data&nbsp;at&nbsp;that&nbsp;position</span></div></li> +<li><div class="src-line"><a name="a1375"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;if&nbsp;i&nbsp;&lt;&nbsp;1,&nbsp;return&nbsp;the&nbsp;minimum&nbsp;of&nbsp;the&nbsp;data&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a1376"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;if&nbsp;i&nbsp;&gt;&nbsp;n,&nbsp;return&nbsp;the&nbsp;maximum&nbsp;of&nbsp;the&nbsp;data&nbsp;set</span></div></li> +<li><div class="src-line"><a name="a1377"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;-&nbsp;otherwise,&nbsp;average&nbsp;the&nbsp;entries&nbsp;at&nbsp;adjacent&nbsp;positions&nbsp;to&nbsp;i</span></div></li> +<li><div class="src-line"><a name="a1378"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1379"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;median&nbsp;is&nbsp;the&nbsp;50th&nbsp;percentile&nbsp;value.</span></div></li> +<li><div class="src-line"><a name="a1380"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1381"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@todo</span><span class="src-doc">&nbsp;need&nbsp;to&nbsp;double&nbsp;check&nbsp;generality&nbsp;of&nbsp;the&nbsp;algorithm</span></div></li> +<li><div class="src-line"><a name="a1382"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1383"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;public</span></div></li> +<li><div class="src-line"><a name="a1384"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">numeric&nbsp;</span><span class="src-doc-var">$p&nbsp;</span><span class="src-doc">the&nbsp;percentile&nbsp;to&nbsp;estimate,&nbsp;e.g.&nbsp;25&nbsp;for&nbsp;25th&nbsp;percentile</span></div></li> +<li><div class="src-line"><a name="a1385"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">a&nbsp;numeric&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1386"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;quartiles()</span></div></li> +<li><div class="src-line"><a name="a1387"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;median()</span></div></li> +<li><div class="src-line"><a name="a1388"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1389"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../Math_Stats/Base.html#methodpercentile">percentile</a><span class="src-sym">(</span><span class="src-var">$p</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1390"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1391"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1392"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1393"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1394"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1395"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$data&nbsp;</span>=<span class="src-sym">&amp;&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">_dataExpanded</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1396"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1397"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$data&nbsp;</span>=<span class="src-sym">&amp;&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1398"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1399"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$obsidx&nbsp;</span>=&nbsp;<span class="src-var">$p&nbsp;</span>*&nbsp;<span class="src-sym">(</span><span class="src-var">$count&nbsp;</span>+&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-num">100</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1400"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/intval">intval</a><span class="src-sym">(</span><span class="src-var">$obsidx</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-var">$obsidx</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1401"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$data</span><span class="src-sym">[</span><span class="src-sym">(</span><span class="src-var">$obsidx&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1402"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$obsidx&nbsp;</span>&lt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1403"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$data</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1404"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$obsidx&nbsp;</span>&gt;&nbsp;<span class="src-var">$count</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1405"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$data</span><span class="src-sym">[</span><span class="src-sym">(</span><span class="src-var">$count&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1406"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1407"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$left&nbsp;</span>=&nbsp;<a href="http://www.php.net/floor">floor</a><span class="src-sym">(</span><span class="src-var">$obsidx&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1408"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$right&nbsp;</span>=&nbsp;<a href="http://www.php.net/ceil">ceil</a><span class="src-sym">(</span><span class="src-var">$obsidx&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1409"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-sym">(</span><span class="src-var">$data</span><span class="src-sym">[</span><span class="src-var">$left</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-var">$data</span><span class="src-sym">[</span><span class="src-var">$right</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>/&nbsp;<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1410"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1411"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1412"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1413"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;private&nbsp;methods</span></div></li> +<li><div class="src-line"><a name="a1414"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1415"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1416"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Utility&nbsp;function&nbsp;to&nbsp;calculate:&nbsp;SUM&nbsp;{&nbsp;(xi&nbsp;-&nbsp;mean)^n&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a1417"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1418"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a1419"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">numeric&nbsp;</span><span class="src-doc-var">$power&nbsp;</span><span class="src-doc">&nbsp;the&nbsp;exponent</span></div></li> +<li><div class="src-line"><a name="a1420"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">optional&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;double&nbsp;&nbsp;&nbsp;$mean&nbsp;&nbsp;&nbsp;the&nbsp;data&nbsp;set&nbsp;mean&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1421"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;sum&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1422"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1423"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;stDev()</span></div></li> +<li><div class="src-line"><a name="a1424"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;variaceWithMean();</span></div></li> +<li><div class="src-line"><a name="a1425"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;skewness();</span></div></li> +<li><div class="src-line"><a name="a1426"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;kurtosis();</span></div></li> +<li><div class="src-line"><a name="a1427"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1428"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><span class="src-id">__sumdiff</span><span class="src-sym">(</span><span class="src-var">$power</span><span class="src-sym">,&nbsp;</span><span class="src-var">$mean</span>=<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1429"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1430"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1431"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1432"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_null">is_null</a><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1433"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$mean&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmean">mean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1434"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1435"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$mean</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1436"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1437"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1438"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sdiff&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1439"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1440"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span>=&gt;<span class="src-var">$freq</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1441"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sdiff&nbsp;</span>+=&nbsp;<span class="src-var">$freq&nbsp;</span>*&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span>(double)<span class="src-sym">(</span><span class="src-var">$val&nbsp;</span>-&nbsp;<span class="src-var">$mean</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span>(double)<span class="src-var">$power</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1442"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1443"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1444"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1445"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sdiff&nbsp;</span>+=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span>(double)<span class="src-sym">(</span><span class="src-var">$val&nbsp;</span>-&nbsp;<span class="src-var">$mean</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span>(double)<span class="src-var">$power</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1446"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1447"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sdiff</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1448"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1449"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1450"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1451"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Utility&nbsp;function&nbsp;to&nbsp;calculate&nbsp;the&nbsp;variance&nbsp;with&nbsp;or&nbsp;without</span></div></li> +<li><div class="src-line"><a name="a1452"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;a&nbsp;fixed&nbsp;mean</span></div></li> +<li><div class="src-line"><a name="a1453"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1454"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a1455"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">$mean&nbsp;</span><span class="src-doc">the&nbsp;fixed&nbsp;mean&nbsp;to&nbsp;use,&nbsp;null&nbsp;as&nbsp;default</span></div></li> +<li><div class="src-line"><a name="a1456"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">a&nbsp;numeric&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1457"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;variance()</span></div></li> +<li><div class="src-line"><a name="a1458"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;varianceWithMean()</span></div></li> +<li><div class="src-line"><a name="a1459"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1460"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><span class="src-id">__calcVariance</span><span class="src-sym">(</span><span class="src-var">$mean&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1461"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1462"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1463"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1464"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sumdiff2&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__sumdiff</span><span class="src-sym">(</span><span class="src-num">2</span><span class="src-sym">,&nbsp;</span><span class="src-var">$mean</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1465"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$sumdiff2</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1466"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sumdiff2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1467"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1468"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1469"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1470"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1471"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1472"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$count&nbsp;</span>==&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1473"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'cannot&nbsp;calculate&nbsp;variance&nbsp;of&nbsp;a&nbsp;singe&nbsp;data&nbsp;point'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1474"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1475"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;&nbsp;</span><span class="src-sym">(</span><span class="src-var">$sumdiff2&nbsp;</span>/&nbsp;<span class="src-sym">(</span><span class="src-var">$count&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1476"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1477"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1478"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1479"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Utility&nbsp;function&nbsp;to&nbsp;calculate&nbsp;the&nbsp;absolute&nbsp;deviation&nbsp;with&nbsp;or&nbsp;without</span></div></li> +<li><div class="src-line"><a name="a1480"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;a&nbsp;fixed&nbsp;mean</span></div></li> +<li><div class="src-line"><a name="a1481"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1482"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a1483"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">$mean&nbsp;</span><span class="src-doc">the&nbsp;fixed&nbsp;mean&nbsp;to&nbsp;use,&nbsp;null&nbsp;as&nbsp;default</span></div></li> +<li><div class="src-line"><a name="a1484"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">a&nbsp;numeric&nbsp;value&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1485"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;absDev()</span></div></li> +<li><div class="src-line"><a name="a1486"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;absDevWithMean()</span></div></li> +<li><div class="src-line"><a name="a1487"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1488"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><span class="src-id">__calcAbsoluteDeviation</span><span class="src-sym">(</span><span class="src-var">$mean&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1489"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1490"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1491"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1492"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$count&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1493"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1494"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1495"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1496"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sumabsdev&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-id">__sumabsdev</span><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1497"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$sumabsdev</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1498"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sumabsdev</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1499"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1500"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sumabsdev&nbsp;</span>/&nbsp;<span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1501"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1502"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1503"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1504"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Utility&nbsp;function&nbsp;to&nbsp;calculate:&nbsp;SUM&nbsp;{&nbsp;|&nbsp;xi&nbsp;-&nbsp;mean&nbsp;|&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a1505"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1506"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a1507"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc">&nbsp;&nbsp;</span><span class="src-doc-type">optional&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;double&nbsp;&nbsp;&nbsp;$mean&nbsp;&nbsp;&nbsp;the&nbsp;mean&nbsp;value&nbsp;for&nbsp;the&nbsp;set&nbsp;or&nbsp;population</span></div></li> +<li><div class="src-line"><a name="a1508"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">&nbsp;&nbsp;the&nbsp;sum&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1509"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1510"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;absDev()</span></div></li> +<li><div class="src-line"><a name="a1511"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;absDevWithMean()</span></div></li> +<li><div class="src-line"><a name="a1512"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1513"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><span class="src-id">__sumabsdev</span><span class="src-sym">(</span><span class="src-var">$mean</span>=<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1514"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;==&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1515"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;has&nbsp;not&nbsp;been&nbsp;set'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1516"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1517"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_null">is_null</a><span class="src-sym">(</span><span class="src-var">$mean</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1518"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$mean&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#methodmean">mean</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1519"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1520"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sdev&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1521"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1522"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span>=&gt;<span class="src-var">$freq</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1523"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sdev&nbsp;</span>+=&nbsp;<span class="src-var">$freq&nbsp;</span>*&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$val&nbsp;</span>-&nbsp;<span class="src-var">$mean</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1524"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1525"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1526"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1527"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sdev&nbsp;</span>+=&nbsp;<a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$val&nbsp;</span>-&nbsp;<span class="src-var">$mean</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1528"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1529"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1530"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sdev</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1531"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1532"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1533"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1534"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Utility&nbsp;function&nbsp;to&nbsp;format&nbsp;a&nbsp;PEAR_Error&nbsp;to&nbsp;be&nbsp;used&nbsp;by&nbsp;calc(),</span></div></li> +<li><div class="src-line"><a name="a1535"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;calcBasic()&nbsp;and&nbsp;calcFull()</span></div></li> +<li><div class="src-line"><a name="a1536"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1537"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a1538"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc-var">$v&nbsp;</span><span class="src-doc">value&nbsp;to&nbsp;be&nbsp;formatted</span></div></li> +<li><div class="src-line"><a name="a1539"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">boolean&nbsp;</span><span class="src-doc-var">$returnErrorObject&nbsp;</span><span class="src-doc">whether&nbsp;the&nbsp;raw&nbsp;PEAR_Error&nbsp;(when&nbsp;true,&nbsp;default),</span></div></li> +<li><div class="src-line"><a name="a1540"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or&nbsp;only&nbsp;the&nbsp;error&nbsp;message&nbsp;will&nbsp;be&nbsp;returned&nbsp;(when&nbsp;false)</span></div></li> +<li><div class="src-line"><a name="a1541"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">if&nbsp;the&nbsp;value&nbsp;is&nbsp;a&nbsp;PEAR_Error&nbsp;object,&nbsp;and&nbsp;$useErrorObject</span></div></li> +<li><div class="src-line"><a name="a1542"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is&nbsp;false,&nbsp;then&nbsp;a&nbsp;string&nbsp;with&nbsp;the&nbsp;error&nbsp;message&nbsp;will&nbsp;be&nbsp;returned,</span></div></li> +<li><div class="src-line"><a name="a1543"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;otherwise&nbsp;the&nbsp;value&nbsp;will&nbsp;not&nbsp;be&nbsp;modified&nbsp;and&nbsp;returned&nbsp;as&nbsp;passed.</span></div></li> +<li><div class="src-line"><a name="a1544"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1545"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><span class="src-id">__format</span><span class="src-sym">(</span><span class="src-var">$v</span><span class="src-sym">,&nbsp;</span><span class="src-var">$useErrorObject</span>=<span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1546"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">isError</span><span class="src-sym">(</span><span class="src-var">$v</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$useErrorObject&nbsp;</span>==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1547"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v</span><span class="src-sym">-&gt;</span><span class="src-id">getMessage</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1548"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1549"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1550"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1551"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1552"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1553"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a1554"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Utility&nbsp;function&nbsp;to&nbsp;validate&nbsp;the&nbsp;data&nbsp;and&nbsp;modify&nbsp;it</span></div></li> +<li><div class="src-line"><a name="a1555"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;according&nbsp;to&nbsp;the&nbsp;current&nbsp;null&nbsp;handling&nbsp;option</span></div></li> +<li><div class="src-line"><a name="a1556"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1557"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@access</span><span class="src-doc">&nbsp;&nbsp;private</span></div></li> +<li><div class="src-line"><a name="a1558"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc">&nbsp;</span><span class="src-doc-type">mixed&nbsp;</span><span class="src-doc">true&nbsp;on&nbsp;success,&nbsp;a&nbsp;PEAR_Error&nbsp;object&nbsp;otherwise</span></div></li> +<li><div class="src-line"><a name="a1559"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a1560"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;setData()</span></div></li> +<li><div class="src-line"><a name="a1561"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1562"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><span class="src-id">_validate</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span><span class="src-comm">/*{{{*/</span></div></li> +<li><div class="src-line"><a name="a1563"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$flag&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataOption">_dataOption</a>&nbsp;==&nbsp;<span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1564"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$key</span>=&gt;<span class="src-var">$value</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1565"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$d&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$flag</span><span class="src-sym">)&nbsp;</span>?&nbsp;<span class="src-var">$key&nbsp;</span>:&nbsp;<span class="src-var">$value</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1566"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$flag</span><span class="src-sym">)&nbsp;</span>?&nbsp;<span class="src-var">$value&nbsp;</span>:&nbsp;<span class="src-var">$key</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1567"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_numeric">is_numeric</a><span class="src-sym">(</span><span class="src-var">$d</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1568"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_nullOption">_nullOption</a><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1569"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_IGNORE_NULL">STATS_IGNORE_NULL</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1570"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">[</span><span class="src-str">&quot;</span><span class="src-str"><span class="src-var">$key</span></span><span class="src-str">&quot;</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1571"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1572"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_USE_NULL_AS_ZERO">STATS_USE_NULL_AS_ZERO</a></span>:</div></li> +<li><div class="src-line"><a name="a1573"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$flag</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1574"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">[</span><span class="src-str">&quot;</span><span class="src-str"><span class="src-var">$key</span></span><span class="src-str">&quot;</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1575"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-var">$v</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1576"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1577"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1578"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1579"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1580"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_REJECT_NULL">STATS_REJECT_NULL</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1581"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">default</span>:</div></li> +<li><div class="src-line"><a name="a1582"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">PEAR</span><span class="src-sym">::</span><span class="src-id">raiseError</span><span class="src-sym">(</span><span class="src-str">'data&nbsp;rejected,&nbsp;contains&nbsp;NULL&nbsp;values'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1583"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1584"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1585"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1586"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1587"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$flag</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1588"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/ksort">ksort</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1589"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">_dataExpanded</a>&nbsp;=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1590"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a>&nbsp;<span class="src-key">as&nbsp;</span><span class="src-var">$val</span>=&gt;<span class="src-var">$freq</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1591"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">_dataExpanded</a>&nbsp;=&nbsp;<a href="http://www.php.net/array_pad">array_pad</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">_dataExpanded</a><span class="src-sym">,&nbsp;</span><a href="../Math_Stats/Base.html#methodcount">count</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">_dataExpanded</a><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-var">$freq</span><span class="src-sym">,&nbsp;</span><span class="src-var">$val</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1592"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1593"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/sort">sort</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_dataExpanded">_dataExpanded</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1594"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1595"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/sort">sort</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../Math_Stats/Base.html#var$_data">_data</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1596"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1597"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1598"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1599"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1600"></a><span class="src-sym">}</span><span class="src-comm">/*}}}*/</span></div></li> +<li><div class="src-line"><a name="a1601"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1602"></a><span class="src-comm">//&nbsp;vim:&nbsp;ts=4:sw=4:et:</span></div></li> +<li><div class="src-line"><a name="a1603"></a><span class="src-comm">//&nbsp;vim6:&nbsp;fdl=1:&nbsp;fdm=marker:</span></div></li> +<li><div class="src-line"><a name="a1604"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1605"></a><span class="src-php">?&gt;</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:03 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html new file mode 100644 index 0000000..27e8134 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel_Calculation__PHPExcelCalculationTokenStack.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>File Source for Stack.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="../elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file Stack.php</h1> +<p>Documentation is available at <a href="../PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html">Stack.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-doc">&nbsp;*&nbsp;PHPExcel</span></div></li> +<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;Copyright&nbsp;(c)&nbsp;2006&nbsp;-&nbsp;2012&nbsp;PHPExcel</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;This&nbsp;library&nbsp;is&nbsp;free&nbsp;software;&nbsp;you&nbsp;can&nbsp;redistribute&nbsp;it&nbsp;and/or</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;modify&nbsp;it&nbsp;under&nbsp;the&nbsp;terms&nbsp;of&nbsp;the&nbsp;GNU&nbsp;Lesser&nbsp;General&nbsp;Public</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*&nbsp;License&nbsp;as&nbsp;published&nbsp;by&nbsp;the&nbsp;Free&nbsp;Software&nbsp;Foundation;&nbsp;either</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;version&nbsp;2.1&nbsp;of&nbsp;the&nbsp;License,&nbsp;or&nbsp;(at&nbsp;your&nbsp;option)&nbsp;any&nbsp;later&nbsp;version.</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;This&nbsp;library&nbsp;is&nbsp;distributed&nbsp;in&nbsp;the&nbsp;hope&nbsp;that&nbsp;it&nbsp;will&nbsp;be&nbsp;useful,</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*&nbsp;but&nbsp;WITHOUT&nbsp;ANY&nbsp;WARRANTY;&nbsp;without&nbsp;even&nbsp;the&nbsp;implied&nbsp;warranty&nbsp;of</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;MERCHANTABILITY&nbsp;or&nbsp;FITNESS&nbsp;FOR&nbsp;A&nbsp;PARTICULAR&nbsp;PURPOSE.&nbsp;&nbsp;See&nbsp;the&nbsp;GNU</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;Lesser&nbsp;General&nbsp;Public&nbsp;License&nbsp;for&nbsp;more&nbsp;details.</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;You&nbsp;should&nbsp;have&nbsp;received&nbsp;a&nbsp;copy&nbsp;of&nbsp;the&nbsp;GNU&nbsp;Lesser&nbsp;General&nbsp;Public</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;License&nbsp;along&nbsp;with&nbsp;this&nbsp;library;&nbsp;if&nbsp;not,&nbsp;write&nbsp;to&nbsp;the&nbsp;Free&nbsp;Software</span></div></li> +<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*&nbsp;Foundation,&nbsp;Inc.,&nbsp;51&nbsp;Franklin&nbsp;Street,&nbsp;Fifth&nbsp;Floor,&nbsp;Boston,&nbsp;MA&nbsp;&nbsp;02110-1301&nbsp;&nbsp;USA</span></div></li> +<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@category</span><span class="src-doc">&nbsp;&nbsp;&nbsp;PHPExcel</span></div></li> +<li><div class="src-line"><a name="a22"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@package</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation</span></div></li> +<li><div class="src-line"><a name="a23"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@copyright</span><span class="src-doc">&nbsp;&nbsp;Copyright&nbsp;(c)&nbsp;2006&nbsp;-&nbsp;2012&nbsp;PHPExcel&nbsp;(http://www.codeplex.com/PHPExcel)</span></div></li> +<li><div class="src-line"><a name="a24"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@license</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt&nbsp;&nbsp;&nbsp;&nbsp;LGPL</span></div></li> +<li><div class="src-line"><a name="a25"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@version</span><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;1.7.8,&nbsp;2012-10-12</span></div></li> +<li><div class="src-line"><a name="a26"></a><span class="src-doc">&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a28"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a29"></a><span class="src-key">class&nbsp;</span><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a>&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a30"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$_stack&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">private&nbsp;</span><span class="src-var">$_count&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a33"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a34"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodcount">count</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;count()</span></div></li> +<li><div class="src-line"><a name="a38"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a39"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodpush">push</a><span class="src-sym">(</span><span class="src-var">$type</span><span class="src-sym">,</span><span class="src-var">$value</span><span class="src-sym">,</span><span class="src-var">$reference</span>=<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_stack</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_count</span>++<span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'type'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-var">$type</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'value'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-var">$value</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'reference'&nbsp;&nbsp;&nbsp;&nbsp;</span>=&gt;&nbsp;<span class="src-var">$reference</span></div></li> +<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$type&nbsp;</span>==&nbsp;<span class="src-str">'Function'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$localeFunction&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a></span><span class="src-sym">::</span><a href="../PHPExcel_Calculation/PHPExcel_Calculation.html#method_localeFunc">_localeFunc</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$localeFunction&nbsp;</span>!=&nbsp;<span class="src-var">$value</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_stack</span><span class="src-sym">[</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_count&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'localeValue'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$localeFunction</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;push()</span></div></li> +<li><div class="src-line"><a name="a52"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a53"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodpop">pop</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_count&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_stack</span><span class="src-sym">[</span>--<span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_count</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;pop()</span></div></li> +<li><div class="src-line"><a name="a60"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a61"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodlast">last</a><span class="src-sym">(</span><span class="src-var">$n</span>=<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_count</span>-<span class="src-var">$n&nbsp;</span>&lt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">null</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_stack</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><span class="src-var">_count</span>-<span class="src-var">$n</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;last()</span></div></li> +<li><div class="src-line"><a name="a68"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a69"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#method__construct">__construct</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a72"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a73"></a><span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;PHPExcel_Calculation_Token_Stack</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:48 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html new file mode 100644 index 0000000..1fb44e9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLMQuadTest.php.html @@ -0,0 +1,194 @@ +<html> +<head> +<title>File Source for LMQuadTest.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file LMQuadTest.php</h1> +<p>Documentation is available at <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html">LMQuadTest.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-doc">&nbsp;*&nbsp;quadratic&nbsp;(p-o)'S'S(p-o)</span></div></li> +<li><div class="src-line"><a name="a4"></a><span class="src-doc">&nbsp;*&nbsp;solve&nbsp;for&nbsp;o,&nbsp;S</span></div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-doc">&nbsp;*&nbsp;S&nbsp;is&nbsp;a&nbsp;single&nbsp;scale&nbsp;factor</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-key">class&nbsp;</span><a href="../PHPExcel/LMQuadTest.html">LMQuadTest</a>&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a8"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a9"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array[]&nbsp;</span><span class="src-doc-var">$x&nbsp;</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array[]&nbsp;</span><span class="src-doc-var">$a&nbsp;</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a13"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/LMQuadTest.html#methodval">val</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$a</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a14"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$a</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">3</span><span class="src-sym">)&nbsp;</span><span class="src-key">die&nbsp;</span><span class="src-sym">(</span><span class="src-str">&quot;Wrong&nbsp;number&nbsp;of&nbsp;elements&nbsp;in&nbsp;array&nbsp;a&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a15"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-key">die&nbsp;</span><span class="src-sym">(</span><span class="src-str">&quot;Wrong&nbsp;number&nbsp;of&nbsp;elements&nbsp;in&nbsp;array&nbsp;x&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a16"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a17"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ox&nbsp;</span>=&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a18"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$oy&nbsp;</span>=&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a19"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a20"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a21"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sdx&nbsp;</span>=&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$ox</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a22"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sdy&nbsp;</span>=&nbsp;<span class="src-var">$s&nbsp;</span>*&nbsp;<span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$oy</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a23"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-sym">(</span><span class="src-var">$sdx&nbsp;</span>*&nbsp;<span class="src-var">$sdx</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$sdy&nbsp;</span>*&nbsp;<span class="src-var">$sdy</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;val()</span></div></li> +<li><div class="src-line"><a name="a26"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a29"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;z&nbsp;=&nbsp;(p-o)'S'S(p-o)</span></div></li> +<li><div class="src-line"><a name="a30"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dz/dp&nbsp;=&nbsp;2S'S(p-o)</span></div></li> +<li><div class="src-line"><a name="a31"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a32"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;z&nbsp;=&nbsp;(s*(px-ox))^2&nbsp;+&nbsp;(s*(py-oy))^2</span></div></li> +<li><div class="src-line"><a name="a33"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dz/dox&nbsp;=&nbsp;-2(s*(px-ox))*s</span></div></li> +<li><div class="src-line"><a name="a34"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dz/ds&nbsp;=&nbsp;2*s*[(px-ox)^2&nbsp;+&nbsp;(py-oy)^2]</span></div></li> +<li><div class="src-line"><a name="a35"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;z&nbsp;=&nbsp;(s*dx)^2&nbsp;+&nbsp;(s*dy)^2</span></div></li> +<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;dz/ds&nbsp;=&nbsp;2(s*dx)*dx&nbsp;+&nbsp;2(s*dy)*dy</span></div></li> +<li><div class="src-line"><a name="a38"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a39"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array[]&nbsp;</span><span class="src-doc-var">$x&nbsp;</span></div></li> +<li><div class="src-line"><a name="a40"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array[]&nbsp;</span><span class="src-doc-var">$a&nbsp;</span></div></li> +<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc-var">$a_k&nbsp;</span></div></li> +<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">array[]&nbsp;</span><span class="src-doc-var">$a&nbsp;</span></div></li> +<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/LMQuadTest.html#methodgrad">grad</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$a</span><span class="src-sym">,&nbsp;</span><span class="src-var">$a_k</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$a</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">3</span><span class="src-sym">)&nbsp;</span><span class="src-key">die&nbsp;</span><span class="src-sym">(</span><span class="src-str">&quot;Wrong&nbsp;number&nbsp;of&nbsp;elements&nbsp;in&nbsp;array&nbsp;a&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-key">die&nbsp;</span><span class="src-sym">(</span><span class="src-str">&quot;Wrong&nbsp;number&nbsp;of&nbsp;elements&nbsp;in&nbsp;array&nbsp;x&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$a_k&nbsp;</span>&lt;&nbsp;<span class="src-num">3</span><span class="src-sym">)&nbsp;</span><span class="src-key">die&nbsp;</span><span class="src-sym">(</span><span class="src-str">&quot;a_k=&quot;</span>.<span class="src-var">$a_k</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a48"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ox&nbsp;</span>=&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$oy&nbsp;</span>=&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a52"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$dx&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$ox</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$dy&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$oy</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a55"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$a_k&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span>-<span class="src-num">2.</span>*<span class="src-var">$s</span>*<span class="src-var">$s</span>*<span class="src-var">$dx</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$a_k&nbsp;</span>==&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span>-<span class="src-num">2.</span>*<span class="src-var">$s</span>*<span class="src-var">$s</span>*<span class="src-var">$dy</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">2.</span>*<span class="src-var">$s</span>*<span class="src-sym">(</span><span class="src-var">$dx</span>*<span class="src-var">$dx&nbsp;</span>+&nbsp;<span class="src-var">$dy</span>*<span class="src-var">$dy</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;grad()</span></div></li> +<li><div class="src-line"><a name="a63"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a64"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a66"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">array[]&nbsp;</span><span class="src-doc">$a</span></div></li> +<li><div class="src-line"><a name="a67"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/LMQuadTest.html#methodinitial">initial</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.05</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a72"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$a</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;initial()</span></div></li> +<li><div class="src-line"><a name="a75"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a76"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a78"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Object[]&nbsp;</span><span class="src-doc">$a</span></div></li> +<li><div class="src-line"><a name="a79"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/LMQuadTest.html#methodtestdata">testdata</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$npts&nbsp;</span>=&nbsp;<span class="src-num">25</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a82"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$a</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.9</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a86"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a88"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$r&nbsp;</span>=&nbsp;-<span class="src-num">2</span><span class="src-sym">;&nbsp;</span><span class="src-var">$r&nbsp;</span>&lt;=&nbsp;<span class="src-num">2</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$r</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$c&nbsp;</span>=&nbsp;-<span class="src-num">2</span><span class="src-sym">;&nbsp;</span><span class="src-var">$c&nbsp;</span>&lt;=&nbsp;<span class="src-num">2</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$c</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$x</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$c</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$x</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$y</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/LMQuadTest.html#methodval">val</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$a</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print<span class="src-sym">(</span><span class="src-str">&quot;Quad&nbsp;&quot;</span>.<span class="src-var">$c</span>.<span class="src-str">&quot;,&quot;</span>.<span class="src-var">$r</span>.<span class="src-str">&quot;&nbsp;-&gt;&nbsp;&quot;</span>.<span class="src-var">$y</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>.<span class="src-str">&quot;&lt;br&nbsp;/&gt;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a95"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;++<span class="src-var">$i</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print<span class="src-sym">(</span><span class="src-str">&quot;quad&nbsp;x=&nbsp;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a100"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$qx&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$qx</span><span class="src-sym">-&gt;</span><span class="src-id">print</span><span class="src-sym">(</span><span class="src-num">10</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a103"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print<span class="src-sym">(</span><span class="src-str">&quot;quad&nbsp;y=&nbsp;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$qy&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$y</span><span class="src-sym">,&nbsp;</span><span class="src-var">$npts</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$qy</span><span class="src-sym">-&gt;</span><span class="src-id">print</span><span class="src-sym">(</span><span class="src-num">10</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a107"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$o</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$x</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$o</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$a</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$o</span><span class="src-sym">[</span><span class="src-num">2</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$y</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$o</span><span class="src-sym">[</span><span class="src-num">3</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$s</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a112"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$o</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;testdata()</span></div></li> +<li><div class="src-line"><a name="a115"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a116"></a><span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;LMQuadTest</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:35 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html new file mode 100644 index 0000000..3c8f7c1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation.php.html @@ -0,0 +1,137 @@ +<html> +<head> +<title>File Source for LagrangeInterpolation.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file LagrangeInterpolation.php</h1> +<p>Documentation is available at <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html">LagrangeInterpolation.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-inc">require_once&nbsp;</span><span class="src-str">&quot;../Matrix.php&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;Given&nbsp;n&nbsp;points&nbsp;(x0,y0)...(xn-1,yn-1),&nbsp;the&nbsp;following&nbsp;methid&nbsp;computes</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;the&nbsp;polynomial&nbsp;factors&nbsp;of&nbsp;the&nbsp;n-1't&nbsp;degree&nbsp;polynomial&nbsp;passing&nbsp;through</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;the&nbsp;n&nbsp;points.</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;Example:&nbsp;Passing&nbsp;in&nbsp;three&nbsp;points&nbsp;(2,3)&nbsp;(1,4)&nbsp;and&nbsp;(3,7)&nbsp;will&nbsp;produce</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;the&nbsp;results&nbsp;[2.5,&nbsp;-8.5,&nbsp;10]&nbsp;which&nbsp;means&nbsp;that&nbsp;the&nbsp;points&nbsp;are&nbsp;on&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;curve&nbsp;y&nbsp;=&nbsp;2.5x²&nbsp;-&nbsp;8.5x&nbsp;+&nbsp;10.</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;http://geosoft.no/software/lagrange/LagrangeInterpolation.java.html</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Jacob&nbsp;Dreyer</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Paul&nbsp;Meagher&nbsp;(port&nbsp;to&nbsp;PHP&nbsp;and&nbsp;minor&nbsp;changes)</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">x[]&nbsp;</span><span class="src-doc">float</span></div></li> +<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">y[]&nbsp;</span><span class="src-doc">float</span></div></li> +<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a21"></a><span class="src-key">class&nbsp;</span><a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a>&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a22"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../PHPExcel/LagrangeInterpolation.html#methodfindPolynomialFactors">findPolynomialFactors</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$y</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$n&nbsp;</span>=&nbsp;<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a25"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$data&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;double[n][n];</span></div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rhs&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;double[n];</span></div></li> +<li><div class="src-line"><a name="a28"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$data</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-var">$j</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v&nbsp;</span>*=&nbsp;<span class="src-var">$x</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rhs</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$y</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a37"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Solve&nbsp;m&nbsp;*&nbsp;s&nbsp;=&nbsp;b</span></div></li> +<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$m&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$data</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$b&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$rhs</span><span class="src-sym">,&nbsp;</span><span class="src-var">$n</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a41"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$m</span><span class="src-sym">-&gt;</span><span class="src-id">solve</span><span class="src-sym">(</span><span class="src-var">$b</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a43"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$s</span><span class="src-sym">-&gt;</span><span class="src-id">getRowPackedCopy</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;findPolynomialFactors()</span></div></li> +<li><div class="src-line"><a name="a46"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a47"></a><span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;LagrangeInterpolation</span></div></li> +<li><div class="src-line"><a name="a48"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a49"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a50"></a><span class="src-var">$x&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">2.0</span><span class="src-sym">,&nbsp;</span><span class="src-num">1.0</span><span class="src-sym">,&nbsp;</span><span class="src-num">3.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a51"></a><span class="src-var">$y&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">3.0</span><span class="src-sym">,&nbsp;</span><span class="src-num">4.0</span><span class="src-sym">,&nbsp;</span><span class="src-num">7.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a52"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a53"></a><span class="src-var">$li&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id"><a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a54"></a><span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-var">$li</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/LagrangeInterpolation.html#methodfindPolynomialFactors">findPolynomialFactors</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$y</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a55"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a56"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a57"></a><span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-num">3</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-var">$f</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>.<span class="src-str">&quot;&lt;br&nbsp;/&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a59"></a><span class="src-sym">}</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:32 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html new file mode 100644 index 0000000..e80d148 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLagrangeInterpolation2.php.html @@ -0,0 +1,137 @@ +<html> +<head> +<title>File Source for LagrangeInterpolation2.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file LagrangeInterpolation2.php</h1> +<p>Documentation is available at <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html">LagrangeInterpolation2.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-inc">require_once&nbsp;</span><span class="src-str">&quot;../Matrix.php&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-doc">&nbsp;*&nbsp;Given&nbsp;n&nbsp;points&nbsp;(x0,y0)...(xn-1,yn-1),&nbsp;the&nbsp;following&nbsp;method&nbsp;computes</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-doc">&nbsp;*&nbsp;the&nbsp;polynomial&nbsp;factors&nbsp;of&nbsp;the&nbsp;n-1't&nbsp;degree&nbsp;polynomial&nbsp;passing&nbsp;through</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-doc">&nbsp;*&nbsp;the&nbsp;n&nbsp;points.</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;*&nbsp;Example:&nbsp;Passing&nbsp;in&nbsp;three&nbsp;points&nbsp;(2,3)&nbsp;(1,4)&nbsp;and&nbsp;(3,7)&nbsp;will&nbsp;produce</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;*&nbsp;the&nbsp;results&nbsp;[2.5,&nbsp;-8.5,&nbsp;10]&nbsp;which&nbsp;means&nbsp;that&nbsp;the&nbsp;points&nbsp;are&nbsp;on&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;*&nbsp;curve&nbsp;y&nbsp;=&nbsp;2.5x²&nbsp;-&nbsp;8.5x&nbsp;+&nbsp;10.</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;http://geosoft.no/software/lagrange/LagrangeInterpolation.java.html</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@see</span><span class="src-doc">&nbsp;http://source.freehep.org/jcvsweb/ilc/LCSIM/wdview/lcsim/src/org/lcsim/fit/polynomial/PolynomialFitter.java</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Jacob&nbsp;Dreyer</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@author</span><span class="src-doc">&nbsp;Paul&nbsp;Meagher&nbsp;(port&nbsp;to&nbsp;PHP&nbsp;and&nbsp;minor&nbsp;changes)</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">x[]&nbsp;</span><span class="src-doc">float</span></div></li> +<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">y[]&nbsp;</span><span class="src-doc">float</span></div></li> +<li><div class="src-line"><a name="a21"></a><span class="src-doc">&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a22"></a><span class="src-key">class&nbsp;</span><a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a>&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a23"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">public&nbsp;</span><span class="src-key">function&nbsp;</span><a href="../PHPExcel/LagrangeInterpolation.html#methodfindPolynomialFactors">findPolynomialFactors</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$y</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$n&nbsp;</span>=&nbsp;<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a26"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$data&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;double[n][n];</span></div></li> +<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rhs&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;double[n];</span></div></li> +<li><div class="src-line"><a name="a29"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$data</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$n</span>-<span class="src-var">$j</span>-<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v&nbsp;</span>*=&nbsp;<span class="src-var">$x</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rhs</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$y</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a38"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Solve&nbsp;m&nbsp;*&nbsp;s&nbsp;=&nbsp;b</span></div></li> +<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$m&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$data</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$b&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$rhs</span><span class="src-sym">,&nbsp;</span><span class="src-var">$n</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a42"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$s&nbsp;</span>=&nbsp;<span class="src-var">$m</span><span class="src-sym">-&gt;</span><span class="src-id">solve</span><span class="src-sym">(</span><span class="src-var">$b</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a44"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$s</span><span class="src-sym">-&gt;</span><span class="src-id">getRowPackedCopy</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;findPolynomialFactors()</span></div></li> +<li><div class="src-line"><a name="a47"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a48"></a><span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;LagrangeInterpolation</span></div></li> +<li><div class="src-line"><a name="a49"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a50"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a51"></a><span class="src-var">$x&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">2.0</span><span class="src-sym">,&nbsp;</span><span class="src-num">1.0</span><span class="src-sym">,&nbsp;</span><span class="src-num">3.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a52"></a><span class="src-var">$y&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">3.0</span><span class="src-sym">,&nbsp;</span><span class="src-num">4.0</span><span class="src-sym">,&nbsp;</span><span class="src-num">7.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a53"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a54"></a><span class="src-var">$li&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id"><a href="../PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a55"></a><span class="src-var">$f&nbsp;</span>=&nbsp;<span class="src-var">$li</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/LagrangeInterpolation.html#methodfindPolynomialFactors">findPolynomialFactors</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$y</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a56"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a57"></a><span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-num">3</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-var">$f</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>.<span class="src-str">&quot;&lt;br&nbsp;/&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a59"></a><span class="src-sym">}</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:32 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html new file mode 100644 index 0000000..ed076d8 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplesLevenbergMarquardt.php.html @@ -0,0 +1,263 @@ +<html> +<head> +<title>File Source for LevenbergMarquardt.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file LevenbergMarquardt.php</h1> +<p>Documentation is available at <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html">LevenbergMarquardt.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-comm">//&nbsp;Levenberg-Marquardt&nbsp;in&nbsp;PHP</span></div></li> +<li><div class="src-line"><a name="a4"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-comm">//&nbsp;http://www.idiom.com/~zilla/Computer/Javanumeric/LM.java</span></div></li> +<li><div class="src-line"><a name="a6"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-key">class&nbsp;</span><a href="../PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a>&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a8"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a9"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Calculate&nbsp;the&nbsp;current&nbsp;sum-squared-error</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Chi-squared&nbsp;is&nbsp;the&nbsp;distribution&nbsp;of&nbsp;squared&nbsp;Gaussian&nbsp;errors,</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;thus&nbsp;the&nbsp;name.</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">double[][]&nbsp;</span><span class="src-doc-var">$x&nbsp;</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">double[]&nbsp;</span><span class="src-doc-var">$a&nbsp;</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">double[]&nbsp;</span><span class="src-doc-var">$y,&nbsp;</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">double[]&nbsp;</span><span class="src-doc-var">$s,&nbsp;</span></div></li> +<li><div class="src-line"><a name="a19"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">object&nbsp;</span><span class="src-doc-var">$f&nbsp;</span></div></li> +<li><div class="src-line"><a name="a20"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a21"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/LevenbergMarquardt.html#methodchiSquared">chiSquared</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$a</span><span class="src-sym">,&nbsp;</span><span class="src-var">$y</span><span class="src-sym">,&nbsp;</span><span class="src-var">$s</span><span class="src-sym">,&nbsp;</span><span class="src-var">$f</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a22"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$npts&nbsp;</span>=&nbsp;<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$y</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sum&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a24"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$npts</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$d&nbsp;</span>=&nbsp;<span class="src-var">$y</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>-&nbsp;<span class="src-var">$f</span><span class="src-sym">-&gt;</span><span class="src-id">val</span><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$a</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$d&nbsp;</span>=&nbsp;<span class="src-var">$d&nbsp;</span>/&nbsp;<span class="src-var">$s</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sum&nbsp;</span>=&nbsp;<span class="src-var">$sum&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$d</span>*<span class="src-var">$d</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a30"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$sum</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;chiSquared()</span></div></li> +<li><div class="src-line"><a name="a33"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a34"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a36"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Minimize&nbsp;E&nbsp;=&nbsp;sum&nbsp;{(y[k]&nbsp;-&nbsp;f(x[k],a))&nbsp;/&nbsp;s[k]}^2</span></div></li> +<li><div class="src-line"><a name="a37"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;The&nbsp;individual&nbsp;errors&nbsp;are&nbsp;optionally&nbsp;scaled&nbsp;by&nbsp;s[k].</span></div></li> +<li><div class="src-line"><a name="a38"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Note&nbsp;that&nbsp;LMfunc&nbsp;implements&nbsp;the&nbsp;value&nbsp;and&nbsp;gradient&nbsp;of&nbsp;f(x,a),</span></div></li> +<li><div class="src-line"><a name="a39"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;NOT&nbsp;the&nbsp;value&nbsp;and&nbsp;gradient&nbsp;of&nbsp;E&nbsp;with&nbsp;respect&nbsp;to&nbsp;a!</span></div></li> +<li><div class="src-line"><a name="a40"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a41"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">x&nbsp;</span><span class="src-doc">array&nbsp;of&nbsp;domain&nbsp;points,&nbsp;each&nbsp;may&nbsp;be&nbsp;multidimensional</span></div></li> +<li><div class="src-line"><a name="a42"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">y&nbsp;</span><span class="src-doc">corresponding&nbsp;array&nbsp;of&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a43"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">a&nbsp;</span><span class="src-doc">the&nbsp;parameters/state&nbsp;of&nbsp;the&nbsp;model</span></div></li> +<li><div class="src-line"><a name="a44"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">vary&nbsp;</span><span class="src-doc">false&nbsp;to&nbsp;indicate&nbsp;the&nbsp;corresponding&nbsp;a[k]&nbsp;is&nbsp;to&nbsp;be&nbsp;held&nbsp;fixed</span></div></li> +<li><div class="src-line"><a name="a45"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">s2&nbsp;</span><span class="src-doc">sigma^2&nbsp;for&nbsp;point&nbsp;i</span></div></li> +<li><div class="src-line"><a name="a46"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">lambda&nbsp;</span><span class="src-doc">blend&nbsp;between&nbsp;steepest&nbsp;descent&nbsp;(lambda&nbsp;high)&nbsp;and</span></div></li> +<li><div class="src-line"><a name="a47"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jump&nbsp;to&nbsp;bottom&nbsp;of&nbsp;quadratic&nbsp;(lambda&nbsp;zero).</span></div></li> +<li><div class="src-line"><a name="a48"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Start&nbsp;with&nbsp;0.001.</span></div></li> +<li><div class="src-line"><a name="a49"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">termepsilon&nbsp;</span><span class="src-doc">termination&nbsp;accuracy&nbsp;(0.01)</span></div></li> +<li><div class="src-line"><a name="a50"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">maxiter&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;stop&nbsp;and&nbsp;return&nbsp;after&nbsp;this&nbsp;many&nbsp;iterations&nbsp;if&nbsp;not&nbsp;done</span></div></li> +<li><div class="src-line"><a name="a51"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">verbose&nbsp;</span><span class="src-doc">&nbsp;&nbsp;&nbsp;set&nbsp;to&nbsp;zero&nbsp;(no&nbsp;prints),&nbsp;1,&nbsp;2</span></div></li> +<li><div class="src-line"><a name="a52"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*</span></div></li> +<li><div class="src-line"><a name="a53"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">the&nbsp;</span><span class="src-doc">new&nbsp;lambda&nbsp;for&nbsp;future&nbsp;iterations.</span></div></li> +<li><div class="src-line"><a name="a54"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;Can&nbsp;use&nbsp;this&nbsp;and&nbsp;maxiter&nbsp;to&nbsp;interleave&nbsp;the&nbsp;LM&nbsp;descent&nbsp;with&nbsp;some&nbsp;other</span></div></li> +<li><div class="src-line"><a name="a55"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;task,&nbsp;setting&nbsp;maxiter&nbsp;to&nbsp;something&nbsp;small.</span></div></li> +<li><div class="src-line"><a name="a56"></a><span class="src-doc">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/LevenbergMarquardt.html#methodsolve">solve</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$a</span><span class="src-sym">,&nbsp;</span><span class="src-var">$y</span><span class="src-sym">,&nbsp;</span><span class="src-var">$s</span><span class="src-sym">,&nbsp;</span><span class="src-var">$vary</span><span class="src-sym">,&nbsp;</span><span class="src-var">$f</span><span class="src-sym">,&nbsp;</span><span class="src-var">$lambda</span><span class="src-sym">,&nbsp;</span><span class="src-var">$termepsilon</span><span class="src-sym">,&nbsp;</span><span class="src-var">$maxiter</span><span class="src-sym">,&nbsp;</span><span class="src-var">$verbose</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$npts&nbsp;</span>=&nbsp;<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$y</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nparm&nbsp;</span>=&nbsp;<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$a</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a60"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$verbose&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print<span class="src-sym">(</span><span class="src-str">&quot;solve&nbsp;x[&quot;</span>.<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)</span>.<span class="src-str">&quot;][&quot;</span>.<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;]&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print<span class="src-sym">(</span><span class="src-str">&quot;&nbsp;a[&quot;</span>.<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$a</span><span class="src-sym">)</span>.<span class="src-str">&quot;]&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">println</span><span class="src-sym">(</span><span class="src-str">&quot;&nbsp;y[&quot;</span>.<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-id">length</span><span class="src-sym">)</span>.<span class="src-str">&quot;]&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a66"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$e0&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/LevenbergMarquardt.html#methodchiSquared">chiSquared</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$a</span><span class="src-sym">,&nbsp;</span><span class="src-var">$y</span><span class="src-sym">,&nbsp;</span><span class="src-var">$s</span><span class="src-sym">,&nbsp;</span><span class="src-var">$f</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a68"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//double&nbsp;lambda&nbsp;=&nbsp;0.001;</span></div></li> +<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$done&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a71"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;g&nbsp;=&nbsp;gradient,&nbsp;H&nbsp;=&nbsp;hessian,&nbsp;d&nbsp;=&nbsp;step&nbsp;to&nbsp;minimum</span></div></li> +<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;H&nbsp;d&nbsp;=&nbsp;-g,&nbsp;solve&nbsp;for&nbsp;d</span></div></li> +<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$H&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a76"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//double[]&nbsp;d&nbsp;=&nbsp;new&nbsp;double[nparm];</span></div></li> +<li><div class="src-line"><a name="a78"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$oos2&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a80"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$npts</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$oos2</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">1.</span>/<span class="src-sym">(</span><span class="src-var">$s</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>*<span class="src-var">$s</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$iter&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$term&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;termination&nbsp;count&nbsp;test</span></div></li> +<li><div class="src-line"><a name="a86"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;do&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;++<span class="src-var">$iter</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a89"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;hessian&nbsp;approximation</span></div></li> +<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(&nbsp;</span><span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$r&nbsp;</span>&lt;&nbsp;<span class="src-var">$nparm</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$r</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(&nbsp;</span><span class="src-var">$c&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$c&nbsp;</span>&lt;&nbsp;<span class="src-var">$nparm</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$c</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(&nbsp;</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$npts</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-var">$H</span><span class="src-sym">[</span><span class="src-var">$r</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$c</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a95"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$xi&nbsp;</span>=&nbsp;<span class="src-var">$x</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$H</span><span class="src-sym">[</span><span class="src-var">$r</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$c</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-sym">(</span><span class="src-var">$oos2</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-var">$f</span><span class="src-sym">-&gt;</span><span class="src-id">grad</span><span class="src-sym">(</span><span class="src-var">$xi</span><span class="src-sym">,&nbsp;</span><span class="src-var">$a</span><span class="src-sym">,&nbsp;</span><span class="src-var">$r</span><span class="src-sym">)&nbsp;</span>*&nbsp;<span class="src-var">$f</span><span class="src-sym">-&gt;</span><span class="src-id">grad</span><span class="src-sym">(</span><span class="src-var">$xi</span><span class="src-sym">,&nbsp;</span><span class="src-var">$a</span><span class="src-sym">,&nbsp;</span><span class="src-var">$c</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;</span><span class="src-comm">//npts</span></div></li> +<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//c</span></div></li> +<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//r</span></div></li> +<li><div class="src-line"><a name="a100"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;boost&nbsp;diagonal&nbsp;towards&nbsp;gradient&nbsp;descent</span></div></li> +<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(&nbsp;</span><span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$r&nbsp;</span>&lt;&nbsp;<span class="src-var">$nparm</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$r</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$H</span><span class="src-sym">[</span><span class="src-var">$r</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$r</span><span class="src-sym">]&nbsp;</span>*=&nbsp;<span class="src-sym">(</span><span class="src-num">1.&nbsp;</span>+&nbsp;<span class="src-var">$lambda</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a104"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;gradient</span></div></li> +<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(&nbsp;</span><span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$r&nbsp;</span>&lt;&nbsp;<span class="src-var">$nparm</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$r</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(&nbsp;</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$npts</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-var">$g</span><span class="src-sym">[</span><span class="src-var">$r</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$xi&nbsp;</span>=&nbsp;<span class="src-var">$x</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g</span><span class="src-sym">[</span><span class="src-var">$r</span><span class="src-sym">]&nbsp;</span>+=&nbsp;<span class="src-sym">(</span><span class="src-var">$oos2</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>*&nbsp;<span class="src-sym">(</span><span class="src-var">$y</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>-<span class="src-var">$f</span><span class="src-sym">-&gt;</span><span class="src-id">val</span><span class="src-sym">(</span><span class="src-var">$xi</span><span class="src-sym">,</span><span class="src-var">$a</span><span class="src-sym">))&nbsp;</span>*&nbsp;<span class="src-var">$f</span><span class="src-sym">-&gt;</span><span class="src-id">grad</span><span class="src-sym">(</span><span class="src-var">$xi</span><span class="src-sym">,&nbsp;</span><span class="src-var">$a</span><span class="src-sym">,&nbsp;</span><span class="src-var">$r</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//npts</span></div></li> +<li><div class="src-line"><a name="a113"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;scale&nbsp;(for&nbsp;consistency&nbsp;with&nbsp;NR,&nbsp;not&nbsp;necessary)</span></div></li> +<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(&nbsp;</span><span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$r&nbsp;</span>&lt;&nbsp;<span class="src-var">$nparm</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$r</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$g</span><span class="src-sym">[</span><span class="src-var">$r</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-num">0.5&nbsp;</span>*&nbsp;<span class="src-var">$g</span><span class="src-sym">[</span><span class="src-var">$r</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(&nbsp;</span><span class="src-var">$c&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$c&nbsp;</span>&lt;&nbsp;<span class="src-var">$nparm</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$c</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$H</span><span class="src-sym">[</span><span class="src-var">$r</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$c</span><span class="src-sym">]&nbsp;</span>*=&nbsp;<span class="src-num">0.5</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a123"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;solve&nbsp;H&nbsp;d&nbsp;=&nbsp;-g,&nbsp;evaluate&nbsp;error&nbsp;at&nbsp;new&nbsp;location</span></div></li> +<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//double[]&nbsp;d&nbsp;=&nbsp;DoubleMatrix.solve(H,&nbsp;g);</span></div></li> +<li><div class="src-line"><a name="a126"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;double[]&nbsp;d&nbsp;=&nbsp;(new&nbsp;Matrix(H)).lu().solve(new&nbsp;Matrix(g,&nbsp;nparm)).getRowPackedCopy();</span></div></li> +<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//double[]&nbsp;na&nbsp;=&nbsp;DoubleVector.add(a,&nbsp;d);</span></div></li> +<li><div class="src-line"><a name="a128"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;double[]&nbsp;na&nbsp;=&nbsp;(new&nbsp;Matrix(a,&nbsp;nparm)).plus(new&nbsp;Matrix(d,&nbsp;nparm)).getRowPackedCopy();</span></div></li> +<li><div class="src-line"><a name="a129"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;double&nbsp;e1&nbsp;=&nbsp;chiSquared(x,&nbsp;na,&nbsp;y,&nbsp;s,&nbsp;f);</span></div></li> +<li><div class="src-line"><a name="a130"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a131"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(verbose&nbsp;&gt;&nbsp;0)&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a132"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(&quot;\n\niteration&nbsp;&quot;+iter+&quot;&nbsp;lambda&nbsp;=&nbsp;&quot;+lambda);</span></div></li> +<li><div class="src-line"><a name="a133"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(&quot;a&nbsp;=&nbsp;&quot;);</span></div></li> +<li><div class="src-line"><a name="a134"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(new&nbsp;Matrix(a,&nbsp;nparm)).print(10,&nbsp;2);</span></div></li> +<li><div class="src-line"><a name="a135"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(verbose&nbsp;&gt;&nbsp;1)&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a136"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(&quot;H&nbsp;=&nbsp;&quot;);</span></div></li> +<li><div class="src-line"><a name="a137"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(new&nbsp;Matrix(H)).print(10,&nbsp;2);</span></div></li> +<li><div class="src-line"><a name="a138"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(&quot;g&nbsp;=&nbsp;&quot;);</span></div></li> +<li><div class="src-line"><a name="a139"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(new&nbsp;Matrix(g,&nbsp;nparm)).print(10,&nbsp;2);</span></div></li> +<li><div class="src-line"><a name="a140"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(&quot;d&nbsp;=&nbsp;&quot;);</span></div></li> +<li><div class="src-line"><a name="a141"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(new&nbsp;Matrix(d,&nbsp;nparm)).print(10,&nbsp;2);</span></div></li> +<li><div class="src-line"><a name="a142"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a143"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(&quot;e0&nbsp;=&nbsp;&quot;&nbsp;+&nbsp;e0&nbsp;+&nbsp;&quot;:&nbsp;&quot;);</span></div></li> +<li><div class="src-line"><a name="a144"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(&quot;moved&nbsp;from&nbsp;&quot;);</span></div></li> +<li><div class="src-line"><a name="a145"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(new&nbsp;Matrix(a,&nbsp;nparm)).print(10,&nbsp;2);</span></div></li> +<li><div class="src-line"><a name="a146"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(&quot;e1&nbsp;=&nbsp;&quot;&nbsp;+&nbsp;e1&nbsp;+&nbsp;&quot;:&nbsp;&quot;);</span></div></li> +<li><div class="src-line"><a name="a147"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(e1&nbsp;&lt;&nbsp;e0)&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a148"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.print(&quot;to&nbsp;&quot;);</span></div></li> +<li><div class="src-line"><a name="a149"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(new&nbsp;Matrix(na,&nbsp;nparm)).print(10,&nbsp;2);</span></div></li> +<li><div class="src-line"><a name="a150"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a151"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(&quot;move&nbsp;rejected&quot;);</span></div></li> +<li><div class="src-line"><a name="a152"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a153"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a154"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;termination&nbsp;test&nbsp;(slightly&nbsp;different&nbsp;than&nbsp;NR)</span></div></li> +<li><div class="src-line"><a name="a156"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(Math.abs(e1-e0)&nbsp;&gt;&nbsp;termepsilon)&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a157"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;term&nbsp;=&nbsp;0;</span></div></li> +<li><div class="src-line"><a name="a158"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a159"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;term++;</span></div></li> +<li><div class="src-line"><a name="a160"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(term&nbsp;==&nbsp;4)&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a161"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(&quot;terminating&nbsp;after&nbsp;&quot;&nbsp;+&nbsp;iter&nbsp;+&nbsp;&quot;&nbsp;iterations&quot;);</span></div></li> +<li><div class="src-line"><a name="a162"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;done&nbsp;=&nbsp;true;</span></div></li> +<li><div class="src-line"><a name="a163"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a164"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a165"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(iter&nbsp;&gt;=&nbsp;maxiter)&nbsp;done&nbsp;=&nbsp;true;</span></div></li> +<li><div class="src-line"><a name="a166"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;in&nbsp;the&nbsp;C++&nbsp;version,&nbsp;found&nbsp;that&nbsp;changing&nbsp;this&nbsp;to&nbsp;e1&nbsp;&gt;=&nbsp;e0</span></div></li> +<li><div class="src-line"><a name="a168"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;was&nbsp;not&nbsp;a&nbsp;good&nbsp;idea.&nbsp;&nbsp;See&nbsp;comment&nbsp;there.</span></div></li> +<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//</span></div></li> +<li><div class="src-line"><a name="a170"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(e1&nbsp;&gt;&nbsp;e0&nbsp;||&nbsp;Double.isNaN(e1))&nbsp;{&nbsp;//&nbsp;new&nbsp;location&nbsp;worse&nbsp;than&nbsp;before</span></div></li> +<li><div class="src-line"><a name="a171"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lambda&nbsp;*=&nbsp;10.;</span></div></li> +<li><div class="src-line"><a name="a172"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;new&nbsp;location&nbsp;better,&nbsp;accept&nbsp;new&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a173"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lambda&nbsp;*=&nbsp;0.1;</span></div></li> +<li><div class="src-line"><a name="a174"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e0&nbsp;=&nbsp;e1;</span></div></li> +<li><div class="src-line"><a name="a175"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;simply&nbsp;assigning&nbsp;a&nbsp;=&nbsp;na&nbsp;will&nbsp;not&nbsp;get&nbsp;results&nbsp;copied&nbsp;back&nbsp;to&nbsp;caller</span></div></li> +<li><div class="src-line"><a name="a176"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(&nbsp;int&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;&lt;&nbsp;nparm;&nbsp;i++&nbsp;)&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a177"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(vary[i])&nbsp;a[i]&nbsp;=&nbsp;na[i];</span></div></li> +<li><div class="src-line"><a name="a178"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a179"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">while</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$done</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a181"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a182"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$lambda</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;solve()</span></div></li> +<li><div class="src-line"><a name="a184"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a185"></a><span class="src-sym">}&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;LevenbergMarquardt</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:16:34 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html new file mode 100644 index 0000000..4534ed4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplespolyfit.php.html @@ -0,0 +1,151 @@ +<html> +<head> +<title>File Source for polyfit.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file polyfit.php</h1> +<p>Documentation is available at <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html">polyfit.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a><span class="src-inc">require_once&nbsp;</span><span class="src-str">&quot;../Matrix.php&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-comm">/*</span></div></li> +<li><div class="src-line"><a name="a4"></a><span class="src-comm">*&nbsp;@package&nbsp;JAMA</span></div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-comm">*&nbsp;@author&nbsp;Michael&nbsp;Bommarito</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-comm">*&nbsp;@author&nbsp;Paul&nbsp;Meagher</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-comm">*&nbsp;@version&nbsp;0.1</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-comm">*</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-comm">*&nbsp;Function&nbsp;to&nbsp;fit&nbsp;an&nbsp;order&nbsp;n&nbsp;polynomial&nbsp;function&nbsp;through</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-comm">*&nbsp;a&nbsp;series&nbsp;of&nbsp;x-y&nbsp;data&nbsp;points&nbsp;using&nbsp;least&nbsp;squares.</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-comm">*</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-comm">*&nbsp;@param&nbsp;$X&nbsp;array&nbsp;x&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-comm">*&nbsp;@param&nbsp;$Y&nbsp;array&nbsp;y&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-comm">*&nbsp;@param&nbsp;$n&nbsp;int&nbsp;order&nbsp;of&nbsp;polynomial&nbsp;to&nbsp;be&nbsp;used&nbsp;for&nbsp;fitting</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-comm">*&nbsp;@returns&nbsp;array&nbsp;$coeffs&nbsp;of&nbsp;polynomial&nbsp;coefficients</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-comm">*&nbsp;Pre-Conditions:&nbsp;the&nbsp;system&nbsp;is&nbsp;not&nbsp;underdetermined:&nbsp;sizeof($X)&nbsp;&gt;&nbsp;$n+1</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-comm">*/</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-key">function&nbsp;</span><a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionpolyfit">polyfit</a><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">,&nbsp;</span><span class="src-var">$Y</span><span class="src-sym">,&nbsp;</span><span class="src-var">$n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a19"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a20"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j&nbsp;</span>&lt;=&nbsp;<span class="src-var">$n</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a21"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$j</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a22"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$Y</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$B</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$Y</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$matrixA&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$matrixB&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$B</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$C&nbsp;</span>=&nbsp;<span class="src-var">$matrixA</span><span class="src-sym">-&gt;</span><span class="src-id">solve</span><span class="src-sym">(</span><span class="src-var">$matrixB</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$C</span><span class="src-sym">-&gt;</span><span class="src-id">getMatrix</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$n</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a28"></a><span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a29"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a30"></a><span class="src-key">function&nbsp;</span><a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionprintpoly">printpoly</a><span class="src-sym">(&nbsp;</span><span class="src-var">$C&nbsp;</span>=&nbsp;<span class="src-id">null&nbsp;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-var">$C</span><span class="src-sym">-&gt;</span><span class="src-id">m&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&gt;=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span>--<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-var">$C</span><span class="src-sym">-&gt;</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-var">$i</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$r</span><span class="src-sym">)&nbsp;</span>&lt;=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-num">10</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">9</span><span class="src-sym">)&nbsp;)</span></div></li> +<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$r&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>==&nbsp;<span class="src-var">$C</span><span class="src-sym">-&gt;</span><span class="src-id">m&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-var">$r&nbsp;</span>.&nbsp;<span class="src-str">&quot;</span><span class="src-str">x&lt;sup&gt;<span class="src-var">$i</span>&lt;/sup&gt;</span><span class="src-str">&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$C</span><span class="src-sym">-&gt;</span><span class="src-id">m&nbsp;</span>-&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-str">&quot;&nbsp;+&nbsp;&quot;&nbsp;</span>.&nbsp;<span class="src-var">$r&nbsp;</span>.&nbsp;<span class="src-str">&quot;</span><span class="src-str">x&lt;sup&gt;<span class="src-var">$i</span>&lt;/sup&gt;</span><span class="src-str">&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-str">&quot;&nbsp;+&nbsp;&quot;&nbsp;</span>.&nbsp;<span class="src-var">$r</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a42"></a><span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a43"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a44"></a><span class="src-var">$X&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">2</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">,</span><span class="src-num">4</span><span class="src-sym">,</span><span class="src-num">5</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a45"></a><span class="src-var">$Y&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">4</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">,</span><span class="src-num">12</span><span class="src-sym">,</span><span class="src-num">67</span><span class="src-sym">,</span><span class="src-num">228</span><span class="src-sym">,&nbsp;</span><span class="src-num">579</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a46"></a><span class="src-var">$points&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">,&nbsp;</span><span class="src-var">$Y</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a47"></a><span class="src-var">$points</span><span class="src-sym">-&gt;</span><span class="src-id">toHTML</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a48"></a><a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionprintpoly">printpoly</a><span class="src-sym">(</span><a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionpolyfit">polyfit</a><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">,&nbsp;</span><span class="src-var">$Y</span><span class="src-sym">,&nbsp;</span><span class="src-num">4</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a49"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a50"></a>echo&nbsp;<span class="src-str">'&lt;hr&nbsp;/&gt;'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a51"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a52"></a><span class="src-var">$X&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">2</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">,</span><span class="src-num">4</span><span class="src-sym">,</span><span class="src-num">5</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a53"></a><span class="src-var">$Y&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">2</span><span class="src-sym">,</span><span class="src-num">5</span><span class="src-sym">,</span><span class="src-num">10</span><span class="src-sym">,</span><span class="src-num">17</span><span class="src-sym">,&nbsp;</span><span class="src-num">26</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a54"></a><span class="src-var">$points&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">,&nbsp;</span><span class="src-var">$Y</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a55"></a><span class="src-var">$points</span><span class="src-sym">-&gt;</span><span class="src-id">toHTML</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a56"></a><a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionprintpoly">printpoly</a><span class="src-sym">(</span><a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionpolyfit">polyfit</a><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">,&nbsp;</span><span class="src-var">$Y</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a57"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a58"></a>echo&nbsp;<span class="src-str">'&lt;hr&nbsp;/&gt;'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a59"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a60"></a><span class="src-var">$X&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">2</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">,</span><span class="src-num">4</span><span class="src-sym">,</span><span class="src-num">5</span><span class="src-sym">,</span><span class="src-num">6</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a61"></a><span class="src-var">$Y&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span>-<span class="src-num">90</span><span class="src-sym">,</span>-<span class="src-num">104</span><span class="src-sym">,</span>-<span class="src-num">178</span><span class="src-sym">,</span>-<span class="src-num">252</span><span class="src-sym">,</span>-<span class="src-num">26</span><span class="src-sym">,&nbsp;</span><span class="src-num">1160</span><span class="src-sym">,&nbsp;</span><span class="src-num">4446</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a62"></a><span class="src-var">$points&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">,&nbsp;</span><span class="src-var">$Y</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a63"></a><span class="src-var">$points</span><span class="src-sym">-&gt;</span><span class="src-id">toHTML</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a64"></a><a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionprintpoly">printpoly</a><span class="src-sym">(</span><a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionpolyfit">polyfit</a><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">,&nbsp;</span><span class="src-var">$Y</span><span class="src-sym">,&nbsp;</span><span class="src-num">5</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a65"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a66"></a>echo&nbsp;<span class="src-str">'&lt;hr&nbsp;/&gt;'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a67"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a68"></a><span class="src-var">$X&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">2</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">,</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a69"></a><span class="src-var">$Y&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><a href="http://www.php.net/mt_rand">mt_rand</a><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">10</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/mt_rand">mt_rand</a><span class="src-sym">(</span><span class="src-num">40</span><span class="src-sym">,&nbsp;</span><span class="src-num">80</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/mt_rand">mt_rand</a><span class="src-sym">(</span><span class="src-num">240</span><span class="src-sym">,&nbsp;</span><span class="src-num">400</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/mt_rand">mt_rand</a><span class="src-sym">(</span><span class="src-num">1800</span><span class="src-sym">,&nbsp;</span><span class="src-num">2215</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/mt_rand">mt_rand</a><span class="src-sym">(</span><span class="src-num">8000</span><span class="src-sym">,&nbsp;</span><span class="src-num">9000</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a70"></a><span class="src-var">$points&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">,&nbsp;</span><span class="src-var">$Y</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a71"></a><span class="src-var">$points</span><span class="src-sym">-&gt;</span><span class="src-id">toHTML</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a72"></a><a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionprintpoly">printpoly</a><span class="src-sym">(</span><a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionpolyfit">polyfit</a><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">,&nbsp;</span><span class="src-var">$Y</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a73"></a><span class="src-php">?&gt;</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:28 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html new file mode 100644 index 0000000..531cc37 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAexamplestile.php.html @@ -0,0 +1,156 @@ +<html> +<head> +<title>File Source for tile.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file tile.php</h1> +<p>Documentation is available at <a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html">tile.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-inc">include&nbsp;</span><span class="src-str">&quot;../Matrix.php&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-doc">*&nbsp;Tiling&nbsp;of&nbsp;matrix&nbsp;X&nbsp;in&nbsp;[rowWise&nbsp;by&nbsp;colWise]&nbsp;dimension.&nbsp;Tiling</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-doc">*&nbsp;creates&nbsp;a&nbsp;larger&nbsp;matrix&nbsp;than&nbsp;the&nbsp;original&nbsp;data&nbsp;X.&nbsp;Example,&nbsp;if</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-doc">*&nbsp;X&nbsp;is&nbsp;to&nbsp;be&nbsp;tiled&nbsp;in&nbsp;a&nbsp;[3&nbsp;x&nbsp;4]&nbsp;manner,&nbsp;then:</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-doc">*</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-doc">*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-doc">*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;X&nbsp;&nbsp;X&nbsp;&nbsp;X&nbsp;&nbsp;X&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-doc">*&nbsp;C&nbsp;=&nbsp;|&nbsp;X&nbsp;&nbsp;X&nbsp;&nbsp;X&nbsp;&nbsp;X&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-doc">*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;X&nbsp;&nbsp;X&nbsp;&nbsp;X&nbsp;&nbsp;X&nbsp;|</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-doc">*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-doc">*</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">X&nbsp;</span><span class="src-doc">Matrix</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">rowWise&nbsp;</span><span class="src-doc">int</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">colWise&nbsp;</span><span class="src-doc">int</span></div></li> +<li><div class="src-line"><a name="a19"></a><span class="src-doc">*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">Matrix&nbsp;</span></div></li> +<li><div class="src-line"><a name="a20"></a><span class="src-doc">*/</span></div></li> +<li><div class="src-line"><a name="a21"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a22"></a><span class="src-key">function&nbsp;</span><a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html#functiontile">tile</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$X</span><span class="src-sym">,&nbsp;</span><span class="src-var">$rowWise</span><span class="src-sym">,&nbsp;</span><span class="src-var">$colWise</span><span class="src-sym">)</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a23"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;<span class="src-var">$xArray&nbsp;</span>=&nbsp;<span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">getArray</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;<a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$xArray</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a26"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;<span class="src-var">$countRow&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;<span class="src-var">$countColumn&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a29"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;<span class="src-var">$m&nbsp;</span>=&nbsp;<span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;<span class="src-var">$n&nbsp;</span>=&nbsp;<span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(&nbsp;</span><span class="src-var">$rowWise</span>&lt;<span class="src-num">1&nbsp;</span>||&nbsp;<span class="src-var">$colWise</span>&lt;<span class="src-num">1&nbsp;</span><span class="src-sym">)</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">die</span><span class="src-sym">(</span><span class="src-str">&quot;tile&nbsp;:&nbsp;Array&nbsp;index&nbsp;is&nbsp;out-of-bound.&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a36"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;<span class="src-var">$newRowDim&nbsp;</span>=&nbsp;<span class="src-var">$m</span>*<span class="src-var">$rowWise</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;<span class="src-var">$newColDim&nbsp;</span>=&nbsp;<span class="src-var">$n</span>*<span class="src-var">$colWise</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a39"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;<span class="src-var">$result&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a41"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0&nbsp;</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>&lt;<span class="src-var">$newRowDim</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a43"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$holder&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a45"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$j</span>=<span class="src-num">0&nbsp;</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j</span>&lt;<span class="src-var">$newColDim&nbsp;</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$j</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a47"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$holder</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$xArray</span><span class="src-sym">[</span><span class="src-var">$countRow</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$countColumn</span>++<span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a49"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;reset&nbsp;the&nbsp;column-index&nbsp;to&nbsp;zero&nbsp;to&nbsp;avoid&nbsp;reference&nbsp;to&nbsp;out-of-bound&nbsp;index&nbsp;in&nbsp;xArray[][]</span></div></li> +<li><div class="src-line"><a name="a51"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$countColumn&nbsp;</span>==&nbsp;<span class="src-var">$n</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{&nbsp;</span><span class="src-var">$countColumn&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a53"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//&nbsp;end&nbsp;for</span></div></li> +<li><div class="src-line"><a name="a55"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;++<span class="src-var">$countRow</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a57"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;reset&nbsp;the&nbsp;row-index&nbsp;to&nbsp;zero&nbsp;to&nbsp;avoid&nbsp;reference&nbsp;to&nbsp;out-of-bound&nbsp;index&nbsp;in&nbsp;xArray[][]</span></div></li> +<li><div class="src-line"><a name="a59"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$countRow&nbsp;</span>==&nbsp;<span class="src-var">$m</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{&nbsp;</span><span class="src-var">$countRow&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a61"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$result</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$holder</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a63"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-comm">//&nbsp;end&nbsp;for</span></div></li> +<li><div class="src-line"><a name="a65"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$result</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a67"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a68"></a><span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a69"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a70"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a71"></a><span class="src-var">$X&nbsp;</span>=<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">2</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">,</span><span class="src-num">4</span><span class="src-sym">,</span><span class="src-num">5</span><span class="src-sym">,</span><span class="src-num">6</span><span class="src-sym">,</span><span class="src-num">7</span><span class="src-sym">,</span><span class="src-num">8</span><span class="src-sym">,</span><span class="src-num">9</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a72"></a><span class="src-var">$nRow&nbsp;</span>=&nbsp;<span class="src-num">3</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a73"></a><span class="src-var">$nCol&nbsp;</span>=&nbsp;<span class="src-num">3</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a74"></a><span class="src-var">$tiled_matrix&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html#functiontile">tile</a><span class="src-sym">(</span><span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$nRow</span><span class="src-sym">,&nbsp;</span><span class="src-var">$nCol</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a75"></a>echo&nbsp;<span class="src-str">&quot;&lt;pre&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a76"></a><a href="http://www.php.net/print_r">print_r</a><span class="src-sym">(</span><span class="src-var">$tiled_matrix</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a77"></a>echo&nbsp;<span class="src-str">&quot;&lt;/pre&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a78"></a><span class="src-php">?&gt;</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:12 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html new file mode 100644 index 0000000..b3ed3c3 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedJAMAtestsTestMatrix.php.html @@ -0,0 +1,493 @@ +<html> +<head> +<title>File Source for TestMatrix.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file TestMatrix.php</h1> +<p>Documentation is available at <a href="../PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html">TestMatrix.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-inc">require_once&nbsp;</span><span class="src-str">&quot;../Matrix.php&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-key">class&nbsp;</span><a href="../PHPExcel/TestMatrix.html">TestMatrix</a>&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a6"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a7"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/TestMatrix.html#methodTestMatrix">TestMatrix</a><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a8"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a9"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;define&nbsp;test&nbsp;variables</span></div></li> +<li><div class="src-line"><a name="a10"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a11"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a12"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$warningCount&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a13"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$columnwise&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">2.</span><span class="src-sym">,</span><span class="src-num">3.</span><span class="src-sym">,</span><span class="src-num">4.</span><span class="src-sym">,</span><span class="src-num">5.</span><span class="src-sym">,</span><span class="src-num">6.</span><span class="src-sym">,</span><span class="src-num">7.</span><span class="src-sym">,</span><span class="src-num">8.</span><span class="src-sym">,</span><span class="src-num">9.</span><span class="src-sym">,</span><span class="src-num">10.</span><span class="src-sym">,</span><span class="src-num">11.</span><span class="src-sym">,</span><span class="src-num">12.</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a14"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rowwise&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">4.</span><span class="src-sym">,</span><span class="src-num">7.</span><span class="src-sym">,</span><span class="src-num">10.</span><span class="src-sym">,</span><span class="src-num">2.</span><span class="src-sym">,</span><span class="src-num">5.</span><span class="src-sym">,</span><span class="src-num">8.</span><span class="src-sym">,</span><span class="src-num">11.</span><span class="src-sym">,</span><span class="src-num">3.</span><span class="src-sym">,</span><span class="src-num">6.</span><span class="src-sym">,</span><span class="src-num">9.</span><span class="src-sym">,</span><span class="src-num">12.</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a15"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$avals&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">4.</span><span class="src-sym">,</span><span class="src-num">7.</span><span class="src-sym">,</span><span class="src-num">10.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">2.</span><span class="src-sym">,</span><span class="src-num">5.</span><span class="src-sym">,</span><span class="src-num">8.</span><span class="src-sym">,</span><span class="src-num">11.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">3.</span><span class="src-sym">,</span><span class="src-num">6.</span><span class="src-sym">,</span><span class="src-num">9.</span><span class="src-sym">,</span><span class="src-num">12.</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a16"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rankdef&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$avals</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a17"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tvals&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">2.</span><span class="src-sym">,</span><span class="src-num">3.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">4.</span><span class="src-sym">,</span><span class="src-num">5.</span><span class="src-sym">,</span><span class="src-num">6.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">7.</span><span class="src-sym">,</span><span class="src-num">8.</span><span class="src-sym">,</span><span class="src-num">9.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">10.</span><span class="src-sym">,</span><span class="src-num">11.</span><span class="src-sym">,</span><span class="src-num">12.</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a18"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$subavals&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">5.</span><span class="src-sym">,</span><span class="src-num">8.</span><span class="src-sym">,</span><span class="src-num">11.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">6.</span><span class="src-sym">,</span><span class="src-num">9.</span><span class="src-sym">,</span><span class="src-num">12.</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a19"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rvals&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">4.</span><span class="src-sym">,</span><span class="src-num">7.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">2.</span><span class="src-sym">,</span><span class="src-num">5.</span><span class="src-sym">,</span><span class="src-num">8.</span><span class="src-sym">,</span><span class="src-num">11.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">3.</span><span class="src-sym">,</span><span class="src-num">6.</span><span class="src-sym">,</span><span class="src-num">9.</span><span class="src-sym">,</span><span class="src-num">12.</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a20"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$pvals&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">1.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">2.</span><span class="src-sym">,</span><span class="src-num">3.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">3.</span><span class="src-sym">,</span><span class="src-num">6.</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a21"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ivals&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a22"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$evals&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">2.e-7</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">0.</span><span class="src-sym">,</span>-<span class="src-num">2.e-7</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">1.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">,</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a23"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$square&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">166.</span><span class="src-sym">,</span><span class="src-num">188.</span><span class="src-sym">,</span><span class="src-num">210.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">188.</span><span class="src-sym">,</span><span class="src-num">214.</span><span class="src-sym">,</span><span class="src-num">240.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">210.</span><span class="src-sym">,</span><span class="src-num">240.</span><span class="src-sym">,</span><span class="src-num">270.</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a24"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sqSolution&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">13.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">15.</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a25"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$condmat&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1.</span><span class="src-sym">,</span><span class="src-num">3.</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">7.</span><span class="src-sym">,</span><span class="src-num">9.</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a26"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rows&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">3</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$cols&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">4</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$invalidID&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">5</span><span class="src-sym">;&nbsp;</span><span class="src-comm">/*&nbsp;should&nbsp;trigger&nbsp;bad&nbsp;shape&nbsp;for&nbsp;construction&nbsp;with&nbsp;val&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$raggedr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-comm">/*&nbsp;(raggedr,raggedc)&nbsp;should&nbsp;be&nbsp;out&nbsp;of&nbsp;bounds&nbsp;in&nbsp;ragged&nbsp;array&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$raggedc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">4</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$validID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">3</span><span class="src-sym">;&nbsp;</span><span class="src-comm">/*&nbsp;leading&nbsp;dimension&nbsp;of&nbsp;intended&nbsp;test&nbsp;Matrices&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nonconformld&nbsp;</span>=&nbsp;<span class="src-num">4</span><span class="src-sym">;&nbsp;</span><span class="src-comm">/*&nbsp;leading&nbsp;dimension&nbsp;which&nbsp;is&nbsp;valid,&nbsp;but&nbsp;nonconforming&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ib&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-comm">/*&nbsp;index&nbsp;ranges&nbsp;for&nbsp;sub&nbsp;Matrix&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ie&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$jb&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$je&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">3</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rowindexset&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$badrowindexset&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$columnindexset&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">2</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$badcolumnindexset&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">2</span><span class="src-sym">,</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$columnsummax&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">33.</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$rowsummax&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">30.</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sumofdiagonals&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">15</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$sumofsquares&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-num">650</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a45"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a46"></a>&nbsp;&nbsp;&nbsp;&nbsp;/**</div></li> +<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Test&nbsp;matrix&nbsp;methods</div></li> +<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;&nbsp;&nbsp;*/</div></li> +<li><div class="src-line"><a name="a49"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;&nbsp;&nbsp;/**</div></li> +<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Constructors&nbsp;and&nbsp;constructor-like&nbsp;methods:</div></li> +<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;&nbsp;&nbsp;*</div></li> +<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;Matrix(double[],&nbsp;int)</div></li> +<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;Matrix(double[][])</div></li> +<li><div class="src-line"><a name="a55"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;Matrix(int,&nbsp;int)</div></li> +<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;Matrix(int,&nbsp;int,&nbsp;double)</div></li> +<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;Matrix(int,&nbsp;int,&nbsp;double[][])</div></li> +<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;constructWithCopy(double[][])</div></li> +<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;random(int,int)</div></li> +<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;identity(int)</div></li> +<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;&nbsp;&nbsp;*/</div></li> +<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-str">&quot;&lt;p&gt;Testing&nbsp;constructors&nbsp;and&nbsp;constructor-like&nbsp;methods...&lt;/p&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a63"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$columnwise</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$A&nbsp;</span>instanceof&nbsp;<span class="src-id">Matrix</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;Column-packed&nbsp;constructor...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}&nbsp;</span><span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a68"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Column-packed&nbsp;constructor...&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Unable&nbsp;to&nbsp;construct&nbsp;Matrix&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a69"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$T&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$tvals</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$T&nbsp;</span>instanceof&nbsp;<span class="src-id">Matrix</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;2D&nbsp;array&nbsp;constructor...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;2D&nbsp;array&nbsp;constructor...&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Unable&nbsp;to&nbsp;construct&nbsp;Matrix&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a75"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$columnwise</span><span class="src-sym">,&nbsp;</span><span class="src-var">$validID</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$B&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$avals</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tmp&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$avals</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a80"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$C&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">minus</span><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a81"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$avals</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$tmp</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a82"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$B&nbsp;</span>=&nbsp;<span class="src-id">Matrix</span><span class="src-sym">::</span><span class="src-id">constructWithCopy</span><span class="src-sym">(</span><span class="src-var">$avals</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a83"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$tmp&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a84"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$avals</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0.0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;&nbsp;&nbsp;/**&nbsp;check&nbsp;that&nbsp;constructWithCopy&nbsp;behaves&nbsp;properly&nbsp;**/</div></li> +<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;(&nbsp;</span><span class="src-var">$tmp&nbsp;</span>-&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">get</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">)&nbsp;)&nbsp;</span>!=&nbsp;<span class="src-num">0.0&nbsp;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a87"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,</span><span class="src-str">&quot;constructWithCopy...&nbsp;&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;copy&nbsp;not&nbsp;effected...&nbsp;data&nbsp;visible&nbsp;outside&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;constructWithCopy...&nbsp;&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a90"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$I&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$ivals</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$I</span><span class="src-sym">,</span><span class="src-id">Matrix</span><span class="src-sym">::</span><span class="src-id">identity</span><span class="src-sym">(</span><span class="src-num">3</span><span class="src-sym">,</span><span class="src-num">4</span><span class="src-sym">))&nbsp;)</span></div></li> +<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;identity...&nbsp;&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a95"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,</span><span class="src-str">&quot;identity...&nbsp;&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;identity&nbsp;Matrix&nbsp;not&nbsp;successfully&nbsp;created&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a96"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;&nbsp;&nbsp;/**</div></li> +<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Access&nbsp;Methods:</div></li> +<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;&nbsp;&nbsp;*</div></li> +<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;getColumnDimension()</div></li> +<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;getRowDimension()</div></li> +<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;getArray()</div></li> +<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;getArrayCopy()</div></li> +<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;getColumnPackedCopy()</div></li> +<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;getRowPackedCopy()</div></li> +<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;get(int,int)</div></li> +<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;getMatrix(int,int,int,int)</div></li> +<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;getMatrix(int,int,int[])</div></li> +<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;getMatrix(int[],int,int)</div></li> +<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;getMatrix(int[],int[])</div></li> +<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;set(int,int,double)</div></li> +<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;setMatrix(int,int,int,int,Matrix)</div></li> +<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;setMatrix(int,int,int[],Matrix)</div></li> +<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;setMatrix(int[],int,int,Matrix)</div></li> +<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;setMatrix(int[],int[],Matrix)</div></li> +<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;&nbsp;&nbsp;*/</div></li> +<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;<span class="src-str">&quot;&lt;p&gt;Testing&nbsp;access&nbsp;methods...&lt;/p&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a118"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$B&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$avals</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-var">$rows</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;getRowDimension...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;getRowDimension...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a124"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-var">$cols</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;getColumnDimension...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;getColumnDimension...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a129"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$barray&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getArray</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckArrays">checkArrays</a><span class="src-sym">(</span><span class="src-var">$barray</span><span class="src-sym">,&nbsp;</span><span class="src-var">$avals</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;getArray...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;getArray...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a135"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$bpacked&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnPackedCopy</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckArrays">checkArrays</a><span class="src-sym">(</span><span class="src-var">$bpacked</span><span class="src-sym">,&nbsp;</span><span class="src-var">$columnwise</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;getColumnPackedCopy...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;getColumnPackedCopy...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a141"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$bpacked&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getRowPackedCopy</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckArrays">checkArrays</a><span class="src-sym">(</span><span class="src-var">$bpacked</span><span class="src-sym">,&nbsp;</span><span class="src-var">$rowwise</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;getRowPackedCopy...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;getRowPackedCopy...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a147"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;&nbsp;&nbsp;/**</div></li> +<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Array-like&nbsp;methods:</div></li> +<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;minus</div></li> +<li><div class="src-line"><a name="a151"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;minusEquals</div></li> +<li><div class="src-line"><a name="a152"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;plus</div></li> +<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;plusEquals</div></li> +<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;arrayLeftDivide</div></li> +<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;arrayLeftDivideEquals</div></li> +<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;arrayRightDivide</div></li> +<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;arrayRightDivideEquals</div></li> +<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;arrayTimes</div></li> +<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;arrayTimesEquals</div></li> +<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;uminus</div></li> +<li><div class="src-line"><a name="a161"></a>&nbsp;&nbsp;&nbsp;&nbsp;*/</div></li> +<li><div class="src-line"><a name="a162"></a>&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;<span class="src-str">&quot;&lt;p&gt;Testing&nbsp;array-like&nbsp;methods...&lt;/p&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a163"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a164"></a>&nbsp;&nbsp;&nbsp;&nbsp;/**</div></li> +<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;I/O&nbsp;methods:</div></li> +<li><div class="src-line"><a name="a166"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;read</div></li> +<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;print</div></li> +<li><div class="src-line"><a name="a168"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;serializable:</div></li> +<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;writeObject</div></li> +<li><div class="src-line"><a name="a170"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;&nbsp;readObject</div></li> +<li><div class="src-line"><a name="a171"></a>&nbsp;&nbsp;&nbsp;&nbsp;*/</div></li> +<li><div class="src-line"><a name="a172"></a>&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;<span class="src-str">&quot;&lt;p&gt;Testing&nbsp;I/O&nbsp;methods...&lt;/p&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a173"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a174"></a>&nbsp;&nbsp;&nbsp;&nbsp;/**</div></li> +<li><div class="src-line"><a name="a175"></a>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Test&nbsp;linear&nbsp;algebra&nbsp;methods</div></li> +<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;&nbsp;&nbsp;*/</div></li> +<li><div class="src-line"><a name="a177"></a>&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-str">&quot;&lt;p&gt;Testing&nbsp;linear&nbsp;algebra&nbsp;methods...&lt;p&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a178"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$columnwise</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">transpose</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$T</span><span class="src-sym">)&nbsp;)</span></div></li> +<li><div class="src-line"><a name="a181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;Transpose&nbsp;check...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a182"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Transpose&nbsp;check...&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Matrices&nbsp;are&nbsp;not&nbsp;equal&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a184"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a185"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckScalars">checkScalars</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">norm1</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$columnsummax</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a186"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;Maximum&nbsp;column&nbsp;sum...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a187"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a188"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Maximum&nbsp;column&nbsp;sum...&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Incorrect:&nbsp;&quot;&nbsp;</span>.&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">norm1</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>.&nbsp;<span class="src-str">&quot;&nbsp;!=&nbsp;&quot;&nbsp;</span>.&nbsp;<span class="src-var">$columnsummax</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a189"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a190"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckScalars">checkScalars</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">normInf</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$rowsummax</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;Maximum&nbsp;row&nbsp;sum...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a192"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Maximum&nbsp;row&nbsp;sum...&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Incorrect:&nbsp;&quot;&nbsp;</span>.&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">normInf</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>.&nbsp;<span class="src-str">&quot;&nbsp;!=&nbsp;&quot;&nbsp;</span>.&nbsp;<span class="src-var">$rowsummax&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a194"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a195"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckScalars">checkScalars</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">normF</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$sumofsquares</span><span class="src-sym">)))</span></div></li> +<li><div class="src-line"><a name="a196"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;Frobenius&nbsp;norm...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a197"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Frobenius&nbsp;norm...&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Incorrect:&quot;&nbsp;</span>.&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">normF</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>.&nbsp;<span class="src-str">&quot;&nbsp;!=&nbsp;&quot;&nbsp;</span>.&nbsp;<a href="http://www.php.net/sqrt">sqrt</a><span class="src-sym">(</span><span class="src-var">$sumofsquares</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a199"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckScalars">checkScalars</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">trace</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$sumofdiagonals</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a201"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;Matrix&nbsp;trace...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a202"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a203"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Matrix&nbsp;trace...&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Incorrect:&nbsp;&quot;&nbsp;</span>.&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">trace</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>.&nbsp;<span class="src-str">&quot;&nbsp;!=&nbsp;&quot;&nbsp;</span>.&nbsp;<span class="src-var">$sumofdiagonals</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a204"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a205"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$B&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getMatrix</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a206"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(&nbsp;</span><span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">det</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-num">0&nbsp;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a207"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;Matrix&nbsp;determinant...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a208"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a209"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Matrix&nbsp;determinant...&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Incorrect:&nbsp;&quot;&nbsp;</span>.&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">det</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>.&nbsp;<span class="src-str">&quot;&nbsp;!=&nbsp;&quot;&nbsp;</span>.&nbsp;<span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a210"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$columnwise</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$SQ&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$square</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a213"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$SQ</span><span class="src-sym">,&nbsp;</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">transpose</span><span class="src-sym">(</span><span class="src-sym">))))</span></div></li> +<li><div class="src-line"><a name="a214"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;times(Matrix)...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a215"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a216"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;times(Matrix)...&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Unable&nbsp;to&nbsp;multiply&nbsp;matrices&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a217"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$SQ</span><span class="src-sym">-&gt;</span><span class="src-id">toHTML</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a218"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$AT</span><span class="src-sym">-&gt;</span><span class="src-id">toHTML</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a219"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a220"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$columnwise</span><span class="src-sym">,&nbsp;</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a222"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a223"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$QR&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">qr</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a224"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$R&nbsp;</span>=&nbsp;<span class="src-var">$QR</span><span class="src-sym">-&gt;</span><span class="src-id">getR</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a225"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$Q&nbsp;</span>=&nbsp;<span class="src-var">$QR</span><span class="src-sym">-&gt;</span><span class="src-id">getQ</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a226"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">,&nbsp;</span><span class="src-var">$Q</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$R</span><span class="src-sym">)))</span></div></li> +<li><div class="src-line"><a name="a227"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;QRDecomposition...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a228"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a229"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,</span><span class="src-str">&quot;QRDecomposition...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;incorrect&nbsp;qr&nbsp;decomposition&nbsp;calculation&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a230"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a231"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$columnwise</span><span class="src-sym">,&nbsp;</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a232"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$SVD&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">svd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a233"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$U&nbsp;</span>=&nbsp;<span class="src-var">$SVD</span><span class="src-sym">-&gt;</span><span class="src-id">getU</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a234"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$S&nbsp;</span>=&nbsp;<span class="src-var">$SVD</span><span class="src-sym">-&gt;</span><span class="src-id">getS</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a235"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$V&nbsp;</span>=&nbsp;<span class="src-var">$SVD</span><span class="src-sym">-&gt;</span><span class="src-id">getV</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a236"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">,&nbsp;</span><span class="src-var">$U</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$S</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$V</span><span class="src-sym">-&gt;</span><span class="src-id">transpose</span><span class="src-sym">(</span><span class="src-sym">)))))</span></div></li> +<li><div class="src-line"><a name="a237"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;SingularValueDecomposition...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a238"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,</span><span class="src-str">&quot;SingularValueDecomposition...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;incorrect&nbsp;singular&nbsp;value&nbsp;decomposition&nbsp;calculation&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a240"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a241"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$n&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a242"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getMatrix</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a243"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">set</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">0.</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a244"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a245"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$LU&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">lu</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a246"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$L&nbsp;&nbsp;</span>=&nbsp;<span class="src-var">$LU</span><span class="src-sym">-&gt;</span><span class="src-id">getL</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a247"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">getMatrix</span><span class="src-sym">(</span><span class="src-var">$LU</span><span class="src-sym">-&gt;</span><span class="src-id">getPivot</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-var">$n</span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$L</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$LU</span><span class="src-sym">-&gt;</span><span class="src-id">getU</span><span class="src-sym">(</span><span class="src-sym">)))&nbsp;)</span></div></li> +<li><div class="src-line"><a name="a248"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;LUDecomposition...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a249"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a250"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,</span><span class="src-str">&quot;LUDecomposition...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;incorrect&nbsp;LU&nbsp;decomposition&nbsp;calculation&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a251"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a252"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">inverse</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a253"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-id">Matrix</span><span class="src-sym">::</span><span class="src-id">identity</span><span class="src-sym">(</span><span class="src-num">3</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">))&nbsp;)</span></div></li> +<li><div class="src-line"><a name="a254"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;inverse()...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a256"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;inverse()...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;incorrect&nbsp;inverse&nbsp;calculation&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a257"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a258"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$DEF&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$rankdef</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a259"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckScalars">checkScalars</a><span class="src-sym">(</span><span class="src-var">$DEF</span><span class="src-sym">-&gt;</span><span class="src-id">rank</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/min">min</a><span class="src-sym">(</span><span class="src-var">$DEF</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$DEF</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">))</span>-<span class="src-num">1</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a260"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;Rank...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a261"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a262"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-str">&quot;Rank...&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;incorrect&nbsp;rank&nbsp;calculation&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a263"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a264"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$B&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$condmat</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a265"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$SVD&nbsp;</span>=&nbsp;<span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">svd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a266"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$singularvalues&nbsp;</span>=&nbsp;<span class="src-var">$SVD</span><span class="src-sym">-&gt;</span><span class="src-id">getSingularValues</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a267"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckScalars">checkScalars</a><span class="src-sym">(</span><span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">cond</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$singularvalues</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span>/<span class="src-var">$singularvalues</span><span class="src-sym">[</span><a href="http://www.php.net/min">min</a><span class="src-sym">(</span><span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$B</span><span class="src-sym">-&gt;</span><span class="src-id">getColumnDimension</span><span class="src-sym">(</span><span class="src-sym">))</span>-<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a268"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;Condition&nbsp;number...&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a269"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a270"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-str">&quot;Condition&nbsp;number...&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;incorrect&nbsp;condition&nbsp;number&nbsp;calculation&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a271"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a272"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$SUB&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$subavals</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a273"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$O&nbsp;&nbsp;&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$SUB</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">1.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a274"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$SOL&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$sqSolution</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a275"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$SQ&nbsp;</span>=&nbsp;<span class="src-var">$SUB</span><span class="src-sym">-&gt;</span><span class="src-id">getMatrix</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-var">$SUB</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)</span>-<span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-var">$SUB</span><span class="src-sym">-&gt;</span><span class="src-id">getRowDimension</span><span class="src-sym">(</span><span class="src-sym">)</span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a276"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$SQ</span><span class="src-sym">-&gt;</span><span class="src-id">solve</span><span class="src-sym">(</span><span class="src-var">$SOL</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-var">$O</span><span class="src-sym">)&nbsp;)</span></div></li> +<li><div class="src-line"><a name="a277"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;solve()...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a278"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a279"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,</span><span class="src-str">&quot;solve()...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;incorrect&nbsp;lu&nbsp;solve&nbsp;calculation&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a280"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a281"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$pvals</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a282"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$Chol&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">chol</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a283"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$L&nbsp;</span>=&nbsp;<span class="src-var">$Chol</span><span class="src-sym">-&gt;</span><span class="src-id">getL</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a284"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">,&nbsp;</span><span class="src-var">$L</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$L</span><span class="src-sym">-&gt;</span><span class="src-id">transpose</span><span class="src-sym">(</span><span class="src-sym">)))&nbsp;)</span></div></li> +<li><div class="src-line"><a name="a285"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;CholeskyDecomposition...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a286"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a287"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,</span><span class="src-str">&quot;CholeskyDecomposition...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;incorrect&nbsp;Cholesky&nbsp;decomposition&nbsp;calculation&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a288"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a289"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$X&nbsp;</span>=&nbsp;<span class="src-var">$Chol</span><span class="src-sym">-&gt;</span><span class="src-id">solve</span><span class="src-sym">(</span><span class="src-id">Matrix</span><span class="src-sym">::</span><span class="src-id">identity</span><span class="src-sym">(</span><span class="src-num">3</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a290"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">::</span><span class="src-id">identity</span><span class="src-sym">(</span><span class="src-num">3</span><span class="src-sym">,</span><span class="src-num">3</span><span class="src-sym">))&nbsp;)</span></div></li> +<li><div class="src-line"><a name="a291"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;CholeskyDecomposition&nbsp;solve()...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a292"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a293"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,</span><span class="src-str">&quot;CholeskyDecomposition&nbsp;solve()...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;incorrect&nbsp;Choleskydecomposition&nbsp;solve&nbsp;calculation&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a294"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a295"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$Eig&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">eig</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a296"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$D&nbsp;</span>=&nbsp;<span class="src-var">$Eig</span><span class="src-sym">-&gt;</span><span class="src-id">getD</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a297"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$V&nbsp;</span>=&nbsp;<span class="src-var">$Eig</span><span class="src-sym">-&gt;</span><span class="src-id">getV</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a298"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$V</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-var">$V</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$D</span><span class="src-sym">))&nbsp;)</span></div></li> +<li><div class="src-line"><a name="a299"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;EigenvalueDecomposition&nbsp;(symmetric)...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a300"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a301"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,</span><span class="src-str">&quot;EigenvalueDecomposition&nbsp;(symmetric)...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;incorrect&nbsp;symmetric&nbsp;Eigenvalue&nbsp;decomposition&nbsp;calculation&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a302"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a303"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$evals</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a304"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$Eig&nbsp;</span>=&nbsp;<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">eig</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a305"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$D&nbsp;</span>=&nbsp;<span class="src-var">$Eig</span><span class="src-sym">-&gt;</span><span class="src-id">getD</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a306"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$V&nbsp;</span>=&nbsp;<span class="src-var">$Eig</span><span class="src-sym">-&gt;</span><span class="src-id">getV</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a307"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$V</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-var">$V</span><span class="src-sym">-&gt;</span><span class="src-id">times</span><span class="src-sym">(</span><span class="src-var">$D</span><span class="src-sym">))&nbsp;)</span></div></li> +<li><div class="src-line"><a name="a308"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-str">&quot;EigenvalueDecomposition&nbsp;(nonsymmetric)...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a309"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a310"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$errorCount&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$errorCount</span><span class="src-sym">,</span><span class="src-str">&quot;EigenvalueDecomposition&nbsp;(nonsymmetric)...&quot;</span><span class="src-sym">,</span><span class="src-str">&quot;incorrect&nbsp;nonsymmetric&nbsp;Eigenvalue&nbsp;decomposition&nbsp;calculation&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a311"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a312"></a>&nbsp;&nbsp;&nbsp;&nbsp;print<span class="src-sym">(</span><span class="src-str">&quot;</span><span class="src-str">&lt;b&gt;{<span class="src-var">$errorCount</span><span class="src-sym">}</span>&nbsp;total&nbsp;errors&lt;/b&gt;.</span><span class="src-str">&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a313"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a314"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a315"></a>&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a316"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;Print&nbsp;appropriate&nbsp;messages&nbsp;for&nbsp;successful&nbsp;outcome&nbsp;try</span></div></li> +<li><div class="src-line"><a name="a317"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$s&nbsp;</span></div></li> +<li><div class="src-line"><a name="a318"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$e&nbsp;</span></div></li> +<li><div class="src-line"><a name="a319"></a><span class="src-doc">&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a320"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/TestMatrix.html#methodtry_success">try_success</a><span class="src-sym">(</span><span class="src-var">$s</span><span class="src-sym">,&nbsp;</span><span class="src-var">$e&nbsp;</span>=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a321"></a>&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;<span class="src-str">&quot;&gt;&nbsp;&quot;</span>.&nbsp;<span class="src-var">$s&nbsp;</span>.<span class="src-str">&quot;success&lt;br&nbsp;/&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a322"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$e&nbsp;</span>!=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a323"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;<span class="src-str">&quot;&gt;&nbsp;Message:&nbsp;&quot;</span>.&nbsp;<span class="src-var">$e&nbsp;</span>.<span class="src-str">&quot;&lt;br&nbsp;/&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a324"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a325"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a326"></a>&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a327"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;Print&nbsp;appropriate&nbsp;messages&nbsp;for&nbsp;unsuccessful&nbsp;outcome&nbsp;try</span></div></li> +<li><div class="src-line"><a name="a328"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc-var">$count&nbsp;</span></div></li> +<li><div class="src-line"><a name="a329"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$s&nbsp;</span></div></li> +<li><div class="src-line"><a name="a330"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$e&nbsp;</span></div></li> +<li><div class="src-line"><a name="a331"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc">incremented&nbsp;counter</span></div></li> +<li><div class="src-line"><a name="a332"></a><span class="src-doc">&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a333"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/TestMatrix.html#methodtry_failure">try_failure</a><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">,&nbsp;</span><span class="src-var">$s</span><span class="src-sym">,&nbsp;</span><span class="src-var">$e</span>=<span class="src-str">&quot;&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a334"></a>&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;<span class="src-str">&quot;&gt;&nbsp;&quot;</span>.&nbsp;<span class="src-var">$s&nbsp;</span>.<span class="src-str">&quot;***&nbsp;failure&nbsp;***&lt;br&nbsp;/&gt;&gt;&nbsp;Message:&nbsp;&quot;</span>.&nbsp;<span class="src-var">$e&nbsp;</span>.<span class="src-str">&quot;&lt;br&nbsp;/&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a335"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span>++<span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a336"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a337"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a338"></a>&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a339"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;Print&nbsp;appropriate&nbsp;messages&nbsp;for&nbsp;unsuccessful&nbsp;outcome&nbsp;try</span></div></li> +<li><div class="src-line"><a name="a340"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc-var">$count&nbsp;</span></div></li> +<li><div class="src-line"><a name="a341"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$s&nbsp;</span></div></li> +<li><div class="src-line"><a name="a342"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">string&nbsp;</span><span class="src-doc-var">$e&nbsp;</span></div></li> +<li><div class="src-line"><a name="a343"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@return&nbsp;</span><span class="src-doc-type">int&nbsp;</span><span class="src-doc">incremented&nbsp;counter</span></div></li> +<li><div class="src-line"><a name="a344"></a><span class="src-doc">&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a345"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/TestMatrix.html#methodtry_warning">try_warning</a><span class="src-sym">(</span><span class="src-var">$count</span><span class="src-sym">,&nbsp;</span><span class="src-var">$s</span><span class="src-sym">,&nbsp;</span><span class="src-var">$e</span>=<span class="src-str">&quot;&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a346"></a>&nbsp;&nbsp;&nbsp;&nbsp;print&nbsp;<span class="src-str">&quot;&gt;&nbsp;&quot;</span>.&nbsp;<span class="src-var">$s&nbsp;</span>.<span class="src-str">&quot;***&nbsp;warning&nbsp;***&lt;br&nbsp;/&gt;&gt;&nbsp;Message:&nbsp;&quot;</span>.&nbsp;<span class="src-var">$e&nbsp;</span>.<span class="src-str">&quot;&lt;br&nbsp;/&gt;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a347"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span>++<span class="src-var">$count</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a348"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a349"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a350"></a>&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a351"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;Check&nbsp;magnitude&nbsp;of&nbsp;difference&nbsp;of&nbsp;&quot;scalars&quot;.</span></div></li> +<li><div class="src-line"><a name="a352"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">float&nbsp;</span><span class="src-doc-var">$x&nbsp;</span></div></li> +<li><div class="src-line"><a name="a353"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">float&nbsp;</span><span class="src-doc-var">$y&nbsp;</span></div></li> +<li><div class="src-line"><a name="a354"></a><span class="src-doc">&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a355"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/TestMatrix.html#methodcheckScalars">checkScalars</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$y</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a356"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$eps&nbsp;</span>=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-num">2.0</span><span class="src-sym">,</span>-<span class="src-num">52.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a357"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$x&nbsp;</span>==&nbsp;<span class="src-num">0&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$y</span><span class="src-sym">)&nbsp;</span>&lt;&nbsp;<span class="src-num">10</span>*<span class="src-var">$eps</span><span class="src-sym">)&nbsp;</span><span class="src-key">return</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a358"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$y&nbsp;</span>==&nbsp;<span class="src-num">0&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)&nbsp;</span>&lt;&nbsp;<span class="src-num">10</span>*<span class="src-var">$eps</span><span class="src-sym">)&nbsp;</span><span class="src-key">return</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a359"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$x</span>-<span class="src-var">$y</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-num">10&nbsp;</span>*&nbsp;<span class="src-var">$eps&nbsp;</span>*&nbsp;<a href="http://www.php.net/max">max</a><span class="src-sym">(</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)</span><span class="src-sym">,</span><a href="http://www.php.net/abs">abs</a><span class="src-sym">(</span><span class="src-var">$y</span><span class="src-sym">)))</span></div></li> +<li><div class="src-line"><a name="a360"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a361"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a362"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a363"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a364"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a365"></a>&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a366"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;Check&nbsp;norm&nbsp;of&nbsp;difference&nbsp;of&nbsp;&quot;vectors&quot;.</span></div></li> +<li><div class="src-line"><a name="a367"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">float&nbsp;</span><span class="src-doc-var">$x[]&nbsp;</span></div></li> +<li><div class="src-line"><a name="a368"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">float&nbsp;</span><span class="src-doc-var">$y[]&nbsp;</span></div></li> +<li><div class="src-line"><a name="a369"></a><span class="src-doc">&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a370"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/TestMatrix.html#methodcheckVectors">checkVectors</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$y</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a371"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$nx&nbsp;</span>=&nbsp;<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a372"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$ny&nbsp;</span>=&nbsp;<a href="http://www.php.net/count">count</a><span class="src-sym">(</span><span class="src-var">$y</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a373"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$nx&nbsp;</span>==&nbsp;<span class="src-var">$ny</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a374"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$nx</span><span class="src-sym">;&nbsp;</span>++<span class="src-var">$i</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a375"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckScalars">checkScalars</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">,</span><span class="src-var">$y</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a376"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a377"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">die</span><span class="src-sym">(</span><span class="src-str">&quot;Attempt&nbsp;to&nbsp;compare&nbsp;vectors&nbsp;of&nbsp;different&nbsp;lengths&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a378"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a379"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a380"></a>&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a381"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;Check&nbsp;norm&nbsp;of&nbsp;difference&nbsp;of&nbsp;&quot;arrays&quot;.</span></div></li> +<li><div class="src-line"><a name="a382"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">float&nbsp;</span><span class="src-doc-var">$x[][]&nbsp;</span></div></li> +<li><div class="src-line"><a name="a383"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">float&nbsp;</span><span class="src-doc-var">$y[][]&nbsp;</span></div></li> +<li><div class="src-line"><a name="a384"></a><span class="src-doc">&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a385"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/TestMatrix.html#methodcheckArrays">checkArrays</a><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">,&nbsp;</span><span class="src-var">$y</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a386"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$x</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a387"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$B&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><span class="src-id">Matrix</span><span class="src-sym">(</span><span class="src-var">$y</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a388"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">,</span><span class="src-var">$B</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a389"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a390"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a391"></a>&nbsp;&nbsp;<span class="src-doc">/**</span></div></li> +<li><div class="src-line"><a name="a392"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;Check&nbsp;norm&nbsp;of&nbsp;difference&nbsp;of&nbsp;&quot;matrices&quot;.</span></div></li> +<li><div class="src-line"><a name="a393"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">matrix&nbsp;</span><span class="src-doc-var">$X&nbsp;</span></div></li> +<li><div class="src-line"><a name="a394"></a><span class="src-doc">&nbsp;&nbsp;*&nbsp;</span><span class="src-doc-coretag">@param&nbsp;</span><span class="src-doc-type">matrix&nbsp;</span><span class="src-doc-var">$Y&nbsp;</span></div></li> +<li><div class="src-line"><a name="a395"></a><span class="src-doc">&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a396"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/TestMatrix.html#methodcheckMatrices">checkMatrices</a><span class="src-sym">(</span><span class="src-var">$X&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">,&nbsp;</span><span class="src-var">$Y&nbsp;</span>=&nbsp;<span class="src-id">null</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a397"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(&nbsp;</span><span class="src-var">$X&nbsp;</span>==&nbsp;<span class="src-id">null&nbsp;</span>||&nbsp;<span class="src-var">$Y&nbsp;</span>==&nbsp;<span class="src-id">null&nbsp;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a398"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a399"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a400"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$eps&nbsp;</span>=&nbsp;<a href="http://www.php.net/pow">pow</a><span class="src-sym">(</span><span class="src-num">2.0</span><span class="src-sym">,</span>-<span class="src-num">52.0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a401"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">norm1</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-num">0.&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-var">$Y</span><span class="src-sym">-&gt;</span><span class="src-id">norm1</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>&lt;&nbsp;<span class="src-num">10</span>*<span class="src-var">$eps</span><span class="src-sym">)&nbsp;</span><span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a402"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$Y</span><span class="src-sym">-&gt;</span><span class="src-id">norm1</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-num">0.&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">norm1</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>&lt;&nbsp;<span class="src-num">10</span>*<span class="src-var">$eps</span><span class="src-sym">)&nbsp;</span><span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a403"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a404"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$A&nbsp;</span>=&nbsp;<span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">minus</span><span class="src-sym">(</span><span class="src-var">$Y</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a405"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a406"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">norm1</span><span class="src-sym">(</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-num">1000&nbsp;</span>*&nbsp;<span class="src-var">$eps&nbsp;</span>*&nbsp;<a href="http://www.php.net/max">max</a><span class="src-sym">(</span><span class="src-var">$X</span><span class="src-sym">-&gt;</span><span class="src-id">norm1</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,</span><span class="src-var">$Y</span><span class="src-sym">-&gt;</span><span class="src-id">norm1</span><span class="src-sym">(</span><span class="src-sym">)))</span></div></li> +<li><div class="src-line"><a name="a407"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">die</span><span class="src-sym">(</span><span class="src-str">&quot;The&nbsp;norm&nbsp;of&nbsp;(X-Y)&nbsp;is&nbsp;too&nbsp;large:&nbsp;&quot;</span>.<span class="src-var">$A</span><span class="src-sym">-&gt;</span><span class="src-id">norm1</span><span class="src-sym">(</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a408"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a409"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a410"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a411"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a412"></a><span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a413"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a414"></a><span class="src-var">$test&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><a href="../PHPExcel/TestMatrix.html#methodTestMatrix">TestMatrix</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a415"></a><span class="src-php">?&gt;</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:10 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html new file mode 100644 index 0000000..9b8b638 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/__filesource/fsource_PHPExcel__PHPExcelSharedPCLZippclzip.lib.php.html @@ -0,0 +1,5772 @@ +<html> +<head> +<title>File Source for pclzip.lib.php</title> +<link rel="stylesheet" type="text/css" href="../media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="../classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="../elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="../elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="../todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="../li_PHPExcel.html">PHPExcel</a><br /> + <a href="../li_JAMA.html">JAMA</a><br /> + <a href="../li_Math_Stats.html">Math_Stats</a><br /> + <a href="../li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="../li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="../li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="../li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="../li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="../li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="../li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="../li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="../li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="../li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="../li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="../li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="../li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="../li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="../li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="../li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="../li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="../li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="../li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="../li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="../li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1 align="center">Source for file pclzip.lib.php</h1> +<p>Documentation is available at <a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html">pclzip.lib.php</a></p> +<div class="src-code"> +<ol><li><div class="src-line"><a name="a1"></a><span class="src-php">&lt;?php</span></div></li> +<li><div class="src-line"><a name="a2"></a><span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3"></a><span class="src-comm">//&nbsp;PhpConcept&nbsp;Library&nbsp;-&nbsp;Zip&nbsp;Module&nbsp;2.8.2</span></div></li> +<li><div class="src-line"><a name="a4"></a><span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5"></a><span class="src-comm">//&nbsp;License&nbsp;GNU/LGPL&nbsp;-&nbsp;Vincent&nbsp;Blavet&nbsp;-&nbsp;August&nbsp;2009</span></div></li> +<li><div class="src-line"><a name="a6"></a><span class="src-comm">//&nbsp;http://www.phpconcept.net</span></div></li> +<li><div class="src-line"><a name="a7"></a><span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a8"></a><span class="src-comm">//</span></div></li> +<li><div class="src-line"><a name="a9"></a><span class="src-comm">//&nbsp;Presentation&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a10"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;PclZip&nbsp;is&nbsp;a&nbsp;PHP&nbsp;library&nbsp;that&nbsp;manage&nbsp;ZIP&nbsp;archives.</span></div></li> +<li><div class="src-line"><a name="a11"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;So&nbsp;far&nbsp;tests&nbsp;show&nbsp;that&nbsp;archives&nbsp;generated&nbsp;by&nbsp;PclZip&nbsp;are&nbsp;readable&nbsp;by</span></div></li> +<li><div class="src-line"><a name="a12"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;WinZip&nbsp;application&nbsp;and&nbsp;other&nbsp;tools.</span></div></li> +<li><div class="src-line"><a name="a13"></a><span class="src-comm">//</span></div></li> +<li><div class="src-line"><a name="a14"></a><span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a15"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;See&nbsp;readme.txt&nbsp;and&nbsp;http://www.phpconcept.net</span></div></li> +<li><div class="src-line"><a name="a16"></a><span class="src-comm">//</span></div></li> +<li><div class="src-line"><a name="a17"></a><span class="src-comm">//&nbsp;Warning&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a18"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;library&nbsp;and&nbsp;the&nbsp;associated&nbsp;files&nbsp;are&nbsp;non&nbsp;commercial,&nbsp;non&nbsp;professional</span></div></li> +<li><div class="src-line"><a name="a19"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;work.</span></div></li> +<li><div class="src-line"><a name="a20"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;It&nbsp;should&nbsp;not&nbsp;have&nbsp;unexpected&nbsp;results.&nbsp;However&nbsp;if&nbsp;any&nbsp;damage&nbsp;is&nbsp;caused&nbsp;by</span></div></li> +<li><div class="src-line"><a name="a21"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;this&nbsp;software&nbsp;the&nbsp;author&nbsp;can&nbsp;not&nbsp;be&nbsp;responsible.</span></div></li> +<li><div class="src-line"><a name="a22"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;use&nbsp;of&nbsp;this&nbsp;software&nbsp;is&nbsp;at&nbsp;the&nbsp;risk&nbsp;of&nbsp;the&nbsp;user.</span></div></li> +<li><div class="src-line"><a name="a23"></a><span class="src-comm">//</span></div></li> +<li><div class="src-line"><a name="a24"></a><span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a25"></a><span class="src-comm">//&nbsp;$Id:&nbsp;pclzip.lib.php,v&nbsp;1.60&nbsp;2009/09/30&nbsp;21:01:04&nbsp;vblavet&nbsp;Exp&nbsp;$</span></div></li> +<li><div class="src-line"><a name="a26"></a><span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a27"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a28"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Constants</span></div></li> +<li><div class="src-line"><a name="a29"></a>&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/defined">defined</a><span class="src-sym">(</span><span class="src-str">'PCLZIP_READ_BLOCK_SIZE'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a30"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_READ_BLOCK_SIZE'</span><span class="src-sym">,&nbsp;</span><span class="src-num">2048&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a31"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a32"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a33"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;File&nbsp;list&nbsp;separator</span></div></li> +<li><div class="src-line"><a name="a34"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;In&nbsp;version&nbsp;1.x&nbsp;of&nbsp;PclZip,&nbsp;the&nbsp;separator&nbsp;for&nbsp;file&nbsp;list&nbsp;is&nbsp;a&nbsp;space</span></div></li> +<li><div class="src-line"><a name="a35"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;(which&nbsp;is&nbsp;not&nbsp;a&nbsp;very&nbsp;smart&nbsp;choice,&nbsp;specifically&nbsp;for&nbsp;windows&nbsp;paths&nbsp;!).</span></div></li> +<li><div class="src-line"><a name="a36"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;A&nbsp;better&nbsp;separator&nbsp;should&nbsp;be&nbsp;a&nbsp;comma&nbsp;(,).&nbsp;This&nbsp;constant&nbsp;gives&nbsp;you&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a37"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;abilty&nbsp;to&nbsp;change&nbsp;that.</span></div></li> +<li><div class="src-line"><a name="a38"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;However&nbsp;notice&nbsp;that&nbsp;changing&nbsp;this&nbsp;value,&nbsp;may&nbsp;have&nbsp;impact&nbsp;on&nbsp;existing</span></div></li> +<li><div class="src-line"><a name="a39"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;scripts,&nbsp;using&nbsp;space&nbsp;separated&nbsp;filenames.</span></div></li> +<li><div class="src-line"><a name="a40"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Recommanded&nbsp;values&nbsp;for&nbsp;compatibility&nbsp;with&nbsp;older&nbsp;versions&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a41"></a>&nbsp;&nbsp;<span class="src-comm">//define(&nbsp;'PCLZIP_SEPARATOR',&nbsp;'&nbsp;'&nbsp;);</span></div></li> +<li><div class="src-line"><a name="a42"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Recommanded&nbsp;values&nbsp;for&nbsp;smart&nbsp;separation&nbsp;of&nbsp;filenames.</span></div></li> +<li><div class="src-line"><a name="a43"></a>&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/defined">defined</a><span class="src-sym">(</span><span class="src-str">'PCLZIP_SEPARATOR'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a44"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_SEPARATOR'</span><span class="src-sym">,&nbsp;</span><span class="src-str">','&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a45"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a46"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a47"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;configuration</span></div></li> +<li><div class="src-line"><a name="a48"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;0&nbsp;:&nbsp;PclZip&nbsp;Class&nbsp;integrated&nbsp;error&nbsp;handling</span></div></li> +<li><div class="src-line"><a name="a49"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;1&nbsp;:&nbsp;PclError&nbsp;external&nbsp;library&nbsp;error&nbsp;handling.&nbsp;By&nbsp;enabling&nbsp;this</span></div></li> +<li><div class="src-line"><a name="a50"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;you&nbsp;must&nbsp;ensure&nbsp;that&nbsp;you&nbsp;have&nbsp;included&nbsp;PclError&nbsp;library.</span></div></li> +<li><div class="src-line"><a name="a51"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;[2,...]&nbsp;:&nbsp;reserved&nbsp;for&nbsp;futur&nbsp;use</span></div></li> +<li><div class="src-line"><a name="a52"></a>&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/defined">defined</a><span class="src-sym">(</span><span class="src-str">'PCLZIP_ERROR_EXTERNAL'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a53"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERROR_EXTERNAL'</span><span class="src-sym">,&nbsp;</span><span class="src-num">0&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a54"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a55"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a56"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Optional&nbsp;static&nbsp;temporary&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a57"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;By&nbsp;default&nbsp;temporary&nbsp;files&nbsp;are&nbsp;generated&nbsp;in&nbsp;the&nbsp;script&nbsp;current</span></div></li> +<li><div class="src-line"><a name="a58"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;path.</span></div></li> +<li><div class="src-line"><a name="a59"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If&nbsp;defined&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a60"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;MUST&nbsp;BE&nbsp;terminated&nbsp;by&nbsp;a&nbsp;'/'.</span></div></li> +<li><div class="src-line"><a name="a61"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;MUST&nbsp;be&nbsp;a&nbsp;valid,&nbsp;already&nbsp;created&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a62"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Samples&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a63"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;define(&nbsp;'PCLZIP_TEMPORARY_DIR',&nbsp;'/temp/'&nbsp;);</span></div></li> +<li><div class="src-line"><a name="a64"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;define(&nbsp;'PCLZIP_TEMPORARY_DIR',&nbsp;'C:/Temp/'&nbsp;);</span></div></li> +<li><div class="src-line"><a name="a65"></a>&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/defined">defined</a><span class="src-sym">(</span><span class="src-str">'PCLZIP_TEMPORARY_DIR'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a66"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_TEMPORARY_DIR'</span><span class="src-sym">,&nbsp;</span><span class="src-str">''&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a67"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a68"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a69"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Optional&nbsp;threshold&nbsp;ratio&nbsp;for&nbsp;use&nbsp;of&nbsp;temporary&nbsp;files</span></div></li> +<li><div class="src-line"><a name="a70"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pclzip&nbsp;sense&nbsp;the&nbsp;size&nbsp;of&nbsp;the&nbsp;file&nbsp;to&nbsp;add/extract&nbsp;and&nbsp;decide&nbsp;to</span></div></li> +<li><div class="src-line"><a name="a71"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;use&nbsp;or&nbsp;not&nbsp;temporary&nbsp;file.&nbsp;The&nbsp;algorythm&nbsp;is&nbsp;looking&nbsp;for&nbsp;</span></div></li> +<li><div class="src-line"><a name="a72"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;memory_limit&nbsp;of&nbsp;PHP&nbsp;and&nbsp;apply&nbsp;a&nbsp;ratio.</span></div></li> +<li><div class="src-line"><a name="a73"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;threshold&nbsp;=&nbsp;memory_limit&nbsp;*&nbsp;ratio.</span></div></li> +<li><div class="src-line"><a name="a74"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Recommended&nbsp;values&nbsp;are&nbsp;under&nbsp;0.5.&nbsp;Default&nbsp;0.47.</span></div></li> +<li><div class="src-line"><a name="a75"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Samples&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a76"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;define(&nbsp;'PCLZIP_TEMPORARY_FILE_RATIO',&nbsp;0.5&nbsp;);</span></div></li> +<li><div class="src-line"><a name="a77"></a>&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/defined">defined</a><span class="src-sym">(</span><span class="src-str">'PCLZIP_TEMPORARY_FILE_RATIO'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a78"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_TEMPORARY_FILE_RATIO'</span><span class="src-sym">,&nbsp;</span><span class="src-num">0.47&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a79"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a80"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a81"></a><span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a82"></a><span class="src-comm">//&nbsp;*****&nbsp;UNDER&nbsp;THIS&nbsp;LINE&nbsp;NOTHING&nbsp;NEEDS&nbsp;TO&nbsp;BE&nbsp;MODIFIED&nbsp;*****</span></div></li> +<li><div class="src-line"><a name="a83"></a><span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a84"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a85"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Global&nbsp;variables</span></div></li> +<li><div class="src-line"><a name="a86"></a>&nbsp;&nbsp;<span class="src-var">$g_pclzip_version&nbsp;</span>=&nbsp;<span class="src-str">&quot;2.8.2&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a87"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a88"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;codes</span></div></li> +<li><div class="src-line"><a name="a89"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;-1&nbsp;:&nbsp;Unable&nbsp;to&nbsp;open&nbsp;file&nbsp;in&nbsp;binary&nbsp;write&nbsp;mode</span></div></li> +<li><div class="src-line"><a name="a90"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;-2&nbsp;:&nbsp;Unable&nbsp;to&nbsp;open&nbsp;file&nbsp;in&nbsp;binary&nbsp;read&nbsp;mode</span></div></li> +<li><div class="src-line"><a name="a91"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;-3&nbsp;:&nbsp;Invalid&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a92"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;-4&nbsp;:&nbsp;File&nbsp;does&nbsp;not&nbsp;exist</span></div></li> +<li><div class="src-line"><a name="a93"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;-5&nbsp;:&nbsp;Filename&nbsp;is&nbsp;too&nbsp;long&nbsp;(max.&nbsp;255)</span></div></li> +<li><div class="src-line"><a name="a94"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;-6&nbsp;:&nbsp;Not&nbsp;a&nbsp;valid&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a95"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;-7&nbsp;:&nbsp;Invalid&nbsp;extracted&nbsp;file&nbsp;size</span></div></li> +<li><div class="src-line"><a name="a96"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;-8&nbsp;:&nbsp;Unable&nbsp;to&nbsp;create&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a97"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;-9&nbsp;:&nbsp;Invalid&nbsp;archive&nbsp;extension</span></div></li> +<li><div class="src-line"><a name="a98"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;-10&nbsp;:&nbsp;Invalid&nbsp;archive&nbsp;format</span></div></li> +<li><div class="src-line"><a name="a99"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;-11&nbsp;:&nbsp;Unable&nbsp;to&nbsp;delete&nbsp;file&nbsp;(unlink)</span></div></li> +<li><div class="src-line"><a name="a100"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;-12&nbsp;:&nbsp;Unable&nbsp;to&nbsp;rename&nbsp;file&nbsp;(rename)</span></div></li> +<li><div class="src-line"><a name="a101"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;-13&nbsp;:&nbsp;Invalid&nbsp;header&nbsp;checksum</span></div></li> +<li><div class="src-line"><a name="a102"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;-14&nbsp;:&nbsp;Invalid&nbsp;archive&nbsp;size</span></div></li> +<li><div class="src-line"><a name="a103"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_USER_ABORTED'</span><span class="src-sym">,&nbsp;</span><span class="src-num">2&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a104"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_NO_ERROR'</span><span class="src-sym">,&nbsp;</span><span class="src-num">0&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a105"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_WRITE_OPEN_FAIL'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a106"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_READ_OPEN_FAIL'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">2&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a107"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_INVALID_PARAMETER'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">3&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a108"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_MISSING_FILE'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">4&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a109"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_FILENAME_TOO_LONG'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">5&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a110"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_INVALID_ZIP'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">6&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a111"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_BAD_EXTRACTED_FILE'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">7&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a112"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_DIR_CREATE_FAIL'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">8&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a113"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_BAD_EXTENSION'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">9&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a114"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_BAD_FORMAT'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">10&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a115"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_DELETE_FILE_FAIL'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">11&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a116"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_RENAME_FILE_FAIL'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">12&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a117"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_BAD_CHECKSUM'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">13&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a118"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_INVALID_ARCHIVE_ZIP'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">14&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a119"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_MISSING_OPTION_VALUE'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">15&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a120"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_INVALID_OPTION_VALUE'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">16&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a121"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_ALREADY_A_DIRECTORY'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">17&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a122"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_UNSUPPORTED_COMPRESSION'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">18&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a123"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_UNSUPPORTED_ENCRYPTION'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">19&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a124"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">20&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a125"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ERR_DIRECTORY_RESTRICTION'</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">21&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a126"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a127"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Options&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a128"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_PATH'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77001&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a129"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_ADD_PATH'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77002&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a130"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_REMOVE_PATH'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77003&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a131"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_REMOVE_ALL_PATH'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77004&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a132"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_SET_CHMOD'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77005&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a133"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_EXTRACT_AS_STRING'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77006&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a134"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_NO_COMPRESSION'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77007&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a135"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_BY_NAME'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77008&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a136"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_BY_INDEX'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77009&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a137"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_BY_EREG'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77010&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a138"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_BY_PREG'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77011&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a139"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_COMMENT'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77012&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a140"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_ADD_COMMENT'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77013&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a141"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_PREPEND_COMMENT'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77014&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a142"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_EXTRACT_IN_OUTPUT'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77015&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a143"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_REPLACE_NEWER'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77016&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a144"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_STOP_ON_ERROR'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77017&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a145"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Having&nbsp;big&nbsp;trouble&nbsp;with&nbsp;crypt.&nbsp;Need&nbsp;to&nbsp;multiply&nbsp;2&nbsp;long&nbsp;int</span></div></li> +<li><div class="src-line"><a name="a146"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;which&nbsp;is&nbsp;not&nbsp;correctly&nbsp;supported&nbsp;by&nbsp;PHP&nbsp;...</span></div></li> +<li><div class="src-line"><a name="a147"></a>&nbsp;&nbsp;<span class="src-comm">//define(&nbsp;'PCLZIP_OPT_CRYPT',&nbsp;77018&nbsp;);</span></div></li> +<li><div class="src-line"><a name="a148"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_EXTRACT_DIR_RESTRICTION'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77019&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a149"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_TEMP_FILE_THRESHOLD'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77020&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a150"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77020&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-comm">//&nbsp;alias</span></div></li> +<li><div class="src-line"><a name="a151"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_TEMP_FILE_ON'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77021&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a152"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_ADD_TEMP_FILE_ON'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77021&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-comm">//&nbsp;alias</span></div></li> +<li><div class="src-line"><a name="a153"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_TEMP_FILE_OFF'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77022&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a154"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_OPT_ADD_TEMP_FILE_OFF'</span><span class="src-sym">,&nbsp;</span><span class="src-num">77022&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-comm">//&nbsp;alias</span></div></li> +<li><div class="src-line"><a name="a155"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a156"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;File&nbsp;description&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a157"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ATT_FILE_NAME'</span><span class="src-sym">,&nbsp;</span><span class="src-num">79001&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a158"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ATT_FILE_NEW_SHORT_NAME'</span><span class="src-sym">,&nbsp;</span><span class="src-num">79002&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a159"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ATT_FILE_NEW_FULL_NAME'</span><span class="src-sym">,&nbsp;</span><span class="src-num">79003&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a160"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ATT_FILE_MTIME'</span><span class="src-sym">,&nbsp;</span><span class="src-num">79004&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a161"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ATT_FILE_CONTENT'</span><span class="src-sym">,&nbsp;</span><span class="src-num">79005&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a162"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_ATT_FILE_COMMENT'</span><span class="src-sym">,&nbsp;</span><span class="src-num">79006&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a163"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a164"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;backs&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a165"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_CB_PRE_EXTRACT'</span><span class="src-sym">,&nbsp;</span><span class="src-num">78001&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a166"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_CB_POST_EXTRACT'</span><span class="src-sym">,&nbsp;</span><span class="src-num">78002&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a167"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_CB_PRE_ADD'</span><span class="src-sym">,&nbsp;</span><span class="src-num">78003&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a168"></a>&nbsp;&nbsp;<a href="http://www.php.net/define">define</a><span class="src-sym">(&nbsp;</span><span class="src-str">'PCLZIP_CB_POST_ADD'</span><span class="src-sym">,&nbsp;</span><span class="src-num">78004&nbsp;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a169"></a>&nbsp;&nbsp;<span class="src-comm">/*&nbsp;For&nbsp;futur&nbsp;use</span></div></li> +<li><div class="src-line"><a name="a170"></a><span class="src-comm">&nbsp;&nbsp;define(&nbsp;'PCLZIP_CB_PRE_LIST',&nbsp;78005&nbsp;);</span></div></li> +<li><div class="src-line"><a name="a171"></a><span class="src-comm">&nbsp;&nbsp;define(&nbsp;'PCLZIP_CB_POST_LIST',&nbsp;78006&nbsp;);</span></div></li> +<li><div class="src-line"><a name="a172"></a><span class="src-comm">&nbsp;&nbsp;define(&nbsp;'PCLZIP_CB_PRE_DELETE',&nbsp;78007&nbsp;);</span></div></li> +<li><div class="src-line"><a name="a173"></a><span class="src-comm">&nbsp;&nbsp;define(&nbsp;'PCLZIP_CB_POST_DELETE',&nbsp;78008&nbsp;);</span></div></li> +<li><div class="src-line"><a name="a174"></a><span class="src-comm">&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a175"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a176"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a177"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Class&nbsp;:&nbsp;PclZip</span></div></li> +<li><div class="src-line"><a name="a178"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a179"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PclZip&nbsp;is&nbsp;the&nbsp;class&nbsp;that&nbsp;represent&nbsp;a&nbsp;Zip&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a180"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;public&nbsp;methods&nbsp;allow&nbsp;the&nbsp;manipulation&nbsp;of&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a181"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Attributes&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a182"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Attributes&nbsp;must&nbsp;not&nbsp;be&nbsp;accessed&nbsp;directly.</span></div></li> +<li><div class="src-line"><a name="a183"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Methods&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a184"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PclZip()&nbsp;:&nbsp;Object&nbsp;creator</span></div></li> +<li><div class="src-line"><a name="a185"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;create()&nbsp;:&nbsp;Creates&nbsp;the&nbsp;Zip&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a186"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;listContent()&nbsp;:&nbsp;List&nbsp;the&nbsp;content&nbsp;of&nbsp;the&nbsp;Zip&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a187"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;extract()&nbsp;:&nbsp;Extract&nbsp;the&nbsp;content&nbsp;of&nbsp;the&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a188"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;properties()&nbsp;:&nbsp;List&nbsp;the&nbsp;properties&nbsp;of&nbsp;the&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a189"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a190"></a>&nbsp;&nbsp;<span class="src-key">class&nbsp;</span><a href="../PHPExcel/PclZip.html">PclZip</a></div></li> +<li><div class="src-line"><a name="a191"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a192"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Filename&nbsp;of&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a193"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">var&nbsp;</span><a href="../PHPExcel/PclZip.html#var$zipname">$zipname</a>&nbsp;=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a194"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a195"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;File&nbsp;descriptor&nbsp;of&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a196"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">var&nbsp;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">$zip_fd</a>&nbsp;=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a197"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a198"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Internal&nbsp;error&nbsp;handling</span></div></li> +<li><div class="src-line"><a name="a199"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">var&nbsp;</span><a href="../PHPExcel/PclZip.html#var$error_code">$error_code</a>&nbsp;=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a200"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">var&nbsp;</span><a href="../PHPExcel/PclZip.html#var$error_string">$error_string</a>&nbsp;=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a201"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a202"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Current&nbsp;status&nbsp;of&nbsp;the&nbsp;magic_quotes_runtime</span></div></li> +<li><div class="src-line"><a name="a203"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;This&nbsp;value&nbsp;store&nbsp;the&nbsp;php&nbsp;configuration&nbsp;for&nbsp;magic_quotes</span></div></li> +<li><div class="src-line"><a name="a204"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;The&nbsp;class&nbsp;can&nbsp;then&nbsp;disable&nbsp;the&nbsp;magic_quotes&nbsp;and&nbsp;reset&nbsp;it&nbsp;after</span></div></li> +<li><div class="src-line"><a name="a205"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">var&nbsp;</span><a href="../PHPExcel/PclZip.html#var$magic_quotes_status">$magic_quotes_status</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a206"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a207"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a208"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;PclZip()</span></div></li> +<li><div class="src-line"><a name="a209"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a210"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Creates&nbsp;a&nbsp;PclZip&nbsp;object&nbsp;and&nbsp;set&nbsp;the&nbsp;name&nbsp;of&nbsp;the&nbsp;associated&nbsp;Zip&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a211"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;filename.</span></div></li> +<li><div class="src-line"><a name="a212"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Note&nbsp;that&nbsp;no&nbsp;real&nbsp;action&nbsp;is&nbsp;taken,&nbsp;if&nbsp;the&nbsp;archive&nbsp;does&nbsp;not&nbsp;exist&nbsp;it&nbsp;is&nbsp;not</span></div></li> +<li><div class="src-line"><a name="a213"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;created.&nbsp;Use&nbsp;create()&nbsp;for&nbsp;that.</span></div></li> +<li><div class="src-line"><a name="a214"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a215"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">(</span><span class="src-var">$p_zipname</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a216"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a217"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a218"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Tests&nbsp;the&nbsp;zlib</span></div></li> +<li><div class="src-line"><a name="a219"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-str">'gzopen'</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a220"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a221"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">die</span><span class="src-sym">(</span><span class="src-str">'Abort&nbsp;'</span>.<a href="http://www.php.net/basename">basename</a><span class="src-sym">(</span>__FILE__<span class="src-sym">)</span>.<span class="src-str">'&nbsp;:&nbsp;Missing&nbsp;zlib&nbsp;extensions'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a222"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a223"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a224"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a225"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a>&nbsp;=&nbsp;<span class="src-var">$p_zipname</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a226"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a227"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$magic_quotes_status">magic_quotes_status</a>&nbsp;=&nbsp;-<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a228"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a229"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a230"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a231"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a232"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a233"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a234"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a235"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a236"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;create($p_filelist,&nbsp;$p_add_dir=&quot;&quot;,&nbsp;$p_remove_dir=&quot;&quot;)</span></div></li> +<li><div class="src-line"><a name="a237"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;create($p_filelist,&nbsp;$p_option,&nbsp;$p_option_value,&nbsp;...)</span></div></li> +<li><div class="src-line"><a name="a238"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a239"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;supports&nbsp;two&nbsp;different&nbsp;synopsis.&nbsp;The&nbsp;first&nbsp;one&nbsp;is&nbsp;historical.</span></div></li> +<li><div class="src-line"><a name="a240"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;creates&nbsp;a&nbsp;Zip&nbsp;Archive.&nbsp;The&nbsp;Zip&nbsp;file&nbsp;is&nbsp;created&nbsp;in&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a241"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;filesystem.&nbsp;The&nbsp;files&nbsp;and&nbsp;directories&nbsp;indicated&nbsp;in&nbsp;$p_filelist</span></div></li> +<li><div class="src-line"><a name="a242"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;are&nbsp;added&nbsp;in&nbsp;the&nbsp;archive.&nbsp;See&nbsp;the&nbsp;parameters&nbsp;description&nbsp;for&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a243"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;supported&nbsp;format&nbsp;of&nbsp;$p_filelist.</span></div></li> +<li><div class="src-line"><a name="a244"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;When&nbsp;a&nbsp;directory&nbsp;is&nbsp;in&nbsp;the&nbsp;list,&nbsp;the&nbsp;directory&nbsp;and&nbsp;its&nbsp;content&nbsp;is&nbsp;added</span></div></li> +<li><div class="src-line"><a name="a245"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;in&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a246"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;In&nbsp;this&nbsp;synopsis,&nbsp;the&nbsp;function&nbsp;takes&nbsp;an&nbsp;optional&nbsp;variable&nbsp;list&nbsp;of</span></div></li> +<li><div class="src-line"><a name="a247"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;options.&nbsp;See&nbsp;bellow&nbsp;the&nbsp;supported&nbsp;options.</span></div></li> +<li><div class="src-line"><a name="a248"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a249"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_filelist&nbsp;:&nbsp;An&nbsp;array&nbsp;containing&nbsp;file&nbsp;or&nbsp;directory&nbsp;names,&nbsp;or</span></div></li> +<li><div class="src-line"><a name="a250"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a&nbsp;string&nbsp;containing&nbsp;one&nbsp;filename&nbsp;or&nbsp;one&nbsp;directory&nbsp;name,&nbsp;or</span></div></li> +<li><div class="src-line"><a name="a251"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a&nbsp;string&nbsp;containing&nbsp;a&nbsp;list&nbsp;of&nbsp;filenames&nbsp;and/or&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a252"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;names&nbsp;separated&nbsp;by&nbsp;spaces.</span></div></li> +<li><div class="src-line"><a name="a253"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_add_dir&nbsp;:&nbsp;A&nbsp;path&nbsp;to&nbsp;add&nbsp;before&nbsp;the&nbsp;real&nbsp;path&nbsp;of&nbsp;the&nbsp;archived&nbsp;file,</span></div></li> +<li><div class="src-line"><a name="a254"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;in&nbsp;order&nbsp;to&nbsp;have&nbsp;it&nbsp;memorized&nbsp;in&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a255"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_remove_dir&nbsp;:&nbsp;A&nbsp;path&nbsp;to&nbsp;remove&nbsp;from&nbsp;the&nbsp;real&nbsp;path&nbsp;of&nbsp;the&nbsp;file&nbsp;to&nbsp;archive,</span></div></li> +<li><div class="src-line"><a name="a256"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;in&nbsp;order&nbsp;to&nbsp;have&nbsp;a&nbsp;shorter&nbsp;path&nbsp;memorized&nbsp;in&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a257"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;When&nbsp;$p_add_dir&nbsp;and&nbsp;$p_remove_dir&nbsp;are&nbsp;set,&nbsp;$p_remove_dir</span></div></li> +<li><div class="src-line"><a name="a258"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is&nbsp;removed&nbsp;first,&nbsp;before&nbsp;$p_add_dir&nbsp;is&nbsp;added.</span></div></li> +<li><div class="src-line"><a name="a259"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Options&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a260"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_ADD_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a261"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_REMOVE_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a262"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_REMOVE_ALL_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a263"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_COMMENT&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a264"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_CB_PRE_ADD&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a265"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_CB_POST_ADD&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a266"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a267"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;on&nbsp;failure,</span></div></li> +<li><div class="src-line"><a name="a268"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;list&nbsp;of&nbsp;the&nbsp;added&nbsp;files,&nbsp;with&nbsp;a&nbsp;status&nbsp;of&nbsp;the&nbsp;add&nbsp;action.</span></div></li> +<li><div class="src-line"><a name="a269"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;(see&nbsp;PclZip::listContent()&nbsp;for&nbsp;list&nbsp;entry&nbsp;format)</span></div></li> +<li><div class="src-line"><a name="a270"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a271"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodcreate">create</a><span class="src-sym">(</span><span class="src-var">$p_filelist</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a272"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a273"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a274"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a275"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;error&nbsp;handler</span></div></li> +<li><div class="src-line"><a name="a276"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a277"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a278"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;default&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a279"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a280"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_NO_COMPRESSION">PCLZIP_OPT_NO_COMPRESSION</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-id">FALSE</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a281"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a282"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;variable&nbsp;options&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a283"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/func_num_args">func_num_args</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a284"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a285"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a286"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&gt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a287"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a288"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_arg_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/func_get_args">func_get_args</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a289"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a290"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Remove&nbsp;from&nbsp;the&nbsp;options&nbsp;list&nbsp;the&nbsp;first&nbsp;argument</span></div></li> +<li><div class="src-line"><a name="a291"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/array_shift">array_shift</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a292"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size</span>--<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a293"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a294"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;first&nbsp;arg</span></div></li> +<li><div class="src-line"><a name="a295"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><a href="http://www.php.net/is_integer">is_integer</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>&gt;&nbsp;<span class="src-num">77000</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a296"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a297"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Parse&nbsp;the&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a298"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivParseOptions">privParseOptions</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a299"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a300"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a301"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a302"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_ADD">PCLZIP_CB_PRE_ADD</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a303"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_ADD">PCLZIP_CB_POST_ADD</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a304"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_NO_COMPRESSION">PCLZIP_OPT_NO_COMPRESSION</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a305"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_COMMENT">PCLZIP_OPT_COMMENT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a306"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a307"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_ON">PCLZIP_OPT_TEMP_FILE_ON</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a308"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a309"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//,&nbsp;PCLZIP_OPT_CRYPT&nbsp;=&gt;&nbsp;'optional'</span></div></li> +<li><div class="src-line"><a name="a310"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a311"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a312"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a313"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a314"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a315"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a316"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;2&nbsp;args</span></div></li> +<li><div class="src-line"><a name="a317"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;we&nbsp;need&nbsp;to&nbsp;support&nbsp;the&nbsp;first&nbsp;historic&nbsp;synopsis&nbsp;of&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a318"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;method.</span></div></li> +<li><div class="src-line"><a name="a319"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a320"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a321"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;first&nbsp;argument</span></div></li> +<li><div class="src-line"><a name="a322"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a323"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a324"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;the&nbsp;optional&nbsp;second&nbsp;argument</span></div></li> +<li><div class="src-line"><a name="a325"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a326"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a327"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a328"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&gt;&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a329"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a330"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">&quot;Invalid&nbsp;number&nbsp;/&nbsp;type&nbsp;of&nbsp;arguments&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a331"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a332"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a333"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a334"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a335"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a336"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;default&nbsp;option&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a337"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivOptionDefaultThreshold">privOptionDefaultThreshold</a><span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a338"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a339"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Init</span></div></li> +<li><div class="src-line"><a name="a340"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_string_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a341"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_att_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a342"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_filedescr_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a343"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_result_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a344"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a345"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;$p_filelist&nbsp;is&nbsp;really&nbsp;an&nbsp;array</span></div></li> +<li><div class="src-line"><a name="a346"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$p_filelist</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a347"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a348"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;first&nbsp;element&nbsp;is&nbsp;also&nbsp;an&nbsp;array</span></div></li> +<li><div class="src-line"><a name="a349"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This&nbsp;will&nbsp;mean&nbsp;that&nbsp;this&nbsp;is&nbsp;a&nbsp;file&nbsp;description&nbsp;entry</span></div></li> +<li><div class="src-line"><a name="a350"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_filelist</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$p_filelist</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a351"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_att_list&nbsp;</span>=&nbsp;<span class="src-var">$p_filelist</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a352"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a353"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a354"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;The&nbsp;list&nbsp;is&nbsp;a&nbsp;list&nbsp;of&nbsp;string&nbsp;names</span></div></li> +<li><div class="src-line"><a name="a355"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a356"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_string_list&nbsp;</span>=&nbsp;<span class="src-var">$p_filelist</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a357"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a358"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a359"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a360"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;$p_filelist&nbsp;is&nbsp;a&nbsp;string</span></div></li> +<li><div class="src-line"><a name="a361"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$p_filelist</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a362"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;a&nbsp;list&nbsp;from&nbsp;the&nbsp;string</span></div></li> +<li><div class="src-line"><a name="a363"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_string_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_SEPARATOR">PCLZIP_SEPARATOR</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_filelist</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a364"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a365"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a366"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Invalid&nbsp;variable&nbsp;type&nbsp;for&nbsp;$p_filelist</span></div></li> +<li><div class="src-line"><a name="a367"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a368"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;variable&nbsp;type&nbsp;p_filelist&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a369"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a370"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a371"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a372"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reformat&nbsp;the&nbsp;string&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a373"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_string_list</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a374"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_string_list&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$v_string</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a375"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_string&nbsp;</span>!=&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a376"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_att_list</span><span class="src-sym">[</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NAME">PCLZIP_ATT_FILE_NAME</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_string</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a377"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a378"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a379"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a380"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a381"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a382"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a383"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;For&nbsp;each&nbsp;file&nbsp;in&nbsp;the&nbsp;list&nbsp;check&nbsp;the&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a384"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_supported_attributes</span></div></li> +<li><div class="src-line"><a name="a385"></a>&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NAME">PCLZIP_ATT_FILE_NAME</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'mandatory'</span></div></li> +<li><div class="src-line"><a name="a386"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NEW_SHORT_NAME">PCLZIP_ATT_FILE_NEW_SHORT_NAME</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a387"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NEW_FULL_NAME">PCLZIP_ATT_FILE_NEW_FULL_NAME</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a388"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_MTIME">PCLZIP_ATT_FILE_MTIME</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a389"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_CONTENT">PCLZIP_ATT_FILE_CONTENT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a390"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_COMMENT">PCLZIP_ATT_FILE_COMMENT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a391"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a392"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_att_list&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$v_entry</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a393"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivFileDescrParseAtt">privFileDescrParseAtt</a><span class="src-sym">(</span><span class="src-var">$v_entry</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a394"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_filedescr_list</span><span class="src-sym">[</span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a395"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a396"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_supported_attributes</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a397"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a398"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a399"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a400"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a401"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a402"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Expand&nbsp;the&nbsp;filelist&nbsp;(expand&nbsp;directories)</span></div></li> +<li><div class="src-line"><a name="a403"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivFileDescrExpand">privFileDescrExpand</a><span class="src-sym">(</span><span class="src-var">$v_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a404"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a405"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a406"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a407"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a408"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;create&nbsp;fct</span></div></li> +<li><div class="src-line"><a name="a409"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCreate">privCreate</a><span class="src-sym">(</span><span class="src-var">$v_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_result_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a410"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a411"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a412"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a413"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a414"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a415"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$p_result_list</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a416"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a417"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a418"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a419"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a420"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a421"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;add($p_filelist,&nbsp;$p_add_dir=&quot;&quot;,&nbsp;$p_remove_dir=&quot;&quot;)</span></div></li> +<li><div class="src-line"><a name="a422"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;add($p_filelist,&nbsp;$p_option,&nbsp;$p_option_value,&nbsp;...)</span></div></li> +<li><div class="src-line"><a name="a423"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a424"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;supports&nbsp;two&nbsp;synopsis.&nbsp;The&nbsp;first&nbsp;one&nbsp;is&nbsp;historical.</span></div></li> +<li><div class="src-line"><a name="a425"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;methods&nbsp;add&nbsp;the&nbsp;list&nbsp;of&nbsp;files&nbsp;in&nbsp;an&nbsp;existing&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a426"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;If&nbsp;a&nbsp;file&nbsp;with&nbsp;the&nbsp;same&nbsp;name&nbsp;already&nbsp;exists,&nbsp;it&nbsp;is&nbsp;added&nbsp;at&nbsp;the&nbsp;end&nbsp;of&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a427"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;archive,&nbsp;the&nbsp;first&nbsp;one&nbsp;is&nbsp;still&nbsp;present.</span></div></li> +<li><div class="src-line"><a name="a428"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;If&nbsp;the&nbsp;archive&nbsp;does&nbsp;not&nbsp;exist,&nbsp;it&nbsp;is&nbsp;created.</span></div></li> +<li><div class="src-line"><a name="a429"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a430"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_filelist&nbsp;:&nbsp;An&nbsp;array&nbsp;containing&nbsp;file&nbsp;or&nbsp;directory&nbsp;names,&nbsp;or</span></div></li> +<li><div class="src-line"><a name="a431"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a&nbsp;string&nbsp;containing&nbsp;one&nbsp;filename&nbsp;or&nbsp;one&nbsp;directory&nbsp;name,&nbsp;or</span></div></li> +<li><div class="src-line"><a name="a432"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a&nbsp;string&nbsp;containing&nbsp;a&nbsp;list&nbsp;of&nbsp;filenames&nbsp;and/or&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a433"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;names&nbsp;separated&nbsp;by&nbsp;spaces.</span></div></li> +<li><div class="src-line"><a name="a434"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_add_dir&nbsp;:&nbsp;A&nbsp;path&nbsp;to&nbsp;add&nbsp;before&nbsp;the&nbsp;real&nbsp;path&nbsp;of&nbsp;the&nbsp;archived&nbsp;file,</span></div></li> +<li><div class="src-line"><a name="a435"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;in&nbsp;order&nbsp;to&nbsp;have&nbsp;it&nbsp;memorized&nbsp;in&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a436"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_remove_dir&nbsp;:&nbsp;A&nbsp;path&nbsp;to&nbsp;remove&nbsp;from&nbsp;the&nbsp;real&nbsp;path&nbsp;of&nbsp;the&nbsp;file&nbsp;to&nbsp;archive,</span></div></li> +<li><div class="src-line"><a name="a437"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;in&nbsp;order&nbsp;to&nbsp;have&nbsp;a&nbsp;shorter&nbsp;path&nbsp;memorized&nbsp;in&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a438"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;When&nbsp;$p_add_dir&nbsp;and&nbsp;$p_remove_dir&nbsp;are&nbsp;set,&nbsp;$p_remove_dir</span></div></li> +<li><div class="src-line"><a name="a439"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is&nbsp;removed&nbsp;first,&nbsp;before&nbsp;$p_add_dir&nbsp;is&nbsp;added.</span></div></li> +<li><div class="src-line"><a name="a440"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Options&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a441"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_ADD_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a442"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_REMOVE_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a443"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_REMOVE_ALL_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a444"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_COMMENT&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a445"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_ADD_COMMENT&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a446"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_PREPEND_COMMENT&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a447"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_CB_PRE_ADD&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a448"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_CB_POST_ADD&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a449"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a450"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;on&nbsp;failure,</span></div></li> +<li><div class="src-line"><a name="a451"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;list&nbsp;of&nbsp;the&nbsp;added&nbsp;files,&nbsp;with&nbsp;a&nbsp;status&nbsp;of&nbsp;the&nbsp;add&nbsp;action.</span></div></li> +<li><div class="src-line"><a name="a452"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;(see&nbsp;PclZip::listContent()&nbsp;for&nbsp;list&nbsp;entry&nbsp;format)</span></div></li> +<li><div class="src-line"><a name="a453"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a454"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodadd">add</a><span class="src-sym">(</span><span class="src-var">$p_filelist</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a455"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a456"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a457"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a458"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;error&nbsp;handler</span></div></li> +<li><div class="src-line"><a name="a459"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a460"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a461"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;default&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a462"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a463"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_NO_COMPRESSION">PCLZIP_OPT_NO_COMPRESSION</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-id">FALSE</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a464"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a465"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;variable&nbsp;options&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a466"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/func_num_args">func_num_args</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a467"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a468"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a469"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&gt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a470"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a471"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_arg_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/func_get_args">func_get_args</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a472"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a473"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Remove&nbsp;form&nbsp;the&nbsp;options&nbsp;list&nbsp;the&nbsp;first&nbsp;argument</span></div></li> +<li><div class="src-line"><a name="a474"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/array_shift">array_shift</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a475"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size</span>--<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a476"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a477"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;first&nbsp;arg</span></div></li> +<li><div class="src-line"><a name="a478"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><a href="http://www.php.net/is_integer">is_integer</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>&gt;&nbsp;<span class="src-num">77000</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a479"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a480"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Parse&nbsp;the&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a481"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivParseOptions">privParseOptions</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a482"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a483"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a484"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a485"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_ADD">PCLZIP_CB_PRE_ADD</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a486"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_ADD">PCLZIP_CB_POST_ADD</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a487"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_NO_COMPRESSION">PCLZIP_OPT_NO_COMPRESSION</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a488"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_COMMENT">PCLZIP_OPT_COMMENT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a489"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_COMMENT">PCLZIP_OPT_ADD_COMMENT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a490"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PREPEND_COMMENT">PCLZIP_OPT_PREPEND_COMMENT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a491"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a492"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_ON">PCLZIP_OPT_TEMP_FILE_ON</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a493"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a494"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//,&nbsp;PCLZIP_OPT_CRYPT&nbsp;=&gt;&nbsp;'optional'</span></div></li> +<li><div class="src-line"><a name="a495"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a496"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a497"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a498"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a499"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a500"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a501"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;2&nbsp;args</span></div></li> +<li><div class="src-line"><a name="a502"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;we&nbsp;need&nbsp;to&nbsp;support&nbsp;the&nbsp;first&nbsp;historic&nbsp;synopsis&nbsp;of&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a503"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;method.</span></div></li> +<li><div class="src-line"><a name="a504"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a505"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a506"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;first&nbsp;argument</span></div></li> +<li><div class="src-line"><a name="a507"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_add_path&nbsp;</span>=&nbsp;<span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a508"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a509"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;the&nbsp;optional&nbsp;second&nbsp;argument</span></div></li> +<li><div class="src-line"><a name="a510"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a511"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a512"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a513"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&gt;&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a514"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a515"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;number&nbsp;/&nbsp;type&nbsp;of&nbsp;arguments&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a516"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a517"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a518"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a519"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a520"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a521"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a522"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a523"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;default&nbsp;option&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a524"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivOptionDefaultThreshold">privOptionDefaultThreshold</a><span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a525"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a526"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Init</span></div></li> +<li><div class="src-line"><a name="a527"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_string_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a528"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_att_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a529"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_filedescr_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a530"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_result_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a531"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a532"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;$p_filelist&nbsp;is&nbsp;really&nbsp;an&nbsp;array</span></div></li> +<li><div class="src-line"><a name="a533"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$p_filelist</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a534"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a535"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;first&nbsp;element&nbsp;is&nbsp;also&nbsp;an&nbsp;array</span></div></li> +<li><div class="src-line"><a name="a536"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This&nbsp;will&nbsp;mean&nbsp;that&nbsp;this&nbsp;is&nbsp;a&nbsp;file&nbsp;description&nbsp;entry</span></div></li> +<li><div class="src-line"><a name="a537"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_filelist</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$p_filelist</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a538"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_att_list&nbsp;</span>=&nbsp;<span class="src-var">$p_filelist</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a539"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a540"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a541"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;The&nbsp;list&nbsp;is&nbsp;a&nbsp;list&nbsp;of&nbsp;string&nbsp;names</span></div></li> +<li><div class="src-line"><a name="a542"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a543"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_string_list&nbsp;</span>=&nbsp;<span class="src-var">$p_filelist</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a544"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a545"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a546"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a547"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;$p_filelist&nbsp;is&nbsp;a&nbsp;string</span></div></li> +<li><div class="src-line"><a name="a548"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$p_filelist</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a549"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;a&nbsp;list&nbsp;from&nbsp;the&nbsp;string</span></div></li> +<li><div class="src-line"><a name="a550"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_string_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_SEPARATOR">PCLZIP_SEPARATOR</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_filelist</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a551"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a552"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a553"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Invalid&nbsp;variable&nbsp;type&nbsp;for&nbsp;$p_filelist</span></div></li> +<li><div class="src-line"><a name="a554"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a555"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;variable&nbsp;type&nbsp;'&quot;</span>.<a href="http://www.php.net/gettype">gettype</a><span class="src-sym">(</span><span class="src-var">$p_filelist</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&nbsp;for&nbsp;p_filelist&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a556"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a557"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a558"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a559"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reformat&nbsp;the&nbsp;string&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a560"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_string_list</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a561"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_string_list&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$v_string</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a562"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_att_list</span><span class="src-sym">[</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NAME">PCLZIP_ATT_FILE_NAME</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_string</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a563"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a564"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a565"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a566"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;For&nbsp;each&nbsp;file&nbsp;in&nbsp;the&nbsp;list&nbsp;check&nbsp;the&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a567"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_supported_attributes</span></div></li> +<li><div class="src-line"><a name="a568"></a>&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NAME">PCLZIP_ATT_FILE_NAME</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'mandatory'</span></div></li> +<li><div class="src-line"><a name="a569"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NEW_SHORT_NAME">PCLZIP_ATT_FILE_NEW_SHORT_NAME</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a570"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NEW_FULL_NAME">PCLZIP_ATT_FILE_NEW_FULL_NAME</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a571"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_MTIME">PCLZIP_ATT_FILE_MTIME</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a572"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_CONTENT">PCLZIP_ATT_FILE_CONTENT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a573"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_COMMENT">PCLZIP_ATT_FILE_COMMENT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a574"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a575"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_att_list&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$v_entry</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a576"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivFileDescrParseAtt">privFileDescrParseAtt</a><span class="src-sym">(</span><span class="src-var">$v_entry</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a577"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_filedescr_list</span><span class="src-sym">[</span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a578"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a579"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_supported_attributes</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a580"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a581"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a582"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a583"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a584"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a585"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Expand&nbsp;the&nbsp;filelist&nbsp;(expand&nbsp;directories)</span></div></li> +<li><div class="src-line"><a name="a586"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivFileDescrExpand">privFileDescrExpand</a><span class="src-sym">(</span><span class="src-var">$v_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a587"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a588"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a589"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a590"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a591"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;create&nbsp;fct</span></div></li> +<li><div class="src-line"><a name="a592"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivAdd">privAdd</a><span class="src-sym">(</span><span class="src-var">$v_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_result_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a593"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a594"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a595"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a596"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a597"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a598"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$p_result_list</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a599"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a600"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a601"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a602"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a603"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;listContent()</span></div></li> +<li><div class="src-line"><a name="a604"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a605"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;public&nbsp;method,&nbsp;gives&nbsp;the&nbsp;list&nbsp;of&nbsp;the&nbsp;files&nbsp;and&nbsp;directories,&nbsp;with&nbsp;their</span></div></li> +<li><div class="src-line"><a name="a606"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;properties.</span></div></li> +<li><div class="src-line"><a name="a607"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;properties&nbsp;of&nbsp;each&nbsp;entries&nbsp;in&nbsp;the&nbsp;list&nbsp;are&nbsp;(used&nbsp;also&nbsp;in&nbsp;other&nbsp;functions)&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a608"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;filename&nbsp;:&nbsp;Name&nbsp;of&nbsp;the&nbsp;file.&nbsp;For&nbsp;a&nbsp;create&nbsp;or&nbsp;add&nbsp;action&nbsp;it&nbsp;is&nbsp;the&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a609"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;given&nbsp;by&nbsp;the&nbsp;user.&nbsp;For&nbsp;an&nbsp;extract&nbsp;function&nbsp;it&nbsp;is&nbsp;the&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a610"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;of&nbsp;the&nbsp;extracted&nbsp;file.</span></div></li> +<li><div class="src-line"><a name="a611"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stored_filename&nbsp;:&nbsp;Name&nbsp;of&nbsp;the&nbsp;file&nbsp;/&nbsp;directory&nbsp;stored&nbsp;in&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a612"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;size&nbsp;:&nbsp;Size&nbsp;of&nbsp;the&nbsp;stored&nbsp;file.</span></div></li> +<li><div class="src-line"><a name="a613"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;compressed_size&nbsp;:&nbsp;Size&nbsp;of&nbsp;the&nbsp;file's&nbsp;data&nbsp;compressed&nbsp;in&nbsp;the&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a614"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(without&nbsp;the&nbsp;headers&nbsp;overhead)</span></div></li> +<li><div class="src-line"><a name="a615"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mtime&nbsp;:&nbsp;Last&nbsp;known&nbsp;modification&nbsp;date&nbsp;of&nbsp;the&nbsp;file&nbsp;(UNIX&nbsp;timestamp)</span></div></li> +<li><div class="src-line"><a name="a616"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;comment&nbsp;:&nbsp;Comment&nbsp;associated&nbsp;with&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a617"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;folder&nbsp;:&nbsp;true&nbsp;|&nbsp;false</span></div></li> +<li><div class="src-line"><a name="a618"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;index&nbsp;:&nbsp;index&nbsp;of&nbsp;the&nbsp;file&nbsp;in&nbsp;the&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a619"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;status&nbsp;:&nbsp;status&nbsp;of&nbsp;the&nbsp;action&nbsp;(depending&nbsp;of&nbsp;the&nbsp;action)&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a620"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Values&nbsp;are&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a621"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ok&nbsp;:&nbsp;OK&nbsp;!</span></div></li> +<li><div class="src-line"><a name="a622"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;filtered&nbsp;:&nbsp;the&nbsp;file&nbsp;/&nbsp;dir&nbsp;is&nbsp;not&nbsp;extracted&nbsp;(filtered&nbsp;by&nbsp;user)</span></div></li> +<li><div class="src-line"><a name="a623"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;already_a_directory&nbsp;:&nbsp;the&nbsp;file&nbsp;can&nbsp;not&nbsp;be&nbsp;extracted&nbsp;because&nbsp;a</span></div></li> +<li><div class="src-line"><a name="a624"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;directory&nbsp;with&nbsp;the&nbsp;same&nbsp;name&nbsp;already&nbsp;exists</span></div></li> +<li><div class="src-line"><a name="a625"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;write_protected&nbsp;:&nbsp;the&nbsp;file&nbsp;can&nbsp;not&nbsp;be&nbsp;extracted&nbsp;because&nbsp;a&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a626"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;with&nbsp;the&nbsp;same&nbsp;name&nbsp;already&nbsp;exists&nbsp;and&nbsp;is</span></div></li> +<li><div class="src-line"><a name="a627"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;write&nbsp;protected</span></div></li> +<li><div class="src-line"><a name="a628"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;newer_exist&nbsp;:&nbsp;the&nbsp;file&nbsp;was&nbsp;not&nbsp;extracted&nbsp;because&nbsp;a&nbsp;newer&nbsp;file&nbsp;exists</span></div></li> +<li><div class="src-line"><a name="a629"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;path_creation_fail&nbsp;:&nbsp;the&nbsp;file&nbsp;is&nbsp;not&nbsp;extracted&nbsp;because&nbsp;the&nbsp;folder</span></div></li> +<li><div class="src-line"><a name="a630"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;does&nbsp;not&nbsp;exist&nbsp;and&nbsp;can&nbsp;not&nbsp;be&nbsp;created</span></div></li> +<li><div class="src-line"><a name="a631"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;write_error&nbsp;:&nbsp;the&nbsp;file&nbsp;was&nbsp;not&nbsp;extracted&nbsp;because&nbsp;there&nbsp;was&nbsp;a</span></div></li> +<li><div class="src-line"><a name="a632"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;error&nbsp;while&nbsp;writing&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a633"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;read_error&nbsp;:&nbsp;the&nbsp;file&nbsp;was&nbsp;not&nbsp;extracted&nbsp;because&nbsp;there&nbsp;was&nbsp;a&nbsp;error</span></div></li> +<li><div class="src-line"><a name="a634"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;reading&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a635"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;invalid_header&nbsp;:&nbsp;the&nbsp;file&nbsp;was&nbsp;not&nbsp;extracted&nbsp;because&nbsp;of&nbsp;an&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a636"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;format&nbsp;error&nbsp;(bad&nbsp;file&nbsp;header)</span></div></li> +<li><div class="src-line"><a name="a637"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Note&nbsp;that&nbsp;each&nbsp;time&nbsp;a&nbsp;method&nbsp;can&nbsp;continue&nbsp;operating&nbsp;when&nbsp;there</span></div></li> +<li><div class="src-line"><a name="a638"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;is&nbsp;an&nbsp;action&nbsp;error&nbsp;on&nbsp;a&nbsp;file,&nbsp;the&nbsp;error&nbsp;is&nbsp;only&nbsp;logged&nbsp;in&nbsp;the&nbsp;file&nbsp;status.</span></div></li> +<li><div class="src-line"><a name="a639"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a640"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;on&nbsp;an&nbsp;unrecoverable&nbsp;failure,</span></div></li> +<li><div class="src-line"><a name="a641"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;list&nbsp;of&nbsp;the&nbsp;files&nbsp;in&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a642"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a643"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodlistContent">listContent</a><span class="src-sym">(</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a644"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a645"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a646"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a647"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;error&nbsp;handler</span></div></li> +<li><div class="src-line"><a name="a648"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a649"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a650"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a651"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFormat">privCheckFormat</a><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a652"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a653"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a654"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a655"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;extracting&nbsp;fct</span></div></li> +<li><div class="src-line"><a name="a656"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a657"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivList">privList</a><span class="src-sym">(</span><span class="src-var">$p_list</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a658"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a659"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$p_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a660"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a661"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a662"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a663"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a664"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$p_list</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a665"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a666"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a667"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a668"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a669"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a670"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;extract($p_path=&quot;./&quot;,&nbsp;$p_remove_path=&quot;&quot;)</span></div></li> +<li><div class="src-line"><a name="a671"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;extract([$p_option,&nbsp;$p_option_value,&nbsp;...])</span></div></li> +<li><div class="src-line"><a name="a672"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a673"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;supports&nbsp;two&nbsp;synopsis.&nbsp;The&nbsp;first&nbsp;one&nbsp;is&nbsp;historical.</span></div></li> +<li><div class="src-line"><a name="a674"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;extract&nbsp;all&nbsp;the&nbsp;files&nbsp;/&nbsp;directories&nbsp;from&nbsp;the&nbsp;archive&nbsp;to&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a675"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;folder&nbsp;indicated&nbsp;in&nbsp;$p_path.</span></div></li> +<li><div class="src-line"><a name="a676"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;If&nbsp;you&nbsp;want&nbsp;to&nbsp;ignore&nbsp;the&nbsp;'root'&nbsp;part&nbsp;of&nbsp;path&nbsp;of&nbsp;the&nbsp;memorized&nbsp;files</span></div></li> +<li><div class="src-line"><a name="a677"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;you&nbsp;can&nbsp;indicate&nbsp;this&nbsp;in&nbsp;the&nbsp;optional&nbsp;$p_remove_path&nbsp;parameter.</span></div></li> +<li><div class="src-line"><a name="a678"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;By&nbsp;default,&nbsp;if&nbsp;a&nbsp;newer&nbsp;file&nbsp;with&nbsp;the&nbsp;same&nbsp;name&nbsp;already&nbsp;exists,&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a679"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;file&nbsp;is&nbsp;not&nbsp;extracted.</span></div></li> +<li><div class="src-line"><a name="a680"></a>&nbsp;&nbsp;<span class="src-comm">//</span></div></li> +<li><div class="src-line"><a name="a681"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;If&nbsp;both&nbsp;PCLZIP_OPT_PATH&nbsp;and&nbsp;PCLZIP_OPT_ADD_PATH&nbsp;aoptions</span></div></li> +<li><div class="src-line"><a name="a682"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;are&nbsp;used,&nbsp;the&nbsp;path&nbsp;indicated&nbsp;in&nbsp;PCLZIP_OPT_ADD_PATH&nbsp;is&nbsp;append</span></div></li> +<li><div class="src-line"><a name="a683"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;at&nbsp;the&nbsp;end&nbsp;of&nbsp;the&nbsp;path&nbsp;value&nbsp;of&nbsp;PCLZIP_OPT_PATH.</span></div></li> +<li><div class="src-line"><a name="a684"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a685"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_path&nbsp;:&nbsp;Path&nbsp;where&nbsp;the&nbsp;files&nbsp;and&nbsp;directories&nbsp;are&nbsp;to&nbsp;be&nbsp;extracted</span></div></li> +<li><div class="src-line"><a name="a686"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_remove_path&nbsp;:&nbsp;First&nbsp;part&nbsp;('root'&nbsp;part)&nbsp;of&nbsp;the&nbsp;memorized&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a687"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if&nbsp;any&nbsp;similar)&nbsp;to&nbsp;remove&nbsp;while&nbsp;extracting.</span></div></li> +<li><div class="src-line"><a name="a688"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Options&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a689"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a690"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_ADD_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a691"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_REMOVE_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a692"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_REMOVE_ALL_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a693"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_CB_PRE_EXTRACT&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a694"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_CB_POST_EXTRACT&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a695"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a696"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;or&nbsp;a&nbsp;negative&nbsp;value&nbsp;on&nbsp;failure,</span></div></li> +<li><div class="src-line"><a name="a697"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;list&nbsp;of&nbsp;the&nbsp;extracted&nbsp;files,&nbsp;with&nbsp;a&nbsp;status&nbsp;of&nbsp;the&nbsp;action.</span></div></li> +<li><div class="src-line"><a name="a698"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;(see&nbsp;PclZip::listContent()&nbsp;for&nbsp;list&nbsp;entry&nbsp;format)</span></div></li> +<li><div class="src-line"><a name="a699"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a700"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodextract">extract</a><span class="src-sym">(</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a701"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a702"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a703"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a704"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;error&nbsp;handler</span></div></li> +<li><div class="src-line"><a name="a705"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a706"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a707"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a708"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFormat">privCheckFormat</a><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a709"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a710"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a711"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a712"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;default&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a713"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a714"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;$v_path&nbsp;=&nbsp;&quot;./&quot;;</span></div></li> +<li><div class="src-line"><a name="a715"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_path&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a716"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_remove_path&nbsp;</span>=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a717"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_remove_all_path&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a718"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a719"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;variable&nbsp;options&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a720"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/func_num_args">func_num_args</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a721"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a722"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Default&nbsp;values&nbsp;for&nbsp;option</span></div></li> +<li><div class="src-line"><a name="a723"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_AS_STRING">PCLZIP_OPT_EXTRACT_AS_STRING</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-id">FALSE</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a724"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a725"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a726"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a727"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a728"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_arg_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/func_get_args">func_get_args</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a729"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a730"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;first&nbsp;arg</span></div></li> +<li><div class="src-line"><a name="a731"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><a href="http://www.php.net/is_integer">is_integer</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>&gt;&nbsp;<span class="src-num">77000</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a732"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a733"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Parse&nbsp;the&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a734"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivParseOptions">privParseOptions</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a735"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PATH">PCLZIP_OPT_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a736"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a737"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a738"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a739"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a740"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a741"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_SET_CHMOD">PCLZIP_OPT_SET_CHMOD</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a742"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a743"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_EREG">PCLZIP_OPT_BY_EREG</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a744"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a745"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a746"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_AS_STRING">PCLZIP_OPT_EXTRACT_AS_STRING</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a747"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_IN_OUTPUT">PCLZIP_OPT_EXTRACT_IN_OUTPUT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a748"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REPLACE_NEWER">PCLZIP_OPT_REPLACE_NEWER</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a749"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a750"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_DIR_RESTRICTION">PCLZIP_OPT_EXTRACT_DIR_RESTRICTION</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a751"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a752"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_ON">PCLZIP_OPT_TEMP_FILE_ON</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a753"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a754"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a755"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a756"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a757"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a758"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a759"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a760"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PATH">PCLZIP_OPT_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a761"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_path&nbsp;</span>=&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PATH">PCLZIP_OPT_PATH</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a762"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a763"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a764"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_remove_path&nbsp;</span>=&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a765"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a766"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a767"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_remove_all_path&nbsp;</span>=&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a768"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a769"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a770"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;for&nbsp;'/'&nbsp;in&nbsp;last&nbsp;path&nbsp;char</span></div></li> +<li><div class="src-line"><a name="a771"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_path</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$v_path</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-str">'/'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a772"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_path&nbsp;</span>.=&nbsp;<span class="src-str">'/'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a773"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a774"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_path&nbsp;</span>.=&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a775"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a776"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a777"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a778"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;2&nbsp;args</span></div></li> +<li><div class="src-line"><a name="a779"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;we&nbsp;need&nbsp;to&nbsp;support&nbsp;the&nbsp;first&nbsp;historic&nbsp;synopsis&nbsp;of&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a780"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;method.</span></div></li> +<li><div class="src-line"><a name="a781"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a782"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a783"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;first&nbsp;argument</span></div></li> +<li><div class="src-line"><a name="a784"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_path&nbsp;</span>=&nbsp;<span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a785"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a786"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;the&nbsp;optional&nbsp;second&nbsp;argument</span></div></li> +<li><div class="src-line"><a name="a787"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a788"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_remove_path&nbsp;</span>=&nbsp;<span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a789"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a790"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&gt;&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a791"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a792"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;number&nbsp;/&nbsp;type&nbsp;of&nbsp;arguments&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a793"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a794"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a795"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a796"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a797"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a798"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a799"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a800"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;default&nbsp;option&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a801"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivOptionDefaultThreshold">privOptionDefaultThreshold</a><span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a802"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a803"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Trace</span></div></li> +<li><div class="src-line"><a name="a804"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a805"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;extracting&nbsp;fct</span></div></li> +<li><div class="src-line"><a name="a806"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a807"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivExtractByRule">privExtractByRule</a><span class="src-sym">(</span><span class="src-var">$p_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_remove_path</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a808"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_remove_all_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a809"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>&lt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a810"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$p_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a811"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a812"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a813"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a814"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a815"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$p_list</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a816"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a817"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a818"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a819"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a820"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a821"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a822"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;extractByIndex($p_index,&nbsp;$p_path=&quot;./&quot;,&nbsp;$p_remove_path=&quot;&quot;)</span></div></li> +<li><div class="src-line"><a name="a823"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;extractByIndex($p_index,&nbsp;[$p_option,&nbsp;$p_option_value,&nbsp;...])</span></div></li> +<li><div class="src-line"><a name="a824"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a825"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;supports&nbsp;two&nbsp;synopsis.&nbsp;The&nbsp;first&nbsp;one&nbsp;is&nbsp;historical.</span></div></li> +<li><div class="src-line"><a name="a826"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;is&nbsp;doing&nbsp;a&nbsp;partial&nbsp;extract&nbsp;of&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a827"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;extracted&nbsp;files&nbsp;or&nbsp;folders&nbsp;are&nbsp;identified&nbsp;by&nbsp;their&nbsp;index&nbsp;in&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a828"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;archive&nbsp;(from&nbsp;0&nbsp;to&nbsp;n).</span></div></li> +<li><div class="src-line"><a name="a829"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Note&nbsp;that&nbsp;if&nbsp;the&nbsp;index&nbsp;identify&nbsp;a&nbsp;folder,&nbsp;only&nbsp;the&nbsp;folder&nbsp;entry&nbsp;is</span></div></li> +<li><div class="src-line"><a name="a830"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;extracted,&nbsp;not&nbsp;all&nbsp;the&nbsp;files&nbsp;included&nbsp;in&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a831"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a832"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_index&nbsp;:&nbsp;A&nbsp;single&nbsp;index&nbsp;(integer)&nbsp;or&nbsp;a&nbsp;string&nbsp;of&nbsp;indexes&nbsp;of&nbsp;files&nbsp;to</span></div></li> +<li><div class="src-line"><a name="a833"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;extract.&nbsp;The&nbsp;form&nbsp;of&nbsp;the&nbsp;string&nbsp;is&nbsp;&quot;0,4-6,8-12&quot;&nbsp;with&nbsp;only&nbsp;numbers</span></div></li> +<li><div class="src-line"><a name="a834"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;and&nbsp;'-'&nbsp;for&nbsp;range&nbsp;or&nbsp;','&nbsp;to&nbsp;separate&nbsp;ranges.&nbsp;No&nbsp;spaces&nbsp;or&nbsp;';'</span></div></li> +<li><div class="src-line"><a name="a835"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;are&nbsp;allowed.</span></div></li> +<li><div class="src-line"><a name="a836"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_path&nbsp;:&nbsp;Path&nbsp;where&nbsp;the&nbsp;files&nbsp;and&nbsp;directories&nbsp;are&nbsp;to&nbsp;be&nbsp;extracted</span></div></li> +<li><div class="src-line"><a name="a837"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_remove_path&nbsp;:&nbsp;First&nbsp;part&nbsp;('root'&nbsp;part)&nbsp;of&nbsp;the&nbsp;memorized&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a838"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if&nbsp;any&nbsp;similar)&nbsp;to&nbsp;remove&nbsp;while&nbsp;extracting.</span></div></li> +<li><div class="src-line"><a name="a839"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Options&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a840"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a841"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_ADD_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a842"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_REMOVE_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a843"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_REMOVE_ALL_PATH&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a844"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_EXTRACT_AS_STRING&nbsp;:&nbsp;The&nbsp;files&nbsp;are&nbsp;extracted&nbsp;as&nbsp;strings&nbsp;and</span></div></li> +<li><div class="src-line"><a name="a845"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;not&nbsp;as&nbsp;files.</span></div></li> +<li><div class="src-line"><a name="a846"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;resulting&nbsp;content&nbsp;is&nbsp;in&nbsp;a&nbsp;new&nbsp;field&nbsp;'content'&nbsp;in&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a847"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;structure.</span></div></li> +<li><div class="src-line"><a name="a848"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This&nbsp;option&nbsp;must&nbsp;be&nbsp;used&nbsp;alone&nbsp;(any&nbsp;other&nbsp;options&nbsp;are&nbsp;ignored).</span></div></li> +<li><div class="src-line"><a name="a849"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_CB_PRE_EXTRACT&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a850"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_CB_POST_EXTRACT&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a851"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a852"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;on&nbsp;failure,</span></div></li> +<li><div class="src-line"><a name="a853"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;list&nbsp;of&nbsp;the&nbsp;extracted&nbsp;files,&nbsp;with&nbsp;a&nbsp;status&nbsp;of&nbsp;the&nbsp;action.</span></div></li> +<li><div class="src-line"><a name="a854"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;(see&nbsp;PclZip::listContent()&nbsp;for&nbsp;list&nbsp;entry&nbsp;format)</span></div></li> +<li><div class="src-line"><a name="a855"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a856"></a>&nbsp;&nbsp;<span class="src-comm">//function&nbsp;extractByIndex($p_index,&nbsp;options...)</span></div></li> +<li><div class="src-line"><a name="a857"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodextractByIndex">extractByIndex</a><span class="src-sym">(</span><span class="src-var">$p_index</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a858"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a859"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a860"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a861"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;error&nbsp;handler</span></div></li> +<li><div class="src-line"><a name="a862"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a863"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a864"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a865"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFormat">privCheckFormat</a><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a866"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a867"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a868"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a869"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;default&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a870"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a871"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;$v_path&nbsp;=&nbsp;&quot;./&quot;;</span></div></li> +<li><div class="src-line"><a name="a872"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_path&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a873"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_remove_path&nbsp;</span>=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a874"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_remove_all_path&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a875"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a876"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;variable&nbsp;options&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a877"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/func_num_args">func_num_args</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a878"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a879"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Default&nbsp;values&nbsp;for&nbsp;option</span></div></li> +<li><div class="src-line"><a name="a880"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_AS_STRING">PCLZIP_OPT_EXTRACT_AS_STRING</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-id">FALSE</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a881"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a882"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a883"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&gt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a884"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a885"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_arg_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/func_get_args">func_get_args</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a886"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a887"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Remove&nbsp;form&nbsp;the&nbsp;options&nbsp;list&nbsp;the&nbsp;first&nbsp;argument</span></div></li> +<li><div class="src-line"><a name="a888"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/array_shift">array_shift</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a889"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size</span>--<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a890"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a891"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;first&nbsp;arg</span></div></li> +<li><div class="src-line"><a name="a892"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><a href="http://www.php.net/is_integer">is_integer</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>&gt;&nbsp;<span class="src-num">77000</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a893"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a894"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Parse&nbsp;the&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a895"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivParseOptions">privParseOptions</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a896"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PATH">PCLZIP_OPT_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a897"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a898"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a899"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_AS_STRING">PCLZIP_OPT_EXTRACT_AS_STRING</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a900"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a901"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a902"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a903"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_SET_CHMOD">PCLZIP_OPT_SET_CHMOD</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a904"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REPLACE_NEWER">PCLZIP_OPT_REPLACE_NEWER</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a905"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a906"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_DIR_RESTRICTION">PCLZIP_OPT_EXTRACT_DIR_RESTRICTION</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a907"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a908"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_ON">PCLZIP_OPT_TEMP_FILE_ON</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a909"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span></div></li> +<li><div class="src-line"><a name="a910"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a911"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a912"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a913"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a914"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a915"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a916"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PATH">PCLZIP_OPT_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a917"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_path&nbsp;</span>=&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PATH">PCLZIP_OPT_PATH</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a918"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a919"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a920"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_remove_path&nbsp;</span>=&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a921"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a922"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a923"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_remove_all_path&nbsp;</span>=&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a924"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a925"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a926"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;for&nbsp;'/'&nbsp;in&nbsp;last&nbsp;path&nbsp;char</span></div></li> +<li><div class="src-line"><a name="a927"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_path</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$v_path</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-str">'/'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a928"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_path&nbsp;</span>.=&nbsp;<span class="src-str">'/'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a929"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a930"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_path&nbsp;</span>.=&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a931"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a932"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_AS_STRING">PCLZIP_OPT_EXTRACT_AS_STRING</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a933"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_AS_STRING">PCLZIP_OPT_EXTRACT_AS_STRING</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-id">FALSE</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a934"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a935"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a936"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a937"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a938"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a939"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;2&nbsp;args</span></div></li> +<li><div class="src-line"><a name="a940"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;we&nbsp;need&nbsp;to&nbsp;support&nbsp;the&nbsp;first&nbsp;historic&nbsp;synopsis&nbsp;of&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a941"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;method.</span></div></li> +<li><div class="src-line"><a name="a942"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a943"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a944"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;first&nbsp;argument</span></div></li> +<li><div class="src-line"><a name="a945"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_path&nbsp;</span>=&nbsp;<span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a946"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a947"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;the&nbsp;optional&nbsp;second&nbsp;argument</span></div></li> +<li><div class="src-line"><a name="a948"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a949"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_remove_path&nbsp;</span>=&nbsp;<span class="src-var">$v_arg_list</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a950"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a951"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&gt;&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a952"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a953"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;number&nbsp;/&nbsp;type&nbsp;of&nbsp;arguments&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a954"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a955"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a956"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a957"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a958"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a959"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a960"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a961"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Trace</span></div></li> +<li><div class="src-line"><a name="a962"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a963"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Trick</span></div></li> +<li><div class="src-line"><a name="a964"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;I&nbsp;want&nbsp;to&nbsp;reuse&nbsp;extractByRule(),&nbsp;so&nbsp;I&nbsp;need&nbsp;to&nbsp;parse&nbsp;the&nbsp;$p_index</span></div></li> +<li><div class="src-line"><a name="a965"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;with&nbsp;privParseOptions()</span></div></li> +<li><div class="src-line"><a name="a966"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_arg_trick&nbsp;</span>=&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_index</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a967"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options_trick&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a968"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivParseOptions">privParseOptions</a><span class="src-sym">(</span><span class="src-var">$v_arg_trick</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_arg_trick</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options_trick</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a969"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'&nbsp;</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a970"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a971"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a972"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a973"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_options_trick</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a974"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a975"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;default&nbsp;option&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a976"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivOptionDefaultThreshold">privOptionDefaultThreshold</a><span class="src-sym">(</span><span class="src-var">$v_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a977"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a978"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;extracting&nbsp;fct</span></div></li> +<li><div class="src-line"><a name="a979"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivExtractByRule">privExtractByRule</a><span class="src-sym">(</span><span class="src-var">$p_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_remove_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_remove_all_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">))&nbsp;</span>&lt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a980"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a981"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a982"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a983"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a984"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$p_list</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a985"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a986"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a987"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a988"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a989"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a990"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;delete([$p_option,&nbsp;$p_option_value,&nbsp;...])</span></div></li> +<li><div class="src-line"><a name="a991"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a992"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;removes&nbsp;files&nbsp;from&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a993"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;If&nbsp;no&nbsp;parameters&nbsp;are&nbsp;given,&nbsp;then&nbsp;all&nbsp;the&nbsp;archive&nbsp;is&nbsp;emptied.</span></div></li> +<li><div class="src-line"><a name="a994"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a995"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;None&nbsp;or&nbsp;optional&nbsp;arguments.</span></div></li> +<li><div class="src-line"><a name="a996"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Options&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a997"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_BY_INDEX&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a998"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_BY_NAME&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a999"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_BY_EREG&nbsp;:&nbsp;</span></div></li> +<li><div class="src-line"><a name="a1000"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;PCLZIP_OPT_BY_PREG&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1001"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1002"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;on&nbsp;failure,</span></div></li> +<li><div class="src-line"><a name="a1003"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;list&nbsp;of&nbsp;the&nbsp;files&nbsp;which&nbsp;are&nbsp;still&nbsp;present&nbsp;in&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a1004"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;(see&nbsp;PclZip::listContent()&nbsp;for&nbsp;list&nbsp;entry&nbsp;format)</span></div></li> +<li><div class="src-line"><a name="a1005"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1006"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methoddelete">delete</a><span class="src-sym">(</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1007"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1008"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1009"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1010"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;error&nbsp;handler</span></div></li> +<li><div class="src-line"><a name="a1011"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1012"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1013"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a1014"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFormat">privCheckFormat</a><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1015"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1016"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1017"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1018"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;default&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a1019"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_options&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1020"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1021"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;variable&nbsp;options&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a1022"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/func_num_args">func_num_args</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1023"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1024"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a1025"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1026"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;arguments</span></div></li> +<li><div class="src-line"><a name="a1027"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_arg_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/func_get_args">func_get_args</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1028"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1029"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Parse&nbsp;the&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a1030"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivParseOptions">privParseOptions</a><span class="src-sym">(</span><span class="src-var">$v_arg_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1031"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1032"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_EREG">PCLZIP_OPT_BY_EREG</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1033"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1034"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'optional'&nbsp;</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1035"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1036"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1037"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1038"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1039"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1040"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a1041"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDisableMagicQuotes">privDisableMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1042"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1043"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;delete&nbsp;fct</span></div></li> +<li><div class="src-line"><a name="a1044"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1045"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDeleteByRule">privDeleteByRule</a><span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1046"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1047"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1048"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1049"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1050"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1051"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a1052"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1053"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1054"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1055"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_list</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1056"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1057"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1058"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1059"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1060"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;deleteByIndex()</span></div></li> +<li><div class="src-line"><a name="a1061"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1062"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;*****&nbsp;Deprecated&nbsp;*****</span></div></li> +<li><div class="src-line"><a name="a1063"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;delete(PCLZIP_OPT_BY_INDEX,&nbsp;$p_index)&nbsp;should&nbsp;be&nbsp;prefered.</span></div></li> +<li><div class="src-line"><a name="a1064"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1065"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methoddeleteByIndex">deleteByIndex</a><span class="src-sym">(</span><span class="src-var">$p_index</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1066"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1067"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1068"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_list&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methoddelete">delete</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_index</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1069"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1070"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1071"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$p_list</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1072"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1073"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1074"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1075"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1076"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;properties()</span></div></li> +<li><div class="src-line"><a name="a1077"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1078"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;gives&nbsp;the&nbsp;properties&nbsp;of&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a1079"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;properties&nbsp;are&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1080"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nb&nbsp;:&nbsp;Number&nbsp;of&nbsp;files&nbsp;in&nbsp;the&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a1081"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;comment&nbsp;:&nbsp;Comment&nbsp;associated&nbsp;with&nbsp;the&nbsp;archive&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a1082"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;status&nbsp;:&nbsp;not_exist,&nbsp;ok</span></div></li> +<li><div class="src-line"><a name="a1083"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1084"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;None</span></div></li> +<li><div class="src-line"><a name="a1085"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1086"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;on&nbsp;failure,</span></div></li> +<li><div class="src-line"><a name="a1087"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;An&nbsp;array&nbsp;with&nbsp;the&nbsp;archive&nbsp;properties.</span></div></li> +<li><div class="src-line"><a name="a1088"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1089"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodproperties">properties</a><span class="src-sym">(</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1090"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1091"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1092"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;error&nbsp;handler</span></div></li> +<li><div class="src-line"><a name="a1093"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1094"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1095"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a1096"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDisableMagicQuotes">privDisableMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1097"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1098"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a1099"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFormat">privCheckFormat</a><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1102"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1103"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1104"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Default&nbsp;properties</span></div></li> +<li><div class="src-line"><a name="a1105"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_prop&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1106"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_prop</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1107"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_prop</span><span class="src-sym">[</span><span class="src-str">'nb'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1108"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_prop</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">'not_exist'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1109"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1110"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;file&nbsp;exists</span></div></li> +<li><div class="src-line"><a name="a1111"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/is_file">is_file</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a1112"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a1114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">,&nbsp;</span><span class="src-str">'rb'</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1118"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;open&nbsp;archive&nbsp;\''</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a>.<span class="src-str">'\'&nbsp;in&nbsp;binary&nbsp;read&nbsp;mode'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1120"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1121"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1123"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1124"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;central&nbsp;directory&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a1126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_central_dir&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadEndCentralDir">privReadEndCentralDir</a><span class="src-sym">(</span><span class="src-var">$v_central_dir</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1131"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1132"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a1134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1135"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;user&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a1137"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_prop</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_prop</span><span class="src-sym">[</span><span class="src-str">'nb'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'entries'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_prop</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">'ok'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1140"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1141"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1142"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a1143"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1144"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1145"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1146"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_prop</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1147"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1148"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1149"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1150"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1151"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;duplicate()</span></div></li> +<li><div class="src-line"><a name="a1152"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1153"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;creates&nbsp;an&nbsp;archive&nbsp;by&nbsp;copying&nbsp;the&nbsp;content&nbsp;of&nbsp;an&nbsp;other&nbsp;one.&nbsp;If</span></div></li> +<li><div class="src-line"><a name="a1154"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;the&nbsp;archive&nbsp;already&nbsp;exist,&nbsp;it&nbsp;is&nbsp;replaced&nbsp;by&nbsp;the&nbsp;new&nbsp;one&nbsp;without&nbsp;any&nbsp;warning.</span></div></li> +<li><div class="src-line"><a name="a1155"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1156"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_archive&nbsp;:&nbsp;The&nbsp;filename&nbsp;of&nbsp;a&nbsp;valid&nbsp;archive,&nbsp;or</span></div></li> +<li><div class="src-line"><a name="a1157"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a&nbsp;valid&nbsp;PclZip&nbsp;object.</span></div></li> +<li><div class="src-line"><a name="a1158"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1159"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;1&nbsp;on&nbsp;success.</span></div></li> +<li><div class="src-line"><a name="a1160"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;or&nbsp;a&nbsp;negative&nbsp;value&nbsp;on&nbsp;error&nbsp;(error&nbsp;code).</span></div></li> +<li><div class="src-line"><a name="a1161"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1162"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodduplicate">duplicate</a><span class="src-sym">(</span><span class="src-var">$p_archive</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1163"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1164"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1165"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1166"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;error&nbsp;handler</span></div></li> +<li><div class="src-line"><a name="a1167"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1168"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1169"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;$p_archive&nbsp;is&nbsp;a&nbsp;PclZip&nbsp;object</span></div></li> +<li><div class="src-line"><a name="a1170"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><a href="http://www.php.net/is_object">is_object</a><span class="src-sym">(</span><span class="src-var">$p_archive</span><span class="src-sym">))&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/get_class">get_class</a><span class="src-sym">(</span><span class="src-var">$p_archive</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'pclzip'</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a1171"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1172"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Duplicate&nbsp;the&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a1174"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDuplicate">privDuplicate</a><span class="src-sym">(</span><span class="src-var">$p_archive</span><span class="src-sym">-&gt;</span><span class="src-id">zipname</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1175"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1176"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1177"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;$p_archive&nbsp;is&nbsp;a&nbsp;string&nbsp;(so&nbsp;a&nbsp;filename)</span></div></li> +<li><div class="src-line"><a name="a1178"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$p_archive</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a1179"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1180"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;that&nbsp;$p_archive&nbsp;is&nbsp;a&nbsp;valid&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a1182"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;Should&nbsp;also&nbsp;check&nbsp;the&nbsp;archive&nbsp;format</span></div></li> +<li><div class="src-line"><a name="a1183"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_file">is_file</a><span class="src-sym">(</span><span class="src-var">$p_archive</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1184"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1185"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_FILE">PCLZIP_ERR_MISSING_FILE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;No&nbsp;file&nbsp;with&nbsp;filename&nbsp;'&quot;</span>.<span class="src-var">$p_archive</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1186"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_FILE">PCLZIP_ERR_MISSING_FILE</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1187"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1188"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1189"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Duplicate&nbsp;the&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a1190"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDuplicate">privDuplicate</a><span class="src-sym">(</span><span class="src-var">$p_archive</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1192"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1193"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1194"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Invalid&nbsp;variable</span></div></li> +<li><div class="src-line"><a name="a1195"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a1196"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;variable&nbsp;type&nbsp;p_archive_to_add&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1200"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1201"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1202"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1203"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1204"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1205"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1206"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1207"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1208"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;merge()</span></div></li> +<li><div class="src-line"><a name="a1209"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1210"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;merge&nbsp;the&nbsp;$p_archive_to_add&nbsp;archive&nbsp;at&nbsp;the&nbsp;end&nbsp;of&nbsp;the&nbsp;current</span></div></li> +<li><div class="src-line"><a name="a1211"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;one&nbsp;($this).</span></div></li> +<li><div class="src-line"><a name="a1212"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;If&nbsp;the&nbsp;archive&nbsp;($this)&nbsp;does&nbsp;not&nbsp;exist,&nbsp;the&nbsp;merge&nbsp;becomes&nbsp;a&nbsp;duplicate.</span></div></li> +<li><div class="src-line"><a name="a1213"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;If&nbsp;the&nbsp;$p_archive_to_add&nbsp;archive&nbsp;does&nbsp;not&nbsp;exist,&nbsp;the&nbsp;merge&nbsp;is&nbsp;a&nbsp;success.</span></div></li> +<li><div class="src-line"><a name="a1214"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1215"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_archive_to_add&nbsp;:&nbsp;It&nbsp;can&nbsp;be&nbsp;directly&nbsp;the&nbsp;filename&nbsp;of&nbsp;a&nbsp;valid&nbsp;zip&nbsp;archive,</span></div></li> +<li><div class="src-line"><a name="a1216"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or&nbsp;a&nbsp;PclZip&nbsp;object&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a1217"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1218"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;1&nbsp;on&nbsp;success,</span></div></li> +<li><div class="src-line"><a name="a1219"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;or&nbsp;negative&nbsp;values&nbsp;on&nbsp;error&nbsp;(see&nbsp;below).</span></div></li> +<li><div class="src-line"><a name="a1220"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1221"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodmerge">merge</a><span class="src-sym">(</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1222"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1223"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1224"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1225"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;error&nbsp;handler</span></div></li> +<li><div class="src-line"><a name="a1226"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1227"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1228"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a1229"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFormat">privCheckFormat</a><span class="src-sym">(</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1230"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1231"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1232"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1233"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;$p_archive_to_add&nbsp;is&nbsp;a&nbsp;PclZip&nbsp;object</span></div></li> +<li><div class="src-line"><a name="a1234"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><a href="http://www.php.net/is_object">is_object</a><span class="src-sym">(</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">))&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/get_class">get_class</a><span class="src-sym">(</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'pclzip'</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a1235"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1236"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1237"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Merge&nbsp;the&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a1238"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivMerge">privMerge</a><span class="src-sym">(</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1239"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1240"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1241"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;$p_archive_to_add&nbsp;is&nbsp;a&nbsp;string&nbsp;(so&nbsp;a&nbsp;filename)</span></div></li> +<li><div class="src-line"><a name="a1242"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a1243"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1244"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1245"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;a&nbsp;temporary&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a1246"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_object_archive&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">(</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1247"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1248"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Merge&nbsp;the&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a1249"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivMerge">privMerge</a><span class="src-sym">(</span><span class="src-var">$v_object_archive</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1250"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1251"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1252"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Invalid&nbsp;variable</span></div></li> +<li><div class="src-line"><a name="a1253"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a1254"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1256"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;variable&nbsp;type&nbsp;p_archive_to_add&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1257"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1258"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1259"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1260"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1261"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1262"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1263"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1264"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1265"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1266"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1267"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1268"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;errorCode()</span></div></li> +<li><div class="src-line"><a name="a1269"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1270"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1271"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1272"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1273"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1274"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERROR_EXTERNAL">PCLZIP_ERROR_EXTERNAL</a>&nbsp;</span>==&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1275"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-id">PclErrorCode</span><span class="src-sym">(</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1276"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1277"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1278"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$error_code">error_code</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1279"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1280"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1281"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1282"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1283"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1284"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;errorName()</span></div></li> +<li><div class="src-line"><a name="a1285"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1286"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1287"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1288"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methoderrorName">errorName</a><span class="src-sym">(</span><span class="src-var">$p_with_code</span>=<span class="src-id">false</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1289"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1290"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_name&nbsp;</span>=&nbsp;<span class="src-key">array&nbsp;</span><span class="src-sym">(&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_NO_ERROR">PCLZIP_ERR_NO_ERROR</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_NO_ERROR'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1291"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_WRITE_OPEN_FAIL">PCLZIP_ERR_WRITE_OPEN_FAIL</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_WRITE_OPEN_FAIL'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1292"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_READ_OPEN_FAIL'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1293"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_INVALID_PARAMETER'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1294"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_FILE">PCLZIP_ERR_MISSING_FILE</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_MISSING_FILE'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1295"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_FILENAME_TOO_LONG">PCLZIP_ERR_FILENAME_TOO_LONG</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_FILENAME_TOO_LONG'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1296"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ZIP">PCLZIP_ERR_INVALID_ZIP</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_INVALID_ZIP'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1297"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_EXTRACTED_FILE">PCLZIP_ERR_BAD_EXTRACTED_FILE</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_BAD_EXTRACTED_FILE'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1298"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_DIR_CREATE_FAIL">PCLZIP_ERR_DIR_CREATE_FAIL</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_DIR_CREATE_FAIL'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1299"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_EXTENSION">PCLZIP_ERR_BAD_EXTENSION</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_BAD_EXTENSION'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1300"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_BAD_FORMAT'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1301"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_DELETE_FILE_FAIL">PCLZIP_ERR_DELETE_FILE_FAIL</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_DELETE_FILE_FAIL'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1302"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_RENAME_FILE_FAIL">PCLZIP_ERR_RENAME_FILE_FAIL</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_RENAME_FILE_FAIL'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1303"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_CHECKSUM">PCLZIP_ERR_BAD_CHECKSUM</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_BAD_CHECKSUM'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1304"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ARCHIVE_ZIP">PCLZIP_ERR_INVALID_ARCHIVE_ZIP</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_INVALID_ARCHIVE_ZIP'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1305"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_MISSING_OPTION_VALUE'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1306"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_OPTION_VALUE">PCLZIP_ERR_INVALID_OPTION_VALUE</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_INVALID_OPTION_VALUE'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1307"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_UNSUPPORTED_COMPRESSION">PCLZIP_ERR_UNSUPPORTED_COMPRESSION</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_UNSUPPORTED_COMPRESSION'</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1308"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_UNSUPPORTED_ENCRYPTION">PCLZIP_ERR_UNSUPPORTED_ENCRYPTION</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_UNSUPPORTED_ENCRYPTION'</span></div></li> +<li><div class="src-line"><a name="a1309"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE">PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE'</span></div></li> +<li><div class="src-line"><a name="a1310"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">,</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_DIRECTORY_RESTRICTION">PCLZIP_ERR_DIRECTORY_RESTRICTION</a>&nbsp;</span>=&gt;&nbsp;<span class="src-str">'PCLZIP_ERR_DIRECTORY_RESTRICTION'</span></div></li> +<li><div class="src-line"><a name="a1311"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1312"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1313"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_name</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$error_code">error_code</a><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1314"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_value&nbsp;</span>=&nbsp;<span class="src-var">$v_name</span><span class="src-sym">[</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$error_code">error_code</a><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1315"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1316"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1317"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_value&nbsp;</span>=&nbsp;<span class="src-str">'NoName'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1318"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1319"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1320"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_with_code</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1321"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-var">$v_value</span>.<span class="src-str">'&nbsp;('</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$error_code">error_code</a>.<span class="src-str">')'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1322"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1323"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1324"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1325"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1326"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1327"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1328"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1329"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1330"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;errorInfo()</span></div></li> +<li><div class="src-line"><a name="a1331"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1332"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1333"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1334"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methoderrorInfo">errorInfo</a><span class="src-sym">(</span><span class="src-var">$p_full</span>=<span class="src-id">false</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1335"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1336"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERROR_EXTERNAL">PCLZIP_ERROR_EXTERNAL</a>&nbsp;</span>==&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1337"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-id">PclErrorString</span><span class="src-sym">(</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1338"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1339"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1340"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_full</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1341"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methoderrorName">errorName</a><span class="src-sym">(</span><span class="src-id">true</span><span class="src-sym">)</span>.<span class="src-str">&quot;&nbsp;:&nbsp;&quot;</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$error_string">error_string</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1342"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1343"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1344"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$error_string">error_string</a>.<span class="src-str">&quot;&nbsp;[code&nbsp;&quot;</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$error_code">error_code</a>.<span class="src-str">&quot;]&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1345"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1346"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1347"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1348"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1349"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1350"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1351"></a><span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1352"></a><span class="src-comm">//&nbsp;*****&nbsp;UNDER&nbsp;THIS&nbsp;LINE&nbsp;ARE&nbsp;DEFINED&nbsp;PRIVATE&nbsp;INTERNAL&nbsp;FUNCTIONS&nbsp;*****</span></div></li> +<li><div class="src-line"><a name="a1353"></a><span class="src-comm">//&nbsp;*****&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*****</span></div></li> +<li><div class="src-line"><a name="a1354"></a><span class="src-comm">//&nbsp;*****&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;THESES&nbsp;FUNCTIONS&nbsp;MUST&nbsp;NOT&nbsp;BE&nbsp;USED&nbsp;DIRECTLY&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*****</span></div></li> +<li><div class="src-line"><a name="a1355"></a><span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1356"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1357"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1358"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1359"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1360"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privCheckFormat()</span></div></li> +<li><div class="src-line"><a name="a1361"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1362"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;check&nbsp;that&nbsp;the&nbsp;archive&nbsp;exists&nbsp;and&nbsp;is&nbsp;a&nbsp;valid&nbsp;zip&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a1363"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Several&nbsp;level&nbsp;of&nbsp;check&nbsp;exists.&nbsp;(futur)</span></div></li> +<li><div class="src-line"><a name="a1364"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1365"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_level&nbsp;:&nbsp;Level&nbsp;of&nbsp;check.&nbsp;Default&nbsp;0.</span></div></li> +<li><div class="src-line"><a name="a1366"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;:&nbsp;Check&nbsp;the&nbsp;first&nbsp;bytes&nbsp;(magic&nbsp;codes)&nbsp;(default&nbsp;value))</span></div></li> +<li><div class="src-line"><a name="a1367"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;:&nbsp;0&nbsp;+&nbsp;Check&nbsp;the&nbsp;central&nbsp;directory&nbsp;(futur)</span></div></li> +<li><div class="src-line"><a name="a1368"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;:&nbsp;1&nbsp;+&nbsp;Check&nbsp;each&nbsp;file&nbsp;header&nbsp;(futur)</span></div></li> +<li><div class="src-line"><a name="a1369"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1370"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;true&nbsp;on&nbsp;success,</span></div></li> +<li><div class="src-line"><a name="a1371"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;false&nbsp;on&nbsp;error,&nbsp;the&nbsp;error&nbsp;code&nbsp;is&nbsp;set.</span></div></li> +<li><div class="src-line"><a name="a1372"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1373"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFormat">privCheckFormat</a><span class="src-sym">(</span><span class="src-var">$p_level</span>=<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1374"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1375"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1376"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1377"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;file&nbsp;system&nbsp;cache</span></div></li> +<li><div class="src-line"><a name="a1378"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/clearstatcache">clearstatcache</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1379"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1380"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;error&nbsp;handler</span></div></li> +<li><div class="src-line"><a name="a1381"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1382"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1383"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;file&nbsp;exits</span></div></li> +<li><div class="src-line"><a name="a1384"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_file">is_file</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1385"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1386"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_FILE">PCLZIP_ERR_MISSING_FILE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Missing&nbsp;archive&nbsp;file&nbsp;'&quot;</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1387"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-id">false</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1388"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1389"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1390"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;that&nbsp;the&nbsp;file&nbsp;is&nbsp;readeable</span></div></li> +<li><div class="src-line"><a name="a1391"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_readable">is_readable</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1392"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1393"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Unable&nbsp;to&nbsp;read&nbsp;archive&nbsp;'&quot;</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1394"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return</span><span class="src-sym">(</span><span class="src-id">false</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1395"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1396"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1397"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;magic&nbsp;code</span></div></li> +<li><div class="src-line"><a name="a1398"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a1399"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1400"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;central&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a1401"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a1402"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1403"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;each&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a1404"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a1405"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1406"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1407"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1408"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1409"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1410"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1411"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1412"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privParseOptions()</span></div></li> +<li><div class="src-line"><a name="a1413"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1414"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;internal&nbsp;methods&nbsp;reads&nbsp;the&nbsp;variable&nbsp;list&nbsp;of&nbsp;arguments&nbsp;($p_options_list,</span></div></li> +<li><div class="src-line"><a name="a1415"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_size)&nbsp;and&nbsp;generate&nbsp;an&nbsp;array&nbsp;with&nbsp;the&nbsp;options&nbsp;and&nbsp;values&nbsp;($v_result_list).</span></div></li> +<li><div class="src-line"><a name="a1416"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$v_requested_options&nbsp;contains&nbsp;the&nbsp;options&nbsp;that&nbsp;can&nbsp;be&nbsp;present&nbsp;and&nbsp;those&nbsp;that</span></div></li> +<li><div class="src-line"><a name="a1417"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;must&nbsp;be&nbsp;present.</span></div></li> +<li><div class="src-line"><a name="a1418"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$v_requested_options&nbsp;is&nbsp;an&nbsp;array,&nbsp;with&nbsp;the&nbsp;option&nbsp;value&nbsp;as&nbsp;key,&nbsp;and&nbsp;'optional',</span></div></li> +<li><div class="src-line"><a name="a1419"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;or&nbsp;'mandatory'&nbsp;as&nbsp;value.</span></div></li> +<li><div class="src-line"><a name="a1420"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1421"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;See&nbsp;above.</span></div></li> +<li><div class="src-line"><a name="a1422"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1423"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;1&nbsp;on&nbsp;success.</span></div></li> +<li><div class="src-line"><a name="a1424"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;on&nbsp;failure.</span></div></li> +<li><div class="src-line"><a name="a1425"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1426"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivParseOptions">privParseOptions</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_options_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_size</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$v_result_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_requested_options</span>=<span class="src-id">false</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1427"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1428"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1429"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1430"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a1431"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1432"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>&lt;<span class="src-var">$p_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1433"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1434"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;if&nbsp;the&nbsp;option&nbsp;is&nbsp;supported</span></div></li> +<li><div class="src-line"><a name="a1435"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$v_requested_options</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1436"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1437"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;optional&nbsp;parameter&nbsp;'&quot;</span>.<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>.<span class="src-str">&quot;'&nbsp;for&nbsp;this&nbsp;method&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1438"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1439"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1440"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1441"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1442"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1443"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;next&nbsp;option</span></div></li> +<li><div class="src-line"><a name="a1444"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1445"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;options&nbsp;that&nbsp;request&nbsp;a&nbsp;path&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1446"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PATH">PCLZIP_OPT_PATH</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1447"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1448"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1449"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;number&nbsp;of&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a1450"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>&gt;=&nbsp;<span class="src-var">$p_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1451"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1452"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Missing&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1453"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1454"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1455"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1456"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1457"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1458"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1459"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilTranslateWinPath">PclZipUtilTranslateWinPath</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-id">FALSE</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1460"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1461"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1462"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1463"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1464"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;number&nbsp;of&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a1465"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>&gt;=&nbsp;<span class="src-var">$p_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1466"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Missing&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1467"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1468"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1469"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1470"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;for&nbsp;incompatible&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a1471"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1472"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&nbsp;can&nbsp;not&nbsp;be&nbsp;used&nbsp;with&nbsp;option&nbsp;'PCLZIP_OPT_TEMP_FILE_OFF'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1473"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1474"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1475"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1476"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1477"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_value&nbsp;</span>=&nbsp;<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1478"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-sym">!</span><a href="http://www.php.net/is_integer">is_integer</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">))&nbsp;</span>||&nbsp;<span class="src-sym">(</span><span class="src-var">$v_value</span>&lt;<span class="src-num">0</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1479"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_OPTION_VALUE">PCLZIP_ERR_INVALID_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Integer&nbsp;expected&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1480"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1481"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1482"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1483"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;value&nbsp;(and&nbsp;convert&nbsp;it&nbsp;in&nbsp;bytes)</span></div></li> +<li><div class="src-line"><a name="a1484"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-var">$v_value</span>*<span class="src-num">1048576</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1485"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1486"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1487"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1488"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_ON">PCLZIP_OPT_TEMP_FILE_ON</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1489"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;for&nbsp;incompatible&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a1490"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1491"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&nbsp;can&nbsp;not&nbsp;be&nbsp;used&nbsp;with&nbsp;option&nbsp;'PCLZIP_OPT_TEMP_FILE_OFF'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1492"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1493"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1494"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1495"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1496"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1497"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1498"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1499"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;for&nbsp;incompatible&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a1500"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_ON">PCLZIP_OPT_TEMP_FILE_ON</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1501"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&nbsp;can&nbsp;not&nbsp;be&nbsp;used&nbsp;with&nbsp;option&nbsp;'PCLZIP_OPT_TEMP_FILE_ON'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1502"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1503"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1504"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;for&nbsp;incompatible&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a1505"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1506"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&nbsp;can&nbsp;not&nbsp;be&nbsp;used&nbsp;with&nbsp;option&nbsp;'PCLZIP_OPT_TEMP_FILE_THRESHOLD'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1507"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1508"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1509"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1510"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1511"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1512"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1513"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_DIR_RESTRICTION">PCLZIP_OPT_EXTRACT_DIR_RESTRICTION</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1514"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;number&nbsp;of&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a1515"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>&gt;=&nbsp;<span class="src-var">$p_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1516"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1517"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Missing&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1518"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1519"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1520"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1521"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1522"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1523"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1524"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1525"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-str">''</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1526"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilTranslateWinPath">PclZipUtilTranslateWinPath</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-id">FALSE</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1527"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1528"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1529"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1530"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1531"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1532"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1533"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;options&nbsp;that&nbsp;request&nbsp;an&nbsp;array&nbsp;of&nbsp;string&nbsp;for&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1534"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1535"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;number&nbsp;of&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a1536"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>&gt;=&nbsp;<span class="src-var">$p_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1537"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1538"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Missing&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1539"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1540"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1541"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1542"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1543"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1544"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1545"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1546"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1547"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1548"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1549"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1550"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1551"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1552"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1553"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_OPTION_VALUE">PCLZIP_ERR_INVALID_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Wrong&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1554"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1555"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1556"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1557"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1558"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1559"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1560"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1561"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;options&nbsp;that&nbsp;request&nbsp;an&nbsp;EREG&nbsp;or&nbsp;PREG&nbsp;expression</span></div></li> +<li><div class="src-line"><a name="a1562"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_EREG">PCLZIP_OPT_BY_EREG</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1563"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;ereg()&nbsp;is&nbsp;deprecated&nbsp;starting&nbsp;with&nbsp;PHP&nbsp;5.3.&nbsp;Move&nbsp;PCLZIP_OPT_BY_EREG</span></div></li> +<li><div class="src-line"><a name="a1564"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;to&nbsp;PCLZIP_OPT_BY_PREG</span></div></li> +<li><div class="src-line"><a name="a1565"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1566"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1567"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//case&nbsp;PCLZIP_OPT_CRYPT&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1568"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;number&nbsp;of&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a1569"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>&gt;=&nbsp;<span class="src-var">$p_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1570"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1571"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Missing&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1572"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1573"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1574"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1575"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1576"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1577"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1578"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1579"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1580"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1581"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1582"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1583"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_OPTION_VALUE">PCLZIP_ERR_INVALID_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Wrong&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1584"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1585"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1586"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1587"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1588"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1589"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1590"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1591"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;options&nbsp;that&nbsp;takes&nbsp;a&nbsp;string</span></div></li> +<li><div class="src-line"><a name="a1592"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_COMMENT">PCLZIP_OPT_COMMENT</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1593"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_COMMENT">PCLZIP_OPT_ADD_COMMENT</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1594"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PREPEND_COMMENT">PCLZIP_OPT_PREPEND_COMMENT</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1595"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;number&nbsp;of&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a1596"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>&gt;=&nbsp;<span class="src-var">$p_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1597"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1598"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1599"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">&quot;Missing&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span></div></li> +<li><div class="src-line"><a name="a1600"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1601"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1602"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1603"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1604"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1605"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1606"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1607"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1608"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1609"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1610"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1611"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1612"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1613"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_OPTION_VALUE">PCLZIP_ERR_INVALID_OPTION_VALUE</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1614"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">&quot;Wrong&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span></div></li> +<li><div class="src-line"><a name="a1615"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1616"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1617"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1618"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1619"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1620"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1621"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1622"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1623"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1624"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;options&nbsp;that&nbsp;request&nbsp;an&nbsp;array&nbsp;of&nbsp;index</span></div></li> +<li><div class="src-line"><a name="a1625"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1626"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;number&nbsp;of&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a1627"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>&gt;=&nbsp;<span class="src-var">$p_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1628"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1629"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Missing&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1630"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1631"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1632"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1633"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1634"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1635"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1636"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_work_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1637"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1638"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1639"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Remove&nbsp;spaces</span></div></li> +<li><div class="src-line"><a name="a1640"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/strtr">strtr</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-str">'&nbsp;'</span><span class="src-sym">,&nbsp;</span><span class="src-str">''</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1641"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1642"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Parse&nbsp;items</span></div></li> +<li><div class="src-line"><a name="a1643"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_work_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">&quot;,&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1644"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1645"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_integer">is_integer</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1646"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_work_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span>.<span class="src-str">'-'</span>.<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1647"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1648"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_array">is_array</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1649"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_work_list&nbsp;</span>=&nbsp;<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1650"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1651"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1652"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1653"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_OPTION_VALUE">PCLZIP_ERR_INVALID_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Value&nbsp;must&nbsp;be&nbsp;integer,&nbsp;string&nbsp;or&nbsp;array&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1654"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1655"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1656"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1657"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1658"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1659"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reduce&nbsp;the&nbsp;index&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a1660"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;each&nbsp;index&nbsp;item&nbsp;in&nbsp;the&nbsp;list&nbsp;must&nbsp;be&nbsp;a&nbsp;couple&nbsp;with&nbsp;a&nbsp;start&nbsp;and</span></div></li> +<li><div class="src-line"><a name="a1661"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;an&nbsp;end&nbsp;value&nbsp;:&nbsp;[0,3],&nbsp;[5-5],&nbsp;[8-10],&nbsp;...</span></div></li> +<li><div class="src-line"><a name="a1662"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;format&nbsp;of&nbsp;each&nbsp;item</span></div></li> +<li><div class="src-line"><a name="a1663"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_sort_flag</span>=<span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1664"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_sort_value</span>=<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1665"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j</span>&lt;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_work_list</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j</span>++<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1666"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Explode&nbsp;the&nbsp;item</span></div></li> +<li><div class="src-line"><a name="a1667"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_item_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">&quot;-&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_work_list</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1668"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size_item_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_item_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1669"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1670"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;TBC&nbsp;:&nbsp;Here&nbsp;we&nbsp;might&nbsp;check&nbsp;that&nbsp;each&nbsp;item&nbsp;is&nbsp;a</span></div></li> +<li><div class="src-line"><a name="a1671"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;real&nbsp;integer&nbsp;...</span></div></li> +<li><div class="src-line"><a name="a1672"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1673"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;single&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1674"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size_item_list&nbsp;</span>==&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1675"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;option&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1676"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'start'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_item_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1677"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'end'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_item_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1678"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1679"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size_item_list&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1680"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;option&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1681"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'start'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_item_list</span><span class="src-sym">[</span><span class="src-num">0</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1682"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'end'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_item_list</span><span class="src-sym">[</span><span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1683"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1684"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1685"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1686"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_OPTION_VALUE">PCLZIP_ERR_INVALID_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Too&nbsp;many&nbsp;values&nbsp;in&nbsp;index&nbsp;range&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1687"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1688"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1689"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1690"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1691"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1692"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1693"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;list&nbsp;sort</span></div></li> +<li><div class="src-line"><a name="a1694"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'start'</span><span class="src-sym">]&nbsp;</span>&lt;&nbsp;<span class="src-var">$v_sort_value</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1695"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_sort_flag</span>=<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1696"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1697"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;TBC&nbsp;:&nbsp;An&nbsp;automatic&nbsp;sort&nbsp;should&nbsp;be&nbsp;writen&nbsp;...</span></div></li> +<li><div class="src-line"><a name="a1698"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1699"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_OPTION_VALUE">PCLZIP_ERR_INVALID_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;order&nbsp;of&nbsp;index&nbsp;range&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1700"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1701"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1702"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1703"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1704"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_sort_value&nbsp;</span>=&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'start'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1705"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1706"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1707"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Sort&nbsp;the&nbsp;items</span></div></li> +<li><div class="src-line"><a name="a1708"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_sort_flag</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1709"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;To&nbsp;Be&nbsp;Completed</span></div></li> +<li><div class="src-line"><a name="a1710"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1711"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1712"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Next&nbsp;option</span></div></li> +<li><div class="src-line"><a name="a1713"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1714"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1715"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1716"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;options&nbsp;that&nbsp;request&nbsp;no&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1717"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1718"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_AS_STRING">PCLZIP_OPT_EXTRACT_AS_STRING</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1719"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_NO_COMPRESSION">PCLZIP_OPT_NO_COMPRESSION</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1720"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_IN_OUTPUT">PCLZIP_OPT_EXTRACT_IN_OUTPUT</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1721"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REPLACE_NEWER">PCLZIP_OPT_REPLACE_NEWER</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1722"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1723"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1724"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1725"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1726"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;options&nbsp;that&nbsp;request&nbsp;an&nbsp;octal&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1727"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_SET_CHMOD">PCLZIP_OPT_SET_CHMOD</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1728"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;number&nbsp;of&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a1729"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>&gt;=&nbsp;<span class="src-var">$p_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1730"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1731"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Missing&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1732"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1733"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1734"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1735"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1736"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1737"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1738"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1739"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1740"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1741"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1742"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;options&nbsp;that&nbsp;request&nbsp;a&nbsp;call-back</span></div></li> +<li><div class="src-line"><a name="a1743"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1744"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1745"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_ADD">PCLZIP_CB_PRE_ADD</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1746"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_ADD">PCLZIP_CB_POST_ADD</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1747"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">/*&nbsp;for&nbsp;futur&nbsp;use</span></div></li> +<li><div class="src-line"><a name="a1748"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;PCLZIP_CB_PRE_DELETE&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1749"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;PCLZIP_CB_POST_DELETE&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1750"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;PCLZIP_CB_PRE_LIST&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1751"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;PCLZIP_CB_POST_LIST&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1752"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a1753"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;number&nbsp;of&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a1754"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>&gt;=&nbsp;<span class="src-var">$p_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1755"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1756"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Missing&nbsp;parameter&nbsp;value&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1757"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1758"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1759"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1760"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1761"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1762"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1763"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_function_name&nbsp;</span>=&nbsp;<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span>+<span class="src-num">1</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1764"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1765"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;that&nbsp;the&nbsp;value&nbsp;is&nbsp;a&nbsp;valid&nbsp;existing&nbsp;function</span></div></li> +<li><div class="src-line"><a name="a1766"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-var">$v_function_name</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1767"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1768"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_OPTION_VALUE">PCLZIP_ERR_INVALID_OPTION_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Function&nbsp;'&quot;</span>.<span class="src-var">$v_function_name</span>.<span class="src-str">&quot;()'&nbsp;is&nbsp;not&nbsp;an&nbsp;existing&nbsp;function&nbsp;for&nbsp;option&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1769"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1770"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1771"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1772"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1773"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1774"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;attribute</span></div></li> +<li><div class="src-line"><a name="a1775"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]]&nbsp;</span>=&nbsp;<span class="src-var">$v_function_name</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1776"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1777"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1778"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1779"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">default&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1780"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1781"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1782"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">&quot;Unknown&nbsp;parameter&nbsp;'&quot;</span></div></li> +<li><div class="src-line"><a name="a1783"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-var">$p_options_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1784"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1785"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1786"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1787"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1788"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1789"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Next&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a1790"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1791"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1792"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1793"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;mandatory&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a1794"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_requested_options&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1795"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$key</span>=<a href="http://www.php.net/reset">reset</a><span class="src-sym">(</span><span class="src-var">$v_requested_options</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$key</span>=<a href="http://www.php.net/key">key</a><span class="src-sym">(</span><span class="src-var">$v_requested_options</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$key</span>=<a href="http://www.php.net/next">next</a><span class="src-sym">(</span><span class="src-var">$v_requested_options</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1796"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;mandatory&nbsp;option</span></div></li> +<li><div class="src-line"><a name="a1797"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_requested_options</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'mandatory'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1798"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;present</span></div></li> +<li><div class="src-line"><a name="a1799"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1800"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1801"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Missing&nbsp;mandatory&nbsp;parameter&nbsp;&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$key</span><span class="src-sym">)</span>.<span class="src-str">&quot;(&quot;</span>.<span class="src-var">$key</span>.<span class="src-str">&quot;)&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1802"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1803"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1804"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1805"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1806"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1807"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1808"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1809"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1810"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;default&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a1811"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$v_result_list</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1812"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1813"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1814"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1815"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1816"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1817"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1818"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1819"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1820"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1821"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privOptionDefaultThreshold()</span></div></li> +<li><div class="src-line"><a name="a1822"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1823"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1824"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1825"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1826"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivOptionDefaultThreshold">privOptionDefaultThreshold</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1827"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1828"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1829"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1830"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1831"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1832"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1833"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1834"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1835"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;'memory_limit'&nbsp;configuration&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a1836"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_memory_limit&nbsp;</span>=&nbsp;<a href="http://www.php.net/ini_get">ini_get</a><span class="src-sym">(</span><span class="src-str">'memory_limit'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1837"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_memory_limit&nbsp;</span>=&nbsp;<a href="http://www.php.net/trim">trim</a><span class="src-sym">(</span><span class="src-var">$v_memory_limit</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1838"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$last&nbsp;</span>=&nbsp;<a href="http://www.php.net/strtolower">strtolower</a><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$v_memory_limit</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1839"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1840"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$last&nbsp;</span>==&nbsp;<span class="src-str">'g'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1841"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//$v_memory_limit&nbsp;=&nbsp;$v_memory_limit*1024*1024*1024;</span></div></li> +<li><div class="src-line"><a name="a1842"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_memory_limit&nbsp;</span>=&nbsp;<span class="src-var">$v_memory_limit</span>*<span class="src-num">1073741824</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1843"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$last&nbsp;</span>==&nbsp;<span class="src-str">'m'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1844"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//$v_memory_limit&nbsp;=&nbsp;$v_memory_limit*1024*1024;</span></div></li> +<li><div class="src-line"><a name="a1845"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_memory_limit&nbsp;</span>=&nbsp;<span class="src-var">$v_memory_limit</span>*<span class="src-num">1048576</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1846"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if</span><span class="src-sym">(</span><span class="src-var">$last&nbsp;</span>==&nbsp;<span class="src-str">'k'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1847"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_memory_limit&nbsp;</span>=&nbsp;<span class="src-var">$v_memory_limit</span>*<span class="src-num">1024</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1848"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1849"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/floor">floor</a><span class="src-sym">(</span><span class="src-var">$v_memory_limit</span>*<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_TEMPORARY_FILE_RATIO">PCLZIP_TEMPORARY_FILE_RATIO</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1850"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1851"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1852"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Sanity&nbsp;check&nbsp;:&nbsp;No&nbsp;threshold&nbsp;if&nbsp;value&nbsp;lower&nbsp;than&nbsp;1M</span></div></li> +<li><div class="src-line"><a name="a1853"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></span><span class="src-sym">]&nbsp;</span>&lt;&nbsp;<span class="src-num">1048576</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1854"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1855"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1856"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1857"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1858"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1859"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1860"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1861"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1862"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1863"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privFileDescrParseAtt()</span></div></li> +<li><div class="src-line"><a name="a1864"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1865"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1866"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1867"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;1&nbsp;on&nbsp;success.</span></div></li> +<li><div class="src-line"><a name="a1868"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;on&nbsp;failure.</span></div></li> +<li><div class="src-line"><a name="a1869"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1870"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivFileDescrParseAtt">privFileDescrParseAtt</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_file_list</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_filedescr</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_options</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_requested_options</span>=<span class="src-id">false</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a1871"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1872"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1873"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1874"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;For&nbsp;each&nbsp;file&nbsp;in&nbsp;the&nbsp;list&nbsp;check&nbsp;the&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a1875"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">foreach&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_file_list&nbsp;</span><span class="src-key">as&nbsp;</span><span class="src-var">$v_key&nbsp;</span>=&gt;&nbsp;<span class="src-var">$v_value</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1876"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1877"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;if&nbsp;the&nbsp;option&nbsp;is&nbsp;supported</span></div></li> +<li><div class="src-line"><a name="a1878"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$v_requested_options</span><span class="src-sym">[</span><span class="src-var">$v_key</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1879"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1880"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;file&nbsp;attribute&nbsp;'&quot;</span>.<span class="src-var">$v_key</span>.<span class="src-str">&quot;'&nbsp;for&nbsp;this&nbsp;file&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1881"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1882"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1883"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1884"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1885"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1886"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;attribute</span></div></li> +<li><div class="src-line"><a name="a1887"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">switch&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_key</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1888"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NAME">PCLZIP_ATT_FILE_NAME</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1889"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1890"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE">PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;type&nbsp;&quot;</span>.<a href="http://www.php.net/gettype">gettype</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">)</span>.<span class="src-str">&quot;.&nbsp;String&nbsp;expected&nbsp;for&nbsp;attribute&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$v_key</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1891"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1892"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1893"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1894"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathReduction">PclZipUtilPathReduction</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1895"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1896"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1897"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE">PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;empty&nbsp;filename&nbsp;for&nbsp;attribute&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$v_key</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1898"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1899"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1900"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1901"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1902"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1903"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NEW_SHORT_NAME">PCLZIP_ATT_FILE_NEW_SHORT_NAME</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1904"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1905"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE">PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;type&nbsp;&quot;</span>.<a href="http://www.php.net/gettype">gettype</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">)</span>.<span class="src-str">&quot;.&nbsp;String&nbsp;expected&nbsp;for&nbsp;attribute&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$v_key</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1906"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1907"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1908"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1909"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'new_short_name'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathReduction">PclZipUtilPathReduction</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1910"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1911"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'new_short_name'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1912"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE">PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;empty&nbsp;short&nbsp;filename&nbsp;for&nbsp;attribute&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$v_key</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1913"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1914"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1915"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1916"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1917"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NEW_FULL_NAME">PCLZIP_ATT_FILE_NEW_FULL_NAME</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1918"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1919"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE">PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;type&nbsp;&quot;</span>.<a href="http://www.php.net/gettype">gettype</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">)</span>.<span class="src-str">&quot;.&nbsp;String&nbsp;expected&nbsp;for&nbsp;attribute&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$v_key</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1920"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1921"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1922"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1923"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'new_full_name'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathReduction">PclZipUtilPathReduction</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1924"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1925"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'new_full_name'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1926"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE">PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;empty&nbsp;full&nbsp;filename&nbsp;for&nbsp;attribute&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$v_key</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1927"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1928"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1929"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1930"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1931"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;options&nbsp;that&nbsp;takes&nbsp;a&nbsp;string</span></div></li> +<li><div class="src-line"><a name="a1932"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_COMMENT">PCLZIP_ATT_FILE_COMMENT</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1933"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_string">is_string</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1934"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE">PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;type&nbsp;&quot;</span>.<a href="http://www.php.net/gettype">gettype</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">)</span>.<span class="src-str">&quot;.&nbsp;String&nbsp;expected&nbsp;for&nbsp;attribute&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$v_key</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1935"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1936"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1937"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1938"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_value</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1939"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1940"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1941"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_MTIME">PCLZIP_ATT_FILE_MTIME</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1942"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_integer">is_integer</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1943"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE">PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;type&nbsp;&quot;</span>.<a href="http://www.php.net/gettype">gettype</a><span class="src-sym">(</span><span class="src-var">$v_value</span><span class="src-sym">)</span>.<span class="src-str">&quot;.&nbsp;Integer&nbsp;expected&nbsp;for&nbsp;attribute&nbsp;'&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$v_key</span><span class="src-sym">)</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1944"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1945"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1946"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1947"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_value</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1948"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1949"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1950"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">case&nbsp;</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_CONTENT">PCLZIP_ATT_FILE_CONTENT</a>&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1951"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'content'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_value</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1952"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1953"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1954"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">default&nbsp;</span>:</div></li> +<li><div class="src-line"><a name="a1955"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a1956"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a1957"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">&quot;Unknown&nbsp;parameter&nbsp;'&quot;</span>.<span class="src-var">$v_key</span>.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1958"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1959"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1960"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1961"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1962"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1963"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;mandatory&nbsp;options</span></div></li> +<li><div class="src-line"><a name="a1964"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_requested_options&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1965"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$key</span>=<a href="http://www.php.net/reset">reset</a><span class="src-sym">(</span><span class="src-var">$v_requested_options</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$key</span>=<a href="http://www.php.net/key">key</a><span class="src-sym">(</span><span class="src-var">$v_requested_options</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$key</span>=<a href="http://www.php.net/next">next</a><span class="src-sym">(</span><span class="src-var">$v_requested_options</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1966"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;mandatory&nbsp;option</span></div></li> +<li><div class="src-line"><a name="a1967"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_requested_options</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'mandatory'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1968"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;present</span></div></li> +<li><div class="src-line"><a name="a1969"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$p_file_list</span><span class="src-sym">[</span><span class="src-var">$key</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a1970"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Missing&nbsp;mandatory&nbsp;parameter&nbsp;&quot;</span>.<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$key</span><span class="src-sym">)</span>.<span class="src-str">&quot;(&quot;</span>.<span class="src-var">$key</span>.<span class="src-str">&quot;)&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1971"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1972"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1973"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1974"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1975"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1976"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1977"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;end&nbsp;foreach</span></div></li> +<li><div class="src-line"><a name="a1978"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1979"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a1980"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a1981"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a1982"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a1983"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1984"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a1985"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1986"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privFileDescrExpand()</span></div></li> +<li><div class="src-line"><a name="a1987"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1988"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;method&nbsp;look&nbsp;for&nbsp;each&nbsp;item&nbsp;of&nbsp;the&nbsp;list&nbsp;to&nbsp;see&nbsp;if&nbsp;its&nbsp;a&nbsp;file,&nbsp;a&nbsp;folder</span></div></li> +<li><div class="src-line"><a name="a1989"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;or&nbsp;a&nbsp;string&nbsp;to&nbsp;be&nbsp;added&nbsp;as&nbsp;file.&nbsp;For&nbsp;any&nbsp;other&nbsp;type&nbsp;of&nbsp;files&nbsp;(link,&nbsp;other)</span></div></li> +<li><div class="src-line"><a name="a1990"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;just&nbsp;ignore&nbsp;the&nbsp;item.</span></div></li> +<li><div class="src-line"><a name="a1991"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Then&nbsp;prepare&nbsp;the&nbsp;information&nbsp;that&nbsp;will&nbsp;be&nbsp;stored&nbsp;for&nbsp;that&nbsp;file.</span></div></li> +<li><div class="src-line"><a name="a1992"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;When&nbsp;its&nbsp;a&nbsp;folder,&nbsp;expand&nbsp;the&nbsp;folder&nbsp;with&nbsp;all&nbsp;the&nbsp;files&nbsp;that&nbsp;are&nbsp;in&nbsp;that&nbsp;</span></div></li> +<li><div class="src-line"><a name="a1993"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;folder&nbsp;(recursively).</span></div></li> +<li><div class="src-line"><a name="a1994"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1995"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a1996"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;1&nbsp;on&nbsp;success.</span></div></li> +<li><div class="src-line"><a name="a1997"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;on&nbsp;failure.</span></div></li> +<li><div class="src-line"><a name="a1998"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a1999"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivFileDescrExpand">privFileDescrExpand</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2000"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2001"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2002"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2003"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;a&nbsp;result&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a2004"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2005"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2006"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;each&nbsp;entry</span></div></li> +<li><div class="src-line"><a name="a2007"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>&lt;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>++<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2008"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2009"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;filedescr</span></div></li> +<li><div class="src-line"><a name="a2010"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_descr&nbsp;</span>=&nbsp;<span class="src-var">$p_filedescr_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2011"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2012"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reduce&nbsp;the&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a2013"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilTranslateWinPath">PclZipUtilTranslateWinPath</a><span class="src-sym">(</span><span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-id">false</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2014"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathReduction">PclZipUtilPathReduction</a><span class="src-sym">(</span><span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2015"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2016"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;real&nbsp;file&nbsp;or&nbsp;folder</span></div></li> +<li><div class="src-line"><a name="a2017"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2018"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/is_file">is_file</a><span class="src-sym">(</span><span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2019"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">'file'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2020"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2021"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/is_dir">is_dir</a><span class="src-sym">(</span><span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2022"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">'folder'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2023"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2024"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/is_link">is_link</a><span class="src-sym">(</span><span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2025"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;skip</span></div></li> +<li><div class="src-line"><a name="a2026"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">continue</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2027"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2028"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2029"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;skip</span></div></li> +<li><div class="src-line"><a name="a2030"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">continue</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2031"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2032"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2033"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2034"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;string&nbsp;added&nbsp;as&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2035"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'content'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2036"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">'virtual_file'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2037"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2038"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2039"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Missing&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2040"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2041"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a2042"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_FILE">PCLZIP_ERR_MISSING_FILE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;File&nbsp;'&quot;</span>.<span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span>.<span class="src-str">&quot;'&nbsp;does&nbsp;not&nbsp;exist&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2043"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2044"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2045"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2046"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2047"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2048"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Calculate&nbsp;the&nbsp;stored&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a2049"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCalculateStoredFilename">privCalculateStoredFilename</a><span class="src-sym">(</span><span class="src-var">$v_descr</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2050"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2051"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Add&nbsp;the&nbsp;descriptor&nbsp;in&nbsp;result&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a2052"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">[</span><a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_result_list</span><span class="src-sym">)</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_descr</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2053"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2054"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;folder</span></div></li> +<li><div class="src-line"><a name="a2055"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'folder'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2056"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;List&nbsp;of&nbsp;items&nbsp;in&nbsp;folder</span></div></li> +<li><div class="src-line"><a name="a2057"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_dirlist_descr&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2058"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_dirlist_nb&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2059"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_folder_handler&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/opendir">opendir</a><span class="src-sym">(</span><span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2060"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_item_handler&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/readdir">readdir</a><span class="src-sym">(</span><span class="src-var">$v_folder_handler</span><span class="src-sym">))&nbsp;</span>!==&nbsp;<span class="src-id">false</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2061"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2062"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Skip&nbsp;'.'&nbsp;and&nbsp;'..'</span></div></li> +<li><div class="src-line"><a name="a2063"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_item_handler&nbsp;</span>==&nbsp;<span class="src-str">'.'</span><span class="src-sym">)&nbsp;</span>||&nbsp;<span class="src-sym">(</span><span class="src-var">$v_item_handler&nbsp;</span>==&nbsp;<span class="src-str">'..'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2064"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">continue</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2065"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2066"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2067"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Compose&nbsp;the&nbsp;full&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a2068"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_dirlist_descr</span><span class="src-sym">[</span><span class="src-var">$v_dirlist_nb</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span>.<span class="src-str">'/'</span>.<span class="src-var">$v_item_handler</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2069"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2070"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;different&nbsp;stored&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a2071"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Because&nbsp;the&nbsp;name&nbsp;of&nbsp;the&nbsp;folder&nbsp;was&nbsp;changed,&nbsp;the&nbsp;name&nbsp;of&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a2072"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;files/sub-folders&nbsp;also&nbsp;change</span></div></li> +<li><div class="src-line"><a name="a2073"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2074"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a></span><span class="src-sym">]</span><span class="src-sym">)))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2075"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2076"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_dirlist_descr</span><span class="src-sym">[</span><span class="src-var">$v_dirlist_nb</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'new_full_name'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_descr</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span>.<span class="src-str">'/'</span>.<span class="src-var">$v_item_handler</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2077"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2078"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2079"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_dirlist_descr</span><span class="src-sym">[</span><span class="src-var">$v_dirlist_nb</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'new_full_name'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_item_handler</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2080"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2081"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2082"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2083"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_dirlist_nb</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2084"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2085"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2086"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/closedir">closedir</a><span class="src-sym">(</span><span class="src-var">$v_folder_handler</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2087"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2088"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2089"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;unable&nbsp;to&nbsp;open&nbsp;folder&nbsp;in&nbsp;read&nbsp;mode</span></div></li> +<li><div class="src-line"><a name="a2090"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2091"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2092"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Expand&nbsp;each&nbsp;element&nbsp;of&nbsp;the&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a2093"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_dirlist_nb&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2094"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Expand</span></div></li> +<li><div class="src-line"><a name="a2095"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivFileDescrExpand">privFileDescrExpand</a><span class="src-sym">(</span><span class="src-var">$v_dirlist_descr</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2096"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2097"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2098"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2099"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Concat&nbsp;the&nbsp;resulting&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a2100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/array_merge">array_merge</a><span class="src-sym">(</span><span class="src-var">$v_result_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_dirlist_descr</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Free&nbsp;local&nbsp;array</span></div></li> +<li><div class="src-line"><a name="a2106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_dirlist_descr</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2108"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2109"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2110"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;result&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a2111"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filedescr_list&nbsp;</span>=&nbsp;<span class="src-var">$v_result_list</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2112"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2113"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2114"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2115"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2116"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2117"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2118"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2119"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privCreate()</span></div></li> +<li><div class="src-line"><a name="a2120"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2121"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2122"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2123"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2124"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivCreate">privCreate</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_result_list</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2125"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2126"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2127"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_list_detail&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2128"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2129"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a2130"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDisableMagicQuotes">privDisableMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2131"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2132"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;file&nbsp;in&nbsp;write&nbsp;mode</span></div></li> +<li><div class="src-line"><a name="a2133"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivOpenFd">privOpenFd</a><span class="src-sym">(</span><span class="src-str">'wb'</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2134"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2137"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2138"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2139"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Add&nbsp;the&nbsp;list&nbsp;of&nbsp;files</span></div></li> +<li><div class="src-line"><a name="a2140"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivAddList">privAddList</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_result_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2141"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2142"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close</span></div></li> +<li><div class="src-line"><a name="a2143"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2144"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2145"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a2146"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2147"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2148"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2149"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2150"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2151"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2152"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2153"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2154"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privAdd()</span></div></li> +<li><div class="src-line"><a name="a2155"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2156"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2157"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2158"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2159"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivAdd">privAdd</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_result_list</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2160"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2161"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2162"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_list_detail&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2163"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2164"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;archive&nbsp;exists&nbsp;or&nbsp;is&nbsp;empty</span></div></li> +<li><div class="src-line"><a name="a2165"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-sym">!</span><a href="http://www.php.net/is_file">is_file</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">))&nbsp;</span>||&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a2166"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2167"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2168"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Do&nbsp;a&nbsp;create</span></div></li> +<li><div class="src-line"><a name="a2169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCreate">privCreate</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_result_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2170"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2171"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2172"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2173"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2174"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a2175"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDisableMagicQuotes">privDisableMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2176"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2177"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2178"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result</span>=<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivOpenFd">privOpenFd</a><span class="src-sym">(</span><span class="src-str">'rb'</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2179"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a2181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2182"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2183"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2184"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2185"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2186"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2187"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;central&nbsp;directory&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a2188"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_central_dir&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2189"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadEndCentralDir">privReadEndCentralDir</a><span class="src-sym">(</span><span class="src-var">$v_central_dir</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2190"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2192"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2194"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2195"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2196"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Go&nbsp;to&nbsp;beginning&nbsp;of&nbsp;File</span></div></li> +<li><div class="src-line"><a name="a2197"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/rewind">rewind</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2198"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2199"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Creates&nbsp;a&nbsp;temporay&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2200"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_zip_temp_name&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_TEMPORARY_DIR">PCLZIP_TEMPORARY_DIR</a></span>.<a href="http://www.php.net/uniqid">uniqid</a><span class="src-sym">(</span><span class="src-str">'pclzip-'</span><span class="src-sym">)</span>.<span class="src-str">'.tmp'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2201"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2202"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;temporary&nbsp;file&nbsp;in&nbsp;write&nbsp;mode</span></div></li> +<li><div class="src-line"><a name="a2203"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_zip_temp_fd&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">,&nbsp;</span><span class="src-str">'wb'</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2204"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2205"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2206"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2207"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2208"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;open&nbsp;temporary&nbsp;file&nbsp;\''</span>.<span class="src-var">$v_zip_temp_name</span>.<span class="src-str">'\'&nbsp;in&nbsp;binary&nbsp;write&nbsp;mode'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2209"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2210"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2211"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2212"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2213"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2214"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Copy&nbsp;the&nbsp;files&nbsp;from&nbsp;the&nbsp;archive&nbsp;to&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2215"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;Here&nbsp;I&nbsp;should&nbsp;better&nbsp;append&nbsp;the&nbsp;file&nbsp;and&nbsp;go&nbsp;back&nbsp;to&nbsp;erase&nbsp;the&nbsp;central&nbsp;dir</span></div></li> +<li><div class="src-line"><a name="a2216"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2217"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2218"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2219"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2220"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2221"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2222"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2223"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2224"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2225"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Swap&nbsp;the&nbsp;file&nbsp;descriptor</span></div></li> +<li><div class="src-line"><a name="a2226"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;is&nbsp;a&nbsp;trick&nbsp;:&nbsp;I&nbsp;swap&nbsp;the&nbsp;temporary&nbsp;fd&nbsp;with&nbsp;the&nbsp;zip&nbsp;fd,&nbsp;in&nbsp;order&nbsp;to&nbsp;use</span></div></li> +<li><div class="src-line"><a name="a2227"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;the&nbsp;following&nbsp;methods&nbsp;on&nbsp;the&nbsp;temporary&nbsp;fil&nbsp;and&nbsp;not&nbsp;the&nbsp;real&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a2228"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_swap&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2229"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;=&nbsp;<span class="src-var">$v_zip_temp_fd</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2230"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_zip_temp_fd&nbsp;</span>=&nbsp;<span class="src-var">$v_swap</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2231"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2232"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Add&nbsp;the&nbsp;files</span></div></li> +<li><div class="src-line"><a name="a2233"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2234"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivAddFileList">privAddFileList</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_header_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2235"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2236"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2237"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2238"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2239"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2240"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2241"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2242"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2243"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2244"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2245"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Store&nbsp;the&nbsp;offset&nbsp;of&nbsp;the&nbsp;central&nbsp;dir</span></div></li> +<li><div class="src-line"><a name="a2246"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_offset&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2247"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2248"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Copy&nbsp;the&nbsp;block&nbsp;of&nbsp;file&nbsp;headers&nbsp;from&nbsp;the&nbsp;old&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a2249"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2250"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2251"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2252"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2253"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2254"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2255"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2256"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2257"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2258"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;the&nbsp;Central&nbsp;Dir&nbsp;files&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a2259"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_count</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>&lt;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>++<span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2260"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2261"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;the&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a2262"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'ok'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2263"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivWriteCentralFileHeader">privWriteCentralFileHeader</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2264"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2265"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2266"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2267"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2268"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2269"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2270"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2271"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2272"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_count</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2273"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2274"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2275"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Transform&nbsp;the&nbsp;header&nbsp;to&nbsp;a&nbsp;'usable'&nbsp;info</span></div></li> +<li><div class="src-line"><a name="a2276"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_result_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2277"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2278"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2279"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Zip&nbsp;file&nbsp;comment</span></div></li> +<li><div class="src-line"><a name="a2280"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_comment&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2281"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_COMMENT">PCLZIP_OPT_COMMENT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2282"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_comment&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_COMMENT">PCLZIP_OPT_COMMENT</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2283"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2284"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_COMMENT">PCLZIP_OPT_ADD_COMMENT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2285"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_comment&nbsp;</span>=&nbsp;<span class="src-var">$v_comment</span>.<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_COMMENT">PCLZIP_OPT_ADD_COMMENT</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2286"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2287"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PREPEND_COMMENT">PCLZIP_OPT_PREPEND_COMMENT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2288"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_comment&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PREPEND_COMMENT">PCLZIP_OPT_PREPEND_COMMENT</a></span><span class="src-sym">]</span>.<span class="src-var">$v_comment</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2289"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2290"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2291"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Calculate&nbsp;the&nbsp;size&nbsp;of&nbsp;the&nbsp;central&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a2292"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span>-<span class="src-var">$v_offset</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2293"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2294"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;the&nbsp;central&nbsp;dir&nbsp;footer</span></div></li> +<li><div class="src-line"><a name="a2295"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivWriteCentralHeader">privWriteCentralHeader</a><span class="src-sym">(</span><span class="src-var">$v_count</span>+<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'entries'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_offset</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_comment</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2296"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2297"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;file&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a2298"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2299"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2300"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2301"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2302"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2303"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2304"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2305"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Swap&nbsp;back&nbsp;the&nbsp;file&nbsp;descriptor</span></div></li> +<li><div class="src-line"><a name="a2306"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_swap&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2307"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;=&nbsp;<span class="src-var">$v_zip_temp_fd</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2308"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_zip_temp_fd&nbsp;</span>=&nbsp;<span class="src-var">$v_swap</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2309"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2310"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close</span></div></li> +<li><div class="src-line"><a name="a2311"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2312"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2313"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2314"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2315"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2316"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a2317"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2318"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2319"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Delete&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2320"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;I&nbsp;should&nbsp;test&nbsp;the&nbsp;result&nbsp;...</span></div></li> +<li><div class="src-line"><a name="a2321"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2322"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2323"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Rename&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2324"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;I&nbsp;should&nbsp;test&nbsp;the&nbsp;result&nbsp;...</span></div></li> +<li><div class="src-line"><a name="a2325"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//@rename($v_zip_temp_name,&nbsp;$this-&gt;zipname);</span></div></li> +<li><div class="src-line"><a name="a2326"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilRename">PclZipUtilRename</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2327"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2328"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2329"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2330"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2331"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2332"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2333"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2334"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privOpenFd()</span></div></li> +<li><div class="src-line"><a name="a2335"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2336"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2337"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2338"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivOpenFd">privOpenFd</a><span class="src-sym">(</span><span class="src-var">$p_mode</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2339"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2340"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2341"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2342"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;already&nbsp;open</span></div></li> +<li><div class="src-line"><a name="a2343"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2344"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2345"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a2346"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Zip&nbsp;file&nbsp;\''</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a>.<span class="src-str">'\'&nbsp;already&nbsp;open'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2347"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2348"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2349"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2350"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2351"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2352"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2353"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_mode</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2354"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2355"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a2356"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;open&nbsp;archive&nbsp;\''</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a>.<span class="src-str">'\'&nbsp;in&nbsp;'</span>.<span class="src-var">$p_mode</span>.<span class="src-str">'&nbsp;mode'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2357"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2358"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2359"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2360"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2361"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2362"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2363"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2364"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2365"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2366"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2367"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2368"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privCloseFd()</span></div></li> +<li><div class="src-line"><a name="a2369"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2370"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2371"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2372"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2373"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2374"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2375"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2376"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2377"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2378"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2379"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2380"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2381"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2382"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2383"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2384"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2385"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2386"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privAddList()</span></div></li> +<li><div class="src-line"><a name="a2387"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2388"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_add_dir&nbsp;and&nbsp;$p_remove_dir&nbsp;will&nbsp;give&nbsp;the&nbsp;ability&nbsp;to&nbsp;memorize&nbsp;a&nbsp;path&nbsp;which&nbsp;is</span></div></li> +<li><div class="src-line"><a name="a2389"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;different&nbsp;from&nbsp;the&nbsp;real&nbsp;path&nbsp;of&nbsp;the&nbsp;file.&nbsp;This&nbsp;is&nbsp;usefull&nbsp;if&nbsp;you&nbsp;want&nbsp;to&nbsp;have&nbsp;PclTar</span></div></li> +<li><div class="src-line"><a name="a2390"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;running&nbsp;in&nbsp;any&nbsp;directory,&nbsp;and&nbsp;memorize&nbsp;relative&nbsp;path&nbsp;from&nbsp;an&nbsp;other&nbsp;directory.</span></div></li> +<li><div class="src-line"><a name="a2391"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2392"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_list&nbsp;:&nbsp;An&nbsp;array&nbsp;containing&nbsp;the&nbsp;file&nbsp;or&nbsp;directory&nbsp;names&nbsp;to&nbsp;add&nbsp;in&nbsp;the&nbsp;tar</span></div></li> +<li><div class="src-line"><a name="a2393"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_result_list&nbsp;:&nbsp;list&nbsp;of&nbsp;added&nbsp;files&nbsp;with&nbsp;their&nbsp;properties&nbsp;(specially&nbsp;the&nbsp;status&nbsp;field)</span></div></li> +<li><div class="src-line"><a name="a2394"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_add_dir&nbsp;:&nbsp;Path&nbsp;to&nbsp;add&nbsp;in&nbsp;the&nbsp;filename&nbsp;path&nbsp;archived</span></div></li> +<li><div class="src-line"><a name="a2395"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_remove_dir&nbsp;:&nbsp;Path&nbsp;to&nbsp;remove&nbsp;in&nbsp;the&nbsp;filename&nbsp;path&nbsp;archived</span></div></li> +<li><div class="src-line"><a name="a2396"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2397"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2398"></a><span class="src-comm">//&nbsp;&nbsp;function&nbsp;privAddList($p_list,&nbsp;&amp;$p_result_list,&nbsp;$p_add_dir,&nbsp;$p_remove_dir,&nbsp;$p_remove_all_dir,&nbsp;&amp;$p_options)</span></div></li> +<li><div class="src-line"><a name="a2399"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivAddList">privAddList</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_result_list</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2400"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2401"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2402"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2403"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Add&nbsp;the&nbsp;files</span></div></li> +<li><div class="src-line"><a name="a2404"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2405"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivAddFileList">privAddFileList</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_header_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2406"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2407"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2408"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2409"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2410"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2411"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Store&nbsp;the&nbsp;offset&nbsp;of&nbsp;the&nbsp;central&nbsp;dir</span></div></li> +<li><div class="src-line"><a name="a2412"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_offset&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2413"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2414"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;the&nbsp;Central&nbsp;Dir&nbsp;files&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a2415"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">,</span><span class="src-var">$v_count</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>&lt;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>++<span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2416"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2417"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;the&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a2418"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'ok'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2419"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivWriteCentralFileHeader">privWriteCentralFileHeader</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2420"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2421"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2422"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2423"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_count</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2424"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2425"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2426"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Transform&nbsp;the&nbsp;header&nbsp;to&nbsp;a&nbsp;'usable'&nbsp;info</span></div></li> +<li><div class="src-line"><a name="a2427"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_result_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2428"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2429"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2430"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Zip&nbsp;file&nbsp;comment</span></div></li> +<li><div class="src-line"><a name="a2431"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_comment&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2432"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_COMMENT">PCLZIP_OPT_COMMENT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2433"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_comment&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_COMMENT">PCLZIP_OPT_COMMENT</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2434"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2435"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2436"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Calculate&nbsp;the&nbsp;size&nbsp;of&nbsp;the&nbsp;central&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a2437"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span>-<span class="src-var">$v_offset</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2438"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2439"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;the&nbsp;central&nbsp;dir&nbsp;footer</span></div></li> +<li><div class="src-line"><a name="a2440"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivWriteCentralHeader">privWriteCentralHeader</a><span class="src-sym">(</span><span class="src-var">$v_count</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_offset</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_comment</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2441"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2442"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;file&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a2443"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2444"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2445"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2446"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2447"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2448"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2449"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2450"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2451"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2452"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2453"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2454"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2455"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privAddFileList()</span></div></li> +<li><div class="src-line"><a name="a2456"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2457"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2458"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_filedescr_list&nbsp;:&nbsp;An&nbsp;array&nbsp;containing&nbsp;the&nbsp;file&nbsp;description&nbsp;</span></div></li> +<li><div class="src-line"><a name="a2459"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or&nbsp;directory&nbsp;names&nbsp;to&nbsp;add&nbsp;in&nbsp;the&nbsp;zip</span></div></li> +<li><div class="src-line"><a name="a2460"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_result_list&nbsp;:&nbsp;list&nbsp;of&nbsp;added&nbsp;files&nbsp;with&nbsp;their&nbsp;properties&nbsp;(specially&nbsp;the&nbsp;status&nbsp;field)</span></div></li> +<li><div class="src-line"><a name="a2461"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2462"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2463"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivAddFileList">privAddFileList</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_result_list</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2464"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2465"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2466"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2467"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2468"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Recuperate&nbsp;the&nbsp;current&nbsp;number&nbsp;of&nbsp;elt&nbsp;in&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a2469"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_nb&nbsp;</span>=&nbsp;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$p_result_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2470"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2471"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Loop&nbsp;on&nbsp;the&nbsp;files</span></div></li> +<li><div class="src-line"><a name="a2472"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>&lt;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">))&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_result</span>==<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j</span>++<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2473"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Format&nbsp;the&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a2474"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filedescr_list</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span></div></li> +<li><div class="src-line"><a name="a2475"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilTranslateWinPath">PclZipUtilTranslateWinPath</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-id">false</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2476"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2477"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2478"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Skip&nbsp;empty&nbsp;file&nbsp;names</span></div></li> +<li><div class="src-line"><a name="a2479"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;Can&nbsp;this&nbsp;be&nbsp;possible&nbsp;?&nbsp;not&nbsp;checked&nbsp;in&nbsp;DescrParseAtt&nbsp;?</span></div></li> +<li><div class="src-line"><a name="a2480"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2481"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">continue</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2482"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2483"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2484"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a2485"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-str">'virtual_file'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2486"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">)))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2487"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_FILE">PCLZIP_ERR_MISSING_FILE</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;File&nbsp;'&quot;</span>.<span class="src-var">$p_filedescr_list</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span>.<span class="src-str">&quot;'&nbsp;does&nbsp;not&nbsp;exist&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2488"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2489"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2490"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2491"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;it&nbsp;is&nbsp;a&nbsp;file&nbsp;or&nbsp;a&nbsp;dir&nbsp;with&nbsp;no&nbsp;all&nbsp;path&nbsp;remove&nbsp;option</span></div></li> +<li><div class="src-line"><a name="a2492"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;or&nbsp;a&nbsp;dir&nbsp;with&nbsp;all&nbsp;its&nbsp;path&nbsp;removed</span></div></li> +<li><div class="src-line"><a name="a2493"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(&nbsp;&nbsp;&nbsp;(is_file($p_filedescr_list[$j]['filename']))</span></div></li> +<li><div class="src-line"><a name="a2494"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;(&nbsp;&nbsp;&nbsp;is_dir($p_filedescr_list[$j]['filename'])</span></div></li> +<li><div class="src-line"><a name="a2495"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'file'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2496"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'virtual_file'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2497"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'folder'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2498"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(&nbsp;&nbsp;&nbsp;</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a></span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2499"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">!</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a2500"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2501"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2502"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Add&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2503"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivAddFile">privAddFile</a><span class="src-sym">(</span><span class="src-var">$p_filedescr_list</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_header</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a2504"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2505"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2506"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2507"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2508"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2509"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Store&nbsp;the&nbsp;file&nbsp;infos</span></div></li> +<li><div class="src-line"><a name="a2510"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_result_list</span><span class="src-sym">[</span><span class="src-var">$v_nb</span>++<span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_header</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2511"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2512"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2513"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2514"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2515"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2516"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2517"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2518"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2519"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2520"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privAddFile()</span></div></li> +<li><div class="src-line"><a name="a2521"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2522"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2523"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2524"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2525"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivAddFile">privAddFile</a><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_header</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2526"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2527"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2528"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2529"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Working&nbsp;variable</span></div></li> +<li><div class="src-line"><a name="a2530"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filename&nbsp;</span>=&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2531"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2532"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;Already&nbsp;done&nbsp;in&nbsp;the&nbsp;fileAtt&nbsp;check&nbsp;...&nbsp;?</span></div></li> +<li><div class="src-line"><a name="a2533"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filename&nbsp;</span>==&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2534"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a2535"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;file&nbsp;list&nbsp;parameter&nbsp;(invalid&nbsp;or&nbsp;empty&nbsp;list)&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2536"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2537"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2538"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2539"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2540"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2541"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;a&nbsp;stored&nbsp;different&nbsp;filename&nbsp;</span></div></li> +<li><div class="src-line"><a name="a2542"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">/*&nbsp;TBC&nbsp;:&nbsp;Removed</span></div></li> +<li><div class="src-line"><a name="a2543"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(isset($p_filedescr['stored_filename']))&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a2544"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$v_stored_filename&nbsp;=&nbsp;$p_filedescr['stored_filename'];</span></div></li> +<li><div class="src-line"><a name="a2545"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a2546"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a2547"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$v_stored_filename&nbsp;=&nbsp;$p_filedescr['stored_filename'];</span></div></li> +<li><div class="src-line"><a name="a2548"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a2549"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a2550"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2551"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;file&nbsp;properties</span></div></li> +<li><div class="src-line"><a name="a2552"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/clearstatcache">clearstatcache</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2553"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'version'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">20</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2554"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'version_extracted'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">10</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2555"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'flag'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2556"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2557"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2558"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2559"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename_len'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2560"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra_len'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2561"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'disk'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2562"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'internal'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2563"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2564"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_filename</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2565"></a><span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;Removed&nbsp;&nbsp;&nbsp;&nbsp;$p_header['stored_filename']&nbsp;=&nbsp;$v_stored_filename;</span></div></li> +<li><div class="src-line"><a name="a2566"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2567"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2568"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">'ok'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2569"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'index'</span><span class="src-sym">]&nbsp;</span>=&nbsp;-<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2570"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2571"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;regular&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2572"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]</span>==<span class="src-str">'file'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2573"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0x00000000</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2574"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2575"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2576"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2577"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;regular&nbsp;folder</span></div></li> +<li><div class="src-line"><a name="a2578"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]</span>==<span class="src-str">'folder'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2579"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0x00000010</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2580"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/filemtime">filemtime</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2581"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2582"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2583"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2584"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;virtual&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2585"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'virtual_file'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2586"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0x00000000</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2587"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'content'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2588"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2589"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2590"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2591"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;filetime</span></div></li> +<li><div class="src-line"><a name="a2592"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2593"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2594"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2595"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'virtual_file'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2596"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/time">time</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2597"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2598"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2599"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/filemtime">filemtime</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2600"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2601"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2602"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;------&nbsp;Look&nbsp;for&nbsp;file&nbsp;comment</span></div></li> +<li><div class="src-line"><a name="a2603"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2604"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment_len'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2605"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2606"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2607"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2608"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment_len'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2609"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2610"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2611"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2612"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;pre-add&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a2613"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_ADD">PCLZIP_CB_PRE_ADD</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2614"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2615"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Generate&nbsp;a&nbsp;local&nbsp;information</span></div></li> +<li><div class="src-line"><a name="a2616"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_local_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2617"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2618"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2619"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a2620"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;I&nbsp;do&nbsp;not&nbsp;use&nbsp;call_user_func()&nbsp;because&nbsp;I&nbsp;need&nbsp;to&nbsp;send&nbsp;a&nbsp;reference&nbsp;to&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a2621"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;header.</span></div></li> +<li><div class="src-line"><a name="a2622"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eval('$v_result&nbsp;=&nbsp;'.$p_options[PCLZIP_CB_PRE_ADD].'(PCLZIP_CB_PRE_ADD,&nbsp;$v_local_header);');</span></div></li> +<li><div class="src-line"><a name="a2623"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_ADD">PCLZIP_CB_PRE_ADD</a></span><span class="src-sym">]</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_ADD">PCLZIP_CB_PRE_ADD</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2624"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2625"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a2626"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;skipped&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2627"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2628"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2629"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2630"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Update&nbsp;the&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a2631"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Only&nbsp;some&nbsp;fields&nbsp;can&nbsp;be&nbsp;modified</span></div></li> +<li><div class="src-line"><a name="a2632"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-var">$v_local_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2633"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathReduction">PclZipUtilPathReduction</a><span class="src-sym">(</span><span class="src-var">$v_local_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2634"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2635"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2636"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2637"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;empty&nbsp;stored&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a2638"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2639"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;filtered&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2640"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2641"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2642"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;path&nbsp;length</span></div></li> +<li><div class="src-line"><a name="a2643"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-num">0xFF</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2644"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">'filename_too_long'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2645"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2646"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2647"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;no&nbsp;error,&nbsp;or&nbsp;file&nbsp;not&nbsp;skipped</span></div></li> +<li><div class="src-line"><a name="a2648"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'ok'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2649"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2650"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;a&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2651"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'file'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2652"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;using&nbsp;temporary&nbsp;file&nbsp;to&nbsp;zip</span></div></li> +<li><div class="src-line"><a name="a2653"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span></div></li> +<li><div class="src-line"><a name="a2654"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_ON">PCLZIP_OPT_TEMP_FILE_ON</a></span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2655"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2656"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></span><span class="src-sym">]&nbsp;</span>&lt;=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;)&nbsp;)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2657"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivAddFileUsingTempFile">privAddFileUsingTempFile</a><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2658"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_NO_ERROR">PCLZIP_ERR_NO_ERROR</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2659"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2660"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2661"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2662"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2663"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Use&nbsp;&quot;in&nbsp;memory&quot;&nbsp;zip&nbsp;algo</span></div></li> +<li><div class="src-line"><a name="a2664"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2665"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2666"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;source&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2667"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_file&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;rb&quot;</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2668"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;</span><span class="src-str">Unable&nbsp;to&nbsp;open&nbsp;file&nbsp;'<span class="src-var">$p_filename</span>'&nbsp;in&nbsp;binary&nbsp;read&nbsp;mode</span><span class="src-str">&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2669"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2670"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2671"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2672"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;content</span></div></li> +<li><div class="src-line"><a name="a2673"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_content&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$v_file</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2674"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2675"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2676"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2677"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2678"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Calculate&nbsp;the&nbsp;CRC</span></div></li> +<li><div class="src-line"><a name="a2679"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/crc32">crc32</a><span class="src-sym">(</span><span class="src-var">$v_content</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2680"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2681"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;no&nbsp;compression</span></div></li> +<li><div class="src-line"><a name="a2682"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_NO_COMPRESSION">PCLZIP_OPT_NO_COMPRESSION</a></span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2683"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;header&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a2684"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2685"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2686"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2687"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2688"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;normal&nbsp;compression</span></div></li> +<li><div class="src-line"><a name="a2689"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2690"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Compress&nbsp;the&nbsp;content</span></div></li> +<li><div class="src-line"><a name="a2691"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_content&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzdeflate">gzdeflate</a><span class="src-sym">(</span><span class="src-var">$v_content</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2692"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2693"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;header&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a2694"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_content</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2695"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">8</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2696"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2697"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2698"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;header&nbsp;generation</span></div></li> +<li><div class="src-line"><a name="a2699"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivWriteFileHeader">privWriteFileHeader</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2700"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2701"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2702"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2703"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2704"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;the&nbsp;compressed&nbsp;(or&nbsp;not)&nbsp;content</span></div></li> +<li><div class="src-line"><a name="a2705"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_content</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2706"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2707"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2708"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2709"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2710"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2711"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;a&nbsp;virtual&nbsp;file&nbsp;(a&nbsp;file&nbsp;from&nbsp;string)</span></div></li> +<li><div class="src-line"><a name="a2712"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'virtual_file'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2713"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2714"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_content&nbsp;</span>=&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'content'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2715"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2716"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Calculate&nbsp;the&nbsp;CRC</span></div></li> +<li><div class="src-line"><a name="a2717"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/crc32">crc32</a><span class="src-sym">(</span><span class="src-var">$v_content</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2718"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2719"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;no&nbsp;compression</span></div></li> +<li><div class="src-line"><a name="a2720"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_NO_COMPRESSION">PCLZIP_OPT_NO_COMPRESSION</a></span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2721"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;header&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a2722"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2723"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2724"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2725"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2726"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;normal&nbsp;compression</span></div></li> +<li><div class="src-line"><a name="a2727"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2728"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Compress&nbsp;the&nbsp;content</span></div></li> +<li><div class="src-line"><a name="a2729"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_content&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzdeflate">gzdeflate</a><span class="src-sym">(</span><span class="src-var">$v_content</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2730"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2731"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;header&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a2732"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_content</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2733"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">8</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2734"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2735"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2736"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;header&nbsp;generation</span></div></li> +<li><div class="src-line"><a name="a2737"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivWriteFileHeader">privWriteFileHeader</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2738"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2739"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2740"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2741"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2742"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;the&nbsp;compressed&nbsp;(or&nbsp;not)&nbsp;content</span></div></li> +<li><div class="src-line"><a name="a2743"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_content</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2744"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2745"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2746"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;a&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a2747"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'type'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'folder'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2748"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;directory&nbsp;last&nbsp;'/'</span></div></li> +<li><div class="src-line"><a name="a2749"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-str">'/'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2750"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>.=&nbsp;<span class="src-str">'/'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2751"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2752"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2753"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;file&nbsp;properties</span></div></li> +<li><div class="src-line"><a name="a2754"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2755"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//$p_header['external']&nbsp;=&nbsp;0x41FF0010;&nbsp;&nbsp;&nbsp;//&nbsp;Value&nbsp;for&nbsp;a&nbsp;folder&nbsp;:&nbsp;to&nbsp;be&nbsp;checked</span></div></li> +<li><div class="src-line"><a name="a2756"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0x00000010</span><span class="src-sym">;&nbsp;&nbsp;&nbsp;</span><span class="src-comm">//&nbsp;Value&nbsp;for&nbsp;a&nbsp;folder&nbsp;:&nbsp;to&nbsp;be&nbsp;checked</span></div></li> +<li><div class="src-line"><a name="a2757"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2758"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;header&nbsp;generation</span></div></li> +<li><div class="src-line"><a name="a2759"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivWriteFileHeader">privWriteFileHeader</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2760"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2761"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2762"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2763"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2764"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2765"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2766"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;post-add&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a2767"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_ADD">PCLZIP_CB_POST_ADD</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2768"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2769"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Generate&nbsp;a&nbsp;local&nbsp;information</span></div></li> +<li><div class="src-line"><a name="a2770"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_local_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2771"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2772"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2773"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a2774"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;I&nbsp;do&nbsp;not&nbsp;use&nbsp;call_user_func()&nbsp;because&nbsp;I&nbsp;need&nbsp;to&nbsp;send&nbsp;a&nbsp;reference&nbsp;to&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a2775"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;header.</span></div></li> +<li><div class="src-line"><a name="a2776"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eval('$v_result&nbsp;=&nbsp;'.$p_options[PCLZIP_CB_POST_ADD].'(PCLZIP_CB_POST_ADD,&nbsp;$v_local_header);');</span></div></li> +<li><div class="src-line"><a name="a2777"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_ADD">PCLZIP_CB_POST_ADD</a></span><span class="src-sym">]</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_ADD">PCLZIP_CB_POST_ADD</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2778"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2779"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Ignored</span></div></li> +<li><div class="src-line"><a name="a2780"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2781"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2782"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2783"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Update&nbsp;the&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a2784"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Nothing&nbsp;can&nbsp;be&nbsp;modified</span></div></li> +<li><div class="src-line"><a name="a2785"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2786"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2787"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2788"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2789"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2790"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2791"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2792"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2793"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privAddFileUsingTempFile()</span></div></li> +<li><div class="src-line"><a name="a2794"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2795"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2796"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2797"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2798"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivAddFileUsingTempFile">privAddFileUsingTempFile</a><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_header</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2799"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2800"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_NO_ERROR">PCLZIP_ERR_NO_ERROR</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2801"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2802"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Working&nbsp;variable</span></div></li> +<li><div class="src-line"><a name="a2803"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filename&nbsp;</span>=&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2804"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2805"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2806"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;source&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2807"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_file&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;rb&quot;</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2808"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;</span><span class="src-str">Unable&nbsp;to&nbsp;open&nbsp;file&nbsp;'<span class="src-var">$p_filename</span>'&nbsp;in&nbsp;binary&nbsp;read&nbsp;mode</span><span class="src-str">&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2809"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2810"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2811"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2812"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Creates&nbsp;a&nbsp;compressed&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2813"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_gzip_temp_name&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_TEMPORARY_DIR">PCLZIP_TEMPORARY_DIR</a></span>.<a href="http://www.php.net/uniqid">uniqid</a><span class="src-sym">(</span><span class="src-str">'pclzip-'</span><span class="src-sym">)</span>.<span class="src-str">'.gz'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2814"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_file_compressed&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzopen">gzopen</a><span class="src-sym">(</span><span class="src-var">$v_gzip_temp_name</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;wb&quot;</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2815"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2816"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_WRITE_OPEN_FAIL">PCLZIP_ERR_WRITE_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;open&nbsp;temporary&nbsp;file&nbsp;\''</span>.<span class="src-var">$v_gzip_temp_name</span>.<span class="src-str">'\'&nbsp;in&nbsp;binary&nbsp;write&nbsp;mode'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2817"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2818"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2819"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2820"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;by&nbsp;PCLZIP_READ_BLOCK_SIZE&nbsp;octets&nbsp;blocks</span></div></li> +<li><div class="src-line"><a name="a2821"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2822"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2823"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2824"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$v_file</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2825"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//$v_binary_data&nbsp;=&nbsp;pack('a'.$v_read_size,&nbsp;$v_buffer);</span></div></li> +<li><div class="src-line"><a name="a2826"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzputs">gzputs</a><span class="src-sym">(</span><span class="src-var">$v_file_compressed</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2827"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2828"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2829"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2830"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2831"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2832"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzclose">gzclose</a><span class="src-sym">(</span><span class="src-var">$v_file_compressed</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2833"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2834"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;minimum&nbsp;file&nbsp;size</span></div></li> +<li><div class="src-line"><a name="a2835"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-var">$v_gzip_temp_name</span><span class="src-sym">)&nbsp;</span>&lt;&nbsp;<span class="src-num">18</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2836"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'gzip&nbsp;temporary&nbsp;file&nbsp;\''</span>.<span class="src-var">$v_gzip_temp_name</span>.<span class="src-str">'\'&nbsp;has&nbsp;invalid&nbsp;filesize&nbsp;-&nbsp;should&nbsp;be&nbsp;minimum&nbsp;18&nbsp;bytes'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2837"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2838"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2839"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2840"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extract&nbsp;the&nbsp;compressed&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a2841"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_file_compressed&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$v_gzip_temp_name</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;rb&quot;</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2842"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;open&nbsp;temporary&nbsp;file&nbsp;\''</span>.<span class="src-var">$v_gzip_temp_name</span>.<span class="src-str">'\'&nbsp;in&nbsp;binary&nbsp;read&nbsp;mode'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2843"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2844"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2845"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2846"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;gzip&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a2847"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$v_file_compressed</span><span class="src-sym">,&nbsp;</span><span class="src-num">10</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2848"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_data_header&nbsp;</span>=&nbsp;<a href="http://www.php.net/unpack">unpack</a><span class="src-sym">(</span><span class="src-str">'a1id1/a1id2/a1cm/a1flag/Vmtime/a1xfl/a1os'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2849"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2850"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;some&nbsp;parameters</span></div></li> +<li><div class="src-line"><a name="a2851"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_data_header</span><span class="src-sym">[</span><span class="src-str">'os'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/bin2hex">bin2hex</a><span class="src-sym">(</span><span class="src-var">$v_data_header</span><span class="src-sym">[</span><span class="src-str">'os'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2852"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2853"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;gzip&nbsp;file&nbsp;footer</span></div></li> +<li><div class="src-line"><a name="a2854"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fseek">fseek</a><span class="src-sym">(</span><span class="src-var">$v_file_compressed</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-var">$v_gzip_temp_name</span><span class="src-sym">)</span>-<span class="src-num">8</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2855"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$v_file_compressed</span><span class="src-sym">,&nbsp;</span><span class="src-num">8</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2856"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_data_footer&nbsp;</span>=&nbsp;<a href="http://www.php.net/unpack">unpack</a><span class="src-sym">(</span><span class="src-str">'Vcrc/Vcompressed_size'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2857"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2858"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a2859"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/ord">ord</a><span class="src-sym">(</span><span class="src-var">$v_data_header</span><span class="src-sym">[</span><span class="src-str">'cm'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2860"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//$p_header['mtime']&nbsp;=&nbsp;$v_data_header['mtime'];</span></div></li> +<li><div class="src-line"><a name="a2861"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data_footer</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2862"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-var">$v_gzip_temp_name</span><span class="src-sym">)</span>-<span class="src-num">18</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2863"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2864"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2865"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_file_compressed</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2866"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2867"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;header&nbsp;generation</span></div></li> +<li><div class="src-line"><a name="a2868"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivWriteFileHeader">privWriteFileHeader</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2869"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2870"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2871"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2872"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Add&nbsp;the&nbsp;compressed&nbsp;data</span></div></li> +<li><div class="src-line"><a name="a2873"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_file_compressed&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$v_gzip_temp_name</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;rb&quot;</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2874"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2875"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;open&nbsp;temporary&nbsp;file&nbsp;\''</span>.<span class="src-var">$v_gzip_temp_name</span>.<span class="src-str">'\'&nbsp;in&nbsp;binary&nbsp;read&nbsp;mode'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2876"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2877"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2878"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2879"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;by&nbsp;PCLZIP_READ_BLOCK_SIZE&nbsp;octets&nbsp;blocks</span></div></li> +<li><div class="src-line"><a name="a2880"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fseek">fseek</a><span class="src-sym">(</span><span class="src-var">$v_file_compressed</span><span class="src-sym">,&nbsp;</span><span class="src-num">10</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2881"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2882"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2883"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2884"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2885"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$v_file_compressed</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2886"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//$v_binary_data&nbsp;=&nbsp;pack('a'.$v_read_size,&nbsp;$v_buffer);</span></div></li> +<li><div class="src-line"><a name="a2887"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2888"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2889"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2890"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2891"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2892"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_file_compressed</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2893"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2894"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Unlink&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a2895"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$v_gzip_temp_name</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2896"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2897"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a2898"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2899"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2900"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2901"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2902"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2903"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privCalculateStoredFilename()</span></div></li> +<li><div class="src-line"><a name="a2904"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2905"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Based&nbsp;on&nbsp;file&nbsp;descriptor&nbsp;properties&nbsp;and&nbsp;global&nbsp;options,&nbsp;this&nbsp;method</span></div></li> +<li><div class="src-line"><a name="a2906"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;calculate&nbsp;the&nbsp;filename&nbsp;that&nbsp;will&nbsp;be&nbsp;stored&nbsp;in&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a2907"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2908"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a2909"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a2910"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivCalculateStoredFilename">privCalculateStoredFilename</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_filedescr</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2911"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2912"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2913"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2914"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Working&nbsp;variables</span></div></li> +<li><div class="src-line"><a name="a2915"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filename&nbsp;</span>=&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2916"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2917"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_add_dir&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2918"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2919"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2920"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_add_dir&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2921"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2922"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2923"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_remove_dir&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2924"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2925"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2926"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_remove_dir&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2927"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2928"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2929"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_remove_all_dir&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2930"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2931"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2932"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_remove_all_dir&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2933"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2934"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2935"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2936"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;full&nbsp;name&nbsp;change</span></div></li> +<li><div class="src-line"><a name="a2937"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'new_full_name'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2938"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Remove&nbsp;drive&nbsp;letter&nbsp;if&nbsp;any</span></div></li> +<li><div class="src-line"><a name="a2939"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_stored_filename&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilTranslateWinPath">PclZipUtilTranslateWinPath</a><span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'new_full_name'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2940"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2941"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2942"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;path&nbsp;and/or&nbsp;short&nbsp;name&nbsp;change</span></div></li> +<li><div class="src-line"><a name="a2943"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2944"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2945"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;short&nbsp;name&nbsp;change</span></div></li> +<li><div class="src-line"><a name="a2946"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Its&nbsp;when&nbsp;we&nbsp;cahnge&nbsp;just&nbsp;the&nbsp;filename&nbsp;but&nbsp;not&nbsp;the&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a2947"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'new_short_name'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2948"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_path_info&nbsp;</span>=&nbsp;<a href="http://www.php.net/pathinfo">pathinfo</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2949"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_dir&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2950"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_path_info</span><span class="src-sym">[</span><span class="src-str">'dirname'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2951"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_dir&nbsp;</span>=&nbsp;<span class="src-var">$v_path_info</span><span class="src-sym">[</span><span class="src-str">'dirname'</span><span class="src-sym">]</span>.<span class="src-str">'/'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2952"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2953"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_stored_filename&nbsp;</span>=&nbsp;<span class="src-var">$v_dir</span>.<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'new_short_name'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2954"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2955"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2956"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Calculate&nbsp;the&nbsp;stored&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a2957"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_stored_filename&nbsp;</span>=&nbsp;<span class="src-var">$p_filename</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2958"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2959"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2960"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;all&nbsp;path&nbsp;to&nbsp;remove</span></div></li> +<li><div class="src-line"><a name="a2961"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_remove_all_dir</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2962"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_stored_filename&nbsp;</span>=&nbsp;<a href="http://www.php.net/basename">basename</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2963"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2964"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;partial&nbsp;path&nbsp;remove</span></div></li> +<li><div class="src-line"><a name="a2965"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_remove_dir&nbsp;</span>!=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2966"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_remove_dir</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-str">'/'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2967"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_remove_dir&nbsp;</span>.=&nbsp;<span class="src-str">&quot;/&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2968"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2969"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">&quot;./&quot;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2970"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_remove_dir</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">&quot;./&quot;</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2971"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2972"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">&quot;./&quot;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2973"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_remove_dir</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-str">&quot;./&quot;</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2974"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_remove_dir&nbsp;</span>=&nbsp;<span class="src-str">&quot;./&quot;</span>.<span class="src-var">$p_remove_dir</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2975"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2976"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_filename</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-str">&quot;./&quot;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a2977"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_remove_dir</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">&quot;./&quot;</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2978"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_remove_dir&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_remove_dir</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2979"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2980"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2981"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a2982"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_compare&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathInclusion">PclZipUtilPathInclusion</a><span class="src-sym">(</span><span class="src-var">$p_remove_dir</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a2983"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_stored_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2984"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_compare&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2985"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_compare&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2986"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_stored_filename&nbsp;</span>=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2987"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2988"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a2989"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_stored_filename&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$v_stored_filename</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a2990"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_remove_dir</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2991"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2992"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2993"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a2994"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2995"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Remove&nbsp;drive&nbsp;letter&nbsp;if&nbsp;any</span></div></li> +<li><div class="src-line"><a name="a2996"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_stored_filename&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilTranslateWinPath">PclZipUtilTranslateWinPath</a><span class="src-sym">(</span><span class="src-var">$v_stored_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a2997"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a2998"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;path&nbsp;to&nbsp;add</span></div></li> +<li><div class="src-line"><a name="a2999"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_add_dir&nbsp;</span>!=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3000"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_add_dir</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">&quot;/&quot;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3001"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_stored_filename&nbsp;</span>=&nbsp;<span class="src-var">$p_add_dir</span>.<span class="src-var">$v_stored_filename</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3002"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a3003"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_stored_filename&nbsp;</span>=&nbsp;<span class="src-var">$p_add_dir</span>.<span class="src-str">&quot;/&quot;</span>.<span class="src-var">$v_stored_filename</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3004"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3005"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3006"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3007"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Filename&nbsp;(reduce&nbsp;the&nbsp;path&nbsp;of&nbsp;stored&nbsp;name)</span></div></li> +<li><div class="src-line"><a name="a3008"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_stored_filename&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathReduction">PclZipUtilPathReduction</a><span class="src-sym">(</span><span class="src-var">$v_stored_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3009"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_filedescr</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_stored_filename</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3010"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3011"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3012"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3013"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3014"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3015"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3016"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3017"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privWriteFileHeader()</span></div></li> +<li><div class="src-line"><a name="a3018"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3019"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3020"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3021"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3022"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivWriteFileHeader">privWriteFileHeader</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_header</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3023"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3024"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3025"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3026"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Store&nbsp;the&nbsp;offset&nbsp;position&nbsp;of&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3027"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3028"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3029"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Transform&nbsp;UNIX&nbsp;mtime&nbsp;to&nbsp;DOS&nbsp;format&nbsp;mdate/mtime</span></div></li> +<li><div class="src-line"><a name="a3030"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_date&nbsp;</span>=&nbsp;<a href="http://www.php.net/getdate">getdate</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3031"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_mtime&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'hours'</span><span class="src-sym">]</span>&lt;&lt;<span class="src-num">11</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'minutes'</span><span class="src-sym">]</span>&lt;&lt;<span class="src-num">5</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'seconds'</span><span class="src-sym">]</span>/<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3032"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_mdate&nbsp;</span>=&nbsp;<span class="src-sym">((</span><span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'year'</span><span class="src-sym">]</span>-<span class="src-num">1980</span><span class="src-sym">)</span>&lt;&lt;<span class="src-num">9</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'mon'</span><span class="src-sym">]</span>&lt;&lt;<span class="src-num">5</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'mday'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3033"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3034"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Packed&nbsp;data</span></div></li> +<li><div class="src-line"><a name="a3035"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/pack">pack</a><span class="src-sym">(</span><span class="src-str">&quot;VvvvvvVVVvv&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-num">0x04034b50</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3036"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'version_extracted'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'flag'</span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3037"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_mtime</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_mdate</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3038"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3039"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3040"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3041"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra_len'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3042"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3043"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;the&nbsp;first&nbsp;148&nbsp;bytes&nbsp;of&nbsp;the&nbsp;header&nbsp;in&nbsp;the&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a3044"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fputs">fputs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">,&nbsp;</span><span class="src-num">30</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3045"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3046"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;the&nbsp;variable&nbsp;fields</span></div></li> +<li><div class="src-line"><a name="a3047"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3048"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3049"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fputs">fputs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3050"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3051"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra_len'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3052"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3053"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fputs">fputs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra_len'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3054"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3055"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3056"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3057"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3058"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3059"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3060"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3061"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3062"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privWriteCentralFileHeader()</span></div></li> +<li><div class="src-line"><a name="a3063"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3064"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3065"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3066"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3067"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivWriteCentralFileHeader">privWriteCentralFileHeader</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_header</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3068"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3069"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3070"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3071"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a3072"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//for(reset($p_header);&nbsp;$key&nbsp;=&nbsp;key($p_header);&nbsp;next($p_header))&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a3073"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//}</span></div></li> +<li><div class="src-line"><a name="a3074"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3075"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Transform&nbsp;UNIX&nbsp;mtime&nbsp;to&nbsp;DOS&nbsp;format&nbsp;mdate/mtime</span></div></li> +<li><div class="src-line"><a name="a3076"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_date&nbsp;</span>=&nbsp;<a href="http://www.php.net/getdate">getdate</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3077"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_mtime&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'hours'</span><span class="src-sym">]</span>&lt;&lt;<span class="src-num">11</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'minutes'</span><span class="src-sym">]</span>&lt;&lt;<span class="src-num">5</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'seconds'</span><span class="src-sym">]</span>/<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3078"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_mdate&nbsp;</span>=&nbsp;<span class="src-sym">((</span><span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'year'</span><span class="src-sym">]</span>-<span class="src-num">1980</span><span class="src-sym">)</span>&lt;&lt;<span class="src-num">9</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-sym">(</span><span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'mon'</span><span class="src-sym">]</span>&lt;&lt;<span class="src-num">5</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-var">$v_date</span><span class="src-sym">[</span><span class="src-str">'mday'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3079"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3080"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3081"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Packed&nbsp;data</span></div></li> +<li><div class="src-line"><a name="a3082"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/pack">pack</a><span class="src-sym">(</span><span class="src-str">&quot;VvvvvvvVVVvvvvvVV&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-num">0x02014b50</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3083"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'version'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'version_extracted'</span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3084"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'flag'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3085"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_mtime</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_mdate</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3086"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3087"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3088"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra_len'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment_len'</span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3089"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'disk'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'internal'</span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3090"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3091"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3092"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;the&nbsp;42&nbsp;bytes&nbsp;of&nbsp;the&nbsp;header&nbsp;in&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3093"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fputs">fputs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">,&nbsp;</span><span class="src-num">46</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3094"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3095"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;the&nbsp;variable&nbsp;fields</span></div></li> +<li><div class="src-line"><a name="a3096"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3097"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3098"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fputs">fputs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3099"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3100"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra_len'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3101"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fputs">fputs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra_len'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3103"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3104"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment_len'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3105"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fputs">fputs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment_len'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3107"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3108"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3109"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3110"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3111"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3112"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3113"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3114"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3115"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privWriteCentralHeader()</span></div></li> +<li><div class="src-line"><a name="a3116"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3117"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3118"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3119"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3120"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivWriteCentralHeader">privWriteCentralHeader</a><span class="src-sym">(</span><span class="src-var">$p_nb_entries</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_size</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_offset</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_comment</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3121"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3122"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3123"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3124"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Packed&nbsp;data</span></div></li> +<li><div class="src-line"><a name="a3125"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/pack">pack</a><span class="src-sym">(</span><span class="src-str">&quot;VvvvvVVv&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-num">0x06054b50</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_nb_entries</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3126"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_nb_entries</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_size</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3127"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_offset</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_comment</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3128"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3129"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;the&nbsp;22&nbsp;bytes&nbsp;of&nbsp;the&nbsp;header&nbsp;in&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3130"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fputs">fputs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">,&nbsp;</span><span class="src-num">22</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3131"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3132"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;the&nbsp;variable&nbsp;fields</span></div></li> +<li><div class="src-line"><a name="a3133"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_comment</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3134"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fputs">fputs</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_comment</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_comment</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3136"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3137"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3138"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3139"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3140"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3141"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3142"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3143"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3144"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privList()</span></div></li> +<li><div class="src-line"><a name="a3145"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3146"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3147"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3148"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3149"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivList">privList</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_list</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3150"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3151"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3152"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3153"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a3154"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDisableMagicQuotes">privDisableMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3155"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3156"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3157"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">,&nbsp;</span><span class="src-str">'rb'</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3158"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3159"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a3160"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3161"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3162"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a3163"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;open&nbsp;archive&nbsp;\''</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a>.<span class="src-str">'\'&nbsp;in&nbsp;binary&nbsp;read&nbsp;mode'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3164"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3165"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3166"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3167"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3168"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3169"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;central&nbsp;directory&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a3170"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_central_dir&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3171"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadEndCentralDir">privReadEndCentralDir</a><span class="src-sym">(</span><span class="src-var">$v_central_dir</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3172"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3173"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3174"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3175"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3176"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3177"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Go&nbsp;to&nbsp;beginning&nbsp;of&nbsp;Central&nbsp;Dir</span></div></li> +<li><div class="src-line"><a name="a3178"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/rewind">rewind</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3179"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/fseek">fseek</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3180"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3182"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3183"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a3184"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ARCHIVE_ZIP">PCLZIP_ERR_INVALID_ARCHIVE_ZIP</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Invalid&nbsp;archive&nbsp;size'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3185"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3186"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3187"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3188"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3189"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3190"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;each&nbsp;entry</span></div></li> +<li><div class="src-line"><a name="a3191"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>&lt;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'entries'</span><span class="src-sym">]</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>++<span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3192"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a3194"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadCentralFileHeader">privReadCentralFileHeader</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3195"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3196"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'index'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3200"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3201"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;only&nbsp;interesting&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a3202"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3203"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3204"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3205"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3206"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3207"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3208"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3209"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a3210"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3211"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3212"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3213"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3214"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3215"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3216"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3217"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3218"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privConvertHeader2FileInfo()</span></div></li> +<li><div class="src-line"><a name="a3219"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3220"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;function&nbsp;takes&nbsp;the&nbsp;file&nbsp;informations&nbsp;from&nbsp;the&nbsp;central&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a3221"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;entries&nbsp;and&nbsp;extract&nbsp;the&nbsp;interesting&nbsp;parameters&nbsp;that&nbsp;will&nbsp;be&nbsp;given&nbsp;back.</span></div></li> +<li><div class="src-line"><a name="a3222"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;resulting&nbsp;file&nbsp;infos&nbsp;are&nbsp;set&nbsp;in&nbsp;the&nbsp;array&nbsp;$p_info</span></div></li> +<li><div class="src-line"><a name="a3223"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$p_info['filename']&nbsp;:&nbsp;Filename&nbsp;with&nbsp;full&nbsp;path.&nbsp;Given&nbsp;by&nbsp;user&nbsp;(add),</span></div></li> +<li><div class="src-line"><a name="a3224"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;extracted&nbsp;in&nbsp;the&nbsp;filesystem&nbsp;(extract).</span></div></li> +<li><div class="src-line"><a name="a3225"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$p_info['stored_filename']&nbsp;:&nbsp;Stored&nbsp;filename&nbsp;in&nbsp;the&nbsp;archive.</span></div></li> +<li><div class="src-line"><a name="a3226"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$p_info['size']&nbsp;=&nbsp;Size&nbsp;of&nbsp;the&nbsp;file.</span></div></li> +<li><div class="src-line"><a name="a3227"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$p_info['compressed_size']&nbsp;=&nbsp;Compressed&nbsp;size&nbsp;of&nbsp;the&nbsp;file.</span></div></li> +<li><div class="src-line"><a name="a3228"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$p_info['mtime']&nbsp;=&nbsp;Last&nbsp;modification&nbsp;date&nbsp;of&nbsp;the&nbsp;file.</span></div></li> +<li><div class="src-line"><a name="a3229"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$p_info['comment']&nbsp;=&nbsp;Comment&nbsp;associated&nbsp;with&nbsp;the&nbsp;file.</span></div></li> +<li><div class="src-line"><a name="a3230"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$p_info['folder']&nbsp;=&nbsp;true/false&nbsp;:&nbsp;indicates&nbsp;if&nbsp;the&nbsp;entry&nbsp;is&nbsp;a&nbsp;folder&nbsp;or&nbsp;not.</span></div></li> +<li><div class="src-line"><a name="a3231"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$p_info['status']&nbsp;=&nbsp;status&nbsp;of&nbsp;the&nbsp;action&nbsp;on&nbsp;the&nbsp;file.</span></div></li> +<li><div class="src-line"><a name="a3232"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$p_info['crc']&nbsp;=&nbsp;CRC&nbsp;of&nbsp;the&nbsp;file&nbsp;content.</span></div></li> +<li><div class="src-line"><a name="a3233"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3234"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3235"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3236"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_info</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3237"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3238"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3239"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3240"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;interesting&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a3241"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_temp_path&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathReduction">PclZipUtilPathReduction</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3242"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_info</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_temp_path</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3243"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_temp_path&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathReduction">PclZipUtilPathReduction</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3244"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_info</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_temp_path</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3245"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_info</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3246"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_info</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3247"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_info</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3248"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_info</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3249"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_info</span><span class="src-sym">[</span><span class="src-str">'folder'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">((</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]</span><span class="src-sym">&amp;</span><span class="src-num">0x00000010</span><span class="src-sym">)</span>==<span class="src-num">0x00000010</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3250"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_info</span><span class="src-sym">[</span><span class="src-str">'index'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'index'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3251"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_info</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3252"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_info</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3253"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3254"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3255"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3256"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3257"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3258"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3259"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3260"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privExtractByRule()</span></div></li> +<li><div class="src-line"><a name="a3261"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3262"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Extract&nbsp;a&nbsp;file&nbsp;or&nbsp;directory&nbsp;depending&nbsp;of&nbsp;rules&nbsp;(by&nbsp;index,&nbsp;by&nbsp;name,&nbsp;...)</span></div></li> +<li><div class="src-line"><a name="a3263"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3264"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_file_list&nbsp;:&nbsp;An&nbsp;array&nbsp;where&nbsp;will&nbsp;be&nbsp;placed&nbsp;the&nbsp;properties&nbsp;of&nbsp;each</span></div></li> +<li><div class="src-line"><a name="a3265"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;extracted&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3266"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_path&nbsp;:&nbsp;Path&nbsp;to&nbsp;add&nbsp;while&nbsp;writing&nbsp;the&nbsp;extracted&nbsp;files</span></div></li> +<li><div class="src-line"><a name="a3267"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_remove_path&nbsp;:&nbsp;Path&nbsp;to&nbsp;remove&nbsp;(from&nbsp;the&nbsp;file&nbsp;memorized&nbsp;path)&nbsp;while&nbsp;writing&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a3268"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;extracted&nbsp;files.&nbsp;If&nbsp;the&nbsp;path&nbsp;does&nbsp;not&nbsp;match&nbsp;the&nbsp;file&nbsp;path,</span></div></li> +<li><div class="src-line"><a name="a3269"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;the&nbsp;file&nbsp;is&nbsp;extracted&nbsp;with&nbsp;its&nbsp;memorized&nbsp;path.</span></div></li> +<li><div class="src-line"><a name="a3270"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$p_remove_path&nbsp;does&nbsp;not&nbsp;apply&nbsp;to&nbsp;'list'&nbsp;mode.</span></div></li> +<li><div class="src-line"><a name="a3271"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$p_path&nbsp;and&nbsp;$p_remove_path&nbsp;are&nbsp;commulative.</span></div></li> +<li><div class="src-line"><a name="a3272"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3273"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;1&nbsp;on&nbsp;success,0&nbsp;or&nbsp;less&nbsp;on&nbsp;error&nbsp;(see&nbsp;error&nbsp;code&nbsp;list)</span></div></li> +<li><div class="src-line"><a name="a3274"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3275"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivExtractByRule">privExtractByRule</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_file_list</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_remove_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_remove_all_path</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3276"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3277"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3278"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3279"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Magic&nbsp;quotes&nbsp;trick</span></div></li> +<li><div class="src-line"><a name="a3280"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDisableMagicQuotes">privDisableMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3281"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3282"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a3283"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><span class="src-var">$p_path&nbsp;</span>==&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3284"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-str">&quot;/&quot;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3285"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">3</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-str">&quot;../&quot;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3286"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,</span><span class="src-num">1</span><span class="src-sym">,</span><span class="src-num">2</span><span class="src-sym">)</span>!=<span class="src-str">&quot;:/&quot;</span><span class="src-sym">)))</span></div></li> +<li><div class="src-line"><a name="a3287"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_path&nbsp;</span>=&nbsp;<span class="src-str">&quot;./&quot;</span>.<span class="src-var">$p_path</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3288"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3289"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reduce&nbsp;the&nbsp;path&nbsp;last&nbsp;(and&nbsp;duplicated)&nbsp;'/'</span></div></li> +<li><div class="src-line"><a name="a3290"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$p_path&nbsp;</span>!=&nbsp;<span class="src-str">&quot;./&quot;</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_path&nbsp;</span>!=&nbsp;<span class="src-str">&quot;/&quot;</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3291"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3292"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;the&nbsp;path&nbsp;end&nbsp;'/'</span></div></li> +<li><div class="src-line"><a name="a3293"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">&quot;/&quot;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3294"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3295"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_path&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">)</span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3296"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3297"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3298"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3299"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;path&nbsp;to&nbsp;remove&nbsp;format&nbsp;(should&nbsp;end&nbsp;by&nbsp;/)</span></div></li> +<li><div class="src-line"><a name="a3300"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$p_remove_path&nbsp;</span>!=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_remove_path</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-str">'/'</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3301"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3302"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_remove_path&nbsp;</span>.=&nbsp;<span class="src-str">'/'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3303"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3304"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_remove_path_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_remove_path</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3305"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3306"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3307"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivOpenFd">privOpenFd</a><span class="src-sym">(</span><span class="src-str">'rb'</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3308"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3309"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3310"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3311"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3312"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3313"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;central&nbsp;directory&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a3314"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_central_dir&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3315"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadEndCentralDir">privReadEndCentralDir</a><span class="src-sym">(</span><span class="src-var">$v_central_dir</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3316"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3317"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3318"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3319"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3320"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3321"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3322"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3323"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3324"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Start&nbsp;at&nbsp;beginning&nbsp;of&nbsp;Central&nbsp;Dir</span></div></li> +<li><div class="src-line"><a name="a3325"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_pos_entry&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3326"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3327"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;each&nbsp;entry</span></div></li> +<li><div class="src-line"><a name="a3328"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$j_start&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3329"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_nb_extracted</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>&lt;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'entries'</span><span class="src-sym">]</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>++<span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3330"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3331"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3332"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;next&nbsp;Central&nbsp;dir&nbsp;entry</span></div></li> +<li><div class="src-line"><a name="a3333"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/rewind">rewind</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3334"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/fseek">fseek</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_pos_entry</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3335"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3336"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3337"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3338"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3339"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3340"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a3341"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ARCHIVE_ZIP">PCLZIP_ERR_INVALID_ARCHIVE_ZIP</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Invalid&nbsp;archive&nbsp;size'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3342"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3343"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3344"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3345"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3346"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3347"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a3348"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3349"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadCentralFileHeader">privReadCentralFileHeader</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3350"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3351"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3352"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3353"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3354"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3355"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3356"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3357"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3358"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Store&nbsp;the&nbsp;index</span></div></li> +<li><div class="src-line"><a name="a3359"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'index'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3360"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3361"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Store&nbsp;the&nbsp;file&nbsp;position</span></div></li> +<li><div class="src-line"><a name="a3362"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_pos_entry&nbsp;</span>=&nbsp;<a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3363"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3364"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;the&nbsp;specific&nbsp;extract&nbsp;rules</span></div></li> +<li><div class="src-line"><a name="a3365"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_extract&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3366"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3367"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;extract&nbsp;by&nbsp;name&nbsp;rule</span></div></li> +<li><div class="src-line"><a name="a3368"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3369"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3370"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3371"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;filename&nbsp;is&nbsp;in&nbsp;the&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a3372"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>&lt;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$v_extract</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j</span>++<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3373"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3374"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;a&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a3375"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">&quot;/&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3376"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3377"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;directory&nbsp;is&nbsp;in&nbsp;the&nbsp;filename&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a3378"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3379"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3380"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_extract&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3381"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3382"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3383"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;a&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a3384"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3385"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_extract&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3386"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3387"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3388"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3389"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3390"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;extract&nbsp;by&nbsp;ereg&nbsp;rule</span></div></li> +<li><div class="src-line"><a name="a3391"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;ereg()&nbsp;is&nbsp;deprecated&nbsp;with&nbsp;PHP&nbsp;5.3</span></div></li> +<li><div class="src-line"><a name="a3392"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">/*&nbsp;</span></div></li> +<li><div class="src-line"><a name="a3393"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if&nbsp;(&nbsp;&nbsp;&nbsp;(isset($p_options[PCLZIP_OPT_BY_EREG]))</span></div></li> +<li><div class="src-line"><a name="a3394"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;($p_options[PCLZIP_OPT_BY_EREG]&nbsp;!=&nbsp;&quot;&quot;))&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a3395"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3396"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(ereg($p_options[PCLZIP_OPT_BY_EREG],&nbsp;$v_header['stored_filename']))&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a3397"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$v_extract&nbsp;=&nbsp;true;</span></div></li> +<li><div class="src-line"><a name="a3398"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a3399"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a3400"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a3401"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3402"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;extract&nbsp;by&nbsp;preg&nbsp;rule</span></div></li> +<li><div class="src-line"><a name="a3403"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3404"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a></span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3405"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3406"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a></span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3407"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_extract&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3408"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3409"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3410"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3411"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;extract&nbsp;by&nbsp;index&nbsp;rule</span></div></li> +<li><div class="src-line"><a name="a3412"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3413"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3414"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3415"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;index&nbsp;is&nbsp;in&nbsp;the&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a3416"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>=<span class="src-var">$j_start</span><span class="src-sym">;&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>&lt;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$v_extract</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j</span>++<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3417"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3418"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i</span>&gt;=<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'start'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$i</span>&lt;=<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'end'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3419"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_extract&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3420"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3421"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>&gt;=<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'end'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3422"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$j_start&nbsp;</span>=&nbsp;<span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3423"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3424"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3425"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'start'</span><span class="src-sym">]</span>&gt;<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3426"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3427"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3428"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3429"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3430"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3431"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;no&nbsp;rule,&nbsp;which&nbsp;means&nbsp;extract&nbsp;all&nbsp;the&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a3432"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3433"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_extract&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3434"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3435"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3436"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;compression&nbsp;method</span></div></li> +<li><div class="src-line"><a name="a3437"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><span class="src-var">$v_extract</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3438"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">8</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3439"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3440"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">'unsupported_compression'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3441"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3442"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;PCLZIP_OPT_STOP_ON_ERROR</span></div></li> +<li><div class="src-line"><a name="a3443"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3444"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></span><span class="src-sym">]</span>===<span class="src-id">true</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3445"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3446"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3447"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3448"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_UNSUPPORTED_COMPRESSION">PCLZIP_ERR_UNSUPPORTED_COMPRESSION</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3449"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">&quot;Filename&nbsp;'&quot;</span>.<span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span>.<span class="src-str">&quot;'&nbsp;is&nbsp;&quot;</span></div></li> +<li><div class="src-line"><a name="a3450"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-str">&quot;compressed&nbsp;by&nbsp;an&nbsp;unsupported&nbsp;compression&nbsp;&quot;</span></div></li> +<li><div class="src-line"><a name="a3451"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-str">&quot;method&nbsp;(&quot;</span>.<span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]</span>.<span class="src-str">&quot;)&nbsp;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3452"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3453"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3454"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3455"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3456"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3457"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;encrypted&nbsp;files</span></div></li> +<li><div class="src-line"><a name="a3458"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_extract</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">((</span><span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'flag'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">1</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-num">1</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3459"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">'unsupported_encryption'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3460"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3461"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;PCLZIP_OPT_STOP_ON_ERROR</span></div></li> +<li><div class="src-line"><a name="a3462"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3463"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></span><span class="src-sym">]</span>===<span class="src-id">true</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3464"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3465"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3466"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3467"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_UNSUPPORTED_ENCRYPTION">PCLZIP_ERR_UNSUPPORTED_ENCRYPTION</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3468"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">&quot;Unsupported&nbsp;encryption&nbsp;for&nbsp;&quot;</span></div></li> +<li><div class="src-line"><a name="a3469"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-str">&quot;&nbsp;filename&nbsp;'&quot;</span>.<span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span></div></li> +<li><div class="src-line"><a name="a3470"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-str">&quot;'&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3471"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3472"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3473"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3474"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3475"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3476"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;real&nbsp;extraction</span></div></li> +<li><div class="src-line"><a name="a3477"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_extract</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-str">'ok'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3478"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3479"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_file_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span>++<span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3480"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3481"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3482"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3483"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3484"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3485"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3486"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_extract&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3487"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3488"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3489"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;real&nbsp;extraction</span></div></li> +<li><div class="src-line"><a name="a3490"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_extract</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3491"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3492"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3493"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Go&nbsp;to&nbsp;the&nbsp;file&nbsp;position</span></div></li> +<li><div class="src-line"><a name="a3494"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/rewind">rewind</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3495"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/fseek">fseek</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_header</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3496"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3497"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3498"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3499"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3500"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3501"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3502"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a3503"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ARCHIVE_ZIP">PCLZIP_ERR_INVALID_ARCHIVE_ZIP</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Invalid&nbsp;archive&nbsp;size'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3504"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3505"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3506"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3507"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3508"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3509"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;extraction&nbsp;as&nbsp;string</span></div></li> +<li><div class="src-line"><a name="a3510"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_AS_STRING">PCLZIP_OPT_EXTRACT_AS_STRING</a></span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3511"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3512"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_string&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3513"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3514"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extracting&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3515"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result1&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivExtractFileAsString">privExtractFileAsString</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_string</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3516"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result1&nbsp;</span>&lt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3517"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3518"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3519"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3520"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3521"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3522"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;only&nbsp;interesting&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a3523"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_file_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3524"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3525"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3526"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3527"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3528"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3529"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3530"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3531"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3532"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;file&nbsp;content</span></div></li> +<li><div class="src-line"><a name="a3533"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_file_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'content'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_string</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3534"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3535"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Next&nbsp;extracted&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3536"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_nb_extracted</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3537"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3538"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;user&nbsp;callback&nbsp;abort</span></div></li> +<li><div class="src-line"><a name="a3539"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result1&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3540"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3541"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3542"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3543"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;extraction&nbsp;in&nbsp;standard&nbsp;output</span></div></li> +<li><div class="src-line"><a name="a3544"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">elseif&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_IN_OUTPUT">PCLZIP_OPT_EXTRACT_IN_OUTPUT</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3545"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_IN_OUTPUT">PCLZIP_OPT_EXTRACT_IN_OUTPUT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3546"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extracting&nbsp;the&nbsp;file&nbsp;in&nbsp;standard&nbsp;output</span></div></li> +<li><div class="src-line"><a name="a3547"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result1&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivExtractFileInOutput">privExtractFileInOutput</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3548"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result1&nbsp;</span>&lt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3549"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3550"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3551"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3552"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3553"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3554"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;only&nbsp;interesting&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a3555"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_file_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span>++<span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3556"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3557"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3558"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3559"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3560"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3561"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;user&nbsp;callback&nbsp;abort</span></div></li> +<li><div class="src-line"><a name="a3562"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result1&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3563"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3564"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3565"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3566"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;normal&nbsp;extraction</span></div></li> +<li><div class="src-line"><a name="a3567"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3568"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extracting&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3569"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result1&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivExtractFile">privExtractFile</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3570"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_remove_path</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3571"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_remove_all_path</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3572"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3573"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result1&nbsp;</span>&lt;&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3574"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3575"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3576"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3577"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3578"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3579"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;only&nbsp;interesting&nbsp;attributes</span></div></li> +<li><div class="src-line"><a name="a3580"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_file_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span>++<span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3581"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3582"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3583"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3584"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3585"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3586"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3587"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3588"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3589"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;user&nbsp;callback&nbsp;abort</span></div></li> +<li><div class="src-line"><a name="a3590"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result1&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3591"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3592"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3593"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3594"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3595"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3596"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3597"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3598"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3599"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3600"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3601"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3602"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3603"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3604"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3605"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3606"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3607"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privExtractFile()</span></div></li> +<li><div class="src-line"><a name="a3608"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3609"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3610"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3611"></a>&nbsp;&nbsp;<span class="src-comm">//</span></div></li> +<li><div class="src-line"><a name="a3612"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;1&nbsp;:&nbsp;...&nbsp;?</span></div></li> +<li><div class="src-line"><a name="a3613"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;PCLZIP_ERR_USER_ABORTED(2)&nbsp;:&nbsp;User&nbsp;ask&nbsp;for&nbsp;extraction&nbsp;stop&nbsp;in&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a3614"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3615"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivExtractFile">privExtractFile</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_entry</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_remove_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_remove_all_path</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3616"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3617"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3618"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3619"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a3620"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadFileHeader">privReadFileHeader</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3621"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3622"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3623"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3624"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3625"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3626"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3627"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;that&nbsp;the&nbsp;file&nbsp;header&nbsp;is&nbsp;coherent&nbsp;with&nbsp;$p_entry&nbsp;info</span></div></li> +<li><div class="src-line"><a name="a3628"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFileHeaders">privCheckFileHeaders</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3629"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a3630"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3631"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3632"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;all&nbsp;path&nbsp;to&nbsp;remove</span></div></li> +<li><div class="src-line"><a name="a3633"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_remove_all_path&nbsp;</span>==&nbsp;<span class="src-id">true</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3634"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;folder&nbsp;entry&nbsp;that&nbsp;not&nbsp;need&nbsp;to&nbsp;be&nbsp;extracted</span></div></li> +<li><div class="src-line"><a name="a3635"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]</span><span class="src-sym">&amp;</span><span class="src-num">0x00000010</span><span class="src-sym">)</span>==<span class="src-num">0x00000010</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3636"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3637"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;filtered&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3638"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3639"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3640"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3641"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3642"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;the&nbsp;basename&nbsp;of&nbsp;the&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a3643"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/basename">basename</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3644"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3645"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3646"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;path&nbsp;to&nbsp;remove</span></div></li> +<li><div class="src-line"><a name="a3647"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_remove_path&nbsp;</span>!=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3648"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3649"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathInclusion">PclZipUtilPathInclusion</a><span class="src-sym">(</span><span class="src-var">$p_remove_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3650"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3651"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3652"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a3653"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;filtered&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3654"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3655"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3656"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3657"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3658"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3659"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_remove_path_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_remove_path</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3660"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_remove_path_size</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-var">$p_remove_path</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3661"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3662"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3663"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Remove&nbsp;the&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a3664"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_remove_path_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3665"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3666"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3667"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3668"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3669"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Add&nbsp;the&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a3670"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_path&nbsp;</span>!=&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3671"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_path</span>.<span class="src-str">&quot;/&quot;</span>.<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3672"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3673"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3674"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;a&nbsp;base_dir_restriction</span></div></li> +<li><div class="src-line"><a name="a3675"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_DIR_RESTRICTION">PCLZIP_OPT_EXTRACT_DIR_RESTRICTION</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3676"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_inclusion</span></div></li> +<li><div class="src-line"><a name="a3677"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathInclusion">PclZipUtilPathInclusion</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_DIR_RESTRICTION">PCLZIP_OPT_EXTRACT_DIR_RESTRICTION</a></span><span class="src-sym">]</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3678"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span></div></li> +<li><div class="src-line"><a name="a3679"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_inclusion&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3680"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3681"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_DIRECTORY_RESTRICTION">PCLZIP_ERR_DIRECTORY_RESTRICTION</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3682"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">&quot;Filename&nbsp;'&quot;</span>.<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span>.<span class="src-str">&quot;'&nbsp;is&nbsp;&quot;</span></div></li> +<li><div class="src-line"><a name="a3683"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-str">&quot;outside&nbsp;PCLZIP_OPT_EXTRACT_DIR_RESTRICTION&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3684"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3685"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3686"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3687"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3688"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3689"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;pre-extract&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a3690"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3691"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3692"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Generate&nbsp;a&nbsp;local&nbsp;information</span></div></li> +<li><div class="src-line"><a name="a3693"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_local_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3694"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3695"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3696"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a3697"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;I&nbsp;do&nbsp;not&nbsp;use&nbsp;call_user_func()&nbsp;because&nbsp;I&nbsp;need&nbsp;to&nbsp;send&nbsp;a&nbsp;reference&nbsp;to&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a3698"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;header.</span></div></li> +<li><div class="src-line"><a name="a3699"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eval('$v_result&nbsp;=&nbsp;'.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT,&nbsp;$v_local_header);');</span></div></li> +<li><div class="src-line"><a name="a3700"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3701"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3702"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a3703"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;skipped&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3704"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3705"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3706"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3707"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;abort&nbsp;result</span></div></li> +<li><div class="src-line"><a name="a3708"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3709"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;This&nbsp;status&nbsp;is&nbsp;internal&nbsp;and&nbsp;will&nbsp;be&nbsp;changed&nbsp;in&nbsp;'skipped'</span></div></li> +<li><div class="src-line"><a name="a3710"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;aborted&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3711"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_USER_ABORTED">PCLZIP_ERR_USER_ABORTED</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3712"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3713"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3714"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Update&nbsp;the&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a3715"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Only&nbsp;some&nbsp;fields&nbsp;can&nbsp;be&nbsp;modified</span></div></li> +<li><div class="src-line"><a name="a3716"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_local_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3717"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3718"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3719"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3720"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;extraction&nbsp;should&nbsp;be&nbsp;done</span></div></li> +<li><div class="src-line"><a name="a3721"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'ok'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3722"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3723"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;specific&nbsp;actions&nbsp;while&nbsp;the&nbsp;file&nbsp;exist</span></div></li> +<li><div class="src-line"><a name="a3724"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/file_exists">file_exists</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3725"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3726"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3727"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;file&nbsp;is&nbsp;a&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a3728"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/is_dir">is_dir</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3729"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3730"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3731"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a3732"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;already_a_directory&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3733"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3734"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;PCLZIP_OPT_STOP_ON_ERROR</span></div></li> +<li><div class="src-line"><a name="a3735"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;For&nbsp;historical&nbsp;reason&nbsp;first&nbsp;PclZip&nbsp;implementation&nbsp;does&nbsp;not&nbsp;stop</span></div></li> +<li><div class="src-line"><a name="a3736"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;when&nbsp;this&nbsp;kind&nbsp;of&nbsp;error&nbsp;occurs.</span></div></li> +<li><div class="src-line"><a name="a3737"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3738"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></span><span class="src-sym">]</span>===<span class="src-id">true</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3739"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3740"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_ALREADY_A_DIRECTORY">PCLZIP_ERR_ALREADY_A_DIRECTORY</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3741"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">&quot;Filename&nbsp;'&quot;</span>.<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span>.<span class="src-str">&quot;'&nbsp;is&nbsp;&quot;</span></div></li> +<li><div class="src-line"><a name="a3742"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-str">&quot;already&nbsp;used&nbsp;by&nbsp;an&nbsp;existing&nbsp;directory&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3743"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3744"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3745"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3746"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3747"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;file&nbsp;is&nbsp;write&nbsp;protected</span></div></li> +<li><div class="src-line"><a name="a3748"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_writeable">is_writeable</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3749"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3750"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3751"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a3752"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;write_protected&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3753"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3754"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;PCLZIP_OPT_STOP_ON_ERROR</span></div></li> +<li><div class="src-line"><a name="a3755"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;For&nbsp;historical&nbsp;reason&nbsp;first&nbsp;PclZip&nbsp;implementation&nbsp;does&nbsp;not&nbsp;stop</span></div></li> +<li><div class="src-line"><a name="a3756"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;when&nbsp;this&nbsp;kind&nbsp;of&nbsp;error&nbsp;occurs.</span></div></li> +<li><div class="src-line"><a name="a3757"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3758"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></span><span class="src-sym">]</span>===<span class="src-id">true</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3759"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3760"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_WRITE_OPEN_FAIL">PCLZIP_ERR_WRITE_OPEN_FAIL</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3761"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">&quot;Filename&nbsp;'&quot;</span>.<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span>.<span class="src-str">&quot;'&nbsp;exists&nbsp;&quot;</span></div></li> +<li><div class="src-line"><a name="a3762"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-str">&quot;and&nbsp;is&nbsp;write&nbsp;protected&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3763"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3764"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3765"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3766"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3767"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3768"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;extracted&nbsp;file&nbsp;is&nbsp;older</span></div></li> +<li><div class="src-line"><a name="a3769"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/filemtime">filemtime</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3770"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3771"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a3772"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REPLACE_NEWER">PCLZIP_OPT_REPLACE_NEWER</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3773"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REPLACE_NEWER">PCLZIP_OPT_REPLACE_NEWER</a></span><span class="src-sym">]</span>===<span class="src-id">true</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3774"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3775"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3776"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;newer_exist&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3777"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3778"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;PCLZIP_OPT_STOP_ON_ERROR</span></div></li> +<li><div class="src-line"><a name="a3779"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;For&nbsp;historical&nbsp;reason&nbsp;first&nbsp;PclZip&nbsp;implementation&nbsp;does&nbsp;not&nbsp;stop</span></div></li> +<li><div class="src-line"><a name="a3780"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;when&nbsp;this&nbsp;kind&nbsp;of&nbsp;error&nbsp;occurs.</span></div></li> +<li><div class="src-line"><a name="a3781"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3782"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></span><span class="src-sym">]</span>===<span class="src-id">true</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3783"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3784"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_WRITE_OPEN_FAIL">PCLZIP_ERR_WRITE_OPEN_FAIL</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a3785"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">&quot;Newer&nbsp;version&nbsp;of&nbsp;'&quot;</span>.<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span>.<span class="src-str">&quot;'&nbsp;exists&nbsp;&quot;</span></div></li> +<li><div class="src-line"><a name="a3786"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-str">&quot;and&nbsp;option&nbsp;PCLZIP_OPT_REPLACE_NEWER&nbsp;is&nbsp;not&nbsp;selected&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3787"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3788"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3789"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3790"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3791"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3792"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3793"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3794"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3795"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3796"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;directory&nbsp;availability&nbsp;and&nbsp;create&nbsp;it&nbsp;if&nbsp;necessary</span></div></li> +<li><div class="src-line"><a name="a3797"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3798"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(((</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]</span><span class="src-sym">&amp;</span><span class="src-num">0x00000010</span><span class="src-sym">)</span>==<span class="src-num">0x00000010</span><span class="src-sym">)&nbsp;</span>||&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'/'</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3799"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_dir_to_check&nbsp;</span>=&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3800"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/strstr">strstr</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;/&quot;</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3801"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_dir_to_check&nbsp;</span>=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3802"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a3803"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_dir_to_check&nbsp;</span>=&nbsp;<a href="http://www.php.net/dirname">dirname</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3804"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3805"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDirCheck">privDirCheck</a><span class="src-sym">(</span><span class="src-var">$v_dir_to_check</span><span class="src-sym">,&nbsp;</span><span class="src-sym">((</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]</span><span class="src-sym">&amp;</span><span class="src-num">0x00000010</span><span class="src-sym">)</span>==<span class="src-num">0x00000010</span><span class="src-sym">)))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3806"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3807"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a3808"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;path_creation_fail&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3809"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3810"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3811"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//return&nbsp;$v_result;</span></div></li> +<li><div class="src-line"><a name="a3812"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3813"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3814"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3815"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3816"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3817"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;extraction&nbsp;should&nbsp;be&nbsp;done</span></div></li> +<li><div class="src-line"><a name="a3818"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'ok'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3819"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3820"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Do&nbsp;the&nbsp;extraction&nbsp;(if&nbsp;not&nbsp;a&nbsp;folder)</span></div></li> +<li><div class="src-line"><a name="a3821"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-sym">((</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]</span><span class="src-sym">&amp;</span><span class="src-num">0x00000010</span><span class="src-sym">)</span>==<span class="src-num">0x00000010</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a3822"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3823"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;not&nbsp;compressed&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3824"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3825"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3826"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Opening&nbsp;destination&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3827"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_dest_file&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-str">'wb'</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3828"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3829"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3830"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a3831"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;write_error&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3832"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3833"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3834"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3835"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3836"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3837"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3838"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;by&nbsp;PCLZIP_READ_BLOCK_SIZE&nbsp;octets&nbsp;blocks</span></div></li> +<li><div class="src-line"><a name="a3839"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3840"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3841"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3842"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3843"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3844"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">/*&nbsp;Try&nbsp;to&nbsp;speed&nbsp;up&nbsp;the&nbsp;code</span></div></li> +<li><div class="src-line"><a name="a3845"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$v_binary_data&nbsp;=&nbsp;pack('a'.$v_read_size,&nbsp;$v_buffer);</span></div></li> +<li><div class="src-line"><a name="a3846"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@fwrite($v_dest_file,&nbsp;$v_binary_data,&nbsp;$v_read_size);</span></div></li> +<li><div class="src-line"><a name="a3847"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a3848"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$v_dest_file</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div></li> +<li><div class="src-line"><a name="a3849"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3850"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3851"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3852"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Closing&nbsp;the&nbsp;destination&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3853"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_dest_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3854"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3855"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;mtime</span></div></li> +<li><div class="src-line"><a name="a3856"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/touch">touch</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3857"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3858"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3859"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3860"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3861"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a3862"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Need&nbsp;to&nbsp;be&nbsp;finished</span></div></li> +<li><div class="src-line"><a name="a3863"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'flag'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">1</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3864"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_UNSUPPORTED_ENCRYPTION">PCLZIP_ERR_UNSUPPORTED_ENCRYPTION</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'File&nbsp;\''</span>.<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span>.<span class="src-str">'\'&nbsp;is&nbsp;encrypted.&nbsp;Encrypted&nbsp;files&nbsp;are&nbsp;not&nbsp;supported.'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3865"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3866"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3867"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3868"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3869"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;using&nbsp;temporary&nbsp;file&nbsp;to&nbsp;unzip</span></div></li> +<li><div class="src-line"><a name="a3870"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;(</span><span class="src-sym">!</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span></div></li> +<li><div class="src-line"><a name="a3871"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_ON">PCLZIP_OPT_TEMP_FILE_ON</a></span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3872"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3873"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></span><span class="src-sym">]&nbsp;</span>&lt;=&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;)&nbsp;)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3874"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivExtractFileUsingTempFile">privExtractFileUsingTempFile</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3875"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_NO_ERROR">PCLZIP_ERR_NO_ERROR</a></span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3876"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3877"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3878"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3879"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3880"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;extract&nbsp;in&nbsp;memory</span></div></li> +<li><div class="src-line"><a name="a3881"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3882"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3883"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3884"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;compressed&nbsp;file&nbsp;in&nbsp;a&nbsp;buffer&nbsp;(one&nbsp;shot)</span></div></li> +<li><div class="src-line"><a name="a3885"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3886"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3887"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Decompress&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3888"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_file_content&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzinflate">gzinflate</a><span class="src-sym">(</span><span class="src-var">$v_buffer</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3889"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_buffer</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3890"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_file_content&nbsp;</span>===&nbsp;<span class="src-id">FALSE</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3891"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3892"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a3893"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a3894"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;error&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3895"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3896"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3897"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3898"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3899"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Opening&nbsp;destination&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3900"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_dest_file&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-str">'wb'</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3901"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3902"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a3903"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;write_error&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3904"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3905"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3906"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3907"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3908"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;the&nbsp;uncompressed&nbsp;data</span></div></li> +<li><div class="src-line"><a name="a3909"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$v_dest_file</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_file_content</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3910"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_file_content</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3911"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3912"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Closing&nbsp;the&nbsp;destination&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3913"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_dest_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3914"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3915"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3916"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3917"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;mtime</span></div></li> +<li><div class="src-line"><a name="a3918"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/touch">touch</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3919"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3920"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3921"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;chmod&nbsp;option</span></div></li> +<li><div class="src-line"><a name="a3922"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_SET_CHMOD">PCLZIP_OPT_SET_CHMOD</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3923"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3924"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;mode&nbsp;of&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3925"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/chmod">chmod</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_SET_CHMOD">PCLZIP_OPT_SET_CHMOD</a></span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3926"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3927"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3928"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3929"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3930"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3931"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;abort&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a3932"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">&quot;aborted&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3933"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;skipped&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3934"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3935"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3936"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;post-extract&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a3937"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3938"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3939"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Generate&nbsp;a&nbsp;local&nbsp;information</span></div></li> +<li><div class="src-line"><a name="a3940"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_local_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3941"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3942"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3943"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a3944"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;I&nbsp;do&nbsp;not&nbsp;use&nbsp;call_user_func()&nbsp;because&nbsp;I&nbsp;need&nbsp;to&nbsp;send&nbsp;a&nbsp;reference&nbsp;to&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a3945"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;header.</span></div></li> +<li><div class="src-line"><a name="a3946"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eval('$v_result&nbsp;=&nbsp;'.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT,&nbsp;$v_local_header);');</span></div></li> +<li><div class="src-line"><a name="a3947"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3948"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3949"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;abort&nbsp;result</span></div></li> +<li><div class="src-line"><a name="a3950"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3951"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_USER_ABORTED">PCLZIP_ERR_USER_ABORTED</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3952"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3953"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3954"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3955"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a3956"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3957"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3958"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3959"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3960"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3961"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privExtractFileUsingTempFile()</span></div></li> +<li><div class="src-line"><a name="a3962"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3963"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3964"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a3965"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a3966"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivExtractFileUsingTempFile">privExtractFileUsingTempFile</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_entry</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3967"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3968"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3969"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a3970"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Creates&nbsp;a&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3971"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_gzip_temp_name&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_TEMPORARY_DIR">PCLZIP_TEMPORARY_DIR</a></span>.<a href="http://www.php.net/uniqid">uniqid</a><span class="src-sym">(</span><span class="src-str">'pclzip-'</span><span class="src-sym">)</span>.<span class="src-str">'.gz'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3972"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_dest_file&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$v_gzip_temp_name</span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;wb&quot;</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3973"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3974"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_WRITE_OPEN_FAIL">PCLZIP_ERR_WRITE_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;open&nbsp;temporary&nbsp;file&nbsp;\''</span>.<span class="src-var">$v_gzip_temp_name</span>.<span class="src-str">'\'&nbsp;in&nbsp;binary&nbsp;write&nbsp;mode'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3975"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3976"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3977"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3978"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3979"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;gz&nbsp;file&nbsp;format&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a3980"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/pack">pack</a><span class="src-sym">(</span><span class="src-str">'va1a1Va1a1'</span><span class="src-sym">,&nbsp;</span><span class="src-num">0x8b1f</span><span class="src-sym">,&nbsp;</span><span class="src-id">Chr</span><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">Chr</span><span class="src-sym">(</span><span class="src-num">0x00</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/time">time</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">Chr</span><span class="src-sym">(</span><span class="src-num">0x00</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">Chr</span><span class="src-sym">(</span><span class="src-num">3</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3981"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$v_dest_file</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">,&nbsp;</span><span class="src-num">10</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3982"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3983"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;by&nbsp;PCLZIP_READ_BLOCK_SIZE&nbsp;octets&nbsp;blocks</span></div></li> +<li><div class="src-line"><a name="a3984"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3985"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a3986"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a3987"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3988"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3989"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//$v_binary_data&nbsp;=&nbsp;pack('a'.$v_read_size,&nbsp;$v_buffer);</span></div></li> +<li><div class="src-line"><a name="a3990"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$v_dest_file</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3991"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3992"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a3993"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3994"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;gz&nbsp;file&nbsp;format&nbsp;footer</span></div></li> +<li><div class="src-line"><a name="a3995"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/pack">pack</a><span class="src-sym">(</span><span class="src-str">'VV'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3996"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$v_dest_file</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">,&nbsp;</span><span class="src-num">8</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a3997"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a3998"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a3999"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_dest_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4000"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4001"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Opening&nbsp;destination&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4002"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_dest_file&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-str">'wb'</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4003"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;write_error&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4004"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4005"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4006"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4007"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;temporary&nbsp;gz&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4008"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_src_file&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzopen">gzopen</a><span class="src-sym">(</span><span class="src-var">$v_gzip_temp_name</span><span class="src-sym">,&nbsp;</span><span class="src-str">'rb'</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4009"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_dest_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4010"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;read_error&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4011"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;open&nbsp;temporary&nbsp;file&nbsp;\''</span>.<span class="src-var">$v_gzip_temp_name</span>.<span class="src-str">'\'&nbsp;in&nbsp;binary&nbsp;read&nbsp;mode'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4012"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4013"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4014"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4015"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4016"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;by&nbsp;PCLZIP_READ_BLOCK_SIZE&nbsp;octets&nbsp;blocks</span></div></li> +<li><div class="src-line"><a name="a4017"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4018"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4019"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4020"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzread">gzread</a><span class="src-sym">(</span><span class="src-var">$v_src_file</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4021"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//$v_binary_data&nbsp;=&nbsp;pack('a'.$v_read_size,&nbsp;$v_buffer);</span></div></li> +<li><div class="src-line"><a name="a4022"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$v_dest_file</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4023"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4024"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4025"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_dest_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4026"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzclose">gzclose</a><span class="src-sym">(</span><span class="src-var">$v_src_file</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4027"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4028"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Delete&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4029"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$v_gzip_temp_name</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4030"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4031"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4032"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4033"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4034"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4035"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4036"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4037"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privExtractFileInOutput()</span></div></li> +<li><div class="src-line"><a name="a4038"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4039"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4040"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4041"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4042"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivExtractFileInOutput">privExtractFileInOutput</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_entry</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4043"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4044"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4045"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4046"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4047"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadFileHeader">privReadFileHeader</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4048"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4049"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4050"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4051"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4052"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;that&nbsp;the&nbsp;file&nbsp;header&nbsp;is&nbsp;coherent&nbsp;with&nbsp;$p_entry&nbsp;info</span></div></li> +<li><div class="src-line"><a name="a4053"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFileHeaders">privCheckFileHeaders</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4054"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a4055"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4056"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4057"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;pre-extract&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a4058"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4059"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4060"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Generate&nbsp;a&nbsp;local&nbsp;information</span></div></li> +<li><div class="src-line"><a name="a4061"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_local_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4062"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4063"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4064"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a4065"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;I&nbsp;do&nbsp;not&nbsp;use&nbsp;call_user_func()&nbsp;because&nbsp;I&nbsp;need&nbsp;to&nbsp;send&nbsp;a&nbsp;reference&nbsp;to&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a4066"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;header.</span></div></li> +<li><div class="src-line"><a name="a4067"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eval('$v_result&nbsp;=&nbsp;'.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT,&nbsp;$v_local_header);');</span></div></li> +<li><div class="src-line"><a name="a4068"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4069"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4070"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a4071"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;skipped&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4072"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4073"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4074"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4075"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;abort&nbsp;result</span></div></li> +<li><div class="src-line"><a name="a4076"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4077"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;This&nbsp;status&nbsp;is&nbsp;internal&nbsp;and&nbsp;will&nbsp;be&nbsp;changed&nbsp;in&nbsp;'skipped'</span></div></li> +<li><div class="src-line"><a name="a4078"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;aborted&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4079"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_USER_ABORTED">PCLZIP_ERR_USER_ABORTED</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4080"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4081"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4082"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Update&nbsp;the&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a4083"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Only&nbsp;some&nbsp;fields&nbsp;can&nbsp;be&nbsp;modified</span></div></li> +<li><div class="src-line"><a name="a4084"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_local_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4085"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4086"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4087"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Trace</span></div></li> +<li><div class="src-line"><a name="a4088"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4089"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;extraction&nbsp;should&nbsp;be&nbsp;done</span></div></li> +<li><div class="src-line"><a name="a4090"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'ok'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4091"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4092"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Do&nbsp;the&nbsp;extraction&nbsp;(if&nbsp;not&nbsp;a&nbsp;folder)</span></div></li> +<li><div class="src-line"><a name="a4093"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-sym">((</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]</span><span class="src-sym">&amp;</span><span class="src-num">0x00000010</span><span class="src-sym">)</span>==<span class="src-num">0x00000010</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4094"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;not&nbsp;compressed&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4095"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4096"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4097"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;in&nbsp;a&nbsp;buffer&nbsp;(one&nbsp;shot)</span></div></li> +<li><div class="src-line"><a name="a4098"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4099"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4100"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Send&nbsp;the&nbsp;file&nbsp;to&nbsp;the&nbsp;output</span></div></li> +<li><div class="src-line"><a name="a4101"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-var">$v_buffer</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4102"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_buffer</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4103"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4105"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4106"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;compressed&nbsp;file&nbsp;in&nbsp;a&nbsp;buffer&nbsp;(one&nbsp;shot)</span></div></li> +<li><div class="src-line"><a name="a4107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4108"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4109"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Decompress&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4110"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_file_content&nbsp;</span>=&nbsp;<a href="http://www.php.net/gzinflate">gzinflate</a><span class="src-sym">(</span><span class="src-var">$v_buffer</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4111"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_buffer</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4112"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4113"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Send&nbsp;the&nbsp;file&nbsp;to&nbsp;the&nbsp;output</span></div></li> +<li><div class="src-line"><a name="a4114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;<span class="src-var">$v_file_content</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4115"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_file_content</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4116"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4117"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4118"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4119"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4120"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;abort&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a4121"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">&quot;aborted&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;skipped&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4123"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4124"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4125"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;post-extract&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a4126"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4127"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4128"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Generate&nbsp;a&nbsp;local&nbsp;information</span></div></li> +<li><div class="src-line"><a name="a4129"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_local_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4130"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4131"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4132"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a4133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;I&nbsp;do&nbsp;not&nbsp;use&nbsp;call_user_func()&nbsp;because&nbsp;I&nbsp;need&nbsp;to&nbsp;send&nbsp;a&nbsp;reference&nbsp;to&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a4134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;header.</span></div></li> +<li><div class="src-line"><a name="a4135"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eval('$v_result&nbsp;=&nbsp;'.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT,&nbsp;$v_local_header);');</span></div></li> +<li><div class="src-line"><a name="a4136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4137"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4138"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;abort&nbsp;result</span></div></li> +<li><div class="src-line"><a name="a4139"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4140"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_USER_ABORTED">PCLZIP_ERR_USER_ABORTED</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4141"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4142"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4143"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4144"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4145"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4146"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4147"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4148"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4149"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privExtractFileAsString()</span></div></li> +<li><div class="src-line"><a name="a4150"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4151"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4152"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4153"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4154"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivExtractFileAsString">privExtractFileAsString</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_entry</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_string</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4155"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4156"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4157"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4158"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4159"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4160"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadFileHeader">privReadFileHeader</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4161"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4162"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4163"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4164"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4165"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4166"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4167"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;that&nbsp;the&nbsp;file&nbsp;header&nbsp;is&nbsp;coherent&nbsp;with&nbsp;$p_entry&nbsp;info</span></div></li> +<li><div class="src-line"><a name="a4168"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFileHeaders">privCheckFileHeaders</a><span class="src-sym">(</span><span class="src-var">$v_header</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a4170"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4171"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4172"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;pre-extract&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a4173"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4174"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4175"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Generate&nbsp;a&nbsp;local&nbsp;information</span></div></li> +<li><div class="src-line"><a name="a4176"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_local_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4177"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4178"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4179"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a4180"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;I&nbsp;do&nbsp;not&nbsp;use&nbsp;call_user_func()&nbsp;because&nbsp;I&nbsp;need&nbsp;to&nbsp;send&nbsp;a&nbsp;reference&nbsp;to&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a4181"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;header.</span></div></li> +<li><div class="src-line"><a name="a4182"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eval('$v_result&nbsp;=&nbsp;'.$p_options[PCLZIP_CB_PRE_EXTRACT].'(PCLZIP_CB_PRE_EXTRACT,&nbsp;$v_local_header);');</span></div></li> +<li><div class="src-line"><a name="a4183"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4184"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4185"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;the&nbsp;file&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a4186"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;skipped&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4187"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4188"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4189"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4190"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;abort&nbsp;result</span></div></li> +<li><div class="src-line"><a name="a4191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4192"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;This&nbsp;status&nbsp;is&nbsp;internal&nbsp;and&nbsp;will&nbsp;be&nbsp;changed&nbsp;in&nbsp;'skipped'</span></div></li> +<li><div class="src-line"><a name="a4193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;aborted&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4194"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_USER_ABORTED">PCLZIP_ERR_USER_ABORTED</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4195"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4196"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Update&nbsp;the&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a4198"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Only&nbsp;some&nbsp;fields&nbsp;can&nbsp;be&nbsp;modified</span></div></li> +<li><div class="src-line"><a name="a4199"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_local_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4200"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4201"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4202"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4203"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;extraction&nbsp;should&nbsp;be&nbsp;done</span></div></li> +<li><div class="src-line"><a name="a4204"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">'ok'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4205"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4206"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Do&nbsp;the&nbsp;extraction&nbsp;(if&nbsp;not&nbsp;a&nbsp;folder)</span></div></li> +<li><div class="src-line"><a name="a4207"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-sym">((</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]</span><span class="src-sym">&amp;</span><span class="src-num">0x00000010</span><span class="src-sym">)</span>==<span class="src-num">0x00000010</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4208"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;not&nbsp;compressed&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4209"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;($p_entry['compressed_size']&nbsp;==&nbsp;$p_entry['size'])</span></div></li> +<li><div class="src-line"><a name="a4210"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4211"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4212"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reading&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4213"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_string&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4214"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4215"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4216"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4217"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reading&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4218"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_data&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4219"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4220"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Decompress&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4221"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$p_string&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzinflate">gzinflate</a><span class="src-sym">(</span><span class="src-var">$v_data</span><span class="src-sym">))&nbsp;</span>===&nbsp;<span class="src-id">FALSE</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4222"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a4223"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4224"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4225"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4226"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Trace</span></div></li> +<li><div class="src-line"><a name="a4227"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4228"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4229"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;error&nbsp;:&nbsp;can&nbsp;not&nbsp;extract&nbsp;a&nbsp;folder&nbsp;in&nbsp;a&nbsp;string</span></div></li> +<li><div class="src-line"><a name="a4230"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4231"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4232"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4233"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4234"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;abort&nbsp;status</span></div></li> +<li><div class="src-line"><a name="a4235"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">&quot;aborted&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4236"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_entry</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;skipped&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4237"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4238"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4239"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;post-extract&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a4240"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4241"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4242"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Generate&nbsp;a&nbsp;local&nbsp;information</span></div></li> +<li><div class="src-line"><a name="a4243"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_local_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4244"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">privConvertHeader2FileInfo</a><span class="src-sym">(</span><span class="src-var">$p_entry</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4245"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4246"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Swap&nbsp;the&nbsp;content&nbsp;to&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4247"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_local_header</span><span class="src-sym">[</span><span class="src-str">'content'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_string</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4248"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_string&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4249"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4250"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Call&nbsp;the&nbsp;callback</span></div></li> +<li><div class="src-line"><a name="a4251"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;I&nbsp;do&nbsp;not&nbsp;use&nbsp;call_user_func()&nbsp;because&nbsp;I&nbsp;need&nbsp;to&nbsp;send&nbsp;a&nbsp;reference&nbsp;to&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a4252"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;header.</span></div></li> +<li><div class="src-line"><a name="a4253"></a><span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eval('$v_result&nbsp;=&nbsp;'.$p_options[PCLZIP_CB_POST_EXTRACT].'(PCLZIP_CB_POST_EXTRACT,&nbsp;$v_local_header);');</span></div></li> +<li><div class="src-line"><a name="a4254"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a></span><span class="src-sym">]</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a></span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4255"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4256"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Swap&nbsp;back&nbsp;the&nbsp;content&nbsp;to&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4257"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_string&nbsp;</span>=&nbsp;<span class="src-var">$v_local_header</span><span class="src-sym">[</span><span class="src-str">'content'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4258"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_local_header</span><span class="src-sym">[</span><span class="src-str">'content'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4259"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4260"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;abort&nbsp;result</span></div></li> +<li><div class="src-line"><a name="a4261"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result&nbsp;</span>==&nbsp;<span class="src-num">2</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4262"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_USER_ABORTED">PCLZIP_ERR_USER_ABORTED</a></span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4263"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4264"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4265"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4266"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4267"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4268"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4269"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4270"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4271"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4272"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privReadFileHeader()</span></div></li> +<li><div class="src-line"><a name="a4273"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4274"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4275"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4276"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4277"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivReadFileHeader">privReadFileHeader</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_header</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4278"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4279"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4280"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4281"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;4&nbsp;bytes&nbsp;signature</span></div></li> +<li><div class="src-line"><a name="a4282"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4283"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/unpack">unpack</a><span class="src-sym">(</span><span class="src-str">'Vid'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4284"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4285"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;signature</span></div></li> +<li><div class="src-line"><a name="a4286"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'id'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0x04034b50</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4287"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4288"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4289"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4290"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Invalid&nbsp;archive&nbsp;structure'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4291"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4292"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4293"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4294"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4295"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4296"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;first&nbsp;42&nbsp;bytes&nbsp;of&nbsp;the&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4297"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-num">26</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4298"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4299"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;invalid&nbsp;block&nbsp;size</span></div></li> +<li><div class="src-line"><a name="a4300"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_binary_data</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">26</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4301"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4302"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4303"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;invalid_header&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4304"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4305"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4306"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;block&nbsp;size&nbsp;:&nbsp;&quot;</span>.<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_binary_data</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4307"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4308"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4309"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4310"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4311"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4312"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extract&nbsp;the&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a4313"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/unpack">unpack</a><span class="src-sym">(</span><span class="src-str">'vversion/vflag/vcompression/vmtime/vmdate/Vcrc/Vcompressed_size/Vsize/vfilename_len/vextra_len'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4314"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4315"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a4316"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'filename_len'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4317"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4318"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;extra_fields</span></div></li> +<li><div class="src-line"><a name="a4319"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'extra_len'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4320"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'extra_len'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4321"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4322"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4323"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4324"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4325"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4326"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extract&nbsp;properties</span></div></li> +<li><div class="src-line"><a name="a4327"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'version_extracted'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'version'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4328"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4329"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4330"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4331"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4332"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'flag'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'flag'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4333"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename_len'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'filename_len'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4334"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4335"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Recuperate&nbsp;date&nbsp;in&nbsp;UNIX&nbsp;format</span></div></li> +<li><div class="src-line"><a name="a4336"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mdate'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'mdate'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4337"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4338"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mdate'</span><span class="src-sym">]&nbsp;</span>&amp;&amp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4339"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4340"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extract&nbsp;time</span></div></li> +<li><div class="src-line"><a name="a4341"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_hour&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0xF800</span><span class="src-sym">)&nbsp;</span>&gt;&gt;&nbsp;<span class="src-num">11</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4342"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_minute&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0x07E0</span><span class="src-sym">)&nbsp;</span>&gt;&gt;&nbsp;<span class="src-num">5</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4343"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_seconde&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0x001F</span><span class="src-sym">)</span>*<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4344"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4345"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extract&nbsp;date</span></div></li> +<li><div class="src-line"><a name="a4346"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_year&nbsp;</span>=&nbsp;<span class="src-sym">((</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mdate'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0xFE00</span><span class="src-sym">)&nbsp;</span>&gt;&gt;&nbsp;<span class="src-num">9</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-num">1980</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4347"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_month&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mdate'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0x01E0</span><span class="src-sym">)&nbsp;</span>&gt;&gt;&nbsp;<span class="src-num">5</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4348"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_day&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mdate'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0x001F</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4349"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4350"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;UNIX&nbsp;date&nbsp;format</span></div></li> +<li><div class="src-line"><a name="a4351"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/mktime">mktime</a><span class="src-sym">(</span><span class="src-var">$v_hour</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_minute</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_seconde</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_month</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_day</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_year</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4352"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4353"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4354"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a4355"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4356"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/time">time</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4357"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4358"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4359"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a4360"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//for(reset($v_data);&nbsp;$key&nbsp;=&nbsp;key($v_data);&nbsp;next($v_data))&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a4361"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//}</span></div></li> +<li><div class="src-line"><a name="a4362"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4363"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;stored&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a4364"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4365"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4366"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;status&nbsp;field</span></div></li> +<li><div class="src-line"><a name="a4367"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;ok&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4368"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4369"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4370"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4371"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4372"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4373"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4374"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4375"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privReadCentralFileHeader()</span></div></li> +<li><div class="src-line"><a name="a4376"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4377"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4378"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4379"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4380"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivReadCentralFileHeader">privReadCentralFileHeader</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_header</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4381"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4382"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4383"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4384"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;4&nbsp;bytes&nbsp;signature</span></div></li> +<li><div class="src-line"><a name="a4385"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4386"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/unpack">unpack</a><span class="src-sym">(</span><span class="src-str">'Vid'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4387"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4388"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;signature</span></div></li> +<li><div class="src-line"><a name="a4389"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'id'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0x02014b50</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4390"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4391"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4392"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4393"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Invalid&nbsp;archive&nbsp;structure'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4394"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4395"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4396"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4397"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4398"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4399"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;first&nbsp;42&nbsp;bytes&nbsp;of&nbsp;the&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4400"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-num">42</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4401"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4402"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;invalid&nbsp;block&nbsp;size</span></div></li> +<li><div class="src-line"><a name="a4403"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_binary_data</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">42</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4404"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4405"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4406"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">&quot;invalid_header&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4407"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4408"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4409"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;block&nbsp;size&nbsp;:&nbsp;&quot;</span>.<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_binary_data</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4410"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4411"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4412"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4413"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4414"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4415"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extract&nbsp;the&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a4416"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header&nbsp;</span>=&nbsp;<a href="http://www.php.net/unpack">unpack</a><span class="src-sym">(</span><span class="src-str">'vversion/vversion_extracted/vflag/vcompression/vmtime/vmdate/Vcrc/Vcompressed_size/Vsize/vfilename_len/vextra_len/vcomment_len/vdisk/vinternal/Vexternal/Voffset'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4417"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4418"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a4419"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename_len'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4420"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename_len'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4421"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a4422"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4423"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4424"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;extra</span></div></li> +<li><div class="src-line"><a name="a4425"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra_len'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4426"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra_len'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4427"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a4428"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'extra'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4429"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4430"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;comment</span></div></li> +<li><div class="src-line"><a name="a4431"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment_len'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4432"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment_len'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4433"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a4434"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4435"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4436"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extract&nbsp;properties</span></div></li> +<li><div class="src-line"><a name="a4437"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4438"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Recuperate&nbsp;date&nbsp;in&nbsp;UNIX&nbsp;format</span></div></li> +<li><div class="src-line"><a name="a4439"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//if&nbsp;($p_header['mdate']&nbsp;&amp;&amp;&nbsp;$p_header['mtime'])</span></div></li> +<li><div class="src-line"><a name="a4440"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;bug&nbsp;:&nbsp;this&nbsp;was&nbsp;ignoring&nbsp;time&nbsp;with&nbsp;0/0/0</span></div></li> +<li><div class="src-line"><a name="a4441"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4442"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4443"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extract&nbsp;time</span></div></li> +<li><div class="src-line"><a name="a4444"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_hour&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0xF800</span><span class="src-sym">)&nbsp;</span>&gt;&gt;&nbsp;<span class="src-num">11</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4445"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_minute&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0x07E0</span><span class="src-sym">)&nbsp;</span>&gt;&gt;&nbsp;<span class="src-num">5</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4446"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_seconde&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0x001F</span><span class="src-sym">)</span>*<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4447"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4448"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extract&nbsp;date</span></div></li> +<li><div class="src-line"><a name="a4449"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_year&nbsp;</span>=&nbsp;<span class="src-sym">((</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mdate'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0xFE00</span><span class="src-sym">)&nbsp;</span>&gt;&gt;&nbsp;<span class="src-num">9</span><span class="src-sym">)&nbsp;</span>+&nbsp;<span class="src-num">1980</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4450"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_month&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mdate'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0x01E0</span><span class="src-sym">)&nbsp;</span>&gt;&gt;&nbsp;<span class="src-num">5</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4451"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_day&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mdate'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0x001F</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4452"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4453"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;UNIX&nbsp;date&nbsp;format</span></div></li> +<li><div class="src-line"><a name="a4454"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/mktime">mktime</a><span class="src-sym">(</span><span class="src-var">$v_hour</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_minute</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_seconde</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_month</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_day</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_year</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4455"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4456"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4457"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a4458"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4459"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/time">time</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4460"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4461"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4462"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;the&nbsp;stored&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a4463"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4464"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4465"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Set&nbsp;default&nbsp;status&nbsp;to&nbsp;ok</span></div></li> +<li><div class="src-line"><a name="a4466"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'status'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">'ok'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4467"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4468"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;it&nbsp;is&nbsp;a&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a4469"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'/'</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4470"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//$p_header['external']&nbsp;=&nbsp;0x41FF0010;</span></div></li> +<li><div class="src-line"><a name="a4471"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_header</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-num">0x00000010</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4472"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4473"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4474"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4475"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4476"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4477"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4478"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4479"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4480"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4481"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privCheckFileHeaders()</span></div></li> +<li><div class="src-line"><a name="a4482"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4483"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4484"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4485"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;1&nbsp;on&nbsp;success,</span></div></li> +<li><div class="src-line"><a name="a4486"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;on&nbsp;error;</span></div></li> +<li><div class="src-line"><a name="a4487"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4488"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFileHeaders">privCheckFileHeaders</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_local_header</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_central_header</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4489"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4490"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4491"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4492"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;static&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a4493"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a4494"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_local_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-var">$p_central_header</span><span class="src-sym">[</span><span class="src-str">'filename'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4495"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4496"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_local_header</span><span class="src-sym">[</span><span class="src-str">'version_extracted'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-var">$p_central_header</span><span class="src-sym">[</span><span class="src-str">'version_extracted'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4497"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4498"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_local_header</span><span class="src-sym">[</span><span class="src-str">'flag'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-var">$p_central_header</span><span class="src-sym">[</span><span class="src-str">'flag'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4499"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4500"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_local_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-var">$p_central_header</span><span class="src-sym">[</span><span class="src-str">'compression'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4501"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4502"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_local_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-var">$p_central_header</span><span class="src-sym">[</span><span class="src-str">'mtime'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4503"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4504"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_local_header</span><span class="src-sym">[</span><span class="src-str">'filename_len'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-var">$p_central_header</span><span class="src-sym">[</span><span class="src-str">'filename_len'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4505"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4506"></a>&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4507"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;flag&nbsp;bit&nbsp;3</span></div></li> +<li><div class="src-line"><a name="a4508"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$p_local_header</span><span class="src-sym">[</span><span class="src-str">'flag'</span><span class="src-sym">]&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">8</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-num">8</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4509"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_local_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_central_header</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4510"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_local_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_central_header</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4511"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_local_header</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$p_central_header</span><span class="src-sym">[</span><span class="src-str">'crc'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4512"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4513"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4514"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4515"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4516"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4517"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4518"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4519"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4520"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privReadEndCentralDir()</span></div></li> +<li><div class="src-line"><a name="a4521"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4522"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4523"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4524"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4525"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivReadEndCentralDir">privReadEndCentralDir</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_central_dir</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4526"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4527"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4528"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4529"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Go&nbsp;to&nbsp;the&nbsp;end&nbsp;of&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4530"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4531"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fseek">fseek</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4532"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-var">$v_size</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4533"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4534"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4535"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;go&nbsp;to&nbsp;the&nbsp;end&nbsp;of&nbsp;the&nbsp;archive&nbsp;\''</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a>.<span class="src-str">'\''</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4536"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4537"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4538"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4539"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4540"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4541"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;First&nbsp;try&nbsp;:&nbsp;look&nbsp;if&nbsp;this&nbsp;is&nbsp;an&nbsp;archive&nbsp;with&nbsp;no&nbsp;commentaries&nbsp;(most&nbsp;of&nbsp;the&nbsp;time)</span></div></li> +<li><div class="src-line"><a name="a4542"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;in&nbsp;this&nbsp;case&nbsp;the&nbsp;end&nbsp;of&nbsp;central&nbsp;dir&nbsp;is&nbsp;at&nbsp;22&nbsp;bytes&nbsp;of&nbsp;the&nbsp;file&nbsp;end</span></div></li> +<li><div class="src-line"><a name="a4543"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_found&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4544"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&gt;&nbsp;<span class="src-num">26</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4545"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fseek">fseek</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span>-<span class="src-num">22</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4546"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_pos&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size</span>-<span class="src-num">22</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a4547"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4548"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4549"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;seek&nbsp;back&nbsp;to&nbsp;the&nbsp;middle&nbsp;of&nbsp;the&nbsp;archive&nbsp;\''</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a>.<span class="src-str">'\''</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4550"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4551"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4552"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4553"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4554"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4555"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;for&nbsp;bytes</span></div></li> +<li><div class="src-line"><a name="a4556"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-num">4</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4557"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_data&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unpack">unpack</a><span class="src-sym">(</span><span class="src-str">'Vid'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4558"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4559"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;signature</span></div></li> +<li><div class="src-line"><a name="a4560"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'id'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-num">0x06054b50</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4561"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_found&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4562"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4563"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4564"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_pos&nbsp;</span>=&nbsp;<a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4565"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4566"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4567"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Go&nbsp;back&nbsp;to&nbsp;the&nbsp;maximum&nbsp;possible&nbsp;size&nbsp;of&nbsp;the&nbsp;Central&nbsp;Dir&nbsp;End&nbsp;Record</span></div></li> +<li><div class="src-line"><a name="a4568"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$v_found</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4569"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_maximum_size&nbsp;</span>=&nbsp;<span class="src-num">65557</span><span class="src-sym">;&nbsp;</span><span class="src-comm">//&nbsp;0xFFFF&nbsp;+&nbsp;22;</span></div></li> +<li><div class="src-line"><a name="a4570"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_maximum_size&nbsp;</span>&gt;&nbsp;<span class="src-var">$v_size</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4571"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_maximum_size&nbsp;</span>=&nbsp;<span class="src-var">$v_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4572"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fseek">fseek</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span>-<span class="src-var">$v_maximum_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4573"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size</span>-<span class="src-var">$v_maximum_size</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a4574"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4575"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4576"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;seek&nbsp;back&nbsp;to&nbsp;the&nbsp;middle&nbsp;of&nbsp;the&nbsp;archive&nbsp;\''</span>.<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a>.<span class="src-str">'\''</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4577"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4578"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4579"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4580"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4581"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4582"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;byte&nbsp;per&nbsp;byte&nbsp;in&nbsp;order&nbsp;to&nbsp;find&nbsp;the&nbsp;signature</span></div></li> +<li><div class="src-line"><a name="a4583"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_pos&nbsp;</span>=&nbsp;<a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4584"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_bytes&nbsp;</span>=&nbsp;<span class="src-num">0x00000000</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4585"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_pos&nbsp;</span>&lt;&nbsp;<span class="src-var">$v_size</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4586"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4587"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;a&nbsp;byte</span></div></li> +<li><div class="src-line"><a name="a4588"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_byte&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4589"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4590"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;&nbsp;Add&nbsp;the&nbsp;byte</span></div></li> +<li><div class="src-line"><a name="a4591"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//$v_bytes&nbsp;=&nbsp;($v_bytes&nbsp;&lt;&lt;&nbsp;8)&nbsp;|&nbsp;Ord($v_byte);</span></div></li> +<li><div class="src-line"><a name="a4592"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Note&nbsp;we&nbsp;mask&nbsp;the&nbsp;old&nbsp;value&nbsp;down&nbsp;such&nbsp;that&nbsp;once&nbsp;shifted&nbsp;we&nbsp;can&nbsp;never&nbsp;end&nbsp;up&nbsp;with&nbsp;more&nbsp;than&nbsp;a&nbsp;32bit&nbsp;number&nbsp;</span></div></li> +<li><div class="src-line"><a name="a4593"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Otherwise&nbsp;on&nbsp;systems&nbsp;where&nbsp;we&nbsp;have&nbsp;64bit&nbsp;integers&nbsp;the&nbsp;check&nbsp;below&nbsp;for&nbsp;the&nbsp;magic&nbsp;number&nbsp;will&nbsp;fail.&nbsp;</span></div></li> +<li><div class="src-line"><a name="a4594"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_bytes&nbsp;</span>=&nbsp;<span class="src-sym">(&nbsp;(</span><span class="src-var">$v_bytes&nbsp;</span><span class="src-sym">&amp;&nbsp;</span><span class="src-num">0xFFFFFF</span><span class="src-sym">)&nbsp;</span>&lt;&lt;&nbsp;<span class="src-num">8</span><span class="src-sym">)&nbsp;</span>|&nbsp;<span class="src-id">Ord</span><span class="src-sym">(</span><span class="src-var">$v_byte</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span></div></li> +<li><div class="src-line"><a name="a4595"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4596"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Compare&nbsp;the&nbsp;bytes</span></div></li> +<li><div class="src-line"><a name="a4597"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_bytes&nbsp;</span>==&nbsp;<span class="src-num">0x504b0506</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4598"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4599"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_pos</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4600"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4601"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4602"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4603"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_pos</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4604"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4605"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4606"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;not&nbsp;found&nbsp;end&nbsp;of&nbsp;central&nbsp;dir</span></div></li> +<li><div class="src-line"><a name="a4607"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_pos&nbsp;</span>==&nbsp;<span class="src-var">$v_size</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4608"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4609"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4610"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4611"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Unable&nbsp;to&nbsp;find&nbsp;End&nbsp;of&nbsp;Central&nbsp;Dir&nbsp;Record&nbsp;signature&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4612"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4613"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4614"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4615"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4616"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4617"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4618"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;first&nbsp;18&nbsp;bytes&nbsp;of&nbsp;the&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4619"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_binary_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-num">18</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4620"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4621"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;invalid&nbsp;block&nbsp;size</span></div></li> +<li><div class="src-line"><a name="a4622"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_binary_data</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">18</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4623"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4624"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4625"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4626"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;Invalid&nbsp;End&nbsp;of&nbsp;Central&nbsp;Dir&nbsp;Record&nbsp;size&nbsp;:&nbsp;&quot;</span>.<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_binary_data</span><span class="src-sym">))</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4627"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4628"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4629"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4630"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4631"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4632"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extract&nbsp;the&nbsp;values</span></div></li> +<li><div class="src-line"><a name="a4633"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_data&nbsp;</span>=&nbsp;<a href="http://www.php.net/unpack">unpack</a><span class="src-sym">(</span><span class="src-str">'vdisk/vdisk_start/vdisk_entries/ventries/Vsize/Voffset/vcomment_size'</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_binary_data</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4634"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4635"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;global&nbsp;size</span></div></li> +<li><div class="src-line"><a name="a4636"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_pos&nbsp;</span>+&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'comment_size'</span><span class="src-sym">]&nbsp;</span>+&nbsp;<span class="src-num">18</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-var">$v_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4637"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4638"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Removed&nbsp;in&nbsp;release&nbsp;2.2&nbsp;see&nbsp;readme&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4639"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;The&nbsp;check&nbsp;of&nbsp;the&nbsp;file&nbsp;size&nbsp;is&nbsp;a&nbsp;little&nbsp;too&nbsp;strict.</span></div></li> +<li><div class="src-line"><a name="a4640"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Some&nbsp;bugs&nbsp;where&nbsp;found&nbsp;when&nbsp;a&nbsp;zip&nbsp;is&nbsp;encrypted/decrypted&nbsp;with&nbsp;'crypt'.</span></div></li> +<li><div class="src-line"><a name="a4641"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;While&nbsp;decrypted,&nbsp;zip&nbsp;has&nbsp;training&nbsp;0&nbsp;bytes</span></div></li> +<li><div class="src-line"><a name="a4642"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4643"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4644"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a4645"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-str">'The&nbsp;central&nbsp;dir&nbsp;is&nbsp;not&nbsp;at&nbsp;the&nbsp;end&nbsp;of&nbsp;the&nbsp;archive.'</span></div></li> +<li><div class="src-line"><a name="a4646"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.<span class="src-str">'&nbsp;Some&nbsp;trailing&nbsp;bytes&nbsp;exists&nbsp;after&nbsp;the&nbsp;archive.'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4647"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4648"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4649"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4650"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4651"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4652"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4653"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;comment</span></div></li> +<li><div class="src-line"><a name="a4654"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'comment_size'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4655"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_central_dir</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'comment_size'</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4656"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4657"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a4658"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_central_dir</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4659"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4660"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_central_dir</span><span class="src-sym">[</span><span class="src-str">'entries'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'entries'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4661"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_central_dir</span><span class="src-sym">[</span><span class="src-str">'disk_entries'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'disk_entries'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4662"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_central_dir</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4663"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_central_dir</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4664"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_central_dir</span><span class="src-sym">[</span><span class="src-str">'disk'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'disk'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4665"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_central_dir</span><span class="src-sym">[</span><span class="src-str">'disk_start'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$v_data</span><span class="src-sym">[</span><span class="src-str">'disk_start'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4666"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4667"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a4668"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//for(reset($p_central_dir);&nbsp;$key&nbsp;=&nbsp;key($p_central_dir);&nbsp;next($p_central_dir))&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a4669"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//}</span></div></li> +<li><div class="src-line"><a name="a4670"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4671"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4672"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4673"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4674"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4675"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4676"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4677"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privDeleteByRule()</span></div></li> +<li><div class="src-line"><a name="a4678"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4679"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4680"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4681"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4682"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivDeleteByRule">privDeleteByRule</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_result_list</span><span class="src-sym">,&nbsp;</span><span class="src-sym">&amp;</span><span class="src-var">$p_options</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4683"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4684"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4685"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_list_detail&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4686"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4687"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4688"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result</span>=<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivOpenFd">privOpenFd</a><span class="src-sym">(</span><span class="src-str">'rb'</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4689"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4690"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4691"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4692"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4693"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4694"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;central&nbsp;directory&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a4695"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_central_dir&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4696"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadEndCentralDir">privReadEndCentralDir</a><span class="src-sym">(</span><span class="src-var">$v_central_dir</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4697"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4698"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4699"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4700"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4701"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4702"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Go&nbsp;to&nbsp;beginning&nbsp;of&nbsp;File</span></div></li> +<li><div class="src-line"><a name="a4703"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/rewind">rewind</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4704"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4705"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Scan&nbsp;all&nbsp;the&nbsp;files</span></div></li> +<li><div class="src-line"><a name="a4706"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Start&nbsp;at&nbsp;beginning&nbsp;of&nbsp;Central&nbsp;Dir</span></div></li> +<li><div class="src-line"><a name="a4707"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_pos_entry&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4708"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/rewind">rewind</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4709"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/fseek">fseek</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_pos_entry</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a4710"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4711"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4712"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4713"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4714"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4715"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ARCHIVE_ZIP">PCLZIP_ERR_INVALID_ARCHIVE_ZIP</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Invalid&nbsp;archive&nbsp;size'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4716"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4717"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4718"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4719"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4720"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4721"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;each&nbsp;entry</span></div></li> +<li><div class="src-line"><a name="a4722"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header_list&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4723"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$j_start&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4724"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_nb_extracted</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>&lt;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'entries'</span><span class="src-sym">]</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>++<span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4725"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4726"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4727"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4728"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4729"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadCentralFileHeader">privReadCentralFileHeader</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4730"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4731"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4732"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4733"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4734"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4735"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4736"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4737"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4738"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Store&nbsp;the&nbsp;index</span></div></li> +<li><div class="src-line"><a name="a4739"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'index'</span><span class="src-sym">]&nbsp;</span>=&nbsp;<span class="src-var">$i</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4740"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4741"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;the&nbsp;specific&nbsp;extract&nbsp;rules</span></div></li> +<li><div class="src-line"><a name="a4742"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_found&nbsp;</span>=&nbsp;<span class="src-id">false</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4743"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4744"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;extract&nbsp;by&nbsp;name&nbsp;rule</span></div></li> +<li><div class="src-line"><a name="a4745"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a4746"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4747"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4748"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;filename&nbsp;is&nbsp;in&nbsp;the&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a4749"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>&lt;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$v_found</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j</span>++<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4750"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4751"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;a&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a4752"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">&quot;/&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4753"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4754"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;directory&nbsp;is&nbsp;in&nbsp;the&nbsp;filename&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a4755"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a4756"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4757"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_found&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4758"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4759"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">elseif&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;((</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'external'</span><span class="src-sym">]</span><span class="src-sym">&amp;</span><span class="src-num">0x00000010</span><span class="src-sym">)</span>==<span class="src-num">0x00000010</span><span class="src-sym">)&nbsp;</span><span class="src-comm">/*&nbsp;Indicates&nbsp;a&nbsp;folder&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a4760"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span>.<span class="src-str">'/'&nbsp;</span>==&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4761"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_found&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4762"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4763"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4764"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;a&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a4765"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">elseif&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4766"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_found&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4767"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4768"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4769"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4770"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4771"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;extract&nbsp;by&nbsp;ereg&nbsp;rule</span></div></li> +<li><div class="src-line"><a name="a4772"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;ereg()&nbsp;is&nbsp;deprecated&nbsp;with&nbsp;PHP&nbsp;5.3</span></div></li> +<li><div class="src-line"><a name="a4773"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">/*</span></div></li> +<li><div class="src-line"><a name="a4774"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if&nbsp;(&nbsp;&nbsp;&nbsp;(isset($p_options[PCLZIP_OPT_BY_EREG]))</span></div></li> +<li><div class="src-line"><a name="a4775"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;($p_options[PCLZIP_OPT_BY_EREG]&nbsp;!=&nbsp;&quot;&quot;))&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a4776"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4777"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(ereg($p_options[PCLZIP_OPT_BY_EREG],&nbsp;$v_header_list[$v_nb_extracted]['stored_filename']))&nbsp;{</span></div></li> +<li><div class="src-line"><a name="a4778"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$v_found&nbsp;=&nbsp;true;</span></div></li> +<li><div class="src-line"><a name="a4779"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a4780"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></div></li> +<li><div class="src-line"><a name="a4781"></a><span class="src-comm">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div></li> +<li><div class="src-line"><a name="a4782"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4783"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;extract&nbsp;by&nbsp;preg&nbsp;rule</span></div></li> +<li><div class="src-line"><a name="a4784"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a4785"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a></span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4786"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4787"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/preg_match">preg_match</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a></span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'stored_filename'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4788"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_found&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4789"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4790"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4791"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4792"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;extract&nbsp;by&nbsp;index&nbsp;rule</span></div></li> +<li><div class="src-line"><a name="a4793"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a4794"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4795"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4796"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;index&nbsp;is&nbsp;in&nbsp;the&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a4797"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>=<span class="src-var">$j_start</span><span class="src-sym">;&nbsp;</span><span class="src-sym">(</span><span class="src-var">$j</span>&lt;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-sym">!</span><span class="src-var">$v_found</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$j</span>++<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4798"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4799"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i</span>&gt;=<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'start'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$i</span>&lt;=<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'end'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4800"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_found&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4801"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4802"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>&gt;=<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'end'</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4803"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$j_start&nbsp;</span>=&nbsp;<span class="src-var">$j</span>+<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4804"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4805"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4806"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'start'</span><span class="src-sym">]</span>&gt;<span class="src-var">$i</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4807"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">break</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4808"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4809"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4810"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4811"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4812"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_found&nbsp;</span>=&nbsp;<span class="src-id">true</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4813"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4814"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4815"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;deletion</span></div></li> +<li><div class="src-line"><a name="a4816"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_found</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4817"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4818"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$v_nb_extracted</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4819"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4820"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else</span></div></li> +<li><div class="src-line"><a name="a4821"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4822"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_nb_extracted</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4823"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4824"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4825"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4826"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;something&nbsp;need&nbsp;to&nbsp;be&nbsp;deleted</span></div></li> +<li><div class="src-line"><a name="a4827"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_nb_extracted&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4828"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4829"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Creates&nbsp;a&nbsp;temporay&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4830"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_zip_temp_name&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_TEMPORARY_DIR">PCLZIP_TEMPORARY_DIR</a></span>.<a href="http://www.php.net/uniqid">uniqid</a><span class="src-sym">(</span><span class="src-str">'pclzip-'</span><span class="src-sym">)</span>.<span class="src-str">'.tmp'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4831"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4832"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Creates&nbsp;a&nbsp;temporary&nbsp;zip&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a4833"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_temp_zip&nbsp;</span>=&nbsp;<span class="src-key">new&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4834"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4835"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;temporary&nbsp;zip&nbsp;file&nbsp;in&nbsp;write&nbsp;mode</span></div></li> +<li><div class="src-line"><a name="a4836"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privOpenFd</span><span class="src-sym">(</span><span class="src-str">'wb'</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4837"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4838"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4839"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4840"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4841"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4842"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4843"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;which&nbsp;file&nbsp;need&nbsp;to&nbsp;be&nbsp;kept</span></div></li> +<li><div class="src-line"><a name="a4844"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>&lt;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>++<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4845"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4846"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Calculate&nbsp;the&nbsp;position&nbsp;of&nbsp;the&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4847"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/rewind">rewind</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4848"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">@</span><a href="http://www.php.net/fseek">fseek</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;&nbsp;</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4849"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4850"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4851"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privCloseFd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4852"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4853"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4854"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a4855"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ARCHIVE_ZIP">PCLZIP_ERR_INVALID_ARCHIVE_ZIP</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Invalid&nbsp;archive&nbsp;size'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4856"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4857"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4858"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4859"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4860"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4861"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4862"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_local_header&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4863"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadFileHeader">privReadFileHeader</a><span class="src-sym">(</span><span class="src-var">$v_local_header</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4864"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4865"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4866"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privCloseFd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4867"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4868"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4869"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4870"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4871"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4872"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4873"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;that&nbsp;local&nbsp;file&nbsp;header&nbsp;is&nbsp;same&nbsp;as&nbsp;central&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4874"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCheckFileHeaders">privCheckFileHeaders</a><span class="src-sym">(</span><span class="src-var">$v_local_header</span><span class="src-sym">,</span></div></li> +<li><div class="src-line"><a name="a4875"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4876"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a4877"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4878"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_local_header</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4879"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4880"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Write&nbsp;the&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4881"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privWriteFileHeader</span><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4882"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4883"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4884"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privCloseFd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4885"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4886"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4887"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4888"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4889"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4890"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4891"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read/write&nbsp;the&nbsp;data&nbsp;block</span></div></li> +<li><div class="src-line"><a name="a4892"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilCopyBlock">PclZipUtilCopyBlock</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">zip_fd</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">[</span><span class="src-str">'compressed_size'</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4893"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4894"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4895"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privCloseFd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4896"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4897"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4898"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4899"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4900"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4901"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4902"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4903"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Store&nbsp;the&nbsp;offset&nbsp;of&nbsp;the&nbsp;central&nbsp;dir</span></div></li> +<li><div class="src-line"><a name="a4904"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_offset&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">zip_fd</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4905"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4906"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Re-Create&nbsp;the&nbsp;Central&nbsp;Dir&nbsp;files&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4907"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>&lt;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>++<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4908"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;the&nbsp;file&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4909"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privWriteCentralFileHeader</span><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4910"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privCloseFd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4911"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4912"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4913"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4914"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4915"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4916"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4917"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4918"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Transform&nbsp;the&nbsp;header&nbsp;to&nbsp;a&nbsp;'usable'&nbsp;info</span></div></li> +<li><div class="src-line"><a name="a4919"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privConvertHeader2FileInfo</span><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_result_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4920"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4921"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4922"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4923"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Zip&nbsp;file&nbsp;comment</span></div></li> +<li><div class="src-line"><a name="a4924"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_comment&nbsp;</span>=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4925"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span>isset<span class="src-sym">(</span><span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_COMMENT">PCLZIP_OPT_COMMENT</a></span><span class="src-sym">]</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4926"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_comment&nbsp;</span>=&nbsp;<span class="src-var">$p_options</span><span class="src-sym">[</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_COMMENT">PCLZIP_OPT_COMMENT</a></span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4927"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4928"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4929"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Calculate&nbsp;the&nbsp;size&nbsp;of&nbsp;the&nbsp;central&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a4930"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">zip_fd</span><span class="src-sym">)</span>-<span class="src-var">$v_offset</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4931"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4932"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;the&nbsp;central&nbsp;dir&nbsp;footer</span></div></li> +<li><div class="src-line"><a name="a4933"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privWriteCentralHeader</span><span class="src-sym">(</span><a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_offset</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_comment</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4934"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;file&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a4935"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4936"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privCloseFd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4937"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4938"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4939"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4940"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4941"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4942"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4943"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4944"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close</span></div></li> +<li><div class="src-line"><a name="a4945"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_temp_zip</span><span class="src-sym">-&gt;</span><span class="src-id">privCloseFd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4946"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4947"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4948"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Delete&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4949"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;I&nbsp;should&nbsp;test&nbsp;the&nbsp;result&nbsp;...</span></div></li> +<li><div class="src-line"><a name="a4950"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4951"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4952"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Rename&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4953"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;I&nbsp;should&nbsp;test&nbsp;the&nbsp;result&nbsp;...</span></div></li> +<li><div class="src-line"><a name="a4954"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//@rename($v_zip_temp_name,&nbsp;$this-&gt;zipname);</span></div></li> +<li><div class="src-line"><a name="a4955"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilRename">PclZipUtilRename</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4956"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4957"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Destroy&nbsp;the&nbsp;temporary&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a4958"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_temp_zip</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4959"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4960"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a4961"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Remove&nbsp;every&nbsp;files&nbsp;:&nbsp;reset&nbsp;the&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a4962"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'entries'</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4963"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4964"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4965"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivOpenFd">privOpenFd</a><span class="src-sym">(</span><span class="src-str">'wb'</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4966"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4967"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4968"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4969"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivWriteCentralHeader">privWriteCentralHeader</a><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-str">''</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4970"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4971"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4972"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4973"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4974"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4975"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4976"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a4977"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4978"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a4979"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4980"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4981"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4982"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privDirCheck()</span></div></li> +<li><div class="src-line"><a name="a4983"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4984"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Check&nbsp;if&nbsp;a&nbsp;directory&nbsp;exists,&nbsp;if&nbsp;not&nbsp;it&nbsp;creates&nbsp;it&nbsp;and&nbsp;all&nbsp;the&nbsp;parents&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a4985"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;which&nbsp;may&nbsp;be&nbsp;useful.</span></div></li> +<li><div class="src-line"><a name="a4986"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4987"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_dir&nbsp;:&nbsp;Directory&nbsp;path&nbsp;to&nbsp;check.</span></div></li> +<li><div class="src-line"><a name="a4988"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a4989"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;:&nbsp;OK</span></div></li> +<li><div class="src-line"><a name="a4990"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;-1&nbsp;:&nbsp;Unable&nbsp;to&nbsp;create&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a4991"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a4992"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivDirCheck">privDirCheck</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_is_dir</span>=<span class="src-id">false</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a4993"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a4994"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a4995"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4996"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a4997"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Remove&nbsp;the&nbsp;final&nbsp;'/'</span></div></li> +<li><div class="src-line"><a name="a4998"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$p_is_dir</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">,&nbsp;</span>-<span class="src-num">1</span><span class="src-sym">)</span>==<span class="src-str">'/'</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a4999"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5000"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_dir&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">)</span>-<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5001"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5002"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5003"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Check&nbsp;the&nbsp;directory&nbsp;availability</span></div></li> +<li><div class="src-line"><a name="a5004"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><a href="http://www.php.net/is_dir">is_dir</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">))&nbsp;</span>||&nbsp;<span class="src-sym">(</span><span class="src-var">$p_dir&nbsp;</span>==&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a5005"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5006"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5007"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5008"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5009"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Extract&nbsp;parent&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a5010"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_parent_dir&nbsp;</span>=&nbsp;<a href="http://www.php.net/dirname">dirname</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5011"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5012"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Just&nbsp;a&nbsp;check</span></div></li> +<li><div class="src-line"><a name="a5013"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_parent_dir&nbsp;</span>!=&nbsp;<span class="src-var">$p_dir</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5014"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5015"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;parent&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a5016"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_parent_dir&nbsp;</span>!=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5017"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5018"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDirCheck">privDirCheck</a><span class="src-sym">(</span><span class="src-var">$p_parent_dir</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5019"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5020"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5021"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5022"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5023"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5024"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5025"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;the&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a5026"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-sym">@</span><a href="http://www.php.net/mkdir">mkdir</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">,&nbsp;</span><span class="src-num">0777</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a5027"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5028"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Error&nbsp;log</span></div></li> +<li><div class="src-line"><a name="a5029"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_DIR_CREATE_FAIL">PCLZIP_ERR_DIR_CREATE_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">&quot;</span><span class="src-str">Unable&nbsp;to&nbsp;create&nbsp;directory&nbsp;'<span class="src-var">$p_dir</span>'</span><span class="src-str">&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5030"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5031"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5032"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5033"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5034"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5035"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5036"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5037"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5038"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5039"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5040"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5041"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privMerge()</span></div></li> +<li><div class="src-line"><a name="a5042"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5043"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;If&nbsp;$p_archive_to_add&nbsp;does&nbsp;not&nbsp;exist,&nbsp;the&nbsp;function&nbsp;exit&nbsp;with&nbsp;a&nbsp;success&nbsp;result.</span></div></li> +<li><div class="src-line"><a name="a5044"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5045"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5046"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5047"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivMerge">privMerge</a><span class="src-sym">(</span><span class="src-sym">&amp;</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5048"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5049"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5050"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5051"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;archive_to_add&nbsp;exists</span></div></li> +<li><div class="src-line"><a name="a5052"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_file">is_file</a><span class="src-sym">(</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">-&gt;</span><span class="src-id">zipname</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a5053"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5054"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5055"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Nothing&nbsp;to&nbsp;merge,&nbsp;so&nbsp;merge&nbsp;is&nbsp;a&nbsp;success</span></div></li> +<li><div class="src-line"><a name="a5056"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5057"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5058"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5059"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5060"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5061"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5062"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;archive&nbsp;exists</span></div></li> +<li><div class="src-line"><a name="a5063"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_file">is_file</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a5064"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5065"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5066"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Do&nbsp;a&nbsp;duplicate</span></div></li> +<li><div class="src-line"><a name="a5067"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivDuplicate">privDuplicate</a><span class="src-sym">(</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">-&gt;</span><span class="src-id">zipname</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5068"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5069"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5070"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5071"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5072"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5073"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a5074"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result</span>=<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivOpenFd">privOpenFd</a><span class="src-sym">(</span><span class="src-str">'rb'</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5075"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5076"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5077"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5078"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5079"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5080"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;central&nbsp;directory&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a5081"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_central_dir&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5082"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivReadEndCentralDir">privReadEndCentralDir</a><span class="src-sym">(</span><span class="src-var">$v_central_dir</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5083"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5084"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5085"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5086"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5087"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5088"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Go&nbsp;to&nbsp;beginning&nbsp;of&nbsp;File</span></div></li> +<li><div class="src-line"><a name="a5089"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/rewind">rewind</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5090"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5091"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;archive_to_add&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a5092"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result</span>=<span class="src-var">$p_archive_to_add</span><span class="src-sym">-&gt;</span><span class="src-id">privOpenFd</span><span class="src-sym">(</span><span class="src-str">'rb'</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5093"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5094"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5095"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5096"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5097"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5098"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5099"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5100"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Read&nbsp;the&nbsp;central&nbsp;directory&nbsp;informations</span></div></li> +<li><div class="src-line"><a name="a5101"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_central_dir_to_add&nbsp;</span>=&nbsp;<span class="src-key">array</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5102"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$p_archive_to_add</span><span class="src-sym">-&gt;</span><span class="src-id">privReadEndCentralDir</span><span class="src-sym">(</span><span class="src-var">$v_central_dir_to_add</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5103"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5104"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5105"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_archive_to_add</span><span class="src-sym">-&gt;</span><span class="src-id">privCloseFd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5106"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5107"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5108"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5109"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5110"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Go&nbsp;to&nbsp;beginning&nbsp;of&nbsp;File</span></div></li> +<li><div class="src-line"><a name="a5111"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/rewind">rewind</a><span class="src-sym">(</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">-&gt;</span><span class="src-id">zip_fd</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5112"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5113"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Creates&nbsp;a&nbsp;temporay&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a5114"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_zip_temp_name&nbsp;</span>=&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_TEMPORARY_DIR">PCLZIP_TEMPORARY_DIR</a></span>.<a href="http://www.php.net/uniqid">uniqid</a><span class="src-sym">(</span><span class="src-str">'pclzip-'</span><span class="src-sym">)</span>.<span class="src-str">'.tmp'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5115"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5116"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;temporary&nbsp;file&nbsp;in&nbsp;write&nbsp;mode</span></div></li> +<li><div class="src-line"><a name="a5117"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_zip_temp_fd&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">,&nbsp;</span><span class="src-str">'wb'</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5118"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5119"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5120"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_archive_to_add</span><span class="src-sym">-&gt;</span><span class="src-id">privCloseFd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5121"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5122"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;open&nbsp;temporary&nbsp;file&nbsp;\''</span>.<span class="src-var">$v_zip_temp_name</span>.<span class="src-str">'\'&nbsp;in&nbsp;binary&nbsp;write&nbsp;mode'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5123"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5124"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5125"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5126"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5127"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5128"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Copy&nbsp;the&nbsp;files&nbsp;from&nbsp;the&nbsp;archive&nbsp;to&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a5129"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;Here&nbsp;I&nbsp;should&nbsp;better&nbsp;append&nbsp;the&nbsp;file&nbsp;and&nbsp;go&nbsp;back&nbsp;to&nbsp;erase&nbsp;the&nbsp;central&nbsp;dir</span></div></li> +<li><div class="src-line"><a name="a5130"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5131"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5132"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5133"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5134"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5135"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5136"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5137"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5138"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5139"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Copy&nbsp;the&nbsp;files&nbsp;from&nbsp;the&nbsp;archive_to_add&nbsp;into&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a5140"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir_to_add</span><span class="src-sym">[</span><span class="src-str">'offset'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5141"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5142"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5143"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5144"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">-&gt;</span><span class="src-id">zip_fd</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5145"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5146"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5147"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5148"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5149"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Store&nbsp;the&nbsp;offset&nbsp;of&nbsp;the&nbsp;central&nbsp;dir</span></div></li> +<li><div class="src-line"><a name="a5150"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_offset&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5151"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5152"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Copy&nbsp;the&nbsp;block&nbsp;of&nbsp;file&nbsp;headers&nbsp;from&nbsp;the&nbsp;old&nbsp;archive</span></div></li> +<li><div class="src-line"><a name="a5153"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5154"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5155"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5156"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5157"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5158"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5159"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5160"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5161"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5162"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Copy&nbsp;the&nbsp;block&nbsp;of&nbsp;file&nbsp;headers&nbsp;from&nbsp;the&nbsp;archive_to_add</span></div></li> +<li><div class="src-line"><a name="a5163"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir_to_add</span><span class="src-sym">[</span><span class="src-str">'size'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5164"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5165"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5166"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5167"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$p_archive_to_add</span><span class="src-sym">-&gt;</span><span class="src-id">zip_fd</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5168"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5169"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5170"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5171"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5172"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Merge&nbsp;the&nbsp;file&nbsp;comments</span></div></li> +<li><div class="src-line"><a name="a5173"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_comment&nbsp;</span>=&nbsp;<span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]</span>.<span class="src-str">'&nbsp;'</span>.<span class="src-var">$v_central_dir_to_add</span><span class="src-sym">[</span><span class="src-str">'comment'</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5174"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5175"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Calculate&nbsp;the&nbsp;size&nbsp;of&nbsp;the&nbsp;(new)&nbsp;central&nbsp;header</span></div></li> +<li><div class="src-line"><a name="a5176"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/ftell">ftell</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">)</span>-<span class="src-var">$v_offset</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5177"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5178"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Swap&nbsp;the&nbsp;file&nbsp;descriptor</span></div></li> +<li><div class="src-line"><a name="a5179"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Here&nbsp;is&nbsp;a&nbsp;trick&nbsp;:&nbsp;I&nbsp;swap&nbsp;the&nbsp;temporary&nbsp;fd&nbsp;with&nbsp;the&nbsp;zip&nbsp;fd,&nbsp;in&nbsp;order&nbsp;to&nbsp;use</span></div></li> +<li><div class="src-line"><a name="a5180"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;the&nbsp;following&nbsp;methods&nbsp;on&nbsp;the&nbsp;temporary&nbsp;fil&nbsp;and&nbsp;not&nbsp;the&nbsp;real&nbsp;archive&nbsp;fd</span></div></li> +<li><div class="src-line"><a name="a5181"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_swap&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5182"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;=&nbsp;<span class="src-var">$v_zip_temp_fd</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5183"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_zip_temp_fd&nbsp;</span>=&nbsp;<span class="src-var">$v_swap</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5184"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5185"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Create&nbsp;the&nbsp;central&nbsp;dir&nbsp;footer</span></div></li> +<li><div class="src-line"><a name="a5186"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivWriteCentralHeader">privWriteCentralHeader</a><span class="src-sym">(</span><span class="src-var">$v_central_dir</span><span class="src-sym">[</span><span class="src-str">'entries'</span><span class="src-sym">]</span>+<span class="src-var">$v_central_dir_to_add</span><span class="src-sym">[</span><span class="src-str">'entries'</span><span class="src-sym">]</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_size</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_offset</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_comment</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5187"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5188"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5189"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_archive_to_add</span><span class="src-sym">-&gt;</span><span class="src-id">privCloseFd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5190"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5191"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;=&nbsp;<span class="src-id">null</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5192"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5193"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Reset&nbsp;the&nbsp;file&nbsp;list</span></div></li> +<li><div class="src-line"><a name="a5194"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset<span class="src-sym">(</span><span class="src-var">$v_header_list</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5195"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5196"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5197"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5198"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5199"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5200"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Swap&nbsp;back&nbsp;the&nbsp;file&nbsp;descriptor</span></div></li> +<li><div class="src-line"><a name="a5201"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_swap&nbsp;</span>=&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5202"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a>&nbsp;=&nbsp;<span class="src-var">$v_zip_temp_fd</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5203"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_zip_temp_fd&nbsp;</span>=&nbsp;<span class="src-var">$v_swap</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5204"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5205"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close</span></div></li> +<li><div class="src-line"><a name="a5206"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5207"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_archive_to_add</span><span class="src-sym">-&gt;</span><span class="src-id">privCloseFd</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5208"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5209"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a5210"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5211"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5212"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Delete&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a5213"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;I&nbsp;should&nbsp;test&nbsp;the&nbsp;result&nbsp;...</span></div></li> +<li><div class="src-line"><a name="a5214"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5215"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5216"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Rename&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a5217"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;I&nbsp;should&nbsp;test&nbsp;the&nbsp;result&nbsp;...</span></div></li> +<li><div class="src-line"><a name="a5218"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//@rename($v_zip_temp_name,&nbsp;$this-&gt;zipname);</span></div></li> +<li><div class="src-line"><a name="a5219"></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilRename">PclZipUtilRename</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_name</span><span class="src-sym">,&nbsp;</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zipname">zipname</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5220"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5221"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5222"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5223"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5224"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5225"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5226"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5227"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privDuplicate()</span></div></li> +<li><div class="src-line"><a name="a5228"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5229"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5230"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5231"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5232"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivDuplicate">privDuplicate</a><span class="src-sym">(</span><span class="src-var">$p_archive_filename</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5233"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5234"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5235"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5236"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;the&nbsp;$p_archive_filename&nbsp;exists</span></div></li> +<li><div class="src-line"><a name="a5237"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/is_file">is_file</a><span class="src-sym">(</span><span class="src-var">$p_archive_filename</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a5238"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5239"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5240"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Nothing&nbsp;to&nbsp;duplicate,&nbsp;so&nbsp;duplicate&nbsp;is&nbsp;a&nbsp;success.</span></div></li> +<li><div class="src-line"><a name="a5241"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5242"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5243"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5244"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5245"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5246"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5247"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;zip&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a5248"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_result</span>=<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivOpenFd">privOpenFd</a><span class="src-sym">(</span><span class="src-str">'wb'</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5249"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5250"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5251"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5252"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5253"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5254"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Open&nbsp;the&nbsp;temporary&nbsp;file&nbsp;in&nbsp;write&nbsp;mode</span></div></li> +<li><div class="src-line"><a name="a5255"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_zip_temp_fd&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fopen">fopen</a><span class="src-sym">(</span><span class="src-var">$p_archive_filename</span><span class="src-sym">,&nbsp;</span><span class="src-str">'rb'</span><span class="src-sym">))&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5256"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5257"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5258"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5259"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></span><span class="src-sym">,&nbsp;</span><span class="src-str">'Unable&nbsp;to&nbsp;open&nbsp;archive&nbsp;file&nbsp;\''</span>.<span class="src-var">$p_archive_filename</span>.<span class="src-str">'\'&nbsp;in&nbsp;binary&nbsp;write&nbsp;mode'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5260"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5261"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5262"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><a href="../PHPExcel/PclZip.html#methodPclZip">PclZip</a><span class="src-sym">::</span><a href="../PHPExcel/PclZip.html#methoderrorCode">errorCode</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5263"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5264"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5265"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Copy&nbsp;the&nbsp;files&nbsp;from&nbsp;the&nbsp;archive&nbsp;to&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a5266"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC&nbsp;:&nbsp;Here&nbsp;I&nbsp;should&nbsp;better&nbsp;append&nbsp;the&nbsp;file&nbsp;and&nbsp;go&nbsp;back&nbsp;to&nbsp;erase&nbsp;the&nbsp;central&nbsp;dir</span></div></li> +<li><div class="src-line"><a name="a5267"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/filesize">filesize</a><span class="src-sym">(</span><span class="src-var">$p_archive_filename</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5268"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5269"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5270"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$v_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$v_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5271"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5272"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$zip_fd">zip_fd</a><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5273"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5274"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5275"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5276"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close</span></div></li> +<li><div class="src-line"><a name="a5277"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#methodprivCloseFd">privCloseFd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5278"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5279"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Close&nbsp;the&nbsp;temporary&nbsp;file</span></div></li> +<li><div class="src-line"><a name="a5280"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fclose">fclose</a><span class="src-sym">(</span><span class="src-var">$v_zip_temp_fd</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5281"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5282"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5283"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5284"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5285"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5286"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5287"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5288"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privErrorLog()</span></div></li> +<li><div class="src-line"><a name="a5289"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5290"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5291"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5292"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivErrorLog">privErrorLog</a><span class="src-sym">(</span><span class="src-var">$p_error_code</span>=<span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_error_string</span>=<span class="src-str">''</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5293"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5294"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERROR_EXTERNAL">PCLZIP_ERROR_EXTERNAL</a>&nbsp;</span>==&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5295"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">PclError</span><span class="src-sym">(</span><span class="src-var">$p_error_code</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_error_string</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5296"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5297"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5298"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$error_code">error_code</a>&nbsp;=&nbsp;<span class="src-var">$p_error_code</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5299"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$error_string">error_string</a>&nbsp;=&nbsp;<span class="src-var">$p_error_string</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5300"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5301"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5302"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5303"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5304"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5305"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privErrorReset()</span></div></li> +<li><div class="src-line"><a name="a5306"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5307"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5308"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5309"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivErrorReset">privErrorReset</a><span class="src-sym">(</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5310"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5311"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERROR_EXTERNAL">PCLZIP_ERROR_EXTERNAL</a>&nbsp;</span>==&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5312"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-id">PclErrorReset</span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5313"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5314"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5315"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$error_code">error_code</a>&nbsp;=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5316"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$error_string">error_string</a>&nbsp;=&nbsp;<span class="src-str">''</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5317"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5318"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5319"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5320"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5321"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5322"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privDisableMagicQuotes()</span></div></li> +<li><div class="src-line"><a name="a5323"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5324"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5325"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5326"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5327"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivDisableMagicQuotes">privDisableMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5328"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5329"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5330"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5331"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;function&nbsp;exists</span></div></li> +<li><div class="src-line"><a name="a5332"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><span class="src-sym">!</span><a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-str">&quot;get_magic_quotes_runtime&quot;</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a5333"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-str">&quot;set_magic_quotes_runtime&quot;</span><span class="src-sym">)))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5334"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5335"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5336"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5337"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;already&nbsp;done</span></div></li> +<li><div class="src-line"><a name="a5338"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$magic_quotes_status">magic_quotes_status</a>&nbsp;!=&nbsp;-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5339"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5340"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5341"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5342"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Get&nbsp;and&nbsp;memorize&nbsp;the&nbsp;magic_quote&nbsp;value</span></div></li> +<li><div class="src-line"><a name="a5343"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$magic_quotes_status">magic_quotes_status</a>&nbsp;=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/get_magic_quotes_runtime">get_magic_quotes_runtime</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5344"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5345"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Disable&nbsp;magic_quotes</span></div></li> +<li><div class="src-line"><a name="a5346"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$magic_quotes_status">magic_quotes_status</a>&nbsp;==&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5347"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/set_magic_quotes_runtime">set_magic_quotes_runtime</a><span class="src-sym">(</span><span class="src-num">0</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5348"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5349"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5350"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5351"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5352"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5353"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5354"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5355"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5356"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;privSwapBackMagicQuotes()</span></div></li> +<li><div class="src-line"><a name="a5357"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5358"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5359"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5360"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5361"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">privSwapBackMagicQuotes</a><span class="src-sym">(</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5362"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5363"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result</span>=<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5364"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5365"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;function&nbsp;exists</span></div></li> +<li><div class="src-line"><a name="a5366"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><span class="src-sym">!</span><a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-str">&quot;get_magic_quotes_runtime&quot;</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a5367"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">(</span><span class="src-sym">!</span><a href="http://www.php.net/function_exists">function_exists</a><span class="src-sym">(</span><span class="src-str">&quot;set_magic_quotes_runtime&quot;</span><span class="src-sym">)))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5368"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5369"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5370"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5371"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;something&nbsp;to&nbsp;do</span></div></li> +<li><div class="src-line"><a name="a5372"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$magic_quotes_status">magic_quotes_status</a>&nbsp;!=&nbsp;-<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5373"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5374"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5375"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5376"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Swap&nbsp;back&nbsp;magic_quotes</span></div></li> +<li><div class="src-line"><a name="a5377"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$magic_quotes_status">magic_quotes_status</a>&nbsp;==&nbsp;<span class="src-num">1</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5378"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/set_magic_quotes_runtime">set_magic_quotes_runtime</a><span class="src-sym">(</span><span class="src-var">$this</span><span class="src-sym">-&gt;</span><a href="../PHPExcel/PclZip.html#var$magic_quotes_status">magic_quotes_status</a><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5379"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5380"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5381"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5382"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5383"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5384"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5385"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5386"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5387"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;End&nbsp;of&nbsp;class</span></div></li> +<li><div class="src-line"><a name="a5388"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5389"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5390"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5391"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;PclZipUtilPathReduction()</span></div></li> +<li><div class="src-line"><a name="a5392"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5393"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5394"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5395"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5396"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathReduction">PclZipUtilPathReduction</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5397"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5398"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5399"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5400"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;not&nbsp;empty&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a5401"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_dir&nbsp;</span>!=&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5402"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Explode&nbsp;path&nbsp;by&nbsp;directory&nbsp;names</span></div></li> +<li><div class="src-line"><a name="a5403"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">&quot;/&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_dir</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5404"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5405"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Study&nbsp;directories&nbsp;from&nbsp;last&nbsp;to&nbsp;first</span></div></li> +<li><div class="src-line"><a name="a5406"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_skip&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5407"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i</span>=<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">)</span>-<span class="src-num">1</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>&gt;=<span class="src-num">0</span><span class="src-sym">;&nbsp;</span><span class="src-var">$i</span>--<span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5408"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;current&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a5409"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">&quot;.&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5410"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Ignore&nbsp;this&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a5411"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;Should&nbsp;be&nbsp;the&nbsp;first&nbsp;$i=0,&nbsp;but&nbsp;no&nbsp;check&nbsp;is&nbsp;done</span></div></li> +<li><div class="src-line"><a name="a5412"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5413"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">&quot;..&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5414"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_skip</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5415"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5416"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">&quot;&quot;</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5417"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;First&nbsp;'/'&nbsp;i.e.&nbsp;root&nbsp;slash</span></div></li> +<li><div class="src-line"><a name="a5418"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>==&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5419"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-str">&quot;/&quot;</span>.<span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5420"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_skip&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5421"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;It&nbsp;is&nbsp;an&nbsp;invalid&nbsp;path,&nbsp;so&nbsp;the&nbsp;path&nbsp;is&nbsp;not&nbsp;modified</span></div></li> +<li><div class="src-line"><a name="a5422"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;TBC</span></div></li> +<li><div class="src-line"><a name="a5423"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$p_dir</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5424"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_skip&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5425"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5426"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5427"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Last&nbsp;'/'&nbsp;i.e.&nbsp;indicates&nbsp;a&nbsp;directory</span></div></li> +<li><div class="src-line"><a name="a5428"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>==&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">)</span>-<span class="src-num">1</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5429"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$v_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5430"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5431"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Double&nbsp;'/'&nbsp;inside&nbsp;the&nbsp;path</span></div></li> +<li><div class="src-line"><a name="a5432"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5433"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Ignore&nbsp;only&nbsp;the&nbsp;double&nbsp;'//'&nbsp;in&nbsp;path,</span></div></li> +<li><div class="src-line"><a name="a5434"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;but&nbsp;not&nbsp;the&nbsp;first&nbsp;and&nbsp;last&nbsp;'/'</span></div></li> +<li><div class="src-line"><a name="a5435"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5436"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5437"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5438"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;item&nbsp;to&nbsp;skip</span></div></li> +<li><div class="src-line"><a name="a5439"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_skip&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5440"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_skip</span>--<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5441"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5442"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5443"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-var">$v_list</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]</span>.<span class="src-sym">(</span><span class="src-var">$i</span>!=<span class="src-sym">(</span><a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">)</span>-<span class="src-num">1</span><span class="src-sym">)</span>?<span class="src-str">&quot;/&quot;</span>.<span class="src-var">$v_result</span>:<span class="src-str">&quot;&quot;</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5444"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5445"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5446"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5447"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a5448"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;skip</span></div></li> +<li><div class="src-line"><a name="a5449"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_skip&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5450"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_skip&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5451"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-str">'../'</span>.<span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5452"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_skip</span>--<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5453"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5454"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5455"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5456"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5457"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5458"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5459"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5460"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5461"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5462"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5463"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;PclZipUtilPathInclusion()</span></div></li> +<li><div class="src-line"><a name="a5464"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5465"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;function&nbsp;indicates&nbsp;if&nbsp;the&nbsp;path&nbsp;$p_path&nbsp;is&nbsp;under&nbsp;the&nbsp;$p_dir&nbsp;tree.&nbsp;Or,</span></div></li> +<li><div class="src-line"><a name="a5466"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;said&nbsp;in&nbsp;an&nbsp;other&nbsp;way,&nbsp;if&nbsp;the&nbsp;file&nbsp;or&nbsp;sub-dir&nbsp;$p_path&nbsp;is&nbsp;inside&nbsp;the&nbsp;dir</span></div></li> +<li><div class="src-line"><a name="a5467"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_dir.</span></div></li> +<li><div class="src-line"><a name="a5468"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;function&nbsp;indicates&nbsp;also&nbsp;if&nbsp;the&nbsp;path&nbsp;is&nbsp;exactly&nbsp;the&nbsp;same&nbsp;as&nbsp;the&nbsp;dir.</span></div></li> +<li><div class="src-line"><a name="a5469"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;function&nbsp;supports&nbsp;path&nbsp;with&nbsp;duplicated&nbsp;'/'&nbsp;like&nbsp;'//',&nbsp;but&nbsp;does&nbsp;not</span></div></li> +<li><div class="src-line"><a name="a5470"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;support&nbsp;'.'&nbsp;or&nbsp;'..'&nbsp;statements.</span></div></li> +<li><div class="src-line"><a name="a5471"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5472"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5473"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;0&nbsp;if&nbsp;$p_path&nbsp;is&nbsp;not&nbsp;inside&nbsp;directory&nbsp;$p_dir</span></div></li> +<li><div class="src-line"><a name="a5474"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;1&nbsp;if&nbsp;$p_path&nbsp;is&nbsp;inside&nbsp;directory&nbsp;$p_dir</span></div></li> +<li><div class="src-line"><a name="a5475"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;2&nbsp;if&nbsp;$p_path&nbsp;is&nbsp;exactly&nbsp;the&nbsp;same&nbsp;as&nbsp;$p_dir</span></div></li> +<li><div class="src-line"><a name="a5476"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5477"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathInclusion">PclZipUtilPathInclusion</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_path</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5478"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5479"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5480"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a5481"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;path&nbsp;beginning&nbsp;by&nbsp;./</span></div></li> +<li><div class="src-line"><a name="a5482"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><span class="src-var">$p_dir&nbsp;</span>==&nbsp;<span class="src-str">'.'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5483"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">((</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">)&nbsp;</span>&gt;=<span class="src-num">2</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'./'</span><span class="src-sym">)))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5484"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_dir&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilTranslateWinPath">PclZipUtilTranslateWinPath</a><span class="src-sym">(</span><a href="http://www.php.net/getcwd">getcwd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">FALSE</span><span class="src-sym">)</span>.<span class="src-str">'/'</span>.<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_dir</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5485"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5486"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(&nbsp;&nbsp;&nbsp;(</span><span class="src-var">$p_path&nbsp;</span>==&nbsp;<span class="src-str">'.'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5487"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">((</span><a href="http://www.php.net/strlen">strlen</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">)&nbsp;</span>&gt;=<span class="src-num">2</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">2</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'./'</span><span class="src-sym">)))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5488"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_path&nbsp;</span>=&nbsp;<a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilTranslateWinPath">PclZipUtilTranslateWinPath</a><span class="src-sym">(</span><a href="http://www.php.net/getcwd">getcwd</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-id">FALSE</span><span class="src-sym">)</span>.<span class="src-str">'/'</span>.<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5489"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5490"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5491"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Explode&nbsp;dir&nbsp;and&nbsp;path&nbsp;by&nbsp;directory&nbsp;separator</span></div></li> +<li><div class="src-line"><a name="a5492"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_list_dir&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">&quot;/&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_dir</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5493"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_list_dir_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_list_dir</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5494"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_list_path&nbsp;</span>=&nbsp;<a href="http://www.php.net/explode">explode</a><span class="src-sym">(</span><span class="src-str">&quot;/&quot;</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_path</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5495"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_list_path_size&nbsp;</span>=&nbsp;<a href="http://www.php.net/sizeof">sizeof</a><span class="src-sym">(</span><span class="src-var">$v_list_path</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5496"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5497"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Study&nbsp;directories&nbsp;paths</span></div></li> +<li><div class="src-line"><a name="a5498"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5499"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$j&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5500"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$v_list_dir_size</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$v_list_path_size</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_result</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5501"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5502"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;empty&nbsp;dir&nbsp;(path&nbsp;reduction)</span></div></li> +<li><div class="src-line"><a name="a5503"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_list_dir</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5504"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5505"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">continue</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5506"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5507"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_list_path</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5508"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$j</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5509"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">continue</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5510"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5511"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5512"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Compare&nbsp;the&nbsp;items</span></div></li> +<li><div class="src-line"><a name="a5513"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$v_list_dir</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-var">$v_list_path</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_list_dir</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-str">''</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(&nbsp;</span><span class="src-var">$v_list_path</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>!=&nbsp;<span class="src-str">''</span><span class="src-sym">))&nbsp;&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5514"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5515"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5516"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5517"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Next&nbsp;items</span></div></li> +<li><div class="src-line"><a name="a5518"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5519"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$j</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5520"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5521"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5522"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;if&nbsp;everything&nbsp;seems&nbsp;to&nbsp;be&nbsp;the&nbsp;same</span></div></li> +<li><div class="src-line"><a name="a5523"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$v_result</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5524"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Skip&nbsp;all&nbsp;the&nbsp;empty&nbsp;items</span></div></li> +<li><div class="src-line"><a name="a5525"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">((</span><span class="src-var">$j&nbsp;</span>&lt;&nbsp;<span class="src-var">$v_list_path_size</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_list_path</span><span class="src-sym">[</span><span class="src-var">$j</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">''</span><span class="src-sym">))&nbsp;</span><span class="src-var">$j</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5526"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$v_list_dir_size</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_list_dir</span><span class="src-sym">[</span><span class="src-var">$i</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-str">''</span><span class="src-sym">))&nbsp;</span><span class="src-var">$i</span>++<span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5527"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5528"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$i&nbsp;</span>&gt;=&nbsp;<span class="src-var">$v_list_dir_size</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$j&nbsp;</span>&gt;=&nbsp;<span class="src-var">$v_list_path_size</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5529"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;There&nbsp;are&nbsp;exactly&nbsp;the&nbsp;same</span></div></li> +<li><div class="src-line"><a name="a5530"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">2</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5531"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5532"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$i&nbsp;</span>&lt;&nbsp;<span class="src-var">$v_list_dir_size</span><span class="src-sym">)&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5533"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;The&nbsp;path&nbsp;is&nbsp;shorter&nbsp;than&nbsp;the&nbsp;dir</span></div></li> +<li><div class="src-line"><a name="a5534"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5535"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5536"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5537"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5538"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5539"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5540"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5541"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5542"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5543"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5544"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;PclZipUtilCopyBlock()</span></div></li> +<li><div class="src-line"><a name="a5545"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5546"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5547"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_mode&nbsp;:&nbsp;read/write&nbsp;compression&nbsp;mode</span></div></li> +<li><div class="src-line"><a name="a5548"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;:&nbsp;src&nbsp;&amp;&nbsp;dest&nbsp;normal</span></div></li> +<li><div class="src-line"><a name="a5549"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;:&nbsp;src&nbsp;gzip,&nbsp;dest&nbsp;normal</span></div></li> +<li><div class="src-line"><a name="a5550"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;:&nbsp;src&nbsp;normal,&nbsp;dest&nbsp;gzip</span></div></li> +<li><div class="src-line"><a name="a5551"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;:&nbsp;src&nbsp;&amp;&nbsp;dest&nbsp;gzip</span></div></li> +<li><div class="src-line"><a name="a5552"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5553"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5554"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilCopyBlock">PclZipUtilCopyBlock</a><span class="src-sym">(</span><span class="src-var">$p_src</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_dest</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_size</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_mode</span>=<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5555"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5556"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5557"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5558"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_mode</span>==<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5559"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5560"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5561"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5562"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$p_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5563"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$p_src</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5564"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$p_dest</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5565"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5566"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5567"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5568"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_mode</span>==<span class="src-num">1</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5569"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5570"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5571"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5572"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$p_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5573"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzread">gzread</a><span class="src-sym">(</span><span class="src-var">$p_src</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5574"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fwrite">fwrite</a><span class="src-sym">(</span><span class="src-var">$p_dest</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5575"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5576"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5577"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5578"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_mode</span>==<span class="src-num">2</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5579"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5580"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5581"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5582"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$p_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5583"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/fread">fread</a><span class="src-sym">(</span><span class="src-var">$p_src</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5584"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzwrite">gzwrite</a><span class="src-sym">(</span><span class="src-var">$p_dest</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5585"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5586"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5587"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5588"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_mode</span>==<span class="src-num">3</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5589"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5590"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">while&nbsp;</span><span class="src-sym">(</span><span class="src-var">$p_size&nbsp;</span>!=&nbsp;<span class="src-num">0</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5591"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5592"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_read_size&nbsp;</span>=&nbsp;<span class="src-sym">(</span><span class="src-var">$p_size&nbsp;</span>&lt;&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a>&nbsp;</span>?&nbsp;<span class="src-var">$p_size&nbsp;</span>:&nbsp;<span class="src-id"><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5593"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_buffer&nbsp;</span>=&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzread">gzread</a><span class="src-sym">(</span><span class="src-var">$p_src</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5594"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">@</span><a href="http://www.php.net/gzwrite">gzwrite</a><span class="src-sym">(</span><span class="src-var">$p_dest</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_buffer</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_read_size</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5595"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_size&nbsp;</span>-=&nbsp;<span class="src-var">$v_read_size</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5596"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5597"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5598"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5599"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5600"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5601"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5602"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5603"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5604"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5605"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;PclZipUtilRename()</span></div></li> +<li><div class="src-line"><a name="a5606"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5607"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;This&nbsp;function&nbsp;tries&nbsp;to&nbsp;do&nbsp;a&nbsp;simple&nbsp;rename()&nbsp;function.&nbsp;If&nbsp;it&nbsp;fails,&nbsp;it</span></div></li> +<li><div class="src-line"><a name="a5608"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;tries&nbsp;to&nbsp;copy&nbsp;the&nbsp;$p_src&nbsp;file&nbsp;in&nbsp;a&nbsp;new&nbsp;$p_dest&nbsp;file&nbsp;and&nbsp;then&nbsp;unlink&nbsp;the</span></div></li> +<li><div class="src-line"><a name="a5609"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;first&nbsp;one.</span></div></li> +<li><div class="src-line"><a name="a5610"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5611"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_src&nbsp;:&nbsp;Old&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a5612"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_dest&nbsp;:&nbsp;New&nbsp;filename</span></div></li> +<li><div class="src-line"><a name="a5613"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5614"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;1&nbsp;on&nbsp;success,&nbsp;0&nbsp;on&nbsp;failure.</span></div></li> +<li><div class="src-line"><a name="a5615"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5616"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilRename">PclZipUtilRename</a><span class="src-sym">(</span><span class="src-var">$p_src</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_dest</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5617"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5618"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">1</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5619"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5620"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Try&nbsp;to&nbsp;rename&nbsp;the&nbsp;files</span></div></li> +<li><div class="src-line"><a name="a5621"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-sym">@</span><a href="http://www.php.net/rename">rename</a><span class="src-sym">(</span><span class="src-var">$p_src</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_dest</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5622"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5623"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Try&nbsp;to&nbsp;copy&nbsp;&amp;&nbsp;unlink&nbsp;the&nbsp;src</span></div></li> +<li><div class="src-line"><a name="a5624"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-sym">@</span><a href="http://www.php.net/copy">copy</a><span class="src-sym">(</span><span class="src-var">$p_src</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_dest</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5625"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5626"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5627"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">else&nbsp;</span><span class="src-key">if&nbsp;</span><span class="src-sym">(</span><span class="src-sym">!</span><span class="src-sym">@</span><a href="http://www.php.net/unlink">unlink</a><span class="src-sym">(</span><span class="src-var">$p_src</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5628"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-num">0</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5629"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5630"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5631"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5632"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Return</span></div></li> +<li><div class="src-line"><a name="a5633"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5634"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5635"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5636"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5637"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5638"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;PclZipUtilOptionText()</span></div></li> +<li><div class="src-line"><a name="a5639"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5640"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Translate&nbsp;option&nbsp;value&nbsp;in&nbsp;text.&nbsp;Mainly&nbsp;for&nbsp;debug&nbsp;purpose.</span></div></li> +<li><div class="src-line"><a name="a5641"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5642"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_option&nbsp;:&nbsp;the&nbsp;option&nbsp;value.</span></div></li> +<li><div class="src-line"><a name="a5643"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5644"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;option&nbsp;text&nbsp;value.</span></div></li> +<li><div class="src-line"><a name="a5645"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5646"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText</a><span class="src-sym">(</span><span class="src-var">$p_option</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5647"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5648"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a5649"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_list&nbsp;</span>=&nbsp;<a href="http://www.php.net/get_defined_constants">get_defined_constants</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5650"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">for&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/reset">reset</a><span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><span class="src-var">$v_key&nbsp;</span>=&nbsp;<a href="http://www.php.net/key">key</a><span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">)</span><span class="src-sym">;&nbsp;</span><a href="http://www.php.net/next">next</a><span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5651"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_prefix&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$v_key</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,&nbsp;</span><span class="src-num">10</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5652"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((&nbsp;&nbsp;&nbsp;(</span><span class="src-var">$v_prefix&nbsp;</span>==&nbsp;<span class="src-str">'PCLZIP_OPT'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5653"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">(</span><span class="src-var">$v_prefix&nbsp;</span>==&nbsp;<span class="src-str">'PCLZIP_CB_'</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5654"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;||&nbsp;<span class="src-sym">(</span><span class="src-var">$v_prefix&nbsp;</span>==&nbsp;<span class="src-str">'PCLZIP_ATT'</span><span class="src-sym">))</span></div></li> +<li><div class="src-line"><a name="a5655"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;&amp;&nbsp;<span class="src-sym">(</span><span class="src-var">$v_list</span><span class="src-sym">[</span><span class="src-var">$v_key</span><span class="src-sym">]&nbsp;</span>==&nbsp;<span class="src-var">$p_option</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5656"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_key</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5657"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5658"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5659"></a>&nbsp;&nbsp;&nbsp;&nbsp;</div></li> +<li><div class="src-line"><a name="a5660"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$v_result&nbsp;</span>=&nbsp;<span class="src-str">'Unknown'</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5661"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5662"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$v_result</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5663"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5664"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5665"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5666"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5667"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Function&nbsp;:&nbsp;PclZipUtilTranslateWinPath()</span></div></li> +<li><div class="src-line"><a name="a5668"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Description&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5669"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;Translate&nbsp;windows&nbsp;path&nbsp;by&nbsp;replacing&nbsp;'\'&nbsp;by&nbsp;'/'&nbsp;and&nbsp;optionally&nbsp;removing</span></div></li> +<li><div class="src-line"><a name="a5670"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;drive&nbsp;letter.</span></div></li> +<li><div class="src-line"><a name="a5671"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Parameters&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5672"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_path&nbsp;:&nbsp;path&nbsp;to&nbsp;translate.</span></div></li> +<li><div class="src-line"><a name="a5673"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;$p_remove_disk_letter&nbsp;:&nbsp;true&nbsp;|&nbsp;false</span></div></li> +<li><div class="src-line"><a name="a5674"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;Return&nbsp;Values&nbsp;:</span></div></li> +<li><div class="src-line"><a name="a5675"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;&nbsp;&nbsp;The&nbsp;path&nbsp;translated.</span></div></li> +<li><div class="src-line"><a name="a5676"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5677"></a>&nbsp;&nbsp;<span class="src-key">function&nbsp;</span><a href="../PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilTranslateWinPath">PclZipUtilTranslateWinPath</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$p_remove_disk_letter</span>=<span class="src-id">true</span><span class="src-sym">)</span></div></li> +<li><div class="src-line"><a name="a5678"></a>&nbsp;&nbsp;<span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5679"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">(</span><a href="http://www.php.net/stristr">stristr</a><span class="src-sym">(</span><a href="http://www.php.net/php_uname">php_uname</a><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">,&nbsp;</span><span class="src-str">'windows'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5680"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Look&nbsp;for&nbsp;potential&nbsp;disk&nbsp;letter</span></div></li> +<li><div class="src-line"><a name="a5681"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><span class="src-var">$p_remove_disk_letter</span><span class="src-sym">)&nbsp;</span>&amp;&amp;&nbsp;<span class="src-sym">((</span><span class="src-var">$v_position&nbsp;</span>=&nbsp;<a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-str">':'</span><span class="src-sym">))&nbsp;</span>!=&nbsp;<span class="src-id">false</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5682"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_path&nbsp;</span>=&nbsp;<a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-var">$v_position</span>+<span class="src-num">1</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5683"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5684"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-comm">//&nbsp;-----&nbsp;Change&nbsp;potential&nbsp;windows&nbsp;directory&nbsp;separator</span></div></li> +<li><div class="src-line"><a name="a5685"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">if&nbsp;</span><span class="src-sym">((</span><a href="http://www.php.net/strpos">strpos</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-str">'\\'</span><span class="src-sym">)&nbsp;</span>&gt;&nbsp;<span class="src-num">0</span><span class="src-sym">)&nbsp;</span>||&nbsp;<span class="src-sym">(</span><a href="http://www.php.net/substr">substr</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-num">0</span><span class="src-sym">,</span><span class="src-num">1</span><span class="src-sym">)&nbsp;</span>==&nbsp;<span class="src-str">'\\'</span><span class="src-sym">))&nbsp;</span><span class="src-sym">{</span></div></li> +<li><div class="src-line"><a name="a5686"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-var">$p_path&nbsp;</span>=&nbsp;<a href="http://www.php.net/strtr">strtr</a><span class="src-sym">(</span><span class="src-var">$p_path</span><span class="src-sym">,&nbsp;</span><span class="src-str">'\\'</span><span class="src-sym">,&nbsp;</span><span class="src-str">'/'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5687"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5688"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5689"></a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="src-key">return&nbsp;</span><span class="src-var">$p_path</span><span class="src-sym">;</span></div></li> +<li><div class="src-line"><a name="a5690"></a>&nbsp;&nbsp;<span class="src-sym">}</span></div></li> +<li><div class="src-line"><a name="a5691"></a>&nbsp;&nbsp;<span class="src-comm">//&nbsp;--------------------------------------------------------------------------------</span></div></li> +<li><div class="src-line"><a name="a5692"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5693"></a>&nbsp;</div></li> +<li><div class="src-line"><a name="a5694"></a><span class="src-php">?&gt;</span></div></li> +</ol> +</div> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:17:25 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/_notes/dwsync.xml new file mode 100644 index 0000000..ab7a47f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/_notes/dwsync.xml @@ -0,0 +1,535 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="classtrees_JAMA.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_Math_Stats.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_CachedObjectStorage.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Calculation.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Cell.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Chart.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Chart_Renderer.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Reader.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Reader_Excel2007.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Reader_Excel5.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_RichText.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Settings.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_Escher.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_OLE.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_Trend.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_ZipArchive.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Style.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Worksheet.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Worksheet_Drawing.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Writer.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Writer_Excel2007.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Writer_Excel5.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_JAMA.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_Math_Stats.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_CachedObjectStorage.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Calculation.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Cell.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Chart.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Chart_Renderer.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Reader.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Reader_Excel2007.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Reader_Excel5.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_RichText.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Settings.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_Escher.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_OLE.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_Trend.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_ZipArchive.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Style.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Worksheet.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Worksheet_Drawing.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Writer.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Writer_Excel2007.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Writer_Excel5.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="errors.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="index.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_JAMA.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_Math_Stats.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_CachedObjectStorage.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Calculation.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Cell.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Chart.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Chart_Renderer.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Reader.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Reader_Excel2007.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Reader_Excel5.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_RichText.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Settings.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Shared.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_Escher.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_OLE.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_Trend.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_ZipArchive.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Style.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Worksheet.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Worksheet_Drawing.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Writer.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Writer_Excel2007.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="li_PHPExcel_Writer_Excel5.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="todolist.html" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Writer_Excel2007.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851649999999" remote="129984144600000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Worksheet.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_Trend.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="li_Math_Stats.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="li_PHPExcel_Cell.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Worksheet_Drawing.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_ZipArchive.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="li_PHPExcel_Reader_Excel2007.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Cell.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851659999999" remote="129984144600000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_Escher.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Settings.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="li_PHPExcel_Writer_Excel2007.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Chart.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="elementindex.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Reader_Excel2007.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="li_PHPExcel_Worksheet.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851689999999" remote="129984144600000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Style.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Reader.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Writer_Excel2007.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851709999999" remote="129984145200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Reader_Excel5.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="todolist.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Writer_Excel5.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="li_PHPExcel_Worksheet_Drawing.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_CachedObjectStorage.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851719999999" remote="129984145200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Writer.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851729999999" remote="129984145200000000" Dst="-1" /> +<file name="elementindex_Math_Stats.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_RichText.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_Escher.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="li_PHPExcel_Settings.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_CachedObjectStorage.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="li_PHPExcel_Chart.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851739999999" remote="129984145200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Chart_Renderer.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Reader.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_ZipArchive.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851779999999" remote="129984145200000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Settings.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851799999999" remote="129984145200000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Writer.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="li_PHPExcel_Writer_Excel5.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_OLE.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="li_PHPExcel_CachedObjectStorage.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851809999999" remote="129984145800000000" Dst="-1" /> +<file name="classtrees_JAMA.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="classtrees_PHPExcel.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Worksheet.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="li_PHPExcel_RichText.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Chart_Renderer.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="elementindex_PHPExcel.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="elementindex_JAMA.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Calculation.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="li_PHPExcel_Reader.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851819999999" remote="129984145800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Worksheet_Drawing.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Style.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_Trend.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_RichText.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851829999999" remote="129984145800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_OLE.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984145800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984145800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Calculation.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Reader_Excel5.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_Escher.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="li_PHPExcel_Writer.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Chart.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851839999999" remote="129984146400000000" Dst="-1" /> +<file name="li_JAMA.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="li_PHPExcel.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="classtrees_Math_Stats.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Cell.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851849999999" remote="129984146400000000" Dst="-1" /> +<file name="li_PHPExcel_Chart_Renderer.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851859999999" remote="129984146400000000" Dst="-1" /> +<file name="index.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="li_PHPExcel_Calculation.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Writer_Excel5.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_ZipArchive.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Reader_Excel2007.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="li_PHPExcel_Style.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="errors.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_Trend.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_OLE.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="li_PHPExcel_Shared.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="li_PHPExcel_Reader_Excel5.html" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Writer_Excel2007.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851649999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Worksheet.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_Trend.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997099800000000" Dst="-1" /> +<file name="li_Math_Stats.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_Cell.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Worksheet_Drawing.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_ZipArchive.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_Reader_Excel2007.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Cell.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851659999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_Escher.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Settings.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_Writer_Excel2007.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Chart.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Reader_Excel2007.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_Worksheet.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851689999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Style.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Reader.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Writer_Excel2007.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851709999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Reader_Excel5.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997099800000000" Dst="-1" /> +<file name="todolist.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Writer_Excel5.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_Worksheet_Drawing.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_CachedObjectStorage.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851719999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Writer.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851729999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_Math_Stats.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_RichText.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_Escher.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_Settings.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_CachedObjectStorage.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_Chart.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851739999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Chart_Renderer.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Reader.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_ZipArchive.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851779999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Settings.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851799999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Writer.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_Writer_Excel5.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_OLE.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_CachedObjectStorage.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851809999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_JAMA.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Worksheet.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_RichText.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Chart_Renderer.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_JAMA.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Calculation.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997099800000000" Dst="-1" /> +<file name="li_PHPExcel_Reader.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851819999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Worksheet_Drawing.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Style.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_Trend.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_RichText.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851829999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_OLE.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Calculation.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997099800000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Reader_Excel5.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997099800000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Shared_Escher.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997100400000000" Dst="-1" /> +<file name="li_PHPExcel_Writer.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997100400000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Chart.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851839999999" remote="129997100400000000" Dst="-1" /> +<file name="li_JAMA.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997100400000000" Dst="-1" /> +<file name="li_PHPExcel.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997100400000000" Dst="-1" /> +<file name="classtrees_Math_Stats.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997100400000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Cell.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851849999999" remote="129997100400000000" Dst="-1" /> +<file name="li_PHPExcel_Chart_Renderer.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851859999999" remote="129997100400000000" Dst="-1" /> +<file name="index.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997100400000000" Dst="-1" /> +<file name="li_PHPExcel_Calculation.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997100400000000" Dst="-1" /> +<file name="elementindex_PHPExcel_Writer_Excel5.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997100400000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Shared_ZipArchive.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997100400000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Reader_Excel2007.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997100400000000" Dst="-1" /> +<file name="li_PHPExcel_Style.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997100400000000" Dst="-1" /> +<file name="errors.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997100400000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_Trend.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997100400000000" Dst="-1" /> +<file name="li_PHPExcel_Shared_OLE.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997100400000000" Dst="-1" /> +<file name="li_PHPExcel_Shared.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997100400000000" Dst="-1" /> +<file name="li_PHPExcel_Reader_Excel5.html" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997100400000000" Dst="-1" /> +<file name="classtrees_PHPExcel_Writer_Excel2007.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560178527562" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Worksheet.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560179000801" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Shared_Trend.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560179489006" remote="131260197000000000" Dst="1" /> +<file name="li_Math_Stats.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560179948995" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Cell.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560180421022" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Worksheet_Drawing.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560180912189" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Shared_ZipArchive.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560181360919" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Reader_Excel2007.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560181843035" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Cell.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560182441165" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Shared_Escher.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560182915318" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Settings.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560183390781" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Writer_Excel2007.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560183882471" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Chart.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560184351583" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Reader_Excel2007.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560187731081" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Worksheet.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560188211547" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Style.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560188893344" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Reader.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560189482540" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Writer_Excel2007.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560190050547" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Reader_Excel5.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560190675019" remote="131260197000000000" Dst="1" /> +<file name="todolist.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560191136422" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Writer_Excel5.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560191600480" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Worksheet_Drawing.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560192091294" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_CachedObjectStorage.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560192584665" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Writer.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560193072905" remote="131260197000000000" Dst="1" /> +<file name="elementindex.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560187260364" remote="131260197000000000" Dst="1" /> +<file name="elementindex_Math_Stats.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560193575627" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_RichText.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560194066406" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Shared_Escher.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560194541207" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Settings.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560195037027" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_CachedObjectStorage.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560195657719" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Chart.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560196137526" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Chart_Renderer.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560196648834" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Reader.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560197138970" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Shared_ZipArchive.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560197638442" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Settings.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560198105147" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Writer.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560198554633" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Writer_Excel5.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560198991695" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Shared_OLE.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560199450968" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Shared.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560200001039" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_CachedObjectStorage.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560200434993" remote="131260197000000000" Dst="1" /> +<file name="classtrees_JAMA.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560200875873" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560201343477" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_RichText.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560202721181" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Chart_Renderer.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560203168285" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Worksheet.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560202285909" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560203804800" remote="131260197000000000" Dst="1" /> +<file name="elementindex_JAMA.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560204340318" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Calculation.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560204785066" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Reader.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560205240132" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Worksheet_Drawing.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560205696391" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Style.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560206149984" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Shared_Trend.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560206619016" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_RichText.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560207083249" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Shared_OLE.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560207517136" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Shared.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560207970354" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Reader_Excel5.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560209217590" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Shared_Escher.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560209759178" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Writer.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560210212537" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Calculation.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560208794785" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Chart.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560210780203" remote="131260197000000000" Dst="1" /> +<file name="li_JAMA.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560211216720" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560211660330" remote="131260197000000000" Dst="1" /> +<file name="classtrees_Math_Stats.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560212106154" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Cell.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560212567393" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Chart_Renderer.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560213009629" remote="131260197000000000" Dst="1" /> +<file name="index.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560213462094" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Calculation.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560213893458" remote="131260197000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Writer_Excel5.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560214416199" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Reader_Excel2007.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560215296467" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Shared_ZipArchive.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560214855467" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Style.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560215733340" remote="131260197000000000" Dst="1" /> +<file name="errors.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560216641869" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Shared_Trend.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560217248967" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Shared_OLE.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560217865958" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Shared.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560218525643" remote="131260197000000000" Dst="1" /> +<file name="li_PHPExcel_Reader_Excel5.html" server="62.244.88.111/actions-fendt/lisa/" local="131244560219061608" remote="131260197000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Writer_Excel2007.html" server="62.244.88.21/amashow/" local="131414752422580477" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Shared_Trend.html" server="62.244.88.21/amashow/" local="131414752423494878" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Worksheet.html" server="62.244.88.21/amashow/" local="131414752423044830" remote="131414681400000000" Dst="2" /> +<file name="li_Math_Stats.html" server="62.244.88.21/amashow/" local="131414752423879468" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Cell.html" server="62.244.88.21/amashow/" local="131414752424308378" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/amashow/" local="131414752424513100" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/amashow/" local="131414752424737562" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Reader_Excel2007.html" server="62.244.88.21/amashow/" local="131414752425129857" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Shared_Escher.html" server="62.244.88.21/amashow/" local="131414752425887811" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Cell.html" server="62.244.88.21/amashow/" local="131414752425695957" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Settings.html" server="62.244.88.21/amashow/" local="131414752426318743" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Writer_Excel2007.html" server="62.244.88.21/amashow/" local="131414752426812237" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Chart.html" server="62.244.88.21/amashow/" local="131414752427267821" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Reader_Excel2007.html" server="62.244.88.21/amashow/" local="131414752428546498" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Worksheet.html" server="62.244.88.21/amashow/" local="131414752429006910" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Style.html" server="62.244.88.21/amashow/" local="131414752429852308" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Reader.html" server="62.244.88.21/amashow/" local="131414752430253585" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Writer_Excel2007.html" server="62.244.88.21/amashow/" local="131414752430606186" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Reader_Excel5.html" server="62.244.88.21/amashow/" local="131414752431707369" remote="131414681400000000" Dst="2" /> +<file name="todolist.html" server="62.244.88.21/amashow/" local="131414752437448216" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Writer_Excel5.html" server="62.244.88.21/amashow/" local="131414752439608875" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/amashow/" local="131414752446705727" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_CachedObjectStorage.html" server="62.244.88.21/amashow/" local="131414752453591926" remote="131414681400000000" Dst="2" /> +<file name="elementindex.html" server="62.244.88.21/amashow/" local="131414752428331223" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Writer.html" server="62.244.88.21/amashow/" local="131414752455230392" remote="131414681400000000" Dst="2" /> +<file name="elementindex_Math_Stats.html" server="62.244.88.21/amashow/" local="131414752469468068" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_RichText.html" server="62.244.88.21/amashow/" local="131414752497712828" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Shared_Escher.html" server="62.244.88.21/amashow/" local="131414752499490988" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Settings.html" server="62.244.88.21/amashow/" local="131414752508391258" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Chart.html" server="62.244.88.21/amashow/" local="131414752514008821" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_CachedObjectStorage.html" server="62.244.88.21/amashow/" local="131414752510933768" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Chart_Renderer.html" server="62.244.88.21/amashow/" local="131414752519039142" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Reader.html" server="62.244.88.21/amashow/" local="131414752524398965" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/amashow/" local="131414752526004250" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Settings.html" server="62.244.88.21/amashow/" local="131414752526659697" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Writer.html" server="62.244.88.21/amashow/" local="131414752527021173" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Writer_Excel5.html" server="62.244.88.21/amashow/" local="131414752527260851" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Shared_OLE.html" server="62.244.88.21/amashow/" local="131414752527808494" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_CachedObjectStorage.html" server="62.244.88.21/amashow/" local="131414752528300996" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Shared.html" server="62.244.88.21/amashow/" local="131414752528076800" remote="131414681400000000" Dst="2" /> +<file name="classtrees_JAMA.html" server="62.244.88.21/amashow/" local="131414752529264280" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel.html" server="62.244.88.21/amashow/" local="131414752529812888" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_RichText.html" server="62.244.88.21/amashow/" local="131414752555629295" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Chart_Renderer.html" server="62.244.88.21/amashow/" local="131414752558284037" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Worksheet.html" server="62.244.88.21/amashow/" local="131414752531227036" remote="131414681400000000" Dst="2" /> +<file name="elementindex_JAMA.html" server="62.244.88.21/amashow/" local="131414752567393016" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel.html" server="62.244.88.21/amashow/" local="131414752563406850" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Calculation.html" server="62.244.88.21/amashow/" local="131414752571125853" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Reader.html" server="62.244.88.21/amashow/" local="131414752571560153" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/amashow/" local="131414752572084891" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Style.html" server="62.244.88.21/amashow/" local="131414752575002618" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_RichText.html" server="62.244.88.21/amashow/" local="131414752575585128" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Shared_Trend.html" server="62.244.88.21/amashow/" local="131414752575370845" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Shared_OLE.html" server="62.244.88.21/amashow/" local="131414752581660836" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Shared.html" server="62.244.88.21/amashow/" local="131414752581983332" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Reader_Excel5.html" server="62.244.88.21/amashow/" local="131414752582910792" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Calculation.html" server="62.244.88.21/amashow/" local="131414752582593362" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Shared_Escher.html" server="62.244.88.21/amashow/" local="131414752583449304" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Writer.html" server="62.244.88.21/amashow/" local="131414752583673573" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel.html" server="62.244.88.21/amashow/" local="131414752584592540" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Chart.html" server="62.244.88.21/amashow/" local="131414752584124099" remote="131414681400000000" Dst="2" /> +<file name="li_JAMA.html" server="62.244.88.21/amashow/" local="131414752584338137" remote="131414681400000000" Dst="2" /> +<file name="classtrees_Math_Stats.html" server="62.244.88.21/amashow/" local="131414752584954096" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Cell.html" server="62.244.88.21/amashow/" local="131414752586742325" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Chart_Renderer.html" server="62.244.88.21/amashow/" local="131414752586942494" remote="131414681400000000" Dst="2" /> +<file name="index.html" server="62.244.88.21/amashow/" local="131414752587151022" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Calculation.html" server="62.244.88.21/amashow/" local="131414752587966454" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/amashow/" local="131414752590218770" remote="131414681400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Writer_Excel5.html" server="62.244.88.21/amashow/" local="131414752590013311" remote="131414681400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Reader_Excel2007.html" server="62.244.88.21/amashow/" local="131414752590630135" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Style.html" server="62.244.88.21/amashow/" local="131414752590834880" remote="131414681400000000" Dst="2" /> +<file name="errors.html" server="62.244.88.21/amashow/" local="131414752591107175" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Shared_Trend.html" server="62.244.88.21/amashow/" local="131414752591316095" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Shared_OLE.html" server="62.244.88.21/amashow/" local="131414752591521998" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Shared.html" server="62.244.88.21/amashow/" local="131414752591730537" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Reader_Excel5.html" server="62.244.88.21/amashow/" local="131414752592211036" remote="131414681400000000" Dst="2" /> +<file name="li_PHPExcel_Writer_Excel2007.html" server="62.244.88.21/deciday/" local="131919461477878304" remote="131826018000000000" Dst="1" /> +<file name="li_PHPExcel_Cell.html" server="62.244.88.21/deciday/" local="131919461466353308" remote="131826018000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Reader.html" server="62.244.88.21/deciday/" local="131919461364547180" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_Shared_Trend.html" server="62.244.88.21/deciday/" local="131919461366523906" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_Reader.html" server="62.244.88.21/deciday/" local="131919461391284654" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_Shared_Escher.html" server="62.244.88.21/deciday/" local="131919461395752180" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Chart.html" server="62.244.88.21/deciday/" local="131919461466892953" remote="131826018000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Reader_Excel5.html" server="62.244.88.21/deciday/" local="131919461361618101" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Shared_Escher.html" server="62.244.88.21/deciday/" local="131919461473284852" remote="131826018000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Worksheet.html" server="62.244.88.21/deciday/" local="131919461369165909" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_Calculation.html" server="62.244.88.21/deciday/" local="131919461359425301" remote="131826017400000000" Dst="1" /> +<file name="todolist.html" server="62.244.88.21/deciday/" local="131919461687955931" remote="131826018000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/deciday/" local="131919461396933785" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_CachedObjectStorage.html" server="62.244.88.21/deciday/" local="131919461379580097" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Settings.html" server="62.244.88.21/deciday/" local="131919461472788995" remote="131826018000000000" Dst="1" /> +<file name="li_PHPExcel_RichText.html" server="62.244.88.21/deciday/" local="131919461471874968" remote="131826018000000000" Dst="1" /> +<file name="li_PHPExcel_Worksheet.html" server="62.244.88.21/deciday/" local="131919461477529297" remote="131826018000000000" Dst="1" /> +<file name="elementindex_PHPExcel.html" server="62.244.88.21/deciday/" local="131919461391482838" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_Writer_Excel5.html" server="62.244.88.21/deciday/" local="131919461403478532" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_Writer_Excel2007.html" server="62.244.88.21/deciday/" local="131919461370669307" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_Chart.html" server="62.244.88.21/deciday/" local="131919461359950540" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_Shared_OLE.html" server="62.244.88.21/deciday/" local="131919461365721191" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel.html" server="62.244.88.21/deciday/" local="131919461468217883" remote="131826018000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/deciday/" local="131919461366705126" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Style.html" server="62.244.88.21/deciday/" local="131919461476515732" remote="131826018000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Shared.html" server="62.244.88.21/deciday/" local="131919461397448900" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_Shared_OLE.html" server="62.244.88.21/deciday/" local="131919461395548004" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_RichText.html" server="62.244.88.21/deciday/" local="131919461392855857" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Calculation.html" server="62.244.88.21/deciday/" local="131919461465400732" remote="131826018000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/deciday/" local="131919461367582612" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Shared_Trend.html" server="62.244.88.21/deciday/" local="131919461476326733" remote="131826018000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Chart_Renderer.html" server="62.244.88.21/deciday/" local="131919461360565892" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_Shared.html" server="62.244.88.21/deciday/" local="131919461365541785" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Writer_Excel5.html" server="62.244.88.21/deciday/" local="131919461477887630" remote="131826018000000000" Dst="1" /> +<file name="li_PHPExcel_Shared_OLE.html" server="62.244.88.21/deciday/" local="131919461474311762" remote="131826018000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Cell.html" server="62.244.88.21/deciday/" local="131919461386203421" remote="131826017400000000" Dst="1" /> +<file name="elementindex_JAMA.html" server="62.244.88.21/deciday/" local="131919461373024329" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_Reader_Excel2007.html" server="62.244.88.21/deciday/" local="131919461361609111" remote="131826017400000000" Dst="1" /> +<file name="classtrees_JAMA.html" server="62.244.88.21/deciday/" local="131919461358075781" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_Reader_Excel2007.html" server="62.244.88.21/deciday/" local="131919461388272009" remote="131826017400000000" Dst="1" /> +<file name="li_JAMA.html" server="62.244.88.21/deciday/" local="131919461461383490" remote="131826018000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Shared_Trend.html" server="62.244.88.21/deciday/" local="131919461397745555" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/deciday/" local="131919461401365020" remote="131826017400000000" Dst="1" /> +<file name="classtrees_Math_Stats.html" server="62.244.88.21/deciday/" local="131919461357703008" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_Settings.html" server="62.244.88.21/deciday/" local="131919461392619879" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_Shared_Escher.html" server="62.244.88.21/deciday/" local="131919461364998216" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_Worksheet.html" server="62.244.88.21/deciday/" local="131919461405237849" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_CachedObjectStorage.html" server="62.244.88.21/deciday/" local="131919461358914627" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Chart_Renderer.html" server="62.244.88.21/deciday/" local="131919461468019538" remote="131826018000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Calculation.html" server="62.244.88.21/deciday/" local="131919461382768982" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_Reader_Excel5.html" server="62.244.88.21/deciday/" local="131919461390585224" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_RichText.html" server="62.244.88.21/deciday/" local="131919461364368588" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_Cell.html" server="62.244.88.21/deciday/" local="131919461360381133" remote="131826017400000000" Dst="1" /> +<file name="index.html" server="62.244.88.21/deciday/" local="131919461436205174" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel.html" server="62.244.88.21/deciday/" local="131919461361263982" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/deciday/" local="131919461476697614" remote="131826018000000000" Dst="1" /> +<file name="li_Math_Stats.html" server="62.244.88.21/deciday/" local="131919461462424264" remote="131826018000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Writer_Excel5.html" server="62.244.88.21/deciday/" local="131919461371405256" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/deciday/" local="131919461475698649" remote="131826018000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Style.html" server="62.244.88.21/deciday/" local="131919461401680246" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_CachedObjectStorage.html" server="62.244.88.21/deciday/" local="131919461463938654" remote="131826018000000000" Dst="1" /> +<file name="elementindex_Math_Stats.html" server="62.244.88.21/deciday/" local="131919461375362053" remote="131826017400000000" Dst="1" /> +<file name="elementindex.html" server="62.244.88.21/deciday/" local="131919461384329031" remote="131826017400000000" Dst="1" /> +<file name="errors.html" server="62.244.88.21/deciday/" local="131919461405587805" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Writer.html" server="62.244.88.21/deciday/" local="131919461478716055" remote="131826018000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Chart.html" server="62.244.88.21/deciday/" local="131919461388264271" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_Writer.html" server="62.244.88.21/deciday/" local="131919461405033320" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Reader.html" server="62.244.88.21/deciday/" local="131919461472098163" remote="131826018000000000" Dst="1" /> +<file name="elementindex_PHPExcel_Chart_Renderer.html" server="62.244.88.21/deciday/" local="131919461385990971" remote="131826017400000000" Dst="1" /> +<file name="li_PHPExcel_Shared.html" server="62.244.88.21/deciday/" local="131919461474631242" remote="131826018000000000" Dst="1" /> +<file name="li_PHPExcel_Reader_Excel2007.html" server="62.244.88.21/deciday/" local="131919461469066919" remote="131826018000000000" Dst="1" /> +<file name="li_PHPExcel_Reader_Excel5.html" server="62.244.88.21/deciday/" local="131919461469251565" remote="131826018000000000" Dst="1" /> +<file name="classtrees_PHPExcel_Style.html" server="62.244.88.21/deciday/" local="131919461370881671" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_Writer.html" server="62.244.88.21/deciday/" local="131919461375138758" remote="131826017400000000" Dst="1" /> +<file name="classtrees_PHPExcel_Settings.html" server="62.244.88.21/deciday/" local="131919461362843991" remote="131826017400000000" Dst="1" /> +<file name="elementindex_PHPExcel_Writer_Excel2007.html" server="62.244.88.21/deciday/" local="131919461404609142" remote="131826017400000000" Dst="1" /> +<file name="classtrees_JAMA.html" server="62.244.88.21/deciday_18/" local="131414752529264280" remote="131825945400000000" Dst="2" /> +<file name="classtrees_Math_Stats.html" server="62.244.88.21/deciday_18/" local="131414752584954096" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel.html" server="62.244.88.21/deciday_18/" local="131414752529812888" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_CachedObjectStorage.html" server="62.244.88.21/deciday_18/" local="131414752453591926" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Calculation.html" server="62.244.88.21/deciday_18/" local="131414752571125853" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Chart.html" server="62.244.88.21/deciday_18/" local="131414752427267821" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Chart_Renderer.html" server="62.244.88.21/deciday_18/" local="131414752558284037" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Cell.html" server="62.244.88.21/deciday_18/" local="131414752586742325" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Reader.html" server="62.244.88.21/deciday_18/" local="131414752524398965" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Reader_Excel2007.html" server="62.244.88.21/deciday_18/" local="131414752590630135" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Reader_Excel5.html" server="62.244.88.21/deciday_18/" local="131414752582910792" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_RichText.html" server="62.244.88.21/deciday_18/" local="131414752497712828" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Settings.html" server="62.244.88.21/deciday_18/" local="131414752426318743" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Shared.html" server="62.244.88.21/deciday_18/" local="131414752581983332" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Shared_Escher.html" server="62.244.88.21/deciday_18/" local="131414752425887811" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Shared_OLE.html" server="62.244.88.21/deciday_18/" local="131414752581660836" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Shared_Trend.html" server="62.244.88.21/deciday_18/" local="131414752575370845" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Style.html" server="62.244.88.21/deciday_18/" local="131414752575002618" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Worksheet.html" server="62.244.88.21/deciday_18/" local="131414752423044830" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/deciday_18/" local="131414752590218770" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/deciday_18/" local="131414752424513100" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Writer.html" server="62.244.88.21/deciday_18/" local="131414752527021173" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Writer_Excel2007.html" server="62.244.88.21/deciday_18/" local="131414752422580477" remote="131825945400000000" Dst="2" /> +<file name="classtrees_PHPExcel_Writer_Excel5.html" server="62.244.88.21/deciday_18/" local="131414752439608875" remote="131825945400000000" Dst="2" /> +<file name="elementindex_JAMA.html" server="62.244.88.21/deciday_18/" local="131414752567393016" remote="131825945400000000" Dst="2" /> +<file name="elementindex_Math_Stats.html" server="62.244.88.21/deciday_18/" local="131414752469468068" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_CachedObjectStorage.html" server="62.244.88.21/deciday_18/" local="131414752510933768" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel.html" server="62.244.88.21/deciday_18/" local="131414752563406850" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Cell.html" server="62.244.88.21/deciday_18/" local="131414752425695957" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Calculation.html" server="62.244.88.21/deciday_18/" local="131414752582593362" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Chart.html" server="62.244.88.21/deciday_18/" local="131414752584124099" remote="131825945400000000" Dst="2" /> +<file name="elementindex.html" server="62.244.88.21/deciday_18/" local="131414752428331223" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Chart_Renderer.html" server="62.244.88.21/deciday_18/" local="131414752519039142" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Reader.html" server="62.244.88.21/deciday_18/" local="131414752430253585" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Reader_Excel2007.html" server="62.244.88.21/deciday_18/" local="131414752428546498" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Reader_Excel5.html" server="62.244.88.21/deciday_18/" local="131414752431707369" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_RichText.html" server="62.244.88.21/deciday_18/" local="131414752575585128" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Settings.html" server="62.244.88.21/deciday_18/" local="131414752526659697" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Shared_Escher.html" server="62.244.88.21/deciday_18/" local="131414752583449304" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Shared.html" server="62.244.88.21/deciday_18/" local="131414752528076800" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Shared_OLE.html" server="62.244.88.21/deciday_18/" local="131414752527808494" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/deciday_18/" local="131414752526004250" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Shared_Trend.html" server="62.244.88.21/deciday_18/" local="131414752423494878" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Style.html" server="62.244.88.21/deciday_18/" local="131414752429852308" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/deciday_18/" local="131414752572084891" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Worksheet.html" server="62.244.88.21/deciday_18/" local="131414752531227036" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Writer.html" server="62.244.88.21/deciday_18/" local="131414752455230392" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Writer_Excel2007.html" server="62.244.88.21/deciday_18/" local="131414752430606186" remote="131825945400000000" Dst="2" /> +<file name="elementindex_PHPExcel_Writer_Excel5.html" server="62.244.88.21/deciday_18/" local="131414752590013311" remote="131825945400000000" Dst="2" /> +<file name="errors.html" server="62.244.88.21/deciday_18/" local="131414752591107175" remote="131825945400000000" Dst="2" /> +<file name="index.html" server="62.244.88.21/deciday_18/" local="131414752587151022" remote="131825945400000000" Dst="2" /> +<file name="li_JAMA.html" server="62.244.88.21/deciday_18/" local="131414752584338137" remote="131825946000000000" Dst="2" /> +<file name="li_Math_Stats.html" server="62.244.88.21/deciday_18/" local="131414752423879468" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel.html" server="62.244.88.21/deciday_18/" local="131414752584592540" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_CachedObjectStorage.html" server="62.244.88.21/deciday_18/" local="131414752528300996" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Calculation.html" server="62.244.88.21/deciday_18/" local="131414752587966454" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Cell.html" server="62.244.88.21/deciday_18/" local="131414752424308378" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Chart.html" server="62.244.88.21/deciday_18/" local="131414752514008821" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Chart_Renderer.html" server="62.244.88.21/deciday_18/" local="131414752586942494" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Reader.html" server="62.244.88.21/deciday_18/" local="131414752571560153" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Reader_Excel2007.html" server="62.244.88.21/deciday_18/" local="131414752425129857" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Reader_Excel5.html" server="62.244.88.21/deciday_18/" local="131414752592211036" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_RichText.html" server="62.244.88.21/deciday_18/" local="131414752555629295" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Settings.html" server="62.244.88.21/deciday_18/" local="131414752508391258" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Shared.html" server="62.244.88.21/deciday_18/" local="131414752591730537" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Shared_Escher.html" server="62.244.88.21/deciday_18/" local="131414752499490988" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Shared_OLE.html" server="62.244.88.21/deciday_18/" local="131414752591521998" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Shared_Trend.html" server="62.244.88.21/deciday_18/" local="131414752591316095" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Shared_ZipArchive.html" server="62.244.88.21/deciday_18/" local="131414752424737562" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Style.html" server="62.244.88.21/deciday_18/" local="131414752590834880" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Worksheet.html" server="62.244.88.21/deciday_18/" local="131414752429006910" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Worksheet_Drawing.html" server="62.244.88.21/deciday_18/" local="131414752446705727" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Writer.html" server="62.244.88.21/deciday_18/" local="131414752583673573" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Writer_Excel2007.html" server="62.244.88.21/deciday_18/" local="131414752426812237" remote="131825946000000000" Dst="2" /> +<file name="li_PHPExcel_Writer_Excel5.html" server="62.244.88.21/deciday_18/" local="131414752527260851" remote="131825946000000000" Dst="2" /> +<file name="todolist.html" server="62.244.88.21/deciday_18/" local="131414752437448216" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_JAMA.html b/site/config/PHPExcel/Documentation/API/classtrees_JAMA.html new file mode 100644 index 0000000..1f943e9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_JAMA.html @@ -0,0 +1,112 @@ +<html> +<head> +<title>Class Trees for Package JAMA</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package JAMA</h1> +<hr /> +<div class="classtree">Root class Benchmark</div><br /> +<ul> +<li><a href="JAMA/Benchmark.html">Benchmark</a></li></ul> + +<hr /> +<div class="classtree">Root class CholeskyDecomposition</div><br /> +<ul> +<li><a href="JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a></li></ul> + +<hr /> +<div class="classtree">Root class EigenvalueDecomposition</div><br /> +<ul> +<li><a href="JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a></li></ul> + +<hr /> +<div class="classtree">Root class MagicSquareExample</div><br /> +<ul> +<li><a href="JAMA/MagicSquareExample.html">MagicSquareExample</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_JAMA_LUDecomposition</div><br /> +<ul> +<li><a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_JAMA_Matrix</div><br /> +<ul> +<li><a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_JAMA_QRDecomposition</div><br /> +<ul> +<li><a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a></li></ul> + +<hr /> +<div class="classtree">Root class SingularValueDecomposition</div><br /> +<ul> +<li><a href="JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_Math_Stats.html b/site/config/PHPExcel/Documentation/API/classtrees_Math_Stats.html new file mode 100644 index 0000000..03c3c6d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_Math_Stats.html @@ -0,0 +1,77 @@ +<html> +<head> +<title>Class Trees for Package Math_Stats</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">Math_Stats</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_Math_Stats.html" class="menu">class tree: Math_Stats</a> ] + [ <a href="elementindex_Math_Stats.html" class="menu">index: Math_Stats</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package Math_Stats</h1> +<hr /> +<div class="classtree">Root class Base</div><br /> +<ul> +<li><a href="Math_Stats/Base.html">Base</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel.html new file mode 100644 index 0000000..8289258 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel.html @@ -0,0 +1,162 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel</h1> +<hr /> +<div class="classtree">Root interface PHPExcel_IComparable</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a></li></ul> + +<hr /> +<div class="classtree">Root class LagrangeInterpolation</div><br /> +<ul> +<li><a href="PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a></li></ul> + +<hr /> +<div class="classtree">Root class LagrangeInterpolation</div><br /> +<ul> +<li><a href="PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a></li></ul> + +<hr /> +<div class="classtree">Root class LevenbergMarquardt</div><br /> +<ul> +<li><a href="PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a></li></ul> + +<hr /> +<div class="classtree">Root class LMQuadTest</div><br /> +<ul> +<li><a href="PHPExcel/LMQuadTest.html">LMQuadTest</a></li></ul> + +<hr /> +<div class="classtree">Root class PclZip</div><br /> +<ul> +<li><a href="PHPExcel/PclZip.html">PclZip</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel.html">PHPExcel</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Autoloader</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Comment</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a> (implements <a href="PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a>)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_DocumentProperties</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_DocumentSecurity</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_HashTable</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_IOFactory</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_NamedRange</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_ReferenceHelper</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_WorksheetIterator</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a> (implements Iterator)</li></ul> + +<hr /> +<div class="classtree">Root class TestMatrix</div><br /> +<ul> +<li><a href="PHPExcel/TestMatrix.html">TestMatrix</a></li></ul> + +<hr /> +<div class="classtree">Root class Exception</div><br /> +<ul> +<li><a href="PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_CachedObjectStorage.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_CachedObjectStorage.html new file mode 100644 index 0000000..80e3549 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_CachedObjectStorage.html @@ -0,0 +1,89 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_CachedObjectStorage</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_CachedObjectStorage</h1> +<hr /> +<div class="classtree">Root interface PHPExcel_CachedObjectStorage_ICache</div><br /> +<ul> +<li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_CachedObjectStorageFactory</div><br /> +<ul> +<li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_CachedObjectStorage_CacheBase</div><br /> +<ul> +<li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><ul> +<li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a> (implements <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>)</li><li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a> (implements <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>)</li><li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a> (implements <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>)</li><li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a> (implements <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>)</li><li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a> (implements <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>)</li><li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a> (implements <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>)</li><li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a> (implements <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>)</li><li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a> (implements <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>)</li><li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a> (implements <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>)</li><li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a> (implements <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>)</li><li><a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a> (implements <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a>)</li></ul></li> +</ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Calculation.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Calculation.html new file mode 100644 index 0000000..cdaf93c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Calculation.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Calculation</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Calculation</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Calculation</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_Database</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_DateTime</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_Engineering</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_ExceptionHandler</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_Financial</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_FormulaParser</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_FormulaToken</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_Function</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_Functions</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_Logical</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_LookupRef</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_MathTrig</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_Statistical</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_TextData</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Calculation_Token_Stack</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a></li></ul> + +<hr /> +<div class="classtree">Root class Exception</div><br /> +<ul> +<li><a href="PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Cell.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Cell.html new file mode 100644 index 0000000..c06124f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Cell.html @@ -0,0 +1,104 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Cell</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Cell</h1> +<hr /> +<div class="classtree">Root interface PHPExcel_Cell_IValueBinder</div><br /> +<ul> +<li><a href="PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Cell</div><br /> +<ul> +<li><a href="PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Cell_DataType</div><br /> +<ul> +<li><a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Cell_DataValidation</div><br /> +<ul> +<li><a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Cell_DefaultValueBinder</div><br /> +<ul> +<li><a href="PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a> (implements <a href="PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a>)<ul> +<li><a href="PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a> (implements <a href="PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a>)</li></ul></li> +</ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Cell_Hyperlink</div><br /> +<ul> +<li><a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Chart.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Chart.html new file mode 100644 index 0000000..890ff34 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Chart.html @@ -0,0 +1,112 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Chart</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Chart</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Chart</div><br /> +<ul> +<li><a href="PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Chart_DataSeries</div><br /> +<ul> +<li><a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Chart_DataSeriesValues</div><br /> +<ul> +<li><a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Chart_Layout</div><br /> +<ul> +<li><a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Chart_Legend</div><br /> +<ul> +<li><a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Chart_PlotArea</div><br /> +<ul> +<li><a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Chart_Title</div><br /> +<ul> +<li><a href="PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a></li></ul> + +<hr /> +<div class="classtree">Root class Exception</div><br /> +<ul> +<li><a href="PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Chart_Renderer.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Chart_Renderer.html new file mode 100644 index 0000000..a47196e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Chart_Renderer.html @@ -0,0 +1,77 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Chart_Renderer</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart_Renderer</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Chart_Renderer.html" class="menu">class tree: PHPExcel_Chart_Renderer</a> ] + [ <a href="elementindex_PHPExcel_Chart_Renderer.html" class="menu">index: PHPExcel_Chart_Renderer</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Chart_Renderer</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Chart_Renderer_jpgraph</div><br /> +<ul> +<li><a href="PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html">PHPExcel_Chart_Renderer_jpgraph</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Reader.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Reader.html new file mode 100644 index 0000000..7e53b69 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Reader.html @@ -0,0 +1,122 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Reader</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Reader</h1> +<hr /> +<div class="classtree">Root interface PHPExcel_Reader_IReader</div><br /> +<ul> +<li><a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a></li></ul> + +<hr /> +<div class="classtree">Root interface PHPExcel_Reader_IReadFilter</div><br /> +<ul> +<li><a href="PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Reader_CSV</div><br /> +<ul> +<li><a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a> (implements <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a>)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Reader_DefaultReadFilter</div><br /> +<ul> +<li><a href="PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a> (implements <a href="PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a>)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Reader_Excel2003XML</div><br /> +<ul> +<li><a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a> (implements <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a>)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Reader_Excel2007</div><br /> +<ul> +<li><a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a> (implements <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a>)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Reader_Gnumeric</div><br /> +<ul> +<li><a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a> (implements <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a>)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Reader_HTML</div><br /> +<ul> +<li><a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a> (implements <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a>)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Reader_OOCalc</div><br /> +<ul> +<li><a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a> (implements <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a>)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Reader_SYLK</div><br /> +<ul> +<li><a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a> (implements <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a>)</li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Reader_Excel2007.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Reader_Excel2007.html new file mode 100644 index 0000000..3d62d76 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Reader_Excel2007.html @@ -0,0 +1,82 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Reader_Excel2007</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Reader_Excel2007.html" class="menu">class tree: PHPExcel_Reader_Excel2007</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel2007.html" class="menu">index: PHPExcel_Reader_Excel2007</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Reader_Excel2007</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Reader_Excel2007_Chart</div><br /> +<ul> +<li><a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html">PHPExcel_Reader_Excel2007_Chart</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Reader_Excel2007_Theme</div><br /> +<ul> +<li><a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html">PHPExcel_Reader_Excel2007_Theme</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Reader_Excel5.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Reader_Excel5.html new file mode 100644 index 0000000..19ea0af --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Reader_Excel5.html @@ -0,0 +1,82 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Reader_Excel5</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel5</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Reader_Excel5.html" class="menu">class tree: PHPExcel_Reader_Excel5</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html" class="menu">index: PHPExcel_Reader_Excel5</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Reader_Excel5</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Reader_Excel5</div><br /> +<ul> +<li><a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a> (implements PHPExcel_Reader_IReader)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Reader_Excel5_Escher</div><br /> +<ul> +<li><a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html">PHPExcel_Reader_Excel5_Escher</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_RichText.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_RichText.html new file mode 100644 index 0000000..5fe1ea1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_RichText.html @@ -0,0 +1,89 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_RichText</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_RichText</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_RichText.html" class="menu">class tree: PHPExcel_RichText</a> ] + [ <a href="elementindex_PHPExcel_RichText.html" class="menu">index: PHPExcel_RichText</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_RichText</h1> +<hr /> +<div class="classtree">Root interface PHPExcel_RichText_ITextElement</div><br /> +<ul> +<li><a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_RichText</div><br /> +<ul> +<li><a href="PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a> (implements PHPExcel_IComparable)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_RichText_TextElement</div><br /> +<ul> +<li><a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a> (implements <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a>)<ul> +<li><a href="PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a> (implements <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a>)</li></ul></li> +</ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Settings.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Settings.html new file mode 100644 index 0000000..3503b98 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Settings.html @@ -0,0 +1,77 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Settings</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Settings</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Settings.html" class="menu">class tree: PHPExcel_Settings</a> ] + [ <a href="elementindex_PHPExcel_Settings.html" class="menu">index: PHPExcel_Settings</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Settings</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Settings</div><br /> +<ul> +<li><a href="PHPExcel_Settings/PHPExcel_Settings.html">PHPExcel_Settings</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared.html new file mode 100644 index 0000000..8184eb4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared.html @@ -0,0 +1,127 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Shared</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Shared</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Shared_CodePage</div><br /> +<ul> +<li><a href="PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Date</div><br /> +<ul> +<li><a href="PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Drawing</div><br /> +<ul> +<li><a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Excel5</div><br /> +<ul> +<li><a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_File</div><br /> +<ul> +<li><a href="PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Font</div><br /> +<ul> +<li><a href="PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_OLERead</div><br /> +<ul> +<li><a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_PasswordHasher</div><br /> +<ul> +<li><a href="PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_String</div><br /> +<ul> +<li><a href="PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_ZipStreamWrapper</div><br /> +<ul> +<li><a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a></li></ul> + +<hr /> +<div class="classtree">Root class XMLWriter</div><br /> +<ul> +<li><a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_Escher.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_Escher.html new file mode 100644 index 0000000..2888bb9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_Escher.html @@ -0,0 +1,112 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Shared_Escher</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Shared_Escher</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Escher</div><br /> +<ul> +<li><a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Escher_DgContainer</div><br /> +<ul> +<li><a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Escher_DgContainer_SpgrContainer</div><br /> +<ul> +<li><a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</div><br /> +<ul> +<li><a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Escher_DggContainer</div><br /> +<ul> +<li><a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Escher_DggContainer_BstoreContainer</div><br /> +<ul> +<li><a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</div><br /> +<ul> +<li><a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</div><br /> +<ul> +<li><a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_OLE.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_OLE.html new file mode 100644 index 0000000..6528fcf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_OLE.html @@ -0,0 +1,89 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Shared_OLE</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Shared_OLE</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Shared_OLE</div><br /> +<ul> +<li><a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_OLE_ChainedBlockStream</div><br /> +<ul> +<li><a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Shared_OLE_PPS</div><br /> +<ul> +<li><a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><ul> +<li><a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a></li><li><a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a></li></ul></li> +</ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_Trend.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_Trend.html new file mode 100644 index 0000000..432e546 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_Trend.html @@ -0,0 +1,84 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Shared_Trend</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Shared_Trend</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Best_Fit</div><br /> +<ul> +<li><a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><ul> +<li><a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a></li><li><a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a></li><li><a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a></li><li><a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a></li><li><a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a></li></ul></li> +</ul> + +<hr /> +<div class="classtree">Root class trendClass</div><br /> +<ul> +<li><a href="PHPExcel_Shared_Trend/trendClass.html">trendClass</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_ZipArchive.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_ZipArchive.html new file mode 100644 index 0000000..e132fe5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Shared_ZipArchive.html @@ -0,0 +1,77 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Shared_ZipArchive</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_ZipArchive</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_ZipArchive.html" class="menu">class tree: PHPExcel_Shared_ZipArchive</a> ] + [ <a href="elementindex_PHPExcel_Shared_ZipArchive.html" class="menu">index: PHPExcel_Shared_ZipArchive</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Shared_ZipArchive</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Shared_ZipArchive</div><br /> +<ul> +<li><a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Style.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Style.html new file mode 100644 index 0000000..34958d4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Style.html @@ -0,0 +1,122 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Style</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Style</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Style</div><br /> +<ul> +<li><a href="PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a> (implements PHPExcel_IComparable)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Style_Alignment</div><br /> +<ul> +<li><a href="PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a> (implements PHPExcel_IComparable)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Style_Border</div><br /> +<ul> +<li><a href="PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a> (implements PHPExcel_IComparable)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Style_Borders</div><br /> +<ul> +<li><a href="PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a> (implements PHPExcel_IComparable)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Style_Color</div><br /> +<ul> +<li><a href="PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a> (implements PHPExcel_IComparable)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Style_Conditional</div><br /> +<ul> +<li><a href="PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a> (implements PHPExcel_IComparable)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Style_Fill</div><br /> +<ul> +<li><a href="PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a> (implements PHPExcel_IComparable)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Style_Font</div><br /> +<ul> +<li><a href="PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a> (implements PHPExcel_IComparable)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Style_NumberFormat</div><br /> +<ul> +<li><a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a> (implements PHPExcel_IComparable)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Style_Protection</div><br /> +<ul> +<li><a href="PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a> (implements PHPExcel_IComparable)</li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Worksheet.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Worksheet.html new file mode 100644 index 0000000..6960900 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Worksheet.html @@ -0,0 +1,157 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Worksheet</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Worksheet</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a> (implements PHPExcel_IComparable)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_AutoFilter</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_AutoFilter_Column</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_AutoFilter_Column_Rule</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_BaseDrawing</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> (implements PHPExcel_IComparable)<ul> +<li><a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a> (implements PHPExcel_IComparable)<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> (implements PHPExcel_IComparable)</li></ul></li> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a> (implements PHPExcel_IComparable)</li></ul></li> +</ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_CellIterator</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a> (implements Iterator)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_ColumnDimension</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_HeaderFooter</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_HeaderFooterDrawing</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a> <b>(Different package)</b><ul><li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> (implements PHPExcel_IComparable)</li></ul></li> +</ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_PageMargins</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_PageSetup</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_Protection</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_Row</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_RowDimension</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_RowIterator</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a> (implements Iterator)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_SheetView</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Worksheet_Drawing.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Worksheet_Drawing.html new file mode 100644 index 0000000..d78d09c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Worksheet_Drawing.html @@ -0,0 +1,85 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Worksheet_Drawing</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet_Drawing</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Worksheet_Drawing.html" class="menu">class tree: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="elementindex_PHPExcel_Worksheet_Drawing.html" class="menu">index: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Worksheet_Drawing</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_Drawing</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a> <b>(Different package)</b><ul><li><a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a> (implements PHPExcel_IComparable)<ul> +<li><a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a> (implements PHPExcel_IComparable)</li></ul></li> +</ul></li> +</ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Worksheet_Drawing_Shadow</div><br /> +<ul> +<li><a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a> (implements PHPExcel_IComparable)</li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Writer.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Writer.html new file mode 100644 index 0000000..7580c3e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Writer.html @@ -0,0 +1,96 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Writer</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Writer</h1> +<hr /> +<div class="classtree">Root interface PHPExcel_Writer_IWriter</div><br /> +<ul> +<li><a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Writer_CSV</div><br /> +<ul> +<li><a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a> (implements <a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a>)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Writer_HTML</div><br /> +<ul> +<li><a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a> (implements <a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a>)<ul> +<li><a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><ul> +<li><a href="PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a> (implements <a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a>)</li><li><a href="PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a> (implements <a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a>)</li><li><a href="PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a> (implements <a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a>)</li></ul></li> +</ul></li> +</ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Writer_PDF</div><br /> +<ul> +<li><a href="PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Writer_Excel2007.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Writer_Excel2007.html new file mode 100644 index 0000000..ab1c0d2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Writer_Excel2007.html @@ -0,0 +1,84 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Writer_Excel2007</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Writer_Excel2007</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Writer_Excel2007</div><br /> +<ul> +<li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a> (implements PHPExcel_Writer_IWriter)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Writer_Excel2007_WriterPart</div><br /> +<ul> +<li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><ul> +<li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a></li><li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a></li><li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a></li><li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a></li><li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a></li><li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a></li><li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a></li><li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a></li><li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a></li><li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a></li><li><a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a></li></ul></li> +</ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Writer_Excel5.html b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Writer_Excel5.html new file mode 100644 index 0000000..f941aa4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/classtrees_PHPExcel_Writer_Excel5.html @@ -0,0 +1,104 @@ +<html> +<head> +<title>Class Trees for Package PHPExcel_Writer_Excel5</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package PHPExcel_Writer_Excel5</h1> +<hr /> +<div class="classtree">Root class PHPExcel_Writer_Excel5</div><br /> +<ul> +<li><a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a> (implements PHPExcel_Writer_IWriter)</li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Writer_Excel5_BIFFwriter</div><br /> +<ul> +<li><a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><ul> +<li><a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a></li><li><a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a></li></ul></li> +</ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Writer_Excel5_Escher</div><br /> +<ul> +<li><a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Writer_Excel5_Font</div><br /> +<ul> +<li><a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Writer_Excel5_Parser</div><br /> +<ul> +<li><a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a></li></ul> + +<hr /> +<div class="classtree">Root class PHPExcel_Writer_Excel5_Xf</div><br /> +<ul> +<li><a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a></li></ul> + + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:09 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex.html b/site/config/PHPExcel/Documentation/API/elementindex.html new file mode 100644 index 0000000..5d572c8 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex.html @@ -0,0 +1,7370 @@ +<html> +<head> +<title>Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top"></td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Index of all elements</h1> + [ <a href="elementindex.html#a">a</a> ] + [ <a href="elementindex.html#b">b</a> ] + [ <a href="elementindex.html#c">c</a> ] + [ <a href="elementindex.html#d">d</a> ] + [ <a href="elementindex.html#e">e</a> ] + [ <a href="elementindex.html#f">f</a> ] + [ <a href="elementindex.html#g">g</a> ] + [ <a href="elementindex.html#h">h</a> ] + [ <a href="elementindex.html#i">i</a> ] + [ <a href="elementindex.html#j">j</a> ] + [ <a href="elementindex.html#k">k</a> ] + [ <a href="elementindex.html#l">l</a> ] + [ <a href="elementindex.html#m">m</a> ] + [ <a href="elementindex.html#n">n</a> ] + [ <a href="elementindex.html#o">o</a> ] + [ <a href="elementindex.html#p">p</a> ] + [ <a href="elementindex.html#q">q</a> ] + [ <a href="elementindex.html#r">r</a> ] + [ <a href="elementindex.html#s">s</a> ] + [ <a href="elementindex.html#t">t</a> ] + [ <a href="elementindex.html#u">u</a> ] + [ <a href="elementindex.html#v">v</a> ] + [ <a href="elementindex.html#w">w</a> ] + [ <a href="elementindex.html#x">x</a> ] + [ <a href="elementindex.html#y">y</a> ] + [ <a href="elementindex.html#z">z</a> ] + [ <a href="elementindex.html#_">_</a> ] + + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>$A</b></dt> + <dd>in file Matrix.php, variable <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#var$A">PHPExcel_Shared_JAMA_Matrix::$A</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Matrix storage</dd> + <dt><b>absDev</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodabsDev">Base::absDev()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the absolute deviation of the data points in the set Handles cummulative data sets correctly</dd> + <dt><b>absDevWithMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodabsDevWithMean">Base::absDevWithMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the absolute deviation of the data points in the set given a fixed mean (average) value. Not used in calcBasic(), calcFull() or calc().</dd> + <dt><b>absoluteCoordinate</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodabsoluteCoordinate">PHPExcel_Cell::absoluteCoordinate()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Make string coordinate absolute</dd> + <dt><b>absoluteReference</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodabsoluteReference">PHPExcel_Cell::absoluteReference()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Make string row, column or cell coordinate absolute</dd> + <dt><b>ACCRINT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodACCRINT">PHPExcel_Calculation_Financial::ACCRINT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ACCRINT</dd> + <dt><b>ACCRINTM</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodACCRINTM">PHPExcel_Calculation_Financial::ACCRINTM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ACCRINTM</dd> + <dt><b>acosh</b></dt> + <dd>in file Functions.php, function <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#functionacosh">acosh()</a></dd> + <dt><b>add</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodadd">PclZip::add()</a></dd> + <dt><b>add</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodadd">PHPExcel_HashTable::add()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add HashTable item</dd> + <dt><b>addBSE</b></dt> + <dd>in file BstoreContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html#methodaddBSE">PHPExcel_Shared_Escher_DggContainer_BstoreContainer::addBSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a BLIP Store Entry</dd> + <dt><b>addCacheData</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_Memcache::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file Memory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodaddCacheData">PHPExcel_CachedObjectStorage_Memory::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodaddCacheData">PHPExcel_CachedObjectStorage_DiscISAM::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file MemoryGZip.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html#methodaddCacheData">PHPExcel_CachedObjectStorage_MemoryGZip::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file Igbinary.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodaddCacheData">PHPExcel_CachedObjectStorage_Igbinary::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodaddCacheData">PHPExcel_CachedObjectStorage_SQLite3::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodaddCacheData">PHPExcel_CachedObjectStorage_PHPTemp::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_Wincache::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodaddCacheData">PHPExcel_CachedObjectStorage_APC::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file MemorySerialized.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html#methodaddCacheData">PHPExcel_CachedObjectStorage_MemorySerialized::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodaddCacheData">PHPExcel_CachedObjectStorage_SQLite::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCellStyleXf</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodaddCellStyleXf">PHPExcel::addCellStyleXf()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a cellStyleXf to the workbook</dd> + <dt><b>addCellXf</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodaddCellXf">PHPExcel::addCellXf()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a cellXf to the workbook</dd> + <dt><b>addChart</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodaddChart">PHPExcel_Worksheet::addChart()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add chart</dd> + <dt><b>addChild</b></dt> + <dd>in file SpgrContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodaddChild">PHPExcel_Shared_Escher_DgContainer_SpgrContainer::addChild()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a child. This will be either spgrContainer or spContainer</dd> + <dt><b>addCondition</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodaddCondition">PHPExcel_Style_Conditional::addCondition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add Condition</dd> + <dt><b>addExternalSheet</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodaddExternalSheet">PHPExcel::addExternalSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add external sheet</dd> + <dt><b>addFromSource</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodaddFromSource">PHPExcel_HashTable::addFromSource()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add HashTable items from source</dd> + <dt><b>addFromString</b></dt> + <dd>in file ZipArchive.php, method <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#methodaddFromString">PHPExcel_Shared_ZipArchive::addFromString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a new file to the zip archive from a string of raw data.</dd> + <dt><b>addImage</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodaddImage">PHPExcel_Worksheet_HeaderFooter::addImage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add header/footer image</dd> + <dt><b>addNamedRange</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodaddNamedRange">PHPExcel::addNamedRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add named range</dd> + <dt><b>addPrintArea</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodaddPrintArea">PHPExcel_Worksheet_PageSetup::addPrintArea()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a new print area (e.g. 'A1:D10' or 'A1:D10,G5:M20') to the list of print areas</dd> + <dt><b>addPrintAreaByColumnAndRow</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodaddPrintAreaByColumnAndRow">PHPExcel_Worksheet_PageSetup::addPrintAreaByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a new print area to the list of print areas</dd> + <dt><b>addRule</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodaddRule">PHPExcel_Worksheet_AutoFilter_Column::addRule()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a new AutoFilter Column Rule to the ruleset</dd> + <dt><b>addSearchLocation</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodaddSearchLocation">PHPExcel_IOFactory::addSearchLocation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add search location</dd> + <dt><b>addSheet</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodaddSheet">PHPExcel::addSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add sheet</dd> + <dt><b>addText</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodaddText">PHPExcel_RichText::addText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add text</dd> + <dt><b>addXfWriter</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodaddXfWriter">PHPExcel_Writer_Excel5_Workbook::addXfWriter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a new XF writer</dd> + <dt><b>allBorders</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallBorders">PHPExcel_Writer_Excel2007_Style::allBorders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all borders</dd> + <dt><b>allConditionalStyles</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallConditionalStyles">PHPExcel_Writer_Excel2007_Style::allConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all conditional styles</dd> + <dt><b>allDrawings</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#methodallDrawings">PHPExcel_Writer_Excel2007_Drawing::allDrawings()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all drawings</dd> + <dt><b>allFills</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallFills">PHPExcel_Writer_Excel2007_Style::allFills()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all fills</dd> + <dt><b>allFonts</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallFonts">PHPExcel_Writer_Excel2007_Style::allFonts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all fonts</dd> + <dt><b>allNumberFormats</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallNumberFormats">PHPExcel_Writer_Excel2007_Style::allNumberFormats()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all number formats</dd> + <dt><b>allStyles</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallStyles">PHPExcel_Writer_Excel2007_Style::allStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all styles</dd> + <dt><b>AMORDEGRC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodAMORDEGRC">PHPExcel_Calculation_Financial::AMORDEGRC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AMORDEGRC</dd> + <dt><b>AMORLINC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodAMORLINC">PHPExcel_Calculation_Financial::AMORLINC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AMORLINC</dd> + <dt><b>angleToDegrees</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodangleToDegrees">PHPExcel_Shared_Drawing::angleToDegrees()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert angle to degrees</dd> + <dt><b>append</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#methodappend">PHPExcel_Shared_OLE_PPS_File::append()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Append data to PPS</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodapplyFromArray">PHPExcel_Style_Borders::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodapplyFromArray">PHPExcel_Style_Color::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodapplyFromArray">PHPExcel_Style_Font::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodapplyFromArray">PHPExcel_Style_Protection::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodapplyFromArray">PHPExcel_Style_Border::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodapplyFromArray">PHPExcel_Style::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodapplyFromArray">PHPExcel_Style_Alignment::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodapplyFromArray">PHPExcel_Style_Fill::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodapplyFromArray">PHPExcel_Style_NumberFormat::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>ArgumentBoundsException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineArgumentBoundsException">ArgumentBoundsException</a></dd> + <dt><b>ArgumentBoundsException</b></dt> + <dd>in file Matrix.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#constArgumentBoundsException">PHPExcel_Shared_JAMA_Matrix::ArgumentBoundsException</a></dd> + <dt><b>ArgumentTypeException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineArgumentTypeException">ArgumentTypeException</a></dd> + <dt><b>ArgumentTypeException</b></dt> + <dd>in file Matrix.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#constArgumentTypeException">PHPExcel_Shared_JAMA_Matrix::ArgumentTypeException</a></dd> + <dt><b>ARIAL</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL">PHPExcel_Shared_Font::ARIAL</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Font filenames</dd> + <dt><b>ARIAL_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL_BOLD">PHPExcel_Shared_Font::ARIAL_BOLD</a></dd> + <dt><b>ARIAL_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL_BOLD_ITALIC">PHPExcel_Shared_Font::ARIAL_BOLD_ITALIC</a></dd> + <dt><b>ARIAL_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL_ITALIC">PHPExcel_Shared_Font::ARIAL_ITALIC</a></dd> + <dt><b>arrayLeftDivide</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayLeftDivide">PHPExcel_Shared_JAMA_Matrix::arrayLeftDivide()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayLeftDivide</dd> + <dt><b>arrayLeftDivideEquals</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayLeftDivideEquals">PHPExcel_Shared_JAMA_Matrix::arrayLeftDivideEquals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayLeftDivideEquals</dd> + <dt><b>ArrayLengthException</b></dt> + <dd>in file Matrix.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#constArrayLengthException">PHPExcel_Shared_JAMA_Matrix::ArrayLengthException</a></dd> + <dt><b>ArrayLengthException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineArrayLengthException">ArrayLengthException</a></dd> + <dt><b>arrayRightDivide</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayRightDivide">PHPExcel_Shared_JAMA_Matrix::arrayRightDivide()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayRightDivide</dd> + <dt><b>arrayRightDivideEquals</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayRightDivideEquals">PHPExcel_Shared_JAMA_Matrix::arrayRightDivideEquals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayRightDivideEquals</dd> + <dt><b>arrayTimes</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayTimes">PHPExcel_Shared_JAMA_Matrix::arrayTimes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayTimes</dd> + <dt><b>arrayTimesEquals</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayTimesEquals">PHPExcel_Shared_JAMA_Matrix::arrayTimesEquals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayTimesEquals</dd> + <dt><b>Asc2Ucs</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodAsc2Ucs">PHPExcel_Shared_OLE::Asc2Ucs()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Utility function to transform ASCII text to Unicode</dd> + <dt><b>ASCIICODE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodASCIICODE">PHPExcel_Calculation_TextData::ASCIICODE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ASCIICODE</dd> + <dt><b>asinh</b></dt> + <dd>in file Functions.php, function <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#functionasinh">asinh()</a></dd> + <dt><b>ATAN2</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodATAN2">PHPExcel_Calculation_MathTrig::ATAN2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ATAN2</dd> + <dt><b>atanh</b></dt> + <dd>in file Functions.php, function <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#functionatanh">atanh()</a></dd> + <dt><b>attach</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodattach">PHPExcel_Cell::attach()</a></dd> + <dt><b>AUTOFILTER_COLUMN_JOIN_AND</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_COLUMN_JOIN_AND">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND</a></dd> + <dt><b>AUTOFILTER_COLUMN_JOIN_OR</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_COLUMN_JOIN_OR">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_OR</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_EQUAL</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_EQUAL">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_GREATERTHAN</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_GREATERTHAN">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHAN</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_LESSTHAN</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_LESSTHAN">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHAN</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_NOTEQUAL</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_NOTEQUAL">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_NOTEQUAL</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_TOPTEN_TOP</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_TOP">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP</a></dd> + <dt><b>AUTOFILTER_FILTERTYPE_CUSTOMFILTER</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_CUSTOMFILTER">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER</a></dd> + <dt><b>AUTOFILTER_FILTERTYPE_DYNAMICFILTER</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_DYNAMICFILTER">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_DYNAMICFILTER</a></dd> + <dt><b>AUTOFILTER_FILTERTYPE_FILTER</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_FILTER">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER</a></dd> + <dt><b>AUTOFILTER_FILTERTYPE_TOPTENFILTER</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_TOPTENFILTER">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_TOPTENFILTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_CUSTOMFILTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_CUSTOMFILTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_DAY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_DAY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_DAY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_HOUR</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_HOUR">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_HOUR</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_MINUTE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_MINUTE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_MONTH</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_MONTH">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MONTH</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_SECOND</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_SECOND">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_SECOND</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_YEAR</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_YEAR">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_YEAR</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMICFILTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMICFILTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMICFILTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_APRIL</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_APRIL">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_APRIL</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_AUGUST</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_AUGUST">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_AUGUST</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_DECEMBER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_DECEMBER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_DECEMBER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_JANUARY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_JANUARY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_JANUARY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_JULY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_JULY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_JULY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_JUNE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_JUNE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_JUNE</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MARCH</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MARCH">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MARCH</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MAY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MAY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MAY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_1">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_2">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_3">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_4">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_5">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_6">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_7">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_8">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_9">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_10">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_11">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_12">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_OCTOBER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_OCTOBER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_OCTOBER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISMONTH">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISWEEK">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISYEAR">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_TODAY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_TODAY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TODAY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_TOMORROW">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_FILTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_FILTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_FILTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_TOPTENFILTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_TOPTENFILTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_TOPTENFILTER</a></dd> + <dt><b>AUTOSIZE_METHOD_APPROX</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constAUTOSIZE_METHOD_APPROX">PHPExcel_Shared_Font::AUTOSIZE_METHOD_APPROX</a></dd> + <dt><b>AUTOSIZE_METHOD_EXACT</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constAUTOSIZE_METHOD_EXACT">PHPExcel_Shared_Font::AUTOSIZE_METHOD_EXACT</a></dd> + <dt><b>AVEDEV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVEDEV">PHPExcel_Calculation_Statistical::AVEDEV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AVEDEV</dd> + <dt><b>AVERAGE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVERAGE">PHPExcel_Calculation_Statistical::AVERAGE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AVERAGE</dd> + <dt><b>AVERAGEA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVERAGEA">PHPExcel_Calculation_Statistical::AVERAGEA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AVERAGEA</dd> + <dt><b>AVERAGEIF</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVERAGEIF">PHPExcel_Calculation_Statistical::AVERAGEIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AVERAGEIF</dd> + <dt><b>Autoloader.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Autoloader.php.html">Autoloader.php</a></dd> + <dt><b>APC.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html">APC.php</a></dd> + <dt><b>AdvancedValueBinder.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html">AdvancedValueBinder.php</a></dd> + <dt><b>Alignment.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Alignment.php.html">Alignment.php</a></dd> + <dt><b>AutoFilter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html">AutoFilter.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>$bbat</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$bbat">PHPExcel_Shared_OLE::$bbat</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Big Block Allocation Table</dd> + <dt><b>$bigBlockSize</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$bigBlockSize">PHPExcel_Shared_OLE::$bigBlockSize</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Size of big blocks. This is usually 512.</dd> + <dt><b>Base</b></dt> + <dd>in file Stats.php, class <a href="Math_Stats/Base.html">Base</a><br>&nbsp;&nbsp;&nbsp;&nbsp;A class to calculate descriptive statistics from a data set.</dd> + <dt><b>Benchmark</b></dt> + <dd>in file benchmark.php, class <a href="JAMA/Benchmark.html">Benchmark</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Example of use of Matrix Class, featuring magic squares.</dd> + <dt><b>BESSELI</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELI">PHPExcel_Calculation_Engineering::BESSELI()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BESSELI</dd> + <dt><b>BESSELJ</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELJ">PHPExcel_Calculation_Engineering::BESSELJ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BESSELJ</dd> + <dt><b>BESSELK</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELK">PHPExcel_Calculation_Engineering::BESSELK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BESSELK</dd> + <dt><b>BESSELY</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELY">PHPExcel_Calculation_Engineering::BESSELY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BESSELY</dd> + <dt><b>BETADIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodBETADIST">PHPExcel_Calculation_Statistical::BETADIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BETADIST</dd> + <dt><b>BETAINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodBETAINV">PHPExcel_Calculation_Statistical::BETAINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BETAINV</dd> + <dt><b>BIG_BLOCK_DEPOT_BLOCKS_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constBIG_BLOCK_DEPOT_BLOCKS_POS">PHPExcel_Shared_OLERead::BIG_BLOCK_DEPOT_BLOCKS_POS</a></dd> + <dt><b>BIG_BLOCK_SIZE</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constBIG_BLOCK_SIZE">PHPExcel_Shared_OLERead::BIG_BLOCK_SIZE</a></dd> + <dt><b>bindParent</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodbindParent">PHPExcel_Style_Color::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodbindParent">PHPExcel_Style_Borders::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodbindParent">PHPExcel_Style_Font::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodbindParent">PHPExcel_Style_Protection::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodbindParent">PHPExcel_Style::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodbindParent">PHPExcel_Style_Alignment::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodbindParent">PHPExcel_Style_NumberFormat::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodbindParent">PHPExcel_Style_Border::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodbindParent">PHPExcel_Style_Fill::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindValue</b></dt> + <dd>in file DefaultValueBinder.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html#methodbindValue">PHPExcel_Cell_DefaultValueBinder::bindValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind value to a cell</dd> + <dt><b>bindValue</b></dt> + <dd>in file IValueBinder.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html#methodbindValue">PHPExcel_Cell_IValueBinder::bindValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind value to a cell</dd> + <dt><b>bindValue</b></dt> + <dd>in file AdvancedValueBinder.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html#methodbindValue">PHPExcel_Cell_AdvancedValueBinder::bindValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind value to a cell</dd> + <dt><b>BINOMDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodBINOMDIST">PHPExcel_Calculation_Statistical::BINOMDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BINOMDIST</dd> + <dt><b>BINTODEC</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBINTODEC">PHPExcel_Calculation_Engineering::BINTODEC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BINTODEC</dd> + <dt><b>BINTOHEX</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBINTOHEX">PHPExcel_Calculation_Engineering::BINTOHEX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BINTOHEX</dd> + <dt><b>BINTOOCT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBINTOOCT">PHPExcel_Calculation_Engineering::BINTOOCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BINTOOCT</dd> + <dt><b>BLIPJPEG</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBLIPJPEG">PHPExcel_Reader_Excel5_Escher::BLIPJPEG</a></dd> + <dt><b>BLIPPNG</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBLIPPNG">PHPExcel_Reader_Excel5_Escher::BLIPPNG</a></dd> + <dt><b>BLIPTYPE_CMYKJPEG</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_CMYKJPEG">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_CMYKJPEG</a></dd> + <dt><b>BLIPTYPE_DIB</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_DIB">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_DIB</a></dd> + <dt><b>BLIPTYPE_EMF</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_EMF">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_EMF</a></dd> + <dt><b>BLIPTYPE_ERROR</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_ERROR">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_ERROR</a></dd> + <dt><b>BLIPTYPE_JPEG</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_JPEG">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_JPEG</a></dd> + <dt><b>BLIPTYPE_PICT</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_PICT">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PICT</a></dd> + <dt><b>BLIPTYPE_PNG</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_PNG">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG</a></dd> + <dt><b>BLIPTYPE_TIFF</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_TIFF">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_TIFF</a></dd> + <dt><b>BLIPTYPE_UNKNOWN</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_UNKNOWN">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_UNKNOWN</a></dd> + <dt><b>BLIPTYPE_WMF</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_WMF">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_WMF</a></dd> + <dt><b>BORDER_DASHDOT</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DASHDOT">PHPExcel_Style_Border::BORDER_DASHDOT</a></dd> + <dt><b>BORDER_DASHDOTDOT</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DASHDOTDOT">PHPExcel_Style_Border::BORDER_DASHDOTDOT</a></dd> + <dt><b>BORDER_DASHED</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DASHED">PHPExcel_Style_Border::BORDER_DASHED</a></dd> + <dt><b>BORDER_DOTTED</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DOTTED">PHPExcel_Style_Border::BORDER_DOTTED</a></dd> + <dt><b>BORDER_DOUBLE</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DOUBLE">PHPExcel_Style_Border::BORDER_DOUBLE</a></dd> + <dt><b>BORDER_HAIR</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_HAIR">PHPExcel_Style_Border::BORDER_HAIR</a></dd> + <dt><b>BORDER_MEDIUM</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUM">PHPExcel_Style_Border::BORDER_MEDIUM</a></dd> + <dt><b>BORDER_MEDIUMDASHDOT</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUMDASHDOT">PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT</a></dd> + <dt><b>BORDER_MEDIUMDASHDOTDOT</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUMDASHDOTDOT">PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT</a></dd> + <dt><b>BORDER_MEDIUMDASHED</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUMDASHED">PHPExcel_Style_Border::BORDER_MEDIUMDASHED</a></dd> + <dt><b>BORDER_NONE</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_NONE">PHPExcel_Style_Border::BORDER_NONE</a></dd> + <dt><b>BORDER_SLANTDASHDOT</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_SLANTDASHDOT">PHPExcel_Style_Border::BORDER_SLANTDASHDOT</a></dd> + <dt><b>BORDER_THICK</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_THICK">PHPExcel_Style_Border::BORDER_THICK</a></dd> + <dt><b>BORDER_THIN</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_THIN">PHPExcel_Style_Border::BORDER_THIN</a></dd> + <dt><b>BRACE_CLOSE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACE_CLOSE">PHPExcel_Calculation_FormulaParser::BRACE_CLOSE</a></dd> + <dt><b>BRACE_OPEN</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACE_OPEN">PHPExcel_Calculation_FormulaParser::BRACE_OPEN</a></dd> + <dt><b>BRACKET_CLOSE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACKET_CLOSE">PHPExcel_Calculation_FormulaParser::BRACKET_CLOSE</a></dd> + <dt><b>BRACKET_OPEN</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACKET_OPEN">PHPExcel_Calculation_FormulaParser::BRACKET_OPEN</a></dd> + <dt><b>BREAK_COLUMN</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constBREAK_COLUMN">PHPExcel_Worksheet::BREAK_COLUMN</a></dd> + <dt><b>BREAK_NONE</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constBREAK_NONE">PHPExcel_Worksheet::BREAK_NONE</a></dd> + <dt><b>BREAK_ROW</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constBREAK_ROW">PHPExcel_Worksheet::BREAK_ROW</a></dd> + <dt><b>BSE</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBSE">PHPExcel_Reader_Excel5_Escher::BSE</a></dd> + <dt><b>BSTORECONTAINER</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBSTORECONTAINER">PHPExcel_Reader_Excel5_Escher::BSTORECONTAINER</a></dd> + <dt><b>buildCharacterSets</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodbuildCharacterSets">PHPExcel_Shared_String::buildCharacterSets()</a></dd> + <dt><b>buildCSS</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodbuildCSS">PHPExcel_Writer_HTML::buildCSS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build CSS styles</dd> + <dt><b>buildRange</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodbuildRange">PHPExcel_Cell::buildRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build range from coordinate strings</dd> + <dt><b>builtInFormatCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodbuiltInFormatCode">PHPExcel_Style_NumberFormat::builtInFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get built-in format code</dd> + <dt><b>builtInFormatCodeIndex</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodbuiltInFormatCodeIndex">PHPExcel_Style_NumberFormat::builtInFormatCodeIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get built-in format code index</dd> + <dt><b>Blip.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html">Blip.php</a></dd> + <dt><b>BSE.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html">BSE.php</a></dd> + <dt><b>BstoreContainer.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html">BstoreContainer.php</a></dd> + <dt><b>benchmark.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html">benchmark.php</a></dd> + <dt><b>bestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html">bestFitClass.php</a></dd> + <dt><b>Border.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Border.php.html">Border.php</a></dd> + <dt><b>Borders.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Borders.php.html">Borders.php</a></dd> + <dt><b>BaseDrawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html">BaseDrawing.php</a></dd> + <dt><b>BIFFwriter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html">BIFFwriter.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>$children</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$children">PHPExcel_Shared_OLE_PPS::$children</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array of child PPS's (only used by Root and Dir PPS's)</dd> + <dt><b>$compatibilityMode</b></dt> + <dd>in file Functions.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#var$compatibilityMode">PHPExcel_Calculation_Functions::$compatibilityMode</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Compatibility mode to use for error checking and responses</dd> + <dt><b>$cyclicFormulaCount</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$cyclicFormulaCount">PHPExcel_Calculation::$cyclicFormulaCount</a></dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_Memcache::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file Igbinary.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_Igbinary::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_SQLite::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_SQLite3::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_Wincache::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_ICache::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_APC::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cache_igbinary</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_igbinary">PHPExcel_CachedObjectStorageFactory::cache_igbinary</a></dd> + <dt><b>cache_in_memory</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_in_memory">PHPExcel_CachedObjectStorageFactory::cache_in_memory</a></dd> + <dt><b>cache_in_memory_gzip</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_in_memory_gzip">PHPExcel_CachedObjectStorageFactory::cache_in_memory_gzip</a></dd> + <dt><b>cache_in_memory_serialized</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_in_memory_serialized">PHPExcel_CachedObjectStorageFactory::cache_in_memory_serialized</a></dd> + <dt><b>cache_to_apc</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_apc">PHPExcel_CachedObjectStorageFactory::cache_to_apc</a></dd> + <dt><b>cache_to_discISAM</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_discISAM">PHPExcel_CachedObjectStorageFactory::cache_to_discISAM</a></dd> + <dt><b>cache_to_memcache</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_memcache">PHPExcel_CachedObjectStorageFactory::cache_to_memcache</a></dd> + <dt><b>cache_to_phpTemp</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_phpTemp">PHPExcel_CachedObjectStorageFactory::cache_to_phpTemp</a></dd> + <dt><b>cache_to_sqlite</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_sqlite">PHPExcel_CachedObjectStorageFactory::cache_to_sqlite</a></dd> + <dt><b>cache_to_sqlite3</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_sqlite3">PHPExcel_CachedObjectStorageFactory::cache_to_sqlite3</a></dd> + <dt><b>cache_to_wincache</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_wincache">PHPExcel_CachedObjectStorageFactory::cache_to_wincache</a></dd> + <dt><b>calc</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcalc">Base::calc()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the basic or full statistics for the data set</dd> + <dt><b>calcBasic</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcalcBasic">Base::calcBasic()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates a basic set of statistics</dd> + <dt><b>calcFull</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcalcFull">Base::calcFull()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates a full set of statistics</dd> + <dt><b>calculate</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodcalculate">PHPExcel_Calculation::calculate()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate cell value (using formula from a cell ID) Retained for backward compatibility</dd> + <dt><b>calculate</b></dt> + <dd>in file trendClass.php, method <a href="PHPExcel_Shared_Trend/trendClass.html#methodcalculate">trendClass::calculate()</a></dd> + <dt><b>calculateCellValue</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodcalculateCellValue">PHPExcel_Calculation::calculateCellValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate the value of a cell formula</dd> + <dt><b>calculateColumnWidth</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodcalculateColumnWidth">PHPExcel_Shared_Font::calculateColumnWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate an (approximate) OpenXML column width, based on font size and text contained</dd> + <dt><b>calculateColumnWidths</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcalculateColumnWidths">PHPExcel_Worksheet::calculateColumnWidths()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate widths for auto-size columns</dd> + <dt><b>calculateFormula</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodcalculateFormula">PHPExcel_Calculation::calculateFormula()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate the value of a formula</dd> + <dt><b>calculateWorksheetDataDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcalculateWorksheetDataDimension">PHPExcel_Worksheet::calculateWorksheetDataDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate worksheet data dimension</dd> + <dt><b>calculateWorksheetDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcalculateWorksheetDimension">PHPExcel_Worksheet::calculateWorksheetDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate worksheet dimension</dd> + <dt><b>CALCULATION_REGEXP_CELLREF</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_CELLREF">PHPExcel_Calculation::CALCULATION_REGEXP_CELLREF</a></dd> + <dt><b>CALCULATION_REGEXP_CELLREF</b></dt> + <dd>in file Calculation.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation.php.html#defineCALCULATION_REGEXP_CELLREF">CALCULATION_REGEXP_CELLREF</a></dd> + <dt><b>CALCULATION_REGEXP_ERROR</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_ERROR">PHPExcel_Calculation::CALCULATION_REGEXP_ERROR</a></dd> + <dt><b>CALCULATION_REGEXP_FUNCTION</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_FUNCTION">PHPExcel_Calculation::CALCULATION_REGEXP_FUNCTION</a></dd> + <dt><b>CALCULATION_REGEXP_NAMEDRANGE</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_NAMEDRANGE">PHPExcel_Calculation::CALCULATION_REGEXP_NAMEDRANGE</a></dd> + <dt><b>CALCULATION_REGEXP_NAMEDRANGE</b></dt> + <dd>in file Calculation.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation.php.html#defineCALCULATION_REGEXP_NAMEDRANGE">CALCULATION_REGEXP_NAMEDRANGE</a></dd> + <dt><b>CALCULATION_REGEXP_NUMBER</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_NUMBER">PHPExcel_Calculation::CALCULATION_REGEXP_NUMBER</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Regular Expressions</dd> + <dt><b>CALCULATION_REGEXP_OPENBRACE</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_OPENBRACE">PHPExcel_Calculation::CALCULATION_REGEXP_OPENBRACE</a></dd> + <dt><b>CALCULATION_REGEXP_STRING</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_STRING">PHPExcel_Calculation::CALCULATION_REGEXP_STRING</a></dd> + <dt><b>CALENDAR_MAC_1904</b></dt> + <dd>in file Date.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#constCALENDAR_MAC_1904">PHPExcel_Shared_Date::CALENDAR_MAC_1904</a></dd> + <dt><b>CALENDAR_WINDOWS_1900</b></dt> + <dd>in file Date.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#constCALENDAR_WINDOWS_1900">PHPExcel_Shared_Date::CALENDAR_WINDOWS_1900</a><br>&nbsp;&nbsp;&nbsp;&nbsp;constants</dd> + <dt><b>CALIBRI</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI">PHPExcel_Shared_Font::CALIBRI</a></dd> + <dt><b>CALIBRI_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI_BOLD">PHPExcel_Shared_Font::CALIBRI_BOLD</a></dd> + <dt><b>CALIBRI_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI_BOLD_ITALIC">PHPExcel_Shared_Font::CALIBRI_BOLD_ITALIC</a></dd> + <dt><b>CALIBRI_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI_ITALIC">PHPExcel_Shared_Font::CALIBRI_ITALIC</a></dd> + <dt><b>canRead</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodcanRead">PHPExcel_Reader_Excel2003XML::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodcanRead">PHPExcel_Reader_Excel2007::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodcanRead">PHPExcel_Reader_CSV::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodcanRead">PHPExcel_Reader_OOCalc::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodcanRead">PHPExcel_Reader_HTML::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file IReader.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodcanRead">PHPExcel_Reader_IReader::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodcanRead">PHPExcel_Reader_SYLK::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodcanRead">PHPExcel_Reader_Gnumeric::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodcanRead">PHPExcel_Reader_Excel5::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>CATEGORY_CUBE</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_CUBE">PHPExcel_Calculation_Function::CATEGORY_CUBE</a></dd> + <dt><b>CATEGORY_DATABASE</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_DATABASE">PHPExcel_Calculation_Function::CATEGORY_DATABASE</a></dd> + <dt><b>CATEGORY_DATE_AND_TIME</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_DATE_AND_TIME">PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME</a></dd> + <dt><b>CATEGORY_ENGINEERING</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_ENGINEERING">PHPExcel_Calculation_Function::CATEGORY_ENGINEERING</a></dd> + <dt><b>CATEGORY_FINANCIAL</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_FINANCIAL">PHPExcel_Calculation_Function::CATEGORY_FINANCIAL</a></dd> + <dt><b>CATEGORY_INFORMATION</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_INFORMATION">PHPExcel_Calculation_Function::CATEGORY_INFORMATION</a></dd> + <dt><b>CATEGORY_LOGICAL</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_LOGICAL">PHPExcel_Calculation_Function::CATEGORY_LOGICAL</a></dd> + <dt><b>CATEGORY_LOOKUP_AND_REFERENCE</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_LOOKUP_AND_REFERENCE">PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE</a></dd> + <dt><b>CATEGORY_MATH_AND_TRIG</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_MATH_AND_TRIG">PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG</a></dd> + <dt><b>CATEGORY_STATISTICAL</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_STATISTICAL">PHPExcel_Calculation_Function::CATEGORY_STATISTICAL</a></dd> + <dt><b>CATEGORY_TEXT_AND_DATA</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_TEXT_AND_DATA">PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA</a></dd> + <dt><b>CEILING</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodCEILING">PHPExcel_Calculation_MathTrig::CEILING()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CEILING</dd> + <dt><b>cellDimensionToPixels</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodcellDimensionToPixels">PHPExcel_Shared_Drawing::cellDimensionToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert column width from (intrinsic) Excel units to pixels</dd> + <dt><b>cellExists</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcellExists">PHPExcel_Worksheet::cellExists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Cell at a specific coordinate exists?</dd> + <dt><b>cellExistsByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcellExistsByColumnAndRow">PHPExcel_Worksheet::cellExistsByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Cell at a specific coordinate by using numeric cell coordinates exists?</dd> + <dt><b>CELL_ADDRESS</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCELL_ADDRESS">PHPExcel_Calculation_LookupRef::CELL_ADDRESS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CELL_ADDRESS</dd> + <dt><b>center</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcenter">Base::center()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Transforms the data by substracting each entry from the mean.</dd> + <dt><b>centimeterSizeToPixels</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodcentimeterSizeToPixels">PHPExcel_Shared_Font::centimeterSizeToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate an (approximate) pixel size, based on centimeter size</dd> + <dt><b>changeBrightness</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodchangeBrightness">PHPExcel_Style_Color::changeBrightness()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Adjust the brightness of a color</dd> + <dt><b>CHARACTER</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodCHARACTER">PHPExcel_Calculation_TextData::CHARACTER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CHARACTER</dd> + <dt><b>CHARSET_ANSI_ARABIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_ARABIC">PHPExcel_Shared_Font::CHARSET_ANSI_ARABIC</a></dd> + <dt><b>CHARSET_ANSI_BALTIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_BALTIC">PHPExcel_Shared_Font::CHARSET_ANSI_BALTIC</a></dd> + <dt><b>CHARSET_ANSI_CHINESE_SIMIPLIFIED</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_CHINESE_SIMIPLIFIED">PHPExcel_Shared_Font::CHARSET_ANSI_CHINESE_SIMIPLIFIED</a></dd> + <dt><b>CHARSET_ANSI_CHINESE_TRADITIONAL</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_CHINESE_TRADITIONAL">PHPExcel_Shared_Font::CHARSET_ANSI_CHINESE_TRADITIONAL</a></dd> + <dt><b>CHARSET_ANSI_CYRILLIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_CYRILLIC">PHPExcel_Shared_Font::CHARSET_ANSI_CYRILLIC</a></dd> + <dt><b>CHARSET_ANSI_GREEK</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_GREEK">PHPExcel_Shared_Font::CHARSET_ANSI_GREEK</a></dd> + <dt><b>CHARSET_ANSI_HEBREW</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_HEBREW">PHPExcel_Shared_Font::CHARSET_ANSI_HEBREW</a></dd> + <dt><b>CHARSET_ANSI_JAPANESE_SHIFTJIS</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_JAPANESE_SHIFTJIS">PHPExcel_Shared_Font::CHARSET_ANSI_JAPANESE_SHIFTJIS</a></dd> + <dt><b>CHARSET_ANSI_KOREAN_HANGUL</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_KOREAN_HANGUL">PHPExcel_Shared_Font::CHARSET_ANSI_KOREAN_HANGUL</a></dd> + <dt><b>CHARSET_ANSI_KOREAN_JOHAB</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_KOREAN_JOHAB">PHPExcel_Shared_Font::CHARSET_ANSI_KOREAN_JOHAB</a></dd> + <dt><b>CHARSET_ANSI_LATIN</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_LATIN">PHPExcel_Shared_Font::CHARSET_ANSI_LATIN</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Character set codes used by BIFF5-8 in Font records</dd> + <dt><b>CHARSET_ANSI_LATIN_II</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_LATIN_II">PHPExcel_Shared_Font::CHARSET_ANSI_LATIN_II</a></dd> + <dt><b>CHARSET_ANSI_THAI</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_THAI">PHPExcel_Shared_Font::CHARSET_ANSI_THAI</a></dd> + <dt><b>CHARSET_ANSI_TURKISH</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_TURKISH">PHPExcel_Shared_Font::CHARSET_ANSI_TURKISH</a></dd> + <dt><b>CHARSET_ANSI_VIETNAMESE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_VIETNAMESE">PHPExcel_Shared_Font::CHARSET_ANSI_VIETNAMESE</a></dd> + <dt><b>CHARSET_APPLE_ROMAN</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_APPLE_ROMAN">PHPExcel_Shared_Font::CHARSET_APPLE_ROMAN</a></dd> + <dt><b>CHARSET_OEM_LATIN_I</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_OEM_LATIN_I">PHPExcel_Shared_Font::CHARSET_OEM_LATIN_I</a></dd> + <dt><b>CHARSET_SYMBOL</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_SYMBOL">PHPExcel_Shared_Font::CHARSET_SYMBOL</a></dd> + <dt><b>CHARSET_SYSTEM_DEFAULT</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_SYSTEM_DEFAULT">PHPExcel_Shared_Font::CHARSET_SYSTEM_DEFAULT</a></dd> + <dt><b>CHART_RENDERER_JPGRAPH</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constCHART_RENDERER_JPGRAPH">PHPExcel_Settings::CHART_RENDERER_JPGRAPH</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optional Chart Rendering libraries</dd> + <dt><b>checkArrays</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodcheckArrays">TestMatrix::checkArrays()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check norm of difference of &quot;arrays&quot;.</dd> + <dt><b>checkErrorCode</b></dt> + <dd>in file DataType.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#methodcheckErrorCode">PHPExcel_Cell_DataType::checkErrorCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check a value that it is a valid error code</dd> + <dt><b>checkMatrices</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodcheckMatrices">TestMatrix::checkMatrices()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check norm of difference of &quot;matrices&quot;.</dd> + <dt><b>checkMatrixDimensions</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodcheckMatrixDimensions">PHPExcel_Shared_JAMA_Matrix::checkMatrixDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;checkMatrixDimensions</dd> + <dt><b>checkScalars</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodcheckScalars">TestMatrix::checkScalars()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check magnitude of difference of &quot;scalars&quot;.</dd> + <dt><b>checkString</b></dt> + <dd>in file DataType.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#methodcheckString">PHPExcel_Cell_DataType::checkString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check a string that it satisfies Excel requirements</dd> + <dt><b>checkVectors</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodcheckVectors">TestMatrix::checkVectors()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check norm of difference of &quot;vectors&quot;.</dd> + <dt><b>CHIDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCHIDIST">PHPExcel_Calculation_Statistical::CHIDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CHIDIST</dd> + <dt><b>CHIINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCHIINV">PHPExcel_Calculation_Statistical::CHIINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CHIINV</dd> + <dt><b>chiSquared</b></dt> + <dd>in file LevenbergMarquardt.php, method <a href="PHPExcel/LevenbergMarquardt.html#methodchiSquared">LevenbergMarquardt::chiSquared()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate the current sum-squared-error</dd> + <dt><b>CholeskyDecomposition</b></dt> + <dd>in file CholeskyDecomposition.php, class <a href="JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a></dd> + <dt><b>CHOOSE</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCHOOSE">PHPExcel_Calculation_LookupRef::CHOOSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CHOOSE</dd> + <dt><b>clear</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodclear">PHPExcel_HashTable::clear()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear HashTable</dd> + <dt><b>clearCalculationCache</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodclearCalculationCache">PHPExcel_Calculation::clearCalculationCache()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear calculation cache</dd> + <dt><b>clearColumn</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodclearColumn">PHPExcel_Worksheet_AutoFilter::clearColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear a specified AutoFilter Column</dd> + <dt><b>clearPrintArea</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodclearPrintArea">PHPExcel_Worksheet_PageSetup::clearPrintArea()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear a print area</dd> + <dt><b>clearRules</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodclearRules">PHPExcel_Worksheet_AutoFilter_Column::clearRules()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete all AutoFilter Column Rules</dd> + <dt><b>CLIENTANCHOR</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constCLIENTANCHOR">PHPExcel_Reader_Excel5_Escher::CLIENTANCHOR</a></dd> + <dt><b>CLIENTDATA</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constCLIENTDATA">PHPExcel_Reader_Excel5_Escher::CLIENTDATA</a></dd> + <dt><b>CLIENTTEXTBOX</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constCLIENTTEXTBOX">PHPExcel_Reader_Excel5_Escher::CLIENTTEXTBOX</a></dd> + <dt><b>close</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#methodclose">PHPExcel_Writer_Excel5_Escher::close()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Process the object to be written</dd> + <dt><b>close</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodclose">PHPExcel_Writer_Excel5_Worksheet::close()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add data to the beginning of the workbook (note the reverse order) and to the end of the workbook.</dd> + <dt><b>close</b></dt> + <dd>in file ZipArchive.php, method <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#methodclose">PHPExcel_Shared_ZipArchive::close()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Close this zip archive</dd> + <dt><b>coeffOfVariation</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcoeffOfVariation">Base::coeffOfVariation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the coefficient of variation of a data set.</dd> + <dt><b>COLOR_BLACK</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_BLACK">PHPExcel_Style_Color::COLOR_BLACK</a></dd> + <dt><b>COLOR_BLUE</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_BLUE">PHPExcel_Style_Color::COLOR_BLUE</a></dd> + <dt><b>COLOR_DARKBLUE</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKBLUE">PHPExcel_Style_Color::COLOR_DARKBLUE</a></dd> + <dt><b>COLOR_DARKGREEN</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKGREEN">PHPExcel_Style_Color::COLOR_DARKGREEN</a></dd> + <dt><b>COLOR_DARKRED</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKRED">PHPExcel_Style_Color::COLOR_DARKRED</a></dd> + <dt><b>COLOR_DARKYELLOW</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKYELLOW">PHPExcel_Style_Color::COLOR_DARKYELLOW</a></dd> + <dt><b>COLOR_GREEN</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_GREEN">PHPExcel_Style_Color::COLOR_GREEN</a></dd> + <dt><b>COLOR_RED</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_RED">PHPExcel_Style_Color::COLOR_RED</a></dd> + <dt><b>COLOR_WHITE</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_WHITE">PHPExcel_Style_Color::COLOR_WHITE</a></dd> + <dt><b>COLOR_YELLOW</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_YELLOW">PHPExcel_Style_Color::COLOR_YELLOW</a></dd> + <dt><b>COLUMN</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCOLUMN">PHPExcel_Calculation_LookupRef::COLUMN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COLUMN</dd> + <dt><b>columnIndexFromString</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodcolumnIndexFromString">PHPExcel_Cell::columnIndexFromString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Column index from string</dd> + <dt><b>COLUMNS</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCOLUMNS">PHPExcel_Calculation_LookupRef::COLUMNS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COLUMNS</dd> + <dt><b>COMBIN</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodCOMBIN">PHPExcel_Calculation_MathTrig::COMBIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COMBIN</dd> + <dt><b>COMIC_SANS_MS</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOMIC_SANS_MS">PHPExcel_Shared_Font::COMIC_SANS_MS</a></dd> + <dt><b>COMIC_SANS_MS_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOMIC_SANS_MS_BOLD">PHPExcel_Shared_Font::COMIC_SANS_MS_BOLD</a></dd> + <dt><b>COMMA</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constCOMMA">PHPExcel_Calculation_FormulaParser::COMMA</a></dd> + <dt><b>compareCells</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodcompareCells">PHPExcel_Cell::compareCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Compare 2 cells</dd> + <dt><b>COMPATIBILITY_EXCEL</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constCOMPATIBILITY_EXCEL">PHPExcel_Calculation_Functions::COMPATIBILITY_EXCEL</a><br>&nbsp;&nbsp;&nbsp;&nbsp;constants</dd> + <dt><b>COMPATIBILITY_GNUMERIC</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constCOMPATIBILITY_GNUMERIC">PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC</a></dd> + <dt><b>COMPATIBILITY_OPENOFFICE</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constCOMPATIBILITY_OPENOFFICE">PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE</a></dd> + <dt><b>COMPLEX</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodCOMPLEX">PHPExcel_Calculation_Engineering::COMPLEX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COMPLEX</dd> + <dt><b>concat</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodconcat">PHPExcel_Shared_JAMA_Matrix::concat()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;concat</dd> + <dt><b>CONCATENATE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodCONCATENATE">PHPExcel_Calculation_TextData::CONCATENATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CONCATENATE</dd> + <dt><b>cond</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodcond">SingularValueDecomposition::cond()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Two norm condition number</dd> + <dt><b>conditionalStylesExists</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodconditionalStylesExists">PHPExcel_Worksheet::conditionalStylesExists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Do conditional styles exist for this cell?</dd> + <dt><b>CONDITION_CELLIS</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_CELLIS">PHPExcel_Style_Conditional::CONDITION_CELLIS</a></dd> + <dt><b>CONDITION_CONTAINSTEXT</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_CONTAINSTEXT">PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT</a></dd> + <dt><b>CONDITION_EXPRESSION</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_EXPRESSION">PHPExcel_Style_Conditional::CONDITION_EXPRESSION</a></dd> + <dt><b>CONDITION_NONE</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_NONE">PHPExcel_Style_Conditional::CONDITION_NONE</a></dd> + <dt><b>CONFIDENCE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCONFIDENCE">PHPExcel_Calculation_Statistical::CONFIDENCE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CONFIDENCE</dd> + <dt><b>ControlCharacterOOXML2PHP</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodControlCharacterOOXML2PHP">PHPExcel_Shared_String::ControlCharacterOOXML2PHP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert from OpenXML escaped control character to PHP control character</dd> + <dt><b>ControlCharacterPHP2OOXML</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodControlCharacterPHP2OOXML">PHPExcel_Shared_String::ControlCharacterPHP2OOXML()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert from PHP control character to OpenXML escaped control character</dd> + <dt><b>ConvertEncoding</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodConvertEncoding">PHPExcel_Shared_String::ConvertEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert string from one encoding to another. First try iconv, then mbstring, or no convertion</dd> + <dt><b>convertProperty</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodconvertProperty">PHPExcel_DocumentProperties::convertProperty()</a></dd> + <dt><b>convertPropertyType</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodconvertPropertyType">PHPExcel_DocumentProperties::convertPropertyType()</a></dd> + <dt><b>convertToNumberIfFraction</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodconvertToNumberIfFraction">PHPExcel_Shared_String::convertToNumberIfFraction()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether a string contains a fractional numeric value, and convert it to a numeric if it is</dd> + <dt><b>CONVERTUOM</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodCONVERTUOM">PHPExcel_Calculation_Engineering::CONVERTUOM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CONVERTUOM</dd> + <dt><b>coordinateFromString</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodcoordinateFromString">PHPExcel_Cell::coordinateFromString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Coordinate from string</dd> + <dt><b>copy</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodcopy">PHPExcel::copy()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Copy workbook (!= clone!)</dd> + <dt><b>copy</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcopy">PHPExcel_Worksheet::copy()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Copy worksheet (!= clone!)</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_PHPTemp::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_APC::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_Wincache::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_SQLite3::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_SQLite::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_Memcache::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_DiscISAM::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file Memory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_Memory::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_ICache::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>CORREL</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCORREL">PHPExcel_Calculation_Statistical::CORREL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CORREL</dd> + <dt><b>COUNT</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNT">PHPExcel_Calculation_Statistical::COUNT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUNT</dd> + <dt><b>count</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcount">Base::count()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the number of data points in the set Handles cummulative data sets correctly</dd> + <dt><b>count</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodcount">PHPExcel_HashTable::count()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Count</dd> + <dt><b>count</b></dt> + <dd>in file Stack.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodcount">PHPExcel_Calculation_Token_Stack::count()</a></dd> + <dt><b>COUNTA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNTA">PHPExcel_Calculation_Statistical::COUNTA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUNTA</dd> + <dt><b>COUNTBLANK</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNTBLANK">PHPExcel_Calculation_Statistical::COUNTBLANK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUNTBLANK</dd> + <dt><b>CountCharacters</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodCountCharacters">PHPExcel_Shared_String::CountCharacters()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get character count. First try mbstring, then iconv, finally strlen</dd> + <dt><b>COUNTIF</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNTIF">PHPExcel_Calculation_Statistical::COUNTIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUNTIF</dd> + <dt><b>COUPDAYBS</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPDAYBS">PHPExcel_Calculation_Financial::COUPDAYBS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPDAYBS</dd> + <dt><b>COUPDAYS</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPDAYS">PHPExcel_Calculation_Financial::COUPDAYS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPDAYS</dd> + <dt><b>COUPDAYSNC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPDAYSNC">PHPExcel_Calculation_Financial::COUPDAYSNC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPDAYSNC</dd> + <dt><b>COUPNCD</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPNCD">PHPExcel_Calculation_Financial::COUPNCD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPNCD</dd> + <dt><b>COUPNUM</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPNUM">PHPExcel_Calculation_Financial::COUPNUM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPNUM</dd> + <dt><b>COUPPCD</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPPCD">PHPExcel_Calculation_Financial::COUPPCD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPPCD</dd> + <dt><b>COURIER_NEW</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW">PHPExcel_Shared_Font::COURIER_NEW</a></dd> + <dt><b>COURIER_NEW_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW_BOLD">PHPExcel_Shared_Font::COURIER_NEW_BOLD</a></dd> + <dt><b>COURIER_NEW_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW_BOLD_ITALIC">PHPExcel_Shared_Font::COURIER_NEW_BOLD_ITALIC</a></dd> + <dt><b>COURIER_NEW_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW_ITALIC">PHPExcel_Shared_Font::COURIER_NEW_ITALIC</a></dd> + <dt><b>COVAR</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOVAR">PHPExcel_Calculation_Statistical::COVAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COVAR</dd> + <dt><b>create</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodcreate">PclZip::create()</a></dd> + <dt><b>CREATE</b></dt> + <dd>in file ZipArchive.php, class constant <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#constCREATE">PHPExcel_Shared_ZipArchive::CREATE</a></dd> + <dt><b>createReader</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodcreateReader">PHPExcel_IOFactory::createReader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create PHPExcel_Reader_IReader</dd> + <dt><b>createReaderForFile</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodcreateReaderForFile">PHPExcel_IOFactory::createReaderForFile()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create PHPExcel_Reader_IReader for file using automatic PHPExcel_Reader_IReader resolution</dd> + <dt><b>createRule</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodcreateRule">PHPExcel_Worksheet_AutoFilter_Column::createRule()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new AutoFilter Column Rule in the ruleset</dd> + <dt><b>createSheet</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodcreateSheet">PHPExcel::createSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create sheet and add it to this workbook</dd> + <dt><b>createStringTable</b></dt> + <dd>in file StringTable.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodcreateStringTable">PHPExcel_Writer_Excel2007_StringTable::createStringTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create worksheet stringtable</dd> + <dt><b>createText</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodcreateText">PHPExcel_RichText::createText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create text</dd> + <dt><b>createTextRun</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodcreateTextRun">PHPExcel_RichText::createTextRun()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create text run</dd> + <dt><b>createWriter</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodcreateWriter">PHPExcel_IOFactory::createWriter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create PHPExcel_Writer_IWriter</dd> + <dt><b>CRITBINOM</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCRITBINOM">PHPExcel_Calculation_Statistical::CRITBINOM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CRITBINOM</dd> + <dt><b>CUMIPMT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCUMIPMT">PHPExcel_Calculation_Financial::CUMIPMT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CUMIPMT</dd> + <dt><b>CUMPRINC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCUMPRINC">PHPExcel_Calculation_Financial::CUMPRINC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CUMPRINC</dd> + <dt><b>current</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodcurrent">PHPExcel_Worksheet_CellIterator::current()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Current PHPExcel_Cell</dd> + <dt><b>current</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodcurrent">PHPExcel_Worksheet_RowIterator::current()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current row in this worksheet</dd> + <dt><b>current</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#methodcurrent">PHPExcel_WorksheetIterator::current()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Current PHPExcel_Worksheet</dd> + <dt><b>CacheBase.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html">CacheBase.php</a></dd> + <dt><b>CachedObjectStorageFactory.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html">CachedObjectStorageFactory.php</a></dd> + <dt><b>Calculation.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation.php.html">Calculation.php</a></dd> + <dt><b>Cell.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell.php.html">Cell.php</a></dd> + <dt><b>Chart.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart.php.html">Chart.php</a></dd> + <dt><b>Comment.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Comment.php.html">Comment.php</a></dd> + <dt><b>CSV.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html">CSV.php</a></dd> + <dt><b>Chart.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html">Chart.php</a></dd> + <dt><b>CodePage.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html">CodePage.php</a></dd> + <dt><b>CholeskyDecomposition.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html">CholeskyDecomposition.php</a></dd> + <dt><b>ChainedBlockStream.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html">ChainedBlockStream.php</a></dd> + <dt><b>Color.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Color.php.html">Color.php</a></dd> + <dt><b>Conditional.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Conditional.php.html">Conditional.php</a></dd> + <dt><b>Column.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html">Column.php</a></dd> + <dt><b>CellIterator.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html">CellIterator.php</a></dd> + <dt><b>ColumnDimension.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html">ColumnDimension.php</a></dd> + <dt><b>CSV.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html">CSV.php</a></dd> + <dt><b>Chart.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html">Chart.php</a></dd> + <dt><b>Comments.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html">Comments.php</a></dd> + <dt><b>ContentTypes.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html">ContentTypes.php</a></dd> + <dt><b>Core.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html">Core.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>$data</b></dt> + <dd>in file ChainedBlockStream.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$data">PHPExcel_Shared_OLE_ChainedBlockStream::$data</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The binary data of the file.</dd> + <dt><b>$dateTimeObjectType</b></dt> + <dd>in file Date.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#var$dateTimeObjectType">PHPExcel_Shared_Date::$dateTimeObjectType</a></dd> + <dt><b>$debugLog</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$debugLog">PHPExcel_Calculation::$debugLog</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The debug log generated by the calculation engine</dd> + <dt><b>$defaultColumnWidths</b></dt> + <dd>in file Font.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#var$defaultColumnWidths">PHPExcel_Shared_Font::$defaultColumnWidths</a><br>&nbsp;&nbsp;&nbsp;&nbsp;How wide is a default column for a given default font and size? Empirical data found by inspecting real Excel files and reading off the pixel width in Microsoft Office Excel 2007.</dd> + <dt><b>$DirPps</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$DirPps">PHPExcel_Shared_OLE_PPS::$DirPps</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The index of it's first child if this is a Dir or Root PPS</dd> + <dt><b>$documentSummaryInformation</b></dt> + <dd>in file OLERead.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#var$documentSummaryInformation">PHPExcel_Shared_OLERead::$documentSummaryInformation</a></dd> + <dt><b>DATASERIES_TYPE_NUMBER</b></dt> + <dd>in file DataSeriesValues.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#constDATASERIES_TYPE_NUMBER">PHPExcel_Chart_DataSeriesValues::DATASERIES_TYPE_NUMBER</a></dd> + <dt><b>DATASERIES_TYPE_STRING</b></dt> + <dd>in file DataSeriesValues.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#constDATASERIES_TYPE_STRING">PHPExcel_Chart_DataSeriesValues::DATASERIES_TYPE_STRING</a></dd> + <dt><b>dataTypeForValue</b></dt> + <dd>in file DataType.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#methoddataTypeForValue">PHPExcel_Cell_DataType::dataTypeForValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DataType for value</dd> + <dt><b>dataTypeForValue</b></dt> + <dd>in file DefaultValueBinder.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html#methoddataTypeForValue">PHPExcel_Cell_DefaultValueBinder::dataTypeForValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DataType for value</dd> + <dt><b>dataValidationExists</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methoddataValidationExists">PHPExcel_Worksheet::dataValidationExists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Data validation at a specific coordinate exists?</dd> + <dt><b>DATE</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATE">PHPExcel_Calculation_DateTime::DATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DATE</dd> + <dt><b>DATEDIF</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATEDIF">PHPExcel_Calculation_DateTime::DATEDIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DATEDIF</dd> + <dt><b>DATENOW</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATENOW">PHPExcel_Calculation_DateTime::DATENOW()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DATENOW</dd> + <dt><b>DATETIMENOW</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATETIMENOW">PHPExcel_Calculation_DateTime::DATETIMENOW()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DATETIMENOW</dd> + <dt><b>DATEVALUE</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATEVALUE">PHPExcel_Calculation_DateTime::DATEVALUE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DATEVALUE</dd> + <dt><b>DATE_W3C</b></dt> + <dd>in file XMLWriter.php, constant <a href="PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html#defineDATE_W3C">DATE_W3C</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel</dd> + <dt><b>DAVERAGE</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDAVERAGE">PHPExcel_Calculation_Database::DAVERAGE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DAVERAGE</dd> + <dt><b>DAYOFMONTH</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDAYOFMONTH">PHPExcel_Calculation_DateTime::DAYOFMONTH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DAYOFMONTH</dd> + <dt><b>DAYOFWEEK</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDAYOFWEEK">PHPExcel_Calculation_DateTime::DAYOFWEEK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DAYOFWEEK</dd> + <dt><b>DAYS360</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDAYS360">PHPExcel_Calculation_DateTime::DAYS360()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DAYS360</dd> + <dt><b>DB</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDB">PHPExcel_Calculation_Financial::DB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DB</dd> + <dt><b>DCOUNT</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDCOUNT">PHPExcel_Calculation_Database::DCOUNT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DCOUNT</dd> + <dt><b>DCOUNTA</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDCOUNTA">PHPExcel_Calculation_Database::DCOUNTA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DCOUNTA</dd> + <dt><b>DDB</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDDB">PHPExcel_Calculation_Financial::DDB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DDB</dd> + <dt><b>DEBUGMODE_ENABLED</b></dt> + <dd>in file XMLWriter.php, constant <a href="PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html#defineDEBUGMODE_ENABLED">DEBUGMODE_ENABLED</a></dd> + <dt><b>DECTOBIN</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDECTOBIN">PHPExcel_Calculation_Engineering::DECTOBIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DECTOBIN</dd> + <dt><b>DECTOHEX</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDECTOHEX">PHPExcel_Calculation_Engineering::DECTOHEX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DECTOHEX</dd> + <dt><b>DECTOOCT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDECTOOCT">PHPExcel_Calculation_Engineering::DECTOOCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DECTOOCT</dd> + <dt><b>DEFAULT_RANGE</b></dt> + <dd>in file Cell.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell.html#constDEFAULT_RANGE">PHPExcel_Cell::DEFAULT_RANGE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Default range variable constant</dd> + <dt><b>degreesToAngle</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methoddegreesToAngle">PHPExcel_Shared_Drawing::degreesToAngle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert degrees to angle</dd> + <dt><b>delete</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methoddelete">PclZip::delete()</a></dd> + <dt><b>deleteByIndex</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methoddeleteByIndex">PclZip::deleteByIndex()</a></dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_Memcache::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_SQLite::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_Wincache::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_SQLite3::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_ICache::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_APC::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteRule</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methoddeleteRule">PHPExcel_Worksheet_AutoFilter_Column::deleteRule()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a specified AutoFilter Column Rule If the number of rules is reduced to 1, then we reset And/Or logic to Or</dd> + <dt><b>DELTA</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDELTA">PHPExcel_Calculation_Engineering::DELTA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DELTA</dd> + <dt><b>det</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methoddet">PHPExcel_Shared_JAMA_LUDecomposition::det()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Count determinants</dd> + <dt><b>det</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methoddet">PHPExcel_Shared_JAMA_Matrix::det()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;det</dd> + <dt><b>detach</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methoddetach">PHPExcel_Cell::detach()</a></dd> + <dt><b>DEVSQ</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodDEVSQ">PHPExcel_Calculation_Statistical::DEVSQ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DEVSQ</dd> + <dt><b>DG</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDG">PHPExcel_Reader_Excel5_Escher::DG</a></dd> + <dt><b>DGCONTAINER</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDGCONTAINER">PHPExcel_Reader_Excel5_Escher::DGCONTAINER</a></dd> + <dt><b>DGET</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDGET">PHPExcel_Calculation_Database::DGET()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DGET</dd> + <dt><b>DGG</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDGG">PHPExcel_Reader_Excel5_Escher::DGG</a></dd> + <dt><b>DGGCONTAINER</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDGGCONTAINER">PHPExcel_Reader_Excel5_Escher::DGGCONTAINER</a></dd> + <dt><b>diagonal</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methoddiagonal">PHPExcel_Shared_JAMA_Matrix::diagonal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;diagonal</dd> + <dt><b>DIAGONAL_BOTH</b></dt> + <dd>in file Borders.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_BOTH">PHPExcel_Style_Borders::DIAGONAL_BOTH</a></dd> + <dt><b>DIAGONAL_DOWN</b></dt> + <dd>in file Borders.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_DOWN">PHPExcel_Style_Borders::DIAGONAL_DOWN</a></dd> + <dt><b>DIAGONAL_NONE</b></dt> + <dd>in file Borders.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_NONE">PHPExcel_Style_Borders::DIAGONAL_NONE</a></dd> + <dt><b>DIAGONAL_UP</b></dt> + <dd>in file Borders.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_UP">PHPExcel_Style_Borders::DIAGONAL_UP</a></dd> + <dt><b>DIRECTION_BAR</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_BAR">PHPExcel_Chart_DataSeries::DIRECTION_BAR</a></dd> + <dt><b>DIRECTION_COL</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_COL">PHPExcel_Chart_DataSeries::DIRECTION_COL</a></dd> + <dt><b>DIRECTION_COLUMN</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_COLUMN">PHPExcel_Chart_DataSeries::DIRECTION_COLUMN</a></dd> + <dt><b>DIRECTION_HORIZONTAL</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_HORIZONTAL">PHPExcel_Chart_DataSeries::DIRECTION_HORIZONTAL</a></dd> + <dt><b>DIRECTION_VERTICAL</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_VERTICAL">PHPExcel_Chart_DataSeries::DIRECTION_VERTICAL</a></dd> + <dt><b>disableCalculationCache</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methoddisableCalculationCache">PHPExcel_Calculation::disableCalculationCache()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Disable calculation cache</dd> + <dt><b>DISC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDISC">PHPExcel_Calculation_Financial::DISC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DISC</dd> + <dt><b>disconnectCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methoddisconnectCells">PHPExcel_Worksheet::disconnectCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Disconnect all cells from this PHPExcel_Worksheet object,</dd> + <dt><b>disconnectWorksheets</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methoddisconnectWorksheets">PHPExcel::disconnectWorksheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Disconnect all worksheets from this PHPExcel workbook object,</dd> + <dt><b>displayStats</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methoddisplayStats">Benchmark::displayStats()</a></dd> + <dt><b>DIV0</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodDIV0">PHPExcel_Calculation_Functions::DIV0()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DIV0</dd> + <dt><b>DMAX</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDMAX">PHPExcel_Calculation_Database::DMAX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DMAX</dd> + <dt><b>DMIN</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDMIN">PHPExcel_Calculation_Database::DMIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DMIN</dd> + <dt><b>DOLLAR</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodDOLLAR">PHPExcel_Calculation_TextData::DOLLAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DOLLAR</dd> + <dt><b>DOLLARDE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDOLLARDE">PHPExcel_Calculation_Financial::DOLLARDE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DOLLARDE</dd> + <dt><b>DOLLARFR</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDOLLARFR">PHPExcel_Calculation_Financial::DOLLARFR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DOLLARFR</dd> + <dt><b>DPRODUCT</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDPRODUCT">PHPExcel_Calculation_Database::DPRODUCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DPRODUCT</dd> + <dt><b>DSTDEV</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDSTDEV">PHPExcel_Calculation_Database::DSTDEV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DSTDEV</dd> + <dt><b>DSTDEVP</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDSTDEVP">PHPExcel_Calculation_Database::DSTDEVP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DSTDEVP</dd> + <dt><b>DSUM</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDSUM">PHPExcel_Calculation_Database::DSUM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DSUM</dd> + <dt><b>DUMMY</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodDUMMY">PHPExcel_Calculation_Functions::DUMMY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DUMMY</dd> + <dt><b>duplicate</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodduplicate">PclZip::duplicate()</a></dd> + <dt><b>duplicateConditionalStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodduplicateConditionalStyle">PHPExcel_Worksheet::duplicateConditionalStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Duplicate conditional style to a range of cells</dd> + <dt><b>duplicateStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodduplicateStyle">PHPExcel_Worksheet::duplicateStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Duplicate cell style to a range of cells</dd> + <dt><b>duplicateStyleArray</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodduplicateStyleArray">PHPExcel_Worksheet::duplicateStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Duplicate cell style array to a range of cells</dd> + <dt><b>DVAR</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDVAR">PHPExcel_Calculation_Database::DVAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DVAR</dd> + <dt><b>DVARP</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDVARP">PHPExcel_Calculation_Database::DVARP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DVARP</dd> + <dt><b>DiscISAM.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html">DiscISAM.php</a></dd> + <dt><b>Database.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html">Database.php</a></dd> + <dt><b>DateTime.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html">DateTime.php</a></dd> + <dt><b>DataType.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html">DataType.php</a></dd> + <dt><b>DataValidation.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html">DataValidation.php</a></dd> + <dt><b>DefaultValueBinder.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html">DefaultValueBinder.php</a></dd> + <dt><b>DataSeries.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html">DataSeries.php</a></dd> + <dt><b>DataSeriesValues.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html">DataSeriesValues.php</a></dd> + <dt><b>DocumentProperties.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---DocumentProperties.php.html">DocumentProperties.php</a></dd> + <dt><b>DocumentSecurity.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---DocumentSecurity.php.html">DocumentSecurity.php</a></dd> + <dt><b>DefaultReadFilter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html">DefaultReadFilter.php</a></dd> + <dt><b>Date.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---Date.php.html">Date.php</a></dd> + <dt><b>Drawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html">Drawing.php</a></dd> + <dt><b>DgContainer.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html">DgContainer.php</a></dd> + <dt><b>DggContainer.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html">DggContainer.php</a></dd> + <dt><b>Drawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing.php.html">Drawing.php</a></dd> + <dt><b>DocProps.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html">DocProps.php</a></dd> + <dt><b>Drawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html">Drawing.php</a></dd> + <dt><b>DomPDF.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html">DomPDF.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>$echoDebugLog</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$echoDebugLog">PHPExcel_Calculation::$echoDebugLog</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag to determine whether a debug log should be echoed by the calculation engine</dd> + <dt><b>$error_code</b></dt> + <dd>in file pclzip.lib.php, variable <a href="PHPExcel/PclZip.html#var$error_code">PclZip::$error_code</a></dd> + <dt><b>$error_string</b></dt> + <dd>in file pclzip.lib.php, variable <a href="PHPExcel/PclZip.html#var$error_string">PclZip::$error_string</a></dd> + <dt><b>EDATE</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodEDATE">PHPExcel_Calculation_DateTime::EDATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EDATE</dd> + <dt><b>EFFECT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodEFFECT">PHPExcel_Calculation_Financial::EFFECT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EFFECT</dd> + <dt><b>EigenvalueDecomposition</b></dt> + <dd>in file EigenvalueDecomposition.php, class <a href="JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a></dd> + <dt><b>EMUToPixels</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodEMUToPixels">PHPExcel_Shared_Drawing::EMUToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert EMU to pixels</dd> + <dt><b>enableCalculationCache</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodenableCalculationCache">PHPExcel_Calculation::enableCalculationCache()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Enable calculation cache</dd> + <dt><b>EOMONTH</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodEOMONTH">PHPExcel_Calculation_DateTime::EOMONTH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EOMONTH</dd> + <dt><b>EPS</b></dt> + <dd>in file Statistical.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html#defineEPS">EPS</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EPS</dd> + <dt><b>ERF</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodERF">PHPExcel_Calculation_Engineering::ERF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ERF</dd> + <dt><b>ERFC</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodERFC">PHPExcel_Calculation_Engineering::ERFC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ERFC</dd> + <dt><b>errorCode</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methoderrorCode">PclZip::errorCode()</a></dd> + <dt><b>errorHandlerCallback</b></dt> + <dd>in file Exception.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Exception.html#methoderrorHandlerCallback">PHPExcel_Chart_Exception::errorHandlerCallback()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Error handler callback</dd> + <dt><b>errorHandlerCallback</b></dt> + <dd>in file Exception.php, method <a href="PHPExcel/PHPExcel_Exception.html#methoderrorHandlerCallback">PHPExcel_Exception::errorHandlerCallback()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Error handler callback</dd> + <dt><b>errorHandlerCallback</b></dt> + <dd>in file Exception.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Exception.html#methoderrorHandlerCallback">PHPExcel_Calculation_Exception::errorHandlerCallback()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Error handler callback</dd> + <dt><b>errorInfo</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methoderrorInfo">PclZip::errorInfo()</a></dd> + <dt><b>errorName</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methoderrorName">PclZip::errorName()</a></dd> + <dt><b>ERROR_START</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constERROR_START">PHPExcel_Calculation_FormulaParser::ERROR_START</a></dd> + <dt><b>ERROR_TYPE</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodERROR_TYPE">PHPExcel_Calculation_Functions::ERROR_TYPE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ERROR_TYPE</dd> + <dt><b>EULER</b></dt> + <dd>in file Engineering.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html#defineEULER">EULER</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EULER</dd> + <dt><b>EVEN</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodEVEN">PHPExcel_Calculation_MathTrig::EVEN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EVEN</dd> + <dt><b>ExcelToPHP</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodExcelToPHP">PHPExcel_Shared_Date::ExcelToPHP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a date from Excel to PHP</dd> + <dt><b>ExcelToPHPObject</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodExcelToPHPObject">PHPExcel_Shared_Date::ExcelToPHPObject()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a date from Excel to a PHP Date/Time object</dd> + <dt><b>EXPONDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodEXPONDIST">PHPExcel_Calculation_Statistical::EXPONDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EXPONDIST</dd> + <dt><b>EXTENSION_BLOCK_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constEXTENSION_BLOCK_POS">PHPExcel_Shared_OLERead::EXTENSION_BLOCK_POS</a></dd> + <dt><b>extract</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodextract">PclZip::extract()</a></dd> + <dt><b>extractAllCellReferencesInRange</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodextractAllCellReferencesInRange">PHPExcel_Cell::extractAllCellReferencesInRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Extract all cell references in range</dd> + <dt><b>extractByIndex</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodextractByIndex">PclZip::extractByIndex()</a></dd> + <dt><b>extractCellRange</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodextractCellRange">PHPExcel_Calculation::extractCellRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Extract range values</dd> + <dt><b>extractNamedRange</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodextractNamedRange">PHPExcel_Calculation::extractNamedRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Extract range values</dd> + <dt><b>extractSheetTitle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodextractSheetTitle">PHPExcel_Worksheet::extractSheetTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Extract worksheet title from range.</dd> + <dt><b>Engineering.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html">Engineering.php</a></dd> + <dt><b>Exception.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html">Exception.php</a></dd> + <dt><b>ExceptionHandler.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html">ExceptionHandler.php</a></dd> + <dt><b>Exception.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html">Exception.php</a></dd> + <dt><b>Exception.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Exception.php.html">Exception.php</a></dd> + <dt><b>Escher.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html">Escher.php</a></dd> + <dt><b>Excel5.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html">Excel5.php</a></dd> + <dt><b>Excel2003XML.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html">Excel2003XML.php</a></dd> + <dt><b>Excel2007.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html">Excel2007.php</a></dd> + <dt><b>Escher.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html">Escher.php</a></dd> + <dt><b>Excel5.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html">Excel5.php</a></dd> + <dt><b>EigenvalueDecomposition.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html">EigenvalueDecomposition.php</a></dd> + <dt><b>Error.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html">Error.php</a></dd> + <dt><b>exponentialBestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html">exponentialBestFitClass.php</a></dd> + <dt><b>Escher.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html">Escher.php</a></dd> + <dt><b>Excel5.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html">Excel5.php</a></dd> + <dt><b>Excel2007.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html">Excel2007.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>$formulaError</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$formulaError">PHPExcel_Calculation::$formulaError</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Error message for any error that was raised/thrown by the calculation engine</dd> + <dt><b>FACT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodFACT">PHPExcel_Calculation_MathTrig::FACT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FACT</dd> + <dt><b>FACTDOUBLE</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodFACTDOUBLE">PHPExcel_Calculation_MathTrig::FACTDOUBLE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FACTDOUBLE</dd> + <dt><b>failureCallback</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodfailureCallback">PHPExcel_CachedObjectStorage_Memcache::failureCallback()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Memcache error handler</dd> + <dt><b>FALSE</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodFALSE">PHPExcel_Calculation_Logical::FALSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FALSE</dd> + <dt><b>file_exists</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_File.html#methodfile_exists">PHPExcel_Shared_File::file_exists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Verify if a file exists</dd> + <dt><b>FILL_GRADIENT_LINEAR</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_GRADIENT_LINEAR">PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR</a></dd> + <dt><b>FILL_GRADIENT_PATH</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_GRADIENT_PATH">PHPExcel_Style_Fill::FILL_GRADIENT_PATH</a></dd> + <dt><b>FILL_NONE</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_NONE">PHPExcel_Style_Fill::FILL_NONE</a></dd> + <dt><b>FILL_PATTERN_DARKDOWN</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKDOWN">PHPExcel_Style_Fill::FILL_PATTERN_DARKDOWN</a></dd> + <dt><b>FILL_PATTERN_DARKGRAY</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKGRAY">PHPExcel_Style_Fill::FILL_PATTERN_DARKGRAY</a></dd> + <dt><b>FILL_PATTERN_DARKGRID</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKGRID">PHPExcel_Style_Fill::FILL_PATTERN_DARKGRID</a></dd> + <dt><b>FILL_PATTERN_DARKHORIZONTAL</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKHORIZONTAL">PHPExcel_Style_Fill::FILL_PATTERN_DARKHORIZONTAL</a></dd> + <dt><b>FILL_PATTERN_DARKTRELLIS</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKTRELLIS">PHPExcel_Style_Fill::FILL_PATTERN_DARKTRELLIS</a></dd> + <dt><b>FILL_PATTERN_DARKUP</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKUP">PHPExcel_Style_Fill::FILL_PATTERN_DARKUP</a></dd> + <dt><b>FILL_PATTERN_DARKVERTICAL</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKVERTICAL">PHPExcel_Style_Fill::FILL_PATTERN_DARKVERTICAL</a></dd> + <dt><b>FILL_PATTERN_GRAY0625</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_GRAY0625">PHPExcel_Style_Fill::FILL_PATTERN_GRAY0625</a></dd> + <dt><b>FILL_PATTERN_GRAY125</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_GRAY125">PHPExcel_Style_Fill::FILL_PATTERN_GRAY125</a></dd> + <dt><b>FILL_PATTERN_LIGHTDOWN</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTDOWN">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTDOWN</a></dd> + <dt><b>FILL_PATTERN_LIGHTGRAY</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTGRAY">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRAY</a></dd> + <dt><b>FILL_PATTERN_LIGHTGRID</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTGRID">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRID</a></dd> + <dt><b>FILL_PATTERN_LIGHTHORIZONTAL</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTHORIZONTAL">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTHORIZONTAL</a></dd> + <dt><b>FILL_PATTERN_LIGHTTRELLIS</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTTRELLIS">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTTRELLIS</a></dd> + <dt><b>FILL_PATTERN_LIGHTUP</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTUP">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTUP</a></dd> + <dt><b>FILL_PATTERN_LIGHTVERTICAL</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTVERTICAL">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTVERTICAL</a></dd> + <dt><b>FILL_PATTERN_MEDIUMGRAY</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_MEDIUMGRAY">PHPExcel_Style_Fill::FILL_PATTERN_MEDIUMGRAY</a></dd> + <dt><b>FILL_SOLID</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_SOLID">PHPExcel_Style_Fill::FILL_SOLID</a></dd> + <dt><b>FINANCIAL_MAX_ITERATIONS</b></dt> + <dd>in file Financial.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html#defineFINANCIAL_MAX_ITERATIONS">FINANCIAL_MAX_ITERATIONS</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FINANCIAL_MAX_ITERATIONS</dd> + <dt><b>FINANCIAL_PRECISION</b></dt> + <dd>in file Financial.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html#defineFINANCIAL_PRECISION">FINANCIAL_PRECISION</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FINANCIAL_PRECISION</dd> + <dt><b>findPolynomialFactors</b></dt> + <dd>in file LagrangeInterpolation.php, method <a href="PHPExcel/LagrangeInterpolation.html#methodfindPolynomialFactors">LagrangeInterpolation::findPolynomialFactors()</a></dd> + <dt><b>FISHER</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodFISHER">PHPExcel_Calculation_Statistical::FISHER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FISHER</dd> + <dt><b>FISHERINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodFISHERINV">PHPExcel_Calculation_Statistical::FISHERINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FISHERINV</dd> + <dt><b>FIXEDFORMAT</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodFIXEDFORMAT">PHPExcel_Calculation_TextData::FIXEDFORMAT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FIXEDFORMAT</dd> + <dt><b>flattenArray</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodflattenArray">PHPExcel_Calculation_Functions::flattenArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a multi-dimensional array to a simple 1-dimensional array</dd> + <dt><b>flattenArrayIndexed</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodflattenArrayIndexed">PHPExcel_Calculation_Functions::flattenArrayIndexed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a multi-dimensional array to a simple 1-dimensional array, but retain an element of indexing</dd> + <dt><b>flattenSingleValue</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodflattenSingleValue">PHPExcel_Calculation_Functions::flattenSingleValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert an array to a single scalar value by extracting the first element</dd> + <dt><b>flipStringTable</b></dt> + <dd>in file StringTable.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodflipStringTable">PHPExcel_Writer_Excel2007_StringTable::flipStringTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flip string table (for index searching)</dd> + <dt><b>FLOOR</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodFLOOR">PHPExcel_Calculation_MathTrig::FLOOR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FLOOR</dd> + <dt><b>flushInstance</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodflushInstance">PHPExcel_Calculation::flushInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flush the calculation cache for any existing instance of this class but only if a PHPExcel_Calculation instance exists</dd> + <dt><b>fontSizeToPixels</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodfontSizeToPixels">PHPExcel_Shared_Font::fontSizeToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate an (approximate) pixel size, based on a font points size</dd> + <dt><b>FORECAST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodFORECAST">PHPExcel_Calculation_Statistical::FORECAST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FORECAST</dd> + <dt><b>formatColor</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodformatColor">PHPExcel_Writer_HTML::formatColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add color to formatted string as inline style</dd> + <dt><b>FormatNumber</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodFormatNumber">PHPExcel_Shared_String::FormatNumber()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Formats a numeric value as a string for output in various output writers forcing point as decimal separator in case locale is other than English.</dd> + <dt><b>FormattedPHPToExcel</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodFormattedPHPToExcel">PHPExcel_Shared_Date::FormattedPHPToExcel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FormattedPHPToExcel</dd> + <dt><b>FORMAT_CURRENCY_EUR_SIMPLE</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_CURRENCY_EUR_SIMPLE">PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE</a></dd> + <dt><b>FORMAT_CURRENCY_USD</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_CURRENCY_USD">PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD</a></dd> + <dt><b>FORMAT_CURRENCY_USD_SIMPLE</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_CURRENCY_USD_SIMPLE">PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE</a></dd> + <dt><b>FORMAT_DATE_DATETIME</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DATETIME">PHPExcel_Style_NumberFormat::FORMAT_DATE_DATETIME</a></dd> + <dt><b>FORMAT_DATE_DDMMYYYY</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DDMMYYYY">PHPExcel_Style_NumberFormat::FORMAT_DATE_DDMMYYYY</a></dd> + <dt><b>FORMAT_DATE_DMMINUS</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DMMINUS">PHPExcel_Style_NumberFormat::FORMAT_DATE_DMMINUS</a></dd> + <dt><b>FORMAT_DATE_DMYMINUS</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DMYMINUS">PHPExcel_Style_NumberFormat::FORMAT_DATE_DMYMINUS</a></dd> + <dt><b>FORMAT_DATE_DMYSLASH</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DMYSLASH">PHPExcel_Style_NumberFormat::FORMAT_DATE_DMYSLASH</a></dd> + <dt><b>FORMAT_DATE_MYMINUS</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_MYMINUS">PHPExcel_Style_NumberFormat::FORMAT_DATE_MYMINUS</a></dd> + <dt><b>FORMAT_DATE_TIME1</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME1">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME1</a></dd> + <dt><b>FORMAT_DATE_TIME2</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME2">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME2</a></dd> + <dt><b>FORMAT_DATE_TIME3</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME3">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME3</a></dd> + <dt><b>FORMAT_DATE_TIME4</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME4">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4</a></dd> + <dt><b>FORMAT_DATE_TIME5</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME5">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME5</a></dd> + <dt><b>FORMAT_DATE_TIME6</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME6">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME6</a></dd> + <dt><b>FORMAT_DATE_TIME7</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME7">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME7</a></dd> + <dt><b>FORMAT_DATE_TIME8</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME8">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME8</a></dd> + <dt><b>FORMAT_DATE_XLSX14</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX14">PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX14</a></dd> + <dt><b>FORMAT_DATE_XLSX15</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX15">PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15</a></dd> + <dt><b>FORMAT_DATE_XLSX16</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX16">PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX16</a></dd> + <dt><b>FORMAT_DATE_XLSX17</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX17">PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX17</a></dd> + <dt><b>FORMAT_DATE_XLSX22</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX22">PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX22</a></dd> + <dt><b>FORMAT_DATE_YYYYMMDD</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_YYYYMMDD">PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD</a></dd> + <dt><b>FORMAT_DATE_YYYYMMDD2</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_YYYYMMDD2">PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2</a></dd> + <dt><b>FORMAT_DATE_YYYYMMDDSLASH</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_YYYYMMDDSLASH">PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH</a></dd> + <dt><b>FORMAT_GENERAL</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_GENERAL">PHPExcel_Style_NumberFormat::FORMAT_GENERAL</a></dd> + <dt><b>FORMAT_NUMBER</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER">PHPExcel_Style_NumberFormat::FORMAT_NUMBER</a></dd> + <dt><b>FORMAT_NUMBER_00</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER_00">PHPExcel_Style_NumberFormat::FORMAT_NUMBER_00</a></dd> + <dt><b>FORMAT_NUMBER_COMMA_SEPARATED1</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER_COMMA_SEPARATED1">PHPExcel_Style_NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1</a></dd> + <dt><b>FORMAT_NUMBER_COMMA_SEPARATED2</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER_COMMA_SEPARATED2">PHPExcel_Style_NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED2</a></dd> + <dt><b>FORMAT_PERCENTAGE</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_PERCENTAGE">PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE</a></dd> + <dt><b>FORMAT_PERCENTAGE_00</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_PERCENTAGE_00">PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE_00</a></dd> + <dt><b>FORMAT_TEXT</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_TEXT">PHPExcel_Style_NumberFormat::FORMAT_TEXT</a></dd> + <dt><b>freezePane</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodfreezePane">PHPExcel_Worksheet::freezePane()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Freeze Pane</dd> + <dt><b>freezePaneByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodfreezePaneByColumnAndRow">PHPExcel_Worksheet::freezePaneByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Freeze Pane by using numeric cell coordinates</dd> + <dt><b>frequency</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodfrequency">Base::frequency()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the value frequency table of a data set.</dd> + <dt><b>fromArray</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodfromArray">PHPExcel_Worksheet::fromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fill worksheet from values in array</dd> + <dt><b>FV</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodFV">PHPExcel_Calculation_Financial::FV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FV</dd> + <dt><b>FVSCHEDULE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodFVSCHEDULE">PHPExcel_Calculation_Financial::FVSCHEDULE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FVSCHEDULE</dd> + <dt><b>Financial.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html">Financial.php</a></dd> + <dt><b>FormulaParser.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html">FormulaParser.php</a></dd> + <dt><b>FormulaToken.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html">FormulaToken.php</a></dd> + <dt><b>Function.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html">Function.php</a></dd> + <dt><b>Functions.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html">Functions.php</a></dd> + <dt><b>File.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---File.php.html">File.php</a></dd> + <dt><b>Font.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---Font.php.html">Font.php</a></dd> + <dt><b>File.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html">File.php</a></dd> + <dt><b>Fill.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Fill.php.html">Fill.php</a></dd> + <dt><b>Font.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Font.php.html">Font.php</a></dd> + <dt><b>Font.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html">Font.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>GAMMADIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGAMMADIST">PHPExcel_Calculation_Statistical::GAMMADIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GAMMADIST</dd> + <dt><b>GAMMAINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGAMMAINV">PHPExcel_Calculation_Statistical::GAMMAINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GAMMAINV</dd> + <dt><b>GAMMALN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGAMMALN">PHPExcel_Calculation_Statistical::GAMMALN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GAMMALN</dd> + <dt><b>garbageCollect</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgarbageCollect">PHPExcel_Worksheet::garbageCollect()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Run PHPExcel garabage collector.</dd> + <dt><b>garbageCollect</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgarbageCollect">PHPExcel::garbageCollect()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Eliminate all unneeded cellXf and afterwards update the xfIndex for all cells</dd> + <dt><b>GCD</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodGCD">PHPExcel_Calculation_MathTrig::GCD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GCD</dd> + <dt><b>generateHTMLFooter</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLFooter">PHPExcel_Writer_HTML::generateHTMLFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate HTML footer</dd> + <dt><b>generateHTMLHeader</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLHeader">PHPExcel_Writer_HTML::generateHTMLHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate HTML header</dd> + <dt><b>generateNavigation</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateNavigation">PHPExcel_Writer_HTML::generateNavigation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate sheet tabs</dd> + <dt><b>generateSheetData</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateSheetData">PHPExcel_Writer_HTML::generateSheetData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate sheet data</dd> + <dt><b>generateStyles</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateStyles">PHPExcel_Writer_HTML::generateStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate CSS styles</dd> + <dt><b>GEOMEAN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGEOMEAN">PHPExcel_Calculation_Statistical::GEOMEAN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GEOMEAN</dd> + <dt><b>geometricMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodgeometricMean">Base::geometricMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the geometrical mean of the data points in the set Handles cummulative data sets correctly</dd> + <dt><b>GEORGIA</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA">PHPExcel_Shared_Font::GEORGIA</a></dd> + <dt><b>GEORGIA_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA_BOLD">PHPExcel_Shared_Font::GEORGIA_BOLD</a></dd> + <dt><b>GEORGIA_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA_BOLD_ITALIC">PHPExcel_Shared_Font::GEORGIA_BOLD_ITALIC</a></dd> + <dt><b>GEORGIA_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA_ITALIC">PHPExcel_Shared_Font::GEORGIA_ITALIC</a></dd> + <dt><b>GESTEP</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodGESTEP">PHPExcel_Calculation_Engineering::GESTEP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GESTEP</dd> + <dt><b>get</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodget">PHPExcel_Shared_JAMA_Matrix::get()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;get</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetActiveCell">PHPExcel_Style_Borders::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetActiveCell">PHPExcel_Style_Color::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetActiveCell">PHPExcel_Style_NumberFormat::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetActiveCell">PHPExcel_Style_Font::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetActiveCell">PHPExcel_Style_Protection::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetActiveCell">PHPExcel_Style_Fill::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetActiveCell">PHPExcel_Worksheet::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get active cell</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetActiveCell">PHPExcel_Style_Border::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetActiveCell">PHPExcel_Style::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetActiveCell">PHPExcel_Style_Alignment::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetActiveSheet">PHPExcel_Style_Alignment::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetActiveSheet">PHPExcel_Style_Color::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetActiveSheet">PHPExcel_Style_Protection::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetActiveSheet">PHPExcel_Style::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetActiveSheet">PHPExcel::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get active sheet</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetActiveSheet">PHPExcel_Style_Fill::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetActiveSheet">PHPExcel_Style_Border::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetActiveSheet">PHPExcel_Style_Borders::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetActiveSheet">PHPExcel_Style_NumberFormat::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetActiveSheet">PHPExcel_Style_Font::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheetIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetActiveSheetIndex">PHPExcel::getActiveSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get active sheet index</dd> + <dt><b>getAlignment</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetAlignment">PHPExcel_Comment::getAlignment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Alignment</dd> + <dt><b>getAlignment</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetAlignment">PHPExcel_Worksheet_Drawing_Shadow::getAlignment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Shadow alignment</dd> + <dt><b>getAlignment</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetAlignment">PHPExcel_Style::getAlignment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Alignment</dd> + <dt><b>getAlignWithMargins</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetAlignWithMargins">PHPExcel_Worksheet_HeaderFooter::getAlignWithMargins()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AlignWithMargins</dd> + <dt><b>getAllBorders</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetAllBorders">PHPExcel_Style_Borders::getAllBorders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AllBorders (pseudo-border). Only applies to supervisor.</dd> + <dt><b>getAllCacheStorageMethods</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetAllCacheStorageMethods">PHPExcel_CachedObjectStorageFactory::getAllCacheStorageMethods()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the list of all possible cache storage methods</dd> + <dt><b>getAllowBlank</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetAllowBlank">PHPExcel_Cell_DataValidation::getAllowBlank()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Allow Blank</dd> + <dt><b>getAllSheets</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetAllSheets">PHPExcel::getAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get all sheets</dd> + <dt><b>getAllSpContainers</b></dt> + <dd>in file SpgrContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodgetAllSpContainers">PHPExcel_Shared_Escher_DgContainer_SpgrContainer::getAllSpContainers()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Recursively get all spContainers within this spgrContainer</dd> + <dt><b>getAlpha</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetAlpha">PHPExcel_Worksheet_Drawing_Shadow::getAlpha()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Alpha</dd> + <dt><b>getARGB</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetARGB">PHPExcel_Style_Color::getARGB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ARGB</dd> + <dt><b>getArray</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetArray">PHPExcel_Shared_JAMA_Matrix::getArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getArray</dd> + <dt><b>getArrayReturnType</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetArrayReturnType">PHPExcel_Calculation::getArrayReturnType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Array Return Type (Array or Value of first element in the array)</dd> + <dt><b>getAttribute</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetAttribute">PHPExcel_Worksheet_AutoFilter_Column::getAttribute()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get specific AutoFilter Column Attribute</dd> + <dt><b>getAttributes</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetAttributes">PHPExcel_Worksheet_AutoFilter_Column::getAttributes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Column Attributes</dd> + <dt><b>getAuthor</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetAuthor">PHPExcel_Comment::getAuthor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Author</dd> + <dt><b>getAutoFilter</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetAutoFilter">PHPExcel_Worksheet_Protection::getAutoFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter</dd> + <dt><b>getAutoFilter</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetAutoFilter">PHPExcel_Worksheet::getAutoFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Autofilter</dd> + <dt><b>getAutoSize</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetAutoSize">PHPExcel_Worksheet_ColumnDimension::getAutoSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Auto Size</dd> + <dt><b>getAutoSizeMethod</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetAutoSizeMethod">PHPExcel_Shared_Font::getAutoSizeMethod()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get autoSize method</dd> + <dt><b>getBestFitType</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetBestFitType">PHPExcel_Best_Fit::getBestFitType()</a></dd> + <dt><b>getBlip</b></dt> + <dd>in file BSE.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodgetBlip">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::getBlip()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the BLIP</dd> + <dt><b>getBlipType</b></dt> + <dd>in file BSE.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodgetBlipType">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::getBlipType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the BLIP type</dd> + <dt><b>getBlue</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetBlue">PHPExcel_Style_Color::getBlue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the blue colour component of an RGB value</dd> + <dt><b>getBlurRadius</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetBlurRadius">PHPExcel_Worksheet_Drawing_Shadow::getBlurRadius()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Blur radius</dd> + <dt><b>getBold</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetBold">PHPExcel_Style_Font::getBold()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Bold</dd> + <dt><b>getBorders</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetBorders">PHPExcel_Style::getBorders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Borders</dd> + <dt><b>getBordersHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetBordersHashTable">PHPExcel_Writer_Excel2007::getBordersHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Style_Borders HashTable</dd> + <dt><b>getBorderStyle</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetBorderStyle">PHPExcel_Style_Border::getBorderStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Border style</dd> + <dt><b>getBottom</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetBottom">PHPExcel_Worksheet_PageMargins::getBottom()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Bottom</dd> + <dt><b>getBottom</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetBottom">PHPExcel_Style_Borders::getBottom()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Bottom</dd> + <dt><b>getBottomRightCell</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightCell">PHPExcel_Chart::getBottomRightCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the cell address where the bottom right of the chart is fixed</dd> + <dt><b>getBottomRightOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightOffset">PHPExcel_Chart::getBottomRightOffset()</a></dd> + <dt><b>getBottomRightPosition</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightPosition">PHPExcel_Chart::getBottomRightPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the bottom right position of the chart</dd> + <dt><b>getBottomRightXOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightXOffset">PHPExcel_Chart::getBottomRightXOffset()</a></dd> + <dt><b>getBottomRightYOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightYOffset">PHPExcel_Chart::getBottomRightYOffset()</a></dd> + <dt><b>getBreaks</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetBreaks">PHPExcel_Worksheet::getBreaks()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get breaks</dd> + <dt><b>getBSECollection</b></dt> + <dd>in file BstoreContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html#methodgetBSECollection">PHPExcel_Shared_Escher_DggContainer_BstoreContainer::getBSECollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the collection of BLIP Store Entries</dd> + <dt><b>getBstoreContainer</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetBstoreContainer">PHPExcel_Shared_Escher_DggContainer::getBstoreContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get BLIP Store Container</dd> + <dt><b>getBuiltInFormatCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetBuiltInFormatCode">PHPExcel_Style_NumberFormat::getBuiltInFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Built-In Format Code</dd> + <dt><b>getByHashCode</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodgetByHashCode">PHPExcel_HashTable::getByHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get by hashcode</dd> + <dt><b>getByIndex</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodgetByIndex">PHPExcel_HashTable::getByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get by index</dd> + <dt><b>getByteOrder</b></dt> + <dd>in file BIFFwriter.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodgetByteOrder">PHPExcel_Writer_Excel5_BIFFwriter::getByteOrder()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Determine the byte order and store it as class data to avoid recalculating it for each call to new().</dd> + <dt><b>getCacheData</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodgetCacheData">PHPExcel_CachedObjectStorage_SQLite3::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodgetCacheData">PHPExcel_CachedObjectStorage_APC::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fetch a cell from cache identified by coordinate address</dd> + <dt><b>getCacheData</b></dt> + <dd>in file MemorySerialized.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html#methodgetCacheData">PHPExcel_CachedObjectStorage_MemorySerialized::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file Igbinary.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodgetCacheData">PHPExcel_CachedObjectStorage_Igbinary::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file MemoryGZip.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html#methodgetCacheData">PHPExcel_CachedObjectStorage_MemoryGZip::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file Memory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodgetCacheData">PHPExcel_CachedObjectStorage_Memory::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_Memcache::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodgetCacheData">PHPExcel_CachedObjectStorage_PHPTemp::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_Wincache::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodgetCacheData">PHPExcel_CachedObjectStorage_DiscISAM::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodgetCacheData">PHPExcel_CachedObjectStorage_SQLite::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheStorageClass</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetCacheStorageClass">PHPExcel_Settings::getCacheStorageClass()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the name of the class that is currently being used for cell cacheing</dd> + <dt><b>getCacheStorageClass</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetCacheStorageClass">PHPExcel_CachedObjectStorageFactory::getCacheStorageClass()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current cache storage class</dd> + <dt><b>getCacheStorageMethod</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetCacheStorageMethod">PHPExcel_CachedObjectStorageFactory::getCacheStorageMethod()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current cache storage method</dd> + <dt><b>getCacheStorageMethod</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetCacheStorageMethod">PHPExcel_Settings::getCacheStorageMethod()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the name of the method that is currently configured for cell cacheing</dd> + <dt><b>getCacheStorageMethods</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetCacheStorageMethods">PHPExcel_CachedObjectStorageFactory::getCacheStorageMethods()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the list of all available cache storage methods</dd> + <dt><b>getCalculatedValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetCalculatedValue">PHPExcel_Cell::getCalculatedValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get calculated cell value</dd> + <dt><b>getCalculationCacheEnabled</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetCalculationCacheEnabled">PHPExcel_Calculation::getCalculationCacheEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is calculation caching enabled?</dd> + <dt><b>getCalculationCacheExpirationTime</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetCalculationCacheExpirationTime">PHPExcel_Calculation::getCalculationCacheExpirationTime()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get calculation cache expiration time</dd> + <dt><b>getCaption</b></dt> + <dd>in file Title.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html#methodgetCaption">PHPExcel_Chart_Title::getCaption()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get caption</dd> + <dt><b>getCategory</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodgetCategory">PHPExcel_Calculation_Function::getCategory()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Category (represented by CATEGORY_*)</dd> + <dt><b>getCategory</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCategory">PHPExcel_DocumentProperties::getCategory()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Category</dd> + <dt><b>getCDgSaved</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetCDgSaved">PHPExcel_Shared_Escher_DggContainer::getCDgSaved()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get total number of drawings saved</dd> + <dt><b>getCell</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCell">PHPExcel_Worksheet::getCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCellByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCellByColumnAndRow">PHPExcel_Worksheet::getCellByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate by using numeric cell coordinates</dd> + <dt><b>getCellCacheController</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCellCacheController">PHPExcel_Worksheet::getCellCacheController()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the cache controller for the cell collection</dd> + <dt><b>getCellCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCellCollection">PHPExcel_Worksheet::getCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of cells</dd> + <dt><b>getCellIterator</b></dt> + <dd>in file Row.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#methodgetCellIterator">PHPExcel_Worksheet_Row::getCellIterator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell iterator</dd> + <dt><b>getCellList</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodgetCellList">PHPExcel_CachedObjectStorage_SQLite::getCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all cell addresses currently held in cache</dd> + <dt><b>getCellList</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all cell addresses currently held in cache</dd> + <dt><b>getCellList</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCellList">PHPExcel_CachedObjectStorage_ICache::getCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all cell addresses currently held in cache</dd> + <dt><b>getCellList</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodgetCellList">PHPExcel_CachedObjectStorage_SQLite3::getCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all cell addresses currently held in cache</dd> + <dt><b>getCellStyleXfByHashCode</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellStyleXfByHashCode">PHPExcel::getCellStyleXfByHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cellStyleXf by hash code</dd> + <dt><b>getCellStyleXfByIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellStyleXfByIndex">PHPExcel::getCellStyleXfByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cellStyleXf by index</dd> + <dt><b>getCellStyleXfCollection</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellStyleXfCollection">PHPExcel::getCellStyleXfCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the workbook collection of cellStyleXfs</dd> + <dt><b>getCellXfByHashCode</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellXfByHashCode">PHPExcel::getCellXfByHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cellXf by hash code</dd> + <dt><b>getCellXfByIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellXfByIndex">PHPExcel::getCellXfByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cellXf by index</dd> + <dt><b>getCellXfCollection</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellXfCollection">PHPExcel::getCellXfCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the workbook collection of cellXfs</dd> + <dt><b>getCellXfSupervisor</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellXfSupervisor">PHPExcel::getCellXfSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the cellXf supervisor</dd> + <dt><b>getCharsetFromFontName</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetCharsetFromFontName">PHPExcel_Shared_Font::getCharsetFromFontName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the associated charset for the font name.</dd> + <dt><b>getChartByIndex</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartByIndex">PHPExcel_Worksheet::getChartByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a chart by its index position</dd> + <dt><b>getChartByName</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartByName">PHPExcel_Worksheet::getChartByName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a chart by name</dd> + <dt><b>getChartCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartCollection">PHPExcel_Worksheet::getChartCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of charts</dd> + <dt><b>getChartCount</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartCount">PHPExcel_Worksheet::getChartCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the count of charts on this worksheet</dd> + <dt><b>getChartNames</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartNames">PHPExcel_Worksheet::getChartNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return an array of the names of charts on this worksheet</dd> + <dt><b>getChartRendererName</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetChartRendererName">PHPExcel_Settings::getChartRendererName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Chart Rendering Library that PHPExcel is currently configured to use (e.g. jpgraph)</dd> + <dt><b>getChartRendererPath</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetChartRendererPath">PHPExcel_Settings::getChartRendererPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the directory path to the Chart Rendering Library that PHPExcel is currently configured to use</dd> + <dt><b>getChildren</b></dt> + <dd>in file SpgrContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodgetChildren">PHPExcel_Shared_Escher_DgContainer_SpgrContainer::getChildren()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of Shape Containers</dd> + <dt><b>getCoefficients</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetCoefficients">PHPExcel_Polynomial_Best_Fit::getCoefficients()</a></dd> + <dt><b>getCollapsed</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetCollapsed">PHPExcel_Worksheet_RowDimension::getCollapsed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Collapsed</dd> + <dt><b>getCollapsed</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetCollapsed">PHPExcel_Worksheet_ColumnDimension::getCollapsed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Collapsed</dd> + <dt><b>getColor</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetColor">PHPExcel_Style_Border::getColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Border Color</dd> + <dt><b>getColor</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetColor">PHPExcel_Style_Font::getColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Color</dd> + <dt><b>getColor</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetColor">PHPExcel_Worksheet_Drawing_Shadow::getColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Color</dd> + <dt><b>getColourByIndex</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#methodgetColourByIndex">PHPExcel_Reader_Excel2007_Theme::getColourByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get colour Map Value by Position</dd> + <dt><b>getColourSchemeName</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#methodgetColourSchemeName">PHPExcel_Reader_Excel2007_Theme::getColourSchemeName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get colour Scheme Name</dd> + <dt><b>getColumn</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetColumn">PHPExcel_Cell::getColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell coordinate column</dd> + <dt><b>getColumn</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumn">PHPExcel_Worksheet_AutoFilter::getColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a specified AutoFilter Column</dd> + <dt><b>getColumnByOffset</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumnByOffset">PHPExcel_Worksheet_AutoFilter::getColumnByOffset()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a specified AutoFilter Column by it's offset</dd> + <dt><b>getColumnDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetColumnDimension">PHPExcel_Worksheet::getColumnDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get column dimension at a specific column</dd> + <dt><b>getColumnDimension</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetColumnDimension">PHPExcel_Shared_JAMA_Matrix::getColumnDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getColumnDimension</dd> + <dt><b>getColumnDimensionByColumn</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetColumnDimensionByColumn">PHPExcel_Worksheet::getColumnDimensionByColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get column dimension at a specific column by using numeric cell coordinates</dd> + <dt><b>getColumnDimensions</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetColumnDimensions">PHPExcel_Worksheet::getColumnDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of column dimensions</dd> + <dt><b>getColumnIndex</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetColumnIndex">PHPExcel_Worksheet_ColumnDimension::getColumnIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ColumnIndex</dd> + <dt><b>getColumnIndex</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetColumnIndex">PHPExcel_Worksheet_AutoFilter_Column::getColumnIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Column Index</dd> + <dt><b>getColumnOffset</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumnOffset">PHPExcel_Worksheet_AutoFilter::getColumnOffset()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a specified AutoFilter Column Offset within the defined AutoFilter range</dd> + <dt><b>getColumns</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumns">PHPExcel_Worksheet_AutoFilter::getColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get all AutoFilter Columns</dd> + <dt><b>getColumnsToRepeatAtLeft</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetColumnsToRepeatAtLeft">PHPExcel_Worksheet_PageSetup::getColumnsToRepeatAtLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Columns to repeat at left</dd> + <dt><b>getComment</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetComment">PHPExcel_Worksheet::getComment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get comment for cell</dd> + <dt><b>getCommentByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCommentByColumnAndRow">PHPExcel_Worksheet::getCommentByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get comment for cell by using numeric cell coordinates</dd> + <dt><b>getComments</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetComments">PHPExcel_Worksheet::getComments()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get comments</dd> + <dt><b>getCompany</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCompany">PHPExcel_DocumentProperties::getCompany()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Company</dd> + <dt><b>getCompatibilityMode</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodgetCompatibilityMode">PHPExcel_Calculation_Functions::getCompatibilityMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current Compatibility Mode</dd> + <dt><b>getCondition</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetCondition">PHPExcel_Style_Conditional::getCondition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Condition</dd> + <dt><b>getConditionalStyles</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetConditionalStyles">PHPExcel_Style::getConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Conditional Styles. Only used on supervisor.</dd> + <dt><b>getConditionalStyles</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetConditionalStyles">PHPExcel_Worksheet::getConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get conditional styles for a cell</dd> + <dt><b>getConditionalStylesCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetConditionalStylesCollection">PHPExcel_Worksheet::getConditionalStylesCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of conditional styles</dd> + <dt><b>getConditions</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetConditions">PHPExcel_Style_Conditional::getConditions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Conditions</dd> + <dt><b>getConditionType</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetConditionType">PHPExcel_Style_Conditional::getConditionType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Condition type</dd> + <dt><b>getContiguous</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetContiguous">PHPExcel_Reader_CSV::getContiguous()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Contiguous</dd> + <dt><b>getConversionGroups</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionGroups">PHPExcel_Calculation_Engineering::getConversionGroups()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getConversionGroups Returns a list of the different conversion groups for UOM conversions</dd> + <dt><b>getConversionGroupUnitDetails</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionGroupUnitDetails">PHPExcel_Calculation_Engineering::getConversionGroupUnitDetails()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getConversionGroupUnitDetails</dd> + <dt><b>getConversionGroupUnits</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionGroupUnits">PHPExcel_Calculation_Engineering::getConversionGroupUnits()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getConversionGroupUnits Returns an array of units of measure, for a specified conversion group, or for all groups</dd> + <dt><b>getConversionMultipliers</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionMultipliers">PHPExcel_Calculation_Engineering::getConversionMultipliers()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getConversionMultipliers Returns an array of the Multiplier prefixes that can be used with Units of Measure in CONVERTUOM()</dd> + <dt><b>getCoordinate</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetCoordinate">PHPExcel_Cell::getCoordinate()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell coordinate</dd> + <dt><b>getCoordinates</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetCoordinates">PHPExcel_Worksheet_BaseDrawing::getCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Coordinates</dd> + <dt><b>getCorrelation</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCorrelation">PHPExcel_Best_Fit::getCorrelation()</a></dd> + <dt><b>getCovariance</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCovariance">PHPExcel_Best_Fit::getCovariance()</a></dd> + <dt><b>getCreated</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCreated">PHPExcel_DocumentProperties::getCreated()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Created</dd> + <dt><b>getCreator</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCreator">PHPExcel_DocumentProperties::getCreator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Creator</dd> + <dt><b>getCSpSaved</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetCSpSaved">PHPExcel_Shared_Escher_DggContainer::getCSpSaved()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get total number of shapes saved (including group shapes)</dd> + <dt><b>getCurrencyCode</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetCurrencyCode">PHPExcel_Shared_String::getCurrencyCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currency code. If it has not yet been set explicitly, try to obtain the symbol information from locale.</dd> + <dt><b>getCustomProperties</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCustomProperties">PHPExcel_DocumentProperties::getCustomProperties()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a List of Custom Property Names</dd> + <dt><b>getCustomPropertyType</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCustomPropertyType">PHPExcel_DocumentProperties::getCustomPropertyType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a Custom Property Type</dd> + <dt><b>getCustomPropertyValue</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCustomPropertyValue">PHPExcel_DocumentProperties::getCustomPropertyValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a Custom Property Value</dd> + <dt><b>getD</b></dt> + <dd>in file EigenvalueDecomposition.php, method <a href="JAMA/EigenvalueDecomposition.html#methodgetD">EigenvalueDecomposition::getD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the block diagonal eigenvalue matrix</dd> + <dt><b>getData</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodgetData">Base::getData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the data which might have been modified according to the current null handling options.</dd> + <dt><b>getData</b></dt> + <dd>in file Blip.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodgetData">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip::getData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the raw image data</dd> + <dt><b>getData</b></dt> + <dd>in file XMLWriter.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#methodgetData">PHPExcel_Shared_XMLWriter::getData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get written data</dd> + <dt><b>getData</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodgetData">PHPExcel_Writer_Excel5_Worksheet::getData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Retrieves data from memory in one chunk, or from disk in $buffer sized chunks.</dd> + <dt><b>getData</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodgetData">PHPExcel_Shared_OLE::getData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets data from a PPS If there is no PPS for the index given, it will return an empty string.</dd> + <dt><b>getDataLength</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodgetDataLength">PHPExcel_Shared_OLE::getDataLength()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets the data length from a PPS If there is no PPS for the index given, it will return 0.</dd> + <dt><b>getDataSource</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataSource">PHPExcel_Chart_DataSeriesValues::getDataSource()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Series Data Source (formula)</dd> + <dt><b>getDataType</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataType">PHPExcel_Chart_DataSeriesValues::getDataType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Series Data Type</dd> + <dt><b>getDataType</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetDataType">PHPExcel_Cell::getDataType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell data type</dd> + <dt><b>getDataValidation</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDataValidation">PHPExcel_Worksheet::getDataValidation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get data validation</dd> + <dt><b>getDataValidation</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetDataValidation">PHPExcel_Cell::getDataValidation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Data validation rules</dd> + <dt><b>getDataValidationCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDataValidationCollection">PHPExcel_Worksheet::getDataValidationCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of data validations</dd> + <dt><b>getDataValue</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataValue">PHPExcel_Chart_DataSeriesValues::getDataValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the first Series Data value</dd> + <dt><b>getDataValues</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataValues">PHPExcel_Chart_DataSeriesValues::getDataValues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Series Data Values</dd> + <dt><b>getDecimalSeparator</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetDecimalSeparator">PHPExcel_Shared_String::getDecimalSeparator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the decimal separator. If it has not yet been set explicitly, try to obtain number formatting information from locale.</dd> + <dt><b>getDefaultColumnDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDefaultColumnDimension">PHPExcel_Worksheet::getDefaultColumnDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get default column dimension</dd> + <dt><b>getDefaultColumnWidthByFont</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetDefaultColumnWidthByFont">PHPExcel_Shared_Font::getDefaultColumnWidthByFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the effective column width for columns without a column dimension or column with width -1 For example, for Calibri 11 this is 9.140625 (64 px)</dd> + <dt><b>getDefaultRowDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDefaultRowDimension">PHPExcel_Worksheet::getDefaultRowDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get default row dimension</dd> + <dt><b>getDefaultRowHeightByFont</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetDefaultRowHeightByFont">PHPExcel_Shared_Font::getDefaultRowHeightByFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the effective row height for rows without a row dimension or rows with height -1 For example, for Calibri 11 this is 15 points</dd> + <dt><b>getDefaultStyle</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetDefaultStyle">PHPExcel::getDefaultStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get default style</dd> + <dt><b>getDefaultStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDefaultStyle">PHPExcel_Worksheet::getDefaultStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get default style of workbork.</dd> + <dt><b>getDeleteColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetDeleteColumns">PHPExcel_Worksheet_Protection::getDeleteColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get DeleteColumns</dd> + <dt><b>getDeleteRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetDeleteRows">PHPExcel_Worksheet_Protection::getDeleteRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get DeleteRows</dd> + <dt><b>getDelimiter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetDelimiter">PHPExcel_Writer_CSV::getDelimiter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get delimiter</dd> + <dt><b>getDelimiter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetDelimiter">PHPExcel_Reader_CSV::getDelimiter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get delimiter</dd> + <dt><b>getDescription</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetDescription">PHPExcel_Worksheet_BaseDrawing::getDescription()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Description</dd> + <dt><b>getDescription</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetDescription">PHPExcel_DocumentProperties::getDescription()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Description</dd> + <dt><b>getDFResiduals</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetDFResiduals">PHPExcel_Best_Fit::getDFResiduals()</a></dd> + <dt><b>getDgContainer</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodgetDgContainer">PHPExcel_Shared_Escher::getDgContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Drawing Container</dd> + <dt><b>getDggContainer</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodgetDggContainer">PHPExcel_Shared_Escher::getDggContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Drawing Group Container</dd> + <dt><b>getDgId</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodgetDgId">PHPExcel_Shared_Escher_DgContainer::getDgId()</a></dd> + <dt><b>getDiagonal</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetDiagonal">PHPExcel_Style_Borders::getDiagonal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Diagonal</dd> + <dt><b>getDiagonalDirection</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetDiagonalDirection">PHPExcel_Style_Borders::getDiagonalDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get DiagonalDirection</dd> + <dt><b>getDifferentFirst</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetDifferentFirst">PHPExcel_Worksheet_HeaderFooter::getDifferentFirst()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get DifferentFirst</dd> + <dt><b>getDifferentOddEven</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetDifferentOddEven">PHPExcel_Worksheet_HeaderFooter::getDifferentOddEven()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get DifferentOddEven</dd> + <dt><b>getDirection</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetDirection">PHPExcel_Worksheet_Drawing_Shadow::getDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Shadow direction (in degrees)</dd> + <dt><b>getDiskCachingDirectory</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetDiskCachingDirectory">PHPExcel_Writer_Excel2007::getDiskCachingDirectory()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get disk caching directory</dd> + <dt><b>getDisplayBlanksAs</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetDisplayBlanksAs">PHPExcel_Chart::getDisplayBlanksAs()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Display Blanks as</dd> + <dt><b>getDistance</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetDistance">PHPExcel_Worksheet_Drawing_Shadow::getDistance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Shadow distance</dd> + <dt><b>getDistanceX</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodgetDistanceX">PHPExcel_Shared_Excel5::getDistanceX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the horizontal distance in pixels between two anchors The distanceX is found as sum of all the spanning columns widths minus correction for the two offsets</dd> + <dt><b>getDistanceY</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodgetDistanceY">PHPExcel_Shared_Excel5::getDistanceY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the vertical distance in pixels between two anchors The distanceY is found as sum of all the spanning rows minus two offsets</dd> + <dt><b>getDoublePivot</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetDoublePivot">PHPExcel_Shared_JAMA_LUDecomposition::getDoublePivot()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Alias for getPivot</dd> + <dt><b>getDrawingCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDrawingCollection">PHPExcel_Worksheet::getDrawingCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of drawings</dd> + <dt><b>getDrawingHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetDrawingHashTable">PHPExcel_Writer_Excel2007::getDrawingHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Worksheet_BaseDrawing HashTable</dd> + <dt><b>getEnclosure</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetEnclosure">PHPExcel_Writer_CSV::getEnclosure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get enclosure</dd> + <dt><b>getEnclosure</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetEnclosure">PHPExcel_Reader_CSV::getEnclosure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get enclosure</dd> + <dt><b>getEndColor</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetEndColor">PHPExcel_Style_Fill::getEndColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get End Color</dd> + <dt><b>getEndCoordinates</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetEndCoordinates">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getEndCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell coordinates of bottom-right corner of shape</dd> + <dt><b>getEndOffsetX</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetEndOffsetX">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getEndOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get offset in x-direction of bottom-right corner of shape measured in 1/1024 of column width</dd> + <dt><b>getEndOffsetY</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetEndOffsetY">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getEndOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get offset in y-direction of bottom-right corner of shape measured in 1/256 of row height</dd> + <dt><b>getEquation</b></dt> + <dd>in file logarithmicBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetEquation">PHPExcel_Logarithmic_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getEquation</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetEquation">PHPExcel_Exponential_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getEquation</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getEquation</b></dt> + <dd>in file powerBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetEquation">PHPExcel_Power_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getEquation</b></dt> + <dd>in file linearBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetEquation">PHPExcel_Linear_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getEquation</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetEquation">PHPExcel_Polynomial_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getError</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetError">PHPExcel_Best_Fit::getError()</a></dd> + <dt><b>getError</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetError">PHPExcel_Cell_DataValidation::getError()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Error</dd> + <dt><b>getErrorCodes</b></dt> + <dd>in file DataType.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#methodgetErrorCodes">PHPExcel_Cell_DataType::getErrorCodes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get list of error codes</dd> + <dt><b>getErrorStyle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetErrorStyle">PHPExcel_Cell_DataValidation::getErrorStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Error style</dd> + <dt><b>getErrorTitle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetErrorTitle">PHPExcel_Cell_DataValidation::getErrorTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Error title</dd> + <dt><b>getEscher</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodgetEscher">PHPExcel_Writer_Excel5_Workbook::getEscher()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Escher object</dd> + <dt><b>getEscher</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodgetEscher">PHPExcel_Writer_Excel5_Worksheet::getEscher()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Escher object</dd> + <dt><b>getEvenFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetEvenFooter">PHPExcel_Worksheet_HeaderFooter::getEvenFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get EvenFooter</dd> + <dt><b>getEvenHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetEvenHeader">PHPExcel_Worksheet_HeaderFooter::getEvenHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get EvenHeader</dd> + <dt><b>getExcelCalendar</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodgetExcelCalendar">PHPExcel_Shared_Date::getExcelCalendar()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Excel calendar (Windows 1900 or Mac 1904)</dd> + <dt><b>getExcelCompatibility</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetExcelCompatibility">PHPExcel_Writer_CSV::getExcelCompatibility()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get whether the file should be saved with full Excel Compatibility</dd> + <dt><b>getExcelName</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodgetExcelName">PHPExcel_Calculation_Function::getExcelName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Excel name</dd> + <dt><b>getExtension</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetExtension">PHPExcel_Worksheet_Drawing::getExtension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Extension</dd> + <dt><b>getExtension</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetExtension">PHPExcel_Worksheet_HeaderFooterDrawing::getExtension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Extension</dd> + <dt><b>getF</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetF">PHPExcel_Best_Fit::getF()</a></dd> + <dt><b>getFALSE</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetFALSE">PHPExcel_Calculation::getFALSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the locale-specific translation of FALSE</dd> + <dt><b>getFilename</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetFilename">PHPExcel_Worksheet_HeaderFooterDrawing::getFilename()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Filename</dd> + <dt><b>getFilename</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetFilename">PHPExcel_Worksheet_Drawing::getFilename()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Filename</dd> + <dt><b>getFill</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetFill">PHPExcel_Style::getFill()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Fill</dd> + <dt><b>getFillColor</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetFillColor">PHPExcel_Comment::getFillColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get fill color</dd> + <dt><b>getFillHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetFillHashTable">PHPExcel_Writer_Excel2007::getFillHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Style_Fill HashTable</dd> + <dt><b>getFillType</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetFillType">PHPExcel_Style_Fill::getFillType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Fill Type</dd> + <dt><b>getFilterType</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetFilterType">PHPExcel_Worksheet_AutoFilter_Column::getFilterType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Type</dd> + <dt><b>getFirstFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetFirstFooter">PHPExcel_Worksheet_HeaderFooter::getFirstFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get FirstFooter</dd> + <dt><b>getFirstHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetFirstHeader">PHPExcel_Worksheet_HeaderFooter::getFirstHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get FirstHeader</dd> + <dt><b>getFirstPageNumber</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFirstPageNumber">PHPExcel_Worksheet_PageSetup::getFirstPageNumber()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get first page number</dd> + <dt><b>getFitToHeight</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFitToHeight">PHPExcel_Worksheet_PageSetup::getFitToHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Fit To Height</dd> + <dt><b>getFitToPage</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFitToPage">PHPExcel_Worksheet_PageSetup::getFitToPage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Fit To Page</dd> + <dt><b>getFitToWidth</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFitToWidth">PHPExcel_Worksheet_PageSetup::getFitToWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Fit To Width</dd> + <dt><b>getFont</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetFont">PHPExcel_Style::getFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Font</dd> + <dt><b>getFont</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetFont">PHPExcel_Writer_PDF_Core::getFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Font</dd> + <dt><b>getFont</b></dt> + <dd>in file Run.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html#methodgetFont">PHPExcel_RichText_Run::getFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get font</dd> + <dt><b>getFont</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetFont">PHPExcel_RichText_TextElement::getFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get font</dd> + <dt><b>getFont</b></dt> + <dd>in file ITextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetFont">PHPExcel_RichText_ITextElement::getFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get font</dd> + <dt><b>getFontHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetFontHashTable">PHPExcel_Writer_Excel2007::getFontHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Style_Font HashTable</dd> + <dt><b>getFooter</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetFooter">PHPExcel_Worksheet_PageMargins::getFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Footer</dd> + <dt><b>getFormatCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetFormatCells">PHPExcel_Worksheet_Protection::getFormatCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get FormatCells</dd> + <dt><b>getFormatCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetFormatCode">PHPExcel_Style_NumberFormat::getFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Format Code</dd> + <dt><b>getFormatCode</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetFormatCode">PHPExcel_Chart_DataSeriesValues::getFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Series Format Code</dd> + <dt><b>getFormatColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetFormatColumns">PHPExcel_Worksheet_Protection::getFormatColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get FormatColumns</dd> + <dt><b>getFormatRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetFormatRows">PHPExcel_Worksheet_Protection::getFormatRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get FormatRows</dd> + <dt><b>getFormattedValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetFormattedValue">PHPExcel_Cell::getFormattedValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell value with formatting</dd> + <dt><b>getFormula</b></dt> + <dd>in file FormulaParser.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetFormula">PHPExcel_Calculation_FormulaParser::getFormula()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Formula</dd> + <dt><b>getFormula1</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetFormula1">PHPExcel_Cell_DataValidation::getFormula1()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Formula 1</dd> + <dt><b>getFormula2</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetFormula2">PHPExcel_Cell_DataValidation::getFormula2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Formula 2</dd> + <dt><b>getFormulaAttributes</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetFormulaAttributes">PHPExcel_Cell::getFormulaAttributes()</a></dd> + <dt><b>getFreezePane</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetFreezePane">PHPExcel_Worksheet::getFreezePane()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Freeze Pane</dd> + <dt><b>getGenerateSheetNavigationBlock</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::getGenerateSheetNavigationBlock()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>getGoodnessOfFit</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFit">PHPExcel_Best_Fit::getGoodnessOfFit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the goodness of fit for this regression</dd> + <dt><b>getGoodnessOfFitPercent</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFitPercent">PHPExcel_Best_Fit::getGoodnessOfFitPercent()</a></dd> + <dt><b>getGreen</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetGreen">PHPExcel_Style_Color::getGreen()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the green colour component of an RGB value</dd> + <dt><b>getGrouping</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetGrouping">PHPExcel_Worksheet_AutoFilter_Column_Rule::getGrouping()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Rule Grouping</dd> + <dt><b>getH</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetH">PHPExcel_Shared_JAMA_QRDecomposition::getH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Householder vectors</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetHashCode">PHPExcel_Style_Font::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Run.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html#methodgetHashCode">PHPExcel_RichText_Run::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetHashCode">PHPExcel_Worksheet_Drawing_Shadow::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetHashCode">PHPExcel_Style_Alignment::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetHashCode">PHPExcel_Worksheet_HeaderFooterDrawing::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file ITextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetHashCode">PHPExcel_RichText_ITextElement::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHashCode">PHPExcel_Worksheet_BaseDrawing::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetHashCode">PHPExcel_Style_Color::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetHashCode">PHPExcel_Style_Fill::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetHashCode">PHPExcel_Style_Protection::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetHashCode">PHPExcel_Worksheet_Drawing::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetHashCode">PHPExcel_Style_Border::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetHashCode">PHPExcel_Style_Borders::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetHashCode">PHPExcel_Style_Conditional::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetHashCode">PHPExcel_RichText_TextElement::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetHashCode">PHPExcel_Comment::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHashCode">PHPExcel_Worksheet::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetHashCode">PHPExcel_Cell_DataValidation::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodgetHashCode">PHPExcel_Cell_Hyperlink::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodgetHashCode">PHPExcel_RichText::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetHashCode">PHPExcel_Worksheet_MemoryDrawing::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetHashCode">PHPExcel_Style::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetHashCode">PHPExcel_Style_NumberFormat::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file IComparable.php, method <a href="PHPExcel/PHPExcel_IComparable.html#methodgetHashCode">PHPExcel_IComparable::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHeader</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetHeader">PHPExcel_Worksheet_PageMargins::getHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Header</dd> + <dt><b>getHeaderFooter</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHeaderFooter">PHPExcel_Worksheet::getHeaderFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get page header/footer</dd> + <dt><b>getHeight</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetHeight">PHPExcel_Worksheet_HeaderFooterDrawing::getHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Height</dd> + <dt><b>getHeight</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetHeight">PHPExcel_Chart_Layout::getHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Height</dd> + <dt><b>getHeight</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetHeight">PHPExcel_Comment::getHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get comment height (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>getHeight</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHeight">PHPExcel_Worksheet_BaseDrawing::getHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Height</dd> + <dt><b>getHidden</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetHidden">PHPExcel_Style_Protection::getHidden()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hidden</dd> + <dt><b>getHighestColumn</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestColumn">PHPExcel_Worksheet::getHighestColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet column</dd> + <dt><b>getHighestColumn</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet column</dd> + <dt><b>getHighestDataColumn</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestDataColumn">PHPExcel_Worksheet::getHighestDataColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet column that contains data</dd> + <dt><b>getHighestDataRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestDataRow">PHPExcel_Worksheet::getHighestDataRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet row that contains data</dd> + <dt><b>getHighestRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestRow">PHPExcel_Worksheet::getHighestRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet row</dd> + <dt><b>getHighestRow</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet row</dd> + <dt><b>getHighestRowAndColumn</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet column and highest row that have cell records</dd> + <dt><b>getHighestRowAndColumn</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestRowAndColumn">PHPExcel_Worksheet::getHighestRowAndColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet column and highest row that have cell records</dd> + <dt><b>getHorizontal</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetHorizontal">PHPExcel_Style_Alignment::getHorizontal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Horizontal</dd> + <dt><b>getHorizontal</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetHorizontal">PHPExcel_Style_Borders::getHorizontal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Horizontal (pseudo-border). Only applies to supervisor.</dd> + <dt><b>getHorizontalCentered</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetHorizontalCentered">PHPExcel_Worksheet_PageSetup::getHorizontalCentered()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get center page horizontally</dd> + <dt><b>getHyperlink</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHyperlink">PHPExcel_Worksheet::getHyperlink()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hyperlink</dd> + <dt><b>getHyperlink</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetHyperlink">PHPExcel_Cell::getHyperlink()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Hyperlink</dd> + <dt><b>getHyperlinkCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHyperlinkCollection">PHPExcel_Worksheet::getHyperlinkCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of hyperlinks</dd> + <dt><b>getIDCLs</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetIDCLs">PHPExcel_Shared_Escher_DggContainer::getIDCLs()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get identifier clusters</dd> + <dt><b>getImagEigenvalues</b></dt> + <dd>in file EigenvalueDecomposition.php, method <a href="JAMA/EigenvalueDecomposition.html#methodgetImagEigenvalues">EigenvalueDecomposition::getImagEigenvalues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the imaginary parts of the eigenvalues</dd> + <dt><b>getImageIndex</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetImageIndex">PHPExcel_Worksheet_BaseDrawing::getImageIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get image index</dd> + <dt><b>getImageResource</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetImageResource">PHPExcel_Worksheet_MemoryDrawing::getImageResource()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get image resource</dd> + <dt><b>getImages</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetImages">PHPExcel_Worksheet_HeaderFooter::getImages()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get header/footer images</dd> + <dt><b>getImagesRoot</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetImagesRoot">PHPExcel_Writer_HTML::getImagesRoot()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get images root</dd> + <dt><b>getIncludeCharts</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetIncludeCharts">PHPExcel_Writer_Excel2007::getIncludeCharts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write charts in workbook? If this is true, then the Writer will write definitions for any charts that exist in the PHPExcel object.</dd> + <dt><b>getIncludeCharts</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetIncludeCharts">PHPExcel_Reader_Excel2007::getIncludeCharts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read charts in workbook? If this is true, then the Reader will include any charts that exist in the workbook.</dd> + <dt><b>getIndent</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetIndent">PHPExcel_Style_Alignment::getIndent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get indent</dd> + <dt><b>getIndex</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetIndex">PHPExcel_Style::getIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get own index in style collection</dd> + <dt><b>getIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetIndex">PHPExcel::getIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get index for sheet</dd> + <dt><b>getIndexedFilename</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetIndexedFilename">PHPExcel_Worksheet_Drawing::getIndexedFilename()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get indexed filename (using image index)</dd> + <dt><b>getIndexedFilename</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetIndexedFilename">PHPExcel_Worksheet_MemoryDrawing::getIndexedFilename()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get indexed filename (using image index)</dd> + <dt><b>getIndexForHashCode</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodgetIndexForHashCode">PHPExcel_HashTable::getIndexForHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get index for hash code</dd> + <dt><b>getInputEncoding</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodgetInputEncoding">PHPExcel_Reader_SYLK::getInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get input encoding</dd> + <dt><b>getInputEncoding</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodgetInputEncoding">PHPExcel_Reader_HTML::getInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get input encoding</dd> + <dt><b>getInputEncoding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetInputEncoding">PHPExcel_Reader_CSV::getInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get input encoding</dd> + <dt><b>getInsertColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetInsertColumns">PHPExcel_Worksheet_Protection::getInsertColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get InsertColumns</dd> + <dt><b>getInsertHyperlinks</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetInsertHyperlinks">PHPExcel_Worksheet_Protection::getInsertHyperlinks()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get InsertHyperlinks</dd> + <dt><b>getInsertRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetInsertRows">PHPExcel_Worksheet_Protection::getInsertRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get InsertRows</dd> + <dt><b>getInside</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetInside">PHPExcel_Style_Borders::getInside()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Inside (pseudo-border). Only applies to supervisor.</dd> + <dt><b>getInstance</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetInstance">PHPExcel_Calculation::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an instance of this class</dd> + <dt><b>getInstance</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetInstance">PHPExcel_CachedObjectStorageFactory::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise the cache storage</dd> + <dt><b>getInstance</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#methodgetInstance">PHPExcel_ReferenceHelper::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an instance of this class</dd> + <dt><b>getIntersect</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersect">PHPExcel_Best_Fit::getIntersect()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Value of X where it intersects Y = 0</dd> + <dt><b>getIntersect</b></dt> + <dd>in file powerBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetIntersect">PHPExcel_Power_Best_Fit::getIntersect()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Value of X where it intersects Y = 0</dd> + <dt><b>getIntersect</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetIntersect">PHPExcel_Exponential_Best_Fit::getIntersect()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Value of X where it intersects Y = 0</dd> + <dt><b>getIntersectSE</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersectSE">PHPExcel_Best_Fit::getIntersectSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the standard error of the Intersect</dd> + <dt><b>getInvalidCharacters</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetInvalidCharacters">PHPExcel_Worksheet::getInvalidCharacters()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get array of invalid characters for sheet title</dd> + <dt><b>getIsIconvEnabled</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetIsIconvEnabled">PHPExcel_Shared_String::getIsIconvEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get whether iconv extension is available</dd> + <dt><b>getIsMbstringEnabled</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetIsMbstringEnabled">PHPExcel_Shared_String::getIsMbstringEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get whether mbstring extension is available</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetIsSupervisor">PHPExcel_Style::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetIsSupervisor">PHPExcel_Style_Protection::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetIsSupervisor">PHPExcel_Style_Color::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetIsSupervisor">PHPExcel_Style_NumberFormat::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetIsSupervisor">PHPExcel_Style_Border::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetIsSupervisor">PHPExcel_Style_Borders::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetIsSupervisor">PHPExcel_Style_Font::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetIsSupervisor">PHPExcel_Style_Alignment::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetIsSupervisor">PHPExcel_Style_Fill::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getItalic</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetItalic">PHPExcel_Style_Font::getItalic()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Italic</dd> + <dt><b>getIterateOnlyExistingCells</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodgetIterateOnlyExistingCells">PHPExcel_Worksheet_CellIterator::getIterateOnlyExistingCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get loop only existing cells</dd> + <dt><b>getJoin</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetJoin">PHPExcel_Worksheet_AutoFilter_Column::getJoin()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Multiple Rules And/Or Join</dd> + <dt><b>getKeywords</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetKeywords">PHPExcel_DocumentProperties::getKeywords()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Keywords</dd> + <dt><b>getL</b></dt> + <dd>in file CholeskyDecomposition.php, method <a href="JAMA/CholeskyDecomposition.html#methodgetL">CholeskyDecomposition::getL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getL</dd> + <dt><b>getL</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetL">PHPExcel_Shared_JAMA_LUDecomposition::getL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get lower triangular factor.</dd> + <dt><b>getLastModifiedBy</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetLastModifiedBy">PHPExcel_DocumentProperties::getLastModifiedBy()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Last Modified By</dd> + <dt><b>getLastSpId</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodgetLastSpId">PHPExcel_Shared_Escher_DgContainer::getLastSpId()</a></dd> + <dt><b>getLayout</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetLayout">PHPExcel_Chart_Legend::getLayout()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Layout</dd> + <dt><b>getLayout</b></dt> + <dd>in file Title.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html#methodgetLayout">PHPExcel_Chart_Title::getLayout()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Layout</dd> + <dt><b>getLayout</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetLayout">PHPExcel_Chart_PlotArea::getLayout()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Layout</dd> + <dt><b>getLayoutTarget</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetLayoutTarget">PHPExcel_Chart_Layout::getLayoutTarget()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Layout Target</dd> + <dt><b>getLeft</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetLeft">PHPExcel_Style_Borders::getLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Left</dd> + <dt><b>getLeft</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetLeft">PHPExcel_Worksheet_PageMargins::getLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Left</dd> + <dt><b>getLegend</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetLegend">PHPExcel_Chart::getLegend()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Legend</dd> + <dt><b>getLineEnding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetLineEnding">PHPExcel_Reader_CSV::getLineEnding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get line ending</dd> + <dt><b>getLineEnding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetLineEnding">PHPExcel_Writer_CSV::getLineEnding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get line ending</dd> + <dt><b>getLoadSheetsOnly</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetLoadSheetsOnly">PHPExcel_Reader_Excel2007::getLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.</dd> + <dt><b>getLoadSheetsOnly</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodgetLoadSheetsOnly">PHPExcel_Reader_Excel2003XML::getLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get which sheets to load</dd> + <dt><b>getLoadSheetsOnly</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodgetLoadSheetsOnly">PHPExcel_Reader_Excel5::getLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.</dd> + <dt><b>getLoadSheetsOnly</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodgetLoadSheetsOnly">PHPExcel_Reader_OOCalc::getLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.</dd> + <dt><b>getLoadSheetsOnly</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodgetLoadSheetsOnly">PHPExcel_Reader_Gnumeric::getLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.</dd> + <dt><b>getLocale</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetLocale">PHPExcel_Calculation::getLocale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently defined locale code</dd> + <dt><b>getLocalOnly</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodgetLocalOnly">PHPExcel_NamedRange::getLocalOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get localOnly</dd> + <dt><b>getLocked</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetLocked">PHPExcel_Style_Protection::getLocked()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get locked</dd> + <dt><b>getLockRevision</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodgetLockRevision">PHPExcel_DocumentSecurity::getLockRevision()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get LockRevision</dd> + <dt><b>getLockStructure</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodgetLockStructure">PHPExcel_DocumentSecurity::getLockStructure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get LockStructure</dd> + <dt><b>getLockWindows</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodgetLockWindows">PHPExcel_DocumentSecurity::getLockWindows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get LockWindows</dd> + <dt><b>getManager</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetManager">PHPExcel_DocumentProperties::getManager()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Manager</dd> + <dt><b>getMarginLeft</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetMarginLeft">PHPExcel_Comment::getMarginLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get left margin (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>getMarginTop</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetMarginTop">PHPExcel_Comment::getMarginTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get top margin (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>getMatrix</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetMatrix">PHPExcel_Shared_JAMA_Matrix::getMatrix()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getMatrix</dd> + <dt><b>getMatrixByCol</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetMatrixByCol">PHPExcel_Shared_JAMA_Matrix::getMatrixByCol()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getMatrixByCol</dd> + <dt><b>getMatrixByRow</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetMatrixByRow">PHPExcel_Shared_JAMA_Matrix::getMatrixByRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getMatrixByRow</dd> + <dt><b>getMergeCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetMergeCells">PHPExcel_Worksheet::getMergeCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get merge cells array.</dd> + <dt><b>getMimeType</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetMimeType">PHPExcel_Worksheet_MemoryDrawing::getMimeType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get mime type</dd> + <dt><b>getModified</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetModified">PHPExcel_DocumentProperties::getModified()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Modified</dd> + <dt><b>getName</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetName">PHPExcel_Worksheet_BaseDrawing::getName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Name</dd> + <dt><b>getName</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetName">PHPExcel_Chart::getName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Name</dd> + <dt><b>getName</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodgetName">PHPExcel_NamedRange::getName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get name</dd> + <dt><b>getName</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetName">PHPExcel_Style_Font::getName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Name</dd> + <dt><b>getName</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetName">PHPExcel_Worksheet_HeaderFooterDrawing::getName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Name</dd> + <dt><b>getNamedRange</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetNamedRange">PHPExcel::getNamedRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get named range</dd> + <dt><b>getNamedRanges</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetNamedRanges">PHPExcel::getNamedRanges()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get named ranges</dd> + <dt><b>getNestingLevel</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetNestingLevel">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getNestingLevel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the nesting level of this spContainer. This is the number of spgrContainers between this spContainer and the dgContainer. A value of 1 = immediately within first spgrContainer Higher nesting level occurs if and only if spContainer is part of a shape group</dd> + <dt><b>getNumberFormat</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetNumberFormat">PHPExcel_Style::getNumberFormat()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Number Format</dd> + <dt><b>getNumFmtHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetNumFmtHashTable">PHPExcel_Writer_Excel2007::getNumFmtHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Style_NumberFormat HashTable</dd> + <dt><b>getObjects</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetObjects">PHPExcel_Worksheet_Protection::getObjects()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Objects</dd> + <dt><b>getOddFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetOddFooter">PHPExcel_Worksheet_HeaderFooter::getOddFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OddFooter</dd> + <dt><b>getOddHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetOddHeader">PHPExcel_Worksheet_HeaderFooter::getOddHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OddHeader</dd> + <dt><b>getOffice2003Compatibility</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetOffice2003Compatibility">PHPExcel_Writer_Excel2007::getOffice2003Compatibility()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Office2003 compatibility</dd> + <dt><b>getOffsetX</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetOffsetX">PHPExcel_Worksheet_HeaderFooterDrawing::getOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OffsetX</dd> + <dt><b>getOffsetX</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetX">PHPExcel_Worksheet_BaseDrawing::getOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OffsetX</dd> + <dt><b>getOffsetY</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetY">PHPExcel_Worksheet_BaseDrawing::getOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OffsetY</dd> + <dt><b>getOffsetY</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetOffsetY">PHPExcel_Worksheet_HeaderFooterDrawing::getOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OffsetY</dd> + <dt><b>getOldCalculatedValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetOldCalculatedValue">PHPExcel_Cell::getOldCalculatedValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get old calculated value (cached) This returns the value last calculated by MS Excel or whichever spreadsheet program was used to create the original spreadsheet file.</dd> + <dt><b>getOperator</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetOperator">PHPExcel_Worksheet_AutoFilter_Column_Rule::getOperator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Rule Operator</dd> + <dt><b>getOperator</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetOperator">PHPExcel_Cell_DataValidation::getOperator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Operator</dd> + <dt><b>getOperatorType</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetOperatorType">PHPExcel_Style_Conditional::getOperatorType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Operator type</dd> + <dt><b>getOPT</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetOPT">PHPExcel_Shared_Escher_DggContainer::getOPT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an option for the drawing group</dd> + <dt><b>getOPT</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetOPT">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getOPT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an option for the Shape Group Container</dd> + <dt><b>getOPTCollection</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetOPTCollection">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getOPTCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the collection of options</dd> + <dt><b>getOrder</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetOrder">PHPExcel_Polynomial_Best_Fit::getOrder()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the order of this polynomial</dd> + <dt><b>getOrientation</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetOrientation">PHPExcel_Worksheet_PageSetup::getOrientation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Orientation</dd> + <dt><b>getOrientation</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetOrientation">PHPExcel_Writer_PDF_Core::getOrientation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Orientation</dd> + <dt><b>getOutline</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetOutline">PHPExcel_Style_Borders::getOutline()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Outline (pseudo-border). Only applies to supervisor.</dd> + <dt><b>getOutlineLevel</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetOutlineLevel">PHPExcel_Worksheet_ColumnDimension::getOutlineLevel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Outline Level</dd> + <dt><b>getOutlineLevel</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetOutlineLevel">PHPExcel_Worksheet_RowDimension::getOutlineLevel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Outline Level</dd> + <dt><b>getOverlay</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetOverlay">PHPExcel_Chart_Legend::getOverlay()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get allow overlay of other elements?</dd> + <dt><b>getPageMargins</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetPageMargins">PHPExcel_Worksheet::getPageMargins()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get page margins</dd> + <dt><b>getPageSetup</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetPageSetup">PHPExcel_Worksheet::getPageSetup()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get page setup</dd> + <dt><b>getPaperSize</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetPaperSize">PHPExcel_Worksheet_PageSetup::getPaperSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Paper Size</dd> + <dt><b>getPaperSize</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetPaperSize">PHPExcel_Writer_PDF_Core::getPaperSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Paper Size</dd> + <dt><b>getParent</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetParent">PHPExcel_Worksheet_AutoFilter_Column::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get this Column's AutoFilter Parent</dd> + <dt><b>getParent</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetParent">PHPExcel_Worksheet::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get parent</dd> + <dt><b>getParent</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetParent">PHPExcel_Worksheet_AutoFilter::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Parent Worksheet</dd> + <dt><b>getParent</b></dt> + <dd>in file SpgrContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodgetParent">PHPExcel_Shared_Escher_DgContainer_SpgrContainer::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the parent Shape Group Container if any</dd> + <dt><b>getParent</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetParent">PHPExcel_Style::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get parent. Only used for style supervisor</dd> + <dt><b>getParent</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetParent">PHPExcel_Cell::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get parent worksheet</dd> + <dt><b>getParent</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetParent">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the parent Shape Group Container</dd> + <dt><b>getParent</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetParent">PHPExcel_Worksheet_AutoFilter_Column_Rule::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get this Rule's AutoFilter Column Parent</dd> + <dt><b>getParent</b></dt> + <dd>in file Blip.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodgetParent">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get parent BSE</dd> + <dt><b>getParentWriter</b></dt> + <dd>in file WriterPart.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get parent IWriter object</dd> + <dt><b>getPassword</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetPassword">PHPExcel_Worksheet_Protection::getPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Password (hashed)</dd> + <dt><b>getPath</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetPath">PHPExcel_Worksheet_Drawing::getPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Path</dd> + <dt><b>getPath</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetPath">PHPExcel_Worksheet_HeaderFooterDrawing::getPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Path</dd> + <dt><b>getPdfRendererName</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetPdfRendererName">PHPExcel_Settings::getPdfRendererName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the PDF Rendering Library that PHPExcel is currently configured to use (e.g. dompdf)</dd> + <dt><b>getPdfRendererPath</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetPdfRendererPath">PHPExcel_Settings::getPdfRendererPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the directory path to the PDF Rendering Library that PHPExcel is currently configured to use</dd> + <dt><b>getPHPExcel</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetPHPExcel">PHPExcel_Writer_Excel2007::getPHPExcel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel object</dd> + <dt><b>getPHPExcelName</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodgetPHPExcelName">PHPExcel_Calculation_Function::getPHPExcelName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel name</dd> + <dt><b>getPivot</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetPivot">PHPExcel_Shared_JAMA_LUDecomposition::getPivot()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return pivot permutation vector.</dd> + <dt><b>getPivotTables</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetPivotTables">PHPExcel_Worksheet_Protection::getPivotTables()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PivotTables</dd> + <dt><b>getPlainText</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodgetPlainText">PHPExcel_RichText::getPlainText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get plain text</dd> + <dt><b>getPlotArea</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetPlotArea">PHPExcel_Chart::getPlotArea()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Area</dd> + <dt><b>getPlotCategories</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotCategories">PHPExcel_Chart_DataSeries::getPlotCategories()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Categories</dd> + <dt><b>getPlotCategoryByIndex</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotCategoryByIndex">PHPExcel_Chart_DataSeries::getPlotCategoryByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Category by Index</dd> + <dt><b>getPlotDirection</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotDirection">PHPExcel_Chart_DataSeries::getPlotDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Direction</dd> + <dt><b>getPlotGroup</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotGroup">PHPExcel_Chart_PlotArea::getPlotGroup()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Series</dd> + <dt><b>getPlotGroupByIndex</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotGroupByIndex">PHPExcel_Chart_PlotArea::getPlotGroupByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Series by Index</dd> + <dt><b>getPlotGroupCount</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotGroupCount">PHPExcel_Chart_PlotArea::getPlotGroupCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Number of Plot Groups</dd> + <dt><b>getPlotGrouping</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotGrouping">PHPExcel_Chart_DataSeries::getPlotGrouping()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Grouping Type</dd> + <dt><b>getPlotLabelByIndex</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotLabelByIndex">PHPExcel_Chart_DataSeries::getPlotLabelByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Label by Index</dd> + <dt><b>getPlotLabels</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotLabels">PHPExcel_Chart_DataSeries::getPlotLabels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Labels</dd> + <dt><b>getPlotOrder</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotOrder">PHPExcel_Chart_DataSeries::getPlotOrder()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Order</dd> + <dt><b>getPlotSeriesCount</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotSeriesCount">PHPExcel_Chart_DataSeries::getPlotSeriesCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Number of Plot Series</dd> + <dt><b>getPlotSeriesCount</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotSeriesCount">PHPExcel_Chart_PlotArea::getPlotSeriesCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Number of Plot Series</dd> + <dt><b>getPlotStyle</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotStyle">PHPExcel_Chart_DataSeries::getPlotStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Style</dd> + <dt><b>getPlotType</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotType">PHPExcel_Chart_DataSeries::getPlotType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Type</dd> + <dt><b>getPlotValues</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotValues">PHPExcel_Chart_DataSeries::getPlotValues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Values</dd> + <dt><b>getPlotValuesByIndex</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotValuesByIndex">PHPExcel_Chart_DataSeries::getPlotValuesByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Values by Index</dd> + <dt><b>getPlotVisibleOnly</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetPlotVisibleOnly">PHPExcel_Chart::getPlotVisibleOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Visible Only</dd> + <dt><b>getPointCount</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetPointCount">PHPExcel_Chart_DataSeriesValues::getPointCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Series Point Count</dd> + <dt><b>getPointMarker</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetPointMarker">PHPExcel_Chart_DataSeriesValues::getPointMarker()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Point Marker</dd> + <dt><b>getPosition</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetPosition">PHPExcel_Chart_Legend::getPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get legend position as an excel string value</dd> + <dt><b>getPositionXL</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetPositionXL">PHPExcel_Chart_Legend::getPositionXL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get legend position as an Excel internal numeric value</dd> + <dt><b>getPreCalculateFormulas</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetPreCalculateFormulas">PHPExcel_Writer_Excel2007::getPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Pre-Calculate Formulas</dd> + <dt><b>getPreCalculateFormulas</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodgetPreCalculateFormulas">PHPExcel_Writer_Excel5::getPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Pre-Calculate Formulas</dd> + <dt><b>getPreCalculateFormulas</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetPreCalculateFormulas">PHPExcel_Writer_CSV::getPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Pre-Calculate Formulas</dd> + <dt><b>getPreCalculateFormulas</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetPreCalculateFormulas">PHPExcel_Writer_HTML::getPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Pre-Calculate Formulas</dd> + <dt><b>getPrintArea</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetPrintArea">PHPExcel_Worksheet_PageSetup::getPrintArea()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get print area</dd> + <dt><b>getPrintGridlines</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetPrintGridlines">PHPExcel_Worksheet::getPrintGridlines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Print gridlines?</dd> + <dt><b>getPrompt</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetPrompt">PHPExcel_Cell_DataValidation::getPrompt()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Prompt</dd> + <dt><b>getPromptTitle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetPromptTitle">PHPExcel_Cell_DataValidation::getPromptTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Prompt title</dd> + <dt><b>getProperties</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetProperties">PHPExcel::getProperties()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get properties</dd> + <dt><b>getProtectedCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetProtectedCells">PHPExcel_Worksheet::getProtectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get protected cells</dd> + <dt><b>getProtection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetProtection">PHPExcel_Worksheet::getProtection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Protection</dd> + <dt><b>getProtection</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetProtection">PHPExcel_Style::getProtection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Protection</dd> + <dt><b>getQ</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetQ">PHPExcel_Shared_JAMA_QRDecomposition::getQ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate and return the (economy-sized) orthogonal factor</dd> + <dt><b>getR</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetR">PHPExcel_Shared_JAMA_QRDecomposition::getR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the upper triangular factor</dd> + <dt><b>getRange</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetRange">PHPExcel_Worksheet_AutoFilter::getRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Range</dd> + <dt><b>getRange</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodgetRange">PHPExcel_NamedRange::getRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get range</dd> + <dt><b>getRangeBoundaries</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetRangeBoundaries">PHPExcel_Cell::getRangeBoundaries()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate range boundaries</dd> + <dt><b>getReadDataOnly</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetReadDataOnly">PHPExcel_Reader_Excel2007::getReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.</dd> + <dt><b>getReadDataOnly</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodgetReadDataOnly">PHPExcel_Reader_OOCalc::getReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.</dd> + <dt><b>getReadDataOnly</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodgetReadDataOnly">PHPExcel_Reader_Excel5::getReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.</dd> + <dt><b>getReadDataOnly</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodgetReadDataOnly">PHPExcel_Reader_Excel2003XML::getReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read data only?</dd> + <dt><b>getReadDataOnly</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodgetReadDataOnly">PHPExcel_Reader_Gnumeric::getReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodgetReadFilter">PHPExcel_Reader_Gnumeric::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodgetReadFilter">PHPExcel_Reader_Excel5::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodgetReadFilter">PHPExcel_Reader_SYLK::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetReadFilter">PHPExcel_Reader_CSV::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodgetReadFilter">PHPExcel_Reader_HTML::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodgetReadFilter">PHPExcel_Reader_OOCalc::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodgetReadFilter">PHPExcel_Reader_Excel2003XML::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetReadFilter">PHPExcel_Reader_Excel2007::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getRealEigenvalues</b></dt> + <dd>in file EigenvalueDecomposition.php, method <a href="JAMA/EigenvalueDecomposition.html#methodgetRealEigenvalues">EigenvalueDecomposition::getRealEigenvalues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the real parts of the eigenvalues</dd> + <dt><b>getRed</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetRed">PHPExcel_Style_Color::getRed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the red colour component of an RGB value</dd> + <dt><b>getRenderingFunction</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetRenderingFunction">PHPExcel_Worksheet_MemoryDrawing::getRenderingFunction()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get rendering function</dd> + <dt><b>getResizeProportional</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetResizeProportional">PHPExcel_Worksheet_HeaderFooterDrawing::getResizeProportional()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ResizeProportional</dd> + <dt><b>getResizeProportional</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetResizeProportional">PHPExcel_Worksheet_BaseDrawing::getResizeProportional()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ResizeProportional</dd> + <dt><b>getReturnDateType</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodgetReturnDateType">PHPExcel_Calculation_Functions::getReturnDateType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current Return Date Format for functions that return a date/time (Excel, PHP Serialized Numeric or PHP Object)</dd> + <dt><b>getRevisionsPassword</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodgetRevisionsPassword">PHPExcel_DocumentSecurity::getRevisionsPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get RevisionsPassword (hashed)</dd> + <dt><b>getRGB</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetRGB">PHPExcel_Style_Color::getRGB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get RGB</dd> + <dt><b>getRichTextElements</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodgetRichTextElements">PHPExcel_RichText::getRichTextElements()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Rich Text elements</dd> + <dt><b>getRight</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetRight">PHPExcel_Style_Borders::getRight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Right</dd> + <dt><b>getRight</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetRight">PHPExcel_Worksheet_PageMargins::getRight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Right</dd> + <dt><b>getRightToLeft</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRightToLeft">PHPExcel_Worksheet::getRightToLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get right-to-left</dd> + <dt><b>getRotation</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetRotation">PHPExcel_Worksheet_BaseDrawing::getRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Rotation</dd> + <dt><b>getRotation</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetRotation">PHPExcel_Style_Fill::getRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Rotation</dd> + <dt><b>getRow</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetRow">PHPExcel_Cell::getRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell coordinate row</dd> + <dt><b>getRowDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRowDimension">PHPExcel_Worksheet::getRowDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get row dimension at a specific row</dd> + <dt><b>getRowDimension</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetRowDimension">PHPExcel_Shared_JAMA_Matrix::getRowDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getRowDimension</dd> + <dt><b>getRowDimensions</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRowDimensions">PHPExcel_Worksheet::getRowDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of row dimensions</dd> + <dt><b>getRowHeight</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetRowHeight">PHPExcel_Worksheet_RowDimension::getRowHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Row Height</dd> + <dt><b>getRowIndex</b></dt> + <dd>in file Row.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#methodgetRowIndex">PHPExcel_Worksheet_Row::getRowIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get row index</dd> + <dt><b>getRowIndex</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetRowIndex">PHPExcel_Worksheet_RowDimension::getRowIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Row Index</dd> + <dt><b>getRowIterator</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRowIterator">PHPExcel_Worksheet::getRowIterator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get row iterator</dd> + <dt><b>getRowsToRepeatAtTop</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetRowsToRepeatAtTop">PHPExcel_Worksheet_PageSetup::getRowsToRepeatAtTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Rows to repeat at top</dd> + <dt><b>getRule</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetRule">PHPExcel_Worksheet_AutoFilter_Column::getRule()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a specified AutoFilter Column Rule</dd> + <dt><b>getRules</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetRules">PHPExcel_Worksheet_AutoFilter_Column::getRules()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get all AutoFilter Column Rules</dd> + <dt><b>getRuleType</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetRuleType">PHPExcel_Worksheet_AutoFilter_Column_Rule::getRuleType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Rule Type</dd> + <dt><b>getS</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodgetS">SingularValueDecomposition::getS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the diagonal matrix of singular values</dd> + <dt><b>getScale</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetScale">PHPExcel_Worksheet_PageSetup::getScale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Scale</dd> + <dt><b>getScaleWithDocument</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetScaleWithDocument">PHPExcel_Worksheet_HeaderFooter::getScaleWithDocument()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ScaleWithDocument</dd> + <dt><b>getScenarios</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetScenarios">PHPExcel_Worksheet_Protection::getScenarios()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Scenarios</dd> + <dt><b>getScope</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodgetScope">PHPExcel_NamedRange::getScope()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get scope</dd> + <dt><b>getSearchLocations</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodgetSearchLocations">PHPExcel_IOFactory::getSearchLocations()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get search locations</dd> + <dt><b>getSecurity</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetSecurity">PHPExcel::getSecurity()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get security</dd> + <dt><b>getSelectedCell</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSelectedCell">PHPExcel_Worksheet::getSelectedCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get selected cell</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSelectedCells">PHPExcel_Worksheet::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get selected cells</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetSelectedCells">PHPExcel_Style_Color::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetSelectedCells">PHPExcel_Style_NumberFormat::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetSelectedCells">PHPExcel_Style_Alignment::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetSelectedCells">PHPExcel_Style_Borders::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetSelectedCells">PHPExcel_Style_Fill::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSelectedCells">PHPExcel_Style_Font::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetSelectedCells">PHPExcel_Style_Border::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetSelectedCells">PHPExcel_Style::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetSelectedCells">PHPExcel_Style_Protection::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectLockedCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSelectLockedCells">PHPExcel_Worksheet_Protection::getSelectLockedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get SelectLockedCells</dd> + <dt><b>getSelectUnlockedCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSelectUnlockedCells">PHPExcel_Worksheet_Protection::getSelectUnlockedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get SelectUnlockedCells</dd> + <dt><b>getShadow</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetShadow">PHPExcel_Worksheet_BaseDrawing::getShadow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Shadow</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetSharedComponent">PHPExcel_Style_Border::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetSharedComponent">PHPExcel_Style_Protection::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetSharedComponent">PHPExcel_Style_Fill::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetSharedComponent">PHPExcel_Style_Alignment::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetSharedComponent">PHPExcel_Style_Color::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetSharedComponent">PHPExcel_Style_NumberFormat::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetSharedComponent">PHPExcel_Style::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSharedComponent">PHPExcel_Style_Font::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetSharedComponent">PHPExcel_Style_Borders::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSheet</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetSheet">PHPExcel::getSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet by index</dd> + <dt><b>getSheet</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSheet">PHPExcel_Worksheet_Protection::getSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Sheet</dd> + <dt><b>getSheetByName</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetSheetByName">PHPExcel::getSheetByName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet by name</dd> + <dt><b>getSheetCount</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetSheetCount">PHPExcel::getSheetCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet count</dd> + <dt><b>getSheetIndex</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodgetSheetIndex">PHPExcel_Reader_HTML::getSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>getSheetIndex</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetSheetIndex">PHPExcel_Writer_HTML::getSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>getSheetIndex</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetSheetIndex">PHPExcel_Reader_CSV::getSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>getSheetIndex</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetSheetIndex">PHPExcel_Writer_CSV::getSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>getSheetIndex</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodgetSheetIndex">PHPExcel_Reader_SYLK::getSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>getSheetNames</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetSheetNames">PHPExcel::getSheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet names</dd> + <dt><b>getSheetState</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSheetState">PHPExcel_Worksheet::getSheetState()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet state</dd> + <dt><b>getSheetView</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSheetView">PHPExcel_Worksheet::getSheetView()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet view</dd> + <dt><b>getShowBubbleSize</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowBubbleSize">PHPExcel_Chart_Layout::getShowBubbleSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show bubble size</dd> + <dt><b>getShowCatName</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowCatName">PHPExcel_Chart_Layout::getShowCatName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show category name</dd> + <dt><b>getShowDropDown</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetShowDropDown">PHPExcel_Cell_DataValidation::getShowDropDown()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Show DropDown</dd> + <dt><b>getShowErrorMessage</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetShowErrorMessage">PHPExcel_Cell_DataValidation::getShowErrorMessage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Show ErrorMessage</dd> + <dt><b>getShowGridlines</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowGridlines">PHPExcel_Worksheet::getShowGridlines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Show gridlines?</dd> + <dt><b>getShowInputMessage</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetShowInputMessage">PHPExcel_Cell_DataValidation::getShowInputMessage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Show InputMessage</dd> + <dt><b>getShowLeaderLines</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowLeaderLines">PHPExcel_Chart_Layout::getShowLeaderLines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show leader lines</dd> + <dt><b>getShowLegendKey</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowLegendKey">PHPExcel_Chart_Layout::getShowLegendKey()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show legend key</dd> + <dt><b>getShowPercent</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowPercent">PHPExcel_Chart_Layout::getShowPercent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show percentage</dd> + <dt><b>getShowRowColHeaders</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowRowColHeaders">PHPExcel_Worksheet::getShowRowColHeaders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Show row and column headers?</dd> + <dt><b>getShowSerName</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowSerName">PHPExcel_Chart_Layout::getShowSerName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show data series name</dd> + <dt><b>getShowSummaryBelow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowSummaryBelow">PHPExcel_Worksheet::getShowSummaryBelow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Show summary below? (Row/Column outlining)</dd> + <dt><b>getShowSummaryRight</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowSummaryRight">PHPExcel_Worksheet::getShowSummaryRight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Show summary right? (Row/Column outlining)</dd> + <dt><b>getShowVal</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowVal">PHPExcel_Chart_Layout::getShowVal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show value</dd> + <dt><b>getShrinkToFit</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetShrinkToFit">PHPExcel_Style_Alignment::getShrinkToFit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Shrink to fit</dd> + <dt><b>getSingularValues</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodgetSingularValues">SingularValueDecomposition::getSingularValues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the one-dimensional array of singular values</dd> + <dt><b>getSize</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSize">PHPExcel_Style_Font::getSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Size</dd> + <dt><b>getSlope</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetSlope">PHPExcel_Exponential_Best_Fit::getSlope()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Slope of the line</dd> + <dt><b>getSlope</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetSlope">PHPExcel_Polynomial_Best_Fit::getSlope()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Slope of the line</dd> + <dt><b>getSlope</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlope">PHPExcel_Best_Fit::getSlope()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Slope of the line</dd> + <dt><b>getSlopeSE</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlopeSE">PHPExcel_Best_Fit::getSlopeSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the standard error of the Slope</dd> + <dt><b>getSmoothLine</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetSmoothLine">PHPExcel_Chart_DataSeries::getSmoothLine()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Smooth Line</dd> + <dt><b>getSort</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSort">PHPExcel_Worksheet_Protection::getSort()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Sort</dd> + <dt><b>getSortedCellList</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sort the list of all cell addresses currently held in cache by row and column</dd> + <dt><b>getSortedCellList</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_ICache::getSortedCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the list of all cell addresses currently held in cache sorted by column and row</dd> + <dt><b>getSpFlag</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpFlag">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getSpFlag()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shape flag</dd> + <dt><b>getSpgr</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpgr">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getSpgr()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get whether this is a group shape</dd> + <dt><b>getSpgrContainer</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodgetSpgrContainer">PHPExcel_Shared_Escher_DgContainer::getSpgrContainer()</a></dd> + <dt><b>getSpId</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpId">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getSpId()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shape index</dd> + <dt><b>getSpIdMax</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetSpIdMax">PHPExcel_Shared_Escher_DggContainer::getSpIdMax()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get maximum shape index of all shapes in all drawings (plus one)</dd> + <dt><b>getSpOffsets</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#methodgetSpOffsets">PHPExcel_Writer_Excel5_Escher::getSpOffsets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets the shape offsets</dd> + <dt><b>getSpType</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpType">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getSpType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shape type</dd> + <dt><b>getSpTypes</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#methodgetSpTypes">PHPExcel_Writer_Excel5_Escher::getSpTypes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets the shape types</dd> + <dt><b>getSSRegression</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSRegression">PHPExcel_Best_Fit::getSSRegression()</a></dd> + <dt><b>getSSResiduals</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSResiduals">PHPExcel_Best_Fit::getSSResiduals()</a></dd> + <dt><b>getStartColor</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetStartColor">PHPExcel_Style_Fill::getStartColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Start Color</dd> + <dt><b>getStartCoordinates</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetStartCoordinates">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getStartCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell coordinates of upper-left corner of shape</dd> + <dt><b>getStartOffsetX</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetStartOffsetX">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getStartOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get offset in x-direction of upper-left corner of shape measured in 1/1024 of column width</dd> + <dt><b>getStartOffsetY</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetStartOffsetY">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getStartOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get offset in y-direction of upper-left corner of shape measured in 1/256 of row height</dd> + <dt><b>getStdevOfResiduals</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetStdevOfResiduals">PHPExcel_Best_Fit::getStdevOfResiduals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the standard deviation of the residuals for this regression</dd> + <dt><b>getStream</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodgetStream">PHPExcel_Shared_OLE::getStream()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns a stream for use with fread() etc. External callers should use PHPExcel_Shared_OLE_PPS_File::getStream().</dd> + <dt><b>getStream</b></dt> + <dd>in file OLERead.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#methodgetStream">PHPExcel_Shared_OLERead::getStream()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Extract binary stream data</dd> + <dt><b>getStream</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#methodgetStream">PHPExcel_Shared_OLE_PPS_File::getStream()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns a stream for reading this file using fread() etc.</dd> + <dt><b>getStrikethrough</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetStrikethrough">PHPExcel_Style_Font::getStrikethrough()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Strikethrough</dd> + <dt><b>getStriketrough</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetStriketrough">PHPExcel_Style_Font::getStriketrough()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Striketrough</dd> + <dt><b>getStringTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetStringTable">PHPExcel_Writer_Excel2007::getStringTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get string table</dd> + <dt><b>getStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetStyle">PHPExcel_Worksheet::getStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get style for cell</dd> + <dt><b>getStyle</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetStyle">PHPExcel_Style_Conditional::getStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Style</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetStyleArray">PHPExcel_Style_Color::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetStyleArray">PHPExcel_Style_Border::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetStyleArray">PHPExcel_Style_Font::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetStyleArray">PHPExcel_Style_NumberFormat::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetStyleArray">PHPExcel_Style_Alignment::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetStyleArray">PHPExcel_Style_Borders::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetStyleArray">PHPExcel_Style_Fill::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetStyleArray">PHPExcel_Style_Protection::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetStyleByColumnAndRow">PHPExcel_Worksheet::getStyleByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get style for cell by using numeric cell coordinates</dd> + <dt><b>getStyles</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetStyles">PHPExcel_Worksheet::getStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get styles</dd> + <dt><b>getStylesConditionalHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetStylesConditionalHashTable">PHPExcel_Writer_Excel2007::getStylesConditionalHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Style_Conditional HashTable</dd> + <dt><b>getSubject</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetSubject">PHPExcel_DocumentProperties::getSubject()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Subject</dd> + <dt><b>getSubScript</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSubScript">PHPExcel_Style_Font::getSubScript()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get SubScript</dd> + <dt><b>getSuperScript</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSuperScript">PHPExcel_Style_Font::getSuperScript()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get SuperScript</dd> + <dt><b>getTabColor</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetTabColor">PHPExcel_Worksheet::getTabColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get tab color</dd> + <dt><b>getTempDir</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetTempDir">PHPExcel_Writer_PDF_Core::getTempDir()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get temporary storage directory</dd> + <dt><b>getText</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetText">PHPExcel_Comment::getText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Rich text comment</dd> + <dt><b>getText</b></dt> + <dd>in file ITextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetText">PHPExcel_RichText_ITextElement::getText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get text</dd> + <dt><b>getText</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetText">PHPExcel_Style_Conditional::getText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get text</dd> + <dt><b>getText</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetText">PHPExcel_RichText_TextElement::getText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get text</dd> + <dt><b>getTextRotation</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetTextRotation">PHPExcel_Style_Alignment::getTextRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get TextRotation</dd> + <dt><b>getTextWidthPixelsApprox</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTextWidthPixelsApprox">PHPExcel_Shared_Font::getTextWidthPixelsApprox()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get approximate width in pixels for a string of text in a certain font at a certain rotation angle</dd> + <dt><b>getTextWidthPixelsExact</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTextWidthPixelsExact">PHPExcel_Shared_Font::getTextWidthPixelsExact()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get GD text width in pixels for a string of text in a certain font at a certain rotation angle</dd> + <dt><b>getThemeName</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#methodgetThemeName">PHPExcel_Reader_Excel2007_Theme::getThemeName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Theme Name</dd> + <dt><b>getThousandsSeparator</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetThousandsSeparator">PHPExcel_Shared_String::getThousandsSeparator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the thousands separator. If it has not yet been set explicitly, try to obtain number formatting information from locale.</dd> + <dt><b>getTitle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetTitle">PHPExcel_Worksheet::getTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get title</dd> + <dt><b>getTitle</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTitle">PHPExcel_Chart::getTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Title</dd> + <dt><b>getTitle</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetTitle">PHPExcel_DocumentProperties::getTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Title</dd> + <dt><b>getToken</b></dt> + <dd>in file FormulaParser.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetToken">PHPExcel_Calculation_FormulaParser::getToken()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Token</dd> + <dt><b>getTokenCount</b></dt> + <dd>in file FormulaParser.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetTokenCount">PHPExcel_Calculation_FormulaParser::getTokenCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Token count</dd> + <dt><b>getTokens</b></dt> + <dd>in file FormulaParser.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetTokens">PHPExcel_Calculation_FormulaParser::getTokens()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Tokens</dd> + <dt><b>getTokenSubType</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodgetTokenSubType">PHPExcel_Calculation_FormulaToken::getTokenSubType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Token SubType (represented by TOKEN_SUBTYPE_*)</dd> + <dt><b>getTokenType</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodgetTokenType">PHPExcel_Calculation_FormulaToken::getTokenType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Token Type (represented by TOKEN_TYPE_*)</dd> + <dt><b>getTooltip</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodgetTooltip">PHPExcel_Cell_Hyperlink::getTooltip()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get tooltip</dd> + <dt><b>getTop</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetTop">PHPExcel_Worksheet_PageMargins::getTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Top</dd> + <dt><b>getTop</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetTop">PHPExcel_Style_Borders::getTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Top</dd> + <dt><b>getTopLeftCell</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftCell">PHPExcel_Chart::getTopLeftCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the cell address where the top left of the chart is fixed</dd> + <dt><b>getTopLeftOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftOffset">PHPExcel_Chart::getTopLeftOffset()</a></dd> + <dt><b>getTopLeftPosition</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftPosition">PHPExcel_Chart::getTopLeftPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the top left position of the chart</dd> + <dt><b>getTopLeftXOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftXOffset">PHPExcel_Chart::getTopLeftXOffset()</a></dd> + <dt><b>getTopLeftYOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftYOffset">PHPExcel_Chart::getTopLeftYOffset()</a></dd> + <dt><b>getTRUE</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetTRUE">PHPExcel_Calculation::getTRUE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the locale-specific translation of TRUE</dd> + <dt><b>getTrueTypeFontFileFromFont</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTrueTypeFontFileFromFont">PHPExcel_Shared_Font::getTrueTypeFontFileFromFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the font path given the font</dd> + <dt><b>getTrueTypeFontPath</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTrueTypeFontPath">PHPExcel_Shared_Font::getTrueTypeFontPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the path to the folder containing .ttf files.</dd> + <dt><b>getType</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetType">PHPExcel_Cell_DataValidation::getType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Type</dd> + <dt><b>getU</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodgetU">SingularValueDecomposition::getU()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the left singular vectors</dd> + <dt><b>getU</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetU">PHPExcel_Shared_JAMA_LUDecomposition::getU()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get upper triangular factor.</dd> + <dt><b>getUnderline</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetUnderline">PHPExcel_Style_Font::getUnderline()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Underline</dd> + <dt><b>getUrl</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodgetUrl">PHPExcel_Cell_Hyperlink::getUrl()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get URL</dd> + <dt><b>getUseBOM</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetUseBOM">PHPExcel_Writer_CSV::getUseBOM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get whether BOM should be used</dd> + <dt><b>getUseDiskCaching</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetUseDiskCaching">PHPExcel_Writer_Excel2007::getUseDiskCaching()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get use disk caching where possible?</dd> + <dt><b>getUseInlineCss</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetUseInlineCss">PHPExcel_Writer_HTML::getUseInlineCss()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get use inline CSS?</dd> + <dt><b>getV</b></dt> + <dd>in file EigenvalueDecomposition.php, method <a href="JAMA/EigenvalueDecomposition.html#methodgetV">EigenvalueDecomposition::getV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the eigenvector matrix</dd> + <dt><b>getV</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodgetV">SingularValueDecomposition::getV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the right singular vectors</dd> + <dt><b>getValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetValue">PHPExcel_Cell::getValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell value</dd> + <dt><b>getValue</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodgetValue">PHPExcel_Calculation_FormulaToken::getValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Value</dd> + <dt><b>getValue</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetValue">PHPExcel_Worksheet_AutoFilter_Column_Rule::getValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Rule Value</dd> + <dt><b>getValueBinder</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetValueBinder">PHPExcel_Cell::getValueBinder()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get value binder to use</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file powerBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Power_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Polynomial_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Exponential_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file linearBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Linear_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file logarithmicBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Logarithmic_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Exponential_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file linearBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Linear_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file logarithmicBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Logarithmic_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file powerBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Power_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Polynomial_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getVertical</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetVertical">PHPExcel_Style_Borders::getVertical()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Vertical (pseudo-border). Only applies to supervisor.</dd> + <dt><b>getVertical</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetVertical">PHPExcel_Style_Alignment::getVertical()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Vertical</dd> + <dt><b>getVerticalCentered</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetVerticalCentered">PHPExcel_Worksheet_PageSetup::getVerticalCentered()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get center page vertically</dd> + <dt><b>getView</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodgetView">PHPExcel_Worksheet_SheetView::getView()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get View</dd> + <dt><b>getVisible</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetVisible">PHPExcel_Worksheet_Drawing_Shadow::getVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Visible</dd> + <dt><b>getVisible</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetVisible">PHPExcel_Comment::getVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is the comment visible by default?</dd> + <dt><b>getVisible</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetVisible">PHPExcel_Worksheet_RowDimension::getVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Visible</dd> + <dt><b>getVisible</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetVisible">PHPExcel_Worksheet_ColumnDimension::getVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Visible</dd> + <dt><b>getWidth</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetWidth">PHPExcel_Worksheet_ColumnDimension::getWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Width</dd> + <dt><b>getWidth</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetWidth">PHPExcel_Comment::getWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get comment width (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>getWidth</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetWidth">PHPExcel_Chart_Layout::getWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Width</dd> + <dt><b>getWidth</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetWidth">PHPExcel_Worksheet_HeaderFooterDrawing::getWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Width</dd> + <dt><b>getWidth</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWidth">PHPExcel_Worksheet_BaseDrawing::getWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Width</dd> + <dt><b>getWorkbookPassword</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodgetWorkbookPassword">PHPExcel_DocumentSecurity::getWorkbookPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get WorkbookPassword (hashed)</dd> + <dt><b>getWorksheet</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodgetWorksheet">PHPExcel_NamedRange::getWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get worksheet</dd> + <dt><b>getWorksheet</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWorksheet">PHPExcel_Worksheet_BaseDrawing::getWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Worksheet</dd> + <dt><b>getWorksheet</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetWorksheet">PHPExcel_Chart::getWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Worksheet</dd> + <dt><b>getWorksheetIterator</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetWorksheetIterator">PHPExcel::getWorksheetIterator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get worksheet iterator</dd> + <dt><b>getWrapText</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetWrapText">PHPExcel_Style_Alignment::getWrapText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Wrap Text</dd> + <dt><b>getWriterPart</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetWriterPart">PHPExcel_Writer_Excel2007::getWriterPart()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get writer part</dd> + <dt><b>getXAxisLabel</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetXAxisLabel">PHPExcel_Chart::getXAxisLabel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get X-Axis Label</dd> + <dt><b>getXfIndex</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetXfIndex">PHPExcel_Worksheet_RowDimension::getXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get index to cellXf</dd> + <dt><b>getXfIndex</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetXfIndex">PHPExcel_Worksheet_ColumnDimension::getXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get index to cellXf</dd> + <dt><b>getXfIndex</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetXfIndex">PHPExcel_Cell::getXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get index to cellXf</dd> + <dt><b>getXMode</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetXMode">PHPExcel_Chart_Layout::getXMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get X-Mode</dd> + <dt><b>getXPosition</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetXPosition">PHPExcel_Chart_Layout::getXPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get X-Position</dd> + <dt><b>getXValues</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetXValues">PHPExcel_Best_Fit::getXValues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the original set of X-Values</dd> + <dt><b>getYAxisLabel</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetYAxisLabel">PHPExcel_Chart::getYAxisLabel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Y-Axis Label</dd> + <dt><b>getYBestFitValues</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetYBestFitValues">PHPExcel_Best_Fit::getYBestFitValues()</a></dd> + <dt><b>getYMode</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetYMode">PHPExcel_Chart_Layout::getYMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Y-Mode</dd> + <dt><b>getYPosition</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetYPosition">PHPExcel_Chart_Layout::getYPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Y-Position</dd> + <dt><b>getzeroHeight</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetzeroHeight">PHPExcel_Worksheet_RowDimension::getzeroHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ZeroHeight</dd> + <dt><b>getZipClass</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetZipClass">PHPExcel_Settings::getZipClass()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the name of the Zip handler Class that PHPExcel is configured to use (PCLZip or ZipArchive) for Zip file management</dd> + <dt><b>getZoomScale</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodgetZoomScale">PHPExcel_Worksheet_SheetView::getZoomScale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ZoomScale</dd> + <dt><b>getZoomScaleNormal</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodgetZoomScaleNormal">PHPExcel_Worksheet_SheetView::getZoomScaleNormal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ZoomScaleNormal</dd> + <dt><b>grad</b></dt> + <dd>in file LMQuadTest.php, method <a href="PHPExcel/LMQuadTest.html#methodgrad">LMQuadTest::grad()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;z = (p-o)'S'S(p-o) dz/dp = 2S'S(p-o)</dd> + <dt><b>GROUPING_CLUSTERED</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_CLUSTERED">PHPExcel_Chart_DataSeries::GROUPING_CLUSTERED</a></dd> + <dt><b>GROUPING_PERCENT_STACKED</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_PERCENT_STACKED">PHPExcel_Chart_DataSeries::GROUPING_PERCENT_STACKED</a></dd> + <dt><b>GROUPING_STACKED</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_STACKED">PHPExcel_Chart_DataSeries::GROUPING_STACKED</a></dd> + <dt><b>GROUPING_STANDARD</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_STANDARD">PHPExcel_Chart_DataSeries::GROUPING_STANDARD</a></dd> + <dt><b>GROWTH</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGROWTH">PHPExcel_Calculation_Statistical::GROWTH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GROWTH</dd> + <dt><b>Gnumeric.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html">Gnumeric.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="h"></a> + <div> + <h2>h</h2> + <dl> + <dt><b>HARMEAN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodHARMEAN">PHPExcel_Calculation_Statistical::HARMEAN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HARMEAN</dd> + <dt><b>harmonicMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodharmonicMean">Base::harmonicMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the harmonic mean of the data points in the set Handles cummulative data sets correctly</dd> + <dt><b>hasDataValidation</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodhasDataValidation">PHPExcel_Cell::hasDataValidation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Does this cell contain Data validation rules?</dd> + <dt><b>hashPassword</b></dt> + <dd>in file PasswordHasher.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html#methodhashPassword">PHPExcel_Shared_PasswordHasher::hashPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a password hash from a given string.</dd> + <dt><b>hasHyperlink</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodhasHyperlink">PHPExcel_Cell::hasHyperlink()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Does this cell contain a Hyperlink?</dd> + <dt><b>HEXTOBIN</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodHEXTOBIN">PHPExcel_Calculation_Engineering::HEXTOBIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HEXTOBIN</dd> + <dt><b>HEXTODEC</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodHEXTODEC">PHPExcel_Calculation_Engineering::HEXTODEC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HEXTODEC</dd> + <dt><b>HEXTOOCT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodHEXTOOCT">PHPExcel_Calculation_Engineering::HEXTOOCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HEXTOOCT</dd> + <dt><b>HORIZONTAL_CENTER</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_CENTER">PHPExcel_Style_Alignment::HORIZONTAL_CENTER</a></dd> + <dt><b>HORIZONTAL_CENTER_CONTINUOUS</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_CENTER_CONTINUOUS">PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS</a></dd> + <dt><b>HORIZONTAL_GENERAL</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_GENERAL">PHPExcel_Style_Alignment::HORIZONTAL_GENERAL</a></dd> + <dt><b>HORIZONTAL_JUSTIFY</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_JUSTIFY">PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY</a></dd> + <dt><b>HORIZONTAL_LEFT</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_LEFT">PHPExcel_Style_Alignment::HORIZONTAL_LEFT</a></dd> + <dt><b>HORIZONTAL_RIGHT</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_RIGHT">PHPExcel_Style_Alignment::HORIZONTAL_RIGHT</a></dd> + <dt><b>HOUROFDAY</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodHOUROFDAY">PHPExcel_Calculation_DateTime::HOUROFDAY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HOUROFDAY</dd> + <dt><b>HYPERLINK</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodHYPERLINK">PHPExcel_Calculation_LookupRef::HYPERLINK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HYPERLINK</dd> + <dt><b>hyperlinkExists</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodhyperlinkExists">PHPExcel_Worksheet::hyperlinkExists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Hyperlink at a specific coordinate exists?</dd> + <dt><b>HYPGEOMDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodHYPGEOMDIST">PHPExcel_Calculation_Statistical::HYPGEOMDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HYPGEOMDIST</dd> + <dt><b>hypo</b></dt> + <dd>in file Maths.php, function <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html#functionhypo">hypo()</a></dd> + <dt><b>Hyperlink.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html">Hyperlink.php</a></dd> + <dt><b>HashTable.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---HashTable.php.html">HashTable.php</a></dd> + <dt><b>HTML.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html">HTML.php</a></dd> + <dt><b>HeaderFooter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html">HeaderFooter.php</a></dd> + <dt><b>HeaderFooterDrawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html">HeaderFooterDrawing.php</a></dd> + <dt><b>HTML.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html">HTML.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>IDENTIFIER_OLE</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constIDENTIFIER_OLE">PHPExcel_Shared_OLERead::IDENTIFIER_OLE</a></dd> + <dt><b>IDENTIFIER_OLE</b></dt> + <dd>in file OLERead.php, constant <a href="PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html#defineIDENTIFIER_OLE">IDENTIFIER_OLE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel</dd> + <dt><b>identify</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodidentify">PHPExcel_IOFactory::identify()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify file type using automatic PHPExcel_Reader_IReader resolution</dd> + <dt><b>identity</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodidentity">PHPExcel_Shared_JAMA_Matrix::identity()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;identity</dd> + <dt><b>IFERROR</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodIFERROR">PHPExcel_Calculation_Logical::IFERROR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IFERROR</dd> + <dt><b>IMABS</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMABS">PHPExcel_Calculation_Engineering::IMABS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMABS</dd> + <dt><b>imagecreatefrombmp</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodimagecreatefrombmp">PHPExcel_Shared_Drawing::imagecreatefrombmp()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new image from file. By alexander at alexauto dot nl</dd> + <dt><b>IMAGE_FOOTER_CENTER</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_FOOTER_CENTER">PHPExcel_Worksheet_HeaderFooter::IMAGE_FOOTER_CENTER</a></dd> + <dt><b>IMAGE_FOOTER_LEFT</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_FOOTER_LEFT">PHPExcel_Worksheet_HeaderFooter::IMAGE_FOOTER_LEFT</a></dd> + <dt><b>IMAGE_FOOTER_RIGHT</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_FOOTER_RIGHT">PHPExcel_Worksheet_HeaderFooter::IMAGE_FOOTER_RIGHT</a></dd> + <dt><b>IMAGE_HEADER_CENTER</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_HEADER_CENTER">PHPExcel_Worksheet_HeaderFooter::IMAGE_HEADER_CENTER</a></dd> + <dt><b>IMAGE_HEADER_LEFT</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_HEADER_LEFT">PHPExcel_Worksheet_HeaderFooter::IMAGE_HEADER_LEFT</a></dd> + <dt><b>IMAGE_HEADER_RIGHT</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_HEADER_RIGHT">PHPExcel_Worksheet_HeaderFooter::IMAGE_HEADER_RIGHT</a></dd> + <dt><b>IMAGINARY</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMAGINARY">PHPExcel_Calculation_Engineering::IMAGINARY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMAGINARY</dd> + <dt><b>IMARGUMENT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMARGUMENT">PHPExcel_Calculation_Engineering::IMARGUMENT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMARGUMENT</dd> + <dt><b>IMCONJUGATE</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMCONJUGATE">PHPExcel_Calculation_Engineering::IMCONJUGATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMCONJUGATE</dd> + <dt><b>IMCOS</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMCOS">PHPExcel_Calculation_Engineering::IMCOS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMCOS</dd> + <dt><b>IMDIV</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMDIV">PHPExcel_Calculation_Engineering::IMDIV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMDIV</dd> + <dt><b>IMEXP</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMEXP">PHPExcel_Calculation_Engineering::IMEXP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMEXP</dd> + <dt><b>IMLN</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMLN">PHPExcel_Calculation_Engineering::IMLN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMLN</dd> + <dt><b>IMLOG2</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMLOG2">PHPExcel_Calculation_Engineering::IMLOG2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMLOG2</dd> + <dt><b>IMLOG10</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMLOG10">PHPExcel_Calculation_Engineering::IMLOG10()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMLOG10</dd> + <dt><b>IMPACT</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constIMPACT">PHPExcel_Shared_Font::IMPACT</a></dd> + <dt><b>IMPOWER</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMPOWER">PHPExcel_Calculation_Engineering::IMPOWER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMPOWER</dd> + <dt><b>IMPRODUCT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMPRODUCT">PHPExcel_Calculation_Engineering::IMPRODUCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMPRODUCT</dd> + <dt><b>IMREAL</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMREAL">PHPExcel_Calculation_Engineering::IMREAL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMREAL</dd> + <dt><b>IMSIN</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSIN">PHPExcel_Calculation_Engineering::IMSIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMSIN</dd> + <dt><b>IMSQRT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSQRT">PHPExcel_Calculation_Engineering::IMSQRT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMSQRT</dd> + <dt><b>IMSUB</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSUB">PHPExcel_Calculation_Engineering::IMSUB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMSUB</dd> + <dt><b>IMSUM</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSUM">PHPExcel_Calculation_Engineering::IMSUM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMSUM</dd> + <dt><b>inchSizeToPixels</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodinchSizeToPixels">PHPExcel_Shared_Font::inchSizeToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate an (approximate) pixel size, based on inch size</dd> + <dt><b>INDEX</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodINDEX">PHPExcel_Calculation_LookupRef::INDEX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;INDEX</dd> + <dt><b>indexedColor</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodindexedColor">PHPExcel_Style_Color::indexedColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get indexed color</dd> + <dt><b>INDIRECT</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodINDIRECT">PHPExcel_Calculation_LookupRef::INDIRECT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;INDIRECT</dd> + <dt><b>init</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#methodinit">PHPExcel_Shared_OLE_PPS_File::init()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialization method. Has to be called right after OLE_PPS_File().</dd> + <dt><b>initial</b></dt> + <dd>in file LMQuadTest.php, method <a href="PHPExcel/LMQuadTest.html#methodinitial">LMQuadTest::initial()</a></dd> + <dt><b>initialize</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodinitialize">PHPExcel_CachedObjectStorageFactory::initialize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify the cache storage method to use</dd> + <dt><b>insertBitmap</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodinsertBitmap">PHPExcel_Writer_Excel5_Worksheet::insertBitmap()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Insert a 24bit bitmap image in a worksheet.</dd> + <dt><b>insertNewBefore</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#methodinsertNewBefore">PHPExcel_ReferenceHelper::insertNewBefore()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Insert a new column, updating all possible related data</dd> + <dt><b>insertNewColumnBefore</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodinsertNewColumnBefore">PHPExcel_Worksheet::insertNewColumnBefore()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Insert a new column, updating all possible related data</dd> + <dt><b>insertNewColumnBeforeByIndex</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodinsertNewColumnBeforeByIndex">PHPExcel_Worksheet::insertNewColumnBeforeByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Insert a new column, updating all possible related data</dd> + <dt><b>insertNewRowBefore</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodinsertNewRowBefore">PHPExcel_Worksheet::insertNewRowBefore()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Insert a new row, updating all possible related data</dd> + <dt><b>INT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodINT">PHPExcel_Calculation_MathTrig::INT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;INT</dd> + <dt><b>INTERCEPT</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodINTERCEPT">PHPExcel_Calculation_Statistical::INTERCEPT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;INTERCEPT</dd> + <dt><b>interquartileMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodinterquartileMean">Base::interquartileMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The interquartile mean is defined as the mean of the values left after discarding the lower 25% and top 25% ranked values, i.e.:</dd> + <dt><b>interquartileRange</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodinterquartileRange">Base::interquartileRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The interquartile range is the distance between the 75th and 25th percentiles. Basically the range of the middle 50% of the data set, and thus is not affected by outliers or extreme values.</dd> + <dt><b>INTRATE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodINTRATE">PHPExcel_Calculation_Financial::INTRATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;INTRATE</dd> + <dt><b>inverse</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodinverse">PHPExcel_Shared_JAMA_Matrix::inverse()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Matrix inverse or pseudoinverse.</dd> + <dt><b>IPMT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodIPMT">PHPExcel_Calculation_Financial::IPMT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IPMT</dd> + <dt><b>IRR</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodIRR">PHPExcel_Calculation_Financial::IRR()</a></dd> + <dt><b>isCellValue</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodisCellValue">PHPExcel_Calculation_Functions::isCellValue()</a></dd> + <dt><b>isColumnsToRepeatAtLeftSet</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodisColumnsToRepeatAtLeftSet">PHPExcel_Worksheet_PageSetup::isColumnsToRepeatAtLeftSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is Columns to repeat at left set?</dd> + <dt><b>isCustomPropertySet</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodisCustomPropertySet">PHPExcel_DocumentProperties::isCustomPropertySet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check if a Custom Property is defined</dd> + <dt><b>isDataSet</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodisDataSet">PHPExcel_CachedObjectStorage_Memcache::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodisDataSet">PHPExcel_CachedObjectStorage_Wincache::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodisDataSet">PHPExcel_CachedObjectStorage_APC::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodisDataSet">PHPExcel_CachedObjectStorage_ICache::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodisDataSet">PHPExcel_CachedObjectStorage_SQLite::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodisDataSet">PHPExcel_CachedObjectStorage_SQLite3::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + <dt><b>isDateTime</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodisDateTime">PHPExcel_Shared_Date::isDateTime()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a given cell a date/time?</dd> + <dt><b>isDateTimeFormat</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodisDateTimeFormat">PHPExcel_Shared_Date::isDateTimeFormat()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a given number format a date/time?</dd> + <dt><b>isDateTimeFormatCode</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodisDateTimeFormatCode">PHPExcel_Shared_Date::isDateTimeFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a given number format code a date/time?</dd> + <dt><b>isFile</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodisFile">PHPExcel_Shared_OLE::isFile()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks whether a PPS is a File PPS or not.</dd> + <dt><b>isFullRank</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodisFullRank">PHPExcel_Shared_JAMA_QRDecomposition::isFullRank()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is the matrix full rank?</dd> + <dt><b>isImplemented</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodisImplemented">PHPExcel_Calculation::isImplemented()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a specific function implemented?</dd> + <dt><b>isInRange</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodisInRange">PHPExcel_Cell::isInRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is cell in a specific range?</dd> + <dt><b>isInternal</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodisInternal">PHPExcel_Cell_Hyperlink::isInternal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this hyperlink internal? (to another sheet)</dd> + <dt><b>isMatrixValue</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodisMatrixValue">PHPExcel_Calculation_Functions::isMatrixValue()</a></dd> + <dt><b>isMultiLevelSeries</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodisMultiLevelSeries">PHPExcel_Chart_DataSeriesValues::isMultiLevelSeries()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify if the Data Series is a multi-level or a simple series</dd> + <dt><b>isNonsingular</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodisNonsingular">PHPExcel_Shared_JAMA_LUDecomposition::isNonsingular()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is the matrix nonsingular?</dd> + <dt><b>ISPMT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodISPMT">PHPExcel_Calculation_Financial::ISPMT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ISPMT</dd> + <dt><b>isPrintAreaSet</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodisPrintAreaSet">PHPExcel_Worksheet_PageSetup::isPrintAreaSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is print area set?</dd> + <dt><b>isProtectionEnabled</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodisProtectionEnabled">PHPExcel_Worksheet_Protection::isProtectionEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is some sort of protection enabled?</dd> + <dt><b>isRoot</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodisRoot">PHPExcel_Shared_OLE::isRoot()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks whether a PPS is a Root PPS or not.</dd> + <dt><b>isRowsToRepeatAtTopSet</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodisRowsToRepeatAtTopSet">PHPExcel_Worksheet_PageSetup::isRowsToRepeatAtTopSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is Rows to repeat at top set?</dd> + <dt><b>isSecurityEnabled</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodisSecurityEnabled">PHPExcel_DocumentSecurity::isSecurityEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is some sort of dcument security enabled?</dd> + <dt><b>isSPD</b></dt> + <dd>in file CholeskyDecomposition.php, method <a href="JAMA/CholeskyDecomposition.html#methodisSPD">CholeskyDecomposition::isSPD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is the matrix symmetric and positive definite?</dd> + <dt><b>isTabColorSet</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodisTabColorSet">PHPExcel_Worksheet::isTabColorSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Tab color set?</dd> + <dt><b>IsUTF8</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodIsUTF8">PHPExcel_Shared_String::IsUTF8()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check if a string contains UTF8 data</dd> + <dt><b>isValue</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodisValue">PHPExcel_Calculation_Functions::isValue()</a></dd> + <dt><b>IS_BLANK</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_BLANK">PHPExcel_Calculation_Functions::IS_BLANK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_BLANK</dd> + <dt><b>IS_ERR</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_ERR">PHPExcel_Calculation_Functions::IS_ERR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_ERR</dd> + <dt><b>IS_ERROR</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_ERROR">PHPExcel_Calculation_Functions::IS_ERROR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_ERROR</dd> + <dt><b>IS_EVEN</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_EVEN">PHPExcel_Calculation_Functions::IS_EVEN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_EVEN</dd> + <dt><b>IS_LOGICAL</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_LOGICAL">PHPExcel_Calculation_Functions::IS_LOGICAL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_LOGICAL</dd> + <dt><b>IS_NA</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_NA">PHPExcel_Calculation_Functions::IS_NA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_NA</dd> + <dt><b>IS_NONTEXT</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_NONTEXT">PHPExcel_Calculation_Functions::IS_NONTEXT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_NONTEXT</dd> + <dt><b>IS_NUMBER</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_NUMBER">PHPExcel_Calculation_Functions::IS_NUMBER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_NUMBER</dd> + <dt><b>IS_ODD</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_ODD">PHPExcel_Calculation_Functions::IS_ODD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_ODD</dd> + <dt><b>IS_TEXT</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_TEXT">PHPExcel_Calculation_Functions::IS_TEXT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_TEXT</dd> + <dt><b>ICache.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html">ICache.php</a></dd> + <dt><b>Igbinary.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html">Igbinary.php</a></dd> + <dt><b>IValueBinder.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html">IValueBinder.php</a></dd> + <dt><b>IComparable.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---IComparable.php.html">IComparable.php</a></dd> + <dt><b>IOFactory.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---IOFactory.php.html">IOFactory.php</a></dd> + <dt><b>IReader.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html">IReader.php</a></dd> + <dt><b>IReadFilter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html">IReadFilter.php</a></dd> + <dt><b>ITextElement.php</b></dt> + <dd>procedural page <a href="PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html">ITextElement.php</a></dd> + <dt><b>IWriter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html">IWriter.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="j"></a> + <div> + <h2>j</h2> + <dl> + <dt><b>JAMAError</b></dt> + <dd>in file Error.php, function <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#functionJAMAError">JAMAError()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Custom error handler</dd> + <dt><b>JAMALANG</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineJAMALANG">JAMALANG</a></dd> + <dt><b>jpgraph.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html">jpgraph.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="k"></a> + <div> + <h2>k</h2> + <dl> + <dt><b>key</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodkey">PHPExcel_Worksheet_CellIterator::key()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Current key</dd> + <dt><b>key</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodkey">PHPExcel_Worksheet_RowIterator::key()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current iterator key</dd> + <dt><b>key</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#methodkey">PHPExcel_WorksheetIterator::key()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Current key</dd> + <dt><b>KURT</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodKURT">PHPExcel_Calculation_Statistical::KURT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;KURT</dd> + <dt><b>kurtosis</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodkurtosis">Base::kurtosis()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the kurtosis of the data distribution in the set The kurtosis measures the degrees of peakedness of a distribution.</dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="l"></a> + <div> + <h2>l</h2> + <dl> + <dt><b>LagrangeInterpolation</b></dt> + <dd>in file LagrangeInterpolation.php, class <a href="PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Given n points (x0,y0)...(xn-1,yn-1), the following methid computes the polynomial factors of the n-1't degree polynomial passing through the n points.</dd> + <dt><b>LARGE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLARGE">PHPExcel_Calculation_Statistical::LARGE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LARGE</dd> + <dt><b>last</b></dt> + <dd>in file Stack.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodlast">PHPExcel_Calculation_Token_Stack::last()</a></dd> + <dt><b>LCM</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodLCM">PHPExcel_Calculation_MathTrig::LCM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LCM</dd> + <dt><b>LEFT</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodLEFT">PHPExcel_Calculation_TextData::LEFT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LEFT</dd> + <dt><b>LevenbergMarquardt</b></dt> + <dd>in file LevenbergMarquardt.php, class <a href="PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a></dd> + <dt><b>LIBERATION_SANS</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS">PHPExcel_Shared_Font::LIBERATION_SANS</a></dd> + <dt><b>LIBERATION_SANS_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS_BOLD">PHPExcel_Shared_Font::LIBERATION_SANS_BOLD</a></dd> + <dt><b>LIBERATION_SANS_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS_BOLD_ITALIC">PHPExcel_Shared_Font::LIBERATION_SANS_BOLD_ITALIC</a></dd> + <dt><b>LIBERATION_SANS_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS_ITALIC">PHPExcel_Shared_Font::LIBERATION_SANS_ITALIC</a></dd> + <dt><b>LINEST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLINEST">PHPExcel_Calculation_Statistical::LINEST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LINEST</dd> + <dt><b>listAllFunctionNames</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodlistAllFunctionNames">PHPExcel_Calculation::listAllFunctionNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all Excel function names</dd> + <dt><b>listContent</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodlistContent">PclZip::listContent()</a></dd> + <dt><b>listFunctionNames</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodlistFunctionNames">PHPExcel_Calculation::listFunctionNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of implemented Excel function names</dd> + <dt><b>listFunctions</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodlistFunctions">PHPExcel_Calculation::listFunctions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all implemented functions as an array of function objects</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodlistWorksheetInfo">PHPExcel_Reader_SYLK::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodlistWorksheetInfo">PHPExcel_Reader_Gnumeric::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodlistWorksheetInfo">PHPExcel_Reader_Excel2007::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodlistWorksheetInfo">PHPExcel_Reader_OOCalc::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodlistWorksheetInfo">PHPExcel_Reader_Excel2003XML::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodlistWorksheetInfo">PHPExcel_Reader_Excel5::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodlistWorksheetInfo">PHPExcel_Reader_CSV::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetNames</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodlistWorksheetNames">PHPExcel_Reader_Gnumeric::listWorksheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object</dd> + <dt><b>listWorksheetNames</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodlistWorksheetNames">PHPExcel_Reader_Excel5::listWorksheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object</dd> + <dt><b>listWorksheetNames</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodlistWorksheetNames">PHPExcel_Reader_OOCalc::listWorksheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object</dd> + <dt><b>listWorksheetNames</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodlistWorksheetNames">PHPExcel_Reader_Excel2007::listWorksheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object</dd> + <dt><b>listWorksheetNames</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodlistWorksheetNames">PHPExcel_Reader_Excel2003XML::listWorksheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object</dd> + <dt><b>LMQuadTest</b></dt> + <dd>in file LMQuadTest.php, class <a href="PHPExcel/LMQuadTest.html">LMQuadTest</a><br>&nbsp;&nbsp;&nbsp;&nbsp;quadratic (p-o)'S'S(p-o)</dd> + <dt><b>Load</b></dt> + <dd>in file Autoloader.php, method <a href="PHPExcel/PHPExcel_Autoloader.html#methodLoad">PHPExcel_Autoloader::Load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Autoload a class identified by name</dd> + <dt><b>load</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodload">PHPExcel_Reader_OOCalc::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodload">PHPExcel_Reader_SYLK::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file IReader.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodload">PHPExcel_Reader_IReader::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodload">PHPExcel_Reader_Excel2003XML::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#methodload">PHPExcel_Reader_Excel5_Escher::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Load Escher stream data. May be a partial Escher stream.</dd> + <dt><b>load</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodload">PHPExcel_Reader_Excel5::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodload">PHPExcel_Reader_Excel2007::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodload">PHPExcel_Reader_HTML::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodload">PHPExcel_Reader_Gnumeric::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodload">PHPExcel_Reader_CSV::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodload">PHPExcel_IOFactory::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file using automatic PHPExcel_Reader_IReader resolution</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodloadIntoExisting">PHPExcel_Reader_HTML::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodloadIntoExisting">PHPExcel_Reader_Excel2003XML::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodloadIntoExisting">PHPExcel_Reader_OOCalc::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodloadIntoExisting">PHPExcel_Reader_CSV::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodloadIntoExisting">PHPExcel_Reader_SYLK::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodloadIntoExisting">PHPExcel_Reader_Gnumeric::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + <dt><b>LocalDate2OLE</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodLocalDate2OLE">PHPExcel_Shared_OLE::LocalDate2OLE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Utility function Returns a string for the OLE container with the date given</dd> + <dt><b>LOGEST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLOGEST">PHPExcel_Calculation_Statistical::LOGEST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOGEST</dd> + <dt><b>LOGICAL_AND</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodLOGICAL_AND">PHPExcel_Calculation_Logical::LOGICAL_AND()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOGICAL_AND</dd> + <dt><b>LOGICAL_OR</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodLOGICAL_OR">PHPExcel_Calculation_Logical::LOGICAL_OR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOGICAL_OR</dd> + <dt><b>LOGINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLOGINV">PHPExcel_Calculation_Statistical::LOGINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOGINV</dd> + <dt><b>LOGNORMDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLOGNORMDIST">PHPExcel_Calculation_Statistical::LOGNORMDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOGNORMDIST</dd> + <dt><b>LOG_BASE</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodLOG_BASE">PHPExcel_Calculation_MathTrig::LOG_BASE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOG_BASE</dd> + <dt><b>LOG_GAMMA_X_MAX_VALUE</b></dt> + <dd>in file Statistical.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html#defineLOG_GAMMA_X_MAX_VALUE">LOG_GAMMA_X_MAX_VALUE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOG_GAMMA_X_MAX_VALUE</dd> + <dt><b>LOOKUP</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodLOOKUP">PHPExcel_Calculation_LookupRef::LOOKUP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOOKUP The LOOKUP function searches for value either from a one-row or one-column range or from an array.</dd> + <dt><b>LOWERCASE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodLOWERCASE">PHPExcel_Calculation_TextData::LOWERCASE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOWERCASE</dd> + <dt><b>LUCIDA_CONSOLE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLUCIDA_CONSOLE">PHPExcel_Shared_Font::LUCIDA_CONSOLE</a></dd> + <dt><b>LUCIDA_SANS_UNICODE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLUCIDA_SANS_UNICODE">PHPExcel_Shared_Font::LUCIDA_SANS_UNICODE</a></dd> + <dt><b>Logical.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html">Logical.php</a></dd> + <dt><b>LookupRef.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html">LookupRef.php</a></dd> + <dt><b>Layout.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html">Layout.php</a></dd> + <dt><b>Legend.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html">Legend.php</a></dd> + <dt><b>LagrangeInterpolation.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html">LagrangeInterpolation.php</a></dd> + <dt><b>LagrangeInterpolation2.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html">LagrangeInterpolation2.php</a></dd> + <dt><b>LevenbergMarquardt.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html">LevenbergMarquardt.php</a></dd> + <dt><b>LMQuadTest.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html">LMQuadTest.php</a></dd> + <dt><b>LUDecomposition.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html">LUDecomposition.php</a></dd> + <dt><b>linearBestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html">linearBestFitClass.php</a></dd> + <dt><b>logarithmicBestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html">logarithmicBestFitClass.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="m"></a> + <div> + <h2>m</h2> + <dl> + <dt><b>$magic_quotes_status</b></dt> + <dd>in file pclzip.lib.php, variable <a href="PHPExcel/PclZip.html#var$magic_quotes_status">PclZip::$magic_quotes_status</a></dd> + <dt><b>magic</b></dt> + <dd>in file MagicSquareExample.php, method <a href="JAMA/MagicSquareExample.html#methodmagic">MagicSquareExample::magic()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate magic square test matrix.</dd> + <dt><b>MagicSquareExample</b></dt> + <dd>in file MagicSquareExample.php, class <a href="JAMA/MagicSquareExample.html">MagicSquareExample</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Example of use of Matrix Class, featuring magic squares.</dd> + <dt><b>main</b></dt> + <dd>in file MagicSquareExample.php, method <a href="JAMA/MagicSquareExample.html#methodmain">MagicSquareExample::main()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Tests LU, QR, SVD and symmetric Eig decompositions.</dd> + <dt><b>MATCH</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodMATCH">PHPExcel_Calculation_LookupRef::MATCH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MATCH</dd> + <dt><b>Math_Stats</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodMath_Stats">Base::Math_Stats()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor for the class</dd> + <dt><b>MatrixDimensionException</b></dt> + <dd>in file Matrix.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#constMatrixDimensionException">PHPExcel_Shared_JAMA_Matrix::MatrixDimensionException</a></dd> + <dt><b>MatrixDimensionException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineMatrixDimensionException">MatrixDimensionException</a></dd> + <dt><b>MatrixRankException</b></dt> + <dd>in file QRDecomposition.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#constMatrixRankException">PHPExcel_Shared_JAMA_QRDecomposition::MatrixRankException</a></dd> + <dt><b>MatrixRankException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineMatrixRankException">MatrixRankException</a></dd> + <dt><b>MatrixSingularException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineMatrixSingularException">MatrixSingularException</a></dd> + <dt><b>MatrixSingularException</b></dt> + <dd>in file LUDecomposition.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#constMatrixSingularException">PHPExcel_Shared_JAMA_LUDecomposition::MatrixSingularException</a></dd> + <dt><b>MatrixSPDException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineMatrixSPDException">MatrixSPDException</a></dd> + <dt><b>MatrixSquareException</b></dt> + <dd>in file LUDecomposition.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#constMatrixSquareException">PHPExcel_Shared_JAMA_LUDecomposition::MatrixSquareException</a></dd> + <dt><b>MAX</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMAX">PHPExcel_Calculation_Statistical::MAX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MAX</dd> + <dt><b>max</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmax">Base::max()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the maximum of a data set.</dd> + <dt><b>MAXA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMAXA">PHPExcel_Calculation_Statistical::MAXA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MAXA</dd> + <dt><b>MAXIF</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMAXIF">PHPExcel_Calculation_Statistical::MAXIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MAXIF</dd> + <dt><b>MAX_ITERATIONS</b></dt> + <dd>in file Functions.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#defineMAX_ITERATIONS">MAX_ITERATIONS</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MAX_ITERATIONS</dd> + <dt><b>MAX_VALUE</b></dt> + <dd>in file Functions.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#defineMAX_VALUE">MAX_VALUE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MAX_VALUE</dd> + <dt><b>mb_str_replace</b></dt> + <dd>in file Functions.php, function <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#functionmb_str_replace">mb_str_replace()</a></dd> + <dt><b>MDETERM</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMDETERM">PHPExcel_Calculation_MathTrig::MDETERM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MDETERM</dd> + <dt><b>mean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmean">Base::mean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the mean (average) of the data points in the set Handles cummulative data sets correctly</dd> + <dt><b>median</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmedian">Base::median()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the median of a data set.</dd> + <dt><b>MEDIAN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMEDIAN">PHPExcel_Calculation_Statistical::MEDIAN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MEDIAN</dd> + <dt><b>merge</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodmerge">PclZip::merge()</a></dd> + <dt><b>mergeCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodmergeCells">PHPExcel_Worksheet::mergeCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set merge on a cell range</dd> + <dt><b>mergeCellsByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodmergeCellsByColumnAndRow">PHPExcel_Worksheet::mergeCellsByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set merge on a cell range by using numeric cell coordinates</dd> + <dt><b>MICROSOFT_SANS_SERIF</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constMICROSOFT_SANS_SERIF">PHPExcel_Shared_Font::MICROSOFT_SANS_SERIF</a></dd> + <dt><b>microtime_float</b></dt> + <dd>in file MagicSquareExample.php, method <a href="JAMA/MagicSquareExample.html#methodmicrotime_float">MagicSquareExample::microtime_float()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Simple function to replicate PHP 5 behaviour</dd> + <dt><b>microtime_float</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodmicrotime_float">Benchmark::microtime_float()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Simple function to replicate PHP 5 behaviour</dd> + <dt><b>MID</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodMID">PHPExcel_Calculation_TextData::MID()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MID</dd> + <dt><b>midrange</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmidrange">Base::midrange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the midrange of a data set.</dd> + <dt><b>MIMETYPE_DEFAULT</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_DEFAULT">PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT</a></dd> + <dt><b>MIMETYPE_GIF</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_GIF">PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_GIF</a></dd> + <dt><b>MIMETYPE_JPEG</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_JPEG">PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_JPEG</a></dd> + <dt><b>MIMETYPE_PNG</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_PNG">PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_PNG</a></dd> + <dt><b>min</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmin">Base::min()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the minimum of a data set.</dd> + <dt><b>MIN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMIN">PHPExcel_Calculation_Statistical::MIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MIN</dd> + <dt><b>MINA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMINA">PHPExcel_Calculation_Statistical::MINA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MINA</dd> + <dt><b>MINIF</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMINIF">PHPExcel_Calculation_Statistical::MINIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MINIF</dd> + <dt><b>minus</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodminus">PHPExcel_Shared_JAMA_Matrix::minus()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;minus</dd> + <dt><b>minusEquals</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodminusEquals">PHPExcel_Shared_JAMA_Matrix::minusEquals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;minusEquals</dd> + <dt><b>MINUTEOFHOUR</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodMINUTEOFHOUR">PHPExcel_Calculation_DateTime::MINUTEOFHOUR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MINUTEOFHOUR</dd> + <dt><b>MINVERSE</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMINVERSE">PHPExcel_Calculation_MathTrig::MINVERSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MINVERSE</dd> + <dt><b>MIRR</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodMIRR">PHPExcel_Calculation_Financial::MIRR()</a></dd> + <dt><b>MMULT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMMULT">PHPExcel_Calculation_MathTrig::MMULT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MMULT</dd> + <dt><b>MOD</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMOD">PHPExcel_Calculation_MathTrig::MOD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MOD</dd> + <dt><b>MODE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMODE">PHPExcel_Calculation_Statistical::MODE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MODE</dd> + <dt><b>mode</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmode">Base::mode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the mode of a data set.</dd> + <dt><b>money_format</b></dt> + <dd>in file Functions.php, function <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#functionmoney_format">money_format()</a></dd> + <dt><b>MONTHOFYEAR</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodMONTHOFYEAR">PHPExcel_Calculation_DateTime::MONTHOFYEAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MONTHOFYEAR</dd> + <dt><b>MROUND</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMROUND">PHPExcel_Calculation_MathTrig::MROUND()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MROUND</dd> + <dt><b>multiLevelCount</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodmultiLevelCount">PHPExcel_Chart_DataSeriesValues::multiLevelCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the level count of a multi-level Data Series</dd> + <dt><b>MULTINOMIAL</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMULTINOMIAL">PHPExcel_Calculation_MathTrig::MULTINOMIAL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MULTINOMIAL</dd> + <dt><b>M_2DIVPI</b></dt> + <dd>in file Functions.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#defineM_2DIVPI">M_2DIVPI</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2 / PI</dd> + <dt><b>Memcache.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html">Memcache.php</a></dd> + <dt><b>Memory.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html">Memory.php</a></dd> + <dt><b>MemoryGZip.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html">MemoryGZip.php</a></dd> + <dt><b>MemorySerialized.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html">MemorySerialized.php</a></dd> + <dt><b>MathTrig.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html">MathTrig.php</a></dd> + <dt><b>MagicSquareExample.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html">MagicSquareExample.php</a></dd> + <dt><b>Matrix.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html">Matrix.php</a></dd> + <dt><b>Maths.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html">Maths.php</a></dd> + <dt><b>MemoryDrawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html">MemoryDrawing.php</a></dd> + <dt><b>mPDF.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html">mPDF.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="n"></a> + <div> + <h2>n</h2> + <dl> + <dt><b>$Name</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Name">PHPExcel_Shared_OLE_PPS::$Name</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The PPS name (in Unicode)</dd> + <dt><b>$NextPps</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$NextPps">PHPExcel_Shared_OLE_PPS::$NextPps</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The index of the next PPS</dd> + <dt><b>$No</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$No">PHPExcel_Shared_OLE_PPS::$No</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The PPS index</dd> + <dt><b>N</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodN">PHPExcel_Calculation_Functions::N()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;N</dd> + <dt><b>NA</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNA">PHPExcel_Calculation_Functions::NA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NA</dd> + <dt><b>NAME</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNAME">PHPExcel_Calculation_Functions::NAME()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NAME</dd> + <dt><b>namedRangeToArray</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodnamedRangeToArray">PHPExcel_Worksheet::namedRangeToArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create array from a range of cells</dd> + <dt><b>NaN</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNaN">PHPExcel_Calculation_Functions::NaN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NaN</dd> + <dt><b>NEGBINOMDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNEGBINOMDIST">PHPExcel_Calculation_Statistical::NEGBINOMDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NEGBINOMDIST</dd> + <dt><b>NETWORKDAYS</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodNETWORKDAYS">PHPExcel_Calculation_DateTime::NETWORKDAYS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NETWORKDAYS</dd> + <dt><b>next</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodnext">PHPExcel_Worksheet_RowIterator::next()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the iterator to its next value</dd> + <dt><b>next</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#methodnext">PHPExcel_WorksheetIterator::next()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Next value</dd> + <dt><b>next</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodnext">PHPExcel_Worksheet_CellIterator::next()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Next value</dd> + <dt><b>NOMINAL</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodNOMINAL">PHPExcel_Calculation_Financial::NOMINAL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NOMINAL</dd> + <dt><b>norm2</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodnorm2">SingularValueDecomposition::norm2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Two norm</dd> + <dt><b>NORMDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMDIST">PHPExcel_Calculation_Statistical::NORMDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NORMDIST</dd> + <dt><b>NORMINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMINV">PHPExcel_Calculation_Statistical::NORMINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NORMINV</dd> + <dt><b>NORMSDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMSDIST">PHPExcel_Calculation_Statistical::NORMSDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NORMSDIST</dd> + <dt><b>NORMSINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMSINV">PHPExcel_Calculation_Statistical::NORMSINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NORMSINV</dd> + <dt><b>NOT</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodNOT">PHPExcel_Calculation_Logical::NOT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NOT</dd> + <dt><b>notifyCacheController</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodnotifyCacheController">PHPExcel_Cell::notifyCacheController()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Send notification to the cache controller</dd> + <dt><b>NPER</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodNPER">PHPExcel_Calculation_Financial::NPER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NPER</dd> + <dt><b>NPV</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodNPV">PHPExcel_Calculation_Financial::NPV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NPV</dd> + <dt><b>NULL</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNULL">PHPExcel_Calculation_Functions::NULL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NULL</dd> + <dt><b>NumberToName</b></dt> + <dd>in file CodePage.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_CodePage.html#methodNumberToName">PHPExcel_Shared_CodePage::NumberToName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert Microsoft Code Page Identifier to Code Page Name which iconv and mbstring understands</dd> + <dt><b>NUM_BIG_BLOCK_DEPOT_BLOCKS_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constNUM_BIG_BLOCK_DEPOT_BLOCKS_POS">PHPExcel_Shared_OLERead::NUM_BIG_BLOCK_DEPOT_BLOCKS_POS</a></dd> + <dt><b>NUM_EXTENSION_BLOCK_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constNUM_EXTENSION_BLOCK_POS">PHPExcel_Shared_OLERead::NUM_EXTENSION_BLOCK_POS</a></dd> + <dt><b>NamedRange.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---NamedRange.php.html">NamedRange.php</a></dd> + <dt><b>NumberFormat.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html">NumberFormat.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="o"></a> + <div> + <h2>o</h2> + <dl> + <dt><b>$ole</b></dt> + <dd>in file ChainedBlockStream.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$ole">PHPExcel_Shared_OLE_ChainedBlockStream::$ole</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The OLE container of the file that is being read.</dd> + <dt><b>$ole</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$ole">PHPExcel_Shared_OLE_PPS::$ole</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Pointer to OLE container</dd> + <dt><b>OCTTOBIN</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodOCTTOBIN">PHPExcel_Calculation_Engineering::OCTTOBIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;OCTTOBIN</dd> + <dt><b>OCTTODEC</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodOCTTODEC">PHPExcel_Calculation_Engineering::OCTTODEC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;OCTTODEC</dd> + <dt><b>OCTTOHEX</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodOCTTOHEX">PHPExcel_Calculation_Engineering::OCTTOHEX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;OCTTOHEX</dd> + <dt><b>ODD</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodODD">PHPExcel_Calculation_MathTrig::ODD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ODD</dd> + <dt><b>OFFSET</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodOFFSET">PHPExcel_Calculation_LookupRef::OFFSET()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;OFFSET</dd> + <dt><b>OLE2LocalDate</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodOLE2LocalDate">PHPExcel_Shared_OLE::OLE2LocalDate()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns a timestamp from an OLE container's date</dd> + <dt><b>OLE_DATA_SIZE_SMALL</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_DATA_SIZE_SMALL">PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL</a></dd> + <dt><b>OLE_LONG_INT_SIZE</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_LONG_INT_SIZE">PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE</a></dd> + <dt><b>OLE_PPS_SIZE</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_SIZE">PHPExcel_Shared_OLE::OLE_PPS_SIZE</a></dd> + <dt><b>OLE_PPS_TYPE_DIR</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_TYPE_DIR">PHPExcel_Shared_OLE::OLE_PPS_TYPE_DIR</a></dd> + <dt><b>OLE_PPS_TYPE_FILE</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_TYPE_FILE">PHPExcel_Shared_OLE::OLE_PPS_TYPE_FILE</a></dd> + <dt><b>OLE_PPS_TYPE_ROOT</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_TYPE_ROOT">PHPExcel_Shared_OLE::OLE_PPS_TYPE_ROOT</a></dd> + <dt><b>oneAnchor2twoAnchor</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodoneAnchor2twoAnchor">PHPExcel_Shared_Excel5::oneAnchor2twoAnchor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert 1-cell anchor coordinates to 2-cell anchor coordinates This function is ported from PEAR Spreadsheet_Writer_Excel with small modifications</dd> + <dt><b>open</b></dt> + <dd>in file ZipArchive.php, method <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#methodopen">PHPExcel_Shared_ZipArchive::open()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Open a new zip archive</dd> + <dt><b>OPERATORS_INFIX</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constOPERATORS_INFIX">PHPExcel_Calculation_FormulaParser::OPERATORS_INFIX</a></dd> + <dt><b>OPERATORS_POSTFIX</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constOPERATORS_POSTFIX">PHPExcel_Calculation_FormulaParser::OPERATORS_POSTFIX</a></dd> + <dt><b>OPERATORS_SN</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constOPERATORS_SN">PHPExcel_Calculation_FormulaParser::OPERATORS_SN</a></dd> + <dt><b>OPERATOR_BEGINSWITH</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_BEGINSWITH">PHPExcel_Style_Conditional::OPERATOR_BEGINSWITH</a></dd> + <dt><b>OPERATOR_BETWEEN</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_BETWEEN">PHPExcel_Style_Conditional::OPERATOR_BETWEEN</a></dd> + <dt><b>OPERATOR_BETWEEN</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_BETWEEN">PHPExcel_Cell_DataValidation::OPERATOR_BETWEEN</a></dd> + <dt><b>OPERATOR_CONTAINSTEXT</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_CONTAINSTEXT">PHPExcel_Style_Conditional::OPERATOR_CONTAINSTEXT</a></dd> + <dt><b>OPERATOR_ENDSWITH</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_ENDSWITH">PHPExcel_Style_Conditional::OPERATOR_ENDSWITH</a></dd> + <dt><b>OPERATOR_EQUAL</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_EQUAL">PHPExcel_Style_Conditional::OPERATOR_EQUAL</a></dd> + <dt><b>OPERATOR_EQUAL</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_EQUAL">PHPExcel_Cell_DataValidation::OPERATOR_EQUAL</a></dd> + <dt><b>OPERATOR_GREATERTHAN</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_GREATERTHAN">PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHAN</a></dd> + <dt><b>OPERATOR_GREATERTHAN</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_GREATERTHAN">PHPExcel_Style_Conditional::OPERATOR_GREATERTHAN</a></dd> + <dt><b>OPERATOR_GREATERTHANOREQUAL</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_GREATERTHANOREQUAL">PHPExcel_Style_Conditional::OPERATOR_GREATERTHANOREQUAL</a></dd> + <dt><b>OPERATOR_GREATERTHANOREQUAL</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_GREATERTHANOREQUAL">PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHANOREQUAL</a></dd> + <dt><b>OPERATOR_LESSTHAN</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_LESSTHAN">PHPExcel_Style_Conditional::OPERATOR_LESSTHAN</a></dd> + <dt><b>OPERATOR_LESSTHAN</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_LESSTHAN">PHPExcel_Cell_DataValidation::OPERATOR_LESSTHAN</a></dd> + <dt><b>OPERATOR_LESSTHANOREQUAL</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_LESSTHANOREQUAL">PHPExcel_Style_Conditional::OPERATOR_LESSTHANOREQUAL</a></dd> + <dt><b>OPERATOR_LESSTHANOREQUAL</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_LESSTHANOREQUAL">PHPExcel_Cell_DataValidation::OPERATOR_LESSTHANOREQUAL</a></dd> + <dt><b>OPERATOR_NONE</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_NONE">PHPExcel_Style_Conditional::OPERATOR_NONE</a></dd> + <dt><b>OPERATOR_NOTBETWEEN</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_NOTBETWEEN">PHPExcel_Cell_DataValidation::OPERATOR_NOTBETWEEN</a></dd> + <dt><b>OPERATOR_NOTCONTAINS</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_NOTCONTAINS">PHPExcel_Style_Conditional::OPERATOR_NOTCONTAINS</a></dd> + <dt><b>OPERATOR_NOTEQUAL</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_NOTEQUAL">PHPExcel_Style_Conditional::OPERATOR_NOTEQUAL</a></dd> + <dt><b>OPERATOR_NOTEQUAL</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_NOTEQUAL">PHPExcel_Cell_DataValidation::OPERATOR_NOTEQUAL</a></dd> + <dt><b>OPT</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constOPT">PHPExcel_Reader_Excel5_Escher::OPT</a></dd> + <dt><b>ORIENTATION_DEFAULT</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constORIENTATION_DEFAULT">PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT</a></dd> + <dt><b>ORIENTATION_LANDSCAPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constORIENTATION_LANDSCAPE">PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE</a></dd> + <dt><b>ORIENTATION_PORTRAIT</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constORIENTATION_PORTRAIT">PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT</a></dd> + <dt><b>OVERWRITE</b></dt> + <dd>in file ZipArchive.php, class constant <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#constOVERWRITE">PHPExcel_Shared_ZipArchive::OVERWRITE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;constants</dd> + <dt><b>OOCalc.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html">OOCalc.php</a></dd> + <dt><b>OLE.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html">OLE.php</a></dd> + <dt><b>OLERead.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html">OLERead.php</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>$params</b></dt> + <dd>in file ChainedBlockStream.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$params">PHPExcel_Shared_OLE_ChainedBlockStream::$params</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parameters specified by fopen().</dd> + <dt><b>$pos</b></dt> + <dd>in file ChainedBlockStream.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$pos">PHPExcel_Shared_OLE_ChainedBlockStream::$pos</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The file pointer.</dd> + <dt><b>$PrevPps</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$PrevPps">PHPExcel_Shared_OLE_PPS::$PrevPps</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The index of the previous PPS</dd> + <dt><b>PALATINO_LINOTYPE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE">PHPExcel_Shared_Font::PALATINO_LINOTYPE</a></dd> + <dt><b>PALATINO_LINOTYPE_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE_BOLD">PHPExcel_Shared_Font::PALATINO_LINOTYPE_BOLD</a></dd> + <dt><b>PALATINO_LINOTYPE_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE_BOLD_ITALIC">PHPExcel_Shared_Font::PALATINO_LINOTYPE_BOLD_ITALIC</a></dd> + <dt><b>PALATINO_LINOTYPE_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE_ITALIC">PHPExcel_Shared_Font::PALATINO_LINOTYPE_ITALIC</a></dd> + <dt><b>PAPERSIZE_6_3_4_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_6_3_4_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_6_3_4_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_A2_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A2_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A2_PAPER</a></dd> + <dt><b>PAPERSIZE_A3</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3</a></dd> + <dt><b>PAPERSIZE_A3_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_A3_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_A4</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4</a></dd> + <dt><b>PAPERSIZE_A4_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_A4_PLUS_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_PLUS_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_PLUS_PAPER</a></dd> + <dt><b>PAPERSIZE_A4_SMALL</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_SMALL">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_SMALL</a></dd> + <dt><b>PAPERSIZE_A4_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_A5</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A5">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5</a></dd> + <dt><b>PAPERSIZE_A5_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A5_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_A5_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A5_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_B4</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B4">PHPExcel_Worksheet_PageSetup::PAPERSIZE_B4</a></dd> + <dt><b>PAPERSIZE_B4_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B4_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_B4_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_B5</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B5">PHPExcel_Worksheet_PageSetup::PAPERSIZE_B5</a></dd> + <dt><b>PAPERSIZE_B5_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B5_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_B5_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_B6_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B6_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_B6_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_C</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C</a></dd> + <dt><b>PAPERSIZE_C3_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C3_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C3_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_C4_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C4_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C4_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_C5_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C5_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C5_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_C6_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C6_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C6_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_C65_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C65_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C65_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_D</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_D">PHPExcel_Worksheet_PageSetup::PAPERSIZE_D</a></dd> + <dt><b>PAPERSIZE_DL_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_DL_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_DL_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_E</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_E">PHPExcel_Worksheet_PageSetup::PAPERSIZE_E</a></dd> + <dt><b>PAPERSIZE_EXECUTIVE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_EXECUTIVE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_EXECUTIVE</a></dd> + <dt><b>PAPERSIZE_FOLIO</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_FOLIO">PHPExcel_Worksheet_PageSetup::PAPERSIZE_FOLIO</a></dd> + <dt><b>PAPERSIZE_GERMAN_LEGAL_FANFOLD</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_GERMAN_LEGAL_FANFOLD">PHPExcel_Worksheet_PageSetup::PAPERSIZE_GERMAN_LEGAL_FANFOLD</a></dd> + <dt><b>PAPERSIZE_GERMAN_STANDARD_FANFOLD</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_GERMAN_STANDARD_FANFOLD">PHPExcel_Worksheet_PageSetup::PAPERSIZE_GERMAN_STANDARD_FANFOLD</a></dd> + <dt><b>PAPERSIZE_INVITE_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_INVITE_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_INVITE_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_ISO_B4</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_ISO_B4">PHPExcel_Worksheet_PageSetup::PAPERSIZE_ISO_B4</a></dd> + <dt><b>PAPERSIZE_ISO_B5_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_ISO_B5_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_ISO_B5_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_ITALY_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_ITALY_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_ITALY_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_JAPANESE_DOUBLE_POSTCARD</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_JAPANESE_DOUBLE_POSTCARD">PHPExcel_Worksheet_PageSetup::PAPERSIZE_JAPANESE_DOUBLE_POSTCARD</a></dd> + <dt><b>PAPERSIZE_JIS_B5_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_JIS_B5_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_JIS_B5_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_LEDGER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LEDGER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEDGER</a></dd> + <dt><b>PAPERSIZE_LEGAL</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LEGAL">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEGAL</a></dd> + <dt><b>PAPERSIZE_LEGAL_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LEGAL_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEGAL_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_LETTER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER</a></dd> + <dt><b>PAPERSIZE_LETTER_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_LETTER_PLUS_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_PLUS_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_PLUS_PAPER</a></dd> + <dt><b>PAPERSIZE_LETTER_SMALL</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_SMALL">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_SMALL</a></dd> + <dt><b>PAPERSIZE_LETTER_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_MONARCH_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_MONARCH_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_MONARCH_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NO9_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO9_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO9_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NO10_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO10_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO10_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NO11_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO11_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO11_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NO12_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO12_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO12_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NO14_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO14_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO14_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NOTE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NOTE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NOTE</a></dd> + <dt><b>PAPERSIZE_QUARTO</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_QUARTO">PHPExcel_Worksheet_PageSetup::PAPERSIZE_QUARTO</a></dd> + <dt><b>PAPERSIZE_STANDARD_1</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_1">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_1</a></dd> + <dt><b>PAPERSIZE_STANDARD_2</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_2">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_2</a></dd> + <dt><b>PAPERSIZE_STANDARD_PAPER_1</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_PAPER_1">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_1</a></dd> + <dt><b>PAPERSIZE_STANDARD_PAPER_2</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_PAPER_2">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_2</a></dd> + <dt><b>PAPERSIZE_STANDARD_PAPER_3</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_PAPER_3">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_3</a></dd> + <dt><b>PAPERSIZE_STATEMENT</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STATEMENT">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STATEMENT</a></dd> + <dt><b>PAPERSIZE_SUPERA_SUPERA_A4_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_SUPERA_SUPERA_A4_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_SUPERA_SUPERA_A4_PAPER</a></dd> + <dt><b>PAPERSIZE_SUPERB_SUPERB_A3_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_SUPERB_SUPERB_A3_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_SUPERB_SUPERB_A3_PAPER</a></dd> + <dt><b>PAPERSIZE_TABLOID</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_TABLOID">PHPExcel_Worksheet_PageSetup::PAPERSIZE_TABLOID</a></dd> + <dt><b>PAPERSIZE_TABLOID_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_TABLOID_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_TABLOID_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_US_STANDARD_FANFOLD</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_US_STANDARD_FANFOLD">PHPExcel_Worksheet_PageSetup::PAPERSIZE_US_STANDARD_FANFOLD</a></dd> + <dt><b>PAREN_CLOSE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constPAREN_CLOSE">PHPExcel_Calculation_FormulaParser::PAREN_CLOSE</a></dd> + <dt><b>PAREN_OPEN</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constPAREN_OPEN">PHPExcel_Calculation_FormulaParser::PAREN_OPEN</a></dd> + <dt><b>parse</b></dt> + <dd>in file Parser.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#methodparse">PHPExcel_Writer_Excel5_Parser::parse()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The parsing method. It parses a formula.</dd> + <dt><b>parseFormula</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodparseFormula">PHPExcel_Calculation::parseFormula()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Validate and parse a formula string</dd> + <dt><b>PclZip</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodPclZip">PclZip::PclZip()</a></dd> + <dt><b>PclZip</b></dt> + <dd>in file pclzip.lib.php, class <a href="PHPExcel/PclZip.html">PclZip</a></dd> + <dt><b>PCLZIP</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constPCLZIP">PHPExcel_Settings::PCLZIP</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Available Zip library classes</dd> + <dt><b>PclZipUtilCopyBlock</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilCopyBlock">PclZipUtilCopyBlock()</a></dd> + <dt><b>PclZipUtilOptionText</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText()</a></dd> + <dt><b>PclZipUtilPathInclusion</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathInclusion">PclZipUtilPathInclusion()</a></dd> + <dt><b>PclZipUtilPathReduction</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathReduction">PclZipUtilPathReduction()</a></dd> + <dt><b>PclZipUtilRename</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilRename">PclZipUtilRename()</a></dd> + <dt><b>PclZipUtilTranslateWinPath</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilTranslateWinPath">PclZipUtilTranslateWinPath()</a></dd> + <dt><b>PCLZIP_ATT_FILE_COMMENT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_COMMENT">PCLZIP_ATT_FILE_COMMENT</a></dd> + <dt><b>PCLZIP_ATT_FILE_CONTENT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_CONTENT">PCLZIP_ATT_FILE_CONTENT</a></dd> + <dt><b>PCLZIP_ATT_FILE_MTIME</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_MTIME">PCLZIP_ATT_FILE_MTIME</a></dd> + <dt><b>PCLZIP_ATT_FILE_NAME</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NAME">PCLZIP_ATT_FILE_NAME</a></dd> + <dt><b>PCLZIP_ATT_FILE_NEW_FULL_NAME</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NEW_FULL_NAME">PCLZIP_ATT_FILE_NEW_FULL_NAME</a></dd> + <dt><b>PCLZIP_ATT_FILE_NEW_SHORT_NAME</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NEW_SHORT_NAME">PCLZIP_ATT_FILE_NEW_SHORT_NAME</a></dd> + <dt><b>PCLZIP_CB_POST_ADD</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_ADD">PCLZIP_CB_POST_ADD</a></dd> + <dt><b>PCLZIP_CB_POST_EXTRACT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a></dd> + <dt><b>PCLZIP_CB_PRE_ADD</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_ADD">PCLZIP_CB_PRE_ADD</a></dd> + <dt><b>PCLZIP_CB_PRE_EXTRACT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a></dd> + <dt><b>PCLZIP_ERROR_EXTERNAL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERROR_EXTERNAL">PCLZIP_ERROR_EXTERNAL</a></dd> + <dt><b>PCLZIP_ERR_ALREADY_A_DIRECTORY</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_ALREADY_A_DIRECTORY">PCLZIP_ERR_ALREADY_A_DIRECTORY</a></dd> + <dt><b>PCLZIP_ERR_BAD_CHECKSUM</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_CHECKSUM">PCLZIP_ERR_BAD_CHECKSUM</a></dd> + <dt><b>PCLZIP_ERR_BAD_EXTENSION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_EXTENSION">PCLZIP_ERR_BAD_EXTENSION</a></dd> + <dt><b>PCLZIP_ERR_BAD_EXTRACTED_FILE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_EXTRACTED_FILE">PCLZIP_ERR_BAD_EXTRACTED_FILE</a></dd> + <dt><b>PCLZIP_ERR_BAD_FORMAT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></dd> + <dt><b>PCLZIP_ERR_DELETE_FILE_FAIL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_DELETE_FILE_FAIL">PCLZIP_ERR_DELETE_FILE_FAIL</a></dd> + <dt><b>PCLZIP_ERR_DIRECTORY_RESTRICTION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_DIRECTORY_RESTRICTION">PCLZIP_ERR_DIRECTORY_RESTRICTION</a></dd> + <dt><b>PCLZIP_ERR_DIR_CREATE_FAIL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_DIR_CREATE_FAIL">PCLZIP_ERR_DIR_CREATE_FAIL</a></dd> + <dt><b>PCLZIP_ERR_FILENAME_TOO_LONG</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_FILENAME_TOO_LONG">PCLZIP_ERR_FILENAME_TOO_LONG</a></dd> + <dt><b>PCLZIP_ERR_INVALID_ARCHIVE_ZIP</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ARCHIVE_ZIP">PCLZIP_ERR_INVALID_ARCHIVE_ZIP</a></dd> + <dt><b>PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE">PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</a></dd> + <dt><b>PCLZIP_ERR_INVALID_OPTION_VALUE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_OPTION_VALUE">PCLZIP_ERR_INVALID_OPTION_VALUE</a></dd> + <dt><b>PCLZIP_ERR_INVALID_PARAMETER</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></dd> + <dt><b>PCLZIP_ERR_INVALID_ZIP</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ZIP">PCLZIP_ERR_INVALID_ZIP</a></dd> + <dt><b>PCLZIP_ERR_MISSING_FILE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_FILE">PCLZIP_ERR_MISSING_FILE</a></dd> + <dt><b>PCLZIP_ERR_MISSING_OPTION_VALUE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a></dd> + <dt><b>PCLZIP_ERR_NO_ERROR</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_NO_ERROR">PCLZIP_ERR_NO_ERROR</a></dd> + <dt><b>PCLZIP_ERR_READ_OPEN_FAIL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></dd> + <dt><b>PCLZIP_ERR_RENAME_FILE_FAIL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_RENAME_FILE_FAIL">PCLZIP_ERR_RENAME_FILE_FAIL</a></dd> + <dt><b>PCLZIP_ERR_UNSUPPORTED_COMPRESSION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_UNSUPPORTED_COMPRESSION">PCLZIP_ERR_UNSUPPORTED_COMPRESSION</a></dd> + <dt><b>PCLZIP_ERR_UNSUPPORTED_ENCRYPTION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_UNSUPPORTED_ENCRYPTION">PCLZIP_ERR_UNSUPPORTED_ENCRYPTION</a></dd> + <dt><b>PCLZIP_ERR_USER_ABORTED</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_USER_ABORTED">PCLZIP_ERR_USER_ABORTED</a></dd> + <dt><b>PCLZIP_ERR_WRITE_OPEN_FAIL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_WRITE_OPEN_FAIL">PCLZIP_ERR_WRITE_OPEN_FAIL</a></dd> + <dt><b>PCLZIP_OPT_ADD_COMMENT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_COMMENT">PCLZIP_OPT_ADD_COMMENT</a></dd> + <dt><b>PCLZIP_OPT_ADD_PATH</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a></dd> + <dt><b>PCLZIP_OPT_ADD_TEMP_FILE_OFF</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_TEMP_FILE_OFF">PCLZIP_OPT_ADD_TEMP_FILE_OFF</a></dd> + <dt><b>PCLZIP_OPT_ADD_TEMP_FILE_ON</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_TEMP_FILE_ON">PCLZIP_OPT_ADD_TEMP_FILE_ON</a></dd> + <dt><b>PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD">PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD</a></dd> + <dt><b>PCLZIP_OPT_BY_EREG</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_EREG">PCLZIP_OPT_BY_EREG</a></dd> + <dt><b>PCLZIP_OPT_BY_INDEX</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></dd> + <dt><b>PCLZIP_OPT_BY_NAME</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></dd> + <dt><b>PCLZIP_OPT_BY_PREG</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a></dd> + <dt><b>PCLZIP_OPT_COMMENT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_COMMENT">PCLZIP_OPT_COMMENT</a></dd> + <dt><b>PCLZIP_OPT_EXTRACT_AS_STRING</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_AS_STRING">PCLZIP_OPT_EXTRACT_AS_STRING</a></dd> + <dt><b>PCLZIP_OPT_EXTRACT_DIR_RESTRICTION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_DIR_RESTRICTION">PCLZIP_OPT_EXTRACT_DIR_RESTRICTION</a></dd> + <dt><b>PCLZIP_OPT_EXTRACT_IN_OUTPUT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_IN_OUTPUT">PCLZIP_OPT_EXTRACT_IN_OUTPUT</a></dd> + <dt><b>PCLZIP_OPT_NO_COMPRESSION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_NO_COMPRESSION">PCLZIP_OPT_NO_COMPRESSION</a></dd> + <dt><b>PCLZIP_OPT_PATH</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PATH">PCLZIP_OPT_PATH</a></dd> + <dt><b>PCLZIP_OPT_PREPEND_COMMENT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PREPEND_COMMENT">PCLZIP_OPT_PREPEND_COMMENT</a></dd> + <dt><b>PCLZIP_OPT_REMOVE_ALL_PATH</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a></dd> + <dt><b>PCLZIP_OPT_REMOVE_PATH</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a></dd> + <dt><b>PCLZIP_OPT_REPLACE_NEWER</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REPLACE_NEWER">PCLZIP_OPT_REPLACE_NEWER</a></dd> + <dt><b>PCLZIP_OPT_SET_CHMOD</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_SET_CHMOD">PCLZIP_OPT_SET_CHMOD</a></dd> + <dt><b>PCLZIP_OPT_STOP_ON_ERROR</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></dd> + <dt><b>PCLZIP_OPT_TEMP_FILE_OFF</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a></dd> + <dt><b>PCLZIP_OPT_TEMP_FILE_ON</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_ON">PCLZIP_OPT_TEMP_FILE_ON</a></dd> + <dt><b>PCLZIP_OPT_TEMP_FILE_THRESHOLD</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></dd> + <dt><b>PCLZIP_READ_BLOCK_SIZE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></dd> + <dt><b>PCLZIP_SEPARATOR</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_SEPARATOR">PCLZIP_SEPARATOR</a></dd> + <dt><b>PCLZIP_TEMPORARY_DIR</b></dt> + <dd>in file ZipArchive.php, constant <a href="PHPExcel_Shared_ZipArchive/_PHPExcel---Shared---ZipArchive.php.html#definePCLZIP_TEMPORARY_DIR">PCLZIP_TEMPORARY_DIR</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel</dd> + <dt><b>PCLZIP_TEMPORARY_DIR</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_TEMPORARY_DIR">PCLZIP_TEMPORARY_DIR</a></dd> + <dt><b>PCLZIP_TEMPORARY_FILE_RATIO</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_TEMPORARY_FILE_RATIO">PCLZIP_TEMPORARY_FILE_RATIO</a></dd> + <dt><b>PDF_RENDERER_DOMPDF</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constPDF_RENDERER_DOMPDF">PHPExcel_Settings::PDF_RENDERER_DOMPDF</a></dd> + <dt><b>PDF_RENDERER_MPDF</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constPDF_RENDERER_MPDF">PHPExcel_Settings::PDF_RENDERER_MPDF</a></dd> + <dt><b>PDF_RENDERER_TCPDF</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constPDF_RENDERER_TCPDF">PHPExcel_Settings::PDF_RENDERER_TCPDF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optional PDF Rendering libraries</dd> + <dt><b>PERCENTILE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPERCENTILE">PHPExcel_Calculation_Statistical::PERCENTILE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PERCENTILE</dd> + <dt><b>percentile</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodpercentile">Base::percentile()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The pth percentile is the value such that p% of the a sorted data set is smaller than it, and (100 - p)% of the data is larger.</dd> + <dt><b>PERCENTRANK</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPERCENTRANK">PHPExcel_Calculation_Statistical::PERCENTRANK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PERCENTRANK</dd> + <dt><b>PERMUT</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPERMUT">PHPExcel_Calculation_Statistical::PERMUT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PERMUT</dd> + <dt><b>PHPExcel</b></dt> + <dd>in file PHPExcel.php, class <a href="PHPExcel/PHPExcel.html">PHPExcel</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel</dd> + <dt><b>PHPTemp.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html">PHPTemp.php</a></dd> + <dt><b>PlotArea.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html">PlotArea.php</a></dd> + <dt><b>polyfit.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html">polyfit.php</a></dd> + <dt><b>PPS.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html">PPS.php</a></dd> + <dt><b>PasswordHasher.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html">PasswordHasher.php</a></dd> + <dt><b>pclzip.lib.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html">pclzip.lib.php</a></dd> + <dt><b>polynomialBestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html">polynomialBestFitClass.php</a></dd> + <dt><b>powerBestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html">powerBestFitClass.php</a></dd> + <dt><b>Protection.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Protection.php.html">Protection.php</a></dd> + <dt><b>PageMargins.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html">PageMargins.php</a></dd> + <dt><b>PageSetup.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html">PageSetup.php</a></dd> + <dt><b>Protection.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html">Protection.php</a></dd> + <dt><b>Parser.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html">Parser.php</a></dd> + <dt><b>PDF.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html">PDF.php</a></dd> + <dt><b>PHPExcel.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel.php.html">PHPExcel.php</a></dd> + <dt><b>PHPExcel_Autoloader</b></dt> + <dd>in file Autoloader.php, class <a href="PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Autoloader</dd> + <dt><b>PHPExcel_Best_Fit</b></dt> + <dd>in file bestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Best_Fit</dd> + <dt><b>PHPExcel_CachedObjectStorageFactory</b></dt> + <dd>in file CachedObjectStorageFactory.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorageFactory</dd> + <dt><b>PHPExcel_CachedObjectStorage_APC</b></dt> + <dd>in file APC.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_APC</dd> + <dt><b>PHPExcel_CachedObjectStorage_CacheBase</b></dt> + <dd>in file CacheBase.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_CacheBase</dd> + <dt><b>PHPExcel_CachedObjectStorage_DiscISAM</b></dt> + <dd>in file DiscISAM.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_DiscISAM</dd> + <dt><b>PHPExcel_CachedObjectStorage_ICache</b></dt> + <dd>in file ICache.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_ICache</dd> + <dt><b>PHPExcel_CachedObjectStorage_Igbinary</b></dt> + <dd>in file Igbinary.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_Igbinary</dd> + <dt><b>PHPExcel_CachedObjectStorage_Memcache</b></dt> + <dd>in file Memcache.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_Memcache</dd> + <dt><b>PHPExcel_CachedObjectStorage_Memory</b></dt> + <dd>in file Memory.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_Memory</dd> + <dt><b>PHPExcel_CachedObjectStorage_MemoryGZip</b></dt> + <dd>in file MemoryGZip.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_MemoryGZip</dd> + <dt><b>PHPExcel_CachedObjectStorage_MemorySerialized</b></dt> + <dd>in file MemorySerialized.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_MemorySerialized</dd> + <dt><b>PHPExcel_CachedObjectStorage_PHPTemp</b></dt> + <dd>in file PHPTemp.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_PHPTemp</dd> + <dt><b>PHPExcel_CachedObjectStorage_SQLite</b></dt> + <dd>in file SQLite.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_SQLite</dd> + <dt><b>PHPExcel_CachedObjectStorage_SQLite3</b></dt> + <dd>in file SQLite3.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_SQLite3</dd> + <dt><b>PHPExcel_CachedObjectStorage_Wincache</b></dt> + <dd>in file Wincache.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_Wincache</dd> + <dt><b>PHPExcel_Calculation</b></dt> + <dd>in file Calculation.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation (Singleton)</dd> + <dt><b>PHPExcel_Calculation_Database</b></dt> + <dd>in file Database.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Database</dd> + <dt><b>PHPExcel_Calculation_DateTime</b></dt> + <dd>in file DateTime.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_DateTime</dd> + <dt><b>PHPExcel_Calculation_Engineering</b></dt> + <dd>in file Engineering.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Engineering</dd> + <dt><b>PHPExcel_Calculation_Exception</b></dt> + <dd>in file Exception.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Exception</dd> + <dt><b>PHPExcel_Calculation_ExceptionHandler</b></dt> + <dd>in file ExceptionHandler.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_ExceptionHandler</dd> + <dt><b>PHPExcel_Calculation_Financial</b></dt> + <dd>in file Financial.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Financial</dd> + <dt><b>PHPExcel_Calculation_FormulaParser</b></dt> + <dd>in file FormulaParser.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_FormulaParser</dd> + <dt><b>PHPExcel_Calculation_FormulaToken</b></dt> + <dd>in file FormulaToken.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_FormulaToken</dd> + <dt><b>PHPExcel_Calculation_Function</b></dt> + <dd>in file Function.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Function</dd> + <dt><b>PHPExcel_Calculation_Functions</b></dt> + <dd>in file Functions.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Functions</dd> + <dt><b>PHPExcel_Calculation_Logical</b></dt> + <dd>in file Logical.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Logical</dd> + <dt><b>PHPExcel_Calculation_LookupRef</b></dt> + <dd>in file LookupRef.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_LookupRef</dd> + <dt><b>PHPExcel_Calculation_MathTrig</b></dt> + <dd>in file MathTrig.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_MathTrig</dd> + <dt><b>PHPExcel_Calculation_Statistical</b></dt> + <dd>in file Statistical.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Statistical</dd> + <dt><b>PHPExcel_Calculation_TextData</b></dt> + <dd>in file TextData.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_TextData</dd> + <dt><b>PHPExcel_Calculation_Token_Stack</b></dt> + <dd>in file Stack.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel</dd> + <dt><b>PHPExcel_Cell</b></dt> + <dd>in file Cell.php, class <a href="PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell</dd> + <dt><b>PHPExcel_Cell_AdvancedValueBinder</b></dt> + <dd>in file AdvancedValueBinder.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_AdvancedValueBinder</dd> + <dt><b>PHPExcel_Cell_DataType</b></dt> + <dd>in file DataType.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_DataType</dd> + <dt><b>PHPExcel_Cell_DataValidation</b></dt> + <dd>in file DataValidation.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_DataValidation</dd> + <dt><b>PHPExcel_Cell_DefaultValueBinder</b></dt> + <dd>in file DefaultValueBinder.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_DefaultValueBinder</dd> + <dt><b>PHPExcel_Cell_Hyperlink</b></dt> + <dd>in file Hyperlink.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_Hyperlink</dd> + <dt><b>PHPExcel_Cell_IValueBinder</b></dt> + <dd>in file IValueBinder.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_IValueBinder</dd> + <dt><b>PHPExcel_Chart</b></dt> + <dd>in file Chart.php, class <a href="PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart</dd> + <dt><b>PHPExcel_Chart_DataSeries</b></dt> + <dd>in file DataSeries.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_DataSeries</dd> + <dt><b>PHPExcel_Chart_DataSeriesValues</b></dt> + <dd>in file DataSeriesValues.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_DataSeriesValues</dd> + <dt><b>PHPExcel_Chart_Exception</b></dt> + <dd>in file Exception.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_Exception</dd> + <dt><b>PHPExcel_Chart_Layout</b></dt> + <dd>in file Layout.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_Layout</dd> + <dt><b>PHPExcel_Chart_Legend</b></dt> + <dd>in file Legend.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_Legend</dd> + <dt><b>PHPExcel_Chart_PlotArea</b></dt> + <dd>in file PlotArea.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_PlotArea</dd> + <dt><b>PHPExcel_Chart_Renderer_jpgraph</b></dt> + <dd>in file jpgraph.php, class <a href="PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html">PHPExcel_Chart_Renderer_jpgraph</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_Renderer_jpgraph</dd> + <dt><b>PHPExcel_Chart_Title</b></dt> + <dd>in file Title.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_Title</dd> + <dt><b>PHPExcel_Comment</b></dt> + <dd>in file Comment.php, class <a href="PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Comment</dd> + <dt><b>PHPExcel_DocumentProperties</b></dt> + <dd>in file DocumentProperties.php, class <a href="PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_DocumentProperties</dd> + <dt><b>PHPExcel_DocumentSecurity</b></dt> + <dd>in file DocumentSecurity.php, class <a href="PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_DocumentSecurity</dd> + <dt><b>PHPExcel_Exception</b></dt> + <dd>in file Exception.php, class <a href="PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Exception</dd> + <dt><b>PHPExcel_Exponential_Best_Fit</b></dt> + <dd>in file exponentialBestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Exponential_Best_Fit</dd> + <dt><b>PHPExcel_HashTable</b></dt> + <dd>in file HashTable.php, class <a href="PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_HashTable</dd> + <dt><b>PHPExcel_IComparable</b></dt> + <dd>in file IComparable.php, class <a href="PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_IComparable</dd> + <dt><b>PHPExcel_IOFactory</b></dt> + <dd>in file IOFactory.php, class <a href="PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_IOFactory</dd> + <dt><b>PHPExcel_Linear_Best_Fit</b></dt> + <dd>in file linearBestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Linear_Best_Fit</dd> + <dt><b>PHPExcel_Logarithmic_Best_Fit</b></dt> + <dd>in file logarithmicBestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Logarithmic_Best_Fit</dd> + <dt><b>PHPExcel_NamedRange</b></dt> + <dd>in file NamedRange.php, class <a href="PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_NamedRange</dd> + <dt><b>PHPExcel_Polynomial_Best_Fit</b></dt> + <dd>in file polynomialBestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Polynomial_Best_Fit</dd> + <dt><b>PHPExcel_Power_Best_Fit</b></dt> + <dd>in file powerBestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Power_Best_Fit</dd> + <dt><b>PHPExcel_Reader_CSV</b></dt> + <dd>in file CSV.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_CSV</dd> + <dt><b>PHPExcel_Reader_DefaultReadFilter</b></dt> + <dd>in file DefaultReadFilter.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_DefaultReadFilter</dd> + <dt><b>PHPExcel_Reader_Excel5</b></dt> + <dd>in file Excel5.php, class <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel5</dd> + <dt><b>PHPExcel_Reader_Excel5_Escher</b></dt> + <dd>in file Escher.php, class <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html">PHPExcel_Reader_Excel5_Escher</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel5_Escher</dd> + <dt><b>PHPExcel_Reader_Excel2003XML</b></dt> + <dd>in file Excel2003XML.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel2003XML</dd> + <dt><b>PHPExcel_Reader_Excel2007</b></dt> + <dd>in file Excel2007.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel2007</dd> + <dt><b>PHPExcel_Reader_Excel2007_Chart</b></dt> + <dd>in file Chart.php, class <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html">PHPExcel_Reader_Excel2007_Chart</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel2007_Chart</dd> + <dt><b>PHPExcel_Reader_Excel2007_Theme</b></dt> + <dd>in file Theme.php, class <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html">PHPExcel_Reader_Excel2007_Theme</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel2007_Theme</dd> + <dt><b>PHPExcel_Reader_Gnumeric</b></dt> + <dd>in file Gnumeric.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Gnumeric</dd> + <dt><b>PHPExcel_Reader_HTML</b></dt> + <dd>in file HTML.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_HTML</dd> + <dt><b>PHPExcel_Reader_IReader</b></dt> + <dd>in file IReader.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_IReader</dd> + <dt><b>PHPExcel_Reader_IReadFilter</b></dt> + <dd>in file IReadFilter.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_IReadFilter</dd> + <dt><b>PHPExcel_Reader_OOCalc</b></dt> + <dd>in file OOCalc.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_OOCalc</dd> + <dt><b>PHPExcel_Reader_SYLK</b></dt> + <dd>in file SYLK.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_SYLK</dd> + <dt><b>PHPExcel_ReferenceHelper</b></dt> + <dd>in file ReferenceHelper.php, class <a href="PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_ReferenceHelper (Singleton)</dd> + <dt><b>PHPExcel_RichText</b></dt> + <dd>in file RichText.php, class <a href="PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_RichText</dd> + <dt><b>PHPExcel_RichText_ITextElement</b></dt> + <dd>in file ITextElement.php, class <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_RichText_ITextElement</dd> + <dt><b>PHPExcel_RichText_Run</b></dt> + <dd>in file Run.php, class <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_RichText_Run</dd> + <dt><b>PHPExcel_RichText_TextElement</b></dt> + <dd>in file TextElement.php, class <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_RichText_TextElement</dd> + <dt><b>PHPEXCEL_ROOT</b></dt> + <dd>in file PHPExcel.php, constant <a href="PHPExcel/_PHPExcel.php.html#definePHPEXCEL_ROOT">PHPEXCEL_ROOT</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel root directory</dd> + <dt><b>PHPExcel_Settings</b></dt> + <dd>in file Settings.php, class <a href="PHPExcel_Settings/PHPExcel_Settings.html">PHPExcel_Settings</a></dd> + <dt><b>PHPExcel_Shared_CodePage</b></dt> + <dd>in file CodePage.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_CodePage</dd> + <dt><b>PHPExcel_Shared_Date</b></dt> + <dd>in file Date.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Date</dd> + <dt><b>PHPExcel_Shared_Drawing</b></dt> + <dd>in file Drawing.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Drawing</dd> + <dt><b>PHPExcel_Shared_Escher</b></dt> + <dd>in file Escher.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher</dd> + <dt><b>PHPExcel_Shared_Escher_DgContainer</b></dt> + <dd>in file DgContainer.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DgContainer</dd> + <dt><b>PHPExcel_Shared_Escher_DgContainer_SpgrContainer</b></dt> + <dd>in file SpgrContainer.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DgContainer_SpgrContainer</dd> + <dt><b>PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</b></dt> + <dd>in file SpContainer.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</dd> + <dt><b>PHPExcel_Shared_Escher_DggContainer</b></dt> + <dd>in file DggContainer.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DggContainer</dd> + <dt><b>PHPExcel_Shared_Escher_DggContainer_BstoreContainer</b></dt> + <dd>in file BstoreContainer.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DggContainer_BstoreContainer</dd> + <dt><b>PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</b></dt> + <dd>in file BSE.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</dd> + <dt><b>PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</b></dt> + <dd>in file Blip.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</dd> + <dt><b>PHPExcel_Shared_Excel5</b></dt> + <dd>in file Excel5.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Excel5</dd> + <dt><b>PHPExcel_Shared_File</b></dt> + <dd>in file File.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_File</dd> + <dt><b>PHPExcel_Shared_Font</b></dt> + <dd>in file Font.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Font</dd> + <dt><b>PHPExcel_Shared_JAMA_LUDecomposition</b></dt> + <dd>in file LUDecomposition.php, class <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a></dd> + <dt><b>PHPExcel_Shared_JAMA_Matrix</b></dt> + <dd>in file Matrix.php, class <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></dd> + <dt><b>PHPExcel_Shared_JAMA_QRDecomposition</b></dt> + <dd>in file QRDecomposition.php, class <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a></dd> + <dt><b>PHPExcel_Shared_OLE</b></dt> + <dd>in file OLE.php, class <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;OLE package base class.</dd> + <dt><b>PHPExcel_Shared_OLERead</b></dt> + <dd>in file OLERead.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a></dd> + <dt><b>PHPExcel_Shared_OLE_ChainedBlockStream</b></dt> + <dd>in file ChainedBlockStream.php, class <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_OLE_ChainedBlockStream</dd> + <dt><b>PHPExcel_Shared_OLE_PPS</b></dt> + <dd>in file PPS.php, class <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Class for creating PPS's for OLE containers</dd> + <dt><b>PHPExcel_Shared_OLE_PPS_File</b></dt> + <dd>in file File.php, class <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Class for creating File PPS's for OLE containers</dd> + <dt><b>PHPExcel_Shared_OLE_PPS_Root</b></dt> + <dd>in file Root.php, class <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Class for creating Root PPS's for OLE containers</dd> + <dt><b>PHPExcel_Shared_PasswordHasher</b></dt> + <dd>in file PasswordHasher.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_PasswordHasher</dd> + <dt><b>PHPExcel_Shared_String</b></dt> + <dd>in file String.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_String</dd> + <dt><b>PHPExcel_Shared_XMLWriter</b></dt> + <dd>in file XMLWriter.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_XMLWriter</dd> + <dt><b>PHPExcel_Shared_ZipArchive</b></dt> + <dd>in file ZipArchive.php, class <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_ZipArchive</dd> + <dt><b>PHPExcel_Shared_ZipStreamWrapper</b></dt> + <dd>in file ZipStreamWrapper.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_ZipStreamWrapper</dd> + <dt><b>PHPExcel_Style</b></dt> + <dd>in file Style.php, class <a href="PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style</dd> + <dt><b>PHPExcel_Style_Alignment</b></dt> + <dd>in file Alignment.php, class <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Alignment</dd> + <dt><b>PHPExcel_Style_Border</b></dt> + <dd>in file Border.php, class <a href="PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Border</dd> + <dt><b>PHPExcel_Style_Borders</b></dt> + <dd>in file Borders.php, class <a href="PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Borders</dd> + <dt><b>PHPExcel_Style_Color</b></dt> + <dd>in file Color.php, class <a href="PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Color</dd> + <dt><b>PHPExcel_Style_Conditional</b></dt> + <dd>in file Conditional.php, class <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Conditional</dd> + <dt><b>PHPExcel_Style_Fill</b></dt> + <dd>in file Fill.php, class <a href="PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Fill</dd> + <dt><b>PHPExcel_Style_Font</b></dt> + <dd>in file Font.php, class <a href="PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Font</dd> + <dt><b>PHPExcel_Style_NumberFormat</b></dt> + <dd>in file NumberFormat.php, class <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_NumberFormat</dd> + <dt><b>PHPExcel_Style_Protection</b></dt> + <dd>in file Protection.php, class <a href="PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Protection</dd> + <dt><b>PHPExcel_Worksheet</b></dt> + <dd>in file Worksheet.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet</dd> + <dt><b>PHPExcel_WorksheetIterator</b></dt> + <dd>in file WorksheetIterator.php, class <a href="PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_WorksheetIterator</dd> + <dt><b>PHPExcel_Worksheet_AutoFilter</b></dt> + <dd>in file AutoFilter.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_AutoFilter</dd> + <dt><b>PHPExcel_Worksheet_AutoFilter_Column</b></dt> + <dd>in file Column.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_AutoFilter_Column</dd> + <dt><b>PHPExcel_Worksheet_AutoFilter_Column_Rule</b></dt> + <dd>in file Rule.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_AutoFilter_Column_Rule</dd> + <dt><b>PHPExcel_Worksheet_BaseDrawing</b></dt> + <dd>in file BaseDrawing.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_BaseDrawing</dd> + <dt><b>PHPExcel_Worksheet_CellIterator</b></dt> + <dd>in file CellIterator.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_CellIterator</dd> + <dt><b>PHPExcel_Worksheet_ColumnDimension</b></dt> + <dd>in file ColumnDimension.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_ColumnDimension</dd> + <dt><b>PHPExcel_Worksheet_Drawing</b></dt> + <dd>in file Drawing.php, class <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_Drawing</dd> + <dt><b>PHPExcel_Worksheet_Drawing_Shadow</b></dt> + <dd>in file Shadow.php, class <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_Drawing_Shadow</dd> + <dt><b>PHPExcel_Worksheet_HeaderFooter</b></dt> + <dd>in file HeaderFooter.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_HeaderFooter</dd> + <dt><b>PHPExcel_Worksheet_HeaderFooterDrawing</b></dt> + <dd>in file HeaderFooterDrawing.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_HeaderFooterDrawing</dd> + <dt><b>PHPExcel_Worksheet_MemoryDrawing</b></dt> + <dd>in file MemoryDrawing.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_MemoryDrawing</dd> + <dt><b>PHPExcel_Worksheet_PageMargins</b></dt> + <dd>in file PageMargins.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_PageMargins</dd> + <dt><b>PHPExcel_Worksheet_PageSetup</b></dt> + <dd>in file PageSetup.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_PageSetup</dd> + <dt><b>PHPExcel_Worksheet_Protection</b></dt> + <dd>in file Protection.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_Protection</dd> + <dt><b>PHPExcel_Worksheet_Row</b></dt> + <dd>in file Row.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_Row</dd> + <dt><b>PHPExcel_Worksheet_RowDimension</b></dt> + <dd>in file RowDimension.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_RowDimension</dd> + <dt><b>PHPExcel_Worksheet_RowIterator</b></dt> + <dd>in file RowIterator.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_RowIterator</dd> + <dt><b>PHPExcel_Worksheet_SheetView</b></dt> + <dd>in file SheetView.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_SheetView</dd> + <dt><b>PHPExcel_Writer_CSV</b></dt> + <dd>in file CSV.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_CSV</dd> + <dt><b>PHPExcel_Writer_Excel5</b></dt> + <dd>in file Excel5.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5</dd> + <dt><b>PHPExcel_Writer_Excel5_BIFFwriter</b></dt> + <dd>in file BIFFwriter.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_BIFFwriter</dd> + <dt><b>PHPExcel_Writer_Excel5_Escher</b></dt> + <dd>in file Escher.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DggContainer_BstoreContainer</dd> + <dt><b>PHPExcel_Writer_Excel5_Font</b></dt> + <dd>in file Font.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_Font</dd> + <dt><b>PHPExcel_Writer_Excel5_Parser</b></dt> + <dd>in file Parser.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_Parser</dd> + <dt><b>PHPExcel_Writer_Excel5_Workbook</b></dt> + <dd>in file Workbook.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_Workbook</dd> + <dt><b>PHPExcel_Writer_Excel5_Worksheet</b></dt> + <dd>in file Worksheet.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_Worksheet</dd> + <dt><b>PHPExcel_Writer_Excel5_Xf</b></dt> + <dd>in file Xf.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_Xf</dd> + <dt><b>PHPExcel_Writer_Excel2007</b></dt> + <dd>in file Excel2007.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007</dd> + <dt><b>PHPExcel_Writer_Excel2007_Chart</b></dt> + <dd>in file Chart.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Chart</dd> + <dt><b>PHPExcel_Writer_Excel2007_Comments</b></dt> + <dd>in file Comments.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Comments</dd> + <dt><b>PHPExcel_Writer_Excel2007_ContentTypes</b></dt> + <dd>in file ContentTypes.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_ContentTypes</dd> + <dt><b>PHPExcel_Writer_Excel2007_DocProps</b></dt> + <dd>in file DocProps.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_DocProps</dd> + <dt><b>PHPExcel_Writer_Excel2007_Drawing</b></dt> + <dd>in file Drawing.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Drawing</dd> + <dt><b>PHPExcel_Writer_Excel2007_Rels</b></dt> + <dd>in file Rels.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Rels</dd> + <dt><b>PHPExcel_Writer_Excel2007_StringTable</b></dt> + <dd>in file StringTable.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_StringTable</dd> + <dt><b>PHPExcel_Writer_Excel2007_Style</b></dt> + <dd>in file Style.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Style</dd> + <dt><b>PHPExcel_Writer_Excel2007_Theme</b></dt> + <dd>in file Theme.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_DocProps</dd> + <dt><b>PHPExcel_Writer_Excel2007_Workbook</b></dt> + <dd>in file Workbook.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Workbook</dd> + <dt><b>PHPExcel_Writer_Excel2007_Worksheet</b></dt> + <dd>in file Worksheet.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Worksheet</dd> + <dt><b>PHPExcel_Writer_Excel2007_WriterPart</b></dt> + <dd>in file WriterPart.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_WriterPart</dd> + <dt><b>PHPExcel_Writer_HTML</b></dt> + <dd>in file HTML.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_HTML</dd> + <dt><b>PHPExcel_Writer_IWriter</b></dt> + <dd>in file IWriter.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_IWriter</dd> + <dt><b>PHPExcel_Writer_PDF</b></dt> + <dd>in file PDF.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_PDF</dd> + <dt><b>PHPExcel_Writer_PDF_Core</b></dt> + <dd>in file Core.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_PDF_Core</dd> + <dt><b>PHPExcel_Writer_PDF_DomPDF</b></dt> + <dd>in file DomPDF.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_PDF_DomPDF</dd> + <dt><b>PHPExcel_Writer_PDF_mPDF</b></dt> + <dd>in file mPDF.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_PDF_mPDF</dd> + <dt><b>PHPExcel_Writer_PDF_tcPDF</b></dt> + <dd>in file tcPDF.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_PDF_tcPDF</dd> + <dt><b>PHPToExcel</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodPHPToExcel">PHPExcel_Shared_Date::PHPToExcel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a date from PHP to Excel</dd> + <dt><b>pixelsToCellDimension</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpixelsToCellDimension">PHPExcel_Shared_Drawing::pixelsToCellDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert pixels to column width. Exact algorithm not known.</dd> + <dt><b>pixelsToEMU</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpixelsToEMU">PHPExcel_Shared_Drawing::pixelsToEMU()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert pixels to EMU</dd> + <dt><b>pixelsToPoints</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpixelsToPoints">PHPExcel_Shared_Drawing::pixelsToPoints()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert pixels to points</dd> + <dt><b>plus</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodplus">PHPExcel_Shared_JAMA_Matrix::plus()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;plus</dd> + <dt><b>plusEquals</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodplusEquals">PHPExcel_Shared_JAMA_Matrix::plusEquals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;plusEquals</dd> + <dt><b>PMT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPMT">PHPExcel_Calculation_Financial::PMT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PMT</dd> + <dt><b>pointsToPixels</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpointsToPixels">PHPExcel_Shared_Drawing::pointsToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert points to pixels</dd> + <dt><b>POISSON</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPOISSON">PHPExcel_Calculation_Statistical::POISSON()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;POISSON</dd> + <dt><b>polyfit</b></dt> + <dd>in file polyfit.php, function <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionpolyfit">polyfit()</a></dd> + <dt><b>PolymorphicArgumentException</b></dt> + <dd>in file Matrix.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#constPolymorphicArgumentException">PHPExcel_Shared_JAMA_Matrix::PolymorphicArgumentException</a></dd> + <dt><b>PolymorphicArgumentException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#definePolymorphicArgumentException">PolymorphicArgumentException</a></dd> + <dt><b>pop</b></dt> + <dd>in file Stack.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodpop">PHPExcel_Calculation_Token_Stack::pop()</a></dd> + <dt><b>POSITION_BOTTOM</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_BOTTOM">PHPExcel_Chart_Legend::POSITION_BOTTOM</a></dd> + <dt><b>POSITION_LEFT</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_LEFT">PHPExcel_Chart_Legend::POSITION_LEFT</a></dd> + <dt><b>POSITION_RIGHT</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_RIGHT">PHPExcel_Chart_Legend::POSITION_RIGHT</a></dd> + <dt><b>POSITION_TOP</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_TOP">PHPExcel_Chart_Legend::POSITION_TOP</a></dd> + <dt><b>POSITION_TOPRIGHT</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_TOPRIGHT">PHPExcel_Chart_Legend::POSITION_TOPRIGHT</a></dd> + <dt><b>POWER</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodPOWER">PHPExcel_Calculation_MathTrig::POWER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;POWER</dd> + <dt><b>power</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodpower">PHPExcel_Shared_JAMA_Matrix::power()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;power</dd> + <dt><b>PPMT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPPMT">PHPExcel_Calculation_Financial::PPMT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PPMT</dd> + <dt><b>ppsTotal</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodppsTotal">PHPExcel_Shared_OLE::ppsTotal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gives the total number of PPS's found in the OLE container.</dd> + <dt><b>PRECISION</b></dt> + <dd>in file Functions.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#definePRECISION">PRECISION</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PRECISION</dd> + <dt><b>PrecisionLossException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#definePrecisionLossException">PrecisionLossException</a></dd> + <dt><b>prev</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodprev">PHPExcel_Worksheet_RowIterator::prev()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the iterator to its previous value</dd> + <dt><b>PRICE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPRICE">PHPExcel_Calculation_Financial::PRICE()</a></dd> + <dt><b>PRICEDISC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPRICEDISC">PHPExcel_Calculation_Financial::PRICEDISC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PRICEDISC</dd> + <dt><b>PRICEMAT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPRICEMAT">PHPExcel_Calculation_Financial::PRICEMAT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PRICEMAT</dd> + <dt><b>printpoly</b></dt> + <dd>in file polyfit.php, function <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionprintpoly">printpoly()</a></dd> + <dt><b>printRowColHeaders</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodprintRowColHeaders">PHPExcel_Writer_Excel5_Worksheet::printRowColHeaders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the option to print the row and column headers on the printed page.</dd> + <dt><b>privAdd</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivAdd">PclZip::privAdd()</a></dd> + <dt><b>privAddFile</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivAddFile">PclZip::privAddFile()</a></dd> + <dt><b>privAddFileList</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivAddFileList">PclZip::privAddFileList()</a></dd> + <dt><b>privAddFileUsingTempFile</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivAddFileUsingTempFile">PclZip::privAddFileUsingTempFile()</a></dd> + <dt><b>privAddList</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivAddList">PclZip::privAddList()</a></dd> + <dt><b>privCalculateStoredFilename</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivCalculateStoredFilename">PclZip::privCalculateStoredFilename()</a></dd> + <dt><b>privCheckFileHeaders</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivCheckFileHeaders">PclZip::privCheckFileHeaders()</a></dd> + <dt><b>privCheckFormat</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivCheckFormat">PclZip::privCheckFormat()</a></dd> + <dt><b>privCloseFd</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivCloseFd">PclZip::privCloseFd()</a></dd> + <dt><b>privConvertHeader2FileInfo</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">PclZip::privConvertHeader2FileInfo()</a></dd> + <dt><b>privCreate</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivCreate">PclZip::privCreate()</a></dd> + <dt><b>privDeleteByRule</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivDeleteByRule">PclZip::privDeleteByRule()</a></dd> + <dt><b>privDirCheck</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivDirCheck">PclZip::privDirCheck()</a></dd> + <dt><b>privDisableMagicQuotes</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivDisableMagicQuotes">PclZip::privDisableMagicQuotes()</a></dd> + <dt><b>privDuplicate</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivDuplicate">PclZip::privDuplicate()</a></dd> + <dt><b>privErrorLog</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivErrorLog">PclZip::privErrorLog()</a></dd> + <dt><b>privErrorReset</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivErrorReset">PclZip::privErrorReset()</a></dd> + <dt><b>privExtractByRule</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivExtractByRule">PclZip::privExtractByRule()</a></dd> + <dt><b>privExtractFile</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivExtractFile">PclZip::privExtractFile()</a></dd> + <dt><b>privExtractFileAsString</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivExtractFileAsString">PclZip::privExtractFileAsString()</a></dd> + <dt><b>privExtractFileInOutput</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivExtractFileInOutput">PclZip::privExtractFileInOutput()</a></dd> + <dt><b>privExtractFileUsingTempFile</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivExtractFileUsingTempFile">PclZip::privExtractFileUsingTempFile()</a></dd> + <dt><b>privFileDescrExpand</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivFileDescrExpand">PclZip::privFileDescrExpand()</a></dd> + <dt><b>privFileDescrParseAtt</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivFileDescrParseAtt">PclZip::privFileDescrParseAtt()</a></dd> + <dt><b>privList</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivList">PclZip::privList()</a></dd> + <dt><b>privMerge</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivMerge">PclZip::privMerge()</a></dd> + <dt><b>privOpenFd</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivOpenFd">PclZip::privOpenFd()</a></dd> + <dt><b>privOptionDefaultThreshold</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivOptionDefaultThreshold">PclZip::privOptionDefaultThreshold()</a></dd> + <dt><b>privParseOptions</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivParseOptions">PclZip::privParseOptions()</a></dd> + <dt><b>privReadCentralFileHeader</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivReadCentralFileHeader">PclZip::privReadCentralFileHeader()</a></dd> + <dt><b>privReadEndCentralDir</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivReadEndCentralDir">PclZip::privReadEndCentralDir()</a></dd> + <dt><b>privReadFileHeader</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivReadFileHeader">PclZip::privReadFileHeader()</a></dd> + <dt><b>privSwapBackMagicQuotes</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">PclZip::privSwapBackMagicQuotes()</a></dd> + <dt><b>privWriteCentralFileHeader</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivWriteCentralFileHeader">PclZip::privWriteCentralFileHeader()</a></dd> + <dt><b>privWriteCentralHeader</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivWriteCentralHeader">PclZip::privWriteCentralHeader()</a></dd> + <dt><b>privWriteFileHeader</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivWriteFileHeader">PclZip::privWriteFileHeader()</a></dd> + <dt><b>PRODUCT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodPRODUCT">PHPExcel_Calculation_MathTrig::PRODUCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PRODUCT</dd> + <dt><b>product</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodproduct">Base::product()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates PROD { (xi) }, (the product of all observations) Handles cummulative data sets correctly</dd> + <dt><b>productN</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodproductN">Base::productN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates PROD { (xi)^n }, which is the product of all observations Handles cummulative data sets correctly</dd> + <dt><b>PROPERCASE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodPROPERCASE">PHPExcel_Calculation_TextData::PROPERCASE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PROPERCASE</dd> + <dt><b>properties</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodproperties">PclZip::properties()</a></dd> + <dt><b>PROPERTY_STORAGE_BLOCK_SIZE</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constPROPERTY_STORAGE_BLOCK_SIZE">PHPExcel_Shared_OLERead::PROPERTY_STORAGE_BLOCK_SIZE</a></dd> + <dt><b>PROPERTY_TYPE_BOOLEAN</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_BOOLEAN">PHPExcel_DocumentProperties::PROPERTY_TYPE_BOOLEAN</a><br>&nbsp;&nbsp;&nbsp;&nbsp;constants</dd> + <dt><b>PROPERTY_TYPE_DATE</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_DATE">PHPExcel_DocumentProperties::PROPERTY_TYPE_DATE</a></dd> + <dt><b>PROPERTY_TYPE_FLOAT</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_FLOAT">PHPExcel_DocumentProperties::PROPERTY_TYPE_FLOAT</a></dd> + <dt><b>PROPERTY_TYPE_INTEGER</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_INTEGER">PHPExcel_DocumentProperties::PROPERTY_TYPE_INTEGER</a></dd> + <dt><b>PROPERTY_TYPE_STRING</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_STRING">PHPExcel_DocumentProperties::PROPERTY_TYPE_STRING</a></dd> + <dt><b>PROPERTY_TYPE_UNKNOWN</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_UNKNOWN">PHPExcel_DocumentProperties::PROPERTY_TYPE_UNKNOWN</a></dd> + <dt><b>protectCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodprotectCells">PHPExcel_Worksheet::protectCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set protection on a cell range</dd> + <dt><b>protectCellsByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodprotectCellsByColumnAndRow">PHPExcel_Worksheet::protectCellsByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set protection on a cell range by using numeric cell coordinates</dd> + <dt><b>PROTECTION_INHERIT</b></dt> + <dd>in file Protection.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#constPROTECTION_INHERIT">PHPExcel_Style_Protection::PROTECTION_INHERIT</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Protection styles</dd> + <dt><b>PROTECTION_PROTECTED</b></dt> + <dd>in file Protection.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#constPROTECTION_PROTECTED">PHPExcel_Style_Protection::PROTECTION_PROTECTED</a></dd> + <dt><b>PROTECTION_UNPROTECTED</b></dt> + <dd>in file Protection.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#constPROTECTION_UNPROTECTED">PHPExcel_Style_Protection::PROTECTION_UNPROTECTED</a></dd> + <dt><b>push</b></dt> + <dd>in file Stack.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodpush">PHPExcel_Calculation_Token_Stack::push()</a></dd> + <dt><b>PV</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPV">PHPExcel_Calculation_Financial::PV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PV</dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="q"></a> + <div> + <h2>q</h2> + <dl> + <dt><b>QRDecomposition.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html">QRDecomposition.php</a></dd> + <dt><b>QUARTILE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodQUARTILE">PHPExcel_Calculation_Statistical::QUARTILE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;QUARTILE</dd> + <dt><b>quartileDeviation</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodquartileDeviation">Base::quartileDeviation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The quartile deviation is half of the interquartile range value</dd> + <dt><b>quartiles</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodquartiles">Base::quartiles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The quartiles are defined as the values that divide a sorted data set into four equal-sized subsets, and correspond to the 25th, 50th, and 75th percentiles.</dd> + <dt><b>quartileSkewnessCoefficient</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodquartileSkewnessCoefficient">Base::quartileSkewnessCoefficient()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The quartile skewness coefficient (also known as Bowley Skewness), is defined as follows:</dd> + <dt><b>quartileVariationCoefficient</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodquartileVariationCoefficient">Base::quartileVariationCoefficient()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The quartile variation coefficient is defines as follows:</dd> + <dt><b>QUOTE_DOUBLE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constQUOTE_DOUBLE">PHPExcel_Calculation_FormulaParser::QUOTE_DOUBLE</a></dd> + <dt><b>QUOTE_SINGLE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constQUOTE_SINGLE">PHPExcel_Calculation_FormulaParser::QUOTE_SINGLE</a></dd> + <dt><b>QUOTIENT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodQUOTIENT">PHPExcel_Calculation_MathTrig::QUOTIENT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;QUOTIENT</dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>$ReturnDateType</b></dt> + <dd>in file Functions.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#var$ReturnDateType">PHPExcel_Calculation_Functions::$ReturnDateType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Data Type to use when returning date values</dd> + <dt><b>$root</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$root">PHPExcel_Shared_OLE::$root</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Root directory of OLE container</dd> + <dt><b>ReferenceHelper.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---ReferenceHelper.php.html">ReferenceHelper.php</a></dd> + <dt><b>Run.php</b></dt> + <dd>procedural page <a href="PHPExcel_RichText/_PHPExcel---RichText---Run.php.html">Run.php</a></dd> + <dt><b>RichText.php</b></dt> + <dd>procedural page <a href="PHPExcel_RichText/_PHPExcel---RichText.php.html">RichText.php</a></dd> + <dt><b>Root.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html">Root.php</a></dd> + <dt><b>Rule.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html">Rule.php</a></dd> + <dt><b>Row.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html">Row.php</a></dd> + <dt><b>RowDimension.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html">RowDimension.php</a></dd> + <dt><b>RowIterator.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html">RowIterator.php</a></dd> + <dt><b>Rels.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html">Rels.php</a></dd> + <dt><b>RAND</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodRAND">PHPExcel_Calculation_MathTrig::RAND()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RAND</dd> + <dt><b>range</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodrange">Base::range()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the range of the data set = max - min</dd> + <dt><b>rangeBoundaries</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodrangeBoundaries">PHPExcel_Cell::rangeBoundaries()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate range boundaries</dd> + <dt><b>rangeDimension</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodrangeDimension">PHPExcel_Cell::rangeDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate range dimension</dd> + <dt><b>rangeToArray</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrangeToArray">PHPExcel_Worksheet::rangeToArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create array from a range of cells</dd> + <dt><b>rank</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodrank">SingularValueDecomposition::rank()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Effective numerical matrix rank</dd> + <dt><b>RANK</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodRANK">PHPExcel_Calculation_Statistical::RANK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RANK</dd> + <dt><b>RATE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodRATE">PHPExcel_Calculation_Financial::RATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RATE</dd> + <dt><b>read</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodread">PHPExcel_Shared_OLE::read()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads an OLE container from the contents of the file given.</dd> + <dt><b>read</b></dt> + <dd>in file OLERead.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#methodread">PHPExcel_Shared_OLERead::read()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read the file</dd> + <dt><b>readCell</b></dt> + <dd>in file IReadFilter.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html#methodreadCell">PHPExcel_Reader_IReadFilter::readCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Should this cell be read?</dd> + <dt><b>readCell</b></dt> + <dd>in file DefaultReadFilter.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html#methodreadCell">PHPExcel_Reader_DefaultReadFilter::readCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Should this cell be read?</dd> + <dt><b>readChart</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html#methodreadChart">PHPExcel_Reader_Excel2007_Chart::readChart()</a></dd> + <dt><b>realpath</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_File.html#methodrealpath">PHPExcel_Shared_File::realpath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns canonicalized absolute pathname, also for ZIP archives</dd> + <dt><b>rebindParent</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrebindParent">PHPExcel_Worksheet::rebindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Re-bind parent</dd> + <dt><b>rebindParent</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodrebindParent">PHPExcel_Cell::rebindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Re-bind parent</dd> + <dt><b>RECEIVED</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodRECEIVED">PHPExcel_Calculation_Financial::RECEIVED()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RECEIVED</dd> + <dt><b>REF</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodREF">PHPExcel_Calculation_Functions::REF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;REF</dd> + <dt><b>REFHELPER_REGEXP_CELLRANGE</b></dt> + <dd>in file ReferenceHelper.php, class constant <a href="PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_CELLRANGE">PHPExcel_ReferenceHelper::REFHELPER_REGEXP_CELLRANGE</a></dd> + <dt><b>REFHELPER_REGEXP_CELLREF</b></dt> + <dd>in file ReferenceHelper.php, class constant <a href="PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_CELLREF">PHPExcel_ReferenceHelper::REFHELPER_REGEXP_CELLREF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Regular Expressions</dd> + <dt><b>REFHELPER_REGEXP_COLRANGE</b></dt> + <dd>in file ReferenceHelper.php, class constant <a href="PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_COLRANGE">PHPExcel_ReferenceHelper::REFHELPER_REGEXP_COLRANGE</a></dd> + <dt><b>REFHELPER_REGEXP_ROWRANGE</b></dt> + <dd>in file ReferenceHelper.php, class constant <a href="PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_ROWRANGE">PHPExcel_ReferenceHelper::REFHELPER_REGEXP_ROWRANGE</a></dd> + <dt><b>refresh</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodrefresh">PHPExcel_Chart_PlotArea::refresh()</a></dd> + <dt><b>refresh</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodrefresh">PHPExcel_Chart::refresh()</a></dd> + <dt><b>refresh</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodrefresh">PHPExcel_Chart_DataSeries::refresh()</a></dd> + <dt><b>refresh</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodrefresh">PHPExcel_Chart_DataSeriesValues::refresh()</a></dd> + <dt><b>refreshColumnDimensions</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrefreshColumnDimensions">PHPExcel_Worksheet::refreshColumnDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Refresh column dimensions</dd> + <dt><b>refreshRowDimensions</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrefreshRowDimensions">PHPExcel_Worksheet::refreshRowDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Refresh row dimensions</dd> + <dt><b>REGEX_SHEET_TITLE_QUOTED</b></dt> + <dd>in file Parser.php, class constant <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#constREGEX_SHEET_TITLE_QUOTED">PHPExcel_Writer_Excel5_Parser::REGEX_SHEET_TITLE_QUOTED</a></dd> + <dt><b>REGEX_SHEET_TITLE_UNQUOTED</b></dt> + <dd>in file Parser.php, class constant <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#constREGEX_SHEET_TITLE_UNQUOTED">PHPExcel_Writer_Excel5_Parser::REGEX_SHEET_TITLE_UNQUOTED</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constants</dd> + <dt><b>Register</b></dt> + <dd>in file Autoloader.php, method <a href="PHPExcel/PHPExcel_Autoloader.html#methodRegister">PHPExcel_Autoloader::Register()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Register the Autoloader with SPL</dd> + <dt><b>register</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodregister">PHPExcel_Shared_ZipStreamWrapper::register()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Register wrapper</dd> + <dt><b>remove</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodremove">PHPExcel_HashTable::remove()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove HashTable item</dd> + <dt><b>removeAutoFilter</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveAutoFilter">PHPExcel_Worksheet::removeAutoFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove autofilter</dd> + <dt><b>removeCellStyleXfByIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodremoveCellStyleXfByIndex">PHPExcel::removeCellStyleXfByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove cellStyleXf by index</dd> + <dt><b>removeCellXfByIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodremoveCellXfByIndex">PHPExcel::removeCellXfByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove cellXf by index. It is ensured that all cells get their xf index updated.</dd> + <dt><b>removeColumn</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveColumn">PHPExcel_Worksheet::removeColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove a column, updating all possible related data</dd> + <dt><b>removeColumnByIndex</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveColumnByIndex">PHPExcel_Worksheet::removeColumnByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove a column, updating all possible related data</dd> + <dt><b>removeConditionalStyles</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveConditionalStyles">PHPExcel_Worksheet::removeConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Removes conditional styles for a cell</dd> + <dt><b>removeImage</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodremoveImage">PHPExcel_Worksheet_HeaderFooter::removeImage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove header/footer image</dd> + <dt><b>removeNamedRange</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodremoveNamedRange">PHPExcel::removeNamedRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove named range</dd> + <dt><b>removeRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveRow">PHPExcel_Worksheet::removeRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a row, updating all possible related data</dd> + <dt><b>removeSheetByIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodremoveSheetByIndex">PHPExcel::removeSheetByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove sheet by index</dd> + <dt><b>render</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodrender">PHPExcel_Chart::render()</a></dd> + <dt><b>render</b></dt> + <dd>in file jpgraph.php, method <a href="PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html#methodrender">PHPExcel_Chart_Renderer_jpgraph::render()</a></dd> + <dt><b>RENDERING_DEFAULT</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_DEFAULT">PHPExcel_Worksheet_MemoryDrawing::RENDERING_DEFAULT</a></dd> + <dt><b>RENDERING_GIF</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_GIF">PHPExcel_Worksheet_MemoryDrawing::RENDERING_GIF</a></dd> + <dt><b>RENDERING_JPEG</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_JPEG">PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG</a></dd> + <dt><b>RENDERING_PNG</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_PNG">PHPExcel_Worksheet_MemoryDrawing::RENDERING_PNG</a></dd> + <dt><b>REPLACE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodREPLACE">PHPExcel_Calculation_TextData::REPLACE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;REPLACE</dd> + <dt><b>resetFirstPageNumber</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodresetFirstPageNumber">PHPExcel_Worksheet_PageSetup::resetFirstPageNumber()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reset first page number</dd> + <dt><b>resetStart</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodresetStart">PHPExcel_Worksheet_RowIterator::resetStart()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;(Re)Set the start row and the current row pointer</dd> + <dt><b>resetTabColor</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodresetTabColor">PHPExcel_Worksheet::resetTabColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reset tab color</dd> + <dt><b>resolveRange</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodresolveRange">PHPExcel_NamedRange::resolveRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Resolve a named range to a regular cell range</dd> + <dt><b>RETURNDATE_EXCEL</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constRETURNDATE_EXCEL">PHPExcel_Calculation_Functions::RETURNDATE_EXCEL</a></dd> + <dt><b>RETURNDATE_PHP_NUMERIC</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constRETURNDATE_PHP_NUMERIC">PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC</a></dd> + <dt><b>RETURNDATE_PHP_OBJECT</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constRETURNDATE_PHP_OBJECT">PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT</a></dd> + <dt><b>RETURNSTRING</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodRETURNSTRING">PHPExcel_Calculation_TextData::RETURNSTRING()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RETURNSTRING</dd> + <dt><b>RETURN_ARRAY_AS_ARRAY</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constRETURN_ARRAY_AS_ARRAY">PHPExcel_Calculation::RETURN_ARRAY_AS_ARRAY</a></dd> + <dt><b>RETURN_ARRAY_AS_ERROR</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constRETURN_ARRAY_AS_ERROR">PHPExcel_Calculation::RETURN_ARRAY_AS_ERROR</a><br>&nbsp;&nbsp;&nbsp;&nbsp;constants</dd> + <dt><b>RETURN_ARRAY_AS_VALUE</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constRETURN_ARRAY_AS_VALUE">PHPExcel_Calculation::RETURN_ARRAY_AS_VALUE</a></dd> + <dt><b>rewind</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#methodrewind">PHPExcel_WorksheetIterator::rewind()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Rewind iterator</dd> + <dt><b>rewind</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodrewind">PHPExcel_Worksheet_RowIterator::rewind()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Rewind the iterator to the starting row</dd> + <dt><b>rewind</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodrewind">PHPExcel_Worksheet_CellIterator::rewind()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Rewind iterator</dd> + <dt><b>RIGHT</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodRIGHT">PHPExcel_Calculation_TextData::RIGHT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RIGHT</dd> + <dt><b>ROMAN</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodROMAN">PHPExcel_Calculation_MathTrig::ROMAN()</a></dd> + <dt><b>ROOT_START_BLOCK_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constROOT_START_BLOCK_POS">PHPExcel_Shared_OLERead::ROOT_START_BLOCK_POS</a></dd> + <dt><b>ROUNDDOWN</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodROUNDDOWN">PHPExcel_Calculation_MathTrig::ROUNDDOWN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ROUNDDOWN</dd> + <dt><b>ROUNDUP</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodROUNDUP">PHPExcel_Calculation_MathTrig::ROUNDUP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ROUNDUP</dd> + <dt><b>ROW</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodROW">PHPExcel_Calculation_LookupRef::ROW()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ROW</dd> + <dt><b>RowLengthException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineRowLengthException">RowLengthException</a></dd> + <dt><b>ROWS</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodROWS">PHPExcel_Calculation_LookupRef::ROWS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ROWS</dd> + <dt><b>RSQ</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodRSQ">PHPExcel_Calculation_Statistical::RSQ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RSQ</dd> + <dt><b>run</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrun">Benchmark::run()</a></dd> + <dt><b>runCholesky</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrunCholesky">Benchmark::runCholesky()</a></dd> + <dt><b>runEig</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrunEig">Benchmark::runEig()</a></dd> + <dt><b>runLU</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrunLU">Benchmark::runLU()</a></dd> + <dt><b>runQR</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrunQR">Benchmark::runQR()</a></dd> + <dt><b>runSVD</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrunSVD">Benchmark::runSVD()</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>$sbat</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$sbat">PHPExcel_Shared_OLE::$sbat</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Short Block Allocation Table</dd> + <dt><b>$Size</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Size">PHPExcel_Shared_OLE_PPS::$Size</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The size of the PPS's data (in bytes)</dd> + <dt><b>$smallBlockSize</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$smallBlockSize">PHPExcel_Shared_OLE::$smallBlockSize</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Size of small blocks. This is usually 64.</dd> + <dt><b>$stat</b></dt> + <dd>in file benchmark.php, variable <a href="JAMA/Benchmark.html#var$stat">Benchmark::$stat</a></dd> + <dt><b>$summaryInformation</b></dt> + <dd>in file OLERead.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#var$summaryInformation">PHPExcel_Shared_OLERead::$summaryInformation</a></dd> + <dt><b>$suppressFormulaErrors</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$suppressFormulaErrors">PHPExcel_Calculation::$suppressFormulaErrors</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag to determine how formula errors should be handled If true, then a user error will be triggered If false, then an exception will be thrown</dd> + <dt><b>SQLite.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html">SQLite.php</a></dd> + <dt><b>SQLite3.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html">SQLite3.php</a></dd> + <dt><b>Statistical.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html">Statistical.php</a></dd> + <dt><b>Stack.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html">Stack.php</a></dd> + <dt><b>SYLK.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html">SYLK.php</a></dd> + <dt><b>Settings.php</b></dt> + <dd>procedural page <a href="PHPExcel_Settings/_PHPExcel---Settings.php.html">Settings.php</a></dd> + <dt><b>SpContainer.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html">SpContainer.php</a></dd> + <dt><b>SpgrContainer.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html">SpgrContainer.php</a></dd> + <dt><b>Stats.php</b></dt> + <dd>procedural page <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html">Stats.php</a></dd> + <dt><b>SingularValueDecomposition.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html">SingularValueDecomposition.php</a></dd> + <dt><b>String.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---String.php.html">String.php</a></dd> + <dt><b>Style.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style.php.html">Style.php</a></dd> + <dt><b>Shadow.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing---Shadow.php.html">Shadow.php</a></dd> + <dt><b>SheetView.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html">SheetView.php</a></dd> + <dt><b>StringTable.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html">StringTable.php</a></dd> + <dt><b>Style.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html">Style.php</a></dd> + <dt><b>sampleCentralMoment</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsampleCentralMoment">Base::sampleCentralMoment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the nth central moment (m{n}) of a data set.</dd> + <dt><b>sampleRawMoment</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsampleRawMoment">Base::sampleRawMoment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the nth raw moment (m{n}) of a data set.</dd> + <dt><b>SanitizeUTF8</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodSanitizeUTF8">PHPExcel_Shared_String::SanitizeUTF8()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Try to sanitize UTF8, stripping invalid byte sequences. Not perfect. Does not surrogate characters.</dd> + <dt><b>save</b></dt> + <dd>in file tcPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html#methodsave">PHPExcel_Writer_PDF_tcPDF::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsave">PHPExcel_Writer_Excel2007::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file IWriter.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html#methodsave">PHPExcel_Writer_IWriter::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsave">PHPExcel_Writer_HTML::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsave">PHPExcel_Writer_CSV::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#methodsave">PHPExcel_Shared_OLE_PPS_Root::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Method for saving the whole OLE container (including files).</dd> + <dt><b>save</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodsave">PHPExcel_Writer_Excel5::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file mPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html#methodsave">PHPExcel_Writer_PDF_mPDF::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file DomPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html#methodsave">PHPExcel_Writer_PDF_DomPDF::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>SEARCHINSENSITIVE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSEARCHINSENSITIVE">PHPExcel_Calculation_TextData::SEARCHINSENSITIVE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SEARCHINSENSITIVE</dd> + <dt><b>SEARCHSENSITIVE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSEARCHSENSITIVE">PHPExcel_Calculation_TextData::SEARCHSENSITIVE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SEARCHSENSITIVE</dd> + <dt><b>SECONDOFMINUTE</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodSECONDOFMINUTE">PHPExcel_Calculation_DateTime::SECONDOFMINUTE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SECONDOFMINUTE</dd> + <dt><b>seek</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodseek">PHPExcel_Worksheet_RowIterator::seek()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the row pointer to the selected row</dd> + <dt><b>SEMICOLON</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constSEMICOLON">PHPExcel_Calculation_FormulaParser::SEMICOLON</a></dd> + <dt><b>SERIESSUM</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSERIESSUM">PHPExcel_Calculation_MathTrig::SERIESSUM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SERIESSUM</dd> + <dt><b>set</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodset">PHPExcel_Shared_JAMA_Matrix::set()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;set</dd> + <dt><b>setActiveSheetIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsetActiveSheetIndex">PHPExcel::setActiveSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set active sheet index</dd> + <dt><b>setActiveSheetIndexByName</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsetActiveSheetIndexByName">PHPExcel::setActiveSheetIndexByName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set active sheet index by name</dd> + <dt><b>setAlignment</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetAlignment">PHPExcel_Worksheet_Drawing_Shadow::setAlignment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Shadow alignment</dd> + <dt><b>setAlignment</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetAlignment">PHPExcel_Comment::setAlignment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Alignment</dd> + <dt><b>setAlignWithMargins</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetAlignWithMargins">PHPExcel_Worksheet_HeaderFooter::setAlignWithMargins()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AlignWithMargins</dd> + <dt><b>setAllowBlank</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetAllowBlank">PHPExcel_Cell_DataValidation::setAllowBlank()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Allow Blank</dd> + <dt><b>setAlpha</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetAlpha">PHPExcel_Worksheet_Drawing_Shadow::setAlpha()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Alpha</dd> + <dt><b>setARGB</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodsetARGB">PHPExcel_Style_Color::setARGB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ARGB</dd> + <dt><b>setArrayReturnType</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetArrayReturnType">PHPExcel_Calculation::setArrayReturnType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Array Return Type (Array or Value of first element in the array)</dd> + <dt><b>setAttribute</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetAttribute">PHPExcel_Worksheet_AutoFilter_Column::setAttribute()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set An AutoFilter Attribute</dd> + <dt><b>setAttributes</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetAttributes">PHPExcel_Worksheet_AutoFilter_Column::setAttributes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Attributes</dd> + <dt><b>setAuthor</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetAuthor">PHPExcel_Comment::setAuthor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Author</dd> + <dt><b>setAutoFilter</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetAutoFilter">PHPExcel_Worksheet_Protection::setAutoFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter</dd> + <dt><b>setAutoFilter</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetAutoFilter">PHPExcel_Worksheet::setAutoFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter</dd> + <dt><b>setAutoFilterByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetAutoFilterByColumnAndRow">PHPExcel_Worksheet::setAutoFilterByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Autofilter Range by using numeric cell coordinates</dd> + <dt><b>setAutoSize</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetAutoSize">PHPExcel_Worksheet_ColumnDimension::setAutoSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Auto Size</dd> + <dt><b>setAutoSizeMethod</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodsetAutoSizeMethod">PHPExcel_Shared_Font::setAutoSizeMethod()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set autoSize method</dd> + <dt><b>setBgColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetBgColor">PHPExcel_Writer_Excel5_Xf::setBgColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's background color</dd> + <dt><b>setBlip</b></dt> + <dd>in file BSE.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodsetBlip">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::setBlip()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the BLIP</dd> + <dt><b>setBlipType</b></dt> + <dd>in file BSE.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodsetBlipType">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::setBlipType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the BLIP type</dd> + <dt><b>setBlurRadius</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetBlurRadius">PHPExcel_Worksheet_Drawing_Shadow::setBlurRadius()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Blur radius</dd> + <dt><b>setBold</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetBold">PHPExcel_Style_Font::setBold()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Bold</dd> + <dt><b>setBorderStyle</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodsetBorderStyle">PHPExcel_Style_Border::setBorderStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Border style</dd> + <dt><b>setBottom</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetBottom">PHPExcel_Worksheet_PageMargins::setBottom()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Bottom</dd> + <dt><b>setBottomColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetBottomColor">PHPExcel_Writer_Excel5_Xf::setBottomColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's bottom border color</dd> + <dt><b>setBottomRightCell</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightCell">PHPExcel_Chart::setBottomRightCell()</a></dd> + <dt><b>setBottomRightOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightOffset">PHPExcel_Chart::setBottomRightOffset()</a></dd> + <dt><b>setBottomRightPosition</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightPosition">PHPExcel_Chart::setBottomRightPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Bottom Right position of the chart</dd> + <dt><b>setBottomRightXOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightXOffset">PHPExcel_Chart::setBottomRightXOffset()</a></dd> + <dt><b>setBottomRightYOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightYOffset">PHPExcel_Chart::setBottomRightYOffset()</a></dd> + <dt><b>setBreak</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetBreak">PHPExcel_Worksheet::setBreak()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set break on a cell</dd> + <dt><b>setBreakByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetBreakByColumnAndRow">PHPExcel_Worksheet::setBreakByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set break on a cell by using numeric cell coordinates</dd> + <dt><b>setBstoreContainer</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetBstoreContainer">PHPExcel_Shared_Escher_DggContainer::setBstoreContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set BLIP Store Container</dd> + <dt><b>setBuiltInFormatCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodsetBuiltInFormatCode">PHPExcel_Style_NumberFormat::setBuiltInFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Built-In Format Code</dd> + <dt><b>setCacheStorageMethod</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetCacheStorageMethod">PHPExcel_Settings::setCacheStorageMethod()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the method that should be used for cell cacheing</dd> + <dt><b>setCalculatedValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetCalculatedValue">PHPExcel_Cell::setCalculatedValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set old calculated value (cached)</dd> + <dt><b>setCalculationCacheEnabled</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetCalculationCacheEnabled">PHPExcel_Calculation::setCalculationCacheEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Enable/disable calculation cache</dd> + <dt><b>setCalculationCacheExpirationTime</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetCalculationCacheExpirationTime">PHPExcel_Calculation::setCalculationCacheExpirationTime()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set calculation cache expiration time</dd> + <dt><b>setCaption</b></dt> + <dd>in file Title.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html#methodsetCaption">PHPExcel_Chart_Title::setCaption()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set caption</dd> + <dt><b>setCategory</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodsetCategory">PHPExcel_Calculation_Function::setCategory()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Category (represented by CATEGORY_*)</dd> + <dt><b>setCategory</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetCategory">PHPExcel_DocumentProperties::setCategory()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Category</dd> + <dt><b>setCDgSaved</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetCDgSaved">PHPExcel_Shared_Escher_DggContainer::setCDgSaved()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set total number of drawings saved</dd> + <dt><b>setCellValue</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValue">PHPExcel_Worksheet::setCellValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set a cell value</dd> + <dt><b>setCellValueByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValueByColumnAndRow">PHPExcel_Worksheet::setCellValueByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set a cell value by using numeric cell coordinates</dd> + <dt><b>setCellValueExplicit</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValueExplicit">PHPExcel_Worksheet::setCellValueExplicit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set a cell value</dd> + <dt><b>setCellValueExplicitByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValueExplicitByColumnAndRow">PHPExcel_Worksheet::setCellValueExplicitByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set a cell value by using numeric cell coordinates</dd> + <dt><b>setChartRenderer</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetChartRenderer">PHPExcel_Settings::setChartRenderer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set details of the external library that PHPExcel should use for rendering charts</dd> + <dt><b>setChartRendererName</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetChartRendererName">PHPExcel_Settings::setChartRendererName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify to PHPExcel the external library to use for rendering charts</dd> + <dt><b>setChartRendererPath</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetChartRendererPath">PHPExcel_Settings::setChartRendererPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Tell PHPExcel where to find the external library to use for rendering charts</dd> + <dt><b>setCollapsed</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetCollapsed">PHPExcel_Worksheet_ColumnDimension::setCollapsed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Collapsed</dd> + <dt><b>setCollapsed</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetCollapsed">PHPExcel_Worksheet_RowDimension::setCollapsed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Collapsed</dd> + <dt><b>setColor</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetColor">PHPExcel_Worksheet_Drawing_Shadow::setColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Color</dd> + <dt><b>setColor</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetColor">PHPExcel_Style_Font::setColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Color</dd> + <dt><b>setColor</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodsetColor">PHPExcel_Style_Border::setColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Border Color</dd> + <dt><b>setColorIndex</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html#methodsetColorIndex">PHPExcel_Writer_Excel5_Font::setColorIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the color index</dd> + <dt><b>setColumn</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodsetColumn">PHPExcel_Worksheet_AutoFilter::setColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter</dd> + <dt><b>setColumnIndex</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetColumnIndex">PHPExcel_Worksheet_ColumnDimension::setColumnIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ColumnIndex</dd> + <dt><b>setColumnIndex</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetColumnIndex">PHPExcel_Worksheet_AutoFilter_Column::setColumnIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Column Index</dd> + <dt><b>setColumnsToRepeatAtLeft</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetColumnsToRepeatAtLeft">PHPExcel_Worksheet_PageSetup::setColumnsToRepeatAtLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Columns to repeat at left</dd> + <dt><b>setColumnsToRepeatAtLeftByStartAndEnd</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetColumnsToRepeatAtLeftByStartAndEnd">PHPExcel_Worksheet_PageSetup::setColumnsToRepeatAtLeftByStartAndEnd()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Columns to repeat at left by start and end</dd> + <dt><b>setComments</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetComments">PHPExcel_Worksheet::setComments()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set comments array for the entire sheet.</dd> + <dt><b>setCompany</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetCompany">PHPExcel_DocumentProperties::setCompany()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Company</dd> + <dt><b>setCompatibilityMode</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodsetCompatibilityMode">PHPExcel_Calculation_Functions::setCompatibilityMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Compatibility Mode</dd> + <dt><b>setCondition</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetCondition">PHPExcel_Style_Conditional::setCondition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Condition</dd> + <dt><b>setConditionalStyles</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodsetConditionalStyles">PHPExcel_Style::setConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Conditional Styles. Only used on supervisor.</dd> + <dt><b>setConditionalStyles</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetConditionalStyles">PHPExcel_Worksheet::setConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set conditional styles</dd> + <dt><b>setConditions</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetConditions">PHPExcel_Style_Conditional::setConditions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Conditions</dd> + <dt><b>setConditionType</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetConditionType">PHPExcel_Style_Conditional::setConditionType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Condition type</dd> + <dt><b>setContiguous</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetContiguous">PHPExcel_Reader_CSV::setContiguous()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Contiguous</dd> + <dt><b>setCoordinates</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetCoordinates">PHPExcel_Worksheet_BaseDrawing::setCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Coordinates</dd> + <dt><b>setCreated</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetCreated">PHPExcel_DocumentProperties::setCreated()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Created</dd> + <dt><b>setCreator</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetCreator">PHPExcel_DocumentProperties::setCreator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Creator</dd> + <dt><b>setCSpSaved</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetCSpSaved">PHPExcel_Shared_Escher_DggContainer::setCSpSaved()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set total number of shapes saved (including group shapes)</dd> + <dt><b>setCurrencyCode</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodsetCurrencyCode">PHPExcel_Shared_String::setCurrencyCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the currency code. Only used by PHPExcel_Style_NumberFormat::toFormattedString() to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF</dd> + <dt><b>setCustomProperty</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetCustomProperty">PHPExcel_DocumentProperties::setCustomProperty()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set a Custom Property</dd> + <dt><b>setData</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsetData">Base::setData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets and verifies the data, checking for nulls and using the current null handling option</dd> + <dt><b>setData</b></dt> + <dd>in file Blip.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodsetData">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip::setData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the raw image data</dd> + <dt><b>setDataSource</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetDataSource">PHPExcel_Chart_DataSeriesValues::setDataSource()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Series Data Source (formula)</dd> + <dt><b>setDataType</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetDataType">PHPExcel_Cell::setDataType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set cell data type</dd> + <dt><b>setDataType</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetDataType">PHPExcel_Chart_DataSeriesValues::setDataType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Series Data Type</dd> + <dt><b>setDataValidation</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetDataValidation">PHPExcel_Worksheet::setDataValidation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set data validation</dd> + <dt><b>setDataValidation</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetDataValidation">PHPExcel_Cell::setDataValidation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Data validation rules</dd> + <dt><b>setDataValues</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetDataValues">PHPExcel_Chart_DataSeriesValues::setDataValues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Series Data Values</dd> + <dt><b>setDecimalSeparator</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodsetDecimalSeparator">PHPExcel_Shared_String::setDecimalSeparator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the decimal separator. Only used by PHPExcel_Style_NumberFormat::toFormattedString() to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF</dd> + <dt><b>setDefaultStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetDefaultStyle">PHPExcel_Worksheet::setDefaultStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set default style - should only be used by PHPExcel_IReader implementations!</dd> + <dt><b>setDeleteColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetDeleteColumns">PHPExcel_Worksheet_Protection::setDeleteColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set DeleteColumns</dd> + <dt><b>setDeleteRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetDeleteRows">PHPExcel_Worksheet_Protection::setDeleteRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set DeleteRows</dd> + <dt><b>setDelimiter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetDelimiter">PHPExcel_Reader_CSV::setDelimiter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set delimiter</dd> + <dt><b>setDelimiter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetDelimiter">PHPExcel_Writer_CSV::setDelimiter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set delimiter</dd> + <dt><b>setDescription</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetDescription">PHPExcel_Worksheet_BaseDrawing::setDescription()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Description</dd> + <dt><b>setDescription</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetDescription">PHPExcel_DocumentProperties::setDescription()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Description</dd> + <dt><b>setDgContainer</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodsetDgContainer">PHPExcel_Shared_Escher::setDgContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Drawing Container</dd> + <dt><b>setDggContainer</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodsetDggContainer">PHPExcel_Shared_Escher::setDggContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Drawing Group Container</dd> + <dt><b>setDgId</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodsetDgId">PHPExcel_Shared_Escher_DgContainer::setDgId()</a></dd> + <dt><b>setDiagColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetDiagColor">PHPExcel_Writer_Excel5_Xf::setDiagColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's diagonal border color</dd> + <dt><b>setDiagonalDirection</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodsetDiagonalDirection">PHPExcel_Style_Borders::setDiagonalDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set DiagonalDirection</dd> + <dt><b>setDifferentFirst</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetDifferentFirst">PHPExcel_Worksheet_HeaderFooter::setDifferentFirst()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set DifferentFirst</dd> + <dt><b>setDifferentOddEven</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetDifferentOddEven">PHPExcel_Worksheet_HeaderFooter::setDifferentOddEven()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set DifferentOddEven</dd> + <dt><b>setDirection</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetDirection">PHPExcel_Worksheet_Drawing_Shadow::setDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Shadow direction (in degrees)</dd> + <dt><b>setDisplayBlanksAs</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetDisplayBlanksAs">PHPExcel_Chart::setDisplayBlanksAs()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Display Blanks as</dd> + <dt><b>setDistance</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetDistance">PHPExcel_Worksheet_Drawing_Shadow::setDistance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Shadow distance</dd> + <dt><b>setEnclosure</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetEnclosure">PHPExcel_Reader_CSV::setEnclosure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set enclosure</dd> + <dt><b>setEnclosure</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetEnclosure">PHPExcel_Writer_CSV::setEnclosure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set enclosure</dd> + <dt><b>setEndColor</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetEndColor">PHPExcel_Style_Fill::setEndColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set End Color</dd> + <dt><b>setEndCoordinates</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetEndCoordinates">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setEndCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set cell coordinates of bottom-right corner of shape</dd> + <dt><b>setEndOffsetX</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetEndOffsetX">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setEndOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set offset in x-direction of bottom-right corner of shape measured in 1/1024 of column width</dd> + <dt><b>setEndOffsetY</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetEndOffsetY">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setEndOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set offset in y-direction of bottom-right corner of shape measured in 1/256 of row height</dd> + <dt><b>setError</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetError">PHPExcel_Cell_DataValidation::setError()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Error</dd> + <dt><b>setErrorStyle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetErrorStyle">PHPExcel_Cell_DataValidation::setErrorStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Error style</dd> + <dt><b>setErrorTitle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetErrorTitle">PHPExcel_Cell_DataValidation::setErrorTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Error title</dd> + <dt><b>setEscher</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodsetEscher">PHPExcel_Writer_Excel5_Workbook::setEscher()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Escher object</dd> + <dt><b>setEscher</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodsetEscher">PHPExcel_Writer_Excel5_Worksheet::setEscher()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Escher object</dd> + <dt><b>setEvenFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetEvenFooter">PHPExcel_Worksheet_HeaderFooter::setEvenFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set EvenFooter</dd> + <dt><b>setEvenHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetEvenHeader">PHPExcel_Worksheet_HeaderFooter::setEvenHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set EvenHeader</dd> + <dt><b>setExcelCalendar</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodsetExcelCalendar">PHPExcel_Shared_Date::setExcelCalendar()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Excel calendar (Windows 1900 or Mac 1904)</dd> + <dt><b>setExcelCompatibility</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetExcelCompatibility">PHPExcel_Writer_CSV::setExcelCompatibility()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set whether the file should be saved with full Excel Compatibility</dd> + <dt><b>setExcelName</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodsetExcelName">PHPExcel_Calculation_Function::setExcelName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Excel name</dd> + <dt><b>setExtSheet</b></dt> + <dd>in file Parser.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#methodsetExtSheet">PHPExcel_Writer_Excel5_Parser::setExtSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;This method is used to update the array of sheet names. It is called by the addWorksheet() method of the PHPExcel_Writer_Excel5_Workbook class.</dd> + <dt><b>setFgColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetFgColor">PHPExcel_Writer_Excel5_Xf::setFgColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's foreground color</dd> + <dt><b>setFillType</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetFillType">PHPExcel_Style_Fill::setFillType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Fill Type</dd> + <dt><b>setFilterType</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetFilterType">PHPExcel_Worksheet_AutoFilter_Column::setFilterType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Type</dd> + <dt><b>setFirstFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetFirstFooter">PHPExcel_Worksheet_HeaderFooter::setFirstFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set FirstFooter</dd> + <dt><b>setFirstHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetFirstHeader">PHPExcel_Worksheet_HeaderFooter::setFirstHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set FirstHeader</dd> + <dt><b>setFirstPageNumber</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFirstPageNumber">PHPExcel_Worksheet_PageSetup::setFirstPageNumber()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set first page number</dd> + <dt><b>setFitToHeight</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFitToHeight">PHPExcel_Worksheet_PageSetup::setFitToHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Fit To Height</dd> + <dt><b>setFitToPage</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFitToPage">PHPExcel_Worksheet_PageSetup::setFitToPage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Fit To Page</dd> + <dt><b>setFitToWidth</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFitToWidth">PHPExcel_Worksheet_PageSetup::setFitToWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Fit To Width</dd> + <dt><b>setFont</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetFont">PHPExcel_Writer_PDF_Core::setFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set font. Examples:</dd> + <dt><b>setFont</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodsetFont">PHPExcel_Style::setFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set font</dd> + <dt><b>setFont</b></dt> + <dd>in file Run.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html#methodsetFont">PHPExcel_RichText_Run::setFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set font</dd> + <dt><b>setFontIndex</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetFontIndex">PHPExcel_Writer_Excel5_Xf::setFontIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the font index.</dd> + <dt><b>setFooter</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetFooter">PHPExcel_Worksheet_PageMargins::setFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Footer</dd> + <dt><b>setFormatCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetFormatCells">PHPExcel_Worksheet_Protection::setFormatCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set FormatCells</dd> + <dt><b>setFormatCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodsetFormatCode">PHPExcel_Style_NumberFormat::setFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Format Code</dd> + <dt><b>setFormatCode</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetFormatCode">PHPExcel_Chart_DataSeriesValues::setFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Series Format Code</dd> + <dt><b>setFormatColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetFormatColumns">PHPExcel_Worksheet_Protection::setFormatColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set FormatColumns</dd> + <dt><b>setFormatRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetFormatRows">PHPExcel_Worksheet_Protection::setFormatRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set FormatRows</dd> + <dt><b>setFormula1</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetFormula1">PHPExcel_Cell_DataValidation::setFormula1()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Formula 1</dd> + <dt><b>setFormula2</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetFormula2">PHPExcel_Cell_DataValidation::setFormula2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Formula 2</dd> + <dt><b>setFormulaAttributes</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetFormulaAttributes">PHPExcel_Cell::setFormulaAttributes()</a></dd> + <dt><b>setGenerateSheetNavigationBlock</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::setGenerateSheetNavigationBlock()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + <dt><b>setGrouping</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetGrouping">PHPExcel_Worksheet_AutoFilter_Column_Rule::setGrouping()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Rule Grouping</dd> + <dt><b>setHeader</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetHeader">PHPExcel_Worksheet_PageMargins::setHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Header</dd> + <dt><b>setHeaderFooter</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetHeaderFooter">PHPExcel_Worksheet::setHeaderFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set page header/footer</dd> + <dt><b>setHeight</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetHeight">PHPExcel_Worksheet_HeaderFooterDrawing::setHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Height</dd> + <dt><b>setHeight</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetHeight">PHPExcel_Worksheet_BaseDrawing::setHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Height</dd> + <dt><b>setHeight</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetHeight">PHPExcel_Chart_Layout::setHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Height</dd> + <dt><b>setHeight</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetHeight">PHPExcel_Comment::setHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set comment height (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>setHidden</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodsetHidden">PHPExcel_Style_Protection::setHidden()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set hidden</dd> + <dt><b>setHorizontal</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetHorizontal">PHPExcel_Style_Alignment::setHorizontal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Horizontal</dd> + <dt><b>setHorizontalCentered</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetHorizontalCentered">PHPExcel_Worksheet_PageSetup::setHorizontalCentered()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set center page horizontally</dd> + <dt><b>setHyperlink</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetHyperlink">PHPExcel_Cell::setHyperlink()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Hyperlink</dd> + <dt><b>setHyperlink</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetHyperlink">PHPExcel_Worksheet::setHyperlink()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set hyperlnk</dd> + <dt><b>setIDCLs</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetIDCLs">PHPExcel_Shared_Escher_DggContainer::setIDCLs()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set identifier clusters. array(&lt;drawingId&gt; =&gt; &lt;max shape id&gt;, ...)</dd> + <dt><b>setImageResource</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodsetImageResource">PHPExcel_Worksheet_MemoryDrawing::setImageResource()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set image resource</dd> + <dt><b>setImages</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetImages">PHPExcel_Worksheet_HeaderFooter::setImages()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set header/footer images</dd> + <dt><b>setImagesRoot</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetImagesRoot">PHPExcel_Writer_HTML::setImagesRoot()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set images root</dd> + <dt><b>setIncludeCharts</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetIncludeCharts">PHPExcel_Reader_Excel2007::setIncludeCharts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read charts in workbook Set to true, to advise the Reader to include any charts that exist in the workbook.</dd> + <dt><b>setIncludeCharts</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetIncludeCharts">PHPExcel_Writer_Excel2007::setIncludeCharts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set write charts in workbook Set to true, to advise the Writer to include any charts that exist in the PHPExcel object.</dd> + <dt><b>setIndent</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetIndent">PHPExcel_Style_Alignment::setIndent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set indent</dd> + <dt><b>setIndex</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodsetIndex">PHPExcel_Style::setIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set own index in style collection</dd> + <dt><b>setIndexByName</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsetIndexByName">PHPExcel::setIndexByName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set index for sheet by sheet name.</dd> + <dt><b>setInputEncoding</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodsetInputEncoding">PHPExcel_Reader_HTML::setInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set input encoding</dd> + <dt><b>setInputEncoding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetInputEncoding">PHPExcel_Reader_CSV::setInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set input encoding</dd> + <dt><b>setInputEncoding</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodsetInputEncoding">PHPExcel_Reader_SYLK::setInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set input encoding</dd> + <dt><b>setInsertColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetInsertColumns">PHPExcel_Worksheet_Protection::setInsertColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set InsertColumns</dd> + <dt><b>setInsertHyperlinks</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetInsertHyperlinks">PHPExcel_Worksheet_Protection::setInsertHyperlinks()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set InsertHyperlinks</dd> + <dt><b>setInsertRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetInsertRows">PHPExcel_Worksheet_Protection::setInsertRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set InsertRows</dd> + <dt><b>setIsStyleXf</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetIsStyleXf">PHPExcel_Writer_Excel5_Xf::setIsStyleXf()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a style XF ?</dd> + <dt><b>setItalic</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetItalic">PHPExcel_Style_Font::setItalic()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Italic</dd> + <dt><b>setIterateOnlyExistingCells</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodsetIterateOnlyExistingCells">PHPExcel_Worksheet_CellIterator::setIterateOnlyExistingCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the iterator to loop only existing cells</dd> + <dt><b>setJoin</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetJoin">PHPExcel_Worksheet_AutoFilter_Column::setJoin()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Multiple Rules And/Or</dd> + <dt><b>setKeywords</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetKeywords">PHPExcel_DocumentProperties::setKeywords()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Keywords</dd> + <dt><b>setLastModifiedBy</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetLastModifiedBy">PHPExcel_DocumentProperties::setLastModifiedBy()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Last Modified By</dd> + <dt><b>setLastSpId</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodsetLastSpId">PHPExcel_Shared_Escher_DgContainer::setLastSpId()</a></dd> + <dt><b>setLayoutTarget</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetLayoutTarget">PHPExcel_Chart_Layout::setLayoutTarget()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Layout Target</dd> + <dt><b>setLeft</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetLeft">PHPExcel_Worksheet_PageMargins::setLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Left</dd> + <dt><b>setLeftColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetLeftColor">PHPExcel_Writer_Excel5_Xf::setLeftColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's left border color</dd> + <dt><b>setLegend</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetLegend">PHPExcel_Chart::setLegend()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Legend</dd> + <dt><b>setLineEnding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetLineEnding">PHPExcel_Reader_CSV::setLineEnding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set line ending</dd> + <dt><b>setLineEnding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetLineEnding">PHPExcel_Writer_CSV::setLineEnding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set line ending</dd> + <dt><b>setLoadAllSheets</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetLoadAllSheets">PHPExcel_Reader_Gnumeric::setLoadAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set all sheets to load Tells the Reader to load all worksheets from the workbook.</dd> + <dt><b>setLoadAllSheets</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetLoadAllSheets">PHPExcel_Reader_Excel2007::setLoadAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set all sheets to load Tells the Reader to load all worksheets from the workbook.</dd> + <dt><b>setLoadAllSheets</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetLoadAllSheets">PHPExcel_Reader_Excel2003XML::setLoadAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set all sheets to load</dd> + <dt><b>setLoadAllSheets</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetLoadAllSheets">PHPExcel_Reader_Excel5::setLoadAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set all sheets to load Tells the Reader to load all worksheets from the workbook.</dd> + <dt><b>setLoadAllSheets</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetLoadAllSheets">PHPExcel_Reader_OOCalc::setLoadAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set all sheets to load Tells the Reader to load all worksheets from the workbook.</dd> + <dt><b>setLoadSheetsOnly</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetLoadSheetsOnly">PHPExcel_Reader_Gnumeric::setLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set which sheets to load</dd> + <dt><b>setLoadSheetsOnly</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetLoadSheetsOnly">PHPExcel_Reader_Excel5::setLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set which sheets to load</dd> + <dt><b>setLoadSheetsOnly</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetLoadSheetsOnly">PHPExcel_Reader_OOCalc::setLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set which sheets to load</dd> + <dt><b>setLoadSheetsOnly</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetLoadSheetsOnly">PHPExcel_Reader_Excel2003XML::setLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set which sheets to load</dd> + <dt><b>setLoadSheetsOnly</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetLoadSheetsOnly">PHPExcel_Reader_Excel2007::setLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set which sheets to load</dd> + <dt><b>setLocale</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetLocale">PHPExcel_Calculation::setLocale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the locale code</dd> + <dt><b>setLocale</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetLocale">PHPExcel_Settings::setLocale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the locale code to use for formula translations and any special formatting</dd> + <dt><b>setLocalOnly</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodsetLocalOnly">PHPExcel_NamedRange::setLocalOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set localOnly</dd> + <dt><b>setLocked</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodsetLocked">PHPExcel_Style_Protection::setLocked()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set locked</dd> + <dt><b>setLockRevision</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodsetLockRevision">PHPExcel_DocumentSecurity::setLockRevision()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set LockRevision</dd> + <dt><b>setLockStructure</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodsetLockStructure">PHPExcel_DocumentSecurity::setLockStructure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set LockStructure</dd> + <dt><b>setLockWindows</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodsetLockWindows">PHPExcel_DocumentSecurity::setLockWindows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set LockWindows</dd> + <dt><b>setManager</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetManager">PHPExcel_DocumentProperties::setManager()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Manager</dd> + <dt><b>setMarginLeft</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetMarginLeft">PHPExcel_Comment::setMarginLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set left margin (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>setMarginTop</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetMarginTop">PHPExcel_Comment::setMarginTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set top margin (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>setMergeCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetMergeCells">PHPExcel_Worksheet::setMergeCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set merge cells array for the entire sheet. Use instead mergeCells() to merge a single cell range.</dd> + <dt><b>setMimeType</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodsetMimeType">PHPExcel_Worksheet_MemoryDrawing::setMimeType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set mime type</dd> + <dt><b>setModified</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetModified">PHPExcel_DocumentProperties::setModified()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Modified</dd> + <dt><b>setName</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetName">PHPExcel_Worksheet_BaseDrawing::setName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Name</dd> + <dt><b>setName</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodsetName">PHPExcel_NamedRange::setName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set name</dd> + <dt><b>setName</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetName">PHPExcel_Style_Font::setName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Name</dd> + <dt><b>setName</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetName">PHPExcel_Worksheet_HeaderFooterDrawing::setName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Name</dd> + <dt><b>setNullOption</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsetNullOption">Base::setNullOption()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the null handling option.</dd> + <dt><b>setNumberFormatIndex</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetNumberFormatIndex">PHPExcel_Writer_Excel5_Xf::setNumberFormatIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the index to the number format record It can be date, time, currency, etc...</dd> + <dt><b>setObjects</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetObjects">PHPExcel_Worksheet_Protection::setObjects()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Objects</dd> + <dt><b>setOddFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetOddFooter">PHPExcel_Worksheet_HeaderFooter::setOddFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OddFooter</dd> + <dt><b>setOddHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetOddHeader">PHPExcel_Worksheet_HeaderFooter::setOddHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OddHeader</dd> + <dt><b>setOffice2003Compatibility</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetOffice2003Compatibility">PHPExcel_Writer_Excel2007::setOffice2003Compatibility()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Pre-Calculate Formulas</dd> + <dt><b>setOffsetX</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetX">PHPExcel_Worksheet_BaseDrawing::setOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OffsetX</dd> + <dt><b>setOffsetX</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetOffsetX">PHPExcel_Worksheet_HeaderFooterDrawing::setOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OffsetX</dd> + <dt><b>setOffsetY</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetY">PHPExcel_Worksheet_BaseDrawing::setOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OffsetY</dd> + <dt><b>setOffsetY</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetOffsetY">PHPExcel_Worksheet_HeaderFooterDrawing::setOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OffsetY</dd> + <dt><b>setOperator</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetOperator">PHPExcel_Worksheet_AutoFilter_Column_Rule::setOperator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Rule Operator</dd> + <dt><b>setOperator</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetOperator">PHPExcel_Cell_DataValidation::setOperator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Operator</dd> + <dt><b>setOperatorType</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetOperatorType">PHPExcel_Style_Conditional::setOperatorType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Operator type</dd> + <dt><b>setOPT</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetOPT">PHPExcel_Shared_Escher_DggContainer::setOPT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set an option for the drawing group</dd> + <dt><b>setOPT</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetOPT">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setOPT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set an option for the Shape Group Container</dd> + <dt><b>setOrientation</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetOrientation">PHPExcel_Worksheet_PageSetup::setOrientation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Orientation</dd> + <dt><b>setOrientation</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetOrientation">PHPExcel_Writer_PDF_Core::setOrientation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Orientation</dd> + <dt><b>setOutline</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodsetOutline">PHPExcel_Writer_Excel5_Worksheet::setOutline()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;This method sets the properties for outlining and grouping. The defaults correspond to Excel's defaults.</dd> + <dt><b>setOutlineLevel</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetOutlineLevel">PHPExcel_Worksheet_ColumnDimension::setOutlineLevel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Outline Level</dd> + <dt><b>setOutlineLevel</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetOutlineLevel">PHPExcel_Worksheet_RowDimension::setOutlineLevel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Outline Level</dd> + <dt><b>setOverlay</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodsetOverlay">PHPExcel_Chart_Legend::setOverlay()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set allow overlay of other elements?</dd> + <dt><b>setPageMargins</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetPageMargins">PHPExcel_Worksheet::setPageMargins()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set page margins</dd> + <dt><b>setPageSetup</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetPageSetup">PHPExcel_Worksheet::setPageSetup()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set page setup</dd> + <dt><b>setPaperSize</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetPaperSize">PHPExcel_Worksheet_PageSetup::setPaperSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Paper Size</dd> + <dt><b>setPaperSize</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetPaperSize">PHPExcel_Writer_PDF_Core::setPaperSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Paper Size</dd> + <dt><b>setParent</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetParent">PHPExcel_Worksheet_AutoFilter_Column::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set this Column's AutoFilter Parent</dd> + <dt><b>setParent</b></dt> + <dd>in file BSE.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodsetParent">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent BLIP Store Entry Container</dd> + <dt><b>setParent</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodsetParent">PHPExcel_Worksheet_AutoFilter::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Parent Worksheet</dd> + <dt><b>setParent</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetParent">PHPExcel_Worksheet_AutoFilter_Column_Rule::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set this Rule's AutoFilter Column Parent</dd> + <dt><b>setParent</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetParent">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent Shape Group Container</dd> + <dt><b>setParent</b></dt> + <dd>in file SpgrContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodsetParent">PHPExcel_Shared_Escher_DgContainer_SpgrContainer::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent Shape Group Container</dd> + <dt><b>setParent</b></dt> + <dd>in file Blip.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodsetParent">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent BSE</dd> + <dt><b>setParentWriter</b></dt> + <dd>in file WriterPart.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent IWriter object</dd> + <dt><b>setPassword</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetPassword">PHPExcel_Worksheet_Protection::setPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Password</dd> + <dt><b>setPath</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetPath">PHPExcel_Worksheet_HeaderFooterDrawing::setPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Path</dd> + <dt><b>setPath</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodsetPath">PHPExcel_Worksheet_Drawing::setPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Path</dd> + <dt><b>setPdfRenderer</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetPdfRenderer">PHPExcel_Settings::setPdfRenderer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set details of the external library that PHPExcel should use for rendering PDF files</dd> + <dt><b>setPdfRendererName</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetPdfRendererName">PHPExcel_Settings::setPdfRendererName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify to PHPExcel the external library to use for rendering PDF files</dd> + <dt><b>setPdfRendererPath</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetPdfRendererPath">PHPExcel_Settings::setPdfRendererPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Tell PHPExcel where to find the external library to use for rendering PDF files</dd> + <dt><b>setPHPExcel</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetPHPExcel">PHPExcel_Writer_Excel2007::setPHPExcel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set PHPExcel object</dd> + <dt><b>setPHPExcelName</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodsetPHPExcelName">PHPExcel_Calculation_Function::setPHPExcelName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set PHPExcel name</dd> + <dt><b>setPivotTables</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetPivotTables">PHPExcel_Worksheet_Protection::setPivotTables()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set PivotTables</dd> + <dt><b>setPlotDirection</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotDirection">PHPExcel_Chart_DataSeries::setPlotDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Direction</dd> + <dt><b>setPlotGrouping</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotGrouping">PHPExcel_Chart_DataSeries::setPlotGrouping()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Grouping Type</dd> + <dt><b>setPlotSeries</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodsetPlotSeries">PHPExcel_Chart_PlotArea::setPlotSeries()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Series</dd> + <dt><b>setPlotStyle</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotStyle">PHPExcel_Chart_DataSeries::setPlotStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Style</dd> + <dt><b>setPlotType</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotType">PHPExcel_Chart_DataSeries::setPlotType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Type</dd> + <dt><b>setPlotVisibleOnly</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetPlotVisibleOnly">PHPExcel_Chart::setPlotVisibleOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Visible Only</dd> + <dt><b>setPointMarker</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetPointMarker">PHPExcel_Chart_DataSeriesValues::setPointMarker()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Point Marker</dd> + <dt><b>setPosition</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodsetPosition">PHPExcel_Chart_Legend::setPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get legend position using an excel string value</dd> + <dt><b>setPositionXL</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodsetPositionXL">PHPExcel_Chart_Legend::setPositionXL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set legend position using an Excel internal numeric value</dd> + <dt><b>setPreCalculateFormulas</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetPreCalculateFormulas">PHPExcel_Writer_Excel2007::setPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Pre-Calculate Formulas</dd> + <dt><b>setPreCalculateFormulas</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodsetPreCalculateFormulas">PHPExcel_Writer_Excel5::setPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Pre-Calculate Formulas</dd> + <dt><b>setPreCalculateFormulas</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetPreCalculateFormulas">PHPExcel_Writer_CSV::setPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Pre-Calculate Formulas</dd> + <dt><b>setPreCalculateFormulas</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetPreCalculateFormulas">PHPExcel_Writer_HTML::setPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Pre-Calculate Formulas</dd> + <dt><b>setPrintArea</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetPrintArea">PHPExcel_Worksheet_PageSetup::setPrintArea()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set print area. e.g. 'A1:D10' or 'A1:D10,G5:M20'</dd> + <dt><b>setPrintAreaByColumnAndRow</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetPrintAreaByColumnAndRow">PHPExcel_Worksheet_PageSetup::setPrintAreaByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set print area</dd> + <dt><b>setPrintGridlines</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetPrintGridlines">PHPExcel_Worksheet::setPrintGridlines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set print gridlines</dd> + <dt><b>SETPRINTRANGE_INSERT</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constSETPRINTRANGE_INSERT">PHPExcel_Worksheet_PageSetup::SETPRINTRANGE_INSERT</a></dd> + <dt><b>SETPRINTRANGE_OVERWRITE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constSETPRINTRANGE_OVERWRITE">PHPExcel_Worksheet_PageSetup::SETPRINTRANGE_OVERWRITE</a></dd> + <dt><b>setPrompt</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetPrompt">PHPExcel_Cell_DataValidation::setPrompt()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Prompt</dd> + <dt><b>setPromptTitle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetPromptTitle">PHPExcel_Cell_DataValidation::setPromptTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Prompt title</dd> + <dt><b>setProperties</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsetProperties">PHPExcel::setProperties()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set properties</dd> + <dt><b>setProtection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetProtection">PHPExcel_Worksheet::setProtection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Protection</dd> + <dt><b>setRange</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodsetRange">PHPExcel_NamedRange::setRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set range</dd> + <dt><b>setRange</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodsetRange">PHPExcel_Worksheet_AutoFilter::setRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Range</dd> + <dt><b>setReadDataOnly</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetReadDataOnly">PHPExcel_Reader_Excel5::setReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.</dd> + <dt><b>setReadDataOnly</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetReadDataOnly">PHPExcel_Reader_Excel2007::setReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.</dd> + <dt><b>setReadDataOnly</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetReadDataOnly">PHPExcel_Reader_Excel2003XML::setReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read data only</dd> + <dt><b>setReadDataOnly</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetReadDataOnly">PHPExcel_Reader_OOCalc::setReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.</dd> + <dt><b>setReadDataOnly</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetReadDataOnly">PHPExcel_Reader_Gnumeric::setReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodsetReadFilter">PHPExcel_Reader_SYLK::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetReadFilter">PHPExcel_Reader_Excel2007::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodsetReadFilter">PHPExcel_Reader_HTML::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetReadFilter">PHPExcel_Reader_Excel5::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetReadFilter">PHPExcel_Reader_CSV::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetReadFilter">PHPExcel_Reader_OOCalc::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetReadFilter">PHPExcel_Reader_Excel2003XML::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetReadFilter">PHPExcel_Reader_Gnumeric::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setRenderingFunction</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodsetRenderingFunction">PHPExcel_Worksheet_MemoryDrawing::setRenderingFunction()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set rendering function</dd> + <dt><b>setResizeProportional</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetResizeProportional">PHPExcel_Worksheet_BaseDrawing::setResizeProportional()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ResizeProportional</dd> + <dt><b>setResizeProportional</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetResizeProportional">PHPExcel_Worksheet_HeaderFooterDrawing::setResizeProportional()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ResizeProportional</dd> + <dt><b>setReturnDateType</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodsetReturnDateType">PHPExcel_Calculation_Functions::setReturnDateType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Return Date Format used by functions that return a date/time (Excel, PHP Serialized Numeric or PHP Object)</dd> + <dt><b>setRevisionsPassword</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodsetRevisionsPassword">PHPExcel_DocumentSecurity::setRevisionsPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set RevisionsPassword</dd> + <dt><b>setRGB</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodsetRGB">PHPExcel_Style_Color::setRGB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set RGB</dd> + <dt><b>setRichTextElements</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodsetRichTextElements">PHPExcel_RichText::setRichTextElements()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rich Text elements</dd> + <dt><b>setRight</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetRight">PHPExcel_Worksheet_PageMargins::setRight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Right</dd> + <dt><b>setRightColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetRightColor">PHPExcel_Writer_Excel5_Xf::setRightColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's right border color</dd> + <dt><b>setRightToLeft</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetRightToLeft">PHPExcel_Worksheet::setRightToLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set right-to-left</dd> + <dt><b>setRotation</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetRotation">PHPExcel_Worksheet_BaseDrawing::setRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rotation</dd> + <dt><b>setRotation</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetRotation">PHPExcel_Style_Fill::setRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rotation</dd> + <dt><b>setRowHeight</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetRowHeight">PHPExcel_Worksheet_RowDimension::setRowHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Row Height</dd> + <dt><b>setRowIndex</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetRowIndex">PHPExcel_Worksheet_RowDimension::setRowIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Row Index</dd> + <dt><b>setRowsToRepeatAtTop</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetRowsToRepeatAtTop">PHPExcel_Worksheet_PageSetup::setRowsToRepeatAtTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rows to repeat at top</dd> + <dt><b>setRowsToRepeatAtTopByStartAndEnd</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetRowsToRepeatAtTopByStartAndEnd">PHPExcel_Worksheet_PageSetup::setRowsToRepeatAtTopByStartAndEnd()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rows to repeat at top by start and end</dd> + <dt><b>setRule</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetRule">PHPExcel_Worksheet_AutoFilter_Column_Rule::setRule()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Rule</dd> + <dt><b>setRuleType</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetRuleType">PHPExcel_Worksheet_AutoFilter_Column_Rule::setRuleType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Rule Type</dd> + <dt><b>setScale</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetScale">PHPExcel_Worksheet_PageSetup::setScale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Scale</dd> + <dt><b>setScaleWithDocument</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetScaleWithDocument">PHPExcel_Worksheet_HeaderFooter::setScaleWithDocument()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ScaleWithDocument</dd> + <dt><b>setScenarios</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetScenarios">PHPExcel_Worksheet_Protection::setScenarios()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Scenarios</dd> + <dt><b>setScope</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodsetScope">PHPExcel_NamedRange::setScope()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set scope</dd> + <dt><b>setSearchLocations</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodsetSearchLocations">PHPExcel_IOFactory::setSearchLocations()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set search locations</dd> + <dt><b>setSecurity</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsetSecurity">PHPExcel::setSecurity()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set security</dd> + <dt><b>setSelectedCell</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSelectedCell">PHPExcel_Worksheet::setSelectedCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Selected cell</dd> + <dt><b>setSelectedCellByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSelectedCellByColumnAndRow">PHPExcel_Worksheet::setSelectedCellByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Selected cell by using numeric cell coordinates</dd> + <dt><b>setSelectedCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSelectedCells">PHPExcel_Worksheet::setSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Select a range of cells.</dd> + <dt><b>setSelectLockedCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSelectLockedCells">PHPExcel_Worksheet_Protection::setSelectLockedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set SelectLockedCells</dd> + <dt><b>setSelectUnlockedCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSelectUnlockedCells">PHPExcel_Worksheet_Protection::setSelectUnlockedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set SelectUnlockedCells</dd> + <dt><b>setShadow</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetShadow">PHPExcel_Worksheet_BaseDrawing::setShadow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Shadow</dd> + <dt><b>setSharedStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSharedStyle">PHPExcel_Worksheet::setSharedStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set shared cell style to a range of cells</dd> + <dt><b>setSheet</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSheet">PHPExcel_Worksheet_Protection::setSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Sheet</dd> + <dt><b>setSheetIndex</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetSheetIndex">PHPExcel_Reader_CSV::setSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + <dt><b>setSheetIndex</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodsetSheetIndex">PHPExcel_Reader_SYLK::setSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + <dt><b>setSheetIndex</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetSheetIndex">PHPExcel_Writer_CSV::setSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + <dt><b>setSheetIndex</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodsetSheetIndex">PHPExcel_Reader_HTML::setSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + <dt><b>setSheetIndex</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetSheetIndex">PHPExcel_Writer_HTML::setSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + <dt><b>setSheetState</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSheetState">PHPExcel_Worksheet::setSheetState()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet state</dd> + <dt><b>setSheetView</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSheetView">PHPExcel_Worksheet::setSheetView()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet view</dd> + <dt><b>setShowBubbleSize</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowBubbleSize">PHPExcel_Chart_Layout::setShowBubbleSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show bubble size Specifies that the bubble size should be shown in data labels.</dd> + <dt><b>setShowCatName</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowCatName">PHPExcel_Chart_Layout::setShowCatName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show cat name Specifies that the category name should be shown in data labels.</dd> + <dt><b>setShowDropDown</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetShowDropDown">PHPExcel_Cell_DataValidation::setShowDropDown()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Show DropDown</dd> + <dt><b>setShowErrorMessage</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetShowErrorMessage">PHPExcel_Cell_DataValidation::setShowErrorMessage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Show ErrorMessage</dd> + <dt><b>setShowGridlines</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowGridlines">PHPExcel_Worksheet::setShowGridlines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show gridlines</dd> + <dt><b>setShowInputMessage</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetShowInputMessage">PHPExcel_Cell_DataValidation::setShowInputMessage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Show InputMessage</dd> + <dt><b>setShowLeaderLines</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowLeaderLines">PHPExcel_Chart_Layout::setShowLeaderLines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show leader lines Specifies that leader lines should be shown in data labels.</dd> + <dt><b>setShowLegendKey</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowLegendKey">PHPExcel_Chart_Layout::setShowLegendKey()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show legend key Specifies that legend keys should be shown in data labels.</dd> + <dt><b>setShowPercent</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowPercent">PHPExcel_Chart_Layout::setShowPercent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show percentage Specifies that the percentage should be shown in data labels.</dd> + <dt><b>setShowRowColHeaders</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowRowColHeaders">PHPExcel_Worksheet::setShowRowColHeaders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show row and column headers</dd> + <dt><b>setShowSerName</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowSerName">PHPExcel_Chart_Layout::setShowSerName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show ser name Specifies that the series name should be shown in data labels.</dd> + <dt><b>setShowSummaryBelow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowSummaryBelow">PHPExcel_Worksheet::setShowSummaryBelow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show summary below</dd> + <dt><b>setShowSummaryRight</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowSummaryRight">PHPExcel_Worksheet::setShowSummaryRight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show summary right</dd> + <dt><b>setShowVal</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowVal">PHPExcel_Chart_Layout::setShowVal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show val Specifies that the value should be shown in data labels.</dd> + <dt><b>setShrinkToFit</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetShrinkToFit">PHPExcel_Style_Alignment::setShrinkToFit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Shrink to fit</dd> + <dt><b>setSize</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetSize">PHPExcel_Style_Font::setSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Size</dd> + <dt><b>setSmoothLine</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetSmoothLine">PHPExcel_Chart_DataSeries::setSmoothLine()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Smooth Line</dd> + <dt><b>setSort</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSort">PHPExcel_Worksheet_Protection::setSort()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Sort</dd> + <dt><b>setSpFlag</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpFlag">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setSpFlag()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the shape flag</dd> + <dt><b>setSpgr</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpgr">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setSpgr()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set whether this is a group shape</dd> + <dt><b>setSpgrContainer</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodsetSpgrContainer">PHPExcel_Shared_Escher_DgContainer::setSpgrContainer()</a></dd> + <dt><b>setSpId</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpId">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setSpId()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the shape index</dd> + <dt><b>setSpIdMax</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetSpIdMax">PHPExcel_Shared_Escher_DggContainer::setSpIdMax()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set maximum shape index of all shapes in all drawings (plus one)</dd> + <dt><b>setSpType</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpType">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setSpType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the shape type</dd> + <dt><b>setStartColor</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetStartColor">PHPExcel_Style_Fill::setStartColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Start Color</dd> + <dt><b>setStartCoordinates</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetStartCoordinates">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setStartCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set cell coordinates of upper-left corner of shape</dd> + <dt><b>setStartOffsetX</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetStartOffsetX">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setStartOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set offset in x-direction of upper-left corner of shape measured in 1/1024 of column width</dd> + <dt><b>setStartOffsetY</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetStartOffsetY">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setStartOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set offset in y-direction of upper-left corner of shape measured in 1/256 of row height</dd> + <dt><b>setStrikethrough</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetStrikethrough">PHPExcel_Style_Font::setStrikethrough()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Strikethrough</dd> + <dt><b>setStriketrough</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetStriketrough">PHPExcel_Style_Font::setStriketrough()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Striketrough</dd> + <dt><b>setStyle</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetStyle">PHPExcel_Style_Conditional::setStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Style</dd> + <dt><b>setSubject</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetSubject">PHPExcel_DocumentProperties::setSubject()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Subject</dd> + <dt><b>setSubScript</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetSubScript">PHPExcel_Style_Font::setSubScript()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set SubScript</dd> + <dt><b>setSuperScript</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetSuperScript">PHPExcel_Style_Font::setSuperScript()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set SuperScript</dd> + <dt><b>setTempDir</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetTempDir">PHPExcel_Writer_PDF_Core::setTempDir()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set temporary storage directory</dd> + <dt><b>setTempDir</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodsetTempDir">PHPExcel_Writer_Excel5::setTempDir()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set temporary storage directory</dd> + <dt><b>setText</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetText">PHPExcel_Comment::setText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rich text comment</dd> + <dt><b>setText</b></dt> + <dd>in file ITextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodsetText">PHPExcel_RichText_ITextElement::setText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set text</dd> + <dt><b>setText</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetText">PHPExcel_Style_Conditional::setText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set text</dd> + <dt><b>setText</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodsetText">PHPExcel_RichText_TextElement::setText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set text</dd> + <dt><b>setTextRotation</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetTextRotation">PHPExcel_Style_Alignment::setTextRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set TextRotation</dd> + <dt><b>setThousandsSeparator</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodsetThousandsSeparator">PHPExcel_Shared_String::setThousandsSeparator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the thousands separator. Only used by PHPExcel_Style_NumberFormat::toFormattedString() to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF</dd> + <dt><b>setTitle</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetTitle">PHPExcel_DocumentProperties::setTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Title</dd> + <dt><b>setTitle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetTitle">PHPExcel_Worksheet::setTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set title</dd> + <dt><b>setTitle</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTitle">PHPExcel_Chart::setTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Title</dd> + <dt><b>setTokenSubType</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodsetTokenSubType">PHPExcel_Calculation_FormulaToken::setTokenSubType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Token SubType</dd> + <dt><b>setTokenType</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodsetTokenType">PHPExcel_Calculation_FormulaToken::setTokenType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Token Type</dd> + <dt><b>setTooltip</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodsetTooltip">PHPExcel_Cell_Hyperlink::setTooltip()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set tooltip</dd> + <dt><b>setTop</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetTop">PHPExcel_Worksheet_PageMargins::setTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Top</dd> + <dt><b>setTopColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetTopColor">PHPExcel_Writer_Excel5_Xf::setTopColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's top border color</dd> + <dt><b>setTopLeftCell</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftCell">PHPExcel_Chart::setTopLeftCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Top Left cell position for the chart</dd> + <dt><b>setTopLeftOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftOffset">PHPExcel_Chart::setTopLeftOffset()</a></dd> + <dt><b>setTopLeftPosition</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftPosition">PHPExcel_Chart::setTopLeftPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Top Left position for the chart</dd> + <dt><b>setTopLeftXOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftXOffset">PHPExcel_Chart::setTopLeftXOffset()</a></dd> + <dt><b>setTopLeftYOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftYOffset">PHPExcel_Chart::setTopLeftYOffset()</a></dd> + <dt><b>setTrueTypeFontPath</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodsetTrueTypeFontPath">PHPExcel_Shared_Font::setTrueTypeFontPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the path to the folder containing .ttf files. There should be a trailing slash.</dd> + <dt><b>setType</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetType">PHPExcel_Cell_DataValidation::setType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Type</dd> + <dt><b>setUnderline</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetUnderline">PHPExcel_Style_Font::setUnderline()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Underline</dd> + <dt><b>setUrl</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodsetUrl">PHPExcel_Cell_Hyperlink::setUrl()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set URL</dd> + <dt><b>setUseBOM</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetUseBOM">PHPExcel_Writer_CSV::setUseBOM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set whether BOM should be used</dd> + <dt><b>setUseDiskCaching</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetUseDiskCaching">PHPExcel_Writer_Excel2007::setUseDiskCaching()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set use disk caching where possible?</dd> + <dt><b>setUseInlineCss</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetUseInlineCss">PHPExcel_Writer_HTML::setUseInlineCss()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set use inline CSS?</dd> + <dt><b>setValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetValue">PHPExcel_Cell::setValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set cell value</dd> + <dt><b>setValue</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetValue">PHPExcel_Worksheet_AutoFilter_Column_Rule::setValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Rule Value</dd> + <dt><b>setValue</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodsetValue">PHPExcel_Calculation_FormulaToken::setValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Value</dd> + <dt><b>setValueBinder</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetValueBinder">PHPExcel_Cell::setValueBinder()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set value binder to use</dd> + <dt><b>setValueExplicit</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetValueExplicit">PHPExcel_Cell::setValueExplicit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the value for a cell, with the explicit data type passed to the method (bypassing any use of the value binder)</dd> + <dt><b>setVertical</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetVertical">PHPExcel_Style_Alignment::setVertical()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Vertical</dd> + <dt><b>setVerticalCentered</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetVerticalCentered">PHPExcel_Worksheet_PageSetup::setVerticalCentered()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set center page vertically</dd> + <dt><b>setView</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodsetView">PHPExcel_Worksheet_SheetView::setView()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set View</dd> + <dt><b>setVisible</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetVisible">PHPExcel_Comment::setVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set comment default visibility</dd> + <dt><b>setVisible</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetVisible">PHPExcel_Worksheet_RowDimension::setVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Visible</dd> + <dt><b>setVisible</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetVisible">PHPExcel_Worksheet_ColumnDimension::setVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Visible</dd> + <dt><b>setVisible</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetVisible">PHPExcel_Worksheet_Drawing_Shadow::setVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Visible</dd> + <dt><b>setWidth</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetWidth">PHPExcel_Comment::setWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set comment width (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>setWidth</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidth">PHPExcel_Worksheet_BaseDrawing::setWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Width</dd> + <dt><b>setWidth</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetWidth">PHPExcel_Worksheet_HeaderFooterDrawing::setWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Width</dd> + <dt><b>setWidth</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetWidth">PHPExcel_Chart_Layout::setWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Width</dd> + <dt><b>setWidth</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetWidth">PHPExcel_Worksheet_ColumnDimension::setWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Width</dd> + <dt><b>setWidthAndHeight</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidthAndHeight">PHPExcel_Worksheet_BaseDrawing::setWidthAndHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set width and height with proportional resize</dd> + <dt><b>setWidthAndHeight</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetWidthAndHeight">PHPExcel_Worksheet_HeaderFooterDrawing::setWidthAndHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set width and height with proportional resize</dd> + <dt><b>setWorkbookPassword</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodsetWorkbookPassword">PHPExcel_DocumentSecurity::setWorkbookPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set WorkbookPassword</dd> + <dt><b>setWorksheet</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetWorksheet">PHPExcel_Chart::setWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Worksheet</dd> + <dt><b>setWorksheet</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodsetWorksheet">PHPExcel_NamedRange::setWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set worksheet</dd> + <dt><b>setWorksheet</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWorksheet">PHPExcel_Worksheet_BaseDrawing::setWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Worksheet</dd> + <dt><b>setWrapText</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetWrapText">PHPExcel_Style_Alignment::setWrapText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Wrap Text</dd> + <dt><b>setXAxisLabel</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetXAxisLabel">PHPExcel_Chart::setXAxisLabel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set X-Axis Label</dd> + <dt><b>setXfIndex</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetXfIndex">PHPExcel_Worksheet_ColumnDimension::setXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set index to cellXf</dd> + <dt><b>setXfIndex</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetXfIndex">PHPExcel_Worksheet_RowDimension::setXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set index to cellXf</dd> + <dt><b>setXfIndex</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetXfIndex">PHPExcel_Cell::setXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set index to cellXf</dd> + <dt><b>setXMode</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetXMode">PHPExcel_Chart_Layout::setXMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set X-Mode</dd> + <dt><b>setXPosition</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetXPosition">PHPExcel_Chart_Layout::setXPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set X-Position</dd> + <dt><b>setYAxisLabel</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetYAxisLabel">PHPExcel_Chart::setYAxisLabel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Y-Axis Label</dd> + <dt><b>setYMode</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetYMode">PHPExcel_Chart_Layout::setYMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Y-Mode</dd> + <dt><b>setYPosition</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetYPosition">PHPExcel_Chart_Layout::setYPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Y-Position</dd> + <dt><b>setzeroHeight</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetzeroHeight">PHPExcel_Worksheet_RowDimension::setzeroHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ZeroHeight</dd> + <dt><b>setZipClass</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetZipClass">PHPExcel_Settings::setZipClass()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Zip handler Class that PHPExcel should use for Zip file management (PCLZip or ZipArchive)</dd> + <dt><b>setZoomScale</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodsetZoomScale">PHPExcel_Worksheet_SheetView::setZoomScale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ZoomScale</dd> + <dt><b>setZoomScaleNormal</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodsetZoomScaleNormal">PHPExcel_Worksheet_SheetView::setZoomScaleNormal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ZoomScale</dd> + <dt><b>SHADOW_BOTTOM</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_BOTTOM">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_BOTTOM</a></dd> + <dt><b>SHADOW_BOTTOM_LEFT</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_BOTTOM_LEFT">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_BOTTOM_LEFT</a></dd> + <dt><b>SHADOW_BOTTOM_RIGHT</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_BOTTOM_RIGHT">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_BOTTOM_RIGHT</a></dd> + <dt><b>SHADOW_CENTER</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_CENTER">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_CENTER</a></dd> + <dt><b>SHADOW_LEFT</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_LEFT">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_LEFT</a></dd> + <dt><b>SHADOW_TOP</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_TOP">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_TOP</a></dd> + <dt><b>SHADOW_TOP_LEFT</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_TOP_LEFT">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_TOP_LEFT</a></dd> + <dt><b>SHADOW_TOP_RIGHT</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_TOP_RIGHT">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_TOP_RIGHT</a></dd> + <dt><b>sheetNameExists</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsheetNameExists">PHPExcel::sheetNameExists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Chech if a sheet with a specified name already exists</dd> + <dt><b>SHEETSTATE_HIDDEN</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constSHEETSTATE_HIDDEN">PHPExcel_Worksheet::SHEETSTATE_HIDDEN</a></dd> + <dt><b>SHEETSTATE_VERYHIDDEN</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constSHEETSTATE_VERYHIDDEN">PHPExcel_Worksheet::SHEETSTATE_VERYHIDDEN</a></dd> + <dt><b>SHEETSTATE_VISIBLE</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constSHEETSTATE_VISIBLE">PHPExcel_Worksheet::SHEETSTATE_VISIBLE</a></dd> + <dt><b>SHEETVIEW_NORMAL</b></dt> + <dd>in file SheetView.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#constSHEETVIEW_NORMAL">PHPExcel_Worksheet_SheetView::SHEETVIEW_NORMAL</a></dd> + <dt><b>SHEETVIEW_PAGE_BREAK_PREVIEW</b></dt> + <dd>in file SheetView.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#constSHEETVIEW_PAGE_BREAK_PREVIEW">PHPExcel_Worksheet_SheetView::SHEETVIEW_PAGE_BREAK_PREVIEW</a></dd> + <dt><b>SHEETVIEW_PAGE_LAYOUT</b></dt> + <dd>in file SheetView.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#constSHEETVIEW_PAGE_LAYOUT">PHPExcel_Worksheet_SheetView::SHEETVIEW_PAGE_LAYOUT</a></dd> + <dt><b>shiftColumn</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodshiftColumn">PHPExcel_Worksheet_AutoFilter::shiftColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Shift an AutoFilter Column Rule to a different column</dd> + <dt><b>showHideRows</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodshowHideRows">PHPExcel_Worksheet_AutoFilter::showHideRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply the AutoFilter rules to the AutoFilter Range</dd> + <dt><b>shrinkRangeToFit</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodshrinkRangeToFit">PHPExcel_Worksheet::shrinkRangeToFit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Accepts a range, returning it as a range that falls within the current highest row and column of the worksheet</dd> + <dt><b>SIGN</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSIGN">PHPExcel_Calculation_MathTrig::SIGN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SIGN</dd> + <dt><b>SingularValueDecomposition</b></dt> + <dd>in file SingularValueDecomposition.php, class <a href="JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a></dd> + <dt><b>sizeCol</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodsizeCol">PHPExcel_Shared_Excel5::sizeCol()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the width of a column in pixels. We use the relationship y = ceil(7x) where x is the width in intrinsic Excel units (measuring width in number of normal characters) This holds for Arial 10</dd> + <dt><b>sizeRow</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodsizeRow">PHPExcel_Shared_Excel5::sizeRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert the height of a cell from user's units to pixels. By interpolation the relationship is: y = 4/3x. If the height hasn't been set by the user we use the default value. If the row is hidden we use a value of zero.</dd> + <dt><b>SIZE_OF_NAME_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSIZE_OF_NAME_POS">PHPExcel_Shared_OLERead::SIZE_OF_NAME_POS</a></dd> + <dt><b>SIZE_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSIZE_POS">PHPExcel_Shared_OLERead::SIZE_POS</a></dd> + <dt><b>SKEW</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSKEW">PHPExcel_Calculation_Statistical::SKEW()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SKEW</dd> + <dt><b>skewness</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodskewness">Base::skewness()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the skewness of the data distribution in the set The skewness measures the degree of asymmetry of a distribution, and is related to the third central moment of a distribution.</dd> + <dt><b>SLN</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodSLN">PHPExcel_Calculation_Financial::SLN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SLN</dd> + <dt><b>SLOPE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSLOPE">PHPExcel_Calculation_Statistical::SLOPE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SLOPE</dd> + <dt><b>SMALL</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSMALL">PHPExcel_Calculation_Statistical::SMALL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SMALL</dd> + <dt><b>SMALL_BLOCK_DEPOT_BLOCK_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSMALL_BLOCK_DEPOT_BLOCK_POS">PHPExcel_Shared_OLERead::SMALL_BLOCK_DEPOT_BLOCK_POS</a></dd> + <dt><b>SMALL_BLOCK_SIZE</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSMALL_BLOCK_SIZE">PHPExcel_Shared_OLERead::SMALL_BLOCK_SIZE</a></dd> + <dt><b>SMALL_BLOCK_THRESHOLD</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSMALL_BLOCK_THRESHOLD">PHPExcel_Shared_OLERead::SMALL_BLOCK_THRESHOLD</a></dd> + <dt><b>solve</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodsolve">PHPExcel_Shared_JAMA_QRDecomposition::solve()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Least squares solution of A*X = B</dd> + <dt><b>solve</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodsolve">PHPExcel_Shared_JAMA_LUDecomposition::solve()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Solve A*X = B</dd> + <dt><b>solve</b></dt> + <dd>in file LevenbergMarquardt.php, method <a href="PHPExcel/LevenbergMarquardt.html#methodsolve">LevenbergMarquardt::solve()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Minimize E = sum {(y[k] - f(x[k],a)) / s[k]}^2 The individual errors are optionally scaled by s[k].</dd> + <dt><b>solve</b></dt> + <dd>in file CholeskyDecomposition.php, method <a href="JAMA/CholeskyDecomposition.html#methodsolve">CholeskyDecomposition::solve()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Solve A*X = B</dd> + <dt><b>solve</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodsolve">PHPExcel_Shared_JAMA_Matrix::solve()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Solve A*X = B.</dd> + <dt><b>sortCellCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsortCellCollection">PHPExcel_Worksheet::sortCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sort collection of cells</dd> + <dt><b>SP</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSP">PHPExcel_Reader_Excel5_Escher::SP</a></dd> + <dt><b>SPCONTAINER</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPCONTAINER">PHPExcel_Reader_Excel5_Escher::SPCONTAINER</a></dd> + <dt><b>SPGR</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPGR">PHPExcel_Reader_Excel5_Escher::SPGR</a></dd> + <dt><b>SPGRCONTAINER</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPGRCONTAINER">PHPExcel_Reader_Excel5_Escher::SPGRCONTAINER</a></dd> + <dt><b>SPLITMENUCOLORS</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPLITMENUCOLORS">PHPExcel_Reader_Excel5_Escher::SPLITMENUCOLORS</a></dd> + <dt><b>splitRange</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsplitRange">PHPExcel_Cell::splitRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Split range into coordinate strings</dd> + <dt><b>SQRT2PI</b></dt> + <dd>in file Statistical.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html#defineSQRT2PI">SQRT2PI</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SQRT2PI</dd> + <dt><b>SQRTPI</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSQRTPI">PHPExcel_Calculation_MathTrig::SQRTPI()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SQRTPI</dd> + <dt><b>STANDARDIZE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTANDARDIZE">PHPExcel_Calculation_Statistical::STANDARDIZE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STANDARDIZE</dd> + <dt><b>START_BLOCK_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSTART_BLOCK_POS">PHPExcel_Shared_OLERead::START_BLOCK_POS</a></dd> + <dt><b>STATEMENT_IF</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodSTATEMENT_IF">PHPExcel_Calculation_Logical::STATEMENT_IF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATEMENT_IF</dd> + <dt><b>STATS_BASIC</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_BASIC">STATS_BASIC</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_BASIC to generate the basic descriptive statistics</dd> + <dt><b>STATS_DATA_CUMMULATIVE</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_DATA_CUMMULATIVE for an associative array of frequency values,</dd> + <dt><b>STATS_DATA_SIMPLE</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_SIMPLE">STATS_DATA_SIMPLE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_DATA_SIMPLE for an array of numeric values. This is the default.</dd> + <dt><b>STATS_FULL</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_FULL">STATS_FULL</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_FULL to generate also higher moments, mode, median, etc.</dd> + <dt><b>STATS_IGNORE_NULL</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_IGNORE_NULL">STATS_IGNORE_NULL</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_IGNORE_NULL, ignore null values and prune them from the data.</dd> + <dt><b>STATS_REJECT_NULL</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_REJECT_NULL">STATS_REJECT_NULL</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_REJECT_NULL, reject data sets with null values. This is the default.</dd> + <dt><b>STATS_USE_NULL_AS_ZERO</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_USE_NULL_AS_ZERO">STATS_USE_NULL_AS_ZERO</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_USE_NULL_AS_ZERO, assign the value of 0 (zero) to null values.</dd> + <dt><b>stdErrorOfMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodstdErrorOfMean">Base::stdErrorOfMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the standard error of the mean.</dd> + <dt><b>STDEV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEV">PHPExcel_Calculation_Statistical::STDEV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STDEV</dd> + <dt><b>stDev</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodstDev">Base::stDev()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the standard deviation (unbiased) of the data points in the set Handles cummulative data sets correctly</dd> + <dt><b>STDEVA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEVA">PHPExcel_Calculation_Statistical::STDEVA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STDEVA</dd> + <dt><b>STDEVP</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEVP">PHPExcel_Calculation_Statistical::STDEVP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STDEVP</dd> + <dt><b>STDEVPA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEVPA">PHPExcel_Calculation_Statistical::STDEVPA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STDEVPA</dd> + <dt><b>stDevWithMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodstDevWithMean">Base::stDevWithMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the standard deviation (unbiased) of the data points in the set given a fixed mean (average) value. Not used in calcBasic(), calcFull() or calc().</dd> + <dt><b>STEYX</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTEYX">PHPExcel_Calculation_Statistical::STEYX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STEYX</dd> + <dt><b>STORAGE_DISK</b></dt> + <dd>in file XMLWriter.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#constSTORAGE_DISK">PHPExcel_Shared_XMLWriter::STORAGE_DISK</a></dd> + <dt><b>STORAGE_MEMORY</b></dt> + <dd>in file XMLWriter.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#constSTORAGE_MEMORY">PHPExcel_Shared_XMLWriter::STORAGE_MEMORY</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Temporary storage method</dd> + <dt><b>stream_close</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_close">PHPExcel_Shared_OLE_ChainedBlockStream::stream_close()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fclose().</dd> + <dt><b>stream_eof</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_eof">PHPExcel_Shared_ZipStreamWrapper::stream_eof()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EOF stream</dd> + <dt><b>stream_eof</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_eof">PHPExcel_Shared_OLE_ChainedBlockStream::stream_eof()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for feof().</dd> + <dt><b>stream_open</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_open">PHPExcel_Shared_ZipStreamWrapper::stream_open()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fopen().</dd> + <dt><b>stream_open</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_open">PHPExcel_Shared_OLE_ChainedBlockStream::stream_open()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fopen().</dd> + <dt><b>stream_read</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_read">PHPExcel_Shared_ZipStreamWrapper::stream_read()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fread(), fgets() etc.</dd> + <dt><b>stream_read</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_read">PHPExcel_Shared_OLE_ChainedBlockStream::stream_read()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fread(), fgets() etc.</dd> + <dt><b>stream_seek</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_seek">PHPExcel_Shared_OLE_ChainedBlockStream::stream_seek()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fseek().</dd> + <dt><b>stream_seek</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_seek">PHPExcel_Shared_ZipStreamWrapper::stream_seek()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Seek stream</dd> + <dt><b>stream_stat</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_stat">PHPExcel_Shared_ZipStreamWrapper::stream_stat()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fstat().</dd> + <dt><b>stream_stat</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_stat">PHPExcel_Shared_OLE_ChainedBlockStream::stream_stat()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fstat(). Currently the only supported field is &quot;size&quot;.</dd> + <dt><b>stream_tell</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_tell">PHPExcel_Shared_OLE_ChainedBlockStream::stream_tell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the position of the file pointer, i.e. its offset into the file stream. Implements support for ftell().</dd> + <dt><b>stream_tell</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_tell">PHPExcel_Shared_ZipStreamWrapper::stream_tell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the position of the file pointer, i.e. its offset into the file stream. Implements support for ftell().</dd> + <dt><b>stringFromColumnIndex</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodstringFromColumnIndex">PHPExcel_Cell::stringFromColumnIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;String from columnindex</dd> + <dt><b>STRINGLENGTH</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSTRINGLENGTH">PHPExcel_Calculation_TextData::STRINGLENGTH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STRINGLENGTH</dd> + <dt><b>stringToExcel</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodstringToExcel">PHPExcel_Shared_Date::stringToExcel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a date/time string to Excel time</dd> + <dt><b>STRING_REGEXP_FRACTION</b></dt> + <dd>in file String.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#constSTRING_REGEXP_FRACTION">PHPExcel_Shared_String::STRING_REGEXP_FRACTION</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Regular Expressions</dd> + <dt><b>studentize</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodstudentize">Base::studentize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Transforms the data by substracting each entry from the mean and dividing by its standard deviation. This will reset all pre-calculated values to their original (unset) defaults.</dd> + <dt><b>STYLE_FILLED</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_FILLED">PHPExcel_Chart_DataSeries::STYLE_FILLED</a></dd> + <dt><b>STYLE_INFORMATION</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constSTYLE_INFORMATION">PHPExcel_Cell_DataValidation::STYLE_INFORMATION</a></dd> + <dt><b>STYLE_LINEMARKER</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_LINEMARKER">PHPExcel_Chart_DataSeries::STYLE_LINEMARKER</a></dd> + <dt><b>STYLE_MARKER</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_MARKER">PHPExcel_Chart_DataSeries::STYLE_MARKER</a></dd> + <dt><b>STYLE_SMOOTHMARKER</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_SMOOTHMARKER">PHPExcel_Chart_DataSeries::STYLE_SMOOTHMARKER</a></dd> + <dt><b>STYLE_STOP</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constSTYLE_STOP">PHPExcel_Cell_DataValidation::STYLE_STOP</a></dd> + <dt><b>STYLE_WARNING</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constSTYLE_WARNING">PHPExcel_Cell_DataValidation::STYLE_WARNING</a></dd> + <dt><b>SUBSTITUTE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSUBSTITUTE">PHPExcel_Calculation_TextData::SUBSTITUTE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUBSTITUTE</dd> + <dt><b>Substring</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodSubstring">PHPExcel_Shared_String::Substring()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a substring of a UTF-8 encoded string</dd> + <dt><b>SUBTOTAL</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUBTOTAL">PHPExcel_Calculation_MathTrig::SUBTOTAL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUBTOTAL</dd> + <dt><b>sum</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsum">Base::sum()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates SUM { xi } Handles cummulative data sets correctly</dd> + <dt><b>SUM</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUM">PHPExcel_Calculation_MathTrig::SUM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUM</dd> + <dt><b>sum2</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsum2">Base::sum2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates SUM { (xi)^2 } Handles cummulative data sets correctly</dd> + <dt><b>SUMIF</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMIF">PHPExcel_Calculation_MathTrig::SUMIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMIF</dd> + <dt><b>sumN</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsumN">Base::sumN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates SUM { (xi)^n } Handles cummulative data sets correctly</dd> + <dt><b>SUMPRODUCT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMPRODUCT">PHPExcel_Calculation_MathTrig::SUMPRODUCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMPRODUCT</dd> + <dt><b>SUMSQ</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMSQ">PHPExcel_Calculation_MathTrig::SUMSQ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMSQ</dd> + <dt><b>SUMX2MY2</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMX2MY2">PHPExcel_Calculation_MathTrig::SUMX2MY2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMX2MY2</dd> + <dt><b>SUMX2PY2</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMX2PY2">PHPExcel_Calculation_MathTrig::SUMX2PY2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMX2PY2</dd> + <dt><b>SUMXMY2</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMXMY2">PHPExcel_Calculation_MathTrig::SUMXMY2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMXMY2</dd> + <dt><b>SYD</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodSYD">PHPExcel_Calculation_Financial::SYD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SYD</dd> + <dt><b>SYLKtoUTF8</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodSYLKtoUTF8">PHPExcel_Shared_String::SYLKtoUTF8()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert SYLK encoded string to UTF-8</dd> + <dt><b>SYMBOL</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constSYMBOL">PHPExcel_Shared_Font::SYMBOL</a></dd> + <dt><b>sys_get_temp_dir</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_File.html#methodsys_get_temp_dir">PHPExcel_Shared_File::sys_get_temp_dir()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the systems temporary directory.</dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>$Time1st</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Time1st">PHPExcel_Shared_OLE_PPS::$Time1st</a><br>&nbsp;&nbsp;&nbsp;&nbsp;A timestamp</dd> + <dt><b>$Time2nd</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Time2nd">PHPExcel_Shared_OLE_PPS::$Time2nd</a><br>&nbsp;&nbsp;&nbsp;&nbsp;A timestamp</dd> + <dt><b>$Type</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Type">PHPExcel_Shared_OLE_PPS::$Type</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The PPS type. Dir, Root or File</dd> + <dt><b>TextData.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html">TextData.php</a></dd> + <dt><b>Title.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---Title.php.html">Title.php</a></dd> + <dt><b>Theme.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader_Excel2007/_PHPExcel---Reader---Excel2007---Theme.php.html">Theme.php</a></dd> + <dt><b>TextElement.php</b></dt> + <dd>procedural page <a href="PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html">TextElement.php</a></dd> + <dt><b>tile.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html">tile.php</a></dd> + <dt><b>TestMatrix.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html">TestMatrix.php</a></dd> + <dt><b>trendClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html">trendClass.php</a></dd> + <dt><b>Theme.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html">Theme.php</a></dd> + <dt><b>tcPDF.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html">tcPDF.php</a></dd> + <dt><b>TAHOMA</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTAHOMA">PHPExcel_Shared_Font::TAHOMA</a></dd> + <dt><b>TAHOMA_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTAHOMA_BOLD">PHPExcel_Shared_Font::TAHOMA_BOLD</a></dd> + <dt><b>TBILLEQ</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodTBILLEQ">PHPExcel_Calculation_Financial::TBILLEQ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TBILLEQ</dd> + <dt><b>TBILLPRICE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodTBILLPRICE">PHPExcel_Calculation_Financial::TBILLPRICE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TBILLPRICE</dd> + <dt><b>TBILLYIELD</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodTBILLYIELD">PHPExcel_Calculation_Financial::TBILLYIELD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TBILLYIELD</dd> + <dt><b>TDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTDIST">PHPExcel_Calculation_Statistical::TDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TDIST</dd> + <dt><b>TERTIARYOPT</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constTERTIARYOPT">PHPExcel_Reader_Excel5_Escher::TERTIARYOPT</a></dd> + <dt><b>testColumnInRange</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodtestColumnInRange">PHPExcel_Worksheet_AutoFilter::testColumnInRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Validate that the specified column is in the AutoFilter range</dd> + <dt><b>testdata</b></dt> + <dd>in file LMQuadTest.php, method <a href="PHPExcel/LMQuadTest.html#methodtestdata">LMQuadTest::testdata()</a></dd> + <dt><b>TestMatrix</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodTestMatrix">TestMatrix::TestMatrix()</a></dd> + <dt><b>TestMatrix</b></dt> + <dd>in file TestMatrix.php, class <a href="PHPExcel/TestMatrix.html">TestMatrix</a></dd> + <dt><b>testStringAsNumeric</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodtestStringAsNumeric">PHPExcel_Shared_String::testStringAsNumeric()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Retrieve any leading numeric part of a string, or return the full string if no leading numeric (handles basic integer or float, but not exponent or non decimal)</dd> + <dt><b>TEXTFORMAT</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodTEXTFORMAT">PHPExcel_Calculation_TextData::TEXTFORMAT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TEXTFORMAT</dd> + <dt><b>tile</b></dt> + <dd>in file tile.php, function <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html#functiontile">tile()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Tiling of matrix X in [rowWise by colWise] dimension. Tiling creates a larger matrix than the original data X. Example, if X is to be tiled in a [3 x 4] manner, then:</dd> + <dt><b>TIME</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodTIME">PHPExcel_Calculation_DateTime::TIME()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TIME</dd> + <dt><b>times</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodtimes">PHPExcel_Shared_JAMA_Matrix::times()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;times</dd> + <dt><b>TIMES_NEW_ROMAN</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN">PHPExcel_Shared_Font::TIMES_NEW_ROMAN</a></dd> + <dt><b>TIMES_NEW_ROMAN_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN_BOLD">PHPExcel_Shared_Font::TIMES_NEW_ROMAN_BOLD</a></dd> + <dt><b>TIMES_NEW_ROMAN_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN_BOLD_ITALIC">PHPExcel_Shared_Font::TIMES_NEW_ROMAN_BOLD_ITALIC</a></dd> + <dt><b>TIMES_NEW_ROMAN_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN_ITALIC">PHPExcel_Shared_Font::TIMES_NEW_ROMAN_ITALIC</a></dd> + <dt><b>TIMEVALUE</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodTIMEVALUE">PHPExcel_Calculation_DateTime::TIMEVALUE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TIMEVALUE</dd> + <dt><b>TINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTINV">PHPExcel_Calculation_Statistical::TINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TINV</dd> + <dt><b>toArray</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodtoArray">PHPExcel_HashTable::toArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HashTable to array</dd> + <dt><b>toArray</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodtoArray">PHPExcel_Worksheet::toArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create array from worksheet</dd> + <dt><b>toFormattedString</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodtoFormattedString">PHPExcel_Style_NumberFormat::toFormattedString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a value in a pre-defined format to a PHP string</dd> + <dt><b>TOKEN_SUBTYPE_CONCATENATION</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_CONCATENATION">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_CONCATENATION</a></dd> + <dt><b>TOKEN_SUBTYPE_ERROR</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_ERROR">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_ERROR</a></dd> + <dt><b>TOKEN_SUBTYPE_INTERSECTION</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_INTERSECTION">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_INTERSECTION</a></dd> + <dt><b>TOKEN_SUBTYPE_LOGICAL</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_LOGICAL">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_LOGICAL</a></dd> + <dt><b>TOKEN_SUBTYPE_MATH</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_MATH">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_MATH</a></dd> + <dt><b>TOKEN_SUBTYPE_NOTHING</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_NOTHING">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NOTHING</a></dd> + <dt><b>TOKEN_SUBTYPE_NUMBER</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_NUMBER">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NUMBER</a></dd> + <dt><b>TOKEN_SUBTYPE_RANGE</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_RANGE">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_RANGE</a></dd> + <dt><b>TOKEN_SUBTYPE_START</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_START">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START</a></dd> + <dt><b>TOKEN_SUBTYPE_STOP</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_STOP">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP</a></dd> + <dt><b>TOKEN_SUBTYPE_TEXT</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_TEXT">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_TEXT</a></dd> + <dt><b>TOKEN_SUBTYPE_UNION</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_UNION">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_UNION</a></dd> + <dt><b>TOKEN_TYPE_ARGUMENT</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_ARGUMENT">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_ARGUMENT</a></dd> + <dt><b>TOKEN_TYPE_FUNCTION</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_FUNCTION">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION</a></dd> + <dt><b>TOKEN_TYPE_NOOP</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_NOOP">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_NOOP</a></dd> + <dt><b>TOKEN_TYPE_OPERAND</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERAND">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND</a></dd> + <dt><b>TOKEN_TYPE_OPERATORINFIX</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERATORINFIX">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX</a></dd> + <dt><b>TOKEN_TYPE_OPERATORPOSTFIX</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERATORPOSTFIX">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPOSTFIX</a></dd> + <dt><b>TOKEN_TYPE_OPERATORPREFIX</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERATORPREFIX">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPREFIX</a></dd> + <dt><b>TOKEN_TYPE_SUBEXPRESSION</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_SUBEXPRESSION">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION</a></dd> + <dt><b>TOKEN_TYPE_UNKNOWN</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_UNKNOWN">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN</a></dd> + <dt><b>TOKEN_TYPE_WHITESPACE</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_WHITESPACE">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_WHITESPACE</a></dd> + <dt><b>toReversePolish</b></dt> + <dd>in file Parser.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#methodtoReversePolish">PHPExcel_Writer_Excel5_Parser::toReversePolish()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Builds a string containing the tree in reverse polish notation (What you would use in a HP calculator stack).</dd> + <dt><b>trace</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodtrace">PHPExcel_Shared_JAMA_Matrix::trace()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;trace</dd> + <dt><b>TRANSPOSE</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodTRANSPOSE">PHPExcel_Calculation_LookupRef::TRANSPOSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRANSPOSE</dd> + <dt><b>transpose</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodtranspose">PHPExcel_Shared_JAMA_Matrix::transpose()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;transpose</dd> + <dt><b>TREBUCHET_MS</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS">PHPExcel_Shared_Font::TREBUCHET_MS</a></dd> + <dt><b>TREBUCHET_MS_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS_BOLD">PHPExcel_Shared_Font::TREBUCHET_MS_BOLD</a></dd> + <dt><b>TREBUCHET_MS_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS_BOLD_ITALIC">PHPExcel_Shared_Font::TREBUCHET_MS_BOLD_ITALIC</a></dd> + <dt><b>TREBUCHET_MS_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS_ITALIC">PHPExcel_Shared_Font::TREBUCHET_MS_ITALIC</a></dd> + <dt><b>TREND</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTREND">PHPExcel_Calculation_Statistical::TREND()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TREND</dd> + <dt><b>trendClass</b></dt> + <dd>in file trendClass.php, class <a href="PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_trendClass</dd> + <dt><b>TREND_BEST_FIT</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_BEST_FIT">trendClass::TREND_BEST_FIT</a></dd> + <dt><b>TREND_BEST_FIT_NO_POLY</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_BEST_FIT_NO_POLY">trendClass::TREND_BEST_FIT_NO_POLY</a></dd> + <dt><b>TREND_EXPONENTIAL</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_EXPONENTIAL">trendClass::TREND_EXPONENTIAL</a></dd> + <dt><b>TREND_LINEAR</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_LINEAR">trendClass::TREND_LINEAR</a></dd> + <dt><b>TREND_LOGARITHMIC</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_LOGARITHMIC">trendClass::TREND_LOGARITHMIC</a></dd> + <dt><b>TREND_POLYNOMIAL_2</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_2">trendClass::TREND_POLYNOMIAL_2</a></dd> + <dt><b>TREND_POLYNOMIAL_3</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_3">trendClass::TREND_POLYNOMIAL_3</a></dd> + <dt><b>TREND_POLYNOMIAL_4</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_4">trendClass::TREND_POLYNOMIAL_4</a></dd> + <dt><b>TREND_POLYNOMIAL_5</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_5">trendClass::TREND_POLYNOMIAL_5</a></dd> + <dt><b>TREND_POLYNOMIAL_6</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_6">trendClass::TREND_POLYNOMIAL_6</a></dd> + <dt><b>TREND_POWER</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POWER">trendClass::TREND_POWER</a></dd> + <dt><b>TRIMMEAN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTRIMMEAN">PHPExcel_Calculation_Statistical::TRIMMEAN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRIMMEAN</dd> + <dt><b>TRIMNONPRINTABLE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodTRIMNONPRINTABLE">PHPExcel_Calculation_TextData::TRIMNONPRINTABLE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRIMNONPRINTABLE</dd> + <dt><b>TRIMSPACES</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodTRIMSPACES">PHPExcel_Calculation_TextData::TRIMSPACES()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRIMSPACES</dd> + <dt><b>TRUE</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodTRUE">PHPExcel_Calculation_Logical::TRUE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRUE</dd> + <dt><b>TRUNC</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodTRUNC">PHPExcel_Calculation_MathTrig::TRUNC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRUNC</dd> + <dt><b>try_failure</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodtry_failure">TestMatrix::try_failure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Print appropriate messages for unsuccessful outcome try</dd> + <dt><b>try_success</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodtry_success">TestMatrix::try_success()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Print appropriate messages for successful outcome try</dd> + <dt><b>try_warning</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodtry_warning">TestMatrix::try_warning()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Print appropriate messages for unsuccessful outcome try</dd> + <dt><b>TYPE</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodTYPE">PHPExcel_Calculation_Functions::TYPE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TYPE</dd> + <dt><b>TYPE_AREACHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_AREACHART">PHPExcel_Chart_DataSeries::TYPE_AREACHART</a></dd> + <dt><b>TYPE_AREACHART_3D</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_AREACHART_3D">PHPExcel_Chart_DataSeries::TYPE_AREACHART_3D</a></dd> + <dt><b>TYPE_BARCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_BARCHART">PHPExcel_Chart_DataSeries::TYPE_BARCHART</a></dd> + <dt><b>TYPE_BARCHART_3D</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_BARCHART_3D">PHPExcel_Chart_DataSeries::TYPE_BARCHART_3D</a></dd> + <dt><b>TYPE_BOOL</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_BOOL">PHPExcel_Cell_DataType::TYPE_BOOL</a></dd> + <dt><b>TYPE_BUBBLECHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_BUBBLECHART">PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART</a></dd> + <dt><b>TYPE_CUSTOM</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_CUSTOM">PHPExcel_Cell_DataValidation::TYPE_CUSTOM</a></dd> + <dt><b>TYPE_DATE</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_DATE">PHPExcel_Cell_DataValidation::TYPE_DATE</a></dd> + <dt><b>TYPE_DECIMAL</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_DECIMAL">PHPExcel_Cell_DataValidation::TYPE_DECIMAL</a></dd> + <dt><b>TYPE_DONUTCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_DONUTCHART">PHPExcel_Chart_DataSeries::TYPE_DONUTCHART</a></dd> + <dt><b>TYPE_DOUGHTNUTCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_DOUGHTNUTCHART">PHPExcel_Chart_DataSeries::TYPE_DOUGHTNUTCHART</a></dd> + <dt><b>TYPE_ERROR</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_ERROR">PHPExcel_Cell_DataType::TYPE_ERROR</a></dd> + <dt><b>TYPE_FORMULA</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_FORMULA">PHPExcel_Cell_DataType::TYPE_FORMULA</a></dd> + <dt><b>TYPE_INLINE</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_INLINE">PHPExcel_Cell_DataType::TYPE_INLINE</a></dd> + <dt><b>TYPE_LINECHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_LINECHART">PHPExcel_Chart_DataSeries::TYPE_LINECHART</a></dd> + <dt><b>TYPE_LINECHART_3D</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_LINECHART_3D">PHPExcel_Chart_DataSeries::TYPE_LINECHART_3D</a></dd> + <dt><b>TYPE_LIST</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_LIST">PHPExcel_Cell_DataValidation::TYPE_LIST</a></dd> + <dt><b>TYPE_NONE</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_NONE">PHPExcel_Cell_DataValidation::TYPE_NONE</a></dd> + <dt><b>TYPE_NULL</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_NULL">PHPExcel_Cell_DataType::TYPE_NULL</a></dd> + <dt><b>TYPE_NUMERIC</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_NUMERIC">PHPExcel_Cell_DataType::TYPE_NUMERIC</a></dd> + <dt><b>TYPE_PIECHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_PIECHART">PHPExcel_Chart_DataSeries::TYPE_PIECHART</a></dd> + <dt><b>TYPE_PIECHART_3D</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_PIECHART_3D">PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D</a></dd> + <dt><b>TYPE_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constTYPE_POS">PHPExcel_Shared_OLERead::TYPE_POS</a></dd> + <dt><b>TYPE_RADARCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_RADARCHART">PHPExcel_Chart_DataSeries::TYPE_RADARCHART</a></dd> + <dt><b>TYPE_SCATTERCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_SCATTERCHART">PHPExcel_Chart_DataSeries::TYPE_SCATTERCHART</a></dd> + <dt><b>TYPE_STOCKCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_STOCKCHART">PHPExcel_Chart_DataSeries::TYPE_STOCKCHART</a></dd> + <dt><b>TYPE_STRING</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_STRING">PHPExcel_Cell_DataType::TYPE_STRING</a></dd> + <dt><b>TYPE_STRING2</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_STRING2">PHPExcel_Cell_DataType::TYPE_STRING2</a></dd> + <dt><b>TYPE_SURFACECHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_SURFACECHART">PHPExcel_Chart_DataSeries::TYPE_SURFACECHART</a></dd> + <dt><b>TYPE_SURFACECHART_3D</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_SURFACECHART_3D">PHPExcel_Chart_DataSeries::TYPE_SURFACECHART_3D</a></dd> + <dt><b>TYPE_TEXTLENGTH</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_TEXTLENGTH">PHPExcel_Cell_DataValidation::TYPE_TEXTLENGTH</a></dd> + <dt><b>TYPE_TIME</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_TIME">PHPExcel_Cell_DataValidation::TYPE_TIME</a></dd> + <dt><b>TYPE_WHOLE</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_WHOLE">PHPExcel_Cell_DataValidation::TYPE_WHOLE</a></dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="u"></a> + <div> + <h2>u</h2> + <dl> + <dt><b>uminus</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methoduminus">PHPExcel_Shared_JAMA_Matrix::uminus()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;uminus</dd> + <dt><b>UNDERLINE_DOUBLE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_DOUBLE">PHPExcel_Style_Font::UNDERLINE_DOUBLE</a></dd> + <dt><b>UNDERLINE_DOUBLEACCOUNTING</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_DOUBLEACCOUNTING">PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING</a></dd> + <dt><b>UNDERLINE_NONE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_NONE">PHPExcel_Style_Font::UNDERLINE_NONE</a></dd> + <dt><b>UNDERLINE_SINGLE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_SINGLE">PHPExcel_Style_Font::UNDERLINE_SINGLE</a></dd> + <dt><b>UNDERLINE_SINGLEACCOUNTING</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_SINGLEACCOUNTING">PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING</a></dd> + <dt><b>unfreezePane</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunfreezePane">PHPExcel_Worksheet::unfreezePane()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Unfreeze Pane</dd> + <dt><b>unmergeCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunmergeCells">PHPExcel_Worksheet::unmergeCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove merge on a cell range</dd> + <dt><b>unmergeCellsByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunmergeCellsByColumnAndRow">PHPExcel_Worksheet::unmergeCellsByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove merge on a cell range by using numeric cell coordinates</dd> + <dt><b>unprotectCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunprotectCells">PHPExcel_Worksheet::unprotectCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove protection on a cell range</dd> + <dt><b>unprotectCellsByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunprotectCellsByColumnAndRow">PHPExcel_Worksheet::unprotectCellsByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove protection on a cell range by using numeric cell coordinates</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_SQLite::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_SQLite3::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_Wincache::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_APC::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_PHPTemp::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_Memcache::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_DiscISAM::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file MemoryGZip.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_MemoryGZip::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file MemorySerialized.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_MemorySerialized::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file Memory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_Memory::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file Igbinary.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_Igbinary::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>updateCacheData</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_ICache::updateCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache</dd> + <dt><b>updateCacheData</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache</dd> + <dt><b>updateCellReference</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#methodupdateCellReference">PHPExcel_ReferenceHelper::updateCellReference()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Update cell reference</dd> + <dt><b>updateFormulaReferences</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#methodupdateFormulaReferences">PHPExcel_ReferenceHelper::updateFormulaReferences()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Update references within formulas</dd> + <dt><b>updateNamedFormulas</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#methodupdateNamedFormulas">PHPExcel_ReferenceHelper::updateNamedFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Update named formulas (i.e. containing worksheet references / named ranges)</dd> + <dt><b>UPPERCASE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodUPPERCASE">PHPExcel_Calculation_TextData::UPPERCASE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;UPPERCASE</dd> + <dt><b>UTF8toBIFF8UnicodeLong</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodUTF8toBIFF8UnicodeLong">PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Converts a UTF-8 string into BIFF8 Unicode string data (16-bit string length)</dd> + <dt><b>UTF8toBIFF8UnicodeShort</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodUTF8toBIFF8UnicodeShort">PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Converts a UTF-8 string into BIFF8 Unicode string data (8-bit string length)</dd> + <dt><b>utf16_decode</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodutf16_decode">PHPExcel_Shared_String::utf16_decode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Decode UTF-16 encoded strings.</dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="v"></a> + <div> + <h2>v</h2> + <dl> + <dt><b>val</b></dt> + <dd>in file LMQuadTest.php, method <a href="PHPExcel/LMQuadTest.html#methodval">LMQuadTest::val()</a></dd> + <dt><b>valid</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodvalid">PHPExcel_Worksheet_RowIterator::valid()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Indicate if more rows exist in the worksheet</dd> + <dt><b>valid</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodvalid">PHPExcel_Worksheet_CellIterator::valid()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Are there any more PHPExcel_Cell instances available?</dd> + <dt><b>valid</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#methodvalid">PHPExcel_WorksheetIterator::valid()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;More PHPExcel_Worksheet instances available?</dd> + <dt><b>VALUE</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodVALUE">PHPExcel_Calculation_Functions::VALUE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VALUE</dd> + <dt><b>VARA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARA">PHPExcel_Calculation_Statistical::VARA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VARA</dd> + <dt><b>VARFunc</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARFunc">PHPExcel_Calculation_Statistical::VARFunc()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VARFunc</dd> + <dt><b>variance</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodvariance">Base::variance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the variance (unbiased) of the data points in the set Handles cummulative data sets correctly</dd> + <dt><b>varianceWithMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodvarianceWithMean">Base::varianceWithMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the variance (unbiased) of the data points in the set given a fixed mean (average) value. Not used in calcBasic(), calcFull() or calc().</dd> + <dt><b>VARP</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARP">PHPExcel_Calculation_Statistical::VARP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VARP</dd> + <dt><b>VARPA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARPA">PHPExcel_Calculation_Statistical::VARPA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VARPA</dd> + <dt><b>VERDANA</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA">PHPExcel_Shared_Font::VERDANA</a></dd> + <dt><b>VERDANA_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA_BOLD">PHPExcel_Shared_Font::VERDANA_BOLD</a></dd> + <dt><b>VERDANA_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA_BOLD_ITALIC">PHPExcel_Shared_Font::VERDANA_BOLD_ITALIC</a></dd> + <dt><b>VERDANA_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA_ITALIC">PHPExcel_Shared_Font::VERDANA_ITALIC</a></dd> + <dt><b>VERSION</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodVERSION">PHPExcel_Calculation_Functions::VERSION()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VERSION</dd> + <dt><b>VERTICAL_BOTTOM</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_BOTTOM">PHPExcel_Style_Alignment::VERTICAL_BOTTOM</a></dd> + <dt><b>VERTICAL_CENTER</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_CENTER">PHPExcel_Style_Alignment::VERTICAL_CENTER</a></dd> + <dt><b>VERTICAL_JUSTIFY</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_JUSTIFY">PHPExcel_Style_Alignment::VERTICAL_JUSTIFY</a></dd> + <dt><b>VERTICAL_TOP</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_TOP">PHPExcel_Style_Alignment::VERTICAL_TOP</a></dd> + <dt><b>VLOOKUP</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodVLOOKUP">PHPExcel_Calculation_LookupRef::VLOOKUP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VLOOKUP The VLOOKUP function searches for value in the left-most column of lookup_array and returns the value in the same row based on the index_number.</dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="w"></a> + <div> + <h2>w</h2> + <dl> + <dt><b>$writeDebugLog</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$writeDebugLog">PHPExcel_Calculation::$writeDebugLog</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag to determine whether a debug log should be generated by the calculation engine If true, then a debug log will be generated If false, then a debug log will not be generated</dd> + <dt><b>$wrkbook</b></dt> + <dd>in file OLERead.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#var$wrkbook">PHPExcel_Shared_OLERead::$wrkbook</a></dd> + <dt><b>Wincache.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html">Wincache.php</a></dd> + <dt><b>Worksheet.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html">Worksheet.php</a></dd> + <dt><b>WorksheetIterator.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---WorksheetIterator.php.html">WorksheetIterator.php</a></dd> + <dt><b>Workbook.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html">Workbook.php</a></dd> + <dt><b>Worksheet.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html">Worksheet.php</a></dd> + <dt><b>Workbook.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html">Workbook.php</a></dd> + <dt><b>Worksheet.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html">Worksheet.php</a></dd> + <dt><b>WriterPart.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html">WriterPart.php</a></dd> + <dt><b>WEEKOFYEAR</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodWEEKOFYEAR">PHPExcel_Calculation_DateTime::WEEKOFYEAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;WEEKOFYEAR</dd> + <dt><b>WEIBULL</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodWEIBULL">PHPExcel_Calculation_Statistical::WEIBULL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;WEIBULL</dd> + <dt><b>WHITESPACE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constWHITESPACE">PHPExcel_Calculation_FormulaParser::WHITESPACE</a></dd> + <dt><b>WORKDAY</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodWORKDAY">PHPExcel_Calculation_DateTime::WORKDAY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;WORKDAY</dd> + <dt><b>writeAllSheets</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodwriteAllSheets">PHPExcel_Writer_HTML::writeAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write all sheets (resets sheetIndex to NULL)</dd> + <dt><b>writeChart</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html#methodwriteChart">PHPExcel_Writer_Excel2007_Chart::writeChart()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write charts to XML format</dd> + <dt><b>writeComments</b></dt> + <dd>in file Comments.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#methodwriteComments">PHPExcel_Writer_Excel2007_Comments::writeComments()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write comments to XML format</dd> + <dt><b>writeContentTypes</b></dt> + <dd>in file ContentTypes.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html#methodwriteContentTypes">PHPExcel_Writer_Excel2007_ContentTypes::writeContentTypes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write content types to XML format</dd> + <dt><b>writeData</b></dt> + <dd>in file BIFFwriter.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodwriteData">PHPExcel_Writer_Excel5_BIFFwriter::writeData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;General storage function like _append, but returns string instead of modifying $this-&gt;_data</dd> + <dt><b>writeDocPropsApp</b></dt> + <dd>in file DocProps.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html#methodwriteDocPropsApp">PHPExcel_Writer_Excel2007_DocProps::writeDocPropsApp()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write docProps/app.xml to XML format</dd> + <dt><b>writeDocPropsCore</b></dt> + <dd>in file DocProps.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html#methodwriteDocPropsCore">PHPExcel_Writer_Excel2007_DocProps::writeDocPropsCore()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write docProps/core.xml to XML format</dd> + <dt><b>writeDocPropsCustom</b></dt> + <dd>in file DocProps.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html#methodwriteDocPropsCustom">PHPExcel_Writer_Excel2007_DocProps::writeDocPropsCustom()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write docProps/custom.xml to XML format</dd> + <dt><b>writeDrawingRelationships</b></dt> + <dd>in file Rels.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteDrawingRelationships">PHPExcel_Writer_Excel2007_Rels::writeDrawingRelationships()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write drawing relationships to XML format</dd> + <dt><b>writeDrawings</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#methodwriteDrawings">PHPExcel_Writer_Excel2007_Drawing::writeDrawings()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write drawings to XML format</dd> + <dt><b>writeEof</b></dt> + <dd>in file BIFFwriter.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodwriteEof">PHPExcel_Writer_Excel5_BIFFwriter::writeEof()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Writes Excel EOF record to indicate the end of a BIFF stream.</dd> + <dt><b>writeFont</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html#methodwriteFont">PHPExcel_Writer_Excel5_Font::writeFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get font record data</dd> + <dt><b>writeHeaderFooterDrawingRelationships</b></dt> + <dd>in file Rels.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteHeaderFooterDrawingRelationships">PHPExcel_Writer_Excel2007_Rels::writeHeaderFooterDrawingRelationships()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write header/footer drawing relationships to XML format</dd> + <dt><b>writeRawData</b></dt> + <dd>in file XMLWriter.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#methodwriteRawData">PHPExcel_Shared_XMLWriter::writeRawData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fallback method for writeRaw, introduced in PHP 5.2</dd> + <dt><b>writeRelationships</b></dt> + <dd>in file Rels.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteRelationships">PHPExcel_Writer_Excel2007_Rels::writeRelationships()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write relationships to XML format</dd> + <dt><b>writeRichText</b></dt> + <dd>in file StringTable.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodwriteRichText">PHPExcel_Writer_Excel2007_StringTable::writeRichText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write Rich Text</dd> + <dt><b>writeRichTextForCharts</b></dt> + <dd>in file StringTable.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodwriteRichTextForCharts">PHPExcel_Writer_Excel2007_StringTable::writeRichTextForCharts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write Rich Text</dd> + <dt><b>writeStringTable</b></dt> + <dd>in file StringTable.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodwriteStringTable">PHPExcel_Writer_Excel2007_StringTable::writeStringTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write string table to XML format</dd> + <dt><b>writeStyles</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodwriteStyles">PHPExcel_Writer_Excel2007_Style::writeStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write styles to XML format</dd> + <dt><b>writeTheme</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html#methodwriteTheme">PHPExcel_Writer_Excel2007_Theme::writeTheme()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write theme to XML format</dd> + <dt><b>writeVMLComments</b></dt> + <dd>in file Comments.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#methodwriteVMLComments">PHPExcel_Writer_Excel2007_Comments::writeVMLComments()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write VML comments to XML format</dd> + <dt><b>writeVMLHeaderFooterImages</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#methodwriteVMLHeaderFooterImages">PHPExcel_Writer_Excel2007_Drawing::writeVMLHeaderFooterImages()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write VML header/footer images to XML format</dd> + <dt><b>writeWorkbook</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html#methodwriteWorkbook">PHPExcel_Writer_Excel2007_Workbook::writeWorkbook()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write workbook to XML format</dd> + <dt><b>writeWorkbook</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodwriteWorkbook">PHPExcel_Writer_Excel5_Workbook::writeWorkbook()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Assemble worksheets into a workbook and send the BIFF data to an OLE storage.</dd> + <dt><b>writeWorkbookRelationships</b></dt> + <dd>in file Rels.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteWorkbookRelationships">PHPExcel_Writer_Excel2007_Rels::writeWorkbookRelationships()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write workbook relationships to XML format</dd> + <dt><b>writeWorksheet</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html#methodwriteWorksheet">PHPExcel_Writer_Excel2007_Worksheet::writeWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write worksheet to XML format</dd> + <dt><b>writeWorksheetRelationships</b></dt> + <dd>in file Rels.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteWorksheetRelationships">PHPExcel_Writer_Excel2007_Rels::writeWorksheetRelationships()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write worksheet relationships to XML format</dd> + <dt><b>writeXf</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodwriteXf">PHPExcel_Writer_Excel5_Xf::writeXf()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate an Excel BIFF XF record (style or cell).</dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="x"></a> + <div> + <h2>x</h2> + <dl> + <dt><b>XMLWriter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html">XMLWriter.php</a></dd> + <dt><b>Xf.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html">Xf.php</a></dd> + <dt><b>XIRR</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodXIRR">PHPExcel_Calculation_Financial::XIRR()</a></dd> + <dt><b>xlLegendPositionBottom</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionBottom">PHPExcel_Chart_Legend::xlLegendPositionBottom</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Legend positions</dd> + <dt><b>xlLegendPositionCorner</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionCorner">PHPExcel_Chart_Legend::xlLegendPositionCorner</a></dd> + <dt><b>xlLegendPositionCustom</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionCustom">PHPExcel_Chart_Legend::xlLegendPositionCustom</a></dd> + <dt><b>xlLegendPositionLeft</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionLeft">PHPExcel_Chart_Legend::xlLegendPositionLeft</a></dd> + <dt><b>xlLegendPositionRight</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionRight">PHPExcel_Chart_Legend::xlLegendPositionRight</a></dd> + <dt><b>xlLegendPositionTop</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionTop">PHPExcel_Chart_Legend::xlLegendPositionTop</a></dd> + <dt><b>XLS_BIFF7</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_BIFF7">PHPExcel_Reader_Excel5::XLS_BIFF7</a></dd> + <dt><b>XLS_BIFF8</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_BIFF8">PHPExcel_Reader_Excel5::XLS_BIFF8</a></dd> + <dt><b>XLS_Type_ARRAY</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_ARRAY">PHPExcel_Reader_Excel5::XLS_Type_ARRAY</a></dd> + <dt><b>XLS_Type_BLANK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BLANK">PHPExcel_Reader_Excel5::XLS_Type_BLANK</a></dd> + <dt><b>XLS_Type_BOF</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BOF">PHPExcel_Reader_Excel5::XLS_Type_BOF</a></dd> + <dt><b>XLS_Type_BOOLERR</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BOOLERR">PHPExcel_Reader_Excel5::XLS_Type_BOOLERR</a></dd> + <dt><b>XLS_Type_BOTTOMMARGIN</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BOTTOMMARGIN">PHPExcel_Reader_Excel5::XLS_Type_BOTTOMMARGIN</a></dd> + <dt><b>XLS_Type_CODEPAGE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_CODEPAGE">PHPExcel_Reader_Excel5::XLS_Type_CODEPAGE</a></dd> + <dt><b>XLS_Type_COLINFO</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_COLINFO">PHPExcel_Reader_Excel5::XLS_Type_COLINFO</a></dd> + <dt><b>XLS_Type_CONTINUE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_CONTINUE">PHPExcel_Reader_Excel5::XLS_Type_CONTINUE</a></dd> + <dt><b>XLS_Type_DATAVALIDATION</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DATAVALIDATION">PHPExcel_Reader_Excel5::XLS_Type_DATAVALIDATION</a></dd> + <dt><b>XLS_Type_DATAVALIDATIONS</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DATAVALIDATIONS">PHPExcel_Reader_Excel5::XLS_Type_DATAVALIDATIONS</a></dd> + <dt><b>XLS_Type_DATEMODE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DATEMODE">PHPExcel_Reader_Excel5::XLS_Type_DATEMODE</a></dd> + <dt><b>XLS_Type_DBCELL</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DBCELL">PHPExcel_Reader_Excel5::XLS_Type_DBCELL</a></dd> + <dt><b>XLS_Type_DEFAULTROWHEIGHT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DEFAULTROWHEIGHT">PHPExcel_Reader_Excel5::XLS_Type_DEFAULTROWHEIGHT</a></dd> + <dt><b>XLS_Type_DEFCOLWIDTH</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DEFCOLWIDTH">PHPExcel_Reader_Excel5::XLS_Type_DEFCOLWIDTH</a></dd> + <dt><b>XLS_Type_DEFINEDNAME</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DEFINEDNAME">PHPExcel_Reader_Excel5::XLS_Type_DEFINEDNAME</a></dd> + <dt><b>XLS_Type_DIMENSION</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DIMENSION">PHPExcel_Reader_Excel5::XLS_Type_DIMENSION</a></dd> + <dt><b>XLS_Type_EOF</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EOF">PHPExcel_Reader_Excel5::XLS_Type_EOF</a></dd> + <dt><b>XLS_Type_EXTERNALBOOK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTERNALBOOK">PHPExcel_Reader_Excel5::XLS_Type_EXTERNALBOOK</a></dd> + <dt><b>XLS_Type_EXTERNNAME</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTERNNAME">PHPExcel_Reader_Excel5::XLS_Type_EXTERNNAME</a></dd> + <dt><b>XLS_Type_EXTERNSHEET</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTERNSHEET">PHPExcel_Reader_Excel5::XLS_Type_EXTERNSHEET</a></dd> + <dt><b>XLS_Type_EXTSST</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTSST">PHPExcel_Reader_Excel5::XLS_Type_EXTSST</a></dd> + <dt><b>XLS_Type_FILEPASS</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FILEPASS">PHPExcel_Reader_Excel5::XLS_Type_FILEPASS</a></dd> + <dt><b>XLS_Type_FONT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FONT">PHPExcel_Reader_Excel5::XLS_Type_FONT</a></dd> + <dt><b>XLS_Type_FOOTER</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FOOTER">PHPExcel_Reader_Excel5::XLS_Type_FOOTER</a></dd> + <dt><b>XLS_Type_FORMAT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FORMAT">PHPExcel_Reader_Excel5::XLS_Type_FORMAT</a></dd> + <dt><b>XLS_Type_FORMULA</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FORMULA">PHPExcel_Reader_Excel5::XLS_Type_FORMULA</a></dd> + <dt><b>XLS_Type_HCENTER</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HCENTER">PHPExcel_Reader_Excel5::XLS_Type_HCENTER</a></dd> + <dt><b>XLS_Type_HEADER</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HEADER">PHPExcel_Reader_Excel5::XLS_Type_HEADER</a></dd> + <dt><b>XLS_Type_HORIZONTALPAGEBREAKS</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HORIZONTALPAGEBREAKS">PHPExcel_Reader_Excel5::XLS_Type_HORIZONTALPAGEBREAKS</a></dd> + <dt><b>XLS_Type_HYPERLINK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HYPERLINK">PHPExcel_Reader_Excel5::XLS_Type_HYPERLINK</a></dd> + <dt><b>XLS_Type_IMDATA</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_IMDATA">PHPExcel_Reader_Excel5::XLS_Type_IMDATA</a></dd> + <dt><b>XLS_Type_INDEX</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_INDEX">PHPExcel_Reader_Excel5::XLS_Type_INDEX</a></dd> + <dt><b>XLS_Type_LABEL</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_LABEL">PHPExcel_Reader_Excel5::XLS_Type_LABEL</a></dd> + <dt><b>XLS_Type_LABELSST</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_LABELSST">PHPExcel_Reader_Excel5::XLS_Type_LABELSST</a></dd> + <dt><b>XLS_Type_LEFTMARGIN</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_LEFTMARGIN">PHPExcel_Reader_Excel5::XLS_Type_LEFTMARGIN</a></dd> + <dt><b>XLS_Type_MERGEDCELLS</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MERGEDCELLS">PHPExcel_Reader_Excel5::XLS_Type_MERGEDCELLS</a></dd> + <dt><b>XLS_Type_MSODRAWING</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MSODRAWING">PHPExcel_Reader_Excel5::XLS_Type_MSODRAWING</a></dd> + <dt><b>XLS_Type_MSODRAWINGGROUP</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MSODRAWINGGROUP">PHPExcel_Reader_Excel5::XLS_Type_MSODRAWINGGROUP</a></dd> + <dt><b>XLS_Type_MULBLANK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MULBLANK">PHPExcel_Reader_Excel5::XLS_Type_MULBLANK</a></dd> + <dt><b>XLS_Type_MULRK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MULRK">PHPExcel_Reader_Excel5::XLS_Type_MULRK</a></dd> + <dt><b>XLS_Type_NOTE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_NOTE">PHPExcel_Reader_Excel5::XLS_Type_NOTE</a></dd> + <dt><b>XLS_Type_NUMBER</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_NUMBER">PHPExcel_Reader_Excel5::XLS_Type_NUMBER</a></dd> + <dt><b>XLS_Type_OBJ</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_OBJ">PHPExcel_Reader_Excel5::XLS_Type_OBJ</a></dd> + <dt><b>XLS_Type_OBJECTPROTECT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_OBJECTPROTECT">PHPExcel_Reader_Excel5::XLS_Type_OBJECTPROTECT</a></dd> + <dt><b>XLS_Type_PAGESETUP</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PAGESETUP">PHPExcel_Reader_Excel5::XLS_Type_PAGESETUP</a></dd> + <dt><b>XLS_Type_PALETTE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PALETTE">PHPExcel_Reader_Excel5::XLS_Type_PALETTE</a></dd> + <dt><b>XLS_Type_PANE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PANE">PHPExcel_Reader_Excel5::XLS_Type_PANE</a></dd> + <dt><b>XLS_Type_PASSWORD</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PASSWORD">PHPExcel_Reader_Excel5::XLS_Type_PASSWORD</a></dd> + <dt><b>XLS_Type_PRINTGRIDLINES</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PRINTGRIDLINES">PHPExcel_Reader_Excel5::XLS_Type_PRINTGRIDLINES</a></dd> + <dt><b>XLS_Type_PROTECT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PROTECT">PHPExcel_Reader_Excel5::XLS_Type_PROTECT</a></dd> + <dt><b>XLS_Type_RANGEPROTECTION</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_RANGEPROTECTION">PHPExcel_Reader_Excel5::XLS_Type_RANGEPROTECTION</a></dd> + <dt><b>XLS_Type_RIGHTMARGIN</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_RIGHTMARGIN">PHPExcel_Reader_Excel5::XLS_Type_RIGHTMARGIN</a></dd> + <dt><b>XLS_Type_RK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_RK">PHPExcel_Reader_Excel5::XLS_Type_RK</a></dd> + <dt><b>XLS_Type_ROW</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_ROW">PHPExcel_Reader_Excel5::XLS_Type_ROW</a></dd> + <dt><b>XLS_Type_SCENPROTECT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SCENPROTECT">PHPExcel_Reader_Excel5::XLS_Type_SCENPROTECT</a></dd> + <dt><b>XLS_Type_SCL</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SCL">PHPExcel_Reader_Excel5::XLS_Type_SCL</a></dd> + <dt><b>XLS_Type_SELECTION</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SELECTION">PHPExcel_Reader_Excel5::XLS_Type_SELECTION</a></dd> + <dt><b>XLS_Type_SHAREDFMLA</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHAREDFMLA">PHPExcel_Reader_Excel5::XLS_Type_SHAREDFMLA</a></dd> + <dt><b>XLS_Type_SHEET</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEET">PHPExcel_Reader_Excel5::XLS_Type_SHEET</a></dd> + <dt><b>XLS_Type_SHEETLAYOUT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEETLAYOUT">PHPExcel_Reader_Excel5::XLS_Type_SHEETLAYOUT</a></dd> + <dt><b>XLS_Type_SHEETPR</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEETPR">PHPExcel_Reader_Excel5::XLS_Type_SHEETPR</a></dd> + <dt><b>XLS_Type_SHEETPROTECTION</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEETPROTECTION">PHPExcel_Reader_Excel5::XLS_Type_SHEETPROTECTION</a></dd> + <dt><b>XLS_Type_SST</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SST">PHPExcel_Reader_Excel5::XLS_Type_SST</a></dd> + <dt><b>XLS_Type_STRING</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_STRING">PHPExcel_Reader_Excel5::XLS_Type_STRING</a></dd> + <dt><b>XLS_Type_STYLE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_STYLE">PHPExcel_Reader_Excel5::XLS_Type_STYLE</a></dd> + <dt><b>XLS_Type_TOPMARGIN</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_TOPMARGIN">PHPExcel_Reader_Excel5::XLS_Type_TOPMARGIN</a></dd> + <dt><b>XLS_Type_TXO</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_TXO">PHPExcel_Reader_Excel5::XLS_Type_TXO</a></dd> + <dt><b>XLS_Type_UNKNOWN</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_UNKNOWN">PHPExcel_Reader_Excel5::XLS_Type_UNKNOWN</a></dd> + <dt><b>XLS_Type_VCENTER</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_VCENTER">PHPExcel_Reader_Excel5::XLS_Type_VCENTER</a></dd> + <dt><b>XLS_Type_VERTICALPAGEBREAKS</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_VERTICALPAGEBREAKS">PHPExcel_Reader_Excel5::XLS_Type_VERTICALPAGEBREAKS</a></dd> + <dt><b>XLS_Type_WINDOW2</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_WINDOW2">PHPExcel_Reader_Excel5::XLS_Type_WINDOW2</a></dd> + <dt><b>XLS_Type_XF</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_XF">PHPExcel_Reader_Excel5::XLS_Type_XF</a></dd> + <dt><b>XLS_Type_XFEXT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_XFEXT">PHPExcel_Reader_Excel5::XLS_Type_XFEXT</a></dd> + <dt><b>XLS_WorkbookGlobals</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_WorkbookGlobals">PHPExcel_Reader_Excel5::XLS_WorkbookGlobals</a></dd> + <dt><b>XLS_Worksheet</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Worksheet">PHPExcel_Reader_Excel5::XLS_Worksheet</a></dd> + <dt><b>XMININ</b></dt> + <dd>in file Statistical.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html#defineXMININ">XMININ</a><br>&nbsp;&nbsp;&nbsp;&nbsp;XMININ</dd> + <dt><b>XNPV</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodXNPV">PHPExcel_Calculation_Financial::XNPV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;XNPV</dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="y"></a> + <div> + <h2>y</h2> + <dl> + <dt><b>YEAR</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodYEAR">PHPExcel_Calculation_DateTime::YEAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;YEAR</dd> + <dt><b>YEARFRAC</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodYEARFRAC">PHPExcel_Calculation_DateTime::YEARFRAC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;YEARFRAC</dd> + <dt><b>YIELDDISC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodYIELDDISC">PHPExcel_Calculation_Financial::YIELDDISC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;YIELDDISC</dd> + <dt><b>YIELDMAT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodYIELDMAT">PHPExcel_Calculation_Financial::YIELDMAT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;YIELDMAT</dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="z"></a> + <div> + <h2>z</h2> + <dl> + <dt><b>$zipname</b></dt> + <dd>in file pclzip.lib.php, variable <a href="PHPExcel/PclZip.html#var$zipname">PclZip::$zipname</a></dd> + <dt><b>$zip_fd</b></dt> + <dd>in file pclzip.lib.php, variable <a href="PHPExcel/PclZip.html#var$zip_fd">PclZip::$zip_fd</a></dd> + <dt><b>ZipArchive.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_ZipArchive/_PHPExcel---Shared---ZipArchive.php.html">ZipArchive.php</a></dd> + <dt><b>ZipStreamWrapper.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html">ZipStreamWrapper.php</a></dd> + <dt><b>ZIPARCHIVE</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constZIPARCHIVE">PHPExcel_Settings::ZIPARCHIVE</a></dd> + <dt><b>ZTEST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodZTEST">PHPExcel_Calculation_Statistical::ZTEST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ZTEST</dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>$_active_pane</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_active_pane">PHPExcel_Writer_Excel5_Worksheet::$_active_pane</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The active pane for the worksheet</dd> + <dt><b>$_adjustToZero</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_adjustToZero">PHPExcel_Best_Fit::$_adjustToZero</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag indicating whether values should be adjusted to Y=0</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file linearBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#var$_bestFitType">PHPExcel_Linear_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit (Name of this trend class)</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file powerBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#var$_bestFitType">PHPExcel_Power_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit (Name of this trend class)</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file polynomialBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#var$_bestFitType">PHPExcel_Polynomial_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit (Name of this trend class)</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file logarithmicBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#var$_bestFitType">PHPExcel_Logarithmic_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit (Name of this trend class)</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file exponentialBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#var$_bestFitType">PHPExcel_Exponential_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit (Name of this trend class)</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_bestFitType">PHPExcel_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit</dd> + <dt><b>$_bg_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_bg_color">PHPExcel_Writer_Excel5_Xf::$_bg_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The cell's background color.</dd> + <dt><b>$_biffsize</b></dt> + <dd>in file Workbook.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_biffsize">PHPExcel_Writer_Excel5_Workbook::$_biffsize</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The BIFF file size for the workbook.</dd> + <dt><b>$_bottom_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_bottom_color">PHPExcel_Writer_Excel5_Xf::$_bottom_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Color of the bottom border of the cell.</dd> + <dt><b>$_calculatedValues</b></dt> + <dd>in file Stats.php, variable <a href="Math_Stats/Base.html#var$_calculatedValues">Base::$_calculatedValues</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array for caching result values, should be reset when using setData()</dd> + <dt><b>$_cellCache</b></dt> + <dd>in file CacheBase.php, variable <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a><br>&nbsp;&nbsp;&nbsp;&nbsp;An array of cells or cell pointers for the worksheet cells held in this cache, and indexed by their coordinate address within the worksheet</dd> + <dt><b>$_codepage</b></dt> + <dd>in file Workbook.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_codepage">PHPExcel_Writer_Excel5_Workbook::$_codepage</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The codepage indicates the text encoding used for strings</dd> + <dt><b>$_colinfo</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_colinfo">PHPExcel_Writer_Excel5_Worksheet::$_colinfo</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array containing format information for columns</dd> + <dt><b>$_coordinates</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_coordinates">PHPExcel_Worksheet_BaseDrawing::$_coordinates</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Coordinates</dd> + <dt><b>$_correlation</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_correlation">PHPExcel_Best_Fit::$_correlation</a></dd> + <dt><b>$_country_code</b></dt> + <dd>in file Workbook.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_country_code">PHPExcel_Writer_Excel5_Workbook::$_country_code</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The country code used for localization</dd> + <dt><b>$_covariance</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_covariance">PHPExcel_Best_Fit::$_covariance</a></dd> + <dt><b>$_currentCellIsDirty</b></dt> + <dd>in file CacheBase.php, variable <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag indicating whether the currently active Cell requires saving</dd> + <dt><b>$_currentObject</b></dt> + <dd>in file CacheBase.php, variable <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The currently active Cell</dd> + <dt><b>$_currentObjectID</b></dt> + <dd>in file CacheBase.php, variable <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Coordinate address of the currently active Cell</dd> + <dt><b>$_current_char</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_current_char">PHPExcel_Writer_Excel5_Parser::$_current_char</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The index of the character we are currently looking at</dd> + <dt><b>$_current_token</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_current_token">PHPExcel_Writer_Excel5_Parser::$_current_token</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The token we are working on.</dd> + <dt><b>$_data</b></dt> + <dd>in file BIFFwriter.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_data">PHPExcel_Writer_Excel5_BIFFwriter::$_data</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The string containing the data of the BIFF stream</dd> + <dt><b>$_data</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$_data">PHPExcel_Shared_OLE_PPS::$_data</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The PPS's data (only used if it's not using a temporary file)</dd> + <dt><b>$_data</b></dt> + <dd>in file Stats.php, variable <a href="Math_Stats/Base.html#var$_data">Base::$_data</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The simple or cummulative data set.</dd> + <dt><b>$_dataExpanded</b></dt> + <dd>in file Stats.php, variable <a href="Math_Stats/Base.html#var$_dataExpanded">Base::$_dataExpanded</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Expanded data set. Only set when cummulative data is being used. Null by default.</dd> + <dt><b>$_dataOption</b></dt> + <dd>in file Stats.php, variable <a href="Math_Stats/Base.html#var$_dataOption">Base::$_dataOption</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag for data type, one of STATS_DATA_SIMPLE or STATS_DATA_CUMMULATIVE. Null by default.</dd> + <dt><b>$_datasize</b></dt> + <dd>in file BIFFwriter.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_datasize">PHPExcel_Writer_Excel5_BIFFwriter::$_datasize</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The size of the data in bytes. Should be the same as strlen($this-&gt;_data)</dd> + <dt><b>$_description</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_description">PHPExcel_Worksheet_BaseDrawing::$_description</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Description</dd> + <dt><b>$_DFResiduals</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_DFResiduals">PHPExcel_Best_Fit::$_DFResiduals</a></dd> + <dt><b>$_error</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_error">PHPExcel_Best_Fit::$_error</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Indicator flag for a calculation error</dd> + <dt><b>$_errorCodes</b></dt> + <dd>in file Functions.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#var$_errorCodes">PHPExcel_Calculation_Functions::$_errorCodes</a><br>&nbsp;&nbsp;&nbsp;&nbsp;List of error codes</dd> + <dt><b>$_ext_sheets</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_ext_sheets">PHPExcel_Writer_Excel5_Parser::$_ext_sheets</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array of external sheets</dd> + <dt><b>$_F</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_F">PHPExcel_Best_Fit::$_F</a></dd> + <dt><b>$_fg_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_fg_color">PHPExcel_Writer_Excel5_Xf::$_fg_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The cell's foreground color.</dd> + <dt><b>$_file_handle</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$_file_handle">PHPExcel_Shared_OLE::$_file_handle</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The file handle for reading an OLE container</dd> + <dt><b>$_fntHashIndex</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_fntHashIndex">PHPExcel_Writer_Excel5_Worksheet::$_fntHashIndex</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array of font hashes associated to FONT records index</dd> + <dt><b>$_formula</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_formula">PHPExcel_Writer_Excel5_Parser::$_formula</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The formula to parse</dd> + <dt><b>$_goodnessOfFit</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_goodnessOfFit">PHPExcel_Best_Fit::$_goodnessOfFit</a></dd> + <dt><b>$_height</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_height">PHPExcel_Worksheet_HeaderFooterDrawing::$_height</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Height</dd> + <dt><b>$_height</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_height">PHPExcel_Worksheet_BaseDrawing::$_height</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Height</dd> + <dt><b>$_intersect</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersect">PHPExcel_Best_Fit::$_intersect</a></dd> + <dt><b>$_intersectSE</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersectSE">PHPExcel_Best_Fit::$_intersectSE</a></dd> + <dt><b>$_isPdf</b></dt> + <dd>in file HTML.php, variable <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_isPdf">PHPExcel_Writer_HTML::$_isPdf</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is the current writer creating PDF?</dd> + <dt><b>$_items</b></dt> + <dd>in file HashTable.php, variable <a href="PHPExcel/PHPExcel_HashTable.html#var$_items">PHPExcel_HashTable::$_items</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HashTable elements</dd> + <dt><b>$_keyMap</b></dt> + <dd>in file HashTable.php, variable <a href="PHPExcel/PHPExcel_HashTable.html#var$_keyMap">PHPExcel_HashTable::$_keyMap</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HashTable key map</dd> + <dt><b>$_left_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_left_color">PHPExcel_Writer_Excel5_Xf::$_left_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Color of the left border of the cell.</dd> + <dt><b>$_limit</b></dt> + <dd>in file BIFFwriter.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_limit">PHPExcel_Writer_Excel5_BIFFwriter::$_limit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The maximum length for a BIFF record (excluding record header and length field). See _addContinue()</dd> + <dt><b>$_list</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$_list">PHPExcel_Shared_OLE::$_list</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array of PPS's found on the OLE container</dd> + <dt><b>$_localeBoolean</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$_localeBoolean">PHPExcel_Calculation::$_localeBoolean</a></dd> + <dt><b>$_lookahead</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_lookahead">PHPExcel_Writer_Excel5_Parser::$_lookahead</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The character ahead of the current char</dd> + <dt><b>$_monthNames</b></dt> + <dd>in file Date.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#var$_monthNames">PHPExcel_Shared_Date::$_monthNames</a></dd> + <dt><b>$_name</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_name">PHPExcel_Worksheet_BaseDrawing::$_name</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Name</dd> + <dt><b>$_name</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_name">PHPExcel_Worksheet_HeaderFooterDrawing::$_name</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Name</dd> + <dt><b>$_nullOption</b></dt> + <dd>in file Stats.php, variable <a href="Math_Stats/Base.html#var$_nullOption">Base::$_nullOption</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag for null handling options. One of STATS_REJECT_NULL, STATS_IGNORE_NULL or STATS_USE_NULL_AS_ZERO</dd> + <dt><b>$_numberFormatIndex</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_numberFormatIndex">PHPExcel_Writer_Excel5_Xf::$_numberFormatIndex</a><br>&nbsp;&nbsp;&nbsp;&nbsp;An index (2 bytes) to a FORMAT record (number format).</dd> + <dt><b>$_offsetX</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_offsetX">PHPExcel_Worksheet_BaseDrawing::$_offsetX</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Offset X</dd> + <dt><b>$_offsetX</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_offsetX">PHPExcel_Worksheet_HeaderFooterDrawing::$_offsetX</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Offset X</dd> + <dt><b>$_offsetY</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_offsetY">PHPExcel_Worksheet_HeaderFooterDrawing::$_offsetY</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Offset Y</dd> + <dt><b>$_offsetY</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_offsetY">PHPExcel_Worksheet_BaseDrawing::$_offsetY</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Offset Y</dd> + <dt><b>$_order</b></dt> + <dd>in file polynomialBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#var$_order">PHPExcel_Polynomial_Best_Fit::$_order</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Polynomial order</dd> + <dt><b>$_outline_below</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_below">PHPExcel_Writer_Excel5_Worksheet::$_outline_below</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Whether to have outline summary below.</dd> + <dt><b>$_outline_on</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_on">PHPExcel_Writer_Excel5_Worksheet::$_outline_on</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Whether to use outline.</dd> + <dt><b>$_outline_right</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_right">PHPExcel_Writer_Excel5_Worksheet::$_outline_right</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Whether to have outline summary at the right.</dd> + <dt><b>$_outline_style</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_style">PHPExcel_Writer_Excel5_Worksheet::$_outline_style</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Auto outline styles.</dd> + <dt><b>$_palette</b></dt> + <dd>in file Workbook.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_palette">PHPExcel_Writer_Excel5_Workbook::$_palette</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array containing the colour palette</dd> + <dt><b>$_paperSizes</b></dt> + <dd>in file Core.php, variable <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#var$_paperSizes">PHPExcel_Writer_PDF_Core::$_paperSizes</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Paper Sizes xRef List</dd> + <dt><b>$_parent</b></dt> + <dd>in file CacheBase.php, variable <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parent worksheet</dd> + <dt><b>$_parse_tree</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_parse_tree">PHPExcel_Writer_Excel5_Parser::$_parse_tree</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The parse tree to be generated</dd> + <dt><b>$_phpExcel</b></dt> + <dd>in file HTML.php, variable <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_phpExcel">PHPExcel_Writer_HTML::$_phpExcel</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel object</dd> + <dt><b>$_phpSheet</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_phpSheet">PHPExcel_Writer_Excel5_Worksheet::$_phpSheet</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sheet object</dd> + <dt><b>$_references</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_references">PHPExcel_Writer_Excel5_Parser::$_references</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array of sheet references in the form of REF structures</dd> + <dt><b>$_resizeProportional</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_resizeProportional">PHPExcel_Worksheet_BaseDrawing::$_resizeProportional</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Proportional resize</dd> + <dt><b>$_resizeProportional</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_resizeProportional">PHPExcel_Worksheet_HeaderFooterDrawing::$_resizeProportional</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Proportional resize</dd> + <dt><b>$_right_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_right_color">PHPExcel_Writer_Excel5_Xf::$_right_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Color of the right border of the cell.</dd> + <dt><b>$_rotation</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_rotation">PHPExcel_Worksheet_BaseDrawing::$_rotation</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Rotation</dd> + <dt><b>$_selection</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_selection">PHPExcel_Writer_Excel5_Worksheet::$_selection</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array containing the selected area for the worksheet</dd> + <dt><b>$_shadow</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_shadow">PHPExcel_Worksheet_BaseDrawing::$_shadow</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Shadow</dd> + <dt><b>$_slope</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slope">PHPExcel_Best_Fit::$_slope</a></dd> + <dt><b>$_slopeSE</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slopeSE">PHPExcel_Best_Fit::$_slopeSE</a></dd> + <dt><b>$_SSRegression</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSRegression">PHPExcel_Best_Fit::$_SSRegression</a></dd> + <dt><b>$_SSResiduals</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSResiduals">PHPExcel_Best_Fit::$_SSResiduals</a></dd> + <dt><b>$_StartBlock</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$_StartBlock">PHPExcel_Shared_OLE_PPS::$_StartBlock</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Starting block (small or big) for this PPS's data inside the container</dd> + <dt><b>$_stdevOfResiduals</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_stdevOfResiduals">PHPExcel_Best_Fit::$_stdevOfResiduals</a></dd> + <dt><b>$_str_table</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_str_table">PHPExcel_Writer_Excel5_Worksheet::$_str_table</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reference to the array containing all the unique strings in the workbook</dd> + <dt><b>$_str_total</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_str_total">PHPExcel_Writer_Excel5_Worksheet::$_str_total</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reference to the total number of strings in the workbook</dd> + <dt><b>$_str_unique</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_str_unique">PHPExcel_Writer_Excel5_Worksheet::$_str_unique</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reference to the number of unique strings in the workbook</dd> + <dt><b>$_text_justlast</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_text_justlast">PHPExcel_Writer_Excel5_Xf::$_text_justlast</a><br>&nbsp;&nbsp;&nbsp;&nbsp;1 bit, apparently not used.</dd> + <dt><b>$_tmp_dir</b></dt> + <dd>in file Root.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#var$_tmp_dir">PHPExcel_Shared_OLE_PPS_Root::$_tmp_dir</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Directory for temporary files</dd> + <dt><b>$_top_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_top_color">PHPExcel_Writer_Excel5_Xf::$_top_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Color of the top border of the cell.</dd> + <dt><b>$_valueCount</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_valueCount">PHPExcel_Best_Fit::$_valueCount</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Number of entries in the sets of x- and y-value arrays</dd> + <dt><b>$_width</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_width">PHPExcel_Worksheet_HeaderFooterDrawing::$_width</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Width</dd> + <dt><b>$_width</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_width">PHPExcel_Worksheet_BaseDrawing::$_width</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Width</dd> + <dt><b>$_worksheet</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_worksheet">PHPExcel_Worksheet_BaseDrawing::$_worksheet</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Worksheet</dd> + <dt><b>$_xls_strmax</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_xls_strmax">PHPExcel_Writer_Excel5_Worksheet::$_xls_strmax</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Maximum number of characters for a string (LABEL record in BIFF5)</dd> + <dt><b>$_Xoffset</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Xoffset">PHPExcel_Best_Fit::$_Xoffset</a></dd> + <dt><b>$_xValues</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_xValues">PHPExcel_Best_Fit::$_xValues</a><br>&nbsp;&nbsp;&nbsp;&nbsp;X-value dataseries of values</dd> + <dt><b>$_yBestFitValues</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yBestFitValues">PHPExcel_Best_Fit::$_yBestFitValues</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Y-value series of best-fit values</dd> + <dt><b>$_Yoffset</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Yoffset">PHPExcel_Best_Fit::$_Yoffset</a></dd> + <dt><b>$_yValues</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yValues">PHPExcel_Best_Fit::$_yValues</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Y-value dataseries of values</dd> + <dt><b>_addFont</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#method_addFont">PHPExcel_Writer_Excel5_Workbook::_addFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a font to added fonts</dd> + <dt><b>_calcSize</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_calcSize">PHPExcel_Shared_OLE_PPS_Root::_calcSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate some numbers</dd> + <dt><b>_calculateFormulaValue</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_calculateFormulaValue">PHPExcel_Calculation::_calculateFormulaValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parse a cell formula and calculate its value</dd> + <dt><b>_calculateGoodnessOfFit</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_calculateGoodnessOfFit">PHPExcel_Best_Fit::_calculateGoodnessOfFit()</a></dd> + <dt><b>_DataLen</b></dt> + <dd>in file PPS.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_DataLen">PHPExcel_Shared_OLE_PPS::_DataLen()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the amount of data saved for this PPS</dd> + <dt><b>_erfVal</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#method_erfVal">PHPExcel_Calculation_Engineering::_erfVal()</a></dd> + <dt><b>_getBlockOffset</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#method_getBlockOffset">PHPExcel_Shared_OLE::_getBlockOffset()</a></dd> + <dt><b>_getDateValue</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#method_getDateValue">PHPExcel_Calculation_DateTime::_getDateValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;_getDateValue</dd> + <dt><b>_getFromZipArchive</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#method_getFromZipArchive">PHPExcel_Reader_Excel2007::_getFromZipArchive()</a></dd> + <dt><b>_GetInt2d</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#method_GetInt2d">PHPExcel_Reader_Excel5::_GetInt2d()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read 16-bit unsigned integer</dd> + <dt><b>_GetInt4d</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#method_GetInt4d">PHPExcel_Reader_Excel5::_GetInt4d()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read 32-bit signed integer</dd> + <dt><b>_getMatrixDimensions</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_getMatrixDimensions">PHPExcel_Calculation::_getMatrixDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read the dimensions of a matrix, and re-index it with straight numeric keys starting from row 0, column 0</dd> + <dt><b>_getPpsWk</b></dt> + <dd>in file PPS.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_getPpsWk">PHPExcel_Shared_OLE_PPS::_getPpsWk()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns a string with the PPS's WK (What is a WK?)</dd> + <dt><b>_getUniqueID</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate a unique ID for cache referencing</dd> + <dt><b>_ifCondition</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#method_ifCondition">PHPExcel_Calculation_Functions::_ifCondition()</a></dd> + <dt><b>_isLeapYear</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#method_isLeapYear">PHPExcel_Calculation_DateTime::_isLeapYear()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify if a year is a leap year or not</dd> + <dt><b>_leastSquareFit</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_leastSquareFit">PHPExcel_Best_Fit::_leastSquareFit()</a></dd> + <dt><b>_localeFunc</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_localeFunc">PHPExcel_Calculation::_localeFunc()</a></dd> + <dt><b>_makeSmallData</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_makeSmallData">PHPExcel_Shared_OLE_PPS_Root::_makeSmallData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;get small data (PPS's with data smaller than PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL)</dd> + <dt><b>_parseComplex</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#method_parseComplex">PHPExcel_Calculation_Engineering::_parseComplex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;_parseComplex</dd> + <dt><b>_ppsTreeComplete</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#method_ppsTreeComplete">PHPExcel_Shared_OLE::_ppsTreeComplete()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;It checks whether the PPS tree is complete (all PPS's read) starting with the given PPS (not necessarily root)</dd> + <dt><b>_raiseFormulaError</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_raiseFormulaError">PHPExcel_Calculation::_raiseFormulaError()</a></dd> + <dt><b>_readPpsWks</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#method_readPpsWks">PHPExcel_Shared_OLE::_readPpsWks()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets information about all PPS's on the OLE container from the PPS WK's creates an OLE_PPS object for each one.</dd> + <dt><b>_saveBbd</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_saveBbd">PHPExcel_Shared_OLE_PPS_Root::_saveBbd()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saving Big Block Depot</dd> + <dt><b>_saveBigData</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_saveBigData">PHPExcel_Shared_OLE_PPS_Root::_saveBigData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saving big data (PPS's with data bigger than PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL)</dd> + <dt><b>_saveHeader</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_saveHeader">PHPExcel_Shared_OLE_PPS_Root::_saveHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save OLE header</dd> + <dt><b>_savePps</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_savePps">PHPExcel_Shared_OLE_PPS_Root::_savePps()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves all the PPS's WKs</dd> + <dt><b>_savePpsSetPnt</b></dt> + <dd>in file PPS.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_savePpsSetPnt">PHPExcel_Shared_OLE_PPS::_savePpsSetPnt()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Updates index and pointers to previous, next and children PPS's for this PPS. I don't think it'll work with Dir PPS's.</dd> + <dt><b>_translateFormulaToEnglish</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_translateFormulaToEnglish">PHPExcel_Calculation::_translateFormulaToEnglish()</a></dd> + <dt><b>_translateFormulaToLocale</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_translateFormulaToLocale">PHPExcel_Calculation::_translateFormulaToLocale()</a></dd> + <dt><b>_translateSeparator</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_translateSeparator">PHPExcel_Calculation::_translateSeparator()</a></dd> + <dt><b>_unwrapResult</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_unwrapResult">PHPExcel_Calculation::_unwrapResult()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove quotes used as a wrapper to identify string values</dd> + <dt><b>_wrapResult</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_wrapResult">PHPExcel_Calculation::_wrapResult()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Wrap string values in quotes</dd> + <dt><b>_writeChart</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#method_writeChart">PHPExcel_Writer_Excel2007_Drawing::_writeChart()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write drawings to XML format</dd> + <dt><b>_writeComment</b></dt> + <dd>in file Comments.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#method_writeComment">PHPExcel_Writer_Excel2007_Comments::_writeComment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write comment to XML format</dd> + <dt><b>_writeDrawing</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#method_writeDrawing">PHPExcel_Writer_Excel2007_Drawing::_writeDrawing()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write drawings to XML format</dd> + <dt><b>_writeVMLComment</b></dt> + <dd>in file Comments.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#method_writeVMLComment">PHPExcel_Writer_Excel2007_Comments::_writeVMLComment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write VML comment to XML format</dd> + <dt><b>_writeVMLHeaderFooterImage</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#method_writeVMLHeaderFooterImage">PHPExcel_Writer_Excel2007_Drawing::_writeVMLHeaderFooterImage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write VML comment to XML format</dd> + <dt><b>__call</b></dt> + <dd>in file PDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF.html#method__call">PHPExcel_Writer_PDF::__call()</a></dd> + <dt><b>__clone</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#method__clone">PHPExcel_ReferenceHelper::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;__clone implementation. Cloning should not be allowed in a Singleton!</dd> + <dt><b>__clone</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#method__clone">PHPExcel_Worksheet_Protection::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#method__clone">PHPExcel_Style_Protection::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#method__clone">PHPExcel_DocumentProperties::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__clone">PHPExcel_Worksheet_Drawing::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#method__clone">PHPExcel_Style_NumberFormat::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#method__clone">PHPExcel_NamedRange::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#method__clone">PHPExcel_Worksheet_PageMargins::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#method__clone">PHPExcel_Worksheet_PageSetup::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#method__clone">PHPExcel_Cell_DataValidation::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#method__clone">PHPExcel_RichText::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#method__clone">PHPExcel_DocumentSecurity::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#method__clone">PHPExcel::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#method__clone">PHPExcel_Worksheet_RowDimension::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#method__clone">PHPExcel_Style_Color::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#method__clone">PHPExcel_Worksheet_AutoFilter_Column::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#method__clone">PHPExcel_Worksheet_ColumnDimension::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#method__clone">PHPExcel_Worksheet::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#method__clone">PHPExcel_Cell::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#method__clone">PHPExcel_Style_Alignment::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#method__clone">PHPExcel_Worksheet_AutoFilter::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method__clone">PHPExcel_Calculation::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;__clone implementation. Cloning should not be allowed in a Singleton!</dd> + <dt><b>__clone</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#method__clone">PHPExcel_Reader_Excel2007_Theme::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#method__clone">PHPExcel_RichText_TextElement::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#method__clone">PHPExcel_Worksheet_Drawing_Shadow::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Run.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html#method__clone">PHPExcel_RichText_Run::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#method__clone">PHPExcel_Worksheet_AutoFilter_Column_Rule::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#method__clone">PHPExcel_Worksheet_SheetView::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#method__clone">PHPExcel_Comment::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#method__clone">PHPExcel_Style::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__clone">PHPExcel_Worksheet_BaseDrawing::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#method__clone">PHPExcel_Worksheet_MemoryDrawing::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#method__clone">PHPExcel_Style_Conditional::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#method__clone">PHPExcel_HashTable::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#method__clone">PHPExcel_Style_Border::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#method__clone">PHPExcel_Style_Borders::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#method__clone">PHPExcel_Style_Font::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#method__clone">PHPExcel_Style_Fill::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#method__clone">PHPExcel_Worksheet_HeaderFooterDrawing::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#method__clone">PHPExcel_Worksheet_HeaderFooter::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__construct</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#method__construct">Benchmark::__construct()</a></dd> + <dt><b>__construct</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#method__construct">PHPExcel_Reader_Excel5_Escher::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_Excel5_Escher instance</dd> + <dt><b>__construct</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#method__construct">PHPExcel_Reader_Gnumeric::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_Gnumeric</dd> + <dt><b>__construct</b></dt> + <dd>in file Stack.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#method__construct">PHPExcel_Calculation_Token_Stack::__construct()</a></dd> + <dt><b>__construct</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#method__construct">PHPExcel_CachedObjectStorage_APC::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__construct">PHPExcel_Worksheet_BaseDrawing::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_BaseDrawing</dd> + <dt><b>__construct</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#method__construct">PHPExcel_Comment::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Comment</dd> + <dt><b>__construct</b></dt> + <dd>in file tcPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html#method__construct">PHPExcel_Writer_PDF_tcPDF::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_PDF</dd> + <dt><b>__construct</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#method__construct">PHPExcel_RichText_TextElement::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_RichText_TextElement instance</dd> + <dt><b>__construct</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#method__construct">PHPExcel_Reader_SYLK::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_SYLK</dd> + <dt><b>__construct</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#method__construct">PHPExcel_Reader_Excel5::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_Excel5 instance</dd> + <dt><b>__construct</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#method__construct">PHPExcel_Style::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style</dd> + <dt><b>__construct</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#method__construct">PHPExcel_CachedObjectStorage_SQLite3::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file ExceptionHandler.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html#method__construct">PHPExcel_Calculation_ExceptionHandler::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Register errorhandler</dd> + <dt><b>__construct</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#method__construct">PHPExcel_Worksheet_AutoFilter_Column_Rule::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_AutoFilter_Column_Rule</dd> + <dt><b>__construct</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#method__construct">PHPExcel_Style_NumberFormat::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_NumberFormat</dd> + <dt><b>__construct</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#method__construct">PHPExcel_Worksheet_MemoryDrawing::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_MemoryDrawing</dd> + <dt><b>__construct</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#method__construct">PHPExcel_Worksheet_RowIterator::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new row iterator</dd> + <dt><b>__construct</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#method__construct">PHPExcel_Worksheet_HeaderFooter::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_HeaderFooter</dd> + <dt><b>__construct</b></dt> + <dd>in file Run.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html#method__construct">PHPExcel_RichText_Run::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_RichText_Run instance</dd> + <dt><b>__construct</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#method__construct">PHPExcel_HashTable::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_HashTable</dd> + <dt><b>__construct</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#method__construct">SingularValueDecomposition::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Construct the singular value decomposition</dd> + <dt><b>__construct</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#method__construct">PHPExcel_CachedObjectStorage_SQLite::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#method__construct">PHPExcel_Worksheet_SheetView::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_SheetView</dd> + <dt><b>__construct</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#method__construct">PHPExcel_Style_Borders::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Borders</dd> + <dt><b>__construct</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#method__construct">PHPExcel_Worksheet_Drawing_Shadow::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_Drawing_Shadow</dd> + <dt><b>__construct</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#method__construct">PHPExcel_Calculation_Function::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Calculation_Function</dd> + <dt><b>__construct</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#method__construct">PHPExcel_Reader_Excel2007_Theme::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Theme</dd> + <dt><b>__construct</b></dt> + <dd>in file WriterPart.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent IWriter object</dd> + <dt><b>__construct</b></dt> + <dd>in file mPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html#method__construct">PHPExcel_Writer_PDF_mPDF::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_PDF</dd> + <dt><b>__construct</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#method__construct">PHPExcel_Worksheet_CellIterator::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new cell iterator</dd> + <dt><b>__construct</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#method__construct">PHPExcel_Chart::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart</dd> + <dt><b>__construct</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#method__construct">PHPExcel_Worksheet_AutoFilter::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_AutoFilter</dd> + <dt><b>__construct</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#method__construct">PHPExcel_Cell::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new Cell</dd> + <dt><b>__construct</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#method__construct">PHPExcel_Style_Fill::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Fill</dd> + <dt><b>__construct</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#method__construct">PHPExcel_Writer_Excel5_Worksheet::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#method__construct">PHPExcel_WorksheetIterator::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new worksheet iterator</dd> + <dt><b>__construct</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#method__construct">PHPExcel_Exponential_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + <dt><b>__construct</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#method__construct">PHPExcel_Shared_OLE_PPS_File::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file CholeskyDecomposition.php, method <a href="JAMA/CholeskyDecomposition.html#method__construct">CholeskyDecomposition::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CholeskyDecomposition</dd> + <dt><b>__construct</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#method__construct">PHPExcel_Style_Color::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Color</dd> + <dt><b>__construct</b></dt> + <dd>in file FormulaParser.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#method__construct">PHPExcel_Calculation_FormulaParser::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Calculation_FormulaParser</dd> + <dt><b>__construct</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#method__construct">PHPExcel_Worksheet_ColumnDimension::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_ColumnDimension</dd> + <dt><b>__construct</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#method__construct">PHPExcel_CachedObjectStorage_Wincache::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file Title.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html#method__construct">PHPExcel_Chart_Title::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_Title</dd> + <dt><b>__construct</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#method__construct">PHPExcel_Calculation_FormulaToken::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Calculation_FormulaToken</dd> + <dt><b>__construct</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#method__construct">PHPExcel_NamedRange::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new NamedRange</dd> + <dt><b>__construct</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#method__construct">PHPExcel_Worksheet_AutoFilter_Column::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_AutoFilter_Column</dd> + <dt><b>__construct</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html#method__construct">PHPExcel_Writer_Excel5_Font::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#method__construct">PHPExcel_Worksheet::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new worksheet</dd> + <dt><b>__construct</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#method__construct">PHPExcel_Style_Font::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Font</dd> + <dt><b>__construct</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#method__construct">PHPExcel_Writer_Excel5_Workbook::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Class constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__construct">PHPExcel_Worksheet_Drawing::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_Drawing</dd> + <dt><b>__construct</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#method__construct">PHPExcel_Worksheet_RowDimension::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_RowDimension</dd> + <dt><b>__construct</b></dt> + <dd>in file jpgraph.php, method <a href="PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html#method__construct">PHPExcel_Chart_Renderer_jpgraph::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_Renderer_jpgraph</dd> + <dt><b>__construct</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#method__construct">PHPExcel::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel with one Worksheet</dd> + <dt><b>__construct</b></dt> + <dd>in file PDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF.html#method__construct">PHPExcel_Writer_PDF::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_PDF</dd> + <dt><b>__construct</b></dt> + <dd>in file Parser.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#method__construct">PHPExcel_Writer_Excel5_Parser::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The class constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#method__construct">PHPExcel_Chart_Layout::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_Layout</dd> + <dt><b>__construct</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#method__construct">PHPExcel_Cell_Hyperlink::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Cell_Hyperlink</dd> + <dt><b>__construct</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#method__construct">PHPExcel_CachedObjectStorage_PHPTemp::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#method__construct">PHPExcel_Chart_DataSeriesValues::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_DataSeriesValues object</dd> + <dt><b>__construct</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#method__construct">PHPExcel_Polynomial_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + <dt><b>__construct</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#method__construct">PHPExcel_Cell_DataValidation::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Cell_DataValidation</dd> + <dt><b>__construct</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#method__construct">PHPExcel_Chart_PlotArea::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_PlotArea</dd> + <dt><b>__construct</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#method__construct">PHPExcel_Reader_Excel2007::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_Excel2007 instance</dd> + <dt><b>__construct</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#method__construct">PHPExcel_CachedObjectStorage_DiscISAM::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#method__construct">PHPExcel_Writer_Excel5_Xf::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#method__construct">PHPExcel_Reader_OOCalc::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_OOCalc</dd> + <dt><b>__construct</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#method__construct">PHPExcel_Worksheet_PageMargins::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_PageMargins</dd> + <dt><b>__construct</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#method__construct">PHPExcel_Shared_JAMA_LUDecomposition::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LU Decomposition constructor.</dd> + <dt><b>__construct</b></dt> + <dd>in file XMLWriter.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#method__construct">PHPExcel_Shared_XMLWriter::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Shared_XMLWriter instance</dd> + <dt><b>__construct</b></dt> + <dd>in file DomPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html#method__construct">PHPExcel_Writer_PDF_DomPDF::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_PDF</dd> + <dt><b>__construct</b></dt> + <dd>in file logarithmicBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#method__construct">PHPExcel_Logarithmic_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + <dt><b>__construct</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#method__construct">PHPExcel_Worksheet_PageSetup::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_PageSetup</dd> + <dt><b>__construct</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#method__construct">PHPExcel_Chart_Legend::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_Legend</dd> + <dt><b>__construct</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#method__construct">PHPExcel_DocumentProperties::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_DocumentProperties</dd> + <dt><b>__construct</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#method__construct">PHPExcel_DocumentSecurity::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_DocumentSecurity</dd> + <dt><b>__construct</b></dt> + <dd>in file linearBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#method__construct">PHPExcel_Linear_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + <dt><b>__construct</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression</dd> + <dt><b>__construct</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#method__construct">PHPExcel_Writer_Excel2007::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_Excel2007</dd> + <dt><b>__construct</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#method__construct">PHPExcel_Chart_DataSeries::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_DataSeries</dd> + <dt><b>__construct</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#method__construct">PHPExcel_Writer_Excel5::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_Excel5</dd> + <dt><b>__construct</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#method__construct">PHPExcel_Style_Conditional::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Conditional</dd> + <dt><b>__construct</b></dt> + <dd>in file EigenvalueDecomposition.php, method <a href="JAMA/EigenvalueDecomposition.html#method__construct">EigenvalueDecomposition::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor: Check for symmetry, then construct the eigenvalue decomposition</dd> + <dt><b>__construct</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#method__construct">PHPExcel_RichText::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_RichText instance</dd> + <dt><b>__construct</b></dt> + <dd>in file powerBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#method__construct">PHPExcel_Power_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + <dt><b>__construct</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method__construct">PHPExcel_Shared_OLE_PPS_Root::__construct()</a></dd> + <dt><b>__construct</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#method__construct">PHPExcel_Writer_Excel5_Escher::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#method__construct">PHPExcel_CachedObjectStorage_Memcache::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file Row.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#method__construct">PHPExcel_Worksheet_Row::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new row</dd> + <dt><b>__construct</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#method__construct">PHPExcel_Style_Border::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Border</dd> + <dt><b>__construct</b></dt> + <dd>in file BIFFwriter.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#method__construct">PHPExcel_Writer_Excel5_BIFFwriter::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#method__construct">PHPExcel_Style_Alignment::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Alignment</dd> + <dt><b>__construct</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#method__construct">PHPExcel_ReferenceHelper::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_ReferenceHelper</dd> + <dt><b>__construct</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#method__construct">PHPExcel_Worksheet_HeaderFooterDrawing::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_HeaderFooterDrawing</dd> + <dt><b>__construct</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#method__construct">PHPExcel_Writer_PDF_Core::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_PDF</dd> + <dt><b>__construct</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#method__construct">PHPExcel_Reader_Excel2003XML::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_Excel2003XML</dd> + <dt><b>__construct</b></dt> + <dd>in file PPS.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method__construct">PHPExcel_Shared_OLE_PPS::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#method__construct">PHPExcel_Reader_CSV::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_CSV</dd> + <dt><b>__construct</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#method__construct">PHPExcel_Writer_CSV::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_CSV</dd> + <dt><b>__construct</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#method__construct">PHPExcel_Shared_JAMA_QRDecomposition::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;QR Decomposition computed by Householder reflections.</dd> + <dt><b>__construct</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#method__construct">PHPExcel_Writer_HTML::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_HTML</dd> + <dt><b>__construct</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#method__construct">PHPExcel_Worksheet_Protection::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_Protection</dd> + <dt><b>__construct</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#method__construct">PHPExcel_Style_Protection::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Protection</dd> + <dt><b>__construct</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#method__construct">PHPExcel_Shared_JAMA_Matrix::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Polymorphic constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#method__construct">PHPExcel_Reader_HTML::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_HTML</dd> + <dt><b>__destruct</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#method__destruct">PHPExcel_WorksheetIterator::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructor</dd> + <dt><b>__destruct</b></dt> + <dd>in file ExceptionHandler.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html#method__destruct">PHPExcel_Calculation_ExceptionHandler::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Unregister errorhandler</dd> + <dt><b>__destruct</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#method__destruct">PHPExcel_CachedObjectStorage_APC::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file XMLWriter.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#method__destruct">PHPExcel_Shared_XMLWriter::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructor</dd> + <dt><b>__destruct</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#method__destruct">PHPExcel_Worksheet_RowIterator::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructor</dd> + <dt><b>__destruct</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#method__destruct">PHPExcel_CachedObjectStorage_PHPTemp::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#method__destruct">PHPExcel_CachedObjectStorage_DiscISAM::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method__destruct">PHPExcel_Calculation::__destruct()</a></dd> + <dt><b>__destruct</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#method__destruct">PHPExcel_CachedObjectStorage_Memcache::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file Row.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#method__destruct">PHPExcel_Worksheet_Row::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructor</dd> + <dt><b>__destruct</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#method__destruct">PHPExcel_CachedObjectStorage_SQLite::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#method__destruct">PHPExcel_Worksheet_CellIterator::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructor</dd> + <dt><b>__destruct</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#method__destruct">PHPExcel_CachedObjectStorage_Wincache::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#method__destruct">PHPExcel_CachedObjectStorage_SQLite3::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__toString</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#method__toString">PHPExcel_RichText::__toString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert to string</dd> + <dt><b>__toString</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#method__toString">PHPExcel_Worksheet_AutoFilter::__toString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;toString method replicates previous behavior by returning the range if object is referenced as a property of its parent.</dd> + <dt><b>__toString</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#method__toString">PHPExcel_Cell::__toString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert to string</dd> + </dl> + </div> + <a href="elementindex.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:07 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_JAMA.html b/site/config/PHPExcel/Documentation/API/elementindex_JAMA.html new file mode 100644 index 0000000..d084625 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_JAMA.html @@ -0,0 +1,511 @@ +<html> +<head> +<title>Package JAMA Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="JAMA/Benchmark.html">Benchmark</a><br /> + <a href="JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package JAMA</h1> + [ <a href="elementindex_JAMA.html#a">a</a> ] + [ <a href="elementindex_JAMA.html#b">b</a> ] + [ <a href="elementindex_JAMA.html#c">c</a> ] + [ <a href="elementindex_JAMA.html#d">d</a> ] + [ <a href="elementindex_JAMA.html#e">e</a> ] + [ <a href="elementindex_JAMA.html#g">g</a> ] + [ <a href="elementindex_JAMA.html#h">h</a> ] + [ <a href="elementindex_JAMA.html#i">i</a> ] + [ <a href="elementindex_JAMA.html#j">j</a> ] + [ <a href="elementindex_JAMA.html#l">l</a> ] + [ <a href="elementindex_JAMA.html#m">m</a> ] + [ <a href="elementindex_JAMA.html#n">n</a> ] + [ <a href="elementindex_JAMA.html#p">p</a> ] + [ <a href="elementindex_JAMA.html#q">q</a> ] + [ <a href="elementindex_JAMA.html#r">r</a> ] + [ <a href="elementindex_JAMA.html#s">s</a> ] + [ <a href="elementindex_JAMA.html#t">t</a> ] + [ <a href="elementindex_JAMA.html#u">u</a> ] + [ <a href="elementindex_JAMA.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>__construct</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#method__construct">PHPExcel_Shared_JAMA_QRDecomposition::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;QR Decomposition computed by Householder reflections.</dd> + <dt><b>__construct</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#method__construct">SingularValueDecomposition::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Construct the singular value decomposition</dd> + <dt><b>__construct</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#method__construct">PHPExcel_Shared_JAMA_Matrix::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Polymorphic constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#method__construct">PHPExcel_Shared_JAMA_LUDecomposition::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LU Decomposition constructor.</dd> + <dt><b>__construct</b></dt> + <dd>in file CholeskyDecomposition.php, method <a href="JAMA/CholeskyDecomposition.html#method__construct">CholeskyDecomposition::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CholeskyDecomposition</dd> + <dt><b>__construct</b></dt> + <dd>in file EigenvalueDecomposition.php, method <a href="JAMA/EigenvalueDecomposition.html#method__construct">EigenvalueDecomposition::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor: Check for symmetry, then construct the eigenvalue decomposition</dd> + <dt><b>__construct</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#method__construct">Benchmark::__construct()</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>$A</b></dt> + <dd>in file Matrix.php, variable <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#var$A">PHPExcel_Shared_JAMA_Matrix::$A</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Matrix storage</dd> + <dt><b>ArgumentBoundsException</b></dt> + <dd>in file Matrix.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#constArgumentBoundsException">PHPExcel_Shared_JAMA_Matrix::ArgumentBoundsException</a></dd> + <dt><b>ArgumentBoundsException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineArgumentBoundsException">ArgumentBoundsException</a></dd> + <dt><b>ArgumentTypeException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineArgumentTypeException">ArgumentTypeException</a></dd> + <dt><b>ArgumentTypeException</b></dt> + <dd>in file Matrix.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#constArgumentTypeException">PHPExcel_Shared_JAMA_Matrix::ArgumentTypeException</a></dd> + <dt><b>arrayLeftDivide</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayLeftDivide">PHPExcel_Shared_JAMA_Matrix::arrayLeftDivide()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayLeftDivide</dd> + <dt><b>arrayLeftDivideEquals</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayLeftDivideEquals">PHPExcel_Shared_JAMA_Matrix::arrayLeftDivideEquals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayLeftDivideEquals</dd> + <dt><b>ArrayLengthException</b></dt> + <dd>in file Matrix.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#constArrayLengthException">PHPExcel_Shared_JAMA_Matrix::ArrayLengthException</a></dd> + <dt><b>ArrayLengthException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineArrayLengthException">ArrayLengthException</a></dd> + <dt><b>arrayRightDivide</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayRightDivide">PHPExcel_Shared_JAMA_Matrix::arrayRightDivide()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayRightDivide</dd> + <dt><b>arrayRightDivideEquals</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayRightDivideEquals">PHPExcel_Shared_JAMA_Matrix::arrayRightDivideEquals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayRightDivideEquals</dd> + <dt><b>arrayTimes</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayTimes">PHPExcel_Shared_JAMA_Matrix::arrayTimes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayTimes</dd> + <dt><b>arrayTimesEquals</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodarrayTimesEquals">PHPExcel_Shared_JAMA_Matrix::arrayTimesEquals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;arrayTimesEquals</dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>Benchmark</b></dt> + <dd>in file benchmark.php, class <a href="JAMA/Benchmark.html">Benchmark</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Example of use of Matrix Class, featuring magic squares.</dd> + <dt><b>benchmark.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html">benchmark.php</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>checkMatrixDimensions</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodcheckMatrixDimensions">PHPExcel_Shared_JAMA_Matrix::checkMatrixDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;checkMatrixDimensions</dd> + <dt><b>CholeskyDecomposition</b></dt> + <dd>in file CholeskyDecomposition.php, class <a href="JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a></dd> + <dt><b>concat</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodconcat">PHPExcel_Shared_JAMA_Matrix::concat()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;concat</dd> + <dt><b>cond</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodcond">SingularValueDecomposition::cond()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Two norm condition number</dd> + <dt><b>CholeskyDecomposition.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html">CholeskyDecomposition.php</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>det</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methoddet">PHPExcel_Shared_JAMA_Matrix::det()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;det</dd> + <dt><b>det</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methoddet">PHPExcel_Shared_JAMA_LUDecomposition::det()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Count determinants</dd> + <dt><b>diagonal</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methoddiagonal">PHPExcel_Shared_JAMA_Matrix::diagonal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;diagonal</dd> + <dt><b>displayStats</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methoddisplayStats">Benchmark::displayStats()</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>EigenvalueDecomposition</b></dt> + <dd>in file EigenvalueDecomposition.php, class <a href="JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a></dd> + <dt><b>EigenvalueDecomposition.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html">EigenvalueDecomposition.php</a></dd> + <dt><b>Error.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html">Error.php</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>get</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodget">PHPExcel_Shared_JAMA_Matrix::get()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;get</dd> + <dt><b>getArray</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetArray">PHPExcel_Shared_JAMA_Matrix::getArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getArray</dd> + <dt><b>getColumnDimension</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetColumnDimension">PHPExcel_Shared_JAMA_Matrix::getColumnDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getColumnDimension</dd> + <dt><b>getD</b></dt> + <dd>in file EigenvalueDecomposition.php, method <a href="JAMA/EigenvalueDecomposition.html#methodgetD">EigenvalueDecomposition::getD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the block diagonal eigenvalue matrix</dd> + <dt><b>getDoublePivot</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetDoublePivot">PHPExcel_Shared_JAMA_LUDecomposition::getDoublePivot()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Alias for getPivot</dd> + <dt><b>getH</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetH">PHPExcel_Shared_JAMA_QRDecomposition::getH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Householder vectors</dd> + <dt><b>getImagEigenvalues</b></dt> + <dd>in file EigenvalueDecomposition.php, method <a href="JAMA/EigenvalueDecomposition.html#methodgetImagEigenvalues">EigenvalueDecomposition::getImagEigenvalues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the imaginary parts of the eigenvalues</dd> + <dt><b>getL</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetL">PHPExcel_Shared_JAMA_LUDecomposition::getL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get lower triangular factor.</dd> + <dt><b>getL</b></dt> + <dd>in file CholeskyDecomposition.php, method <a href="JAMA/CholeskyDecomposition.html#methodgetL">CholeskyDecomposition::getL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getL</dd> + <dt><b>getMatrix</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetMatrix">PHPExcel_Shared_JAMA_Matrix::getMatrix()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getMatrix</dd> + <dt><b>getMatrixByCol</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetMatrixByCol">PHPExcel_Shared_JAMA_Matrix::getMatrixByCol()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getMatrixByCol</dd> + <dt><b>getMatrixByRow</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetMatrixByRow">PHPExcel_Shared_JAMA_Matrix::getMatrixByRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getMatrixByRow</dd> + <dt><b>getPivot</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetPivot">PHPExcel_Shared_JAMA_LUDecomposition::getPivot()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return pivot permutation vector.</dd> + <dt><b>getQ</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetQ">PHPExcel_Shared_JAMA_QRDecomposition::getQ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate and return the (economy-sized) orthogonal factor</dd> + <dt><b>getR</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodgetR">PHPExcel_Shared_JAMA_QRDecomposition::getR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the upper triangular factor</dd> + <dt><b>getRealEigenvalues</b></dt> + <dd>in file EigenvalueDecomposition.php, method <a href="JAMA/EigenvalueDecomposition.html#methodgetRealEigenvalues">EigenvalueDecomposition::getRealEigenvalues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the real parts of the eigenvalues</dd> + <dt><b>getRowDimension</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodgetRowDimension">PHPExcel_Shared_JAMA_Matrix::getRowDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getRowDimension</dd> + <dt><b>getS</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodgetS">SingularValueDecomposition::getS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the diagonal matrix of singular values</dd> + <dt><b>getSingularValues</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodgetSingularValues">SingularValueDecomposition::getSingularValues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the one-dimensional array of singular values</dd> + <dt><b>getU</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodgetU">SingularValueDecomposition::getU()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the left singular vectors</dd> + <dt><b>getU</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodgetU">PHPExcel_Shared_JAMA_LUDecomposition::getU()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get upper triangular factor.</dd> + <dt><b>getV</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodgetV">SingularValueDecomposition::getV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the right singular vectors</dd> + <dt><b>getV</b></dt> + <dd>in file EigenvalueDecomposition.php, method <a href="JAMA/EigenvalueDecomposition.html#methodgetV">EigenvalueDecomposition::getV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the eigenvector matrix</dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="h"></a> + <div> + <h2>h</h2> + <dl> + <dt><b>hypo</b></dt> + <dd>in file Maths.php, function <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html#functionhypo">hypo()</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>identity</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodidentity">PHPExcel_Shared_JAMA_Matrix::identity()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;identity</dd> + <dt><b>inverse</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodinverse">PHPExcel_Shared_JAMA_Matrix::inverse()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Matrix inverse or pseudoinverse.</dd> + <dt><b>isFullRank</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodisFullRank">PHPExcel_Shared_JAMA_QRDecomposition::isFullRank()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is the matrix full rank?</dd> + <dt><b>isNonsingular</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodisNonsingular">PHPExcel_Shared_JAMA_LUDecomposition::isNonsingular()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is the matrix nonsingular?</dd> + <dt><b>isSPD</b></dt> + <dd>in file CholeskyDecomposition.php, method <a href="JAMA/CholeskyDecomposition.html#methodisSPD">CholeskyDecomposition::isSPD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is the matrix symmetric and positive definite?</dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="j"></a> + <div> + <h2>j</h2> + <dl> + <dt><b>JAMAError</b></dt> + <dd>in file Error.php, function <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#functionJAMAError">JAMAError()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Custom error handler</dd> + <dt><b>JAMALANG</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineJAMALANG">JAMALANG</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="l"></a> + <div> + <h2>l</h2> + <dl> + <dt><b>LUDecomposition.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html">LUDecomposition.php</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="m"></a> + <div> + <h2>m</h2> + <dl> + <dt><b>magic</b></dt> + <dd>in file MagicSquareExample.php, method <a href="JAMA/MagicSquareExample.html#methodmagic">MagicSquareExample::magic()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate magic square test matrix.</dd> + <dt><b>MagicSquareExample</b></dt> + <dd>in file MagicSquareExample.php, class <a href="JAMA/MagicSquareExample.html">MagicSquareExample</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Example of use of Matrix Class, featuring magic squares.</dd> + <dt><b>main</b></dt> + <dd>in file MagicSquareExample.php, method <a href="JAMA/MagicSquareExample.html#methodmain">MagicSquareExample::main()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Tests LU, QR, SVD and symmetric Eig decompositions.</dd> + <dt><b>MatrixDimensionException</b></dt> + <dd>in file Matrix.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#constMatrixDimensionException">PHPExcel_Shared_JAMA_Matrix::MatrixDimensionException</a></dd> + <dt><b>MatrixDimensionException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineMatrixDimensionException">MatrixDimensionException</a></dd> + <dt><b>MatrixRankException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineMatrixRankException">MatrixRankException</a></dd> + <dt><b>MatrixRankException</b></dt> + <dd>in file QRDecomposition.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#constMatrixRankException">PHPExcel_Shared_JAMA_QRDecomposition::MatrixRankException</a></dd> + <dt><b>MatrixSingularException</b></dt> + <dd>in file LUDecomposition.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#constMatrixSingularException">PHPExcel_Shared_JAMA_LUDecomposition::MatrixSingularException</a></dd> + <dt><b>MatrixSingularException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineMatrixSingularException">MatrixSingularException</a></dd> + <dt><b>MatrixSPDException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineMatrixSPDException">MatrixSPDException</a></dd> + <dt><b>MatrixSquareException</b></dt> + <dd>in file LUDecomposition.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#constMatrixSquareException">PHPExcel_Shared_JAMA_LUDecomposition::MatrixSquareException</a></dd> + <dt><b>microtime_float</b></dt> + <dd>in file MagicSquareExample.php, method <a href="JAMA/MagicSquareExample.html#methodmicrotime_float">MagicSquareExample::microtime_float()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Simple function to replicate PHP 5 behaviour</dd> + <dt><b>microtime_float</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodmicrotime_float">Benchmark::microtime_float()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Simple function to replicate PHP 5 behaviour</dd> + <dt><b>minus</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodminus">PHPExcel_Shared_JAMA_Matrix::minus()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;minus</dd> + <dt><b>minusEquals</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodminusEquals">PHPExcel_Shared_JAMA_Matrix::minusEquals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;minusEquals</dd> + <dt><b>MagicSquareExample.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html">MagicSquareExample.php</a></dd> + <dt><b>Matrix.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html">Matrix.php</a></dd> + <dt><b>Maths.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html">Maths.php</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="n"></a> + <div> + <h2>n</h2> + <dl> + <dt><b>norm2</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodnorm2">SingularValueDecomposition::norm2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Two norm</dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PHPExcel_Shared_JAMA_LUDecomposition</b></dt> + <dd>in file LUDecomposition.php, class <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a></dd> + <dt><b>PHPExcel_Shared_JAMA_Matrix</b></dt> + <dd>in file Matrix.php, class <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a></dd> + <dt><b>PHPExcel_Shared_JAMA_QRDecomposition</b></dt> + <dd>in file QRDecomposition.php, class <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a></dd> + <dt><b>plus</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodplus">PHPExcel_Shared_JAMA_Matrix::plus()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;plus</dd> + <dt><b>plusEquals</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodplusEquals">PHPExcel_Shared_JAMA_Matrix::plusEquals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;plusEquals</dd> + <dt><b>PolymorphicArgumentException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#definePolymorphicArgumentException">PolymorphicArgumentException</a></dd> + <dt><b>PolymorphicArgumentException</b></dt> + <dd>in file Matrix.php, class constant <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#constPolymorphicArgumentException">PHPExcel_Shared_JAMA_Matrix::PolymorphicArgumentException</a></dd> + <dt><b>power</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodpower">PHPExcel_Shared_JAMA_Matrix::power()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;power</dd> + <dt><b>PrecisionLossException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#definePrecisionLossException">PrecisionLossException</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="q"></a> + <div> + <h2>q</h2> + <dl> + <dt><b>QRDecomposition.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html">QRDecomposition.php</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>rank</b></dt> + <dd>in file SingularValueDecomposition.php, method <a href="JAMA/SingularValueDecomposition.html#methodrank">SingularValueDecomposition::rank()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Effective numerical matrix rank</dd> + <dt><b>RowLengthException</b></dt> + <dd>in file Error.php, constant <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html#defineRowLengthException">RowLengthException</a></dd> + <dt><b>run</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrun">Benchmark::run()</a></dd> + <dt><b>runCholesky</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrunCholesky">Benchmark::runCholesky()</a></dd> + <dt><b>runEig</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrunEig">Benchmark::runEig()</a></dd> + <dt><b>runLU</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrunLU">Benchmark::runLU()</a></dd> + <dt><b>runQR</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrunQR">Benchmark::runQR()</a></dd> + <dt><b>runSVD</b></dt> + <dd>in file benchmark.php, method <a href="JAMA/Benchmark.html#methodrunSVD">Benchmark::runSVD()</a></dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>$stat</b></dt> + <dd>in file benchmark.php, variable <a href="JAMA/Benchmark.html#var$stat">Benchmark::$stat</a></dd> + <dt><b>SingularValueDecomposition.php</b></dt> + <dd>procedural page <a href="JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html">SingularValueDecomposition.php</a></dd> + <dt><b>set</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodset">PHPExcel_Shared_JAMA_Matrix::set()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;set</dd> + <dt><b>SingularValueDecomposition</b></dt> + <dd>in file SingularValueDecomposition.php, class <a href="JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a></dd> + <dt><b>solve</b></dt> + <dd>in file CholeskyDecomposition.php, method <a href="JAMA/CholeskyDecomposition.html#methodsolve">CholeskyDecomposition::solve()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Solve A*X = B</dd> + <dt><b>solve</b></dt> + <dd>in file QRDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html#methodsolve">PHPExcel_Shared_JAMA_QRDecomposition::solve()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Least squares solution of A*X = B</dd> + <dt><b>solve</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodsolve">PHPExcel_Shared_JAMA_Matrix::solve()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Solve A*X = B.</dd> + <dt><b>solve</b></dt> + <dd>in file LUDecomposition.php, method <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html#methodsolve">PHPExcel_Shared_JAMA_LUDecomposition::solve()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Solve A*X = B</dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>times</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodtimes">PHPExcel_Shared_JAMA_Matrix::times()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;times</dd> + <dt><b>trace</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodtrace">PHPExcel_Shared_JAMA_Matrix::trace()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;trace</dd> + <dt><b>transpose</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methodtranspose">PHPExcel_Shared_JAMA_Matrix::transpose()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;transpose</dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <hr /> + <a name="u"></a> + <div> + <h2>u</h2> + <dl> + <dt><b>uminus</b></dt> + <dd>in file Matrix.php, method <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html#methoduminus">PHPExcel_Shared_JAMA_Matrix::uminus()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;uminus</dd> + </dl> + </div> + <a href="elementindex_JAMA.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_Math_Stats.html b/site/config/PHPExcel/Documentation/API/elementindex_Math_Stats.html new file mode 100644 index 0000000..0aba9da --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_Math_Stats.html @@ -0,0 +1,336 @@ +<html> +<head> +<title>Package Math_Stats Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">Math_Stats</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_Math_Stats.html" class="menu">class tree: Math_Stats</a> ] + [ <a href="elementindex_Math_Stats.html" class="menu">index: Math_Stats</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html"> Stats.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="Math_Stats/Base.html">Base</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package Math_Stats</h1> + [ <a href="elementindex_Math_Stats.html#a">a</a> ] + [ <a href="elementindex_Math_Stats.html#b">b</a> ] + [ <a href="elementindex_Math_Stats.html#c">c</a> ] + [ <a href="elementindex_Math_Stats.html#f">f</a> ] + [ <a href="elementindex_Math_Stats.html#g">g</a> ] + [ <a href="elementindex_Math_Stats.html#h">h</a> ] + [ <a href="elementindex_Math_Stats.html#i">i</a> ] + [ <a href="elementindex_Math_Stats.html#k">k</a> ] + [ <a href="elementindex_Math_Stats.html#m">m</a> ] + [ <a href="elementindex_Math_Stats.html#p">p</a> ] + [ <a href="elementindex_Math_Stats.html#q">q</a> ] + [ <a href="elementindex_Math_Stats.html#r">r</a> ] + [ <a href="elementindex_Math_Stats.html#s">s</a> ] + [ <a href="elementindex_Math_Stats.html#v">v</a> ] + [ <a href="elementindex_Math_Stats.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>$_calculatedValues</b></dt> + <dd>in file Stats.php, variable <a href="Math_Stats/Base.html#var$_calculatedValues">Base::$_calculatedValues</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array for caching result values, should be reset when using setData()</dd> + <dt><b>$_data</b></dt> + <dd>in file Stats.php, variable <a href="Math_Stats/Base.html#var$_data">Base::$_data</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The simple or cummulative data set.</dd> + <dt><b>$_dataExpanded</b></dt> + <dd>in file Stats.php, variable <a href="Math_Stats/Base.html#var$_dataExpanded">Base::$_dataExpanded</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Expanded data set. Only set when cummulative data is being used. Null by default.</dd> + <dt><b>$_dataOption</b></dt> + <dd>in file Stats.php, variable <a href="Math_Stats/Base.html#var$_dataOption">Base::$_dataOption</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag for data type, one of STATS_DATA_SIMPLE or STATS_DATA_CUMMULATIVE. Null by default.</dd> + <dt><b>$_nullOption</b></dt> + <dd>in file Stats.php, variable <a href="Math_Stats/Base.html#var$_nullOption">Base::$_nullOption</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag for null handling options. One of STATS_REJECT_NULL, STATS_IGNORE_NULL or STATS_USE_NULL_AS_ZERO</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>absDev</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodabsDev">Base::absDev()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the absolute deviation of the data points in the set Handles cummulative data sets correctly</dd> + <dt><b>absDevWithMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodabsDevWithMean">Base::absDevWithMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the absolute deviation of the data points in the set given a fixed mean (average) value. Not used in calcBasic(), calcFull() or calc().</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>Base</b></dt> + <dd>in file Stats.php, class <a href="Math_Stats/Base.html">Base</a><br>&nbsp;&nbsp;&nbsp;&nbsp;A class to calculate descriptive statistics from a data set.</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>calc</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcalc">Base::calc()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the basic or full statistics for the data set</dd> + <dt><b>calcBasic</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcalcBasic">Base::calcBasic()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates a basic set of statistics</dd> + <dt><b>calcFull</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcalcFull">Base::calcFull()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates a full set of statistics</dd> + <dt><b>center</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcenter">Base::center()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Transforms the data by substracting each entry from the mean.</dd> + <dt><b>coeffOfVariation</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcoeffOfVariation">Base::coeffOfVariation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the coefficient of variation of a data set.</dd> + <dt><b>count</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodcount">Base::count()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the number of data points in the set Handles cummulative data sets correctly</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>frequency</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodfrequency">Base::frequency()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the value frequency table of a data set.</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>geometricMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodgeometricMean">Base::geometricMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the geometrical mean of the data points in the set Handles cummulative data sets correctly</dd> + <dt><b>getData</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodgetData">Base::getData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the data which might have been modified according to the current null handling options.</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="h"></a> + <div> + <h2>h</h2> + <dl> + <dt><b>harmonicMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodharmonicMean">Base::harmonicMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the harmonic mean of the data points in the set Handles cummulative data sets correctly</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>interquartileMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodinterquartileMean">Base::interquartileMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The interquartile mean is defined as the mean of the values left after discarding the lower 25% and top 25% ranked values, i.e.:</dd> + <dt><b>interquartileRange</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodinterquartileRange">Base::interquartileRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The interquartile range is the distance between the 75th and 25th percentiles. Basically the range of the middle 50% of the data set, and thus is not affected by outliers or extreme values.</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="k"></a> + <div> + <h2>k</h2> + <dl> + <dt><b>kurtosis</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodkurtosis">Base::kurtosis()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the kurtosis of the data distribution in the set The kurtosis measures the degrees of peakedness of a distribution.</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="m"></a> + <div> + <h2>m</h2> + <dl> + <dt><b>Math_Stats</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodMath_Stats">Base::Math_Stats()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor for the class</dd> + <dt><b>max</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmax">Base::max()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the maximum of a data set.</dd> + <dt><b>mean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmean">Base::mean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the mean (average) of the data points in the set Handles cummulative data sets correctly</dd> + <dt><b>median</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmedian">Base::median()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the median of a data set.</dd> + <dt><b>midrange</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmidrange">Base::midrange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the midrange of a data set.</dd> + <dt><b>min</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmin">Base::min()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the minimum of a data set.</dd> + <dt><b>mode</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodmode">Base::mode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the mode of a data set.</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>percentile</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodpercentile">Base::percentile()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The pth percentile is the value such that p% of the a sorted data set is smaller than it, and (100 - p)% of the data is larger.</dd> + <dt><b>product</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodproduct">Base::product()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates PROD { (xi) }, (the product of all observations) Handles cummulative data sets correctly</dd> + <dt><b>productN</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodproductN">Base::productN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates PROD { (xi)^n }, which is the product of all observations Handles cummulative data sets correctly</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="q"></a> + <div> + <h2>q</h2> + <dl> + <dt><b>quartileDeviation</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodquartileDeviation">Base::quartileDeviation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The quartile deviation is half of the interquartile range value</dd> + <dt><b>quartiles</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodquartiles">Base::quartiles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The quartiles are defined as the values that divide a sorted data set into four equal-sized subsets, and correspond to the 25th, 50th, and 75th percentiles.</dd> + <dt><b>quartileSkewnessCoefficient</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodquartileSkewnessCoefficient">Base::quartileSkewnessCoefficient()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The quartile skewness coefficient (also known as Bowley Skewness), is defined as follows:</dd> + <dt><b>quartileVariationCoefficient</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodquartileVariationCoefficient">Base::quartileVariationCoefficient()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The quartile variation coefficient is defines as follows:</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>range</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodrange">Base::range()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the range of the data set = max - min</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>Stats.php</b></dt> + <dd>procedural page <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html">Stats.php</a></dd> + <dt><b>sampleCentralMoment</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsampleCentralMoment">Base::sampleCentralMoment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the nth central moment (m{n}) of a data set.</dd> + <dt><b>sampleRawMoment</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsampleRawMoment">Base::sampleRawMoment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the nth raw moment (m{n}) of a data set.</dd> + <dt><b>setData</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsetData">Base::setData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets and verifies the data, checking for nulls and using the current null handling option</dd> + <dt><b>setNullOption</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsetNullOption">Base::setNullOption()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the null handling option.</dd> + <dt><b>skewness</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodskewness">Base::skewness()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the skewness of the data distribution in the set The skewness measures the degree of asymmetry of a distribution, and is related to the third central moment of a distribution.</dd> + <dt><b>STATS_BASIC</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_BASIC">STATS_BASIC</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_BASIC to generate the basic descriptive statistics</dd> + <dt><b>STATS_DATA_CUMMULATIVE</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_CUMMULATIVE">STATS_DATA_CUMMULATIVE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_DATA_CUMMULATIVE for an associative array of frequency values,</dd> + <dt><b>STATS_DATA_SIMPLE</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_DATA_SIMPLE">STATS_DATA_SIMPLE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_DATA_SIMPLE for an array of numeric values. This is the default.</dd> + <dt><b>STATS_FULL</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_FULL">STATS_FULL</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_FULL to generate also higher moments, mode, median, etc.</dd> + <dt><b>STATS_IGNORE_NULL</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_IGNORE_NULL">STATS_IGNORE_NULL</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_IGNORE_NULL, ignore null values and prune them from the data.</dd> + <dt><b>STATS_REJECT_NULL</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_REJECT_NULL">STATS_REJECT_NULL</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_REJECT_NULL, reject data sets with null values. This is the default.</dd> + <dt><b>STATS_USE_NULL_AS_ZERO</b></dt> + <dd>in file Stats.php, constant <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html#defineSTATS_USE_NULL_AS_ZERO">STATS_USE_NULL_AS_ZERO</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATS_USE_NULL_AS_ZERO, assign the value of 0 (zero) to null values.</dd> + <dt><b>stdErrorOfMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodstdErrorOfMean">Base::stdErrorOfMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the standard error of the mean.</dd> + <dt><b>stDev</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodstDev">Base::stDev()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the standard deviation (unbiased) of the data points in the set Handles cummulative data sets correctly</dd> + <dt><b>stDevWithMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodstDevWithMean">Base::stDevWithMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the standard deviation (unbiased) of the data points in the set given a fixed mean (average) value. Not used in calcBasic(), calcFull() or calc().</dd> + <dt><b>studentize</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodstudentize">Base::studentize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Transforms the data by substracting each entry from the mean and dividing by its standard deviation. This will reset all pre-calculated values to their original (unset) defaults.</dd> + <dt><b>sum</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsum">Base::sum()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates SUM { xi } Handles cummulative data sets correctly</dd> + <dt><b>sum2</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsum2">Base::sum2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates SUM { (xi)^2 } Handles cummulative data sets correctly</dd> + <dt><b>sumN</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodsumN">Base::sumN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates SUM { (xi)^n } Handles cummulative data sets correctly</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <hr /> + <a name="v"></a> + <div> + <h2>v</h2> + <dl> + <dt><b>variance</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodvariance">Base::variance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the variance (unbiased) of the data points in the set Handles cummulative data sets correctly</dd> + <dt><b>varianceWithMean</b></dt> + <dd>in file Stats.php, method <a href="Math_Stats/Base.html#methodvarianceWithMean">Base::varianceWithMean()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculates the variance (unbiased) of the data points in the set given a fixed mean (average) value. Not used in calcBasic(), calcFull() or calc().</dd> + </dl> + </div> + <a href="elementindex_Math_Stats.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel.html new file mode 100644 index 0000000..dded982 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel.html @@ -0,0 +1,1025 @@ +<html> +<head> +<title>Package PHPExcel Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="PHPExcel/PclZip.html">PclZip</a><br /> + <a href="PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel</h1> + [ <a href="elementindex_PHPExcel.html#a">a</a> ] + [ <a href="elementindex_PHPExcel.html#c">c</a> ] + [ <a href="elementindex_PHPExcel.html#d">d</a> ] + [ <a href="elementindex_PHPExcel.html#e">e</a> ] + [ <a href="elementindex_PHPExcel.html#f">f</a> ] + [ <a href="elementindex_PHPExcel.html#g">g</a> ] + [ <a href="elementindex_PHPExcel.html#h">h</a> ] + [ <a href="elementindex_PHPExcel.html#i">i</a> ] + [ <a href="elementindex_PHPExcel.html#k">k</a> ] + [ <a href="elementindex_PHPExcel.html#l">l</a> ] + [ <a href="elementindex_PHPExcel.html#m">m</a> ] + [ <a href="elementindex_PHPExcel.html#n">n</a> ] + [ <a href="elementindex_PHPExcel.html#p">p</a> ] + [ <a href="elementindex_PHPExcel.html#r">r</a> ] + [ <a href="elementindex_PHPExcel.html#s">s</a> ] + [ <a href="elementindex_PHPExcel.html#t">t</a> ] + [ <a href="elementindex_PHPExcel.html#u">u</a> ] + [ <a href="elementindex_PHPExcel.html#v">v</a> ] + [ <a href="elementindex_PHPExcel.html#w">w</a> ] + [ <a href="elementindex_PHPExcel.html#z">z</a> ] + [ <a href="elementindex_PHPExcel.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>$_items</b></dt> + <dd>in file HashTable.php, variable <a href="PHPExcel/PHPExcel_HashTable.html#var$_items">PHPExcel_HashTable::$_items</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HashTable elements</dd> + <dt><b>$_keyMap</b></dt> + <dd>in file HashTable.php, variable <a href="PHPExcel/PHPExcel_HashTable.html#var$_keyMap">PHPExcel_HashTable::$_keyMap</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HashTable key map</dd> + <dt><b>__clone</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#method__clone">PHPExcel_HashTable::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#method__clone">PHPExcel::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#method__clone">PHPExcel_NamedRange::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#method__clone">PHPExcel_DocumentSecurity::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#method__clone">PHPExcel_DocumentProperties::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#method__clone">PHPExcel_Comment::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#method__clone">PHPExcel_ReferenceHelper::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;__clone implementation. Cloning should not be allowed in a Singleton!</dd> + <dt><b>__construct</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#method__construct">PHPExcel_WorksheetIterator::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new worksheet iterator</dd> + <dt><b>__construct</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#method__construct">PHPExcel_ReferenceHelper::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_ReferenceHelper</dd> + <dt><b>__construct</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#method__construct">PHPExcel::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel with one Worksheet</dd> + <dt><b>__construct</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#method__construct">PHPExcel_HashTable::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_HashTable</dd> + <dt><b>__construct</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#method__construct">PHPExcel_DocumentProperties::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_DocumentProperties</dd> + <dt><b>__construct</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#method__construct">PHPExcel_NamedRange::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new NamedRange</dd> + <dt><b>__construct</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#method__construct">PHPExcel_DocumentSecurity::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_DocumentSecurity</dd> + <dt><b>__construct</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#method__construct">PHPExcel_Comment::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Comment</dd> + <dt><b>__destruct</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#method__destruct">PHPExcel_WorksheetIterator::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructor</dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>add</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodadd">PHPExcel_HashTable::add()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add HashTable item</dd> + <dt><b>add</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodadd">PclZip::add()</a></dd> + <dt><b>addCellStyleXf</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodaddCellStyleXf">PHPExcel::addCellStyleXf()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a cellStyleXf to the workbook</dd> + <dt><b>addCellXf</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodaddCellXf">PHPExcel::addCellXf()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a cellXf to the workbook</dd> + <dt><b>addExternalSheet</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodaddExternalSheet">PHPExcel::addExternalSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add external sheet</dd> + <dt><b>addFromSource</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodaddFromSource">PHPExcel_HashTable::addFromSource()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add HashTable items from source</dd> + <dt><b>addNamedRange</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodaddNamedRange">PHPExcel::addNamedRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add named range</dd> + <dt><b>addSearchLocation</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodaddSearchLocation">PHPExcel_IOFactory::addSearchLocation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add search location</dd> + <dt><b>addSheet</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodaddSheet">PHPExcel::addSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add sheet</dd> + <dt><b>Autoloader.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Autoloader.php.html">Autoloader.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>checkArrays</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodcheckArrays">TestMatrix::checkArrays()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check norm of difference of &quot;arrays&quot;.</dd> + <dt><b>checkMatrices</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodcheckMatrices">TestMatrix::checkMatrices()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check norm of difference of &quot;matrices&quot;.</dd> + <dt><b>checkScalars</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodcheckScalars">TestMatrix::checkScalars()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check magnitude of difference of &quot;scalars&quot;.</dd> + <dt><b>checkVectors</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodcheckVectors">TestMatrix::checkVectors()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check norm of difference of &quot;vectors&quot;.</dd> + <dt><b>chiSquared</b></dt> + <dd>in file LevenbergMarquardt.php, method <a href="PHPExcel/LevenbergMarquardt.html#methodchiSquared">LevenbergMarquardt::chiSquared()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate the current sum-squared-error</dd> + <dt><b>clear</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodclear">PHPExcel_HashTable::clear()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear HashTable</dd> + <dt><b>convertProperty</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodconvertProperty">PHPExcel_DocumentProperties::convertProperty()</a></dd> + <dt><b>convertPropertyType</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodconvertPropertyType">PHPExcel_DocumentProperties::convertPropertyType()</a></dd> + <dt><b>copy</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodcopy">PHPExcel::copy()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Copy workbook (!= clone!)</dd> + <dt><b>count</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodcount">PHPExcel_HashTable::count()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Count</dd> + <dt><b>create</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodcreate">PclZip::create()</a></dd> + <dt><b>createReader</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodcreateReader">PHPExcel_IOFactory::createReader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create PHPExcel_Reader_IReader</dd> + <dt><b>createReaderForFile</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodcreateReaderForFile">PHPExcel_IOFactory::createReaderForFile()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create PHPExcel_Reader_IReader for file using automatic PHPExcel_Reader_IReader resolution</dd> + <dt><b>createSheet</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodcreateSheet">PHPExcel::createSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create sheet and add it to this workbook</dd> + <dt><b>createWriter</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodcreateWriter">PHPExcel_IOFactory::createWriter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create PHPExcel_Writer_IWriter</dd> + <dt><b>current</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#methodcurrent">PHPExcel_WorksheetIterator::current()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Current PHPExcel_Worksheet</dd> + <dt><b>Comment.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Comment.php.html">Comment.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>delete</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methoddelete">PclZip::delete()</a></dd> + <dt><b>deleteByIndex</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methoddeleteByIndex">PclZip::deleteByIndex()</a></dd> + <dt><b>disconnectWorksheets</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methoddisconnectWorksheets">PHPExcel::disconnectWorksheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Disconnect all worksheets from this PHPExcel workbook object,</dd> + <dt><b>duplicate</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodduplicate">PclZip::duplicate()</a></dd> + <dt><b>DocumentProperties.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---DocumentProperties.php.html">DocumentProperties.php</a></dd> + <dt><b>DocumentSecurity.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---DocumentSecurity.php.html">DocumentSecurity.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>$error_code</b></dt> + <dd>in file pclzip.lib.php, variable <a href="PHPExcel/PclZip.html#var$error_code">PclZip::$error_code</a></dd> + <dt><b>$error_string</b></dt> + <dd>in file pclzip.lib.php, variable <a href="PHPExcel/PclZip.html#var$error_string">PclZip::$error_string</a></dd> + <dt><b>errorCode</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methoderrorCode">PclZip::errorCode()</a></dd> + <dt><b>errorHandlerCallback</b></dt> + <dd>in file Exception.php, method <a href="PHPExcel/PHPExcel_Exception.html#methoderrorHandlerCallback">PHPExcel_Exception::errorHandlerCallback()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Error handler callback</dd> + <dt><b>errorInfo</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methoderrorInfo">PclZip::errorInfo()</a></dd> + <dt><b>errorName</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methoderrorName">PclZip::errorName()</a></dd> + <dt><b>extract</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodextract">PclZip::extract()</a></dd> + <dt><b>extractByIndex</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodextractByIndex">PclZip::extractByIndex()</a></dd> + <dt><b>Exception.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Exception.php.html">Exception.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>findPolynomialFactors</b></dt> + <dd>in file LagrangeInterpolation.php, method <a href="PHPExcel/LagrangeInterpolation.html#methodfindPolynomialFactors">LagrangeInterpolation::findPolynomialFactors()</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>garbageCollect</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgarbageCollect">PHPExcel::garbageCollect()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Eliminate all unneeded cellXf and afterwards update the xfIndex for all cells</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetActiveSheet">PHPExcel::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get active sheet</dd> + <dt><b>getActiveSheetIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetActiveSheetIndex">PHPExcel::getActiveSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get active sheet index</dd> + <dt><b>getAlignment</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetAlignment">PHPExcel_Comment::getAlignment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Alignment</dd> + <dt><b>getAllSheets</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetAllSheets">PHPExcel::getAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get all sheets</dd> + <dt><b>getAuthor</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetAuthor">PHPExcel_Comment::getAuthor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Author</dd> + <dt><b>getByHashCode</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodgetByHashCode">PHPExcel_HashTable::getByHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get by hashcode</dd> + <dt><b>getByIndex</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodgetByIndex">PHPExcel_HashTable::getByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get by index</dd> + <dt><b>getCategory</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCategory">PHPExcel_DocumentProperties::getCategory()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Category</dd> + <dt><b>getCellStyleXfByHashCode</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellStyleXfByHashCode">PHPExcel::getCellStyleXfByHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cellStyleXf by hash code</dd> + <dt><b>getCellStyleXfByIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellStyleXfByIndex">PHPExcel::getCellStyleXfByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cellStyleXf by index</dd> + <dt><b>getCellStyleXfCollection</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellStyleXfCollection">PHPExcel::getCellStyleXfCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the workbook collection of cellStyleXfs</dd> + <dt><b>getCellXfByHashCode</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellXfByHashCode">PHPExcel::getCellXfByHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cellXf by hash code</dd> + <dt><b>getCellXfByIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellXfByIndex">PHPExcel::getCellXfByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cellXf by index</dd> + <dt><b>getCellXfCollection</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellXfCollection">PHPExcel::getCellXfCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the workbook collection of cellXfs</dd> + <dt><b>getCellXfSupervisor</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetCellXfSupervisor">PHPExcel::getCellXfSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the cellXf supervisor</dd> + <dt><b>getCompany</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCompany">PHPExcel_DocumentProperties::getCompany()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Company</dd> + <dt><b>getCreated</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCreated">PHPExcel_DocumentProperties::getCreated()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Created</dd> + <dt><b>getCreator</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCreator">PHPExcel_DocumentProperties::getCreator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Creator</dd> + <dt><b>getCustomProperties</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCustomProperties">PHPExcel_DocumentProperties::getCustomProperties()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a List of Custom Property Names</dd> + <dt><b>getCustomPropertyType</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCustomPropertyType">PHPExcel_DocumentProperties::getCustomPropertyType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a Custom Property Type</dd> + <dt><b>getCustomPropertyValue</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetCustomPropertyValue">PHPExcel_DocumentProperties::getCustomPropertyValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a Custom Property Value</dd> + <dt><b>getDefaultStyle</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetDefaultStyle">PHPExcel::getDefaultStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get default style</dd> + <dt><b>getDescription</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetDescription">PHPExcel_DocumentProperties::getDescription()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Description</dd> + <dt><b>getFillColor</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetFillColor">PHPExcel_Comment::getFillColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get fill color</dd> + <dt><b>getHashCode</b></dt> + <dd>in file IComparable.php, method <a href="PHPExcel/PHPExcel_IComparable.html#methodgetHashCode">PHPExcel_IComparable::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetHashCode">PHPExcel_Comment::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHeight</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetHeight">PHPExcel_Comment::getHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get comment height (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>getIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetIndex">PHPExcel::getIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get index for sheet</dd> + <dt><b>getIndexForHashCode</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodgetIndexForHashCode">PHPExcel_HashTable::getIndexForHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get index for hash code</dd> + <dt><b>getInstance</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#methodgetInstance">PHPExcel_ReferenceHelper::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an instance of this class</dd> + <dt><b>getKeywords</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetKeywords">PHPExcel_DocumentProperties::getKeywords()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Keywords</dd> + <dt><b>getLastModifiedBy</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetLastModifiedBy">PHPExcel_DocumentProperties::getLastModifiedBy()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Last Modified By</dd> + <dt><b>getLocalOnly</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodgetLocalOnly">PHPExcel_NamedRange::getLocalOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get localOnly</dd> + <dt><b>getLockRevision</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodgetLockRevision">PHPExcel_DocumentSecurity::getLockRevision()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get LockRevision</dd> + <dt><b>getLockStructure</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodgetLockStructure">PHPExcel_DocumentSecurity::getLockStructure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get LockStructure</dd> + <dt><b>getLockWindows</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodgetLockWindows">PHPExcel_DocumentSecurity::getLockWindows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get LockWindows</dd> + <dt><b>getManager</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetManager">PHPExcel_DocumentProperties::getManager()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Manager</dd> + <dt><b>getMarginLeft</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetMarginLeft">PHPExcel_Comment::getMarginLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get left margin (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>getMarginTop</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetMarginTop">PHPExcel_Comment::getMarginTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get top margin (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>getModified</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetModified">PHPExcel_DocumentProperties::getModified()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Modified</dd> + <dt><b>getName</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodgetName">PHPExcel_NamedRange::getName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get name</dd> + <dt><b>getNamedRange</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetNamedRange">PHPExcel::getNamedRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get named range</dd> + <dt><b>getNamedRanges</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetNamedRanges">PHPExcel::getNamedRanges()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get named ranges</dd> + <dt><b>getProperties</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetProperties">PHPExcel::getProperties()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get properties</dd> + <dt><b>getRange</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodgetRange">PHPExcel_NamedRange::getRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get range</dd> + <dt><b>getRevisionsPassword</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodgetRevisionsPassword">PHPExcel_DocumentSecurity::getRevisionsPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get RevisionsPassword (hashed)</dd> + <dt><b>getScope</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodgetScope">PHPExcel_NamedRange::getScope()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get scope</dd> + <dt><b>getSearchLocations</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodgetSearchLocations">PHPExcel_IOFactory::getSearchLocations()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get search locations</dd> + <dt><b>getSecurity</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetSecurity">PHPExcel::getSecurity()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get security</dd> + <dt><b>getSheet</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetSheet">PHPExcel::getSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet by index</dd> + <dt><b>getSheetByName</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetSheetByName">PHPExcel::getSheetByName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet by name</dd> + <dt><b>getSheetCount</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetSheetCount">PHPExcel::getSheetCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet count</dd> + <dt><b>getSheetNames</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetSheetNames">PHPExcel::getSheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet names</dd> + <dt><b>getSubject</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetSubject">PHPExcel_DocumentProperties::getSubject()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Subject</dd> + <dt><b>getText</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetText">PHPExcel_Comment::getText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Rich text comment</dd> + <dt><b>getTitle</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodgetTitle">PHPExcel_DocumentProperties::getTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Title</dd> + <dt><b>getVisible</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetVisible">PHPExcel_Comment::getVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is the comment visible by default?</dd> + <dt><b>getWidth</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodgetWidth">PHPExcel_Comment::getWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get comment width (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>getWorkbookPassword</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodgetWorkbookPassword">PHPExcel_DocumentSecurity::getWorkbookPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get WorkbookPassword (hashed)</dd> + <dt><b>getWorksheet</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodgetWorksheet">PHPExcel_NamedRange::getWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get worksheet</dd> + <dt><b>getWorksheetIterator</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodgetWorksheetIterator">PHPExcel::getWorksheetIterator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get worksheet iterator</dd> + <dt><b>grad</b></dt> + <dd>in file LMQuadTest.php, method <a href="PHPExcel/LMQuadTest.html#methodgrad">LMQuadTest::grad()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;z = (p-o)'S'S(p-o) dz/dp = 2S'S(p-o)</dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="h"></a> + <div> + <h2>h</h2> + <dl> + <dt><b>HashTable.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---HashTable.php.html">HashTable.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>identify</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodidentify">PHPExcel_IOFactory::identify()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify file type using automatic PHPExcel_Reader_IReader resolution</dd> + <dt><b>initial</b></dt> + <dd>in file LMQuadTest.php, method <a href="PHPExcel/LMQuadTest.html#methodinitial">LMQuadTest::initial()</a></dd> + <dt><b>insertNewBefore</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#methodinsertNewBefore">PHPExcel_ReferenceHelper::insertNewBefore()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Insert a new column, updating all possible related data</dd> + <dt><b>isCustomPropertySet</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodisCustomPropertySet">PHPExcel_DocumentProperties::isCustomPropertySet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check if a Custom Property is defined</dd> + <dt><b>isSecurityEnabled</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodisSecurityEnabled">PHPExcel_DocumentSecurity::isSecurityEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is some sort of dcument security enabled?</dd> + <dt><b>IComparable.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---IComparable.php.html">IComparable.php</a></dd> + <dt><b>IOFactory.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---IOFactory.php.html">IOFactory.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="k"></a> + <div> + <h2>k</h2> + <dl> + <dt><b>key</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#methodkey">PHPExcel_WorksheetIterator::key()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Current key</dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="l"></a> + <div> + <h2>l</h2> + <dl> + <dt><b>LagrangeInterpolation</b></dt> + <dd>in file LagrangeInterpolation.php, class <a href="PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Given n points (x0,y0)...(xn-1,yn-1), the following methid computes the polynomial factors of the n-1't degree polynomial passing through the n points.</dd> + <dt><b>LevenbergMarquardt</b></dt> + <dd>in file LevenbergMarquardt.php, class <a href="PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a></dd> + <dt><b>listContent</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodlistContent">PclZip::listContent()</a></dd> + <dt><b>LMQuadTest</b></dt> + <dd>in file LMQuadTest.php, class <a href="PHPExcel/LMQuadTest.html">LMQuadTest</a><br>&nbsp;&nbsp;&nbsp;&nbsp;quadratic (p-o)'S'S(p-o)</dd> + <dt><b>Load</b></dt> + <dd>in file Autoloader.php, method <a href="PHPExcel/PHPExcel_Autoloader.html#methodLoad">PHPExcel_Autoloader::Load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Autoload a class identified by name</dd> + <dt><b>load</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodload">PHPExcel_IOFactory::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file using automatic PHPExcel_Reader_IReader resolution</dd> + <dt><b>LagrangeInterpolation.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html">LagrangeInterpolation.php</a></dd> + <dt><b>LagrangeInterpolation2.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html">LagrangeInterpolation2.php</a></dd> + <dt><b>LevenbergMarquardt.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html">LevenbergMarquardt.php</a></dd> + <dt><b>LMQuadTest.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html">LMQuadTest.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="m"></a> + <div> + <h2>m</h2> + <dl> + <dt><b>$magic_quotes_status</b></dt> + <dd>in file pclzip.lib.php, variable <a href="PHPExcel/PclZip.html#var$magic_quotes_status">PclZip::$magic_quotes_status</a></dd> + <dt><b>merge</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodmerge">PclZip::merge()</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="n"></a> + <div> + <h2>n</h2> + <dl> + <dt><b>next</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#methodnext">PHPExcel_WorksheetIterator::next()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Next value</dd> + <dt><b>NamedRange.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---NamedRange.php.html">NamedRange.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PclZip</b></dt> + <dd>in file pclzip.lib.php, class <a href="PHPExcel/PclZip.html">PclZip</a></dd> + <dt><b>PclZip</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodPclZip">PclZip::PclZip()</a></dd> + <dt><b>PclZipUtilCopyBlock</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilCopyBlock">PclZipUtilCopyBlock()</a></dd> + <dt><b>PclZipUtilOptionText</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilOptionText">PclZipUtilOptionText()</a></dd> + <dt><b>PclZipUtilPathInclusion</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathInclusion">PclZipUtilPathInclusion()</a></dd> + <dt><b>PclZipUtilPathReduction</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilPathReduction">PclZipUtilPathReduction()</a></dd> + <dt><b>PclZipUtilRename</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilRename">PclZipUtilRename()</a></dd> + <dt><b>PclZipUtilTranslateWinPath</b></dt> + <dd>in file pclzip.lib.php, function <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#functionPclZipUtilTranslateWinPath">PclZipUtilTranslateWinPath()</a></dd> + <dt><b>PCLZIP_ATT_FILE_COMMENT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_COMMENT">PCLZIP_ATT_FILE_COMMENT</a></dd> + <dt><b>PCLZIP_ATT_FILE_CONTENT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_CONTENT">PCLZIP_ATT_FILE_CONTENT</a></dd> + <dt><b>PCLZIP_ATT_FILE_MTIME</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_MTIME">PCLZIP_ATT_FILE_MTIME</a></dd> + <dt><b>PCLZIP_ATT_FILE_NAME</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NAME">PCLZIP_ATT_FILE_NAME</a></dd> + <dt><b>PCLZIP_ATT_FILE_NEW_FULL_NAME</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NEW_FULL_NAME">PCLZIP_ATT_FILE_NEW_FULL_NAME</a></dd> + <dt><b>PCLZIP_ATT_FILE_NEW_SHORT_NAME</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ATT_FILE_NEW_SHORT_NAME">PCLZIP_ATT_FILE_NEW_SHORT_NAME</a></dd> + <dt><b>PCLZIP_CB_POST_ADD</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_ADD">PCLZIP_CB_POST_ADD</a></dd> + <dt><b>PCLZIP_CB_POST_EXTRACT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_POST_EXTRACT">PCLZIP_CB_POST_EXTRACT</a></dd> + <dt><b>PCLZIP_CB_PRE_ADD</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_ADD">PCLZIP_CB_PRE_ADD</a></dd> + <dt><b>PCLZIP_CB_PRE_EXTRACT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_CB_PRE_EXTRACT">PCLZIP_CB_PRE_EXTRACT</a></dd> + <dt><b>PCLZIP_ERROR_EXTERNAL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERROR_EXTERNAL">PCLZIP_ERROR_EXTERNAL</a></dd> + <dt><b>PCLZIP_ERR_ALREADY_A_DIRECTORY</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_ALREADY_A_DIRECTORY">PCLZIP_ERR_ALREADY_A_DIRECTORY</a></dd> + <dt><b>PCLZIP_ERR_BAD_CHECKSUM</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_CHECKSUM">PCLZIP_ERR_BAD_CHECKSUM</a></dd> + <dt><b>PCLZIP_ERR_BAD_EXTENSION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_EXTENSION">PCLZIP_ERR_BAD_EXTENSION</a></dd> + <dt><b>PCLZIP_ERR_BAD_EXTRACTED_FILE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_EXTRACTED_FILE">PCLZIP_ERR_BAD_EXTRACTED_FILE</a></dd> + <dt><b>PCLZIP_ERR_BAD_FORMAT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_BAD_FORMAT">PCLZIP_ERR_BAD_FORMAT</a></dd> + <dt><b>PCLZIP_ERR_DELETE_FILE_FAIL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_DELETE_FILE_FAIL">PCLZIP_ERR_DELETE_FILE_FAIL</a></dd> + <dt><b>PCLZIP_ERR_DIRECTORY_RESTRICTION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_DIRECTORY_RESTRICTION">PCLZIP_ERR_DIRECTORY_RESTRICTION</a></dd> + <dt><b>PCLZIP_ERR_DIR_CREATE_FAIL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_DIR_CREATE_FAIL">PCLZIP_ERR_DIR_CREATE_FAIL</a></dd> + <dt><b>PCLZIP_ERR_FILENAME_TOO_LONG</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_FILENAME_TOO_LONG">PCLZIP_ERR_FILENAME_TOO_LONG</a></dd> + <dt><b>PCLZIP_ERR_INVALID_ARCHIVE_ZIP</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ARCHIVE_ZIP">PCLZIP_ERR_INVALID_ARCHIVE_ZIP</a></dd> + <dt><b>PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ATTRIBUTE_VALUE">PCLZIP_ERR_INVALID_ATTRIBUTE_VALUE</a></dd> + <dt><b>PCLZIP_ERR_INVALID_OPTION_VALUE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_OPTION_VALUE">PCLZIP_ERR_INVALID_OPTION_VALUE</a></dd> + <dt><b>PCLZIP_ERR_INVALID_PARAMETER</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_PARAMETER">PCLZIP_ERR_INVALID_PARAMETER</a></dd> + <dt><b>PCLZIP_ERR_INVALID_ZIP</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_INVALID_ZIP">PCLZIP_ERR_INVALID_ZIP</a></dd> + <dt><b>PCLZIP_ERR_MISSING_FILE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_FILE">PCLZIP_ERR_MISSING_FILE</a></dd> + <dt><b>PCLZIP_ERR_MISSING_OPTION_VALUE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_MISSING_OPTION_VALUE">PCLZIP_ERR_MISSING_OPTION_VALUE</a></dd> + <dt><b>PCLZIP_ERR_NO_ERROR</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_NO_ERROR">PCLZIP_ERR_NO_ERROR</a></dd> + <dt><b>PCLZIP_ERR_READ_OPEN_FAIL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_READ_OPEN_FAIL">PCLZIP_ERR_READ_OPEN_FAIL</a></dd> + <dt><b>PCLZIP_ERR_RENAME_FILE_FAIL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_RENAME_FILE_FAIL">PCLZIP_ERR_RENAME_FILE_FAIL</a></dd> + <dt><b>PCLZIP_ERR_UNSUPPORTED_COMPRESSION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_UNSUPPORTED_COMPRESSION">PCLZIP_ERR_UNSUPPORTED_COMPRESSION</a></dd> + <dt><b>PCLZIP_ERR_UNSUPPORTED_ENCRYPTION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_UNSUPPORTED_ENCRYPTION">PCLZIP_ERR_UNSUPPORTED_ENCRYPTION</a></dd> + <dt><b>PCLZIP_ERR_USER_ABORTED</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_USER_ABORTED">PCLZIP_ERR_USER_ABORTED</a></dd> + <dt><b>PCLZIP_ERR_WRITE_OPEN_FAIL</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_ERR_WRITE_OPEN_FAIL">PCLZIP_ERR_WRITE_OPEN_FAIL</a></dd> + <dt><b>PCLZIP_OPT_ADD_COMMENT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_COMMENT">PCLZIP_OPT_ADD_COMMENT</a></dd> + <dt><b>PCLZIP_OPT_ADD_PATH</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_PATH">PCLZIP_OPT_ADD_PATH</a></dd> + <dt><b>PCLZIP_OPT_ADD_TEMP_FILE_OFF</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_TEMP_FILE_OFF">PCLZIP_OPT_ADD_TEMP_FILE_OFF</a></dd> + <dt><b>PCLZIP_OPT_ADD_TEMP_FILE_ON</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_TEMP_FILE_ON">PCLZIP_OPT_ADD_TEMP_FILE_ON</a></dd> + <dt><b>PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD">PCLZIP_OPT_ADD_TEMP_FILE_THRESHOLD</a></dd> + <dt><b>PCLZIP_OPT_BY_EREG</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_EREG">PCLZIP_OPT_BY_EREG</a></dd> + <dt><b>PCLZIP_OPT_BY_INDEX</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_INDEX">PCLZIP_OPT_BY_INDEX</a></dd> + <dt><b>PCLZIP_OPT_BY_NAME</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_NAME">PCLZIP_OPT_BY_NAME</a></dd> + <dt><b>PCLZIP_OPT_BY_PREG</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_BY_PREG">PCLZIP_OPT_BY_PREG</a></dd> + <dt><b>PCLZIP_OPT_COMMENT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_COMMENT">PCLZIP_OPT_COMMENT</a></dd> + <dt><b>PCLZIP_OPT_EXTRACT_AS_STRING</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_AS_STRING">PCLZIP_OPT_EXTRACT_AS_STRING</a></dd> + <dt><b>PCLZIP_OPT_EXTRACT_DIR_RESTRICTION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_DIR_RESTRICTION">PCLZIP_OPT_EXTRACT_DIR_RESTRICTION</a></dd> + <dt><b>PCLZIP_OPT_EXTRACT_IN_OUTPUT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_EXTRACT_IN_OUTPUT">PCLZIP_OPT_EXTRACT_IN_OUTPUT</a></dd> + <dt><b>PCLZIP_OPT_NO_COMPRESSION</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_NO_COMPRESSION">PCLZIP_OPT_NO_COMPRESSION</a></dd> + <dt><b>PCLZIP_OPT_PATH</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PATH">PCLZIP_OPT_PATH</a></dd> + <dt><b>PCLZIP_OPT_PREPEND_COMMENT</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_PREPEND_COMMENT">PCLZIP_OPT_PREPEND_COMMENT</a></dd> + <dt><b>PCLZIP_OPT_REMOVE_ALL_PATH</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_ALL_PATH">PCLZIP_OPT_REMOVE_ALL_PATH</a></dd> + <dt><b>PCLZIP_OPT_REMOVE_PATH</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REMOVE_PATH">PCLZIP_OPT_REMOVE_PATH</a></dd> + <dt><b>PCLZIP_OPT_REPLACE_NEWER</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_REPLACE_NEWER">PCLZIP_OPT_REPLACE_NEWER</a></dd> + <dt><b>PCLZIP_OPT_SET_CHMOD</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_SET_CHMOD">PCLZIP_OPT_SET_CHMOD</a></dd> + <dt><b>PCLZIP_OPT_STOP_ON_ERROR</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_STOP_ON_ERROR">PCLZIP_OPT_STOP_ON_ERROR</a></dd> + <dt><b>PCLZIP_OPT_TEMP_FILE_OFF</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_OFF">PCLZIP_OPT_TEMP_FILE_OFF</a></dd> + <dt><b>PCLZIP_OPT_TEMP_FILE_ON</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_ON">PCLZIP_OPT_TEMP_FILE_ON</a></dd> + <dt><b>PCLZIP_OPT_TEMP_FILE_THRESHOLD</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_OPT_TEMP_FILE_THRESHOLD">PCLZIP_OPT_TEMP_FILE_THRESHOLD</a></dd> + <dt><b>PCLZIP_READ_BLOCK_SIZE</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_READ_BLOCK_SIZE">PCLZIP_READ_BLOCK_SIZE</a></dd> + <dt><b>PCLZIP_SEPARATOR</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_SEPARATOR">PCLZIP_SEPARATOR</a></dd> + <dt><b>PCLZIP_TEMPORARY_DIR</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_TEMPORARY_DIR">PCLZIP_TEMPORARY_DIR</a></dd> + <dt><b>PCLZIP_TEMPORARY_FILE_RATIO</b></dt> + <dd>in file pclzip.lib.php, constant <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html#definePCLZIP_TEMPORARY_FILE_RATIO">PCLZIP_TEMPORARY_FILE_RATIO</a></dd> + <dt><b>PHPExcel</b></dt> + <dd>in file PHPExcel.php, class <a href="PHPExcel/PHPExcel.html">PHPExcel</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel</dd> + <dt><b>polyfit.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html">polyfit.php</a></dd> + <dt><b>pclzip.lib.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html">pclzip.lib.php</a></dd> + <dt><b>PHPExcel.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel.php.html">PHPExcel.php</a></dd> + <dt><b>PHPExcel_Autoloader</b></dt> + <dd>in file Autoloader.php, class <a href="PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Autoloader</dd> + <dt><b>PHPExcel_Comment</b></dt> + <dd>in file Comment.php, class <a href="PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Comment</dd> + <dt><b>PHPExcel_DocumentProperties</b></dt> + <dd>in file DocumentProperties.php, class <a href="PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_DocumentProperties</dd> + <dt><b>PHPExcel_DocumentSecurity</b></dt> + <dd>in file DocumentSecurity.php, class <a href="PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_DocumentSecurity</dd> + <dt><b>PHPExcel_Exception</b></dt> + <dd>in file Exception.php, class <a href="PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Exception</dd> + <dt><b>PHPExcel_HashTable</b></dt> + <dd>in file HashTable.php, class <a href="PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_HashTable</dd> + <dt><b>PHPExcel_IComparable</b></dt> + <dd>in file IComparable.php, class <a href="PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_IComparable</dd> + <dt><b>PHPExcel_IOFactory</b></dt> + <dd>in file IOFactory.php, class <a href="PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_IOFactory</dd> + <dt><b>PHPExcel_NamedRange</b></dt> + <dd>in file NamedRange.php, class <a href="PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_NamedRange</dd> + <dt><b>PHPExcel_ReferenceHelper</b></dt> + <dd>in file ReferenceHelper.php, class <a href="PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_ReferenceHelper (Singleton)</dd> + <dt><b>PHPEXCEL_ROOT</b></dt> + <dd>in file PHPExcel.php, constant <a href="PHPExcel/_PHPExcel.php.html#definePHPEXCEL_ROOT">PHPEXCEL_ROOT</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel root directory</dd> + <dt><b>PHPExcel_WorksheetIterator</b></dt> + <dd>in file WorksheetIterator.php, class <a href="PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_WorksheetIterator</dd> + <dt><b>polyfit</b></dt> + <dd>in file polyfit.php, function <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionpolyfit">polyfit()</a></dd> + <dt><b>printpoly</b></dt> + <dd>in file polyfit.php, function <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html#functionprintpoly">printpoly()</a></dd> + <dt><b>privAdd</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivAdd">PclZip::privAdd()</a></dd> + <dt><b>privAddFile</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivAddFile">PclZip::privAddFile()</a></dd> + <dt><b>privAddFileList</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivAddFileList">PclZip::privAddFileList()</a></dd> + <dt><b>privAddFileUsingTempFile</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivAddFileUsingTempFile">PclZip::privAddFileUsingTempFile()</a></dd> + <dt><b>privAddList</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivAddList">PclZip::privAddList()</a></dd> + <dt><b>privCalculateStoredFilename</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivCalculateStoredFilename">PclZip::privCalculateStoredFilename()</a></dd> + <dt><b>privCheckFileHeaders</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivCheckFileHeaders">PclZip::privCheckFileHeaders()</a></dd> + <dt><b>privCheckFormat</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivCheckFormat">PclZip::privCheckFormat()</a></dd> + <dt><b>privCloseFd</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivCloseFd">PclZip::privCloseFd()</a></dd> + <dt><b>privConvertHeader2FileInfo</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivConvertHeader2FileInfo">PclZip::privConvertHeader2FileInfo()</a></dd> + <dt><b>privCreate</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivCreate">PclZip::privCreate()</a></dd> + <dt><b>privDeleteByRule</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivDeleteByRule">PclZip::privDeleteByRule()</a></dd> + <dt><b>privDirCheck</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivDirCheck">PclZip::privDirCheck()</a></dd> + <dt><b>privDisableMagicQuotes</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivDisableMagicQuotes">PclZip::privDisableMagicQuotes()</a></dd> + <dt><b>privDuplicate</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivDuplicate">PclZip::privDuplicate()</a></dd> + <dt><b>privErrorLog</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivErrorLog">PclZip::privErrorLog()</a></dd> + <dt><b>privErrorReset</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivErrorReset">PclZip::privErrorReset()</a></dd> + <dt><b>privExtractByRule</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivExtractByRule">PclZip::privExtractByRule()</a></dd> + <dt><b>privExtractFile</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivExtractFile">PclZip::privExtractFile()</a></dd> + <dt><b>privExtractFileAsString</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivExtractFileAsString">PclZip::privExtractFileAsString()</a></dd> + <dt><b>privExtractFileInOutput</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivExtractFileInOutput">PclZip::privExtractFileInOutput()</a></dd> + <dt><b>privExtractFileUsingTempFile</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivExtractFileUsingTempFile">PclZip::privExtractFileUsingTempFile()</a></dd> + <dt><b>privFileDescrExpand</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivFileDescrExpand">PclZip::privFileDescrExpand()</a></dd> + <dt><b>privFileDescrParseAtt</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivFileDescrParseAtt">PclZip::privFileDescrParseAtt()</a></dd> + <dt><b>privList</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivList">PclZip::privList()</a></dd> + <dt><b>privMerge</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivMerge">PclZip::privMerge()</a></dd> + <dt><b>privOpenFd</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivOpenFd">PclZip::privOpenFd()</a></dd> + <dt><b>privOptionDefaultThreshold</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivOptionDefaultThreshold">PclZip::privOptionDefaultThreshold()</a></dd> + <dt><b>privParseOptions</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivParseOptions">PclZip::privParseOptions()</a></dd> + <dt><b>privReadCentralFileHeader</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivReadCentralFileHeader">PclZip::privReadCentralFileHeader()</a></dd> + <dt><b>privReadEndCentralDir</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivReadEndCentralDir">PclZip::privReadEndCentralDir()</a></dd> + <dt><b>privReadFileHeader</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivReadFileHeader">PclZip::privReadFileHeader()</a></dd> + <dt><b>privSwapBackMagicQuotes</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivSwapBackMagicQuotes">PclZip::privSwapBackMagicQuotes()</a></dd> + <dt><b>privWriteCentralFileHeader</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivWriteCentralFileHeader">PclZip::privWriteCentralFileHeader()</a></dd> + <dt><b>privWriteCentralHeader</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivWriteCentralHeader">PclZip::privWriteCentralHeader()</a></dd> + <dt><b>privWriteFileHeader</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodprivWriteFileHeader">PclZip::privWriteFileHeader()</a></dd> + <dt><b>properties</b></dt> + <dd>in file pclzip.lib.php, method <a href="PHPExcel/PclZip.html#methodproperties">PclZip::properties()</a></dd> + <dt><b>PROPERTY_TYPE_BOOLEAN</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_BOOLEAN">PHPExcel_DocumentProperties::PROPERTY_TYPE_BOOLEAN</a><br>&nbsp;&nbsp;&nbsp;&nbsp;constants</dd> + <dt><b>PROPERTY_TYPE_DATE</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_DATE">PHPExcel_DocumentProperties::PROPERTY_TYPE_DATE</a></dd> + <dt><b>PROPERTY_TYPE_FLOAT</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_FLOAT">PHPExcel_DocumentProperties::PROPERTY_TYPE_FLOAT</a></dd> + <dt><b>PROPERTY_TYPE_INTEGER</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_INTEGER">PHPExcel_DocumentProperties::PROPERTY_TYPE_INTEGER</a></dd> + <dt><b>PROPERTY_TYPE_STRING</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_STRING">PHPExcel_DocumentProperties::PROPERTY_TYPE_STRING</a></dd> + <dt><b>PROPERTY_TYPE_UNKNOWN</b></dt> + <dd>in file DocumentProperties.php, class constant <a href="PHPExcel/PHPExcel_DocumentProperties.html#constPROPERTY_TYPE_UNKNOWN">PHPExcel_DocumentProperties::PROPERTY_TYPE_UNKNOWN</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>ReferenceHelper.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---ReferenceHelper.php.html">ReferenceHelper.php</a></dd> + <dt><b>REFHELPER_REGEXP_CELLRANGE</b></dt> + <dd>in file ReferenceHelper.php, class constant <a href="PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_CELLRANGE">PHPExcel_ReferenceHelper::REFHELPER_REGEXP_CELLRANGE</a></dd> + <dt><b>REFHELPER_REGEXP_CELLREF</b></dt> + <dd>in file ReferenceHelper.php, class constant <a href="PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_CELLREF">PHPExcel_ReferenceHelper::REFHELPER_REGEXP_CELLREF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Regular Expressions</dd> + <dt><b>REFHELPER_REGEXP_COLRANGE</b></dt> + <dd>in file ReferenceHelper.php, class constant <a href="PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_COLRANGE">PHPExcel_ReferenceHelper::REFHELPER_REGEXP_COLRANGE</a></dd> + <dt><b>REFHELPER_REGEXP_ROWRANGE</b></dt> + <dd>in file ReferenceHelper.php, class constant <a href="PHPExcel/PHPExcel_ReferenceHelper.html#constREFHELPER_REGEXP_ROWRANGE">PHPExcel_ReferenceHelper::REFHELPER_REGEXP_ROWRANGE</a></dd> + <dt><b>Register</b></dt> + <dd>in file Autoloader.php, method <a href="PHPExcel/PHPExcel_Autoloader.html#methodRegister">PHPExcel_Autoloader::Register()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Register the Autoloader with SPL</dd> + <dt><b>remove</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodremove">PHPExcel_HashTable::remove()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove HashTable item</dd> + <dt><b>removeCellStyleXfByIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodremoveCellStyleXfByIndex">PHPExcel::removeCellStyleXfByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove cellStyleXf by index</dd> + <dt><b>removeCellXfByIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodremoveCellXfByIndex">PHPExcel::removeCellXfByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove cellXf by index. It is ensured that all cells get their xf index updated.</dd> + <dt><b>removeNamedRange</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodremoveNamedRange">PHPExcel::removeNamedRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove named range</dd> + <dt><b>removeSheetByIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodremoveSheetByIndex">PHPExcel::removeSheetByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove sheet by index</dd> + <dt><b>resolveRange</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodresolveRange">PHPExcel_NamedRange::resolveRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Resolve a named range to a regular cell range</dd> + <dt><b>rewind</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#methodrewind">PHPExcel_WorksheetIterator::rewind()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Rewind iterator</dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>setActiveSheetIndex</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsetActiveSheetIndex">PHPExcel::setActiveSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set active sheet index</dd> + <dt><b>setActiveSheetIndexByName</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsetActiveSheetIndexByName">PHPExcel::setActiveSheetIndexByName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set active sheet index by name</dd> + <dt><b>setAlignment</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetAlignment">PHPExcel_Comment::setAlignment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Alignment</dd> + <dt><b>setAuthor</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetAuthor">PHPExcel_Comment::setAuthor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Author</dd> + <dt><b>setCategory</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetCategory">PHPExcel_DocumentProperties::setCategory()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Category</dd> + <dt><b>setCompany</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetCompany">PHPExcel_DocumentProperties::setCompany()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Company</dd> + <dt><b>setCreated</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetCreated">PHPExcel_DocumentProperties::setCreated()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Created</dd> + <dt><b>setCreator</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetCreator">PHPExcel_DocumentProperties::setCreator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Creator</dd> + <dt><b>setCustomProperty</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetCustomProperty">PHPExcel_DocumentProperties::setCustomProperty()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set a Custom Property</dd> + <dt><b>setDescription</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetDescription">PHPExcel_DocumentProperties::setDescription()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Description</dd> + <dt><b>setHeight</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetHeight">PHPExcel_Comment::setHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set comment height (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>setIndexByName</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsetIndexByName">PHPExcel::setIndexByName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set index for sheet by sheet name.</dd> + <dt><b>setKeywords</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetKeywords">PHPExcel_DocumentProperties::setKeywords()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Keywords</dd> + <dt><b>setLastModifiedBy</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetLastModifiedBy">PHPExcel_DocumentProperties::setLastModifiedBy()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Last Modified By</dd> + <dt><b>setLocalOnly</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodsetLocalOnly">PHPExcel_NamedRange::setLocalOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set localOnly</dd> + <dt><b>setLockRevision</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodsetLockRevision">PHPExcel_DocumentSecurity::setLockRevision()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set LockRevision</dd> + <dt><b>setLockStructure</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodsetLockStructure">PHPExcel_DocumentSecurity::setLockStructure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set LockStructure</dd> + <dt><b>setLockWindows</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodsetLockWindows">PHPExcel_DocumentSecurity::setLockWindows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set LockWindows</dd> + <dt><b>setManager</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetManager">PHPExcel_DocumentProperties::setManager()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Manager</dd> + <dt><b>setMarginLeft</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetMarginLeft">PHPExcel_Comment::setMarginLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set left margin (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>setMarginTop</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetMarginTop">PHPExcel_Comment::setMarginTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set top margin (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>setModified</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetModified">PHPExcel_DocumentProperties::setModified()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Modified</dd> + <dt><b>setName</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodsetName">PHPExcel_NamedRange::setName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set name</dd> + <dt><b>setProperties</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsetProperties">PHPExcel::setProperties()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set properties</dd> + <dt><b>setRange</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodsetRange">PHPExcel_NamedRange::setRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set range</dd> + <dt><b>setRevisionsPassword</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodsetRevisionsPassword">PHPExcel_DocumentSecurity::setRevisionsPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set RevisionsPassword</dd> + <dt><b>setScope</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodsetScope">PHPExcel_NamedRange::setScope()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set scope</dd> + <dt><b>setSearchLocations</b></dt> + <dd>in file IOFactory.php, method <a href="PHPExcel/PHPExcel_IOFactory.html#methodsetSearchLocations">PHPExcel_IOFactory::setSearchLocations()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set search locations</dd> + <dt><b>setSecurity</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsetSecurity">PHPExcel::setSecurity()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set security</dd> + <dt><b>setSubject</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetSubject">PHPExcel_DocumentProperties::setSubject()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Subject</dd> + <dt><b>setText</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetText">PHPExcel_Comment::setText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rich text comment</dd> + <dt><b>setTitle</b></dt> + <dd>in file DocumentProperties.php, method <a href="PHPExcel/PHPExcel_DocumentProperties.html#methodsetTitle">PHPExcel_DocumentProperties::setTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Title</dd> + <dt><b>setVisible</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetVisible">PHPExcel_Comment::setVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set comment default visibility</dd> + <dt><b>setWidth</b></dt> + <dd>in file Comment.php, method <a href="PHPExcel/PHPExcel_Comment.html#methodsetWidth">PHPExcel_Comment::setWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set comment width (CSS style, i.e. XXpx or YYpt)</dd> + <dt><b>setWorkbookPassword</b></dt> + <dd>in file DocumentSecurity.php, method <a href="PHPExcel/PHPExcel_DocumentSecurity.html#methodsetWorkbookPassword">PHPExcel_DocumentSecurity::setWorkbookPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set WorkbookPassword</dd> + <dt><b>setWorksheet</b></dt> + <dd>in file NamedRange.php, method <a href="PHPExcel/PHPExcel_NamedRange.html#methodsetWorksheet">PHPExcel_NamedRange::setWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set worksheet</dd> + <dt><b>sheetNameExists</b></dt> + <dd>in file PHPExcel.php, method <a href="PHPExcel/PHPExcel.html#methodsheetNameExists">PHPExcel::sheetNameExists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Chech if a sheet with a specified name already exists</dd> + <dt><b>solve</b></dt> + <dd>in file LevenbergMarquardt.php, method <a href="PHPExcel/LevenbergMarquardt.html#methodsolve">LevenbergMarquardt::solve()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Minimize E = sum {(y[k] - f(x[k],a)) / s[k]}^2 The individual errors are optionally scaled by s[k].</dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>tile.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html">tile.php</a></dd> + <dt><b>TestMatrix.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html">TestMatrix.php</a></dd> + <dt><b>testdata</b></dt> + <dd>in file LMQuadTest.php, method <a href="PHPExcel/LMQuadTest.html#methodtestdata">LMQuadTest::testdata()</a></dd> + <dt><b>TestMatrix</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodTestMatrix">TestMatrix::TestMatrix()</a></dd> + <dt><b>TestMatrix</b></dt> + <dd>in file TestMatrix.php, class <a href="PHPExcel/TestMatrix.html">TestMatrix</a></dd> + <dt><b>tile</b></dt> + <dd>in file tile.php, function <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html#functiontile">tile()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Tiling of matrix X in [rowWise by colWise] dimension. Tiling creates a larger matrix than the original data X. Example, if X is to be tiled in a [3 x 4] manner, then:</dd> + <dt><b>toArray</b></dt> + <dd>in file HashTable.php, method <a href="PHPExcel/PHPExcel_HashTable.html#methodtoArray">PHPExcel_HashTable::toArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HashTable to array</dd> + <dt><b>try_failure</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodtry_failure">TestMatrix::try_failure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Print appropriate messages for unsuccessful outcome try</dd> + <dt><b>try_success</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodtry_success">TestMatrix::try_success()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Print appropriate messages for successful outcome try</dd> + <dt><b>try_warning</b></dt> + <dd>in file TestMatrix.php, method <a href="PHPExcel/TestMatrix.html#methodtry_warning">TestMatrix::try_warning()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Print appropriate messages for unsuccessful outcome try</dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="u"></a> + <div> + <h2>u</h2> + <dl> + <dt><b>updateCellReference</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#methodupdateCellReference">PHPExcel_ReferenceHelper::updateCellReference()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Update cell reference</dd> + <dt><b>updateFormulaReferences</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#methodupdateFormulaReferences">PHPExcel_ReferenceHelper::updateFormulaReferences()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Update references within formulas</dd> + <dt><b>updateNamedFormulas</b></dt> + <dd>in file ReferenceHelper.php, method <a href="PHPExcel/PHPExcel_ReferenceHelper.html#methodupdateNamedFormulas">PHPExcel_ReferenceHelper::updateNamedFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Update named formulas (i.e. containing worksheet references / named ranges)</dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="v"></a> + <div> + <h2>v</h2> + <dl> + <dt><b>val</b></dt> + <dd>in file LMQuadTest.php, method <a href="PHPExcel/LMQuadTest.html#methodval">LMQuadTest::val()</a></dd> + <dt><b>valid</b></dt> + <dd>in file WorksheetIterator.php, method <a href="PHPExcel/PHPExcel_WorksheetIterator.html#methodvalid">PHPExcel_WorksheetIterator::valid()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;More PHPExcel_Worksheet instances available?</dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="w"></a> + <div> + <h2>w</h2> + <dl> + <dt><b>WorksheetIterator.php</b></dt> + <dd>procedural page <a href="PHPExcel/_PHPExcel---WorksheetIterator.php.html">WorksheetIterator.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <hr /> + <a name="z"></a> + <div> + <h2>z</h2> + <dl> + <dt><b>$zipname</b></dt> + <dd>in file pclzip.lib.php, variable <a href="PHPExcel/PclZip.html#var$zipname">PclZip::$zipname</a></dd> + <dt><b>$zip_fd</b></dt> + <dd>in file pclzip.lib.php, variable <a href="PHPExcel/PclZip.html#var$zip_fd">PclZip::$zip_fd</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_CachedObjectStorage.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_CachedObjectStorage.html new file mode 100644 index 0000000..d65bddd --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_CachedObjectStorage.html @@ -0,0 +1,525 @@ +<html> +<head> +<title>Package PHPExcel_CachedObjectStorage Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_CachedObjectStorage</h1> + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#f">f</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#m">m</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#u">u</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#w">w</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>$_cellCache</b></dt> + <dd>in file CacheBase.php, variable <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_cellCache">PHPExcel_CachedObjectStorage_CacheBase::$_cellCache</a><br>&nbsp;&nbsp;&nbsp;&nbsp;An array of cells or cell pointers for the worksheet cells held in this cache, and indexed by their coordinate address within the worksheet</dd> + <dt><b>$_currentCellIsDirty</b></dt> + <dd>in file CacheBase.php, variable <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentCellIsDirty">PHPExcel_CachedObjectStorage_CacheBase::$_currentCellIsDirty</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag indicating whether the currently active Cell requires saving</dd> + <dt><b>$_currentObject</b></dt> + <dd>in file CacheBase.php, variable <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObject">PHPExcel_CachedObjectStorage_CacheBase::$_currentObject</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The currently active Cell</dd> + <dt><b>$_currentObjectID</b></dt> + <dd>in file CacheBase.php, variable <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_currentObjectID">PHPExcel_CachedObjectStorage_CacheBase::$_currentObjectID</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Coordinate address of the currently active Cell</dd> + <dt><b>$_parent</b></dt> + <dd>in file CacheBase.php, variable <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#var$_parent">PHPExcel_CachedObjectStorage_CacheBase::$_parent</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parent worksheet</dd> + <dt><b>_getUniqueID</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method_getUniqueID">PHPExcel_CachedObjectStorage_CacheBase::_getUniqueID()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate a unique ID for cache referencing</dd> + <dt><b>__construct</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#method__construct">PHPExcel_CachedObjectStorage_Wincache::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#method__construct">PHPExcel_CachedObjectStorage_PHPTemp::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#method__construct">PHPExcel_CachedObjectStorage_SQLite::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#method__construct">PHPExcel_CachedObjectStorage_Memcache::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#method__construct">PHPExcel_CachedObjectStorage_CacheBase::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#method__construct">PHPExcel_CachedObjectStorage_APC::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#method__construct">PHPExcel_CachedObjectStorage_SQLite3::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__construct</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#method__construct">PHPExcel_CachedObjectStorage_DiscISAM::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise this new cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#method__destruct">PHPExcel_CachedObjectStorage_Wincache::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#method__destruct">PHPExcel_CachedObjectStorage_SQLite3::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#method__destruct">PHPExcel_CachedObjectStorage_DiscISAM::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#method__destruct">PHPExcel_CachedObjectStorage_APC::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#method__destruct">PHPExcel_CachedObjectStorage_Memcache::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#method__destruct">PHPExcel_CachedObjectStorage_PHPTemp::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + <dt><b>__destruct</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#method__destruct">PHPExcel_CachedObjectStorage_SQLite::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destroy this cell collection</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>addCacheData</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodaddCacheData">PHPExcel_CachedObjectStorage_PHPTemp::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file MemorySerialized.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html#methodaddCacheData">PHPExcel_CachedObjectStorage_MemorySerialized::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodaddCacheData">PHPExcel_CachedObjectStorage_SQLite::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodaddCacheData">PHPExcel_CachedObjectStorage_SQLite3::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_Wincache::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file MemoryGZip.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html#methodaddCacheData">PHPExcel_CachedObjectStorage_MemoryGZip::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file Memory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodaddCacheData">PHPExcel_CachedObjectStorage_Memory::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodaddCacheData">PHPExcel_CachedObjectStorage_DiscISAM::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodaddCacheData">PHPExcel_CachedObjectStorage_APC::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_ICache::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file Igbinary.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodaddCacheData">PHPExcel_CachedObjectStorage_Igbinary::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>addCacheData</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodaddCacheData">PHPExcel_CachedObjectStorage_Memcache::addCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache identified by coordinate address</dd> + <dt><b>APC.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html">APC.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_Memcache::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_ICache::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file Igbinary.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_Igbinary::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_APC::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_SQLite::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_CacheBase::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_Wincache::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cacheMethodIsAvailable</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodcacheMethodIsAvailable">PHPExcel_CachedObjectStorage_SQLite3::cacheMethodIsAvailable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether the caching method is currently available Some methods are dependent on the availability of certain extensions being enabled in the PHP build</dd> + <dt><b>cache_igbinary</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_igbinary">PHPExcel_CachedObjectStorageFactory::cache_igbinary</a></dd> + <dt><b>cache_in_memory</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_in_memory">PHPExcel_CachedObjectStorageFactory::cache_in_memory</a></dd> + <dt><b>cache_in_memory_gzip</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_in_memory_gzip">PHPExcel_CachedObjectStorageFactory::cache_in_memory_gzip</a></dd> + <dt><b>cache_in_memory_serialized</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_in_memory_serialized">PHPExcel_CachedObjectStorageFactory::cache_in_memory_serialized</a></dd> + <dt><b>cache_to_apc</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_apc">PHPExcel_CachedObjectStorageFactory::cache_to_apc</a></dd> + <dt><b>cache_to_discISAM</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_discISAM">PHPExcel_CachedObjectStorageFactory::cache_to_discISAM</a></dd> + <dt><b>cache_to_memcache</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_memcache">PHPExcel_CachedObjectStorageFactory::cache_to_memcache</a></dd> + <dt><b>cache_to_phpTemp</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_phpTemp">PHPExcel_CachedObjectStorageFactory::cache_to_phpTemp</a></dd> + <dt><b>cache_to_sqlite</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_sqlite">PHPExcel_CachedObjectStorageFactory::cache_to_sqlite</a></dd> + <dt><b>cache_to_sqlite3</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_sqlite3">PHPExcel_CachedObjectStorageFactory::cache_to_sqlite3</a></dd> + <dt><b>cache_to_wincache</b></dt> + <dd>in file CachedObjectStorageFactory.php, class constant <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#constcache_to_wincache">PHPExcel_CachedObjectStorageFactory::cache_to_wincache</a></dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_SQLite::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_SQLite3::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_APC::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_CacheBase::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_Wincache::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_PHPTemp::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_Memcache::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_DiscISAM::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file Memory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_Memory::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>copyCellCollection</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodcopyCellCollection">PHPExcel_CachedObjectStorage_ICache::copyCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clone the cell collection</dd> + <dt><b>CacheBase.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html">CacheBase.php</a></dd> + <dt><b>CachedObjectStorageFactory.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html">CachedObjectStorageFactory.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>deleteCacheData</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_SQLite::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_SQLite3::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_Wincache::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_Memcache::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_ICache::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_APC::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>deleteCacheData</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methoddeleteCacheData">PHPExcel_CachedObjectStorage_CacheBase::deleteCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a cell in cache identified by coordinate address</dd> + <dt><b>DiscISAM.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html">DiscISAM.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>failureCallback</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodfailureCallback">PHPExcel_CachedObjectStorage_Memcache::failureCallback()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Memcache error handler</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getAllCacheStorageMethods</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetAllCacheStorageMethods">PHPExcel_CachedObjectStorageFactory::getAllCacheStorageMethods()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the list of all possible cache storage methods</dd> + <dt><b>getCacheData</b></dt> + <dd>in file MemoryGZip.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html#methodgetCacheData">PHPExcel_CachedObjectStorage_MemoryGZip::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file Memory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodgetCacheData">PHPExcel_CachedObjectStorage_Memory::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_Memcache::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file Igbinary.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodgetCacheData">PHPExcel_CachedObjectStorage_Igbinary::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file MemorySerialized.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html#methodgetCacheData">PHPExcel_CachedObjectStorage_MemorySerialized::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_Wincache::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodgetCacheData">PHPExcel_CachedObjectStorage_SQLite3::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodgetCacheData">PHPExcel_CachedObjectStorage_SQLite::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodgetCacheData">PHPExcel_CachedObjectStorage_PHPTemp::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodgetCacheData">PHPExcel_CachedObjectStorage_APC::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheData</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCacheData">PHPExcel_CachedObjectStorage_ICache::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fetch a cell from cache identified by coordinate address</dd> + <dt><b>getCacheData</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodgetCacheData">PHPExcel_CachedObjectStorage_DiscISAM::getCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCacheStorageClass</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetCacheStorageClass">PHPExcel_CachedObjectStorageFactory::getCacheStorageClass()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current cache storage class</dd> + <dt><b>getCacheStorageMethod</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetCacheStorageMethod">PHPExcel_CachedObjectStorageFactory::getCacheStorageMethod()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current cache storage method</dd> + <dt><b>getCacheStorageMethods</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetCacheStorageMethods">PHPExcel_CachedObjectStorageFactory::getCacheStorageMethods()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the list of all available cache storage methods</dd> + <dt><b>getCellList</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodgetCellList">PHPExcel_CachedObjectStorage_SQLite::getCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all cell addresses currently held in cache</dd> + <dt><b>getCellList</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetCellList">PHPExcel_CachedObjectStorage_CacheBase::getCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all cell addresses currently held in cache</dd> + <dt><b>getCellList</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetCellList">PHPExcel_CachedObjectStorage_ICache::getCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all cell addresses currently held in cache</dd> + <dt><b>getCellList</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodgetCellList">PHPExcel_CachedObjectStorage_SQLite3::getCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all cell addresses currently held in cache</dd> + <dt><b>getHighestColumn</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet column</dd> + <dt><b>getHighestRow</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRow">PHPExcel_CachedObjectStorage_CacheBase::getHighestRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet row</dd> + <dt><b>getHighestRowAndColumn</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetHighestRowAndColumn">PHPExcel_CachedObjectStorage_CacheBase::getHighestRowAndColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet column and highest row that have cell records</dd> + <dt><b>getInstance</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodgetInstance">PHPExcel_CachedObjectStorageFactory::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialise the cache storage</dd> + <dt><b>getSortedCellList</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_CacheBase::getSortedCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sort the list of all cell addresses currently held in cache by row and column</dd> + <dt><b>getSortedCellList</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodgetSortedCellList">PHPExcel_CachedObjectStorage_ICache::getSortedCellList()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the list of all cell addresses currently held in cache sorted by column and row</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>initialize</b></dt> + <dd>in file CachedObjectStorageFactory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html#methodinitialize">PHPExcel_CachedObjectStorageFactory::initialize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify the cache storage method to use</dd> + <dt><b>isDataSet</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodisDataSet">PHPExcel_CachedObjectStorage_SQLite::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodisDataSet">PHPExcel_CachedObjectStorage_SQLite3::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodisDataSet">PHPExcel_CachedObjectStorage_Memcache::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodisDataSet">PHPExcel_CachedObjectStorage_Wincache::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodisDataSet">PHPExcel_CachedObjectStorage_ICache::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodisDataSet">PHPExcel_CachedObjectStorage_CacheBase::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + <dt><b>isDataSet</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodisDataSet">PHPExcel_CachedObjectStorage_APC::isDataSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a value set in the current PHPExcel_CachedObjectStorage_ICache for an indexed cell?</dd> + <dt><b>ICache.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html">ICache.php</a></dd> + <dt><b>Igbinary.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html">Igbinary.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <hr /> + <a name="m"></a> + <div> + <h2>m</h2> + <dl> + <dt><b>Memcache.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html">Memcache.php</a></dd> + <dt><b>Memory.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html">Memory.php</a></dd> + <dt><b>MemoryGZip.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html">MemoryGZip.php</a></dd> + <dt><b>MemorySerialized.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html">MemorySerialized.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PHPTemp.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html">PHPTemp.php</a></dd> + <dt><b>PHPExcel_CachedObjectStorageFactory</b></dt> + <dd>in file CachedObjectStorageFactory.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorageFactory</dd> + <dt><b>PHPExcel_CachedObjectStorage_APC</b></dt> + <dd>in file APC.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_APC</dd> + <dt><b>PHPExcel_CachedObjectStorage_CacheBase</b></dt> + <dd>in file CacheBase.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_CacheBase</dd> + <dt><b>PHPExcel_CachedObjectStorage_DiscISAM</b></dt> + <dd>in file DiscISAM.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_DiscISAM</dd> + <dt><b>PHPExcel_CachedObjectStorage_ICache</b></dt> + <dd>in file ICache.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_ICache</dd> + <dt><b>PHPExcel_CachedObjectStorage_Igbinary</b></dt> + <dd>in file Igbinary.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_Igbinary</dd> + <dt><b>PHPExcel_CachedObjectStorage_Memcache</b></dt> + <dd>in file Memcache.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_Memcache</dd> + <dt><b>PHPExcel_CachedObjectStorage_Memory</b></dt> + <dd>in file Memory.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_Memory</dd> + <dt><b>PHPExcel_CachedObjectStorage_MemoryGZip</b></dt> + <dd>in file MemoryGZip.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_MemoryGZip</dd> + <dt><b>PHPExcel_CachedObjectStorage_MemorySerialized</b></dt> + <dd>in file MemorySerialized.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_MemorySerialized</dd> + <dt><b>PHPExcel_CachedObjectStorage_PHPTemp</b></dt> + <dd>in file PHPTemp.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_PHPTemp</dd> + <dt><b>PHPExcel_CachedObjectStorage_SQLite</b></dt> + <dd>in file SQLite.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_SQLite</dd> + <dt><b>PHPExcel_CachedObjectStorage_SQLite3</b></dt> + <dd>in file SQLite3.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_SQLite3</dd> + <dt><b>PHPExcel_CachedObjectStorage_Wincache</b></dt> + <dd>in file Wincache.php, class <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_CachedObjectStorage_Wincache</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>SQLite.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html">SQLite.php</a></dd> + <dt><b>SQLite3.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html">SQLite3.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <hr /> + <a name="u"></a> + <div> + <h2>u</h2> + <dl> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file PHPTemp.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_PHPTemp::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file MemorySerialized.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_MemorySerialized::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file SQLite.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_SQLite::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file SQLite3.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_SQLite3::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file Wincache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_Wincache::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file MemoryGZip.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_MemoryGZip::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file Memory.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_Memory::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file DiscISAM.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_DiscISAM::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file APC.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_APC::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file Igbinary.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_Igbinary::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>unsetWorksheetCells</b></dt> + <dd>in file Memcache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html#methodunsetWorksheetCells">PHPExcel_CachedObjectStorage_Memcache::unsetWorksheetCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear the cell collection and disconnect from our parent</dd> + <dt><b>updateCacheData</b></dt> + <dd>in file CacheBase.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_CacheBase::updateCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache</dd> + <dt><b>updateCacheData</b></dt> + <dd>in file ICache.php, method <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html#methodupdateCacheData">PHPExcel_CachedObjectStorage_ICache::updateCacheData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add or Update a cell in cache</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <hr /> + <a name="w"></a> + <div> + <h2>w</h2> + <dl> + <dt><b>Wincache.php</b></dt> + <dd>procedural page <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html">Wincache.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_CachedObjectStorage.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Calculation.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Calculation.html new file mode 100644 index 0000000..65b1af6 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Calculation.html @@ -0,0 +1,1367 @@ +<html> +<head> +<title>Package PHPExcel_Calculation Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Calculation</h1> + [ <a href="elementindex_PHPExcel_Calculation.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#b">b</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#e">e</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#f">f</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#h">h</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#k">k</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#l">l</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#m">m</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#n">n</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#o">o</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#q">q</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#u">u</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#v">v</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#w">w</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#x">x</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#y">y</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#z">z</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>$_errorCodes</b></dt> + <dd>in file Functions.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#var$_errorCodes">PHPExcel_Calculation_Functions::$_errorCodes</a><br>&nbsp;&nbsp;&nbsp;&nbsp;List of error codes</dd> + <dt><b>$_localeBoolean</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$_localeBoolean">PHPExcel_Calculation::$_localeBoolean</a></dd> + <dt><b>_calculateFormulaValue</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_calculateFormulaValue">PHPExcel_Calculation::_calculateFormulaValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parse a cell formula and calculate its value</dd> + <dt><b>_erfVal</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#method_erfVal">PHPExcel_Calculation_Engineering::_erfVal()</a></dd> + <dt><b>_getDateValue</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#method_getDateValue">PHPExcel_Calculation_DateTime::_getDateValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;_getDateValue</dd> + <dt><b>_getMatrixDimensions</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_getMatrixDimensions">PHPExcel_Calculation::_getMatrixDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read the dimensions of a matrix, and re-index it with straight numeric keys starting from row 0, column 0</dd> + <dt><b>_ifCondition</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#method_ifCondition">PHPExcel_Calculation_Functions::_ifCondition()</a></dd> + <dt><b>_isLeapYear</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#method_isLeapYear">PHPExcel_Calculation_DateTime::_isLeapYear()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify if a year is a leap year or not</dd> + <dt><b>_localeFunc</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_localeFunc">PHPExcel_Calculation::_localeFunc()</a></dd> + <dt><b>_parseComplex</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#method_parseComplex">PHPExcel_Calculation_Engineering::_parseComplex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;_parseComplex</dd> + <dt><b>_raiseFormulaError</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_raiseFormulaError">PHPExcel_Calculation::_raiseFormulaError()</a></dd> + <dt><b>_translateFormulaToEnglish</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_translateFormulaToEnglish">PHPExcel_Calculation::_translateFormulaToEnglish()</a></dd> + <dt><b>_translateFormulaToLocale</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_translateFormulaToLocale">PHPExcel_Calculation::_translateFormulaToLocale()</a></dd> + <dt><b>_translateSeparator</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_translateSeparator">PHPExcel_Calculation::_translateSeparator()</a></dd> + <dt><b>_unwrapResult</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_unwrapResult">PHPExcel_Calculation::_unwrapResult()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove quotes used as a wrapper to identify string values</dd> + <dt><b>_wrapResult</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method_wrapResult">PHPExcel_Calculation::_wrapResult()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Wrap string values in quotes</dd> + <dt><b>__clone</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method__clone">PHPExcel_Calculation::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;__clone implementation. Cloning should not be allowed in a Singleton!</dd> + <dt><b>__construct</b></dt> + <dd>in file Stack.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#method__construct">PHPExcel_Calculation_Token_Stack::__construct()</a></dd> + <dt><b>__construct</b></dt> + <dd>in file ExceptionHandler.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html#method__construct">PHPExcel_Calculation_ExceptionHandler::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Register errorhandler</dd> + <dt><b>__construct</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#method__construct">PHPExcel_Calculation_Function::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Calculation_Function</dd> + <dt><b>__construct</b></dt> + <dd>in file FormulaParser.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#method__construct">PHPExcel_Calculation_FormulaParser::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Calculation_FormulaParser</dd> + <dt><b>__construct</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#method__construct">PHPExcel_Calculation_FormulaToken::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Calculation_FormulaToken</dd> + <dt><b>__destruct</b></dt> + <dd>in file ExceptionHandler.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html#method__destruct">PHPExcel_Calculation_ExceptionHandler::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Unregister errorhandler</dd> + <dt><b>__destruct</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#method__destruct">PHPExcel_Calculation::__destruct()</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>ACCRINT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodACCRINT">PHPExcel_Calculation_Financial::ACCRINT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ACCRINT</dd> + <dt><b>ACCRINTM</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodACCRINTM">PHPExcel_Calculation_Financial::ACCRINTM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ACCRINTM</dd> + <dt><b>acosh</b></dt> + <dd>in file Functions.php, function <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#functionacosh">acosh()</a></dd> + <dt><b>AMORDEGRC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodAMORDEGRC">PHPExcel_Calculation_Financial::AMORDEGRC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AMORDEGRC</dd> + <dt><b>AMORLINC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodAMORLINC">PHPExcel_Calculation_Financial::AMORLINC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AMORLINC</dd> + <dt><b>ASCIICODE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodASCIICODE">PHPExcel_Calculation_TextData::ASCIICODE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ASCIICODE</dd> + <dt><b>asinh</b></dt> + <dd>in file Functions.php, function <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#functionasinh">asinh()</a></dd> + <dt><b>ATAN2</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodATAN2">PHPExcel_Calculation_MathTrig::ATAN2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ATAN2</dd> + <dt><b>atanh</b></dt> + <dd>in file Functions.php, function <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#functionatanh">atanh()</a></dd> + <dt><b>AVEDEV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVEDEV">PHPExcel_Calculation_Statistical::AVEDEV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AVEDEV</dd> + <dt><b>AVERAGE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVERAGE">PHPExcel_Calculation_Statistical::AVERAGE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AVERAGE</dd> + <dt><b>AVERAGEA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVERAGEA">PHPExcel_Calculation_Statistical::AVERAGEA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AVERAGEA</dd> + <dt><b>AVERAGEIF</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodAVERAGEIF">PHPExcel_Calculation_Statistical::AVERAGEIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;AVERAGEIF</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>BESSELI</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELI">PHPExcel_Calculation_Engineering::BESSELI()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BESSELI</dd> + <dt><b>BESSELJ</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELJ">PHPExcel_Calculation_Engineering::BESSELJ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BESSELJ</dd> + <dt><b>BESSELK</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELK">PHPExcel_Calculation_Engineering::BESSELK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BESSELK</dd> + <dt><b>BESSELY</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBESSELY">PHPExcel_Calculation_Engineering::BESSELY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BESSELY</dd> + <dt><b>BETADIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodBETADIST">PHPExcel_Calculation_Statistical::BETADIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BETADIST</dd> + <dt><b>BETAINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodBETAINV">PHPExcel_Calculation_Statistical::BETAINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BETAINV</dd> + <dt><b>BINOMDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodBINOMDIST">PHPExcel_Calculation_Statistical::BINOMDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BINOMDIST</dd> + <dt><b>BINTODEC</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBINTODEC">PHPExcel_Calculation_Engineering::BINTODEC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BINTODEC</dd> + <dt><b>BINTOHEX</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBINTOHEX">PHPExcel_Calculation_Engineering::BINTOHEX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BINTOHEX</dd> + <dt><b>BINTOOCT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodBINTOOCT">PHPExcel_Calculation_Engineering::BINTOOCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;BINTOOCT</dd> + <dt><b>BRACE_CLOSE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACE_CLOSE">PHPExcel_Calculation_FormulaParser::BRACE_CLOSE</a></dd> + <dt><b>BRACE_OPEN</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACE_OPEN">PHPExcel_Calculation_FormulaParser::BRACE_OPEN</a></dd> + <dt><b>BRACKET_CLOSE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACKET_CLOSE">PHPExcel_Calculation_FormulaParser::BRACKET_CLOSE</a></dd> + <dt><b>BRACKET_OPEN</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constBRACKET_OPEN">PHPExcel_Calculation_FormulaParser::BRACKET_OPEN</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>$compatibilityMode</b></dt> + <dd>in file Functions.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#var$compatibilityMode">PHPExcel_Calculation_Functions::$compatibilityMode</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Compatibility mode to use for error checking and responses</dd> + <dt><b>$cyclicFormulaCount</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$cyclicFormulaCount">PHPExcel_Calculation::$cyclicFormulaCount</a></dd> + <dt><b>calculate</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodcalculate">PHPExcel_Calculation::calculate()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate cell value (using formula from a cell ID) Retained for backward compatibility</dd> + <dt><b>calculateCellValue</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodcalculateCellValue">PHPExcel_Calculation::calculateCellValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate the value of a cell formula</dd> + <dt><b>calculateFormula</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodcalculateFormula">PHPExcel_Calculation::calculateFormula()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate the value of a formula</dd> + <dt><b>CALCULATION_REGEXP_CELLREF</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_CELLREF">PHPExcel_Calculation::CALCULATION_REGEXP_CELLREF</a></dd> + <dt><b>CALCULATION_REGEXP_CELLREF</b></dt> + <dd>in file Calculation.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation.php.html#defineCALCULATION_REGEXP_CELLREF">CALCULATION_REGEXP_CELLREF</a></dd> + <dt><b>CALCULATION_REGEXP_ERROR</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_ERROR">PHPExcel_Calculation::CALCULATION_REGEXP_ERROR</a></dd> + <dt><b>CALCULATION_REGEXP_FUNCTION</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_FUNCTION">PHPExcel_Calculation::CALCULATION_REGEXP_FUNCTION</a></dd> + <dt><b>CALCULATION_REGEXP_NAMEDRANGE</b></dt> + <dd>in file Calculation.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation.php.html#defineCALCULATION_REGEXP_NAMEDRANGE">CALCULATION_REGEXP_NAMEDRANGE</a></dd> + <dt><b>CALCULATION_REGEXP_NAMEDRANGE</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_NAMEDRANGE">PHPExcel_Calculation::CALCULATION_REGEXP_NAMEDRANGE</a></dd> + <dt><b>CALCULATION_REGEXP_NUMBER</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_NUMBER">PHPExcel_Calculation::CALCULATION_REGEXP_NUMBER</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Regular Expressions</dd> + <dt><b>CALCULATION_REGEXP_OPENBRACE</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_OPENBRACE">PHPExcel_Calculation::CALCULATION_REGEXP_OPENBRACE</a></dd> + <dt><b>CALCULATION_REGEXP_STRING</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constCALCULATION_REGEXP_STRING">PHPExcel_Calculation::CALCULATION_REGEXP_STRING</a></dd> + <dt><b>CATEGORY_CUBE</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_CUBE">PHPExcel_Calculation_Function::CATEGORY_CUBE</a></dd> + <dt><b>CATEGORY_DATABASE</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_DATABASE">PHPExcel_Calculation_Function::CATEGORY_DATABASE</a></dd> + <dt><b>CATEGORY_DATE_AND_TIME</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_DATE_AND_TIME">PHPExcel_Calculation_Function::CATEGORY_DATE_AND_TIME</a></dd> + <dt><b>CATEGORY_ENGINEERING</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_ENGINEERING">PHPExcel_Calculation_Function::CATEGORY_ENGINEERING</a></dd> + <dt><b>CATEGORY_FINANCIAL</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_FINANCIAL">PHPExcel_Calculation_Function::CATEGORY_FINANCIAL</a></dd> + <dt><b>CATEGORY_INFORMATION</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_INFORMATION">PHPExcel_Calculation_Function::CATEGORY_INFORMATION</a></dd> + <dt><b>CATEGORY_LOGICAL</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_LOGICAL">PHPExcel_Calculation_Function::CATEGORY_LOGICAL</a></dd> + <dt><b>CATEGORY_LOOKUP_AND_REFERENCE</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_LOOKUP_AND_REFERENCE">PHPExcel_Calculation_Function::CATEGORY_LOOKUP_AND_REFERENCE</a></dd> + <dt><b>CATEGORY_MATH_AND_TRIG</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_MATH_AND_TRIG">PHPExcel_Calculation_Function::CATEGORY_MATH_AND_TRIG</a></dd> + <dt><b>CATEGORY_STATISTICAL</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_STATISTICAL">PHPExcel_Calculation_Function::CATEGORY_STATISTICAL</a></dd> + <dt><b>CATEGORY_TEXT_AND_DATA</b></dt> + <dd>in file Function.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#constCATEGORY_TEXT_AND_DATA">PHPExcel_Calculation_Function::CATEGORY_TEXT_AND_DATA</a></dd> + <dt><b>CEILING</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodCEILING">PHPExcel_Calculation_MathTrig::CEILING()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CEILING</dd> + <dt><b>CELL_ADDRESS</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCELL_ADDRESS">PHPExcel_Calculation_LookupRef::CELL_ADDRESS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CELL_ADDRESS</dd> + <dt><b>CHARACTER</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodCHARACTER">PHPExcel_Calculation_TextData::CHARACTER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CHARACTER</dd> + <dt><b>CHIDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCHIDIST">PHPExcel_Calculation_Statistical::CHIDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CHIDIST</dd> + <dt><b>CHIINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCHIINV">PHPExcel_Calculation_Statistical::CHIINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CHIINV</dd> + <dt><b>CHOOSE</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCHOOSE">PHPExcel_Calculation_LookupRef::CHOOSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CHOOSE</dd> + <dt><b>clearCalculationCache</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodclearCalculationCache">PHPExcel_Calculation::clearCalculationCache()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear calculation cache</dd> + <dt><b>COLUMN</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCOLUMN">PHPExcel_Calculation_LookupRef::COLUMN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COLUMN</dd> + <dt><b>COLUMNS</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodCOLUMNS">PHPExcel_Calculation_LookupRef::COLUMNS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COLUMNS</dd> + <dt><b>COMBIN</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodCOMBIN">PHPExcel_Calculation_MathTrig::COMBIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COMBIN</dd> + <dt><b>COMMA</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constCOMMA">PHPExcel_Calculation_FormulaParser::COMMA</a></dd> + <dt><b>COMPATIBILITY_EXCEL</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constCOMPATIBILITY_EXCEL">PHPExcel_Calculation_Functions::COMPATIBILITY_EXCEL</a><br>&nbsp;&nbsp;&nbsp;&nbsp;constants</dd> + <dt><b>COMPATIBILITY_GNUMERIC</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constCOMPATIBILITY_GNUMERIC">PHPExcel_Calculation_Functions::COMPATIBILITY_GNUMERIC</a></dd> + <dt><b>COMPATIBILITY_OPENOFFICE</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constCOMPATIBILITY_OPENOFFICE">PHPExcel_Calculation_Functions::COMPATIBILITY_OPENOFFICE</a></dd> + <dt><b>COMPLEX</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodCOMPLEX">PHPExcel_Calculation_Engineering::COMPLEX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COMPLEX</dd> + <dt><b>CONCATENATE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodCONCATENATE">PHPExcel_Calculation_TextData::CONCATENATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CONCATENATE</dd> + <dt><b>CONFIDENCE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCONFIDENCE">PHPExcel_Calculation_Statistical::CONFIDENCE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CONFIDENCE</dd> + <dt><b>CONVERTUOM</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodCONVERTUOM">PHPExcel_Calculation_Engineering::CONVERTUOM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CONVERTUOM</dd> + <dt><b>CORREL</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCORREL">PHPExcel_Calculation_Statistical::CORREL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CORREL</dd> + <dt><b>COUNT</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNT">PHPExcel_Calculation_Statistical::COUNT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUNT</dd> + <dt><b>count</b></dt> + <dd>in file Stack.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodcount">PHPExcel_Calculation_Token_Stack::count()</a></dd> + <dt><b>COUNTA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNTA">PHPExcel_Calculation_Statistical::COUNTA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUNTA</dd> + <dt><b>COUNTBLANK</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNTBLANK">PHPExcel_Calculation_Statistical::COUNTBLANK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUNTBLANK</dd> + <dt><b>COUNTIF</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOUNTIF">PHPExcel_Calculation_Statistical::COUNTIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUNTIF</dd> + <dt><b>COUPDAYBS</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPDAYBS">PHPExcel_Calculation_Financial::COUPDAYBS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPDAYBS</dd> + <dt><b>COUPDAYS</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPDAYS">PHPExcel_Calculation_Financial::COUPDAYS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPDAYS</dd> + <dt><b>COUPDAYSNC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPDAYSNC">PHPExcel_Calculation_Financial::COUPDAYSNC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPDAYSNC</dd> + <dt><b>COUPNCD</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPNCD">PHPExcel_Calculation_Financial::COUPNCD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPNCD</dd> + <dt><b>COUPNUM</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPNUM">PHPExcel_Calculation_Financial::COUPNUM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPNUM</dd> + <dt><b>COUPPCD</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCOUPPCD">PHPExcel_Calculation_Financial::COUPPCD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COUPPCD</dd> + <dt><b>COVAR</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCOVAR">PHPExcel_Calculation_Statistical::COVAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;COVAR</dd> + <dt><b>CRITBINOM</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCRITBINOM">PHPExcel_Calculation_Statistical::CRITBINOM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CRITBINOM</dd> + <dt><b>CUMIPMT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCUMIPMT">PHPExcel_Calculation_Financial::CUMIPMT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CUMIPMT</dd> + <dt><b>CUMPRINC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodCUMPRINC">PHPExcel_Calculation_Financial::CUMPRINC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;CUMPRINC</dd> + <dt><b>Calculation.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation.php.html">Calculation.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>$debugLog</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$debugLog">PHPExcel_Calculation::$debugLog</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The debug log generated by the calculation engine</dd> + <dt><b>DATE</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATE">PHPExcel_Calculation_DateTime::DATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DATE</dd> + <dt><b>DATEDIF</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATEDIF">PHPExcel_Calculation_DateTime::DATEDIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DATEDIF</dd> + <dt><b>DATENOW</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATENOW">PHPExcel_Calculation_DateTime::DATENOW()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DATENOW</dd> + <dt><b>DATETIMENOW</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATETIMENOW">PHPExcel_Calculation_DateTime::DATETIMENOW()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DATETIMENOW</dd> + <dt><b>DATEVALUE</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDATEVALUE">PHPExcel_Calculation_DateTime::DATEVALUE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DATEVALUE</dd> + <dt><b>DAVERAGE</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDAVERAGE">PHPExcel_Calculation_Database::DAVERAGE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DAVERAGE</dd> + <dt><b>DAYOFMONTH</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDAYOFMONTH">PHPExcel_Calculation_DateTime::DAYOFMONTH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DAYOFMONTH</dd> + <dt><b>DAYOFWEEK</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDAYOFWEEK">PHPExcel_Calculation_DateTime::DAYOFWEEK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DAYOFWEEK</dd> + <dt><b>DAYS360</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodDAYS360">PHPExcel_Calculation_DateTime::DAYS360()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DAYS360</dd> + <dt><b>DB</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDB">PHPExcel_Calculation_Financial::DB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DB</dd> + <dt><b>DCOUNT</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDCOUNT">PHPExcel_Calculation_Database::DCOUNT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DCOUNT</dd> + <dt><b>DCOUNTA</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDCOUNTA">PHPExcel_Calculation_Database::DCOUNTA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DCOUNTA</dd> + <dt><b>DDB</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDDB">PHPExcel_Calculation_Financial::DDB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DDB</dd> + <dt><b>DECTOBIN</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDECTOBIN">PHPExcel_Calculation_Engineering::DECTOBIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DECTOBIN</dd> + <dt><b>DECTOHEX</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDECTOHEX">PHPExcel_Calculation_Engineering::DECTOHEX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DECTOHEX</dd> + <dt><b>DECTOOCT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDECTOOCT">PHPExcel_Calculation_Engineering::DECTOOCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DECTOOCT</dd> + <dt><b>DELTA</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodDELTA">PHPExcel_Calculation_Engineering::DELTA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DELTA</dd> + <dt><b>DEVSQ</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodDEVSQ">PHPExcel_Calculation_Statistical::DEVSQ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DEVSQ</dd> + <dt><b>DGET</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDGET">PHPExcel_Calculation_Database::DGET()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DGET</dd> + <dt><b>disableCalculationCache</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methoddisableCalculationCache">PHPExcel_Calculation::disableCalculationCache()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Disable calculation cache</dd> + <dt><b>DISC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDISC">PHPExcel_Calculation_Financial::DISC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DISC</dd> + <dt><b>DIV0</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodDIV0">PHPExcel_Calculation_Functions::DIV0()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DIV0</dd> + <dt><b>DMAX</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDMAX">PHPExcel_Calculation_Database::DMAX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DMAX</dd> + <dt><b>DMIN</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDMIN">PHPExcel_Calculation_Database::DMIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DMIN</dd> + <dt><b>DOLLAR</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodDOLLAR">PHPExcel_Calculation_TextData::DOLLAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DOLLAR</dd> + <dt><b>DOLLARDE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDOLLARDE">PHPExcel_Calculation_Financial::DOLLARDE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DOLLARDE</dd> + <dt><b>DOLLARFR</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodDOLLARFR">PHPExcel_Calculation_Financial::DOLLARFR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DOLLARFR</dd> + <dt><b>DPRODUCT</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDPRODUCT">PHPExcel_Calculation_Database::DPRODUCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DPRODUCT</dd> + <dt><b>DSTDEV</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDSTDEV">PHPExcel_Calculation_Database::DSTDEV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DSTDEV</dd> + <dt><b>DSTDEVP</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDSTDEVP">PHPExcel_Calculation_Database::DSTDEVP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DSTDEVP</dd> + <dt><b>DSUM</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDSUM">PHPExcel_Calculation_Database::DSUM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DSUM</dd> + <dt><b>DUMMY</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodDUMMY">PHPExcel_Calculation_Functions::DUMMY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DUMMY</dd> + <dt><b>DVAR</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDVAR">PHPExcel_Calculation_Database::DVAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DVAR</dd> + <dt><b>DVARP</b></dt> + <dd>in file Database.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html#methodDVARP">PHPExcel_Calculation_Database::DVARP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DVARP</dd> + <dt><b>Database.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html">Database.php</a></dd> + <dt><b>DateTime.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html">DateTime.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>$echoDebugLog</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$echoDebugLog">PHPExcel_Calculation::$echoDebugLog</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag to determine whether a debug log should be echoed by the calculation engine</dd> + <dt><b>EDATE</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodEDATE">PHPExcel_Calculation_DateTime::EDATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EDATE</dd> + <dt><b>EFFECT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodEFFECT">PHPExcel_Calculation_Financial::EFFECT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EFFECT</dd> + <dt><b>enableCalculationCache</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodenableCalculationCache">PHPExcel_Calculation::enableCalculationCache()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Enable calculation cache</dd> + <dt><b>EOMONTH</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodEOMONTH">PHPExcel_Calculation_DateTime::EOMONTH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EOMONTH</dd> + <dt><b>EPS</b></dt> + <dd>in file Statistical.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html#defineEPS">EPS</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EPS</dd> + <dt><b>ERF</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodERF">PHPExcel_Calculation_Engineering::ERF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ERF</dd> + <dt><b>ERFC</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodERFC">PHPExcel_Calculation_Engineering::ERFC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ERFC</dd> + <dt><b>errorHandlerCallback</b></dt> + <dd>in file Exception.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Exception.html#methoderrorHandlerCallback">PHPExcel_Calculation_Exception::errorHandlerCallback()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Error handler callback</dd> + <dt><b>ERROR_START</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constERROR_START">PHPExcel_Calculation_FormulaParser::ERROR_START</a></dd> + <dt><b>ERROR_TYPE</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodERROR_TYPE">PHPExcel_Calculation_Functions::ERROR_TYPE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ERROR_TYPE</dd> + <dt><b>EULER</b></dt> + <dd>in file Engineering.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html#defineEULER">EULER</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EULER</dd> + <dt><b>EVEN</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodEVEN">PHPExcel_Calculation_MathTrig::EVEN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EVEN</dd> + <dt><b>EXPONDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodEXPONDIST">PHPExcel_Calculation_Statistical::EXPONDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EXPONDIST</dd> + <dt><b>extractCellRange</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodextractCellRange">PHPExcel_Calculation::extractCellRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Extract range values</dd> + <dt><b>extractNamedRange</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodextractNamedRange">PHPExcel_Calculation::extractNamedRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Extract range values</dd> + <dt><b>Engineering.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html">Engineering.php</a></dd> + <dt><b>Exception.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html">Exception.php</a></dd> + <dt><b>ExceptionHandler.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html">ExceptionHandler.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>$formulaError</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$formulaError">PHPExcel_Calculation::$formulaError</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Error message for any error that was raised/thrown by the calculation engine</dd> + <dt><b>FACT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodFACT">PHPExcel_Calculation_MathTrig::FACT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FACT</dd> + <dt><b>FACTDOUBLE</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodFACTDOUBLE">PHPExcel_Calculation_MathTrig::FACTDOUBLE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FACTDOUBLE</dd> + <dt><b>FALSE</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodFALSE">PHPExcel_Calculation_Logical::FALSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FALSE</dd> + <dt><b>FINANCIAL_MAX_ITERATIONS</b></dt> + <dd>in file Financial.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html#defineFINANCIAL_MAX_ITERATIONS">FINANCIAL_MAX_ITERATIONS</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FINANCIAL_MAX_ITERATIONS</dd> + <dt><b>FINANCIAL_PRECISION</b></dt> + <dd>in file Financial.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html#defineFINANCIAL_PRECISION">FINANCIAL_PRECISION</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FINANCIAL_PRECISION</dd> + <dt><b>FISHER</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodFISHER">PHPExcel_Calculation_Statistical::FISHER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FISHER</dd> + <dt><b>FISHERINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodFISHERINV">PHPExcel_Calculation_Statistical::FISHERINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FISHERINV</dd> + <dt><b>FIXEDFORMAT</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodFIXEDFORMAT">PHPExcel_Calculation_TextData::FIXEDFORMAT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FIXEDFORMAT</dd> + <dt><b>flattenArray</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodflattenArray">PHPExcel_Calculation_Functions::flattenArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a multi-dimensional array to a simple 1-dimensional array</dd> + <dt><b>flattenArrayIndexed</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodflattenArrayIndexed">PHPExcel_Calculation_Functions::flattenArrayIndexed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a multi-dimensional array to a simple 1-dimensional array, but retain an element of indexing</dd> + <dt><b>flattenSingleValue</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodflattenSingleValue">PHPExcel_Calculation_Functions::flattenSingleValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert an array to a single scalar value by extracting the first element</dd> + <dt><b>FLOOR</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodFLOOR">PHPExcel_Calculation_MathTrig::FLOOR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FLOOR</dd> + <dt><b>flushInstance</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodflushInstance">PHPExcel_Calculation::flushInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flush the calculation cache for any existing instance of this class but only if a PHPExcel_Calculation instance exists</dd> + <dt><b>FORECAST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodFORECAST">PHPExcel_Calculation_Statistical::FORECAST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FORECAST</dd> + <dt><b>FV</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodFV">PHPExcel_Calculation_Financial::FV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FV</dd> + <dt><b>FVSCHEDULE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodFVSCHEDULE">PHPExcel_Calculation_Financial::FVSCHEDULE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FVSCHEDULE</dd> + <dt><b>Financial.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html">Financial.php</a></dd> + <dt><b>FormulaParser.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html">FormulaParser.php</a></dd> + <dt><b>FormulaToken.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html">FormulaToken.php</a></dd> + <dt><b>Function.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html">Function.php</a></dd> + <dt><b>Functions.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html">Functions.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>GAMMADIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGAMMADIST">PHPExcel_Calculation_Statistical::GAMMADIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GAMMADIST</dd> + <dt><b>GAMMAINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGAMMAINV">PHPExcel_Calculation_Statistical::GAMMAINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GAMMAINV</dd> + <dt><b>GAMMALN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGAMMALN">PHPExcel_Calculation_Statistical::GAMMALN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GAMMALN</dd> + <dt><b>GCD</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodGCD">PHPExcel_Calculation_MathTrig::GCD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GCD</dd> + <dt><b>GEOMEAN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGEOMEAN">PHPExcel_Calculation_Statistical::GEOMEAN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GEOMEAN</dd> + <dt><b>GESTEP</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodGESTEP">PHPExcel_Calculation_Engineering::GESTEP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GESTEP</dd> + <dt><b>getArrayReturnType</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetArrayReturnType">PHPExcel_Calculation::getArrayReturnType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Array Return Type (Array or Value of first element in the array)</dd> + <dt><b>getCalculationCacheEnabled</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetCalculationCacheEnabled">PHPExcel_Calculation::getCalculationCacheEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is calculation caching enabled?</dd> + <dt><b>getCalculationCacheExpirationTime</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetCalculationCacheExpirationTime">PHPExcel_Calculation::getCalculationCacheExpirationTime()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get calculation cache expiration time</dd> + <dt><b>getCategory</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodgetCategory">PHPExcel_Calculation_Function::getCategory()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Category (represented by CATEGORY_*)</dd> + <dt><b>getCompatibilityMode</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodgetCompatibilityMode">PHPExcel_Calculation_Functions::getCompatibilityMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current Compatibility Mode</dd> + <dt><b>getConversionGroups</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionGroups">PHPExcel_Calculation_Engineering::getConversionGroups()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getConversionGroups Returns a list of the different conversion groups for UOM conversions</dd> + <dt><b>getConversionGroupUnitDetails</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionGroupUnitDetails">PHPExcel_Calculation_Engineering::getConversionGroupUnitDetails()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getConversionGroupUnitDetails</dd> + <dt><b>getConversionGroupUnits</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionGroupUnits">PHPExcel_Calculation_Engineering::getConversionGroupUnits()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getConversionGroupUnits Returns an array of units of measure, for a specified conversion group, or for all groups</dd> + <dt><b>getConversionMultipliers</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodgetConversionMultipliers">PHPExcel_Calculation_Engineering::getConversionMultipliers()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;getConversionMultipliers Returns an array of the Multiplier prefixes that can be used with Units of Measure in CONVERTUOM()</dd> + <dt><b>getExcelName</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodgetExcelName">PHPExcel_Calculation_Function::getExcelName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Excel name</dd> + <dt><b>getFALSE</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetFALSE">PHPExcel_Calculation::getFALSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the locale-specific translation of FALSE</dd> + <dt><b>getFormula</b></dt> + <dd>in file FormulaParser.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetFormula">PHPExcel_Calculation_FormulaParser::getFormula()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Formula</dd> + <dt><b>getInstance</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetInstance">PHPExcel_Calculation::getInstance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an instance of this class</dd> + <dt><b>getLocale</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetLocale">PHPExcel_Calculation::getLocale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently defined locale code</dd> + <dt><b>getPHPExcelName</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodgetPHPExcelName">PHPExcel_Calculation_Function::getPHPExcelName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel name</dd> + <dt><b>getReturnDateType</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodgetReturnDateType">PHPExcel_Calculation_Functions::getReturnDateType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current Return Date Format for functions that return a date/time (Excel, PHP Serialized Numeric or PHP Object)</dd> + <dt><b>getToken</b></dt> + <dd>in file FormulaParser.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetToken">PHPExcel_Calculation_FormulaParser::getToken()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Token</dd> + <dt><b>getTokenCount</b></dt> + <dd>in file FormulaParser.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetTokenCount">PHPExcel_Calculation_FormulaParser::getTokenCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Token count</dd> + <dt><b>getTokens</b></dt> + <dd>in file FormulaParser.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#methodgetTokens">PHPExcel_Calculation_FormulaParser::getTokens()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Tokens</dd> + <dt><b>getTokenSubType</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodgetTokenSubType">PHPExcel_Calculation_FormulaToken::getTokenSubType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Token SubType (represented by TOKEN_SUBTYPE_*)</dd> + <dt><b>getTokenType</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodgetTokenType">PHPExcel_Calculation_FormulaToken::getTokenType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Token Type (represented by TOKEN_TYPE_*)</dd> + <dt><b>getTRUE</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodgetTRUE">PHPExcel_Calculation::getTRUE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the locale-specific translation of TRUE</dd> + <dt><b>getValue</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodgetValue">PHPExcel_Calculation_FormulaToken::getValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Value</dd> + <dt><b>GROWTH</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodGROWTH">PHPExcel_Calculation_Statistical::GROWTH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;GROWTH</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="h"></a> + <div> + <h2>h</h2> + <dl> + <dt><b>HARMEAN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodHARMEAN">PHPExcel_Calculation_Statistical::HARMEAN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HARMEAN</dd> + <dt><b>HEXTOBIN</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodHEXTOBIN">PHPExcel_Calculation_Engineering::HEXTOBIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HEXTOBIN</dd> + <dt><b>HEXTODEC</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodHEXTODEC">PHPExcel_Calculation_Engineering::HEXTODEC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HEXTODEC</dd> + <dt><b>HEXTOOCT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodHEXTOOCT">PHPExcel_Calculation_Engineering::HEXTOOCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HEXTOOCT</dd> + <dt><b>HOUROFDAY</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodHOUROFDAY">PHPExcel_Calculation_DateTime::HOUROFDAY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HOUROFDAY</dd> + <dt><b>HYPERLINK</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodHYPERLINK">PHPExcel_Calculation_LookupRef::HYPERLINK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HYPERLINK</dd> + <dt><b>HYPGEOMDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodHYPGEOMDIST">PHPExcel_Calculation_Statistical::HYPGEOMDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;HYPGEOMDIST</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>IFERROR</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodIFERROR">PHPExcel_Calculation_Logical::IFERROR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IFERROR</dd> + <dt><b>IMABS</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMABS">PHPExcel_Calculation_Engineering::IMABS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMABS</dd> + <dt><b>IMAGINARY</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMAGINARY">PHPExcel_Calculation_Engineering::IMAGINARY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMAGINARY</dd> + <dt><b>IMARGUMENT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMARGUMENT">PHPExcel_Calculation_Engineering::IMARGUMENT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMARGUMENT</dd> + <dt><b>IMCONJUGATE</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMCONJUGATE">PHPExcel_Calculation_Engineering::IMCONJUGATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMCONJUGATE</dd> + <dt><b>IMCOS</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMCOS">PHPExcel_Calculation_Engineering::IMCOS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMCOS</dd> + <dt><b>IMDIV</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMDIV">PHPExcel_Calculation_Engineering::IMDIV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMDIV</dd> + <dt><b>IMEXP</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMEXP">PHPExcel_Calculation_Engineering::IMEXP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMEXP</dd> + <dt><b>IMLN</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMLN">PHPExcel_Calculation_Engineering::IMLN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMLN</dd> + <dt><b>IMLOG2</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMLOG2">PHPExcel_Calculation_Engineering::IMLOG2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMLOG2</dd> + <dt><b>IMLOG10</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMLOG10">PHPExcel_Calculation_Engineering::IMLOG10()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMLOG10</dd> + <dt><b>IMPOWER</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMPOWER">PHPExcel_Calculation_Engineering::IMPOWER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMPOWER</dd> + <dt><b>IMPRODUCT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMPRODUCT">PHPExcel_Calculation_Engineering::IMPRODUCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMPRODUCT</dd> + <dt><b>IMREAL</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMREAL">PHPExcel_Calculation_Engineering::IMREAL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMREAL</dd> + <dt><b>IMSIN</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSIN">PHPExcel_Calculation_Engineering::IMSIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMSIN</dd> + <dt><b>IMSQRT</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSQRT">PHPExcel_Calculation_Engineering::IMSQRT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMSQRT</dd> + <dt><b>IMSUB</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSUB">PHPExcel_Calculation_Engineering::IMSUB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMSUB</dd> + <dt><b>IMSUM</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodIMSUM">PHPExcel_Calculation_Engineering::IMSUM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IMSUM</dd> + <dt><b>INDEX</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodINDEX">PHPExcel_Calculation_LookupRef::INDEX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;INDEX</dd> + <dt><b>INDIRECT</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodINDIRECT">PHPExcel_Calculation_LookupRef::INDIRECT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;INDIRECT</dd> + <dt><b>INT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodINT">PHPExcel_Calculation_MathTrig::INT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;INT</dd> + <dt><b>INTERCEPT</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodINTERCEPT">PHPExcel_Calculation_Statistical::INTERCEPT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;INTERCEPT</dd> + <dt><b>INTRATE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodINTRATE">PHPExcel_Calculation_Financial::INTRATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;INTRATE</dd> + <dt><b>IPMT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodIPMT">PHPExcel_Calculation_Financial::IPMT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IPMT</dd> + <dt><b>IRR</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodIRR">PHPExcel_Calculation_Financial::IRR()</a></dd> + <dt><b>isCellValue</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodisCellValue">PHPExcel_Calculation_Functions::isCellValue()</a></dd> + <dt><b>isImplemented</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodisImplemented">PHPExcel_Calculation::isImplemented()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a specific function implemented?</dd> + <dt><b>isMatrixValue</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodisMatrixValue">PHPExcel_Calculation_Functions::isMatrixValue()</a></dd> + <dt><b>ISPMT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodISPMT">PHPExcel_Calculation_Financial::ISPMT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ISPMT</dd> + <dt><b>isValue</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodisValue">PHPExcel_Calculation_Functions::isValue()</a></dd> + <dt><b>IS_BLANK</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_BLANK">PHPExcel_Calculation_Functions::IS_BLANK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_BLANK</dd> + <dt><b>IS_ERR</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_ERR">PHPExcel_Calculation_Functions::IS_ERR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_ERR</dd> + <dt><b>IS_ERROR</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_ERROR">PHPExcel_Calculation_Functions::IS_ERROR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_ERROR</dd> + <dt><b>IS_EVEN</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_EVEN">PHPExcel_Calculation_Functions::IS_EVEN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_EVEN</dd> + <dt><b>IS_LOGICAL</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_LOGICAL">PHPExcel_Calculation_Functions::IS_LOGICAL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_LOGICAL</dd> + <dt><b>IS_NA</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_NA">PHPExcel_Calculation_Functions::IS_NA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_NA</dd> + <dt><b>IS_NONTEXT</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_NONTEXT">PHPExcel_Calculation_Functions::IS_NONTEXT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_NONTEXT</dd> + <dt><b>IS_NUMBER</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_NUMBER">PHPExcel_Calculation_Functions::IS_NUMBER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_NUMBER</dd> + <dt><b>IS_ODD</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_ODD">PHPExcel_Calculation_Functions::IS_ODD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_ODD</dd> + <dt><b>IS_TEXT</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodIS_TEXT">PHPExcel_Calculation_Functions::IS_TEXT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;IS_TEXT</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="k"></a> + <div> + <h2>k</h2> + <dl> + <dt><b>KURT</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodKURT">PHPExcel_Calculation_Statistical::KURT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;KURT</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="l"></a> + <div> + <h2>l</h2> + <dl> + <dt><b>LARGE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLARGE">PHPExcel_Calculation_Statistical::LARGE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LARGE</dd> + <dt><b>last</b></dt> + <dd>in file Stack.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodlast">PHPExcel_Calculation_Token_Stack::last()</a></dd> + <dt><b>LCM</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodLCM">PHPExcel_Calculation_MathTrig::LCM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LCM</dd> + <dt><b>LEFT</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodLEFT">PHPExcel_Calculation_TextData::LEFT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LEFT</dd> + <dt><b>LINEST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLINEST">PHPExcel_Calculation_Statistical::LINEST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LINEST</dd> + <dt><b>listAllFunctionNames</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodlistAllFunctionNames">PHPExcel_Calculation::listAllFunctionNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all Excel function names</dd> + <dt><b>listFunctionNames</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodlistFunctionNames">PHPExcel_Calculation::listFunctionNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of implemented Excel function names</dd> + <dt><b>listFunctions</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodlistFunctions">PHPExcel_Calculation::listFunctions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a list of all implemented functions as an array of function objects</dd> + <dt><b>LOGEST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLOGEST">PHPExcel_Calculation_Statistical::LOGEST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOGEST</dd> + <dt><b>LOGICAL_AND</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodLOGICAL_AND">PHPExcel_Calculation_Logical::LOGICAL_AND()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOGICAL_AND</dd> + <dt><b>LOGICAL_OR</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodLOGICAL_OR">PHPExcel_Calculation_Logical::LOGICAL_OR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOGICAL_OR</dd> + <dt><b>LOGINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLOGINV">PHPExcel_Calculation_Statistical::LOGINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOGINV</dd> + <dt><b>LOGNORMDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLOGNORMDIST">PHPExcel_Calculation_Statistical::LOGNORMDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOGNORMDIST</dd> + <dt><b>LOG_BASE</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodLOG_BASE">PHPExcel_Calculation_MathTrig::LOG_BASE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOG_BASE</dd> + <dt><b>LOG_GAMMA_X_MAX_VALUE</b></dt> + <dd>in file Statistical.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html#defineLOG_GAMMA_X_MAX_VALUE">LOG_GAMMA_X_MAX_VALUE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOG_GAMMA_X_MAX_VALUE</dd> + <dt><b>LOOKUP</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodLOOKUP">PHPExcel_Calculation_LookupRef::LOOKUP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOOKUP The LOOKUP function searches for value either from a one-row or one-column range or from an array.</dd> + <dt><b>LOWERCASE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodLOWERCASE">PHPExcel_Calculation_TextData::LOWERCASE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;LOWERCASE</dd> + <dt><b>Logical.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html">Logical.php</a></dd> + <dt><b>LookupRef.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html">LookupRef.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="m"></a> + <div> + <h2>m</h2> + <dl> + <dt><b>MATCH</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodMATCH">PHPExcel_Calculation_LookupRef::MATCH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MATCH</dd> + <dt><b>MAX</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMAX">PHPExcel_Calculation_Statistical::MAX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MAX</dd> + <dt><b>MAXA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMAXA">PHPExcel_Calculation_Statistical::MAXA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MAXA</dd> + <dt><b>MAXIF</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMAXIF">PHPExcel_Calculation_Statistical::MAXIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MAXIF</dd> + <dt><b>MAX_ITERATIONS</b></dt> + <dd>in file Functions.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#defineMAX_ITERATIONS">MAX_ITERATIONS</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MAX_ITERATIONS</dd> + <dt><b>MAX_VALUE</b></dt> + <dd>in file Functions.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#defineMAX_VALUE">MAX_VALUE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MAX_VALUE</dd> + <dt><b>mb_str_replace</b></dt> + <dd>in file Functions.php, function <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#functionmb_str_replace">mb_str_replace()</a></dd> + <dt><b>MDETERM</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMDETERM">PHPExcel_Calculation_MathTrig::MDETERM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MDETERM</dd> + <dt><b>MEDIAN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMEDIAN">PHPExcel_Calculation_Statistical::MEDIAN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MEDIAN</dd> + <dt><b>MID</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodMID">PHPExcel_Calculation_TextData::MID()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MID</dd> + <dt><b>MIN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMIN">PHPExcel_Calculation_Statistical::MIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MIN</dd> + <dt><b>MINA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMINA">PHPExcel_Calculation_Statistical::MINA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MINA</dd> + <dt><b>MINIF</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMINIF">PHPExcel_Calculation_Statistical::MINIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MINIF</dd> + <dt><b>MINUTEOFHOUR</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodMINUTEOFHOUR">PHPExcel_Calculation_DateTime::MINUTEOFHOUR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MINUTEOFHOUR</dd> + <dt><b>MINVERSE</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMINVERSE">PHPExcel_Calculation_MathTrig::MINVERSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MINVERSE</dd> + <dt><b>MIRR</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodMIRR">PHPExcel_Calculation_Financial::MIRR()</a></dd> + <dt><b>MMULT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMMULT">PHPExcel_Calculation_MathTrig::MMULT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MMULT</dd> + <dt><b>MOD</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMOD">PHPExcel_Calculation_MathTrig::MOD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MOD</dd> + <dt><b>MODE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodMODE">PHPExcel_Calculation_Statistical::MODE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MODE</dd> + <dt><b>money_format</b></dt> + <dd>in file Functions.php, function <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#functionmoney_format">money_format()</a></dd> + <dt><b>MONTHOFYEAR</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodMONTHOFYEAR">PHPExcel_Calculation_DateTime::MONTHOFYEAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MONTHOFYEAR</dd> + <dt><b>MROUND</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMROUND">PHPExcel_Calculation_MathTrig::MROUND()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MROUND</dd> + <dt><b>MULTINOMIAL</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodMULTINOMIAL">PHPExcel_Calculation_MathTrig::MULTINOMIAL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;MULTINOMIAL</dd> + <dt><b>M_2DIVPI</b></dt> + <dd>in file Functions.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#defineM_2DIVPI">M_2DIVPI</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2 / PI</dd> + <dt><b>MathTrig.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html">MathTrig.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="n"></a> + <div> + <h2>n</h2> + <dl> + <dt><b>N</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodN">PHPExcel_Calculation_Functions::N()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;N</dd> + <dt><b>NA</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNA">PHPExcel_Calculation_Functions::NA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NA</dd> + <dt><b>NAME</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNAME">PHPExcel_Calculation_Functions::NAME()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NAME</dd> + <dt><b>NaN</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNaN">PHPExcel_Calculation_Functions::NaN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NaN</dd> + <dt><b>NEGBINOMDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNEGBINOMDIST">PHPExcel_Calculation_Statistical::NEGBINOMDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NEGBINOMDIST</dd> + <dt><b>NETWORKDAYS</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodNETWORKDAYS">PHPExcel_Calculation_DateTime::NETWORKDAYS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NETWORKDAYS</dd> + <dt><b>NOMINAL</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodNOMINAL">PHPExcel_Calculation_Financial::NOMINAL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NOMINAL</dd> + <dt><b>NORMDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMDIST">PHPExcel_Calculation_Statistical::NORMDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NORMDIST</dd> + <dt><b>NORMINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMINV">PHPExcel_Calculation_Statistical::NORMINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NORMINV</dd> + <dt><b>NORMSDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMSDIST">PHPExcel_Calculation_Statistical::NORMSDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NORMSDIST</dd> + <dt><b>NORMSINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodNORMSINV">PHPExcel_Calculation_Statistical::NORMSINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NORMSINV</dd> + <dt><b>NOT</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodNOT">PHPExcel_Calculation_Logical::NOT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NOT</dd> + <dt><b>NPER</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodNPER">PHPExcel_Calculation_Financial::NPER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NPER</dd> + <dt><b>NPV</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodNPV">PHPExcel_Calculation_Financial::NPV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NPV</dd> + <dt><b>NULL</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodNULL">PHPExcel_Calculation_Functions::NULL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;NULL</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="o"></a> + <div> + <h2>o</h2> + <dl> + <dt><b>OCTTOBIN</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodOCTTOBIN">PHPExcel_Calculation_Engineering::OCTTOBIN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;OCTTOBIN</dd> + <dt><b>OCTTODEC</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodOCTTODEC">PHPExcel_Calculation_Engineering::OCTTODEC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;OCTTODEC</dd> + <dt><b>OCTTOHEX</b></dt> + <dd>in file Engineering.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html#methodOCTTOHEX">PHPExcel_Calculation_Engineering::OCTTOHEX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;OCTTOHEX</dd> + <dt><b>ODD</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodODD">PHPExcel_Calculation_MathTrig::ODD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ODD</dd> + <dt><b>OFFSET</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodOFFSET">PHPExcel_Calculation_LookupRef::OFFSET()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;OFFSET</dd> + <dt><b>OPERATORS_INFIX</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constOPERATORS_INFIX">PHPExcel_Calculation_FormulaParser::OPERATORS_INFIX</a></dd> + <dt><b>OPERATORS_POSTFIX</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constOPERATORS_POSTFIX">PHPExcel_Calculation_FormulaParser::OPERATORS_POSTFIX</a></dd> + <dt><b>OPERATORS_SN</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constOPERATORS_SN">PHPExcel_Calculation_FormulaParser::OPERATORS_SN</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PAREN_CLOSE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constPAREN_CLOSE">PHPExcel_Calculation_FormulaParser::PAREN_CLOSE</a></dd> + <dt><b>PAREN_OPEN</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constPAREN_OPEN">PHPExcel_Calculation_FormulaParser::PAREN_OPEN</a></dd> + <dt><b>parseFormula</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodparseFormula">PHPExcel_Calculation::parseFormula()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Validate and parse a formula string</dd> + <dt><b>PERCENTILE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPERCENTILE">PHPExcel_Calculation_Statistical::PERCENTILE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PERCENTILE</dd> + <dt><b>PERCENTRANK</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPERCENTRANK">PHPExcel_Calculation_Statistical::PERCENTRANK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PERCENTRANK</dd> + <dt><b>PERMUT</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPERMUT">PHPExcel_Calculation_Statistical::PERMUT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PERMUT</dd> + <dt><b>PHPExcel_Calculation</b></dt> + <dd>in file Calculation.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation (Singleton)</dd> + <dt><b>PHPExcel_Calculation_Database</b></dt> + <dd>in file Database.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Database</dd> + <dt><b>PHPExcel_Calculation_DateTime</b></dt> + <dd>in file DateTime.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_DateTime</dd> + <dt><b>PHPExcel_Calculation_Engineering</b></dt> + <dd>in file Engineering.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Engineering</dd> + <dt><b>PHPExcel_Calculation_Exception</b></dt> + <dd>in file Exception.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Exception</dd> + <dt><b>PHPExcel_Calculation_ExceptionHandler</b></dt> + <dd>in file ExceptionHandler.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_ExceptionHandler</dd> + <dt><b>PHPExcel_Calculation_Financial</b></dt> + <dd>in file Financial.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Financial</dd> + <dt><b>PHPExcel_Calculation_FormulaParser</b></dt> + <dd>in file FormulaParser.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_FormulaParser</dd> + <dt><b>PHPExcel_Calculation_FormulaToken</b></dt> + <dd>in file FormulaToken.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_FormulaToken</dd> + <dt><b>PHPExcel_Calculation_Function</b></dt> + <dd>in file Function.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Function</dd> + <dt><b>PHPExcel_Calculation_Functions</b></dt> + <dd>in file Functions.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Functions</dd> + <dt><b>PHPExcel_Calculation_Logical</b></dt> + <dd>in file Logical.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Logical</dd> + <dt><b>PHPExcel_Calculation_LookupRef</b></dt> + <dd>in file LookupRef.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_LookupRef</dd> + <dt><b>PHPExcel_Calculation_MathTrig</b></dt> + <dd>in file MathTrig.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_MathTrig</dd> + <dt><b>PHPExcel_Calculation_Statistical</b></dt> + <dd>in file Statistical.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_Statistical</dd> + <dt><b>PHPExcel_Calculation_TextData</b></dt> + <dd>in file TextData.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Calculation_TextData</dd> + <dt><b>PHPExcel_Calculation_Token_Stack</b></dt> + <dd>in file Stack.php, class <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel</dd> + <dt><b>PMT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPMT">PHPExcel_Calculation_Financial::PMT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PMT</dd> + <dt><b>POISSON</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodPOISSON">PHPExcel_Calculation_Statistical::POISSON()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;POISSON</dd> + <dt><b>pop</b></dt> + <dd>in file Stack.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodpop">PHPExcel_Calculation_Token_Stack::pop()</a></dd> + <dt><b>POWER</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodPOWER">PHPExcel_Calculation_MathTrig::POWER()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;POWER</dd> + <dt><b>PPMT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPPMT">PHPExcel_Calculation_Financial::PPMT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PPMT</dd> + <dt><b>PRECISION</b></dt> + <dd>in file Functions.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html#definePRECISION">PRECISION</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PRECISION</dd> + <dt><b>PRICE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPRICE">PHPExcel_Calculation_Financial::PRICE()</a></dd> + <dt><b>PRICEDISC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPRICEDISC">PHPExcel_Calculation_Financial::PRICEDISC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PRICEDISC</dd> + <dt><b>PRICEMAT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPRICEMAT">PHPExcel_Calculation_Financial::PRICEMAT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PRICEMAT</dd> + <dt><b>PRODUCT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodPRODUCT">PHPExcel_Calculation_MathTrig::PRODUCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PRODUCT</dd> + <dt><b>PROPERCASE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodPROPERCASE">PHPExcel_Calculation_TextData::PROPERCASE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PROPERCASE</dd> + <dt><b>push</b></dt> + <dd>in file Stack.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html#methodpush">PHPExcel_Calculation_Token_Stack::push()</a></dd> + <dt><b>PV</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodPV">PHPExcel_Calculation_Financial::PV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PV</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="q"></a> + <div> + <h2>q</h2> + <dl> + <dt><b>QUARTILE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodQUARTILE">PHPExcel_Calculation_Statistical::QUARTILE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;QUARTILE</dd> + <dt><b>QUOTE_DOUBLE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constQUOTE_DOUBLE">PHPExcel_Calculation_FormulaParser::QUOTE_DOUBLE</a></dd> + <dt><b>QUOTE_SINGLE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constQUOTE_SINGLE">PHPExcel_Calculation_FormulaParser::QUOTE_SINGLE</a></dd> + <dt><b>QUOTIENT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodQUOTIENT">PHPExcel_Calculation_MathTrig::QUOTIENT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;QUOTIENT</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>$ReturnDateType</b></dt> + <dd>in file Functions.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#var$ReturnDateType">PHPExcel_Calculation_Functions::$ReturnDateType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Data Type to use when returning date values</dd> + <dt><b>RAND</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodRAND">PHPExcel_Calculation_MathTrig::RAND()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RAND</dd> + <dt><b>RANK</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodRANK">PHPExcel_Calculation_Statistical::RANK()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RANK</dd> + <dt><b>RATE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodRATE">PHPExcel_Calculation_Financial::RATE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RATE</dd> + <dt><b>RECEIVED</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodRECEIVED">PHPExcel_Calculation_Financial::RECEIVED()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RECEIVED</dd> + <dt><b>REF</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodREF">PHPExcel_Calculation_Functions::REF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;REF</dd> + <dt><b>REPLACE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodREPLACE">PHPExcel_Calculation_TextData::REPLACE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;REPLACE</dd> + <dt><b>RETURNDATE_EXCEL</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constRETURNDATE_EXCEL">PHPExcel_Calculation_Functions::RETURNDATE_EXCEL</a></dd> + <dt><b>RETURNDATE_PHP_NUMERIC</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constRETURNDATE_PHP_NUMERIC">PHPExcel_Calculation_Functions::RETURNDATE_PHP_NUMERIC</a></dd> + <dt><b>RETURNDATE_PHP_OBJECT</b></dt> + <dd>in file Functions.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#constRETURNDATE_PHP_OBJECT">PHPExcel_Calculation_Functions::RETURNDATE_PHP_OBJECT</a></dd> + <dt><b>RETURNSTRING</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodRETURNSTRING">PHPExcel_Calculation_TextData::RETURNSTRING()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RETURNSTRING</dd> + <dt><b>RETURN_ARRAY_AS_ARRAY</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constRETURN_ARRAY_AS_ARRAY">PHPExcel_Calculation::RETURN_ARRAY_AS_ARRAY</a></dd> + <dt><b>RETURN_ARRAY_AS_ERROR</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constRETURN_ARRAY_AS_ERROR">PHPExcel_Calculation::RETURN_ARRAY_AS_ERROR</a><br>&nbsp;&nbsp;&nbsp;&nbsp;constants</dd> + <dt><b>RETURN_ARRAY_AS_VALUE</b></dt> + <dd>in file Calculation.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#constRETURN_ARRAY_AS_VALUE">PHPExcel_Calculation::RETURN_ARRAY_AS_VALUE</a></dd> + <dt><b>RIGHT</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodRIGHT">PHPExcel_Calculation_TextData::RIGHT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RIGHT</dd> + <dt><b>ROMAN</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodROMAN">PHPExcel_Calculation_MathTrig::ROMAN()</a></dd> + <dt><b>ROUNDDOWN</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodROUNDDOWN">PHPExcel_Calculation_MathTrig::ROUNDDOWN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ROUNDDOWN</dd> + <dt><b>ROUNDUP</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodROUNDUP">PHPExcel_Calculation_MathTrig::ROUNDUP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ROUNDUP</dd> + <dt><b>ROW</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodROW">PHPExcel_Calculation_LookupRef::ROW()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ROW</dd> + <dt><b>ROWS</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodROWS">PHPExcel_Calculation_LookupRef::ROWS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ROWS</dd> + <dt><b>RSQ</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodRSQ">PHPExcel_Calculation_Statistical::RSQ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;RSQ</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>$suppressFormulaErrors</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$suppressFormulaErrors">PHPExcel_Calculation::$suppressFormulaErrors</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag to determine how formula errors should be handled If true, then a user error will be triggered If false, then an exception will be thrown</dd> + <dt><b>Statistical.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html">Statistical.php</a></dd> + <dt><b>Stack.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html">Stack.php</a></dd> + <dt><b>SEARCHINSENSITIVE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSEARCHINSENSITIVE">PHPExcel_Calculation_TextData::SEARCHINSENSITIVE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SEARCHINSENSITIVE</dd> + <dt><b>SEARCHSENSITIVE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSEARCHSENSITIVE">PHPExcel_Calculation_TextData::SEARCHSENSITIVE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SEARCHSENSITIVE</dd> + <dt><b>SECONDOFMINUTE</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodSECONDOFMINUTE">PHPExcel_Calculation_DateTime::SECONDOFMINUTE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SECONDOFMINUTE</dd> + <dt><b>SEMICOLON</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constSEMICOLON">PHPExcel_Calculation_FormulaParser::SEMICOLON</a></dd> + <dt><b>SERIESSUM</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSERIESSUM">PHPExcel_Calculation_MathTrig::SERIESSUM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SERIESSUM</dd> + <dt><b>setArrayReturnType</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetArrayReturnType">PHPExcel_Calculation::setArrayReturnType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Array Return Type (Array or Value of first element in the array)</dd> + <dt><b>setCalculationCacheEnabled</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetCalculationCacheEnabled">PHPExcel_Calculation::setCalculationCacheEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Enable/disable calculation cache</dd> + <dt><b>setCalculationCacheExpirationTime</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetCalculationCacheExpirationTime">PHPExcel_Calculation::setCalculationCacheExpirationTime()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set calculation cache expiration time</dd> + <dt><b>setCategory</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodsetCategory">PHPExcel_Calculation_Function::setCategory()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Category (represented by CATEGORY_*)</dd> + <dt><b>setCompatibilityMode</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodsetCompatibilityMode">PHPExcel_Calculation_Functions::setCompatibilityMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Compatibility Mode</dd> + <dt><b>setExcelName</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodsetExcelName">PHPExcel_Calculation_Function::setExcelName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Excel name</dd> + <dt><b>setLocale</b></dt> + <dd>in file Calculation.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#methodsetLocale">PHPExcel_Calculation::setLocale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the locale code</dd> + <dt><b>setPHPExcelName</b></dt> + <dd>in file Function.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html#methodsetPHPExcelName">PHPExcel_Calculation_Function::setPHPExcelName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set PHPExcel name</dd> + <dt><b>setReturnDateType</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodsetReturnDateType">PHPExcel_Calculation_Functions::setReturnDateType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Return Date Format used by functions that return a date/time (Excel, PHP Serialized Numeric or PHP Object)</dd> + <dt><b>setTokenSubType</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodsetTokenSubType">PHPExcel_Calculation_FormulaToken::setTokenSubType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Token SubType</dd> + <dt><b>setTokenType</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodsetTokenType">PHPExcel_Calculation_FormulaToken::setTokenType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Token Type</dd> + <dt><b>setValue</b></dt> + <dd>in file FormulaToken.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#methodsetValue">PHPExcel_Calculation_FormulaToken::setValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Value</dd> + <dt><b>SIGN</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSIGN">PHPExcel_Calculation_MathTrig::SIGN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SIGN</dd> + <dt><b>SKEW</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSKEW">PHPExcel_Calculation_Statistical::SKEW()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SKEW</dd> + <dt><b>SLN</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodSLN">PHPExcel_Calculation_Financial::SLN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SLN</dd> + <dt><b>SLOPE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSLOPE">PHPExcel_Calculation_Statistical::SLOPE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SLOPE</dd> + <dt><b>SMALL</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSMALL">PHPExcel_Calculation_Statistical::SMALL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SMALL</dd> + <dt><b>SQRT2PI</b></dt> + <dd>in file Statistical.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html#defineSQRT2PI">SQRT2PI</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SQRT2PI</dd> + <dt><b>SQRTPI</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSQRTPI">PHPExcel_Calculation_MathTrig::SQRTPI()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SQRTPI</dd> + <dt><b>STANDARDIZE</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTANDARDIZE">PHPExcel_Calculation_Statistical::STANDARDIZE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STANDARDIZE</dd> + <dt><b>STATEMENT_IF</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodSTATEMENT_IF">PHPExcel_Calculation_Logical::STATEMENT_IF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STATEMENT_IF</dd> + <dt><b>STDEV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEV">PHPExcel_Calculation_Statistical::STDEV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STDEV</dd> + <dt><b>STDEVA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEVA">PHPExcel_Calculation_Statistical::STDEVA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STDEVA</dd> + <dt><b>STDEVP</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEVP">PHPExcel_Calculation_Statistical::STDEVP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STDEVP</dd> + <dt><b>STDEVPA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTDEVPA">PHPExcel_Calculation_Statistical::STDEVPA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STDEVPA</dd> + <dt><b>STEYX</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodSTEYX">PHPExcel_Calculation_Statistical::STEYX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STEYX</dd> + <dt><b>STRINGLENGTH</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSTRINGLENGTH">PHPExcel_Calculation_TextData::STRINGLENGTH()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;STRINGLENGTH</dd> + <dt><b>SUBSTITUTE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodSUBSTITUTE">PHPExcel_Calculation_TextData::SUBSTITUTE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUBSTITUTE</dd> + <dt><b>SUBTOTAL</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUBTOTAL">PHPExcel_Calculation_MathTrig::SUBTOTAL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUBTOTAL</dd> + <dt><b>SUM</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUM">PHPExcel_Calculation_MathTrig::SUM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUM</dd> + <dt><b>SUMIF</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMIF">PHPExcel_Calculation_MathTrig::SUMIF()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMIF</dd> + <dt><b>SUMPRODUCT</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMPRODUCT">PHPExcel_Calculation_MathTrig::SUMPRODUCT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMPRODUCT</dd> + <dt><b>SUMSQ</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMSQ">PHPExcel_Calculation_MathTrig::SUMSQ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMSQ</dd> + <dt><b>SUMX2MY2</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMX2MY2">PHPExcel_Calculation_MathTrig::SUMX2MY2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMX2MY2</dd> + <dt><b>SUMX2PY2</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMX2PY2">PHPExcel_Calculation_MathTrig::SUMX2PY2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMX2PY2</dd> + <dt><b>SUMXMY2</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodSUMXMY2">PHPExcel_Calculation_MathTrig::SUMXMY2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SUMXMY2</dd> + <dt><b>SYD</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodSYD">PHPExcel_Calculation_Financial::SYD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;SYD</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>TextData.php</b></dt> + <dd>procedural page <a href="PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html">TextData.php</a></dd> + <dt><b>TBILLEQ</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodTBILLEQ">PHPExcel_Calculation_Financial::TBILLEQ()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TBILLEQ</dd> + <dt><b>TBILLPRICE</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodTBILLPRICE">PHPExcel_Calculation_Financial::TBILLPRICE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TBILLPRICE</dd> + <dt><b>TBILLYIELD</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodTBILLYIELD">PHPExcel_Calculation_Financial::TBILLYIELD()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TBILLYIELD</dd> + <dt><b>TDIST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTDIST">PHPExcel_Calculation_Statistical::TDIST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TDIST</dd> + <dt><b>TEXTFORMAT</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodTEXTFORMAT">PHPExcel_Calculation_TextData::TEXTFORMAT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TEXTFORMAT</dd> + <dt><b>TIME</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodTIME">PHPExcel_Calculation_DateTime::TIME()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TIME</dd> + <dt><b>TIMEVALUE</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodTIMEVALUE">PHPExcel_Calculation_DateTime::TIMEVALUE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TIMEVALUE</dd> + <dt><b>TINV</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTINV">PHPExcel_Calculation_Statistical::TINV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TINV</dd> + <dt><b>TOKEN_SUBTYPE_CONCATENATION</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_CONCATENATION">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_CONCATENATION</a></dd> + <dt><b>TOKEN_SUBTYPE_ERROR</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_ERROR">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_ERROR</a></dd> + <dt><b>TOKEN_SUBTYPE_INTERSECTION</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_INTERSECTION">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_INTERSECTION</a></dd> + <dt><b>TOKEN_SUBTYPE_LOGICAL</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_LOGICAL">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_LOGICAL</a></dd> + <dt><b>TOKEN_SUBTYPE_MATH</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_MATH">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_MATH</a></dd> + <dt><b>TOKEN_SUBTYPE_NOTHING</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_NOTHING">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NOTHING</a></dd> + <dt><b>TOKEN_SUBTYPE_NUMBER</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_NUMBER">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_NUMBER</a></dd> + <dt><b>TOKEN_SUBTYPE_RANGE</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_RANGE">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_RANGE</a></dd> + <dt><b>TOKEN_SUBTYPE_START</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_START">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_START</a></dd> + <dt><b>TOKEN_SUBTYPE_STOP</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_STOP">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_STOP</a></dd> + <dt><b>TOKEN_SUBTYPE_TEXT</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_TEXT">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_TEXT</a></dd> + <dt><b>TOKEN_SUBTYPE_UNION</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_SUBTYPE_UNION">PHPExcel_Calculation_FormulaToken::TOKEN_SUBTYPE_UNION</a></dd> + <dt><b>TOKEN_TYPE_ARGUMENT</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_ARGUMENT">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_ARGUMENT</a></dd> + <dt><b>TOKEN_TYPE_FUNCTION</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_FUNCTION">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_FUNCTION</a></dd> + <dt><b>TOKEN_TYPE_NOOP</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_NOOP">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_NOOP</a></dd> + <dt><b>TOKEN_TYPE_OPERAND</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERAND">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERAND</a></dd> + <dt><b>TOKEN_TYPE_OPERATORINFIX</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERATORINFIX">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORINFIX</a></dd> + <dt><b>TOKEN_TYPE_OPERATORPOSTFIX</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERATORPOSTFIX">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPOSTFIX</a></dd> + <dt><b>TOKEN_TYPE_OPERATORPREFIX</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_OPERATORPREFIX">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_OPERATORPREFIX</a></dd> + <dt><b>TOKEN_TYPE_SUBEXPRESSION</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_SUBEXPRESSION">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_SUBEXPRESSION</a></dd> + <dt><b>TOKEN_TYPE_UNKNOWN</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_UNKNOWN">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_UNKNOWN</a></dd> + <dt><b>TOKEN_TYPE_WHITESPACE</b></dt> + <dd>in file FormulaToken.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html#constTOKEN_TYPE_WHITESPACE">PHPExcel_Calculation_FormulaToken::TOKEN_TYPE_WHITESPACE</a></dd> + <dt><b>TRANSPOSE</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodTRANSPOSE">PHPExcel_Calculation_LookupRef::TRANSPOSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRANSPOSE</dd> + <dt><b>TREND</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTREND">PHPExcel_Calculation_Statistical::TREND()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TREND</dd> + <dt><b>TRIMMEAN</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodTRIMMEAN">PHPExcel_Calculation_Statistical::TRIMMEAN()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRIMMEAN</dd> + <dt><b>TRIMNONPRINTABLE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodTRIMNONPRINTABLE">PHPExcel_Calculation_TextData::TRIMNONPRINTABLE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRIMNONPRINTABLE</dd> + <dt><b>TRIMSPACES</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodTRIMSPACES">PHPExcel_Calculation_TextData::TRIMSPACES()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRIMSPACES</dd> + <dt><b>TRUE</b></dt> + <dd>in file Logical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html#methodTRUE">PHPExcel_Calculation_Logical::TRUE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRUE</dd> + <dt><b>TRUNC</b></dt> + <dd>in file MathTrig.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html#methodTRUNC">PHPExcel_Calculation_MathTrig::TRUNC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TRUNC</dd> + <dt><b>TYPE</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodTYPE">PHPExcel_Calculation_Functions::TYPE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;TYPE</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="u"></a> + <div> + <h2>u</h2> + <dl> + <dt><b>UPPERCASE</b></dt> + <dd>in file TextData.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html#methodUPPERCASE">PHPExcel_Calculation_TextData::UPPERCASE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;UPPERCASE</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="v"></a> + <div> + <h2>v</h2> + <dl> + <dt><b>VALUE</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodVALUE">PHPExcel_Calculation_Functions::VALUE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VALUE</dd> + <dt><b>VARA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARA">PHPExcel_Calculation_Statistical::VARA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VARA</dd> + <dt><b>VARFunc</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARFunc">PHPExcel_Calculation_Statistical::VARFunc()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VARFunc</dd> + <dt><b>VARP</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARP">PHPExcel_Calculation_Statistical::VARP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VARP</dd> + <dt><b>VARPA</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodVARPA">PHPExcel_Calculation_Statistical::VARPA()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VARPA</dd> + <dt><b>VERSION</b></dt> + <dd>in file Functions.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html#methodVERSION">PHPExcel_Calculation_Functions::VERSION()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VERSION</dd> + <dt><b>VLOOKUP</b></dt> + <dd>in file LookupRef.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodVLOOKUP">PHPExcel_Calculation_LookupRef::VLOOKUP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;VLOOKUP The VLOOKUP function searches for value in the left-most column of lookup_array and returns the value in the same row based on the index_number.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="w"></a> + <div> + <h2>w</h2> + <dl> + <dt><b>$writeDebugLog</b></dt> + <dd>in file Calculation.php, variable <a href="PHPExcel_Calculation/PHPExcel_Calculation.html#var$writeDebugLog">PHPExcel_Calculation::$writeDebugLog</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag to determine whether a debug log should be generated by the calculation engine If true, then a debug log will be generated If false, then a debug log will not be generated</dd> + <dt><b>WEEKOFYEAR</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodWEEKOFYEAR">PHPExcel_Calculation_DateTime::WEEKOFYEAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;WEEKOFYEAR</dd> + <dt><b>WEIBULL</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodWEIBULL">PHPExcel_Calculation_Statistical::WEIBULL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;WEIBULL</dd> + <dt><b>WHITESPACE</b></dt> + <dd>in file FormulaParser.php, class constant <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html#constWHITESPACE">PHPExcel_Calculation_FormulaParser::WHITESPACE</a></dd> + <dt><b>WORKDAY</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodWORKDAY">PHPExcel_Calculation_DateTime::WORKDAY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;WORKDAY</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="x"></a> + <div> + <h2>x</h2> + <dl> + <dt><b>XIRR</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodXIRR">PHPExcel_Calculation_Financial::XIRR()</a></dd> + <dt><b>XMININ</b></dt> + <dd>in file Statistical.php, constant <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html#defineXMININ">XMININ</a><br>&nbsp;&nbsp;&nbsp;&nbsp;XMININ</dd> + <dt><b>XNPV</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodXNPV">PHPExcel_Calculation_Financial::XNPV()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;XNPV</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="y"></a> + <div> + <h2>y</h2> + <dl> + <dt><b>YEAR</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodYEAR">PHPExcel_Calculation_DateTime::YEAR()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;YEAR</dd> + <dt><b>YEARFRAC</b></dt> + <dd>in file DateTime.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html#methodYEARFRAC">PHPExcel_Calculation_DateTime::YEARFRAC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;YEARFRAC</dd> + <dt><b>YIELDDISC</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodYIELDDISC">PHPExcel_Calculation_Financial::YIELDDISC()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;YIELDDISC</dd> + <dt><b>YIELDMAT</b></dt> + <dd>in file Financial.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html#methodYIELDMAT">PHPExcel_Calculation_Financial::YIELDMAT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;YIELDMAT</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <hr /> + <a name="z"></a> + <div> + <h2>z</h2> + <dl> + <dt><b>ZTEST</b></dt> + <dd>in file Statistical.php, method <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodZTEST">PHPExcel_Calculation_Statistical::ZTEST()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;ZTEST</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Calculation.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Cell.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Cell.html new file mode 100644 index 0000000..e23876b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Cell.html @@ -0,0 +1,503 @@ +<html> +<head> +<title>Package PHPExcel_Cell Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Cell</h1> + [ <a href="elementindex_PHPExcel_Cell.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#b">b</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#e">e</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#h">h</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#n">n</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#o">o</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Cell.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>__clone</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#method__clone">PHPExcel_Cell_DataValidation::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#method__clone">PHPExcel_Cell::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__construct</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#method__construct">PHPExcel_Cell_DataValidation::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Cell_DataValidation</dd> + <dt><b>__construct</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#method__construct">PHPExcel_Cell::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new Cell</dd> + <dt><b>__construct</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#method__construct">PHPExcel_Cell_Hyperlink::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Cell_Hyperlink</dd> + <dt><b>__toString</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#method__toString">PHPExcel_Cell::__toString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert to string</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>absoluteCoordinate</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodabsoluteCoordinate">PHPExcel_Cell::absoluteCoordinate()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Make string coordinate absolute</dd> + <dt><b>absoluteReference</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodabsoluteReference">PHPExcel_Cell::absoluteReference()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Make string row, column or cell coordinate absolute</dd> + <dt><b>attach</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodattach">PHPExcel_Cell::attach()</a></dd> + <dt><b>AdvancedValueBinder.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html">AdvancedValueBinder.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>bindValue</b></dt> + <dd>in file DefaultValueBinder.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html#methodbindValue">PHPExcel_Cell_DefaultValueBinder::bindValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind value to a cell</dd> + <dt><b>bindValue</b></dt> + <dd>in file AdvancedValueBinder.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html#methodbindValue">PHPExcel_Cell_AdvancedValueBinder::bindValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind value to a cell</dd> + <dt><b>bindValue</b></dt> + <dd>in file IValueBinder.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html#methodbindValue">PHPExcel_Cell_IValueBinder::bindValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind value to a cell</dd> + <dt><b>buildRange</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodbuildRange">PHPExcel_Cell::buildRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build range from coordinate strings</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>checkErrorCode</b></dt> + <dd>in file DataType.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#methodcheckErrorCode">PHPExcel_Cell_DataType::checkErrorCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check a value that it is a valid error code</dd> + <dt><b>checkString</b></dt> + <dd>in file DataType.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#methodcheckString">PHPExcel_Cell_DataType::checkString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check a string that it satisfies Excel requirements</dd> + <dt><b>columnIndexFromString</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodcolumnIndexFromString">PHPExcel_Cell::columnIndexFromString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Column index from string</dd> + <dt><b>compareCells</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodcompareCells">PHPExcel_Cell::compareCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Compare 2 cells</dd> + <dt><b>coordinateFromString</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodcoordinateFromString">PHPExcel_Cell::coordinateFromString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Coordinate from string</dd> + <dt><b>Cell.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell.php.html">Cell.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>dataTypeForValue</b></dt> + <dd>in file DefaultValueBinder.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html#methoddataTypeForValue">PHPExcel_Cell_DefaultValueBinder::dataTypeForValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DataType for value</dd> + <dt><b>dataTypeForValue</b></dt> + <dd>in file DataType.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#methoddataTypeForValue">PHPExcel_Cell_DataType::dataTypeForValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;DataType for value</dd> + <dt><b>DEFAULT_RANGE</b></dt> + <dd>in file Cell.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell.html#constDEFAULT_RANGE">PHPExcel_Cell::DEFAULT_RANGE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Default range variable constant</dd> + <dt><b>detach</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methoddetach">PHPExcel_Cell::detach()</a></dd> + <dt><b>DataType.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html">DataType.php</a></dd> + <dt><b>DataValidation.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html">DataValidation.php</a></dd> + <dt><b>DefaultValueBinder.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html">DefaultValueBinder.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>extractAllCellReferencesInRange</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodextractAllCellReferencesInRange">PHPExcel_Cell::extractAllCellReferencesInRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Extract all cell references in range</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getAllowBlank</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetAllowBlank">PHPExcel_Cell_DataValidation::getAllowBlank()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Allow Blank</dd> + <dt><b>getCalculatedValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetCalculatedValue">PHPExcel_Cell::getCalculatedValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get calculated cell value</dd> + <dt><b>getColumn</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetColumn">PHPExcel_Cell::getColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell coordinate column</dd> + <dt><b>getCoordinate</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetCoordinate">PHPExcel_Cell::getCoordinate()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell coordinate</dd> + <dt><b>getDataType</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetDataType">PHPExcel_Cell::getDataType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell data type</dd> + <dt><b>getDataValidation</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetDataValidation">PHPExcel_Cell::getDataValidation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Data validation rules</dd> + <dt><b>getError</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetError">PHPExcel_Cell_DataValidation::getError()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Error</dd> + <dt><b>getErrorCodes</b></dt> + <dd>in file DataType.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#methodgetErrorCodes">PHPExcel_Cell_DataType::getErrorCodes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get list of error codes</dd> + <dt><b>getErrorStyle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetErrorStyle">PHPExcel_Cell_DataValidation::getErrorStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Error style</dd> + <dt><b>getErrorTitle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetErrorTitle">PHPExcel_Cell_DataValidation::getErrorTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Error title</dd> + <dt><b>getFormattedValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetFormattedValue">PHPExcel_Cell::getFormattedValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell value with formatting</dd> + <dt><b>getFormula1</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetFormula1">PHPExcel_Cell_DataValidation::getFormula1()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Formula 1</dd> + <dt><b>getFormula2</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetFormula2">PHPExcel_Cell_DataValidation::getFormula2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Formula 2</dd> + <dt><b>getFormulaAttributes</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetFormulaAttributes">PHPExcel_Cell::getFormulaAttributes()</a></dd> + <dt><b>getHashCode</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodgetHashCode">PHPExcel_Cell_Hyperlink::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetHashCode">PHPExcel_Cell_DataValidation::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHyperlink</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetHyperlink">PHPExcel_Cell::getHyperlink()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Hyperlink</dd> + <dt><b>getOldCalculatedValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetOldCalculatedValue">PHPExcel_Cell::getOldCalculatedValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get old calculated value (cached) This returns the value last calculated by MS Excel or whichever spreadsheet program was used to create the original spreadsheet file.</dd> + <dt><b>getOperator</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetOperator">PHPExcel_Cell_DataValidation::getOperator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Operator</dd> + <dt><b>getParent</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetParent">PHPExcel_Cell::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get parent worksheet</dd> + <dt><b>getPrompt</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetPrompt">PHPExcel_Cell_DataValidation::getPrompt()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Prompt</dd> + <dt><b>getPromptTitle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetPromptTitle">PHPExcel_Cell_DataValidation::getPromptTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Prompt title</dd> + <dt><b>getRangeBoundaries</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetRangeBoundaries">PHPExcel_Cell::getRangeBoundaries()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate range boundaries</dd> + <dt><b>getRow</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetRow">PHPExcel_Cell::getRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell coordinate row</dd> + <dt><b>getShowDropDown</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetShowDropDown">PHPExcel_Cell_DataValidation::getShowDropDown()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Show DropDown</dd> + <dt><b>getShowErrorMessage</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetShowErrorMessage">PHPExcel_Cell_DataValidation::getShowErrorMessage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Show ErrorMessage</dd> + <dt><b>getShowInputMessage</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetShowInputMessage">PHPExcel_Cell_DataValidation::getShowInputMessage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Show InputMessage</dd> + <dt><b>getTooltip</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodgetTooltip">PHPExcel_Cell_Hyperlink::getTooltip()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get tooltip</dd> + <dt><b>getType</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodgetType">PHPExcel_Cell_DataValidation::getType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Type</dd> + <dt><b>getUrl</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodgetUrl">PHPExcel_Cell_Hyperlink::getUrl()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get URL</dd> + <dt><b>getValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetValue">PHPExcel_Cell::getValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell value</dd> + <dt><b>getValueBinder</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetValueBinder">PHPExcel_Cell::getValueBinder()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get value binder to use</dd> + <dt><b>getXfIndex</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodgetXfIndex">PHPExcel_Cell::getXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get index to cellXf</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="h"></a> + <div> + <h2>h</h2> + <dl> + <dt><b>hasDataValidation</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodhasDataValidation">PHPExcel_Cell::hasDataValidation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Does this cell contain Data validation rules?</dd> + <dt><b>hasHyperlink</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodhasHyperlink">PHPExcel_Cell::hasHyperlink()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Does this cell contain a Hyperlink?</dd> + <dt><b>Hyperlink.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html">Hyperlink.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>isInRange</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodisInRange">PHPExcel_Cell::isInRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is cell in a specific range?</dd> + <dt><b>isInternal</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodisInternal">PHPExcel_Cell_Hyperlink::isInternal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this hyperlink internal? (to another sheet)</dd> + <dt><b>IValueBinder.php</b></dt> + <dd>procedural page <a href="PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html">IValueBinder.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="n"></a> + <div> + <h2>n</h2> + <dl> + <dt><b>notifyCacheController</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodnotifyCacheController">PHPExcel_Cell::notifyCacheController()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Send notification to the cache controller</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="o"></a> + <div> + <h2>o</h2> + <dl> + <dt><b>OPERATOR_BETWEEN</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_BETWEEN">PHPExcel_Cell_DataValidation::OPERATOR_BETWEEN</a></dd> + <dt><b>OPERATOR_EQUAL</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_EQUAL">PHPExcel_Cell_DataValidation::OPERATOR_EQUAL</a></dd> + <dt><b>OPERATOR_GREATERTHAN</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_GREATERTHAN">PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHAN</a></dd> + <dt><b>OPERATOR_GREATERTHANOREQUAL</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_GREATERTHANOREQUAL">PHPExcel_Cell_DataValidation::OPERATOR_GREATERTHANOREQUAL</a></dd> + <dt><b>OPERATOR_LESSTHAN</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_LESSTHAN">PHPExcel_Cell_DataValidation::OPERATOR_LESSTHAN</a></dd> + <dt><b>OPERATOR_LESSTHANOREQUAL</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_LESSTHANOREQUAL">PHPExcel_Cell_DataValidation::OPERATOR_LESSTHANOREQUAL</a></dd> + <dt><b>OPERATOR_NOTBETWEEN</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_NOTBETWEEN">PHPExcel_Cell_DataValidation::OPERATOR_NOTBETWEEN</a></dd> + <dt><b>OPERATOR_NOTEQUAL</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constOPERATOR_NOTEQUAL">PHPExcel_Cell_DataValidation::OPERATOR_NOTEQUAL</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PHPExcel_Cell</b></dt> + <dd>in file Cell.php, class <a href="PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell</dd> + <dt><b>PHPExcel_Cell_AdvancedValueBinder</b></dt> + <dd>in file AdvancedValueBinder.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_AdvancedValueBinder</dd> + <dt><b>PHPExcel_Cell_DataType</b></dt> + <dd>in file DataType.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_DataType</dd> + <dt><b>PHPExcel_Cell_DataValidation</b></dt> + <dd>in file DataValidation.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_DataValidation</dd> + <dt><b>PHPExcel_Cell_DefaultValueBinder</b></dt> + <dd>in file DefaultValueBinder.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_DefaultValueBinder</dd> + <dt><b>PHPExcel_Cell_Hyperlink</b></dt> + <dd>in file Hyperlink.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_Hyperlink</dd> + <dt><b>PHPExcel_Cell_IValueBinder</b></dt> + <dd>in file IValueBinder.php, class <a href="PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Cell_IValueBinder</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>rangeBoundaries</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodrangeBoundaries">PHPExcel_Cell::rangeBoundaries()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate range boundaries</dd> + <dt><b>rangeDimension</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodrangeDimension">PHPExcel_Cell::rangeDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate range dimension</dd> + <dt><b>rebindParent</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodrebindParent">PHPExcel_Cell::rebindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Re-bind parent</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>setAllowBlank</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetAllowBlank">PHPExcel_Cell_DataValidation::setAllowBlank()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Allow Blank</dd> + <dt><b>setCalculatedValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetCalculatedValue">PHPExcel_Cell::setCalculatedValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set old calculated value (cached)</dd> + <dt><b>setDataType</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetDataType">PHPExcel_Cell::setDataType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set cell data type</dd> + <dt><b>setDataValidation</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetDataValidation">PHPExcel_Cell::setDataValidation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Data validation rules</dd> + <dt><b>setError</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetError">PHPExcel_Cell_DataValidation::setError()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Error</dd> + <dt><b>setErrorStyle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetErrorStyle">PHPExcel_Cell_DataValidation::setErrorStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Error style</dd> + <dt><b>setErrorTitle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetErrorTitle">PHPExcel_Cell_DataValidation::setErrorTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Error title</dd> + <dt><b>setFormula1</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetFormula1">PHPExcel_Cell_DataValidation::setFormula1()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Formula 1</dd> + <dt><b>setFormula2</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetFormula2">PHPExcel_Cell_DataValidation::setFormula2()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Formula 2</dd> + <dt><b>setFormulaAttributes</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetFormulaAttributes">PHPExcel_Cell::setFormulaAttributes()</a></dd> + <dt><b>setHyperlink</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetHyperlink">PHPExcel_Cell::setHyperlink()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Hyperlink</dd> + <dt><b>setOperator</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetOperator">PHPExcel_Cell_DataValidation::setOperator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Operator</dd> + <dt><b>setPrompt</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetPrompt">PHPExcel_Cell_DataValidation::setPrompt()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Prompt</dd> + <dt><b>setPromptTitle</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetPromptTitle">PHPExcel_Cell_DataValidation::setPromptTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Prompt title</dd> + <dt><b>setShowDropDown</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetShowDropDown">PHPExcel_Cell_DataValidation::setShowDropDown()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Show DropDown</dd> + <dt><b>setShowErrorMessage</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetShowErrorMessage">PHPExcel_Cell_DataValidation::setShowErrorMessage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Show ErrorMessage</dd> + <dt><b>setShowInputMessage</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetShowInputMessage">PHPExcel_Cell_DataValidation::setShowInputMessage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Show InputMessage</dd> + <dt><b>setTooltip</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodsetTooltip">PHPExcel_Cell_Hyperlink::setTooltip()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set tooltip</dd> + <dt><b>setType</b></dt> + <dd>in file DataValidation.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#methodsetType">PHPExcel_Cell_DataValidation::setType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Type</dd> + <dt><b>setUrl</b></dt> + <dd>in file Hyperlink.php, method <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html#methodsetUrl">PHPExcel_Cell_Hyperlink::setUrl()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set URL</dd> + <dt><b>setValue</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetValue">PHPExcel_Cell::setValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set cell value</dd> + <dt><b>setValueBinder</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetValueBinder">PHPExcel_Cell::setValueBinder()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set value binder to use</dd> + <dt><b>setValueExplicit</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetValueExplicit">PHPExcel_Cell::setValueExplicit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the value for a cell, with the explicit data type passed to the method (bypassing any use of the value binder)</dd> + <dt><b>setXfIndex</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsetXfIndex">PHPExcel_Cell::setXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set index to cellXf</dd> + <dt><b>splitRange</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodsplitRange">PHPExcel_Cell::splitRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Split range into coordinate strings</dd> + <dt><b>stringFromColumnIndex</b></dt> + <dd>in file Cell.php, method <a href="PHPExcel_Cell/PHPExcel_Cell.html#methodstringFromColumnIndex">PHPExcel_Cell::stringFromColumnIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;String from columnindex</dd> + <dt><b>STYLE_INFORMATION</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constSTYLE_INFORMATION">PHPExcel_Cell_DataValidation::STYLE_INFORMATION</a></dd> + <dt><b>STYLE_STOP</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constSTYLE_STOP">PHPExcel_Cell_DataValidation::STYLE_STOP</a></dd> + <dt><b>STYLE_WARNING</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constSTYLE_WARNING">PHPExcel_Cell_DataValidation::STYLE_WARNING</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>TYPE_BOOL</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_BOOL">PHPExcel_Cell_DataType::TYPE_BOOL</a></dd> + <dt><b>TYPE_CUSTOM</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_CUSTOM">PHPExcel_Cell_DataValidation::TYPE_CUSTOM</a></dd> + <dt><b>TYPE_DATE</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_DATE">PHPExcel_Cell_DataValidation::TYPE_DATE</a></dd> + <dt><b>TYPE_DECIMAL</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_DECIMAL">PHPExcel_Cell_DataValidation::TYPE_DECIMAL</a></dd> + <dt><b>TYPE_ERROR</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_ERROR">PHPExcel_Cell_DataType::TYPE_ERROR</a></dd> + <dt><b>TYPE_FORMULA</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_FORMULA">PHPExcel_Cell_DataType::TYPE_FORMULA</a></dd> + <dt><b>TYPE_INLINE</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_INLINE">PHPExcel_Cell_DataType::TYPE_INLINE</a></dd> + <dt><b>TYPE_LIST</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_LIST">PHPExcel_Cell_DataValidation::TYPE_LIST</a></dd> + <dt><b>TYPE_NONE</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_NONE">PHPExcel_Cell_DataValidation::TYPE_NONE</a></dd> + <dt><b>TYPE_NULL</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_NULL">PHPExcel_Cell_DataType::TYPE_NULL</a></dd> + <dt><b>TYPE_NUMERIC</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_NUMERIC">PHPExcel_Cell_DataType::TYPE_NUMERIC</a></dd> + <dt><b>TYPE_STRING</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_STRING">PHPExcel_Cell_DataType::TYPE_STRING</a></dd> + <dt><b>TYPE_STRING2</b></dt> + <dd>in file DataType.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html#constTYPE_STRING2">PHPExcel_Cell_DataType::TYPE_STRING2</a></dd> + <dt><b>TYPE_TEXTLENGTH</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_TEXTLENGTH">PHPExcel_Cell_DataValidation::TYPE_TEXTLENGTH</a></dd> + <dt><b>TYPE_TIME</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_TIME">PHPExcel_Cell_DataValidation::TYPE_TIME</a></dd> + <dt><b>TYPE_WHOLE</b></dt> + <dd>in file DataValidation.php, class constant <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html#constTYPE_WHOLE">PHPExcel_Cell_DataValidation::TYPE_WHOLE</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Cell.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:03 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Chart.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Chart.html new file mode 100644 index 0000000..b052878 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Chart.html @@ -0,0 +1,602 @@ +<html> +<head> +<title>Package PHPExcel_Chart Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Chart</h1> + [ <a href="elementindex_PHPExcel_Chart.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#e">e</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#j">j</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#l">l</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#m">m</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#x">x</a> ] + [ <a href="elementindex_PHPExcel_Chart.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>__construct</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#method__construct">PHPExcel_Chart_PlotArea::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_PlotArea</dd> + <dt><b>__construct</b></dt> + <dd>in file Title.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html#method__construct">PHPExcel_Chart_Title::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_Title</dd> + <dt><b>__construct</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#method__construct">PHPExcel_Chart_Legend::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_Legend</dd> + <dt><b>__construct</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#method__construct">PHPExcel_Chart_Layout::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_Layout</dd> + <dt><b>__construct</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#method__construct">PHPExcel_Chart_DataSeries::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_DataSeries</dd> + <dt><b>__construct</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#method__construct">PHPExcel_Chart_DataSeriesValues::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_DataSeriesValues object</dd> + <dt><b>__construct</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#method__construct">PHPExcel_Chart::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>Chart.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart.php.html">Chart.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>DATASERIES_TYPE_NUMBER</b></dt> + <dd>in file DataSeriesValues.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#constDATASERIES_TYPE_NUMBER">PHPExcel_Chart_DataSeriesValues::DATASERIES_TYPE_NUMBER</a></dd> + <dt><b>DATASERIES_TYPE_STRING</b></dt> + <dd>in file DataSeriesValues.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#constDATASERIES_TYPE_STRING">PHPExcel_Chart_DataSeriesValues::DATASERIES_TYPE_STRING</a></dd> + <dt><b>DIRECTION_BAR</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_BAR">PHPExcel_Chart_DataSeries::DIRECTION_BAR</a></dd> + <dt><b>DIRECTION_COL</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_COL">PHPExcel_Chart_DataSeries::DIRECTION_COL</a></dd> + <dt><b>DIRECTION_COLUMN</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_COLUMN">PHPExcel_Chart_DataSeries::DIRECTION_COLUMN</a></dd> + <dt><b>DIRECTION_HORIZONTAL</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_HORIZONTAL">PHPExcel_Chart_DataSeries::DIRECTION_HORIZONTAL</a></dd> + <dt><b>DIRECTION_VERTICAL</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constDIRECTION_VERTICAL">PHPExcel_Chart_DataSeries::DIRECTION_VERTICAL</a></dd> + <dt><b>DataSeries.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html">DataSeries.php</a></dd> + <dt><b>DataSeriesValues.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html">DataSeriesValues.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>errorHandlerCallback</b></dt> + <dd>in file Exception.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Exception.html#methoderrorHandlerCallback">PHPExcel_Chart_Exception::errorHandlerCallback()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Error handler callback</dd> + <dt><b>Exception.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html">Exception.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getBottomRightCell</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightCell">PHPExcel_Chart::getBottomRightCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the cell address where the bottom right of the chart is fixed</dd> + <dt><b>getBottomRightOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightOffset">PHPExcel_Chart::getBottomRightOffset()</a></dd> + <dt><b>getBottomRightPosition</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightPosition">PHPExcel_Chart::getBottomRightPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the bottom right position of the chart</dd> + <dt><b>getBottomRightXOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightXOffset">PHPExcel_Chart::getBottomRightXOffset()</a></dd> + <dt><b>getBottomRightYOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetBottomRightYOffset">PHPExcel_Chart::getBottomRightYOffset()</a></dd> + <dt><b>getCaption</b></dt> + <dd>in file Title.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html#methodgetCaption">PHPExcel_Chart_Title::getCaption()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get caption</dd> + <dt><b>getDataSource</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataSource">PHPExcel_Chart_DataSeriesValues::getDataSource()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Series Data Source (formula)</dd> + <dt><b>getDataType</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataType">PHPExcel_Chart_DataSeriesValues::getDataType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Series Data Type</dd> + <dt><b>getDataValue</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataValue">PHPExcel_Chart_DataSeriesValues::getDataValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the first Series Data value</dd> + <dt><b>getDataValues</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetDataValues">PHPExcel_Chart_DataSeriesValues::getDataValues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Series Data Values</dd> + <dt><b>getDisplayBlanksAs</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetDisplayBlanksAs">PHPExcel_Chart::getDisplayBlanksAs()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Display Blanks as</dd> + <dt><b>getFormatCode</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetFormatCode">PHPExcel_Chart_DataSeriesValues::getFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Series Format Code</dd> + <dt><b>getHeight</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetHeight">PHPExcel_Chart_Layout::getHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Height</dd> + <dt><b>getLayout</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetLayout">PHPExcel_Chart_PlotArea::getLayout()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Layout</dd> + <dt><b>getLayout</b></dt> + <dd>in file Title.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html#methodgetLayout">PHPExcel_Chart_Title::getLayout()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Layout</dd> + <dt><b>getLayout</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetLayout">PHPExcel_Chart_Legend::getLayout()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Layout</dd> + <dt><b>getLayoutTarget</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetLayoutTarget">PHPExcel_Chart_Layout::getLayoutTarget()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Layout Target</dd> + <dt><b>getLegend</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetLegend">PHPExcel_Chart::getLegend()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Legend</dd> + <dt><b>getName</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetName">PHPExcel_Chart::getName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Name</dd> + <dt><b>getOverlay</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetOverlay">PHPExcel_Chart_Legend::getOverlay()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get allow overlay of other elements?</dd> + <dt><b>getPlotArea</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetPlotArea">PHPExcel_Chart::getPlotArea()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Area</dd> + <dt><b>getPlotCategories</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotCategories">PHPExcel_Chart_DataSeries::getPlotCategories()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Categories</dd> + <dt><b>getPlotCategoryByIndex</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotCategoryByIndex">PHPExcel_Chart_DataSeries::getPlotCategoryByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Category by Index</dd> + <dt><b>getPlotDirection</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotDirection">PHPExcel_Chart_DataSeries::getPlotDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Direction</dd> + <dt><b>getPlotGroup</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotGroup">PHPExcel_Chart_PlotArea::getPlotGroup()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Series</dd> + <dt><b>getPlotGroupByIndex</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotGroupByIndex">PHPExcel_Chart_PlotArea::getPlotGroupByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Series by Index</dd> + <dt><b>getPlotGroupCount</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotGroupCount">PHPExcel_Chart_PlotArea::getPlotGroupCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Number of Plot Groups</dd> + <dt><b>getPlotGrouping</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotGrouping">PHPExcel_Chart_DataSeries::getPlotGrouping()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Grouping Type</dd> + <dt><b>getPlotLabelByIndex</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotLabelByIndex">PHPExcel_Chart_DataSeries::getPlotLabelByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Label by Index</dd> + <dt><b>getPlotLabels</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotLabels">PHPExcel_Chart_DataSeries::getPlotLabels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Labels</dd> + <dt><b>getPlotOrder</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotOrder">PHPExcel_Chart_DataSeries::getPlotOrder()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Order</dd> + <dt><b>getPlotSeriesCount</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodgetPlotSeriesCount">PHPExcel_Chart_PlotArea::getPlotSeriesCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Number of Plot Series</dd> + <dt><b>getPlotSeriesCount</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotSeriesCount">PHPExcel_Chart_DataSeries::getPlotSeriesCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Number of Plot Series</dd> + <dt><b>getPlotStyle</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotStyle">PHPExcel_Chart_DataSeries::getPlotStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Style</dd> + <dt><b>getPlotType</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotType">PHPExcel_Chart_DataSeries::getPlotType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Type</dd> + <dt><b>getPlotValues</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotValues">PHPExcel_Chart_DataSeries::getPlotValues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Values</dd> + <dt><b>getPlotValuesByIndex</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetPlotValuesByIndex">PHPExcel_Chart_DataSeries::getPlotValuesByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Values by Index</dd> + <dt><b>getPlotVisibleOnly</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetPlotVisibleOnly">PHPExcel_Chart::getPlotVisibleOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Plot Visible Only</dd> + <dt><b>getPointCount</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetPointCount">PHPExcel_Chart_DataSeriesValues::getPointCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Series Point Count</dd> + <dt><b>getPointMarker</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodgetPointMarker">PHPExcel_Chart_DataSeriesValues::getPointMarker()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Point Marker</dd> + <dt><b>getPosition</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetPosition">PHPExcel_Chart_Legend::getPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get legend position as an excel string value</dd> + <dt><b>getPositionXL</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodgetPositionXL">PHPExcel_Chart_Legend::getPositionXL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get legend position as an Excel internal numeric value</dd> + <dt><b>getShowBubbleSize</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowBubbleSize">PHPExcel_Chart_Layout::getShowBubbleSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show bubble size</dd> + <dt><b>getShowCatName</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowCatName">PHPExcel_Chart_Layout::getShowCatName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show category name</dd> + <dt><b>getShowLeaderLines</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowLeaderLines">PHPExcel_Chart_Layout::getShowLeaderLines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show leader lines</dd> + <dt><b>getShowLegendKey</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowLegendKey">PHPExcel_Chart_Layout::getShowLegendKey()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show legend key</dd> + <dt><b>getShowPercent</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowPercent">PHPExcel_Chart_Layout::getShowPercent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show percentage</dd> + <dt><b>getShowSerName</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowSerName">PHPExcel_Chart_Layout::getShowSerName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show data series name</dd> + <dt><b>getShowVal</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetShowVal">PHPExcel_Chart_Layout::getShowVal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get show value</dd> + <dt><b>getSmoothLine</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodgetSmoothLine">PHPExcel_Chart_DataSeries::getSmoothLine()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Smooth Line</dd> + <dt><b>getTitle</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTitle">PHPExcel_Chart::getTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Title</dd> + <dt><b>getTopLeftCell</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftCell">PHPExcel_Chart::getTopLeftCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the cell address where the top left of the chart is fixed</dd> + <dt><b>getTopLeftOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftOffset">PHPExcel_Chart::getTopLeftOffset()</a></dd> + <dt><b>getTopLeftPosition</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftPosition">PHPExcel_Chart::getTopLeftPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the top left position of the chart</dd> + <dt><b>getTopLeftXOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftXOffset">PHPExcel_Chart::getTopLeftXOffset()</a></dd> + <dt><b>getTopLeftYOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetTopLeftYOffset">PHPExcel_Chart::getTopLeftYOffset()</a></dd> + <dt><b>getWidth</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetWidth">PHPExcel_Chart_Layout::getWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Width</dd> + <dt><b>getWorksheet</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetWorksheet">PHPExcel_Chart::getWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Worksheet</dd> + <dt><b>getXAxisLabel</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetXAxisLabel">PHPExcel_Chart::getXAxisLabel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get X-Axis Label</dd> + <dt><b>getXMode</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetXMode">PHPExcel_Chart_Layout::getXMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get X-Mode</dd> + <dt><b>getXPosition</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetXPosition">PHPExcel_Chart_Layout::getXPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get X-Position</dd> + <dt><b>getYAxisLabel</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodgetYAxisLabel">PHPExcel_Chart::getYAxisLabel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Y-Axis Label</dd> + <dt><b>getYMode</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetYMode">PHPExcel_Chart_Layout::getYMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Y-Mode</dd> + <dt><b>getYPosition</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodgetYPosition">PHPExcel_Chart_Layout::getYPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Y-Position</dd> + <dt><b>GROUPING_CLUSTERED</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_CLUSTERED">PHPExcel_Chart_DataSeries::GROUPING_CLUSTERED</a></dd> + <dt><b>GROUPING_PERCENT_STACKED</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_PERCENT_STACKED">PHPExcel_Chart_DataSeries::GROUPING_PERCENT_STACKED</a></dd> + <dt><b>GROUPING_STACKED</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_STACKED">PHPExcel_Chart_DataSeries::GROUPING_STACKED</a></dd> + <dt><b>GROUPING_STANDARD</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constGROUPING_STANDARD">PHPExcel_Chart_DataSeries::GROUPING_STANDARD</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>isMultiLevelSeries</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodisMultiLevelSeries">PHPExcel_Chart_DataSeriesValues::isMultiLevelSeries()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify if the Data Series is a multi-level or a simple series</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="j"></a> + <div> + <h2>j</h2> + <dl> + <dt><b>jpgraph.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html">jpgraph.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="l"></a> + <div> + <h2>l</h2> + <dl> + <dt><b>Layout.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html">Layout.php</a></dd> + <dt><b>Legend.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html">Legend.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="m"></a> + <div> + <h2>m</h2> + <dl> + <dt><b>multiLevelCount</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodmultiLevelCount">PHPExcel_Chart_DataSeriesValues::multiLevelCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the level count of a multi-level Data Series</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PlotArea.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html">PlotArea.php</a></dd> + <dt><b>PHPExcel_Chart</b></dt> + <dd>in file Chart.php, class <a href="PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart</dd> + <dt><b>PHPExcel_Chart_DataSeries</b></dt> + <dd>in file DataSeries.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_DataSeries</dd> + <dt><b>PHPExcel_Chart_DataSeriesValues</b></dt> + <dd>in file DataSeriesValues.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_DataSeriesValues</dd> + <dt><b>PHPExcel_Chart_Exception</b></dt> + <dd>in file Exception.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_Exception</dd> + <dt><b>PHPExcel_Chart_Layout</b></dt> + <dd>in file Layout.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_Layout</dd> + <dt><b>PHPExcel_Chart_Legend</b></dt> + <dd>in file Legend.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_Legend</dd> + <dt><b>PHPExcel_Chart_PlotArea</b></dt> + <dd>in file PlotArea.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_PlotArea</dd> + <dt><b>PHPExcel_Chart_Title</b></dt> + <dd>in file Title.php, class <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_Title</dd> + <dt><b>POSITION_BOTTOM</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_BOTTOM">PHPExcel_Chart_Legend::POSITION_BOTTOM</a></dd> + <dt><b>POSITION_LEFT</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_LEFT">PHPExcel_Chart_Legend::POSITION_LEFT</a></dd> + <dt><b>POSITION_RIGHT</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_RIGHT">PHPExcel_Chart_Legend::POSITION_RIGHT</a></dd> + <dt><b>POSITION_TOP</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_TOP">PHPExcel_Chart_Legend::POSITION_TOP</a></dd> + <dt><b>POSITION_TOPRIGHT</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constPOSITION_TOPRIGHT">PHPExcel_Chart_Legend::POSITION_TOPRIGHT</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>refresh</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodrefresh">PHPExcel_Chart_PlotArea::refresh()</a></dd> + <dt><b>refresh</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodrefresh">PHPExcel_Chart_DataSeriesValues::refresh()</a></dd> + <dt><b>refresh</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodrefresh">PHPExcel_Chart_DataSeries::refresh()</a></dd> + <dt><b>refresh</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodrefresh">PHPExcel_Chart::refresh()</a></dd> + <dt><b>render</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodrender">PHPExcel_Chart::render()</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>setBottomRightCell</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightCell">PHPExcel_Chart::setBottomRightCell()</a></dd> + <dt><b>setBottomRightOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightOffset">PHPExcel_Chart::setBottomRightOffset()</a></dd> + <dt><b>setBottomRightPosition</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightPosition">PHPExcel_Chart::setBottomRightPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Bottom Right position of the chart</dd> + <dt><b>setBottomRightXOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightXOffset">PHPExcel_Chart::setBottomRightXOffset()</a></dd> + <dt><b>setBottomRightYOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetBottomRightYOffset">PHPExcel_Chart::setBottomRightYOffset()</a></dd> + <dt><b>setCaption</b></dt> + <dd>in file Title.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html#methodsetCaption">PHPExcel_Chart_Title::setCaption()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set caption</dd> + <dt><b>setDataSource</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetDataSource">PHPExcel_Chart_DataSeriesValues::setDataSource()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Series Data Source (formula)</dd> + <dt><b>setDataType</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetDataType">PHPExcel_Chart_DataSeriesValues::setDataType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Series Data Type</dd> + <dt><b>setDataValues</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetDataValues">PHPExcel_Chart_DataSeriesValues::setDataValues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Series Data Values</dd> + <dt><b>setDisplayBlanksAs</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetDisplayBlanksAs">PHPExcel_Chart::setDisplayBlanksAs()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Display Blanks as</dd> + <dt><b>setFormatCode</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetFormatCode">PHPExcel_Chart_DataSeriesValues::setFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Series Format Code</dd> + <dt><b>setHeight</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetHeight">PHPExcel_Chart_Layout::setHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Height</dd> + <dt><b>setLayoutTarget</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetLayoutTarget">PHPExcel_Chart_Layout::setLayoutTarget()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Layout Target</dd> + <dt><b>setLegend</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetLegend">PHPExcel_Chart::setLegend()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Legend</dd> + <dt><b>setOverlay</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodsetOverlay">PHPExcel_Chart_Legend::setOverlay()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set allow overlay of other elements?</dd> + <dt><b>setPlotDirection</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotDirection">PHPExcel_Chart_DataSeries::setPlotDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Direction</dd> + <dt><b>setPlotGrouping</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotGrouping">PHPExcel_Chart_DataSeries::setPlotGrouping()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Grouping Type</dd> + <dt><b>setPlotSeries</b></dt> + <dd>in file PlotArea.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html#methodsetPlotSeries">PHPExcel_Chart_PlotArea::setPlotSeries()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Series</dd> + <dt><b>setPlotStyle</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotStyle">PHPExcel_Chart_DataSeries::setPlotStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Style</dd> + <dt><b>setPlotType</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetPlotType">PHPExcel_Chart_DataSeries::setPlotType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Type</dd> + <dt><b>setPlotVisibleOnly</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetPlotVisibleOnly">PHPExcel_Chart::setPlotVisibleOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Plot Visible Only</dd> + <dt><b>setPointMarker</b></dt> + <dd>in file DataSeriesValues.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html#methodsetPointMarker">PHPExcel_Chart_DataSeriesValues::setPointMarker()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Point Marker</dd> + <dt><b>setPosition</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodsetPosition">PHPExcel_Chart_Legend::setPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get legend position using an excel string value</dd> + <dt><b>setPositionXL</b></dt> + <dd>in file Legend.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#methodsetPositionXL">PHPExcel_Chart_Legend::setPositionXL()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set legend position using an Excel internal numeric value</dd> + <dt><b>setShowBubbleSize</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowBubbleSize">PHPExcel_Chart_Layout::setShowBubbleSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show bubble size Specifies that the bubble size should be shown in data labels.</dd> + <dt><b>setShowCatName</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowCatName">PHPExcel_Chart_Layout::setShowCatName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show cat name Specifies that the category name should be shown in data labels.</dd> + <dt><b>setShowLeaderLines</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowLeaderLines">PHPExcel_Chart_Layout::setShowLeaderLines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show leader lines Specifies that leader lines should be shown in data labels.</dd> + <dt><b>setShowLegendKey</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowLegendKey">PHPExcel_Chart_Layout::setShowLegendKey()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show legend key Specifies that legend keys should be shown in data labels.</dd> + <dt><b>setShowPercent</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowPercent">PHPExcel_Chart_Layout::setShowPercent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show percentage Specifies that the percentage should be shown in data labels.</dd> + <dt><b>setShowSerName</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowSerName">PHPExcel_Chart_Layout::setShowSerName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show ser name Specifies that the series name should be shown in data labels.</dd> + <dt><b>setShowVal</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetShowVal">PHPExcel_Chart_Layout::setShowVal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show val Specifies that the value should be shown in data labels.</dd> + <dt><b>setSmoothLine</b></dt> + <dd>in file DataSeries.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#methodsetSmoothLine">PHPExcel_Chart_DataSeries::setSmoothLine()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Smooth Line</dd> + <dt><b>setTitle</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTitle">PHPExcel_Chart::setTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Title</dd> + <dt><b>setTopLeftCell</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftCell">PHPExcel_Chart::setTopLeftCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Top Left cell position for the chart</dd> + <dt><b>setTopLeftOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftOffset">PHPExcel_Chart::setTopLeftOffset()</a></dd> + <dt><b>setTopLeftPosition</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftPosition">PHPExcel_Chart::setTopLeftPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Top Left position for the chart</dd> + <dt><b>setTopLeftXOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftXOffset">PHPExcel_Chart::setTopLeftXOffset()</a></dd> + <dt><b>setTopLeftYOffset</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetTopLeftYOffset">PHPExcel_Chart::setTopLeftYOffset()</a></dd> + <dt><b>setWidth</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetWidth">PHPExcel_Chart_Layout::setWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Width</dd> + <dt><b>setWorksheet</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetWorksheet">PHPExcel_Chart::setWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Worksheet</dd> + <dt><b>setXAxisLabel</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetXAxisLabel">PHPExcel_Chart::setXAxisLabel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set X-Axis Label</dd> + <dt><b>setXMode</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetXMode">PHPExcel_Chart_Layout::setXMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set X-Mode</dd> + <dt><b>setXPosition</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetXPosition">PHPExcel_Chart_Layout::setXPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set X-Position</dd> + <dt><b>setYAxisLabel</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Chart/PHPExcel_Chart.html#methodsetYAxisLabel">PHPExcel_Chart::setYAxisLabel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Y-Axis Label</dd> + <dt><b>setYMode</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetYMode">PHPExcel_Chart_Layout::setYMode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Y-Mode</dd> + <dt><b>setYPosition</b></dt> + <dd>in file Layout.php, method <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html#methodsetYPosition">PHPExcel_Chart_Layout::setYPosition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Y-Position</dd> + <dt><b>STYLE_FILLED</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_FILLED">PHPExcel_Chart_DataSeries::STYLE_FILLED</a></dd> + <dt><b>STYLE_LINEMARKER</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_LINEMARKER">PHPExcel_Chart_DataSeries::STYLE_LINEMARKER</a></dd> + <dt><b>STYLE_MARKER</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_MARKER">PHPExcel_Chart_DataSeries::STYLE_MARKER</a></dd> + <dt><b>STYLE_SMOOTHMARKER</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constSTYLE_SMOOTHMARKER">PHPExcel_Chart_DataSeries::STYLE_SMOOTHMARKER</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>Title.php</b></dt> + <dd>procedural page <a href="PHPExcel_Chart/_PHPExcel---Chart---Title.php.html">Title.php</a></dd> + <dt><b>TYPE_AREACHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_AREACHART">PHPExcel_Chart_DataSeries::TYPE_AREACHART</a></dd> + <dt><b>TYPE_AREACHART_3D</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_AREACHART_3D">PHPExcel_Chart_DataSeries::TYPE_AREACHART_3D</a></dd> + <dt><b>TYPE_BARCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_BARCHART">PHPExcel_Chart_DataSeries::TYPE_BARCHART</a></dd> + <dt><b>TYPE_BARCHART_3D</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_BARCHART_3D">PHPExcel_Chart_DataSeries::TYPE_BARCHART_3D</a></dd> + <dt><b>TYPE_BUBBLECHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_BUBBLECHART">PHPExcel_Chart_DataSeries::TYPE_BUBBLECHART</a></dd> + <dt><b>TYPE_DONUTCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_DONUTCHART">PHPExcel_Chart_DataSeries::TYPE_DONUTCHART</a></dd> + <dt><b>TYPE_DOUGHTNUTCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_DOUGHTNUTCHART">PHPExcel_Chart_DataSeries::TYPE_DOUGHTNUTCHART</a></dd> + <dt><b>TYPE_LINECHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_LINECHART">PHPExcel_Chart_DataSeries::TYPE_LINECHART</a></dd> + <dt><b>TYPE_LINECHART_3D</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_LINECHART_3D">PHPExcel_Chart_DataSeries::TYPE_LINECHART_3D</a></dd> + <dt><b>TYPE_PIECHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_PIECHART">PHPExcel_Chart_DataSeries::TYPE_PIECHART</a></dd> + <dt><b>TYPE_PIECHART_3D</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_PIECHART_3D">PHPExcel_Chart_DataSeries::TYPE_PIECHART_3D</a></dd> + <dt><b>TYPE_RADARCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_RADARCHART">PHPExcel_Chart_DataSeries::TYPE_RADARCHART</a></dd> + <dt><b>TYPE_SCATTERCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_SCATTERCHART">PHPExcel_Chart_DataSeries::TYPE_SCATTERCHART</a></dd> + <dt><b>TYPE_STOCKCHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_STOCKCHART">PHPExcel_Chart_DataSeries::TYPE_STOCKCHART</a></dd> + <dt><b>TYPE_SURFACECHART</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_SURFACECHART">PHPExcel_Chart_DataSeries::TYPE_SURFACECHART</a></dd> + <dt><b>TYPE_SURFACECHART_3D</b></dt> + <dd>in file DataSeries.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html#constTYPE_SURFACECHART_3D">PHPExcel_Chart_DataSeries::TYPE_SURFACECHART_3D</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <hr /> + <a name="x"></a> + <div> + <h2>x</h2> + <dl> + <dt><b>xlLegendPositionBottom</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionBottom">PHPExcel_Chart_Legend::xlLegendPositionBottom</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Legend positions</dd> + <dt><b>xlLegendPositionCorner</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionCorner">PHPExcel_Chart_Legend::xlLegendPositionCorner</a></dd> + <dt><b>xlLegendPositionCustom</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionCustom">PHPExcel_Chart_Legend::xlLegendPositionCustom</a></dd> + <dt><b>xlLegendPositionLeft</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionLeft">PHPExcel_Chart_Legend::xlLegendPositionLeft</a></dd> + <dt><b>xlLegendPositionRight</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionRight">PHPExcel_Chart_Legend::xlLegendPositionRight</a></dd> + <dt><b>xlLegendPositionTop</b></dt> + <dd>in file Legend.php, class constant <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html#constxlLegendPositionTop">PHPExcel_Chart_Legend::xlLegendPositionTop</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Chart_Renderer.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Chart_Renderer.html new file mode 100644 index 0000000..d4f2a08 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Chart_Renderer.html @@ -0,0 +1,113 @@ +<html> +<head> +<title>Package PHPExcel_Chart_Renderer Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart_Renderer</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Chart_Renderer.html" class="menu">class tree: PHPExcel_Chart_Renderer</a> ] + [ <a href="elementindex_PHPExcel_Chart_Renderer.html" class="menu">index: PHPExcel_Chart_Renderer</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html">PHPExcel_Chart_Renderer_jpgraph</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Chart_Renderer</h1> + [ <a href="elementindex_PHPExcel_Chart_Renderer.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Chart_Renderer.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_Chart_Renderer.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>__construct</b></dt> + <dd>in file jpgraph.php, method <a href="PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html#method__construct">PHPExcel_Chart_Renderer_jpgraph::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Chart_Renderer_jpgraph</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart_Renderer.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PHPExcel_Chart_Renderer_jpgraph</b></dt> + <dd>in file jpgraph.php, class <a href="PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html">PHPExcel_Chart_Renderer_jpgraph</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Chart_Renderer_jpgraph</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart_Renderer.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>render</b></dt> + <dd>in file jpgraph.php, method <a href="PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html#methodrender">PHPExcel_Chart_Renderer_jpgraph::render()</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Chart_Renderer.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Reader.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Reader.html new file mode 100644 index 0000000..8695c52 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Reader.html @@ -0,0 +1,459 @@ +<html> +<head> +<title>Package PHPExcel_Reader Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Reader</h1> + [ <a href="elementindex_PHPExcel_Reader.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Reader.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Reader.html#e">e</a> ] + [ <a href="elementindex_PHPExcel_Reader.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Reader.html#h">h</a> ] + [ <a href="elementindex_PHPExcel_Reader.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_Reader.html#l">l</a> ] + [ <a href="elementindex_PHPExcel_Reader.html#o">o</a> ] + [ <a href="elementindex_PHPExcel_Reader.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Reader.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_Reader.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Reader.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>_getFromZipArchive</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#method_getFromZipArchive">PHPExcel_Reader_Excel2007::_getFromZipArchive()</a></dd> + <dt><b>__construct</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#method__construct">PHPExcel_Reader_OOCalc::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_OOCalc</dd> + <dt><b>__construct</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#method__construct">PHPExcel_Reader_SYLK::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_SYLK</dd> + <dt><b>__construct</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#method__construct">PHPExcel_Reader_HTML::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_HTML</dd> + <dt><b>__construct</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#method__construct">PHPExcel_Reader_Gnumeric::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_Gnumeric</dd> + <dt><b>__construct</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#method__construct">PHPExcel_Reader_Excel2007::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_Excel2007 instance</dd> + <dt><b>__construct</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#method__construct">PHPExcel_Reader_CSV::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_CSV</dd> + <dt><b>__construct</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#method__construct">PHPExcel_Reader_Excel2003XML::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_Excel2003XML</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>canRead</b></dt> + <dd>in file IReader.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodcanRead">PHPExcel_Reader_IReader::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodcanRead">PHPExcel_Reader_OOCalc::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodcanRead">PHPExcel_Reader_SYLK::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodcanRead">PHPExcel_Reader_HTML::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodcanRead">PHPExcel_Reader_Gnumeric::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodcanRead">PHPExcel_Reader_CSV::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodcanRead">PHPExcel_Reader_Excel2003XML::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>canRead</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodcanRead">PHPExcel_Reader_Excel2007::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>CSV.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html">CSV.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>DefaultReadFilter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html">DefaultReadFilter.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>Excel2003XML.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html">Excel2003XML.php</a></dd> + <dt><b>Excel2007.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html">Excel2007.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getContiguous</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetContiguous">PHPExcel_Reader_CSV::getContiguous()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Contiguous</dd> + <dt><b>getDelimiter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetDelimiter">PHPExcel_Reader_CSV::getDelimiter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get delimiter</dd> + <dt><b>getEnclosure</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetEnclosure">PHPExcel_Reader_CSV::getEnclosure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get enclosure</dd> + <dt><b>getIncludeCharts</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetIncludeCharts">PHPExcel_Reader_Excel2007::getIncludeCharts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read charts in workbook? If this is true, then the Reader will include any charts that exist in the workbook.</dd> + <dt><b>getInputEncoding</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodgetInputEncoding">PHPExcel_Reader_SYLK::getInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get input encoding</dd> + <dt><b>getInputEncoding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetInputEncoding">PHPExcel_Reader_CSV::getInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get input encoding</dd> + <dt><b>getInputEncoding</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodgetInputEncoding">PHPExcel_Reader_HTML::getInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get input encoding</dd> + <dt><b>getLineEnding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetLineEnding">PHPExcel_Reader_CSV::getLineEnding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get line ending</dd> + <dt><b>getLoadSheetsOnly</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetLoadSheetsOnly">PHPExcel_Reader_Excel2007::getLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.</dd> + <dt><b>getLoadSheetsOnly</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodgetLoadSheetsOnly">PHPExcel_Reader_Gnumeric::getLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.</dd> + <dt><b>getLoadSheetsOnly</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodgetLoadSheetsOnly">PHPExcel_Reader_Excel2003XML::getLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get which sheets to load</dd> + <dt><b>getLoadSheetsOnly</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodgetLoadSheetsOnly">PHPExcel_Reader_OOCalc::getLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.</dd> + <dt><b>getReadDataOnly</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodgetReadDataOnly">PHPExcel_Reader_Gnumeric::getReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.</dd> + <dt><b>getReadDataOnly</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodgetReadDataOnly">PHPExcel_Reader_OOCalc::getReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.</dd> + <dt><b>getReadDataOnly</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodgetReadDataOnly">PHPExcel_Reader_Excel2003XML::getReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read data only?</dd> + <dt><b>getReadDataOnly</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetReadDataOnly">PHPExcel_Reader_Excel2007::getReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodgetReadFilter">PHPExcel_Reader_OOCalc::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodgetReadFilter">PHPExcel_Reader_SYLK::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodgetReadFilter">PHPExcel_Reader_HTML::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodgetReadFilter">PHPExcel_Reader_Excel2007::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetReadFilter">PHPExcel_Reader_CSV::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodgetReadFilter">PHPExcel_Reader_Excel2003XML::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodgetReadFilter">PHPExcel_Reader_Gnumeric::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + <dt><b>getSheetIndex</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodgetSheetIndex">PHPExcel_Reader_SYLK::getSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>getSheetIndex</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodgetSheetIndex">PHPExcel_Reader_CSV::getSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>getSheetIndex</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodgetSheetIndex">PHPExcel_Reader_HTML::getSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>Gnumeric.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html">Gnumeric.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <hr /> + <a name="h"></a> + <div> + <h2>h</h2> + <dl> + <dt><b>HTML.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html">HTML.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>IReader.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html">IReader.php</a></dd> + <dt><b>IReadFilter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html">IReadFilter.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <hr /> + <a name="l"></a> + <div> + <h2>l</h2> + <dl> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodlistWorksheetInfo">PHPExcel_Reader_CSV::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodlistWorksheetInfo">PHPExcel_Reader_Gnumeric::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodlistWorksheetInfo">PHPExcel_Reader_Excel2007::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodlistWorksheetInfo">PHPExcel_Reader_OOCalc::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodlistWorksheetInfo">PHPExcel_Reader_Excel2003XML::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodlistWorksheetInfo">PHPExcel_Reader_SYLK::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetNames</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodlistWorksheetNames">PHPExcel_Reader_OOCalc::listWorksheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object</dd> + <dt><b>listWorksheetNames</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodlistWorksheetNames">PHPExcel_Reader_Excel2007::listWorksheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object</dd> + <dt><b>listWorksheetNames</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodlistWorksheetNames">PHPExcel_Reader_Gnumeric::listWorksheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object</dd> + <dt><b>listWorksheetNames</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodlistWorksheetNames">PHPExcel_Reader_Excel2003XML::listWorksheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object</dd> + <dt><b>load</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodload">PHPExcel_Reader_OOCalc::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodload">PHPExcel_Reader_CSV::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodload">PHPExcel_Reader_SYLK::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodload">PHPExcel_Reader_Excel2007::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file IReader.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html#methodload">PHPExcel_Reader_IReader::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodload">PHPExcel_Reader_Excel2003XML::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodload">PHPExcel_Reader_Gnumeric::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodload">PHPExcel_Reader_HTML::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodloadIntoExisting">PHPExcel_Reader_Excel2003XML::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodloadIntoExisting">PHPExcel_Reader_SYLK::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodloadIntoExisting">PHPExcel_Reader_OOCalc::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodloadIntoExisting">PHPExcel_Reader_CSV::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodloadIntoExisting">PHPExcel_Reader_HTML::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + <dt><b>loadIntoExisting</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodloadIntoExisting">PHPExcel_Reader_Gnumeric::loadIntoExisting()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file into PHPExcel instance</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <hr /> + <a name="o"></a> + <div> + <h2>o</h2> + <dl> + <dt><b>OOCalc.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html">OOCalc.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PHPExcel_Reader_CSV</b></dt> + <dd>in file CSV.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_CSV</dd> + <dt><b>PHPExcel_Reader_DefaultReadFilter</b></dt> + <dd>in file DefaultReadFilter.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_DefaultReadFilter</dd> + <dt><b>PHPExcel_Reader_Excel2003XML</b></dt> + <dd>in file Excel2003XML.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel2003XML</dd> + <dt><b>PHPExcel_Reader_Excel2007</b></dt> + <dd>in file Excel2007.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel2007</dd> + <dt><b>PHPExcel_Reader_Gnumeric</b></dt> + <dd>in file Gnumeric.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Gnumeric</dd> + <dt><b>PHPExcel_Reader_HTML</b></dt> + <dd>in file HTML.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_HTML</dd> + <dt><b>PHPExcel_Reader_IReader</b></dt> + <dd>in file IReader.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_IReader</dd> + <dt><b>PHPExcel_Reader_IReadFilter</b></dt> + <dd>in file IReadFilter.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_IReadFilter</dd> + <dt><b>PHPExcel_Reader_OOCalc</b></dt> + <dd>in file OOCalc.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_OOCalc</dd> + <dt><b>PHPExcel_Reader_SYLK</b></dt> + <dd>in file SYLK.php, class <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_SYLK</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>readCell</b></dt> + <dd>in file IReadFilter.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html#methodreadCell">PHPExcel_Reader_IReadFilter::readCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Should this cell be read?</dd> + <dt><b>readCell</b></dt> + <dd>in file DefaultReadFilter.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html#methodreadCell">PHPExcel_Reader_DefaultReadFilter::readCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Should this cell be read?</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>SYLK.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html">SYLK.php</a></dd> + <dt><b>setContiguous</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetContiguous">PHPExcel_Reader_CSV::setContiguous()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Contiguous</dd> + <dt><b>setDelimiter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetDelimiter">PHPExcel_Reader_CSV::setDelimiter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set delimiter</dd> + <dt><b>setEnclosure</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetEnclosure">PHPExcel_Reader_CSV::setEnclosure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set enclosure</dd> + <dt><b>setIncludeCharts</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetIncludeCharts">PHPExcel_Reader_Excel2007::setIncludeCharts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read charts in workbook Set to true, to advise the Reader to include any charts that exist in the workbook.</dd> + <dt><b>setInputEncoding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetInputEncoding">PHPExcel_Reader_CSV::setInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set input encoding</dd> + <dt><b>setInputEncoding</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodsetInputEncoding">PHPExcel_Reader_HTML::setInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set input encoding</dd> + <dt><b>setInputEncoding</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodsetInputEncoding">PHPExcel_Reader_SYLK::setInputEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set input encoding</dd> + <dt><b>setLineEnding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetLineEnding">PHPExcel_Reader_CSV::setLineEnding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set line ending</dd> + <dt><b>setLoadAllSheets</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetLoadAllSheets">PHPExcel_Reader_Gnumeric::setLoadAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set all sheets to load Tells the Reader to load all worksheets from the workbook.</dd> + <dt><b>setLoadAllSheets</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetLoadAllSheets">PHPExcel_Reader_Excel2007::setLoadAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set all sheets to load Tells the Reader to load all worksheets from the workbook.</dd> + <dt><b>setLoadAllSheets</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetLoadAllSheets">PHPExcel_Reader_OOCalc::setLoadAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set all sheets to load Tells the Reader to load all worksheets from the workbook.</dd> + <dt><b>setLoadAllSheets</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetLoadAllSheets">PHPExcel_Reader_Excel2003XML::setLoadAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set all sheets to load</dd> + <dt><b>setLoadSheetsOnly</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetLoadSheetsOnly">PHPExcel_Reader_Gnumeric::setLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set which sheets to load</dd> + <dt><b>setLoadSheetsOnly</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetLoadSheetsOnly">PHPExcel_Reader_OOCalc::setLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set which sheets to load</dd> + <dt><b>setLoadSheetsOnly</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetLoadSheetsOnly">PHPExcel_Reader_Excel2007::setLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set which sheets to load</dd> + <dt><b>setLoadSheetsOnly</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetLoadSheetsOnly">PHPExcel_Reader_Excel2003XML::setLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set which sheets to load</dd> + <dt><b>setReadDataOnly</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetReadDataOnly">PHPExcel_Reader_Excel2003XML::setReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read data only</dd> + <dt><b>setReadDataOnly</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetReadDataOnly">PHPExcel_Reader_Excel2007::setReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.</dd> + <dt><b>setReadDataOnly</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetReadDataOnly">PHPExcel_Reader_Gnumeric::setReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.</dd> + <dt><b>setReadDataOnly</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetReadDataOnly">PHPExcel_Reader_OOCalc::setReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file OOCalc.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html#methodsetReadFilter">PHPExcel_Reader_OOCalc::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodsetReadFilter">PHPExcel_Reader_SYLK::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html#methodsetReadFilter">PHPExcel_Reader_Excel2007::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetReadFilter">PHPExcel_Reader_CSV::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file Gnumeric.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html#methodsetReadFilter">PHPExcel_Reader_Gnumeric::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file Excel2003XML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html#methodsetReadFilter">PHPExcel_Reader_Excel2003XML::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodsetReadFilter">PHPExcel_Reader_HTML::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>setSheetIndex</b></dt> + <dd>in file SYLK.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html#methodsetSheetIndex">PHPExcel_Reader_SYLK::setSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + <dt><b>setSheetIndex</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html#methodsetSheetIndex">PHPExcel_Reader_CSV::setSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + <dt><b>setSheetIndex</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html#methodsetSheetIndex">PHPExcel_Reader_HTML::setSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Reader_Excel2007.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Reader_Excel2007.html new file mode 100644 index 0000000..37626b2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Reader_Excel2007.html @@ -0,0 +1,149 @@ +<html> +<head> +<title>Package PHPExcel_Reader_Excel2007 Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Reader_Excel2007.html" class="menu">class tree: PHPExcel_Reader_Excel2007</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel2007.html" class="menu">index: PHPExcel_Reader_Excel2007</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader_Excel2007/_PHPExcel---Reader---Excel2007---Theme.php.html"> Theme.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html">PHPExcel_Reader_Excel2007_Chart</a><br /> + <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html">PHPExcel_Reader_Excel2007_Theme</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Reader_Excel2007</h1> + [ <a href="elementindex_PHPExcel_Reader_Excel2007.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel2007.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel2007.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel2007.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel2007.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>__clone</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#method__clone">PHPExcel_Reader_Excel2007_Theme::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__construct</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#method__construct">PHPExcel_Reader_Excel2007_Theme::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Theme</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel2007.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getColourByIndex</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#methodgetColourByIndex">PHPExcel_Reader_Excel2007_Theme::getColourByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get colour Map Value by Position</dd> + <dt><b>getColourSchemeName</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#methodgetColourSchemeName">PHPExcel_Reader_Excel2007_Theme::getColourSchemeName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get colour Scheme Name</dd> + <dt><b>getThemeName</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html#methodgetThemeName">PHPExcel_Reader_Excel2007_Theme::getThemeName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Theme Name</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel2007.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PHPExcel_Reader_Excel2007_Chart</b></dt> + <dd>in file Chart.php, class <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html">PHPExcel_Reader_Excel2007_Chart</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel2007_Chart</dd> + <dt><b>PHPExcel_Reader_Excel2007_Theme</b></dt> + <dd>in file Theme.php, class <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html">PHPExcel_Reader_Excel2007_Theme</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel2007_Theme</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel2007.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>readChart</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html#methodreadChart">PHPExcel_Reader_Excel2007_Chart::readChart()</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel2007.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>Theme.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader_Excel2007/_PHPExcel---Reader---Excel2007---Theme.php.html">Theme.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel2007.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Reader_Excel5.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Reader_Excel5.html new file mode 100644 index 0000000..4f5d8e2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Reader_Excel5.html @@ -0,0 +1,430 @@ +<html> +<head> +<title>Package PHPExcel_Reader_Excel5 Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel5</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Reader_Excel5.html" class="menu">class tree: PHPExcel_Reader_Excel5</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html" class="menu">index: PHPExcel_Reader_Excel5</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html"> Excel5.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html">PHPExcel_Reader_Excel5_Escher</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Reader_Excel5</h1> + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#b">b</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#e">e</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#l">l</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#o">o</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#x">x</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>_GetInt2d</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#method_GetInt2d">PHPExcel_Reader_Excel5::_GetInt2d()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read 16-bit unsigned integer</dd> + <dt><b>_GetInt4d</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#method_GetInt4d">PHPExcel_Reader_Excel5::_GetInt4d()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read 32-bit signed integer</dd> + <dt><b>__construct</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#method__construct">PHPExcel_Reader_Excel5::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_Excel5 instance</dd> + <dt><b>__construct</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#method__construct">PHPExcel_Reader_Excel5_Escher::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Reader_Excel5_Escher instance</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>BLIPJPEG</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBLIPJPEG">PHPExcel_Reader_Excel5_Escher::BLIPJPEG</a></dd> + <dt><b>BLIPPNG</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBLIPPNG">PHPExcel_Reader_Excel5_Escher::BLIPPNG</a></dd> + <dt><b>BSE</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBSE">PHPExcel_Reader_Excel5_Escher::BSE</a></dd> + <dt><b>BSTORECONTAINER</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constBSTORECONTAINER">PHPExcel_Reader_Excel5_Escher::BSTORECONTAINER</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>canRead</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodcanRead">PHPExcel_Reader_Excel5::canRead()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Can the current PHPExcel_Reader_IReader read the file?</dd> + <dt><b>CLIENTANCHOR</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constCLIENTANCHOR">PHPExcel_Reader_Excel5_Escher::CLIENTANCHOR</a></dd> + <dt><b>CLIENTDATA</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constCLIENTDATA">PHPExcel_Reader_Excel5_Escher::CLIENTDATA</a></dd> + <dt><b>CLIENTTEXTBOX</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constCLIENTTEXTBOX">PHPExcel_Reader_Excel5_Escher::CLIENTTEXTBOX</a></dd> + <dt><b>Chart.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html">Chart.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>DG</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDG">PHPExcel_Reader_Excel5_Escher::DG</a></dd> + <dt><b>DGCONTAINER</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDGCONTAINER">PHPExcel_Reader_Excel5_Escher::DGCONTAINER</a></dd> + <dt><b>DGG</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDGG">PHPExcel_Reader_Excel5_Escher::DGG</a></dd> + <dt><b>DGGCONTAINER</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constDGGCONTAINER">PHPExcel_Reader_Excel5_Escher::DGGCONTAINER</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>Escher.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html">Escher.php</a></dd> + <dt><b>Excel5.php</b></dt> + <dd>procedural page <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html">Excel5.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getLoadSheetsOnly</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodgetLoadSheetsOnly">PHPExcel_Reader_Excel5::getLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get which sheets to load Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null indicating that all worksheets in the workbook should be loaded.</dd> + <dt><b>getReadDataOnly</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodgetReadDataOnly">PHPExcel_Reader_Excel5::getReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read data only? If this is true, then the Reader will only read data values for cells, it will not read any formatting information.</dd> + <dt><b>getReadFilter</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodgetReadFilter">PHPExcel_Reader_Excel5::getReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read filter</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <hr /> + <a name="l"></a> + <div> + <h2>l</h2> + <dl> + <dt><b>listWorksheetInfo</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodlistWorksheetInfo">PHPExcel_Reader_Excel5::listWorksheetInfo()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return worksheet info (Name, Last Column Letter, Last Column Index, Total Rows, Total Columns)</dd> + <dt><b>listWorksheetNames</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodlistWorksheetNames">PHPExcel_Reader_Excel5::listWorksheetNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads names of the worksheets from a file, without parsing the whole file to a PHPExcel object</dd> + <dt><b>load</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodload">PHPExcel_Reader_Excel5::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Loads PHPExcel from file</dd> + <dt><b>load</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#methodload">PHPExcel_Reader_Excel5_Escher::load()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Load Escher stream data. May be a partial Escher stream.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <hr /> + <a name="o"></a> + <div> + <h2>o</h2> + <dl> + <dt><b>OPT</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constOPT">PHPExcel_Reader_Excel5_Escher::OPT</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PHPExcel_Reader_Excel5</b></dt> + <dd>in file Excel5.php, class <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel5</dd> + <dt><b>PHPExcel_Reader_Excel5_Escher</b></dt> + <dd>in file Escher.php, class <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html">PHPExcel_Reader_Excel5_Escher</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Reader_Excel5_Escher</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>setLoadAllSheets</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetLoadAllSheets">PHPExcel_Reader_Excel5::setLoadAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set all sheets to load Tells the Reader to load all worksheets from the workbook.</dd> + <dt><b>setLoadSheetsOnly</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetLoadSheetsOnly">PHPExcel_Reader_Excel5::setLoadSheetsOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set which sheets to load</dd> + <dt><b>setReadDataOnly</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetReadDataOnly">PHPExcel_Reader_Excel5::setReadDataOnly()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read data only Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information.</dd> + <dt><b>setReadFilter</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#methodsetReadFilter">PHPExcel_Reader_Excel5::setReadFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set read filter</dd> + <dt><b>SP</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSP">PHPExcel_Reader_Excel5_Escher::SP</a></dd> + <dt><b>SPCONTAINER</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPCONTAINER">PHPExcel_Reader_Excel5_Escher::SPCONTAINER</a></dd> + <dt><b>SPGR</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPGR">PHPExcel_Reader_Excel5_Escher::SPGR</a></dd> + <dt><b>SPGRCONTAINER</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPGRCONTAINER">PHPExcel_Reader_Excel5_Escher::SPGRCONTAINER</a></dd> + <dt><b>SPLITMENUCOLORS</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constSPLITMENUCOLORS">PHPExcel_Reader_Excel5_Escher::SPLITMENUCOLORS</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>TERTIARYOPT</b></dt> + <dd>in file Escher.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html#constTERTIARYOPT">PHPExcel_Reader_Excel5_Escher::TERTIARYOPT</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <hr /> + <a name="x"></a> + <div> + <h2>x</h2> + <dl> + <dt><b>XLS_BIFF7</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_BIFF7">PHPExcel_Reader_Excel5::XLS_BIFF7</a></dd> + <dt><b>XLS_BIFF8</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_BIFF8">PHPExcel_Reader_Excel5::XLS_BIFF8</a></dd> + <dt><b>XLS_Type_ARRAY</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_ARRAY">PHPExcel_Reader_Excel5::XLS_Type_ARRAY</a></dd> + <dt><b>XLS_Type_BLANK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BLANK">PHPExcel_Reader_Excel5::XLS_Type_BLANK</a></dd> + <dt><b>XLS_Type_BOF</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BOF">PHPExcel_Reader_Excel5::XLS_Type_BOF</a></dd> + <dt><b>XLS_Type_BOOLERR</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BOOLERR">PHPExcel_Reader_Excel5::XLS_Type_BOOLERR</a></dd> + <dt><b>XLS_Type_BOTTOMMARGIN</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_BOTTOMMARGIN">PHPExcel_Reader_Excel5::XLS_Type_BOTTOMMARGIN</a></dd> + <dt><b>XLS_Type_CODEPAGE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_CODEPAGE">PHPExcel_Reader_Excel5::XLS_Type_CODEPAGE</a></dd> + <dt><b>XLS_Type_COLINFO</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_COLINFO">PHPExcel_Reader_Excel5::XLS_Type_COLINFO</a></dd> + <dt><b>XLS_Type_CONTINUE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_CONTINUE">PHPExcel_Reader_Excel5::XLS_Type_CONTINUE</a></dd> + <dt><b>XLS_Type_DATAVALIDATION</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DATAVALIDATION">PHPExcel_Reader_Excel5::XLS_Type_DATAVALIDATION</a></dd> + <dt><b>XLS_Type_DATAVALIDATIONS</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DATAVALIDATIONS">PHPExcel_Reader_Excel5::XLS_Type_DATAVALIDATIONS</a></dd> + <dt><b>XLS_Type_DATEMODE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DATEMODE">PHPExcel_Reader_Excel5::XLS_Type_DATEMODE</a></dd> + <dt><b>XLS_Type_DBCELL</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DBCELL">PHPExcel_Reader_Excel5::XLS_Type_DBCELL</a></dd> + <dt><b>XLS_Type_DEFAULTROWHEIGHT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DEFAULTROWHEIGHT">PHPExcel_Reader_Excel5::XLS_Type_DEFAULTROWHEIGHT</a></dd> + <dt><b>XLS_Type_DEFCOLWIDTH</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DEFCOLWIDTH">PHPExcel_Reader_Excel5::XLS_Type_DEFCOLWIDTH</a></dd> + <dt><b>XLS_Type_DEFINEDNAME</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DEFINEDNAME">PHPExcel_Reader_Excel5::XLS_Type_DEFINEDNAME</a></dd> + <dt><b>XLS_Type_DIMENSION</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_DIMENSION">PHPExcel_Reader_Excel5::XLS_Type_DIMENSION</a></dd> + <dt><b>XLS_Type_EOF</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EOF">PHPExcel_Reader_Excel5::XLS_Type_EOF</a></dd> + <dt><b>XLS_Type_EXTERNALBOOK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTERNALBOOK">PHPExcel_Reader_Excel5::XLS_Type_EXTERNALBOOK</a></dd> + <dt><b>XLS_Type_EXTERNNAME</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTERNNAME">PHPExcel_Reader_Excel5::XLS_Type_EXTERNNAME</a></dd> + <dt><b>XLS_Type_EXTERNSHEET</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTERNSHEET">PHPExcel_Reader_Excel5::XLS_Type_EXTERNSHEET</a></dd> + <dt><b>XLS_Type_EXTSST</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_EXTSST">PHPExcel_Reader_Excel5::XLS_Type_EXTSST</a></dd> + <dt><b>XLS_Type_FILEPASS</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FILEPASS">PHPExcel_Reader_Excel5::XLS_Type_FILEPASS</a></dd> + <dt><b>XLS_Type_FONT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FONT">PHPExcel_Reader_Excel5::XLS_Type_FONT</a></dd> + <dt><b>XLS_Type_FOOTER</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FOOTER">PHPExcel_Reader_Excel5::XLS_Type_FOOTER</a></dd> + <dt><b>XLS_Type_FORMAT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FORMAT">PHPExcel_Reader_Excel5::XLS_Type_FORMAT</a></dd> + <dt><b>XLS_Type_FORMULA</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_FORMULA">PHPExcel_Reader_Excel5::XLS_Type_FORMULA</a></dd> + <dt><b>XLS_Type_HCENTER</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HCENTER">PHPExcel_Reader_Excel5::XLS_Type_HCENTER</a></dd> + <dt><b>XLS_Type_HEADER</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HEADER">PHPExcel_Reader_Excel5::XLS_Type_HEADER</a></dd> + <dt><b>XLS_Type_HORIZONTALPAGEBREAKS</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HORIZONTALPAGEBREAKS">PHPExcel_Reader_Excel5::XLS_Type_HORIZONTALPAGEBREAKS</a></dd> + <dt><b>XLS_Type_HYPERLINK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_HYPERLINK">PHPExcel_Reader_Excel5::XLS_Type_HYPERLINK</a></dd> + <dt><b>XLS_Type_IMDATA</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_IMDATA">PHPExcel_Reader_Excel5::XLS_Type_IMDATA</a></dd> + <dt><b>XLS_Type_INDEX</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_INDEX">PHPExcel_Reader_Excel5::XLS_Type_INDEX</a></dd> + <dt><b>XLS_Type_LABEL</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_LABEL">PHPExcel_Reader_Excel5::XLS_Type_LABEL</a></dd> + <dt><b>XLS_Type_LABELSST</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_LABELSST">PHPExcel_Reader_Excel5::XLS_Type_LABELSST</a></dd> + <dt><b>XLS_Type_LEFTMARGIN</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_LEFTMARGIN">PHPExcel_Reader_Excel5::XLS_Type_LEFTMARGIN</a></dd> + <dt><b>XLS_Type_MERGEDCELLS</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MERGEDCELLS">PHPExcel_Reader_Excel5::XLS_Type_MERGEDCELLS</a></dd> + <dt><b>XLS_Type_MSODRAWING</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MSODRAWING">PHPExcel_Reader_Excel5::XLS_Type_MSODRAWING</a></dd> + <dt><b>XLS_Type_MSODRAWINGGROUP</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MSODRAWINGGROUP">PHPExcel_Reader_Excel5::XLS_Type_MSODRAWINGGROUP</a></dd> + <dt><b>XLS_Type_MULBLANK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MULBLANK">PHPExcel_Reader_Excel5::XLS_Type_MULBLANK</a></dd> + <dt><b>XLS_Type_MULRK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_MULRK">PHPExcel_Reader_Excel5::XLS_Type_MULRK</a></dd> + <dt><b>XLS_Type_NOTE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_NOTE">PHPExcel_Reader_Excel5::XLS_Type_NOTE</a></dd> + <dt><b>XLS_Type_NUMBER</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_NUMBER">PHPExcel_Reader_Excel5::XLS_Type_NUMBER</a></dd> + <dt><b>XLS_Type_OBJ</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_OBJ">PHPExcel_Reader_Excel5::XLS_Type_OBJ</a></dd> + <dt><b>XLS_Type_OBJECTPROTECT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_OBJECTPROTECT">PHPExcel_Reader_Excel5::XLS_Type_OBJECTPROTECT</a></dd> + <dt><b>XLS_Type_PAGESETUP</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PAGESETUP">PHPExcel_Reader_Excel5::XLS_Type_PAGESETUP</a></dd> + <dt><b>XLS_Type_PALETTE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PALETTE">PHPExcel_Reader_Excel5::XLS_Type_PALETTE</a></dd> + <dt><b>XLS_Type_PANE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PANE">PHPExcel_Reader_Excel5::XLS_Type_PANE</a></dd> + <dt><b>XLS_Type_PASSWORD</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PASSWORD">PHPExcel_Reader_Excel5::XLS_Type_PASSWORD</a></dd> + <dt><b>XLS_Type_PRINTGRIDLINES</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PRINTGRIDLINES">PHPExcel_Reader_Excel5::XLS_Type_PRINTGRIDLINES</a></dd> + <dt><b>XLS_Type_PROTECT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_PROTECT">PHPExcel_Reader_Excel5::XLS_Type_PROTECT</a></dd> + <dt><b>XLS_Type_RANGEPROTECTION</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_RANGEPROTECTION">PHPExcel_Reader_Excel5::XLS_Type_RANGEPROTECTION</a></dd> + <dt><b>XLS_Type_RIGHTMARGIN</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_RIGHTMARGIN">PHPExcel_Reader_Excel5::XLS_Type_RIGHTMARGIN</a></dd> + <dt><b>XLS_Type_RK</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_RK">PHPExcel_Reader_Excel5::XLS_Type_RK</a></dd> + <dt><b>XLS_Type_ROW</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_ROW">PHPExcel_Reader_Excel5::XLS_Type_ROW</a></dd> + <dt><b>XLS_Type_SCENPROTECT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SCENPROTECT">PHPExcel_Reader_Excel5::XLS_Type_SCENPROTECT</a></dd> + <dt><b>XLS_Type_SCL</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SCL">PHPExcel_Reader_Excel5::XLS_Type_SCL</a></dd> + <dt><b>XLS_Type_SELECTION</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SELECTION">PHPExcel_Reader_Excel5::XLS_Type_SELECTION</a></dd> + <dt><b>XLS_Type_SHAREDFMLA</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHAREDFMLA">PHPExcel_Reader_Excel5::XLS_Type_SHAREDFMLA</a></dd> + <dt><b>XLS_Type_SHEET</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEET">PHPExcel_Reader_Excel5::XLS_Type_SHEET</a></dd> + <dt><b>XLS_Type_SHEETLAYOUT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEETLAYOUT">PHPExcel_Reader_Excel5::XLS_Type_SHEETLAYOUT</a></dd> + <dt><b>XLS_Type_SHEETPR</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEETPR">PHPExcel_Reader_Excel5::XLS_Type_SHEETPR</a></dd> + <dt><b>XLS_Type_SHEETPROTECTION</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SHEETPROTECTION">PHPExcel_Reader_Excel5::XLS_Type_SHEETPROTECTION</a></dd> + <dt><b>XLS_Type_SST</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_SST">PHPExcel_Reader_Excel5::XLS_Type_SST</a></dd> + <dt><b>XLS_Type_STRING</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_STRING">PHPExcel_Reader_Excel5::XLS_Type_STRING</a></dd> + <dt><b>XLS_Type_STYLE</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_STYLE">PHPExcel_Reader_Excel5::XLS_Type_STYLE</a></dd> + <dt><b>XLS_Type_TOPMARGIN</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_TOPMARGIN">PHPExcel_Reader_Excel5::XLS_Type_TOPMARGIN</a></dd> + <dt><b>XLS_Type_TXO</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_TXO">PHPExcel_Reader_Excel5::XLS_Type_TXO</a></dd> + <dt><b>XLS_Type_UNKNOWN</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_UNKNOWN">PHPExcel_Reader_Excel5::XLS_Type_UNKNOWN</a></dd> + <dt><b>XLS_Type_VCENTER</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_VCENTER">PHPExcel_Reader_Excel5::XLS_Type_VCENTER</a></dd> + <dt><b>XLS_Type_VERTICALPAGEBREAKS</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_VERTICALPAGEBREAKS">PHPExcel_Reader_Excel5::XLS_Type_VERTICALPAGEBREAKS</a></dd> + <dt><b>XLS_Type_WINDOW2</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_WINDOW2">PHPExcel_Reader_Excel5::XLS_Type_WINDOW2</a></dd> + <dt><b>XLS_Type_XF</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_XF">PHPExcel_Reader_Excel5::XLS_Type_XF</a></dd> + <dt><b>XLS_Type_XFEXT</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Type_XFEXT">PHPExcel_Reader_Excel5::XLS_Type_XFEXT</a></dd> + <dt><b>XLS_WorkbookGlobals</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_WorkbookGlobals">PHPExcel_Reader_Excel5::XLS_WorkbookGlobals</a></dd> + <dt><b>XLS_Worksheet</b></dt> + <dd>in file Excel5.php, class constant <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html#constXLS_Worksheet">PHPExcel_Reader_Excel5::XLS_Worksheet</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Reader_Excel5.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_RichText.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_RichText.html new file mode 100644 index 0000000..5a9f547 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_RichText.html @@ -0,0 +1,244 @@ +<html> +<head> +<title>Package PHPExcel_RichText Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_RichText</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_RichText.html" class="menu">class tree: PHPExcel_RichText</a> ] + [ <a href="elementindex_PHPExcel_RichText.html" class="menu">index: PHPExcel_RichText</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html"> ITextElement.php + </a><br> + <a href="PHPExcel_RichText/_PHPExcel---RichText.php.html"> RichText.php + </a><br> + <a href="PHPExcel_RichText/_PHPExcel---RichText---Run.php.html"> Run.php + </a><br> + <a href="PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html"> TextElement.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br /> + <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_RichText</h1> + [ <a href="elementindex_PHPExcel_RichText.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_RichText.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_RichText.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_RichText.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_RichText.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_RichText.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_RichText.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_RichText.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_RichText.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>__clone</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#method__clone">PHPExcel_RichText_TextElement::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#method__clone">PHPExcel_RichText::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Run.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html#method__clone">PHPExcel_RichText_Run::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__construct</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#method__construct">PHPExcel_RichText_TextElement::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_RichText_TextElement instance</dd> + <dt><b>__construct</b></dt> + <dd>in file Run.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html#method__construct">PHPExcel_RichText_Run::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_RichText_Run instance</dd> + <dt><b>__construct</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#method__construct">PHPExcel_RichText::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_RichText instance</dd> + <dt><b>__toString</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#method__toString">PHPExcel_RichText::__toString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert to string</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_RichText.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>addText</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodaddText">PHPExcel_RichText::addText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add text</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_RichText.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>createText</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodcreateText">PHPExcel_RichText::createText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create text</dd> + <dt><b>createTextRun</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodcreateTextRun">PHPExcel_RichText::createTextRun()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create text run</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_RichText.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getFont</b></dt> + <dd>in file Run.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html#methodgetFont">PHPExcel_RichText_Run::getFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get font</dd> + <dt><b>getFont</b></dt> + <dd>in file ITextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetFont">PHPExcel_RichText_ITextElement::getFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get font</dd> + <dt><b>getFont</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetFont">PHPExcel_RichText_TextElement::getFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get font</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Run.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html#methodgetHashCode">PHPExcel_RichText_Run::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodgetHashCode">PHPExcel_RichText::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file ITextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetHashCode">PHPExcel_RichText_ITextElement::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetHashCode">PHPExcel_RichText_TextElement::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getPlainText</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodgetPlainText">PHPExcel_RichText::getPlainText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get plain text</dd> + <dt><b>getRichTextElements</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodgetRichTextElements">PHPExcel_RichText::getRichTextElements()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Rich Text elements</dd> + <dt><b>getText</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodgetText">PHPExcel_RichText_TextElement::getText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get text</dd> + <dt><b>getText</b></dt> + <dd>in file ITextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodgetText">PHPExcel_RichText_ITextElement::getText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get text</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_RichText.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>ITextElement.php</b></dt> + <dd>procedural page <a href="PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html">ITextElement.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_RichText.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PHPExcel_RichText</b></dt> + <dd>in file RichText.php, class <a href="PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_RichText</dd> + <dt><b>PHPExcel_RichText_ITextElement</b></dt> + <dd>in file ITextElement.php, class <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_RichText_ITextElement</dd> + <dt><b>PHPExcel_RichText_Run</b></dt> + <dd>in file Run.php, class <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_RichText_Run</dd> + <dt><b>PHPExcel_RichText_TextElement</b></dt> + <dd>in file TextElement.php, class <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_RichText_TextElement</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_RichText.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>Run.php</b></dt> + <dd>procedural page <a href="PHPExcel_RichText/_PHPExcel---RichText---Run.php.html">Run.php</a></dd> + <dt><b>RichText.php</b></dt> + <dd>procedural page <a href="PHPExcel_RichText/_PHPExcel---RichText.php.html">RichText.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_RichText.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>setFont</b></dt> + <dd>in file Run.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html#methodsetFont">PHPExcel_RichText_Run::setFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set font</dd> + <dt><b>setRichTextElements</b></dt> + <dd>in file RichText.php, method <a href="PHPExcel_RichText/PHPExcel_RichText.html#methodsetRichTextElements">PHPExcel_RichText::setRichTextElements()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rich Text elements</dd> + <dt><b>setText</b></dt> + <dd>in file TextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html#methodsetText">PHPExcel_RichText_TextElement::setText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set text</dd> + <dt><b>setText</b></dt> + <dd>in file ITextElement.php, method <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html#methodsetText">PHPExcel_RichText_ITextElement::setText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set text</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_RichText.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>TextElement.php</b></dt> + <dd>procedural page <a href="PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html">TextElement.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_RichText.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Settings.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Settings.html new file mode 100644 index 0000000..fa24293 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Settings.html @@ -0,0 +1,178 @@ +<html> +<head> +<title>Package PHPExcel_Settings Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Settings</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Settings.html" class="menu">class tree: PHPExcel_Settings</a> ] + [ <a href="elementindex_PHPExcel_Settings.html" class="menu">index: PHPExcel_Settings</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Settings/_PHPExcel---Settings.php.html"> Settings.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Settings/PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Settings</h1> + [ <a href="elementindex_PHPExcel_Settings.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Settings.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Settings.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Settings.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Settings.html#z">z</a> ] + + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>CHART_RENDERER_JPGRAPH</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constCHART_RENDERER_JPGRAPH">PHPExcel_Settings::CHART_RENDERER_JPGRAPH</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optional Chart Rendering libraries</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Settings.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getCacheStorageClass</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetCacheStorageClass">PHPExcel_Settings::getCacheStorageClass()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the name of the class that is currently being used for cell cacheing</dd> + <dt><b>getCacheStorageMethod</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetCacheStorageMethod">PHPExcel_Settings::getCacheStorageMethod()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the name of the method that is currently configured for cell cacheing</dd> + <dt><b>getChartRendererName</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetChartRendererName">PHPExcel_Settings::getChartRendererName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Chart Rendering Library that PHPExcel is currently configured to use (e.g. jpgraph)</dd> + <dt><b>getChartRendererPath</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetChartRendererPath">PHPExcel_Settings::getChartRendererPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the directory path to the Chart Rendering Library that PHPExcel is currently configured to use</dd> + <dt><b>getPdfRendererName</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetPdfRendererName">PHPExcel_Settings::getPdfRendererName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the PDF Rendering Library that PHPExcel is currently configured to use (e.g. dompdf)</dd> + <dt><b>getPdfRendererPath</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetPdfRendererPath">PHPExcel_Settings::getPdfRendererPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the directory path to the PDF Rendering Library that PHPExcel is currently configured to use</dd> + <dt><b>getZipClass</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodgetZipClass">PHPExcel_Settings::getZipClass()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the name of the Zip handler Class that PHPExcel is configured to use (PCLZip or ZipArchive) for Zip file management</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Settings.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PCLZIP</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constPCLZIP">PHPExcel_Settings::PCLZIP</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Available Zip library classes</dd> + <dt><b>PDF_RENDERER_DOMPDF</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constPDF_RENDERER_DOMPDF">PHPExcel_Settings::PDF_RENDERER_DOMPDF</a></dd> + <dt><b>PDF_RENDERER_MPDF</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constPDF_RENDERER_MPDF">PHPExcel_Settings::PDF_RENDERER_MPDF</a></dd> + <dt><b>PDF_RENDERER_TCPDF</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constPDF_RENDERER_TCPDF">PHPExcel_Settings::PDF_RENDERER_TCPDF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Optional PDF Rendering libraries</dd> + <dt><b>PHPExcel_Settings</b></dt> + <dd>in file Settings.php, class <a href="PHPExcel_Settings/PHPExcel_Settings.html">PHPExcel_Settings</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Settings.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>Settings.php</b></dt> + <dd>procedural page <a href="PHPExcel_Settings/_PHPExcel---Settings.php.html">Settings.php</a></dd> + <dt><b>setCacheStorageMethod</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetCacheStorageMethod">PHPExcel_Settings::setCacheStorageMethod()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the method that should be used for cell cacheing</dd> + <dt><b>setChartRenderer</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetChartRenderer">PHPExcel_Settings::setChartRenderer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set details of the external library that PHPExcel should use for rendering charts</dd> + <dt><b>setChartRendererName</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetChartRendererName">PHPExcel_Settings::setChartRendererName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify to PHPExcel the external library to use for rendering charts</dd> + <dt><b>setChartRendererPath</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetChartRendererPath">PHPExcel_Settings::setChartRendererPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Tell PHPExcel where to find the external library to use for rendering charts</dd> + <dt><b>setLocale</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetLocale">PHPExcel_Settings::setLocale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the locale code to use for formula translations and any special formatting</dd> + <dt><b>setPdfRenderer</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetPdfRenderer">PHPExcel_Settings::setPdfRenderer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set details of the external library that PHPExcel should use for rendering PDF files</dd> + <dt><b>setPdfRendererName</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetPdfRendererName">PHPExcel_Settings::setPdfRendererName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify to PHPExcel the external library to use for rendering PDF files</dd> + <dt><b>setPdfRendererPath</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetPdfRendererPath">PHPExcel_Settings::setPdfRendererPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Tell PHPExcel where to find the external library to use for rendering PDF files</dd> + <dt><b>setZipClass</b></dt> + <dd>in file Settings.php, method <a href="PHPExcel_Settings/PHPExcel_Settings.html#methodsetZipClass">PHPExcel_Settings::setZipClass()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Zip handler Class that PHPExcel should use for Zip file management (PCLZip or ZipArchive)</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Settings.html#top">top</a><br> + <hr /> + <a name="z"></a> + <div> + <h2>z</h2> + <dl> + <dt><b>ZIPARCHIVE</b></dt> + <dd>in file Settings.php, class constant <a href="PHPExcel_Settings/PHPExcel_Settings.html#constZIPARCHIVE">PHPExcel_Settings::ZIPARCHIVE</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Settings.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared.html new file mode 100644 index 0000000..8527d26 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared.html @@ -0,0 +1,714 @@ +<html> +<head> +<title>Package PHPExcel_Shared Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Shared</h1> + [ <a href="elementindex_PHPExcel_Shared.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#b">b</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#e">e</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#f">f</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#h">h</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#l">l</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#m">m</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#n">n</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#o">o</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#u">u</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#v">v</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#w">w</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#x">x</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#z">z</a> ] + [ <a href="elementindex_PHPExcel_Shared.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>$_monthNames</b></dt> + <dd>in file Date.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#var$_monthNames">PHPExcel_Shared_Date::$_monthNames</a></dd> + <dt><b>__construct</b></dt> + <dd>in file XMLWriter.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#method__construct">PHPExcel_Shared_XMLWriter::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Shared_XMLWriter instance</dd> + <dt><b>__destruct</b></dt> + <dd>in file XMLWriter.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#method__destruct">PHPExcel_Shared_XMLWriter::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructor</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>angleToDegrees</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodangleToDegrees">PHPExcel_Shared_Drawing::angleToDegrees()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert angle to degrees</dd> + <dt><b>ARIAL</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL">PHPExcel_Shared_Font::ARIAL</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Font filenames</dd> + <dt><b>ARIAL_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL_BOLD">PHPExcel_Shared_Font::ARIAL_BOLD</a></dd> + <dt><b>ARIAL_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL_BOLD_ITALIC">PHPExcel_Shared_Font::ARIAL_BOLD_ITALIC</a></dd> + <dt><b>ARIAL_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constARIAL_ITALIC">PHPExcel_Shared_Font::ARIAL_ITALIC</a></dd> + <dt><b>AUTOSIZE_METHOD_APPROX</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constAUTOSIZE_METHOD_APPROX">PHPExcel_Shared_Font::AUTOSIZE_METHOD_APPROX</a></dd> + <dt><b>AUTOSIZE_METHOD_EXACT</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constAUTOSIZE_METHOD_EXACT">PHPExcel_Shared_Font::AUTOSIZE_METHOD_EXACT</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>BIG_BLOCK_DEPOT_BLOCKS_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constBIG_BLOCK_DEPOT_BLOCKS_POS">PHPExcel_Shared_OLERead::BIG_BLOCK_DEPOT_BLOCKS_POS</a></dd> + <dt><b>BIG_BLOCK_SIZE</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constBIG_BLOCK_SIZE">PHPExcel_Shared_OLERead::BIG_BLOCK_SIZE</a></dd> + <dt><b>buildCharacterSets</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodbuildCharacterSets">PHPExcel_Shared_String::buildCharacterSets()</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>calculateColumnWidth</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodcalculateColumnWidth">PHPExcel_Shared_Font::calculateColumnWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate an (approximate) OpenXML column width, based on font size and text contained</dd> + <dt><b>CALENDAR_MAC_1904</b></dt> + <dd>in file Date.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#constCALENDAR_MAC_1904">PHPExcel_Shared_Date::CALENDAR_MAC_1904</a></dd> + <dt><b>CALENDAR_WINDOWS_1900</b></dt> + <dd>in file Date.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#constCALENDAR_WINDOWS_1900">PHPExcel_Shared_Date::CALENDAR_WINDOWS_1900</a><br>&nbsp;&nbsp;&nbsp;&nbsp;constants</dd> + <dt><b>CALIBRI</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI">PHPExcel_Shared_Font::CALIBRI</a></dd> + <dt><b>CALIBRI_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI_BOLD">PHPExcel_Shared_Font::CALIBRI_BOLD</a></dd> + <dt><b>CALIBRI_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI_BOLD_ITALIC">PHPExcel_Shared_Font::CALIBRI_BOLD_ITALIC</a></dd> + <dt><b>CALIBRI_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCALIBRI_ITALIC">PHPExcel_Shared_Font::CALIBRI_ITALIC</a></dd> + <dt><b>cellDimensionToPixels</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodcellDimensionToPixels">PHPExcel_Shared_Drawing::cellDimensionToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert column width from (intrinsic) Excel units to pixels</dd> + <dt><b>centimeterSizeToPixels</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodcentimeterSizeToPixels">PHPExcel_Shared_Font::centimeterSizeToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate an (approximate) pixel size, based on centimeter size</dd> + <dt><b>CHARSET_ANSI_ARABIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_ARABIC">PHPExcel_Shared_Font::CHARSET_ANSI_ARABIC</a></dd> + <dt><b>CHARSET_ANSI_BALTIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_BALTIC">PHPExcel_Shared_Font::CHARSET_ANSI_BALTIC</a></dd> + <dt><b>CHARSET_ANSI_CHINESE_SIMIPLIFIED</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_CHINESE_SIMIPLIFIED">PHPExcel_Shared_Font::CHARSET_ANSI_CHINESE_SIMIPLIFIED</a></dd> + <dt><b>CHARSET_ANSI_CHINESE_TRADITIONAL</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_CHINESE_TRADITIONAL">PHPExcel_Shared_Font::CHARSET_ANSI_CHINESE_TRADITIONAL</a></dd> + <dt><b>CHARSET_ANSI_CYRILLIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_CYRILLIC">PHPExcel_Shared_Font::CHARSET_ANSI_CYRILLIC</a></dd> + <dt><b>CHARSET_ANSI_GREEK</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_GREEK">PHPExcel_Shared_Font::CHARSET_ANSI_GREEK</a></dd> + <dt><b>CHARSET_ANSI_HEBREW</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_HEBREW">PHPExcel_Shared_Font::CHARSET_ANSI_HEBREW</a></dd> + <dt><b>CHARSET_ANSI_JAPANESE_SHIFTJIS</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_JAPANESE_SHIFTJIS">PHPExcel_Shared_Font::CHARSET_ANSI_JAPANESE_SHIFTJIS</a></dd> + <dt><b>CHARSET_ANSI_KOREAN_HANGUL</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_KOREAN_HANGUL">PHPExcel_Shared_Font::CHARSET_ANSI_KOREAN_HANGUL</a></dd> + <dt><b>CHARSET_ANSI_KOREAN_JOHAB</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_KOREAN_JOHAB">PHPExcel_Shared_Font::CHARSET_ANSI_KOREAN_JOHAB</a></dd> + <dt><b>CHARSET_ANSI_LATIN</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_LATIN">PHPExcel_Shared_Font::CHARSET_ANSI_LATIN</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Character set codes used by BIFF5-8 in Font records</dd> + <dt><b>CHARSET_ANSI_LATIN_II</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_LATIN_II">PHPExcel_Shared_Font::CHARSET_ANSI_LATIN_II</a></dd> + <dt><b>CHARSET_ANSI_THAI</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_THAI">PHPExcel_Shared_Font::CHARSET_ANSI_THAI</a></dd> + <dt><b>CHARSET_ANSI_TURKISH</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_TURKISH">PHPExcel_Shared_Font::CHARSET_ANSI_TURKISH</a></dd> + <dt><b>CHARSET_ANSI_VIETNAMESE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_ANSI_VIETNAMESE">PHPExcel_Shared_Font::CHARSET_ANSI_VIETNAMESE</a></dd> + <dt><b>CHARSET_APPLE_ROMAN</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_APPLE_ROMAN">PHPExcel_Shared_Font::CHARSET_APPLE_ROMAN</a></dd> + <dt><b>CHARSET_OEM_LATIN_I</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_OEM_LATIN_I">PHPExcel_Shared_Font::CHARSET_OEM_LATIN_I</a></dd> + <dt><b>CHARSET_SYMBOL</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_SYMBOL">PHPExcel_Shared_Font::CHARSET_SYMBOL</a></dd> + <dt><b>CHARSET_SYSTEM_DEFAULT</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCHARSET_SYSTEM_DEFAULT">PHPExcel_Shared_Font::CHARSET_SYSTEM_DEFAULT</a></dd> + <dt><b>COMIC_SANS_MS</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOMIC_SANS_MS">PHPExcel_Shared_Font::COMIC_SANS_MS</a></dd> + <dt><b>COMIC_SANS_MS_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOMIC_SANS_MS_BOLD">PHPExcel_Shared_Font::COMIC_SANS_MS_BOLD</a></dd> + <dt><b>ControlCharacterOOXML2PHP</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodControlCharacterOOXML2PHP">PHPExcel_Shared_String::ControlCharacterOOXML2PHP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert from OpenXML escaped control character to PHP control character</dd> + <dt><b>ControlCharacterPHP2OOXML</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodControlCharacterPHP2OOXML">PHPExcel_Shared_String::ControlCharacterPHP2OOXML()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert from PHP control character to OpenXML escaped control character</dd> + <dt><b>ConvertEncoding</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodConvertEncoding">PHPExcel_Shared_String::ConvertEncoding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert string from one encoding to another. First try iconv, then mbstring, or no convertion</dd> + <dt><b>convertToNumberIfFraction</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodconvertToNumberIfFraction">PHPExcel_Shared_String::convertToNumberIfFraction()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Identify whether a string contains a fractional numeric value, and convert it to a numeric if it is</dd> + <dt><b>CountCharacters</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodCountCharacters">PHPExcel_Shared_String::CountCharacters()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get character count. First try mbstring, then iconv, finally strlen</dd> + <dt><b>COURIER_NEW</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW">PHPExcel_Shared_Font::COURIER_NEW</a></dd> + <dt><b>COURIER_NEW_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW_BOLD">PHPExcel_Shared_Font::COURIER_NEW_BOLD</a></dd> + <dt><b>COURIER_NEW_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW_BOLD_ITALIC">PHPExcel_Shared_Font::COURIER_NEW_BOLD_ITALIC</a></dd> + <dt><b>COURIER_NEW_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constCOURIER_NEW_ITALIC">PHPExcel_Shared_Font::COURIER_NEW_ITALIC</a></dd> + <dt><b>CodePage.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html">CodePage.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>$dateTimeObjectType</b></dt> + <dd>in file Date.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#var$dateTimeObjectType">PHPExcel_Shared_Date::$dateTimeObjectType</a></dd> + <dt><b>$defaultColumnWidths</b></dt> + <dd>in file Font.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#var$defaultColumnWidths">PHPExcel_Shared_Font::$defaultColumnWidths</a><br>&nbsp;&nbsp;&nbsp;&nbsp;How wide is a default column for a given default font and size? Empirical data found by inspecting real Excel files and reading off the pixel width in Microsoft Office Excel 2007.</dd> + <dt><b>$documentSummaryInformation</b></dt> + <dd>in file OLERead.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#var$documentSummaryInformation">PHPExcel_Shared_OLERead::$documentSummaryInformation</a></dd> + <dt><b>DATE_W3C</b></dt> + <dd>in file XMLWriter.php, constant <a href="PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html#defineDATE_W3C">DATE_W3C</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel</dd> + <dt><b>DEBUGMODE_ENABLED</b></dt> + <dd>in file XMLWriter.php, constant <a href="PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html#defineDEBUGMODE_ENABLED">DEBUGMODE_ENABLED</a></dd> + <dt><b>degreesToAngle</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methoddegreesToAngle">PHPExcel_Shared_Drawing::degreesToAngle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert degrees to angle</dd> + <dt><b>Date.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---Date.php.html">Date.php</a></dd> + <dt><b>Drawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html">Drawing.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>EMUToPixels</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodEMUToPixels">PHPExcel_Shared_Drawing::EMUToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert EMU to pixels</dd> + <dt><b>ExcelToPHP</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodExcelToPHP">PHPExcel_Shared_Date::ExcelToPHP()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a date from Excel to PHP</dd> + <dt><b>ExcelToPHPObject</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodExcelToPHPObject">PHPExcel_Shared_Date::ExcelToPHPObject()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a date from Excel to a PHP Date/Time object</dd> + <dt><b>EXTENSION_BLOCK_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constEXTENSION_BLOCK_POS">PHPExcel_Shared_OLERead::EXTENSION_BLOCK_POS</a></dd> + <dt><b>Excel5.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html">Excel5.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>file_exists</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_File.html#methodfile_exists">PHPExcel_Shared_File::file_exists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Verify if a file exists</dd> + <dt><b>fontSizeToPixels</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodfontSizeToPixels">PHPExcel_Shared_Font::fontSizeToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate an (approximate) pixel size, based on a font points size</dd> + <dt><b>FormatNumber</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodFormatNumber">PHPExcel_Shared_String::FormatNumber()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Formats a numeric value as a string for output in various output writers forcing point as decimal separator in case locale is other than English.</dd> + <dt><b>FormattedPHPToExcel</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodFormattedPHPToExcel">PHPExcel_Shared_Date::FormattedPHPToExcel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;FormattedPHPToExcel</dd> + <dt><b>File.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---File.php.html">File.php</a></dd> + <dt><b>Font.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---Font.php.html">Font.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>GEORGIA</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA">PHPExcel_Shared_Font::GEORGIA</a></dd> + <dt><b>GEORGIA_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA_BOLD">PHPExcel_Shared_Font::GEORGIA_BOLD</a></dd> + <dt><b>GEORGIA_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA_BOLD_ITALIC">PHPExcel_Shared_Font::GEORGIA_BOLD_ITALIC</a></dd> + <dt><b>GEORGIA_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constGEORGIA_ITALIC">PHPExcel_Shared_Font::GEORGIA_ITALIC</a></dd> + <dt><b>getAutoSizeMethod</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetAutoSizeMethod">PHPExcel_Shared_Font::getAutoSizeMethod()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get autoSize method</dd> + <dt><b>getCharsetFromFontName</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetCharsetFromFontName">PHPExcel_Shared_Font::getCharsetFromFontName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the associated charset for the font name.</dd> + <dt><b>getCurrencyCode</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetCurrencyCode">PHPExcel_Shared_String::getCurrencyCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currency code. If it has not yet been set explicitly, try to obtain the symbol information from locale.</dd> + <dt><b>getData</b></dt> + <dd>in file XMLWriter.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#methodgetData">PHPExcel_Shared_XMLWriter::getData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get written data</dd> + <dt><b>getDecimalSeparator</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetDecimalSeparator">PHPExcel_Shared_String::getDecimalSeparator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the decimal separator. If it has not yet been set explicitly, try to obtain number formatting information from locale.</dd> + <dt><b>getDefaultColumnWidthByFont</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetDefaultColumnWidthByFont">PHPExcel_Shared_Font::getDefaultColumnWidthByFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the effective column width for columns without a column dimension or column with width -1 For example, for Calibri 11 this is 9.140625 (64 px)</dd> + <dt><b>getDefaultRowHeightByFont</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetDefaultRowHeightByFont">PHPExcel_Shared_Font::getDefaultRowHeightByFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the effective row height for rows without a row dimension or rows with height -1 For example, for Calibri 11 this is 15 points</dd> + <dt><b>getDistanceX</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodgetDistanceX">PHPExcel_Shared_Excel5::getDistanceX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the horizontal distance in pixels between two anchors The distanceX is found as sum of all the spanning columns widths minus correction for the two offsets</dd> + <dt><b>getDistanceY</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodgetDistanceY">PHPExcel_Shared_Excel5::getDistanceY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the vertical distance in pixels between two anchors The distanceY is found as sum of all the spanning rows minus two offsets</dd> + <dt><b>getExcelCalendar</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodgetExcelCalendar">PHPExcel_Shared_Date::getExcelCalendar()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Excel calendar (Windows 1900 or Mac 1904)</dd> + <dt><b>getIsIconvEnabled</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetIsIconvEnabled">PHPExcel_Shared_String::getIsIconvEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get whether iconv extension is available</dd> + <dt><b>getIsMbstringEnabled</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetIsMbstringEnabled">PHPExcel_Shared_String::getIsMbstringEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get whether mbstring extension is available</dd> + <dt><b>getStream</b></dt> + <dd>in file OLERead.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#methodgetStream">PHPExcel_Shared_OLERead::getStream()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Extract binary stream data</dd> + <dt><b>getTextWidthPixelsApprox</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTextWidthPixelsApprox">PHPExcel_Shared_Font::getTextWidthPixelsApprox()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get approximate width in pixels for a string of text in a certain font at a certain rotation angle</dd> + <dt><b>getTextWidthPixelsExact</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTextWidthPixelsExact">PHPExcel_Shared_Font::getTextWidthPixelsExact()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get GD text width in pixels for a string of text in a certain font at a certain rotation angle</dd> + <dt><b>getThousandsSeparator</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodgetThousandsSeparator">PHPExcel_Shared_String::getThousandsSeparator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the thousands separator. If it has not yet been set explicitly, try to obtain number formatting information from locale.</dd> + <dt><b>getTrueTypeFontFileFromFont</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTrueTypeFontFileFromFont">PHPExcel_Shared_Font::getTrueTypeFontFileFromFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the font path given the font</dd> + <dt><b>getTrueTypeFontPath</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodgetTrueTypeFontPath">PHPExcel_Shared_Font::getTrueTypeFontPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the path to the folder containing .ttf files.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="h"></a> + <div> + <h2>h</h2> + <dl> + <dt><b>hashPassword</b></dt> + <dd>in file PasswordHasher.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html#methodhashPassword">PHPExcel_Shared_PasswordHasher::hashPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a password hash from a given string.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>IDENTIFIER_OLE</b></dt> + <dd>in file OLERead.php, constant <a href="PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html#defineIDENTIFIER_OLE">IDENTIFIER_OLE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel</dd> + <dt><b>IDENTIFIER_OLE</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constIDENTIFIER_OLE">PHPExcel_Shared_OLERead::IDENTIFIER_OLE</a></dd> + <dt><b>imagecreatefrombmp</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodimagecreatefrombmp">PHPExcel_Shared_Drawing::imagecreatefrombmp()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new image from file. By alexander at alexauto dot nl</dd> + <dt><b>IMPACT</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constIMPACT">PHPExcel_Shared_Font::IMPACT</a></dd> + <dt><b>inchSizeToPixels</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodinchSizeToPixels">PHPExcel_Shared_Font::inchSizeToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate an (approximate) pixel size, based on inch size</dd> + <dt><b>isDateTime</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodisDateTime">PHPExcel_Shared_Date::isDateTime()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a given cell a date/time?</dd> + <dt><b>isDateTimeFormat</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodisDateTimeFormat">PHPExcel_Shared_Date::isDateTimeFormat()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a given number format a date/time?</dd> + <dt><b>isDateTimeFormatCode</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodisDateTimeFormatCode">PHPExcel_Shared_Date::isDateTimeFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is a given number format code a date/time?</dd> + <dt><b>IsUTF8</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodIsUTF8">PHPExcel_Shared_String::IsUTF8()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Check if a string contains UTF8 data</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="l"></a> + <div> + <h2>l</h2> + <dl> + <dt><b>LIBERATION_SANS</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS">PHPExcel_Shared_Font::LIBERATION_SANS</a></dd> + <dt><b>LIBERATION_SANS_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS_BOLD">PHPExcel_Shared_Font::LIBERATION_SANS_BOLD</a></dd> + <dt><b>LIBERATION_SANS_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS_BOLD_ITALIC">PHPExcel_Shared_Font::LIBERATION_SANS_BOLD_ITALIC</a></dd> + <dt><b>LIBERATION_SANS_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLIBERATION_SANS_ITALIC">PHPExcel_Shared_Font::LIBERATION_SANS_ITALIC</a></dd> + <dt><b>LUCIDA_CONSOLE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLUCIDA_CONSOLE">PHPExcel_Shared_Font::LUCIDA_CONSOLE</a></dd> + <dt><b>LUCIDA_SANS_UNICODE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constLUCIDA_SANS_UNICODE">PHPExcel_Shared_Font::LUCIDA_SANS_UNICODE</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="m"></a> + <div> + <h2>m</h2> + <dl> + <dt><b>MICROSOFT_SANS_SERIF</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constMICROSOFT_SANS_SERIF">PHPExcel_Shared_Font::MICROSOFT_SANS_SERIF</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="n"></a> + <div> + <h2>n</h2> + <dl> + <dt><b>NumberToName</b></dt> + <dd>in file CodePage.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_CodePage.html#methodNumberToName">PHPExcel_Shared_CodePage::NumberToName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert Microsoft Code Page Identifier to Code Page Name which iconv and mbstring understands</dd> + <dt><b>NUM_BIG_BLOCK_DEPOT_BLOCKS_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constNUM_BIG_BLOCK_DEPOT_BLOCKS_POS">PHPExcel_Shared_OLERead::NUM_BIG_BLOCK_DEPOT_BLOCKS_POS</a></dd> + <dt><b>NUM_EXTENSION_BLOCK_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constNUM_EXTENSION_BLOCK_POS">PHPExcel_Shared_OLERead::NUM_EXTENSION_BLOCK_POS</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="o"></a> + <div> + <h2>o</h2> + <dl> + <dt><b>oneAnchor2twoAnchor</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodoneAnchor2twoAnchor">PHPExcel_Shared_Excel5::oneAnchor2twoAnchor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert 1-cell anchor coordinates to 2-cell anchor coordinates This function is ported from PEAR Spreadsheet_Writer_Excel with small modifications</dd> + <dt><b>OLERead.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html">OLERead.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PALATINO_LINOTYPE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE">PHPExcel_Shared_Font::PALATINO_LINOTYPE</a></dd> + <dt><b>PALATINO_LINOTYPE_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE_BOLD">PHPExcel_Shared_Font::PALATINO_LINOTYPE_BOLD</a></dd> + <dt><b>PALATINO_LINOTYPE_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE_BOLD_ITALIC">PHPExcel_Shared_Font::PALATINO_LINOTYPE_BOLD_ITALIC</a></dd> + <dt><b>PALATINO_LINOTYPE_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constPALATINO_LINOTYPE_ITALIC">PHPExcel_Shared_Font::PALATINO_LINOTYPE_ITALIC</a></dd> + <dt><b>PasswordHasher.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html">PasswordHasher.php</a></dd> + <dt><b>PHPExcel_Shared_CodePage</b></dt> + <dd>in file CodePage.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_CodePage</dd> + <dt><b>PHPExcel_Shared_Date</b></dt> + <dd>in file Date.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Date</dd> + <dt><b>PHPExcel_Shared_Drawing</b></dt> + <dd>in file Drawing.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Drawing</dd> + <dt><b>PHPExcel_Shared_Excel5</b></dt> + <dd>in file Excel5.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Excel5</dd> + <dt><b>PHPExcel_Shared_File</b></dt> + <dd>in file File.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_File</dd> + <dt><b>PHPExcel_Shared_Font</b></dt> + <dd>in file Font.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Font</dd> + <dt><b>PHPExcel_Shared_OLERead</b></dt> + <dd>in file OLERead.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a></dd> + <dt><b>PHPExcel_Shared_PasswordHasher</b></dt> + <dd>in file PasswordHasher.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_PasswordHasher</dd> + <dt><b>PHPExcel_Shared_String</b></dt> + <dd>in file String.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_String</dd> + <dt><b>PHPExcel_Shared_XMLWriter</b></dt> + <dd>in file XMLWriter.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_XMLWriter</dd> + <dt><b>PHPExcel_Shared_ZipStreamWrapper</b></dt> + <dd>in file ZipStreamWrapper.php, class <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_ZipStreamWrapper</dd> + <dt><b>PHPToExcel</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodPHPToExcel">PHPExcel_Shared_Date::PHPToExcel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a date from PHP to Excel</dd> + <dt><b>pixelsToCellDimension</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpixelsToCellDimension">PHPExcel_Shared_Drawing::pixelsToCellDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert pixels to column width. Exact algorithm not known.</dd> + <dt><b>pixelsToEMU</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpixelsToEMU">PHPExcel_Shared_Drawing::pixelsToEMU()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert pixels to EMU</dd> + <dt><b>pixelsToPoints</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpixelsToPoints">PHPExcel_Shared_Drawing::pixelsToPoints()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert pixels to points</dd> + <dt><b>pointsToPixels</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html#methodpointsToPixels">PHPExcel_Shared_Drawing::pointsToPixels()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert points to pixels</dd> + <dt><b>PROPERTY_STORAGE_BLOCK_SIZE</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constPROPERTY_STORAGE_BLOCK_SIZE">PHPExcel_Shared_OLERead::PROPERTY_STORAGE_BLOCK_SIZE</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>read</b></dt> + <dd>in file OLERead.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#methodread">PHPExcel_Shared_OLERead::read()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Read the file</dd> + <dt><b>realpath</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_File.html#methodrealpath">PHPExcel_Shared_File::realpath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns canonicalized absolute pathname, also for ZIP archives</dd> + <dt><b>register</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodregister">PHPExcel_Shared_ZipStreamWrapper::register()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Register wrapper</dd> + <dt><b>ROOT_START_BLOCK_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constROOT_START_BLOCK_POS">PHPExcel_Shared_OLERead::ROOT_START_BLOCK_POS</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>$summaryInformation</b></dt> + <dd>in file OLERead.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#var$summaryInformation">PHPExcel_Shared_OLERead::$summaryInformation</a></dd> + <dt><b>String.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---String.php.html">String.php</a></dd> + <dt><b>SanitizeUTF8</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodSanitizeUTF8">PHPExcel_Shared_String::SanitizeUTF8()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Try to sanitize UTF8, stripping invalid byte sequences. Not perfect. Does not surrogate characters.</dd> + <dt><b>setAutoSizeMethod</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodsetAutoSizeMethod">PHPExcel_Shared_Font::setAutoSizeMethod()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set autoSize method</dd> + <dt><b>setCurrencyCode</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodsetCurrencyCode">PHPExcel_Shared_String::setCurrencyCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the currency code. Only used by PHPExcel_Style_NumberFormat::toFormattedString() to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF</dd> + <dt><b>setDecimalSeparator</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodsetDecimalSeparator">PHPExcel_Shared_String::setDecimalSeparator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the decimal separator. Only used by PHPExcel_Style_NumberFormat::toFormattedString() to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF</dd> + <dt><b>setExcelCalendar</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodsetExcelCalendar">PHPExcel_Shared_Date::setExcelCalendar()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the Excel calendar (Windows 1900 or Mac 1904)</dd> + <dt><b>setThousandsSeparator</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodsetThousandsSeparator">PHPExcel_Shared_String::setThousandsSeparator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the thousands separator. Only used by PHPExcel_Style_NumberFormat::toFormattedString() to format output by PHPExcel_Writer_HTML and PHPExcel_Writer_PDF</dd> + <dt><b>setTrueTypeFontPath</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#methodsetTrueTypeFontPath">PHPExcel_Shared_Font::setTrueTypeFontPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the path to the folder containing .ttf files. There should be a trailing slash.</dd> + <dt><b>sizeCol</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodsizeCol">PHPExcel_Shared_Excel5::sizeCol()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the width of a column in pixels. We use the relationship y = ceil(7x) where x is the width in intrinsic Excel units (measuring width in number of normal characters) This holds for Arial 10</dd> + <dt><b>sizeRow</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html#methodsizeRow">PHPExcel_Shared_Excel5::sizeRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert the height of a cell from user's units to pixels. By interpolation the relationship is: y = 4/3x. If the height hasn't been set by the user we use the default value. If the row is hidden we use a value of zero.</dd> + <dt><b>SIZE_OF_NAME_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSIZE_OF_NAME_POS">PHPExcel_Shared_OLERead::SIZE_OF_NAME_POS</a></dd> + <dt><b>SIZE_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSIZE_POS">PHPExcel_Shared_OLERead::SIZE_POS</a></dd> + <dt><b>SMALL_BLOCK_DEPOT_BLOCK_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSMALL_BLOCK_DEPOT_BLOCK_POS">PHPExcel_Shared_OLERead::SMALL_BLOCK_DEPOT_BLOCK_POS</a></dd> + <dt><b>SMALL_BLOCK_SIZE</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSMALL_BLOCK_SIZE">PHPExcel_Shared_OLERead::SMALL_BLOCK_SIZE</a></dd> + <dt><b>SMALL_BLOCK_THRESHOLD</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSMALL_BLOCK_THRESHOLD">PHPExcel_Shared_OLERead::SMALL_BLOCK_THRESHOLD</a></dd> + <dt><b>START_BLOCK_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constSTART_BLOCK_POS">PHPExcel_Shared_OLERead::START_BLOCK_POS</a></dd> + <dt><b>STORAGE_DISK</b></dt> + <dd>in file XMLWriter.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#constSTORAGE_DISK">PHPExcel_Shared_XMLWriter::STORAGE_DISK</a></dd> + <dt><b>STORAGE_MEMORY</b></dt> + <dd>in file XMLWriter.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#constSTORAGE_MEMORY">PHPExcel_Shared_XMLWriter::STORAGE_MEMORY</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Temporary storage method</dd> + <dt><b>stream_eof</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_eof">PHPExcel_Shared_ZipStreamWrapper::stream_eof()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;EOF stream</dd> + <dt><b>stream_open</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_open">PHPExcel_Shared_ZipStreamWrapper::stream_open()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fopen().</dd> + <dt><b>stream_read</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_read">PHPExcel_Shared_ZipStreamWrapper::stream_read()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fread(), fgets() etc.</dd> + <dt><b>stream_seek</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_seek">PHPExcel_Shared_ZipStreamWrapper::stream_seek()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Seek stream</dd> + <dt><b>stream_stat</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_stat">PHPExcel_Shared_ZipStreamWrapper::stream_stat()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fstat().</dd> + <dt><b>stream_tell</b></dt> + <dd>in file ZipStreamWrapper.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html#methodstream_tell">PHPExcel_Shared_ZipStreamWrapper::stream_tell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the position of the file pointer, i.e. its offset into the file stream. Implements support for ftell().</dd> + <dt><b>stringToExcel</b></dt> + <dd>in file Date.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html#methodstringToExcel">PHPExcel_Shared_Date::stringToExcel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a date/time string to Excel time</dd> + <dt><b>STRING_REGEXP_FRACTION</b></dt> + <dd>in file String.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#constSTRING_REGEXP_FRACTION">PHPExcel_Shared_String::STRING_REGEXP_FRACTION</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Regular Expressions</dd> + <dt><b>Substring</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodSubstring">PHPExcel_Shared_String::Substring()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a substring of a UTF-8 encoded string</dd> + <dt><b>SYLKtoUTF8</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodSYLKtoUTF8">PHPExcel_Shared_String::SYLKtoUTF8()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert SYLK encoded string to UTF-8</dd> + <dt><b>SYMBOL</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constSYMBOL">PHPExcel_Shared_Font::SYMBOL</a></dd> + <dt><b>sys_get_temp_dir</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_File.html#methodsys_get_temp_dir">PHPExcel_Shared_File::sys_get_temp_dir()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the systems temporary directory.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>TAHOMA</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTAHOMA">PHPExcel_Shared_Font::TAHOMA</a></dd> + <dt><b>TAHOMA_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTAHOMA_BOLD">PHPExcel_Shared_Font::TAHOMA_BOLD</a></dd> + <dt><b>testStringAsNumeric</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodtestStringAsNumeric">PHPExcel_Shared_String::testStringAsNumeric()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Retrieve any leading numeric part of a string, or return the full string if no leading numeric (handles basic integer or float, but not exponent or non decimal)</dd> + <dt><b>TIMES_NEW_ROMAN</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN">PHPExcel_Shared_Font::TIMES_NEW_ROMAN</a></dd> + <dt><b>TIMES_NEW_ROMAN_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN_BOLD">PHPExcel_Shared_Font::TIMES_NEW_ROMAN_BOLD</a></dd> + <dt><b>TIMES_NEW_ROMAN_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN_BOLD_ITALIC">PHPExcel_Shared_Font::TIMES_NEW_ROMAN_BOLD_ITALIC</a></dd> + <dt><b>TIMES_NEW_ROMAN_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTIMES_NEW_ROMAN_ITALIC">PHPExcel_Shared_Font::TIMES_NEW_ROMAN_ITALIC</a></dd> + <dt><b>TREBUCHET_MS</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS">PHPExcel_Shared_Font::TREBUCHET_MS</a></dd> + <dt><b>TREBUCHET_MS_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS_BOLD">PHPExcel_Shared_Font::TREBUCHET_MS_BOLD</a></dd> + <dt><b>TREBUCHET_MS_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS_BOLD_ITALIC">PHPExcel_Shared_Font::TREBUCHET_MS_BOLD_ITALIC</a></dd> + <dt><b>TREBUCHET_MS_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constTREBUCHET_MS_ITALIC">PHPExcel_Shared_Font::TREBUCHET_MS_ITALIC</a></dd> + <dt><b>TYPE_POS</b></dt> + <dd>in file OLERead.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#constTYPE_POS">PHPExcel_Shared_OLERead::TYPE_POS</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="u"></a> + <div> + <h2>u</h2> + <dl> + <dt><b>UTF8toBIFF8UnicodeLong</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodUTF8toBIFF8UnicodeLong">PHPExcel_Shared_String::UTF8toBIFF8UnicodeLong()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Converts a UTF-8 string into BIFF8 Unicode string data (16-bit string length)</dd> + <dt><b>UTF8toBIFF8UnicodeShort</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodUTF8toBIFF8UnicodeShort">PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Converts a UTF-8 string into BIFF8 Unicode string data (8-bit string length)</dd> + <dt><b>utf16_decode</b></dt> + <dd>in file String.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_String.html#methodutf16_decode">PHPExcel_Shared_String::utf16_decode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Decode UTF-16 encoded strings.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="v"></a> + <div> + <h2>v</h2> + <dl> + <dt><b>VERDANA</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA">PHPExcel_Shared_Font::VERDANA</a></dd> + <dt><b>VERDANA_BOLD</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA_BOLD">PHPExcel_Shared_Font::VERDANA_BOLD</a></dd> + <dt><b>VERDANA_BOLD_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA_BOLD_ITALIC">PHPExcel_Shared_Font::VERDANA_BOLD_ITALIC</a></dd> + <dt><b>VERDANA_ITALIC</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html#constVERDANA_ITALIC">PHPExcel_Shared_Font::VERDANA_ITALIC</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="w"></a> + <div> + <h2>w</h2> + <dl> + <dt><b>$wrkbook</b></dt> + <dd>in file OLERead.php, variable <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html#var$wrkbook">PHPExcel_Shared_OLERead::$wrkbook</a></dd> + <dt><b>writeRawData</b></dt> + <dd>in file XMLWriter.php, method <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html#methodwriteRawData">PHPExcel_Shared_XMLWriter::writeRawData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fallback method for writeRaw, introduced in PHP 5.2</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="x"></a> + <div> + <h2>x</h2> + <dl> + <dt><b>XMLWriter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html">XMLWriter.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <hr /> + <a name="z"></a> + <div> + <h2>z</h2> + <dl> + <dt><b>ZipStreamWrapper.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html">ZipStreamWrapper.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_Escher.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_Escher.html new file mode 100644 index 0000000..4b203dd --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_Escher.html @@ -0,0 +1,349 @@ +<html> +<head> +<title>Package PHPExcel_Shared_Escher Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Shared_Escher</h1> + [ <a href="elementindex_PHPExcel_Shared_Escher.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_Shared_Escher.html#b">b</a> ] + [ <a href="elementindex_PHPExcel_Shared_Escher.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Shared_Escher.html#e">e</a> ] + [ <a href="elementindex_PHPExcel_Shared_Escher.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Shared_Escher.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Shared_Escher.html#s">s</a> ] + + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>addBSE</b></dt> + <dd>in file BstoreContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html#methodaddBSE">PHPExcel_Shared_Escher_DggContainer_BstoreContainer::addBSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a BLIP Store Entry</dd> + <dt><b>addChild</b></dt> + <dd>in file SpgrContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodaddChild">PHPExcel_Shared_Escher_DgContainer_SpgrContainer::addChild()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a child. This will be either spgrContainer or spContainer</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Escher.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>BLIPTYPE_CMYKJPEG</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_CMYKJPEG">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_CMYKJPEG</a></dd> + <dt><b>BLIPTYPE_DIB</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_DIB">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_DIB</a></dd> + <dt><b>BLIPTYPE_EMF</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_EMF">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_EMF</a></dd> + <dt><b>BLIPTYPE_ERROR</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_ERROR">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_ERROR</a></dd> + <dt><b>BLIPTYPE_JPEG</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_JPEG">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_JPEG</a></dd> + <dt><b>BLIPTYPE_PICT</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_PICT">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PICT</a></dd> + <dt><b>BLIPTYPE_PNG</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_PNG">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_PNG</a></dd> + <dt><b>BLIPTYPE_TIFF</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_TIFF">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_TIFF</a></dd> + <dt><b>BLIPTYPE_UNKNOWN</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_UNKNOWN">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_UNKNOWN</a></dd> + <dt><b>BLIPTYPE_WMF</b></dt> + <dd>in file BSE.php, class constant <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#constBLIPTYPE_WMF">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::BLIPTYPE_WMF</a></dd> + <dt><b>Blip.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html">Blip.php</a></dd> + <dt><b>BSE.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html">BSE.php</a></dd> + <dt><b>BstoreContainer.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html">BstoreContainer.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Escher.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>DgContainer.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html">DgContainer.php</a></dd> + <dt><b>DggContainer.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html">DggContainer.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Escher.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>Escher.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html">Escher.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Escher.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getAllSpContainers</b></dt> + <dd>in file SpgrContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodgetAllSpContainers">PHPExcel_Shared_Escher_DgContainer_SpgrContainer::getAllSpContainers()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Recursively get all spContainers within this spgrContainer</dd> + <dt><b>getBlip</b></dt> + <dd>in file BSE.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodgetBlip">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::getBlip()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the BLIP</dd> + <dt><b>getBlipType</b></dt> + <dd>in file BSE.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodgetBlipType">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::getBlipType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the BLIP type</dd> + <dt><b>getBSECollection</b></dt> + <dd>in file BstoreContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html#methodgetBSECollection">PHPExcel_Shared_Escher_DggContainer_BstoreContainer::getBSECollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the collection of BLIP Store Entries</dd> + <dt><b>getBstoreContainer</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetBstoreContainer">PHPExcel_Shared_Escher_DggContainer::getBstoreContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get BLIP Store Container</dd> + <dt><b>getCDgSaved</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetCDgSaved">PHPExcel_Shared_Escher_DggContainer::getCDgSaved()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get total number of drawings saved</dd> + <dt><b>getChildren</b></dt> + <dd>in file SpgrContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodgetChildren">PHPExcel_Shared_Escher_DgContainer_SpgrContainer::getChildren()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of Shape Containers</dd> + <dt><b>getCSpSaved</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetCSpSaved">PHPExcel_Shared_Escher_DggContainer::getCSpSaved()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get total number of shapes saved (including group shapes)</dd> + <dt><b>getData</b></dt> + <dd>in file Blip.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodgetData">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip::getData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the raw image data</dd> + <dt><b>getDgContainer</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodgetDgContainer">PHPExcel_Shared_Escher::getDgContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Drawing Container</dd> + <dt><b>getDggContainer</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodgetDggContainer">PHPExcel_Shared_Escher::getDggContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Drawing Group Container</dd> + <dt><b>getDgId</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodgetDgId">PHPExcel_Shared_Escher_DgContainer::getDgId()</a></dd> + <dt><b>getEndCoordinates</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetEndCoordinates">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getEndCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell coordinates of bottom-right corner of shape</dd> + <dt><b>getEndOffsetX</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetEndOffsetX">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getEndOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get offset in x-direction of bottom-right corner of shape measured in 1/1024 of column width</dd> + <dt><b>getEndOffsetY</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetEndOffsetY">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getEndOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get offset in y-direction of bottom-right corner of shape measured in 1/256 of row height</dd> + <dt><b>getIDCLs</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetIDCLs">PHPExcel_Shared_Escher_DggContainer::getIDCLs()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get identifier clusters</dd> + <dt><b>getLastSpId</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodgetLastSpId">PHPExcel_Shared_Escher_DgContainer::getLastSpId()</a></dd> + <dt><b>getNestingLevel</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetNestingLevel">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getNestingLevel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the nesting level of this spContainer. This is the number of spgrContainers between this spContainer and the dgContainer. A value of 1 = immediately within first spgrContainer Higher nesting level occurs if and only if spContainer is part of a shape group</dd> + <dt><b>getOPT</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetOPT">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getOPT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an option for the Shape Group Container</dd> + <dt><b>getOPT</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetOPT">PHPExcel_Shared_Escher_DggContainer::getOPT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an option for the drawing group</dd> + <dt><b>getOPTCollection</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetOPTCollection">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getOPTCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the collection of options</dd> + <dt><b>getParent</b></dt> + <dd>in file Blip.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodgetParent">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get parent BSE</dd> + <dt><b>getParent</b></dt> + <dd>in file SpgrContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodgetParent">PHPExcel_Shared_Escher_DgContainer_SpgrContainer::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the parent Shape Group Container if any</dd> + <dt><b>getParent</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetParent">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the parent Shape Group Container</dd> + <dt><b>getSpFlag</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpFlag">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getSpFlag()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shape flag</dd> + <dt><b>getSpgr</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpgr">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getSpgr()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get whether this is a group shape</dd> + <dt><b>getSpgrContainer</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodgetSpgrContainer">PHPExcel_Shared_Escher_DgContainer::getSpgrContainer()</a></dd> + <dt><b>getSpId</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpId">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getSpId()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shape index</dd> + <dt><b>getSpIdMax</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodgetSpIdMax">PHPExcel_Shared_Escher_DggContainer::getSpIdMax()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get maximum shape index of all shapes in all drawings (plus one)</dd> + <dt><b>getSpType</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetSpType">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getSpType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shape type</dd> + <dt><b>getStartCoordinates</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetStartCoordinates">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getStartCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell coordinates of upper-left corner of shape</dd> + <dt><b>getStartOffsetX</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetStartOffsetX">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getStartOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get offset in x-direction of upper-left corner of shape measured in 1/1024 of column width</dd> + <dt><b>getStartOffsetY</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodgetStartOffsetY">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::getStartOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get offset in y-direction of upper-left corner of shape measured in 1/256 of row height</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Escher.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PHPExcel_Shared_Escher</b></dt> + <dd>in file Escher.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher</dd> + <dt><b>PHPExcel_Shared_Escher_DgContainer</b></dt> + <dd>in file DgContainer.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DgContainer</dd> + <dt><b>PHPExcel_Shared_Escher_DgContainer_SpgrContainer</b></dt> + <dd>in file SpgrContainer.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DgContainer_SpgrContainer</dd> + <dt><b>PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</b></dt> + <dd>in file SpContainer.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</dd> + <dt><b>PHPExcel_Shared_Escher_DggContainer</b></dt> + <dd>in file DggContainer.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DggContainer</dd> + <dt><b>PHPExcel_Shared_Escher_DggContainer_BstoreContainer</b></dt> + <dd>in file BstoreContainer.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DggContainer_BstoreContainer</dd> + <dt><b>PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</b></dt> + <dd>in file BSE.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</dd> + <dt><b>PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</b></dt> + <dd>in file Blip.php, class <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Escher.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>SpContainer.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html">SpContainer.php</a></dd> + <dt><b>SpgrContainer.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html">SpgrContainer.php</a></dd> + <dt><b>setBlip</b></dt> + <dd>in file BSE.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodsetBlip">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::setBlip()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the BLIP</dd> + <dt><b>setBlipType</b></dt> + <dd>in file BSE.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodsetBlipType">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::setBlipType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the BLIP type</dd> + <dt><b>setBstoreContainer</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetBstoreContainer">PHPExcel_Shared_Escher_DggContainer::setBstoreContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set BLIP Store Container</dd> + <dt><b>setCDgSaved</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetCDgSaved">PHPExcel_Shared_Escher_DggContainer::setCDgSaved()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set total number of drawings saved</dd> + <dt><b>setCSpSaved</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetCSpSaved">PHPExcel_Shared_Escher_DggContainer::setCSpSaved()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set total number of shapes saved (including group shapes)</dd> + <dt><b>setData</b></dt> + <dd>in file Blip.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodsetData">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip::setData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the raw image data</dd> + <dt><b>setDgContainer</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodsetDgContainer">PHPExcel_Shared_Escher::setDgContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Drawing Container</dd> + <dt><b>setDggContainer</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html#methodsetDggContainer">PHPExcel_Shared_Escher::setDggContainer()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Drawing Group Container</dd> + <dt><b>setDgId</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodsetDgId">PHPExcel_Shared_Escher_DgContainer::setDgId()</a></dd> + <dt><b>setEndCoordinates</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetEndCoordinates">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setEndCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set cell coordinates of bottom-right corner of shape</dd> + <dt><b>setEndOffsetX</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetEndOffsetX">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setEndOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set offset in x-direction of bottom-right corner of shape measured in 1/1024 of column width</dd> + <dt><b>setEndOffsetY</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetEndOffsetY">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setEndOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set offset in y-direction of bottom-right corner of shape measured in 1/256 of row height</dd> + <dt><b>setIDCLs</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetIDCLs">PHPExcel_Shared_Escher_DggContainer::setIDCLs()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set identifier clusters. array(&lt;drawingId&gt; =&gt; &lt;max shape id&gt;, ...)</dd> + <dt><b>setLastSpId</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodsetLastSpId">PHPExcel_Shared_Escher_DgContainer::setLastSpId()</a></dd> + <dt><b>setOPT</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetOPT">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setOPT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set an option for the Shape Group Container</dd> + <dt><b>setOPT</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetOPT">PHPExcel_Shared_Escher_DggContainer::setOPT()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set an option for the drawing group</dd> + <dt><b>setParent</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetParent">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent Shape Group Container</dd> + <dt><b>setParent</b></dt> + <dd>in file SpgrContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html#methodsetParent">PHPExcel_Shared_Escher_DgContainer_SpgrContainer::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent Shape Group Container</dd> + <dt><b>setParent</b></dt> + <dd>in file Blip.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html#methodsetParent">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent BSE</dd> + <dt><b>setParent</b></dt> + <dd>in file BSE.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html#methodsetParent">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent BLIP Store Entry Container</dd> + <dt><b>setSpFlag</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpFlag">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setSpFlag()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the shape flag</dd> + <dt><b>setSpgr</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpgr">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setSpgr()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set whether this is a group shape</dd> + <dt><b>setSpgrContainer</b></dt> + <dd>in file DgContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html#methodsetSpgrContainer">PHPExcel_Shared_Escher_DgContainer::setSpgrContainer()</a></dd> + <dt><b>setSpId</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpId">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setSpId()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the shape index</dd> + <dt><b>setSpIdMax</b></dt> + <dd>in file DggContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html#methodsetSpIdMax">PHPExcel_Shared_Escher_DggContainer::setSpIdMax()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set maximum shape index of all shapes in all drawings (plus one)</dd> + <dt><b>setSpType</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetSpType">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setSpType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the shape type</dd> + <dt><b>setStartCoordinates</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetStartCoordinates">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setStartCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set cell coordinates of upper-left corner of shape</dd> + <dt><b>setStartOffsetX</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetStartOffsetX">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setStartOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set offset in x-direction of upper-left corner of shape measured in 1/1024 of column width</dd> + <dt><b>setStartOffsetY</b></dt> + <dd>in file SpContainer.php, method <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html#methodsetStartOffsetY">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer::setStartOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set offset in y-direction of upper-left corner of shape measured in 1/256 of row height</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Escher.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_OLE.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_OLE.html new file mode 100644 index 0000000..f22f8e7 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_OLE.html @@ -0,0 +1,386 @@ +<html> +<head> +<title>Package PHPExcel_Shared_OLE Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Shared_OLE</h1> + [ <a href="elementindex_PHPExcel_Shared_OLE.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#b">b</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#f">f</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#l">l</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#n">n</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#o">o</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>$_data</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$_data">PHPExcel_Shared_OLE_PPS::$_data</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The PPS's data (only used if it's not using a temporary file)</dd> + <dt><b>$_file_handle</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$_file_handle">PHPExcel_Shared_OLE::$_file_handle</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The file handle for reading an OLE container</dd> + <dt><b>$_list</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$_list">PHPExcel_Shared_OLE::$_list</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array of PPS's found on the OLE container</dd> + <dt><b>$_StartBlock</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$_StartBlock">PHPExcel_Shared_OLE_PPS::$_StartBlock</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Starting block (small or big) for this PPS's data inside the container</dd> + <dt><b>$_tmp_dir</b></dt> + <dd>in file Root.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#var$_tmp_dir">PHPExcel_Shared_OLE_PPS_Root::$_tmp_dir</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Directory for temporary files</dd> + <dt><b>_calcSize</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_calcSize">PHPExcel_Shared_OLE_PPS_Root::_calcSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate some numbers</dd> + <dt><b>_DataLen</b></dt> + <dd>in file PPS.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_DataLen">PHPExcel_Shared_OLE_PPS::_DataLen()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the amount of data saved for this PPS</dd> + <dt><b>_getBlockOffset</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#method_getBlockOffset">PHPExcel_Shared_OLE::_getBlockOffset()</a></dd> + <dt><b>_getPpsWk</b></dt> + <dd>in file PPS.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_getPpsWk">PHPExcel_Shared_OLE_PPS::_getPpsWk()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns a string with the PPS's WK (What is a WK?)</dd> + <dt><b>_makeSmallData</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_makeSmallData">PHPExcel_Shared_OLE_PPS_Root::_makeSmallData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;get small data (PPS's with data smaller than PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL)</dd> + <dt><b>_ppsTreeComplete</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#method_ppsTreeComplete">PHPExcel_Shared_OLE::_ppsTreeComplete()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;It checks whether the PPS tree is complete (all PPS's read) starting with the given PPS (not necessarily root)</dd> + <dt><b>_readPpsWks</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#method_readPpsWks">PHPExcel_Shared_OLE::_readPpsWks()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets information about all PPS's on the OLE container from the PPS WK's creates an OLE_PPS object for each one.</dd> + <dt><b>_saveBbd</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_saveBbd">PHPExcel_Shared_OLE_PPS_Root::_saveBbd()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saving Big Block Depot</dd> + <dt><b>_saveBigData</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_saveBigData">PHPExcel_Shared_OLE_PPS_Root::_saveBigData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saving big data (PPS's with data bigger than PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL)</dd> + <dt><b>_saveHeader</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_saveHeader">PHPExcel_Shared_OLE_PPS_Root::_saveHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save OLE header</dd> + <dt><b>_savePps</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method_savePps">PHPExcel_Shared_OLE_PPS_Root::_savePps()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Saves all the PPS's WKs</dd> + <dt><b>_savePpsSetPnt</b></dt> + <dd>in file PPS.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method_savePpsSetPnt">PHPExcel_Shared_OLE_PPS::_savePpsSetPnt()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Updates index and pointers to previous, next and children PPS's for this PPS. I don't think it'll work with Dir PPS's.</dd> + <dt><b>__construct</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#method__construct">PHPExcel_Shared_OLE_PPS_Root::__construct()</a></dd> + <dt><b>__construct</b></dt> + <dd>in file PPS.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#method__construct">PHPExcel_Shared_OLE_PPS::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#method__construct">PHPExcel_Shared_OLE_PPS_File::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The constructor</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>append</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#methodappend">PHPExcel_Shared_OLE_PPS_File::append()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Append data to PPS</dd> + <dt><b>Asc2Ucs</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodAsc2Ucs">PHPExcel_Shared_OLE::Asc2Ucs()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Utility function to transform ASCII text to Unicode</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>$bbat</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$bbat">PHPExcel_Shared_OLE::$bbat</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Big Block Allocation Table</dd> + <dt><b>$bigBlockSize</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$bigBlockSize">PHPExcel_Shared_OLE::$bigBlockSize</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Size of big blocks. This is usually 512.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>$children</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$children">PHPExcel_Shared_OLE_PPS::$children</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array of child PPS's (only used by Root and Dir PPS's)</dd> + <dt><b>ChainedBlockStream.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html">ChainedBlockStream.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>$data</b></dt> + <dd>in file ChainedBlockStream.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$data">PHPExcel_Shared_OLE_ChainedBlockStream::$data</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The binary data of the file.</dd> + <dt><b>$DirPps</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$DirPps">PHPExcel_Shared_OLE_PPS::$DirPps</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The index of it's first child if this is a Dir or Root PPS</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>File.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html">File.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getData</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodgetData">PHPExcel_Shared_OLE::getData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets data from a PPS If there is no PPS for the index given, it will return an empty string.</dd> + <dt><b>getDataLength</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodgetDataLength">PHPExcel_Shared_OLE::getDataLength()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets the data length from a PPS If there is no PPS for the index given, it will return 0.</dd> + <dt><b>getStream</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodgetStream">PHPExcel_Shared_OLE::getStream()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns a stream for use with fread() etc. External callers should use PHPExcel_Shared_OLE_PPS_File::getStream().</dd> + <dt><b>getStream</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#methodgetStream">PHPExcel_Shared_OLE_PPS_File::getStream()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns a stream for reading this file using fread() etc.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>init</b></dt> + <dd>in file File.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html#methodinit">PHPExcel_Shared_OLE_PPS_File::init()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Initialization method. Has to be called right after OLE_PPS_File().</dd> + <dt><b>isFile</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodisFile">PHPExcel_Shared_OLE::isFile()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks whether a PPS is a File PPS or not.</dd> + <dt><b>isRoot</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodisRoot">PHPExcel_Shared_OLE::isRoot()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Checks whether a PPS is a Root PPS or not.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="l"></a> + <div> + <h2>l</h2> + <dl> + <dt><b>LocalDate2OLE</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodLocalDate2OLE">PHPExcel_Shared_OLE::LocalDate2OLE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Utility function Returns a string for the OLE container with the date given</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="n"></a> + <div> + <h2>n</h2> + <dl> + <dt><b>$Name</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Name">PHPExcel_Shared_OLE_PPS::$Name</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The PPS name (in Unicode)</dd> + <dt><b>$NextPps</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$NextPps">PHPExcel_Shared_OLE_PPS::$NextPps</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The index of the next PPS</dd> + <dt><b>$No</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$No">PHPExcel_Shared_OLE_PPS::$No</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The PPS index</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="o"></a> + <div> + <h2>o</h2> + <dl> + <dt><b>$ole</b></dt> + <dd>in file ChainedBlockStream.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$ole">PHPExcel_Shared_OLE_ChainedBlockStream::$ole</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The OLE container of the file that is being read.</dd> + <dt><b>$ole</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$ole">PHPExcel_Shared_OLE_PPS::$ole</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Pointer to OLE container</dd> + <dt><b>OLE2LocalDate</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodOLE2LocalDate">PHPExcel_Shared_OLE::OLE2LocalDate()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns a timestamp from an OLE container's date</dd> + <dt><b>OLE_DATA_SIZE_SMALL</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_DATA_SIZE_SMALL">PHPExcel_Shared_OLE::OLE_DATA_SIZE_SMALL</a></dd> + <dt><b>OLE_LONG_INT_SIZE</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_LONG_INT_SIZE">PHPExcel_Shared_OLE::OLE_LONG_INT_SIZE</a></dd> + <dt><b>OLE_PPS_SIZE</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_SIZE">PHPExcel_Shared_OLE::OLE_PPS_SIZE</a></dd> + <dt><b>OLE_PPS_TYPE_DIR</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_TYPE_DIR">PHPExcel_Shared_OLE::OLE_PPS_TYPE_DIR</a></dd> + <dt><b>OLE_PPS_TYPE_FILE</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_TYPE_FILE">PHPExcel_Shared_OLE::OLE_PPS_TYPE_FILE</a></dd> + <dt><b>OLE_PPS_TYPE_ROOT</b></dt> + <dd>in file OLE.php, class constant <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#constOLE_PPS_TYPE_ROOT">PHPExcel_Shared_OLE::OLE_PPS_TYPE_ROOT</a></dd> + <dt><b>OLE.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html">OLE.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>$params</b></dt> + <dd>in file ChainedBlockStream.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$params">PHPExcel_Shared_OLE_ChainedBlockStream::$params</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Parameters specified by fopen().</dd> + <dt><b>$pos</b></dt> + <dd>in file ChainedBlockStream.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#var$pos">PHPExcel_Shared_OLE_ChainedBlockStream::$pos</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The file pointer.</dd> + <dt><b>$PrevPps</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$PrevPps">PHPExcel_Shared_OLE_PPS::$PrevPps</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The index of the previous PPS</dd> + <dt><b>PPS.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html">PPS.php</a></dd> + <dt><b>PHPExcel_Shared_OLE</b></dt> + <dd>in file OLE.php, class <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;OLE package base class.</dd> + <dt><b>PHPExcel_Shared_OLE_ChainedBlockStream</b></dt> + <dd>in file ChainedBlockStream.php, class <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_OLE_ChainedBlockStream</dd> + <dt><b>PHPExcel_Shared_OLE_PPS</b></dt> + <dd>in file PPS.php, class <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Class for creating PPS's for OLE containers</dd> + <dt><b>PHPExcel_Shared_OLE_PPS_File</b></dt> + <dd>in file File.php, class <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Class for creating File PPS's for OLE containers</dd> + <dt><b>PHPExcel_Shared_OLE_PPS_Root</b></dt> + <dd>in file Root.php, class <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Class for creating Root PPS's for OLE containers</dd> + <dt><b>ppsTotal</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodppsTotal">PHPExcel_Shared_OLE::ppsTotal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gives the total number of PPS's found in the OLE container.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>$root</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$root">PHPExcel_Shared_OLE::$root</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Root directory of OLE container</dd> + <dt><b>Root.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html">Root.php</a></dd> + <dt><b>read</b></dt> + <dd>in file OLE.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#methodread">PHPExcel_Shared_OLE::read()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reads an OLE container from the contents of the file given.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>$sbat</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$sbat">PHPExcel_Shared_OLE::$sbat</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Short Block Allocation Table</dd> + <dt><b>$Size</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Size">PHPExcel_Shared_OLE_PPS::$Size</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The size of the PPS's data (in bytes)</dd> + <dt><b>$smallBlockSize</b></dt> + <dd>in file OLE.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html#var$smallBlockSize">PHPExcel_Shared_OLE::$smallBlockSize</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Size of small blocks. This is usually 64.</dd> + <dt><b>save</b></dt> + <dd>in file Root.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html#methodsave">PHPExcel_Shared_OLE_PPS_Root::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Method for saving the whole OLE container (including files).</dd> + <dt><b>stream_close</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_close">PHPExcel_Shared_OLE_ChainedBlockStream::stream_close()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fclose().</dd> + <dt><b>stream_eof</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_eof">PHPExcel_Shared_OLE_ChainedBlockStream::stream_eof()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for feof().</dd> + <dt><b>stream_open</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_open">PHPExcel_Shared_OLE_ChainedBlockStream::stream_open()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fopen().</dd> + <dt><b>stream_read</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_read">PHPExcel_Shared_OLE_ChainedBlockStream::stream_read()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fread(), fgets() etc.</dd> + <dt><b>stream_seek</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_seek">PHPExcel_Shared_OLE_ChainedBlockStream::stream_seek()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fseek().</dd> + <dt><b>stream_stat</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_stat">PHPExcel_Shared_OLE_ChainedBlockStream::stream_stat()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implements support for fstat(). Currently the only supported field is &quot;size&quot;.</dd> + <dt><b>stream_tell</b></dt> + <dd>in file ChainedBlockStream.php, method <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html#methodstream_tell">PHPExcel_Shared_OLE_ChainedBlockStream::stream_tell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Returns the position of the file pointer, i.e. its offset into the file stream. Implements support for ftell().</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>$Time1st</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Time1st">PHPExcel_Shared_OLE_PPS::$Time1st</a><br>&nbsp;&nbsp;&nbsp;&nbsp;A timestamp</dd> + <dt><b>$Time2nd</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Time2nd">PHPExcel_Shared_OLE_PPS::$Time2nd</a><br>&nbsp;&nbsp;&nbsp;&nbsp;A timestamp</dd> + <dt><b>$Type</b></dt> + <dd>in file PPS.php, variable <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html#var$Type">PHPExcel_Shared_OLE_PPS::$Type</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The PPS type. Dir, Root or File</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_OLE.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_Trend.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_Trend.html new file mode 100644 index 0000000..4406372 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_Trend.html @@ -0,0 +1,379 @@ +<html> +<head> +<title>Package PHPExcel_Shared_Trend Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Shared_Trend</h1> + [ <a href="elementindex_PHPExcel_Shared_Trend.html#b">b</a> ] + [ <a href="elementindex_PHPExcel_Shared_Trend.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Shared_Trend.html#e">e</a> ] + [ <a href="elementindex_PHPExcel_Shared_Trend.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Shared_Trend.html#l">l</a> ] + [ <a href="elementindex_PHPExcel_Shared_Trend.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Shared_Trend.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Shared_Trend.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>$_adjustToZero</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_adjustToZero">PHPExcel_Best_Fit::$_adjustToZero</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flag indicating whether values should be adjusted to Y=0</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file logarithmicBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#var$_bestFitType">PHPExcel_Logarithmic_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit (Name of this trend class)</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file linearBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#var$_bestFitType">PHPExcel_Linear_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit (Name of this trend class)</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file exponentialBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#var$_bestFitType">PHPExcel_Exponential_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit (Name of this trend class)</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file polynomialBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#var$_bestFitType">PHPExcel_Polynomial_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit (Name of this trend class)</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_bestFitType">PHPExcel_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit</dd> + <dt><b>$_bestFitType</b></dt> + <dd>in file powerBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#var$_bestFitType">PHPExcel_Power_Best_Fit::$_bestFitType</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Algorithm type to use for best-fit (Name of this trend class)</dd> + <dt><b>$_correlation</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_correlation">PHPExcel_Best_Fit::$_correlation</a></dd> + <dt><b>$_covariance</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_covariance">PHPExcel_Best_Fit::$_covariance</a></dd> + <dt><b>$_DFResiduals</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_DFResiduals">PHPExcel_Best_Fit::$_DFResiduals</a></dd> + <dt><b>$_error</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_error">PHPExcel_Best_Fit::$_error</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Indicator flag for a calculation error</dd> + <dt><b>$_F</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_F">PHPExcel_Best_Fit::$_F</a></dd> + <dt><b>$_goodnessOfFit</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_goodnessOfFit">PHPExcel_Best_Fit::$_goodnessOfFit</a></dd> + <dt><b>$_intersect</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersect">PHPExcel_Best_Fit::$_intersect</a></dd> + <dt><b>$_intersectSE</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_intersectSE">PHPExcel_Best_Fit::$_intersectSE</a></dd> + <dt><b>$_order</b></dt> + <dd>in file polynomialBestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#var$_order">PHPExcel_Polynomial_Best_Fit::$_order</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Polynomial order</dd> + <dt><b>$_slope</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slope">PHPExcel_Best_Fit::$_slope</a></dd> + <dt><b>$_slopeSE</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_slopeSE">PHPExcel_Best_Fit::$_slopeSE</a></dd> + <dt><b>$_SSRegression</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSRegression">PHPExcel_Best_Fit::$_SSRegression</a></dd> + <dt><b>$_SSResiduals</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_SSResiduals">PHPExcel_Best_Fit::$_SSResiduals</a></dd> + <dt><b>$_stdevOfResiduals</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_stdevOfResiduals">PHPExcel_Best_Fit::$_stdevOfResiduals</a></dd> + <dt><b>$_valueCount</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_valueCount">PHPExcel_Best_Fit::$_valueCount</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Number of entries in the sets of x- and y-value arrays</dd> + <dt><b>$_Xoffset</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Xoffset">PHPExcel_Best_Fit::$_Xoffset</a></dd> + <dt><b>$_xValues</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_xValues">PHPExcel_Best_Fit::$_xValues</a><br>&nbsp;&nbsp;&nbsp;&nbsp;X-value dataseries of values</dd> + <dt><b>$_yBestFitValues</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yBestFitValues">PHPExcel_Best_Fit::$_yBestFitValues</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Y-value series of best-fit values</dd> + <dt><b>$_Yoffset</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_Yoffset">PHPExcel_Best_Fit::$_Yoffset</a></dd> + <dt><b>$_yValues</b></dt> + <dd>in file bestFitClass.php, variable <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#var$_yValues">PHPExcel_Best_Fit::$_yValues</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Y-value dataseries of values</dd> + <dt><b>_calculateGoodnessOfFit</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_calculateGoodnessOfFit">PHPExcel_Best_Fit::_calculateGoodnessOfFit()</a></dd> + <dt><b>_leastSquareFit</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method_leastSquareFit">PHPExcel_Best_Fit::_leastSquareFit()</a></dd> + <dt><b>__construct</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#method__construct">PHPExcel_Polynomial_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + <dt><b>__construct</b></dt> + <dd>in file powerBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#method__construct">PHPExcel_Power_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + <dt><b>__construct</b></dt> + <dd>in file logarithmicBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#method__construct">PHPExcel_Logarithmic_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + <dt><b>__construct</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#method__construct">PHPExcel_Exponential_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + <dt><b>__construct</b></dt> + <dd>in file linearBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#method__construct">PHPExcel_Linear_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression and calculate the goodness of fit for a set of X and Y data values</dd> + <dt><b>__construct</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#method__construct">PHPExcel_Best_Fit::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Define the regression</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Trend.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>bestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html">bestFitClass.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Trend.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>calculate</b></dt> + <dd>in file trendClass.php, method <a href="PHPExcel_Shared_Trend/trendClass.html#methodcalculate">trendClass::calculate()</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Trend.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>exponentialBestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html">exponentialBestFitClass.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Trend.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getBestFitType</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetBestFitType">PHPExcel_Best_Fit::getBestFitType()</a></dd> + <dt><b>getCoefficients</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetCoefficients">PHPExcel_Polynomial_Best_Fit::getCoefficients()</a></dd> + <dt><b>getCorrelation</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCorrelation">PHPExcel_Best_Fit::getCorrelation()</a></dd> + <dt><b>getCovariance</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetCovariance">PHPExcel_Best_Fit::getCovariance()</a></dd> + <dt><b>getDFResiduals</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetDFResiduals">PHPExcel_Best_Fit::getDFResiduals()</a></dd> + <dt><b>getEquation</b></dt> + <dd>in file logarithmicBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetEquation">PHPExcel_Logarithmic_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getEquation</b></dt> + <dd>in file linearBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetEquation">PHPExcel_Linear_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getEquation</b></dt> + <dd>in file powerBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetEquation">PHPExcel_Power_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getEquation</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetEquation">PHPExcel_Polynomial_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getEquation</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetEquation">PHPExcel_Exponential_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getEquation</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetEquation">PHPExcel_Best_Fit::getEquation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Equation of the best-fit line</dd> + <dt><b>getError</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetError">PHPExcel_Best_Fit::getError()</a></dd> + <dt><b>getF</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetF">PHPExcel_Best_Fit::getF()</a></dd> + <dt><b>getGoodnessOfFit</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFit">PHPExcel_Best_Fit::getGoodnessOfFit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the goodness of fit for this regression</dd> + <dt><b>getGoodnessOfFitPercent</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetGoodnessOfFitPercent">PHPExcel_Best_Fit::getGoodnessOfFitPercent()</a></dd> + <dt><b>getIntersect</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersect">PHPExcel_Best_Fit::getIntersect()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Value of X where it intersects Y = 0</dd> + <dt><b>getIntersect</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetIntersect">PHPExcel_Exponential_Best_Fit::getIntersect()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Value of X where it intersects Y = 0</dd> + <dt><b>getIntersect</b></dt> + <dd>in file powerBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetIntersect">PHPExcel_Power_Best_Fit::getIntersect()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Value of X where it intersects Y = 0</dd> + <dt><b>getIntersectSE</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetIntersectSE">PHPExcel_Best_Fit::getIntersectSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the standard error of the Intersect</dd> + <dt><b>getOrder</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetOrder">PHPExcel_Polynomial_Best_Fit::getOrder()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the order of this polynomial</dd> + <dt><b>getSlope</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetSlope">PHPExcel_Polynomial_Best_Fit::getSlope()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Slope of the line</dd> + <dt><b>getSlope</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetSlope">PHPExcel_Exponential_Best_Fit::getSlope()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Slope of the line</dd> + <dt><b>getSlope</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlope">PHPExcel_Best_Fit::getSlope()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Slope of the line</dd> + <dt><b>getSlopeSE</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSlopeSE">PHPExcel_Best_Fit::getSlopeSE()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the standard error of the Slope</dd> + <dt><b>getSSRegression</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSRegression">PHPExcel_Best_Fit::getSSRegression()</a></dd> + <dt><b>getSSResiduals</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetSSResiduals">PHPExcel_Best_Fit::getSSResiduals()</a></dd> + <dt><b>getStdevOfResiduals</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetStdevOfResiduals">PHPExcel_Best_Fit::getStdevOfResiduals()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the standard deviation of the residuals for this regression</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file powerBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Power_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Polynomial_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file linearBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Linear_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file logarithmicBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Logarithmic_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Exponential_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfXForY</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfXForY">PHPExcel_Best_Fit::getValueOfXForY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the X-Value for a specified value of Y</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file polynomialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Polynomial_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file powerBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Power_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file linearBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Linear_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file logarithmicBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Logarithmic_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file exponentialBestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Exponential_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getValueOfYForX</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetValueOfYForX">PHPExcel_Best_Fit::getValueOfYForX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the Y-Value for a specified value of X</dd> + <dt><b>getXValues</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetXValues">PHPExcel_Best_Fit::getXValues()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the original set of X-Values</dd> + <dt><b>getYBestFitValues</b></dt> + <dd>in file bestFitClass.php, method <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html#methodgetYBestFitValues">PHPExcel_Best_Fit::getYBestFitValues()</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Trend.html#top">top</a><br> + <hr /> + <a name="l"></a> + <div> + <h2>l</h2> + <dl> + <dt><b>linearBestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html">linearBestFitClass.php</a></dd> + <dt><b>logarithmicBestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html">logarithmicBestFitClass.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Trend.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>polynomialBestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html">polynomialBestFitClass.php</a></dd> + <dt><b>powerBestFitClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html">powerBestFitClass.php</a></dd> + <dt><b>PHPExcel_Best_Fit</b></dt> + <dd>in file bestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Best_Fit</dd> + <dt><b>PHPExcel_Exponential_Best_Fit</b></dt> + <dd>in file exponentialBestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Exponential_Best_Fit</dd> + <dt><b>PHPExcel_Linear_Best_Fit</b></dt> + <dd>in file linearBestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Linear_Best_Fit</dd> + <dt><b>PHPExcel_Logarithmic_Best_Fit</b></dt> + <dd>in file logarithmicBestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Logarithmic_Best_Fit</dd> + <dt><b>PHPExcel_Polynomial_Best_Fit</b></dt> + <dd>in file polynomialBestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Polynomial_Best_Fit</dd> + <dt><b>PHPExcel_Power_Best_Fit</b></dt> + <dd>in file powerBestFitClass.php, class <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Power_Best_Fit</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Trend.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>trendClass.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html">trendClass.php</a></dd> + <dt><b>trendClass</b></dt> + <dd>in file trendClass.php, class <a href="PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_trendClass</dd> + <dt><b>TREND_BEST_FIT</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_BEST_FIT">trendClass::TREND_BEST_FIT</a></dd> + <dt><b>TREND_BEST_FIT_NO_POLY</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_BEST_FIT_NO_POLY">trendClass::TREND_BEST_FIT_NO_POLY</a></dd> + <dt><b>TREND_EXPONENTIAL</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_EXPONENTIAL">trendClass::TREND_EXPONENTIAL</a></dd> + <dt><b>TREND_LINEAR</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_LINEAR">trendClass::TREND_LINEAR</a></dd> + <dt><b>TREND_LOGARITHMIC</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_LOGARITHMIC">trendClass::TREND_LOGARITHMIC</a></dd> + <dt><b>TREND_POLYNOMIAL_2</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_2">trendClass::TREND_POLYNOMIAL_2</a></dd> + <dt><b>TREND_POLYNOMIAL_3</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_3">trendClass::TREND_POLYNOMIAL_3</a></dd> + <dt><b>TREND_POLYNOMIAL_4</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_4">trendClass::TREND_POLYNOMIAL_4</a></dd> + <dt><b>TREND_POLYNOMIAL_5</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_5">trendClass::TREND_POLYNOMIAL_5</a></dd> + <dt><b>TREND_POLYNOMIAL_6</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POLYNOMIAL_6">trendClass::TREND_POLYNOMIAL_6</a></dd> + <dt><b>TREND_POWER</b></dt> + <dd>in file trendClass.php, class constant <a href="PHPExcel_Shared_Trend/trendClass.html#constTREND_POWER">trendClass::TREND_POWER</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_Trend.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_ZipArchive.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_ZipArchive.html new file mode 100644 index 0000000..02e8039 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Shared_ZipArchive.html @@ -0,0 +1,146 @@ +<html> +<head> +<title>Package PHPExcel_Shared_ZipArchive Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_ZipArchive</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_ZipArchive.html" class="menu">class tree: PHPExcel_Shared_ZipArchive</a> ] + [ <a href="elementindex_PHPExcel_Shared_ZipArchive.html" class="menu">index: PHPExcel_Shared_ZipArchive</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_ZipArchive/_PHPExcel---Shared---ZipArchive.php.html"> ZipArchive.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Shared_ZipArchive</h1> + [ <a href="elementindex_PHPExcel_Shared_ZipArchive.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_Shared_ZipArchive.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Shared_ZipArchive.html#o">o</a> ] + [ <a href="elementindex_PHPExcel_Shared_ZipArchive.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Shared_ZipArchive.html#z">z</a> ] + + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>addFromString</b></dt> + <dd>in file ZipArchive.php, method <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#methodaddFromString">PHPExcel_Shared_ZipArchive::addFromString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a new file to the zip archive from a string of raw data.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_ZipArchive.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>close</b></dt> + <dd>in file ZipArchive.php, method <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#methodclose">PHPExcel_Shared_ZipArchive::close()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Close this zip archive</dd> + <dt><b>CREATE</b></dt> + <dd>in file ZipArchive.php, class constant <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#constCREATE">PHPExcel_Shared_ZipArchive::CREATE</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_ZipArchive.html#top">top</a><br> + <hr /> + <a name="o"></a> + <div> + <h2>o</h2> + <dl> + <dt><b>open</b></dt> + <dd>in file ZipArchive.php, method <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#methodopen">PHPExcel_Shared_ZipArchive::open()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Open a new zip archive</dd> + <dt><b>OVERWRITE</b></dt> + <dd>in file ZipArchive.php, class constant <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html#constOVERWRITE">PHPExcel_Shared_ZipArchive::OVERWRITE</a><br>&nbsp;&nbsp;&nbsp;&nbsp;constants</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_ZipArchive.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PCLZIP_TEMPORARY_DIR</b></dt> + <dd>in file ZipArchive.php, constant <a href="PHPExcel_Shared_ZipArchive/_PHPExcel---Shared---ZipArchive.php.html#definePCLZIP_TEMPORARY_DIR">PCLZIP_TEMPORARY_DIR</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel</dd> + <dt><b>PHPExcel_Shared_ZipArchive</b></dt> + <dd>in file ZipArchive.php, class <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_ZipArchive</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_ZipArchive.html#top">top</a><br> + <hr /> + <a name="z"></a> + <div> + <h2>z</h2> + <dl> + <dt><b>ZipArchive.php</b></dt> + <dd>procedural page <a href="PHPExcel_Shared_ZipArchive/_PHPExcel---Shared---ZipArchive.php.html">ZipArchive.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Shared_ZipArchive.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Style.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Style.html new file mode 100644 index 0000000..18df3d3 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Style.html @@ -0,0 +1,932 @@ +<html> +<head> +<title>Package PHPExcel_Style Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Style</h1> + [ <a href="elementindex_PHPExcel_Style.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_Style.html#b">b</a> ] + [ <a href="elementindex_PHPExcel_Style.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Style.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Style.html#f">f</a> ] + [ <a href="elementindex_PHPExcel_Style.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Style.html#h">h</a> ] + [ <a href="elementindex_PHPExcel_Style.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_Style.html#n">n</a> ] + [ <a href="elementindex_PHPExcel_Style.html#o">o</a> ] + [ <a href="elementindex_PHPExcel_Style.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Style.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Style.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Style.html#u">u</a> ] + [ <a href="elementindex_PHPExcel_Style.html#v">v</a> ] + [ <a href="elementindex_PHPExcel_Style.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>__clone</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#method__clone">PHPExcel_Style_Font::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#method__clone">PHPExcel_Style_Fill::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#method__clone">PHPExcel_Style_NumberFormat::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#method__clone">PHPExcel_Style_Protection::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#method__clone">PHPExcel_Style::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#method__clone">PHPExcel_Style_Color::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#method__clone">PHPExcel_Style_Conditional::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#method__clone">PHPExcel_Style_Border::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#method__clone">PHPExcel_Style_Alignment::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#method__clone">PHPExcel_Style_Borders::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__construct</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#method__construct">PHPExcel_Style_Protection::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Protection</dd> + <dt><b>__construct</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#method__construct">PHPExcel_Style_Border::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Border</dd> + <dt><b>__construct</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#method__construct">PHPExcel_Style::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style</dd> + <dt><b>__construct</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#method__construct">PHPExcel_Style_NumberFormat::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_NumberFormat</dd> + <dt><b>__construct</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#method__construct">PHPExcel_Style_Borders::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Borders</dd> + <dt><b>__construct</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#method__construct">PHPExcel_Style_Conditional::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Conditional</dd> + <dt><b>__construct</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#method__construct">PHPExcel_Style_Alignment::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Alignment</dd> + <dt><b>__construct</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#method__construct">PHPExcel_Style_Fill::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Fill</dd> + <dt><b>__construct</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#method__construct">PHPExcel_Style_Font::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Font</dd> + <dt><b>__construct</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#method__construct">PHPExcel_Style_Color::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Style_Color</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>addCondition</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodaddCondition">PHPExcel_Style_Conditional::addCondition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add Condition</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodapplyFromArray">PHPExcel_Style_Font::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodapplyFromArray">PHPExcel_Style_NumberFormat::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodapplyFromArray">PHPExcel_Style_Protection::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodapplyFromArray">PHPExcel_Style_Fill::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodapplyFromArray">PHPExcel_Style_Alignment::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodapplyFromArray">PHPExcel_Style_Border::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodapplyFromArray">PHPExcel_Style_Borders::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodapplyFromArray">PHPExcel_Style_Color::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>applyFromArray</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodapplyFromArray">PHPExcel_Style::applyFromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply styles from array</dd> + <dt><b>Alignment.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Alignment.php.html">Alignment.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>bindParent</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodbindParent">PHPExcel_Style_NumberFormat::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodbindParent">PHPExcel_Style_Protection::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodbindParent">PHPExcel_Style_Color::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodbindParent">PHPExcel_Style_Borders::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodbindParent">PHPExcel_Style_Alignment::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodbindParent">PHPExcel_Style_Font::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodbindParent">PHPExcel_Style_Fill::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodbindParent">PHPExcel_Style::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>bindParent</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodbindParent">PHPExcel_Style_Border::bindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Bind parent. Only used for supervisor</dd> + <dt><b>BORDER_DASHDOT</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DASHDOT">PHPExcel_Style_Border::BORDER_DASHDOT</a></dd> + <dt><b>BORDER_DASHDOTDOT</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DASHDOTDOT">PHPExcel_Style_Border::BORDER_DASHDOTDOT</a></dd> + <dt><b>BORDER_DASHED</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DASHED">PHPExcel_Style_Border::BORDER_DASHED</a></dd> + <dt><b>BORDER_DOTTED</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DOTTED">PHPExcel_Style_Border::BORDER_DOTTED</a></dd> + <dt><b>BORDER_DOUBLE</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_DOUBLE">PHPExcel_Style_Border::BORDER_DOUBLE</a></dd> + <dt><b>BORDER_HAIR</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_HAIR">PHPExcel_Style_Border::BORDER_HAIR</a></dd> + <dt><b>BORDER_MEDIUM</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUM">PHPExcel_Style_Border::BORDER_MEDIUM</a></dd> + <dt><b>BORDER_MEDIUMDASHDOT</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUMDASHDOT">PHPExcel_Style_Border::BORDER_MEDIUMDASHDOT</a></dd> + <dt><b>BORDER_MEDIUMDASHDOTDOT</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUMDASHDOTDOT">PHPExcel_Style_Border::BORDER_MEDIUMDASHDOTDOT</a></dd> + <dt><b>BORDER_MEDIUMDASHED</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_MEDIUMDASHED">PHPExcel_Style_Border::BORDER_MEDIUMDASHED</a></dd> + <dt><b>BORDER_NONE</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_NONE">PHPExcel_Style_Border::BORDER_NONE</a></dd> + <dt><b>BORDER_SLANTDASHDOT</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_SLANTDASHDOT">PHPExcel_Style_Border::BORDER_SLANTDASHDOT</a></dd> + <dt><b>BORDER_THICK</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_THICK">PHPExcel_Style_Border::BORDER_THICK</a></dd> + <dt><b>BORDER_THIN</b></dt> + <dd>in file Border.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Border.html#constBORDER_THIN">PHPExcel_Style_Border::BORDER_THIN</a></dd> + <dt><b>builtInFormatCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodbuiltInFormatCode">PHPExcel_Style_NumberFormat::builtInFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get built-in format code</dd> + <dt><b>builtInFormatCodeIndex</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodbuiltInFormatCodeIndex">PHPExcel_Style_NumberFormat::builtInFormatCodeIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get built-in format code index</dd> + <dt><b>Border.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Border.php.html">Border.php</a></dd> + <dt><b>Borders.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Borders.php.html">Borders.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>changeBrightness</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodchangeBrightness">PHPExcel_Style_Color::changeBrightness()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Adjust the brightness of a color</dd> + <dt><b>COLOR_BLACK</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_BLACK">PHPExcel_Style_Color::COLOR_BLACK</a></dd> + <dt><b>COLOR_BLUE</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_BLUE">PHPExcel_Style_Color::COLOR_BLUE</a></dd> + <dt><b>COLOR_DARKBLUE</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKBLUE">PHPExcel_Style_Color::COLOR_DARKBLUE</a></dd> + <dt><b>COLOR_DARKGREEN</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKGREEN">PHPExcel_Style_Color::COLOR_DARKGREEN</a></dd> + <dt><b>COLOR_DARKRED</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKRED">PHPExcel_Style_Color::COLOR_DARKRED</a></dd> + <dt><b>COLOR_DARKYELLOW</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_DARKYELLOW">PHPExcel_Style_Color::COLOR_DARKYELLOW</a></dd> + <dt><b>COLOR_GREEN</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_GREEN">PHPExcel_Style_Color::COLOR_GREEN</a></dd> + <dt><b>COLOR_RED</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_RED">PHPExcel_Style_Color::COLOR_RED</a></dd> + <dt><b>COLOR_WHITE</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_WHITE">PHPExcel_Style_Color::COLOR_WHITE</a></dd> + <dt><b>COLOR_YELLOW</b></dt> + <dd>in file Color.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Color.html#constCOLOR_YELLOW">PHPExcel_Style_Color::COLOR_YELLOW</a></dd> + <dt><b>CONDITION_CELLIS</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_CELLIS">PHPExcel_Style_Conditional::CONDITION_CELLIS</a></dd> + <dt><b>CONDITION_CONTAINSTEXT</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_CONTAINSTEXT">PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT</a></dd> + <dt><b>CONDITION_EXPRESSION</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_EXPRESSION">PHPExcel_Style_Conditional::CONDITION_EXPRESSION</a></dd> + <dt><b>CONDITION_NONE</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constCONDITION_NONE">PHPExcel_Style_Conditional::CONDITION_NONE</a></dd> + <dt><b>Color.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Color.php.html">Color.php</a></dd> + <dt><b>Conditional.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Conditional.php.html">Conditional.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>DIAGONAL_BOTH</b></dt> + <dd>in file Borders.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_BOTH">PHPExcel_Style_Borders::DIAGONAL_BOTH</a></dd> + <dt><b>DIAGONAL_DOWN</b></dt> + <dd>in file Borders.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_DOWN">PHPExcel_Style_Borders::DIAGONAL_DOWN</a></dd> + <dt><b>DIAGONAL_NONE</b></dt> + <dd>in file Borders.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_NONE">PHPExcel_Style_Borders::DIAGONAL_NONE</a></dd> + <dt><b>DIAGONAL_UP</b></dt> + <dd>in file Borders.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#constDIAGONAL_UP">PHPExcel_Style_Borders::DIAGONAL_UP</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>FILL_GRADIENT_LINEAR</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_GRADIENT_LINEAR">PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR</a></dd> + <dt><b>FILL_GRADIENT_PATH</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_GRADIENT_PATH">PHPExcel_Style_Fill::FILL_GRADIENT_PATH</a></dd> + <dt><b>FILL_NONE</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_NONE">PHPExcel_Style_Fill::FILL_NONE</a></dd> + <dt><b>FILL_PATTERN_DARKDOWN</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKDOWN">PHPExcel_Style_Fill::FILL_PATTERN_DARKDOWN</a></dd> + <dt><b>FILL_PATTERN_DARKGRAY</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKGRAY">PHPExcel_Style_Fill::FILL_PATTERN_DARKGRAY</a></dd> + <dt><b>FILL_PATTERN_DARKGRID</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKGRID">PHPExcel_Style_Fill::FILL_PATTERN_DARKGRID</a></dd> + <dt><b>FILL_PATTERN_DARKHORIZONTAL</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKHORIZONTAL">PHPExcel_Style_Fill::FILL_PATTERN_DARKHORIZONTAL</a></dd> + <dt><b>FILL_PATTERN_DARKTRELLIS</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKTRELLIS">PHPExcel_Style_Fill::FILL_PATTERN_DARKTRELLIS</a></dd> + <dt><b>FILL_PATTERN_DARKUP</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKUP">PHPExcel_Style_Fill::FILL_PATTERN_DARKUP</a></dd> + <dt><b>FILL_PATTERN_DARKVERTICAL</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_DARKVERTICAL">PHPExcel_Style_Fill::FILL_PATTERN_DARKVERTICAL</a></dd> + <dt><b>FILL_PATTERN_GRAY0625</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_GRAY0625">PHPExcel_Style_Fill::FILL_PATTERN_GRAY0625</a></dd> + <dt><b>FILL_PATTERN_GRAY125</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_GRAY125">PHPExcel_Style_Fill::FILL_PATTERN_GRAY125</a></dd> + <dt><b>FILL_PATTERN_LIGHTDOWN</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTDOWN">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTDOWN</a></dd> + <dt><b>FILL_PATTERN_LIGHTGRAY</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTGRAY">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRAY</a></dd> + <dt><b>FILL_PATTERN_LIGHTGRID</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTGRID">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTGRID</a></dd> + <dt><b>FILL_PATTERN_LIGHTHORIZONTAL</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTHORIZONTAL">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTHORIZONTAL</a></dd> + <dt><b>FILL_PATTERN_LIGHTTRELLIS</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTTRELLIS">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTTRELLIS</a></dd> + <dt><b>FILL_PATTERN_LIGHTUP</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTUP">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTUP</a></dd> + <dt><b>FILL_PATTERN_LIGHTVERTICAL</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_LIGHTVERTICAL">PHPExcel_Style_Fill::FILL_PATTERN_LIGHTVERTICAL</a></dd> + <dt><b>FILL_PATTERN_MEDIUMGRAY</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_PATTERN_MEDIUMGRAY">PHPExcel_Style_Fill::FILL_PATTERN_MEDIUMGRAY</a></dd> + <dt><b>FILL_SOLID</b></dt> + <dd>in file Fill.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#constFILL_SOLID">PHPExcel_Style_Fill::FILL_SOLID</a></dd> + <dt><b>FORMAT_CURRENCY_EUR_SIMPLE</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_CURRENCY_EUR_SIMPLE">PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE</a></dd> + <dt><b>FORMAT_CURRENCY_USD</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_CURRENCY_USD">PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD</a></dd> + <dt><b>FORMAT_CURRENCY_USD_SIMPLE</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_CURRENCY_USD_SIMPLE">PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE</a></dd> + <dt><b>FORMAT_DATE_DATETIME</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DATETIME">PHPExcel_Style_NumberFormat::FORMAT_DATE_DATETIME</a></dd> + <dt><b>FORMAT_DATE_DDMMYYYY</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DDMMYYYY">PHPExcel_Style_NumberFormat::FORMAT_DATE_DDMMYYYY</a></dd> + <dt><b>FORMAT_DATE_DMMINUS</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DMMINUS">PHPExcel_Style_NumberFormat::FORMAT_DATE_DMMINUS</a></dd> + <dt><b>FORMAT_DATE_DMYMINUS</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DMYMINUS">PHPExcel_Style_NumberFormat::FORMAT_DATE_DMYMINUS</a></dd> + <dt><b>FORMAT_DATE_DMYSLASH</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_DMYSLASH">PHPExcel_Style_NumberFormat::FORMAT_DATE_DMYSLASH</a></dd> + <dt><b>FORMAT_DATE_MYMINUS</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_MYMINUS">PHPExcel_Style_NumberFormat::FORMAT_DATE_MYMINUS</a></dd> + <dt><b>FORMAT_DATE_TIME1</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME1">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME1</a></dd> + <dt><b>FORMAT_DATE_TIME2</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME2">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME2</a></dd> + <dt><b>FORMAT_DATE_TIME3</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME3">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME3</a></dd> + <dt><b>FORMAT_DATE_TIME4</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME4">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4</a></dd> + <dt><b>FORMAT_DATE_TIME5</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME5">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME5</a></dd> + <dt><b>FORMAT_DATE_TIME6</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME6">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME6</a></dd> + <dt><b>FORMAT_DATE_TIME7</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME7">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME7</a></dd> + <dt><b>FORMAT_DATE_TIME8</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_TIME8">PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME8</a></dd> + <dt><b>FORMAT_DATE_XLSX14</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX14">PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX14</a></dd> + <dt><b>FORMAT_DATE_XLSX15</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX15">PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15</a></dd> + <dt><b>FORMAT_DATE_XLSX16</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX16">PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX16</a></dd> + <dt><b>FORMAT_DATE_XLSX17</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX17">PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX17</a></dd> + <dt><b>FORMAT_DATE_XLSX22</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_XLSX22">PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX22</a></dd> + <dt><b>FORMAT_DATE_YYYYMMDD</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_YYYYMMDD">PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD</a></dd> + <dt><b>FORMAT_DATE_YYYYMMDD2</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_YYYYMMDD2">PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2</a></dd> + <dt><b>FORMAT_DATE_YYYYMMDDSLASH</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_DATE_YYYYMMDDSLASH">PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH</a></dd> + <dt><b>FORMAT_GENERAL</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_GENERAL">PHPExcel_Style_NumberFormat::FORMAT_GENERAL</a></dd> + <dt><b>FORMAT_NUMBER</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER">PHPExcel_Style_NumberFormat::FORMAT_NUMBER</a></dd> + <dt><b>FORMAT_NUMBER_00</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER_00">PHPExcel_Style_NumberFormat::FORMAT_NUMBER_00</a></dd> + <dt><b>FORMAT_NUMBER_COMMA_SEPARATED1</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER_COMMA_SEPARATED1">PHPExcel_Style_NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1</a></dd> + <dt><b>FORMAT_NUMBER_COMMA_SEPARATED2</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_NUMBER_COMMA_SEPARATED2">PHPExcel_Style_NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED2</a></dd> + <dt><b>FORMAT_PERCENTAGE</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_PERCENTAGE">PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE</a></dd> + <dt><b>FORMAT_PERCENTAGE_00</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_PERCENTAGE_00">PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE_00</a></dd> + <dt><b>FORMAT_TEXT</b></dt> + <dd>in file NumberFormat.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#constFORMAT_TEXT">PHPExcel_Style_NumberFormat::FORMAT_TEXT</a></dd> + <dt><b>Fill.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Fill.php.html">Fill.php</a></dd> + <dt><b>Font.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Font.php.html">Font.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getActiveCell</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetActiveCell">PHPExcel_Style_Alignment::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetActiveCell">PHPExcel_Style_Color::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetActiveCell">PHPExcel_Style_Borders::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetActiveCell">PHPExcel_Style_Font::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetActiveCell">PHPExcel_Style_NumberFormat::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetActiveCell">PHPExcel_Style::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetActiveCell">PHPExcel_Style_Protection::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetActiveCell">PHPExcel_Style_Border::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetActiveCell">PHPExcel_Style_Fill::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetActiveSheet">PHPExcel_Style_Protection::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetActiveSheet">PHPExcel_Style_Font::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetActiveSheet">PHPExcel_Style_NumberFormat::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetActiveSheet">PHPExcel_Style::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetActiveSheet">PHPExcel_Style_Borders::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetActiveSheet">PHPExcel_Style_Alignment::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetActiveSheet">PHPExcel_Style_Fill::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetActiveSheet">PHPExcel_Style_Color::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getActiveSheet</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetActiveSheet">PHPExcel_Style_Border::getActiveSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active sheet. Only used for supervisor</dd> + <dt><b>getAlignment</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetAlignment">PHPExcel_Style::getAlignment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Alignment</dd> + <dt><b>getAllBorders</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetAllBorders">PHPExcel_Style_Borders::getAllBorders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AllBorders (pseudo-border). Only applies to supervisor.</dd> + <dt><b>getARGB</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetARGB">PHPExcel_Style_Color::getARGB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ARGB</dd> + <dt><b>getBlue</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetBlue">PHPExcel_Style_Color::getBlue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the blue colour component of an RGB value</dd> + <dt><b>getBold</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetBold">PHPExcel_Style_Font::getBold()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Bold</dd> + <dt><b>getBorders</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetBorders">PHPExcel_Style::getBorders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Borders</dd> + <dt><b>getBorderStyle</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetBorderStyle">PHPExcel_Style_Border::getBorderStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Border style</dd> + <dt><b>getBottom</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetBottom">PHPExcel_Style_Borders::getBottom()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Bottom</dd> + <dt><b>getBuiltInFormatCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetBuiltInFormatCode">PHPExcel_Style_NumberFormat::getBuiltInFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Built-In Format Code</dd> + <dt><b>getColor</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetColor">PHPExcel_Style_Border::getColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Border Color</dd> + <dt><b>getColor</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetColor">PHPExcel_Style_Font::getColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Color</dd> + <dt><b>getCondition</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetCondition">PHPExcel_Style_Conditional::getCondition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Condition</dd> + <dt><b>getConditionalStyles</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetConditionalStyles">PHPExcel_Style::getConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Conditional Styles. Only used on supervisor.</dd> + <dt><b>getConditions</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetConditions">PHPExcel_Style_Conditional::getConditions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Conditions</dd> + <dt><b>getConditionType</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetConditionType">PHPExcel_Style_Conditional::getConditionType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Condition type</dd> + <dt><b>getDiagonal</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetDiagonal">PHPExcel_Style_Borders::getDiagonal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Diagonal</dd> + <dt><b>getDiagonalDirection</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetDiagonalDirection">PHPExcel_Style_Borders::getDiagonalDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get DiagonalDirection</dd> + <dt><b>getEndColor</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetEndColor">PHPExcel_Style_Fill::getEndColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get End Color</dd> + <dt><b>getFill</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetFill">PHPExcel_Style::getFill()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Fill</dd> + <dt><b>getFillType</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetFillType">PHPExcel_Style_Fill::getFillType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Fill Type</dd> + <dt><b>getFont</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetFont">PHPExcel_Style::getFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Font</dd> + <dt><b>getFormatCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetFormatCode">PHPExcel_Style_NumberFormat::getFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Format Code</dd> + <dt><b>getGreen</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetGreen">PHPExcel_Style_Color::getGreen()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the green colour component of an RGB value</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetHashCode">PHPExcel_Style_Conditional::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetHashCode">PHPExcel_Style_Fill::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetHashCode">PHPExcel_Style_Font::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetHashCode">PHPExcel_Style_Color::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetHashCode">PHPExcel_Style_Protection::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetHashCode">PHPExcel_Style_NumberFormat::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetHashCode">PHPExcel_Style_Borders::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetHashCode">PHPExcel_Style_Border::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetHashCode">PHPExcel_Style_Alignment::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetHashCode">PHPExcel_Style::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHidden</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetHidden">PHPExcel_Style_Protection::getHidden()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hidden</dd> + <dt><b>getHorizontal</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetHorizontal">PHPExcel_Style_Alignment::getHorizontal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Horizontal</dd> + <dt><b>getHorizontal</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetHorizontal">PHPExcel_Style_Borders::getHorizontal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Horizontal (pseudo-border). Only applies to supervisor.</dd> + <dt><b>getIndent</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetIndent">PHPExcel_Style_Alignment::getIndent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get indent</dd> + <dt><b>getIndex</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetIndex">PHPExcel_Style::getIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get own index in style collection</dd> + <dt><b>getInside</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetInside">PHPExcel_Style_Borders::getInside()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Inside (pseudo-border). Only applies to supervisor.</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetIsSupervisor">PHPExcel_Style::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetIsSupervisor">PHPExcel_Style_Font::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetIsSupervisor">PHPExcel_Style_NumberFormat::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetIsSupervisor">PHPExcel_Style_Protection::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetIsSupervisor">PHPExcel_Style_Fill::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetIsSupervisor">PHPExcel_Style_Border::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetIsSupervisor">PHPExcel_Style_Borders::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetIsSupervisor">PHPExcel_Style_Alignment::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getIsSupervisor</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetIsSupervisor">PHPExcel_Style_Color::getIsSupervisor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a supervisor or a real style component?</dd> + <dt><b>getItalic</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetItalic">PHPExcel_Style_Font::getItalic()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Italic</dd> + <dt><b>getLeft</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetLeft">PHPExcel_Style_Borders::getLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Left</dd> + <dt><b>getLocked</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetLocked">PHPExcel_Style_Protection::getLocked()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get locked</dd> + <dt><b>getName</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetName">PHPExcel_Style_Font::getName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Name</dd> + <dt><b>getNumberFormat</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetNumberFormat">PHPExcel_Style::getNumberFormat()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Number Format</dd> + <dt><b>getOperatorType</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetOperatorType">PHPExcel_Style_Conditional::getOperatorType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Operator type</dd> + <dt><b>getOutline</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetOutline">PHPExcel_Style_Borders::getOutline()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Outline (pseudo-border). Only applies to supervisor.</dd> + <dt><b>getParent</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetParent">PHPExcel_Style::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get parent. Only used for style supervisor</dd> + <dt><b>getProtection</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetProtection">PHPExcel_Style::getProtection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Protection</dd> + <dt><b>getRed</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetRed">PHPExcel_Style_Color::getRed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the red colour component of an RGB value</dd> + <dt><b>getRGB</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetRGB">PHPExcel_Style_Color::getRGB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get RGB</dd> + <dt><b>getRight</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetRight">PHPExcel_Style_Borders::getRight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Right</dd> + <dt><b>getRotation</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetRotation">PHPExcel_Style_Fill::getRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Rotation</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetSelectedCells">PHPExcel_Style_Protection::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetSelectedCells">PHPExcel_Style::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetSelectedCells">PHPExcel_Style_Border::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetSelectedCells">PHPExcel_Style_NumberFormat::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetSelectedCells">PHPExcel_Style_Borders::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetSelectedCells">PHPExcel_Style_Alignment::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetSelectedCells">PHPExcel_Style_Color::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetSelectedCells">PHPExcel_Style_Fill::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSelectedCells">PHPExcel_Style_Font::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the currently active cell coordinate in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSharedComponent">PHPExcel_Style_Font::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetSharedComponent">PHPExcel_Style_Protection::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetSharedComponent">PHPExcel_Style_Border::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodgetSharedComponent">PHPExcel_Style::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetSharedComponent">PHPExcel_Style_Fill::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetSharedComponent">PHPExcel_Style_Borders::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetSharedComponent">PHPExcel_Style_Alignment::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetSharedComponent">PHPExcel_Style_Color::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getSharedComponent</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetSharedComponent">PHPExcel_Style_NumberFormat::getSharedComponent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get the shared style component for the currently active cell in currently active sheet.</dd> + <dt><b>getShrinkToFit</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetShrinkToFit">PHPExcel_Style_Alignment::getShrinkToFit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Shrink to fit</dd> + <dt><b>getSize</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSize">PHPExcel_Style_Font::getSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Size</dd> + <dt><b>getStartColor</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetStartColor">PHPExcel_Style_Fill::getStartColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Start Color</dd> + <dt><b>getStrikethrough</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetStrikethrough">PHPExcel_Style_Font::getStrikethrough()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Strikethrough</dd> + <dt><b>getStriketrough</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetStriketrough">PHPExcel_Style_Font::getStriketrough()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Striketrough</dd> + <dt><b>getStyle</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetStyle">PHPExcel_Style_Conditional::getStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Style</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodgetStyleArray">PHPExcel_Style_Color::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetStyleArray">PHPExcel_Style_Font::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetStyleArray">PHPExcel_Style_Borders::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodgetStyleArray">PHPExcel_Style_Border::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodgetStyleArray">PHPExcel_Style_NumberFormat::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetStyleArray">PHPExcel_Style_Alignment::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodgetStyleArray">PHPExcel_Style_Protection::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getStyleArray</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodgetStyleArray">PHPExcel_Style_Fill::getStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build style array from subcomponents</dd> + <dt><b>getSubScript</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSubScript">PHPExcel_Style_Font::getSubScript()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get SubScript</dd> + <dt><b>getSuperScript</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetSuperScript">PHPExcel_Style_Font::getSuperScript()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get SuperScript</dd> + <dt><b>getText</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodgetText">PHPExcel_Style_Conditional::getText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get text</dd> + <dt><b>getTextRotation</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetTextRotation">PHPExcel_Style_Alignment::getTextRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get TextRotation</dd> + <dt><b>getTop</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetTop">PHPExcel_Style_Borders::getTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Top</dd> + <dt><b>getUnderline</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodgetUnderline">PHPExcel_Style_Font::getUnderline()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Underline</dd> + <dt><b>getVertical</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodgetVertical">PHPExcel_Style_Borders::getVertical()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Vertical (pseudo-border). Only applies to supervisor.</dd> + <dt><b>getVertical</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetVertical">PHPExcel_Style_Alignment::getVertical()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Vertical</dd> + <dt><b>getWrapText</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodgetWrapText">PHPExcel_Style_Alignment::getWrapText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Wrap Text</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="h"></a> + <div> + <h2>h</h2> + <dl> + <dt><b>HORIZONTAL_CENTER</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_CENTER">PHPExcel_Style_Alignment::HORIZONTAL_CENTER</a></dd> + <dt><b>HORIZONTAL_CENTER_CONTINUOUS</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_CENTER_CONTINUOUS">PHPExcel_Style_Alignment::HORIZONTAL_CENTER_CONTINUOUS</a></dd> + <dt><b>HORIZONTAL_GENERAL</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_GENERAL">PHPExcel_Style_Alignment::HORIZONTAL_GENERAL</a></dd> + <dt><b>HORIZONTAL_JUSTIFY</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_JUSTIFY">PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY</a></dd> + <dt><b>HORIZONTAL_LEFT</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_LEFT">PHPExcel_Style_Alignment::HORIZONTAL_LEFT</a></dd> + <dt><b>HORIZONTAL_RIGHT</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constHORIZONTAL_RIGHT">PHPExcel_Style_Alignment::HORIZONTAL_RIGHT</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>indexedColor</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodindexedColor">PHPExcel_Style_Color::indexedColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get indexed color</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="n"></a> + <div> + <h2>n</h2> + <dl> + <dt><b>NumberFormat.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html">NumberFormat.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="o"></a> + <div> + <h2>o</h2> + <dl> + <dt><b>OPERATOR_BEGINSWITH</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_BEGINSWITH">PHPExcel_Style_Conditional::OPERATOR_BEGINSWITH</a></dd> + <dt><b>OPERATOR_BETWEEN</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_BETWEEN">PHPExcel_Style_Conditional::OPERATOR_BETWEEN</a></dd> + <dt><b>OPERATOR_CONTAINSTEXT</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_CONTAINSTEXT">PHPExcel_Style_Conditional::OPERATOR_CONTAINSTEXT</a></dd> + <dt><b>OPERATOR_ENDSWITH</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_ENDSWITH">PHPExcel_Style_Conditional::OPERATOR_ENDSWITH</a></dd> + <dt><b>OPERATOR_EQUAL</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_EQUAL">PHPExcel_Style_Conditional::OPERATOR_EQUAL</a></dd> + <dt><b>OPERATOR_GREATERTHAN</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_GREATERTHAN">PHPExcel_Style_Conditional::OPERATOR_GREATERTHAN</a></dd> + <dt><b>OPERATOR_GREATERTHANOREQUAL</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_GREATERTHANOREQUAL">PHPExcel_Style_Conditional::OPERATOR_GREATERTHANOREQUAL</a></dd> + <dt><b>OPERATOR_LESSTHAN</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_LESSTHAN">PHPExcel_Style_Conditional::OPERATOR_LESSTHAN</a></dd> + <dt><b>OPERATOR_LESSTHANOREQUAL</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_LESSTHANOREQUAL">PHPExcel_Style_Conditional::OPERATOR_LESSTHANOREQUAL</a></dd> + <dt><b>OPERATOR_NONE</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_NONE">PHPExcel_Style_Conditional::OPERATOR_NONE</a></dd> + <dt><b>OPERATOR_NOTCONTAINS</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_NOTCONTAINS">PHPExcel_Style_Conditional::OPERATOR_NOTCONTAINS</a></dd> + <dt><b>OPERATOR_NOTEQUAL</b></dt> + <dd>in file Conditional.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#constOPERATOR_NOTEQUAL">PHPExcel_Style_Conditional::OPERATOR_NOTEQUAL</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>Protection.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style---Protection.php.html">Protection.php</a></dd> + <dt><b>PHPExcel_Style</b></dt> + <dd>in file Style.php, class <a href="PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style</dd> + <dt><b>PHPExcel_Style_Alignment</b></dt> + <dd>in file Alignment.php, class <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Alignment</dd> + <dt><b>PHPExcel_Style_Border</b></dt> + <dd>in file Border.php, class <a href="PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Border</dd> + <dt><b>PHPExcel_Style_Borders</b></dt> + <dd>in file Borders.php, class <a href="PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Borders</dd> + <dt><b>PHPExcel_Style_Color</b></dt> + <dd>in file Color.php, class <a href="PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Color</dd> + <dt><b>PHPExcel_Style_Conditional</b></dt> + <dd>in file Conditional.php, class <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Conditional</dd> + <dt><b>PHPExcel_Style_Fill</b></dt> + <dd>in file Fill.php, class <a href="PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Fill</dd> + <dt><b>PHPExcel_Style_Font</b></dt> + <dd>in file Font.php, class <a href="PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Font</dd> + <dt><b>PHPExcel_Style_NumberFormat</b></dt> + <dd>in file NumberFormat.php, class <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_NumberFormat</dd> + <dt><b>PHPExcel_Style_Protection</b></dt> + <dd>in file Protection.php, class <a href="PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Style_Protection</dd> + <dt><b>PROTECTION_INHERIT</b></dt> + <dd>in file Protection.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#constPROTECTION_INHERIT">PHPExcel_Style_Protection::PROTECTION_INHERIT</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Protection styles</dd> + <dt><b>PROTECTION_PROTECTED</b></dt> + <dd>in file Protection.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#constPROTECTION_PROTECTED">PHPExcel_Style_Protection::PROTECTION_PROTECTED</a></dd> + <dt><b>PROTECTION_UNPROTECTED</b></dt> + <dd>in file Protection.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#constPROTECTION_UNPROTECTED">PHPExcel_Style_Protection::PROTECTION_UNPROTECTED</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>Style.php</b></dt> + <dd>procedural page <a href="PHPExcel_Style/_PHPExcel---Style.php.html">Style.php</a></dd> + <dt><b>setARGB</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodsetARGB">PHPExcel_Style_Color::setARGB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ARGB</dd> + <dt><b>setBold</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetBold">PHPExcel_Style_Font::setBold()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Bold</dd> + <dt><b>setBorderStyle</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodsetBorderStyle">PHPExcel_Style_Border::setBorderStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Border style</dd> + <dt><b>setBuiltInFormatCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodsetBuiltInFormatCode">PHPExcel_Style_NumberFormat::setBuiltInFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Built-In Format Code</dd> + <dt><b>setColor</b></dt> + <dd>in file Border.php, method <a href="PHPExcel_Style/PHPExcel_Style_Border.html#methodsetColor">PHPExcel_Style_Border::setColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Border Color</dd> + <dt><b>setColor</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetColor">PHPExcel_Style_Font::setColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Color</dd> + <dt><b>setCondition</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetCondition">PHPExcel_Style_Conditional::setCondition()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Condition</dd> + <dt><b>setConditionalStyles</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodsetConditionalStyles">PHPExcel_Style::setConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Conditional Styles. Only used on supervisor.</dd> + <dt><b>setConditions</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetConditions">PHPExcel_Style_Conditional::setConditions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Conditions</dd> + <dt><b>setConditionType</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetConditionType">PHPExcel_Style_Conditional::setConditionType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Condition type</dd> + <dt><b>setDiagonalDirection</b></dt> + <dd>in file Borders.php, method <a href="PHPExcel_Style/PHPExcel_Style_Borders.html#methodsetDiagonalDirection">PHPExcel_Style_Borders::setDiagonalDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set DiagonalDirection</dd> + <dt><b>setEndColor</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetEndColor">PHPExcel_Style_Fill::setEndColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set End Color</dd> + <dt><b>setFillType</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetFillType">PHPExcel_Style_Fill::setFillType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Fill Type</dd> + <dt><b>setFont</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodsetFont">PHPExcel_Style::setFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set font</dd> + <dt><b>setFormatCode</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodsetFormatCode">PHPExcel_Style_NumberFormat::setFormatCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Format Code</dd> + <dt><b>setHidden</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodsetHidden">PHPExcel_Style_Protection::setHidden()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set hidden</dd> + <dt><b>setHorizontal</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetHorizontal">PHPExcel_Style_Alignment::setHorizontal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Horizontal</dd> + <dt><b>setIndent</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetIndent">PHPExcel_Style_Alignment::setIndent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set indent</dd> + <dt><b>setIndex</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Style/PHPExcel_Style.html#methodsetIndex">PHPExcel_Style::setIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set own index in style collection</dd> + <dt><b>setItalic</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetItalic">PHPExcel_Style_Font::setItalic()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Italic</dd> + <dt><b>setLocked</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Style/PHPExcel_Style_Protection.html#methodsetLocked">PHPExcel_Style_Protection::setLocked()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set locked</dd> + <dt><b>setName</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetName">PHPExcel_Style_Font::setName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Name</dd> + <dt><b>setOperatorType</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetOperatorType">PHPExcel_Style_Conditional::setOperatorType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Operator type</dd> + <dt><b>setRGB</b></dt> + <dd>in file Color.php, method <a href="PHPExcel_Style/PHPExcel_Style_Color.html#methodsetRGB">PHPExcel_Style_Color::setRGB()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set RGB</dd> + <dt><b>setRotation</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetRotation">PHPExcel_Style_Fill::setRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rotation</dd> + <dt><b>setShrinkToFit</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetShrinkToFit">PHPExcel_Style_Alignment::setShrinkToFit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Shrink to fit</dd> + <dt><b>setSize</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetSize">PHPExcel_Style_Font::setSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Size</dd> + <dt><b>setStartColor</b></dt> + <dd>in file Fill.php, method <a href="PHPExcel_Style/PHPExcel_Style_Fill.html#methodsetStartColor">PHPExcel_Style_Fill::setStartColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Start Color</dd> + <dt><b>setStrikethrough</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetStrikethrough">PHPExcel_Style_Font::setStrikethrough()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Strikethrough</dd> + <dt><b>setStriketrough</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetStriketrough">PHPExcel_Style_Font::setStriketrough()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Striketrough</dd> + <dt><b>setStyle</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetStyle">PHPExcel_Style_Conditional::setStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Style</dd> + <dt><b>setSubScript</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetSubScript">PHPExcel_Style_Font::setSubScript()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set SubScript</dd> + <dt><b>setSuperScript</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetSuperScript">PHPExcel_Style_Font::setSuperScript()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set SuperScript</dd> + <dt><b>setText</b></dt> + <dd>in file Conditional.php, method <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html#methodsetText">PHPExcel_Style_Conditional::setText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set text</dd> + <dt><b>setTextRotation</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetTextRotation">PHPExcel_Style_Alignment::setTextRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set TextRotation</dd> + <dt><b>setUnderline</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Style/PHPExcel_Style_Font.html#methodsetUnderline">PHPExcel_Style_Font::setUnderline()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Underline</dd> + <dt><b>setVertical</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetVertical">PHPExcel_Style_Alignment::setVertical()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Vertical</dd> + <dt><b>setWrapText</b></dt> + <dd>in file Alignment.php, method <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#methodsetWrapText">PHPExcel_Style_Alignment::setWrapText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Wrap Text</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>toFormattedString</b></dt> + <dd>in file NumberFormat.php, method <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html#methodtoFormattedString">PHPExcel_Style_NumberFormat::toFormattedString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Convert a value in a pre-defined format to a PHP string</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="u"></a> + <div> + <h2>u</h2> + <dl> + <dt><b>UNDERLINE_DOUBLE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_DOUBLE">PHPExcel_Style_Font::UNDERLINE_DOUBLE</a></dd> + <dt><b>UNDERLINE_DOUBLEACCOUNTING</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_DOUBLEACCOUNTING">PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING</a></dd> + <dt><b>UNDERLINE_NONE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_NONE">PHPExcel_Style_Font::UNDERLINE_NONE</a></dd> + <dt><b>UNDERLINE_SINGLE</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_SINGLE">PHPExcel_Style_Font::UNDERLINE_SINGLE</a></dd> + <dt><b>UNDERLINE_SINGLEACCOUNTING</b></dt> + <dd>in file Font.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Font.html#constUNDERLINE_SINGLEACCOUNTING">PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <hr /> + <a name="v"></a> + <div> + <h2>v</h2> + <dl> + <dt><b>VERTICAL_BOTTOM</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_BOTTOM">PHPExcel_Style_Alignment::VERTICAL_BOTTOM</a></dd> + <dt><b>VERTICAL_CENTER</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_CENTER">PHPExcel_Style_Alignment::VERTICAL_CENTER</a></dd> + <dt><b>VERTICAL_JUSTIFY</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_JUSTIFY">PHPExcel_Style_Alignment::VERTICAL_JUSTIFY</a></dd> + <dt><b>VERTICAL_TOP</b></dt> + <dd>in file Alignment.php, class constant <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html#constVERTICAL_TOP">PHPExcel_Style_Alignment::VERTICAL_TOP</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Style.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:03 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Worksheet.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Worksheet.html new file mode 100644 index 0000000..b7c7d2c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Worksheet.html @@ -0,0 +1,1602 @@ +<html> +<head> +<title>Package PHPExcel_Worksheet Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Worksheet</h1> + [ <a href="elementindex_PHPExcel_Worksheet.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#b">b</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#e">e</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#f">f</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#h">h</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#k">k</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#m">m</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#n">n</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#o">o</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#u">u</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#v">v</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#w">w</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>$_coordinates</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_coordinates">PHPExcel_Worksheet_BaseDrawing::$_coordinates</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Coordinates</dd> + <dt><b>$_description</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_description">PHPExcel_Worksheet_BaseDrawing::$_description</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Description</dd> + <dt><b>$_height</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_height">PHPExcel_Worksheet_HeaderFooterDrawing::$_height</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Height</dd> + <dt><b>$_height</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_height">PHPExcel_Worksheet_BaseDrawing::$_height</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Height</dd> + <dt><b>$_name</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_name">PHPExcel_Worksheet_BaseDrawing::$_name</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Name</dd> + <dt><b>$_name</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_name">PHPExcel_Worksheet_HeaderFooterDrawing::$_name</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Name</dd> + <dt><b>$_offsetX</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_offsetX">PHPExcel_Worksheet_HeaderFooterDrawing::$_offsetX</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Offset X</dd> + <dt><b>$_offsetX</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_offsetX">PHPExcel_Worksheet_BaseDrawing::$_offsetX</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Offset X</dd> + <dt><b>$_offsetY</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_offsetY">PHPExcel_Worksheet_HeaderFooterDrawing::$_offsetY</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Offset Y</dd> + <dt><b>$_offsetY</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_offsetY">PHPExcel_Worksheet_BaseDrawing::$_offsetY</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Offset Y</dd> + <dt><b>$_resizeProportional</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_resizeProportional">PHPExcel_Worksheet_HeaderFooterDrawing::$_resizeProportional</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Proportional resize</dd> + <dt><b>$_resizeProportional</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_resizeProportional">PHPExcel_Worksheet_BaseDrawing::$_resizeProportional</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Proportional resize</dd> + <dt><b>$_rotation</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_rotation">PHPExcel_Worksheet_BaseDrawing::$_rotation</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Rotation</dd> + <dt><b>$_shadow</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_shadow">PHPExcel_Worksheet_BaseDrawing::$_shadow</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Shadow</dd> + <dt><b>$_width</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_width">PHPExcel_Worksheet_BaseDrawing::$_width</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Width</dd> + <dt><b>$_width</b></dt> + <dd>in file HeaderFooterDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#var$_width">PHPExcel_Worksheet_HeaderFooterDrawing::$_width</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Width</dd> + <dt><b>$_worksheet</b></dt> + <dd>in file BaseDrawing.php, variable <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#var$_worksheet">PHPExcel_Worksheet_BaseDrawing::$_worksheet</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Worksheet</dd> + <dt><b>__clone</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#method__clone">PHPExcel_Worksheet_MemoryDrawing::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#method__clone">PHPExcel_Worksheet_PageMargins::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#method__clone">PHPExcel_Worksheet_RowDimension::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#method__clone">PHPExcel_Worksheet::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#method__clone">PHPExcel_Worksheet_SheetView::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#method__clone">PHPExcel_Worksheet_AutoFilter_Column_Rule::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#method__clone">PHPExcel_Worksheet_Protection::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#method__clone">PHPExcel_Worksheet_PageSetup::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#method__clone">PHPExcel_Worksheet_HeaderFooterDrawing::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__clone">PHPExcel_Worksheet_BaseDrawing::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#method__clone">PHPExcel_Worksheet_ColumnDimension::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#method__clone">PHPExcel_Worksheet_AutoFilter_Column::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#method__clone">PHPExcel_Worksheet_HeaderFooter::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#method__clone">PHPExcel_Worksheet_AutoFilter::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__construct</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#method__construct">PHPExcel_Worksheet_RowIterator::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new row iterator</dd> + <dt><b>__construct</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#method__construct">PHPExcel_Worksheet_RowDimension::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_RowDimension</dd> + <dt><b>__construct</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#method__construct">PHPExcel_Worksheet_AutoFilter_Column_Rule::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_AutoFilter_Column_Rule</dd> + <dt><b>__construct</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#method__construct">PHPExcel_Worksheet_SheetView::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_SheetView</dd> + <dt><b>__construct</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#method__construct">PHPExcel_Worksheet_BaseDrawing::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_BaseDrawing</dd> + <dt><b>__construct</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#method__construct">PHPExcel_Worksheet::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new worksheet</dd> + <dt><b>__construct</b></dt> + <dd>in file Row.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#method__construct">PHPExcel_Worksheet_Row::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new row</dd> + <dt><b>__construct</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#method__construct">PHPExcel_Worksheet_CellIterator::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new cell iterator</dd> + <dt><b>__construct</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#method__construct">PHPExcel_Worksheet_Protection::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_Protection</dd> + <dt><b>__construct</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#method__construct">PHPExcel_Worksheet_AutoFilter_Column::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_AutoFilter_Column</dd> + <dt><b>__construct</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#method__construct">PHPExcel_Worksheet_ColumnDimension::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_ColumnDimension</dd> + <dt><b>__construct</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#method__construct">PHPExcel_Worksheet_PageMargins::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_PageMargins</dd> + <dt><b>__construct</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#method__construct">PHPExcel_Worksheet_PageSetup::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_PageSetup</dd> + <dt><b>__construct</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#method__construct">PHPExcel_Worksheet_HeaderFooter::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_HeaderFooter</dd> + <dt><b>__construct</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#method__construct">PHPExcel_Worksheet_HeaderFooterDrawing::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_HeaderFooterDrawing</dd> + <dt><b>__construct</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#method__construct">PHPExcel_Worksheet_AutoFilter::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_AutoFilter</dd> + <dt><b>__construct</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#method__construct">PHPExcel_Worksheet_MemoryDrawing::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_MemoryDrawing</dd> + <dt><b>__destruct</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#method__destruct">PHPExcel_Worksheet_RowIterator::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructor</dd> + <dt><b>__destruct</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#method__destruct">PHPExcel_Worksheet_CellIterator::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructor</dd> + <dt><b>__destruct</b></dt> + <dd>in file Row.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#method__destruct">PHPExcel_Worksheet_Row::__destruct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Destructor</dd> + <dt><b>__toString</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#method__toString">PHPExcel_Worksheet_AutoFilter::__toString()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;toString method replicates previous behavior by returning the range if object is referenced as a property of its parent.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>addChart</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodaddChart">PHPExcel_Worksheet::addChart()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add chart</dd> + <dt><b>addImage</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodaddImage">PHPExcel_Worksheet_HeaderFooter::addImage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add header/footer image</dd> + <dt><b>addPrintArea</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodaddPrintArea">PHPExcel_Worksheet_PageSetup::addPrintArea()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a new print area (e.g. 'A1:D10' or 'A1:D10,G5:M20') to the list of print areas</dd> + <dt><b>addPrintAreaByColumnAndRow</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodaddPrintAreaByColumnAndRow">PHPExcel_Worksheet_PageSetup::addPrintAreaByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a new print area to the list of print areas</dd> + <dt><b>addRule</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodaddRule">PHPExcel_Worksheet_AutoFilter_Column::addRule()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a new AutoFilter Column Rule to the ruleset</dd> + <dt><b>AUTOFILTER_COLUMN_JOIN_AND</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_COLUMN_JOIN_AND">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND</a></dd> + <dt><b>AUTOFILTER_COLUMN_JOIN_OR</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_COLUMN_JOIN_OR">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_OR</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_EQUAL</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_EQUAL">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_GREATERTHAN</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_GREATERTHAN">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHAN</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_LESSTHAN</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_LESSTHAN">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHAN</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_NOTEQUAL</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_NOTEQUAL">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_NOTEQUAL</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_BOTTOM</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_BY_VALUE</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_PERCENT</a></dd> + <dt><b>AUTOFILTER_COLUMN_RULE_TOPTEN_TOP</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_COLUMN_RULE_TOPTEN_TOP">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_TOPTEN_TOP</a></dd> + <dt><b>AUTOFILTER_FILTERTYPE_CUSTOMFILTER</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_CUSTOMFILTER">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER</a></dd> + <dt><b>AUTOFILTER_FILTERTYPE_DYNAMICFILTER</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_DYNAMICFILTER">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_DYNAMICFILTER</a></dd> + <dt><b>AUTOFILTER_FILTERTYPE_FILTER</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_FILTER">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER</a></dd> + <dt><b>AUTOFILTER_FILTERTYPE_TOPTENFILTER</b></dt> + <dd>in file Column.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#constAUTOFILTER_FILTERTYPE_TOPTENFILTER">PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_TOPTENFILTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_CUSTOMFILTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_CUSTOMFILTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_DAY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_DAY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_DAY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_HOUR</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_HOUR">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_HOUR</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_MINUTE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_MINUTE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MINUTE</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_MONTH</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_MONTH">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_MONTH</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_SECOND</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_SECOND">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_SECOND</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DATEGROUP_YEAR</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DATEGROUP_YEAR">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP_YEAR</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMICFILTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMICFILTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMICFILTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_ABOVEAVERAGE</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_APRIL</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_APRIL">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_APRIL</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_AUGUST</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_AUGUST">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_AUGUST</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_BELOWAVERAGE</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_DECEMBER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_DECEMBER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_DECEMBER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_FEBRUARY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_JANUARY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_JANUARY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_JANUARY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_JULY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_JULY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_JULY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_JUNE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_JUNE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_JUNE</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTMONTH</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTQUARTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTWEEK</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_LASTYEAR</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MARCH</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MARCH">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MARCH</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MAY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MAY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MAY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_1">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_1</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_2">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_2</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_3">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_3</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_4">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_4</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_5">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_5</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_6">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_6</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_7">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_7</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_8">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_8</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_9">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_9</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_10">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_10</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_11">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_11</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_MONTH_12">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_MONTH_12</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTMONTH</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTQUARTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTWEEK</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NEXTYEAR</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_NOVEMBER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_OCTOBER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_OCTOBER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_OCTOBER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_1</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_2</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_3</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_QUARTER_4</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_SEPTEMBER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISMONTH">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISMONTH</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISQUARTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISWEEK">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISWEEK</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_THISYEAR">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_THISYEAR</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_TODAY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_TODAY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TODAY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_TOMORROW">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_TOMORROW</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE</a></dd> + <dt><b>AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YESTERDAY</a></dd> + <dt><b>AUTOFILTER_RULETYPE_FILTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_FILTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_FILTER</a></dd> + <dt><b>AUTOFILTER_RULETYPE_TOPTENFILTER</b></dt> + <dd>in file Rule.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#constAUTOFILTER_RULETYPE_TOPTENFILTER">PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_TOPTENFILTER</a></dd> + <dt><b>AutoFilter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html">AutoFilter.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>BREAK_COLUMN</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constBREAK_COLUMN">PHPExcel_Worksheet::BREAK_COLUMN</a></dd> + <dt><b>BREAK_NONE</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constBREAK_NONE">PHPExcel_Worksheet::BREAK_NONE</a></dd> + <dt><b>BREAK_ROW</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constBREAK_ROW">PHPExcel_Worksheet::BREAK_ROW</a></dd> + <dt><b>BaseDrawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html">BaseDrawing.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>calculateColumnWidths</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcalculateColumnWidths">PHPExcel_Worksheet::calculateColumnWidths()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate widths for auto-size columns</dd> + <dt><b>calculateWorksheetDataDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcalculateWorksheetDataDimension">PHPExcel_Worksheet::calculateWorksheetDataDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate worksheet data dimension</dd> + <dt><b>calculateWorksheetDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcalculateWorksheetDimension">PHPExcel_Worksheet::calculateWorksheetDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Calculate worksheet dimension</dd> + <dt><b>cellExists</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcellExists">PHPExcel_Worksheet::cellExists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Cell at a specific coordinate exists?</dd> + <dt><b>cellExistsByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcellExistsByColumnAndRow">PHPExcel_Worksheet::cellExistsByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Cell at a specific coordinate by using numeric cell coordinates exists?</dd> + <dt><b>clearColumn</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodclearColumn">PHPExcel_Worksheet_AutoFilter::clearColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear a specified AutoFilter Column</dd> + <dt><b>clearPrintArea</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodclearPrintArea">PHPExcel_Worksheet_PageSetup::clearPrintArea()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Clear a print area</dd> + <dt><b>clearRules</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodclearRules">PHPExcel_Worksheet_AutoFilter_Column::clearRules()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete all AutoFilter Column Rules</dd> + <dt><b>conditionalStylesExists</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodconditionalStylesExists">PHPExcel_Worksheet::conditionalStylesExists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Do conditional styles exist for this cell?</dd> + <dt><b>copy</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodcopy">PHPExcel_Worksheet::copy()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Copy worksheet (!= clone!)</dd> + <dt><b>createRule</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodcreateRule">PHPExcel_Worksheet_AutoFilter_Column::createRule()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new AutoFilter Column Rule in the ruleset</dd> + <dt><b>current</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodcurrent">PHPExcel_Worksheet_CellIterator::current()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Current PHPExcel_Cell</dd> + <dt><b>current</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodcurrent">PHPExcel_Worksheet_RowIterator::current()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current row in this worksheet</dd> + <dt><b>Column.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html">Column.php</a></dd> + <dt><b>CellIterator.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html">CellIterator.php</a></dd> + <dt><b>ColumnDimension.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html">ColumnDimension.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>dataValidationExists</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methoddataValidationExists">PHPExcel_Worksheet::dataValidationExists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Data validation at a specific coordinate exists?</dd> + <dt><b>deleteRule</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methoddeleteRule">PHPExcel_Worksheet_AutoFilter_Column::deleteRule()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a specified AutoFilter Column Rule If the number of rules is reduced to 1, then we reset And/Or logic to Or</dd> + <dt><b>disconnectCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methoddisconnectCells">PHPExcel_Worksheet::disconnectCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Disconnect all cells from this PHPExcel_Worksheet object,</dd> + <dt><b>duplicateConditionalStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodduplicateConditionalStyle">PHPExcel_Worksheet::duplicateConditionalStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Duplicate conditional style to a range of cells</dd> + <dt><b>duplicateStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodduplicateStyle">PHPExcel_Worksheet::duplicateStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Duplicate cell style to a range of cells</dd> + <dt><b>duplicateStyleArray</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodduplicateStyleArray">PHPExcel_Worksheet::duplicateStyleArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Duplicate cell style array to a range of cells</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>extractSheetTitle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodextractSheetTitle">PHPExcel_Worksheet::extractSheetTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Extract worksheet title from range.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>freezePane</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodfreezePane">PHPExcel_Worksheet::freezePane()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Freeze Pane</dd> + <dt><b>freezePaneByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodfreezePaneByColumnAndRow">PHPExcel_Worksheet::freezePaneByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Freeze Pane by using numeric cell coordinates</dd> + <dt><b>fromArray</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodfromArray">PHPExcel_Worksheet::fromArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Fill worksheet from values in array</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>garbageCollect</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgarbageCollect">PHPExcel_Worksheet::garbageCollect()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Run PHPExcel garabage collector.</dd> + <dt><b>getActiveCell</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetActiveCell">PHPExcel_Worksheet::getActiveCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get active cell</dd> + <dt><b>getAlignWithMargins</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetAlignWithMargins">PHPExcel_Worksheet_HeaderFooter::getAlignWithMargins()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AlignWithMargins</dd> + <dt><b>getAttribute</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetAttribute">PHPExcel_Worksheet_AutoFilter_Column::getAttribute()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get specific AutoFilter Column Attribute</dd> + <dt><b>getAttributes</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetAttributes">PHPExcel_Worksheet_AutoFilter_Column::getAttributes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Column Attributes</dd> + <dt><b>getAutoFilter</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetAutoFilter">PHPExcel_Worksheet::getAutoFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Autofilter</dd> + <dt><b>getAutoFilter</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetAutoFilter">PHPExcel_Worksheet_Protection::getAutoFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter</dd> + <dt><b>getAutoSize</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetAutoSize">PHPExcel_Worksheet_ColumnDimension::getAutoSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Auto Size</dd> + <dt><b>getBottom</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetBottom">PHPExcel_Worksheet_PageMargins::getBottom()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Bottom</dd> + <dt><b>getBreaks</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetBreaks">PHPExcel_Worksheet::getBreaks()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get breaks</dd> + <dt><b>getCell</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCell">PHPExcel_Worksheet::getCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate</dd> + <dt><b>getCellByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCellByColumnAndRow">PHPExcel_Worksheet::getCellByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell at a specific coordinate by using numeric cell coordinates</dd> + <dt><b>getCellCacheController</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCellCacheController">PHPExcel_Worksheet::getCellCacheController()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the cache controller for the cell collection</dd> + <dt><b>getCellCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCellCollection">PHPExcel_Worksheet::getCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of cells</dd> + <dt><b>getCellIterator</b></dt> + <dd>in file Row.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#methodgetCellIterator">PHPExcel_Worksheet_Row::getCellIterator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get cell iterator</dd> + <dt><b>getChartByIndex</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartByIndex">PHPExcel_Worksheet::getChartByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a chart by its index position</dd> + <dt><b>getChartByName</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartByName">PHPExcel_Worksheet::getChartByName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a chart by name</dd> + <dt><b>getChartCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartCollection">PHPExcel_Worksheet::getChartCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of charts</dd> + <dt><b>getChartCount</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartCount">PHPExcel_Worksheet::getChartCount()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the count of charts on this worksheet</dd> + <dt><b>getChartNames</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetChartNames">PHPExcel_Worksheet::getChartNames()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return an array of the names of charts on this worksheet</dd> + <dt><b>getCollapsed</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetCollapsed">PHPExcel_Worksheet_ColumnDimension::getCollapsed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Collapsed</dd> + <dt><b>getCollapsed</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetCollapsed">PHPExcel_Worksheet_RowDimension::getCollapsed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Collapsed</dd> + <dt><b>getColumn</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumn">PHPExcel_Worksheet_AutoFilter::getColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a specified AutoFilter Column</dd> + <dt><b>getColumnByOffset</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumnByOffset">PHPExcel_Worksheet_AutoFilter::getColumnByOffset()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a specified AutoFilter Column by it's offset</dd> + <dt><b>getColumnDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetColumnDimension">PHPExcel_Worksheet::getColumnDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get column dimension at a specific column</dd> + <dt><b>getColumnDimensionByColumn</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetColumnDimensionByColumn">PHPExcel_Worksheet::getColumnDimensionByColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get column dimension at a specific column by using numeric cell coordinates</dd> + <dt><b>getColumnDimensions</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetColumnDimensions">PHPExcel_Worksheet::getColumnDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of column dimensions</dd> + <dt><b>getColumnIndex</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetColumnIndex">PHPExcel_Worksheet_ColumnDimension::getColumnIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ColumnIndex</dd> + <dt><b>getColumnIndex</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetColumnIndex">PHPExcel_Worksheet_AutoFilter_Column::getColumnIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Column Index</dd> + <dt><b>getColumnOffset</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumnOffset">PHPExcel_Worksheet_AutoFilter::getColumnOffset()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a specified AutoFilter Column Offset within the defined AutoFilter range</dd> + <dt><b>getColumns</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetColumns">PHPExcel_Worksheet_AutoFilter::getColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get all AutoFilter Columns</dd> + <dt><b>getColumnsToRepeatAtLeft</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetColumnsToRepeatAtLeft">PHPExcel_Worksheet_PageSetup::getColumnsToRepeatAtLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Columns to repeat at left</dd> + <dt><b>getComment</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetComment">PHPExcel_Worksheet::getComment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get comment for cell</dd> + <dt><b>getCommentByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetCommentByColumnAndRow">PHPExcel_Worksheet::getCommentByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get comment for cell by using numeric cell coordinates</dd> + <dt><b>getComments</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetComments">PHPExcel_Worksheet::getComments()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get comments</dd> + <dt><b>getConditionalStyles</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetConditionalStyles">PHPExcel_Worksheet::getConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get conditional styles for a cell</dd> + <dt><b>getConditionalStylesCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetConditionalStylesCollection">PHPExcel_Worksheet::getConditionalStylesCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of conditional styles</dd> + <dt><b>getCoordinates</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetCoordinates">PHPExcel_Worksheet_BaseDrawing::getCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Coordinates</dd> + <dt><b>getDataValidation</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDataValidation">PHPExcel_Worksheet::getDataValidation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get data validation</dd> + <dt><b>getDataValidationCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDataValidationCollection">PHPExcel_Worksheet::getDataValidationCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of data validations</dd> + <dt><b>getDefaultColumnDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDefaultColumnDimension">PHPExcel_Worksheet::getDefaultColumnDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get default column dimension</dd> + <dt><b>getDefaultRowDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDefaultRowDimension">PHPExcel_Worksheet::getDefaultRowDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get default row dimension</dd> + <dt><b>getDefaultStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDefaultStyle">PHPExcel_Worksheet::getDefaultStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get default style of workbork.</dd> + <dt><b>getDeleteColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetDeleteColumns">PHPExcel_Worksheet_Protection::getDeleteColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get DeleteColumns</dd> + <dt><b>getDeleteRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetDeleteRows">PHPExcel_Worksheet_Protection::getDeleteRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get DeleteRows</dd> + <dt><b>getDescription</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetDescription">PHPExcel_Worksheet_BaseDrawing::getDescription()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Description</dd> + <dt><b>getDifferentFirst</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetDifferentFirst">PHPExcel_Worksheet_HeaderFooter::getDifferentFirst()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get DifferentFirst</dd> + <dt><b>getDifferentOddEven</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetDifferentOddEven">PHPExcel_Worksheet_HeaderFooter::getDifferentOddEven()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get DifferentOddEven</dd> + <dt><b>getDrawingCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetDrawingCollection">PHPExcel_Worksheet::getDrawingCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of drawings</dd> + <dt><b>getEvenFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetEvenFooter">PHPExcel_Worksheet_HeaderFooter::getEvenFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get EvenFooter</dd> + <dt><b>getEvenHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetEvenHeader">PHPExcel_Worksheet_HeaderFooter::getEvenHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get EvenHeader</dd> + <dt><b>getExtension</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetExtension">PHPExcel_Worksheet_HeaderFooterDrawing::getExtension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Extension</dd> + <dt><b>getFilename</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetFilename">PHPExcel_Worksheet_HeaderFooterDrawing::getFilename()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Filename</dd> + <dt><b>getFilterType</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetFilterType">PHPExcel_Worksheet_AutoFilter_Column::getFilterType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Type</dd> + <dt><b>getFirstFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetFirstFooter">PHPExcel_Worksheet_HeaderFooter::getFirstFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get FirstFooter</dd> + <dt><b>getFirstHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetFirstHeader">PHPExcel_Worksheet_HeaderFooter::getFirstHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get FirstHeader</dd> + <dt><b>getFirstPageNumber</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFirstPageNumber">PHPExcel_Worksheet_PageSetup::getFirstPageNumber()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get first page number</dd> + <dt><b>getFitToHeight</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFitToHeight">PHPExcel_Worksheet_PageSetup::getFitToHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Fit To Height</dd> + <dt><b>getFitToPage</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFitToPage">PHPExcel_Worksheet_PageSetup::getFitToPage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Fit To Page</dd> + <dt><b>getFitToWidth</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetFitToWidth">PHPExcel_Worksheet_PageSetup::getFitToWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Fit To Width</dd> + <dt><b>getFooter</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetFooter">PHPExcel_Worksheet_PageMargins::getFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Footer</dd> + <dt><b>getFormatCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetFormatCells">PHPExcel_Worksheet_Protection::getFormatCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get FormatCells</dd> + <dt><b>getFormatColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetFormatColumns">PHPExcel_Worksheet_Protection::getFormatColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get FormatColumns</dd> + <dt><b>getFormatRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetFormatRows">PHPExcel_Worksheet_Protection::getFormatRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get FormatRows</dd> + <dt><b>getFreezePane</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetFreezePane">PHPExcel_Worksheet::getFreezePane()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Freeze Pane</dd> + <dt><b>getGrouping</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetGrouping">PHPExcel_Worksheet_AutoFilter_Column_Rule::getGrouping()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Rule Grouping</dd> + <dt><b>getHashCode</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHashCode">PHPExcel_Worksheet_BaseDrawing::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetHashCode">PHPExcel_Worksheet_MemoryDrawing::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetHashCode">PHPExcel_Worksheet_HeaderFooterDrawing::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHashCode">PHPExcel_Worksheet::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHeader</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetHeader">PHPExcel_Worksheet_PageMargins::getHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Header</dd> + <dt><b>getHeaderFooter</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHeaderFooter">PHPExcel_Worksheet::getHeaderFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get page header/footer</dd> + <dt><b>getHeight</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetHeight">PHPExcel_Worksheet_HeaderFooterDrawing::getHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Height</dd> + <dt><b>getHeight</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetHeight">PHPExcel_Worksheet_BaseDrawing::getHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Height</dd> + <dt><b>getHighestColumn</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestColumn">PHPExcel_Worksheet::getHighestColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet column</dd> + <dt><b>getHighestDataColumn</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestDataColumn">PHPExcel_Worksheet::getHighestDataColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet column that contains data</dd> + <dt><b>getHighestDataRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestDataRow">PHPExcel_Worksheet::getHighestDataRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet row that contains data</dd> + <dt><b>getHighestRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestRow">PHPExcel_Worksheet::getHighestRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet row</dd> + <dt><b>getHighestRowAndColumn</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHighestRowAndColumn">PHPExcel_Worksheet::getHighestRowAndColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get highest worksheet column and highest row that have cell records</dd> + <dt><b>getHorizontalCentered</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetHorizontalCentered">PHPExcel_Worksheet_PageSetup::getHorizontalCentered()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get center page horizontally</dd> + <dt><b>getHyperlink</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHyperlink">PHPExcel_Worksheet::getHyperlink()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hyperlink</dd> + <dt><b>getHyperlinkCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetHyperlinkCollection">PHPExcel_Worksheet::getHyperlinkCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of hyperlinks</dd> + <dt><b>getImageIndex</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetImageIndex">PHPExcel_Worksheet_BaseDrawing::getImageIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get image index</dd> + <dt><b>getImageResource</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetImageResource">PHPExcel_Worksheet_MemoryDrawing::getImageResource()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get image resource</dd> + <dt><b>getImages</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetImages">PHPExcel_Worksheet_HeaderFooter::getImages()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get header/footer images</dd> + <dt><b>getIndexedFilename</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetIndexedFilename">PHPExcel_Worksheet_MemoryDrawing::getIndexedFilename()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get indexed filename (using image index)</dd> + <dt><b>getInsertColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetInsertColumns">PHPExcel_Worksheet_Protection::getInsertColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get InsertColumns</dd> + <dt><b>getInsertHyperlinks</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetInsertHyperlinks">PHPExcel_Worksheet_Protection::getInsertHyperlinks()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get InsertHyperlinks</dd> + <dt><b>getInsertRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetInsertRows">PHPExcel_Worksheet_Protection::getInsertRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get InsertRows</dd> + <dt><b>getInvalidCharacters</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetInvalidCharacters">PHPExcel_Worksheet::getInvalidCharacters()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get array of invalid characters for sheet title</dd> + <dt><b>getIterateOnlyExistingCells</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodgetIterateOnlyExistingCells">PHPExcel_Worksheet_CellIterator::getIterateOnlyExistingCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get loop only existing cells</dd> + <dt><b>getJoin</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetJoin">PHPExcel_Worksheet_AutoFilter_Column::getJoin()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Multiple Rules And/Or Join</dd> + <dt><b>getLeft</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetLeft">PHPExcel_Worksheet_PageMargins::getLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Left</dd> + <dt><b>getMergeCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetMergeCells">PHPExcel_Worksheet::getMergeCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get merge cells array.</dd> + <dt><b>getMimeType</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetMimeType">PHPExcel_Worksheet_MemoryDrawing::getMimeType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get mime type</dd> + <dt><b>getName</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetName">PHPExcel_Worksheet_HeaderFooterDrawing::getName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Name</dd> + <dt><b>getName</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetName">PHPExcel_Worksheet_BaseDrawing::getName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Name</dd> + <dt><b>getObjects</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetObjects">PHPExcel_Worksheet_Protection::getObjects()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Objects</dd> + <dt><b>getOddFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetOddFooter">PHPExcel_Worksheet_HeaderFooter::getOddFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OddFooter</dd> + <dt><b>getOddHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetOddHeader">PHPExcel_Worksheet_HeaderFooter::getOddHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OddHeader</dd> + <dt><b>getOffsetX</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetX">PHPExcel_Worksheet_BaseDrawing::getOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OffsetX</dd> + <dt><b>getOffsetX</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetOffsetX">PHPExcel_Worksheet_HeaderFooterDrawing::getOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OffsetX</dd> + <dt><b>getOffsetY</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetOffsetY">PHPExcel_Worksheet_BaseDrawing::getOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OffsetY</dd> + <dt><b>getOffsetY</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetOffsetY">PHPExcel_Worksheet_HeaderFooterDrawing::getOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get OffsetY</dd> + <dt><b>getOperator</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetOperator">PHPExcel_Worksheet_AutoFilter_Column_Rule::getOperator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Rule Operator</dd> + <dt><b>getOrientation</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetOrientation">PHPExcel_Worksheet_PageSetup::getOrientation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Orientation</dd> + <dt><b>getOutlineLevel</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetOutlineLevel">PHPExcel_Worksheet_RowDimension::getOutlineLevel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Outline Level</dd> + <dt><b>getOutlineLevel</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetOutlineLevel">PHPExcel_Worksheet_ColumnDimension::getOutlineLevel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Outline Level</dd> + <dt><b>getPageMargins</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetPageMargins">PHPExcel_Worksheet::getPageMargins()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get page margins</dd> + <dt><b>getPageSetup</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetPageSetup">PHPExcel_Worksheet::getPageSetup()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get page setup</dd> + <dt><b>getPaperSize</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetPaperSize">PHPExcel_Worksheet_PageSetup::getPaperSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Paper Size</dd> + <dt><b>getParent</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetParent">PHPExcel_Worksheet_AutoFilter::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Parent Worksheet</dd> + <dt><b>getParent</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetParent">PHPExcel_Worksheet_AutoFilter_Column::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get this Column's AutoFilter Parent</dd> + <dt><b>getParent</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetParent">PHPExcel_Worksheet_AutoFilter_Column_Rule::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get this Rule's AutoFilter Column Parent</dd> + <dt><b>getParent</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetParent">PHPExcel_Worksheet::getParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get parent</dd> + <dt><b>getPassword</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetPassword">PHPExcel_Worksheet_Protection::getPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Password (hashed)</dd> + <dt><b>getPath</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetPath">PHPExcel_Worksheet_HeaderFooterDrawing::getPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Path</dd> + <dt><b>getPivotTables</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetPivotTables">PHPExcel_Worksheet_Protection::getPivotTables()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PivotTables</dd> + <dt><b>getPrintArea</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetPrintArea">PHPExcel_Worksheet_PageSetup::getPrintArea()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get print area</dd> + <dt><b>getPrintGridlines</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetPrintGridlines">PHPExcel_Worksheet::getPrintGridlines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Print gridlines?</dd> + <dt><b>getProtectedCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetProtectedCells">PHPExcel_Worksheet::getProtectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get protected cells</dd> + <dt><b>getProtection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetProtection">PHPExcel_Worksheet::getProtection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Protection</dd> + <dt><b>getRange</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodgetRange">PHPExcel_Worksheet_AutoFilter::getRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Range</dd> + <dt><b>getRenderingFunction</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodgetRenderingFunction">PHPExcel_Worksheet_MemoryDrawing::getRenderingFunction()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get rendering function</dd> + <dt><b>getResizeProportional</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetResizeProportional">PHPExcel_Worksheet_HeaderFooterDrawing::getResizeProportional()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ResizeProportional</dd> + <dt><b>getResizeProportional</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetResizeProportional">PHPExcel_Worksheet_BaseDrawing::getResizeProportional()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ResizeProportional</dd> + <dt><b>getRight</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetRight">PHPExcel_Worksheet_PageMargins::getRight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Right</dd> + <dt><b>getRightToLeft</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRightToLeft">PHPExcel_Worksheet::getRightToLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get right-to-left</dd> + <dt><b>getRotation</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetRotation">PHPExcel_Worksheet_BaseDrawing::getRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Rotation</dd> + <dt><b>getRowDimension</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRowDimension">PHPExcel_Worksheet::getRowDimension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get row dimension at a specific row</dd> + <dt><b>getRowDimensions</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRowDimensions">PHPExcel_Worksheet::getRowDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get collection of row dimensions</dd> + <dt><b>getRowHeight</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetRowHeight">PHPExcel_Worksheet_RowDimension::getRowHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Row Height</dd> + <dt><b>getRowIndex</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetRowIndex">PHPExcel_Worksheet_RowDimension::getRowIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Row Index</dd> + <dt><b>getRowIndex</b></dt> + <dd>in file Row.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html#methodgetRowIndex">PHPExcel_Worksheet_Row::getRowIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get row index</dd> + <dt><b>getRowIterator</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetRowIterator">PHPExcel_Worksheet::getRowIterator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get row iterator</dd> + <dt><b>getRowsToRepeatAtTop</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetRowsToRepeatAtTop">PHPExcel_Worksheet_PageSetup::getRowsToRepeatAtTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Rows to repeat at top</dd> + <dt><b>getRule</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetRule">PHPExcel_Worksheet_AutoFilter_Column::getRule()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get a specified AutoFilter Column Rule</dd> + <dt><b>getRules</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodgetRules">PHPExcel_Worksheet_AutoFilter_Column::getRules()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get all AutoFilter Column Rules</dd> + <dt><b>getRuleType</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetRuleType">PHPExcel_Worksheet_AutoFilter_Column_Rule::getRuleType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Rule Type</dd> + <dt><b>getScale</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetScale">PHPExcel_Worksheet_PageSetup::getScale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Scale</dd> + <dt><b>getScaleWithDocument</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodgetScaleWithDocument">PHPExcel_Worksheet_HeaderFooter::getScaleWithDocument()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ScaleWithDocument</dd> + <dt><b>getScenarios</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetScenarios">PHPExcel_Worksheet_Protection::getScenarios()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Scenarios</dd> + <dt><b>getSelectedCell</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSelectedCell">PHPExcel_Worksheet::getSelectedCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get selected cell</dd> + <dt><b>getSelectedCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSelectedCells">PHPExcel_Worksheet::getSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get selected cells</dd> + <dt><b>getSelectLockedCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSelectLockedCells">PHPExcel_Worksheet_Protection::getSelectLockedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get SelectLockedCells</dd> + <dt><b>getSelectUnlockedCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSelectUnlockedCells">PHPExcel_Worksheet_Protection::getSelectUnlockedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get SelectUnlockedCells</dd> + <dt><b>getShadow</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetShadow">PHPExcel_Worksheet_BaseDrawing::getShadow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Shadow</dd> + <dt><b>getSheet</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSheet">PHPExcel_Worksheet_Protection::getSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Sheet</dd> + <dt><b>getSheetState</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSheetState">PHPExcel_Worksheet::getSheetState()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet state</dd> + <dt><b>getSheetView</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetSheetView">PHPExcel_Worksheet::getSheetView()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet view</dd> + <dt><b>getShowGridlines</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowGridlines">PHPExcel_Worksheet::getShowGridlines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Show gridlines?</dd> + <dt><b>getShowRowColHeaders</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowRowColHeaders">PHPExcel_Worksheet::getShowRowColHeaders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Show row and column headers?</dd> + <dt><b>getShowSummaryBelow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowSummaryBelow">PHPExcel_Worksheet::getShowSummaryBelow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Show summary below? (Row/Column outlining)</dd> + <dt><b>getShowSummaryRight</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetShowSummaryRight">PHPExcel_Worksheet::getShowSummaryRight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Show summary right? (Row/Column outlining)</dd> + <dt><b>getSort</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodgetSort">PHPExcel_Worksheet_Protection::getSort()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Sort</dd> + <dt><b>getStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetStyle">PHPExcel_Worksheet::getStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get style for cell</dd> + <dt><b>getStyleByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetStyleByColumnAndRow">PHPExcel_Worksheet::getStyleByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get style for cell by using numeric cell coordinates</dd> + <dt><b>getStyles</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetStyles">PHPExcel_Worksheet::getStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get styles</dd> + <dt><b>getTabColor</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetTabColor">PHPExcel_Worksheet::getTabColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get tab color</dd> + <dt><b>getTitle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodgetTitle">PHPExcel_Worksheet::getTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get title</dd> + <dt><b>getTop</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodgetTop">PHPExcel_Worksheet_PageMargins::getTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Top</dd> + <dt><b>getValue</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodgetValue">PHPExcel_Worksheet_AutoFilter_Column_Rule::getValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get AutoFilter Rule Value</dd> + <dt><b>getVerticalCentered</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodgetVerticalCentered">PHPExcel_Worksheet_PageSetup::getVerticalCentered()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get center page vertically</dd> + <dt><b>getView</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodgetView">PHPExcel_Worksheet_SheetView::getView()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get View</dd> + <dt><b>getVisible</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetVisible">PHPExcel_Worksheet_RowDimension::getVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Visible</dd> + <dt><b>getVisible</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetVisible">PHPExcel_Worksheet_ColumnDimension::getVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Visible</dd> + <dt><b>getWidth</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWidth">PHPExcel_Worksheet_BaseDrawing::getWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Width</dd> + <dt><b>getWidth</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetWidth">PHPExcel_Worksheet_ColumnDimension::getWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Width</dd> + <dt><b>getWidth</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodgetWidth">PHPExcel_Worksheet_HeaderFooterDrawing::getWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Width</dd> + <dt><b>getWorksheet</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodgetWorksheet">PHPExcel_Worksheet_BaseDrawing::getWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Worksheet</dd> + <dt><b>getXfIndex</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodgetXfIndex">PHPExcel_Worksheet_ColumnDimension::getXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get index to cellXf</dd> + <dt><b>getXfIndex</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetXfIndex">PHPExcel_Worksheet_RowDimension::getXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get index to cellXf</dd> + <dt><b>getzeroHeight</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodgetzeroHeight">PHPExcel_Worksheet_RowDimension::getzeroHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ZeroHeight</dd> + <dt><b>getZoomScale</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodgetZoomScale">PHPExcel_Worksheet_SheetView::getZoomScale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ZoomScale</dd> + <dt><b>getZoomScaleNormal</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodgetZoomScaleNormal">PHPExcel_Worksheet_SheetView::getZoomScaleNormal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get ZoomScaleNormal</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="h"></a> + <div> + <h2>h</h2> + <dl> + <dt><b>hyperlinkExists</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodhyperlinkExists">PHPExcel_Worksheet::hyperlinkExists()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Hyperlink at a specific coordinate exists?</dd> + <dt><b>HeaderFooter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html">HeaderFooter.php</a></dd> + <dt><b>HeaderFooterDrawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html">HeaderFooterDrawing.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>IMAGE_FOOTER_CENTER</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_FOOTER_CENTER">PHPExcel_Worksheet_HeaderFooter::IMAGE_FOOTER_CENTER</a></dd> + <dt><b>IMAGE_FOOTER_LEFT</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_FOOTER_LEFT">PHPExcel_Worksheet_HeaderFooter::IMAGE_FOOTER_LEFT</a></dd> + <dt><b>IMAGE_FOOTER_RIGHT</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_FOOTER_RIGHT">PHPExcel_Worksheet_HeaderFooter::IMAGE_FOOTER_RIGHT</a></dd> + <dt><b>IMAGE_HEADER_CENTER</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_HEADER_CENTER">PHPExcel_Worksheet_HeaderFooter::IMAGE_HEADER_CENTER</a></dd> + <dt><b>IMAGE_HEADER_LEFT</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_HEADER_LEFT">PHPExcel_Worksheet_HeaderFooter::IMAGE_HEADER_LEFT</a></dd> + <dt><b>IMAGE_HEADER_RIGHT</b></dt> + <dd>in file HeaderFooter.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#constIMAGE_HEADER_RIGHT">PHPExcel_Worksheet_HeaderFooter::IMAGE_HEADER_RIGHT</a></dd> + <dt><b>insertNewColumnBefore</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodinsertNewColumnBefore">PHPExcel_Worksheet::insertNewColumnBefore()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Insert a new column, updating all possible related data</dd> + <dt><b>insertNewColumnBeforeByIndex</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodinsertNewColumnBeforeByIndex">PHPExcel_Worksheet::insertNewColumnBeforeByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Insert a new column, updating all possible related data</dd> + <dt><b>insertNewRowBefore</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodinsertNewRowBefore">PHPExcel_Worksheet::insertNewRowBefore()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Insert a new row, updating all possible related data</dd> + <dt><b>isColumnsToRepeatAtLeftSet</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodisColumnsToRepeatAtLeftSet">PHPExcel_Worksheet_PageSetup::isColumnsToRepeatAtLeftSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is Columns to repeat at left set?</dd> + <dt><b>isPrintAreaSet</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodisPrintAreaSet">PHPExcel_Worksheet_PageSetup::isPrintAreaSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is print area set?</dd> + <dt><b>isProtectionEnabled</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodisProtectionEnabled">PHPExcel_Worksheet_Protection::isProtectionEnabled()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is some sort of protection enabled?</dd> + <dt><b>isRowsToRepeatAtTopSet</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodisRowsToRepeatAtTopSet">PHPExcel_Worksheet_PageSetup::isRowsToRepeatAtTopSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is Rows to repeat at top set?</dd> + <dt><b>isTabColorSet</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodisTabColorSet">PHPExcel_Worksheet::isTabColorSet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Tab color set?</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="k"></a> + <div> + <h2>k</h2> + <dl> + <dt><b>key</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodkey">PHPExcel_Worksheet_RowIterator::key()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Return the current iterator key</dd> + <dt><b>key</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodkey">PHPExcel_Worksheet_CellIterator::key()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Current key</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="m"></a> + <div> + <h2>m</h2> + <dl> + <dt><b>mergeCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodmergeCells">PHPExcel_Worksheet::mergeCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set merge on a cell range</dd> + <dt><b>mergeCellsByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodmergeCellsByColumnAndRow">PHPExcel_Worksheet::mergeCellsByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set merge on a cell range by using numeric cell coordinates</dd> + <dt><b>MIMETYPE_DEFAULT</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_DEFAULT">PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT</a></dd> + <dt><b>MIMETYPE_GIF</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_GIF">PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_GIF</a></dd> + <dt><b>MIMETYPE_JPEG</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_JPEG">PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_JPEG</a></dd> + <dt><b>MIMETYPE_PNG</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constMIMETYPE_PNG">PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_PNG</a></dd> + <dt><b>MemoryDrawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html">MemoryDrawing.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="n"></a> + <div> + <h2>n</h2> + <dl> + <dt><b>namedRangeToArray</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodnamedRangeToArray">PHPExcel_Worksheet::namedRangeToArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create array from a range of cells</dd> + <dt><b>next</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodnext">PHPExcel_Worksheet_RowIterator::next()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the iterator to its next value</dd> + <dt><b>next</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodnext">PHPExcel_Worksheet_CellIterator::next()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Next value</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="o"></a> + <div> + <h2>o</h2> + <dl> + <dt><b>ORIENTATION_DEFAULT</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constORIENTATION_DEFAULT">PHPExcel_Worksheet_PageSetup::ORIENTATION_DEFAULT</a></dd> + <dt><b>ORIENTATION_LANDSCAPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constORIENTATION_LANDSCAPE">PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE</a></dd> + <dt><b>ORIENTATION_PORTRAIT</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constORIENTATION_PORTRAIT">PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PAPERSIZE_6_3_4_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_6_3_4_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_6_3_4_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_A2_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A2_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A2_PAPER</a></dd> + <dt><b>PAPERSIZE_A3</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3</a></dd> + <dt><b>PAPERSIZE_A3_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_EXTRA_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_A3_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A3_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A3_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_A4</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4</a></dd> + <dt><b>PAPERSIZE_A4_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_A4_PLUS_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_PLUS_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_PLUS_PAPER</a></dd> + <dt><b>PAPERSIZE_A4_SMALL</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_SMALL">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_SMALL</a></dd> + <dt><b>PAPERSIZE_A4_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A4_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_A5</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A5">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5</a></dd> + <dt><b>PAPERSIZE_A5_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A5_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_A5_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_A5_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_A5_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_B4</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B4">PHPExcel_Worksheet_PageSetup::PAPERSIZE_B4</a></dd> + <dt><b>PAPERSIZE_B4_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B4_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_B4_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_B5</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B5">PHPExcel_Worksheet_PageSetup::PAPERSIZE_B5</a></dd> + <dt><b>PAPERSIZE_B5_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B5_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_B5_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_B6_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_B6_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_B6_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_C</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C</a></dd> + <dt><b>PAPERSIZE_C3_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C3_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C3_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_C4_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C4_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C4_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_C5_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C5_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C5_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_C6_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C6_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C6_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_C65_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_C65_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_C65_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_D</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_D">PHPExcel_Worksheet_PageSetup::PAPERSIZE_D</a></dd> + <dt><b>PAPERSIZE_DL_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_DL_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_DL_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_E</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_E">PHPExcel_Worksheet_PageSetup::PAPERSIZE_E</a></dd> + <dt><b>PAPERSIZE_EXECUTIVE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_EXECUTIVE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_EXECUTIVE</a></dd> + <dt><b>PAPERSIZE_FOLIO</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_FOLIO">PHPExcel_Worksheet_PageSetup::PAPERSIZE_FOLIO</a></dd> + <dt><b>PAPERSIZE_GERMAN_LEGAL_FANFOLD</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_GERMAN_LEGAL_FANFOLD">PHPExcel_Worksheet_PageSetup::PAPERSIZE_GERMAN_LEGAL_FANFOLD</a></dd> + <dt><b>PAPERSIZE_GERMAN_STANDARD_FANFOLD</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_GERMAN_STANDARD_FANFOLD">PHPExcel_Worksheet_PageSetup::PAPERSIZE_GERMAN_STANDARD_FANFOLD</a></dd> + <dt><b>PAPERSIZE_INVITE_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_INVITE_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_INVITE_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_ISO_B4</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_ISO_B4">PHPExcel_Worksheet_PageSetup::PAPERSIZE_ISO_B4</a></dd> + <dt><b>PAPERSIZE_ISO_B5_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_ISO_B5_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_ISO_B5_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_ITALY_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_ITALY_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_ITALY_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_JAPANESE_DOUBLE_POSTCARD</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_JAPANESE_DOUBLE_POSTCARD">PHPExcel_Worksheet_PageSetup::PAPERSIZE_JAPANESE_DOUBLE_POSTCARD</a></dd> + <dt><b>PAPERSIZE_JIS_B5_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_JIS_B5_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_JIS_B5_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_LEDGER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LEDGER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEDGER</a></dd> + <dt><b>PAPERSIZE_LEGAL</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LEGAL">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEGAL</a></dd> + <dt><b>PAPERSIZE_LEGAL_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LEGAL_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LEGAL_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_LETTER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER</a></dd> + <dt><b>PAPERSIZE_LETTER_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_EXTRA_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_LETTER_PLUS_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_PLUS_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_PLUS_PAPER</a></dd> + <dt><b>PAPERSIZE_LETTER_SMALL</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_SMALL">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_SMALL</a></dd> + <dt><b>PAPERSIZE_LETTER_TRANSVERSE_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_LETTER_TRANSVERSE_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_LETTER_TRANSVERSE_PAPER</a></dd> + <dt><b>PAPERSIZE_MONARCH_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_MONARCH_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_MONARCH_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NO9_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO9_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO9_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NO10_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO10_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO10_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NO11_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO11_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO11_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NO12_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO12_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO12_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NO14_ENVELOPE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NO14_ENVELOPE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NO14_ENVELOPE</a></dd> + <dt><b>PAPERSIZE_NOTE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_NOTE">PHPExcel_Worksheet_PageSetup::PAPERSIZE_NOTE</a></dd> + <dt><b>PAPERSIZE_QUARTO</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_QUARTO">PHPExcel_Worksheet_PageSetup::PAPERSIZE_QUARTO</a></dd> + <dt><b>PAPERSIZE_STANDARD_1</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_1">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_1</a></dd> + <dt><b>PAPERSIZE_STANDARD_2</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_2">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_2</a></dd> + <dt><b>PAPERSIZE_STANDARD_PAPER_1</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_PAPER_1">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_1</a></dd> + <dt><b>PAPERSIZE_STANDARD_PAPER_2</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_PAPER_2">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_2</a></dd> + <dt><b>PAPERSIZE_STANDARD_PAPER_3</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STANDARD_PAPER_3">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STANDARD_PAPER_3</a></dd> + <dt><b>PAPERSIZE_STATEMENT</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_STATEMENT">PHPExcel_Worksheet_PageSetup::PAPERSIZE_STATEMENT</a></dd> + <dt><b>PAPERSIZE_SUPERA_SUPERA_A4_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_SUPERA_SUPERA_A4_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_SUPERA_SUPERA_A4_PAPER</a></dd> + <dt><b>PAPERSIZE_SUPERB_SUPERB_A3_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_SUPERB_SUPERB_A3_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_SUPERB_SUPERB_A3_PAPER</a></dd> + <dt><b>PAPERSIZE_TABLOID</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_TABLOID">PHPExcel_Worksheet_PageSetup::PAPERSIZE_TABLOID</a></dd> + <dt><b>PAPERSIZE_TABLOID_EXTRA_PAPER</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_TABLOID_EXTRA_PAPER">PHPExcel_Worksheet_PageSetup::PAPERSIZE_TABLOID_EXTRA_PAPER</a></dd> + <dt><b>PAPERSIZE_US_STANDARD_FANFOLD</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constPAPERSIZE_US_STANDARD_FANFOLD">PHPExcel_Worksheet_PageSetup::PAPERSIZE_US_STANDARD_FANFOLD</a></dd> + <dt><b>PageMargins.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html">PageMargins.php</a></dd> + <dt><b>PageSetup.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html">PageSetup.php</a></dd> + <dt><b>Protection.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html">Protection.php</a></dd> + <dt><b>PHPExcel_Worksheet</b></dt> + <dd>in file Worksheet.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet</dd> + <dt><b>PHPExcel_Worksheet_AutoFilter</b></dt> + <dd>in file AutoFilter.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_AutoFilter</dd> + <dt><b>PHPExcel_Worksheet_AutoFilter_Column</b></dt> + <dd>in file Column.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_AutoFilter_Column</dd> + <dt><b>PHPExcel_Worksheet_AutoFilter_Column_Rule</b></dt> + <dd>in file Rule.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_AutoFilter_Column_Rule</dd> + <dt><b>PHPExcel_Worksheet_BaseDrawing</b></dt> + <dd>in file BaseDrawing.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_BaseDrawing</dd> + <dt><b>PHPExcel_Worksheet_CellIterator</b></dt> + <dd>in file CellIterator.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_CellIterator</dd> + <dt><b>PHPExcel_Worksheet_ColumnDimension</b></dt> + <dd>in file ColumnDimension.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_ColumnDimension</dd> + <dt><b>PHPExcel_Worksheet_HeaderFooter</b></dt> + <dd>in file HeaderFooter.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_HeaderFooter</dd> + <dt><b>PHPExcel_Worksheet_HeaderFooterDrawing</b></dt> + <dd>in file HeaderFooterDrawing.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_HeaderFooterDrawing</dd> + <dt><b>PHPExcel_Worksheet_MemoryDrawing</b></dt> + <dd>in file MemoryDrawing.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_MemoryDrawing</dd> + <dt><b>PHPExcel_Worksheet_PageMargins</b></dt> + <dd>in file PageMargins.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_PageMargins</dd> + <dt><b>PHPExcel_Worksheet_PageSetup</b></dt> + <dd>in file PageSetup.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_PageSetup</dd> + <dt><b>PHPExcel_Worksheet_Protection</b></dt> + <dd>in file Protection.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_Protection</dd> + <dt><b>PHPExcel_Worksheet_Row</b></dt> + <dd>in file Row.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_Row</dd> + <dt><b>PHPExcel_Worksheet_RowDimension</b></dt> + <dd>in file RowDimension.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_RowDimension</dd> + <dt><b>PHPExcel_Worksheet_RowIterator</b></dt> + <dd>in file RowIterator.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_RowIterator</dd> + <dt><b>PHPExcel_Worksheet_SheetView</b></dt> + <dd>in file SheetView.php, class <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_SheetView</dd> + <dt><b>prev</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodprev">PHPExcel_Worksheet_RowIterator::prev()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the iterator to its previous value</dd> + <dt><b>protectCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodprotectCells">PHPExcel_Worksheet::protectCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set protection on a cell range</dd> + <dt><b>protectCellsByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodprotectCellsByColumnAndRow">PHPExcel_Worksheet::protectCellsByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set protection on a cell range by using numeric cell coordinates</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>Rule.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html">Rule.php</a></dd> + <dt><b>Row.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html">Row.php</a></dd> + <dt><b>RowDimension.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html">RowDimension.php</a></dd> + <dt><b>RowIterator.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html">RowIterator.php</a></dd> + <dt><b>rangeToArray</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrangeToArray">PHPExcel_Worksheet::rangeToArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create array from a range of cells</dd> + <dt><b>rebindParent</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrebindParent">PHPExcel_Worksheet::rebindParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Re-bind parent</dd> + <dt><b>refreshColumnDimensions</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrefreshColumnDimensions">PHPExcel_Worksheet::refreshColumnDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Refresh column dimensions</dd> + <dt><b>refreshRowDimensions</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodrefreshRowDimensions">PHPExcel_Worksheet::refreshRowDimensions()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Refresh row dimensions</dd> + <dt><b>removeAutoFilter</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveAutoFilter">PHPExcel_Worksheet::removeAutoFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove autofilter</dd> + <dt><b>removeColumn</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveColumn">PHPExcel_Worksheet::removeColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove a column, updating all possible related data</dd> + <dt><b>removeColumnByIndex</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveColumnByIndex">PHPExcel_Worksheet::removeColumnByIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove a column, updating all possible related data</dd> + <dt><b>removeConditionalStyles</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveConditionalStyles">PHPExcel_Worksheet::removeConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Removes conditional styles for a cell</dd> + <dt><b>removeImage</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodremoveImage">PHPExcel_Worksheet_HeaderFooter::removeImage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove header/footer image</dd> + <dt><b>removeRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodremoveRow">PHPExcel_Worksheet::removeRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Delete a row, updating all possible related data</dd> + <dt><b>RENDERING_DEFAULT</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_DEFAULT">PHPExcel_Worksheet_MemoryDrawing::RENDERING_DEFAULT</a></dd> + <dt><b>RENDERING_GIF</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_GIF">PHPExcel_Worksheet_MemoryDrawing::RENDERING_GIF</a></dd> + <dt><b>RENDERING_JPEG</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_JPEG">PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG</a></dd> + <dt><b>RENDERING_PNG</b></dt> + <dd>in file MemoryDrawing.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#constRENDERING_PNG">PHPExcel_Worksheet_MemoryDrawing::RENDERING_PNG</a></dd> + <dt><b>resetFirstPageNumber</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodresetFirstPageNumber">PHPExcel_Worksheet_PageSetup::resetFirstPageNumber()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reset first page number</dd> + <dt><b>resetStart</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodresetStart">PHPExcel_Worksheet_RowIterator::resetStart()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;(Re)Set the start row and the current row pointer</dd> + <dt><b>resetTabColor</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodresetTabColor">PHPExcel_Worksheet::resetTabColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reset tab color</dd> + <dt><b>rewind</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodrewind">PHPExcel_Worksheet_RowIterator::rewind()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Rewind the iterator to the starting row</dd> + <dt><b>rewind</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodrewind">PHPExcel_Worksheet_CellIterator::rewind()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Rewind iterator</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>SheetView.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html">SheetView.php</a></dd> + <dt><b>seek</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodseek">PHPExcel_Worksheet_RowIterator::seek()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the row pointer to the selected row</dd> + <dt><b>setAlignWithMargins</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetAlignWithMargins">PHPExcel_Worksheet_HeaderFooter::setAlignWithMargins()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AlignWithMargins</dd> + <dt><b>setAttribute</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetAttribute">PHPExcel_Worksheet_AutoFilter_Column::setAttribute()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set An AutoFilter Attribute</dd> + <dt><b>setAttributes</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetAttributes">PHPExcel_Worksheet_AutoFilter_Column::setAttributes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Attributes</dd> + <dt><b>setAutoFilter</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetAutoFilter">PHPExcel_Worksheet_Protection::setAutoFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter</dd> + <dt><b>setAutoFilter</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetAutoFilter">PHPExcel_Worksheet::setAutoFilter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter</dd> + <dt><b>setAutoFilterByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetAutoFilterByColumnAndRow">PHPExcel_Worksheet::setAutoFilterByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Autofilter Range by using numeric cell coordinates</dd> + <dt><b>setAutoSize</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetAutoSize">PHPExcel_Worksheet_ColumnDimension::setAutoSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Auto Size</dd> + <dt><b>setBottom</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetBottom">PHPExcel_Worksheet_PageMargins::setBottom()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Bottom</dd> + <dt><b>setBreak</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetBreak">PHPExcel_Worksheet::setBreak()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set break on a cell</dd> + <dt><b>setBreakByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetBreakByColumnAndRow">PHPExcel_Worksheet::setBreakByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set break on a cell by using numeric cell coordinates</dd> + <dt><b>setCellValue</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValue">PHPExcel_Worksheet::setCellValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set a cell value</dd> + <dt><b>setCellValueByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValueByColumnAndRow">PHPExcel_Worksheet::setCellValueByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set a cell value by using numeric cell coordinates</dd> + <dt><b>setCellValueExplicit</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValueExplicit">PHPExcel_Worksheet::setCellValueExplicit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set a cell value</dd> + <dt><b>setCellValueExplicitByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetCellValueExplicitByColumnAndRow">PHPExcel_Worksheet::setCellValueExplicitByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set a cell value by using numeric cell coordinates</dd> + <dt><b>setCollapsed</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetCollapsed">PHPExcel_Worksheet_ColumnDimension::setCollapsed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Collapsed</dd> + <dt><b>setCollapsed</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetCollapsed">PHPExcel_Worksheet_RowDimension::setCollapsed()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Collapsed</dd> + <dt><b>setColumn</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodsetColumn">PHPExcel_Worksheet_AutoFilter::setColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter</dd> + <dt><b>setColumnIndex</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetColumnIndex">PHPExcel_Worksheet_ColumnDimension::setColumnIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ColumnIndex</dd> + <dt><b>setColumnIndex</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetColumnIndex">PHPExcel_Worksheet_AutoFilter_Column::setColumnIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Column Index</dd> + <dt><b>setColumnsToRepeatAtLeft</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetColumnsToRepeatAtLeft">PHPExcel_Worksheet_PageSetup::setColumnsToRepeatAtLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Columns to repeat at left</dd> + <dt><b>setColumnsToRepeatAtLeftByStartAndEnd</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetColumnsToRepeatAtLeftByStartAndEnd">PHPExcel_Worksheet_PageSetup::setColumnsToRepeatAtLeftByStartAndEnd()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Columns to repeat at left by start and end</dd> + <dt><b>setComments</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetComments">PHPExcel_Worksheet::setComments()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set comments array for the entire sheet.</dd> + <dt><b>setConditionalStyles</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetConditionalStyles">PHPExcel_Worksheet::setConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set conditional styles</dd> + <dt><b>setCoordinates</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetCoordinates">PHPExcel_Worksheet_BaseDrawing::setCoordinates()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Coordinates</dd> + <dt><b>setDataValidation</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetDataValidation">PHPExcel_Worksheet::setDataValidation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set data validation</dd> + <dt><b>setDefaultStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetDefaultStyle">PHPExcel_Worksheet::setDefaultStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set default style - should only be used by PHPExcel_IReader implementations!</dd> + <dt><b>setDeleteColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetDeleteColumns">PHPExcel_Worksheet_Protection::setDeleteColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set DeleteColumns</dd> + <dt><b>setDeleteRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetDeleteRows">PHPExcel_Worksheet_Protection::setDeleteRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set DeleteRows</dd> + <dt><b>setDescription</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetDescription">PHPExcel_Worksheet_BaseDrawing::setDescription()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Description</dd> + <dt><b>setDifferentFirst</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetDifferentFirst">PHPExcel_Worksheet_HeaderFooter::setDifferentFirst()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set DifferentFirst</dd> + <dt><b>setDifferentOddEven</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetDifferentOddEven">PHPExcel_Worksheet_HeaderFooter::setDifferentOddEven()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set DifferentOddEven</dd> + <dt><b>setEvenFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetEvenFooter">PHPExcel_Worksheet_HeaderFooter::setEvenFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set EvenFooter</dd> + <dt><b>setEvenHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetEvenHeader">PHPExcel_Worksheet_HeaderFooter::setEvenHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set EvenHeader</dd> + <dt><b>setFilterType</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetFilterType">PHPExcel_Worksheet_AutoFilter_Column::setFilterType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Type</dd> + <dt><b>setFirstFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetFirstFooter">PHPExcel_Worksheet_HeaderFooter::setFirstFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set FirstFooter</dd> + <dt><b>setFirstHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetFirstHeader">PHPExcel_Worksheet_HeaderFooter::setFirstHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set FirstHeader</dd> + <dt><b>setFirstPageNumber</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFirstPageNumber">PHPExcel_Worksheet_PageSetup::setFirstPageNumber()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set first page number</dd> + <dt><b>setFitToHeight</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFitToHeight">PHPExcel_Worksheet_PageSetup::setFitToHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Fit To Height</dd> + <dt><b>setFitToPage</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFitToPage">PHPExcel_Worksheet_PageSetup::setFitToPage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Fit To Page</dd> + <dt><b>setFitToWidth</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetFitToWidth">PHPExcel_Worksheet_PageSetup::setFitToWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Fit To Width</dd> + <dt><b>setFooter</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetFooter">PHPExcel_Worksheet_PageMargins::setFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Footer</dd> + <dt><b>setFormatCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetFormatCells">PHPExcel_Worksheet_Protection::setFormatCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set FormatCells</dd> + <dt><b>setFormatColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetFormatColumns">PHPExcel_Worksheet_Protection::setFormatColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set FormatColumns</dd> + <dt><b>setFormatRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetFormatRows">PHPExcel_Worksheet_Protection::setFormatRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set FormatRows</dd> + <dt><b>setGrouping</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetGrouping">PHPExcel_Worksheet_AutoFilter_Column_Rule::setGrouping()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Rule Grouping</dd> + <dt><b>setHeader</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetHeader">PHPExcel_Worksheet_PageMargins::setHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Header</dd> + <dt><b>setHeaderFooter</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetHeaderFooter">PHPExcel_Worksheet::setHeaderFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set page header/footer</dd> + <dt><b>setHeight</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetHeight">PHPExcel_Worksheet_HeaderFooterDrawing::setHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Height</dd> + <dt><b>setHeight</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetHeight">PHPExcel_Worksheet_BaseDrawing::setHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Height</dd> + <dt><b>setHorizontalCentered</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetHorizontalCentered">PHPExcel_Worksheet_PageSetup::setHorizontalCentered()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set center page horizontally</dd> + <dt><b>setHyperlink</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetHyperlink">PHPExcel_Worksheet::setHyperlink()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set hyperlnk</dd> + <dt><b>setImageResource</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodsetImageResource">PHPExcel_Worksheet_MemoryDrawing::setImageResource()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set image resource</dd> + <dt><b>setImages</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetImages">PHPExcel_Worksheet_HeaderFooter::setImages()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set header/footer images</dd> + <dt><b>setInsertColumns</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetInsertColumns">PHPExcel_Worksheet_Protection::setInsertColumns()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set InsertColumns</dd> + <dt><b>setInsertHyperlinks</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetInsertHyperlinks">PHPExcel_Worksheet_Protection::setInsertHyperlinks()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set InsertHyperlinks</dd> + <dt><b>setInsertRows</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetInsertRows">PHPExcel_Worksheet_Protection::setInsertRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set InsertRows</dd> + <dt><b>setIterateOnlyExistingCells</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodsetIterateOnlyExistingCells">PHPExcel_Worksheet_CellIterator::setIterateOnlyExistingCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the iterator to loop only existing cells</dd> + <dt><b>setJoin</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetJoin">PHPExcel_Worksheet_AutoFilter_Column::setJoin()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Multiple Rules And/Or</dd> + <dt><b>setLeft</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetLeft">PHPExcel_Worksheet_PageMargins::setLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Left</dd> + <dt><b>setMergeCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetMergeCells">PHPExcel_Worksheet::setMergeCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set merge cells array for the entire sheet. Use instead mergeCells() to merge a single cell range.</dd> + <dt><b>setMimeType</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodsetMimeType">PHPExcel_Worksheet_MemoryDrawing::setMimeType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set mime type</dd> + <dt><b>setName</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetName">PHPExcel_Worksheet_HeaderFooterDrawing::setName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Name</dd> + <dt><b>setName</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetName">PHPExcel_Worksheet_BaseDrawing::setName()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Name</dd> + <dt><b>setObjects</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetObjects">PHPExcel_Worksheet_Protection::setObjects()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Objects</dd> + <dt><b>setOddFooter</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetOddFooter">PHPExcel_Worksheet_HeaderFooter::setOddFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OddFooter</dd> + <dt><b>setOddHeader</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetOddHeader">PHPExcel_Worksheet_HeaderFooter::setOddHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OddHeader</dd> + <dt><b>setOffsetX</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetOffsetX">PHPExcel_Worksheet_HeaderFooterDrawing::setOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OffsetX</dd> + <dt><b>setOffsetX</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetX">PHPExcel_Worksheet_BaseDrawing::setOffsetX()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OffsetX</dd> + <dt><b>setOffsetY</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetOffsetY">PHPExcel_Worksheet_BaseDrawing::setOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OffsetY</dd> + <dt><b>setOffsetY</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetOffsetY">PHPExcel_Worksheet_HeaderFooterDrawing::setOffsetY()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set OffsetY</dd> + <dt><b>setOperator</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetOperator">PHPExcel_Worksheet_AutoFilter_Column_Rule::setOperator()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Rule Operator</dd> + <dt><b>setOrientation</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetOrientation">PHPExcel_Worksheet_PageSetup::setOrientation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Orientation</dd> + <dt><b>setOutlineLevel</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetOutlineLevel">PHPExcel_Worksheet_ColumnDimension::setOutlineLevel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Outline Level</dd> + <dt><b>setOutlineLevel</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetOutlineLevel">PHPExcel_Worksheet_RowDimension::setOutlineLevel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Outline Level</dd> + <dt><b>setPageMargins</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetPageMargins">PHPExcel_Worksheet::setPageMargins()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set page margins</dd> + <dt><b>setPageSetup</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetPageSetup">PHPExcel_Worksheet::setPageSetup()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set page setup</dd> + <dt><b>setPaperSize</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetPaperSize">PHPExcel_Worksheet_PageSetup::setPaperSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Paper Size</dd> + <dt><b>setParent</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetParent">PHPExcel_Worksheet_AutoFilter_Column_Rule::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set this Rule's AutoFilter Column Parent</dd> + <dt><b>setParent</b></dt> + <dd>in file Column.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html#methodsetParent">PHPExcel_Worksheet_AutoFilter_Column::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set this Column's AutoFilter Parent</dd> + <dt><b>setParent</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodsetParent">PHPExcel_Worksheet_AutoFilter::setParent()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Parent Worksheet</dd> + <dt><b>setPassword</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetPassword">PHPExcel_Worksheet_Protection::setPassword()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Password</dd> + <dt><b>setPath</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetPath">PHPExcel_Worksheet_HeaderFooterDrawing::setPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Path</dd> + <dt><b>setPivotTables</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetPivotTables">PHPExcel_Worksheet_Protection::setPivotTables()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set PivotTables</dd> + <dt><b>setPrintArea</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetPrintArea">PHPExcel_Worksheet_PageSetup::setPrintArea()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set print area. e.g. 'A1:D10' or 'A1:D10,G5:M20'</dd> + <dt><b>setPrintAreaByColumnAndRow</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetPrintAreaByColumnAndRow">PHPExcel_Worksheet_PageSetup::setPrintAreaByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set print area</dd> + <dt><b>setPrintGridlines</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetPrintGridlines">PHPExcel_Worksheet::setPrintGridlines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set print gridlines</dd> + <dt><b>SETPRINTRANGE_INSERT</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constSETPRINTRANGE_INSERT">PHPExcel_Worksheet_PageSetup::SETPRINTRANGE_INSERT</a></dd> + <dt><b>SETPRINTRANGE_OVERWRITE</b></dt> + <dd>in file PageSetup.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#constSETPRINTRANGE_OVERWRITE">PHPExcel_Worksheet_PageSetup::SETPRINTRANGE_OVERWRITE</a></dd> + <dt><b>setProtection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetProtection">PHPExcel_Worksheet::setProtection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Protection</dd> + <dt><b>setRange</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodsetRange">PHPExcel_Worksheet_AutoFilter::setRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Range</dd> + <dt><b>setRenderingFunction</b></dt> + <dd>in file MemoryDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html#methodsetRenderingFunction">PHPExcel_Worksheet_MemoryDrawing::setRenderingFunction()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set rendering function</dd> + <dt><b>setResizeProportional</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetResizeProportional">PHPExcel_Worksheet_BaseDrawing::setResizeProportional()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ResizeProportional</dd> + <dt><b>setResizeProportional</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetResizeProportional">PHPExcel_Worksheet_HeaderFooterDrawing::setResizeProportional()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ResizeProportional</dd> + <dt><b>setRight</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetRight">PHPExcel_Worksheet_PageMargins::setRight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Right</dd> + <dt><b>setRightToLeft</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetRightToLeft">PHPExcel_Worksheet::setRightToLeft()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set right-to-left</dd> + <dt><b>setRotation</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetRotation">PHPExcel_Worksheet_BaseDrawing::setRotation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rotation</dd> + <dt><b>setRowHeight</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetRowHeight">PHPExcel_Worksheet_RowDimension::setRowHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Row Height</dd> + <dt><b>setRowIndex</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetRowIndex">PHPExcel_Worksheet_RowDimension::setRowIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Row Index</dd> + <dt><b>setRowsToRepeatAtTop</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetRowsToRepeatAtTop">PHPExcel_Worksheet_PageSetup::setRowsToRepeatAtTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rows to repeat at top</dd> + <dt><b>setRowsToRepeatAtTopByStartAndEnd</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetRowsToRepeatAtTopByStartAndEnd">PHPExcel_Worksheet_PageSetup::setRowsToRepeatAtTopByStartAndEnd()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Rows to repeat at top by start and end</dd> + <dt><b>setRule</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetRule">PHPExcel_Worksheet_AutoFilter_Column_Rule::setRule()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Rule</dd> + <dt><b>setRuleType</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetRuleType">PHPExcel_Worksheet_AutoFilter_Column_Rule::setRuleType()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Rule Type</dd> + <dt><b>setScale</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetScale">PHPExcel_Worksheet_PageSetup::setScale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Scale</dd> + <dt><b>setScaleWithDocument</b></dt> + <dd>in file HeaderFooter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html#methodsetScaleWithDocument">PHPExcel_Worksheet_HeaderFooter::setScaleWithDocument()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ScaleWithDocument</dd> + <dt><b>setScenarios</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetScenarios">PHPExcel_Worksheet_Protection::setScenarios()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Scenarios</dd> + <dt><b>setSelectedCell</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSelectedCell">PHPExcel_Worksheet::setSelectedCell()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Selected cell</dd> + <dt><b>setSelectedCellByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSelectedCellByColumnAndRow">PHPExcel_Worksheet::setSelectedCellByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Selected cell by using numeric cell coordinates</dd> + <dt><b>setSelectedCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSelectedCells">PHPExcel_Worksheet::setSelectedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Select a range of cells.</dd> + <dt><b>setSelectLockedCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSelectLockedCells">PHPExcel_Worksheet_Protection::setSelectLockedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set SelectLockedCells</dd> + <dt><b>setSelectUnlockedCells</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSelectUnlockedCells">PHPExcel_Worksheet_Protection::setSelectUnlockedCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set SelectUnlockedCells</dd> + <dt><b>setShadow</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetShadow">PHPExcel_Worksheet_BaseDrawing::setShadow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Shadow</dd> + <dt><b>setSharedStyle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSharedStyle">PHPExcel_Worksheet::setSharedStyle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set shared cell style to a range of cells</dd> + <dt><b>setSheet</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSheet">PHPExcel_Worksheet_Protection::setSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Sheet</dd> + <dt><b>setSheetState</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSheetState">PHPExcel_Worksheet::setSheetState()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet state</dd> + <dt><b>setSheetView</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetSheetView">PHPExcel_Worksheet::setSheetView()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet view</dd> + <dt><b>setShowGridlines</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowGridlines">PHPExcel_Worksheet::setShowGridlines()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show gridlines</dd> + <dt><b>setShowRowColHeaders</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowRowColHeaders">PHPExcel_Worksheet::setShowRowColHeaders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show row and column headers</dd> + <dt><b>setShowSummaryBelow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowSummaryBelow">PHPExcel_Worksheet::setShowSummaryBelow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show summary below</dd> + <dt><b>setShowSummaryRight</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetShowSummaryRight">PHPExcel_Worksheet::setShowSummaryRight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set show summary right</dd> + <dt><b>setSort</b></dt> + <dd>in file Protection.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html#methodsetSort">PHPExcel_Worksheet_Protection::setSort()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Sort</dd> + <dt><b>setTitle</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsetTitle">PHPExcel_Worksheet::setTitle()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set title</dd> + <dt><b>setTop</b></dt> + <dd>in file PageMargins.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html#methodsetTop">PHPExcel_Worksheet_PageMargins::setTop()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Top</dd> + <dt><b>setValue</b></dt> + <dd>in file Rule.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html#methodsetValue">PHPExcel_Worksheet_AutoFilter_Column_Rule::setValue()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set AutoFilter Rule Value</dd> + <dt><b>setVerticalCentered</b></dt> + <dd>in file PageSetup.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html#methodsetVerticalCentered">PHPExcel_Worksheet_PageSetup::setVerticalCentered()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set center page vertically</dd> + <dt><b>setView</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodsetView">PHPExcel_Worksheet_SheetView::setView()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set View</dd> + <dt><b>setVisible</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetVisible">PHPExcel_Worksheet_ColumnDimension::setVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Visible</dd> + <dt><b>setVisible</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetVisible">PHPExcel_Worksheet_RowDimension::setVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Visible</dd> + <dt><b>setWidth</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetWidth">PHPExcel_Worksheet_ColumnDimension::setWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Width</dd> + <dt><b>setWidth</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetWidth">PHPExcel_Worksheet_HeaderFooterDrawing::setWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Width</dd> + <dt><b>setWidth</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidth">PHPExcel_Worksheet_BaseDrawing::setWidth()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Width</dd> + <dt><b>setWidthAndHeight</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWidthAndHeight">PHPExcel_Worksheet_BaseDrawing::setWidthAndHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set width and height with proportional resize</dd> + <dt><b>setWidthAndHeight</b></dt> + <dd>in file HeaderFooterDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html#methodsetWidthAndHeight">PHPExcel_Worksheet_HeaderFooterDrawing::setWidthAndHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set width and height with proportional resize</dd> + <dt><b>setWorksheet</b></dt> + <dd>in file BaseDrawing.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html#methodsetWorksheet">PHPExcel_Worksheet_BaseDrawing::setWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Worksheet</dd> + <dt><b>setXfIndex</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetXfIndex">PHPExcel_Worksheet_RowDimension::setXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set index to cellXf</dd> + <dt><b>setXfIndex</b></dt> + <dd>in file ColumnDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html#methodsetXfIndex">PHPExcel_Worksheet_ColumnDimension::setXfIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set index to cellXf</dd> + <dt><b>setzeroHeight</b></dt> + <dd>in file RowDimension.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html#methodsetzeroHeight">PHPExcel_Worksheet_RowDimension::setzeroHeight()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ZeroHeight</dd> + <dt><b>setZoomScale</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodsetZoomScale">PHPExcel_Worksheet_SheetView::setZoomScale()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ZoomScale</dd> + <dt><b>setZoomScaleNormal</b></dt> + <dd>in file SheetView.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#methodsetZoomScaleNormal">PHPExcel_Worksheet_SheetView::setZoomScaleNormal()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set ZoomScale</dd> + <dt><b>SHEETSTATE_HIDDEN</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constSHEETSTATE_HIDDEN">PHPExcel_Worksheet::SHEETSTATE_HIDDEN</a></dd> + <dt><b>SHEETSTATE_VERYHIDDEN</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constSHEETSTATE_VERYHIDDEN">PHPExcel_Worksheet::SHEETSTATE_VERYHIDDEN</a></dd> + <dt><b>SHEETSTATE_VISIBLE</b></dt> + <dd>in file Worksheet.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#constSHEETSTATE_VISIBLE">PHPExcel_Worksheet::SHEETSTATE_VISIBLE</a></dd> + <dt><b>SHEETVIEW_NORMAL</b></dt> + <dd>in file SheetView.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#constSHEETVIEW_NORMAL">PHPExcel_Worksheet_SheetView::SHEETVIEW_NORMAL</a></dd> + <dt><b>SHEETVIEW_PAGE_BREAK_PREVIEW</b></dt> + <dd>in file SheetView.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#constSHEETVIEW_PAGE_BREAK_PREVIEW">PHPExcel_Worksheet_SheetView::SHEETVIEW_PAGE_BREAK_PREVIEW</a></dd> + <dt><b>SHEETVIEW_PAGE_LAYOUT</b></dt> + <dd>in file SheetView.php, class constant <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html#constSHEETVIEW_PAGE_LAYOUT">PHPExcel_Worksheet_SheetView::SHEETVIEW_PAGE_LAYOUT</a></dd> + <dt><b>shiftColumn</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodshiftColumn">PHPExcel_Worksheet_AutoFilter::shiftColumn()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Shift an AutoFilter Column Rule to a different column</dd> + <dt><b>showHideRows</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodshowHideRows">PHPExcel_Worksheet_AutoFilter::showHideRows()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Apply the AutoFilter rules to the AutoFilter Range</dd> + <dt><b>shrinkRangeToFit</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodshrinkRangeToFit">PHPExcel_Worksheet::shrinkRangeToFit()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Accepts a range, returning it as a range that falls within the current highest row and column of the worksheet</dd> + <dt><b>sortCellCollection</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodsortCellCollection">PHPExcel_Worksheet::sortCellCollection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sort collection of cells</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>testColumnInRange</b></dt> + <dd>in file AutoFilter.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html#methodtestColumnInRange">PHPExcel_Worksheet_AutoFilter::testColumnInRange()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Validate that the specified column is in the AutoFilter range</dd> + <dt><b>toArray</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodtoArray">PHPExcel_Worksheet::toArray()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create array from worksheet</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="u"></a> + <div> + <h2>u</h2> + <dl> + <dt><b>unfreezePane</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunfreezePane">PHPExcel_Worksheet::unfreezePane()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Unfreeze Pane</dd> + <dt><b>unmergeCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunmergeCells">PHPExcel_Worksheet::unmergeCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove merge on a cell range</dd> + <dt><b>unmergeCellsByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunmergeCellsByColumnAndRow">PHPExcel_Worksheet::unmergeCellsByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove merge on a cell range by using numeric cell coordinates</dd> + <dt><b>unprotectCells</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunprotectCells">PHPExcel_Worksheet::unprotectCells()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove protection on a cell range</dd> + <dt><b>unprotectCellsByColumnAndRow</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html#methodunprotectCellsByColumnAndRow">PHPExcel_Worksheet::unprotectCellsByColumnAndRow()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Remove protection on a cell range by using numeric cell coordinates</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="v"></a> + <div> + <h2>v</h2> + <dl> + <dt><b>valid</b></dt> + <dd>in file RowIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html#methodvalid">PHPExcel_Worksheet_RowIterator::valid()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Indicate if more rows exist in the worksheet</dd> + <dt><b>valid</b></dt> + <dd>in file CellIterator.php, method <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html#methodvalid">PHPExcel_Worksheet_CellIterator::valid()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Are there any more PHPExcel_Cell instances available?</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <hr /> + <a name="w"></a> + <div> + <h2>w</h2> + <dl> + <dt><b>Worksheet.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html">Worksheet.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Worksheet_Drawing.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Worksheet_Drawing.html new file mode 100644 index 0000000..8fd7e00 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Worksheet_Drawing.html @@ -0,0 +1,207 @@ +<html> +<head> +<title>Package PHPExcel_Worksheet_Drawing Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet_Drawing</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Worksheet_Drawing.html" class="menu">class tree: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="elementindex_PHPExcel_Worksheet_Drawing.html" class="menu">index: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing.php.html"> Drawing.php + </a><br> + <a href="PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing---Shadow.php.html"> Shadow.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Worksheet_Drawing</h1> + [ <a href="elementindex_PHPExcel_Worksheet_Drawing.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Worksheet_Drawing.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Worksheet_Drawing.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Worksheet_Drawing.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Worksheet_Drawing.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>__clone</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#method__clone">PHPExcel_Worksheet_Drawing_Shadow::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__clone</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__clone">PHPExcel_Worksheet_Drawing::__clone()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Implement PHP __clone to create a deep clone, not just a shallow copy.</dd> + <dt><b>__construct</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#method__construct">PHPExcel_Worksheet_Drawing::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_Drawing</dd> + <dt><b>__construct</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#method__construct">PHPExcel_Worksheet_Drawing_Shadow::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Worksheet_Drawing_Shadow</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet_Drawing.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>Drawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing.php.html">Drawing.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet_Drawing.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getAlignment</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetAlignment">PHPExcel_Worksheet_Drawing_Shadow::getAlignment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Shadow alignment</dd> + <dt><b>getAlpha</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetAlpha">PHPExcel_Worksheet_Drawing_Shadow::getAlpha()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Alpha</dd> + <dt><b>getBlurRadius</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetBlurRadius">PHPExcel_Worksheet_Drawing_Shadow::getBlurRadius()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Blur radius</dd> + <dt><b>getColor</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetColor">PHPExcel_Worksheet_Drawing_Shadow::getColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Color</dd> + <dt><b>getDirection</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetDirection">PHPExcel_Worksheet_Drawing_Shadow::getDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Shadow direction (in degrees)</dd> + <dt><b>getDistance</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetDistance">PHPExcel_Worksheet_Drawing_Shadow::getDistance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Shadow distance</dd> + <dt><b>getExtension</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetExtension">PHPExcel_Worksheet_Drawing::getExtension()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Extension</dd> + <dt><b>getFilename</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetFilename">PHPExcel_Worksheet_Drawing::getFilename()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Filename</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetHashCode">PHPExcel_Worksheet_Drawing_Shadow::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getHashCode</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetHashCode">PHPExcel_Worksheet_Drawing::getHashCode()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get hash code</dd> + <dt><b>getIndexedFilename</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetIndexedFilename">PHPExcel_Worksheet_Drawing::getIndexedFilename()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get indexed filename (using image index)</dd> + <dt><b>getPath</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodgetPath">PHPExcel_Worksheet_Drawing::getPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Path</dd> + <dt><b>getVisible</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodgetVisible">PHPExcel_Worksheet_Drawing_Shadow::getVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Visible</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet_Drawing.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PHPExcel_Worksheet_Drawing</b></dt> + <dd>in file Drawing.php, class <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_Drawing</dd> + <dt><b>PHPExcel_Worksheet_Drawing_Shadow</b></dt> + <dd>in file Shadow.php, class <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Worksheet_Drawing_Shadow</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet_Drawing.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>Shadow.php</b></dt> + <dd>procedural page <a href="PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing---Shadow.php.html">Shadow.php</a></dd> + <dt><b>setAlignment</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetAlignment">PHPExcel_Worksheet_Drawing_Shadow::setAlignment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Shadow alignment</dd> + <dt><b>setAlpha</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetAlpha">PHPExcel_Worksheet_Drawing_Shadow::setAlpha()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Alpha</dd> + <dt><b>setBlurRadius</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetBlurRadius">PHPExcel_Worksheet_Drawing_Shadow::setBlurRadius()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Blur radius</dd> + <dt><b>setColor</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetColor">PHPExcel_Worksheet_Drawing_Shadow::setColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Color</dd> + <dt><b>setDirection</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetDirection">PHPExcel_Worksheet_Drawing_Shadow::setDirection()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Shadow direction (in degrees)</dd> + <dt><b>setDistance</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetDistance">PHPExcel_Worksheet_Drawing_Shadow::setDistance()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Shadow distance</dd> + <dt><b>setPath</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html#methodsetPath">PHPExcel_Worksheet_Drawing::setPath()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Path</dd> + <dt><b>setVisible</b></dt> + <dd>in file Shadow.php, method <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#methodsetVisible">PHPExcel_Worksheet_Drawing_Shadow::setVisible()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Visible</dd> + <dt><b>SHADOW_BOTTOM</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_BOTTOM">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_BOTTOM</a></dd> + <dt><b>SHADOW_BOTTOM_LEFT</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_BOTTOM_LEFT">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_BOTTOM_LEFT</a></dd> + <dt><b>SHADOW_BOTTOM_RIGHT</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_BOTTOM_RIGHT">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_BOTTOM_RIGHT</a></dd> + <dt><b>SHADOW_CENTER</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_CENTER">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_CENTER</a></dd> + <dt><b>SHADOW_LEFT</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_LEFT">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_LEFT</a></dd> + <dt><b>SHADOW_TOP</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_TOP">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_TOP</a></dd> + <dt><b>SHADOW_TOP_LEFT</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_TOP_LEFT">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_TOP_LEFT</a></dd> + <dt><b>SHADOW_TOP_RIGHT</b></dt> + <dd>in file Shadow.php, class constant <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html#constSHADOW_TOP_RIGHT">PHPExcel_Worksheet_Drawing_Shadow::SHADOW_TOP_RIGHT</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Worksheet_Drawing.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Writer.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Writer.html new file mode 100644 index 0000000..ae662d4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Writer.html @@ -0,0 +1,372 @@ +<html> +<head> +<title>Package PHPExcel_Writer Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Writer</h1> + [ <a href="elementindex_PHPExcel_Writer.html#b">b</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#f">f</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#h">h</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#m">m</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#w">w</a> ] + [ <a href="elementindex_PHPExcel_Writer.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>$_isPdf</b></dt> + <dd>in file HTML.php, variable <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_isPdf">PHPExcel_Writer_HTML::$_isPdf</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is the current writer creating PDF?</dd> + <dt><b>$_paperSizes</b></dt> + <dd>in file Core.php, variable <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#var$_paperSizes">PHPExcel_Writer_PDF_Core::$_paperSizes</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Paper Sizes xRef List</dd> + <dt><b>$_phpExcel</b></dt> + <dd>in file HTML.php, variable <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#var$_phpExcel">PHPExcel_Writer_HTML::$_phpExcel</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel object</dd> + <dt><b>__call</b></dt> + <dd>in file PDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF.html#method__call">PHPExcel_Writer_PDF::__call()</a></dd> + <dt><b>__construct</b></dt> + <dd>in file PDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF.html#method__construct">PHPExcel_Writer_PDF::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_PDF</dd> + <dt><b>__construct</b></dt> + <dd>in file tcPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html#method__construct">PHPExcel_Writer_PDF_tcPDF::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_PDF</dd> + <dt><b>__construct</b></dt> + <dd>in file mPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html#method__construct">PHPExcel_Writer_PDF_mPDF::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_PDF</dd> + <dt><b>__construct</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#method__construct">PHPExcel_Writer_HTML::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_HTML</dd> + <dt><b>__construct</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#method__construct">PHPExcel_Writer_CSV::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_CSV</dd> + <dt><b>__construct</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#method__construct">PHPExcel_Writer_PDF_Core::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_PDF</dd> + <dt><b>__construct</b></dt> + <dd>in file DomPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html#method__construct">PHPExcel_Writer_PDF_DomPDF::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_PDF</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>buildCSS</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodbuildCSS">PHPExcel_Writer_HTML::buildCSS()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Build CSS styles</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>CSV.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html">CSV.php</a></dd> + <dt><b>Core.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html">Core.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>DomPDF.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html">DomPDF.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>formatColor</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodformatColor">PHPExcel_Writer_HTML::formatColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add color to formatted string as inline style</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>generateHTMLFooter</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLFooter">PHPExcel_Writer_HTML::generateHTMLFooter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate HTML footer</dd> + <dt><b>generateHTMLHeader</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateHTMLHeader">PHPExcel_Writer_HTML::generateHTMLHeader()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate HTML header</dd> + <dt><b>generateNavigation</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateNavigation">PHPExcel_Writer_HTML::generateNavigation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate sheet tabs</dd> + <dt><b>generateSheetData</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateSheetData">PHPExcel_Writer_HTML::generateSheetData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate sheet data</dd> + <dt><b>generateStyles</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgenerateStyles">PHPExcel_Writer_HTML::generateStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate CSS styles</dd> + <dt><b>getDelimiter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetDelimiter">PHPExcel_Writer_CSV::getDelimiter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get delimiter</dd> + <dt><b>getEnclosure</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetEnclosure">PHPExcel_Writer_CSV::getEnclosure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get enclosure</dd> + <dt><b>getExcelCompatibility</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetExcelCompatibility">PHPExcel_Writer_CSV::getExcelCompatibility()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get whether the file should be saved with full Excel Compatibility</dd> + <dt><b>getFont</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetFont">PHPExcel_Writer_PDF_Core::getFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Font</dd> + <dt><b>getGenerateSheetNavigationBlock</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::getGenerateSheetNavigationBlock()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>getImagesRoot</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetImagesRoot">PHPExcel_Writer_HTML::getImagesRoot()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get images root</dd> + <dt><b>getLineEnding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetLineEnding">PHPExcel_Writer_CSV::getLineEnding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get line ending</dd> + <dt><b>getOrientation</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetOrientation">PHPExcel_Writer_PDF_Core::getOrientation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Orientation</dd> + <dt><b>getPaperSize</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetPaperSize">PHPExcel_Writer_PDF_Core::getPaperSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Paper Size</dd> + <dt><b>getPreCalculateFormulas</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetPreCalculateFormulas">PHPExcel_Writer_HTML::getPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Pre-Calculate Formulas</dd> + <dt><b>getPreCalculateFormulas</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetPreCalculateFormulas">PHPExcel_Writer_CSV::getPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Pre-Calculate Formulas</dd> + <dt><b>getSheetIndex</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetSheetIndex">PHPExcel_Writer_CSV::getSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>getSheetIndex</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetSheetIndex">PHPExcel_Writer_HTML::getSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get sheet index</dd> + <dt><b>getTempDir</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodgetTempDir">PHPExcel_Writer_PDF_Core::getTempDir()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get temporary storage directory</dd> + <dt><b>getUseBOM</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodgetUseBOM">PHPExcel_Writer_CSV::getUseBOM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get whether BOM should be used</dd> + <dt><b>getUseInlineCss</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodgetUseInlineCss">PHPExcel_Writer_HTML::getUseInlineCss()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get use inline CSS?</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="h"></a> + <div> + <h2>h</h2> + <dl> + <dt><b>HTML.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html">HTML.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>IWriter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html">IWriter.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="m"></a> + <div> + <h2>m</h2> + <dl> + <dt><b>mPDF.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html">mPDF.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PDF.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html">PDF.php</a></dd> + <dt><b>PHPExcel_Writer_CSV</b></dt> + <dd>in file CSV.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_CSV</dd> + <dt><b>PHPExcel_Writer_HTML</b></dt> + <dd>in file HTML.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_HTML</dd> + <dt><b>PHPExcel_Writer_IWriter</b></dt> + <dd>in file IWriter.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_IWriter</dd> + <dt><b>PHPExcel_Writer_PDF</b></dt> + <dd>in file PDF.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_PDF</dd> + <dt><b>PHPExcel_Writer_PDF_Core</b></dt> + <dd>in file Core.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_PDF_Core</dd> + <dt><b>PHPExcel_Writer_PDF_DomPDF</b></dt> + <dd>in file DomPDF.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_PDF_DomPDF</dd> + <dt><b>PHPExcel_Writer_PDF_mPDF</b></dt> + <dd>in file mPDF.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_PDF_mPDF</dd> + <dt><b>PHPExcel_Writer_PDF_tcPDF</b></dt> + <dd>in file tcPDF.php, class <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_PDF_tcPDF</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>save</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsave">PHPExcel_Writer_CSV::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file DomPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html#methodsave">PHPExcel_Writer_PDF_DomPDF::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file tcPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html#methodsave">PHPExcel_Writer_PDF_tcPDF::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsave">PHPExcel_Writer_HTML::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file mPDF.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html#methodsave">PHPExcel_Writer_PDF_mPDF::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>save</b></dt> + <dd>in file IWriter.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html#methodsave">PHPExcel_Writer_IWriter::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>setDelimiter</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetDelimiter">PHPExcel_Writer_CSV::setDelimiter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set delimiter</dd> + <dt><b>setEnclosure</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetEnclosure">PHPExcel_Writer_CSV::setEnclosure()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set enclosure</dd> + <dt><b>setExcelCompatibility</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetExcelCompatibility">PHPExcel_Writer_CSV::setExcelCompatibility()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set whether the file should be saved with full Excel Compatibility</dd> + <dt><b>setFont</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetFont">PHPExcel_Writer_PDF_Core::setFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set font. Examples:</dd> + <dt><b>setGenerateSheetNavigationBlock</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetGenerateSheetNavigationBlock">PHPExcel_Writer_HTML::setGenerateSheetNavigationBlock()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + <dt><b>setImagesRoot</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetImagesRoot">PHPExcel_Writer_HTML::setImagesRoot()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set images root</dd> + <dt><b>setLineEnding</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetLineEnding">PHPExcel_Writer_CSV::setLineEnding()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set line ending</dd> + <dt><b>setOrientation</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetOrientation">PHPExcel_Writer_PDF_Core::setOrientation()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Orientation</dd> + <dt><b>setPaperSize</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetPaperSize">PHPExcel_Writer_PDF_Core::setPaperSize()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Paper Size</dd> + <dt><b>setPreCalculateFormulas</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetPreCalculateFormulas">PHPExcel_Writer_HTML::setPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Pre-Calculate Formulas</dd> + <dt><b>setPreCalculateFormulas</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetPreCalculateFormulas">PHPExcel_Writer_CSV::setPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Pre-Calculate Formulas</dd> + <dt><b>setSheetIndex</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetSheetIndex">PHPExcel_Writer_CSV::setSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + <dt><b>setSheetIndex</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetSheetIndex">PHPExcel_Writer_HTML::setSheetIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set sheet index</dd> + <dt><b>setTempDir</b></dt> + <dd>in file Core.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html#methodsetTempDir">PHPExcel_Writer_PDF_Core::setTempDir()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set temporary storage directory</dd> + <dt><b>setUseBOM</b></dt> + <dd>in file CSV.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html#methodsetUseBOM">PHPExcel_Writer_CSV::setUseBOM()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set whether BOM should be used</dd> + <dt><b>setUseInlineCss</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodsetUseInlineCss">PHPExcel_Writer_HTML::setUseInlineCss()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set use inline CSS?</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>tcPDF.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html">tcPDF.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <hr /> + <a name="w"></a> + <div> + <h2>w</h2> + <dl> + <dt><b>writeAllSheets</b></dt> + <dd>in file HTML.php, method <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html#methodwriteAllSheets">PHPExcel_Writer_HTML::writeAllSheets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write all sheets (resets sheetIndex to NULL)</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Writer_Excel2007.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Writer_Excel2007.html new file mode 100644 index 0000000..f84efcd --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Writer_Excel2007.html @@ -0,0 +1,399 @@ +<html> +<head> +<title>Package PHPExcel_Writer_Excel2007 Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Writer_Excel2007</h1> + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#d">d</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#e">e</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#f">f</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#w">w</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>_writeChart</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#method_writeChart">PHPExcel_Writer_Excel2007_Drawing::_writeChart()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write drawings to XML format</dd> + <dt><b>_writeComment</b></dt> + <dd>in file Comments.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#method_writeComment">PHPExcel_Writer_Excel2007_Comments::_writeComment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write comment to XML format</dd> + <dt><b>_writeDrawing</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#method_writeDrawing">PHPExcel_Writer_Excel2007_Drawing::_writeDrawing()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write drawings to XML format</dd> + <dt><b>_writeVMLComment</b></dt> + <dd>in file Comments.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#method_writeVMLComment">PHPExcel_Writer_Excel2007_Comments::_writeVMLComment()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write VML comment to XML format</dd> + <dt><b>_writeVMLHeaderFooterImage</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#method_writeVMLHeaderFooterImage">PHPExcel_Writer_Excel2007_Drawing::_writeVMLHeaderFooterImage()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write VML comment to XML format</dd> + <dt><b>__construct</b></dt> + <dd>in file WriterPart.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#method__construct">PHPExcel_Writer_Excel2007_WriterPart::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent IWriter object</dd> + <dt><b>__construct</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#method__construct">PHPExcel_Writer_Excel2007::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_Excel2007</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>allBorders</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallBorders">PHPExcel_Writer_Excel2007_Style::allBorders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all borders</dd> + <dt><b>allConditionalStyles</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallConditionalStyles">PHPExcel_Writer_Excel2007_Style::allConditionalStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all conditional styles</dd> + <dt><b>allDrawings</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#methodallDrawings">PHPExcel_Writer_Excel2007_Drawing::allDrawings()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all drawings</dd> + <dt><b>allFills</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallFills">PHPExcel_Writer_Excel2007_Style::allFills()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all fills</dd> + <dt><b>allFonts</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallFonts">PHPExcel_Writer_Excel2007_Style::allFonts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all fonts</dd> + <dt><b>allNumberFormats</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallNumberFormats">PHPExcel_Writer_Excel2007_Style::allNumberFormats()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all number formats</dd> + <dt><b>allStyles</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodallStyles">PHPExcel_Writer_Excel2007_Style::allStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get an array of all styles</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>createStringTable</b></dt> + <dd>in file StringTable.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodcreateStringTable">PHPExcel_Writer_Excel2007_StringTable::createStringTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create worksheet stringtable</dd> + <dt><b>Chart.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html">Chart.php</a></dd> + <dt><b>Comments.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html">Comments.php</a></dd> + <dt><b>ContentTypes.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html">ContentTypes.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <hr /> + <a name="d"></a> + <div> + <h2>d</h2> + <dl> + <dt><b>DocProps.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html">DocProps.php</a></dd> + <dt><b>Drawing.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html">Drawing.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>Excel2007.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html">Excel2007.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>flipStringTable</b></dt> + <dd>in file StringTable.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodflipStringTable">PHPExcel_Writer_Excel2007_StringTable::flipStringTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Flip string table (for index searching)</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getBordersHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetBordersHashTable">PHPExcel_Writer_Excel2007::getBordersHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Style_Borders HashTable</dd> + <dt><b>getDiskCachingDirectory</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetDiskCachingDirectory">PHPExcel_Writer_Excel2007::getDiskCachingDirectory()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get disk caching directory</dd> + <dt><b>getDrawingHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetDrawingHashTable">PHPExcel_Writer_Excel2007::getDrawingHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Worksheet_BaseDrawing HashTable</dd> + <dt><b>getFillHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetFillHashTable">PHPExcel_Writer_Excel2007::getFillHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Style_Fill HashTable</dd> + <dt><b>getFontHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetFontHashTable">PHPExcel_Writer_Excel2007::getFontHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Style_Font HashTable</dd> + <dt><b>getIncludeCharts</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetIncludeCharts">PHPExcel_Writer_Excel2007::getIncludeCharts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write charts in workbook? If this is true, then the Writer will write definitions for any charts that exist in the PHPExcel object.</dd> + <dt><b>getNumFmtHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetNumFmtHashTable">PHPExcel_Writer_Excel2007::getNumFmtHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Style_NumberFormat HashTable</dd> + <dt><b>getOffice2003Compatibility</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetOffice2003Compatibility">PHPExcel_Writer_Excel2007::getOffice2003Compatibility()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Office2003 compatibility</dd> + <dt><b>getParentWriter</b></dt> + <dd>in file WriterPart.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodgetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::getParentWriter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get parent IWriter object</dd> + <dt><b>getPHPExcel</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetPHPExcel">PHPExcel_Writer_Excel2007::getPHPExcel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel object</dd> + <dt><b>getPreCalculateFormulas</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetPreCalculateFormulas">PHPExcel_Writer_Excel2007::getPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Pre-Calculate Formulas</dd> + <dt><b>getStringTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetStringTable">PHPExcel_Writer_Excel2007::getStringTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get string table</dd> + <dt><b>getStylesConditionalHashTable</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetStylesConditionalHashTable">PHPExcel_Writer_Excel2007::getStylesConditionalHashTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get PHPExcel_Style_Conditional HashTable</dd> + <dt><b>getUseDiskCaching</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetUseDiskCaching">PHPExcel_Writer_Excel2007::getUseDiskCaching()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get use disk caching where possible?</dd> + <dt><b>getWriterPart</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodgetWriterPart">PHPExcel_Writer_Excel2007::getWriterPart()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get writer part</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>PHPExcel_Writer_Excel2007</b></dt> + <dd>in file Excel2007.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007</dd> + <dt><b>PHPExcel_Writer_Excel2007_Chart</b></dt> + <dd>in file Chart.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Chart</dd> + <dt><b>PHPExcel_Writer_Excel2007_Comments</b></dt> + <dd>in file Comments.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Comments</dd> + <dt><b>PHPExcel_Writer_Excel2007_ContentTypes</b></dt> + <dd>in file ContentTypes.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_ContentTypes</dd> + <dt><b>PHPExcel_Writer_Excel2007_DocProps</b></dt> + <dd>in file DocProps.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_DocProps</dd> + <dt><b>PHPExcel_Writer_Excel2007_Drawing</b></dt> + <dd>in file Drawing.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Drawing</dd> + <dt><b>PHPExcel_Writer_Excel2007_Rels</b></dt> + <dd>in file Rels.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Rels</dd> + <dt><b>PHPExcel_Writer_Excel2007_StringTable</b></dt> + <dd>in file StringTable.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_StringTable</dd> + <dt><b>PHPExcel_Writer_Excel2007_Style</b></dt> + <dd>in file Style.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Style</dd> + <dt><b>PHPExcel_Writer_Excel2007_Theme</b></dt> + <dd>in file Theme.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_DocProps</dd> + <dt><b>PHPExcel_Writer_Excel2007_Workbook</b></dt> + <dd>in file Workbook.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Workbook</dd> + <dt><b>PHPExcel_Writer_Excel2007_Worksheet</b></dt> + <dd>in file Worksheet.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_Worksheet</dd> + <dt><b>PHPExcel_Writer_Excel2007_WriterPart</b></dt> + <dd>in file WriterPart.php, class <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel2007_WriterPart</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>Rels.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html">Rels.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>StringTable.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html">StringTable.php</a></dd> + <dt><b>Style.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html">Style.php</a></dd> + <dt><b>save</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsave">PHPExcel_Writer_Excel2007::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>setIncludeCharts</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetIncludeCharts">PHPExcel_Writer_Excel2007::setIncludeCharts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set write charts in workbook Set to true, to advise the Writer to include any charts that exist in the PHPExcel object.</dd> + <dt><b>setOffice2003Compatibility</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetOffice2003Compatibility">PHPExcel_Writer_Excel2007::setOffice2003Compatibility()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Pre-Calculate Formulas</dd> + <dt><b>setParentWriter</b></dt> + <dd>in file WriterPart.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html#methodsetParentWriter">PHPExcel_Writer_Excel2007_WriterPart::setParentWriter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set parent IWriter object</dd> + <dt><b>setPHPExcel</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetPHPExcel">PHPExcel_Writer_Excel2007::setPHPExcel()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set PHPExcel object</dd> + <dt><b>setPreCalculateFormulas</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetPreCalculateFormulas">PHPExcel_Writer_Excel2007::setPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Pre-Calculate Formulas</dd> + <dt><b>setUseDiskCaching</b></dt> + <dd>in file Excel2007.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html#methodsetUseDiskCaching">PHPExcel_Writer_Excel2007::setUseDiskCaching()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set use disk caching where possible?</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>Theme.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html">Theme.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <hr /> + <a name="w"></a> + <div> + <h2>w</h2> + <dl> + <dt><b>Workbook.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html">Workbook.php</a></dd> + <dt><b>Worksheet.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html">Worksheet.php</a></dd> + <dt><b>WriterPart.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html">WriterPart.php</a></dd> + <dt><b>writeChart</b></dt> + <dd>in file Chart.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html#methodwriteChart">PHPExcel_Writer_Excel2007_Chart::writeChart()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write charts to XML format</dd> + <dt><b>writeComments</b></dt> + <dd>in file Comments.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#methodwriteComments">PHPExcel_Writer_Excel2007_Comments::writeComments()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write comments to XML format</dd> + <dt><b>writeContentTypes</b></dt> + <dd>in file ContentTypes.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html#methodwriteContentTypes">PHPExcel_Writer_Excel2007_ContentTypes::writeContentTypes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write content types to XML format</dd> + <dt><b>writeDocPropsApp</b></dt> + <dd>in file DocProps.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html#methodwriteDocPropsApp">PHPExcel_Writer_Excel2007_DocProps::writeDocPropsApp()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write docProps/app.xml to XML format</dd> + <dt><b>writeDocPropsCore</b></dt> + <dd>in file DocProps.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html#methodwriteDocPropsCore">PHPExcel_Writer_Excel2007_DocProps::writeDocPropsCore()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write docProps/core.xml to XML format</dd> + <dt><b>writeDocPropsCustom</b></dt> + <dd>in file DocProps.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html#methodwriteDocPropsCustom">PHPExcel_Writer_Excel2007_DocProps::writeDocPropsCustom()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write docProps/custom.xml to XML format</dd> + <dt><b>writeDrawingRelationships</b></dt> + <dd>in file Rels.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteDrawingRelationships">PHPExcel_Writer_Excel2007_Rels::writeDrawingRelationships()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write drawing relationships to XML format</dd> + <dt><b>writeDrawings</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#methodwriteDrawings">PHPExcel_Writer_Excel2007_Drawing::writeDrawings()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write drawings to XML format</dd> + <dt><b>writeHeaderFooterDrawingRelationships</b></dt> + <dd>in file Rels.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteHeaderFooterDrawingRelationships">PHPExcel_Writer_Excel2007_Rels::writeHeaderFooterDrawingRelationships()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write header/footer drawing relationships to XML format</dd> + <dt><b>writeRelationships</b></dt> + <dd>in file Rels.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteRelationships">PHPExcel_Writer_Excel2007_Rels::writeRelationships()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write relationships to XML format</dd> + <dt><b>writeRichText</b></dt> + <dd>in file StringTable.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodwriteRichText">PHPExcel_Writer_Excel2007_StringTable::writeRichText()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write Rich Text</dd> + <dt><b>writeRichTextForCharts</b></dt> + <dd>in file StringTable.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodwriteRichTextForCharts">PHPExcel_Writer_Excel2007_StringTable::writeRichTextForCharts()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write Rich Text</dd> + <dt><b>writeStringTable</b></dt> + <dd>in file StringTable.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html#methodwriteStringTable">PHPExcel_Writer_Excel2007_StringTable::writeStringTable()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write string table to XML format</dd> + <dt><b>writeStyles</b></dt> + <dd>in file Style.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html#methodwriteStyles">PHPExcel_Writer_Excel2007_Style::writeStyles()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write styles to XML format</dd> + <dt><b>writeTheme</b></dt> + <dd>in file Theme.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html#methodwriteTheme">PHPExcel_Writer_Excel2007_Theme::writeTheme()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write theme to XML format</dd> + <dt><b>writeVMLComments</b></dt> + <dd>in file Comments.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html#methodwriteVMLComments">PHPExcel_Writer_Excel2007_Comments::writeVMLComments()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write VML comments to XML format</dd> + <dt><b>writeVMLHeaderFooterImages</b></dt> + <dd>in file Drawing.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html#methodwriteVMLHeaderFooterImages">PHPExcel_Writer_Excel2007_Drawing::writeVMLHeaderFooterImages()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write VML header/footer images to XML format</dd> + <dt><b>writeWorkbook</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html#methodwriteWorkbook">PHPExcel_Writer_Excel2007_Workbook::writeWorkbook()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write workbook to XML format</dd> + <dt><b>writeWorkbookRelationships</b></dt> + <dd>in file Rels.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteWorkbookRelationships">PHPExcel_Writer_Excel2007_Rels::writeWorkbookRelationships()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write workbook relationships to XML format</dd> + <dt><b>writeWorksheet</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html#methodwriteWorksheet">PHPExcel_Writer_Excel2007_Worksheet::writeWorksheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write worksheet to XML format</dd> + <dt><b>writeWorksheetRelationships</b></dt> + <dd>in file Rels.php, method <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html#methodwriteWorksheetRelationships">PHPExcel_Writer_Excel2007_Rels::writeWorksheetRelationships()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Write worksheet relationships to XML format</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel2007.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Writer_Excel5.html b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Writer_Excel5.html new file mode 100644 index 0000000..8dc8f9c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/elementindex_PHPExcel_Writer_Excel5.html @@ -0,0 +1,430 @@ +<html> +<head> +<title>Package PHPExcel_Writer_Excel5 Element Index</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Element index for package PHPExcel_Writer_Excel5</h1> + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#a">a</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#b">b</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#c">c</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#e">e</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#f">f</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#g">g</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#i">i</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#p">p</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#r">r</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#s">s</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#t">t</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#w">w</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#x">x</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html#_">_</a> ] + + <hr /> + <a name="_"></a> + <div> + <h2>_</h2> + <dl> + <dt><b>$_active_pane</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_active_pane">PHPExcel_Writer_Excel5_Worksheet::$_active_pane</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The active pane for the worksheet</dd> + <dt><b>$_bg_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_bg_color">PHPExcel_Writer_Excel5_Xf::$_bg_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The cell's background color.</dd> + <dt><b>$_biffsize</b></dt> + <dd>in file Workbook.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_biffsize">PHPExcel_Writer_Excel5_Workbook::$_biffsize</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The BIFF file size for the workbook.</dd> + <dt><b>$_bottom_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_bottom_color">PHPExcel_Writer_Excel5_Xf::$_bottom_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Color of the bottom border of the cell.</dd> + <dt><b>$_codepage</b></dt> + <dd>in file Workbook.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_codepage">PHPExcel_Writer_Excel5_Workbook::$_codepage</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The codepage indicates the text encoding used for strings</dd> + <dt><b>$_colinfo</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_colinfo">PHPExcel_Writer_Excel5_Worksheet::$_colinfo</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array containing format information for columns</dd> + <dt><b>$_country_code</b></dt> + <dd>in file Workbook.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_country_code">PHPExcel_Writer_Excel5_Workbook::$_country_code</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The country code used for localization</dd> + <dt><b>$_current_char</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_current_char">PHPExcel_Writer_Excel5_Parser::$_current_char</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The index of the character we are currently looking at</dd> + <dt><b>$_current_token</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_current_token">PHPExcel_Writer_Excel5_Parser::$_current_token</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The token we are working on.</dd> + <dt><b>$_data</b></dt> + <dd>in file BIFFwriter.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_data">PHPExcel_Writer_Excel5_BIFFwriter::$_data</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The string containing the data of the BIFF stream</dd> + <dt><b>$_datasize</b></dt> + <dd>in file BIFFwriter.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_datasize">PHPExcel_Writer_Excel5_BIFFwriter::$_datasize</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The size of the data in bytes. Should be the same as strlen($this-&gt;_data)</dd> + <dt><b>$_ext_sheets</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_ext_sheets">PHPExcel_Writer_Excel5_Parser::$_ext_sheets</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array of external sheets</dd> + <dt><b>$_fg_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_fg_color">PHPExcel_Writer_Excel5_Xf::$_fg_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The cell's foreground color.</dd> + <dt><b>$_fntHashIndex</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_fntHashIndex">PHPExcel_Writer_Excel5_Worksheet::$_fntHashIndex</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array of font hashes associated to FONT records index</dd> + <dt><b>$_formula</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_formula">PHPExcel_Writer_Excel5_Parser::$_formula</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The formula to parse</dd> + <dt><b>$_left_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_left_color">PHPExcel_Writer_Excel5_Xf::$_left_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Color of the left border of the cell.</dd> + <dt><b>$_limit</b></dt> + <dd>in file BIFFwriter.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#var$_limit">PHPExcel_Writer_Excel5_BIFFwriter::$_limit</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The maximum length for a BIFF record (excluding record header and length field). See _addContinue()</dd> + <dt><b>$_lookahead</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_lookahead">PHPExcel_Writer_Excel5_Parser::$_lookahead</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The character ahead of the current char</dd> + <dt><b>$_numberFormatIndex</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_numberFormatIndex">PHPExcel_Writer_Excel5_Xf::$_numberFormatIndex</a><br>&nbsp;&nbsp;&nbsp;&nbsp;An index (2 bytes) to a FORMAT record (number format).</dd> + <dt><b>$_outline_below</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_below">PHPExcel_Writer_Excel5_Worksheet::$_outline_below</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Whether to have outline summary below.</dd> + <dt><b>$_outline_on</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_on">PHPExcel_Writer_Excel5_Worksheet::$_outline_on</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Whether to use outline.</dd> + <dt><b>$_outline_right</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_right">PHPExcel_Writer_Excel5_Worksheet::$_outline_right</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Whether to have outline summary at the right.</dd> + <dt><b>$_outline_style</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_outline_style">PHPExcel_Writer_Excel5_Worksheet::$_outline_style</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Auto outline styles.</dd> + <dt><b>$_palette</b></dt> + <dd>in file Workbook.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#var$_palette">PHPExcel_Writer_Excel5_Workbook::$_palette</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array containing the colour palette</dd> + <dt><b>$_parse_tree</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_parse_tree">PHPExcel_Writer_Excel5_Parser::$_parse_tree</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The parse tree to be generated</dd> + <dt><b>$_phpSheet</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_phpSheet">PHPExcel_Writer_Excel5_Worksheet::$_phpSheet</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sheet object</dd> + <dt><b>$_references</b></dt> + <dd>in file Parser.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#var$_references">PHPExcel_Writer_Excel5_Parser::$_references</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array of sheet references in the form of REF structures</dd> + <dt><b>$_right_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_right_color">PHPExcel_Writer_Excel5_Xf::$_right_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Color of the right border of the cell.</dd> + <dt><b>$_selection</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_selection">PHPExcel_Writer_Excel5_Worksheet::$_selection</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Array containing the selected area for the worksheet</dd> + <dt><b>$_str_table</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_str_table">PHPExcel_Writer_Excel5_Worksheet::$_str_table</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reference to the array containing all the unique strings in the workbook</dd> + <dt><b>$_str_total</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_str_total">PHPExcel_Writer_Excel5_Worksheet::$_str_total</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reference to the total number of strings in the workbook</dd> + <dt><b>$_str_unique</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_str_unique">PHPExcel_Writer_Excel5_Worksheet::$_str_unique</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Reference to the number of unique strings in the workbook</dd> + <dt><b>$_text_justlast</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_text_justlast">PHPExcel_Writer_Excel5_Xf::$_text_justlast</a><br>&nbsp;&nbsp;&nbsp;&nbsp;1 bit, apparently not used.</dd> + <dt><b>$_top_color</b></dt> + <dd>in file Xf.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#var$_top_color">PHPExcel_Writer_Excel5_Xf::$_top_color</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Color of the top border of the cell.</dd> + <dt><b>$_xls_strmax</b></dt> + <dd>in file Worksheet.php, variable <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#var$_xls_strmax">PHPExcel_Writer_Excel5_Worksheet::$_xls_strmax</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Maximum number of characters for a string (LABEL record in BIFF5)</dd> + <dt><b>_addFont</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#method_addFont">PHPExcel_Writer_Excel5_Workbook::_addFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a font to added fonts</dd> + <dt><b>__construct</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#method__construct">PHPExcel_Writer_Excel5_Workbook::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Class constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#method__construct">PHPExcel_Writer_Excel5_Xf::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#method__construct">PHPExcel_Writer_Excel5_Escher::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file Parser.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#method__construct">PHPExcel_Writer_Excel5_Parser::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The class constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#method__construct">PHPExcel_Writer_Excel5_Worksheet::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file BIFFwriter.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#method__construct">PHPExcel_Writer_Excel5_BIFFwriter::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd> + <dt><b>__construct</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#method__construct">PHPExcel_Writer_Excel5::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Create a new PHPExcel_Writer_Excel5</dd> + <dt><b>__construct</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html#method__construct">PHPExcel_Writer_Excel5_Font::__construct()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constructor</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="a"></a> + <div> + <h2>a</h2> + <dl> + <dt><b>addXfWriter</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodaddXfWriter">PHPExcel_Writer_Excel5_Workbook::addXfWriter()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add a new XF writer</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="b"></a> + <div> + <h2>b</h2> + <dl> + <dt><b>BIFFwriter.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html">BIFFwriter.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="c"></a> + <div> + <h2>c</h2> + <dl> + <dt><b>close</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodclose">PHPExcel_Writer_Excel5_Worksheet::close()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Add data to the beginning of the workbook (note the reverse order) and to the end of the workbook.</dd> + <dt><b>close</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#methodclose">PHPExcel_Writer_Excel5_Escher::close()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Process the object to be written</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="e"></a> + <div> + <h2>e</h2> + <dl> + <dt><b>Escher.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html">Escher.php</a></dd> + <dt><b>Excel5.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html">Excel5.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="f"></a> + <div> + <h2>f</h2> + <dl> + <dt><b>Font.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html">Font.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="g"></a> + <div> + <h2>g</h2> + <dl> + <dt><b>getByteOrder</b></dt> + <dd>in file BIFFwriter.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodgetByteOrder">PHPExcel_Writer_Excel5_BIFFwriter::getByteOrder()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Determine the byte order and store it as class data to avoid recalculating it for each call to new().</dd> + <dt><b>getData</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodgetData">PHPExcel_Writer_Excel5_Worksheet::getData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Retrieves data from memory in one chunk, or from disk in $buffer sized chunks.</dd> + <dt><b>getEscher</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodgetEscher">PHPExcel_Writer_Excel5_Worksheet::getEscher()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Escher object</dd> + <dt><b>getEscher</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodgetEscher">PHPExcel_Writer_Excel5_Workbook::getEscher()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Escher object</dd> + <dt><b>getPreCalculateFormulas</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodgetPreCalculateFormulas">PHPExcel_Writer_Excel5::getPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get Pre-Calculate Formulas</dd> + <dt><b>getSpOffsets</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#methodgetSpOffsets">PHPExcel_Writer_Excel5_Escher::getSpOffsets()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets the shape offsets</dd> + <dt><b>getSpTypes</b></dt> + <dd>in file Escher.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html#methodgetSpTypes">PHPExcel_Writer_Excel5_Escher::getSpTypes()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Gets the shape types</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="i"></a> + <div> + <h2>i</h2> + <dl> + <dt><b>insertBitmap</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodinsertBitmap">PHPExcel_Writer_Excel5_Worksheet::insertBitmap()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Insert a 24bit bitmap image in a worksheet.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="p"></a> + <div> + <h2>p</h2> + <dl> + <dt><b>parse</b></dt> + <dd>in file Parser.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#methodparse">PHPExcel_Writer_Excel5_Parser::parse()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;The parsing method. It parses a formula.</dd> + <dt><b>Parser.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html">Parser.php</a></dd> + <dt><b>PHPExcel_Writer_Excel5</b></dt> + <dd>in file Excel5.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5</dd> + <dt><b>PHPExcel_Writer_Excel5_BIFFwriter</b></dt> + <dd>in file BIFFwriter.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_BIFFwriter</dd> + <dt><b>PHPExcel_Writer_Excel5_Escher</b></dt> + <dd>in file Escher.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Shared_Escher_DggContainer_BstoreContainer</dd> + <dt><b>PHPExcel_Writer_Excel5_Font</b></dt> + <dd>in file Font.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_Font</dd> + <dt><b>PHPExcel_Writer_Excel5_Parser</b></dt> + <dd>in file Parser.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_Parser</dd> + <dt><b>PHPExcel_Writer_Excel5_Workbook</b></dt> + <dd>in file Workbook.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_Workbook</dd> + <dt><b>PHPExcel_Writer_Excel5_Worksheet</b></dt> + <dd>in file Worksheet.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_Worksheet</dd> + <dt><b>PHPExcel_Writer_Excel5_Xf</b></dt> + <dd>in file Xf.php, class <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br>&nbsp;&nbsp;&nbsp;&nbsp;PHPExcel_Writer_Excel5_Xf</dd> + <dt><b>printRowColHeaders</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodprintRowColHeaders">PHPExcel_Writer_Excel5_Worksheet::printRowColHeaders()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the option to print the row and column headers on the printed page.</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="r"></a> + <div> + <h2>r</h2> + <dl> + <dt><b>REGEX_SHEET_TITLE_QUOTED</b></dt> + <dd>in file Parser.php, class constant <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#constREGEX_SHEET_TITLE_QUOTED">PHPExcel_Writer_Excel5_Parser::REGEX_SHEET_TITLE_QUOTED</a></dd> + <dt><b>REGEX_SHEET_TITLE_UNQUOTED</b></dt> + <dd>in file Parser.php, class constant <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#constREGEX_SHEET_TITLE_UNQUOTED">PHPExcel_Writer_Excel5_Parser::REGEX_SHEET_TITLE_UNQUOTED</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Constants</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="s"></a> + <div> + <h2>s</h2> + <dl> + <dt><b>save</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodsave">PHPExcel_Writer_Excel5::save()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Save PHPExcel to file</dd> + <dt><b>setBgColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetBgColor">PHPExcel_Writer_Excel5_Xf::setBgColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's background color</dd> + <dt><b>setBottomColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetBottomColor">PHPExcel_Writer_Excel5_Xf::setBottomColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's bottom border color</dd> + <dt><b>setColorIndex</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html#methodsetColorIndex">PHPExcel_Writer_Excel5_Font::setColorIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the color index</dd> + <dt><b>setDiagColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetDiagColor">PHPExcel_Writer_Excel5_Xf::setDiagColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's diagonal border color</dd> + <dt><b>setEscher</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodsetEscher">PHPExcel_Writer_Excel5_Workbook::setEscher()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Escher object</dd> + <dt><b>setEscher</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodsetEscher">PHPExcel_Writer_Excel5_Worksheet::setEscher()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Escher object</dd> + <dt><b>setExtSheet</b></dt> + <dd>in file Parser.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#methodsetExtSheet">PHPExcel_Writer_Excel5_Parser::setExtSheet()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;This method is used to update the array of sheet names. It is called by the addWorksheet() method of the PHPExcel_Writer_Excel5_Workbook class.</dd> + <dt><b>setFgColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetFgColor">PHPExcel_Writer_Excel5_Xf::setFgColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's foreground color</dd> + <dt><b>setFontIndex</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetFontIndex">PHPExcel_Writer_Excel5_Xf::setFontIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set the font index.</dd> + <dt><b>setIsStyleXf</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetIsStyleXf">PHPExcel_Writer_Excel5_Xf::setIsStyleXf()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Is this a style XF ?</dd> + <dt><b>setLeftColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetLeftColor">PHPExcel_Writer_Excel5_Xf::setLeftColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's left border color</dd> + <dt><b>setNumberFormatIndex</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetNumberFormatIndex">PHPExcel_Writer_Excel5_Xf::setNumberFormatIndex()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the index to the number format record It can be date, time, currency, etc...</dd> + <dt><b>setOutline</b></dt> + <dd>in file Worksheet.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html#methodsetOutline">PHPExcel_Writer_Excel5_Worksheet::setOutline()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;This method sets the properties for outlining and grouping. The defaults correspond to Excel's defaults.</dd> + <dt><b>setPreCalculateFormulas</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodsetPreCalculateFormulas">PHPExcel_Writer_Excel5::setPreCalculateFormulas()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set Pre-Calculate Formulas</dd> + <dt><b>setRightColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetRightColor">PHPExcel_Writer_Excel5_Xf::setRightColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's right border color</dd> + <dt><b>setTempDir</b></dt> + <dd>in file Excel5.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html#methodsetTempDir">PHPExcel_Writer_Excel5::setTempDir()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Set temporary storage directory</dd> + <dt><b>setTopColor</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodsetTopColor">PHPExcel_Writer_Excel5_Xf::setTopColor()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Sets the cell's top border color</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="t"></a> + <div> + <h2>t</h2> + <dl> + <dt><b>toReversePolish</b></dt> + <dd>in file Parser.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html#methodtoReversePolish">PHPExcel_Writer_Excel5_Parser::toReversePolish()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Builds a string containing the tree in reverse polish notation (What you would use in a HP calculator stack).</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="w"></a> + <div> + <h2>w</h2> + <dl> + <dt><b>Workbook.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html">Workbook.php</a></dd> + <dt><b>Worksheet.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html">Worksheet.php</a></dd> + <dt><b>writeData</b></dt> + <dd>in file BIFFwriter.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodwriteData">PHPExcel_Writer_Excel5_BIFFwriter::writeData()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;General storage function like _append, but returns string instead of modifying $this-&gt;_data</dd> + <dt><b>writeEof</b></dt> + <dd>in file BIFFwriter.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html#methodwriteEof">PHPExcel_Writer_Excel5_BIFFwriter::writeEof()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Writes Excel EOF record to indicate the end of a BIFF stream.</dd> + <dt><b>writeFont</b></dt> + <dd>in file Font.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html#methodwriteFont">PHPExcel_Writer_Excel5_Font::writeFont()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Get font record data</dd> + <dt><b>writeWorkbook</b></dt> + <dd>in file Workbook.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html#methodwriteWorkbook">PHPExcel_Writer_Excel5_Workbook::writeWorkbook()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Assemble worksheets into a workbook and send the BIFF data to an OLE storage.</dd> + <dt><b>writeXf</b></dt> + <dd>in file Xf.php, method <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html#methodwriteXf">PHPExcel_Writer_Excel5_Xf::writeXf()</a><br>&nbsp;&nbsp;&nbsp;&nbsp;Generate an Excel BIFF XF record (style or cell).</dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <hr /> + <a name="x"></a> + <div> + <h2>x</h2> + <dl> + <dt><b>Xf.php</b></dt> + <dd>procedural page <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html">Xf.php</a></dd> + </dl> + </div> + <a href="elementindex_PHPExcel_Writer_Excel5.html#top">top</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:04 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/errors.html b/site/config/PHPExcel/Documentation/API/errors.html new file mode 100644 index 0000000..4cbffd2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/errors.html @@ -0,0 +1,72 @@ +<html> +<head> +<title>phpDocumentor Parser Errors and Warnings</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a href="#Post-parsing">Post-parsing</a><br> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/index.html b/site/config/PHPExcel/Documentation/API/index.html new file mode 100644 index 0000000..1585dab --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/index.html @@ -0,0 +1,143 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="PHPExcel/PclZip.html">PclZip</a><br /> + <a href="PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_JAMA.html b/site/config/PHPExcel/Documentation/API/li_JAMA.html new file mode 100644 index 0000000..3b91aab --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_JAMA.html @@ -0,0 +1,111 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">JAMA</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_JAMA.html" class="menu">class tree: JAMA</a> ] + [ <a href="elementindex_JAMA.html" class="menu">index: JAMA</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="JAMA/_PHPExcel---Shared---JAMA---examples---benchmark.php.html"> benchmark.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---CholeskyDecomposition.php.html"> CholeskyDecomposition.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---EigenvalueDecomposition.php.html"> EigenvalueDecomposition.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Error.php.html"> Error.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---LUDecomposition.php.html"> LUDecomposition.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---examples---MagicSquareExample.php.html"> MagicSquareExample.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---utils---Maths.php.html"> Maths.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---Matrix.php.html"> Matrix.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---QRDecomposition.php.html"> QRDecomposition.php + </a><br> + <a href="JAMA/_PHPExcel---Shared---JAMA---SingularValueDecomposition.php.html"> SingularValueDecomposition.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="JAMA/Benchmark.html">Benchmark</a><br /> + <a href="JAMA/CholeskyDecomposition.html">CholeskyDecomposition</a><br /> + <a href="JAMA/EigenvalueDecomposition.html">EigenvalueDecomposition</a><br /> + <a href="JAMA/MagicSquareExample.html">MagicSquareExample</a><br /> + <a href="JAMA/PHPExcel_Shared_JAMA_LUDecomposition.html">PHPExcel_Shared_JAMA_LUDecomposition</a><br /> + <a href="JAMA/PHPExcel_Shared_JAMA_Matrix.html">PHPExcel_Shared_JAMA_Matrix</a><br /> + <a href="JAMA/PHPExcel_Shared_JAMA_QRDecomposition.html">PHPExcel_Shared_JAMA_QRDecomposition</a><br /> + <a href="JAMA/SingularValueDecomposition.html">SingularValueDecomposition</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to JAMA!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_Math_Stats.html b/site/config/PHPExcel/Documentation/API/li_Math_Stats.html new file mode 100644 index 0000000..c84228f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_Math_Stats.html @@ -0,0 +1,86 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">Math_Stats</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_Math_Stats.html" class="menu">class tree: Math_Stats</a> ] + [ <a href="elementindex_Math_Stats.html" class="menu">index: Math_Stats</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="Math_Stats/_PHPExcel---Shared---JAMA---examples---Stats.php.html"> Stats.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="Math_Stats/Base.html">Base</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to Math_Stats!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel.html new file mode 100644 index 0000000..1585dab --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel.html @@ -0,0 +1,143 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel.html" class="menu">class tree: PHPExcel</a> ] + [ <a href="elementindex_PHPExcel.html" class="menu">index: PHPExcel</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel/_PHPExcel---Autoloader.php.html"> Autoloader.php + </a><br> + <a href="PHPExcel/_PHPExcel---Comment.php.html"> Comment.php + </a><br> + <a href="PHPExcel/_PHPExcel---DocumentProperties.php.html"> DocumentProperties.php + </a><br> + <a href="PHPExcel/_PHPExcel---DocumentSecurity.php.html"> DocumentSecurity.php + </a><br> + <a href="PHPExcel/_PHPExcel---Exception.php.html"> Exception.php + </a><br> + <a href="PHPExcel/_PHPExcel---HashTable.php.html"> HashTable.php + </a><br> + <a href="PHPExcel/_PHPExcel---IComparable.php.html"> IComparable.php + </a><br> + <a href="PHPExcel/_PHPExcel---IOFactory.php.html"> IOFactory.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation.php.html"> LagrangeInterpolation.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LagrangeInterpolation2.php.html"> LagrangeInterpolation2.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LevenbergMarquardt.php.html"> LevenbergMarquardt.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---LMQuadTest.php.html"> LMQuadTest.php + </a><br> + <a href="PHPExcel/_PHPExcel---NamedRange.php.html"> NamedRange.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---PCLZip---pclzip.lib.php.html"> pclzip.lib.php + </a><br> + <a href="PHPExcel/_PHPExcel.php.html"> PHPExcel.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---polyfit.php.html"> polyfit.php + </a><br> + <a href="PHPExcel/_PHPExcel---ReferenceHelper.php.html"> ReferenceHelper.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---tests---TestMatrix.php.html"> TestMatrix.php + </a><br> + <a href="PHPExcel/_PHPExcel---Shared---JAMA---examples---tile.php.html"> tile.php + </a><br> + <a href="PHPExcel/_PHPExcel---WorksheetIterator.php.html"> WorksheetIterator.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel/PHPExcel_IComparable.html">PHPExcel_IComparable</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel/LagrangeInterpolation.html">LagrangeInterpolation</a><br /> + <a href="PHPExcel/LevenbergMarquardt.html">LevenbergMarquardt</a><br /> + <a href="PHPExcel/LMQuadTest.html">LMQuadTest</a><br /> + <a href="PHPExcel/PclZip.html">PclZip</a><br /> + <a href="PHPExcel/PHPExcel.html">PHPExcel</a><br /> + <a href="PHPExcel/PHPExcel_Autoloader.html">PHPExcel_Autoloader</a><br /> + <a href="PHPExcel/PHPExcel_Comment.html">PHPExcel_Comment</a><br /> + <a href="PHPExcel/PHPExcel_DocumentProperties.html">PHPExcel_DocumentProperties</a><br /> + <a href="PHPExcel/PHPExcel_DocumentSecurity.html">PHPExcel_DocumentSecurity</a><br /> + <a href="PHPExcel/PHPExcel_Exception.html">PHPExcel_Exception</a><br /> + <a href="PHPExcel/PHPExcel_HashTable.html">PHPExcel_HashTable</a><br /> + <a href="PHPExcel/PHPExcel_IOFactory.html">PHPExcel_IOFactory</a><br /> + <a href="PHPExcel/PHPExcel_NamedRange.html">PHPExcel_NamedRange</a><br /> + <a href="PHPExcel/PHPExcel_ReferenceHelper.html">PHPExcel_ReferenceHelper</a><br /> + <a href="PHPExcel/PHPExcel_WorksheetIterator.html">PHPExcel_WorksheetIterator</a><br /> + <a href="PHPExcel/TestMatrix.html">TestMatrix</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_CachedObjectStorage.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_CachedObjectStorage.html new file mode 100644 index 0000000..2e9cfe2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_CachedObjectStorage.html @@ -0,0 +1,128 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_CachedObjectStorage</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_CachedObjectStorage.html" class="menu">class tree: PHPExcel_CachedObjectStorage</a> ] + [ <a href="elementindex_PHPExcel_CachedObjectStorage.html" class="menu">index: PHPExcel_CachedObjectStorage</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---APC.php.html"> APC.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---CacheBase.php.html"> CacheBase.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorageFactory.php.html"> CachedObjectStorageFactory.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---DiscISAM.php.html"> DiscISAM.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---ICache.php.html"> ICache.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Igbinary.php.html"> Igbinary.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memcache.php.html"> Memcache.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Memory.php.html"> Memory.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemoryGZip.php.html"> MemoryGZip.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---MemorySerialized.php.html"> MemorySerialized.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---PHPTemp.php.html"> PHPTemp.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite.php.html"> SQLite.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---SQLite3.php.html"> SQLite3.php + </a><br> + <a href="PHPExcel_CachedObjectStorage/_PHPExcel---CachedObjectStorage---Wincache.php.html"> Wincache.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_ICache.html">PHPExcel_CachedObjectStorage_ICache</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorageFactory.html">PHPExcel_CachedObjectStorageFactory</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_APC.html">PHPExcel_CachedObjectStorage_APC</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_CacheBase.html">PHPExcel_CachedObjectStorage_CacheBase</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_DiscISAM.html">PHPExcel_CachedObjectStorage_DiscISAM</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Igbinary.html">PHPExcel_CachedObjectStorage_Igbinary</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memcache.html">PHPExcel_CachedObjectStorage_Memcache</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Memory.html">PHPExcel_CachedObjectStorage_Memory</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemoryGZip.html">PHPExcel_CachedObjectStorage_MemoryGZip</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_MemorySerialized.html">PHPExcel_CachedObjectStorage_MemorySerialized</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_PHPTemp.html">PHPExcel_CachedObjectStorage_PHPTemp</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite.html">PHPExcel_CachedObjectStorage_SQLite</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_SQLite3.html">PHPExcel_CachedObjectStorage_SQLite3</a><br /> + <a href="PHPExcel_CachedObjectStorage/PHPExcel_CachedObjectStorage_Wincache.html">PHPExcel_CachedObjectStorage_Wincache</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_CachedObjectStorage!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Calculation.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Calculation.html new file mode 100644 index 0000000..a341947 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Calculation.html @@ -0,0 +1,134 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Calculation</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Calculation.html" class="menu">class tree: PHPExcel_Calculation</a> ] + [ <a href="elementindex_PHPExcel_Calculation.html" class="menu">index: PHPExcel_Calculation</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation.php.html"> Calculation.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Database.php.html"> Database.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---DateTime.php.html"> DateTime.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Engineering.php.html"> Engineering.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Exception.php.html"> Exception.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---ExceptionHandler.php.html"> ExceptionHandler.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Financial.php.html"> Financial.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---FormulaParser.php.html"> FormulaParser.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---FormulaToken.php.html"> FormulaToken.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Function.php.html"> Function.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Functions.php.html"> Functions.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Logical.php.html"> Logical.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---LookupRef.php.html"> LookupRef.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---MathTrig.php.html"> MathTrig.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Token---Stack.php.html"> Stack.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---Statistical.php.html"> Statistical.php + </a><br> + <a href="PHPExcel_Calculation/_PHPExcel---Calculation---TextData.php.html"> TextData.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Calculation/PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Database.html">PHPExcel_Calculation_Database</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_DateTime.html">PHPExcel_Calculation_DateTime</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Engineering.html">PHPExcel_Calculation_Engineering</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Exception.html">PHPExcel_Calculation_Exception</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_ExceptionHandler.html">PHPExcel_Calculation_ExceptionHandler</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Financial.html">PHPExcel_Calculation_Financial</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaParser.html">PHPExcel_Calculation_FormulaParser</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_FormulaToken.html">PHPExcel_Calculation_FormulaToken</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Function.html">PHPExcel_Calculation_Function</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Functions.html">PHPExcel_Calculation_Functions</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Logical.html">PHPExcel_Calculation_Logical</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html">PHPExcel_Calculation_LookupRef</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_MathTrig.html">PHPExcel_Calculation_MathTrig</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html">PHPExcel_Calculation_Statistical</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_TextData.html">PHPExcel_Calculation_TextData</a><br /> + <a href="PHPExcel_Calculation/PHPExcel_Calculation_Token_Stack.html">PHPExcel_Calculation_Token_Stack</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Calculation!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Cell.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Cell.html new file mode 100644 index 0000000..88b287a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Cell.html @@ -0,0 +1,107 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Cell</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Cell.html" class="menu">class tree: PHPExcel_Cell</a> ] + [ <a href="elementindex_PHPExcel_Cell.html" class="menu">index: PHPExcel_Cell</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Cell/_PHPExcel---Cell---AdvancedValueBinder.php.html"> AdvancedValueBinder.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell.php.html"> Cell.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell---DataType.php.html"> DataType.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell---DataValidation.php.html"> DataValidation.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell---DefaultValueBinder.php.html"> DefaultValueBinder.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell---Hyperlink.php.html"> Hyperlink.php + </a><br> + <a href="PHPExcel_Cell/_PHPExcel---Cell---IValueBinder.php.html"> IValueBinder.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel_Cell/PHPExcel_Cell_IValueBinder.html">PHPExcel_Cell_IValueBinder</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Cell/PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="PHPExcel_Cell/PHPExcel_Cell_AdvancedValueBinder.html">PHPExcel_Cell_AdvancedValueBinder</a><br /> + <a href="PHPExcel_Cell/PHPExcel_Cell_DataType.html">PHPExcel_Cell_DataType</a><br /> + <a href="PHPExcel_Cell/PHPExcel_Cell_DataValidation.html">PHPExcel_Cell_DataValidation</a><br /> + <a href="PHPExcel_Cell/PHPExcel_Cell_DefaultValueBinder.html">PHPExcel_Cell_DefaultValueBinder</a><br /> + <a href="PHPExcel_Cell/PHPExcel_Cell_Hyperlink.html">PHPExcel_Cell_Hyperlink</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Cell!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Chart.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Chart.html new file mode 100644 index 0000000..380af98 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Chart.html @@ -0,0 +1,109 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Chart.html" class="menu">class tree: PHPExcel_Chart</a> ] + [ <a href="elementindex_PHPExcel_Chart.html" class="menu">index: PHPExcel_Chart</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Chart/_PHPExcel---Chart.php.html"> Chart.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---DataSeries.php.html"> DataSeries.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---DataSeriesValues.php.html"> DataSeriesValues.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---Exception.php.html"> Exception.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---Renderer---jpgraph.php.html"> jpgraph.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---Layout.php.html"> Layout.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---Legend.php.html"> Legend.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---PlotArea.php.html"> PlotArea.php + </a><br> + <a href="PHPExcel_Chart/_PHPExcel---Chart---Title.php.html"> Title.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Chart/PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeries.html">PHPExcel_Chart_DataSeries</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_DataSeriesValues.html">PHPExcel_Chart_DataSeriesValues</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_Exception.html">PHPExcel_Chart_Exception</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_Layout.html">PHPExcel_Chart_Layout</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_Legend.html">PHPExcel_Chart_Legend</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_PlotArea.html">PHPExcel_Chart_PlotArea</a><br /> + <a href="PHPExcel_Chart/PHPExcel_Chart_Title.html">PHPExcel_Chart_Title</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Chart!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Chart_Renderer.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Chart_Renderer.html new file mode 100644 index 0000000..50eca4a --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Chart_Renderer.html @@ -0,0 +1,81 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Chart_Renderer</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Chart_Renderer.html" class="menu">class tree: PHPExcel_Chart_Renderer</a> ] + [ <a href="elementindex_PHPExcel_Chart_Renderer.html" class="menu">index: PHPExcel_Chart_Renderer</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Chart_Renderer/PHPExcel_Chart_Renderer_jpgraph.html">PHPExcel_Chart_Renderer_jpgraph</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Chart_Renderer!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Reader.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Reader.html new file mode 100644 index 0000000..95f779e --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Reader.html @@ -0,0 +1,116 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Reader.html" class="menu">class tree: PHPExcel_Reader</a> ] + [ <a href="elementindex_PHPExcel_Reader.html" class="menu">index: PHPExcel_Reader</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader/_PHPExcel---Reader---CSV.php.html"> CSV.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---DefaultReadFilter.php.html"> DefaultReadFilter.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---Excel2003XML.php.html"> Excel2003XML.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---Gnumeric.php.html"> Gnumeric.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---HTML.php.html"> HTML.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---IReader.php.html"> IReader.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---IReadFilter.php.html"> IReadFilter.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---OOCalc.php.html"> OOCalc.php + </a><br> + <a href="PHPExcel_Reader/_PHPExcel---Reader---SYLK.php.html"> SYLK.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader/PHPExcel_Reader_IReader.html">PHPExcel_Reader_IReader</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_IReadFilter.html">PHPExcel_Reader_IReadFilter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader/PHPExcel_Reader_CSV.html">PHPExcel_Reader_CSV</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_DefaultReadFilter.html">PHPExcel_Reader_DefaultReadFilter</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2003XML.html">PHPExcel_Reader_Excel2003XML</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_Gnumeric.html">PHPExcel_Reader_Gnumeric</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_HTML.html">PHPExcel_Reader_HTML</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_OOCalc.html">PHPExcel_Reader_OOCalc</a><br /> + <a href="PHPExcel_Reader/PHPExcel_Reader_SYLK.html">PHPExcel_Reader_SYLK</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Reader!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Reader_Excel2007.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Reader_Excel2007.html new file mode 100644 index 0000000..456592f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Reader_Excel2007.html @@ -0,0 +1,87 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Reader_Excel2007.html" class="menu">class tree: PHPExcel_Reader_Excel2007</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel2007.html" class="menu">index: PHPExcel_Reader_Excel2007</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader_Excel2007/_PHPExcel---Reader---Excel2007---Theme.php.html"> Theme.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Chart.html">PHPExcel_Reader_Excel2007_Chart</a><br /> + <a href="PHPExcel_Reader_Excel2007/PHPExcel_Reader_Excel2007_Theme.html">PHPExcel_Reader_Excel2007_Theme</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Reader_Excel2007!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Reader_Excel5.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Reader_Excel5.html new file mode 100644 index 0000000..6116bd7 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Reader_Excel5.html @@ -0,0 +1,91 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Reader_Excel5</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Reader_Excel5.html" class="menu">class tree: PHPExcel_Reader_Excel5</a> ] + [ <a href="elementindex_PHPExcel_Reader_Excel5.html" class="menu">index: PHPExcel_Reader_Excel5</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="PHPExcel_Reader_Excel5/_PHPExcel---Reader---Excel5.php.html"> Excel5.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="PHPExcel_Reader_Excel5/PHPExcel_Reader_Excel5_Escher.html">PHPExcel_Reader_Excel5_Escher</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Reader_Excel5!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_RichText.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_RichText.html new file mode 100644 index 0000000..a953fbf --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_RichText.html @@ -0,0 +1,98 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_RichText</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_RichText.html" class="menu">class tree: PHPExcel_RichText</a> ] + [ <a href="elementindex_PHPExcel_RichText.html" class="menu">index: PHPExcel_RichText</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_RichText/_PHPExcel---RichText---ITextElement.php.html"> ITextElement.php + </a><br> + <a href="PHPExcel_RichText/_PHPExcel---RichText.php.html"> RichText.php + </a><br> + <a href="PHPExcel_RichText/_PHPExcel---RichText---Run.php.html"> Run.php + </a><br> + <a href="PHPExcel_RichText/_PHPExcel---RichText---TextElement.php.html"> TextElement.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel_RichText/PHPExcel_RichText_ITextElement.html">PHPExcel_RichText_ITextElement</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_RichText/PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="PHPExcel_RichText/PHPExcel_RichText_Run.html">PHPExcel_RichText_Run</a><br /> + <a href="PHPExcel_RichText/PHPExcel_RichText_TextElement.html">PHPExcel_RichText_TextElement</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_RichText!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Settings.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Settings.html new file mode 100644 index 0000000..565de26 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Settings.html @@ -0,0 +1,86 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Settings</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Settings.html" class="menu">class tree: PHPExcel_Settings</a> ] + [ <a href="elementindex_PHPExcel_Settings.html" class="menu">index: PHPExcel_Settings</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Settings/_PHPExcel---Settings.php.html"> Settings.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Settings/PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Settings!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared.html new file mode 100644 index 0000000..3a560b6 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared.html @@ -0,0 +1,116 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared/_PHPExcel---Shared---CodePage.php.html"> CodePage.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---Date.php.html"> Date.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---Drawing.php.html"> Drawing.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---Excel5.php.html"> Excel5.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---File.php.html"> File.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---Font.php.html"> Font.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---OLERead.php.html"> OLERead.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---PasswordHasher.php.html"> PasswordHasher.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---String.php.html"> String.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---XMLWriter.php.html"> XMLWriter.php + </a><br> + <a href="PHPExcel_Shared/_PHPExcel---Shared---ZipStreamWrapper.php.html"> ZipStreamWrapper.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared/PHPExcel_Shared_CodePage.html">PHPExcel_Shared_CodePage</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_Date.html">PHPExcel_Shared_Date</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_Drawing.html">PHPExcel_Shared_Drawing</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_Excel5.html">PHPExcel_Shared_Excel5</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_File.html">PHPExcel_Shared_File</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_Font.html">PHPExcel_Shared_Font</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_OLERead.html">PHPExcel_Shared_OLERead</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_PasswordHasher.html">PHPExcel_Shared_PasswordHasher</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_String.html">PHPExcel_Shared_String</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_XMLWriter.html">PHPExcel_Shared_XMLWriter</a><br /> + <a href="PHPExcel_Shared/PHPExcel_Shared_ZipStreamWrapper.html">PHPExcel_Shared_ZipStreamWrapper</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Shared!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_Escher.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_Escher.html new file mode 100644 index 0000000..ca4a924 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_Escher.html @@ -0,0 +1,107 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Escher</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_Escher.html" class="menu">class tree: PHPExcel_Shared_Escher</a> ] + [ <a href="elementindex_PHPExcel_Shared_Escher.html" class="menu">index: PHPExcel_Shared_Escher</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE---Blip.php.html"> Blip.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer---BSE.php.html"> BSE.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer---BstoreContainer.php.html"> BstoreContainer.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer.php.html"> DgContainer.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DggContainer.php.html"> DggContainer.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher.php.html"> Escher.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer---SpContainer.php.html"> SpContainer.php + </a><br> + <a href="PHPExcel_Shared_Escher/_PHPExcel---Shared---Escher---DgContainer---SpgrContainer.php.html"> SpgrContainer.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer.html">PHPExcel_Shared_Escher_DgContainer</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer.html">PHPExcel_Shared_Escher_DgContainer_SpgrContainer_SpContainer</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer.html">PHPExcel_Shared_Escher_DggContainer</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE</a><br /> + <a href="PHPExcel_Shared_Escher/PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip.html">PHPExcel_Shared_Escher_DggContainer_BstoreContainer_BSE_Blip</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Shared_Escher!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_OLE.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_OLE.html new file mode 100644 index 0000000..0a8ed87 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_OLE.html @@ -0,0 +1,98 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_OLE</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_OLE.html" class="menu">class tree: PHPExcel_Shared_OLE</a> ] + [ <a href="elementindex_PHPExcel_Shared_OLE.html" class="menu">index: PHPExcel_Shared_OLE</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---ChainedBlockStream.php.html"> ChainedBlockStream.php + </a><br> + <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---File.php.html"> File.php + </a><br> + <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE.php.html"> OLE.php + </a><br> + <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS.php.html"> PPS.php + </a><br> + <a href="PHPExcel_Shared_OLE/_PHPExcel---Shared---OLE---PPS---Root.php.html"> Root.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_ChainedBlockStream.html">PHPExcel_Shared_OLE_ChainedBlockStream</a><br /> + <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS.html">PHPExcel_Shared_OLE_PPS</a><br /> + <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_File.html">PHPExcel_Shared_OLE_PPS_File</a><br /> + <a href="PHPExcel_Shared_OLE/PHPExcel_Shared_OLE_PPS_Root.html">PHPExcel_Shared_OLE_PPS_Root</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Shared_OLE!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_Trend.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_Trend.html new file mode 100644 index 0000000..3ca97e5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_Trend.html @@ -0,0 +1,104 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_Trend</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_Trend.html" class="menu">class tree: PHPExcel_Shared_Trend</a> ] + [ <a href="elementindex_PHPExcel_Shared_Trend.html" class="menu">index: PHPExcel_Shared_Trend</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---bestFitClass.php.html"> bestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---exponentialBestFitClass.php.html"> exponentialBestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---linearBestFitClass.php.html"> linearBestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---logarithmicBestFitClass.php.html"> logarithmicBestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---polynomialBestFitClass.php.html"> polynomialBestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---powerBestFitClass.php.html"> powerBestFitClass.php + </a><br> + <a href="PHPExcel_Shared_Trend/_PHPExcel---Shared---trend---trendClass.php.html"> trendClass.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_Trend/PHPExcel_Best_Fit.html">PHPExcel_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/PHPExcel_Exponential_Best_Fit.html">PHPExcel_Exponential_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/PHPExcel_Linear_Best_Fit.html">PHPExcel_Linear_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/PHPExcel_Logarithmic_Best_Fit.html">PHPExcel_Logarithmic_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/PHPExcel_Polynomial_Best_Fit.html">PHPExcel_Polynomial_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/PHPExcel_Power_Best_Fit.html">PHPExcel_Power_Best_Fit</a><br /> + <a href="PHPExcel_Shared_Trend/trendClass.html">trendClass</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Shared_Trend!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_ZipArchive.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_ZipArchive.html new file mode 100644 index 0000000..debcdf5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Shared_ZipArchive.html @@ -0,0 +1,86 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared_ZipArchive</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared_ZipArchive.html" class="menu">class tree: PHPExcel_Shared_ZipArchive</a> ] + [ <a href="elementindex_PHPExcel_Shared_ZipArchive.html" class="menu">index: PHPExcel_Shared_ZipArchive</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_ZipArchive/_PHPExcel---Shared---ZipArchive.php.html"> ZipArchive.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Shared_ZipArchive/PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Shared_ZipArchive!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Style.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Style.html new file mode 100644 index 0000000..80e785c --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Style.html @@ -0,0 +1,113 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Style</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Style.html" class="menu">class tree: PHPExcel_Style</a> ] + [ <a href="elementindex_PHPExcel_Style.html" class="menu">index: PHPExcel_Style</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Style/_PHPExcel---Style---Alignment.php.html"> Alignment.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Border.php.html"> Border.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Borders.php.html"> Borders.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Color.php.html"> Color.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Conditional.php.html"> Conditional.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Fill.php.html"> Fill.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Font.php.html"> Font.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---NumberFormat.php.html"> NumberFormat.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style---Protection.php.html"> Protection.php + </a><br> + <a href="PHPExcel_Style/_PHPExcel---Style.php.html"> Style.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Style/PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Alignment.html">PHPExcel_Style_Alignment</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Border.html">PHPExcel_Style_Border</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Borders.html">PHPExcel_Style_Borders</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Color.html">PHPExcel_Style_Color</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Conditional.html">PHPExcel_Style_Conditional</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Fill.html">PHPExcel_Style_Fill</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Font.html">PHPExcel_Style_Font</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_NumberFormat.html">PHPExcel_Style_NumberFormat</a><br /> + <a href="PHPExcel_Style/PHPExcel_Style_Protection.html">PHPExcel_Style_Protection</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Style!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Worksheet.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Worksheet.html new file mode 100644 index 0000000..d90cf0b --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Worksheet.html @@ -0,0 +1,134 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Worksheet.html" class="menu">class tree: PHPExcel_Worksheet</a> ] + [ <a href="elementindex_PHPExcel_Worksheet.html" class="menu">index: PHPExcel_Worksheet</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter.php.html"> AutoFilter.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---BaseDrawing.php.html"> BaseDrawing.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---CellIterator.php.html"> CellIterator.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column.php.html"> Column.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---ColumnDimension.php.html"> ColumnDimension.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooter.php.html"> HeaderFooter.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---HeaderFooterDrawing.php.html"> HeaderFooterDrawing.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---MemoryDrawing.php.html"> MemoryDrawing.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---PageMargins.php.html"> PageMargins.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---PageSetup.php.html"> PageSetup.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---Protection.php.html"> Protection.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---Row.php.html"> Row.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---RowDimension.php.html"> RowDimension.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---RowIterator.php.html"> RowIterator.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---AutoFilter---Column---Rule.php.html"> Rule.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet---SheetView.php.html"> SheetView.php + </a><br> + <a href="PHPExcel_Worksheet/_PHPExcel---Worksheet.php.html"> Worksheet.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter.html">PHPExcel_Worksheet_AutoFilter</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column.html">PHPExcel_Worksheet_AutoFilter_Column</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_AutoFilter_Column_Rule.html">PHPExcel_Worksheet_AutoFilter_Column_Rule</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_BaseDrawing.html">PHPExcel_Worksheet_BaseDrawing</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_CellIterator.html">PHPExcel_Worksheet_CellIterator</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_ColumnDimension.html">PHPExcel_Worksheet_ColumnDimension</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooter.html">PHPExcel_Worksheet_HeaderFooter</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_HeaderFooterDrawing.html">PHPExcel_Worksheet_HeaderFooterDrawing</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_MemoryDrawing.html">PHPExcel_Worksheet_MemoryDrawing</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageMargins.html">PHPExcel_Worksheet_PageMargins</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_PageSetup.html">PHPExcel_Worksheet_PageSetup</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Protection.html">PHPExcel_Worksheet_Protection</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_Row.html">PHPExcel_Worksheet_Row</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowDimension.html">PHPExcel_Worksheet_RowDimension</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_RowIterator.html">PHPExcel_Worksheet_RowIterator</a><br /> + <a href="PHPExcel_Worksheet/PHPExcel_Worksheet_SheetView.html">PHPExcel_Worksheet_SheetView</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Worksheet!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Worksheet_Drawing.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Worksheet_Drawing.html new file mode 100644 index 0000000..1b35c2f --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Worksheet_Drawing.html @@ -0,0 +1,89 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Worksheet_Drawing</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Worksheet_Drawing.html" class="menu">class tree: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="elementindex_PHPExcel_Worksheet_Drawing.html" class="menu">index: PHPExcel_Worksheet_Drawing</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing.php.html"> Drawing.php + </a><br> + <a href="PHPExcel_Worksheet_Drawing/_PHPExcel---Worksheet---Drawing---Shadow.php.html"> Shadow.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="PHPExcel_Worksheet_Drawing/PHPExcel_Worksheet_Drawing_Shadow.html">PHPExcel_Worksheet_Drawing_Shadow</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Worksheet_Drawing!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Writer.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Writer.html new file mode 100644 index 0000000..5d0b310 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Writer.html @@ -0,0 +1,110 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Writer.html" class="menu">class tree: PHPExcel_Writer</a> ] + [ <a href="elementindex_PHPExcel_Writer.html" class="menu">index: PHPExcel_Writer</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---Core.php.html"> Core.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---CSV.php.html"> CSV.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---DomPDF.php.html"> DomPDF.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---HTML.php.html"> HTML.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---IWriter.php.html"> IWriter.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---mPDF.php.html"> mPDF.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF.php.html"> PDF.php + </a><br> + <a href="PHPExcel_Writer/_PHPExcel---Writer---PDF---tcPDF.php.html"> tcPDF.php + </a><br> + </div><br /> + + <b>Interfaces:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer/PHPExcel_Writer_IWriter.html">PHPExcel_Writer_IWriter</a><br /> + </div> + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer/PHPExcel_Writer_CSV.html">PHPExcel_Writer_CSV</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_HTML.html">PHPExcel_Writer_HTML</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_PDF.html">PHPExcel_Writer_PDF</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_Core.html">PHPExcel_Writer_PDF_Core</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_DomPDF.html">PHPExcel_Writer_PDF_DomPDF</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_mPDF.html">PHPExcel_Writer_PDF_mPDF</a><br /> + <a href="PHPExcel_Writer/PHPExcel_Writer_PDF_tcPDF.html">PHPExcel_Writer_PDF_tcPDF</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Writer!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Writer_Excel2007.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Writer_Excel2007.html new file mode 100644 index 0000000..3b75b06 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Writer_Excel2007.html @@ -0,0 +1,122 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel2007</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Writer_Excel2007.html" class="menu">class tree: PHPExcel_Writer_Excel2007</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel2007.html" class="menu">index: PHPExcel_Writer_Excel2007</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Chart.php.html"> Chart.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Comments.php.html"> Comments.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---ContentTypes.php.html"> ContentTypes.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---DocProps.php.html"> DocProps.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Drawing.php.html"> Drawing.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007.php.html"> Excel2007.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Rels.php.html"> Rels.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---StringTable.php.html"> StringTable.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Style.php.html"> Style.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Theme.php.html"> Theme.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Workbook.php.html"> Workbook.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="PHPExcel_Writer_Excel2007/_PHPExcel---Writer---Excel2007---WriterPart.php.html"> WriterPart.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Chart.html">PHPExcel_Writer_Excel2007_Chart</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Comments.html">PHPExcel_Writer_Excel2007_Comments</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_ContentTypes.html">PHPExcel_Writer_Excel2007_ContentTypes</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_DocProps.html">PHPExcel_Writer_Excel2007_DocProps</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Drawing.html">PHPExcel_Writer_Excel2007_Drawing</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Rels.html">PHPExcel_Writer_Excel2007_Rels</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_StringTable.html">PHPExcel_Writer_Excel2007_StringTable</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Style.html">PHPExcel_Writer_Excel2007_Style</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Theme.html">PHPExcel_Writer_Excel2007_Theme</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Workbook.html">PHPExcel_Writer_Excel2007_Workbook</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_Worksheet.html">PHPExcel_Writer_Excel2007_Worksheet</a><br /> + <a href="PHPExcel_Writer_Excel2007/PHPExcel_Writer_Excel2007_WriterPart.html">PHPExcel_Writer_Excel2007_WriterPart</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Writer_Excel2007!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/li_PHPExcel_Writer_Excel5.html b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Writer_Excel5.html new file mode 100644 index 0000000..d6bdcd0 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/li_PHPExcel_Writer_Excel5.html @@ -0,0 +1,107 @@ +<html> +<head> +<title>PHPExcel classes</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Writer_Excel5</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Writer_Excel5.html" class="menu">class tree: PHPExcel_Writer_Excel5</a> ] + [ <a href="elementindex_PHPExcel_Writer_Excel5.html" class="menu">index: PHPExcel_Writer_Excel5</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + <b>Files:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---BIFFwriter.php.html"> BIFFwriter.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Escher.php.html"> Escher.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5.php.html"> Excel5.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Font.php.html"> Font.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Parser.php.html"> Parser.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Workbook.php.html"> Workbook.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Worksheet.php.html"> Worksheet.php + </a><br> + <a href="PHPExcel_Writer_Excel5/_PHPExcel---Writer---Excel5---Xf.php.html"> Xf.php + </a><br> + </div><br /> + + + <b>Classes:</b><br /> + <div class="package"> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_BIFFwriter.html">PHPExcel_Writer_Excel5_BIFFwriter</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Escher.html">PHPExcel_Writer_Excel5_Escher</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Font.html">PHPExcel_Writer_Excel5_Font</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Parser.html">PHPExcel_Writer_Excel5_Parser</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Workbook.html">PHPExcel_Writer_Excel5_Workbook</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Worksheet.html">PHPExcel_Writer_Excel5_Worksheet</a><br /> + <a href="PHPExcel_Writer_Excel5/PHPExcel_Writer_Excel5_Xf.html">PHPExcel_Writer_Excel5_Xf</a><br /> + </div> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>PHPExcel classes</h1></div> +<b>Welcome to PHPExcel_Writer_Excel5!</b><br /> +<br /> +This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.4</a><br /> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:15:08 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/media/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/API/media/_notes/dwsync.xml new file mode 100644 index 0000000..7af5e5d --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/media/_notes/dwsync.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="background.png" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="empty.png" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="style.css" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675109999999" remote="129972061200000000" Dst="-1" /> +<file name="empty.png" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="background.png" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="style.css" server="web2.pointvirgule.net/valtra/monope/" local="129973851669999999" remote="129984144600000000" Dst="-1" /> +<file name="empty.png" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997100400000000" Dst="-1" /> +<file name="background.png" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997100400000000" Dst="-1" /> +<file name="style.css" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851669999999" remote="129997100400000000" Dst="-1" /> +<file name="empty.png" server="62.244.88.111/actions-fendt/lisa/" local="131244560247549980" remote="131260197000000000" Dst="1" /> +<file name="background.png" server="62.244.88.111/actions-fendt/lisa/" local="131244560248120891" remote="131260197000000000" Dst="1" /> +<file name="style.css" server="62.244.88.111/actions-fendt/lisa/" local="131244560248692857" remote="131260197000000000" Dst="1" /> +<file name="empty.png" server="62.244.88.21/amashow/" local="131414752613668221" remote="131414681400000000" Dst="2" /> +<file name="background.png" server="62.244.88.21/amashow/" local="131414752614028293" remote="131414681400000000" Dst="2" /> +<file name="style.css" server="62.244.88.21/amashow/" local="131414752614203196" remote="131414681400000000" Dst="2" /> +<file name="style.css" server="62.244.88.21/deciday/" local="131919461481461626" remote="131826018000000000" Dst="1" /> +<file name="empty.png" server="62.244.88.21/deciday/" local="131919461481671595" remote="131826018000000000" Dst="1" /> +<file name="background.png" server="62.244.88.21/deciday/" local="131919461479984178" remote="131826018000000000" Dst="1" /> +<file name="background.png" server="62.244.88.21/deciday_18/" local="131414752614028293" remote="131825946000000000" Dst="2" /> +<file name="style.css" server="62.244.88.21/deciday_18/" local="131414752614203196" remote="131825946000000000" Dst="2" /> +<file name="empty.png" server="62.244.88.21/deciday_18/" local="131414752613668221" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/API/media/background.png b/site/config/PHPExcel/Documentation/API/media/background.png new file mode 100644 index 0000000..d6f36f6 Binary files /dev/null and b/site/config/PHPExcel/Documentation/API/media/background.png differ diff --git a/site/config/PHPExcel/Documentation/API/media/empty.png b/site/config/PHPExcel/Documentation/API/media/empty.png new file mode 100644 index 0000000..a9f29bb Binary files /dev/null and b/site/config/PHPExcel/Documentation/API/media/empty.png differ diff --git a/site/config/PHPExcel/Documentation/API/media/style.css b/site/config/PHPExcel/Documentation/API/media/style.css new file mode 100644 index 0000000..bc65d89 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/media/style.css @@ -0,0 +1,195 @@ +.php { + padding: 1em; +} +.php-src { font-family: 'Courier New', Courier, monospace; font-weight: normal; } + +body +{ + color: #000000; + background-color: #ffffff; + background-image: url("background.png"); + background-repeat: repeat-y; + font-family: tahoma, verdana, arial, sans-serif; + font-size: 10pt; + margin: 0; + padding: 0; +} + +a +{ + color: #000099; + background-color: transparent; + text-decoration: none; +} + +a:hover +{ + text-decoration: underline; +} + +a.menu +{ + color: #ffffff; + background-color: transparent; +} + +td +{ + font-size: 10pt; +} + +td.header_top +{ + color: #ffffff; + background-color: #9999cc; + font-size: 16pt; + font-weight: bold; + text-align: right; + padding: 10px; +} + +td.header_line +{ + color: #ffffff; + background-color: #333366; +} + +td.header_menu +{ + color: #ffffff; + background-color: #666699; + font-size: 8pt; + text-align: right; + padding: 2px; + padding-right: 5px; +} + +td.menu +{ + padding: 2px; + padding-left: 5px; +} + +td.code_border +{ + color: #000000; + background-color: #c0c0c0; +} + +td.code +{ + color: #000000; + background-color: #f0f0f0; +} + +td.type +{ + font-style: italic; +} + +div.credit +{ + font-size: 8pt; + text-align: center; +} + +div.package +{ + padding-left: 5px; +} + +div.tags +{ + padding-left: 15px; +} + +div.function +{ + padding-left: 15px; +} + +div.top +{ + font-size: 8pt; +} + +div.warning +{ + color: #ff0000; + background-color: transparent; +} + +div.description +{ + padding-left: 15px; +} + +hr +{ + height: 1px; + border-style: solid; + border-color: #c0c0c0; + margin-top: 10px; + margin-bottom: 10px; +} + +span.smalllinenumber +{ + font-size: 8pt; +} + +ul { + margin-left: 0px; + padding-left: 8px; +} +/* Syntax highlighting */ + +.src-code { background-color: #f5f5f5; border: 1px solid #ccc9a4; padding: 0 0 0 1em; margin : 0px; + font-family: 'Courier New', Courier, monospace; font-weight: normal; } +.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; } + +.src-comm { color: green; } +.src-id { } +.src-inc { color: #0000FF; } +.src-key { color: #0000FF; } +.src-num { color: #CC0000; } +.src-str { color: #66cccc; } +.src-sym { font-weight: bold; } +.src-var { } + +.src-php { font-weight: bold; } + +.src-doc { color: #009999 } +.src-doc-close-template { color: #0000FF } +.src-doc-coretag { color: #0099FF; font-weight: bold } +.src-doc-inlinetag { color: #0099FF } +.src-doc-internal { color: #6699cc } +.src-doc-tag { color: #0080CC } +.src-doc-template { color: #0000FF } +.src-doc-type { font-style: italic } +.src-doc-var { font-style: italic } + +.tute-tag { color: #009999 } +.tute-attribute-name { color: #0000FF } +.tute-attribute-value { color: #0099FF } +.tute-entity { font-weight: bold; } +.tute-comment { font-style: italic } +.tute-inline-tag { color: #636311; font-weight: bold } + +/* tutorial */ + +.authors { } +.author { font-style: italic; font-weight: bold } +.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal } +.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; } +.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; } +.release-info { font-size: 85%; font-style: italic; margin: 1em 0em } +.ref-title-box { } +.ref-title { } +.ref-purpose { font-style: italic; color: #666666 } +.ref-synopsis { } +.title { font-weight: bold; margin: 1em 0em 0em 0em; padding: .25em; border: 2px solid #999999; background-color: #9999CC } +.cmd-synopsis { margin: 1em 0em } +.cmd-title { font-weight: bold } +.toc { margin-left: 2em; padding-left: 0em } + diff --git a/site/config/PHPExcel/Documentation/API/todolist.html b/site/config/PHPExcel/Documentation/API/todolist.html new file mode 100644 index 0000000..ee8e385 --- /dev/null +++ b/site/config/PHPExcel/Documentation/API/todolist.html @@ -0,0 +1,108 @@ +<html> +<head> +<title>Todo List</title> +<link rel="stylesheet" type="text/css" href="media/style.css"> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header_top">PHPExcel_Shared</td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td class="header_menu"> + + + [ <a href="classtrees_PHPExcel_Shared.html" class="menu">class tree: PHPExcel_Shared</a> ] + [ <a href="elementindex_PHPExcel_Shared.html" class="menu">index: PHPExcel_Shared</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="200" class="menu"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + <b>Packages:</b><br /> + <a href="li_PHPExcel.html">PHPExcel</a><br /> + <a href="li_JAMA.html">JAMA</a><br /> + <a href="li_Math_Stats.html">Math_Stats</a><br /> + <a href="li_PHPExcel_CachedObjectStorage.html">PHPExcel_CachedObjectStorage</a><br /> + <a href="li_PHPExcel_Calculation.html">PHPExcel_Calculation</a><br /> + <a href="li_PHPExcel_Cell.html">PHPExcel_Cell</a><br /> + <a href="li_PHPExcel_Chart.html">PHPExcel_Chart</a><br /> + <a href="li_PHPExcel_Chart_Renderer.html">PHPExcel_Chart_Renderer</a><br /> + <a href="li_PHPExcel_Reader.html">PHPExcel_Reader</a><br /> + <a href="li_PHPExcel_Reader_Excel5.html">PHPExcel_Reader_Excel5</a><br /> + <a href="li_PHPExcel_Reader_Excel2007.html">PHPExcel_Reader_Excel2007</a><br /> + <a href="li_PHPExcel_RichText.html">PHPExcel_RichText</a><br /> + <a href="li_PHPExcel_Settings.html">PHPExcel_Settings</a><br /> + <a href="li_PHPExcel_Shared.html">PHPExcel_Shared</a><br /> + <a href="li_PHPExcel_Shared_Escher.html">PHPExcel_Shared_Escher</a><br /> + <a href="li_PHPExcel_Shared_OLE.html">PHPExcel_Shared_OLE</a><br /> + <a href="li_PHPExcel_Shared_Trend.html">PHPExcel_Shared_Trend</a><br /> + <a href="li_PHPExcel_Shared_ZipArchive.html">PHPExcel_Shared_ZipArchive</a><br /> + <a href="li_PHPExcel_Style.html">PHPExcel_Style</a><br /> + <a href="li_PHPExcel_Worksheet.html">PHPExcel_Worksheet</a><br /> + <a href="li_PHPExcel_Worksheet_Drawing.html">PHPExcel_Worksheet_Drawing</a><br /> + <a href="li_PHPExcel_Writer.html">PHPExcel_Writer</a><br /> + <a href="li_PHPExcel_Writer_Excel5.html">PHPExcel_Writer_Excel5</a><br /> + <a href="li_PHPExcel_Writer_Excel2007.html">PHPExcel_Writer_Excel2007</a><br /> + <br /><br /> + + + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<div align="center"><h1>Todo List</h1></div> +<h2>PHPExcel_Calculation</h2> +<h3><a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodBINOMDIST">PHPExcel_Calculation_Statistical::BINOMDIST()</a></h3> +<ul> + <li>Cumulative distribution function</li> +</ul> +<h3><a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodCRITBINOM">PHPExcel_Calculation_Statistical::CRITBINOM()</a></h3> +<ul> + <li>Warning. This implementation differs from the algorithm detailed on the MS web site in that $CumPGuessMinus1 = $CumPGuess - 1 rather than $CumPGuess - $PGuess This eliminates a potential endless loop error, but may have an adverse affect on the accuracy of the function (although all my tests have so far returned correct results).</li> +</ul> +<h3><a href="PHPExcel_Calculation/PHPExcel_Calculation_LookupRef.html#methodINDIRECT">PHPExcel_Calculation_LookupRef::INDIRECT()</a></h3> +<ul> + <li>Support for the optional a1 parameter introduced in Excel 2010</li> +</ul> +<h3><a href="PHPExcel_Calculation/PHPExcel_Calculation_Statistical.html#methodLOGINV">PHPExcel_Calculation_Statistical::LOGINV()</a></h3> +<ul> + <li>Try implementing P J Acklam's refinement algorithm for greater accuracy if I can get my head round the mathematics (as described at) http://home.online.no/~pjacklam/notes/invnorm/</li> +</ul> +<h2>Math_Stats</h2> +<h3><a href="Math_Stats/Base.html#methodinterquartileMean">Base::interquartileMean()</a></h3> +<ul> + <li>need to double check the equation</li> +</ul> +<h3><a href="Math_Stats/Base.html#methodpercentile">Base::percentile()</a></h3> +<ul> + <li>need to double check generality of the algorithm</li> +</ul> +<h3><a href="Math_Stats/Base.html#methodquartileSkewnessCoefficient">Base::quartileSkewnessCoefficient()</a></h3> +<ul> + <li>need to double check the equation</li> +</ul> +<h3><a href="Math_Stats/Base.html#methodquartileVariationCoefficient">Base::quartileVariationCoefficient()</a></h3> +<ul> + <li>need to double check the equation</li> +</ul> + <div class="credit"> + <hr /> + Documentation generated on Fri, 12 Oct 2012 00:18:19 +0200 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DAVERAGE.php b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DAVERAGE.php new file mode 100644 index 0000000..8bfe2c8 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DAVERAGE.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DAVERAGE</h1> +<h2>Returns the average of selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The Average yield of Apple trees over 10\' in height'); +$worksheet->setCellValue('B12', '=DAVERAGE(A4:E10,"Yield",A1:B2)'); + +$worksheet->setCellValue('A13', 'The Average age of all Apple and Pear trees in the orchard'); +$worksheet->setCellValue('B13', '=DAVERAGE(A4:E10,3,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:B2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DAVERAGE() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DAVERAGE() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DCOUNT.php b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DCOUNT.php new file mode 100644 index 0000000..13ad1fb --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DCOUNT.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DCOUNT</h1> +<h2>Counts the cells that contain numbers in a database.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The Number of Apple trees over 10\' in height'); +$worksheet->setCellValue('B12', '=DCOUNT(A4:E10,"Yield",A1:B2)'); + +$worksheet->setCellValue('A13', 'The Number of Apple and Pear trees in the orchard'); +$worksheet->setCellValue('B13', '=DCOUNT(A4:E10,3,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:B2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DCOUNT() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DCOUNT() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DGET.php b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DGET.php new file mode 100644 index 0000000..9a2b22c --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DGET.php @@ -0,0 +1,86 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DGET</h1> +<h2>Extracts a single value from a column of a list or database that matches conditions that you specify.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The height of the Apple tree between 10\' and 16\' tall'); +$worksheet->setCellValue('B12', '=DGET(A4:E10,"Height",A1:F2)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +echo 'ALL' . '<br /><br />'; + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DMAX.php b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DMAX.php new file mode 100644 index 0000000..116d848 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DMAX.php @@ -0,0 +1,89 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DMAX</h1> +<h2>Returns the maximum value from selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The tallest tree in the orchard'); +$worksheet->setCellValue('B12', '=DMAX(A4:E10,"Height",A4:E10)'); + +$worksheet->setCellValue('A13', 'The Oldest apple tree in the orchard'); +$worksheet->setCellValue('B13', '=DMAX(A4:E10,3,A1:A2)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +echo 'ALL' . '<br /><br />'; + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DMIN.php b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DMIN.php new file mode 100644 index 0000000..55207e8 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DMIN.php @@ -0,0 +1,89 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DMIN</h1> +<h2>Returns the minimum value from selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The shortest tree in the orchard'); +$worksheet->setCellValue('B12', '=DMIN(A4:E10,"Height",A4:E10)'); + +$worksheet->setCellValue('A13', 'The Youngest apple tree in the orchard'); +$worksheet->setCellValue('B13', '=DMIN(A4:E10,3,A1:A2)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +echo 'ALL' . '<br /><br />'; + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DMIN() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DMIN() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DPRODUCT.php b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DPRODUCT.php new file mode 100644 index 0000000..8c08421 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DPRODUCT.php @@ -0,0 +1,87 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DPRODUCT</h1> +<h2>Multiplies the values in a column of a list or database that match conditions that you specify.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The product of the yields of all Apple trees over 10\' in the orchard'); +$worksheet->setCellValue('B12', '=DPRODUCT(A4:E10,"Yield",A1:B2)'); + + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +echo 'ALL' . '<br /><br />'; + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A2',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DMAX() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DSTDEV.php b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DSTDEV.php new file mode 100644 index 0000000..28896e6 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DSTDEV.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DSTDEV</h1> +<h2>Estimates the standard deviation based on a sample of selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The estimated standard deviation in the yield of Apple and Pear trees'); +$worksheet->setCellValue('B12', '=DSTDEV(A4:E10,"Yield",A1:A3)'); + +$worksheet->setCellValue('A13', 'The estimated standard deviation in height of Apple and Pear trees'); +$worksheet->setCellValue('B13', '=DSTDEV(A4:E10,2,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DSTDEV() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DSTDEV() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DSTDEVP.php b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DSTDEVP.php new file mode 100644 index 0000000..6540f9a --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DSTDEVP.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DSTDEVP</h1> +<h2>Calculates the standard deviation based on the entire population of selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The standard deviation in the yield of Apple and Pear trees'); +$worksheet->setCellValue('B12', '=DSTDEVP(A4:E10,"Yield",A1:A3)'); + +$worksheet->setCellValue('A13', 'The standard deviation in height of Apple and Pear trees'); +$worksheet->setCellValue('B13', '=DSTDEVP(A4:E10,2,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DSTDEVP() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DSTDEVP() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DVAR.php b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DVAR.php new file mode 100644 index 0000000..67a9cff --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DVAR.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DVAR</h1> +<h2>Estimates variance based on a sample from selected database entries.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The estimated variance in the yield of Apple and Pear trees'); +$worksheet->setCellValue('B12', '=DVAR(A4:E10,"Yield",A1:A3)'); + +$worksheet->setCellValue('A13', 'The estimated variance in height of Apple and Pear trees'); +$worksheet->setCellValue('B13', '=DVAR(A4:E10,2,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DVAR() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DVAR() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DVARP.php b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DVARP.php new file mode 100644 index 0000000..fda6338 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/DVARP.php @@ -0,0 +1,90 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DVARP</h1> +<h2>Calculates variance based on the entire population of selected database entries,</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$database = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit' ), + array( 'Apple', 18, 20, 14, 105.00 ), + array( 'Pear', 12, 12, 10, 96.00 ), + array( 'Cherry', 13, 14, 9, 105.00 ), + array( 'Apple', 14, 15, 10, 75.00 ), + array( 'Pear', 9, 8, 8, 76.80 ), + array( 'Apple', 8, 9, 6, 45.00 ), + ); +$criteria = array( array( 'Tree', 'Height', 'Age', 'Yield', 'Profit', 'Height' ), + array( '="=Apple"', '>10', NULL, NULL, NULL, '<16' ), + array( '="=Pear"', NULL, NULL, NULL, NULL, NULL ) + ); + +$worksheet->fromArray( $criteria, NULL, 'A1' ); +$worksheet->fromArray( $database, NULL, 'A4' ); + +$worksheet->setCellValue('A12', 'The variance in the yield of Apple and Pear trees'); +$worksheet->setCellValue('B12', '=DVARP(A4:E10,"Yield",A1:A3)'); + +$worksheet->setCellValue('A13', 'The variance in height of Apple and Pear trees'); +$worksheet->setCellValue('B13', '=DVARP(A4:E10,2,A1:A3)'); + + +echo '<hr />'; + + +echo '<h4>Database</h4>'; + +$databaseData = $worksheet->rangeToArray('A4:E10',null,true,true,true); +var_dump($databaseData); + + +echo '<hr />'; + + +// Test the formulae +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A12")->getValue() .'<br />'; +echo 'DVARP() Result is ' . $worksheet->getCell("B12")->getCalculatedValue() .'<br /><br />'; + +echo '<h4>Criteria</h4>'; + +$criteriaData = $worksheet->rangeToArray('A1:A3',null,true,true,true); +var_dump($criteriaData); + +echo $worksheet->getCell("A13")->getValue() .'<br />'; +echo 'DVARP() Result is ' . $worksheet->getCell("B13")->getCalculatedValue(); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/Database/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/_notes/dwsync.xml new file mode 100644 index 0000000..a5c340c --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/Database/_notes/dwsync.xml @@ -0,0 +1,73 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="DAVERAGE.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DCOUNT.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DGET.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DMAX.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DMIN.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DPRODUCT.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DSTDEV.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DSTDEVP.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DVAR.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DVARP.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DCOUNT.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DVAR.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DVARP.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DAVERAGE.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DGET.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DPRODUCT.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DMIN.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DMAX.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DSTDEV.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DSTDEVP.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DCOUNT.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DVAR.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DVARP.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DAVERAGE.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DGET.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DPRODUCT.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DMIN.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DMAX.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DSTDEV.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DSTDEVP.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DCOUNT.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560451848509" remote="131260197000000000" Dst="1" /> +<file name="DVAR.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560452243231" remote="131260197000000000" Dst="1" /> +<file name="DVARP.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560452650171" remote="131260197000000000" Dst="1" /> +<file name="DAVERAGE.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560453045061" remote="131260197000000000" Dst="1" /> +<file name="DGET.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560453398990" remote="131260197000000000" Dst="1" /> +<file name="DPRODUCT.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560453760651" remote="131260197000000000" Dst="1" /> +<file name="DMIN.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560454131703" remote="131260197000000000" Dst="1" /> +<file name="DMAX.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560454490185" remote="131260197000000000" Dst="1" /> +<file name="DSTDEV.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560454862854" remote="131260197000000000" Dst="1" /> +<file name="DSTDEVP.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560455257263" remote="131260197000000000" Dst="1" /> +<file name="DCOUNT.php" server="62.244.88.21/amashow/" local="131414752784992978" remote="131414681400000000" Dst="2" /> +<file name="DVAR.php" server="62.244.88.21/amashow/" local="131414752785192870" remote="131414681400000000" Dst="2" /> +<file name="DVARP.php" server="62.244.88.21/amashow/" local="131414752785601187" remote="131414681400000000" Dst="2" /> +<file name="DAVERAGE.php" server="62.244.88.21/amashow/" local="131414752785806765" remote="131414681400000000" Dst="2" /> +<file name="DPRODUCT.php" server="62.244.88.21/amashow/" local="131414752786340687" remote="131414681400000000" Dst="2" /> +<file name="DGET.php" server="62.244.88.21/amashow/" local="131414752786145768" remote="131414681400000000" Dst="2" /> +<file name="DMIN.php" server="62.244.88.21/amashow/" local="131414752786735441" remote="131414681400000000" Dst="2" /> +<file name="DMAX.php" server="62.244.88.21/amashow/" local="131414752786948976" remote="131414681400000000" Dst="2" /> +<file name="DSTDEVP.php" server="62.244.88.21/amashow/" local="131414752787340850" remote="131414681400000000" Dst="2" /> +<file name="DSTDEV.php" server="62.244.88.21/amashow/" local="131414752787142263" remote="131414681400000000" Dst="2" /> +<file name="DSTDEV.php" server="62.244.88.21/deciday/" local="131919461694633642" remote="131826018000000000" Dst="1" /> +<file name="DVAR.php" server="62.244.88.21/deciday/" local="131919461694455286" remote="131826018000000000" Dst="1" /> +<file name="DMAX.php" server="62.244.88.21/deciday/" local="131919461689583284" remote="131826018000000000" Dst="1" /> +<file name="DVARP.php" server="62.244.88.21/deciday/" local="131919461695293366" remote="131826018000000000" Dst="1" /> +<file name="DGET.php" server="62.244.88.21/deciday/" local="131919461689070052" remote="131826018000000000" Dst="1" /> +<file name="DAVERAGE.php" server="62.244.88.21/deciday/" local="131919461688623769" remote="131826018000000000" Dst="1" /> +<file name="DPRODUCT.php" server="62.244.88.21/deciday/" local="131919461689936905" remote="131826018000000000" Dst="1" /> +<file name="DCOUNT.php" server="62.244.88.21/deciday/" local="131919461688889732" remote="131826018000000000" Dst="1" /> +<file name="DSTDEVP.php" server="62.244.88.21/deciday/" local="131919461694277442" remote="131826018000000000" Dst="1" /> +<file name="DMIN.php" server="62.244.88.21/deciday/" local="131919461690118468" remote="131826018000000000" Dst="1" /> +<file name="DAVERAGE.php" server="62.244.88.21/deciday_18/" local="131414752785806765" remote="131825946000000000" Dst="2" /> +<file name="DCOUNT.php" server="62.244.88.21/deciday_18/" local="131414752784992978" remote="131825946000000000" Dst="2" /> +<file name="DGET.php" server="62.244.88.21/deciday_18/" local="131414752786145768" remote="131825946000000000" Dst="2" /> +<file name="DMIN.php" server="62.244.88.21/deciday_18/" local="131414752786735441" remote="131825946000000000" Dst="2" /> +<file name="DMAX.php" server="62.244.88.21/deciday_18/" local="131414752786948976" remote="131825946000000000" Dst="2" /> +<file name="DPRODUCT.php" server="62.244.88.21/deciday_18/" local="131414752786340687" remote="131825946000000000" Dst="2" /> +<file name="DSTDEV.php" server="62.244.88.21/deciday_18/" local="131414752787142263" remote="131825946000000000" Dst="2" /> +<file name="DSTDEVP.php" server="62.244.88.21/deciday_18/" local="131414752787340850" remote="131825946000000000" Dst="2" /> +<file name="DVAR.php" server="62.244.88.21/deciday_18/" local="131414752785192870" remote="131825946000000000" Dst="2" /> +<file name="DVARP.php" server="62.244.88.21/deciday_18/" local="131414752785601187" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/DATE.php b/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/DATE.php new file mode 100644 index 0000000..979d1f5 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/DATE.php @@ -0,0 +1,83 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DATE</h1> +<h2>Returns the serial number of a particular date.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$testDates = array( array(2012,3,26), array(2012,2,29), array(2012,4,1), array(2012,12,25), + array(2012,10,31), array(2012,11,5), array(2012,1,1), array(2012,3,17), + array(2011,2,29), array(7,5,3), array(2012,13,1), array(2012,11,45), + array(2012,0,0), array(2012,1,0), array(2012,0,1), + array(2012,-2,2), array(2012,2,-2), array(2012,-2,-2), + ); +$testDateCount = count($testDates); + +$worksheet->fromArray($testDates,NULL,'A1',true); + +for ($row = 1; $row <= $testDateCount; ++$row) { + $worksheet->setCellValue('D'.$row, '=DATE(A'.$row.',B'.$row.',C'.$row.')'); + $worksheet->setCellValue('E'.$row, '=D'.$row); +} +$worksheet->getStyle('E1:E'.$testDateCount) + ->getNumberFormat() + ->setFormatCode('yyyy-mmm-dd'); + + +echo '<hr />'; + + +// Test the formulae +?> +<table border="1" cellspacing="0"> + <tr> + <th colspan="3">Date Value</th> + <th rowspan="2" valign="bottom">Formula</th> + <th rowspan="2" valign="bottom">Excel DateStamp</th> + <th rowspan="2" valign="bottom">Formatted DateStamp</th> + </tr> + <tr> + <th>Year</th> + <th>Month</th> + <th>Day</th> + <tr> + <?php + for ($row = 1; $row <= $testDateCount; ++$row) { + echo '<tr>'; + echo '<td>' , $worksheet->getCell('A'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('C'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('D'.$row)->getValue() , '</td>'; + echo '<td>' , $worksheet->getCell('D'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('E'.$row)->getFormattedValue() , '</td>'; + echo '</tr>'; + } + ?> +</table> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/DATEVALUE.php b/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/DATEVALUE.php new file mode 100644 index 0000000..4d5d8c2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/DATEVALUE.php @@ -0,0 +1,76 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>DATEVALUE</h1> +<h2>Converts a date in the form of text to a serial number.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$testDates = array( '26 March 2012', '29 Feb 2012', 'April 1, 2012', '25/12/2012', + '2012-Oct-31', '5th November', 'January 1st', 'April 2012', + '17-03', '03-2012', '29 Feb 2011', '03-05-07', + '03-MAY-07', '03-13-07', + ); +$testDateCount = count($testDates); + +for($row = 1; $row <= $testDateCount; ++$row) { + $worksheet->setCellValue('A'.$row, $testDates[$row-1]); + $worksheet->setCellValue('B'.$row, '=DATEVALUE(A'.$row.')'); + $worksheet->setCellValue('C'.$row, '=B'.$row); +} + +$worksheet->getStyle('C1:C'.$testDateCount) + ->getNumberFormat() + ->setFormatCode('yyyy-mmm-dd'); + + +echo '<hr />'; + + +// Test the formulae +?> +<p><strong>Warning: </strong>The PHPExcel DATEVALUE() function accepts a wider range of date formats than MS Excel's DATEFORMAT() function.</p> +<table border="1" cellspacing="0"> + <tr> + <th>Date String</th> + <th>Formula</th> + <th>Excel DateStamp</th> + <th>Formatted DateStamp</th> + </tr> + <?php + for ($row = 1; $row <= $testDateCount; ++$row) { + echo '<tr>'; + echo '<td>' , $worksheet->getCell('A'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('C'.$row)->getFormattedValue() , '</td>'; + echo '</tr>'; + } + ?> +</table> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/TIME.php b/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/TIME.php new file mode 100644 index 0000000..f452276 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/TIME.php @@ -0,0 +1,81 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>TIME</h1> +<h2>Returns the serial number of a particular time.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$testDates = array( array(3,15), array(13,15), array(15,15,15), array(3,15,30), + array(15,15,15), array(5), array(9,15,0), array(9,15,-1), + array(13,-14,-15), array(0,0,-1) + ); +$testDateCount = count($testDates); + +$worksheet->fromArray($testDates,NULL,'A1',true); + +for ($row = 1; $row <= $testDateCount; ++$row) { + $worksheet->setCellValue('D'.$row, '=TIME(A'.$row.',B'.$row.',C'.$row.')'); + $worksheet->setCellValue('E'.$row, '=D'.$row); +} +$worksheet->getStyle('E1:E'.$testDateCount) + ->getNumberFormat() + ->setFormatCode('hh:mm:ss'); + + +echo '<hr />'; + + +// Test the formulae +?> +<table border="1" cellspacing="0"> + <tr> + <th colspan="3">Date Value</th> + <th rowspan="2" valign="bottom">Formula</th> + <th rowspan="2" valign="bottom">Excel TimeStamp</th> + <th rowspan="2" valign="bottom">Formatted TimeStamp</th> + </tr> + <tr> + <th>Hour</th> + <th>Minute</th> + <th>Second</th> + <tr> + <?php + for ($row = 1; $row <= $testDateCount; ++$row) { + echo '<tr>'; + echo '<td>' , $worksheet->getCell('A'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('C'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('D'.$row)->getValue() , '</td>'; + echo '<td>' , $worksheet->getCell('D'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('E'.$row)->getFormattedValue() , '</td>'; + echo '</tr>'; + } + ?> +</table> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/TIMEVALUE.php b/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/TIMEVALUE.php new file mode 100644 index 0000000..89e0ba4 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/TIMEVALUE.php @@ -0,0 +1,72 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Examples</title> + +</head> +<body> + +<h1>TIMEVALUE</h1> +<h2>Converts a time in the form of text to a serial number.</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../../Classes/'); + +/** Include PHPExcel */ +include 'PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); +$worksheet = $objPHPExcel->getActiveSheet(); + +// Add some data +$testDates = array( '3:15', '13:15', '15:15:15', '3:15 AM', '3:15 PM', '5PM', '9:15AM', '13:15AM' + ); +$testDateCount = count($testDates); + +for($row = 1; $row <= $testDateCount; ++$row) { + $worksheet->setCellValue('A'.$row, $testDates[$row-1]); + $worksheet->setCellValue('B'.$row, '=TIMEVALUE(A'.$row.')'); + $worksheet->setCellValue('C'.$row, '=B'.$row); +} + +$worksheet->getStyle('C1:C'.$testDateCount) + ->getNumberFormat() + ->setFormatCode('hh:mm:ss'); + + +echo '<hr />'; + + +// Test the formulae +?> +<table border="1" cellspacing="0"> + <tr> + <th>Time String</th> + <th>Formula</th> + <th>Excel TimeStamp</th> + <th>Formatted TimeStamp</th> + </tr> + <?php + for ($row = 1; $row <= $testDateCount; ++$row) { + echo '<tr>'; + echo '<td>' , $worksheet->getCell('A'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getValue() , '</td>'; + echo '<td>' , $worksheet->getCell('B'.$row)->getFormattedValue() , '</td>'; + echo '<td>' , $worksheet->getCell('C'.$row)->getFormattedValue() , '</td>'; + echo '</tr>'; + } + ?> +</table> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/_notes/dwsync.xml new file mode 100644 index 0000000..e5ff2f1 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/DateTime/_notes/dwsync.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="DATE.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DATEVALUE.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="TIME.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="TIMEVALUE.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="DATEVALUE.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="TIMEVALUE.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DATE.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="TIME.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="DATEVALUE.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="TIMEVALUE.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DATE.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="TIME.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="DATEVALUE.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560457346398" remote="131260197000000000" Dst="1" /> +<file name="TIMEVALUE.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560457706315" remote="131260197000000000" Dst="1" /> +<file name="DATE.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560458071185" remote="131260197000000000" Dst="1" /> +<file name="TIME.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560458458126" remote="131260197000000000" Dst="1" /> +<file name="TIMEVALUE.php" server="62.244.88.21/amashow/" local="131414752791545030" remote="131414681400000000" Dst="2" /> +<file name="DATEVALUE.php" server="62.244.88.21/amashow/" local="131414752791353551" remote="131414681400000000" Dst="2" /> +<file name="DATE.php" server="62.244.88.21/amashow/" local="131414752791950870" remote="131414681400000000" Dst="2" /> +<file name="TIME.php" server="62.244.88.21/amashow/" local="131414752792351556" remote="131414681400000000" Dst="2" /> +<file name="DATE.php" server="62.244.88.21/deciday/" local="131919461695472470" remote="131826018000000000" Dst="1" /> +<file name="TIME.php" server="62.244.88.21/deciday/" local="131919461696394775" remote="131826018000000000" Dst="1" /> +<file name="TIMEVALUE.php" server="62.244.88.21/deciday/" local="131919461696566790" remote="131826018000000000" Dst="1" /> +<file name="DATEVALUE.php" server="62.244.88.21/deciday/" local="131919461695667356" remote="131826018000000000" Dst="1" /> +<file name="DATE.php" server="62.244.88.21/deciday_18/" local="131414752791950870" remote="131825946000000000" Dst="2" /> +<file name="DATEVALUE.php" server="62.244.88.21/deciday_18/" local="131414752791353551" remote="131825946000000000" Dst="2" /> +<file name="TIME.php" server="62.244.88.21/deciday_18/" local="131414752792351556" remote="131825946000000000" Dst="2" /> +<file name="TIMEVALUE.php" server="62.244.88.21/deciday_18/" local="131414752791545030" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/Examples/Calculations/_notes/dwsync.xml new file mode 100644 index 0000000..4a96766 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/_notes/dwsync.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="index.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="index.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="index.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560450965510" remote="131260197000000000" Dst="1" /> +<file name="index.php" server="62.244.88.21/amashow/" local="131414752783754323" remote="131414681400000000" Dst="2" /> +<file name="index.php" server="62.244.88.21/deciday/" local="131919461697004271" remote="131826018000000000" Dst="1" /> +<file name="index.php" server="62.244.88.21/deciday_18/" local="131414752783754323" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Calculations/index.php b/site/config/PHPExcel/Documentation/Examples/Calculations/index.php new file mode 100644 index 0000000..644e3af --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Calculations/index.php @@ -0,0 +1,51 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Calculation Function Examples</title> + +</head> +<body> + +<?php + +echo '<h1>PHPExcel Calculation Function Examples</h1>'; + +$exampleTypeList = glob('./*',GLOB_ONLYDIR); + +foreach($exampleTypeList as $exampleType) { + + echo '<h2>' . pathinfo($exampleType,PATHINFO_BASENAME) . ' Function Examples</h2>'; + + $exampleList = glob('./'.$exampleType.'/*.php'); + + foreach($exampleList as $exampleFile) { + $fileData = file_get_contents($exampleFile); + + $h1Pattern = '#<h1>(.*?)</h1>#'; + $h2Pattern = '#<h2>(.*?)</h2>#'; + + if (preg_match($h1Pattern, $fileData, $out)) { + $h1Text = $out[1]; + $h2Text = (preg_match($h2Pattern, $fileData, $out)) ? $out[1] : ''; + + echo '<a href="',$exampleFile,'">',$h1Text,'</a><br />'; + if ($h2Text > '') { + echo $h2Text,'<br />'; + } + } + + } +} + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/Examples/Reader/_notes/dwsync.xml new file mode 100644 index 0000000..401935f --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/_notes/dwsync.xml @@ -0,0 +1,122 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="exampleReader01.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader02.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader03.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader04.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader05.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader06.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader07.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader08.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader09.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader10.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader11.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader12.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader13.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader14.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader15.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader16.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader17.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="exampleReader01.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader10.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader02.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader11.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader03.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader12.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader04.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader13.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader05.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader14.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader06.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader15.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader16.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader07.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader08.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader17.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader09.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleReader01.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader10.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader02.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader11.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader03.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader12.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader04.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader13.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader05.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader14.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader06.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader15.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader16.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader07.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader08.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader17.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader09.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997102200000000" Dst="-1" /> +<file name="exampleReader01.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560464812124" remote="131260197000000000" Dst="1" /> +<file name="exampleReader10.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560465186846" remote="131260197000000000" Dst="1" /> +<file name="exampleReader02.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560465555389" remote="131260197000000000" Dst="1" /> +<file name="exampleReader11.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560465927750" remote="131260197000000000" Dst="1" /> +<file name="exampleReader03.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560466295638" remote="131260197000000000" Dst="1" /> +<file name="exampleReader12.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560466937407" remote="131260197000000000" Dst="1" /> +<file name="exampleReader04.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560467351154" remote="131260197000000000" Dst="1" /> +<file name="exampleReader13.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560467754592" remote="131260197000000000" Dst="1" /> +<file name="exampleReader05.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560468175557" remote="131260197000000000" Dst="1" /> +<file name="exampleReader14.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560468604897" remote="131260197000000000" Dst="1" /> +<file name="exampleReader06.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560469009306" remote="131260197000000000" Dst="1" /> +<file name="exampleReader15.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560469427093" remote="131260197000000000" Dst="1" /> +<file name="exampleReader16.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560469826401" remote="131260197000000000" Dst="1" /> +<file name="exampleReader07.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560470228505" remote="131260197000000000" Dst="1" /> +<file name="exampleReader08.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560470655383" remote="131260197000000000" Dst="1" /> +<file name="exampleReader17.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560471041089" remote="131260197000000000" Dst="1" /> +<file name="exampleReader09.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560471406569" remote="131260197000000000" Dst="1" /> +<file name="exampleReader01.php" server="62.244.88.21/amashow/" local="131414752800703273" remote="131414681400000000" Dst="2" /> +<file name="exampleReader10.php" server="62.244.88.21/amashow/" local="131414752801150800" remote="131414681400000000" Dst="2" /> +<file name="exampleReader02.php" server="62.244.88.21/amashow/" local="131414752801343736" remote="131414681400000000" Dst="2" /> +<file name="exampleReader11.php" server="62.244.88.21/amashow/" local="131414752801876925" remote="131414681400000000" Dst="2" /> +<file name="exampleReader03.php" server="62.244.88.21/amashow/" local="131414752802074550" remote="131414681400000000" Dst="2" /> +<file name="exampleReader12.php" server="62.244.88.21/amashow/" local="131414752802406310" remote="131414681400000000" Dst="2" /> +<file name="exampleReader04.php" server="62.244.88.21/amashow/" local="131414752802597828" remote="131414681400000000" Dst="2" /> +<file name="exampleReader13.php" server="62.244.88.21/amashow/" local="131414752803082042" remote="131414681400000000" Dst="2" /> +<file name="exampleReader05.php" server="62.244.88.21/amashow/" local="131414752803263978" remote="131414681400000000" Dst="2" /> +<file name="exampleReader14.php" server="62.244.88.21/amashow/" local="131414752803457633" remote="131414681400000000" Dst="2" /> +<file name="exampleReader06.php" server="62.244.88.21/amashow/" local="131414752803859708" remote="131414681400000000" Dst="2" /> +<file name="exampleReader15.php" server="62.244.88.21/amashow/" local="131414752804062168" remote="131414681400000000" Dst="2" /> +<file name="exampleReader16.php" server="62.244.88.21/amashow/" local="131414752804443866" remote="131414681400000000" Dst="2" /> +<file name="exampleReader07.php" server="62.244.88.21/amashow/" local="131414752804639172" remote="131414681400000000" Dst="2" /> +<file name="exampleReader17.php" server="62.244.88.21/amashow/" local="131414752805258388" remote="131414681400000000" Dst="2" /> +<file name="exampleReader09.php" server="62.244.88.21/amashow/" local="131414752805446727" remote="131414681400000000" Dst="2" /> +<file name="exampleReader08.php" server="62.244.88.21/amashow/" local="131414752805051628" remote="131414681400000000" Dst="2" /> +<file name="exampleReader09.php" server="62.244.88.21/deciday/" local="131919461700874630" remote="131826018000000000" Dst="1" /> +<file name="exampleReader06.php" server="62.244.88.21/deciday/" local="131919461699743894" remote="131826018000000000" Dst="1" /> +<file name="exampleReader02.php" server="62.244.88.21/deciday/" local="131919461698151898" remote="131826018000000000" Dst="1" /> +<file name="exampleReader17.php" server="62.244.88.21/deciday/" local="131919461703624642" remote="131826018000000000" Dst="1" /> +<file name="exampleReader11.php" server="62.244.88.21/deciday/" local="131919461701218785" remote="131826018000000000" Dst="1" /> +<file name="exampleReader07.php" server="62.244.88.21/deciday/" local="131919461699926189" remote="131826018000000000" Dst="1" /> +<file name="exampleReader05.php" server="62.244.88.21/deciday/" local="131919461699099665" remote="131826018000000000" Dst="1" /> +<file name="exampleReader08.php" server="62.244.88.21/deciday/" local="131919461700102229" remote="131826018000000000" Dst="1" /> +<file name="exampleReader16.php" server="62.244.88.21/deciday/" local="131919461703263109" remote="131826018000000000" Dst="1" /> +<file name="exampleReader01.php" server="62.244.88.21/deciday/" local="131919461697510732" remote="131826018000000000" Dst="1" /> +<file name="exampleReader12.php" server="62.244.88.21/deciday/" local="131919461702250515" remote="131826018000000000" Dst="1" /> +<file name="exampleReader13.php" server="62.244.88.21/deciday/" local="131919461702259211" remote="131826018000000000" Dst="1" /> +<file name="exampleReader04.php" server="62.244.88.21/deciday/" local="131919461698923849" remote="131826018000000000" Dst="1" /> +<file name="exampleReader15.php" server="62.244.88.21/deciday/" local="131919461703439185" remote="131826018000000000" Dst="1" /> +<file name="exampleReader14.php" server="62.244.88.21/deciday/" local="131919461702441934" remote="131826018000000000" Dst="1" /> +<file name="exampleReader10.php" server="62.244.88.21/deciday/" local="131919461701209681" remote="131826018000000000" Dst="1" /> +<file name="exampleReader03.php" server="62.244.88.21/deciday/" local="131919461698748006" remote="131826018000000000" Dst="1" /> +<file name="exampleReader02.php" server="62.244.88.21/deciday_18/" local="131414752801343736" remote="131825946000000000" Dst="2" /> +<file name="exampleReader01.php" server="62.244.88.21/deciday_18/" local="131414752800703273" remote="131825946000000000" Dst="2" /> +<file name="exampleReader03.php" server="62.244.88.21/deciday_18/" local="131414752802074550" remote="131825946000000000" Dst="2" /> +<file name="exampleReader04.php" server="62.244.88.21/deciday_18/" local="131414752802597828" remote="131825946000000000" Dst="2" /> +<file name="exampleReader05.php" server="62.244.88.21/deciday_18/" local="131414752803263978" remote="131825946000000000" Dst="2" /> +<file name="exampleReader06.php" server="62.244.88.21/deciday_18/" local="131414752803859708" remote="131825946000000000" Dst="2" /> +<file name="exampleReader08.php" server="62.244.88.21/deciday_18/" local="131414752805051628" remote="131825946000000000" Dst="2" /> +<file name="exampleReader09.php" server="62.244.88.21/deciday_18/" local="131414752805446727" remote="131825946000000000" Dst="2" /> +<file name="exampleReader07.php" server="62.244.88.21/deciday_18/" local="131414752804639172" remote="131825946000000000" Dst="2" /> +<file name="exampleReader11.php" server="62.244.88.21/deciday_18/" local="131414752801876925" remote="131825946000000000" Dst="2" /> +<file name="exampleReader12.php" server="62.244.88.21/deciday_18/" local="131414752802406310" remote="131825946000000000" Dst="2" /> +<file name="exampleReader10.php" server="62.244.88.21/deciday_18/" local="131414752801150800" remote="131825946000000000" Dst="2" /> +<file name="exampleReader13.php" server="62.244.88.21/deciday_18/" local="131414752803082042" remote="131825946000000000" Dst="2" /> +<file name="exampleReader14.php" server="62.244.88.21/deciday_18/" local="131414752803457633" remote="131825946000000000" Dst="2" /> +<file name="exampleReader15.php" server="62.244.88.21/deciday_18/" local="131414752804062168" remote="131825946000000000" Dst="2" /> +<file name="exampleReader16.php" server="62.244.88.21/deciday_18/" local="131414752804443866" remote="131825946000000000" Dst="2" /> +<file name="exampleReader17.php" server="62.244.88.21/deciday_18/" local="131414752805258388" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader01.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader01.php new file mode 100644 index 0000000..8883e12 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader01.php @@ -0,0 +1,42 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #01</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #01</h1> +<h2>Simple File Reader using PHPExcel_IOFactory::load()</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileName = './sampleData/example1.xls'; +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory to identify the format<br />'; +$objPHPExcel = PHPExcel_IOFactory::load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader02.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader02.php new file mode 100644 index 0000000..b2293c3 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader02.php @@ -0,0 +1,50 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #02</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #02</h1> +<h2>Simple File Reader using a Specified Reader</h2> +<?php + +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using PHPExcel_Reader_Excel5<br />'; +$objReader = new PHPExcel_Reader_Excel5(); +// $objReader = new PHPExcel_Reader_Excel2007(); +// $objReader = new PHPExcel_Reader_Excel2003XML(); +// $objReader = new PHPExcel_Reader_OOCalc(); +// $objReader = new PHPExcel_Reader_SYLK(); +// $objReader = new PHPExcel_Reader_Gnumeric(); +// $objReader = new PHPExcel_Reader_CSV(); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader03.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader03.php new file mode 100644 index 0000000..b4ab256 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader03.php @@ -0,0 +1,51 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #03</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #03</h1> +<h2>Simple File Reader using the PHPExcel_IOFactory to Return a Reader</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'SYLK'; +// $inputFileType = 'Gnumeric'; +// $inputFileType = 'CSV'; +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader04.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader04.php new file mode 100644 index 0000000..cf87b2b --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader04.php @@ -0,0 +1,47 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #04</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #04</h1> +<h2>Simple File Reader using the PHPExcel_IOFactory to Identify a Reader to Use</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileName = './sampleData/example1.xls'; + +$inputFileType = PHPExcel_IOFactory::identify($inputFileName); +echo 'File ',pathinfo($inputFileName,PATHINFO_BASENAME),' has been identified as an ',$inputFileType,' file<br />'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with the identified reader type<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader05.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader05.php new file mode 100644 index 0000000..1317f07 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader05.php @@ -0,0 +1,51 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #05</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #05</h1> +<h2>Simple File Reader using the "Read Data Only" Option</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Turning Formatting off for Load<br />'; +$objReader->setReadDataOnly(true); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader06.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader06.php new file mode 100644 index 0000000..58c2d26 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader06.php @@ -0,0 +1,54 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #06</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #06</h1> +<h2>Simple File Reader Loading All WorkSheets</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading all WorkSheets<br />'; +$objReader->setLoadAllSheets(); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo $sheetIndex,' -> ',$loadedSheetName,'<br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader07.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader07.php new file mode 100644 index 0000000..80acdf6 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader07.php @@ -0,0 +1,55 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #07</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #07</h1> +<h2>Simple File Reader Loading a Single Named WorkSheet</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; +$sheetname = 'Data Sheet #2'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading Sheet "',$sheetname,'" only<br />'; +$objReader->setLoadSheetsOnly($sheetname); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo $sheetIndex,' -> ',$loadedSheetName,'<br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader08.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader08.php new file mode 100644 index 0000000..3c38e02 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader08.php @@ -0,0 +1,55 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #08</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #08</h1> +<h2>Simple File Reader Loading Several Named WorkSheets</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; +$sheetnames = array('Data Sheet #1','Data Sheet #3'); + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading Sheet',((count($sheetnames) == 1) ? '' : 's'),' "',implode('" and "',$sheetnames),'" only<br />'; +$objReader->setLoadSheetsOnly($sheetnames); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo $sheetIndex,' -> ',$loadedSheetName,'<br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader09.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader09.php new file mode 100644 index 0000000..3bfa8f0 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader09.php @@ -0,0 +1,71 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #09</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #09</h1> +<h2>Simple File Reader Using a Read Filter</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; +$sheetname = 'Data Sheet #3'; + + +class MyReadFilter implements PHPExcel_Reader_IReadFilter +{ + public function readCell($column, $row, $worksheetName = '') { + // Read rows 1 to 7 and columns A to E only + if ($row >= 1 && $row <= 7) { + if (in_array($column,range('A','E'))) { + return true; + } + } + return false; + } +} + +$filterSubset = new MyReadFilter(); + + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading Sheet "',$sheetname,'" only<br />'; +$objReader->setLoadSheetsOnly($sheetname); +echo 'Loading Sheet using filter<br />'; +$objReader->setReadFilter($filterSubset); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader10.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader10.php new file mode 100644 index 0000000..eb43ff8 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader10.php @@ -0,0 +1,82 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #10</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #10</h1> +<h2>Simple File Reader Using a Configurable Read Filter</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; +$sheetname = 'Data Sheet #3'; + + +class MyReadFilter implements PHPExcel_Reader_IReadFilter +{ + private $_startRow = 0; + + private $_endRow = 0; + + private $_columns = array(); + + public function __construct($startRow, $endRow, $columns) { + $this->_startRow = $startRow; + $this->_endRow = $endRow; + $this->_columns = $columns; + } + + public function readCell($column, $row, $worksheetName = '') { + if ($row >= $this->_startRow && $row <= $this->_endRow) { + if (in_array($column,$this->_columns)) { + return true; + } + } + return false; + } +} + +$filterSubset = new MyReadFilter(9,15,range('G','K')); + + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading Sheet "',$sheetname,'" only<br />'; +$objReader->setLoadSheetsOnly($sheetname); +echo 'Loading Sheet using configurable filter<br />'; +$objReader->setReadFilter($filterSubset); +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader11.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader11.php new file mode 100644 index 0000000..7bbd808 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader11.php @@ -0,0 +1,91 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #11</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #11</h1> +<h2>Reading a Workbook in "Chunks" Using a Configurable Read Filter (Version 1)</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example2.xls'; + + +/** Define a Read Filter class implementing PHPExcel_Reader_IReadFilter */ +class chunkReadFilter implements PHPExcel_Reader_IReadFilter +{ + private $_startRow = 0; + + private $_endRow = 0; + + /** We expect a list of the rows that we want to read to be passed into the constructor */ + public function __construct($startRow, $chunkSize) { + $this->_startRow = $startRow; + $this->_endRow = $startRow + $chunkSize; + } + + public function readCell($column, $row, $worksheetName = '') { + // Only read the heading row, and the rows that were configured in the constructor + if (($row == 1) || ($row >= $this->_startRow && $row < $this->_endRow)) { + return true; + } + return false; + } +} + + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + + +echo '<hr />'; + + +/** Define how many rows we want for each "chunk" **/ +$chunkSize = 20; + +/** Loop to read our worksheet in "chunk size" blocks **/ +for ($startRow = 2; $startRow <= 240; $startRow += $chunkSize) { + echo 'Loading WorkSheet using configurable filter for headings row 1 and for rows ',$startRow,' to ',($startRow+$chunkSize-1),'<br />'; + /** Create a new Instance of our Read Filter, passing in the limits on which rows we want to read **/ + $chunkFilter = new chunkReadFilter($startRow,$chunkSize); + /** Tell the Reader that we want to use the new Read Filter that we've just Instantiated **/ + $objReader->setReadFilter($chunkFilter); + /** Load only the rows that match our filter from $inputFileName to a PHPExcel Object **/ + $objPHPExcel = $objReader->load($inputFileName); + + // Do some processing here + + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); + var_dump($sheetData); + echo '<br /><br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader12.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader12.php new file mode 100644 index 0000000..e6789c2 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader12.php @@ -0,0 +1,94 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #12</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #12</h1> +<h2>Reading a Workbook in "Chunks" Using a Configurable Read Filter (Version 2)</h2> +<?php + +/** Set Include path to point at the PHPExcel Classes folder **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** Include PHPExcel_IOFactory **/ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example2.xls'; + + +/** Define a Read Filter class implementing PHPExcel_Reader_IReadFilter */ +class chunkReadFilter implements PHPExcel_Reader_IReadFilter +{ + private $_startRow = 0; + + private $_endRow = 0; + + /** Set the list of rows that we want to read */ + public function setRows($startRow, $chunkSize) { + $this->_startRow = $startRow; + $this->_endRow = $startRow + $chunkSize; + } + + public function readCell($column, $row, $worksheetName = '') { + // Only read the heading row, and the rows that are configured in $this->_startRow and $this->_endRow + if (($row == 1) || ($row >= $this->_startRow && $row < $this->_endRow)) { + return true; + } + return false; + } +} + + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + + +echo '<hr />'; + + +/** Define how many rows we want to read for each "chunk" **/ +$chunkSize = 20; +/** Create a new Instance of our Read Filter **/ +$chunkFilter = new chunkReadFilter(); + +/** Tell the Reader that we want to use the Read Filter that we've Instantiated **/ +$objReader->setReadFilter($chunkFilter); + +/** Loop to read our worksheet in "chunk size" blocks **/ +for ($startRow = 2; $startRow <= 240; $startRow += $chunkSize) { + echo 'Loading WorkSheet using configurable filter for headings row 1 and for rows ',$startRow,' to ',($startRow+$chunkSize-1),'<br />'; + /** Tell the Read Filter, the limits on which rows we want to read this iteration **/ + $chunkFilter->setRows($startRow,$chunkSize); + /** Load only the rows that match our filter from $inputFileName to a PHPExcel Object **/ + $objPHPExcel = $objReader->load($inputFileName); + + // Do some processing here + + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); + var_dump($sheetData); + echo '<br /><br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader13.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader13.php new file mode 100644 index 0000000..3e11e8b --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader13.php @@ -0,0 +1,60 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #13</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #13</h1> +<h2>Simple File Reader for Multiple CSV Files</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'CSV'; +$inputFileNames = array('./sampleData/example1.csv','./sampleData/example2.csv'); + +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +$inputFileName = array_shift($inputFileNames); +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' into WorkSheet #1 using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objPHPExcel = $objReader->load($inputFileName); +$objPHPExcel->getActiveSheet()->setTitle(pathinfo($inputFileName,PATHINFO_BASENAME)); +foreach($inputFileNames as $sheet => $inputFileName) { + echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' into WorkSheet #',($sheet+2),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; + $objReader->setSheetIndex($sheet+1); + $objReader->loadIntoExisting($inputFileName,$objPHPExcel); + $objPHPExcel->getActiveSheet()->setTitle(pathinfo($inputFileName,PATHINFO_BASENAME)); +} + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo '<b>Worksheet #',$sheetIndex,' -> ',$loadedSheetName,'</b><br />'; + $objPHPExcel->setActiveSheetIndexByName($loadedSheetName); + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); + var_dump($sheetData); + echo '<br /><br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader14.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader14.php new file mode 100644 index 0000000..1cef710 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader14.php @@ -0,0 +1,105 @@ +<?php + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #15</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #14</h1> +<h2>Reading a Large CSV file in "Chunks" to split across multiple Worksheets</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'CSV'; +$inputFileName = './sampleData/example2.csv'; + +/** Define a Read Filter class implementing PHPExcel_Reader_IReadFilter */ +class chunkReadFilter implements PHPExcel_Reader_IReadFilter +{ + private $_startRow = 0; + + private $_endRow = 0; + + /** Set the list of rows that we want to read */ + public function setRows($startRow, $chunkSize) { + $this->_startRow = $startRow; + $this->_endRow = $startRow + $chunkSize; + } + + public function readCell($column, $row, $worksheetName = '') { + // Only read the heading row, and the rows that are configured in $this->_startRow and $this->_endRow + if (($row == 1) || ($row >= $this->_startRow && $row < $this->_endRow)) { + return true; + } + return false; + } +} + + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + + +echo '<hr />'; + + +/** Define how many rows we want to read for each "chunk" **/ +$chunkSize = 100; +/** Create a new Instance of our Read Filter **/ +$chunkFilter = new chunkReadFilter(); + +/** Tell the Reader that we want to use the Read Filter that we've Instantiated **/ +/** and that we want to store it in contiguous rows/columns **/ +$objReader->setReadFilter($chunkFilter) + ->setContiguous(true); + + +/** Instantiate a new PHPExcel object manually **/ +$objPHPExcel = new PHPExcel(); + +/** Set a sheet index **/ +$sheet = 0; +/** Loop to read our worksheet in "chunk size" blocks **/ +/** $startRow is set to 2 initially because we always read the headings in row #1 **/ +for ($startRow = 2; $startRow <= 240; $startRow += $chunkSize) { + echo 'Loading WorkSheet #',($sheet+1),' using configurable filter for headings row 1 and for rows ',$startRow,' to ',($startRow+$chunkSize-1),'<br />'; + /** Tell the Read Filter, the limits on which rows we want to read this iteration **/ + $chunkFilter->setRows($startRow,$chunkSize); + + /** Increment the worksheet index pointer for the Reader **/ + $objReader->setSheetIndex($sheet); + /** Load only the rows that match our filter into a new worksheet in the PHPExcel Object **/ + $objReader->loadIntoExisting($inputFileName,$objPHPExcel); + /** Set the worksheet title (to reference the "sheet" of data that we've loaded) **/ + /** and increment the sheet index as well **/ + $objPHPExcel->getActiveSheet()->setTitle('Country Data #'.(++$sheet)); +} + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo '<b>Worksheet #',$sheetIndex,' -> ',$loadedSheetName,'</b><br />'; + $objPHPExcel->setActiveSheetIndexByName($loadedSheetName); + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,false,false,true); + var_dump($sheetData); + echo '<br />'; +} + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader15.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader15.php new file mode 100644 index 0000000..566c3c9 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader15.php @@ -0,0 +1,71 @@ +<?php + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #15</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #15</h1> +<h2>Simple File Reader for Tab-Separated Value File using the Advanced Value Binder</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +PHPExcel_Cell::setValueBinder( new PHPExcel_Cell_AdvancedValueBinder() ); + + +$inputFileType = 'CSV'; +$inputFileName = './sampleData/example1.tsv'; + +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' into WorkSheet #1 using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader->setDelimiter("\t"); +$objPHPExcel = $objReader->load($inputFileName); +$objPHPExcel->getActiveSheet()->setTitle(pathinfo($inputFileName,PATHINFO_BASENAME)); + + +echo '<hr />'; + +echo $objPHPExcel->getSheetCount(),' worksheet',(($objPHPExcel->getSheetCount() == 1) ? '' : 's'),' loaded<br /><br />'; +$loadedSheetNames = $objPHPExcel->getSheetNames(); +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo '<b>Worksheet #',$sheetIndex,' -> ',$loadedSheetName,' (Formatted)</b><br />'; + $objPHPExcel->setActiveSheetIndexByName($loadedSheetName); + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); + var_dump($sheetData); + echo '<br />'; +} + +echo '<hr />'; + +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo '<b>Worksheet #',$sheetIndex,' -> ',$loadedSheetName,' (Unformatted)</b><br />'; + $objPHPExcel->setActiveSheetIndexByName($loadedSheetName); + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,false,true); + var_dump($sheetData); + echo '<br />'; +} + +echo '<hr />'; + +foreach($loadedSheetNames as $sheetIndex => $loadedSheetName) { + echo '<b>Worksheet #',$sheetIndex,' -> ',$loadedSheetName,' (Raw)</b><br />'; + $objPHPExcel->setActiveSheetIndexByName($loadedSheetName); + $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,false,false,true); + var_dump($sheetData); + echo '<br />'; +} + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader16.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader16.php new file mode 100644 index 0000000..d36513e --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader16.php @@ -0,0 +1,46 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #16</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #16</h1> +<h2>Handling Loader Exceptions using Try/Catch</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileName = './sampleData/example_1.xls'; +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory to identify the format<br />'; +try { + $objPHPExcel = PHPExcel_IOFactory::load($inputFileName); +} catch(Exception $e) { + die('Error loading file "'.pathinfo($inputFileName,PATHINFO_BASENAME).'": '.$e->getMessage()); +} + + +echo '<hr />'; + +$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); +var_dump($sheetData); + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader17.php b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader17.php new file mode 100644 index 0000000..b0ef791 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/exampleReader17.php @@ -0,0 +1,52 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reader Example #17</title> + +</head> +<body> + +<h1>PHPExcel Reader Example #17</h1> +<h2>Simple File Reader Loading Several Named WorkSheets</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +// $inputFileType = 'Excel2007'; +// $inputFileType = 'Excel2003XML'; +// $inputFileType = 'OOCalc'; +// $inputFileType = 'Gnumeric'; +$inputFileName = './sampleData/example1.xls'; + +echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; +$objReader = PHPExcel_IOFactory::createReader($inputFileType); + + +/** Read the list of Worksheet Names from the Workbook file **/ +echo 'Read the list of Worksheets in the WorkBook<br />'; +$worksheetNames = $objReader->listWorksheetNames($inputFileName); + +echo 'There are ',count($worksheetNames),' worksheet',((count($worksheetNames) == 1) ? '' : 's'),' in the workbook<br /><br />'; +foreach($worksheetNames as $worksheetName) { + echo $worksheetName,'<br />'; +} + + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/_notes/dwsync.xml new file mode 100644 index 0000000..c9b6dd7 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/_notes/dwsync.xml @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="example1.csv" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="example1.tsv" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="example1.xls" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="example2.csv" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972061800000000" Dst="-1" /> +<file name="example2.xls" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="example1.xls" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="example2.xls" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="example1.csv" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="example1.tsv" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="example2.csv" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="example1.xls" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997102200000000" Dst="-1" /> +<file name="example2.xls" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997102200000000" Dst="-1" /> +<file name="example1.csv" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997102200000000" Dst="-1" /> +<file name="example1.tsv" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997102200000000" Dst="-1" /> +<file name="example2.csv" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997102200000000" Dst="-1" /> +<file name="example1.xls" server="62.244.88.111/actions-fendt/lisa/" local="131244560472455074" remote="131260197000000000" Dst="1" /> +<file name="example2.xls" server="62.244.88.111/actions-fendt/lisa/" local="131244560473203458" remote="131260197000000000" Dst="1" /> +<file name="example1.csv" server="62.244.88.111/actions-fendt/lisa/" local="131244560473753916" remote="131260197000000000" Dst="1" /> +<file name="example1.tsv" server="62.244.88.111/actions-fendt/lisa/" local="131244560474189105" remote="131260197000000000" Dst="1" /> +<file name="example2.csv" server="62.244.88.111/actions-fendt/lisa/" local="131244560474641916" remote="131260197000000000" Dst="1" /> +<file name="example1.xls" server="62.244.88.21/amashow/" local="131414752806323488" remote="131414681400000000" Dst="2" /> +<file name="example2.xls" server="62.244.88.21/amashow/" local="131414752806824762" remote="131414681400000000" Dst="2" /> +<file name="example1.csv" server="62.244.88.21/amashow/" local="131414752807007678" remote="131414681400000000" Dst="2" /> +<file name="example1.tsv" server="62.244.88.21/amashow/" local="131414752807196567" remote="131414681400000000" Dst="2" /> +<file name="example2.csv" server="62.244.88.21/amashow/" local="131414752807575585" remote="131414681400000000" Dst="2" /> +<file name="example1.csv" server="62.244.88.21/deciday/" local="131919461704638832" remote="131826018000000000" Dst="1" /> +<file name="example1.tsv" server="62.244.88.21/deciday/" local="131919461704829063" remote="131826018000000000" Dst="1" /> +<file name="example1.xls" server="62.244.88.21/deciday/" local="131919461705671327" remote="131826018000000000" Dst="1" /> +<file name="example2.csv" server="62.244.88.21/deciday/" local="131919461705861194" remote="131826018000000000" Dst="1" /> +<file name="example2.xls" server="62.244.88.21/deciday/" local="131919461706650133" remote="131826018000000000" Dst="1" /> +<file name="example1.csv" server="62.244.88.21/deciday_18/" local="131414752807007678" remote="131825946000000000" Dst="2" /> +<file name="example1.tsv" server="62.244.88.21/deciday_18/" local="131414752807196567" remote="131825946000000000" Dst="2" /> +<file name="example1.xls" server="62.244.88.21/deciday_18/" local="131414752806323488" remote="131825946000000000" Dst="2" /> +<file name="example2.csv" server="62.244.88.21/deciday_18/" local="131414752807575585" remote="131825946000000000" Dst="2" /> +<file name="example2.xls" server="62.244.88.21/deciday_18/" local="131414752806824762" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example1.csv b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example1.csv new file mode 100644 index 0000000..b8cdf18 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example1.csv @@ -0,0 +1,4 @@ +First Name,Last Name,Nationality,Gender,Date of Birth,Time of Birth,Date/Time,PHP Coder,Sanity %Age +Mark,Baker,British,M,19-Dec-1960,01:30,=E2+F2,TRUE,32% +Toni,Baker,British,F,24-Nov-1950,20:00,=E3+F3,FALSE,95% +Rachel,Baker,British,F,7-Dec-1982,00:15,=E4+F4,FALSE,100% \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example1.tsv b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example1.tsv new file mode 100644 index 0000000..29c9297 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example1.tsv @@ -0,0 +1,4 @@ +First Name Last Name Nationality Gender Date of Birth Time of Birth Date/Time PHP Coder Sanity %Age +Mark Baker British M 19-Dec-1960 01:30 =E2+F2 TRUE 32% +Toni Baker British F 24-Nov-1950 20:00 =E3+F3 FALSE 95% +Rachel Baker British F 7-Dec-1982 00:15 =E4+F4 FALSE 100% \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example1.xls b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example1.xls new file mode 100644 index 0000000..bd9bb11 Binary files /dev/null and b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example1.xls differ diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example2.csv b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example2.csv new file mode 100644 index 0000000..1750f1b --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example2.csv @@ -0,0 +1,223 @@ +"City","Country","Latitude","Longitude" +"Kabul","Afghanistan",34.528455,69.171703 +"Tirane","Albania",41.33,19.82 +"Algiers","Algeria",36.752887,3.042048 +"Pago Pago","American Samoa",-14.27933,-170.700897 +"Andorra la Vella","Andorra",42.507531,1.521816 +"Luanda","Angola",-8.838333,13.234444 +"Buenos Aires","Argentina",-34.608417,-58.373161 +"Yerevan","Armenia",40.183333,44.516667 +"Oranjestad","Aruba",12.52458,-70.026459 +"Canberra","Australia",-35.3075,149.124417 +"Vienna","Austria",48.208333,16.373056 +"Baku","Azerbaijan",40.379571,49.891233 +"Nassau","Bahamas",25.06,-77.345 +"Manama","Bahrain",26.216667,50.583333 +"Dhaka","Bangladesh",23.709921,90.407143 +"Bridgetown","Barbados",13.096111,-59.608333 +"Minsk","Belarus",53.9,27.566667 +"Brussels","Belgium",50.846281,4.354727 +"Belmopan","Belize",17.251389,-88.766944 +"Thimphu","Bhutan",27.466667,89.641667 +"La Paz","Bolivia",-16.49901,-68.146248 +"Sarajevo","Bosnia and Herzegovina",43.8476,18.3564 +"Gaborone","Botswana",-24.65411,25.908739 +"Brasilia","Brazil",-15.780148,-47.92917 +"Road Town","British Virgin Islands",18.433333,-64.616667 +"Bandar Seri Begawan","Brunei Darussalam",4.9431,114.9425 +"Sofia","Bulgaria",42.697626,23.322284 +"Ouagadougou","Burkina Faso",12.364637,-1.533864 +"Bujumbura","Burundi",-3.361378,29.359878 +"Phnom Penh","Cambodia",11.55,104.916667 +"Yaounde","Cameroon",3.866667,11.516667 +"Ottawa","Canada",45.423494,-75.697933 +"Praia","Cape Verde",14.920833,-23.508333 +"George Town","Cayman Islands",19.286932,-81.367439 +"Bangui","Central African Republic",4.361698,18.555975 +"N'Djamena","Chad",12.104797,15.044506 +"Santiago","Chile",-33.42536,-70.566466 +"Beijing","China",39.904667,116.408198 +"Bogota","Colombia",4.647302,-74.096268 +"Moroni","Comoros",-11.717216,43.247315 +"Brazzaville","Congo",-4.266667,15.283333 +"San Jose","Costa Rica",9.933333,-84.083333 +"Yamoussoukro","Cote d'Ivoire",6.816667,-5.283333 +"Zagreb","Croatia",45.814912,15.978515 +"Havana","Cuba",23.133333,-82.366667 +"Nicosia","Cyprus",35.166667,33.366667 +"Prague","Czech Republic",50.087811,14.42046 +"Kinshasa","Congo",-4.325,15.322222 +"Copenhagen","Denmark",55.676294,12.568116 +"Djibouti","Djibouti",11.588,43.145 +"Roseau","Dominica",15.301389,-61.388333 +"Santo Domingo","Dominican Republic",18.5,-69.983333 +"Dili","East Timor",-8.566667,125.566667 +"Quito","Ecuador",-0.229498,-78.524277 +"Cairo","Egypt",30.064742,31.249509 +"San Salvador","El Salvador",13.69,-89.190003 +"Malabo","Equatorial Guinea",3.75,8.783333 +"Asmara","Eritrea",15.33236,38.92617 +"Tallinn","Estonia",59.438862,24.754472 +"Addis Ababa","Ethiopia",9.022736,38.746799 +"Stanley","Falkland Islands",-51.700981,-57.84919 +"Torshavn","Faroe Islands",62.017707,-6.771879 +"Suva","Fiji",-18.1416,178.4419 +"Helsinki","Finland",60.169813,24.93824 +"Paris","France",48.856667,2.350987 +"Cayenne","French Guiana",4.9227,-52.3269 +"Papeete","French Polynesia",-17.535021,-149.569595 +"Libreville","Gabon",0.390841,9.453644 +"Banjul","Gambia",13.453056,-16.5775 +"T'bilisi","Georgia",41.716667,44.783333 +"Berlin","Germany",52.523405,13.4114 +"Accra","Ghana",5.555717,-0.196306 +"Athens","Greece",37.97918,23.716647 +"Nuuk","Greenland",64.18362,-51.721407 +"Basse-Terre","Guadeloupe",15.998503,-61.72202 +"Guatemala","Guatemala",14.641389,-90.513056 +"St. Peter Port","Guernsey",49.458858,-2.534752 +"Conakry","Guinea",9.537029,-13.67847 +"Bissau","Guinea-Bissau",11.866667,-15.6 +"Georgetown","Guyana",6.804611,-58.154831 +"Port-au-Prince","Haiti",18.539269,-72.336408 +"Tegucigalpa","Honduras",14.082054,-87.206285 +"Budapest","Hungary",47.498406,19.040758 +"Reykjavik","Iceland",64.135338,-21.89521 +"New Delhi","India",28.635308,77.22496 +"Jakarta","Indonesia",-6.211544,106.845172 +"Tehran","Iran",35.696216,51.422945 +"Baghdad","Iraq",33.3157,44.3922 +"Dublin","Ireland",53.344104,-6.267494 +"Jerusalem","Israel",31.7857,35.2007 +"Rome","Italy",41.895466,12.482324 +"Kingston","Jamaica",17.992731,-76.792009 +"St. Helier","Jersey",49.190278,-2.108611 +"Amman","Jordan",31.956578,35.945695 +"Astana","Kazakhstan",51.10,71.30 +"Nairobi","Kenya",-01.17,36.48 +"Tarawa","Kiribati",01.30,173.00 +"Seoul","South Korea",37.31,126.58 +"Kuwait City","Kuwait",29.30,48.00 +"Bishkek","Kyrgyzstan",42.54,74.46 +"Riga","Latvia",56.53,24.08 +"Beirut","Lebanon",33.53,35.31 +"Maseru","Lesotho",-29.18,27.30 +"Monrovia","Liberia",06.18,-10.47 +"Vaduz","Liechtenstein",47.08,09.31 +"Vilnius","Lithuania",54.38,25.19 +"Luxembourg","Luxembourg",49.37,06.09 +"Antananarivo","Madagascar",-18.55,47.31 +"Lilongwe","Malawi",-14.00,33.48 +"Kuala Lumpur","Malaysia",03.09,101.41 +"Male","Maldives",04.00,73.28 +"Bamako","Mali",12.34,-07.55 +"Valletta","Malta",35.54,14.31 +"Fort-de-France","Martinique",14.36,-61.02 +"Nouakchott","Mauritania",-20.10,57.30 +"Mamoudzou","Mayotte",-12.48,45.14 +"Mexico City","Mexico",19.20,-99.10 +"Palikir","Micronesia",06.55,158.09 +"Chisinau","Moldova",47.02,28.50 +"Maputo","Mozambique",-25.58,32.32 +"Yangon","Myanmar",16.45,96.20 +"Windhoek","Namibia",-22.35,17.04 +"Kathmandu","Nepal",27.45,85.20 +"Amsterdam","Netherlands",52.23,04.54 +"Willemstad","Netherlands Antilles",12.05,-69.00 +"Noumea","New Caledonia",-22.17,166.30 +"Wellington","New Zealand",-41.19,174.46 +"Managua","Nicaragua",12.06,-86.20 +"Niamey","Niger",13.27,02.06 +"Abuja","Nigeria",09.05,07.32 +"Kingston","Norfolk Island",-45.20,168.43 +"Saipan","Northern Mariana Islands",15.12,145.45 +"Oslo","Norway",59.55,10.45 +"Masqat","Oman",23.37,58.36 +"Islamabad","Pakistan",33.40,73.10 +"Koror","Palau",07.20,134.28 +"Panama City","Panama",09.00,-79.25 +"Port Moresby","Papua New Guinea",-09.24,147.08 +"Asuncion","Paraguay",-25.10,-57.30 +"Lima","Peru",-12.00,-77.00 +"Manila","Philippines",14.40,121.03 +"Warsaw","Poland",52.13,21.00 +"Lisbon","Portugal",38.42,-09.10 +"San Juan","Puerto Rico",18.28,-66.07 +"Doha","Qatar",25.15,51.35 +"Bucuresti","Romania",44.27,26.10 +"Moskva","Russian Federation",55.45,37.35 +"Kigali","Rawanda",-01.59,30.04 +"Basseterre","Saint Kitts and Nevis",17.17,-62.43 +"Castries","Saint Lucia",14.02,-60.58 +"Saint-Pierre","Saint Pierre and Miquelon",46.46,-56.12 +"Apia","Samoa",-13.50,-171.50 +"San Marino","San Marino",43.55,12.30 +"Sao Tome","Sao Tome and Principe",00.10,06.39 +"Riyadh","Saudi Arabia",24.41,46.42 +"Dakar","Senegal",14.34,-17.29 +"Freetown","Sierra Leone",08.30,-13.17 +"Bratislava","Slovakia",48.10,17.07 +"Ljubljana","Slovenia",46.04,14.33 +"Honiara","Solomon Islands",-09.27,159.57 +"Mogadishu","Somalia",02.02,45.25 +"Pretoria","South Africa",-25.44,28.12 +"Madrid","Spain",40.25,-03.45 +"Khartoum","Sudan",15.31,32.35 +"Paramaribo","Suriname",05.50,-55.10 +"Mbabane","Swaziland",-26.18,31.06 +"Stockholm","Sweden",59.20,18.03 +"Bern","Switzerland",46.57,07.28 +"Damascus","Syrian Arab Republic",33.30,36.18 +"Dushanbe","Tajikistan",38.33,68.48 +"Bangkok","Thailand",13.45,100.35 +"Lome","Togo",06.09,01.20 +"Nuku'alofa","Tonga",-21.10,-174.00 +"Tunis","Tunisia",36.50,10.11 +"Ankara","Turkey",39.57,32.54 +"Ashgabat","Turkmenistan",38.00,57.50 +"Funafuti","Tuvalu",-08.31,179.13 +"Kampala","Uganda",00.20,32.30 +"Kiev","Ukraine",50.30,30.28 +"Abu Dhabi","United Arab Emirates",24.28,54.22 +"London","United Kingdom",51.36,-00.05 +"Dodoma","Tanzania",-06.08,35.45 +"Washington DC","United States of America",39.91,-77.02 +"Montevideo","Uruguay",-34.50,-56.11 +"Tashkent","Uzbekistan",41.20,69.10 +"Port-Vila","Vanuatu",-17.45,168.18 +"Caracas","Venezuela",10.30,-66.55 +"Hanoi","Viet Nam",21.05,105.55 +"Belgrade","Yugoslavia",44.50,20.37 +"Lusaka","Zambia",-15.28,28.16 +"Harare","Zimbabwe",-17.43,31.02 +"St. John's","Antigua and Barbuda",17.08,-61.50 +"Porto Novo","Benin",06.30,02.47 +"Hamilton","Bermuda"","32.18,-64.48 +"Avarua","Cook Islands",-21.12,-159.46 +"St. George's","Grenada",12.04,-61.44 +"Agaa","Guam",13.28,144.45 +"Victoria","Hong Kong",22.16,114.13 +"Tokyo","Japan",35.40,139.45 +"Pyongyang","North Korea",39.00,125.47 +"Vientiane","Laos",17.59,102.38 +"Tripoli","Libya",32.54,013.11 +"Skopje","Macedonia",42.00,021.28 +"Majuro","Marshall Islands",07.05,171.08 +"Port Louis","Mauritius",-20.10,57.30 +"Monaco","Monaco",43.44,007.25 +"Ulan Bator","Mongolia",47.54,106.52 +"Plymouth","Montserrat",16.44,-62.14 +"Rabat","Morocco",34.02,-06.51 +"Alofi","Niue",-14.27,-178.05 +"Saint-Denis","Runion",-20.52,55.27 +"Victoria","Seychelles",-04.38,55.28 +"Singapore","Singapore",01.18,103.50 +"Colombo","Sri Lanka",06.55,79.52 +"Kingstown","St Vincent and the Grenadines",13.12,-61.14 +"Taipei","Taiwan",25.50,121.32 +"Port-of-Spain","Trinidad and Tobago",10.38,-61.31 +"Cockburn Harbour","Turks and Caicos Islands",21.30,-71.30 +"Charlotte Amalie","US Virgin Islands",18.22,-64.56 +"Vatican City","Vatican State",41.54,12.27 +"Layoune","Western Sahara",27.10,-13.11 +"San'a","Yemen",15.24,44.14 diff --git a/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example2.xls b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example2.xls new file mode 100644 index 0000000..dd213ab Binary files /dev/null and b/site/config/PHPExcel/Documentation/Examples/Reader/sampleData/example2.xls differ diff --git a/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/_notes/dwsync.xml new file mode 100644 index 0000000..a450efb --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/_notes/dwsync.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="exampleWorkBookReader01.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="exampleWorkBookReader02.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="exampleWorkBookReader03.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="exampleWorkBookReader04.php" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="exampleWorkBookReader01.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleWorkBookReader02.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleWorkBookReader03.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleWorkBookReader04.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="exampleWorkBookReader01.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997101600000000" Dst="-1" /> +<file name="exampleWorkBookReader02.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997101600000000" Dst="-1" /> +<file name="exampleWorkBookReader03.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997101600000000" Dst="-1" /> +<file name="exampleWorkBookReader04.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997101600000000" Dst="-1" /> +<file name="exampleWorkBookReader01.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560459675346" remote="131260197000000000" Dst="1" /> +<file name="exampleWorkBookReader02.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560460085938" remote="131260197000000000" Dst="1" /> +<file name="exampleWorkBookReader03.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560460535095" remote="131260197000000000" Dst="1" /> +<file name="exampleWorkBookReader04.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560460962495" remote="131260197000000000" Dst="1" /> +<file name="exampleWorkBookReader01.php" server="62.244.88.21/amashow/" local="131414752795635324" remote="131414681400000000" Dst="2" /> +<file name="exampleWorkBookReader02.php" server="62.244.88.21/amashow/" local="131414752795973608" remote="131414681400000000" Dst="2" /> +<file name="exampleWorkBookReader04.php" server="62.244.88.21/amashow/" local="131414752796568912" remote="131414681400000000" Dst="2" /> +<file name="exampleWorkBookReader03.php" server="62.244.88.21/amashow/" local="131414752796169289" remote="131414681400000000" Dst="2" /> +<file name="exampleWorkBookReader01.php" server="62.244.88.21/deciday/" local="131919461707397650" remote="131826018000000000" Dst="1" /> +<file name="exampleWorkBookReader04.php" server="62.244.88.21/deciday/" local="131919461708059981" remote="131826018000000000" Dst="1" /> +<file name="exampleWorkBookReader03.php" server="62.244.88.21/deciday/" local="131919461708256852" remote="131826018000000000" Dst="1" /> +<file name="exampleWorkBookReader02.php" server="62.244.88.21/deciday/" local="131919461707166833" remote="131826018000000000" Dst="1" /> +<file name="exampleWorkBookReader01.php" server="62.244.88.21/deciday_18/" local="131414752795635324" remote="131825946000000000" Dst="2" /> +<file name="exampleWorkBookReader02.php" server="62.244.88.21/deciday_18/" local="131414752795973608" remote="131825946000000000" Dst="2" /> +<file name="exampleWorkBookReader03.php" server="62.244.88.21/deciday_18/" local="131414752796169289" remote="131825946000000000" Dst="2" /> +<file name="exampleWorkBookReader04.php" server="62.244.88.21/deciday_18/" local="131414752796568912" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader01.php b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader01.php new file mode 100644 index 0000000..4f8dfdf --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader01.php @@ -0,0 +1,93 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reading WorkBook Data Example #01</title> + +</head> +<body> + +<h1>PHPExcel Reading WorkBook Data Example #01</h1> +<h2>Read the WorkBook Properties</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +$inputFileName = './sampleData/example1.xls'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +/** Read the document's creator property **/ +$creator = $objPHPExcel->getProperties()->getCreator(); +echo '<b>Document Creator: </b>',$creator,'<br />'; + +/** Read the Date when the workbook was created (as a PHP timestamp value) **/ +$creationDatestamp = $objPHPExcel->getProperties()->getCreated(); +/** Format the date and time using the standard PHP date() function **/ +$creationDate = date('l, d<\s\up>S</\s\up> F Y',$creationDatestamp); +$creationTime = date('g:i A',$creationDatestamp); +echo '<b>Created On: </b>',$creationDate,' at ',$creationTime,'<br />'; + +/** Read the name of the last person to modify this workbook **/ +$modifiedBy = $objPHPExcel->getProperties()->getLastModifiedBy(); +echo '<b>Last Modified By: </b>',$modifiedBy,'<br />'; + +/** Read the Date when the workbook was last modified (as a PHP timestamp value) **/ +$modifiedDatestamp = $objPHPExcel->getProperties()->getModified(); +/** Format the date and time using the standard PHP date() function **/ +$modifiedDate = date('l, d<\s\up>S</\s\up> F Y',$modifiedDatestamp); +$modifiedTime = date('g:i A',$modifiedDatestamp); +echo '<b>Last Modified On: </b>',$modifiedDate,' at ',$modifiedTime,'<br />'; + +/** Read the workbook title property **/ +$workbookTitle = $objPHPExcel->getProperties()->getTitle(); +echo '<b>Title: </b>',$workbookTitle,'<br />'; + +/** Read the workbook description property **/ +$description = $objPHPExcel->getProperties()->getDescription(); +echo '<b>Description: </b>',$description,'<br />'; + +/** Read the workbook subject property **/ +$subject = $objPHPExcel->getProperties()->getSubject(); +echo '<b>Subject: </b>',$subject,'<br />'; + +/** Read the workbook keywords property **/ +$keywords = $objPHPExcel->getProperties()->getKeywords(); +echo '<b>Keywords: </b>',$keywords,'<br />'; + +/** Read the workbook category property **/ +$category = $objPHPExcel->getProperties()->getCategory(); +echo '<b>Category: </b>',$category,'<br />'; + +/** Read the workbook company property **/ +$company = $objPHPExcel->getProperties()->getCompany(); +echo '<b>Company: </b>',$company,'<br />'; + +/** Read the workbook manager property **/ +$manager = $objPHPExcel->getProperties()->getManager(); +echo '<b>Manager: </b>',$manager,'<br />'; + + +?> +<body> +</html> diff --git a/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader02.php b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader02.php new file mode 100644 index 0000000..b8c359d --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader02.php @@ -0,0 +1,52 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reading WorkBook Data Example #02</title> + +</head> +<body> + +<h1>PHPExcel Reading WorkBook Data Example #02</h1> +<h2>Read a list of Custom Properties for a WorkBook</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel2007'; +$inputFileName = './sampleData/example1.xlsx'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +/** Read an array list of any custom properties for this document **/ +$customPropertyList = $objPHPExcel->getProperties()->getCustomProperties(); + +echo '<b>Custom Property names: </b><br />'; +foreach($customPropertyList as $customPropertyName) { + echo $customPropertyName,'<br />'; +} + + + +?> +<body> +</html> diff --git a/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader03.php b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader03.php new file mode 100644 index 0000000..8fb350d --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader03.php @@ -0,0 +1,80 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reading WorkBook Data Example #03</title> + +</head> +<body> + +<h1>PHPExcel Reading WorkBook Data Example #03</h1> +<h2>Read Custom Property Values for a WorkBook</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel2007'; +$inputFileName = './sampleData/example1.xlsx'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +/** Read an array list of any custom properties for this document **/ +$customPropertyList = $objPHPExcel->getProperties()->getCustomProperties(); + +echo '<b>Custom Properties: </b><br />'; +/** Loop through the list of custom properties **/ +foreach($customPropertyList as $customPropertyName) { + echo '<b>',$customPropertyName,': </b>'; + /** Retrieve the property value **/ + $propertyValue = $objPHPExcel->getProperties()->getCustomPropertyValue($customPropertyName); + /** Retrieve the property type **/ + $propertyType = $objPHPExcel->getProperties()->getCustomPropertyType($customPropertyName); + + /** Manipulate properties as appropriate for display purposes **/ + switch($propertyType) { + case 'i' : // integer + $propertyType = 'integer number'; + break; + case 'f' : // float + $propertyType = 'floating point number'; + break; + case 's' : // string + $propertyType = 'string'; + break; + case 'd' : // date + $propertyValue = date('l, d<\s\up>S</\s\up> F Y g:i A',$propertyValue); + $propertyType = 'date'; + break; + case 'b' : // boolean + $propertyValue = ($propertyValue) ? 'TRUE' : 'FALSE'; + $propertyType = 'boolean'; + break; + } + + echo $propertyValue,' (',$propertyType,')<br />'; +} + + + +?> +<body> +</html> diff --git a/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader04.php b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader04.php new file mode 100644 index 0000000..05ff637 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/exampleWorkBookReader04.php @@ -0,0 +1,55 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Reading WorkBook Data Example #04</title> + +</head> +<body> + +<h1>PHPExcel Reading WorkBook Data Example #04</h1> +<h2>Get a List of the Worksheets in a WorkBook</h2> +<?php + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +$inputFileType = 'Excel5'; +$inputFileName = './sampleData/example2.xls'; + +/** Create a new Reader of the type defined in $inputFileType **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); + + +echo '<hr />'; + +echo 'Reading the number of Worksheets in the WorkBook<br />'; +/** Use the PHPExcel object's getSheetCount() method to get a count of the number of WorkSheets in the WorkBook */ +$sheetCount = $objPHPExcel->getSheetCount(); +echo 'There ',(($sheetCount == 1) ? 'is' : 'are'),' ',$sheetCount,' WorkSheet',(($sheetCount == 1) ? '' : 's'),' in the WorkBook<br /><br />'; + +echo 'Reading the names of Worksheets in the WorkBook<br />'; +/** Use the PHPExcel object's getSheetNames() method to get an array listing the names/titles of the WorkSheets in the WorkBook */ +$sheetNames = $objPHPExcel->getSheetNames(); +foreach($sheetNames as $sheetIndex => $sheetName) { + echo 'WorkSheet #',$sheetIndex,' is named "',$sheetName,'"<br />'; +} + + +?> +<body> +</html> diff --git a/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/_notes/dwsync.xml new file mode 100644 index 0000000..83fd362 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/_notes/dwsync.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="example1.xls" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="example1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="example2.xls" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="example1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="example1.xls" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="example2.xls" server="web2.pointvirgule.net/valtra/monope/" local="129973851909999999" remote="129984147600000000" Dst="-1" /> +<file name="example1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997101600000000" Dst="-1" /> +<file name="example1.xls" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997102200000000" Dst="-1" /> +<file name="example2.xls" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851909999999" remote="129997102200000000" Dst="-1" /> +<file name="example1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560461678639" remote="131260197000000000" Dst="1" /> +<file name="example1.xls" server="62.244.88.111/actions-fendt/lisa/" local="131244560462133751" remote="131260197000000000" Dst="1" /> +<file name="example2.xls" server="62.244.88.111/actions-fendt/lisa/" local="131244560462580098" remote="131260197000000000" Dst="1" /> +<file name="example1.xlsx" server="62.244.88.21/amashow/" local="131414752797293716" remote="131414681400000000" Dst="2" /> +<file name="example1.xls" server="62.244.88.21/amashow/" local="131414752797880801" remote="131414681400000000" Dst="2" /> +<file name="example2.xls" server="62.244.88.21/amashow/" local="131414752798294516" remote="131414681400000000" Dst="2" /> +<file name="example1.xls" server="62.244.88.21/deciday/" local="131919461710102100" remote="131826018000000000" Dst="1" /> +<file name="example2.xls" server="62.244.88.21/deciday/" local="131919461709861109" remote="131826018000000000" Dst="1" /> +<file name="example1.xlsx" server="62.244.88.21/deciday/" local="131919461709248313" remote="131826018000000000" Dst="1" /> +<file name="example1.xls" server="62.244.88.21/deciday_18/" local="131414752797880801" remote="131825946000000000" Dst="2" /> +<file name="example1.xlsx" server="62.244.88.21/deciday_18/" local="131414752797293716" remote="131825946000000000" Dst="2" /> +<file name="example2.xls" server="62.244.88.21/deciday_18/" local="131414752798294516" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xls b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xls new file mode 100644 index 0000000..0db0efd Binary files /dev/null and b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xls differ diff --git a/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xlsx b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xlsx new file mode 100644 index 0000000..2224dd4 Binary files /dev/null and b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/example1.xlsx differ diff --git a/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/example2.xls b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/example2.xls new file mode 100644 index 0000000..18bfcf4 Binary files /dev/null and b/site/config/PHPExcel/Documentation/Examples/Reading WorkBook Data/sampleData/example2.xls differ diff --git a/site/config/PHPExcel/Documentation/Examples/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/Examples/_notes/dwsync.xml new file mode 100644 index 0000000..c699414 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/_notes/dwsync.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="index.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851899999999" remote="129984147600000000" Dst="-1" /> +<file name="index.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851899999999" remote="129997101600000000" Dst="-1" /> +<file name="index.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560449163602" remote="131260197000000000" Dst="1" /> +<file name="index.php" server="62.244.88.21/amashow/" local="131414752782117688" remote="131414681400000000" Dst="2" /> +<file name="index.php" server="62.244.88.21/deciday/" local="131919461697902845" remote="131826018000000000" Dst="1" /> +<file name="index.php" server="62.244.88.21/deciday_18/" local="131414752782117688" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/Examples/index.php b/site/config/PHPExcel/Documentation/Examples/index.php new file mode 100644 index 0000000..8eb8574 --- /dev/null +++ b/site/config/PHPExcel/Documentation/Examples/index.php @@ -0,0 +1,50 @@ +<?php + +error_reporting(E_ALL); +set_time_limit(0); + +date_default_timezone_set('Europe/London'); + +?> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + +<title>PHPExcel Examples</title> + +</head> +<body> + +<?php + +$exampleTypeList = glob('./*',GLOB_ONLYDIR); + +foreach($exampleTypeList as $exampleType) { + + echo '<h1>PHPExcel ' . pathinfo($exampleType,PATHINFO_BASENAME) . ' Examples</h1>'; + + $exampleList = glob('./'.$exampleType.'/*.php'); + + foreach($exampleList as $exampleFile) { + $fileData = file_get_contents($exampleFile); + + $h1Pattern = '#<h1>(.*?)</h1>#'; + $h2Pattern = '#<h2>(.*?)</h2>#'; + + if (preg_match($h1Pattern, $fileData, $out)) { + $h1Text = $out[1]; + $h2Text = (preg_match($h2Pattern, $fileData, $out)) ? $out[1] : ''; + + echo '<a href="',$exampleFile,'">',$h1Text,'</a><br />'; + if (($h2Text > '') && + (pathinfo($exampleType,PATHINFO_BASENAME) != 'Calculations')) { + echo $h2Text,'<br />'; + } + } + + } +} + +?> +<body> +</html> \ No newline at end of file diff --git a/site/config/PHPExcel/Documentation/FunctionListByCategory.txt b/site/config/PHPExcel/Documentation/FunctionListByCategory.txt new file mode 100644 index 0000000..a5423eb --- /dev/null +++ b/site/config/PHPExcel/Documentation/FunctionListByCategory.txt @@ -0,0 +1,377 @@ +CATEGORY_CUBE + CUBEKPIMEMBER *** Not yet Implemented + CUBEMEMBER *** Not yet Implemented + CUBEMEMBERPROPERTY *** Not yet Implemented + CUBERANKEDMEMBER *** Not yet Implemented + CUBESET *** Not yet Implemented + CUBESETCOUNT *** Not yet Implemented + CUBEVALUE *** Not yet Implemented + +CATEGORY_DATABASE + DAVERAGE PHPExcel_Calculation_Database::DAVERAGE + DCOUNT PHPExcel_Calculation_Database::DCOUNT + DCOUNTA PHPExcel_Calculation_Database::DCOUNTA + DGET PHPExcel_Calculation_Database::DGET + DMAX PHPExcel_Calculation_Database::DMAX + DMIN PHPExcel_Calculation_Database::DMIN + DPRODUCT PHPExcel_Calculation_Database::DPRODUCT + DSTDEV PHPExcel_Calculation_Database::DSTDEV + DSTDEVP PHPExcel_Calculation_Database::DSTDEVP + DSUM PHPExcel_Calculation_Database::DSUM + DVAR PHPExcel_Calculation_Database::DVAR + DVARP PHPExcel_Calculation_Database::DVARP + +CATEGORY_DATE_AND_TIME + DATE PHPExcel_Calculation_DateTime::DATE + DATEDIF PHPExcel_Calculation_DateTime::DATEDIF + DATEVALUE PHPExcel_Calculation_DateTime::DATEVALUE + DAY PHPExcel_Calculation_DateTime::DAYOFMONTH + DAYS360 PHPExcel_Calculation_DateTime::DAYS360 + EDATE PHPExcel_Calculation_DateTime::EDATE + EOMONTH PHPExcel_Calculation_DateTime::EOMONTH + HOUR PHPExcel_Calculation_DateTime::HOUROFDAY + MINUTE PHPExcel_Calculation_DateTime::MINUTEOFHOUR + MONTH PHPExcel_Calculation_DateTime::MONTHOFYEAR + NETWORKDAYS PHPExcel_Calculation_DateTime::NETWORKDAYS + NOW PHPExcel_Calculation_DateTime::DATETIMENOW + SECOND PHPExcel_Calculation_DateTime::SECONDOFMINUTE + TIME PHPExcel_Calculation_DateTime::TIME + TIMEVALUE PHPExcel_Calculation_DateTime::TIMEVALUE + TODAY PHPExcel_Calculation_DateTime::DATENOW + WEEKDAY PHPExcel_Calculation_DateTime::DAYOFWEEK + WEEKNUM PHPExcel_Calculation_DateTime::WEEKOFYEAR + WORKDAY PHPExcel_Calculation_DateTime::WORKDAY + YEAR PHPExcel_Calculation_DateTime::YEAR + YEARFRAC PHPExcel_Calculation_DateTime::YEARFRAC + +CATEGORY_ENGINEERING + BESSELI PHPExcel_Calculation_Engineering::BESSELI + BESSELJ PHPExcel_Calculation_Engineering::BESSELJ + BESSELK PHPExcel_Calculation_Engineering::BESSELK + BESSELY PHPExcel_Calculation_Engineering::BESSELY + BIN2DEC PHPExcel_Calculation_Engineering::BINTODEC + BIN2HEX PHPExcel_Calculation_Engineering::BINTOHEX + BIN2OCT PHPExcel_Calculation_Engineering::BINTOOCT + COMPLEX PHPExcel_Calculation_Engineering::COMPLEX + CONVERT PHPExcel_Calculation_Engineering::CONVERTUOM + DEC2BIN PHPExcel_Calculation_Engineering::DECTOBIN + DEC2HEX PHPExcel_Calculation_Engineering::DECTOHEX + DEC2OCT PHPExcel_Calculation_Engineering::DECTOOCT + DELTA PHPExcel_Calculation_Engineering::DELTA + ERF PHPExcel_Calculation_Engineering::ERF + ERFC PHPExcel_Calculation_Engineering::ERFC + GESTEP PHPExcel_Calculation_Engineering::GESTEP + HEX2BIN PHPExcel_Calculation_Engineering::HEXTOBIN + HEX2DEC PHPExcel_Calculation_Engineering::HEXTODEC + HEX2OCT PHPExcel_Calculation_Engineering::HEXTOOCT + IMABS PHPExcel_Calculation_Engineering::IMABS + IMAGINARY PHPExcel_Calculation_Engineering::IMAGINARY + IMARGUMENT PHPExcel_Calculation_Engineering::IMARGUMENT + IMCONJUGATE PHPExcel_Calculation_Engineering::IMCONJUGATE + IMCOS PHPExcel_Calculation_Engineering::IMCOS + IMDIV PHPExcel_Calculation_Engineering::IMDIV + IMEXP PHPExcel_Calculation_Engineering::IMEXP + IMLN PHPExcel_Calculation_Engineering::IMLN + IMLOG10 PHPExcel_Calculation_Engineering::IMLOG10 + IMLOG2 PHPExcel_Calculation_Engineering::IMLOG2 + IMPOWER PHPExcel_Calculation_Engineering::IMPOWER + IMPRODUCT PHPExcel_Calculation_Engineering::IMPRODUCT + IMREAL PHPExcel_Calculation_Engineering::IMREAL + IMSIN PHPExcel_Calculation_Engineering::IMSIN + IMSQRT PHPExcel_Calculation_Engineering::IMSQRT + IMSUB PHPExcel_Calculation_Engineering::IMSUB + IMSUM PHPExcel_Calculation_Engineering::IMSUM + OCT2BIN PHPExcel_Calculation_Engineering::OCTTOBIN + OCT2DEC PHPExcel_Calculation_Engineering::OCTTODEC + OCT2HEX PHPExcel_Calculation_Engineering::OCTTOHEX + +CATEGORY_FINANCIAL + ACCRINT PHPExcel_Calculation_Financial::ACCRINT + ACCRINTM PHPExcel_Calculation_Financial::ACCRINTM + AMORDEGRC PHPExcel_Calculation_Financial::AMORDEGRC + AMORLINC PHPExcel_Calculation_Financial::AMORLINC + COUPDAYBS PHPExcel_Calculation_Financial::COUPDAYBS + COUPDAYS PHPExcel_Calculation_Financial::COUPDAYS + COUPDAYSNC PHPExcel_Calculation_Financial::COUPDAYSNC + COUPNCD PHPExcel_Calculation_Financial::COUPNCD + COUPNUM PHPExcel_Calculation_Financial::COUPNUM + COUPPCD PHPExcel_Calculation_Financial::COUPPCD + CUMIPMT PHPExcel_Calculation_Financial::CUMIPMT + CUMPRINC PHPExcel_Calculation_Financial::CUMPRINC + DB PHPExcel_Calculation_Financial::DB + DDB PHPExcel_Calculation_Financial::DDB + DISC PHPExcel_Calculation_Financial::DISC + DOLLARDE PHPExcel_Calculation_Financial::DOLLARDE + DOLLARFR PHPExcel_Calculation_Financial::DOLLARFR + DURATION *** Not yet Implemented + EFFECT PHPExcel_Calculation_Financial::EFFECT + FV PHPExcel_Calculation_Financial::FV + FVSCHEDULE PHPExcel_Calculation_Financial::FVSCHEDULE + INTRATE PHPExcel_Calculation_Financial::INTRATE + IPMT PHPExcel_Calculation_Financial::IPMT + IRR PHPExcel_Calculation_Financial::IRR + ISPMT PHPExcel_Calculation_Financial::ISPMT + MDURATION *** Not yet Implemented + MIRR PHPExcel_Calculation_Financial::MIRR + NOMINAL PHPExcel_Calculation_Financial::NOMINAL + NPER PHPExcel_Calculation_Financial::NPER + NPV PHPExcel_Calculation_Financial::NPV + ODDFPRICE *** Not yet Implemented + ODDFYIELD *** Not yet Implemented + ODDLPRICE *** Not yet Implemented + ODDLYIELD *** Not yet Implemented + PMT PHPExcel_Calculation_Financial::PMT + PPMT PHPExcel_Calculation_Financial::PPMT + PRICE PHPExcel_Calculation_Financial::PRICE + PRICEDISC PHPExcel_Calculation_Financial::PRICEDISC + PRICEMAT PHPExcel_Calculation_Financial::PRICEMAT + PV PHPExcel_Calculation_Financial::PV + RATE PHPExcel_Calculation_Financial::RATE + RECEIVED PHPExcel_Calculation_Financial::RECEIVED + SLN PHPExcel_Calculation_Financial::SLN + SYD PHPExcel_Calculation_Financial::SYD + TBILLEQ PHPExcel_Calculation_Financial::TBILLEQ + TBILLPRICE PHPExcel_Calculation_Financial::TBILLPRICE + TBILLYIELD PHPExcel_Calculation_Financial::TBILLYIELD + USDOLLAR *** Not yet Implemented + VDB *** Not yet Implemented + XIRR PHPExcel_Calculation_Financial::XIRR + XNPV PHPExcel_Calculation_Financial::XNPV + YIELD *** Not yet Implemented + YIELDDISC PHPExcel_Calculation_Financial::YIELDDISC + YIELDMAT PHPExcel_Calculation_Financial::YIELDMAT + +CATEGORY_INFORMATION + CELL *** Not yet Implemented + ERROR.TYPE PHPExcel_Calculation_Functions::ERROR_TYPE + INFO *** Not yet Implemented + ISBLANK PHPExcel_Calculation_Functions::IS_BLANK + ISERR PHPExcel_Calculation_Functions::IS_ERR + ISERROR PHPExcel_Calculation_Functions::IS_ERROR + ISEVEN PHPExcel_Calculation_Functions::IS_EVEN + ISLOGICAL PHPExcel_Calculation_Functions::IS_LOGICAL + ISNA PHPExcel_Calculation_Functions::IS_NA + ISNONTEXT PHPExcel_Calculation_Functions::IS_NONTEXT + ISNUMBER PHPExcel_Calculation_Functions::IS_NUMBER + ISODD PHPExcel_Calculation_Functions::IS_ODD + ISREF *** Not yet Implemented + ISTEXT PHPExcel_Calculation_Functions::IS_TEXT + N PHPExcel_Calculation_Functions::N + NA PHPExcel_Calculation_Functions::NA + TYPE PHPExcel_Calculation_Functions::TYPE + VERSION PHPExcel_Calculation_Functions::VERSION + +CATEGORY_LOGICAL + AND PHPExcel_Calculation_Logical::LOGICAL_AND + FALSE PHPExcel_Calculation_Logical::FALSE + IF PHPExcel_Calculation_Logical::STATEMENT_IF + IFERROR PHPExcel_Calculation_Logical::IFERROR + NOT PHPExcel_Calculation_Logical::NOT + OR PHPExcel_Calculation_Logical::LOGICAL_OR + TRUE PHPExcel_Calculation_Logical::TRUE + +CATEGORY_LOOKUP_AND_REFERENCE + ADDRESS PHPExcel_Calculation_LookupRef::CELL_ADDRESS + AREAS *** Not yet Implemented + CHOOSE PHPExcel_Calculation_LookupRef::CHOOSE + COLUMN PHPExcel_Calculation_LookupRef::COLUMN + COLUMNS PHPExcel_Calculation_LookupRef::COLUMNS + GETPIVOTDATA *** Not yet Implemented + HLOOKUP *** Not yet Implemented + HYPERLINK PHPExcel_Calculation_LookupRef::HYPERLINK + INDEX PHPExcel_Calculation_LookupRef::INDEX + INDIRECT PHPExcel_Calculation_LookupRef::INDIRECT + LOOKUP PHPExcel_Calculation_LookupRef::LOOKUP + MATCH PHPExcel_Calculation_LookupRef::MATCH + OFFSET PHPExcel_Calculation_LookupRef::OFFSET + ROW PHPExcel_Calculation_LookupRef::ROW + ROWS PHPExcel_Calculation_LookupRef::ROWS + RTD *** Not yet Implemented + TRANSPOSE PHPExcel_Calculation_LookupRef::TRANSPOSE + VLOOKUP PHPExcel_Calculation_LookupRef::VLOOKUP + +CATEGORY_MATH_AND_TRIG + ABS abs + ACOS acos + ACOSH acosh + ASIN asin + ASINH asinh + ATAN atan + ATAN2 PHPExcel_Calculation_MathTrig::REVERSE_ATAN2 + ATANH atanh + CEILING PHPExcel_Calculation_MathTrig::CEILING + COMBIN PHPExcel_Calculation_MathTrig::COMBIN + COS cos + COSH cosh + DEGREES rad2deg + EVEN PHPExcel_Calculation_MathTrig::EVEN + EXP exp + FACT PHPExcel_Calculation_MathTrig::FACT + FACTDOUBLE PHPExcel_Calculation_MathTrig::FACTDOUBLE + FLOOR PHPExcel_Calculation_MathTrig::FLOOR + GCD PHPExcel_Calculation_MathTrig::GCD + INT PHPExcel_Calculation_MathTrig::INT + LCM PHPExcel_Calculation_MathTrig::LCM + LN log + LOG PHPExcel_Calculation_MathTrig::LOG_BASE + LOG10 log10 + MDETERM PHPExcel_Calculation_MathTrig::MDETERM + MINVERSE PHPExcel_Calculation_MathTrig::MINVERSE + MMULT PHPExcel_Calculation_MathTrig::MMULT + MOD PHPExcel_Calculation_MathTrig::MOD + MROUND PHPExcel_Calculation_MathTrig::MROUND + MULTINOMIAL PHPExcel_Calculation_MathTrig::MULTINOMIAL + ODD PHPExcel_Calculation_MathTrig::ODD + PI pi + POWER PHPExcel_Calculation_MathTrig::POWER + PRODUCT PHPExcel_Calculation_MathTrig::PRODUCT + QUOTIENT PHPExcel_Calculation_MathTrig::QUOTIENT + RADIANS deg2rad + RAND PHPExcel_Calculation_MathTrig::RAND + RANDBETWEEN PHPExcel_Calculation_MathTrig::RAND + ROMAN PHPExcel_Calculation_MathTrig::ROMAN + ROUND round + ROUNDDOWN PHPExcel_Calculation_MathTrig::ROUNDDOWN + ROUNDUP PHPExcel_Calculation_MathTrig::ROUNDUP + SERIESSUM PHPExcel_Calculation_MathTrig::SERIESSUM + SIGN PHPExcel_Calculation_MathTrig::SIGN + SIN sin + SINH sinh + SQRT sqrt + SQRTPI PHPExcel_Calculation_MathTrig::SQRTPI + SUBTOTAL PHPExcel_Calculation_MathTrig::SUBTOTAL + SUM PHPExcel_Calculation_MathTrig::SUM + SUMIF PHPExcel_Calculation_MathTrig::SUMIF + SUMIFS *** Not yet Implemented + SUMPRODUCT PHPExcel_Calculation_MathTrig::SUMPRODUCT + SUMSQ PHPExcel_Calculation_MathTrig::SUMSQ + SUMX2MY2 PHPExcel_Calculation_MathTrig::SUMX2MY2 + SUMX2PY2 PHPExcel_Calculation_MathTrig::SUMX2PY2 + SUMXMY2 PHPExcel_Calculation_MathTrig::SUMXMY2 + TAN tan + TANH tanh + TRUNC PHPExcel_Calculation_MathTrig::TRUNC + +CATEGORY_STATISTICAL + AVEDEV PHPExcel_Calculation_Statistical::AVEDEV + AVERAGE PHPExcel_Calculation_Statistical::AVERAGE + AVERAGEA PHPExcel_Calculation_Statistical::AVERAGEA + AVERAGEIF PHPExcel_Calculation_Statistical::AVERAGEIF + AVERAGEIFS *** Not yet Implemented + BETADIST PHPExcel_Calculation_Statistical::BETADIST + BETAINV PHPExcel_Calculation_Statistical::BETAINV + BINOMDIST PHPExcel_Calculation_Statistical::BINOMDIST + CHIDIST PHPExcel_Calculation_Statistical::CHIDIST + CHIINV PHPExcel_Calculation_Statistical::CHIINV + CHITEST *** Not yet Implemented + CONFIDENCE PHPExcel_Calculation_Statistical::CONFIDENCE + CORREL PHPExcel_Calculation_Statistical::CORREL + COUNT PHPExcel_Calculation_Statistical::COUNT + COUNTA PHPExcel_Calculation_Statistical::COUNTA + COUNTBLANK PHPExcel_Calculation_Statistical::COUNTBLANK + COUNTIF PHPExcel_Calculation_Statistical::COUNTIF + COUNTIFS *** Not yet Implemented + COVAR PHPExcel_Calculation_Statistical::COVAR + CRITBINOM PHPExcel_Calculation_Statistical::CRITBINOM + DEVSQ PHPExcel_Calculation_Statistical::DEVSQ + EXPONDIST PHPExcel_Calculation_Statistical::EXPONDIST + FDIST *** Not yet Implemented + FINV *** Not yet Implemented + FISHER PHPExcel_Calculation_Statistical::FISHER + FISHERINV PHPExcel_Calculation_Statistical::FISHERINV + FORECAST PHPExcel_Calculation_Statistical::FORECAST + FREQUENCY *** Not yet Implemented + FTEST *** Not yet Implemented + GAMMADIST PHPExcel_Calculation_Statistical::GAMMADIST + GAMMAINV PHPExcel_Calculation_Statistical::GAMMAINV + GAMMALN PHPExcel_Calculation_Statistical::GAMMALN + GEOMEAN PHPExcel_Calculation_Statistical::GEOMEAN + GROWTH PHPExcel_Calculation_Statistical::GROWTH + HARMEAN PHPExcel_Calculation_Statistical::HARMEAN + HYPGEOMDIST PHPExcel_Calculation_Statistical::HYPGEOMDIST + INTERCEPT PHPExcel_Calculation_Statistical::INTERCEPT + KURT PHPExcel_Calculation_Statistical::KURT + LARGE PHPExcel_Calculation_Statistical::LARGE + LINEST PHPExcel_Calculation_Statistical::LINEST + LOGEST PHPExcel_Calculation_Statistical::LOGEST + LOGINV PHPExcel_Calculation_Statistical::LOGINV + LOGNORMDIST PHPExcel_Calculation_Statistical::LOGNORMDIST + MAX PHPExcel_Calculation_Statistical::MAX + MAXA PHPExcel_Calculation_Statistical::MAXA + MAXIF PHPExcel_Calculation_Statistical::MAXIF + MEDIAN PHPExcel_Calculation_Statistical::MEDIAN + MEDIANIF *** Not yet Implemented + MIN PHPExcel_Calculation_Statistical::MIN + MINA PHPExcel_Calculation_Statistical::MINA + MINIF PHPExcel_Calculation_Statistical::MINIF + MODE PHPExcel_Calculation_Statistical::MODE + NEGBINOMDIST PHPExcel_Calculation_Statistical::NEGBINOMDIST + NORMDIST PHPExcel_Calculation_Statistical::NORMDIST + NORMINV PHPExcel_Calculation_Statistical::NORMINV + NORMSDIST PHPExcel_Calculation_Statistical::NORMSDIST + NORMSINV PHPExcel_Calculation_Statistical::NORMSINV + PEARSON PHPExcel_Calculation_Statistical::CORREL + PERCENTILE PHPExcel_Calculation_Statistical::PERCENTILE + PERCENTRANK PHPExcel_Calculation_Statistical::PERCENTRANK + PERMUT PHPExcel_Calculation_Statistical::PERMUT + POISSON PHPExcel_Calculation_Statistical::POISSON + PROB *** Not yet Implemented + QUARTILE PHPExcel_Calculation_Statistical::QUARTILE + RANK PHPExcel_Calculation_Statistical::RANK + RSQ PHPExcel_Calculation_Statistical::RSQ + SKEW PHPExcel_Calculation_Statistical::SKEW + SLOPE PHPExcel_Calculation_Statistical::SLOPE + SMALL PHPExcel_Calculation_Statistical::SMALL + STANDARDIZE PHPExcel_Calculation_Statistical::STANDARDIZE + STDEV PHPExcel_Calculation_Statistical::STDEV + STDEVA PHPExcel_Calculation_Statistical::STDEVA + STDEVP PHPExcel_Calculation_Statistical::STDEVP + STDEVPA PHPExcel_Calculation_Statistical::STDEVPA + STEYX PHPExcel_Calculation_Statistical::STEYX + TDIST PHPExcel_Calculation_Statistical::TDIST + TINV PHPExcel_Calculation_Statistical::TINV + TREND PHPExcel_Calculation_Statistical::TREND + TRIMMEAN PHPExcel_Calculation_Statistical::TRIMMEAN + TTEST *** Not yet Implemented + VAR PHPExcel_Calculation_Statistical::VARFunc + VARA PHPExcel_Calculation_Statistical::VARA + VARP PHPExcel_Calculation_Statistical::VARP + VARPA PHPExcel_Calculation_Statistical::VARPA + WEIBULL PHPExcel_Calculation_Statistical::WEIBULL + ZTEST PHPExcel_Calculation_Statistical::ZTEST + +CATEGORY_TEXT_AND_DATA + ASC *** Not yet Implemented + BAHTTEXT *** Not yet Implemented + CHAR PHPExcel_Calculation_TextData::CHARACTER + CLEAN PHPExcel_Calculation_TextData::TRIMNONPRINTABLE + CODE PHPExcel_Calculation_TextData::ASCIICODE + CONCATENATE PHPExcel_Calculation_TextData::CONCATENATE + DOLLAR PHPExcel_Calculation_TextData::DOLLAR + EXACT *** Not yet Implemented + FIND PHPExcel_Calculation_TextData::SEARCHSENSITIVE + FINDB PHPExcel_Calculation_TextData::SEARCHSENSITIVE + FIXED PHPExcel_Calculation_TextData::FIXEDFORMAT + JIS *** Not yet Implemented + LEFT PHPExcel_Calculation_TextData::LEFT + LEFTB PHPExcel_Calculation_TextData::LEFT + LEN PHPExcel_Calculation_TextData::STRINGLENGTH + LENB PHPExcel_Calculation_TextData::STRINGLENGTH + LOWER PHPExcel_Calculation_TextData::LOWERCASE + MID PHPExcel_Calculation_TextData::MID + MIDB PHPExcel_Calculation_TextData::MID + PHONETIC *** Not yet Implemented + PROPER PHPExcel_Calculation_TextData::PROPERCASE + REPLACE PHPExcel_Calculation_TextData::REPLACE + REPLACEB PHPExcel_Calculation_TextData::REPLACE + REPT str_repeat + RIGHT PHPExcel_Calculation_TextData::RIGHT + RIGHTB PHPExcel_Calculation_TextData::RIGHT + SEARCH PHPExcel_Calculation_TextData::SEARCHINSENSITIVE + SEARCHB PHPExcel_Calculation_TextData::SEARCHINSENSITIVE + SUBSTITUTE PHPExcel_Calculation_TextData::SUBSTITUTE + T PHPExcel_Calculation_TextData::RETURNSTRING + TEXT PHPExcel_Calculation_TextData::TEXTFORMAT + TRIM PHPExcel_Calculation_TextData::TRIMSPACES + UPPER PHPExcel_Calculation_TextData::UPPERCASE + VALUE *** Not yet Implemented diff --git a/site/config/PHPExcel/Documentation/FunctionListByName.txt b/site/config/PHPExcel/Documentation/FunctionListByName.txt new file mode 100644 index 0000000..082c83a --- /dev/null +++ b/site/config/PHPExcel/Documentation/FunctionListByName.txt @@ -0,0 +1,381 @@ +ABS CATEGORY_MATH_AND_TRIG abs +ACCRINT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::ACCRINT +ACCRINTM CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::ACCRINTM +ACOS CATEGORY_MATH_AND_TRIG acos +ACOSH CATEGORY_MATH_AND_TRIG acosh +ADDRESS CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::CELL_ADDRESS +AMORDEGRC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::AMORDEGRC +AMORLINC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::AMORLINC +AND CATEGORY_LOGICAL PHPExcel_Calculation_Logical::LOGICAL_AND +AREAS CATEGORY_LOOKUP_AND_REFERENCE *** Not yet Implemented +ASC CATEGORY_TEXT_AND_DATA *** Not yet Implemented +ASIN CATEGORY_MATH_AND_TRIG asin +ASINH CATEGORY_MATH_AND_TRIG asinh +ATAN CATEGORY_MATH_AND_TRIG atan +ATAN2 CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::REVERSE_ATAN2 +ATANH CATEGORY_MATH_AND_TRIG atanh +AVEDEV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::AVEDEV +AVERAGE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::AVERAGE +AVERAGEA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::AVERAGEA +AVERAGEIF CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::AVERAGEIF +AVERAGEIFS CATEGORY_STATISTICAL *** Not yet Implemented + +BAHTTEXT CATEGORY_TEXT_AND_DATA *** Not yet Implemented +BESSELI CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BESSELI +BESSELJ CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BESSELJ +BESSELK CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BESSELK +BESSELY CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BESSELY +BETADIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::BETADIST +BETAINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::BETAINV +BIN2DEC CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BINTODEC +BIN2HEX CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BINTOHEX +BIN2OCT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::BINTOOCT +BINOMDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::BINOMDIST + +CEILING CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::CEILING +CELL CATEGORY_INFORMATION *** Not yet Implemented +CHAR CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::CHARACTER +CHIDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CHIDIST +CHIINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CHIINV +CHITEST CATEGORY_STATISTICAL *** Not yet Implemented +CHOOSE CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::CHOOSE +CLEAN CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::TRIMNONPRINTABLE +CODE CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::ASCIICODE +COLUMN CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::COLUMN +COLUMNS CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::COLUMNS +COMBIN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::COMBIN +COMPLEX CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::COMPLEX +CONCATENATE CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::CONCATENATE +CONFIDENCE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CONFIDENCE +CONVERT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::CONVERTUOM +CORREL CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CORREL +COS CATEGORY_MATH_AND_TRIG cos +COSH CATEGORY_MATH_AND_TRIG cosh +COUNT CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::COUNT +COUNTA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::COUNTA +COUNTBLANK CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::COUNTBLANK +COUNTIF CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::COUNTIF +COUNTIFS CATEGORY_STATISTICAL *** Not yet Implemented +COUPDAYBS CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPDAYBS +COUPDAYS CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPDAYS +COUPDAYSNC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPDAYSNC +COUPNCD CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPNCD +COUPNUM CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPNUM +COUPPCD CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::COUPPCD +COVAR CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::COVAR +CRITBINOM CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CRITBINOM +CUBEKPIMEMBER CATEGORY_CUBE *** Not yet Implemented +CUBEMEMBER CATEGORY_CUBE *** Not yet Implemented +CUBEMEMBERPROPERTY CATEGORY_CUBE *** Not yet Implemented +CUBERANKEDMEMBER CATEGORY_CUBE *** Not yet Implemented +CUBESET CATEGORY_CUBE *** Not yet Implemented +CUBESETCOUNT CATEGORY_CUBE *** Not yet Implemented +CUBEVALUE CATEGORY_CUBE *** Not yet Implemented +CUMIPMT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::CUMIPMT +CUMPRINC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::CUMPRINC + +DATE CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DATE +DATEDIF CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DATEDIF +DATEVALUE CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DATEVALUE +DAVERAGE CATEGORY_DATABASE PHPExcel_Calculation_Database::DAVERAGE +DAY CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DAYOFMONTH +DAYS360 CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DAYS360 +DB CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::DB +DCOUNT CATEGORY_DATABASE PHPExcel_Calculation_Database::DCOUNT +DCOUNTA CATEGORY_DATABASE PHPExcel_Calculation_Database::DCOUNTA +DDB CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::DDB +DEC2BIN CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::DECTOBIN +DEC2HEX CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::DECTOHEX +DEC2OCT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::DECTOOCT +DEGREES CATEGORY_MATH_AND_TRIG rad2deg +DELTA CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::DELTA +DEVSQ CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::DEVSQ +DGET CATEGORY_DATABASE PHPExcel_Calculation_Database::DGET +DISC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::DISC +DMAX CATEGORY_DATABASE PHPExcel_Calculation_Database::DMAX +DMIN CATEGORY_DATABASE PHPExcel_Calculation_Database::DMIN +DOLLAR CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::DOLLAR +DOLLARDE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::DOLLARDE +DOLLARFR CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::DOLLARFR +DPRODUCT CATEGORY_DATABASE PHPExcel_Calculation_Database::DPRODUCT +DSTDEV CATEGORY_DATABASE PHPExcel_Calculation_Database::DSTDEV +DSTDEVP CATEGORY_DATABASE PHPExcel_Calculation_Database::DSTDEVP +DSUM CATEGORY_DATABASE PHPExcel_Calculation_Database::DSUM +DURATION CATEGORY_FINANCIAL *** Not yet Implemented +DVAR CATEGORY_DATABASE PHPExcel_Calculation_Database::DVAR +DVARP CATEGORY_DATABASE PHPExcel_Calculation_Database::DVARP + +EDATE CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::EDATE +EFFECT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::EFFECT +EOMONTH CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::EOMONTH +ERF CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::ERF +ERFC CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::ERFC +ERROR.TYPE CATEGORY_INFORMATION PHPExcel_Calculation_Functions::ERROR_TYPE +EVEN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::EVEN +EXACT CATEGORY_TEXT_AND_DATA *** Not yet Implemented +EXP CATEGORY_MATH_AND_TRIG exp +EXPONDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::EXPONDIST + +FACT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::FACT +FACTDOUBLE CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::FACTDOUBLE +FALSE CATEGORY_LOGICAL PHPExcel_Calculation_Logical::FALSE +FDIST CATEGORY_STATISTICAL *** Not yet Implemented +FIND CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::SEARCHSENSITIVE +FINDB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::SEARCHSENSITIVE +FINV CATEGORY_STATISTICAL *** Not yet Implemented +FISHER CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::FISHER +FISHERINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::FISHERINV +FIXED CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::FIXEDFORMAT +FLOOR CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::FLOOR +FORECAST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::FORECAST +FREQUENCY CATEGORY_STATISTICAL *** Not yet Implemented +FTEST CATEGORY_STATISTICAL *** Not yet Implemented +FV CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::FV +FVSCHEDULE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::FVSCHEDULE + +GAMMADIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::GAMMADIST +GAMMAINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::GAMMAINV +GAMMALN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::GAMMALN +GCD CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::GCD +GEOMEAN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::GEOMEAN +GESTEP CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::GESTEP +GETPIVOTDATA CATEGORY_LOOKUP_AND_REFERENCE *** Not yet Implemented +GROWTH CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::GROWTH + +HARMEAN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::HARMEAN +HEX2BIN CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::HEXTOBIN +HEX2DEC CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::HEXTODEC +HEX2OCT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::HEXTOOCT +HLOOKUP CATEGORY_LOOKUP_AND_REFERENCE *** Not yet Implemented +HOUR CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::HOUROFDAY +HYPERLINK CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::HYPERLINK +HYPGEOMDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::HYPGEOMDIST + +IF CATEGORY_LOGICAL PHPExcel_Calculation_Logical::STATEMENT_IF +IFERROR CATEGORY_LOGICAL PHPExcel_Calculation_Logical::IFERROR +IMABS CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMABS +IMAGINARY CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMAGINARY +IMARGUMENT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMARGUMENT +IMCONJUGATE CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMCONJUGATE +IMCOS CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMCOS +IMDIV CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMDIV +IMEXP CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMEXP +IMLN CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMLN +IMLOG10 CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMLOG10 +IMLOG2 CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMLOG2 +IMPOWER CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMPOWER +IMPRODUCT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMPRODUCT +IMREAL CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMREAL +IMSIN CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMSIN +IMSQRT CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMSQRT +IMSUB CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMSUB +IMSUM CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::IMSUM +INDEX CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::INDEX +INDIRECT CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::INDIRECT +INFO CATEGORY_INFORMATION *** Not yet Implemented +INT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::INT +INTERCEPT CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::INTERCEPT +INTRATE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::INTRATE +IPMT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::IPMT +IRR CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::IRR +ISBLANK CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_BLANK +ISERR CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_ERR +ISERROR CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_ERROR +ISEVEN CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_EVEN +ISLOGICAL CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_LOGICAL +ISNA CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_NA +ISNONTEXT CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_NONTEXT +ISNUMBER CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_NUMBER +ISODD CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_ODD +ISPMT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::ISPMT +ISREF CATEGORY_INFORMATION *** Not yet Implemented +ISTEXT CATEGORY_INFORMATION PHPExcel_Calculation_Functions::IS_TEXT + +JIS CATEGORY_TEXT_AND_DATA *** Not yet Implemented + +KURT CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::KURT + +LARGE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::LARGE +LCM CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::LCM +LEFT CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::LEFT +LEFTB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::LEFT +LEN CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::STRINGLENGTH +LENB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::STRINGLENGTH +LINEST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::LINEST +LN CATEGORY_MATH_AND_TRIG log +LOG CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::LOG_BASE +LOG10 CATEGORY_MATH_AND_TRIG log10 +LOGEST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::LOGEST +LOGINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::LOGINV +LOGNORMDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::LOGNORMDIST +LOOKUP CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::LOOKUP +LOWER CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::LOWERCASE + +MATCH CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::MATCH +MAX CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MAX +MAXA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MAXA +MAXIF CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MAXIF +MDETERM CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MDETERM +MDURATION CATEGORY_FINANCIAL *** Not yet Implemented +MEDIAN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MEDIAN +MEDIANIF CATEGORY_STATISTICAL *** Not yet Implemented +MID CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::MID +MIDB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::MID +MIN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MIN +MINA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MINA +MINIF CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MINIF +MINUTE CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::MINUTEOFHOUR +MINVERSE CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MINVERSE +MIRR CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::MIRR +MMULT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MMULT +MOD CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MOD +MODE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::MODE +MONTH CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::MONTHOFYEAR +MROUND CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MROUND +MULTINOMIAL CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::MULTINOMIAL + +N CATEGORY_INFORMATION PHPExcel_Calculation_Functions::N +NA CATEGORY_INFORMATION PHPExcel_Calculation_Functions::NA +NEGBINOMDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::NEGBINOMDIST +NETWORKDAYS CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::NETWORKDAYS +NOMINAL CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::NOMINAL +NORMDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::NORMDIST +NORMINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::NORMINV +NORMSDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::NORMSDIST +NORMSINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::NORMSINV +NOT CATEGORY_LOGICAL PHPExcel_Calculation_Logical::NOT +NOW CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DATETIMENOW +NPER CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::NPER +NPV CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::NPV + +OCT2BIN CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::OCTTOBIN +OCT2DEC CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::OCTTODEC +OCT2HEX CATEGORY_ENGINEERING PHPExcel_Calculation_Engineering::OCTTOHEX +ODD CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::ODD +ODDFPRICE CATEGORY_FINANCIAL *** Not yet Implemented +ODDFYIELD CATEGORY_FINANCIAL *** Not yet Implemented +ODDLPRICE CATEGORY_FINANCIAL *** Not yet Implemented +ODDLYIELD CATEGORY_FINANCIAL *** Not yet Implemented +OFFSET CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::OFFSET +OR CATEGORY_LOGICAL PHPExcel_Calculation_Logical::LOGICAL_OR + +PEARSON CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::CORREL +PERCENTILE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::PERCENTILE +PERCENTRANK CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::PERCENTRANK +PERMUT CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::PERMUT +PHONETIC CATEGORY_TEXT_AND_DATA *** Not yet Implemented +PI CATEGORY_MATH_AND_TRIG pi +PMT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PMT +POISSON CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::POISSON +POWER CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::POWER +PPMT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PPMT +PRICE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PRICE +PRICEDISC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PRICEDISC +PRICEMAT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PRICEMAT +PROB CATEGORY_STATISTICAL *** Not yet Implemented +PRODUCT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::PRODUCT +PROPER CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::PROPERCASE +PV CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::PV + +QUARTILE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::QUARTILE +QUOTIENT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::QUOTIENT + +RADIANS CATEGORY_MATH_AND_TRIG deg2rad +RAND CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::RAND +RANDBETWEEN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::RAND +RANK CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::RANK +RATE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::RATE +RECEIVED CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::RECEIVED +REPLACE CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::REPLACE +REPLACEB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::REPLACE +REPT CATEGORY_TEXT_AND_DATA str_repeat +RIGHT CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::RIGHT +RIGHTB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::RIGHT +ROMAN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::ROMAN +ROUND CATEGORY_MATH_AND_TRIG round +ROUNDDOWN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::ROUNDDOWN +ROUNDUP CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::ROUNDUP +ROW CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::ROW +ROWS CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::ROWS +RSQ CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::RSQ +RTD CATEGORY_LOOKUP_AND_REFERENCE *** Not yet Implemented + +SEARCH CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::SEARCHINSENSITIVE +SEARCHB CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::SEARCHINSENSITIVE +SECOND CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::SECONDOFMINUTE +SERIESSUM CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SERIESSUM +SIGN CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SIGN +SIN CATEGORY_MATH_AND_TRIG sin +SINH CATEGORY_MATH_AND_TRIG sinh +SKEW CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::SKEW +SLN CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::SLN +SLOPE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::SLOPE +SMALL CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::SMALL +SQRT CATEGORY_MATH_AND_TRIG sqrt +SQRTPI CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SQRTPI +STANDARDIZE CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STANDARDIZE +STDEV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STDEV +STDEVA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STDEVA +STDEVP CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STDEVP +STDEVPA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STDEVPA +STEYX CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::STEYX +SUBSTITUTE CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::SUBSTITUTE +SUBTOTAL CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUBTOTAL +SUM CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUM +SUMIF CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMIF +SUMIFS CATEGORY_MATH_AND_TRIG *** Not yet Implemented +SUMPRODUCT CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMPRODUCT +SUMSQ CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMSQ +SUMX2MY2 CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMX2MY2 +SUMX2PY2 CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMX2PY2 +SUMXMY2 CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::SUMXMY2 +SYD CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::SYD + +T CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::RETURNSTRING +TAN CATEGORY_MATH_AND_TRIG tan +TANH CATEGORY_MATH_AND_TRIG tanh +TBILLEQ CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::TBILLEQ +TBILLPRICE CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::TBILLPRICE +TBILLYIELD CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::TBILLYIELD +TDIST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::TDIST +TEXT CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::TEXTFORMAT +TIME CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::TIME +TIMEVALUE CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::TIMEVALUE +TINV CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::TINV +TODAY CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DATENOW +TRANSPOSE CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::TRANSPOSE +TREND CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::TREND +TRIM CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::TRIMSPACES +TRIMMEAN CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::TRIMMEAN +TRUE CATEGORY_LOGICAL PHPExcel_Calculation_Logical::TRUE +TRUNC CATEGORY_MATH_AND_TRIG PHPExcel_Calculation_MathTrig::TRUNC +TTEST CATEGORY_STATISTICAL *** Not yet Implemented +TYPE CATEGORY_INFORMATION PHPExcel_Calculation_Functions::TYPE + +UPPER CATEGORY_TEXT_AND_DATA PHPExcel_Calculation_TextData::UPPERCASE +USDOLLAR CATEGORY_FINANCIAL *** Not yet Implemented + +VALUE CATEGORY_TEXT_AND_DATA *** Not yet Implemented +VAR CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::VARFunc +VARA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::VARA +VARP CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::VARP +VARPA CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::VARPA +VDB CATEGORY_FINANCIAL *** Not yet Implemented +VERSION CATEGORY_INFORMATION PHPExcel_Calculation_Functions::VERSION +VLOOKUP CATEGORY_LOOKUP_AND_REFERENCE PHPExcel_Calculation_LookupRef::VLOOKUP + +WEEKDAY CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::DAYOFWEEK +WEEKNUM CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::WEEKOFYEAR +WEIBULL CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::WEIBULL +WORKDAY CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::WORKDAY + +XIRR CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::XIRR +XNPV CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::XNPV + +YEAR CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::YEAR +YEARFRAC CATEGORY_DATE_AND_TIME PHPExcel_Calculation_DateTime::YEARFRAC +YIELD CATEGORY_FINANCIAL *** Not yet Implemented +YIELDDISC CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::YIELDDISC +YIELDMAT CATEGORY_FINANCIAL PHPExcel_Calculation_Financial::YIELDMAT + +ZTEST CATEGORY_STATISTICAL PHPExcel_Calculation_Statistical::ZTEST diff --git a/site/config/PHPExcel/Documentation/PHPExcel AutoFilter Reference developer documentation.doc b/site/config/PHPExcel/Documentation/PHPExcel AutoFilter Reference developer documentation.doc new file mode 100644 index 0000000..2024f77 Binary files /dev/null and b/site/config/PHPExcel/Documentation/PHPExcel AutoFilter Reference developer documentation.doc differ diff --git a/site/config/PHPExcel/Documentation/PHPExcel Function Reference developer documentation.doc b/site/config/PHPExcel/Documentation/PHPExcel Function Reference developer documentation.doc new file mode 100644 index 0000000..1ab93b2 Binary files /dev/null and b/site/config/PHPExcel/Documentation/PHPExcel Function Reference developer documentation.doc differ diff --git a/site/config/PHPExcel/Documentation/PHPExcel User Documentation - Reading Spreadsheet Files.doc b/site/config/PHPExcel/Documentation/PHPExcel User Documentation - Reading Spreadsheet Files.doc new file mode 100644 index 0000000..206f2f2 Binary files /dev/null and b/site/config/PHPExcel/Documentation/PHPExcel User Documentation - Reading Spreadsheet Files.doc differ diff --git a/site/config/PHPExcel/Documentation/PHPExcel developer documentation.doc b/site/config/PHPExcel/Documentation/PHPExcel developer documentation.doc new file mode 100644 index 0000000..4019515 Binary files /dev/null and b/site/config/PHPExcel/Documentation/PHPExcel developer documentation.doc differ diff --git a/site/config/PHPExcel/Documentation/_notes/dwsync.xml b/site/config/PHPExcel/Documentation/_notes/dwsync.xml new file mode 100644 index 0000000..c402637 --- /dev/null +++ b/site/config/PHPExcel/Documentation/_notes/dwsync.xml @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="FunctionListByCategory.txt" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="FunctionListByName.txt" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="PHPExcel AutoFilter Reference developer documentation.doc" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="PHPExcel developer documentation.doc" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="PHPExcel Function Reference developer documentation.doc" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="PHPExcel User Documentation - Reading Spreadsheet Files.doc" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="FunctionListByCategory.txt" server="web2.pointvirgule.net/valtra/monope/" local="129973851889999999" remote="129984147600000000" Dst="-1" /> +<file name="PHPExcel AutoFilter Reference developer documentation.doc" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="FunctionListByName.txt" server="web2.pointvirgule.net/valtra/monope/" local="129973851919999999" remote="129984147600000000" Dst="-1" /> +<file name="PHPExcel developer documentation.doc" server="web2.pointvirgule.net/valtra/monope/" local="129973851929999999" remote="129984147600000000" Dst="-1" /> +<file name="PHPExcel Function Reference developer documentation.doc" server="web2.pointvirgule.net/valtra/monope/" local="129973851929999999" remote="129984147600000000" Dst="-1" /> +<file name="PHPExcel User Documentation - Reading Spreadsheet Files.doc" server="web2.pointvirgule.net/valtra/monope/" local="129973851929999999" remote="129984147600000000" Dst="-1" /> +<file name="FunctionListByCategory.txt" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851889999999" remote="129997099800000000" Dst="-1" /> +<file name="PHPExcel AutoFilter Reference developer documentation.doc" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997099800000000" Dst="-1" /> +<file name="FunctionListByName.txt" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851919999999" remote="129997099800000000" Dst="-1" /> +<file name="PHPExcel developer documentation.doc" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851929999999" remote="129997099800000000" Dst="-1" /> +<file name="PHPExcel Function Reference developer documentation.doc" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851929999999" remote="129997099800000000" Dst="-1" /> +<file name="PHPExcel User Documentation - Reading Spreadsheet Files.doc" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851929999999" remote="129997099800000000" Dst="-1" /> +<file name="FunctionListByCategory.txt" server="62.244.88.111/actions-fendt/lisa/" local="131244560168642768" remote="131260197000000000" Dst="1" /> +<file name="FunctionListByName.txt" server="62.244.88.111/actions-fendt/lisa/" local="131244560171625248" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel AutoFilter Reference developer documentation.doc" server="62.244.88.111/actions-fendt/lisa/" local="131244560171072874" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel Function Reference developer documentation.doc" server="62.244.88.111/actions-fendt/lisa/" local="131244560176708691" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel developer documentation.doc" server="62.244.88.111/actions-fendt/lisa/" local="131244560174408446" remote="131260197000000000" Dst="1" /> +<file name="PHPExcel User Documentation - Reading Spreadsheet Files.doc" server="62.244.88.111/actions-fendt/lisa/" local="131244560177707900" remote="131260197000000000" Dst="1" /> +<file name="FunctionListByCategory.txt" server="62.244.88.21/amashow/" local="131414752413628978" remote="131414681400000000" Dst="2" /> +<file name="FunctionListByName.txt" server="62.244.88.21/amashow/" local="131414752415505436" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel AutoFilter Reference developer documentation.doc" server="62.244.88.21/amashow/" local="131414752415049538" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel User Documentation - Reading Spreadsheet Files.doc" server="62.244.88.21/amashow/" local="131414752421484009" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel Function Reference developer documentation.doc" server="62.244.88.21/amashow/" local="131414752419941891" remote="131414681400000000" Dst="2" /> +<file name="PHPExcel developer documentation.doc" server="62.244.88.21/amashow/" local="131414752418902717" remote="131414681400000000" Dst="2" /> +<file name="FunctionListByName.txt" server="62.244.88.21/deciday/" local="131919461711786292" remote="131826018000000000" Dst="1" /> +<file name="FunctionListByCategory.txt" server="62.244.88.21/deciday/" local="131919461711168625" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel User Documentation - Reading Spreadsheet Files.doc" server="62.244.88.21/deciday/" local="131919461730712988" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel Function Reference developer documentation.doc" server="62.244.88.21/deciday/" local="131919461727766051" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel AutoFilter Reference developer documentation.doc" server="62.244.88.21/deciday/" local="131919461725600603" remote="131826018000000000" Dst="1" /> +<file name="PHPExcel developer documentation.doc" server="62.244.88.21/deciday/" local="131919461730184906" remote="131826018000000000" Dst="1" /> +<file name="FunctionListByCategory.txt" server="62.244.88.21/deciday_18/" local="131414752413628978" remote="131825946000000000" Dst="2" /> +<file name="FunctionListByName.txt" server="62.244.88.21/deciday_18/" local="131414752415505436" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel AutoFilter Reference developer documentation.doc" server="62.244.88.21/deciday_18/" local="131414752415049538" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel developer documentation.doc" server="62.244.88.21/deciday_18/" local="131414752418902717" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel User Documentation - Reading Spreadsheet Files.doc" server="62.244.88.21/deciday_18/" local="131414752421484009" remote="131825946000000000" Dst="2" /> +<file name="PHPExcel Function Reference developer documentation.doc" server="62.244.88.21/deciday_18/" local="131414752419941891" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Tests/01pharSimple.php b/site/config/PHPExcel/Tests/01pharSimple.php new file mode 100644 index 0000000..2dd196d --- /dev/null +++ b/site/config/PHPExcel/Tests/01pharSimple.php @@ -0,0 +1,94 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once '../Build/PHPExcel.phar'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("PHPExcel Test Document") + ->setSubject("PHPExcel Test Document") + ->setDescription("Test document for PHPExcel, generated using PHP classes.") + ->setKeywords("office PHPExcel php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/01simple-download-pdf.php b/site/config/PHPExcel/Tests/01simple-download-pdf.php new file mode 100644 index 0000000..f08980e --- /dev/null +++ b/site/config/PHPExcel/Tests/01simple-download-pdf.php @@ -0,0 +1,104 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +if (PHP_SAPI == 'cli') + die('This example should only be run from a Web Browser'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Change these values to select the Rendering library that you wish to use +// and its directory location on your server +//$rendererName = PHPExcel_Settings::PDF_RENDERER_TCPDF; +$rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF; +//$rendererName = PHPExcel_Settings::PDF_RENDERER_DOMPDF; +//$rendererLibrary = 'tcPDF5.9'; +$rendererLibrary = 'mPDF5.4'; +//$rendererLibrary = 'domPDF0.6.0beta3'; +$rendererLibraryPath = dirname(__FILE__).'/../../../libraries/PDF/' . $rendererLibrary; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); + +// Set document properties +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("PDF Test Document") + ->setSubject("PDF Test Document") + ->setDescription("Test document for PDF, generated using PHP classes.") + ->setKeywords("pdf php") + ->setCategory("Test result file"); + + +// Add some data +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + +// Rename worksheet +$objPHPExcel->getActiveSheet()->setTitle('Simple'); +$objPHPExcel->getActiveSheet()->setShowGridLines(false); + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +if (!PHPExcel_Settings::setPdfRenderer( + $rendererName, + $rendererLibraryPath + )) { + die( + 'NOTICE: Please set the $rendererName and $rendererLibraryPath values' . + '<br />' . + 'at the top of this script as appropriate for your directory structure' + ); +} + + +// Redirect output to a client’s web browser (PDF) +header('Content-Type: application/pdf'); +header('Content-Disposition: attachment;filename="01simple.pdf"'); +header('Cache-Control: max-age=0'); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF'); +$objWriter->save('php://output'); +exit; diff --git a/site/config/PHPExcel/Tests/01simple-download-xls.php b/site/config/PHPExcel/Tests/01simple-download-xls.php new file mode 100644 index 0000000..66f4e9b --- /dev/null +++ b/site/config/PHPExcel/Tests/01simple-download-xls.php @@ -0,0 +1,81 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +if (PHP_SAPI == 'cli') + die('This example should only be run from a Web Browser'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); + +// Set document properties +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + +// Rename worksheet +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Redirect output to a client’s web browser (Excel5) +header('Content-Type: application/vnd.ms-excel'); +header('Content-Disposition: attachment;filename="01simple.xls"'); +header('Cache-Control: max-age=0'); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save('php://output'); +exit; diff --git a/site/config/PHPExcel/Tests/01simple-download-xlsx.php b/site/config/PHPExcel/Tests/01simple-download-xlsx.php new file mode 100644 index 0000000..998980d --- /dev/null +++ b/site/config/PHPExcel/Tests/01simple-download-xlsx.php @@ -0,0 +1,81 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +if (PHP_SAPI == 'cli') + die('This example should only be run from a Web Browser'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +$objPHPExcel = new PHPExcel(); + +// Set document properties +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + +// Rename worksheet +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Redirect output to a client’s web browser (Excel2007) +header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); +header('Content-Disposition: attachment;filename="01simple.xlsx"'); +header('Cache-Control: max-age=0'); + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save('php://output'); +exit; diff --git a/site/config/PHPExcel/Tests/01simple.php b/site/config/PHPExcel/Tests/01simple.php new file mode 100644 index 0000000..116ec7b --- /dev/null +++ b/site/config/PHPExcel/Tests/01simple.php @@ -0,0 +1,94 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("PHPExcel Test Document") + ->setSubject("PHPExcel Test Document") + ->setDescription("Test document for PHPExcel, generated using PHP classes.") + ->setKeywords("office PHPExcel php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A1', 'Hello') + ->setCellValue('B2', 'world!') + ->setCellValue('C1', 'Hello') + ->setCellValue('D2', 'world!'); + +// Miscellaneous glyphs, UTF-8 +$objPHPExcel->setActiveSheetIndex(0) + ->setCellValue('A4', 'Miscellaneous glyphs') + ->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/01simple.xls b/site/config/PHPExcel/Tests/01simple.xls new file mode 100644 index 0000000..8fcf5f3 Binary files /dev/null and b/site/config/PHPExcel/Tests/01simple.xls differ diff --git a/site/config/PHPExcel/Tests/01simple.xlsx b/site/config/PHPExcel/Tests/01simple.xlsx new file mode 100644 index 0000000..b37e7de Binary files /dev/null and b/site/config/PHPExcel/Tests/01simple.xlsx differ diff --git a/site/config/PHPExcel/Tests/02types-xls.php b/site/config/PHPExcel/Tests/02types-xls.php new file mode 100644 index 0000000..f1e50cc --- /dev/null +++ b/site/config/PHPExcel/Tests/02types-xls.php @@ -0,0 +1,139 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + +// Set default font +echo date('H:i:s') , " Set default font" , EOL; +$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial') + ->setSize(10); + +// Add some data, resembling some different data types +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'String') + ->setCellValue('B1', 'Simple') + ->setCellValue('C1', 'PHPExcel'); + +$objPHPExcel->getActiveSheet()->setCellValue('A2', 'String') + ->setCellValue('B2', 'Symbols') + ->setCellValue('C2', '!+&=()~§±æþ'); + +$objPHPExcel->getActiveSheet()->setCellValue('A3', 'String') + ->setCellValue('B3', 'UTF-8') + ->setCellValue('C3', 'Создать MS Excel Книги из PHP скриптов'); + +$objPHPExcel->getActiveSheet()->setCellValue('A4', 'Number') + ->setCellValue('B4', 'Integer') + ->setCellValue('C4', 12); + +$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Number') + ->setCellValue('B5', 'Float') + ->setCellValue('C5', 34.56); + +$objPHPExcel->getActiveSheet()->setCellValue('A6', 'Number') + ->setCellValue('B6', 'Negative') + ->setCellValue('C6', -7.89); + +$objPHPExcel->getActiveSheet()->setCellValue('A7', 'Boolean') + ->setCellValue('B7', 'True') + ->setCellValue('C7', true); + +$objPHPExcel->getActiveSheet()->setCellValue('A8', 'Boolean') + ->setCellValue('B8', 'False') + ->setCellValue('C8', false); + +$dateTimeNow = time(); +$objPHPExcel->getActiveSheet()->setCellValue('A9', 'Date/Time') + ->setCellValue('B9', 'Date') + ->setCellValue('C9', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C9')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2); + +$objPHPExcel->getActiveSheet()->setCellValue('A10', 'Date/Time') + ->setCellValue('B10', 'Time') + ->setCellValue('C10', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C10')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4); + +$objPHPExcel->getActiveSheet()->setCellValue('A11', 'Date/Time') + ->setCellValue('B11', 'Date and Time') + ->setCellValue('C11', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C11')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_DATETIME); + +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true); +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setAutoSize(true); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Datatypes'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +echo date('H:i:s') , " Reload workbook from saved file" , EOL; +$objPHPExcel = PHPExcel_IOFactory::load(str_replace('.php', '.xls', __FILE__)); + +var_dump($objPHPExcel->getActiveSheet()->toArray()); + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/02types-xls.xls b/site/config/PHPExcel/Tests/02types-xls.xls new file mode 100644 index 0000000..c5d4143 Binary files /dev/null and b/site/config/PHPExcel/Tests/02types-xls.xls differ diff --git a/site/config/PHPExcel/Tests/02types.php b/site/config/PHPExcel/Tests/02types.php new file mode 100644 index 0000000..aa779f9 --- /dev/null +++ b/site/config/PHPExcel/Tests/02types.php @@ -0,0 +1,139 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + +// Set default font +echo date('H:i:s') , " Set default font" , EOL; +$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial') + ->setSize(10); + +// Add some data, resembling some different data types +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'String') + ->setCellValue('B1', 'Simple') + ->setCellValue('C1', 'PHPExcel'); + +$objPHPExcel->getActiveSheet()->setCellValue('A2', 'String') + ->setCellValue('B2', 'Symbols') + ->setCellValue('C2', '!+&=()~§±æþ'); + +$objPHPExcel->getActiveSheet()->setCellValue('A3', 'String') + ->setCellValue('B3', 'UTF-8') + ->setCellValue('C3', 'Создать MS Excel Книги из PHP скриптов'); + +$objPHPExcel->getActiveSheet()->setCellValue('A4', 'Number') + ->setCellValue('B4', 'Integer') + ->setCellValue('C4', 12); + +$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Number') + ->setCellValue('B5', 'Float') + ->setCellValue('C5', 34.56); + +$objPHPExcel->getActiveSheet()->setCellValue('A6', 'Number') + ->setCellValue('B6', 'Negative') + ->setCellValue('C6', -7.89); + +$objPHPExcel->getActiveSheet()->setCellValue('A7', 'Boolean') + ->setCellValue('B7', 'True') + ->setCellValue('C7', true); + +$objPHPExcel->getActiveSheet()->setCellValue('A8', 'Boolean') + ->setCellValue('B8', 'False') + ->setCellValue('C8', false); + +$dateTimeNow = time(); +$objPHPExcel->getActiveSheet()->setCellValue('A9', 'Date/Time') + ->setCellValue('B9', 'Date') + ->setCellValue('C9', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C9')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2); + +$objPHPExcel->getActiveSheet()->setCellValue('A10', 'Date/Time') + ->setCellValue('B10', 'Time') + ->setCellValue('C10', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C10')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4); + +$objPHPExcel->getActiveSheet()->setCellValue('A11', 'Date/Time') + ->setCellValue('B11', 'Date and Time') + ->setCellValue('C11', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow )); +$objPHPExcel->getActiveSheet()->getStyle('C11')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_DATETIME); + +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true); +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setAutoSize(true); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Datatypes'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +echo date('H:i:s') , " Reload workbook from saved file" , EOL; +$objPHPExcel = PHPExcel_IOFactory::load(str_replace('.php', '.xlsx', __FILE__)); + +var_dump($objPHPExcel->getActiveSheet()->toArray()); + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/02types.xlsx b/site/config/PHPExcel/Tests/02types.xlsx new file mode 100644 index 0000000..5149f22 Binary files /dev/null and b/site/config/PHPExcel/Tests/02types.xlsx differ diff --git a/site/config/PHPExcel/Tests/03formulas.php b/site/config/PHPExcel/Tests/03formulas.php new file mode 100644 index 0000000..9268b25 --- /dev/null +++ b/site/config/PHPExcel/Tests/03formulas.php @@ -0,0 +1,122 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data, we will use some formulas here +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Sum:'); + +$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Range #1') + ->setCellValue('B2', 3) + ->setCellValue('B3', 7) + ->setCellValue('B4', 13) + ->setCellValue('B5', '=SUM(B2:B4)'); +echo date('H:i:s') , " Sum of Range #1 is " , + $objPHPExcel->getActiveSheet()->getCell('B5')->getCalculatedValue() , EOL; + +$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Range #2') + ->setCellValue('C2', 5) + ->setCellValue('C3', 11) + ->setCellValue('C4', 17) + ->setCellValue('C5', '=SUM(C2:C4)'); +echo date('H:i:s') , " Sum of Range #2 is " , + $objPHPExcel->getActiveSheet()->getCell('C5')->getCalculatedValue() , EOL; + +$objPHPExcel->getActiveSheet()->setCellValue('A7', 'Total of both ranges:'); +$objPHPExcel->getActiveSheet()->setCellValue('B7', '=SUM(B5:C5)'); +echo date('H:i:s') , " Sum of both Ranges is " , + $objPHPExcel->getActiveSheet()->getCell('B7')->getCalculatedValue() , EOL; + +$objPHPExcel->getActiveSheet()->setCellValue('A8', 'Minimum of both ranges:'); +$objPHPExcel->getActiveSheet()->setCellValue('B8', '=MIN(B2:C4)'); +echo date('H:i:s') , " Minimum value in either Range is " , + $objPHPExcel->getActiveSheet()->getCell('B8')->getCalculatedValue() , EOL; + +$objPHPExcel->getActiveSheet()->setCellValue('A9', 'Maximum of both ranges:'); +$objPHPExcel->getActiveSheet()->setCellValue('B9', '=MAX(B2:C4)'); +echo date('H:i:s') , " Maximum value in either Range is " , + $objPHPExcel->getActiveSheet()->getCell('B9')->getCalculatedValue() , EOL; + +$objPHPExcel->getActiveSheet()->setCellValue('A10', 'Average of both ranges:'); +$objPHPExcel->getActiveSheet()->setCellValue('B10', '=AVERAGE(B2:C4)'); +echo date('H:i:s') , " Average value of both Ranges is " , + $objPHPExcel->getActiveSheet()->getCell('B10')->getCalculatedValue() , EOL; + + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Formulas'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/04printing.php b/site/config/PHPExcel/Tests/04printing.php new file mode 100644 index 0000000..ad4fcd6 --- /dev/null +++ b/site/config/PHPExcel/Tests/04printing.php @@ -0,0 +1,107 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data, we will use printing features +echo date('H:i:s') , " Add some data" , EOL; +for ($i = 1; $i < 200; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $i); + $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, 'Test value'); +} + +// Set header and footer. When no different headers for odd/even are used, odd header is assumed. +echo date('H:i:s') , " Set header/footer" , EOL; +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader('&L&G&C&HPlease treat this document as confidential!'); +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&L&B' . $objPHPExcel->getProperties()->getTitle() . '&RPage &P of &N'); + +// Add a drawing to the header +echo date('H:i:s') , " Add a drawing to the header" , EOL; +$objDrawing = new PHPExcel_Worksheet_HeaderFooterDrawing(); +$objDrawing->setName('PHPExcel logo'); +$objDrawing->setPath('./images/phpexcel_logo.gif'); +$objDrawing->setHeight(36); +$objPHPExcel->getActiveSheet()->getHeaderFooter()->addImage($objDrawing, PHPExcel_Worksheet_HeaderFooter::IMAGE_HEADER_LEFT); + +// Set page orientation and size +echo date('H:i:s') , " Set page orientation and size" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE); +$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Printing'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/05featuredemo.inc.php b/site/config/PHPExcel/Tests/05featuredemo.inc.php new file mode 100644 index 0000000..ee52712 --- /dev/null +++ b/site/config/PHPExcel/Tests/05featuredemo.inc.php @@ -0,0 +1,393 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); + +/** Include PHPExcel */ +require_once dirname(__FILE__) . '/../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , PHP_EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , PHP_EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet, representing sales data +echo date('H:i:s') , " Add some data" , PHP_EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Invoice'); +$objPHPExcel->getActiveSheet()->setCellValue('D1', PHPExcel_Shared_Date::PHPToExcel( gmmktime(0,0,0,date('m'),date('d'),date('Y')) )); +$objPHPExcel->getActiveSheet()->getStyle('D1')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15); +$objPHPExcel->getActiveSheet()->setCellValue('E1', '#12566'); + +$objPHPExcel->getActiveSheet()->setCellValue('A3', 'Product Id'); +$objPHPExcel->getActiveSheet()->setCellValue('B3', 'Description'); +$objPHPExcel->getActiveSheet()->setCellValue('C3', 'Price'); +$objPHPExcel->getActiveSheet()->setCellValue('D3', 'Amount'); +$objPHPExcel->getActiveSheet()->setCellValue('E3', 'Total'); + +$objPHPExcel->getActiveSheet()->setCellValue('A4', '1001'); +$objPHPExcel->getActiveSheet()->setCellValue('B4', 'PHP for dummies'); +$objPHPExcel->getActiveSheet()->setCellValue('C4', '20'); +$objPHPExcel->getActiveSheet()->setCellValue('D4', '1'); +$objPHPExcel->getActiveSheet()->setCellValue('E4', '=IF(D4<>"",C4*D4,"")'); + +$objPHPExcel->getActiveSheet()->setCellValue('A5', '1012'); +$objPHPExcel->getActiveSheet()->setCellValue('B5', 'OpenXML for dummies'); +$objPHPExcel->getActiveSheet()->setCellValue('C5', '22'); +$objPHPExcel->getActiveSheet()->setCellValue('D5', '2'); +$objPHPExcel->getActiveSheet()->setCellValue('E5', '=IF(D5<>"",C5*D5,"")'); + +$objPHPExcel->getActiveSheet()->setCellValue('E6', '=IF(D6<>"",C6*D6,"")'); +$objPHPExcel->getActiveSheet()->setCellValue('E7', '=IF(D7<>"",C7*D7,"")'); +$objPHPExcel->getActiveSheet()->setCellValue('E8', '=IF(D8<>"",C8*D8,"")'); +$objPHPExcel->getActiveSheet()->setCellValue('E9', '=IF(D9<>"",C9*D9,"")'); + +$objPHPExcel->getActiveSheet()->setCellValue('D11', 'Total excl.:'); +$objPHPExcel->getActiveSheet()->setCellValue('E11', '=SUM(E4:E9)'); + +$objPHPExcel->getActiveSheet()->setCellValue('D12', 'VAT:'); +$objPHPExcel->getActiveSheet()->setCellValue('E12', '=E11*0.21'); + +$objPHPExcel->getActiveSheet()->setCellValue('D13', 'Total incl.:'); +$objPHPExcel->getActiveSheet()->setCellValue('E13', '=E11+E12'); + +// Add comment +echo date('H:i:s') , " Add comments" , PHP_EOL; + +$objPHPExcel->getActiveSheet()->getComment('E11')->setAuthor('PHPExcel'); +$objCommentRichText = $objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun('PHPExcel:'); +$objCommentRichText->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun("\r\n"); +$objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun('Total amount on the current invoice, excluding VAT.'); + +$objPHPExcel->getActiveSheet()->getComment('E12')->setAuthor('PHPExcel'); +$objCommentRichText = $objPHPExcel->getActiveSheet()->getComment('E12')->getText()->createTextRun('PHPExcel:'); +$objCommentRichText->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getComment('E12')->getText()->createTextRun("\r\n"); +$objPHPExcel->getActiveSheet()->getComment('E12')->getText()->createTextRun('Total amount of VAT on the current invoice.'); + +$objPHPExcel->getActiveSheet()->getComment('E13')->setAuthor('PHPExcel'); +$objCommentRichText = $objPHPExcel->getActiveSheet()->getComment('E13')->getText()->createTextRun('PHPExcel:'); +$objCommentRichText->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getComment('E13')->getText()->createTextRun("\r\n"); +$objPHPExcel->getActiveSheet()->getComment('E13')->getText()->createTextRun('Total amount on the current invoice, including VAT.'); +$objPHPExcel->getActiveSheet()->getComment('E13')->setWidth('100pt'); +$objPHPExcel->getActiveSheet()->getComment('E13')->setHeight('100pt'); +$objPHPExcel->getActiveSheet()->getComment('E13')->setMarginLeft('150pt'); +$objPHPExcel->getActiveSheet()->getComment('E13')->getFillColor()->setRGB('EEEEEE'); + + +// Add rich-text string +echo date('H:i:s') , " Add rich-text string" , PHP_EOL; +$objRichText = new PHPExcel_RichText(); +$objRichText->createText('This invoice is '); + +$objPayable = $objRichText->createTextRun('payable within thirty days after the end of the month'); +$objPayable->getFont()->setBold(true); +$objPayable->getFont()->setItalic(true); +$objPayable->getFont()->setColor( new PHPExcel_Style_Color( PHPExcel_Style_Color::COLOR_DARKGREEN ) ); + +$objRichText->createText(', unless specified otherwise on the invoice.'); + +$objPHPExcel->getActiveSheet()->getCell('A18')->setValue($objRichText); + +// Merge cells +echo date('H:i:s') , " Merge cells" , PHP_EOL; +$objPHPExcel->getActiveSheet()->mergeCells('A18:E22'); +$objPHPExcel->getActiveSheet()->mergeCells('A28:B28'); // Just to test... +$objPHPExcel->getActiveSheet()->unmergeCells('A28:B28'); // Just to test... + +// Protect cells +echo date('H:i:s') , " Protect cells" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // Needs to be set to true in order to enable any worksheet protection! +$objPHPExcel->getActiveSheet()->protectCells('A3:E13', 'PHPExcel'); + +// Set cell number formats +echo date('H:i:s') , " Set cell number formats" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getStyle('E4:E13')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE); + +// Set column widths +echo date('H:i:s') , " Set column widths" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12); +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(12); + +// Set fonts +echo date('H:i:s') , " Set fonts" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setName('Candara'); +$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(20); +$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); +$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE); + +$objPHPExcel->getActiveSheet()->getStyle('D1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE); +$objPHPExcel->getActiveSheet()->getStyle('E1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE); + +$objPHPExcel->getActiveSheet()->getStyle('D13')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('E13')->getFont()->setBold(true); + +// Set alignments +echo date('H:i:s') , " Set alignments" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getStyle('D11')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); +$objPHPExcel->getActiveSheet()->getStyle('D12')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); +$objPHPExcel->getActiveSheet()->getStyle('D13')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); + +$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY); +$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); + +$objPHPExcel->getActiveSheet()->getStyle('B5')->getAlignment()->setShrinkToFit(true); + +// Set thin black border outline around column +echo date('H:i:s') , " Set thin black border outline around column" , PHP_EOL; +$styleThinBlackBorderOutline = array( + 'borders' => array( + 'outline' => array( + 'style' => PHPExcel_Style_Border::BORDER_THIN, + 'color' => array('argb' => 'FF000000'), + ), + ), +); +$objPHPExcel->getActiveSheet()->getStyle('A4:E10')->applyFromArray($styleThinBlackBorderOutline); + + +// Set thick brown border outline around "Total" +echo date('H:i:s') , " Set thick brown border outline around Total" , PHP_EOL; +$styleThickBrownBorderOutline = array( + 'borders' => array( + 'outline' => array( + 'style' => PHPExcel_Style_Border::BORDER_THICK, + 'color' => array('argb' => 'FF993300'), + ), + ), +); +$objPHPExcel->getActiveSheet()->getStyle('D13:E13')->applyFromArray($styleThickBrownBorderOutline); + +// Set fills +echo date('H:i:s') , " Set fills" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1:E1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID); +$objPHPExcel->getActiveSheet()->getStyle('A1:E1')->getFill()->getStartColor()->setARGB('FF808080'); + +// Set style for header row using alternative method +echo date('H:i:s') , " Set style for header row using alternative method" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getStyle('A3:E3')->applyFromArray( + array( + 'font' => array( + 'bold' => true + ), + 'alignment' => array( + 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_RIGHT, + ), + 'borders' => array( + 'top' => array( + 'style' => PHPExcel_Style_Border::BORDER_THIN + ) + ), + 'fill' => array( + 'type' => PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR, + 'rotation' => 90, + 'startcolor' => array( + 'argb' => 'FFA0A0A0' + ), + 'endcolor' => array( + 'argb' => 'FFFFFFFF' + ) + ) + ) +); + +$objPHPExcel->getActiveSheet()->getStyle('A3')->applyFromArray( + array( + 'alignment' => array( + 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_LEFT, + ), + 'borders' => array( + 'left' => array( + 'style' => PHPExcel_Style_Border::BORDER_THIN + ) + ) + ) +); + +$objPHPExcel->getActiveSheet()->getStyle('B3')->applyFromArray( + array( + 'alignment' => array( + 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_LEFT, + ) + ) +); + +$objPHPExcel->getActiveSheet()->getStyle('E3')->applyFromArray( + array( + 'borders' => array( + 'right' => array( + 'style' => PHPExcel_Style_Border::BORDER_THIN + ) + ) + ) +); + +// Unprotect a cell +echo date('H:i:s') , " Unprotect a cell" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getStyle('B1')->getProtection()->setLocked(PHPExcel_Style_Protection::PROTECTION_UNPROTECTED); + +// Add a hyperlink to the sheet +echo date('H:i:s') , " Add a hyperlink to the sheet" , PHP_EOL; +$objPHPExcel->getActiveSheet()->setCellValue('E26', 'www.phpexcel.net'); +$objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()->setUrl('http://www.phpexcel.net'); +$objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()->setTooltip('Navigate to website'); +$objPHPExcel->getActiveSheet()->getStyle('E26')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); + +$objPHPExcel->getActiveSheet()->setCellValue('E27', 'Terms and conditions'); +$objPHPExcel->getActiveSheet()->getCell('E27')->getHyperlink()->setUrl("sheet://'Terms and conditions'!A1"); +$objPHPExcel->getActiveSheet()->getCell('E27')->getHyperlink()->setTooltip('Review terms and conditions'); +$objPHPExcel->getActiveSheet()->getStyle('E27')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); + +// Add a drawing to the worksheet +echo date('H:i:s') , " Add a drawing to the worksheet" , PHP_EOL; +$objDrawing = new PHPExcel_Worksheet_Drawing(); +$objDrawing->setName('Logo'); +$objDrawing->setDescription('Logo'); +$objDrawing->setPath('./images/officelogo.jpg'); +$objDrawing->setHeight(36); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); + +// Add a drawing to the worksheet +echo date('H:i:s') , " Add a drawing to the worksheet" , PHP_EOL; +$objDrawing = new PHPExcel_Worksheet_Drawing(); +$objDrawing->setName('Paid'); +$objDrawing->setDescription('Paid'); +$objDrawing->setPath('./images/paid.png'); +$objDrawing->setCoordinates('B15'); +$objDrawing->setOffsetX(110); +$objDrawing->setRotation(25); +$objDrawing->getShadow()->setVisible(true); +$objDrawing->getShadow()->setDirection(45); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); + +// Add a drawing to the worksheet +echo date('H:i:s') , " Add a drawing to the worksheet" , PHP_EOL; +$objDrawing = new PHPExcel_Worksheet_Drawing(); +$objDrawing->setName('PHPExcel logo'); +$objDrawing->setDescription('PHPExcel logo'); +$objDrawing->setPath('./images/phpexcel_logo.gif'); +$objDrawing->setHeight(36); +$objDrawing->setCoordinates('D24'); +$objDrawing->setOffsetX(10); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); + +// Play around with inserting and removing rows and columns +echo date('H:i:s') , " Play around with inserting and removing rows and columns" , PHP_EOL; +$objPHPExcel->getActiveSheet()->insertNewRowBefore(6, 10); +$objPHPExcel->getActiveSheet()->removeRow(6, 10); +$objPHPExcel->getActiveSheet()->insertNewColumnBefore('E', 5); +$objPHPExcel->getActiveSheet()->removeColumn('E', 5); + +// Set header and footer. When no different headers for odd/even are used, odd header is assumed. +echo date('H:i:s') , " Set header/footer" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader('&L&BInvoice&RPrinted on &D'); +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&L&B' . $objPHPExcel->getProperties()->getTitle() . '&RPage &P of &N'); + +// Set page orientation and size +echo date('H:i:s') , " Set page orientation and size" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT); +$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4); + +// Rename first worksheet +echo date('H:i:s') , " Rename first worksheet" , PHP_EOL; +$objPHPExcel->getActiveSheet()->setTitle('Invoice'); + + +// Create a new worksheet, after the default sheet +echo date('H:i:s') , " Create a second Worksheet object" , PHP_EOL; +$objPHPExcel->createSheet(); + +// Llorem ipsum... +$sLloremIpsum = 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vivamus eget ante. Sed cursus nunc semper tortor. Aliquam luctus purus non elit. Fusce vel elit commodo sapien dignissim dignissim. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Curabitur accumsan magna sed massa. Nullam bibendum quam ac ipsum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin augue. Praesent malesuada justo sed orci. Pellentesque lacus ligula, sodales quis, ultricies a, ultricies vitae, elit. Sed luctus consectetuer dolor. Vivamus vel sem ut nisi sodales accumsan. Nunc et felis. Suspendisse semper viverra odio. Morbi at odio. Integer a orci a purus venenatis molestie. Nam mattis. Praesent rhoncus, nisi vel mattis auctor, neque nisi faucibus sem, non dapibus elit pede ac nisl. Cras turpis.'; + +// Add some data to the second sheet, resembling some different data types +echo date('H:i:s') , " Add some data" , PHP_EOL; +$objPHPExcel->setActiveSheetIndex(1); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Terms and conditions'); +$objPHPExcel->getActiveSheet()->setCellValue('A3', $sLloremIpsum); +$objPHPExcel->getActiveSheet()->setCellValue('A4', $sLloremIpsum); +$objPHPExcel->getActiveSheet()->setCellValue('A5', $sLloremIpsum); +$objPHPExcel->getActiveSheet()->setCellValue('A6', $sLloremIpsum); + +// Set the worksheet tab color +echo date('H:i:s') , " Set the worksheet tab color" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getTabColor()->setARGB('FF0094FF');; + +// Set alignments +echo date('H:i:s') , " Set alignments" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getStyle('A3:A6')->getAlignment()->setWrapText(true); + +// Set column widths +echo date('H:i:s') , " Set column widths" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(80); + +// Set fonts +echo date('H:i:s') , " Set fonts" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setName('Candara'); +$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(20); +$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); + +$objPHPExcel->getActiveSheet()->getStyle('A3:A6')->getFont()->setSize(8); + +// Add a drawing to the worksheet +echo date('H:i:s') , " Add a drawing to the worksheet" , PHP_EOL; +$objDrawing = new PHPExcel_Worksheet_Drawing(); +$objDrawing->setName('Terms and conditions'); +$objDrawing->setDescription('Terms and conditions'); +$objDrawing->setPath('./images/termsconditions.jpg'); +$objDrawing->setCoordinates('B14'); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); + +// Set page orientation and size +echo date('H:i:s') , " Set page orientation and size" , PHP_EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE); +$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4); + +// Rename second worksheet +echo date('H:i:s') , " Rename second worksheet" , PHP_EOL; +$objPHPExcel->getActiveSheet()->setTitle('Terms and conditions'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); diff --git a/site/config/PHPExcel/Tests/05featuredemo.php b/site/config/PHPExcel/Tests/05featuredemo.php new file mode 100644 index 0000000..f827f8c --- /dev/null +++ b/site/config/PHPExcel/Tests/05featuredemo.php @@ -0,0 +1,59 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +include "05featuredemo.inc.php"; + +/** Include PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/05featuredemo.xls b/site/config/PHPExcel/Tests/05featuredemo.xls new file mode 100644 index 0000000..4800e33 Binary files /dev/null and b/site/config/PHPExcel/Tests/05featuredemo.xls differ diff --git a/site/config/PHPExcel/Tests/05featuredemo.xlsx b/site/config/PHPExcel/Tests/05featuredemo.xlsx new file mode 100644 index 0000000..9e934b2 Binary files /dev/null and b/site/config/PHPExcel/Tests/05featuredemo.xlsx differ diff --git a/site/config/PHPExcel/Tests/06largescale-xls.php b/site/config/PHPExcel/Tests/06largescale-xls.php new file mode 100644 index 0000000..b75f298 --- /dev/null +++ b/site/config/PHPExcel/Tests/06largescale-xls.php @@ -0,0 +1,128 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +/* +After doing some test, I've got these results benchmarked +for writing to Excel2007: + + Number of rows Seconds to generate + 200 3 + 500 4 + 1000 6 + 2000 12 + 4000 36 + 8000 64 + 15000 465 +*/ + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Firstname"); +$objPHPExcel->getActiveSheet()->setCellValue('B1', "Lastname"); +$objPHPExcel->getActiveSheet()->setCellValue('C1', "Phone"); +$objPHPExcel->getActiveSheet()->setCellValue('D1', "Fax"); +$objPHPExcel->getActiveSheet()->setCellValue('E1', "Is Client ?"); + + +// Hide "Phone" and "fax" column +echo date('H:i:s') , " Hide 'Phone' and 'fax' columns" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setVisible(false); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setVisible(false); + + +// Set outline levels +echo date('H:i:s') , " Set outline levels" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setOutlineLevel(1) + ->setVisible(false) + ->setCollapsed(true); + +// Freeze panes +echo date('H:i:s') , " Freeze panes" , EOL; +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + +// Rows to repeat at top +echo date('H:i:s') , " Rows to repeat at top" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setRowsToRepeatAtTopByStartAndEnd(1, 1); + + +// Add data +for ($i = 2; $i <= 5000; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, "FName $i") + ->setCellValue('B' . $i, "LName $i") + ->setCellValue('C' . $i, "PhoneNo $i") + ->setCellValue('D' . $i, "FaxNo $i") + ->setCellValue('E' . $i, true); +} + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/06largescale-xls.xls b/site/config/PHPExcel/Tests/06largescale-xls.xls new file mode 100644 index 0000000..e65a2bc Binary files /dev/null and b/site/config/PHPExcel/Tests/06largescale-xls.xls differ diff --git a/site/config/PHPExcel/Tests/06largescale.php b/site/config/PHPExcel/Tests/06largescale.php new file mode 100644 index 0000000..844b2f4 --- /dev/null +++ b/site/config/PHPExcel/Tests/06largescale.php @@ -0,0 +1,128 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +/* +After doing some test, I've got these results benchmarked +for writing to Excel2007: + + Number of rows Seconds to generate + 200 3 + 500 4 + 1000 6 + 2000 12 + 4000 36 + 8000 64 + 15000 465 +*/ + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Firstname"); +$objPHPExcel->getActiveSheet()->setCellValue('B1', "Lastname"); +$objPHPExcel->getActiveSheet()->setCellValue('C1', "Phone"); +$objPHPExcel->getActiveSheet()->setCellValue('D1', "Fax"); +$objPHPExcel->getActiveSheet()->setCellValue('E1', "Is Client ?"); + + +// Hide "Phone" and "fax" column +echo date('H:i:s') , " Hide 'Phone' and 'fax' columns" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setVisible(false); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setVisible(false); + + +// Set outline levels +echo date('H:i:s') , " Set outline levels" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setOutlineLevel(1) + ->setVisible(false) + ->setCollapsed(true); + +// Freeze panes +echo date('H:i:s') , " Freeze panes" , EOL; +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + +// Rows to repeat at top +echo date('H:i:s') , " Rows to repeat at top" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setRowsToRepeatAtTopByStartAndEnd(1, 1); + + +// Add data +for ($i = 2; $i <= 5000; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, "FName $i") + ->setCellValue('B' . $i, "LName $i") + ->setCellValue('C' . $i, "PhoneNo $i") + ->setCellValue('D' . $i, "FaxNo $i") + ->setCellValue('E' . $i, true); +} + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/07reader.php b/site/config/PHPExcel/Tests/07reader.php new file mode 100644 index 0000000..059d4e7 --- /dev/null +++ b/site/config/PHPExcel/Tests/07reader.php @@ -0,0 +1,58 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +if (!file_exists("05featuredemo.xlsx")) { + exit("Please run 05featuredemo.php first." . EOL); +} + +echo date('H:i:s') , " Load from Excel2007 file" , EOL; +$objPHPExcel = PHPExcel_IOFactory::load("05featuredemo.xlsx"); + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/07reader.xlsx b/site/config/PHPExcel/Tests/07reader.xlsx new file mode 100644 index 0000000..ce21cac Binary files /dev/null and b/site/config/PHPExcel/Tests/07reader.xlsx differ diff --git a/site/config/PHPExcel/Tests/08conditionalformatting.php b/site/config/PHPExcel/Tests/08conditionalformatting.php new file mode 100644 index 0000000..a2c9473 --- /dev/null +++ b/site/config/PHPExcel/Tests/08conditionalformatting.php @@ -0,0 +1,170 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet, representing sales data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Description') + ->setCellValue('B1', 'Amount'); + +$objPHPExcel->getActiveSheet()->setCellValue('A2', 'Paycheck received') + ->setCellValue('B2', 100); + +$objPHPExcel->getActiveSheet()->setCellValue('A3', 'Cup of coffee bought') + ->setCellValue('B3', -1.5); + +$objPHPExcel->getActiveSheet()->setCellValue('A4', 'Cup of coffee bought') + ->setCellValue('B4', -1.5); + +$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Cup of tea bought') + ->setCellValue('B5', -1.2); + +$objPHPExcel->getActiveSheet()->setCellValue('A6', 'Found some money') + ->setCellValue('B6', 8); + +$objPHPExcel->getActiveSheet()->setCellValue('A7', 'Total:') + ->setCellValue('B7', '=SUM(B2:B6)'); + + +// Set column widths +echo date('H:i:s') , " Set column widths" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(30); +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(12); + + +// Add conditional formatting +echo date('H:i:s') , " Add conditional formatting" , EOL; +$objConditional1 = new PHPExcel_Style_Conditional(); +$objConditional1->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS) + ->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_BETWEEN) + ->addCondition('200') + ->addCondition('400'); +$objConditional1->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_YELLOW); +$objConditional1->getStyle()->getFont()->setBold(true); +$objConditional1->getStyle()->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE); + +$objConditional2 = new PHPExcel_Style_Conditional(); +$objConditional2->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS) + ->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_LESSTHAN) + ->addCondition('0'); +$objConditional2->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED); +$objConditional2->getStyle()->getFont()->setItalic(true); +$objConditional2->getStyle()->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE); + +$objConditional3 = new PHPExcel_Style_Conditional(); +$objConditional3->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS) + ->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_GREATERTHANOREQUAL) + ->addCondition('0'); +$objConditional3->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_GREEN); +$objConditional3->getStyle()->getFont()->setItalic(true); +$objConditional3->getStyle()->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE); + +$conditionalStyles = $objPHPExcel->getActiveSheet()->getStyle('B2')->getConditionalStyles(); +array_push($conditionalStyles, $objConditional1); +array_push($conditionalStyles, $objConditional2); +array_push($conditionalStyles, $objConditional3); +$objPHPExcel->getActiveSheet()->getStyle('B2')->setConditionalStyles($conditionalStyles); + + +// duplicate the conditional styles across a range of cells +echo date('H:i:s') , " Duplicate the conditional formatting across a range of cells" , EOL; +$objPHPExcel->getActiveSheet()->duplicateConditionalStyle( + $objPHPExcel->getActiveSheet()->getStyle('B2')->getConditionalStyles(), + 'B3:B7' + ); + + +// Set fonts +echo date('H:i:s') , " Set fonts" , EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1:B1')->getFont()->setBold(true); +//$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('A7:B7')->getFont()->setBold(true); +//$objPHPExcel->getActiveSheet()->getStyle('B7')->getFont()->setBold(true); + + +// Set header and footer. When no different headers for odd/even are used, odd header is assumed. +echo date('H:i:s') , " Set header/footer" , EOL; +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader('&L&BPersonal cash register&RPrinted on &D'); +$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&L&B' . $objPHPExcel->getProperties()->getTitle() . '&RPage &P of &N'); + + +// Set page orientation and size +echo date('H:i:s') , " Set page orientation and size" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_PORTRAIT); +$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4); + + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Invoice'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/09pagebreaks.php b/site/config/PHPExcel/Tests/09pagebreaks.php new file mode 100644 index 0000000..bbb8237 --- /dev/null +++ b/site/config/PHPExcel/Tests/09pagebreaks.php @@ -0,0 +1,103 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data and page breaks" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Firstname") + ->setCellValue('B1', "Lastname") + ->setCellValue('C1', "Phone") + ->setCellValue('D1', "Fax") + ->setCellValue('E1', "Is Client ?"); + + +// Add data +for ($i = 2; $i <= 50; $i++) { + $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, "FName $i"); + $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, "LName $i"); + $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, "PhoneNo $i"); + $objPHPExcel->getActiveSheet()->setCellValue('D' . $i, "FaxNo $i"); + $objPHPExcel->getActiveSheet()->setCellValue('E' . $i, true); + + // Add page breaks every 10 rows + if ($i % 10 == 0) { + // Add a page break + $objPHPExcel->getActiveSheet()->setBreak( 'A' . $i, PHPExcel_Worksheet::BREAK_ROW ); + } +} + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/10autofilter-selection-1.php b/site/config/PHPExcel/Tests/10autofilter-selection-1.php new file mode 100644 index 0000000..680c24e --- /dev/null +++ b/site/config/PHPExcel/Tests/10autofilter-selection-1.php @@ -0,0 +1,200 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s').' Create new PHPExcel object'.EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s').' Set document properties'.EOL; +$objPHPExcel->getProperties()->setCreator('Maarten Balliauw') + ->setLastModifiedBy('Maarten Balliauw') + ->setTitle('PHPExcel Test Document') + ->setSubject('PHPExcel Test Document') + ->setDescription('Test document for PHPExcel, generated using PHP classes.') + ->setKeywords('office PHPExcel php') + ->setCategory('Test result file'); + +// Create the worksheet +echo date('H:i:s').' Add data'.EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Financial Year') + ->setCellValue('B1', 'Financial Period') + ->setCellValue('C1', 'Country') + ->setCellValue('D1', 'Date') + ->setCellValue('E1', 'Sales Value') + ->setCellValue('F1', 'Expenditure') + ; +$startYear = $endYear = $currentYear = date('Y'); +$startYear--; +$endYear++; + +$years = range($startYear,$endYear); +$periods = range(1,12); +$countries = array( 'United States', 'UK', 'France', 'Germany', + 'Italy', 'Spain', 'Portugal', 'Japan' + ); + +$row = 2; +foreach($years as $year) { + foreach($periods as $period) { + foreach($countries as $country) { + $endDays = date('t',mktime(0,0,0,$period,1,$year)); + for($i = 1; $i <= $endDays; ++$i) { + $eDate = PHPExcel_Shared_Date::FormattedPHPToExcel( + $year, + $period, + $i + ); + $value = rand(500,1000) * (1 + rand(-0.25,+0.25)); + $salesValue = $invoiceValue = NULL; + $incomeOrExpenditure = rand(-1,1); + if ($incomeOrExpenditure == -1) { + $expenditure = rand(-500,-1000) * (1 + rand(-0.25,+0.25)); + $income = NULL; + } elseif ($incomeOrExpenditure == 1) { + $expenditure = rand(-500,-1000) * (1 + rand(-0.25,+0.25)); + $income = rand(500,1000) * (1 + rand(-0.25,+0.25));; + } else { + $expenditure = NULL; + $income = rand(500,1000) * (1 + rand(-0.25,+0.25));; + } + $dataArray = array( $year, + $period, + $country, + $eDate, + $income, + $expenditure, + ); + $objPHPExcel->getActiveSheet()->fromArray($dataArray, NULL, 'A'.$row++); + } + } + } +} +$row--; + + +// Set styling +echo date('H:i:s').' Set styling'.EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1:F1')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('A1:F1')->getAlignment()->setWrapText(TRUE); +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(12.5); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(10.5); +$objPHPExcel->getActiveSheet()->getStyle('D2:D'.$row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2); +$objPHPExcel->getActiveSheet()->getStyle('E2:F'.$row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE); +$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(14); +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + + +// Set autofilter range +echo date('H:i:s').' Set autofilter range'.EOL; +// Always include the complete filter range! +// Excel does support setting only the caption +// row, but that's not a best practise... +$objPHPExcel->getActiveSheet()->setAutoFilter($objPHPExcel->getActiveSheet()->calculateWorksheetDimension()); + +// Set active filters +$autoFilter = $objPHPExcel->getActiveSheet()->getAutoFilter(); +echo date('H:i:s').' Set active filters'.EOL; +// Filter the Country column on a filter value of countries beginning with the letter U (or Japan) +// We use * as a wildcard, so specify as U* and using a wildcard requires customFilter +$autoFilter->getColumn('C') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + 'u*' + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); +$autoFilter->getColumn('C') + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + 'japan' + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); +// Filter the Date column on a filter value of the first day of every period of the current year +// We us a dateGroup ruletype for this, although it is still a standard filter +foreach($periods as $period) { + $endDate = date('t',mktime(0,0,0,$period,1,$currentYear)); + + $autoFilter->getColumn('D') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + array( + 'year' => $currentYear, + 'month' => $period, + 'day' => $endDate + ) + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DATEGROUP); +} +// Display only sales values that are blank +// Standard filter, operator equals, and value of NULL +$autoFilter->getColumn('E') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + '' + ); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + +// Save Excel 2007 file +echo date('H:i:s').' Write to Excel2007 format'.EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s').' File written to '.str_replace('.php', '.xlsx', __FILE__).EOL; +// Save Excel5 file +echo date('H:i:s').' Write to Excel5 format'.EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s').' File written to '.str_replace('.php', '.xls', __FILE__).EOL; + +// Echo memory peak usage +echo date('H:i:s').' Peak memory usage: '.(memory_get_peak_usage(true) / 1024 / 1024).' MB'.EOL; + +// Echo done +echo date('H:i:s').' Done writing file'.EOL; diff --git a/site/config/PHPExcel/Tests/10autofilter-selection-2.php b/site/config/PHPExcel/Tests/10autofilter-selection-2.php new file mode 100644 index 0000000..d7cf444 --- /dev/null +++ b/site/config/PHPExcel/Tests/10autofilter-selection-2.php @@ -0,0 +1,192 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s').' Create new PHPExcel object'.EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s').' Set document properties'.EOL; +$objPHPExcel->getProperties()->setCreator('Maarten Balliauw') + ->setLastModifiedBy('Maarten Balliauw') + ->setTitle('PHPExcel Test Document') + ->setSubject('PHPExcel Test Document') + ->setDescription('Test document for PHPExcel, generated using PHP classes.') + ->setKeywords('office PHPExcel php') + ->setCategory('Test result file'); + +// Create the worksheet +echo date('H:i:s').' Add data'.EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Financial Year') + ->setCellValue('B1', 'Financial Period') + ->setCellValue('C1', 'Country') + ->setCellValue('D1', 'Date') + ->setCellValue('E1', 'Sales Value') + ->setCellValue('F1', 'Expenditure') + ; +$startYear = $endYear = $currentYear = date('Y'); +$startYear--; +$endYear++; + +$years = range($startYear,$endYear); +$periods = range(1,12); +$countries = array( 'United States', 'UK', 'France', 'Germany', + 'Italy', 'Spain', 'Portugal', 'Japan' + ); + +$row = 2; +foreach($years as $year) { + foreach($periods as $period) { + foreach($countries as $country) { + $endDays = date('t',mktime(0,0,0,$period,1,$year)); + for($i = 1; $i <= $endDays; ++$i) { + $eDate = PHPExcel_Shared_Date::FormattedPHPToExcel( + $year, + $period, + $i + ); + $value = rand(500,1000) * (1 + rand(-0.25,+0.25)); + $salesValue = $invoiceValue = NULL; + $incomeOrExpenditure = rand(-1,1); + if ($incomeOrExpenditure == -1) { + $expenditure = rand(-500,-1000) * (1 + rand(-0.25,+0.25)); + $income = NULL; + } elseif ($incomeOrExpenditure == 1) { + $expenditure = rand(-500,-1000) * (1 + rand(-0.25,+0.25)); + $income = rand(500,1000) * (1 + rand(-0.25,+0.25));; + } else { + $expenditure = NULL; + $income = rand(500,1000) * (1 + rand(-0.25,+0.25));; + } + $dataArray = array( $year, + $period, + $country, + $eDate, + $income, + $expenditure, + ); + $objPHPExcel->getActiveSheet()->fromArray($dataArray, NULL, 'A'.$row++); + } + } + } +} +$row--; + + +// Set styling +echo date('H:i:s').' Set styling'.EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1:F1')->getFont()->setBold(true); +$objPHPExcel->getActiveSheet()->getStyle('A1:F1')->getAlignment()->setWrapText(TRUE); +$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(12.5); +$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(10.5); +$objPHPExcel->getActiveSheet()->getStyle('D2:D'.$row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDD2); +$objPHPExcel->getActiveSheet()->getStyle('E2:F'.$row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE); +$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(14); +$objPHPExcel->getActiveSheet()->freezePane('A2'); + + + +// Set autofilter range +echo date('H:i:s').' Set autofilter range'.EOL; +// Always include the complete filter range! +// Excel does support setting only the caption +// row, but that's not a best practise... +$objPHPExcel->getActiveSheet()->setAutoFilter($objPHPExcel->getActiveSheet()->calculateWorksheetDimension()); + +// Set active filters +$autoFilter = $objPHPExcel->getActiveSheet()->getAutoFilter(); +echo date('H:i:s').' Set active filters'.EOL; +// Filter the Country column on a filter value of Germany +// As it's just a simple value filter, we can use FILTERTYPE_FILTER +$autoFilter->getColumn('C') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_FILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + 'Germany' + ); +// Filter the Date column on a filter value of the year to date +$autoFilter->getColumn('D') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_DYNAMICFILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_EQUAL, + NULL, + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMIC_YEARTODATE + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_DYNAMICFILTER); +// Display only sales values that are between 400 and 600 +$autoFilter->getColumn('E') + ->setFilterType(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_FILTERTYPE_CUSTOMFILTER) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_GREATERTHANOREQUAL, + 400 + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); +$autoFilter->getColumn('E') + ->setJoin(PHPExcel_Worksheet_AutoFilter_Column::AUTOFILTER_COLUMN_JOIN_AND) + ->createRule() + ->setRule( + PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_COLUMN_RULE_LESSTHANOREQUAL, + 600 + ) + ->setRuleType(PHPExcel_Worksheet_AutoFilter_Column_Rule::AUTOFILTER_RULETYPE_CUSTOMFILTER); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + +// Save Excel 2007 file +echo date('H:i:s').' Write to Excel2007 format'.EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s').' File written to '.str_replace('.php', '.xlsx', __FILE__).EOL; +// Save Excel5 file +echo date('H:i:s').' Write to Excel5 format'.EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s').' File written to '.str_replace('.php', '.xls', __FILE__).EOL; + +// Echo memory peak usage +echo date('H:i:s').' Peak memory usage: '.(memory_get_peak_usage(true) / 1024 / 1024).' MB'.EOL; + +// Echo done +echo date('H:i:s').' Done writing file'.EOL; diff --git a/site/config/PHPExcel/Tests/10autofilter.php b/site/config/PHPExcel/Tests/10autofilter.php new file mode 100644 index 0000000..2b285a3 --- /dev/null +++ b/site/config/PHPExcel/Tests/10autofilter.php @@ -0,0 +1,151 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + +// Create new PHPExcel object +echo date('H:i:s').' Create new PHPExcel object'.EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s').' Set document properties'.EOL; +$objPHPExcel->getProperties()->setCreator('Maarten Balliauw') + ->setLastModifiedBy('Maarten Balliauw') + ->setTitle('PHPExcel Test Document') + ->setSubject('PHPExcel Test Document') + ->setDescription('Test document for PHPExcel, generated using PHP classes.') + ->setKeywords('office PHPExcel php') + ->setCategory('Test result file'); + +// Create the worksheet +echo date('H:i:s').' Add data'.EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Year') + ->setCellValue('B1', 'Quarter') + ->setCellValue('C1', 'Country') + ->setCellValue('D1', 'Sales'); + +$dataArray = array(array('2010', 'Q1', 'United States', 790), + array('2010', 'Q2', 'United States', 730), + array('2010', 'Q3', 'United States', 860), + array('2010', 'Q4', 'United States', 850), + array('2011', 'Q1', 'United States', 800), + array('2011', 'Q2', 'United States', 700), + array('2011', 'Q3', 'United States', 900), + array('2011', 'Q4', 'United States', 950), + array('2010', 'Q1', 'Belgium', 380), + array('2010', 'Q2', 'Belgium', 390), + array('2010', 'Q3', 'Belgium', 420), + array('2010', 'Q4', 'Belgium', 460), + array('2011', 'Q1', 'Belgium', 400), + array('2011', 'Q2', 'Belgium', 350), + array('2011', 'Q3', 'Belgium', 450), + array('2011', 'Q4', 'Belgium', 500), + array('2010', 'Q1', 'UK', 690), + array('2010', 'Q2', 'UK', 610), + array('2010', 'Q3', 'UK', 620), + array('2010', 'Q4', 'UK', 600), + array('2011', 'Q1', 'UK', 720), + array('2011', 'Q2', 'UK', 650), + array('2011', 'Q3', 'UK', 580), + array('2011', 'Q4', 'UK', 510), + array('2010', 'Q1', 'France', 510), + array('2010', 'Q2', 'France', 490), + array('2010', 'Q3', 'France', 460), + array('2010', 'Q4', 'France', 590), + array('2011', 'Q1', 'France', 620), + array('2011', 'Q2', 'France', 650), + array('2011', 'Q3', 'France', 415), + array('2011', 'Q4', 'France', 570), + array('2010', 'Q1', 'Germany', 720), + array('2010', 'Q2', 'Germany', 680), + array('2010', 'Q3', 'Germany', 640), + array('2010', 'Q4', 'Germany', 660), + array('2011', 'Q1', 'Germany', 680), + array('2011', 'Q2', 'Germany', 620), + array('2011', 'Q3', 'Germany', 710), + array('2011', 'Q4', 'Germany', 690), + array('2010', 'Q1', 'Spain', 510), + array('2010', 'Q2', 'Spain', 490), + array('2010', 'Q3', 'Spain', 470), + array('2010', 'Q4', 'Spain', 420), + array('2011', 'Q1', 'Spain', 460), + array('2011', 'Q2', 'Spain', 390), + array('2011', 'Q3', 'Spain', 430), + array('2011', 'Q4', 'Spain', 415), + array('2010', 'Q1', 'Italy', 440), + array('2010', 'Q2', 'Italy', 410), + array('2010', 'Q3', 'Italy', 420), + array('2010', 'Q4', 'Italy', 450), + array('2011', 'Q1', 'Italy', 430), + array('2011', 'Q2', 'Italy', 370), + array('2011', 'Q3', 'Italy', 350), + array('2011', 'Q4', 'Italy', 335), + ); +$objPHPExcel->getActiveSheet()->fromArray($dataArray, NULL, 'A2'); + +// Set title row bold +echo date('H:i:s').' Set title row bold'.EOL; +$objPHPExcel->getActiveSheet()->getStyle('A1:D1')->getFont()->setBold(true); + +// Set autofilter +echo date('H:i:s').' Set autofilter'.EOL; +// Always include the complete filter range! +// Excel does support setting only the caption +// row, but that's not a best practise... +$objPHPExcel->getActiveSheet()->setAutoFilter($objPHPExcel->getActiveSheet()->calculateWorksheetDimension()); + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + +// Save Excel 2007 file +echo date('H:i:s').' Write to Excel2007 format'.EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s').' File written to '.str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)).EOL; +// Save Excel5 file +echo date('H:i:s').' Write to Excel5 format'.EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s').' File written to '.str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)).EOL; + +// Echo memory peak usage +echo date('H:i:s').' Peak memory usage: '.(memory_get_peak_usage(true) / 1024 / 1024).' MB'.EOL; + +// Echo done +echo date('H:i:s').' Done writing files'.EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/11documentsecurity-xls.php b/site/config/PHPExcel/Tests/11documentsecurity-xls.php new file mode 100644 index 0000000..32eb40b --- /dev/null +++ b/site/config/PHPExcel/Tests/11documentsecurity-xls.php @@ -0,0 +1,101 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Hello'); +$objPHPExcel->getActiveSheet()->setCellValue('B2', 'world!'); +$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Hello'); +$objPHPExcel->getActiveSheet()->setCellValue('D2', 'world!'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set document security +echo date('H:i:s') , " Set document security" , EOL; +$objPHPExcel->getSecurity()->setLockWindows(true); +$objPHPExcel->getSecurity()->setLockStructure(true); +$objPHPExcel->getSecurity()->setWorkbookPassword("PHPExcel"); + + +// Set sheet security +echo date('H:i:s') , " Set sheet security" , EOL; +$objPHPExcel->getActiveSheet()->getProtection()->setPassword('PHPExcel'); +$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // This should be enabled in order to enable any of the following! +$objPHPExcel->getActiveSheet()->getProtection()->setSort(true); +$objPHPExcel->getActiveSheet()->getProtection()->setInsertRows(true); +$objPHPExcel->getActiveSheet()->getProtection()->setFormatCells(true); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/11documentsecurity.php b/site/config/PHPExcel/Tests/11documentsecurity.php new file mode 100644 index 0000000..62520b8 --- /dev/null +++ b/site/config/PHPExcel/Tests/11documentsecurity.php @@ -0,0 +1,101 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Hello'); +$objPHPExcel->getActiveSheet()->setCellValue('B2', 'world!'); +$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Hello'); +$objPHPExcel->getActiveSheet()->setCellValue('D2', 'world!'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Simple'); + + +// Set document security +echo date('H:i:s') , " Set document security" , EOL; +$objPHPExcel->getSecurity()->setLockWindows(true); +$objPHPExcel->getSecurity()->setLockStructure(true); +$objPHPExcel->getSecurity()->setWorkbookPassword("PHPExcel"); + + +// Set sheet security +echo date('H:i:s') , " Set sheet security" , EOL; +$objPHPExcel->getActiveSheet()->getProtection()->setPassword('PHPExcel'); +$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // This should be enabled in order to enable any of the following! +$objPHPExcel->getActiveSheet()->getProtection()->setSort(true); +$objPHPExcel->getActiveSheet()->getProtection()->setInsertRows(true); +$objPHPExcel->getActiveSheet()->getProtection()->setFormatCells(true); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/13calculation.php b/site/config/PHPExcel/Tests/13calculation.php new file mode 100644 index 0000000..533914c --- /dev/null +++ b/site/config/PHPExcel/Tests/13calculation.php @@ -0,0 +1,217 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// List functions +echo date('H:i:s') , " List implemented functions" , EOL; +$objCalc = PHPExcel_Calculation::getInstance(); +print_r($objCalc->listFunctionNames()); + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Add some data, we will use some formulas here +echo date('H:i:s') , " Add some data and formulas" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('A14', 'Count:') + ->setCellValue('A15', 'Sum:') + ->setCellValue('A16', 'Max:') + ->setCellValue('A17', 'Min:') + ->setCellValue('A18', 'Average:') + ->setCellValue('A19', 'Median:') + ->setCellValue('A20', 'Mode:'); + +$objPHPExcel->getActiveSheet()->setCellValue('A22', 'CountA:') + ->setCellValue('A23', 'MaxA:') + ->setCellValue('A24', 'MinA:'); + +$objPHPExcel->getActiveSheet()->setCellValue('A26', 'StDev:') + ->setCellValue('A27', 'StDevA:') + ->setCellValue('A28', 'StDevP:') + ->setCellValue('A29', 'StDevPA:'); + +$objPHPExcel->getActiveSheet()->setCellValue('A31', 'DevSq:') + ->setCellValue('A32', 'Var:') + ->setCellValue('A33', 'VarA:') + ->setCellValue('A34', 'VarP:') + ->setCellValue('A35', 'VarPA:'); + +$objPHPExcel->getActiveSheet()->setCellValue('A37', 'Date:'); + + +$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Range 1') + ->setCellValue('B2', 2) + ->setCellValue('B3', 8) + ->setCellValue('B4', 10) + ->setCellValue('B5', True) + ->setCellValue('B6', False) + ->setCellValue('B7', 'Text String') + ->setCellValue('B9', '22') + ->setCellValue('B10', 4) + ->setCellValue('B11', 6) + ->setCellValue('B12', 12); + +$objPHPExcel->getActiveSheet()->setCellValue('B14', '=COUNT(B2:B12)') + ->setCellValue('B15', '=SUM(B2:B12)') + ->setCellValue('B16', '=MAX(B2:B12)') + ->setCellValue('B17', '=MIN(B2:B12)') + ->setCellValue('B18', '=AVERAGE(B2:B12)') + ->setCellValue('B19', '=MEDIAN(B2:B12)') + ->setCellValue('B20', '=MODE(B2:B12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('B22', '=COUNTA(B2:B12)') + ->setCellValue('B23', '=MAXA(B2:B12)') + ->setCellValue('B24', '=MINA(B2:B12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('B26', '=STDEV(B2:B12)') + ->setCellValue('B27', '=STDEVA(B2:B12)') + ->setCellValue('B28', '=STDEVP(B2:B12)') + ->setCellValue('B29', '=STDEVPA(B2:B12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('B31', '=DEVSQ(B2:B12)') + ->setCellValue('B32', '=VAR(B2:B12)') + ->setCellValue('B33', '=VARA(B2:B12)') + ->setCellValue('B34', '=VARP(B2:B12)') + ->setCellValue('B35', '=VARPA(B2:B12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('B37', '=DATE(2007, 12, 21)') + ->setCellValue('B38', '=DATEDIF( DATE(2007, 12, 21), DATE(2007, 12, 22), "D" )') + ->setCellValue('B39', '=DATEVALUE("01-Feb-2006 10:06 AM")') + ->setCellValue('B40', '=DAY( DATE(2006, 1, 2) )') + ->setCellValue('B41', '=DAYS360( DATE(2002, 2, 3), DATE(2005, 5, 31) )'); + + +$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Range 2') + ->setCellValue('C2', 1) + ->setCellValue('C3', 2) + ->setCellValue('C4', 2) + ->setCellValue('C5', 3) + ->setCellValue('C6', 3) + ->setCellValue('C7', 3) + ->setCellValue('C8', '0') + ->setCellValue('C9', 4) + ->setCellValue('C10', 4) + ->setCellValue('C11', 4) + ->setCellValue('C12', 4); + +$objPHPExcel->getActiveSheet()->setCellValue('C14', '=COUNT(C2:C12)') + ->setCellValue('C15', '=SUM(C2:C12)') + ->setCellValue('C16', '=MAX(C2:C12)') + ->setCellValue('C17', '=MIN(C2:C12)') + ->setCellValue('C18', '=AVERAGE(C2:C12)') + ->setCellValue('C19', '=MEDIAN(C2:C12)') + ->setCellValue('C20', '=MODE(C2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('C22', '=COUNTA(C2:C12)') + ->setCellValue('C23', '=MAXA(C2:C12)') + ->setCellValue('C24', '=MINA(C2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('C26', '=STDEV(C2:C12)') + ->setCellValue('C27', '=STDEVA(C2:C12)') + ->setCellValue('C28', '=STDEVP(C2:C12)') + ->setCellValue('C29', '=STDEVPA(C2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('C31', '=DEVSQ(C2:C12)') + ->setCellValue('C32', '=VAR(C2:C12)') + ->setCellValue('C33', '=VARA(C2:C12)') + ->setCellValue('C34', '=VARP(C2:C12)') + ->setCellValue('C35', '=VARPA(C2:C12)'); + + +$objPHPExcel->getActiveSheet()->setCellValue('D1', 'Range 3') + ->setCellValue('D2', 2) + ->setCellValue('D3', 3) + ->setCellValue('D4', 4); + +$objPHPExcel->getActiveSheet()->setCellValue('D14', '=((D2 * D3) + D4) & " should be 10"'); + +$objPHPExcel->getActiveSheet()->setCellValue('E12', 'Other functions') + ->setCellValue('E14', '=PI()') + ->setCellValue('E15', '=RAND()') + ->setCellValue('E16', '=RANDBETWEEN(5, 10)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E17', 'Count of both ranges:') + ->setCellValue('F17', '=COUNT(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E18', 'Total of both ranges:') + ->setCellValue('F18', '=SUM(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E19', 'Maximum of both ranges:') + ->setCellValue('F19', '=MAX(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E20', 'Minimum of both ranges:') + ->setCellValue('F20', '=MIN(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E21', 'Average of both ranges:') + ->setCellValue('F21', '=AVERAGE(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E22', 'Median of both ranges:') + ->setCellValue('F22', '=MEDIAN(B2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E23', 'Mode of both ranges:') + ->setCellValue('F23', '=MODE(B2:C12)'); + + +// Calculated data +echo date('H:i:s') , " Calculated data" , EOL; +for ($col = 'B'; $col != 'G'; ++$col) { + for($row = 14; $row <= 41; ++$row) { + if ((!is_null($formula = $objPHPExcel->getActiveSheet()->getCell($col.$row)->getValue())) && + ($formula[0] == '=')) { + echo 'Value of ' , $col , $row , ' [' , $formula , ']: ' , + $objPHPExcel->getActiveSheet()->getCell($col.$row)->getCalculatedValue() . EOL; + } + } +} + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/14excel5.php b/site/config/PHPExcel/Tests/14excel5.php new file mode 100644 index 0000000..39f6ad8 --- /dev/null +++ b/site/config/PHPExcel/Tests/14excel5.php @@ -0,0 +1,54 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +include "05featuredemo.inc.php"; + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/15datavalidation-xls.php b/site/config/PHPExcel/Tests/15datavalidation-xls.php new file mode 100644 index 0000000..b892c88 --- /dev/null +++ b/site/config/PHPExcel/Tests/15datavalidation-xls.php @@ -0,0 +1,113 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Cell B3 and B5 contain data validation...") + ->setCellValue('A3', "Number:") + ->setCellValue('B3', "10") + ->setCellValue('A5', "List:") + ->setCellValue('B5', "Item A"); + + +// Set data validation +echo date('H:i:s') , " Set data validation" , EOL; +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B3')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_WHOLE ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_STOP ); +$objValidation->setAllowBlank(true); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Only numbers between 10 and 20 are allowed!'); +$objValidation->setPromptTitle('Allowed input'); +$objValidation->setPrompt('Only numbers between 10 and 20 are allowed.'); +$objValidation->setFormula1(10); +$objValidation->setFormula2(20); + +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B5')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION ); +$objValidation->setAllowBlank(false); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setShowDropDown(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Value is not in list.'); +$objValidation->setPromptTitle('Pick from list'); +$objValidation->setPrompt('Please pick a value from the drop-down list.'); +$objValidation->setFormula1('"Item A,Item B,Item C"'); // Make sure to put the list items between " and " !!! + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/15datavalidation.php b/site/config/PHPExcel/Tests/15datavalidation.php new file mode 100644 index 0000000..52c40ce --- /dev/null +++ b/site/config/PHPExcel/Tests/15datavalidation.php @@ -0,0 +1,113 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Create a first sheet +echo date('H:i:s') , " Add data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', "Cell B3 and B5 contain data validation...") + ->setCellValue('A3', "Number:") + ->setCellValue('B3', "10") + ->setCellValue('A5', "List:") + ->setCellValue('B5', "Item A"); + + +// Set data validation +echo date('H:i:s') , " Set data validation" , EOL; +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B3')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_WHOLE ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_STOP ); +$objValidation->setAllowBlank(true); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Only numbers between 10 and 20 are allowed!'); +$objValidation->setPromptTitle('Allowed input'); +$objValidation->setPrompt('Only numbers between 10 and 20 are allowed.'); +$objValidation->setFormula1(10); +$objValidation->setFormula2(20); + +$objValidation = $objPHPExcel->getActiveSheet()->getCell('B5')->getDataValidation(); +$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST ); +$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION ); +$objValidation->setAllowBlank(false); +$objValidation->setShowInputMessage(true); +$objValidation->setShowErrorMessage(true); +$objValidation->setShowDropDown(true); +$objValidation->setErrorTitle('Input error'); +$objValidation->setError('Value is not in list.'); +$objValidation->setPromptTitle('Pick from list'); +$objValidation->setPrompt('Please pick a value from the drop-down list.'); +$objValidation->setFormula1('"Item A,Item B,Item C"'); // Make sure to put the list items between " and " !!! + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/16csv.php b/site/config/PHPExcel/Tests/16csv.php new file mode 100644 index 0000000..3376427 --- /dev/null +++ b/site/config/PHPExcel/Tests/16csv.php @@ -0,0 +1,72 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +include "05featuredemo.inc.php"; + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Write to CSV format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV')->setDelimiter(',') + ->setEnclosure('"') + ->setLineEnding("\r\n") + ->setSheetIndex(0) + ->save(str_replace('.php', '.csv', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.csv', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +echo date('H:i:s') , " Read from CSV format" , EOL; +$objReader = PHPExcel_IOFactory::createReader('CSV')->setDelimiter(',') + ->setEnclosure('"') + ->setLineEnding("\r\n") + ->setSheetIndex(0); +$objPHPExcelFromCSV = $objReader->load(str_replace('.php', '.csv', __FILE__)); +echo date('H:i:s') , " File read from " , str_replace('.php', '.csv', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter2007 = PHPExcel_IOFactory::createWriter($objPHPExcelFromCSV, 'Excel2007'); +$objWriter2007->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/17html.php b/site/config/PHPExcel/Tests/17html.php new file mode 100644 index 0000000..8260037 --- /dev/null +++ b/site/config/PHPExcel/Tests/17html.php @@ -0,0 +1,57 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +include "05featuredemo.inc.php"; + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Write to HTML format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'HTML'); +$objWriter->setSheetIndex(0); +//$objWriter->setImagesRoot('http://www.example.com'); +$objWriter->save(str_replace('.php', '.htm', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.htm', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/18extendedcalculation.php b/site/config/PHPExcel/Tests/18extendedcalculation.php new file mode 100644 index 0000000..89ccd1c --- /dev/null +++ b/site/config/PHPExcel/Tests/18extendedcalculation.php @@ -0,0 +1,108 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// List functions +echo date('H:i:s') . " List implemented functions\n"; +$objCalc = PHPExcel_Calculation::getInstance(); +print_r($objCalc->listFunctionNames()); + +// Create new PHPExcel object +echo date('H:i:s') . " Create new PHPExcel object\n"; +$objPHPExcel = new PHPExcel(); + +// Add some data, we will use some formulas here +echo date('H:i:s') . " Add some data\n"; +$objPHPExcel->getActiveSheet()->setCellValue('A14', 'Count:'); + +$objPHPExcel->getActiveSheet()->setCellValue('B1', 'Range 1'); +$objPHPExcel->getActiveSheet()->setCellValue('B2', 2); +$objPHPExcel->getActiveSheet()->setCellValue('B3', 8); +$objPHPExcel->getActiveSheet()->setCellValue('B4', 10); +$objPHPExcel->getActiveSheet()->setCellValue('B5', True); +$objPHPExcel->getActiveSheet()->setCellValue('B6', False); +$objPHPExcel->getActiveSheet()->setCellValue('B7', 'Text String'); +$objPHPExcel->getActiveSheet()->setCellValue('B9', '22'); +$objPHPExcel->getActiveSheet()->setCellValue('B10', 4); +$objPHPExcel->getActiveSheet()->setCellValue('B11', 6); +$objPHPExcel->getActiveSheet()->setCellValue('B12', 12); + +$objPHPExcel->getActiveSheet()->setCellValue('B14', '=COUNT(B2:B12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Range 2'); +$objPHPExcel->getActiveSheet()->setCellValue('C2', 1); +$objPHPExcel->getActiveSheet()->setCellValue('C3', 2); +$objPHPExcel->getActiveSheet()->setCellValue('C4', 2); +$objPHPExcel->getActiveSheet()->setCellValue('C5', 3); +$objPHPExcel->getActiveSheet()->setCellValue('C6', 3); +$objPHPExcel->getActiveSheet()->setCellValue('C7', 3); +$objPHPExcel->getActiveSheet()->setCellValue('C8', '0'); +$objPHPExcel->getActiveSheet()->setCellValue('C9', 4); +$objPHPExcel->getActiveSheet()->setCellValue('C10', 4); +$objPHPExcel->getActiveSheet()->setCellValue('C11', 4); +$objPHPExcel->getActiveSheet()->setCellValue('C12', 4); + +$objPHPExcel->getActiveSheet()->setCellValue('C14', '=COUNT(C2:C12)'); + +$objPHPExcel->getActiveSheet()->setCellValue('D1', 'Range 3'); +$objPHPExcel->getActiveSheet()->setCellValue('D2', 2); +$objPHPExcel->getActiveSheet()->setCellValue('D3', 3); +$objPHPExcel->getActiveSheet()->setCellValue('D4', 4); + +$objPHPExcel->getActiveSheet()->setCellValue('D5', '=((D2 * D3) + D4) & " should be 10"'); + +$objPHPExcel->getActiveSheet()->setCellValue('E1', 'Other functions'); +$objPHPExcel->getActiveSheet()->setCellValue('E2', '=PI()'); +$objPHPExcel->getActiveSheet()->setCellValue('E3', '=RAND()'); +$objPHPExcel->getActiveSheet()->setCellValue('E4', '=RANDBETWEEN(5, 10)'); + +$objPHPExcel->getActiveSheet()->setCellValue('E14', 'Count of both ranges:'); +$objPHPExcel->getActiveSheet()->setCellValue('F14', '=COUNT(B2:C12)'); + +// Calculated data +echo date('H:i:s') . " Calculated data\n"; +echo 'Value of B14 [=COUNT(B2:B12)]: ' . $objPHPExcel->getActiveSheet()->getCell('B14')->getCalculatedValue() . "\r\n"; + + +// Echo memory peak usage +echo date('H:i:s') . " Peak memory usage: " . (memory_get_peak_usage(true) / 1024 / 1024) . " MB\r\n"; + +// Echo done +echo date('H:i:s') . " Done" , EOL; diff --git a/site/config/PHPExcel/Tests/19namedrange.php b/site/config/PHPExcel/Tests/19namedrange.php new file mode 100644 index 0000000..09a7d3f --- /dev/null +++ b/site/config/PHPExcel/Tests/19namedrange.php @@ -0,0 +1,121 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Firstname:') + ->setCellValue('A2', 'Lastname:') + ->setCellValue('A3', 'Fullname:') + ->setCellValue('B1', 'Maarten') + ->setCellValue('B2', 'Balliauw') + ->setCellValue('B3', '=B1 & " " & B2'); + +// Define named ranges +echo date('H:i:s') , " Define named ranges" , EOL; +$objPHPExcel->addNamedRange( new PHPExcel_NamedRange('PersonName', $objPHPExcel->getActiveSheet(), 'B1') ); +$objPHPExcel->addNamedRange( new PHPExcel_NamedRange('PersonLN', $objPHPExcel->getActiveSheet(), 'B2') ); + +// Rename named ranges +echo date('H:i:s') , " Rename named ranges" , EOL; +$objPHPExcel->getNamedRange('PersonName')->setName('PersonFN'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Person'); + + +// Create a new worksheet, after the default sheet +echo date('H:i:s') , " Create new Worksheet object" , EOL; +$objPHPExcel->createSheet(); + +// Add some data to the second sheet, resembling some different data types +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(1); +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Firstname:') + ->setCellValue('A2', 'Lastname:') + ->setCellValue('A3', 'Fullname:') + ->setCellValue('B1', '=PersonFN') + ->setCellValue('B2', '=PersonLN') + ->setCellValue('B3', '=PersonFN & " " & PersonLN'); + +// Resolve range +echo date('H:i:s') , " Resolve range" , EOL; +echo 'Cell B1 {=PersonFN}: ' , $objPHPExcel->getActiveSheet()->getCell('B1')->getCalculatedValue() , EOL; +echo 'Cell B3 {=PersonFN & " " & PersonLN}: ' , $objPHPExcel->getActiveSheet()->getCell('B3')->getCalculatedValue() , EOL; +echo 'Cell Person!B1: ' , $objPHPExcel->getActiveSheet()->getCell('Person!B1')->getCalculatedValue() , EOL; + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Person (cloned)'); + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/20readexcel5.php b/site/config/PHPExcel/Tests/20readexcel5.php new file mode 100644 index 0000000..b049ef1 --- /dev/null +++ b/site/config/PHPExcel/Tests/20readexcel5.php @@ -0,0 +1,60 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +if (!file_exists("14excel5.xls")) { + exit("Please run 14excel5.php first.\n"); +} + +echo date('H:i:s') , " Load workbook from Excel5 file" , EOL; +$objPHPExcel = PHPExcel_IOFactory::load("14excel5.xls"); + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done reading file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/21pdf.php b/site/config/PHPExcel/Tests/21pdf.php new file mode 100644 index 0000000..1c522fd --- /dev/null +++ b/site/config/PHPExcel/Tests/21pdf.php @@ -0,0 +1,86 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +include "05featuredemo.inc.php"; + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +// Change these values to select the Rendering library that you wish to use +// and its directory location on your server +//$rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF; +$rendererName = PHPExcel_Settings::PDF_RENDERER_DOMPDF; +//$rendererLibrary = 'tcPDF5.9'; +//$rendererLibrary = 'mPDF5.4'; +$rendererLibrary = 'domPDF0.6.0beta3'; +$rendererLibraryPath = '/php/libraries/PDF/' . $rendererLibrary; + + +echo date('H:i:s') , " Hide grid lines" , EOL; +$objPHPExcel->getActiveSheet()->setShowGridLines(false); + +echo date('H:i:s') , " Set orientation to landscape" , EOL; +$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE); + + +echo date('H:i:s') , " Write to PDF format using {$rendererName}" , EOL; + +if (!PHPExcel_Settings::setPdfRenderer( + $rendererName, + $rendererLibraryPath + )) { + die( + 'NOTICE: Please set the $rendererName and $rendererLibraryPath values' . + EOL . + 'at the top of this script as appropriate for your directory structure' + ); +} + + +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF'); +$objWriter->setSheetIndex(0); +$objWriter->save(str_replace('.php', '_'.$rendererName.'.pdf', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '_'.$rendererName.'.pdf', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/22heavilyformatted.php b/site/config/PHPExcel/Tests/22heavilyformatted.php new file mode 100644 index 0000000..e348b53 --- /dev/null +++ b/site/config/PHPExcel/Tests/22heavilyformatted.php @@ -0,0 +1,93 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); + +$objPHPExcel->getActiveSheet()->getStyle('A1:T100')->applyFromArray( + array('fill' => array( + 'type' => PHPExcel_Style_Fill::FILL_SOLID, + 'color' => array('argb' => 'FFCCFFCC') + ), + 'borders' => array( + 'bottom' => array('style' => PHPExcel_Style_Border::BORDER_THIN), + 'right' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM) + ) + ) + ); + +$objPHPExcel->getActiveSheet()->getStyle('C5:R95')->applyFromArray( + array('fill' => array( + 'type' => PHPExcel_Style_Fill::FILL_SOLID, + 'color' => array('argb' => 'FFFFFF00') + ), + ) + ); + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/23sharedstyles.php b/site/config/PHPExcel/Tests/23sharedstyles.php new file mode 100644 index 0000000..a4c102c --- /dev/null +++ b/site/config/PHPExcel/Tests/23sharedstyles.php @@ -0,0 +1,101 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + + +// Add some data +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->setActiveSheetIndex(0); + +$sharedStyle1 = new PHPExcel_Style(); +$sharedStyle2 = new PHPExcel_Style(); + +$sharedStyle1->applyFromArray( + array('fill' => array( + 'type' => PHPExcel_Style_Fill::FILL_SOLID, + 'color' => array('argb' => 'FFCCFFCC') + ), + 'borders' => array( + 'bottom' => array('style' => PHPExcel_Style_Border::BORDER_THIN), + 'right' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM) + ) + )); + +$sharedStyle2->applyFromArray( + array('fill' => array( + 'type' => PHPExcel_Style_Fill::FILL_SOLID, + 'color' => array('argb' => 'FFFFFF00') + ), + 'borders' => array( + 'bottom' => array('style' => PHPExcel_Style_Border::BORDER_THIN), + 'right' => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM) + ) + )); + +$objPHPExcel->getActiveSheet()->setSharedStyle($sharedStyle1, "A1:T100"); +$objPHPExcel->getActiveSheet()->setSharedStyle($sharedStyle2, "C5:R95"); + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/24readfilter.php b/site/config/PHPExcel/Tests/24readfilter.php new file mode 100644 index 0000000..9041fad --- /dev/null +++ b/site/config/PHPExcel/Tests/24readfilter.php @@ -0,0 +1,77 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +// Check prerequisites +if (!file_exists("06largescale.xlsx")) { + exit("Please run 06largescale.php first.\n"); +} + +class MyReadFilter implements PHPExcel_Reader_IReadFilter +{ + public function readCell($column, $row, $worksheetName = '') { + // Read title row and rows 20 - 30 + if ($row == 1 || ($row >= 20 && $row <= 30)) { + return true; + } + + return false; + } +} + + +echo date('H:i:s') , " Load from Excel2007 file" , EOL; +$objReader = PHPExcel_IOFactory::createReader('Excel2007'); +$objReader->setReadFilter( new MyReadFilter() ); +$objPHPExcel = $objReader->load("06largescale.xlsx"); + +echo date('H:i:s') , " Remove unnecessary rows" , EOL; +$objPHPExcel->getActiveSheet()->removeRow(2, 18); + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/25inmemoryimage.php b/site/config/PHPExcel/Tests/25inmemoryimage.php new file mode 100644 index 0000000..efb1a86 --- /dev/null +++ b/site/config/PHPExcel/Tests/25inmemoryimage.php @@ -0,0 +1,83 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + +// Generate an image +echo date('H:i:s') , " Generate an image" , EOL; +$gdImage = @imagecreatetruecolor(120, 20) or die('Cannot Initialize new GD image stream'); +$textColor = imagecolorallocate($gdImage, 255, 255, 255); +imagestring($gdImage, 1, 5, 5, 'Created with PHPExcel', $textColor); + +// Add a drawing to the worksheet +echo date('H:i:s') , " Add a drawing to the worksheet" , EOL; +$objDrawing = new PHPExcel_Worksheet_MemoryDrawing(); +$objDrawing->setName('Sample image'); +$objDrawing->setDescription('Sample image'); +$objDrawing->setImageResource($gdImage); +$objDrawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG); +$objDrawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT); +$objDrawing->setHeight(36); +$objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); + +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/26utf8.php b/site/config/PHPExcel/Tests/26utf8.php new file mode 100644 index 0000000..072df71 --- /dev/null +++ b/site/config/PHPExcel/Tests/26utf8.php @@ -0,0 +1,122 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Change these values to select the PDF Rendering library that you wish to use +// and its directory location on your server +//$rendererName = PHPExcel_Settings::PDF_RENDERER_TCPDF; +$rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF; +//$rendererName = PHPExcel_Settings::PDF_RENDERER_DOMPDF; +//$rendererLibrary = 'tcPDF5.9'; +$rendererLibrary = 'mPDF5.4'; +//$rendererLibrary = 'domPDF0.6.0beta3'; +$rendererLibraryPath = '/php/libraries/PDF/' . $rendererLibrary; + + +// Read from Excel2007 (.xlsx) template +echo date('H:i:s') , " Load Excel2007 template file" , EOL; +$objReader = PHPExcel_IOFactory::createReader('Excel2007'); +$objPHPExcel = $objReader->load("templates/26template.xlsx"); + +/** at this point, we could do some manipulations with the template, but we skip this step */ + +// Export to Excel2007 (.xlsx) +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Export to Excel5 (.xls) +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Export to HTML (.html) +echo date('H:i:s') , " Write to HTML format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'HTML'); +$objWriter->save(str_replace('.php', '.htm', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.htm', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Export to PDF (.pdf) +echo date('H:i:s') , " Write to PDF format" , EOL; +try { + if (!PHPExcel_Settings::setPdfRenderer( + $rendererName, + $rendererLibraryPath + )) { + echo ( + 'NOTICE: Please set the $rendererName and $rendererLibraryPath values' . + EOL . + 'at the top of this script as appropriate for your directory structure' . + EOL + ); + } else { + $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF'); + $objWriter->save(str_replace('.php', '.pdf', __FILE__)); + echo date('H:i:s') , " File written to " , str_replace('.php', '.pdf', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + } +} catch (Exception $e) { + echo date('H:i:s') , ' EXCEPTION: ', $e->getMessage() , EOL; +} + +// Remove first two rows with field headers before exporting to CSV +echo date('H:i:s') , " Removing first two heading rows for CSV export" , EOL; +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->removeRow(1, 2); + +// Export to CSV (.csv) +echo date('H:i:s') , " Write to CSV format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV'); +$objWriter->save(str_replace('.php', '.csv', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.csv', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Export to CSV with BOM (.csv) +echo date('H:i:s') , " Write to CSV format (with BOM)" , EOL; +$objWriter->setUseBOM(true); +$objWriter->save(str_replace('.php', '-bom.csv', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '-bom.csv', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/27imagesexcel5.php b/site/config/PHPExcel/Tests/27imagesexcel5.php new file mode 100644 index 0000000..15b0900 --- /dev/null +++ b/site/config/PHPExcel/Tests/27imagesexcel5.php @@ -0,0 +1,64 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Read from Excel5 (.xls) template +echo date('H:i:s') , " Load Excel2007 template file" , EOL; +$objReader = PHPExcel_IOFactory::createReader('Excel5'); +$objPHPExcel = $objReader->load("templates/27template.xls"); + +// Export to Excel2007 (.xlsx) +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + +// Export to Excel5 (.xls) +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/28iterator.php b/site/config/PHPExcel/Tests/28iterator.php new file mode 100644 index 0000000..dccd962 --- /dev/null +++ b/site/config/PHPExcel/Tests/28iterator.php @@ -0,0 +1,68 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +if (!file_exists("05featuredemo.xlsx")) { + exit("Please run 05featuredemo.php first." . EOL); +} + +echo date('H:i:s') , " Load from Excel2007 file" , EOL; +$objReader = PHPExcel_IOFactory::createReader('Excel2007'); +$objPHPExcel = $objReader->load("05featuredemo.xlsx"); + +echo date('H:i:s') , " Iterate worksheets" , EOL; +foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) { + echo 'Worksheet - ' , $worksheet->getTitle() , EOL; + + foreach ($worksheet->getRowIterator() as $row) { + echo ' Row number - ' , $row->getRowIndex() , EOL; + + $cellIterator = $row->getCellIterator(); + $cellIterator->setIterateOnlyExistingCells(false); // Loop all cells, even if it is not set + foreach ($cellIterator as $cell) { + if (!is_null($cell)) { + echo ' Cell - ' , $cell->getCoordinate() , ' - ' , $cell->getCalculatedValue() , EOL; + } + } + } +} + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; diff --git a/site/config/PHPExcel/Tests/29advancedvaluebinder.php b/site/config/PHPExcel/Tests/29advancedvaluebinder.php new file mode 100644 index 0000000..5eeb375 --- /dev/null +++ b/site/config/PHPExcel/Tests/29advancedvaluebinder.php @@ -0,0 +1,183 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +/** PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +// Set timezone +echo date('H:i:s') , " Set timezone" , EOL; +date_default_timezone_set('UTC'); + +// Set value binder +echo date('H:i:s') , " Set value binder" , EOL; +PHPExcel_Cell::setValueBinder( new PHPExcel_Cell_AdvancedValueBinder() ); + +// Create new PHPExcel object +echo date('H:i:s') , " Create new PHPExcel object" , EOL; +$objPHPExcel = new PHPExcel(); + +// Set document properties +echo date('H:i:s') , " Set document properties" , EOL; +$objPHPExcel->getProperties()->setCreator("Maarten Balliauw") + ->setLastModifiedBy("Maarten Balliauw") + ->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") + ->setKeywords("office 2007 openxml php") + ->setCategory("Test result file"); + +// Set default font +echo date('H:i:s') , " Set default font" , EOL; +$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setName('Arial'); +$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10); + +// Set column widths +echo date('H:i:s') , " Set column widths" , EOL; +$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setAutoSize(true); +$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(14); + +// Add some data, resembling some different data types +echo date('H:i:s') , " Add some data" , EOL; +$objPHPExcel->getActiveSheet()->setCellValue('A1', 'String value:') + ->setCellValue('B1', 'Mark Baker'); + +$objPHPExcel->getActiveSheet()->setCellValue('A2', 'Numeric value #1:') + ->setCellValue('B2', 12345); + +$objPHPExcel->getActiveSheet()->setCellValue('A3', 'Numeric value #2:') + ->setCellValue('B3', -12.345); + +$objPHPExcel->getActiveSheet()->setCellValue('A4', 'Numeric value #3:') + ->setCellValue('B4', .12345); + +$objPHPExcel->getActiveSheet()->setCellValue('A5', 'Numeric value #4:') + ->setCellValue('B5', '12345'); + +$objPHPExcel->getActiveSheet()->setCellValue('A6', 'Numeric value #5:') + ->setCellValue('B6', '1.2345'); + +$objPHPExcel->getActiveSheet()->setCellValue('A7', 'Numeric value #6:') + ->setCellValue('B7', '.12345'); + +$objPHPExcel->getActiveSheet()->setCellValue('A8', 'Numeric value #7:') + ->setCellValue('B8', '1.234e-5'); + +$objPHPExcel->getActiveSheet()->setCellValue('A9', 'Numeric value #8:') + ->setCellValue('B9', '-1.234e+5'); + +$objPHPExcel->getActiveSheet()->setCellValue('A10', 'Boolean value:') + ->setCellValue('B10', 'TRUE'); + +$objPHPExcel->getActiveSheet()->setCellValue('A11', 'Percentage value #1:') + ->setCellValue('B11', '10%'); + +$objPHPExcel->getActiveSheet()->setCellValue('A12', 'Percentage value #2:') + ->setCellValue('B12', '12.5%'); + +$objPHPExcel->getActiveSheet()->setCellValue('A13', 'Fraction value #1:') + ->setCellValue('B13', '-1/2'); + +$objPHPExcel->getActiveSheet()->setCellValue('A14', 'Fraction value #2:') + ->setCellValue('B14', '3 1/2'); + +$objPHPExcel->getActiveSheet()->setCellValue('A15', 'Fraction value #3:') + ->setCellValue('B15', '-12 3/4'); + +$objPHPExcel->getActiveSheet()->setCellValue('A16', 'Fraction value #4:') + ->setCellValue('B16', '13/4'); + +$objPHPExcel->getActiveSheet()->setCellValue('A17', 'Currency value #1:') + ->setCellValue('B17', '$12345'); + +$objPHPExcel->getActiveSheet()->setCellValue('A18', 'Currency value #2:') + ->setCellValue('B18', '$12345.67'); + +$objPHPExcel->getActiveSheet()->setCellValue('A19', 'Currency value #3:') + ->setCellValue('B19', '$12,345.67'); + +$objPHPExcel->getActiveSheet()->setCellValue('A20', 'Date value #1:') + ->setCellValue('B20', '21 December 1983'); + +$objPHPExcel->getActiveSheet()->setCellValue('A21', 'Date value #2:') + ->setCellValue('B21', '19-Dec-1960'); + +$objPHPExcel->getActiveSheet()->setCellValue('A22', 'Date value #3:') + ->setCellValue('B22', '07/12/1982'); + +$objPHPExcel->getActiveSheet()->setCellValue('A23', 'Date value #4:') + ->setCellValue('B23', '24-11-1950'); + +$objPHPExcel->getActiveSheet()->setCellValue('A24', 'Date value #5:') + ->setCellValue('B24', '17-Mar'); + +$objPHPExcel->getActiveSheet()->setCellValue('A25', 'Time value #1:') + ->setCellValue('B25', '01:30'); + +$objPHPExcel->getActiveSheet()->setCellValue('A26', 'Time value #2:') + ->setCellValue('B26', '01:30:15'); + +$objPHPExcel->getActiveSheet()->setCellValue('A27', 'Date/Time value:') + ->setCellValue('B27', '19-Dec-1960 01:30'); + +$objPHPExcel->getActiveSheet()->setCellValue('A28', 'Formula:') + ->setCellValue('B28', '=SUM(B2:B9)'); + +// Rename worksheet +echo date('H:i:s') , " Rename worksheet" , EOL; +$objPHPExcel->getActiveSheet()->setTitle('Advanced value binder'); + + +// Set active sheet index to the first sheet, so Excel opens this as the first sheet +$objPHPExcel->setActiveSheetIndex(0); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; +// Save Excel5 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/30template.php b/site/config/PHPExcel/Tests/30template.php new file mode 100644 index 0000000..467e80a --- /dev/null +++ b/site/config/PHPExcel/Tests/30template.php @@ -0,0 +1,91 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + + +echo date('H:i:s') , " Load from Excel5 template" , EOL; +$objReader = PHPExcel_IOFactory::createReader('Excel5'); +$objPHPExcel = $objReader->load("templates/30template.xls"); + + + + +echo date('H:i:s') , " Add new data to the template" , EOL; +$data = array(array('title' => 'Excel for dummies', + 'price' => 17.99, + 'quantity' => 2 + ), + array('title' => 'PHP for dummies', + 'price' => 15.99, + 'quantity' => 1 + ), + array('title' => 'Inside OOP', + 'price' => 12.95, + 'quantity' => 1 + ) + ); + +$objPHPExcel->getActiveSheet()->setCellValue('D1', PHPExcel_Shared_Date::PHPToExcel(time())); + +$baseRow = 5; +foreach($data as $r => $dataRow) { + $row = $baseRow + $r; + $objPHPExcel->getActiveSheet()->insertNewRowBefore($row,1); + + $objPHPExcel->getActiveSheet()->setCellValue('A'.$row, $r+1) + ->setCellValue('B'.$row, $dataRow['title']) + ->setCellValue('C'.$row, $dataRow['price']) + ->setCellValue('D'.$row, $dataRow['quantity']) + ->setCellValue('E'.$row, '=C'.$row.'*D'.$row); +} +$objPHPExcel->getActiveSheet()->removeRow($baseRow-1,1); + + +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/31docproperties_write-xls.php b/site/config/PHPExcel/Tests/31docproperties_write-xls.php new file mode 100644 index 0000000..f136325 --- /dev/null +++ b/site/config/PHPExcel/Tests/31docproperties_write-xls.php @@ -0,0 +1,119 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +$inputFileType = 'Excel5'; +$inputFileName = 'templates/31docproperties.xls'; + + +echo date('H:i:s') , " Load Tests from $inputFileType file" , EOL; +$callStartTime = microtime(true); + +$objPHPExcelReader = PHPExcel_IOFactory::createReader($inputFileType); +$objPHPExcel = $objPHPExcelReader->load($inputFileName); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Adjust properties" , EOL; +$objPHPExcel->getProperties()->setTitle("Office 95 XLS Test Document") + ->setSubject("Office 95 XLS Test Document") + ->setDescription("Test XLS document, generated using PHPExcel") + ->setKeywords("office 95 biff php"); + + +// Save Excel 95 file +echo date('H:i:s') , " Write to Excel5 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " . (memory_get_peak_usage(true) / 1024 / 1024) . " MB" , EOL; + + +echo EOL; +// Reread File +echo date('H:i:s') , " Reread Excel5 file" , EOL; +$objPHPExcelRead = PHPExcel_IOFactory::load(str_replace('.php', '.xls', __FILE__)); + +// Set properties +echo date('H:i:s') , " Get properties" , EOL; + +echo 'Core Properties:' , EOL; +echo ' Created by - ' , $objPHPExcel->getProperties()->getCreator() , EOL; +echo ' Created on - ' , date('d-M-Y',$objPHPExcel->getProperties()->getCreated()) , ' at ' , + date('H:i:s',$objPHPExcel->getProperties()->getCreated()) , EOL; +echo ' Last Modified by - ' , $objPHPExcel->getProperties()->getLastModifiedBy() , EOL; +echo ' Last Modified on - ' , date('d-M-Y',$objPHPExcel->getProperties()->getModified()) , ' at ' , + date('H:i:s',$objPHPExcel->getProperties()->getModified()) , EOL; +echo ' Title - ' , $objPHPExcel->getProperties()->getTitle() , EOL; +echo ' Subject - ' , $objPHPExcel->getProperties()->getSubject() , EOL; +echo ' Description - ' , $objPHPExcel->getProperties()->getDescription() , EOL; +echo ' Keywords: - ' , $objPHPExcel->getProperties()->getKeywords() , EOL; + + +echo 'Extended (Application) Properties:' , EOL; +echo ' Category - ' , $objPHPExcel->getProperties()->getCategory() , EOL; +echo ' Company - ' , $objPHPExcel->getProperties()->getCompany() , EOL; +echo ' Manager - ' , $objPHPExcel->getProperties()->getManager() , EOL; + + +echo 'Custom Properties:' , EOL; +$customProperties = $objPHPExcel->getProperties()->getCustomProperties(); +foreach($customProperties as $customProperty) { + $propertyValue = $objPHPExcel->getProperties()->getCustomPropertyValue($customProperty); + $propertyType = $objPHPExcel->getProperties()->getCustomPropertyType($customProperty); + echo ' ' , $customProperty , ' - (' , $propertyType , ') - '; + if ($propertyType == PHPExcel_DocumentProperties::PROPERTY_TYPE_DATE) { + echo date('d-M-Y H:i:s',$propertyValue) , EOL; + } elseif ($propertyType == PHPExcel_DocumentProperties::PROPERTY_TYPE_BOOLEAN) { + echo (($propertyValue) ? 'TRUE' : 'FALSE') , EOL; + } else { + echo $propertyValue , EOL; + } +} + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) . " MB" , EOL; diff --git a/site/config/PHPExcel/Tests/31docproperties_write.php b/site/config/PHPExcel/Tests/31docproperties_write.php new file mode 100644 index 0000000..aec8a37 --- /dev/null +++ b/site/config/PHPExcel/Tests/31docproperties_write.php @@ -0,0 +1,119 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** Include PHPExcel */ +require_once '../Classes/PHPExcel.php'; + + +$inputFileType = 'Excel2007'; +$inputFileName = 'templates/31docproperties.xlsx'; + + +echo date('H:i:s') , " Load Tests from $inputFileType file" , EOL; +$callStartTime = microtime(true); + +$objPHPExcelReader = PHPExcel_IOFactory::createReader($inputFileType); +$objPHPExcel = $objPHPExcelReader->load($inputFileName); + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , EOL; + + +echo date('H:i:s') , " Adjust properties" , EOL; +$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document") + ->setSubject("Office 2007 XLSX Test Document") + ->setDescription("Test XLSX document, generated using PHPExcel") + ->setKeywords("office 2007 openxml php"); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " . (memory_get_peak_usage(true) / 1024 / 1024) . " MB" , EOL; + + +echo EOL; +// Reread File +echo date('H:i:s') , " Reread Excel2007 file" , EOL; +$objPHPExcelRead = PHPExcel_IOFactory::load(str_replace('.php', '.xlsx', __FILE__)); + +// Set properties +echo date('H:i:s') , " Get properties" , EOL; + +echo 'Core Properties:' , EOL; +echo ' Created by - ' , $objPHPExcel->getProperties()->getCreator() , EOL; +echo ' Created on - ' , date('d-M-Y',$objPHPExcel->getProperties()->getCreated()) , ' at ' , + date('H:i:s',$objPHPExcel->getProperties()->getCreated()) , EOL; +echo ' Last Modified by - ' , $objPHPExcel->getProperties()->getLastModifiedBy() , EOL; +echo ' Last Modified on - ' , date('d-M-Y',$objPHPExcel->getProperties()->getModified()) , ' at ' , + date('H:i:s',$objPHPExcel->getProperties()->getModified()) , EOL; +echo ' Title - ' , $objPHPExcel->getProperties()->getTitle() , EOL; +echo ' Subject - ' , $objPHPExcel->getProperties()->getSubject() , EOL; +echo ' Description - ' , $objPHPExcel->getProperties()->getDescription() , EOL; +echo ' Keywords: - ' , $objPHPExcel->getProperties()->getKeywords() , EOL; + + +echo 'Extended (Application) Properties:' , EOL; +echo ' Category - ' , $objPHPExcel->getProperties()->getCategory() , EOL; +echo ' Company - ' , $objPHPExcel->getProperties()->getCompany() , EOL; +echo ' Manager - ' , $objPHPExcel->getProperties()->getManager() , EOL; + + +echo 'Custom Properties:' , EOL; +$customProperties = $objPHPExcel->getProperties()->getCustomProperties(); +foreach($customProperties as $customProperty) { + $propertyValue = $objPHPExcel->getProperties()->getCustomPropertyValue($customProperty); + $propertyType = $objPHPExcel->getProperties()->getCustomPropertyType($customProperty); + echo ' ' , $customProperty , ' - (' , $propertyType , ') - '; + if ($propertyType == PHPExcel_DocumentProperties::PROPERTY_TYPE_DATE) { + echo date('d-M-Y H:i:s',$propertyValue) , EOL; + } elseif ($propertyType == PHPExcel_DocumentProperties::PROPERTY_TYPE_BOOLEAN) { + echo (($propertyValue) ? 'TRUE' : 'FALSE') , EOL; + } else { + echo $propertyValue , EOL; + } +} + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) . " MB" , EOL; diff --git a/site/config/PHPExcel/Tests/32chartreadwrite.php b/site/config/PHPExcel/Tests/32chartreadwrite.php new file mode 100644 index 0000000..721d44e --- /dev/null +++ b/site/config/PHPExcel/Tests/32chartreadwrite.php @@ -0,0 +1,131 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + +$inputFileType = 'Excel2007'; +$inputFileNames = 'templates/32readwrite*[0-9].xlsx'; + +if ((isset($argc)) && ($argc > 1)) { + $inputFileNames = array(); + for($i = 1; $i < $argc; ++$i) { + $inputFileNames[] = __DIR__ . '/templates/' . $argv[$i]; + } +} else { + $inputFileNames = glob($inputFileNames); +} +foreach($inputFileNames as $inputFileName) { + $inputFileNameShort = basename($inputFileName); + + if (!file_exists($inputFileName)) { + echo date('H:i:s') , " File " , $inputFileNameShort , ' does not exist' , EOL; + continue; + } + + echo date('H:i:s') , " Load Test from $inputFileType file " , $inputFileNameShort , EOL; + + $objReader = PHPExcel_IOFactory::createReader($inputFileType); + $objReader->setIncludeCharts(TRUE); + $objPHPExcel = $objReader->load($inputFileName); + + + echo date('H:i:s') , " Iterate worksheets looking at the charts" , EOL; + foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) { + $sheetName = $worksheet->getTitle(); + echo 'Worksheet: ' , $sheetName , EOL; + + $chartNames = $worksheet->getChartNames(); + if(empty($chartNames)) { + echo ' There are no charts in this worksheet' , EOL; + } else { + natsort($chartNames); + foreach($chartNames as $i => $chartName) { + $chart = $worksheet->getChartByName($chartName); + if (!is_null($chart->getTitle())) { + $caption = '"' . implode(' ',$chart->getTitle()->getCaption()) . '"'; + } else { + $caption = 'Untitled'; + } + echo ' ' , $chartName , ' - ' , $caption , EOL; + echo str_repeat(' ',strlen($chartName)+3); + $groupCount = $chart->getPlotArea()->getPlotGroupCount(); + if ($groupCount == 1) { + $chartType = $chart->getPlotArea()->getPlotGroupByIndex(0)->getPlotType(); + echo ' ' , $chartType , EOL; + } else { + $chartTypes = array(); + for($i = 0; $i < $groupCount; ++$i) { + $chartTypes[] = $chart->getPlotArea()->getPlotGroupByIndex($i)->getPlotType(); + } + $chartTypes = array_unique($chartTypes); + if (count($chartTypes) == 1) { + $chartType = 'Multiple Plot ' . array_pop($chartTypes); + echo ' ' , $chartType , EOL; + } elseif (count($chartTypes) == 0) { + echo ' *** Type not yet implemented' , EOL; + } else { + echo ' Combination Chart' , EOL; + } + } + } + } + } + + + $outputFileName = basename($inputFileName); + + echo date('H:i:s') , " Write Tests to Excel2007 file " , EOL; + $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); + $objWriter->setIncludeCharts(TRUE); + $objWriter->save($outputFileName); + echo date('H:i:s') , " File written to " , $outputFileName , EOL; + + $objPHPExcel->disconnectWorksheets(); + unset($objPHPExcel); +} + +// Echo memory peak usage +echo date('H:i:s') , ' Peak memory usage: ' , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing files" , EOL; +echo 'Files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/33chartcreate-area.php b/site/config/PHPExcel/Tests/33chartcreate-area.php new file mode 100644 index 0000000..a03a205 --- /dev/null +++ b/site/config/PHPExcel/Tests/33chartcreate-area.php @@ -0,0 +1,144 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +/** PHPExcel */ +include 'PHPExcel.php'; + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataseriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', null, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', null, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', null, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', null, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', null, 4), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_AREACHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_PERCENT_STACKED, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataseriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); + +// Set the series in the plot area +$plotarea = new PHPExcel_Chart_PlotArea(null, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_TOPRIGHT, null, false); + +$title = new PHPExcel_Chart_Title('Test %age-Stacked Area Chart'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotarea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + null, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/33chartcreate-bar-stacked.php b/site/config/PHPExcel/Tests/33chartcreate-bar-stacked.php new file mode 100644 index 0000000..e5ef7de --- /dev/null +++ b/site/config/PHPExcel/Tests/33chartcreate-bar-stacked.php @@ -0,0 +1,147 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +/** PHPExcel */ +include 'PHPExcel.php'; + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataseriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', null, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', null, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', null, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', null, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', null, 4), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STACKED, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataseriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); +// Set additional dataseries parameters +// Make it a horizontal bar rather than a vertical column graph +$series->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_BAR); + +// Set the series in the plot area +$plotarea = new PHPExcel_Chart_PlotArea(null, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, null, false); + +$title = new PHPExcel_Chart_Title('Test Chart'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotarea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + null, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/33chartcreate-bar.php b/site/config/PHPExcel/Tests/33chartcreate-bar.php new file mode 100644 index 0000000..344a4a7 --- /dev/null +++ b/site/config/PHPExcel/Tests/33chartcreate-bar.php @@ -0,0 +1,147 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +/** PHPExcel */ +include 'PHPExcel.php'; + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataseriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', null, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', null, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', null, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', null, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', null, 4), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_CLUSTERED, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataseriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); +// Set additional dataseries parameters +// Make it a horizontal bar rather than a vertical column graph +$series->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_BAR); + +// Set the series in the plot area +$plotarea = new PHPExcel_Chart_PlotArea(null, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, null, false); + +$title = new PHPExcel_Chart_Title('Test Bar Chart'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotarea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + null, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/33chartcreate-column-2.php b/site/config/PHPExcel/Tests/33chartcreate-column-2.php new file mode 100644 index 0000000..cdf1956 --- /dev/null +++ b/site/config/PHPExcel/Tests/33chartcreate-column-2.php @@ -0,0 +1,156 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +/** PHPExcel */ +include 'PHPExcel.php'; + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', '', 'Budget', 'Forecast', 'Actual'), + array('2010', 'Q1', 47, 44, 43 ), + array('', 'Q2', 56, 53, 50 ), + array('', 'Q3', 52, 46, 45 ), + array('', 'Q4', 45, 40, 40 ), + array('2011', 'Q1', 51, 42, 46 ), + array('', 'Q2', 53, 58, 56 ), + array('', 'Q3', 64, 66, 69 ), + array('', 'Q4', 54, 55, 56 ), + array('2012', 'Q1', 49, 52, 58 ), + array('', 'Q2', 68, 73, 86 ), + array('', 'Q3', 72, 78, 0 ), + array('', 'Q4', 50, 60, 0 ), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataseriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', null, 1), // 'Budget' + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', null, 1), // 'Forecast' + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$E$1', null, 1), // 'Actual' +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$B$13', null, 12), // Q1 to Q4 for 2010 to 2012 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$13', null, 12), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$13', null, 12), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$E$2:$E$13', null, 12), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_CLUSTERED, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataseriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); +// Set additional dataseries parameters +// Make it a vertical column rather than a horizontal bar graph +$series->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_COL); + +// Set the series in the plot area +$plotarea = new PHPExcel_Chart_PlotArea(null, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_BOTTOM, null, false); + +$title = new PHPExcel_Chart_Title('Test Grouped Column Chart'); +$xAxisLabel = new PHPExcel_Chart_Title('Financial Period'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotarea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + $xAxisLabel, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('G2'); +$chart->setBottomRightPosition('P20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/33chartcreate-column.php b/site/config/PHPExcel/Tests/33chartcreate-column.php new file mode 100644 index 0000000..4ccab1a --- /dev/null +++ b/site/config/PHPExcel/Tests/33chartcreate-column.php @@ -0,0 +1,147 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +/** PHPExcel */ +include 'PHPExcel.php'; + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataseriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', null, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', null, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', null, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', null, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', null, 4), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STANDARD, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataseriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); +// Set additional dataseries parameters +// Make it a vertical column rather than a horizontal bar graph +$series->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_COL); + +// Set the series in the plot area +$plotarea = new PHPExcel_Chart_PlotArea(null, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, null, false); + +$title = new PHPExcel_Chart_Title('Test Column Chart'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotarea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + null, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/33chartcreate-line.php b/site/config/PHPExcel/Tests/33chartcreate-line.php new file mode 100644 index 0000000..f54ece3 --- /dev/null +++ b/site/config/PHPExcel/Tests/33chartcreate-line.php @@ -0,0 +1,144 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +/** PHPExcel */ +include 'PHPExcel.php'; + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataseriesLabels = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', null, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', null, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', null, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', null, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', null, 4), +); + +// Build the dataseries +$series = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_LINECHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STACKED, // plotGrouping + range(0, count($dataSeriesValues)-1), // plotOrder + $dataseriesLabels, // plotLabel + $xAxisTickValues, // plotCategory + $dataSeriesValues // plotValues +); + +// Set the series in the plot area +$plotarea = new PHPExcel_Chart_PlotArea(null, array($series)); +// Set the chart legend +$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_TOPRIGHT, null, false); + +$title = new PHPExcel_Chart_Title('Test Stacked Line Chart'); +$yAxisLabel = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart = new PHPExcel_Chart( + 'chart1', // name + $title, // title + $legend, // legend + $plotarea, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + null, // xAxisLabel + $yAxisLabel // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart->setTopLeftPosition('A7'); +$chart->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/33chartcreate-multiple-charts.php b/site/config/PHPExcel/Tests/33chartcreate-multiple-charts.php new file mode 100644 index 0000000..2f7dad4 --- /dev/null +++ b/site/config/PHPExcel/Tests/33chartcreate-multiple-charts.php @@ -0,0 +1,222 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +/** PHPExcel */ +include 'PHPExcel.php'; + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataseriesLabels1 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', null, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', null, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', null, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues1 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', null, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues1 = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', null, 4), +); + +// Build the dataseries +$series1 = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_AREACHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_PERCENT_STACKED, // plotGrouping + range(0, count($dataSeriesValues1)-1), // plotOrder + $dataseriesLabels1, // plotLabel + $xAxisTickValues1, // plotCategory + $dataSeriesValues1 // plotValues +); + +// Set the series in the plot area +$plotarea1 = new PHPExcel_Chart_PlotArea(null, array($series1)); +// Set the chart legend +$legend1 = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_TOPRIGHT, null, false); + +$title1 = new PHPExcel_Chart_Title('Test %age-Stacked Area Chart'); +$yAxisLabel1 = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart1 = new PHPExcel_Chart( + 'chart1', // name + $title1, // title + $legend1, // legend + $plotarea1, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + null, // xAxisLabel + $yAxisLabel1 // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart1->setTopLeftPosition('A7'); +$chart1->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart1); + + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataseriesLabels2 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$B$1', null, 1), // 2010 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', null, 1), // 2011 + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$D$1', null, 1), // 2012 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues2 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', null, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues2 = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$B$2:$B$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', null, 4), + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$D$2:$D$5', null, 4), +); + +// Build the dataseries +$series2 = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STANDARD, // plotGrouping + range(0, count($dataSeriesValues2)-1), // plotOrder + $dataseriesLabels2, // plotLabel + $xAxisTickValues2, // plotCategory + $dataSeriesValues2 // plotValues +); +// Set additional dataseries parameters +// Make it a vertical column rather than a horizontal bar graph +$series2->setPlotDirection(PHPExcel_Chart_DataSeries::DIRECTION_COL); + +// Set the series in the plot area +$plotarea2 = new PHPExcel_Chart_PlotArea(null, array($series2)); +// Set the chart legend +$legend2 = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, null, false); + +$title2 = new PHPExcel_Chart_Title('Test Column Chart'); +$yAxisLabel2 = new PHPExcel_Chart_Title('Value ($k)'); + + +// Create the chart +$chart2 = new PHPExcel_Chart( + 'chart2', // name + $title2, // title + $legend2, // legend + $plotarea2, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + null, // xAxisLabel + $yAxisLabel2 // yAxisLabel +); + +// Set the position where the chart should appear in the worksheet +$chart2->setTopLeftPosition('I7'); +$chart2->setBottomRightPosition('P20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart2); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/33chartcreate-pie.php b/site/config/PHPExcel/Tests/33chartcreate-pie.php new file mode 100644 index 0000000..e86d54e --- /dev/null +++ b/site/config/PHPExcel/Tests/33chartcreate-pie.php @@ -0,0 +1,217 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +/** PHPExcel */ +include 'PHPExcel.php'; + +$objPHPExcel = new PHPExcel(); +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array('', 2010, 2011, 2012), + array('Q1', 12, 15, 21), + array('Q2', 56, 73, 86), + array('Q3', 52, 61, 69), + array('Q4', 30, 32, 0), + ) +); + + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataseriesLabels1 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', null, 1), // 2011 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues1 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', null, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues1 = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', null, 4), +); + +// Build the dataseries +$series1 = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_PIECHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STANDARD, // plotGrouping + range(0, count($dataSeriesValues1)-1), // plotOrder + $dataseriesLabels1, // plotLabel + $xAxisTickValues1, // plotCategory + $dataSeriesValues1 // plotValues +); + +// Set up a layout object for the Pie chart +$layout1 = new PHPExcel_Chart_Layout(); +$layout1->setShowVal(TRUE); +$layout1->setShowPercent(TRUE); + +// Set the series in the plot area +$plotarea1 = new PHPExcel_Chart_PlotArea($layout1, array($series1)); +// Set the chart legend +$legend1 = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, null, false); + +$title1 = new PHPExcel_Chart_Title('Test Pie Chart'); + + +// Create the chart +$chart1 = new PHPExcel_Chart( + 'chart1', // name + $title1, // title + $legend1, // legend + $plotarea1, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + null, // xAxisLabel + null // yAxisLabel - Pie charts don't have a Y-Axis +); + +// Set the position where the chart should appear in the worksheet +$chart1->setTopLeftPosition('A7'); +$chart1->setBottomRightPosition('H20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart1); + + +// Set the Labels for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataseriesLabels2 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', null, 1), // 2011 +); +// Set the X-Axis Labels +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$xAxisTickValues2 = array( + new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', null, 4), // Q1 to Q4 +); +// Set the Data values for each data series we want to plot +// Datatype +// Cell reference for data +// Format Code +// Number of datapoints in series +// Data values +// Data Marker +$dataSeriesValues2 = array( + new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$5', null, 4), +); + +// Build the dataseries +$series2 = new PHPExcel_Chart_DataSeries( + PHPExcel_Chart_DataSeries::TYPE_DONUTCHART, // plotType + PHPExcel_Chart_DataSeries::GROUPING_STANDARD, // plotGrouping + range(0, count($dataSeriesValues2)-1), // plotOrder + $dataseriesLabels2, // plotLabel + $xAxisTickValues2, // plotCategory + $dataSeriesValues2 // plotValues +); + +// Set up a layout object for the Pie chart +$layout2 = new PHPExcel_Chart_Layout(); +$layout2->setShowVal(TRUE); +$layout2->setShowCatName(TRUE); + +// Set the series in the plot area +$plotarea2 = new PHPExcel_Chart_PlotArea($layout2, array($series2)); + +$title2 = new PHPExcel_Chart_Title('Test Donut Chart'); + + +// Create the chart +$chart2 = new PHPExcel_Chart( + 'chart2', // name + $title2, // title + NULL, // legend + $plotarea2, // plotArea + true, // plotVisibleOnly + 0, // displayBlanksAs + null, // xAxisLabel + null // yAxisLabel - Like Pie charts, Donut charts don't have a Y-Axis +); + +// Set the position where the chart should appear in the worksheet +$chart2->setTopLeftPosition('I7'); +$chart2->setBottomRightPosition('P20'); + +// Add the chart to the worksheet +$objWorksheet->addChart($chart2); + + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/34chartupdate.php b/site/config/PHPExcel/Tests/34chartupdate.php new file mode 100644 index 0000000..0ac3edc --- /dev/null +++ b/site/config/PHPExcel/Tests/34chartupdate.php @@ -0,0 +1,81 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +/** PHPExcel */ +include 'PHPExcel.php'; + +if (!file_exists("33chartcreate-bar.xlsx")) { + exit("Please run 33chartcreate-bar.php first." . EOL); +} + +echo date('H:i:s') , " Load from Excel2007 file" , EOL; +$objReader = PHPExcel_IOFactory::createReader("Excel2007"); +$objReader->setIncludeCharts(TRUE); +$objPHPExcel = $objReader->load("33chartcreate-bar.xlsx"); + + +echo date('H:i:s') , " Update cell data values that are displayed in the chart" , EOL; +$objWorksheet = $objPHPExcel->getActiveSheet(); +$objWorksheet->fromArray( + array( + array(50-12, 50-15, 50-21), + array(50-56, 50-73, 50-86), + array(50-52, 50-61, 50-69), + array(50-30, 50-32, 50), + ), + NULL, + 'B2' +); + +// Save Excel 2007 file +echo date('H:i:s') , " Write to Excel2007 format" , EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->setIncludeCharts(TRUE); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , EOL; +echo 'File has been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/35chartrender.php b/site/config/PHPExcel/Tests/35chartrender.php new file mode 100644 index 0000000..093e032 --- /dev/null +++ b/site/config/PHPExcel/Tests/35chartrender.php @@ -0,0 +1,135 @@ +<?php + +/** Error reporting */ +error_reporting(E_ALL); +ini_set('display_errors', TRUE); +ini_set('display_startup_errors', TRUE); +date_default_timezone_set('Europe/London'); + +define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); + +date_default_timezone_set('Europe/London'); + +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +/** PHPExcel_IOFactory */ +include 'PHPExcel/IOFactory.php'; + + +// Change these values to select the Rendering library that you wish to use +// and its directory location on your server +//$rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF; +$rendererName = PHPExcel_Settings::CHART_RENDERER_JPGRAPH; +$rendererLibrary = 'jpgraph3.5.0b1/src'; +$rendererLibraryPath = '/php/libraries/Charts/' . $rendererLibrary; + + +if (!PHPExcel_Settings::setChartRenderer( + $rendererName, + $rendererLibraryPath + )) { + die( + 'NOTICE: Please set the $rendererName and $rendererLibraryPath values' . + EOL . + 'at the top of this script as appropriate for your directory structure' + ); +} + + +$inputFileType = 'Excel2007'; +$inputFileNames = 'templates/32readwrite*[0-9].xlsx'; + + if ((isset($argc)) && ($argc > 1)) { + $inputFileNames = array(); + for($i = 1; $i < $argc; ++$i) { + $inputFileNames[] = __DIR__ . '/templates/' . $argv[$i]; + } +} else { + $inputFileNames = glob($inputFileNames); +} +foreach($inputFileNames as $inputFileName) { + $inputFileNameShort = basename($inputFileName); + + if (!file_exists($inputFileName)) { + echo date('H:i:s') , " File " , $inputFileNameShort , ' does not exist' , EOL; + continue; + } + + echo date('H:i:s') , " Load Test from $inputFileType file " , $inputFileNameShort , EOL; + + $objReader = PHPExcel_IOFactory::createReader($inputFileType); + $objReader->setIncludeCharts(TRUE); + $objPHPExcel = $objReader->load($inputFileName); + + + echo date('H:i:s') , " Iterate worksheets looking at the charts" , EOL; + foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) { + $sheetName = $worksheet->getTitle(); + echo 'Worksheet: ' , $sheetName , EOL; + + $chartNames = $worksheet->getChartNames(); + if(empty($chartNames)) { + echo ' There are no charts in this worksheet' , EOL; + } else { + natsort($chartNames); + foreach($chartNames as $i => $chartName) { + $chart = $worksheet->getChartByName($chartName); + if (!is_null($chart->getTitle())) { + $caption = '"' . implode(' ',$chart->getTitle()->getCaption()) . '"'; + } else { + $caption = 'Untitled'; + } + echo ' ' , $chartName , ' - ' , $caption , EOL; + echo str_repeat(' ',strlen($chartName)+3); + + $jpegFile = '35'.str_replace('.xlsx', '.jpg', substr($inputFileNameShort,2)); + if (file_exists($jpegFile)) { + unlink($jpegFile); + } + try { + $chart->render($jpegFile); + } catch (Exception $e) { + echo 'Error rendering chart: ',$e->getMessage(); + } + } + } + } + + + $objPHPExcel->disconnectWorksheets(); + unset($objPHPExcel); +} + +// Echo memory peak usage +echo date('H:i:s') , ' Peak memory usage: ' , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL; + +// Echo done +echo date('H:i:s') , " Done rendering charts as images" , EOL; +echo 'Image files have been created in ' , getcwd() , EOL; diff --git a/site/config/PHPExcel/Tests/Excel2003XMLReader.php b/site/config/PHPExcel/Tests/Excel2003XMLReader.php new file mode 100644 index 0000000..56326bb --- /dev/null +++ b/site/config/PHPExcel/Tests/Excel2003XMLReader.php @@ -0,0 +1,61 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Load from Excel2003XML file" , PHP_EOL; +$callStartTime = microtime(true); + +$objReader = PHPExcel_IOFactory::createReader('Excel2003XML'); +$objPHPExcel = $objReader->load("Excel2003XMLTest.xml"); + + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , PHP_EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + + +echo date('H:i:s') , " Write to Excel5 format" , PHP_EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); +$objWriter->save(str_replace('.php', '.xls', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xls', __FILE__) , PHP_EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , PHP_EOL; diff --git a/site/config/PHPExcel/Tests/Excel2003XMLTest.xml b/site/config/PHPExcel/Tests/Excel2003XMLTest.xml new file mode 100644 index 0000000..fb2d305 --- /dev/null +++ b/site/config/PHPExcel/Tests/Excel2003XMLTest.xml @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><?mso-application progid="Excel.Sheet"?><Workbook xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:x2="http://schemas.microsoft.com/office/excel/2003/xml" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:x="urn:schemas-microsoft-com:office:excel"><OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office"><Colors><Color><Index>3</Index><RGB>#000000</RGB></Color><Color><Index>4</Index><RGB>#0000ff</RGB></Color><Color><Index>5</Index><RGB>#008000</RGB></Color><Color><Index>6</Index><RGB>#00ccff</RGB></Color><Color><Index>7</Index><RGB>#800080</RGB></Color><Color><Index>8</Index><RGB>#993366</RGB></Color><Color><Index>9</Index><RGB>#c0c0c0</RGB></Color><Color><Index>10</Index><RGB>#c47512</RGB></Color><Color><Index>11</Index><RGB>#ccffcc</RGB></Color><Color><Index>12</Index><RGB>#ddbc7d</RGB></Color><Color><Index>13</Index><RGB>#ff0000</RGB></Color><Color><Index>14</Index><RGB>#ff00ff</RGB></Color><Color><Index>15</Index><RGB>#ff6600</RGB></Color><Color><Index>16</Index><RGB>#ff9900</RGB></Color><Color><Index>17</Index><RGB>#ff99cc</RGB></Color><Color><Index>18</Index><RGB>#ffff00</RGB></Color></Colors></OfficeDocumentSettings><ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"><WindowHeight>9000</WindowHeight><WindowWidth>13860</WindowWidth><WindowTopX>240</WindowTopX><WindowTopY>75</WindowTopY><ProtectStructure>False</ProtectStructure><ProtectWindows>False</ProtectWindows></ExcelWorkbook><Styles><Style ss:ID="Default" ss:Name="Default"/><Style ss:ID="Result" ss:Name="Result"><Font ss:Bold="1" ss:Italic="1" ss:Underline="Single"/></Style><Style ss:ID="Result2" ss:Name="Result2"><Font ss:Bold="1" ss:Italic="1" ss:Underline="Single"/><NumberFormat ss:Format="Currency"/></Style><Style ss:ID="Heading" ss:Name="Heading"><Font ss:Bold="1" ss:Italic="1" ss:Size="16"/></Style><Style ss:ID="Heading1" ss:Name="Heading1"><Font ss:Bold="1" ss:Italic="1" ss:Size="16"/></Style><Style ss:ID="Gnumeric-default" ss:Name="Gnumeric-default"><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="co1"/><Style ss:ID="co2"/><Style ss:ID="co3"/><Style ss:ID="co4"/><Style ss:ID="co5"/><Style ss:ID="co6"/><Style ss:ID="co7"/><Style ss:ID="co8"/><Style ss:ID="co9"/><Style ss:ID="ta1"/><Style ss:ID="ce1"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Bold="1" ss:Color="#ff0000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce2"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Bold="1" ss:Color="#000000" ss:FontName="Arial1" ss:Italic="1" ss:Size="11"/></Style><Style ss:ID="ce3"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11" ss:Underline="Single"/></Style><Style ss:ID="ce4"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce5"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce6"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11" ss:Underline="Single"/></Style><Style ss:ID="ce7"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11" ss:Underline="Double"/></Style><Style ss:ID="ce8"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11" ss:StrikeThrough="1"/></Style><Style ss:ID="ce9"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="Short Date"/></Style><Style ss:ID="ce10"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="Fixed"/></Style><Style ss:ID="ce11"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><NumberFormat ss:Format="Short Time"/></Style><Style ss:ID="ce12"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><NumberFormat ss:Format="General Date"/></Style><Style ss:ID="ce13"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce14"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10" ss:Underline="Single"/></Style><Style ss:ID="ce15"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10" ss:Underline="Double"/></Style><Style ss:ID="ce16"><Alignment ss:Vertical="Bottom" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce17"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#0000ff" ss:FontName="Sans" ss:Size="10" ss:Underline="Single"/></Style><Style ss:ID="ce18"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="3" ss:Color="#00b050"/><Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="3" ss:Color="#0070c0"/><Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="3" ss:Color="#ffff00"/><Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="3" ss:Color="#ff0000"/></Borders><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce19"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce20"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce21"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce22"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce23"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="90"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce24"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="General"/></Style><Style ss:ID="ce25"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><NumberFormat ss:Format="General"/></Style><Style ss:ID="ce26"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Bold="1" ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/></Style><Style ss:ID="ce27"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Italic="1" ss:Size="11"/></Style><Style ss:ID="ce28"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="45"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce29"><Alignment ss:Vertical="Top" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce30"><Alignment ss:Vertical="Bottom" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce31"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="-90"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce32"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce33"><Alignment ss:Vertical="Bottom" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce34"><Alignment ss:Vertical="Bottom" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce35"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="-45"/><Borders/><Font ss:Color="#000000" ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="ce36"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce37"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ff0000" ss:Pattern="Solid"/></Style><Style ss:ID="ce38"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ff9900" ss:Pattern="Solid"/></Style><Style ss:ID="ce39"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ffff00" ss:Pattern="Solid"/></Style><Style ss:ID="ce40"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#008000" ss:Pattern="Solid"/></Style><Style ss:ID="ce41"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#0000ff" ss:Pattern="Solid"/></Style><Style ss:ID="ce42"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#993366" ss:Pattern="Solid"/></Style><Style ss:ID="ce43"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ff99cc" ss:Pattern="Solid"/></Style><Style ss:ID="ce44"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ddbc7d" ss:Pattern="Solid"/></Style><Style ss:ID="ce45"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#00ccff" ss:Pattern="Solid"/></Style><Style ss:ID="ce46"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#ff0000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce47"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#ff6600" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce48"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#ffff00" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce49"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#008000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce50"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#0000ff" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce51"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#800080" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce52"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#ff00ff" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce53"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#c47512" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce54"><Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Color="#ccffcc" ss:FontName="Calibri" ss:Size="11"/><Interior ss:Color="#ff0000" ss:Pattern="Solid"/></Style><Style ss:ID="ce55"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce56"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce57"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce58"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="1" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce59"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce60"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce61"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce62"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce63"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce64"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="3" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce65"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders><Border ss:Position="Bottom" ss:LineStyle="Double" ss:Weight="3" ss:Color="#000000"/></Borders><Font ss:Color="#000000" ss:FontName="Calibri" ss:Size="11"/></Style><Style ss:ID="ce66"><Alignment ss:Horizontal="Center" ss:Vertical="Bottom" ss:WrapText="1" ss:Rotate="0"/><Borders/><Font ss:Bold="1" ss:Color="#000000" ss:FontName="Arial1" ss:Size="12"/></Style><Style ss:ID="ce67"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="General"/></Style><Style ss:ID="ce68"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="Medium Date"/></Style><Style ss:ID="ce69"><Alignment ss:Vertical="Bottom" ss:Rotate="0"/><Borders/><Font ss:Color="#000000" ss:FontName="Arial1" ss:Size="11"/><NumberFormat ss:Format="Medium Time"/></Style><Style ss:ID="gr1"/><Style ss:ID="gr2"/><Style ss:ID="ta_extref"/><Style ss:ID="P1"><Font ss:FontName="Sans" ss:Size="10"/></Style><Style ss:ID="T1"/></Styles><ss:Worksheet ss:Name="Sample Data"><Table ss:StyleID="ta1"><Column ss:Width="96.4913"/><Column ss:Span="1" ss:Width="48.3874"/><Column ss:Index="4" ss:Width="35.8866"/><Column ss:Span="6" ss:Width="48.3874"/><Column ss:Index="12" ss:Width="50.2583"/><Column ss:Span="1011" ss:Width="48.3874"/><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce1"><ss:Data xmlns="http://www.w3.org/TR/REC-html40" ss:Type="String">Test String 1</ss:Data><Comment><ss:Data xmlns="http://www.w3.org/TR/REC-html40"><Font html:Face="Sans" html:Size="10">Test for a simple colour-formatted string</Font></ss:Data></Comment></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">1</Data></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">5</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce2"><Data ss:Type="String">A</Data></Cell><Cell ss:StyleID="ce26"><Data ss:Type="String">E</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.B1]+[.C1]"><Data ss:Type="Number">6</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.E1]&amp;[.F1]"><Data ss:Type="String">AE</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce2"><Data ss:Type="String">Test - String 2</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">2</Data></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">6</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">B</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="String">F</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.B2]+[.C2]"><Data ss:Type="Number">8</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.E2]&amp;[.F2]"><Data ss:Type="String">BF</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce55"><Data ss:Type="String">Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce3"><Data ss:Type="String">Test #3</Data></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">3</Data></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">7</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce26"><Data ss:Type="String">C</Data></Cell><Cell ss:StyleID="ce2"><Data ss:Type="String">G</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.B3]+[.C3]"><Data ss:Type="Number">10</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.E3]&amp;[.F3]"><Data ss:Type="String">CG</Data></Cell><Cell ss:StyleID="ce37"><Data ss:Type="String">Red</Data></Cell><Cell ss:StyleID="ce46"><Data ss:Type="String">Red</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce56"><Data ss:Type="String">Dash</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce4"><Data ss:Type="String">Test with (") in string</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">4</Data></Cell><Cell ss:StyleID="ce4"><Data ss:Type="Number">8</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce27"><Data ss:Type="String">D</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="String">H</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.B4]+[.C4]"><Data ss:Type="Number">12</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=[.E4]&amp;[.F4]"><Data ss:Type="String">DH</Data></Cell><Cell ss:StyleID="ce38"><Data ss:Type="String">Orange</Data></Cell><Cell ss:StyleID="ce47"><Data ss:Type="String">Orange</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce57"><Data ss:Type="String">Dash/Dot/Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=SUM([.B1:.B4])"><Data ss:Type="Number">10</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=SUM([.C1:.C4])"><Data ss:Type="Number">26</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=SUM([.B1:.C4])"><Data ss:Type="Number">36</Data></Cell><Cell ss:StyleID="ce39"><Data ss:Type="String">Yellow</Data></Cell><Cell ss:StyleID="ce48"><Data ss:Type="String">Yellow</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce58"><Data ss:Type="String">Dash/Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce6"><Data ss:Type="String">Test #3</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">1.23</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=TRUE()"><Data ss:Type="Boolean">1</Data></Cell><Cell ss:StyleID="ce24"><Data ss:Type="Boolean">1</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce40"><Data ss:Type="String">Green</Data></Cell><Cell ss:StyleID="ce49"><Data ss:Type="String">Green</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce56"><Data ss:Type="String">Thin Line</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce7"><Data ss:Type="String">Test #3</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">2.34</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=FALSE()"><Data ss:Type="Boolean">0</Data></Cell><Cell ss:StyleID="ce25"><Data ss:Type="Boolean">0</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=SUM(marksrange)"><Data ss:Type="Number">0</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce41"><Data ss:Type="String">Blue</Data></Cell><Cell ss:StyleID="ce50"><Data ss:Type="String">Blue</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce59"><Data ss:Type="String">Thick Dash/Dot/Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Index="8" ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce8"><Data ss:Type="String">Test #3</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">3.45</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce42"><Data ss:Type="String">Purple</Data></Cell><Cell ss:StyleID="ce51"><Data ss:Type="String">Purple</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce60"><Data ss:Type="String">Variant Thick Dash/Dot/Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="13.4929"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce43"><Data ss:Type="String">Pink</Data></Cell><Cell ss:StyleID="ce52"><Data ss:Type="String">Pink</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce61"><Data ss:Type="String">Thick Dash/Dot</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce9"><Data ss:Type="DateTime">1960-12-19T00:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce19"><Data ss:Type="String">TOP</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="Number">0</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce44"><Data ss:Type="String">Brown</Data></Cell><Cell ss:StyleID="ce53"><Data ss:Type="String">Brown</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce62"><Data ss:Type="String">Thick Dash</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce10"><Data ss:Type="Number">1.5</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5" ss:Formula="of:=12/0"><Data ss:Type="Number">0</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce63"><Data ss:Type="String">Thick Line</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="13.4929"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce20"><Data ss:Type="String">BOTTOM</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce64"><Data ss:Type="String">Extra Thick Line</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce11"><Data ss:Type="DateTime">1899-12-31T02:30:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><ss:Data xmlns="http://www.w3.org/TR/REC-html40" ss:Type="String">Мойва сушеная</ss:Data><Comment><ss:Data xmlns="http://www.w3.org/TR/REC-html40"><Font html:Face="Sans" html:Size="10">Tests for UTF-8 content</Font></ss:Data></Comment></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce65"><Data ss:Type="String">Double Line</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce21"><Data ss:Type="String">LEFT</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">Ärendetext</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce12"><Data ss:Type="DateTime">1960-12-19T01:30:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">Højde</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Index="16" ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce22"><Data ss:Type="String">RIGHT</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="13.4929"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Height="41.7543"><Cell ss:StyleID="ce5"/><Cell ss:MergeAcross="1" ss:MergeDown="1" ss:StyleID="ce18"><Data ss:Type="String">BOX</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce29"><Data ss:Type="String">Test Column 1</Data></Cell><Cell ss:StyleID="ce30"/><Cell ss:StyleID="ce33"/><Cell ss:StyleID="ce36"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Height="41.7543"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce30"/><Cell ss:StyleID="ce32"><Data ss:Type="String">Test Column 2</Data></Cell><Cell ss:StyleID="ce30"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce45"><Data ss:Type="String">Patterned</Data></Cell><Cell ss:StyleID="ce54"><Data ss:Type="String">Patterned 2</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Height="41.7543"><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce30"/><Cell ss:StyleID="ce30"/><Cell ss:StyleID="ce34"><Data ss:Type="String">Test Column 3</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:StyleID="ce13"><Data ss:Type="String">Underline None</Data></Cell><Cell ss:Index="3" ss:MergeAcross="1" ss:MergeDown="4" ss:StyleID="ce23"><Data ss:Type="String">Rotate 90</Data></Cell><Cell ss:MergeAcross="1" ss:MergeDown="4" ss:StyleID="ce28"><Data ss:Type="String">Rotate 45</Data></Cell><Cell ss:MergeAcross="1" ss:MergeDown="4" ss:StyleID="ce31"><Data ss:Type="String">Rotate -90</Data></Cell><Cell ss:MergeAcross="1" ss:MergeDown="4" ss:StyleID="ce35"><Data ss:Type="String">Rotate -45</Data></Cell><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:StyleID="ce14"><Data ss:Type="String">Underline 1</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="String">Subscript</Data></Cell><Cell ss:Index="1016" ss:StyleID="ce13"/></Row><Row ss:Index="24" ss:Height="12.8409"><Cell ss:StyleID="ce15"><Data ss:Type="String">Underline 2</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="String">Superscript</Data></Cell><Cell ss:Index="1016" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:StyleID="ce14"><Data ss:Type="String">Underline 3</Data></Cell><Cell ss:Index="1016" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:StyleID="ce15"><Data ss:Type="String">Underline 4</Data></Cell><Cell ss:Index="1016" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="49.2378"><Cell ss:MergeAcross="2" ss:StyleID="ce16"><ss:Data xmlns="http://www.w3.org/TR/REC-html40" ss:Type="String">I don't know if Gnumeric supports <B><Font html:Face="Sans" html:Color="#000000" html:Size="10">Rich Text</Font></B> in the same way as <B><Font html:Face="Sans" html:Color="#000000" html:Size="10">Excel</Font></B>, And this row should be autofit height with text wrap</ss:Data></Cell><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/><Cell ss:StyleID="ce16"/></Row><Row ss:Height="13.4079"><Cell ss:MergeAcross="2" ss:HRef="http://www.phpexcel.net/" ss:StyleID="ce17"><Data ss:Type="String">PHPExcel</Data></Cell><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Index="65536" ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row></Table><x:WorksheetOptions/></ss:Worksheet><ss:Worksheet ss:Name="Report Data"><Table ss:StyleID="ta1"><Column ss:Span="2" ss:Width="56.2394"/><Column ss:Index="4" ss:Width="78.7465"/><Column ss:Width="58.5071"/><Column ss:Width="27.4961"/><Column ss:Width="78.7465"/><Column ss:Width="68.5984"/><Column ss:Span="1015" ss:Width="48.3874"/><Column ss:Index="1025"/><Column ss:Span="1"/><Row ss:AutoFitHeight="0" ss:Height="31.4929"><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce66"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="31.4929"><Cell ss:StyleID="ce66"><Data ss:Type="String">Heading 1</Data></Cell><Cell ss:StyleID="ce66"><Data ss:Type="String">Heading 2</Data></Cell><Cell ss:StyleID="ce66"><Data ss:Type="String">Third Heading</Data></Cell><Cell ss:StyleID="ce66"><Data ss:Type="String">Date Heading</Data></Cell><Cell ss:StyleID="ce66"><Data ss:Type="String">Time Heading</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce66"><Data ss:Type="String">Adjusted Date</Data></Cell><Cell ss:StyleID="ce66"><Data ss:Type="String">Adjusted Number</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce13"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String"/></Cell><Cell ss:StyleID="ce13"><Data ss:Type="String">Adjusted Number</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="String">Third Heading</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">1</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">1.11</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">1.11</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">2</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">4.44</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">2.22</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">3</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">9.99</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">3.33</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">4</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">17.76</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">4.44</Data></Cell></Row><Row ss:Index="8"><Cell ss:StyleID="ce13"><Data ss:Type="String">5</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">27.75</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">5.55</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">6</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">39.96</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">6.66</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">7</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">54.39</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">7.77</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">8</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">71.04</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">8.88</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">9</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">89.91</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">9.99</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">10</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">111</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">11.1</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">11</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">134.31</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">12.21</Data></Cell></Row><Row><Cell ss:StyleID="ce13"><Data ss:Type="String">12</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">159.84</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">13.32</Data></Cell></Row><Row ss:Index="16"><Cell ss:StyleID="ce13"><Data ss:Type="String">13</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">1.11</Data></Cell><Cell ss:StyleID="ce13"><Data ss:Type="Number">-1.11</Data></Cell></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">ABC</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">1</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">1.11</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2001-01-01T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T01:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D3]-[.B3]"><Data ss:Type="DateTime">2000-12-31T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B3]*[.C3]"><Data ss:Type="Number">1.11</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">A</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B3]&amp;[.J3]"><Data ss:Type="String">1A</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">BCD</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">2</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">2.22</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2002-02-02T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T02:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D4]-[.B4]"><Data ss:Type="DateTime">2002-01-31T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B4]*[.C4]"><Data ss:Type="Number">4.44</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">B</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B4]&amp;[.J4]"><Data ss:Type="String">2B</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">CDE</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">3</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">3.33</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2003-03-03T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T03:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D5]-[.B5]"><Data ss:Type="DateTime">2003-02-28T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B5]*[.C5]"><Data ss:Type="Number">9.99</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">C</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B5]&amp;[.J5]"><Data ss:Type="String">3C</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">DEF</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">4</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">4.44</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2004-04-03T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T04:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D6]-[.B6]"><Data ss:Type="DateTime">2004-03-30T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B6]*[.C6]"><Data ss:Type="Number">17.76</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">D</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B6]&amp;[.J6]"><Data ss:Type="String">4D</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">EFG</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">5</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">5.55</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2005-05-04T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T05:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D7]-[.B7]"><Data ss:Type="DateTime">2005-04-29T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B7]*[.C7]"><Data ss:Type="Number">27.75</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">E</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B7]&amp;[.J7]"><Data ss:Type="String">5E</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">FGH</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">6</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">6.66</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2006-06-05T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T06:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D8]-[.B8]"><Data ss:Type="DateTime">2006-05-30T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B8]*[.C8]"><Data ss:Type="Number">39.96</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">F</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B8]&amp;[.J8]"><Data ss:Type="String">6F</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">GHI</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">7</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">7.77</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2007-07-06T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T07:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D9]-[.B9]"><Data ss:Type="DateTime">2007-06-29T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B9]*[.C9]"><Data ss:Type="Number">54.39</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">G</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B9]&amp;[.J9]"><Data ss:Type="String">7G</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:Index="24" ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">HIJ</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">8</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">8.88</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2008-08-07T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T08:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D10]-[.B10]"><Data ss:Type="DateTime">2008-07-30T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B10]*[.C10]"><Data ss:Type="Number">71.04</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">H</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B10]&amp;[.J10]"><Data ss:Type="String">8H</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">IJK</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">9</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">9.99</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2009-09-08T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T09:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D11]-[.B11]"><Data ss:Type="DateTime">2009-08-30T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B11]*[.C11]"><Data ss:Type="Number">89.91</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">I</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B11]&amp;[.J11]"><Data ss:Type="String">9I</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">JKL</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">10</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">11.1</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2010-10-09T23:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T10:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D12]-[.B12]"><Data ss:Type="DateTime">2010-09-29T23:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B12]*[.C12]"><Data ss:Type="Number">111</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">J</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B12]&amp;[.J12]"><Data ss:Type="String">10J</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">KLM</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">11</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">12.21</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2011-11-11T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T11:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D13]-[.B13]"><Data ss:Type="DateTime">2011-10-31T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B13]*[.C13]"><Data ss:Type="Number">134.31</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">K</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B13]&amp;[.J13]"><Data ss:Type="String">11K</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">LMN</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">12</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">13.32</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">2012-12-12T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T288:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D14]-[.B14]"><Data ss:Type="DateTime">2012-11-30T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B14]*[.C14]"><Data ss:Type="Number">159.84</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">L</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B14]&amp;[.J14]"><Data ss:Type="String">12L</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:StyleID="ce5"><Data ss:Type="String">ZYX</Data></Cell><Cell ss:StyleID="ce5"><Data ss:Type="Number">-1</Data></Cell><Cell ss:StyleID="ce67"><Data ss:Type="Number">-1.11</Data></Cell><Cell ss:StyleID="ce68"><Data ss:Type="DateTime">1999-12-01T00:00:00.000</Data></Cell><Cell ss:StyleID="ce69"><Data ss:Type="DateTime">1899-12-31T23:00:00.000</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce68" ss:Formula="of:=[.D15]-[.B15]"><Data ss:Type="DateTime">1999-12-02T00:00:00.000</Data></Cell><Cell ss:StyleID="ce67" ss:Formula="of:=[.B15]*[.C15]"><Data ss:Type="Number">1.11</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"><Data ss:Type="String">M</Data></Cell><Cell ss:StyleID="ce5" ss:Formula="of:=[.B15]&amp;[.J15]"><Data ss:Type="String">-1M</Data></Cell><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/><Cell ss:StyleID="ce5"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:AutoFitHeight="0" ss:Height="14.9953"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row><Row ss:Index="65550" ss:Height="12.8409"><Cell ss:Index="1024" ss:StyleID="ce13"/></Row></Table><x:WorksheetOptions/></ss:Worksheet></Workbook> \ No newline at end of file diff --git a/site/config/PHPExcel/Tests/GnumericReader.php b/site/config/PHPExcel/Tests/GnumericReader.php new file mode 100644 index 0000000..c5faca8 --- /dev/null +++ b/site/config/PHPExcel/Tests/GnumericReader.php @@ -0,0 +1,60 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + +echo date('H:i:s') , " Load from Gnumeric file" , PHP_EOL; +$callStartTime = microtime(true); + +$objReader = PHPExcel_IOFactory::createReader('Gnumeric'); +$objPHPExcel = $objReader->load("GnumericTest.gnumeric"); + + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , PHP_EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + + +echo date('H:i:s') , " Write to Excel2007 format" , PHP_EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', __FILE__) , PHP_EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , PHP_EOL; diff --git a/site/config/PHPExcel/Tests/GnumericTest.gnumeric b/site/config/PHPExcel/Tests/GnumericTest.gnumeric new file mode 100644 index 0000000..ea2fac3 Binary files /dev/null and b/site/config/PHPExcel/Tests/GnumericTest.gnumeric differ diff --git a/site/config/PHPExcel/Tests/OOCalcReader.php b/site/config/PHPExcel/Tests/OOCalcReader.php new file mode 100644 index 0000000..3c991b8 --- /dev/null +++ b/site/config/PHPExcel/Tests/OOCalcReader.php @@ -0,0 +1,61 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + +echo date('H:i:s') , " Load from OOCalc file" , PHP_EOL; +$callStartTime = microtime(true); + +$objReader = PHPExcel_IOFactory::createReader('OOCalc'); +$objPHPExcel = $objReader->load("OOCalcTest.ods"); + + +$callEndTime = microtime(true); +$callTime = $callEndTime - $callStartTime; +echo 'Call time to read Workbook was ' , sprintf('%.4f',$callTime) , " seconds" , PHP_EOL; +// Echo memory usage +echo date('H:i:s') , ' Current memory usage: ' , (memory_get_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + + +echo date('H:i:s') , " Write to Excel2007 format" , PHP_EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', __FILE__) , PHP_EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , PHP_EOL; + diff --git a/site/config/PHPExcel/Tests/OOCalcTest.ods b/site/config/PHPExcel/Tests/OOCalcTest.ods new file mode 100644 index 0000000..b29db76 Binary files /dev/null and b/site/config/PHPExcel/Tests/OOCalcTest.ods differ diff --git a/site/config/PHPExcel/Tests/Quadratic.php b/site/config/PHPExcel/Tests/Quadratic.php new file mode 100644 index 0000000..9e12ecc --- /dev/null +++ b/site/config/PHPExcel/Tests/Quadratic.php @@ -0,0 +1,68 @@ +<html> +<head> +<title>Quadratic Equation Solver</title> +</head> +<body> +<?php + +/** Error reporting **/ +error_reporting(E_ALL); + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +?> +<h1>Quadratic Equation Solver</h1> +<form action="Quadratic.php" method="POST"> +Enter the coefficients for the Ax<sup>2</sup> + Bx + C = 0 +<table border="0" cellpadding="0" cellspacing="0"> + <tr><td><b>A&nbsp;</b></td> + <td><input name="A" type="text" size="8" value="<?php echo (isset($_POST['A'])) ? htmlentities($_POST['A']) : ''; ?>"></td> + </tr> + <tr><td><b>B&nbsp;</b></td> + <td><input name="B" type="text" size="8" value="<?php echo (isset($_POST['B'])) ? htmlentities($_POST['B']) : ''; ?>"></td> + </tr> + <tr><td><b>C&nbsp;</b></td> + <td><input name="C" type="text" size="8" value="<?php echo (isset($_POST['C'])) ? htmlentities($_POST['C']) : ''; ?>"></td> + </tr> +</table> +<input name="submit" type="submit" value="calculate"><br /> +If A=0, the equation is not quadratic. +</form> + +<?php +/** If the user has submitted the form, then we need to execute a calculation **/ +if (isset($_POST['submit'])) { + if ($_POST['A'] == 0) { + echo 'The equation is not quadratic'; + } else { + /** So we include PHPExcel to perform the calculations **/ + include 'PHPExcel/IOFactory.php'; + + /** Load the quadratic equation solver worksheet into memory **/ + $objPHPExcel = PHPExcel_IOFactory::load('./Quadratic.xlsx'); + + /** Set our A, B and C values **/ + $objPHPExcel->getActiveSheet()->setCellValue('A1', $_POST['A']); + $objPHPExcel->getActiveSheet()->setCellValue('B1', $_POST['B']); + $objPHPExcel->getActiveSheet()->setCellValue('C1', $_POST['C']); + + + /** Calculate and Display the results **/ + echo '<hr /><b>Roots:</b><br />'; + + $callStartTime = microtime(true); + echo $objPHPExcel->getActiveSheet()->getCell('B5')->getCalculatedValue().'<br />'; + echo $objPHPExcel->getActiveSheet()->getCell('B6')->getCalculatedValue().'<br />'; + $callEndTime = microtime(true); + $callTime = $callEndTime - $callStartTime; + + echo '<hr />Call time for Quadratic Equation Solution was '.sprintf('%.4f',$callTime).' seconds<br /><hr />'; + echo ' Peak memory usage: '.(memory_get_peak_usage(true) / 1024 / 1024).' MB<br />'; + } +} + +?> + +</body> +<html> diff --git a/site/config/PHPExcel/Tests/Quadratic.xlsx b/site/config/PHPExcel/Tests/Quadratic.xlsx new file mode 100644 index 0000000..9a094b3 Binary files /dev/null and b/site/config/PHPExcel/Tests/Quadratic.xlsx differ diff --git a/site/config/PHPExcel/Tests/Quadratic2.php b/site/config/PHPExcel/Tests/Quadratic2.php new file mode 100644 index 0000000..686b268 --- /dev/null +++ b/site/config/PHPExcel/Tests/Quadratic2.php @@ -0,0 +1,65 @@ +<html> +<head> +<title>Quadratic Equation Solver</title> +</head> +<body> +<?php + +/** Error reporting **/ +error_reporting(E_ALL); + +/** Include path **/ +set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); + +?> +<h1>Quadratic Equation Solver</h1> +<form action="Quadratic2.php" method="POST"> +Enter the coefficients for the Ax<sup>2</sup> + Bx + C = 0 +<table border="0" cellpadding="0" cellspacing="0"> + <tr><td><b>A&nbsp;</b></td> + <td><input name="A" type="text" size="8" value="<?php echo (isset($_POST['A'])) ? htmlentities($_POST['A']) : ''; ?>"></td> + </tr> + <tr><td><b>B&nbsp;</b></td> + <td><input name="B" type="text" size="8" value="<?php echo (isset($_POST['B'])) ? htmlentities($_POST['B']) : ''; ?>"></td> + </tr> + <tr><td><b>C&nbsp;</b></td> + <td><input name="C" type="text" size="8" value="<?php echo (isset($_POST['C'])) ? htmlentities($_POST['C']) : ''; ?>"></td> + </tr> +</table> +<input name="submit" type="submit" value="calculate"><br /> +If A=0, the equation is not quadratic. +</form> + +<?php +/** If the user has submitted the form, then we need to execute a calculation **/ +if (isset($_POST['submit'])) { + if ($_POST['A'] == 0) { + echo 'The equation is not quadratic'; + } else { + /** So we include PHPExcel to perform the calculations **/ + include 'PHPExcel/Calculation.php'; + + /** Calculate and Display the results **/ + echo '<hr /><b>Roots:</b><br />'; + + $callStartTime = microtime(true); + $discriminantFormula = '=POWER('.$_POST['B'].',2) - (4 * '.$_POST['A'].' * '.$_POST['C'].')'; + $discriminant = PHPExcel_Calculation::getInstance()->calculateFormula($discriminantFormula); + + $r1Formula = '=IMDIV(IMSUM(-'.$_POST['B'].',IMSQRT('.$discriminant.')),2 * '.$_POST['A'].')'; + $r2Formula = '=IF('.$discriminant.'=0,"Only one root",IMDIV(IMSUB(-'.$_POST['B'].',IMSQRT('.$discriminant.')),2 * '.$_POST['A'].'))'; + + echo PHPExcel_Calculation::getInstance()->calculateFormula($r1Formula).'<br />'; + echo PHPExcel_Calculation::getInstance()->calculateFormula($r2Formula).'<br />'; + $callEndTime = microtime(true); + $callTime = $callEndTime - $callStartTime; + + echo '<hr />Call time for Quadratic Equation Solution was '.sprintf('%.4f',$callTime).' seconds<br /><hr />'; + echo ' Peak memory usage: '.(memory_get_peak_usage(true) / 1024 / 1024).' MB<br />'; + } +} + +?> + +</body> +<html> diff --git a/site/config/PHPExcel/Tests/SylkReader.php b/site/config/PHPExcel/Tests/SylkReader.php new file mode 100644 index 0000000..289a158 --- /dev/null +++ b/site/config/PHPExcel/Tests/SylkReader.php @@ -0,0 +1,50 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Load from SYLK file" , PHP_EOL; +$objPHPExcel = PHPExcel_IOFactory::load("SylkTest.slk"); + +echo date('H:i:s') , " Write to Excel2007 format" , PHP_EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', __FILE__) , PHP_EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , PHP_EOL; diff --git a/site/config/PHPExcel/Tests/SylkTest.slk b/site/config/PHPExcel/Tests/SylkTest.slk new file mode 100644 index 0000000..329abe2 --- /dev/null +++ b/site/config/PHPExcel/Tests/SylkTest.slk @@ -0,0 +1,152 @@ +ID;PWXL;N;E +P;PGeneral +P;P0 +P;P0.00 +P;P#,##0 +P;P#,##0.00 +P;P#,##0;;\-#,##0 +P;P#,##0;;[Red]\-#,##0 +P;P#,##0.00;;\-#,##0.00 +P;P#,##0.00;;[Red]\-#,##0.00 +P;P"$"#,##0;;\-"$"#,##0 +P;P"$"#,##0;;[Red]\-"$"#,##0 +P;P"$"#,##0.00;;\-"$"#,##0.00 +P;P"$"#,##0.00;;[Red]\-"$"#,##0.00 +P;P0% +P;P0.00% +P;P0.00E+00 +P;P##0.0E+0 +P;P#\ ?/? +P;P#\ ??/?? +P;Pdd/mm/yyyy +P;Pdd\-mmm\-yy +P;Pdd\-mmm +P;Pmmm\-yy +P;Ph:mm\ AM/PM +P;Ph:mm:ss\ AM/PM +P;Phh:mm +P;Phh:mm:ss +P;Pdd/mm/yyyy\ hh:mm +P;Pmm:ss +P;Pmm:ss.0 +P;P@ +P;P[h]:mm:ss +P;P_-"$"* #,##0_-;;\-"$"* #,##0_-;;_-"$"* "-"_-;;_-@_- +P;P_-* #,##0_-;;\-* #,##0_-;;_-* "-"_-;;_-@_- +P;P_-"$"* #,##0.00_-;;\-"$"* #,##0.00_-;;_-"$"* "-"??_-;;_-@_- +P;P_-* #,##0.00_-;;\-* #,##0.00_-;;_-* "-"??_-;;_-@_- +P;FArial;M200 +P;FArial;M200 +P;FArial;M200 +P;FArial;M200 +P;EArial;M200 +P;EArial;M200 +P;EArial;M200 +P;EArial;M200;SB +P;EArial;M200;SBI +P;EArial;M200;SI +P;EArial;M200;SU +P;EArial;M200;L11 +P;EArial;M200;SB +P;EArial;M200 +P;EArial;M200;SI +P;EArial;M200;SBI +P;EArial;M200;SBU +P;EArial;M200;SBIU +P;EArial;M200 +P;EArial;M200;SI +F;P0;DG0G8;M255 +B;Y18;X10;D0 0 17 9 +O;L;D;V0;K47;G100 0.001 +F;W1 1 17 +F;W4 6 6 +F;M270;R9 +F;M270;R12 +F;M270;R17 +F;M270;R18 +F;SM12;Y1;X1 +C;K"Test String 1" +F;SM19;X2 +C;K1 +F;SM19;X3 +C;K5 +F;SIDM18;X5 +C;K"A" +F;SDM17;X6 +C;K"E" +C;X8;K6;ERC[-6]+RC[-5] +C;X10;K"AE";ERC[-5]&RC[-4] +F;SSM0;Y2;X1 +C;K"Test - String 2" +C;X2;K2 +F;SM19;X3 +C;K6 +C;X5;K"B" +C;X6;K"F" +C;X8;K8;ERC[-6]+RC[-5] +C;X10;K"BF";ERC[-5]&RC[-4] +C;Y3;X1;K"Test #3" +F;SM19;X2 +C;K3 +F;SM19;X3 +C;K7 +F;SDM13;X5 +C;K"C" +F;SIDM16;X6 +C;K"G" +C;X8;K10;ERC[-6]+RC[-5] +C;X10;K"CG";ERC[-5]&RC[-4] +F;SM11;Y4;X1 +C;K"Test with (;;) in string" +C;X2;K4 +F;SM19;X3 +C;K8 +F;SIM15;X5 +C;K"D" +C;X6;K"H" +C;X8;K12;ERC[-6]+RC[-5] +C;X10;K"DH";ERC[-5]&RC[-4] +C;Y5;X8;K10;ESUM(R[-4]C[-6]:R[-1]C[-6]) +C;X9;K26;ESUM(R[-4]C[-6]:R[-1]C[-6]) +C;X10;K36;ESUM(R[-4]C[-8]:R[-1]C[-7]) +C;Y6;X2;K1.23 +C;X3;KTRUE +F;P19;FG0G;X4 +C;Y7;X2;K2.34 +C;X3;KFALSE +C;Y8;X2;K3.45 +F;Y9;X1 +F;X2 +F;X3 +F;X4 +F;X5 +F;X6 +F;X7 +F;X8 +F;X9 +F;X10 +F;P19;FG0G;Y10;X1 +C;K22269 +F;STM0;X3 +C;K"TOP" +F;P17;FG0G;Y11;X1 +C;K1.5 +F;Y12 +F;X2 +F;SBM0;X3 +C;K"BOTTOM" +F;X4 +F;X5 +F;X6 +F;X7 +F;X8 +F;X9 +F;X10 +F;SLM0;Y14;X3 +C;K"LEFT" +F;SRM0;Y16 +C;K"RIGHT" +F;Y17 +F;SLRTBM0;Y18 +C;K"BOX" +E diff --git a/site/config/PHPExcel/Tests/XMLReader.php b/site/config/PHPExcel/Tests/XMLReader.php new file mode 100644 index 0000000..88b2362 --- /dev/null +++ b/site/config/PHPExcel/Tests/XMLReader.php @@ -0,0 +1,60 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); + +date_default_timezone_set('Europe/London'); + +/** PHPExcel_IOFactory */ +require_once '../Classes/PHPExcel/IOFactory.php'; + + +echo date('H:i:s') , " Load from XML file" , PHP_EOL; +$inputFileName = "XMLTest.xml"; + +/** Identify the type of $inputFileName **/ +$inputFileType = PHPExcel_IOFactory::identify($inputFileName); +echo 'Loading ' , $inputFileName , ' using ' , $inputFileType , " Reader" , PHP_EOL; + +/** Create a new Reader of the type that has been identified **/ +$objReader = PHPExcel_IOFactory::createReader($inputFileType); +/** Load $inputFileName to a PHPExcel Object **/ +$objPHPExcel = $objReader->load($inputFileName); + + +echo date('H:i:s') , " Write to Excel2007 format" , PHP_EOL; +$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); +$objWriter->save(str_replace('.php', '.xlsx', __FILE__)); +echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx', __FILE__) , PHP_EOL; + + +// Echo memory peak usage +echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , PHP_EOL; + +// Echo done +echo date('H:i:s') , " Done writing file" , PHP_EOL; diff --git a/site/config/PHPExcel/Tests/XMLTest.xml b/site/config/PHPExcel/Tests/XMLTest.xml new file mode 100644 index 0000000..4159a94 --- /dev/null +++ b/site/config/PHPExcel/Tests/XMLTest.xml @@ -0,0 +1,450 @@ +<?xml version="1.0"?> +<?mso-application progid="Excel.Sheet"?> +<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:o="urn:schemas-microsoft-com:office:office" + xmlns:x="urn:schemas-microsoft-com:office:excel" + xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" + xmlns:html="http://www.w3.org/TR/REC-html40"> + <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> + <Title>Excel 2003 XML Test Workbook</Title> + <Subject>This is a test workbook saved as Excel 2003 XML</Subject> + <Author>Mark Baker</Author> + <Keywords>PHPExcel Excel 2003 XML Reader</Keywords> + <Description>This is a test for the PHPExcel Reader for workbooks saved using Excel 2003's XML Format</Description> + <LastAuthor>Mark Baker</LastAuthor> + <Created>2009-09-11T08:26:08Z</Created> + <LastSaved>2009-09-17T22:53:09Z</LastSaved> + <Category>Reader</Category> + <Company>PHPExcel</Company> + <Version>14.00</Version> + </DocumentProperties> + <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office"> + <AllowPNG/> + </OfficeDocumentSettings> + <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> + <WindowHeight>13176</WindowHeight> + <WindowWidth>28452</WindowWidth> + <WindowTopX>240</WindowTopX> + <WindowTopY>516</WindowTopY> + <ProtectStructure>False</ProtectStructure> + <ProtectWindows>False</ProtectWindows> + </ExcelWorkbook> + <Styles> + <Style ss:ID="Default" ss:Name="Normal"> + <Alignment ss:Vertical="Bottom"/> + <Borders/> + <Font ss:FontName="Calibri" ss:Size="11" ss:Color="#000000"/> + <Interior/> + <NumberFormat/> + <Protection/> + </Style> + <Style ss:ID="m42221568"> + <Alignment ss:Horizontal="Center" ss:Vertical="Center"/> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="3" + ss:Color="#00B050"/> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="3" + ss:Color="#0070C0"/> + <Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="3" + ss:Color="#FFFF00"/> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="3" + ss:Color="#FF0000"/> + </Borders> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s62"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#FF0000" ss:Bold="1"/> + </Style> + <Style ss:ID="s63"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s64"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Bold="1" + ss:Italic="1" ss:Underline="Single"/> + </Style> + <Style ss:ID="s65"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Bold="1" + ss:Underline="Single"/> + </Style> + <Style ss:ID="s66"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Bold="1"/> + <Interior/> + </Style> + <Style ss:ID="s67"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + <Interior/> + </Style> + <Style ss:ID="s68"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Bold="1"/> + </Style> + <Style ss:ID="s69"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Bold="1" + ss:Italic="1"/> + </Style> + <Style ss:ID="s70"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Underline="Single"/> + </Style> + <Style ss:ID="s71"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000" ss:Italic="1"/> + </Style> + <Style ss:ID="s72"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + <NumberFormat ss:Format="Short Date"/> + </Style> + <Style ss:ID="s73"> + <Borders> + <Border ss:Position="Top" ss:LineStyle="Continuous" ss:Weight="2" + ss:Color="#000000"/> + </Borders> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s74"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + <NumberFormat ss:Format="#\ ?/?"/> + </Style> + <Style ss:ID="s75"> + <Borders> + <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="2" + ss:Color="#000000"/> + </Borders> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s76"> + <Borders> + <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="2" + ss:Color="#000000"/> + </Borders> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s77"> + <Borders> + <Border ss:Position="Right" ss:LineStyle="Continuous" ss:Weight="2" + ss:Color="#000000"/> + </Borders> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + </Style> + <Style ss:ID="s85"> + <Borders> + <Border ss:Position="DiagonalLeft" ss:LineStyle="Double" ss:Weight="3" + ss:Color="#FF0000"/> + <Border ss:Position="DiagonalRight" ss:LineStyle="Double" ss:Weight="3" + ss:Color="#FF0000"/> + </Borders> + </Style> + <Style ss:ID="s86"> + <Alignment ss:Horizontal="Center" ss:Vertical="Bottom" ss:WrapText="1"/> + <Font ss:FontName="Arial" ss:Size="12" ss:Color="#000000" ss:Bold="1" + ss:Underline="Single"/> + </Style> + <Style ss:ID="s87"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + <NumberFormat ss:Format="0.00;[Red]0.00"/> + </Style> + <Style ss:ID="s88"> + <Font ss:FontName="Arial" ss:Size="11" ss:Color="#000000"/> + <NumberFormat ss:Format="dd\-mmm\-yyyy"/> + </Style> + </Styles> + <Worksheet ss:Name="Sample Data"> + <Table ss:ExpandedColumnCount="10" ss:ExpandedRowCount="20" x:FullColumns="1" + x:FullRows="1" ss:DefaultRowHeight="15"> + <Column ss:AutoFitWidth="0" ss:Width="90.6"/> + <Column ss:Index="4" ss:AutoFitWidth="0" ss:Width="33.6"/> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s62"><Data ss:Type="String">Test String 1</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">1</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">5</Data></Cell> + <Cell ss:Index="5" ss:StyleID="s64"><Data ss:Type="String">A</Data></Cell> + <Cell ss:StyleID="s65"><Data ss:Type="String">E</Data></Cell> + <Cell ss:Index="8" ss:Formula="=RC[-6]+RC[-5]"><Data ss:Type="Number">6</Data></Cell> + <Cell ss:Index="10" ss:Formula="=RC[-5]&amp;RC[-4]"><Data ss:Type="String">AE</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s66"><Data ss:Type="String">Test - String 2</Data></Cell> + <Cell><Data ss:Type="Number">2</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">6</Data></Cell> + <Cell ss:Index="5"><Data ss:Type="String">B</Data></Cell> + <Cell><Data ss:Type="String">F</Data></Cell> + <Cell ss:Index="8" ss:Formula="=RC[-6]+RC[-5]"><Data ss:Type="Number">8</Data></Cell> + <Cell ss:Index="10" ss:Formula="=RC[-5]&amp;RC[-4]"><Data ss:Type="String">BF</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s67"><Data ss:Type="String">Test #3</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">3</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">7</Data></Cell> + <Cell ss:Index="5" ss:StyleID="s68"><Data ss:Type="String">C</Data></Cell> + <Cell ss:StyleID="s69"><Data ss:Type="String">G</Data></Cell> + <Cell ss:Index="8" ss:Formula="=RC[-6]+RC[-5]"><Data ss:Type="Number">10</Data></Cell> + <Cell ss:Index="10" ss:Formula="=RC[-5]&amp;RC[-4]"><Data ss:Type="String">CG</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s70"><Data ss:Type="String">Test with (&quot;) in string</Data></Cell> + <Cell><Data ss:Type="Number">4</Data></Cell> + <Cell ss:StyleID="s63"><Data ss:Type="Number">8</Data></Cell> + <Cell ss:Index="5" ss:StyleID="s71"><Data ss:Type="String">D</Data></Cell> + <Cell><Data ss:Type="String">H</Data></Cell> + <Cell ss:Index="8" ss:Formula="=RC[-6]+RC[-5]"><Data ss:Type="Number">12</Data></Cell> + <Cell ss:Index="10" ss:Formula="=RC[-5]&amp;RC[-4]"><Data ss:Type="String">DH</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="8" ss:Formula="=SUM(R[-4]C[-6]:R[-1]C[-6])"><Data + ss:Type="Number">10</Data></Cell> + <Cell ss:Formula="=SUM(R[-4]C[-6]:R[-1]C[-6])"><Data ss:Type="Number">26</Data></Cell> + <Cell ss:Formula="=SUM(R[-4]C[-8]:R[-1]C[-7])"><Data ss:Type="Number">36</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="2"><Data ss:Type="Number">1.23</Data></Cell> + <Cell><Data ss:Type="Boolean">1</Data></Cell> + <Cell ss:StyleID="s72"/> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="2"><Data ss:Type="Number">2.34</Data></Cell> + <Cell><Data ss:Type="Boolean">0</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="2"><Data ss:Type="Number">3.45</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0" ss:Height="13.5"/> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s72"><Data ss:Type="DateTime">1960-12-19T00:00:00.000</Data></Cell> + <Cell ss:Index="3" ss:StyleID="s73"><Data ss:Type="String">TOP</Data></Cell> + <Cell ss:Index="7" ss:Formula="=#N/A"><Data ss:Type="Error">#N/A</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:StyleID="s74"><Data ss:Type="Number">1.5</Data></Cell> + <Cell ss:Index="7" ss:Formula="=12/0"><Data ss:Type="Error">#DIV/0!</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0" ss:Height="13.5"> + <Cell ss:Index="3" ss:StyleID="s75"><Data ss:Type="String">BOTTOM</Data></Cell> + </Row> + <Row ss:Index="14" ss:AutoFitHeight="0"> + <Cell ss:Index="3" ss:StyleID="s76"><Data ss:Type="String">LEFT</Data></Cell> + </Row> + <Row ss:Index="16" ss:AutoFitHeight="0"> + <Cell ss:Index="3" ss:StyleID="s77"><Data ss:Type="String">RIGHT</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0" ss:Height="13.5"/> + <Row ss:AutoFitHeight="0" ss:Height="13.5"> + <Cell ss:Index="2" ss:MergeAcross="1" ss:MergeDown="1" ss:StyleID="m42221568"><Data + ss:Type="String">BOX</Data></Cell> + <Cell ss:Index="5" ss:StyleID="s85"/> + <Cell ss:Index="7"><Data ss:Type="String">Test Column 1</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="8"><Data ss:Type="String">Test Column 2</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell ss:Index="9"><Data ss:Type="String">Test Column 3</Data></Cell> + </Row> + </Table> + <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> + <PageSetup> + <Header x:Margin="0.3"/> + <Footer x:Margin="0.3"/> + <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/> + </PageSetup> + <Unsynced/> + <Print> + <ValidPrinterInfo/> + <HorizontalResolution>600</HorizontalResolution> + <VerticalResolution>600</VerticalResolution> + </Print> + <Selected/> + <Panes> + <Pane> + <Number>3</Number> + <ActiveRow>17</ActiveRow> + <ActiveCol>4</ActiveCol> + </Pane> + </Panes> + <ProtectObjects>False</ProtectObjects> + <ProtectScenarios>False</ProtectScenarios> + <AllowFormatCells/> + <AllowSizeCols/> + <AllowSizeRows/> + <AllowInsertCols/> + <AllowInsertRows/> + <AllowInsertHyperlinks/> + <AllowDeleteCols/> + <AllowDeleteRows/> + <AllowSort/> + <AllowFilter/> + <AllowUsePivotTables/> + </WorksheetOptions> + </Worksheet> + <Worksheet ss:Name="Report Data"> + <Table ss:ExpandedColumnCount="7" ss:ExpandedRowCount="14" x:FullColumns="1" + x:FullRows="1" ss:DefaultRowHeight="15"> + <Column ss:AutoFitWidth="0" ss:Width="66.600000000000009"/> + <Column ss:AutoFitWidth="0" ss:Width="68.399999999999991"/> + <Column ss:AutoFitWidth="0" ss:Width="62.400000000000006"/> + <Column ss:Width="69.599999999999994"/> + <Column ss:Index="6" ss:Width="69.599999999999994"/> + <Column ss:AutoFitWidth="0" ss:Width="64.8"/> + <Row ss:AutoFitHeight="0" ss:Height="31.5"> + <Cell ss:StyleID="s86"><Data ss:Type="String">Heading 1</Data></Cell> + <Cell ss:StyleID="s86"><Data ss:Type="String">Heading 2</Data></Cell> + <Cell ss:StyleID="s86"><Data ss:Type="String">Third Heading</Data></Cell> + <Cell ss:StyleID="s86"><Data ss:Type="String">Date Heading</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s86"><Data ss:Type="String">Adjusted Date</Data></Cell> + <Cell ss:StyleID="s86"><Data ss:Type="String">Adjusted Number</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">ABC</Data></Cell> + <Cell><Data ss:Type="Number">1</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">1.1100000000000001</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2001-01-01T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2000-12-31T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">1.1100000000000001</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">BCD</Data></Cell> + <Cell><Data ss:Type="Number">2</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">2.2200000000000002</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2002-02-02T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2002-01-31T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">4.4400000000000004</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">CDE</Data></Cell> + <Cell><Data ss:Type="Number">3</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">3.33</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2003-03-03T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2003-02-28T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">9.99</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">DEF</Data></Cell> + <Cell><Data ss:Type="Number">4</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">4.4400000000000004</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2004-04-03T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2004-03-30T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">17.760000000000002</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">EFG</Data></Cell> + <Cell><Data ss:Type="Number">5</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">5.55</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2005-05-04T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2005-04-29T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">27.75</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">FGH</Data></Cell> + <Cell><Data ss:Type="Number">6</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">6.66</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2006-06-05T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2006-05-30T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">39.96</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">GHI</Data></Cell> + <Cell><Data ss:Type="Number">7</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">7.77</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2007-07-06T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2007-06-29T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">54.39</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">HIJ</Data></Cell> + <Cell><Data ss:Type="Number">8</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">8.8800000000000008</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2008-08-07T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2008-07-30T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">71.040000000000006</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">IJK</Data></Cell> + <Cell><Data ss:Type="Number">9</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">9.99</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2009-09-08T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2009-08-30T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">89.91</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">JKL</Data></Cell> + <Cell><Data ss:Type="Number">10</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">11.1</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2010-10-09T23:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2010-09-29T23:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">111</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">KLM</Data></Cell> + <Cell><Data ss:Type="Number">11</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">12.21</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2011-11-11T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2011-10-31T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">134.31</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">LMN</Data></Cell> + <Cell><Data ss:Type="Number">12</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">13.32</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">2012-12-12T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">2012-11-30T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">159.84</Data></Cell> + </Row> + <Row ss:AutoFitHeight="0"> + <Cell><Data ss:Type="String">ZYX</Data></Cell> + <Cell><Data ss:Type="Number">-1</Data></Cell> + <Cell ss:StyleID="s87"><Data ss:Type="Number">-1.1100000000000001</Data></Cell> + <Cell ss:StyleID="s88"><Data ss:Type="DateTime">1999-12-01T00:00:00.000</Data></Cell> + <Cell ss:Index="6" ss:StyleID="s88" ss:Formula="=RC[-2]-RC[-4]"><Data + ss:Type="DateTime">1999-12-02T00:00:00.000</Data></Cell> + <Cell ss:StyleID="s87" ss:Formula="=RC[-5]*RC[-4]"><Data ss:Type="Number">1.1100000000000001</Data></Cell> + </Row> + </Table> + <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel"> + <PageSetup> + <Header x:Margin="0.3"/> + <Footer x:Margin="0.3"/> + <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/> + </PageSetup> + <Unsynced/> + <Print> + <ValidPrinterInfo/> + <HorizontalResolution>600</HorizontalResolution> + <VerticalResolution>600</VerticalResolution> + </Print> + <ProtectObjects>False</ProtectObjects> + <ProtectScenarios>False</ProtectScenarios> + <AllowFormatCells/> + <AllowSizeCols/> + <AllowSizeRows/> + <AllowInsertCols/> + <AllowInsertRows/> + <AllowInsertHyperlinks/> + <AllowDeleteCols/> + <AllowDeleteRows/> + <AllowSort/> + <AllowFilter/> + <AllowUsePivotTables/> + </WorksheetOptions> + <ConditionalFormatting xmlns="urn:schemas-microsoft-com:office:excel"> + <Range>R2C3:R14C3</Range> + <Condition> + <Qualifier>Greater</Qualifier> + <Value1>0</Value1> + <Format Style='color:#006100;background:#C6EFCE'/> + </Condition> + <Condition> + <Qualifier>Less</Qualifier> + <Value1>0</Value1> + <Format Style='color:#9C0006;background:#FFC7CE'/> + </Condition> + </ConditionalFormatting> + </Worksheet> +</Workbook> diff --git a/site/config/PHPExcel/Tests/_notes/dwsync.xml b/site/config/PHPExcel/Tests/_notes/dwsync.xml new file mode 100644 index 0000000..b8ab942 --- /dev/null +++ b/site/config/PHPExcel/Tests/_notes/dwsync.xml @@ -0,0 +1,453 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="02types-xls.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="22heavilyformatted.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="06largescale-xls.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="21pdf.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="09pagebreaks.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="05featuredemo.inc.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="Quadratic.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="01simple.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="GnumericTest.gnumeric" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="01simple-download-xlsx.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="XMLReader.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="16csv.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="02types.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="01simple-download-pdf.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="06largescale.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="25inmemoryimage.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="33chartcreate-bar-stacked.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="SylkReader.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="23sharedstyles.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="27imagesexcel5.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="SylkTest.slk" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="14excel5.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="runall.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="15datavalidation-xls.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="26utf8.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="OOCalcTest.ods" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="Excel2003XMLTest.xml" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="33chartcreate-area.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="01simple-download-xls.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="28iterator.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851609999999" remote="129984144600000000" Dst="-1" /> +<file name="Quadratic2.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="33chartcreate-multiple-charts.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="XMLTest.xml" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="17html.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="Quadratic.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="33chartcreate-line.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="OOCalcReader.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="30template.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="18extendedcalculation.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="15datavalidation.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="04printing.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="10autofilter-selection-1.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="10autofilter-selection-2.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="GnumericReader.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="05featuredemo.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="Excel2003XMLReader.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="34chartupdate.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="19namedrange.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="11documentsecurity-xls.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="32chartreadwrite.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="10autofilter.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="20readexcel5.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="33chartcreate-column-2.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="33chartcreate-column.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="24readfilter.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="03formulas.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851619999999" remote="129984144600000000" Dst="-1" /> +<file name="33chartcreate-bar.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="31docproperties_write.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="29advancedvaluebinder.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="13calculation.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="01pharSimple.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="08conditionalformatting.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="33chartcreate-pie.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="11documentsecurity.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="35chartrender.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="07reader.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="07reader.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="01simple.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="05featuredemo.xls" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="05featuredemo.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="01simple.xls" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="02types.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="02types-xls.xls" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="06largescale-xls.xls" server="web2.pointvirgule.net/valtra/monope/" local="129973851629999999" remote="129984144600000000" Dst="-1" /> +<file name="31docproperties_write-xls.php" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="02types-xls.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="22heavilyformatted.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="06largescale-xls.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="21pdf.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="09pagebreaks.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="05featuredemo.inc.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099200000000" Dst="-1" /> +<file name="Quadratic.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099200000000" Dst="-1" /> +<file name="01simple.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099200000000" Dst="-1" /> +<file name="GnumericTest.gnumeric" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099200000000" Dst="-1" /> +<file name="01simple-download-xlsx.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="XMLReader.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="16csv.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="02types.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="01simple-download-pdf.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="06largescale.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="25inmemoryimage.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="33chartcreate-bar-stacked.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="SylkReader.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="23sharedstyles.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="27imagesexcel5.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="SylkTest.slk" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="14excel5.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="runall.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="15datavalidation-xls.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="26utf8.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="OOCalcTest.ods" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="Excel2003XMLTest.xml" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="33chartcreate-area.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="01simple-download-xls.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="28iterator.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851609999999" remote="129997099200000000" Dst="-1" /> +<file name="Quadratic2.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="33chartcreate-multiple-charts.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="XMLTest.xml" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="17html.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="Quadratic.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="33chartcreate-line.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="OOCalcReader.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="30template.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="18extendedcalculation.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="15datavalidation.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="04printing.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="10autofilter-selection-1.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="10autofilter-selection-2.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="GnumericReader.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="05featuredemo.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="Excel2003XMLReader.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="34chartupdate.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="19namedrange.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="11documentsecurity-xls.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="32chartreadwrite.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="10autofilter.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="20readexcel5.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="33chartcreate-column-2.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="33chartcreate-column.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="24readfilter.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="03formulas.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851619999999" remote="129997099200000000" Dst="-1" /> +<file name="33chartcreate-bar.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="31docproperties_write.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="29advancedvaluebinder.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="13calculation.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="01pharSimple.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="08conditionalformatting.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="33chartcreate-pie.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="11documentsecurity.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="35chartrender.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="07reader.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="07reader.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="01simple.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="05featuredemo.xls" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="05featuredemo.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="01simple.xls" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099200000000" Dst="-1" /> +<file name="02types.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099800000000" Dst="-1" /> +<file name="02types-xls.xls" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099800000000" Dst="-1" /> +<file name="06largescale-xls.xls" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851629999999" remote="129997099800000000" Dst="-1" /> +<file name="31docproperties_write-xls.php" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997099800000000" Dst="-1" /> +<file name="02types-xls.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560051711910" remote="131260197000000000" Dst="1" /> +<file name="22heavilyformatted.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560052188334" remote="131260197000000000" Dst="1" /> +<file name="06largescale-xls.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560052692305" remote="131260197000000000" Dst="1" /> +<file name="21pdf.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560053151408" remote="131260197000000000" Dst="1" /> +<file name="09pagebreaks.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560053647257" remote="131260197000000000" Dst="1" /> +<file name="05featuredemo.inc.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560054164200" remote="131260197000000000" Dst="1" /> +<file name="01simple.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560055335153" remote="131260197000000000" Dst="1" /> +<file name="Quadratic.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560054902540" remote="131260197000000000" Dst="1" /> +<file name="GnumericTest.gnumeric" server="62.244.88.111/actions-fendt/lisa/" local="131244560055762296" remote="131260197000000000" Dst="1" /> +<file name="01simple-download-xlsx.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560056357802" remote="131260197000000000" Dst="1" /> +<file name="XMLReader.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560056953330" remote="131260197000000000" Dst="1" /> +<file name="16csv.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560057531840" remote="131260197000000000" Dst="1" /> +<file name="02types.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560058021066" remote="131260197000000000" Dst="1" /> +<file name="01simple-download-pdf.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560058552620" remote="131260197000000000" Dst="1" /> +<file name="06largescale.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560059041006" remote="131260197000000000" Dst="1" /> +<file name="25inmemoryimage.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560059526583" remote="131260197000000000" Dst="1" /> +<file name="33chartcreate-bar-stacked.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560060010864" remote="131260197000000000" Dst="1" /> +<file name="SylkReader.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560060472490" remote="131260197000000000" Dst="1" /> +<file name="23sharedstyles.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560060989985" remote="131260197000000000" Dst="1" /> +<file name="27imagesexcel5.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560061449561" remote="131260197000000000" Dst="1" /> +<file name="14excel5.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560062417880" remote="131260197000000000" Dst="1" /> +<file name="SylkTest.slk" server="62.244.88.111/actions-fendt/lisa/" local="131244560061907039" remote="131260197000000000" Dst="1" /> +<file name="runall.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560062916554" remote="131260197000000000" Dst="1" /> +<file name="15datavalidation-xls.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560063448521" remote="131260197000000000" Dst="1" /> +<file name="26utf8.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560064054962" remote="131260197000000000" Dst="1" /> +<file name="OOCalcTest.ods" server="62.244.88.111/actions-fendt/lisa/" local="131244560064544567" remote="131260197000000000" Dst="1" /> +<file name="33chartcreate-area.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560069569843" remote="131260197000000000" Dst="1" /> +<file name="01simple-download-xls.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560070052524" remote="131260197000000000" Dst="1" /> +<file name="28iterator.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560070546249" remote="131260197000000000" Dst="1" /> +<file name="Quadratic2.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560071006866" remote="131260197000000000" Dst="1" /> +<file name="33chartcreate-multiple-charts.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560071490676" remote="131260197000000000" Dst="1" /> +<file name="XMLTest.xml" server="62.244.88.111/actions-fendt/lisa/" local="131244560072030837" remote="131260197000000000" Dst="1" /> +<file name="17html.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560072503223" remote="131260197000000000" Dst="1" /> +<file name="33chartcreate-line.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560073512213" remote="131260197000000000" Dst="1" /> +<file name="Quadratic.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560073010848" remote="131260197000000000" Dst="1" /> +<file name="OOCalcReader.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560073945778" remote="131260197000000000" Dst="1" /> +<file name="30template.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560074398347" remote="131260197000000000" Dst="1" /> +<file name="18extendedcalculation.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560074850094" remote="131260197000000000" Dst="1" /> +<file name="15datavalidation.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560075281888" remote="131260197000000000" Dst="1" /> +<file name="04printing.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560075731796" remote="131260197000000000" Dst="1" /> +<file name="10autofilter-selection-1.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560078120834" remote="131260197000000000" Dst="1" /> +<file name="10autofilter-selection-2.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560078731981" remote="131260197000000000" Dst="1" /> +<file name="GnumericReader.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560079332269" remote="131260197000000000" Dst="1" /> +<file name="05featuredemo.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560079944033" remote="131260197000000000" Dst="1" /> +<file name="Excel2003XMLReader.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560080549376" remote="131260197000000000" Dst="1" /> +<file name="Excel2003XMLTest.xml" server="62.244.88.111/actions-fendt/lisa/" local="131244560069093600" remote="131260197000000000" Dst="1" /> +<file name="34chartupdate.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560081182920" remote="131260197000000000" Dst="1" /> +<file name="19namedrange.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560081801861" remote="131260197000000000" Dst="1" /> +<file name="11documentsecurity-xls.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560082468986" remote="131260197000000000" Dst="1" /> +<file name="32chartreadwrite.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560083125293" remote="131260197000000000" Dst="1" /> +<file name="10autofilter.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560083634542" remote="131260197000000000" Dst="1" /> +<file name="20readexcel5.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560084138912" remote="131260197000000000" Dst="1" /> +<file name="33chartcreate-column-2.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560084675526" remote="131260197000000000" Dst="1" /> +<file name="33chartcreate-column.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560085184424" remote="131260197000000000" Dst="1" /> +<file name="24readfilter.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560085694817" remote="131260197000000000" Dst="1" /> +<file name="03formulas.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560086227432" remote="131260197000000000" Dst="1" /> +<file name="33chartcreate-bar.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560086741793" remote="131260197000000000" Dst="1" /> +<file name="31docproperties_write.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560087274590" remote="131260197000000000" Dst="1" /> +<file name="29advancedvaluebinder.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560087795978" remote="131260197000000000" Dst="1" /> +<file name="13calculation.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560088289010" remote="131260197000000000" Dst="1" /> +<file name="01pharSimple.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560088772661" remote="131260197000000000" Dst="1" /> +<file name="08conditionalformatting.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560089283003" remote="131260197000000000" Dst="1" /> +<file name="33chartcreate-pie.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560089792816" remote="131260197000000000" Dst="1" /> +<file name="11documentsecurity.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560090272786" remote="131260197000000000" Dst="1" /> +<file name="35chartrender.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560090803763" remote="131260197000000000" Dst="1" /> +<file name="07reader.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560091279942" remote="131260197000000000" Dst="1" /> +<file name="07reader.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560092155633" remote="131260197000000000" Dst="1" /> +<file name="01simple.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560092743240" remote="131260197000000000" Dst="1" /> +<file name="05featuredemo.xls" server="62.244.88.111/actions-fendt/lisa/" local="131244560093227885" remote="131260197000000000" Dst="1" /> +<file name="05featuredemo.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560094228642" remote="131260197000000000" Dst="1" /> +<file name="01simple.xls" server="62.244.88.111/actions-fendt/lisa/" local="131244560094779658" remote="131260197000000000" Dst="1" /> +<file name="02types.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560095638053" remote="131260197000000000" Dst="1" /> +<file name="02types-xls.xls" server="62.244.88.111/actions-fendt/lisa/" local="131244560096226893" remote="131260197000000000" Dst="1" /> +<file name="31docproperties_write-xls.php" server="62.244.88.111/actions-fendt/lisa/" local="131244560100773277" remote="131260197000000000" Dst="1" /> +<file name="06largescale-xls.xls" server="62.244.88.111/actions-fendt/lisa/" local="131244560100134846" remote="131260197000000000" Dst="1" /> +<file name="02types-xls.php" server="62.244.88.21/amashow/" local="131414752335335305" remote="131414680800000000" Dst="2" /> +<file name="22heavilyformatted.php" server="62.244.88.21/amashow/" local="131414752335767251" remote="131414680800000000" Dst="2" /> +<file name="06largescale-xls.php" server="62.244.88.21/amashow/" local="131414752336434995" remote="131414680800000000" Dst="2" /> +<file name="21pdf.php" server="62.244.88.21/amashow/" local="131414752336717920" remote="131414680800000000" Dst="2" /> +<file name="09pagebreaks.php" server="62.244.88.21/amashow/" local="131414752336911795" remote="131414680800000000" Dst="2" /> +<file name="05featuredemo.inc.php" server="62.244.88.21/amashow/" local="131414752337145614" remote="131414680800000000" Dst="2" /> +<file name="Quadratic.xlsx" server="62.244.88.21/amashow/" local="131414752337532909" remote="131414680800000000" Dst="2" /> +<file name="01simple.php" server="62.244.88.21/amashow/" local="131414752337724251" remote="131414680800000000" Dst="2" /> +<file name="XMLReader.php" server="62.244.88.21/amashow/" local="131414752338449689" remote="131414680800000000" Dst="2" /> +<file name="GnumericTest.gnumeric" server="62.244.88.21/amashow/" local="131414752337913931" remote="131414680800000000" Dst="2" /> +<file name="01simple-download-xlsx.php" server="62.244.88.21/amashow/" local="131414752338252495" remote="131414680800000000" Dst="2" /> +<file name="02types.php" server="62.244.88.21/amashow/" local="131414752339039279" remote="131414680800000000" Dst="2" /> +<file name="01simple-download-pdf.php" server="62.244.88.21/amashow/" local="131414752339243261" remote="131414680800000000" Dst="2" /> +<file name="16csv.php" server="62.244.88.21/amashow/" local="131414752338656137" remote="131414680800000000" Dst="2" /> +<file name="06largescale.php" server="62.244.88.21/amashow/" local="131414752339710248" remote="131414680800000000" Dst="2" /> +<file name="25inmemoryimage.php" server="62.244.88.21/amashow/" local="131414752339917716" remote="131414680800000000" Dst="2" /> +<file name="33chartcreate-bar-stacked.php" server="62.244.88.21/amashow/" local="131414752340128465" remote="131414680800000000" Dst="2" /> +<file name="SylkReader.php" server="62.244.88.21/amashow/" local="131414752340325947" remote="131414680800000000" Dst="2" /> +<file name="23sharedstyles.php" server="62.244.88.21/amashow/" local="131414752340522168" remote="131414680800000000" Dst="2" /> +<file name="27imagesexcel5.php" server="62.244.88.21/amashow/" local="131414752340922381" remote="131414680800000000" Dst="2" /> +<file name="14excel5.php" server="62.244.88.21/amashow/" local="131414752341304838" remote="131414680800000000" Dst="2" /> +<file name="runall.php" server="62.244.88.21/amashow/" local="131414752341498498" remote="131414680800000000" Dst="2" /> +<file name="SylkTest.slk" server="62.244.88.21/amashow/" local="131414752341110627" remote="131414680800000000" Dst="2" /> +<file name="26utf8.php" server="62.244.88.21/amashow/" local="131414752342223057" remote="131414680800000000" Dst="2" /> +<file name="15datavalidation-xls.php" server="62.244.88.21/amashow/" local="131414752341694280" remote="131414680800000000" Dst="2" /> +<file name="OOCalcTest.ods" server="62.244.88.21/amashow/" local="131414752342622330" remote="131414680800000000" Dst="2" /> +<file name="33chartcreate-area.php" server="62.244.88.21/amashow/" local="131414752344401702" remote="131414680800000000" Dst="2" /> +<file name="01simple-download-xls.php" server="62.244.88.21/amashow/" local="131414752344611082" remote="131414680800000000" Dst="2" /> +<file name="28iterator.php" server="62.244.88.21/amashow/" local="131414752344817322" remote="131414680800000000" Dst="2" /> +<file name="Quadratic2.php" server="62.244.88.21/amashow/" local="131414752345017275" remote="131414680800000000" Dst="2" /> +<file name="33chartcreate-multiple-charts.php" server="62.244.88.21/amashow/" local="131414752345238579" remote="131414680800000000" Dst="2" /> +<file name="XMLTest.xml" server="62.244.88.21/amashow/" local="131414752345653460" remote="131414680800000000" Dst="2" /> +<file name="17html.php" server="62.244.88.21/amashow/" local="131414752345853374" remote="131414680800000000" Dst="2" /> +<file name="Quadratic.php" server="62.244.88.21/amashow/" local="131414752346057172" remote="131414680800000000" Dst="2" /> +<file name="33chartcreate-line.php" server="62.244.88.21/amashow/" local="131414752346261662" remote="131414680800000000" Dst="2" /> +<file name="OOCalcReader.php" server="62.244.88.21/amashow/" local="131414752346459058" remote="131414680800000000" Dst="2" /> +<file name="30template.php" server="62.244.88.21/amashow/" local="131414752346663303" remote="131414680800000000" Dst="2" /> +<file name="18extendedcalculation.php" server="62.244.88.21/amashow/" local="131414752346862223" remote="131414680800000000" Dst="2" /> +<file name="Excel2003XMLTest.xml" server="62.244.88.21/amashow/" local="131414752344201945" remote="131414680800000000" Dst="2" /> +<file name="15datavalidation.php" server="62.244.88.21/amashow/" local="131414752347064937" remote="131414680800000000" Dst="2" /> +<file name="04printing.php" server="62.244.88.21/amashow/" local="131414752347422930" remote="131414680800000000" Dst="2" /> +<file name="10autofilter-selection-2.php" server="62.244.88.21/amashow/" local="131414752348122803" remote="131414680800000000" Dst="2" /> +<file name="10autofilter-selection-1.php" server="62.244.88.21/amashow/" local="131414752347636557" remote="131414680800000000" Dst="2" /> +<file name="GnumericReader.php" server="62.244.88.21/amashow/" local="131414752348313586" remote="131414680800000000" Dst="2" /> +<file name="05featuredemo.php" server="62.244.88.21/amashow/" local="131414752348510502" remote="131414680800000000" Dst="2" /> +<file name="Excel2003XMLReader.php" server="62.244.88.21/amashow/" local="131414752348705474" remote="131414680800000000" Dst="2" /> +<file name="34chartupdate.php" server="62.244.88.21/amashow/" local="131414752348905268" remote="131414680800000000" Dst="2" /> +<file name="19namedrange.php" server="62.244.88.21/amashow/" local="131414752349117506" remote="131414680800000000" Dst="2" /> +<file name="11documentsecurity-xls.php" server="62.244.88.21/amashow/" local="131414752349325368" remote="131414680800000000" Dst="2" /> +<file name="32chartreadwrite.php" server="62.244.88.21/amashow/" local="131414752349525534" remote="131414680800000000" Dst="2" /> +<file name="20readexcel5.php" server="62.244.88.21/amashow/" local="131414752350157446" remote="131414680800000000" Dst="2" /> +<file name="33chartcreate-column-2.php" server="62.244.88.21/amashow/" local="131414752350375847" remote="131414680800000000" Dst="2" /> +<file name="10autofilter.php" server="62.244.88.21/amashow/" local="131414752349724470" remote="131414680800000000" Dst="2" /> +<file name="33chartcreate-column.php" server="62.244.88.21/amashow/" local="131414752351057282" remote="131414680800000000" Dst="2" /> +<file name="24readfilter.php" server="62.244.88.21/amashow/" local="131414752351256816" remote="131414680800000000" Dst="2" /> +<file name="03formulas.php" server="62.244.88.21/amashow/" local="131414752351478000" remote="131414680800000000" Dst="2" /> +<file name="33chartcreate-bar.php" server="62.244.88.21/amashow/" local="131414752351912171" remote="131414680800000000" Dst="2" /> +<file name="31docproperties_write.php" server="62.244.88.21/amashow/" local="131414752352132031" remote="131414680800000000" Dst="2" /> +<file name="29advancedvaluebinder.php" server="62.244.88.21/amashow/" local="131414752352511300" remote="131414680800000000" Dst="2" /> +<file name="13calculation.php" server="62.244.88.21/amashow/" local="131414752352721119" remote="131414680800000000" Dst="2" /> +<file name="01pharSimple.php" server="62.244.88.21/amashow/" local="131414752352915217" remote="131414680800000000" Dst="2" /> +<file name="08conditionalformatting.php" server="62.244.88.21/amashow/" local="131414752353133481" remote="131414680800000000" Dst="2" /> +<file name="33chartcreate-pie.php" server="62.244.88.21/amashow/" local="131414752353339440" remote="131414680800000000" Dst="2" /> +<file name="11documentsecurity.php" server="62.244.88.21/amashow/" local="131414752353535849" remote="131414680800000000" Dst="2" /> +<file name="35chartrender.php" server="62.244.88.21/amashow/" local="131414752353728552" remote="131414680800000000" Dst="2" /> +<file name="07reader.php" server="62.244.88.21/amashow/" local="131414752353914066" remote="131414680800000000" Dst="2" /> +<file name="07reader.xlsx" server="62.244.88.21/amashow/" local="131414752356541786" remote="131414680800000000" Dst="2" /> +<file name="01simple.xlsx" server="62.244.88.21/amashow/" local="131414752356920937" remote="131414680800000000" Dst="2" /> +<file name="05featuredemo.xls" server="62.244.88.21/amashow/" local="131414752357150951" remote="131414680800000000" Dst="2" /> +<file name="05featuredemo.xlsx" server="62.244.88.21/amashow/" local="131414752358533404" remote="131414680800000000" Dst="2" /> +<file name="01simple.xls" server="62.244.88.21/amashow/" local="131414752358743179" remote="131414680800000000" Dst="2" /> +<file name="02types-xls.xls" server="62.244.88.21/amashow/" local="131414752359378907" remote="131414680800000000" Dst="2" /> +<file name="02types.xlsx" server="62.244.88.21/amashow/" local="131414752359160445" remote="131414680800000000" Dst="2" /> +<file name="31docproperties_write-xls.php" server="62.244.88.21/amashow/" local="131414752361415175" remote="131414680800000000" Dst="2" /> +<file name="06largescale-xls.xls" server="62.244.88.21/amashow/" local="131414752361184336" remote="131414680800000000" Dst="2" /> +<file name="31docproperties_write.php" server="62.244.88.21/deciday/" local="131919461757420149" remote="131826018000000000" Dst="1" /> +<file name="08conditionalformatting.php" server="62.244.88.21/deciday/" local="131919461741632665" remote="131826018000000000" Dst="1" /> +<file name="33chartcreate-multiple-charts.php" server="62.244.88.21/deciday/" local="131919461765732497" remote="131826018000000000" Dst="1" /> +<file name="33chartcreate-bar.php" server="62.244.88.21/deciday/" local="131919461762784348" remote="131826018000000000" Dst="1" /> +<file name="15datavalidation.php" server="62.244.88.21/deciday/" local="131919461746901433" remote="131826018000000000" Dst="1" /> +<file name="17html.php" server="62.244.88.21/deciday/" local="131919461748725148" remote="131826018000000000" Dst="1" /> +<file name="20readexcel5.php" server="62.244.88.21/deciday/" local="131919461750252575" remote="131826018000000000" Dst="1" /> +<file name="Quadratic2.php" server="62.244.88.21/deciday/" local="131919461778221445" remote="131826018000000000" Dst="1" /> +<file name="01simple-download-xlsx.php" server="62.244.88.21/deciday/" local="131919461732245422" remote="131826018000000000" Dst="1" /> +<file name="10autofilter-selection-1.php" server="62.244.88.21/deciday/" local="131919461743692224" remote="131826018000000000" Dst="1" /> +<file name="01simple.php" server="62.244.88.21/deciday/" local="131919461732590165" remote="131826018000000000" Dst="1" /> +<file name="OOCalcReader.php" server="62.244.88.21/deciday/" local="131919461776055044" remote="131826018000000000" Dst="1" /> +<file name="05featuredemo.xlsx" server="62.244.88.21/deciday/" local="131919461739367931" remote="131826018000000000" Dst="1" /> +<file name="28iterator.php" server="62.244.88.21/deciday/" local="131919461755662545" remote="131826018000000000" Dst="1" /> +<file name="02types.xlsx" server="62.244.88.21/deciday/" local="131919461735219053" remote="131826018000000000" Dst="1" /> +<file name="07reader.php" server="62.244.88.21/deciday/" local="131919461740555953" remote="131826018000000000" Dst="1" /> +<file name="GnumericTest.gnumeric" server="62.244.88.21/deciday/" local="131919461770135057" remote="131826018000000000" Dst="1" /> +<file name="01pharSimple.php" server="62.244.88.21/deciday/" local="131919461731374032" remote="131826018000000000" Dst="1" /> +<file name="11documentsecurity-xls.php" server="62.244.88.21/deciday/" local="131919461745316502" remote="131826018000000000" Dst="1" /> +<file name="02types.php" server="62.244.88.21/deciday/" local="131919461734043400" remote="131826018000000000" Dst="1" /> +<file name="29advancedvaluebinder.php" server="62.244.88.21/deciday/" local="131919461756148725" remote="131826018000000000" Dst="1" /> +<file name="runall.php" server="62.244.88.21/deciday/" local="131919461779287873" remote="131826018000000000" Dst="1" /> +<file name="22heavilyformatted.php" server="62.244.88.21/deciday/" local="131919461751292696" remote="131826018000000000" Dst="1" /> +<file name="01simple.xls" server="62.244.88.21/deciday/" local="131919461733523732" remote="131826018000000000" Dst="1" /> +<file name="06largescale-xls.php" server="62.244.88.21/deciday/" local="131919461739713068" remote="131826018000000000" Dst="1" /> +<file name="10autofilter-selection-2.php" server="62.244.88.21/deciday/" local="131919461744391142" remote="131826018000000000" Dst="1" /> +<file name="03formulas.php" server="62.244.88.21/deciday/" local="131919461736127615" remote="131826018000000000" Dst="1" /> +<file name="05featuredemo.xls" server="62.244.88.21/deciday/" local="131919461739026169" remote="131826018000000000" Dst="1" /> +<file name="OOCalcTest.ods" server="62.244.88.21/deciday/" local="131919461777722257" remote="131826018000000000" Dst="1" /> +<file name="33chartcreate-column.php" server="62.244.88.21/deciday/" local="131919461764451203" remote="131826018000000000" Dst="1" /> +<file name="06largescale-xls.xls" server="62.244.88.21/deciday/" local="131919461748065905" remote="131826018000000000" Dst="1" /> +<file name="06largescale.php" server="62.244.88.21/deciday/" local="131919461738734115" remote="131826018000000000" Dst="1" /> +<file name="05featuredemo.inc.php" server="62.244.88.21/deciday/" local="131919461737567993" remote="131826018000000000" Dst="1" /> +<file name="21pdf.php" server="62.244.88.21/deciday/" local="131919461750784632" remote="131826018000000000" Dst="1" /> +<file name="30template.php" server="62.244.88.21/deciday/" local="131919461757167627" remote="131826018000000000" Dst="1" /> +<file name="01simple-download-pdf.php" server="62.244.88.21/deciday/" local="131919461731559549" remote="131826018000000000" Dst="1" /> +<file name="11documentsecurity.php" server="62.244.88.21/deciday/" local="131919461744608127" remote="131826018000000000" Dst="1" /> +<file name="35chartrender.php" server="62.244.88.21/deciday/" local="131919461767406972" remote="131826018000000000" Dst="1" /> +<file name="XMLReader.php" server="62.244.88.21/deciday/" local="131919461824983594" remote="131826018000000000" Dst="1" /> +<file name="33chartcreate-pie.php" server="62.244.88.21/deciday/" local="131919461766414977" remote="131826018000000000" Dst="1" /> +<file name="15datavalidation-xls.php" server="62.244.88.21/deciday/" local="131919461777249930" remote="131826018000000000" Dst="1" /> +<file name="XMLTest.xml" server="62.244.88.21/deciday/" local="131919461825453194" remote="131826018000000000" Dst="1" /> +<file name="SylkTest.slk" server="62.244.88.21/deciday/" local="131919461780284954" remote="131826018000000000" Dst="1" /> +<file name="14excel5.php" server="62.244.88.21/deciday/" local="131919461746325284" remote="131826018000000000" Dst="1" /> +<file name="SylkReader.php" server="62.244.88.21/deciday/" local="131919461779480495" remote="131826018000000000" Dst="1" /> +<file name="01simple-download-xls.php" server="62.244.88.21/deciday/" local="131919461731910473" remote="131826018000000000" Dst="1" /> +<file name="33chartcreate-column-2.php" server="62.244.88.21/deciday/" local="131919461764260433" remote="131826018000000000" Dst="1" /> +<file name="16csv.php" server="62.244.88.21/deciday/" local="131919461747803057" remote="131826018000000000" Dst="1" /> +<file name="Quadratic.xlsx" server="62.244.88.21/deciday/" local="131919461779111464" remote="131826018000000000" Dst="1" /> +<file name="Excel2003XMLTest.xml" server="62.244.88.21/deciday/" local="131919461777464447" remote="131826018000000000" Dst="1" /> +<file name="23sharedstyles.php" server="62.244.88.21/deciday/" local="131919461751791994" remote="131826018000000000" Dst="1" /> +<file name="02types-xls.xls" server="62.244.88.21/deciday/" local="131919461735471411" remote="131826018000000000" Dst="1" /> +<file name="32chartreadwrite.php" server="62.244.88.21/deciday/" local="131919461758774710" remote="131826018000000000" Dst="1" /> +<file name="26utf8.php" server="62.244.88.21/deciday/" local="131919461755003982" remote="131826018000000000" Dst="1" /> +<file name="19namedrange.php" server="62.244.88.21/deciday/" local="131919461749741748" remote="131826018000000000" Dst="1" /> +<file name="33chartcreate-bar-stacked.php" server="62.244.88.21/deciday/" local="131919461763298617" remote="131826018000000000" Dst="1" /> +<file name="13calculation.php" server="62.244.88.21/deciday/" local="131919461745951098" remote="131826018000000000" Dst="1" /> +<file name="09pagebreaks.php" server="62.244.88.21/deciday/" local="131919461742478594" remote="131826018000000000" Dst="1" /> +<file name="10autofilter.php" server="62.244.88.21/deciday/" local="131919461743188172" remote="131826018000000000" Dst="1" /> +<file name="Quadratic.php" server="62.244.88.21/deciday/" local="131919461778562959" remote="131826018000000000" Dst="1" /> +<file name="05featuredemo.php" server="62.244.88.21/deciday/" local="131919461737384799" remote="131826018000000000" Dst="1" /> +<file name="33chartcreate-area.php" server="62.244.88.21/deciday/" local="131919461759686327" remote="131826018000000000" Dst="1" /> +<file name="33chartcreate-line.php" server="62.244.88.21/deciday/" local="131919461765195335" remote="131826018000000000" Dst="1" /> +<file name="24readfilter.php" server="62.244.88.21/deciday/" local="131919461752300277" remote="131826018000000000" Dst="1" /> +<file name="07reader.xlsx" server="62.244.88.21/deciday/" local="131919461741433975" remote="131826018000000000" Dst="1" /> +<file name="GnumericReader.php" server="62.244.88.21/deciday/" local="131919461768626902" remote="131826018000000000" Dst="1" /> +<file name="27imagesexcel5.php" server="62.244.88.21/deciday/" local="131919461753794807" remote="131826018000000000" Dst="1" /> +<file name="02types-xls.php" server="62.244.88.21/deciday/" local="131919461734878760" remote="131826018000000000" Dst="1" /> +<file name="34chartupdate.php" server="62.244.88.21/deciday/" local="131919461766740758" remote="131826018000000000" Dst="1" /> +<file name="25inmemoryimage.php" server="62.244.88.21/deciday/" local="131919461752806367" remote="131826018000000000" Dst="1" /> +<file name="01simple.xlsx" server="62.244.88.21/deciday/" local="131919461733715995" remote="131826018000000000" Dst="1" /> +<file name="18extendedcalculation.php" server="62.244.88.21/deciday/" local="131919461749228147" remote="131826018000000000" Dst="1" /> +<file name="04printing.php" server="62.244.88.21/deciday/" local="131919461736341677" remote="131826018000000000" Dst="1" /> +<file name="Excel2003XMLReader.php" server="62.244.88.21/deciday/" local="131919461767750054" remote="131826018000000000" Dst="1" /> +<file name="31docproperties_write-xls.php" server="62.244.88.21/deciday/" local="131919461758591861" remote="131826018000000000" Dst="1" /> +<file name="01pharSimple.php" server="62.244.88.21/deciday_18/" local="131414752352915217" remote="131825946000000000" Dst="2" /> +<file name="01simple-download-pdf.php" server="62.244.88.21/deciday_18/" local="131414752339243261" remote="131825946000000000" Dst="2" /> +<file name="01simple-download-xls.php" server="62.244.88.21/deciday_18/" local="131414752344611082" remote="131825946000000000" Dst="2" /> +<file name="01simple-download-xlsx.php" server="62.244.88.21/deciday_18/" local="131414752338252495" remote="131825946000000000" Dst="2" /> +<file name="01simple.php" server="62.244.88.21/deciday_18/" local="131414752337724251" remote="131825946000000000" Dst="2" /> +<file name="01simple.xls" server="62.244.88.21/deciday_18/" local="131414752358743179" remote="131825946000000000" Dst="2" /> +<file name="01simple.xlsx" server="62.244.88.21/deciday_18/" local="131414752356920937" remote="131825946000000000" Dst="2" /> +<file name="02types-xls.php" server="62.244.88.21/deciday_18/" local="131414752335335305" remote="131825946000000000" Dst="2" /> +<file name="02types-xls.xls" server="62.244.88.21/deciday_18/" local="131414752359378907" remote="131825946000000000" Dst="2" /> +<file name="02types.php" server="62.244.88.21/deciday_18/" local="131414752339039279" remote="131825946000000000" Dst="2" /> +<file name="03formulas.php" server="62.244.88.21/deciday_18/" local="131414752351478000" remote="131825946000000000" Dst="2" /> +<file name="02types.xlsx" server="62.244.88.21/deciday_18/" local="131414752359160445" remote="131825946000000000" Dst="2" /> +<file name="04printing.php" server="62.244.88.21/deciday_18/" local="131414752347422930" remote="131825946000000000" Dst="2" /> +<file name="05featuredemo.php" server="62.244.88.21/deciday_18/" local="131414752348510502" remote="131825946000000000" Dst="2" /> +<file name="05featuredemo.xls" server="62.244.88.21/deciday_18/" local="131414752357150951" remote="131825946000000000" Dst="2" /> +<file name="05featuredemo.inc.php" server="62.244.88.21/deciday_18/" local="131414752337145614" remote="131825946000000000" Dst="2" /> +<file name="05featuredemo.xlsx" server="62.244.88.21/deciday_18/" local="131414752358533404" remote="131825946000000000" Dst="2" /> +<file name="06largescale-xls.php" server="62.244.88.21/deciday_18/" local="131414752336434995" remote="131825946000000000" Dst="2" /> +<file name="07reader.php" server="62.244.88.21/deciday_18/" local="131414752353914066" remote="131825946000000000" Dst="2" /> +<file name="06largescale.php" server="62.244.88.21/deciday_18/" local="131414752339710248" remote="131825946000000000" Dst="2" /> +<file name="08conditionalformatting.php" server="62.244.88.21/deciday_18/" local="131414752353133481" remote="131825946000000000" Dst="2" /> +<file name="07reader.xlsx" server="62.244.88.21/deciday_18/" local="131414752356541786" remote="131825946000000000" Dst="2" /> +<file name="09pagebreaks.php" server="62.244.88.21/deciday_18/" local="131414752336911795" remote="131825946000000000" Dst="2" /> +<file name="10autofilter-selection-1.php" server="62.244.88.21/deciday_18/" local="131414752347636557" remote="131825946000000000" Dst="2" /> +<file name="10autofilter-selection-2.php" server="62.244.88.21/deciday_18/" local="131414752348122803" remote="131825946000000000" Dst="2" /> +<file name="10autofilter.php" server="62.244.88.21/deciday_18/" local="131414752349724470" remote="131825946000000000" Dst="2" /> +<file name="06largescale-xls.xls" server="62.244.88.21/deciday_18/" local="131414752361184336" remote="131825946000000000" Dst="2" /> +<file name="11documentsecurity-xls.php" server="62.244.88.21/deciday_18/" local="131414752349325368" remote="131825946000000000" Dst="2" /> +<file name="11documentsecurity.php" server="62.244.88.21/deciday_18/" local="131414752353535849" remote="131825946000000000" Dst="2" /> +<file name="13calculation.php" server="62.244.88.21/deciday_18/" local="131414752352721119" remote="131825946000000000" Dst="2" /> +<file name="14excel5.php" server="62.244.88.21/deciday_18/" local="131414752341304838" remote="131825946000000000" Dst="2" /> +<file name="15datavalidation.php" server="62.244.88.21/deciday_18/" local="131414752347064937" remote="131825946000000000" Dst="2" /> +<file name="15datavalidation-xls.php" server="62.244.88.21/deciday_18/" local="131414752341694280" remote="131825946000000000" Dst="2" /> +<file name="16csv.php" server="62.244.88.21/deciday_18/" local="131414752338656137" remote="131825946000000000" Dst="2" /> +<file name="18extendedcalculation.php" server="62.244.88.21/deciday_18/" local="131414752346862223" remote="131825946000000000" Dst="2" /> +<file name="17html.php" server="62.244.88.21/deciday_18/" local="131414752345853374" remote="131825946000000000" Dst="2" /> +<file name="19namedrange.php" server="62.244.88.21/deciday_18/" local="131414752349117506" remote="131825946000000000" Dst="2" /> +<file name="21pdf.php" server="62.244.88.21/deciday_18/" local="131414752336717920" remote="131825946000000000" Dst="2" /> +<file name="20readexcel5.php" server="62.244.88.21/deciday_18/" local="131414752350157446" remote="131825946000000000" Dst="2" /> +<file name="22heavilyformatted.php" server="62.244.88.21/deciday_18/" local="131414752335767251" remote="131825946000000000" Dst="2" /> +<file name="23sharedstyles.php" server="62.244.88.21/deciday_18/" local="131414752340522168" remote="131825946000000000" Dst="2" /> +<file name="24readfilter.php" server="62.244.88.21/deciday_18/" local="131414752351256816" remote="131825946000000000" Dst="2" /> +<file name="26utf8.php" server="62.244.88.21/deciday_18/" local="131414752342223057" remote="131825946000000000" Dst="2" /> +<file name="25inmemoryimage.php" server="62.244.88.21/deciday_18/" local="131414752339917716" remote="131825946000000000" Dst="2" /> +<file name="27imagesexcel5.php" server="62.244.88.21/deciday_18/" local="131414752340922381" remote="131825946000000000" Dst="2" /> +<file name="28iterator.php" server="62.244.88.21/deciday_18/" local="131414752344817322" remote="131825946000000000" Dst="2" /> +<file name="29advancedvaluebinder.php" server="62.244.88.21/deciday_18/" local="131414752352511300" remote="131825946000000000" Dst="2" /> +<file name="30template.php" server="62.244.88.21/deciday_18/" local="131414752346663303" remote="131825946000000000" Dst="2" /> +<file name="31docproperties_write-xls.php" server="62.244.88.21/deciday_18/" local="131414752361415175" remote="131825946000000000" Dst="2" /> +<file name="31docproperties_write.php" server="62.244.88.21/deciday_18/" local="131414752352132031" remote="131825946000000000" Dst="2" /> +<file name="32chartreadwrite.php" server="62.244.88.21/deciday_18/" local="131414752349525534" remote="131825946000000000" Dst="2" /> +<file name="33chartcreate-bar-stacked.php" server="62.244.88.21/deciday_18/" local="131414752340128465" remote="131825946000000000" Dst="2" /> +<file name="33chartcreate-area.php" server="62.244.88.21/deciday_18/" local="131414752344401702" remote="131825946000000000" Dst="2" /> +<file name="33chartcreate-bar.php" server="62.244.88.21/deciday_18/" local="131414752351912171" remote="131825946000000000" Dst="2" /> +<file name="33chartcreate-column-2.php" server="62.244.88.21/deciday_18/" local="131414752350375847" remote="131825946000000000" Dst="2" /> +<file name="33chartcreate-column.php" server="62.244.88.21/deciday_18/" local="131414752351057282" remote="131825946000000000" Dst="2" /> +<file name="33chartcreate-line.php" server="62.244.88.21/deciday_18/" local="131414752346261662" remote="131825946000000000" Dst="2" /> +<file name="33chartcreate-multiple-charts.php" server="62.244.88.21/deciday_18/" local="131414752345238579" remote="131825946000000000" Dst="2" /> +<file name="33chartcreate-pie.php" server="62.244.88.21/deciday_18/" local="131414752353339440" remote="131825946000000000" Dst="2" /> +<file name="34chartupdate.php" server="62.244.88.21/deciday_18/" local="131414752348905268" remote="131825946000000000" Dst="2" /> +<file name="Excel2003XMLReader.php" server="62.244.88.21/deciday_18/" local="131414752348705474" remote="131825946000000000" Dst="2" /> +<file name="35chartrender.php" server="62.244.88.21/deciday_18/" local="131414752353728552" remote="131825946000000000" Dst="2" /> +<file name="GnumericReader.php" server="62.244.88.21/deciday_18/" local="131414752348313586" remote="131825946000000000" Dst="2" /> +<file name="GnumericTest.gnumeric" server="62.244.88.21/deciday_18/" local="131414752337913931" remote="131825946000000000" Dst="2" /> +<file name="OOCalcReader.php" server="62.244.88.21/deciday_18/" local="131414752346459058" remote="131825946000000000" Dst="2" /> +<file name="Excel2003XMLTest.xml" server="62.244.88.21/deciday_18/" local="131414752344201945" remote="131825946000000000" Dst="2" /> +<file name="OOCalcTest.ods" server="62.244.88.21/deciday_18/" local="131414752342622330" remote="131825946000000000" Dst="2" /> +<file name="Quadratic.php" server="62.244.88.21/deciday_18/" local="131414752346057172" remote="131825946000000000" Dst="2" /> +<file name="Quadratic.xlsx" server="62.244.88.21/deciday_18/" local="131414752337532909" remote="131825946000000000" Dst="2" /> +<file name="Quadratic2.php" server="62.244.88.21/deciday_18/" local="131414752345017275" remote="131825946000000000" Dst="2" /> +<file name="runall.php" server="62.244.88.21/deciday_18/" local="131414752341498498" remote="131825946000000000" Dst="2" /> +<file name="SylkTest.slk" server="62.244.88.21/deciday_18/" local="131414752341110627" remote="131825946000000000" Dst="2" /> +<file name="SylkReader.php" server="62.244.88.21/deciday_18/" local="131414752340325947" remote="131825946000000000" Dst="2" /> +<file name="XMLTest.xml" server="62.244.88.21/deciday_18/" local="131414752345653460" remote="131825946000000000" Dst="2" /> +<file name="XMLReader.php" server="62.244.88.21/deciday_18/" local="131414752338449689" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Tests/images/Thumbs.db b/site/config/PHPExcel/Tests/images/Thumbs.db new file mode 100644 index 0000000..36db791 Binary files /dev/null and b/site/config/PHPExcel/Tests/images/Thumbs.db differ diff --git a/site/config/PHPExcel/Tests/images/_notes/dwsync.xml b/site/config/PHPExcel/Tests/images/_notes/dwsync.xml new file mode 100644 index 0000000..4766c58 --- /dev/null +++ b/site/config/PHPExcel/Tests/images/_notes/dwsync.xml @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="officelogo.jpg" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="paid.png" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="phpexcel_logo.gif" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="termsconditions.jpg" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="officelogo.jpg" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="phpexcel_logo.gif" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="paid.png" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="termsconditions.jpg" server="web2.pointvirgule.net/valtra/monope/" local="129973851569999999" remote="129984144000000000" Dst="-1" /> +<file name="officelogo.jpg" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099800000000" Dst="-1" /> +<file name="phpexcel_logo.gif" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099800000000" Dst="-1" /> +<file name="paid.png" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099800000000" Dst="-1" /> +<file name="termsconditions.jpg" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851569999999" remote="129997099800000000" Dst="-1" /> +<file name="officelogo.jpg" server="62.244.88.111/actions-fendt/lisa/" local="131244560101635736" remote="131260197000000000" Dst="1" /> +<file name="phpexcel_logo.gif" server="62.244.88.111/actions-fendt/lisa/" local="131244560102110496" remote="131260197000000000" Dst="1" /> +<file name="paid.png" server="62.244.88.111/actions-fendt/lisa/" local="131244560102565104" remote="131260197000000000" Dst="1" /> +<file name="termsconditions.jpg" server="62.244.88.111/actions-fendt/lisa/" local="131244560103037062" remote="131260197000000000" Dst="1" /> +<file name="Thumbs.db" server="62.244.88.111/actions-fendt/lisa/" local="131244560103529430" remote="131260197000000000" Dst="1" /> +<file name="officelogo.jpg" server="62.244.88.21/amashow/" local="131414752362215898" remote="131414680800000000" Dst="2" /> +<file name="phpexcel_logo.gif" server="62.244.88.21/amashow/" local="131414752362417480" remote="131414680800000000" Dst="2" /> +<file name="paid.png" server="62.244.88.21/amashow/" local="131414752362620816" remote="131414680800000000" Dst="2" /> +<file name="termsconditions.jpg" server="62.244.88.21/amashow/" local="131414752362805121" remote="131414680800000000" Dst="2" /> +<file name="Thumbs.db" server="62.244.88.21/amashow/" local="131414752363020100" remote="131414680800000000" Dst="2" /> +<file name="paid.png" server="62.244.88.21/deciday/" local="131919461772031198" remote="131826018000000000" Dst="1" /> +<file name="officelogo.jpg" server="62.244.88.21/deciday/" local="131919461771160158" remote="131826018000000000" Dst="1" /> +<file name="Thumbs.db" server="62.244.88.21/deciday/" local="131919461775046746" remote="131826018000000000" Dst="1" /> +<file name="phpexcel_logo.gif" server="62.244.88.21/deciday/" local="131919461773088321" remote="131826018000000000" Dst="1" /> +<file name="termsconditions.jpg" server="62.244.88.21/deciday/" local="131919461773962540" remote="131826018000000000" Dst="1" /> +<file name="paid.png" server="62.244.88.21/deciday_18/" local="131414752362620816" remote="131825946000000000" Dst="2" /> +<file name="officelogo.jpg" server="62.244.88.21/deciday_18/" local="131414752362215898" remote="131825946000000000" Dst="2" /> +<file name="phpexcel_logo.gif" server="62.244.88.21/deciday_18/" local="131414752362417480" remote="131825946000000000" Dst="2" /> +<file name="termsconditions.jpg" server="62.244.88.21/deciday_18/" local="131414752362805121" remote="131825946000000000" Dst="2" /> +<file name="Thumbs.db" server="62.244.88.21/deciday_18/" local="131414752363020100" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/Tests/images/officelogo.jpg b/site/config/PHPExcel/Tests/images/officelogo.jpg new file mode 100644 index 0000000..7e0133d Binary files /dev/null and b/site/config/PHPExcel/Tests/images/officelogo.jpg differ diff --git a/site/config/PHPExcel/Tests/images/paid.png b/site/config/PHPExcel/Tests/images/paid.png new file mode 100644 index 0000000..a4355bd Binary files /dev/null and b/site/config/PHPExcel/Tests/images/paid.png differ diff --git a/site/config/PHPExcel/Tests/images/phpexcel_logo.gif b/site/config/PHPExcel/Tests/images/phpexcel_logo.gif new file mode 100644 index 0000000..6e1b5ee Binary files /dev/null and b/site/config/PHPExcel/Tests/images/phpexcel_logo.gif differ diff --git a/site/config/PHPExcel/Tests/images/termsconditions.jpg b/site/config/PHPExcel/Tests/images/termsconditions.jpg new file mode 100644 index 0000000..1f21302 Binary files /dev/null and b/site/config/PHPExcel/Tests/images/termsconditions.jpg differ diff --git a/site/config/PHPExcel/Tests/runall.php b/site/config/PHPExcel/Tests/runall.php new file mode 100644 index 0000000..a443bf9 --- /dev/null +++ b/site/config/PHPExcel/Tests/runall.php @@ -0,0 +1,106 @@ +<?php +/** + * PHPExcel + * + * Copyright (C) 2006 - 2012 PHPExcel + * + * 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 library 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 GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * @category PHPExcel + * @package PHPExcel + * @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) + * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL + * @version 1.7.8, 2012-10-12 + */ + +/** Error reporting */ +error_reporting(E_ALL); + +if (PHP_SAPI != 'cli') { + die ('This script executes all tests, and should only be run from the command line'); +} + +// List of tests +$aTests = array( + '01simple.php' + , '02types.php' + , '02types-xls.php' + , '03formulas.php' + , '04printing.php' + , '05featuredemo.php' + , '06largescale.php' + , '06largescale-xls.php' + , '07reader.php' + , '08conditionalformatting.php' + , '09pagebreaks.php' + , '10autofilter.php' + , '10autofilter-selection-1.php' + , '10autofilter-selection-2.php' + , '11documentsecurity.php' + , '11documentsecurity-xls.php' + , '13calculation.php' + , '14excel5.php' + , '15datavalidation.php' + , '15datavalidation-xls.php' + , '16csv.php' + , '17html.php' + , '18extendedcalculation.php' + , '19namedrange.php' + , '20readexcel5.php' + , '21pdf.php' + , '22heavilyformatted.php' + , '23sharedstyles.php' + , '24readfilter.php' + , '25inmemoryimage.php' + , '26utf8.php' + , '27imagesexcel5.php' + , '28iterator.php' + , '29advancedvaluebinder.php' + , '30template.php' + , '31docproperties_write.php' + , '31docproperties_write-xls.php' + , '32chartreadwrite.php' + , '33chartcreate-area.php' + , '33chartcreate-bar.php' + , '33chartcreate-bar-stacked.php' + , '33chartcreate-column.php' + , '33chartcreate-column-2.php' + , '33chartcreate-line.php' + , '34chartupdate.php' + , 'OOCalcReader.php' + , 'SylkReader.php' + , 'Excel2003XMLReader.php' + , 'XMLReader.php' + , 'GnumericReader.php' +); + +// First, clear all results +foreach ($aTests as $sTest) { + @unlink( str_replace('.php', '.xls', $sTest) ); + @unlink( str_replace('.php', '.xlsx', $sTest) ); + @unlink( str_replace('.php', '.csv', $sTest) ); + @unlink( str_replace('.php', '.htm', $sTest) ); + @unlink( str_replace('.php', '.pdf', $sTest) ); +} + +// Run all tests +foreach ($aTests as $sTest) { + echo '============== TEST ==============' . "\r\n"; + echo 'Test name: ' . $sTest . "\r\n"; + echo "\r\n"; + echo shell_exec('php ' . $sTest); + echo "\r\n"; + echo "\r\n"; +} diff --git a/site/config/PHPExcel/Tests/templates/26template.xlsx b/site/config/PHPExcel/Tests/templates/26template.xlsx new file mode 100644 index 0000000..a466c5d Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/26template.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/27template.xls b/site/config/PHPExcel/Tests/templates/27template.xls new file mode 100644 index 0000000..39bc8ba Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/27template.xls differ diff --git a/site/config/PHPExcel/Tests/templates/30template.xls b/site/config/PHPExcel/Tests/templates/30template.xls new file mode 100644 index 0000000..af8de03 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/30template.xls differ diff --git a/site/config/PHPExcel/Tests/templates/31docproperties.xls b/site/config/PHPExcel/Tests/templates/31docproperties.xls new file mode 100644 index 0000000..522a6f7 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/31docproperties.xls differ diff --git a/site/config/PHPExcel/Tests/templates/31docproperties.xlsx b/site/config/PHPExcel/Tests/templates/31docproperties.xlsx new file mode 100644 index 0000000..5d2b8ad Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/31docproperties.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32chartreadwrite.xlsx b/site/config/PHPExcel/Tests/templates/32chartreadwrite.xlsx new file mode 100644 index 0000000..70a9571 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32chartreadwrite.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32complexChartreadwrite.xlsx b/site/config/PHPExcel/Tests/templates/32complexChartreadwrite.xlsx new file mode 100644 index 0000000..f9df941 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32complexChartreadwrite.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteAreaChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteAreaChart1.xlsx new file mode 100644 index 0000000..d44ae53 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteAreaChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteAreaChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteAreaChart2.xlsx new file mode 100644 index 0000000..18c7be3 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteAreaChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteAreaChart3.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteAreaChart3.xlsx new file mode 100644 index 0000000..4572326 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteAreaChart3.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteAreaChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteAreaChart3D1.xlsx new file mode 100644 index 0000000..4f9b8dd Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteAreaChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteAreaPercentageChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteAreaPercentageChart1.xlsx new file mode 100644 index 0000000..45d37b6 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteAreaPercentageChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteAreaPercentageChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteAreaPercentageChart2.xlsx new file mode 100644 index 0000000..653a28c Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteAreaPercentageChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteAreaPercentageChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteAreaPercentageChart3D1.xlsx new file mode 100644 index 0000000..7306d0d Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteAreaPercentageChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteAreaStackedChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteAreaStackedChart1.xlsx new file mode 100644 index 0000000..157fd05 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteAreaStackedChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteAreaStackedChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteAreaStackedChart2.xlsx new file mode 100644 index 0000000..e52b091 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteAreaStackedChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteAreaStackedChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteAreaStackedChart3D1.xlsx new file mode 100644 index 0000000..911634f Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteAreaStackedChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBarChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBarChart1.xlsx new file mode 100644 index 0000000..b0d6ea1 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBarChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBarChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBarChart2.xlsx new file mode 100644 index 0000000..7eac33e Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBarChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBarChart3.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBarChart3.xlsx new file mode 100644 index 0000000..d1fb401 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBarChart3.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBarChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBarChart3D1.xlsx new file mode 100644 index 0000000..0e9cdf0 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBarChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBarPercentageChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBarPercentageChart1.xlsx new file mode 100644 index 0000000..7640b5b Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBarPercentageChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBarPercentageChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBarPercentageChart2.xlsx new file mode 100644 index 0000000..00b900c Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBarPercentageChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBarPercentageChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBarPercentageChart3D1.xlsx new file mode 100644 index 0000000..73e8d8c Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBarPercentageChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBarStackedChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBarStackedChart1.xlsx new file mode 100644 index 0000000..50d6594 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBarStackedChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBarStackedChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBarStackedChart2.xlsx new file mode 100644 index 0000000..b82780c Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBarStackedChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBarStackedChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBarStackedChart3D1.xlsx new file mode 100644 index 0000000..805ca55 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBarStackedChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBubbleChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBubbleChart1.xlsx new file mode 100644 index 0000000..3b3338e Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBubbleChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteBubbleChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteBubbleChart3D1.xlsx new file mode 100644 index 0000000..aec55e9 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteBubbleChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteChartWithImages1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteChartWithImages1.xlsx new file mode 100644 index 0000000..9b7a017 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteChartWithImages1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteColumnChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteColumnChart1.xlsx new file mode 100644 index 0000000..e83f00e Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteColumnChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteColumnChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteColumnChart2.xlsx new file mode 100644 index 0000000..5e2d07e Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteColumnChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteColumnChart3.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteColumnChart3.xlsx new file mode 100644 index 0000000..d34029d Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteColumnChart3.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteColumnChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteColumnChart3D1.xlsx new file mode 100644 index 0000000..107c7d1 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteColumnChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteColumnChart4.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteColumnChart4.xlsx new file mode 100644 index 0000000..af220cc Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteColumnChart4.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteColumnPercentageChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteColumnPercentageChart1.xlsx new file mode 100644 index 0000000..8032d09 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteColumnPercentageChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteColumnPercentageChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteColumnPercentageChart2.xlsx new file mode 100644 index 0000000..28a1758 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteColumnPercentageChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteColumnPercentageChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteColumnPercentageChart3D1.xlsx new file mode 100644 index 0000000..2cae583 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteColumnPercentageChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteColumnStackedChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteColumnStackedChart1.xlsx new file mode 100644 index 0000000..38ea2c7 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteColumnStackedChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteColumnStackedChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteColumnStackedChart2.xlsx new file mode 100644 index 0000000..3962823 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteColumnStackedChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteColumnStackedChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteColumnStackedChart3D1.xlsx new file mode 100644 index 0000000..8ad8ab5 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteColumnStackedChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteDonutChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteDonutChart1.xlsx new file mode 100644 index 0000000..56f5752 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteDonutChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteDonutChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteDonutChart2.xlsx new file mode 100644 index 0000000..613839b Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteDonutChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteDonutChart3.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteDonutChart3.xlsx new file mode 100644 index 0000000..e2798d9 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteDonutChart3.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteDonutChart4.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteDonutChart4.xlsx new file mode 100644 index 0000000..9854429 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteDonutChart4.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteDonutChartExploded1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteDonutChartExploded1.xlsx new file mode 100644 index 0000000..f22f708 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteDonutChartExploded1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteDonutChartMultiseries1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteDonutChartMultiseries1.xlsx new file mode 100644 index 0000000..ab77e7e Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteDonutChartMultiseries1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteLineChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteLineChart1.xlsx new file mode 100644 index 0000000..ca2bccc Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteLineChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteLineChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteLineChart2.xlsx new file mode 100644 index 0000000..93a0209 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteLineChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteLineChart3.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteLineChart3.xlsx new file mode 100644 index 0000000..095199f Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteLineChart3.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteLineChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteLineChart3D1.xlsx new file mode 100644 index 0000000..0440e85 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteLineChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteLineChartNoPointMarkers1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteLineChartNoPointMarkers1.xlsx new file mode 100644 index 0000000..e1e11e3 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteLineChartNoPointMarkers1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteLinePercentageChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteLinePercentageChart1.xlsx new file mode 100644 index 0000000..e336da7 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteLinePercentageChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteLinePercentageChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteLinePercentageChart2.xlsx new file mode 100644 index 0000000..cacddd1 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteLinePercentageChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteLineStackedChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteLineStackedChart1.xlsx new file mode 100644 index 0000000..fe13e47 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteLineStackedChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteLineStackedChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteLineStackedChart2.xlsx new file mode 100644 index 0000000..5389774 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteLineStackedChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwritePieChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwritePieChart1.xlsx new file mode 100644 index 0000000..2101d63 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwritePieChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwritePieChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwritePieChart2.xlsx new file mode 100644 index 0000000..acd09e7 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwritePieChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwritePieChart3.xlsx b/site/config/PHPExcel/Tests/templates/32readwritePieChart3.xlsx new file mode 100644 index 0000000..4d617ff Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwritePieChart3.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwritePieChart3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwritePieChart3D1.xlsx new file mode 100644 index 0000000..25bcedf Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwritePieChart3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwritePieChart4.xlsx b/site/config/PHPExcel/Tests/templates/32readwritePieChart4.xlsx new file mode 100644 index 0000000..03e4931 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwritePieChart4.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwritePieChartExploded1.xlsx b/site/config/PHPExcel/Tests/templates/32readwritePieChartExploded1.xlsx new file mode 100644 index 0000000..d50c1db Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwritePieChartExploded1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwritePieChartExploded3D1.xlsx b/site/config/PHPExcel/Tests/templates/32readwritePieChartExploded3D1.xlsx new file mode 100644 index 0000000..ef8b1e5 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwritePieChartExploded3D1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteRadarChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteRadarChart1.xlsx new file mode 100644 index 0000000..a327a5d Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteRadarChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteRadarChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteRadarChart2.xlsx new file mode 100644 index 0000000..c6f7d2b Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteRadarChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteRadarChart3.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteRadarChart3.xlsx new file mode 100644 index 0000000..559ec59 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteRadarChart3.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteScatterChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteScatterChart1.xlsx new file mode 100644 index 0000000..92c4c8d Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteScatterChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteScatterChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteScatterChart2.xlsx new file mode 100644 index 0000000..836dcd5 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteScatterChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteScatterChart3.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteScatterChart3.xlsx new file mode 100644 index 0000000..cfd3a3f Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteScatterChart3.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteScatterChart4.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteScatterChart4.xlsx new file mode 100644 index 0000000..2460aff Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteScatterChart4.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteScatterChart5.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteScatterChart5.xlsx new file mode 100644 index 0000000..a4f13f1 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteScatterChart5.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteStockChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteStockChart1.xlsx new file mode 100644 index 0000000..55668e9 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteStockChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteStockChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteStockChart2.xlsx new file mode 100644 index 0000000..1e6d1ff Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteStockChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteStockChart3.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteStockChart3.xlsx new file mode 100644 index 0000000..8cd1048 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteStockChart3.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteStockChart4.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteStockChart4.xlsx new file mode 100644 index 0000000..82289bc Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteStockChart4.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart1.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart1.xlsx new file mode 100644 index 0000000..d46b9c7 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart1.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart2.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart2.xlsx new file mode 100644 index 0000000..510cb32 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart2.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart3.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart3.xlsx new file mode 100644 index 0000000..386c228 Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart3.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart4.xlsx b/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart4.xlsx new file mode 100644 index 0000000..8f1a9db Binary files /dev/null and b/site/config/PHPExcel/Tests/templates/32readwriteSurfaceChart4.xlsx differ diff --git a/site/config/PHPExcel/Tests/templates/_notes/dwsync.xml b/site/config/PHPExcel/Tests/templates/_notes/dwsync.xml new file mode 100644 index 0000000..c199075 --- /dev/null +++ b/site/config/PHPExcel/Tests/templates/_notes/dwsync.xml @@ -0,0 +1,556 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="26template.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="27template.xls" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="30template.xls" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="31docproperties.xls" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="31docproperties.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32chartreadwrite.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32complexChartreadwrite.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteAreaChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteAreaChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteAreaChart3.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteAreaChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteAreaPercentageChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteAreaPercentageChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteAreaPercentageChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteAreaStackedChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteAreaStackedChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteAreaStackedChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBarChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBarChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBarChart3.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBarChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBarPercentageChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBarPercentageChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBarPercentageChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBarStackedChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBarStackedChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBarStackedChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBubbleChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteBubbleChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteChartWithImages1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteColumnChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteColumnChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteColumnChart3.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteColumnChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteColumnChart4.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteColumnPercentageChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteColumnPercentageChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteColumnPercentageChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteColumnStackedChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteColumnStackedChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteColumnStackedChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteDonutChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteDonutChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteDonutChart3.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteDonutChart4.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteDonutChartExploded1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteDonutChartMultiseries1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteLineChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteLineChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteLineChart3.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteLineChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteLineChartNoPointMarkers1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteLinePercentageChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteLinePercentageChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteLineStackedChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteLineStackedChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwritePieChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwritePieChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwritePieChart3.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwritePieChart3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwritePieChart4.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwritePieChartExploded1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwritePieChartExploded3D1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteRadarChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteRadarChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteRadarChart3.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteScatterChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteScatterChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteScatterChart3.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteScatterChart4.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteScatterChart5.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteStockChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteStockChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteStockChart3.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteStockChart4.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteSurfaceChart1.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteSurfaceChart2.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteSurfaceChart3.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteSurfaceChart4.xlsx" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972062400000000" Dst="-1" /> +<file name="32readwriteScatterChart3.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteAreaChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwritePieChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteDonutChartExploded1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="31docproperties.xls" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteBubbleChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteColumnStackedChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteStockChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteLineStackedChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32complexChartreadwrite.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteRadarChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteBarPercentageChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteDonutChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteSurfaceChart3.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteColumnPercentageChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteAreaPercentageChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteColumnChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteBarChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteScatterChart4.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteAreaChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="27template.xls" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwritePieChart3.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteColumnPercentageChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteStockChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851579999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteColumnChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteLinePercentageChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteLineChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteLineStackedChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteRadarChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteSurfaceChart4.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteDonutChart3.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteColumnPercentageChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteColumnStackedChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteColumnChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144000000000" Dst="-1" /> +<file name="32readwriteBarPercentageChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteBarStackedChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteScatterChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteBarChart3.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteAreaPercentageChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="30template.xls" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="31docproperties.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteAreaStackedChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteScatterChart5.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteAreaChart3.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteLineChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwritePieChart4.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteStockChart3.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteLinePercentageChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteSurfaceChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteLineChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851589999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwritePieChartExploded3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteBarStackedChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteBarChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteRadarChart3.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteDonutChart4.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteColumnStackedChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32chartreadwrite.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteAreaStackedChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteColumnChart3.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteAreaChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteChartWithImages1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteBarPercentageChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteBarStackedChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteScatterChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteAreaPercentageChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteAreaStackedChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwritePieChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteDonutChartMultiseries1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteLineChartNoPointMarkers1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteStockChart4.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteSurfaceChart2.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteDonutChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteLineChart3.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteBubbleChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteColumnChart4.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwritePieChartExploded1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteBarChart1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="26template.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwritePieChart3D1.xlsx" server="web2.pointvirgule.net/valtra/monope/" local="129973851599999999" remote="129984144600000000" Dst="-1" /> +<file name="32readwriteScatterChart3.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteAreaChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwritePieChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteDonutChartExploded1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="31docproperties.xls" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBubbleChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteColumnStackedChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteStockChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteLineStackedChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32complexChartreadwrite.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteRadarChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBarPercentageChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteDonutChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteSurfaceChart3.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteColumnPercentageChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteAreaPercentageChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteColumnChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBarChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteScatterChart4.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteAreaChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="27template.xls" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwritePieChart3.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteColumnPercentageChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteStockChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851579999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteColumnChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteLinePercentageChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteLineChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteLineStackedChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteRadarChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteSurfaceChart4.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteDonutChart3.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteColumnPercentageChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteColumnStackedChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteColumnChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBarPercentageChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBarStackedChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteScatterChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBarChart3.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteAreaPercentageChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="30template.xls" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="31docproperties.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteAreaStackedChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteScatterChart5.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteAreaChart3.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteLineChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwritePieChart4.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteStockChart3.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteLinePercentageChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteSurfaceChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteLineChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851589999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwritePieChartExploded3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBarStackedChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBarChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteRadarChart3.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteDonutChart4.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteColumnStackedChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32chartreadwrite.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteAreaStackedChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteColumnChart3.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteAreaChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteChartWithImages1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBarPercentageChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBarStackedChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteScatterChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteAreaPercentageChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteAreaStackedChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwritePieChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteDonutChartMultiseries1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteLineChartNoPointMarkers1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteStockChart4.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteSurfaceChart2.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteDonutChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteLineChart3.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBubbleChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteColumnChart4.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwritePieChartExploded1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteBarChart1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="26template.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwritePieChart3D1.xlsx" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851599999999" remote="129997099800000000" Dst="-1" /> +<file name="32readwriteScatterChart3.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560107164331" remote="131260197000000000" Dst="1" /> +<file name="32readwriteAreaChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560107802904" remote="131260197000000000" Dst="1" /> +<file name="32readwritePieChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560108455606" remote="131260197000000000" Dst="1" /> +<file name="32readwriteDonutChartExploded1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560109326978" remote="131260197000000000" Dst="1" /> +<file name="31docproperties.xls" server="62.244.88.111/actions-fendt/lisa/" local="131244560109794116" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBubbleChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560110537131" remote="131260197000000000" Dst="1" /> +<file name="32readwriteColumnStackedChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560111335815" remote="131260197000000000" Dst="1" /> +<file name="32readwriteLineStackedChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560112694406" remote="131260197000000000" Dst="1" /> +<file name="32readwriteStockChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560112075553" remote="131260197000000000" Dst="1" /> +<file name="32complexChartreadwrite.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560113338574" remote="131260197000000000" Dst="1" /> +<file name="32readwriteRadarChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560114106269" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBarPercentageChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560114751357" remote="131260197000000000" Dst="1" /> +<file name="32readwriteDonutChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560115526033" remote="131260197000000000" Dst="1" /> +<file name="32readwriteColumnPercentageChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560117181527" remote="131260197000000000" Dst="1" /> +<file name="32readwriteAreaPercentageChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560117840555" remote="131260197000000000" Dst="1" /> +<file name="32readwriteSurfaceChart3.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560116532917" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBarChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560119129783" remote="131260197000000000" Dst="1" /> +<file name="32readwriteColumnChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560118479270" remote="131260197000000000" Dst="1" /> +<file name="32readwriteScatterChart4.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560119956527" remote="131260197000000000" Dst="1" /> +<file name="32readwriteAreaChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560120609059" remote="131260197000000000" Dst="1" /> +<file name="32readwritePieChart3.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560122714541" remote="131260197000000000" Dst="1" /> +<file name="32readwriteColumnPercentageChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560123397850" remote="131260197000000000" Dst="1" /> +<file name="32readwriteStockChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560124128455" remote="131260197000000000" Dst="1" /> +<file name="32readwriteColumnChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560124774010" remote="131260197000000000" Dst="1" /> +<file name="32readwriteLinePercentageChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560125677712" remote="131260197000000000" Dst="1" /> +<file name="27template.xls" server="62.244.88.111/actions-fendt/lisa/" local="131244560122063147" remote="131260197000000000" Dst="1" /> +<file name="32readwriteLineChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560126580702" remote="131260197000000000" Dst="1" /> +<file name="32readwriteLineStackedChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560127229883" remote="131260197000000000" Dst="1" /> +<file name="32readwriteRadarChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560127975421" remote="131260197000000000" Dst="1" /> +<file name="32readwriteSurfaceChart4.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560128831581" remote="131260197000000000" Dst="1" /> +<file name="32readwriteDonutChart3.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560129636996" remote="131260197000000000" Dst="1" /> +<file name="32readwriteColumnPercentageChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560130275763" remote="131260197000000000" Dst="1" /> +<file name="32readwriteColumnStackedChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560130922260" remote="131260197000000000" Dst="1" /> +<file name="32readwriteColumnChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560131566623" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBarPercentageChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560132206932" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBarStackedChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560133019241" remote="131260197000000000" Dst="1" /> +<file name="32readwriteScatterChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560133829452" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBarChart3.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560134488788" remote="131260197000000000" Dst="1" /> +<file name="32readwriteAreaPercentageChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560135121914" remote="131260197000000000" Dst="1" /> +<file name="31docproperties.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560136268717" remote="131260197000000000" Dst="1" /> +<file name="30template.xls" server="62.244.88.111/actions-fendt/lisa/" local="131244560135665809" remote="131260197000000000" Dst="1" /> +<file name="32readwriteAreaStackedChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560137085538" remote="131260197000000000" Dst="1" /> +<file name="32readwriteScatterChart5.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560138054961" remote="131260197000000000" Dst="1" /> +<file name="32readwriteAreaChart3.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560138700232" remote="131260197000000000" Dst="1" /> +<file name="32readwriteLineChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560139347063" remote="131260197000000000" Dst="1" /> +<file name="32readwritePieChart4.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560140004337" remote="131260197000000000" Dst="1" /> +<file name="32readwriteStockChart3.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560140765360" remote="131260197000000000" Dst="1" /> +<file name="32readwriteLinePercentageChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560141416809" remote="131260197000000000" Dst="1" /> +<file name="32readwriteSurfaceChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560142321246" remote="131260197000000000" Dst="1" /> +<file name="32readwriteLineChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560143120204" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBarStackedChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560144664089" remote="131260197000000000" Dst="1" /> +<file name="32readwritePieChartExploded3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560143859739" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBarChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560145315502" remote="131260197000000000" Dst="1" /> +<file name="32readwriteRadarChart3.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560146051955" remote="131260197000000000" Dst="1" /> +<file name="32readwriteColumnStackedChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560147623607" remote="131260197000000000" Dst="1" /> +<file name="32readwriteDonutChart4.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560146963638" remote="131260197000000000" Dst="1" /> +<file name="32readwriteAreaStackedChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560148955334" remote="131260197000000000" Dst="1" /> +<file name="32chartreadwrite.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560148314573" remote="131260197000000000" Dst="1" /> +<file name="32readwriteColumnChart3.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560149754416" remote="131260197000000000" Dst="1" /> +<file name="32readwriteAreaChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560150406883" remote="131260197000000000" Dst="1" /> +<file name="32readwriteChartWithImages1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560151218946" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBarPercentageChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560152102509" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBarStackedChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560152755134" remote="131260197000000000" Dst="1" /> +<file name="32readwriteScatterChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560153484731" remote="131260197000000000" Dst="1" /> +<file name="32readwriteAreaPercentageChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560154276104" remote="131260197000000000" Dst="1" /> +<file name="32readwriteAreaStackedChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560154922764" remote="131260197000000000" Dst="1" /> +<file name="32readwritePieChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560155567599" remote="131260197000000000" Dst="1" /> +<file name="32readwriteDonutChartMultiseries1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560156447538" remote="131260197000000000" Dst="1" /> +<file name="32readwriteLineChartNoPointMarkers1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560157122175" remote="131260197000000000" Dst="1" /> +<file name="32readwriteStockChart4.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560158018361" remote="131260197000000000" Dst="1" /> +<file name="32readwriteSurfaceChart2.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560159041900" remote="131260197000000000" Dst="1" /> +<file name="32readwriteDonutChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560159696567" remote="131260197000000000" Dst="1" /> +<file name="32readwriteLineChart3.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560160346018" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBubbleChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560161071815" remote="131260197000000000" Dst="1" /> +<file name="32readwriteColumnChart4.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560162067134" remote="131260197000000000" Dst="1" /> +<file name="32readwritePieChartExploded1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560162785785" remote="131260197000000000" Dst="1" /> +<file name="32readwriteBarChart1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560163564266" remote="131260197000000000" Dst="1" /> +<file name="26template.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560164161627" remote="131260197000000000" Dst="1" /> +<file name="32readwritePieChart3D1.xlsx" server="62.244.88.111/actions-fendt/lisa/" local="131244560164824630" remote="131260197000000000" Dst="1" /> +<file name="32readwriteScatterChart3.xlsx" server="62.244.88.21/amashow/" local="131414752365640748" remote="131414680800000000" Dst="2" /> +<file name="32readwriteAreaChart1.xlsx" server="62.244.88.21/amashow/" local="131414752366248524" remote="131414680800000000" Dst="2" /> +<file name="32readwritePieChart2.xlsx" server="62.244.88.21/amashow/" local="131414752366765528" remote="131414680800000000" Dst="2" /> +<file name="32readwriteDonutChartExploded1.xlsx" server="62.244.88.21/amashow/" local="131414752367523313" remote="131414680800000000" Dst="2" /> +<file name="31docproperties.xls" server="62.244.88.21/amashow/" local="131414752367735872" remote="131414680800000000" Dst="2" /> +<file name="32readwriteBubbleChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752368286796" remote="131414680800000000" Dst="2" /> +<file name="32readwriteColumnStackedChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752368956045" remote="131414680800000000" Dst="2" /> +<file name="32readwriteStockChart1.xlsx" server="62.244.88.21/amashow/" local="131414752369492172" remote="131414680800000000" Dst="2" /> +<file name="32complexChartreadwrite.xlsx" server="62.244.88.21/amashow/" local="131414752370548249" remote="131414680800000000" Dst="2" /> +<file name="32readwriteLineStackedChart1.xlsx" server="62.244.88.21/amashow/" local="131414752369902410" remote="131414680800000000" Dst="2" /> +<file name="32readwriteRadarChart1.xlsx" server="62.244.88.21/amashow/" local="131414752371089950" remote="131414680800000000" Dst="2" /> +<file name="32readwriteBarPercentageChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752371531714" remote="131414680800000000" Dst="2" /> +<file name="32readwriteDonutChart2.xlsx" server="62.244.88.21/amashow/" local="131414752372157841" remote="131414680800000000" Dst="2" /> +<file name="32readwriteSurfaceChart3.xlsx" server="62.244.88.21/amashow/" local="131414752372927735" remote="131414680800000000" Dst="2" /> +<file name="32readwriteAreaPercentageChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752374148866" remote="131414680800000000" Dst="2" /> +<file name="32readwriteColumnChart1.xlsx" server="62.244.88.21/amashow/" local="131414752374570647" remote="131414680800000000" Dst="2" /> +<file name="32readwriteColumnPercentageChart1.xlsx" server="62.244.88.21/amashow/" local="131414752373729200" remote="131414680800000000" Dst="2" /> +<file name="32readwriteBarChart2.xlsx" server="62.244.88.21/amashow/" local="131414752374985301" remote="131414680800000000" Dst="2" /> +<file name="32readwriteAreaChart2.xlsx" server="62.244.88.21/amashow/" local="131414752376356953" remote="131414681400000000" Dst="2" /> +<file name="32readwriteScatterChart4.xlsx" server="62.244.88.21/amashow/" local="131414752375761861" remote="131414681400000000" Dst="2" /> +<file name="32readwritePieChart3.xlsx" server="62.244.88.21/amashow/" local="131414752377955865" remote="131414681400000000" Dst="2" /> +<file name="32readwriteColumnPercentageChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752378374731" remote="131414681400000000" Dst="2" /> +<file name="32readwriteStockChart2.xlsx" server="62.244.88.21/amashow/" local="131414752378891794" remote="131414681400000000" Dst="2" /> +<file name="32readwriteColumnChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752379549732" remote="131414681400000000" Dst="2" /> +<file name="27template.xls" server="62.244.88.21/amashow/" local="131414752377326302" remote="131414681400000000" Dst="2" /> +<file name="32readwriteLinePercentageChart1.xlsx" server="62.244.88.21/amashow/" local="131414752380140365" remote="131414681400000000" Dst="2" /> +<file name="32readwriteLineChart1.xlsx" server="62.244.88.21/amashow/" local="131414752380779856" remote="131414681400000000" Dst="2" /> +<file name="32readwriteLineStackedChart2.xlsx" server="62.244.88.21/amashow/" local="131414752381205157" remote="131414681400000000" Dst="2" /> +<file name="32readwriteRadarChart2.xlsx" server="62.244.88.21/amashow/" local="131414752383132317" remote="131414681400000000" Dst="2" /> +<file name="32readwriteSurfaceChart4.xlsx" server="62.244.88.21/amashow/" local="131414752383899794" remote="131414681400000000" Dst="2" /> +<file name="32readwriteDonutChart3.xlsx" server="62.244.88.21/amashow/" local="131414752384320520" remote="131414681400000000" Dst="2" /> +<file name="32readwriteColumnStackedChart1.xlsx" server="62.244.88.21/amashow/" local="131414752385160730" remote="131414681400000000" Dst="2" /> +<file name="32readwriteColumnPercentageChart2.xlsx" server="62.244.88.21/amashow/" local="131414752384735325" remote="131414681400000000" Dst="2" /> +<file name="32readwriteColumnChart2.xlsx" server="62.244.88.21/amashow/" local="131414752385782254" remote="131414681400000000" Dst="2" /> +<file name="32readwriteBarPercentageChart1.xlsx" server="62.244.88.21/amashow/" local="131414752386203382" remote="131414681400000000" Dst="2" /> +<file name="32readwriteBarStackedChart1.xlsx" server="62.244.88.21/amashow/" local="131414752386769462" remote="131414681400000000" Dst="2" /> +<file name="32readwriteScatterChart1.xlsx" server="62.244.88.21/amashow/" local="131414752387311840" remote="131414681400000000" Dst="2" /> +<file name="32readwriteBarChart3.xlsx" server="62.244.88.21/amashow/" local="131414752387734143" remote="131414681400000000" Dst="2" /> +<file name="32readwriteAreaPercentageChart1.xlsx" server="62.244.88.21/amashow/" local="131414752388158365" remote="131414681400000000" Dst="2" /> +<file name="31docproperties.xlsx" server="62.244.88.21/amashow/" local="131414752388975211" remote="131414681400000000" Dst="2" /> +<file name="32readwriteAreaStackedChart1.xlsx" server="62.244.88.21/amashow/" local="131414752389411753" remote="131414681400000000" Dst="2" /> +<file name="30template.xls" server="62.244.88.21/amashow/" local="131414752388632133" remote="131414681400000000" Dst="2" /> +<file name="32readwriteScatterChart5.xlsx" server="62.244.88.21/amashow/" local="131414752390210735" remote="131414681400000000" Dst="2" /> +<file name="32readwriteAreaChart3.xlsx" server="62.244.88.21/amashow/" local="131414752390636362" remote="131414681400000000" Dst="2" /> +<file name="32readwriteLineChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752391057899" remote="131414681400000000" Dst="2" /> +<file name="32readwritePieChart4.xlsx" server="62.244.88.21/amashow/" local="131414752391491169" remote="131414681400000000" Dst="2" /> +<file name="32readwriteLinePercentageChart2.xlsx" server="62.244.88.21/amashow/" local="131414752392477433" remote="131414681400000000" Dst="2" /> +<file name="32readwriteStockChart3.xlsx" server="62.244.88.21/amashow/" local="131414752392021552" remote="131414681400000000" Dst="2" /> +<file name="32readwriteLineChart2.xlsx" server="62.244.88.21/amashow/" local="131414752393792372" remote="131414681400000000" Dst="2" /> +<file name="32readwriteSurfaceChart1.xlsx" server="62.244.88.21/amashow/" local="131414752393209349" remote="131414681400000000" Dst="2" /> +<file name="32readwritePieChartExploded3D1.xlsx" server="62.244.88.21/amashow/" local="131414752394317129" remote="131414681400000000" Dst="2" /> +<file name="32readwriteBarChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752395344449" remote="131414681400000000" Dst="2" /> +<file name="32readwriteBarStackedChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752394734237" remote="131414681400000000" Dst="2" /> +<file name="32readwriteRadarChart3.xlsx" server="62.244.88.21/amashow/" local="131414752395880928" remote="131414681400000000" Dst="2" /> +<file name="32readwriteDonutChart4.xlsx" server="62.244.88.21/amashow/" local="131414752396478544" remote="131414681400000000" Dst="2" /> +<file name="32readwriteColumnStackedChart2.xlsx" server="62.244.88.21/amashow/" local="131414752396903185" remote="131414681400000000" Dst="2" /> +<file name="32chartreadwrite.xlsx" server="62.244.88.21/amashow/" local="131414752397400162" remote="131414681400000000" Dst="2" /> +<file name="32readwriteAreaStackedChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752397819575" remote="131414681400000000" Dst="2" /> +<file name="32readwriteColumnChart3.xlsx" server="62.244.88.21/amashow/" local="131414752398463911" remote="131414681400000000" Dst="2" /> +<file name="32readwriteAreaChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752398898553" remote="131414681400000000" Dst="2" /> +<file name="32readwriteBarPercentageChart2.xlsx" server="62.244.88.21/amashow/" local="131414752400151989" remote="131414681400000000" Dst="2" /> +<file name="32readwriteBarStackedChart2.xlsx" server="62.244.88.21/amashow/" local="131414752400576980" remote="131414681400000000" Dst="2" /> +<file name="32readwriteChartWithImages1.xlsx" server="62.244.88.21/amashow/" local="131414752399732802" remote="131414681400000000" Dst="2" /> +<file name="32readwriteScatterChart2.xlsx" server="62.244.88.21/amashow/" local="131414752401097759" remote="131414681400000000" Dst="2" /> +<file name="32readwriteAreaPercentageChart2.xlsx" server="62.244.88.21/amashow/" local="131414752401796620" remote="131414681400000000" Dst="2" /> +<file name="32readwriteAreaStackedChart2.xlsx" server="62.244.88.21/amashow/" local="131414752402226293" remote="131414681400000000" Dst="2" /> +<file name="32readwritePieChart1.xlsx" server="62.244.88.21/amashow/" local="131414752402841136" remote="131414681400000000" Dst="2" /> +<file name="32readwriteLineChartNoPointMarkers1.xlsx" server="62.244.88.21/amashow/" local="131414752403795444" remote="131414681400000000" Dst="2" /> +<file name="32readwriteDonutChartMultiseries1.xlsx" server="62.244.88.21/amashow/" local="131414752403377926" remote="131414681400000000" Dst="2" /> +<file name="32readwriteStockChart4.xlsx" server="62.244.88.21/amashow/" local="131414752404330069" remote="131414681400000000" Dst="2" /> +<file name="32readwriteDonutChart1.xlsx" server="62.244.88.21/amashow/" local="131414752405533525" remote="131414681400000000" Dst="2" /> +<file name="32readwriteSurfaceChart2.xlsx" server="62.244.88.21/amashow/" local="131414752404885316" remote="131414681400000000" Dst="2" /> +<file name="32readwriteLineChart3.xlsx" server="62.244.88.21/amashow/" local="131414752405951313" remote="131414681400000000" Dst="2" /> +<file name="32readwriteBubbleChart1.xlsx" server="62.244.88.21/amashow/" local="131414752406461432" remote="131414681400000000" Dst="2" /> +<file name="32readwriteColumnChart4.xlsx" server="62.244.88.21/amashow/" local="131414752407229487" remote="131414681400000000" Dst="2" /> +<file name="32readwritePieChartExploded1.xlsx" server="62.244.88.21/amashow/" local="131414752407759031" remote="131414681400000000" Dst="2" /> +<file name="32readwriteBarChart1.xlsx" server="62.244.88.21/amashow/" local="131414752408174703" remote="131414681400000000" Dst="2" /> +<file name="26template.xlsx" server="62.244.88.21/amashow/" local="131414752408733990" remote="131414681400000000" Dst="2" /> +<file name="32readwritePieChart3D1.xlsx" server="62.244.88.21/amashow/" local="131414752409159278" remote="131414681400000000" Dst="2" /> +<file name="32readwriteDonutChart4.xlsx" server="62.244.88.21/deciday/" local="131919461804518779" remote="131826018000000000" Dst="1" /> +<file name="32chartreadwrite.xlsx" server="62.244.88.21/deciday/" local="131919461785070423" remote="131826018000000000" Dst="1" /> +<file name="32readwriteColumnChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461798798464" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBarChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461791906690" remote="131826018000000000" Dst="1" /> +<file name="32readwritePieChartExploded1.xlsx" server="62.244.88.21/deciday/" local="131919461815047562" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBarStackedChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461796092320" remote="131826018000000000" Dst="1" /> +<file name="32readwriteAreaStackedChart2.xlsx" server="62.244.88.21/deciday/" local="131919461789870812" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBarPercentageChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461794411411" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBubbleChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461795880866" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBarStackedChart2.xlsx" server="62.244.88.21/deciday/" local="131919461794594536" remote="131826018000000000" Dst="1" /> +<file name="32readwriteRadarChart1.xlsx" server="62.244.88.21/deciday/" local="131919461814836375" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBubbleChart1.xlsx" server="62.244.88.21/deciday/" local="131919461796317067" remote="131826018000000000" Dst="1" /> +<file name="32readwriteScatterChart5.xlsx" server="62.244.88.21/deciday/" local="131919461820445817" remote="131826018000000000" Dst="1" /> +<file name="32readwriteSurfaceChart4.xlsx" server="62.244.88.21/deciday/" local="131919461825180568" remote="131826018000000000" Dst="1" /> +<file name="32readwriteColumnChart3.xlsx" server="62.244.88.21/deciday/" local="131919461798982210" remote="131826018000000000" Dst="1" /> +<file name="32readwriteLineStackedChart2.xlsx" server="62.244.88.21/deciday/" local="131919461813072784" remote="131826018000000000" Dst="1" /> +<file name="32complexChartreadwrite.xlsx" server="62.244.88.21/deciday/" local="131919461785455160" remote="131826018000000000" Dst="1" /> +<file name="32readwriteAreaStackedChart1.xlsx" server="62.244.88.21/deciday/" local="131919461790067681" remote="131826018000000000" Dst="1" /> +<file name="32readwriteLineStackedChart1.xlsx" server="62.244.88.21/deciday/" local="131919461810044819" remote="131826018000000000" Dst="1" /> +<file name="32readwriteSurfaceChart3.xlsx" server="62.244.88.21/deciday/" local="131919461823871856" remote="131826018000000000" Dst="1" /> +<file name="32readwriteDonutChart1.xlsx" server="62.244.88.21/deciday/" local="131919461803125887" remote="131826018000000000" Dst="1" /> +<file name="32readwriteLineChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461807814684" remote="131826018000000000" Dst="1" /> +<file name="32readwritePieChart2.xlsx" server="62.244.88.21/deciday/" local="131919461811450576" remote="131826018000000000" Dst="1" /> +<file name="31docproperties.xls" server="62.244.88.21/deciday/" local="131919461783711562" remote="131826018000000000" Dst="1" /> +<file name="32readwriteColumnChart4.xlsx" server="62.244.88.21/deciday/" local="131919461799592929" remote="131826018000000000" Dst="1" /> +<file name="32readwriteScatterChart1.xlsx" server="62.244.88.21/deciday/" local="131919461816478050" remote="131826018000000000" Dst="1" /> +<file name="32readwriteColumnPercentageChart1.xlsx" server="62.244.88.21/deciday/" local="131919461800518911" remote="131826018000000000" Dst="1" /> +<file name="32readwriteDonutChartMultiseries1.xlsx" server="62.244.88.21/deciday/" local="131919461805920130" remote="131826018000000000" Dst="1" /> +<file name="32readwriteColumnChart1.xlsx" server="62.244.88.21/deciday/" local="131919461797409626" remote="131826018000000000" Dst="1" /> +<file name="32readwritePieChart4.xlsx" server="62.244.88.21/deciday/" local="131919461812748097" remote="131826018000000000" Dst="1" /> +<file name="32readwriteScatterChart3.xlsx" server="62.244.88.21/deciday/" local="131919461817884127" remote="131826018000000000" Dst="1" /> +<file name="32readwriteColumnPercentageChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461801811753" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBarPercentageChart1.xlsx" server="62.244.88.21/deciday/" local="131919461792962928" remote="131826018000000000" Dst="1" /> +<file name="32readwriteAreaPercentageChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461789207915" remote="131826018000000000" Dst="1" /> +<file name="32readwriteColumnPercentageChart2.xlsx" server="62.244.88.21/deciday/" local="131919461800261631" remote="131826018000000000" Dst="1" /> +<file name="31docproperties.xlsx" server="62.244.88.21/deciday/" local="131919461783298318" remote="131826018000000000" Dst="1" /> +<file name="32readwriteColumnChart2.xlsx" server="62.244.88.21/deciday/" local="131919461797605263" remote="131826018000000000" Dst="1" /> +<file name="32readwriteAreaStackedChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461790523623" remote="131826018000000000" Dst="1" /> +<file name="32readwriteDonutChart3.xlsx" server="62.244.88.21/deciday/" local="131919461804263216" remote="131826018000000000" Dst="1" /> +<file name="32readwriteStockChart4.xlsx" server="62.244.88.21/deciday/" local="131919461822265659" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBarChart3.xlsx" server="62.244.88.21/deciday/" local="131919461792780339" remote="131826018000000000" Dst="1" /> +<file name="30template.xls" server="62.244.88.21/deciday/" local="131919461782210763" remote="131826018000000000" Dst="1" /> +<file name="32readwritePieChartExploded3D1.xlsx" server="62.244.88.21/deciday/" local="131919461814827870" remote="131826018000000000" Dst="1" /> +<file name="32readwriteAreaPercentageChart1.xlsx" server="62.244.88.21/deciday/" local="131919461788365718" remote="131826018000000000" Dst="1" /> +<file name="32readwriteAreaChart1.xlsx" server="62.244.88.21/deciday/" local="131919461786265164" remote="131826018000000000" Dst="1" /> +<file name="32readwriteScatterChart2.xlsx" server="62.244.88.21/deciday/" local="131919461818967627" remote="131826018000000000" Dst="1" /> +<file name="32readwriteColumnStackedChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461802800606" remote="131826018000000000" Dst="1" /> +<file name="32readwritePieChart3.xlsx" server="62.244.88.21/deciday/" local="131919461813253597" remote="131826018000000000" Dst="1" /> +<file name="32readwriteSurfaceChart1.xlsx" server="62.244.88.21/deciday/" local="131919461823374785" remote="131826018000000000" Dst="1" /> +<file name="32readwriteAreaChart2.xlsx" server="62.244.88.21/deciday/" local="131919461786896227" remote="131826018000000000" Dst="1" /> +<file name="32readwriteLineChartNoPointMarkers1.xlsx" server="62.244.88.21/deciday/" local="131919461808813163" remote="131826018000000000" Dst="1" /> +<file name="32readwriteStockChart2.xlsx" server="62.244.88.21/deciday/" local="131919461820725236" remote="131826018000000000" Dst="1" /> +<file name="32readwriteAreaPercentageChart2.xlsx" server="62.244.88.21/deciday/" local="131919461788559014" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBarPercentageChart2.xlsx" server="62.244.88.21/deciday/" local="131919461793206772" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBarStackedChart1.xlsx" server="62.244.88.21/deciday/" local="131919461794219399" remote="131826018000000000" Dst="1" /> +<file name="32readwriteColumnStackedChart1.xlsx" server="62.244.88.21/deciday/" local="131919461801612652" remote="131826018000000000" Dst="1" /> +<file name="32readwriteLineChart2.xlsx" server="62.244.88.21/deciday/" local="131919461807437711" remote="131826018000000000" Dst="1" /> +<file name="32readwriteDonutChartExploded1.xlsx" server="62.244.88.21/deciday/" local="131919461806125916" remote="131826018000000000" Dst="1" /> +<file name="26template.xlsx" server="62.244.88.21/deciday/" local="131919461780616804" remote="131826018000000000" Dst="1" /> +<file name="32readwritePieChart1.xlsx" server="62.244.88.21/deciday/" local="131919461810343288" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBarChart2.xlsx" server="62.244.88.21/deciday/" local="131919461791621403" remote="131826018000000000" Dst="1" /> +<file name="32readwritePieChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461811631864" remote="131826018000000000" Dst="1" /> +<file name="32readwriteLineChart3.xlsx" server="62.244.88.21/deciday/" local="131919461807625481" remote="131826018000000000" Dst="1" /> +<file name="32readwriteAreaChart3.xlsx" server="62.244.88.21/deciday/" local="131919461787725318" remote="131826018000000000" Dst="1" /> +<file name="32readwriteLinePercentageChart2.xlsx" server="62.244.88.21/deciday/" local="131919461809206759" remote="131826018000000000" Dst="1" /> +<file name="32readwriteLinePercentageChart1.xlsx" server="62.244.88.21/deciday/" local="131919461809017650" remote="131826018000000000" Dst="1" /> +<file name="32readwriteLineChart1.xlsx" server="62.244.88.21/deciday/" local="131919461806376267" remote="131826018000000000" Dst="1" /> +<file name="32readwriteAreaChart3D1.xlsx" server="62.244.88.21/deciday/" local="131919461786905670" remote="131826018000000000" Dst="1" /> +<file name="32readwriteRadarChart2.xlsx" server="62.244.88.21/deciday/" local="131919461816705792" remote="131826018000000000" Dst="1" /> +<file name="32readwriteChartWithImages1.xlsx" server="62.244.88.21/deciday/" local="131919461797822848" remote="131826018000000000" Dst="1" /> +<file name="32readwriteDonutChart2.xlsx" server="62.244.88.21/deciday/" local="131919461803875982" remote="131826018000000000" Dst="1" /> +<file name="32readwriteStockChart3.xlsx" server="62.244.88.21/deciday/" local="131919461822088913" remote="131826018000000000" Dst="1" /> +<file name="32readwriteSurfaceChart2.xlsx" server="62.244.88.21/deciday/" local="131919461823695864" remote="131826018000000000" Dst="1" /> +<file name="32readwriteColumnStackedChart2.xlsx" server="62.244.88.21/deciday/" local="131919461802478958" remote="131826018000000000" Dst="1" /> +<file name="32readwriteRadarChart3.xlsx" server="62.244.88.21/deciday/" local="131919461816297065" remote="131826018000000000" Dst="1" /> +<file name="32readwriteScatterChart4.xlsx" server="62.244.88.21/deciday/" local="131919461818690773" remote="131826018000000000" Dst="1" /> +<file name="32readwriteStockChart1.xlsx" server="62.244.88.21/deciday/" local="131919461820252457" remote="131826018000000000" Dst="1" /> +<file name="32readwriteBarChart1.xlsx" server="62.244.88.21/deciday/" local="131919461791247166" remote="131826018000000000" Dst="1" /> +<file name="27template.xls" server="62.244.88.21/deciday/" local="131919461785271307" remote="131826018000000000" Dst="1" /> +<file name="26template.xlsx" server="62.244.88.21/deciday_18/" local="131414752408733990" remote="131825946000000000" Dst="2" /> +<file name="31docproperties.xls" server="62.244.88.21/deciday_18/" local="131414752367735872" remote="131825946000000000" Dst="2" /> +<file name="30template.xls" server="62.244.88.21/deciday_18/" local="131414752388632133" remote="131825946000000000" Dst="2" /> +<file name="31docproperties.xlsx" server="62.244.88.21/deciday_18/" local="131414752388975211" remote="131825946000000000" Dst="2" /> +<file name="32chartreadwrite.xlsx" server="62.244.88.21/deciday_18/" local="131414752397400162" remote="131825946000000000" Dst="2" /> +<file name="27template.xls" server="62.244.88.21/deciday_18/" local="131414752377326302" remote="131825946000000000" Dst="2" /> +<file name="32complexChartreadwrite.xlsx" server="62.244.88.21/deciday_18/" local="131414752370548249" remote="131825946000000000" Dst="2" /> +<file name="32readwriteAreaChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752366248524" remote="131825946000000000" Dst="2" /> +<file name="32readwriteAreaChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752376356953" remote="131825946000000000" Dst="2" /> +<file name="32readwriteAreaChart3.xlsx" server="62.244.88.21/deciday_18/" local="131414752390636362" remote="131825946000000000" Dst="2" /> +<file name="32readwriteAreaChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752398898553" remote="131825946000000000" Dst="2" /> +<file name="32readwriteAreaPercentageChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752401796620" remote="131825946000000000" Dst="2" /> +<file name="32readwriteAreaPercentageChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752374148866" remote="131825946000000000" Dst="2" /> +<file name="32readwriteAreaPercentageChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752388158365" remote="131825946000000000" Dst="2" /> +<file name="32readwriteAreaStackedChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752389411753" remote="131825946000000000" Dst="2" /> +<file name="32readwriteAreaStackedChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752402226293" remote="131825946000000000" Dst="2" /> +<file name="32readwriteAreaStackedChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752397819575" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBarChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752408174703" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBarChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752374985301" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBarChart3.xlsx" server="62.244.88.21/deciday_18/" local="131414752387734143" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBarChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752395344449" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBarPercentageChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752386203382" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBarPercentageChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752400151989" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBarStackedChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752386769462" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBarStackedChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752400576980" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBarPercentageChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752371531714" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBarStackedChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752394734237" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBubbleChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752406461432" remote="131825946000000000" Dst="2" /> +<file name="32readwriteBubbleChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752368286796" remote="131825946000000000" Dst="2" /> +<file name="32readwriteColumnChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752374570647" remote="131825946000000000" Dst="2" /> +<file name="32readwriteColumnChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752385782254" remote="131825946000000000" Dst="2" /> +<file name="32readwriteChartWithImages1.xlsx" server="62.244.88.21/deciday_18/" local="131414752399732802" remote="131825946000000000" Dst="2" /> +<file name="32readwriteColumnChart3.xlsx" server="62.244.88.21/deciday_18/" local="131414752398463911" remote="131825946000000000" Dst="2" /> +<file name="32readwriteColumnChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752379549732" remote="131825946000000000" Dst="2" /> +<file name="32readwriteColumnChart4.xlsx" server="62.244.88.21/deciday_18/" local="131414752407229487" remote="131825946000000000" Dst="2" /> +<file name="32readwriteColumnPercentageChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752373729200" remote="131825946000000000" Dst="2" /> +<file name="32readwriteColumnPercentageChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752384735325" remote="131825946000000000" Dst="2" /> +<file name="32readwriteColumnPercentageChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752378374731" remote="131825946000000000" Dst="2" /> +<file name="32readwriteColumnStackedChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752385160730" remote="131825946000000000" Dst="2" /> +<file name="32readwriteColumnStackedChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752396903185" remote="131825946000000000" Dst="2" /> +<file name="32readwriteColumnStackedChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752368956045" remote="131825946000000000" Dst="2" /> +<file name="32readwriteDonutChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752405533525" remote="131825946000000000" Dst="2" /> +<file name="32readwriteDonutChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752372157841" remote="131825946000000000" Dst="2" /> +<file name="32readwriteDonutChart3.xlsx" server="62.244.88.21/deciday_18/" local="131414752384320520" remote="131825946000000000" Dst="2" /> +<file name="32readwriteDonutChart4.xlsx" server="62.244.88.21/deciday_18/" local="131414752396478544" remote="131825946000000000" Dst="2" /> +<file name="32readwriteDonutChartExploded1.xlsx" server="62.244.88.21/deciday_18/" local="131414752367523313" remote="131825946000000000" Dst="2" /> +<file name="32readwriteDonutChartMultiseries1.xlsx" server="62.244.88.21/deciday_18/" local="131414752403377926" remote="131825946000000000" Dst="2" /> +<file name="32readwriteLineChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752380779856" remote="131825946000000000" Dst="2" /> +<file name="32readwriteLineChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752393792372" remote="131825946000000000" Dst="2" /> +<file name="32readwriteLineChart3.xlsx" server="62.244.88.21/deciday_18/" local="131414752405951313" remote="131825946000000000" Dst="2" /> +<file name="32readwriteLineChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752391057899" remote="131825946000000000" Dst="2" /> +<file name="32readwriteLineChartNoPointMarkers1.xlsx" server="62.244.88.21/deciday_18/" local="131414752403795444" remote="131825946000000000" Dst="2" /> +<file name="32readwriteLinePercentageChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752380140365" remote="131825946000000000" Dst="2" /> +<file name="32readwriteLinePercentageChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752392477433" remote="131825946000000000" Dst="2" /> +<file name="32readwriteLineStackedChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752369902410" remote="131825946000000000" Dst="2" /> +<file name="32readwriteLineStackedChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752381205157" remote="131825946000000000" Dst="2" /> +<file name="32readwritePieChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752366765528" remote="131825946000000000" Dst="2" /> +<file name="32readwritePieChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752402841136" remote="131825946000000000" Dst="2" /> +<file name="32readwritePieChart3.xlsx" server="62.244.88.21/deciday_18/" local="131414752377955865" remote="131825946000000000" Dst="2" /> +<file name="32readwritePieChart4.xlsx" server="62.244.88.21/deciday_18/" local="131414752391491169" remote="131825946000000000" Dst="2" /> +<file name="32readwritePieChart3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752409159278" remote="131825946000000000" Dst="2" /> +<file name="32readwritePieChartExploded1.xlsx" server="62.244.88.21/deciday_18/" local="131414752407759031" remote="131825946000000000" Dst="2" /> +<file name="32readwriteRadarChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752371089950" remote="131825946000000000" Dst="2" /> +<file name="32readwritePieChartExploded3D1.xlsx" server="62.244.88.21/deciday_18/" local="131414752394317129" remote="131825946000000000" Dst="2" /> +<file name="32readwriteRadarChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752383132317" remote="131825946000000000" Dst="2" /> +<file name="32readwriteRadarChart3.xlsx" server="62.244.88.21/deciday_18/" local="131414752395880928" remote="131825946000000000" Dst="2" /> +<file name="32readwriteScatterChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752387311840" remote="131825946000000000" Dst="2" /> +<file name="32readwriteScatterChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752401097759" remote="131825946000000000" Dst="2" /> +<file name="32readwriteScatterChart3.xlsx" server="62.244.88.21/deciday_18/" local="131414752365640748" remote="131825946000000000" Dst="2" /> +<file name="32readwriteScatterChart4.xlsx" server="62.244.88.21/deciday_18/" local="131414752375761861" remote="131825946000000000" Dst="2" /> +<file name="32readwriteScatterChart5.xlsx" server="62.244.88.21/deciday_18/" local="131414752390210735" remote="131825946000000000" Dst="2" /> +<file name="32readwriteStockChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752369492172" remote="131825946000000000" Dst="2" /> +<file name="32readwriteStockChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752378891794" remote="131825946000000000" Dst="2" /> +<file name="32readwriteStockChart3.xlsx" server="62.244.88.21/deciday_18/" local="131414752392021552" remote="131825946000000000" Dst="2" /> +<file name="32readwriteStockChart4.xlsx" server="62.244.88.21/deciday_18/" local="131414752404330069" remote="131825946000000000" Dst="2" /> +<file name="32readwriteSurfaceChart1.xlsx" server="62.244.88.21/deciday_18/" local="131414752393209349" remote="131825946000000000" Dst="2" /> +<file name="32readwriteSurfaceChart2.xlsx" server="62.244.88.21/deciday_18/" local="131414752404885316" remote="131825946000000000" Dst="2" /> +<file name="32readwriteSurfaceChart3.xlsx" server="62.244.88.21/deciday_18/" local="131414752372927735" remote="131825946000000000" Dst="2" /> +<file name="32readwriteSurfaceChart4.xlsx" server="62.244.88.21/deciday_18/" local="131414752383899794" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/_notes/dwsync.xml b/site/config/PHPExcel/_notes/dwsync.xml new file mode 100644 index 0000000..81f1e12 --- /dev/null +++ b/site/config/PHPExcel/_notes/dwsync.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="changelog.txt" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675089999999" remote="129972060000000000" Dst="-1" /> +<file name="install.txt" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972060000000000" Dst="-1" /> +<file name="license.txt" server="web2.pointvirgule.net/valtra/action-de-ma-concession/julien/" local="129944675129999999" remote="129972060000000000" Dst="-1" /> +<file name="license.txt" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="install.txt" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="changelog.txt" server="web2.pointvirgule.net/valtra/monope/" local="129973851639999999" remote="129984144600000000" Dst="-1" /> +<file name="license.txt" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997098000000000" Dst="-1" /> +<file name="install.txt" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997098000000000" Dst="-1" /> +<file name="changelog.txt" server="pointvirgule.net/actions-fendt/monactionfendtplus/" local="129973851639999999" remote="129997098000000000" Dst="-1" /> +<file name="license.txt" server="62.244.88.111/actions-fendt/lisa/" local="131244559865880293" remote="131260196400000000" Dst="1" /> +<file name="install.txt" server="62.244.88.111/actions-fendt/lisa/" local="131244559866124257" remote="131260196400000000" Dst="1" /> +<file name="changelog.txt" server="62.244.88.111/actions-fendt/lisa/" local="131244559866501835" remote="131260196400000000" Dst="1" /> +<file name="license.txt" server="62.244.88.21/amashow/" local="131414752172631805" remote="131414680800000000" Dst="2" /> +<file name="install.txt" server="62.244.88.21/amashow/" local="131414752172837401" remote="131414680800000000" Dst="2" /> +<file name="changelog.txt" server="62.244.88.21/amashow/" local="131414752182535595" remote="131414680800000000" Dst="2" /> +<file name="changelog.txt" server="62.244.88.21/deciday/" local="131919461196698818" remote="131826017400000000" Dst="1" /> +<file name="install.txt" server="62.244.88.21/deciday/" local="131919461729025247" remote="131826018000000000" Dst="1" /> +<file name="license.txt" server="62.244.88.21/deciday/" local="131919461730517813" remote="131826018000000000" Dst="1" /> +<file name="changelog.txt" server="62.244.88.21/deciday_18/" local="131414752182535595" remote="131825945400000000" Dst="2" /> +<file name="install.txt" server="62.244.88.21/deciday_18/" local="131414752172837401" remote="131825946000000000" Dst="2" /> +<file name="license.txt" server="62.244.88.21/deciday_18/" local="131414752172631805" remote="131825946000000000" Dst="2" /> +</dwsync> \ No newline at end of file diff --git a/site/config/PHPExcel/changelog.txt b/site/config/PHPExcel/changelog.txt new file mode 100644 index 0000000..3040d34 --- /dev/null +++ b/site/config/PHPExcel/changelog.txt @@ -0,0 +1,1355 @@ +************************************************************************************** +* PHPExcel +* +* Copyright (c) 2006 - 2012 PHPExcel +* +* 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 library 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 GNU Lesser General Public +* License along with this library; if not, write to the Free Software +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +* +* @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) +* @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +* @version 1.7.8, 2012-10-12 +************************************************************************************** + + +-------------------------------------------------------------------------------- +BREAKING CHANGE! As part of the planned changes for handling array formulae in +workbooks, there are some changes that will affect the PHPExcel_Cell object +methods. + +The following methods are now deprecated, and will be removed in version 1.7.9: + getCalculatedValue() The getValue() method will return calculated + values for cells containing formulae instead. + setCalculatedValue() The cell value will always contain the result of a + any formula calculation. + setFormulaAttributes() Will now be determined by the arguments to the + setFormula() method. + getFormulaAttributes() This will be replaced by the getArrayFormulaRange() + method. + +The following methods will be added in version 1.7.9 + getFormula() Use to retrieve a cell formula, will return the cell + value if the cell doesn't contain a formula, or + is not part of an array formula range. + setFormula() Use to set a cell formula. It will still be possible + to set formulae using the setValue() and + setValueExplicit() methods. + calculate() Use to execute a formula calculation to update the + cell value. + isFormula() Use to determine if a cell contains a formula, or is + part of an array formula range or not. + isArrayFormula() Use to determine if a cell contains an array formula, + or is part of an array formula range or not. + getArrayFormulaRange() Use to retrieve an array formula range. + +The following methods will be changed in version 1.7.9 + setValue() The logic behind this will be modified to store + formula values in the new cell property structure, + but it will still perform the same function. + setValueExplicit() The logic behind this will be modified to store + formula values in the new cell property structure, + but it will still perform the same function. + getValue() Will no longer return a formula if the cell contains + a formula, but will return the calculated value + instead. For cells that don't contain a formula, + it will still return the stored value. + getDataType() Will return the datatype of the calculated value for + cells that contain formulae. + setDataType() Error handling will be added to prevent setting a + cell datatype to an inappropriate value. +-------------------------------------------------------------------------------- + + +Fixed in develop branch: +- Special: (kkamkou) Phar builder script to add phar file as a distribution option +- Feature: (MBaker) Refactor PDF Writer to allow use with a choice of PDF Rendering library + rather than restricting to tcPDF + Current options are tcPDF, mPDF, DomPDF + tcPDF Library has now been removed from the deployment bundle +- Feature: (MBaker) Initial version of HTML Reader +- Feature: (Progi1984) & (blazzy) Work items 9605 - Implement support for AutoFilter in PHPExcel_Writer_Excel5 +- Feature: (MBaker) Modified ERF and ERFC Engineering functions to accept Excel 2010's modified acceptance of negative arguments +- Feature: (k1LoW) Support SheetView `view` attribute (Excel2007) +- Feature: (MBaker) Excel compatibility option added for writing CSV files + While Excel 2010 can read CSV files with a simple UTF-8 BOM, Excel2007 and earlier require UTF-16LE encoded tab-separated files. + The new setExcelCompatibility(TRUE) option for the CSV Writer will generate files with this formatting for easy import into Excel2007 and below. +- Feature: (MBaker) Language implementations for Turkish (tr) +- Feature: (MBaker) Added fraction tests to advanced value binder +- Feature: (MBaker) Allow call to font setUnderline() for underline format to specify a simple boolean for UNDERLINE_NONE or UNDERLINE_SINGLE +- General: (alexgann) Add Currency detection to the Advanced Value Binder +- General: (MBaker) Work item 18404 - setCellValueExplicitByColumnAndRow() do not return PHPExcel_Worksheet +- General: (MBaker) Work item 18324 - Reader factory doesn't read anymore XLTX and XLT files +- General: (MBaker) Magic __toString() method added to Cell object to return raw data value as a string +- General: (alexgann) Add cell indent to html rendering +- General: (Raghav1981) ZeroHeight for rows in sheet format +- Bugfix: (cyberconte) Patch 12318 - OOCalc cells containing <text:span> inside the <text:p> tag +- Bugfix: (schir1964) Fix to listWorksheetInfo() method for OOCalc Reader +- Bugfix: (MBaker) Support for "e" (epoch) date format mask + Rendered as a 4-digit CE year in non-Excel outputs +- Bugfix: (MBaker) Work items 15799 and 18278 - Background color cell is always black when editing cell +- Bugfix: (MBaker) Work items 15905 and 18183 - Allow "no impact" to formats on Conditional Formatting +- Bugfix: (wackonline) OOCalc Reader fix for NULL cells +- Bugfix: (seltzlab) Fix to excel2007 Chart Writer when a $plotSeriesValues is empty +- Bugfix: (MBaker) Various fixes to Chart handling +- Bugfix: (MBaker) Work item 18370 - Error loading xlsx file with column breaks +- Bugfix: (MBaker) OOCalc Reader now handles percentage and currency data types +- Bugfix: (MBaker) Work Item 18415 - mb_stripos empty delimiter +- Bugfix: (takaakik) Work Item 15455 - getNestingLevel() Error on Excel5 Read +- Bugfix: (MBaker) Fix to Excel5 Reader when cell annotations are defined before their referenced text objects +- Bugfix: (MBaker) OOCalc Reader modified to process number-rows-repeated +- Bugfix: (MBaker) Work item 18377 - Chart Title compatibility on Excel 2007 +- Bugfix: (MBaker) Work item 18146 - Chart Refresh returning cell reference rather than values +- Bugfix: (MBaker) Work item 18145 - Autoshape being identified in twoCellAnchor when includeCharts is TRUE triggering load error +- Bugfix: (MBaker) Work item 18325 - v-type texts for series labels now recognised and parsed correctly +- Bugfix: (wolf5x) Work item 18492 - load file failed if the file has no extensionType +- Bugfix: (dverspui) Pattern fill colours in Excel2007 Style Writer +- Bugfix: (MBaker) Excel2007 Writer order of font style elements to conform with Excel2003 using compatibility pack +- Bugfix: (MBaker) Work item 18425 - Problems with $_activeSheetIndex when decreased below 0. +- Bugfix: (MBaker) Work item 18597 - PHPExcel_CachedObjectStorage_SQLite3::cacheMethodIsAvailable() uses class_exists - autoloader throws error +- Bugfix: (MBaker) Work item 18598 - Cannot access private property PHPExcel_CachedObjectStorageFactory::$_cacheStorageMethod +- Bugfix: (MBaker) Work item 18397 - Data titles for charts + PHPExcel_Chart_Layout now has methods for getting/setting switches for displaying/hiding chart data labels +- Bugfix: (MBaker) Discard single cell merge ranges when reading (stupid that Excel allows them in the first place) +- Bugfix: (MBaker) Discard hidden autoFilter named ranges + + +2012-05-19 (v1.7.7): +- Bugfix: (Progi1984) Work item 8916 - Support for Rich-Text in PHPExcel_Writer_Excel5 +- Bugfix: (cyberconte) Work item 17471 - OOCalc cells contain same data bug? +- Feature: (schir1964) listWorksheetInfo() method added to Readers... courtesy of Christopher Mullins +- Feature: (MBaker) Options for cell caching using Igbinary and SQLite/SQlite3. +- Feature: (MBaker) Additional row iterator options: allow a start row to be defined in the constructor; seek(), and prev() methods added. +- Feature: (Progi1984) Work item 9759 - Implement document properties in Excel5 writer +- Feature: (MBaker) Work item 16 - Implement chart functionality (EXPERIMENTAL) + Initial definition of chart objects. + Reading Chart definitions through the Excel2007 Reader + Facility to render charts to images using the 3rd-party jpgraph library + Writing Charts using the Excel2007 Writer +- General: (MBaker) Fix to build to ensure that Examples are included with the documentation +- General: (MBaker) Reduce cell caching overhead using dirty flag to ensure that cells are only rewritten to the cache if they have actually been changed +- General: (MBaker) Improved memory usage in CSV Writer +- General: (MBaker) Improved speed and memory usage in Excel5 Writer +- General: (MBaker) Experimental - + Added getHighestDataColumn(), getHighestDataRow(), getHighestRowAndColumn() and calculateWorksheetDataDimension() methods for the worksheet that return the highest row and column that have cell records +- General: (MBaker) Change iterators to implement Iterator rather than extend CachingIterator, as a fix for PHP 5.4. changes in SPL +- Bugfix: (MBaker) Work item 15459 - Invalid cell coordinate in Autofilter for Excel2007 Writer +- Bugfix: (MBaker) Work item 15518 - PCLZip library issue +- Bugfix: (MBaker) Work item 15537 - Excel2007 Reader canRead function bug +- Bugfix: (MBaker) Support for Excel functions whose return can be used as either a value or as a cell reference depending on its context within a formula +- Bugfix: (gilles06) Work item 15707 - ini_set() call in Calculation class destructor +- Bugfix: (MBaker) Work item 15786 - RangeToArray strange array keys +- Bugfix: (MBaker) Work item 15762 - INDIRECT() function doesn't work with named ranges +- Bugfix: (MBaker) Locale-specific fix to text functions when passing a boolean argument instead of a string +- Bugfix: (MBaker) Work item 16246 - reader/CSV fails on this file + auto_detect_line_endings now set in CSV reader +- Bugfix: (MBaker) Work item 16212 - $arguments improperly used in CachedObjectStorage/PHPTemp.php +- Bugfix: (MBaker) Work item 16643 - Bug In Cache System (cell reference when throwing caching errors) +- Bugfix: (MBaker) Work item 16895 - PHP Invalid index notice on writing excel file when active sheet has been deleted +- Bugfix: (MBaker) Work item 16956 - External links in Excel2010 files cause Fatal error +- Bugfix: (MBaker) Work item 16960 - Previous calculation engine error conditions trigger cyclic reference errors +- Bugfix: (mkopinsky) Work item 16266 - PHPExcel_Style::applyFromArray() returns null rather than style object in advanced mode +- Bugfix: (fauvel) Work item 16958 - Cell::getFormattedValue returns RichText object instead of string +- Bugfix: (MBaker) Work item 17166 - Indexed colors do not refer to Excel's indexed colors? +- Bugfix: (MBaker) Work item 17199 - Indexed colors should be consistent with Excel and start from 1 (current index starts at 0) +- Bugfix: (MBaker) Work item 17262 - Named Range definition in .xls when sheet reeference is quote wrapped +- Bugfix: (MBaker) Work item 17403 - duplicateStyle() method doesn't duplicate conditional formats + Added an equivalent duplicateConditionalStyle() method for duplicating conditional styles +- Bugfix: (bnr) Work item 17501 - =sumproduct(A,B) <> =sumproduct(B,A) in xlsx +- Bugfix: (Progi1984) Work item 8916 - Support for Rich-Text in PHPExcel_Writer_Excel5 +- General: (MBaker) Work item 15405 - Two easy to fix Issues concerning PHPExcel_Token_Stack (l10n/UC) +- General: (MBaker) Work item 15461 - Locale file paths not fit for windows +- General: (MBaker) Work item 16643 - Add file directory as a cache option for cache_to_discISAM +- General: (MBaker) Work item 16923 - Datatype.php & constant TYPE_NULL +- General: (MBaker) Ensure use of system temp directory for all temporary work files, unless explicitly specified +- General: (char101) Work item 16359 - [Patch] faster stringFromColumnIndex() +- General: (whit1206) Work item 16028 - Fix for projects that still use old autoloaders +- General: (atz) Work item 17024 - Unknown codepage: 10007 + Additional Mac codepages + + +2011-02-27 (v1.7.6): +- Feature: (MBaker) Provide option to use PCLZip as an alternative to ZipArchive. + This allows the writing of Excel2007 files, even without ZipArchive enabled (it does require zlib), or when php_zip is one of the buggy PHP 5.2.6 or 5.2.8 versions + It can be enabled using PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP); + Note that it is not yet implemented as an alternative to ZipArchive for those Readers that are extracting from zips +- Feature: (MBaker) Work item 14979 - Added listWorksheetNames() method to Readers that support multiple worksheets in a workbook, allowing a user to extract a list of all the worksheet names from a file without parsing/loading the whole file. +- Feature: (MBaker) Speed boost and memory reduction in the Worksheet toArray() method. +- Feature: (MBaker) Added new rangeToArray() and namedRangeToArray() methods to the PHPExcel_Worksheet object. + Functionally, these are identical to the toArray() method, except that they take an additional first parameter of a Range (e.g. 'B2:C3') or a Named Range name. + Modified the toArray() method so that it actually uses rangeToArray(). +- Feature: (MBaker) Added support for cell comments in the OOCalc, Gnumeric and Excel2003XML Readers, and in the Excel5 Reader +- Feature: (MBaker) Improved toFormattedString() handling for Currency and Accounting formats to render currency symbols +- Feature: (MBaker) Work Item 2346 - Implement more Excel calculation functions + Implemented the DAVERAGE(), DCOUNT(), DCOUNTA(), DGET(), DMAX(), DMIN(), DPRODUCT(), DSTDEV(), DSTDEVP(), DSUM(), DVAR() and DVARP() Database functions +- Bugfix: (MBaker) Work item 14888 - Simple =IF() formula disappears +- Bugfix: (MBaker) Work item 14898 - PHP Warning: preg_match(): Compilation failed: PCRE does not support \\L, \\l, \\N, \\P, \\p, \\U, \\u, or \\X +- Bugfix: (MBaker) Work item 14901 - VLOOKUP choking on parameters in PHPExcel.1.7.5/PHPExcel_Writer_Excel2007 +- Bugfix: (MBaker) Work item 14973 - PHPExcel_Cell::isInRange() incorrect results - offset by one column +- Bugfix: (MBaker) Treat CodePage of 0 as CP1251 (for .xls files written by applications that don't set the CodePage correctly, such as Apple Numbers) +- Bugfix: (MB) Work item 11583 - Need method for removing autoFilter +- Bugfix: (MBaker) Work item 15029 - coordinateFromString throws exception for rows greater than 99,999 +- Bugfix: (MBaker) Work item 14999 - PHPExcel Excel2007 Reader colour problems with solidfill +- Bugfix: (MBaker) Work item 13215 - Formatting get lost and edit a template XLSX file +- Bugfix: (MBaker) Work item 14029 - Excel 2007 Reader /writer lost fontcolor +- Bugfix: (MBaker) Work item 13374 - file that makes cells go black +- Bugfix: (MBaker) Minor patchfix for Excel2003XML Reader when XML is defined with a charset attribute +- Bugfix: (MBaker) Work item 15089 - PHPExcel_Worksheet->toArray() index problem +- Bugfix: (MBaker) Work item 15094 - Merge cells 'un-merge' when using an existing spreadsheet +- Bugfix: (MBaker) Work item 15129 - Worksheet fromArray() only working with 2-D arrays +- Bugfix: (xkeshav) Work item 15172 - rangeToarray function modified for non-existent cells +- Bugfix: (MBaker) Work item 14980 - Images not getting copyied with the ->clone function +- Bugfix: (MBaker) Work item 11576 - AdvancedValueBinder.php: String sometimes becomes a date when it shouldn't +- Bugfix: (MBaker) Fix Excel5 Writer so that it only writes column dimensions for columns that are actually used rather than the full range (A to IV) +- Bugfix: (MBaker) Work item 15198 - FreezePane causing damaged or modified error + The freezePaneByColumnAndRow() method row argument should default to 1 rather than 0. + Default row argument for all __ByColumnAndRow() methods should be 1 +- Bugfix: (MBaker) Work item 15121 - Column reference rather than cell reference in Print Area definition + Fix Excel2007 Writer to handle print areas that are defined as row or column ranges rather than just as cell ranges +- Bugfix: (MBaker) Reduced false positives from isDateTimeFormatCode() method by suppressing testing within quoted strings +- Bugfix: (MBaker) Work item 15312 - Caching and tmp partition exhaustion +- Bugfix: (MBaker) Work item 15308 - Writing to Variable No Longer Works. $_tmp_dir Missing in PHPExcel\PHPExcel\Shared\OLE\PPS\Root.php +- Bugfix: (MBaker) Work item 15379 - Named ranges with dot don't get parsed properly +- Bugfix: (MBaker) Work item 15096 - insertNewRowBefore fails to consistently update references +- Bugfix: (MBaker) "i" is not a valid character for Excel date format masks (in isDateTimeFormatCode() method) +- Bugfix: (MKunert) Work item 15421 - PHPExcel_ReferenceHelper::insertNewBefore() is missing an 'Update worksheet: comments' section +- Bugfix: (MBaker) Work item 15409 - Full column/row references in named ranges not supported by updateCellReference() +- General: (MBaker) Improved performance (speed), for building the Shared Strings table in the Excel2007 Writer. +- General: (MBaker) Improved performance (speed), for PHP to Excel date conversions +- General: (MBaker) Enhanced SheetViews element structures in the Excel2007 Writer for frozen panes. +- General: (MBaker) Removed Serialized Reader/Writer as these no longer work. + + +2010-12-10 (v1.7.5): +- Feature: (MBaker) Work item 8769 - Implement Gnumeric File Format + Initial work on Gnumeric Reader (Worksheet Data, Document Properties and basic Formatting) +- Feature: (MBaker) (incorporating part of Workitem 9759) - Support for Extended Workbook Properties in Excel2007, Excel5 and OOCalc Readers; support for User-defined Workbook Properties in Excel2007 and OOCalc Readers +- Feature: (MBaker) Support for Extended and User-defined Workbook Properties in Excel2007 Writer +- Feature: (MBaker) Provided a setGenerateSheetNavigationBlock(false); option to suppress generation of the sheet navigation block when writing multiple worksheets to HTML +- Feature: (MBaker) Advanced Value Binder now recognises TRUE/FALSE strings (locale-specific) and converts to boolean +- Feature: (MBaker) Work item 14301 - PHPExcel_Worksheet->toArray() is returning truncated values +- Feature: (MBaker) Configure PDF Writer margins based on Excel Worksheet Margin Settings value +- Feature: (MBaker) Added Contiguous flag for the CSV Reader, when working with Read Filters +- Feature: (MBaker) Added getFormattedValue() method for cell object +- Feature: (MBaker) Added strictNullComparison argument to the worksheet fromArray() method +- Feature: (MBaker) Fix to toFormattedString() method in PHPExcel_Style_NumberFormat to handle fractions with a # code for the integer part +- Bugfix: (MB) Work item 14143 - NA() doesn't propagate in matrix calc - quick fix in JAMA/Matrix.php +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : String constant containing double quotation mark +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : Percent +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : Error constant +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : Concatenation operator +- Bugfix: (MBaker) Work item 14146 - Worksheet clone broken for CachedObjectStorage_Memory +- Bugfix: (MBaker) Work item 12998 - PHPExcel_Reader_Excel2007 fails when gradient fill without type is present in a file +- Bugfix: (MBaker) Work item 14176 - @ format for numeric strings in XLSX to CSV conversion +- Bugfix: (MBaker) Work item 14223 - Advanced Value Binder Not Working? +- Bugfix: (MBaker) Work item 14226 - unassigned object variable in PHPExcel->removeCellXfByIndex +- Bugfix: (MBaker) Work item 14236 - problem with getting cell values from another worksheet... (if cell doesn't exist) +- Bugfix: (MBaker) Work items 14260 & 14233 - Setting cell values to one char strings & Trouble reading one character string (thanks gorfou) +- Bugfix: (MBaker) Work item 14256 - Worksheet title exception when duplicate worksheet is being renamed but exceeds the 31 character limit +- Bugfix: (MBaker) Work item 14086 - Named range with sheet name that contains the $ throws exception when getting the cell +- Bugfix: (MBaker) Added autoloader to DefaultValueBinder and AdvancedValueBinder +- Bugfix: (MBaker) Modified PHPExcel_Shared_Date::isDateTimeFormatCode() to return false if format code begins with "_" or with "0 " to prevent false positives + These leading characters are most commonly associated with number, currency or accounting (or occasionally fraction) formats +- Bugfix: (MBaker) Work item 14374 - BUG : Excel5 and setReadFilter ? +- Bugfix: (MBaker) Work item 14425 - Wrong exception message while deleting column +- Bugfix: (MBaker) Work item 14679 - Formula evaluation fails with Japanese sheet refs +- Bugfix: (MBaker) Work item 13559 - PHPExcel_Writer_PDF does not handle cell borders correctly +- Bugfix: (MBaker) Work item 14831 - Style : applyFromArray() for 'allborders' not working +- Bugfix: (MBaker) Work item 14837 - Using $this when not in object context in Excel5 Reader +- General: (MBaker) Applied patch 6609 - Removes a unnecessary loop through each cell when applying conditional formatting to a range. +- General: (MBaker) Applied patch 7169 - Removed spurious PHP end tags (?>) +- General: (MBaker) Improved performance (speed) and reduced memory overheads, particularly for the Writers, but across the whole library. + + +2010-08-26 (v1.7.4): +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : Power +- Bugfix: (Progi1984) Work item 7895 - Excel5 : Formula : Unary plus +- Bugfix: (Progi1984) Excel5 : Just write the Escher stream if necessary in Worksheet +- Bugfix: (MBaker) Work item 13433 - Syntax errors in memcache.php 1.7.3c +- Bugfix: (MBaker) Work item 13450 - Standard Deviation functions returning DIV/0 Error when Standard Deviation is zero +- Feature: (MBaker) Support for print area with several ranges in the Excel2007 reader, and improved features for editing print area with several ranges +- Feature: (MBaker) Work item 13769 - Improved Cell Exception Reporting +- Feature: (MBaker) Support for row or column ranges in the calculation engine, e.g. =SUM(C:C) or =SUM(1:2) + Also support in the calculation engine for absolute row or column ranges e.g. =SUM($C:$E) or =SUM($3:5) +- Bugfix: (ET) Work item 13455 - Picture problem with Excel 2003 +- Bugfix: (MBaker) Work item 13484 - Wrong variable used in addExternalSheet in PHPExcel.php +- Bugfix: (MBaker) Work item 13515 - "Invalid cell coordinate" error when formula access data from an other sheet +- Bugfix: (MBaker) (related to Work item 13515) Calculation engine confusing cell range worksheet when referencing cells in a different worksheet to the formula +- Bugfix: (MBaker) Work item 13752 - Wrong var naming in Worksheet->garbageCollect() +- Bugfix: (MBaker) Work item 13764 - PHPExcel_Style_*::__clone() methods cause cloning loops? +- Bugfix: (MBaker) Work item 11488 - Recent builds causing problems loading xlsx files? (ZipArchive issue?) +- Bugfix: (MBaker) Work item 13856 - cache_to_apc causes fatal error when processing large data sets +- Bugfix: (MBaker) Work item 13880 - OOCalc reader misses first line if it's a 'table-header-row' +- Bugfix: (MBaker) Work item 14011 - using cache with copy or clone bug? + Fixed $worksheet->copy() or clone $worksheet when using cache_in_memory, cache_in_memory_gzip, cache_in_memory_serialized, cache_to_discISAM, cache_to_phpTemp, cache_to_apc and cache_to_memcache; + Fixed but untested when using cache_to_wincache. +- Bugfix: (MBaker) Fixed problems with reading Excel2007 Properties +- General: (MB) Applied patch 6324 - PHP Strict Standards: Non-static method PHPExcel_Shared_String::utf16_decode() should not be called statically +- General: (MBaker) Applied patch 6360 - Array functions were ignored when loading an existing file containing them, and as a result, they would lose their 'cse' status. +- General: (MBaker) Minor memory tweaks to Excel2007 Writer +- General: (MBaker) Modified ReferenceHelper updateFormulaReferences() method to handle updates to row and column cell ranges (including absolute references e.g. =SUM(A:$E) or =SUM($5:5), and range/cell references that reference a worksheet by name), and to provide both performance and memory improvements. +- General: (MBaker) Modified Excel2007 Reader so that ReferenceHelper class is instantiated only once rather than for every shared formula in a workbook. +- General: (MBaker) Correct handling for additional (synonym) formula tokens in Excel5 Reader +- General: (MBaker) Additional reading of some Excel2007 Extended Properties (Company, Manager) + + +2010-06-01 (v1.7.3c): +- Bugfix: (MB) Work item 13012 - Fatal error: Class 'ZipArchive' not found... ...Reader/Excel2007.php on line 217 +- Bugfix: (MBaker) Work item 13398 - PHPExcel_Writer_Excel2007 error after 1.7.3b + + +2010-05-31 (v1.7.3b): +- Bugfix: (MBaker) Work item 12903 - Infinite loop when reading +- Bugfix: (MB) Work item 13381 - Wrong method chaining on PHPExcel_Worksheet class + + +2010-05-17 (v1.7.3): +- General: (ET) Applied patch 4990 (modified) +- General: (MB) Applied patch 5568 (modified) +- General: (MB) Applied patch 5943 +- General: (MB) Work item 13042 - Upgrade build script to use Phing +- General: (ET) Work item 11586 - Replacing var with public/private +- General: (MBaker) Applied Anthony's Sterling's Class Autoloader to reduce memory overhead by "Lazy Loading" of classes +- General: (MBaker) Modification to functions that accept a date parameter to support string values containing ordinals as per Excel (English language only) +- General: (MBaker) Modify PHPExcel_Style_NumberFormat::toFormattedString() to handle dates that fall outside of PHP's 32-bit date range +- General: (MBaker) Applied patch 5207 +- General: (ET) Work item 11970 - PHPExcel developer documentation: Set page margins +- Feature: (ET) Work item 11038 - Special characters and accents in SYLK reader +- Feature: (MBaker) Work Item 2346 - Implement more Excel calculation functions + - Implemented the COUPDAYS(), COUPDAYBS(), COUPDAYSNC(), COUPNCD(), COUPPCD() and PRICE() Financial functions + - Implemented the N() and TYPE() Information functions + - Implemented the HYPERLINK() Lookup and Reference function +- Feature: (ET) Work item 11526 - Horizontal page break support in PHPExcel_Writer_PDF +- Feature: (ET) Work item 11529 - Introduce method setActiveSheetIndexByName() +- Feature: (ET) Work item 11550 - AdvancedValueBinder.php: Automatically wrap text when there is new line in string (ALT+"Enter") +- Feature: (ET) Work item 10300 - Data validation support in PHPExcel_Reader_Excel5 and PHPExcel_Writer_Excel5 +- Feature: (MB) Work item 11616 - Improve autosize calculation +- Feature: (MBaker) Methods to translate locale-specific function names in formulae + - Language implementations for Czech (cs), Danish (da), German (de), English (uk), Spanish (es), Finnish (fi), French (fr), Hungarian (hu), Italian (it), Dutch (nl), Norwegian (no), Polish (pl), Portuguese (pt), Brazilian Portuguese (pt_br), Russian (ru) and Swedish (sv) +- Feature: (ET) Work item 9759 - Implement document properties in Excel5 reader/writer + - Fixed so far for PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 11849 - Show/hide row and column headers in worksheet +- Feature: (ET) Work item 11919 - Can't set font on writing PDF (by key) +- Feature: (ET) Work item 12096 - Thousands scale (1000^n) support in PHPExcel_Style_NumberFormat::toFormattedString +- Feature: (ET) Work item 6911 - Implement repeating rows in PDF and HTML writer +- Feature: (ET) Work item 12289 - Sheet tabs in PHPExcel_Writer_HTML +- Feature: (MB) Work item 13041 - Add Wincache CachedObjectProvider +- Feature: (MBaker) Configure PDF Writer paper size based on Excel Page Settings value, and provided methods to override paper size and page orientation with the writer + - Note PHPExcel defaults to Letter size, while the previous PDF writer enforced A4 size, so PDF writer will now default to Letter +- Feature: (MBaker) Initial implementation of cell caching: allowing larger workbooks to be managed, but at a cost in speed +- Feature: (MBaker) Added an identify() method to the IO Factory that identifies the reader which will be used to load a particular file without actually loading it. +- Bugfix: (MBaker) Work item 10979 - Warning messages with INDEX function having 2 arguments +- Bugfix: (ET) Work item 11473 - setValue('=') should result in string instead of formula +- Bugfix: (MBaker) Work item 11471 - method _raiseFormulaError should no be private +- Bugfix: (ET) Work item 11485 - Fatal error: Call to undefined function mb_substr() in ...Classes\PHPExcel\Reader\Excel5.php on line 2903 +- Bugfix: (ET) Work item 11487 - getBold(), getItallic(), getStrikeThrough() not always working with PHPExcel_Reader_Excel2007 +- Bugfix: (ET) Work item 11492 - AdvancedValueBinder.php not working correctly for $cell->setValue('hh:mm:ss') +- Bugfix: (MBaker) Fixed leap year handling for the YEARFRAC() Date/Time function when basis ia 1 (Actual/actual) +- Bugfix: (MBaker) Work item 11490 - Warning messages + - Calculation Engine code modified to enforce strict standards for pass by reference +- Bugfix: (ET) Work item 11483 - PHPExcel_Cell_AdvancedValueBinder doesnt work for dates in far future +- Bugfix: (ET) Work item 11528 - MSODRAWING bug with long CONTINUE record in PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 11571 - PHPExcel_Reader_Excel2007 reads print titles as named range when there is more than one sheet +- Bugfix: (ET) Work item 11561 - missing @return in phpdocblock in reader classes +- Bugfix: (ET) Work item 11576 - AdvancedValueBinder.php: String sometimes becomes a date when it shouldn't +- Bugfix: (ET) Work item 11588 - Small numbers escape treatment in PHPExcel_Style_NumberFormat::toFormattedString() +- Bugfix: (ET) Work item 11590 - Blank styled cells are not blank in output by HTML writer due to &nbsp; +- Bugfix: (MBaker) Work item 11587 - Calculation engine bug: Existing, blank cell + number gives #NUM +- Bugfix: (ET) Work item 11608 - AutoSize only measures length of first line in cell with multiple lines (ALT+Enter) +- Bugfix: (ET) Work item 11608 - Fatal error running Tests/12serializedfileformat.php (PHPExcel 1.7.2) +- Bugfix: (MBaker) Fixed various errors in the WORKDAY() and NETWORKDAYS() Date/Time functions (particularly related to holidays) +- Bugfix: (ET) Work item 11660 - Uncaught exception 'Exception' with message 'Valid scale is between 10 and 400.' in Classes/PHPExcel/Worksheet/SheetView.php:115 +- Bugfix: (ET) Work item 11551 - "Unrecognized token 39 in formula" with PHPExcel_Reader_Excel5 (occuring with add-in functions) +- Bugfix: (ET) Work item 11668 - Excel2007 reader not reading PHPExcel_Style_Conditional::CONDITION_EXPRESSION +- Bugfix: (MBaker) Fix to the BESSELI(), BESSELJ(), BESSELK(), BESSELY() and COMPLEX() Engineering functions to use correct default values for parameters +- Bugfix: (MBaker) Work item 11525 - DATEVALUE function not working for pure time values + allow DATEVALUE() function to handle partial dates (e.g. "1-Jun" or "12/2010") +- Bugfix: (MBaker) Fix for empty quoted strings in formulae +- Bugfix: (MBaker) Trap for division by zero in Bessel functions +- Bugfix: (MBaker) Fix to OOCalc Reader to convert semi-colon (;) argument separator in formulae to a comma (,) +- Bugfix: (ET) Work item 11693 - PHPExcel_Writer_Excel5_Parser cannot parse formula like =SUM(C$5:C5) +- Bugfix: (MBaker) Fix to OOCalc Reader to handle dates that fall outside 32-bit PHP's date range +- Bugfix: (ET) Work item 11692 - File->sys_get_temp_dir() can fail in safe mode +- Bugfix: (ET) Work item 11727 - Sheet references in Excel5 writer do not work when referenced sheet title contains non-Latin symbols +- Bugfix: (ET) Work item 11743 - Bug in HTML writer can result in missing rows in output +- Bugfix: (ET) Work item 11674 - setShowGridLines(true) not working with PHPExcel_Writer_PDF +- Bugfix: (ET) Work item 11836 - PHPExcel_Worksheet_RowIterator initial position incorrect +- Bugfix: (ET) Work item 11835 - PHPExcel_Worksheet_HeaderFooterDrawing Strict Exception thrown (by jshaw86) +- Bugfix: (ET) Work item 11850 - Parts of worksheet lost when there are embedded charts (Excel5 reader) +- Bugfix: (MBaker) VLOOKUP() function error when lookup value is passed as a cell reference rather than an absolute value +- Bugfix: (ET) Work item 12041 - First segment of Rich-Text not read correctly by PHPExcel_Reader_Excel2007 +- Bugfix: (MBaker) Work item 12048 - Fatal Error with getCell('name') when name matches the pattern for a cell reference +- Bugfix: (ET) Work item 12039 - excel5 writer appears to be swapping image locations +- Bugfix: (ET) Work item 11954 - Undefined index: host in ZipStreamWrapper.php, line 94 and line 101 +- Bugfix: (ET) Work item 11672 - BIFF8 File Format problem (too short COLINFO record) +- Bugfix: (ET) Work item 12121 - Column width sometimes changed after read/write with Excel2007 reader/writer +- Bugfix: (ET) Work item 11964 - Worksheet.php throws a fatal error when styling is turned off via setReadDataOnly on the reader +- Bugfix: (MBaker) Work item 11851 - Checking for Circular References in Formulae + - Calculation Engine code now traps for cyclic references, raising an error or throwing an exception, or allows 1 or more iterations through cyclic references, based on a configuration setting +- Bugfix: (ET) Work item 12244 - PNG transparency using Excel2007 writer +- Bugfix: (ET) Work item 12221 - Custom readfilter error when cell formulas reference excluded cells (Excel5 reader) +- Bugfix: (ET) Work item 12288 - Protection problem in XLS +- Bugfix: (ET) Work item 12300 - getColumnDimension()->setAutoSize() incorrect on cells with Number Formatting +- Bugfix: (ET) Work item 12378 - Notices reading Excel file with Add-in funcitons (PHPExcel_Reader_Excel5) +- Bugfix: (ET) Work item 12380 - Excel5 reader not reading formulas with deleted sheet references +- Bugfix: (ET) Work item 12404 - Named range (defined name) scope problems for in PHPExcel +- Bugfix: (ET) Work item 12423 - PHP Parse error: syntax error, unexpected T_PUBLIC in PHPExcel/Calculation.php on line 3482 +- Bugfix: (ET) Work item 12505 - Named ranges don't appear in name box using Excel5 writer +- Bugfix: (ET) Work item 12509 - Many merged cells + autoSize column -> slows down the writer +- Bugfix: (ET) Work item 12539 - Incorrect fallback order comment in Shared/Strings.php ConvertEncoding() +- Bugfix: (ET) Work item 12538 - IBM AIX iconv() will not work, should revert to mbstring etc. instead +- Bugfix: (ET) Work item 12568 - Excel5 writer and mbstring functions overload +- Bugfix: (MBaker) Work item 12672 - OFFSET needs to flattenSingleValue the $rows and $columns args +- Bugfix: (MBaker) Work item 12546 - Formula with DMAX(): Notice: Undefined offset: 2 in ...\PHPExcel\Calculation.php on line 2365 + - Note that the Database functions have not yet been implemented +- Bugfix: (MBaker) Work item 12839 - Call to a member function getParent() on a non-object in Classes\\PHPExcel\\Calculation.php Title is required +- Bugfix: (MBaker) Work item 12935 - Cyclic Reference in Formula +- Bugfix: (MBaker) Work item 13025 - Memory error...data validation? + + +2010/01/11 (v1.7.2): +- General: (ET) Applied patch 4362 +- General: (ET) Applied patch 4363 (modified) +- General: (MBaker) Work item 10874 - 1.7.1 Extremely Slow - Refactored PHPExcel_Calculation_Functions::flattenArray() method and set calculation cache timer default to 2.5 seconds +- General: (MBaker) Allow formulae to contain line breaks +- General: (ET) Work item 10910 - split() function deprecated in PHP 5.3.0 +- General: (ET) sys_get_temp_dir() requires PHP 5.2.1, not PHP 5.2 [provide fallback function for PHP 5.2.0] +- General: (MBaker) Applied patch 4640 - Implementation of the ISPMT() Financial function by Matt Groves +- General: (MBaker) Work item 11052 - Put the example of formula with more arguments in documentation +- General: (MBaker) Improved accuracy for the GAMMAINV() Statistical Function +- Feature: (ET) Work item 10409 - XFEXT record support to fix colors change from Excel5 reader, and copy/paste color change with Excel5 writer + - Excel5 reader reads RGB color information in XFEXT records for borders, font color and fill color +- Feature: (MBaker) Work Item 2346 - Implement more Excel calculation functions + - Implemented the FVSCHEDULE(), XNPV(), IRR(), MIRR(), XIRR() and RATE() Financial functions + - Implemented the SUMPRODUCT() Mathematical function + - Implemented the ZTEST() Statistical Function +- Feature: (ET) Work item 10919 - Multiple print areas in one sheet +- Feature: (ET) Work item 10930 - Store calculated values in output by PHPExcel_Writer_Excel5 +- Feature: (ET) Work item 10939 - Sheet protection options in Excel5 reader/writer +- Feature: (MBaker) Modification of the COUNT(), AVERAGE(), AVERAGEA(), DEVSQ, AVEDEV(), STDEV(), STDEVA(), STDEVP(), STDEVPA(), VARA() and VARPA() SKEW() and KURT() functions to correctly handle boolean values depending on whether they're passed in as values, values within a matrix or values within a range of cells. +- Feature: (ET) Work item 9932 - Cell range selection +- Feature: (MB) Work item 10266 - Root-relative path handling +- Feature: (ET) Work item 11315 - Named Ranges not working with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 11206 - Excel2007 Reader fails to load Apache POI generated Excel +- Bugfix: (MB) Work item 11154 - Number format is broken when system's thousands separator is empty +- Bugfix: (MB) Work item 11401 - ReferenceHelper::updateNamedFormulas throws errors if oldName is empty +- Bugfix: (MB) Work item 11296 - parse_url() fails to parse path to an image in xlsx +- Bugfix: (ET) Work item 10876 - Workaround for iconv_substr() bug in PHP 5.2.0 +- Bugfix: (ET) Work item 10877 - 1 pixel error for image width and height with PHPExcel_Writer_Excel5 +- Bugfix: (MBaker) Fix to GEOMEAN() Statistical function +- Bugfix: (ET) Work item 10884 - setValue('-') and setValue('.') sets numeric 0 instead of 1-character string +- Bugfix: (ET) Work item 10885 - Row height sometimes much too low after read with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10888 - Diagonal border. Miscellaneous missing support. + - Constant PHPExcel_Style_Borders::DIAGONAL_BOTH added to support double-diagonal (cross) + - PHPExcel_Reader_Excel2007 not always reading diagonal borders (only recognizes 'true' and not '1') + - PHPExcel_Reader_Excel5 support for diagonal borders + - PHPExcel_Writer_Excel5 support for diagonal borders +- Bugfix: (ET) Work item 10894 - Session bug: Fatal error: Call to a member function bindValue() on a non-object in ...\Classes\PHPExcel\Cell.php on line 217 +- Bugfix: (ET) Work item 10896 - Colors messed up saving twice with same instance of PHPExcel_Writer_Excel5 (regression since 1.7.0) +- Bugfix: (ET) Work item 10917 - Method PHPExcel_Worksheet::setDefaultStyle is not working +- Bugfix: (ET) Work item 10897 - PHPExcel_Reader_CSV::canRead() sometimes says false when it shouldn't +- Bugfix: (ET) Work item 10922 - Changes in workbook not picked up between two saves with PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 10913 - Decimal and thousands separators missing in HTML and PDF output +- Bugfix: (ET) Work item 10936 - Notices with PHPExcel_Reader_Excel5 and named array constants +- Bugfix: (MBaker) Work item 10938 - Calculation engine limitation on 32-bit platform with integers > 2147483647 +- Bugfix: (ET) Work item 10959 - Shared(?) formulae containing absolute cell references not read correctly using Excel5 Reader +- Bugfix: (MBaker) Work item 10962 - Warning messages with intersection operator involving single cell +- Bugfix: (ET) Work item 10980 - Infinite loop in Excel5 reader caused by zero-length string in SST +- Bugfix: (ET) Work item 10983 - Remove unnecessary cell sorting to improve speed by approx. 18% in HTML and PDF writers +- Bugfix: (MBaker) Work item 10977 - Cannot read A1 cell content - OO_Reader +- Bugfix: (ET) Work item 11000 - Transliteration failed, invalid encoding + + +2009/11/02 (v1.7.1): +- General: (ET) Work item 10687 - ereg() function deprecated in PHP 5.3.0 +- General: (MB) Work item 10739 - Writer Interface Inconsequence - setTempDir and setUseDiskCaching +- General: (ET) Upgrade to TCPDF 4.8.009 +- Feature: (ET) Work item 7333 - Support for row and column styles (feature request) + - Basic implementation for Excel2007/Excel5 reader/writer +- Feature: (ET) Work item 10459 - Hyperlink to local file in Excel5 reader/writer +- Feature: (MB) Work item 10472 - Color Tab (Color Sheet's name) +- Feature: (ET) Work item 10488 - Border style "double" support in PHPExcel_Writer_HTML +- Feature: (ET) Work item 10492 - Multi-section number format support in HTML/PDF/CSV writers +- Feature: (MBaker) - Some additional performance tweaks in the calculation engine +- Feature: (MBaker) - Fix result of DB() and DDB() Financial functions to 2dp when in Gnumeric Compatibility mode +- Feature: (MBaker) - Added AMORDEGRC(), AMORLINC() and COUPNUM() Financial function (no validation of parameters yet) +- Feature: (MBaker) - Improved accuracy of TBILLEQ(), TBILLPRICE() and TBILLYIELD() Financial functions when in Excel or Gnumeric mode +- Feature: (MBaker) - Added INDIRECT() Lookup/Reference function (only supports full addresses at the moment) +- Feature: (MB) Work item 10498 - PHPExcel_Reader_CSV::canRead() improvements +- Feature: (ET) Work item 10500 - Input encoding option for PHPExcel_Reader_CSV +- Feature: (ET) Work item 10493 - Colored number format support, e.g. [Red], in HTML/PDF output +- Feature: (ET) Work item 10559 - Color Tab (Color Sheet's name) [Excel5 reader/writer support] +- Feature: (MBaker) Initial version of SYLK (slk) and Excel 2003 XML Readers (Cell data and basic cell formatting) +- Feature: (MBaker) Initial version of Open Office Calc (ods) Reader (Cell data only) +- Feature: (MBaker) Initial use of "pass by reference" in the calculation engine for ROW() and COLUMN() Lookup/Reference functions +- Feature: (MBaker) Work item 2346 - COLUMNS() and ROWS() Lookup/Reference functions, and SUBSTITUTE() Text function +- Feature: (ET) Work item 10502 - AdvancedValueBinder(): Re-enable zero-padded string-to-number conversion, e.g '0004' -> 4 +- Feature: (ET) Work item 10600 - Make PHP type match Excel datatype +- Feature: (MB) Work item 10630 - Change first page number on header +- Feature: (MB) Applied patch 3941 +- Feature: (MB,ET) Work item 10745 - Hidden sheets +- Feature: (ET) Work item 10761 - mbstring fallback when iconv is broken +- Feature: (MBaker) Added support for matrix/value comparisons (e.g. ={1,2;3,4}>=3 or 2<>{1,2;3,4}) - Note, can't yet handle comparison of two matrices +- Feature: (MBaker) Improved handling for validation and error trapping in a number of functions +- Feature: (MBaker) Improved support for fraction number formatting +- Feature: (ET) Work item 10455 - Support Reading CSV with Byte Order Mark (BOM) +- Feature: (ET) Work item 10860 - addExternalSheet() at specified index +- Bugfix: (MBaker) Work item 10684 - Named range can no longer be passed to worksheet->getCell() +- Bugfix: (ET) Work item 10455 - RichText HTML entities no longer working in PHPExcel 1.7.0 +- Bugfix: (ET) Work item 7610 - Fit-to-width value of 1 is lost after read/write of Excel2007 spreadsheet [+ support for simultaneous scale/fitToPage] +- Bugfix: (MB) Work item 10469 - Performance issue identified by profiling +- Bugfix: (ET) Work item 10473 - setSelectedCell is wrong +- Bugfix: (ET) Work item 10481 - Images get squeezed/stretched with (Mac) Verdana 10 Excel files using Excel5 reader/writer +- Bugfix: (MBaker) Work item 10482 - Error in argument count for DATEDIF() function +- Bugfix: (MBaker) Work item 10452 - updateFormulaReferences is buggy +- Bugfix: (MB) Work item 10485 - CellIterator returns null Cell if onlyExistingCells is set and key() is in use +- Bugfix: (MBaker) Work item 10453 - Wrong RegEx for parsing cell references in formulas +- Bugfix: (MB) Work item 10486 - Optimisation subverted to devastating effect if IterateOnlyExistingCells is clear +- Bugfix: (ET) Work item 10494 - Fatal error: Uncaught exception 'Exception' with message 'Unrecognized token 6C in formula'... with PHPExcel_Reader_Excel5 +- Bugfix: (MBaker) Work item 10490 - Fractions stored as text are not treated as numbers by PHPExcel's calculation engine +- Bugfix: (ET) Work item 10503 - AutoFit (autosize) row height not working in PHPExcel_Writer_Excel5 +- Bugfix: (MBaker) Fixed problem with null values breaking the calculation stack +- Bugfix: (ET) Work item 10524 - Date number formats sometimes fail with PHPExcel_Style_NumberFormat::toFormattedString, e.g. [$-40047]mmmm d yyyy +- Bugfix: (MBaker) Fixed minor problem with DATEDIFF YM calculation +- Bugfix: (MB) Applied patch 3695 +- Bugfix: (ET) Work item 10536 - setAutosize() and Date cells not working properly +- Bugfix: (ET) Work item 10556 - Time value hour offset in output by HTML/PDF/CSV writers (system timezone problem) +- Bugfix: (ET) Work item 10558 - Control characters 0x14-0x1F are not treated by PHPExcel +- Bugfix: (ET) Work item 10560 - PHPExcel_Writer_Excel5 not working when open_basedir restriction is in effect +- Bugfix: (MBaker) Work item 10563 - IF formula calculation problem in PHPExcel 1.7.0 (string comparisons) +- Bugfix: (MBaker) Improved CODE() Text function result for UTF-8 characters +- Bugfix: (ET) Work item 10568 - Empty rows are collapsed with HTML/PDF writer +- Bugfix: (ET) Work item 10569 - Gaps between rows in output by PHPExcel_Writer_PDF (Upgrading to TCPDF 4.7.003) +- Bugfix: (ET) Work item 10575 - Problem reading formulas (Excel5 reader problem with "fake" shared formulas) +- Bugfix: (MBaker) Work item 10588 - Error type in formula: "_raiseFormulaError message is Formula Error: An unexpected error occured" +- Bugfix: (ET) Work item 10599 - Miscellaneous column width problems in Excel5/Excel2007 writer +- Bugfix: (ET) Work item 10615 - Reader/Excel5 'Unrecognized token 2D in formula' in latest version +- Bugfix: (ET) Work item 10623 - on php 5.3 PHPExcel 1.7 Excel 5 reader fails in _getNextToken, token = 2C, throws exception +- Bugfix: (ET) Work item 10617 - Fatal error when altering styles after workbook has been saved +- Bugfix: (ET) Work item 10661 - Images vertically stretched or squeezed when default font size is changed (PHPExcel_Writer_Excel5) +- Bugfix: (ET) Work item 10676 - Styles not read in "manipulated" Excel2007 workbook +- Bugfix: (ET) Work item 10059 - Windows 7 says corrupt file by PHPExcel_Writer_Excel5 when opening in Excel +- Bugfix: (MBaker) Work item 10708 - Calculations sometimes not working with cell references to other sheets +- Bugfix: (ET) Work item 10706 - Problem with merged cells after insertNewRowBefore() +- Bugfix: (MBaker) Applied patch 4023 +- Bugfix: (MBaker) Fix to SUMIF() and COUNTIF() Statistical functions for when condition is a match against a string value +- Bugfix: (ET) Work item 10721 - PHPExcel_Cell::coordinateFromString should throw exception for bad string parameter +- Bugfix: (ET) Work item 10723 - EucrosiaUPC (Thai font) not working with PHPExcel_Writer_Excel5 +- Bugfix: (MBaker) Improved the return of calculated results when the result value is an array +- Bugfix: (MBaker) Allow calculation engine to support Functions prefixed with @ within formulae +- Bugfix: (MBaker) Work item 10632 - Intersection operator (space operator) fatal error with calculation engine +- Bugfix: (ET) Work item 10742 - Chinese, Japanese, Korean characters show as squares in PDF +- Bugfix: (ET) Work item 10756 - sheet title allows invalid characters +- Bugfix: (ET) Work item 10757 - Sheet!$A$1 as function argument in formula causes infinite loop in Excel5 writer +- Bugfix: (MBaker) Work item 10740 - Cell range involving name not working with calculation engine - Modified calculation parser to handle range operator (:), but doesn't currently handle worksheet references with spaces or other non-alphameric characters, or trap erroneous references +- Bugfix: (MBaker) Work item 10798 - DATE function problem with calculation engine (says too few arguments given) +- Bugfix: (MBaker) Work item 10799 - Blank cell can cause wrong calculated value +- Bugfix: (MBaker) Modified ROW() and COLUMN() Lookup/Reference Functions to return an array when passed a cell range, plus some additional work on INDEX() +- Bugfix: (ET) Work item 10817 - Images not showing in Excel 97 using PHPExcel_Writer_Excel5 (patch by Jordi Gutiérrez Hermoso) +- Bugfix: (ET) Work item 10785 - When figures are contained in the excel sheet, Reader was stopped +- Bugfix: (MBaker) Work item 10818 - Formulas changed after insertNewRowBefore() +- Bugfix: (ET) Work item 10825 - Cell range row offset problem with shared formulas using PHPExcel_Reader_Excel5 +- Bugfix: (MBaker) Work item 10832 - Warning: Call-time pass-by-reference has been deprecated +- Bugfix: (ET) Work item 10849 - Image should "Move but don't size with cells" instead of "Move and size with cells" with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 10856 - Opening a Excel5 generated XLS in Excel 2007 results in header/footer entry not showing on input +- Bugfix: (ET) Work item 10859 - addExternalSheet() not returning worksheet +- Bugfix: (MBaker) Work item 10629 - Invalid results in formulas with named ranges + + +2009/08/10 (v1.7.0): +- General: (ET) Work item 9893 - Expand documentation: Number formats +- General: (ET) Work item 9941 - Class 'PHPExcel_Cell_AdvancedValueBinder' not found +- General: (MB) Work item 9960 - Change return type of date functions to PHPExcel_Calculation_Functions::RETURNDATE_EXCEL +- Feature: (MBaker) - New RPN and stack-based calculation engine for improved performance of formula calculation + - Faster (anything between 2 and 12 times faster than the old parser, depending on the complexity and nature of the formula) + - Significantly more memory efficient when formulae reference cells across worksheets + - Correct behaviour when referencing Named Ranges that exist on several worksheets + - Support for Excel ^ (Exponential) and % (Percentage) operators + - Support for matrices within basic arithmetic formulae (e.g. ={1,2,3;4,5,6;7,8,9}/2) + - Better trapping/handling of NaN and infinity results (return #NUM! error) + - Improved handling of empty parameters for Excel functions + - Optional logging of calculation steps +- Feature: (MBaker) - New calculation engine can be accessed independently of workbooks (for use as a standalone calculator) +- Feature: (MBaker) Work Item 2346 - Implement more Excel calculation functions + - Initial implementation of the COUNTIF() and SUMIF() Statistical functions + - Added ACCRINT() Financial function +- Feature: (MBaker) - Modifications to number format handling for dddd and ddd masks in dates, use of thousand separators even when locale only implements it for money, and basic fraction masks (0 ?/? and ?/?) +- Feature: (ET) Work item 9794 - Support arbitrary fixed number of decimals in PHPExcel_Style_NumberFormat::toFormattedString() +- Feature: (ET) Work item 6857 - Improving performance and memory on data dumps + - Various style optimizations (merging from branch wi6857-memory) + - Moving hyperlink and dataValidation properties from cell to worksheet for lower PHP memory usage +- Feature: (MB) Work item 9869 - Provide fluent interfaces where possible +- Feature: (ET) Work item 9899 - Make easy way to apply a border to a rectangular selection +- Feature: (ET) Work item 9906 - Support for system window colors in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 9911 - Horizontal center across selection +- Feature: (ET) Work item 9919 - Merged cells record, write to full record size in PHPExcel_Writer_Excel5 +- Feature: (MB) Work item 9895 - Add page break between sheets in exported PDF +- Feature: (ET) Work item 9902 - Sanitization of UTF-8 input for cell values +- Feature: (ET) Work item 9930 - Read cached calculated value with PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 9896 - Miscellaneous CSS improvements for PHPExcel_Writer_HTML +- Feature: (ET) Work item 9947 - getProperties: setCompany feature request +- Feature: (MB) Patch 2981 - Insert worksheet at a specified index +- Feature: (MB) Patch 3018 - Change worksheet index +- Feature: (MB) Patch 3039 - Readfilter for CSV reader +- Feature: (ET) Work item 10172 - Check value of mbstring.func_overload when saving with PHPExcel_Writer_Excel5 +- Feature: (ET) Work item 10251 - Eliminate dependency of an include path pointing to class directory +- Feature: (ET) Work item 10292 - Method for getting the correct reader for a certain file (contribution) +- Feature: (ET) Work item 10287 - Choosing specific row in fromArray method +- Feature: (ET) Work item 10319 - Shared formula support in PHPExcel_Reader_Excel5 +- Feature: (MB,ET) Work item 10345 - Right-to-left column direction in worksheet +- Bugfix: (ET) Work item 9824 - PHPExcel_Reader_Excel5 not reading PHPExcel_Style_NumberFormat::FORMAT_NUMBER ('0') +- Bugfix: (ET) Work item 9858 - Fractional row height in locale other than English results in corrupt output using PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 9846 - Fractional (decimal) numbers not inserted correctly when locale is other than English +- Bugfix: (ET) Work item 9863 - Fractional calculated value in locale other than English results in corrupt output using PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 9830 - Locale aware decimal and thousands separator in exported formats HTML, CSV, PDF +- Bugfix: (MB) Work item 9819 - Cannot Add Image with Space on its Name +- Bugfix: (ET) Work item 9884 - Black line at top of every page in output by PHPExcel_Writer_PDF +- Bugfix: (ET) Work item 9885 - Border styles and border colors not showing in HTML output (regression since 1.6.4) +- Bugfix: (ET) Work item 9888 - Hidden screen gridlines setting in worksheet not read by PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9913 - Some valid sheet names causes corrupt output using PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 9934 - More than 32,767 characters in a cell gives corrupt Excel file +- Bugfix: (ET) Work item 9937 - Images not getting copyied with the ->copy() function +- Bugfix: (ET) Work item 9940 - Bad calculation of column width setAutoSize(true) function +- Bugfix: (ET) Work item 9968 - Dates are sometimes offset by 1 day in output by HTML and PDF writers depending on system timezone setting +- Bugfix: (ET) Work item 10003 - Wingdings symbol fonts not working with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 10010 - White space string prefix stripped by PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 10023 - The name of the Workbook stream MUST be "Workbook", not "Book" +- Bugfix: (ET) Work item 10030 - Avoid message "Microsoft Excel recalculates formulas..." when closing xls file from Excel +- Bugfix: (ET) Work item 10031 - Non-unique newline representation causes problems with LEN formula +- Bugfix: (ET) Work item 10033 - Newline in cell not showing with PHPExcel_Writer_HTML and PHPExcel_Writer_PDF +- Bugfix: (ET) Work item 10046 - Rich-Text strings get prefixed by &nbsp; when output by HTML writer +- Bugfix: (ET) Work item 10052 - Leading spaces do not appear in output by HTML/PDF writers +- Bugfix: (MB) Work item 10061 - Empty Apache POI-generated file can not be read +- Bugfix: (ET) Work item 10068 - Column width not scaling correctly with font size in HTML and PDF writers +- Bugfix: (ET) Work item 10069 - Inaccurate row heights with HTML writer +- Bugfix: (MB) Patch 2992 - Reference helper +- Bugfix: (MBaker) - Excel 5 Named ranges should not be local to the worksheet, but accessible from all worksheets +- Bugfix: (ET) Work item 10088 - Row heights are ignored by PHPExcel_Writer_PDF +- Bugfix: (MB) Patch 3003 - Write raw XML +- Bugfix: (ET) Work item 10098 - removeRow(), removeColumn() not always clearing cell values +- Bugfix: (ET) Work item 10142 - Problem reading certain hyperlink records with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10143 - Hyperlink cell range read failure with PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 10149 - 'Column string index can not be empty.' +- Bugfix: (ET) Work item 10204 - getHighestColumn() sometimes says there are 256 columns with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10220 - extractSheetTitle fails when sheet title contains exclamation mark (!) +- Bugfix: (ET) Work item 10221 - setTitle() sometimes erroneously appends integer to sheet name +- Bugfix: (ET) Work item 10229 - Mac BIFF5 Excel file read failure (missing support for Mac OS Roman character set) +- Bugfix: (ET) Work item 10230 - BIFF5 header and footer incorrectly read by PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10259 - iconv notices when reading hyperlinks with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10252 - Excel5 reader OLE read failure with small Mac BIFF5 Excel files +- Bugfix: (ET) Work item 10272 - Problem in reading formula : IF( IF ) with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10274 - Error reading formulas referencing external sheets with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10291 - Image horizontally stretched when default font size is increased (PHPExcel_Writer_Excel5) +- Bugfix: (ET) Work item 10333 - Undefined offset in Reader\Excel5.php on line 3572 +- Bugfix: (MB) Work item 10340 - PDF output different then XLS (copied data) +- Bugfix: (ET) Work item 10352 - Internal hyperlinks with UTF-8 sheet names not working in PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 10361 - String shared formula result read error with PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 10363 - Uncaught exception 'Exception' with message 'Valid scale is between 10 and 400.' in Classes/PHPExcel/Worksheet/PageSetup.php:338 +- Bugfix: (ET) Work item 10355 - Using setLoadSheetsOnly fails if you do not use setReadDataOnly(true) and sheet is not the first sheet +- Bugfix: (MB) Work item 10362 - getCalculatedValue() sometimes incorrect with IF formula and 0-values +- Bugfix: (MBaker) Work Item 10198 - Excel Reader 2007 problem with "shared" formulae when "master" is an error +- Bugfix: (MBaker) Work Item 10106 - Named Range Bug, using the same range name on different worksheets +- Bugfix: (MBaker) Work Item 10004 - Java code in JAMA classes +- Bugfix: (MBaker) Work Item 9659 - getCalculatedValue() not working with some formulas involving error types +- Bugfix: (MBaker) Work Item 9447 - evaluation of both return values in an IF() statement returning an error if either result was an error, irrespective of the IF evaluation +- Bugfix: (MBaker) Work Item 6203 - Power in formulas: new calculation engine no longer treats ^ as a bitwise XOR operator +- Bugfix: (MBaker) - Bugfixes and improvements to many of the Excel functions in PHPExcel + - Added optional "places" parameter in the BIN2HEX(), BIN2OCT, DEC2BIN(), DEC2OCT(), DEC2HEX(), HEX2BIN(), HEX2OCT(), OCT2BIN() and OCT2HEX() Engineering Functions + - Trap for unbalanced matrix sizes in MDETERM() and MINVERSE() Mathematic and Trigonometric functions + - Fix for default characters parameter value for LEFT() and RIGHT() Text functions + - Fix for GCD() and LCB() Mathematical functions when the parameters include a zero (0) value + - Fix for BIN2OCT() Engineering Function for 2s complement values (which were returning hex values) + - Fix for BESSELK() and BESSELY() Engineering functions + - Fix for IMDIV() Engineering Function when result imaginary component is positive (wasn't setting the sign) + - Fix for ERF() Engineering Function when called with an upper limit value for the integration + - Fix to DATE() Date/Time Function for year value of 0 + - Set ISPMT() function as category FINANCIAL + - Fix for DOLLARDE() and DOLLARFR() Financial functions + - Fix to EFFECT() Financial function (treating $nominal_rate value as a variable name rather than a value) + - Fix to CRITBINOM() Statistical function (CurrentValue and EssentiallyZero treated as constants rather than variables) + Note that an Error in the function logic can still lead to a permanent loop + - Fix to MOD() Mathematical function to work with floating point results + - Fix for QUOTIENT() Mathematical function + - Fix to HOUR(), MINUTE() and SECOND() Date/Time functions to return an error when passing in a floating point value of 1.0 or greater, or less than 0 + - LOG() Function now correctly returns base-10 log when called with only one parameter, rather than the natural log as the default base + - Modified text functions to handle multibyte character set (UTF-8). + + +2009/04/22 (v1.6.7): +- General: (MB) Work item 9416 - Deprecate misspelled setStriketrough() and getStriketrough() methods +- General: (MB) Work item 9526 - Performance improvement when saving file +- Feature: (MB) Work item 9598 - Check that sheet title has maximum 31 characters +- Feature: (MB, ET) Work item 9631 - True support for Excel built-in number format codes +- Feature: (ET) Work item 9683 - Ability to read defect BIFF5 Excel file without CODEPAGE record +- Feature: (MB) Work item 9701 - Auto-detect which reader to invoke +- Feature: (ET) Work item 9214 - Deprecate insertion of dates using PHP-time (Unix time) [request for removal of feature] +- Feature: (ET) Work item 9747 - Support for entering time values like '9:45', '09:45' using AdvancedValueBinder +- Feature: (ET) Work item 9797 - DataType dependent horizontal alignment in HTML and PDF writer +- Bugfix: (MB) Work item 9375 - Cloning data validation object causes script to stop +- Bugfix: (ET) Work item 9400 - Simultaneous repeating rows and repeating columns not working with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 9399 - Simultaneous repeating rows and repeating columns not working with PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 9437 - Row outline level not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 9452 - Occasional notices with PHPExcel_Reader_Excel5 when Excel file contains drawing elements +- Bugfix: (ET) Work item 9453 - PHPExcel_Reader_Excel5 fails as a whole when workbook contains images other than JPEG/PNG +- Bugfix: (ET) Work item 9444 - Excel5 writer checks for iconv but does not necessarily use it +- Bugfix: (ET) Work item 9463 - Altering a style on copied worksheet alters also the original +- Bugfix: (MB) Work item 9480 - Formulas are incorrectly updated when a sheet is renamed +- Bugfix: (MB) Work item 9513 - PHPExcel_Worksheet::extractSheetTitle not treating single quotes correctly +- Bugfix: (MB) Work item 9477 - PHP Warning raised in function array_key_exists +- Bugfix: (MB) Work item 9599 - getAlignWithMargins() gives wrong value when using PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9600 - getScaleWithDocument() gives wrong value when using PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9630 - PHPExcel_Reader_Excel2007 not reading the first user-defined number format +- Bugfix: (MB) Work item 9647 - Print area converted to uppercase after read with PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9661 - Incorrect reading of scope for named range using PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9690 - Error with pattern (getFillType) and rbg (getRGB) +- Bugfix: (ET) Work item 9712 - AdvancedValueBinder affected by system timezone setting when inserting date values +- Bugfix: (ET) Work item 9743 - PHPExcel_Reader_Excel2007 not reading value of active sheet index +- Bugfix: (ET) Work item 9742 - getARGB() sometimes returns SimpleXMLElement object instead of string with PHPExcel_Reader_Excel2007 +- Bugfix: (ET) Work item 9731 - Negative image offset causes defects in 14excel5.xls and 20readexcel5.xlsx +- Bugfix: (ET) Work item 9758 - HTML & PDF Writer not working with mergeCells (regression since 1.6.5) +- Bugfix: (ET) Work item 9774 - Too wide columns with HTML and PDF writer +- Bugfix: (MB) Work item 9775 - PDF and cyrillic fonts +- Bugfix: (ET) Work item 9793 - Percentages not working correctly with HTML and PDF writers (shows 0.25% instead of 25%) +- Bugfix: (ET) Work item 9791 - PHPExcel_Writer_HTML creates extra borders around cell contents using setUseInlineCss(true) +- Bugfix: (ET) Work item 9784 - Problem with text wrap + merged cells in HTML and PDF writer +- Bugfix: (ET) Work item 9814 - Adjacent path separators in include_path causing IOFactory to violate open_basedir restriction + + +-------------------------------------------------------------------------------- +BREAKING CHANGE! In previous versions of PHPExcel up to and including 1.6.6, +when a cell had a date-like number format code, it was possible to enter a date +directly using an integer PHP-time without converting to Excel date format. + +Starting with PHPExcel 1.6.7 this is no longer supported. Refer to the developer +documentation for more information on entering dates into a cell. +-------------------------------------------------------------------------------- + + +2009/03/02 (v1.6.6): +- General: (MB) Work item 9102 - Improve support for built-in number formats in PHPExcel_Reader_Excel2007 +- General: (ET) Work item 9281 - Source files are in both UNIX and DOS formats - changed to UNIX +- General: (MB) Work item 9338 - Update documentation: Which language to write formulas in? +- Feature: (ET) Work item 8817 - Ignore DEFCOLWIDTH records with value 8 in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 8847 - Support for width, height, offsetX, offsetY for images in PHPExcel_Reader_Excel5 +- Feature: (MB) Work item 8870 - Disk Caching in specific folder +- Feature: (MBaker) Work item 2346 - Added SUMX2MY2, SUMX2PY2, SUMXMY2, MDETERM and MINVERSE Mathematical and Trigonometric Functions +- Feature: (MBaker) Work item 2346 - Added CONVERT Engineering Function +- Feature: (MBaker) Work item 2346 - Added DB, DDB, DISC, DOLLARDE, DOLLARFR, INTRATE, IPMT, PPMT, PRICEDISC, PRICEMAT and RECEIVED Financial Functions +- Feature: (MBaker) Work item 2346 - Added ACCRINTM, CUMIPMT, CUMPRINC, TBILLEQ, TBILLPRICE, TBILLYIELD, YIELDDISC and YIELDMAT Financial Functions +- Feature: (MBaker) Work item 2346 - Added DOLLAR Text Function +- Feature: (MBaker) Work item 2346 - Added CORREL, COVAR, FORECAST, INTERCEPT, RSQ, SLOPE and STEYX Statistical Functions +- Feature: (MBaker) Work item 2346 - Added PEARSON Statistical Functions as a synonym for CORREL +- Feature: (MBaker) Work item 2346 - Added LINEST, LOGEST (currently only valid for stats = false), TREND and GROWTH Statistical Functions +- Feature: (MBaker) Work item 2346 - Added RANK and PERCENTRANK Statistical Functions +- Feature: (MBaker) Work item 2346 - Added ROMAN Mathematical Function (Classic form only) +- Feature: (MB) Work item 8931 - Update documentation to show example of getCellByColumnAndRow($col, $row) +- Feature: (MB) Work item 8770 - Implement worksheet, row and cell iterators +- Feature: (MB) Work item 9001 - Support for arbitrary defined names (named range) +- Feature: (MB, ET) Work item 9016 - Update formulas when sheet title / named range title changes +- Feature: (MB) Work item 9103 - Ability to read cached calculated value +- Feature: (MBaker, ET) Work item 8483 - Support for Excel 1904 calendar date mode (Mac) +- Feature: (ET) Work item 9194 - PHPExcel_Writer_Excel5 improvements writing shared strings table +- Feature: (ET) Work item 9248 - PHPExcel_Writer_Excel5 iconv fallback when mbstring extension is not enabled +- Feature: (ET) Work item 9253 - UTF-8 support in font names in PHPExcel_Writer_Excel5 +- Feature: (MB) Work item 9215 - Implement value binding architecture +- Feature: (MB) Work item 6742 - PDF writer not working with UTF-8 +- Feature: (ET) Work item 9355 - Eliminate duplicate style entries in multisheet workbook written by PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8810 - Redirect to client browser fails due to trailing white space in class definitions +- Bugfix: (MB) Work item 8816 - Spurious column dimension element introduced in blank worksheet after using PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 8830 - Image gets slightly narrower than expected when using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8831 - Image laid over non-visible row gets squeezed in height when using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8860 - PHPExcel_Reader_Excel5 fails when there are 10 or more images in the workbook +- Bugfix: (MB) Work item 8909 - Different header/footer images in different sheets not working with PHPExcel_Writer_Excel2007 +- Bugfix: (MB, ET) Work item 8924 - Fractional seconds disappear when using PHPExcel_Reader_Excel2007 and PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 7994 - Images not showing in OpenOffice when using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 9047 - Images not showing on print using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 9085 - PHPExcel_Writer_Excel5 maximum allowed record size 4 bytes too short +- Bugfix: (MB) Work item 9119 - Not numeric strings are formatted as dates and numbers using worksheet's toArray method +- Bugfix: (ET) Work item 9132 - Excel5 simple formula parsing error +- Bugfix: (ET) Work item 9206 - Problems writing dates with CSV +- Bugfix: (ET) Work item 9203 - PHPExcel_Reader_Excel5 reader fails with fatal error when reading group shapes +- Bugfix: (ET) Work item 9231 - PHPExcel_Writer_Excel5 fails completely when workbook contains more than 57 colors +- Bugfix: (ET) Work item 9244 - PHPExcel_Writer_PDF not compatible with autoload +- Bugfix: (ET) Work item 9250 - Fatal error: Call to a member function getNestingLevel() on a non-object in PHPExcel/Reader/Excel5.php on line 690 +- Bugfix: (MB) Work item 9246 - Notices when running test 04printing.php on PHP 5.2.8 +- Bugfix: (MB) Work item 9294 - insertColumn() spawns creation of spurious RowDimension +- BugFix: (MBaker) Work item 9296 - Fix declarations for methods in extended Trend classes +- Bugfix: (MBaker) Work item 2346 - Fix to parameters for the FORECAST Statistical Function +- Bugfix: (MB) Work item 7083 - PDF writer problems with cell height and text wrapping +- Bugfix: (MBaker) Work Item 9337 - Fix test for calculated value in case the returned result is an array +- Bugfix: (ET) Work Item 9354 - Column greater than 256 results in corrupt Excel file using PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 9351 - Excel Numberformat 0.00 results in non internal decimal places values in toArray() Method +- Bugfix: (MB,ET) Work item 9356 - setAutoSize not taking into account text rotation +- Bugfix: (ET) Work item 9372 - Call to undefined method PHPExcel_Worksheet_MemoryDrawing::getPath() in PHPExcel/Writer/HTML.php + + +2009/01/05 (v1.6.5): +- General: (MB) Applied patch 2063 +- General: (MB) Applied patch from work item 8073 - Optimise Shared Strings +- General: (MB) Applied patch from work item 8074 - Optimise Cell Sorting +- General: (MB) Applied patch from work item 8075 - Optimise Style Hashing +- General: (ET) Applied patch from work item 8245 - UTF-8 enhancements +- General: (ET) Applied patch from work item 8283 - PHPExcel_Writer_HTML validation errors against strict HTML 4.01 / CSS 2.1 +- General: (MB) Documented work items 6203 and 8110 in manual +- General: (ET) Restructure package hierachy so classes can be found more easily in auto-generated API (from work item 8468) +- General: (MB) Work item 8806 - Redirect output to a client's browser: Update recommendation in documentation +- Feature: (ET) Work item 7897 - PHPExcel_Reader_Excel5 support for print gridlines +- Feature: (ET) Work item 7899 - Screen gridlines support in Excel5 reader/writer +- Feature: (MB, ET) Work item 7552 - Option for adding image to spreadsheet from image resource in memory +- Feature: (ET) Work item 7862 - PHPExcel_Reader_Excel5 style support for BIFF5 files (Excel 5.0 - Excel 95) +- Feature: (ET) Work item 7918 - PHPExcel_Reader_Excel5 support for user-defined colors and special built-in colors +- Feature: (ET) Work item 7992 - Support for freeze panes in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 7996 - Support for header and footer margins in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 7997 - Support for active sheet index in Excel5 reader/writer +- Feature: (MB) Work item 7991 - Freeze panes not read by PHPExcel_Reader_Excel2007 +- Feature: (MB, ET) Work item 7993 - Support for screen zoom level (feature request) +- Feature: (ET) Work item 8012 - Support for default style in PHPExcel_Reader_Excel5 +- Feature: (MB) Work item 8094 - Apple iWork / Numbers.app incompatibility +- Feature: (MB) Work item 7931 - Support "between rule" in conditional formatting +- Feature: (MB) Work item 8308 - Comment size, width and height control (feature request) +- Feature: (ET) Work item 8418 - Improve method for storing MERGEDCELLS records in PHPExcel_Writer_Excel5 +- Feature: (ET) Work item 8435 - Support for protectCells() in Excel5 reader/writer +- Feature: (ET) Work item 8472 - Support for fitToWidth and fitToHeight pagesetup properties in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 8489 - Support for setShowSummaryBelow() and setShowSummaryRight() in PHPExcel_Writer_Excel5 +- Feature: (MB) Work item 8483 - Support for Excel 1904 calendar date mode (Mac) +- Feature: (ET) Work item 7538 - Excel5 reader: Support for reading images (bitmaps) +- Feature: (ET) Work item 8787 - Support for default style in PHPExcel_Writer_Excel5 +- Feature: (MBaker) Modified calculate() method to return either an array or the first value from the array for those functions that return arrays rather than single values (e.g the MMULT and TRANSPOSE function). This performance can be modified based on the $returnArrayAsType which can be set/retrieved by calling the setArrayReturnType() and getArrayReturnType() methods of the PHPExcel_Calculation class. +- Feature: (MBaker) Work item 2346 - Added ERROR.TYPE Information Function, MMULT Mathematical and Trigonometry Function, and TRANSPOSE Lookup and Reference Function +- Bugfix: (ET) Work item 7896 - setPrintGridlines(true) not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7907 - Incorrect mapping of fill patterns in PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7898 - setShowGridlines(false) not working with PHPExcel_Writer_Excel2007 +- Bugfix: (MB) Work item 7905 - getShowGridlines() gives inverted value when reading sheet with PHPExcel_Reader_Excel2007 +- Bugfix: (ET) Work item 7944 - User-defined column width becomes slightly larger after read/write with Excel5 +- Bugfix: (ET) Work item 7949 - Incomplete border style support in PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7928 - Conditional formatting "containsText" read/write results in MS Office Excel 2007 crash +- Bugfix: (MB) Work item 7995 - All sheets are always selected in output when using PHPExcel_Writer_Excel2007 +- Bugfix: (MB) Work item 8013 - COLUMN function warning message during plain read/write +- Bugfix: (MB) Work item 8155 - setValue(0) results in string data type '0' +- Bugfix: (MB) Work item 8226 - Styles not removed when removing rows from sheet +- Bugfix: (MB) Work item 8301 - =IF formula causes fatal error during $objWriter->save() in Excel2007 format +- Bugfix: (ET) Work item 8333 - Exception thrown reading valid xls file: "Excel file is corrupt. Didn't find CONTINUE record while reading shared strings" +- Bugfix: (ET) Work item 8320 - MS Outlook corrupts files generated by PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 8351 - Undefined method PHPExcel_Worksheet::setFreezePane() in ReferenceHelper.php on line 271 +- Bugfix: (MB) Work item 8401 - Ampersands (&), left and right angles (<, >) in Rich-Text strings leads to corrupt output using PHPExcel_Writer_Excel2007 +- Bugfix: (ET) Work item 8408 - Print header and footer not supporting UTF-8 in PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8463 - Vertical page breaks not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8476 - Missing support for accounting underline types in PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8482 - Infinite loops when reading corrupt xls file using PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 8566 - Sheet protection password not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8596 - PHPExcel_Style_NumberFormat::FORMAT_NUMBER ignored by PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8781 - PHPExcel_Reader_Excel5 fails a whole when workbook contains a chart +- Bugfix: (ET) Work item 8788 - Occasional loss of column widths using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 8795 - Notices while reading formulas with deleted sheet references using PHPExcel_Reader_Excel5 +- Bugfix: (MB) Work item 8807 - Default style not read by PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 9341 - Blank rows occupy too much space in file generated by PHPExcel_Writer_Excel2007 + + +2008/10/27 (v1.6.4): +- General: (ET) Work item 7882 - RK record number error in MS developer documentation: 0x007E should be 0x027E +- Feature: (MBaker) Work item 7878 - getHighestColumn() returning "@" for blank worksheet causes corrupt output +- Feature: (MBaker) Work item 2346 - Implement ROW and COLUMN Lookup/Reference Functions (when specified with a parameter) +- Feature: (MBaker) Work item 2346 - Implement initial work on OFFSET Lookup/Reference Function (returning address rather than value at address) +- Feature: (ET) Work item 7416 - Excel5 reader: Page margins +- Feature: (ET) Work item 7417 - Excel5 reader: Header & Footer +- Feature: (ET) Work item 7449 - Excel5 reader support for page setup (paper size etc.) +- Feature: (MB) Work item 7445 - Improve speed and memory consumption of PHPExcel_Writer_CSV +- Feature: (MB) Work item 7432 - Better recognition of number format in HTML, CSV, and PDF writer +- Feature: (MB) Work item 7485 - Font support: Superscript and Subscript +- Feature: (ET) Work item 7509 - Excel5 reader font support: Super- and subscript +- Feature: (ET) Work item 7521 - Excel5 reader style support: Text rotation and stacked text +- Feature: (ET) Work item 7530 - Excel5 reader: Support for hyperlinks +- Feature: (MB, ET) Work item 7557 - Import sheet by request +- Feature: (ET) Work item 7607 - PHPExcel_Reader_Excel5 support for page breaks +- Feature: (ET) Work item 7622 - PHPExcel_Reader_Excel5 support for shrink-to-fit +- Feature: (MB, ET) Work item 7675 - Support for error types +- Feature: (ET) Work item 7388 - Excel5 reader true formula support +- Feature: (ET) Work item 7701 - Support for named ranges (defined names) in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 7781 - Support for repeating rows and repeating columns (print titles) in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 7783 - Support for print area in PHPExcel_Reader_Excel5 +- Feature: (ET) Work item 7795 - Excel5 reader and writer support for horizontal and vertical centering of page +- Feature: (MB) Applied patch 1962 +- Feature: (ET) Work item 7866 - Excel5 reader and writer support for hidden cells (formulas) +- Feature: (MB, ET) Work item 7612 - Support for indentation in cells (feature request) +- Feature: (MB, ET) Work item 7828 - Option for reading only specified interval of rows in a sheet +- Bugfix: (MBaker) Work item 7367 - PHPExcel_Calculation_Functions::DATETIMENOW() and PHPExcel_Calculation_Functions::DATENOW() to force UTC +- Bugfix: (MBaker) Work item 7395 - Modified PHPExcel_Shared_Date::FormattedPHPToExcel() and PHPExcel_Shared_Date::ExcelToPHP to force datatype for return values +- Bugfix: (ET) Work item 7450 - Excel5 reader not producing UTF-8 strings with BIFF5 files +- Bugfix: (MB) Work item 7470 - Array constant in formula gives run-time notice with Excel2007 writer +- Bugfix: (MB) Work item 7494 - PHPExcel_Reader_Excel2007 setReadDataOnly(true) returns Rich-Text +- Bugfix: (ET) Work item 7496 - PHPExcel_Reader_Excel5 setReadDataOnly(true) returns Rich-Text +- Bugfix: (MB) Work item 7497 - Characters before superscript or subscript losing style +- Bugfix: (MB) Work item 7507 - Subscript not working with HTML writer +- Bugfix: (MB) Work item 7508 - DefaultColumnDimension not working on first column (A) +- Bugfix: (MB) Work item 7527 - Negative numbers are stored as text in PHPExcel_Writer_2007 +- Bugfix: (ET) Work item 7531 - Text rotation and stacked text not working with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7536 - PHPExcel_Shared_Date::isDateTimeFormatCode erroneously says true +- Bugfix: (MB) Work item 7559 - Different images with same filename in separate directories become duplicates +- Bugfix: (ET) Work item 7568 - PHPExcel_Reader_Excel5 not returning sheet names as UTF-8 using for Excel 95 files +- Bugfix: (MB) Work item 7575 - setAutoSize(true) on empty column gives column width of 10 using PHPExcel_Writer_Excel2007 +- Bugfix: (MB, ET) Work item 7573 - setAutoSize(true) on empty column gives column width of 255 using PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7514 - Worksheet_Drawing bug +- Bugfix: (MB) Work item 7593 - getCalculatedValue() with REPT function causes script to stop +- Bugfix: (MB) Work item 7594 - getCalculatedValue() with LEN function causes script to stop +- Bugfix: (MB) Work item 7600 - Explicit fit-to-width (page setup) results in fit-to-height becoming 1 +- Bugfix: (MB) Work item 7610 - Fit-to-width value of 1 is lost after read/write of Excel2007 spreadsheet +- Bugfix: (MB) Work item 7516 - Conditional styles not read properly using PHPExcel_Reader_Excel2007 +- Bugfix: (MB) Work item 7611 - PHPExcel_Writer_2007: Default worksheet style works only for first sheet +- Bugfix: (ET) Work item 6940 - Cannot Lock Cells using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7621 - Incorrect cell protection values found when using Excel5 reader +- Bugfix: (ET) Work item 7623 - Default row height not working above highest row using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7637 - Default column width does not get applied when using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7642 - Broken support for UTF-8 string formula results in PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 7643 - UTF-8 sheet names not working with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7631 - getCalculatedValue() with ISNONTEXT function causes script to stop +- Bugfix: (ET) Work item 7652 - Missing BIFF3 functions in PHPExcel_Writer_Excel5: USDOLLAR (YEN), FINDB, SEARCHB, REPLACEB, LEFTB, RIGHTB, MIDB, LENB, ASC, DBCS (JIS) +- Bugfix: (ET) Work item 7663 - Excel5 reader doesn't read numbers correctly in 64-bit systems +- Bugfix: (ET) Work item 7667 - Missing BIFF5 functions in PHPExcel_Writer_Excel5: ISPMT, DATEDIF, DATESTRING, NUMBERSTRING +- Bugfix: (ET) Work item 7668 - Missing BIFF8 functions in PHPExcel_Writer_Excel5: GETPIVOTDATA, HYPERLINK, PHONETIC, AVERAGEA, MAXA, MINA, STDEVPA, VARPA, STDEVA, VARA +- Bugfix: (MB) Work item 7657 - Wrong host value in PHPExcel_Shared_ZipStreamWrapper::stream_open() +- Bugfix: (ET) Work item 7676 - PHPExcel_Reader_Excel5 not reading explicitly entered error types in cells +- Bugfix: (ET) Work item 7678 - Boolean and error data types not preserved for formula results in PHPExcel_Reader_Excel5 +- Bugfix: (MB) Work item 7695 - PHPExcel_Reader_Excel2007 ignores cell data type +- Bugfix: (ET) Work item 7712 - PHPExcel_Reader_Excel5 ignores cell data type +- Bugfix: (ET) Work item 7587 - PHPExcel_Writer_Excel5 not aware of data type +- Bugfix: (ET) Work item 7713 - Long strings sometimes truncated when using PHPExcel_Reader_Excel5 +- Bugfix: (ET) Work item 7727 - Direct entry of boolean or error type in cell not supported by PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 7714 - PHPExcel_Reader_Excel2007: Error reading cell with data type string, date number format, and numeric-like cell value +- Bugfix: (ET) Work item 7735 - Row and column outlines (group indent level) not showing after using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7737 - Missing UTF-8 support in number format codes for PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7750 - Missing UTF-8 support with PHPExcel_Writer_Excel5 for explicit string in formula +- Bugfix: (MB) Work item 7726 - Problem with class constants in PHPExcel_Style_NumberFormat +- Bugfix: (ET) Work item 7758 - Sometimes errors with PHPExcel_Reader_Excel5 reading hyperlinks +- Bugfix: (ET) Work item 7759 - Hyperlink in cell always results in string data type when using PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7771 - Excel file with blank sheet seen as broken in MS Office Excel 2007 when created by PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7785 - PHPExcel_Reader_Excel5: Incorrect reading of formula with explicit string containing (escaped) double-quote +- Bugfix: (MB) Work item 7787 - getCalculatedValue() fails on formula with sheet name containing (escaped) single-quote +- Bugfix: (MB) Work item 7786 - getCalculatedValue() fails on formula with explicit string containing (escaped) double-quote +- Bugfix: (MB) Work item 7780 - Problems with simultaneous repeatRowsAtTop and repeatColumnsAtLeft using Excel2007 reader and writer +- Bugfix: (ET) Work item 7802 - PHPExcel_Reader_Excel5: Error reading formulas with sheet reference containing special characters +- Bugfix: (ET) Work item 7831 - Off-sheet references sheet!A1 not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7834 - Repeating rows/columns (print titles), print area not working with PHPExcel_Writer_Excel5 +- Bugfix: (ET) Work item 7849 - Formula having datetime number format shows as text when using PHPExcel_Writer_Excel5 +- Bugfix: (MBaker) Work item 7863 - Cannot set formula to hidden using applyFromArray() +- Bugfix: (MBaker) Work item 7805 - HTML/PDF Writers limited to 26 columns by calculateWorksheetDimension (erroneous comparison in getHighestColumn() method) +- Bugfix: (MB) Work item 7873 - Formula returning error type is lost when read by PHPExcel_Reader_Excel2007 +- Bugfix: (ET) Work item 7883 - PHPExcel_Reader_Excel5: Cell style lost for last column in group of blank cells +- Bugfix: (MB) Work item 7886 - Column width sometimes collapses to auto size using Excel2007 reader/writer +- Bugfix: (MB) Work item 9343 - Data Validation Formula = 0 crashes Excel + + +2008/08/25 (v1.6.3): +- Bugfix: (MBaker) Work item 7367 - Modified PHPExcel_Shared_Date::PHPToExcel() to force UTC +- General: (MB) Applied patch 1629 +- General: (MB) Applied patch 1644 +- General: (MB) Work item 6485 - Implement repeatRow and repeatColumn in Excel5 writer +- General: (MB) Work item 6838 - Remove scene3d filter in Excel2007 drawing +- Feature: (MBaker) Work item 2346 - Implement CHOOSE and INDEX Lookup/Reference Functions +- Feature: (MBaker) Work item 2346 - Implement CLEAN Text Functions +- Feature: (MBaker) Work item 2346 - Implement YEARFRAC Date/Time Functions +- Feature: (MB) Work item 6508 - Implement 2 options for print/show gridlines +- Feature: (MB) Work item 7270 - Add VLOOKUP function (contribution) +- Feature: (MB) Work item 7182 - Implemented: ShrinkToFit +- Feature: (MB) Work item 7218 - Row heights not updated correctly when inserting new rows +- Feature: (MB) Work item 7157 - Copy worksheets within the same workbook +- Feature: (ET) Work item 7290 - Excel5 reader style support: horizontal and vertical alignment plus text wrap +- Feature: (ET) Work item 7294 - Excel5 reader support for merged cells +- Feature: (ET) Work item 7296 - Excel5 reader: Sheet Protection +- Feature: (ET) Work item 7297 - Excel5 reader: Password for sheet protection +- Feature: (ET) Work item 7299 - Excel5 reader: Column width +- Feature: (ET) Work item 7301 - Excel5 reader: Row height +- Feature: (ET) Work item 7304 - Excel5 reader: Font support +- Feature: (ET) Work item 7324 - Excel5 reader: support for locked cells +- Feature: (ET) Work item 7330 - Excel5 reader style support: Fill (background colors and patterns) +- Feature: (ET) Work item 7332 - Excel5 reader style support: Borders (style and color) +- Feature: (ET) Work item 7346 - Excel5 reader: Rich-Text support +- Feature: (MB) Work item 7313 - Read Excel built-in number formats with Excel 2007 reader +- Feature: (ET) Work item 7317 - Excel5 reader: Number format support +- Feature: (MB) Work item 7362 - Creating a copy of PHPExcel object +- Feature: (ET) Work item 7373 - Excel5 reader: support for row / column outline (group) +- Feature: (MB) Work item 7380 - Implement default row/column sizes +- Feature: (MB) Work item 7364 - Writer HTML - option to return styles and table separately +- Feature: (ET) Work item 7393 - Excel5 reader: Support for remaining built-in number formats +- Bugfix: (MBaker) Fixed rounding in HOUR MINUTE and SECOND Time functions, and improved performance for these +- Bugfix: (MBaker) Fix to TRIM function +- Bugfix: (MBaker) Fixed range validation in TIME Functions.php +- Bugfix: (MBaker) EDATE and EOMONTH functions now return date values based on the returnDateType flag +- Bugfix: (MBaker) Write date values that are the result of a calculation function correctly as Excel serialized dates rather than PHP serialized date values +- Bugfix: (MB) Work item 6690 - Excel2007 reader not always reading boolean correctly +- Bugfix: (MB) Work item 6275 - Columns above IZ +- Bugfix: (MB) Work item 6853 - Other locale than English causes Excel2007 writer to produce broken xlsx +- Bugfix: (MB) Work item 7061 - Typo: Number_fromat in NumberFormat.php +- Bugfix: (MB) Work item 6865 - Bug in Worksheet_BaseDrawing setWidth() +- Bugfix: (MB) Work item 6891 - PDF writer collapses column width for merged cells +- Bugfix: (MB) Work item 6867 - Issues with drawings filenames +- Bugfix: (MB) Work item 7073 - fromArray() local variable isn't defined +- Bugfix: (MB) Work item 7276 - PHPExcel_Writer_Excel5->setTempDir() not passed to all classes involved in writing to a file +- Bugfix: (MB) Work item 7277 - Excel5 reader not handling UTF-8 properly +- Bugfix: (MB) Work item 7327 - If you write a 0 value in cell, cell shows as empty +- Bugfix: (MB) Work item 7302 - Excel2007 writer: Row height ignored for empty rows +- Bugfix: (MB) Work item 7281 - Excel2007 (comments related error) +- Bugfix: (MB) Work item 7345 - Column width in other locale +- Bugfix: (MB) Work item 7347 - Excel2007 reader not reading underlined Rich-Text +- Bugfix: (ET) Work item 7357 - Excel5 reader converting booleans to strings +- Bugfix: (MB) Work item 7365 - Recursive Object Memory Leak +- Bugfix: (MB) Work item 7372 - Excel2007 writer ignoring row dimensions without cells +- Bugfix: (ET) Work item 7382 - Excel5 reader is converting formatted numbers / dates to strings + + +2008/06/23 (v1.6.2): +- General: (MB) Work item 6088 - Document style array values +- General: (MB) Applied patch 1195 +- General: (MB) Work item 6178 - Redirecting output to a client’s web browser - http headers +- General: (MB) Work item 6187 - Improve worksheet garbage collection +- General: (MBaker) Functions that return date values can now be configured to return as Excel serialized date/time, PHP serialized date/time, or a PHP date/time object. +- General: (MBaker) Functions that explicitly accept dates as parameters now permit values as Excel serialized date/time, PHP serialized date/time, a valid date string, or a PHP date/time object. +- General: (MBaker) Implement ACOSH, ASINH and ATANH functions for those operating platforms/PHP versions that don't include these functions +- General: (MBaker) Implement ATAN2 logic reversing the arguments as per Excel +- General: (MBaker) Additional validation of parameters for COMBIN +- General: (MBaker) Fixed validation for CEILING and FLOOR when the value and significance parameters have different signs; and allowed default value of 1 or -1 for significance when in GNUMERIC compatibility mode +- Feature: (MBaker) Work item 2346 - Implement ADDRESS, ISLOGICAL, ISTEXT and ISNONTEXT functions +- Feature: (MBaker) Work item 2346 - Implement COMPLEX, IMAGINARY, IMREAL, IMARGUMENT, IMCONJUGATE, IMABS, IMSUB, IMDIV, IMSUM, IMPRODUCT, IMSQRT, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER IMCOS and IMSIN Engineering functions +- Feature: (MBaker) Work item 2346 - Implement NETWORKDAYS and WORKDAY Date/Time functions +- Feature: (MB) Work item 6100 - Make cell column AAA available +- Feature: (MB) Work item 6095 - Mark particular cell as selected when opening Excel +- Feature: (MB) Work item 6120 - Multiple sheets in PDF and HTML +- Feature: (MB) Work item 6227 - Implement PHPExcel_ReaderFactory and PHPExcel_WriterFactory +- Feature: (MB) Work item 6249 - Set image root of PHPExcel_Writer_HTML +- Feature: (MB) Work item 6264 - Enable/disable calculation cache +- Feature: (MB) Work item 6259 - PDF writer and multi-line text +- Feature: (MB) Work item 6350 - Feature request - setCacheExpirationTime() +- Feature: (JB) Work item 6370 - Implement late-binding mechanisms to reduce memory footprint +- Feature: (JB) Work item 6430 - Implement shared styles +- Feature: (MB) Work item 6391 - Copy sheet from external Workbook to active Workbook +- Feature: (MB) Work item 6428 - Functions in Conditional Formatting +- Bugfix: (MB) Work item 6096 - Default Style in Excel5 +- Bugfix: (MB) Work item 6150 - Numbers starting with '+' cause Excel 2007 errors +- Bugfix: (MB) Work item 6092 - ExcelWriter5 is not PHP5 compatible, using it with E_STRICT results in a bunch of errors (applied patches) +- Bugfix: (MB) Work item 6179 - Error Reader Excel2007 line 653 foreach ($relsDrawing->Relationship as $ele) +- Bugfix: (MB) Work item 6229 - Worksheet toArray() screws up DATE +- Bugfix: (MB) Work item 6253 - References to a Richtext cell in a formula +- Bugfix: (MB) Work item 6285 - insertNewColumnBefore Bug +- Bugfix: (MB) Work item 6319 - Error reading Excel2007 file with shapes +- Bugfix: (MBaker) Work item 6302 - Determine whether date values need conversion from PHP dates to Excel dates before writing to file, based on the data type (float or integer) +- Bugfix: (MBaker) Fixes to DATE function when it is given negative input parameters +- Bugfix: (MB) Work item 6347 - PHPExcel handles empty cells other than Excel +- Bugfix: (MB) Work item 6348 - PHPExcel handles 0 and "" as being the same +- Bugfix: (MB) Work item 6357 - Problem Using Excel2007 Reader for Spreadsheets containing images +- Bugfix: (MB) Work item 6359 - ShowGridLines ignored when reading/writing Excel 2007 +- Bugfix: (MB) Work item 6426 - Bug With Word Wrap in Excel 2007 Reader + + +2008/04/28 (v1.6.1): +- General: (MB) Work item 5532 - Fix documentation printing +- General: (MB) Work item 5586 - Memory usage improvements +- General: (MB) Applied patch 990 +- General: (MB) Applied patch 991 +- Feature: (BM) Work item 2841 - Implement PHPExcel_Reader_Excel5 +- Feature: (MB) Work item 5564 - Implement "toArray" and "fromArray" method +- Feature: (MB) Work item 5665 - Read shared formula +- Feature: (MB) Work item 5681 - Read image twoCellAnchor +- Feature: (MB) Work item 4446 - &G Image as bg for headerfooter +- Feature: (MB) Work item 5834 - Implement page layout functionality for Excel5 format +- Feature: (MB) Work item 6039 - Feature request: PHPExcel_Writer_PDF +- Bugfix: (MB) Work item 5517 - DefinedNames null check +- Bugfix: (MB) Work item 5463 - Hyperlinks should not always have trailing slash +- Bugfix: (MB) Work item 5592 - Saving Error - Uncaught exception (#REF! named range) +- Bugfix: (MB) Work item 5634 - Error when creating Zip file on Linux System (Not Windows) +- Bugfix: (MB) Work item 5876 - Time incorrecly formated +- Bugfix: (MB) Work item 5914 - Conditional formatting - second rule not applied +- Bugfix: (MB) Work item 5978 - PHPExcel_Reader_Excel2007 cannot load PHPExcel_Shared_File +- Bugfix: (MB) Work item 6020 - Output redirection to web browser + + +2008/02/14 (v1.6.0): +- General: (MB) Work item 3156 - Use PHPExcel datatypes in formula calculation +- Feature: (MB) Work item 5019 - Center on page when printing +- Feature: (MB) Work item 5099 - Hyperlink to other spreadsheet +- Feature: (MB) Work item 5104 - Set the print area of a worksheet +- Feature: (MB) Work item 5118 - Read "definedNames" property of worksheet +- Feature: (MB) Work item 5338 - Set default style for all cells +- Feature: (MB) Work item 4216 - Named Ranges +- Feature: (MB) Work item 5398 - Implement worksheet references (Sheet1!A1) +- Bugfix: (MB) Work item 4967 - Redirect output to a client's web browser +- Bugfix: (MB) Work item 5008 - "File Error: data may have been lost." seen in Excel 2007 and Excel 2003 SP3 when opening XLS file +- Bugfix: (MB) Work item 5165 - Bug in style's getHashCode() +- Bugfix: (MB) Work item 5165 - PHPExcel_Reader not correctly reading numeric values +- Bugfix: (MB) Work item 5324 - Text rotation is read incorrectly +- Bugfix: (MB) Work item 5326 - Enclosure " and data " result a bad data : \" instead of "" +- Bugfix: (MB) Work item 5332 - Formula parser - IF statement returning array instead of scalar +- Bugfix: (MB) Work item 5351 - setFitToWidth(nbpage) & setFitToWidth(nbpage) work partially +- Bugfix: (MB) Work item 5361 - Worksheet::setTitle() causes unwanted renaming +- Bugfix: (MB) Work item 5407 - Hyperlinks not working. Results in broken xlsx file. + + +2007/12/24 (v1.5.5): +- General: (MB) Work item 4135 - Grouping Rows +- General: (MB) Work item 4427 - Semi-nightly builds +- Feature: (MB) Work item 3155 - Implement "date" datatype +- Feature: (MB) Work item 4150 - Date format not honored in CSV writer +- Feature: (MB) Work item 4199 - RichText and sharedStrings +- Feature: (MB) Work item 2346 - Implement more Excel calculation functions + - Addition of DATE, DATEDIF, DATEVALUE, DAY, DAYS360 +- Feature: (MBaker) Work item 2346 - Implement more Excel calculation functions + - Addition of AVEDEV, HARMEAN and GEOMEAN + - Addition of the BINOMDIST (Non-cumulative only), COUNTBLANK, EXPONDIST, FISHER, FISHERINV, NORMDIST, NORMSDIST, PERMUT, POISSON (Non-cumulative only) and STANDARDIZE Statistical Functions + - Addition of the CEILING, COMBIN, EVEN, FACT, FACTDOUBLE, FLOOR, MULTINOMIAL, ODD, ROUNDDOWN, ROUNDUP, SIGN, SQRTPI and SUMSQ Mathematical Functions + - Addition of the NORMINV, NORMSINV, CONFIDENCE and SKEW Statistical Functions + - Addition of the CRITBINOM, HYPGEOMDIST, KURT, LOGINV, LOGNORMDIST, NEGBINOMDIST and WEIBULL Statistical Functions + - Addition of the LARGE, PERCENTILE, QUARTILE, SMALL and TRIMMEAN Statistical Functions + - Addition of the BIN2HEX, BIN2OCT, DELTA, ERF, ERFC, GESTEP, HEX2BIN, HEX2DEC, HEX2OCT, OCT2BIN and OCT2HEX Engineering Functions + - Addition of the CHIDIST, GAMMADIST and GAMMALN Statistical Functions + - Addition of the GCD, LCM, MROUND and SUBTOTAL Mathematical Functions + - Addition of the LOWER, PROPER and UPPER Text Functions + - Addition of the BETADIST and BETAINV Statistical Functions + - Addition of the CHIINV and GAMMAINV Statistical Functions + - Addition of the SERIESSUM Mathematical Function + - Addition of the CHAR, CODE, FIND, LEN, REPT, SEARCH, T, TRIM Text Functions + - Addition of the FALSE and TRUE Boolean Functions + - Addition of the TDIST and TINV Statistical Functions + - Addition of the EDATE, EOMONTH, YEAR, MONTH, TIME, TIMEVALUE, HOUR, MINUTE, SECOND, WEEKDAY, WEEKNUM, NOW, TODAY and Date/Time Function + - Addition of the BESSELI, BESSELJ, BESSELK and BESSELY Engineering Functions + - Addition of the SLN and SYD Financial Functions + - reworked MODE calculation to handle floating point numbers + - Improved error trapping for invalid input values + - Fix to SMALL, LARGE, PERCENTILE and TRIMMEAN to eliminate non-numeric values + - Added CDF to BINOMDIST and POISSON + - Fix to a potential endless loop in CRITBINOM, together with other bugfixes to the algorithm + - Fix to SQRTPI so that it will work with a real value parameter rather than just integers + - Trap for passing negative values to FACT + - Improved accuracy of the NORMDIST cumulative function, and of the ERF and ERFC functions + - Replicated Excel data-type and error handling for BIN, DEC, OCT and HEX conversion functions + - Replicated Excel data-type and error handling for AND and OR Boolean functions + - Bugfix to MROUND + - Rework of the DATE, DATEVALUE, DAY, DAYS360 and DATEDIF date/Time functions to use Excel dates rather than straight PHP dates + - Rework of the AND, OR Boolean functions to ignore string values + - Rework of the BIN2DEC, BIN2HEX, BIN2OCT, DEC2BIN, DEC2HEX, DEC2OCT Engineering functions to handle two's complement + - Excel, Gnumeric and OpenOffice Calc compatibility flag for functions + Note, not all functions have yet been written to work with the Gnumeric and OpenOffice Calc compatibility flags + - 1900 or 1904 Calendar flag for date functions + - Reworked ExcelToPHP date method to handle the Excel 1900 leap year + Note that this will not correctly return values prior to 13-Dec-1901 20:45:52 as this is the minimum value that PHP date serial values can handle. If you need to work with dates prior to this, then an ExcelToPHPObject method has been added which will work correctly with values between Excel's 1900 calendar base date of 1-Jan-1900, and 13-Dec-1901 + - Addition of ExcelToPHPObject date method to return a PHP DateTime object from an Excel date serial value + - PHPToExcel method modified to accept either PHP date serial numbers or PHP DateTime objects + - Addition of FormattedPHPToExcel which will accept a date and time broken to into year, month, day, hour, minute, second and return an Excel date serial value +- Feature: (MB) Work item 4485 - Control characters in Excel 2007 +- Feature: (MB) Work item 4796 - BaseDrawing::setWidthAndHeight method request +- Feature: (MB) Work item 4798 - Page Setup -> Print Titles -> Sheet -> 'Rows to repeat at top' +- Feature: (MB) Work item 4433 - Comment functionality +- Bugfix: (MB) Work item 4124 - Undefined variable in PHPExcel_Writer_Serialized +- Bugfix: (MB) Work item 4125 - Notice: Object of class PHPExcel_RichText could not be converted to int +- Bugfix: (MB) Work item 4126 - Excel5Writer: utf8 string not converted to utf16 +- Bugfix: (MB) Work item 4180 - PHPExcel_RichText and autosize +- Bugfix: (MB) Work item 4574 - Excel5Writer produces broken xls files after change mentioned in work item 4126 +- Bugfix: (MB) Work item 4797 - Small bug in PHPExcel_Reader_Excel2007 function _readStyle + + +2007/10/23 (v 1.5.0): +- General: (MB) Work item 3265 - Refactor PHPExcel Drawing +- Feature: (CS) Work item 3079 - Update Shared/OLE.php to latest version from PEAR +- Feature: (MB) Work item 3217 - Excel2007 vs Excel2003 compatibility pack +- Feature: (MB) Work item 3234 - Cell protection (lock/unlock) +- Feature: (MB) Work item 3543 - Create clickable links (hyperlinks) +- Feature: (MB) Work item 3241 - Additional page setup parameters +- Feature: (MB) Work item 3300 - Make temporary file path configurable (Excel5) +- Feature: (MB) Work item 3306 - Small addition to applyFromArray for font +- Feature: (MB) Work item 3373 - Better feedback when save of file is not possible +- Bugfix: (MB) Work item 3181 - Text Rotation +- Bugfix: (MB) Work item 3237 - Small bug in Page Orientation +- Bugfix: (MB) Work item 3812 - insertNewColumnBeforeByColumn undefined +- Bugfix: (MB) Work item 3893 - Sheet references not working in formula (Excel5 Writer) + + +2007/08/23 (v 1.4.5): +- General: (MB) Work item 3003 - Class file endings +- General: (MB) Work item 3081 - Different calculation engine improvements +- General: (MB) Work item 3082 - Different improvements in PHPExcel_Reader_Excel2007 +- General: (MB) Work item 3146 - Set XML indentation in PHPExcel_Writer_Excel2007 +- Feature: (MB) Work item 3159 - Optionally store temporary Excel2007 writer data in file instead of memory +- Feature: (MB) Work item 3063 - Implement show/hide gridlines +- Feature: (MB) Work item 3064 - Implement option to read only data +- Feature: (MB) Work item 3080 - Optionally disable formula precalculation +- Feature: (MB) Work item 3154 - Explicitly set cell datatype +- Feature: (MBaker) Work item 2346 - Implement more Excel calculation functions + - Addition of MINA, MAXA, COUNTA, AVERAGEA, MEDIAN, MODE, DEVSQ, STDEV, STDEVA, STDEVP, STDEVPA, VAR, VARA, VARP and VARPA Excel Functions + - Fix to SUM, PRODUCT, QUOTIENT, MIN, MAX, COUNT and AVERAGE functions when cell contains a numeric value in a string datatype, bringing it in line with MS Excel behaviour +- Bugfix: (MB) Work item 2881 - File_exists on ZIP fails on some installations +- Bugfix: (MB) Work item 2879 - Argument in textRotation should be -90..90 +- Bugfix: (MB) Work item 2883 - Excel2007 reader/writer not implementing OpenXML/SpreadsheetML styles 100% correct +- Bugfix: (MB) Work item 2513 - Active sheet index not read/saved +- Bugfix: (MB) Work item 2935 - Print and print preview of generated XLSX causes Excel2007 to crash +- Bugfix: (MB) Work item 2952 - Error in Calculations - COUNT() function +- Bugfix: (MB) Work item 3002 - HTML and CSV writer not writing last row +- Bugfix: (MB) Work item 3017 - Memory leak in Excel5 writer +- Bugfix: (MB) Work item 3044 - Printing (PHPExcel_Writer_Excel5) +- Bugfix: (MB) Work item 3046 - Problems reading zip:// +- Bugfix: (MB) Work item 3047 - Error reading conditional formatting +- Bugfix: (MB) Work item 3067 - Bug in Excel5 writer (storePanes) +- Bugfix: (MB) Work item 3077 - Memory leak in PHPExcel_Style_Color + + +2007/07/23 (v 1.4.0): +- General: (MB) Work item 2687 - Coding convention / code cleanup +- General: (MB) Work item 2717 - Use set_include_path in tests +- General: (MB) Work item 2812 - Move PHPExcel_Writer_Excel5 OLE to PHPExcel_Shared_OLE +- Feature: (MB) Work item 2679 - Hide/Unhide Column or Row +- Feature: (MB) Work item 2271 - Implement multi-cell styling +- Feature: (MB) Work item 2720 - Implement CSV file format (reader/writer) +- Feature: (MB) Work item 2845 - Implement HTML file format +- Bugfix: (MB) Work item 2513 - Active sheet index not read/saved +- Bugfix: (MB) Work item 2678 - Freeze Panes with PHPExcel_Writer_Excel5 +- Bugfix: (MB) Work item 2680 - OLE.php +- Bugfix: (MB) Work item 2736 - Copy and pasting multiple drop-down list cells breaks reader +- Bugfix: (MB) Work item 2775 - Function setAutoFilterByColumnAndRow takes wrong arguments +- Bugfix: (MB) Work item 2858 - Simplexml_load_file fails on ZipArchive + + +2007/06/27 (v 1.3.5): +- General: (MB) Work item 15 - Documentation +- Feature: (JV) PHPExcel_Writer_Excel5 +- Feature: (JV) PHPExcel_Reader_Excel2007: Image shadows +- Feature: (MB) Work item 2385 - Data validation +- Feature: (MB) Work item 187 - Implement richtext strings +- Bugfix: (MB) Work item 2443 - Empty relations when adding image to any sheet but the first one +- Bugfix: (MB) Work item 2536 - Excel2007 crashes on print preview + + +2007/06/05 (v 1.3.0): +- General: (MB) Work item 1942 - Create PEAR package +- General: (MB) Work item 2331 - Replace *->duplicate() by __clone() +- Feature: (JV) PHPExcel_Reader_Excel2007: Column auto-size, Protection, Merged cells, Wrap text, Page breaks, Auto filter, Images +- Feature: (MB) Work item 245 - Implement "freezing" panes +- Feature: (MB) Work item 2273 - Cell addressing alternative +- Feature: (MB) Work item 2270 - Implement cell word-wrap attribute +- Feature: (MB) Work item 2282 - Auto-size column +- Feature: (MB) Work item 241 - Implement formula calculation +- Feature: (MB) Work item 2375 - Insert/remove row/column +- Bugfix: (MB) Work item 1931 - PHPExcel_Worksheet::getCell() should not accept absolute coordinates +- Bugfix: (MB) Work item 2272 - Cell reference without row number +- Bugfix: (MB) Work item 2276 - Styles with same coordinate but different worksheet +- Bugfix: (MB) Work item 2290 - PHPExcel_Worksheet->getCellCollection() usort error +- Bugfix: (SS) Work item 2353 - Bug in PHPExcel_Cell::stringFromColumnIndex +- Bugfix: (JV) Work item 2353 - Reader: numFmts can be missing, use cellStyleXfs instead of cellXfs in styles + + +2007/04/26 (v 1.2.0): +- General: (MB) Stringtable attribute "count" not necessary, provides wrong info to Excel sometimes... +- General: (MB) Updated tests to address more document properties +- General: (MB) Some refactoring in PHPExcel_Writer_Excel2007_Workbook +- General: (MB) New package: PHPExcel_Shared +- General: (MB) Password hashing algorithm implemented in PHPExcel_Shared_PasswordHasher +- General: (MB) Moved pixel conversion functions to PHPExcel_Shared_Drawing +- General: (MB) Work item 244 - Switch over to LGPL license +- General: (MB) Work item 5 - Include PHPExcel version in file headers +- Feature: (MB) Work item 6 - Autofilter +- Feature: (MB) Work item 7 - Extra document property: keywords +- Feature: (MB) Work item 8 - Extra document property: category +- Feature: (MB) Work item 9 - Document security +- Feature: (MB) Work item 10 - PHPExcel_Writer_Serialized and PHPExcel_Reader_Serialized +- Feature: (MB) Work item 11 - Alternative syntax: Addressing a cell +- Feature: (MB) Work item 12 - Merge cells +- Feature: (MB) Work item 13 - Protect ranges of cells with a password +- Bugfix: (JV) Work item 14 - (style/fill/patternFill/fgColor or bgColor can be empty) + + +2007/03/26 (v 1.1.1): +- Bugfix: (MB) Work item 1250 - Syntax error in "Classes/PHPExcel/Writer/Excel2007.php" on line 243 +- General: (MB) Work item 1282 - Reader should check if file exists and throws an exception when it doesn't + + +2007/03/22 (v 1.1.0): +- Changed filenames of tests +- Bugfix: (MB) Work item 836 - Style information lost after passing trough Excel2007_Reader +- Bugfix: (MB) Work item 913 - Number of columns > AZ fails fixed in PHPExcel_Cell::columnIndexFromString +- General: (MB) Added a brief file with installation instructions +- Feature: (MB) Page breaks (horizontal and vertical) +- Feature: (MB) Image shadows + + + +2007/02/22 (v 1.0.0): +- Changelog now includes developer initials +- Bugfix: (JV) PHPExcel->removeSheetByIndex now re-orders sheets after deletion, so no array indexes are lost +- Bugfix: (JV) PHPExcel_Writer_Excel2007_Worksheet::_writeCols() used direct assignment to $pSheet->getColumnDimension('A')->Width instead of $pSheet->getColumnDimension('A')->setWidth() +- Bugfix: (JV) DocumentProperties used $this->LastModifiedBy instead of $this->_lastModifiedBy. +- Bugfix: (JV) Only first = should be removed when writing formula in PHPExcel_Writer_Excel2007_Worksheet. +- General: (JV) Consistency of method names to camelCase +- General: (JV) Updated tests to match consistency changes +- General: (JV) Detection of mime-types now with image_type_to_mime_type() +- General: (JV) Constants now hold string value used in Excel 2007 +- General: (MB) Fixed folder name case (WorkSheet -> Worksheet) +- Feature: (MB) PHPExcel classes (not the Writer classes) can be duplicated, using a duplicate() method. +- Feature: (MB) Cell styles can now be duplicated to a range of cells using PHPExcel_Worksheet->duplicateStyle() +- Feature: (MB) Conditional formatting +- Feature: (JV) Reader for Excel 2007 (not supporting full specification yet!) + + + +2007/01/31 (v 1.0.0 RC): +- Project name has been changed to PHPExcel +- Project homepage is now http://www.codeplex.com/PHPExcel +- Started versioning at number: PHPExcel 1.0.0 RC + + + +2007/01/22: +- Fixed some performance issues on large-scale worksheets (mainly loops vs. indexed arrays) +- Performance on creating StringTable has been increased +- Performance on writing Excel2007 worksheet has been increased + + + +2007/01/18: +- Images can now be rotated +- Fixed bug: When drawings have full path specified, no mime type can be deducted +- Fixed bug: Only one drawing can be added to a worksheet + + + +2007/01/12: +- Refactoring of some classes to use ArrayObject instead of array() +- Cell style now has support for number format (i.e. #,##0) +- Implemented embedding images + + + +2007/01/02: +- Cell style now has support for fills, including gradient fills +- Cell style now has support for fonts +- Cell style now has support for border colors +- Cell style now has support for font colors +- Cell style now has support for alignment + + + +2006/12/21: +- Support for cell style borders +- Support for cell styles +- Refactoring of Excel2007 Writer into multiple classes in package SpreadSheet_Writer_Excel2007 +- Refactoring of all classes, changed public members to public properties using getter/setter +- Worksheet names are now unique. On duplicate worksheet names, a number is appended. +- Worksheet now has parent SpreadSheet object +- Worksheet now has support for page header and footer +- Worksheet now has support for page margins +- Worksheet now has support for page setup (only Paper size and Orientation) +- Worksheet properties now accessible by using getProperties() +- Worksheet now has support for row and column dimensions (height / width) +- Exceptions thrown have a more clear description + + + +Initial version: +- Create a Spreadsheet object +- Add one or more Worksheet objects +- Add cells to Worksheet objects +- Export Spreadsheet object to Excel 2007 OpenXML format +- Each cell supports the following data formats: string, number, formula, boolean. \ No newline at end of file diff --git a/site/config/PHPExcel/install.txt b/site/config/PHPExcel/install.txt new file mode 100644 index 0000000..e52bcda --- /dev/null +++ b/site/config/PHPExcel/install.txt @@ -0,0 +1,75 @@ +************************************************************************************** +* PHPExcel +* +* Copyright (c) 2006 - 2011 PHPExcel +* +* 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 library 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 GNU Lesser General Public +* License along with this library; if not, write to the Free Software +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +* +* @copyright Copyright (c) 2006 - 2012 PHPExcel (http://www.codeplex.com/PHPExcel) +* @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL +* @version 1.7.8, 2012-10-12 +************************************************************************************** + +Requirements +------------ + +The following requirements should be met prior to using PHPExcel: +* PHP version 5.2.0 or higher +* PHP extension php_zip enabled *) +* PHP extension php_xml enabled +* PHP extension php_gd2 enabled (if not compiled in) + +*) php_zip is only needed by PHPExcel_Reader_Excel2007, PHPExcel_Writer_Excel2007, + PHPExcel_Reader_OOCalc. In other words, if you need PHPExcel to handle .xlsx or .ods + files you will need the zip extension, but otherwise not. + + + +Installation instructions +------------------------- + +Installation is quite easy: copy the contents of the Classes folder to any location +in your application required. + +Example: + +If your web root folder is /var/www/ you may want to create a subfolder called +/var/www/Classes/ and copy the files into that folder so you end up with files: + +/var/www/Classes/PHPExcel.php +/var/www/Classes/PHPExcel/Calculation.php +/var/www/Classes/PHPExcel/Cell.php +... + + + +Getting started +--------------- + +A good way to get started is to run some of the tests included in the download. +Copy the "Tests" folder next to your "Classes" folder from above so you end up with: + +/var/www/Tests/01simple.php +/var/www/Tests/02types.php +... + +Start running the test by pointing your browser to the test scripts: + +http://example.com/Tests/01simple.php +http://example.com/Tests/02types.php +... + +Note: It may be necessary to modify the include/require statements at the beginning of +each of the test scripts if your "Classes" folder from above is named differently. diff --git a/site/config/PHPExcel/license.txt b/site/config/PHPExcel/license.txt new file mode 100644 index 0000000..57b74d4 --- /dev/null +++ b/site/config/PHPExcel/license.txt @@ -0,0 +1,345 @@ +GNU LESSER GENERAL PUBLIC LICENSE + + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 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". + + 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. + + 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".) + + "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. + + 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 +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. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + 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. + + 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. + + (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.) + +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. + +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. + +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. + + 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. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 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. + + 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. + + 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. + + 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. + + 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. + + 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.) + + 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. + + 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: + + 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.) + + 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. + + 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. + + 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. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + 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. + + 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: + + 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. + + 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. + + 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. + + 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. + + 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 +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 +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. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 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. + + 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 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. + +NO WARRANTY + + 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. + + 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. + +END OF TERMS AND CONDITIONS \ No newline at end of file diff --git a/site/config/_notes/dwsync.xml b/site/config/_notes/dwsync.xml new file mode 100644 index 0000000..ec0d3fe --- /dev/null +++ b/site/config/_notes/dwsync.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="config.inc.php" server="62.244.88.21/deciday_18/" local="131823586249529282" remote="131823514200000000" Dst="2" /> +<file name="lib.inc.php" server="62.244.88.21/deciday_18/" local="131823629815525534" remote="131823557400000000" Dst="2" /> +<file name="class.phpmailer.php" server="62.244.88.21/deciday_18/" local="131811237724758629" remote="131824142400000000" Dst="2" /> +<file name="lib_personal_PhPExcel.php" server="62.244.88.21/deciday_18/" local="131568704171038223" remote="131825945400000000" Dst="2" /> +<file name="lib.inc.php" server="62.244.88.21/deciday/" local="131923005725875213" remote="131922969600000000" Dst="1" /> +<file name="config.inc.php" server="62.244.88.21/deciday/" local="131919455420643262" remote="131823586200000000" Dst="1" /> +<file name="phpmailer.settings.php" server="62.244.88.21/deciday/" local="131919458760254186" remote="131892745800000000" Dst="1" /> +<file name="class.phpmailer.php" server="62.244.88.21/deciday/" local="131919458760881912" remote="131891772000000000" Dst="1" /> +<file name="class.smtp.php" server="62.244.88.21/deciday/" local="131919461181895241" remote="131891772000000000" Dst="1" /> +<file name="lib_personal_PhPExcel.php" server="62.244.88.21/deciday/" local="131919461183541585" remote="131826017400000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/config/class.phpmailer.php b/site/config/class.phpmailer.php new file mode 100644 index 0000000..99c0d78 --- /dev/null +++ b/site/config/class.phpmailer.php @@ -0,0 +1,2826 @@ +<?php +/*~ class.phpmailer.php +.---------------------------------------------------------------------------. +| Software: PHPMailer - PHP email class | +| Version: 5.2.4 | +| Site: https://code.google.com/a/apache-extras.org/p/phpmailer/ | +| ------------------------------------------------------------------------- | +| Admin: Jim Jagielski (project admininistrator) | +| Authors: Andy Prevost (codeworxtech) codeworxtech@users.sourceforge.net | +| : Marcus Bointon (coolbru) coolbru@users.sourceforge.net | +| : Jim Jagielski (jimjag) jimjag@gmail.com | +| Founder: Brent R. Matzelle (original founder) | +| Copyright (c) 2010-2012, Jim Jagielski. All Rights Reserved. | +| Copyright (c) 2004-2009, Andy Prevost. All Rights Reserved. | +| Copyright (c) 2001-2003, Brent R. Matzelle | +| ------------------------------------------------------------------------- | +| License: Distributed under the Lesser General Public License (LGPL) | +| http://www.gnu.org/copyleft/lesser.html | +| This program is distributed in the hope that it will be useful - WITHOUT | +| ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +| FITNESS FOR A PARTICULAR PURPOSE. | +'---------------------------------------------------------------------------' +*/ + +/** + * PHPMailer - PHP email creation and transport class + * NOTE: Requires PHP version 5 or later + * @package PHPMailer + * @author Andy Prevost + * @author Marcus Bointon + * @author Jim Jagielski + * @copyright 2010 - 2012 Jim Jagielski + * @copyright 2004 - 2009 Andy Prevost + * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License + */ + +if (version_compare(PHP_VERSION, '5.0.0', '<') ) exit("Sorry, this version of PHPMailer will only run on PHP version 5 or greater!\n"); + +/** + * PHP email creation and transport class + * @package PHPMailer + */ +class PHPMailer { + + ///////////////////////////////////////////////// + // PROPERTIES, PUBLIC + ///////////////////////////////////////////////// + + /** + * Email priority (1 = High, 3 = Normal, 5 = low). + * @var int + */ + public $Priority = 3; + + /** + * Sets the CharSet of the message. + * @var string + */ + public $CharSet = 'iso-8859-1'; + + /** + * Sets the Content-type of the message. + * @var string + */ + public $ContentType = 'text/plain'; + + /** + * Sets the Encoding of the message. Options for this are + * "8bit", "7bit", "binary", "base64", and "quoted-printable". + * @var string + */ + public $Encoding = '8bit'; + + /** + * Holds the most recent mailer error message. + * @var string + */ + public $ErrorInfo = ''; + + /** + * Sets the From email address for the message. + * @var string + */ + public $From = 'root@localhost'; + + /** + * Sets the From name of the message. + * @var string + */ + public $FromName = 'Root User'; + + /** + * Sets the Sender email (Return-Path) of the message. If not empty, + * will be sent via -f to sendmail or as 'MAIL FROM' in smtp mode. + * @var string + */ + public $Sender = ''; + + /** + * Sets the Return-Path of the message. If empty, it will + * be set to either From or Sender. + * @var string + */ + public $ReturnPath = ''; + + /** + * Sets the Subject of the message. + * @var string + */ + public $Subject = ''; + + /** + * Sets the Body of the message. This can be either an HTML or text body. + * If HTML then run IsHTML(true). + * @var string + */ + public $Body = ''; + + /** + * Sets the text-only body of the message. This automatically sets the + * email to multipart/alternative. This body can be read by mail + * clients that do not have HTML email capability such as mutt. Clients + * that can read HTML will view the normal Body. + * @var string + */ + public $AltBody = ''; + + /** + * Stores the complete compiled MIME message body. + * @var string + * @access protected + */ + protected $MIMEBody = ''; + + /** + * Stores the complete compiled MIME message headers. + * @var string + * @access protected + */ + protected $MIMEHeader = ''; + + /** + * Stores the extra header list which CreateHeader() doesn't fold in + * @var string + * @access protected + */ + protected $mailHeader = ''; + + /** + * Sets word wrapping on the body of the message to a given number of + * characters. + * @var int + */ + public $WordWrap = 0; + + /** + * Method to send mail: ("mail", "sendmail", or "smtp"). + * @var string + */ + public $Mailer = 'mail'; + + /** + * Sets the path of the sendmail program. + * @var string + */ + public $Sendmail = '/usr/sbin/sendmail'; + + /** + * Determine if mail() uses a fully sendmail compatible MTA that + * supports sendmail's "-oi -f" options + * @var boolean + */ + public $UseSendmailOptions = true; + + /** + * Path to PHPMailer plugins. Useful if the SMTP class + * is in a different directory than the PHP include path. + * @var string + */ + public $PluginDir = ''; + + /** + * Sets the email address that a reading confirmation will be sent. + * @var string + */ + public $ConfirmReadingTo = ''; + + /** + * Sets the hostname to use in Message-Id and Received headers + * and as default HELO string. If empty, the value returned + * by SERVER_NAME is used or 'localhost.localdomain'. + * @var string + */ + public $Hostname = ''; + + /** + * Sets the message ID to be used in the Message-Id header. + * If empty, a unique id will be generated. + * @var string + */ + public $MessageID = ''; + + /** + * Sets the message Date to be used in the Date header. + * If empty, the current date will be added. + * @var string + */ + public $MessageDate = ''; + + ///////////////////////////////////////////////// + // PROPERTIES FOR SMTP + ///////////////////////////////////////////////// + + /** + * Sets the SMTP hosts. + * + * All hosts must be separated by a + * semicolon. You can also specify a different port + * for each host by using this format: [hostname:port] + * (e.g. "smtp1.example.com:25;smtp2.example.com"). + * Hosts will be tried in order. + * @var string + */ + public $Host = 'localhost'; + + /** + * Sets the default SMTP server port. + * @var int + */ + public $Port = 25; + + /** + * Sets the SMTP HELO of the message (Default is $Hostname). + * @var string + */ + public $Helo = ''; + + /** + * Sets connection prefix. Options are "", "ssl" or "tls" + * @var string + */ + public $SMTPSecure = ''; + + /** + * Sets SMTP authentication. Utilizes the Username and Password variables. + * @var bool + */ + public $SMTPAuth = false; + + /** + * Sets SMTP username. + * @var string + */ + public $Username = ''; + + /** + * Sets SMTP password. + * @var string + */ + public $Password = ''; + + /** + * Sets SMTP auth type. Options are LOGIN | PLAIN | NTLM (default LOGIN) + * @var string + */ + public $AuthType = ''; + + /** + * Sets SMTP realm. + * @var string + */ + public $Realm = ''; + + /** + * Sets SMTP workstation. + * @var string + */ + public $Workstation = ''; + + /** + * Sets the SMTP server timeout in seconds. + * This function will not work with the win32 version. + * @var int + */ + public $Timeout = 10; + + /** + * Sets SMTP class debugging on or off. + * @var bool + */ + public $SMTPDebug = false; + + /** + * Sets the function/method to use for debugging output. + * Right now we only honor "echo" or "error_log" + * @var string + */ + public $Debugoutput = "echo"; + + /** + * Prevents the SMTP connection from being closed after each mail + * sending. If this is set to true then to close the connection + * requires an explicit call to SmtpClose(). + * @var bool + */ + public $SMTPKeepAlive = false; + + /** + * Provides the ability to have the TO field process individual + * emails, instead of sending to entire TO addresses + * @var bool + */ + public $SingleTo = false; + + /** + * If SingleTo is true, this provides the array to hold the email addresses + * @var bool + */ + public $SingleToArray = array(); + + /** + * Provides the ability to change the generic line ending + * NOTE: The default remains '\n'. We force CRLF where we KNOW + * it must be used via self::CRLF + * @var string + */ + public $LE = "\n"; + + /** + * Used with DKIM Signing + * required parameter if DKIM is enabled + * + * domain selector example domainkey + * @var string + */ + public $DKIM_selector = ''; + + /** + * Used with DKIM Signing + * required if DKIM is enabled, in format of email address 'you@yourdomain.com' typically used as the source of the email + * @var string + */ + public $DKIM_identity = ''; + + /** + * Used with DKIM Signing + * optional parameter if your private key requires a passphras + * @var string + */ + public $DKIM_passphrase = ''; + + /** + * Used with DKIM Singing + * required if DKIM is enabled, in format of email address 'domain.com' + * @var string + */ + public $DKIM_domain = ''; + + /** + * Used with DKIM Signing + * required if DKIM is enabled, path to private key file + * @var string + */ + public $DKIM_private = ''; + + /** + * Callback Action function name. + * The function that handles the result of the send email action. + * It is called out by Send() for each email sent. + * + * Value can be: + * - 'function_name' for function names + * - 'Class::Method' for static method calls + * - array($object, 'Method') for calling methods on $object + * See http://php.net/is_callable manual page for more details. + * + * Parameters: + * bool $result result of the send action + * string $to email address of the recipient + * string $cc cc email addresses + * string $bcc bcc email addresses + * string $subject the subject + * string $body the email body + * string $from email address of sender + * @var string + */ + public $action_function = ''; //'callbackAction'; + + /** + * Sets the PHPMailer Version number + * @var string + */ + public $Version = '5.2.4'; + + /** + * What to use in the X-Mailer header + * @var string NULL for default, whitespace for None, or actual string to use + */ + public $XMailer = ''; + + ///////////////////////////////////////////////// + // PROPERTIES, PRIVATE AND PROTECTED + ///////////////////////////////////////////////// + + /** + * @var SMTP An instance of the SMTP sender class + * @access protected + */ + protected $smtp = null; + /** + * @var array An array of 'to' addresses + * @access protected + */ + protected $to = array(); + /** + * @var array An array of 'cc' addresses + * @access protected + */ + protected $cc = array(); + /** + * @var array An array of 'bcc' addresses + * @access protected + */ + protected $bcc = array(); + /** + * @var array An array of reply-to name and address + * @access protected + */ + protected $ReplyTo = array(); + /** + * @var array An array of all kinds of addresses: to, cc, bcc, replyto + * @access protected + */ + protected $all_recipients = array(); + /** + * @var array An array of attachments + * @access protected + */ + protected $attachment = array(); + /** + * @var array An array of custom headers + * @access protected + */ + protected $CustomHeader = array(); + /** + * @var string The message's MIME type + * @access protected + */ + protected $message_type = ''; + /** + * @var array An array of MIME boundary strings + * @access protected + */ + protected $boundary = array(); + /** + * @var array An array of available languages + * @access protected + */ + protected $language = array(); + /** + * @var integer The number of errors encountered + * @access protected + */ + protected $error_count = 0; + /** + * @var string The filename of a DKIM certificate file + * @access protected + */ + protected $sign_cert_file = ''; + /** + * @var string The filename of a DKIM key file + * @access protected + */ + protected $sign_key_file = ''; + /** + * @var string The password of a DKIM key + * @access protected + */ + protected $sign_key_pass = ''; + /** + * @var boolean Whether to throw exceptions for errors + * @access protected + */ + protected $exceptions = false; + + ///////////////////////////////////////////////// + // CONSTANTS + ///////////////////////////////////////////////// + + const STOP_MESSAGE = 0; // message only, continue processing + const STOP_CONTINUE = 1; // message?, likely ok to continue processing + const STOP_CRITICAL = 2; // message, plus full stop, critical error reached + const CRLF = "\r\n"; // SMTP RFC specified EOL + + ///////////////////////////////////////////////// + // METHODS, VARIABLES + ///////////////////////////////////////////////// + + /** + * Calls actual mail() function, but in a safe_mode aware fashion + * Also, unless sendmail_path points to sendmail (or something that + * claims to be sendmail), don't pass params (not a perfect fix, + * but it will do) + * @param string $to To + * @param string $subject Subject + * @param string $body Message Body + * @param string $header Additional Header(s) + * @param string $params Params + * @access private + * @return bool + */ + private function mail_passthru($to, $subject, $body, $header, $params) { + if ( ini_get('safe_mode') || !($this->UseSendmailOptions) ) { + $rt = @mail($to, $this->EncodeHeader($this->SecureHeader($subject)), $body, $header); + } else { + $rt = @mail($to, $this->EncodeHeader($this->SecureHeader($subject)), $body, $header, $params); + } + return $rt; + } + + /** + * Outputs debugging info via user-defined method + * @param string $str + */ + private function edebug($str) { + if ($this->Debugoutput == "error_log") { + error_log($str); + } else { + echo $str; + } + } + + /** + * Constructor + * @param boolean $exceptions Should we throw external exceptions? + */ + public function __construct($exceptions = false) { + $this->exceptions = ($exceptions == true); + } + + /** + * Sets message type to HTML. + * @param bool $ishtml + * @return void + */ + public function IsHTML($ishtml = true) { + if ($ishtml) { + $this->ContentType = 'text/html'; + } else { + $this->ContentType = 'text/plain'; + } + } + + /** + * Sets Mailer to send message using SMTP. + * @return void + */ + public function IsSMTP() { + $this->Mailer = 'smtp'; + } + + /** + * Sets Mailer to send message using PHP mail() function. + * @return void + */ + public function IsMail() { + $this->Mailer = 'mail'; + } + + /** + * Sets Mailer to send message using the $Sendmail program. + * @return void + */ + public function IsSendmail() { + if (!stristr(ini_get('sendmail_path'), 'sendmail')) { + $this->Sendmail = '/var/qmail/bin/sendmail'; + } + $this->Mailer = 'sendmail'; + } + + /** + * Sets Mailer to send message using the qmail MTA. + * @return void + */ + public function IsQmail() { + if (stristr(ini_get('sendmail_path'), 'qmail')) { + $this->Sendmail = '/var/qmail/bin/sendmail'; + } + $this->Mailer = 'sendmail'; + } + + ///////////////////////////////////////////////// + // METHODS, RECIPIENTS + ///////////////////////////////////////////////// + + /** + * Adds a "To" address. + * @param string $address + * @param string $name + * @return boolean true on success, false if address already used + */ + public function AddAddress($address, $name = '') { + return $this->AddAnAddress('to', $address, $name); + } + + /** + * Adds a "Cc" address. + * Note: this function works with the SMTP mailer on win32, not with the "mail" mailer. + * @param string $address + * @param string $name + * @return boolean true on success, false if address already used + */ + public function AddCC($address, $name = '') { + return $this->AddAnAddress('cc', $address, $name); + } + + /** + * Adds a "Bcc" address. + * Note: this function works with the SMTP mailer on win32, not with the "mail" mailer. + * @param string $address + * @param string $name + * @return boolean true on success, false if address already used + */ + public function AddBCC($address, $name = '') { + return $this->AddAnAddress('bcc', $address, $name); + } + + /** + * Adds a "Reply-to" address. + * @param string $address + * @param string $name + * @return boolean + */ + public function AddReplyTo($address, $name = '') { + return $this->AddAnAddress('Reply-To', $address, $name); + } + + /** + * Adds an address to one of the recipient arrays + * Addresses that have been added already return false, but do not throw exceptions + * @param string $kind One of 'to', 'cc', 'bcc', 'ReplyTo' + * @param string $address The email address to send to + * @param string $name + * @throws phpmailerException + * @return boolean true on success, false if address already used or invalid in some way + * @access protected + */ + protected function AddAnAddress($kind, $address, $name = '') { + if (!preg_match('/^(to|cc|bcc|Reply-To)$/', $kind)) { + $this->SetError($this->Lang('Invalid recipient array').': '.$kind); + if ($this->exceptions) { + throw new phpmailerException('Invalid recipient array: ' . $kind); + } + if ($this->SMTPDebug) { + $this->edebug($this->Lang('Invalid recipient array').': '.$kind); + } + return false; + } + $address = trim($address); + $name = trim(preg_replace('/[\r\n]+/', '', $name)); //Strip breaks and trim + if (!$this->ValidateAddress($address)) { + $this->SetError($this->Lang('invalid_address').': '. $address); + if ($this->exceptions) { + throw new phpmailerException($this->Lang('invalid_address').': '.$address); + } + if ($this->SMTPDebug) { + $this->edebug($this->Lang('invalid_address').': '.$address); + } + return false; + } + if ($kind != 'Reply-To') { + if (!isset($this->all_recipients[strtolower($address)])) { + array_push($this->$kind, array($address, $name)); + $this->all_recipients[strtolower($address)] = true; + return true; + } + } else { + if (!array_key_exists(strtolower($address), $this->ReplyTo)) { + $this->ReplyTo[strtolower($address)] = array($address, $name); + return true; + } + } + return false; +} + +/** + * Set the From and FromName properties + * @param string $address + * @param string $name + * @param int $auto Also set Reply-To and Sender + * @throws phpmailerException + * @return boolean + */ + public function SetFrom($address, $name = '', $auto = 1) { + $address = trim($address); + $name = trim(preg_replace('/[\r\n]+/', '', $name)); //Strip breaks and trim + if (!$this->ValidateAddress($address)) { + $this->SetError($this->Lang('invalid_address').': '. $address); + if ($this->exceptions) { + throw new phpmailerException($this->Lang('invalid_address').': '.$address); + } + if ($this->SMTPDebug) { + $this->edebug($this->Lang('invalid_address').': '.$address); + } + return false; + } + $this->From = $address; + $this->FromName = $name; + if ($auto) { + if (empty($this->ReplyTo)) { + $this->AddAnAddress('Reply-To', $address, $name); + } + if (empty($this->Sender)) { + $this->Sender = $address; + } + } + return true; + } + + /** + * Check that a string looks roughly like an email address should + * Static so it can be used without instantiation, public so people can overload + * Conforms to RFC5322: Uses *correct* regex on which FILTER_VALIDATE_EMAIL is + * based; So why not use FILTER_VALIDATE_EMAIL? Because it was broken to + * not allow a@b type valid addresses :( + * Some Versions of PHP break on the regex though, likely due to PCRE, so use + * the older validation method for those users. (http://php.net/manual/en/pcre.installation.php) + * @link http://squiloople.com/2009/12/20/email-address-validation/ + * @copyright regex Copyright Michael Rushton 2009-10 | http://squiloople.com/ | Feel free to use and redistribute this code. But please keep this copyright notice. + * @param string $address The email address to check + * @return boolean + * @static + * @access public + */ + public static function ValidateAddress($address) { + if ((defined('PCRE_VERSION')) && (version_compare(PCRE_VERSION, '8.0') >= 0)) { + return preg_match('/^(?!(?>(?1)"?(?>\\\[ -~]|[^"])"?(?1)){255,})(?!(?>(?1)"?(?>\\\[ -~]|[^"])"?(?1)){65,}@)((?>(?>(?>((?>(?>(?>\x0D\x0A)?[ ])+|(?>[ ]*\x0D\x0A)?[ ]+)?)(\((?>(?2)(?>[\x01-\x08\x0B\x0C\x0E-\'*-\[\]-\x7F]|\\\[\x00-\x7F]|(?3)))*(?2)\)))+(?2))|(?2))?)([!#-\'*+\/-9=?^-~-]+|"(?>(?2)(?>[\x01-\x08\x0B\x0C\x0E-!#-\[\]-\x7F]|\\\[\x00-\x7F]))*(?2)")(?>(?1)\.(?1)(?4))*(?1)@(?!(?1)[a-z0-9-]{64,})(?1)(?>([a-z0-9](?>[a-z0-9-]*[a-z0-9])?)(?>(?1)\.(?!(?1)[a-z0-9-]{64,})(?1)(?5)){0,126}|\[(?:(?>IPv6:(?>([a-f0-9]{1,4})(?>:(?6)){7}|(?!(?:.*[a-f0-9][:\]]){7,})((?6)(?>:(?6)){0,5})?::(?7)?))|(?>(?>IPv6:(?>(?6)(?>:(?6)){5}:|(?!(?:.*[a-f0-9]:){5,})(?8)?::(?>((?6)(?>:(?6)){0,3}):)?))?(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(?>\.(?9)){3}))\])(?1)$/isD', $address); + } elseif (function_exists('filter_var')) { //Introduced in PHP 5.2 + if(filter_var($address, FILTER_VALIDATE_EMAIL) === FALSE) { + return false; + } else { + return true; + } + } else { + return preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/', $address); + } + } + + ///////////////////////////////////////////////// + // METHODS, MAIL SENDING + ///////////////////////////////////////////////// + + /** + * Creates message and assigns Mailer. If the message is + * not sent successfully then it returns false. Use the ErrorInfo + * variable to view description of the error. + * @throws phpmailerException + * @return bool + */ + public function Send() { + try { + if(!$this->PreSend()) return false; + return $this->PostSend(); + } catch (phpmailerException $e) { + $this->mailHeader = ''; + $this->SetError($e->getMessage()); + if ($this->exceptions) { + throw $e; + } + return false; + } + } + + /** + * Prep mail by constructing all message entities + * @throws phpmailerException + * @return bool + */ + public function PreSend() { + try { + $this->mailHeader = ""; + if ((count($this->to) + count($this->cc) + count($this->bcc)) < 1) { + throw new phpmailerException($this->Lang('provide_address'), self::STOP_CRITICAL); + } + + // Set whether the message is multipart/alternative + if(!empty($this->AltBody)) { + $this->ContentType = 'multipart/alternative'; + } + + $this->error_count = 0; // reset errors + $this->SetMessageType(); + //Refuse to send an empty message + if (empty($this->Body)) { + throw new phpmailerException($this->Lang('empty_message'), self::STOP_CRITICAL); + } + + $this->MIMEHeader = $this->CreateHeader(); + $this->MIMEBody = $this->CreateBody(); + + // To capture the complete message when using mail(), create + // an extra header list which CreateHeader() doesn't fold in + if ($this->Mailer == 'mail') { + if (count($this->to) > 0) { + $this->mailHeader .= $this->AddrAppend("To", $this->to); + } else { + $this->mailHeader .= $this->HeaderLine("To", "undisclosed-recipients:;"); + } + $this->mailHeader .= $this->HeaderLine('Subject', $this->EncodeHeader($this->SecureHeader(trim($this->Subject)))); + // if(count($this->cc) > 0) { + // $this->mailHeader .= $this->AddrAppend("Cc", $this->cc); + // } + } + + // digitally sign with DKIM if enabled + if (!empty($this->DKIM_domain) && !empty($this->DKIM_private) && !empty($this->DKIM_selector) && !empty($this->DKIM_domain) && file_exists($this->DKIM_private)) { + $header_dkim = $this->DKIM_Add($this->MIMEHeader, $this->EncodeHeader($this->SecureHeader($this->Subject)), $this->MIMEBody); + $this->MIMEHeader = str_replace("\r\n", "\n", $header_dkim) . $this->MIMEHeader; + } + + return true; + + } catch (phpmailerException $e) { + $this->SetError($e->getMessage()); + if ($this->exceptions) { + throw $e; + } + return false; + } + } + + /** + * Actual Email transport function + * Send the email via the selected mechanism + * @throws phpmailerException + * @return bool + */ + public function PostSend() { + try { + // Choose the mailer and send through it + switch($this->Mailer) { + case 'sendmail': + return $this->SendmailSend($this->MIMEHeader, $this->MIMEBody); + case 'smtp': + return $this->SmtpSend($this->MIMEHeader, $this->MIMEBody); + case 'mail': + return $this->MailSend($this->MIMEHeader, $this->MIMEBody); + default: + return $this->MailSend($this->MIMEHeader, $this->MIMEBody); + } + } catch (phpmailerException $e) { + $this->SetError($e->getMessage()); + if ($this->exceptions) { + throw $e; + } + if ($this->SMTPDebug) { + $this->edebug($e->getMessage()."\n"); + } + } + return false; + } + + /** + * Sends mail using the $Sendmail program. + * @param string $header The message headers + * @param string $body The message body + * @throws phpmailerException + * @access protected + * @return bool + */ + protected function SendmailSend($header, $body) { + if ($this->Sender != '') { + $sendmail = sprintf("%s -oi -f%s -t", escapeshellcmd($this->Sendmail), escapeshellarg($this->Sender)); + } else { + $sendmail = sprintf("%s -oi -t", escapeshellcmd($this->Sendmail)); + } + if ($this->SingleTo === true) { + foreach ($this->SingleToArray as $val) { + if(!@$mail = popen($sendmail, 'w')) { + throw new phpmailerException($this->Lang('execute') . $this->Sendmail, self::STOP_CRITICAL); + } + fputs($mail, "To: " . $val . "\n"); + fputs($mail, $header); + fputs($mail, $body); + $result = pclose($mail); + // implement call back function if it exists + $isSent = ($result == 0) ? 1 : 0; + $this->doCallback($isSent, $val, $this->cc, $this->bcc, $this->Subject, $body); + if($result != 0) { + throw new phpmailerException($this->Lang('execute') . $this->Sendmail, self::STOP_CRITICAL); + } + } + } else { + if(!@$mail = popen($sendmail, 'w')) { + throw new phpmailerException($this->Lang('execute') . $this->Sendmail, self::STOP_CRITICAL); + } + fputs($mail, $header); + fputs($mail, $body); + $result = pclose($mail); + // implement call back function if it exists + $isSent = ($result == 0) ? 1 : 0; + $this->doCallback($isSent, $this->to, $this->cc, $this->bcc, $this->Subject, $body); + if($result != 0) { + throw new phpmailerException($this->Lang('execute') . $this->Sendmail, self::STOP_CRITICAL); + } + } + return true; + } + + /** + * Sends mail using the PHP mail() function. + * @param string $header The message headers + * @param string $body The message body + * @throws phpmailerException + * @access protected + * @return bool + */ + protected function MailSend($header, $body) { + $toArr = array(); + foreach($this->to as $t) { + $toArr[] = $this->AddrFormat($t); + } + $to = implode(', ', $toArr); + + if (empty($this->Sender)) { + $params = "-oi "; + } else { + $params = sprintf("-oi -f%s", $this->Sender); + } + if ($this->Sender != '' and !ini_get('safe_mode')) { + $old_from = ini_get('sendmail_from'); + ini_set('sendmail_from', $this->Sender); + } + $rt = false; + if ($this->SingleTo === true && count($toArr) > 1) { + foreach ($toArr as $val) { + $rt = $this->mail_passthru($val, $this->Subject, $body, $header, $params); + // implement call back function if it exists + $isSent = ($rt == 1) ? 1 : 0; + $this->doCallback($isSent, $val, $this->cc, $this->bcc, $this->Subject, $body); + } + } else { + $rt = $this->mail_passthru($to, $this->Subject, $body, $header, $params); + // implement call back function if it exists + $isSent = ($rt == 1) ? 1 : 0; + $this->doCallback($isSent, $to, $this->cc, $this->bcc, $this->Subject, $body); + } + if (isset($old_from)) { + ini_set('sendmail_from', $old_from); + } + if(!$rt) { + throw new phpmailerException($this->Lang('instantiate'), self::STOP_CRITICAL); + } + return true; + } + + /** + * Sends mail via SMTP using PhpSMTP + * Returns false if there is a bad MAIL FROM, RCPT, or DATA input. + * @param string $header The message headers + * @param string $body The message body + * @throws phpmailerException + * @uses SMTP + * @access protected + * @return bool + */ + protected function SmtpSend($header, $body) { + require_once $this->PluginDir . 'class.smtp.php'; + $bad_rcpt = array(); + + if(!$this->SmtpConnect()) { + throw new phpmailerException($this->Lang('smtp_connect_failed'), self::STOP_CRITICAL); + } + $smtp_from = ($this->Sender == '') ? $this->From : $this->Sender; + if(!$this->smtp->Mail($smtp_from)) { + $this->SetError($this->Lang('from_failed') . $smtp_from . " : " . implode(",",$this->smtp->getError())) ; + throw new phpmailerException($this->ErrorInfo, self::STOP_CRITICAL); + } + + // Attempt to send attach all recipients + foreach($this->to as $to) { + if (!$this->smtp->Recipient($to[0])) { + $bad_rcpt[] = $to[0]; + // implement call back function if it exists + $isSent = 0; + $this->doCallback($isSent, $to[0], '', '', $this->Subject, $body); + } else { + // implement call back function if it exists + $isSent = 1; + $this->doCallback($isSent, $to[0], '', '', $this->Subject, $body); + } + } + foreach($this->cc as $cc) { + if (!$this->smtp->Recipient($cc[0])) { + $bad_rcpt[] = $cc[0]; + // implement call back function if it exists + $isSent = 0; + $this->doCallback($isSent, '', $cc[0], '', $this->Subject, $body); + } else { + // implement call back function if it exists + $isSent = 1; + $this->doCallback($isSent, '', $cc[0], '', $this->Subject, $body); + } + } + foreach($this->bcc as $bcc) { + if (!$this->smtp->Recipient($bcc[0])) { + $bad_rcpt[] = $bcc[0]; + // implement call back function if it exists + $isSent = 0; + $this->doCallback($isSent, '', '', $bcc[0], $this->Subject, $body); + } else { + // implement call back function if it exists + $isSent = 1; + $this->doCallback($isSent, '', '', $bcc[0], $this->Subject, $body); + } + } + + + if (count($bad_rcpt) > 0 ) { //Create error message for any bad addresses + $badaddresses = implode(', ', $bad_rcpt); + throw new phpmailerException($this->Lang('recipients_failed') . $badaddresses); + } + if(!$this->smtp->Data($header . $body)) { + throw new phpmailerException($this->Lang('data_not_accepted'), self::STOP_CRITICAL); + } + if($this->SMTPKeepAlive == true) { + $this->smtp->Reset(); + } else { + $this->smtp->Quit(); + $this->smtp->Close(); + } + return true; + } + + /** + * Initiates a connection to an SMTP server. + * Returns false if the operation failed. + * @uses SMTP + * @access public + * @throws phpmailerException + * @return bool + */ + public function SmtpConnect() { + if(is_null($this->smtp)) { + $this->smtp = new SMTP; + } + + $this->smtp->Timeout = $this->Timeout; + $this->smtp->do_debug = $this->SMTPDebug; + $hosts = explode(';', $this->Host); + $index = 0; + $connection = $this->smtp->Connected(); + + // Retry while there is no connection + try { + while($index < count($hosts) && !$connection) { + $hostinfo = array(); + if (preg_match('/^(.+):([0-9]+)$/', $hosts[$index], $hostinfo)) { + $host = $hostinfo[1]; + $port = $hostinfo[2]; + } else { + $host = $hosts[$index]; + $port = $this->Port; + } + + $tls = ($this->SMTPSecure == 'tls'); + $ssl = ($this->SMTPSecure == 'ssl'); + + if ($this->smtp->Connect(($ssl ? 'ssl://':'').$host, $port, $this->Timeout)) { + + $hello = ($this->Helo != '' ? $this->Helo : $this->ServerHostname()); + $this->smtp->Hello($hello); + + if ($tls) { + if (!$this->smtp->StartTLS()) { + throw new phpmailerException($this->Lang('connect_host')); + } + + //We must resend HELO after tls negotiation + $this->smtp->Hello($hello); + } + + $connection = true; + if ($this->SMTPAuth) { + if (!$this->smtp->Authenticate($this->Username, $this->Password, $this->AuthType, + $this->Realm, $this->Workstation)) { + throw new phpmailerException($this->Lang('authenticate')); + } + } + } + $index++; + if (!$connection) { + throw new phpmailerException($this->Lang('connect_host')); + } + } + } catch (phpmailerException $e) { + $this->smtp->Reset(); + if ($this->exceptions) { + throw $e; + } + } + return true; + } + + /** + * Closes the active SMTP session if one exists. + * @return void + */ + public function SmtpClose() { + if ($this->smtp !== null) { + if($this->smtp->Connected()) { + $this->smtp->Quit(); + $this->smtp->Close(); + } + } + } + + /** + * Sets the language for all class error messages. + * Returns false if it cannot load the language file. The default language is English. + * @param string $langcode ISO 639-1 2-character language code (e.g. Portuguese: "br") + * @param string $lang_path Path to the language file directory + * @return bool + * @access public + */ + function SetLanguage($langcode = 'en', $lang_path = 'language/') { + //Define full set of translatable strings + $PHPMAILER_LANG = array( + 'authenticate' => 'SMTP Error: Could not authenticate.', + 'connect_host' => 'SMTP Error: Could not connect to SMTP host.', + 'data_not_accepted' => 'SMTP Error: Data not accepted.', + 'empty_message' => 'Message body empty', + 'encoding' => 'Unknown encoding: ', + 'execute' => 'Could not execute: ', + 'file_access' => 'Could not access file: ', + 'file_open' => 'File Error: Could not open file: ', + 'from_failed' => 'The following From address failed: ', + 'instantiate' => 'Could not instantiate mail function.', + 'invalid_address' => 'Invalid address', + 'mailer_not_supported' => ' mailer is not supported.', + 'provide_address' => 'You must provide at least one recipient email address.', + 'recipients_failed' => 'SMTP Error: The following recipients failed: ', + 'signing' => 'Signing Error: ', + 'smtp_connect_failed' => 'SMTP Connect() failed.', + 'smtp_error' => 'SMTP server error: ', + 'variable_set' => 'Cannot set or reset variable: ' + ); + //Overwrite language-specific strings. This way we'll never have missing translations - no more "language string failed to load"! + $l = true; + if ($langcode != 'en') { //There is no English translation file + $l = @include $lang_path.'phpmailer.lang-'.$langcode.'.php'; + } + $this->language = $PHPMAILER_LANG; + return ($l == true); //Returns false if language not found + } + + /** + * Return the current array of language strings + * @return array + */ + public function GetTranslations() { + return $this->language; + } + + ///////////////////////////////////////////////// + // METHODS, MESSAGE CREATION + ///////////////////////////////////////////////// + + /** + * Creates recipient headers. + * @access public + * @param string $type + * @param array $addr + * @return string + */ + public function AddrAppend($type, $addr) { + $addr_str = $type . ': '; + $addresses = array(); + foreach ($addr as $a) { + $addresses[] = $this->AddrFormat($a); + } + $addr_str .= implode(', ', $addresses); + $addr_str .= $this->LE; + + return $addr_str; + } + + /** + * Formats an address correctly. + * @access public + * @param string $addr + * @return string + */ + public function AddrFormat($addr) { + if (empty($addr[1])) { + return $this->SecureHeader($addr[0]); + } else { + return $this->EncodeHeader($this->SecureHeader($addr[1]), 'phrase') . " <" . $this->SecureHeader($addr[0]) . ">"; + } + } + + /** + * Wraps message for use with mailers that do not + * automatically perform wrapping and for quoted-printable. + * Original written by philippe. + * @param string $message The message to wrap + * @param integer $length The line length to wrap to + * @param boolean $qp_mode Whether to run in Quoted-Printable mode + * @access public + * @return string + */ + public function WrapText($message, $length, $qp_mode = false) { + $soft_break = ($qp_mode) ? sprintf(" =%s", $this->LE) : $this->LE; + // If utf-8 encoding is used, we will need to make sure we don't + // split multibyte characters when we wrap + $is_utf8 = (strtolower($this->CharSet) == "utf-8"); + $lelen = strlen($this->LE); + $crlflen = strlen(self::CRLF); + + $message = $this->FixEOL($message); + if (substr($message, -$lelen) == $this->LE) { + $message = substr($message, 0, -$lelen); + } + + $line = explode($this->LE, $message); // Magic. We know FixEOL uses $LE + $message = ''; + for ($i = 0 ;$i < count($line); $i++) { + $line_part = explode(' ', $line[$i]); + $buf = ''; + for ($e = 0; $e<count($line_part); $e++) { + $word = $line_part[$e]; + if ($qp_mode and (strlen($word) > $length)) { + $space_left = $length - strlen($buf) - $crlflen; + if ($e != 0) { + if ($space_left > 20) { + $len = $space_left; + if ($is_utf8) { + $len = $this->UTF8CharBoundary($word, $len); + } elseif (substr($word, $len - 1, 1) == "=") { + $len--; + } elseif (substr($word, $len - 2, 1) == "=") { + $len -= 2; + } + $part = substr($word, 0, $len); + $word = substr($word, $len); + $buf .= ' ' . $part; + $message .= $buf . sprintf("=%s", self::CRLF); + } else { + $message .= $buf . $soft_break; + } + $buf = ''; + } + while (strlen($word) > 0) { + $len = $length; + if ($is_utf8) { + $len = $this->UTF8CharBoundary($word, $len); + } elseif (substr($word, $len - 1, 1) == "=") { + $len--; + } elseif (substr($word, $len - 2, 1) == "=") { + $len -= 2; + } + $part = substr($word, 0, $len); + $word = substr($word, $len); + + if (strlen($word) > 0) { + $message .= $part . sprintf("=%s", self::CRLF); + } else { + $buf = $part; + } + } + } else { + $buf_o = $buf; + $buf .= ($e == 0) ? $word : (' ' . $word); + + if (strlen($buf) > $length and $buf_o != '') { + $message .= $buf_o . $soft_break; + $buf = $word; + } + } + } + $message .= $buf . self::CRLF; + } + + return $message; + } + + /** + * Finds last character boundary prior to maxLength in a utf-8 + * quoted (printable) encoded string. + * Original written by Colin Brown. + * @access public + * @param string $encodedText utf-8 QP text + * @param int $maxLength find last character boundary prior to this length + * @return int + */ + public function UTF8CharBoundary($encodedText, $maxLength) { + $foundSplitPos = false; + $lookBack = 3; + while (!$foundSplitPos) { + $lastChunk = substr($encodedText, $maxLength - $lookBack, $lookBack); + $encodedCharPos = strpos($lastChunk, "="); + if ($encodedCharPos !== false) { + // Found start of encoded character byte within $lookBack block. + // Check the encoded byte value (the 2 chars after the '=') + $hex = substr($encodedText, $maxLength - $lookBack + $encodedCharPos + 1, 2); + $dec = hexdec($hex); + if ($dec < 128) { // Single byte character. + // If the encoded char was found at pos 0, it will fit + // otherwise reduce maxLength to start of the encoded char + $maxLength = ($encodedCharPos == 0) ? $maxLength : + $maxLength - ($lookBack - $encodedCharPos); + $foundSplitPos = true; + } elseif ($dec >= 192) { // First byte of a multi byte character + // Reduce maxLength to split at start of character + $maxLength = $maxLength - ($lookBack - $encodedCharPos); + $foundSplitPos = true; + } elseif ($dec < 192) { // Middle byte of a multi byte character, look further back + $lookBack += 3; + } + } else { + // No encoded character found + $foundSplitPos = true; + } + } + return $maxLength; + } + + + /** + * Set the body wrapping. + * @access public + * @return void + */ + public function SetWordWrap() { + if($this->WordWrap < 1) { + return; + } + + switch($this->message_type) { + case 'alt': + case 'alt_inline': + case 'alt_attach': + case 'alt_inline_attach': + $this->AltBody = $this->WrapText($this->AltBody, $this->WordWrap); + break; + default: + $this->Body = $this->WrapText($this->Body, $this->WordWrap); + break; + } + } + + /** + * Assembles message header. + * @access public + * @return string The assembled header + */ + public function CreateHeader() { + $result = ''; + + // Set the boundaries + $uniq_id = md5(uniqid(time())); + $this->boundary[1] = 'b1_' . $uniq_id; + $this->boundary[2] = 'b2_' . $uniq_id; + $this->boundary[3] = 'b3_' . $uniq_id; + + if ($this->MessageDate == '') { + $result .= $this->HeaderLine('Date', self::RFCDate()); + } else { + $result .= $this->HeaderLine('Date', $this->MessageDate); + } + + if ($this->ReturnPath) { + $result .= $this->HeaderLine('Return-Path', trim($this->ReturnPath)); + } elseif ($this->Sender == '') { + $result .= $this->HeaderLine('Return-Path', trim($this->From)); + } else { + $result .= $this->HeaderLine('Return-Path', trim($this->Sender)); + } + + // To be created automatically by mail() + if($this->Mailer != 'mail') { + if ($this->SingleTo === true) { + foreach($this->to as $t) { + $this->SingleToArray[] = $this->AddrFormat($t); + } + } else { + if(count($this->to) > 0) { + $result .= $this->AddrAppend('To', $this->to); + } elseif (count($this->cc) == 0) { + $result .= $this->HeaderLine('To', 'undisclosed-recipients:;'); + } + } + } + + $from = array(); + $from[0][0] = trim($this->From); + $from[0][1] = $this->FromName; + $result .= $this->AddrAppend('From', $from); + + // sendmail and mail() extract Cc from the header before sending + if(count($this->cc) > 0) { + $result .= $this->AddrAppend('Cc', $this->cc); + } + + // sendmail and mail() extract Bcc from the header before sending + if((($this->Mailer == 'sendmail') || ($this->Mailer == 'mail')) && (count($this->bcc) > 0)) { + $result .= $this->AddrAppend('Bcc', $this->bcc); + } + + if(count($this->ReplyTo) > 0) { + $result .= $this->AddrAppend('Reply-To', $this->ReplyTo); + } + + // mail() sets the subject itself + if($this->Mailer != 'mail') { + $result .= $this->HeaderLine('Subject', $this->EncodeHeader($this->SecureHeader($this->Subject))); + } + + if($this->MessageID != '') { + $result .= $this->HeaderLine('Message-ID', $this->MessageID); + } else { + $result .= sprintf("Message-ID: <%s@%s>%s", $uniq_id, $this->ServerHostname(), $this->LE); + } + $result .= $this->HeaderLine('X-Priority', $this->Priority); + if ($this->XMailer == '') { + $result .= $this->HeaderLine('X-Mailer', 'PHPMailer '.$this->Version.' (http://code.google.com/a/apache-extras.org/p/phpmailer/)'); + } else { + $myXmailer = trim($this->XMailer); + if ($myXmailer) { + $result .= $this->HeaderLine('X-Mailer', $myXmailer); + } + } + + if($this->ConfirmReadingTo != '') { + $result .= $this->HeaderLine('Disposition-Notification-To', '<' . trim($this->ConfirmReadingTo) . '>'); + } + + // Add custom headers + for($index = 0; $index < count($this->CustomHeader); $index++) { + $result .= $this->HeaderLine(trim($this->CustomHeader[$index][0]), $this->EncodeHeader(trim($this->CustomHeader[$index][1]))); + } + if (!$this->sign_key_file) { + $result .= $this->HeaderLine('MIME-Version', '1.0'); + $result .= $this->GetMailMIME(); + } + + return $result; + } + + /** + * Returns the message MIME. + * @access public + * @return string + */ + public function GetMailMIME() { + $result = ''; + switch($this->message_type) { + case 'inline': + $result .= $this->HeaderLine('Content-Type', 'multipart/related;'); + $result .= $this->TextLine("\tboundary=\"" . $this->boundary[1] . '"'); + break; + case 'attach': + case 'inline_attach': + case 'alt_attach': + case 'alt_inline_attach': + $result .= $this->HeaderLine('Content-Type', 'multipart/mixed;'); + $result .= $this->TextLine("\tboundary=\"" . $this->boundary[1] . '"'); + break; + case 'alt': + case 'alt_inline': + $result .= $this->HeaderLine('Content-Type', 'multipart/alternative;'); + $result .= $this->TextLine("\tboundary=\"" . $this->boundary[1] . '"'); + break; + default: + // Catches case 'plain': and case '': + $result .= $this->HeaderLine('Content-Transfer-Encoding', $this->Encoding); + $result .= $this->TextLine('Content-Type: '.$this->ContentType.'; charset='.$this->CharSet); + break; + } + + if($this->Mailer != 'mail') { + $result .= $this->LE; + } + + return $result; + } + + /** + * Returns the MIME message (headers and body). Only really valid post PreSend(). + * @access public + * @return string + */ + public function GetSentMIMEMessage() { + return $this->MIMEHeader . $this->mailHeader . self::CRLF . $this->MIMEBody; + } + + + /** + * Assembles the message body. Returns an empty string on failure. + * @access public + * @throws phpmailerException + * @return string The assembled message body + */ + public function CreateBody() { + $body = ''; + + if ($this->sign_key_file) { + $body .= $this->GetMailMIME().$this->LE; + } + + $this->SetWordWrap(); + + switch($this->message_type) { + case 'inline': + $body .= $this->GetBoundary($this->boundary[1], '', '', ''); + $body .= $this->EncodeString($this->Body, $this->Encoding); + $body .= $this->LE.$this->LE; + $body .= $this->AttachAll("inline", $this->boundary[1]); + break; + case 'attach': + $body .= $this->GetBoundary($this->boundary[1], '', '', ''); + $body .= $this->EncodeString($this->Body, $this->Encoding); + $body .= $this->LE.$this->LE; + $body .= $this->AttachAll("attachment", $this->boundary[1]); + break; + case 'inline_attach': + $body .= $this->TextLine("--" . $this->boundary[1]); + $body .= $this->HeaderLine('Content-Type', 'multipart/related;'); + $body .= $this->TextLine("\tboundary=\"" . $this->boundary[2] . '"'); + $body .= $this->LE; + $body .= $this->GetBoundary($this->boundary[2], '', '', ''); + $body .= $this->EncodeString($this->Body, $this->Encoding); + $body .= $this->LE.$this->LE; + $body .= $this->AttachAll("inline", $this->boundary[2]); + $body .= $this->LE; + $body .= $this->AttachAll("attachment", $this->boundary[1]); + break; + case 'alt': + $body .= $this->GetBoundary($this->boundary[1], '', 'text/plain', ''); + $body .= $this->EncodeString($this->AltBody, $this->Encoding); + $body .= $this->LE.$this->LE; + $body .= $this->GetBoundary($this->boundary[1], '', 'text/html', ''); + $body .= $this->EncodeString($this->Body, $this->Encoding); + $body .= $this->LE.$this->LE; + $body .= $this->EndBoundary($this->boundary[1]); + break; + case 'alt_inline': + $body .= $this->GetBoundary($this->boundary[1], '', 'text/plain', ''); + $body .= $this->EncodeString($this->AltBody, $this->Encoding); + $body .= $this->LE.$this->LE; + $body .= $this->TextLine("--" . $this->boundary[1]); + $body .= $this->HeaderLine('Content-Type', 'multipart/related;'); + $body .= $this->TextLine("\tboundary=\"" . $this->boundary[2] . '"'); + $body .= $this->LE; + $body .= $this->GetBoundary($this->boundary[2], '', 'text/html', ''); + $body .= $this->EncodeString($this->Body, $this->Encoding); + $body .= $this->LE.$this->LE; + $body .= $this->AttachAll("inline", $this->boundary[2]); + $body .= $this->LE; + $body .= $this->EndBoundary($this->boundary[1]); + break; + case 'alt_attach': + $body .= $this->TextLine("--" . $this->boundary[1]); + $body .= $this->HeaderLine('Content-Type', 'multipart/alternative;'); + $body .= $this->TextLine("\tboundary=\"" . $this->boundary[2] . '"'); + $body .= $this->LE; + $body .= $this->GetBoundary($this->boundary[2], '', 'text/plain', ''); + $body .= $this->EncodeString($this->AltBody, $this->Encoding); + $body .= $this->LE.$this->LE; + $body .= $this->GetBoundary($this->boundary[2], '', 'text/html', ''); + $body .= $this->EncodeString($this->Body, $this->Encoding); + $body .= $this->LE.$this->LE; + $body .= $this->EndBoundary($this->boundary[2]); + $body .= $this->LE; + $body .= $this->AttachAll("attachment", $this->boundary[1]); + break; + case 'alt_inline_attach': + $body .= $this->TextLine("--" . $this->boundary[1]); + $body .= $this->HeaderLine('Content-Type', 'multipart/alternative;'); + $body .= $this->TextLine("\tboundary=\"" . $this->boundary[2] . '"'); + $body .= $this->LE; + $body .= $this->GetBoundary($this->boundary[2], '', 'text/plain', ''); + $body .= $this->EncodeString($this->AltBody, $this->Encoding); + $body .= $this->LE.$this->LE; + $body .= $this->TextLine("--" . $this->boundary[2]); + $body .= $this->HeaderLine('Content-Type', 'multipart/related;'); + $body .= $this->TextLine("\tboundary=\"" . $this->boundary[3] . '"'); + $body .= $this->LE; + $body .= $this->GetBoundary($this->boundary[3], '', 'text/html', ''); + $body .= $this->EncodeString($this->Body, $this->Encoding); + $body .= $this->LE.$this->LE; + $body .= $this->AttachAll("inline", $this->boundary[3]); + $body .= $this->LE; + $body .= $this->EndBoundary($this->boundary[2]); + $body .= $this->LE; + $body .= $this->AttachAll("attachment", $this->boundary[1]); + break; + default: + // catch case 'plain' and case '' + $body .= $this->EncodeString($this->Body, $this->Encoding); + break; + } + + if ($this->IsError()) { + $body = ''; + } elseif ($this->sign_key_file) { + try { + $file = tempnam('', 'mail'); + file_put_contents($file, $body); //TODO check this worked + $signed = tempnam("", "signed"); + if (@openssl_pkcs7_sign($file, $signed, "file://".$this->sign_cert_file, array("file://".$this->sign_key_file, $this->sign_key_pass), NULL)) { + @unlink($file); + $body = file_get_contents($signed); + @unlink($signed); + } else { + @unlink($file); + @unlink($signed); + throw new phpmailerException($this->Lang("signing").openssl_error_string()); + } + } catch (phpmailerException $e) { + $body = ''; + if ($this->exceptions) { + throw $e; + } + } + } + + return $body; + } + + /** + * Returns the start of a message boundary. + * @access protected + * @param string $boundary + * @param string $charSet + * @param string $contentType + * @param string $encoding + * @return string + */ + protected function GetBoundary($boundary, $charSet, $contentType, $encoding) { + $result = ''; + if($charSet == '') { + $charSet = $this->CharSet; + } + if($contentType == '') { + $contentType = $this->ContentType; + } + if($encoding == '') { + $encoding = $this->Encoding; + } + $result .= $this->TextLine('--' . $boundary); + $result .= sprintf("Content-Type: %s; charset=%s", $contentType, $charSet); + $result .= $this->LE; + $result .= $this->HeaderLine('Content-Transfer-Encoding', $encoding); + $result .= $this->LE; + + return $result; + } + + /** + * Returns the end of a message boundary. + * @access protected + * @param string $boundary + * @return string + */ + protected function EndBoundary($boundary) { + return $this->LE . '--' . $boundary . '--' . $this->LE; + } + + /** + * Sets the message type. + * @access protected + * @return void + */ + protected function SetMessageType() { + $this->message_type = array(); + if($this->AlternativeExists()) $this->message_type[] = "alt"; + if($this->InlineImageExists()) $this->message_type[] = "inline"; + if($this->AttachmentExists()) $this->message_type[] = "attach"; + $this->message_type = implode("_", $this->message_type); + if($this->message_type == "") $this->message_type = "plain"; + } + + /** + * Returns a formatted header line. + * @access public + * @param string $name + * @param string $value + * @return string + */ + public function HeaderLine($name, $value) { + return $name . ': ' . $value . $this->LE; + } + + /** + * Returns a formatted mail line. + * @access public + * @param string $value + * @return string + */ + public function TextLine($value) { + return $value . $this->LE; + } + + ///////////////////////////////////////////////// + // CLASS METHODS, ATTACHMENTS + ///////////////////////////////////////////////// + + /** + * Adds an attachment from a path on the filesystem. + * Returns false if the file could not be found + * or accessed. + * @param string $path Path to the attachment. + * @param string $name Overrides the attachment name. + * @param string $encoding File encoding (see $Encoding). + * @param string $type File extension (MIME) type. + * @throws phpmailerException + * @return bool + */ + public function AddAttachment($path, $name = '', $encoding = 'base64', $type = 'application/octet-stream') { + try { + if ( !@is_file($path) ) { + throw new phpmailerException($this->Lang('file_access') . $path, self::STOP_CONTINUE); + } + $filename = basename($path); + if ( $name == '' ) { + $name = $filename; + } + + $this->attachment[] = array( + 0 => $path, + 1 => $filename, + 2 => $name, + 3 => $encoding, + 4 => $type, + 5 => false, // isStringAttachment + 6 => 'attachment', + 7 => 0 + ); + + } catch (phpmailerException $e) { + $this->SetError($e->getMessage()); + if ($this->exceptions) { + throw $e; + } + if ($this->SMTPDebug) { + $this->edebug($e->getMessage()."\n"); + } + if ( $e->getCode() == self::STOP_CRITICAL ) { + return false; + } + } + return true; + } + + /** + * Return the current array of attachments + * @return array + */ + public function GetAttachments() { + return $this->attachment; + } + + /** + * Attaches all fs, string, and binary attachments to the message. + * Returns an empty string on failure. + * @access protected + * @param string $disposition_type + * @param string $boundary + * @return string + */ + protected function AttachAll($disposition_type, $boundary) { + // Return text of body + $mime = array(); + $cidUniq = array(); + $incl = array(); + + // Add all attachments + foreach ($this->attachment as $attachment) { + // CHECK IF IT IS A VALID DISPOSITION_FILTER + if($attachment[6] == $disposition_type) { + // Check for string attachment + $string = ''; + $path = ''; + $bString = $attachment[5]; + if ($bString) { + $string = $attachment[0]; + } else { + $path = $attachment[0]; + } + + $inclhash = md5(serialize($attachment)); + if (in_array($inclhash, $incl)) { continue; } + $incl[] = $inclhash; + $filename = $attachment[1]; + $name = $attachment[2]; + $encoding = $attachment[3]; + $type = $attachment[4]; + $disposition = $attachment[6]; + $cid = $attachment[7]; + if ( $disposition == 'inline' && isset($cidUniq[$cid]) ) { continue; } + $cidUniq[$cid] = true; + + $mime[] = sprintf("--%s%s", $boundary, $this->LE); + $mime[] = sprintf("Content-Type: %s; name=\"%s\"%s", $type, $this->EncodeHeader($this->SecureHeader($name)), $this->LE); + $mime[] = sprintf("Content-Transfer-Encoding: %s%s", $encoding, $this->LE); + + if($disposition == 'inline') { + $mime[] = sprintf("Content-ID: <%s>%s", $cid, $this->LE); + } + + $mime[] = sprintf("Content-Disposition: %s; filename=\"%s\"%s", $disposition, $this->EncodeHeader($this->SecureHeader($name)), $this->LE.$this->LE); + + // Encode as string attachment + if($bString) { + $mime[] = $this->EncodeString($string, $encoding); + if($this->IsError()) { + return ''; + } + $mime[] = $this->LE.$this->LE; + } else { + $mime[] = $this->EncodeFile($path, $encoding); + if($this->IsError()) { + return ''; + } + $mime[] = $this->LE.$this->LE; + } + } + } + + $mime[] = sprintf("--%s--%s", $boundary, $this->LE); + + return implode("", $mime); + } + + /** + * Encodes attachment in requested format. + * Returns an empty string on failure. + * @param string $path The full path to the file + * @param string $encoding The encoding to use; one of 'base64', '7bit', '8bit', 'binary', 'quoted-printable' + * @throws phpmailerException + * @see EncodeFile() + * @access protected + * @return string + */ + protected function EncodeFile($path, $encoding = 'base64') { + try { + if (!is_readable($path)) { + throw new phpmailerException($this->Lang('file_open') . $path, self::STOP_CONTINUE); + } + // if (!function_exists('get_magic_quotes')) { + // function get_magic_quotes() { + // return false; + // } + // } + $magic_quotes = get_magic_quotes_runtime(); + if ($magic_quotes) { + if (version_compare(PHP_VERSION, '5.3.0', '<')) { + set_magic_quotes_runtime(0); + } else { + ini_set('magic_quotes_runtime', 0); + } + } + $file_buffer = file_get_contents($path); + $file_buffer = $this->EncodeString($file_buffer, $encoding); + if ($magic_quotes) { + if (version_compare(PHP_VERSION, '5.3.0', '<')) { + set_magic_quotes_runtime($magic_quotes); + } else { + ini_set('magic_quotes_runtime', $magic_quotes); + } + } + return $file_buffer; + } catch (Exception $e) { + $this->SetError($e->getMessage()); + return ''; + } + } + + /** + * Encodes string to requested format. + * Returns an empty string on failure. + * @param string $str The text to encode + * @param string $encoding The encoding to use; one of 'base64', '7bit', '8bit', 'binary', 'quoted-printable' + * @access public + * @return string + */ + public function EncodeString($str, $encoding = 'base64') { + $encoded = ''; + switch(strtolower($encoding)) { + case 'base64': + $encoded = chunk_split(base64_encode($str), 76, $this->LE); + break; + case '7bit': + case '8bit': + $encoded = $this->FixEOL($str); + //Make sure it ends with a line break + if (substr($encoded, -(strlen($this->LE))) != $this->LE) + $encoded .= $this->LE; + break; + case 'binary': + $encoded = $str; + break; + case 'quoted-printable': + $encoded = $this->EncodeQP($str); + break; + default: + $this->SetError($this->Lang('encoding') . $encoding); + break; + } + return $encoded; + } + + /** + * Encode a header string to best (shortest) of Q, B, quoted or none. + * @access public + * @param string $str + * @param string $position + * @return string + */ + public function EncodeHeader($str, $position = 'text') { + $x = 0; + + switch (strtolower($position)) { + case 'phrase': + if (!preg_match('/[\200-\377]/', $str)) { + // Can't use addslashes as we don't know what value has magic_quotes_sybase + $encoded = addcslashes($str, "\0..\37\177\\\""); + if (($str == $encoded) && !preg_match('/[^A-Za-z0-9!#$%&\'*+\/=?^_`{|}~ -]/', $str)) { + return ($encoded); + } else { + return ("\"$encoded\""); + } + } + $x = preg_match_all('/[^\040\041\043-\133\135-\176]/', $str, $matches); + break; + case 'comment': + $x = preg_match_all('/[()"]/', $str, $matches); + // Fall-through + case 'text': + default: + $x += preg_match_all('/[\000-\010\013\014\016-\037\177-\377]/', $str, $matches); + break; + } + + if ($x == 0) { + return ($str); + } + + $maxlen = 75 - 7 - strlen($this->CharSet); + // Try to select the encoding which should produce the shortest output + if (strlen($str)/3 < $x) { + $encoding = 'B'; + if (function_exists('mb_strlen') && $this->HasMultiBytes($str)) { + // Use a custom function which correctly encodes and wraps long + // multibyte strings without breaking lines within a character + $encoded = $this->Base64EncodeWrapMB($str, "\n"); + } else { + $encoded = base64_encode($str); + $maxlen -= $maxlen % 4; + $encoded = trim(chunk_split($encoded, $maxlen, "\n")); + } + } else { + $encoding = 'Q'; + $encoded = $this->EncodeQ($str, $position); + $encoded = $this->WrapText($encoded, $maxlen, true); + $encoded = str_replace('='.self::CRLF, "\n", trim($encoded)); + } + + $encoded = preg_replace('/^(.*)$/m', " =?".$this->CharSet."?$encoding?\\1?=", $encoded); + $encoded = trim(str_replace("\n", $this->LE, $encoded)); + + return $encoded; + } + + /** + * Checks if a string contains multibyte characters. + * @access public + * @param string $str multi-byte text to wrap encode + * @return bool + */ + public function HasMultiBytes($str) { + if (function_exists('mb_strlen')) { + return (strlen($str) > mb_strlen($str, $this->CharSet)); + } else { // Assume no multibytes (we can't handle without mbstring functions anyway) + return false; + } + } + + /** + * Correctly encodes and wraps long multibyte strings for mail headers + * without breaking lines within a character. + * Adapted from a function by paravoid at http://uk.php.net/manual/en/function.mb-encode-mimeheader.php + * @access public + * @param string $str multi-byte text to wrap encode + * @param string $lf string to use as linefeed/end-of-line + * @return string + */ + public function Base64EncodeWrapMB($str, $lf=null) { + $start = "=?".$this->CharSet."?B?"; + $end = "?="; + $encoded = ""; + if ($lf === null) { + $lf = $this->LE; + } + + $mb_length = mb_strlen($str, $this->CharSet); + // Each line must have length <= 75, including $start and $end + $length = 75 - strlen($start) - strlen($end); + // Average multi-byte ratio + $ratio = $mb_length / strlen($str); + // Base64 has a 4:3 ratio + $offset = $avgLength = floor($length * $ratio * .75); + + for ($i = 0; $i < $mb_length; $i += $offset) { + $lookBack = 0; + + do { + $offset = $avgLength - $lookBack; + $chunk = mb_substr($str, $i, $offset, $this->CharSet); + $chunk = base64_encode($chunk); + $lookBack++; + } + while (strlen($chunk) > $length); + + $encoded .= $chunk . $lf; + } + + // Chomp the last linefeed + $encoded = substr($encoded, 0, -strlen($lf)); + return $encoded; + } + + /** + * Encode string to quoted-printable. + * Only uses standard PHP, slow, but will always work + * @access public + * @param string $input + * @param integer $line_max Number of chars allowed on a line before wrapping + * @param bool $space_conv + * @internal param string $string the text to encode + * @return string + */ + public function EncodeQPphp( $input = '', $line_max = 76, $space_conv = false) { + $hex = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'); + $lines = preg_split('/(?:\r\n|\r|\n)/', $input); + $eol = "\r\n"; + $escape = '='; + $output = ''; + while( list(, $line) = each($lines) ) { + $linlen = strlen($line); + $newline = ''; + for($i = 0; $i < $linlen; $i++) { + $c = substr( $line, $i, 1 ); + $dec = ord( $c ); + if ( ( $i == 0 ) && ( $dec == 46 ) ) { // convert first point in the line into =2E + $c = '=2E'; + } + if ( $dec == 32 ) { + if ( $i == ( $linlen - 1 ) ) { // convert space at eol only + $c = '=20'; + } else if ( $space_conv ) { + $c = '=20'; + } + } elseif ( ($dec == 61) || ($dec < 32 ) || ($dec > 126) ) { // always encode "\t", which is *not* required + $h2 = (integer)floor($dec/16); + $h1 = (integer)floor($dec%16); + $c = $escape.$hex[$h2].$hex[$h1]; + } + if ( (strlen($newline) + strlen($c)) >= $line_max ) { // CRLF is not counted + $output .= $newline.$escape.$eol; // soft line break; " =\r\n" is okay + $newline = ''; + // check if newline first character will be point or not + if ( $dec == 46 ) { + $c = '=2E'; + } + } + $newline .= $c; + } // end of for + $output .= $newline.$eol; + } // end of while + return $output; + } + + /** + * Encode string to RFC2045 (6.7) quoted-printable format + * Uses a PHP5 stream filter to do the encoding about 64x faster than the old version + * Also results in same content as you started with after decoding + * @see EncodeQPphp() + * @access public + * @param string $string the text to encode + * @param integer $line_max Number of chars allowed on a line before wrapping + * @param boolean $space_conv Dummy param for compatibility with existing EncodeQP function + * @return string + * @author Marcus Bointon + */ + public function EncodeQP($string, $line_max = 76, $space_conv = false) { + if (function_exists('quoted_printable_encode')) { //Use native function if it's available (>= PHP5.3) + return quoted_printable_encode($string); + } + $filters = stream_get_filters(); + if (!in_array('convert.*', $filters)) { //Got convert stream filter? + return $this->EncodeQPphp($string, $line_max, $space_conv); //Fall back to old implementation + } + $fp = fopen('php://temp/', 'r+'); + $string = preg_replace('/\r\n?/', $this->LE, $string); //Normalise line breaks + $params = array('line-length' => $line_max, 'line-break-chars' => $this->LE); + $s = stream_filter_append($fp, 'convert.quoted-printable-encode', STREAM_FILTER_READ, $params); + fputs($fp, $string); + rewind($fp); + $out = stream_get_contents($fp); + stream_filter_remove($s); + $out = preg_replace('/^\./m', '=2E', $out); //Encode . if it is first char on a line, workaround for bug in Exchange + fclose($fp); + return $out; + } + + /** + * Encode string to q encoding. + * @link http://tools.ietf.org/html/rfc2047 + * @param string $str the text to encode + * @param string $position Where the text is going to be used, see the RFC for what that means + * @access public + * @return string + */ + public function EncodeQ($str, $position = 'text') { + //There should not be any EOL in the string + $pattern=""; + $encoded = str_replace(array("\r", "\n"), '', $str); + switch (strtolower($position)) { + case 'phrase': + $pattern = '^A-Za-z0-9!*+\/ -'; + break; + + case 'comment': + $pattern = '\(\)"'; + //note that we dont break here! + //for this reason we build the $pattern withoud including delimiters and [] + + case 'text': + default: + //Replace every high ascii, control =, ? and _ characters + //We put \075 (=) as first value to make sure it's the first one in being converted, preventing double encode + $pattern = '\075\000-\011\013\014\016-\037\077\137\177-\377' . $pattern; + break; + } + + if (preg_match_all("/[{$pattern}]/", $encoded, $matches)) { + foreach (array_unique($matches[0]) as $char) { + $encoded = str_replace($char, '=' . sprintf('%02X', ord($char)), $encoded); + } + } + + //Replace every spaces to _ (more readable than =20) + return str_replace(' ', '_', $encoded); +} + + + /** + * Adds a string or binary attachment (non-filesystem) to the list. + * This method can be used to attach ascii or binary data, + * such as a BLOB record from a database. + * @param string $string String attachment data. + * @param string $filename Name of the attachment. + * @param string $encoding File encoding (see $Encoding). + * @param string $type File extension (MIME) type. + * @return void + */ + public function AddStringAttachment($string, $filename, $encoding = 'base64', $type = 'application/octet-stream') { + // Append to $attachment array + $this->attachment[] = array( + 0 => $string, + 1 => $filename, + 2 => basename($filename), + 3 => $encoding, + 4 => $type, + 5 => true, // isStringAttachment + 6 => 'attachment', + 7 => 0 + ); + } + + /** + * Adds an embedded attachment. This can include images, sounds, and + * just about any other document. Make sure to set the $type to an + * image type. For JPEG images use "image/jpeg" and for GIF images + * use "image/gif". + * @param string $path Path to the attachment. + * @param string $cid Content ID of the attachment. Use this to identify + * the Id for accessing the image in an HTML form. + * @param string $name Overrides the attachment name. + * @param string $encoding File encoding (see $Encoding). + * @param string $type File extension (MIME) type. + * @return bool + */ + public function AddEmbeddedImage($path, $cid, $name = '', $encoding = 'base64', $type = 'application/octet-stream') { + + if ( !@is_file($path) ) { + $this->SetError($this->Lang('file_access') . $path); + return false; + } + + $filename = basename($path); + if ( $name == '' ) { + $name = $filename; + } + + // Append to $attachment array + $this->attachment[] = array( + 0 => $path, + 1 => $filename, + 2 => $name, + 3 => $encoding, + 4 => $type, + 5 => false, // isStringAttachment + 6 => 'inline', + 7 => $cid + ); + + return true; + } + + /** + * Adds an embedded stringified attachment. This can include images, sounds, and + * just about any other document. Make sure to set the $type to an + * image type. For JPEG images use "image/jpeg" and for GIF images + * use "image/gif". + * @param string $string The attachment. + * @param string $cid Content ID of the attachment. Use this to identify + * the Id for accessing the image in an HTML form. + * @param string $name Overrides the attachment name. + * @param string $encoding File encoding (see $Encoding). + * @param string $type File extension (MIME) type. + * @return bool + */ + public function AddStringEmbeddedImage($string, $cid, $name = '', $encoding = 'base64', $type = 'application/octet-stream') { + // Append to $attachment array + $this->attachment[] = array( + 0 => $string, + 1 => $name, + 2 => $name, + 3 => $encoding, + 4 => $type, + 5 => true, // isStringAttachment + 6 => 'inline', + 7 => $cid + ); + } + + /** + * Returns true if an inline attachment is present. + * @access public + * @return bool + */ + public function InlineImageExists() { + foreach($this->attachment as $attachment) { + if ($attachment[6] == 'inline') { + return true; + } + } + return false; + } + + /** + * Returns true if an attachment (non-inline) is present. + * @return bool + */ + public function AttachmentExists() { + foreach($this->attachment as $attachment) { + if ($attachment[6] == 'attachment') { + return true; + } + } + return false; + } + + /** + * Does this message have an alternative body set? + * @return bool + */ + public function AlternativeExists() { + return !empty($this->AltBody); + } + + ///////////////////////////////////////////////// + // CLASS METHODS, MESSAGE RESET + ///////////////////////////////////////////////// + + /** + * Clears all recipients assigned in the TO array. Returns void. + * @return void + */ + public function ClearAddresses() { + foreach($this->to as $to) { + unset($this->all_recipients[strtolower($to[0])]); + } + $this->to = array(); + } + + /** + * Clears all recipients assigned in the CC array. Returns void. + * @return void + */ + public function ClearCCs() { + foreach($this->cc as $cc) { + unset($this->all_recipients[strtolower($cc[0])]); + } + $this->cc = array(); + } + + /** + * Clears all recipients assigned in the BCC array. Returns void. + * @return void + */ + public function ClearBCCs() { + foreach($this->bcc as $bcc) { + unset($this->all_recipients[strtolower($bcc[0])]); + } + $this->bcc = array(); + } + + /** + * Clears all recipients assigned in the ReplyTo array. Returns void. + * @return void + */ + public function ClearReplyTos() { + $this->ReplyTo = array(); + } + + /** + * Clears all recipients assigned in the TO, CC and BCC + * array. Returns void. + * @return void + */ + public function ClearAllRecipients() { + $this->to = array(); + $this->cc = array(); + $this->bcc = array(); + $this->all_recipients = array(); + } + + /** + * Clears all previously set filesystem, string, and binary + * attachments. Returns void. + * @return void + */ + public function ClearAttachments() { + $this->attachment = array(); + } + + /** + * Clears all custom headers. Returns void. + * @return void + */ + public function ClearCustomHeaders() { + $this->CustomHeader = array(); + } + + ///////////////////////////////////////////////// + // CLASS METHODS, MISCELLANEOUS + ///////////////////////////////////////////////// + + /** + * Adds the error message to the error container. + * @access protected + * @param string $msg + * @return void + */ + protected function SetError($msg) { + $this->error_count++; + if ($this->Mailer == 'smtp' and !is_null($this->smtp)) { + $lasterror = $this->smtp->getError(); + if (!empty($lasterror) and array_key_exists('smtp_msg', $lasterror)) { + $msg .= '<p>' . $this->Lang('smtp_error') . $lasterror['smtp_msg'] . "</p>\n"; + } + } + $this->ErrorInfo = $msg; + } + + /** + * Returns the proper RFC 822 formatted date. + * @access public + * @return string + * @static + */ + public static function RFCDate() { + $tz = date('Z'); + $tzs = ($tz < 0) ? '-' : '+'; + $tz = abs($tz); + $tz = (int)($tz/3600)*100 + ($tz%3600)/60; + $result = sprintf("%s %s%04d", date('D, j M Y H:i:s'), $tzs, $tz); + + return $result; + } + + /** + * Returns the server hostname or 'localhost.localdomain' if unknown. + * @access protected + * @return string + */ + protected function ServerHostname() { + if (!empty($this->Hostname)) { + $result = $this->Hostname; + } elseif (isset($_SERVER['SERVER_NAME'])) { + $result = $_SERVER['SERVER_NAME']; + } else { + $result = 'localhost.localdomain'; + } + + return $result; + } + + /** + * Returns a message in the appropriate language. + * @access protected + * @param string $key + * @return string + */ + protected function Lang($key) { + if(count($this->language) < 1) { + $this->SetLanguage('en'); // set the default language + } + + if(isset($this->language[$key])) { + return $this->language[$key]; + } else { + return 'Language string failed to load: ' . $key; + } + } + + /** + * Returns true if an error occurred. + * @access public + * @return bool + */ + public function IsError() { + return ($this->error_count > 0); + } + + /** + * Changes every end of line from CRLF, CR or LF to $this->LE. + * @access public + * @param string $str String to FixEOL + * @return string + */ + public function FixEOL($str) { + // condense down to \n + $nstr = str_replace(array("\r\n", "\r"), "\n", $str); + // Now convert LE as needed + if ($this->LE !== "\n") { + $nstr = str_replace("\n", $this->LE, $nstr); + } + return $nstr; + } + + /** + * Adds a custom header. $name value can be overloaded to contain + * both header name and value (name:value) + * @access public + * @param string $name custom header name + * @param string $value header value + * @return void + */ + public function AddCustomHeader($name, $value=null) { + if ($value === null) { + // Value passed in as name:value + $this->CustomHeader[] = explode(':', $name, 2); + } else { + $this->CustomHeader[] = array($name, $value); + } + } + + /** + * Evaluates the message and returns modifications for inline images and backgrounds + * @access public + * @param string $message Text to be HTML modified + * @param string $basedir baseline directory for path + * @return string $message + */ + public function MsgHTML($message, $basedir = '') { + preg_match_all("/(src|background)=[\"'](.*)[\"']/Ui", $message, $images); + if(isset($images[2])) { + foreach($images[2] as $i => $url) { + // do not change urls for absolute images (thanks to corvuscorax) + if (!preg_match('#^[A-z]+://#', $url)) { + $filename = basename($url); + $directory = dirname($url); + if ($directory == '.') { + $directory = ''; + } + $cid = 'cid:' . md5($url); + $ext = pathinfo($filename, PATHINFO_EXTENSION); + $mimeType = self::_mime_types($ext); + if ( strlen($basedir) > 1 && substr($basedir, -1) != '/') { $basedir .= '/'; } + if ( strlen($directory) > 1 && substr($directory, -1) != '/') { $directory .= '/'; } + if ( $this->AddEmbeddedImage($basedir.$directory.$filename, md5($url), $filename, 'base64', $mimeType) ) { + $message = preg_replace("/".$images[1][$i]."=[\"']".preg_quote($url, '/')."[\"']/Ui", $images[1][$i]."=\"".$cid."\"", $message); + } + } + } + } + $this->IsHTML(true); + $this->Body = $message; + if (empty($this->AltBody)) { + $textMsg = trim(strip_tags(preg_replace('/<(head|title|style|script)[^>]*>.*?<\/\\1>/s', '', $message))); + if (!empty($textMsg)) { + $this->AltBody = html_entity_decode($textMsg, ENT_QUOTES, $this->CharSet); + } + } + if (empty($this->AltBody)) { + $this->AltBody = 'To view this email message, open it in a program that understands HTML!' . "\n\n"; + } + return $message; + } + + /** + * Gets the MIME type of the embedded or inline image + * @param string $ext File extension + * @access public + * @return string MIME type of ext + * @static + */ + public static function _mime_types($ext = '') { + $mimes = array( + 'xl' => 'application/excel', + 'hqx' => 'application/mac-binhex40', + 'cpt' => 'application/mac-compactpro', + 'bin' => 'application/macbinary', + 'doc' => 'application/msword', + 'word' => 'application/msword', + 'class' => 'application/octet-stream', + 'dll' => 'application/octet-stream', + 'dms' => 'application/octet-stream', + 'exe' => 'application/octet-stream', + 'lha' => 'application/octet-stream', + 'lzh' => 'application/octet-stream', + 'psd' => 'application/octet-stream', + 'sea' => 'application/octet-stream', + 'so' => 'application/octet-stream', + 'oda' => 'application/oda', + 'pdf' => 'application/pdf', + 'ai' => 'application/postscript', + 'eps' => 'application/postscript', + 'ps' => 'application/postscript', + 'smi' => 'application/smil', + 'smil' => 'application/smil', + 'mif' => 'application/vnd.mif', + 'xls' => 'application/vnd.ms-excel', + 'ppt' => 'application/vnd.ms-powerpoint', + 'wbxml' => 'application/vnd.wap.wbxml', + 'wmlc' => 'application/vnd.wap.wmlc', + 'dcr' => 'application/x-director', + 'dir' => 'application/x-director', + 'dxr' => 'application/x-director', + 'dvi' => 'application/x-dvi', + 'gtar' => 'application/x-gtar', + 'php3' => 'application/x-httpd-php', + 'php4' => 'application/x-httpd-php', + 'php' => 'application/x-httpd-php', + 'phtml' => 'application/x-httpd-php', + 'phps' => 'application/x-httpd-php-source', + 'js' => 'application/x-javascript', + 'swf' => 'application/x-shockwave-flash', + 'sit' => 'application/x-stuffit', + 'tar' => 'application/x-tar', + 'tgz' => 'application/x-tar', + 'xht' => 'application/xhtml+xml', + 'xhtml' => 'application/xhtml+xml', + 'zip' => 'application/zip', + 'mid' => 'audio/midi', + 'midi' => 'audio/midi', + 'mp2' => 'audio/mpeg', + 'mp3' => 'audio/mpeg', + 'mpga' => 'audio/mpeg', + 'aif' => 'audio/x-aiff', + 'aifc' => 'audio/x-aiff', + 'aiff' => 'audio/x-aiff', + 'ram' => 'audio/x-pn-realaudio', + 'rm' => 'audio/x-pn-realaudio', + 'rpm' => 'audio/x-pn-realaudio-plugin', + 'ra' => 'audio/x-realaudio', + 'wav' => 'audio/x-wav', + 'bmp' => 'image/bmp', + 'gif' => 'image/gif', + 'jpeg' => 'image/jpeg', + 'jpe' => 'image/jpeg', + 'jpg' => 'image/jpeg', + 'png' => 'image/png', + 'tiff' => 'image/tiff', + 'tif' => 'image/tiff', + 'eml' => 'message/rfc822', + 'css' => 'text/css', + 'html' => 'text/html', + 'htm' => 'text/html', + 'shtml' => 'text/html', + 'log' => 'text/plain', + 'text' => 'text/plain', + 'txt' => 'text/plain', + 'rtx' => 'text/richtext', + 'rtf' => 'text/rtf', + 'xml' => 'text/xml', + 'xsl' => 'text/xml', + 'mpeg' => 'video/mpeg', + 'mpe' => 'video/mpeg', + 'mpg' => 'video/mpeg', + 'mov' => 'video/quicktime', + 'qt' => 'video/quicktime', + 'rv' => 'video/vnd.rn-realvideo', + 'avi' => 'video/x-msvideo', + 'movie' => 'video/x-sgi-movie' + ); + return (!isset($mimes[strtolower($ext)])) ? 'application/octet-stream' : $mimes[strtolower($ext)]; + } + + /** + * Set (or reset) Class Objects (variables) + * + * Usage Example: + * $page->set('X-Priority', '3'); + * + * @access public + * @param string $name Parameter Name + * @param mixed $value Parameter Value + * NOTE: will not work with arrays, there are no arrays to set/reset + * @throws phpmailerException + * @return bool + * @todo Should this not be using __set() magic function? + */ + public function set($name, $value = '') { + try { + if (isset($this->$name) ) { + $this->$name = $value; + } else { + throw new phpmailerException($this->Lang('variable_set') . $name, self::STOP_CRITICAL); + } + } catch (Exception $e) { + $this->SetError($e->getMessage()); + if ($e->getCode() == self::STOP_CRITICAL) { + return false; + } + } + return true; + } + + /** + * Strips newlines to prevent header injection. + * @access public + * @param string $str String + * @return string + */ + public function SecureHeader($str) { + return trim(str_replace(array("\r", "\n"), '', $str)); + } + + /** + * Set the private key file and password to sign the message. + * + * @access public + * @param $cert_filename + * @param string $key_filename Parameter File Name + * @param string $key_pass Password for private key + */ + public function Sign($cert_filename, $key_filename, $key_pass) { + $this->sign_cert_file = $cert_filename; + $this->sign_key_file = $key_filename; + $this->sign_key_pass = $key_pass; + } + + /** + * Set the private key file and password to sign the message. + * + * @access public + * @param string $txt + * @return string + */ + public function DKIM_QP($txt) { + $line = ''; + for ($i = 0; $i < strlen($txt); $i++) { + $ord = ord($txt[$i]); + if ( ((0x21 <= $ord) && ($ord <= 0x3A)) || $ord == 0x3C || ((0x3E <= $ord) && ($ord <= 0x7E)) ) { + $line .= $txt[$i]; + } else { + $line .= "=".sprintf("%02X", $ord); + } + } + return $line; + } + + /** + * Generate DKIM signature + * + * @access public + * @param string $s Header + * @return string + */ + public function DKIM_Sign($s) { + $privKeyStr = file_get_contents($this->DKIM_private); + if ($this->DKIM_passphrase != '') { + $privKey = openssl_pkey_get_private($privKeyStr, $this->DKIM_passphrase); + } else { + $privKey = $privKeyStr; + } + if (openssl_sign($s, $signature, $privKey)) { + return base64_encode($signature); + } + return ''; + } + + /** + * Generate DKIM Canonicalization Header + * + * @access public + * @param string $s Header + * @return string + */ + public function DKIM_HeaderC($s) { + $s = preg_replace("/\r\n\s+/", " ", $s); + $lines = explode("\r\n", $s); + foreach ($lines as $key => $line) { + list($heading, $value) = explode(":", $line, 2); + $heading = strtolower($heading); + $value = preg_replace("/\s+/", " ", $value) ; // Compress useless spaces + $lines[$key] = $heading.":".trim($value) ; // Don't forget to remove WSP around the value + } + $s = implode("\r\n", $lines); + return $s; + } + + /** + * Generate DKIM Canonicalization Body + * + * @access public + * @param string $body Message Body + * @return string + */ + public function DKIM_BodyC($body) { + if ($body == '') return "\r\n"; + // stabilize line endings + $body = str_replace("\r\n", "\n", $body); + $body = str_replace("\n", "\r\n", $body); + // END stabilize line endings + while (substr($body, strlen($body) - 4, 4) == "\r\n\r\n") { + $body = substr($body, 0, strlen($body) - 2); + } + return $body; + } + + /** + * Create the DKIM header, body, as new header + * + * @access public + * @param string $headers_line Header lines + * @param string $subject Subject + * @param string $body Body + * @return string + */ + public function DKIM_Add($headers_line, $subject, $body) { + $DKIMsignatureType = 'rsa-sha1'; // Signature & hash algorithms + $DKIMcanonicalization = 'relaxed/simple'; // Canonicalization of header/body + $DKIMquery = 'dns/txt'; // Query method + $DKIMtime = time() ; // Signature Timestamp = seconds since 00:00:00 - Jan 1, 1970 (UTC time zone) + $subject_header = "Subject: $subject"; + $headers = explode($this->LE, $headers_line); + $from_header = ""; + $to_header = ""; + foreach($headers as $header) { + if (strpos($header, 'From:') === 0) { + $from_header = $header; + } elseif (strpos($header, 'To:') === 0) { + $to_header = $header; + } + } + $from = str_replace('|', '=7C', $this->DKIM_QP($from_header)); + $to = str_replace('|', '=7C', $this->DKIM_QP($to_header)); + $subject = str_replace('|', '=7C', $this->DKIM_QP($subject_header)) ; // Copied header fields (dkim-quoted-printable + $body = $this->DKIM_BodyC($body); + $DKIMlen = strlen($body) ; // Length of body + $DKIMb64 = base64_encode(pack("H*", sha1($body))) ; // Base64 of packed binary SHA-1 hash of body + $ident = ($this->DKIM_identity == '')? '' : " i=" . $this->DKIM_identity . ";"; + $dkimhdrs = "DKIM-Signature: v=1; a=" . $DKIMsignatureType . "; q=" . $DKIMquery . "; l=" . $DKIMlen . "; s=" . $this->DKIM_selector . ";\r\n". + "\tt=" . $DKIMtime . "; c=" . $DKIMcanonicalization . ";\r\n". + "\th=From:To:Subject;\r\n". + "\td=" . $this->DKIM_domain . ";" . $ident . "\r\n". + "\tz=$from\r\n". + "\t|$to\r\n". + "\t|$subject;\r\n". + "\tbh=" . $DKIMb64 . ";\r\n". + "\tb="; + $toSign = $this->DKIM_HeaderC($from_header . "\r\n" . $to_header . "\r\n" . $subject_header . "\r\n" . $dkimhdrs); + $signed = $this->DKIM_Sign($toSign); + return "X-PHPMAILER-DKIM: code.google.com/a/apache-extras.org/p/phpmailer/\r\n".$dkimhdrs.$signed."\r\n"; + } + + /** + * Perform callback + * @param boolean $isSent + * @param string $to + * @param string $cc + * @param string $bcc + * @param string $subject + * @param string $body + * @param string $from + */ + protected function doCallback($isSent, $to, $cc, $bcc, $subject, $body, $from=null) { + if (!empty($this->action_function) && is_callable($this->action_function)) { + $params = array($isSent, $to, $cc, $bcc, $subject, $body, $from); + call_user_func_array($this->action_function, $params); + } + } +} + +/** + * Exception handler for PHPMailer + * @package PHPMailer + */ +class phpmailerException extends Exception { + /** + * Prettify error message output + * @return string + */ + public function errorMessage() { + $errorMsg = '<strong>' . $this->getMessage() . "</strong><br />\n"; + return $errorMsg; + } +} +?> diff --git a/site/config/class.smtp.php b/site/config/class.smtp.php new file mode 100644 index 0000000..1435f48 --- /dev/null +++ b/site/config/class.smtp.php @@ -0,0 +1,703 @@ +<?php +/*~ class.smtp.php +.---------------------------------------------------------------------------. +| Software: PHPMailer - PHP email class | +| Version: 5.1 | +| Contact: via sourceforge.net support pages (also www.codeworxtech.com) | +| Info: http://phpmailer.sourceforge.net | +| Support: http://sourceforge.net/projects/phpmailer/ | +| ------------------------------------------------------------------------- | +| Admin: Andy Prevost (project admininistrator) | +| Authors: Andy Prevost (codeworxtech) codeworxtech@users.sourceforge.net | +| : Marcus Bointon (coolbru) coolbru@users.sourceforge.net | +| Founder: Brent R. Matzelle (original founder) | +| Copyright (c) 2004-2009, Andy Prevost. All Rights Reserved. | +| Copyright (c) 2001-2003, Brent R. Matzelle | +| ------------------------------------------------------------------------- | +| License: Distributed under the Lesser General Public License (LGPL) | +| http://www.gnu.org/copyleft/lesser.html | +| This program is distributed in the hope that it will be useful - WITHOUT | +| ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | +| FITNESS FOR A PARTICULAR PURPOSE. | +| ------------------------------------------------------------------------- | +| We offer a number of paid services (www.codeworxtech.com): | +| - Web Hosting on highly optimized fast and secure servers | +| - Technology Consulting | +| - Oursourcing (highly qualified programmers and graphic designers) | +'---------------------------------------------------------------------------' +*/ +/** + * PHPMailer - PHP SMTP email transport class + * NOTE: Designed for use with PHP version 5 and up + * @package PHPMailer + * @author Andy Prevost + * @author Marcus Bointon + * @copyright 2004 - 2008 Andy Prevost + * @license http://www.gnu.org/copyleft/lesser.html Distributed under the Lesser General Public License (LGPL) + * @version $Id$ + */ +/** + * SMTP is rfc 821 compliant and implements all the rfc 821 SMTP + * commands except TURN which will always return a not implemented + * error. SMTP also provides some utility methods for sending mail + * to an SMTP server. + * original author: Chris Ryan + */ +class SMTP { + /** + * SMTP server port + * @var int + */ + public $SMTP_PORT = 25; + /** + * SMTP reply line ending + * @var string + */ + public $CRLF = "\r\n"; + /** + * Sets whether debugging is turned on + * @var bool + */ + public $do_debug; // the level of debug to perform + /** + * Sets VERP use on/off (default is off) + * @var bool + */ + public $do_verp = false; + ///////////////////////////////////////////////// + // PROPERTIES, PRIVATE AND PROTECTED + ///////////////////////////////////////////////// + private $smtp_conn; // the socket to the server + private $error; // error if any on the last call + private $helo_rply; // the reply the server sent to us for HELO + /** + * Initialize the class so that the data is in a known state. + * @access public + * @return void + */ + public function __construct() { + $this->smtp_conn = 0; + $this->error = null; + $this->helo_rply = null; + $this->do_debug = 0; + } + ///////////////////////////////////////////////// + // CONNECTION FUNCTIONS + ///////////////////////////////////////////////// + /** + * Connect to the server specified on the port specified. + * If the port is not specified use the default SMTP_PORT. + * If tval is specified then a connection will try and be + * established with the server for that number of seconds. + * If tval is not specified the default is 30 seconds to + * try on the connection. + * + * SMTP CODE SUCCESS: 220 + * SMTP CODE FAILURE: 421 + * @access public + * @return bool + */ + public function Connect($host, $port = 0, $tval = 30) { + // set the error val to null so there is no confusion + $this->error = null; + // make sure we are __not__ connected + if($this->connected()) { + // already connected, generate error + $this->error = array("error" => "Already connected to a server"); + return false; + } + if(empty($port)) { + $port = $this->SMTP_PORT; + } + // connect to the smtp server + $this->smtp_conn = @fsockopen($host, // the host of the server + $port, // the port to use + $errno, // error number if any + $errstr, // error message if any + $tval); // give up after ? secs + // verify we connected properly + if(empty($this->smtp_conn)) { + $this->error = array("error" => "Failed to connect to server", + "errno" => $errno, + "errstr" => $errstr); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": $errstr ($errno)" . $this->CRLF . '<br />'; + } + return false; + } + // SMTP server can take longer to respond, give longer timeout for first read + // Windows does not have support for this timeout function + if(substr(PHP_OS, 0, 3) != "WIN") + socket_set_timeout($this->smtp_conn, $tval, 0); + // get any announcement + $announce = $this->get_lines(); + if($this->do_debug >= 2) { + echo "SMTP -> FROM SERVER:" . $announce . $this->CRLF . '<br />'; + } + return true; + } + /** + * Initiate a TLS communication with the server. + * + * SMTP CODE 220 Ready to start TLS + * SMTP CODE 501 Syntax error (no parameters allowed) + * SMTP CODE 454 TLS not available due to temporary reason + * @access public + * @return bool success + */ + public function StartTLS() { + $this->error = null; # to avoid confusion + if(!$this->connected()) { + $this->error = array("error" => "Called StartTLS() without being connected"); + return false; + } + fputs($this->smtp_conn,"STARTTLS" . $this->CRLF); + $rply = $this->get_lines(); + $code = substr($rply,0,3); + if($this->do_debug >= 2) { + echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />'; + } + if($code != 220) { + $this->error = + array("error" => "STARTTLS not accepted from server", + "smtp_code" => $code, + "smtp_msg" => substr($rply,4)); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />'; + } + return false; + } + // Begin encrypted connection + if(!stream_socket_enable_crypto($this->smtp_conn, true, STREAM_CRYPTO_METHOD_TLS_CLIENT)) { + return false; + } + return true; + } + /** + * Performs SMTP authentication. Must be run after running the + * Hello() method. Returns true if successfully authenticated. + * @access public + * @return bool + */ + public function Authenticate($username, $password) { + // Start authentication + fputs($this->smtp_conn,"AUTH LOGIN" . $this->CRLF); + $rply = $this->get_lines(); + $code = substr($rply,0,3); + if($code != 334) { + $this->error = + array("error" => "AUTH not accepted from server", + "smtp_code" => $code, + "smtp_msg" => substr($rply,4)); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />'; + } + return false; + } + // Send encoded username + fputs($this->smtp_conn, base64_encode($username) . $this->CRLF); + $rply = $this->get_lines(); + $code = substr($rply,0,3); + if($code != 334) { + $this->error = + array("error" => "Username not accepted from server", + "smtp_code" => $code, + "smtp_msg" => substr($rply,4)); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />'; + } + return false; + } + // Send encoded password + fputs($this->smtp_conn, base64_encode($password) . $this->CRLF); + $rply = $this->get_lines(); + $code = substr($rply,0,3); + if($code != 235) { + $this->error = + array("error" => "Password not accepted from server", + "smtp_code" => $code, + "smtp_msg" => substr($rply,4)); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />'; + } + return false; + } + return true; + } + /** + * Returns true if connected to a server otherwise false + * @access public + * @return bool + */ + public function Connected() { + if(!empty($this->smtp_conn)) { + $sock_status = socket_get_status($this->smtp_conn); + if($sock_status["eof"]) { + // the socket is valid but we are not connected + if($this->do_debug >= 1) { + echo "SMTP -> NOTICE:" . $this->CRLF . "EOF caught while checking if connected"; + } + $this->Close(); + return false; + } + return true; // everything looks good + } + return false; + } + /** + * Closes the socket and cleans up the state of the class. + * It is not considered good to use this function without + * first trying to use QUIT. + * @access public + * @return void + */ + public function Close() { + $this->error = null; // so there is no confusion + $this->helo_rply = null; + if(!empty($this->smtp_conn)) { + // close the connection and cleanup + fclose($this->smtp_conn); + $this->smtp_conn = 0; + } + } + ///////////////////////////////////////////////// + // SMTP COMMANDS + ///////////////////////////////////////////////// + /** + * Issues a data command and sends the msg_data to the server + * finializing the mail transaction. $msg_data is the message + * that is to be send with the headers. Each header needs to be + * on a single line followed by a <CRLF> with the message headers + * and the message body being seperated by and additional <CRLF>. + * + * Implements rfc 821: DATA <CRLF> + * + * SMTP CODE INTERMEDIATE: 354 + * [data] + * <CRLF>.<CRLF> + * SMTP CODE SUCCESS: 250 + * SMTP CODE FAILURE: 552,554,451,452 + * SMTP CODE FAILURE: 451,554 + * SMTP CODE ERROR : 500,501,503,421 + * @access public + * @return bool + */ + public function Data($msg_data) { + $this->error = null; // so no confusion is caused + if(!$this->connected()) { + $this->error = array( + "error" => "Called Data() without being connected"); + return false; + } + fputs($this->smtp_conn,"DATA" . $this->CRLF); + $rply = $this->get_lines(); + $code = substr($rply,0,3); + if($this->do_debug >= 2) { + echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />'; + } + if($code != 354) { + $this->error = + array("error" => "DATA command not accepted from server", + "smtp_code" => $code, + "smtp_msg" => substr($rply,4)); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />'; + } + return false; + } + /* the server is ready to accept data! + * according to rfc 821 we should not send more than 1000 + * including the CRLF + * characters on a single line so we will break the data up + * into lines by \r and/or \n then if needed we will break + * each of those into smaller lines to fit within the limit. + * in addition we will be looking for lines that start with + * a period '.' and append and additional period '.' to that + * line. NOTE: this does not count towards limit. + */ + // normalize the line breaks so we know the explode works + $msg_data = str_replace("\r\n","\n",$msg_data); + $msg_data = str_replace("\r","\n",$msg_data); + $lines = explode("\n",$msg_data); + /* we need to find a good way to determine is headers are + * in the msg_data or if it is a straight msg body + * currently I am assuming rfc 822 definitions of msg headers + * and if the first field of the first line (':' sperated) + * does not contain a space then it _should_ be a header + * and we can process all lines before a blank "" line as + * headers. + */ + $field = substr($lines[0],0,strpos($lines[0],":")); + $in_headers = false; + if(!empty($field) && !strstr($field," ")) { + $in_headers = true; + } + $max_line_length = 998; // used below; set here for ease in change + while(list(,$line) = @each($lines)) { + $lines_out = null; + if($line == "" && $in_headers) { + $in_headers = false; + } + // ok we need to break this line up into several smaller lines + while(strlen($line) > $max_line_length) { + $pos = strrpos(substr($line,0,$max_line_length)," "); + // Patch to fix DOS attack + if(!$pos) { + $pos = $max_line_length - 1; + $lines_out[] = substr($line,0,$pos); + $line = substr($line,$pos); + } else { + $lines_out[] = substr($line,0,$pos); + $line = substr($line,$pos + 1); + } + /* if processing headers add a LWSP-char to the front of new line + * rfc 822 on long msg headers + */ + if($in_headers) { + $line = "\t" . $line; + } + } + $lines_out[] = $line; + // send the lines to the server + while(list(,$line_out) = @each($lines_out)) { + if(strlen($line_out) > 0) + { + if(substr($line_out, 0, 1) == ".") { + $line_out = "." . $line_out; + } + } + fputs($this->smtp_conn,$line_out . $this->CRLF); + } + } + // message data has been sent + fputs($this->smtp_conn, $this->CRLF . "." . $this->CRLF); + $rply = $this->get_lines(); + $code = substr($rply,0,3); + if($this->do_debug >= 2) { + echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />'; + } + if($code != 250) { + $this->error = + array("error" => "DATA not accepted from server", + "smtp_code" => $code, + "smtp_msg" => substr($rply,4)); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />'; + } + return false; + } + return true; + } + /** + * Sends the HELO command to the smtp server. + * This makes sure that we and the server are in + * the same known state. + * + * Implements from rfc 821: HELO <SP> <domain> <CRLF> + * + * SMTP CODE SUCCESS: 250 + * SMTP CODE ERROR : 500, 501, 504, 421 + * @access public + * @return bool + */ + public function Hello($host = '') { + $this->error = null; // so no confusion is caused + if(!$this->connected()) { + $this->error = array( + "error" => "Called Hello() without being connected"); + return false; + } + // if hostname for HELO was not specified send default + if(empty($host)) { + // determine appropriate default to send to server + $host = "localhost"; + } + // Send extended hello first (RFC 2821) + if(!$this->SendHello("EHLO", $host)) { + if(!$this->SendHello("HELO", $host)) { + return false; + } + } + return true; + } + /** + * Sends a HELO/EHLO command. + * @access private + * @return bool + */ + private function SendHello($hello, $host) { + fputs($this->smtp_conn, $hello . " " . $host . $this->CRLF); + $rply = $this->get_lines(); + $code = substr($rply,0,3); + if($this->do_debug >= 2) { + echo "SMTP -> FROM SERVER: " . $rply . $this->CRLF . '<br />'; + } + if($code != 250) { + $this->error = + array("error" => $hello . " not accepted from server", + "smtp_code" => $code, + "smtp_msg" => substr($rply,4)); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />'; + } + return false; + } + $this->helo_rply = $rply; + return true; + } + /** + * Starts a mail transaction from the email address specified in + * $from. Returns true if successful or false otherwise. If True + * the mail transaction is started and then one or more Recipient + * commands may be called followed by a Data command. + * + * Implements rfc 821: MAIL <SP> FROM:<reverse-path> <CRLF> + * + * SMTP CODE SUCCESS: 250 + * SMTP CODE SUCCESS: 552,451,452 + * SMTP CODE SUCCESS: 500,501,421 + * @access public + * @return bool + */ + public function Mail($from) { + $this->error = null; // so no confusion is caused + if(!$this->connected()) { + $this->error = array( + "error" => "Called Mail() without being connected"); + return false; + } + $useVerp = ($this->do_verp ? "XVERP" : ""); + fputs($this->smtp_conn,"MAIL FROM:<" . $from . ">" . $useVerp . $this->CRLF); + $rply = $this->get_lines(); + $code = substr($rply,0,3); + if($this->do_debug >= 2) { + echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />'; + } + if($code != 250) { + $this->error = + array("error" => "MAIL not accepted from server", + "smtp_code" => $code, + "smtp_msg" => substr($rply,4)); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />'; + } + return false; + } + return true; + } + /** + * Sends the quit command to the server and then closes the socket + * if there is no error or the $close_on_error argument is true. + * + * Implements from rfc 821: QUIT <CRLF> + * + * SMTP CODE SUCCESS: 221 + * SMTP CODE ERROR : 500 + * @access public + * @return bool + */ + public function Quit($close_on_error = true) { + $this->error = null; // so there is no confusion + if(!$this->connected()) { + $this->error = array( + "error" => "Called Quit() without being connected"); + return false; + } + // send the quit command to the server + fputs($this->smtp_conn,"quit" . $this->CRLF); + // get any good-bye messages + $byemsg = $this->get_lines(); + if($this->do_debug >= 2) { + echo "SMTP -> FROM SERVER:" . $byemsg . $this->CRLF . '<br />'; + } + $rval = true; + $e = null; + $code = substr($byemsg,0,3); + if($code != 221) { + // use e as a tmp var cause Close will overwrite $this->error + $e = array("error" => "SMTP server rejected quit command", + "smtp_code" => $code, + "smtp_rply" => substr($byemsg,4)); + $rval = false; + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $e["error"] . ": " . $byemsg . $this->CRLF . '<br />'; + } + } + if(empty($e) || $close_on_error) { + $this->Close(); + } + return $rval; + } + /** + * Sends the command RCPT to the SMTP server with the TO: argument of $to. + * Returns true if the recipient was accepted false if it was rejected. + * + * Implements from rfc 821: RCPT <SP> TO:<forward-path> <CRLF> + * + * SMTP CODE SUCCESS: 250,251 + * SMTP CODE FAILURE: 550,551,552,553,450,451,452 + * SMTP CODE ERROR : 500,501,503,421 + * @access public + * @return bool + */ + public function Recipient($to) { + $this->error = null; // so no confusion is caused + if(!$this->connected()) { + $this->error = array( + "error" => "Called Recipient() without being connected"); + return false; + } + fputs($this->smtp_conn,"RCPT TO:<" . $to . ">" . $this->CRLF); + $rply = $this->get_lines(); + $code = substr($rply,0,3); + if($this->do_debug >= 2) { + echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />'; + } + if($code != 250 && $code != 251) { + $this->error = + array("error" => "RCPT not accepted from server", + "smtp_code" => $code, + "smtp_msg" => substr($rply,4)); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />'; + } + return false; + } + return true; + } + /** + * Sends the RSET command to abort and transaction that is + * currently in progress. Returns true if successful false + * otherwise. + * + * Implements rfc 821: RSET <CRLF> + * + * SMTP CODE SUCCESS: 250 + * SMTP CODE ERROR : 500,501,504,421 + * @access public + * @return bool + */ + public function Reset() { + $this->error = null; // so no confusion is caused + if(!$this->connected()) { + $this->error = array( + "error" => "Called Reset() without being connected"); + return false; + } + fputs($this->smtp_conn,"RSET" . $this->CRLF); + $rply = $this->get_lines(); + $code = substr($rply,0,3); + if($this->do_debug >= 2) { + echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />'; + } + if($code != 250) { + $this->error = + array("error" => "RSET failed", + "smtp_code" => $code, + "smtp_msg" => substr($rply,4)); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />'; + } + return false; + } + return true; + } + /** + * Starts a mail transaction from the email address specified in + * $from. Returns true if successful or false otherwise. If True + * the mail transaction is started and then one or more Recipient + * commands may be called followed by a Data command. This command + * will send the message to the users terminal if they are logged + * in and send them an email. + * + * Implements rfc 821: SAML <SP> FROM:<reverse-path> <CRLF> + * + * SMTP CODE SUCCESS: 250 + * SMTP CODE SUCCESS: 552,451,452 + * SMTP CODE SUCCESS: 500,501,502,421 + * @access public + * @return bool + */ + public function SendAndMail($from) { + $this->error = null; // so no confusion is caused + if(!$this->connected()) { + $this->error = array( + "error" => "Called SendAndMail() without being connected"); + return false; + } + fputs($this->smtp_conn,"SAML FROM:" . $from . $this->CRLF); + $rply = $this->get_lines(); + $code = substr($rply,0,3); + if($this->do_debug >= 2) { + echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />'; + } + if($code != 250) { + $this->error = + array("error" => "SAML not accepted from server", + "smtp_code" => $code, + "smtp_msg" => substr($rply,4)); + if($this->do_debug >= 1) { + echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />'; + } + return false; + } + return true; + } + /** + * This is an optional command for SMTP that this class does not + * support. This method is here to make the RFC821 Definition + * complete for this class and __may__ be implimented in the future + * + * Implements from rfc 821: TURN <CRLF> + * + * SMTP CODE SUCCESS: 250 + * SMTP CODE FAILURE: 502 + * SMTP CODE ERROR : 500, 503 + * @access public + * @return bool + */ + public function Turn() { + $this->error = array("error" => "This method, TURN, of the SMTP ". + "is not implemented"); + if($this->do_debug >= 1) { + echo "SMTP -> NOTICE: " . $this->error["error"] . $this->CRLF . '<br />'; + } + return false; + } + /** + * Get the current error + * @access public + * @return array + */ + public function getError() { + return $this->error; + } + ///////////////////////////////////////////////// + // INTERNAL FUNCTIONS + ///////////////////////////////////////////////// + /** + * Read in as many lines as possible + * either before eof or socket timeout occurs on the operation. + * With SMTP we can tell if we have more lines to read if the + * 4th character is '-' symbol. If it is a space then we don't + * need to read anything else. + * @access private + * @return string + */ + private function get_lines() { + $data = ""; + while($str = @fgets($this->smtp_conn,515)) { + if($this->do_debug >= 4) { + echo "SMTP -> get_lines(): \$data was \"$data\"" . $this->CRLF . '<br />'; + echo "SMTP -> get_lines(): \$str is \"$str\"" . $this->CRLF . '<br />'; + } + $data .= $str; + if($this->do_debug >= 4) { + echo "SMTP -> get_lines(): \$data is \"$data\"" . $this->CRLF . '<br />'; + } + // if 4th character is a space, we are done reading, break the loop + if(substr($str,3,1) == " ") { break; } + } + return $data; + } +} diff --git a/site/config/config.inc.php b/site/config/config.inc.php new file mode 100644 index 0000000..0b2db70 --- /dev/null +++ b/site/config/config.inc.php @@ -0,0 +1,35 @@ +<?php +function connect_base() { +$host = getenv('DB_HOST') ?: 'db'; +$user = getenv('DB_USERNAME') ?: 'pv_deciday18'; +$pass = getenv('DB_PASSWORD') ?: 'NfcZhw7TyHC3ed5d'; +$bdd = getenv('DB_DATABASE') ?: 'deciday_18'; + try { + // On fait un try catch pour être sûr que la connexion à mysql se fasse + // $db = new PDO( 'mysql:host=' . $host . ';dbname=' . $bdd . ';charset=utf8', $user, $pass ); + $db = new PDO( 'mysql:host=' . $host . ';dbname=' . $bdd , $user, $pass, array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'') ); + } + // On instancie un objet PDO. Le host est l'adresse locale sur laquelle on se connecte. dbname correspond au nom de la base de données. + catch ( Exception $e ) { + //die va arreter le chargement du script PHP et de la page et afficher l'erreur + die( 'Erreur : ' . $e->getMessage() ); + } + return($db); +} + +/************************************************************************* + Gestion des erreurs MYSQL +*************************************************************************/ + +function mysql_die( $error = "" ) { + global $strError, $strMySQLSaid, $strBack; + echo "<b> $strError </b><p>"; + if ( empty( $error ) ) + echo $strMySQLSaid . mysql_error(); + else + echo $strMySQLSaid . $error; + exit; +} + + +?> \ No newline at end of file diff --git a/site/config/lib.inc.php b/site/config/lib.inc.php new file mode 100644 index 0000000..d4643d8 --- /dev/null +++ b/site/config/lib.inc.php @@ -0,0 +1,187 @@ +<?php + + /********************************** + FONCTIONS DE CRYPTAGE + **********************************/ + + // crypte une chaine (via une clé de cryptage) + function crypter($maCleDeCryptage="", $maChaineACrypter){ + if($maCleDeCryptage==""){ + $maCleDeCryptage=$GLOBALS[‘PHPSESSID’]; + } + $maCleDeCryptage = md5($maCleDeCryptage); + $letter = -1; + $newstr = ''; + $strlen = strlen($maChaineACrypter); + for($i = 0; $i < $strlen; $i++ ){ + $letter++; + if ( $letter > 31 ){ + $letter = 0; + } + $neword = ord($maChaineACrypter{$i}) + ord($maCleDeCryptage{$letter}); + if ( $neword > 255 ){ + $neword -= 256; + } + $newstr .= chr($neword); + } + return base64_encode($newstr); + } + + // décrypte une chaine (avec la même clé de cryptage) + function decrypter($maCleDeCryptage="", $maChaineCrypter){ + if($maCleDeCryptage==""){ + $maCleDeCryptage=$GLOBALS[‘PHPSESSID’]; + } + $maCleDeCryptage = md5($maCleDeCryptage); + $letter = -1; + $newstr = ''; + $maChaineCrypter = base64_decode($maChaineCrypter); + $strlen = strlen($maChaineCrypter); + for ( $i = 0; $i < $strlen; $i++ ){ + $letter++; + if ( $letter > 31 ){ + $letter = 0; + } + $neword = ord($maChaineCrypter{$i}) - ord($maCleDeCryptage{$letter}); + if ( $neword < 1 ){ + $neword += 256; + } + $newstr .= chr($neword); + } + return $newstr; + } + + //Définit une clé de cryptage + function getCleDeCryptage(){ + return $maCleDeCryptage = "Xàùé4f8s6c2D"; + } + + //Affichage du contenu des boites à outils + function listFilesBao($cat='', $unblock = 0){ + + $tFilesBao = array(); + + //Fichiers accessibles par tous + // Fichiers disponible dans la sous-catégorie "Recrutement" + if($cat=='recrutement' && $unblock == 0){ + $tFilesBao[]=array('file' => 'Mail_pour_colleges_et_lycees.docx', 'title' => 'Email de sollicitation'); + $tFilesBao[]=array('file' => 'Presentation_Deciday_pour_les_acteurs.pdf','title' => 'Dossier de présentation'); + } + // Fichiers disponible dans la sous-catégorie "Guide" + if($cat=='guide' && $unblock == 0){ + $tFilesBao[]=array('file' => 'Guide-Deciday-2018.pdf','title' => 'Rôle des CFA et des LP'); + $tFilesBao[]=array('file' => 'Guide-communication-CFA-LP.pdf','title' => 'Guide de communication Deciday ! pour les CFA et Lycées professionnels'); + } + + // Les affiches + // NIV 1 + if ($cat=='affiches' && $unblock == 0){ + $tFilesBao[]=array('file' => 'Affiche_deciday_2019_cfa.pdf', 'title' => 'Affiche Deciday ! CFA'); + $tFilesBao[]=array('file' => 'Affiche_deciday_2019_lycees_pro.pdf', 'title' => 'Affiche Deciday ! Lycées professionnels'); + $tFilesBao[]=array('file' => 'Affiche_deciday_2019_professionnels.pdf', 'title' => 'Affiche Deciday ! Professionnels'); + } + + // Les kits pédagoqiues + // NIV 1 + if($cat=='kitPedago' && $unblock == 0){ + $tFilesBao[]=array('file' => 'Kit_pedagogique_colleges_et_lycees_guide_deciday_enseignants_2018.pdf', 'title' => 'Kit pédagogique collèges et lycées guide Deciday ! enseignants'); + $tFilesBao[]=array('file' => 'Kit_pedagogique_colleges_et_lycees_guide_deciday_eleves_2018.pdf', 'title' => 'Kit pédagogique collèges et lycées guide Deciday ! élèves'); + $tFilesBao[]=array('file' => 'Kit_pedagogique_colleges_et_lycees_guide_poster.pdf', 'title' => 'Kit pédagogique collèges et lycées Poster de classe'); + } + + // NIV 2 + if($unblock==1 && $cat=='kitPedago'){ + $tFilesBao[] = array('file' => 'https://we.tl/t-Zz9oQ2c4mE','title' => 'Les clips'); + } + + // Les kits d'animations + // NIV 2 + if ($unblock==1 && $cat=='kitAnim'){ + $tFilesBao[] = array('file' => 'Kit_d_animation_Presentation_Deciday_v2.pdf','title' => 'Kit d’animation présentation Deciday !'); + $tFilesBao[] = array('file' => 'Kit_d_animation_Fiches_pratiques_Deciday.pdf','title' => 'Kit d’animation fiches pratiques Deciday !'); + } + + return $tFilesBao; + + } + + //Affichage du créneau en créneau horaire compréhensible + function getCreneau($creneau){ + + //$tCreneaux = array('am1'=>'de 8h00 à 9h30','am2'=>'de 10h00 à 11h30','pm1'=>'de 14h00 à 15h30','pm2'=>'de 16h00 à 17h30'); + $tCreneaux = array('am1'=>'Le matin','am2'=>'Le matin','pm1'=>'L\'après-midi','pm2'=>'L\'après-midi'); + + return $tCreneaux[$creneau]; + + } + + //Affichage du créneau en créneau horaire compréhensible + function getCreneauPlus($creneau){ + + //$tCreneaux = array('am1'=>'de 8h00 à 9h30','am2'=>'de 10h00 à 11h30','pm1'=>'de 14h00 à 15h30','pm2'=>'de 16h00 à 17h30'); + $tCreneaux = array('am1'=>'Matin 1','am2'=>'Matin 2','pm1'=>'Après-midi 1','pm2'=>'Après-midi 2'); + + return $tCreneaux[$creneau]; + + } + + //Affichage du créneau en créneau horaire compréhensible pour les sollicitations + function getCreneauSol($creneauSol){ + + //$tCreneaux = array('am1'=>'de 8h00 à 9h30','am2'=>'de 10h00 à 11h30','pm1'=>'de 14h00 à 15h30','pm2'=>'de 16h00 à 17h30'); + $tCreneaux = array('am'=>'Le matin','pm'=>'L\'après-midi'); + + return $tCreneaux[$creneauSol]; + + } + + + //recuperer une date de mysql + function MysqlToDateFr($date){ + return date("d/m/Y", strtotime($date)); + } + + //insérer une date dans mysql + function DateFrToMysql($date){ + list( $month, $day, $year ) = split( '[/-]', $date ); + // format de base : Jul 14, 2004 + return $date = trim($year)."-".trim($day)."-".trim($month); + } + +function Password($nbr_caracteres,$base) { + //srand(time()); + if($base==0) $choix = "ABCDEFGHIJKLMNPQRSTUVWXYZ123456789"; + elseif($base==1) $choix = "ABCDEFGHJKLMNPQRSTUVWXYZ"; + elseif($base==2) $choix = "23456789"; + //$choix = "abcdefghijklmnopqrstuvwxyz123456789"; + $pass = ""; + while(strlen($pass)<$nbr_caracteres) { + $pass .= substr($choix,(rand()%(strlen($choix))),1); + } + + return($pass); + exit ; +} + +function verifCaptcha($response) { + // Ma clé privée + $secret = "6LfPdIIUAAAAAHlHrDhzErifvXgm0HfFB-aI2Vzr"; + + // On récupère l'IP de l'utilisateur + $remoteip = $_SERVER['REMOTE_ADDR']; + + $api_url = "https://www.google.com/recaptcha/api/siteverify?secret=" + . $secret + . "&response=" . $response + . "&remoteip=" . $remoteip ; + + $decode = json_decode(file_get_contents($api_url), true); + + if ($decode['success'] == true) { + + return true; + + } else { + return false; + } +} diff --git a/site/config/lib_personal_PhPExcel.php b/site/config/lib_personal_PhPExcel.php new file mode 100644 index 0000000..63fce73 --- /dev/null +++ b/site/config/lib_personal_PhPExcel.php @@ -0,0 +1,363 @@ +<?php + +/** + * Librairie d'utilisation de PHPExcel version 1.7.8, 2012-10-12 + * Toute modification sur cette librairie peut entrainer des conséquences néfastes sur l'utilisation des fonctions suivantes. + * @version 1.0 - 13/11/2012 + */ +// Librairies utilisées pour l'utilisabilité de la librairie présente +include('PHPExcel/Classes/PHPExcel/IOFactory.php'); +include('PHPExcel/Classes/PHPExcel/Cell/DataType.php'); +include('PHPExcel/Classes/PHPExcel/RichText.php'); +include('PHPExcel/Classes/PHPExcel.php'); +include('PHPExcel/Classes/PHPExcel/Writer/Excel2007.php'); + +/** + * Retourne le nombre total de colonne présent d'ans la feuille'une feuille + * @param type $fichier Le chemin absolu vers le fichier + * @param type $numeroFeuille Le numéro de la feuille à étudier + * @return int Le nombre de colonne + */ +function getNombreColonne($fichier, $numeroFeuille) { + $objetPHPExcel = PHPExcel_IOFactory::load($fichier); + $feuille = $objetPHPExcel->getSheet($numeroFeuille); + $derniereColonne = $feuille->getHighestColumn(); + $numeroDerniereColonne = PHPExcel_Cell::columnIndexFromString($derniereColonne); + return $numeroDerniereColonne; +} + +/** + * Retourne le nombre total de ligne d'une feuille. + * ATTENTION : Cette fonction compte également les lignes vides situées entre des données + * @param type $fichier Le chemin absolu vers le fichier + * @param type $numeroFeuille Le numéro de la feuille à étudier + * @return int Le nombre de ligne présent dans la feuille + */ +function getNombreLigne($fichier, $numeroFeuille) { + $objetPHPExcel = PHPExcel_IOFactory::load($fichier); + $feuille = $objetPHPExcel->getSheet($numeroFeuille); + $derniereLigne = $feuille->getHighestRow(); + return $derniereLigne; +} + +/** + * Permet de compter le nombre de ligne non vide présentes dans une feuille de données + * @param type $fichier Le chemin absolu vers le fichier + * @param type $numeroFeuille Le numéro de la feuille à traiter + * @return int Le nombre de ligne non vide + */ +function getNombreLigneNonVide($fichier, $numeroFeuille) { + $objetPHPExcel = PHPExcel_IOFactory::load($fichier); + $feuille = $objetPHPExcel->getSheet($numeroFeuille); + $compteurColonne = 0; + $compteurLigne = 0; + // Parcours des lignes + foreach ($feuille->getRowIterator() as $ligne) { + // Parcours des colonnes + $nullData = 0; + foreach ($ligne->getCellIterator() as $cellule) { + $contenu = trim($cellule->getValue()); + if (!empty($contenu)) { + $compteurColonne++; + } else { + $nullData++; + } + } + if ($compteurColonne>0) { //$nullData != $compteurColonne + $compteurLigne++; + } + $compteurColonne = 0; + } + return $compteurLigne; +} + +/** + * Permet de détecter si une liste d'entete contenue dans une feuille + * @param type $fichier Le chemin absolu vers le fichier + * @param type $numeroFeuille Le numéro de la feuille à étudier + * @return boolean Vrai si il existe des doublons, faux dans les autres cas + */ +function isDoublonEntete($fichier, $numeroFeuille) { + $result = false; + $data = array(); + $objetPHPExcel = PHPExcel_IOFactory::load($fichier); + $feuille = $objetPHPExcel->getSheet($numeroFeuille); + $compteurLigne = 0; + foreach ($feuille->getRowIterator() as $ligne) { + // Parcours des colonnes + $nullData = 0; + $compteurColonne = 0; + foreach ($ligne->getCellIterator() as $cellule) { + $contenu = trim($cellule->getValue()); + if (!empty($contenu)) { + $data[$compteurLigne][$compteurColonne] = $contenu; + $compteurColonne++; + } else { + $nullData++; + } + } + if ($nullData != $compteurColonne) { + $compteurLigne++; + } + if ($compteurLigne == 1) { + break; + } + } + for ($i = 0; $i < $compteurColonne; $i++) { + $dataRef = $data[0][$i]; + $nombreOccurence = 0; + for ($j = 0; $j < $compteurColonne; $j++) { + $dataComp = $data[0][$j]; + if ($dataComp == $dataRef) { + $nombreOccurence++; + } + } + if ($nombreOccurence > 1) { + $result = true; + } + } + return $result; +} + +/** + * Permet de récuperer la 1ère ligne non vide d'une feuille d'un classeur excel + * @param type $fichier Le chemin absolu vers le fichier + * @param type $numeroFeuille Le numéro de la feuille à étudier + * @return type data[] Une liste de texte de longueur égale au nombre de colonne + */ +function recuperationEntete($fichier, $numeroFeuille) { + $data = array(); + $entete = array(); + $objetPHPExcel = PHPExcel_IOFactory::load($fichier); + $feuille = $objetPHPExcel->getSheet($numeroFeuille); + $compteurLigne = 0; + foreach ($feuille->getRowIterator() as $ligne) { + // Parcours des colonnes + $nullData = 0; + $compteurColonne = 0; + foreach ($ligne->getCellIterator() as $cellule) { + $contenu = trim($cellule->getValue()); + if (!empty($contenu)) { + $data[$compteurLigne][$compteurColonne] = $contenu; + $compteurColonne++; + } else { + $nullData++; + } + } + if ($nullData != $compteurColonne) { + $compteurLigne++; + } + if ($compteurLigne == 1) { + break; + } + } + for ($i = 0; $i < $compteurColonne; $i++) { + //$entete[$i] = htmlentities(trim(stripslashes($data[0][$i]))); + $entete[$i] = trim(stripslashes($data[0][$i])); + //$entete[$i] = str_replace("'","&acute;",$entete[$i]); + $entete[$i] = str_replace("\"","",$entete[$i]); + $entete[$i] = str_replace(CHR(10), "", $entete[$i]); + $entete[$i] = str_replace(CHR(13), "", $entete[$i]); + //$entete[$i] = utf8_encode($entete[$i]); + $entete[$i] = utf8_decode($entete[$i]); + } + return $entete; +} + +/** + * Fonction permettant de lire une feuille excel + * Format supporté 97-2003, 2007, ODS + * @param type $fichier Le chemin absolu vers le fichier + * @param type $numeroFeuille Le numéro de la feuille à charger en mémoire + * @return type data[][] Retourne un tableau de données sous la forme $data[numéro de ligne][lettre de colonne] + */ +function readingExcelToArrayWithLetter($fichier, $numeroFeuille) { + $objetPHPExcel = PHPExcel_IOFactory::load($fichier); + $feuille = $objetPHPExcel->getSheet($numeroFeuille); + $data = array(); + $compteurColonne = 0; + $compteurLigne = 0; + // Parcours des lignes + foreach ($feuille->getRowIterator() as $ligne) { + // Parcours des colonnes + $nullData = 0; + $compteurColonne = 0; + foreach ($ligne->getCellIterator() as $cellule) { + $contenu = trim($cellule->getValue()); + // if (!empty($contenu)) { + + + $data[$compteurLigne][$cellule->getColumn()] = trim(stripslashes($contenu)); + $data[$compteurLigne][$cellule->getColumn()] = str_replace("'","_",$data[$compteurLigne][$cellule->getColumn()]); + $data[$compteurLigne][$cellule->getColumn()] = str_replace(CHR(10), "", $data[$compteurLigne][$cellule->getColumn()]); + $data[$compteurLigne][$cellule->getColumn()] = str_replace(CHR(13), "", $data[$compteurLigne][$cellule->getColumn()]); + $data[$compteurLigne][$cellule->getColumn()] = utf8_decode($data[$compteurLigne][$cellule->getColumn()]); + $compteurColonne++; + // } else { + // $nullData++; + // } + } + // if ($nullData != $compteurColonne) { + $compteurLigne++; + // } + } + return $data; +} + +function readingExcelToArrayWithLetterXls($fichier, $numeroFeuille) { + $objetPHPExcel = PHPExcel_IOFactory::load($fichier); + $feuille = $objetPHPExcel->getSheet($numeroFeuille); + $data = array(); + $compteurColonne = 0; + $compteurLigne = 0; + // Parcours des lignes + foreach ($feuille->getRowIterator() as $ligne) { + // Parcours des colonnes + $nullData = 0; + $compteurColonne = 0; + foreach ($ligne->getCellIterator() as $cellule) { + $contenu = trim($cellule->getValue()); + if (!empty($contenu)) { + + $data[$compteurLigne][$cellule->getColumn()] = trim(stripslashes($contenu)); + $data[$compteurLigne][$cellule->getColumn()] = str_replace("'","_",$data[$compteurLigne][$cellule->getColumn()]); + $data[$compteurLigne][$cellule->getColumn()] = str_replace(CHR(10), "", $data[$compteurLigne][$cellule->getColumn()]); + $data[$compteurLigne][$cellule->getColumn()] = str_replace(CHR(13), "", $data[$compteurLigne][$cellule->getColumn()]); + $compteurColonne++; + } else { + $nullData++; + } + } + if ($compteurColonne>0) { //$nullData != $compteurColonne + $compteurLigne++; + } + } + return $data; +} + +/** + * Permet d'écrire les données contenues dans un tableau, possédant des lettres en entête de colonne, sur un fichier au format Microsoft Excel 97-2003. Ces données peuvent être typés de manière général par la classe PHPExcel_Cell_DataType + * @see PHPExcel_Cell_DataType.php + * @param type $fichier Le chemin absolu du fichier à créer. Doit contenir l'extension .xls + * @param type $numeroFeuille Le numéro de la feuille à écrire + * @param type $nomFeuille Le nom à lui donner + * @param type $data Un tableau de données sous la forme data[numéro de ligne][lettre de colonne] + * @param type $attributsFichiers Un tableau d'attribut de données où les attributs correspondent à : 0->Créateur, 1->Auteur de la dernière modification, 2->Le titre du fichier, 3->Le sujet du fichier, 4->La description du fichier, 5->Les mots clés utiles au référencement système du fichier, 6-> La catégorie d'appartenance du fichier + * @param type $typage Le typage correspond aux éléments statiques définis dans PHPExcel_Cell_DataType.php, la syntaxe de passage d'argument est donc sous la forme PHPExcel_Cell_DataType::TYPE_STRING + */ +function writingArrayWithLetterToExcel5WithType($fichier, $numeroFeuille, $nomFeuille, $data, $attributsFichiers, $typage) { + + $object = new PHPExcel(); + $object->getProperties()->setCreator($attributsFichiers[0]) + ->setLastModifiedBy($attributsFichiers[1]) + ->setTitle($attributsFichiers[2]) + ->setSubject($attributsFichiers[3]) + ->setDescription($attributsFichiers[4]) + ->setKeywords($attributsFichiers[5]) + ->setCategory($attributsFichiers[6]); + foreach ($data as $key => $ligne) { + foreach ($ligne as $colonne => $valeur) { + //if($fichier=="upload/filexls/99999_11_sortie.xls"){ + //echo "j"; + //exit(); + $object->setActiveSheetIndex($numeroFeuille)->setCellValueExplicit('' . $colonne . ($key + 1), utf8_encode($valeur), $typage); + //}else{ + //$object->setActiveSheetIndex($numeroFeuille)->setCellValueExplicit('' . $colonne . ($key + 1), $valeur, $typage); + //} + } + } + $object->getActiveSheet()->setTitle($nomFeuille); + $writer = new PHPExcel_Writer_Excel5($object); + $writer->save($fichier); +} + +/** + * Permet d'extraire une quantité déterminée de ligne d'un fichier puis des les charger en mémoire sous forme de tableau ayant pour colonne des nombres + * @param type $fichier Le chemin absolu vers le fichier + * @param type $numeroFeuille Le numéro de la feuille à étudier + * @param type $nombreLigneExtraite Le nombre de ligne voulu en mémoire. Attention la selection commence à la ligne 0 qui contiendra les entêtes + * @return type data[][] Un tableau à deux dimensions possédant les caracteristiques suivantes : data[numéro de ligne][numéro de colonne] + */ +function readingExtractOfExcelToArrayWithNumber($fichier, $numeroFeuille, $nombreLigneExtraite) +{ + $objetPHPExcel = PHPExcel_IOFactory::load($fichier); + $feuille = $objetPHPExcel->getSheet($numeroFeuille); + $data = array(); + $compteurColonne = 0; + $compteurLigne = 0; + // Parcours des lignes + foreach ($feuille->getRowIterator() as $ligne) { + // Parcours des colonnes + $nullData = 0; + $compteurColonne = 0; + foreach ($ligne->getCellIterator() as $cellule) { + $contenu = trim($cellule->getValue()); + //if (!empty($contenu)) { + $data[$compteurLigne][$compteurColonne] = trim(stripslashes($contenu)); + $data[$compteurLigne][$compteurColonne] = str_replace("'","_",$data[$compteurLigne][$compteurColonne]); + $data[$compteurLigne][$compteurColonne] = str_replace(CHR(10), "", $data[$compteurLigne][$compteurColonne]); + $data[$compteurLigne][$compteurColonne] = str_replace(CHR(13), "", $data[$compteurLigne][$compteurColonne]); + $compteurColonne++; + //} else { + // $nullData++; + //} + } + //if ($nullData != $compteurColonne) { + $compteurLigne++; + //} + if($compteurLigne > $nombreLigneExtraite) + { + break; + } + } + return $data; +} + +//Permet de compléter le fichier pour les action sans ciblage (une ligne de libellé avec une ligne de contenu +function overwrittingArrayWithLetterToExcel5WithTypeNoCiblage($fichier, $numeroFeuille, $data, $typage) { + $objetPHPExcel = PHPExcel_IOFactory::load($fichier); + $sheet = $objetPHPExcel->getSheet($numeroFeuille); + $nombreColonne = 0; + $nombreLigne = 2; + for($k = 1; $k <= $nombreLigne; $k++) { + $parcoursData = 0; + for($j = $nombreColonne; $j < ($nombreColonne + sizeof($data[0])); $j++) { + if($k == 1 ) { + //$objetPHPExcel->setActiveSheetIndex($numeroFeuille)->setCellValueByColumnAndRow($j, $k, "Test", $typage); + $objetPHPExcel->setActiveSheetIndex($numeroFeuille)->setCellValueByColumnAndRow($j, $k, $data[0][$parcoursData], $typage); + } else { + $objetPHPExcel->setActiveSheetIndex($numeroFeuille)->setCellValueByColumnAndRow($j, $k, $data[1][$parcoursData], $typage); + } + $parcoursData++; + } + } + + $writer = new PHPExcel_Writer_Excel5($objetPHPExcel); + $writer->save($fichier); +} + +function overwrittingArrayWithLetterToExcel5WithType($fichier, $numeroFeuille, $data, $typage) { + + $objetPHPExcel = PHPExcel_IOFactory::load($fichier); + $sheet = $objetPHPExcel->getSheet($numeroFeuille); + $nombreColonne = getNombreColonne($fichier, $numeroFeuille); + $nombreLigne = getNombreLigne($fichier, $numeroFeuille); + for($k = 1; $k <= $nombreLigne; $k++) { + $parcoursData = 0; + for($j = $nombreColonne; $j < ($nombreColonne + sizeof($data[0])); $j++) { + if($k == 1 ) { + //$objetPHPExcel->setActiveSheetIndex($numeroFeuille)->setCellValueByColumnAndRow($j, $k, "Test", $typage); + $objetPHPExcel->setActiveSheetIndex($numeroFeuille)->setCellValueByColumnAndRow($j, $k, $data[0][$parcoursData], $typage); + } else { + //$objetPHPExcel->setActiveSheetIndex($numeroFeuille)->setCellValueByColumnAndRow($j, $k, $data[1][$parcoursData], $typage); + $objetPHPExcel->setActiveSheetIndex($numeroFeuille)->getCellByColumnAndRow($j, $k)->setValueExplicit($data[1][$parcoursData], $typage); + } + $parcoursData++; + } + } + + $writer = new PHPExcel_Writer_Excel5($objetPHPExcel); + $writer->save($fichier); +} + +?> \ No newline at end of file diff --git a/site/config/phpmailer.settings.php b/site/config/phpmailer.settings.php new file mode 100644 index 0000000..37003ce --- /dev/null +++ b/site/config/phpmailer.settings.php @@ -0,0 +1,20 @@ +<?php + +$mail = new PHPMailer; + +// Configuration du SMTP +$mail->IsSMTP(); +$mail->Host = 'smtp-in.oximailing.com'; +$mail->Port = 587; +$mail->SMTPAuth = true; +$mail->Username = 'BNCx6kLkQZxXYRAZrYVw'; +$mail->Password = 'xoSAgSV6MrP568KqC3FM'; +$mail->SMTPSecure ='tls'; +$mail->DKIM_domain = 'deciday.fr'; +$mail->DKIM_selector = 'oximailing'; +$mail->DKIM_identity = $mail->From; +$mail->Encoding = "base64"; + +// Entête de l'email +$mail->From = 'inscriptions@deciday.fr'; +$mail->FromName = utf8_decode("DECIDAY!"); \ No newline at end of file diff --git a/site/connexion-adm.php b/site/connexion-adm.php new file mode 100644 index 0000000..2c81ec7 --- /dev/null +++ b/site/connexion-adm.php @@ -0,0 +1,75 @@ +<?php +include('include/entete.php'); + +//Acces admin +if(isset($_SESSION['adm_co']) && $_SESSION['adm_co']==1){ + header('location:index-adm.php'); + exit(); +} +//Acces consultation (uniquement la boite à outils) +if(isset($_SESSION['adm_autre']) && $_SESSION['adm_autre']==1){ + header('location:bao-all.php'); + exit(); +} + + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script> +function valid_co(){ + if(document.frmCo.identifiant.value==""){ + alert('Merci de renseigner votre identifiant.'); + document.frmCo.identifiant.focus(); + return false; + } + if(document.frmCo.mdp.value==""){ + alert('Merci de renseigner votre mot de passe.'); + document.frmCo.mdp.focus(); + return false; + } + return true; +} +jQuery(document).ready(function(){ + document.frmCo.identifiant.focus(); +}); +</script> + +</head> + +<body> + <?php include('include/header.php');?> + + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Identification</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + </div> + + <div class="container contentPage"> + + <form name="frmCo" id="frmCo" method="post" action="actions-adm.php" onSubmit="return valid_co();"> + <div class="labFrm">Identifiant :</div> + <input type="text" name="identifiant" id="identifiant" /><br /> + <div class="labFrm">Mot de passe : </div> + <input type="password" name="mdp" id="mdp" /><br /> + <input type="hidden" name="action" value="go_co" /> + <input type="submit" value="Connexion"> + + </form> + + </div> + + <?php include('include/footer.php');?> +</body> +</html> \ No newline at end of file diff --git a/site/connexion-cfa.php b/site/connexion-cfa.php new file mode 100644 index 0000000..e3be7cc --- /dev/null +++ b/site/connexion-cfa.php @@ -0,0 +1,74 @@ +<?php +include('include/entete.php'); +if(isset($_SESSION['cfa_co']) && $_SESSION['cfa_co']==1){ + header('location:index-cfa.php'); + exit(); +} +if(isset($_SESSION['cap_co']) && $_SESSION['cap_co']==1){ + header('location:index-cap.php'); + exit(); +} +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script> +function valid_co(){ + if(!verifmail('document.frmCo.identifiant',1)){ + return false; + } + if(document.frmCo.mdp.value==""){ + alert('Merci de renseigner votre mot de passe.'); + document.frmCo.mdp.focus(); + return false; + } + return true; +} +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + document.frmCo.identifiant.focus(); +}); +</script> + +</head> + +<body> + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">CFA, lycées professionnels<br />identifiez vous :</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <form name="frmCo" id="frmCo" method="post" action="actions-cfa.php" onSubmit="return valid_co();"> + <div class="titreFrm"></div> + <div class="labFrm">Email :</div> + <input type="text" name="identifiant" id="identifiant" /><br /> + <div class="labFrm">Mot de passe : </div> + <input type="password" name="mdp" id="mdp" /><br /> + <input type="hidden" name="action" value="go_co" /> + <input type="submit" value="Connexion"> + </form> + <div class="ssTitreViolet"><a href="motdepasse.php">Mot de passe perdu</a></div> + + </div> + + <?php include('include/footer.php');?> +</body> +</html> \ No newline at end of file diff --git a/site/contact-eta-actions.php b/site/contact-eta-actions.php new file mode 100644 index 0000000..a9e6a63 --- /dev/null +++ b/site/contact-eta-actions.php @@ -0,0 +1,130 @@ +<?php +include('include/entete.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + + +if(isset($_POST['action']) && $_POST['action']=='contactEta'){ + + foreach($_POST as $cle=>$val){ + echo $cle." => ".$val."<br />"; + $$cle=$val; + } + + $query=" + SELECT * from eta + WHERE id_eta=:num_eta + "; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->execute(); + $dataCfa=$queryRequest->fetchAll(); + $countCfa = $queryRequest->rowCount(); + if($countCfa!=1){ //CFA introuvable + header('location:./'); + exit(); + } + $maCleDeCryptage = getCleDeCryptage(); + $nomEta = decrypter($maCleDeCryptage,$dataCfa[0]['nom_eta']); + $emailEta = decrypter($maCleDeCryptage,$dataCfa[0]['email_ref']); + + require 'config/class.phpmailer.php'; + require 'config/phpmailer.settings.php'; + + $to=$emailEta; + + $objet="Demande de contact sur le site DECIDAY"; + + $affich=''; + $affich.='<table cellpadding="3" style="font-family:ARIAL; width:600px;">'; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="cid:bando" alt="" width="600" height="150" border="0" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Bonjour,</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Dans le cadre de l\'évènement Déciday !, un coll&egrave;ge souhaite prendre contact avec vous.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right" width="297">Etablissement : </td><td>'.$etaCoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Nom : </td><td>'.$nomCoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Pr&eacute;nom : </td><td>'.$prenomCoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Fonction : </td><td>'.$fonctionCoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Ligne directe : </td><td>'.$telCoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">E-mail : </td><td>'.$emlCoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Adresse 1 : </td><td>'.$adresse1CoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Adresse 2 : </td><td>'.$adresse2CoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Code postal : </td><td>'.$cpCoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Ville : </td><td>'.$villeCoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Nombre de classes : </td><td>'.$nbClasses.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Nombre total d\'&eacute;l&egrave;ves concern&eacute;s : </td><td>'.$nbEleves.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right" valign="top">Commentaires : </td><td>'.nl2br($commentCoLy).'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Cordialement.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">L\'équipe DECIDAY.</td>'; + $affich.='</tr>'."\n"; + + $affich.='</table>'; + + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + $_SESSION['msg']='Votre demande a bien été envoyée.'; + header('location:contact-eta.php'); + exit(); + +} + +?> \ No newline at end of file diff --git a/site/contact-eta.php b/site/contact-eta.php new file mode 100644 index 0000000..df7dff6 --- /dev/null +++ b/site/contact-eta.php @@ -0,0 +1,179 @@ +<?php + + include('include/entete.php'); + + if(isset($_POST['myaction']) && !empty($_POST['myaction']) && $_POST['myaction']=='contactEta'){ + + foreach ($_POST as $k => $v){ + $$k = $v; + //echo $k.' => '.$v.'<br>'; + } + + }else{ + header('location:./'); + exit(); + } + + + include('config/config.inc.php'); + include('config/lib.inc.php'); + include('include/agenda.inc.php'); + + $maCleDeCryptage = getCleDeCryptage(); + + //Affiche les infos du CFA + $query=" + SELECT * from eta + WHERE id_eta=:num_eta + "; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->execute(); + $dataCfa=$queryRequest->fetchAll(); + $countCfa = $queryRequest->rowCount(); + if($countCfa!=1){ //CFA introuvable + header('location:./'); + exit(); + } + $nomEta = $dataCfa[0]['nom_eta']; + + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script> + + jQuery(document).ready(function(){ + + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + document.frmReserv.etaCoLy.focus(); + + }); + + function validReservAg(){ + if(document.frmReserv.etaCoLy.value==""){ + alert('Merci de renseigner l\'établissement.'); + document.frmReserv.etaCoLy.focus(); + return false; + } + if(document.frmReserv.nomCoLy.value==""){ + alert('Merci de renseigner le nom.'); + document.frmReserv.nomCoLy.focus(); + return false; + } + if(document.frmReserv.prenomCoLy.value==""){ + alert('Merci de renseigner le prénom.'); + document.frmReserv.prenomCoLy.focus(); + return false; + } + if(document.frmReserv.fonctionCoLy.value==""){ + alert('Merci de renseigner la fonction.'); + document.frmReserv.fonctionCoLy.focus(); + return false; + } + if(!checkFormTel('document.frmReserv.telCoLy','T','La ligne directe',1)){ + return false; + } + if(!verifmail('document.frmReserv.emlCoLy',1)){ + return false; + } + if(document.frmReserv.adresse1CoLy.value==""){ + alert('Merci de renseigner au moins la première ligne d\'adresse.'); + document.frmReserv.adresse1CoLy.focus(); + return false; + } + if(document.frmReserv.cpCoLy.value==""){ + alert('Merci de renseigner le code postal.'); + document.frmReserv.cpCoLy.focus(); + return false; + } + if(document.frmReserv.villeCoLy.value==""){ + alert('Merci de renseigner la ville.'); + document.frmReserv.villeCoLy.focus(); + return false; + } + var nbC = 1; + if(!CheckNombreEntier(document.frmReserv.nbClasses.value)) nbC=0; + else if(document.frmReserv.nbClasses.value==0) nbC=0; + if(nbC!=1){ + alert('Merci de renseigner le nombre de classes.'); + document.frmReserv.nbClasses.focus(); + return false; + } + var nbE = 1; + if(!CheckNombreEntier(document.frmReserv.nbEleves.value)) nbE=0; + else if(document.frmReserv.nbEleves.value==0) nbE=0; + if(nbE!=1){ + alert('Merci de renseigner le nombre d\'élèves.'); + document.frmReserv.nbEleves.focus(); + return false; + } + return true; + } + function reservAg(){ + if(validReservAg()) document.frmReserv.submit(); + } + +</script> + +</head> + +<body> + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">CFA, lycées professionnels<br />Réservez la date pour la venue d'un trinôme au sein de votre établissement :</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <b>CFA sélectionné :</b> <br /><span class="ssTitreViolet"><b><?php echo decrypter($maCleDeCryptage,$dataCfa[0]['nom_eta']);?></b></span><br /> + </div> + + <form name="frmReserv" method="post" action="contact-eta-actions.php" id="frmReserv"> + + <input type="hidden" name="action" value="contactEta"> + <input type="hidden" name="ncfa" value="<?php echo $ncfa; ?>" /> + + <div class="labFrm">Etablissement<sup class="obligatory">*</sup> :</div><input type="text" name="etaCoLy" id="etaCoLy" /><br /> + <div class="labFrm">Nom<sup class="obligatory">*</sup> :</div><input type="text" name="nomCoLy" id="nomCoLy" /><br /> + <div class="labFrm">Prénom<sup class="obligatory">*</sup> :</div><input type="text" name="prenomCoLy" id="prenomCoLy" /><br /> + <div class="labFrm">Fonction<sup class="obligatory">*</sup> :</div><input type="text" name="fonctionCoLy" id="fonctionCoLy" /><br /> + <div class="labFrm">Ligne Directe<sup class="obligatory">*</sup> :</div><input type="text" name="telCoLy" id="telCoLy" /><br /> + <div class="labFrm">E-mail<sup class="obligatory">*</sup> :</div><input type="text" name="emlCoLy" id="emlCoLy" /><br /> + <div class="labFrm">Adresse 1<sup class="obligatory">*</sup> :</div><input type="text" name="adresse1CoLy" id="adresse1CoLy" /><br /> + <div class="labFrm">Adresse 2 :</div><input type="text" name="adresse2CoLy" id="adresse2CoLy" /><br /> + <div class="labFrm">Code Postal<sup class="obligatory">*</sup> :</div><input type="text" name="cpCoLy" id="cpCoLy" /><br /> + <div class="labFrm">Ville<sup class="obligatory">*</sup> :</div><input type="text" name="villeCoLy" id="villeCoLy" /><br /> + <div class="labFrm">Nombre de classes<sup class="obligatory">*</sup> :</div><input type="text" name="nbClasses" id="nbClasses" /><br /> + <div class="labFrm">Nombre total d'élèves concernés<sup class="obligatory">*</sup> :</div><input type="text" name="nbEleves" id="nbEleves" /><br /> + <div class="labFrm">Commentaires :</div><textarea name="commentCoLy" id="commentCoLy" /></textarea><br /><br /> + <div class="btnDeci"><a href="javascript:void(0);" onClick="reservAg()">Envoyer</a></div> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="sollicitation-agenda.php?ncfa=<?php echo $ncfa; ?>">Retour</a></div> + </form> + + </div> + + <?php include('include/footer.php');?> +</body> +</html> \ No newline at end of file diff --git a/site/contact-pro.php b/site/contact-pro.php new file mode 100644 index 0000000..8f0b206 --- /dev/null +++ b/site/contact-pro.php @@ -0,0 +1,178 @@ +<?php + + include('include/entete.php'); + $id_proJ=$id_proP=""; +/* echo '<pre>'; + var_dump($_GET); + echo '</pre>'; die();*/ + if(isset($_GET['nProJ']) && !empty($_GET['nProJ'])){ + $id_proJ = intval($_GET['nProJ']); + + if($id_proJ == 0) + { + header('location:./'); + exit(); + } + + } + if(isset($_GET['nProP']) && !empty($_GET['nProP'])){ + $id_proP= intval($_GET['nProP']); + if($id_proP == 0) + { + header('location:./'); + exit(); + } + } + + + if($id_proJ=='' && $id_proP==''){ + header('location:./'); + exit(); + } + + if($id_proJ!='') $id_pro=$id_proJ; + if($id_proP!='') $id_pro=$id_proP; + + include('config/config.inc.php'); + include('config/lib.inc.php'); + include('include/agenda.inc.php'); + + $maCleDeCryptage = getCleDeCryptage(); + + //Affiche les infos du CFA + $query=" + SELECT * from inscriptions_pro + WHERE id_pro=:num_pro + "; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_pro', $id_pro, PDO::PARAM_INT ); + $queryRequest->execute(); + $dataCfa=$queryRequest->fetchAll(); + $countCfa = $queryRequest->rowCount(); + if($countCfa!=1){ //CFA introuvable + header('location:./'); + exit(); + } + $nomEta = $dataCfa[0]['etablissement_pro']; + + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script> + + jQuery(document).ready(function(){ + + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + + + document.frmPro.nom_pro.focus(); + + }); + + function validContactPro(){ + if(document.frmPro.acceptePro.checked==false){ + alert('Merci de confirmer votre souhait d\'être contacté par un professionnel.'); + return false; + } + if(document.frmPro.nom_pro.value==""){ + alert('Merci de renseigner le nom.'); + document.frmPro.nom_pro.focus(); + return false; + } + if(document.frmPro.prenom_pro.value==""){ + alert('Merci de renseigner le prénom.'); + document.frmPro.prenom_pro.focus(); + return false; + } + if(document.frmPro.age_pro.value==""){ + alert('Merci de renseigner l\'âge.'); + document.frmPro.age_pro.focus(); + return false; + } + if(document.frmPro.age_pro.value!=parseInt(document.frmPro.age_pro.value)){ + alert('Merci de renseigner l\'âge.'); + document.frmPro.classe_pro.focus(); + return false; + } + if(document.frmPro.classe_pro.value==""){ + alert('Merci de renseigner la classe.'); + document.frmPro.classe_pro.focus(); + return false; + } + if(!verifmail('document.frmPro.email_pro',1)){ + return false; + } + + return true; + } + + function contactPro(){ + if(validContactPro()) document.frmPro.submit(); + } + +</script> + <script src='https://www.google.com/recaptcha/api.js'></script> +</head> + +<body> + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Contactez un professionnel :</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <b>Professionnel :</b> <br /><span class="ssTitreViolet"><b><?php echo decrypter($maCleDeCryptage,$dataCfa[0]['etablissement_pro']);?></b></span><br /> + </div> + + <form name="frmPro" method="post" action="actions-pro.php" id="frmPro"> + + <input type="hidden" name="myAction" value="proContact"> + <?php + if($id_proJ!='') echo '<input type="hidden" name="id_proJ" value="'.$id_proJ.'" />'; + if($id_proP!='') echo '<input type="hidden" name="id_proP" value="'.$id_proP.'" />'; + + ?> + + <div class="formPro"> + <div class="col-xs-1 col-sm-offset-4 col-sm-1 col-md-offset-3 col-md-1 text-right marginForm"><input type="checkbox" name="acceptePro" id="acceptePro"></div><div class="col-xs-11 col-sm-7 col-md-8 marginForm" style="text-align:left;"><label for="acceptePro" >Je souhaite être contacté par un professionnel<sup class="obligatory">*</sup></label></div> + <div class="clearfix"></div> + </div> + + <div class="labFrm">Nom<sup class="obligatory">*</sup> :</div><input type="text" name="nom_pro" id="nom_pro" /><br /> + <div class="labFrm">Prénom<sup class="obligatory">*</sup> :</div><input type="text" name="prenom_pro" id="prenom_pro" /><br /> + <div class="labFrm">Age<sup class="obligatory">*</sup> :</div><input type="text" name="age_pro" id="age_pro" /><br /> + <div class="labFrm">Classe<sup class="obligatory">*</sup> :</div><input type="text" name="classe_pro" id="classe_pro" /><br /> + <div class="labFrm">E-mail<sup class="obligatory">*</sup> :</div><input type="text" name="email_pro" id="email_pro" /><br /> + <div class="labFrm">Commentaires :</div><textarea name="comment_pro" id="comment_pro" /></textarea><br /><br /> + <div class="g-recaptcha" style="max-width: 300px; margin: 5px auto 30px auto;" data-sitekey="6LfPdIIUAAAAAM-02tRGPn0Xz4owkDxXJHIWUGKM"></div> + <div class="btnDeci"><a href="javascript:void(0);" onClick="contactPro()">Envoyer</a></div> + <div style="height: 20px;"></div> + </form> + + </div> + + <?php include('include/footer.php');?> +</body> +</html> \ No newline at end of file diff --git a/site/css/_notes/dwsync.xml b/site/css/_notes/dwsync.xml new file mode 100644 index 0000000..981df0f --- /dev/null +++ b/site/css/_notes/dwsync.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="bootstrap.min.css" server="62.244.88.21/deciday_18/" local="131497800036013417" remote="131823362400000000" Dst="2" /> +<file name="style.css" server="62.244.88.21/deciday_18/" local="131843224089353130" remote="131843151600000000" Dst="2" /> +<file name="style.css" server="62.244.88.21/deciday/" local="131919455425338585" remote="131884072200000000" Dst="1" /> +<file name="theme.tablesorter.default.css" server="62.244.88.21/deciday/" local="131861595857872041" remote="131861561400000000" Dst="1" /> +<file name="theme.tablesorter.grey.css" server="62.244.88.21/deciday/" local="131861595858071513" remote="131861577600000000" Dst="1" /> +<file name="bootstrap.min.css" server="62.244.88.21/deciday/" local="131880465457141229" remote="131880429000000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/css/bootstrap.min.css b/site/css/bootstrap.min.css new file mode 100644 index 0000000..57b1385 --- /dev/null +++ b/site/css/bootstrap.min.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + *//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0;font-size:2em}mark{color:#000;background:#ff0}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{height:0;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid silver}legend{padding:0;border:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{color:#000!important;text-shadow:none!important;background:0 0!important;-webkit-box-shadow:none!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}@font-face{font-family:'Glyphicons Halflings';src:url(./"font/glyphicons-halflings-regular.eot");src:url(./"font/glyphicons-halflings-regular.eot?#iefix") format('embedded-opentype'),url(./"fonts/glyphicons-halflings-regular.woff2") format('woff2'),url(./"fonts/glyphicons-halflings-regular.woff") format('woff'),url(./"fonts/glyphicons-halflings-regular.ttf") format('truetype'),url(./"fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before{content:"\e227"}.glyphicon-btc:before{content:"\e227"}.glyphicon-xbt:before{content:"\e227"}.glyphicon-yen:before{content:"\00a5"}.glyphicon-jpy:before{content:"\00a5"}.glyphicon-ruble:before{content:"\20bd"}.glyphicon-rub:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;max-width:100%;height:auto;padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{padding:.2em;background-color:#fcf8e3}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:focus,a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:focus,a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;margin-left:-5px;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eee;border-left:0}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:''}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*=col-]{position:static;display:table-column;float:none}table td[class*=col-],table th[class*=col-]{position:static;display:table-cell;float:none}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=checkbox]:focus,input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control::-ms-expand{background-color:transparent;border:0}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=time].form-control,input[type=datetime-local].form-control,input[type=month].form-control{line-height:34px}.input-group-sm input[type=date],.input-group-sm input[type=time],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}.input-group-lg input[type=date],.input-group-lg input[type=time],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-top:4px\9;margin-left:-20px}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.checkbox-inline.disabled,.radio-inline.disabled,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio-inline{cursor:not-allowed}.checkbox.disabled label,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .radio label{cursor:not-allowed}.form-control-static{min-height:34px;padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-lg{height:46px;line-height:46px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:7px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-image:none;border:1px solid transparent;border-radius:4px}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none;opacity:.65}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:#122b40}.btn-primary:hover{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#204d74;border-color:#122b40}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#449d44;border-color:#255625}.btn-success:hover{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#398439;border-color:#255625}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#31b0d5;border-color:#1b6d85}.btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{color:#fff;background-color:#269abc;border-color:#1b6d85}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#ec971f;border-color:#985f0d}.btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{color:#fff;background-color:#d58512;border-color:#985f0d}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{font-weight:400;color:#337ab7;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;-webkit-overflow-scrolling:touch;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;background-color:#f5f5f5;list-style:none;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.42857143;color:#337ab7;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;cursor:default;background-color:#337ab7;border-color:#337ab7}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:6px;border-bottom-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:middle;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container .jumbotron,.container-fluid .jumbotron{padding-right:15px;padding-left:15px;border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-right:60px;padding-left:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail a>img,.thumbnail>img{margin-right:auto;margin-left:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#337ab7}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{overflow:hidden;zoom:1}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item,button.list-group-item{color:#555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{color:#555;text-decoration:none;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{color:#777;cursor:not-allowed;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-right:15px;padding-left:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:.5}button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%)}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;filter:alpha(opacity=0);opacity:0;line-break:auto}.tooltip.in{filter:alpha(opacity=90);opacity:.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);line-break:auto}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>a>img,.carousel-inner>.item>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.active.right,.carousel-inner>.item.next{left:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{left:0;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);background-color:rgba(0,0,0,0);filter:alpha(opacity=50);opacity:.5}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,.0001)));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);background-repeat:repeat-x}.carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.0001)),to(rgba(0,0,0,.5)));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);background-repeat:repeat-x}.carousel-control:focus,.carousel-control:hover{color:#fff;text-decoration:none;filter:alpha(opacity=90);outline:0;opacity:.9}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-10px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;font-family:serif;line-height:1}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000\9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-10px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-10px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.modal-header:after,.modal-header:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{display:table;content:" "}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.modal-header:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-md,.visible-sm,.visible-xs{display:none!important}.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}} +/*# sourceMappingURL=bootstrap.min.css.map */ \ No newline at end of file diff --git a/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.eot b/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.eot new file mode 100644 index 0000000..9a76821 Binary files /dev/null and b/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.eot differ diff --git a/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.svg b/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.svg new file mode 100644 index 0000000..91fa3b8 --- /dev/null +++ b/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.svg @@ -0,0 +1,5143 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<svg> +<metadata> +Created by FontForge 20120731 at Mon Jun 19 13:27:48 2017 + By www +</metadata> +<defs> +<font id="AllerDisplay" horiz-adv-x="450" > + <font-face + font-family="Aller Display" + font-weight="400" + font-stretch="normal" + units-per-em="1000" + panose-1="2 0 5 3 0 0 0 2 0 3" + ascent="800" + descent="-200" + x-height="517" + cap-height="725" + bbox="-235 -249 1427 994" + underline-thickness="50" + underline-position="-50" + unicode-range="U+0020-FB04" + /> +<missing-glyph horiz-adv-x="500" + /> + <glyph glyph-name=".notdef" horiz-adv-x="500" + /> + <glyph glyph-name=".null" horiz-adv-x="0" + /> + <glyph glyph-name="nonmarkingreturn" horiz-adv-x="500" + /> + <glyph glyph-name="space" unicode=" " horiz-adv-x="220" + /> + <glyph glyph-name="exclam" unicode="!" horiz-adv-x="302" +d="M62 719q24 4 46.5 5t42.5 1t42 -1t47 -5l-9 -466q-25 -5 -44 -7t-36 -2q-31 0 -80 9zM151 177q20 0 40.5 -2t43.5 -6q3 -23 5 -43.5t2 -39.5t-2 -40t-5 -44q-23 -4 -43.5 -6t-40.5 -2t-40.5 2t-43.5 6q-3 23 -5 44t-2 40t2 39.5t5 43.5q23 4 43.5 6t40.5 2z" /> + <glyph glyph-name="quotedbl" unicode="&#x22;" horiz-adv-x="456" +d="M40 717q17 4 39 6t39 2t39 -2t39 -6v-289q-17 -4 -39 -6t-39 -2t-39 2t-39 6v289zM260 717q17 4 39 6t39 2t39 -2t39 -6v-289q-17 -4 -39 -6t-39 -2t-39 2t-39 6v289z" /> + <glyph glyph-name="numbersign" unicode="#" horiz-adv-x="699" +d="M388 198h-99l-13 -167q-20 -4 -35.5 -5t-32.5 -1q-15 0 -31 1t-36 5l14 167h-105q-2 16 -3.5 30t-1.5 28q0 15 1.5 29.5t3.5 30.5h115l9 110h-105q-6 31 -6 59q0 15 1.5 29t4.5 30h115l12 144q20 4 35.5 5t32.5 1q16 0 32 -1t34 -5l-12 -144h99l12 144q20 4 35.5 5 +t31.5 1t32 -1t35 -5l-12 -144h97q3 -16 4.5 -29.5t1.5 -27.5q0 -30 -6 -61h-107l-9 -110h98q2 -16 3.5 -30t1.5 -28t-1.5 -29t-3.5 -31h-108l-13 -167q-19 -4 -35 -5t-32 -1q-17 0 -33 1t-34 5zM299 316h99l9 110h-99z" /> + <glyph glyph-name="dollar" unicode="$" horiz-adv-x="585" +d="M238 -11q-29 0 -53.5 2.5t-48 7.5t-46.5 13t-50 19q4 36 13.5 73t23.5 79q47 -20 85 -29.5t73 -9.5q50 0 77 16.5t27 51.5q0 31 -23.5 47.5t-57.5 30.5l-53 22q-30 13 -57 29t-46.5 38.5t-31 53t-11.5 72.5q0 88 47.5 140.5t131.5 67.5v90q16 5 32 6.5t27 1.5t27.5 -1.5 +t31.5 -6.5v-87q35 -4 70.5 -13t75.5 -23q-7 -67 -41 -142q-34 15 -67 25t-85 10q-13 0 -25.5 -1.5t-23 -7t-17 -15t-6.5 -25.5q0 -29 20.5 -43.5t44.5 -23.5l56 -21q34 -13 64 -29t53 -40t36.5 -59t13.5 -86q0 -81 -43.5 -139t-125.5 -81v-118q-15 -5 -31.5 -6.5t-27.5 -1.5 +t-27 1.5t-32 6.5v105z" /> + <glyph glyph-name="percent" unicode="%" horiz-adv-x="1016" +d="M280 505q0 46 -13 73t-42 27t-42 -27t-13 -73q0 -45 13 -73t42 -28t42 28t13 73zM33 505q0 41 11.5 79.5t35 68.5t59.5 48t86 18q49 0 85 -18t60 -48t35.5 -68.5t11.5 -79.5t-11.5 -79.5t-35.5 -68.5t-60 -48t-85 -18q-50 0 -86 18t-59.5 48t-35 68.5t-11.5 79.5zM378 2 +q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM846 203q0 46 -13 73t-42 27t-42 -27t-13 -73q0 -45 13 -73t42 -28t42 28t13 73zM599 203q0 41 11.5 79.5t35 68.5t59.5 48t86 18q49 0 85 -18t60 -48 +t35.5 -68.5t11.5 -79.5t-11.5 -79.5t-35.5 -68.5t-60 -48t-85 -18q-50 0 -86 18t-59.5 48t-35 68.5t-11.5 79.5z" /> + <glyph glyph-name="ampersand" unicode="&#x26;" horiz-adv-x="724" +d="M569 609q16 5 49 2v-136h93q5 -19 6 -34.5t1 -30.5q0 -17 -1 -32.5t-6 -36.5h-93v-98q0 -63 -21.5 -110.5t-61.5 -79.5t-97 -48t-127 -16q-52 0 -101 12t-87.5 38.5t-61.5 69t-23 102.5q0 32 8 61t21.5 53t31 43t36.5 32q-28 23 -48.5 58.5t-20.5 83.5q0 47 17.5 82.5 +t48.5 59t72 35.5t88 12q30 0 68 -4.5t81 -20.5q2 -37 -8.5 -69t-30.5 -61q-38 14 -62 17t-41 3q-36 0 -52 -18t-16 -41q0 -26 15.5 -44t51.5 -18h165zM326 135q40 0 65 12t39.5 31.5t20 44.5t5.5 52v66h-142q-44 0 -69.5 -29t-25.5 -74q0 -47 26.5 -75t80.5 -28z" /> + <glyph glyph-name="quotesingle" unicode="'" horiz-adv-x="236" +d="M40 717q17 4 39 6t39 2t39 -2t39 -6v-289q-17 -4 -39 -6t-39 -2t-39 2t-39 6v289z" /> + <glyph glyph-name="parenleft" unicode="(" horiz-adv-x="367" +d="M50 305q0 80 9 149.5t25 128t36.5 106.5t43.5 84q14 5 37 7t43 2q19 0 45 -3t48 -8q-12 -21 -31.5 -62.5t-38.5 -101.5t-32.5 -136.5t-13.5 -165.5t13.5 -165.5t32.5 -136.5t38.5 -101.5t31.5 -62.5q-22 -5 -48 -8t-45 -3q-20 0 -43 2t-37 7q-23 36 -43.5 84t-36.5 106.5 +t-25 128t-9 149.5z" /> + <glyph glyph-name="parenright" unicode=")" horiz-adv-x="367" +d="M317 305q0 -80 -9 -149.5t-25 -128t-36.5 -106.5t-43.5 -84q-14 -5 -37 -7t-43 -2q-19 0 -45 3t-48 8q12 21 31.5 62.5t38.5 101.5t32.5 136.5t13.5 165.5t-13.5 165.5t-32.5 136.5t-38.5 101.5t-31.5 62.5q22 5 48 8t45 3q20 0 43 -2t37 -7q23 -36 43.5 -84t36.5 -106.5 +t25 -128t9 -149.5z" /> + <glyph glyph-name="asterisk" unicode="*" horiz-adv-x="464" +d="M416 615q14 -23 21 -47t11 -44l-122 -52l72 -114q-17 -17 -37 -31.5t-43 -25.5l-86 98l-86 -99q-22 11 -42 25.5t-37 31.5l70 114l-121 51q2 25 11 48.5t19 43.5l126 -28l11 131q14 2 25.5 3.5t20.5 1.5q11 0 23.5 -1.5t26.5 -3.5l12 -131zM229 560q-17 0 -38 3 +q-5 -23 -12.5 -44.5t-17.5 -41.5q18 -11 35.5 -23.5t34.5 -27.5q36 31 70 51q-10 22 -16.5 43.5t-11.5 41.5q-13 -2 -23.5 -2h-20.5z" /> + <glyph glyph-name="plus" unicode="+" horiz-adv-x="579" +d="M218 282h-147q-3 20 -5 36.5t-2 34.5q0 17 2 34.5t5 37.5h147v159q19 4 36 6t35 2q17 0 34.5 -2t37.5 -6v-159h146q4 -20 6 -37t2 -34t-2 -34.5t-6 -37.5h-146v-159q-20 -4 -37 -6t-34 -2q-32 0 -72 8v159z" /> + <glyph glyph-name="comma" unicode="," horiz-adv-x="302" +d="M93 160q22 5 41.5 7.5t35.5 2.5t39.5 -2.5t49.5 -9.5l-76 -267q-24 -6 -43 -7.5t-34 -1.5q-16 0 -34.5 2t-47.5 9z" /> + <glyph glyph-name="hyphen" unicode="-" horiz-adv-x="369" +d="M42 273q0 34 9 76h268q5 -21 6.5 -39.5t1.5 -35.5t-1.5 -36t-6.5 -40h-268q-9 42 -9 75z" /> + <glyph glyph-name="period" unicode="." horiz-adv-x="296" +d="M148 179q20 0 41 -2t44 -5q4 -23 6 -44t2 -41t-2 -41t-6 -44q-23 -4 -44 -6t-41 -2t-41 2t-44 6q-4 23 -6 44t-2 41t2 41t6 44q23 3 44 5t41 2z" /> + <glyph glyph-name="slash" unicode="/" horiz-adv-x="416" +d="M247 717q21 4 40 6t39 2q17 0 38 -1.5t47 -6.5l-242 -715q-21 -4 -40 -6t-39 -2q-17 0 -38 1.5t-47 6.5z" /> + <glyph glyph-name="zero" unicode="0" horiz-adv-x="598" +d="M301 662q67 0 116 -26t81 -71.5t47 -107.5t15 -134t-16 -133t-48 -106t-82 -70.5t-117 -25.5t-116 25.5t-80.5 70.5t-47 106t-15.5 133t16 134t48 107.5t81.5 71.5t117.5 26zM299 511q-40 0 -62 -47t-22 -141q0 -93 22.5 -140t61.5 -47q38 0 60 47t22 140q0 94 -22 141 +t-60 47z" /> + <glyph glyph-name="one" unicode="1" horiz-adv-x="536" +d="M96 392q-9 13 -18 30t-17 35t-14 36.5t-9 35.5l293 125h43v-504h128q9 -39 9 -74q0 -37 -9 -76h-428q-9 39 -9 76q0 35 9 74h130v284z" /> + <glyph glyph-name="two" unicode="2" horiz-adv-x="528" +d="M28 0l-12 29l178 234q46 62 68.5 104.5t22.5 76.5q0 31 -22.5 49.5t-62.5 18.5q-38 0 -71 -13.5t-59 -28.5q-16 35 -28 71t-14 74q34 19 83 33t111 14q51 0 94.5 -12t75.5 -36.5t50 -61.5t18 -88q0 -36 -9 -68t-23 -61t-31.5 -55t-34.5 -50l-57 -80h175q9 -42 9 -73 +q0 -35 -9 -77h-452z" /> + <glyph glyph-name="three" unicode="3" horiz-adv-x="539" +d="M48 502q-9 39 -9 76q0 36 9 75h423l18 -28l-142 -245q72 -13 112 -62.5t40 -127.5q0 -62 -22.5 -110t-62 -80.5t-93 -49t-114.5 -16.5q-28 0 -52 1.5t-47.5 6t-47 11t-50.5 17.5q2 37 14.5 75t29.5 68q38 -13 73 -21.5t74 -8.5q59 0 93.5 24t34.5 73q0 21 -9 37t-24 26.5 +t-34 16t-40 5.5q-16 0 -33.5 -1.5t-40.5 -7.5l-22 33l123 213h-201z" /> + <glyph glyph-name="four" unicode="4" horiz-adv-x="627" +d="M579 211q9 -39 9 -74t-9 -74h-53v-118q-21 -5 -41.5 -6.5t-39.5 -1.5q-20 0 -40.5 1.5t-42.5 6.5v118h-318l-17 30l269 576q39 -5 76.5 -17.5t72.5 -39.5l-182 -401h99v112q22 5 42.5 6.5t40.5 1.5q19 0 39.5 -1.5t41.5 -6.5v-112h53z" /> + <glyph glyph-name="five" unicode="5" horiz-adv-x="539" +d="M449 653q9 -42 9 -73q0 -35 -9 -77h-211l-2 -104q9 2 17 2h19q49 0 90 -14t70 -41t45 -67t16 -92q0 -62 -21 -109t-60.5 -79t-95.5 -48t-125 -16q-13 0 -32.5 2t-43.5 5.5t-50.5 10t-51.5 15.5q1 19 5.5 39.5t10.5 40t12.5 37t13.5 31.5q39 -14 71 -21.5t62 -7.5 +q36 0 61 8t40 20.5t21.5 29t6.5 34.5q0 38 -27 61t-86 23q-24 0 -51.5 -5.5t-57.5 -19.5l-26 17l15 398h365z" /> + <glyph glyph-name="six" unicode="6" horiz-adv-x="596" +d="M448 727q8 -8 15 -28.5t7 -49.5q0 -24 -3 -43t-8 -31q-39 -3 -74 -14.5t-64 -30.5t-50.5 -44t-32.5 -56l3 -2q11 14 40.5 26t71.5 12q43 0 80.5 -13t66 -40.5t45 -70.5t16.5 -104t-20 -107.5t-54.5 -78t-80.5 -47.5t-98 -16q-126 0 -192 72t-66 218q0 84 23 160.5 +t71.5 137.5t124 101t179.5 49zM309 333q-38 0 -62 -25t-24 -73q0 -53 23 -80t59 -27t61 25t25 77q0 54 -23.5 78.5t-58.5 24.5z" /> + <glyph glyph-name="seven" unicode="7" horiz-adv-x="550" +d="M34 502q-5 21 -7 41t-2 37q0 31 9 73h486l15 -27l-285 -699q-42 10 -77.5 23t-75.5 40l210 512h-273z" /> + <glyph glyph-name="eight" unicode="8" horiz-adv-x="581" +d="M514 526q0 -45 -20.5 -82t-58.5 -63q46 -25 77.5 -70.5t31.5 -111.5q0 -56 -21.5 -95.5t-57.5 -65t-81.5 -37.5t-93.5 -12t-93.5 12t-81 37.5t-57 65t-21.5 95.5q0 66 31 111t76 71q-39 26 -58.5 63t-19.5 82q0 43 17.5 78.5t47.5 61t71 39.5t88 14q48 0 89 -14t71 -39.5 +t47 -61t17 -78.5zM377 206q0 38 -25 64t-63 39q-38 -13 -61.5 -39t-23.5 -64q0 -35 22 -58t64 -23q44 0 65.5 23t21.5 58zM224 527q0 -31 18.5 -52.5t47.5 -32.5q31 11 49 32t18 53q0 25 -16.5 43.5t-49.5 18.5t-50 -18.5t-17 -43.5z" /> + <glyph glyph-name="nine" unicode="9" horiz-adv-x="596" +d="M149 -75q-8 8 -15 28.5t-7 49.5q0 24 3 43t8 31q39 3 74 14.5t64 30t50.5 44t32.5 56.5l-3 2q-11 -14 -40.5 -26t-71.5 -12q-43 0 -80.5 13t-66 40.5t-45 70.5t-16.5 104t20 107.5t54.5 78t80.5 47.5t98 16q126 0 192 -72t66 -218q0 -84 -23 -161t-71.5 -137.5 +t-124 -100.5t-179.5 -49zM288 319q38 0 62 25t24 73q0 53 -23 80t-59 27t-61 -25t-25 -77q0 -54 23.5 -78.5t58.5 -24.5z" /> + <glyph glyph-name="colon" unicode=":" horiz-adv-x="296" +d="M148 179q20 0 41 -2t44 -5q4 -23 6 -44t2 -41t-2 -41t-6 -44q-23 -4 -44 -6t-41 -2t-41 2t-44 6q-4 23 -6 44t-2 41t2 41t6 44q23 3 44 5t41 2zM148 517q20 0 41 -2t44 -5q4 -23 6 -44t2 -41t-2 -41t-6 -44q-23 -4 -44 -6t-41 -2t-41 2t-44 6q-4 23 -6 44t-2 41t2 41 +t6 44q23 3 44 5t41 2z" /> + <glyph glyph-name="semicolon" unicode=";" horiz-adv-x="320" +d="M87 160q22 5 41.5 7.5t35.5 2.5t39.5 -2.5t49.5 -9.5l-76 -267q-24 -6 -43 -7.5t-34 -1.5q-16 0 -34.5 2t-47.5 9zM172 517q20 0 41 -2t44 -5q4 -23 6 -44t2 -41t-2 -41t-6 -44q-23 -4 -44 -6t-41 -2t-41 2t-44 6q-4 23 -6 44t-2 41t2 41t6 44q23 3 44 5t41 2z" /> + <glyph glyph-name="less" unicode="&#x3c;" horiz-adv-x="579" +d="M240 353l260 -87q5 -20 5.5 -38t0.5 -35q0 -7 -0.5 -18t-1.5 -23t-2.5 -23.5t-3.5 -20.5l-415 169q-10 41 -10 79q0 37 10 73l415 169q4 -17 6 -42.5t2 -39.5q0 -17 -0.5 -34t-5.5 -37z" /> + <glyph glyph-name="equal" unicode="=" horiz-adv-x="579" +d="M71 174q-3 20 -5 36.5t-2 34.5q0 17 2 34.5t5 37.5h436q4 -20 6 -37t2 -34t-2 -34.5t-6 -37.5h-436zM71 389q-3 20 -5 36.5t-2 34.5q0 17 2 34.5t5 37.5h436q4 -20 6 -37t2 -34t-2 -34.5t-6 -37.5h-436z" /> + <glyph glyph-name="greater" unicode="&#x3e;" horiz-adv-x="579" +d="M79 445q-5 20 -5.5 37t-0.5 34q0 14 2 39.5t6 42.5l415 -169q10 -36 10 -73q0 -38 -10 -79l-415 -169q-2 9 -3.5 20.5t-2.5 23.5t-1.5 23t-0.5 18q0 17 0.5 35t5.5 38l260 87z" /> + <glyph glyph-name="question" unicode="?" horiz-adv-x="479" +d="M71 550q-6 13 -12.5 30t-11.5 35t-9 35.5t-5 32.5q28 10 51.5 17t45 11t42.5 6t44 2q121 0 182 -55t61 -152q0 -44 -15.5 -77t-38 -56t-47.5 -38t-45 -24v-91q-22 -3 -43 -5t-38 -2q-18 0 -38.5 2t-40.5 5v188q26 3 51 9.5t44.5 17.5t31.5 27.5t12 39.5q0 34 -25 51.5 +t-67 17.5q-19 0 -34 -1.5t-29.5 -5t-30.5 -8.5t-35 -12zM229 179q20 0 41 -2t44 -5q4 -23 6 -44t2 -41t-2 -41t-6 -44q-23 -4 -44 -6t-41 -2t-41 2t-44 6q-4 23 -6 44t-2 41t2 41t6 44q23 3 44 5t41 2z" /> + <glyph glyph-name="at" unicode="@" horiz-adv-x="982" +d="M553 401q-8 1 -14 1.5t-14 0.5q-29 0 -52 -13.5t-39 -36t-24.5 -52t-8.5 -60.5q0 -38 16 -55t43 -17q15 0 28 1.5t27 6.5zM660 50q-71 0 -109 35q-28 -14 -59 -24.5t-79 -10.5q-32 0 -61 10t-51 30.5t-34.5 52.5t-12.5 76q0 67 22.5 123.5t61.5 97.5t90.5 63.5 +t109.5 22.5q43 0 87.5 -7.5t86.5 -22.5l-62 -327q9 -3 25 -3q34 0 60.5 20.5t44.5 52.5t27.5 71t9.5 77q0 106 -67.5 166t-196.5 60q-90 0 -161.5 -32.5t-120.5 -87t-75 -124.5t-26 -145q0 -66 20.5 -114.5t55.5 -80t82 -46.5t100 -15q50 0 94 7t83 22q25 -57 38 -106 +q-40 -20 -103.5 -30.5t-127.5 -10.5q-78 0 -147 23t-120.5 69t-82 115.5t-30.5 163.5q0 58 14 118t43 116.5t72.5 106.5t102.5 87t134 58.5t167 21.5q81 0 151.5 -21.5t122 -64.5t81.5 -107t30 -149q0 -62 -20.5 -122.5t-58.5 -108t-91.5 -77t-119.5 -29.5z" /> + <glyph glyph-name="A" unicode="A" horiz-adv-x="642" +d="M178 2q-23 -4 -42 -6t-37 -2t-41.5 2.5t-52.5 7.5l224 714q26 3 48.5 5t45.5 2q19 0 41.5 -2t51.5 -5l221 -715q-57 -9 -100 -9q-20 0 -40 2t-43 6l-38 139q-28 -8 -53.5 -12t-50.5 -4q-23 0 -47 3.5t-50 10.5zM318 530l-67 -257q17 -5 32 -8t31 -3q17 0 33.5 2.5 +t34.5 7.5z" /> + <glyph glyph-name="B" unicode="B" horiz-adv-x="597" +d="M566 210q0 -66 -24 -109t-66 -68t-100 -35t-126 -10q-54 0 -97 4t-93 10v715q38 6 83 10t105 4q57 0 106.5 -9.5t86.5 -32t58.5 -60t21.5 -94.5q0 -47 -21 -85.5t-53 -59.5q23 -9 44.5 -23.5t38 -36t26.5 -51.5t10 -69zM233 302v-168q7 -1 17.5 -1.5t27.5 -0.5 +q19 0 38.5 4t35.5 13.5t25.5 26t9.5 41.5q0 48 -31.5 66.5t-81.5 18.5h-41zM233 444h28q43 0 67 17.5t24 60.5q0 21 -8.5 35t-21.5 22t-29 11t-31 3h-14.5t-14.5 -1v-148z" /> + <glyph glyph-name="C" unicode="C" horiz-adv-x="609" +d="M228 358q0 -212 178 -212q32 0 60.5 6t69.5 20q33 -72 44 -148q-29 -11 -54 -18t-48 -10.5t-45.5 -5t-46.5 -1.5q-85 0 -149.5 27.5t-108 76.5t-65.5 117t-22 148t23 148.5t66.5 118.5t107.5 78t145 28q48 0 91 -7t96 -28q-2 -41 -15 -79.5t-27 -67.5q-20 7 -36.5 12 +t-31.5 8t-30 4.5t-32 1.5q-81 0 -125.5 -54.5t-44.5 -162.5z" /> + <glyph glyph-name="D" unicode="D" horiz-adv-x="685" +d="M259 731q189 0 287 -94.5t98 -281.5q0 -190 -100 -278.5t-296 -88.5q-50 0 -96.5 4.5t-91.5 10.5v714q15 2 38 4.5t50 4.5t55.5 3.5t55.5 1.5zM237 145q7 -1 16 -1h19q39 0 73.5 9.5t59.5 33.5t39.5 65t14.5 105q0 63 -15 105t-39.5 66.5t-57.5 35t-69 10.5 +q-20 0 -29 -0.5t-12 -0.5v-428z" /> + <glyph glyph-name="E" unicode="E" horiz-adv-x="527" +d="M439 375q0 -35 -9 -78h-193v-142h251q9 -42 9 -76q0 -37 -9 -79h-428v719h422q4 -22 6 -41t2 -36q0 -33 -8 -79h-245v-110h193q9 -44 9 -78z" /> + <glyph glyph-name="F" unicode="F" horiz-adv-x="510" +d="M60 719h422q4 -22 6 -41t2 -36q0 -33 -8 -79h-245v-122h193q9 -45 9 -78q0 -34 -9 -79h-193v-281q-53 -9 -88 -9q-37 0 -89 9v716z" /> + <glyph glyph-name="G" unicode="G" horiz-adv-x="659" +d="M434 389q27 4 48 6t39 2q17 0 41 -2t47 -6v-364q-59 -22 -116.5 -29t-98.5 -7q-88 0 -154 27.5t-110.5 76.5t-66.5 117t-22 148t23 148.5t66.5 118.5t107.5 78t145 28q48 0 91.5 -7t95.5 -29q-2 -41 -15 -80t-27 -66q-20 7 -36.5 12t-31.5 8t-30 4.5t-32 1.5 +q-81 0 -125 -54.5t-44 -162.5q0 -107 43 -159.5t128 -52.5q19 0 34 3v240z" /> + <glyph glyph-name="H" unicode="H" horiz-adv-x="651" +d="M503 -6q-37 0 -89 9v292h-177v-292q-53 -9 -88 -9q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-265h177v265q27 4 48.5 6t39.5 2t40.5 -2t48.5 -6v-714q-53 -9 -88 -9z" /> + <glyph glyph-name="I" unicode="I" horiz-adv-x="297" +d="M149 -6q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9z" /> + <glyph glyph-name="J" unicode="J" horiz-adv-x="411" +d="M35 152q9 -2 27 -5t38 -3q12 0 26 1.5t25.5 9t19.5 22.5t8 42v344h-109q-9 42 -9 79q0 35 9 77h286v-520q0 -57 -18 -97.5t-49 -65.5t-72.5 -36.5t-89.5 -11.5q-29 0 -58 4.5t-52 11.5q-1 8 -1.5 16t-0.5 17q0 58 20 115z" /> + <glyph glyph-name="K" unicode="K" horiz-adv-x="633" +d="M446 372l187 -369q-17 -4 -45.5 -6.5t-51.5 -2.5q-29 0 -56 2.5t-46 6.5l-183 360l169 354q30 5 52 6.5t45 1.5q11 0 25 -0.5t27.5 -2t26 -3t21.5 -2.5zM60 717q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9q-37 0 -89 9v714z" /> + <glyph glyph-name="L" unicode="L" horiz-adv-x="491" +d="M60 717q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-560h231q5 -25 6.5 -43.5t1.5 -33.5q0 -17 -1.5 -35.5t-6.5 -44.5h-408v717z" /> + <glyph glyph-name="M" unicode="M" horiz-adv-x="801" +d="M81 717q21 3 45.5 5.5t45.5 2.5q20 0 43.5 -2.5t43.5 -5.5l142 -372l147 372q20 3 40.5 5.5t40.5 2.5q21 0 43 -2.5t43 -5.5l34 -714q-16 -3 -35.5 -6t-51.5 -3q-35 0 -83 9l-14 414l-110 -273q-18 -3 -36 -5t-33 -2t-31 1.5t-33 5.5l-98 269l-11 -410q-42 -9 -80 -9 +q-35 0 -81 9z" /> + <glyph glyph-name="N" unicode="N" horiz-adv-x="659" +d="M60 717q22 4 40 6t35 2q18 0 37.5 -2.5t33.5 -5.5l232 -392v392q26 4 47 6t38 2t36 -2t40 -6l-1 -714q-10 -3 -29 -6t-41 -3q-25 0 -45 3.5t-29 5.5l-233 390v-390q-44 -9 -80 -9t-81 9v714z" /> + <glyph glyph-name="O" unicode="O" horiz-adv-x="711" +d="M41 357q0 80 18.5 148.5t57 118.5t98 78.5t141.5 28.5t141 -28.5t97.5 -78.5t57 -118.5t18.5 -148.5t-18.5 -147.5t-57 -117t-97.5 -77t-141 -27.5t-141.5 27.5t-98 77t-57 117t-18.5 147.5zM484 357q0 218 -127 218q-130 0 -130 -218q0 -109 31.5 -162.5t97.5 -53.5 +q128 0 128 216z" /> + <glyph glyph-name="P" unicode="P" horiz-adv-x="585" +d="M233 379q5 -2 17 -3t25 -1q43 0 70 25t27 76q0 30 -8.5 50.5t-23.5 33t-35 17.5t-42 5h-14t-16 -1v-202zM60 717q23 3 70.5 8.5t119.5 5.5q53 0 107 -10t97.5 -37.5t70.5 -77.5t27 -130q0 -71 -21.5 -118t-57 -75t-81 -40t-93.5 -12q-19 0 -38.5 1.5t-27.5 3.5v-233 +q-26 -5 -47 -7t-39 -2q-35 0 -87 9v714z" /> + <glyph glyph-name="Q" unicode="Q" horiz-adv-x="711" +d="M317 -169v28.5t1 15.5q5 49 28 102l331 -54q-1 -38 -7 -75t-19 -74zM41 357q0 80 18.5 148.5t57 118.5t98 78.5t141.5 28.5t141 -28.5t97.5 -78.5t57 -118.5t18.5 -148.5t-18.5 -147.5t-57 -117t-97.5 -77t-141 -27.5t-141.5 27.5t-98 77t-57 117t-18.5 147.5zM484 357 +q0 218 -127 218q-130 0 -130 -218q0 -109 31.5 -162.5t97.5 -53.5q128 0 128 216z" /> + <glyph glyph-name="R" unicode="R" horiz-adv-x="616" +d="M60 717q49 5 90.5 9.5t87.5 4.5q55 0 110 -10.5t98 -36.5t70 -71t27 -114q0 -37 -8.5 -66.5t-22 -52.5t-30 -40t-32.5 -29l156 -308q-24 -4 -52.5 -6t-51.5 -2q-20 0 -46.5 2t-46.5 6l-142 327l9 5q12 6 26.5 20t27 33.5t21 43.5t8.5 50q0 50 -28 73t-69 23q-10 0 -17 -1 +t-9 -2v-572q-53 -9 -87 -9q-37 0 -89 9v714z" /> + <glyph glyph-name="S" unicode="S" horiz-adv-x="564" +d="M340 439q42 -17 75.5 -34.5t57.5 -42t37 -59t13 -83.5q0 -53 -18.5 -95.5t-54.5 -73t-88.5 -47t-120.5 -16.5q-62 0 -109.5 10t-102.5 31q4 35 14 74.5t24 80.5q92 -40 160 -40q51 0 79.5 15.5t28.5 53.5q0 16 -6 27.5t-16 19.5t-22.5 13.5t-25.5 10.5l-56 21 +q-36 13 -65.5 31t-50.5 42.5t-32.5 56.5t-11.5 75q0 53 18 94t50.5 69.5t78.5 43t103 14.5q51 0 98.5 -10t101.5 -29q-4 -32 -14.5 -70.5t-26.5 -72.5q-26 11 -61 23t-87 12q-16 0 -30.5 -3t-26 -9.5t-18.5 -18t-7 -28.5q0 -29 19 -43t45 -24z" /> + <glyph glyph-name="T" unicode="T" horiz-adv-x="558" +d="M191 563h-167q-9 43 -9 79q0 33 9 77h511q4 -22 6 -41t2 -36q0 -33 -8 -79h-167v-560q-53 -9 -88 -9q-37 0 -89 9v560z" /> + <glyph glyph-name="U" unicode="U" horiz-adv-x="662" +d="M331 -11q-81 0 -134.5 22t-84.5 63.5t-43.5 100.5t-12.5 133v409q29 4 50 5.5t40 1.5q17 0 37.5 -1.5t49.5 -5.5v-388q0 -50 4 -85t14.5 -57t29.5 -31.5t50 -9.5t50.5 9.5t30 31.5t14 57t3.5 85v388q30 4 50.5 5.5t37.5 1.5q18 0 39 -1.5t50 -5.5v-409q0 -74 -12.5 -133 +t-43.5 -100.5t-84.5 -63.5t-134.5 -22z" /> + <glyph glyph-name="V" unicode="V" horiz-adv-x="652" +d="M328 233l137 484q23 4 46.5 6t49.5 2q17 0 42 -2.5t44 -5.5l-230 -715q-26 -4 -48.5 -6t-43.5 -2q-20 0 -41 2t-50 6l-229 715q17 3 45 5.5t54 2.5q21 0 46 -2.5t44 -5.5z" /> + <glyph glyph-name="W" unicode="W" horiz-adv-x="896" +d="M720 717q26 5 44 6.5t37 1.5q20 0 42 -1.5t50 -6.5l-172 -714q-15 -3 -38.5 -6t-51.5 -3t-54.5 3.5t-35.5 5.5l-95 414l-101 -414q-9 -2 -33.5 -5.5t-52.5 -3.5t-50 3t-37 6l-169 713q28 5 54 7t46 2q19 0 39.5 -1.5t46.5 -6.5l83 -457q25 110 50 229.5t49 227.5 +q18 3 40 5.5t45 2.5q20 0 41 -2.5t36 -5.5l104 -462z" /> + <glyph glyph-name="X" unicode="X" horiz-adv-x="645" +d="M39 717q26 5 50.5 6.5t50.5 1.5q17 0 44 -2.5t43 -5.5l95 -347l97 347q16 4 43 6t44 2q26 0 50 -1.5t50 -6.5l-117 -343l144 -371q-51 -9 -101 -9q-17 0 -44 2.5t-43 6.5l-123 357l-122 -357q-16 -4 -43 -6.5t-44 -2.5q-50 0 -101 9l145 371z" /> + <glyph glyph-name="Y" unicode="Y" horiz-adv-x="622" +d="M433 717q23 4 48 6t51 2q17 0 44 -2.5t46 -5.5l-223 -459v-255q-53 -9 -88 -9q-37 0 -89 9v255q-26 54 -54.5 112.5l-57 117t-56.5 117t-54 112.5q17 3 46 5.5t55 2.5q21 0 46.5 -2.5t44.5 -5.5l123 -278z" /> + <glyph glyph-name="Z" unicode="Z" horiz-adv-x="577" +d="M529 79q0 -37 -9 -79h-482l-18 27l276 536h-245q-5 22 -6.5 41t-1.5 36t1.5 37t6.5 42h487l15 -29l-274 -535h241q9 -42 9 -76z" /> + <glyph glyph-name="bracketleft" unicode="[" horiz-adv-x="344" +d="M314 -97q0 -17 -2 -33.5t-7 -37.5h-255v944h255q5 -20 7 -36.5t2 -33.5q0 -31 -9 -73h-90v-658h90q5 -21 7 -38t2 -34z" /> + <glyph glyph-name="backslash" unicode="\" horiz-adv-x="416" +d="M411 2q-26 -5 -47 -6.5t-38 -1.5q-20 0 -39 2t-40 6l-242 715q26 5 47 6.5t38 1.5q20 0 39 -2t40 -6z" /> + <glyph glyph-name="bracketright" unicode="]" horiz-adv-x="344" +d="M30 -97q0 17 2 34t7 38h90v658h-90q-9 42 -9 73q0 17 2 33.5t7 36.5h255v-944h-255q-5 21 -7 37.5t-2 33.5z" /> + <glyph glyph-name="asciicircum" unicode="^" horiz-adv-x="549" +d="M273 549l-71 -184q-17 -4 -37.5 -6.5t-45.5 -2.5q-37 0 -79 9l162 352q13 3 35.5 5.5t38.5 2.5t38.5 -2.5t36.5 -5.5l158 -352q-42 -9 -79 -9q-25 0 -45.5 2.5t-37.5 6.5z" /> + <glyph glyph-name="underscore" unicode="_" horiz-adv-x="500" +d="M492 -2q5 -21 6.5 -36t1.5 -30q0 -11 -2 -24.5t-7 -37.5h-483q-5 21 -6.5 36.5t-1.5 29.5q0 11 2 25.5t7 36.5h483z" /> + <glyph glyph-name="grave" unicode="`" horiz-adv-x="480" +d="M94 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="a" unicode="a" horiz-adv-x="523" +d="M30 169q0 49 21 81t54 51t73 26.5t78 7.5h61q-1 18 -10 30t-23 18.5t-31 9t-35 2.5q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 95.5 24t85.5 8q52 0 94 -12.5t71.5 -38.5t45.5 -66.5t16 -96.5v-293q-38 -11 -92 -22t-114 -11 +q-52 0 -95.5 9.5t-74.5 30.5t-48.5 55.5t-17.5 84.5zM266 113q9 0 26 2t25 4v110h-57q-35 0 -59 -15t-24 -42q0 -20 9 -31.5t22.5 -17.5t29 -8t28.5 -2z" /> + <glyph glyph-name="b" unicode="b" horiz-adv-x="562" +d="M56 515q20 3 46 5.5t53 4.5t52.5 3t44.5 1q125 0 187 -35.5t62 -110.5q0 -38 -17.5 -64.5t-47.5 -45.5q42 -15 69 -43t27 -79q0 -92 -68 -127.5t-201 -35.5q-35 0 -91.5 2.5t-115.5 10.5v514zM223 214v-103q3 0 16 -1t35 -1q42 0 60 14t18 39q0 10 -3.5 19.5t-12.5 16.5 +t-25 11.5t-42 4.5h-46zM223 319h49q38 0 51 16.5t13 34.5q0 17 -13.5 31.5t-49.5 14.5q-11 0 -25.5 -0.5t-24.5 -1.5v-95z" /> + <glyph glyph-name="c" unicode="c" horiz-adv-x="471" +d="M31 258q0 60 17 110t50 85.5t81 55.5t110 20q21 0 40 -1t37.5 -4t38 -9t43.5 -15q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25.5 5.5t-23.5 2.5t-24.5 0.5q-48 0 -79.5 -28.5t-31.5 -98.5q0 -37 9.5 -61.5t25 -38.5t36 -20t43.5 -6q29 0 50.5 5t50.5 16 +q17 -27 27 -60.5t10 -76.5q-46 -18 -84 -23t-76 -5q-64 0 -113 19t-82.5 54.5t-50.5 85t-17 111.5z" /> + <glyph glyph-name="d" unicode="d" horiz-adv-x="568" +d="M233 529q81 0 138.5 -19t94.5 -53.5t54 -83.5t17 -109q0 -63 -17.5 -114t-55 -87t-97 -55.5t-143.5 -19.5q-49 0 -87.5 3.5t-80.5 9.5v514q42 5 89 9.5t88 4.5zM225 131q4 0 10.5 -1t19.5 -1q56 0 83.5 31.5t27.5 103.5q0 64 -27 93.5t-77 29.5q-12 0 -22 -1t-15 -2v-253 +z" /> + <glyph glyph-name="e" unicode="e" horiz-adv-x="538" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-32 0 -55 -20t-27 -62h160q-2 35 -21.5 58.5t-56.5 23.5z" /> + <glyph glyph-name="f" unicode="f" horiz-adv-x="461" +d="M225 155v-153q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515h382q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-213v-80h172q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-172z" /> + <glyph glyph-name="g" unicode="g" horiz-adv-x="536" +d="M297 -12q-72 0 -122.5 21.5t-82.5 58.5t-46.5 87t-14.5 107q0 55 17.5 104t52 85t85.5 57t118 21q35 0 77 -8t92 -28q-1 -17 -4 -32t-7.5 -30.5t-11 -33t-15.5 -39.5q-34 14 -63 20.5t-50 6.5q-33 0 -56 -10t-37 -27t-20.5 -39.5t-6.5 -46.5q0 -67 29 -98.5t85 -31.5h18 +v147q25 5 44.5 7t37.5 2q35 0 83 -9v-254q-29 -11 -81 -24t-121 -13z" /> + <glyph glyph-name="h" unicode="h" horiz-adv-x="598" +d="M373 191h-148v-190q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-176h148v176q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516q-26 -4 -47 -6t-38 -2t-38 2t-46 6v190z" /> + <glyph glyph-name="i" unicode="i" horiz-adv-x="281" +d="M225 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516z" /> + <glyph glyph-name="j" unicode="j" horiz-adv-x="377" +d="M60 376q-5 20 -6.5 37.5t-1.5 33.5t1.5 33t6.5 37h269v-318q0 -57 -16.5 -97.5t-46 -65.5t-69 -36.5t-85.5 -11.5q-15 0 -42.5 3.5t-57.5 13.5q-1 8 -1.5 15.5t-0.5 15.5q0 26 5 52t14 54q4 -1 12 -2.5t17.5 -2.5t18 -2t13.5 -1q11 0 23.5 1.5t23 9t17 22.5t6.5 42v167 +h-100z" /> + <glyph glyph-name="k" unicode="k" horiz-adv-x="563" +d="M56 517q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v515zM359 517q18 4 44 6t46 2q26 0 52.5 -2t42.5 -6l-124 -240l138 -275q-18 -4 -45 -6t-47 -2q-26 0 -51.5 2t-40.5 6l-133 268z" /> + <glyph glyph-name="l" unicode="l" horiz-adv-x="437" +d="M225 141h189q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-358l1 517q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7z" /> + <glyph glyph-name="m" unicode="m" horiz-adv-x="842" +d="M264 527q41 0 81 -6.5t74 -26.5q26 13 61 23t79 10q39 0 80.5 -7.5t75 -31.5t55 -69t21.5 -119v-299q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v281q0 53 -18 76t-59 23q-14 0 -27.5 -3t-18.5 -5q9 -35 9 -80v-292q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5 +t-47 6.5v281q0 53 -17 76t-58 23q-11 0 -23.5 -2t-15.5 -4v-374q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v491q35 12 84 23.5t124 11.5z" /> + <glyph glyph-name="n" unicode="n" horiz-adv-x="565" +d="M266 527q44 0 88 -7.5t79.5 -31.5t58 -69t22.5 -119v-299q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v281q0 53 -20 76t-61 23q-11 0 -23.5 -2t-15.5 -4v-374q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v491q35 12 85 23.5t125 11.5z" /> + <glyph glyph-name="o" unicode="o" horiz-adv-x="577" +d="M31 256q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q64 0 112 -19.5t80.5 -55.5t49 -86.5t16.5 -111.5q0 -60 -16.5 -109.5t-49 -85t-80.5 -54.5t-112 -19q-63 0 -111 19t-80.5 54.5t-49 85t-16.5 109.5zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97 +t65 -34t65.5 34t21.5 97z" /> + <glyph glyph-name="p" unicode="p" horiz-adv-x="516" +d="M221 250q5 -1 12.5 -1.5t12.5 -0.5q35 0 57.5 17.5t22.5 59.5q0 36 -22.5 55.5t-55.5 19.5h-11.5t-15.5 -1v-149zM56 515q46 7 94.5 10.5t93.5 3.5q46 0 90 -8.5t79 -31t56.5 -62t21.5 -102.5q0 -57 -19.5 -96t-51.5 -63t-72.5 -34.5t-82.5 -10.5q-17 0 -29 1t-15 2v-123 +q-26 -5 -46.5 -6.5t-36.5 -1.5q-17 0 -36.5 1.5t-45.5 6.5v514z" /> + <glyph glyph-name="q" unicode="q" horiz-adv-x="577" +d="M256 -139q1 29 6.5 60.5t15.5 58.5l273 -39q-1 -29 -6.5 -60.5t-15.5 -58.5zM31 256q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q64 0 112 -19.5t80.5 -55.5t49 -86.5t16.5 -111.5q0 -60 -16.5 -109.5t-49 -85t-80.5 -54.5t-112 -19q-63 0 -111 19t-80.5 54.5t-49 85 +t-16.5 109.5zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97t65 -34t65.5 34t21.5 97z" /> + <glyph glyph-name="r" unicode="r" horiz-adv-x="549" +d="M56 515q47 6 97.5 10t95.5 4q121 0 181.5 -45.5t60.5 -127.5q0 -31 -7 -54t-17 -39.5t-21 -26.5t-18 -16l114 -218q-20 -4 -44.5 -6t-47.5 -2q-28 0 -54 2t-43 6l-111 236l14 8q35 20 48 42.5t13 48.5t-15.5 42.5t-49.5 16.5q-19 0 -29 -2v-393q-26 -5 -47 -6.5t-37 -1.5 +q-17 0 -37 1.5t-46 6.5v514z" /> + <glyph glyph-name="s" unicode="s" horiz-adv-x="470" +d="M305 324q30 -8 54.5 -19.5t42 -29.5t27.5 -44t10 -63q0 -38 -15.5 -71t-46 -57t-75 -38t-102.5 -14q-48 0 -89 7t-87 24q5 68 37 138q32 -15 67 -22.5t70 -7.5q12 0 25 1t23 4.5t16.5 9.5t6.5 16q0 13 -13 19.5t-30 11.5l-68 19q-53 15 -88 51t-35 98q0 39 16 71t45 54.5 +t68.5 34.5t87.5 12q38 0 83 -8t89 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -65 20t-70 9q-47 0 -47 -26q0 -11 11 -17t25 -10z" /> + <glyph glyph-name="t" unicode="t" horiz-adv-x="511" +d="M171 376h-148q-5 20 -6.5 37.5t-1.5 33.5t1.5 33t6.5 37h465q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-148v-375q-26 -4 -47 -6t-38 -2t-38 2t-46 6v375z" /> + <glyph glyph-name="u" unicode="u" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493z" /> + <glyph glyph-name="v" unicode="v" horiz-adv-x="561" +d="M371 517q8 2 33 4t51 2q33 0 61.5 -2t39.5 -4l-196 -515q-21 -5 -42.5 -6.5t-41.5 -1.5t-41 1.5t-38 6.5l-192 515q11 2 39.5 4t61.5 2q26 0 52 -2t34 -4l91 -310q23 77 44.5 156t43.5 154z" /> + <glyph glyph-name="w" unicode="w" horiz-adv-x="799" +d="M556 219l62 298q8 2 31 4t49 2q33 0 58.5 -2t36.5 -4l-162 -515q-17 -5 -37 -6.5t-40 -1.5t-40.5 1.5t-42.5 6.5l-73 280q-19 -67 -38.5 -141t-37.5 -139q-21 -5 -41.5 -6.5t-40.5 -1.5t-40 1.5t-37 6.5l-157 515q11 2 38.5 4t60.5 2q26 0 50.5 -2t32.5 -4l65 -306 +l72 306q17 5 37.5 6.5t40.5 1.5t40.5 -1.5t41.5 -6.5z" /> + <glyph glyph-name="x" unicode="x" horiz-adv-x="536" +d="M268 277l66 240q8 2 31.5 4t49.5 2q33 0 59 -2t37 -4l-90 -248l110 -268q-11 -2 -34.5 -4.5t-53.5 -2.5q-29 0 -52 2.5t-31 4.5l-92 256l-92 -256q-8 -2 -30 -4.5t-48 -2.5q-33 0 -57.5 3t-35.5 5l110 267l-90 248q11 2 36.5 4t58.5 2q26 0 49.5 -2t31.5 -4z" /> + <glyph glyph-name="y" unicode="y" horiz-adv-x="564" +d="M384 517q8 2 30.5 4t48.5 2q33 0 59 -2t37 -4l-193 -335v-181q-26 -4 -47 -6t-38 -2t-38 2t-46 6v181l-192 335q11 2 38.5 4t60.5 2q26 0 51 -2t33 -4l98 -197z" /> + <glyph glyph-name="z" unicode="z" horiz-adv-x="481" +d="M252 137h191q7 -41 7 -70q0 -15 -1.5 -30.5t-5.5 -36.5h-420l-16 30l209 350h-171q-5 22 -6.5 38.5t-1.5 31.5t1.5 30.5t6.5 36.5h407l10 -32z" /> + <glyph glyph-name="braceleft" unicode="{" horiz-adv-x="430" +d="M45 335q25 12 41.5 24.5t26.5 28.5t14 36t5 46l3 100q2 51 12 91.5t33 68.5t61.5 43t98.5 15h19.5t26.5 -2q9 -41 9 -69q0 -30 -9 -70h-31q-20 0 -32 -7t-18 -21.5t-7.5 -36.5t-1.5 -53q0 -54 -4 -90t-12 -60t-20 -39.5t-28 -27.5q16 -12 28 -27.5t20 -40t12 -60.5t4 -90 +q0 -31 1.5 -53t7.5 -36.5t18 -21.5t32 -7h31q9 -41 9 -70t-9 -69q-17 -2 -26.5 -2h-19.5q-60 0 -98.5 15t-61.5 43t-33 68.5t-12 91.5l-3 101q-1 26 -5 46t-14 35.5t-26.5 28.5t-41.5 25v46z" /> + <glyph glyph-name="bar" unicode="|" horiz-adv-x="349" +d="M175 -174q-34 0 -83 9v939q25 4 45 6t37 2t38 -2t45 -6v-939q-50 -9 -82 -9z" /> + <glyph glyph-name="braceright" unicode="}" horiz-adv-x="430" +d="M385 289q-25 -12 -41.5 -25t-26.5 -28.5t-14 -35.5t-5 -46l-3 -101q-2 -51 -12 -91.5t-33 -68.5t-61.5 -43t-98.5 -15h-19.5t-26.5 2q-9 40 -9 69t9 70h31q20 0 32 7t18 21.5t7.5 36.5t1.5 53q0 54 4 90t12 60.5t20 40t28 27.5q-16 12 -28 27.5t-20 39.5t-12 60t-4 90 +q0 31 -1.5 53t-7.5 36.5t-18 21.5t-32 7h-31q-9 40 -9 70q0 28 9 69q17 2 26.5 2h19.5q60 0 98.5 -15t61.5 -43t33 -68.5t12 -91.5l3 -100q1 -26 5 -46t14 -36t26.5 -28.5t41.5 -24.5v-46z" /> + <glyph glyph-name="asciitilde" unicode="~" horiz-adv-x="466" +d="M150 495q23 0 44 -6t43 -14l38 -12t39 -6q9 0 17 1.5t17.5 6t20.5 12t25 20.5q26 -25 43.5 -55t26.5 -58q-25 -29 -63 -48.5t-86 -19.5q-24 0 -46.5 6t-44.5 14q-20 6 -38 11.5t-35 5.5q-9 0 -17.5 -1t-17.5 -5t-19.5 -12t-25.5 -21q-24 25 -42.5 53.5t-26.5 58.5 +q24 28 62 48.5t86 20.5z" /> + <glyph glyph-name="exclamdown" unicode="&#xa1;" horiz-adv-x="302" +d="M240 0q-24 -4 -46.5 -5t-42.5 -1t-42 1t-47 5l9 466q49 9 80 9q30 0 80 -9zM151 542q-20 0 -40.5 2t-43.5 6q-3 23 -5 43.5t-2 39.5t2 40t5 44q23 4 43.5 6t40.5 2t40.5 -2t43.5 -6q3 -23 5 -44t2 -40t-2 -39.5t-5 -43.5q-23 -4 -43.5 -6t-40.5 -2z" /> + <glyph glyph-name="cent" unicode="&#xa2;" horiz-adv-x="466" +d="M31 258q0 49 12.5 93t37 79t61.5 59.5t85 33.5v110q8 3 24.5 5.5t31.5 2.5q14 0 30.5 -2.5t26.5 -5.5v-107q24 -2 48 -8.5t55 -18.5q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25 5.5t-23 3t-24.5 1q-48 0 -77.5 -32t-29.5 -95q0 -67 31.5 -96.5t76.5 -29.5 +q29 0 51 5.5t51 16.5q17 -27 27 -60.5t10 -76.5q-31 -12 -57.5 -18.5t-51.5 -8.5v-106q-10 -3 -26.5 -5.5t-30.5 -2.5q-15 0 -31.5 2.5t-24.5 5.5v110q-49 9 -85.5 33t-61 58.5t-37 78.5t-12.5 94z" /> + <glyph glyph-name="sterling" unicode="&#xa3;" horiz-adv-x="582" +d="M64 31q16 13 31.5 32.5t27.5 45.5t19 57t7 66q0 19 -3 42h-83q-4 24 -5.5 40t-1.5 31q0 14 1.5 29t5.5 38h61q-2 18 -3 39t-1 41q0 42 14.5 82.5t44.5 72.5t76 52t109 20q53 0 93.5 -9t79.5 -26q-2 -29 -11 -66t-29 -78q-23 11 -50 21t-65 10q-25 0 -42 -8.5t-27.5 -21.5 +t-15 -28.5t-4.5 -30.5q0 -19 2 -37.5t4 -32.5h145q4 -24 5.5 -39.5t1.5 -31.5q0 -14 -1.5 -29t-5.5 -38h-125q1 -3 1 -6.5v-6.5q0 -26 -4 -54t-15 -53h231q5 -24 6 -43t1 -33q0 -16 -1 -34.5t-6 -43.5h-459z" /> + <glyph glyph-name="currency" unicode="&#xa4;" horiz-adv-x="579" +d="M65 342q0 27 7 52.5t18 47.5l-66 67q16 35 41 58.5t59 42.5l69 -69q46 22 97 22t97 -22l69 70q28 -18 54 -42.5t45 -57.5l-66 -65q12 -23 19.5 -49t7.5 -55q0 -26 -6.5 -52t-17.5 -49q15 -16 32.5 -33t31.5 -30q-19 -29 -44 -55t-57 -45l-66 67q-46 -23 -99 -23t-101 23 +l-65 -66q-36 17 -59.5 42.5t-41.5 57.5l65 65q-11 22 -17 47t-6 51zM203 342q0 -42 25 -67t62 -25q38 0 63 25t25 67t-25 68t-63 26q-37 0 -62 -26t-25 -68z" /> + <glyph glyph-name="yen" unicode="&#xa5;" horiz-adv-x="587" +d="M204 308h-150q-5 15 -5 46q0 14 1.5 26.5t3.5 20.5h109l-161 306q14 2 42.5 4t54.5 2q21 0 46.5 -2t40.5 -4l111 -240l106 240q23 4 46 5t49 1q17 0 43.5 -1.5t43.5 -4.5l-163 -306h125q2 -8 3.5 -20.5t1.5 -26.5q0 -31 -5 -46h-166v-62h166q2 -8 3.5 -20.5t1.5 -26.5 +q0 -31 -5 -46h-166v-151q-26 -5 -48 -6.5t-40 -1.5q-17 0 -40 1.5t-49 6.5v151h-150q-5 15 -5 46q0 14 1.5 26.5t3.5 20.5h150v62z" /> + <glyph glyph-name="brokenbar" unicode="&#xa6;" horiz-adv-x="349" +d="M257 443q-24 -4 -45 -6t-38 -2t-37 2t-45 6v331q25 4 45 6t37 2t38 -2t45 -6v-331zM257 -165q-50 -9 -82 -9q-34 0 -83 9v330q25 4 45 6t37 2t38 -2t45 -6v-330z" /> + <glyph glyph-name="section" unicode="&#xa7;" horiz-adv-x="571" +d="M54 347q0 70 61 116q-20 17 -27 40t-7 48q0 79 61.5 123.5t168.5 44.5q46 0 88 -7t87 -24q-2 -32 -13.5 -67.5t-25.5 -62.5q-9 4 -23.5 9t-32.5 10t-38.5 8.5t-39.5 3.5q-34 0 -48 -8.5t-14 -22.5q0 -10 10.5 -17.5t24.5 -11.5l118 -34q66 -20 90.5 -55.5t24.5 -77.5 +q0 -35 -15 -64.5t-47 -53.5q20 -17 27.5 -40t7.5 -48q0 -40 -19 -71t-52.5 -52.5t-79 -33t-98.5 -11.5q-46 0 -92 7.5t-91 24.5q2 32 14.5 68t28.5 64q23 -11 62 -22t87 -11q39 0 54.5 7.5t15.5 19.5q0 14 -12 21t-29 12l-104 31q-68 21 -95.5 58.5t-27.5 78.5zM220 409 +q-7 -8 -12 -19t-5 -22t9.5 -21.5t32.5 -17.5l106 -29q16 16 16 38q0 12 -9 24t-41 21z" /> + <glyph glyph-name="dieresis" unicode="&#xa8;" horiz-adv-x="480" +d="M277 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM52 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z +" /> + <glyph glyph-name="copyright" unicode="&#xa9;" horiz-adv-x="802" +d="M503 293q4 -8 9.5 -21.5t9.5 -30t7 -34.5t3 -34q-35 -14 -65 -18t-60 -4q-48 0 -85 15.5t-62.5 43.5t-39 66.5t-13.5 83.5q0 42 13.5 80t38.5 66.5t61.5 45.5t82.5 17q36 0 63 -4t62 -18q0 -27 -6 -59t-20 -60q-20 8 -40.5 12.5t-37.5 4.5q-35 0 -56.5 -22.5t-21.5 -62.5 +q0 -44 22 -65t59 -21q38 0 76 19zM401 79q64 0 114.5 21.5t86 59t54.5 89t19 110.5t-19 110.5t-54.5 89t-86 59t-114.5 21.5t-114.5 -21.5t-86 -59t-54.5 -89t-19 -110.5t19 -110.5t54.5 -89t86 -59t114.5 -21.5zM401 -13q-83 0 -151.5 28.5t-117 78t-75.5 117.5t-27 148 +q0 79 27 147.5t75.5 118t117 78t151.5 28.5t151.5 -28t117 -78t75.5 -118t27 -148t-27 -148t-75.5 -117.5t-117 -78t-151.5 -28.5z" /> + <glyph glyph-name="ordfeminine" unicode="&#xaa;" horiz-adv-x="427" +d="M241 487q-8 1 -15.5 1h-20.5q-27 0 -42.5 -10t-15.5 -33q0 -13 7 -20.5t16.5 -11t20.5 -4t19 -0.5t16 0.5t15 1.5v76zM205 573h19t17 -1q-2 24 -17 34.5t-50 10.5q-42 0 -96 -17q-15 24 -21.5 48t-6.5 47q36 11 73.5 17.5t67.5 6.5q84 0 130.5 -39.5t46.5 -126.5v-222 +q-27 -9 -70 -17.5t-90 -8.5q-41 0 -75 7t-58 23.5t-37.5 42t-13.5 63.5q0 39 16.5 64.5t42.5 40.5t58 21t64 6z" /> + <glyph glyph-name="guillemotleft" unicode="&#xab;" horiz-adv-x="653" +d="M211 266l154 -222q-47 -9 -95 -9q-24 0 -46.5 2.5t-37.5 6.5l-156 222l156 222q15 4 37.5 6.5t46.5 2.5q48 0 95 -9zM478 266l154 -222q-47 -9 -95 -9q-24 0 -46.5 2.5t-37.5 6.5l-156 222l156 222q15 4 37.5 6.5t46.5 2.5q48 0 95 -9z" /> + <glyph glyph-name="logicalnot" unicode="&#xac;" horiz-adv-x="579" +d="M513 126q-20 -4 -37 -6t-34 -2q-32 0 -72 8v156h-296q-4 20 -6 36.5t-2 33.5t2 35t6 38h439v-299z" /> + <glyph glyph-name="registered" unicode="&#xae;" horiz-adv-x="802" +d="M399 365q11 8 25.5 25.5t14.5 37.5t-12.5 32t-39.5 12h-20v-297q-17 -3 -30.5 -4t-27.5 -1q-13 0 -28.5 1t-32.5 4v386q31 5 59 8t61 3q98 0 147 -35.5t49 -98.5q0 -40 -15.5 -65t-35.5 -41l68 -156q-20 -2 -38.5 -3.5t-38.5 -1.5q-15 0 -27.5 0.5t-27.5 3.5l-68 176z +M401 79q64 0 114.5 21.5t86 59t54.5 89t19 110.5t-19 110.5t-54.5 89t-86 59t-114.5 21.5t-114.5 -21.5t-86 -59t-54.5 -89t-19 -110.5t19 -110.5t54.5 -89t86 -59t114.5 -21.5zM401 -13q-83 0 -151.5 28.5t-117 78t-75.5 117.5t-27 148q0 79 27 147.5t75.5 118t117 78 +t151.5 28.5t151.5 -28t117 -78t75.5 -118t27 -148t-27 -148t-75.5 -117.5t-117 -78t-151.5 -28.5z" /> + <glyph glyph-name="macron" unicode="&#xaf;" horiz-adv-x="480" +d="M391 713q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="degree" unicode="&#xb0;" horiz-adv-x="387" +d="M28 565q0 34 13 63t35.5 51t52.5 34.5t64 12.5t64.5 -12.5t53 -34.5t35.5 -51t13 -63q0 -33 -13 -62t-35.5 -50.5t-53 -34t-64.5 -12.5t-64 12.5t-52.5 34t-35.5 50.5t-13 62zM136 565q0 -25 17.5 -42t39.5 -17t40 17t18 42q0 26 -18 43.5t-40 17.5t-39.5 -17.5 +t-17.5 -43.5z" /> + <glyph glyph-name="plusminus" unicode="&#xb1;" horiz-adv-x="579" +d="M71 -11q-3 20 -5 36.5t-2 34.5q0 17 2 34.5t5 37.5h147v150h-147q-3 20 -5 36.5t-2 34.5q0 17 2 34.5t5 37.5h147v159q19 4 36 6t35 2q17 0 34.5 -2t37.5 -6v-159h146q4 -20 6 -37t2 -34t-2 -34.5t-6 -37.5h-146v-150h146q4 -20 6 -37t2 -34t-2 -34.5t-6 -37.5h-436z" /> + <glyph glyph-name="twosuperior" unicode="&#xb2;" +d="M255 414h108q4 -17 5 -29.5t1 -24.5t-1 -25t-5 -30h-318l-9 23l109 132q35 42 51 68.5t16 43.5q0 18 -13 28t-36 10q-24 0 -42.5 -6.5t-47.5 -19.5q-10 20 -19 46.5t-12 55.5q25 14 63 23.5t75 9.5q75 0 120.5 -35.5t45.5 -99.5q0 -24 -8 -46.5t-20 -42.5t-26 -37 +t-26 -31z" /> + <glyph glyph-name="threesuperior" unicode="&#xb3;" +d="M72 600q-4 15 -5 28t-1 25t1 24.5t5 27.5h279l12 -21l-85 -129q46 -11 69.5 -42.5t23.5 -73.5q0 -37 -14.5 -64.5t-40 -46t-60.5 -28t-75 -9.5q-44 0 -77.5 7t-58.5 16q1 29 11 57.5t22 46.5q17 -8 42.5 -16t51.5 -8q28 0 48.5 11t20.5 35q0 17 -14.5 29.5t-46.5 12.5 +q-8 0 -17.5 -1t-29.5 -7l-18 21l72 105h-115z" /> + <glyph glyph-name="acute" unicode="&#xb4;" horiz-adv-x="480" +d="M240 586q-30 -6 -73 -6q-19 0 -37.5 1t-35.5 5l107 123q39 6 92 6q26 0 50.5 -1.5t42.5 -4.5z" /> + <glyph glyph-name="mu" unicode="&#xb5;" horiz-adv-x="571" +d="M328 -11q-45 0 -70 9t-33 17v-240q-21 -5 -43 -7t-41 -2q-20 0 -41.5 2t-43.5 7v742q22 5 44 7t42 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493q-35 -12 -83 -23.5t-104 -11.5z" /> + <glyph glyph-name="paragraph" unicode="&#xb6;" horiz-adv-x="620" +d="M434 725q20 0 55 -1t66 -5v-719q-9 -2 -42.5 -4t-78.5 -2v731zM260 306q-42 1 -81.5 12.5t-70 34.5t-49.5 60.5t-19 91.5q0 119 85 169.5t256 50.5v-731q-45 0 -78.5 2t-42.5 4v306z" /> + <glyph glyph-name="periodcentered" unicode="&#xb7;" horiz-adv-x="296" +d="M148 415q20 0 41 -2t44 -5q4 -23 6 -44t2 -41t-2 -41t-6 -44q-23 -4 -44 -6t-41 -2t-41 2t-44 6q-4 23 -6 44t-2 41t2 41t6 44q23 3 44 5t41 2z" /> + <glyph glyph-name="cedilla" unicode="&#xb8;" horiz-adv-x="480" +d="M210 -115q-10 0 -22 -1.5t-37 -9.5l-20 20l84 132h84l-49 -76q55 -2 86 -25.5t31 -61.5q0 -52 -43.5 -78.5t-117.5 -26.5q-23 0 -47.5 3t-44.5 11q0 11 5 31t16 36q19 -6 34.5 -8.5t34.5 -2.5q26 0 36 9t10 21t-10 19.5t-30 7.5z" /> + <glyph glyph-name="onesuperior" unicode="&#xb9;" +d="M91 305q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281z" /> + <glyph glyph-name="ordmasculine" unicode="&#xba;" horiz-adv-x="437" +d="M275 507q0 48 -14 73.5t-44 25.5q-29 0 -42.5 -25.5t-13.5 -73.5q0 -47 13.5 -73t42.5 -26q30 0 44 26t14 73zM22 507q0 41 11.5 79t35.5 67.5t60.5 47.5t87.5 18t88.5 -18t61.5 -47.5t36 -67.5t12 -79t-12 -79t-36 -67t-61.5 -47t-88.5 -18t-87.5 18t-60.5 47t-35.5 67 +t-11.5 79z" /> + <glyph glyph-name="guillemotright" unicode="&#xbb;" horiz-adv-x="652" +d="M21 488q46 9 95 9q24 0 46.5 -2.5t37.5 -6.5l156 -222l-156 -222q-15 -4 -37.5 -6.5t-46.5 -2.5q-49 0 -95 9l154 222zM287 488q46 9 95 9q24 0 46.5 -2.5t37.5 -6.5l156 -222l-156 -222q-15 -4 -37.5 -6.5t-46.5 -2.5q-49 0 -95 9l154 222z" /> + <glyph glyph-name="questiondown" unicode="&#xbf;" horiz-adv-x="479" +d="M408 163q6 -13 12.5 -30t11.5 -35t9 -35.5t5 -32.5q-56 -20 -96.5 -28t-86.5 -8q-121 0 -182 55t-61 152q0 44 15.5 76.5t38 56t47.5 38.5t45 24v91q22 3 43 5t38 2q18 0 38.5 -2t40.5 -5v-188q-26 -3 -51 -9.5t-44.5 -17.5t-31.5 -27.5t-12 -39.5q0 -34 25 -51.5 +t67 -17.5q19 0 34 1.5t29.5 5t30 8.5t35.5 12zM250 534q-20 0 -41 2t-44 5q-4 23 -6 44t-2 41t2 41t6 44q23 4 44 6t41 2t41 -2t44 -6q4 -23 6 -44t2 -41t-2 -41t-6 -44q-23 -3 -44 -5t-41 -2z" /> + <glyph glyph-name="Agrave" unicode="&#xc0;" horiz-adv-x="642" +d="M178 2q-23 -4 -42 -6t-37 -2t-41.5 2.5t-52.5 7.5l224 714q26 3 48.5 5t45.5 2q19 0 41.5 -2t51.5 -5l221 -715q-57 -9 -100 -9q-20 0 -40 2t-43 6l-38 139q-28 -8 -53.5 -12t-50.5 -4q-23 0 -47 3.5t-50 10.5zM318 530l-67 -257q17 -5 32 -8t31 -3q17 0 33.5 2.5 +t34.5 7.5zM115 904q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="Aacute" unicode="&#xc1;" horiz-adv-x="642" +d="M178 2q-23 -4 -42 -6t-37 -2t-41.5 2.5t-52.5 7.5l224 714q26 3 48.5 5t45.5 2q19 0 41.5 -2t51.5 -5l221 -715q-57 -9 -100 -9q-20 0 -40 2t-43 6l-38 139q-28 -8 -53.5 -12t-50.5 -4q-23 0 -47 3.5t-50 10.5zM318 530l-67 -257q17 -5 32 -8t31 -3q17 0 33.5 2.5 +t34.5 7.5zM556.006 904q-17.999 3 -42.498 4.5q-24.498 1.5 -50.4961 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Acircumflex" unicode="&#xc2;" horiz-adv-x="642" +d="M178 2q-23 -4 -42 -6t-37 -2t-41.5 2.5t-52.5 7.5l224 714q26 3 48.5 5t45.5 2q19 0 41.5 -2t51.5 -5l221 -715q-57 -9 -100 -9q-20 0 -40 2t-43 6l-38 139q-28 -8 -53.5 -12t-50.5 -4q-23 0 -47 3.5t-50 10.5zM318 530l-67 -257q17 -5 32 -8t31 -3q17 0 33.5 2.5 +t34.5 7.5zM321 909q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="Atilde" unicode="&#xc3;" horiz-adv-x="642" +d="M178 2q-23 -4 -42 -6t-37 -2t-41.5 2.5t-52.5 7.5l224 714q26 3 48.5 5t45.5 2q19 0 41.5 -2t51.5 -5l221 -715q-57 -9 -100 -9q-20 0 -40 2t-43 6l-38 139q-28 -8 -53.5 -12t-50.5 -4q-23 0 -47 3.5t-50 10.5zM318 530l-67 -257q17 -5 32 -8t31 -3q17 0 33.5 2.5 +t34.5 7.5zM130 870q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40 +t-18.5 47z" /> + <glyph glyph-name="Adieresis" unicode="&#xc4;" horiz-adv-x="642" +d="M178 2q-23 -4 -42 -6t-37 -2t-41.5 2.5t-52.5 7.5l224 714q26 3 48.5 5t45.5 2q19 0 41.5 -2t51.5 -5l221 -715q-57 -9 -100 -9q-20 0 -40 2t-43 6l-38 139q-28 -8 -53.5 -12t-50.5 -4q-23 0 -47 3.5t-50 10.5zM318 530l-67 -257q17 -5 32 -8t31 -3q17 0 33.5 2.5 +t34.5 7.5zM358 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM133 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5 +q-6 30 -6 60z" /> + <glyph glyph-name="Aring" unicode="&#xc5;" horiz-adv-x="642" +d="M198 796q0 54 36 84t89 30t89 -30t36 -84q0 -49 -32 -79l221 -714q-57 -9 -100 -9q-20 0 -40 2t-43 6l-38 139q-28 -8 -53.5 -12t-50.5 -4q-23 0 -47 3.5t-50 10.5l-37 -137q-23 -4 -42 -6t-37 -2t-41.5 2.5t-52.5 7.5l224 713q-31 31 -31 79zM318 530l-67 -257 +q17 -5 32 -8t31 -3q17 0 33.5 2.5t34.5 7.5zM323 746q21 0 35.5 14t14.5 36q0 21 -14.5 35.5t-35.5 14.5q-22 0 -36 -14t-14 -36t14 -36t36 -14z" /> + <glyph glyph-name="AE" unicode="&#xc6;" horiz-adv-x="941" +d="M474 166q-9 -2 -34 -5.5t-54 -3.5q-33 0 -62 5.5t-53 13.5l-88 -176q-23 -4 -46 -5t-43 -1q-35 0 -56 1.5t-38 4.5l388 719h508q4 -22 6 -41t2 -36q0 -33 -8 -79h-249v-110h197q9 -44 9 -78q0 -35 -9 -78h-197v-142h255q9 -42 9 -76q0 -37 -9 -79h-428v166zM337 304 +q15 -5 34.5 -8t38.5 -3t37 2t27 5v273z" /> + <glyph glyph-name="Ccedilla" unicode="&#xc7;" horiz-adv-x="609" +d="M310 -115q-10 0 -22 -1.5t-37 -9.5l-20 20l66 104q-63 13 -111 45t-80.5 79t-48.5 107t-16 129q0 80 23 148.5t66.5 118.5t107.5 78t145 28q48 0 91 -7t96 -28q-2 -41 -15 -79.5t-27 -67.5q-20 7 -36.5 12t-31.5 8t-30 4.5t-32 1.5q-81 0 -125.5 -54.5t-44.5 -162.5 +q0 -212 178 -212q32 0 60.5 6t69.5 20q33 -72 44 -148q-29 -11 -54 -18t-48 -10.5t-45.5 -5t-46.5 -1.5q-3 0 -5.5 0.5t-5.5 0.5l-25 -40q55 -2 86 -25.5t31 -61.5q0 -52 -43.5 -78.5t-117.5 -26.5q-23 0 -47.5 3t-44.5 11q0 11 5 31t16 36q19 -6 34.5 -8.5t34.5 -2.5 +q26 0 36 9t10 21t-10 19.5t-30 7.5z" /> + <glyph glyph-name="Egrave" unicode="&#xc8;" horiz-adv-x="527" +d="M439 375q0 -35 -9 -78h-193v-142h251q9 -42 9 -76q0 -37 -9 -79h-428v719h422q4 -22 6 -41t2 -36q0 -33 -8 -79h-245v-110h193q9 -44 9 -78zM96 904q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="Eacute" unicode="&#xc9;" horiz-adv-x="527" +d="M439 375q0 -35 -9 -78h-193v-142h251q9 -42 9 -76q0 -37 -9 -79h-428v719h422q4 -22 6 -41t2 -36q0 -33 -8 -79h-245v-110h193q9 -44 9 -78zM506.006 904q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5 +t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Ecircumflex" unicode="&#xca;" horiz-adv-x="527" +d="M439 375q0 -35 -9 -78h-193v-142h251q9 -42 9 -76q0 -37 -9 -79h-428v719h422q4 -22 6 -41t2 -36q0 -33 -8 -79h-245v-110h193q9 -44 9 -78zM273 909q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1 +q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="Edieresis" unicode="&#xcb;" horiz-adv-x="527" +d="M439 375q0 -35 -9 -78h-193v-142h251q9 -42 9 -76q0 -37 -9 -79h-428v719h422q4 -22 6 -41t2 -36q0 -33 -8 -79h-245v-110h193q9 -44 9 -78zM309 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5 +q-6 30 -6 60zM84 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="Igrave" unicode="&#xcc;" horiz-adv-x="297" +d="M149 -6q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9zM-57 904q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="Iacute" unicode="&#xcd;" horiz-adv-x="297" +d="M149 -6q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9zM376.006 904q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Icircumflex" unicode="&#xce;" horiz-adv-x="297" +d="M149 -6q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9zM149 909q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="Idieresis" unicode="&#xcf;" horiz-adv-x="297" +d="M149 -6q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9zM186 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM-39 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5 +t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="Eth" unicode="&#xd0;" horiz-adv-x="685" +d="M-2 363q0 25 9 55h53v299q15 2 38 4.5t50 4.5t55.5 3.5t55.5 1.5q189 0 287 -94.5t98 -281.5q0 -190 -100 -278.5t-296 -88.5q-50 0 -96.5 4.5t-91.5 10.5v306h-53q-9 30 -9 54zM237 418h93q5 -15 6.5 -28.5t1.5 -25.5t-1.5 -26t-6.5 -29h-93v-164q7 -1 16 -1h19 +q39 0 73.5 9.5t59.5 33.5t39.5 65t14.5 105q0 63 -15 105t-39.5 66.5t-57.5 35t-69 10.5q-20 0 -29 -0.5t-12 -0.5v-155z" /> + <glyph glyph-name="Ntilde" unicode="&#xd1;" horiz-adv-x="659" +d="M60 717q22 4 40 6t35 2q18 0 37.5 -2.5t33.5 -5.5l232 -392v392q26 4 47 6t38 2t36 -2t40 -6l-1 -714q-10 -3 -29 -6t-41 -3q-25 0 -45 3.5t-29 5.5l-233 390v-390q-44 -9 -80 -9t-81 9v714zM138 870q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5 +t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47z" /> + <glyph glyph-name="Ograve" unicode="&#xd2;" horiz-adv-x="711" +d="M41 357q0 80 18.5 148.5t57 118.5t98 78.5t141.5 28.5t141 -28.5t97.5 -78.5t57 -118.5t18.5 -148.5t-18.5 -147.5t-57 -117t-97.5 -77t-141 -27.5t-141.5 27.5t-98 77t-57 117t-18.5 147.5zM484 357q0 218 -127 218q-130 0 -130 -218q0 -109 31.5 -162.5t97.5 -53.5 +q128 0 128 216zM179 904q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="Oacute" unicode="&#xd3;" horiz-adv-x="711" +d="M41 357q0 80 18.5 148.5t57 118.5t98 78.5t141.5 28.5t141 -28.5t97.5 -78.5t57 -118.5t18.5 -148.5t-18.5 -147.5t-57 -117t-97.5 -77t-141 -27.5t-141.5 27.5t-98 77t-57 117t-18.5 147.5zM484 357q0 218 -127 218q-130 0 -130 -218q0 -109 31.5 -162.5t97.5 -53.5 +q128 0 128 216zM586.006 904q-17.999 3 -42.498 4.5q-24.498 1.5 -50.4961 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Ocircumflex" unicode="&#xd4;" horiz-adv-x="711" +d="M41 357q0 80 18.5 148.5t57 118.5t98 78.5t141.5 28.5t141 -28.5t97.5 -78.5t57 -118.5t18.5 -148.5t-18.5 -147.5t-57 -117t-97.5 -77t-141 -27.5t-141.5 27.5t-98 77t-57 117t-18.5 147.5zM484 357q0 218 -127 218q-130 0 -130 -218q0 -109 31.5 -162.5t97.5 -53.5 +q128 0 128 216zM355 909q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="Otilde" unicode="&#xd5;" horiz-adv-x="711" +d="M41 357q0 80 18.5 148.5t57 118.5t98 78.5t141.5 28.5t141 -28.5t97.5 -78.5t57 -118.5t18.5 -148.5t-18.5 -147.5t-57 -117t-97.5 -77t-141 -27.5t-141.5 27.5t-98 77t-57 117t-18.5 147.5zM484 357q0 218 -127 218q-130 0 -130 -218q0 -109 31.5 -162.5t97.5 -53.5 +q128 0 128 216zM164 870q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25 +q-16 17 -27.5 40t-18.5 47z" /> + <glyph glyph-name="Odieresis" unicode="&#xd6;" horiz-adv-x="711" +d="M41 357q0 80 18.5 148.5t57 118.5t98 78.5t141.5 28.5t141 -28.5t97.5 -78.5t57 -118.5t18.5 -148.5t-18.5 -147.5t-57 -117t-97.5 -77t-141 -27.5t-141.5 27.5t-98 77t-57 117t-18.5 147.5zM484 357q0 218 -127 218q-130 0 -130 -218q0 -109 31.5 -162.5t97.5 -53.5 +q128 0 128 216zM392 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM167 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5 +q-6 30 -6 60z" /> + <glyph glyph-name="multiply" unicode="&#xd7;" horiz-adv-x="579" +d="M84 455q10 17 22 31.5t23 25.5q11 12 28 25t29 20l104 -105l102 105q12 -7 29 -20t28 -25q11 -11 23 -25.5t22 -31.5l-106 -102l106 -104q-10 -17 -22 -31.5t-23 -25.5q-11 -12 -27.5 -24.5t-28.5 -19.5l-103 107l-104 -107q-12 7 -29 20t-28 25q-11 11 -23 25.5 +t-22 31.5l107 103z" /> + <glyph glyph-name="Oslash" unicode="&#xd8;" horiz-adv-x="727" +d="M51 357q0 80 18.5 148.5t57 118.5t98 78.5t141.5 28.5q55 0 100 -13.5t80 -37.5l29 39q7 2 20.5 3t30.5 1t33 -1t27 -3l-76 -102q35 -50 52.5 -116t17.5 -144q0 -80 -18.5 -147.5t-57 -117t-97.5 -77t-141 -27.5q-112 0 -184 52l-30 -40q-7 -2 -20.5 -3t-30.5 -1t-33 1 +t-27 3l77 104q-35 48 -51 112.5t-16 140.5zM494 357q0 50 -8 93l-204 -275q31 -34 84 -34q128 0 128 216zM237 357q0 -48 6 -85l202 272q-31 31 -78 31q-130 0 -130 -218z" /> + <glyph glyph-name="Ugrave" unicode="&#xd9;" horiz-adv-x="662" +d="M331 -11q-81 0 -134.5 22t-84.5 63.5t-43.5 100.5t-12.5 133v409q29 4 50 5.5t40 1.5q17 0 37.5 -1.5t49.5 -5.5v-388q0 -50 4 -85t14.5 -57t29.5 -31.5t50 -9.5t50.5 9.5t30 31.5t14 57t3.5 85v388q30 4 50.5 5.5t37.5 1.5q18 0 39 -1.5t50 -5.5v-409q0 -74 -12.5 -133 +t-43.5 -100.5t-84.5 -63.5t-134.5 -22zM125 904q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="Uacute" unicode="&#xda;" horiz-adv-x="662" +d="M331 -11q-81 0 -134.5 22t-84.5 63.5t-43.5 100.5t-12.5 133v409q29 4 50 5.5t40 1.5q17 0 37.5 -1.5t49.5 -5.5v-388q0 -50 4 -85t14.5 -57t29.5 -31.5t50 -9.5t50.5 9.5t30 31.5t14 57t3.5 85v388q30 4 50.5 5.5t37.5 1.5q18 0 39 -1.5t50 -5.5v-409q0 -74 -12.5 -133 +t-43.5 -100.5t-84.5 -63.5t-134.5 -22zM562.006 904q-17.999 3 -42.498 4.5q-24.498 1.5 -50.4961 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Ucircumflex" unicode="&#xdb;" horiz-adv-x="662" +d="M331 -11q-81 0 -134.5 22t-84.5 63.5t-43.5 100.5t-12.5 133v409q29 4 50 5.5t40 1.5q17 0 37.5 -1.5t49.5 -5.5v-388q0 -50 4 -85t14.5 -57t29.5 -31.5t50 -9.5t50.5 9.5t30 31.5t14 57t3.5 85v388q30 4 50.5 5.5t37.5 1.5q18 0 39 -1.5t50 -5.5v-409q0 -74 -12.5 -133 +t-43.5 -100.5t-84.5 -63.5t-134.5 -22zM331 909q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="Udieresis" unicode="&#xdc;" horiz-adv-x="662" +d="M331 -11q-81 0 -134.5 22t-84.5 63.5t-43.5 100.5t-12.5 133v409q29 4 50 5.5t40 1.5q17 0 37.5 -1.5t49.5 -5.5v-388q0 -50 4 -85t14.5 -57t29.5 -31.5t50 -9.5t50.5 9.5t30 31.5t14 57t3.5 85v388q30 4 50.5 5.5t37.5 1.5q18 0 39 -1.5t50 -5.5v-409q0 -74 -12.5 -133 +t-43.5 -100.5t-84.5 -63.5t-134.5 -22zM368 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM143 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5 +t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="Yacute" unicode="&#xdd;" horiz-adv-x="622" +d="M433 717q23 4 48 6t51 2q17 0 44 -2.5t46 -5.5l-223 -459v-255q-53 -9 -88 -9q-37 0 -89 9v255q-26 54 -54.5 112.5l-57 117t-56.5 117t-54 112.5q17 3 46 5.5t55 2.5q21 0 46.5 -2.5t44.5 -5.5l123 -278zM546.006 904q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5 +q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Thorn" unicode="&#xde;" horiz-adv-x="587" +d="M235 616h28q49 0 100.5 -9t94 -36t69.5 -76t27 -129q0 -71 -22 -118t-58.5 -76t-83.5 -41t-97 -12q-14 0 -32 1.5t-26 3.5v-121q-53 -9 -87 -9q-36 0 -88 9v713q52 9 88 9q34 0 87 -9v-100zM235 269q5 -2 16 -3t24 -1q43 0 70 24t27 75q0 30 -8.5 50t-23.5 32t-35 17 +t-42 5h-13t-15 -1v-198z" /> + <glyph glyph-name="germandbls" unicode="&#xdf;" horiz-adv-x="940" +d="M305 324q30 -8 54.5 -19.5t42 -29.5t27.5 -44t10 -63q0 -38 -15.5 -71t-46 -57t-75 -38t-102.5 -14q-48 0 -89 7t-87 24q5 68 37 138q32 -15 67 -22.5t70 -7.5q12 0 25 1t23 4.5t16.5 9.5t6.5 16q0 13 -13 19.5t-30 11.5l-68 19q-53 15 -88 51t-35 98q0 39 16 71t45 54.5 +t68.5 34.5t87.5 12q38 0 83 -8t89 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -65 20t-70 9q-47 0 -47 -26q0 -11 11 -17t25 -10zM775 324q30 -8 54.5 -19.5t42 -29.5t27.5 -44t10 -63q0 -38 -15.5 -71t-46 -57t-75 -38t-102.5 -14q-48 0 -89 7t-87 24q5 68 37 138 +q32 -15 67 -22.5t70 -7.5q12 0 25 1t23 4.5t16.5 9.5t6.5 16q0 13 -13 19.5t-30 11.5l-68 19q-53 15 -88 51t-35 98q0 39 16 71t45 54.5t68.5 34.5t87.5 12q38 0 83 -8t89 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -65 20t-70 9q-47 0 -47 -26q0 -11 11 -17t25 -10z" /> + <glyph glyph-name="agrave" unicode="&#xe0;" horiz-adv-x="523" +d="M30 169q0 49 21 81t54 51t73 26.5t78 7.5h61q-1 18 -10 30t-23 18.5t-31 9t-35 2.5q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 95.5 24t85.5 8q52 0 94 -12.5t71.5 -38.5t45.5 -66.5t16 -96.5v-293q-38 -11 -92 -22t-114 -11 +q-52 0 -95.5 9.5t-74.5 30.5t-48.5 55.5t-17.5 84.5zM266 113q9 0 26 2t25 4v110h-57q-35 0 -59 -15t-24 -42q0 -20 9 -31.5t22.5 -17.5t29 -8t28.5 -2zM76 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="aacute" unicode="&#xe1;" horiz-adv-x="523" +d="M30 169q0 49 21 81t54 51t73 26.5t78 7.5h61q-1 18 -10 30t-23 18.5t-31 9t-35 2.5q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 95.5 24t85.5 8q52 0 94 -12.5t71.5 -38.5t45.5 -66.5t16 -96.5v-293q-38 -11 -92 -22t-114 -11 +q-52 0 -95.5 9.5t-74.5 30.5t-48.5 55.5t-17.5 84.5zM266 113q9 0 26 2t25 4v110h-57q-35 0 -59 -15t-24 -42q0 -20 9 -31.5t22.5 -17.5t29 -8t28.5 -2zM471.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123 +q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="acircumflex" unicode="&#xe2;" horiz-adv-x="523" +d="M30 169q0 49 21 81t54 51t73 26.5t78 7.5h61q-1 18 -10 30t-23 18.5t-31 9t-35 2.5q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 95.5 24t85.5 8q52 0 94 -12.5t71.5 -38.5t45.5 -66.5t16 -96.5v-293q-38 -11 -92 -22t-114 -11 +q-52 0 -95.5 9.5t-74.5 30.5t-48.5 55.5t-17.5 84.5zM266 113q9 0 26 2t25 4v110h-57q-35 0 -59 -15t-24 -42q0 -20 9 -31.5t22.5 -17.5t29 -8t28.5 -2zM253 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6 +t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="atilde" unicode="&#xe3;" horiz-adv-x="523" +d="M30 169q0 49 21 81t54 51t73 26.5t78 7.5h61q-1 18 -10 30t-23 18.5t-31 9t-35 2.5q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 95.5 24t85.5 8q52 0 94 -12.5t71.5 -38.5t45.5 -66.5t16 -96.5v-293q-38 -11 -92 -22t-114 -11 +q-52 0 -95.5 9.5t-74.5 30.5t-48.5 55.5t-17.5 84.5zM266 113q9 0 26 2t25 4v110h-57q-35 0 -59 -15t-24 -42q0 -20 9 -31.5t22.5 -17.5t29 -8t28.5 -2zM65 675q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5 +q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47z" /> + <glyph glyph-name="adieresis" unicode="&#xe4;" horiz-adv-x="523" +d="M30 169q0 49 21 81t54 51t73 26.5t78 7.5h61q-1 18 -10 30t-23 18.5t-31 9t-35 2.5q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 95.5 24t85.5 8q52 0 94 -12.5t71.5 -38.5t45.5 -66.5t16 -96.5v-293q-38 -11 -92 -22t-114 -11 +q-52 0 -95.5 9.5t-74.5 30.5t-48.5 55.5t-17.5 84.5zM266 113q9 0 26 2t25 4v110h-57q-35 0 -59 -15t-24 -42q0 -20 9 -31.5t22.5 -17.5t29 -8t28.5 -2zM298 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5 +t-35 4.5q-6 30 -6 60zM73 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="aring" unicode="&#xe5;" horiz-adv-x="523" +d="M30 169q0 49 21 81t54 51t73 26.5t78 7.5h61q-1 18 -10 30t-23 18.5t-31 9t-35 2.5q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 95.5 24t85.5 8q52 0 94 -12.5t71.5 -38.5t45.5 -66.5t16 -96.5v-293q-38 -11 -92 -22t-114 -11 +q-52 0 -95.5 9.5t-74.5 30.5t-48.5 55.5t-17.5 84.5zM266 113q9 0 26 2t25 4v110h-57q-35 0 -59 -15t-24 -42q0 -20 9 -31.5t22.5 -17.5t29 -8t28.5 -2zM146 685q0 54 36 84t89 30t89 -30t36 -84t-36 -84t-89 -30t-89 30t-36 84zM271 635q21 0 35.5 14t14.5 36 +q0 21 -14.5 35.5t-35.5 14.5q-22 0 -36 -14t-14 -36t14 -36t36 -14z" /> + <glyph glyph-name="ae" unicode="&#xe6;" horiz-adv-x="811" +d="M328 124q-11 26 -16.5 50t-6.5 50h-45q-35 0 -59 -13.5t-24 -40.5q0 -20 9 -31t22.5 -17t29 -7.5t28.5 -1.5q22 0 39 4t23 7zM554 402q-32 0 -54 -19t-28 -60h160q-4 35 -22.5 57t-55.5 22zM218 395q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5 +q48 16 95.5 24t85.5 8q50 0 90.5 -11.5t69.5 -35.5q30 22 68.5 34.5t86.5 12.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2 -43.5t-4 -30.5h-307q8 -47 38.5 -66t74.5 -19q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-59 0 -95 11t-60 23 +q-26 -14 -66.5 -23.5t-94.5 -9.5q-50 0 -91.5 9t-72.5 30t-48 55t-17 84q0 49 21 80.5t54 50t73 25.5t78 7h61q0 20 -8.5 33t-23 20t-32 9.5t-35.5 2.5z" /> + <glyph glyph-name="ccedilla" unicode="&#xe7;" horiz-adv-x="471" +d="M31 258q0 60 17 110t50 85.5t81 55.5t110 20q21 0 40 -1t37.5 -4t38 -9t43.5 -15q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25.5 5.5t-23.5 2.5t-24.5 0.5q-48 0 -79.5 -28.5t-31.5 -98.5q0 -37 9.5 -61.5t25 -38.5t36 -20t43.5 -6q29 0 50.5 5t50.5 16 +q17 -27 27 -60.5t10 -76.5q-46 -18 -84 -23t-76 -5q-64 0 -113 19t-82.5 54.5t-50.5 85t-17 111.5zM215 -115q-10 0 -22 -1.5t-37 -9.5l-20 20l84 132h84l-49 -76q55 -2 86 -25.5t31 -61.5q0 -52 -43.5 -78.5t-117.5 -26.5q-23 0 -47.5 3t-44.5 11q0 11 5 31t16 36 +q19 -6 34.5 -8.5t34.5 -2.5q26 0 36 9t10 21t-10 19.5t-30 7.5z" /> + <glyph glyph-name="egrave" unicode="&#xe8;" horiz-adv-x="538" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-32 0 -55 -20t-27 -62h160q-2 35 -21.5 58.5t-56.5 23.5zM93 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="eacute" unicode="&#xe9;" horiz-adv-x="538" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-32 0 -55 -20t-27 -62h160q-2 35 -21.5 58.5t-56.5 23.5zM506.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="ecircumflex" unicode="&#xea;" horiz-adv-x="538" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-32 0 -55 -20t-27 -62h160q-2 35 -21.5 58.5t-56.5 23.5zM286 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="edieresis" unicode="&#xeb;" horiz-adv-x="538" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-32 0 -55 -20t-27 -62h160q-2 35 -21.5 58.5t-56.5 23.5zM325 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM100 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60 +t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="igrave" unicode="&#xec;" horiz-adv-x="285" +d="M-50 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6zM227 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516z" /> + <glyph glyph-name="iacute" unicode="&#xed;" horiz-adv-x="285" +d="M366.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6zM227 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516z" /> + <glyph glyph-name="icircumflex" unicode="&#xee;" horiz-adv-x="285" +d="M143 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1zM227 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516z" /> + <glyph glyph-name="idieresis" unicode="&#xef;" horiz-adv-x="285" +d="M180 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM-45 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60 +zM227 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516z" /> + <glyph glyph-name="eth" unicode="&#xf0;" horiz-adv-x="568" +d="M233 529q81 0 138.5 -19t94.5 -53.5t54 -83.5t17 -109q0 -63 -17.5 -114t-55 -87t-97 -55.5t-143.5 -19.5q-49 0 -87.5 3.5t-80.5 9.5v218h-46q-5 12 -6 25t-1 22q0 8 1 21t6 25h46v203q42 5 89 9.5t88 4.5zM225 312h61q5 -12 6 -25t1 -21q0 -9 -1 -22t-6 -25h-61v-88 +q4 0 10.5 -1t19.5 -1q56 0 83.5 31.5t27.5 103.5q0 64 -27 93.5t-77 29.5q-12 0 -22 -1t-15 -2v-72z" /> + <glyph glyph-name="ntilde" unicode="&#xf1;" horiz-adv-x="565" +d="M266 527q44 0 88 -7.5t79.5 -31.5t58 -69t22.5 -119v-299q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v281q0 53 -20 76t-61 23q-11 0 -23.5 -2t-15.5 -4v-374q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v491q35 12 85 23.5t125 11.5zM89 675q19 22 48.5 38 +t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47z" /> + <glyph glyph-name="ograve" unicode="&#xf2;" horiz-adv-x="577" +d="M31 256q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q64 0 112 -19.5t80.5 -55.5t49 -86.5t16.5 -111.5q0 -60 -16.5 -109.5t-49 -85t-80.5 -54.5t-112 -19q-63 0 -111 19t-80.5 54.5t-49 85t-16.5 109.5zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97 +t65 -34t65.5 34t21.5 97zM102 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="oacute" unicode="&#xf3;" horiz-adv-x="577" +d="M31 256q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q64 0 112 -19.5t80.5 -55.5t49 -86.5t16.5 -111.5q0 -60 -16.5 -109.5t-49 -85t-80.5 -54.5t-112 -19q-63 0 -111 19t-80.5 54.5t-49 85t-16.5 109.5zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97 +t65 -34t65.5 34t21.5 97zM506.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="ocircumflex" unicode="&#xf4;" horiz-adv-x="577" +d="M31 256q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q64 0 112 -19.5t80.5 -55.5t49 -86.5t16.5 -111.5q0 -60 -16.5 -109.5t-49 -85t-80.5 -54.5t-112 -19q-63 0 -111 19t-80.5 54.5t-49 85t-16.5 109.5zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97 +t65 -34t65.5 34t21.5 97zM288 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="otilde" unicode="&#xf5;" horiz-adv-x="577" +d="M31 256q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q64 0 112 -19.5t80.5 -55.5t49 -86.5t16.5 -111.5q0 -60 -16.5 -109.5t-49 -85t-80.5 -54.5t-112 -19q-63 0 -111 19t-80.5 54.5t-49 85t-16.5 109.5zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97 +t65 -34t65.5 34t21.5 97zM97 675q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25 +q-16 17 -27.5 40t-18.5 47z" /> + <glyph glyph-name="odieresis" unicode="&#xf6;" horiz-adv-x="577" +d="M31 256q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q64 0 112 -19.5t80.5 -55.5t49 -86.5t16.5 -111.5q0 -60 -16.5 -109.5t-49 -85t-80.5 -54.5t-112 -19q-63 0 -111 19t-80.5 54.5t-49 85t-16.5 109.5zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97 +t65 -34t65.5 34t21.5 97zM325 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM100 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5 +t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="divide" unicode="&#xf7;" horiz-adv-x="579" +d="M198 571q0 38 27 65t65 27t65 -27t27 -65t-27 -65t-65 -27t-65 27t-27 65zM199 164q0 38 27 65t65 27t65 -27t27 -65t-27 -65t-65 -27t-65 27t-27 65zM71 296q-3 20 -5 36.5t-2 34.5q0 17 2 34.5t5 37.5h436q4 -20 6 -37t2 -34t-2 -34.5t-6 -37.5h-436z" /> + <glyph glyph-name="oslash" unicode="&#xf8;" horiz-adv-x="577" +d="M487 444q58 -72 58 -188q0 -60 -16.5 -109.5t-49 -85t-80.5 -54.5t-112 -19q-83 0 -142 34l-18 -22q-17 -3 -50 -3q-17 0 -29.5 1t-17.5 2l57 71q-57 69 -57 185q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q43 0 78.5 -9t64.5 -26l19 23q16 3 50 3q17 0 29.5 -1 +t17.5 -2zM378 256q0 29 -4 49l-138 -171q19 -16 51 -16q46 0 68.5 36t22.5 102zM197 256q0 -25 3 -46l137 169q-22 16 -50 16q-46 0 -68 -36t-22 -103z" /> + <glyph glyph-name="ugrave" unicode="&#xf9;" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM88 709q18 3 42.5 4.5t50.5 1.5 +q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="uacute" unicode="&#xfa;" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM499.006 709 +q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="ucircumflex" unicode="&#xfb;" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM280 714q13 0 34 -1t37 -4 +l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="udieresis" unicode="&#xfc;" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM317 646q0 30 6 60q15 3 35 4.5 +t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM92 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="yacute" unicode="&#xfd;" horiz-adv-x="564" +d="M384 517q8 2 30.5 4t48.5 2q33 0 59 -2t37 -4l-193 -335v-181q-26 -4 -47 -6t-38 -2t-38 2t-46 6v181l-192 335q11 2 38.5 4t60.5 2q26 0 51 -2t33 -4l98 -197zM500.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123 +q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="thorn" unicode="&#xfe;" horiz-adv-x="516" +d="M56 589q26 5 45.5 6.5t36.5 1.5q16 0 36.5 -1.5t46.5 -6.5v-80h23q46 0 90 -8.5t79 -31t56.5 -62t21.5 -102.5q0 -57 -19.5 -96t-51.5 -63t-72.5 -34.5t-82.5 -10.5q-17 0 -29 1t-15 2v-103q-26 -5 -46.5 -6.5t-36.5 -1.5q-17 0 -36.5 1.5t-45.5 6.5v588zM221 230 +q5 -1 12.5 -1.5t12.5 -0.5q35 0 57.5 17.5t22.5 59.5q0 36 -22.5 55.5t-55.5 19.5h-11.5t-15.5 -1v-149z" /> + <glyph glyph-name="ydieresis" unicode="&#xff;" horiz-adv-x="564" +d="M384 517q8 2 30.5 4t48.5 2q33 0 59 -2t37 -4l-193 -335v-181q-26 -4 -47 -6t-38 -2t-38 2t-46 6v181l-192 335q11 2 38.5 4t60.5 2q26 0 51 -2t33 -4l98 -197zM319 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5 +t-34 1.5t-35 4.5q-6 30 -6 60zM94 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="Amacron" unicode="&#x100;" horiz-adv-x="642" +d="M178 2q-23 -4 -42 -6t-37 -2t-41.5 2.5t-52.5 7.5l224 714q26 3 48.5 5t45.5 2q19 0 41.5 -2t51.5 -5l221 -715q-57 -9 -100 -9q-20 0 -40 2t-43 6l-38 139q-28 -8 -53.5 -12t-50.5 -4q-23 0 -47 3.5t-50 10.5zM318 530l-67 -257q17 -5 32 -8t31 -3q17 0 33.5 2.5 +t34.5 7.5zM472 908q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="amacron" unicode="&#x101;" horiz-adv-x="523" +d="M30 169q0 49 21 81t54 51t73 26.5t78 7.5h61q-1 18 -10 30t-23 18.5t-31 9t-35 2.5q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 95.5 24t85.5 8q52 0 94 -12.5t71.5 -38.5t45.5 -66.5t16 -96.5v-293q-38 -11 -92 -22t-114 -11 +q-52 0 -95.5 9.5t-74.5 30.5t-48.5 55.5t-17.5 84.5zM266 113q9 0 26 2t25 4v110h-57q-35 0 -59 -15t-24 -42q0 -20 9 -31.5t22.5 -17.5t29 -8t28.5 -2zM417 713q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="Abreve" unicode="&#x102;" horiz-adv-x="642" +d="M178 2q-23 -4 -42 -6t-37 -2t-41.5 2.5t-52.5 7.5l224 714q26 3 48.5 5t45.5 2q19 0 41.5 -2t51.5 -5l221 -715q-57 -9 -100 -9q-20 0 -40 2t-43 6l-38 139q-28 -8 -53.5 -12t-50.5 -4q-23 0 -47 3.5t-50 10.5zM318 530l-67 -257q17 -5 32 -8t31 -3q17 0 33.5 2.5 +t34.5 7.5zM321 853q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="abreve" unicode="&#x103;" horiz-adv-x="523" +d="M30 169q0 49 21 81t54 51t73 26.5t78 7.5h61q-1 18 -10 30t-23 18.5t-31 9t-35 2.5q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 95.5 24t85.5 8q52 0 94 -12.5t71.5 -38.5t45.5 -66.5t16 -96.5v-293q-38 -11 -92 -22t-114 -11 +q-52 0 -95.5 9.5t-74.5 30.5t-48.5 55.5t-17.5 84.5zM266 113q9 0 26 2t25 4v110h-57q-35 0 -59 -15t-24 -42q0 -20 9 -31.5t22.5 -17.5t29 -8t28.5 -2zM255 658q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5 +t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="Aogonek" unicode="&#x104;" horiz-adv-x="642" +d="M178 2q-23 -4 -42 -6t-37 -2t-41.5 2.5t-52.5 7.5l224 714q26 3 48.5 5t45.5 2q19 0 41.5 -2t51.5 -5l221 -715q-57 -9 -100 -9q-20 0 -40 2t-43 6l-38 139q-28 -8 -53.5 -12t-50.5 -4q-23 0 -47 3.5t-50 10.5zM318 530l-67 -257q17 -5 32 -8t31 -3q17 0 33.5 2.5 +t34.5 7.5zM629 26q-51 -30 -85 -62.5t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50q0 48 34 92t97 72h113z" /> + <glyph glyph-name="aogonek" unicode="&#x105;" horiz-adv-x="523" +d="M30 169q0 49 21 81t54 51t73 26.5t78 7.5h61q-1 18 -10 30t-23 18.5t-31 9t-35 2.5q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 95.5 24t85.5 8q52 0 94 -12.5t71.5 -38.5t45.5 -66.5t16 -96.5v-293q-38 -11 -92 -22t-114 -11 +q-52 0 -95.5 9.5t-74.5 30.5t-48.5 55.5t-17.5 84.5zM266 113q9 0 26 2t25 4v110h-57q-35 0 -59 -15t-24 -42q0 -20 9 -31.5t22.5 -17.5t29 -8t28.5 -2zM471 26q-51 -30 -85 -62.5t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5 +q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50q0 48 34 92t97 72h113z" /> + <glyph glyph-name="Cacute" unicode="&#x106;" horiz-adv-x="609" +d="M228 358q0 -212 178 -212q32 0 60.5 6t69.5 20q33 -72 44 -148q-29 -11 -54 -18t-48 -10.5t-45.5 -5t-46.5 -1.5q-85 0 -149.5 27.5t-108 76.5t-65.5 117t-22 148t23 148.5t66.5 118.5t107.5 78t145 28q48 0 91 -7t96 -28q-2 -41 -15 -79.5t-27 -67.5q-20 7 -36.5 12 +t-31.5 8t-30 4.5t-32 1.5q-81 0 -125.5 -54.5t-44.5 -162.5zM587.006 904q-17.999 3 -42.498 4.5q-24.498 1.5 -50.4961 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="cacute" unicode="&#x107;" horiz-adv-x="471" +d="M31 258q0 60 17 110t50 85.5t81 55.5t110 20q21 0 40 -1t37.5 -4t38 -9t43.5 -15q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25.5 5.5t-23.5 2.5t-24.5 0.5q-48 0 -79.5 -28.5t-31.5 -98.5q0 -37 9.5 -61.5t25 -38.5t36 -20t43.5 -6q29 0 50.5 5t50.5 16 +q17 -27 27 -60.5t10 -76.5q-46 -18 -84 -23t-76 -5q-64 0 -113 19t-82.5 54.5t-50.5 85t-17 111.5zM526.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Ccircumflex" unicode="&#x108;" horiz-adv-x="609" +d="M354 909q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1zM228 358q0 -212 178 -212q32 0 60.5 6t69.5 20q33 -72 44 -148q-29 -11 -54 -18t-48 -10.5 +t-45.5 -5t-46.5 -1.5q-85 0 -149.5 27.5t-108 76.5t-65.5 117t-22 148t23 148.5t66.5 118.5t107.5 78t145 28q48 0 91 -7t96 -28q-2 -41 -15 -79.5t-27 -67.5q-20 7 -36.5 12t-31.5 8t-30 4.5t-32 1.5q-81 0 -125.5 -54.5t-44.5 -162.5z" /> + <glyph glyph-name="ccircumflex" unicode="&#x109;" horiz-adv-x="471" +d="M31 258q0 60 17 110t50 85.5t81 55.5t110 20q21 0 40 -1t37.5 -4t38 -9t43.5 -15q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25.5 5.5t-23.5 2.5t-24.5 0.5q-48 0 -79.5 -28.5t-31.5 -98.5q0 -37 9.5 -61.5t25 -38.5t36 -20t43.5 -6q29 0 50.5 5t50.5 16 +q17 -27 27 -60.5t10 -76.5q-46 -18 -84 -23t-76 -5q-64 0 -113 19t-82.5 54.5t-50.5 85t-17 111.5zM275 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z +" /> + <glyph glyph-name="Cdotaccent" unicode="&#x10a;" horiz-adv-x="609" +d="M291 845q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5zM228 358q0 -212 178 -212q32 0 60.5 6t69.5 20q33 -72 44 -148q-29 -11 -54 -18 +t-48 -10.5t-45.5 -5t-46.5 -1.5q-85 0 -149.5 27.5t-108 76.5t-65.5 117t-22 148t23 148.5t66.5 118.5t107.5 78t145 28q48 0 91 -7t96 -28q-2 -41 -15 -79.5t-27 -67.5q-20 7 -36.5 12t-31.5 8t-30 4.5t-32 1.5q-81 0 -125.5 -54.5t-44.5 -162.5z" /> + <glyph glyph-name="cdotaccent" unicode="&#x10b;" horiz-adv-x="471" +d="M31 258q0 60 17 110t50 85.5t81 55.5t110 20q21 0 40 -1t37.5 -4t38 -9t43.5 -15q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25.5 5.5t-23.5 2.5t-24.5 0.5q-48 0 -79.5 -28.5t-31.5 -98.5q0 -37 9.5 -61.5t25 -38.5t36 -20t43.5 -6q29 0 50.5 5t50.5 16 +q17 -27 27 -60.5t10 -76.5q-46 -18 -84 -23t-76 -5q-64 0 -113 19t-82.5 54.5t-50.5 85t-17 111.5zM207 650q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5 +q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="Ccaron" unicode="&#x10c;" horiz-adv-x="609" +d="M228 358q0 -212 178 -212q32 0 60.5 6t69.5 20q33 -72 44 -148q-29 -11 -54 -18t-48 -10.5t-45.5 -5t-46.5 -1.5q-85 0 -149.5 27.5t-108 76.5t-65.5 117t-22 148t23 148.5t66.5 118.5t107.5 78t145 28q48 0 91 -7t96 -28q-2 -41 -15 -79.5t-27 -67.5q-20 7 -36.5 12 +t-31.5 8t-30 4.5t-32 1.5q-81 0 -125.5 -54.5t-44.5 -162.5zM362 774q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="ccaron" unicode="&#x10d;" horiz-adv-x="471" +d="M31 258q0 60 17 110t50 85.5t81 55.5t110 20q21 0 40 -1t37.5 -4t38 -9t43.5 -15q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25.5 5.5t-23.5 2.5t-24.5 0.5q-48 0 -79.5 -28.5t-31.5 -98.5q0 -37 9.5 -61.5t25 -38.5t36 -20t43.5 -6q29 0 50.5 5t50.5 16 +q17 -27 27 -60.5t10 -76.5q-46 -18 -84 -23t-76 -5q-64 0 -113 19t-82.5 54.5t-50.5 85t-17 111.5zM300 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="Dcaron" unicode="&#x10e;" horiz-adv-x="685" +d="M259 731q189 0 287 -94.5t98 -281.5q0 -190 -100 -278.5t-296 -88.5q-50 0 -96.5 4.5t-91.5 10.5v714q15 2 38 4.5t50 4.5t55.5 3.5t55.5 1.5zM237 145q7 -1 16 -1h19q39 0 73.5 9.5t59.5 33.5t39.5 65t14.5 105q0 63 -15 105t-39.5 66.5t-57.5 35t-69 10.5 +q-20 0 -29 -0.5t-12 -0.5v-428zM320 774q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="dcaron" unicode="&#x10f;" horiz-adv-x="568" +d="M233 529q81 0 138.5 -19t94.5 -53.5t54 -83.5t17 -109q0 -63 -17.5 -114t-55 -87t-97 -55.5t-143.5 -19.5q-49 0 -87.5 3.5t-80.5 9.5v514q42 5 89 9.5t88 4.5zM225 131q4 0 10.5 -1t19.5 -1q56 0 83.5 31.5t27.5 103.5q0 64 -27 93.5t-77 29.5q-12 0 -22 -1t-15 -2v-253 +zM288 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="Dcroat" unicode="&#x110;" horiz-adv-x="685" +d="M-2 363q0 25 9 55h53v299q15 2 38 4.5t50 4.5t55.5 3.5t55.5 1.5q189 0 287 -94.5t98 -281.5q0 -190 -100 -278.5t-296 -88.5q-50 0 -96.5 4.5t-91.5 10.5v306h-53q-9 30 -9 54zM237 418h93q5 -15 6.5 -28.5t1.5 -25.5t-1.5 -26t-6.5 -29h-93v-164q7 -1 16 -1h19 +q39 0 73.5 9.5t59.5 33.5t39.5 65t14.5 105q0 63 -15 105t-39.5 66.5t-57.5 35t-69 10.5q-20 0 -29 -0.5t-12 -0.5v-155z" /> + <glyph glyph-name="dcroat" unicode="&#x111;" horiz-adv-x="568" +d="M233 529q81 0 138.5 -19t94.5 -53.5t54 -83.5t17 -109q0 -63 -17.5 -114t-55 -87t-97 -55.5t-143.5 -19.5q-49 0 -87.5 3.5t-80.5 9.5v218h-46q-5 12 -6 25t-1 22q0 8 1 21t6 25h46v203q42 5 89 9.5t88 4.5zM225 312h61q5 -12 6 -25t1 -21q0 -9 -1 -22t-6 -25h-61v-88 +q4 0 10.5 -1t19.5 -1q56 0 83.5 31.5t27.5 103.5q0 64 -27 93.5t-77 29.5q-12 0 -22 -1t-15 -2v-72z" /> + <glyph glyph-name="Emacron" unicode="&#x112;" horiz-adv-x="527" +d="M439 375q0 -35 -9 -78h-193v-142h251q9 -42 9 -76q0 -37 -9 -79h-428v719h422q4 -22 6 -41t2 -36q0 -33 -8 -79h-245v-110h193q9 -44 9 -78zM421 908q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="emacron" unicode="&#x113;" horiz-adv-x="538" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-32 0 -55 -20t-27 -62h160q-2 35 -21.5 58.5t-56.5 23.5zM434 713q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="Ebreve" unicode="&#x114;" horiz-adv-x="527" +d="M439 375q0 -35 -9 -78h-193v-142h251q9 -42 9 -76q0 -37 -9 -79h-428v719h422q4 -22 6 -41t2 -36q0 -33 -8 -79h-245v-110h193q9 -44 9 -78zM273 853q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5 +t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="ebreve" unicode="&#x115;" horiz-adv-x="538" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-32 0 -55 -20t-27 -62h160q-2 35 -21.5 58.5t-56.5 23.5zM283 658q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36 +t42 -13z" /> + <glyph glyph-name="Edotaccent" unicode="&#x116;" horiz-adv-x="527" +d="M439 375q0 -35 -9 -78h-193v-142h251q9 -42 9 -76q0 -37 -9 -79h-428v719h422q4 -22 6 -41t2 -36q0 -33 -8 -79h-245v-110h193q9 -44 9 -78zM195 845q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32 +q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="edotaccent" unicode="&#x117;" horiz-adv-x="538" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-32 0 -55 -20t-27 -62h160q-2 35 -21.5 58.5t-56.5 23.5zM210 650q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="Eogonek" unicode="&#x118;" horiz-adv-x="527" +d="M439 375q0 -35 -9 -78h-193v-142h251q9 -42 9 -76q0 -37 -9 -79h-428v719h422q4 -22 6 -41t2 -36q0 -33 -8 -79h-245v-110h193q9 -44 9 -78zM491 26q-51 -30 -85 -62.5t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5 +t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50q0 48 34 92t97 72h113z" /> + <glyph glyph-name="eogonek" unicode="&#x119;" horiz-adv-x="538" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-32 0 -55 -20t-27 -62h160q-2 35 -21.5 58.5t-56.5 23.5zM483 26q-51 -30 -85 -62.5t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50q0 48 34 92t97 72h113z +" /> + <glyph glyph-name="Ecaron" unicode="&#x11a;" horiz-adv-x="527" +d="M439 375q0 -35 -9 -78h-193v-142h251q9 -42 9 -76q0 -37 -9 -79h-428v719h422q4 -22 6 -41t2 -36q0 -33 -8 -79h-245v-110h193q9 -44 9 -78zM278 774q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5 +l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="ecaron" unicode="&#x11b;" horiz-adv-x="538" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-32 0 -55 -20t-27 -62h160q-2 35 -21.5 58.5t-56.5 23.5zM310 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="Gcircumflex" unicode="&#x11c;" horiz-adv-x="659" +d="M434 389q27 4 48 6t39 2q17 0 41 -2t47 -6v-364q-59 -22 -116.5 -29t-98.5 -7q-88 0 -154 27.5t-110.5 76.5t-66.5 117t-22 148t23 148.5t66.5 118.5t107.5 78t145 28q48 0 91.5 -7t95.5 -29q-2 -41 -15 -80t-27 -66q-20 7 -36.5 12t-31.5 8t-30 4.5t-32 1.5 +q-81 0 -125 -54.5t-44 -162.5q0 -107 43 -159.5t128 -52.5q19 0 34 3v240zM369 909q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="gcircumflex" unicode="&#x11d;" horiz-adv-x="536" +d="M297 -12q-72 0 -122.5 21.5t-82.5 58.5t-46.5 87t-14.5 107q0 55 17.5 104t52 85t85.5 57t118 21q35 0 77 -8t92 -28q-1 -17 -4 -32t-7.5 -30.5t-11 -33t-15.5 -39.5q-34 14 -63 20.5t-50 6.5q-33 0 -56 -10t-37 -27t-20.5 -39.5t-6.5 -46.5q0 -67 29 -98.5t85 -31.5h18 +v147q25 5 44.5 7t37.5 2q35 0 83 -9v-254q-29 -11 -81 -24t-121 -13zM286 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="Gbreve" unicode="&#x11e;" horiz-adv-x="659" +d="M434 389q27 4 48 6t39 2q17 0 41 -2t47 -6v-364q-59 -22 -116.5 -29t-98.5 -7q-88 0 -154 27.5t-110.5 76.5t-66.5 117t-22 148t23 148.5t66.5 118.5t107.5 78t145 28q48 0 91.5 -7t95.5 -29q-2 -41 -15 -80t-27 -66q-20 7 -36.5 12t-31.5 8t-30 4.5t-32 1.5 +q-81 0 -125 -54.5t-44 -162.5q0 -107 43 -159.5t128 -52.5q19 0 34 3v240zM369 853q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5 +q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="gbreve" unicode="&#x11f;" horiz-adv-x="536" +d="M297 -12q-72 0 -122.5 21.5t-82.5 58.5t-46.5 87t-14.5 107q0 55 17.5 104t52 85t85.5 57t118 21q35 0 77 -8t92 -28q-1 -17 -4 -32t-7.5 -30.5t-11 -33t-15.5 -39.5q-34 14 -63 20.5t-50 6.5q-33 0 -56 -10t-37 -27t-20.5 -39.5t-6.5 -46.5q0 -67 29 -98.5t85 -31.5h18 +v147q25 5 44.5 7t37.5 2q35 0 83 -9v-254q-29 -11 -81 -24t-121 -13zM284 658q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5 +q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="Gdotaccent" unicode="&#x120;" horiz-adv-x="659" +d="M434 389q27 4 48 6t39 2q17 0 41 -2t47 -6v-364q-59 -22 -116.5 -29t-98.5 -7q-88 0 -154 27.5t-110.5 76.5t-66.5 117t-22 148t23 148.5t66.5 118.5t107.5 78t145 28q48 0 91.5 -7t95.5 -29q-2 -41 -15 -80t-27 -66q-20 7 -36.5 12t-31.5 8t-30 4.5t-32 1.5 +q-81 0 -125 -54.5t-44 -162.5q0 -107 43 -159.5t128 -52.5q19 0 34 3v240zM291 845q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="gdotaccent" unicode="&#x121;" horiz-adv-x="536" +d="M297 -12q-72 0 -122.5 21.5t-82.5 58.5t-46.5 87t-14.5 107q0 55 17.5 104t52 85t85.5 57t118 21q35 0 77 -8t92 -28q-1 -17 -4 -32t-7.5 -30.5t-11 -33t-15.5 -39.5q-34 14 -63 20.5t-50 6.5q-33 0 -56 -10t-37 -27t-20.5 -39.5t-6.5 -46.5q0 -67 29 -98.5t85 -31.5h18 +v147q25 5 44.5 7t37.5 2q35 0 83 -9v-254q-29 -11 -81 -24t-121 -13zM226 650q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="Gcommaaccent" unicode="&#x122;" horiz-adv-x="659" +d="M434 389q27 4 48 6t39 2q17 0 41 -2t47 -6v-364q-59 -22 -116.5 -29t-98.5 -7q-88 0 -154 27.5t-110.5 76.5t-66.5 117t-22 148t23 148.5t66.5 118.5t107.5 78t145 28q48 0 91.5 -7t95.5 -29q-2 -41 -15 -80t-27 -66q-20 7 -36.5 12t-31.5 8t-30 4.5t-32 1.5 +q-81 0 -125 -54.5t-44 -162.5q0 -107 43 -159.5t128 -52.5q19 0 34 3v240zM305 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="gcommaaccent" unicode="&#x123;" horiz-adv-x="536" +d="M297 -12q-72 0 -122.5 21.5t-82.5 58.5t-46.5 87t-14.5 107q0 55 17.5 104t52 85t85.5 57t118 21q35 0 77 -8t92 -28q-1 -17 -4 -32t-7.5 -30.5t-11 -33t-15.5 -39.5q-34 14 -63 20.5t-50 6.5q-33 0 -56 -10t-37 -27t-20.5 -39.5t-6.5 -46.5q0 -67 29 -98.5t85 -31.5h18 +v147q25 5 44.5 7t37.5 2q35 0 83 -9v-254q-29 -11 -81 -24t-121 -13zM375 587q-18 -4 -37 -5.5t-38 -1.5q-20 0 -39.5 1.5t-39.5 5.5l73 148q32 7 63 7q15 0 31 -1.5t36 -5.5z" /> + <glyph glyph-name="Hcircumflex" unicode="&#x124;" horiz-adv-x="651" +d="M503 -6q-37 0 -89 9v292h-177v-292q-53 -9 -88 -9q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-265h177v265q27 4 48.5 6t39.5 2t40.5 -2t48.5 -6v-714q-53 -9 -88 -9zM325 909q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48 +l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="hcircumflex" unicode="&#x125;" horiz-adv-x="598" +d="M373 191h-148v-190q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-176h148v176q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516q-26 -4 -47 -6t-38 -2t-38 2t-46 6v190zM299 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5 +q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="Hbar" unicode="&#x126;" horiz-adv-x="651" +d="M0 568q0 25 9 52h51v97q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-97h177v97q27 4 48.5 6t39.5 2t40.5 -2t48.5 -6v-97h52q5 -14 6.5 -26.5t1.5 -24.5t-1.5 -25t-6.5 -27h-52v-514q-53 -9 -88 -9q-37 0 -89 9v282h-177v-282q-53 -9 -88 -9q-37 0 -89 9v514h-51q-9 27 -9 51z +M414 432v85h-177v-85h177z" /> + <glyph glyph-name="hbar" unicode="&#x127;" horiz-adv-x="598" +d="M542 362v-361q-26 -4 -47 -6t-38 -2t-38 2t-46 6v190h-148v-190q-26 -4 -47 -6t-38 -2t-38 2t-46 6v361h-43q-5 12 -6 23.5t-1 20.5q0 8 1 19.5t6 23.5h43v68q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-68h148v68q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-68h43q5 -12 6 -23.5 +t1 -19.5q0 -9 -1 -20.5t-6 -23.5h-43zM373 311v51h-148v-51h148z" /> + <glyph glyph-name="Itilde" unicode="&#x128;" horiz-adv-x="297" +d="M149 -6q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9zM-42 870q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6 +t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47z" /> + <glyph glyph-name="itilde" unicode="&#x129;" horiz-adv-x="285" +d="M-48 675q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47 +zM227 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516z" /> + <glyph glyph-name="Imacron" unicode="&#x12a;" horiz-adv-x="297" +d="M149 -6q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9zM300 908q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="imacron" unicode="&#x12b;" horiz-adv-x="285" +d="M294 713q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302zM227 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516z" /> + <glyph glyph-name="Ibreve" unicode="&#x12c;" horiz-adv-x="297" +d="M149 -6q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9zM149 853q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2 +t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="ibreve" unicode="&#x12d;" horiz-adv-x="285" +d="M143 658q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13zM227 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516 +q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516z" /> + <glyph glyph-name="Iogonek" unicode="&#x12e;" horiz-adv-x="297" +d="M149 -6q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9zM237 26q-51 -30 -85 -62.5t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50 +q0 48 34 92t97 72h113z" /> + <glyph glyph-name="iogonek" unicode="&#x12f;" horiz-adv-x="281" +d="M225 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516zM225 26q-51 -30 -85 -62.5t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32 +t-11.5 50q0 48 34 92t97 72h113z" /> + <glyph glyph-name="Idotaccent" unicode="&#x130;" horiz-adv-x="297" +d="M149 -6q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9zM71 845q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5 +z" /> + <glyph glyph-name="IJ" unicode="&#x132;" horiz-adv-x="708" +d="M149 -6q-37 0 -89 9v714q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9zM332 152q9 -2 27 -5t38 -3q12 0 26 1.5t25.5 9t19.5 22.5t8 42v344h-109q-9 42 -9 79q0 35 9 77h286v-520q0 -57 -18 -97.5t-49 -65.5t-72.5 -36.5t-89.5 -11.5q-29 0 -58 4.5t-52 11.5 +q-1 8 -1.5 16t-0.5 17q0 58 20 115z" /> + <glyph glyph-name="ij" unicode="&#x133;" horiz-adv-x="658" +d="M225 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516zM341 376q-5 20 -6.5 37.5t-1.5 33.5t1.5 33t6.5 37h269v-318q0 -57 -16.5 -97.5t-46 -65.5t-69 -36.5t-85.5 -11.5q-15 0 -42.5 3.5t-57.5 13.5q-1 8 -1.5 15.5t-0.5 15.5 +q0 26 5 52t14 54q4 -1 12 -2.5t17.5 -2.5t18 -2t13.5 -1q11 0 23.5 1.5t23 9t17 22.5t6.5 42v167h-100z" /> + <glyph glyph-name="Jcircumflex" unicode="&#x134;" horiz-adv-x="411" +d="M35 152q9 -2 27 -5t38 -3q12 0 26 1.5t25.5 9t19.5 22.5t8 42v344h-109q-9 42 -9 79q0 35 9 77h286v-520q0 -57 -18 -97.5t-49 -65.5t-72.5 -36.5t-89.5 -11.5q-29 0 -58 4.5t-52 11.5q-1 8 -1.5 16t-0.5 17q0 58 20 115zM208 909q13 0 34 -1t37 -4l127 -123 +q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="jcircumflex" unicode="&#x135;" horiz-adv-x="377" +d="M60 376q-5 20 -6.5 37.5t-1.5 33.5t1.5 33t6.5 37h269v-318q0 -57 -16.5 -97.5t-46 -65.5t-69 -36.5t-85.5 -11.5q-15 0 -42.5 3.5t-57.5 13.5q-1 8 -1.5 15.5t-0.5 15.5q0 26 5 52t14 54q4 -1 12 -2.5t17.5 -2.5t18 -2t13.5 -1q11 0 23.5 1.5t23 9t17 22.5t6.5 42v167 +h-100zM201 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="Kcommaaccent" unicode="&#x136;" horiz-adv-x="633" +d="M446 372l187 -369q-17 -4 -45.5 -6.5t-51.5 -2.5q-29 0 -56 2.5t-46 6.5l-183 360l169 354q30 5 52 6.5t45 1.5q11 0 25 -0.5t27.5 -2t26 -3t21.5 -2.5zM60 717q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-714q-53 -9 -88 -9q-37 0 -89 9v714zM270 -68q34 7 73 7 +q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="kcommaaccent" unicode="&#x137;" horiz-adv-x="563" +d="M56 517q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v515zM359 517q18 4 44 6t46 2q26 0 52.5 -2t42.5 -6l-124 -240l138 -275q-18 -4 -45 -6t-47 -2q-26 0 -51.5 2t-40.5 6l-133 268zM227 -68q34 7 73 7q18 0 37 -1.5 +t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="kgreenlandic" unicode="&#x138;" horiz-adv-x="563" +d="M56 517q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v515zM359 517q18 4 44 6t46 2q26 0 52.5 -2t42.5 -6l-124 -240l138 -275q-18 -4 -45 -6t-47 -2q-26 0 -51.5 2t-40.5 6l-133 268z" /> + <glyph glyph-name="Lacute" unicode="&#x139;" horiz-adv-x="491" +d="M60 717q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-560h231q5 -25 6.5 -43.5t1.5 -33.5q0 -17 -1.5 -35.5t-6.5 -44.5h-408v717zM386.006 904q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1 +q42.9971 0 72.9951 6z" /> + <glyph glyph-name="lacute" unicode="&#x13a;" horiz-adv-x="434" +d="M227 141h189q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-358l1 517q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7zM386.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6 +z" /> + <glyph glyph-name="Lcommaaccent" unicode="&#x13b;" horiz-adv-x="491" +d="M60 717q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-560h231q5 -25 6.5 -43.5t1.5 -33.5q0 -17 -1.5 -35.5t-6.5 -44.5h-408v717zM194 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="lcommaaccent" unicode="&#x13c;" horiz-adv-x="434" +d="M227 141h189q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-358l1 517q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7zM167 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="Lcaron" unicode="&#x13d;" horiz-adv-x="491" +d="M60 717q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-560h231q5 -25 6.5 -43.5t1.5 -33.5q0 -17 -1.5 -35.5t-6.5 -44.5h-408v717zM304 719q27 6 60 6q15 0 32.5 -1.5t33.5 -4.5l-23 -204q-23 -6 -48 -6q-13 0 -27.5 1.5t-27.5 4.5v204z" /> + <glyph glyph-name="lcaron" unicode="&#x13e;" horiz-adv-x="434" +d="M227 141h189q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-358l1 517q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7zM294 521q27 6 60 6q15 0 32.5 -1.5t33.5 -4.5l-23 -204q-23 -6 -48 -6q-13 0 -27.5 1.5t-27.5 4.5v204z" /> + <glyph glyph-name="Ldot" unicode="&#x13f;" horiz-adv-x="491" +d="M60 717q27 4 49 6t39 2q18 0 40.5 -2t48.5 -6v-560h231q5 -25 6.5 -43.5t1.5 -33.5q0 -17 -1.5 -35.5t-6.5 -44.5h-408v717zM314 417q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5 +t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="ldot" unicode="&#x140;" horiz-adv-x="437" +d="M225 141h189q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-358l1 517q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7zM281 323q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5 +q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="Lslash" unicode="&#x141;" horiz-adv-x="491" +d="M237 157h231q5 -25 6.5 -43.5t1.5 -33.5q0 -17 -1.5 -35.5t-6.5 -44.5h-408v248l-52 -36q-6 28 -6 56t6 57l52 36v358h177v-235l104 72q6 -29 6 -56q0 -29 -6 -57l-104 -72v-214z" /> + <glyph glyph-name="lslash" unicode="&#x142;" horiz-adv-x="432" +d="M56 270l1 247q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7l-1 -127l63 44q3 -14 4.5 -25.5t1.5 -25.5q0 -15 -1.5 -26.5t-4.5 -25.5l-63 -45v-145h189q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-358v167l-48 -34q-3 14 -4.5 25t-1.5 26t1.5 26.5t4.5 25.5z" /> + <glyph glyph-name="Nacute" unicode="&#x143;" horiz-adv-x="659" +d="M60 717q22 4 40 6t35 2q18 0 37.5 -2.5t33.5 -5.5l232 -392v392q26 4 47 6t38 2t36 -2t40 -6l-1 -714q-10 -3 -29 -6t-41 -3q-25 0 -45 3.5t-29 5.5l-233 390v-390q-44 -9 -80 -9t-81 9v714zM557.006 904q-17.999 3 -42.498 4.5q-24.498 1.5 -50.4961 1.5 +q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="nacute" unicode="&#x144;" horiz-adv-x="565" +d="M266 527q44 0 88 -7.5t79.5 -31.5t58 -69t22.5 -119v-299q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v281q0 53 -20 76t-61 23q-11 0 -23.5 -2t-15.5 -4v-374q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v491q35 12 85 23.5t125 11.5zM504.006 709 +q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Ncommaaccent" unicode="&#x145;" horiz-adv-x="659" +d="M60 717q22 4 40 6t35 2q18 0 37.5 -2.5t33.5 -5.5l232 -392v392q26 4 47 6t38 2t36 -2t40 -6l-1 -714q-10 -3 -29 -6t-41 -3q-25 0 -45 3.5t-29 5.5l-233 390v-390q-44 -9 -80 -9t-81 9v714zM278 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="ncommaaccent" unicode="&#x146;" horiz-adv-x="565" +d="M266 527q44 0 88 -7.5t79.5 -31.5t58 -69t22.5 -119v-299q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v281q0 53 -20 76t-61 23q-11 0 -23.5 -2t-15.5 -4v-374q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v491q35 12 85 23.5t125 11.5zM229 -68q34 7 73 7 +q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="Ncaron" unicode="&#x147;" horiz-adv-x="659" +d="M60 717q22 4 40 6t35 2q18 0 37.5 -2.5t33.5 -5.5l232 -392v392q26 4 47 6t38 2t36 -2t40 -6l-1 -714q-10 -3 -29 -6t-41 -3q-25 0 -45 3.5t-29 5.5l-233 390v-390q-44 -9 -80 -9t-81 9v714zM332 774q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6 +l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="ncaron" unicode="&#x148;" horiz-adv-x="565" +d="M266 527q44 0 88 -7.5t79.5 -31.5t58 -69t22.5 -119v-299q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v281q0 53 -20 76t-61 23q-11 0 -23.5 -2t-15.5 -4v-374q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v491q35 12 85 23.5t125 11.5zM306 579q-13 0 -34 1 +t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="napostrophe" unicode="&#x149;" horiz-adv-x="565" +d="M266 527q44 0 88 -7.5t79.5 -31.5t58 -69t22.5 -119v-299q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v281q0 53 -20 76t-61 23q-11 0 -23.5 -2t-15.5 -4v-374q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v491q35 12 85 23.5t125 11.5zM-39 719q14 3 33.5 4.5 +t35.5 1.5q42 0 80 -6l-63 -158q-20 -3 -35.5 -4t-35.5 -1q-15 0 -28.5 1t-33.5 4z" /> + <glyph glyph-name="Eng" unicode="&#x14a;" horiz-adv-x="659" +d="M359 -74q12 0 26 1.5t25.5 9t19.5 22.5t8 42v28l-217 354v-380q-44 -9 -80 -9t-81 9v714q22 4 40 6t35 2q18 0 37.5 -2.5t33.5 -5.5l232 -383v383q26 4 47 6t38 2t36 -2t40 -6v-732q0 -57 -15.5 -97.5t-43.5 -65.5t-67 -36.5t-87 -11.5q-29 0 -58 4.5t-52 11.5 +q-1 8 -1.5 16.5t-0.5 16.5q0 54 20 111q9 -2 27 -5t38 -3z" /> + <glyph glyph-name="eng" unicode="&#x14b;" horiz-adv-x="565" +d="M347 282q0 53 -20 76t-61 23q-11 0 -23.5 -2t-15.5 -4v-374q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v491q35 12 85 23.5t125 11.5q44 0 88 -7.5t79.5 -31.5t58 -69t22.5 -119v-141q0 -35 -5.5 -65.5t-21.5 -53.5t-45 -36.5t-75 -13.5q-15 0 -39 2t-54 12 +q-4 26 0.5 61.5t16.5 65.5q5 -2 11 -3.5t16 -1.5q15 0 21 8t6 25v123z" /> + <glyph glyph-name="Omacron" unicode="&#x14c;" horiz-adv-x="711" +d="M41 357q0 80 18.5 148.5t57 118.5t98 78.5t141.5 28.5t141 -28.5t97.5 -78.5t57 -118.5t18.5 -148.5t-18.5 -147.5t-57 -117t-97.5 -77t-141 -27.5t-141.5 27.5t-98 77t-57 117t-18.5 147.5zM484 357q0 218 -127 218q-130 0 -130 -218q0 -109 31.5 -162.5t97.5 -53.5 +q128 0 128 216zM506 908q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="omacron" unicode="&#x14d;" horiz-adv-x="577" +d="M31 256q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q64 0 112 -19.5t80.5 -55.5t49 -86.5t16.5 -111.5q0 -60 -16.5 -109.5t-49 -85t-80.5 -54.5t-112 -19q-63 0 -111 19t-80.5 54.5t-49 85t-16.5 109.5zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97 +t65 -34t65.5 34t21.5 97zM439 713q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="Obreve" unicode="&#x14e;" horiz-adv-x="711" +d="M41 357q0 80 18.5 148.5t57 118.5t98 78.5t141.5 28.5t141 -28.5t97.5 -78.5t57 -118.5t18.5 -148.5t-18.5 -147.5t-57 -117t-97.5 -77t-141 -27.5t-141.5 27.5t-98 77t-57 117t-18.5 147.5zM484 357q0 218 -127 218q-130 0 -130 -218q0 -109 31.5 -162.5t97.5 -53.5 +q128 0 128 216zM355 853q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="obreve" unicode="&#x14f;" horiz-adv-x="577" +d="M31 256q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q64 0 112 -19.5t80.5 -55.5t49 -86.5t16.5 -111.5q0 -60 -16.5 -109.5t-49 -85t-80.5 -54.5t-112 -19q-63 0 -111 19t-80.5 54.5t-49 85t-16.5 109.5zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97 +t65 -34t65.5 34t21.5 97zM288 658q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="Ohungarumlaut" unicode="&#x150;" horiz-adv-x="711" +d="M41 357q0 80 18.5 148.5t57 118.5t98 78.5t141.5 28.5t141 -28.5t97.5 -78.5t57 -118.5t18.5 -148.5t-18.5 -147.5t-57 -117t-97.5 -77t-141 -27.5t-141.5 27.5t-98 77t-57 117t-18.5 147.5zM484 357q0 218 -127 218q-130 0 -130 -218q0 -109 31.5 -162.5t97.5 -53.5 +q128 0 128 216zM307 781q-10 -2 -29 -4t-40 -2q-36 0 -69 6l117 123q22 4 42 5t39 1q41 0 77 -6zM523 781q-11 -2 -29.5 -4t-40.5 -2q-37 0 -68 6l116 123q23 4 43 5t39 1q39 0 77 -6z" /> + <glyph glyph-name="ohungarumlaut" unicode="&#x151;" horiz-adv-x="577" +d="M31 256q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q64 0 112 -19.5t80.5 -55.5t49 -86.5t16.5 -111.5q0 -60 -16.5 -109.5t-49 -85t-80.5 -54.5t-112 -19q-63 0 -111 19t-80.5 54.5t-49 85t-16.5 109.5zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97 +t65 -34t65.5 34t21.5 97zM250 586q-10 -2 -29 -4t-40 -2q-36 0 -69 6l117 123q22 4 42 5t39 1q41 0 77 -6zM466 586q-11 -2 -29.5 -4t-40.5 -2q-37 0 -68 6l116 123q23 4 43 5t39 1q39 0 77 -6z" /> + <glyph glyph-name="OE" unicode="&#x152;" horiz-adv-x="911" +d="M873 155q4 -21 6 -40t2 -36t-2 -37.5t-6 -41.5h-390q-26 -6 -60 -9t-57 -3q-81 0 -142 28t-101.5 77.5t-61 117t-20.5 147.5t20.5 148t61 118t101.5 78.5t142 28.5q26 0 56.5 -2.5t56.5 -9.5h387q9 -42 9 -77q0 -17 -2 -37t-7 -41h-247v-110h196q5 -23 6.5 -42t1.5 -36 +t-1.5 -36.5t-6.5 -42.5h-196v-142h254zM444 571q-14 4 -32.5 6t-44.5 2q-66 0 -103 -56.5t-37 -164.5q0 -109 36.5 -165t102.5 -56q27 0 45 2t33 7v425z" /> + <glyph glyph-name="oe" unicode="&#x153;" horiz-adv-x="876" +d="M539 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-61 0 -110 23t-74 56q-27 -35 -71 -57t-104 -22t-106.5 19t-78.5 54.5t-48.5 85t-16.5 109.5q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q55 0 100.5 -23t70.5 -58 +q10 15 25.5 29.5t36.5 26t48 18.5t61 7q102 0 161 -63.5t59 -176.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304zM619 402q-32 0 -54.5 -20t-27.5 -62h160q-2 36 -21.5 59t-56.5 23zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97t65 -34t65.5 34t21.5 97z" /> + <glyph glyph-name="Racute" unicode="&#x154;" horiz-adv-x="616" +d="M60 717q49 5 90.5 9.5t87.5 4.5q55 0 110 -10.5t98 -36.5t70 -71t27 -114q0 -37 -8.5 -66.5t-22 -52.5t-30 -40t-32.5 -29l156 -308q-24 -4 -52.5 -6t-51.5 -2q-20 0 -46.5 2t-46.5 6l-142 327l9 5q12 6 26.5 20t27 33.5t21 43.5t8.5 50q0 50 -28 73t-69 23q-10 0 -17 -1 +t-9 -2v-572q-53 -9 -87 -9q-37 0 -89 9v714zM506.006 904q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="racute" unicode="&#x155;" horiz-adv-x="549" +d="M56 515q47 6 97.5 10t95.5 4q121 0 181.5 -45.5t60.5 -127.5q0 -31 -7 -54t-17 -39.5t-21 -26.5t-18 -16l114 -218q-20 -4 -44.5 -6t-47.5 -2q-28 0 -54 2t-43 6l-111 236l14 8q35 20 48 42.5t13 48.5t-15.5 42.5t-49.5 16.5q-19 0 -29 -2v-393q-26 -5 -47 -6.5t-37 -1.5 +q-17 0 -37 1.5t-46 6.5v514zM483.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Rcommaaccent" unicode="&#x156;" horiz-adv-x="616" +d="M60 717q49 5 90.5 9.5t87.5 4.5q55 0 110 -10.5t98 -36.5t70 -71t27 -114q0 -37 -8.5 -66.5t-22 -52.5t-30 -40t-32.5 -29l156 -308q-24 -4 -52.5 -6t-51.5 -2q-20 0 -46.5 2t-46.5 6l-142 327l9 5q12 6 26.5 20t27 33.5t21 43.5t8.5 50q0 50 -28 73t-69 23q-10 0 -17 -1 +t-9 -2v-572q-53 -9 -87 -9q-37 0 -89 9v714zM257 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="rcommaaccent" unicode="&#x157;" horiz-adv-x="549" +d="M56 515q47 6 97.5 10t95.5 4q121 0 181.5 -45.5t60.5 -127.5q0 -31 -7 -54t-17 -39.5t-21 -26.5t-18 -16l114 -218q-20 -4 -44.5 -6t-47.5 -2q-28 0 -54 2t-43 6l-111 236l14 8q35 20 48 42.5t13 48.5t-15.5 42.5t-49.5 16.5q-19 0 -29 -2v-393q-26 -5 -47 -6.5t-37 -1.5 +q-17 0 -37 1.5t-46 6.5v514zM222 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="Rcaron" unicode="&#x158;" horiz-adv-x="616" +d="M60 717q49 5 90.5 9.5t87.5 4.5q55 0 110 -10.5t98 -36.5t70 -71t27 -114q0 -37 -8.5 -66.5t-22 -52.5t-30 -40t-32.5 -29l156 -308q-24 -4 -52.5 -6t-51.5 -2q-20 0 -46.5 2t-46.5 6l-142 327l9 5q12 6 26.5 20t27 33.5t21 43.5t8.5 50q0 50 -28 73t-69 23q-10 0 -17 -1 +t-9 -2v-572q-53 -9 -87 -9q-37 0 -89 9v714zM297 774q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="rcaron" unicode="&#x159;" horiz-adv-x="549" +d="M56 515q47 6 97.5 10t95.5 4q121 0 181.5 -45.5t60.5 -127.5q0 -31 -7 -54t-17 -39.5t-21 -26.5t-18 -16l114 -218q-20 -4 -44.5 -6t-47.5 -2q-28 0 -54 2t-43 6l-111 236l14 8q35 20 48 42.5t13 48.5t-15.5 42.5t-49.5 16.5q-19 0 -29 -2v-393q-26 -5 -47 -6.5t-37 -1.5 +q-17 0 -37 1.5t-46 6.5v514zM288 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="Sacute" unicode="&#x15a;" horiz-adv-x="564" +d="M340 439q42 -17 75.5 -34.5t57.5 -42t37 -59t13 -83.5q0 -53 -18.5 -95.5t-54.5 -73t-88.5 -47t-120.5 -16.5q-62 0 -109.5 10t-102.5 31q4 35 14 74.5t24 80.5q92 -40 160 -40q51 0 79.5 15.5t28.5 53.5q0 16 -6 27.5t-16 19.5t-22.5 13.5t-25.5 10.5l-56 21 +q-36 13 -65.5 31t-50.5 42.5t-32.5 56.5t-11.5 75q0 53 18 94t50.5 69.5t78.5 43t103 14.5q51 0 98.5 -10t101.5 -29q-4 -32 -14.5 -70.5t-26.5 -72.5q-26 11 -61 23t-87 12q-16 0 -30.5 -3t-26 -9.5t-18.5 -18t-7 -28.5q0 -29 19 -43t45 -24zM501.006 904 +q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="sacute" unicode="&#x15b;" horiz-adv-x="470" +d="M305 324q30 -8 54.5 -19.5t42 -29.5t27.5 -44t10 -63q0 -38 -15.5 -71t-46 -57t-75 -38t-102.5 -14q-48 0 -89 7t-87 24q5 68 37 138q32 -15 67 -22.5t70 -7.5q12 0 25 1t23 4.5t16.5 9.5t6.5 16q0 13 -13 19.5t-30 11.5l-68 19q-53 15 -88 51t-35 98q0 39 16 71t45 54.5 +t68.5 34.5t87.5 12q38 0 83 -8t89 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -65 20t-70 9q-47 0 -47 -26q0 -11 11 -17t25 -10zM466.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1 +q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Scircumflex" unicode="&#x15c;" horiz-adv-x="564" +d="M340 439q42 -17 75.5 -34.5t57.5 -42t37 -59t13 -83.5q0 -53 -18.5 -95.5t-54.5 -73t-88.5 -47t-120.5 -16.5q-62 0 -109.5 10t-102.5 31q4 35 14 74.5t24 80.5q92 -40 160 -40q51 0 79.5 15.5t28.5 53.5q0 16 -6 27.5t-16 19.5t-22.5 13.5t-25.5 10.5l-56 21 +q-36 13 -65.5 31t-50.5 42.5t-32.5 56.5t-11.5 75q0 53 18 94t50.5 69.5t78.5 43t103 14.5q51 0 98.5 -10t101.5 -29q-4 -32 -14.5 -70.5t-26.5 -72.5q-26 11 -61 23t-87 12q-16 0 -30.5 -3t-26 -9.5t-18.5 -18t-7 -28.5q0 -29 19 -43t45 -24zM302 909q13 0 34 -1t37 -4 +l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="scircumflex" unicode="&#x15d;" horiz-adv-x="470" +d="M305 324q30 -8 54.5 -19.5t42 -29.5t27.5 -44t10 -63q0 -38 -15.5 -71t-46 -57t-75 -38t-102.5 -14q-48 0 -89 7t-87 24q5 68 37 138q32 -15 67 -22.5t70 -7.5q12 0 25 1t23 4.5t16.5 9.5t6.5 16q0 13 -13 19.5t-30 11.5l-68 19q-53 15 -88 51t-35 98q0 39 16 71t45 54.5 +t68.5 34.5t87.5 12q38 0 83 -8t89 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -65 20t-70 9q-47 0 -47 -26q0 -11 11 -17t25 -10zM245 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5 +l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="Scedilla" unicode="&#x15e;" horiz-adv-x="564" +d="M340 439q42 -17 75.5 -34.5t57.5 -42t37 -59t13 -83.5q0 -53 -18.5 -95.5t-54.5 -73t-88.5 -47t-120.5 -16.5q-62 0 -109.5 10t-102.5 31q4 35 14 74.5t24 80.5q92 -40 160 -40q51 0 79.5 15.5t28.5 53.5q0 16 -6 27.5t-16 19.5t-22.5 13.5t-25.5 10.5l-56 21 +q-36 13 -65.5 31t-50.5 42.5t-32.5 56.5t-11.5 75q0 53 18 94t50.5 69.5t78.5 43t103 14.5q51 0 98.5 -10t101.5 -29q-4 -32 -14.5 -70.5t-26.5 -72.5q-26 11 -61 23t-87 12q-16 0 -30.5 -3t-26 -9.5t-18.5 -18t-7 -28.5q0 -29 19 -43t45 -24zM242 -115q-10 0 -22 -1.5 +t-37 -9.5l-20 20l84 132h84l-49 -76q55 -2 86 -25.5t31 -61.5q0 -52 -43.5 -78.5t-117.5 -26.5q-23 0 -47.5 3t-44.5 11q0 11 5 31t16 36q19 -6 34.5 -8.5t34.5 -2.5q26 0 36 9t10 21t-10 19.5t-30 7.5z" /> + <glyph glyph-name="scedilla" unicode="&#x15f;" horiz-adv-x="470" +d="M305 324q30 -8 54.5 -19.5t42 -29.5t27.5 -44t10 -63q0 -38 -15.5 -71t-46 -57t-75 -38t-102.5 -14q-48 0 -89 7t-87 24q5 68 37 138q32 -15 67 -22.5t70 -7.5q12 0 25 1t23 4.5t16.5 9.5t6.5 16q0 13 -13 19.5t-30 11.5l-68 19q-53 15 -88 51t-35 98q0 39 16 71t45 54.5 +t68.5 34.5t87.5 12q38 0 83 -8t89 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -65 20t-70 9q-47 0 -47 -26q0 -11 11 -17t25 -10zM201 -115q-10 0 -22 -1.5t-37 -9.5l-20 20l84 132h84l-49 -76q55 -2 86 -25.5t31 -61.5q0 -52 -43.5 -78.5t-117.5 -26.5q-23 0 -47.5 3t-44.5 11 +q0 11 5 31t16 36q19 -6 34.5 -8.5t34.5 -2.5q26 0 36 9t10 21t-10 19.5t-30 7.5z" /> + <glyph glyph-name="Scaron" unicode="&#x160;" horiz-adv-x="564" +d="M340 439q42 -17 75.5 -34.5t57.5 -42t37 -59t13 -83.5q0 -53 -18.5 -95.5t-54.5 -73t-88.5 -47t-120.5 -16.5q-62 0 -109.5 10t-102.5 31q4 35 14 74.5t24 80.5q92 -40 160 -40q51 0 79.5 15.5t28.5 53.5q0 16 -6 27.5t-16 19.5t-22.5 13.5t-25.5 10.5l-56 21 +q-36 13 -65.5 31t-50.5 42.5t-32.5 56.5t-11.5 75q0 53 18 94t50.5 69.5t78.5 43t103 14.5q51 0 98.5 -10t101.5 -29q-4 -32 -14.5 -70.5t-26.5 -72.5q-26 11 -61 23t-87 12q-16 0 -30.5 -3t-26 -9.5t-18.5 -18t-7 -28.5q0 -29 19 -43t45 -24zM304 774q-13 0 -34 1t-37 4 +l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="scaron" unicode="&#x161;" horiz-adv-x="470" +d="M305 324q30 -8 54.5 -19.5t42 -29.5t27.5 -44t10 -63q0 -38 -15.5 -71t-46 -57t-75 -38t-102.5 -14q-48 0 -89 7t-87 24q5 68 37 138q32 -15 67 -22.5t70 -7.5q12 0 25 1t23 4.5t16.5 9.5t6.5 16q0 13 -13 19.5t-30 11.5l-68 19q-53 15 -88 51t-35 98q0 39 16 71t45 54.5 +t68.5 34.5t87.5 12q38 0 83 -8t89 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -65 20t-70 9q-47 0 -47 -26q0 -11 11 -17t25 -10zM265 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123 +q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="Tcommaaccent" unicode="&#x162;" horiz-adv-x="558" +d="M191 563h-167q-9 43 -9 79q0 33 9 77h511q4 -22 6 -41t2 -36q0 -33 -8 -79h-167v-560q-53 -9 -88 -9q-37 0 -89 9v560zM209 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="tcommaaccent" unicode="&#x163;" horiz-adv-x="511" +d="M171 376h-148q-5 20 -6.5 37.5t-1.5 33.5t1.5 33t6.5 37h465q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-148v-375q-26 -4 -47 -6t-38 -2t-38 2t-46 6v375zM189 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="Tcaron" unicode="&#x164;" horiz-adv-x="558" +d="M191 563h-167q-9 43 -9 79q0 33 9 77h511q4 -22 6 -41t2 -36q0 -33 -8 -79h-167v-560q-53 -9 -88 -9q-37 0 -89 9v560zM279 774q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123 +q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="tcaron" unicode="&#x165;" horiz-adv-x="511" +d="M171 376h-148q-5 20 -6.5 37.5t-1.5 33.5t1.5 33t6.5 37h465q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-148v-375q-26 -4 -47 -6t-38 -2t-38 2t-46 6v375zM255 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1 +q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="Tbar" unicode="&#x166;" horiz-adv-x="558" +d="M64 326q0 25 9 55h118v182h-167q-9 43 -9 79q0 33 9 77h511q4 -22 6 -41t2 -36q0 -33 -8 -79h-167v-182h118q5 -15 6.5 -28.5t1.5 -25.5t-1.5 -26t-6.5 -29h-118v-269q-53 -9 -88 -9q-37 0 -89 9v269h-118q-9 30 -9 54z" /> + <glyph glyph-name="tbar" unicode="&#x167;" horiz-adv-x="511" +d="M67 174q-5 12 -6 25t-1 22q0 8 1 21t6 25h104v109h-148q-5 20 -6.5 37.5t-1.5 33.5t1.5 33t6.5 37h465q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-148v-109h103q5 -12 6 -25t1 -21q0 -9 -1 -22t-6 -25h-103v-173q-26 -4 -47 -6t-38 -2t-38 2t-46 6v173h-104z" /> + <glyph glyph-name="Utilde" unicode="&#x168;" horiz-adv-x="662" +d="M331 -11q-81 0 -134.5 22t-84.5 63.5t-43.5 100.5t-12.5 133v409q29 4 50 5.5t40 1.5q17 0 37.5 -1.5t49.5 -5.5v-388q0 -50 4 -85t14.5 -57t29.5 -31.5t50 -9.5t50.5 9.5t30 31.5t14 57t3.5 85v388q30 4 50.5 5.5t37.5 1.5q18 0 39 -1.5t50 -5.5v-409q0 -74 -12.5 -133 +t-43.5 -100.5t-84.5 -63.5t-134.5 -22zM140 870q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6 +t-34.5 -25q-16 17 -27.5 40t-18.5 47z" /> + <glyph glyph-name="utilde" unicode="&#x169;" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM87 675q19 22 48.5 38t67.5 16 +q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47z" /> + <glyph glyph-name="Umacron" unicode="&#x16a;" horiz-adv-x="662" +d="M331 -11q-81 0 -134.5 22t-84.5 63.5t-43.5 100.5t-12.5 133v409q29 4 50 5.5t40 1.5q17 0 37.5 -1.5t49.5 -5.5v-388q0 -50 4 -85t14.5 -57t29.5 -31.5t50 -9.5t50.5 9.5t30 31.5t14 57t3.5 85v388q30 4 50.5 5.5t37.5 1.5q18 0 39 -1.5t50 -5.5v-409q0 -74 -12.5 -133 +t-43.5 -100.5t-84.5 -63.5t-134.5 -22zM482 908q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="umacron" unicode="&#x16b;" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM426 713q7 -27 7 -56 +q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="Ubreve" unicode="&#x16c;" horiz-adv-x="662" +d="M331 -11q-81 0 -134.5 22t-84.5 63.5t-43.5 100.5t-12.5 133v409q29 4 50 5.5t40 1.5q17 0 37.5 -1.5t49.5 -5.5v-388q0 -50 4 -85t14.5 -57t29.5 -31.5t50 -9.5t50.5 9.5t30 31.5t14 57t3.5 85v388q30 4 50.5 5.5t37.5 1.5q18 0 39 -1.5t50 -5.5v-409q0 -74 -12.5 -133 +t-43.5 -100.5t-84.5 -63.5t-134.5 -22zM331 853q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="ubreve" unicode="&#x16d;" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM278 658q29 0 42 13t14 36 +q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="Uring" unicode="&#x16e;" horiz-adv-x="662" +d="M331 -11q-81 0 -134.5 22t-84.5 63.5t-43.5 100.5t-12.5 133v409q29 4 50 5.5t40 1.5q17 0 37.5 -1.5t49.5 -5.5v-388q0 -50 4 -85t14.5 -57t29.5 -31.5t50 -9.5t50.5 9.5t30 31.5t14 57t3.5 85v388q30 4 50.5 5.5t37.5 1.5q18 0 39 -1.5t50 -5.5v-409q0 -74 -12.5 -133 +t-43.5 -100.5t-84.5 -63.5t-134.5 -22zM206 880q0 54 36 84t89 30t89 -30t36 -84t-36 -84t-89 -30t-89 30t-36 84zM331 830q21 0 35.5 14t14.5 36q0 21 -14.5 35.5t-35.5 14.5q-22 0 -36 -14t-14 -36t14 -36t36 -14z" /> + <glyph glyph-name="uring" unicode="&#x16f;" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM154 685q0 54 36 84t89 30 +t89 -30t36 -84t-36 -84t-89 -30t-89 30t-36 84zM279 635q21 0 35.5 14t14.5 36q0 21 -14.5 35.5t-35.5 14.5q-22 0 -36 -14t-14 -36t14 -36t36 -14z" /> + <glyph glyph-name="Uhungarumlaut" unicode="&#x170;" horiz-adv-x="662" +d="M331 -11q-81 0 -134.5 22t-84.5 63.5t-43.5 100.5t-12.5 133v409q29 4 50 5.5t40 1.5q17 0 37.5 -1.5t49.5 -5.5v-388q0 -50 4 -85t14.5 -57t29.5 -31.5t50 -9.5t50.5 9.5t30 31.5t14 57t3.5 85v388q30 4 50.5 5.5t37.5 1.5q18 0 39 -1.5t50 -5.5v-409q0 -74 -12.5 -133 +t-43.5 -100.5t-84.5 -63.5t-134.5 -22zM283 781q-10 -2 -29 -4t-40 -2q-36 0 -69 6l117 123q22 4 42 5t39 1q41 0 77 -6zM499 781q-11 -2 -29.5 -4t-40.5 -2q-37 0 -68 6l116 123q23 4 43 5t39 1q39 0 77 -6z" /> + <glyph glyph-name="uhungarumlaut" unicode="&#x171;" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM246 586q-10 -2 -29 -4t-40 -2 +q-36 0 -69 6l117 123q22 4 42 5t39 1q41 0 77 -6zM462 586q-11 -2 -29.5 -4t-40.5 -2q-37 0 -68 6l116 123q23 4 43 5t39 1q39 0 77 -6z" /> + <glyph glyph-name="Uogonek" unicode="&#x172;" horiz-adv-x="662" +d="M331 -11q-81 0 -134.5 22t-84.5 63.5t-43.5 100.5t-12.5 133v409q29 4 50 5.5t40 1.5q17 0 37.5 -1.5t49.5 -5.5v-388q0 -50 4 -85t14.5 -57t29.5 -31.5t50 -9.5t50.5 9.5t30 31.5t14 57t3.5 85v388q30 4 50.5 5.5t37.5 1.5q18 0 39 -1.5t50 -5.5v-409q0 -74 -12.5 -133 +t-43.5 -100.5t-84.5 -63.5t-134.5 -22zM463 26q-51 -30 -85 -62.5t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50q0 48 34 92t97 72h113z" /> + <glyph glyph-name="uogonek" unicode="&#x173;" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM508 26q-51 -30 -85 -62.5 +t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50q0 48 34 92t97 72h113z" /> + <glyph glyph-name="Wcircumflex" unicode="&#x174;" horiz-adv-x="896" +d="M720 717q26 5 44 6.5t37 1.5q20 0 42 -1.5t50 -6.5l-172 -714q-15 -3 -38.5 -6t-51.5 -3t-54.5 3.5t-35.5 5.5l-95 414l-101 -414q-9 -2 -33.5 -5.5t-52.5 -3.5t-50 3t-37 6l-169 713q28 5 54 7t46 2q19 0 39.5 -1.5t46.5 -6.5l83 -457q25 110 50 229.5t49 227.5 +q18 3 40 5.5t45 2.5q20 0 41 -2.5t36 -5.5l104 -462zM449 909q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="wcircumflex" unicode="&#x175;" horiz-adv-x="799" +d="M556 219l62 298q8 2 31 4t49 2q33 0 58.5 -2t36.5 -4l-162 -515q-17 -5 -37 -6.5t-40 -1.5t-40.5 1.5t-42.5 6.5l-73 280q-19 -67 -38.5 -141t-37.5 -139q-21 -5 -41.5 -6.5t-40.5 -1.5t-40 1.5t-37 6.5l-157 515q11 2 38.5 4t60.5 2q26 0 50.5 -2t32.5 -4l65 -306 +l72 306q17 5 37.5 6.5t40.5 1.5t40.5 -1.5t41.5 -6.5zM404 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="Ycircumflex" unicode="&#x176;" horiz-adv-x="622" +d="M433 717q23 4 48 6t51 2q17 0 44 -2.5t46 -5.5l-223 -459v-255q-53 -9 -88 -9q-37 0 -89 9v255q-26 54 -54.5 112.5l-57 117t-56.5 117t-54 112.5q17 3 46 5.5t55 2.5q21 0 46.5 -2.5t44.5 -5.5l123 -278zM311 909q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5 +q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="ycircumflex" unicode="&#x177;" horiz-adv-x="564" +d="M384 517q8 2 30.5 4t48.5 2q33 0 59 -2t37 -4l-193 -335v-181q-26 -4 -47 -6t-38 -2t-38 2t-46 6v181l-192 335q11 2 38.5 4t60.5 2q26 0 51 -2t33 -4l98 -197zM282 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48 +q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="Ydieresis" unicode="&#x178;" horiz-adv-x="622" +d="M433 717q23 4 48 6t51 2q17 0 44 -2.5t46 -5.5l-223 -459v-255q-53 -9 -88 -9q-37 0 -89 9v255q-26 54 -54.5 112.5l-57 117t-56.5 117t-54 112.5q17 3 46 5.5t55 2.5q21 0 46.5 -2.5t44.5 -5.5l123 -278zM348 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5 +q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM123 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="Zacute" unicode="&#x179;" horiz-adv-x="577" +d="M529 79q0 -37 -9 -79h-482l-18 27l276 536h-245q-5 22 -6.5 41t-1.5 36t1.5 37t6.5 42h487l15 -29l-274 -535h241q9 -42 9 -76zM527.006 904q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1 +q42.9971 0 72.9951 6z" /> + <glyph glyph-name="zacute" unicode="&#x17a;" horiz-adv-x="481" +d="M252 137h191q7 -41 7 -70q0 -15 -1.5 -30.5t-5.5 -36.5h-420l-16 30l209 350h-171q-5 22 -6.5 38.5t-1.5 31.5t1.5 30.5t6.5 36.5h407l10 -32zM486.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5 +t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Zdotaccent" unicode="&#x17b;" horiz-adv-x="577" +d="M529 79q0 -37 -9 -79h-482l-18 27l276 536h-245q-5 22 -6.5 41t-1.5 36t1.5 37t6.5 42h487l15 -29l-274 -535h241q9 -42 9 -76zM228 845q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5 +t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="zdotaccent" unicode="&#x17c;" horiz-adv-x="481" +d="M252 137h191q7 -41 7 -70q0 -15 -1.5 -30.5t-5.5 -36.5h-420l-16 30l209 350h-171q-5 22 -6.5 38.5t-1.5 31.5t1.5 30.5t6.5 36.5h407l10 -32zM174 650q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32 +q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="Zcaron" unicode="&#x17d;" horiz-adv-x="577" +d="M529 79q0 -37 -9 -79h-482l-18 27l276 536h-245q-5 22 -6.5 41t-1.5 36t1.5 37t6.5 42h487l15 -29l-274 -535h241q9 -42 9 -76zM305 774q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123 +q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="zcaron" unicode="&#x17e;" horiz-adv-x="481" +d="M252 137h191q7 -41 7 -70q0 -15 -1.5 -30.5t-5.5 -36.5h-420l-16 30l209 350h-171q-5 22 -6.5 38.5t-1.5 31.5t1.5 30.5t6.5 36.5h407l10 -32zM277 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5 +t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="florin" unicode="&#x192;" horiz-adv-x="599" +d="M146 333q-5 23 -6 39t-1 31q0 14 1 29t6 38h93l6 46q13 97 63 150t144 53q30 0 53 -3t55 -12q-2 -40 -9 -74t-18 -66q-8 2 -26 6t-34 4q-24 0 -39.5 -12t-20.5 -52l-5 -40h98q5 -23 6 -38t1 -29q0 -15 -1 -31t-6 -39h-114l-30 -257q-11 -97 -62.5 -150t-144.5 -53 +q-30 0 -53 3.5t-55 12.5q2 40 8.5 74t18.5 66q8 -2 23 -6t35 -4q28 0 42.5 12t19.5 52l29 250h-77z" /> + <glyph glyph-name="Scommaaccent" unicode="&#x218;" horiz-adv-x="564" +d="M340 439q42 -17 75.5 -34.5t57.5 -42t37 -59t13 -83.5q0 -53 -18.5 -95.5t-54.5 -73t-88.5 -47t-120.5 -16.5q-62 0 -109.5 10t-102.5 31q4 35 14 74.5t24 80.5q92 -40 160 -40q51 0 79.5 15.5t28.5 53.5q0 16 -6 27.5t-16 19.5t-22.5 13.5t-25.5 10.5l-56 21 +q-36 13 -65.5 31t-50.5 42.5t-32.5 56.5t-11.5 75q0 53 18 94t50.5 69.5t78.5 43t103 14.5q51 0 98.5 -10t101.5 -29q-4 -32 -14.5 -70.5t-26.5 -72.5q-26 11 -61 23t-87 12q-16 0 -30.5 -3t-26 -9.5t-18.5 -18t-7 -28.5q0 -29 19 -43t45 -24zM212 -68q34 7 73 7 +q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="scommaaccent" unicode="&#x219;" horiz-adv-x="470" +d="M305 324q30 -8 54.5 -19.5t42 -29.5t27.5 -44t10 -63q0 -38 -15.5 -71t-46 -57t-75 -38t-102.5 -14q-48 0 -89 7t-87 24q5 68 37 138q32 -15 67 -22.5t70 -7.5q12 0 25 1t23 4.5t16.5 9.5t6.5 16q0 13 -13 19.5t-30 11.5l-68 19q-53 15 -88 51t-35 98q0 39 16 71t45 54.5 +t68.5 34.5t87.5 12q38 0 83 -8t89 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -65 20t-70 9q-47 0 -47 -26q0 -11 11 -17t25 -10zM166 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="uni021A" unicode="&#x21a;" horiz-adv-x="558" +d="M191 563h-167q-9 43 -9 79q0 33 9 77h511q4 -22 6 -41t2 -36q0 -33 -8 -79h-167v-560q-53 -9 -88 -9q-37 0 -89 9v560zM209 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="uni021B" unicode="&#x21b;" horiz-adv-x="511" +d="M171 376h-148q-5 20 -6.5 37.5t-1.5 33.5t1.5 33t6.5 37h465q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-148v-375q-26 -4 -47 -6t-38 -2t-38 2t-46 6v375zM185 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="apostrophe" unicode="&#x2bc;" horiz-adv-x="480" +d="M189 719q14 3 33.5 4.5t35.5 1.5q42 0 80 -6l-63 -158q-20 -3 -35.5 -4t-35.5 -1q-15 0 -28.5 1t-33.5 4z" /> + <glyph glyph-name="circumflex" unicode="&#x2c6;" horiz-adv-x="480" +d="M240 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="caron" unicode="&#x2c7;" horiz-adv-x="480" +d="M240 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="uni02C9" unicode="&#x2c9;" horiz-adv-x="480" +d="M391 704q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="breve" unicode="&#x2d8;" horiz-adv-x="480" +d="M240 658q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="dotaccent" unicode="&#x2d9;" horiz-adv-x="480" +d="M162 650q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="ring" unicode="&#x2da;" horiz-adv-x="480" +d="M115 685q0 54 36 84t89 30t89 -30t36 -84t-36 -84t-89 -30t-89 30t-36 84zM240 635q21 0 35.5 14t14.5 36q0 21 -14.5 35.5t-35.5 14.5q-22 0 -36 -14t-14 -36t14 -36t36 -14z" /> + <glyph glyph-name="ogonek" unicode="&#x2db;" horiz-adv-x="480" +d="M362 26q-51 -30 -85 -62.5t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50q0 48 34 92t97 72h113z" /> + <glyph glyph-name="tilde" unicode="&#x2dc;" horiz-adv-x="480" +d="M49 675q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47z +" /> + <glyph glyph-name="hungarumlaut" unicode="&#x2dd;" horiz-adv-x="480" +d="M132 586q-10 -2 -29 -4t-40 -2q-36 0 -69 6l117 123q22 4 42 5t39 1q41 0 77 -6zM348 586q-11 -2 -29.5 -4t-40.5 -2q-37 0 -68 6l116 123q23 4 43 5t39 1q39 0 77 -6z" /> + <glyph glyph-name="pi" unicode="&#x3c0;" horiz-adv-x="770" +d="M341 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v381q-15 -2 -29.5 -8t-26.5 -13.5t-21 -15.5t-13 -14q-14 22 -23.5 40.5t-14.5 30.5q-4 12 -7.5 24.5t-6.5 32.5q26 24 64 41t103 17h502q4 -23 5.5 -38t1.5 -29t-1.5 -32.5t-5.5 -42.5h-94v-165q0 -46 8 -60t32 -14 +q11 0 29.5 3.5t34.5 7.5q9 -22 13.5 -44t4.5 -52q0 -15 -1 -26.5t-2 -16.5q-27 -6 -54 -10t-52 -4q-94 0 -138 44t-44 143v194h-95v-374z" /> + <glyph glyph-name="Wgrave" unicode="&#x1e80;" horiz-adv-x="896" +d="M720 717q26 5 44 6.5t37 1.5q20 0 42 -1.5t50 -6.5l-172 -714q-15 -3 -38.5 -6t-51.5 -3t-54.5 3.5t-35.5 5.5l-95 414l-101 -414q-9 -2 -33.5 -5.5t-52.5 -3.5t-50 3t-37 6l-169 713q28 5 54 7t46 2q19 0 39.5 -1.5t46.5 -6.5l83 -457q25 110 50 229.5t49 227.5 +q18 3 40 5.5t45 2.5q20 0 41 -2.5t36 -5.5l104 -462zM232 904q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="wgrave" unicode="&#x1e81;" horiz-adv-x="799" +d="M556 219l62 298q8 2 31 4t49 2q33 0 58.5 -2t36.5 -4l-162 -515q-17 -5 -37 -6.5t-40 -1.5t-40.5 1.5t-42.5 6.5l-73 280q-19 -67 -38.5 -141t-37.5 -139q-21 -5 -41.5 -6.5t-40.5 -1.5t-40 1.5t-37 6.5l-157 515q11 2 38.5 4t60.5 2q26 0 50.5 -2t32.5 -4l65 -306 +l72 306q17 5 37.5 6.5t40.5 1.5t40.5 -1.5t41.5 -6.5zM183 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="Wacute" unicode="&#x1e82;" horiz-adv-x="896" +d="M720 717q26 5 44 6.5t37 1.5q20 0 42 -1.5t50 -6.5l-172 -714q-15 -3 -38.5 -6t-51.5 -3t-54.5 3.5t-35.5 5.5l-95 414l-101 -414q-9 -2 -33.5 -5.5t-52.5 -3.5t-50 3t-37 6l-169 713q28 5 54 7t46 2q19 0 39.5 -1.5t46.5 -6.5l83 -457q25 110 50 229.5t49 227.5 +q18 3 40 5.5t45 2.5q20 0 41 -2.5t36 -5.5l104 -462zM690.006 904q-17.999 3 -42.498 4.5q-24.498 1.5 -50.4961 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="wacute" unicode="&#x1e83;" horiz-adv-x="799" +d="M556 219l62 298q8 2 31 4t49 2q33 0 58.5 -2t36.5 -4l-162 -515q-17 -5 -37 -6.5t-40 -1.5t-40.5 1.5t-42.5 6.5l-73 280q-19 -67 -38.5 -141t-37.5 -139q-21 -5 -41.5 -6.5t-40.5 -1.5t-40 1.5t-37 6.5l-157 515q11 2 38.5 4t60.5 2q26 0 50.5 -2t32.5 -4l65 -306 +l72 306q17 5 37.5 6.5t40.5 1.5t40.5 -1.5t41.5 -6.5zM656.006 709q-17.999 3 -42.498 4.5q-24.498 1.5 -50.4961 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="Wdieresis" unicode="&#x1e84;" horiz-adv-x="896" +d="M720 717q26 5 44 6.5t37 1.5q20 0 42 -1.5t50 -6.5l-172 -714q-15 -3 -38.5 -6t-51.5 -3t-54.5 3.5t-35.5 5.5l-95 414l-101 -414q-9 -2 -33.5 -5.5t-52.5 -3.5t-50 3t-37 6l-169 713q28 5 54 7t46 2q19 0 39.5 -1.5t46.5 -6.5l83 -457q25 110 50 229.5t49 227.5 +q18 3 40 5.5t45 2.5q20 0 41 -2.5t36 -5.5l104 -462zM488 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM263 841q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60 +q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="wdieresis" unicode="&#x1e85;" horiz-adv-x="799" +d="M556 219l62 298q8 2 31 4t49 2q33 0 58.5 -2t36.5 -4l-162 -515q-17 -5 -37 -6.5t-40 -1.5t-40.5 1.5t-42.5 6.5l-73 280q-19 -67 -38.5 -141t-37.5 -139q-21 -5 -41.5 -6.5t-40.5 -1.5t-40 1.5t-37 6.5l-157 515q11 2 38.5 4t60.5 2q26 0 50.5 -2t32.5 -4l65 -306 +l72 306q17 5 37.5 6.5t40.5 1.5t40.5 -1.5t41.5 -6.5zM441 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM216 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60 +q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="Ygrave" unicode="&#x1ef2;" horiz-adv-x="622" +d="M433 717q23 4 48 6t51 2q17 0 44 -2.5t46 -5.5l-223 -459v-255q-53 -9 -88 -9q-37 0 -89 9v255q-26 54 -54.5 112.5l-57 117t-56.5 117t-54 112.5q17 3 46 5.5t55 2.5q21 0 46.5 -2.5t44.5 -5.5l123 -278zM105 904q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123 +q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="ygrave" unicode="&#x1ef3;" horiz-adv-x="564" +d="M384 517q8 2 30.5 4t48.5 2q33 0 59 -2t37 -4l-193 -335v-181q-26 -4 -47 -6t-38 -2t-38 2t-46 6v181l-192 335q11 2 38.5 4t60.5 2q26 0 51 -2t33 -4l98 -197zM67 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="endash" unicode="&#x2013;" horiz-adv-x="500" +d="M498 349q5 -22 6.5 -40t1.5 -35t-1.5 -35.5t-6.5 -40.5h-496q-4 22 -6 40t-2 35t2 35.5t6 40.5h496z" /> + <glyph glyph-name="emdash" unicode="&#x2014;" horiz-adv-x="1000" +d="M998 349q5 -22 6.5 -40t1.5 -35t-1.5 -35.5t-6.5 -40.5h-996q-4 22 -6 40t-2 35t2 35.5t6 40.5h996z" /> + <glyph glyph-name="quoteleft" unicode="&#x2018;" horiz-adv-x="316" +d="M40 717q26 5 49.5 6.5t40.5 1.5q16 0 35.5 -1.5t41.5 -6.5l69 -267q-15 -3 -37.5 -5.5t-43.5 -2.5q-18 0 -37.5 1.5t-41.5 6.5z" /> + <glyph glyph-name="quoteright" unicode="&#x2019;" horiz-adv-x="316" +d="M200 450q-22 -5 -41.5 -6.5t-37.5 -1.5q-21 0 -43.5 2.5t-37.5 5.5l69 267q22 5 41.5 6.5t35.5 1.5q17 0 40.5 -1.5t49.5 -6.5z" /> + <glyph glyph-name="quotesinglbase" unicode="&#x201a;" horiz-adv-x="316" +d="M200 -124q-22 -5 -41.5 -6.5t-37.5 -1.5q-21 0 -43.5 2.5t-37.5 5.5l69 267q22 5 41.5 6.5t35.5 1.5q17 0 40.5 -1.5t49.5 -6.5z" /> + <glyph glyph-name="quotedblleft" unicode="&#x201c;" horiz-adv-x="546" +d="M40 717q26 5 49.5 6.5t40.5 1.5q16 0 35.5 -1.5t41.5 -6.5l69 -267q-15 -3 -37.5 -5.5t-43.5 -2.5q-18 0 -37.5 1.5t-41.5 6.5zM270 717q26 5 49.5 6.5t40.5 1.5q16 0 35.5 -1.5t41.5 -6.5l69 -267q-15 -3 -37.5 -5.5t-43.5 -2.5q-18 0 -37.5 1.5t-41.5 6.5z" /> + <glyph glyph-name="quotedblright" unicode="&#x201d;" horiz-adv-x="545" +d="M200 450q-22 -5 -41.5 -6.5t-37.5 -1.5q-21 0 -43.5 2.5t-37.5 5.5l69 267q22 5 41.5 6.5t35.5 1.5q17 0 40.5 -1.5t49.5 -6.5zM429 450q-22 -5 -41.5 -6.5t-37.5 -1.5q-21 0 -43.5 2.5t-37.5 5.5l69 267q22 5 41.5 6.5t35.5 1.5q17 0 40.5 -1.5t49.5 -6.5z" /> + <glyph glyph-name="quotedblbase" unicode="&#x201e;" horiz-adv-x="545" +d="M200 -124q-22 -5 -41.5 -6.5t-37.5 -1.5q-21 0 -43.5 2.5t-37.5 5.5l69 267q22 5 41.5 6.5t35.5 1.5q17 0 40.5 -1.5t49.5 -6.5zM429 -124q-22 -5 -41.5 -6.5t-37.5 -1.5q-21 0 -43.5 2.5t-37.5 5.5l69 267q22 5 41.5 6.5t35.5 1.5q17 0 40.5 -1.5t49.5 -6.5z" /> + <glyph glyph-name="dagger" unicode="&#x2020;" horiz-adv-x="552" +d="M194 717q21 4 41.5 6t39.5 2q37 0 83 -8v-247h145q9 -42 9 -75q0 -35 -9 -77h-145v-492q-46 -8 -83 -8q-19 0 -39.5 2t-41.5 6v492h-146q-5 21 -6.5 40t-1.5 36t1.5 36t6.5 40h146v247z" /> + <glyph glyph-name="daggerdbl" unicode="&#x2021;" horiz-adv-x="552" +d="M358 73v-247q-46 -8 -83 -8q-19 0 -39.5 2t-41.5 6v247h-146q-5 21 -6.5 40t-1.5 36t1.5 36t6.5 40h146v149h-146q-5 21 -6.5 40t-1.5 36t1.5 36t6.5 40h146v191q21 4 41.5 6t39.5 2q37 0 83 -8v-191h145q9 -42 9 -75q0 -35 -9 -77h-145v-149h145q9 -42 9 -75 +q0 -35 -9 -77h-145z" /> + <glyph glyph-name="bullet" unicode="&#x2022;" horiz-adv-x="470" +d="M65 367q0 35 13.5 66t36.5 54t54 36.5t66 13.5t66 -13.5t54 -36.5t36.5 -54t13.5 -66t-13.5 -66t-36.5 -54t-54 -36.5t-66 -13.5t-66 13.5t-54 36.5t-36.5 54t-13.5 66z" /> + <glyph glyph-name="ellipsis" unicode="&#x2026;" horiz-adv-x="928" +d="M148 179q20 0 41 -2t44 -5q4 -23 6 -44t2 -41t-2 -41t-6 -44q-23 -4 -44 -6t-41 -2t-41 2t-44 6q-4 23 -6 44t-2 41t2 41t6 44q23 3 44 5t41 2zM780 179q20 0 41 -2t44 -5q4 -23 6 -44t2 -41t-2 -41t-6 -44q-23 -4 -44 -6t-41 -2t-41 2t-44 6q-4 23 -6 44t-2 41t2 41 +t6 44q23 3 44 5t41 2zM464 179q20 0 41 -2t44 -5q4 -23 6 -44t2 -41t-2 -41t-6 -44q-23 -4 -44 -6t-41 -2t-41 2t-44 6q-4 23 -6 44t-2 41t2 41t6 44q23 3 44 5t41 2z" /> + <glyph glyph-name="perthousand" unicode="&#x2030;" horiz-adv-x="1460" +d="M280 505q0 46 -13 73t-42 27t-42 -27t-13 -73q0 -45 13 -73t42 -28t42 28t13 73zM33 505q0 41 11.5 79.5t35 68.5t59.5 48t86 18q49 0 85 -18t60 -48t35.5 -68.5t11.5 -79.5t-11.5 -79.5t-35.5 -68.5t-60 -48t-85 -18q-50 0 -86 18t-59.5 48t-35 68.5t-11.5 79.5zM378 2 +q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM846 203q0 46 -13 73t-42 27t-42 -27t-13 -73q0 -45 13 -73t42 -28t42 28t13 73zM599 203q0 41 11.5 79.5t35 68.5t59.5 48t86 18q49 0 85 -18t60 -48 +t35.5 -68.5t11.5 -79.5t-11.5 -79.5t-35.5 -68.5t-60 -48t-85 -18q-50 0 -86 18t-59.5 48t-35 68.5t-11.5 79.5zM1290 203q0 46 -13 73t-42 27t-42 -27t-13 -73q0 -45 13 -73t42 -28t42 28t13 73zM1043 203q0 41 11.5 79.5t35 68.5t59.5 48t86 18q49 0 85 -18t60 -48 +t35.5 -68.5t11.5 -79.5t-11.5 -79.5t-35.5 -68.5t-60 -48t-85 -18q-50 0 -86 18t-59.5 48t-35 68.5t-11.5 79.5z" /> + <glyph glyph-name="guilsinglleft" unicode="&#x2039;" horiz-adv-x="386" +d="M211 266l154 -222q-47 -9 -95 -9q-24 0 -46.5 2.5t-37.5 6.5l-156 222l156 222q15 4 37.5 6.5t46.5 2.5q48 0 95 -9z" /> + <glyph glyph-name="guilsinglright" unicode="&#x203a;" horiz-adv-x="386" +d="M21 488q46 9 95 9q24 0 46.5 -2.5t37.5 -6.5l156 -222l-156 -222q-15 -4 -37.5 -6.5t-46.5 -2.5q-49 0 -95 9l154 222z" /> + <glyph glyph-name="fraction" unicode="&#x2044;" horiz-adv-x="96" +d="M-82 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5z" /> + <glyph glyph-name="zerosuperior" unicode="&#x2070;" +d="M280 505q0 46 -13 73t-42 27t-42 -27t-13 -73q0 -45 13 -73t42 -28t42 28t13 73zM33 505q0 41 11.5 79.5t35 68.5t59.5 48t86 18q49 0 85 -18t60 -48t35.5 -68.5t11.5 -79.5t-11.5 -79.5t-35.5 -68.5t-60 -48t-85 -18q-50 0 -86 18t-59.5 48t-35 68.5t-11.5 79.5z" /> + <glyph glyph-name="foursuperior" unicode="&#x2074;" +d="M190 454h58v64q15 2 29 3t29 1q14 0 26.5 -1t27.5 -3v-64h36q6 -24 6 -49q0 -22 -6 -46h-36v-54q-15 -2 -27.5 -3.5t-28.5 -1.5q-14 0 -26.5 1t-29.5 4v54h-202l-13 21l155 342q29 -3 53.5 -10.5t49.5 -24.5z" /> + <glyph glyph-name="fivesuperior" unicode="&#x2075;" +d="M197 604l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5q2 26 7.5 54.5t21.5 51.5q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5 +t2 -27.5t-2 -28t-4 -23h-144z" /> + <glyph glyph-name="sixsuperior" unicode="&#x2076;" +d="M318 707q8 -11 12 -27.5t4 -32.5q0 -18 -4 -37q-48 -2 -83.5 -16t-47.5 -43q16 9 35 12.5t36 3.5q25 0 49 -7t42 -22.5t29 -40.5t11 -60q0 -36 -14.5 -63t-38.5 -45.5t-55 -28t-64 -9.5q-82 0 -127 46t-45 124q0 51 15.5 95.5t48 77.5t81.5 52t116 21zM234 483 +q-24 0 -38 -13.5t-14 -34.5q0 -24 13.5 -37t35.5 -13t36 13t14 36q0 25 -13.5 37t-33.5 12z" /> + <glyph glyph-name="sevensuperior" unicode="&#x2077;" +d="M395 686l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316z" /> + <glyph glyph-name="eightsuperior" unicode="&#x2078;" +d="M390 602q0 -25 -14.5 -46t-31.5 -35q25 -15 45 -42t20 -62q0 -34 -15 -58t-39.5 -39t-57.5 -22t-69 -7q-38 0 -71.5 7t-59.5 22t-41 39t-15 58q0 36 20.5 62.5t45.5 41.5q-17 14 -31 34.5t-14 46.5q0 50 44 83.5t122 33.5q76 0 119 -33.5t43 -83.5zM274 423q0 15 -13 27 +t-36 20q-20 -8 -33 -20t-13 -27q0 -13 10 -25t39 -12q24 0 35 12t11 25zM184 596q0 -14 12 -23t32 -14q15 5 28 15t13 22t-9.5 22.5t-31.5 10.5q-23 0 -33.5 -11t-10.5 -22z" /> + <glyph glyph-name="ninesuperior" unicode="&#x2079;" +d="M132 290q-8 11 -12 27.5t-4 32.5q0 18 4 37q48 2 83.5 16t47.5 43q-16 -9 -35 -12.5t-36 -3.5q-26 0 -49.5 7t-41.5 22.5t-29 40.5t-11 60q0 36 14.5 63t38.5 45.5t55 28t64 9.5q82 0 127 -46t45 -124q0 -51 -16 -95.5t-48 -77.5t-81 -52.5t-116 -20.5zM216 514 +q24 0 38 13.5t14 34.5q0 24 -13.5 37t-35.5 13t-36 -13t-14 -36q0 -25 13.5 -37t33.5 -12z" /> + <glyph glyph-name="zeroinferior" unicode="&#x2080;" +d="M280 201q0 46 -13 73t-42 27t-42 -27t-13 -73q0 -45 13 -73t42 -28t42 28t13 73zM33 201q0 41 11.5 79.5t35 68.5t59.5 48t86 18q49 0 85 -18t60 -48t35.5 -68.5t11.5 -79.5t-11.5 -79.5t-35.5 -68.5t-60 -48t-85 -18q-50 0 -86 18t-59.5 48t-35 68.5t-11.5 79.5z" /> + <glyph glyph-name="oneinferior" unicode="&#x2081;" +d="M91 1q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281z" /> + <glyph glyph-name="twoinferior" unicode="&#x2082;" +d="M255 110h108q4 -17 5 -29.5t1 -24.5t-1 -25t-5 -30h-318l-9 23l109 132q35 42 51 68.5t16 43.5q0 18 -13 28t-36 10q-24 0 -42.5 -6.5t-47.5 -19.5q-10 20 -19 46.5t-12 55.5q25 14 63 23.5t75 9.5q75 0 120.5 -35.5t45.5 -99.5q0 -24 -8 -46.5t-20 -42.5t-26 -37 +t-26 -31z" /> + <glyph glyph-name="threeinferior" unicode="&#x2083;" +d="M72 296q-4 15 -5 28t-1 25t1 24.5t5 27.5h279l12 -21l-85 -129q46 -11 69.5 -42.5t23.5 -73.5q0 -37 -14.5 -64.5t-40 -46t-60.5 -28t-75 -9.5q-44 0 -77.5 7t-58.5 16q1 29 11 57.5t22 46.5q17 -8 42.5 -16t51.5 -8q28 0 48.5 11t20.5 35q0 17 -14.5 29.5t-46.5 12.5 +q-8 0 -17.5 -1t-29.5 -7l-18 21l72 105h-115z" /> + <glyph glyph-name="fourinferior" unicode="&#x2084;" +d="M190 150h58v64q15 2 29 3t29 1q14 0 26.5 -1t27.5 -3v-64h36q6 -24 6 -49q0 -22 -6 -46h-36v-54q-15 -2 -27.5 -3.5t-28.5 -1.5q-14 0 -26.5 1t-29.5 4v54h-202l-13 21l155 342q29 -3 53.5 -10.5t49.5 -24.5z" /> + <glyph glyph-name="fiveinferior" unicode="&#x2085;" +d="M197 300l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5q2 26 7.5 54.5t21.5 51.5q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5 +t2 -27.5t-2 -28t-4 -23h-144z" /> + <glyph glyph-name="sixinferior" unicode="&#x2086;" +d="M318 403q8 -11 12 -27.5t4 -32.5q0 -18 -4 -37q-48 -2 -83.5 -16t-47.5 -43q16 9 35 12.5t36 3.5q25 0 49 -7t42 -22.5t29 -40.5t11 -60q0 -36 -14.5 -63t-38.5 -45.5t-55 -28t-64 -9.5q-82 0 -127 46t-45 124q0 51 15.5 95.5t48 77.5t81.5 52t116 21zM234 179 +q-24 0 -38 -13.5t-14 -34.5q0 -24 13.5 -37t35.5 -13t36 13t14 36q0 25 -13.5 37t-33.5 12z" /> + <glyph glyph-name="seveninferior" unicode="&#x2087;" +d="M395 382l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316z" /> + <glyph glyph-name="eightinferior" unicode="&#x2088;" +d="M390 298q0 -25 -14.5 -46t-31.5 -35q25 -15 45 -42t20 -62q0 -34 -15 -58t-39.5 -39t-57.5 -22t-69 -7q-38 0 -71.5 7t-59.5 22t-41 39t-15 58q0 36 20.5 62.5t45.5 41.5q-17 14 -31 34.5t-14 46.5q0 50 44 83.5t122 33.5q76 0 119 -33.5t43 -83.5zM274 119q0 15 -13 27 +t-36 20q-20 -8 -33 -20t-13 -27q0 -13 10 -25t39 -12q24 0 35 12t11 25zM184 292q0 -14 12 -23t32 -14q15 5 28 15t13 22t-9.5 22.5t-31.5 10.5q-23 0 -33.5 -11t-10.5 -22z" /> + <glyph glyph-name="nineinferior" unicode="&#x2089;" +d="M132 -14q-8 11 -12 27.5t-4 32.5q0 18 4 37q48 2 83.5 16t47.5 43q-16 -9 -35 -12.5t-36 -3.5q-26 0 -49.5 7t-41.5 22.5t-29 40.5t-11 60q0 36 14.5 63t38.5 45.5t55 28t64 9.5q82 0 127 -46t45 -124q0 -51 -16 -95.5t-48 -77.5t-81 -52.5t-116 -20.5zM216 210 +q24 0 38 13.5t14 34.5q0 24 -13.5 37t-35.5 13t-36 -13t-14 -36q0 -25 13.5 -37t33.5 -12z" /> + <glyph glyph-name="Euro" unicode="&#x20ac;" horiz-adv-x="612" +d="M302 223q14 -43 44.5 -63.5t84.5 -20.5q33 0 65.5 6.5t64.5 17.5q17 -36 26.5 -70t14.5 -71q-57 -21 -100 -27.5t-91 -6.5q-66 0 -115.5 16.5t-85.5 47.5t-58.5 74.5t-33.5 96.5h-87q-5 15 -5 44q0 28 5 45h76q-1 9 -1 18v19v33h-75q-5 15 -5 44q0 28 5 45h87 +q11 55 34 100.5t59 78.5t85 51t113 18q24 0 45.5 -1.5t43.5 -5.5t45 -11t49 -17q-2 -41 -14 -78t-26 -63q-40 14 -68 19.5t-60 5.5q-52 0 -81 -24.5t-43 -72.5h182q5 -17 5 -45q0 -29 -5 -44h-195v-33v-19.5t1 -17.5h194q5 -17 5 -45q0 -29 -5 -44h-180z" /> + <glyph glyph-name="trademark" unicode="&#x2122;" horiz-adv-x="466" +d="M430 526q-17 -3 -37 -3q-18 0 -34 3v92l-34 -75q-13 -2 -23 0l-34 75v-92q-17 -3 -36 -3t-35 3l8 204q11 2 20.5 3t17.5 1q14 0 33 -4l38 -94l37 94q19 4 33 4q8 0 17.5 -1t20.5 -3zM122 526q-17 -3 -36 -3q-20 0 -36 3v141h-45q-3 13 -3 32q0 18 3 33h162l2 -16t1 -17 +q0 -8 -1 -16.5t-2 -15.5h-45v-141z" /> + <glyph glyph-name="Omega" unicode="&#x3a9;" horiz-adv-x="742" +d="M371 718q78 0 136.5 -24t98 -68t59.5 -105.5t20 -136.5q0 -38 -6 -72t-15.5 -64t-21 -54.5t-23.5 -43.5h71q4 -25 5.5 -43.5t1.5 -34.5q0 -15 -1 -30.5t-6 -41.5h-282l-11 27l14 22q11 18 26.5 48.5t29.5 72.5t23.5 95t9.5 116q0 97 -33 139t-96 42t-96 -42t-33 -139 +q0 -63 9.5 -116t23.5 -95t29.5 -72.5t26.5 -48.5l14 -22l-11 -27h-282q-5 26 -6 43t-1 32q0 16 1.5 33t5.5 42h71q-12 19 -23.5 43.5t-21 54.5t-15.5 64t-6 72q0 75 20 136.5t59.5 105.5t98 68t136.5 24z" /> + <glyph glyph-name="onequarter" unicode="&#xbc;" horiz-adv-x="927" +d="M50 305q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281zM346 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM692 150 +h58v64q15 2 29 3t29 1q14 0 26.5 -1t27.5 -3v-64h36q6 -24 6 -49q0 -22 -6 -46h-36v-54q-15 -2 -27.5 -3.5t-28.5 -1.5q-14 0 -26.5 1t-29.5 4v54h-202l-13 21l155 342q29 -3 53.5 -10.5t49.5 -24.5z" /> + <glyph glyph-name="onehalf" unicode="&#xbd;" horiz-adv-x="963" +d="M50 305q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281zM826 110h108q4 -17 5 -29.5t1 -24.5t-1 -25t-5 -30h-318l-9 23l109 132q35 42 51 68.5t16 43.5q0 18 -13 28t-36 10 +q-24 0 -42.5 -6.5t-47.5 -19.5q-10 20 -19 46.5t-12 55.5q25 14 63 23.5t75 9.5q75 0 120.5 -35.5t45.5 -99.5q0 -24 -8 -46.5t-20 -42.5t-26 -37t-26 -31zM346 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5 +z" /> + <glyph glyph-name="threequarters" unicode="&#xbe;" horiz-adv-x="910" +d="M51 600q-4 15 -5 28t-1 25t1 24.5t5 27.5h279l12 -21l-85 -129q46 -11 69.5 -42.5t23.5 -73.5q0 -37 -14.5 -64.5t-40 -46t-60.5 -28t-75 -9.5q-44 0 -77.5 7t-58.5 16q1 29 11 57.5t22 46.5q17 -8 42.5 -16t51.5 -8q28 0 48.5 11t20.5 35q0 17 -14.5 29.5t-46.5 12.5 +q-8 0 -17.5 -1t-29.5 -7l-18 21l72 105h-115zM675 157h58v64q15 2 29 3t29 1q14 0 26.5 -1t27.5 -3v-64h36q6 -24 6 -49q0 -22 -6 -46h-36v-54q-15 -2 -27.5 -3.5t-28.5 -1.5q-14 0 -26.5 1t-29.5 4v54h-202l-13 21l155 342q29 -3 53.5 -10.5t49.5 -24.5zM329 2 +q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5z" /> + <glyph glyph-name="onethird" unicode="&#x2153;" horiz-adv-x="943" +d="M346 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM50 305q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281zM621 296 +q-4 15 -5 28t-1 25t1 24.5t5 27.5h279l12 -21l-85 -129q46 -11 69.5 -42.5t23.5 -73.5q0 -37 -14.5 -64.5t-40 -46t-60.5 -28t-75 -9.5q-44 0 -77.5 7t-58.5 16q1 29 11 57.5t22 46.5q17 -8 42.5 -16t51.5 -8q28 0 48.5 11t20.5 35q0 17 -14.5 29.5t-46.5 12.5 +q-8 0 -17.5 -1t-29.5 -7l-18 21l72 105h-115z" /> + <glyph glyph-name="twothirds" unicode="&#x2154;" horiz-adv-x="972" +d="M243 414h108q4 -17 5 -29.5t1 -24.5t-1 -25t-5 -30h-318l-9 23l109 132q35 42 51 68.5t16 43.5q0 18 -13 28t-36 10q-24 0 -42.5 -6.5t-47.5 -19.5q-10 20 -19 46.5t-12 55.5q25 14 63 23.5t75 9.5q75 0 120.5 -35.5t45.5 -99.5q0 -24 -8 -46.5t-20 -42.5t-26 -37 +t-26 -31zM375 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM650 296q-4 15 -5 28t-1 25t1 24.5t5 27.5h279l12 -21l-85 -129q46 -11 69.5 -42.5t23.5 -73.5q0 -37 -14.5 -64.5t-40 -46t-60.5 -28t-75 -9.5 +q-44 0 -77.5 7t-58.5 16q1 29 11 57.5t22 46.5q17 -8 42.5 -16t51.5 -8q28 0 48.5 11t20.5 35q0 17 -14.5 29.5t-46.5 12.5q-8 0 -17.5 -1t-29.5 -7l-18 21l72 105h-115z" /> + <glyph glyph-name="oneeighth" unicode="&#x215b;" horiz-adv-x="966" +d="M50 305q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281zM346 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM924 298 +q0 -25 -14.5 -46t-31.5 -35q25 -15 45 -42t20 -62q0 -34 -15 -58t-39.5 -39t-57.5 -22t-69 -7q-38 0 -71.5 7t-59.5 22t-41 39t-15 58q0 36 20.5 62.5t45.5 41.5q-17 14 -31 34.5t-14 46.5q0 50 44 83.5t122 33.5q76 0 119 -33.5t43 -83.5zM808 119q0 15 -13 27t-36 20 +q-20 -8 -33 -20t-13 -27q0 -13 10 -25t39 -12q24 0 35 12t11 25zM718 292q0 -14 12 -23t32 -14q15 5 28 15t13 22t-9.5 22.5t-31.5 10.5q-23 0 -33.5 -11t-10.5 -22z" /> + <glyph glyph-name="threeeighths" unicode="&#x215c;" horiz-adv-x="949" +d="M51 600q-4 15 -5 28t-1 25t1 24.5t5 27.5h279l12 -21l-85 -129q46 -11 69.5 -42.5t23.5 -73.5q0 -37 -14.5 -64.5t-40 -46t-60.5 -28t-75 -9.5q-44 0 -77.5 7t-58.5 16q1 29 11 57.5t22 46.5q17 -8 42.5 -16t51.5 -8q28 0 48.5 11t20.5 35q0 17 -14.5 29.5t-46.5 12.5 +q-8 0 -17.5 -1t-29.5 -7l-18 21l72 105h-115zM329 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM907 298q0 -25 -14.5 -46t-31.5 -35q25 -15 45 -42t20 -62q0 -34 -15 -58t-39.5 -39t-57.5 -22t-69 -7 +q-38 0 -71.5 7t-59.5 22t-41 39t-15 58q0 36 20.5 62.5t45.5 41.5q-17 14 -31 34.5t-14 46.5q0 50 44 83.5t122 33.5q76 0 119 -33.5t43 -83.5zM791 119q0 15 -13 27t-36 20q-20 -8 -33 -20t-13 -27q0 -13 10 -25t39 -12q24 0 35 12t11 25zM701 292q0 -14 12 -23t32 -14 +q15 5 28 15t13 22t-9.5 22.5t-31.5 10.5q-23 0 -33.5 -11t-10.5 -22z" /> + <glyph glyph-name="fiveeighths" unicode="&#x215d;" horiz-adv-x="949" +d="M177 604l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5q2 26 7.5 54.5t21.5 51.5q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5 +t2 -27.5t-2 -28t-4 -23h-144zM329 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM907 298q0 -25 -14.5 -46t-31.5 -35q25 -15 45 -42t20 -62q0 -34 -15 -58t-39.5 -39t-57.5 -22t-69 -7q-38 0 -71.5 7 +t-59.5 22t-41 39t-15 58q0 36 20.5 62.5t45.5 41.5q-17 14 -31 34.5t-14 46.5q0 50 44 83.5t122 33.5q76 0 119 -33.5t43 -83.5zM791 119q0 15 -13 27t-36 20q-20 -8 -33 -20t-13 -27q0 -13 10 -25t39 -12q24 0 35 12t11 25zM701 292q0 -14 12 -23t32 -14q15 5 28 15t13 22 +t-9.5 22.5t-31.5 10.5q-23 0 -33.5 -11t-10.5 -22z" /> + <glyph glyph-name="seveneighths" unicode="&#x215e;" horiz-adv-x="889" +d="M346 686l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316zM269 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM847 298q0 -25 -14.5 -46t-31.5 -35 +q25 -15 45 -42t20 -62q0 -34 -15 -58t-39.5 -39t-57.5 -22t-69 -7q-38 0 -71.5 7t-59.5 22t-41 39t-15 58q0 36 20.5 62.5t45.5 41.5q-17 14 -31 34.5t-14 46.5q0 50 44 83.5t122 33.5q76 0 119 -33.5t43 -83.5zM731 119q0 15 -13 27t-36 20q-20 -8 -33 -20t-13 -27 +q0 -13 10 -25t39 -12q24 0 35 12t11 25zM641 292q0 -14 12 -23t32 -14q15 5 28 15t13 22t-9.5 22.5t-31.5 10.5q-23 0 -33.5 -11t-10.5 -22z" /> + <glyph glyph-name="onefifth" unicode="&#x2155;" horiz-adv-x="921" +d="M50 305q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281zM346 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM726 300 +l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5q2 26 7.5 54.5t21.5 51.5q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5t2 -27.5t-2 -28 +t-4 -23h-144z" /> + <glyph glyph-name="twofifths" unicode="&#x2156;" horiz-adv-x="950" +d="M243 414h108q4 -17 5 -29.5t1 -24.5t-1 -25t-5 -30h-318l-9 23l109 132q35 42 51 68.5t16 43.5q0 18 -13 28t-36 10q-24 0 -42.5 -6.5t-47.5 -19.5q-10 20 -19 46.5t-12 55.5q25 14 63 23.5t75 9.5q75 0 120.5 -35.5t45.5 -99.5q0 -24 -8 -46.5t-20 -42.5t-26 -37 +t-26 -31zM375 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM755 300l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5q2 26 7.5 54.5t21.5 51.5 +q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5t2 -27.5t-2 -28t-4 -23h-144z" /> + <glyph glyph-name="threefifths" unicode="&#x2157;" horiz-adv-x="904" +d="M51 600q-4 15 -5 28t-1 25t1 24.5t5 27.5h279l12 -21l-85 -129q46 -11 69.5 -42.5t23.5 -73.5q0 -37 -14.5 -64.5t-40 -46t-60.5 -28t-75 -9.5q-44 0 -77.5 7t-58.5 16q1 29 11 57.5t22 46.5q17 -8 42.5 -16t51.5 -8q28 0 48.5 11t20.5 35q0 17 -14.5 29.5t-46.5 12.5 +q-8 0 -17.5 -1t-29.5 -7l-18 21l72 105h-115zM329 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM709 300l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5 +q2 26 7.5 54.5t21.5 51.5q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5t2 -27.5t-2 -28t-4 -23h-144z" /> + <glyph glyph-name="fourfifths" unicode="&#x2158;" horiz-adv-x="953" +d="M181 454h58v64q15 2 29 3t29 1q14 0 26.5 -1t27.5 -3v-64h36q6 -24 6 -49q0 -22 -6 -46h-36v-54q-15 -2 -27.5 -3.5t-28.5 -1.5q-14 0 -26.5 1t-29.5 4v54h-202l-13 21l155 342q29 -3 53.5 -10.5t49.5 -24.5zM378 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5 +l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM758 300l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5q2 26 7.5 54.5t21.5 51.5q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10 +q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5t2 -27.5t-2 -28t-4 -23h-144z" /> + <glyph glyph-name="onesixth" unicode="&#x2159;" horiz-adv-x="918" +d="M50 305q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281zM346 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM812 403 +q8 -11 12 -27.5t4 -32.5q0 -18 -4 -37q-48 -2 -83.5 -16t-47.5 -43q16 9 35 12.5t36 3.5q25 0 49 -7t42 -22.5t29 -40.5t11 -60q0 -36 -14.5 -63t-38.5 -45.5t-55 -28t-64 -9.5q-82 0 -127 46t-45 124q0 51 15.5 95.5t48 77.5t81.5 52t116 21zM728 179q-24 0 -38 -13.5 +t-14 -34.5q0 -24 13.5 -37t35.5 -13t36 13t14 36q0 25 -13.5 37t-33.5 12z" /> + <glyph glyph-name="fivesixths" unicode="&#x215a;" horiz-adv-x="901" +d="M177 604l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5q2 26 7.5 54.5t21.5 51.5q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5 +t2 -27.5t-2 -28t-4 -23h-144zM329 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM795 403q8 -11 12 -27.5t4 -32.5q0 -18 -4 -37q-48 -2 -83.5 -16t-47.5 -43q16 9 35 12.5t36 3.5q25 0 49 -7t42 -22.5 +t29 -40.5t11 -60q0 -36 -14.5 -63t-38.5 -45.5t-55 -28t-64 -9.5q-82 0 -127 46t-45 124q0 51 15.5 95.5t48 77.5t81.5 52t116 21zM711 179q-24 0 -38 -13.5t-14 -34.5q0 -24 13.5 -37t35.5 -13t36 13t14 36q0 25 -13.5 37t-33.5 12z" /> + <glyph glyph-name="oneseventh" unicode="&#xf506;" horiz-adv-x="967" +d="M50 305q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281zM346 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM944 382 +l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316z" /> + <glyph glyph-name="twosevenths" unicode="&#xf507;" horiz-adv-x="996" +d="M243 414h108q4 -17 5 -29.5t1 -24.5t-1 -25t-5 -30h-318l-9 23l109 132q35 42 51 68.5t16 43.5q0 18 -13 28t-36 10q-24 0 -42.5 -6.5t-47.5 -19.5q-10 20 -19 46.5t-12 55.5q25 14 63 23.5t75 9.5q75 0 120.5 -35.5t45.5 -99.5q0 -24 -8 -46.5t-20 -42.5t-26 -37 +t-26 -31zM375 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM973 382l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316z" /> + <glyph glyph-name="threesevenths" unicode="&#xf508;" horiz-adv-x="950" +d="M51 600q-4 15 -5 28t-1 25t1 24.5t5 27.5h279l12 -21l-85 -129q46 -11 69.5 -42.5t23.5 -73.5q0 -37 -14.5 -64.5t-40 -46t-60.5 -28t-75 -9.5q-44 0 -77.5 7t-58.5 16q1 29 11 57.5t22 46.5q17 -8 42.5 -16t51.5 -8q28 0 48.5 11t20.5 35q0 17 -14.5 29.5t-46.5 12.5 +q-8 0 -17.5 -1t-29.5 -7l-18 21l72 105h-115zM329 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM927 382l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316z +" /> + <glyph glyph-name="foursevenths" unicode="&#xf509;" horiz-adv-x="999" +d="M181 454h58v64q15 2 29 3t29 1q14 0 26.5 -1t27.5 -3v-64h36q6 -24 6 -49q0 -22 -6 -46h-36v-54q-15 -2 -27.5 -3.5t-28.5 -1.5q-14 0 -26.5 1t-29.5 4v54h-202l-13 21l155 342q29 -3 53.5 -10.5t49.5 -24.5zM378 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5 +l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM976 382l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316z" /> + <glyph glyph-name="fivesevenths" unicode="&#xf50a;" horiz-adv-x="950" +d="M177 604l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5q2 26 7.5 54.5t21.5 51.5q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5 +t2 -27.5t-2 -28t-4 -23h-144zM329 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM927 382l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316z" /> + <glyph glyph-name="sixsevenths" unicode="&#xf50b;" horiz-adv-x="965" +d="M285 707q8 -11 12 -27.5t4 -32.5q0 -18 -4 -37q-48 -2 -83.5 -16t-47.5 -43q16 9 35 12.5t36 3.5q25 0 49 -7t42 -22.5t29 -40.5t11 -60q0 -36 -14.5 -63t-38.5 -45.5t-55 -28t-64 -9.5q-82 0 -127 46t-45 124q0 51 15.5 95.5t48 77.5t81.5 52t116 21zM201 483 +q-24 0 -38 -13.5t-14 -34.5q0 -24 13.5 -37t35.5 -13t36 13t14 36q0 25 -13.5 37t-33.5 12zM344 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM942 382l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161 +q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316z" /> + <glyph glyph-name="oneninth" unicode="&#xf50c;" horiz-adv-x="945" +d="M50 305q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281zM346 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM661 -14 +q-8 11 -12 27.5t-4 32.5q0 18 4 37q48 2 83.5 16t47.5 43q-16 -9 -35 -12.5t-36 -3.5q-26 0 -49.5 7t-41.5 22.5t-29 40.5t-11 60q0 36 14.5 63t38.5 45.5t55 28t64 9.5q82 0 127 -46t45 -124q0 -51 -16 -95.5t-48 -77.5t-81 -52.5t-116 -20.5zM745 210q24 0 38 13.5 +t14 34.5q0 24 -13.5 37t-35.5 13t-36 -13t-14 -36q0 -25 13.5 -37t33.5 -12z" /> + <glyph glyph-name="twoninths" unicode="&#xf50d;" horiz-adv-x="974" +d="M375 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM690 -14q-8 11 -12 27.5t-4 32.5q0 18 4 37q48 2 83.5 16t47.5 43q-16 -9 -35 -12.5t-36 -3.5q-26 0 -49.5 7t-41.5 22.5t-29 40.5t-11 60 +q0 36 14.5 63t38.5 45.5t55 28t64 9.5q82 0 127 -46t45 -124q0 -51 -16 -95.5t-48 -77.5t-81 -52.5t-116 -20.5zM774 210q24 0 38 13.5t14 34.5q0 24 -13.5 37t-35.5 13t-36 -13t-14 -36q0 -25 13.5 -37t33.5 -12zM243 414h108q4 -17 5 -29.5t1 -24.5t-1 -25t-5 -30h-318 +l-9 23l109 132q35 42 51 68.5t16 43.5q0 18 -13 28t-36 10q-24 0 -42.5 -6.5t-47.5 -19.5q-10 20 -19 46.5t-12 55.5q25 14 63 23.5t75 9.5q75 0 120.5 -35.5t45.5 -99.5q0 -24 -8 -46.5t-20 -42.5t-26 -37t-26 -31z" /> + <glyph glyph-name="fourninths" unicode="&#xf50e;" horiz-adv-x="977" +d="M181 454h58v64q15 2 29 3t29 1q14 0 26.5 -1t27.5 -3v-64h36q6 -24 6 -49q0 -22 -6 -46h-36v-54q-15 -2 -27.5 -3.5t-28.5 -1.5q-14 0 -26.5 1t-29.5 4v54h-202l-13 21l155 342q29 -3 53.5 -10.5t49.5 -24.5zM378 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5 +l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM693 -14q-8 11 -12 27.5t-4 32.5q0 18 4 37q48 2 83.5 16t47.5 43q-16 -9 -35 -12.5t-36 -3.5q-26 0 -49.5 7t-41.5 22.5t-29 40.5t-11 60q0 36 14.5 63t38.5 45.5t55 28t64 9.5q82 0 127 -46t45 -124 +q0 -51 -16 -95.5t-48 -77.5t-81 -52.5t-116 -20.5zM777 210q24 0 38 13.5t14 34.5q0 24 -13.5 37t-35.5 13t-36 -13t-14 -36q0 -25 13.5 -37t33.5 -12z" /> + <glyph glyph-name="fiveninths" unicode="&#xf50f;" horiz-adv-x="928" +d="M177 604l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5q2 26 7.5 54.5t21.5 51.5q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5 +t2 -27.5t-2 -28t-4 -23h-144zM329 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM644 -14q-8 11 -12 27.5t-4 32.5q0 18 4 37q48 2 83.5 16t47.5 43q-16 -9 -35 -12.5t-36 -3.5q-26 0 -49.5 7t-41.5 22.5 +t-29 40.5t-11 60q0 36 14.5 63t38.5 45.5t55 28t64 9.5q82 0 127 -46t45 -124q0 -51 -16 -95.5t-48 -77.5t-81 -52.5t-116 -20.5zM728 210q24 0 38 13.5t14 34.5q0 24 -13.5 37t-35.5 13t-36 -13t-14 -36q0 -25 13.5 -37t33.5 -12z" /> + <glyph glyph-name="sevenninths" unicode="&#xf510;" horiz-adv-x="868" +d="M346 686l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316zM269 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5zM584 -14q-8 11 -12 27.5t-4 32.5 +q0 18 4 37q48 2 83.5 16t47.5 43q-16 -9 -35 -12.5t-36 -3.5q-26 0 -49.5 7t-41.5 22.5t-29 40.5t-11 60q0 36 14.5 63t38.5 45.5t55 28t64 9.5q82 0 127 -46t45 -124q0 -51 -16 -95.5t-48 -77.5t-81 -52.5t-116 -20.5zM668 210q24 0 38 13.5t14 34.5q0 24 -13.5 37 +t-35.5 13t-36 -13t-14 -36q0 -25 13.5 -37t33.5 -12z" /> + <glyph glyph-name="eightninths" unicode="&#xf511;" horiz-adv-x="982" +d="M373 602q0 -25 -14.5 -46t-31.5 -35q25 -15 45 -42t20 -62q0 -34 -15 -58t-39.5 -39t-57.5 -22t-69 -7q-38 0 -71.5 7t-59.5 22t-41 39t-15 58q0 36 20.5 62.5t45.5 41.5q-17 14 -31 34.5t-14 46.5q0 50 44 83.5t122 33.5q76 0 119 -33.5t43 -83.5zM257 423q0 15 -13 27 +t-36 20q-20 -8 -33 -20t-13 -27q0 -13 10 -25t39 -12q24 0 35 12t11 25zM167 596q0 -14 12 -23t32 -14q15 5 28 15t13 22t-9.5 22.5t-31.5 10.5q-23 0 -33.5 -11t-10.5 -22zM383 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5 +q16 0 34 -0.5t45 -5.5zM698 -14q-8 11 -12 27.5t-4 32.5q0 18 4 37q48 2 83.5 16t47.5 43q-16 -9 -35 -12.5t-36 -3.5q-26 0 -49.5 7t-41.5 22.5t-29 40.5t-11 60q0 36 14.5 63t38.5 45.5t55 28t64 9.5q82 0 127 -46t45 -124q0 -51 -16 -95.5t-48 -77.5t-81 -52.5 +t-116 -20.5zM782 210q24 0 38 13.5t14 34.5q0 24 -13.5 37t-35.5 13t-36 -13t-14 -36q0 -25 13.5 -37t33.5 -12z" /> + <glyph glyph-name="partialdiff" unicode="&#x2202;" horiz-adv-x="599" +d="M74 668q33 21 79 36t111 15q83 0 139 -32t89.5 -84.5t48 -119.5t14.5 -137q0 -187 -74 -272.5t-209 -85.5q-42 0 -84.5 12t-77.5 40.5t-57 74.5t-22 114q0 60 20.5 105t53.5 75t73.5 45t81.5 15q50 0 78.5 -11.5t40.5 -19.5q-11 66 -45 102.5t-91 36.5q-32 0 -63 -9 +t-58 -23q-22 32 -33.5 63.5t-14.5 59.5zM284 128q29 0 48 13t30.5 36.5t17 56.5t6.5 73q-23 12 -48.5 18t-45.5 6q-47 0 -71 -29t-24 -74q0 -47 22.5 -73.5t64.5 -26.5z" /> + <glyph glyph-name="Delta" unicode="&#x2206;" horiz-adv-x="637" +d="M229 706q26 3 47.5 5t43.5 2q20 0 41 -2t50 -5l224 -706h-633zM409 150q-14 48 -25 87.5t-21.5 77.5t-21.5 78t-25 90q-26 -85 -49.5 -165t-49.5 -168h192z" /> + <glyph glyph-name="product" unicode="&#x220f;" horiz-adv-x="745" +d="M105 566h-81q-9 42 -9 77q0 34 9 76h698q4 -21 6 -40t2 -36t-2 -36.5t-6 -40.5h-80v-742q-53 -9 -88 -9q-37 0 -89 9v742h-183v-742q-53 -9 -88 -9q-37 0 -89 9v742z" /> + <glyph glyph-name="summation" unicode="&#x2211;" horiz-adv-x="565" +d="M33 -177l-18 27l223 443l-211 396l17 30h498q4 -22 6 -41t2 -36q0 -33 -8 -79h-253l134 -264l-156 -320h267q4 -22 6 -41t2 -36q0 -33 -8 -79h-501z" /> + <glyph glyph-name="minus" unicode="&#x2212;" horiz-adv-x="579" +d="M71 282q-3 20 -5 36.5t-2 34.5q0 17 2 34.5t5 37.5h436q4 -20 6 -37t2 -34t-2 -34.5t-6 -37.5h-436z" /> + <glyph glyph-name="uni2215" unicode="&#x2215;" horiz-adv-x="96" +d="M-82 2q-17 -3 -36.5 -4.5t-37.5 -1.5q-16 0 -34 0.5t-45 5.5l413 707q17 3 36.5 4.5t37.5 1.5q16 0 34 -0.5t45 -5.5z" /> + <glyph glyph-name="radical" unicode="&#x221a;" horiz-adv-x="585" +d="M130 274h-89q-5 21 -6.5 39t-1.5 35t1.5 35t6.5 39h215l58 -220q16 57 35 121.5t38 130t37.5 129.5t34.5 121q18 3 40 4.5t40 1.5q17 0 40 -1.5t49 -6.5l-230 -702l-36 -4t-51 -2q-28 0 -48 2t-38 4z" /> + <glyph glyph-name="infinity" unicode="&#x221e;" horiz-adv-x="759" +d="M544 73q-42 0 -84.5 21t-83.5 71q-41 -46 -80 -67.5t-81 -21.5q-38 0 -70 14.5t-55 40t-36.5 61t-13.5 77.5t13.5 77.5t36.5 61.5t55 40.5t70 14.5q42 0 84 -22t83 -71q42 47 81 68.5t81 21.5q37 0 69.5 -14.5t55.5 -40t36.5 -61t13.5 -77.5t-13.5 -77.5t-36.5 -61.5 +t-55.5 -40.5t-69.5 -14.5zM544 325q-17 0 -34 -12t-46 -47q27 -35 44.5 -46t34.5 -11q19 0 32.5 15.5t13.5 42.5q0 26 -13.5 42t-31.5 16zM214 211q17 0 34 11.5t46 47.5q-28 34 -45.5 45.5t-33.5 11.5q-18 0 -31.5 -15.5t-13.5 -42.5q0 -26 13.5 -42t30.5 -16z" /> + <glyph glyph-name="integral" unicode="&#x222b;" horiz-adv-x="383" +d="M387 567q-8 2 -27 5.5t-35 3.5q-25 0 -43 -12.5t-16 -50.5l19 -556q2 -54 -15.5 -92.5t-48.5 -64t-71.5 -37.5t-83.5 -12q-36 0 -59.5 4.5t-36.5 9.5q2 42 8.5 75.5t18.5 65.5q6 -2 22 -5.5t36 -3.5q26 0 45 14t17 51l-19 552q-2 53 13 91.5t42.5 64t66.5 38t85 12.5 +q30 0 53 -3.5t55 -12.5q-2 -40 -8 -72.5t-18 -64.5z" /> + <glyph glyph-name="approxequal" unicode="&#x2248;" horiz-adv-x="579" +d="M206 553q23 0 44 -6t43 -14l38 -12t39 -6q9 0 17 1.5t17.5 6t20.5 12t25 20.5q26 -25 43.5 -55t26.5 -58q-25 -29 -63 -48.5t-86 -19.5q-24 0 -46.5 6t-44.5 14q-20 6 -38 11.5t-35 5.5q-9 0 -17.5 -1t-17.5 -5t-19.5 -12t-25.5 -21q-24 25 -42.5 53.5t-26.5 58.5 +q24 28 62 48.5t86 20.5zM206 334q23 0 44 -6t43 -14l38 -12t39 -6q9 0 17 1.5t17.5 6t20.5 12t25 20.5q26 -25 43.5 -55t26.5 -58q-25 -29 -63 -48.5t-86 -19.5q-24 0 -46.5 6t-44.5 14q-20 6 -38 11.5t-35 5.5q-9 0 -17.5 -1t-17.5 -5t-19.5 -12t-25.5 -21 +q-24 25 -42.5 53.5t-26.5 58.5q24 28 62 48.5t86 20.5z" /> + <glyph glyph-name="notequal" unicode="&#x2260;" horiz-adv-x="579" +d="M259 173l-43 -92q-8 -4 -23 -6t-30 -2q-13 0 -27 1.5t-25 6.5l43 92h-83q-3 20 -5 36.5t-2 34.5q0 17 2 34.5t5 37.5h149l34 73h-183q-3 20 -5 36.5t-2 34.5q0 17 2 34.5t5 37.5h250l42 91q8 4 23 6t30 2q13 0 27 -1.5t25 -6.5l-42 -91h81q4 -20 6 -37t2 -34t-2 -34.5 +t-6 -37.5h-148l-34 -73h182q4 -20 6 -37t2 -34t-2 -34.5t-6 -37.5h-248z" /> + <glyph glyph-name="lessequal" unicode="&#x2264;" horiz-adv-x="579" +d="M240 409l260 -82q5 -20 5.5 -38t0.5 -35q0 -7 -0.5 -18t-1.5 -23t-2.5 -23.5t-3.5 -20.5l-415 164q-10 41 -10 79q0 37 10 73l415 164q4 -17 6 -42.5t2 -39.5q0 -17 -0.5 -34t-5.5 -37zM71 -11q-3 20 -5 36.5t-2 34.5q0 17 2 34.5t5 37.5h436q4 -20 6 -37t2 -34t-2 -34.5 +t-6 -37.5h-436z" /> + <glyph glyph-name="greaterequal" unicode="&#x2265;" horiz-adv-x="579" +d="M341.015 413l-259.984 -87q-4.99902 -20 -5.49902 -38t-0.5 -35q0 -7 0.5 -18t1.5 -23q0.999023 -12 2.49902 -23.5t3.5 -20.5l414.975 169q10 41 10 79q0 37 -10 73l-414.975 169q-4 -17 -5.99902 -42.5q-2 -25.5 -2 -39.5q0 -17 0.5 -34t5.49902 -37zM508.004 -10 +q3 20 5 36.5t2 34.5q0 17 -2 34.5t-5 37.5h-435.973q-4 -20 -6 -37t-2 -34t2 -34.5t6 -37.5h435.973z" /> + <glyph glyph-name="lozenge" unicode="&#x25ca;" horiz-adv-x="581" +d="M384 361l-91 202l-91 -202l91 -205zM30 361l182 358q24 4 46 5t35 1q16 0 36.5 -1t41.5 -6l180 -357l-182 -359q-25 -5 -46.5 -6t-35.5 -1q-15 0 -35.5 1.5t-41.5 6.5z" /> + <glyph glyph-name="ff" unicode="&#xfb00;" horiz-adv-x="922" +d="M225 155v-153q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515h382q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-213v-80h172q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-172zM686 155v-153q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515h382 +q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-213v-80h172q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-172z" /> + <glyph glyph-name="fi" unicode="&#xfb01;" horiz-adv-x="742" +d="M225 155v-153q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515h382q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-213v-80h172q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-172zM686 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2 +q19 0 41 -2t43 -7v-516z" /> + <glyph glyph-name="fl" unicode="&#xfb02;" horiz-adv-x="898" +d="M225 155v-153q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515h382q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-213v-80h172q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-172zM686 141h189q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-358l1 517 +q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7z" /> + <glyph glyph-name="ffi" unicode="&#xfb03;" horiz-adv-x="1203" +d="M225 155v-153q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515h382q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-213v-80h172q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-172zM686 155v-153q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515h382 +q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-213v-80h172q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-172zM1147 1q-26 -4 -47 -6t-38 -2t-38 2t-46 6v516q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-516z" /> + <glyph glyph-name="ffl" unicode="&#xfb04;" horiz-adv-x="1359" +d="M225 155v-153q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515h382q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-213v-80h172q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-172zM687 155v-153q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515h382 +q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-213v-80h172q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-172zM1147 141h189q5 -20 6.5 -37t1.5 -33t-1.5 -33.5t-6.5 -37.5h-358l1 517q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7z" /> + <glyph glyph-name="zero.alt" unicode="&#xf800;" horiz-adv-x="577" +d="M283 -12q-63 0 -109.5 20t-78 56t-47 85.5t-15.5 108.5t17.5 108.5t50.5 85.5t81 56.5t110 20.5q63 0 110 -20.5t78.5 -56.5t47.5 -85.5t16 -108.5t-18 -108.5t-52 -85.5t-82.5 -56t-108.5 -20zM286 131q36 0 59.5 29t23.5 98q0 71 -24 100t-59 29q-40 0 -62.5 -29 +t-22.5 -100q0 -69 24 -98t61 -29z" /> + <glyph glyph-name="one.alt" unicode="&#xf801;" horiz-adv-x="480" +d="M89 282q-43 48 -62 121l282 126h42v-392h117q5 -20 6.5 -36t1.5 -32t-1.5 -32.5t-6.5 -36.5h-400q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h121v187z" /> + <glyph glyph-name="two.alt" unicode="&#xf802;" horiz-adv-x="519" +d="M27 0l-9 33l120 120q35 35 61 61.5t43 47.5t25.5 38.5t8.5 35.5q0 24 -18 37.5t-53 13.5q-32 0 -68.5 -12.5t-68.5 -29.5q-16 29 -27 65t-13 67q38 19 89 35.5t115 16.5q43 0 83 -10.5t71 -31.5t49 -53t18 -75q0 -27 -8 -51t-21 -46.5t-30 -43t-34 -38.5l-42 -45h155 +q5 -20 6.5 -35.5t1.5 -31.5t-1.5 -32t-6.5 -36h-446z" /> + <glyph glyph-name="three.alt" unicode="&#xf803;" horiz-adv-x="495" +d="M47 393q-5 19 -6.5 35.5t-1.5 31.5t1.5 29t6.5 34h375l15 -29l-115 -163q34 -4 59 -17.5t41.5 -33.5t24.5 -45t8 -53q0 -48 -19 -84.5t-52.5 -61t-79 -36.5t-97.5 -12q-33 0 -58.5 1.5t-48 5.5t-45 10t-48.5 14q2 31 12.5 67t25.5 60q35 -10 69.5 -17.5t72.5 -7.5 +q21 0 40 3t33.5 10t22.5 18.5t8 28.5q0 26 -23 42t-65 16q-27 0 -48.5 -3t-28.5 -5l-17 25l103 137h-165z" /> + <glyph glyph-name="four.alt" unicode="&#xf804;" horiz-adv-x="533" +d="M449 85v-82q-23 -4 -38 -6t-29 -2q-18 0 -40.5 2t-42.5 5v83h-268l-16 25l182 428q35 -5 76 -19.5t73 -35.5l-119 -267h72v78q23 3 43.5 5t34.5 2q18 0 35 -2t37 -4v-79h44q5 -20 6.5 -33.5t1.5 -29.5t-1.5 -32t-6.5 -36h-44z" /> + <glyph glyph-name="five.alt" unicode="&#xf805;" horiz-adv-x="493" +d="M203 393l-2 -58q12 2 34.5 4t41.5 2q80 0 127 -41.5t47 -116.5q0 -44 -13.5 -80t-43.5 -61.5t-76.5 -39.5t-112.5 -14q-30 0 -60 3.5t-55.5 9t-45 11t-30.5 10.5q2 36 13.5 71t25.5 58q36 -14 70 -22t65 -8q56 0 76 14t20 37q0 26 -22 39.5t-61 13.5q-35 0 -69.5 -8.5 +t-57.5 -17.5l-19 18l14 306h341q5 -20 6.5 -34t1.5 -29t-1.5 -31.5t-6.5 -35.5h-207z" /> + <glyph glyph-name="six.alt" unicode="&#xf806;" horiz-adv-x="512" +d="M31 211q0 64 21.5 121t64 101t107 71.5t151.5 33.5q6 -6 14 -25t8 -50q0 -21 -1.5 -31.5t-3.5 -18.5q-29 -1 -57.5 -6.5t-53 -16.5t-44 -26.5t-29.5 -36.5q7 5 31 16t66 11q32 0 64 -9.5t57.5 -30t41 -53t15.5 -77.5q0 -50 -19.5 -87t-51 -61t-71.5 -36t-82 -12 +q-112 0 -170 58t-58 165zM261 243q-31 0 -48.5 -16.5t-17.5 -50.5q0 -35 17 -51.5t46 -16.5q27 0 45 17.5t18 50.5q0 34 -17 50.5t-43 16.5z" /> + <glyph glyph-name="seven.alt" unicode="&#xf807;" horiz-adv-x="509" +d="M491 523l13 -30l-269 -509q-38 11 -77.5 31t-71.5 43l178 321h-226q-5 19 -6.5 39t-1.5 35t1.5 32.5t6.5 37.5h453z" /> + <glyph glyph-name="eight.alt" unicode="&#xf808;" horiz-adv-x="563" +d="M36 146q0 48 24.5 81t62.5 52q-29 19 -45.5 46.5t-16.5 58.5q0 65 57.5 105t165.5 40q104 0 160.5 -40t56.5 -105q0 -32 -16 -59t-45 -47q37 -18 62 -51t25 -81q0 -42 -18.5 -72t-51.5 -49t-77.5 -28t-96.5 -9q-54 0 -99 9t-78 28t-51.5 49t-18.5 72zM353 152 +q0 23 -16.5 38.5t-53.5 25.5q-42 -11 -57.5 -27.5t-15.5 -36.5q0 -23 19 -39t54 -16t52.5 17.5t17.5 37.5zM220 383q0 -18 13.5 -32.5t48.5 -22.5q35 8 48 22.5t13 32.5q0 14 -15 28.5t-44 14.5q-32 0 -48 -15t-16 -28z" /> + <glyph glyph-name="nine.alt" unicode="&#xf809;" horiz-adv-x="512" +d="M481.002 306.013q0 -63.9961 -21.499 -120.992q-21.498 -56.9971 -63.9961 -100.994q-42.4971 -43.9971 -106.993 -71.4951q-64.4961 -27.499 -151.491 -33.498q-5.99902 5.99902 -13.999 24.998q-7.99902 18.999 -7.99902 49.9971q0 20.999 1.5 31.498t3.49902 18.499 +q28.999 1 57.4971 6.49902q28.498 5.5 52.9971 16.499q24.498 11 43.9971 26.499t29.498 36.4971q-7 -4.99902 -30.998 -15.999q-23.999 -10.999 -65.9961 -10.999q-31.998 0 -63.9961 9.5q-31.998 9.49902 -57.4961 29.998q-25.499 20.498 -40.998 52.9961t-15.499 77.4961 +q0 49.9961 19.499 86.9941t50.9971 60.9961q31.498 23.999 71.4951 35.998q39.998 11.999 81.9951 11.999q111.993 0 169.99 -57.9961q57.9961 -57.9971 57.9961 -164.99zM251.016 274.015q30.998 0 48.4971 16.499t17.499 50.4971q0 34.998 -16.999 51.4971 +t-45.9971 16.499q-26.998 0 -44.9971 -17.499t-17.999 -50.4971q0 -33.998 16.999 -50.4971t42.9971 -16.499z" /> + <glyph glyph-name="zero.sups" unicode="&#xf80a;" +d="M280 625q0 46 -13 73t-42 27t-42 -27t-13 -73q0 -45 13 -73t42 -28t42 28t13 73zM33 625q0 41 11.5 79.5t35 68.5t59.5 48t86 18q49 0 85 -18t60 -48t35.5 -68.5t11.5 -79.5t-11.5 -79.5t-35.5 -68.5t-60 -48t-85 -18q-50 0 -86 18t-59.5 48t-35 68.5t-11.5 79.5z" /> + <glyph glyph-name="one.sups" unicode="&#xf80b;" +d="M91 425q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281z" /> + <glyph glyph-name="two.sups" unicode="&#xf80c;" +d="M255 534h108q4 -17 5 -29.5t1 -24.5t-1 -25t-5 -30h-318l-9 23l109 132q35 42 51 68.5t16 43.5q0 18 -13 28t-36 10q-24 0 -42.5 -6.5t-47.5 -19.5q-10 20 -19 46.5t-12 55.5q25 14 63 23.5t75 9.5q75 0 120.5 -35.5t45.5 -99.5q0 -24 -8 -46.5t-20 -42.5t-26 -37 +t-26 -31z" /> + <glyph glyph-name="three.sups" unicode="&#xf80d;" +d="M72 720q-4 15 -5 28t-1 25t1 24.5t5 27.5h279l12 -21l-85 -129q46 -11 69.5 -42.5t23.5 -73.5q0 -37 -14.5 -64.5t-40 -46t-60.5 -28t-75 -9.5q-44 0 -77.5 7t-58.5 16q1 29 11 57.5t22 46.5q17 -8 42.5 -16t51.5 -8q28 0 48.5 11t20.5 35q0 17 -14.5 29.5t-46.5 12.5 +q-8 0 -17.5 -1t-29.5 -7l-18 21l72 105h-115z" /> + <glyph glyph-name="four.sups" unicode="&#xf80e;" +d="M190 574h58v64q15 2 29 3t29 1q14 0 26.5 -1t27.5 -3v-64h36q6 -24 6 -49q0 -22 -6 -46h-36v-54q-15 -2 -27.5 -3.5t-28.5 -1.5q-14 0 -26.5 1t-29.5 4v54h-202l-13 21l155 342q29 -3 53.5 -10.5t49.5 -24.5z" /> + <glyph glyph-name="five.sups" unicode="&#xf80f;" +d="M197 724l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5q2 26 7.5 54.5t21.5 51.5q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5 +t2 -27.5t-2 -28t-4 -23h-144z" /> + <glyph glyph-name="six.sups" unicode="&#xf810;" +d="M318 827q8 -11 12 -27.5t4 -32.5q0 -18 -4 -37q-48 -2 -83.5 -16t-47.5 -43q16 9 35 12.5t36 3.5q25 0 49 -7t42 -22.5t29 -40.5t11 -60q0 -36 -14.5 -63t-38.5 -45.5t-55 -28t-64 -9.5q-82 0 -127 46t-45 124q0 51 15.5 95.5t48 77.5t81.5 52t116 21zM234 603 +q-24 0 -38 -13.5t-14 -34.5q0 -24 13.5 -37t35.5 -13t36 13t14 36q0 25 -13.5 37t-33.5 12z" /> + <glyph glyph-name="seven.sups" unicode="&#xf811;" +d="M395 806l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316z" /> + <glyph glyph-name="eight.sups" unicode="&#xf812;" +d="M390 722q0 -25 -14.5 -46t-31.5 -35q25 -15 45 -42t20 -62q0 -34 -15 -58t-39.5 -39t-57.5 -22t-69 -7q-38 0 -71.5 7t-59.5 22t-41 39t-15 58q0 36 20.5 62.5t45.5 41.5q-17 14 -31 34.5t-14 46.5q0 50 44 83.5t122 33.5q76 0 119 -33.5t43 -83.5zM274 543q0 15 -13 27 +t-36 20q-20 -8 -33 -20t-13 -27q0 -13 10 -25t39 -12q24 0 35 12t11 25zM184 716q0 -14 12 -23t32 -14q15 5 28 15t13 22t-9.5 22.5t-31.5 10.5q-23 0 -33.5 -11t-10.5 -22z" /> + <glyph glyph-name="nine.sups" unicode="&#xf813;" +d="M132 410q-8 11 -12 27.5t-4 32.5q0 18 4 37q48 2 83.5 16t47.5 43q-16 -9 -35 -12.5t-36 -3.5q-26 0 -49.5 7t-41.5 22.5t-29 40.5t-11 60q0 36 14.5 63t38.5 45.5t55 28t64 9.5q82 0 127 -46t45 -124q0 -51 -16 -95.5t-48 -77.5t-81 -52.5t-116 -20.5zM216 634 +q24 0 38 13.5t14 34.5q0 24 -13.5 37t-35.5 13t-36 -13t-14 -36q0 -25 13.5 -37t33.5 -12z" /> + <glyph glyph-name="zero.sinf" unicode="&#xf814;" +d="M280 81q0 46 -13 73t-42 27t-42 -27t-13 -73q0 -45 13 -73t42 -28t42 28t13 73zM33 81q0 41 11.5 79.5t35 68.5t59.5 48t86 18q49 0 85 -18t60 -48t35.5 -68.5t11.5 -79.5t-11.5 -79.5t-35.5 -68.5t-60 -48t-85 -18q-50 0 -86 18t-59.5 48t-35 68.5t-11.5 79.5z" /> + <glyph glyph-name="one.sinf" unicode="&#xf815;" +d="M91 -119q-4 17 -5 30t-1 25t1 24t5 29h81v148l-69 -27q-17 23 -28.5 49t-17.5 49l203 80h33v-299h79q4 -17 5 -29t1 -24t-1 -25t-5 -30h-281z" /> + <glyph glyph-name="two.sinf" unicode="&#xf816;" +d="M255 -10h108q4 -17 5 -29.5t1 -24.5t-1 -25t-5 -30h-318l-9 23l109 132q35 42 51 68.5t16 43.5q0 18 -13 28t-36 10q-24 0 -42.5 -6.5t-47.5 -19.5q-10 20 -19 46.5t-12 55.5q25 14 63 23.5t75 9.5q75 0 120.5 -35.5t45.5 -99.5q0 -24 -8 -46.5t-20 -42.5t-26 -37 +t-26 -31z" /> + <glyph glyph-name="three.sinf" unicode="&#xf817;" +d="M72 176q-4 15 -5 28t-1 25t1 24.5t5 27.5h279l12 -21l-85 -129q46 -11 69.5 -42.5t23.5 -73.5q0 -37 -14.5 -64.5t-40 -46t-60.5 -28t-75 -9.5q-44 0 -77.5 7t-58.5 16q1 29 11 57.5t22 46.5q17 -8 42.5 -16t51.5 -8q28 0 48.5 11t20.5 35q0 17 -14.5 29.5t-46.5 12.5 +q-8 0 -17.5 -1t-29.5 -7l-18 21l72 105h-115z" /> + <glyph glyph-name="four.sinf" unicode="&#xf818;" +d="M190 30h58v64q15 2 29 3t29 1q14 0 26.5 -1t27.5 -3v-64h36q6 -24 6 -49q0 -22 -6 -46h-36v-54q-15 -2 -27.5 -3.5t-28.5 -1.5q-14 0 -26.5 1t-29.5 4v54h-202l-13 21l155 342q29 -3 53.5 -10.5t49.5 -24.5z" /> + <glyph glyph-name="five.sinf" unicode="&#xf819;" +d="M197 180l-1 -42h23q67 0 108.5 -29.5t41.5 -92.5q0 -75 -54 -112t-147 -37q-19 0 -53.5 3.5t-70.5 14.5q2 26 7.5 54.5t21.5 51.5q29 -8 51.5 -13t42.5 -5q39 0 55 10.5t16 28.5q0 15 -15.5 25t-46.5 10q-17 0 -36.5 -3t-41.5 -12l-16 15l10 234h249q2 -9 4 -22.5 +t2 -27.5t-2 -28t-4 -23h-144z" /> + <glyph glyph-name="six.sinf" unicode="&#xf81a;" +d="M318 283q8 -11 12 -27.5t4 -32.5q0 -18 -4 -37q-48 -2 -83.5 -16t-47.5 -43q16 9 35 12.5t36 3.5q25 0 49 -7t42 -22.5t29 -40.5t11 -60q0 -36 -14.5 -63t-38.5 -45.5t-55 -28t-64 -9.5q-82 0 -127 46t-45 124q0 51 15.5 95.5t48 77.5t81.5 52t116 21zM234 59 +q-24 0 -38 -13.5t-14 -34.5q0 -24 13.5 -37t35.5 -13t36 13t14 36q0 25 -13.5 37t-33.5 12z" /> + <glyph glyph-name="seven.sinf" unicode="&#xf81b;" +d="M395 262l-181 -395q-31 6 -57.5 15t-55.5 28l126 266h-161q-4 13 -5 26.5t-1 24.5q0 12 1 26.5t5 27.5h316z" /> + <glyph glyph-name="eight.sinf" unicode="&#xf81c;" +d="M390 178q0 -25 -14.5 -46t-31.5 -35q25 -15 45 -42t20 -62q0 -34 -15 -58t-39.5 -39t-57.5 -22t-69 -7q-38 0 -71.5 7t-59.5 22t-41 39t-15 58q0 36 20.5 62.5t45.5 41.5q-17 14 -31 34.5t-14 46.5q0 50 44 83.5t122 33.5q76 0 119 -33.5t43 -83.5zM274 -1q0 15 -13 27 +t-36 20q-20 -8 -33 -20t-13 -27q0 -13 10 -25t39 -12q24 0 35 12t11 25zM184 172q0 -14 12 -23t32 -14q15 5 28 15t13 22t-9.5 22.5t-31.5 10.5q-23 0 -33.5 -11t-10.5 -22z" /> + <glyph glyph-name="nine.sinf" unicode="&#xf81d;" +d="M132 -134q-8 11 -12 27.5t-4 32.5q0 18 4 37q48 2 83.5 16t47.5 43q-16 -9 -35 -12.5t-36 -3.5q-26 0 -49.5 7t-41.5 22.5t-29 40.5t-11 60q0 36 14.5 63t38.5 45.5t55 28t64 9.5q82 0 127 -46t45 -124q0 -51 -16 -95.5t-48 -77.5t-81 -52.5t-116 -20.5zM216 90 +q24 0 38 13.5t14 34.5q0 24 -13.5 37t-35.5 13t-36 -13t-14 -36q0 -25 13.5 -37t33.5 -12z" /> + <glyph glyph-name="caron.alt" horiz-adv-x="480" +d="M177 719q27 6 60 6q15 0 32.5 -1.5t33.5 -4.5l-23 -204q-23 -6 -48 -6q-13 0 -27.5 1.5t-27.5 4.5v204z" /> + <glyph glyph-name="commaaccent" horiz-adv-x="480" +d="M189 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="revcommaaccent" horiz-adv-x="480" +d="M292 587q-18 -4 -37 -5.5t-38 -1.5q-20 0 -39.5 1.5t-39.5 5.5l73 148q32 7 63 7q15 0 31 -1.5t36 -5.5z" /> + <glyph glyph-name="euro.alt" horiz-adv-x="540" +d="M270 177q24 -52 98 -52q14 0 26 1t24.5 4t27 7.5t33.5 11.5q14 -26 23.5 -59t12.5 -68q-27 -11 -48 -17.5t-40.5 -10.5t-38.5 -5t-41 -1q-48 0 -89.5 11t-74.5 34.5t-56 59t-33 84.5h-58q-4 12 -4 30q0 19 4 32h50v42h-50q-4 12 -4 30q0 19 4 32h59q12 49 36.5 84.5 +t58 58t74 33t84.5 10.5q36 0 74 -7t85 -27q0 -16 -4.5 -34.5t-10 -36t-11.5 -32.5t-10 -24q-24 10 -53.5 17.5t-56.5 7.5q-12 0 -25 -1.5t-26 -6.5t-24 -15t-18 -27h189q3 -14 3 -29q0 -18 -3 -33h-202v-20v-11.5t1 -10.5h201q3 -14 3 -29q0 -18 -3 -33h-187z" /> + <glyph glyph-name="dollar.alt" horiz-adv-x="480" +d="M168 207q-63 17 -99.5 53t-36.5 106q0 29 10.5 55.5t31 48t49.5 36t66 20.5v76q25 6 45 6t47 -6v-72q35 -3 73.5 -10.5t74.5 -19.5q0 -15 -3.5 -32t-8.5 -35t-11.5 -35t-13.5 -31q-11 5 -27 10.5t-34.5 10.5t-39 8.5t-39.5 3.5q-24 0 -36 -7.5t-12 -18.5t11.5 -17 +t33.5 -12l53 -14q68 -18 106.5 -55t38.5 -105q0 -30 -11 -58t-32 -51t-52 -40t-71 -25v-74q-23 -6 -45 -6q-20 0 -47 6v66q-42 2 -83.5 9t-83.5 24q2 33 12.5 70t27.5 63q38 -14 75 -21.5t68 -7.5q34 0 53.5 6.5t19.5 23.5q0 11 -12.5 20t-32.5 14z" /> + <glyph glyph-name="cent.alt" horiz-adv-x="376" +d="M173 -7q-73 15 -112 65t-39 129q0 73 39.5 125.5t111.5 68.5v61q25 6 43 6q17 0 40 -6v-57q21 -2 41 -6.5t46 -14.5q0 -27 -6 -58t-20 -59q-40 17 -73 17q-35 0 -59 -18.5t-24 -58.5q0 -44 24.5 -61t61.5 -17q20 0 36.5 5t34.5 14q4 -8 9.5 -21t9.5 -29t7 -34t3 -34 +q-26 -10 -48 -14.5t-43 -6.5v-51q-23 -6 -40 -6q-18 0 -43 6v55z" /> + <glyph glyph-name="sterling.alt" horiz-adv-x="513" +d="M445 363q-29 13 -54 19t-54 6q-22 0 -36 -6t-22 -16t-11 -23.5t-3 -27.5h138q5 -17 6.5 -29.5t1.5 -26.5t-1.5 -27.5t-6.5 -30.5h-131q-1 -25 -6.5 -41t-10.5 -23h216q5 -20 6.5 -36t1.5 -32t-1.5 -32.5t-6.5 -36.5h-430l-8 32l7 5q16 12 29 25.5t23 32t15.5 44.5t7.5 62 +h-61q-5 17 -6.5 30.5t-1.5 27.5t1.5 26.5t6.5 29.5h51v4q0 39 12.5 76.5t38.5 67.5t67.5 48t100.5 18q35 0 74 -7.5t87 -27.5q-3 -46 -16 -78.5t-24 -52.5z" /> + <glyph glyph-name="yen.alt" horiz-adv-x="539" +d="M353 81v-81q-26 -4 -46.5 -5t-37.5 -1t-37 1t-45 5v81h-121q-4 11 -5 20t-1 17t1 17t5 20h121v48h-121q-4 11 -5 20t-1 17t1 17t5 20h90l-147 240q17 3 43.5 4.5t49.5 1.5t42.5 -1t40.5 -5l89 -178l89 178q15 3 35 4.5t39 1.5q9 0 21.5 -0.5t25.5 -1t25 -2t21 -2.5 +l-146 -240h99q4 -11 5 -20t1 -17t-1 -17t-5 -20h-130v-48h130q4 -11 5 -20t1 -17t-1 -17t-5 -20h-130z" /> + <glyph glyph-name="florin.alt" horiz-adv-x="467" +d="M433 376q-5 2 -21.5 5.5t-34.5 3.5q-26 0 -43 -14t-21 -49l-3 -23h102q5 -24 6.5 -39.5t1.5 -31.5q0 -14 -1.5 -29t-6.5 -37h-119l-20 -161q-11 -97 -62.5 -150t-144.5 -53q-30 0 -56 3.5t-52 12.5q2 40 9 73t18 65l24 -6t38 -4q24 0 38.5 13t19.5 53l19 154h-82 +q-4 23 -5.5 39t-1.5 31q0 14 1.5 29t5.5 38h98l6 44q13 88 65 137t140 49q30 0 53 -3.5t55 -12.5q-2 -40 -8 -72.5t-18 -64.5z" /> + <glyph glyph-name="at.alt" horiz-adv-x="656" +d="M376 130q-25 -13 -45 -18t-51 -5q-20 0 -39 6t-33 19.5t-22.5 34t-8.5 49.5q0 43 14.5 78.5t39 61t57 40t69.5 14.5q34 0 60 -5t56 -15l-39 -198q2 -1 6.5 -2t15.5 -1q19 0 34 10t25 27t15.5 38.5t5.5 45.5q0 67 -46 103.5t-122 36.5q-60 0 -105 -19.5t-75.5 -51.5 +t-45.5 -73.5t-15 -85.5q0 -39 12.5 -67t34 -46t51 -26.5t63.5 -8.5q32 0 61.5 4.5t58.5 15.5q8 -13 13.5 -35.5t8.5 -40.5q-27 -14 -67.5 -21t-81.5 -7q-48 0 -92.5 13t-78 41t-53.5 71.5t-20 103.5q0 55 19.5 110.5t59.5 100.5t102 73t146 28q51 0 98 -13t82 -39.5t56 -66 +t21 -93.5q0 -44 -12.5 -82t-35 -66t-54 -43.5t-69.5 -15.5q-35 0 -53.5 7.5t-20.5 12.5zM363 325q-1 0 -4 0.5t-9 0.5q-33 0 -52 -29t-19 -71q0 -20 8.5 -28.5t23.5 -8.5t27 4z" /> + <glyph glyph-name="zero.alt2" horiz-adv-x="624" +d="M312 -12q-74 0 -126 28t-84.5 77t-47.5 115.5t-15 144.5q0 77 15 144t47.5 116.5t84.5 77.5t126 28t126 -28t84.5 -77.5t47.5 -116.5t15 -144q0 -78 -15 -144.5t-47.5 -115.5t-84.5 -77t-126 -28zM312 135q45 0 67 56t22 162q0 105 -21.5 160.5t-66.5 55.5 +q-46 0 -69.5 -55.5t-23.5 -160.5q0 -106 23 -162t69 -56z" /> + <glyph glyph-name="one.alt2" horiz-adv-x="526" +d="M89 452q-9 13 -18 30t-17 35t-14 36.5t-9 35.5l293 125h43v-564h128q9 -39 9 -74q0 -37 -9 -76h-428q-9 39 -9 76q0 35 9 74h130v344z" /> + <glyph glyph-name="two.alt2" horiz-adv-x="527" +d="M177 266q31 44 52 76.5t34 58t18.5 46t5.5 40.5q0 34 -24.5 55.5t-69.5 21.5q-35 0 -68 -12t-61 -28q-15 29 -28 69t-14 78q40 20 89 34t106 14q51 0 96 -15t78.5 -43.5t53 -69.5t19.5 -92q0 -35 -9.5 -68t-24.5 -64.5t-34.5 -62.5t-40.5 -62l-62 -92h181q9 -42 9 -73 +q0 -35 -9 -77h-450l-13 29z" /> + <glyph glyph-name="three.alt2" horiz-adv-x="539" +d="M43 556q-9 39 -9 76q0 36 9 75h423l18 -28l-142 -245q72 -13 112 -62.5t40 -127.5q0 -62 -22.5 -110t-62 -80.5t-93 -49t-114.5 -16.5q-28 0 -52 1.5t-47.5 6t-47 11t-50.5 17.5q2 37 14.5 75t29.5 68q38 -13 73 -21.5t74 -8.5q59 0 93.5 24t34.5 73q0 21 -9 37t-24 26.5 +t-34 16t-40 5.5q-16 0 -33.5 -1.5t-40.5 -7.5l-22 33l123 213h-201z" /> + <glyph glyph-name="four.alt2" horiz-adv-x="627" +d="M579 268q9 -39 9 -74t-9 -74h-53v-118q-21 -5 -41.5 -6.5t-39.5 -1.5q-20 0 -40.5 1.5t-42.5 6.5v118h-318l-17 30l269 576q39 -5 76.5 -17.5t72.5 -39.5l-182 -401h99v112q22 5 42.5 6.5t40.5 1.5q19 0 39.5 -1.5t41.5 -6.5v-112h53z" /> + <glyph glyph-name="five.alt2" horiz-adv-x="544" +d="M449 707q9 -42 9 -73q0 -35 -9 -77h-211l-2 -104q9 2 17 2h19q49 0 90 -14t70 -41t45 -67t16 -92q0 -62 -21 -109t-60.5 -79t-95.5 -48t-125 -16q-13 0 -32.5 2t-43.5 5.5t-50.5 10t-51.5 15.5q1 19 5.5 39.5t10.5 40t12.5 37t13.5 31.5q39 -14 71 -21.5t62 -7.5 +q36 0 61 8t40 20.5t21.5 29t6.5 34.5q0 38 -27 61t-86 23q-24 0 -51.5 -5.5t-57.5 -19.5l-26 17l15 398h365z" /> + <glyph glyph-name="six.alt2" horiz-adv-x="596" +d="M444 727q8 -8 15 -28.5t7 -49.5q0 -24 -3 -43t-8 -31q-39 -3 -74 -14.5t-64 -30.5t-50.5 -44t-32.5 -56l3 -2q11 14 40.5 26t71.5 12q43 0 80.5 -13t66 -40.5t45 -70.5t16.5 -104t-20 -107.5t-54.5 -78t-80.5 -47.5t-98 -16q-126 0 -192 72t-66 218q0 84 23 160.5 +t71.5 137.5t124 101t179.5 49zM305 333q-38 0 -62 -25t-24 -73q0 -53 23 -80t59 -27t61 25t25 77q0 54 -23.5 78.5t-58.5 24.5z" /> + <glyph glyph-name="seven.alt2" horiz-adv-x="550" +d="M33 556q-5 21 -7 41t-2 37q0 31 9 73h486l15 -27l-285 -699q-42 10 -77.5 23t-75.5 40l210 512h-273z" /> + <glyph glyph-name="eight.alt2" horiz-adv-x="581" +d="M511 526q0 -45 -20.5 -82t-58.5 -63q46 -25 77.5 -70.5t31.5 -111.5q0 -56 -21.5 -95.5t-57.5 -65t-81.5 -37.5t-93.5 -12t-93.5 12t-81 37.5t-57 65t-21.5 95.5q0 66 31 111t76 71q-39 26 -58.5 63t-19.5 82q0 43 17.5 78.5t47.5 61t71 39.5t88 14q48 0 89 -14t71 -39.5 +t47 -61t17 -78.5zM374 206q0 38 -25 64t-63 39q-38 -13 -61.5 -39t-23.5 -64q0 -35 22 -58t64 -23q44 0 65.5 23t21.5 58zM221 527q0 -31 18.5 -52.5t47.5 -32.5q31 11 49 32t18 53q0 25 -16.5 43.5t-49.5 18.5t-50 -18.5t-17 -43.5z" /> + <glyph glyph-name="nine.alt2" horiz-adv-x="596" +d="M152 -19q-8 8 -15 28.5t-7 49.5q0 24 3 43t8 31q39 3 74 14.5t64 30t50.5 44t32.5 56.5l-3 2q-11 -14 -40.5 -26t-71.5 -12q-43 0 -80.5 13t-66 40.5t-45 70.5t-16.5 104t20 107.5t54.5 78t80.5 47.5t98 16q126 0 192 -72t66 -218q0 -84 -23 -161t-71.5 -137.5 +t-124 -100.5t-179.5 -49zM291 375q38 0 62 25t24 73q0 53 -23 80t-59 27t-61 -25t-25 -77q0 -54 23.5 -78.5t58.5 -24.5z" /> + <glyph glyph-name="hyphen.cap" horiz-adv-x="369" +d="M42 374q0 34 9 76h268q5 -21 6.5 -39.5t1.5 -35.5t-1.5 -36t-6.5 -40h-268q-9 42 -9 75z" /> + <glyph glyph-name="ampersand.alt" horiz-adv-x="634" +d="M391 336l113 92h28v-91h75q7 -34 7 -54q0 -12 -1 -26t-6 -32h-75v-50q0 -45 -19 -80t-53.5 -59t-83 -36t-108.5 -12q-46 0 -88 9t-74.5 29t-51.5 51.5t-19 75.5t22 79t54 54q-57 34 -57 101q0 36 15.5 62.5t42 44.5t61 26.5t72.5 8.5q27 0 60.5 -3t73.5 -17q2 -26 -7 -58 +t-25 -52q-35 10 -54 12t-32 2q-28 0 -40.5 -11.5t-12.5 -25.5q0 -16 11.5 -27.5t41.5 -11.5zM282 112q31 0 50.5 7t31 19t15.5 27.5t4 32.5v27h-112q-34 0 -53 -15t-19 -42q0 -29 22 -42.5t61 -13.5z" /> + <glyph glyph-name="exclam.alt" horiz-adv-x="271" +d="M54 517q43 9 82 9t81 -9l-9 -310q-15 -3 -35.5 -4t-36.5 -1t-37 1t-36 4zM62 0q-6 34 -6 67q0 34 6 66q17 3 37 4.5t37 1.5t37 -1.5t36 -4.5q6 -35 6 -67q0 -35 -6 -66q-17 -3 -37 -4.5t-37 -1.5t-37 1.5t-36 4.5z" /> + <glyph glyph-name="question.alt" horiz-adv-x="418" +d="M115 0q-6 34 -6 67q0 34 6 66q17 3 37 4.5t37 1.5t37 -1.5t36 -4.5q6 -35 6 -67q0 -35 -6 -66q-17 -3 -37 -4.5t-37 -1.5t-37 1.5t-36 4.5zM117 310q20 0 41 3t38 10t27.5 18.5t10.5 28.5q0 22 -17 33.5t-48 11.5q-18 0 -36 -3t-33.5 -7.5t-27 -9.5t-17.5 -8 +q-14 23 -23 51.5t-11 59.5q36 14 79.5 22t85.5 8q104 0 150.5 -39.5t46.5 -107.5q0 -34 -11 -58t-28.5 -41t-39.5 -27.5t-44 -17.5v-48q-17 -3 -36 -4.5t-36 -1.5t-36 1.5t-35 4.5v121z" /> + <glyph glyph-name="ordfeminine.alt" horiz-adv-x="383" +d="M223 316q-7 1 -13 1.5t-17 0.5q-24 0 -39 -10t-15 -30q0 -12 5.5 -19.5t13.5 -11t17.5 -5t17.5 -1.5q9 0 16.5 0.5t13.5 1.5v73zM181 394q17 0 26.5 -0.5t15.5 -1.5q-1 24 -15.5 34.5t-46.5 10.5q-18 0 -45 -3.5t-50 -11.5q-11 18 -17.5 43t-5.5 43q32 10 70 15.5t65 5.5 +q75 0 122.5 -37.5t47.5 -114.5v-206q-12 -4 -31.5 -8t-42 -7.5t-46 -5.5t-44.5 -2q-37 0 -67.5 7t-52.5 22t-34 38.5t-12 57.5q0 35 15 58.5t38 37.5t52 19.5t58 5.5z" /> + <glyph glyph-name="ordmasculine.alt" horiz-adv-x="429" +d="M265 338q0 89 -52 89q-50 0 -50 -89q0 -42 12 -65.5t38 -23.5q27 0 39.5 23.5t12.5 65.5zM28 338q0 40 12 75t35 61t58 40.5t80 14.5q46 0 81 -14.5t59 -40.5t36 -61t12 -75t-12 -75t-36 -60.5t-59 -40t-81 -14.5q-45 0 -80 14.5t-58 40t-35 60.5t-12 75z" /> + <glyph glyph-name="questiondown.alt" horiz-adv-x="418" +d="M303 516q6 -35 6 -67q0 -35 -6 -66q-17 -3 -37 -4.5t-37 -1.5t-37 1.5t-36 4.5q-6 34 -6 67q0 34 6 66q17 3 37 4.5t37 1.5t37 -1.5t36 -4.5zM301 206q-20 0 -41 -3t-38 -10t-27.5 -18.5t-10.5 -28.5q0 -22 17 -33.5t48 -11.5q18 0 36 3t33.5 7.5t27 9.5t17.5 8 +q14 -23 23 -51.5t11 -59.5q-36 -14 -79.5 -22t-85.5 -8q-104 0 -150.5 39.5t-46.5 107.5q0 34 11 58t28.5 41t39.5 27.5t44 17.5v48q17 3 36 4.5t36 1.5t36 -1.5t35 -4.5v-121z" /> + <glyph glyph-name="exclamdown.alt" horiz-adv-x="271" +d="M217 3q-44 -9 -82 -9q-39 0 -81 9l9 310q15 3 35.5 4t36.5 1t37 -1t36 -4zM209 520q6 -35 6 -67q0 -35 -6 -66q-17 -3 -37 -4.5t-37 -1.5t-37 1.5t-36 4.5q-6 34 -6 67q0 34 6 66q17 3 37 4.5t37 1.5t37 -1.5t36 -4.5z" /> + <glyph glyph-name="percent.alt" horiz-adv-x="903" +d="M577 522q37 6 64 6q26 0 62 -6l-378 -522q-36 -6 -63 -6q-26 0 -62 6zM238 357q0 36 -12 56.5t-38 20.5t-38 -20.5t-12 -56.5q0 -35 12 -56t38 -21t38 21t12 56zM20 357q0 32 10 63t31 55t52.5 38.5t74.5 14.5t74.5 -14.5t52.5 -38.5t31 -55t10 -63t-10 -63t-31 -55 +t-52.5 -38.5t-74.5 -14.5t-74.5 14.5t-52.5 38.5t-31 55t-10 63zM765 159q0 36 -12 56.5t-38 20.5t-38 -20.5t-12 -56.5q0 -35 12 -56t38 -21t38 21t12 56zM547 159q0 32 10 63t31 55t52.5 38.5t74.5 14.5t74.5 -14.5t52.5 -38.5t31 -55t10 -63t-10 -63t-31 -55t-52.5 -38.5 +t-74.5 -14.5t-74.5 14.5t-52.5 38.5t-31 55t-10 63z" /> + <glyph glyph-name="perthousand.alt" horiz-adv-x="1295" +d="M577 522q37 6 64 6q26 0 62 -6l-378 -522q-36 -6 -63 -6q-26 0 -62 6zM238 357q0 36 -12 56.5t-38 20.5t-38 -20.5t-12 -56.5q0 -35 12 -56t38 -21t38 21t12 56zM20 357q0 32 10 63t31 55t52.5 38.5t74.5 14.5t74.5 -14.5t52.5 -38.5t31 -55t10 -63t-10 -63t-31 -55 +t-52.5 -38.5t-74.5 -14.5t-74.5 14.5t-52.5 38.5t-31 55t-10 63zM765 159q0 36 -12 56.5t-38 20.5t-38 -20.5t-12 -56.5q0 -35 12 -56t38 -21t38 21t12 56zM547 159q0 32 10 63t31 55t52.5 38.5t74.5 14.5t74.5 -14.5t52.5 -38.5t31 -55t10 -63t-10 -63t-31 -55t-52.5 -38.5 +t-74.5 -14.5t-74.5 14.5t-52.5 38.5t-31 55t-10 63zM1157 159q0 36 -12 56.5t-38 20.5t-38 -20.5t-12 -56.5q0 -35 12 -56t38 -21t38 21t12 56zM939 159q0 32 10 63t31 55t52.5 38.5t74.5 14.5t74.5 -14.5t52.5 -38.5t31 -55t10 -63t-10 -63t-31 -55t-52.5 -38.5 +t-74.5 -14.5t-74.5 14.5t-52.5 38.5t-31 55t-10 63z" /> + <glyph glyph-name="slash.alt" horiz-adv-x="346" +d="M191 517q19 3 40 4.5t38 1.5q16 0 35 -1.5t37 -4.5l-186 -517q-18 -3 -37 -4.5t-36 -1.5q-16 0 -37.5 1.5t-39.5 4.5z" /> + <glyph glyph-name="backslash.alt" horiz-adv-x="346" +d="M341 0q-18 -3 -39.5 -4.5t-37.5 -1.5q-17 0 -36 1.5t-37 4.5l-186 517q18 3 37 4.5t35 1.5q17 0 38 -1.5t40 -4.5z" /> + <glyph glyph-name="parenleft.alt" horiz-adv-x="287" +d="M187 259q0 -57 8 -105t20 -86.5t26 -67t26 -47.5q-33 -6 -71 -6q-36 0 -70 6q-20 21 -35.5 54.5t-27 74t-17.5 86t-6 91.5t6 91.5t17.5 86t27 73.5t35.5 54q34 6 71 6t70 -6q-12 -19 -26 -47.5t-26 -66.5t-20 -86t-8 -105z" /> + <glyph glyph-name="parenright.alt" horiz-adv-x="287" +d="M100 259q0 57 -8 105t-20 86t-26 66.5t-26 47.5q33 6 70 6q36 0 71 -6q19 -21 35 -54t27.5 -73.5t17.5 -86t6 -91.5t-6 -91.5t-17.5 -86t-27.5 -74t-35 -54.5q-35 -6 -70 -6q-38 0 -71 6q12 19 26 47.5t26 67t20 86.5t8 105z" /> + <glyph glyph-name="braceleft.alt" horiz-adv-x="320" +d="M30 271q31 14 42.5 32.5t13.5 51.5l3 80q2 64 43 99.5t127 35.5h27q2 -11 3 -23.5t1 -25.5t-0.5 -27t-2.5 -27q-18 0 -29 -4.5t-17 -12.5t-8 -18t-2 -22l-2 -60q-2 -40 -19 -60.5t-34 -31.5q17 -11 34 -31.5t19 -60.5l2 -49q0 -12 2 -22t8 -18t17 -12.5t29 -4.5 +q2 -14 2.5 -29.5t0.5 -29.5t-1 -28.5t-3 -25.5h-27q-86 0 -127 35.5t-43 99.5l-3 79q-2 33 -13.5 51.5t-42.5 32.5v26z" /> + <glyph glyph-name="braceright.alt" horiz-adv-x="320" +d="M290 245q-31 -14 -42.5 -32.5t-13.5 -51.5l-3 -79q-2 -64 -43 -99.5t-127 -35.5h-27q-2 11 -3 25.5t-1 28.5t0.5 29.5t2.5 29.5q18 0 29 4.5t17 12.5t8 18t2 22l2 49q2 40 19 60.5t34 31.5q-17 11 -34 31.5t-19 60.5l-2 60q0 12 -2 22t-8 18t-17 12.5t-29 4.5 +q-2 13 -2.5 27t-0.5 27t1 25.5t3 23.5h27q86 0 127 -35.5t43 -99.5l3 -80q2 -33 13.5 -51.5t42.5 -32.5v-26z" /> + <glyph glyph-name="bracketleft.alt" horiz-adv-x="303" +d="M40 570h237q6 -29 6 -57q0 -31 -6 -59h-94v-391h94q6 -29 6 -59q0 -29 -6 -57h-237v623z" /> + <glyph glyph-name="bracketright.alt" horiz-adv-x="303" +d="M263 -53h-237q-6 28 -6 57q0 30 6 59h94v391h-94q-6 28 -6 59q0 28 6 57h237v-623z" /> + <glyph glyph-name="asterisk.alt" horiz-adv-x="369" +d="M330 444q13 -20 19.5 -42t9.5 -40l-92 -38l55 -86q-15 -16 -33.5 -28t-39.5 -23l-64 72l-65 -74q-41 20 -71 52l53 86q-23 9 -46.5 19.5t-45.5 18.5q2 22 10 43.5t17 38.5l96 -21l7 100q10 2 22.5 3t20.5 1q9 0 21.5 -1t23.5 -3l8 -99zM183 401q-7 0 -15.5 0.5t-14.5 2.5 +q-6 -19 -13.5 -39.5t-16.5 -37.5q15 -6 30 -18t31 -24q17 13 31.5 24.5t28.5 17.5q-9 20 -13.5 39t-10.5 36q-11 -1 -21.5 -1h-15.5z" /> + <glyph glyph-name="quoteleft.alt" horiz-adv-x="274" +d="M25 518q26 5 46.5 6.5t37.5 1.5q16 0 32.5 -1.5t38.5 -6.5l69 -222q-15 -3 -34.5 -5.5t-40.5 -2.5q-18 0 -34.5 1.5t-38.5 6.5z" /> + <glyph glyph-name="quoteright.alt" horiz-adv-x="274" +d="M173 296q-22 -5 -38.5 -6.5t-34.5 -1.5q-21 0 -40.5 2.5t-34.5 5.5l69 222q22 5 38.5 6.5t32.5 1.5q17 0 37.5 -1.5t46.5 -6.5z" /> + <glyph glyph-name="quotedblleft.alt" horiz-adv-x="485" +d="M25 518q26 5 46.5 6.5t37.5 1.5q16 0 32.5 -1.5t38.5 -6.5l69 -222q-15 -3 -34.5 -5.5t-40.5 -2.5q-18 0 -34.5 1.5t-38.5 6.5zM236 518q26 5 46.5 6.5t37.5 1.5q16 0 32.5 -1.5t38.5 -6.5l69 -222q-15 -3 -34.5 -5.5t-40.5 -2.5q-18 0 -34.5 1.5t-38.5 6.5z" /> + <glyph glyph-name="quotedblright.alt" horiz-adv-x="486" +d="M173 296q-22 -5 -38.5 -6.5t-34.5 -1.5q-21 0 -40.5 2.5t-34.5 5.5l69 222q22 5 38.5 6.5t32.5 1.5q17 0 37.5 -1.5t46.5 -6.5zM385 296q-22 -5 -38.5 -6.5t-34.5 -1.5q-21 0 -40.5 2.5t-34.5 5.5l69 222q22 5 38.5 6.5t32.5 1.5q17 0 37.5 -1.5t46.5 -6.5z" /> + <glyph glyph-name="A.alt" horiz-adv-x="642" +d="M178 2q-23 -4 -42 -6t-37 -2t-41.5 2.5t-52.5 7.5l224 714q26 3 48.5 5t45.5 2q19 0 41.5 -2t51.5 -5l221 -715q-57 -9 -100 -9q-20 0 -40 2t-43 6l-38 139q-28 -8 -53.5 -12t-50.5 -4q-23 0 -47 3.5t-50 10.5zM318 530l-67 -257q17 -5 32 -8t31 -3q17 0 33.5 2.5 +t34.5 7.5z" /> + <glyph glyph-name="AE.alt" horiz-adv-x="938" +d="M386 157q-33 0 -62 5.5t-53 13.5l-88 -176q-23 -4 -46 -5t-43 -1q-35 0 -56 1.5t-38 4.5l388 719h508q4 -22 6 -41t2 -36q0 -33 -8 -79h-249v-110h197q9 -44 9 -78q0 -35 -9 -78h-197v-142h255q9 -42 9 -76q0 -37 -9 -79h-428v166q-9 -2 -34 -5.5t-54 -3.5zM337 304 +q15 -5 34.5 -8t38.5 -3t37 2t27 5v273z" /> + <glyph glyph-name="a.alt" horiz-adv-x="515" +d="M30 169q0 49 20.5 81t52.5 51t71.5 26.5t77.5 7.5h57q-1 18 -9 30t-21.5 18.5t-30 9t-34.5 2.5q-24 0 -54 -5.5t-64 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 93.5 24t83.5 8q105 0 164 -51t59 -163v-293q-38 -11 -90 -22t-112 -11q-52 0 -95 9.5 +t-73.5 30.5t-47 55.5t-16.5 84.5zM262 113q9 0 24 2t23 4v110h-53q-35 0 -57 -15t-22 -42q0 -20 8.5 -31.5t21 -17.5t27.5 -8t28 -2z" /> + <glyph glyph-name="b.alt" horiz-adv-x="571" +d="M56 717q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-218q20 14 46.5 22t55.5 8q45 0 84 -16t67.5 -48.5t45 -82t16.5 -116.5q0 -64 -20 -115.5t-57.5 -87.5t-91.5 -55.5t-123 -19.5q-43 0 -96 8.5t-96 23.5v697zM291 382q-29 0 -47.5 -20t-18.5 -64v-161q5 -1 13 -1.5t17 -0.5 +q52 0 81.5 31t29.5 97q0 57 -17 88t-58 31z" /> + <glyph glyph-name="c.alt" horiz-adv-x="466" +d="M31 258q0 56 16.5 105.5t48.5 86t79.5 58t109.5 21.5q21 0 39.5 -1t37 -4.5t38 -9.5t43.5 -15q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25 5.5t-23 3t-24.5 1q-48 0 -77.5 -32t-29.5 -95q0 -67 31.5 -96.5t76.5 -29.5q29 0 51 5.5t51 16.5q17 -27 27 -60.5t10 -76.5 +q-46 -18 -83.5 -23.5t-75.5 -5.5q-64 0 -112.5 20.5t-81 56.5t-49 85.5t-16.5 107.5z" /> + <glyph glyph-name="d.alt" horiz-adv-x="570" +d="M345 717q25 4 46 6t38 2t38 -2t47 -6v-700q-51 -14 -101.5 -21.5t-115.5 -7.5q-53 0 -101.5 14.5t-85 46t-58 82t-21.5 121.5q0 57 18.5 107.5t53 87.5t83 58.5t108.5 21.5q25 0 51 -3v193zM203 254q1 -66 30 -93t73 -27q14 0 23.5 0.5t15.5 1.5v250q-3 1 -13.5 2 +t-27.5 1q-26 0 -45 -11t-31.5 -29.5t-18.5 -43t-6 -51.5z" /> + <glyph glyph-name="e.alt" horiz-adv-x="537" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-33 0 -55.5 -20.5t-27.5 -63.5h161q-2 39 -21.5 61.5t-56.5 22.5z" /> + <glyph glyph-name="f.alt" horiz-adv-x="387" +d="M15 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h73v6q0 49 15 87t42.5 64.5t65.5 40t84 13.5q30 0 53 -3.5t55 -12.5q-1 -39 -7.5 -72.5t-18.5 -65.5q-8 2 -24 5.5t-32 3.5q-12 0 -23.5 -2.5t-20.5 -10t-14.5 -20t-5.5 -31.5v-2h108q5 -20 6.5 -36t1.5 -32t-1.5 -32.5 +t-6.5 -36.5h-108v-378q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v378h-73z" /> + <glyph glyph-name="g.alt" horiz-adv-x="564" +d="M23 -103q0 44 20 70t54 45q-23 15 -35 39.5t-12 50.5q0 34 13 58.5t39 43.5q-30 25 -46 61t-16 74q0 40 15.5 74.5t44.5 59.5t70.5 39.5t92.5 14.5q45 0 84.5 -12.5t67.5 -32.5q20 20 49 30.5t80 10.5q4 -16 5.5 -34.5t1.5 -32.5q0 -17 -1.5 -37t-5.5 -38l-71 11 +q5 -9 7.5 -25t2.5 -28q0 -40 -15 -74.5t-43 -59.5t-69 -39.5t-93 -14.5q-18 0 -34.5 1.5t-33.5 6.5q-4 -4 -6.5 -12.5t-2.5 -13.5q0 -11 8 -21t31 -10l120 -2q94 -2 138.5 -39t44.5 -112q0 -44 -22 -78t-60 -57t-89.5 -35.5t-111.5 -12.5q-61 0 -103.5 9t-68.5 26.5 +t-38 41.5t-12 54zM258 -125q54 0 83 16t29 39q0 11 -7.5 22.5t-34.5 12.5l-108 2q-15 0 -24.5 -4.5t-15 -11t-8 -15t-2.5 -15.5q0 -24 23 -35t65 -11zM323 339q0 33 -13.5 54.5t-45.5 21.5t-46.5 -21.5t-14.5 -54.5t14.5 -54t46.5 -21t45.5 21t13.5 54z" /> + <glyph glyph-name="h.alt" horiz-adv-x="571" +d="M56 717q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-230q22 18 49 29.5t63 11.5q91 0 137 -49t46 -154v-323q-26 -5 -47 -6.5t-37 -1.5q-17 0 -37.5 1.5t-47.5 6.5v288q0 41 -11 63t-40 22q-13 0 -26 -4t-24 -15.5t-18 -32t-7 -53.5v-268q-26 -5 -47 -6.5t-37 -1.5 +q-17 0 -38 1.5t-47 6.5v715z" /> + <glyph glyph-name="i.alt" horiz-adv-x="311" +d="M28 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-58zM242 721q5 -23 6.5 -41.5t1.5 -32.5q0 -15 -1.5 -33.5t-6.5 -41.5q-26 -4 -47 -5.5t-37 -1.5q-17 0 -38 1.5t-47 5.5q-5 23 -6.5 41.5t-1.5 33.5 +q0 14 1.5 32.5t6.5 41.5q26 4 47 5.5t38 1.5q16 0 37 -1.5t47 -5.5z" /> + <glyph glyph-name="j.alt" horiz-adv-x="311" +d="M86 380h-58q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-523q0 -99 -49 -142.5t-143 -43.5q-52 0 -110 14q-2 38 4.5 70t19.5 62q13 -4 29.5 -6.5t29.5 -2.5q23 0 36.5 11.5t13.5 46.5v377zM242 721q5 -23 6.5 -41.5t1.5 -32.5q0 -15 -1.5 -33.5t-6.5 -41.5 +q-26 -4 -47 -5.5t-37 -1.5q-17 0 -38 1.5t-47 5.5q-5 23 -6.5 41.5t-1.5 33.5q0 14 1.5 32.5t6.5 41.5q26 4 47 5.5t38 1.5q16 0 37 -1.5t47 -5.5z" /> + <glyph glyph-name="k.alt" horiz-adv-x="543" +d="M56 717q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-715q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v715zM339 517q18 4 44 6t46 2q26 0 52.5 -2t42.5 -6l-104 -240l123 -275q-18 -4 -45 -6t-47 -2q-26 0 -51.5 2t-40.5 6l-118 268z" /> + <glyph glyph-name="l.alt" horiz-adv-x="325" +d="M50 717q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-520q0 -36 8.5 -48t30.5 -12q8 0 20.5 1.5t26.5 6.5q8 -23 11.5 -47.5t3.5 -45.5q0 -14 -0.5 -24t-1.5 -21q-23 -8 -48 -10.5t-44 -2.5q-80 0 -128 44t-48 143v536z" /> + <glyph glyph-name="m.alt" horiz-adv-x="842" +d="M508 2q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v291q0 38 -10.5 60t-36.5 22q-12 0 -24 -4t-21.5 -15.5t-15.5 -32t-6 -53.5v-268q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q5 -8 9 -18.5t6 -20.5 +q20 22 51 36.5t79 14.5q47 0 81.5 -15.5t55.5 -51.5q23 28 57 47.5t85 19.5q88 0 130.5 -50t42.5 -155v-322q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v291q0 38 -10.5 60t-36.5 22q-12 0 -24 -4t-21.5 -15.5t-15.5 -32t-6 -53.5v-268z" /> + <glyph glyph-name="n.alt" horiz-adv-x="569" +d="M349 302q0 34 -12 53.5t-40 19.5q-13 0 -25.5 -4t-23 -15.5t-17 -32t-6.5 -53.5v-268q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q9 -20 14 -42q23 23 54.5 38t73.5 15q91 0 136.5 -49t45.5 -154v-323 +q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v300z" /> + <glyph glyph-name="o.alt" horiz-adv-x="561" +d="M31 256q0 57 15.5 107t46.5 87t77.5 58t109.5 21q64 0 111 -21t78 -58t46 -87t15 -107t-15 -106t-46 -85t-78 -56.5t-111 -20.5q-63 0 -109.5 20.5t-77.5 56.5t-46.5 85t-15.5 106zM359 256q0 64 -18.5 98t-60.5 34t-60 -34t-18 -98q0 -63 18 -97t60 -34t60.5 34t18.5 97 +z" /> + <glyph glyph-name="p.alt" horiz-adv-x="572" +d="M291 378q-36 0 -51 -28t-15 -66v-148q8 -2 18 -3t21 -1q48 0 74 32t26 99q0 50 -16.5 82.5t-56.5 32.5zM56 517q13 3 33.5 4.5t39.5 1.5q18 0 33.5 -2t28.5 -4q5 -8 10 -20.5t7 -20.5q21 23 51.5 37.5t72.5 14.5q44 0 82.5 -16t66.5 -48t44 -81.5t16 -116.5 +q0 -64 -19 -115.5t-54.5 -87.5t-87 -55t-117.5 -19q-9 0 -19.5 0.5t-18.5 1.5v-216q-21 -5 -43 -7t-41 -2q-20 0 -41.5 2t-43.5 7v742z" /> + <glyph glyph-name="q.alt" horiz-adv-x="568" +d="M205 252q1 -66 28 -91.5t71 -25.5h20t19 2v245q-11 2 -16 2h-13q-54 0 -81.5 -36t-27.5 -96zM343 -6q-11 -2 -23 -2.5t-29 -0.5q-51 0 -98 13.5t-83 44.5t-57.5 80t-21.5 121q0 57 19 107.5t56 89t90 60.5t122 22q54 0 100 -6t94 -17v-731q-21 -5 -43 -7t-41 -2 +q-20 0 -41.5 2t-43.5 7v219z" /> + <glyph glyph-name="r.alt" horiz-adv-x="403" +d="M56 517q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q5 -10 9 -21.5t6 -22.5q20 20 48 35t65 15q16 0 31.5 -2t21.5 -4q5 -14 6.5 -34.5t1.5 -34.5q0 -15 -2.5 -37t-7.5 -48q-25 4 -38 4.5t-15 0.5q-14 0 -30.5 -3t-30.5 -15t-24 -36.5t-10 -67.5v-244q-21 -5 -43 -6.5 +t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515z" /> + <glyph glyph-name="s.alt" horiz-adv-x="460" +d="M306 324q29 -9 53 -20.5t41 -29t26 -43.5t9 -63q0 -38 -16.5 -71t-47 -57t-74 -38t-96.5 -14q-48 0 -86.5 7t-84.5 24q5 68 37 138q63 -30 132 -30q25 0 45.5 5.5t20.5 25.5q0 13 -10.5 19.5t-27.5 11.5l-63 18q-52 15 -87.5 51.5t-35.5 98.5q0 39 15.5 71t43 54.5 +t66.5 34.5t87 12q38 0 80.5 -8t86.5 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -62.5 20t-65.5 9q-23 0 -33.5 -7.5t-10.5 -18.5t12 -17.5t32 -12.5z" /> + <glyph glyph-name="t.alt" horiz-adv-x="388" +d="M349 517q5 -20 6.5 -36t1.5 -32t-1.5 -32.5t-6.5 -36.5h-108v-183q0 -36 12.5 -48.5t38.5 -12.5q18 0 34 3.5t29 7.5q10 -22 14 -46.5t4 -47.5q0 -12 -0.5 -25.5t-1.5 -19.5q-27 -6 -54 -10t-52 -4q-47 0 -82.5 9.5t-60.5 30.5t-37.5 55.5t-12.5 84.5v206h-63 +q-2 6 -2 17.5t2 19.5l192 251q5 1 14.5 1.5t25.5 -1.5v-151h108z" /> + <glyph glyph-name="u.alt" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493z" /> + <glyph glyph-name="v.alt" horiz-adv-x="561" +d="M371 517q8 2 33 4t51 2q33 0 61.5 -2t39.5 -4l-196 -515q-21 -5 -42.5 -6.5t-41.5 -1.5t-41 1.5t-38 6.5l-192 515q11 2 39.5 4t61.5 2q26 0 52 -2t34 -4l91 -310q23 77 44.5 156t43.5 154z" /> + <glyph glyph-name="w.alt" horiz-adv-x="799" +d="M556 219l62 298q8 2 31 4t49 2q33 0 58.5 -2t36.5 -4l-162 -515q-17 -5 -37 -6.5t-40 -1.5t-40.5 1.5t-42.5 6.5l-73 280q-19 -67 -38.5 -141t-37.5 -139q-21 -5 -41.5 -6.5t-40.5 -1.5t-40 1.5t-37 6.5l-157 515q11 2 38.5 4t60.5 2q26 0 50.5 -2t32.5 -4l65 -306 +l72 306q17 5 37.5 6.5t40.5 1.5t40.5 -1.5t41.5 -6.5z" /> + <glyph glyph-name="x.alt" horiz-adv-x="536" +d="M268 277l66 240q8 2 31.5 4t49.5 2q33 0 59 -2t37 -4l-90 -248l110 -268q-11 -2 -34.5 -4.5t-53.5 -2.5q-29 0 -52 2.5t-31 4.5l-92 256l-92 -256q-8 -2 -30 -4.5t-48 -2.5q-33 0 -57.5 3t-35.5 5l110 267l-90 248q11 2 36.5 4t58.5 2q26 0 49.5 -2t31.5 -4z" /> + <glyph glyph-name="y.alt" horiz-adv-x="546" +d="M370 517q8 2 30 4t48 2q33 0 57.5 -2t35.5 -4l-188 -620q-12 -39 -29 -64.5t-39 -40.5t-49 -20.5t-58 -5.5q-26 0 -51.5 4.5t-53.5 12.5q-3 36 4 68.5t20 63.5q13 -5 30.5 -8.5t29.5 -3.5q18 0 34.5 8t24.5 36l15 51q-8 -1 -12 -0.5t-13 0.5q-11 0 -22.5 0.5t-27.5 3.5 +l-151 515q11 2 37.5 4t59.5 2q26 0 50 -2t32 -4l87 -363q24 90 50 182.5t49 180.5z" /> + <glyph glyph-name="z.alt" horiz-adv-x="481" +d="M262 137h191q7 -41 7 -70q0 -15 -1.5 -30.5t-5.5 -36.5h-420l-16 30l209 350h-171q-5 22 -6.5 38.5t-1.5 31.5t1.5 30.5t6.5 36.5h407l10 -32z" /> + <glyph glyph-name="ae.alt" horiz-adv-x="810" +d="M328 124q-11 26 -16.5 50t-6.5 50h-45q-35 0 -59 -13.5t-24 -40.5q0 -20 9 -31t22.5 -17t29 -7.5t28.5 -1.5q22 0 39 4t23 7zM554 402q-32 0 -54 -19t-28 -60h160q-4 35 -22.5 57t-55.5 22zM218 395q-24 0 -56 -5.5t-66 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5 +q48 16 95.5 24t85.5 8q50 0 90.5 -11.5t69.5 -35.5q30 22 68.5 34.5t86.5 12.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2 -43.5t-4 -30.5h-307q8 -47 38.5 -66t74.5 -19q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-59 0 -95 11t-60 23 +q-26 -14 -66.5 -23.5t-94.5 -9.5q-50 0 -91.5 9t-72.5 30t-48 55t-17 84q0 49 21 80.5t54 50t73 25.5t78 7h61q0 20 -8.5 33t-23 20t-32 9.5t-35.5 2.5z" /> + <glyph glyph-name="oe.alt" horiz-adv-x="875" +d="M539 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-61 0 -110 23t-74 56q-27 -35 -71 -57t-104 -22t-106.5 19t-78.5 54.5t-48.5 85t-16.5 109.5q0 61 16.5 111.5t49 86.5t80.5 55.5t111 19.5q55 0 100.5 -23t70.5 -58 +q10 15 25.5 29.5t36.5 26t48 18.5t61 7q102 0 161 -63.5t59 -176.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304zM619 402q-32 0 -55 -20.5t-27 -61.5h160q-2 36 -21.5 59t-56.5 23zM375 256q0 64 -21.5 98t-65.5 34t-65 -34t-21 -98q0 -63 21 -97t65 -34t65.5 34t21.5 97z" /> + <glyph glyph-name="germandbls.alt" horiz-adv-x="608" +d="M56 494q0 53 15.5 97t46.5 75.5t77.5 49t107.5 17.5t103.5 -17t69.5 -42.5t39 -57t12 -59.5q0 -27 -5 -49t-13 -39.5t-18 -31.5t-19 -26q-11 -15 -19.5 -27.5t-8.5 -24.5q0 -14 12.5 -23.5t30.5 -20.5q16 -10 34 -22t32.5 -30t24 -44t9.5 -64q0 -26 -9.5 -55t-32 -54 +t-60 -41t-92.5 -16q-35 0 -63.5 5t-65.5 19q5 67 39 137q28 -14 44.5 -18t30.5 -4q20 0 30.5 12t10.5 28q0 14 -14 24.5t-33 21.5q-17 9 -34 20t-30.5 26.5t-22 36.5t-8.5 51q0 36 12.5 59.5t29.5 45.5q13 17 24.5 41t11.5 53q0 19 -15.5 33.5t-43.5 14.5q-31 0 -51 -29 +t-20 -84v-480q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v492z" /> + <glyph glyph-name="eth.alt" horiz-adv-x="543" +d="M191 594q-35 11 -73 11q-5 11 -8 25t-3 34t4 35.5t9 28.5q53 2 99.5 -9.5t87.5 -34.5l56 44q26 -19 45 -55l-41 -32q69 -62 107 -157t38 -210q0 -65 -15 -117.5t-45 -90t-75 -58t-106 -20.5q-60 0 -105 17.5t-75 50t-45 77.5t-15 101q0 54 14.5 98.5t41 76t64 49 +t84.5 17.5q24 0 51.5 -6.5t39.5 -17.5q-6 28 -23 56t-44 50l-75 -58q-11 10 -23.5 25t-18.5 32zM271 115q38 0 55.5 29t17.5 90q0 62 -17.5 90.5t-55.5 28.5t-55.5 -28.5t-17.5 -90.5q0 -119 73 -119z" /> + <glyph glyph-name="thorn.alt" horiz-adv-x="572" +d="M225 492q20 16 46.5 26t60.5 10q44 0 82.5 -16t66.5 -48t44 -81.5t16 -116.5q0 -64 -19 -115.5t-54.5 -87.5t-87 -55t-117.5 -19q-9 0 -19.5 0.5t-18.5 1.5v-216q-21 -5 -43 -7t-41 -2q-20 0 -41.5 2t-43.5 7v942q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-225zM291 378 +q-36 0 -51 -28t-15 -66v-148q8 -2 18 -3t21 -1q48 0 74 32t26 99q0 50 -16.5 82.5t-56.5 32.5z" /> + <glyph glyph-name="lslash.alt" horiz-adv-x="325" +d="M50 387v330q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-210l65 46q3 -14 4.5 -25.5t1.5 -25.5q0 -15 -1.5 -26.5t-4.5 -25.5l-65 -46v-207q0 -36 8.5 -48t30.5 -12q8 0 20.5 1.5t26.5 6.5q8 -23 11.5 -47.5t3.5 -45.5q0 -14 -0.5 -24t-1.5 -21q-23 -8 -48 -10.5t-44 -2.5 +q-80 0 -128 44t-48 143v103l-46 -32q-3 14 -4.5 25t-1.5 26t1.5 26.5t4.5 25.5z" /> + <glyph glyph-name="fi.alt" horiz-adv-x="625" +d="M257 380v-378q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v378h-73q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h73v10q0 48 17 85.5t47.5 63t72.5 39t92 13.5q48 0 90 -6t87 -24q0 -36 -10 -67.5t-27 -61.5q-14 5 -43.5 14t-66.5 9q-38 0 -64 -15.5t-26 -59.5 +h312v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-143z" /> + <glyph glyph-name="fl.alt" horiz-adv-x="666" +d="M560 197q0 -36 8.5 -48t30.5 -12q8 0 20.5 1.5t26.5 6.5q8 -23 11.5 -47.5t3.5 -45.5q0 -14 -0.5 -24t-1.5 -21q-23 -8 -48 -10.5t-44 -2.5q-80 0 -128 44t-48 143v411q-4 1 -19 3.5t-39 2.5q-33 0 -54.5 -18t-21.5 -50v-13h79q5 -20 6.5 -36t1.5 -32t-1.5 -32.5 +t-6.5 -36.5h-79v-378q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v378h-73q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h73v10q0 97 68.5 149t193.5 52q63 0 119 -7.5t91 -15.5v-508z" /> + <glyph glyph-name="ff.alt" horiz-adv-x="714" +d="M257 380v-378q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v378h-73q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h73v6q0 49 15 87t42.5 64.5t65.5 40t84 13.5q30 0 49 -3t49 -10q-1 -39 -6.5 -70.5t-16.5 -63.5q-8 2 -20.5 4.5t-28.5 2.5q-27 0 -45.5 -15 +t-18.5 -54v-2h158v6q0 49 15 87t42.5 64.5t65.5 40t84 13.5q30 0 53 -3.5t55 -12.5q-1 -39 -7 -70t-17 -63q-8 2 -25 5.5t-33 3.5q-23 0 -43.5 -15t-20.5 -54v-2h108q5 -20 6.5 -36t1.5 -32t-1.5 -32.5t-6.5 -36.5h-108v-378q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5 +t-43.5 6.5v378h-158z" /> + <glyph glyph-name="ffi.alt" horiz-adv-x="952" +d="M257 2q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v378h-73q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h73v6q0 49 15 87t42.5 64.5t65.5 40t84 13.5q30 0 49 -3t49 -10q-1 -39 -6.5 -70.5t-16.5 -63.5q-8 2 -20.5 4.5t-28.5 2.5q-27 0 -45.5 -15t-18.5 -54v-2 +h158v10q0 48 17 85.5t47.5 63t72.5 39t92 13.5q48 0 90 -6t87 -24q0 -36 -10 -67.5t-27 -61.5q-14 5 -43.5 14t-66.5 9q-38 0 -64 -15.5t-26 -59.5h312v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-143v-378q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5 +t-43.5 6.5v378h-158v-378z" /> + <glyph glyph-name="ffl.alt" horiz-adv-x="993" +d="M415 527q0 97 68.5 149t193.5 52q63 0 119 -7.5t91 -15.5v-508q0 -36 8.5 -48t30.5 -12q8 0 20.5 1.5t26.5 6.5q8 -23 11.5 -47.5t3.5 -45.5q0 -14 -0.5 -24t-1.5 -21q-23 -8 -48 -10.5t-44 -2.5q-80 0 -128 44t-48 143v411q-4 1 -19 3.5t-39 2.5q-33 0 -54.5 -18 +t-21.5 -50v-13h79q5 -20 6.5 -36t1.5 -32t-1.5 -32.5t-6.5 -36.5h-79v-378q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v378h-158v-378q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v378h-73q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h73v6q0 49 15 87 +t42.5 64.5t65.5 40t84 13.5q30 0 49 -3t49 -10q-1 -39 -6.5 -70.5t-16.5 -63.5q-8 2 -20.5 4.5t-28.5 2.5q-27 0 -45.5 -15t-18.5 -54v-2h158v10z" /> + <glyph glyph-name="ij.alt" horiz-adv-x="306" +d="M24 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-58zM238 721q5 -23 6.5 -41.5t1.5 -32.5q0 -15 -1.5 -33.5t-6.5 -41.5q-26 -4 -47 -5.5t-37 -1.5q-17 0 -38 1.5t-47 5.5q-5 23 -6.5 41.5t-1.5 33.5 +q0 14 1.5 32.5t6.5 41.5q26 4 47 5.5t38 1.5q16 0 37 -1.5t47 -5.5zM387 380h-58q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-523q0 -99 -49 -142.5t-143 -43.5q-52 0 -110 14q-2 38 4.5 70t19.5 62q13 -4 29.5 -6.5t29.5 -2.5q23 0 36.5 11.5t13.5 46.5v377zM543 721 +q5 -23 6.5 -41.5t1.5 -32.5q0 -15 -1.5 -33.5t-6.5 -41.5q-26 -4 -47 -5.5t-37 -1.5q-17 0 -38 1.5t-47 5.5q-5 23 -6.5 41.5t-1.5 33.5q0 14 1.5 32.5t6.5 41.5q26 4 47 5.5t38 1.5q16 0 37 -1.5t47 -5.5z" /> + <glyph glyph-name="kgreenlandic.alt" horiz-adv-x="543" +d="M56 517q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v515zM339 517q18 4 44 6t46 2q26 0 52.5 -2t42.5 -6l-104 -240l123 -275q-18 -4 -45 -6t-47 -2q-26 0 -51.5 2t-40.5 6l-118 268z" /> + <glyph glyph-name="dotlessi.alt" horiz-adv-x="311" +d="M28 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-58z" /> + <glyph glyph-name="kcommaaccent.alt" horiz-adv-x="543" +d="M56 717q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-715q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v715zM339 517q18 4 44 6t46 2q26 0 52.5 -2t42.5 -6l-104 -240l123 -275q-18 -4 -45 -6t-47 -2q-26 0 -51.5 2t-40.5 6l-118 268zM225 -68q34 7 73 7q18 0 37 -1.5 +t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="eng.alt" horiz-adv-x="569" +d="M349 302q0 34 -12 53.5t-40 19.5q-13 0 -25.5 -4t-23 -15.5t-17 -32t-6.5 -53.5v-268q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q9 -20 14 -42q23 23 54.5 38t73.5 15q91 0 136.5 -49t45.5 -154v-331 +q0 -99 -49 -142.5t-143 -43.5q-52 0 -110 14q-2 38 4.5 70t19.5 62q13 -4 29.5 -6.5t29.5 -2.5q23 0 36.5 11.5t13.5 46.5v299z" /> + <glyph glyph-name="hbar.alt" horiz-adv-x="571" +d="M225 565v-93q22 18 49 29.5t63 11.5q91 0 137 -49t46 -154v-308q-26 -5 -47 -6.5t-37 -1.5q-17 0 -37.5 1.5t-47.5 6.5v273q0 41 -11 63t-40 22q-13 0 -26 -4t-24 -15.5t-18 -32t-7 -53.5v-253q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v563h-46q-5 12 -6 25 +t-1 22q0 8 1 21t6 25h46v59q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-59h136q5 -12 6 -25t1 -21q0 -9 -1 -22t-6 -25h-136z" /> + <glyph glyph-name="tbar.alt" horiz-adv-x="380" +d="M241 221v-24q0 -36 12.5 -48.5t38.5 -12.5q18 0 34 3.5t29 7.5q10 -22 14 -46.5t4 -47.5q0 -12 -0.5 -25.5t-1.5 -19.5q-27 -6 -54 -10t-52 -4q-47 0 -82.5 9.5t-60.5 30.5t-37.5 55.5t-12.5 84.5v47h-58q-5 12 -6 25t-1 22q0 8 1 21t6 25h58v66h-63q-2 6 -2 17.5t2 19.5 +l192 251q5 1 14.5 1.5t25.5 -1.5v-151h108q5 -20 6.5 -36t1.5 -32t-1.5 -32.5t-6.5 -36.5h-108v-66h125q5 -12 6 -25t1 -21q0 -9 -1 -22t-6 -25h-125z" /> + <glyph glyph-name="oslash.alt" horiz-adv-x="561" +d="M473 444q29 -36 43 -84.5t14 -103.5q0 -57 -15 -106t-46 -85t-78 -56.5t-111 -20.5q-41 0 -74 8.5t-60 24.5l-16 -21q-17 -3 -50 -3q-17 0 -29.5 1t-17.5 2l55 71q-29 36 -43 83t-14 102q0 57 15.5 107t46.5 87t77.5 58t109.5 21q79 0 135 -34l17 22q16 3 50 3 +q17 0 29.5 -1t17.5 -2zM363 256q0 11 -0.5 22t-1.5 21l-128 -165q17 -16 47 -16q44 0 63.5 36t19.5 102zM198 256v-21t2 -19l126 164q-18 15 -46 15q-44 0 -63 -36t-19 -103z" /> + <glyph glyph-name="agrave.alt" horiz-adv-x="515" +d="M78 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6zM30 169q0 49 20.5 81t52.5 51t71.5 26.5t77.5 7.5h57q-1 18 -9 30t-21.5 18.5t-30 9t-34.5 2.5q-24 0 -54 -5.5t-64 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5 +q48 16 93.5 24t83.5 8q105 0 164 -51t59 -163v-293q-38 -11 -90 -22t-112 -11q-52 0 -95 9.5t-73.5 30.5t-47 55.5t-16.5 84.5zM262 113q9 0 24 2t23 4v110h-53q-35 0 -57 -15t-22 -42q0 -20 8.5 -31.5t21 -17.5t27.5 -8t28 -2z" /> + <glyph glyph-name="aacute.alt" horiz-adv-x="515" +d="M467.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6zM30 169q0 49 20.5 81t52.5 51t71.5 26.5t77.5 7.5h57q-1 18 -9 30t-21.5 18.5t-30 9t-34.5 2.5 +q-24 0 -54 -5.5t-64 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 93.5 24t83.5 8q105 0 164 -51t59 -163v-293q-38 -11 -90 -22t-112 -11q-52 0 -95 9.5t-73.5 30.5t-47 55.5t-16.5 84.5zM262 113q9 0 24 2t23 4v110h-53q-35 0 -57 -15t-22 -42q0 -20 8.5 -31.5 +t21 -17.5t27.5 -8t28 -2z" /> + <glyph glyph-name="acircumflex.alt" horiz-adv-x="515" +d="M251 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1zM30 169q0 49 20.5 81t52.5 51t71.5 26.5t77.5 7.5h57q-1 18 -9 30t-21.5 18.5t-30 9t-34.5 2.5 +q-24 0 -54 -5.5t-64 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 93.5 24t83.5 8q105 0 164 -51t59 -163v-293q-38 -11 -90 -22t-112 -11q-52 0 -95 9.5t-73.5 30.5t-47 55.5t-16.5 84.5zM262 113q9 0 24 2t23 4v110h-53q-35 0 -57 -15t-22 -42q0 -20 8.5 -31.5 +t21 -17.5t27.5 -8t28 -2z" /> + <glyph glyph-name="atilde.alt" horiz-adv-x="515" +d="M62 675q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47z +M30 169q0 49 20.5 81t52.5 51t71.5 26.5t77.5 7.5h57q-1 18 -9 30t-21.5 18.5t-30 9t-34.5 2.5q-24 0 -54 -5.5t-64 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 93.5 24t83.5 8q105 0 164 -51t59 -163v-293q-38 -11 -90 -22t-112 -11q-52 0 -95 9.5t-73.5 30.5 +t-47 55.5t-16.5 84.5zM262 113q9 0 24 2t23 4v110h-53q-35 0 -57 -15t-22 -42q0 -20 8.5 -31.5t21 -17.5t27.5 -8t28 -2z" /> + <glyph glyph-name="adieresis.alt" horiz-adv-x="515" +d="M295 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM70 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z +M30 169q0 49 20.5 81t52.5 51t71.5 26.5t77.5 7.5h57q-1 18 -9 30t-21.5 18.5t-30 9t-34.5 2.5q-24 0 -54 -5.5t-64 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 93.5 24t83.5 8q105 0 164 -51t59 -163v-293q-38 -11 -90 -22t-112 -11q-52 0 -95 9.5t-73.5 30.5 +t-47 55.5t-16.5 84.5zM262 113q9 0 24 2t23 4v110h-53q-35 0 -57 -15t-22 -42q0 -20 8.5 -31.5t21 -17.5t27.5 -8t28 -2z" /> + <glyph glyph-name="aring.alt" horiz-adv-x="515" +d="M145 685q0 54 36 84t89 30t89 -30t36 -84t-36 -84t-89 -30t-89 30t-36 84zM270 635q21 0 35.5 14t14.5 36q0 21 -14.5 35.5t-35.5 14.5q-22 0 -36 -14t-14 -36t14 -36t36 -14zM30 169q0 49 20.5 81t52.5 51t71.5 26.5t77.5 7.5h57q-1 18 -9 30t-21.5 18.5t-30 9 +t-34.5 2.5q-24 0 -54 -5.5t-64 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 93.5 24t83.5 8q105 0 164 -51t59 -163v-293q-38 -11 -90 -22t-112 -11q-52 0 -95 9.5t-73.5 30.5t-47 55.5t-16.5 84.5zM262 113q9 0 24 2t23 4v110h-53q-35 0 -57 -15t-22 -42 +q0 -20 8.5 -31.5t21 -17.5t27.5 -8t28 -2z" /> + <glyph glyph-name="ccedilla.alt" horiz-adv-x="466" +d="M233 -115q-10 0 -22 -1.5t-37 -9.5l-20 20l84 132h84l-49 -76q55 -2 86 -25.5t31 -61.5q0 -52 -43.5 -78.5t-117.5 -26.5q-23 0 -47.5 3t-44.5 11q0 11 5 31t16 36q19 -6 34.5 -8.5t34.5 -2.5q26 0 36 9t10 21t-10 19.5t-30 7.5zM31 258q0 56 16.5 105.5t48.5 86t79.5 58 +t109.5 21.5q21 0 39.5 -1t37 -4.5t38 -9.5t43.5 -15q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25 5.5t-23 3t-24.5 1q-48 0 -77.5 -32t-29.5 -95q0 -67 31.5 -96.5t76.5 -29.5q29 0 51 5.5t51 16.5q17 -27 27 -60.5t10 -76.5q-46 -18 -83.5 -23.5t-75.5 -5.5 +q-64 0 -112.5 20.5t-81 56.5t-49 85.5t-16.5 107.5z" /> + <glyph glyph-name="egrave.alt" horiz-adv-x="537" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-33 0 -55.5 -20.5t-27.5 -63.5h161q-2 39 -21.5 61.5t-56.5 22.5zM93 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="eacute.alt" horiz-adv-x="537" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-33 0 -55.5 -20.5t-27.5 -63.5h161q-2 39 -21.5 61.5t-56.5 22.5zM506.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="ecircumflex.alt" horiz-adv-x="537" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-33 0 -55.5 -20.5t-27.5 -63.5h161q-2 39 -21.5 61.5t-56.5 22.5zM286 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="edieresis.alt" horiz-adv-x="537" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-33 0 -55.5 -20.5t-27.5 -63.5h161q-2 39 -21.5 61.5t-56.5 22.5zM325 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM100 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5 +q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="igrave.alt" horiz-adv-x="311" +d="M-41 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6zM28 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-58z" /> + <glyph glyph-name="iacute.alt" horiz-adv-x="311" +d="M28 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-58zM386.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1 +q42.9971 0 72.9951 6z" /> + <glyph glyph-name="icircumflex.alt" horiz-adv-x="311" +d="M150 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1zM28 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-515q-26 -5 -47 -6.5t-37 -1.5 +q-17 0 -38 1.5t-47 6.5v378h-58z" /> + <glyph glyph-name="idieresis.alt" horiz-adv-x="311" +d="M177 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM-48 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60 +zM28 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-58z" /> + <glyph glyph-name="ntilde.alt" horiz-adv-x="569" +d="M349 302q0 34 -12 53.5t-40 19.5q-13 0 -25.5 -4t-23 -15.5t-17 -32t-6.5 -53.5v-268q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q9 -20 14 -42q23 23 54.5 38t73.5 15q91 0 136.5 -49t45.5 -154v-323 +q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v300zM96 675q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5 +t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47z" /> + <glyph glyph-name="ograve.alt" horiz-adv-x="561" +d="M31 256q0 57 15.5 107t46.5 87t77.5 58t109.5 21q64 0 111 -21t78 -58t46 -87t15 -107t-15 -106t-46 -85t-78 -56.5t-111 -20.5q-63 0 -109.5 20.5t-77.5 56.5t-46.5 85t-15.5 106zM359 256q0 64 -18.5 98t-60.5 34t-60 -34t-18 -98q0 -63 18 -97t60 -34t60.5 34t18.5 97 +zM94 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="oacute.alt" horiz-adv-x="561" +d="M31 256q0 57 15.5 107t46.5 87t77.5 58t109.5 21q64 0 111 -21t78 -58t46 -87t15 -107t-15 -106t-46 -85t-78 -56.5t-111 -20.5q-63 0 -109.5 20.5t-77.5 56.5t-46.5 85t-15.5 106zM359 256q0 64 -18.5 98t-60.5 34t-60 -34t-18 -98q0 -63 18 -97t60 -34t60.5 34t18.5 97 +zM496.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="ocircumflex.alt" horiz-adv-x="561" +d="M31 256q0 57 15.5 107t46.5 87t77.5 58t109.5 21q64 0 111 -21t78 -58t46 -87t15 -107t-15 -106t-46 -85t-78 -56.5t-111 -20.5q-63 0 -109.5 20.5t-77.5 56.5t-46.5 85t-15.5 106zM359 256q0 64 -18.5 98t-60.5 34t-60 -34t-18 -98q0 -63 18 -97t60 -34t60.5 34t18.5 97 +zM280 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="otilde.alt" horiz-adv-x="561" +d="M31 256q0 57 15.5 107t46.5 87t77.5 58t109.5 21q64 0 111 -21t78 -58t46 -87t15 -107t-15 -106t-46 -85t-78 -56.5t-111 -20.5q-63 0 -109.5 20.5t-77.5 56.5t-46.5 85t-15.5 106zM359 256q0 64 -18.5 98t-60.5 34t-60 -34t-18 -98q0 -63 18 -97t60 -34t60.5 34t18.5 97 +zM89 675q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47z +" /> + <glyph glyph-name="odieresis.alt" horiz-adv-x="561" +d="M31 256q0 57 15.5 107t46.5 87t77.5 58t109.5 21q64 0 111 -21t78 -58t46 -87t15 -107t-15 -106t-46 -85t-78 -56.5t-111 -20.5q-63 0 -109.5 20.5t-77.5 56.5t-46.5 85t-15.5 106zM359 256q0 64 -18.5 98t-60.5 34t-60 -34t-18 -98q0 -63 18 -97t60 -34t60.5 34t18.5 97 +zM317 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM92 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z +" /> + <glyph glyph-name="ugrave.alt" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM90 709q18 3 42.5 4.5t50.5 1.5 +q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="uacute.alt" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM505.006 709 +q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="ucircumflex.alt" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM281 714q13 0 34 -1t37 -4 +l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="udieresis.alt" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM316 646q0 30 6 60q15 3 35 4.5 +t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM91 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="yacute.alt" horiz-adv-x="546" +d="M370 517q8 2 30 4t48 2q33 0 57.5 -2t35.5 -4l-188 -620q-12 -39 -29 -64.5t-39 -40.5t-49 -20.5t-58 -5.5q-26 0 -51.5 4.5t-53.5 12.5q-3 36 4 68.5t20 63.5q13 -5 30.5 -8.5t29.5 -3.5q18 0 34.5 8t24.5 36l15 51q-8 -1 -12 -0.5t-13 0.5q-11 0 -22.5 0.5t-27.5 3.5 +l-151 515q11 2 37.5 4t59.5 2q26 0 50 -2t32 -4l87 -363q24 90 50 182.5t49 180.5zM520.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="amacron.alt" horiz-adv-x="515" +d="M410 713q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302zM30 169q0 49 20.5 81t52.5 51t71.5 26.5t77.5 7.5h57q-1 18 -9 30t-21.5 18.5t-30 9t-34.5 2.5q-24 0 -54 -5.5t-64 -17.5q-9 17 -15.5 31t-10 28.5t-5 30 +t-1.5 35.5q48 16 93.5 24t83.5 8q105 0 164 -51t59 -163v-293q-38 -11 -90 -22t-112 -11q-52 0 -95 9.5t-73.5 30.5t-47 55.5t-16.5 84.5zM262 113q9 0 24 2t23 4v110h-53q-35 0 -57 -15t-22 -42q0 -20 8.5 -31.5t21 -17.5t27.5 -8t28 -2z" /> + <glyph glyph-name="abreve.alt" horiz-adv-x="515" +d="M263 658q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13zM30 169q0 49 20.5 81t52.5 51t71.5 26.5t77.5 7.5h57 +q-1 18 -9 30t-21.5 18.5t-30 9t-34.5 2.5q-24 0 -54 -5.5t-64 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 93.5 24t83.5 8q105 0 164 -51t59 -163v-293q-38 -11 -90 -22t-112 -11q-52 0 -95 9.5t-73.5 30.5t-47 55.5t-16.5 84.5zM262 113q9 0 24 2t23 4v110h-53 +q-35 0 -57 -15t-22 -42q0 -20 8.5 -31.5t21 -17.5t27.5 -8t28 -2z" /> + <glyph glyph-name="aogonek.alt" horiz-adv-x="515" +d="M462 26q-51 -30 -85 -62.5t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50q0 48 34 92t97 72h113zM30 169q0 49 20.5 81t52.5 51t71.5 26.5t77.5 7.5h57 +q-1 18 -9 30t-21.5 18.5t-30 9t-34.5 2.5q-24 0 -54 -5.5t-64 -17.5q-9 17 -15.5 31t-10 28.5t-5 30t-1.5 35.5q48 16 93.5 24t83.5 8q105 0 164 -51t59 -163v-293q-38 -11 -90 -22t-112 -11q-52 0 -95 9.5t-73.5 30.5t-47 55.5t-16.5 84.5zM262 113q9 0 24 2t23 4v110h-53 +q-35 0 -57 -15t-22 -42q0 -20 8.5 -31.5t21 -17.5t27.5 -8t28 -2z" /> + <glyph glyph-name="cacute.alt" horiz-adv-x="466" +d="M496.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6zM31 258q0 56 16.5 105.5t48.5 86t79.5 58t109.5 21.5q21 0 39.5 -1t37 -4.5t38 -9.5t43.5 -15q2 -34 -6 -67.5 +t-25 -65.5q-17 6 -30.5 9.5t-25 5.5t-23 3t-24.5 1q-48 0 -77.5 -32t-29.5 -95q0 -67 31.5 -96.5t76.5 -29.5q29 0 51 5.5t51 16.5q17 -27 27 -60.5t10 -76.5q-46 -18 -83.5 -23.5t-75.5 -5.5q-64 0 -112.5 20.5t-81 56.5t-49 85.5t-16.5 107.5z" /> + <glyph glyph-name="ccircumflex.alt" horiz-adv-x="466" +d="M267 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1zM31 258q0 56 16.5 105.5t48.5 86t79.5 58t109.5 21.5q21 0 39.5 -1t37 -4.5t38 -9.5t43.5 -15 +q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25 5.5t-23 3t-24.5 1q-48 0 -77.5 -32t-29.5 -95q0 -67 31.5 -96.5t76.5 -29.5q29 0 51 5.5t51 16.5q17 -27 27 -60.5t10 -76.5q-46 -18 -83.5 -23.5t-75.5 -5.5q-64 0 -112.5 20.5t-81 56.5t-49 85.5t-16.5 107.5z" /> + <glyph glyph-name="cdotaccent.alt" horiz-adv-x="466" +d="M195 650q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5zM31 258q0 56 16.5 105.5t48.5 86t79.5 58t109.5 21.5q21 0 39.5 -1t37 -4.5 +t38 -9.5t43.5 -15q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25 5.5t-23 3t-24.5 1q-48 0 -77.5 -32t-29.5 -95q0 -67 31.5 -96.5t76.5 -29.5q29 0 51 5.5t51 16.5q17 -27 27 -60.5t10 -76.5q-46 -18 -83.5 -23.5t-75.5 -5.5q-64 0 -112.5 20.5t-81 56.5t-49 85.5 +t-16.5 107.5z" /> + <glyph glyph-name="ccaron.alt" horiz-adv-x="466" +d="M31 258q0 56 16.5 105.5t48.5 86t79.5 58t109.5 21.5q21 0 39.5 -1t37 -4.5t38 -9.5t43.5 -15q2 -34 -6 -67.5t-25 -65.5q-17 6 -30.5 9.5t-25 5.5t-23 3t-24.5 1q-48 0 -77.5 -32t-29.5 -95q0 -67 31.5 -96.5t76.5 -29.5q29 0 51 5.5t51 16.5q17 -27 27 -60.5t10 -76.5 +q-46 -18 -83.5 -23.5t-75.5 -5.5q-64 0 -112.5 20.5t-81 56.5t-49 85.5t-16.5 107.5zM300 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="dcaron.alt" horiz-adv-x="681" +d="M345 717q25 4 46 6t38 2t38 -2t47 -6v-700q-51 -14 -101.5 -21.5t-115.5 -7.5q-53 0 -101.5 14.5t-85 46t-58 82t-21.5 121.5q0 57 18.5 107.5t53 87.5t83 58.5t108.5 21.5q25 0 51 -3v193zM203 254q1 -66 30 -93t73 -27q14 0 23.5 0.5t15.5 1.5v250q-3 1 -13.5 2 +t-27.5 1q-26 0 -45 -11t-31.5 -29.5t-18.5 -43t-6 -51.5zM575 719q27 6 60 6q15 0 32.5 -1.5t33.5 -4.5l-23 -204q-23 -6 -48 -6q-13 0 -27.5 1.5t-27.5 4.5v204z" /> + <glyph glyph-name="emacron.alt" horiz-adv-x="537" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-33 0 -55.5 -20.5t-27.5 -63.5h161q-2 39 -21.5 61.5t-56.5 22.5zM438 713q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="ebreve.alt" horiz-adv-x="537" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-33 0 -55.5 -20.5t-27.5 -63.5h161q-2 39 -21.5 61.5t-56.5 22.5zM283 658q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5 +q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="edotaccent.alt" horiz-adv-x="537" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-33 0 -55.5 -20.5t-27.5 -63.5h161q-2 39 -21.5 61.5t-56.5 22.5zM210 650q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="eogonek.alt" horiz-adv-x="537" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-33 0 -55.5 -20.5t-27.5 -63.5h161q-2 39 -21.5 61.5t-56.5 22.5zM483 26q-51 -30 -85 -62.5t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50q0 48 34 92 +t97 72h113z" /> + <glyph glyph-name="ecaron.alt" horiz-adv-x="537" +d="M201 205q11 -41 38.5 -58t72.5 -17q29 0 65 7t71 21q14 -26 24.5 -62t11.5 -75q-89 -33 -182 -33q-72 0 -123.5 20t-84 55.5t-48 84.5t-15.5 107q0 57 16 107t48 87t80 58.5t112 21.5q53 0 94.5 -18t70.5 -49.5t44.5 -76t15.5 -96.5q0 -27 -2.5 -48.5t-4.5 -35.5h-304z +M281 402q-33 0 -55.5 -20.5t-27.5 -63.5h161q-2 39 -21.5 61.5t-56.5 22.5zM300 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="gcircumflex.alt" horiz-adv-x="564" +d="M23 -103q0 44 20 70t54 45q-23 15 -35 39.5t-12 50.5q0 34 13 58.5t39 43.5q-30 25 -46 61t-16 74q0 40 15.5 74.5t44.5 59.5t70.5 39.5t92.5 14.5q45 0 84.5 -12.5t67.5 -32.5q20 20 49 30.5t80 10.5q4 -16 5.5 -34.5t1.5 -32.5q0 -17 -1.5 -37t-5.5 -38l-71 11 +q5 -9 7.5 -25t2.5 -28q0 -40 -15 -74.5t-43 -59.5t-69 -39.5t-93 -14.5q-18 0 -34.5 1.5t-33.5 6.5q-4 -4 -6.5 -12.5t-2.5 -13.5q0 -11 8 -21t31 -10l120 -2q94 -2 138.5 -39t44.5 -112q0 -44 -22 -78t-60 -57t-89.5 -35.5t-111.5 -12.5q-61 0 -103.5 9t-68.5 26.5 +t-38 41.5t-12 54zM258 -125q54 0 83 16t29 39q0 11 -7.5 22.5t-34.5 12.5l-108 2q-15 0 -24.5 -4.5t-15 -11t-8 -15t-2.5 -15.5q0 -24 23 -35t65 -11zM323 339q0 33 -13.5 54.5t-45.5 21.5t-46.5 -21.5t-14.5 -54.5t14.5 -54t46.5 -21t45.5 21t13.5 54zM292 714q13 0 34 -1 +t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="gbreve.alt" horiz-adv-x="564" +d="M23 -103q0 44 20 70t54 45q-23 15 -35 39.5t-12 50.5q0 34 13 58.5t39 43.5q-30 25 -46 61t-16 74q0 40 15.5 74.5t44.5 59.5t70.5 39.5t92.5 14.5q45 0 84.5 -12.5t67.5 -32.5q20 20 49 30.5t80 10.5q4 -16 5.5 -34.5t1.5 -32.5q0 -17 -1.5 -37t-5.5 -38l-71 11 +q5 -9 7.5 -25t2.5 -28q0 -40 -15 -74.5t-43 -59.5t-69 -39.5t-93 -14.5q-18 0 -34.5 1.5t-33.5 6.5q-4 -4 -6.5 -12.5t-2.5 -13.5q0 -11 8 -21t31 -10l120 -2q94 -2 138.5 -39t44.5 -112q0 -44 -22 -78t-60 -57t-89.5 -35.5t-111.5 -12.5q-61 0 -103.5 9t-68.5 26.5 +t-38 41.5t-12 54zM258 -125q54 0 83 16t29 39q0 11 -7.5 22.5t-34.5 12.5l-108 2q-15 0 -24.5 -4.5t-15 -11t-8 -15t-2.5 -15.5q0 -24 23 -35t65 -11zM323 339q0 33 -13.5 54.5t-45.5 21.5t-46.5 -21.5t-14.5 -54.5t14.5 -54t46.5 -21t45.5 21t13.5 54zM290 658q29 0 42 13 +t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="gdotaccent.alt" horiz-adv-x="564" +d="M23 -103q0 44 20 70t54 45q-23 15 -35 39.5t-12 50.5q0 34 13 58.5t39 43.5q-30 25 -46 61t-16 74q0 40 15.5 74.5t44.5 59.5t70.5 39.5t92.5 14.5q45 0 84.5 -12.5t67.5 -32.5q20 20 49 30.5t80 10.5q4 -16 5.5 -34.5t1.5 -32.5q0 -17 -1.5 -37t-5.5 -38l-71 11 +q5 -9 7.5 -25t2.5 -28q0 -40 -15 -74.5t-43 -59.5t-69 -39.5t-93 -14.5q-18 0 -34.5 1.5t-33.5 6.5q-4 -4 -6.5 -12.5t-2.5 -13.5q0 -11 8 -21t31 -10l120 -2q94 -2 138.5 -39t44.5 -112q0 -44 -22 -78t-60 -57t-89.5 -35.5t-111.5 -12.5q-61 0 -103.5 9t-68.5 26.5 +t-38 41.5t-12 54zM258 -125q54 0 83 16t29 39q0 11 -7.5 22.5t-34.5 12.5l-108 2q-15 0 -24.5 -4.5t-15 -11t-8 -15t-2.5 -15.5q0 -24 23 -35t65 -11zM323 339q0 33 -13.5 54.5t-45.5 21.5t-46.5 -21.5t-14.5 -54.5t14.5 -54t46.5 -21t45.5 21t13.5 54zM213 650 +q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="gcommaaccent.alt" horiz-adv-x="564" +d="M23 -103q0 44 20 70t54 45q-23 15 -35 39.5t-12 50.5q0 34 13 58.5t39 43.5q-30 25 -46 61t-16 74q0 40 15.5 74.5t44.5 59.5t70.5 39.5t92.5 14.5q45 0 84.5 -12.5t67.5 -32.5q20 20 49 30.5t80 10.5q4 -16 5.5 -34.5t1.5 -32.5q0 -17 -1.5 -37t-5.5 -38l-71 11 +q5 -9 7.5 -25t2.5 -28q0 -40 -15 -74.5t-43 -59.5t-69 -39.5t-93 -14.5q-18 0 -34.5 1.5t-33.5 6.5q-4 -4 -6.5 -12.5t-2.5 -13.5q0 -11 8 -21t31 -10l120 -2q94 -2 138.5 -39t44.5 -112q0 -44 -22 -78t-60 -57t-89.5 -35.5t-111.5 -12.5q-61 0 -103.5 9t-68.5 26.5 +t-38 41.5t-12 54zM258 -125q54 0 83 16t29 39q0 11 -7.5 22.5t-34.5 12.5l-108 2q-15 0 -24.5 -4.5t-15 -11t-8 -15t-2.5 -15.5q0 -24 23 -35t65 -11zM323 339q0 33 -13.5 54.5t-45.5 21.5t-46.5 -21.5t-14.5 -54.5t14.5 -54t46.5 -21t45.5 21t13.5 54zM377 587 +q-18 -4 -37 -5.5t-38 -1.5q-20 0 -39.5 1.5t-39.5 5.5l73 148q32 7 63 7q15 0 31 -1.5t36 -5.5z" /> + <glyph glyph-name="hcircumflex.alt" horiz-adv-x="571" +d="M56 717q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-230q22 18 49 29.5t63 11.5q91 0 137 -49t46 -154v-323q-26 -5 -47 -6.5t-37 -1.5q-17 0 -37.5 1.5t-47.5 6.5v288q0 41 -11 63t-40 22q-13 0 -26 -4t-24 -15.5t-18 -32t-7 -53.5v-268q-26 -5 -47 -6.5t-37 -1.5 +q-17 0 -38 1.5t-47 6.5v715zM254 899q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="itilde.alt" horiz-adv-x="311" +d="M-48 675q19 22 48.5 38t67.5 16q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47 +zM28 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-58z" /> + <glyph glyph-name="imacron.alt" horiz-adv-x="311" +d="M289 713q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302zM28 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-58z" /> + <glyph glyph-name="ibreve.alt" horiz-adv-x="311" +d="M138 658q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13zM28 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227 +v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-58z" /> + <glyph glyph-name="iogonek.alt" horiz-adv-x="311" +d="M28 380q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-515q-26 -5 -47 -6.5t-37 -1.5q-17 0 -38 1.5t-47 6.5v378h-58zM242 721q5 -23 6.5 -41.5t1.5 -32.5q0 -15 -1.5 -33.5t-6.5 -41.5q-26 -4 -47 -5.5t-37 -1.5q-17 0 -38 1.5t-47 5.5q-5 23 -6.5 41.5t-1.5 33.5 +q0 14 1.5 32.5t6.5 41.5q26 4 47 5.5t38 1.5q16 0 37 -1.5t47 -5.5zM255 26q-51 -30 -85 -62.5t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50q0 48 34 92t97 72h113z +" /> + <glyph glyph-name="jcircumflex.alt" horiz-adv-x="311" +d="M147 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1zM86 380h-58q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-523q0 -99 -49 -142.5t-143 -43.5 +q-52 0 -110 14q-2 38 4.5 70t19.5 62q13 -4 29.5 -6.5t29.5 -2.5q23 0 36.5 11.5t13.5 46.5v377z" /> + <glyph glyph-name="lacute.alt" horiz-adv-x="325" +d="M50 717q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-520q0 -36 8.5 -48t30.5 -12q8 0 20.5 1.5t26.5 6.5q8 -23 11.5 -47.5t3.5 -45.5q0 -14 -0.5 -24t-1.5 -21q-23 -8 -48 -10.5t-44 -2.5q-80 0 -128 44t-48 143v536zM372.006 894q-17.999 3 -42.4971 4.5 +q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="lcommaaccent.alt" horiz-adv-x="325" +d="M50 717q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-520q0 -36 8.5 -48t30.5 -12q8 0 20.5 1.5t26.5 6.5q8 -23 11.5 -47.5t3.5 -45.5q0 -14 -0.5 -24t-1.5 -21q-23 -8 -48 -10.5t-44 -2.5q-80 0 -128 44t-48 143v536zM115 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168 +q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="lcaron.alt" horiz-adv-x="386" +d="M50 717q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-520q0 -36 8.5 -48t30.5 -12q8 0 20.5 1.5t26.5 6.5q8 -23 11.5 -47.5t3.5 -45.5q0 -14 -0.5 -24t-1.5 -21q-23 -8 -48 -10.5t-44 -2.5q-80 0 -128 44t-48 143v536zM280 719q27 6 60 6q15 0 32.5 -1.5t33.5 -4.5l-23 -204 +q-23 -6 -48 -6q-13 0 -27.5 1.5t-27.5 4.5v204z" /> + <glyph glyph-name="ldot.alt" horiz-adv-x="435" +d="M50 717q25 4 46.5 6t38.5 2t37.5 -2t46.5 -6v-520q0 -36 8.5 -48t30.5 -12q8 0 20.5 1.5t26.5 6.5q8 -23 11.5 -47.5t3.5 -45.5q0 -14 -0.5 -24t-1.5 -21q-23 -8 -48 -10.5t-44 -2.5q-80 0 -128 44t-48 143v536zM274 417q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5 +t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="nacute.alt" horiz-adv-x="569" +d="M349 302q0 34 -12 53.5t-40 19.5q-13 0 -25.5 -4t-23 -15.5t-17 -32t-6.5 -53.5v-268q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q9 -20 14 -42q23 23 54.5 38t73.5 15q91 0 136.5 -49t45.5 -154v-323 +q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v300zM501.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="ncommaaccent.alt" horiz-adv-x="569" +d="M349 302q0 34 -12 53.5t-40 19.5q-13 0 -25.5 -4t-23 -15.5t-17 -32t-6.5 -53.5v-268q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q9 -20 14 -42q23 23 54.5 38t73.5 15q91 0 136.5 -49t45.5 -154v-323 +q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v300zM226 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="ncaron.alt" horiz-adv-x="569" +d="M349 302q0 34 -12 53.5t-40 19.5q-13 0 -25.5 -4t-23 -15.5t-17 -32t-6.5 -53.5v-268q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q9 -20 14 -42q23 23 54.5 38t73.5 15q91 0 136.5 -49t45.5 -154v-323 +q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v300zM293 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="omacron.alt" horiz-adv-x="561" +d="M31 256q0 57 15.5 107t46.5 87t77.5 58t109.5 21q64 0 111 -21t78 -58t46 -87t15 -107t-15 -106t-46 -85t-78 -56.5t-111 -20.5q-63 0 -109.5 20.5t-77.5 56.5t-46.5 85t-15.5 106zM359 256q0 64 -18.5 98t-60.5 34t-60 -34t-18 -98q0 -63 18 -97t60 -34t60.5 34t18.5 97 +zM431 713q7 -27 7 -56q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="obreve.alt" horiz-adv-x="561" +d="M31 256q0 57 15.5 107t46.5 87t77.5 58t109.5 21q64 0 111 -21t78 -58t46 -87t15 -107t-15 -106t-46 -85t-78 -56.5t-111 -20.5q-63 0 -109.5 20.5t-77.5 56.5t-46.5 85t-15.5 106zM359 256q0 64 -18.5 98t-60.5 34t-60 -34t-18 -98q0 -63 18 -97t60 -34t60.5 34t18.5 97 +zM280 658q29 0 42 13t14 36q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="ohungarumlaut.alt" horiz-adv-x="561" +d="M31 256q0 57 15.5 107t46.5 87t77.5 58t109.5 21q64 0 111 -21t78 -58t46 -87t15 -107t-15 -106t-46 -85t-78 -56.5t-111 -20.5q-63 0 -109.5 20.5t-77.5 56.5t-46.5 85t-15.5 106zM359 256q0 64 -18.5 98t-60.5 34t-60 -34t-18 -98q0 -63 18 -97t60 -34t60.5 34t18.5 97 +zM232 586q-10 -2 -29 -4t-40 -2q-36 0 -69 6l117 123q22 4 42 5t39 1q41 0 77 -6zM448 586q-11 -2 -29.5 -4t-40.5 -2q-37 0 -68 6l116 123q23 4 43 5t39 1q39 0 77 -6z" /> + <glyph glyph-name="racute.alt" horiz-adv-x="403" +d="M56 517q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q5 -10 9 -21.5t6 -22.5q20 20 48 35t65 15q16 0 31.5 -2t21.5 -4q5 -14 6.5 -34.5t1.5 -34.5q0 -15 -2.5 -37t-7.5 -48q-25 4 -38 4.5t-15 0.5q-14 0 -30.5 -3t-30.5 -15t-24 -36.5t-10 -67.5v-244q-21 -5 -43 -6.5 +t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515zM434.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="rcommaaccent.alt" horiz-adv-x="403" +d="M56 517q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q5 -10 9 -21.5t6 -22.5q20 20 48 35t65 15q16 0 31.5 -2t21.5 -4q5 -14 6.5 -34.5t1.5 -34.5q0 -15 -2.5 -37t-7.5 -48q-25 4 -38 4.5t-15 0.5q-14 0 -30.5 -3t-30.5 -15t-24 -36.5t-10 -67.5v-244q-21 -5 -43 -6.5 +t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515zM75 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="rcaron.alt" horiz-adv-x="403" +d="M56 517q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q5 -10 9 -21.5t6 -22.5q20 20 48 35t65 15q16 0 31.5 -2t21.5 -4q5 -14 6.5 -34.5t1.5 -34.5q0 -15 -2.5 -37t-7.5 -48q-25 4 -38 4.5t-15 0.5q-14 0 -30.5 -3t-30.5 -15t-24 -36.5t-10 -67.5v-244q-21 -5 -43 -6.5 +t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515zM221 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="sacute.alt" horiz-adv-x="460" +d="M306 324q29 -9 53 -20.5t41 -29t26 -43.5t9 -63q0 -38 -16.5 -71t-47 -57t-74 -38t-96.5 -14q-48 0 -86.5 7t-84.5 24q5 68 37 138q63 -30 132 -30q25 0 45.5 5.5t20.5 25.5q0 13 -10.5 19.5t-27.5 11.5l-63 18q-52 15 -87.5 51.5t-35.5 98.5q0 39 15.5 71t43 54.5 +t66.5 34.5t87 12q38 0 80.5 -8t86.5 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -62.5 20t-65.5 9q-23 0 -33.5 -7.5t-10.5 -18.5t12 -17.5t32 -12.5zM459.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5 +t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="scircumflex.alt" horiz-adv-x="460" +d="M306 324q29 -9 53 -20.5t41 -29t26 -43.5t9 -63q0 -38 -16.5 -71t-47 -57t-74 -38t-96.5 -14q-48 0 -86.5 7t-84.5 24q5 68 37 138q63 -30 132 -30q25 0 45.5 5.5t20.5 25.5q0 13 -10.5 19.5t-27.5 11.5l-63 18q-52 15 -87.5 51.5t-35.5 98.5q0 39 15.5 71t43 54.5 +t66.5 34.5t87 12q38 0 80.5 -8t86.5 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -62.5 20t-65.5 9q-23 0 -33.5 -7.5t-10.5 -18.5t12 -17.5t32 -12.5zM240 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1 +q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="scedilla.alt" horiz-adv-x="460" +d="M306 324q29 -9 53 -20.5t41 -29t26 -43.5t9 -63q0 -38 -16.5 -71t-47 -57t-74 -38t-96.5 -14q-48 0 -86.5 7t-84.5 24q5 68 37 138q63 -30 132 -30q25 0 45.5 5.5t20.5 25.5q0 13 -10.5 19.5t-27.5 11.5l-63 18q-52 15 -87.5 51.5t-35.5 98.5q0 39 15.5 71t43 54.5 +t66.5 34.5t87 12q38 0 80.5 -8t86.5 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -62.5 20t-65.5 9q-23 0 -33.5 -7.5t-10.5 -18.5t12 -17.5t32 -12.5zM191 -115q-10 0 -22 -1.5t-37 -9.5l-20 20l84 132h84l-49 -76q55 -2 86 -25.5t31 -61.5q0 -52 -43.5 -78.5t-117.5 -26.5 +q-23 0 -47.5 3t-44.5 11q0 11 5 31t16 36q19 -6 34.5 -8.5t34.5 -2.5q26 0 36 9t10 21t-10 19.5t-30 7.5z" /> + <glyph glyph-name="scaron.alt" horiz-adv-x="460" +d="M306 324q29 -9 53 -20.5t41 -29t26 -43.5t9 -63q0 -38 -16.5 -71t-47 -57t-74 -38t-96.5 -14q-48 0 -86.5 7t-84.5 24q5 68 37 138q63 -30 132 -30q25 0 45.5 5.5t20.5 25.5q0 13 -10.5 19.5t-27.5 11.5l-63 18q-52 15 -87.5 51.5t-35.5 98.5q0 39 15.5 71t43 54.5 +t66.5 34.5t87 12q38 0 80.5 -8t86.5 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -62.5 20t-65.5 9q-23 0 -33.5 -7.5t-10.5 -18.5t12 -17.5t32 -12.5zM256 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5 +t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="uni021B.alt" horiz-adv-x="388" +d="M349 517q5 -20 6.5 -36t1.5 -32t-1.5 -32.5t-6.5 -36.5h-108v-183q0 -36 12.5 -48.5t38.5 -12.5q18 0 34 3.5t29 7.5q10 -22 14 -46.5t4 -47.5q0 -12 -0.5 -25.5t-1.5 -19.5q-27 -6 -54 -10t-52 -4q-47 0 -82.5 9.5t-60.5 30.5t-37.5 55.5t-12.5 84.5v206h-63 +q-2 6 -2 17.5t2 19.5l192 251q5 1 14.5 1.5t25.5 -1.5v-151h108zM149 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="tcommaaccent.alt" horiz-adv-x="388" +d="M349 517q5 -20 6.5 -36t1.5 -32t-1.5 -32.5t-6.5 -36.5h-108v-183q0 -36 12.5 -48.5t38.5 -12.5q18 0 34 3.5t29 7.5q10 -22 14 -46.5t4 -47.5q0 -12 -0.5 -25.5t-1.5 -19.5q-27 -6 -54 -10t-52 -4q-47 0 -82.5 9.5t-60.5 30.5t-37.5 55.5t-12.5 84.5v206h-63 +q-2 6 -2 17.5t2 19.5l192 251q5 1 14.5 1.5t25.5 -1.5v-151h108zM149 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="tcaron.alt" horiz-adv-x="388" +d="M301 719q25 6 55 6q14 0 30 -1.5t31 -4.5l-20 -154q-20 -6 -44 -6q-11 0 -24.5 1.5t-26.5 4.5zM349 517q5 -20 6.5 -36t1.5 -32t-1.5 -32.5t-6.5 -36.5h-108v-183q0 -36 12.5 -48.5t38.5 -12.5q18 0 34 3.5t29 7.5q10 -22 14 -46.5t4 -47.5q0 -12 -0.5 -25.5t-1.5 -19.5 +q-27 -6 -54 -10t-52 -4q-47 0 -82.5 9.5t-60.5 30.5t-37.5 55.5t-12.5 84.5v206h-63q-2 6 -2 17.5t2 19.5l192 251q5 1 14.5 1.5t25.5 -1.5v-151h108z" /> + <glyph glyph-name="utilde.alt" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM87 675q19 22 48.5 38t67.5 16 +q20 0 37.5 -5.5t36.5 -12.5q17 -7 35.5 -12.5t38.5 -5.5t35.5 5.5t36.5 25.5q16 -17 27.5 -40t18.5 -47q-18 -23 -48 -38.5t-65 -15.5q-22 0 -42 6t-38 12q-19 7 -36.5 12.5t-35.5 5.5q-20 0 -36.5 -6t-34.5 -25q-16 17 -27.5 40t-18.5 47z" /> + <glyph glyph-name="umacron.alt" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM428 713q7 -27 7 -56 +q0 -12 -1.5 -27t-5.5 -29h-302q-4 14 -5.5 28.5t-1.5 27.5t1.5 27.5t5.5 28.5h302z" /> + <glyph glyph-name="ubreve.alt" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM277 658q29 0 42 13t14 36 +q15 3 31 5t35 2q20 0 38.5 -1.5t30.5 -4.5q-4 -41 -23 -67t-46 -40.5t-59 -20t-63 -5.5t-63 5.5t-59 20t-46 40.5t-23 67q12 3 30.5 4.5t38.5 1.5q19 0 35 -2t31 -5q1 -23 14 -36t42 -13z" /> + <glyph glyph-name="uring.alt" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM155 685q0 54 36 84t89 30 +t89 -30t36 -84t-36 -84t-89 -30t-89 30t-36 84zM280 635q21 0 35.5 14t14.5 36q0 21 -14.5 35.5t-35.5 14.5q-22 0 -36 -14t-14 -36t14 -36t36 -14z" /> + <glyph glyph-name="uhungarumlaut.alt" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM236 586q-10 -2 -29 -4t-40 -2 +q-36 0 -69 6l117 123q22 4 42 5t39 1q41 0 77 -6zM452 586q-11 -2 -29.5 -4t-40.5 -2q-37 0 -68 6l116 123q23 4 43 5t39 1q39 0 77 -6z" /> + <glyph glyph-name="uogonek.alt" horiz-adv-x="565" +d="M509 24q-17 -6 -40.5 -12t-50 -11.5t-54.5 -8.5t-55 -3q-51 0 -98 8t-82.5 32.5t-56.5 71t-21 124.5v292q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-278q0 -60 20 -82t61 -22q17 0 26 1t13 2v379q22 5 43.5 7t41.5 2q19 0 41 -2t43 -7v-493zM508 26q-51 -30 -85 -62.5 +t-34 -74.5q0 -24 14 -33.5t33 -9.5q12 0 24 3t17 5q12 -16 17.5 -38.5t5.5 -42.5q-15 -6 -41.5 -10.5t-58.5 -4.5q-26 0 -50 5t-43.5 17t-31 32t-11.5 50q0 48 34 92t97 72h113z" /> + <glyph glyph-name="wcircumflex.alt" horiz-adv-x="799" +d="M556 219l62 298q8 2 31 4t49 2q33 0 58.5 -2t36.5 -4l-162 -515q-17 -5 -37 -6.5t-40 -1.5t-40.5 1.5t-42.5 6.5l-73 280q-19 -67 -38.5 -141t-37.5 -139q-21 -5 -41.5 -6.5t-40.5 -1.5t-40 1.5t-37 6.5l-157 515q11 2 38.5 4t60.5 2q26 0 50.5 -2t32.5 -4l65 -306 +l72 306q17 5 37.5 6.5t40.5 1.5t40.5 -1.5t41.5 -6.5zM405 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="ycircumflex.alt" horiz-adv-x="546" +d="M370 517q8 2 30 4t48 2q33 0 57.5 -2t35.5 -4l-188 -620q-12 -39 -29 -64.5t-39 -40.5t-49 -20.5t-58 -5.5q-26 0 -51.5 4.5t-53.5 12.5q-3 36 4 68.5t20 63.5q13 -5 30.5 -8.5t29.5 -3.5q18 0 34.5 8t24.5 36l15 51q-8 -1 -12 -0.5t-13 0.5q-11 0 -22.5 0.5t-27.5 3.5 +l-151 515q11 2 37.5 4t59.5 2q26 0 50 -2t32 -4l87 -363q24 90 50 182.5t49 180.5zM270 714q13 0 34 -1t37 -4l127 -123q-13 -4 -33 -5.5t-40 -1.5q-19 0 -38 1t-38 6l-49 48l-49 -48q-19 -5 -38 -6t-38 -1q-20 0 -40 1.5t-33 5.5l127 123q16 3 37 4t34 1z" /> + <glyph glyph-name="ydieresis.alt" horiz-adv-x="546" +d="M370 517q8 2 30 4t48 2q33 0 57.5 -2t35.5 -4l-188 -620q-12 -39 -29 -64.5t-39 -40.5t-49 -20.5t-58 -5.5q-26 0 -51.5 4.5t-53.5 12.5q-3 36 4 68.5t20 63.5q13 -5 30.5 -8.5t29.5 -3.5q18 0 34.5 8t24.5 36l15 51q-8 -1 -12 -0.5t-13 0.5q-11 0 -22.5 0.5t-27.5 3.5 +l-151 515q11 2 37.5 4t59.5 2q26 0 50 -2t32 -4l87 -363q24 90 50 182.5t49 180.5zM309 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM84 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5 +t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="zacute.alt" horiz-adv-x="481" +d="M262 137h191q7 -41 7 -70q0 -15 -1.5 -30.5t-5.5 -36.5h-420l-16 30l209 350h-171q-5 22 -6.5 38.5t-1.5 31.5t1.5 30.5t6.5 36.5h407l10 -32zM496.006 709q-17.999 3 -42.4971 4.5q-24.499 1.5 -50.4971 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5 +t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="zdotaccent.alt" horiz-adv-x="481" +d="M262 137h191q7 -41 7 -70q0 -15 -1.5 -30.5t-5.5 -36.5h-420l-16 30l209 350h-171q-5 22 -6.5 38.5t-1.5 31.5t1.5 30.5t6.5 36.5h407l10 -32zM192 650q0 16 2.5 31.5t5.5 32.5q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q3 -17 5.5 -32t2.5 -32t-2.5 -32t-5.5 -32 +q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-3 17 -5.5 32.5t-2.5 31.5z" /> + <glyph glyph-name="zcaron.alt" horiz-adv-x="481" +d="M262 137h191q7 -41 7 -70q0 -15 -1.5 -30.5t-5.5 -36.5h-420l-16 30l209 350h-171q-5 22 -6.5 38.5t-1.5 31.5t1.5 30.5t6.5 36.5h407l10 -32zM270 579q-13 0 -34 1t-37 4l-127 123q13 4 33 5.5t40 1.5q19 0 38 -1t38 -6l49 -48l49 48q19 5 38 6t38 1q20 0 40 -1.5 +t33 -5.5l-127 -123q-16 -3 -37 -4t-34 -1z" /> + <glyph glyph-name="scommaaccent.alt" horiz-adv-x="460" +d="M306 324q29 -9 53 -20.5t41 -29t26 -43.5t9 -63q0 -38 -16.5 -71t-47 -57t-74 -38t-96.5 -14q-48 0 -86.5 7t-84.5 24q5 68 37 138q63 -30 132 -30q25 0 45.5 5.5t20.5 25.5q0 13 -10.5 19.5t-27.5 11.5l-63 18q-52 15 -87.5 51.5t-35.5 98.5q0 39 15.5 71t43 54.5 +t66.5 34.5t87 12q38 0 80.5 -8t86.5 -23q-2 -32 -13 -68.5t-25 -64.5q-27 11 -62.5 20t-65.5 9q-23 0 -33.5 -7.5t-10.5 -18.5t12 -17.5t32 -12.5zM150 -68q34 7 73 7q18 0 37 -1.5t38 -5.5l-71 -168q-29 -7 -59 -7t-65 7z" /> + <glyph glyph-name="wgrave.alt" horiz-adv-x="799" +d="M556 219l62 298q8 2 31 4t49 2q33 0 58.5 -2t36.5 -4l-162 -515q-17 -5 -37 -6.5t-40 -1.5t-40.5 1.5t-42.5 6.5l-73 280q-19 -67 -38.5 -141t-37.5 -139q-21 -5 -41.5 -6.5t-40.5 -1.5t-40 1.5t-37 6.5l-157 515q11 2 38.5 4t60.5 2q26 0 50.5 -2t32.5 -4l65 -306 +l72 306q17 5 37.5 6.5t40.5 1.5t40.5 -1.5t41.5 -6.5zM183 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="wacute.alt" horiz-adv-x="799" +d="M556 219l62 298q8 2 31 4t49 2q33 0 58.5 -2t36.5 -4l-162 -515q-17 -5 -37 -6.5t-40 -1.5t-40.5 1.5t-42.5 6.5l-73 280q-19 -67 -38.5 -141t-37.5 -139q-21 -5 -41.5 -6.5t-40.5 -1.5t-40 1.5t-37 6.5l-157 515q11 2 38.5 4t60.5 2q26 0 50.5 -2t32.5 -4l65 -306 +l72 306q17 5 37.5 6.5t40.5 1.5t40.5 -1.5t41.5 -6.5zM638.006 709q-17.999 3 -42.498 4.5q-24.498 1.5 -50.4961 1.5q-52.9971 0 -91.9951 -6l-106.993 -123q16.999 -4 35.498 -5t37.498 -1q42.9971 0 72.9951 6z" /> + <glyph glyph-name="wdieresis.alt" horiz-adv-x="799" +d="M556 219l62 298q8 2 31 4t49 2q33 0 58.5 -2t36.5 -4l-162 -515q-17 -5 -37 -6.5t-40 -1.5t-40.5 1.5t-42.5 6.5l-73 280q-19 -67 -38.5 -141t-37.5 -139q-21 -5 -41.5 -6.5t-40.5 -1.5t-40 1.5t-37 6.5l-157 515q11 2 38.5 4t60.5 2q26 0 50.5 -2t32.5 -4l65 -306 +l72 306q17 5 37.5 6.5t40.5 1.5t40.5 -1.5t41.5 -6.5zM442 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60zM217 646q0 30 6 60q15 3 35 4.5t34 1.5t34 -1.5t36 -4.5q6 -30 6 -60t-6 -60 +q-16 -3 -36 -4.5t-34 -1.5t-34 1.5t-35 4.5q-6 30 -6 60z" /> + <glyph glyph-name="ygrave.alt" horiz-adv-x="546" +d="M370 517q8 2 30 4t48 2q33 0 57.5 -2t35.5 -4l-188 -620q-12 -39 -29 -64.5t-39 -40.5t-49 -20.5t-58 -5.5q-26 0 -51.5 4.5t-53.5 12.5q-3 36 4 68.5t20 63.5q13 -5 30.5 -8.5t29.5 -3.5q18 0 34.5 8t24.5 36l15 51q-8 -1 -12 -0.5t-13 0.5q-11 0 -22.5 0.5t-27.5 3.5 +l-151 515q11 2 37.5 4t59.5 2q26 0 50 -2t32 -4l87 -363q24 90 50 182.5t49 180.5zM68 709q18 3 42.5 4.5t50.5 1.5q53 0 92 -6l107 -123q-17 -4 -35.5 -5t-37.5 -1q-43 0 -73 6z" /> + <glyph glyph-name="napostrophe.alt" horiz-adv-x="569" +d="M349 302q0 34 -12 53.5t-40 19.5q-13 0 -25.5 -4t-23 -15.5t-17 -32t-6.5 -53.5v-268q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v515q13 3 33.5 4.5t39.5 1.5q18 0 35 -2t30 -4q9 -20 14 -42q23 23 54.5 38t73.5 15q91 0 136.5 -49t45.5 -154v-323 +q-21 -5 -43 -6.5t-41 -1.5q-20 0 -41.5 1.5t-43.5 6.5v300zM-53 719q14 3 33.5 4.5t35.5 1.5q42 0 80 -6l-63 -158q-20 -3 -35.5 -4t-35.5 -1q-15 0 -28.5 1t-33.5 4z" /> + <glyph glyph-name="dcroat.alt" horiz-adv-x="543" +d="M191 594q-35 11 -73 11q-5 11 -8 25t-3 34t4 35.5t9 28.5q53 2 99.5 -9.5t87.5 -34.5l56 44q26 -19 45 -55l-41 -32q69 -62 107 -157t38 -210q0 -65 -15 -117.5t-45 -90t-75 -58t-106 -20.5q-60 0 -105 17.5t-75 50t-45 77.5t-15 101q0 54 14.5 98.5t41 76t64 49 +t84.5 17.5q24 0 51.5 -6.5t39.5 -17.5q-6 28 -23 56t-44 50l-75 -58q-11 10 -23.5 25t-18.5 32zM271 115q38 0 55.5 29t17.5 90q0 62 -17.5 90.5t-55.5 28.5t-55.5 -28.5t-17.5 -90.5q0 -119 73 -119z" /> + <glyph glyph-name="dotlessj.alt" horiz-adv-x="311" +d="M86 380h-58q-5 20 -6.5 36.5t-1.5 32.5t1.5 32t6.5 36h227v-523q0 -99 -49 -142.5t-143 -43.5q-52 0 -110 14q-2 38 4.5 70t19.5 62q13 -4 29.5 -6.5t29.5 -2.5q23 0 36.5 11.5t13.5 46.5v377z" /> + <glyph glyph-name="uni00AD" unicode="&#xad;" horiz-adv-x="369" +d="M42 273q0 34 9 76h268q5 -21 6.5 -39.5t1.5 -35.5t-1.5 -36t-6.5 -40h-268q-9 42 -9 75z" /> + <glyph glyph-name="uni00A0" unicode="&#xa0;" horiz-adv-x="220" + /> + <hkern u1="&#x22;" g2="seven.alt2" k="-20" /> + <hkern u1="&#x22;" g2="six.alt2" k="6" /> + <hkern u1="&#x22;" g2="four.alt2" k="65" /> + <hkern u1="&#x22;" u2="&#x37;" k="-20" /> + <hkern u1="&#x22;" u2="&#x36;" k="6" /> + <hkern u1="&#x22;" u2="&#x34;" k="65" /> + <hkern u1="&#x26;" u2="&#x1ef2;" k="30" /> + <hkern u1="&#x26;" u2="&#x21a;" k="40" /> + <hkern u1="&#x26;" u2="&#x17d;" k="40" /> + <hkern u1="&#x26;" u2="&#x17b;" k="40" /> + <hkern u1="&#x26;" u2="&#x179;" k="40" /> + <hkern u1="&#x26;" u2="&#x178;" k="30" /> + <hkern u1="&#x26;" u2="&#x176;" k="30" /> + <hkern u1="&#x26;" u2="&#x166;" k="40" /> + <hkern u1="&#x26;" u2="&#x164;" k="40" /> + <hkern u1="&#x26;" u2="&#x162;" k="40" /> + <hkern u1="&#x26;" u2="&#x134;" k="30" /> + <hkern u1="&#x26;" u2="&#x104;" k="20" /> + <hkern u1="&#x26;" u2="&#x102;" k="20" /> + <hkern u1="&#x26;" u2="&#x100;" k="20" /> + <hkern u1="&#x26;" u2="&#xdd;" k="30" /> + <hkern u1="&#x26;" u2="&#xc5;" k="20" /> + <hkern u1="&#x26;" u2="&#xc4;" k="20" /> + <hkern u1="&#x26;" u2="&#xc3;" k="20" /> + <hkern u1="&#x26;" u2="&#xc2;" k="20" /> + <hkern u1="&#x26;" u2="&#xc1;" k="20" /> + <hkern u1="&#x26;" u2="&#xc0;" k="20" /> + <hkern u1="&#x26;" u2="Z" k="40" /> + <hkern u1="&#x26;" u2="Y" k="30" /> + <hkern u1="&#x26;" u2="X" k="30" /> + <hkern u1="&#x26;" u2="T" k="40" /> + <hkern u1="&#x26;" u2="J" k="30" /> + <hkern u1="&#x26;" u2="A" k="20" /> + <hkern u1="&#x26;" g2="f.alt" k="-30" /> + <hkern u1="&#x26;" u2="&#xc6;" k="60" /> + <hkern u1="&#x27;" g2="seven.alt2" k="-20" /> + <hkern u1="&#x27;" g2="six.alt2" k="6" /> + <hkern u1="&#x27;" g2="four.alt2" k="65" /> + <hkern u1="&#x27;" u2="&#x37;" k="-20" /> + <hkern u1="&#x27;" u2="&#x36;" k="6" /> + <hkern u1="&#x27;" u2="&#x34;" k="65" /> + <hkern u1="&#x28;" g2="j.alt" k="-50" /> + <hkern u1="&#x2a;" u2="&#x104;" k="70" /> + <hkern u1="&#x2a;" u2="&#x102;" k="70" /> + <hkern u1="&#x2a;" u2="&#x100;" k="70" /> + <hkern u1="&#x2a;" u2="&#xc5;" k="70" /> + <hkern u1="&#x2a;" u2="&#xc4;" k="70" /> + <hkern u1="&#x2a;" u2="&#xc3;" k="70" /> + <hkern u1="&#x2a;" u2="&#xc2;" k="70" /> + <hkern u1="&#x2a;" u2="&#xc1;" k="70" /> + <hkern u1="&#x2a;" u2="&#xc0;" k="70" /> + <hkern u1="&#x2a;" u2="A" k="70" /> + <hkern u1="&#x2a;" u2="&#xc6;" k="110" /> + <hkern u1="&#x2c;" g2="y.alt" k="30" /> + <hkern u1="&#x2c;" g2="w.alt" k="60" /> + <hkern u1="&#x2c;" g2="v.alt" k="65" /> + <hkern u1="&#x2c;" g2="nine.alt2" k="38" /> + <hkern u1="&#x2c;" g2="one.alt2" k="27" /> + <hkern u1="&#x2c;" g2="zero.alt2" k="20" /> + <hkern u1="&#x2c;" u2="&#xf809;" k="38" /> + <hkern u1="&#x2c;" u2="&#xf807;" k="20" /> + <hkern u1="&#x2c;" u2="&#xf801;" k="20" /> + <hkern u1="&#x2c;" u2="&#xf800;" k="20" /> + <hkern u1="&#x2c;" u2="v" k="65" /> + <hkern u1="&#x2c;" u2="&#x39;" k="38" /> + <hkern u1="&#x2c;" u2="&#x31;" k="27" /> + <hkern u1="&#x2c;" u2="&#x30;" k="20" /> + <hkern u1="&#x2d;" g2="v.alt" k="20" /> + <hkern u1="&#x2d;" g2="seven.alt2" k="30" /> + <hkern u1="&#x2d;" g2="three.alt2" k="30" /> + <hkern u1="&#x2d;" g2="two.alt2" k="26" /> + <hkern u1="&#x2d;" u2="&#xf807;" k="30" /> + <hkern u1="&#x2d;" u2="&#xf803;" k="30" /> + <hkern u1="&#x2d;" u2="&#xf802;" k="26" /> + <hkern u1="&#x2d;" u2="x" k="10" /> + <hkern u1="&#x2d;" u2="v" k="20" /> + <hkern u1="&#x2d;" u2="&#x37;" k="30" /> + <hkern u1="&#x2d;" u2="&#x33;" k="30" /> + <hkern u1="&#x2d;" u2="&#x32;" k="26" /> + <hkern u1="&#x2e;" g2="y.alt" k="30" /> + <hkern u1="&#x2e;" g2="w.alt" k="60" /> + <hkern u1="&#x2e;" g2="v.alt" k="65" /> + <hkern u1="&#x2e;" g2="nine.alt2" k="38" /> + <hkern u1="&#x2e;" g2="one.alt2" k="27" /> + <hkern u1="&#x2e;" g2="zero.alt2" k="20" /> + <hkern u1="&#x2e;" u2="&#xf809;" k="38" /> + <hkern u1="&#x2e;" u2="&#xf807;" k="20" /> + <hkern u1="&#x2e;" u2="&#xf801;" k="20" /> + <hkern u1="&#x2e;" u2="&#xf800;" k="20" /> + <hkern u1="&#x2e;" u2="v" k="65" /> + <hkern u1="&#x2e;" u2="&#x39;" k="38" /> + <hkern u1="&#x2e;" u2="&#x31;" k="27" /> + <hkern u1="&#x2e;" u2="&#x30;" k="20" /> + <hkern u1="&#x2f;" g2="oe.alt" k="60" /> + <hkern u1="&#x2f;" g2="ae.alt" k="45" /> + <hkern u1="&#x2f;" g2="r.alt" k="50" /> + <hkern u1="&#x2f;" g2="q.alt" k="60" /> + <hkern u1="&#x2f;" g2="p.alt" k="50" /> + <hkern u1="&#x2f;" g2="o.alt" k="60" /> + <hkern u1="&#x2f;" g2="n.alt" k="50" /> + <hkern u1="&#x2f;" g2="m.alt" k="50" /> + <hkern u1="&#x2f;" g2="e.alt" k="60" /> + <hkern u1="&#x2f;" g2="d.alt" k="60" /> + <hkern u1="&#x2f;" g2="c.alt" k="60" /> + <hkern u1="&#x2f;" g2="a.alt" k="45" /> + <hkern u1="&#x2f;" u2="&#x219;" k="30" /> + <hkern u1="&#x2f;" u2="&#x17e;" k="20" /> + <hkern u1="&#x2f;" u2="&#x17c;" k="20" /> + <hkern u1="&#x2f;" u2="&#x17a;" k="20" /> + <hkern u1="&#x2f;" u2="&#x173;" k="10" /> + <hkern u1="&#x2f;" u2="&#x171;" k="10" /> + <hkern u1="&#x2f;" u2="&#x16f;" k="10" /> + <hkern u1="&#x2f;" u2="&#x16d;" k="10" /> + <hkern u1="&#x2f;" u2="&#x16b;" k="10" /> + <hkern u1="&#x2f;" u2="&#x169;" k="10" /> + <hkern u1="&#x2f;" u2="&#x161;" k="30" /> + <hkern u1="&#x2f;" u2="&#x15f;" k="30" /> + <hkern u1="&#x2f;" u2="&#x15d;" k="30" /> + <hkern u1="&#x2f;" u2="&#x15b;" k="30" /> + <hkern u1="&#x2f;" u2="&#x105;" k="35" /> + <hkern u1="&#x2f;" u2="&#x104;" k="70" /> + <hkern u1="&#x2f;" u2="&#x103;" k="35" /> + <hkern u1="&#x2f;" u2="&#x102;" k="70" /> + <hkern u1="&#x2f;" u2="&#x101;" k="35" /> + <hkern u1="&#x2f;" u2="&#x100;" k="70" /> + <hkern u1="&#x2f;" u2="&#xfc;" k="10" /> + <hkern u1="&#x2f;" u2="&#xfb;" k="10" /> + <hkern u1="&#x2f;" u2="&#xfa;" k="10" /> + <hkern u1="&#x2f;" u2="&#xf9;" k="10" /> + <hkern u1="&#x2f;" u2="&#xe6;" k="35" /> + <hkern u1="&#x2f;" u2="&#xe5;" k="35" /> + <hkern u1="&#x2f;" u2="&#xe4;" k="35" /> + <hkern u1="&#x2f;" u2="&#xe3;" k="35" /> + <hkern u1="&#x2f;" u2="&#xe2;" k="35" /> + <hkern u1="&#x2f;" u2="&#xe1;" k="35" /> + <hkern u1="&#x2f;" u2="&#xe0;" k="35" /> + <hkern u1="&#x2f;" u2="&#xdf;" k="30" /> + <hkern u1="&#x2f;" u2="&#xc5;" k="70" /> + <hkern u1="&#x2f;" u2="&#xc4;" k="70" /> + <hkern u1="&#x2f;" u2="&#xc3;" k="70" /> + <hkern u1="&#x2f;" u2="&#xc2;" k="70" /> + <hkern u1="&#x2f;" u2="&#xc1;" k="70" /> + <hkern u1="&#x2f;" u2="&#xc0;" k="70" /> + <hkern u1="&#x2f;" u2="z" k="20" /> + <hkern u1="&#x2f;" u2="u" k="10" /> + <hkern u1="&#x2f;" u2="s" k="30" /> + <hkern u1="&#x2f;" u2="a" k="35" /> + <hkern u1="&#x2f;" u2="A" k="70" /> + <hkern u1="&#x2f;" g2="z.alt" k="50" /> + <hkern u1="&#x2f;" g2="x.alt" k="30" /> + <hkern u1="&#x2f;" g2="w.alt" k="20" /> + <hkern u1="&#x2f;" g2="v.alt" k="10" /> + <hkern u1="&#x2f;" g2="u.alt" k="30" /> + <hkern u1="&#x2f;" g2="t.alt" k="20" /> + <hkern u1="&#x2f;" g2="s.alt" k="70" /> + <hkern u1="&#x2f;" g2="g.alt" k="60" /> + <hkern u1="&#x2f;" g2="six.alt2" k="40" /> + <hkern u1="&#x2f;" g2="four.alt2" k="80" /> + <hkern u1="&#x2f;" u2="&#xf806;" k="46" /> + <hkern u1="&#x2f;" u2="&#xf804;" k="74" /> + <hkern u1="&#x2f;" u2="&#xc6;" k="120" /> + <hkern u1="&#x2f;" u2="&#x39;" k="5" /> + <hkern u1="&#x2f;" u2="&#x36;" k="51" /> + <hkern u1="&#x2f;" u2="&#x34;" k="84" /> + <hkern u1="&#x2f;" u2="&#x30;" k="20" /> + <hkern u1="&#x30;" u2="&#x2026;" k="20" /> + <hkern u1="&#x30;" u2="&#x2e;" k="20" /> + <hkern u1="&#x30;" u2="&#x2c;" k="20" /> + <hkern u1="&#x30;" u2="\" k="15" /> + <hkern u1="&#x30;" u2="&#x37;" k="10" /> + <hkern u1="&#x30;" u2="&#x34;" k="10" /> + <hkern u1="&#x30;" u2="&#x32;" k="10" /> + <hkern u1="&#x31;" u2="&#x27;" k="75" /> + <hkern u1="&#x31;" u2="&#x22;" k="75" /> + <hkern u1="&#x31;" u2="&#xb0;" k="30" /> + <hkern u1="&#x31;" u2="\" k="60" /> + <hkern u1="&#x31;" u2="&#x39;" k="40" /> + <hkern u1="&#x31;" u2="&#x37;" k="40" /> + <hkern u1="&#x31;" u2="&#x36;" k="20" /> + <hkern u1="&#x31;" u2="&#x30;" k="20" /> + <hkern u1="&#x32;" u2="\" k="40" /> + <hkern u1="&#x32;" u2="&#x39;" k="20" /> + <hkern u1="&#x32;" u2="&#x38;" k="10" /> + <hkern u1="&#x32;" u2="&#x37;" k="20" /> + <hkern u1="&#x32;" u2="&#x36;" k="25" /> + <hkern u1="&#x32;" u2="&#x34;" k="20" /> + <hkern u1="&#x33;" u2="&#x2026;" k="22" /> + <hkern u1="&#x33;" u2="&#x2e;" k="22" /> + <hkern u1="&#x33;" u2="&#x2c;" k="22" /> + <hkern u1="&#x33;" u2="&#x39;" k="25" /> + <hkern u1="&#x33;" u2="&#x37;" k="30" /> + <hkern u1="&#x33;" u2="&#x36;" k="20" /> + <hkern u1="&#x33;" u2="&#x35;" k="10" /> + <hkern u1="&#x33;" u2="&#x34;" k="10" /> + <hkern u1="&#x33;" u2="&#x32;" k="15" /> + <hkern u1="&#x33;" u2="&#x31;" k="10" /> + <hkern u1="&#x34;" u2="&#x27;" k="45" /> + <hkern u1="&#x34;" u2="&#x22;" k="45" /> + <hkern u1="&#x34;" u2="&#xb0;" k="30" /> + <hkern u1="&#x34;" u2="\" k="80" /> + <hkern u1="&#x34;" u2="&#x39;" k="40" /> + <hkern u1="&#x34;" u2="&#x37;" k="40" /> + <hkern u1="&#x34;" u2="&#x36;" k="20" /> + <hkern u1="&#x34;" u2="&#x31;" k="10" /> + <hkern u1="&#x34;" u2="&#x30;" k="10" /> + <hkern u1="&#x35;" u2="\" k="20" /> + <hkern u1="&#x35;" u2="&#x39;" k="30" /> + <hkern u1="&#x35;" u2="&#x38;" k="10" /> + <hkern u1="&#x35;" u2="&#x37;" k="35" /> + <hkern u1="&#x35;" u2="&#x36;" k="15" /> + <hkern u1="&#x35;" u2="&#x34;" k="10" /> + <hkern u1="&#x35;" u2="&#x33;" k="10" /> + <hkern u1="&#x35;" u2="&#x32;" k="15" /> + <hkern u1="&#x35;" u2="&#x31;" k="10" /> + <hkern u1="&#x36;" u2="&#x27;" k="26" /> + <hkern u1="&#x36;" u2="&#x22;" k="26" /> + <hkern u1="&#x36;" u2="\" k="40" /> + <hkern u1="&#x36;" u2="&#x39;" k="20" /> + <hkern u1="&#x36;" u2="&#x37;" k="50" /> + <hkern u1="&#x36;" u2="&#x34;" k="20" /> + <hkern u1="&#x36;" u2="&#x33;" k="15" /> + <hkern u1="&#x36;" u2="&#x32;" k="20" /> + <hkern u1="&#x36;" u2="&#x31;" k="10" /> + <hkern u1="&#x37;" u2="&#x2212;" k="20" /> + <hkern u1="&#x37;" u2="&#x2026;" k="96" /> + <hkern u1="&#x37;" u2="&#x2014;" k="20" /> + <hkern u1="&#x37;" u2="&#x2013;" k="20" /> + <hkern u1="&#x37;" u2="&#x2e;" k="96" /> + <hkern u1="&#x37;" u2="&#x2d;" k="20" /> + <hkern u1="&#x37;" u2="&#x2c;" k="96" /> + <hkern u1="&#x37;" u2="&#x27;" k="-20" /> + <hkern u1="&#x37;" u2="&#x22;" k="-20" /> + <hkern u1="&#x37;" u2="&#xa2;" k="40" /> + <hkern u1="&#x37;" u2="&#x39;" k="20" /> + <hkern u1="&#x37;" u2="&#x38;" k="20" /> + <hkern u1="&#x37;" u2="&#x36;" k="50" /> + <hkern u1="&#x37;" u2="&#x35;" k="30" /> + <hkern u1="&#x37;" u2="&#x34;" k="100" /> + <hkern u1="&#x37;" u2="&#x30;" k="20" /> + <hkern u1="&#x37;" u2="&#x2f;" k="63" /> + <hkern u1="&#x38;" u2="\" k="30" /> + <hkern u1="&#x38;" u2="&#x39;" k="20" /> + <hkern u1="&#x38;" u2="&#x37;" k="20" /> + <hkern u1="&#x38;" u2="&#x35;" k="10" /> + <hkern u1="&#x38;" u2="&#x34;" k="10" /> + <hkern u1="&#x38;" u2="&#x33;" k="10" /> + <hkern u1="&#x38;" u2="&#x32;" k="10" /> + <hkern u1="&#x38;" u2="&#x31;" k="10" /> + <hkern u1="&#x39;" u2="\" k="34" /> + <hkern u1="&#x39;" u2="&#x38;" k="10" /> + <hkern u1="&#x39;" u2="&#x37;" k="30" /> + <hkern u1="&#x39;" u2="&#x36;" k="15" /> + <hkern u1="&#x39;" u2="&#x35;" k="20" /> + <hkern u1="&#x39;" u2="&#x34;" k="40" /> + <hkern u1="&#x39;" u2="&#x33;" k="25" /> + <hkern u1="&#x39;" u2="&#x32;" k="25" /> + <hkern u1="&#x39;" u2="&#x31;" k="10" /> + <hkern u1="&#x39;" u2="&#x2f;" k="5" /> + <hkern u1="&#x40;" u2="&#x1ef2;" k="45" /> + <hkern u1="&#x40;" u2="&#x21a;" k="20" /> + <hkern u1="&#x40;" u2="&#x17d;" k="40" /> + <hkern u1="&#x40;" u2="&#x17b;" k="40" /> + <hkern u1="&#x40;" u2="&#x179;" k="40" /> + <hkern u1="&#x40;" u2="&#x178;" k="45" /> + <hkern u1="&#x40;" u2="&#x176;" k="45" /> + <hkern u1="&#x40;" u2="&#x166;" k="20" /> + <hkern u1="&#x40;" u2="&#x164;" k="20" /> + <hkern u1="&#x40;" u2="&#x162;" k="20" /> + <hkern u1="&#x40;" u2="&#x134;" k="40" /> + <hkern u1="&#x40;" u2="&#x104;" k="28" /> + <hkern u1="&#x40;" u2="&#x102;" k="28" /> + <hkern u1="&#x40;" u2="&#x100;" k="28" /> + <hkern u1="&#x40;" u2="&#xdd;" k="45" /> + <hkern u1="&#x40;" u2="&#xc5;" k="28" /> + <hkern u1="&#x40;" u2="&#xc4;" k="28" /> + <hkern u1="&#x40;" u2="&#xc3;" k="28" /> + <hkern u1="&#x40;" u2="&#xc2;" k="28" /> + <hkern u1="&#x40;" u2="&#xc1;" k="28" /> + <hkern u1="&#x40;" u2="&#xc0;" k="28" /> + <hkern u1="&#x40;" u2="Z" k="40" /> + <hkern u1="&#x40;" u2="Y" k="45" /> + <hkern u1="&#x40;" u2="X" k="40" /> + <hkern u1="&#x40;" u2="V" k="20" /> + <hkern u1="&#x40;" u2="T" k="20" /> + <hkern u1="&#x40;" u2="J" k="40" /> + <hkern u1="&#x40;" u2="A" k="28" /> + <hkern u1="&#x40;" u2="&#xc6;" k="75" /> + <hkern u1="A" g2="y.alt" k="30" /> + <hkern u1="A" g2="w.alt" k="30" /> + <hkern u1="A" g2="v.alt" k="40" /> + <hkern u1="A" g2="u.alt" k="10" /> + <hkern u1="A" g2="t.alt" k="20" /> + <hkern u1="A" g2="hyphen.cap" k="40" /> + <hkern u1="A" u2="v" k="40" /> + <hkern u1="A" u2="\" k="80" /> + <hkern u1="A" u2="&#x3f;" k="57" /> + <hkern u1="A" u2="&#x2a;" k="70" /> + <hkern u1="B" g2="z.alt" k="15" /> + <hkern u1="B" g2="w.alt" k="20" /> + <hkern u1="B" g2="v.alt" k="20" /> + <hkern u1="B" u2="&#xc6;" k="10" /> + <hkern u1="B" u2="v" k="20" /> + <hkern u1="B" u2="\" k="40" /> + <hkern u1="B" u2="&#x3f;" k="30" /> + <hkern u1="C" g2="eth.alt" k="20" /> + <hkern u1="C" g2="y.alt" k="50" /> + <hkern u1="C" g2="w.alt" k="50" /> + <hkern u1="C" g2="v.alt" k="50" /> + <hkern u1="C" g2="u.alt" k="20" /> + <hkern u1="C" g2="t.alt" k="40" /> + <hkern u1="C" g2="l.alt" k="10" /> + <hkern u1="C" g2="f.alt" k="20" /> + <hkern u1="C" g2="hyphen.cap" k="54" /> + <hkern u1="C" u2="v" k="50" /> + <hkern u1="D" g2="z.alt" k="20" /> + <hkern u1="D" u2="&#xc6;" k="60" /> + <hkern u1="E" g2="y.alt" k="20" /> + <hkern u1="E" g2="w.alt" k="20" /> + <hkern u1="E" g2="v.alt" k="30" /> + <hkern u1="E" g2="u.alt" k="10" /> + <hkern u1="E" g2="t.alt" k="15" /> + <hkern u1="E" u2="v" k="30" /> + <hkern u1="F" g2="eth.alt" k="35" /> + <hkern u1="F" g2="z.alt" k="30" /> + <hkern u1="F" g2="y.alt" k="20" /> + <hkern u1="F" g2="w.alt" k="20" /> + <hkern u1="F" g2="v.alt" k="30" /> + <hkern u1="F" g2="u.alt" k="30" /> + <hkern u1="F" g2="s.alt" k="35" /> + <hkern u1="F" g2="g.alt" k="40" /> + <hkern u1="F" u2="&#xc6;" k="130" /> + <hkern u1="F" u2="x" k="40" /> + <hkern u1="F" u2="v" k="30" /> + <hkern u1="F" u2="&#x40;" k="20" /> + <hkern u1="F" u2="&#x2f;" k="60" /> + <hkern u1="G" u2="&#x201c;" k="30" /> + <hkern u1="G" u2="&#x2018;" k="30" /> + <hkern u1="G" u2="&#x1ef3;" k="50" /> + <hkern u1="G" u2="&#x1ef2;" k="36" /> + <hkern u1="G" u2="&#x1e84;" k="30" /> + <hkern u1="G" u2="&#x1e82;" k="30" /> + <hkern u1="G" u2="&#x1e80;" k="30" /> + <hkern u1="G" u2="&#x21a;" k="35" /> + <hkern u1="G" u2="&#x178;" k="36" /> + <hkern u1="G" u2="&#x177;" k="50" /> + <hkern u1="G" u2="&#x176;" k="36" /> + <hkern u1="G" u2="&#x174;" k="30" /> + <hkern u1="G" u2="&#x166;" k="35" /> + <hkern u1="G" u2="&#x164;" k="35" /> + <hkern u1="G" u2="&#x162;" k="35" /> + <hkern u1="G" u2="&#x135;" k="-10" /> + <hkern u1="G" u2="&#xff;" k="50" /> + <hkern u1="G" u2="&#xfd;" k="50" /> + <hkern u1="G" u2="&#xdd;" k="36" /> + <hkern u1="G" u2="y" k="50" /> + <hkern u1="G" u2="j" k="-10" /> + <hkern u1="G" u2="Y" k="36" /> + <hkern u1="G" u2="W" k="30" /> + <hkern u1="G" u2="V" k="35" /> + <hkern u1="G" u2="T" k="35" /> + <hkern u1="G" g2="v.alt" k="25" /> + <hkern u1="G" g2="j.alt" k="-10" /> + <hkern u1="G" g2="i.alt" k="-10" /> + <hkern u1="G" u2="v" k="25" /> + <hkern u1="J" g2="z.alt" k="15" /> + <hkern u1="J" u2="&#xc6;" k="35" /> + <hkern u1="K" g2="eth.alt" k="10" /> + <hkern u1="K" g2="y.alt" k="30" /> + <hkern u1="K" g2="w.alt" k="30" /> + <hkern u1="K" g2="v.alt" k="40" /> + <hkern u1="K" g2="u.alt" k="15" /> + <hkern u1="K" g2="t.alt" k="20" /> + <hkern u1="K" g2="hyphen.cap" k="50" /> + <hkern u1="K" u2="v" k="40" /> + <hkern u1="L" g2="y.alt" k="40" /> + <hkern u1="L" g2="w.alt" k="40" /> + <hkern u1="L" g2="v.alt" k="70" /> + <hkern u1="L" g2="t.alt" k="20" /> + <hkern u1="L" g2="i.alt" k="10" /> + <hkern u1="L" g2="hyphen.cap" k="96" /> + <hkern u1="L" u2="v" k="70" /> + <hkern u1="L" u2="\" k="100" /> + <hkern u1="L" u2="&#x3f;" k="66" /> + <hkern u1="L" u2="&#x2a;" k="100" /> + <hkern u1="O" g2="z.alt" k="10" /> + <hkern u1="O" g2="s.alt" k="10" /> + <hkern u1="O" u2="&#xc6;" k="45" /> + <hkern u1="O" u2="\" k="15" /> + <hkern u1="O" u2="&#x3f;" k="30" /> + <hkern u1="O" u2="&#x2f;" k="25" /> + <hkern u1="P" g2="eth.alt" k="30" /> + <hkern u1="P" g2="z.alt" k="15" /> + <hkern u1="P" g2="s.alt" k="20" /> + <hkern u1="P" g2="g.alt" k="20" /> + <hkern u1="P" u2="&#xc6;" k="137" /> + <hkern u1="P" u2="&#x40;" k="20" /> + <hkern u1="P" u2="&#x2f;" k="60" /> + <hkern u1="P" u2="&#x2a;" k="-20" /> + <hkern u1="Q" g2="z.alt" k="10" /> + <hkern u1="Q" g2="s.alt" k="10" /> + <hkern u1="Q" u2="&#xc6;" k="45" /> + <hkern u1="Q" u2="\" k="15" /> + <hkern u1="Q" u2="&#x3f;" k="30" /> + <hkern u1="Q" u2="&#x2f;" k="25" /> + <hkern u1="R" g2="eth.alt" k="20" /> + <hkern u1="R" g2="y.alt" k="20" /> + <hkern u1="R" g2="v.alt" k="25" /> + <hkern u1="R" g2="u.alt" k="30" /> + <hkern u1="R" u2="v" k="25" /> + <hkern u1="R" u2="\" k="40" /> + <hkern u1="R" u2="&#x3f;" k="20" /> + <hkern u1="S" g2="z.alt" k="30" /> + <hkern u1="S" g2="y.alt" k="25" /> + <hkern u1="S" g2="v.alt" k="35" /> + <hkern u1="S" g2="s.alt" k="20" /> + <hkern u1="S" g2="g.alt" k="10" /> + <hkern u1="S" u2="&#xc6;" k="30" /> + <hkern u1="S" u2="v" k="35" /> + <hkern u1="S" u2="&#x3f;" k="20" /> + <hkern u1="S" u2="&#x26;" k="-10" /> + <hkern u1="T" g2="eth.alt" k="45" /> + <hkern u1="T" g2="z.alt" k="80" /> + <hkern u1="T" g2="y.alt" k="70" /> + <hkern u1="T" g2="w.alt" k="60" /> + <hkern u1="T" g2="v.alt" k="70" /> + <hkern u1="T" g2="u.alt" k="80" /> + <hkern u1="T" g2="t.alt" k="60" /> + <hkern u1="T" g2="s.alt" k="90" /> + <hkern u1="T" g2="g.alt" k="110" /> + <hkern u1="T" g2="f.alt" k="30" /> + <hkern u1="T" g2="hyphen.cap" k="80" /> + <hkern u1="T" u2="&#xc6;" k="115" /> + <hkern u1="T" u2="x" k="70" /> + <hkern u1="T" u2="v" k="70" /> + <hkern u1="T" u2="&#x40;" k="70" /> + <hkern u1="T" u2="&#x2f;" k="70" /> + <hkern u1="U" g2="z.alt" k="20" /> + <hkern u1="U" u2="&#xc6;" k="40" /> + <hkern u1="V" g2="eth.alt" k="45" /> + <hkern u1="V" g2="z.alt" k="40" /> + <hkern u1="V" g2="y.alt" k="20" /> + <hkern u1="V" g2="w.alt" k="20" /> + <hkern u1="V" g2="u.alt" k="30" /> + <hkern u1="V" g2="t.alt" k="20" /> + <hkern u1="V" g2="s.alt" k="60" /> + <hkern u1="V" g2="g.alt" k="60" /> + <hkern u1="V" g2="f.alt" k="16" /> + <hkern u1="V" g2="hyphen.cap" k="31" /> + <hkern u1="V" u2="&#xc6;" k="125" /> + <hkern u1="V" u2="x" k="30" /> + <hkern u1="V" u2="&#x40;" k="50" /> + <hkern u1="V" u2="&#x2f;" k="70" /> + <hkern u1="V" u2="&#x26;" k="10" /> + <hkern u1="W" g2="eth.alt" k="35" /> + <hkern u1="W" g2="z.alt" k="25" /> + <hkern u1="W" g2="u.alt" k="10" /> + <hkern u1="W" g2="s.alt" k="30" /> + <hkern u1="W" g2="g.alt" k="30" /> + <hkern u1="W" g2="hyphen.cap" k="20" /> + <hkern u1="W" u2="&#xc6;" k="80" /> + <hkern u1="W" u2="&#x40;" k="26" /> + <hkern u1="W" u2="&#x2f;" k="30" /> + <hkern u1="X" g2="eth.alt" k="10" /> + <hkern u1="X" g2="y.alt" k="25" /> + <hkern u1="X" g2="w.alt" k="40" /> + <hkern u1="X" g2="v.alt" k="40" /> + <hkern u1="X" g2="hyphen.cap" k="50" /> + <hkern u1="X" u2="v" k="40" /> + <hkern u1="X" u2="&#x26;" k="10" /> + <hkern u1="Y" g2="eth.alt" k="70" /> + <hkern u1="Y" g2="z.alt" k="70" /> + <hkern u1="Y" g2="y.alt" k="37" /> + <hkern u1="Y" g2="w.alt" k="34" /> + <hkern u1="Y" g2="v.alt" k="34" /> + <hkern u1="Y" g2="u.alt" k="60" /> + <hkern u1="Y" g2="t.alt" k="50" /> + <hkern u1="Y" g2="s.alt" k="90" /> + <hkern u1="Y" g2="g.alt" k="100" /> + <hkern u1="Y" g2="f.alt" k="30" /> + <hkern u1="Y" g2="hyphen.cap" k="40" /> + <hkern u1="Y" u2="&#xc6;" k="135" /> + <hkern u1="Y" u2="x" k="50" /> + <hkern u1="Y" u2="v" k="34" /> + <hkern u1="Y" u2="&#x40;" k="95" /> + <hkern u1="Y" u2="&#x2f;" k="90" /> + <hkern u1="Y" u2="&#x26;" k="20" /> + <hkern u1="Z" g2="eth.alt" k="20" /> + <hkern u1="Z" g2="y.alt" k="40" /> + <hkern u1="Z" g2="w.alt" k="50" /> + <hkern u1="Z" g2="v.alt" k="35" /> + <hkern u1="Z" g2="u.alt" k="30" /> + <hkern u1="Z" g2="t.alt" k="35" /> + <hkern u1="Z" g2="l.alt" k="10" /> + <hkern u1="Z" g2="g.alt" k="25" /> + <hkern u1="Z" g2="hyphen.cap" k="50" /> + <hkern u1="Z" u2="v" k="35" /> + <hkern u1="[" g2="j.alt" k="-60" /> + <hkern u1="\" u2="&#x1ef2;" k="90" /> + <hkern u1="\" u2="&#x1e84;" k="40" /> + <hkern u1="\" u2="&#x1e82;" k="40" /> + <hkern u1="\" u2="&#x1e80;" k="40" /> + <hkern u1="\" u2="&#x21a;" k="90" /> + <hkern u1="\" u2="&#x178;" k="90" /> + <hkern u1="\" u2="&#x176;" k="90" /> + <hkern u1="\" u2="&#x174;" k="40" /> + <hkern u1="\" u2="&#x166;" k="90" /> + <hkern u1="\" u2="&#x164;" k="90" /> + <hkern u1="\" u2="&#x162;" k="90" /> + <hkern u1="\" u2="&#xdd;" k="90" /> + <hkern u1="\" u2="Y" k="90" /> + <hkern u1="\" u2="W" k="40" /> + <hkern u1="\" u2="V" k="80" /> + <hkern u1="\" u2="T" k="90" /> + <hkern u1="\" g2="y.alt" k="16" /> + <hkern u1="\" g2="w.alt" k="27" /> + <hkern u1="\" g2="v.alt" k="38" /> + <hkern u1="\" u2="&#xf809;" k="17" /> + <hkern u1="\" u2="&#x39;" k="30" /> + <hkern u1="\" u2="&#x37;" k="20" /> + <hkern u1="a" g2="backslash.alt" k="20" /> + <hkern u1="a" u2="v" k="25" /> + <hkern u1="b" u2="&#x201c;" k="60" /> + <hkern u1="b" u2="&#x2018;" k="60" /> + <hkern u1="b" u2="&#x1ef3;" k="45" /> + <hkern u1="b" u2="&#x1e85;" k="25" /> + <hkern u1="b" u2="&#x1e83;" k="25" /> + <hkern u1="b" u2="&#x1e81;" k="25" /> + <hkern u1="b" u2="&#x21b;" k="25" /> + <hkern u1="b" u2="&#x177;" k="45" /> + <hkern u1="b" u2="&#x175;" k="25" /> + <hkern u1="b" u2="&#x167;" k="25" /> + <hkern u1="b" u2="&#x165;" k="25" /> + <hkern u1="b" u2="&#x163;" k="25" /> + <hkern u1="b" u2="&#xff;" k="45" /> + <hkern u1="b" u2="&#xfd;" k="45" /> + <hkern u1="b" u2="y" k="45" /> + <hkern u1="b" u2="w" k="25" /> + <hkern u1="b" u2="t" k="25" /> + <hkern u1="b" g2="backslash.alt" k="20" /> + <hkern u1="b" u2="v" k="35" /> + <hkern u1="d" u2="&#x201c;" k="60" /> + <hkern u1="d" u2="&#x2018;" k="60" /> + <hkern u1="d" u2="&#x1ef3;" k="35" /> + <hkern u1="d" u2="&#x1e85;" k="10" /> + <hkern u1="d" u2="&#x1e83;" k="10" /> + <hkern u1="d" u2="&#x1e81;" k="10" /> + <hkern u1="d" u2="&#x21b;" k="15" /> + <hkern u1="d" u2="&#x17e;" k="15" /> + <hkern u1="d" u2="&#x17c;" k="15" /> + <hkern u1="d" u2="&#x17a;" k="15" /> + <hkern u1="d" u2="&#x177;" k="35" /> + <hkern u1="d" u2="&#x175;" k="10" /> + <hkern u1="d" u2="&#x167;" k="15" /> + <hkern u1="d" u2="&#x165;" k="15" /> + <hkern u1="d" u2="&#x163;" k="15" /> + <hkern u1="d" u2="&#xff;" k="35" /> + <hkern u1="d" u2="&#xfd;" k="35" /> + <hkern u1="d" u2="z" k="15" /> + <hkern u1="d" u2="y" k="35" /> + <hkern u1="d" u2="w" k="10" /> + <hkern u1="d" u2="t" k="15" /> + <hkern u1="d" u2="x" k="10" /> + <hkern u1="d" u2="v" k="20" /> + <hkern u1="e" u2="v" k="10" /> + <hkern u1="f" g2="slash.alt" k="20" /> + <hkern u1="f" g2="at.alt" k="10" /> + <hkern u1="f" u2="&#x2a;" k="-25" /> + <hkern u1="g" u2="&#x201c;" k="40" /> + <hkern u1="g" u2="&#x2018;" k="40" /> + <hkern u1="g" u2="&#x1ef3;" k="26" /> + <hkern u1="g" u2="&#x1e85;" k="15" /> + <hkern u1="g" u2="&#x1e83;" k="15" /> + <hkern u1="g" u2="&#x1e81;" k="15" /> + <hkern u1="g" u2="&#x177;" k="26" /> + <hkern u1="g" u2="&#x175;" k="15" /> + <hkern u1="g" u2="&#xff;" k="26" /> + <hkern u1="g" u2="&#xfd;" k="26" /> + <hkern u1="g" u2="y" k="26" /> + <hkern u1="g" u2="w" k="15" /> + <hkern u1="g" u2="v" k="20" /> + <hkern u1="j" u2="x" k="10" /> + <hkern u1="l" g2="asterisk.alt" k="40" /> + <hkern u1="l" g2="backslash.alt" k="50" /> + <hkern u1="l" u2="v" k="70" /> + <hkern u1="m" g2="backslash.alt" k="10" /> + <hkern u1="m" u2="v" k="25" /> + <hkern u1="n" g2="backslash.alt" k="10" /> + <hkern u1="n" u2="v" k="25" /> + <hkern u1="o" g2="backslash.alt" k="5" /> + <hkern u1="o" u2="x" k="15" /> + <hkern u1="o" u2="v" k="15" /> + <hkern u1="o" u2="\" k="50" /> + <hkern u1="o" u2="&#x3f;" k="20" /> + <hkern u1="o" u2="&#x2a;" k="30" /> + <hkern u1="p" u2="&#x201c;" k="40" /> + <hkern u1="p" u2="&#x2018;" k="40" /> + <hkern u1="p" u2="&#x1ef3;" k="25" /> + <hkern u1="p" u2="&#x17e;" k="10" /> + <hkern u1="p" u2="&#x17c;" k="10" /> + <hkern u1="p" u2="&#x17a;" k="10" /> + <hkern u1="p" u2="&#x177;" k="25" /> + <hkern u1="p" u2="&#x135;" k="16" /> + <hkern u1="p" u2="&#x105;" k="10" /> + <hkern u1="p" u2="&#x103;" k="10" /> + <hkern u1="p" u2="&#x101;" k="10" /> + <hkern u1="p" u2="&#xff;" k="25" /> + <hkern u1="p" u2="&#xfd;" k="25" /> + <hkern u1="p" u2="&#xe6;" k="10" /> + <hkern u1="p" u2="&#xe5;" k="10" /> + <hkern u1="p" u2="&#xe4;" k="10" /> + <hkern u1="p" u2="&#xe3;" k="10" /> + <hkern u1="p" u2="&#xe2;" k="10" /> + <hkern u1="p" u2="&#xe1;" k="10" /> + <hkern u1="p" u2="&#xe0;" k="10" /> + <hkern u1="p" u2="z" k="10" /> + <hkern u1="p" u2="y" k="25" /> + <hkern u1="p" u2="j" k="16" /> + <hkern u1="p" u2="a" k="10" /> + <hkern u1="p" g2="slash.alt" k="25" /> + <hkern u1="p" u2="x" k="20" /> + <hkern u1="q" g2="backslash.alt" k="5" /> + <hkern u1="q" u2="x" k="15" /> + <hkern u1="q" u2="v" k="15" /> + <hkern u1="q" u2="\" k="50" /> + <hkern u1="q" u2="&#x3f;" k="20" /> + <hkern u1="q" u2="&#x2a;" k="30" /> + <hkern u1="r" g2="backslash.alt" k="25" /> + <hkern u1="r" u2="v" k="30" /> + <hkern u1="t" g2="slash.alt" k="50" /> + <hkern u1="t" g2="at.alt" k="30" /> + <hkern u1="v" u2="&#x2212;" k="20" /> + <hkern u1="v" u2="&#x2026;" k="65" /> + <hkern u1="v" u2="&#x2014;" k="20" /> + <hkern u1="v" u2="&#x2013;" k="20" /> + <hkern u1="v" u2="&#x219;" k="5" /> + <hkern u1="v" u2="&#x161;" k="5" /> + <hkern u1="v" u2="&#x15f;" k="5" /> + <hkern u1="v" u2="&#x15d;" k="5" /> + <hkern u1="v" u2="&#x15b;" k="5" /> + <hkern u1="v" u2="&#x153;" k="15" /> + <hkern u1="v" u2="&#x151;" k="15" /> + <hkern u1="v" u2="&#x14f;" k="15" /> + <hkern u1="v" u2="&#x14d;" k="15" /> + <hkern u1="v" u2="&#x123;" k="15" /> + <hkern u1="v" u2="&#x121;" k="15" /> + <hkern u1="v" u2="&#x11f;" k="15" /> + <hkern u1="v" u2="&#x11d;" k="15" /> + <hkern u1="v" u2="&#x11b;" k="15" /> + <hkern u1="v" u2="&#x119;" k="15" /> + <hkern u1="v" u2="&#x117;" k="15" /> + <hkern u1="v" u2="&#x115;" k="15" /> + <hkern u1="v" u2="&#x113;" k="15" /> + <hkern u1="v" u2="&#x10d;" k="15" /> + <hkern u1="v" u2="&#x10b;" k="15" /> + <hkern u1="v" u2="&#x109;" k="15" /> + <hkern u1="v" u2="&#x107;" k="15" /> + <hkern u1="v" u2="&#x105;" k="20" /> + <hkern u1="v" u2="&#x103;" k="20" /> + <hkern u1="v" u2="&#x101;" k="20" /> + <hkern u1="v" u2="&#xf8;" k="15" /> + <hkern u1="v" u2="&#xf6;" k="15" /> + <hkern u1="v" u2="&#xf5;" k="15" /> + <hkern u1="v" u2="&#xf4;" k="15" /> + <hkern u1="v" u2="&#xf3;" k="15" /> + <hkern u1="v" u2="&#xf2;" k="15" /> + <hkern u1="v" u2="&#xeb;" k="15" /> + <hkern u1="v" u2="&#xea;" k="15" /> + <hkern u1="v" u2="&#xe9;" k="15" /> + <hkern u1="v" u2="&#xe8;" k="15" /> + <hkern u1="v" u2="&#xe7;" k="15" /> + <hkern u1="v" u2="&#xe6;" k="20" /> + <hkern u1="v" u2="&#xe5;" k="20" /> + <hkern u1="v" u2="&#xe4;" k="20" /> + <hkern u1="v" u2="&#xe3;" k="20" /> + <hkern u1="v" u2="&#xe2;" k="20" /> + <hkern u1="v" u2="&#xe1;" k="20" /> + <hkern u1="v" u2="&#xe0;" k="20" /> + <hkern u1="v" u2="&#xdf;" k="5" /> + <hkern u1="v" u2="s" k="5" /> + <hkern u1="v" u2="q" k="15" /> + <hkern u1="v" u2="o" k="15" /> + <hkern u1="v" u2="g" k="15" /> + <hkern u1="v" u2="e" k="15" /> + <hkern u1="v" u2="c" k="15" /> + <hkern u1="v" u2="a" k="20" /> + <hkern u1="v" u2="&#x2e;" k="65" /> + <hkern u1="v" u2="&#x2d;" k="20" /> + <hkern u1="v" u2="&#x2c;" k="65" /> + <hkern u1="v" g2="slash.alt" k="45" /> + <hkern u1="v" g2="at.alt" k="30" /> + <hkern u1="w" g2="slash.alt" k="30" /> + <hkern u1="w" g2="at.alt" k="20" /> + <hkern u1="x" u2="&#x2212;" k="10" /> + <hkern u1="x" u2="&#x201c;" k="20" /> + <hkern u1="x" u2="&#x2018;" k="20" /> + <hkern u1="x" u2="&#x2014;" k="10" /> + <hkern u1="x" u2="&#x2013;" k="10" /> + <hkern u1="x" u2="&#x153;" k="15" /> + <hkern u1="x" u2="&#x151;" k="15" /> + <hkern u1="x" u2="&#x14f;" k="15" /> + <hkern u1="x" u2="&#x14d;" k="15" /> + <hkern u1="x" u2="&#x123;" k="15" /> + <hkern u1="x" u2="&#x121;" k="15" /> + <hkern u1="x" u2="&#x11f;" k="15" /> + <hkern u1="x" u2="&#x11d;" k="15" /> + <hkern u1="x" u2="&#x11b;" k="15" /> + <hkern u1="x" u2="&#x119;" k="15" /> + <hkern u1="x" u2="&#x117;" k="15" /> + <hkern u1="x" u2="&#x115;" k="15" /> + <hkern u1="x" u2="&#x113;" k="15" /> + <hkern u1="x" u2="&#x10d;" k="15" /> + <hkern u1="x" u2="&#x10b;" k="15" /> + <hkern u1="x" u2="&#x109;" k="15" /> + <hkern u1="x" u2="&#x107;" k="15" /> + <hkern u1="x" u2="&#xf8;" k="15" /> + <hkern u1="x" u2="&#xf6;" k="15" /> + <hkern u1="x" u2="&#xf5;" k="15" /> + <hkern u1="x" u2="&#xf4;" k="15" /> + <hkern u1="x" u2="&#xf3;" k="15" /> + <hkern u1="x" u2="&#xf2;" k="15" /> + <hkern u1="x" u2="&#xeb;" k="15" /> + <hkern u1="x" u2="&#xea;" k="15" /> + <hkern u1="x" u2="&#xe9;" k="15" /> + <hkern u1="x" u2="&#xe8;" k="15" /> + <hkern u1="x" u2="&#xe7;" k="15" /> + <hkern u1="x" u2="q" k="15" /> + <hkern u1="x" u2="o" k="15" /> + <hkern u1="x" u2="g" k="15" /> + <hkern u1="x" u2="e" k="15" /> + <hkern u1="x" u2="c" k="15" /> + <hkern u1="x" u2="&#x2d;" k="10" /> + <hkern u1="y" g2="slash.alt" k="75" /> + <hkern u1="y" g2="ampersand.alt" k="20" /> + <hkern u1="y" g2="at.alt" k="55" /> + <hkern u1="z" g2="at.alt" k="10" /> + <hkern u1="z" u2="&#x2f;" k="-10" /> + <hkern u1="&#x7b;" g2="j.alt" k="-50" /> + <hkern u1="&#xbb;" u2="&#xc6;" k="40" /> + <hkern u1="&#xbf;" u2="&#x1ef2;" k="70" /> + <hkern u1="&#xbf;" u2="&#x21a;" k="40" /> + <hkern u1="&#xbf;" u2="&#x178;" k="70" /> + <hkern u1="&#xbf;" u2="&#x176;" k="70" /> + <hkern u1="&#xbf;" u2="&#x166;" k="40" /> + <hkern u1="&#xbf;" u2="&#x164;" k="40" /> + <hkern u1="&#xbf;" u2="&#x162;" k="40" /> + <hkern u1="&#xbf;" u2="&#xdd;" k="70" /> + <hkern u1="&#xbf;" u2="Y" k="70" /> + <hkern u1="&#xbf;" u2="V" k="43" /> + <hkern u1="&#xbf;" u2="T" k="40" /> + <hkern u1="&#xbf;" g2="j.alt" k="-40" /> + <hkern u1="&#xc0;" g2="y.alt" k="30" /> + <hkern u1="&#xc0;" g2="w.alt" k="30" /> + <hkern u1="&#xc0;" g2="v.alt" k="40" /> + <hkern u1="&#xc0;" g2="u.alt" k="10" /> + <hkern u1="&#xc0;" g2="t.alt" k="20" /> + <hkern u1="&#xc0;" g2="hyphen.cap" k="40" /> + <hkern u1="&#xc0;" u2="v" k="40" /> + <hkern u1="&#xc0;" u2="\" k="80" /> + <hkern u1="&#xc0;" u2="&#x3f;" k="57" /> + <hkern u1="&#xc0;" u2="&#x2a;" k="70" /> + <hkern u1="&#xc1;" g2="y.alt" k="30" /> + <hkern u1="&#xc1;" g2="w.alt" k="30" /> + <hkern u1="&#xc1;" g2="v.alt" k="40" /> + <hkern u1="&#xc1;" g2="u.alt" k="10" /> + <hkern u1="&#xc1;" g2="t.alt" k="20" /> + <hkern u1="&#xc1;" g2="hyphen.cap" k="40" /> + <hkern u1="&#xc1;" u2="v" k="40" /> + <hkern u1="&#xc1;" u2="\" k="80" /> + <hkern u1="&#xc1;" u2="&#x3f;" k="57" /> + <hkern u1="&#xc1;" u2="&#x2a;" k="70" /> + <hkern u1="&#xc2;" g2="y.alt" k="30" /> + <hkern u1="&#xc2;" g2="w.alt" k="30" /> + <hkern u1="&#xc2;" g2="v.alt" k="40" /> + <hkern u1="&#xc2;" g2="u.alt" k="10" /> + <hkern u1="&#xc2;" g2="t.alt" k="20" /> + <hkern u1="&#xc2;" g2="hyphen.cap" k="40" /> + <hkern u1="&#xc2;" u2="v" k="40" /> + <hkern u1="&#xc2;" u2="\" k="80" /> + <hkern u1="&#xc2;" u2="&#x3f;" k="57" /> + <hkern u1="&#xc2;" u2="&#x2a;" k="70" /> + <hkern u1="&#xc3;" g2="y.alt" k="30" /> + <hkern u1="&#xc3;" g2="w.alt" k="30" /> + <hkern u1="&#xc3;" g2="v.alt" k="40" /> + <hkern u1="&#xc3;" g2="u.alt" k="10" /> + <hkern u1="&#xc3;" g2="t.alt" k="20" /> + <hkern u1="&#xc3;" g2="hyphen.cap" k="40" /> + <hkern u1="&#xc3;" u2="v" k="40" /> + <hkern u1="&#xc3;" u2="\" k="80" /> + <hkern u1="&#xc3;" u2="&#x3f;" k="57" /> + <hkern u1="&#xc3;" u2="&#x2a;" k="70" /> + <hkern u1="&#xc4;" g2="y.alt" k="30" /> + <hkern u1="&#xc4;" g2="w.alt" k="30" /> + <hkern u1="&#xc4;" g2="v.alt" k="40" /> + <hkern u1="&#xc4;" g2="u.alt" k="10" /> + <hkern u1="&#xc4;" g2="t.alt" k="20" /> + <hkern u1="&#xc4;" g2="hyphen.cap" k="40" /> + <hkern u1="&#xc4;" u2="v" k="40" /> + <hkern u1="&#xc4;" u2="\" k="80" /> + <hkern u1="&#xc4;" u2="&#x3f;" k="57" /> + <hkern u1="&#xc4;" u2="&#x2a;" k="70" /> + <hkern u1="&#xc5;" g2="y.alt" k="30" /> + <hkern u1="&#xc5;" g2="w.alt" k="30" /> + <hkern u1="&#xc5;" g2="v.alt" k="40" /> + <hkern u1="&#xc5;" g2="u.alt" k="10" /> + <hkern u1="&#xc5;" g2="t.alt" k="20" /> + <hkern u1="&#xc5;" g2="hyphen.cap" k="40" /> + <hkern u1="&#xc5;" u2="v" k="40" /> + <hkern u1="&#xc5;" u2="\" k="80" /> + <hkern u1="&#xc5;" u2="&#x3f;" k="57" /> + <hkern u1="&#xc5;" u2="&#x2a;" k="70" /> + <hkern u1="&#xc6;" g2="y.alt" k="20" /> + <hkern u1="&#xc6;" g2="w.alt" k="20" /> + <hkern u1="&#xc6;" g2="v.alt" k="30" /> + <hkern u1="&#xc6;" g2="u.alt" k="10" /> + <hkern u1="&#xc6;" g2="t.alt" k="15" /> + <hkern u1="&#xc6;" u2="v" k="30" /> + <hkern u1="&#xc7;" g2="eth.alt" k="20" /> + <hkern u1="&#xc7;" g2="y.alt" k="50" /> + <hkern u1="&#xc7;" g2="w.alt" k="50" /> + <hkern u1="&#xc7;" g2="v.alt" k="50" /> + <hkern u1="&#xc7;" g2="u.alt" k="20" /> + <hkern u1="&#xc7;" g2="t.alt" k="40" /> + <hkern u1="&#xc7;" g2="l.alt" k="10" /> + <hkern u1="&#xc7;" g2="f.alt" k="20" /> + <hkern u1="&#xc7;" g2="hyphen.cap" k="54" /> + <hkern u1="&#xc7;" u2="v" k="50" /> + <hkern u1="&#xc8;" g2="y.alt" k="20" /> + <hkern u1="&#xc8;" g2="w.alt" k="20" /> + <hkern u1="&#xc8;" g2="v.alt" k="30" /> + <hkern u1="&#xc8;" g2="u.alt" k="10" /> + <hkern u1="&#xc8;" g2="t.alt" k="15" /> + <hkern u1="&#xc8;" u2="v" k="30" /> + <hkern u1="&#xc9;" g2="y.alt" k="20" /> + <hkern u1="&#xc9;" g2="w.alt" k="20" /> + <hkern u1="&#xc9;" g2="v.alt" k="30" /> + <hkern u1="&#xc9;" g2="u.alt" k="10" /> + <hkern u1="&#xc9;" g2="t.alt" k="15" /> + <hkern u1="&#xc9;" u2="v" k="30" /> + <hkern u1="&#xca;" g2="y.alt" k="20" /> + <hkern u1="&#xca;" g2="w.alt" k="20" /> + <hkern u1="&#xca;" g2="v.alt" k="30" /> + <hkern u1="&#xca;" g2="u.alt" k="10" /> + <hkern u1="&#xca;" g2="t.alt" k="15" /> + <hkern u1="&#xca;" u2="v" k="30" /> + <hkern u1="&#xcb;" g2="y.alt" k="20" /> + <hkern u1="&#xcb;" g2="w.alt" k="20" /> + <hkern u1="&#xcb;" g2="v.alt" k="30" /> + <hkern u1="&#xcb;" g2="u.alt" k="10" /> + <hkern u1="&#xcb;" g2="t.alt" k="15" /> + <hkern u1="&#xcb;" u2="v" k="30" /> + <hkern u1="&#xd0;" g2="z.alt" k="20" /> + <hkern u1="&#xd0;" u2="&#xc6;" k="60" /> + <hkern u1="&#xd2;" g2="z.alt" k="10" /> + <hkern u1="&#xd2;" g2="s.alt" k="10" /> + <hkern u1="&#xd2;" u2="&#xc6;" k="45" /> + <hkern u1="&#xd2;" u2="\" k="15" /> + <hkern u1="&#xd2;" u2="&#x3f;" k="30" /> + <hkern u1="&#xd2;" u2="&#x2f;" k="25" /> + <hkern u1="&#xd3;" g2="z.alt" k="10" /> + <hkern u1="&#xd3;" g2="s.alt" k="10" /> + <hkern u1="&#xd3;" u2="&#xc6;" k="45" /> + <hkern u1="&#xd3;" u2="\" k="15" /> + <hkern u1="&#xd3;" u2="&#x3f;" k="30" /> + <hkern u1="&#xd3;" u2="&#x2f;" k="25" /> + <hkern u1="&#xd4;" g2="z.alt" k="10" /> + <hkern u1="&#xd4;" g2="s.alt" k="10" /> + <hkern u1="&#xd4;" u2="&#xc6;" k="45" /> + <hkern u1="&#xd4;" u2="\" k="15" /> + <hkern u1="&#xd4;" u2="&#x3f;" k="30" /> + <hkern u1="&#xd4;" u2="&#x2f;" k="25" /> + <hkern u1="&#xd5;" g2="z.alt" k="10" /> + <hkern u1="&#xd5;" g2="s.alt" k="10" /> + <hkern u1="&#xd5;" u2="&#xc6;" k="45" /> + <hkern u1="&#xd5;" u2="\" k="15" /> + <hkern u1="&#xd5;" u2="&#x3f;" k="30" /> + <hkern u1="&#xd5;" u2="&#x2f;" k="25" /> + <hkern u1="&#xd6;" g2="z.alt" k="10" /> + <hkern u1="&#xd6;" g2="s.alt" k="10" /> + <hkern u1="&#xd6;" u2="&#xc6;" k="45" /> + <hkern u1="&#xd6;" u2="\" k="15" /> + <hkern u1="&#xd6;" u2="&#x3f;" k="30" /> + <hkern u1="&#xd6;" u2="&#x2f;" k="25" /> + <hkern u1="&#xd8;" g2="z.alt" k="10" /> + <hkern u1="&#xd8;" g2="s.alt" k="10" /> + <hkern u1="&#xd8;" u2="&#xc6;" k="45" /> + <hkern u1="&#xd8;" u2="\" k="15" /> + <hkern u1="&#xd8;" u2="&#x3f;" k="30" /> + <hkern u1="&#xd8;" u2="&#x2f;" k="25" /> + <hkern u1="&#xd9;" g2="z.alt" k="20" /> + <hkern u1="&#xd9;" u2="&#xc6;" k="40" /> + <hkern u1="&#xda;" g2="z.alt" k="20" /> + <hkern u1="&#xda;" u2="&#xc6;" k="40" /> + <hkern u1="&#xdb;" g2="z.alt" k="20" /> + <hkern u1="&#xdb;" u2="&#xc6;" k="40" /> + <hkern u1="&#xdc;" g2="z.alt" k="20" /> + <hkern u1="&#xdc;" u2="&#xc6;" k="40" /> + <hkern u1="&#xdd;" g2="eth.alt" k="70" /> + <hkern u1="&#xdd;" g2="z.alt" k="70" /> + <hkern u1="&#xdd;" g2="y.alt" k="37" /> + <hkern u1="&#xdd;" g2="w.alt" k="34" /> + <hkern u1="&#xdd;" g2="v.alt" k="34" /> + <hkern u1="&#xdd;" g2="u.alt" k="60" /> + <hkern u1="&#xdd;" g2="t.alt" k="50" /> + <hkern u1="&#xdd;" g2="s.alt" k="90" /> + <hkern u1="&#xdd;" g2="g.alt" k="100" /> + <hkern u1="&#xdd;" g2="f.alt" k="30" /> + <hkern u1="&#xdd;" g2="hyphen.cap" k="40" /> + <hkern u1="&#xdd;" u2="&#xc6;" k="135" /> + <hkern u1="&#xdd;" u2="x" k="50" /> + <hkern u1="&#xdd;" u2="v" k="34" /> + <hkern u1="&#xdd;" u2="&#x40;" k="95" /> + <hkern u1="&#xdd;" u2="&#x2f;" k="90" /> + <hkern u1="&#xdd;" u2="&#x26;" k="20" /> + <hkern u1="&#xde;" u2="&#x2026;" k="40" /> + <hkern u1="&#xde;" u2="&#x201d;" k="10" /> + <hkern u1="&#xde;" u2="&#x201c;" k="42" /> + <hkern u1="&#xde;" u2="&#x2019;" k="10" /> + <hkern u1="&#xde;" u2="&#x2018;" k="42" /> + <hkern u1="&#xde;" u2="&#x1ef2;" k="50" /> + <hkern u1="&#xde;" u2="&#x1e84;" k="10" /> + <hkern u1="&#xde;" u2="&#x1e82;" k="10" /> + <hkern u1="&#xde;" u2="&#x1e80;" k="10" /> + <hkern u1="&#xde;" u2="&#x2bc;" k="10" /> + <hkern u1="&#xde;" u2="&#x21a;" k="50" /> + <hkern u1="&#xde;" u2="&#x17d;" k="60" /> + <hkern u1="&#xde;" u2="&#x17b;" k="60" /> + <hkern u1="&#xde;" u2="&#x179;" k="60" /> + <hkern u1="&#xde;" u2="&#x178;" k="50" /> + <hkern u1="&#xde;" u2="&#x176;" k="50" /> + <hkern u1="&#xde;" u2="&#x174;" k="10" /> + <hkern u1="&#xde;" u2="&#x166;" k="50" /> + <hkern u1="&#xde;" u2="&#x164;" k="50" /> + <hkern u1="&#xde;" u2="&#x162;" k="50" /> + <hkern u1="&#xde;" u2="&#x134;" k="40" /> + <hkern u1="&#xde;" u2="&#x104;" k="40" /> + <hkern u1="&#xde;" u2="&#x102;" k="40" /> + <hkern u1="&#xde;" u2="&#x100;" k="40" /> + <hkern u1="&#xde;" u2="&#xdd;" k="50" /> + <hkern u1="&#xde;" u2="&#xc5;" k="40" /> + <hkern u1="&#xde;" u2="&#xc4;" k="40" /> + <hkern u1="&#xde;" u2="&#xc3;" k="40" /> + <hkern u1="&#xde;" u2="&#xc2;" k="40" /> + <hkern u1="&#xde;" u2="&#xc1;" k="40" /> + <hkern u1="&#xde;" u2="&#xc0;" k="40" /> + <hkern u1="&#xde;" u2="Z" k="60" /> + <hkern u1="&#xde;" u2="Y" k="50" /> + <hkern u1="&#xde;" u2="X" k="35" /> + <hkern u1="&#xde;" u2="W" k="10" /> + <hkern u1="&#xde;" u2="V" k="30" /> + <hkern u1="&#xde;" u2="T" k="50" /> + <hkern u1="&#xde;" u2="J" k="40" /> + <hkern u1="&#xde;" u2="A" k="40" /> + <hkern u1="&#xde;" u2="&#x2e;" k="40" /> + <hkern u1="&#xde;" u2="&#x2c;" k="40" /> + <hkern u1="&#xde;" u2="&#xc6;" k="80" /> + <hkern u1="&#xde;" u2="\" k="40" /> + <hkern u1="&#xde;" u2="&#x3f;" k="50" /> + <hkern u1="&#xde;" u2="&#x2f;" k="20" /> + <hkern u1="&#xe0;" g2="backslash.alt" k="20" /> + <hkern u1="&#xe0;" u2="v" k="25" /> + <hkern u1="&#xe1;" g2="backslash.alt" k="20" /> + <hkern u1="&#xe1;" u2="v" k="25" /> + <hkern u1="&#xe2;" g2="backslash.alt" k="20" /> + <hkern u1="&#xe2;" u2="v" k="25" /> + <hkern u1="&#xe3;" g2="backslash.alt" k="20" /> + <hkern u1="&#xe3;" u2="v" k="25" /> + <hkern u1="&#xe4;" g2="backslash.alt" k="20" /> + <hkern u1="&#xe4;" u2="v" k="25" /> + <hkern u1="&#xe5;" g2="backslash.alt" k="20" /> + <hkern u1="&#xe5;" u2="v" k="25" /> + <hkern u1="&#xe6;" u2="v" k="10" /> + <hkern u1="&#xe8;" u2="v" k="10" /> + <hkern u1="&#xe9;" u2="v" k="10" /> + <hkern u1="&#xea;" u2="v" k="10" /> + <hkern u1="&#xeb;" u2="v" k="10" /> + <hkern u1="&#xf1;" g2="backslash.alt" k="10" /> + <hkern u1="&#xf1;" u2="v" k="25" /> + <hkern u1="&#xf2;" g2="backslash.alt" k="5" /> + <hkern u1="&#xf2;" u2="x" k="15" /> + <hkern u1="&#xf2;" u2="v" k="15" /> + <hkern u1="&#xf2;" u2="\" k="50" /> + <hkern u1="&#xf2;" u2="&#x3f;" k="20" /> + <hkern u1="&#xf2;" u2="&#x2a;" k="30" /> + <hkern u1="&#xf3;" g2="backslash.alt" k="5" /> + <hkern u1="&#xf3;" u2="x" k="15" /> + <hkern u1="&#xf3;" u2="v" k="15" /> + <hkern u1="&#xf3;" u2="\" k="50" /> + <hkern u1="&#xf3;" u2="&#x3f;" k="20" /> + <hkern u1="&#xf3;" u2="&#x2a;" k="30" /> + <hkern u1="&#xf4;" g2="backslash.alt" k="5" /> + <hkern u1="&#xf4;" u2="x" k="15" /> + <hkern u1="&#xf4;" u2="v" k="15" /> + <hkern u1="&#xf4;" u2="\" k="50" /> + <hkern u1="&#xf4;" u2="&#x3f;" k="20" /> + <hkern u1="&#xf4;" u2="&#x2a;" k="30" /> + <hkern u1="&#xf5;" g2="backslash.alt" k="5" /> + <hkern u1="&#xf5;" u2="x" k="15" /> + <hkern u1="&#xf5;" u2="v" k="15" /> + <hkern u1="&#xf5;" u2="\" k="50" /> + <hkern u1="&#xf5;" u2="&#x3f;" k="20" /> + <hkern u1="&#xf5;" u2="&#x2a;" k="30" /> + <hkern u1="&#xf6;" g2="backslash.alt" k="5" /> + <hkern u1="&#xf6;" u2="x" k="15" /> + <hkern u1="&#xf6;" u2="v" k="15" /> + <hkern u1="&#xf6;" u2="\" k="50" /> + <hkern u1="&#xf6;" u2="&#x3f;" k="20" /> + <hkern u1="&#xf6;" u2="&#x2a;" k="30" /> + <hkern u1="&#xf8;" g2="backslash.alt" k="5" /> + <hkern u1="&#xf8;" u2="x" k="15" /> + <hkern u1="&#xf8;" u2="v" k="15" /> + <hkern u1="&#xf8;" u2="\" k="50" /> + <hkern u1="&#xf8;" u2="&#x3f;" k="20" /> + <hkern u1="&#xf8;" u2="&#x2a;" k="30" /> + <hkern u1="&#xfd;" g2="slash.alt" k="75" /> + <hkern u1="&#xfd;" g2="ampersand.alt" k="20" /> + <hkern u1="&#xfd;" g2="at.alt" k="55" /> + <hkern u1="&#xff;" g2="slash.alt" k="75" /> + <hkern u1="&#xff;" g2="ampersand.alt" k="20" /> + <hkern u1="&#xff;" g2="at.alt" k="55" /> + <hkern u1="&#x100;" g2="y.alt" k="30" /> + <hkern u1="&#x100;" g2="w.alt" k="30" /> + <hkern u1="&#x100;" g2="v.alt" k="40" /> + <hkern u1="&#x100;" g2="u.alt" k="10" /> + <hkern u1="&#x100;" g2="t.alt" k="20" /> + <hkern u1="&#x100;" g2="hyphen.cap" k="40" /> + <hkern u1="&#x100;" u2="v" k="40" /> + <hkern u1="&#x100;" u2="\" k="80" /> + <hkern u1="&#x100;" u2="&#x3f;" k="57" /> + <hkern u1="&#x100;" u2="&#x2a;" k="70" /> + <hkern u1="&#x101;" g2="backslash.alt" k="20" /> + <hkern u1="&#x101;" u2="v" k="25" /> + <hkern u1="&#x102;" g2="y.alt" k="30" /> + <hkern u1="&#x102;" g2="w.alt" k="30" /> + <hkern u1="&#x102;" g2="v.alt" k="40" /> + <hkern u1="&#x102;" g2="u.alt" k="10" /> + <hkern u1="&#x102;" g2="t.alt" k="20" /> + <hkern u1="&#x102;" g2="hyphen.cap" k="40" /> + <hkern u1="&#x102;" u2="v" k="40" /> + <hkern u1="&#x102;" u2="\" k="80" /> + <hkern u1="&#x102;" u2="&#x3f;" k="57" /> + <hkern u1="&#x102;" u2="&#x2a;" k="70" /> + <hkern u1="&#x103;" g2="backslash.alt" k="20" /> + <hkern u1="&#x103;" u2="v" k="25" /> + <hkern u1="&#x104;" g2="y.alt" k="30" /> + <hkern u1="&#x104;" g2="w.alt" k="30" /> + <hkern u1="&#x104;" g2="v.alt" k="40" /> + <hkern u1="&#x104;" g2="u.alt" k="10" /> + <hkern u1="&#x104;" g2="t.alt" k="20" /> + <hkern u1="&#x104;" g2="hyphen.cap" k="40" /> + <hkern u1="&#x104;" u2="v" k="40" /> + <hkern u1="&#x104;" u2="\" k="80" /> + <hkern u1="&#x104;" u2="&#x3f;" k="57" /> + <hkern u1="&#x104;" u2="&#x2a;" k="70" /> + <hkern u1="&#x105;" g2="backslash.alt" k="20" /> + <hkern u1="&#x105;" u2="v" k="25" /> + <hkern u1="&#x106;" g2="eth.alt" k="20" /> + <hkern u1="&#x106;" g2="y.alt" k="50" /> + <hkern u1="&#x106;" g2="w.alt" k="50" /> + <hkern u1="&#x106;" g2="v.alt" k="50" /> + <hkern u1="&#x106;" g2="u.alt" k="20" /> + <hkern u1="&#x106;" g2="t.alt" k="40" /> + <hkern u1="&#x106;" g2="l.alt" k="10" /> + <hkern u1="&#x106;" g2="f.alt" k="20" /> + <hkern u1="&#x106;" g2="hyphen.cap" k="54" /> + <hkern u1="&#x106;" u2="v" k="50" /> + <hkern u1="&#x108;" g2="eth.alt" k="20" /> + <hkern u1="&#x108;" g2="y.alt" k="50" /> + <hkern u1="&#x108;" g2="w.alt" k="50" /> + <hkern u1="&#x108;" g2="v.alt" k="50" /> + <hkern u1="&#x108;" g2="u.alt" k="20" /> + <hkern u1="&#x108;" g2="t.alt" k="40" /> + <hkern u1="&#x108;" g2="l.alt" k="10" /> + <hkern u1="&#x108;" g2="f.alt" k="20" /> + <hkern u1="&#x108;" g2="hyphen.cap" k="54" /> + <hkern u1="&#x108;" u2="v" k="50" /> + <hkern u1="&#x10a;" g2="eth.alt" k="20" /> + <hkern u1="&#x10a;" g2="y.alt" k="50" /> + <hkern u1="&#x10a;" g2="w.alt" k="50" /> + <hkern u1="&#x10a;" g2="v.alt" k="50" /> + <hkern u1="&#x10a;" g2="u.alt" k="20" /> + <hkern u1="&#x10a;" g2="t.alt" k="40" /> + <hkern u1="&#x10a;" g2="l.alt" k="10" /> + <hkern u1="&#x10a;" g2="f.alt" k="20" /> + <hkern u1="&#x10a;" g2="hyphen.cap" k="54" /> + <hkern u1="&#x10a;" u2="v" k="50" /> + <hkern u1="&#x10c;" g2="eth.alt" k="20" /> + <hkern u1="&#x10c;" g2="y.alt" k="50" /> + <hkern u1="&#x10c;" g2="w.alt" k="50" /> + <hkern u1="&#x10c;" g2="v.alt" k="50" /> + <hkern u1="&#x10c;" g2="u.alt" k="20" /> + <hkern u1="&#x10c;" g2="t.alt" k="40" /> + <hkern u1="&#x10c;" g2="l.alt" k="10" /> + <hkern u1="&#x10c;" g2="f.alt" k="20" /> + <hkern u1="&#x10c;" g2="hyphen.cap" k="54" /> + <hkern u1="&#x10c;" u2="v" k="50" /> + <hkern u1="&#x110;" g2="z.alt" k="20" /> + <hkern u1="&#x110;" u2="&#xc6;" k="60" /> + <hkern u1="&#x112;" g2="y.alt" k="20" /> + <hkern u1="&#x112;" g2="w.alt" k="20" /> + <hkern u1="&#x112;" g2="v.alt" k="30" /> + <hkern u1="&#x112;" g2="u.alt" k="10" /> + <hkern u1="&#x112;" g2="t.alt" k="15" /> + <hkern u1="&#x112;" u2="v" k="30" /> + <hkern u1="&#x113;" u2="v" k="10" /> + <hkern u1="&#x114;" g2="y.alt" k="20" /> + <hkern u1="&#x114;" g2="w.alt" k="20" /> + <hkern u1="&#x114;" g2="v.alt" k="30" /> + <hkern u1="&#x114;" g2="u.alt" k="10" /> + <hkern u1="&#x114;" g2="t.alt" k="15" /> + <hkern u1="&#x114;" u2="v" k="30" /> + <hkern u1="&#x115;" u2="v" k="10" /> + <hkern u1="&#x116;" g2="y.alt" k="20" /> + <hkern u1="&#x116;" g2="w.alt" k="20" /> + <hkern u1="&#x116;" g2="v.alt" k="30" /> + <hkern u1="&#x116;" g2="u.alt" k="10" /> + <hkern u1="&#x116;" g2="t.alt" k="15" /> + <hkern u1="&#x116;" u2="v" k="30" /> + <hkern u1="&#x117;" u2="v" k="10" /> + <hkern u1="&#x118;" g2="y.alt" k="20" /> + <hkern u1="&#x118;" g2="w.alt" k="20" /> + <hkern u1="&#x118;" g2="v.alt" k="30" /> + <hkern u1="&#x118;" g2="u.alt" k="10" /> + <hkern u1="&#x118;" g2="t.alt" k="15" /> + <hkern u1="&#x118;" u2="v" k="30" /> + <hkern u1="&#x119;" u2="v" k="10" /> + <hkern u1="&#x11a;" g2="y.alt" k="20" /> + <hkern u1="&#x11a;" g2="w.alt" k="20" /> + <hkern u1="&#x11a;" g2="v.alt" k="30" /> + <hkern u1="&#x11a;" g2="u.alt" k="10" /> + <hkern u1="&#x11a;" g2="t.alt" k="15" /> + <hkern u1="&#x11a;" u2="v" k="30" /> + <hkern u1="&#x11b;" u2="v" k="10" /> + <hkern u1="&#x132;" g2="z.alt" k="15" /> + <hkern u1="&#x132;" u2="&#xc6;" k="35" /> + <hkern u1="&#x133;" u2="x" k="10" /> + <hkern u1="&#x134;" g2="z.alt" k="15" /> + <hkern u1="&#x134;" u2="&#xc6;" k="35" /> + <hkern u1="&#x135;" u2="x" k="10" /> + <hkern u1="&#x136;" g2="eth.alt" k="10" /> + <hkern u1="&#x136;" g2="y.alt" k="30" /> + <hkern u1="&#x136;" g2="w.alt" k="30" /> + <hkern u1="&#x136;" g2="v.alt" k="40" /> + <hkern u1="&#x136;" g2="u.alt" k="15" /> + <hkern u1="&#x136;" g2="t.alt" k="20" /> + <hkern u1="&#x136;" g2="hyphen.cap" k="50" /> + <hkern u1="&#x136;" u2="v" k="40" /> + <hkern u1="&#x139;" g2="y.alt" k="40" /> + <hkern u1="&#x139;" g2="w.alt" k="40" /> + <hkern u1="&#x139;" g2="v.alt" k="70" /> + <hkern u1="&#x139;" g2="t.alt" k="20" /> + <hkern u1="&#x139;" g2="i.alt" k="10" /> + <hkern u1="&#x139;" g2="hyphen.cap" k="96" /> + <hkern u1="&#x139;" u2="v" k="70" /> + <hkern u1="&#x139;" u2="\" k="100" /> + <hkern u1="&#x139;" u2="&#x3f;" k="66" /> + <hkern u1="&#x139;" u2="&#x2a;" k="100" /> + <hkern u1="&#x13a;" g2="asterisk.alt" k="40" /> + <hkern u1="&#x13a;" g2="backslash.alt" k="50" /> + <hkern u1="&#x13a;" u2="v" k="70" /> + <hkern u1="&#x13b;" g2="y.alt" k="40" /> + <hkern u1="&#x13b;" g2="w.alt" k="40" /> + <hkern u1="&#x13b;" g2="v.alt" k="70" /> + <hkern u1="&#x13b;" g2="t.alt" k="20" /> + <hkern u1="&#x13b;" g2="i.alt" k="10" /> + <hkern u1="&#x13b;" g2="hyphen.cap" k="96" /> + <hkern u1="&#x13b;" u2="v" k="70" /> + <hkern u1="&#x13b;" u2="\" k="100" /> + <hkern u1="&#x13b;" u2="&#x3f;" k="66" /> + <hkern u1="&#x13b;" u2="&#x2a;" k="100" /> + <hkern u1="&#x13c;" g2="asterisk.alt" k="40" /> + <hkern u1="&#x13c;" g2="backslash.alt" k="50" /> + <hkern u1="&#x13c;" u2="v" k="70" /> + <hkern u1="&#x13d;" g2="y.alt" k="40" /> + <hkern u1="&#x13d;" g2="w.alt" k="40" /> + <hkern u1="&#x13d;" g2="v.alt" k="70" /> + <hkern u1="&#x13d;" g2="t.alt" k="20" /> + <hkern u1="&#x13d;" g2="i.alt" k="10" /> + <hkern u1="&#x13d;" g2="hyphen.cap" k="96" /> + <hkern u1="&#x13d;" u2="v" k="70" /> + <hkern u1="&#x13d;" u2="\" k="100" /> + <hkern u1="&#x13d;" u2="&#x3f;" k="66" /> + <hkern u1="&#x13d;" u2="&#x2a;" k="100" /> + <hkern u1="&#x13e;" g2="asterisk.alt" k="40" /> + <hkern u1="&#x13e;" g2="backslash.alt" k="50" /> + <hkern u1="&#x13e;" u2="v" k="70" /> + <hkern u1="&#x13f;" g2="y.alt" k="40" /> + <hkern u1="&#x13f;" g2="w.alt" k="40" /> + <hkern u1="&#x13f;" g2="v.alt" k="70" /> + <hkern u1="&#x13f;" g2="t.alt" k="20" /> + <hkern u1="&#x13f;" g2="i.alt" k="10" /> + <hkern u1="&#x13f;" g2="hyphen.cap" k="96" /> + <hkern u1="&#x13f;" u2="v" k="70" /> + <hkern u1="&#x13f;" u2="\" k="100" /> + <hkern u1="&#x13f;" u2="&#x3f;" k="66" /> + <hkern u1="&#x13f;" u2="&#x2a;" k="100" /> + <hkern u1="&#x140;" g2="asterisk.alt" k="40" /> + <hkern u1="&#x140;" g2="backslash.alt" k="50" /> + <hkern u1="&#x140;" u2="v" k="70" /> + <hkern u1="&#x141;" g2="y.alt" k="40" /> + <hkern u1="&#x141;" g2="w.alt" k="40" /> + <hkern u1="&#x141;" g2="v.alt" k="70" /> + <hkern u1="&#x141;" g2="t.alt" k="20" /> + <hkern u1="&#x141;" g2="i.alt" k="10" /> + <hkern u1="&#x141;" g2="hyphen.cap" k="96" /> + <hkern u1="&#x141;" u2="v" k="70" /> + <hkern u1="&#x141;" u2="\" k="100" /> + <hkern u1="&#x141;" u2="&#x3f;" k="66" /> + <hkern u1="&#x141;" u2="&#x2a;" k="100" /> + <hkern u1="&#x142;" g2="asterisk.alt" k="40" /> + <hkern u1="&#x142;" g2="backslash.alt" k="50" /> + <hkern u1="&#x142;" u2="v" k="70" /> + <hkern u1="&#x144;" g2="backslash.alt" k="10" /> + <hkern u1="&#x144;" u2="v" k="25" /> + <hkern u1="&#x146;" g2="backslash.alt" k="10" /> + <hkern u1="&#x146;" u2="v" k="25" /> + <hkern u1="&#x148;" g2="backslash.alt" k="10" /> + <hkern u1="&#x148;" u2="v" k="25" /> + <hkern u1="&#x149;" g2="backslash.alt" k="10" /> + <hkern u1="&#x149;" u2="v" k="25" /> + <hkern u1="&#x14c;" g2="z.alt" k="10" /> + <hkern u1="&#x14c;" g2="s.alt" k="10" /> + <hkern u1="&#x14c;" u2="&#xc6;" k="45" /> + <hkern u1="&#x14c;" u2="\" k="15" /> + <hkern u1="&#x14c;" u2="&#x3f;" k="30" /> + <hkern u1="&#x14c;" u2="&#x2f;" k="25" /> + <hkern u1="&#x14d;" g2="backslash.alt" k="5" /> + <hkern u1="&#x14d;" u2="x" k="15" /> + <hkern u1="&#x14d;" u2="v" k="15" /> + <hkern u1="&#x14d;" u2="\" k="50" /> + <hkern u1="&#x14d;" u2="&#x3f;" k="20" /> + <hkern u1="&#x14d;" u2="&#x2a;" k="30" /> + <hkern u1="&#x14e;" g2="z.alt" k="10" /> + <hkern u1="&#x14e;" g2="s.alt" k="10" /> + <hkern u1="&#x14e;" u2="&#xc6;" k="45" /> + <hkern u1="&#x14e;" u2="\" k="15" /> + <hkern u1="&#x14e;" u2="&#x3f;" k="30" /> + <hkern u1="&#x14e;" u2="&#x2f;" k="25" /> + <hkern u1="&#x14f;" g2="backslash.alt" k="5" /> + <hkern u1="&#x14f;" u2="x" k="15" /> + <hkern u1="&#x14f;" u2="v" k="15" /> + <hkern u1="&#x14f;" u2="\" k="50" /> + <hkern u1="&#x14f;" u2="&#x3f;" k="20" /> + <hkern u1="&#x14f;" u2="&#x2a;" k="30" /> + <hkern u1="&#x150;" g2="z.alt" k="10" /> + <hkern u1="&#x150;" g2="s.alt" k="10" /> + <hkern u1="&#x150;" u2="&#xc6;" k="45" /> + <hkern u1="&#x150;" u2="\" k="15" /> + <hkern u1="&#x150;" u2="&#x3f;" k="30" /> + <hkern u1="&#x150;" u2="&#x2f;" k="25" /> + <hkern u1="&#x151;" g2="backslash.alt" k="5" /> + <hkern u1="&#x151;" u2="x" k="15" /> + <hkern u1="&#x151;" u2="v" k="15" /> + <hkern u1="&#x151;" u2="\" k="50" /> + <hkern u1="&#x151;" u2="&#x3f;" k="20" /> + <hkern u1="&#x151;" u2="&#x2a;" k="30" /> + <hkern u1="&#x152;" g2="y.alt" k="20" /> + <hkern u1="&#x152;" g2="w.alt" k="20" /> + <hkern u1="&#x152;" g2="v.alt" k="30" /> + <hkern u1="&#x152;" g2="u.alt" k="10" /> + <hkern u1="&#x152;" g2="t.alt" k="15" /> + <hkern u1="&#x152;" u2="v" k="30" /> + <hkern u1="&#x153;" u2="v" k="10" /> + <hkern u1="&#x154;" g2="eth.alt" k="20" /> + <hkern u1="&#x154;" g2="y.alt" k="20" /> + <hkern u1="&#x154;" g2="v.alt" k="25" /> + <hkern u1="&#x154;" g2="u.alt" k="30" /> + <hkern u1="&#x154;" u2="v" k="25" /> + <hkern u1="&#x154;" u2="\" k="40" /> + <hkern u1="&#x154;" u2="&#x3f;" k="20" /> + <hkern u1="&#x155;" g2="backslash.alt" k="25" /> + <hkern u1="&#x155;" u2="v" k="30" /> + <hkern u1="&#x156;" g2="eth.alt" k="20" /> + <hkern u1="&#x156;" g2="y.alt" k="20" /> + <hkern u1="&#x156;" g2="v.alt" k="25" /> + <hkern u1="&#x156;" g2="u.alt" k="30" /> + <hkern u1="&#x156;" u2="v" k="25" /> + <hkern u1="&#x156;" u2="\" k="40" /> + <hkern u1="&#x156;" u2="&#x3f;" k="20" /> + <hkern u1="&#x157;" g2="backslash.alt" k="25" /> + <hkern u1="&#x157;" u2="v" k="30" /> + <hkern u1="&#x158;" g2="eth.alt" k="20" /> + <hkern u1="&#x158;" g2="y.alt" k="20" /> + <hkern u1="&#x158;" g2="v.alt" k="25" /> + <hkern u1="&#x158;" g2="u.alt" k="30" /> + <hkern u1="&#x158;" u2="v" k="25" /> + <hkern u1="&#x158;" u2="\" k="40" /> + <hkern u1="&#x158;" u2="&#x3f;" k="20" /> + <hkern u1="&#x159;" g2="backslash.alt" k="25" /> + <hkern u1="&#x159;" u2="v" k="30" /> + <hkern u1="&#x15a;" g2="z.alt" k="30" /> + <hkern u1="&#x15a;" g2="y.alt" k="25" /> + <hkern u1="&#x15a;" g2="v.alt" k="35" /> + <hkern u1="&#x15a;" g2="s.alt" k="20" /> + <hkern u1="&#x15a;" g2="g.alt" k="10" /> + <hkern u1="&#x15a;" u2="&#xc6;" k="30" /> + <hkern u1="&#x15a;" u2="v" k="35" /> + <hkern u1="&#x15a;" u2="&#x3f;" k="20" /> + <hkern u1="&#x15a;" u2="&#x26;" k="-10" /> + <hkern u1="&#x15c;" g2="z.alt" k="30" /> + <hkern u1="&#x15c;" g2="y.alt" k="25" /> + <hkern u1="&#x15c;" g2="v.alt" k="35" /> + <hkern u1="&#x15c;" g2="s.alt" k="20" /> + <hkern u1="&#x15c;" g2="g.alt" k="10" /> + <hkern u1="&#x15c;" u2="&#xc6;" k="30" /> + <hkern u1="&#x15c;" u2="v" k="35" /> + <hkern u1="&#x15c;" u2="&#x3f;" k="20" /> + <hkern u1="&#x15c;" u2="&#x26;" k="-10" /> + <hkern u1="&#x15e;" g2="z.alt" k="30" /> + <hkern u1="&#x15e;" g2="y.alt" k="25" /> + <hkern u1="&#x15e;" g2="v.alt" k="35" /> + <hkern u1="&#x15e;" g2="s.alt" k="20" /> + <hkern u1="&#x15e;" g2="g.alt" k="10" /> + <hkern u1="&#x15e;" u2="&#xc6;" k="30" /> + <hkern u1="&#x15e;" u2="v" k="35" /> + <hkern u1="&#x15e;" u2="&#x3f;" k="20" /> + <hkern u1="&#x15e;" u2="&#x26;" k="-10" /> + <hkern u1="&#x160;" g2="z.alt" k="30" /> + <hkern u1="&#x160;" g2="y.alt" k="25" /> + <hkern u1="&#x160;" g2="v.alt" k="35" /> + <hkern u1="&#x160;" g2="s.alt" k="20" /> + <hkern u1="&#x160;" g2="g.alt" k="10" /> + <hkern u1="&#x160;" u2="&#xc6;" k="30" /> + <hkern u1="&#x160;" u2="v" k="35" /> + <hkern u1="&#x160;" u2="&#x3f;" k="20" /> + <hkern u1="&#x160;" u2="&#x26;" k="-10" /> + <hkern u1="&#x162;" g2="eth.alt" k="45" /> + <hkern u1="&#x162;" g2="z.alt" k="80" /> + <hkern u1="&#x162;" g2="y.alt" k="70" /> + <hkern u1="&#x162;" g2="w.alt" k="60" /> + <hkern u1="&#x162;" g2="v.alt" k="70" /> + <hkern u1="&#x162;" g2="u.alt" k="80" /> + <hkern u1="&#x162;" g2="t.alt" k="60" /> + <hkern u1="&#x162;" g2="s.alt" k="90" /> + <hkern u1="&#x162;" g2="g.alt" k="110" /> + <hkern u1="&#x162;" g2="f.alt" k="30" /> + <hkern u1="&#x162;" g2="hyphen.cap" k="80" /> + <hkern u1="&#x162;" u2="&#xc6;" k="115" /> + <hkern u1="&#x162;" u2="x" k="70" /> + <hkern u1="&#x162;" u2="v" k="70" /> + <hkern u1="&#x162;" u2="&#x40;" k="70" /> + <hkern u1="&#x162;" u2="&#x2f;" k="70" /> + <hkern u1="&#x163;" g2="slash.alt" k="50" /> + <hkern u1="&#x163;" g2="at.alt" k="30" /> + <hkern u1="&#x164;" g2="eth.alt" k="45" /> + <hkern u1="&#x164;" g2="z.alt" k="80" /> + <hkern u1="&#x164;" g2="y.alt" k="70" /> + <hkern u1="&#x164;" g2="w.alt" k="60" /> + <hkern u1="&#x164;" g2="v.alt" k="70" /> + <hkern u1="&#x164;" g2="u.alt" k="80" /> + <hkern u1="&#x164;" g2="t.alt" k="60" /> + <hkern u1="&#x164;" g2="s.alt" k="90" /> + <hkern u1="&#x164;" g2="g.alt" k="110" /> + <hkern u1="&#x164;" g2="f.alt" k="30" /> + <hkern u1="&#x164;" g2="hyphen.cap" k="80" /> + <hkern u1="&#x164;" u2="&#xc6;" k="115" /> + <hkern u1="&#x164;" u2="x" k="70" /> + <hkern u1="&#x164;" u2="v" k="70" /> + <hkern u1="&#x164;" u2="&#x40;" k="70" /> + <hkern u1="&#x164;" u2="&#x2f;" k="70" /> + <hkern u1="&#x165;" g2="slash.alt" k="50" /> + <hkern u1="&#x165;" g2="at.alt" k="30" /> + <hkern u1="&#x166;" g2="eth.alt" k="45" /> + <hkern u1="&#x166;" g2="z.alt" k="80" /> + <hkern u1="&#x166;" g2="y.alt" k="70" /> + <hkern u1="&#x166;" g2="w.alt" k="60" /> + <hkern u1="&#x166;" g2="v.alt" k="70" /> + <hkern u1="&#x166;" g2="u.alt" k="80" /> + <hkern u1="&#x166;" g2="t.alt" k="60" /> + <hkern u1="&#x166;" g2="s.alt" k="90" /> + <hkern u1="&#x166;" g2="g.alt" k="110" /> + <hkern u1="&#x166;" g2="f.alt" k="30" /> + <hkern u1="&#x166;" g2="hyphen.cap" k="80" /> + <hkern u1="&#x166;" u2="&#xc6;" k="115" /> + <hkern u1="&#x166;" u2="x" k="70" /> + <hkern u1="&#x166;" u2="v" k="70" /> + <hkern u1="&#x166;" u2="&#x40;" k="70" /> + <hkern u1="&#x166;" u2="&#x2f;" k="70" /> + <hkern u1="&#x167;" g2="slash.alt" k="50" /> + <hkern u1="&#x167;" g2="at.alt" k="30" /> + <hkern u1="&#x168;" g2="z.alt" k="20" /> + <hkern u1="&#x168;" u2="&#xc6;" k="40" /> + <hkern u1="&#x16a;" g2="z.alt" k="20" /> + <hkern u1="&#x16a;" u2="&#xc6;" k="40" /> + <hkern u1="&#x16c;" g2="z.alt" k="20" /> + <hkern u1="&#x16c;" u2="&#xc6;" k="40" /> + <hkern u1="&#x16e;" g2="z.alt" k="20" /> + <hkern u1="&#x16e;" u2="&#xc6;" k="40" /> + <hkern u1="&#x170;" g2="z.alt" k="20" /> + <hkern u1="&#x170;" u2="&#xc6;" k="40" /> + <hkern u1="&#x172;" g2="z.alt" k="20" /> + <hkern u1="&#x172;" u2="&#xc6;" k="40" /> + <hkern u1="&#x174;" g2="eth.alt" k="35" /> + <hkern u1="&#x174;" g2="z.alt" k="25" /> + <hkern u1="&#x174;" g2="u.alt" k="10" /> + <hkern u1="&#x174;" g2="s.alt" k="30" /> + <hkern u1="&#x174;" g2="g.alt" k="30" /> + <hkern u1="&#x174;" g2="hyphen.cap" k="20" /> + <hkern u1="&#x174;" u2="&#xc6;" k="80" /> + <hkern u1="&#x174;" u2="&#x40;" k="26" /> + <hkern u1="&#x174;" u2="&#x2f;" k="30" /> + <hkern u1="&#x175;" g2="slash.alt" k="30" /> + <hkern u1="&#x175;" g2="at.alt" k="20" /> + <hkern u1="&#x176;" g2="eth.alt" k="70" /> + <hkern u1="&#x176;" g2="z.alt" k="70" /> + <hkern u1="&#x176;" g2="y.alt" k="37" /> + <hkern u1="&#x176;" g2="w.alt" k="34" /> + <hkern u1="&#x176;" g2="v.alt" k="34" /> + <hkern u1="&#x176;" g2="u.alt" k="60" /> + <hkern u1="&#x176;" g2="t.alt" k="50" /> + <hkern u1="&#x176;" g2="s.alt" k="90" /> + <hkern u1="&#x176;" g2="g.alt" k="100" /> + <hkern u1="&#x176;" g2="f.alt" k="30" /> + <hkern u1="&#x176;" g2="hyphen.cap" k="40" /> + <hkern u1="&#x176;" u2="&#xc6;" k="135" /> + <hkern u1="&#x176;" u2="x" k="50" /> + <hkern u1="&#x176;" u2="v" k="34" /> + <hkern u1="&#x176;" u2="&#x40;" k="95" /> + <hkern u1="&#x176;" u2="&#x2f;" k="90" /> + <hkern u1="&#x176;" u2="&#x26;" k="20" /> + <hkern u1="&#x177;" g2="slash.alt" k="75" /> + <hkern u1="&#x177;" g2="ampersand.alt" k="20" /> + <hkern u1="&#x177;" g2="at.alt" k="55" /> + <hkern u1="&#x178;" g2="eth.alt" k="70" /> + <hkern u1="&#x178;" g2="z.alt" k="70" /> + <hkern u1="&#x178;" g2="y.alt" k="37" /> + <hkern u1="&#x178;" g2="w.alt" k="34" /> + <hkern u1="&#x178;" g2="v.alt" k="34" /> + <hkern u1="&#x178;" g2="u.alt" k="60" /> + <hkern u1="&#x178;" g2="t.alt" k="50" /> + <hkern u1="&#x178;" g2="s.alt" k="90" /> + <hkern u1="&#x178;" g2="g.alt" k="100" /> + <hkern u1="&#x178;" g2="f.alt" k="30" /> + <hkern u1="&#x178;" g2="hyphen.cap" k="40" /> + <hkern u1="&#x178;" u2="&#xc6;" k="135" /> + <hkern u1="&#x178;" u2="x" k="50" /> + <hkern u1="&#x178;" u2="v" k="34" /> + <hkern u1="&#x178;" u2="&#x40;" k="95" /> + <hkern u1="&#x178;" u2="&#x2f;" k="90" /> + <hkern u1="&#x178;" u2="&#x26;" k="20" /> + <hkern u1="&#x179;" g2="eth.alt" k="20" /> + <hkern u1="&#x179;" g2="y.alt" k="40" /> + <hkern u1="&#x179;" g2="w.alt" k="50" /> + <hkern u1="&#x179;" g2="v.alt" k="35" /> + <hkern u1="&#x179;" g2="u.alt" k="30" /> + <hkern u1="&#x179;" g2="t.alt" k="35" /> + <hkern u1="&#x179;" g2="l.alt" k="10" /> + <hkern u1="&#x179;" g2="g.alt" k="25" /> + <hkern u1="&#x179;" g2="hyphen.cap" k="50" /> + <hkern u1="&#x179;" u2="v" k="35" /> + <hkern u1="&#x17a;" g2="at.alt" k="10" /> + <hkern u1="&#x17a;" u2="&#x2f;" k="-10" /> + <hkern u1="&#x17b;" g2="eth.alt" k="20" /> + <hkern u1="&#x17b;" g2="y.alt" k="40" /> + <hkern u1="&#x17b;" g2="w.alt" k="50" /> + <hkern u1="&#x17b;" g2="v.alt" k="35" /> + <hkern u1="&#x17b;" g2="u.alt" k="30" /> + <hkern u1="&#x17b;" g2="t.alt" k="35" /> + <hkern u1="&#x17b;" g2="l.alt" k="10" /> + <hkern u1="&#x17b;" g2="g.alt" k="25" /> + <hkern u1="&#x17b;" g2="hyphen.cap" k="50" /> + <hkern u1="&#x17b;" u2="v" k="35" /> + <hkern u1="&#x17c;" g2="at.alt" k="10" /> + <hkern u1="&#x17c;" u2="&#x2f;" k="-10" /> + <hkern u1="&#x17d;" g2="eth.alt" k="20" /> + <hkern u1="&#x17d;" g2="y.alt" k="40" /> + <hkern u1="&#x17d;" g2="w.alt" k="50" /> + <hkern u1="&#x17d;" g2="v.alt" k="35" /> + <hkern u1="&#x17d;" g2="u.alt" k="30" /> + <hkern u1="&#x17d;" g2="t.alt" k="35" /> + <hkern u1="&#x17d;" g2="l.alt" k="10" /> + <hkern u1="&#x17d;" g2="g.alt" k="25" /> + <hkern u1="&#x17d;" g2="hyphen.cap" k="50" /> + <hkern u1="&#x17d;" u2="v" k="35" /> + <hkern u1="&#x17e;" g2="at.alt" k="10" /> + <hkern u1="&#x17e;" u2="&#x2f;" k="-10" /> + <hkern u1="&#x218;" g2="z.alt" k="30" /> + <hkern u1="&#x218;" g2="y.alt" k="25" /> + <hkern u1="&#x218;" g2="v.alt" k="35" /> + <hkern u1="&#x218;" g2="s.alt" k="20" /> + <hkern u1="&#x218;" g2="g.alt" k="10" /> + <hkern u1="&#x218;" u2="&#xc6;" k="30" /> + <hkern u1="&#x218;" u2="v" k="35" /> + <hkern u1="&#x218;" u2="&#x3f;" k="20" /> + <hkern u1="&#x218;" u2="&#x26;" k="-10" /> + <hkern u1="&#x21a;" g2="eth.alt" k="45" /> + <hkern u1="&#x21a;" g2="z.alt" k="80" /> + <hkern u1="&#x21a;" g2="y.alt" k="70" /> + <hkern u1="&#x21a;" g2="w.alt" k="60" /> + <hkern u1="&#x21a;" g2="v.alt" k="70" /> + <hkern u1="&#x21a;" g2="u.alt" k="80" /> + <hkern u1="&#x21a;" g2="t.alt" k="60" /> + <hkern u1="&#x21a;" g2="s.alt" k="90" /> + <hkern u1="&#x21a;" g2="g.alt" k="110" /> + <hkern u1="&#x21a;" g2="f.alt" k="30" /> + <hkern u1="&#x21a;" g2="hyphen.cap" k="80" /> + <hkern u1="&#x21a;" u2="&#xc6;" k="115" /> + <hkern u1="&#x21a;" u2="x" k="70" /> + <hkern u1="&#x21a;" u2="v" k="70" /> + <hkern u1="&#x21a;" u2="&#x40;" k="70" /> + <hkern u1="&#x21a;" u2="&#x2f;" k="70" /> + <hkern u1="&#x21b;" g2="slash.alt" k="50" /> + <hkern u1="&#x21b;" g2="at.alt" k="30" /> + <hkern u1="&#x1e80;" g2="eth.alt" k="35" /> + <hkern u1="&#x1e80;" g2="z.alt" k="25" /> + <hkern u1="&#x1e80;" g2="u.alt" k="10" /> + <hkern u1="&#x1e80;" g2="s.alt" k="30" /> + <hkern u1="&#x1e80;" g2="g.alt" k="30" /> + <hkern u1="&#x1e80;" g2="hyphen.cap" k="20" /> + <hkern u1="&#x1e80;" u2="&#xc6;" k="80" /> + <hkern u1="&#x1e80;" u2="&#x40;" k="26" /> + <hkern u1="&#x1e80;" u2="&#x2f;" k="30" /> + <hkern u1="&#x1e81;" g2="slash.alt" k="30" /> + <hkern u1="&#x1e81;" g2="at.alt" k="20" /> + <hkern u1="&#x1e82;" g2="eth.alt" k="35" /> + <hkern u1="&#x1e82;" g2="z.alt" k="25" /> + <hkern u1="&#x1e82;" g2="u.alt" k="10" /> + <hkern u1="&#x1e82;" g2="s.alt" k="30" /> + <hkern u1="&#x1e82;" g2="g.alt" k="30" /> + <hkern u1="&#x1e82;" g2="hyphen.cap" k="20" /> + <hkern u1="&#x1e82;" u2="&#xc6;" k="80" /> + <hkern u1="&#x1e82;" u2="&#x40;" k="26" /> + <hkern u1="&#x1e82;" u2="&#x2f;" k="30" /> + <hkern u1="&#x1e83;" g2="slash.alt" k="30" /> + <hkern u1="&#x1e83;" g2="at.alt" k="20" /> + <hkern u1="&#x1e84;" g2="eth.alt" k="35" /> + <hkern u1="&#x1e84;" g2="z.alt" k="25" /> + <hkern u1="&#x1e84;" g2="u.alt" k="10" /> + <hkern u1="&#x1e84;" g2="s.alt" k="30" /> + <hkern u1="&#x1e84;" g2="g.alt" k="30" /> + <hkern u1="&#x1e84;" g2="hyphen.cap" k="20" /> + <hkern u1="&#x1e84;" u2="&#xc6;" k="80" /> + <hkern u1="&#x1e84;" u2="&#x40;" k="26" /> + <hkern u1="&#x1e84;" u2="&#x2f;" k="30" /> + <hkern u1="&#x1e85;" g2="slash.alt" k="30" /> + <hkern u1="&#x1e85;" g2="at.alt" k="20" /> + <hkern u1="&#x1ef2;" g2="eth.alt" k="70" /> + <hkern u1="&#x1ef2;" g2="z.alt" k="70" /> + <hkern u1="&#x1ef2;" g2="y.alt" k="37" /> + <hkern u1="&#x1ef2;" g2="w.alt" k="34" /> + <hkern u1="&#x1ef2;" g2="v.alt" k="34" /> + <hkern u1="&#x1ef2;" g2="u.alt" k="60" /> + <hkern u1="&#x1ef2;" g2="t.alt" k="50" /> + <hkern u1="&#x1ef2;" g2="s.alt" k="90" /> + <hkern u1="&#x1ef2;" g2="g.alt" k="100" /> + <hkern u1="&#x1ef2;" g2="f.alt" k="30" /> + <hkern u1="&#x1ef2;" g2="hyphen.cap" k="40" /> + <hkern u1="&#x1ef2;" u2="&#xc6;" k="135" /> + <hkern u1="&#x1ef2;" u2="x" k="50" /> + <hkern u1="&#x1ef2;" u2="v" k="34" /> + <hkern u1="&#x1ef2;" u2="&#x40;" k="95" /> + <hkern u1="&#x1ef2;" u2="&#x2f;" k="90" /> + <hkern u1="&#x1ef2;" u2="&#x26;" k="20" /> + <hkern u1="&#x1ef3;" g2="slash.alt" k="75" /> + <hkern u1="&#x1ef3;" g2="ampersand.alt" k="20" /> + <hkern u1="&#x1ef3;" g2="at.alt" k="55" /> + <hkern u1="&#x2013;" g2="v.alt" k="20" /> + <hkern u1="&#x2013;" g2="seven.alt2" k="30" /> + <hkern u1="&#x2013;" g2="three.alt2" k="30" /> + <hkern u1="&#x2013;" g2="two.alt2" k="26" /> + <hkern u1="&#x2013;" u2="&#xf807;" k="30" /> + <hkern u1="&#x2013;" u2="&#xf803;" k="30" /> + <hkern u1="&#x2013;" u2="&#xf802;" k="26" /> + <hkern u1="&#x2013;" u2="x" k="10" /> + <hkern u1="&#x2013;" u2="v" k="20" /> + <hkern u1="&#x2013;" u2="&#x37;" k="30" /> + <hkern u1="&#x2013;" u2="&#x33;" k="30" /> + <hkern u1="&#x2013;" u2="&#x32;" k="26" /> + <hkern u1="&#x2014;" g2="v.alt" k="20" /> + <hkern u1="&#x2014;" g2="seven.alt2" k="30" /> + <hkern u1="&#x2014;" g2="three.alt2" k="30" /> + <hkern u1="&#x2014;" g2="two.alt2" k="26" /> + <hkern u1="&#x2014;" u2="&#xf807;" k="30" /> + <hkern u1="&#x2014;" u2="&#xf803;" k="30" /> + <hkern u1="&#x2014;" u2="&#xf802;" k="26" /> + <hkern u1="&#x2014;" u2="x" k="10" /> + <hkern u1="&#x2014;" u2="v" k="20" /> + <hkern u1="&#x2014;" u2="&#x37;" k="30" /> + <hkern u1="&#x2014;" u2="&#x33;" k="30" /> + <hkern u1="&#x2014;" u2="&#x32;" k="26" /> + <hkern u1="&#x2018;" u2="&#xc6;" k="160" /> + <hkern u1="&#x201a;" g2="w.alt" k="20" /> + <hkern u1="&#x201a;" g2="v.alt" k="40" /> + <hkern u1="&#x201a;" u2="v" k="40" /> + <hkern u1="&#x201c;" u2="&#xc6;" k="160" /> + <hkern u1="&#x201e;" g2="w.alt" k="20" /> + <hkern u1="&#x201e;" g2="v.alt" k="40" /> + <hkern u1="&#x201e;" u2="v" k="40" /> + <hkern u1="&#x2026;" g2="y.alt" k="30" /> + <hkern u1="&#x2026;" g2="w.alt" k="60" /> + <hkern u1="&#x2026;" g2="v.alt" k="65" /> + <hkern u1="&#x2026;" g2="nine.alt2" k="38" /> + <hkern u1="&#x2026;" g2="one.alt2" k="27" /> + <hkern u1="&#x2026;" g2="zero.alt2" k="20" /> + <hkern u1="&#x2026;" u2="&#xf809;" k="38" /> + <hkern u1="&#x2026;" u2="&#xf807;" k="20" /> + <hkern u1="&#x2026;" u2="&#xf801;" k="20" /> + <hkern u1="&#x2026;" u2="&#xf800;" k="20" /> + <hkern u1="&#x2026;" u2="v" k="65" /> + <hkern u1="&#x2026;" u2="&#x39;" k="38" /> + <hkern u1="&#x2026;" u2="&#x31;" k="27" /> + <hkern u1="&#x2026;" u2="&#x30;" k="20" /> + <hkern u1="&#x203a;" u2="&#xc6;" k="40" /> + <hkern u1="&#x2212;" g2="v.alt" k="20" /> + <hkern u1="&#x2212;" g2="seven.alt2" k="30" /> + <hkern u1="&#x2212;" g2="three.alt2" k="30" /> + <hkern u1="&#x2212;" g2="two.alt2" k="26" /> + <hkern u1="&#x2212;" u2="&#xf807;" k="30" /> + <hkern u1="&#x2212;" u2="&#xf803;" k="30" /> + <hkern u1="&#x2212;" u2="&#xf802;" k="26" /> + <hkern u1="&#x2212;" u2="x" k="10" /> + <hkern u1="&#x2212;" u2="v" k="20" /> + <hkern u1="&#x2212;" u2="&#x37;" k="30" /> + <hkern u1="&#x2212;" u2="&#x33;" k="30" /> + <hkern u1="&#x2212;" u2="&#x32;" k="26" /> + <hkern u1="&#xfb00;" g2="slash.alt" k="20" /> + <hkern u1="&#xfb00;" g2="at.alt" k="10" /> + <hkern u1="&#xfb00;" u2="&#x2a;" k="-25" /> + <hkern u1="&#xfb02;" g2="asterisk.alt" k="40" /> + <hkern u1="&#xfb02;" g2="backslash.alt" k="50" /> + <hkern u1="&#xfb02;" u2="v" k="70" /> + <hkern u1="&#xfb04;" g2="asterisk.alt" k="40" /> + <hkern u1="&#xfb04;" g2="backslash.alt" k="50" /> + <hkern u1="&#xfb04;" u2="v" k="70" /> + <hkern u1="&#xf800;" u2="&#x2026;" k="20" /> + <hkern u1="&#xf800;" u2="&#x2e;" k="20" /> + <hkern u1="&#xf800;" u2="&#x2c;" k="20" /> + <hkern u1="&#xf800;" g2="backslash.alt" k="6" /> + <hkern u1="&#xf800;" u2="&#xf807;" k="15" /> + <hkern u1="&#xf800;" u2="&#xf802;" k="10" /> + <hkern u1="&#xf801;" g2="backslash.alt" k="33" /> + <hkern u1="&#xf801;" u2="&#xf809;" k="30" /> + <hkern u1="&#xf801;" u2="&#xf807;" k="30" /> + <hkern u1="&#xf802;" g2="backslash.alt" k="30" /> + <hkern u1="&#xf802;" u2="&#xf809;" k="25" /> + <hkern u1="&#xf802;" u2="&#xf808;" k="20" /> + <hkern u1="&#xf802;" u2="&#xf807;" k="30" /> + <hkern u1="&#xf802;" u2="&#xf806;" k="20" /> + <hkern u1="&#xf802;" u2="&#xf804;" k="30" /> + <hkern u1="&#xf802;" u2="&#xf801;" k="15" /> + <hkern u1="&#xf803;" u2="&#x2026;" k="22" /> + <hkern u1="&#xf803;" u2="&#x2e;" k="22" /> + <hkern u1="&#xf803;" u2="&#x2c;" k="22" /> + <hkern u1="&#xf803;" g2="backslash.alt" k="20" /> + <hkern u1="&#xf803;" u2="&#xf809;" k="35" /> + <hkern u1="&#xf803;" u2="&#xf808;" k="20" /> + <hkern u1="&#xf803;" u2="&#xf807;" k="40" /> + <hkern u1="&#xf803;" u2="&#xf806;" k="10" /> + <hkern u1="&#xf803;" u2="&#xf805;" k="17" /> + <hkern u1="&#xf803;" u2="&#xf804;" k="10" /> + <hkern u1="&#xf803;" u2="&#xf802;" k="35" /> + <hkern u1="&#xf803;" u2="&#xf801;" k="20" /> + <hkern u1="&#xf804;" g2="backslash.alt" k="50" /> + <hkern u1="&#xf804;" u2="&#xf809;" k="35" /> + <hkern u1="&#xf804;" u2="&#xf807;" k="55" /> + <hkern u1="&#xf804;" u2="&#xf802;" k="10" /> + <hkern u1="&#xf804;" u2="&#xf801;" k="10" /> + <hkern u1="&#xf804;" u2="&#xb0;" k="40" /> + <hkern u1="&#xf805;" g2="backslash.alt" k="20" /> + <hkern u1="&#xf805;" u2="&#xf809;" k="30" /> + <hkern u1="&#xf805;" u2="&#xf808;" k="15" /> + <hkern u1="&#xf805;" u2="&#xf807;" k="42" /> + <hkern u1="&#xf805;" u2="&#xf806;" k="10" /> + <hkern u1="&#xf805;" u2="&#xf804;" k="10" /> + <hkern u1="&#xf805;" u2="&#xf803;" k="5" /> + <hkern u1="&#xf805;" u2="&#xf802;" k="30" /> + <hkern u1="&#xf805;" u2="&#xf801;" k="20" /> + <hkern u1="&#xf806;" g2="backslash.alt" k="35" /> + <hkern u1="&#xf806;" u2="&#xf809;" k="20" /> + <hkern u1="&#xf806;" u2="&#xf807;" k="40" /> + <hkern u1="&#xf806;" u2="&#xf802;" k="20" /> + <hkern u1="&#xf806;" u2="&#xf801;" k="20" /> + <hkern u1="&#xf807;" u2="&#x2212;" k="20" /> + <hkern u1="&#xf807;" u2="&#x2026;" k="96" /> + <hkern u1="&#xf807;" u2="&#x2014;" k="20" /> + <hkern u1="&#xf807;" u2="&#x2013;" k="20" /> + <hkern u1="&#xf807;" u2="&#x2e;" k="96" /> + <hkern u1="&#xf807;" u2="&#x2d;" k="20" /> + <hkern u1="&#xf807;" u2="&#x2c;" k="96" /> + <hkern u1="&#xf807;" g2="slash.alt" k="61" /> + <hkern u1="&#xf807;" g2="cent.alt" k="30" /> + <hkern u1="&#xf807;" u2="&#xf809;" k="15" /> + <hkern u1="&#xf807;" u2="&#xf808;" k="30" /> + <hkern u1="&#xf807;" u2="&#xf806;" k="40" /> + <hkern u1="&#xf807;" u2="&#xf805;" k="20" /> + <hkern u1="&#xf807;" u2="&#xf804;" k="55" /> + <hkern u1="&#xf807;" u2="&#xf801;" k="10" /> + <hkern u1="&#xf807;" u2="&#xf800;" k="20" /> + <hkern u1="&#xf808;" g2="backslash.alt" k="30" /> + <hkern u1="&#xf808;" u2="&#xf809;" k="20" /> + <hkern u1="&#xf808;" u2="&#xf807;" k="30" /> + <hkern u1="&#xf808;" u2="&#xf806;" k="10" /> + <hkern u1="&#xf808;" u2="&#xf802;" k="20" /> + <hkern u1="&#xf808;" u2="&#xf801;" k="20" /> + <hkern u1="&#xf809;" g2="slash.alt" k="16" /> + <hkern u1="&#xf809;" u2="&#xf808;" k="5" /> + <hkern u1="&#xf809;" u2="&#xf807;" k="10" /> + <hkern u1="&#xf809;" u2="&#xf805;" k="10" /> + <hkern u1="&#xf809;" u2="&#xf804;" k="15" /> + <hkern u1="&#xf809;" u2="&#xf803;" k="10" /> + <hkern u1="&#xf809;" u2="&#xf802;" k="15" /> + <hkern g1="at.alt" u2="&#x1ef3;" k="25" /> + <hkern g1="at.alt" u2="&#x17e;" k="10" /> + <hkern g1="at.alt" u2="&#x17c;" k="10" /> + <hkern g1="at.alt" u2="&#x17a;" k="10" /> + <hkern g1="at.alt" u2="&#x177;" k="25" /> + <hkern g1="at.alt" u2="&#xff;" k="25" /> + <hkern g1="at.alt" u2="&#xfd;" k="25" /> + <hkern g1="at.alt" u2="z" k="10" /> + <hkern g1="at.alt" u2="y" k="25" /> + <hkern g1="at.alt" g2="v.alt" k="10" /> + <hkern g1="at.alt" u2="x" k="20" /> + <hkern g1="at.alt" u2="v" k="10" /> + <hkern g1="zero.alt2" u2="&#x2026;" k="20" /> + <hkern g1="zero.alt2" u2="&#x2e;" k="20" /> + <hkern g1="zero.alt2" u2="&#x2c;" k="20" /> + <hkern g1="zero.alt2" g2="seven.alt2" k="10" /> + <hkern g1="one.alt2" u2="&#x27;" k="75" /> + <hkern g1="one.alt2" u2="&#x22;" k="75" /> + <hkern g1="one.alt2" g2="nine.alt2" k="40" /> + <hkern g1="one.alt2" g2="seven.alt2" k="30" /> + <hkern g1="one.alt2" g2="six.alt2" k="20" /> + <hkern g1="one.alt2" u2="\" k="51" /> + <hkern g1="two.alt2" g2="nine.alt2" k="25" /> + <hkern g1="two.alt2" g2="eight.alt2" k="15" /> + <hkern g1="two.alt2" g2="seven.alt2" k="20" /> + <hkern g1="two.alt2" g2="six.alt2" k="35" /> + <hkern g1="two.alt2" g2="four.alt2" k="50" /> + <hkern g1="two.alt2" u2="\" k="20" /> + <hkern g1="three.alt2" u2="&#x2026;" k="22" /> + <hkern g1="three.alt2" u2="&#x2e;" k="22" /> + <hkern g1="three.alt2" u2="&#x2c;" k="22" /> + <hkern g1="three.alt2" g2="nine.alt2" k="40" /> + <hkern g1="three.alt2" g2="eight.alt2" k="10" /> + <hkern g1="three.alt2" g2="seven.alt2" k="40" /> + <hkern g1="three.alt2" g2="six.alt2" k="20" /> + <hkern g1="three.alt2" g2="five.alt2" k="30" /> + <hkern g1="three.alt2" g2="four.alt2" k="30" /> + <hkern g1="three.alt2" g2="three.alt2" k="10" /> + <hkern g1="three.alt2" g2="two.alt2" k="20" /> + <hkern g1="three.alt2" g2="one.alt2" k="10" /> + <hkern g1="four.alt2" u2="&#x27;" k="45" /> + <hkern g1="four.alt2" u2="&#x22;" k="45" /> + <hkern g1="four.alt2" g2="nine.alt2" k="50" /> + <hkern g1="four.alt2" g2="seven.alt2" k="40" /> + <hkern g1="four.alt2" g2="six.alt2" k="15" /> + <hkern g1="four.alt2" u2="&#xb0;" k="30" /> + <hkern g1="four.alt2" u2="\" k="60" /> + <hkern g1="five.alt2" g2="nine.alt2" k="50" /> + <hkern g1="five.alt2" g2="eight.alt2" k="10" /> + <hkern g1="five.alt2" g2="seven.alt2" k="50" /> + <hkern g1="five.alt2" g2="six.alt2" k="20" /> + <hkern g1="five.alt2" g2="five.alt2" k="10" /> + <hkern g1="five.alt2" g2="four.alt2" k="20" /> + <hkern g1="five.alt2" g2="three.alt2" k="20" /> + <hkern g1="five.alt2" g2="two.alt2" k="30" /> + <hkern g1="five.alt2" g2="one.alt2" k="20" /> + <hkern g1="six.alt2" u2="&#x27;" k="26" /> + <hkern g1="six.alt2" u2="&#x22;" k="26" /> + <hkern g1="six.alt2" g2="nine.alt2" k="40" /> + <hkern g1="six.alt2" g2="seven.alt2" k="55" /> + <hkern g1="six.alt2" g2="five.alt2" k="10" /> + <hkern g1="six.alt2" g2="four.alt2" k="20" /> + <hkern g1="six.alt2" g2="two.alt2" k="20" /> + <hkern g1="six.alt2" g2="one.alt2" k="10" /> + <hkern g1="six.alt2" u2="\" k="40" /> + <hkern g1="seven.alt2" u2="&#x2212;" k="40" /> + <hkern g1="seven.alt2" u2="&#x2026;" k="110" /> + <hkern g1="seven.alt2" u2="&#x2014;" k="40" /> + <hkern g1="seven.alt2" u2="&#x2013;" k="40" /> + <hkern g1="seven.alt2" u2="&#x2e;" k="110" /> + <hkern g1="seven.alt2" u2="&#x2d;" k="40" /> + <hkern g1="seven.alt2" u2="&#x2c;" k="110" /> + <hkern g1="seven.alt2" u2="&#x27;" k="-20" /> + <hkern g1="seven.alt2" u2="&#x22;" k="-20" /> + <hkern g1="seven.alt2" g2="nine.alt2" k="25" /> + <hkern g1="seven.alt2" g2="eight.alt2" k="30" /> + <hkern g1="seven.alt2" g2="six.alt2" k="55" /> + <hkern g1="seven.alt2" g2="five.alt2" k="30" /> + <hkern g1="seven.alt2" g2="four.alt2" k="95" /> + <hkern g1="seven.alt2" g2="zero.alt2" k="20" /> + <hkern g1="seven.alt2" u2="&#xa2;" k="50" /> + <hkern g1="seven.alt2" u2="&#x2f;" k="80" /> + <hkern g1="eight.alt2" g2="nine.alt2" k="30" /> + <hkern g1="eight.alt2" g2="seven.alt2" k="30" /> + <hkern g1="eight.alt2" g2="five.alt2" k="10" /> + <hkern g1="eight.alt2" g2="four.alt2" k="20" /> + <hkern g1="eight.alt2" g2="two.alt2" k="10" /> + <hkern g1="eight.alt2" u2="\" k="20" /> + <hkern g1="nine.alt2" g2="eight.alt2" k="20" /> + <hkern g1="nine.alt2" g2="seven.alt2" k="25" /> + <hkern g1="nine.alt2" g2="six.alt2" k="20" /> + <hkern g1="nine.alt2" g2="five.alt2" k="20" /> + <hkern g1="nine.alt2" g2="four.alt2" k="50" /> + <hkern g1="nine.alt2" g2="three.alt2" k="20" /> + <hkern g1="nine.alt2" g2="two.alt2" k="20" /> + <hkern g1="nine.alt2" u2="\" k="15" /> + <hkern g1="hyphen.cap" u2="&#x1ef2;" k="60" /> + <hkern g1="hyphen.cap" u2="&#x1e84;" k="10" /> + <hkern g1="hyphen.cap" u2="&#x1e82;" k="10" /> + <hkern g1="hyphen.cap" u2="&#x1e80;" k="10" /> + <hkern g1="hyphen.cap" u2="&#x21a;" k="80" /> + <hkern g1="hyphen.cap" u2="&#x17d;" k="50" /> + <hkern g1="hyphen.cap" u2="&#x17b;" k="50" /> + <hkern g1="hyphen.cap" u2="&#x179;" k="50" /> + <hkern g1="hyphen.cap" u2="&#x178;" k="60" /> + <hkern g1="hyphen.cap" u2="&#x176;" k="60" /> + <hkern g1="hyphen.cap" u2="&#x174;" k="10" /> + <hkern g1="hyphen.cap" u2="&#x166;" k="80" /> + <hkern g1="hyphen.cap" u2="&#x164;" k="80" /> + <hkern g1="hyphen.cap" u2="&#x162;" k="80" /> + <hkern g1="hyphen.cap" u2="&#x134;" k="62" /> + <hkern g1="hyphen.cap" u2="&#x104;" k="40" /> + <hkern g1="hyphen.cap" u2="&#x102;" k="40" /> + <hkern g1="hyphen.cap" u2="&#x100;" k="40" /> + <hkern g1="hyphen.cap" u2="&#xdd;" k="60" /> + <hkern g1="hyphen.cap" u2="&#xc5;" k="40" /> + <hkern g1="hyphen.cap" u2="&#xc4;" k="40" /> + <hkern g1="hyphen.cap" u2="&#xc3;" k="40" /> + <hkern g1="hyphen.cap" u2="&#xc2;" k="40" /> + <hkern g1="hyphen.cap" u2="&#xc1;" k="40" /> + <hkern g1="hyphen.cap" u2="&#xc0;" k="40" /> + <hkern g1="hyphen.cap" u2="Z" k="50" /> + <hkern g1="hyphen.cap" u2="Y" k="60" /> + <hkern g1="hyphen.cap" u2="X" k="50" /> + <hkern g1="hyphen.cap" u2="W" k="10" /> + <hkern g1="hyphen.cap" u2="V" k="40" /> + <hkern g1="hyphen.cap" u2="T" k="80" /> + <hkern g1="hyphen.cap" u2="J" k="62" /> + <hkern g1="hyphen.cap" u2="A" k="40" /> + <hkern g1="ampersand.alt" u2="&#x1ef3;" k="45" /> + <hkern g1="ampersand.alt" u2="&#x1e85;" k="20" /> + <hkern g1="ampersand.alt" u2="&#x1e83;" k="20" /> + <hkern g1="ampersand.alt" u2="&#x1e81;" k="20" /> + <hkern g1="ampersand.alt" u2="&#x21b;" k="20" /> + <hkern g1="ampersand.alt" u2="&#x17e;" k="20" /> + <hkern g1="ampersand.alt" u2="&#x17c;" k="20" /> + <hkern g1="ampersand.alt" u2="&#x17a;" k="20" /> + <hkern g1="ampersand.alt" u2="&#x177;" k="45" /> + <hkern g1="ampersand.alt" u2="&#x175;" k="20" /> + <hkern g1="ampersand.alt" u2="&#x167;" k="20" /> + <hkern g1="ampersand.alt" u2="&#x165;" k="20" /> + <hkern g1="ampersand.alt" u2="&#x163;" k="20" /> + <hkern g1="ampersand.alt" u2="&#x135;" k="20" /> + <hkern g1="ampersand.alt" u2="&#xff;" k="45" /> + <hkern g1="ampersand.alt" u2="&#xfd;" k="45" /> + <hkern g1="ampersand.alt" u2="z" k="20" /> + <hkern g1="ampersand.alt" u2="y" k="45" /> + <hkern g1="ampersand.alt" u2="w" k="20" /> + <hkern g1="ampersand.alt" u2="t" k="20" /> + <hkern g1="ampersand.alt" u2="j" k="20" /> + <hkern g1="ampersand.alt" g2="w.alt" k="20" /> + <hkern g1="ampersand.alt" g2="v.alt" k="20" /> + <hkern g1="ampersand.alt" u2="x" k="20" /> + <hkern g1="ampersand.alt" u2="v" k="20" /> + <hkern g1="slash.alt" g2="oe.alt" k="10" /> + <hkern g1="slash.alt" g2="q.alt" k="10" /> + <hkern g1="slash.alt" g2="o.alt" k="10" /> + <hkern g1="slash.alt" g2="e.alt" k="10" /> + <hkern g1="slash.alt" g2="d.alt" k="10" /> + <hkern g1="slash.alt" g2="c.alt" k="10" /> + <hkern g1="slash.alt" u2="&#x153;" k="10" /> + <hkern g1="slash.alt" u2="&#x151;" k="10" /> + <hkern g1="slash.alt" u2="&#x14f;" k="10" /> + <hkern g1="slash.alt" u2="&#x14d;" k="10" /> + <hkern g1="slash.alt" u2="&#x123;" k="10" /> + <hkern g1="slash.alt" u2="&#x121;" k="10" /> + <hkern g1="slash.alt" u2="&#x11f;" k="10" /> + <hkern g1="slash.alt" u2="&#x11d;" k="10" /> + <hkern g1="slash.alt" u2="&#x11b;" k="10" /> + <hkern g1="slash.alt" u2="&#x119;" k="10" /> + <hkern g1="slash.alt" u2="&#x117;" k="10" /> + <hkern g1="slash.alt" u2="&#x115;" k="10" /> + <hkern g1="slash.alt" u2="&#x113;" k="10" /> + <hkern g1="slash.alt" u2="&#x10d;" k="10" /> + <hkern g1="slash.alt" u2="&#x10b;" k="10" /> + <hkern g1="slash.alt" u2="&#x109;" k="10" /> + <hkern g1="slash.alt" u2="&#x107;" k="10" /> + <hkern g1="slash.alt" u2="&#xf8;" k="10" /> + <hkern g1="slash.alt" u2="&#xf6;" k="10" /> + <hkern g1="slash.alt" u2="&#xf5;" k="10" /> + <hkern g1="slash.alt" u2="&#xf4;" k="10" /> + <hkern g1="slash.alt" u2="&#xf3;" k="10" /> + <hkern g1="slash.alt" u2="&#xf2;" k="10" /> + <hkern g1="slash.alt" u2="&#xeb;" k="10" /> + <hkern g1="slash.alt" u2="&#xea;" k="10" /> + <hkern g1="slash.alt" u2="&#xe9;" k="10" /> + <hkern g1="slash.alt" u2="&#xe8;" k="10" /> + <hkern g1="slash.alt" u2="&#xe7;" k="10" /> + <hkern g1="slash.alt" u2="q" k="10" /> + <hkern g1="slash.alt" u2="o" k="10" /> + <hkern g1="slash.alt" u2="g" k="10" /> + <hkern g1="slash.alt" u2="e" k="10" /> + <hkern g1="slash.alt" u2="c" k="10" /> + <hkern g1="slash.alt" u2="&#xf808;" k="10" /> + <hkern g1="slash.alt" u2="&#xf806;" k="20" /> + <hkern g1="slash.alt" u2="&#xf804;" k="30" /> + <hkern g1="backslash.alt" g2="oe.alt" k="10" /> + <hkern g1="backslash.alt" g2="q.alt" k="10" /> + <hkern g1="backslash.alt" g2="o.alt" k="10" /> + <hkern g1="backslash.alt" g2="e.alt" k="10" /> + <hkern g1="backslash.alt" g2="d.alt" k="10" /> + <hkern g1="backslash.alt" g2="c.alt" k="10" /> + <hkern g1="backslash.alt" u2="&#x1ef3;" k="65" /> + <hkern g1="backslash.alt" u2="&#x1e85;" k="35" /> + <hkern g1="backslash.alt" u2="&#x1e83;" k="35" /> + <hkern g1="backslash.alt" u2="&#x1e81;" k="35" /> + <hkern g1="backslash.alt" u2="&#x21b;" k="60" /> + <hkern g1="backslash.alt" u2="&#x177;" k="65" /> + <hkern g1="backslash.alt" u2="&#x175;" k="35" /> + <hkern g1="backslash.alt" u2="&#x167;" k="60" /> + <hkern g1="backslash.alt" u2="&#x165;" k="60" /> + <hkern g1="backslash.alt" u2="&#x163;" k="60" /> + <hkern g1="backslash.alt" u2="&#x153;" k="10" /> + <hkern g1="backslash.alt" u2="&#x151;" k="10" /> + <hkern g1="backslash.alt" u2="&#x14f;" k="10" /> + <hkern g1="backslash.alt" u2="&#x14d;" k="10" /> + <hkern g1="backslash.alt" u2="&#x123;" k="10" /> + <hkern g1="backslash.alt" u2="&#x121;" k="10" /> + <hkern g1="backslash.alt" u2="&#x11f;" k="10" /> + <hkern g1="backslash.alt" u2="&#x11d;" k="10" /> + <hkern g1="backslash.alt" u2="&#x11b;" k="10" /> + <hkern g1="backslash.alt" u2="&#x119;" k="10" /> + <hkern g1="backslash.alt" u2="&#x117;" k="10" /> + <hkern g1="backslash.alt" u2="&#x115;" k="10" /> + <hkern g1="backslash.alt" u2="&#x113;" k="10" /> + <hkern g1="backslash.alt" u2="&#x10d;" k="10" /> + <hkern g1="backslash.alt" u2="&#x10b;" k="10" /> + <hkern g1="backslash.alt" u2="&#x109;" k="10" /> + <hkern g1="backslash.alt" u2="&#x107;" k="10" /> + <hkern g1="backslash.alt" u2="&#xff;" k="65" /> + <hkern g1="backslash.alt" u2="&#xfd;" k="65" /> + <hkern g1="backslash.alt" u2="&#xf8;" k="10" /> + <hkern g1="backslash.alt" u2="&#xf6;" k="10" /> + <hkern g1="backslash.alt" u2="&#xf5;" k="10" /> + <hkern g1="backslash.alt" u2="&#xf4;" k="10" /> + <hkern g1="backslash.alt" u2="&#xf3;" k="10" /> + <hkern g1="backslash.alt" u2="&#xf2;" k="10" /> + <hkern g1="backslash.alt" u2="&#xeb;" k="10" /> + <hkern g1="backslash.alt" u2="&#xea;" k="10" /> + <hkern g1="backslash.alt" u2="&#xe9;" k="10" /> + <hkern g1="backslash.alt" u2="&#xe8;" k="10" /> + <hkern g1="backslash.alt" u2="&#xe7;" k="10" /> + <hkern g1="backslash.alt" u2="y" k="65" /> + <hkern g1="backslash.alt" u2="w" k="35" /> + <hkern g1="backslash.alt" u2="t" k="60" /> + <hkern g1="backslash.alt" u2="q" k="10" /> + <hkern g1="backslash.alt" u2="o" k="10" /> + <hkern g1="backslash.alt" u2="g" k="10" /> + <hkern g1="backslash.alt" u2="e" k="10" /> + <hkern g1="backslash.alt" u2="c" k="10" /> + <hkern g1="backslash.alt" g2="w.alt" k="35" /> + <hkern g1="backslash.alt" g2="v.alt" k="50" /> + <hkern g1="backslash.alt" u2="&#xf809;" k="30" /> + <hkern g1="backslash.alt" u2="&#xf807;" k="30" /> + <hkern g1="backslash.alt" u2="v" k="50" /> + <hkern g1="a.alt" u2="&#x201c;" k="70" /> + <hkern g1="a.alt" u2="&#x2018;" k="70" /> + <hkern g1="a.alt" g2="y.alt" k="10" /> + <hkern g1="a.alt" g2="w.alt" k="15" /> + <hkern g1="a.alt" g2="v.alt" k="20" /> + <hkern g1="a.alt" g2="s.alt" k="10" /> + <hkern g1="a.alt" g2="backslash.alt" k="20" /> + <hkern g1="a.alt" u2="\" k="61" /> + <hkern g1="b.alt" g2="z.alt" k="20" /> + <hkern g1="b.alt" g2="x.alt" k="10" /> + <hkern g1="b.alt" g2="v.alt" k="10" /> + <hkern g1="b.alt" u2="\" k="50" /> + <hkern g1="c.alt" g2="oe.alt" k="10" /> + <hkern g1="c.alt" g2="q.alt" k="10" /> + <hkern g1="c.alt" g2="o.alt" k="10" /> + <hkern g1="c.alt" g2="e.alt" k="10" /> + <hkern g1="c.alt" g2="d.alt" k="10" /> + <hkern g1="c.alt" g2="c.alt" k="10" /> + <hkern g1="c.alt" u2="&#x2212;" k="10" /> + <hkern g1="c.alt" u2="&#x2039;" k="10" /> + <hkern g1="c.alt" u2="&#x2014;" k="10" /> + <hkern g1="c.alt" u2="&#x2013;" k="10" /> + <hkern g1="c.alt" u2="&#xab;" k="10" /> + <hkern g1="c.alt" u2="&#x2d;" k="10" /> + <hkern g1="c.alt" u2="\" k="28" /> + <hkern g1="e.alt" g2="z.alt" k="10" /> + <hkern g1="e.alt" g2="v.alt" k="5" /> + <hkern g1="e.alt" u2="\" k="55" /> + <hkern g1="f.alt" g2="oe.alt" k="20" /> + <hkern g1="f.alt" g2="ae.alt" k="15" /> + <hkern g1="f.alt" g2="q.alt" k="20" /> + <hkern g1="f.alt" g2="o.alt" k="20" /> + <hkern g1="f.alt" g2="e.alt" k="20" /> + <hkern g1="f.alt" g2="d.alt" k="20" /> + <hkern g1="f.alt" g2="c.alt" k="20" /> + <hkern g1="f.alt" g2="a.alt" k="15" /> + <hkern g1="f.alt" u2="&#x2212;" k="17" /> + <hkern g1="f.alt" u2="&#x2039;" k="10" /> + <hkern g1="f.alt" u2="&#x2026;" k="50" /> + <hkern g1="f.alt" u2="&#x201d;" k="-20" /> + <hkern g1="f.alt" u2="&#x201c;" k="-30" /> + <hkern g1="f.alt" u2="&#x2019;" k="-20" /> + <hkern g1="f.alt" u2="&#x2018;" k="-30" /> + <hkern g1="f.alt" u2="&#x2014;" k="17" /> + <hkern g1="f.alt" u2="&#x2013;" k="17" /> + <hkern g1="f.alt" u2="&#x2bc;" k="-20" /> + <hkern g1="f.alt" u2="&#xab;" k="10" /> + <hkern g1="f.alt" u2="&#x2e;" k="50" /> + <hkern g1="f.alt" u2="&#x2d;" k="17" /> + <hkern g1="f.alt" u2="&#x2c;" k="50" /> + <hkern g1="f.alt" g2="eth.alt" k="20" /> + <hkern g1="f.alt" g2="s.alt" k="16" /> + <hkern g1="f.alt" g2="g.alt" k="20" /> + <hkern g1="f.alt" u2="&#x7d;" k="-30" /> + <hkern g1="f.alt" u2="]" k="-30" /> + <hkern g1="f.alt" u2="\" k="-50" /> + <hkern g1="f.alt" u2="&#x3f;" k="-20" /> + <hkern g1="f.alt" u2="&#x2a;" k="-25" /> + <hkern g1="f.alt" u2="&#x21;" k="-10" /> + <hkern g1="g.alt" g2="oe.alt" k="10" /> + <hkern g1="g.alt" g2="ae.alt" k="10" /> + <hkern g1="g.alt" g2="q.alt" k="10" /> + <hkern g1="g.alt" g2="o.alt" k="10" /> + <hkern g1="g.alt" g2="e.alt" k="10" /> + <hkern g1="g.alt" g2="d.alt" k="10" /> + <hkern g1="g.alt" g2="c.alt" k="10" /> + <hkern g1="g.alt" g2="a.alt" k="10" /> + <hkern g1="g.alt" u2="&#x2026;" k="10" /> + <hkern g1="g.alt" u2="&#x2e;" k="10" /> + <hkern g1="g.alt" u2="&#x2c;" k="10" /> + <hkern g1="g.alt" u2="&#x2a;" k="-26" /> + <hkern g1="g.alt" u2="&#x21;" k="-15" /> + <hkern g1="h.alt" g2="y.alt" k="10" /> + <hkern g1="h.alt" g2="w.alt" k="5" /> + <hkern g1="h.alt" g2="v.alt" k="10" /> + <hkern g1="h.alt" u2="\" k="60" /> + <hkern g1="k.alt" g2="oe.alt" k="15" /> + <hkern g1="k.alt" g2="q.alt" k="15" /> + <hkern g1="k.alt" g2="o.alt" k="15" /> + <hkern g1="k.alt" g2="e.alt" k="15" /> + <hkern g1="k.alt" g2="d.alt" k="15" /> + <hkern g1="k.alt" g2="c.alt" k="15" /> + <hkern g1="k.alt" g2="eth.alt" k="10" /> + <hkern g1="k.alt" u2="\" k="33" /> + <hkern g1="l.alt" g2="y.alt" k="20" /> + <hkern g1="l.alt" g2="w.alt" k="20" /> + <hkern g1="l.alt" g2="v.alt" k="20" /> + <hkern g1="l.alt" u2="\" k="34" /> + <hkern g1="m.alt" g2="y.alt" k="10" /> + <hkern g1="m.alt" g2="w.alt" k="5" /> + <hkern g1="m.alt" g2="v.alt" k="10" /> + <hkern g1="m.alt" u2="\" k="60" /> + <hkern g1="n.alt" g2="y.alt" k="10" /> + <hkern g1="n.alt" g2="w.alt" k="5" /> + <hkern g1="n.alt" g2="v.alt" k="10" /> + <hkern g1="n.alt" u2="\" k="60" /> + <hkern g1="o.alt" u2="&#x201d;" k="20" /> + <hkern g1="o.alt" u2="&#x201c;" k="75" /> + <hkern g1="o.alt" u2="&#x2019;" k="20" /> + <hkern g1="o.alt" u2="&#x2018;" k="75" /> + <hkern g1="o.alt" u2="&#x2bc;" k="20" /> + <hkern g1="o.alt" g2="z.alt" k="30" /> + <hkern g1="o.alt" g2="y.alt" k="10" /> + <hkern g1="o.alt" g2="x.alt" k="15" /> + <hkern g1="o.alt" g2="w.alt" k="10" /> + <hkern g1="o.alt" g2="v.alt" k="20" /> + <hkern g1="o.alt" g2="s.alt" k="10" /> + <hkern g1="o.alt" u2="\" k="50" /> + <hkern g1="o.alt" u2="&#x3f;" k="30" /> + <hkern g1="o.alt" u2="&#x2a;" k="25" /> + <hkern g1="p.alt" g2="z.alt" k="20" /> + <hkern g1="p.alt" g2="x.alt" k="10" /> + <hkern g1="p.alt" g2="v.alt" k="10" /> + <hkern g1="p.alt" u2="\" k="50" /> + <hkern g1="q.alt" u2="&#x201c;" k="30" /> + <hkern g1="q.alt" u2="&#x2018;" k="30" /> + <hkern g1="q.alt" u2="\" k="44" /> + <hkern g1="r.alt" g2="oe.alt" k="20" /> + <hkern g1="r.alt" g2="ae.alt" k="20" /> + <hkern g1="r.alt" g2="o.alt" k="20" /> + <hkern g1="r.alt" g2="e.alt" k="20" /> + <hkern g1="r.alt" g2="c.alt" k="20" /> + <hkern g1="r.alt" g2="a.alt" k="20" /> + <hkern g1="r.alt" u2="&#x2026;" k="89" /> + <hkern g1="r.alt" u2="&#x2e;" k="89" /> + <hkern g1="r.alt" u2="&#x2c;" k="89" /> + <hkern g1="r.alt" g2="eth.alt" k="20" /> + <hkern g1="r.alt" g2="s.alt" k="10" /> + <hkern g1="r.alt" g2="q.alt" k="25" /> + <hkern g1="r.alt" g2="g.alt" k="20" /> + <hkern g1="r.alt" g2="d.alt" k="25" /> + <hkern g1="r.alt" u2="&#x2f;" k="61" /> + <hkern g1="r.alt" u2="&#x2a;" k="-20" /> + <hkern g1="r.alt" u2="&#x26;" k="20" /> + <hkern g1="s.alt" u2="&#x201c;" k="31" /> + <hkern g1="s.alt" u2="&#x2018;" k="31" /> + <hkern g1="s.alt" g2="z.alt" k="15" /> + <hkern g1="s.alt" u2="\" k="45" /> + <hkern g1="t.alt" g2="oe.alt" k="10" /> + <hkern g1="t.alt" g2="q.alt" k="10" /> + <hkern g1="t.alt" g2="o.alt" k="10" /> + <hkern g1="t.alt" g2="e.alt" k="10" /> + <hkern g1="t.alt" g2="d.alt" k="10" /> + <hkern g1="t.alt" g2="c.alt" k="10" /> + <hkern g1="t.alt" u2="&#x2212;" k="10" /> + <hkern g1="t.alt" u2="&#x2014;" k="10" /> + <hkern g1="t.alt" u2="&#x2013;" k="10" /> + <hkern g1="t.alt" u2="&#x2d;" k="10" /> + <hkern g1="t.alt" u2="\" k="27" /> + <hkern g1="u.alt" u2="&#x201c;" k="30" /> + <hkern g1="u.alt" u2="&#x2018;" k="30" /> + <hkern g1="u.alt" u2="\" k="39" /> + <hkern g1="v.alt" g2="oe.alt" k="20" /> + <hkern g1="v.alt" g2="ae.alt" k="10" /> + <hkern g1="v.alt" g2="q.alt" k="20" /> + <hkern g1="v.alt" g2="o.alt" k="20" /> + <hkern g1="v.alt" g2="e.alt" k="20" /> + <hkern g1="v.alt" g2="d.alt" k="20" /> + <hkern g1="v.alt" g2="c.alt" k="20" /> + <hkern g1="v.alt" g2="a.alt" k="10" /> + <hkern g1="v.alt" u2="&#x2212;" k="20" /> + <hkern g1="v.alt" u2="&#x2026;" k="65" /> + <hkern g1="v.alt" u2="&#x2014;" k="20" /> + <hkern g1="v.alt" u2="&#x2013;" k="20" /> + <hkern g1="v.alt" u2="&#x153;" k="15" /> + <hkern g1="v.alt" u2="&#x151;" k="15" /> + <hkern g1="v.alt" u2="&#x14f;" k="15" /> + <hkern g1="v.alt" u2="&#x14d;" k="15" /> + <hkern g1="v.alt" u2="&#x123;" k="15" /> + <hkern g1="v.alt" u2="&#x121;" k="15" /> + <hkern g1="v.alt" u2="&#x11f;" k="15" /> + <hkern g1="v.alt" u2="&#x11d;" k="15" /> + <hkern g1="v.alt" u2="&#x11b;" k="15" /> + <hkern g1="v.alt" u2="&#x119;" k="15" /> + <hkern g1="v.alt" u2="&#x117;" k="15" /> + <hkern g1="v.alt" u2="&#x115;" k="15" /> + <hkern g1="v.alt" u2="&#x113;" k="15" /> + <hkern g1="v.alt" u2="&#x10d;" k="15" /> + <hkern g1="v.alt" u2="&#x10b;" k="15" /> + <hkern g1="v.alt" u2="&#x109;" k="15" /> + <hkern g1="v.alt" u2="&#x107;" k="15" /> + <hkern g1="v.alt" u2="&#xf8;" k="15" /> + <hkern g1="v.alt" u2="&#xf6;" k="15" /> + <hkern g1="v.alt" u2="&#xf5;" k="15" /> + <hkern g1="v.alt" u2="&#xf4;" k="15" /> + <hkern g1="v.alt" u2="&#xf3;" k="15" /> + <hkern g1="v.alt" u2="&#xf2;" k="15" /> + <hkern g1="v.alt" u2="&#xeb;" k="15" /> + <hkern g1="v.alt" u2="&#xea;" k="15" /> + <hkern g1="v.alt" u2="&#xe9;" k="15" /> + <hkern g1="v.alt" u2="&#xe8;" k="15" /> + <hkern g1="v.alt" u2="&#xe7;" k="15" /> + <hkern g1="v.alt" u2="q" k="15" /> + <hkern g1="v.alt" u2="o" k="15" /> + <hkern g1="v.alt" u2="g" k="15" /> + <hkern g1="v.alt" u2="e" k="15" /> + <hkern g1="v.alt" u2="c" k="15" /> + <hkern g1="v.alt" u2="&#x2e;" k="65" /> + <hkern g1="v.alt" u2="&#x2d;" k="20" /> + <hkern g1="v.alt" u2="&#x2c;" k="65" /> + <hkern g1="v.alt" g2="eth.alt" k="20" /> + <hkern g1="v.alt" g2="s.alt" k="10" /> + <hkern g1="v.alt" g2="g.alt" k="10" /> + <hkern g1="v.alt" g2="slash.alt" k="45" /> + <hkern g1="v.alt" g2="at.alt" k="30" /> + <hkern g1="v.alt" u2="\" k="23" /> + <hkern g1="v.alt" u2="&#x40;" k="10" /> + <hkern g1="v.alt" u2="&#x2f;" k="45" /> + <hkern g1="w.alt" g2="oe.alt" k="10" /> + <hkern g1="w.alt" g2="ae.alt" k="10" /> + <hkern g1="w.alt" g2="q.alt" k="10" /> + <hkern g1="w.alt" g2="o.alt" k="10" /> + <hkern g1="w.alt" g2="e.alt" k="10" /> + <hkern g1="w.alt" g2="d.alt" k="10" /> + <hkern g1="w.alt" g2="c.alt" k="10" /> + <hkern g1="w.alt" g2="a.alt" k="10" /> + <hkern g1="w.alt" u2="&#x2026;" k="60" /> + <hkern g1="w.alt" u2="&#x2e;" k="60" /> + <hkern g1="w.alt" u2="&#x2c;" k="60" /> + <hkern g1="w.alt" g2="eth.alt" k="15" /> + <hkern g1="w.alt" g2="g.alt" k="10" /> + <hkern g1="w.alt" g2="slash.alt" k="30" /> + <hkern g1="w.alt" g2="at.alt" k="20" /> + <hkern g1="w.alt" u2="\" k="17" /> + <hkern g1="w.alt" u2="&#x2f;" k="39" /> + <hkern g1="x.alt" g2="oe.alt" k="15" /> + <hkern g1="x.alt" g2="q.alt" k="15" /> + <hkern g1="x.alt" g2="o.alt" k="15" /> + <hkern g1="x.alt" g2="e.alt" k="15" /> + <hkern g1="x.alt" g2="d.alt" k="15" /> + <hkern g1="x.alt" g2="c.alt" k="15" /> + <hkern g1="x.alt" g2="eth.alt" k="10" /> + <hkern g1="x.alt" u2="\" k="28" /> + <hkern g1="y.alt" g2="oe.alt" k="10" /> + <hkern g1="y.alt" g2="ae.alt" k="15" /> + <hkern g1="y.alt" g2="q.alt" k="10" /> + <hkern g1="y.alt" g2="o.alt" k="10" /> + <hkern g1="y.alt" g2="e.alt" k="10" /> + <hkern g1="y.alt" g2="d.alt" k="10" /> + <hkern g1="y.alt" g2="c.alt" k="10" /> + <hkern g1="y.alt" g2="a.alt" k="15" /> + <hkern g1="y.alt" u2="&#x2026;" k="30" /> + <hkern g1="y.alt" u2="&#x2e;" k="30" /> + <hkern g1="y.alt" u2="&#x2c;" k="30" /> + <hkern g1="y.alt" g2="eth.alt" k="10" /> + <hkern g1="y.alt" g2="s.alt" k="7" /> + <hkern g1="y.alt" g2="g.alt" k="10" /> + <hkern g1="y.alt" u2="\" k="28" /> + <hkern g1="y.alt" u2="&#x2f;" k="33" /> + <hkern g1="z.alt" g2="oe.alt" k="20" /> + <hkern g1="z.alt" g2="q.alt" k="20" /> + <hkern g1="z.alt" g2="o.alt" k="20" /> + <hkern g1="z.alt" g2="e.alt" k="20" /> + <hkern g1="z.alt" g2="d.alt" k="20" /> + <hkern g1="z.alt" g2="c.alt" k="20" /> + <hkern g1="z.alt" u2="&#x2212;" k="10" /> + <hkern g1="z.alt" u2="&#x2039;" k="10" /> + <hkern g1="z.alt" u2="&#x2014;" k="10" /> + <hkern g1="z.alt" u2="&#x2013;" k="10" /> + <hkern g1="z.alt" u2="&#xab;" k="10" /> + <hkern g1="z.alt" u2="&#x2d;" k="10" /> + <hkern g1="z.alt" g2="eth.alt" k="10" /> + <hkern g1="z.alt" u2="\" k="34" /> + <hkern g1="z.alt" u2="&#x2f;" k="-10" /> + <hkern g1="ae.alt" g2="z.alt" k="10" /> + <hkern g1="ae.alt" g2="v.alt" k="5" /> + <hkern g1="ae.alt" u2="\" k="55" /> + <hkern g1="oe.alt" g2="z.alt" k="10" /> + <hkern g1="oe.alt" g2="v.alt" k="5" /> + <hkern g1="oe.alt" u2="\" k="55" /> + <hkern g1="thorn.alt" g2="z.alt" k="20" /> + <hkern g1="thorn.alt" g2="x.alt" k="10" /> + <hkern g1="thorn.alt" g2="v.alt" k="10" /> + <hkern g1="thorn.alt" u2="\" k="50" /> + <hkern g1="fl.alt" g2="y.alt" k="20" /> + <hkern g1="fl.alt" g2="w.alt" k="20" /> + <hkern g1="fl.alt" g2="v.alt" k="20" /> + <hkern g1="fl.alt" u2="\" k="34" /> + <hkern g1="ffl.alt" g2="y.alt" k="20" /> + <hkern g1="ffl.alt" g2="w.alt" k="20" /> + <hkern g1="ffl.alt" g2="v.alt" k="20" /> + <hkern g1="ffl.alt" u2="\" k="34" /> + <hkern g1="B" + g2="apostrophe,quoteright,quotedblright" + k="10" /> + <hkern g1="B" + g2="quoteleft,quotedblleft" + k="35" /> + <hkern g1="B" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="20" /> + <hkern g1="B" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="30" /> + <hkern g1="B" + g2="T,Tcommaaccent,Tcaron,Tbar,uni021A" + k="30" /> + <hkern g1="B" + g2="V" + k="35" /> + <hkern g1="B" + g2="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="20" /> + <hkern g1="B" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="45" /> + <hkern g1="B" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="20" /> + <hkern g1="B" + g2="z,zacute,zdotaccent,zcaron" + k="10" /> + <hkern g1="B" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="17" /> + <hkern g1="B" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + k="10" /> + <hkern g1="B" + g2="X" + k="10" /> + <hkern g1="D,Eth,Dcroat" + g2="T,Tcommaaccent,Tcaron,Tbar,uni021A" + k="30" /> + <hkern g1="D,Eth,Dcroat" + g2="V" + k="20" /> + <hkern g1="D,Eth,Dcroat" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="47" /> + <hkern g1="D,Eth,Dcroat" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="40" /> + <hkern g1="D,Eth,Dcroat" + g2="X" + k="30" /> + <hkern g1="D,Eth,Dcroat" + g2="J,Jcircumflex" + k="30" /> + <hkern g1="D,Eth,Dcroat" + g2="j,jcircumflex" + k="15" /> + <hkern g1="D,Eth,Dcroat" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="20" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="20" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="40" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="25" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="20" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="20" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="10" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="20" /> + <hkern g1="F" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="20" /> + <hkern g1="F" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="30" /> + <hkern g1="F" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="20" /> + <hkern g1="F" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="46" /> + <hkern g1="F" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="10" /> + <hkern g1="F" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="30" /> + <hkern g1="F" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="46" /> + <hkern g1="F" + g2="z,zacute,zdotaccent,zcaron" + k="30" /> + <hkern g1="F" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + k="15" /> + <hkern g1="F" + g2="j,jcircumflex" + k="40" /> + <hkern g1="F" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="70" /> + <hkern g1="F" + g2="comma,period,ellipsis" + k="100" /> + <hkern g1="F" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="50" /> + <hkern g1="F" + g2="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="40" /> + <hkern g1="F" + g2="b,d,f,h,i,k,l,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,dcaron,dcroat,hcircumflex,hbar,itilde,imacron,ibreve,iogonek,ij,kcommaaccent,kgreenlandic,lacute,lcommaaccent,lcaron,ldot,lslash,nacute,ncommaaccent,ncaron,napostrophe,racute,rcommaaccent,rcaron,ff,fi,fl,ffi,ffl" + k="50" /> + <hkern g1="F" + g2="m.alt,n.alt,p.alt,r.alt" + k="40" /> + <hkern g1="F" + g2="a.alt,ae.alt" + k="50" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="guillemotleft,guilsinglleft" + k="10" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="50" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="50" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="50" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="40" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="50" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="20" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="40" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="10" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="a.alt,ae.alt" + k="10" /> + <hkern g1="J,IJ,Jcircumflex" + g2="X" + k="10" /> + <hkern g1="J,IJ,Jcircumflex" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="10" /> + <hkern g1="K,Kcommaaccent" + g2="guillemotleft,guilsinglleft" + k="15" /> + <hkern g1="K,Kcommaaccent" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="30" /> + <hkern g1="K,Kcommaaccent" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="40" /> + <hkern g1="K,Kcommaaccent" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="40" /> + <hkern g1="K,Kcommaaccent" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="20" /> + <hkern g1="K,Kcommaaccent" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="35" /> + <hkern g1="K,Kcommaaccent" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="20" /> + <hkern g1="K,Kcommaaccent" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="20" /> + <hkern g1="K,Kcommaaccent" + g2="hyphen,endash,emdash,minus" + k="20" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="apostrophe,quoteright,quotedblright" + k="110" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="quoteleft,quotedblleft" + k="137" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="40" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="100" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="T,Tcommaaccent,Tcaron,Tbar,uni021A" + k="95" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="V" + k="100" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="60" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="110" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="40" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="10" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + k="20" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="65" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="10" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="10" /> + <hkern g1="M" + g2="V" + k="20" /> + <hkern g1="M" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="20" /> + <hkern g1="O,Q,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut" + g2="apostrophe,quoteright,quotedblright" + k="10" /> + <hkern g1="O,Q,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut" + g2="quoteleft,quotedblleft" + k="30" /> + <hkern g1="O,Q,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut" + g2="T,Tcommaaccent,Tcaron,Tbar,uni021A" + k="30" /> + <hkern g1="O,Q,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut" + g2="V" + k="20" /> + <hkern g1="O,Q,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="45" /> + <hkern g1="O,Q,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut" + g2="z,zacute,zdotaccent,zcaron" + k="10" /> + <hkern g1="O,Q,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="40" /> + <hkern g1="O,Q,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut" + g2="X" + k="30" /> + <hkern g1="O,Q,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut" + g2="J,Jcircumflex" + k="20" /> + <hkern g1="O,Q,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="25" /> + <hkern g1="O,Q,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut" + g2="comma,period,ellipsis" + k="30" /> + <hkern g1="P" + g2="guillemotleft,guilsinglleft" + k="10" /> + <hkern g1="P" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="20" /> + <hkern g1="P" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="30" /> + <hkern g1="P" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="10" /> + <hkern g1="P" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="30" /> + <hkern g1="P" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="30" /> + <hkern g1="P" + g2="X" + k="35" /> + <hkern g1="P" + g2="J,Jcircumflex" + k="35" /> + <hkern g1="P" + g2="j,jcircumflex" + k="20" /> + <hkern g1="P" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="70" /> + <hkern g1="P" + g2="comma,period,ellipsis" + k="134" /> + <hkern g1="P" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="25" /> + <hkern g1="P" + g2="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="15" /> + <hkern g1="P" + g2="b,d,f,h,i,k,l,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,dcaron,dcroat,hcircumflex,hbar,itilde,imacron,ibreve,iogonek,ij,kcommaaccent,kgreenlandic,lacute,lcommaaccent,lcaron,ldot,lslash,nacute,ncommaaccent,ncaron,napostrophe,racute,rcommaaccent,rcaron,ff,fi,fl,ffi,ffl" + k="10" /> + <hkern g1="P" + g2="m.alt,n.alt,p.alt,r.alt" + k="5" /> + <hkern g1="P" + g2="a.alt,ae.alt" + k="25" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="quoteleft,quotedblleft" + k="30" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="30" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="T,Tcommaaccent,Tcaron,Tbar,uni021A" + k="25" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="V" + k="40" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="25" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="50" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="30" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="25" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + k="20" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="20" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="30" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="25" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="55" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="T,Tcommaaccent,Tcaron,Tbar,uni021A" + k="25" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="V" + k="25" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="20" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="35" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="15" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="5" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="30" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="20" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="5" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="z,zacute,zdotaccent,zcaron" + k="20" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="20" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + k="20" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="X" + k="10" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="20" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="m.alt,n.alt,p.alt,r.alt" + k="5" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="guillemotleft,guilsinglleft" + k="110" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="60" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="70" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="30" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="110" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="60" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="80" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="110" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="z,zacute,zdotaccent,zcaron" + k="80" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="j,jcircumflex" + k="85" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="90" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="comma,period,ellipsis" + k="91" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="90" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="90" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="b,d,f,h,i,k,l,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,dcaron,dcroat,hcircumflex,hbar,itilde,imacron,ibreve,iogonek,ij,kcommaaccent,kgreenlandic,lacute,lcommaaccent,lcaron,ldot,lslash,nacute,ncommaaccent,ncaron,napostrophe,racute,rcommaaccent,rcaron,ff,fi,fl,ffi,ffl" + k="94" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="m.alt,n.alt,p.alt,r.alt" + k="80" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="a.alt,ae.alt" + k="90" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="hyphen,endash,emdash,minus" + k="70" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="colon,semicolon" + k="60" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,uni021A" + g2="guillemotright,guilsinglright" + k="70" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="5" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="X" + k="10" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="J,Jcircumflex" + k="15" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="30" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="V" + g2="guillemotleft,guilsinglleft" + k="55" /> + <hkern g1="V" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="20" /> + <hkern g1="V" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="30" /> + <hkern g1="V" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="65" /> + <hkern g1="V" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="20" /> + <hkern g1="V" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="30" /> + <hkern g1="V" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="65" /> + <hkern g1="V" + g2="z,zacute,zdotaccent,zcaron" + k="40" /> + <hkern g1="V" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + k="10" /> + <hkern g1="V" + g2="j,jcircumflex" + k="50" /> + <hkern g1="V" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="77" /> + <hkern g1="V" + g2="comma,period,ellipsis" + k="100" /> + <hkern g1="V" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="60" /> + <hkern g1="V" + g2="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="50" /> + <hkern g1="V" + g2="b,d,f,h,i,k,l,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,dcaron,dcroat,hcircumflex,hbar,itilde,imacron,ibreve,iogonek,ij,kcommaaccent,kgreenlandic,lacute,lcommaaccent,lcaron,ldot,lslash,nacute,ncommaaccent,ncaron,napostrophe,racute,rcommaaccent,rcaron,ff,fi,fl,ffi,ffl" + k="50" /> + <hkern g1="V" + g2="m.alt,n.alt,p.alt,r.alt" + k="50" /> + <hkern g1="V" + g2="a.alt,ae.alt" + k="60" /> + <hkern g1="V" + g2="hyphen,endash,emdash,minus" + k="40" /> + <hkern g1="V" + g2="guillemotright,guilsinglright" + k="10" /> + <hkern g1="V" + g2="M" + k="20" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="guillemotleft,guilsinglleft" + k="30" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="40" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="40" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="z,zacute,zdotaccent,zcaron" + k="25" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="j,jcircumflex" + k="30" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="45" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="comma,period,ellipsis" + k="55" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="40" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="30" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="b,d,f,h,i,k,l,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,dcaron,dcroat,hcircumflex,hbar,itilde,imacron,ibreve,iogonek,ij,kcommaaccent,kgreenlandic,lacute,lcommaaccent,lcaron,ldot,lslash,nacute,ncommaaccent,ncaron,napostrophe,racute,rcommaaccent,rcaron,ff,fi,fl,ffi,ffl" + k="30" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="m.alt,n.alt,p.alt,r.alt" + k="20" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="a.alt,ae.alt" + k="40" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="hyphen,endash,emdash,minus" + k="20" /> + <hkern g1="X" + g2="apostrophe,quoteright,quotedblright" + k="30" /> + <hkern g1="X" + g2="guillemotleft,guilsinglleft" + k="30" /> + <hkern g1="X" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="40" /> + <hkern g1="X" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="50" /> + <hkern g1="X" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="35" /> + <hkern g1="X" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="20" /> + <hkern g1="X" + g2="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + k="10" /> + <hkern g1="X" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="40" /> + <hkern g1="X" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="20" /> + <hkern g1="X" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="20" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="guillemotleft,guilsinglleft" + k="100" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="34" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="37" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="50" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="110" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="35" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="65" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="110" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="z,zacute,zdotaccent,zcaron" + k="65" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + k="20" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="j,jcircumflex" + k="80" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="95" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="comma,period,ellipsis" + k="110" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="85" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="90" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="b,d,f,h,i,k,l,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,dcaron,dcroat,hcircumflex,hbar,itilde,imacron,ibreve,iogonek,ij,kcommaaccent,kgreenlandic,lacute,lcommaaccent,lcaron,ldot,lslash,nacute,ncommaaccent,ncaron,napostrophe,racute,rcommaaccent,rcaron,ff,fi,fl,ffi,ffl" + k="80" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="m.alt,n.alt,p.alt,r.alt" + k="70" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="a.alt,ae.alt" + k="85" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="hyphen,endash,emdash,minus" + k="70" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="colon,semicolon" + k="50" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="guillemotright,guilsinglright" + k="40" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="M" + k="20" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="guillemotleft,guilsinglleft" + k="20" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="50" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="55" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE" + k="60" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="35" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + k="10" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="40" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="35" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="35" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="15" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="b,d,f,h,i,k,l,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,dcaron,dcroat,hcircumflex,hbar,itilde,imacron,ibreve,iogonek,ij,kcommaaccent,kgreenlandic,lacute,lcommaaccent,lcaron,ldot,lslash,nacute,ncommaaccent,ncaron,napostrophe,racute,rcommaaccent,rcaron,ff,fi,fl,ffi,ffl" + k="20" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="a.alt,ae.alt" + k="15" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="hyphen,endash,emdash,minus" + k="10" /> + <hkern g1="a,agrave,aacute,acircumflex,atilde,adieresis,aring,amacron,abreve,aogonek" + g2="quoteleft,quotedblleft" + k="60" /> + <hkern g1="a,agrave,aacute,acircumflex,atilde,adieresis,aring,amacron,abreve,aogonek" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="20" /> + <hkern g1="a,agrave,aacute,acircumflex,atilde,adieresis,aring,amacron,abreve,aogonek" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="38" /> + <hkern g1="a,agrave,aacute,acircumflex,atilde,adieresis,aring,amacron,abreve,aogonek" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="15" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe" + g2="quoteleft,quotedblleft" + k="50" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="30" /> + <hkern g1="f,ff" + g2="comma,period,ellipsis" + k="50" /> + <hkern g1="f,ff" + g2="hyphen,endash,emdash,minus" + k="10" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="guillemotleft,guilsinglleft" + k="10" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="15" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="hyphen,endash,emdash,minus" + k="10" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="25" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="5" /> + <hkern g1="l,lacute,lcommaaccent,lcaron,ldot,lslash,fl,ffl" + g2="apostrophe,quoteright,quotedblright" + k="30" /> + <hkern g1="l,lacute,lcommaaccent,lcaron,ldot,lslash,fl,ffl" + g2="quoteleft,quotedblleft" + k="70" /> + <hkern g1="l,lacute,lcommaaccent,lcaron,ldot,lslash,fl,ffl" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="60" /> + <hkern g1="l,lacute,lcommaaccent,lcaron,ldot,lslash,fl,ffl" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="85" /> + <hkern g1="l,lacute,lcommaaccent,lcaron,ldot,lslash,fl,ffl" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="10" /> + <hkern g1="l,lacute,lcommaaccent,lcaron,ldot,lslash,fl,ffl" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="80" /> + <hkern g1="l,lacute,lcommaaccent,lcaron,ldot,lslash,fl,ffl" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="10" /> + <hkern g1="l,lacute,lcommaaccent,lcaron,ldot,lslash,fl,ffl" + g2="quoteright.alt,quotedblright.alt" + k="50" /> + <hkern g1="l,lacute,lcommaaccent,lcaron,ldot,lslash,fl,ffl" + g2="quoteleft.alt,quotedblleft.alt" + k="61" /> + <hkern g1="m,n,ntilde,nacute,ncommaaccent,ncaron,napostrophe" + g2="apostrophe,quoteright,quotedblright" + k="20" /> + <hkern g1="m,n,ntilde,nacute,ncommaaccent,ncaron,napostrophe" + g2="quoteleft,quotedblleft" + k="50" /> + <hkern g1="m,n,ntilde,nacute,ncommaaccent,ncaron,napostrophe" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="16" /> + <hkern g1="m,n,ntilde,nacute,ncommaaccent,ncaron,napostrophe" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="40" /> + <hkern g1="m,n,ntilde,nacute,ncommaaccent,ncaron,napostrophe" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="10" /> + <hkern g1="o,q,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut" + g2="apostrophe,quoteright,quotedblright" + k="20" /> + <hkern g1="o,q,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut" + g2="quoteleft,quotedblleft" + k="75" /> + <hkern g1="o,q,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="15" /> + <hkern g1="o,q,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="36" /> + <hkern g1="o,q,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="10" /> + <hkern g1="o,q,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut" + g2="z,zacute,zdotaccent,zcaron" + k="20" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="quoteleft,quotedblleft" + k="50" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="25" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="35" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="20" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="20" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="20" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="5" /> + <hkern g1="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + g2="quoteleft,quotedblleft" + k="31" /> + <hkern g1="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="10" /> + <hkern g1="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="10" /> + <hkern g1="t,tcommaaccent,tcaron,tbar,uni021B" + g2="guillemotleft,guilsinglleft" + k="10" /> + <hkern g1="t,tcommaaccent,tcaron,tbar,uni021B" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="10" /> + <hkern g1="t,tcommaaccent,tcaron,tbar,uni021B" + g2="comma,period,ellipsis" + k="60" /> + <hkern g1="t,tcommaaccent,tcaron,tbar,uni021B" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="5" /> + <hkern g1="t,tcommaaccent,tcaron,tbar,uni021B" + g2="hyphen,endash,emdash,minus" + k="20" /> + <hkern g1="w,wcircumflex,wgrave,wacute,wdieresis" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="15" /> + <hkern g1="w,wcircumflex,wgrave,wacute,wdieresis" + g2="comma,period,ellipsis" + k="60" /> + <hkern g1="w,wcircumflex,wgrave,wacute,wdieresis" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="10" /> + <hkern g1="w,wcircumflex,wgrave,wacute,wdieresis" + g2="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="10" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="guillemotleft,guilsinglleft" + k="15" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="35" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="comma,period,ellipsis" + k="100" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek" + k="20" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="20" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="b,d,f,h,i,k,l,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,dcaron,dcroat,hcircumflex,hbar,itilde,imacron,ibreve,iogonek,ij,kcommaaccent,kgreenlandic,lacute,lcommaaccent,lcaron,ldot,lslash,nacute,ncommaaccent,ncaron,napostrophe,racute,rcommaaccent,rcaron,ff,fi,fl,ffi,ffl" + k="10" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="hyphen,endash,emdash,minus" + k="40" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="guillemotleft,guilsinglleft" + k="10" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="20" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="hyphen,endash,emdash,minus" + k="20" /> + <hkern g1="quoteleft,quotedblleft" + g2="c,e,g,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,emacron,ebreve,edotaccent,eogonek,ecaron,gcircumflex,gbreve,gdotaccent,gcommaaccent,omacron,obreve,ohungarumlaut,oe" + k="20" /> + <hkern g1="quoteleft,quotedblleft" + g2="c.alt,d.alt,e.alt,o.alt,q.alt,oe.alt" + k="20" /> + <hkern g1="quoteleft,quotedblleft" + g2="X" + k="30" /> + <hkern g1="quoteleft,quotedblleft" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="80" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="20" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="70" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="T,Tcommaaccent,Tcaron,Tbar,uni021A" + k="90" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="V" + k="95" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="70" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="130" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="60" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="T,Tcommaaccent,Tcaron,Tbar,uni021A" + k="70" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="V" + k="10" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="40" /> + <hkern g1="guillemotright,guilsinglright" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="15" /> + <hkern g1="guillemotright,guilsinglright" + g2="T,Tcommaaccent,Tcaron,Tbar,uni021A" + k="110" /> + <hkern g1="guillemotright,guilsinglright" + g2="V" + k="55" /> + <hkern g1="guillemotright,guilsinglright" + g2="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="30" /> + <hkern g1="guillemotright,guilsinglright" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="100" /> + <hkern g1="guillemotright,guilsinglright" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="10" /> + <hkern g1="guillemotright,guilsinglright" + g2="z,zacute,zdotaccent,zcaron" + k="10" /> + <hkern g1="guillemotright,guilsinglright" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="20" /> + <hkern g1="guillemotright,guilsinglright" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + k="30" /> + <hkern g1="guillemotright,guilsinglright" + g2="X" + k="30" /> + <hkern g1="guillemotright,guilsinglright" + g2="J,Jcircumflex" + k="20" /> + <hkern g1="guillemotright,guilsinglright" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + k="10" /> + <hkern g1="hyphen,endash,emdash,minus" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="40" /> + <hkern g1="hyphen,endash,emdash,minus" + g2="T,Tcommaaccent,Tcaron,Tbar,uni021A" + k="70" /> + <hkern g1="hyphen,endash,emdash,minus" + g2="V" + k="40" /> + <hkern g1="hyphen,endash,emdash,minus" + g2="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="20" /> + <hkern g1="hyphen,endash,emdash,minus" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="70" /> + <hkern g1="hyphen,endash,emdash,minus" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="20" /> + <hkern g1="hyphen,endash,emdash,minus" + g2="z,zacute,zdotaccent,zcaron" + k="20" /> + <hkern g1="hyphen,endash,emdash,minus" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="20" /> + <hkern g1="comma,period,ellipsis" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="60" /> + <hkern g1="comma,period,ellipsis" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="100" /> + <hkern g1="comma,period,ellipsis" + g2="T,Tcommaaccent,Tcaron,Tbar,uni021A" + k="91" /> + <hkern g1="comma,period,ellipsis" + g2="V" + k="100" /> + <hkern g1="comma,period,ellipsis" + g2="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="55" /> + <hkern g1="comma,period,ellipsis" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="110" /> + <hkern g1="comma,period,ellipsis" + g2="t,tcommaaccent,tcaron,tbar,uni021B" + k="60" /> + <hkern g1="b.alt,p.alt,thorn.alt" + g2="quoteleft,quotedblleft" + k="50" /> + <hkern g1="h.alt,m.alt,n.alt" + g2="quoteleft,quotedblleft" + k="45" /> + <hkern g1="e.alt,ae.alt,oe.alt" + g2="quoteleft,quotedblleft" + k="40" /> + </font> +</defs></svg> diff --git a/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.ttf b/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.ttf new file mode 100644 index 0000000..9c5a761 Binary files /dev/null and b/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.ttf differ diff --git a/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff b/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff new file mode 100644 index 0000000..beda737 Binary files /dev/null and b/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff differ diff --git a/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff2 b/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff2 new file mode 100644 index 0000000..9626da2 Binary files /dev/null and b/site/css/font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff2 differ diff --git a/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.eot b/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.eot new file mode 100644 index 0000000..a1956f1 Binary files /dev/null and b/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.eot differ diff --git a/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.svg b/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.svg new file mode 100644 index 0000000..f19e3d8 --- /dev/null +++ b/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.svg @@ -0,0 +1,7200 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<svg> +<metadata> +Created by FontForge 20120731 at Sat Jun 2 12:39:38 2018 + By www +Copyright (c) 2000 Adobe Systems Incorporated. All Rights Reserved. U.S. Patent Des. pending. +</metadata> +<defs> +<font id="MyriadPro-Bold" horiz-adv-x="300" > + <font-face + font-family="Myriad Pro" + font-weight="700" + font-stretch="normal" + units-per-em="1000" + panose-1="2 11 7 3 3 4 3 2 2 4" + ascent="750" + descent="-250" + x-height="489" + cap-height="674" + bbox="-92 -250 1256 897" + underline-thickness="50" + underline-position="-50" + unicode-range="U+0020-FB04" + /> +<missing-glyph horiz-adv-x="500" +d="M0 0v700h500v-700h-500zM250 395l170 255h-340zM280 350l170 -255v510zM80 50h340l-170 255zM50 605v-510l170 255z" /> + <glyph glyph-name="f_f_j" unicode="ffj" horiz-adv-x="886" +d="M781 695l-32 -114q-44 20 -100 20q-108 0 -108 -95v-17h297v-430q0 -151 -69 -214q-66 -60 -189 -60l-14 119q64 5 90 32q30 31 30 159v282h-144v-377h-152v377h-159v-377h-152v377h-65v112h65v8q0 103 63 160q54 52 146 52q42 0 85 -16l-34 -110q-18 10 -43 10 +q-27 0 -45 -18q-21 -21 -21 -72v-14h160v21q0 99 70 155t185 56q84 0 136 -26z" /> + <glyph glyph-name="f_j" unicode="fj" horiz-adv-x="586" +d="M231 0h-152v377h-65v112h65v21q0 99 70 155t185 56q94 0 144 -30l-29 -115q-46 25 -111 25q-108 0 -108 -95v-17h297v-430q0 -151 -69 -214q-66 -60 -189 -60l-14 119q64 5 90 32q30 31 30 159v282h-144v-377z" /> + <glyph glyph-name="ff" unicode="ff" horiz-adv-x="650" +d="M539 0h-152v377h-156v-377h-152v377h-65v112h65v7q0 103 56 159q52 54 149 54q35 0 65 -12l-21 -112q-21 7 -39 7q-59 0 -59 -88v-15h157v19q0 107 61 164q53 49 136 49q38 0 80 -10l-6 -117q-23 7 -49 7q-36 0 -53.5 -24t-17.5 -63v-25h98v-112h-97v-377z" /> + <glyph glyph-name="fi" unicode="fi" horiz-adv-x="588" +d="M231 0h-152v377h-65v112h65v21q0 99 70 155t185 56q94 0 144 -30l-29 -115q-46 25 -111 25q-108 0 -108 -95v-17h297v-489h-152v377h-144v-377z" /> + <glyph glyph-name="fl" unicode="fl" horiz-adv-x="588" +d="M231 0h-152v377h-65v112h65v21q0 43 19.5 85.5t54.5 70.5q69 55 186 55q111 0 188 -41v-680h-152v598q-18 10 -58 10q-44 0 -65.5 -27.5t-21.5 -72.5v-19h89v-112h-88v-377z" /> + <glyph glyph-name="ffi" unicode="ffi" horiz-adv-x="899" +d="M781 695l-32 -114q-44 20 -100 20q-108 0 -108 -95v-17h297v-489h-152v377h-144v-377h-152v377h-159v-377h-152v377h-65v112h65v8q0 103 63 160q54 52 146 52q42 0 85 -16l-34 -110q-18 10 -43 10q-27 0 -45 -18q-21 -21 -21 -72v-14h160v21q0 99 70 155t185 56 +q84 0 136 -26z" /> + <glyph glyph-name="ffl" unicode="ffl" horiz-adv-x="899" +d="M375 695l-32 -111q-21 8 -45 8q-30 0 -46 -18q-22 -21 -22 -71v-14h160v21q0 43 19.5 85.5t54.5 70.5q69 55 186 55q111 0 188 -41v-680h-152v598q-18 10 -58 10q-44 0 -65.5 -27.5t-21.5 -72.5v-19h89v-112h-88v-377h-152v377h-159v-377h-152v377h-65v112h65v7 +q0 102 61 158q60 55 159 55q39 0 76 -14z" /> + <glyph glyph-name=".notdef" horiz-adv-x="500" +d="M0 0v700h500v-700h-500zM250 395l170 255h-340zM280 350l170 -255v510zM80 50h340l-170 255zM50 605v-510l170 255z" /> + <glyph glyph-name=".null" horiz-adv-x="0" + /> + <glyph glyph-name="nonmarkingreturn" horiz-adv-x="333" + /> + <glyph glyph-name="space" unicode=" " horiz-adv-x="202" + /> + <glyph glyph-name="space" unicode="&#xa0;" horiz-adv-x="202" + /> + <glyph glyph-name="exclam" unicode="!" horiz-adv-x="268" +d="M191 221h-114l-22 453h158zM134 -11h-1q-39 0 -64 26t-25 65q0 40 25 65.5t65 25.5t64 -25t25 -66q0 -40 -24.5 -65.5t-64.5 -25.5z" /> + <glyph glyph-name="quotedbl" unicode="&#x22;" horiz-adv-x="397" +d="M36 692h134l-22 -271h-90zM228 692h134l-22 -271h-90z" /> + <glyph glyph-name="numbersign" unicode="#" horiz-adv-x="550" +d="M223 271h92l15 113h-91zM183 0h-90l26 179h-82v92h97l16 113h-84v92h98l26 174h88l-25 -174h92l25 174h89l-25 -174h80v-92h-95l-15 -113h82v-92h-98l-25 -179h-90l26 179h-91z" /> + <glyph glyph-name="dollar" unicode="$" horiz-adv-x="555" +d="M323 -87h-98v96q-99 3 -170 42l30 117q80 -44 166 -44q43 0 70 16.5t27 45.5q0 28 -25 48t-82 39q-88 29 -134 72t-46 111q0 67 45 115t124 63v95h98v-88q81 -2 146 -33l-30 -113q-73 35 -144 35q-45 0 -65.5 -16.5t-20.5 -40.5q0 -23 27.5 -42t92.5 -43q89 -31 128 -75 +t39 -113t-46.5 -119t-131.5 -65v-103z" /> + <glyph glyph-name="percent" unicode="%" horiz-adv-x="880" +d="M209 661h1q81 0 127.5 -54t46.5 -140q0 -97 -52.5 -152t-127.5 -55q-76 0 -126.5 54t-50.5 143t50 146.5t132 57.5zM206 578h-1q-32 0 -48.5 -33t-16.5 -85q-1 -52 17 -84.5t50 -32.5q64 0 64 118q0 117 -65 117zM293 -11h-82l374 671h81zM677 391h1q81 0 127.5 -54 +t46.5 -139q0 -97 -52.5 -152t-127.5 -55q-76 0 -126 53.5t-50 142.5q0 88 50 146t131 58zM675 308h-1q-32 0 -48.5 -32.5t-16.5 -84.5q-1 -52 16.5 -84.5t49.5 -32.5q64 0 64 117t-64 117z" /> + <glyph glyph-name="ampersand" unicode="&#x26;" horiz-adv-x="678" +d="M672 0h-177l-44 48q-76 -59 -185 -59q-115 0 -175 56.5t-60 134.5q0 126 128 194v3q-51 56 -51 130q0 71 53.5 124.5t149.5 53.5q79 0 130.5 -43t51.5 -115q0 -106 -133 -173v-4q105 -119 112 -126q42 66 57 164h136q-29 -163 -112 -256zM287 99h1q56 0 92 34 +q-42 41 -152 165q-54 -39 -54 -93q0 -45 31 -75.5t82 -30.5zM305 590h-1q-28 0 -44 -20t-16 -49q0 -48 46 -97q39 27 56.5 49t17.5 50q0 27 -15.5 47t-43.5 20z" /> + <glyph glyph-name="quotesingle" unicode="'" horiz-adv-x="205" +d="M36 692h134l-22 -271h-90z" /> + <glyph glyph-name="parenleft" unicode="(" horiz-adv-x="314" +d="M174 691h106q-101 -166 -101 -405q0 -233 101 -403h-106q-114 168 -114 403q1 239 114 405z" /> + <glyph glyph-name="parenright" unicode=")" horiz-adv-x="314" +d="M141 -117h-106q101 168 101 405q0 235 -101 403h106q114 -166 114 -404q-1 -236 -114 -404z" /> + <glyph glyph-name="asterisk" unicode="*" horiz-adv-x="454" +d="M285 685l87 -50l-107 -127v-2l160 32v-101l-161 27v-3l108 -123l-88 -52l-58 155l-2 -1l-57 -154l-86 52l107 125l-1 2l-157 -28v101l156 -32v2l-105 126l89 51l55 -153h2z" /> + <glyph glyph-name="plus" unicode="+" horiz-adv-x="596" +d="M249 532h98v-218h209v-93h-209v-221h-98v221h-209v93h209v218z" /> + <glyph glyph-name="comma" unicode="," horiz-adv-x="260" +d="M103 -111l-102 -9q51 142 73 284l155 10q-55 -169 -126 -285z" /> + <glyph glyph-name="hyphen" unicode="-" horiz-adv-x="322" +d="M30 313h262v-101h-262v101z" /> + <glyph glyph-name="hyphen" unicode="&#xad;" horiz-adv-x="322" +d="M30 313h262v-101h-262v101z" /> + <glyph glyph-name="period" unicode="." horiz-adv-x="260" +d="M139 -11h-1q-38 0 -63 26t-25 66q0 41 25 67t65 26q39 0 63.5 -25.5t25.5 -67.5q0 -40 -25 -66t-65 -26z" /> + <glyph glyph-name="slash" unicode="/" horiz-adv-x="331" +d="M117 -40h-101l214 725h101z" /> + <glyph glyph-name="zero" unicode="0" horiz-adv-x="555" +d="M277 -11h-1q-120 0 -181 94t-62 241q0 149 63 243t184 94q122 0 182 -94t60 -239q0 -155 -62.5 -247t-182.5 -92zM278 104h1q91 0 91 222q0 220 -92 220q-44 0 -68.5 -56t-24.5 -164q-1 -110 23.5 -166t69.5 -56z" /> + <glyph glyph-name="one" unicode="1" horiz-adv-x="555" +d="M236 0v515h-2l-124 -59l-25 114l173 80h125v-650h-147z" /> + <glyph glyph-name="two" unicode="2" horiz-adv-x="555" +d="M504 0h-461v92l83 75q116 104 164 163.5t49 113.5q0 42 -26.5 68.5t-79.5 26.5q-67 0 -139 -53l-43 108q87 67 212 67q108 0 168 -56.5t60 -147.5q0 -75 -45 -141t-128 -139l-60 -50v-2h246v-125z" /> + <glyph glyph-name="three" unicode="3" horiz-adv-x="555" +d="M38 34l31 115q72 -40 151 -40q57 0 88 24t31 62q0 46 -38 70t-92 24h-62v109h59q45 0 80 18.5t35 56.5q0 31 -24.5 49.5t-71.5 18.5q-72 0 -135 -39l-31 110q32 20 86.5 34.5t114.5 14.5q100 0 157.5 -46t57.5 -116q0 -111 -119 -151v-2q61 -11 101 -54t40 -105 +q0 -87 -72 -142.5t-194 -55.5q-119 0 -193 45z" /> + <glyph glyph-name="four" unicode="4" horiz-adv-x="555" +d="M455 0h-144v155h-288v99l245 396h187v-381h77v-114h-77v-155zM164 269h147v144q0 37 4 121h-3q-54 -107 -61 -121l-86 -142z" /> + <glyph glyph-name="five" unicode="5" horiz-adv-x="555" +d="M476 650v-125h-252l-14 -100q28 2 42 2q107 0 171 -47q79 -53 79 -163q0 -95 -76 -161.5t-203 -66.5q-111 0 -181 37l28 114q64 -32 146 -32q53 0 91.5 25.5t38.5 73.5q0 108 -183 108q-48 0 -87 -6l42 341h358z" /> + <glyph glyph-name="six" unicode="6" horiz-adv-x="555" +d="M457 659v-117q-21 1 -59 -2q-94 -7 -146 -49.5t-66 -105.5h3q51 51 138 51q85 0 143 -57t58 -155t-68 -166.5t-171 -68.5q-125 0 -192 80.5t-67 203.5q0 182 116 290q95 87 250 95q30 3 61 1zM286 101h1q39 0 63 32.5t24 82.5q0 48 -25 80t-72 32q-30 0 -54 -16t-35 -41 +q-7 -13 -7 -39q2 -56 29 -93.5t76 -37.5z" /> + <glyph glyph-name="seven" unicode="7" horiz-adv-x="555" +d="M49 650h459v-95l-268 -555h-161l268 523v2h-298v125z" /> + <glyph glyph-name="eight" unicode="8" horiz-adv-x="555" +d="M282 661h1q106 0 160.5 -50t54.5 -117q0 -96 -95 -143v-3q52 -20 86 -61t34 -100q0 -89 -68.5 -143.5t-181.5 -54.5q-116 0 -178.5 54t-62.5 127q0 112 116 163v2q-94 49 -94 143q0 81 65 132t163 51zM278 94h1q39 0 64 23t25 58q0 79 -102 107q-37 -10 -58 -36t-21 -61 +q-1 -37 24.5 -64t66.5 -27zM277 558h-1q-37 0 -57.5 -21.5t-20.5 -53.5q0 -60 91 -88q27 8 46.5 30.5t19.5 51.5q0 34 -19.5 57.5t-58.5 23.5z" /> + <glyph glyph-name="nine" unicode="9" horiz-adv-x="555" +d="M89 -9v119q20 -3 66 0q75 3 129 40q64 42 82 120l-2 1q-47 -47 -132 -47t-143.5 55.5t-58.5 147.5q0 97 69.5 165.5t175.5 68.5q120 0 183 -79.5t63 -200.5q0 -194 -113 -299q-92 -85 -250 -91q-29 -2 -69 0zM271 550h-1q-39 0 -64 -31.5t-25 -82.5q0 -44 24 -74t68 -30 +q59 0 86 42q7 14 7 39q1 57 -23 97t-72 40z" /> + <glyph glyph-name="colon" unicode=":" horiz-adv-x="260" +d="M140 312h-1q-39 0 -63.5 26t-24.5 65q0 40 25 66t64 26q40 0 64 -25.5t25 -66.5q0 -40 -24.5 -65.5t-64.5 -25.5zM140 -11h-1q-39 0 -63.5 26t-24.5 65q0 40 25 66t64 26q40 0 64 -25.5t25 -66.5q0 -40 -24.5 -65.5t-64.5 -25.5z" /> + <glyph glyph-name="semicolon" unicode=";" horiz-adv-x="260" +d="M103 -110l-101 -9q51 140 73 284l153 10q-51 -162 -125 -285zM145 312h-1q-39 0 -63.5 26t-24.5 65q0 40 25 66t64 26q40 0 64 -25.5t25 -66.5q0 -40 -24.5 -65.5t-64.5 -25.5z" /> + <glyph glyph-name="less" unicode="&#x3c;" horiz-adv-x="596" +d="M58 222v86l481 223v-106l-364 -159v-2l364 -158v-106z" /> + <glyph glyph-name="equal" unicode="=" horiz-adv-x="596" +d="M556 325h-516v93h516v-93zM556 118h-516v93h516v-93z" /> + <glyph glyph-name="greater" unicode="&#x3e;" horiz-adv-x="596" +d="M538 311v-92l-481 -219v105l372 159v2l-372 159v106z" /> + <glyph glyph-name="question" unicode="?" horiz-adv-x="445" +d="M271 219h-132l-2 26q-3 82 59 157q58 69 58 104q0 27 -18 43t-54 17q-57 0 -100 -30l-33 109q70 41 167 41q93 0 142.5 -44.5t49.5 -110.5q0 -36 -16 -71t-29 -51t-41 -47q-52 -60 -51 -125v-18zM202 -11h-1q-39 0 -64 26t-25 65q0 40 25 65.5t64 25.5q40 0 64.5 -25 +t25.5 -66q0 -40 -24.5 -65.5t-64.5 -25.5z" /> + <glyph glyph-name="at" unicode="@" horiz-adv-x="770" +d="M442 250l15 95q-16 4 -31 4q-49 0 -83.5 -42t-34.5 -100q0 -61 49 -61q29 0 54 30.5t31 73.5zM528 -11l17 -57q-80 -36 -183 -36q-130 0 -221 86.5t-91 228.5q0 102 46 188.5t132.5 139.5t195.5 53q133 0 218 -81.5t85 -207.5q0 -108 -54 -173.5t-136 -65.5 +q-36 0 -59 19.5t-27 58.5h-2q-49 -78 -130 -78q-49 0 -80.5 35.5t-31.5 96.5q0 95 65 163.5t170 68.5q74 0 118 -24l-30 -186q-13 -86 26 -87q36 -2 66.5 43.5t30.5 125.5q0 102 -63 166.5t-176 64.5q-120 0 -203.5 -85.5t-83.5 -225.5q0 -123 70.5 -192.5t184.5 -69.5 +q84 0 146 31z" /> + <glyph glyph-name="A" unicode="A" horiz-adv-x="656" +d="M416 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM244 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130z" /> + <glyph glyph-name="B" unicode="B" horiz-adv-x="604" +d="M66 3v661q75 15 197 15q135 0 199 -38q80 -43 80 -133q0 -46 -28 -84t-82 -59v-2q60 -16 97 -59.5t37 -106.5q0 -88 -70 -143q-77 -61 -265 -61q-97 0 -165 10zM217 563v-156h50q60 0 91.5 22.5t31.5 60.5q0 78 -108 78q-45 0 -65 -5zM217 298v-190q15 -3 59 -3 +q57 0 93.5 24t36.5 74q0 48 -38 71.5t-99 23.5h-52z" /> + <glyph glyph-name="C" unicode="C" horiz-adv-x="595" +d="M538 139l22 -120q-60 -29 -172 -29q-169 0 -261 94t-92 244q0 166 104.5 261t263.5 95q106 0 166 -29l-32 -121q-58 25 -128 25q-95 0 -154.5 -57.5t-59.5 -165.5q0 -101 57 -160t158 -59q76 0 128 22z" /> + <glyph glyph-name="D" unicode="D" horiz-adv-x="696" +d="M66 3v661q84 15 205 15q181 0 277 -72q114 -85 114 -254q0 -178 -111 -273q-105 -87 -312 -87q-99 0 -173 10zM218 556v-441q13 -3 53 -3q107 -1 168.5 58.5t61.5 177.5q0 104 -57 159t-157 55q-43 0 -69 -6z" /> + <glyph glyph-name="E" unicode="E" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248z" /> + <glyph glyph-name="F" unicode="F" horiz-adv-x="527" +d="M67 0v674h411v-125h-259v-154h242v-124h-242v-271h-152z" /> + <glyph glyph-name="G" unicode="G" horiz-adv-x="682" +d="M629 386v-355q-112 -38 -225 -38q-179 0 -274 90q-95 92 -95 246q1 164 108 258t277 94q117 0 187 -32l-32 -123q-63 29 -156 29q-100 0 -162 -56t-62 -162q0 -103 58.5 -162t154.5 -59q52 0 74 9v142h-104v119h251z" /> + <glyph glyph-name="H" unicode="H" horiz-adv-x="689" +d="M67 674h152v-260h251v260h152v-674h-152v281h-251v-281h-152v674z" /> + <glyph glyph-name="I" unicode="I" horiz-adv-x="285" +d="M67 674h152v-674h-152v674z" /> + <glyph glyph-name="J" unicode="J" horiz-adv-x="411" +d="M198 249v425h152v-426q0 -138 -61.5 -198.5t-177.5 -60.5q-64 0 -112 16l17 123q36 -12 78 -12q52 0 78 29.5t26 103.5z" /> + <glyph glyph-name="K" unicode="K" horiz-adv-x="614" +d="M66 0v674h151v-298h2q15 26 47 74l152 224h188l-223 -287l234 -387h-177l-166 291l-57 -71v-220h-151z" /> + <glyph glyph-name="L" unicode="L" horiz-adv-x="511" +d="M67 0v674h152v-546h268v-128h-420z" /> + <glyph glyph-name="M" unicode="M" horiz-adv-x="846" +d="M647 0l-11 258q-6 162 -6 277h-2q-35 -135 -76 -261l-82 -263h-119l-72 261q-34 123 -61 263h-2q-5 -156 -11 -279l-13 -256h-141l43 674h203l66 -225q34 -122 57 -241h4q31 135 64 242l71 224h200l36 -674h-148z" /> + <glyph glyph-name="N" unicode="N" horiz-adv-x="690" +d="M206 0h-140v674h178l140 -247q57 -101 110 -231h2q-12 119 -12 282v196h140v-674h-160l-144 260q-79 144 -117 238h-4q7 -126 7 -295v-203z" /> + <glyph glyph-name="O" unicode="O" horiz-adv-x="717" +d="M353 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM359 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64z" /> + <glyph glyph-name="P" unicode="P" horiz-adv-x="581" +d="M66 0v665q82 14 206 14q139 0 206 -55q72 -54 72 -155q0 -104 -62 -160q-77 -71 -219 -71q-33 0 -52 4v-242h-151zM217 558v-199q17 -4 51 -4q61 0 96 29t35 80q0 47 -31.5 73t-88.5 26q-44 0 -62 -5z" /> + <glyph glyph-name="Q" unicode="Q" horiz-adv-x="717" +d="M686 2l-43 -118q-131 38 -267 95q-21 8 -46 10q-124 8 -209.5 97t-85.5 245q0 155 90.5 254.5t239.5 99.5q148 0 233 -98t85 -242q0 -110 -45 -189.5t-114 -111.5v-4q71 -21 162 -38zM359 110h1q76 0 119 64t43 165q0 96 -43.5 160.5t-118.5 64.5q-76 0 -120 -65 +t-44 -163q0 -99 44 -162.5t119 -63.5z" /> + <glyph glyph-name="R" unicode="R" horiz-adv-x="593" +d="M66 0v664q82 15 203 15q152 0 218 -54q63 -49 63 -141q0 -60 -35.5 -104t-83.5 -61v-3q63 -25 90 -125q6 -22 19 -73t21 -78.5t14 -39.5h-156q-19 37 -46 157q-14 62 -38 84.5t-73 23.5h-45v-265h-151zM217 560v-185h60q57 0 89 26t32 71t-29.5 69t-82.5 24q-51 0 -69 -5 +z" /> + <glyph glyph-name="S" unicode="S" horiz-adv-x="540" +d="M40 32l31 125q80 -42 169 -42q52 0 79.5 19.5t27.5 53.5q0 31 -25.5 52t-87.5 42q-186 66 -186 200q0 88 69.5 145t185.5 57q100 0 172 -34l-34 -122q-64 32 -140 32q-47 0 -72.5 -19t-25.5 -46q0 -30 27 -49t98 -46q90 -33 132 -81.5t42 -119.5q0 -90 -69.5 -149.5 +t-201.5 -59.5q-55 0 -107.5 12.5t-83.5 29.5z" /> + <glyph glyph-name="T" unicode="T" horiz-adv-x="548" +d="M197 0v546h-182v128h518v-128h-184v-546h-152z" /> + <glyph glyph-name="U" unicode="U" horiz-adv-x="682" +d="M66 674h152v-387q0 -87 31.5 -131.5t90.5 -44.5q124 0 124 176v387h152v-378q0 -153 -73 -230t-208 -77q-269 0 -269 309v376z" /> + <glyph glyph-name="V" unicode="V" horiz-adv-x="636" +d="M403 0h-178l-216 674h167l82 -285q43 -151 60 -241h3q24 114 61 238l86 288h162z" /> + <glyph glyph-name="W" unicode="W" horiz-adv-x="888" +d="M342 0h-167l-160 674h163l51 -277q16 -86 40 -237h2q12 81 44 239l57 275h162l54 -284q20 -104 36 -226h2q5 41 39 235l55 275h155l-174 -674h-165l-57 290q-23 119 -32 208h-2q-20 -128 -39 -209z" /> + <glyph glyph-name="X" unicode="X" horiz-adv-x="613" +d="M597 0h-176l-61 122q-12 24 -60 121h-2q-12 -33 -53 -121l-55 -122h-174l195 341l-188 333h175l59 -123q28 -58 51 -112h2q16 44 46 112l57 123h174l-190 -329z" /> + <glyph glyph-name="Y" unicode="Y" horiz-adv-x="603" +d="M374 0h-152v276l-213 398h175l68 -162q34 -78 52 -129h2q16 46 51 129l68 162h171l-222 -393v-281z" /> + <glyph glyph-name="Z" unicode="Z" horiz-adv-x="577" +d="M24 0v82l321 463v3h-292v126h489v-88l-314 -456v-4h319v-126h-523z" /> + <glyph glyph-name="bracketleft" unicode="[" horiz-adv-x="314" +d="M272 -112h-204v798h204v-84h-95v-630h95v-84z" /> + <glyph glyph-name="backslash" unicode="\" horiz-adv-x="330" +d="M314 -40h-101l-201 725h101z" /> + <glyph glyph-name="bracketright" unicode="]" horiz-adv-x="314" +d="M42 686h204v-798h-204v84h95v630h-95v84z" /> + <glyph glyph-name="asciicircum" unicode="^" horiz-adv-x="596" +d="M554 177h-109l-146 356h-3l-146 -356h-107l209 473h93z" /> + <glyph glyph-name="underscore" unicode="_" horiz-adv-x="500" +d="M0 -75h500v-50h-500v50z" /> + <glyph glyph-name="grave" unicode="`" +d="M4 702h140l86 -152h-104z" /> + <glyph glyph-name="a" unicode="a" horiz-adv-x="528" +d="M468 289v-171q0 -82 8 -118h-137l-9 49h-3q-49 -60 -140 -60q-71 0 -114.5 44.5t-43.5 105.5q0 93 76.5 140t210.5 47v6q0 63 -89 63q-74 0 -135 -36l-28 97q79 44 190 44q114 0 164 -58t50 -153zM321 178v53q-142 0 -142 -77q0 -28 16.5 -43t43.5 -15t49 16t30 40 +q3 12 3 26z" /> + <glyph glyph-name="b" unicode="b" horiz-adv-x="598" +d="M61 146v565h152v-280h2q48 69 148 69q89 0 145.5 -68t55.5 -179q0 -125 -66 -194.5t-157 -69.5q-101 0 -147 79h-2l-6 -68h-129q4 64 4 146zM213 280v-72q0 -15 3 -27q8 -31 32.5 -51.5t56.5 -20.5q49 0 77 36t28 102q0 60 -27 98t-78 38q-31 0 -56.5 -21t-32.5 -54 +q-3 -14 -3 -28z" /> + <glyph glyph-name="c" unicode="c" horiz-adv-x="451" +d="M410 125l18 -112q-48 -23 -136 -23q-119 0 -189 67.5t-70 182.5q0 111 74 185t206 74q65 0 116 -19l-24 -113q-34 15 -85 15q-59 0 -95.5 -38t-35.5 -98q0 -65 38 -101t96 -36q50 0 87 16z" /> + <glyph glyph-name="d" unicode="d" horiz-adv-x="596" +d="M383 711h152v-565q0 -80 4 -146h-135l-6 71h-3q-22 -39 -63 -60.5t-90 -21.5q-89 0 -149 69.5t-60 181.5q-1 119 63 189.5t156 70.5t129 -55h2v266zM383 217v64q0 19 -2 28q-7 32 -31 53t-58 21q-50 0 -77.5 -39t-27.5 -100t28.5 -97.5t75.5 -36.5q33 0 57.5 20.5 +t31.5 52.5q3 15 3 34z" /> + <glyph glyph-name="e" unicode="e" horiz-adv-x="528" +d="M493 196h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-74 -31 -177 -31q-123 0 -192 66.5t-69 182.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68z" /> + <glyph glyph-name="f" unicode="f" horiz-adv-x="341" +d="M231 0h-152v377h-65v112h65v19q0 107 61 164q53 49 136 49q38 0 80 -10l-6 -117q-23 7 -49 7q-36 0 -53.5 -24t-17.5 -63v-25h98v-112h-97v-377z" /> + <glyph glyph-name="g" unicode="g" horiz-adv-x="585" +d="M524 343v-272q0 -154 -75 -220q-69 -60 -198 -60q-108 0 -176 37l30 116q64 -37 142 -37q57 0 92 32t35 97v31h-2q-46 -63 -132 -63q-91 0 -149 66.5t-58 171.5q0 116 64.5 187t157.5 71q91 0 134 -70h2l5 59h132q-4 -64 -4 -146zM372 218v72q0 14 -3 28q-8 31 -29.5 49 +t-52.5 18q-43 0 -71.5 -37t-28.5 -102q0 -57 26.5 -93.5t72.5 -36.5q29 0 51 17t30 44q5 15 5 41z" /> + <glyph glyph-name="h" unicode="h" horiz-adv-x="586" +d="M61 0v711h152v-281h2q24 33 60 51q36 19 79 19q77 0 124 -54.5t47 -160.5v-285h-152v269q0 108 -79 108q-55 0 -76 -54q-5 -11 -5 -33v-290h-152z" /> + <glyph glyph-name="i" unicode="i" horiz-adv-x="274" +d="M213 0h-152v489h152v-489zM137 549h-1q-35 0 -57 22t-22 54q0 33 22.5 54.5t58.5 21.5t57.5 -21.5t22.5 -54.5q0 -32 -22 -54t-59 -22z" /> + <glyph glyph-name="j" unicode="j" horiz-adv-x="291" +d="M-24 -215l-15 119q64 5 90 32q30 31 30 159v394h152v-430q0 -151 -69 -214q-66 -60 -188 -60zM156 549h-1q-35 0 -57 22t-22 54q0 33 22.5 54.5t58.5 21.5t57.5 -21.5t22.5 -54.5q0 -32 -22 -54t-59 -22z" /> + <glyph glyph-name="k" unicode="k" horiz-adv-x="542" +d="M213 711v-428h2q16 30 35 59l99 147h183l-175 -198l200 -291h-187l-119 201l-38 -48v-153h-152v711h152z" /> + <glyph glyph-name="l" unicode="l" horiz-adv-x="275" +d="M61 0v711h152v-711h-152z" /> + <glyph glyph-name="m" unicode="m" horiz-adv-x="860" +d="M61 0v333q0 68 -4 156h129l6 -67h3q51 78 148 78q47 0 82.5 -22.5t51.5 -61.5h2q29 40 64 60q43 24 93 24q74 0 119.5 -53.5t45.5 -158.5v-288h-148v265q0 112 -72 112q-51 0 -71 -53q-5 -18 -5 -38v-286h-148v274q0 103 -71 103q-27 0 -45 -16t-26 -38q-6 -14 -6 -39 +v-284h-148z" /> + <glyph glyph-name="n" unicode="n" horiz-adv-x="586" +d="M61 0v333q0 68 -4 156h132l7 -68h3q19 31 57.5 55t93.5 24q79 0 127 -53.5t48 -157.5v-289h-152v271q0 106 -77 106q-56 0 -78 -57q-5 -12 -5 -38v-282h-152z" /> + <glyph glyph-name="o" unicode="o" horiz-adv-x="577" +d="M287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41z" /> + <glyph glyph-name="p" unicode="p" horiz-adv-x="598" +d="M61 -198v523q0 72 -4 164h132l7 -68h2q56 79 163 79q84 0 143.5 -68t59.5 -181q0 -125 -66 -193.5t-156 -68.5q-88 0 -127 56h-2v-243h-152zM213 277v-67q0 -17 3 -32q8 -31 32.5 -51.5t56.5 -20.5q49 0 77 37.5t28 100.5q0 61 -27 99t-76 38q-32 0 -58 -21.5t-33 -55.5 +q-3 -12 -3 -27z" /> + <glyph glyph-name="q" unicode="q" horiz-adv-x="595" +d="M383 -198v260h-2q-48 -73 -146 -73q-83 0 -142.5 68.5t-59.5 180.5q0 123 65 192.5t151 69.5q95 0 137 -68l2 -1l4 58h146q-3 -144 -3 -147v-540h-152zM383 211v73q0 14 -3 24q-6 31 -30 52t-58 21q-50 0 -77.5 -38t-27.5 -99q0 -62 28 -98.5t76 -36.5q32 0 56 19.5 +t32 49.5q4 13 4 33z" /> + <glyph glyph-name="r" unicode="r" horiz-adv-x="380" +d="M61 0v328q0 105 -4 161h130l6 -91h4q18 50 55 76t77 26q15 0 32 -3v-143q-24 4 -41 4q-42 0 -69 -20.5t-35 -56.5q-3 -15 -3 -34v-247h-152z" /> + <glyph glyph-name="s" unicode="s" horiz-adv-x="434" +d="M33 25l27 108q23 -14 61 -25t70 -11q65 0 65 40q0 19 -15 31t-56 25q-142 47 -140 146q0 70 55 115.5t144 45.5q79 0 137 -29l-26 -104q-54 27 -106 27q-58 0 -58 -39q0 -17 17 -29t62 -27q69 -24 100 -60t32 -90q0 -72 -54.5 -115.5t-156.5 -43.5q-93 0 -158 35z" /> + <glyph glyph-name="t" unicode="t" horiz-adv-x="367" +d="M82 581l149 41v-133h109v-112h-109v-177q0 -45 13.5 -65.5t46.5 -20.5q26 0 45 4l1 -115q-35 -13 -98 -13q-73 0 -115 42q-42 43 -42 145v200h-65v112h65v92z" /> + <glyph glyph-name="u" unicode="u" horiz-adv-x="583" +d="M522 489v-332q0 -75 4 -157h-132l-7 69h-3q-51 -80 -153 -80q-79 0 -125.5 52.5t-46.5 160.5v287h152v-263q0 -114 77 -114q29 0 48.5 16t27.5 37q6 13 6 33v291h152z" /> + <glyph glyph-name="v" unicode="v" horiz-adv-x="530" +d="M9 489h165l66 -227q12 -41 28 -119h3q13 67 27 119l63 227h160l-182 -489h-152z" /> + <glyph glyph-name="w" unicode="w" horiz-adv-x="759" +d="M11 489h155l40 -201q20 -112 27 -160h3q4 22 35 159l52 202h120l49 -195q26 -104 36 -166h2q10 78 29 167l41 194h149l-150 -489h-142l-46 171q-18 65 -32 153h-2q-12 -80 -31 -152l-49 -172h-143z" /> + <glyph glyph-name="x" unicode="x" horiz-adv-x="519" +d="M7 489h170l48 -82l40 -73h2l38 76l43 79h165l-161 -233l163 -256h-172l-49 88q-23 39 -38 75h-3q-4 -9 -37 -75l-46 -88h-167l166 250z" /> + <glyph glyph-name="y" unicode="y" horiz-adv-x="523" +d="M6 489h169l73 -241q16 -55 24 -91h3q4 16 12.5 51t9.5 41l60 240h163l-114 -322q-50 -140 -89 -211t-83 -110q-66 -59 -147 -67l-32 128q32 7 66 26q39 21 63 61q8 13 8 22q0 11 -6 25z" /> + <glyph glyph-name="z" unicode="z" horiz-adv-x="469" +d="M22 0v88l154 192q49 56 78 86v2h-215v121h400v-92l-147 -185q-64 -74 -80 -89v-2h235v-121h-425z" /> + <glyph glyph-name="braceleft" unicode="{" horiz-adv-x="314" +d="M30 249v76q46 2 61 21t15 48q0 10 -5 78q-6 54 -6 79q0 135 152 135h35v-85h-18q-61 -1 -61 -71q0 -22 5 -57q5 -50 5 -69q1 -54 -20 -80t-65 -36v-2q44 -9 65 -35t20 -81q0 -18 -5 -70q-5 -33 -5 -56q0 -71 61 -72h18v-84h-36q-151 0 -151 136q0 25 6 79q5 68 5 78 +q0 65 -76 68z" /> + <glyph glyph-name="bar" unicode="|" horiz-adv-x="283" +d="M88 750h106v-1000h-106v1000z" /> + <glyph glyph-name="braceright" unicode="}" horiz-adv-x="314" +d="M284 325v-76q-76 -3 -76 -68q0 -24 6 -78q5 -68 5 -79q0 -136 -151 -136h-36v84h18q61 1 61 72q0 23 -5 56q-5 53 -5 70q-1 55 20 81t65 35v2q-44 10 -65 36t-20 80q0 19 5 69q5 35 5 57q0 70 -61 71h-18v85h35q152 0 152 -135q0 -11 -5 -79q-6 -54 -6 -78q0 -19 4 -31.5 +t22 -24.5t50 -13z" /> + <glyph glyph-name="asciitilde" unicode="~" horiz-adv-x="596" +d="M138 193h-95q-1 95 36.5 140.5t102.5 45.5q34 0 63.5 -10.5t76.5 -37.5q71 -39 96 -39q37 0 40 81h95q4 -100 -33 -144t-100 -44q-56 0 -140 48q-72 41 -95 41q-42 0 -47 -81z" /> + <glyph glyph-name="exclamdown" unicode="&#xa1;" horiz-adv-x="268" +d="M213 -191h-158l22 451h114zM135 493h1q39 0 63.5 -25.5t24.5 -65.5q-1 -40 -25 -65.5t-64 -25.5t-65 25.5t-25 65.5t25 65.5t65 25.5z" /> + <glyph glyph-name="cent" unicode="&#xa2;" horiz-adv-x="555" +d="M377 -11h-98v98q-92 13 -149 76q-55 64 -55 165q0 93 54 162t150 87v96h98v-91q50 -2 95 -20l-24 -112q-34 18 -89 18q-59 0 -94 -37t-35 -98q0 -64 37 -99t93 -35q52 0 99 18l18 -110q-40 -19 -100 -23v-95z" /> + <glyph glyph-name="sterling" unicode="&#xa3;" horiz-adv-x="555" +d="M507 0h-456v81q44 18 78 58.5t34 88.5q0 27 -3 40h-98v104h80q-8 40 -8 81q0 94 62.5 151t163.5 57q73 0 117 -24l-24 -115q-33 18 -85 18q-93 0 -93 -94q0 -29 9 -74h138v-104h-124q0 -41 -9 -71q-15 -41 -49 -71v-2h267v-124z" /> + <glyph glyph-name="currency" unicode="&#xa4;" horiz-adv-x="555" +d="M277 550h1q69 0 116 -36l76 84l67 -68l-87 -78q32 -55 32 -116q0 -71 -35 -120l85 -81l-66 -67l-73 88q-48 -40 -117 -40q-72 0 -116 38l-72 -86l-65 67l83 79q-36 50 -36 119q0 65 35 119l-87 77l67 69l77 -85q46 37 115 37zM276 448h-1q-39 0 -65 -31.5t-26 -82.5 +q0 -55 28.5 -85.5t63.5 -30.5q37 0 64.5 30t27.5 87q0 49 -26 81t-66 32z" /> + <glyph glyph-name="yen" unicode="&#xa5;" horiz-adv-x="555" +d="M344 0h-143v160h-156v71h156v64h-156v71h120l-163 284h163l70 -160q9 -19 42 -109h2q1 3 17 45t26 65l71 159h160l-171 -284h119v-71h-157v-64h157v-71h-157v-160z" /> + <glyph glyph-name="brokenbar" unicode="&#xa6;" horiz-adv-x="283" +d="M88 174h106v-350h-106v350zM88 674h106v-350h-106v350z" /> + <glyph glyph-name="section" unicode="&#xa7;" horiz-adv-x="561" +d="M163 343v-1q0 -47 87 -77q16 -6 43.5 -15t45.5 -16t28 -12q30 18 30 52q0 45 -69 72q-14 5 -43 15.5t-51 19t-35 14.5q-36 -19 -36 -52zM464 654l-24 -92q-60 28 -132 28q-43 0 -66 -13t-23 -35t25 -37.5t82 -32.5q94 -29 142 -66.5t48 -108.5q0 -75 -72 -121 +q44 -35 44 -93q0 -57 -37.5 -95t-85 -51.5t-99.5 -13.5q-117 0 -187 44l29 92q72 -41 152 -41q41 0 65.5 13t24.5 38q0 24 -23.5 40t-82.5 35q-45 14 -76.5 27t-61.5 33t-45.5 48t-15.5 64q0 35 21.5 69t61.5 53q-17 13 -28.5 38.5t-11.5 52.5q0 73 61.5 114t156.5 41 +q91 0 158 -30z" /> + <glyph glyph-name="dieresis" unicode="&#xa8;" +d="M46 557h-1q-30 0 -50.5 21t-20.5 50q0 30 21 50t51 20q29 0 48.5 -20t19.5 -50t-19.5 -50.5t-48.5 -20.5zM256 557h-2q-29 0 -49 21t-20 50q0 30 20 50t51 20q29 0 49 -20t20 -50t-19.5 -50.5t-49.5 -20.5z" /> + <glyph glyph-name="copyright" unicode="&#xa9;" horiz-adv-x="677" +d="M340 648h1q127 0 215.5 -90t88.5 -218q0 -129 -89 -219.5t-216 -90.5q-128 0 -218 90.5t-90 219.5q0 128 90 218t218 90zM339 591h-1q-100 0 -170 -73.5t-70 -178.5q0 -106 70 -179t171 -73q100 -1 170 72.5t70 179.5q0 105 -70 178.5t-170 73.5zM474 492l-15 -53 +q-38 22 -95 22q-58 0 -91 -33t-33 -91q0 -55 34 -90t89 -35q62 0 100 24l15 -51q-49 -32 -124 -32q-85 0 -134.5 51t-49.5 130q0 83 57 134.5t137 51.5q35 0 67.5 -8.5t42.5 -19.5z" /> + <glyph glyph-name="ordfeminine" unicode="&#xaa;" horiz-adv-x="378" +d="M341 266h-93l-7 33h-2q-41 -39 -100 -38q-48 0 -77.5 28t-29.5 70q0 57 53 86.5t146 29.5v7q0 4 -2.5 9.5t-8 12.5t-19 11.5t-32.5 4.5q-53 0 -93 -26l-20 65q55 32 133 32q76 0 111.5 -39.5t35.5 -100.5v-107q0 -46 5 -78zM234 381v35q-43 1 -71 -11t-28 -37 +q0 -17 12.5 -28t31.5 -11q16 0 30.5 8.5t19.5 21.5q5 10 5 22z" /> + <glyph glyph-name="guillemotleft" unicode="&#xab;" horiz-adv-x="465" +d="M248 443l-120 -191l120 -190h-106l-116 190l116 191h106zM442 443l-120 -191l120 -190h-106l-116 190l116 191h106z" /> + <glyph glyph-name="logicalnot" unicode="&#xac;" horiz-adv-x="596" +d="M40 422h516v-316h-97v223h-419v93z" /> + <glyph glyph-name="registered" unicode="&#xae;" horiz-adv-x="459" +d="M208 489v-57h-50v157q33 6 71 6q45 0 64 -13q17 -10 17 -34q0 -26 -36 -36v-2q25 -7 32 -40q7 -31 11 -38h-54q-4 5 -12 34q-4 23 -27 23h-16zM209 560v-38h15q30 0 30 19q0 20 -28 20q-3 0 -9 -0.5t-8 -0.5zM230 685h1q74 0 125 -50t51 -122t-51 -122.5t-126 -50.5 +q-74 0 -126 50.5t-52 122.5q0 71 52 121.5t126 50.5zM229 642h-1q-52 0 -87.5 -38t-35.5 -92t36 -91.5t89 -37.5q53 -1 89 37t36 93q0 54 -36 91.5t-90 37.5z" /> + <glyph glyph-name="macron" unicode="&#xaf;" +d="M26 666h250v-84h-250v84z" /> + <glyph glyph-name="macron" unicode="&#x2c9;" +d="M26 666h250v-84h-250v84z" /> + <glyph glyph-name="degree" unicode="&#xb0;" horiz-adv-x="356" +d="M179 685h1q66 0 108.5 -43t42.5 -103q0 -63 -45 -105.5t-108 -42.5q-65 0 -108 42t-43 103q-1 62 43.5 105.5t108.5 43.5zM179 615h-1q-31 0 -51 -23t-20 -55t20.5 -54t51.5 -22t51.5 22t20.5 55q0 31 -19.5 54t-52.5 23z" /> + <glyph glyph-name="plusminus" unicode="&#xb1;" horiz-adv-x="596" +d="M249 579h98v-173h209v-93h-209v-177h-98v177h-209v93h209v173zM40 93h516v-93h-516v93z" /> + <glyph glyph-name="twosuperior" unicode="&#xb2;" horiz-adv-x="352" +d="M15 443v57l62 55q80 72 97 95q19 25 19 49q0 22 -15.5 35t-43.5 13q-45 0 -86 -28l-30 76q59 43 146 43q72 0 112 -34t40 -87q0 -25 -8.5 -48t-27.5 -44.5t-35 -35.5t-44 -37l-24 -20v-2h146v-87h-308z" /> + <glyph glyph-name="threesuperior" unicode="&#xb3;" horiz-adv-x="347" +d="M46 733l-21 73q55 32 140 32q69 0 106.5 -28t37.5 -71q0 -63 -82 -89v-2q42 -4 69.5 -29t27.5 -62q0 -53 -49 -86t-131 -33q-84 0 -135 28l23 78q47 -26 98 -26q31 0 51 13t20 32q0 24 -25 37t-61 13h-30v68h28q30 0 53.5 10t23.5 31q0 36 -53 36q-46 0 -91 -25z" /> + <glyph glyph-name="acute" unicode="&#xb4;" +d="M162 702h140l-122 -152h-104z" /> + <glyph glyph-name="mu" unicode="&#xb5;" horiz-adv-x="585" +d="M391 67h-3q-14 -30 -45.5 -52t-75.5 -22q-43 0 -69 29v-42q0 -126 11 -178h-134q-14 34 -14 177v510h152v-273q0 -105 74 -105q27 0 49 16.5t30 37.5q5 11 5 33v291h152v-330q0 -31 9.5 -43t31.5 -13l-8 -105q-18 -9 -55 -9q-87 0 -110 78z" /> + <glyph glyph-name="paragraph" unicode="&#xb6;" horiz-adv-x="542" +d="M302 -47h-96v311h-6q-32 0 -69 19t-67.5 64t-31.5 104q-1 44 12 81t43.5 71.5t92 54.5t147.5 20q94 0 143 -11v-714h-96v631h-72v-631z" /> + <glyph glyph-name="periodcentered" unicode="&#xb7;" horiz-adv-x="260" +d="M130 167h-1q-38 0 -63 26t-25 66q0 41 25 67t65 26q39 0 63.5 -26t25.5 -67q0 -40 -25 -66t-65 -26z" /> + <glyph glyph-name="periodcentered" unicode="&#x2219;" horiz-adv-x="260" +d="M130 167h-1q-38 0 -63 26t-25 66q0 41 25 67t65 26q39 0 63.5 -26t25.5 -67q0 -40 -25 -66t-65 -26z" /> + <glyph glyph-name="cedilla" unicode="&#xb8;" +d="M121 4h82l-27 -48q30 -4 51 -24t21 -49q0 -45 -34.5 -66t-87.5 -21q-47 0 -80 20l20 56q27 -16 55 -16q35 0 35 26q0 30 -78 36z" /> + <glyph glyph-name="onesuperior" unicode="&#xb9;" +d="M235 443h-117v295h-1l-80 -35l-15 82l111 48h102v-390z" /> + <glyph glyph-name="ordmasculine" unicode="&#xba;" horiz-adv-x="386" +d="M194 591h1q75 0 121 -45.5t46 -116.5q0 -81 -50 -124.5t-121 -43.5t-119 44.5t-48 117.5q0 75 47.5 121.5t122.5 46.5zM192 517h-1q-30 0 -45 -28.5t-15 -64.5q0 -37 17 -63t45 -26q29 0 45 25.5t16 66.5q0 35 -16.5 62.5t-45.5 27.5z" /> + <glyph glyph-name="guillemotright" unicode="&#xbb;" horiz-adv-x="465" +d="M142 252l-119 191h104l117 -191l-116 -190h-105zM334 252l-119 191h104l117 -191l-117 -190h-104z" /> + <glyph glyph-name="onequarter" unicode="&#xbc;" horiz-adv-x="831" +d="M249 266h-117v295h-1l-80 -35l-15 82l111 48h102v-390zM256 -11h-83l369 672h83zM743 0h-108v90h-196v63l171 241h133v-230h53v-74h-53v-90zM635 164v74q0 15 2 41t2 33h-2q-30 -56 -36 -65l-56 -82l2 -1h88z" /> + <glyph glyph-name="onehalf" unicode="&#xbd;" horiz-adv-x="831" +d="M237 266h-117v295h-1l-80 -35l-15 82l111 48h102v-390zM233 -11h-83l368 672h83zM485 0v57l62 55q80 72 97 95q19 25 19 49q0 22 -15.5 35t-43.5 13q-45 0 -86 -28l-30 76q59 43 146 43q72 0 112 -34t40 -87q0 -25 -8.5 -48t-27.5 -44.5t-35 -35.5t-44 -37l-24 -20v-2 +h146v-87h-308z" /> + <glyph glyph-name="threequarters" unicode="&#xbe;" horiz-adv-x="831" +d="M64 556l-21 73q55 32 140 32q69 0 106.5 -28t37.5 -71q0 -63 -82 -89v-2q42 -4 69.5 -29t27.5 -62q0 -53 -49 -86t-131 -33q-84 0 -135 28l23 78q43 -26 98 -26q31 0 51 13t20 32q0 24 -25 37t-61 13h-30v68h28q30 0 53.5 10t23.5 31q0 36 -53 36q-46 0 -91 -25zM288 -11 +h-82l367 672h83zM752 0h-108v90h-196v63l171 241h133v-230h53v-74h-53v-90zM644 164v74q0 15 2 41t2 33h-2q-30 -56 -36 -65l-56 -82l2 -1h88z" /> + <glyph glyph-name="questiondown" unicode="&#xbf;" horiz-adv-x="445" +d="M248 493h1q39 0 63.5 -25.5t24.5 -65.5t-24.5 -65.5t-64.5 -25.5t-64.5 25.5t-24.5 65.5t24.5 65.5t64.5 25.5zM179 264h132l2 -26q3 -83 -59 -156q-58 -69 -58 -105q0 -26 18 -42t54 -17q57 0 100 30l33 -109q-70 -41 -167 -41q-93 0 -142.5 44.5t-49.5 110.5 +q0 34 14 66.5t26.5 49t38.5 45.5q5 5 7 8q52 58 51 124v18z" /> + <glyph glyph-name="Agrave" unicode="&#xc0;" horiz-adv-x="656" +d="M416 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM244 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130zM152 834h160l84 -122h-122z" /> + <glyph glyph-name="Aacute" unicode="&#xc1;" horiz-adv-x="656" +d="M416 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM244 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130zM337 833h160l-122 -123h-122z" /> + <glyph glyph-name="Acircumflex" unicode="&#xc2;" horiz-adv-x="656" +d="M416 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM244 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130zM271 833h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="Atilde" unicode="&#xc3;" horiz-adv-x="656" +d="M416 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM244 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130zM261 715h-70q-1 62 19.5 94.5t57.5 32.5q31 0 64 -20q32 -19 44 -19q13 0 18.5 9t8.5 34h68q3 -125 -78 -125q-31 0 -65 19 +q-32 18 -43 18q-21 0 -24 -43z" /> + <glyph glyph-name="Adieresis" unicode="&#xc4;" horiz-adv-x="656" +d="M416 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM244 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130zM228 712h-1q-28 0 -48 20t-20 48q0 29 20 49t49 20q28 0 47 -19.5t19 -49.5q0 -28 -19 -48t-47 -20zM435 712h-1q-29 0 -48 20t-19 48 +q0 29 19.5 49t48.5 20t48 -19.5t19 -49.5q0 -28 -19 -48t-48 -20z" /> + <glyph glyph-name="Aring" unicode="&#xc5;" horiz-adv-x="656" +d="M416 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM244 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130zM325 897h1q54 0 83.5 -27.5t29.5 -70.5q0 -42 -31 -69.5t-83 -27.5q-53 0 -84 27.5t-31 68.5q0 42 30.5 70.5t84.5 28.5zM324 846h-1 +q-20 0 -31.5 -14t-11.5 -34q0 -18 12 -31.5t32 -13.5t32 13t12 33q0 19 -12 33t-32 14z" /> + <glyph glyph-name="AE" unicode="&#xc6;" horiz-adv-x="868" +d="M160 0h-157l287 674h513v-125h-276l17 -143h255v-124h-235l21 -157h255v-125h-386l-24 184h-197zM279 306h134l-20 163q-10 80 -12 98h-3q-18 -55 -35 -99z" /> + <glyph glyph-name="Ccedilla" unicode="&#xc7;" horiz-adv-x="597" +d="M538 138l22 -120q-58 -27 -158 -28l-19 -34q31 -7 52 -28t21 -54q0 -48 -35 -70t-84 -22q-52 0 -86 19l20 62q26 -14 56 -14q36 0 36 25q0 29 -79 37l39 83q-139 18 -213.5 108t-74.5 225q0 167 104.5 262t263.5 95q107 0 165 -29l-31 -121q-58 25 -127 25 +q-95 0 -155 -57.5t-60 -165.5q0 -102 57 -161t158 -59q76 0 128 22z" /> + <glyph glyph-name="Egrave" unicode="&#xc8;" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248zM111 834h160l84 -122h-122z" /> + <glyph glyph-name="Eacute" unicode="&#xc9;" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248zM289 833h160l-122 -123h-122z" /> + <glyph glyph-name="Ecircumflex" unicode="&#xca;" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248zM222 833h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="Edieresis" unicode="&#xcb;" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248zM169 713h-1q-28 0 -48 20t-20 48q0 29 20 49t49 20q28 0 47 -19.5t19 -49.5q0 -28 -19 -48t-47 -20zM376 713h-1q-29 0 -48 20t-19 48q0 29 19.5 49t48.5 20t48 -19.5t19 -49.5q0 -28 -19 -48t-48 -20 +z" /> + <glyph glyph-name="Igrave" unicode="&#xcc;" horiz-adv-x="285" +d="M67 674h152v-674h-152v674zM-29 834h160l84 -122h-122z" /> + <glyph glyph-name="Iacute" unicode="&#xcd;" horiz-adv-x="285" +d="M67 674h152v-674h-152v674zM152 833h160l-122 -123h-122z" /> + <glyph glyph-name="Icircumflex" unicode="&#xce;" horiz-adv-x="285" +d="M67 674h152v-674h-152v674zM86 833h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="Idieresis" unicode="&#xcf;" horiz-adv-x="285" +d="M67 674h152v-674h-152v674zM40 713h-1q-28 0 -48 20t-20 48q0 29 20 49t49 20q28 0 47 -19.5t19 -49.5q0 -28 -19 -48t-47 -20zM247 713h-1q-29 0 -48 20t-19 48q0 29 19.5 49t48.5 20t48 -19.5t19 -49.5q0 -28 -19 -48t-48 -20z" /> + <glyph glyph-name="Eth" unicode="&#xd0;" horiz-adv-x="704" +d="M3 284v119h71v264q84 15 205 15q185 0 276 -70q114 -85 114 -258q0 -180 -111 -275q-104 -88 -311 -88q-90 0 -173 9v284h-71zM360 403v-119h-134v-171q13 -3 53 -3q108 0 168.5 59.5t60.5 179.5q0 108 -56 162t-157 54q-43 0 -69 -6v-156h134z" /> + <glyph glyph-name="Ntilde" unicode="&#xd1;" horiz-adv-x="690" +d="M206 0h-140v674h178l140 -247q57 -101 110 -231h2q-12 119 -12 282v196h140v-674h-160l-144 260q-79 144 -117 238h-4q7 -126 7 -295v-203zM277 715h-70q-1 62 19.5 94.5t57.5 32.5q31 0 64 -20q32 -19 44 -19q13 0 18.5 9t8.5 34h68q3 -125 -78 -125q-31 0 -65 19 +q-32 18 -43 18q-21 0 -24 -43z" /> + <glyph glyph-name="Ograve" unicode="&#xd2;" horiz-adv-x="717" +d="M353 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM359 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64zM188 835h160l84 -122h-122z" /> + <glyph glyph-name="Oacute" unicode="&#xd3;" horiz-adv-x="717" +d="M353 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM359 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64zM373 834h160l-122 -123h-122z" /> + <glyph glyph-name="Ocircumflex" unicode="&#xd4;" horiz-adv-x="717" +d="M353 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM359 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64zM302 834h114l101 -123h-107l-50 62h-2 +l-50 -62h-106z" /> + <glyph glyph-name="Otilde" unicode="&#xd5;" horiz-adv-x="717" +d="M353 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM359 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64zM289 715h-70q-1 62 19.5 94.5t57.5 32.5 +q31 0 64 -20q32 -19 44 -19q13 0 18.5 9t8.5 34h68q3 -125 -78 -125q-31 0 -65 19q-32 18 -43 18q-21 0 -24 -43z" /> + <glyph glyph-name="Odieresis" unicode="&#xd6;" horiz-adv-x="717" +d="M353 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM359 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64zM256 713h-1q-28 0 -48 20t-20 48q0 29 20 49 +t49 20q28 0 47 -19.5t19 -49.5q0 -28 -19 -48t-47 -20zM463 713h-1q-29 0 -48 20t-19 48q0 29 19.5 49t48.5 20t48 -19.5t19 -49.5q0 -28 -19 -48t-48 -20z" /> + <glyph glyph-name="multiply" unicode="&#xd7;" horiz-adv-x="596" +d="M40 460l65 66l193 -197l193 197l65 -66l-192 -197l192 -196l-66 -67l-192 196l-192 -196l-66 67l192 196z" /> + <glyph glyph-name="Oslash" unicode="&#xd8;" horiz-adv-x="717" +d="M154 -66l-82 64l56 85q-93 98 -93 253q0 150 90 249.5t235 99.5q84 0 149 -35l55 81l86 -58l-56 -84q88 -94 88 -248q0 -162 -90 -257t-233 -95q-79 0 -145 34zM214 214l224 327q-34 25 -79 25q-80 0 -126 -63.5t-46 -165.5q0 -65 26 -124zM506 453l-221 -321 +q29 -24 74 -24q79 0 125 63.5t46 166.5q0 61 -22 115h-2z" /> + <glyph glyph-name="Ugrave" unicode="&#xd9;" horiz-adv-x="682" +d="M66 674h152v-387q0 -87 31.5 -131.5t90.5 -44.5q124 0 124 176v387h152v-378q0 -153 -73 -230t-208 -77q-269 0 -269 309v376zM174 834h160l84 -122h-122z" /> + <glyph glyph-name="Uacute" unicode="&#xda;" horiz-adv-x="682" +d="M66 674h152v-387q0 -87 31.5 -131.5t90.5 -44.5q124 0 124 176v387h152v-378q0 -153 -73 -230t-208 -77q-269 0 -269 309v376zM348 833h160l-122 -123h-122z" /> + <glyph glyph-name="Ucircumflex" unicode="&#xdb;" horiz-adv-x="682" +d="M66 674h152v-387q0 -87 31.5 -131.5t90.5 -44.5q124 0 124 176v387h152v-378q0 -153 -73 -230t-208 -77q-269 0 -269 309v376zM295 833h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="Udieresis" unicode="&#xdc;" horiz-adv-x="682" +d="M66 674h152v-387q0 -87 31.5 -131.5t90.5 -44.5q124 0 124 176v387h152v-378q0 -153 -73 -230t-208 -77q-269 0 -269 309v376zM244 713h-1q-28 0 -48 20t-20 48q0 29 20 49t49 20q28 0 47 -19.5t19 -49.5q0 -28 -19 -48t-47 -20zM451 713h-1q-29 0 -48 20t-19 48 +q0 29 19.5 49t48.5 20t48 -19.5t19 -49.5q0 -28 -19 -48t-48 -20z" /> + <glyph glyph-name="Yacute" unicode="&#xdd;" horiz-adv-x="603" +d="M374 0h-152v276l-213 398h175l68 -162q34 -78 52 -129h2q16 46 51 129l68 162h171l-222 -393v-281zM320 831h160l-122 -123h-122z" /> + <glyph glyph-name="Thorn" unicode="&#xde;" horiz-adv-x="580" +d="M66 0v674h150v-121q38 4 83 4q121 0 185 -54q65 -55 65 -146q0 -118 -73.5 -174t-190.5 -56q-34 0 -69 5v-132h-150zM216 436v-185q23 -6 63 -6q59 0 89.5 27.5t30.5 72.5q0 46 -30.5 71t-86.5 25q-46 0 -66 -5z" /> + <glyph glyph-name="germandbls" unicode="&#xdf;" horiz-adv-x="600" +d="M213 0h-152v431q0 156 77 227q66 63 180 63q93 0 154 -51t61 -134q0 -51 -23 -82q-58 -28 -58 -70q0 -30 35 -66q26 -28 37 -41.5t26 -47t15 -68.5q0 -78 -53.5 -125t-147.5 -47q-66 0 -107 16l19 112q28 -14 69 -14q31 0 49 14.5t18 36.5q0 30 -36 69q-25 25 -36.5 39 +t-26 43.5t-14.5 59.5q0 81 81 124q7 19 7 36q0 35 -21.5 57.5t-56.5 22.5q-96 0 -96 -161v-444z" /> + <glyph glyph-name="agrave" unicode="&#xe0;" horiz-adv-x="528" +d="M468 289v-171q0 -82 8 -118h-137l-9 49h-3q-49 -60 -140 -60q-71 0 -114.5 44.5t-43.5 105.5q0 93 76.5 140t210.5 47v6q0 63 -89 63q-74 0 -135 -36l-28 97q79 44 190 44q114 0 164 -58t50 -153zM321 178v53q-142 0 -142 -77q0 -28 16.5 -43t43.5 -15t49 16t30 40 +q3 12 3 26zM100 702h140l86 -152h-104z" /> + <glyph glyph-name="aacute" unicode="&#xe1;" horiz-adv-x="528" +d="M468 289v-171q0 -82 8 -118h-137l-9 49h-3q-49 -60 -140 -60q-71 0 -114.5 44.5t-43.5 105.5q0 93 76.5 140t210.5 47v6q0 63 -89 63q-74 0 -135 -36l-28 97q79 44 190 44q114 0 164 -58t50 -153zM321 178v53q-142 0 -142 -77q0 -28 16.5 -43t43.5 -15t49 16t30 40 +q3 12 3 26zM282 702h140l-122 -152h-104z" /> + <glyph glyph-name="acircumflex" unicode="&#xe2;" horiz-adv-x="528" +d="M468 289v-171q0 -82 8 -118h-137l-9 49h-3q-49 -60 -140 -60q-71 0 -114.5 44.5t-43.5 105.5q0 93 76.5 140t210.5 47v6q0 63 -89 63q-74 0 -135 -36l-28 97q79 44 190 44q114 0 164 -58t50 -153zM321 178v53q-142 0 -142 -77q0 -28 16.5 -43t43.5 -15t49 16t30 40 +q3 12 3 26zM210 702h102l99 -152h-99l-50 87h-2l-51 -87h-99z" /> + <glyph glyph-name="atilde" unicode="&#xe3;" horiz-adv-x="528" +d="M468 289v-171q0 -82 8 -118h-137l-9 49h-3q-49 -60 -140 -60q-71 0 -114.5 44.5t-43.5 105.5q0 93 76.5 140t210.5 47v6q0 63 -89 63q-74 0 -135 -36l-28 97q79 44 190 44q114 0 164 -58t50 -153zM321 178v53q-142 0 -142 -77q0 -28 16.5 -43t43.5 -15t49 16t30 40 +q3 12 3 26zM185 558h-72q-2 62 20.5 96.5t61.5 34.5q25 0 65 -20q34 -19 42 -19q12 0 18 9t8 35h70q4 -128 -82 -128q-25 0 -69 21q-29 16 -38 16q-21 0 -24 -45z" /> + <glyph glyph-name="adieresis" unicode="&#xe4;" horiz-adv-x="528" +d="M468 289v-171q0 -82 8 -118h-137l-9 49h-3q-49 -60 -140 -60q-71 0 -114.5 44.5t-43.5 105.5q0 93 76.5 140t210.5 47v6q0 63 -89 63q-74 0 -135 -36l-28 97q79 44 190 44q114 0 164 -58t50 -153zM321 178v53q-142 0 -142 -77q0 -28 16.5 -43t43.5 -15t49 16t30 40 +q3 12 3 26zM160 557h-1q-30 0 -50.5 21t-20.5 50q0 30 21 50t51 20q29 0 48.5 -20t19.5 -50t-19.5 -50.5t-48.5 -20.5zM370 557h-2q-29 0 -49 21t-20 50q0 30 20 50t51 20q29 0 49 -20t20 -50t-19.5 -50.5t-49.5 -20.5z" /> + <glyph glyph-name="aring" unicode="&#xe5;" horiz-adv-x="528" +d="M468 289v-171q0 -82 8 -118h-137l-9 49h-3q-49 -60 -140 -60q-71 0 -114.5 44.5t-43.5 105.5q0 93 76.5 140t210.5 47v6q0 63 -89 63q-74 0 -135 -36l-28 97q79 44 190 44q114 0 164 -58t50 -153zM321 178v53q-142 0 -142 -77q0 -28 16.5 -43t43.5 -15t49 16t30 40 +q3 12 3 26zM266 736h1q52 0 82 -28t30 -71t-31 -70.5t-82 -27.5q-53 0 -84.5 27.5t-31.5 69.5q0 44 30.5 72t85.5 28zM265 686h-1q-21 0 -32.5 -14.5t-11.5 -35.5q0 -18 12.5 -32.5t32.5 -14.5q21 0 33.5 14t12.5 34t-12.5 34.5t-33.5 14.5z" /> + <glyph glyph-name="ae" unicode="&#xe6;" horiz-adv-x="803" +d="M769 203h-309q1 -47 37.5 -74.5t94.5 -27.5q71 0 137 26l21 -101q-71 -37 -180 -37q-62 0 -112 23t-75 64h-3q-64 -87 -182 -87q-78 0 -123.5 44t-45.5 109q0 88 78 134.5t211 45.5v14q0 10 -6.5 22t-29.5 24.5t-58 12.5q-68 0 -130 -37l-30 96q83 46 173 46 +q115 0 161 -79h3q60 79 167 79q101 0 153 -72t52 -170q0 -7 -4 -55zM322 177v52q-144 2 -144 -76q0 -27 17.5 -42.5t44.5 -15.5q56 0 78 52q4 11 4 30zM459 306h174q1 33 -18 63.5t-65 30.5q-43 0 -66.5 -30.5t-24.5 -63.5z" /> + <glyph glyph-name="ccedilla" unicode="&#xe7;" horiz-adv-x="451" +d="M410 125l18 -112q-40 -20 -112 -23l-19 -34q32 -7 52.5 -27.5t20.5 -53.5q0 -48 -35 -70.5t-85 -22.5t-84 19l19 62q26 -14 56 -14q36 0 36 26q0 29 -79 37l40 83q-95 14 -150 79.5t-55 165.5q0 111 74 185t206 74q65 0 116 -19l-24 -113q-34 15 -85 15q-59 0 -95.5 -38 +t-35.5 -98q0 -65 38 -101t95 -36q51 0 88 16z" /> + <glyph glyph-name="egrave" unicode="&#xe8;" horiz-adv-x="528" +d="M493 196h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-74 -31 -177 -31q-123 0 -192 66.5t-69 182.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68zM120 702h140l86 -152h-104z +" /> + <glyph glyph-name="eacute" unicode="&#xe9;" horiz-adv-x="528" +d="M493 196h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-74 -31 -177 -31q-123 0 -192 66.5t-69 182.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68zM301 702h140l-122 -152h-104z +" /> + <glyph glyph-name="ecircumflex" unicode="&#xea;" horiz-adv-x="528" +d="M493 196h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-74 -31 -177 -31q-123 0 -192 66.5t-69 182.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68zM225 702h102l99 -152h-99 +l-50 87h-2l-51 -87h-99z" /> + <glyph glyph-name="edieresis" unicode="&#xeb;" horiz-adv-x="528" +d="M493 196h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-74 -31 -177 -31q-123 0 -192 66.5t-69 182.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68zM177 557h-1q-30 0 -50.5 21 +t-20.5 50q0 30 21 50t51 20q29 0 48.5 -20t19.5 -50t-19.5 -50.5t-48.5 -20.5zM387 557h-2q-29 0 -49 21t-20 50q0 30 20 50t51 20q29 0 49 -20t20 -50t-19.5 -50.5t-49.5 -20.5z" /> + <glyph glyph-name="igrave" unicode="&#xec;" horiz-adv-x="274" +d="M213 0h-152v489h152v-489zM-30 702h140l86 -152h-104z" /> + <glyph glyph-name="iacute" unicode="&#xed;" horiz-adv-x="274" +d="M213 0h-152v489h152v-489zM159 702h140l-122 -152h-104z" /> + <glyph glyph-name="icircumflex" unicode="&#xee;" horiz-adv-x="274" +d="M213 0h-152v489h152v-489zM87 702h102l99 -152h-99l-50 87h-2l-51 -87h-99z" /> + <glyph glyph-name="idieresis" unicode="&#xef;" horiz-adv-x="274" +d="M213 0h-152v489h152v-489zM33 557h-1q-30 0 -50.5 21t-20.5 50q0 30 21 50t51 20q29 0 48.5 -20t19.5 -50t-19.5 -50.5t-48.5 -20.5zM243 557h-2q-29 0 -49 21t-20 50q0 30 20 50t51 20q29 0 49 -20t20 -50t-19.5 -50.5t-49.5 -20.5z" /> + <glyph glyph-name="eth" unicode="&#xf0;" horiz-adv-x="574" +d="M287 98h1q46 0 71 39t25 105q0 75 -24 105q-26 33 -71 33q-51 0 -75 -43.5t-24 -98.5q0 -60 26 -100t71 -40zM107 478l-27 60l105 47q-34 22 -93 48l65 85q82 -29 158 -79l138 59l30 -58l-105 -46q78 -63 122 -151q41 -79 41 -186q0 -130 -74.5 -199t-180.5 -69 +q-109 0 -181 68t-72 180q0 104 67 169t165 67q40 2 71 -20l2 3q-38 51 -87 84z" /> + <glyph glyph-name="ntilde" unicode="&#xf1;" horiz-adv-x="586" +d="M61 0v333q0 68 -4 156h132l7 -68h3q19 31 57.5 55t93.5 24q79 0 127 -53.5t48 -157.5v-289h-152v271q0 106 -77 106q-56 0 -78 -57q-5 -12 -5 -38v-282h-152zM224 558h-72q-2 62 20.5 96.5t61.5 34.5q25 0 65 -20q34 -19 42 -19q12 0 18 9t8 35h70q4 -128 -82 -128 +q-25 0 -69 21q-29 16 -38 16q-21 0 -24 -45z" /> + <glyph glyph-name="ograve" unicode="&#xf2;" horiz-adv-x="577" +d="M287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41zM134 702h140l86 -152h-104z" /> + <glyph glyph-name="oacute" unicode="&#xf3;" horiz-adv-x="577" +d="M287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41zM308 702h140l-122 -152h-104z" /> + <glyph glyph-name="ocircumflex" unicode="&#xf4;" horiz-adv-x="577" +d="M287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41zM239 702h102l99 -152h-99l-50 87h-2 +l-51 -87h-99z" /> + <glyph glyph-name="otilde" unicode="&#xf5;" horiz-adv-x="577" +d="M287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41zM219 558h-72q-2 62 20.5 96.5 +t61.5 34.5q25 0 65 -20q34 -19 42 -19q12 0 18 9t8 35h70q4 -128 -82 -128q-25 0 -69 21q-29 16 -38 16q-21 0 -24 -45z" /> + <glyph glyph-name="odieresis" unicode="&#xf6;" horiz-adv-x="577" +d="M287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41zM185 557h-1q-30 0 -50.5 21t-20.5 50 +q0 30 21 50t51 20q29 0 48.5 -20t19.5 -50t-19.5 -50.5t-48.5 -20.5zM395 557h-2q-29 0 -49 21t-20 50q0 30 20 50t51 20q29 0 49 -20t20 -50t-19.5 -50.5t-49.5 -20.5z" /> + <glyph glyph-name="divide" unicode="&#xf7;" horiz-adv-x="596" +d="M298 368h-1q-32 0 -52 20.5t-20 53.5q0 34 20.5 54t52.5 20q33 0 52.5 -20t20.5 -54q0 -33 -20 -53.5t-53 -20.5zM556 220h-516v93h516v-93zM298 17h-1q-32 0 -52 20.5t-20 53.5t20.5 53.5t52.5 20.5q33 0 52.5 -20t20.5 -54q0 -33 -20 -53.5t-53 -20.5z" /> + <glyph glyph-name="oslash" unicode="&#xf8;" horiz-adv-x="577" +d="M288 500h1q64 0 118 -26l47 68l53 -36l-46 -67q82 -71 82 -193q0 -123 -75 -190t-179 -67q-67 0 -116 26l-49 -71l-50 40l44 65q-85 69 -85 194q0 115 70.5 186t184.5 71zM199 166l143 207q-23 18 -55 18q-55 0 -81.5 -44t-26.5 -103q0 -45 17 -78h3zM379 319l-142 -203 +q19 -18 51 -18q50 0 79.5 39.5t29.5 104.5q0 44 -16 76z" /> + <glyph glyph-name="ugrave" unicode="&#xf9;" horiz-adv-x="583" +d="M522 489v-332q0 -75 4 -157h-132l-7 69h-3q-51 -80 -153 -80q-79 0 -125.5 52.5t-46.5 160.5v287h152v-263q0 -114 77 -114q29 0 48.5 16t27.5 37q6 13 6 33v291h152zM132 702h140l86 -152h-104z" /> + <glyph glyph-name="uacute" unicode="&#xfa;" horiz-adv-x="583" +d="M522 489v-332q0 -75 4 -157h-132l-7 69h-3q-51 -80 -153 -80q-79 0 -125.5 52.5t-46.5 160.5v287h152v-263q0 -114 77 -114q29 0 48.5 16t27.5 37q6 13 6 33v291h152zM316 702h140l-122 -152h-104z" /> + <glyph glyph-name="ucircumflex" unicode="&#xfb;" horiz-adv-x="583" +d="M522 489v-332q0 -75 4 -157h-132l-7 69h-3q-51 -80 -153 -80q-79 0 -125.5 52.5t-46.5 160.5v287h152v-263q0 -114 77 -114q29 0 48.5 16t27.5 37q6 13 6 33v291h152zM242 702h102l99 -152h-99l-50 87h-2l-51 -87h-99z" /> + <glyph glyph-name="udieresis" unicode="&#xfc;" horiz-adv-x="583" +d="M522 489v-332q0 -75 4 -157h-132l-7 69h-3q-51 -80 -153 -80q-79 0 -125.5 52.5t-46.5 160.5v287h152v-263q0 -114 77 -114q29 0 48.5 16t27.5 37q6 13 6 33v291h152zM191 557h-1q-30 0 -50.5 21t-20.5 50q0 30 21 50t51 20q29 0 48.5 -20t19.5 -50t-19.5 -50.5 +t-48.5 -20.5zM401 557h-2q-29 0 -49 21t-20 50q0 30 20 50t51 20q29 0 49 -20t20 -50t-19.5 -50.5t-49.5 -20.5z" /> + <glyph glyph-name="yacute" unicode="&#xfd;" horiz-adv-x="523" +d="M6 489h169l73 -241q16 -55 24 -91h3q4 16 12.5 51t9.5 41l60 240h163l-114 -322q-50 -140 -89 -211t-83 -110q-66 -59 -147 -67l-32 128q32 7 66 26q39 21 63 61q8 13 8 22q0 11 -6 25zM298 702h140l-122 -152h-104z" /> + <glyph glyph-name="thorn" unicode="&#xfe;" horiz-adv-x="598" +d="M61 676h152v-247h2q48 71 146 71q83 2 143 -66.5t60 -184.5q0 -65 -20 -116.5t-52.5 -82t-70.5 -46t-77 -15.5q-86 0 -129 57h-2v-244h-152v874zM213 284v-84q0 -28 14 -47q25 -47 79 -47q47 0 75.5 38t28.5 103q0 58 -27 96t-73 38q-61 0 -87 -56q-10 -22 -10 -41z" /> + <glyph glyph-name="ydieresis" unicode="&#xff;" horiz-adv-x="523" +d="M6 489h169l73 -241q16 -55 24 -91h3q4 16 12.5 51t9.5 41l60 240h163l-114 -322q-50 -140 -89 -211t-83 -110q-66 -59 -147 -67l-32 128q32 7 66 26q39 21 63 61q8 13 8 22q0 11 -6 25zM170 557h-1q-30 0 -50.5 21t-20.5 50q0 30 21 50t51 20q29 0 48.5 -20t19.5 -50 +t-19.5 -50.5t-48.5 -20.5zM380 557h-2q-29 0 -49 21t-20 50q0 30 20 50t51 20q29 0 49 -20t20 -50t-19.5 -50.5t-49.5 -20.5z" /> + <glyph glyph-name="Amacron" unicode="&#x100;" horiz-adv-x="656" +d="M416 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM244 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130zM194 815h259v-81h-259v81z" /> + <glyph glyph-name="amacron" unicode="&#x101;" horiz-adv-x="528" +d="M468 289v-171q0 -82 8 -118h-137l-9 49h-3q-49 -60 -140 -60q-71 0 -114.5 44.5t-43.5 105.5q0 93 76.5 140t210.5 47v6q0 63 -89 63q-74 0 -135 -36l-28 97q79 44 190 44q114 0 164 -58t50 -153zM321 178v53q-142 0 -142 -77q0 -28 16.5 -43t43.5 -15t49 16t30 40 +q3 12 3 26zM140 666h250v-84h-250v84z" /> + <glyph glyph-name="Abreve" unicode="&#x102;" horiz-adv-x="656" +d="M416 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM244 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130zM185 834h81q6 -46 59 -46t63 46h78q-2 -58 -37 -92t-104 -34q-70 0 -104 34t-36 92z" /> + <glyph glyph-name="abreve" unicode="&#x103;" horiz-adv-x="528" +d="M468 289v-171q0 -82 8 -118h-137l-9 49h-3q-49 -60 -140 -60q-71 0 -114.5 44.5t-43.5 105.5q0 93 76.5 140t210.5 47v6q0 63 -89 63q-74 0 -135 -36l-28 97q79 44 190 44q114 0 164 -58t50 -153zM321 178v53q-142 0 -142 -77q0 -28 16.5 -43t43.5 -15t49 16t30 40 +q3 12 3 26zM125 692h79q10 -61 59 -61q29 0 44 17.5t17 43.5h79q-1 -65 -37 -103.5t-102 -38.5q-67 0 -102.5 39.5t-36.5 102.5z" /> + <glyph glyph-name="Aogonek" unicode="&#x104;" horiz-adv-x="656" +d="M423 674l209 -674l-81 -1q-25 -40 -25 -68q0 -25 15.5 -40.5t38.5 -15.5q21 0 44 7l21 -70q-40 -31 -102 -31q-53 0 -82.5 27t-29.5 79q0 50 37 114l-52 172h-193l-48 -173h-158l206 674h200zM245 287h149l-42 143q-5 15 -34 130h-2q-3 -13 -14 -60.5t-17 -69.5z" /> + <glyph glyph-name="aogonek" unicode="&#x105;" horiz-adv-x="528" +d="M468 289v-170q0 -83 8 -119h-54q-21 -38 -21 -71q0 -25 13 -38.5t35 -13.5t44 10l21 -72q-45 -34 -105 -34q-46 0 -74.5 26.5t-28.5 75.5q0 45 33 118l-9 48h-3q-49 -60 -140 -60q-71 0 -114.5 44.5t-43.5 105.5q0 93 76.5 140t210.5 47v6q0 63 -89 63q-74 0 -135 -36 +l-28 97q79 44 190 44q114 0 164 -58t50 -153zM321 178v53q-142 0 -142 -77q0 -28 16.5 -43t43.5 -15t49 16t30 40q3 12 3 26z" /> + <glyph glyph-name="Cacute" unicode="&#x106;" horiz-adv-x="595" +d="M538 139l22 -120q-60 -29 -172 -29q-169 0 -261 94t-92 244q0 166 104.5 261t263.5 95q106 0 166 -29l-32 -121q-58 25 -128 25q-95 0 -154.5 -57.5t-59.5 -165.5q0 -101 57 -160t158 -59q76 0 128 22zM378 834h160l-122 -123h-122z" /> + <glyph glyph-name="cacute" unicode="&#x107;" horiz-adv-x="451" +d="M410 125l18 -112q-48 -23 -136 -23q-119 0 -189 67.5t-70 182.5q0 111 74 185t206 74q65 0 116 -19l-24 -113q-34 15 -85 15q-59 0 -95.5 -38t-35.5 -98q0 -65 38 -101t96 -36q50 0 87 16zM292 702h140l-122 -152h-104z" /> + <glyph glyph-name="Ccircumflex" unicode="&#x108;" horiz-adv-x="595" +d="M538 139l22 -120q-60 -29 -172 -29q-169 0 -261 94t-92 244q0 166 104.5 261t263.5 95q106 0 166 -29l-32 -121q-58 25 -128 25q-95 0 -154.5 -57.5t-59.5 -165.5q0 -101 57 -160t158 -59q76 0 128 22zM302 837h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="ccircumflex" unicode="&#x109;" horiz-adv-x="451" +d="M410 125l18 -112q-48 -23 -136 -23q-119 0 -189 67.5t-70 182.5q0 111 74 185t206 74q65 0 116 -19l-24 -113q-34 15 -85 15q-59 0 -95.5 -38t-35.5 -98q0 -65 38 -101t96 -36q50 0 87 16zM215 702h102l99 -152h-99l-50 87h-2l-51 -87h-99z" /> + <glyph glyph-name="Cdotaccent" unicode="&#x10a;" horiz-adv-x="595" +d="M538 139l22 -120q-60 -29 -172 -29q-169 0 -261 94t-92 244q0 166 104.5 261t263.5 95q106 0 166 -29l-32 -121q-58 25 -128 25q-95 0 -154.5 -57.5t-59.5 -165.5q0 -101 57 -160t158 -59q76 0 128 22zM361 712h-1q-29 0 -49 20.5t-20 47.5q0 29 20.5 49t49.5 20 +q28 0 47.5 -20t19.5 -49q0 -27 -19.5 -47.5t-47.5 -20.5z" /> + <glyph glyph-name="cdotaccent" unicode="&#x10b;" horiz-adv-x="451" +d="M410 125l18 -112q-48 -23 -136 -23q-119 0 -189 67.5t-70 182.5q0 111 74 185t206 74q65 0 116 -19l-24 -113q-34 15 -85 15q-59 0 -95.5 -38t-35.5 -98q0 -65 38 -101t96 -36q50 0 87 16zM278 557h-1q-30 0 -50 20.5t-20 49.5q0 31 20.5 51t50.5 20q29 0 48.5 -20 +t19.5 -51q0 -29 -19.5 -49.5t-48.5 -20.5z" /> + <glyph glyph-name="Ccaron" unicode="&#x10c;" horiz-adv-x="595" +d="M538 139l22 -120q-60 -29 -172 -29q-169 0 -261 94t-92 244q0 166 104.5 261t263.5 95q106 0 166 -29l-32 -121q-58 25 -128 25q-95 0 -154.5 -57.5t-59.5 -165.5q0 -101 57 -160t158 -59q76 0 128 22zM419 711h-114l-101 123h107l50 -62h2l50 62h106z" /> + <glyph glyph-name="ccaron" unicode="&#x10d;" horiz-adv-x="451" +d="M410 125l18 -112q-48 -23 -136 -23q-119 0 -189 67.5t-70 182.5q0 111 74 185t206 74q65 0 116 -19l-24 -113q-34 15 -85 15q-59 0 -95.5 -38t-35.5 -98q0 -65 38 -101t96 -36q50 0 87 16zM321 550h-103l-99 152h99l51 -87h2l50 87h100z" /> + <glyph glyph-name="Dcaron" unicode="&#x10e;" horiz-adv-x="696" +d="M66 3v661q84 15 205 15q181 0 277 -72q114 -85 114 -254q0 -178 -111 -273q-105 -87 -312 -87q-99 0 -173 10zM218 556v-441q13 -3 53 -3q107 -1 168.5 58.5t61.5 177.5q0 104 -57 159t-157 55q-43 0 -69 -6zM379 711h-114l-101 123h107l50 -62h2l50 62h106z" /> + <glyph glyph-name="dcaron" unicode="&#x10f;" horiz-adv-x="606" +d="M383 711h152v-565q0 -80 4 -146h-135l-6 71h-3q-22 -39 -63 -60.5t-90 -21.5q-89 0 -149 69.5t-60 181.5q-1 119 63 189.5t156 70.5t129 -55h2v266zM383 217v64q0 19 -2 28q-7 32 -31 53t-58 21q-50 0 -77.5 -39t-27.5 -100t28.5 -97.5t75.5 -36.5q33 0 57.5 20.5 +t31.5 52.5q3 15 3 34zM640 495l-65 41q28 45 28 101q0 36 -20 69l95 16q13 -9 22.5 -30.5t9.5 -44.5q0 -91 -70 -152z" /> + <glyph glyph-name="Dcroat" unicode="&#x110;" horiz-adv-x="704" +d="M3 284v119h71v264q84 15 205 15q185 0 276 -70q114 -85 114 -258q0 -180 -111 -275q-104 -88 -311 -88q-90 0 -173 9v284h-71zM360 403v-119h-134v-171q13 -3 53 -3q108 0 168.5 59.5t60.5 179.5q0 108 -56 162t-157 54q-43 0 -69 -6v-156h134z" /> + <glyph glyph-name="dcroat" unicode="&#x111;" horiz-adv-x="596" +d="M616 540h-81v-394q0 -80 4 -146h-135l-6 71h-3q-22 -39 -63 -60.5t-90 -21.5q-89 0 -149 69.5t-60 181.5q-1 119 63 189.5t156 70.5t129 -55h2v95h-182v83h182v88h152v-88h81v-83zM383 217v64q0 19 -2 28q-7 32 -31 53t-58 21q-50 0 -77.5 -39t-27.5 -100t28.5 -97.5 +t75.5 -36.5q33 0 57.5 20.5t31.5 52.5q3 15 3 34z" /> + <glyph glyph-name="Emacron" unicode="&#x112;" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248zM142 815h259v-81h-259v81z" /> + <glyph glyph-name="emacron" unicode="&#x113;" horiz-adv-x="528" +d="M493 196h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-74 -31 -177 -31q-123 0 -192 66.5t-69 182.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68zM143 666h250v-84h-250v84z +" /> + <glyph glyph-name="Ebreve" unicode="&#x114;" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248zM136 837h81q6 -46 59 -46t63 46h78q-2 -58 -37 -92t-104 -34q-70 0 -104 34t-36 92z" /> + <glyph glyph-name="ebreve" unicode="&#x115;" horiz-adv-x="528" +d="M493 196h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-74 -31 -177 -31q-123 0 -192 66.5t-69 182.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68zM130 692h79q10 -61 59 -61 +q29 0 44 17.5t17 43.5h79q-1 -65 -37 -103.5t-102 -38.5q-67 0 -102.5 39.5t-36.5 102.5z" /> + <glyph glyph-name="Edotaccent" unicode="&#x116;" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248zM270 713h-1q-29 0 -49 20.5t-20 47.5q0 29 20.5 49t49.5 20q28 0 47.5 -20t19.5 -49q0 -27 -19.5 -47.5t-47.5 -20.5z" /> + <glyph glyph-name="edotaccent" unicode="&#x117;" horiz-adv-x="528" +d="M493 196h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-74 -31 -177 -31q-123 0 -192 66.5t-69 182.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68zM271 557h-1q-30 0 -50 20.5 +t-20 49.5q0 31 20.5 51t50.5 20q29 0 48.5 -20t19.5 -51q0 -29 -19.5 -49.5t-48.5 -20.5z" /> + <glyph glyph-name="Eogonek" unicode="&#x118;" horiz-adv-x="534" +d="M483 -116l21 -72q-45 -31 -108 -31q-49 0 -76.5 24.5t-27.5 68.5q0 74 71 126h-296v674h415v-125h-263v-140h248v-124h-248v-160h277v-125h-25q-28 -18 -48 -43.5t-20 -48.5q0 -32 38 -32q23 0 42 8z" /> + <glyph glyph-name="eogonek" unicode="&#x119;" horiz-adv-x="528" +d="M421 -114l23 -70q-43 -34 -107 -34q-47 0 -74.5 23t-27.5 62q0 67 67 122v1h-13q-121 1 -188.5 67.5t-67.5 181.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-7 -3 -22.5 -8.5t-20.5 -7.5 +q-30 -14 -58 -43t-28 -53q0 -16 10 -24.5t25 -8.5q24 0 44 10zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68z" /> + <glyph glyph-name="Ecaron" unicode="&#x11a;" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248zM328 710h-114l-101 123h107l50 -62h2l50 62h106z" /> + <glyph glyph-name="ecaron" unicode="&#x11b;" horiz-adv-x="528" +d="M493 196h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-74 -31 -177 -31q-123 0 -192 66.5t-69 182.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68zM319 550h-103l-99 152h99 +l51 -87h2l50 87h100z" /> + <glyph glyph-name="Gcircumflex" unicode="&#x11c;" horiz-adv-x="682" +d="M629 386v-355q-112 -38 -225 -38q-179 0 -274 90q-95 92 -95 246q1 164 108 258t277 94q117 0 187 -32l-32 -123q-63 29 -156 29q-100 0 -162 -56t-62 -162q0 -103 58.5 -162t154.5 -59q52 0 74 9v142h-104v119h251zM317 837h114l101 -123h-107l-50 62h-2l-50 -62h-106z +" /> + <glyph glyph-name="gcircumflex" unicode="&#x11d;" horiz-adv-x="585" +d="M524 343v-272q0 -154 -75 -220q-69 -60 -198 -60q-108 0 -176 37l30 116q64 -37 142 -37q57 0 92 32t35 97v31h-2q-46 -63 -132 -63q-91 0 -149 66.5t-58 171.5q0 116 64.5 187t157.5 71q91 0 134 -70h2l5 59h132q-4 -64 -4 -146zM372 218v72q0 14 -3 28q-8 31 -29.5 49 +t-52.5 18q-43 0 -71.5 -37t-28.5 -102q0 -57 26.5 -93.5t72.5 -36.5q29 0 51 17t30 44q5 15 5 41zM244 703h102l99 -152h-99l-50 87h-2l-51 -87h-99z" /> + <glyph glyph-name="Gbreve" unicode="&#x11e;" horiz-adv-x="682" +d="M629 386v-355q-112 -38 -225 -38q-179 0 -274 90q-95 92 -95 246q1 164 108 258t277 94q117 0 187 -32l-32 -123q-63 29 -156 29q-100 0 -162 -56t-62 -162q0 -103 58.5 -162t154.5 -59q52 0 74 9v142h-104v119h251zM237 841h81q6 -46 59 -46t63 46h78q-2 -58 -37 -92 +t-104 -34q-70 0 -104 34t-36 92z" /> + <glyph glyph-name="gbreve" unicode="&#x11f;" horiz-adv-x="585" +d="M524 343v-272q0 -154 -75 -220q-69 -60 -198 -60q-108 0 -176 37l30 116q64 -37 142 -37q57 0 92 32t35 97v31h-2q-46 -63 -132 -63q-91 0 -149 66.5t-58 171.5q0 116 64.5 187t157.5 71q91 0 134 -70h2l5 59h132q-4 -64 -4 -146zM372 218v72q0 14 -3 28q-8 31 -29.5 49 +t-52.5 18q-43 0 -71.5 -37t-28.5 -102q0 -57 26.5 -93.5t72.5 -36.5q29 0 51 17t30 44q5 15 5 41zM154 692h79q10 -61 59 -61q29 0 44 17.5t17 43.5h79q-1 -65 -37 -103.5t-102 -38.5q-67 0 -102.5 39.5t-36.5 102.5z" /> + <glyph glyph-name="Gdotaccent" unicode="&#x120;" horiz-adv-x="682" +d="M629 386v-355q-112 -38 -225 -38q-179 0 -274 90q-95 92 -95 246q1 164 108 258t277 94q117 0 187 -32l-32 -123q-63 29 -156 29q-100 0 -162 -56t-62 -162q0 -103 58.5 -162t154.5 -59q52 0 74 9v142h-104v119h251zM377 712h-1q-29 0 -49 20.5t-20 47.5q0 29 20.5 49 +t49.5 20q28 0 47.5 -20t19.5 -49q0 -27 -19.5 -47.5t-47.5 -20.5z" /> + <glyph glyph-name="gdotaccent" unicode="&#x121;" horiz-adv-x="585" +d="M524 343v-272q0 -154 -75 -220q-69 -60 -198 -60q-108 0 -176 37l30 116q64 -37 142 -37q57 0 92 32t35 97v31h-2q-46 -63 -132 -63q-91 0 -149 66.5t-58 171.5q0 116 64.5 187t157.5 71q91 0 134 -70h2l5 59h132q-4 -64 -4 -146zM372 218v72q0 14 -3 28q-8 31 -29.5 49 +t-52.5 18q-43 0 -71.5 -37t-28.5 -102q0 -57 26.5 -93.5t72.5 -36.5q29 0 51 17t30 44q5 15 5 41zM291 558h-1q-30 0 -50 20.5t-20 49.5q0 31 20.5 51t50.5 20q29 0 48.5 -20t19.5 -51q0 -29 -19.5 -49.5t-48.5 -20.5z" /> + <glyph glyph-name="Gcommaaccent" unicode="&#x122;" horiz-adv-x="682" +d="M629 386v-355q-112 -38 -225 -38q-179 0 -274 90q-95 92 -95 246q1 164 108 258t277 94q117 0 187 -32l-32 -123q-63 29 -156 29q-100 0 -162 -56t-62 -162q0 -103 58.5 -162t154.5 -59q52 0 74 9v142h-104v119h251zM289 -241l-23 64q28 6 47 21.5t19 39.5q0 27 -29 60 +l105 17q39 -29 39 -79q0 -59 -44 -90t-114 -33z" /> + <glyph glyph-name="gcommaaccent" unicode="&#x123;" horiz-adv-x="585" +d="M524 343v-272q0 -154 -75 -220q-69 -60 -197 -60q-109 0 -177 37l30 116q64 -37 143 -37q57 0 91.5 32t34.5 97v31h-2q-46 -63 -131 -63q-92 0 -150 66.5t-58 171.5q0 116 64.5 187t157.5 71q91 0 134 -70h2l5 59h132q-4 -64 -4 -146zM372 218v72q0 14 -3 28 +q-8 31 -29.5 49t-52.5 18q-43 0 -71.5 -37t-28.5 -102q0 -56 27 -93t73 -37q29 0 50.5 17t29.5 44q5 15 5 41zM366 724l22 -54q-72 -11 -72 -60q0 -27 30 -55l-99 -16q-16 10 -27.5 30t-11.5 42q0 55 44 83t114 30z" /> + <glyph glyph-name="Hcircumflex" unicode="&#x124;" horiz-adv-x="689" +d="M67 674h152v-260h251v260h152v-674h-152v281h-251v-281h-152v674zM288 833h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="hcircumflex" unicode="&#x125;" horiz-adv-x="586" +d="M61 0v711h152v-281h2q24 33 60 51q36 19 79 19q77 0 124 -54.5t47 -160.5v-285h-152v269q0 108 -79 108q-55 0 -76 -54q-5 -11 -5 -33v-290h-152zM85 857h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="Hbar" unicode="&#x126;" horiz-adv-x="701" +d="M692 471h-64v-471h-152v256h-252v-256h-152v471h-64v90h64v113h152v-113h252v113h152v-113h64v-90zM476 389v82h-252v-82h252z" /> + <glyph glyph-name="hbar" unicode="&#x127;" horiz-adv-x="586" +d="M525 0h-152v269q0 108 -79 108q-55 0 -76 -54q-5 -11 -5 -33v-290h-152v540h-78v83h78v88h152v-88h183v-83h-183v-110h2q22 31 60 51q40 19 79 19q77 0 124 -54.5t47 -160.5v-285z" /> + <glyph glyph-name="Itilde" unicode="&#x128;" horiz-adv-x="285" +d="M67 674h152v-674h-152v674zM73 715h-70q-1 62 19.5 94.5t57.5 32.5q31 0 64 -20q32 -19 44 -19q13 0 18.5 9t8.5 34h68q3 -125 -78 -125q-31 0 -65 19q-32 18 -43 18q-21 0 -24 -43z" /> + <glyph glyph-name="itilde" unicode="&#x129;" horiz-adv-x="274" +d="M213 0h-152v489h152v-489zM67 558h-72q-2 62 20.5 96.5t61.5 34.5q25 0 65 -20q34 -19 42 -19q12 0 18 9t8 35h70q4 -128 -82 -128q-25 0 -69 21q-29 16 -38 16q-21 0 -24 -45z" /> + <glyph glyph-name="Imacron" unicode="&#x12a;" horiz-adv-x="285" +d="M67 674h152v-674h-152v674zM14 815h259v-81h-259v81z" /> + <glyph glyph-name="imacron" unicode="&#x12b;" horiz-adv-x="274" +d="M213 0h-152v489h152v-489zM13 666h250v-84h-250v84z" /> + <glyph glyph-name="Ibreve" unicode="&#x12c;" horiz-adv-x="285" +d="M67 674h152v-674h-152v674zM2 839h81q6 -46 59 -46t63 46h78q-2 -58 -37 -92t-104 -34q-70 0 -104 34t-36 92z" /> + <glyph glyph-name="ibreve" unicode="&#x12d;" horiz-adv-x="274" +d="M213 0h-152v489h152v-489zM-1 692h79q10 -61 59 -61q29 0 44 17.5t17 43.5h79q-1 -65 -37 -103.5t-102 -38.5q-67 0 -102.5 39.5t-36.5 102.5z" /> + <glyph glyph-name="Iogonek" unicode="&#x12e;" horiz-adv-x="285" +d="M219 674v-674h-68q-22 -37 -22 -69q0 -25 15 -40.5t39 -15.5q27 0 44 7l21 -70q-41 -32 -102 -32q-54 0 -83.5 27t-29.5 79q0 49 34 114v674h152z" /> + <glyph glyph-name="iogonek" unicode="&#x12f;" horiz-adv-x="274" +d="M137 551h-1q-37 0 -59.5 22.5t-22.5 56.5t23 56.5t61 22.5q37 0 60 -22.5t23 -56.5t-23 -56.5t-61 -22.5zM213 489v-489h-68q-22 -37 -22 -69q0 -25 15.5 -40.5t38.5 -15.5q27 0 44 7l21 -70q-41 -32 -102 -32q-53 0 -82.5 27t-29.5 80q0 43 33 113v489h152z" /> + <glyph glyph-name="Idotaccent" unicode="&#x130;" horiz-adv-x="285" +d="M67 674h152v-674h-152v674zM145 713h-1q-29 0 -49 20.5t-20 47.5q0 29 20.5 49t49.5 20q28 0 47.5 -20t19.5 -49q0 -27 -19.5 -47.5t-47.5 -20.5z" /> + <glyph glyph-name="dotlessi" unicode="&#x131;" horiz-adv-x="274" +d="M213 0h-152v489h152v-489z" /> + <glyph glyph-name="IJ" unicode="&#x132;" horiz-adv-x="696" +d="M67 674h152v-674h-152v674zM483 249v425h152v-426q0 -138 -61.5 -198.5t-177.5 -60.5q-64 0 -112 16l17 123q36 -12 78 -12q52 0 78 29.5t26 103.5z" /> + <glyph glyph-name="ij" unicode="&#x133;" horiz-adv-x="565" +d="M213 0h-152v489h152v-489zM137 549h-1q-35 0 -57 22t-22 54q0 33 22.5 54.5t58.5 21.5t57.5 -21.5t22.5 -54.5q0 -32 -22 -54t-59 -22zM250 -215l-15 119q64 5 90 32q30 31 30 159v394h152v-430q0 -151 -69 -214q-66 -60 -188 -60zM430 549h-1q-35 0 -57 22t-22 54 +q0 33 22.5 54.5t58.5 21.5t57.5 -21.5t22.5 -54.5q0 -32 -22 -54t-59 -22z" /> + <glyph glyph-name="Jcircumflex" unicode="&#x134;" horiz-adv-x="411" +d="M198 249v425h152v-426q0 -138 -61.5 -198.5t-177.5 -60.5q-64 0 -112 16l17 123q36 -12 78 -12q52 0 78 29.5t26 103.5zM216 833h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="jcircumflex" unicode="&#x135;" horiz-adv-x="291" +d="M-24 -215l-15 119q64 5 90 32q30 31 30 159v394h152v-430q0 -151 -69 -214q-66 -60 -188 -60zM101 700h96l99 -152h-96l-50 86h-2l-50 -86h-95z" /> + <glyph glyph-name="Kcommaaccent" unicode="&#x136;" horiz-adv-x="614" +d="M66 0v674h151v-298h2q15 26 47 74l152 224h188l-223 -287l234 -387h-177l-166 291l-57 -71v-220h-151zM241 -240l-23 64q28 6 47 21.5t19 39.5q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90t-114 -33z" /> + <glyph glyph-name="kcommaaccent" unicode="&#x137;" horiz-adv-x="542" +d="M213 711v-428h2q16 30 35 59l99 147h183l-175 -198l200 -291h-187l-119 201l-38 -48v-153h-152v711h152zM203 -242l-23 65q27 5 46.5 21t19.5 40q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90.5t-114 -33.5z" /> + <glyph glyph-name="kgreenlandic" unicode="&#x138;" horiz-adv-x="542" +d="M213 489v-206h2q16 30 35 59l99 147h183l-175 -198l200 -291h-187l-119 201l-38 -48v-153h-152v489h152z" /> + <glyph glyph-name="Lacute" unicode="&#x139;" horiz-adv-x="511" +d="M67 0v674h152v-546h268v-128h-420zM165 833h160l-122 -123h-122z" /> + <glyph glyph-name="lacute" unicode="&#x13a;" horiz-adv-x="275" +d="M61 0v711h152v-711h-152zM144 863h160l-122 -123h-122z" /> + <glyph glyph-name="Lcommaaccent" unicode="&#x13b;" horiz-adv-x="511" +d="M67 0v674h152v-546h268v-128h-420zM191 -241l-23 64q28 6 47 21.5t19 39.5q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90t-114 -33z" /> + <glyph glyph-name="lcommaaccent" unicode="&#x13c;" horiz-adv-x="275" +d="M61 0v711h152v-711h-152zM58 -242l-23 65q27 5 46.5 21t19.5 40q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90.5t-114 -33.5z" /> + <glyph glyph-name="Lcaron" unicode="&#x13d;" horiz-adv-x="511" +d="M67 0v674h152v-546h268v-128h-420zM295 485l-23 64q28 6 47 21.5t19 39.5q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90t-114 -33z" /> + <glyph glyph-name="lcaron" unicode="&#x13e;" horiz-adv-x="285" +d="M61 0v711h152v-711h-152zM321 496l-71 40q28 52 28 101q0 36 -20 69l95 16q32 -24 32 -80q0 -38 -15 -73t-23.5 -45t-25.5 -28z" /> + <glyph glyph-name="Ldot" unicode="&#x13f;" horiz-adv-x="511" +d="M67 0v674h152v-546h268v-128h-420zM385 310h-1q-29 0 -49 20.5t-20 47.5q0 29 20.5 49t49.5 20q28 0 47.5 -20t19.5 -49q0 -27 -19.5 -47.5t-47.5 -20.5z" /> + <glyph glyph-name="ldot" unicode="&#x140;" horiz-adv-x="354" +d="M61 0v711h152v-711h-152zM316 330h-1q-27 0 -46 20t-19 48q0 29 19 48.5t47 19.5q26 0 44 -19.5t18 -48.5q0 -28 -18 -48t-44 -20z" /> + <glyph glyph-name="Lslash" unicode="&#x141;" horiz-adv-x="517" +d="M493 0h-420v235l-75 -51v105l75 52v333h152v-232l126 85v-106l-126 -85v-208h268v-128z" /> + <glyph glyph-name="lslash" unicode="&#x142;" horiz-adv-x="287" +d="M219 0h-152v230l-65 -52v109l65 52v372h152v-259l71 56v-109l-71 -56v-343z" /> + <glyph glyph-name="Nacute" unicode="&#x143;" horiz-adv-x="690" +d="M206 0h-140v674h178l140 -247q57 -101 110 -231h2q-12 119 -12 282v196h140v-674h-160l-144 260q-79 144 -117 238h-4q7 -126 7 -295v-203zM352 833h160l-122 -123h-122z" /> + <glyph glyph-name="nacute" unicode="&#x144;" horiz-adv-x="586" +d="M61 0v333q0 68 -4 156h132l7 -68h3q19 31 57.5 55t93.5 24q79 0 127 -53.5t48 -157.5v-289h-152v271q0 106 -77 106q-56 0 -78 -57q-5 -12 -5 -38v-282h-152zM306 702h140l-122 -152h-104z" /> + <glyph glyph-name="Ncommaaccent" unicode="&#x145;" horiz-adv-x="690" +d="M206 0h-140v674h178l140 -247q57 -101 110 -231h2q-12 119 -12 282v196h140v-674h-160l-144 260q-79 144 -117 238h-4q7 -126 7 -295v-203zM277 -239l-23 64q28 6 47 21.5t19 39.5q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90t-114 -33z" /> + <glyph glyph-name="ncommaaccent" unicode="&#x146;" horiz-adv-x="586" +d="M61 0v333q0 68 -4 156h132l7 -68h3q19 31 57.5 55t93.5 24q79 0 127 -53.5t48 -157.5v-289h-152v271q0 106 -77 106q-56 0 -78 -57q-5 -12 -5 -38v-282h-152zM225 -242l-23 65q27 5 46.5 21t19.5 40q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90.5t-114 -33.5z" /> + <glyph glyph-name="Ncaron" unicode="&#x147;" horiz-adv-x="690" +d="M206 0h-140v674h178l140 -247q57 -101 110 -231h2q-12 119 -12 282v196h140v-674h-160l-144 260q-79 144 -117 238h-4q7 -126 7 -295v-203zM406 708h-114l-101 123h107l50 -62h2l50 62h106z" /> + <glyph glyph-name="ncaron" unicode="&#x148;" horiz-adv-x="586" +d="M61 0v333q0 68 -4 156h132l7 -68h3q19 31 57.5 55t93.5 24q79 0 127 -53.5t48 -157.5v-289h-152v271q0 106 -77 106q-56 0 -78 -57q-5 -12 -5 -38v-282h-152zM344 550h-103l-99 152h99l51 -87h2l50 87h100z" /> + <glyph glyph-name="napostrophe" unicode="&#x149;" horiz-adv-x="586" +d="M61 0v333q0 68 -4 156h132l7 -68h3q19 31 57.5 55t93.5 24q79 0 127 -53.5t48 -157.5v-289h-152v271q0 106 -77 106q-56 0 -78 -57q-5 -12 -5 -38v-282h-152zM76 524l-68 41q31 47 31 87q0 31 -20 55l97 25q32 -23 32 -76q0 -71 -72 -132z" /> + <glyph glyph-name="Eng" unicode="&#x14a;" horiz-adv-x="690" +d="M206 0h-140v674h178l140 -247q57 -101 110 -231h2q-12 119 -12 282v196h140v-626q0 -237 -228 -264l-33 116q98 24 111 85l-154 275q-79 144 -117 238h-4q7 -126 7 -295v-203z" /> + <glyph glyph-name="eng" unicode="&#x14b;" horiz-adv-x="586" +d="M61 0v333q0 68 -4 156h132l7 -68h3q19 31 57.5 55t93.5 24q79 0 127 -53.5t48 -157.5v-230q0 -231 -207 -254l-30 118q45 8 65 34t20 78v236q0 106 -77 106q-56 0 -78 -57q-5 -12 -5 -38v-282h-152z" /> + <glyph glyph-name="Omacron" unicode="&#x14c;" horiz-adv-x="717" +d="M353 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM359 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64zM230 817h259v-81h-259v81z" /> + <glyph glyph-name="omacron" unicode="&#x14d;" horiz-adv-x="577" +d="M287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41zM165 666h250v-84h-250v84z" /> + <glyph glyph-name="Obreve" unicode="&#x14e;" horiz-adv-x="717" +d="M353 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM359 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64zM218 843h81q6 -46 59 -46t63 46h78 +q-2 -58 -37 -92t-104 -34q-70 0 -104 34t-36 92z" /> + <glyph glyph-name="obreve" unicode="&#x14f;" horiz-adv-x="577" +d="M287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41zM150 692h79q10 -61 59 -61 +q29 0 44 17.5t17 43.5h79q-1 -65 -37 -103.5t-102 -38.5q-67 0 -102.5 39.5t-36.5 102.5z" /> + <glyph glyph-name="Ohungarumlaut" unicode="&#x150;" horiz-adv-x="717" +d="M353 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM359 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64zM282 835h141l-101 -116h-105zM464 835h141 +l-102 -116h-104z" /> + <glyph glyph-name="ohungarumlaut" unicode="&#x151;" horiz-adv-x="577" +d="M287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41zM200 701h120l-97 -149h-86zM374 701 +h120l-98 -149h-85z" /> + <glyph glyph-name="OE" unicode="&#x152;" horiz-adv-x="936" +d="M897 125v-125h-380q-15 0 -61 -6q-57 -5 -83 -5q-164 0 -251 98t-87 244q0 161 93.5 257.5t247.5 96.5q42 0 90 -6l63 -5h354v-125h-263v-140h248v-124h-248v-160h277zM468 122v428q-30 14 -79 14q-83 0 -138 -60t-55 -167q0 -102 54 -164.5t150 -62.5q42 0 68 12z" /> + <glyph glyph-name="oe" unicode="&#x153;" horiz-adv-x="868" +d="M835 199h-309q3 -44 40.5 -70.5t92.5 -26.5q67 0 136 26l21 -102q-67 -37 -178 -37q-120 0 -180 87h-3q-59 -87 -183 -87q-102 0 -170.5 69t-68.5 186q0 114 70 185t179 71q55 0 101.5 -22.5t70.5 -64.5h2q60 87 170 87q56 0 98.5 -21t66.5 -56.5t36 -77t12 -88.5 +q0 -18 -4 -58zM290 391h-1q-52 0 -75.5 -43t-23.5 -103q0 -64 26 -105.5t72 -41.5t71.5 40t25.5 108q0 62 -24 103.5t-71 41.5zM524 302h174q0 36 -18 66t-67 30q-42 0 -65 -30.5t-24 -65.5z" /> + <glyph glyph-name="Racute" unicode="&#x154;" horiz-adv-x="593" +d="M66 0v664q82 15 203 15q152 0 218 -54q63 -49 63 -141q0 -60 -35.5 -104t-83.5 -61v-3q63 -25 90 -125q6 -22 19 -73t21 -78.5t14 -39.5h-156q-19 37 -46 157q-14 62 -38 84.5t-73 23.5h-45v-265h-151zM217 560v-185h60q57 0 89 26t32 71t-29.5 69t-82.5 24q-51 0 -69 -5 +zM296 834h160l-122 -123h-122z" /> + <glyph glyph-name="racute" unicode="&#x155;" horiz-adv-x="380" +d="M61 0v328q0 105 -4 161h130l6 -91h4q18 50 55 76t77 26q15 0 32 -3v-143q-24 4 -41 4q-42 0 -69 -20.5t-35 -56.5q-3 -15 -3 -34v-247h-152zM212 702h140l-122 -152h-104z" /> + <glyph glyph-name="Rcommaaccent" unicode="&#x156;" horiz-adv-x="593" +d="M66 0v664q82 15 203 15q152 0 218 -54q63 -49 63 -141q0 -60 -35.5 -104t-83.5 -61v-3q63 -25 90 -125q6 -22 19 -73t21 -78.5t14 -39.5h-156q-19 37 -46 157q-14 62 -38 84.5t-73 23.5h-45v-265h-151zM217 560v-185h60q57 0 89 26t32 71t-29.5 69t-82.5 24q-51 0 -69 -5 +zM229 -239l-23 64q28 6 47 21.5t19 39.5q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90t-114 -33z" /> + <glyph glyph-name="rcommaaccent" unicode="&#x157;" horiz-adv-x="380" +d="M61 0v328q0 105 -4 161h130l6 -91h4q18 50 55 76t77 26q15 0 32 -3v-143q-24 4 -41 4q-42 0 -69 -20.5t-35 -56.5q-3 -15 -3 -34v-247h-152zM67 -242l-23 65q27 5 46.5 21t19.5 40q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90.5t-114 -33.5z" /> + <glyph glyph-name="Rcaron" unicode="&#x158;" horiz-adv-x="593" +d="M66 0v664q82 15 203 15q152 0 218 -54q63 -49 63 -141q0 -60 -35.5 -104t-83.5 -61v-3q63 -25 90 -125q6 -22 19 -73t21 -78.5t14 -39.5h-156q-19 37 -46 157q-14 62 -38 84.5t-73 23.5h-45v-265h-151zM217 560v-185h60q57 0 89 26t32 71t-29.5 69t-82.5 24q-51 0 -69 -5 +zM349 711h-114l-101 123h107l50 -62h2l50 62h106z" /> + <glyph glyph-name="rcaron" unicode="&#x159;" horiz-adv-x="380" +d="M61 0v328q0 105 -4 161h130l6 -91h4q18 50 55 76t77 26q15 0 32 -3v-143q-24 4 -41 4q-42 0 -69 -20.5t-35 -56.5q-3 -15 -3 -34v-247h-152zM252 550h-103l-99 152h99l51 -87h2l50 87h100z" /> + <glyph glyph-name="Sacute" unicode="&#x15a;" horiz-adv-x="540" +d="M40 32l31 125q80 -42 169 -42q52 0 79.5 19.5t27.5 53.5q0 31 -25.5 52t-87.5 42q-186 66 -186 200q0 88 69.5 145t185.5 57q100 0 172 -34l-34 -122q-64 32 -140 32q-47 0 -72.5 -19t-25.5 -46q0 -30 27 -49t98 -46q90 -33 132 -81.5t42 -119.5q0 -90 -69.5 -149.5 +t-201.5 -59.5q-55 0 -107.5 12.5t-83.5 29.5zM293 834h160l-122 -123h-122z" /> + <glyph glyph-name="sacute" unicode="&#x15b;" horiz-adv-x="434" +d="M33 25l27 108q23 -14 61 -25t70 -11q65 0 65 40q0 19 -15 31t-56 25q-142 47 -140 146q0 70 55 115.5t144 45.5q79 0 137 -29l-26 -104q-54 27 -106 27q-58 0 -58 -39q0 -17 17 -29t62 -27q69 -24 100 -60t32 -90q0 -72 -54.5 -115.5t-156.5 -43.5q-93 0 -158 35z +M244 702h140l-122 -152h-104z" /> + <glyph glyph-name="Scircumflex" unicode="&#x15c;" horiz-adv-x="540" +d="M40 32l31 125q80 -42 169 -42q52 0 79.5 19.5t27.5 53.5q0 31 -25.5 52t-87.5 42q-186 66 -186 200q0 88 69.5 145t185.5 57q100 0 172 -34l-34 -122q-64 32 -140 32q-47 0 -72.5 -19t-25.5 -46q0 -30 27 -49t98 -46q90 -33 132 -81.5t42 -119.5q0 -90 -69.5 -149.5 +t-201.5 -59.5q-55 0 -107.5 12.5t-83.5 29.5zM215 834h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="scircumflex" unicode="&#x15d;" horiz-adv-x="434" +d="M33 25l27 108q23 -14 61 -25t70 -11q65 0 65 40q0 19 -15 31t-56 25q-142 47 -140 146q0 70 55 115.5t144 45.5q79 0 137 -29l-26 -104q-54 27 -106 27q-58 0 -58 -39q0 -17 17 -29t62 -27q69 -24 100 -60t32 -90q0 -72 -54.5 -115.5t-156.5 -43.5q-93 0 -158 35z +M170 702h102l99 -152h-99l-50 87h-2l-51 -87h-99z" /> + <glyph glyph-name="Scedilla" unicode="&#x15e;" horiz-adv-x="540" +d="M40 32l31 125q80 -42 169 -42q52 0 79.5 19.5t27.5 53.5q0 31 -25.5 52t-87.5 42q-186 66 -186 200q0 88 69.5 145t185.5 57q100 0 172 -34l-34 -122q-64 32 -140 32q-47 0 -72.5 -19t-25.5 -46q0 -30 27 -49t98 -46q90 -33 132 -81.5t42 -119.5q0 -75 -49 -130t-143 -72 +l-22 -40q30 -4 51 -24t21 -48q0 -45 -34.5 -67t-86.5 -22q-49 0 -81 20l20 56q27 -16 55 -16q35 0 35 26q0 30 -78 36l36 72h-3q-44 0 -97 12t-86 30z" /> + <glyph glyph-name="Scedilla" unicode="&#xf6c1;" horiz-adv-x="540" +d="M40 32l31 125q80 -42 169 -42q52 0 79.5 19.5t27.5 53.5q0 31 -25.5 52t-87.5 42q-186 66 -186 200q0 88 69.5 145t185.5 57q100 0 172 -34l-34 -122q-64 32 -140 32q-47 0 -72.5 -19t-25.5 -46q0 -30 27 -49t98 -46q90 -33 132 -81.5t42 -119.5q0 -75 -49 -130t-143 -72 +l-22 -40q30 -4 51 -24t21 -48q0 -45 -34.5 -67t-86.5 -22q-49 0 -81 20l20 56q27 -16 55 -16q35 0 35 26q0 30 -78 36l36 72h-3q-44 0 -97 12t-86 30z" /> + <glyph glyph-name="scedilla" unicode="&#x15f;" horiz-adv-x="434" +d="M33 24l27 108q23 -14 61 -25t70 -11q65 0 65 40q0 19 -14.5 31t-56.5 26q-140 45 -140 146q1 70 55.5 115.5t143.5 45.5q79 0 137 -29l-26 -104q-54 27 -106 27q-58 0 -58 -39q0 -18 16.5 -29.5t62.5 -27.5q132 -44 132 -150q0 -58 -37.5 -99t-109.5 -54l-22 -39 +q30 -4 51 -24t21 -49q0 -45 -34 -66t-87 -21q-48 0 -80 20l20 56q27 -16 54 -16q35 0 35 26q0 30 -77 36l36 72h-2q-72 0 -137 34z" /> + <glyph glyph-name="scedilla" unicode="&#xf6c2;" horiz-adv-x="434" +d="M33 24l27 108q23 -14 61 -25t70 -11q65 0 65 40q0 19 -14.5 31t-56.5 26q-140 45 -140 146q1 70 55.5 115.5t143.5 45.5q79 0 137 -29l-26 -104q-54 27 -106 27q-58 0 -58 -39q0 -18 16.5 -29.5t62.5 -27.5q132 -44 132 -150q0 -58 -37.5 -99t-109.5 -54l-22 -39 +q30 -4 51 -24t21 -49q0 -45 -34 -66t-87 -21q-48 0 -80 20l20 56q27 -16 54 -16q35 0 35 26q0 30 -77 36l36 72h-2q-72 0 -137 34z" /> + <glyph glyph-name="Scaron" unicode="&#x160;" horiz-adv-x="540" +d="M40 32l31 125q80 -42 169 -42q52 0 79.5 19.5t27.5 53.5q0 31 -25.5 52t-87.5 42q-186 66 -186 200q0 88 69.5 145t185.5 57q100 0 172 -34l-34 -122q-64 32 -140 32q-47 0 -72.5 -19t-25.5 -46q0 -30 27 -49t98 -46q90 -33 132 -81.5t42 -119.5q0 -90 -69.5 -149.5 +t-201.5 -59.5q-55 0 -107.5 12.5t-83.5 29.5zM337 711h-114l-101 123h107l50 -62h2l50 62h106z" /> + <glyph glyph-name="scaron" unicode="&#x161;" horiz-adv-x="434" +d="M33 25l27 108q23 -14 61 -25t70 -11q65 0 65 40q0 19 -15 31t-56 25q-142 47 -140 146q0 70 55 115.5t144 45.5q79 0 137 -29l-26 -104q-54 27 -106 27q-58 0 -58 -39q0 -17 17 -29t62 -27q69 -24 100 -60t32 -90q0 -72 -54.5 -115.5t-156.5 -43.5q-93 0 -158 35z +M271 550h-103l-99 152h99l51 -87h2l50 87h100z" /> + <glyph glyph-name="Tcommaaccent" unicode="&#x162;" horiz-adv-x="548" +d="M197 0v546h-182v128h518v-128h-184v-546h-152zM193 -241l-23 64q28 6 47 21.5t19 39.5q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90t-114 -33z" /> + <glyph glyph-name="Tcommaaccent" unicode="&#x21a;" horiz-adv-x="548" +d="M197 0v546h-182v128h518v-128h-184v-546h-152zM193 -241l-23 64q28 6 47 21.5t19 39.5q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90t-114 -33z" /> + <glyph glyph-name="tcommaaccent" unicode="&#x163;" horiz-adv-x="367" +d="M82 581l149 41v-133h109v-112h-109v-177q0 -45 13.5 -65.5t46.5 -20.5q26 0 45 4l1 -115q-35 -13 -98 -13q-73 0 -115 42q-42 43 -42 145v200h-65v112h65v92zM127 -244l-23 65q27 5 46.5 21t19.5 40q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90.5t-114 -33.5z" /> + <glyph glyph-name="tcommaaccent" unicode="&#x21b;" horiz-adv-x="367" +d="M82 581l149 41v-133h109v-112h-109v-177q0 -45 13.5 -65.5t46.5 -20.5q26 0 45 4l1 -115q-35 -13 -98 -13q-73 0 -115 42q-42 43 -42 145v200h-65v112h65v92zM127 -244l-23 65q27 5 46.5 21t19.5 40q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90.5t-114 -33.5z" /> + <glyph glyph-name="Tcaron" unicode="&#x164;" horiz-adv-x="548" +d="M197 0v546h-182v128h518v-128h-184v-546h-152zM331 710h-114l-101 123h107l50 -62h2l50 62h106z" /> + <glyph glyph-name="tcaron" unicode="&#x165;" horiz-adv-x="371" +d="M82 581l149 41v-133h109v-112h-109v-177q0 -46 13 -66t46 -20q26 0 45 4l2 -115q-37 -13 -98 -13q-73 0 -115 42q-42 43 -42 145v200h-65v112h65v92zM328 537l-37 55q33 23 33 69q0 29 -18 54l97 16q32 -24 32 -69q0 -50 -34.5 -82.5t-72.5 -42.5z" /> + <glyph glyph-name="Tbar" unicode="&#x166;" horiz-adv-x="548" +d="M533 546h-184v-166h115v-90h-115v-290h-152v290h-116v90h116v166h-182v128h518v-128z" /> + <glyph glyph-name="tbar" unicode="&#x167;" horiz-adv-x="367" +d="M340 377h-109v-70h83v-80h-83v-38q0 -39 14.5 -57t45.5 -18q26 0 45 4l1 -115q-35 -13 -98 -13q-73 0 -115 42q-42 43 -42 145v50h-62v80h62v70h-65v112h65v92l149 41v-133h109v-112z" /> + <glyph glyph-name="Utilde" unicode="&#x168;" horiz-adv-x="682" +d="M66 674h152v-387q0 -87 31.5 -131.5t90.5 -44.5q124 0 124 176v387h152v-378q0 -153 -73 -230t-208 -77q-269 0 -269 309v376zM271 715h-70q-1 62 19.5 94.5t57.5 32.5q31 0 64 -20q32 -19 44 -19q13 0 18.5 9t8.5 34h68q3 -125 -78 -125q-31 0 -65 19q-32 18 -43 18 +q-21 0 -24 -43z" /> + <glyph glyph-name="utilde" unicode="&#x169;" horiz-adv-x="583" +d="M522 489v-332q0 -75 4 -157h-132l-7 69h-3q-51 -80 -153 -80q-79 0 -125.5 52.5t-46.5 160.5v287h152v-263q0 -114 77 -114q29 0 48.5 16t27.5 37q6 13 6 33v291h152zM222 558h-72q-2 62 20.5 96.5t61.5 34.5q25 0 65 -20q34 -19 42 -19q12 0 18 9t8 35h70 +q4 -128 -82 -128q-25 0 -69 21q-29 16 -38 16q-21 0 -24 -45z" /> + <glyph glyph-name="Umacron" unicode="&#x16a;" horiz-adv-x="682" +d="M66 674h152v-387q0 -87 31.5 -131.5t90.5 -44.5q124 0 124 176v387h152v-378q0 -153 -73 -230t-208 -77q-269 0 -269 309v376zM212 815h259v-81h-259v81z" /> + <glyph glyph-name="umacron" unicode="&#x16b;" horiz-adv-x="583" +d="M522 489v-332q0 -75 4 -157h-132l-7 69h-3q-51 -80 -153 -80q-79 0 -125.5 52.5t-46.5 160.5v287h152v-263q0 -114 77 -114q29 0 48.5 16t27.5 37q6 13 6 33v291h152zM168 666h250v-84h-250v84z" /> + <glyph glyph-name="Ubreve" unicode="&#x16c;" horiz-adv-x="682" +d="M66 674h152v-387q0 -87 31.5 -131.5t90.5 -44.5q124 0 124 176v387h152v-378q0 -153 -73 -230t-208 -77q-269 0 -269 309v376zM200 836h81q6 -46 59 -46t63 46h78q-2 -58 -37 -92t-104 -34q-70 0 -104 34t-36 92z" /> + <glyph glyph-name="ubreve" unicode="&#x16d;" horiz-adv-x="583" +d="M522 489v-332q0 -75 4 -157h-132l-7 69h-3q-51 -80 -153 -80q-79 0 -125.5 52.5t-46.5 160.5v287h152v-263q0 -114 77 -114q29 0 48.5 16t27.5 37q6 13 6 33v291h152zM153 692h79q10 -61 59 -61q29 0 44 17.5t17 43.5h79q-1 -65 -37 -103.5t-102 -38.5q-67 0 -102.5 39.5 +t-36.5 102.5z" /> + <glyph glyph-name="Uring" unicode="&#x16e;" horiz-adv-x="682" +d="M66 674h152v-387q0 -87 31.5 -131.5t90.5 -44.5q124 0 124 176v387h152v-378q0 -153 -73 -230t-208 -77q-269 0 -269 309v376zM342 885h1q54 0 83.5 -27.5t29.5 -70.5q0 -42 -31 -69.5t-83 -27.5q-53 0 -84 27.5t-31 68.5q0 42 30.5 70.5t84.5 28.5zM341 834h-1 +q-20 0 -31.5 -14t-11.5 -34q0 -18 12 -31.5t32 -13.5t32 13t12 33q0 19 -12 33t-32 14z" /> + <glyph glyph-name="uring" unicode="&#x16f;" horiz-adv-x="583" +d="M522 489v-332q0 -75 4 -157h-132l-7 69h-3q-51 -80 -153 -80q-79 0 -125.5 52.5t-46.5 160.5v287h152v-263q0 -114 77 -114q29 0 48.5 16t27.5 37q6 13 6 33v291h152zM293 736h1q52 0 82 -28t30 -71t-31 -70.5t-82 -27.5q-53 0 -84.5 27.5t-31.5 69.5q0 44 30.5 72 +t85.5 28zM292 686h-1q-21 0 -32.5 -14.5t-11.5 -35.5q0 -18 12.5 -32.5t32.5 -14.5q21 0 33.5 14t12.5 34t-12.5 34.5t-33.5 14.5z" /> + <glyph glyph-name="Uhungarumlaut" unicode="&#x170;" horiz-adv-x="682" +d="M66 674h152v-387q0 -87 31.5 -131.5t90.5 -44.5q124 0 124 176v387h152v-378q0 -153 -73 -230t-208 -77q-269 0 -269 309v376zM258 834h141l-101 -116h-105zM440 834h141l-102 -116h-104z" /> + <glyph glyph-name="uhungarumlaut" unicode="&#x171;" horiz-adv-x="583" +d="M522 489v-332q0 -75 4 -157h-132l-7 69h-3q-51 -80 -153 -80q-79 0 -125.5 52.5t-46.5 160.5v287h152v-263q0 -114 77 -114q29 0 48.5 16t27.5 37q6 13 6 33v291h152zM220 701h120l-97 -149h-86zM394 701h120l-98 -149h-85z" /> + <glyph glyph-name="Uogonek" unicode="&#x172;" horiz-adv-x="682" +d="M453 -115l21 -71q-46 -32 -109 -32q-49 0 -76 23.5t-27 64.5q0 57 58 120h-6q-248 10 -248 307v377h152v-388q0 -87 31.5 -131.5t89.5 -44.5q125 0 125 176v388h152v-379q0 -125 -50 -199.5t-143 -95.5q-54 -50 -54 -87q0 -17 12 -27t29 -10q22 0 43 9z" /> + <glyph glyph-name="uogonek" unicode="&#x173;" horiz-adv-x="583" +d="M522 489v-332q0 -77 4 -157l-48 1q-22 -37 -22 -69q0 -25 15.5 -40.5t38.5 -15.5q26 0 44 7l21 -70q-39 -32 -102 -32q-53 0 -82.5 27t-29.5 80q0 43 33 113l-7 68h-3q-51 -80 -153 -80q-79 0 -125.5 52.5t-46.5 160.5v287h152v-263q0 -114 77 -114q29 0 48.5 16t27.5 37 +q6 13 6 33v291h152z" /> + <glyph glyph-name="Wcircumflex" unicode="&#x174;" horiz-adv-x="888" +d="M342 0h-167l-160 674h163l51 -277q16 -86 40 -237h2q12 81 44 239l57 275h162l54 -284q20 -104 36 -226h2q5 41 39 235l55 275h155l-174 -674h-165l-57 290q-23 119 -32 208h-2q-20 -128 -39 -209zM393 833h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="wcircumflex" unicode="&#x175;" horiz-adv-x="759" +d="M11 489h155l40 -201q20 -112 27 -160h3q4 22 35 159l52 202h120l49 -195q26 -104 36 -166h2q10 78 29 167l41 194h149l-150 -489h-142l-46 171q-18 65 -32 153h-2q-12 -80 -31 -152l-49 -172h-143zM330 702h102l99 -152h-99l-50 87h-2l-51 -87h-99z" /> + <glyph glyph-name="Ycircumflex" unicode="&#x176;" horiz-adv-x="603" +d="M374 0h-152v276l-213 398h175l68 -162q34 -78 52 -129h2q16 46 51 129l68 162h171l-222 -393v-281zM245 833h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="ycircumflex" unicode="&#x177;" horiz-adv-x="523" +d="M6 489h169l73 -241q16 -55 24 -91h3q4 16 12.5 51t9.5 41l60 240h163l-114 -322q-50 -140 -89 -211t-83 -110q-66 -59 -147 -67l-32 128q32 7 66 26q39 21 63 61q8 13 8 22q0 11 -6 25zM218 702h102l99 -152h-99l-50 87h-2l-51 -87h-99z" /> + <glyph glyph-name="Ydieresis" unicode="&#x178;" horiz-adv-x="603" +d="M374 0h-152v276l-213 398h175l68 -162q34 -78 52 -129h2q16 46 51 129l68 162h171l-222 -393v-281zM208 711h-1q-28 0 -48 20t-20 48q0 29 20 49t49 20q28 0 47 -19.5t19 -49.5q0 -28 -19 -48t-47 -20zM415 711h-1q-29 0 -48 20t-19 48q0 29 19.5 49t48.5 20t48 -19.5 +t19 -49.5q0 -28 -19 -48t-48 -20z" /> + <glyph glyph-name="Zacute" unicode="&#x179;" horiz-adv-x="577" +d="M24 0v82l321 463v3h-292v126h489v-88l-314 -456v-4h319v-126h-523zM298 833h160l-122 -123h-122z" /> + <glyph glyph-name="zacute" unicode="&#x17a;" horiz-adv-x="469" +d="M22 0v88l154 192q49 56 78 86v2h-215v121h400v-92l-147 -185q-64 -74 -80 -89v-2h235v-121h-425zM260 702h140l-122 -152h-104z" /> + <glyph glyph-name="Zdotaccent" unicode="&#x17b;" horiz-adv-x="577" +d="M24 0v82l321 463v3h-292v126h489v-88l-314 -456v-4h319v-126h-523zM294 713h-1q-29 0 -49 20.5t-20 47.5q0 29 20.5 49t49.5 20q28 0 47.5 -20t19.5 -49q0 -27 -19.5 -47.5t-47.5 -20.5z" /> + <glyph glyph-name="zdotaccent" unicode="&#x17c;" horiz-adv-x="469" +d="M22 0v88l154 192q49 56 78 86v2h-215v121h400v-92l-147 -185q-64 -74 -80 -89v-2h235v-121h-425zM239 557h-1q-30 0 -50 20.5t-20 49.5q0 31 20.5 51t50.5 20q29 0 48.5 -20t19.5 -51q0 -29 -19.5 -49.5t-48.5 -20.5z" /> + <glyph glyph-name="Zcaron" unicode="&#x17d;" horiz-adv-x="577" +d="M24 0v82l321 463v3h-292v126h489v-88l-314 -456v-4h319v-126h-523zM352 710h-114l-101 123h107l50 -62h2l50 62h106z" /> + <glyph glyph-name="zcaron" unicode="&#x17e;" horiz-adv-x="469" +d="M22 0v88l154 192q49 56 78 86v2h-215v121h400v-92l-147 -185q-64 -74 -80 -89v-2h235v-121h-425zM292 550h-103l-99 152h99l51 -87h2l50 87h100z" /> + <glyph glyph-name="florin" unicode="&#x192;" horiz-adv-x="555" +d="M114 306v105h91l4 33q3 25 9 49t21.5 56t37.5 55.5t60.5 40t87.5 16.5q53 0 83 -16l-24 -108q-22 9 -47 9q-70 0 -80 -91l-6 -44h102v-105h-114l-23 -179q-13 -104 -56.5 -161t-141.5 -57q-60 1 -91 17l22 106q17 -7 47 -9q37 1 53.5 29.5t27.5 113.5l16 140h-79z" /> + <glyph glyph-name="AEacute" unicode="&#x1fc;" horiz-adv-x="868" +d="M160 0h-157l287 674h513v-125h-276l17 -143h255v-124h-235l21 -157h255v-125h-386l-24 184h-197zM279 306h134l-20 163q-10 80 -12 98h-3q-18 -55 -35 -99zM481 833h160l-122 -123h-122z" /> + <glyph glyph-name="aeacute" unicode="&#x1fd;" horiz-adv-x="803" +d="M769 203h-309q1 -47 37.5 -74.5t94.5 -27.5q71 0 137 26l21 -101q-71 -37 -180 -37q-62 0 -112 23t-75 64h-3q-64 -87 -182 -87q-78 0 -123.5 44t-45.5 109q0 88 78 134.5t211 45.5v14q0 10 -6.5 22t-29.5 24.5t-58 12.5q-68 0 -130 -37l-30 96q83 46 173 46 +q115 0 161 -79h3q60 79 167 79q101 0 153 -72t52 -170q0 -7 -4 -55zM322 177v52q-144 2 -144 -76q0 -27 17.5 -42.5t44.5 -15.5q56 0 78 52q4 11 4 30zM459 306h174q1 33 -18 63.5t-65 30.5q-43 0 -66.5 -30.5t-24.5 -63.5zM415 702h140l-122 -152h-104z" /> + <glyph glyph-name="Oslashacute" unicode="&#x1fe;" horiz-adv-x="717" +d="M154 -66l-82 64l56 85q-93 98 -93 253q0 150 90 249.5t235 99.5q84 0 149 -35l55 81l86 -58l-56 -84q88 -94 88 -248q0 -162 -90 -257t-233 -95q-79 0 -145 34zM214 214l224 327q-34 25 -79 25q-80 0 -126 -63.5t-46 -165.5q0 -65 26 -124zM506 453l-221 -321 +q29 -24 74 -24q79 0 125 63.5t46 166.5q0 61 -22 115h-2zM368 838h160l-122 -123h-122z" /> + <glyph glyph-name="oslashacute" unicode="&#x1ff;" horiz-adv-x="577" +d="M288 500h1q64 0 118 -26l47 68l53 -36l-46 -67q82 -71 82 -193q0 -123 -75 -190t-179 -67q-67 0 -116 26l-49 -71l-50 40l44 65q-85 69 -85 194q0 115 70.5 186t184.5 71zM199 166l143 207q-23 18 -55 18q-55 0 -81.5 -44t-26.5 -103q0 -45 17 -78h3zM379 319l-142 -203 +q19 -18 51 -18q50 0 79.5 39.5t29.5 104.5q0 44 -16 76zM305 702h140l-122 -152h-104z" /> + <glyph glyph-name="Scommaaccent" unicode="&#x218;" horiz-adv-x="540" +d="M40 32l31 125q80 -42 169 -42q52 0 79.5 19.5t27.5 53.5q0 31 -25.5 52t-87.5 42q-186 66 -186 200q0 88 69.5 145t185.5 57q100 0 172 -34l-34 -122q-64 32 -140 32q-47 0 -72.5 -19t-25.5 -46q0 -30 27 -49t98 -46q90 -33 132 -81.5t42 -119.5q0 -90 -69.5 -149.5 +t-201.5 -59.5q-55 0 -107.5 12.5t-83.5 29.5zM200 -241l-23 64q28 6 47 21.5t19 39.5q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90t-114 -33z" /> + <glyph glyph-name="scommaaccent" unicode="&#x219;" horiz-adv-x="434" +d="M33 25l27 108q23 -14 61 -25t70 -11q65 0 65 40q0 19 -15 31t-56 25q-142 47 -140 146q0 70 55 115.5t144 45.5q79 0 137 -29l-26 -104q-54 27 -106 27q-58 0 -58 -39q0 -17 17 -29t62 -27q69 -24 100 -60t32 -90q0 -72 -54.5 -115.5t-156.5 -43.5q-93 0 -158 35z +M146 -242l-23 65q27 5 46.5 21t19.5 40q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90.5t-114 -33.5z" /> + <glyph glyph-name="circumflex" unicode="&#x2c6;" +d="M100 702h102l99 -152h-99l-50 87h-2l-51 -87h-99z" /> + <glyph glyph-name="caron" unicode="&#x2c7;" +d="M201 550h-103l-99 152h99l51 -87h2l50 87h100z" /> + <glyph glyph-name="breve" unicode="&#x2d8;" +d="M11 692h79q10 -61 59 -61q29 0 44 17.5t17 43.5h79q-1 -65 -37 -103.5t-102 -38.5q-67 0 -102.5 39.5t-36.5 102.5z" /> + <glyph glyph-name="dotaccent" unicode="&#x2d9;" +d="M122 557h-1q-30 0 -50 20.5t-20 49.5q0 31 20.5 51t50.5 20q29 0 48.5 -20t19.5 -51q0 -29 -19.5 -49.5t-48.5 -20.5z" /> + <glyph glyph-name="ring" unicode="&#x2da;" horiz-adv-x="400" +d="M201 736h1q52 0 82 -28t30 -71t-31 -70.5t-82 -27.5q-53 0 -84.5 27.5t-31.5 69.5q0 44 30.5 72t85.5 28zM200 686h-1q-21 0 -32.5 -14.5t-11.5 -35.5q0 -18 12.5 -32.5t32.5 -14.5q21 0 33.5 14t12.5 34t-12.5 34.5t-33.5 14.5z" /> + <glyph glyph-name="ogonek" unicode="&#x2db;" +d="M82 1h81q-25 -47 -25 -73q0 -23 14.5 -38t38.5 -15q18 0 45 8l21 -71q-40 -31 -102 -31q-53 0 -82.5 27t-29.5 79q0 60 39 114z" /> + <glyph glyph-name="tilde" unicode="&#x2dc;" +d="M80 558h-72q-2 62 20.5 96.5t61.5 34.5q25 0 65 -20q34 -19 42 -19q12 0 18 9t8 35h70q4 -128 -82 -128q-25 0 -69 21q-29 16 -38 16q-21 0 -24 -45z" /> + <glyph glyph-name="hungarumlaut" unicode="&#x2dd;" +d="M61 701h120l-97 -149h-86zM235 701h120l-98 -149h-85z" /> + <glyph glyph-name="uni037E" unicode="&#x37e;" horiz-adv-x="277" +d="M124 -111l-100 -9q43 165 52 279l153 5q-41 -148 -105 -275zM147 285h-1q-41 0 -67 27.5t-26 69.5t26 69.5t68 27.5t68 -27t26 -70t-26 -70t-68 -27z" /> + <glyph glyph-name="tonos" unicode="&#x384;" horiz-adv-x="303" +d="M130 702h134l-81 -152h-99z" /> + <glyph glyph-name="dieresistonos" unicode="&#x385;" horiz-adv-x="435" +d="M180 729h112l-55 -175h-78zM70 564h-1q-26 0 -44.5 18t-18.5 44q0 27 18.5 45t45.5 18q25 0 42.5 -18t17.5 -45q0 -26 -17.5 -44t-42.5 -18zM364 564h-1q-26 0 -43.5 18t-17.5 44q0 27 18 45t44 18t44 -17.5t18 -45.5q0 -26 -17.5 -44t-44.5 -18z" /> + <glyph glyph-name="Alphatonos" unicode="&#x386;" horiz-adv-x="664" +d="M424 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM252 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130zM21 674h122l-37 -174h-87z" /> + <glyph glyph-name="anoteleia" unicode="&#x387;" horiz-adv-x="277" +d="M138 214h-1q-42 0 -69.5 28.5t-27.5 72.5t28 72.5t71 28.5t70 -28t28 -73q0 -44 -27.5 -72.5t-71.5 -28.5z" /> + <glyph glyph-name="Epsilontonos" unicode="&#x388;" horiz-adv-x="642" +d="M575 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248zM3 674h121l-36 -174h-87z" /> + <glyph glyph-name="Etatonos" unicode="&#x389;" horiz-adv-x="797" +d="M174 674h152v-260h252v260h152v-674h-152v281h-252v-281h-152v674zM2 674h122l-37 -174h-87z" /> + <glyph glyph-name="Iotatonos" unicode="&#x38a;" horiz-adv-x="393" +d="M175 674h152v-674h-152v674zM3 674h121l-36 -174h-87z" /> + <glyph glyph-name="Omicrontonos" unicode="&#x38c;" horiz-adv-x="792" +d="M427 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM433 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64zM2 674h122l-37 -174h-87z" /> + <glyph glyph-name="Upsilontonos" unicode="&#x38e;" horiz-adv-x="779" +d="M160 554l24 126q47 -1 101 -23.5t94 -66.5q73 -79 87 -216h7q17 124 95 210q39 42 88.5 68t89.5 28l24 -129q-71 -20 -132 -94.5t-85 -172.5q-17 -71 -17 -138v-146h-152v147q0 69 -11 132q-21 113 -74 186t-139 89zM3 674h122l-37 -174h-87z" /> + <glyph glyph-name="Omegatonos" unicode="&#x38f;" horiz-adv-x="814" +d="M648 119v-4h134v-115h-297v88q128 96 128 262q0 89 -46 151.5t-122 62.5t-124 -62t-48 -153q0 -86 36.5 -156t91.5 -105v-88h-298v115h132v4q-50 40 -85 104t-35 145q0 134 93.5 225.5t239.5 91.5q148 0 235 -90.5t87 -215.5q0 -156 -122 -260zM3 674h121l-37 -174h-86z +" /> + <glyph glyph-name="iotadieresistonos" unicode="&#x390;" horiz-adv-x="280" +d="M213 489v-336q0 -27 10.5 -38.5t34.5 -9.5l-7 -106q-22 -10 -64 -10q-63 0 -94.5 33t-31.5 116v351h152zM110 719h111l-55 -173h-77zM0 554h-1q-26 0 -44 18t-18 43q0 27 18 44.5t45 17.5q26 0 43 -17.5t17 -43.5t-17.5 -44t-42.5 -18zM293 554h-1q-26 0 -43.5 18 +t-17.5 43q0 27 18 44.5t44 17.5t43.5 -17.5t17.5 -43.5t-17.5 -44t-43.5 -18z" /> + <glyph glyph-name="Alpha" unicode="&#x391;" horiz-adv-x="656" +d="M416 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM244 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130z" /> + <glyph glyph-name="Beta" unicode="&#x392;" horiz-adv-x="604" +d="M66 3v661q75 15 197 15q135 0 199 -38q80 -43 80 -133q0 -46 -28 -84t-82 -59v-2q60 -16 97 -59.5t37 -106.5q0 -88 -70 -143q-77 -61 -265 -61q-97 0 -165 10zM217 563v-156h50q60 0 91.5 22.5t31.5 60.5q0 78 -108 78q-45 0 -65 -5zM217 298v-190q15 -3 59 -3 +q57 0 93.5 24t36.5 74q0 48 -38 71.5t-99 23.5h-52z" /> + <glyph glyph-name="Gamma" unicode="&#x393;" horiz-adv-x="482" +d="M67 674h408v-128h-256v-546h-152v674z" /> + <glyph glyph-name="Delta" unicode="&#x394;" horiz-adv-x="648" +d="M16 0v76l216 598h185l211 -597v-77h-612zM181 125h273l-95 282q-25 77 -41 144h-4q-19 -79 -37 -135z" /> + <glyph glyph-name="Delta" unicode="&#xe000;" horiz-adv-x="648" +d="M16 0v76l216 598h185l211 -597v-77h-612zM181 125h273l-95 282q-25 77 -41 144h-4q-19 -79 -37 -135z" /> + <glyph glyph-name="Epsilon" unicode="&#x395;" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248z" /> + <glyph glyph-name="Zeta" unicode="&#x396;" horiz-adv-x="577" +d="M24 0v82l321 463v3h-292v126h489v-88l-314 -456v-4h319v-126h-523z" /> + <glyph glyph-name="Eta" unicode="&#x397;" horiz-adv-x="689" +d="M67 674h152v-260h251v260h152v-674h-152v281h-251v-281h-152v674z" /> + <glyph glyph-name="Theta" unicode="&#x398;" horiz-adv-x="719" +d="M354 -11h-1q-146 0 -232 97.5t-86 245.5q0 154 91 253.5t238 99.5q150 0 235 -97.5t85 -243.5q0 -164 -90.5 -259.5t-239.5 -95.5zM359 110h1q76 0 120 64t44 165q0 96 -43.5 160.5t-120.5 64.5q-76 0 -120.5 -65t-44.5 -163t44.5 -162t119.5 -64zM254 405h210v-123h-210 +v123z" /> + <glyph glyph-name="Iota" unicode="&#x399;" horiz-adv-x="285" +d="M67 674h152v-674h-152v674z" /> + <glyph glyph-name="Kappa" unicode="&#x39a;" horiz-adv-x="614" +d="M66 0v674h151v-298h2q15 26 47 74l152 224h188l-223 -287l234 -387h-177l-166 291l-57 -71v-220h-151z" /> + <glyph glyph-name="Lambda" unicode="&#x39b;" horiz-adv-x="648" +d="M633 0h-166l-116 404l-35 144h-2q-3 -14 -13.5 -66t-16.5 -79l-107 -403h-160l206 674h197z" /> + <glyph glyph-name="Mu" unicode="&#x39c;" horiz-adv-x="846" +d="M647 0l-11 258q-6 162 -6 277h-2q-35 -135 -76 -261l-82 -263h-119l-72 261q-34 123 -61 263h-2q-5 -156 -11 -279l-13 -256h-141l43 674h203l66 -225q34 -122 57 -241h4q31 135 64 242l71 224h200l36 -674h-148z" /> + <glyph glyph-name="Nu" unicode="&#x39d;" horiz-adv-x="690" +d="M206 0h-140v674h178l140 -247q57 -101 110 -231h2q-12 119 -12 282v196h140v-674h-160l-144 260q-79 144 -117 238h-4q7 -126 7 -295v-203z" /> + <glyph glyph-name="Xi" unicode="&#x39e;" horiz-adv-x="574" +d="M56 674h467v-124h-467v124zM87 407h404v-123h-404v123zM42 125h495v-125h-495v125z" /> + <glyph glyph-name="Omicron" unicode="&#x39f;" horiz-adv-x="717" +d="M353 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM359 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64z" /> + <glyph glyph-name="Pi" unicode="&#x3a0;" horiz-adv-x="667" +d="M600 674v-674h-152v546h-229v-546h-152v674h533z" /> + <glyph glyph-name="Rho" unicode="&#x3a1;" horiz-adv-x="581" +d="M66 0v665q82 14 206 14q139 0 206 -55q72 -54 72 -155q0 -104 -62 -160q-77 -71 -219 -71q-33 0 -52 4v-242h-151zM217 558v-199q17 -4 51 -4q61 0 96 29t35 80q0 47 -31.5 73t-88.5 26q-44 0 -62 -5z" /> + <glyph glyph-name="Sigma" unicode="&#x3a3;" horiz-adv-x="578" +d="M224 129v-4h321v-125h-515v86l200 248l-189 241v99h479v-125h-285v-4l158 -205z" /> + <glyph glyph-name="Tau" unicode="&#x3a4;" horiz-adv-x="548" +d="M197 0v546h-182v128h518v-128h-184v-546h-152z" /> + <glyph glyph-name="Upsilon" unicode="&#x3a5;" horiz-adv-x="625" +d="M9 554l24 126q47 -1 101 -23.5t94 -66.5q73 -79 87 -216h7q17 124 95 210q39 42 88.5 68t89.5 28l24 -129q-71 -20 -132 -94.5t-85 -172.5q-17 -71 -17 -138v-146h-152v147q0 69 -11 132q-21 113 -74 186t-139 89z" /> + <glyph glyph-name="Phi" unicode="&#x3a6;" horiz-adv-x="785" +d="M462 27v-55h-142v55q-120 15 -203 93t-83 214q0 72 26.5 131t69.5 96.5t92 59.5t100 29v52h142v-52q119 -14 203 -94t84 -216q0 -135 -83.5 -216t-205.5 -97zM321 134v410q-53 -10 -93.5 -64t-40.5 -146q0 -83 40.5 -136.5t93.5 -63.5zM463 544v-410q55 10 95 60.5 +t40 141.5q0 93 -40 146t-95 62z" /> + <glyph glyph-name="Chi" unicode="&#x3a7;" horiz-adv-x="613" +d="M597 0h-176l-61 122q-12 24 -60 121h-2q-17 -48 -53 -121l-55 -122h-174l195 341l-188 333h175l59 -123q28 -58 51 -112h2q16 44 46 112l57 123h174l-190 -329z" /> + <glyph glyph-name="Psi" unicode="&#x3a8;" horiz-adv-x="742" +d="M701 674v-195q0 -143 -72 -215.5t-188 -79.5v-184h-139v184q-114 7 -187 71t-73 191v228h146v-205q0 -162 114 -169v374h139v-375q114 9 114 202v173h146z" /> + <glyph glyph-name="Omega" unicode="&#x3a9;" horiz-adv-x="744" +d="M577 119v-4h134v-115h-296v88q128 99 127 262q0 89 -45.5 151.5t-121.5 62.5t-124 -62t-48 -153q0 -80 37 -153.5t91 -107.5v-88h-299v115h132v4q-50 40 -85 104t-35 146q0 134 94 225t240 91q148 0 234.5 -90t86.5 -215q0 -157 -122 -261z" /> + <glyph glyph-name="Omega" unicode="&#x2126;" horiz-adv-x="744" +d="M577 119v-4h134v-115h-296v88q128 99 127 262q0 89 -45.5 151.5t-121.5 62.5t-124 -62t-48 -153q0 -80 37 -153.5t91 -107.5v-88h-299v115h132v4q-50 40 -85 104t-35 146q0 134 94 225t240 91q148 0 234.5 -90t86.5 -215q0 -157 -122 -261z" /> + <glyph glyph-name="Iotadieresis" unicode="&#x3aa;" horiz-adv-x="285" +d="M41 714h-1q-28 0 -48 20t-20 48q0 29 20 48.5t49 19.5q28 0 47 -19.5t19 -48.5q0 -28 -19 -48t-47 -20zM245 714h-1q-29 0 -47.5 20t-18.5 48q0 29 19 48.5t48 19.5t48 -19.5t19 -48.5q0 -28 -19 -48t-48 -20zM67 674h152v-674h-152v674z" /> + <glyph glyph-name="Upsilondieresis" unicode="&#x3ab;" horiz-adv-x="625" +d="M215 698h-1q-28 0 -48 20t-20 48q0 29 20 48.5t49 19.5q28 0 47 -19.5t19 -48.5q0 -28 -19 -48t-47 -20zM419 698h-1q-29 0 -47.5 20t-18.5 48q0 29 19 48.5t48 19.5t48 -19.5t19 -48.5q0 -28 -19 -48t-48 -20zM9 554l24 126q47 -1 101 -23.5t94 -66.5q73 -79 87 -216h7 +q17 124 95 210q39 42 88.5 68t89.5 28l24 -129q-71 -20 -132 -94.5t-85 -172.5q-17 -71 -17 -138v-146h-152v147q0 69 -11 132q-21 113 -74 186t-139 89z" /> + <glyph glyph-name="alphatonos" unicode="&#x3ac;" horiz-adv-x="583" +d="M286 700h134l-81 -152h-99zM404 489h128q-14 -154 -14 -319q0 -39 12 -54t33 -13l-8 -106q-18 -8 -53 -8q-86 0 -106 89h-2q-53 -89 -158 -89q-86 0 -144.5 67.5t-58.5 177.5q0 118 67 192t155 74q93 0 134 -75h4q4 31 11 64zM187 242v-1q0 -57 26 -94.5t66 -37.5 +q32 0 56.5 26.5t32.5 64.5q3 26 3 49q0 29 -2 41q-7 42 -30.5 68t-55.5 26q-43 0 -69.5 -41t-26.5 -101z" /> + <glyph glyph-name="epsilontonos" unicode="&#x3ad;" horiz-adv-x="468" +d="M245 700h134l-81 -152h-99zM140 257v5q-84 27 -84 101q0 56 55 96.5t158 40.5q99 0 164 -37l-26 -96q-52 27 -115 27q-39 0 -61 -12.5t-22 -33.5q0 -41 112 -43h48v-99h-48q-124 -2 -124 -49q0 -28 28 -42t69 -14q70 0 132 30l21 -98q-73 -44 -193 -44q-91 0 -156 37 +t-65 114q0 44 31 76t76 41z" /> + <glyph glyph-name="etatonos" unicode="&#x3ae;" horiz-adv-x="586" +d="M288 700h134l-81 -152h-99zM196 421h3q19 31 57.5 55t93.5 24q79 0 127 -53.5t48 -157.5v-315q0 -134 10 -172h-144q-18 31 -18 173v296q0 106 -77 106q-56 0 -78 -57q-5 -12 -5 -38v-282h-152v333q0 109 -16 156h134q16 -29 17 -68z" /> + <glyph glyph-name="iotatonos" unicode="&#x3af;" horiz-adv-x="280" +d="M130 701h136l-81 -152h-101zM213 489v-336q0 -27 10.5 -38.5t34.5 -9.5l-7 -106q-22 -10 -64 -10q-63 0 -94.5 33t-31.5 116v351h152z" /> + <glyph glyph-name="upsilondieresistonos" unicode="&#x3b0;" horiz-adv-x="558" +d="M341 489h142q37 -74 37 -187q0 -61 -13 -114t-40.5 -99t-78 -73t-119.5 -27q-96 0 -156 54t-60 157v126q0 123 -12 163h148q16 -17 16 -95v-184q0 -47 22 -72.5t55 -25.5q46 0 67.5 50.5t21.5 130.5q0 57 -10 113.5t-20 82.5zM239 718h112l-56 -173h-77zM129 553h-1 +q-26 0 -44 18t-18 43q0 27 18 44.5t45 17.5q26 0 43 -17.5t17 -43.5t-17.5 -44t-42.5 -18zM423 553h-1q-26 0 -43.5 18t-17.5 43q0 27 18 44.5t44 17.5t44 -17.5t18 -43.5t-17.5 -44t-44.5 -18z" /> + <glyph glyph-name="alpha" unicode="&#x3b1;" horiz-adv-x="583" +d="M404 489h128q-14 -154 -14 -319q0 -39 12 -54t33 -13l-8 -106q-18 -8 -53 -8q-86 0 -106 89h-2q-53 -89 -158 -89q-86 0 -144.5 67.5t-58.5 177.5q0 118 67 192t155 74q93 0 134 -75h4q4 31 11 64zM187 242v-1q0 -57 26 -94.5t66 -37.5q32 0 56.5 26.5t32.5 64.5 +q3 26 3 49q0 29 -2 41q-7 42 -30.5 68t-55.5 26q-43 0 -69.5 -41t-26.5 -101z" /> + <glyph glyph-name="beta" unicode="&#x3b2;" horiz-adv-x="587" +d="M208 34h-2v-58q0 -125 12 -174h-141q-19 39 -19 171v440q0 175 79 248q63 60 164 60q93 0 145.5 -52t52.5 -131q0 -45 -21.5 -87.5t-58.5 -61.5v-6q55 -13 94.5 -63t39.5 -120q0 -94 -60.5 -152.5t-150.5 -58.5q-85 0 -134 45zM205 441v-287q39 -51 98 -51q46 0 71.5 30 +t25.5 73q0 49 -30.5 78t-77.5 33h-7h-8.5h-6.5v94q11 0 17 2q35 7 55.5 35t20.5 66q0 39 -19.5 64t-51.5 25q-87 0 -87 -162z" /> + <glyph glyph-name="gamma" unicode="&#x3b3;" horiz-adv-x="515" +d="M320 -198h-147q4 181 -17 279q-40 197 -168 408h168q29 -45 64 -141.5t53 -192.5h4q74 161 74 290q0 13 -0.5 27t-0.5 17h144q2 -10 2 -38q0 -90 -47 -204t-126 -228q-6 -9 -6 -24q0 -13 3 -193z" /> + <glyph glyph-name="delta" unicode="&#x3b4;" horiz-adv-x="576" +d="M501 672l-39 -95q-17 12 -53.5 24t-71.5 12q-55 0 -55 -26q0 -10 12 -22t45 -38l82 -65q121 -97 121 -221q0 -113 -74 -182.5t-185 -69.5q-107 0 -178.5 67t-71.5 175q0 154 164 235v4l-19 17q-54 51 -54 102q0 52 54 92t145 40q57 0 105 -15t73 -34zM325 357l-46 38 +q-90 -55 -90 -161q0 -57 30 -96.5t74 -39.5q42 0 69.5 36t27.5 94q0 75 -65 129z" /> + <glyph glyph-name="epsilon" unicode="&#x3b5;" horiz-adv-x="468" +d="M140 257v5q-84 27 -84 101q0 56 55 96.5t158 40.5q102 0 164 -37l-26 -96q-52 27 -115 27q-39 0 -61 -12.5t-22 -33.5q0 -41 112 -43h48v-99h-48q-124 -2 -124 -49q0 -28 28 -42t69 -14q72 0 132 31l21 -99q-73 -44 -193 -44q-91 0 -156 37t-65 114q0 44 31 76t76 41z +" /> + <glyph glyph-name="zeta" unicode="&#x3b6;" horiz-adv-x="441" +d="M361 -153l-94 30q8 17 16.5 49t9.5 50q-63 10 -111 29q-147 56 -147 219q0 97 53.5 195.5t148.5 175.5v5h-47q-74 0 -112 13l15 96q31 -3 139 -3h186l21 -99q-100 -45 -174 -148t-74 -206t85 -142q41 -21 148 -38q10 -2 10 -13q0 -51 -22 -114t-51 -99z" /> + <glyph glyph-name="eta" unicode="&#x3b7;" horiz-adv-x="586" +d="M196 421h3q19 31 57.5 55t93.5 24q79 0 127 -53.5t48 -157.5v-315q0 -134 10 -172h-144q-18 31 -18 173v296q0 106 -77 106q-56 0 -78 -57q-5 -12 -5 -38v-282h-152v333q0 109 -16 156h134q16 -29 17 -68z" /> + <glyph glyph-name="theta" unicode="&#x3b8;" horiz-adv-x="570" +d="M285 -11h-1q-120 0 -185.5 95t-65.5 276q0 160 67 260.5t192 100.5q122 0 183.5 -97t61.5 -264q0 -172 -63.5 -271.5t-188.5 -99.5zM183 416h203q0 88 -26 143.5t-74 55.5q-49 0 -76 -56t-27 -143zM388 308h-204q0 -99 27 -156t77 -57t75 57t25 156z" /> + <glyph glyph-name="iota" unicode="&#x3b9;" horiz-adv-x="280" +d="M213 489v-336q0 -27 10.5 -38.5t34.5 -9.5l-7 -106q-22 -10 -64 -10q-63 0 -94.5 33t-31.5 116v351h152z" /> + <glyph glyph-name="kappa" unicode="&#x3ba;" horiz-adv-x="548" +d="M344 267v-4q31 -8 58.5 -40t61.5 -89l78 -134h-175l-54 98q-30 51 -50 75.5t-43 25.5h-7v-199h-152v364q0 99 -14 125h150q16 -18 16 -87v-117h3q44 54 147 204h173v-5z" /> + <glyph glyph-name="lambda" unicode="&#x3bb;" horiz-adv-x="518" +d="M351 0l-67 222q-15 49 -28 104h-5q-5 -27 -24 -102l-65 -224h-158l171 450q5 12 5 25q0 10 -5 25q-17 44 -44.5 70.5t-58.5 26.5h-22l14 115q15 6 50 6q77 0 126 -57.5t89 -165.5l184 -495h-162z" /> + <glyph glyph-name="uni03BC" unicode="&#x3bc;" horiz-adv-x="585" +d="M391 67h-3q-14 -30 -45.5 -52t-75.5 -22q-43 0 -69 29v-42q0 -126 11 -178h-134q-14 34 -14 177v510h152v-273q0 -105 74 -105q27 0 49 16.5t30 37.5q5 11 5 33v291h152v-330q0 -31 9.5 -43t31.5 -13l-8 -105q-18 -9 -55 -9q-87 0 -110 78z" /> + <glyph glyph-name="nu" unicode="&#x3bd;" horiz-adv-x="510" +d="M-1 489h164l65 -227q7 -23 17 -64.5t14 -56.5h4q83 179 83 309q0 25 -1 39h143q3 -18 3 -38q0 -163 -175 -451h-147z" /> + <glyph glyph-name="xi" unicode="&#x3be;" horiz-adv-x="472" +d="M395 436v-103h-27q-84 0 -129 -31t-45 -85q0 -43 31.5 -72t100.5 -47q53 -14 127 -25q12 -1 12 -13q0 -45 -22.5 -110.5t-50.5 -101.5l-95 30q8 16 15.5 47.5t8.5 50.5q-43 7 -76 14.5t-75.5 24.5t-70 39.5t-47 60t-19.5 85.5q0 71 42.5 124t109.5 71v6q-50 19 -77 56.5 +t-27 85.5q0 74 60.5 126t169.5 52q82 0 139 -27l-24 -99q-43 19 -90 19q-49 0 -76 -25t-27 -62q0 -80 129 -90q10 -1 33 -1z" /> + <glyph glyph-name="omicron" unicode="&#x3bf;" horiz-adv-x="577" +d="M287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41z" /> + <glyph glyph-name="pi" unicode="&#x3c0;" horiz-adv-x="600" +d="M569 374h-59v-221q0 -100 12 -153h-146q-17 26 -17 142v232h-106q-2 -94 -17.5 -207.5t-37.5 -166.5h-145q22 73 38 184.5t15 189.5q-58 0 -87 -7l-16 88q36 34 174 34h406z" /> + <glyph glyph-name="rho" unicode="&#x3c1;" horiz-adv-x="591" +d="M211 37h-2v-63q0 -134 7 -172h-147q-12 38 -12 173v222q0 166 93 245q70 58 166 58q109 0 175.5 -69.5t66.5 -183.5q0 -121 -68 -189.5t-159 -68.5q-82 0 -120 48zM209 232v-36q0 -15 3 -30q8 -24 33 -42t56 -18q48 0 75.5 38.5t27.5 99.5q0 59 -26 95t-70 36 +t-71.5 -37.5t-27.5 -105.5z" /> + <glyph glyph-name="uni03C2" unicode="&#x3c2;" horiz-adv-x="458" +d="M443 476l-29 -107q-45 17 -87 17q-60 0 -98.5 -41.5t-38.5 -105.5q0 -99 103 -132q45 -15 139 -32q9 -1 9 -14q0 -51 -22 -117t-49 -97l-95 31q18 37 26 98q-65 15 -76 18q-192 54 -192 235q0 110 77 190.5t210 80.5q75 0 123 -24z" /> + <glyph glyph-name="sigma" unicode="&#x3c3;" horiz-adv-x="594" +d="M472 396l-1 -5q31 -27 47.5 -68.5t16.5 -80.5q0 -124 -72 -188.5t-177 -64.5q-110 0 -181.5 67t-71.5 183q0 119 73 190t198 71h94h75h112l-6 -110q-33 0 -107 6zM289 98h1q43 0 69 41t26 107q0 60 -23.5 102.5t-70.5 42.5q-51 0 -76 -43t-25 -104q0 -64 26 -105t73 -41z +" /> + <glyph glyph-name="tau" unicode="&#x3c4;" horiz-adv-x="452" +d="M364 106l-6 -106q-24 -11 -70 -11q-79 0 -112 42t-33 131v212h-41q-55 0 -92 -7l-19 89q43 33 172 33h279l-14 -115h-133v-202q0 -66 50 -66h19z" /> + <glyph glyph-name="upsilon" unicode="&#x3c5;" horiz-adv-x="558" +d="M341 489h142q37 -74 37 -187q0 -61 -13 -114t-40.5 -99t-78 -73t-119.5 -27q-96 0 -156 54t-60 157v126q0 123 -12 163h148q16 -17 16 -95v-184q0 -47 22 -72.5t55 -25.5q46 0 67.5 50.5t21.5 130.5q0 57 -10 113.5t-20 82.5z" /> + <glyph glyph-name="phi" unicode="&#x3c6;" horiz-adv-x="711" +d="M212 501l57 -81q-36 -25 -60.5 -68.5t-24.5 -100.5q0 -61 29 -103.5t79 -53.5v231q0 89 47.5 132.5t115.5 41.5q90 -2 156 -70t66 -174q0 -59 -22 -108.5t-58.5 -81.5t-80 -51t-90.5 -24v-188h-134v188q-51 4 -96 21.5t-82 47.5t-59 79t-22 110q0 95 57 163.5t122 89.5z +M426 356v-264q48 9 77.5 51t29.5 109q0 60 -25 101.5t-56 41.5q-26 0 -26 -39z" /> + <glyph glyph-name="chi" unicode="&#x3c7;" horiz-adv-x="504" +d="M5 489h163l95 -221h4q24 63 34 86l56 135h145l-169 -332l170 -350l-144 -33l-115 255h-5q-3 -8 -15.5 -39t-22.5 -54l-72 -162l-129 34l173 348z" /> + <glyph glyph-name="psi" unicode="&#x3c8;" horiz-adv-x="726" +d="M302 -198v187q-246 17 -246 267v108q0 88 -7 125h138q14 -18 14 -95v-126q0 -164 101 -173v522h135v-522q51 1 79 57t28 136q0 67 -10 123t-21 78h135q40 -76 40 -192q0 -58 -13.5 -109t-42 -95t-78.5 -72t-117 -32v-187h-135z" /> + <glyph glyph-name="omega" unicode="&#x3c9;" horiz-adv-x="733" +d="M436 374l-3 -179q0 -34 13 -56.5t36 -22.5q31 0 50.5 40t19.5 112q0 63 -18 123t-51 97v3h138q31 -30 55 -92.5t24 -137.5q0 -127 -58 -199.5t-146 -72.5q-43 0 -79 20.5t-52 56.5h-4q-45 -77 -132 -77q-81 0 -138.5 68t-57.5 192q0 78 23.5 140.5t57.5 101.5h137v-3 +q-71 -91 -71 -229q0 -70 20.5 -106.5t48.5 -36.5q22 0 35 22.5t12 56.5l-2 179h142z" /> + <glyph glyph-name="iotadieresis" unicode="&#x3ca;" horiz-adv-x="280" +d="M40 547h-1q-29 0 -49 20t-20 49q0 30 20 49.5t50 19.5q28 0 47 -19.5t19 -49.5q0 -29 -19 -49t-47 -20zM245 547h-1q-30 0 -49.5 20t-19.5 49q0 30 20 49.5t50 19.5q29 0 48 -19.5t19 -49.5q0 -29 -19 -49t-48 -20zM213 489v-336q0 -27 10.5 -38.5t34.5 -9.5l-7 -106 +q-22 -10 -64 -10q-63 0 -94.5 33t-31.5 116v351h152z" /> + <glyph glyph-name="upsilondieresis" unicode="&#x3cb;" horiz-adv-x="558" +d="M170 547h-1q-30 0 -49.5 20t-19.5 49q0 30 20 49.5t50 19.5q28 0 47 -19.5t19 -49.5q0 -29 -19 -49t-47 -20zM375 547h-1q-30 0 -49 20t-19 49q0 30 19.5 49.5t49.5 19.5q29 0 48 -19.5t19 -49.5q0 -29 -19 -49t-48 -20zM341 489h142q37 -74 37 -187q0 -61 -13 -114 +t-40.5 -99t-78 -73t-119.5 -27q-96 0 -156 54t-60 157v126q0 123 -12 163h148q16 -17 16 -95v-184q0 -47 22 -72.5t55 -25.5q46 0 67.5 50.5t21.5 130.5q0 57 -10 113.5t-20 82.5z" /> + <glyph glyph-name="omicrontonos" unicode="&#x3cc;" horiz-adv-x="577" +d="M283 700h134l-81 -152h-99zM287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41z" /> + <glyph glyph-name="upsilontonos" unicode="&#x3cd;" horiz-adv-x="558" +d="M266 701h137l-82 -152h-101zM341 489h142q37 -74 37 -187q0 -61 -13 -114t-40.5 -99t-78 -73t-119.5 -27q-96 0 -156 54t-60 157v126q0 123 -12 163h148q16 -17 16 -95v-184q0 -47 22 -72.5t55 -25.5q46 0 67.5 50.5t21.5 130.5q0 57 -10 113.5t-20 82.5z" /> + <glyph glyph-name="omegatonos" unicode="&#x3ce;" horiz-adv-x="733" +d="M360 700h134l-81 -152h-99zM436 374l-3 -179q0 -34 13 -56.5t36 -22.5q31 0 50.5 40t19.5 112q0 63 -18 123t-51 97v3h138q31 -30 55 -92.5t24 -137.5q0 -127 -58 -199.5t-146 -72.5q-43 0 -79 20.5t-52 56.5h-4q-45 -77 -132 -77q-81 0 -138.5 68t-57.5 192 +q0 78 23.5 140.5t57.5 101.5h137v-3q-71 -91 -71 -229q0 -70 20.5 -106.5t48.5 -36.5q22 0 35 22.5t12 56.5l-2 179h142z" /> + <glyph glyph-name="afii10023" unicode="&#x401;" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248zM169 713h-1q-28 0 -48 20t-20 48q0 29 20 49t49 20q28 0 47 -19.5t19 -49.5q0 -28 -19 -48t-47 -20zM376 713h-1q-29 0 -48 20t-19 48q0 29 19.5 49t48.5 20t48 -19.5t19 -49.5q0 -28 -19 -48t-48 -20 +z" /> + <glyph glyph-name="afii10051" unicode="&#x402;" horiz-adv-x="722" +d="M14 674h562v-125h-235v-127h4q52 29 118 29q102 0 165 -80q59 -74 59 -199q0 -94 -37 -165t-106 -107q-56 -43 -124 -52l-23 125q59 15 89 48q41 46 41 141q0 86 -30 125q-31 41 -82 41q-41 0 -74 -23v-305h-152v549h-175v125z" /> + <glyph glyph-name="afii10052" unicode="&#x403;" horiz-adv-x="489" +d="M67 674h407v-125h-255v-549h-152v674zM274 833h160l-122 -123h-122z" /> + <glyph glyph-name="afii10053" unicode="&#x404;" horiz-adv-x="595" +d="M567 650l-31 -115q-58 27 -133 27q-87 0 -139.5 -45.5t-64.5 -116.5h306v-119h-305q8 -75 64.5 -121t146.5 -46q71 0 127 23l23 -115q-66 -33 -173 -33q-165 0 -259 93t-94 253q0 69 23 131t66.5 111.5t113.5 78.5t158 29q106 0 171 -35z" /> + <glyph glyph-name="afii10054" unicode="&#x405;" horiz-adv-x="540" +d="M40 32l31 125q80 -42 169 -42q52 0 79.5 19.5t27.5 53.5q0 31 -25.5 52t-87.5 42q-186 66 -186 200q0 88 69.5 145t185.5 57q100 0 172 -34l-34 -122q-64 32 -140 32q-47 0 -72.5 -19t-25.5 -46q0 -30 27 -49t98 -46q90 -33 132 -81.5t42 -119.5q0 -90 -69.5 -149.5 +t-201.5 -59.5q-55 0 -107.5 12.5t-83.5 29.5z" /> + <glyph glyph-name="afii10055" unicode="&#x406;" horiz-adv-x="285" +d="M67 674h152v-674h-152v674z" /> + <glyph glyph-name="afii10056" unicode="&#x407;" horiz-adv-x="285" +d="M67 674h152v-674h-152v674zM40 713h-1q-28 0 -48 20t-20 48q0 29 20 49t49 20q28 0 47 -19.5t19 -49.5q0 -28 -19 -48t-47 -20zM247 713h-1q-29 0 -48 20t-19 48q0 29 19.5 49t48.5 20t48 -19.5t19 -49.5q0 -28 -19 -48t-48 -20z" /> + <glyph glyph-name="afii10057" unicode="&#x408;" horiz-adv-x="411" +d="M198 249v425h152v-426q0 -138 -61.5 -198.5t-177.5 -60.5q-64 0 -112 16l17 123q36 -12 78 -12q52 0 78 29.5t26 103.5z" /> + <glyph glyph-name="afii10058" unicode="&#x409;" horiz-adv-x="945" +d="M124 674h442v-240q37 5 80 5q111 0 187.5 -55t76.5 -161q0 -96 -65 -154q-85 -76 -268 -76q-94 0 -162 10v546h-143v-160q0 -145 -26 -235t-97 -132q-59 -33 -133 -33l-20 122q48 7 77 38q51 53 51 231v294zM566 323v-213q18 -3 52 -3q56 0 95 30t39 83q0 54 -37 80.5 +t-95 26.5q-20 0 -54 -4z" /> + <glyph glyph-name="afii10059" unicode="&#x40a;" horiz-adv-x="954" +d="M67 674h152v-251h205v251h151v-243q38 5 83 5q113 0 187 -54.5t74 -158.5q0 -96 -65 -154q-85 -76 -267 -76q-95 0 -163 10v292h-205v-295h-152v674zM575 320v-209q24 -4 54 -4q57 0 94.5 29.5t37.5 82.5t-36.5 79t-93.5 26q-22 0 -56 -4z" /> + <glyph glyph-name="afii10060" unicode="&#x40b;" horiz-adv-x="730" +d="M15 674h551v-125h-225v-136h3q65 40 143 40q85 0 132 -52q50 -54 50 -160v-241h-152v221q0 59 -24 84q-22 25 -63 25q-51 0 -89 -30v-300h-152v549h-174v125z" /> + <glyph glyph-name="afii10061" unicode="&#x40c;" horiz-adv-x="605" +d="M67 674h150v-281h14l185 281h185l-235 -300q61 -15 96 -55t58 -107q54 -161 78 -212h-164q-13 26 -52 148q-20 66 -49.5 100t-86.5 34h-29v-282h-150v674zM312 828h160l-122 -123h-122z" /> + <glyph glyph-name="afii10062" unicode="&#x40e;" horiz-adv-x="588" +d="M3 675h171l98 -243q8 -21 48 -129h3q4 14 16 58t21 74l73 240h160l-126 -333q-28 -70 -43.5 -106t-41 -84.5t-49.5 -77.5q-71 -89 -179 -89q-44 0 -74 11l10 122q22 -5 51 -5q33 0 56.5 18t34.5 44q6 14 -2 32zM148 829h103q3 -61 45 -61q41 0 46 61h103 +q-9 -123 -152 -123q-133 0 -145 123z" /> + <glyph glyph-name="afii10145" unicode="&#x40f;" horiz-adv-x="674" +d="M67 674h152v-549h237v549h152v-674h-200l-8 -184h-125l-8 184h-200v674z" /> + <glyph glyph-name="afii10017" unicode="&#x410;" horiz-adv-x="656" +d="M416 173h-194l-47 -173h-158l206 674h199l210 -674h-164zM244 287h149l-42 143q-6 24 -18.5 73.5t-14.5 56.5h-3q-24 -106 -30 -130z" /> + <glyph glyph-name="afii10018" unicode="&#x411;" horiz-adv-x="603" +d="M67 674h447v-124h-296v-116q38 5 82 5q116 0 190 -54q78 -56 78 -162q0 -96 -64 -153q-88 -77 -274 -77q-95 0 -163 10v671zM218 323v-212q23 -4 58 -4q60 0 99 34q33 31 33 79q0 49 -36 77q-39 30 -101 30q-17 0 -53 -4z" /> + <glyph glyph-name="afii10019" unicode="&#x412;" horiz-adv-x="604" +d="M66 3v661q75 15 197 15q135 0 199 -38q80 -43 80 -133q0 -46 -28 -84t-82 -59v-2q60 -16 97 -59.5t37 -106.5q0 -88 -70 -143q-77 -61 -265 -61q-97 0 -165 10zM217 563v-156h50q60 0 91.5 22.5t31.5 60.5q0 78 -108 78q-45 0 -65 -5zM217 298v-190q15 -3 59 -3 +q57 0 93.5 24t36.5 74q0 48 -38 71.5t-99 23.5h-52z" /> + <glyph glyph-name="afii10020" unicode="&#x413;" horiz-adv-x="489" +d="M67 674h407v-125h-255v-549h-152v674z" /> + <glyph glyph-name="afii10021" unicode="&#x414;" horiz-adv-x="688" +d="M160 674h441v-554l66 -4l-7 -286h-114l-8 170h-395l-8 -170h-116l-6 286l57 4q42 74 64 150q26 98 26 224v180zM301 550v-89q0 -121 -30 -223q-17 -60 -46 -115h224v427h-148z" /> + <glyph glyph-name="afii10022" unicode="&#x415;" horiz-adv-x="534" +d="M467 409v-124h-248v-160h277v-125h-429v674h415v-125h-263v-140h248z" /> + <glyph glyph-name="afii10024" unicode="&#x416;" horiz-adv-x="875" +d="M6 674h177l168 -280h13v280h147v-280h13l168 280h177l-230 -301q64 -7 102.5 -49.5t61.5 -114.5q4 -11 28 -90.5t42 -118.5h-154q-15 32 -49 149q-18 63 -48.5 98t-87.5 35h-23v-282h-147v282h-24q-56 0 -86.5 -35t-49.5 -98q-36 -123 -48 -149h-153q13 30 24.5 63.5 +t25.5 78t20 63.5q24 71 61.5 113.5t100.5 54.5z" /> + <glyph glyph-name="afii10025" unicode="&#x417;" horiz-adv-x="544" +d="M77 523l-35 108q89 54 210 54q108 0 171 -48.5t63 -124.5q0 -61 -37 -102.5t-98 -56.5v-2q66 -9 111.5 -51.5t45.5 -107.5q0 -54 -25 -95t-66.5 -63.5t-88.5 -33.5t-97 -11q-120 0 -202 47l32 118q28 -15 74 -28t89 -13q58 0 91 23.5t33 65.5q0 89 -141 89h-64v112h63 +q53 0 87 22.5t34 62.5q0 34 -27 54t-75 20q-70 0 -148 -39z" /> + <glyph glyph-name="afii10026" unicode="&#x418;" horiz-adv-x="690" +d="M66 674h140v-200q0 -161 -8 -305h3q56 124 121 240l145 265h156v-674h-140v199q0 176 11 284h-3q-45 -115 -115 -240l-137 -243h-173v674z" /> + <glyph glyph-name="afii10027" unicode="&#x419;" horiz-adv-x="690" +d="M66 674h140v-200q0 -161 -8 -305h3q56 124 121 240l145 265h156v-674h-140v199q0 176 11 284h-3q-45 -115 -115 -240l-137 -243h-173v674zM197 828h103q3 -61 45 -61q41 0 46 61h103q-9 -123 -152 -123q-133 0 -145 123z" /> + <glyph glyph-name="afii10028" unicode="&#x41a;" horiz-adv-x="605" +d="M67 674h150v-281h14l185 281h185l-235 -300q61 -15 96 -55t58 -107q54 -161 78 -212h-164q-13 26 -52 148q-20 66 -49.5 100t-86.5 34h-29v-282h-150v674z" /> + <glyph glyph-name="afii10029" unicode="&#x41b;" horiz-adv-x="645" +d="M124 674h454v-674h-152v549h-153v-160q0 -144 -26.5 -234.5t-97.5 -132.5q-59 -33 -134 -33l-19 123q49 6 77 36q51 52 51 231v295z" /> + <glyph glyph-name="afii10030" unicode="&#x41c;" horiz-adv-x="846" +d="M647 0l-11 258q-6 162 -6 277h-2q-35 -135 -76 -261l-82 -263h-119l-72 261q-34 123 -61 263h-2q-5 -156 -11 -279l-13 -256h-141l43 674h203l66 -225q34 -122 57 -241h4q31 135 64 242l71 224h200l36 -674h-148z" /> + <glyph glyph-name="afii10031" unicode="&#x41d;" horiz-adv-x="689" +d="M67 674h152v-260h251v260h152v-674h-152v281h-251v-281h-152v674z" /> + <glyph glyph-name="afii10032" unicode="&#x41e;" horiz-adv-x="717" +d="M353 -11h-1q-146 0 -231.5 97.5t-85.5 245.5q0 153 90.5 253t237.5 100q150 0 235 -97.5t85 -243.5q0 -165 -90.5 -260t-239.5 -95zM359 110h1q76 0 119 64t43 165q0 95 -43 160t-119 65t-120 -65t-44 -163t44 -162t119 -64z" /> + <glyph glyph-name="afii10033" unicode="&#x41f;" horiz-adv-x="677" +d="M67 674h544v-674h-152v549h-240v-549h-152v674z" /> + <glyph glyph-name="afii10034" unicode="&#x420;" horiz-adv-x="581" +d="M66 0v665q82 14 206 14q139 0 206 -55q72 -54 72 -155q0 -104 -62 -160q-77 -71 -219 -71q-33 0 -52 4v-242h-151zM217 558v-199q17 -4 51 -4q61 0 96 29t35 80q0 47 -31.5 73t-88.5 26q-44 0 -62 -5z" /> + <glyph glyph-name="afii10035" unicode="&#x421;" horiz-adv-x="595" +d="M538 139l22 -120q-60 -29 -172 -29q-169 0 -261 94t-92 244q0 166 104.5 261t263.5 95q106 0 166 -29l-32 -121q-58 25 -128 25q-95 0 -154.5 -57.5t-59.5 -165.5q0 -101 57 -160t158 -59q76 0 128 22z" /> + <glyph glyph-name="afii10036" unicode="&#x422;" horiz-adv-x="548" +d="M197 0v546h-182v128h518v-128h-184v-546h-152z" /> + <glyph glyph-name="afii10037" unicode="&#x423;" horiz-adv-x="588" +d="M3 675h171l98 -243q8 -21 48 -129h3q4 14 16 58t21 74l73 240h160l-126 -333q-28 -70 -43.5 -106t-41 -84.5t-49.5 -77.5q-71 -89 -179 -89q-44 0 -74 11l10 122q22 -5 51 -5q33 0 56.5 18t34.5 44q6 14 -2 32z" /> + <glyph glyph-name="afii10038" unicode="&#x424;" horiz-adv-x="789" +d="M324 703h142v-59q57 -4 106.5 -23t91.5 -54t66 -93.5t24 -134.5q0 -75 -24 -133t-65.5 -93.5t-91.5 -54.5t-109 -25v-61h-142v61q-57 4 -106.5 23t-91 53.5t-65.5 92t-24 132.5q0 77 26.5 136.5t70 95t92 55t100.5 23.5v59zM323 139v400q-54 -7 -94.5 -56t-40.5 -146 +q0 -91 41.5 -141.5t93.5 -56.5zM465 539v-400q54 6 95 54.5t41 145.5t-40 145t-96 55z" /> + <glyph glyph-name="afii10039" unicode="&#x425;" horiz-adv-x="613" +d="M597 0h-176l-61 122q-12 24 -60 121h-2q-12 -33 -53 -121l-55 -122h-174l195 341l-188 333h175l59 -123q28 -58 51 -112h2q16 44 46 112l57 123h174l-190 -329z" /> + <glyph glyph-name="afii10040" unicode="&#x426;" horiz-adv-x="694" +d="M67 674h152v-549h236v549h152v-554l67 -4l-7 -286h-115l-8 170h-477v674z" /> + <glyph glyph-name="afii10041" unicode="&#x427;" horiz-adv-x="642" +d="M60 674h152v-199q0 -115 113 -115q49 0 99 26v288h152v-683h-152v282h-3q-72 -34 -151 -34q-96 0 -153 52.5t-57 156.5v226z" /> + <glyph glyph-name="afii10042" unicode="&#x428;" horiz-adv-x="913" +d="M67 674h149v-549h166v549h149v-549h167v549h149v-674h-780v674z" /> + <glyph glyph-name="afii10043" unicode="&#x429;" horiz-adv-x="934" +d="M67 674h149v-549h166v549h149v-549h167v549h149v-554l67 -4l-7 -286h-115l-8 170h-717v674z" /> + <glyph glyph-name="afii10044" unicode="&#x42a;" horiz-adv-x="706" +d="M12 674h322v-234q48 5 81 5q106 0 181 -58t75 -162q0 -90 -54 -146q-85 -86 -270 -86q-96 0 -164 10v547h-171v124zM334 324v-213q19 -4 55 -4q54 0 88 30t34 83t-35 80.5t-87 27.5q-25 0 -55 -4z" /> + <glyph glyph-name="afii10045" unicode="&#x42b;" horiz-adv-x="852" +d="M67 674h151v-235q40 6 75 6q113 0 190 -56.5t77 -164.5q0 -89 -54 -145q-85 -86 -276 -86q-95 0 -163 10v671zM218 324v-213q16 -4 51 -4q54 0 92.5 30t38.5 83t-39.5 80.5t-89.5 27.5q-23 0 -53 -4zM622 674h152v-674h-152v674z" /> + <glyph glyph-name="afii10046" unicode="&#x42c;" horiz-adv-x="603" +d="M67 674h151v-235q42 6 82 6q116 0 192 -56t76 -163q0 -91 -54 -147q-85 -86 -282 -86q-97 0 -165 10v671zM218 324v-213q23 -4 56 -4q59 0 96.5 28.5t37.5 83.5t-36.5 82t-95.5 27q-22 0 -58 -4z" /> + <glyph glyph-name="afii10047" unicode="&#x42d;" horiz-adv-x="587" +d="M99 282v119h289q-8 71 -56 116t-129 45q-70 0 -138 -28l-30 113q87 38 180 38q86 0 152 -28t105.5 -77t59.5 -110.5t20 -133.5q0 -165 -99 -256t-253 -91q-103 0 -173 32l27 117q58 -24 134 -24q84 0 137.5 46.5t61.5 121.5h-288z" /> + <glyph glyph-name="afii10048" unicode="&#x42e;" horiz-adv-x="921" +d="M66 674h152v-263h81q21 124 99.5 199t195.5 75q137 0 215.5 -97.5t78.5 -243.5q0 -164 -83.5 -259.5t-220.5 -95.5q-122 0 -199 81t-90 213h-77v-283h-152v674zM589 109h1q68 0 106 64.5t38 165.5q0 96 -38 161t-106 65t-107 -65.5t-39 -163.5t39 -162.5t106 -64.5z" /> + <glyph glyph-name="afii10049" unicode="&#x42f;" horiz-adv-x="600" +d="M170 0h-162q19 30 34 76q5 15 18 55.5t20.5 60t22.5 46.5t33 44q24 22 56 34v3q-61 11 -101.5 53t-40.5 111q0 90 70 143q71 53 221 53q111 0 193 -15v-664h-151v265h-37q-44 0 -72 -26q-19 -18 -33 -47t-29 -78.5t-18 -56.5q-12 -34 -24 -57zM383 378v181q-22 6 -62 6 +q-53 0 -86 -23.5t-33 -72.5q0 -45 36 -69.5t91 -24.5q40 0 54 3z" /> + <glyph glyph-name="afii10065" unicode="&#x430;" horiz-adv-x="528" +d="M468 289v-171q0 -82 8 -118h-137l-9 49h-3q-49 -60 -140 -60q-71 0 -114.5 44.5t-43.5 105.5q0 93 76.5 140t210.5 47v6q0 63 -89 63q-74 0 -135 -36l-28 97q79 44 190 44q114 0 164 -58t50 -153zM321 178v53q-142 0 -142 -77q0 -28 16.5 -43t43.5 -15t49 16t30 40 +q3 12 3 26z" /> + <glyph glyph-name="afii10066" unicode="&#x431;" horiz-adv-x="577" +d="M492 720l-9 -120q-42 -12 -115 -18q-108 -11 -154 -64q-45 -48 -53 -121h5q23 41 66 66.5t95 25.5q99 0 158 -66.5t59 -177.5q0 -117 -70.5 -187t-180.5 -70q-124 0 -190 89t-66 234q0 199 105 298q71 75 204 90q111 12 146 21zM388 240v1q0 57 -24 100t-75 43 +q-45 0 -71 -40q-26 -38 -26 -97q0 -57 25 -103.5t74 -46.5t73 42t24 101z" /> + <glyph glyph-name="afii10067" unicode="&#x432;" horiz-adv-x="552" +d="M60 2v481q80 13 197 13q242 0 242 -125q0 -44 -29.5 -70.5t-70.5 -34.5v-3q56 -9 88.5 -39.5t32.5 -79.5q0 -151 -289 -151q-101 0 -171 9zM210 399v-101h39q100 0 100 53q0 51 -88 51zM209 210v-123q16 -2 51 -2q104 0 104 63q0 62 -112 62h-43z" /> + <glyph glyph-name="afii10068" unicode="&#x433;" horiz-adv-x="416" +d="M60 489h341v-118h-189v-371h-152v489z" /> + <glyph glyph-name="afii10069" unicode="&#x434;" horiz-adv-x="590" +d="M126 489h390v-382l54 -2l-6 -263h-115l-5 158h-309l-6 -158h-115l-4 261l46 4q32 50 48 102q22 80 22 160v120zM258 378v-57q0 -58 -18 -127q-9 -38 -34 -84h162v268h-110z" /> + <glyph glyph-name="afii10070" unicode="&#x435;" horiz-adv-x="528" +d="M493 196h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-74 -31 -177 -31q-123 0 -192 66.5t-69 182.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68z" /> + <glyph glyph-name="afii10072" unicode="&#x436;" horiz-adv-x="737" +d="M1 489h168l110 -196h16v196h147v-196h15l111 196h168l-170 -212q75 -12 114 -123q50 -138 58 -154h-152q-12 21 -42 112q-29 83 -90 83h-12v-195h-147v195h-12q-62 0 -92 -83q-34 -95 -43 -112h-150q13 26 60 153q38 112 113 124z" /> + <glyph glyph-name="afii10073" unicode="&#x437;" horiz-adv-x="487" +d="M110 205l-1 93h73q45 0 68.5 13.5t23.5 34.5q0 22 -21.5 35t-61.5 13q-64 0 -124 -34l-29 88q83 50 199 50q79 0 138 -31.5t59 -99.5q0 -43 -31.5 -70t-73.5 -37v-4q52 -6 89.5 -34.5t37.5 -79.5q0 -43 -23 -74t-61.5 -47t-77.5 -23t-80 -7q-112 0 -191 47l32 94 +q59 -32 140 -34q46 0 70 14.5t24 37.5q0 55 -106 55h-73z" /> + <glyph glyph-name="afii10074" unicode="&#x438;" horiz-adv-x="597" +d="M60 489h144v-150q0 -66 -8 -200h4q11 26 28 71t28 69l95 210h186v-489h-144v149q0 26 9 211h-4q-30 -84 -51 -131l-102 -229h-185v489z" /> + <glyph glyph-name="afii10075" unicode="&#x439;" horiz-adv-x="597" +d="M60 489h144v-150q0 -66 -8 -200h4q11 26 28 71t28 69l95 210h186v-489h-144v149q0 26 9 211h-4q-30 -84 -51 -131l-102 -229h-185v489zM156 691h96q2 -71 46 -71t49 71h96q-4 -69 -43 -105t-104 -36q-67 0 -102 37t-38 104z" /> + <glyph glyph-name="afii10076" unicode="&#x43a;" horiz-adv-x="530" +d="M61 489h152v-195h16l124 195h177l-180 -211q75 -13 123 -134q3 -7 24 -62t35 -82h-159q-11 18 -44 108q-32 86 -101 86h-15v-194h-152v489z" /> + <glyph glyph-name="afii10077" unicode="&#x43b;" horiz-adv-x="546" +d="M87 489h399v-489h-152v373h-106v-90q0 -95 -15 -154.5t-54 -90.5q-45 -48 -142 -48l-17 118q37 6 55 26q20 20 26 54.5t6 102.5v198z" /> + <glyph glyph-name="afii10078" unicode="&#x43c;" horiz-adv-x="718" +d="M44 0l34 489h194l53 -185q23 -83 32 -123h3q7 28 39 134l54 174h192l30 -489h-141l-8 196q0 14 -2 76t-3 95h-3q-44 -150 -47 -160l-65 -199h-111l-58 194q-9 34 -40 162h-4q-1 -22 -2.5 -85t-2.5 -86l-8 -193h-136z" /> + <glyph glyph-name="afii10079" unicode="&#x43d;" horiz-adv-x="579" +d="M60 489h152v-177h154v177h152v-489h-152v194h-154v-194h-152v489z" /> + <glyph glyph-name="afii10080" unicode="&#x43e;" horiz-adv-x="577" +d="M287 -11h-1q-110 0 -181.5 68t-71.5 184q0 118 71.5 188.5t190.5 70.5q111 0 180 -70t69 -181q0 -126 -75.5 -193t-181.5 -67zM289 98h1q45 0 71 40t26 107q0 60 -24.5 103t-72.5 43q-50 0 -75 -43t-25 -104q0 -64 26 -105t73 -41z" /> + <glyph glyph-name="afii10081" unicode="&#x43f;" horiz-adv-x="576" +d="M60 489h454v-489h-152v372h-150v-372h-152v489z" /> + <glyph glyph-name="afii10082" unicode="&#x440;" horiz-adv-x="598" +d="M61 -198v523q0 72 -4 164h132l7 -68h2q56 79 163 79q84 0 143.5 -68t59.5 -181q0 -125 -66 -193.5t-156 -68.5q-88 0 -127 56h-2v-243h-152zM213 277v-67q0 -17 3 -32q8 -31 32.5 -51.5t56.5 -20.5q49 0 77 37.5t28 100.5q0 61 -27 99t-76 38q-32 0 -58 -21.5t-33 -55.5 +q-3 -12 -3 -27z" /> + <glyph glyph-name="afii10083" unicode="&#x441;" horiz-adv-x="451" +d="M410 125l18 -112q-48 -23 -136 -23q-119 0 -189 67.5t-70 182.5q0 111 74 185t206 74q65 0 116 -19l-24 -113q-34 15 -85 15q-59 0 -95.5 -38t-35.5 -98q0 -65 38 -101t96 -36q50 0 87 16z" /> + <glyph glyph-name="afii10084" unicode="&#x442;" horiz-adv-x="461" +d="M13 489h436v-117h-142v-372h-152v372h-142v117z" /> + <glyph glyph-name="afii10085" unicode="&#x443;" horiz-adv-x="523" +d="M6 489h169l73 -241q16 -55 24 -91h3q4 16 12.5 51t9.5 41l60 240h163l-114 -322q-50 -140 -89 -211t-83 -110q-66 -59 -147 -67l-32 128q32 7 66 26q39 21 63 61q8 13 8 22q0 11 -6 25z" /> + <glyph glyph-name="afii10086" unicode="&#x444;" horiz-adv-x="720" +d="M289 705h143l-2 -208q111 -11 184 -77t73 -178t-74 -177.5t-183 -73.5l2 -189h-143l2 189q-110 8 -184 73.5t-74 176.5q0 114 73 179.5t184 76.5zM291 90v309q-54 -13 -81 -54t-27 -100q0 -61 27.5 -102t80.5 -53zM429 399v-309q53 13 80.5 54t27.5 101q0 59 -27 100 +t-81 54z" /> + <glyph glyph-name="afii10087" unicode="&#x445;" horiz-adv-x="519" +d="M7 489h170l48 -82l40 -73h2l38 76l43 79h165l-161 -233l163 -256h-172l-49 88q-23 39 -38 75h-3q-4 -9 -37 -75l-46 -88h-167l166 250z" /> + <glyph glyph-name="afii10088" unicode="&#x446;" horiz-adv-x="589" +d="M60 489h152v-373h152v373h152v-382l54 -2l-6 -263h-115l-5 158h-384v489z" /> + <glyph glyph-name="afii10089" unicode="&#x447;" horiz-adv-x="558" +d="M55 489h152v-153q0 -42 17 -62t56 -20t66 21v214h152v-496h-152v184h-2q-49 -31 -123 -31q-80 0 -123 45t-43 131v167z" /> + <glyph glyph-name="afii10090" unicode="&#x448;" horiz-adv-x="813" +d="M60 489h151v-373h120v373h151v-373h120v373h151v-489h-693v489z" /> + <glyph glyph-name="afii10091" unicode="&#x449;" horiz-adv-x="826" +d="M60 489h151v-373h120v373h151v-373h120v373h151v-382l54 -2l-6 -263h-115l-5 158h-621v489z" /> + <glyph glyph-name="afii10092" unicode="&#x44a;" horiz-adv-x="650" +d="M20 489h290v-144q37 5 80 5q44 0 83 -9t73 -28.5t53.5 -55t19.5 -82.5q0 -80 -67 -127q-78 -54 -231 -54q-87 0 -163 9v370h-138v116zM309 242v-142q20 -3 52 -3q44 0 75.5 17.5t31.5 55.5q0 77 -113 77q-23 0 -46 -5z" /> + <glyph glyph-name="afii10093" unicode="&#x44b;" horiz-adv-x="777" +d="M60 489h152v-145q40 6 79 6q91 0 155.5 -42t64.5 -129q0 -84 -67 -131q-78 -54 -221 -54q-87 0 -163 9v486zM211 242v-143q26 -2 46 -2q43 0 73 18.5t30 58.5q0 38 -28.5 55.5t-68.5 17.5q-29 0 -52 -5zM565 489h152v-489h-152v489z" /> + <glyph glyph-name="afii10094" unicode="&#x44c;" horiz-adv-x="554" +d="M60 489h152v-145q42 6 77 6q46 0 85.5 -8.5t74 -27.5t54.5 -53t20 -81q0 -85 -67 -132q-78 -54 -233 -54q-87 0 -163 9v486zM211 243v-143q20 -3 51 -3q45 0 77.5 18t32.5 58t-34 57t-78 17q-21 0 -49 -4z" /> + <glyph glyph-name="afii10095" unicode="&#x44d;" horiz-adv-x="485" +d="M83 198v96h214q-17 95 -131 95q-55 0 -109 -22l-28 97q69 36 164 36q110 0 179 -60q80 -73 80 -194q0 -117 -75.5 -187t-204.5 -70q-86 0 -150 33l23 103q47 -20 112 -20q54 0 90.5 24.5t46.5 68.5h-211z" /> + <glyph glyph-name="afii10096" unicode="&#x44e;" horiz-adv-x="771" +d="M60 489h151v-182h63q17 89 78.5 141t153.5 52q103 0 167.5 -69.5t64.5 -180.5q0 -124 -69.5 -192.5t-169.5 -68.5q-91 0 -153 55.5t-75 151.5h-60v-196h-151v489zM501 97h1q41 0 62.5 41t21.5 107q0 62 -21 104t-63 42q-43 0 -65 -43t-22 -104q0 -64 22 -105.5t64 -41.5z +" /> + <glyph glyph-name="afii10097" unicode="&#x44f;" horiz-adv-x="553" +d="M493 486v-486h-150v184h-31q-44 0 -70 -35q-7 -7 -13.5 -16.5t-12.5 -23t-9.5 -21.5t-9.5 -25.5t-8 -22.5q-6 -14 -19 -40h-162q16 20 31 55q2 5 12.5 31t16.5 39.5t17 33t22 30.5q28 29 62 36v3q-49 6 -87.5 37t-38.5 84q0 80 83 118q60 30 180 30q90 0 187 -11z +M343 278v121q-26 4 -52 4q-40 0 -65.5 -16t-25.5 -47q0 -30 28 -47t65 -17q24 0 50 2z" /> + <glyph glyph-name="afii10071" unicode="&#x451;" horiz-adv-x="528" +d="M493 196h-315q4 -45 42.5 -69t95.5 -24q74 0 135 21l20 -103q-74 -31 -177 -31q-123 0 -192 66.5t-69 182.5q0 103 64.5 182t182.5 79q110 0 164 -71t54 -173q0 -32 -5 -60zM177 300h180q0 37 -19.5 68t-65.5 31q-44 0 -67.5 -31t-27.5 -68zM177 557h-1q-30 0 -50.5 21 +t-20.5 50q0 30 21 50t51 20q29 0 48.5 -20t19.5 -50t-19.5 -50.5t-48.5 -20.5zM387 557h-2q-29 0 -49 21t-20 50q0 30 20 50t51 20q29 0 49 -20t20 -50t-19.5 -50.5t-49.5 -20.5z" /> + <glyph glyph-name="afii10099" unicode="&#x452;" horiz-adv-x="586" +d="M2 642h72v67h152v-67h212v-100h-212v-109h2q54 54 129 54q95 0 146 -89q47 -75 47 -198q0 -229 -125 -306q-63 -40 -117 -43l-28 121q44 9 72 38q20 22 33 70.5t13 107.5q0 82 -25 132q-25 44 -67 44q-41 0 -68 -33q-12 -15 -12 -41v-290h-152v542h-72v100z" /> + <glyph glyph-name="afii10100" unicode="&#x453;" horiz-adv-x="416" +d="M60 489h341v-118h-189v-371h-152v489zM240 702h140l-122 -152h-104z" /> + <glyph glyph-name="afii10101" unicode="&#x454;" horiz-adv-x="472" +d="M450 474l-27 -105q-42 20 -98 20q-55 0 -90.5 -26t-43.5 -69h204v-96h-201q9 -46 45 -70.5t91 -24.5q53 0 99 18l22 -104q-56 -28 -147 -28q-125 0 -198 68t-73 183q0 122 82 191t207 69q78 0 128 -26z" /> + <glyph glyph-name="afii10102" unicode="&#x455;" horiz-adv-x="434" +d="M33 25l27 108q23 -14 61 -25t70 -11q65 0 65 40q0 19 -15 31t-56 25q-142 47 -140 146q0 70 55 115.5t144 45.5q79 0 137 -29l-26 -104q-54 27 -106 27q-58 0 -58 -39q0 -17 17 -29t62 -27q69 -24 100 -60t32 -90q0 -72 -54.5 -115.5t-156.5 -43.5q-93 0 -158 35z" /> + <glyph glyph-name="afii10103" unicode="&#x456;" horiz-adv-x="274" +d="M213 0h-152v489h152v-489zM137 549h-1q-35 0 -57 22t-22 54q0 33 22.5 54.5t58.5 21.5t57.5 -21.5t22.5 -54.5q0 -32 -22 -54t-59 -22z" /> + <glyph glyph-name="afii10104" unicode="&#x457;" horiz-adv-x="274" +d="M213 0h-152v489h152v-489zM33 557h-1q-30 0 -50.5 21t-20.5 50q0 30 21 50t51 20q29 0 48.5 -20t19.5 -50t-19.5 -50.5t-48.5 -20.5zM243 557h-2q-29 0 -49 21t-20 50q0 30 20 50t51 20q29 0 49 -20t20 -50t-19.5 -50.5t-49.5 -20.5z" /> + <glyph glyph-name="afii10105" unicode="&#x458;" horiz-adv-x="291" +d="M-24 -215l-15 119q64 5 90 32q30 31 30 159v394h152v-430q0 -151 -69 -214q-66 -60 -188 -60zM156 549h-1q-35 0 -57 22t-22 54q0 33 22.5 54.5t58.5 21.5t57.5 -21.5t22.5 -54.5q0 -32 -22 -54t-59 -22z" /> + <glyph glyph-name="afii10106" unicode="&#x459;" horiz-adv-x="824" +d="M89 489h397v-147q35 5 76 5q96 0 163.5 -42.5t67.5 -131.5q0 -79 -61 -123q-74 -56 -233 -56q-89 0 -165 9v370h-105v-90q0 -95 -15.5 -154t-54.5 -91q-46 -49 -142 -49l-16 119q33 6 54 25t27.5 56t6.5 102v198zM485 241v-142q26 -2 50 -2q43 0 75 17t32 57 +q0 39 -30.5 56.5t-71.5 17.5q-23 0 -55 -4z" /> + <glyph glyph-name="afii10107" unicode="&#x45a;" horiz-adv-x="840" +d="M60 489h152v-165h139v165h152v-149q42 6 77 6q94 0 161 -43t67 -131q0 -76 -61 -123q-74 -55 -231 -55q-88 0 -165 9v209h-139v-212h-152v489zM502 240v-140q20 -3 50 -3q43 0 74 17.5t31 55.5q0 74 -104 74q-21 0 -51 -4z" /> + <glyph glyph-name="afii10108" unicode="&#x45b;" horiz-adv-x="598" +d="M2 642h72v69h152v-69h199v-100h-199v-124h2q23 30 59 49q38 20 80 20q81 0 126 -55.5t45 -157.5v-274h-152v256q0 108 -79 108q-54 0 -76 -54q-5 -11 -5 -34v-276h-152v542h-72v100z" /> + <glyph glyph-name="afii10109" unicode="&#x45c;" horiz-adv-x="530" +d="M61 489h152v-195h16l124 195h177l-180 -211q75 -13 123 -134q3 -7 24 -62t35 -82h-159q-11 18 -44 108q-32 86 -101 86h-15v-194h-152v489zM282 702h140l-122 -152h-104z" /> + <glyph glyph-name="afii10110" unicode="&#x45e;" horiz-adv-x="523" +d="M6 489h169l73 -241q16 -55 24 -91h3q4 16 12.5 51t9.5 41l60 240h163l-114 -322q-50 -140 -89 -211t-83 -110q-66 -59 -147 -67l-32 128q32 7 66 26q39 21 63 61q8 13 8 22q0 11 -6 25zM119 691h96q2 -71 46 -71t49 71h96q-4 -69 -43 -105t-104 -36q-67 0 -102 37 +t-38 104z" /> + <glyph glyph-name="afii10193" unicode="&#x45f;" horiz-adv-x="576" +d="M60 489h152v-373h152v373h152v-489h-159l-8 -165h-122l-9 165h-158v489z" /> + <glyph glyph-name="afii10050" unicode="&#x490;" horiz-adv-x="492" +d="M66 674h293l16 130h109l-11 -255h-255v-549h-152v674z" /> + <glyph glyph-name="afii10098" unicode="&#x491;" horiz-adv-x="431" +d="M60 489h234l14 118h105l-8 -236h-193v-371h-152v489z" /> + <glyph glyph-name="afii10846" unicode="&#x4d9;" horiz-adv-x="528" +d="M76 364l-20 101q83 35 179 35q122 0 190.5 -67t68.5 -182q0 -65 -25 -122.5t-82.5 -98t-137.5 -40.5q-58 0 -101.5 21t-68.5 56t-37.5 77.5t-12.5 89.5q0 37 6 59h314q-4 47 -39.5 70.5t-95.5 23.5q-70 0 -138 -23zM350 189h-180q0 -36 20.5 -67t67.5 -31q44 0 66 30.5 +t26 67.5z" /> + <glyph glyph-name="Wgrave" unicode="&#x1e80;" horiz-adv-x="888" +d="M342 0h-167l-160 674h163l51 -277q16 -86 40 -237h2q12 81 44 239l57 275h162l54 -284q20 -104 36 -226h2q5 41 39 235l55 275h155l-174 -674h-165l-57 290q-23 119 -32 208h-2q-20 -128 -39 -209zM274 834h160l84 -122h-122z" /> + <glyph glyph-name="wgrave" unicode="&#x1e81;" horiz-adv-x="759" +d="M11 489h155l40 -201q20 -112 27 -160h3q4 22 35 159l52 202h120l49 -195q26 -104 36 -166h2q10 78 29 167l41 194h149l-150 -489h-142l-46 171q-18 65 -32 153h-2q-12 -80 -31 -152l-49 -172h-143zM229 702h140l86 -152h-104z" /> + <glyph glyph-name="Wacute" unicode="&#x1e82;" horiz-adv-x="888" +d="M342 0h-167l-160 674h163l51 -277q16 -86 40 -237h2q12 81 44 239l57 275h162l54 -284q20 -104 36 -226h2q5 41 39 235l55 275h155l-174 -674h-165l-57 290q-23 119 -32 208h-2q-20 -128 -39 -209zM468 833h160l-122 -123h-122z" /> + <glyph glyph-name="wacute" unicode="&#x1e83;" horiz-adv-x="759" +d="M11 489h155l40 -201q20 -112 27 -160h3q4 22 35 159l52 202h120l49 -195q26 -104 36 -166h2q10 78 29 167l41 194h149l-150 -489h-142l-46 171q-18 65 -32 153h-2q-12 -80 -31 -152l-49 -172h-143zM398 702h140l-122 -152h-104z" /> + <glyph glyph-name="Wdieresis" unicode="&#x1e84;" horiz-adv-x="888" +d="M342 0h-167l-160 674h163l51 -277q16 -86 40 -237h2q12 81 44 239l57 275h162l54 -284q20 -104 36 -226h2q5 41 39 235l55 275h155l-174 -674h-165l-57 290q-23 119 -32 208h-2q-20 -128 -39 -209zM350 713h-1q-28 0 -48 20t-20 48q0 29 20 49t49 20q28 0 47 -19.5 +t19 -49.5q0 -28 -19 -48t-47 -20zM557 713h-1q-29 0 -48 20t-19 48q0 29 19.5 49t48.5 20t48 -19.5t19 -49.5q0 -28 -19 -48t-48 -20z" /> + <glyph glyph-name="wdieresis" unicode="&#x1e85;" horiz-adv-x="759" +d="M11 489h155l40 -201q20 -112 27 -160h3q4 22 35 159l52 202h120l49 -195q26 -104 36 -166h2q10 78 29 167l41 194h149l-150 -489h-142l-46 171q-18 65 -32 153h-2q-12 -80 -31 -152l-49 -172h-143zM276 557h-1q-30 0 -50.5 21t-20.5 50q0 30 21 50t51 20q29 0 48.5 -20 +t19.5 -50t-19.5 -50.5t-48.5 -20.5zM486 557h-2q-29 0 -49 21t-20 50q0 30 20 50t51 20q29 0 49 -20t20 -50t-19.5 -50.5t-49.5 -20.5z" /> + <glyph glyph-name="Ygrave" unicode="&#x1ef2;" horiz-adv-x="603" +d="M374 0h-152v276l-213 398h175l68 -162q34 -78 52 -129h2q16 46 51 129l68 162h171l-222 -393v-281zM140 832h160l84 -122h-122z" /> + <glyph glyph-name="ygrave" unicode="&#x1ef3;" horiz-adv-x="523" +d="M6 489h169l73 -241q16 -55 24 -91h3q4 16 12.5 51t9.5 41l60 240h163l-114 -322q-50 -140 -89 -211t-83 -110q-66 -59 -147 -67l-32 128q32 7 66 26q39 21 63 61q8 13 8 22q0 11 -6 25zM116 702h140l86 -152h-104z" /> + <glyph glyph-name="endash" unicode="&#x2013;" horiz-adv-x="500" +d="M30 301h440v-94h-440v94z" /> + <glyph glyph-name="emdash" unicode="&#x2014;" horiz-adv-x="1000" +d="M30 301h940v-94h-940v94z" /> + <glyph glyph-name="quoteleft" unicode="&#x2018;" horiz-adv-x="260" +d="M169 422l-142 -9q48 152 120 271l92 8q-49 -140 -70 -270z" /> + <glyph glyph-name="quoteright" unicode="&#x2019;" horiz-adv-x="260" +d="M96 683l142 9q-50 -155 -120 -270l-92 -9q50 143 70 270z" /> + <glyph glyph-name="quotesinglbase" unicode="&#x201a;" horiz-adv-x="260" +d="M108 -96l-92 -8q49 140 70 270l142 9q-48 -152 -120 -271z" /> + <glyph glyph-name="quotedblleft" unicode="&#x201c;" horiz-adv-x="454" +d="M167 422l-142 -9q46 147 120 271l92 8q-49 -140 -70 -270zM363 422l-142 -9q48 152 120 271l92 8q-48 -132 -70 -270z" /> + <glyph glyph-name="quotedblright" unicode="&#x201d;" horiz-adv-x="454" +d="M94 683l142 9q-50 -155 -120 -270l-92 -9q48 134 70 270zM290 683l142 9q-48 -150 -120 -270l-92 -9q50 143 70 270z" /> + <glyph glyph-name="quotedblbase" unicode="&#x201e;" horiz-adv-x="459" +d="M107 -96l-92 -8q48 132 70 270l142 9q-48 -152 -120 -271zM303 -96l-92 -8q49 140 70 270l142 9q-46 -147 -120 -271z" /> + <glyph glyph-name="dagger" unicode="&#x2020;" horiz-adv-x="524" +d="M192 674h139l-14 -201l172 12v-118l-172 12l14 -429h-139l14 429l-172 -12v118l172 -12z" /> + <glyph glyph-name="daggerdbl" unicode="&#x2021;" horiz-adv-x="524" +d="M194 674h135l-10 -186l170 12v-118l-170 12v-158l170 12v-118l-170 12l11 -193h-136l10 193l-170 -12v118l170 -12v158l-170 -12v118l170 -12z" /> + <glyph glyph-name="bullet" unicode="&#x2022;" horiz-adv-x="338" +d="M169 130h-1q-54 0 -91.5 37.5t-37.5 92.5q-1 55 37.5 93t92.5 38t92 -38t38 -93t-37.5 -92.5t-92.5 -37.5z" /> + <glyph glyph-name="ellipsis" unicode="&#x2026;" horiz-adv-x="1000" +d="M166 -11h-1q-38 0 -63 26t-25 66q0 41 25 67t65 26q39 0 63.5 -25.5t25.5 -67.5q0 -40 -25 -66t-65 -26zM500 -11h-1q-38 0 -63 26t-25 66q0 41 25 67t65 26q39 0 63.5 -25.5t25.5 -67.5q0 -40 -25 -66t-65 -26zM834 -11h-1q-38 0 -63 26t-25 66q0 41 25 67t65 26 +q39 0 63.5 -25.5t25.5 -67.5q0 -40 -25 -66t-65 -26z" /> + <glyph glyph-name="perthousand" unicode="&#x2030;" horiz-adv-x="1285" +d="M209 661h1q81 0 127.5 -54t46.5 -139q0 -97 -52.5 -152.5t-127.5 -55.5q-76 0 -126.5 53.5t-50.5 143.5q0 89 50 146.5t132 57.5zM206 578h-1q-32 0 -48.5 -33t-16.5 -85q-1 -52 17 -84.5t50 -32.5q64 0 64 118q0 117 -65 117zM293 -11h-82l374 671h81zM677 391h1 +q81 0 127.5 -54t46.5 -139q0 -97 -52.5 -152t-127.5 -55q-76 0 -126 53.5t-50 142.5q0 88 50 146t131 58zM675 308h-1q-32 0 -48.5 -32.5t-16.5 -84.5q-1 -52 16.5 -84.5t49.5 -32.5q64 0 64 117t-64 117zM1081 391h1q81 0 127.5 -54t46.5 -139q0 -97 -52.5 -152t-127.5 -55 +q-76 0 -126.5 53.5t-50.5 142.5t50 146.5t132 57.5zM1078 308h-1q-32 0 -48.5 -32.5t-16.5 -84.5q-1 -52 17 -84.5t50 -32.5q64 0 64 117t-65 117z" /> + <glyph glyph-name="guilsinglleft" unicode="&#x2039;" horiz-adv-x="270" +d="M248 443l-120 -191l120 -190h-106l-116 190l116 191h106z" /> + <glyph glyph-name="guilsinglright" unicode="&#x203a;" horiz-adv-x="270" +d="M142 252l-120 191h105l117 -191l-117 -190h-105z" /> + <glyph glyph-name="fraction" unicode="&#x2044;" horiz-adv-x="424" +d="M69 -11h-83l369 672h83z" /> + <glyph glyph-name="fraction" unicode="&#x2215;" horiz-adv-x="424" +d="M69 -11h-83l369 672h83z" /> + <glyph glyph-name="zerosuperior" unicode="&#x2070;" horiz-adv-x="378" +d="M188 438h-1q-82 0 -124 56t-42 144q0 87 42 143.5t125 56.5q82 0 125 -56t43 -144q0 -86 -42 -143t-126 -57zM188 516h1q56 0 56 122t-57 122q-56 0 -56 -122t56 -122z" /> + <glyph glyph-name="foursuperior" unicode="&#x2074;" horiz-adv-x="393" +d="M320 443h-108v90h-192v63l166 240h134v-229h51v-74h-51v-90zM212 607v73q0 15 2 41t2 34h-2q-29 -57 -36 -67l-53 -80l2 -1h85z" /> + <glyph glyph-name="fivesuperior" unicode="&#x2075;" horiz-adv-x="348" +d="M299 832v-85h-161l-7 -49q7 1 27 1q72 0 112 -28q48 -33 48 -96q0 -59 -48.5 -98t-129.5 -39q-70 0 -118 22l18 78q40 -20 94 -20q29 0 52.5 13t23.5 39q0 57 -113 57q-26 0 -56 -4l26 209h232z" /> + <glyph glyph-name="sixsuperior" unicode="&#x2076;" horiz-adv-x="363" +d="M294 836l1 -79q-22 2 -38 1q-105 -6 -128 -79h1q36 27 85 27q56 0 91 -33.5t35 -91.5q0 -64 -45.5 -103.5t-107.5 -39.5q-82 0 -124 50t-42 122q0 106 69 169q62 54 164 57q25 2 39 0zM186 516h1q21 0 34.5 17t13.5 42q0 26 -14 43.5t-42 17.5q-36 0 -51 -34 +q-3 -8 -3 -20q0 -26 16.5 -46t44.5 -20z" /> + <glyph glyph-name="sevensuperior" unicode="&#x2077;" horiz-adv-x="333" +d="M23 832h295v-64l-165 -325h-113l166 303v1h-183v85z" /> + <glyph glyph-name="eightsuperior" unicode="&#x2078;" horiz-adv-x="361" +d="M182 838h1q67 0 102.5 -30t35.5 -71q0 -57 -59 -83v-2q75 -28 75 -94q0 -53 -43.5 -86.5t-117.5 -33.5q-76 0 -114.5 33.5t-38.5 74.5q0 63 73 94v2q-60 28 -60 85q0 49 41.5 80t104.5 31zM180 510h1q21 0 35 12t14 31q0 41 -57 55q-45 -16 -45 -51q0 -19 14.5 -33 +t37.5 -14zM179 768h-1q-20 0 -32 -11t-12 -28q0 -31 53 -48q16 5 26.5 17t10.5 27q0 18 -12 30.5t-33 12.5z" /> + <glyph glyph-name="ninesuperior" unicode="&#x2079;" horiz-adv-x="358" +d="M57 440v79q24 -2 39 -1q48 2 82 20q40 22 52 63l-2 1q-28 -26 -79 -26q-53 0 -90.5 32.5t-37.5 89.5q0 59 44.5 99.5t110.5 40.5q79 0 120 -49.5t41 -119.5q0 -114 -68 -174q-60 -53 -173 -56q-18 -1 -39 1zM177 761h-1q-21 0 -35.5 -16t-14.5 -42q0 -24 14 -40.5 +t39 -16.5q34 0 49 23q4 7 4 23q0 29 -13.5 49t-41.5 20z" /> + <glyph glyph-name="parenleftsuperior" unicode="&#x207d;" horiz-adv-x="204" +d="M110 868h76q-59 -107 -59 -239q0 -128 59 -238h-76q-69 101 -69 238t69 239z" /> + <glyph glyph-name="parenrightsuperior" unicode="&#x207e;" horiz-adv-x="204" +d="M94 391h-76q59 112 59 239q0 132 -59 238h76q69 -101 69 -239q0 -132 -69 -238z" /> + <glyph glyph-name="zeroinferior" unicode="&#x2080;" horiz-adv-x="378" +d="M188 -152h-1q-82 0 -124 56t-42 144q0 87 42 143.5t125 56.5q82 0 125 -56t43 -144q0 -86 -42 -143t-126 -57zM188 -74h1q56 0 56 122t-57 122q-56 0 -56 -122t56 -122z" /> + <glyph glyph-name="oneinferior" unicode="&#x2081;" +d="M235 -147h-117v295h-1l-80 -35l-15 82l111 48h102v-390z" /> + <glyph glyph-name="twoinferior" unicode="&#x2082;" horiz-adv-x="352" +d="M15 -147v57l62 55q80 72 97 95q19 25 19 49q0 22 -15.5 35t-43.5 13q-45 0 -86 -28l-30 76q59 43 146 43q72 0 112 -34t40 -87q0 -25 -8.5 -48t-27.5 -44.5t-35 -35.5t-44 -37l-24 -20v-2h146v-87h-308z" /> + <glyph glyph-name="threeinferior" unicode="&#x2083;" horiz-adv-x="347" +d="M46 143l-21 73q55 32 140 32q69 0 106.5 -28t37.5 -71q0 -63 -82 -89v-2q42 -4 69.5 -29t27.5 -62q0 -53 -49 -86t-131 -33q-84 0 -135 28l23 78q47 -26 98 -26q31 0 51 13t20 32q0 24 -25 37t-61 13h-30v68h28q30 0 53.5 10t23.5 31q0 36 -53 36q-46 0 -91 -25z" /> + <glyph glyph-name="fourinferior" unicode="&#x2084;" horiz-adv-x="393" +d="M320 -147h-108v90h-192v63l166 240h134v-229h51v-74h-51v-90zM212 17v73q0 15 2 41t2 34h-2q-29 -57 -36 -67l-53 -80l2 -1h85z" /> + <glyph glyph-name="fiveinferior" unicode="&#x2085;" horiz-adv-x="348" +d="M299 242v-85h-161l-7 -49q7 1 27 1q72 0 112 -28q48 -33 48 -96q0 -59 -48.5 -98t-129.5 -39q-70 0 -118 22l18 78q40 -20 94 -20q29 0 52.5 13t23.5 39q0 57 -113 57q-26 0 -56 -4l26 209h232z" /> + <glyph glyph-name="sixinferior" unicode="&#x2086;" horiz-adv-x="363" +d="M294 246l1 -79q-22 2 -38 1q-105 -6 -128 -79h1q36 27 85 27q56 0 91 -33.5t35 -91.5q0 -64 -45.5 -103.5t-107.5 -39.5q-82 0 -124 50t-42 122q0 106 69 169q62 54 164 57q25 2 39 0zM186 -74h1q21 0 34.5 17t13.5 42q0 26 -14 43.5t-42 17.5q-36 0 -51 -34 +q-3 -7 -3 -20q0 -26 16.5 -46t44.5 -20z" /> + <glyph glyph-name="seveninferior" unicode="&#x2087;" horiz-adv-x="333" +d="M23 242h295v-64l-165 -325h-113l166 303v1h-183v85z" /> + <glyph glyph-name="eightinferior" unicode="&#x2088;" horiz-adv-x="361" +d="M182 248h1q67 0 102.5 -30t35.5 -71q0 -57 -59 -83v-2q75 -28 75 -94q0 -53 -43.5 -86.5t-117.5 -33.5q-76 0 -114.5 33.5t-38.5 74.5q0 63 73 94v2q-60 28 -60 85q0 49 41.5 80t104.5 31zM180 -80h1q21 0 35 12t14 31q0 41 -57 55q-45 -16 -45 -51q0 -19 14.5 -33 +t37.5 -14zM179 178h-1q-20 0 -32 -11t-12 -28q0 -31 53 -48q16 5 26.5 17t10.5 27q0 18 -12 30.5t-33 12.5z" /> + <glyph glyph-name="nineinferior" unicode="&#x2089;" horiz-adv-x="358" +d="M57 -150v79q24 -2 39 -1q48 2 82 20q40 22 52 63l-2 1q-28 -26 -79 -26q-53 0 -90.5 32.5t-37.5 89.5q0 59 44.5 99.5t110.5 40.5q79 0 120 -49.5t41 -119.5q0 -114 -68 -174q-60 -53 -173 -56q-18 -1 -39 1zM177 171h-1q-21 0 -35.5 -16t-14.5 -42q0 -24 14 -40.5 +t39 -16.5q34 0 49 23q4 7 4 23q0 29 -13.5 49t-41.5 20z" /> + <glyph glyph-name="parenleftinferior" unicode="&#x208d;" horiz-adv-x="204" +d="M110 278h76q-59 -107 -59 -239q0 -128 59 -238h-76q-69 101 -69 238t69 239z" /> + <glyph glyph-name="parenrightinferior" unicode="&#x208e;" horiz-adv-x="204" +d="M94 -199h-76q59 112 59 239q0 132 -59 238h76q69 -101 69 -239q0 -132 -69 -238z" /> + <glyph glyph-name="Euro" unicode="&#x20ac;" horiz-adv-x="555" +d="M502 138l24 -111q-68 -38 -156 -38q-74 0 -138 29.5t-106 84.5q-41 52 -56 130h-64v71h54v17q0 5 0.5 15t0.5 15h-56v71h67q19 80 69 136q90 103 231 103q82 0 150 -30l-28 -114q-57 24 -111 24q-78 0 -123 -54q-21 -24 -32 -65h249v-71h-264q-1 -10 -1 -31v-16h265v-71 +h-251q10 -44 33 -70q45 -51 129 -51q64 0 114 26z" /> + <glyph glyph-name="afii61289" unicode="&#x2113;" horiz-adv-x="555" +d="M254 489v-136q88 96 88 188q0 71 -40 71q-48 0 -48 -123zM456 192l69 -67q-80 -136 -229 -136t-182 143q0 5 -1 6q-8 -6 -24 -16l-24 -15l-39 80l84 60v221q0 122 51 183t137 61q72 0 114.5 -46t42.5 -123q0 -85 -48.5 -160.5t-152.5 -164.5v-13q0 -45 21 -68t58 -23 +q63 0 123 78z" /> + <glyph glyph-name="afii61352" unicode="&#x2116;" horiz-adv-x="969" +d="M770 636h1q79 0 125.5 -48t46.5 -125q0 -90 -49.5 -135t-126.5 -45t-126 46.5t-49 127.5q0 82 49 130.5t129 48.5zM768 561h-1q-28 0 -42.5 -32t-14.5 -71q0 -43 16.5 -71.5t41.5 -28.5q28 0 43 28t15 74q0 41 -15 71t-43 30zM916 169h-295v75h295v-75zM196 0h-131v651 +h165l107 -241q35 -82 86 -218h1q-11 130 -11 278v181h131v-651h-153l-112 249q-8 19 -87 224h-2q6 -164 6 -287v-186z" /> + <glyph glyph-name="trademark" unicode="&#x2122;" horiz-adv-x="650" +d="M27 674h238v-67h-78v-206h-83v206h-77v67zM639 401h-80l-5 119v50.5t-1 56.5h-5l-23 -107l-28 -114h-79l-25 115q-5 36 -17 106h-5q0 -43 -2 -107l-6 -119h-78l17 273h128l18 -67q7 -28 16 -88h1q11 53 20 88l20 67h119z" /> + <glyph glyph-name="estimated" unicode="&#x212e;" horiz-adv-x="817" +d="M782 316h-605q-5 0 -5 -4v-183q0 -10 9 -21q93 -99 229 -99q145 0 240 111h55q-52 -61 -130 -96t-166 -35q-155 0 -264.5 98.5t-109.5 237.5t109.5 237.5t264.5 98.5t264 -98.5t109 -237.5v-9zM646 340v184q0 12 -10 22q-95 95 -226 95q-133 0 -228 -98q-10 -10 -10 -23 +v-180q0 -5 5 -5h464q5 0 5 5z" /> + <glyph glyph-name="partialdiff" unicode="&#x2202;" horiz-adv-x="573" +d="M91 572l-44 103q90 57 197 57q129 0 213.5 -98.5t84.5 -261.5q0 -181 -86 -282t-213 -101q-71 0 -123 35.5t-74.5 84.5t-22.5 103q0 106 61 176.5t160 70.5q53 0 90.5 -23t56.5 -52h1v17q0 91 -46 149.5t-122 58.5q-75 0 -133 -37zM259 111h1q45 0 77.5 47.5t39.5 110.5 +q-8 28 -34.5 50.5t-63.5 22.5q-45 0 -74.5 -38t-29.5 -93q0 -47 23.5 -73.5t60.5 -26.5z" /> + <glyph glyph-name="uni2206" unicode="&#x2206;" horiz-adv-x="631" +d="M589 0h-548v76l186 576h182l180 -575v-77zM426 124l-75 245q-29 109 -40 160h-4q-18 -86 -37 -151l-76 -254h232z" /> + <glyph glyph-name="product" unicode="&#x220f;" horiz-adv-x="663" +d="M651 525h-93v-615h-141v615h-173v-615h-141v615h-93v125h641v-125z" /> + <glyph glyph-name="summation" unicode="&#x2211;" horiz-adv-x="543" +d="M539 -90h-524v86l217 281l-206 274v99h486v-125h-293v-4l177 -238l-187 -244v-4h330v-125z" /> + <glyph glyph-name="minus" unicode="&#x2212;" horiz-adv-x="596" +d="M40 314h516v-93h-516v93z" /> + <glyph glyph-name="radical" unicode="&#x221a;" horiz-adv-x="589" +d="M612 840l-228 -919h-102l-159 411l-78 -31l-25 68l176 72l107 -297q11 -31 24 -82h1q10 55 18 85l164 693h102z" /> + <glyph glyph-name="infinity" unicode="&#x221e;" horiz-adv-x="752" +d="M555 97h-1q-34 0 -69.5 18t-56 35.5t-53.5 49.5q-2 -2 -16.5 -16t-18.5 -17t-17 -15t-19.5 -15.5t-19 -12t-21.5 -12t-22 -8t-26 -6t-27 -1.5q-71 0 -116 47.5t-45 119.5q0 69 47.5 118t121.5 49q34 0 70 -18t56.5 -35.5t53.5 -49.5q2 2 16.5 16t18.5 17t17 15t19.5 15.5 +t19 12t21.5 12t22 8t26 6t27 1.5q71 0 116 -47.5t45 -119.5q0 -69 -47.5 -118t-121.5 -49zM553 189h1q30 0 51 22t21 53q0 33 -20 54t-50 21q-21 0 -45.5 -14t-35.5 -24t-38 -36l18.5 -18.5t23 -22t21 -16.5t27.5 -15t26 -4zM195 189h1q21 0 45 14t35 23.5t38 36.5 +l-18.5 18.5t-23 22t-21 16.5t-27.5 15t-26 4q-31 0 -52 -22t-21 -53q0 -33 20 -54t50 -21z" /> + <glyph glyph-name="integral" unicode="&#x222b;" horiz-adv-x="358" +d="M350 801l-14 -91q-17 5 -35 5q-32 0 -48 -27q-21 -34 -21 -148q0 -74 7.5 -216t7.5 -229q0 -124 -34 -184q-41 -76 -132 -76q-45 0 -71 12l17 93q15 -6 39 -6q25 0 43 22q25 34 25 135q0 88 -7.5 233.5t-7.5 224.5q0 147 61 214q42 45 113 45q31 0 57 -7z" /> + <glyph glyph-name="approxequal" unicode="&#x2248;" horiz-adv-x="596" +d="M520 435l56 -59q-27 -43 -69.5 -70t-92.5 -27q-15 0 -29 2t-28.5 7t-22.5 8t-23.5 10t-19.5 9q-5 2 -22 10.5t-26.5 12t-27 7.5t-33.5 4q-59 0 -112 -64l-51 63q67 94 164 94q19 0 39 -4.5t29 -7.5t30.5 -13t23.5 -11q5 -2 22 -10t26.5 -12t26.5 -8t33 -4q52 0 107 63z +M524 222l54 -56q-27 -45 -70.5 -72.5t-93.5 -27.5q-15 0 -29 2t-28 7t-22 8t-23.5 10t-19.5 9q-5 2 -22.5 10.5t-27 12t-27 7.5t-34.5 4q-56 0 -110 -63l-50 63q27 40 70.5 66.5t91.5 26.5q16 0 30.5 -2t28.5 -7t22.5 -8t22.5 -10t19 -9t22 -10t26.5 -12t26.5 -8t33 -4 +q62 0 110 63z" /> + <glyph glyph-name="notequal" unicode="&#x2260;" horiz-adv-x="596" +d="M556 115h-309l-62 -101h-98l65 101h-112v93h172l75 119h-247v93h307l62 101h97l-64 -101h114v-93h-174l-76 -119h250v-93z" /> + <glyph glyph-name="lessequal" unicode="&#x2264;" horiz-adv-x="596" +d="M538 117l-480 177v91l479 176v-101l-350 -120v-2l351 -119v-102zM537 0h-478v87h478v-87z" /> + <glyph glyph-name="greaterequal" unicode="&#x2265;" horiz-adv-x="596" +d="M538 294l-479 -177v102l350 119v2l-350 120v101l479 -176v-91zM537 0h-478v87h478v-87z" /> + <glyph glyph-name="lozenge" unicode="&#x25ca;" horiz-adv-x="574" +d="M534 325l-191 -363h-112l-191 363l191 362h112zM412 321l-112 227q-9 14 -14 30h-2q-12 -26 -14 -30l-109 -221l113 -226q13 -28 13 -30h2q6 12 14 30z" /> + <glyph glyph-name="uniEFED" unicode="&#xefed;" +d="M152 713h-1q-29 0 -49 20.5t-20 47.5q0 29 20.5 49t49.5 20q28 0 47.5 -20t19.5 -49q0 -27 -19.5 -47.5t-47.5 -20.5z" /> + <glyph glyph-name="uniEFEE" unicode="&#xefee;" +d="M9 848h81q6 -46 59 -46t63 46h78q-2 -58 -37 -92t-104 -34q-70 0 -104 34t-36 92z" /> + <glyph glyph-name="uniEFF1" unicode="&#xeff1;" +d="M82 1h81q-25 -47 -25 -73q0 -23 14.5 -38t38.5 -15q18 0 45 8l21 -71q-40 -31 -102 -31q-53 0 -82.5 27t-29.5 79q0 60 39 114z" /> + <glyph glyph-name="uniEFF2" unicode="&#xeff2;" +d="M123 4h81l-24 -49q32 -7 52.5 -27.5t20.5 -53.5q0 -48 -35 -70t-84 -22q-52 0 -86 19l20 62q26 -14 56 -14q36 0 36 24q0 30 -79 38z" /> + <glyph glyph-name="uniEFF3" unicode="&#xeff3;" horiz-adv-x="400" +d="M201 893h1q54 0 83.5 -27.5t29.5 -70.5q0 -42 -31 -69.5t-83 -27.5q-53 0 -84 27.5t-31 68.5q0 42 30.5 70.5t84.5 28.5zM200 842h-1q-20 0 -31.5 -14t-11.5 -34q0 -18 12 -31.5t32 -13.5t32 13t12 33q0 19 -12 33t-32 14z" /> + <glyph glyph-name="uniEFF5" unicode="&#xeff5;" +d="M80 715h-70q-1 62 19.5 94.5t57.5 32.5q31 0 64 -20q32 -19 44 -19q13 0 18.5 9t8.5 34h68q3 -125 -78 -125q-31 0 -65 19q-32 18 -43 18q-21 0 -24 -43z" /> + <glyph glyph-name="uniEFF7" unicode="&#xeff7;" +d="M93 833h114l101 -123h-107l-50 62h-2l-50 -62h-106z" /> + <glyph glyph-name="uniF629" unicode="&#xf629;" horiz-adv-x="330" +d="M229 -5h-66v57q-58 9 -93 47q-34 39 -34 98q0 56 33 98t94 54v55h66v-52q27 0 57 -11l-16 -76q-22 10 -52 10q-35 0 -55 -19.5t-20 -53.5q0 -36 22 -55t54 -19q33 0 58 10l13 -74q-21 -11 -61 -14v-55z" /> + <glyph glyph-name="uniF62A" unicode="&#xf62a;" horiz-adv-x="353" +d="M207 -51h-65v55q-65 3 -111 27l20 79q52 -28 110 -28q56 0 56 32q0 14 -13.5 23t-52.5 22q-59 19 -87.5 43t-28.5 67q0 42 28.5 71.5t80.5 39.5v54h65v-50q53 -1 94 -20l-20 -76q-47 22 -95 22q-49 0 -49 -29q0 -14 15 -23t61 -23q57 -18 82 -44.5t25 -68.5t-30.5 -72.5 +t-84.5 -40.5v-60z" /> + <glyph glyph-name="uniF62B" unicode="&#xf62b;" horiz-adv-x="206" +d="M18 221h170v-71h-170v71z" /> + <glyph glyph-name="uniF62C" unicode="&#xf62c;" horiz-adv-x="204" +d="M110 425h76q-59 -107 -59 -239q0 -128 59 -238h-76q-69 101 -69 238t69 239z" /> + <glyph glyph-name="uniF62D" unicode="&#xf62d;" horiz-adv-x="204" +d="M94 -52h-76q59 112 59 239q0 132 -59 238h76q69 -101 69 -239q0 -132 -69 -238z" /> + <glyph glyph-name="uniF62E" unicode="&#xf62e;" horiz-adv-x="330" +d="M229 261h-66v57q-58 9 -93 47q-34 39 -34 98q0 56 33 98t94 54v55h66v-52q27 0 57 -11l-16 -76q-22 10 -52 10q-35 0 -55 -19.5t-20 -53.5q0 -36 22 -55t54 -19q33 0 58 10l13 -74q-21 -11 -61 -14v-55z" /> + <glyph glyph-name="uniF62F" unicode="&#xf62f;" horiz-adv-x="353" +d="M207 215h-65v55q-65 3 -111 27l20 79q53 -28 110 -28q56 0 56 32q0 14 -13.5 23t-52.5 22q-59 19 -87.5 43t-28.5 67q0 42 28.5 71.5t80.5 39.5v54h65v-50q53 -1 94 -20l-20 -76q-47 22 -95 22q-49 0 -49 -29q0 -14 15 -23t61 -23q57 -18 82 -44.5t25 -68.5t-30.5 -72.5 +t-84.5 -40.5v-60z" /> + <glyph glyph-name="uniF630" unicode="&#xf630;" horiz-adv-x="206" +d="M18 487h170v-71h-170v71z" /> + <glyph glyph-name="uniF631" unicode="&#xf631;" horiz-adv-x="204" +d="M110 691h76q-59 -107 -59 -239q0 -128 59 -238h-76q-69 101 -69 238t69 239z" /> + <glyph glyph-name="uniF632" unicode="&#xf632;" horiz-adv-x="204" +d="M94 214h-76q59 112 59 239q0 132 -59 238h76q69 -101 69 -239q0 -132 -69 -238z" /> + <glyph glyph-name="uniF633" unicode="&#xf633;" horiz-adv-x="770" +d="M442 343l15 95q-16 4 -31 4q-49 0 -83.5 -42t-34.5 -100q0 -61 49 -61q29 0 54 30.5t31 73.5zM528 82l17 -57q-80 -36 -183 -36q-130 0 -221 86.5t-91 228.5q0 102 46 188.5t132.5 139.5t195.5 53q133 0 218 -81.5t85 -207.5q0 -108 -54 -173.5t-136 -65.5 +q-36 0 -59 19.5t-27 58.5h-2q-49 -78 -130 -78q-49 0 -80.5 35.5t-31.5 96.5q0 95 65 163.5t170 68.5q74 0 118 -24l-30 -186q-13 -86 26 -87q36 -2 66.5 43.5t30.5 125.5q0 102 -63 166.5t-176 64.5q-120 0 -203.5 -85.5t-83.5 -225.5q0 -123 70.5 -192.5t184.5 -69.5 +q84 0 146 31z" /> + <glyph glyph-name="uniF634" unicode="&#xf634;" +d="M82 -241l-23 64q28 6 47 21.5t19 39.5q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90t-114 -33z" /> + <glyph glyph-name="uniF638" unicode="&#xf638;" horiz-adv-x="555" +d="M186 240l158 265q-20 41 -66 41q-47 0 -74 -57.5t-27 -162.5q0 -49 9 -86zM371 414l-160 -270q24 -40 66 -40q47 0 74 56.5t27 165.5q0 43 -7 88zM519 640l-53 -79q56 -85 56 -233q0 -156 -62.5 -247.5t-182.5 -91.5q-84 0 -142 49l-39 -61l-58 43l50 73q-55 86 -55 231 +q0 151 63 244t184 93q84 0 138 -46l42 66z" /> + <glyph glyph-name="uniF639" unicode="&#xf639;" horiz-adv-x="555" +d="M277 -11h-1q-120 0 -181 94t-62 241q0 149 63 243t184 94q122 0 182 -94t60 -239q0 -155 -62.5 -247t-182.5 -92zM278 104h1q91 0 91 222q0 220 -92 220q-44 0 -68.5 -56t-24.5 -164q-1 -110 23.5 -166t69.5 -56z" /> + <glyph glyph-name="uniF63A" unicode="&#xf63a;" horiz-adv-x="493" +d="M465 0h-461v92l83 75q116 104 164 163.5t49 113.5q0 42 -26 68.5t-80 26.5q-67 0 -139 -53l-43 108q87 67 212 67q108 0 168 -56.5t60 -147.5q0 -75 -45 -141t-128 -139l-60 -50v-2h246v-125z" /> + <glyph glyph-name="uniF63B" unicode="&#xf63b;" horiz-adv-x="498" +d="M7 34l31 115q72 -40 151 -40q57 0 88 24t31 62q0 46 -38 70t-92 24h-62v109h59q45 0 80 18.5t35 56.5q0 31 -24.5 49.5t-71.5 18.5q-72 0 -135 -39l-31 110q32 20 86.5 34.5t114.5 14.5q100 0 157.5 -46t57.5 -116q0 -111 -119 -151v-2q61 -11 101 -54t40 -105 +q0 -87 -72 -142.5t-194 -55.5q-119 0 -193 45z" /> + <glyph glyph-name="uniF63C" unicode="&#xf63c;" horiz-adv-x="546" +d="M448 0h-144v155h-288v99l245 396h187v-381h77v-114h-77v-155zM157 269h147v144q0 37 4 121h-3q-54 -107 -61 -121l-86 -142z" /> + <glyph glyph-name="uniF63D" unicode="&#xf63d;" horiz-adv-x="506" +d="M445 650v-125h-252l-14 -100q28 2 42 2q107 0 171 -47q79 -53 79 -163q0 -95 -76 -161.5t-203 -66.5q-111 0 -181 37l28 114q64 -32 146 -32q53 0 91.5 25.5t38.5 73.5q0 108 -183 108q-48 0 -87 -6l42 341h358z" /> + <glyph glyph-name="uniF63E" unicode="&#xf63e;" horiz-adv-x="556" +d="M458 659v-117q-21 1 -59 -2q-94 -7 -146 -49.5t-66 -105.5h3q51 51 138 51q85 0 143 -57t58 -155t-68 -166.5t-171 -68.5q-125 0 -192 80.5t-67 203.5q0 182 116 290q95 87 250 95q30 3 61 1zM287 101h1q39 0 63 32.5t24 82.5q0 48 -25 80t-72 32q-30 0 -54 -16t-35 -41 +q-7 -13 -7 -39q2 -56 29 -93.5t76 -37.5z" /> + <glyph glyph-name="uniF63F" unicode="&#xf63f;" horiz-adv-x="463" +d="M4 650h459v-95l-268 -555h-161l268 523v2h-298v125z" /> + <glyph glyph-name="uniF640" unicode="&#xf640;" horiz-adv-x="555" +d="M282 661h1q106 0 160.5 -50t54.5 -117q0 -96 -95 -143v-3q52 -20 86 -61t34 -100q0 -89 -68.5 -143.5t-181.5 -54.5q-116 0 -178.5 54t-62.5 127q0 112 116 163v2q-94 49 -94 143q0 81 65 132t163 51zM278 94h1q39 0 64 23t25 58q0 79 -102 107q-37 -10 -58 -36t-21 -61 +q-1 -37 24.5 -64t66.5 -27zM277 558h-1q-37 0 -57.5 -21.5t-20.5 -53.5q0 -60 91 -88q27 8 46.5 30.5t19.5 51.5q0 34 -19.5 57.5t-58.5 23.5z" /> + <glyph glyph-name="uniF641" unicode="&#xf641;" horiz-adv-x="556" +d="M89 -9v119q20 -3 66 0q75 3 129 40q64 42 82 120l-2 1q-47 -47 -132 -47t-143.5 55.5t-58.5 147.5q0 97 69.5 165.5t175.5 68.5q120 0 183 -79.5t63 -200.5q0 -194 -113 -299q-92 -85 -250 -91q-29 -2 -69 0zM271 550h-1q-39 0 -64 -31.5t-25 -82.5q0 -44 24 -74t68 -30 +q59 0 86 42q7 14 7 39q1 57 -23 97t-72 40z" /> + <glyph glyph-name="uniF642" unicode="&#xf642;" horiz-adv-x="891" +d="M202 616h1q81 0 127.5 -54t46.5 -140q0 -96 -52.5 -151t-127.5 -55q-76 0 -126.5 53.5t-50.5 142.5t50 146.5t132 57.5zM199 533h-1q-32 0 -48.5 -32.5t-16.5 -85.5q-1 -52 17 -84t50 -32q64 0 64 117t-65 117zM312 -11h-82l350 628h81zM696 391h1q81 0 127.5 -53.5 +t46.5 -138.5q0 -97 -52.5 -152.5t-127.5 -55.5q-76 0 -126.5 53.5t-50.5 143.5q0 88 50 145.5t132 57.5zM693 308h-1q-32 0 -48.5 -32.5t-16.5 -84.5q-1 -52 17 -84.5t50 -32.5q64 0 64 118q0 116 -65 116z" /> + <glyph glyph-name="uniF643" unicode="&#xf643;" horiz-adv-x="561" +d="M281 -11h-1q-116 0 -182 73t-66 182t66.5 182.5t182.5 73.5t182.5 -73.5t66.5 -182.5q0 -108 -66.5 -181.5t-182.5 -73.5zM281 100h1q48 0 75.5 38.5t27.5 105.5q0 68 -27.5 106.5t-76.5 38.5t-76.5 -38.5t-27.5 -106.5q0 -67 27.5 -105.5t76.5 -38.5z" /> + <glyph glyph-name="uniF644" unicode="&#xf644;" horiz-adv-x="561" +d="M413 0h-147v361h-2l-173 -69l-20 112l220 85h122v-489z" /> + <glyph glyph-name="uniF645" unicode="&#xf645;" horiz-adv-x="561" +d="M489 0h-428v82l60 39q98 61 140 103.5t42 84.5q0 74 -88 74q-56 0 -118 -35l-34 96q82 58 196 58q91 0 144 -44.5t53 -119.5q0 -107 -140 -200l-42 -27v-3q52 9 105 9h110v-117z" /> + <glyph glyph-name="uniF646" unicode="&#xf646;" horiz-adv-x="561" +d="M59 -103l16 110q46 -17 117 -17q59 0 94.5 22t35.5 62q0 35 -33.5 55t-91.5 20q-24 0 -54 -2l-1 106l28 2q60 4 97 22t37 49q0 57 -85 57q-60 0 -126 -33l-26 100q32 22 83.5 36t104.5 14q90 0 145.5 -40t55.5 -107q0 -49 -34.5 -87t-85.5 -50v-2q62 -10 102.5 -47 +t40.5 -96q0 -89 -80 -143t-191 -54q-95 0 -149 23z" /> + <glyph glyph-name="uniF647" unicode="&#xf647;" horiz-adv-x="561" +d="M532 31h-78v-156h-141v156h-284v98l239 362h186v-349h78v-111zM313 142v129q0 76 3 112h-4q-35 -72 -62 -115l-83 -122l2 -4h144z" /> + <glyph glyph-name="uniF648" unicode="&#xf648;" horiz-adv-x="561" +d="M70 -106l17 106q41 -13 106 -13q56 0 93.5 24t37.5 67q0 31 -21 52q-42 41 -213 37l54 322h326l-17 -123h-211l-18 -95q144 -2 209 -64q47 -47 47 -119q0 -93 -72 -153.5t-201 -60.5q-81 0 -137 20z" /> + <glyph glyph-name="uniF649" unicode="&#xf649;" horiz-adv-x="561" +d="M471 616l9 -108q-123 -4 -190 -45.5t-83 -101.5h2q45 47 122 47q84 0 139 -52t55 -142q0 -97 -70 -161t-169 -64q-113 0 -178.5 71t-65.5 188q0 162 115 264t314 104zM288 101h1q34 0 59.5 27.5t25.5 77.5q0 46 -24.5 74.5t-63.5 28.5q-47 0 -78 -36q-16 -17 -16 -52 +q0 -54 25.5 -87t70.5 -33z" /> + <glyph glyph-name="uniF64A" unicode="&#xf64a;" horiz-adv-x="561" +d="M492 489v-92q-44 -113 -120 -259.5t-151 -261.5l-146 18q69 102 145.5 237t115.5 232v2h-277v124h433z" /> + <glyph glyph-name="uniF64B" unicode="&#xf64b;" horiz-adv-x="561" +d="M407 329v-5q116 -48 116 -146q0 -84 -70 -136.5t-179 -52.5q-107 0 -172.5 48.5t-65.5 125.5q0 50 30 88.5t82 61.5v4q-90 44 -90 126q0 77 62 125.5t165 48.5q102 0 158 -46t56 -111q0 -86 -92 -131zM285 523h-1q-35 0 -56.5 -20t-21.5 -51q0 -28 24.5 -50.5t67.5 -34.5 +q28 9 46 31t18 50q0 35 -22.5 55t-54.5 20zM278 91h1q38 0 62.5 21.5t24.5 55.5q0 35 -28 61.5t-75 38.5q-35 -11 -55 -35.5t-20 -56.5q0 -37 25 -61t65 -24z" /> + <glyph glyph-name="uniF64C" unicode="&#xf64c;" horiz-adv-x="561" +d="M85 -120l-9 107q232 8 278 147l-2 1q-17 -20 -51 -33.5t-74 -13.5q-83 0 -137 54.5t-54 138.5q0 97 70.5 161t173.5 64q108 0 173 -72t65 -185q0 -75 -23 -137t-62.5 -105t-94.5 -72t-118.5 -42t-134.5 -13zM276 188h1q23 0 45.5 12.5t33.5 31.5q11 16 11 49 +q0 48 -25.5 79.5t-65.5 31.5q-37 0 -63 -27.5t-26 -75.5q0 -47 25 -74t64 -27z" /> + <glyph glyph-name="uniF64E" unicode="&#xf64e;" horiz-adv-x="561" +d="M497 123l15 -101q-56 -33 -147 -33q-119 0 -193 74q-45 47 -63 114h-66v68h55q0 6 -0.5 13t-0.5 9q0 16 1 25h-55v67h67q15 62 64 112q78 78 204 78q73 0 132 -26l-29 -102q-38 19 -92 19q-64 0 -103 -39q-18 -17 -26 -42h208v-67h-225q-1 -9 -1 -23t1 -24h225v-68h-207 +q7 -22 23 -38q39 -38 107 -38q62 0 106 22z" /> + <glyph glyph-name="uniF64F" unicode="&#xf64f;" horiz-adv-x="561" +d="M121 260v90h89l6 51q3 32 13 63t32.5 68.5t66.5 61t105 23.5q52 0 82 -16l-24 -108q-22 9 -47 9q-68 0 -80 -90l-8 -62h104v-90h-114l-21 -168q-14 -105 -57.5 -162.5t-141.5 -56.5q-57 0 -91 17l22 106q17 -7 47 -9q37 1 53.5 29.5t27.5 113.5l14 130h-78z" /> + <glyph glyph-name="uniF650" unicode="&#xf650;" horiz-adv-x="561" +d="M230 242h92l15 113h-91zM193 -8h-90l23 158h-82v92h97l16 113h-84v92h98l22 153h89l-22 -153h92l22 153h89l-22 -153h80v-92h-95l-15 -113h82v-92h-98l-22 -158h-90l23 158h-91z" /> + <glyph glyph-name="uniF651" unicode="&#xf651;" horiz-adv-x="561" +d="M515 0h-456v81q48 18 77 49.5t29 71.5q0 10 -2 28h-92v83h75q-5 25 -5 47q0 90 60.5 149.5t165.5 59.5q73 0 117 -25l-24 -110q-33 18 -85 18q-46 0 -69.5 -26t-23.5 -70q0 -26 4 -43h144v-83h-129v-15q-5 -58 -54 -94v-2h268v-119z" /> + <glyph glyph-name="uniF652" unicode="&#xf652;" horiz-adv-x="561" +d="M348 0h-143v105h-150v71h150v52h-150v71h117l-147 239h157l57 -125q31 -70 42 -100h1l43 101l59 124h153l-153 -239h116v-71h-152v-52h152v-71h-152v-105z" /> + <glyph glyph-name="uniF653" unicode="&#xf653;" horiz-adv-x="561" +d="M325 -88h-89v85q-96 3 -162 44l31 101q25 -16 67.5 -27.5t78.5 -11.5q78 0 78 40q0 17 -17.5 29.5t-67.5 28.5q-86 27 -122 61t-36 87q0 52 41.5 88.5t113.5 48.5v93h88v-88q83 -4 135 -33l-30 -97q-55 31 -122 31q-33 0 -53 -9.5t-20 -26.5t17 -28t74 -30 +q85 -26 121 -61t36 -87q0 -53 -42.5 -94.5t-119.5 -54.5v-89z" /> + <glyph glyph-name="uniF654" unicode="&#xf654;" horiz-adv-x="561" +d="M428 153l16 -95q-44 -18 -94 -19v-73h-86v75q-85 12 -135.5 66t-50.5 138q0 79 49.5 138t136.5 75v73h86v-69q47 -2 90 -16l-21 -98q-32 15 -83 15q-53 0 -85 -30.5t-32 -81.5q0 -54 34 -83t84 -29q51 0 91 14z" /> + <glyph glyph-name="uniF655" unicode="&#xf655;" horiz-adv-x="378" +d="M188 -5h-1q-82 0 -124 56t-42 144q0 87 42 143.5t125 56.5q82 0 125 -56t43 -144q0 -86 -42 -143t-126 -57zM188 73h1q56 0 56 122t-57 122q-56 0 -56 -122t56 -122z" /> + <glyph glyph-name="uniF656" unicode="&#xf656;" +d="M235 0h-117v295h-1l-80 -35l-15 82l111 48h102v-390z" /> + <glyph glyph-name="uniF657" unicode="&#xf657;" horiz-adv-x="352" +d="M15 0v57l62 55q80 72 97 95q19 25 19 49q0 22 -15.5 35t-43.5 13q-45 0 -86 -28l-30 76q59 43 146 43q72 0 112 -34t40 -87q0 -25 -8.5 -48t-27.5 -44.5t-35 -35.5t-44 -37l-24 -20v-2h146v-87h-308z" /> + <glyph glyph-name="uniF658" unicode="&#xf658;" horiz-adv-x="347" +d="M46 290l-21 73q55 32 140 32q69 0 106.5 -28t37.5 -71q0 -63 -82 -89v-2q42 -4 69.5 -29t27.5 -62q0 -53 -49 -86t-131 -33q-84 0 -135 28l23 78q47 -26 98 -26q31 0 51 13t20 32q0 24 -25 37t-61 13h-30v68h28q30 0 53.5 10t23.5 31q0 36 -53 36q-46 0 -91 -25z" /> + <glyph glyph-name="uniF659" unicode="&#xf659;" horiz-adv-x="393" +d="M320 0h-108v90h-192v63l166 240h134v-229h51v-74h-51v-90zM212 164v73q0 15 2 41t2 34h-2q-29 -57 -36 -67l-53 -80l2 -1h85z" /> + <glyph glyph-name="uniF65A" unicode="&#xf65a;" horiz-adv-x="348" +d="M299 389v-85h-161l-7 -49q7 1 27 1q72 0 112 -28q48 -33 48 -96q0 -59 -48.5 -98t-129.5 -39q-70 0 -118 22l18 78q40 -20 94 -20q29 0 52.5 13t23.5 39q0 57 -113 57q-26 0 -56 -4l26 209h232z" /> + <glyph glyph-name="uniF65B" unicode="&#xf65b;" horiz-adv-x="363" +d="M294 393l1 -79q-22 2 -38 1q-105 -6 -128 -79h1q36 27 85 27q56 0 91 -33.5t35 -91.5q0 -64 -45.5 -103.5t-107.5 -39.5q-82 0 -124 50t-42 122q0 106 69 169q62 54 164 57q25 2 39 0zM186 73h1q21 0 34.5 17t13.5 42q0 26 -14 43.5t-42 17.5q-36 0 -51 -34q-3 -7 -3 -20 +q0 -26 16.5 -46t44.5 -20z" /> + <glyph glyph-name="uniF65C" unicode="&#xf65c;" horiz-adv-x="333" +d="M23 389h295v-64l-165 -325h-113l166 303v1h-183v85z" /> + <glyph glyph-name="uniF65D" unicode="&#xf65d;" horiz-adv-x="361" +d="M182 395h1q67 0 102.5 -30t35.5 -71q0 -57 -59 -83v-2q75 -28 75 -94q0 -53 -43.5 -86.5t-117.5 -33.5q-76 0 -114.5 33.5t-38.5 74.5q0 63 73 94v2q-60 28 -60 85q0 49 41.5 80t104.5 31zM180 67h1q21 0 35 12t14 31q0 41 -57 55q-45 -16 -45 -51q0 -19 14.5 -33 +t37.5 -14zM179 325h-1q-20 0 -32 -11t-12 -28q0 -31 53 -48q16 5 26.5 17t10.5 27q0 18 -12 30.5t-33 12.5z" /> + <glyph glyph-name="uniF65E" unicode="&#xf65e;" horiz-adv-x="358" +d="M57 -3v79q24 -2 39 -1q48 2 82 20q40 22 52 63l-2 1q-28 -26 -79 -26q-53 0 -90.5 32.5t-37.5 89.5q0 59 44.5 99.5t110.5 40.5q79 0 120 -49.5t41 -119.5q0 -114 -68 -174q-60 -53 -173 -56q-18 -1 -39 1zM177 318h-1q-21 0 -35.5 -16t-14.5 -42q0 -24 14 -40.5 +t39 -16.5q34 0 49 23q4 7 4 23q0 29 -13.5 49t-41.5 20z" /> + <glyph glyph-name="uniF65F" unicode="&#xf65f;" horiz-adv-x="172" +d="M67 -61l-74 -6q33 94 48 185l111 5q-33 -101 -85 -184z" /> + <glyph glyph-name="uniF660" unicode="&#xf660;" horiz-adv-x="172" +d="M86 -5h-1q-28 0 -45.5 18t-17.5 46q0 29 18 46.5t46 17.5t46 -17.5t18 -46.5q0 -28 -18 -46t-46 -18z" /> + <glyph glyph-name="uniF661" unicode="&#xf661;" horiz-adv-x="378" +d="M188 261h-1q-82 0 -124 56t-42 144q0 87 42 143.5t125 56.5q82 0 125 -56t43 -144q0 -86 -42 -143t-126 -57zM188 339h1q56 0 56 122t-57 122q-56 0 -56 -122t56 -122z" /> + <glyph glyph-name="uniF662" unicode="&#xf662;" +d="M235 266h-117v295h-1l-80 -35l-15 82l111 48h102v-390z" /> + <glyph glyph-name="uniF663" unicode="&#xf663;" horiz-adv-x="352" +d="M15 266v57l62 55q80 72 97 95q19 25 19 49q0 22 -15.5 35t-43.5 13q-45 0 -86 -28l-30 76q59 43 146 43q72 0 112 -34t40 -87q0 -25 -8.5 -48t-27.5 -44.5t-35 -35.5t-44 -37l-24 -20v-2h146v-87h-308z" /> + <glyph glyph-name="uniF664" unicode="&#xf664;" horiz-adv-x="347" +d="M46 556l-21 73q55 32 140 32q69 0 106.5 -28t37.5 -71q0 -63 -82 -89v-2q42 -4 69.5 -29t27.5 -62q0 -53 -49 -86t-131 -33q-84 0 -135 28l23 78q47 -26 98 -26q31 0 51 13t20 32q0 24 -25 37t-61 13h-30v68h28q30 0 53.5 10t23.5 31q0 36 -53 36q-46 0 -91 -25z" /> + <glyph glyph-name="uniF665" unicode="&#xf665;" horiz-adv-x="393" +d="M320 266h-108v90h-192v63l166 240h134v-229h51v-74h-51v-90zM212 430v73q0 15 2 41t2 34h-2q-29 -57 -36 -67l-53 -80l2 -1h85z" /> + <glyph glyph-name="uniF666" unicode="&#xf666;" horiz-adv-x="348" +d="M299 655v-85h-161l-7 -49q7 1 27 1q72 0 112 -28q48 -33 48 -96q0 -59 -48.5 -98t-129.5 -39q-70 0 -118 22l18 78q40 -20 94 -20q29 0 52.5 13t23.5 39q0 57 -113 57q-26 0 -56 -4l26 209h232z" /> + <glyph glyph-name="uniF667" unicode="&#xf667;" horiz-adv-x="363" +d="M294 659l1 -79q-22 2 -38 1q-105 -6 -128 -79h1q36 27 85 27q56 0 91 -33.5t35 -91.5q0 -64 -45.5 -103.5t-107.5 -39.5q-82 0 -124 50t-42 122q0 106 69 169q62 54 164 57q25 2 39 0zM186 339h1q21 0 34.5 17t13.5 42q0 26 -14 43.5t-42 17.5q-36 0 -51 -34 +q-3 -7 -3 -20q0 -26 16.5 -46t44.5 -20z" /> + <glyph glyph-name="uniF668" unicode="&#xf668;" horiz-adv-x="333" +d="M23 655h295v-64l-165 -325h-113l166 303v1h-183v85z" /> + <glyph glyph-name="uniF669" unicode="&#xf669;" horiz-adv-x="361" +d="M182 661h1q67 0 102.5 -30t35.5 -71q0 -57 -59 -83v-2q75 -28 75 -94q0 -53 -43.5 -86.5t-117.5 -33.5q-76 0 -114.5 33.5t-38.5 74.5q0 63 73 94v2q-60 28 -60 85q0 49 41.5 80t104.5 31zM180 333h1q21 0 35 12t14 31q0 41 -57 55q-45 -16 -45 -51q0 -19 14.5 -33 +t37.5 -14zM179 591h-1q-20 0 -32 -11t-12 -28q0 -31 53 -48q16 5 26.5 17t10.5 27q0 18 -12 30.5t-33 12.5z" /> + <glyph glyph-name="uniF66A" unicode="&#xf66a;" horiz-adv-x="358" +d="M57 263v79q24 -2 39 -1q48 2 82 20q40 22 52 63l-2 1q-28 -26 -79 -26q-53 0 -90.5 32.5t-37.5 89.5q0 59 44.5 99.5t110.5 40.5q79 0 120 -49.5t41 -119.5q0 -114 -68 -174q-60 -53 -173 -56q-18 -1 -39 1zM177 584h-1q-21 0 -35.5 -16t-14.5 -42q0 -24 14 -40.5 +t39 -16.5q34 0 49 23q4 7 4 23q0 29 -13.5 49t-41.5 20z" /> + <glyph glyph-name="uniF66B" unicode="&#xf66b;" horiz-adv-x="172" +d="M67 205l-74 -6q33 94 48 185l111 5q-33 -101 -85 -184z" /> + <glyph glyph-name="uniF66C" unicode="&#xf66c;" horiz-adv-x="172" +d="M86 261h-1q-28 0 -45.5 18t-17.5 46q0 29 18 46.5t46 17.5t46 -17.5t18 -46.5q0 -28 -18 -46t-46 -18z" /> + <glyph glyph-name="uniF6AE" unicode="&#xf6ae;" horiz-adv-x="314" +d="M174 729h106q-101 -166 -101 -405q0 -233 101 -403h-106q-114 168 -114 403q1 239 114 405z" /> + <glyph glyph-name="uniF6AF" unicode="&#xf6af;" horiz-adv-x="314" +d="M141 -79h-106q101 168 101 405q0 235 -101 403h106q114 -166 114 -404q-1 -236 -114 -404z" /> + <glyph glyph-name="uniF6B0" unicode="&#xf6b0;" horiz-adv-x="314" +d="M272 -74h-204v798h204v-84h-95v-630h95v-84z" /> + <glyph glyph-name="uniF6B1" unicode="&#xf6b1;" horiz-adv-x="314" +d="M42 724h204v-798h-204v84h95v630h-95v84z" /> + <glyph glyph-name="uniF6B2" unicode="&#xf6b2;" horiz-adv-x="314" +d="M30 287v76q46 2 61 21t15 48q0 10 -5 78q-6 54 -6 79q0 135 152 135h35v-85h-18q-61 -1 -61 -71q0 -22 5 -57q5 -50 5 -69q1 -54 -20 -80t-65 -36v-2q44 -9 65 -35t20 -81q0 -18 -5 -70q-5 -33 -5 -56q0 -71 61 -72h18v-84h-36q-151 0 -151 136q0 25 6 79q5 67 5 78 +q0 65 -76 68z" /> + <glyph glyph-name="uniF6B3" unicode="&#xf6b3;" horiz-adv-x="314" +d="M284 363v-76q-76 -3 -76 -68q0 -24 6 -78q5 -68 5 -79q0 -136 -151 -136h-36v84h18q61 1 61 72q0 23 -5 56q-5 53 -5 70q-1 55 20 81t65 35v2q-44 10 -65 36t-20 80q0 19 5 69q5 35 5 57q0 70 -61 71h-18v85h35q152 0 152 -135q0 -11 -5 -79q-6 -54 -6 -78q0 -19 4 -31.5 +t22 -24.5t50 -13z" /> + <glyph glyph-name="uniF6B4" unicode="&#xf6b4;" horiz-adv-x="268" +d="M213 0h-158l22 451h114zM135 684h1q39 0 63.5 -25.5t24.5 -65.5q-1 -40 -25 -65.5t-64 -25.5t-65 25.5t-25 65.5t25 65.5t65 25.5z" /> + <glyph glyph-name="uniF6B5" unicode="&#xf6b5;" horiz-adv-x="445" +d="M248 684h1q39 0 63.5 -25.5t24.5 -65.5t-24.5 -65.5t-64.5 -25.5t-64.5 25.5t-24.5 65.5t24.5 65.5t64.5 25.5zM179 455h132l2 -26q3 -83 -59 -156q-58 -69 -58 -105q0 -26 18 -42t54 -17q57 0 100 30l33 -109q-70 -41 -167 -41q-93 0 -142.5 44.5t-49.5 110.5 +q0 34 14 66.5t26.5 49t38.5 45.5q5 5 7 8q52 58 51 124v18z" /> + <glyph glyph-name="uniF6B6" unicode="&#xf6b6;" horiz-adv-x="465" +d="M248 518l-120 -191l120 -190h-106l-116 190l116 191h106zM442 518l-120 -191l120 -190h-106l-116 190l116 191h106z" /> + <glyph glyph-name="uniF6B7" unicode="&#xf6b7;" horiz-adv-x="465" +d="M142 327l-119 191h104l117 -191l-116 -190h-105zM334 327l-119 191h104l117 -191l-117 -190h-104z" /> + <glyph glyph-name="uniF6B8" unicode="&#xf6b8;" horiz-adv-x="270" +d="M248 518l-120 -191l120 -190h-106l-116 190l116 191h106z" /> + <glyph glyph-name="uniF6B9" unicode="&#xf6b9;" horiz-adv-x="270" +d="M142 327l-120 191h105l117 -191l-117 -190h-105z" /> + <glyph glyph-name="uniF6BA" unicode="&#xf6ba;" horiz-adv-x="322" +d="M30 388h262v-101h-262v101z" /> + <glyph glyph-name="uniF6BB" unicode="&#xf6bb;" horiz-adv-x="500" +d="M30 376h440v-94h-440v94z" /> + <glyph glyph-name="uniF6BC" unicode="&#xf6bc;" horiz-adv-x="1000" +d="M30 376h940v-94h-940v94z" /> + <glyph glyph-name="uniF6BD" unicode="&#xf6bd;" horiz-adv-x="260" +d="M130 242h-1q-38 0 -63 26t-25 66q0 41 25 67t65 26q39 0 63.5 -26t25.5 -67q0 -40 -25 -66t-65 -26z" /> + <glyph glyph-name="commaaccent" unicode="&#xf6c3;" +d="M82 -242l-23 65q27 5 46.5 21t19.5 40q0 27 -29 60l105 17q39 -29 39 -79q0 -59 -44 -90.5t-114 -33.5z" /> + <glyph glyph-name="Acute" unicode="&#xf6c9;" +d="M159 833h160l-122 -123h-122z" /> + <glyph glyph-name="Caron" unicode="&#xf6ca;" +d="M207 710h-114l-101 123h107l50 -62h2l50 62h106z" /> + <glyph glyph-name="Dieresis" unicode="&#xf6cb;" +d="M47 713h-1q-28 0 -48 20t-20 48q0 29 20 49t49 20q28 0 47 -19.5t19 -49.5q0 -28 -19 -48t-47 -20zM254 713h-1q-29 0 -48 20t-19 48q0 29 19.5 49t48.5 20t48 -19.5t19 -49.5q0 -28 -19 -48t-48 -20z" /> + <glyph glyph-name="DieresisAcute" unicode="&#xf6cc;" +d="M-26 713h-1q-27 0 -45.5 19t-18.5 45q0 28 19 46.5t47 18.5q26 0 44 -18.5t18 -46.5q0 -27 -18 -45.5t-45 -18.5zM329 713h-1q-26 0 -44.5 19t-18.5 45q0 28 18.5 46.5t46.5 18.5q27 0 45 -18.5t18 -46.5q0 -27 -18.5 -45.5t-45.5 -18.5zM114 837h149l-116 -125h-110z +" /> + <glyph glyph-name="DieresisGrave" unicode="&#xf6cd;" +d="M-26 713h-1q-27 0 -45.5 19t-18.5 45q0 28 19 46.5t47 18.5q26 0 44 -18.5t18 -46.5q0 -27 -18 -45.5t-45 -18.5zM329 713h-1q-26 0 -44.5 19t-18.5 45q0 28 18.5 46.5t46.5 18.5q27 0 45 -18.5t18 -46.5q0 -27 -18.5 -45.5t-45.5 -18.5zM37 837h149l78 -125h-111z" /> + <glyph glyph-name="Grave" unicode="&#xf6ce;" +d="M-14 834h160l84 -122h-122z" /> + <glyph glyph-name="Hungarumlaut" unicode="&#xf6cf;" +d="M72 834h141l-101 -116h-105zM254 834h141l-102 -116h-104z" /> + <glyph glyph-name="Macron" unicode="&#xf6d0;" +d="M21 815h259v-81h-259v81z" /> + <glyph glyph-name="cyrBreve" unicode="&#xf6d1;" +d="M2 845h103q3 -61 45 -61q41 0 46 61h103q-9 -123 -152 -123q-133 0 -145 123z" /> + <glyph glyph-name="cyrFlex" unicode="&#xf6d2;" +d="M299 722l-103 -1q-2 61 -44 61q-40 0 -47 -61l-103 1q10 122 152 122q66 0 103.5 -31t41.5 -91z" /> + <glyph glyph-name="dblGrave" unicode="&#xf6d3;" +d="M-92 836h151l81 -125h-109zM127 836h150l82 -125h-110z" /> + <glyph glyph-name="cyrbreve" unicode="&#xf6d4;" +d="M7 691h96q2 -71 46 -71t49 71h96q-4 -69 -43 -105t-104 -36q-67 0 -102 37t-38 104z" /> + <glyph glyph-name="cyrflex" unicode="&#xf6d5;" +d="M99 560h-96q4 69 42.5 105t104.5 36q67 0 102 -37t38 -104h-96q-2 71 -46 71t-49 -71z" /> + <glyph glyph-name="dblgrave" unicode="&#xf6d6;" +d="M-31 700h120l64 -150h-85zM146 700h120l64 -150h-85z" /> + <glyph glyph-name="dieresisacute" unicode="&#xf6d7;" horiz-adv-x="301" +d="M-4 560h-1q-27 0 -46 19.5t-19 46.5q0 28 19 47t48 19q27 0 45 -19t18 -47t-18 -47t-46 -19zM304 560h-1q-27 0 -45.5 19.5t-18.5 46.5q0 28 18.5 47t47.5 19q28 0 46 -18.5t18 -47.5q0 -28 -18.5 -47t-46.5 -19zM123 709h129l-95 -152h-91z" /> + <glyph glyph-name="dieresisgrave" unicode="&#xf6d8;" horiz-adv-x="301" +d="M-3 560h-1q-27 0 -46 19.5t-19 46.5q0 28 19 47t48 19q27 0 45 -19t18 -47t-18 -47t-46 -19zM304 560h-1q-27 0 -45.5 19.5t-18.5 46.5q0 28 18.5 47t47.5 19q28 0 46 -18.5t18 -47.5q0 -28 -18.5 -47t-46.5 -19zM49 709h130l57 -152h-92z" /> + <glyph glyph-name="uniF6DC" unicode="&#xf6dc;" horiz-adv-x="381" +d="M156 0v515h-2l-124 -59l-25 114l173 80h125v-650h-147z" /> + <glyph glyph-name="centinferior" unicode="&#xf6df;" horiz-adv-x="330" +d="M229 -152h-66v57q-58 9 -93 47q-34 39 -34 98q0 56 33 98t94 54v55h66v-52q27 0 57 -11l-16 -76q-22 10 -52 10q-35 0 -55 -19.5t-20 -53.5q0 -36 22 -55t54 -19q33 0 58 10l13 -74q-21 -11 -61 -14v-55z" /> + <glyph glyph-name="centsuperior" unicode="&#xf6e0;" horiz-adv-x="330" +d="M229 438h-66v57q-58 9 -93 47q-34 39 -34 98q0 56 33 98t94 54v55h66v-52q27 0 57 -11l-16 -76q-22 10 -52 10q-35 0 -55 -19.5t-20 -53.5q0 -36 22 -55t54 -19q33 0 58 10l13 -74q-21 -11 -61 -14v-55z" /> + <glyph glyph-name="commainferior" unicode="&#xf6e1;" horiz-adv-x="172" +d="M67 -208l-74 -6q33 94 48 185l111 5q-33 -101 -85 -184z" /> + <glyph glyph-name="commasuperior" unicode="&#xf6e2;" horiz-adv-x="172" +d="M67 382l-74 -6q33 94 48 185l111 5q-33 -101 -85 -184z" /> + <glyph glyph-name="dollarinferior" unicode="&#xf6e3;" horiz-adv-x="353" +d="M207 -198h-65v55q-65 3 -111 27l20 79q52 -28 110 -28q56 0 56 32q0 14 -13.5 23t-52.5 22q-59 19 -87.5 43t-28.5 67q0 42 28.5 71.5t80.5 39.5v54h65v-50q53 -1 94 -20l-20 -76q-47 22 -95 22q-49 0 -49 -29q0 -14 15 -23t61 -23q57 -18 82 -44.5t25 -68.5t-30.5 -72.5 +t-84.5 -40.5v-60z" /> + <glyph glyph-name="dollarsuperior" unicode="&#xf6e4;" horiz-adv-x="353" +d="M207 392h-65v55q-65 3 -111 27l20 79q53 -28 110 -28q56 0 56 32q0 14 -13.5 23t-52.5 22q-59 19 -87.5 43t-28.5 67q0 42 28.5 71.5t80.5 39.5v54h65v-50q53 -1 94 -20l-20 -76q-47 22 -95 22q-49 0 -49 -29q0 -14 15 -23t61 -23q57 -18 82 -44.5t25 -68.5t-30.5 -72.5 +t-84.5 -40.5v-60z" /> + <glyph glyph-name="hypheninferior" unicode="&#xf6e5;" horiz-adv-x="206" +d="M18 74h170v-71h-170v71z" /> + <glyph glyph-name="hyphensuperior" unicode="&#xf6e6;" horiz-adv-x="206" +d="M18 664h170v-71h-170v71z" /> + <glyph glyph-name="periodinferior" unicode="&#xf6e7;" horiz-adv-x="172" +d="M86 -152h-1q-28 0 -45.5 18t-17.5 46t18 46t46 18t46 -18t18 -46t-18 -46t-46 -18z" /> + <glyph glyph-name="periodsuperior" unicode="&#xf6e8;" horiz-adv-x="172" +d="M86 438h-1q-28 0 -45.5 18t-17.5 46t18 46t46 18t46 -18t18 -46t-18 -46t-46 -18z" /> + <glyph glyph-name="zerooldstyle" unicode="&#xf730;" horiz-adv-x="561" +d="M281 -11h-1q-116 0 -182 73t-66 182t66.5 182.5t182.5 73.5t182.5 -73.5t66.5 -182.5q0 -108 -66.5 -181.5t-182.5 -73.5zM281 100h1q48 0 75.5 38.5t27.5 105.5q0 68 -27.5 106.5t-76.5 38.5t-76.5 -38.5t-27.5 -106.5q0 -67 27.5 -105.5t76.5 -38.5z" /> + <glyph glyph-name="oneoldstyle" unicode="&#xf731;" horiz-adv-x="412" +d="M326 0h-147v356h-2l-127 -58l-25 113l179 78h122v-489z" /> + <glyph glyph-name="twooldstyle" unicode="&#xf732;" horiz-adv-x="476" +d="M451 0h-428v82l60 39q98 61 140 103.5t42 84.5q0 74 -88 74q-56 0 -118 -35l-34 96q82 58 196 58q91 0 144 -44.5t53 -119.5q0 -107 -140 -200l-42 -27v-3q52 9 105 9h110v-117z" /> + <glyph glyph-name="threeoldstyle" unicode="&#xf733;" horiz-adv-x="471" +d="M20 -103l16 110q46 -17 117 -17q59 0 94.5 22t35.5 62q0 35 -33.5 55t-91.5 20q-24 0 -54 -2l-1 106l28 2q60 4 97 22t37 49q0 57 -85 57q-60 0 -126 -33l-26 100q32 22 83.5 36t104.5 14q90 0 145.5 -40t55.5 -107q0 -49 -34.5 -87t-85.5 -50v-2q62 -10 102.5 -47 +t40.5 -96q0 -89 -80 -143t-191 -54q-95 0 -149 23z" /> + <glyph glyph-name="fouroldstyle" unicode="&#xf734;" horiz-adv-x="546" +d="M526 31h-78v-156h-141v156h-284v98l239 362h186v-349h78v-111zM307 142v129q0 76 3 112h-4q-35 -72 -62 -115l-83 -122l2 -4h144z" /> + <glyph glyph-name="fiveoldstyle" unicode="&#xf735;" horiz-adv-x="466" +d="M24 -106l17 106q41 -13 106 -13q56 0 93.5 24t37.5 67q0 31 -21 52q-42 41 -213 37l54 322h326l-17 -123h-211l-18 -95q144 -2 209 -64q47 -47 47 -119q0 -93 -72 -153.5t-201 -60.5q-81 0 -137 20z" /> + <glyph glyph-name="sixoldstyle" unicode="&#xf736;" horiz-adv-x="550" +d="M463 616l9 -108q-123 -4 -190 -45.5t-83 -101.5h2q45 47 122 47q84 0 139 -52t55 -142q0 -97 -70 -161t-169 -64q-113 0 -178.5 71t-65.5 188q0 162 115 264t314 104zM280 101h1q34 0 59.5 27.5t25.5 77.5q0 46 -24.5 74.5t-63.5 28.5q-47 0 -78 -36q-16 -17 -16 -52 +q0 -54 25.5 -87t70.5 -33z" /> + <glyph glyph-name="sevenoldstyle" unicode="&#xf737;" horiz-adv-x="476" +d="M450 489v-92q-44 -113 -120 -259.5t-151 -261.5l-146 18q69 102 145.5 237t115.5 232v2h-277v124h433z" /> + <glyph glyph-name="eightoldstyle" unicode="&#xf738;" horiz-adv-x="552" +d="M403 329v-5q116 -48 116 -146q0 -84 -70 -136.5t-179 -52.5q-107 0 -172.5 48.5t-65.5 125.5q0 50 30 88.5t82 61.5v4q-90 44 -90 126q0 77 62 125.5t165 48.5q102 0 158 -46t56 -111q0 -86 -92 -131zM281 523h-1q-35 0 -56.5 -20t-21.5 -51q0 -28 24.5 -50.5t67.5 -34.5 +q28 9 46 31t18 50q0 35 -22.5 55t-54.5 20zM274 91h1q38 0 62.5 21.5t24.5 55.5q0 35 -28 61.5t-75 38.5q-35 -11 -55 -35.5t-20 -56.5q0 -37 25 -61t65 -24z" /> + <glyph glyph-name="nineoldstyle" unicode="&#xf739;" horiz-adv-x="550" +d="M82 -120l-9 107q232 8 278 147l-2 1q-17 -20 -51 -33.5t-74 -13.5q-83 0 -137 54.5t-54 138.5q0 97 70.5 161t173.5 64q108 0 173 -72t65 -185q0 -75 -23 -137t-62.5 -105t-94.5 -72t-118.5 -42t-134.5 -13zM273 188h1q23 0 45.5 12.5t33.5 31.5q11 16 11 49 +q0 48 -25.5 79.5t-65.5 31.5q-37 0 -63 -27.5t-26 -75.5q0 -47 25 -74t64 -27z" /> + <hkern u1="&#x20;" u2="&#x38f;" k="12" /> + <hkern u1="&#x20;" u2="&#x38e;" k="30" /> + <hkern u1="&#x20;" u2="&#x38c;" k="12" /> + <hkern u1="&#x20;" u2="&#x386;" k="50" /> + <hkern u1="C" u2="&#x152;" k="31" /> + <hkern u1="C" u2="&#x127;" k="-7" /> + <hkern u1="D" u2="&#x142;" k="-7" /> + <hkern u1="F" u2="&#xef;" k="-24" /> + <hkern u1="L" u2="&#x1fe;" k="36" /> + <hkern u1="L" u2="&#xd8;" k="36" /> + <hkern u1="O" u2="&#x142;" k="-7" /> + <hkern u1="Q" u2="&#x142;" k="-7" /> + <hkern u1="S" u2="&#x1fd;" k="-8" /> + <hkern u1="S" u2="&#xe6;" k="-8" /> + <hkern u1="T" u2="&#x133;" k="23" /> + <hkern u1="T" u2="&#x131;" k="23" /> + <hkern u1="T" u2="&#x12f;" k="23" /> + <hkern u1="T" u2="&#x12d;" k="-28" /> + <hkern u1="T" u2="&#x12b;" k="23" /> + <hkern u1="T" u2="&#x129;" k="23" /> + <hkern u1="T" u2="&#xef;" k="-61" /> + <hkern u1="T" u2="&#xee;" k="23" /> + <hkern u1="T" u2="&#xed;" k="23" /> + <hkern u1="T" u2="&#xec;" k="23" /> + <hkern u1="T" u2="&#xe8;" k="80" /> + <hkern u1="T" u2="&#xe0;" k="58" /> + <hkern u1="T" u2="i" k="23" /> + <hkern u1="V" u2="&#x1fc;" k="58" /> + <hkern u1="V" u2="&#x12d;" k="-26" /> + <hkern u1="V" u2="&#xef;" k="-57" /> + <hkern u1="V" u2="&#xc6;" k="58" /> + <hkern u1="W" u2="&#x1fc;" k="58" /> + <hkern u1="W" u2="&#x12d;" k="-26" /> + <hkern u1="W" u2="&#xef;" k="-57" /> + <hkern u1="W" u2="&#xc6;" k="58" /> + <hkern u1="Y" u2="&#x12d;" k="-7" /> + <hkern u1="Y" u2="&#xf6;" k="77" /> + <hkern u1="Y" u2="&#xef;" k="-44" /> + <hkern u1="Y" u2="&#xeb;" k="77" /> + <hkern u1="Y" u2="&#xe4;" k="55" /> + <hkern u1="&#xc7;" u2="&#x152;" k="31" /> + <hkern u1="&#xc7;" u2="&#x127;" k="-7" /> + <hkern u1="&#xd0;" u2="&#x142;" k="-7" /> + <hkern u1="&#xd2;" u2="&#x142;" k="-7" /> + <hkern u1="&#xd3;" u2="&#x142;" k="-7" /> + <hkern u1="&#xd4;" u2="&#x142;" k="-7" /> + <hkern u1="&#xd5;" u2="&#x142;" k="-7" /> + <hkern u1="&#xd6;" u2="&#x142;" k="-7" /> + <hkern u1="&#xd8;" u2="&#x142;" k="-7" /> + <hkern u1="&#xdd;" u2="&#x12d;" k="-7" /> + <hkern u1="&#xdd;" u2="&#xf6;" k="77" /> + <hkern u1="&#xdd;" u2="&#xef;" k="-44" /> + <hkern u1="&#xdd;" u2="&#xeb;" k="77" /> + <hkern u1="&#xdd;" u2="&#xe4;" k="55" /> + <hkern u1="&#x106;" u2="&#x152;" k="31" /> + <hkern u1="&#x106;" u2="&#x127;" k="-7" /> + <hkern u1="&#x108;" u2="&#x152;" k="31" /> + <hkern u1="&#x108;" u2="&#x127;" k="-7" /> + <hkern u1="&#x10a;" u2="&#x152;" k="31" /> + <hkern u1="&#x10a;" u2="&#x127;" k="-7" /> + <hkern u1="&#x10c;" u2="&#x152;" k="31" /> + <hkern u1="&#x10c;" u2="&#x127;" k="-7" /> + <hkern u1="&#x10e;" u2="&#x142;" k="-7" /> + <hkern u1="&#x10f;" u2="&#x201d;" k="-108" /> + <hkern u1="&#x10f;" u2="&#x2019;" k="-108" /> + <hkern u1="&#x10f;" u2="&#x142;" k="-106" /> + <hkern u1="&#x10f;" u2="&#x140;" k="-106" /> + <hkern u1="&#x10f;" u2="&#x13e;" k="-106" /> + <hkern u1="&#x10f;" u2="&#x13c;" k="-106" /> + <hkern u1="&#x10f;" u2="&#x13a;" k="-106" /> + <hkern u1="&#x10f;" u2="&#x137;" k="-106" /> + <hkern u1="&#x10f;" u2="&#x127;" k="-106" /> + <hkern u1="&#x10f;" u2="&#x125;" k="-106" /> + <hkern u1="&#x10f;" u2="l" k="-106" /> + <hkern u1="&#x10f;" u2="k" k="-106" /> + <hkern u1="&#x10f;" u2="h" k="-106" /> + <hkern u1="&#x10f;" u2="b" k="-106" /> + <hkern u1="&#x110;" u2="&#x142;" k="-7" /> + <hkern u1="&#x139;" u2="&#x1fe;" k="36" /> + <hkern u1="&#x139;" u2="&#xd8;" k="36" /> + <hkern u1="&#x13b;" u2="&#x1fe;" k="36" /> + <hkern u1="&#x13b;" u2="&#xd8;" k="36" /> + <hkern u1="&#x13d;" u2="&#x1fe;" k="36" /> + <hkern u1="&#x13d;" u2="&#xd8;" k="36" /> + <hkern u1="&#x13f;" u2="&#x39f;" k="32" /> + <hkern u1="&#x13f;" u2="&#x398;" k="32" /> + <hkern u1="&#x13f;" u2="&#x1fe;" k="32" /> + <hkern u1="&#x13f;" u2="&#x152;" k="32" /> + <hkern u1="&#x13f;" u2="&#x150;" k="32" /> + <hkern u1="&#x13f;" u2="&#x14e;" k="32" /> + <hkern u1="&#x13f;" u2="&#x14c;" k="32" /> + <hkern u1="&#x13f;" u2="&#x122;" k="32" /> + <hkern u1="&#x13f;" u2="&#x120;" k="32" /> + <hkern u1="&#x13f;" u2="&#x11e;" k="32" /> + <hkern u1="&#x13f;" u2="&#x11c;" k="32" /> + <hkern u1="&#x13f;" u2="&#x10c;" k="32" /> + <hkern u1="&#x13f;" u2="&#x10a;" k="32" /> + <hkern u1="&#x13f;" u2="&#x108;" k="32" /> + <hkern u1="&#x13f;" u2="&#x106;" k="32" /> + <hkern u1="&#x13f;" u2="&#xd8;" k="32" /> + <hkern u1="&#x13f;" u2="&#xd6;" k="32" /> + <hkern u1="&#x13f;" u2="&#xd5;" k="32" /> + <hkern u1="&#x13f;" u2="&#xd4;" k="32" /> + <hkern u1="&#x13f;" u2="&#xd3;" k="32" /> + <hkern u1="&#x13f;" u2="&#xd2;" k="32" /> + <hkern u1="&#x13f;" u2="&#xc7;" k="32" /> + <hkern u1="&#x13f;" u2="Q" k="32" /> + <hkern u1="&#x13f;" u2="O" k="32" /> + <hkern u1="&#x13f;" u2="G" k="32" /> + <hkern u1="&#x13f;" u2="C" k="32" /> + <hkern u1="&#x141;" u2="&#x1fe;" k="36" /> + <hkern u1="&#x141;" u2="&#xd8;" k="36" /> + <hkern u1="&#x142;" u2="&#x201d;" k="-11" /> + <hkern u1="&#x142;" u2="&#x2019;" k="-11" /> + <hkern u1="&#x14c;" u2="&#x142;" k="-7" /> + <hkern u1="&#x14e;" u2="&#x142;" k="-7" /> + <hkern u1="&#x150;" u2="&#x142;" k="-7" /> + <hkern u1="&#x15a;" u2="&#x1fd;" k="-8" /> + <hkern u1="&#x15a;" u2="&#xe6;" k="-8" /> + <hkern u1="&#x15c;" u2="&#x1fd;" k="-8" /> + <hkern u1="&#x15c;" u2="&#xe6;" k="-8" /> + <hkern u1="&#x15e;" u2="&#x1fd;" k="-8" /> + <hkern u1="&#x15e;" u2="&#xe6;" k="-8" /> + <hkern u1="&#x160;" u2="&#x1fd;" k="-8" /> + <hkern u1="&#x160;" u2="&#xe6;" k="-8" /> + <hkern u1="&#x162;" u2="&#x133;" k="23" /> + <hkern u1="&#x162;" u2="&#x131;" k="23" /> + <hkern u1="&#x162;" u2="&#x12f;" k="23" /> + <hkern u1="&#x162;" u2="&#x12d;" k="-28" /> + <hkern u1="&#x162;" u2="&#x12b;" k="23" /> + <hkern u1="&#x162;" u2="&#x129;" k="23" /> + <hkern u1="&#x162;" u2="&#xef;" k="-61" /> + <hkern u1="&#x162;" u2="&#xee;" k="23" /> + <hkern u1="&#x162;" u2="&#xed;" k="23" /> + <hkern u1="&#x162;" u2="&#xec;" k="23" /> + <hkern u1="&#x162;" u2="&#xe8;" k="80" /> + <hkern u1="&#x162;" u2="&#xe0;" k="58" /> + <hkern u1="&#x162;" u2="i" k="23" /> + <hkern u1="&#x164;" u2="&#x133;" k="23" /> + <hkern u1="&#x164;" u2="&#x131;" k="23" /> + <hkern u1="&#x164;" u2="&#x12f;" k="23" /> + <hkern u1="&#x164;" u2="&#x12d;" k="-28" /> + <hkern u1="&#x164;" u2="&#x12b;" k="23" /> + <hkern u1="&#x164;" u2="&#x129;" k="23" /> + <hkern u1="&#x164;" u2="&#xef;" k="-61" /> + <hkern u1="&#x164;" u2="&#xee;" k="23" /> + <hkern u1="&#x164;" u2="&#xed;" k="23" /> + <hkern u1="&#x164;" u2="&#xec;" k="23" /> + <hkern u1="&#x164;" u2="&#xe8;" k="80" /> + <hkern u1="&#x164;" u2="&#xe0;" k="58" /> + <hkern u1="&#x164;" u2="i" k="23" /> + <hkern u1="&#x165;" u2="&#x201d;" k="-69" /> + <hkern u1="&#x165;" u2="&#x2019;" k="-69" /> + <hkern u1="&#x166;" u2="&#x133;" k="23" /> + <hkern u1="&#x166;" u2="&#x131;" k="23" /> + <hkern u1="&#x166;" u2="&#x12f;" k="23" /> + <hkern u1="&#x166;" u2="&#x12d;" k="-28" /> + <hkern u1="&#x166;" u2="&#x12b;" k="23" /> + <hkern u1="&#x166;" u2="&#x129;" k="23" /> + <hkern u1="&#x166;" u2="&#xef;" k="-61" /> + <hkern u1="&#x166;" u2="&#xee;" k="23" /> + <hkern u1="&#x166;" u2="&#xed;" k="23" /> + <hkern u1="&#x166;" u2="&#xec;" k="23" /> + <hkern u1="&#x166;" u2="&#xe8;" k="80" /> + <hkern u1="&#x166;" u2="&#xe0;" k="58" /> + <hkern u1="&#x166;" u2="i" k="23" /> + <hkern u1="&#x174;" u2="&#x1fc;" k="58" /> + <hkern u1="&#x174;" u2="&#x12d;" k="-26" /> + <hkern u1="&#x174;" u2="&#xef;" k="-57" /> + <hkern u1="&#x174;" u2="&#xc6;" k="58" /> + <hkern u1="&#x178;" u2="&#x12d;" k="-7" /> + <hkern u1="&#x178;" u2="&#xf6;" k="77" /> + <hkern u1="&#x178;" u2="&#xef;" k="-44" /> + <hkern u1="&#x178;" u2="&#xeb;" k="77" /> + <hkern u1="&#x178;" u2="&#xe4;" k="55" /> + <hkern u1="&#x1fe;" u2="&#x142;" k="-7" /> + <hkern u1="&#x218;" u2="&#x1fd;" k="-8" /> + <hkern u1="&#x218;" u2="&#xe6;" k="-8" /> + <hkern u1="&#x388;" u2="&#x3ca;" k="-29" /> + <hkern u1="&#x388;" u2="&#x390;" k="-63" /> + <hkern u1="&#x389;" u2="&#x3ca;" k="-18" /> + <hkern u1="&#x389;" u2="&#x390;" k="-52" /> + <hkern u1="&#x38a;" u2="&#x3ca;" k="-18" /> + <hkern u1="&#x38a;" u2="&#x390;" k="-52" /> + <hkern u1="&#x38c;" u2="&#x3be;" k="-8" /> + <hkern u1="&#x38c;" u2="&#x142;" k="-7" /> + <hkern u1="&#x38e;" u2="&#x3ca;" k="-58" /> + <hkern u1="&#x38e;" u2="&#x3bb;" k="7" /> + <hkern u1="&#x38e;" u2="&#x3b4;" k="66" /> + <hkern u1="&#x38e;" u2="&#x3b2;" k="17" /> + <hkern u1="&#x38e;" u2="&#x3b0;" k="-2" /> + <hkern u1="&#x38e;" u2="&#x390;" k="-90" /> + <hkern u1="&#x38f;" u2="&#x390;" k="-21" /> + <hkern u1="&#x390;" u2="&#x3c0;" k="-33" /> + <hkern u1="&#x390;" u2="&#x3be;" k="-41" /> + <hkern u1="&#x390;" u2="&#x3bb;" k="-70" /> + <hkern u1="&#x390;" u2="&#x3ba;" k="-4" /> + <hkern u1="&#x390;" u2="&#x3b8;" k="-48" /> + <hkern u1="&#x390;" u2="&#x3b7;" k="-4" /> + <hkern u1="&#x390;" u2="&#x3b6;" k="-56" /> + <hkern u1="&#x390;" u2="&#x3b2;" k="-43" /> + <hkern u1="&#x390;" u2="&#x3ae;" k="-4" /> + <hkern u1="&#x390;" u2="&#xb5;" k="-4" /> + <hkern u1="&#x391;" u2="&#x3c2;" k="13" /> + <hkern u1="&#x391;" u2="&#x3be;" k="6" /> + <hkern u1="&#x391;" u2="&#x3bd;" k="35" /> + <hkern u1="&#x391;" u2="&#x3b4;" k="13" /> + <hkern u1="&#x391;" u2="&#x390;" k="5" /> + <hkern u1="&#x392;" u2="&#x3b4;" k="-6" /> + <hkern u1="&#x393;" u2="&#x3cb;" k="32" /> + <hkern u1="&#x393;" u2="&#x3ca;" k="-71" /> + <hkern u1="&#x393;" u2="&#x3b4;" k="40" /> + <hkern u1="&#x393;" u2="&#x3b2;" k="5" /> + <hkern u1="&#x393;" u2="&#x3b0;" k="8" /> + <hkern u1="&#x393;" u2="&#x390;" k="-108" /> + <hkern u1="&#x394;" u2="&#x3be;" k="-14" /> + <hkern u1="&#x395;" u2="&#x3ca;" k="-29" /> + <hkern u1="&#x395;" u2="&#x390;" k="-63" /> + <hkern u1="&#x397;" u2="&#x3ca;" k="-18" /> + <hkern u1="&#x397;" u2="&#x390;" k="-52" /> + <hkern u1="&#x398;" u2="&#x3be;" k="-8" /> + <hkern u1="&#x398;" u2="&#x142;" k="-7" /> + <hkern u1="&#x399;" u2="&#x3ca;" k="-18" /> + <hkern u1="&#x399;" u2="&#x390;" k="-52" /> + <hkern u1="&#x39a;" u2="&#x3ca;" k="-48" /> + <hkern u1="&#x39a;" u2="&#x3c2;" k="15" /> + <hkern u1="&#x39a;" u2="&#x3b2;" k="-4" /> + <hkern u1="&#x39a;" u2="&#x3b0;" k="6" /> + <hkern u1="&#x39a;" u2="&#x390;" k="-77" /> + <hkern u1="&#x39b;" u2="&#x390;" k="5" /> + <hkern u1="&#x39d;" u2="&#x3ca;" k="-18" /> + <hkern u1="&#x39d;" u2="&#x3c1;" k="5" /> + <hkern u1="&#x39d;" u2="&#x3bf;" k="5" /> + <hkern u1="&#x39d;" u2="&#x3b4;" k="5" /> + <hkern u1="&#x39d;" u2="&#x391;" k="9" /> + <hkern u1="&#x39d;" u2="&#x390;" k="-52" /> + <hkern u1="&#x39e;" u2="&#x3ca;" k="-41" /> + <hkern u1="&#x39e;" u2="&#x3b9;" k="-5" /> + <hkern u1="&#x39e;" u2="&#x3b7;" k="-9" /> + <hkern u1="&#x39e;" u2="&#x390;" k="-66" /> + <hkern u1="&#x39f;" u2="&#x3be;" k="-8" /> + <hkern u1="&#x39f;" u2="&#x142;" k="-7" /> + <hkern u1="&#x3a0;" u2="&#x3ca;" k="-18" /> + <hkern u1="&#x3a0;" u2="&#x390;" k="-52" /> + <hkern u1="&#x3a1;" u2="&#x3ca;" k="-26" /> + <hkern u1="&#x3a1;" u2="&#x390;" k="-61" /> + <hkern u1="&#x3a3;" u2="&#x3ca;" k="-22" /> + <hkern u1="&#x3a3;" u2="&#x3c7;" k="6" /> + <hkern u1="&#x3a3;" u2="&#x3b4;" k="10" /> + <hkern u1="&#x3a3;" u2="&#x390;" k="-52" /> + <hkern u1="&#x3a4;" u2="&#x3cb;" k="20" /> + <hkern u1="&#x3a4;" u2="&#x3ca;" k="-60" /> + <hkern u1="&#x3a4;" u2="&#x3b4;" k="54" /> + <hkern u1="&#x3a4;" u2="&#x3b0;" k="13" /> + <hkern u1="&#x3a4;" u2="&#x3a3;" k="-7" /> + <hkern u1="&#x3a4;" u2="&#x390;" k="-103" /> + <hkern u1="&#x3a4;" u2="&#x133;" k="23" /> + <hkern u1="&#x3a4;" u2="&#x131;" k="23" /> + <hkern u1="&#x3a4;" u2="&#x12f;" k="23" /> + <hkern u1="&#x3a4;" u2="&#x12d;" k="-28" /> + <hkern u1="&#x3a4;" u2="&#x12b;" k="23" /> + <hkern u1="&#x3a4;" u2="&#x129;" k="23" /> + <hkern u1="&#x3a4;" u2="&#xef;" k="-61" /> + <hkern u1="&#x3a4;" u2="&#xee;" k="23" /> + <hkern u1="&#x3a4;" u2="&#xed;" k="23" /> + <hkern u1="&#x3a4;" u2="&#xec;" k="23" /> + <hkern u1="&#x3a4;" u2="&#xe8;" k="80" /> + <hkern u1="&#x3a4;" u2="&#xe0;" k="58" /> + <hkern u1="&#x3a4;" u2="i" k="23" /> + <hkern u1="&#x3a5;" u2="&#x3ca;" k="-58" /> + <hkern u1="&#x3a5;" u2="&#x3bb;" k="7" /> + <hkern u1="&#x3a5;" u2="&#x3b4;" k="48" /> + <hkern u1="&#x3a5;" u2="&#x3b2;" k="17" /> + <hkern u1="&#x3a5;" u2="&#x3b0;" k="-2" /> + <hkern u1="&#x3a5;" u2="&#x390;" k="-90" /> + <hkern u1="&#x3a7;" u2="&#x3ca;" k="-38" /> + <hkern u1="&#x3a7;" u2="&#x390;" k="-64" /> + <hkern u1="&#x3a8;" u2="&#x3aa;" k="-4" /> + <hkern u1="&#x3a9;" u2="&#x3bd;" k="-16" /> + <hkern u1="&#x3a9;" u2="&#x390;" k="-21" /> + <hkern u1="&#x3a9;" u2="&#xb5;" k="-4" /> + <hkern u1="&#x3ad;" u2="&#x3ca;" k="-23" /> + <hkern u1="&#x3ad;" u2="&#x390;" k="-40" /> + <hkern u1="&#x3ae;" u2="&#x3ca;" k="4" /> + <hkern u1="&#x3ae;" u2="&#x390;" k="1" /> + <hkern u1="&#x3af;" u2="&#x3bb;" k="-10" /> + <hkern u1="&#x3b1;" u2="&#x3b6;" k="-12" /> + <hkern u1="&#x3b2;" u2="&#x3ca;" k="-11" /> + <hkern u1="&#x3b2;" u2="&#x390;" k="-34" /> + <hkern u1="&#x3b3;" u2="&#x3b4;" k="4" /> + <hkern u1="&#x3b3;" u2="&#x3b3;" k="-11" /> + <hkern u1="&#x3b4;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x3b4;" u2="&#x3c1;" k="16" /> + <hkern u1="&#x3b4;" u2="&#x3b3;" k="10" /> + <hkern u1="&#x3b4;" u2="&#x390;" k="-33" /> + <hkern u1="&#x3b6;" u2="&#x3c6;" k="8" /> + <hkern u1="&#x3b6;" u2="&#x3b2;" k="-10" /> + <hkern u1="&#x3b7;" u2="&#x3bd;" k="6" /> + <hkern u1="&#x3b8;" u2="&#x3be;" k="-6" /> + <hkern u1="&#x3b8;" u2="&#x3b6;" k="-10" /> + <hkern u1="&#x3bb;" u2="&#x3bd;" k="25" /> + <hkern u1="&#x3bd;" u2="&#x3c1;" k="21" /> + <hkern u1="&#x3bd;" u2="&#x3b6;" k="-5" /> + <hkern u1="&#x3bf;" u2="&#x3bd;" k="4" /> + <hkern u1="&#x3c0;" u2="&#x3ca;" k="-18" /> + <hkern u1="&#x3c0;" u2="&#x390;" k="-33" /> + <hkern u1="&#x3c3;" u2="&#x3ca;" k="-23" /> + <hkern u1="&#x3c3;" u2="&#x3b6;" k="-12" /> + <hkern u1="&#x3c3;" u2="&#x390;" k="-43" /> + <hkern u1="&#x3c5;" u2="&#x3c1;" k="7" /> + <hkern u1="&#x3c7;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x3c7;" u2="&#x390;" k="-22" /> + <hkern u1="&#x3ca;" u2="&#x3c0;" k="-19" /> + <hkern u1="&#x3ca;" u2="&#x3be;" k="-16" /> + <hkern u1="&#x3ca;" u2="&#x3bb;" k="-30" /> + <hkern u1="&#x3ca;" u2="&#x3ba;" k="-4" /> + <hkern u1="&#x3ca;" u2="&#x3b8;" k="-20" /> + <hkern u1="&#x3ca;" u2="&#x3b7;" k="-4" /> + <hkern u1="&#x3ca;" u2="&#x3b6;" k="-22" /> + <hkern u1="&#x3ca;" u2="&#x3b2;" k="-11" /> + <hkern u1="&#x3ca;" u2="&#x3ae;" k="-4" /> + <hkern u1="&#x3ca;" u2="&#xb5;" k="-4" /> + <hkern u1="&#x1e80;" u2="&#x1fc;" k="58" /> + <hkern u1="&#x1e80;" u2="&#x12d;" k="-26" /> + <hkern u1="&#x1e80;" u2="&#xef;" k="-57" /> + <hkern u1="&#x1e80;" u2="&#xc6;" k="58" /> + <hkern u1="&#x1e82;" u2="&#x1fc;" k="58" /> + <hkern u1="&#x1e82;" u2="&#x12d;" k="-26" /> + <hkern u1="&#x1e82;" u2="&#xef;" k="-57" /> + <hkern u1="&#x1e82;" u2="&#xc6;" k="58" /> + <hkern u1="&#x1e84;" u2="&#x1fc;" k="58" /> + <hkern u1="&#x1e84;" u2="&#x12d;" k="-26" /> + <hkern u1="&#x1e84;" u2="&#xef;" k="-57" /> + <hkern u1="&#x1e84;" u2="&#xc6;" k="58" /> + <hkern u1="&#x1ef2;" u2="&#x12d;" k="-7" /> + <hkern u1="&#x1ef2;" u2="&#xf6;" k="77" /> + <hkern u1="&#x1ef2;" u2="&#xef;" k="-44" /> + <hkern u1="&#x1ef2;" u2="&#xeb;" k="77" /> + <hkern u1="&#x1ef2;" u2="&#xe4;" k="55" /> + <hkern u1="&#x2018;" u2="&#x133;" k="17" /> + <hkern u1="&#x2018;" u2="&#x131;" k="17" /> + <hkern u1="&#x2018;" u2="&#x12f;" k="17" /> + <hkern u1="&#x2018;" u2="&#x12d;" k="17" /> + <hkern u1="&#x2018;" u2="&#x12b;" k="17" /> + <hkern u1="&#x2018;" u2="&#x129;" k="17" /> + <hkern u1="&#x2018;" u2="&#x127;" k="-11" /> + <hkern u1="&#x2018;" u2="&#xef;" k="17" /> + <hkern u1="&#x2018;" u2="&#xee;" k="17" /> + <hkern u1="&#x2018;" u2="&#xed;" k="17" /> + <hkern u1="&#x2018;" u2="&#xec;" k="17" /> + <hkern u1="&#x2018;" u2="i" k="17" /> + <hkern u1="&#x2019;" u2="&#x133;" k="52" /> + <hkern u1="&#x2019;" u2="&#x131;" k="52" /> + <hkern u1="&#x2019;" u2="&#x12f;" k="52" /> + <hkern u1="&#x2019;" u2="&#x12d;" k="52" /> + <hkern u1="&#x2019;" u2="&#x12b;" k="52" /> + <hkern u1="&#x2019;" u2="&#x129;" k="52" /> + <hkern u1="&#x2019;" u2="&#x127;" k="-2" /> + <hkern u1="&#x2019;" u2="&#xef;" k="52" /> + <hkern u1="&#x2019;" u2="&#xee;" k="52" /> + <hkern u1="&#x2019;" u2="&#xed;" k="52" /> + <hkern u1="&#x2019;" u2="&#xec;" k="52" /> + <hkern u1="&#x2019;" u2="i" k="52" /> + <hkern u1="&#x201c;" u2="&#x133;" k="17" /> + <hkern u1="&#x201c;" u2="&#x131;" k="17" /> + <hkern u1="&#x201c;" u2="&#x12f;" k="17" /> + <hkern u1="&#x201c;" u2="&#x12d;" k="17" /> + <hkern u1="&#x201c;" u2="&#x12b;" k="17" /> + <hkern u1="&#x201c;" u2="&#x129;" k="17" /> + <hkern u1="&#x201c;" u2="&#x127;" k="-11" /> + <hkern u1="&#x201c;" u2="&#xef;" k="17" /> + <hkern u1="&#x201c;" u2="&#xee;" k="17" /> + <hkern u1="&#x201c;" u2="&#xed;" k="17" /> + <hkern u1="&#x201c;" u2="&#xec;" k="17" /> + <hkern u1="&#x201c;" u2="i" k="17" /> + <hkern u1="&#x201d;" u2="&#x133;" k="52" /> + <hkern u1="&#x201d;" u2="&#x131;" k="52" /> + <hkern u1="&#x201d;" u2="&#x12f;" k="52" /> + <hkern u1="&#x201d;" u2="&#x12d;" k="52" /> + <hkern u1="&#x201d;" u2="&#x12b;" k="52" /> + <hkern u1="&#x201d;" u2="&#x129;" k="52" /> + <hkern u1="&#x201d;" u2="&#x127;" k="-2" /> + <hkern u1="&#x201d;" u2="&#xef;" k="52" /> + <hkern u1="&#x201d;" u2="&#xee;" k="52" /> + <hkern u1="&#x201d;" u2="&#xed;" k="52" /> + <hkern u1="&#x201d;" u2="&#xec;" k="52" /> + <hkern u1="&#x201d;" u2="i" k="52" /> + <hkern u1="&#xf63a;" u2="&#xf63c;" k="27" /> + <hkern u1="&#xf63a;" u2="&#xf63a;" k="-4" /> + <hkern u1="&#xf63b;" u2="&#xf641;" k="5" /> + <hkern u1="&#xf63b;" u2="&#xf63e;" k="7" /> + <hkern u1="&#xf63d;" u2="&#xf641;" k="5" /> + <hkern u1="&#xf63e;" u2="&#xf641;" k="9" /> + <hkern u1="&#xf63f;" u2="&#xf6dc;" k="-20" /> + <hkern u1="&#xf63f;" u2="&#xf63f;" k="-40" /> + <hkern u1="&#xf63f;" u2="&#xf63e;" k="15" /> + <hkern u1="&#xf63f;" u2="&#xf63c;" k="45" /> + <hkern u1="&#xf63f;" u2="&#xf63b;" k="-4" /> + <hkern u1="&#xf63f;" u2="&#xf63a;" k="-6" /> + <hkern u1="&#xf641;" u2="&#xf63c;" k="9" /> + <hkern u1="&#xf6dc;" u2="&#xf641;" k="4" /> + <hkern u1="&#xf6dc;" u2="&#xf63c;" k="9" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="14" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="f,germandbls,f_f_j,f_j,ff,fi,fl,ffi,ffl" + k="-7" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="11" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="t,tcommaaccent,tcaron,tbar" + k="-16" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="-15" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="-4" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="guillemotright,guilsinglright" + k="-11" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="hyphen,endash,emdash" + k="-12" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="quotedbl,quotesingle" + k="-6" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="quoteleft,quotedblleft" + k="-31" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="quoteright,quotedblright" + k="-16" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="comma,period,ellipsis" + k="7" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="41" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="6" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="x" + k="12" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="hyphen,endash,emdash" + k="-30" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="quoteright,quotedblright" + k="23" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="comma,period,ellipsis" + k="16" /> + <hkern g1="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="34" /> + <hkern g1="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + g2="quoteright,quotedblright" + k="21" /> + <hkern g1="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + g2="comma,period,ellipsis" + k="17" /> + <hkern g1="h,m,n,ntilde,hcircumflex,hbar,nacute,ncommaaccent,ncaron,napostrophe,eng" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="57" /> + <hkern g1="h,m,n,ntilde,hcircumflex,hbar,nacute,ncommaaccent,ncaron,napostrophe,eng" + g2="t,tcommaaccent,tcaron,tbar" + k="6" /> + <hkern g1="h,m,n,ntilde,hcircumflex,hbar,nacute,ncommaaccent,ncaron,napostrophe,eng" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="19" /> + <hkern g1="h,m,n,ntilde,hcircumflex,hbar,nacute,ncommaaccent,ncaron,napostrophe,eng" + g2="quotedbl,quotesingle" + k="14" /> + <hkern g1="h,m,n,ntilde,hcircumflex,hbar,nacute,ncommaaccent,ncaron,napostrophe,eng" + g2="quoteright,quotedblright" + k="26" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="28" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="14" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="b,h,k,l,hcircumflex,hbar,kcommaaccent,lacute,lcommaaccent,lcaron,ldot,lslash" + k="-11" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="-10" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="14" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="-5" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="hyphen,endash,emdash" + k="5" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="quoteright,quotedblright" + k="-14" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="comma,period,ellipsis" + k="-4" /> + <hkern g1="q,u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="37" /> + <hkern g1="q,u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + g2="quoteright,quotedblright" + k="21" /> + <hkern g1="q,u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + g2="comma,period,ellipsis" + k="7" /> + <hkern g1="b,o,p,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="49" /> + <hkern g1="b,o,p,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="9" /> + <hkern g1="b,o,p,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="z,zacute,zdotaccent,zcaron" + k="9" /> + <hkern g1="b,o,p,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="x" + k="24" /> + <hkern g1="b,o,p,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="hyphen,endash,emdash" + k="-16" /> + <hkern g1="b,o,p,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="parenright,bracketright,braceright" + k="8" /> + <hkern g1="b,o,p,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="quotedbl,quotesingle" + k="20" /> + <hkern g1="b,o,p,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="quoteright,quotedblright" + k="26" /> + <hkern g1="b,o,p,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="comma,period,ellipsis" + k="34" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="20" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="f,germandbls,f_f_j,f_j,ff,fi,fl,ffi,ffl" + k="-27" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="8" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="8" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="t,tcommaaccent,tcaron,tbar" + k="-21" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="-18" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="11" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="z,zacute,zdotaccent,zcaron" + k="-7" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="x" + k="-13" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="colon,semicolon" + k="4" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="guillemotright,guilsinglright" + k="-7" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="quoteleft,quotedblleft" + k="-11" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="quoteright,quotedblright" + k="-18" /> + <hkern g1="r,racute,rcommaaccent,rcaron" + g2="comma,period,ellipsis" + k="65" /> + <hkern g1="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="35" /> + <hkern g1="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + g2="quoteright,quotedblright" + k="12" /> + <hkern g1="s,germandbls,sacute,scircumflex,scedilla,scaron,scommaaccent" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="37" /> + <hkern g1="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="14" /> + <hkern g1="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="15" /> + <hkern g1="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="-19" /> + <hkern g1="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="7" /> + <hkern g1="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + g2="s,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="16" /> + <hkern g1="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + g2="colon,semicolon" + k="-5" /> + <hkern g1="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + g2="hyphen,endash,emdash" + k="7" /> + <hkern g1="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + g2="quoteleft,quotedblleft" + k="-25" /> + <hkern g1="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + g2="quoteright,quotedblright" + k="-20" /> + <hkern g1="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + g2="comma,period,ellipsis" + k="48" /> + <hkern g1="x" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="29" /> + <hkern g1="x" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="22" /> + <hkern g1="x" + g2="t,tcommaaccent,tcaron,tbar" + k="-13" /> + <hkern g1="x" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="-19" /> + <hkern g1="x" + g2="s,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="8" /> + <hkern g1="x" + g2="hyphen,endash,emdash" + k="4" /> + <hkern g1="x" + g2="quoteright,quotedblright" + k="-14" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="29" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="7" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="-9" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="guillemotright,guilsinglright" + k="-5" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="quoteright,quotedblright" + k="-17" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="83" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="J,Jcircumflex" + k="-15" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="25" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + k="35" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="59" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="X,Chi" + k="24" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="Y,Yacute,Ydieresis,Ygrave" + k="95" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="Z,Zacute,Zdotaccent,Zcaron,Zeta" + k="-6" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="f,germandbls,f_f_j,f_j,ff,fi,fl,ffi,ffl" + k="13" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="14" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="b,h,k,l,hcircumflex,hbar,kcommaaccent,lacute,lcommaaccent,lcaron,ldot,lslash" + k="6" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="j,jcircumflex" + k="6" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="6" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="14" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="t,tcommaaccent,tcaron,tbar" + k="20" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="15" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="31" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="hyphen,endash,emdash" + k="8" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="parenright,bracketright,braceright" + k="18" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="quotedbl,quotesingle" + k="46" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="quoteleft,quotedblleft" + k="44" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="quoteright,quotedblright" + k="65" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="Delta" + k="-13" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="Phi" + k="31" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="Psi" + k="72" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="Upsilon,Upsilondieresis" + k="101" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="chi" + k="27" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="epsilontonos,epsilon" + k="-5" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="mu,etatonos,beta,eta,kappa" + k="6" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="gamma,nu" + k="36" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="9" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="lambda" + k="-7" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="13" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="rho" + k="17" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="tau" + k="23" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="theta" + k="17" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="upsilondieresistonos,upsilon,psi,upsilondieresis,upsilontonos" + k="17" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek,Alphatonos,Alpha,Lambda" + g2="zeta,xi" + k="9" /> + <hkern g1="B,Beta" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="18" /> + <hkern g1="B,Beta" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="11" /> + <hkern g1="B,Beta" + g2="Y,Yacute,Ydieresis,Ygrave" + k="34" /> + <hkern g1="B,Beta" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="4" /> + <hkern g1="B,Beta" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="-6" /> + <hkern g1="B,Beta" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="6" /> + <hkern g1="B,Beta" + g2="hyphen,endash,emdash" + k="-12" /> + <hkern g1="B,Beta" + g2="comma,period,ellipsis" + k="15" /> + <hkern g1="B,Beta" + g2="Psi" + k="10" /> + <hkern g1="B,Beta" + g2="Upsilon,Upsilondieresis" + k="12" /> + <hkern g1="B,Beta" + g2="epsilontonos,epsilon" + k="-5" /> + <hkern g1="B,Beta" + g2="rho" + k="6" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-14" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="J,Jcircumflex" + k="-10" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="30" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="-9" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-7" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="-10" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="4" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="19" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="20" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="33" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="10" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="z,zacute,zdotaccent,zcaron" + k="-7" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="guillemotleft,guilsinglleft" + k="4" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="parenright,bracketright,braceright" + k="-9" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="quotedbl,quotesingle" + k="-6" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="quoteright,quotedblright" + k="-8" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-5" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="J,Jcircumflex" + k="-22" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="-7" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="f,germandbls,f_f_j,f_j,ff,fi,fl,ffi,ffl" + k="5" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="7" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="b,h,k,l,hcircumflex,hbar,kcommaaccent,lacute,lcommaaccent,lcaron,ldot,lslash" + k="-4" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="j,jcircumflex" + k="5" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="4" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="t,tcommaaccent,tcaron,tbar" + k="6" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="10" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="12" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="z,zacute,zdotaccent,zcaron" + k="-6" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="s,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="-4" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="comma,period,ellipsis" + k="8" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="Delta" + k="-16" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="Psi" + k="6" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="Xi" + k="-4" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="epsilontonos,epsilon" + k="-15" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="tau" + k="-8" /> + <hkern g1="E,AE,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,OE,AEacute,Epsilontonos,Epsilon,Xi" + g2="pi" + k="-14" /> + <hkern g1="F" + g2="J,Jcircumflex" + k="69" /> + <hkern g1="F" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="67" /> + <hkern g1="F" + g2="M,Mu" + k="14" /> + <hkern g1="F" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="9" /> + <hkern g1="F" + g2="b,h,k,l,hcircumflex,hbar,kcommaaccent,lacute,lcommaaccent,lcaron,ldot,lslash" + k="15" /> + <hkern g1="F" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="20" /> + <hkern g1="F" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="26" /> + <hkern g1="F" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="28" /> + <hkern g1="F" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="20" /> + <hkern g1="F" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="39" /> + <hkern g1="F" + g2="colon,semicolon" + k="18" /> + <hkern g1="F" + g2="guillemotright,guilsinglright" + k="5" /> + <hkern g1="F" + g2="guillemotleft,guilsinglleft" + k="4" /> + <hkern g1="F" + g2="comma,period,ellipsis" + k="90" /> + <hkern g1="H,I,N,Igrave,Iacute,Icircumflex,Idieresis,Ntilde,Hcircumflex,Hbar,Itilde,Imacron,Ibreve,Iogonek,Idotaccent,Nacute,Ncommaaccent,Ncaron,Eng,Etatonos,Iotatonos,Eta,Iota,Nu,Pi,Iotadieresis" + g2="Y,Yacute,Ydieresis,Ygrave" + k="18" /> + <hkern g1="H,I,N,Igrave,Iacute,Icircumflex,Idieresis,Ntilde,Hcircumflex,Hbar,Itilde,Imacron,Ibreve,Iogonek,Idotaccent,Nacute,Ncommaaccent,Ncaron,Eng,Etatonos,Iotatonos,Eta,Iota,Nu,Pi,Iotadieresis" + g2="f,germandbls,f_f_j,f_j,ff,fi,fl,ffi,ffl" + k="-5" /> + <hkern g1="H,I,N,Igrave,Iacute,Icircumflex,Idieresis,Ntilde,Hcircumflex,Hbar,Itilde,Imacron,Ibreve,Iogonek,Idotaccent,Nacute,Ncommaaccent,Ncaron,Eng,Etatonos,Iotatonos,Eta,Iota,Nu,Pi,Iotadieresis" + g2="t,tcommaaccent,tcaron,tbar" + k="-7" /> + <hkern g1="H,I,N,Igrave,Iacute,Icircumflex,Idieresis,Ntilde,Hcircumflex,Hbar,Itilde,Imacron,Ibreve,Iogonek,Idotaccent,Nacute,Ncommaaccent,Ncaron,Eng,Etatonos,Iotatonos,Eta,Iota,Nu,Pi,Iotadieresis" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="4" /> + <hkern g1="H,I,N,Igrave,Iacute,Icircumflex,Idieresis,Ntilde,Hcircumflex,Hbar,Itilde,Imacron,Ibreve,Iogonek,Idotaccent,Nacute,Ncommaaccent,Ncaron,Eng,Etatonos,Iotatonos,Eta,Iota,Nu,Pi,Iotadieresis" + g2="zeta,xi" + k="-5" /> + <hkern g1="H,I,N,Igrave,Iacute,Icircumflex,Idieresis,Ntilde,Hcircumflex,Hbar,Itilde,Imacron,Ibreve,Iogonek,Idotaccent,Nacute,Ncommaaccent,Ncaron,Eng,Etatonos,Iotatonos,Eta,Iota,Nu,Pi,Iotadieresis" + g2="pi" + k="-8" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-6" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="J,Jcircumflex" + k="-29" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="33" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Y,Yacute,Ydieresis,Ygrave" + k="15" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Z,Zacute,Zdotaccent,Zcaron,Zeta" + k="-17" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="-13" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="13" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="17" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="19" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="41" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="colon,semicolon" + k="-7" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="guillemotleft,guilsinglleft" + k="7" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="hyphen,endash,emdash" + k="23" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="parenright,bracketright,braceright" + k="-7" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="quotedbl,quotesingle" + k="-4" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="quoteleft,quotedblleft" + k="8" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="quoteright,quotedblright" + k="-4" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="comma,period,ellipsis" + k="-9" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Delta" + k="-19" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Phi" + k="39" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Xi" + k="-17" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Omega" + k="-5" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Sigma" + k="-11" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="epsilontonos,epsilon" + k="-7" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="gamma,nu" + k="27" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="4" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="lambda" + k="-9" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="15" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="rho" + k="8" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="tau" + k="27" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="upsilondieresistonos,upsilon,psi,upsilondieresis,upsilontonos" + k="26" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="104" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="J,Jcircumflex" + k="-28" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="38" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + k="31" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="65" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="Y,Yacute,Ydieresis,Ygrave" + k="90" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="-6" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="j,jcircumflex" + k="4" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="9" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="t,tcommaaccent,tcaron,tbar" + k="5" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="11" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="36" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="-4" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="guillemotleft,guilsinglleft" + k="17" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="hyphen,endash,emdash" + k="18" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="quotedbl,quotesingle" + k="101" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="quoteleft,quotedblleft" + k="121" /> + <hkern g1="L,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash" + g2="quoteright,quotedblright" + k="97" /> + <hkern g1="M,Mu" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="13" /> + <hkern g1="M,Mu" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="-6" /> + <hkern g1="M,Mu" + g2="Psi" + k="10" /> + <hkern g1="M,Mu" + g2="Upsilon,Upsilondieresis" + k="19" /> + <hkern g1="M,Mu" + g2="mu,etatonos,beta,eta,kappa" + k="-5" /> + <hkern g1="M,Mu" + g2="pi" + k="-10" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="28" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="7" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="X,Chi" + k="33" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="Y,Yacute,Ydieresis,Ygrave" + k="37" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="16" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="f,germandbls,f_f_j,f_j,ff,fi,fl,ffi,ffl" + k="-10" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="-4" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="-4" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="t,tcommaaccent,tcaron,tbar" + k="-13" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="-5" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="-10" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="x" + k="12" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="guillemotleft,guilsinglleft" + k="-4" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="hyphen,endash,emdash" + k="-12" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="parenright,bracketright,braceright" + k="19" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="comma,period,ellipsis" + k="40" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="Delta" + k="11" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="Upsilon,Upsilondieresis" + k="29" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="Xi" + k="8" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="Omega" + k="-4" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="Sigma" + k="20" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="epsilontonos,epsilon" + k="6" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="gamma,nu" + k="-12" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="lambda" + k="25" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="rho" + k="15" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="tau" + k="-10" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="theta" + k="-14" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="zeta,xi" + k="-8" /> + <hkern g1="D,O,Q,Eth,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Dcaron,Dcroat,Omacron,Obreve,Ohungarumlaut,Oslashacute,Omicrontonos,Theta,Omicron" + g2="pi" + k="-14" /> + <hkern g1="P,Rho" + g2="J,Jcircumflex" + k="76" /> + <hkern g1="P,Rho" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="7" /> + <hkern g1="P,Rho" + g2="X,Chi" + k="28" /> + <hkern g1="P,Rho" + g2="Y,Yacute,Ydieresis,Ygrave" + k="20" /> + <hkern g1="P,Rho" + g2="Z,Zacute,Zdotaccent,Zcaron,Zeta" + k="9" /> + <hkern g1="P,Rho" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="60" /> + <hkern g1="P,Rho" + g2="M,Mu" + k="14" /> + <hkern g1="P,Rho" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="25" /> + <hkern g1="P,Rho" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="9" /> + <hkern g1="P,Rho" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="24" /> + <hkern g1="P,Rho" + g2="t,tcommaaccent,tcaron,tbar" + k="-12" /> + <hkern g1="P,Rho" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="10" /> + <hkern g1="P,Rho" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="-8" /> + <hkern g1="P,Rho" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="18" /> + <hkern g1="P,Rho" + g2="s,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="21" /> + <hkern g1="P,Rho" + g2="colon,semicolon" + k="10" /> + <hkern g1="P,Rho" + g2="guillemotleft,guilsinglleft" + k="17" /> + <hkern g1="P,Rho" + g2="hyphen,endash,emdash" + k="13" /> + <hkern g1="P,Rho" + g2="parenright,bracketright,braceright" + k="4" /> + <hkern g1="P,Rho" + g2="quoteleft,quotedblleft" + k="-17" /> + <hkern g1="P,Rho" + g2="quoteright,quotedblright" + k="-26" /> + <hkern g1="P,Rho" + g2="comma,period,ellipsis" + k="144" /> + <hkern g1="P,Rho" + g2="Delta" + k="58" /> + <hkern g1="P,Rho" + g2="Psi" + k="-6" /> + <hkern g1="P,Rho" + g2="epsilontonos,epsilon" + k="23" /> + <hkern g1="P,Rho" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="23" /> + <hkern g1="P,Rho" + g2="upsilondieresistonos,upsilon,psi,upsilondieresis,upsilontonos" + k="6" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="J,Jcircumflex" + k="-6" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="4" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + k="5" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="6" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="X,Chi" + k="-8" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="Y,Yacute,Ydieresis,Ygrave" + k="19" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="-9" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="b,h,k,l,hcircumflex,hbar,kcommaaccent,lacute,lcommaaccent,lcaron,ldot,lslash" + k="-8" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="-10" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="t,tcommaaccent,tcaron,tbar" + k="-10" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="-4" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="-9" /> + <hkern g1="R,Racute,Rcommaaccent,Rcaron" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-22" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="J,Jcircumflex" + k="53" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="29" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="-28" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="X,Chi" + k="-18" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-7" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="72" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="M,Mu" + k="4" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + k="9" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="61" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="b,h,k,l,hcircumflex,hbar,kcommaaccent,lacute,lcommaaccent,lcaron,ldot,lslash" + k="12" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="54" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="81" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="54" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="52" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="66" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="z,zacute,zdotaccent,zcaron" + k="57" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="s,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="72" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="x" + k="14" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="colon,semicolon" + k="36" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="guillemotright,guilsinglright" + k="42" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="guillemotleft,guilsinglleft" + k="54" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="hyphen,endash,emdash" + k="60" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="parenright,bracketright,braceright" + k="-31" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="quotedbl,quotesingle" + k="-9" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="quoteright,quotedblright" + k="-17" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="comma,period,ellipsis" + k="83" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="Delta" + k="73" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="Phi" + k="46" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="Psi" + k="-4" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="Upsilon,Upsilondieresis" + k="-8" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="Omega" + k="31" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="epsilontonos,epsilon" + k="65" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="mu,etatonos,beta,eta,kappa" + k="39" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="39" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="lambda" + k="13" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="78" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="rho" + k="91" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="upsilondieresistonos,upsilon,psi,upsilondieresis,upsilontonos" + k="46" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="zeta,xi" + k="22" /> + <hkern g1="T,Tcommaaccent,Tcaron,Tbar,Tau" + g2="omega,omegatonos" + k="54" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="30" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="f,germandbls,f_f_j,f_j,ff,fi,fl,ffi,ffl" + k="-5" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="5" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="6" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="z,zacute,zdotaccent,zcaron" + k="9" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="s,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="13" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="x" + k="12" /> + <hkern g1="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + g2="comma,period,ellipsis" + k="23" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-21" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="J,Jcircumflex" + k="39" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="8" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="-5" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="54" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + k="8" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="8" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="b,h,k,l,hcircumflex,hbar,kcommaaccent,lacute,lcommaaccent,lcaron,ldot,lslash" + k="8" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="27" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="42" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="t,tcommaaccent,tcaron,tbar" + k="8" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="30" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="15" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="42" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="s,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="40" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="colon,semicolon" + k="22" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="guillemotright,guilsinglright" + k="23" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="guillemotleft,guilsinglleft" + k="32" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="hyphen,endash,emdash" + k="25" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="parenright,bracketright,braceright" + k="-29" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="quotedbl,quotesingle" + k="-13" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="quoteright,quotedblright" + k="-10" /> + <hkern g1="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="comma,period,ellipsis" + k="69" /> + <hkern g1="X,Chi" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-6" /> + <hkern g1="X,Chi" + g2="J,Jcircumflex" + k="-10" /> + <hkern g1="X,Chi" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="38" /> + <hkern g1="X,Chi" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="-9" /> + <hkern g1="X,Chi" + g2="X,Chi" + k="11" /> + <hkern g1="X,Chi" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-12" /> + <hkern g1="X,Chi" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="13" /> + <hkern g1="X,Chi" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="19" /> + <hkern g1="X,Chi" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="12" /> + <hkern g1="X,Chi" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="37" /> + <hkern g1="X,Chi" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="9" /> + <hkern g1="X,Chi" + g2="guillemotleft,guilsinglleft" + k="16" /> + <hkern g1="X,Chi" + g2="hyphen,endash,emdash" + k="18" /> + <hkern g1="X,Chi" + g2="quotedbl,quotesingle" + k="-4" /> + <hkern g1="X,Chi" + g2="quoteleft,quotedblleft" + k="11" /> + <hkern g1="X,Chi" + g2="Delta" + k="-7" /> + <hkern g1="X,Chi" + g2="Phi" + k="48" /> + <hkern g1="X,Chi" + g2="Psi" + k="13" /> + <hkern g1="X,Chi" + g2="Upsilon,Upsilondieresis" + k="19" /> + <hkern g1="X,Chi" + g2="Xi" + k="-12" /> + <hkern g1="X,Chi" + g2="Sigma" + k="4" /> + <hkern g1="X,Chi" + g2="gamma,nu" + k="35" /> + <hkern g1="X,Chi" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="14" /> + <hkern g1="X,Chi" + g2="lambda" + k="-12" /> + <hkern g1="X,Chi" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="23" /> + <hkern g1="X,Chi" + g2="rho" + k="12" /> + <hkern g1="X,Chi" + g2="tau" + k="25" /> + <hkern g1="X,Chi" + g2="upsilondieresistonos,upsilon,psi,upsilondieresis,upsilontonos" + k="22" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="J,Jcircumflex" + k="69" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="47" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="-19" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="X,Chi" + k="22" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="Y,Yacute,Ydieresis,Ygrave" + k="26" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="92" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="M,Mu" + k="21" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + k="29" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="B,D,E,F,H,I,K,L,N,P,R,Egrave,Eacute,Ecircumflex,Edieresis,Igrave,Iacute,Icircumflex,Idieresis,Eth,Ntilde,Dcaron,Dcroat,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron,Hcircumflex,Hbar,Itilde,Imacron,Ibreve,Iogonek,Idotaccent,IJ,Kcommaaccent,Lacute,Lcommaaccent,Lcaron,Ldot,Lslash,Nacute,Ncommaaccent,Ncaron,Eng,Racute,Rcommaaccent,Rcaron,Beta,Gamma,Epsilon,Eta,Iota,Kappa,Nu,Pi,Rho,Iotadieresis" + k="18" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="81" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="b,h,k,l,hcircumflex,hbar,kcommaaccent,lacute,lcommaaccent,lcaron,ldot,lslash" + k="15" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="21" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="109" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="t,tcommaaccent,tcaron,tbar" + k="45" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="72" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="53" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="93" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="z,zacute,zdotaccent,zcaron" + k="49" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="s,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="64" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="x" + k="56" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="colon,semicolon" + k="50" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="guillemotright,guilsinglright" + k="44" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="guillemotleft,guilsinglleft" + k="71" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="hyphen,endash,emdash" + k="62" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="parenright,bracketright,braceright" + k="-33" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="quotedbl,quotesingle" + k="-9" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="quoteleft,quotedblleft" + k="12" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="comma,period,ellipsis" + k="118" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="J,Jcircumflex" + k="-22" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="22" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="X,Chi" + k="5" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-6" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="-8" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="9" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="11" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="16" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="-4" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="hyphen,endash,emdash" + k="8" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="Delta" + k="-4" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="Upsilon,Upsilondieresis" + k="-9" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="Xi" + k="-9" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="Sigma" + k="7" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="lambda" + k="-10" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron,Zeta" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="9" /> + <hkern g1="G,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="-6" /> + <hkern g1="G,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="7" /> + <hkern g1="G,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="-8" /> + <hkern g1="G,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent" + g2="quoteright,quotedblright" + k="17" /> + <hkern g1="J,IJ,Jcircumflex" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="5" /> + <hkern g1="J,IJ,Jcircumflex" + g2="parenright,bracketright,braceright" + k="-13" /> + <hkern g1="J,IJ,Jcircumflex" + g2="comma,period,ellipsis" + k="7" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="b,h,k,l,hcircumflex,hbar,kcommaaccent,lacute,lcommaaccent,lcaron,ldot,lslash" + k="4" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="j,jcircumflex" + k="9" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="-7" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="t,tcommaaccent,tcaron,tbar" + k="5" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="15" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="-8" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="hyphen,endash,emdash" + k="-12" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="quoteleft,quotedblleft" + k="9" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + g2="quoteright,quotedblright" + k="14" /> + <hkern g1="f,ff" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="8" /> + <hkern g1="f,ff" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="10" /> + <hkern g1="f,ff" + g2="t,tcommaaccent,tcaron,tbar" + k="-15" /> + <hkern g1="f,ff" + g2="s,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="6" /> + <hkern g1="f,ff" + g2="colon,semicolon" + k="-28" /> + <hkern g1="f,ff" + g2="guillemotright,guilsinglright" + k="-8" /> + <hkern g1="f,ff" + g2="parenright,bracketright,braceright" + k="-72" /> + <hkern g1="f,ff" + g2="quotedbl,quotesingle" + k="-42" /> + <hkern g1="f,ff" + g2="quoteleft,quotedblleft" + k="-41" /> + <hkern g1="f,ff" + g2="quoteright,quotedblright" + k="-63" /> + <hkern g1="f,ff" + g2="comma,period,ellipsis" + k="39" /> + <hkern g1="t,tcommaaccent,tcaron,tbar" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="5" /> + <hkern g1="t,tcommaaccent,tcaron,tbar" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="5" /> + <hkern g1="t,tcommaaccent,tcaron,tbar" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="-5" /> + <hkern g1="t,tcommaaccent,tcaron,tbar" + g2="quoteleft,quotedblleft" + k="-7" /> + <hkern g1="t,tcommaaccent,tcaron,tbar" + g2="quoteright,quotedblright" + k="-11" /> + <hkern g1="t,tcommaaccent,tcaron,tbar" + g2="comma,period,ellipsis" + k="8" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="41" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="J,Jcircumflex" + k="-4" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="23" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Y,Yacute,Ydieresis,Ygrave" + k="53" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="f,germandbls,f_f_j,f_j,ff,fi,fl,ffi,ffl" + k="-6" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Delta" + k="-16" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Phi" + k="11" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Psi" + k="4" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Upsilon,Upsilondieresis" + k="48" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Xi" + k="-4" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Omega" + k="-6" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="gamma,nu" + k="-9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="lambda" + k="-6" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="tau" + k="-22" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="pi" + k="-22" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Epsilontonos,Etatonos,Iotatonos" + k="4" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Upsilontonos" + k="56" /> + <hkern g1="guillemotright,guilsinglright" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="67" /> + <hkern g1="guillemotright,guilsinglright" + g2="J,Jcircumflex" + k="9" /> + <hkern g1="guillemotright,guilsinglright" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="-5" /> + <hkern g1="guillemotright,guilsinglright" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="33" /> + <hkern g1="guillemotright,guilsinglright" + g2="X,Chi" + k="15" /> + <hkern g1="guillemotright,guilsinglright" + g2="Y,Yacute,Ydieresis,Ygrave" + k="68" /> + <hkern g1="guillemotright,guilsinglright" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="-4" /> + <hkern g1="hyphen,endash,emdash" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="55" /> + <hkern g1="hyphen,endash,emdash" + g2="J,Jcircumflex" + k="6" /> + <hkern g1="hyphen,endash,emdash" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="-12" /> + <hkern g1="hyphen,endash,emdash" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="24" /> + <hkern g1="hyphen,endash,emdash" + g2="X,Chi" + k="17" /> + <hkern g1="hyphen,endash,emdash" + g2="Y,Yacute,Ydieresis,Ygrave" + k="60" /> + <hkern g1="hyphen,endash,emdash" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="5" /> + <hkern g1="hyphen,endash,emdash" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="-4" /> + <hkern g1="hyphen,endash,emdash" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="-16" /> + <hkern g1="hyphen,endash,emdash" + g2="Phi" + k="-12" /> + <hkern g1="hyphen,endash,emdash" + g2="Psi" + k="10" /> + <hkern g1="hyphen,endash,emdash" + g2="Upsilon,Upsilondieresis" + k="60" /> + <hkern g1="hyphen,endash,emdash" + g2="Sigma" + k="26" /> + <hkern g1="hyphen,endash,emdash" + g2="tau" + k="-4" /> + <hkern g1="hyphen,endash,emdash" + g2="theta" + k="-7" /> + <hkern g1="hyphen,endash,emdash" + g2="zeta,xi" + k="-14" /> + <hkern g1="hyphen,endash,emdash" + g2="omega,omegatonos" + k="-11" /> + <hkern g1="hyphen,endash,emdash" + g2="Upsilontonos" + k="63" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-22" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="J,Jcircumflex" + k="-10" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="23" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="-27" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="X,Chi" + k="-5" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-30" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="19" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="j,jcircumflex" + k="-50" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Delta" + k="15" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Phi" + k="32" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="chi" + k="11" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="lambda" + k="8" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="rho" + k="31" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="tau" + k="5" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="zeta,xi" + k="14" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="omega,omegatonos" + k="5" /> + <hkern g1="comma,period,ellipsis" + g2="quotedbl,quotesingle" + k="122" /> + <hkern g1="comma,period,ellipsis" + g2="quoteleft,quotedblleft" + k="125" /> + <hkern g1="comma,period,ellipsis" + g2="quoteright,quotedblright" + k="130" /> + <hkern g1="comma,period,ellipsis" + g2="Upsilon,Upsilondieresis" + k="92" /> + <hkern g1="d,l,dcaron,dcroat,lacute,lcommaaccent,lcaron,ldot,lslash,fl,ffl" + g2="quoteright,quotedblright" + k="-4" /> + <hkern g1="d,l,dcaron,dcroat,lacute,lcommaaccent,lcaron,ldot,lslash,fl,ffl" + g2="comma,period,ellipsis" + k="9" /> + <hkern g1="j,ij,jcircumflex,f_f_j,f_j" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="j,ij,jcircumflex,f_f_j,f_j" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="quotedbl,quotesingle" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-9" /> + <hkern g1="quotedbl,quotesingle" + g2="J,Jcircumflex" + k="58" /> + <hkern g1="quotedbl,quotesingle" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="9" /> + <hkern g1="quotedbl,quotesingle" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="-9" /> + <hkern g1="quotedbl,quotesingle" + g2="X,Chi" + k="-4" /> + <hkern g1="quotedbl,quotesingle" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-8" /> + <hkern g1="quotedbl,quotesingle" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="46" /> + <hkern g1="quotedbl,quotesingle" + g2="f,germandbls,f_f_j,f_j,ff,fi,fl,ffi,ffl" + k="-25" /> + <hkern g1="quotedbl,quotesingle" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="19" /> + <hkern g1="quotedbl,quotesingle" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="13" /> + <hkern g1="quotedbl,quotesingle" + g2="t,tcommaaccent,tcaron,tbar" + k="-22" /> + <hkern g1="quotedbl,quotesingle" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="-6" /> + <hkern g1="quotedbl,quotesingle" + g2="comma,period,ellipsis" + k="125" /> + <hkern g1="quotedbl,quotesingle" + g2="Delta" + k="72" /> + <hkern g1="quotedbl,quotesingle" + g2="Phi" + k="18" /> + <hkern g1="quotedbl,quotesingle" + g2="Omega" + k="20" /> + <hkern g1="quotedbl,quotesingle" + g2="epsilontonos,epsilon" + k="50" /> + <hkern g1="quotedbl,quotesingle" + g2="gamma,nu" + k="-4" /> + <hkern g1="quotedbl,quotesingle" + g2="rho" + k="72" /> + <hkern g1="quotedbl,quotesingle" + g2="tau" + k="-9" /> + <hkern g1="quotedbl,quotesingle" + g2="zeta,xi" + k="9" /> + <hkern g1="quotedbl,quotesingle" + g2="omega,omegatonos" + k="34" /> + <hkern g1="quotedbl,quotesingle" + g2="Epsilontonos,Etatonos,Iotatonos" + k="-19" /> + <hkern g1="quotedbl,quotesingle" + g2="Upsilontonos" + k="-19" /> + <hkern g1="quotedbl,quotesingle" + g2="Omegatonos" + k="-19" /> + <hkern g1="quotedbl,quotesingle" + g2="Omicrontonos" + k="-19" /> + <hkern g1="quoteleft,quotedblleft" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-19" /> + <hkern g1="quoteleft,quotedblleft" + g2="J,Jcircumflex" + k="86" /> + <hkern g1="quoteleft,quotedblleft" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="39" /> + <hkern g1="quoteleft,quotedblleft" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="-12" /> + <hkern g1="quoteleft,quotedblleft" + g2="X,Chi" + k="-7" /> + <hkern g1="quoteleft,quotedblleft" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-14" /> + <hkern g1="quoteleft,quotedblleft" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="72" /> + <hkern g1="quoteleft,quotedblleft" + g2="M,Mu" + k="6" /> + <hkern g1="quoteleft,quotedblleft" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + k="6" /> + <hkern g1="quoteleft,quotedblleft" + g2="f,germandbls,f_f_j,f_j,ff,fi,fl,ffi,ffl" + k="13" /> + <hkern g1="quoteleft,quotedblleft" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="63" /> + <hkern g1="quoteleft,quotedblleft" + g2="b,h,k,l,hcircumflex,hbar,kcommaaccent,lacute,lcommaaccent,lcaron,ldot,lslash" + k="-4" /> + <hkern g1="quoteleft,quotedblleft" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="24" /> + <hkern g1="quoteleft,quotedblleft" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="64" /> + <hkern g1="quoteleft,quotedblleft" + g2="u,ugrave,uacute,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut,uogonek" + k="31" /> + <hkern g1="quoteleft,quotedblleft" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="39" /> + <hkern g1="quoteleft,quotedblleft" + g2="z,zacute,zdotaccent,zcaron" + k="8" /> + <hkern g1="quoteleft,quotedblleft" + g2="s,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="41" /> + <hkern g1="quoteleft,quotedblleft" + g2="quoteleft,quotedblleft" + k="65" /> + <hkern g1="quoteleft,quotedblleft" + g2="comma,period,ellipsis" + k="153" /> + <hkern g1="quoteleft,quotedblleft" + g2="Delta" + k="95" /> + <hkern g1="quoteleft,quotedblleft" + g2="Phi" + k="22" /> + <hkern g1="quoteleft,quotedblleft" + g2="Psi" + k="-4" /> + <hkern g1="quoteleft,quotedblleft" + g2="Upsilon,Upsilondieresis" + k="-11" /> + <hkern g1="quoteleft,quotedblleft" + g2="Xi" + k="-5" /> + <hkern g1="quoteleft,quotedblleft" + g2="Omega" + k="49" /> + <hkern g1="quoteleft,quotedblleft" + g2="Sigma" + k="-6" /> + <hkern g1="quoteleft,quotedblleft" + g2="epsilontonos,epsilon" + k="74" /> + <hkern g1="quoteleft,quotedblleft" + g2="mu,etatonos,beta,eta,kappa" + k="24" /> + <hkern g1="quoteleft,quotedblleft" + g2="lambda" + k="20" /> + <hkern g1="quoteleft,quotedblleft" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="64" /> + <hkern g1="quoteleft,quotedblleft" + g2="rho" + k="101" /> + <hkern g1="quoteleft,quotedblleft" + g2="theta" + k="12" /> + <hkern g1="quoteleft,quotedblleft" + g2="zeta,xi" + k="24" /> + <hkern g1="quoteleft,quotedblleft" + g2="omega,omegatonos" + k="65" /> + <hkern g1="quoteleft,quotedblleft" + g2="Epsilontonos,Etatonos,Iotatonos" + k="-27" /> + <hkern g1="quoteleft,quotedblleft" + g2="Upsilontonos" + k="-27" /> + <hkern g1="quoteleft,quotedblleft" + g2="Omegatonos" + k="-27" /> + <hkern g1="quoteleft,quotedblleft" + g2="Omicrontonos" + k="-27" /> + <hkern g1="i,igrave,iacute,icircumflex,idieresis,itilde,imacron,ibreve,iogonek,dotlessi,fi,ffi" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="quoteright,quotedblright" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-17" /> + <hkern g1="quoteright,quotedblright" + g2="J,Jcircumflex" + k="90" /> + <hkern g1="quoteright,quotedblright" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="35" /> + <hkern g1="quoteright,quotedblright" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="-14" /> + <hkern g1="quoteright,quotedblright" + g2="X,Chi" + k="-5" /> + <hkern g1="quoteright,quotedblright" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-12" /> + <hkern g1="quoteright,quotedblright" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="86" /> + <hkern g1="quoteright,quotedblright" + g2="M,Mu" + k="9" /> + <hkern g1="quoteright,quotedblright" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,Scommaaccent" + k="17" /> + <hkern g1="quoteright,quotedblright" + g2="g,gcircumflex,gbreve,gdotaccent,gcommaaccent" + k="62" /> + <hkern g1="quoteright,quotedblright" + g2="b,h,k,l,hcircumflex,hbar,kcommaaccent,lacute,lcommaaccent,lcaron,ldot,lslash" + k="6" /> + <hkern g1="quoteright,quotedblright" + g2="i,m,n,p,r,igrave,iacute,icircumflex,idieresis,ntilde,itilde,imacron,ibreve,iogonek,dotlessi,ij,kgreenlandic,nacute,ncommaaccent,ncaron,eng,racute,rcommaaccent,rcaron" + k="52" /> + <hkern g1="quoteright,quotedblright" + g2="c,d,e,o,q,ccedilla,egrave,eacute,ecircumflex,edieresis,ograve,oacute,ocircumflex,otilde,odieresis,oslash,cacute,ccircumflex,cdotaccent,ccaron,dcaron,dcroat,emacron,ebreve,edotaccent,eogonek,ecaron,omacron,obreve,ohungarumlaut,oe,oslashacute" + k="93" /> + <hkern g1="quoteright,quotedblright" + g2="t,tcommaaccent,tcaron,tbar" + k="21" /> + <hkern g1="quoteright,quotedblright" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="19" /> + <hkern g1="quoteright,quotedblright" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="34" /> + <hkern g1="quoteright,quotedblright" + g2="s,sacute,scircumflex,scedilla,scaron,scommaaccent" + k="93" /> + <hkern g1="quoteright,quotedblright" + g2="quoteright,quotedblright" + k="65" /> + <hkern g1="quoteright,quotedblright" + g2="comma,period,ellipsis" + k="198" /> + <hkern g1="quoteright,quotedblright" + g2="space" + k="68" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="87" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="J,Jcircumflex" + k="-7" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="65" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="X,Chi" + k="-4" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="Y,Yacute,Ydieresis,Ygrave" + k="100" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="Z,Zacute,Zdotaccent,Zcaron,Zeta" + k="-8" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="j,jcircumflex" + k="-5" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="v,w,y,yacute,ydieresis,wcircumflex,wgrave,wacute,wdieresis,ygrave" + k="25" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="a,agrave,aacute,acircumflex,atilde,adieresis,aring,ae,amacron,abreve,aogonek,aeacute" + k="-4" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="z,zacute,zdotaccent,zcaron" + k="-7" /> + <hkern g1="space" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="39" /> + <hkern g1="space" + g2="V,W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="37" /> + <hkern g1="space" + g2="Y,Yacute,Ydieresis,Ygrave" + k="40" /> + <hkern g1="space" + g2="quoteleft,quotedblleft" + k="76" /> + <hkern g1="space" + g2="quotesinglbase,quotedblbase" + k="96" /> + <hkern g1="Delta" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="78" /> + <hkern g1="Delta" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="8" /> + <hkern g1="Delta" + g2="X,Chi" + k="-4" /> + <hkern g1="Delta" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="-16" /> + <hkern g1="Delta" + g2="colon,semicolon" + k="-12" /> + <hkern g1="Delta" + g2="guillemotright,guilsinglright" + k="-10" /> + <hkern g1="Delta" + g2="parenright,bracketright,braceright" + k="28" /> + <hkern g1="Delta" + g2="quotedbl,quotesingle" + k="68" /> + <hkern g1="Delta" + g2="quoteright,quotedblright" + k="52" /> + <hkern g1="Delta" + g2="comma,period,ellipsis" + k="-12" /> + <hkern g1="Delta" + g2="Delta" + k="-18" /> + <hkern g1="Delta" + g2="Phi" + k="12" /> + <hkern g1="Delta" + g2="Psi" + k="58" /> + <hkern g1="Delta" + g2="Upsilon,Upsilondieresis" + k="84" /> + <hkern g1="Delta" + g2="chi" + k="20" /> + <hkern g1="Delta" + g2="epsilontonos,epsilon" + k="-26" /> + <hkern g1="Delta" + g2="mu,etatonos,beta,eta,kappa" + k="-7" /> + <hkern g1="Delta" + g2="gamma,nu" + k="20" /> + <hkern g1="Delta" + g2="lambda" + k="-21" /> + <hkern g1="Delta" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="-6" /> + <hkern g1="Delta" + g2="rho" + k="-7" /> + <hkern g1="Delta" + g2="tau" + k="11" /> + <hkern g1="Delta" + g2="upsilondieresistonos,upsilon,psi,upsilondieresis,upsilontonos" + k="-5" /> + <hkern g1="Delta" + g2="zeta,xi" + k="-14" /> + <hkern g1="Delta" + g2="pi" + k="-20" /> + <hkern g1="Gamma" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-14" /> + <hkern g1="Gamma" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="18" /> + <hkern g1="Gamma" + g2="X,Chi" + k="-10" /> + <hkern g1="Gamma" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="98" /> + <hkern g1="Gamma" + g2="M,Mu" + k="6" /> + <hkern g1="Gamma" + g2="colon,semicolon" + k="50" /> + <hkern g1="Gamma" + g2="guillemotright,guilsinglright" + k="53" /> + <hkern g1="Gamma" + g2="hyphen,endash,emdash" + k="72" /> + <hkern g1="Gamma" + g2="parenright,bracketright,braceright" + k="-8" /> + <hkern g1="Gamma" + g2="quotedbl,quotesingle" + k="-22" /> + <hkern g1="Gamma" + g2="comma,period,ellipsis" + k="121" /> + <hkern g1="Gamma" + g2="Delta" + k="90" /> + <hkern g1="Gamma" + g2="Phi" + k="20" /> + <hkern g1="Gamma" + g2="Psi" + k="-16" /> + <hkern g1="Gamma" + g2="Upsilon,Upsilondieresis" + k="-20" /> + <hkern g1="Gamma" + g2="Xi" + k="-8" /> + <hkern g1="Gamma" + g2="Omega" + k="17" /> + <hkern g1="Gamma" + g2="Sigma" + k="-11" /> + <hkern g1="Gamma" + g2="epsilontonos,epsilon" + k="68" /> + <hkern g1="Gamma" + g2="mu,etatonos,beta,eta,kappa" + k="45" /> + <hkern g1="Gamma" + g2="gamma,nu" + k="20" /> + <hkern g1="Gamma" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="45" /> + <hkern g1="Gamma" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="70" /> + <hkern g1="Gamma" + g2="rho" + k="101" /> + <hkern g1="Gamma" + g2="upsilondieresistonos,upsilon,psi,upsilondieresis,upsilontonos" + k="36" /> + <hkern g1="Omegatonos,Omega" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="23" /> + <hkern g1="Omegatonos,Omega" + g2="guillemotright,guilsinglright" + k="-4" /> + <hkern g1="Omegatonos,Omega" + g2="quotedbl,quotesingle" + k="20" /> + <hkern g1="Omegatonos,Omega" + g2="Psi" + k="6" /> + <hkern g1="Omegatonos,Omega" + g2="Upsilon,Upsilondieresis" + k="24" /> + <hkern g1="Omegatonos,Omega" + g2="chi" + k="-6" /> + <hkern g1="Omegatonos,Omega" + g2="mu,etatonos,beta,eta,kappa" + k="-4" /> + <hkern g1="Omegatonos,Omega" + g2="gamma,nu" + k="-9" /> + <hkern g1="Omegatonos,Omega" + g2="lambda" + k="-13" /> + <hkern g1="Omegatonos,Omega" + g2="tau" + k="-14" /> + <hkern g1="Omegatonos,Omega" + g2="theta" + k="-14" /> + <hkern g1="Omegatonos,Omega" + g2="zeta,xi" + k="-4" /> + <hkern g1="Omegatonos,Omega" + g2="pi" + k="-24" /> + <hkern g1="Phi" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="30" /> + <hkern g1="Phi" + g2="X,Chi" + k="43" /> + <hkern g1="Phi" + g2="Z,Zacute,Zdotaccent,Zcaron,Zeta" + k="17" /> + <hkern g1="Phi" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="28" /> + <hkern g1="Phi" + g2="hyphen,endash,emdash" + k="-16" /> + <hkern g1="Phi" + g2="parenright,bracketright,braceright" + k="12" /> + <hkern g1="Phi" + g2="quotedbl,quotesingle" + k="15" /> + <hkern g1="Phi" + g2="quoteright,quotedblright" + k="-4" /> + <hkern g1="Phi" + g2="comma,period,ellipsis" + k="50" /> + <hkern g1="Phi" + g2="Delta" + k="19" /> + <hkern g1="Phi" + g2="Upsilon,Upsilondieresis" + k="36" /> + <hkern g1="Phi" + g2="Xi" + k="8" /> + <hkern g1="Phi" + g2="Sigma" + k="31" /> + <hkern g1="Phi" + g2="lambda" + k="34" /> + <hkern g1="Phi" + g2="rho" + k="20" /> + <hkern g1="Phi" + g2="tau" + k="-8" /> + <hkern g1="Phi" + g2="theta" + k="-14" /> + <hkern g1="Phi" + g2="zeta,xi" + k="-6" /> + <hkern g1="Psi" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-4" /> + <hkern g1="Psi" + g2="X,Chi" + k="13" /> + <hkern g1="Psi" + g2="Z,Zacute,Zdotaccent,Zcaron,Zeta" + k="9" /> + <hkern g1="Psi" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="70" /> + <hkern g1="Psi" + g2="M,Mu" + k="20" /> + <hkern g1="Psi" + g2="guillemotright,guilsinglright" + k="5" /> + <hkern g1="Psi" + g2="hyphen,endash,emdash" + k="17" /> + <hkern g1="Psi" + g2="quoteright,quotedblright" + k="-4" /> + <hkern g1="Psi" + g2="comma,period,ellipsis" + k="94" /> + <hkern g1="Psi" + g2="Delta" + k="63" /> + <hkern g1="Psi" + g2="Phi" + k="4" /> + <hkern g1="Psi" + g2="Upsilon,Upsilondieresis" + k="-7" /> + <hkern g1="Psi" + g2="Omega" + k="12" /> + <hkern g1="Psi" + g2="Sigma" + k="7" /> + <hkern g1="Psi" + g2="epsilontonos,epsilon" + k="24" /> + <hkern g1="Psi" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="23" /> + <hkern g1="Psi" + g2="rho" + k="41" /> + <hkern g1="Psi" + g2="omega,omegatonos" + k="11" /> + <hkern g1="Sigma" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="34" /> + <hkern g1="Sigma" + g2="guillemotright,guilsinglright" + k="4" /> + <hkern g1="Sigma" + g2="hyphen,endash,emdash" + k="34" /> + <hkern g1="Sigma" + g2="quotedbl,quotesingle" + k="5" /> + <hkern g1="Sigma" + g2="quoteright,quotedblright" + k="36" /> + <hkern g1="Sigma" + g2="chi" + k="5" /> + <hkern g1="Sigma" + g2="gamma,nu" + k="17" /> + <hkern g1="Sigma" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="6" /> + <hkern g1="Sigma" + g2="lambda" + k="-4" /> + <hkern g1="Sigma" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="14" /> + <hkern g1="Sigma" + g2="rho" + k="8" /> + <hkern g1="Sigma" + g2="tau" + k="14" /> + <hkern g1="Sigma" + g2="upsilondieresistonos,upsilon,psi,upsilondieresis,upsilontonos" + k="8" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="T,Tcommaaccent,Tcaron,Tbar,Tau" + k="-9" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="C,G,O,Q,Ccedilla,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Cacute,Ccircumflex,Cdotaccent,Ccaron,Gcircumflex,Gbreve,Gdotaccent,Gcommaaccent,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute,Theta,Omicron" + k="28" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="X,Chi" + k="13" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute,Alpha,Lambda" + k="97" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="M,Mu" + k="19" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="colon,semicolon" + k="38" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="guillemotright,guilsinglright" + k="29" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="hyphen,endash,emdash" + k="60" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="quotedbl,quotesingle" + k="-4" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="quoteright,quotedblright" + k="-4" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="comma,period,ellipsis" + k="100" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="Delta" + k="83" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="Phi" + k="26" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="Psi" + k="-8" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="Upsilon,Upsilondieresis" + k="-6" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="Omega" + k="16" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="epsilontonos,epsilon" + k="59" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="mu,etatonos,beta,eta,kappa" + k="28" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="gamma,nu" + k="6" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="27" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="lambda" + k="12" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="79" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="rho" + k="90" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="upsilondieresistonos,upsilon,psi,upsilondieresis,upsilontonos" + k="21" /> + <hkern g1="Upsilontonos,Upsilon,Upsilondieresis" + g2="pi" + k="4" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="colon,semicolon" + k="-7" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="guillemotright,guilsinglright" + k="-4" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="hyphen,endash,emdash" + k="-12" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="quoteright,quotedblright" + k="-4" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="comma,period,ellipsis" + k="-7" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="epsilontonos,epsilon" + k="-6" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="mu,etatonos,beta,eta,kappa" + k="-4" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="lambda" + k="-8" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="rho" + k="6" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="theta" + k="-6" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="zeta,xi" + k="-6" /> + <hkern g1="mu,iotadieresistonos,alphatonos,iotatonos,alpha,iota,iotadieresis" + g2="pi" + k="-12" /> + <hkern g1="beta" + g2="hyphen,endash,emdash" + k="-12" /> + <hkern g1="beta" + g2="parenright,bracketright,braceright" + k="18" /> + <hkern g1="beta" + g2="quotedbl,quotesingle" + k="29" /> + <hkern g1="beta" + g2="quoteright,quotedblright" + k="23" /> + <hkern g1="beta" + g2="comma,period,ellipsis" + k="19" /> + <hkern g1="beta" + g2="gamma,nu" + k="10" /> + <hkern g1="beta" + g2="lambda" + k="4" /> + <hkern g1="beta" + g2="rho" + k="10" /> + <hkern g1="beta" + g2="zeta,xi" + k="-5" /> + <hkern g1="chi" + g2="guillemotright,guilsinglright" + k="-4" /> + <hkern g1="chi" + g2="parenright,bracketright,braceright" + k="19" /> + <hkern g1="chi" + g2="quoteright,quotedblright" + k="-12" /> + <hkern g1="chi" + g2="comma,period,ellipsis" + k="31" /> + <hkern g1="chi" + g2="epsilontonos,epsilon" + k="13" /> + <hkern g1="chi" + g2="mu,etatonos,beta,eta,kappa" + k="-5" /> + <hkern g1="chi" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="4" /> + <hkern g1="chi" + g2="lambda" + k="23" /> + <hkern g1="chi" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="25" /> + <hkern g1="chi" + g2="rho" + k="11" /> + <hkern g1="chi" + g2="tau" + k="-14" /> + <hkern g1="chi" + g2="pi" + k="-12" /> + <hkern g1="epsilontonos,epsilon" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="7" /> + <hkern g1="epsilontonos,epsilon" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="6" /> + <hkern g1="epsilontonos,epsilon" + g2="rho" + k="4" /> + <hkern g1="epsilontonos,epsilon" + g2="pi" + k="-9" /> + <hkern g1="etatonos,eta" + g2="quoteright,quotedblright" + k="26" /> + <hkern g1="etatonos,eta" + g2="gamma,nu" + k="13" /> + <hkern g1="etatonos,eta" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="5" /> + <hkern g1="etatonos,eta" + g2="rho" + k="4" /> + <hkern g1="etatonos,eta" + g2="upsilondieresistonos,upsilon,psi,upsilondieresis,upsilontonos" + k="5" /> + <hkern g1="gamma,nu" + g2="parenright,bracketright,braceright" + k="4" /> + <hkern g1="gamma,nu" + g2="quotedbl,quotesingle" + k="-8" /> + <hkern g1="gamma,nu" + g2="quoteright,quotedblright" + k="-10" /> + <hkern g1="gamma,nu" + g2="comma,period,ellipsis" + k="56" /> + <hkern g1="gamma,nu" + g2="epsilontonos,epsilon" + k="8" /> + <hkern g1="gamma,nu" + g2="gamma,nu" + k="-11" /> + <hkern g1="gamma,nu" + g2="lambda" + k="20" /> + <hkern g1="gamma,nu" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="4" /> + <hkern g1="gamma,nu" + g2="rho" + k="25" /> + <hkern g1="gamma,nu" + g2="tau" + k="-20" /> + <hkern g1="gamma,nu" + g2="theta" + k="-21" /> + <hkern g1="gamma,nu" + g2="pi" + k="-20" /> + <hkern g1="kappa" + g2="hyphen,endash,emdash" + k="32" /> + <hkern g1="kappa" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="kappa" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="20" /> + <hkern g1="kappa" + g2="rho" + k="9" /> + <hkern g1="kappa" + g2="zeta,xi" + k="10" /> + <hkern g1="kappa" + g2="pi" + k="-5" /> + <hkern g1="lambda" + g2="parenright,bracketright,braceright" + k="12" /> + <hkern g1="lambda" + g2="quotedbl,quotesingle" + k="73" /> + <hkern g1="lambda" + g2="quoteright,quotedblright" + k="54" /> + <hkern g1="lambda" + g2="chi" + k="32" /> + <hkern g1="lambda" + g2="epsilontonos,epsilon" + k="-4" /> + <hkern g1="lambda" + g2="gamma,nu" + k="41" /> + <hkern g1="lambda" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="8" /> + <hkern g1="lambda" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="5" /> + <hkern g1="lambda" + g2="tau" + k="36" /> + <hkern g1="lambda" + g2="upsilondieresistonos,upsilon,psi,upsilondieresis,upsilontonos" + k="11" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="chi" + k="21" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="gamma,nu" + k="10" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="lambda" + k="11" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="rho" + k="10" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="tau" + k="5" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="zeta,xi" + k="-8" /> + <hkern g1="pi" + g2="guillemotright,guilsinglright" + k="-10" /> + <hkern g1="pi" + g2="parenright,bracketright,braceright" + k="24" /> + <hkern g1="pi" + g2="quoteright,quotedblright" + k="-5" /> + <hkern g1="pi" + g2="comma,period,ellipsis" + k="24" /> + <hkern g1="pi" + g2="gamma,nu" + k="-11" /> + <hkern g1="pi" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="8" /> + <hkern g1="pi" + g2="lambda" + k="16" /> + <hkern g1="pi" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="5" /> + <hkern g1="pi" + g2="rho" + k="15" /> + <hkern g1="pi" + g2="tau" + k="-12" /> + <hkern g1="pi" + g2="pi" + k="-7" /> + <hkern g1="sigma" + g2="guillemotright,guilsinglright" + k="-12" /> + <hkern g1="sigma" + g2="hyphen,endash,emdash" + k="-7" /> + <hkern g1="sigma" + g2="quotedbl,quotesingle" + k="-4" /> + <hkern g1="sigma" + g2="quoteright,quotedblright" + k="-15" /> + <hkern g1="sigma" + g2="comma,period,ellipsis" + k="35" /> + <hkern g1="sigma" + g2="chi" + k="-5" /> + <hkern g1="sigma" + g2="mu,etatonos,beta,eta,kappa" + k="-5" /> + <hkern g1="sigma" + g2="gamma,nu" + k="-14" /> + <hkern g1="sigma" + g2="iotadieresistonos,iotatonos,iota,iotadieresis" + k="-5" /> + <hkern g1="sigma" + g2="lambda" + k="23" /> + <hkern g1="sigma" + g2="rho" + k="24" /> + <hkern g1="sigma" + g2="tau" + k="-20" /> + <hkern g1="sigma" + g2="theta" + k="-10" /> + <hkern g1="sigma" + g2="zeta,xi" + k="-4" /> + <hkern g1="sigma" + g2="pi" + k="-18" /> + <hkern g1="tau" + g2="guillemotright,guilsinglright" + k="-12" /> + <hkern g1="tau" + g2="hyphen,endash,emdash" + k="12" /> + <hkern g1="tau" + g2="quotedbl,quotesingle" + k="5" /> + <hkern g1="tau" + g2="quoteright,quotedblright" + k="-18" /> + <hkern g1="tau" + g2="comma,period,ellipsis" + k="30" /> + <hkern g1="tau" + g2="chi" + k="-5" /> + <hkern g1="tau" + g2="gamma,nu" + k="-12" /> + <hkern g1="tau" + g2="lambda" + k="22" /> + <hkern g1="tau" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="11" /> + <hkern g1="tau" + g2="rho" + k="28" /> + <hkern g1="tau" + g2="tau" + k="-8" /> + <hkern g1="theta" + g2="hyphen,endash,emdash" + k="-18" /> + <hkern g1="theta" + g2="quoteright,quotedblright" + k="-4" /> + <hkern g1="theta" + g2="comma,period,ellipsis" + k="30" /> + <hkern g1="theta" + g2="lambda" + k="12" /> + <hkern g1="theta" + g2="zeta,xi" + k="-11" /> + <hkern g1="xi" + g2="colon,semicolon" + k="-17" /> + <hkern g1="xi" + g2="guillemotright,guilsinglright" + k="-23" /> + <hkern g1="xi" + g2="parenright,bracketright,braceright" + k="-22" /> + <hkern g1="xi" + g2="quotedbl,quotesingle" + k="-19" /> + <hkern g1="xi" + g2="comma,period,ellipsis" + k="-23" /> + <hkern g1="xi" + g2="epsilontonos,epsilon" + k="-8" /> + <hkern g1="xi" + g2="lambda" + k="-30" /> + <hkern g1="xi" + g2="pi" + k="-14" /> + <hkern g1="zeta" + g2="colon,semicolon" + k="-15" /> + <hkern g1="zeta" + g2="guillemotright,guilsinglright" + k="-23" /> + <hkern g1="zeta" + g2="hyphen,endash,emdash" + k="22" /> + <hkern g1="zeta" + g2="parenright,bracketright,braceright" + k="-28" /> + <hkern g1="zeta" + g2="quotedbl,quotesingle" + k="-30" /> + <hkern g1="zeta" + g2="comma,period,ellipsis" + k="-18" /> + <hkern g1="zeta" + g2="epsilontonos,epsilon" + k="-7" /> + <hkern g1="zeta" + g2="lambda" + k="-27" /> + <hkern g1="zeta" + g2="alphatonos,alpha,delta,omicron,uni03C2,sigma,phi,omicrontonos" + k="7" /> + <hkern g1="zeta" + g2="rho" + k="-11" /> + <hkern g1="zeta" + g2="tau" + k="14" /> + <hkern g1="zeta" + g2="omega,omegatonos" + k="5" /> + <hkern g1="upsilondieresistonos,upsilon,psi,omega,upsilondieresis,upsilontonos,omegatonos" + g2="hyphen,endash,emdash" + k="-10" /> + <hkern g1="upsilondieresistonos,upsilon,psi,omega,upsilondieresis,upsilontonos,omegatonos" + g2="parenright,bracketright,braceright" + k="32" /> + <hkern g1="upsilondieresistonos,upsilon,psi,omega,upsilondieresis,upsilontonos,omegatonos" + g2="quotedbl,quotesingle" + k="35" /> + <hkern g1="upsilondieresistonos,upsilon,psi,omega,upsilondieresis,upsilontonos,omegatonos" + g2="comma,period,ellipsis" + k="23" /> + <hkern g1="afii10018" + g2="afii10041" + k="38" /> + <hkern g1="afii10018" + g2="afii10021" + k="5" /> + <hkern g1="afii10018" + g2="afii10051" + k="46" /> + <hkern g1="afii10018" + g2="afii10038" + k="5" /> + <hkern g1="afii10018" + g2="afii10060,afii10036,afii10044" + k="38" /> + <hkern g1="afii10018" + g2="afii10057" + k="5" /> + <hkern g1="afii10018" + g2="afii10053,afii10032,afii10035" + k="6" /> + <hkern g1="afii10018" + g2="afii10062,afii10037" + k="23" /> + <hkern g1="afii10018" + g2="afii10024" + k="4" /> + <hkern g1="afii10018" + g2="afii10017" + k="9" /> + <hkern g1="afii10018" + g2="afii10054" + k="11" /> + <hkern g1="afii10018" + g2="afii10039" + k="22" /> + <hkern g1="afii10018" + g2="afii10089" + k="8" /> + <hkern g1="afii10018" + g2="afii10069" + k="8" /> + <hkern g1="afii10018" + g2="afii10099" + k="4" /> + <hkern g1="afii10018" + g2="afii10084,afii10092" + k="24" /> + <hkern g1="afii10018" + g2="afii10105" + k="13" /> + <hkern g1="afii10018" + g2="afii10085,afii10110" + k="24" /> + <hkern g1="afii10018" + g2="afii10097" + k="4" /> + <hkern g1="afii10018" + g2="afii10072" + k="4" /> + <hkern g1="afii10018" + g2="afii10087" + k="21" /> + <hkern g1="afii10051" + g2="afii10041" + k="54" /> + <hkern g1="afii10051" + g2="afii10021" + k="-8" /> + <hkern g1="afii10051" + g2="afii10051" + k="79" /> + <hkern g1="afii10051" + g2="afii10038" + k="8" /> + <hkern g1="afii10051" + g2="afii10058,afii10029" + k="-15" /> + <hkern g1="afii10051" + g2="afii10060,afii10036,afii10044" + k="101" /> + <hkern g1="afii10051" + g2="afii10057" + k="-6" /> + <hkern g1="afii10051" + g2="afii10053,afii10032,afii10035" + k="7" /> + <hkern g1="afii10051" + g2="afii10062,afii10037" + k="31" /> + <hkern g1="afii10051" + g2="afii10024" + k="-16" /> + <hkern g1="afii10051" + g2="afii10039" + k="5" /> + <hkern g1="afii10051" + g2="afii10049" + k="-5" /> + <hkern g1="afii10051" + g2="afii10089" + k="13" /> + <hkern g1="afii10051" + g2="afii10069" + k="-8" /> + <hkern g1="afii10051" + g2="afii10099" + k="4" /> + <hkern g1="afii10051" + g2="afii10077,afii10106" + k="-9" /> + <hkern g1="afii10051" + g2="afii10084,afii10092" + k="20" /> + <hkern g1="afii10051" + g2="afii10108" + k="5" /> + <hkern g1="afii10051" + g2="afii10085,afii10110" + k="23" /> + <hkern g1="afii10051" + g2="afii10072" + k="-10" /> + <hkern g1="afii10054" + g2="afii10041" + k="28" /> + <hkern g1="afii10054" + g2="afii10021" + k="4" /> + <hkern g1="afii10054" + g2="afii10051" + k="14" /> + <hkern g1="afii10054" + g2="afii10058,afii10029" + k="-4" /> + <hkern g1="afii10054" + g2="afii10060,afii10036,afii10044" + k="13" /> + <hkern g1="afii10054" + g2="afii10062,afii10037" + k="8" /> + <hkern g1="afii10054" + g2="afii10089" + k="14" /> + <hkern g1="afii10054" + g2="afii10069" + k="5" /> + <hkern g1="afii10054" + g2="afii10099" + k="4" /> + <hkern g1="afii10054" + g2="afii10084,afii10092" + k="27" /> + <hkern g1="afii10054" + g2="afii10105" + k="9" /> + <hkern g1="afii10054" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="-6" /> + <hkern g1="afii10054" + g2="afii10085,afii10110" + k="17" /> + <hkern g1="afii10054" + g2="afii10065" + k="-4" /> + <hkern g1="afii10055,afii10056,afii10145,afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049" + g2="afii10041" + k="6" /> + <hkern g1="afii10055,afii10056,afii10145,afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049" + g2="afii10024" + k="-4" /> + <hkern g1="afii10055,afii10056,afii10145,afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049" + g2="afii10089" + k="5" /> + <hkern g1="afii10055,afii10056,afii10145,afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049" + g2="afii10099" + k="-5" /> + <hkern g1="afii10055,afii10056,afii10145,afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049" + g2="afii10084,afii10092" + k="7" /> + <hkern g1="afii10055,afii10056,afii10145,afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049" + g2="afii10108" + k="-5" /> + <hkern g1="afii10055,afii10056,afii10145,afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049" + g2="afii10085,afii10110" + k="6" /> + <hkern g1="afii10055,afii10056,afii10145,afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049" + g2="comma,period,ellipsis" + k="-12" /> + <hkern g1="afii10038" + g2="afii10041" + k="11" /> + <hkern g1="afii10038" + g2="afii10021" + k="31" /> + <hkern g1="afii10038" + g2="afii10051" + k="24" /> + <hkern g1="afii10038" + g2="afii10025,afii10047" + k="11" /> + <hkern g1="afii10038" + g2="afii10058,afii10029" + k="16" /> + <hkern g1="afii10038" + g2="afii10060,afii10036,afii10044" + k="20" /> + <hkern g1="afii10038" + g2="afii10057" + k="17" /> + <hkern g1="afii10038" + g2="afii10062,afii10037" + k="30" /> + <hkern g1="afii10038" + g2="afii10024" + k="14" /> + <hkern g1="afii10038" + g2="afii10017" + k="21" /> + <hkern g1="afii10038" + g2="afii10039" + k="47" /> + <hkern g1="afii10038" + g2="afii10030" + k="8" /> + <hkern g1="afii10038" + g2="afii10069" + k="25" /> + <hkern g1="afii10038" + g2="afii10099" + k="-5" /> + <hkern g1="afii10038" + g2="afii10077,afii10106" + k="4" /> + <hkern g1="afii10038" + g2="afii10084,afii10092" + k="-4" /> + <hkern g1="afii10038" + g2="afii10105" + k="6" /> + <hkern g1="afii10038" + g2="afii10108" + k="-4" /> + <hkern g1="afii10038" + g2="afii10087" + k="5" /> + <hkern g1="afii10038" + g2="afii10065" + k="4" /> + <hkern g1="afii10038" + g2="afii10078" + k="6" /> + <hkern g1="afii10030" + g2="afii10041" + k="19" /> + <hkern g1="afii10030" + g2="afii10038" + k="5" /> + <hkern g1="afii10030" + g2="afii10058,afii10029" + k="-5" /> + <hkern g1="afii10030" + g2="afii10060,afii10036,afii10044" + k="5" /> + <hkern g1="afii10030" + g2="afii10053,afii10032,afii10035" + k="5" /> + <hkern g1="afii10030" + g2="afii10062,afii10037" + k="8" /> + <hkern g1="afii10030" + g2="afii10089" + k="12" /> + <hkern g1="afii10030" + g2="afii10099" + k="-4" /> + <hkern g1="afii10030" + g2="afii10073,afii10095,afii10846" + k="-4" /> + <hkern g1="afii10030" + g2="afii10084,afii10092" + k="8" /> + <hkern g1="afii10030" + g2="afii10105" + k="4" /> + <hkern g1="afii10030" + g2="afii10108" + k="-4" /> + <hkern g1="afii10030" + g2="afii10085,afii10110" + k="5" /> + <hkern g1="afii10034" + g2="afii10041" + k="5" /> + <hkern g1="afii10034" + g2="afii10021" + k="64" /> + <hkern g1="afii10034" + g2="afii10025,afii10047" + k="18" /> + <hkern g1="afii10034" + g2="afii10058,afii10029" + k="33" /> + <hkern g1="afii10034" + g2="afii10060,afii10036,afii10044" + k="-9" /> + <hkern g1="afii10034" + g2="afii10057" + k="81" /> + <hkern g1="afii10034" + g2="afii10062,afii10037" + k="9" /> + <hkern g1="afii10034" + g2="afii10024" + k="18" /> + <hkern g1="afii10034" + g2="afii10017" + k="61" /> + <hkern g1="afii10034" + g2="afii10039" + k="28" /> + <hkern g1="afii10034" + g2="afii10049" + k="8" /> + <hkern g1="afii10034" + g2="afii10030" + k="13" /> + <hkern g1="afii10034" + g2="afii10089" + k="8" /> + <hkern g1="afii10034" + g2="afii10069" + k="47" /> + <hkern g1="afii10034" + g2="afii10099" + k="-10" /> + <hkern g1="afii10034" + g2="afii10086" + k="23" /> + <hkern g1="afii10034" + g2="afii10077,afii10106" + k="19" /> + <hkern g1="afii10034" + g2="afii10105" + k="19" /> + <hkern g1="afii10034" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="25" /> + <hkern g1="afii10034" + g2="afii10108" + k="-11" /> + <hkern g1="afii10034" + g2="afii10085,afii10110" + k="-6" /> + <hkern g1="afii10034" + g2="afii10097" + k="10" /> + <hkern g1="afii10034" + g2="afii10072" + k="-6" /> + <hkern g1="afii10034" + g2="afii10087" + k="-4" /> + <hkern g1="afii10034" + g2="afii10065" + k="19" /> + <hkern g1="afii10034" + g2="afii10078" + k="14" /> + <hkern g1="afii10034" + g2="afii10102" + k="18" /> + <hkern g1="afii10034" + g2="afii10067,afii10068,afii10074,afii10075,afii10076,afii10079,afii10081,afii10082,afii10088,afii10090,afii10091,afii10093,afii10094,afii10096,afii10100,afii10104,afii10107,afii10109,afii10193,afii10098" + k="8" /> + <hkern g1="afii10034" + g2="afii10103" + k="9" /> + <hkern g1="afii10034" + g2="colon,semicolon" + k="18" /> + <hkern g1="afii10034" + g2="comma,period,ellipsis" + k="147" /> + <hkern g1="afii10034" + g2="hyphen,endash,emdash" + k="11" /> + <hkern g1="afii10034" + g2="guillemotright,guilsinglright" + k="10" /> + <hkern g1="afii10053,afii10035" + g2="afii10041" + k="10" /> + <hkern g1="afii10053,afii10035" + g2="afii10021" + k="-13" /> + <hkern g1="afii10053,afii10035" + g2="afii10051" + k="-20" /> + <hkern g1="afii10053,afii10035" + g2="afii10025,afii10047" + k="-17" /> + <hkern g1="afii10053,afii10035" + g2="afii10038" + k="29" /> + <hkern g1="afii10053,afii10035" + g2="afii10058,afii10029" + k="-20" /> + <hkern g1="afii10053,afii10035" + g2="afii10060,afii10036,afii10044" + k="-19" /> + <hkern g1="afii10053,afii10035" + g2="afii10053,afii10032,afii10035" + k="26" /> + <hkern g1="afii10053,afii10035" + g2="afii10062,afii10037" + k="-16" /> + <hkern g1="afii10053,afii10035" + g2="afii10024" + k="-11" /> + <hkern g1="afii10053,afii10035" + g2="afii10017" + k="-10" /> + <hkern g1="afii10053,afii10035" + g2="afii10039" + k="-9" /> + <hkern g1="afii10053,afii10035" + g2="afii10049" + k="-7" /> + <hkern g1="afii10053,afii10035" + g2="afii10066" + k="17" /> + <hkern g1="afii10053,afii10035" + g2="afii10089" + k="47" /> + <hkern g1="afii10053,afii10035" + g2="afii10069" + k="-7" /> + <hkern g1="afii10053,afii10035" + g2="afii10099" + k="-16" /> + <hkern g1="afii10053,afii10035" + g2="afii10073,afii10095,afii10846" + k="-12" /> + <hkern g1="afii10053,afii10035" + g2="afii10086" + k="22" /> + <hkern g1="afii10053,afii10035" + g2="afii10077,afii10106" + k="-12" /> + <hkern g1="afii10053,afii10035" + g2="afii10084,afii10092" + k="21" /> + <hkern g1="afii10053,afii10035" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="22" /> + <hkern g1="afii10053,afii10035" + g2="afii10108" + k="-15" /> + <hkern g1="afii10053,afii10035" + g2="afii10085,afii10110" + k="18" /> + <hkern g1="afii10053,afii10035" + g2="afii10072" + k="-12" /> + <hkern g1="afii10053,afii10035" + g2="afii10065" + k="6" /> + <hkern g1="afii10053,afii10035" + g2="afii10102" + k="5" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10021" + k="58" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10051" + k="-31" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10025,afii10047" + k="-7" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10038" + k="40" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10058,afii10029" + k="39" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10060,afii10036,afii10044" + k="-25" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10057" + k="77" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10053,afii10032,afii10035" + k="33" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10062,afii10037" + k="-25" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10024" + k="-12" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10017" + k="75" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10049" + k="12" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10030" + k="7" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10066" + k="27" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10089" + k="85" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10069" + k="108" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10099" + k="-30" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10073,afii10095,afii10846" + k="56" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10086" + k="96" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10077,afii10106" + k="83" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10084,afii10092" + k="69" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10105" + k="27" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="94" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10108" + k="-28" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10085,afii10110" + k="52" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10097" + k="77" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10072" + k="52" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10087" + k="55" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10065" + k="75" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10078" + k="85" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10102" + k="23" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10067,afii10068,afii10074,afii10075,afii10076,afii10079,afii10081,afii10082,afii10088,afii10090,afii10091,afii10093,afii10094,afii10096,afii10100,afii10104,afii10107,afii10109,afii10193,afii10098" + k="75" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="afii10103" + k="7" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="parenright,bracketright,braceright" + k="-10" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="colon,semicolon" + k="61" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="comma,period,ellipsis" + k="92" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="hyphen,endash,emdash" + k="90" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="guillemotright,guilsinglright" + k="77" /> + <hkern g1="afii10052,afii10020,afii10036,afii10050" + g2="guillemotleft,guilsinglleft" + k="53" /> + <hkern g1="afii10039" + g2="afii10041" + k="18" /> + <hkern g1="afii10039" + g2="afii10021" + k="-8" /> + <hkern g1="afii10039" + g2="afii10051" + k="-12" /> + <hkern g1="afii10039" + g2="afii10025,afii10047" + k="-7" /> + <hkern g1="afii10039" + g2="afii10038" + k="47" /> + <hkern g1="afii10039" + g2="afii10058,afii10029" + k="-15" /> + <hkern g1="afii10039" + g2="afii10060,afii10036,afii10044" + k="-11" /> + <hkern g1="afii10039" + g2="afii10053,afii10032,afii10035" + k="39" /> + <hkern g1="afii10039" + g2="afii10062,afii10037" + k="-12" /> + <hkern g1="afii10039" + g2="afii10024" + k="-12" /> + <hkern g1="afii10039" + g2="afii10049" + k="-11" /> + <hkern g1="afii10039" + g2="afii10066" + k="26" /> + <hkern g1="afii10039" + g2="afii10089" + k="55" /> + <hkern g1="afii10039" + g2="afii10069" + k="-11" /> + <hkern g1="afii10039" + g2="afii10099" + k="-14" /> + <hkern g1="afii10039" + g2="afii10073,afii10095,afii10846" + k="-12" /> + <hkern g1="afii10039" + g2="afii10086" + k="21" /> + <hkern g1="afii10039" + g2="afii10077,afii10106" + k="-17" /> + <hkern g1="afii10039" + g2="afii10084,afii10092" + k="38" /> + <hkern g1="afii10039" + g2="afii10105" + k="7" /> + <hkern g1="afii10039" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="24" /> + <hkern g1="afii10039" + g2="afii10108" + k="-15" /> + <hkern g1="afii10039" + g2="afii10085,afii10110" + k="38" /> + <hkern g1="afii10039" + g2="afii10097" + k="-9" /> + <hkern g1="afii10039" + g2="afii10072" + k="-12" /> + <hkern g1="afii10039" + g2="afii10087" + k="-6" /> + <hkern g1="afii10039" + g2="afii10065" + k="9" /> + <hkern g1="afii10039" + g2="colon,semicolon" + k="7" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10041" + k="55" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10021" + k="6" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10051" + k="104" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10025,afii10047" + k="8" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10038" + k="5" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10060,afii10036,afii10044" + k="92" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10057" + k="4" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10053,afii10032,afii10035" + k="4" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10062,afii10037" + k="63" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10017" + k="7" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10054" + k="7" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10039" + k="24" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10030" + k="5" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10089" + k="13" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10069" + k="6" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10099" + k="4" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10084,afii10092" + k="22" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10105" + k="15" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10108" + k="4" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10085,afii10110" + k="21" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10097" + k="6" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10087" + k="22" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="afii10102" + k="7" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="parenright,bracketright,braceright" + k="37" /> + <hkern g1="afii10058,afii10059,afii10044,afii10046" + g2="quoteright,quotedblright" + k="50" /> + <hkern g1="afii10023,afii10022" + g2="afii10041" + k="8" /> + <hkern g1="afii10023,afii10022" + g2="afii10021" + k="-10" /> + <hkern g1="afii10023,afii10022" + g2="afii10051" + k="9" /> + <hkern g1="afii10023,afii10022" + g2="afii10025,afii10047" + k="-8" /> + <hkern g1="afii10023,afii10022" + g2="afii10058,afii10029" + k="-13" /> + <hkern g1="afii10023,afii10022" + g2="afii10057" + k="-18" /> + <hkern g1="afii10023,afii10022" + g2="afii10049" + k="-7" /> + <hkern g1="afii10023,afii10022" + g2="afii10089" + k="16" /> + <hkern g1="afii10023,afii10022" + g2="afii10069" + k="-7" /> + <hkern g1="afii10023,afii10022" + g2="afii10099" + k="-5" /> + <hkern g1="afii10023,afii10022" + g2="afii10073,afii10095,afii10846" + k="-10" /> + <hkern g1="afii10023,afii10022" + g2="afii10086" + k="7" /> + <hkern g1="afii10023,afii10022" + g2="afii10077,afii10106" + k="-10" /> + <hkern g1="afii10023,afii10022" + g2="afii10084,afii10092" + k="17" /> + <hkern g1="afii10023,afii10022" + g2="afii10105" + k="7" /> + <hkern g1="afii10023,afii10022" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="5" /> + <hkern g1="afii10023,afii10022" + g2="afii10108" + k="-6" /> + <hkern g1="afii10023,afii10022" + g2="afii10085,afii10110" + k="9" /> + <hkern g1="afii10023,afii10022" + g2="afii10097" + k="-5" /> + <hkern g1="afii10023,afii10022" + g2="afii10072" + k="-9" /> + <hkern g1="afii10023,afii10022" + g2="afii10102" + k="-4" /> + <hkern g1="afii10057" + g2="afii10021" + k="12" /> + <hkern g1="afii10057" + g2="afii10057" + k="25" /> + <hkern g1="afii10057" + g2="afii10024" + k="5" /> + <hkern g1="afii10057" + g2="afii10017" + k="11" /> + <hkern g1="afii10057" + g2="afii10049" + k="5" /> + <hkern g1="afii10057" + g2="afii10089" + k="8" /> + <hkern g1="afii10057" + g2="afii10069" + k="19" /> + <hkern g1="afii10057" + g2="afii10099" + k="-8" /> + <hkern g1="afii10057" + g2="afii10077,afii10106" + k="4" /> + <hkern g1="afii10057" + g2="afii10105" + k="13" /> + <hkern g1="afii10057" + g2="afii10108" + k="-8" /> + <hkern g1="afii10057" + g2="afii10097" + k="11" /> + <hkern g1="afii10057" + g2="afii10087" + k="5" /> + <hkern g1="afii10057" + g2="afii10065" + k="6" /> + <hkern g1="afii10057" + g2="afii10078" + k="5" /> + <hkern g1="afii10057" + g2="afii10102" + k="7" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10041" + k="16" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10021" + k="-21" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10051" + k="-9" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10025,afii10047" + k="-15" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10038" + k="22" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10058,afii10029" + k="-25" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10060,afii10036,afii10044" + k="-17" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10057" + k="-24" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10053,afii10032,afii10035" + k="17" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10062,afii10037" + k="-15" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10024" + k="-18" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10017" + k="-12" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10039" + k="-13" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10049" + k="-26" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10066" + k="16" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10089" + k="44" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10069" + k="-19" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10099" + k="-19" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10073,afii10095,afii10846" + k="-13" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10086" + k="6" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10077,afii10106" + k="-22" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10084,afii10092" + k="36" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10105" + k="4" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="9" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10108" + k="-18" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10085,afii10110" + k="31" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10097" + k="-12" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10072" + k="-17" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10087" + k="-13" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10065" + k="-5" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="afii10102" + k="-4" /> + <hkern g1="afii10061,afii10024,afii10028" + g2="hyphen,endash,emdash" + k="21" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10041" + k="6" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10021" + k="25" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10051" + k="13" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10025,afii10047" + k="12" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10058,afii10029" + k="14" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10060,afii10036,afii10044" + k="9" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10057" + k="8" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10062,afii10037" + k="33" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10024" + k="18" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10017" + k="20" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10039" + k="36" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10049" + k="6" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10030" + k="5" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10069" + k="18" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10099" + k="-6" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10077,afii10106" + k="4" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10084,afii10092" + k="-5" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10105" + k="7" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10108" + k="-7" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10085,afii10110" + k="-8" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10097" + k="5" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10072" + k="5" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10087" + k="12" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10078" + k="4" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10041" + k="20" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10021" + k="-11" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10051" + k="13" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10025,afii10047" + k="-4" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10038" + k="10" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10058,afii10029" + k="-16" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10060,afii10036,afii10044" + k="14" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10057" + k="-15" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10053,afii10032,afii10035" + k="7" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10062,afii10037" + k="13" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10024" + k="-14" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10017" + k="-8" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10049" + k="-8" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10066" + k="5" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10089" + k="23" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10069" + k="-13" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10073,afii10095,afii10846" + k="-12" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10086" + k="5" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10077,afii10106" + k="-18" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10084,afii10092" + k="32" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10105" + k="-33" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="4" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10085,afii10110" + k="14" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10097" + k="-7" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10072" + k="-12" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10065" + k="-8" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="comma,period,ellipsis" + k="-17" /> + <hkern g1="afii10060" + g2="afii10041" + k="44" /> + <hkern g1="afii10060" + g2="afii10051" + k="91" /> + <hkern g1="afii10060" + g2="afii10038" + k="7" /> + <hkern g1="afii10060" + g2="afii10060,afii10036,afii10044" + k="77" /> + <hkern g1="afii10060" + g2="afii10053,afii10032,afii10035" + k="5" /> + <hkern g1="afii10060" + g2="afii10062,afii10037" + k="41" /> + <hkern g1="afii10060" + g2="afii10066" + k="5" /> + <hkern g1="afii10060" + g2="afii10089" + k="23" /> + <hkern g1="afii10060" + g2="afii10099" + k="6" /> + <hkern g1="afii10060" + g2="afii10086" + k="5" /> + <hkern g1="afii10060" + g2="afii10084,afii10092" + k="28" /> + <hkern g1="afii10060" + g2="afii10105" + k="19" /> + <hkern g1="afii10060" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="4" /> + <hkern g1="afii10060" + g2="afii10108" + k="4" /> + <hkern g1="afii10060" + g2="afii10085,afii10110" + k="27" /> + <hkern g1="afii10062,afii10037" + g2="afii10041" + k="-4" /> + <hkern g1="afii10062,afii10037" + g2="afii10021" + k="53" /> + <hkern g1="afii10062,afii10037" + g2="afii10051" + k="-42" /> + <hkern g1="afii10062,afii10037" + g2="afii10025,afii10047" + k="-10" /> + <hkern g1="afii10062,afii10037" + g2="afii10038" + k="15" /> + <hkern g1="afii10062,afii10037" + g2="afii10058,afii10029" + k="21" /> + <hkern g1="afii10062,afii10037" + g2="afii10060,afii10036,afii10044" + k="-27" /> + <hkern g1="afii10062,afii10037" + g2="afii10057" + k="70" /> + <hkern g1="afii10062,afii10037" + g2="afii10053,afii10032,afii10035" + k="18" /> + <hkern g1="afii10062,afii10037" + g2="afii10062,afii10037" + k="-23" /> + <hkern g1="afii10062,afii10037" + g2="afii10024" + k="-20" /> + <hkern g1="afii10062,afii10037" + g2="afii10017" + k="56" /> + <hkern g1="afii10062,afii10037" + g2="afii10039" + k="-12" /> + <hkern g1="afii10062,afii10037" + g2="afii10049" + k="7" /> + <hkern g1="afii10062,afii10037" + g2="afii10030" + k="9" /> + <hkern g1="afii10062,afii10037" + g2="afii10066" + k="19" /> + <hkern g1="afii10062,afii10037" + g2="afii10089" + k="38" /> + <hkern g1="afii10062,afii10037" + g2="afii10069" + k="81" /> + <hkern g1="afii10062,afii10037" + g2="afii10099" + k="-37" /> + <hkern g1="afii10062,afii10037" + g2="afii10073,afii10095,afii10846" + k="24" /> + <hkern g1="afii10062,afii10037" + g2="afii10086" + k="58" /> + <hkern g1="afii10062,afii10037" + g2="afii10077,afii10106" + k="44" /> + <hkern g1="afii10062,afii10037" + g2="afii10084,afii10092" + k="10" /> + <hkern g1="afii10062,afii10037" + g2="afii10105" + k="19" /> + <hkern g1="afii10062,afii10037" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="60" /> + <hkern g1="afii10062,afii10037" + g2="afii10108" + k="-29" /> + <hkern g1="afii10062,afii10037" + g2="afii10085,afii10110" + k="12" /> + <hkern g1="afii10062,afii10037" + g2="afii10097" + k="51" /> + <hkern g1="afii10062,afii10037" + g2="afii10072" + k="15" /> + <hkern g1="afii10062,afii10037" + g2="afii10087" + k="16" /> + <hkern g1="afii10062,afii10037" + g2="afii10065" + k="55" /> + <hkern g1="afii10062,afii10037" + g2="afii10078" + k="46" /> + <hkern g1="afii10062,afii10037" + g2="afii10102" + k="49" /> + <hkern g1="afii10062,afii10037" + g2="afii10067,afii10068,afii10074,afii10075,afii10076,afii10079,afii10081,afii10082,afii10088,afii10090,afii10091,afii10093,afii10094,afii10096,afii10100,afii10104,afii10107,afii10109,afii10193,afii10098" + k="32" /> + <hkern g1="afii10062,afii10037" + g2="afii10103" + k="7" /> + <hkern g1="afii10062,afii10037" + g2="parenright,bracketright,braceright" + k="-16" /> + <hkern g1="afii10062,afii10037" + g2="colon,semicolon" + k="38" /> + <hkern g1="afii10062,afii10037" + g2="comma,period,ellipsis" + k="121" /> + <hkern g1="afii10062,afii10037" + g2="hyphen,endash,emdash" + k="55" /> + <hkern g1="afii10062,afii10037" + g2="guillemotright,guilsinglright" + k="35" /> + <hkern g1="afii10062,afii10037" + g2="guillemotleft,guilsinglleft" + k="33" /> + <hkern g1="afii10019,afii10025" + g2="afii10041" + k="18" /> + <hkern g1="afii10019,afii10025" + g2="afii10051" + k="10" /> + <hkern g1="afii10019,afii10025" + g2="afii10038" + k="7" /> + <hkern g1="afii10019,afii10025" + g2="afii10060,afii10036,afii10044" + k="7" /> + <hkern g1="afii10019,afii10025" + g2="afii10053,afii10032,afii10035" + k="4" /> + <hkern g1="afii10019,afii10025" + g2="afii10062,afii10037" + k="24" /> + <hkern g1="afii10019,afii10025" + g2="afii10024" + k="6" /> + <hkern g1="afii10019,afii10025" + g2="afii10039" + k="15" /> + <hkern g1="afii10019,afii10025" + g2="afii10089" + k="20" /> + <hkern g1="afii10019,afii10025" + g2="afii10069" + k="9" /> + <hkern g1="afii10019,afii10025" + g2="afii10086" + k="-4" /> + <hkern g1="afii10019,afii10025" + g2="afii10084,afii10092" + k="9" /> + <hkern g1="afii10019,afii10025" + g2="afii10105" + k="12" /> + <hkern g1="afii10019,afii10025" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="-5" /> + <hkern g1="afii10019,afii10025" + g2="afii10085,afii10110" + k="8" /> + <hkern g1="afii10019,afii10025" + g2="afii10097" + k="8" /> + <hkern g1="afii10019,afii10025" + g2="afii10087" + k="11" /> + <hkern g1="afii10019,afii10025" + g2="afii10102" + k="5" /> + <hkern g1="afii10065" + g2="afii10066" + k="5" /> + <hkern g1="afii10065" + g2="afii10089" + k="14" /> + <hkern g1="afii10065" + g2="afii10099" + k="6" /> + <hkern g1="afii10065" + g2="afii10077,afii10106" + k="-5" /> + <hkern g1="afii10065" + g2="afii10084,afii10092" + k="14" /> + <hkern g1="afii10065" + g2="afii10105" + k="12" /> + <hkern g1="afii10065" + g2="afii10108" + k="5" /> + <hkern g1="afii10065" + g2="afii10085,afii10110" + k="19" /> + <hkern g1="afii10065" + g2="afii10097" + k="-6" /> + <hkern g1="afii10099" + g2="afii10089" + k="11" /> + <hkern g1="afii10099" + g2="afii10099" + k="7" /> + <hkern g1="afii10099" + g2="afii10077,afii10106" + k="-7" /> + <hkern g1="afii10099" + g2="afii10084,afii10092" + k="16" /> + <hkern g1="afii10099" + g2="afii10105" + k="5" /> + <hkern g1="afii10099" + g2="afii10085,afii10110" + k="12" /> + <hkern g1="afii10102" + g2="afii10089" + k="14" /> + <hkern g1="afii10102" + g2="afii10099" + k="8" /> + <hkern g1="afii10102" + g2="afii10084,afii10092" + k="6" /> + <hkern g1="afii10102" + g2="afii10105" + k="8" /> + <hkern g1="afii10102" + g2="afii10108" + k="7" /> + <hkern g1="afii10102" + g2="afii10085,afii10110" + k="4" /> + <hkern g1="afii10074,afii10075,afii10077,afii10079,afii10081,afii10089,afii10090,afii10093,afii10097,afii10193" + g2="afii10089" + k="7" /> + <hkern g1="afii10074,afii10075,afii10077,afii10079,afii10081,afii10089,afii10090,afii10093,afii10097,afii10193" + g2="afii10099" + k="5" /> + <hkern g1="afii10074,afii10075,afii10077,afii10079,afii10081,afii10089,afii10090,afii10093,afii10097,afii10193" + g2="afii10084,afii10092" + k="5" /> + <hkern g1="afii10074,afii10075,afii10077,afii10079,afii10081,afii10089,afii10090,afii10093,afii10097,afii10193" + g2="afii10105" + k="13" /> + <hkern g1="afii10086" + g2="afii10089" + k="7" /> + <hkern g1="afii10086" + g2="afii10069" + k="11" /> + <hkern g1="afii10086" + g2="afii10099" + k="5" /> + <hkern g1="afii10086" + g2="afii10084,afii10092" + k="11" /> + <hkern g1="afii10086" + g2="afii10105" + k="13" /> + <hkern g1="afii10086" + g2="afii10108" + k="4" /> + <hkern g1="afii10086" + g2="afii10085,afii10110" + k="21" /> + <hkern g1="afii10086" + g2="afii10072" + k="9" /> + <hkern g1="afii10086" + g2="afii10087" + k="26" /> + <hkern g1="afii10086" + g2="afii10065" + k="-4" /> + <hkern g1="afii10086" + g2="afii10078" + k="4" /> + <hkern g1="afii10086" + g2="afii10102" + k="4" /> + <hkern g1="afii10078" + g2="afii10089" + k="16" /> + <hkern g1="afii10078" + g2="afii10099" + k="5" /> + <hkern g1="afii10078" + g2="afii10086" + k="4" /> + <hkern g1="afii10078" + g2="afii10077,afii10106" + k="-7" /> + <hkern g1="afii10078" + g2="afii10084,afii10092" + k="8" /> + <hkern g1="afii10078" + g2="afii10105" + k="11" /> + <hkern g1="afii10078" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="4" /> + <hkern g1="afii10078" + g2="afii10108" + k="4" /> + <hkern g1="afii10078" + g2="afii10085,afii10110" + k="10" /> + <hkern g1="afii10083,afii10101" + g2="afii10069" + k="-15" /> + <hkern g1="afii10083,afii10101" + g2="afii10099" + k="-5" /> + <hkern g1="afii10083,afii10101" + g2="afii10073,afii10095,afii10846" + k="-19" /> + <hkern g1="afii10083,afii10101" + g2="afii10086" + k="8" /> + <hkern g1="afii10083,afii10101" + g2="afii10077,afii10106" + k="-21" /> + <hkern g1="afii10083,afii10101" + g2="afii10084,afii10092" + k="-14" /> + <hkern g1="afii10083,afii10101" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="7" /> + <hkern g1="afii10083,afii10101" + g2="afii10108" + k="-5" /> + <hkern g1="afii10083,afii10101" + g2="afii10085,afii10110" + k="-14" /> + <hkern g1="afii10083,afii10101" + g2="afii10097" + k="-11" /> + <hkern g1="afii10083,afii10101" + g2="afii10072" + k="-19" /> + <hkern g1="afii10083,afii10101" + g2="afii10087" + k="-13" /> + <hkern g1="afii10083,afii10101" + g2="afii10065" + k="-7" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10069" + k="43" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10073,afii10095,afii10846" + k="-5" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10086" + k="15" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10077,afii10106" + k="17" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10084,afii10092" + k="-17" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10105" + k="14" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="14" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10085,afii10110" + k="-14" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10097" + k="4" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10072" + k="-12" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10087" + k="-8" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10065" + k="13" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10078" + k="8" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10102" + k="7" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10067,afii10068,afii10074,afii10075,afii10076,afii10079,afii10081,afii10082,afii10088,afii10090,afii10091,afii10093,afii10094,afii10096,afii10100,afii10104,afii10107,afii10109,afii10193,afii10098" + k="5" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="afii10103" + k="5" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="parenright,bracketright,braceright" + k="22" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="comma,period,ellipsis" + k="73" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="hyphen,endash,emdash" + k="21" /> + <hkern g1="afii10068,afii10084,afii10100,afii10098" + g2="guillemotleft,guilsinglleft" + k="17" /> + <hkern g1="afii10087" + g2="afii10089" + k="6" /> + <hkern g1="afii10087" + g2="afii10069" + k="-15" /> + <hkern g1="afii10087" + g2="afii10073,afii10095,afii10846" + k="-17" /> + <hkern g1="afii10087" + g2="afii10086" + k="21" /> + <hkern g1="afii10087" + g2="afii10077,afii10106" + k="-20" /> + <hkern g1="afii10087" + g2="afii10084,afii10092" + k="-6" /> + <hkern g1="afii10087" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="22" /> + <hkern g1="afii10087" + g2="afii10085,afii10110" + k="-10" /> + <hkern g1="afii10087" + g2="afii10097" + k="-16" /> + <hkern g1="afii10087" + g2="afii10072" + k="-18" /> + <hkern g1="afii10087" + g2="afii10087" + k="-11" /> + <hkern g1="afii10087" + g2="guillemotleft,guilsinglleft" + k="20" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10066" + k="5" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10089" + k="35" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10069" + k="4" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10099" + k="13" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10077,afii10106" + k="-4" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10084,afii10092" + k="65" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10105" + k="14" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10108" + k="7" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10085,afii10110" + k="44" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10097" + k="10" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10087" + k="15" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10102" + k="7" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="quoteright,quotedblright" + k="53" /> + <hkern g1="afii10103" + g2="afii10089" + k="6" /> + <hkern g1="afii10103" + g2="afii10084,afii10092" + k="7" /> + <hkern g1="afii10103" + g2="afii10105" + k="6" /> + <hkern g1="afii10070,afii10071" + g2="afii10066" + k="-4" /> + <hkern g1="afii10070,afii10071" + g2="afii10089" + k="6" /> + <hkern g1="afii10070,afii10071" + g2="afii10073,afii10095,afii10846" + k="-5" /> + <hkern g1="afii10070,afii10071" + g2="afii10086" + k="-5" /> + <hkern g1="afii10070,afii10071" + g2="afii10077,afii10106" + k="-6" /> + <hkern g1="afii10070,afii10071" + g2="afii10084,afii10092" + k="10" /> + <hkern g1="afii10070,afii10071" + g2="afii10105" + k="9" /> + <hkern g1="afii10070,afii10071" + g2="afii10085,afii10110" + k="11" /> + <hkern g1="afii10070,afii10071" + g2="afii10087" + k="8" /> + <hkern g1="afii10105" + g2="afii10089" + k="7" /> + <hkern g1="afii10105" + g2="afii10099" + k="-4" /> + <hkern g1="afii10105" + g2="afii10084,afii10092" + k="7" /> + <hkern g1="afii10105" + g2="afii10108" + k="-4" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10066" + k="6" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10089" + k="10" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10069" + k="-18" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10073,afii10095,afii10846" + k="-15" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10086" + k="9" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10077,afii10106" + k="-22" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10084,afii10092" + k="-11" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="7" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10085,afii10110" + k="-12" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10097" + k="-15" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10072" + k="-22" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10087" + k="-14" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10065" + k="-10" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="guillemotleft,guilsinglleft" + k="19" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10089" + k="8" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10069" + k="15" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10099" + k="6" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10084,afii10092" + k="15" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10105" + k="13" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10108" + k="5" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10085,afii10110" + k="18" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10097" + k="9" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10072" + k="9" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10087" + k="24" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10102" + k="5" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10066" + k="7" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10089" + k="15" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10069" + k="-22" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10099" + k="9" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10073,afii10095,afii10846" + k="-8" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10086" + k="4" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10077,afii10106" + k="-11" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10084,afii10092" + k="11" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10105" + k="-34" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10108" + k="7" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10085,afii10110" + k="7" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10097" + k="-6" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10072" + k="-10" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10087" + k="-5" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10065" + k="-4" /> + <hkern g1="afii10108" + g2="afii10089" + k="20" /> + <hkern g1="afii10108" + g2="afii10099" + k="11" /> + <hkern g1="afii10108" + g2="afii10084,afii10092" + k="21" /> + <hkern g1="afii10108" + g2="afii10105" + k="16" /> + <hkern g1="afii10108" + g2="afii10085,afii10110" + k="19" /> + <hkern g1="afii10085,afii10110" + g2="afii10089" + k="4" /> + <hkern g1="afii10085,afii10110" + g2="afii10069" + k="27" /> + <hkern g1="afii10085,afii10110" + g2="afii10073,afii10095,afii10846" + k="-6" /> + <hkern g1="afii10085,afii10110" + g2="afii10086" + k="12" /> + <hkern g1="afii10085,afii10110" + g2="afii10077,afii10106" + k="8" /> + <hkern g1="afii10085,afii10110" + g2="afii10084,afii10092" + k="-11" /> + <hkern g1="afii10085,afii10110" + g2="afii10105" + k="13" /> + <hkern g1="afii10085,afii10110" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="13" /> + <hkern g1="afii10085,afii10110" + g2="afii10085,afii10110" + k="-11" /> + <hkern g1="afii10085,afii10110" + g2="afii10072" + k="-15" /> + <hkern g1="afii10085,afii10110" + g2="afii10087" + k="-11" /> + <hkern g1="afii10085,afii10110" + g2="afii10065" + k="10" /> + <hkern g1="afii10085,afii10110" + g2="afii10078" + k="5" /> + <hkern g1="afii10085,afii10110" + g2="afii10102" + k="10" /> + <hkern g1="afii10085,afii10110" + g2="parenright,bracketright,braceright" + k="20" /> + <hkern g1="afii10085,afii10110" + g2="colon,semicolon" + k="11" /> + <hkern g1="afii10085,afii10110" + g2="comma,period,ellipsis" + k="63" /> + <hkern g1="afii10085,afii10110" + g2="hyphen,endash,emdash" + k="22" /> + <hkern g1="afii10085,afii10110" + g2="guillemotleft,guilsinglleft" + k="20" /> + <hkern g1="afii10067,afii10073" + g2="afii10066" + k="8" /> + <hkern g1="afii10067,afii10073" + g2="afii10089" + k="19" /> + <hkern g1="afii10067,afii10073" + g2="afii10099" + k="7" /> + <hkern g1="afii10067,afii10073" + g2="afii10077,afii10106" + k="-7" /> + <hkern g1="afii10067,afii10073" + g2="afii10084,afii10092" + k="16" /> + <hkern g1="afii10067,afii10073" + g2="afii10105" + k="14" /> + <hkern g1="afii10067,afii10073" + g2="afii10108" + k="6" /> + <hkern g1="afii10067,afii10073" + g2="afii10085,afii10110" + k="15" /> + <hkern g1="afii10067,afii10073" + g2="afii10087" + k="7" /> + <hkern g1="afii10067,afii10073" + g2="afii10065" + k="-4" /> + <hkern g1="afii10104" + g2="afii10089" + k="6" /> + <hkern g1="afii10104" + g2="afii10099" + k="-77" /> + <hkern g1="afii10104" + g2="afii10105" + k="-14" /> + <hkern g1="afii10104" + g2="afii10108" + k="-63" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10041" + k="16" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10021" + k="-7" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10051" + k="-9" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10058,afii10029" + k="13" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10060,afii10036,afii10044" + k="-10" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10057" + k="14" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10062,afii10037" + k="-7" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10024" + k="7" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10049" + k="14" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10089" + k="51" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10069" + k="-7" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10099" + k="-8" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10084,afii10092" + k="45" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10105" + k="-34" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10108" + k="-10" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10085,afii10110" + k="26" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10097" + k="14" /> + <hkern g1="colon,semicolon" + g2="afii10041" + k="9" /> + <hkern g1="colon,semicolon" + g2="afii10021" + k="-15" /> + <hkern g1="colon,semicolon" + g2="afii10051" + k="15" /> + <hkern g1="colon,semicolon" + g2="afii10089" + k="6" /> + <hkern g1="colon,semicolon" + g2="afii10069" + k="-15" /> + <hkern g1="colon,semicolon" + g2="afii10099" + k="6" /> + <hkern g1="colon,semicolon" + g2="afii10084,afii10092" + k="-33" /> + <hkern g1="colon,semicolon" + g2="afii10105" + k="12" /> + <hkern g1="colon,semicolon" + g2="afii10108" + k="5" /> + <hkern g1="colon,semicolon" + g2="afii10085,afii10110" + k="5" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10041" + k="21" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10021" + k="18" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10051" + k="55" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10058,afii10029" + k="14" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10060,afii10036,afii10044" + k="51" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10057" + k="22" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10062,afii10037" + k="46" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10024" + k="17" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10039" + k="38" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10049" + k="14" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10030" + k="8" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10089" + k="9" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10069" + k="17" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10099" + k="8" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10077,afii10106" + k="11" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10084,afii10092" + k="13" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10105" + k="10" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10085,afii10110" + k="14" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10097" + k="11" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10072" + k="19" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10087" + k="11" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10021" + k="-9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10051" + k="14" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10060,afii10036,afii10044" + k="10" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10062,afii10037" + k="6" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10039" + k="12" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10069" + k="-9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10099" + k="9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10105" + k="6" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10108" + k="6" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10041" + k="28" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10051" + k="39" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10060,afii10036,afii10044" + k="18" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10062,afii10037" + k="25" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10024" + k="13" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10049" + k="13" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10089" + k="7" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10069" + k="7" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10099" + k="13" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10084,afii10092" + k="-6" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10105" + k="16" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10108" + k="13" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10085,afii10110" + k="13" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10097" + k="12" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10072" + k="12" /> + <hkern g1="guillemotright,guilsinglright" + g2="afii10087" + k="16" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10051" + k="-37" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10038" + k="22" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10058,afii10029" + k="42" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10060,afii10036,afii10044" + k="-40" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10057" + k="87" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10053,afii10032,afii10035" + k="22" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10062,afii10037" + k="-19" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10017" + k="69" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10049" + k="24" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10069" + k="70" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10099" + k="-28" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10077,afii10106" + k="44" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10084,afii10092" + k="9" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10105" + k="14" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10108" + k="-27" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10085,afii10110" + k="12" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10097" + k="36" /> + <hkern g1="quoteright,quotedblright" + g2="afii10041" + k="9" /> + <hkern g1="quoteright,quotedblright" + g2="afii10021" + k="33" /> + <hkern g1="quoteright,quotedblright" + g2="afii10051" + k="-15" /> + <hkern g1="quoteright,quotedblright" + g2="afii10058,afii10029" + k="27" /> + <hkern g1="quoteright,quotedblright" + g2="afii10060,afii10036,afii10044" + k="-27" /> + <hkern g1="quoteright,quotedblright" + g2="afii10057" + k="44" /> + <hkern g1="quoteright,quotedblright" + g2="afii10062,afii10037" + k="-9" /> + <hkern g1="quoteright,quotedblright" + g2="afii10017" + k="47" /> + <hkern g1="quoteright,quotedblright" + g2="afii10089" + k="27" /> + <hkern g1="quoteright,quotedblright" + g2="afii10069" + k="41" /> + <hkern g1="quoteright,quotedblright" + g2="afii10099" + k="-12" /> + <hkern g1="quoteright,quotedblright" + g2="afii10084,afii10092" + k="-6" /> + <hkern g1="quoteright,quotedblright" + g2="afii10105" + k="15" /> + <hkern g1="quoteright,quotedblright" + g2="afii10108" + k="-12" /> + <hkern g1="quoteright,quotedblright" + g2="afii10085,afii10110" + k="9" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10041" + k="38" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10021" + k="5" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10051" + k="27" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10025,afii10047" + k="9" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10060,afii10036,afii10044" + k="17" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10057" + k="6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10062,afii10037" + k="15" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10024" + k="12" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10017" + k="12" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10054" + k="21" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10039" + k="21" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10049" + k="15" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10089" + k="9" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10069" + k="6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10099" + k="15" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10084,afii10092" + k="-18" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10105" + k="12" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10108" + k="12" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10085,afii10110" + k="15" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10097" + k="15" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10072" + k="15" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10087" + k="18" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10065" + k="4" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10078" + k="5" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10102" + k="6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10067,afii10068,afii10074,afii10075,afii10076,afii10079,afii10081,afii10082,afii10088,afii10090,afii10091,afii10093,afii10094,afii10096,afii10100,afii10104,afii10107,afii10109,afii10193,afii10098" + k="6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10103" + k="6" /> + </font> +</defs></svg> diff --git a/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.ttf b/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.ttf new file mode 100644 index 0000000..be46904 Binary files /dev/null and b/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.ttf differ diff --git a/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff b/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff new file mode 100644 index 0000000..1acd667 Binary files /dev/null and b/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff differ diff --git a/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff2 b/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff2 new file mode 100644 index 0000000..483a722 Binary files /dev/null and b/site/css/font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff2 differ diff --git a/site/css/font/65482afbeb61af43c403d0fec1fdb679.eot b/site/css/font/65482afbeb61af43c403d0fec1fdb679.eot new file mode 100644 index 0000000..616786c Binary files /dev/null and b/site/css/font/65482afbeb61af43c403d0fec1fdb679.eot differ diff --git a/site/css/font/65482afbeb61af43c403d0fec1fdb679.svg b/site/css/font/65482afbeb61af43c403d0fec1fdb679.svg new file mode 100644 index 0000000..11ab36d --- /dev/null +++ b/site/css/font/65482afbeb61af43c403d0fec1fdb679.svg @@ -0,0 +1,4971 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<svg> +<metadata> +Created by FontForge 20120731 at Fri Jun 15 10:41:27 2018 + By www +Digitised data (c) 2004 Monotype Imaging. All Rights Reserved. Neo Sans is designed by Sebastian Lester. +</metadata> +<defs> +<font id="NeoSansPro-Bold" horiz-adv-x="645" > + <font-face + font-family="Neo Sans Pro" + font-weight="700" + font-stretch="normal" + units-per-em="1000" + panose-1="2 11 8 4 3 5 4 4 2 4" + ascent="765" + descent="-235" + x-height="573" + cap-height="743" + bbox="-93 -216 1533 1012" + underline-thickness="80" + underline-position="1" + unicode-range="U+0020-FB04" + /> +<missing-glyph horiz-adv-x="500" +d="M12 665h475v-665h-475v665zM250 375l161 243h-323zM60 91l7 10t18 27t25.5 39t29.5 45q35 54 81 121l-161 242v-484zM278 333l162 -243v485zM250 290l-162 -242h323z" /> + <glyph glyph-name="fi" unicode="fi" horiz-adv-x="702" +d="M394 670q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h327q8 0 14 -6.5t6 -14.5v-531q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v431h-185v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5 +t14.5 6.5h80v32q0 53 11 86.5t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78zM642 658q0 -8 -6.5 -14t-14.5 -6h-127q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h127q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="fl" unicode="fl" horiz-adv-x="698" +d="M638 21q0 -8 -5.5 -14.5t-13.5 -6.5h-122q-8 0 -14.5 6.5t-6.5 14.5v632h-133q-18 0 -28.5 -1.5t-15.5 -7t-6.5 -14.5t-1.5 -24v-33h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5 +v66q0 8 6.5 14.5t14.5 6.5h80v42q0 54 12 85.5t36 48.5t60 22t84 5q21 0 48 -0.5t52.5 -2t47 -3t32.5 -3.5h119q8 0 13.5 -6t5.5 -14v-726v0z" /> + <glyph glyph-name="f_f" unicode="ff" horiz-adv-x="771" +d="M741 670q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432h-184v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66 +q0 8 6.5 14.5t14.5 6.5h80v32q0 53 11 86.5t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h184v32q0 53 11 86.5t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78v0z" /> + <glyph glyph-name="f_f_i" unicode="ffi" horiz-adv-x="1049" +d="M989 658q0 -8 -6.5 -14t-14.5 -6h-127q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h127q8 0 14.5 -6t6.5 -14v-93zM475 605q0 53 11 86.5t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h327q8 0 14 -6.5t6 -14.5 +v-531q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v431h-185v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432h-184v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v32q0 53 11 86.5t32 52 +t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h184v32z" /> + <glyph glyph-name="f_f_l" unicode="ffl" horiz-adv-x="1045" +d="M394 670q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h184v42q0 54 12 85.5t36 48.5t60 22t84 5q21 0 48 -0.5t52.5 -2t47 -3t32.5 -3.5h119q8 0 13.5 -6t5.5 -14v-726q0 -8 -5.5 -14.5t-13.5 -6.5h-122q-8 0 -14.5 6.5t-6.5 14.5v632h-133q-18 0 -28.5 -1.5t-15.5 -7 +t-6.5 -14.5t-1.5 -24v-33h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432h-184v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v32q0 53 11 86.5 +t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78v0z" /> + <glyph glyph-name="f_b" unicode="fb" horiz-adv-x="1021" +d="M343 653q-18 0 -28.5 -1.5t-15.5 -7t-6.5 -14.5t-1.5 -24v-33h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v42q0 54 12 85.5t36 48.5t60 22t84 5 +q21 0 48 -0.5t52.5 -2t47 -3t32.5 -3.5h119q8 0 13.5 -6t5.5 -14v-173q22 3 44.5 5t37.5 2q127 0 189 -69t62 -187v-78q0 -122 -64.5 -189t-186.5 -67q-58 0 -114 7.5t-99 18.5q-20 5 -25.5 11t-5.5 18v607h-133zM809 325q0 26 -4 48.5t-14 39t-27 25.5t-44 9 +q-18 0 -41 -1.5t-41 -3.5v-312q14 -2 35.5 -4t46.5 -2q27 0 44 9t27 25.5t14 39t4 49.5v78z" /> + <glyph glyph-name="f_f_b" unicode="ffb" horiz-adv-x="1368" +d="M394 670q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h184v42q0 54 12 85.5t36 48.5t60 22t84 5q21 0 48 -0.5t52.5 -2t47 -3t32.5 -3.5h119q8 0 13.5 -6t5.5 -14v-173q22 3 44.5 5t37.5 2q127 0 189 -69t62 -187v-78q0 -122 -64.5 -189t-186.5 -67q-58 0 -114 7.5 +t-99 18.5q-20 5 -25.5 11t-5.5 18v607h-133q-18 0 -28.5 -1.5t-15.5 -7t-6.5 -14.5t-1.5 -24v-33h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432h-184v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13 +q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v32q0 53 11 86.5t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78zM1156 325q0 26 -4 48.5t-14 39t-27 25.5t-44 9q-18 0 -41 -1.5t-41 -3.5v-312q14 -2 35.5 -4t46.5 -2q27 0 44 9t27 25.5t14 39t4 49.5 +v78z" /> + <glyph glyph-name="f_f_h" unicode="ffh" horiz-adv-x="1374" +d="M474 573v42q0 54 12 85.5t36 48.5t60 22t84 5q21 0 48 -0.5t52.5 -2t47 -3t32.5 -3.5h119q8 0 13.5 -6t5.5 -14v-211q38 25 73 35t80 10q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29 +t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v632h-133q-18 0 -28 -1.5t-15.5 -7t-6.5 -14.5t-1 -24v-33h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432 +h-184v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v32q0 53 11 86.5t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h183z" /> + <glyph glyph-name="f_f_k" unicode="ffk" horiz-adv-x="1350" +d="M475 615q0 54 12 85.5t36 48.5t60 22t84 5q21 0 48 -0.5t52.5 -2t47 -3t32.5 -3.5h119q8 0 13 -6t5 -14v-418l152 229q6 9 13 12t13 3h143q15 0 15 -11q0 -5 -4 -10l-186 -253l185 -278q2 -2 2 -8q0 -13 -13 -13h-151q-8 0 -13.5 2.5t-11.5 11.5l-144 235v-228 +q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v632h-132q-18 0 -28 -1.5t-15.5 -7t-6.5 -14.5t-1 -24v-33h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14.5 6t-6.5 14v432h-184v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6 +t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v32q0 53 11 86.5t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h184v42z" /> + <glyph glyph-name="f_h" unicode="fh" horiz-adv-x="1027" +d="M342 653q-18 0 -28 -1.5t-15.5 -7t-6.5 -14.5t-1 -24v-33h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h79v42q0 54 12 85.5t36 48.5t60 22t84 5 +q21 0 48 -0.5t52.5 -2t47 -3t32.5 -3.5h119q8 0 13.5 -6t5.5 -14v-211q38 25 73 35t80 10q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394 +q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v632h-133z" /> + <glyph glyph-name="f_j" unicode="fj" horiz-adv-x="714" +d="M650 -32q0 -50 -11 -83t-31.5 -52.5t-50 -27.5t-65.5 -8q-39 0 -80 7q-20 3 -20 20v79q0 18 21 18h44q21 0 26 10.5t5 36.5v484h-197v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v32q0 53 11 86.5 +t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h340q8 0 13.5 -6.5t5.5 -14.5v-584zM654 658q0 -8 -6.5 -14t-14.5 -6h-129q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h129q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="f_f_j" unicode="ffj" horiz-adv-x="1061" +d="M997 -32q0 -50 -11 -83t-31.5 -52.5t-50 -27.5t-65.5 -8q-39 0 -80 7q-20 3 -20 20v79q0 18 21 18h44q21 0 26 10.5t5 36.5v484h-197v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432h-184v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5 +t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v32q0 53 11 86.5t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h184v32q0 53 11 86.5t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78q0 -17 -21 -17h-49 +q-23 0 -28 -8.5t-5 -38.5v-33h340q8 0 13.5 -6.5t5.5 -14.5v-584zM1001 658q0 -8 -6.5 -14t-14.5 -6h-129q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h129q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="f_k" unicode="fk" horiz-adv-x="1002" +d="M636 329l152 229q6 9 13 12t13 3h143q15 0 15 -11q0 -5 -4 -10l-186 -253l185 -278q2 -2 2 -8q0 -13 -13 -13h-151q-8 0 -13.5 2.5t-11.5 11.5l-144 235v-228q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v632h-132q-18 0 -28 -1.5t-15.5 -7t-6.5 -14.5t-1 -24 +v-33h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h79v42q0 54 12 85.5t36 48.5t60 22t84 5q21 0 48 -0.5t52.5 -2t47 -3t32.5 -3.5h119q8 0 13 -6t5 -14 +v-418z" /> + <glyph glyph-name=".notdef" horiz-adv-x="500" +d="M12 665h475v-665h-475v665zM250 375l161 243h-323zM60 91l7 10t18 27t25.5 39t29.5 45q35 54 81 121l-161 242v-484zM278 333l162 -243v485zM250 290l-162 -242h323z" /> + <glyph glyph-name=".null" horiz-adv-x="0" + /> + <glyph glyph-name="nonmarkingreturn" horiz-adv-x="260" + /> + <glyph glyph-name="space" unicode=" " horiz-adv-x="260" + /> + <glyph glyph-name="numbersign" unicode="#" horiz-adv-x="699" +d="M651 537l-12 -76q-2 -11 -15 -11h-85l-15 -161h84q6 0 12 -4t6 -10v-2l-11 -71q-1 -5 -6 -10t-10 -5h-84l-14 -168q-1 -8 -5.5 -13.5t-12.5 -5.5h-102q-8 0 -12 5t-4 12v2l14 168h-113l-15 -168q-1 -8 -5.5 -13.5t-12.5 -5.5h-103q-7 0 -11.5 5t-4.5 12v2l14 168h-85 +q-14 0 -14 13v2l12 75q2 12 14 12h83l14 161h-85q-14 0 -14 12v2l12 77q1 5 6 8t10 3h80l15 172q1 8 6 13.5t13 5.5h103q7 0 11 -5t4 -12v-2l-15 -172h113l16 172q1 8 6 13.5t13 5.5h102q8 0 11.5 -5t3.5 -12v-2l-16 -172h87q6 0 11.5 -3.5t5.5 -9.5v-2zM290 450l-15 -161 +h113l15 161h-113z" /> + <glyph glyph-name="dollar" unicode="$" +d="M575 210q0 -33 -10 -66.5t-32 -62t-57.5 -50.5t-86.5 -32v-94q0 -8 -6 -14t-14 -6h-110q-8 0 -14 6t-6 14v89q-38 2 -69 7t-58 12q-8 2 -13.5 7t-5.5 13v98q0 8 5.5 13.5t13.5 5.5h2q15 -2 40 -4t52 -4t53 -3t44 -1q52 0 71 17.5t19 52.5q0 22 -13.5 37.5t-52.5 38.5 +l-138 82q-35 21 -58 43t-36.5 46t-19 49.5t-5.5 52.5q0 34 8.5 64.5t28.5 55.5t52.5 42.5t79.5 25.5v86q0 8 6 14t14 6h110q8 0 14 -6t6 -14v-82q44 -3 85 -8.5t61 -10.5q8 -2 13.5 -6.5t5.5 -12.5v-99q0 -8 -5 -13t-13 -5h-2q-47 5 -104 8t-108 3q-42 0 -59.5 -12.5 +t-17.5 -40.5q0 -9 3 -17t10.5 -16.5t20.5 -17t33 -19.5l127 -69q77 -42 106.5 -92t29.5 -111z" /> + <glyph glyph-name="percent" unicode="%" horiz-adv-x="839" +d="M801 166q0 -88 -38 -130t-109 -42t-109.5 42t-38.5 130v75q0 88 38.5 130t109.5 42t109 -42t38 -130v-75zM698 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8zM334 502q0 -88 -38.5 -130 +t-109.5 -42t-109.5 42t-38.5 130v75q0 88 38.5 129.5t109.5 41.5t109.5 -41.5t38.5 -129.5v-75zM701 241q0 51 -12.5 68t-34.5 17t-35 -17t-13 -68v-75q0 -51 13 -68t35 -17t34.5 17t12.5 68v75zM233 577q0 51 -12.5 68t-34.5 17t-35 -17t-13 -68v-75q0 -51 13 -68.5 +t35 -17.5t34.5 17.5t12.5 68.5v75z" /> + <glyph glyph-name="ampersand" unicode="&#x26;" horiz-adv-x="732" +d="M714 12q0 -12 -12 -12h-142q-6 0 -9 1.5t-8 6.5l-30 32q-38 -23 -84 -36t-102 -13q-59 0 -109.5 10.5t-88 34t-58.5 61t-21 90.5v9q0 65 35.5 110.5t97.5 83.5l-8 9q-27 31 -44.5 55t-27.5 44.5t-13.5 37.5t-3.5 34v9q0 37 14 68.5t43 54.5t73.5 36.5t106.5 13.5 +q55 0 98 -12.5t71.5 -35.5t43.5 -55t15 -70v-9q0 -35 -10.5 -62t-28.5 -49t-42 -40.5t-51 -35.5l-31 -20l130 -137q8 20 12.5 48.5t4.5 75.5v8q0 8 5 14t13 6h93q8 0 13.5 -6t5.5 -14v-8q0 -56 -11.5 -110t-46.5 -108l102 -108q5 -5 5 -12zM402 579q0 28 -19.5 44.5 +t-59.5 16.5q-44 0 -66.5 -16.5t-22.5 -44.5v-9q0 -11 1.5 -21t7 -21.5t16.5 -26.5t31 -34l8 -8l26 16q23 14 38 25.5t24 22t12.5 22t3.5 25.5v9zM274 293q-36 -22 -47 -45t-11 -52v-9q0 -40 30 -60t81 -20q59 0 100 23z" /> + <glyph glyph-name="quoteright" unicode="&#x2019;" horiz-adv-x="253" +d="M230 756q0 -2 -2 -8l-75 -219q-4 -10 -7.5 -14.5t-11.5 -4.5h-101q-9 0 -9 10v4.5t1 4.5l54 219q4 19 20 19h119q12 0 12 -11z" /> + <glyph glyph-name="parenleft" unicode="(" horiz-adv-x="361" +d="M328 -184q0 -10 -12 -10h-100q-11 0 -19.5 3t-14.5 11q-32 45 -56.5 92.5t-41 101.5t-25 116t-8.5 135v18q0 145 33.5 251t97.5 195q6 8 14.5 11t19.5 3h100q12 0 12 -10q0 -6 -5 -16q-21 -38 -40.5 -83.5t-34.5 -99.5t-24 -116.5t-9 -134.5v-18q0 -72 9 -134.5t24 -116 +t34.5 -99t40.5 -83.5q5 -10 5 -16z" /> + <glyph glyph-name="parenright" unicode=")" horiz-adv-x="361" +d="M310 265q0 -73 -8.5 -135t-25 -116t-41 -101.5t-56.5 -92.5q-6 -8 -14.5 -11t-19.5 -3h-100q-12 0 -12 10q0 6 5 16q21 38 40.5 83.5t34.5 99t24 116t9 134.5v18q0 72 -9 134.5t-24 116.5t-34.5 99.5t-40.5 83.5q-5 10 -5 16q0 10 12 10h100q11 0 19.5 -3t14.5 -11 +q64 -89 97.5 -195t33.5 -251v-18v0z" /> + <glyph glyph-name="asterisk" unicode="*" horiz-adv-x="479" +d="M445 570q0 -10 -15 -15l-115 -34l72 -98q5 -8 5 -14q0 -8 -6 -12l-52 -38q-5 -3 -9 -3q-9 0 -16 10l-69 100l-69 -100q-7 -10 -16 -10q-5 0 -9 3l-53 38q-7 4 -7 12q0 3 2 6.5t4 7.5l72 98l-114 34q-16 5 -16 16q0 3 1 5l20 63q3 10 13 10q3 0 5.5 -0.5t5.5 -1.5l115 -38 +l-3 119q0 8 4 14.5t12 6.5h66q8 0 11.5 -6.5t3.5 -14.5l-1 -119l113 38q3 1 5.5 1.5t5.5 0.5q10 0 13 -10l20 -63q1 -2 1 -6z" /> + <glyph glyph-name="plus" unicode="+" +d="M573 346q0 -8 -6 -12t-14 -4h-170v-169q0 -8 -4 -14t-12 -6h-90q-8 0 -12 6t-4 14v169h-169q-8 0 -14 4t-6 12v90q0 8 6 12t14 4h169v170q0 8 4 14t12 6h90q8 0 12 -6t4 -14v-170h170q8 0 14 -4t6 -12v-90v0z" /> + <glyph glyph-name="comma" unicode="," horiz-adv-x="274" +d="M231 153q0 -3 -2 -7l-96 -224q-4 -8 -7.5 -14t-11.5 -6h-88q-7 0 -12 4.5t-5 10.5q0 2 0.5 2.5t0.5 2.5l64 224q5 19 20 19h122q15 0 15 -12z" /> + <glyph glyph-name="hyphen" unicode="-" horiz-adv-x="302" +d="M268 264q0 -8 -6 -13t-14 -5h-194q-8 0 -14 5t-6 13v80q0 8 6 13.5t14 5.5h194q8 0 14 -5.5t6 -13.5v-80v0z" /> + <glyph glyph-name="period" unicode="." horiz-adv-x="274" +d="M216 20q0 -8 -6 -14t-14 -6h-117q-8 0 -14.5 6t-6.5 14v126q0 8 6.5 13.5t14.5 5.5h117q8 0 14 -5.5t6 -13.5v-126v0z" /> + <glyph glyph-name="slash" unicode="/" horiz-adv-x="405" +d="M391 727q0 -1 -0.5 -1.5t-0.5 -2.5l-211 -702q-2 -8 -7 -14.5t-13 -6.5h-127q-8 0 -13.5 5t-5.5 12q0 1 0.5 2t0.5 2l212 702q2 8 7 14t13 6h127q7 0 12.5 -4.5t5.5 -11.5z" /> + <glyph glyph-name="zero" unicode="0" +d="M592 328q0 -90 -18.5 -154t-53 -104.5t-84.5 -59.5t-114 -19t-114 19t-84.5 59.5t-52.5 104.5t-18 154v86q0 90 18 154t52.5 105t84.5 60t114 19t114 -19t84.5 -60t53 -105t18.5 -154v-86zM421 414q0 59 -7.5 97t-21 60t-31.5 30.5t-39 8.5t-39 -8.5t-31 -30.5t-20.5 -60 +t-7.5 -97v-86q0 -59 7.5 -97t20.5 -60t31 -30t39 -8t39 8t31.5 30t21 60t7.5 97v86z" /> + <glyph glyph-name="one" unicode="1" +d="M254 142v430l-130 -56q-8 -3 -12 -3q-11 0 -11 13v114q0 10 10 14l181 85q9 4 23 4h90q19 0 19 -19v-582h133q8 0 14 -5.5t6 -13.5v-103q0 -8 -6 -14t-14 -6h-436q-8 0 -14 6t-6 14v103q0 8 6 13.5t14 5.5h133z" /> + <glyph glyph-name="two" unicode="2" +d="M570 561q0 -61 -29.5 -105.5t-85.5 -82.5l-85 -57q-32 -21 -58.5 -40.5t-46 -39.5t-30 -42t-10.5 -48v-4h316q8 0 14 -5.5t6 -13.5v-103q0 -8 -6 -14t-14 -6h-445q-8 0 -14 6t-6 14v102q0 83 39.5 148t96.5 106l92 65q33 23 53 37.5t31 26t14.5 23t3.5 29.5 +q0 32 -22.5 46t-83.5 14q-46 0 -98.5 -4t-98.5 -9h-2q-8 0 -13 6t-5 14v78q0 8 5.5 12.5t13.5 6.5q42 13 99.5 22t113.5 9q138 0 196.5 -47.5t58.5 -143.5z" /> + <glyph glyph-name="three" unicode="3" +d="M566 212q0 -57 -19 -99t-53.5 -69t-82.5 -40t-106 -13q-59 0 -113.5 8t-93.5 20q-8 2 -13.5 6.5t-5.5 12.5v80q0 8 5 13t13 5h2q53 -5 105.5 -7t93.5 -2q54 0 76.5 21.5t22.5 63.5v18q0 17 -3.5 32.5t-12.5 27.5t-25 19t-40 7h-176q-8 0 -13.5 6t-5.5 14v85q0 19 19 19 +h172q24 0 40.5 7.5t26.5 19.5t14 27.5t4 32.5v14q0 34 -20.5 54.5t-78.5 20.5q-26 0 -49.5 -1t-47 -2.5t-48 -3.5t-52.5 -5h-2q-8 0 -13 5t-5 13v80q0 8 6 12.5t14 6.5q39 12 92 21.5t112 9.5q61 0 109.5 -11t82 -35.5t51.5 -63.5t18 -95v-14q0 -44 -24.5 -87t-64.5 -66 +q42 -22 65.5 -61.5t23.5 -88.5v-18v0z" /> + <glyph glyph-name="four" unicode="4" +d="M606 187q0 -8 -6 -14t-14 -6h-66v-147q0 -8 -5.5 -14t-13.5 -6h-133q-8 0 -13.5 6t-5.5 14v147h-289q-8 0 -14 6t-6 14v97q0 15 11 31l316 414q5 7 11 10.5t15 3.5h107q8 0 14 -6t6 -14v-424h66q8 0 14 -6t6 -14v-92zM354 519q0 6 -4 6q-1 0 -3 -2l-157 -214q-2 -2 -2 -6 +t6 -4h160v220z" /> + <glyph glyph-name="five" unicode="5" +d="M566 236q0 -119 -69 -182t-201 -63q-48 0 -100.5 7.5t-96.5 21.5q-8 2 -14 6.5t-6 15.5v79q0 8 5 13t13 5h2q24 -3 49.5 -5t50 -3.5t45.5 -2.5t35 -1q36 0 58 7.5t35 21.5t17.5 34t4.5 46v8q0 25 -6.5 42.5t-23 28.5t-43.5 16t-69 5h-155q-6 0 -10 4.5t-4 9.5v1l31 373 +q1 8 6.5 13.5t13.5 5.5h389q8 0 14 -5.5t6 -13.5v-100q0 -8 -6 -13.5t-14 -5.5h-272l-12 -138h29q65 0 119.5 -10.5t94.5 -36t62 -68.5t22 -108v-8v0z" /> + <glyph glyph-name="six" unicode="6" +d="M589 245q0 -57 -17 -104t-50.5 -80t-83 -51.5t-113.5 -18.5q-60 0 -109.5 18t-85 54.5t-54.5 91.5t-19 130v153q0 85 19.5 144.5t55.5 97t87.5 55t115.5 17.5q68 0 117 -6t80 -14q22 -6 22 -22v-87q0 -21 -18 -21h-5q-18 3 -40.5 5.5t-46.5 4.5t-48.5 3t-46.5 1 +q-66 0 -95.5 -31.5t-29.5 -114.5v-7q20 4 53 8t65 4q51 0 95.5 -11.5t78.5 -38t53.5 -69t19.5 -104.5v-7zM422 252q0 31 -8.5 51t-23 32t-34 16.5t-41.5 4.5q-10 0 -22 -1t-24.5 -2.5t-24 -3.5t-20.5 -3v-61q0 -51 7.5 -83t21 -50t32 -24.5t40.5 -6.5q21 0 38.5 5.5 +t30.5 19.5t20.5 38t7.5 61v7z" /> + <glyph glyph-name="seven" unicode="7" +d="M566 637q0 -10 -4.5 -21t-11.5 -25l-263 -572q-9 -19 -25 -19h-137q-18 0 -18 12q0 5 3 11l272 571q1 2 1 5q0 6 -7 6h-277q-8 0 -14.5 5.5t-6.5 13.5v100q0 8 6.5 13.5t14.5 5.5h433q14 0 24 -9.5t10 -23.5v-73v0z" /> + <glyph glyph-name="eight" unicode="8" +d="M593 213q0 -54 -19.5 -95.5t-54.5 -69.5t-83.5 -42.5t-107.5 -14.5h-11q-59 0 -107.5 14.5t-83.5 42.5t-54.5 69.5t-19.5 95.5v13q0 50 23.5 91t61.5 69q-81 55 -81 150v11q0 52 18.5 91t52.5 64t82.5 37.5t107.5 12.5h11q59 0 107.5 -12.5t83 -37.5t53 -64t18.5 -91v-11 +q0 -94 -82 -150q38 -28 61.5 -69t23.5 -91v-13zM429 536q0 40 -23 65.5t-78 25.5h-11q-55 0 -78 -25.5t-23 -65.5v-5q0 -38 22 -62.5t69 -24.5h31q47 0 69 24.5t22 62.5v5zM428 228q0 17 -5 34.5t-15.5 31t-27.5 22t-42 8.5h-31q-25 0 -42 -8.5t-27.5 -22t-15.5 -31 +t-5 -34.5v-10q0 -44 25 -72.5t75 -28.5h11q50 0 75 28.5t25 72.5v10z" /> + <glyph glyph-name="nine" unicode="9" +d="M589 305q0 -85 -19.5 -144.5t-55.5 -97t-87.5 -55t-115.5 -17.5q-68 0 -117 6t-80 14q-22 5 -22 22v87q0 21 18 21h5q18 -3 40.5 -5.5t46.5 -4.5t48.5 -3t46.5 -1q66 0 95.5 31.5t29.5 114.5v7q-20 -4 -53 -8t-65 -4q-51 0 -95.5 11.5t-78.5 37.5t-53.5 69t-19.5 105v7 +q0 57 17 104t50.5 80t82.5 51.5t114 18.5q60 0 109.5 -18t85 -54.5t54.5 -91.5t19 -130v-153zM422 458q0 51 -7.5 83t-21 50t-32 24.5t-40.5 6.5q-21 0 -38.5 -5.5t-30.5 -19.5t-20.5 -38t-7.5 -61v-7q0 -31 8.5 -51t23 -32t34 -16.5t41.5 -4.5q10 0 22 1t24.5 2.5t24 3 +t20.5 3.5v61z" /> + <glyph glyph-name="colon" unicode=":" horiz-adv-x="275" +d="M216 402q0 -8 -6 -13.5t-14 -5.5h-117q-8 0 -14.5 5.5t-6.5 13.5v126q0 8 6.5 14t14.5 6h117q8 0 14 -6t6 -14v-126zM216 20q0 -8 -6 -14t-14 -6h-117q-8 0 -14.5 6t-6.5 14v126q0 8 6.5 13.5t14.5 5.5h117q8 0 14 -5.5t6 -13.5v-126z" /> + <glyph glyph-name="semicolon" unicode=";" horiz-adv-x="275" +d="M216 402q0 -8 -6.5 -13.5t-14.5 -5.5h-117q-8 0 -14 5.5t-6 13.5v126q0 8 6 14t14 6h117q8 0 14.5 -6t6.5 -14v-126zM216 151q0 -3 -2 -7l-95 -224q-4 -8 -8 -14t-12 -6h-88q-7 0 -12 4.5t-5 10.5q0 2 0.5 2.5t0.5 2.5l64 224q5 19 20 19h122q15 0 15 -12z" /> + <glyph glyph-name="less" unicode="&#x3c;" +d="M536 150q0 -13 -12 -13h-139q-8 0 -13.5 3t-10.5 8l-233 207q-20 17 -20 36t20 36l233 207q5 5 10.5 8t13.5 3h139q12 0 12 -13q0 -6 -6 -12l-259 -229l259 -229q6 -6 6 -12z" /> + <glyph glyph-name="equal" unicode="=" +d="M552 474q0 -8 -6 -12t-14 -4h-419q-8 0 -14 4t-6 12v90q0 8 6 12t14 4h419q8 0 14 -4t6 -12v-90zM552 218q0 -8 -6 -12t-14 -4h-419q-8 0 -14 4t-6 12v90q0 8 6 12t14 4h419q8 0 14 -4t6 -12v-90z" /> + <glyph glyph-name="greater" unicode="&#x3e;" +d="M536 391q0 -11 -5 -19t-16 -17l-232 -207q-5 -5 -10.5 -8t-13.5 -3h-139q-12 0 -12 13q0 6 6 12l259 229l-259 229q-6 6 -6 12q0 13 12 13h139q8 0 13.5 -3t10.5 -8l232 -207q11 -9 16 -17t5 -19z" /> + <glyph glyph-name="question" unicode="?" horiz-adv-x="479" +d="M431 580q0 -34 -17.5 -68.5t-59.5 -88.5l-45 -58q-17 -22 -28 -36t-17 -23.5t-8.5 -16.5t-2.5 -15v-28q0 -9 -8 -14t-16 -5h-100q-8 0 -13.5 6t-5.5 14v27q0 19 1 35.5t5.5 31.5t13 30.5t22.5 34.5l48 63q28 37 37 58t9 43v10q0 17 -11.5 27t-37.5 10q-39 0 -73 -3 +t-70 -8h-3q-17 0 -17 21v89q0 11 3.5 17t14.5 9q32 10 75 15.5t85 5.5q52 0 92.5 -8.5t68.5 -28t43 -51t15 -78.5v-17zM262 19q0 -8 -6 -13.5t-14 -5.5h-118q-8 0 -14 5.5t-6 13.5v126q0 8 6 14t14 6h118q8 0 14 -6t6 -14v-126z" /> + <glyph glyph-name="at" unicode="@" horiz-adv-x="774" +d="M741 361q0 -90 -27.5 -150.5t-76.5 -97t-117.5 -52t-149.5 -15.5q-38 0 -70 9t-55 27t-36 45.5t-13 63.5q0 5 0.5 9t0.5 9l9 116q7 88 60.5 127.5t137.5 39.5q32 0 66.5 -4t66.5 -11q24 -5 24 -27v-4l-28 -299q36 6 60 24t39 46t21.5 64.5t6.5 79.5q0 45 -14 86.5 +t-43.5 73t-74.5 50.5t-107 19q-132 0 -205 -63.5t-84 -182.5l-15 -160q-1 -9 -1.5 -17.5t-0.5 -16.5q0 -44 15 -80t46 -62.5t78 -41t110 -14.5q45 0 83 4t64 4h1h4q8 0 8 -10v-39q0 -12 -12 -13q-26 -3 -63.5 -6.5t-84.5 -3.5q-72 0 -132.5 17t-104.5 50.5t-68.5 83 +t-24.5 113.5v3v14t1 15l16 165q7 72 35 129.5t75 98t112.5 62.5t148.5 22q81 0 140.5 -25t99.5 -67t59.5 -96t19.5 -112zM442 392q-28 5 -51 5q-36 0 -51 -16.5t-20 -59.5l-11 -111q-1 -5 -1 -9v-8q0 -29 15.5 -40.5t53.5 -11.5h21.5t20.5 1z" /> + <glyph glyph-name="A" unicode="A" horiz-adv-x="669" +d="M650 16q0 -16 -17 -16h-140q-8 0 -13 5t-7 13l-36 164h-205l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2zM348 595q-2 8 -4 11.5 +t-9 3.5q-11 0 -14 -15l-61 -276h149z" /> + <glyph glyph-name="B" unicode="B" horiz-adv-x="669" +d="M623 215q0 -66 -25 -109.5t-67.5 -69t-100 -35.5t-122.5 -10q-25 0 -51 1t-50.5 2.5t-45.5 3.5t-36 5q-30 5 -42.5 18t-12.5 47v608q0 34 12 47t41 18q13 2 33.5 4t45 3.5t50.5 2.5t50 1q71 0 129 -10.5t99.5 -34.5t64.5 -64t23 -100v-18q0 -49 -22 -88t-62 -59 +q40 -20 64.5 -58t24.5 -90v-15zM453 532q0 41 -30.5 60.5t-107.5 19.5h-16.5h-22t-22 -0.5t-15.5 -0.5v-173h112q30 0 49.5 6.5t31 17t16.5 25t5 30.5v15zM457 230q0 36 -23 62.5t-83 26.5h-112v-187h17.5t24 -0.5t24 -0.5h16.5q77 0 106.5 23t29.5 65v11z" /> + <glyph glyph-name="C" unicode="C" horiz-adv-x="561" +d="M520 31q0 -11 -5.5 -15.5t-16.5 -7.5q-16 -5 -56 -11t-93 -6q-57 0 -110.5 16t-94.5 53.5t-66 98.5t-25 150v126q0 89 25 150t66 98t94.5 53t110.5 16q53 0 93 -6t56 -11q11 -3 16.5 -7t5.5 -15v-97q0 -20 -19 -20h-3q-29 2 -67.5 5t-80.5 3q-26 0 -48.5 -7.5t-39.5 -27 +t-26.5 -52t-9.5 -82.5v-126q0 -50 9.5 -82.5t26.5 -52t39.5 -27t48.5 -7.5q42 0 80.5 3t67.5 5h3q19 0 19 -20v-97v0z" /> + <glyph glyph-name="D" unicode="D" horiz-adv-x="682" +d="M631 307q0 -79 -22 -138.5t-63 -99t-100 -59t-134 -19.5q-31 0 -62.5 1.5t-60 3.5t-52 4.5t-38.5 5.5q-14 2 -21.5 10t-7.5 25v661q0 17 7.5 25t21.5 10q15 3 38.5 5.5t52 4.5t60 3.5t62.5 1.5q75 0 134 -19.5t100 -59t63 -99t22 -138.5v-129zM460 436q0 51 -10.5 84 +t-30 52.5t-46.5 27t-61 7.5q-19 0 -39.5 -0.5t-31.5 -1.5v-467q11 -1 31.5 -1.5t39.5 -0.5q34 0 61 7.5t46.5 27t30 52.5t10.5 84v129z" /> + <glyph glyph-name="E" unicode="E" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259 +q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93v0z" /> + <glyph glyph-name="F" unicode="F" horiz-adv-x="581" +d="M524 625q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-90h259q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-292q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v517q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20 +v-93v0z" /> + <glyph glyph-name="G" unicode="G" +d="M580 608q0 -8 -4 -10.5t-11 -2.5h-3l-90 5t-118 3q-30 0 -54.5 -8t-41.5 -27.5t-26 -52.5t-9 -82v-125q0 -52 10.5 -85t27 -52t36.5 -26t38 -7q41 0 77 3v230q0 8 5.5 14t13.5 6h128q8 0 14 -6t6 -14v-336q0 -19 -20 -23q-41 -8 -95 -14.5t-129 -6.5q-28 0 -60.5 6 +t-64 20t-60.5 38t-51.5 59t-35.5 83.5t-13 111.5v124q0 96 27 157.5t70.5 97.5t98 50t108.5 14q75 0 128 -8.5t81 -14.5q17 -3 17 -15v-106v0z" /> + <glyph glyph-name="H" unicode="H" horiz-adv-x="729" +d="M659 20q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v289h-247v-289q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-266h247v266q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="I" unicode="I" horiz-adv-x="311" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704v0z" /> + <glyph glyph-name="J" unicode="J" horiz-adv-x="311" +d="M241 -6q0 -51 -14 -84.5t-38 -53t-56.5 -27.5t-70.5 -8q-17 0 -30.5 1t-33.5 3q-15 2 -15 17v102q0 5 3 9.5t8 4.5h50q17 0 21.5 8.5t4.5 27.5v730q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-730v0z" /> + <glyph glyph-name="K" unicode="K" horiz-adv-x="678" +d="M652 732q0 -6 -5 -14l-238 -338l239 -359q4 -5 4 -11q0 -10 -14 -10h-172q-9 0 -13.5 4t-8.5 10l-203 330v-324q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-318l220 325q7 12 22 12h153q16 0 16 -11z" /> + <glyph glyph-name="L" unicode="L" horiz-adv-x="519" +d="M497 25q0 -17 -20 -21q-12 -3 -32 -5t-42.5 -4t-45.5 -3t-43 -1q-48 0 -92.5 8t-78 31t-53.5 65.5t-20 110.5v517q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-517q0 -39 14.5 -53.5t49.5 -14.5h172q8 0 14 -6t6 -14v-93v0z" /> + <glyph glyph-name="M" unicode="M" horiz-adv-x="816" +d="M746 14q0 -8 -5.5 -11t-11.5 -3h-132q-7 0 -11.5 6t-4.5 14v417q0 8 -5 8q-4 0 -8 -7l-90 -165q-10 -17 -30 -17h-80q-20 0 -30 17l-90 165q-4 7 -8 7q-5 0 -5 -8v-417q0 -8 -4.5 -14t-11.5 -6h-132q-6 0 -11.5 3t-5.5 11v695q0 16 10 25t26 9h94q30 0 44 -27l153 -285 +q6 -13 11 -13q4 0 11 13l153 285q14 27 44 27h94q16 0 26 -9.5t10 -25.5v-694v0z" /> + <glyph glyph-name="N" unicode="N" horiz-adv-x="729" +d="M659 38q0 -16 -11.5 -27t-27.5 -11h-98q-16 0 -28 5.5t-24 25.5l-228 394q-5 8 -9 8q-5 0 -5 -8v-405q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v685q0 16 11 27t27 11h101q15 0 24 -7.5t18 -23.5l237 -412q5 -8 8 -8q5 0 5 9v423q0 8 6 13.5t14 5.5h118q8 0 14 -5.5 +t6 -13.5v-686v0z" /> + <glyph glyph-name="O" unicode="O" horiz-adv-x="698" +d="M645 312q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5t-116 17.5t-94 56t-63 99.5t-23 148v119q0 87 23 148t63 99.5t94 56t116 17.5t116 -17.5t94 -56t63 -99.5t23 -148v-119zM473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40 +t30.5 131v119z" /> + <glyph glyph-name="P" unicode="P" horiz-adv-x="651" +d="M618 502q0 -70 -25.5 -116.5t-67.5 -74.5t-95.5 -39.5t-109.5 -11.5q-18 0 -40 1t-41 2v-243q0 -8 -6 -14t-14 -6h-129q-8 0 -14 5.5t-6 13.5v672q0 26 11 35t34 13q38 6 93.5 9.5t109.5 3.5q57 0 111 -11t96 -39t67.5 -74.5t25.5 -116.5v-9zM448 511q0 54 -32.5 76.5 +t-95.5 22.5q-5 0 -17 -0.5t-24.5 -1t-24 -1t-15.5 -0.5v-204q4 0 15.5 -0.5t25 -1t25 -0.5h15.5q67 0 97.5 25t30.5 76v9z" /> + <glyph glyph-name="Q" unicode="Q" horiz-adv-x="698" +d="M645 312q0 -72 -16 -126.5t-44.5 -92.5t-68 -61t-86.5 -33v-20q0 -16 7 -20.5t18 -4.5h90q11 0 17.5 -4t6.5 -12v-82q0 -16 -23 -22q-21 -5 -51.5 -9t-59.5 -4q-35 0 -65 8t-52.5 26.5t-35.5 48.5t-13 74v21q-47 10 -86.5 33t-68.5 61t-45 92.5t-16 126.5v119 +q0 87 23 148t63 99.5t94 56t116 17.5t116 -17.5t94 -56t63 -99.5t23 -148v-119zM473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40t30.5 131v119z" /> + <glyph glyph-name="R" unicode="R" horiz-adv-x="680" +d="M644 12q0 -12 -15 -12h-153q-8 0 -12 6t-8 14l-134 253l-11 -1q-16 0 -36.5 1t-34.5 1v-254q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v671q0 26 11 35t34 13q17 3 41 5t51 4t55.5 3t55.5 1q64 0 119 -11.5t95.5 -39t63.5 -72.5t23 -111v-13q0 -80 -37 -129t-92 -71 +l151 -282q3 -6 3 -11zM449 518q0 46 -34 67.5t-97 21.5q-5 0 -16.5 -0.5t-23.5 -1t-23 -1t-15 -0.5v-192q4 0 14 -0.5t21.5 -1t21.5 -0.5h14q39 0 65.5 5.5t42.5 16.5t23 29t7 44v13z" /> + <glyph glyph-name="S" unicode="S" horiz-adv-x="588" +d="M546 210q0 -40 -14 -79t-46.5 -70t-84.5 -50.5t-128 -19.5q-60 0 -105.5 6t-83.5 16q-8 2 -14 7t-6 13v98q0 11 5 15t13 4h3q15 -2 41.5 -4t54.5 -3.5t53.5 -3t40.5 -1.5q52 0 70.5 17t18.5 53q0 22 -13.5 37.5t-52.5 38.5l-138 82q-35 21 -57.5 43t-36 46t-19 49.5 +t-5.5 52.5q0 41 12.5 76.5t42.5 62t79 41.5t122 15q27 0 58.5 -2t60.5 -5t54 -7t39 -8q6 -2 10.5 -6t4.5 -12v-101q0 -7 -3.5 -12t-13.5 -5h-2q-11 1 -35.5 2.5t-55.5 3.5t-63.5 3.5t-57.5 1.5q-43 0 -60.5 -13t-17.5 -40q0 -11 3 -19t10.5 -15.5t20.5 -16t33 -19.5l128 -69 +q78 -42 106.5 -92t28.5 -111z" /> + <glyph glyph-name="T" unicode="T" horiz-adv-x="587" +d="M562 621q0 -8 -6.5 -13.5t-14.5 -5.5h-162v-582q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v582h-163q-8 0 -14 5.5t-6 13.5v103q0 8 6 13.5t14 5.5h496q8 0 14.5 -5.5t6.5 -13.5v-103v0z" /> + <glyph glyph-name="U" unicode="U" horiz-adv-x="711" +d="M644 279q0 -86 -23 -141.5t-62 -88t-91.5 -45.5t-112.5 -13t-112.5 13t-91.5 45.5t-61.5 88t-22.5 141.5v445q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-445q0 -38 5.5 -65.5t19 -45t36 -26t56.5 -8.5t56.5 8.5t36 26t19.5 45t6 65.5v445q0 8 6 13.5t14 5.5h130 +q8 0 14.5 -5.5t6.5 -13.5v-445v0z" /> + <glyph glyph-name="V" unicode="V" horiz-adv-x="686" +d="M658 727q0 -1 -0.5 -2t-0.5 -3l-149 -620q-9 -36 -26 -58t-39.5 -33.5t-48 -15.5t-51.5 -4t-52 4t-48.5 15.5t-39.5 33.5t-26 58l-149 620q0 2 -0.5 2.5t-0.5 2.5q0 7 5 11.5t13 4.5h139q8 0 13 -5t7 -13l125 -577q3 -15 14 -15t14 15l125 577q2 8 6.5 13t12.5 5h140 +q17 0 17 -16z" /> + <glyph glyph-name="W" unicode="W" horiz-adv-x="889" +d="M872 728l-93 -655q-6 -44 -29 -60t-63 -16h-57q-33 0 -57.5 15t-34.5 53l-79 299q-2 6 -3.5 7t-5.5 1t-5 -1t-3 -7l-79 -299q-10 -38 -34.5 -53t-57.5 -15h-57q-40 0 -63 16t-29 60l-93 655v2q0 8 5 10.5t11 2.5h136q14 0 16 -19l57 -536q1 -13 6 -13q4 0 7 13l72 275 +q8 29 25 38.5t37 9.5h99q20 0 37 -9.5t25 -38.5l72 -275q3 -13 7 -13q5 0 6 13l57 536q2 19 16 19h136q6 0 11 -2.5t5 -10.5v-2z" /> + <glyph glyph-name="X" unicode="X" horiz-adv-x="703" +d="M671 10q0 -10 -13 -10h-159q-10 0 -15.5 3.5t-10.5 11.5l-130 211l-117 -206q-5 -9 -11 -14.5t-14 -5.5h-148q-15 0 -15 13q0 3 2 7l209 361l-211 343q-2 4 -2 6q0 5 4.5 9t10.5 4h161q8 0 14 -6t11 -13l124 -202l112 202q4 7 10.5 13t14.5 6h148q6 0 10.5 -4t4.5 -9 +q0 -2 -2 -6l-206 -353l215 -351q3 -6 3 -10z" /> + <glyph glyph-name="Y" unicode="Y" horiz-adv-x="647" +d="M626 728q0 -5 -1 -7l-151 -346q-15 -35 -31 -52t-34 -25v-278q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v278q-18 8 -34.5 25t-31.5 52l-151 346q-1 2 -1 7q0 6 4 10.5t12 4.5h144q8 0 13 -5t7 -12l108 -282q4 -10 7 -12.5t8 -2.5t8 2.5t7 12.5l108 282q2 7 7 12t13 5 +h144q8 0 12 -4.5t4 -10.5z" /> + <glyph glyph-name="Z" unicode="Z" horiz-adv-x="615" +d="M565 20q0 -8 -6 -14t-14 -6h-454q-17 0 -29 7t-12 24v80q0 11 3 20.5t12 23.5l279 422q4 5 4 10q0 8 -11 8h-249q-8 0 -14 5.5t-6 13.5v110q0 8 6 13.5t14 5.5h431q16 0 28 -7t12 -21v-7q0 -3 0.5 -7.5t0.5 -9.5q0 -11 -0.5 -22.5t-0.5 -21.5v-23q0 -13 -8 -26l-282 -432 +q-5 -7 -5 -11q0 -7 11 -7h270q8 0 14 -5t6 -13v-110v0z" /> + <glyph glyph-name="bracketleft" unicode="[" horiz-adv-x="374" +d="M344 -174q0 -8 -6 -14t-14 -6h-244q-8 0 -12.5 5.5t-4.5 13.5v899q0 8 4.5 13.5t12.5 5.5h243q8 0 14 -6t6 -14v-87q0 -8 -6 -14t-14 -6h-96v-683h97q8 0 14 -6t6 -14v-87v0z" /> + <glyph glyph-name="backslash" unicode="\" horiz-adv-x="405" +d="M392 12q0 -7 -5.5 -12t-13.5 -5h-127q-8 0 -12.5 6.5t-6.5 14.5l-213 707q0 1 -0.5 2t-0.5 2q0 7 5.5 11.5t13.5 4.5h126q8 0 13.5 -6t7.5 -14l212 -707q0 -1 0.5 -2t0.5 -2z" /> + <glyph glyph-name="bracketright" unicode="]" horiz-adv-x="374" +d="M311 -175q0 -8 -4.5 -13.5t-12.5 -5.5h-244q-8 0 -14 6t-6 14v87q0 8 6 14t14 6h97v683h-96q-8 0 -14 6t-6 14v87q0 8 6 14t14 6h243q8 0 12.5 -5.5t4.5 -13.5v-899v0z" /> + <glyph glyph-name="asciicircum" unicode="^" +d="M576 574q0 -9 -12 -9h-130q-13 0 -18 3.5t-13 11.5l-80 89l-80 -89q-8 -8 -13 -11.5t-18 -3.5h-130q-12 0 -12 9q0 5 5 12l111 148q8 11 14 14.5t20 3.5h206q14 0 20 -3.5t14 -14.5l111 -148q5 -7 5 -12z" /> + <glyph glyph-name="underscore" unicode="_" horiz-adv-x="541" +d="M573 -103q0 -8 -6 -12t-14 -4h-564q-8 0 -14 4t-6 12v48q0 8 6 12t14 4h564q8 0 14 -4t6 -12v-48v0z" /> + <glyph glyph-name="quoteleft" unicode="&#x2018;" horiz-adv-x="253" +d="M229 757v-4.5t-1 -4.5l-54 -219q-4 -19 -20 -19h-119q-12 0 -12 11q0 2 2 8l75 219q4 10 7.5 14.5t11.5 4.5h101q9 0 9 -10z" /> + <glyph glyph-name="a" unicode="a" horiz-adv-x="562" +d="M502 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v16q-29 -21 -61.5 -33t-77.5 -12q-33 0 -63.5 8.5t-54.5 28.5t-38.5 53t-14.5 82v9q0 88 58.5 128.5t187.5 40.5h54v36q0 43 -20 56t-55 13q-24 0 -48.5 -0.5t-47 -1.5t-40.5 -2.5l-30 -2.5h-5q-8 0 -13 4t-5 14v81 +q0 17 19 22q28 7 75.5 14t97.5 7q54 0 97.5 -11.5t73.5 -36t46.5 -63t16.5 -93.5v-357zM343 245h-57q-26 0 -43 -4.5t-27 -13.5t-14 -23t-4 -32v-9q0 -32 15.5 -41t47.5 -9q23 0 43.5 6.5t38.5 15.5v110z" /> + <glyph glyph-name="b" unicode="b" horiz-adv-x="597" +d="M555 247q0 -122 -64.5 -189t-186.5 -67q-58 0 -114 7.5t-99 18.5q-20 5 -25.5 11t-5.5 18v701q0 8 6.5 14t14.5 6h121q8 0 14 -6t6 -14v-173q22 3 44.5 5t37.5 2q127 0 189 -69t62 -187v-78zM393 325q0 26 -4 48.5t-14 39t-27 25.5t-44 9q-18 0 -41 -1.5t-41 -3.5v-312 +q14 -2 35.5 -4t46.5 -2q27 0 44 9t27 25.5t14 39t4 49.5v78z" /> + <glyph glyph-name="c" unicode="c" horiz-adv-x="474" +d="M432 29q0 -11 -5 -15.5t-16 -7.5q-21 -5 -54.5 -10t-78.5 -5q-106 0 -169.5 65t-63.5 188v84q0 123 63.5 188t169.5 65q45 0 78.5 -5t54.5 -10q11 -3 16 -7.5t5 -15.5v-89q0 -8 -5.5 -12.5t-13.5 -4.5h-2q-28 3 -53.5 5t-68.5 2q-17 0 -32 -5.5t-26 -19t-17.5 -36 +t-6.5 -55.5v-84q0 -33 6.5 -55.5t17.5 -36t26 -19t32 -5.5q43 0 68.5 2t53.5 5h2q8 0 13.5 -4.5t5.5 -12.5v-89v0z" /> + <glyph glyph-name="d" unicode="d" horiz-adv-x="597" +d="M537 46q0 -12 -5.5 -18t-25.5 -11q-43 -11 -99 -18.5t-114 -7.5q-122 0 -186.5 67t-64.5 189v78q0 118 62 187t189 69q15 0 37.5 -2t44.5 -5v173q0 8 6 14t14 6h121q8 0 14.5 -6t6.5 -14v-701zM375 442q-18 2 -41 3.5t-41 1.5q-27 0 -44 -9t-27 -25.5t-14 -39t-4 -48.5 +v-78q0 -27 4 -49.5t14 -39t27 -25.5t44 -9q25 0 46.5 2t35.5 4v312z" /> + <glyph glyph-name="e" unicode="e" horiz-adv-x="590" +d="M545 260q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5 +q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM387 340q0 56 -24 83.5t-66 27.5t-67 -28t-25 -83v-4h182v4z" /> + <glyph glyph-name="f" unicode="f" horiz-adv-x="424" +d="M394 670q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-33h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-432q0 -8 -6 -14t-14 -6h-123q-8 0 -14 6t-6 14v432l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v32q0 53 11 86.5t32 52t52.5 25.5t72.5 7 +q22 0 39 -2t40 -6q19 -3 19 -20v-78v0z" /> + <glyph glyph-name="g" unicode="g" horiz-adv-x="599" +d="M577 490q0 -11 -4.5 -15t-13.5 -7l-31 -10q9 -14 15.5 -35t6.5 -39v-8q0 -98 -64.5 -142.5t-182.5 -44.5q-35 0 -62 4.5t-42 10.5q-8 -5 -11 -10.5t-3 -12.5q0 -12 6 -18t24 -10l113 -25q65 -14 110 -27.5t72.5 -31t39.5 -42t12 -60.5v-8q0 -163 -262 -163 +q-125 0 -189.5 42t-64.5 121v8q0 31 14 59t46 53q-27 15 -39 41.5t-12 51.5q0 28 12.5 49t31.5 36q-24 21 -35 55t-11 64v8q0 85 59.5 137t190.5 52h249q11 0 18 -7.5t7 -18.5v-57zM392 384q0 31 -18 51.5t-71 20.5t-72 -20.5t-19 -51.5v-8q0 -13 3.5 -25.5t13.5 -22.5 +t27.5 -16t46.5 -6q53 0 71 19t18 51v8zM397 -33q0 7 -3.5 13.5t-14.5 12.5t-31 12t-54 14l-74 16q-9 -13 -14.5 -27.5t-5.5 -40.5v-8q0 -26 21 -38.5t79 -12.5q31 0 50 3.5t29.5 10.5t14 16.5t3.5 20.5v8z" /> + <glyph glyph-name="h" unicode="h" horiz-adv-x="612" +d="M552 21q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v726q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-211q38 25 73 35t80 10 +q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333v0z" /> + <glyph glyph-name="i" unicode="i" horiz-adv-x="290" +d="M230 658q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93zM226 20q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v533q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-533z" /> + <glyph glyph-name="j" unicode="j" horiz-adv-x="290" +d="M230 658q0 -8 -6.5 -14t-14.5 -6h-129q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h129q8 0 14.5 -6t6.5 -14v-93zM226 -32q0 -50 -11 -83t-31.5 -52.5t-50 -27.5t-65.5 -8q-39 0 -80 7q-20 3 -20 20v79q0 18 21 18h44q21 0 26 10.5t5 36.5v584q0 8 5.5 14.5t13.5 6.5h124 +q8 0 13.5 -6.5t5.5 -14.5v-584z" /> + <glyph glyph-name="k" unicode="k" horiz-adv-x="588" +d="M558 562q0 -5 -4 -10l-186 -253l185 -278q2 -2 2 -8q0 -13 -13 -13h-151q-8 0 -13.5 2.5t-11.5 11.5l-144 235v-228q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v726q0 8 6.5 14t14.5 6h121q8 0 14 -6t6 -14v-418l152 229q6 9 13 12t13 3h143q15 0 15 -11z +" /> + <glyph glyph-name="l" unicode="l" horiz-adv-x="282" +d="M222 21q0 -8 -5.5 -14.5t-13.5 -6.5h-122q-8 0 -14.5 6.5t-6.5 14.5v726q0 8 6.5 14t14.5 6h122q8 0 13.5 -6t5.5 -14v-726v0z" /> + <glyph glyph-name="m" unicode="m" horiz-adv-x="875" +d="M815 21q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v341q0 48 -13 65.5t-48 17.5q-13 0 -33.5 -3.5t-43.5 -14.5q3 -30 3 -65v-341q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v341q0 48 -11.5 65.5t-46.5 17.5q-14 0 -33.5 -7t-42.5 -19v-398 +q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14t14 6h114q8 0 14 -6t6 -14v-22q32 21 68 35.5t80 14.5q40 0 68.5 -11.5t49.5 -37.5q22 12 41 21.5t38 15.5t39.5 9t44.5 3q49 0 82.5 -16t53 -44.5t28 -69t8.5 -89.5v-341v0z" /> + <glyph glyph-name="n" unicode="n" horiz-adv-x="612" +d="M552 21q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14t14 6h112q8 0 14 -6t6 -14v-24q41 29 78 40.5t85 11.5 +q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333v0z" /> + <glyph glyph-name="o" unicode="o" horiz-adv-x="589" +d="M545 251q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5t-107.5 18.5t-78.5 52t-48.5 81.5t-16.5 108v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5t107.5 -18.5t78 -52t48 -81.5t16.5 -108v-70zM384 321q0 122 -89 122q-44 0 -67 -30.5t-23 -91.5v-70 +q0 -61 23 -92t67 -31q89 0 89 123v70z" /> + <glyph glyph-name="p" unicode="p" horiz-adv-x="597" +d="M555 247q0 -118 -62 -187t-189 -69q-15 0 -37.5 2t-44.5 5v-173q0 -8 -6 -14t-14 -6h-121q-8 0 -14.5 6t-6.5 14v701q0 12 5.5 18t25.5 11q43 11 99 18.5t114 7.5q122 0 186.5 -67t64.5 -189v-78zM393 325q0 27 -4 49t-14 38.5t-27 25.5t-44 9q-25 0 -46.5 -1.5 +t-35.5 -3.5v-312q18 -2 41 -4t41 -2q27 0 44 9.5t27 26t14 39t4 48.5v78z" /> + <glyph glyph-name="q" unicode="q" horiz-adv-x="597" +d="M537 -175q0 -8 -6.5 -14t-14.5 -6h-121q-8 0 -14 6t-6 14v173q-22 -3 -44.5 -5t-37.5 -2q-127 0 -189 69t-62 187v78q0 122 64.5 189t186.5 67q58 0 114 -7.5t99 -18.5q20 -5 25.5 -11t5.5 -18v-701zM375 442q-14 2 -35.5 3.5t-46.5 1.5q-27 0 -44 -9t-27 -25.5 +t-14 -38.5t-4 -49v-78q0 -26 4 -48.5t14 -39t27 -26t44 -9.5q18 0 41 2t41 4v312z" /> + <glyph glyph-name="r" unicode="r" horiz-adv-x="396" +d="M374 466q0 -7 -4 -13t-11 -6h-8q-37 0 -69 -10t-60 -25v-391q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14t14 6h119q8 0 14 -6t6 -14v-20q28 23 63.5 35.5t71.5 12.5q8 0 14 -6t6 -14v-95v0z" /> + <glyph glyph-name="s" unicode="s" horiz-adv-x="503" +d="M461 159q0 -35 -13 -66t-39.5 -53.5t-66.5 -35.5t-95 -13q-21 0 -44.5 1.5t-48 4.5t-47.5 7t-42 9t-19 23v81q0 8 5 13.5t14 5.5h4q20 -3 44.5 -5.5t48.5 -4.5t44.5 -3t32.5 -1q36 0 47.5 9.5t11.5 29.5q0 11 -8 20.5t-29 21.5l-130 75q-42 24 -65.5 61.5t-23.5 86.5 +q0 76 50.5 115.5t154.5 39.5q59 0 99.5 -6.5t78.5 -16.5q19 -5 19 -23v-81q0 -19 -17 -19h-3q-11 1 -31 3.5t-43.5 4.5t-48 3.5t-43.5 1.5q-29 0 -41 -6t-12 -23q0 -11 8 -18.5t23 -16.5l124 -71q31 -18 50.5 -36.5t31 -38t15.5 -39.5t4 -40z" /> + <glyph glyph-name="t" unicode="t" horiz-adv-x="421" +d="M390 19q0 -17 -19 -20q-23 -4 -40 -6t-39 -2q-41 0 -72.5 6.5t-52.5 25.5t-32 52.5t-11 86.5v290l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v82q0 8 6 13t14 7l122 21h3q8 0 13 -4.5t5 -12.5v-106h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82 +v-291q0 -30 5 -38.5t28 -8.5h49q21 0 21 -17v-78v0z" /> + <glyph glyph-name="u" unicode="u" horiz-adv-x="612" +d="M552 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v24q-41 -29 -78 -40.5t-85 -11.5q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v333q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-333q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v394q0 8 6 14.5 +t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532v0z" /> + <glyph glyph-name="v" unicode="v" horiz-adv-x="585" +d="M564 556q0 -4 -1 -6l-126 -454q-9 -33 -24.5 -54t-35 -32t-41.5 -15t-44 -4t-44 4t-41 15t-34.5 32t-24.5 54l-125 454q-1 2 -1 6q0 17 16 17h132q8 0 13.5 -6t7.5 -15l86 -392q4 -21 15 -21q12 0 16 21l86 392q2 9 7.5 15t13.5 6h132q7 0 12 -4.5t5 -12.5z" /> + <glyph glyph-name="w" unicode="w" horiz-adv-x="845" +d="M816 552l-89 -482q-8 -43 -32.5 -56.5t-55.5 -13.5h-61q-36 0 -56 17.5t-28 46.5l-67 261q-1 5 -5 5t-5 -5l-67 -261q-8 -29 -28 -46.5t-56 -17.5h-61q-16 0 -30 3t-25.5 10.5t-20 21.5t-12.5 35l-89 482v4q0 7 4 12t11 5h121q9 0 14 -3t7 -14l59 -380q2 -13 6 -13 +q5 0 8 13l67 264q7 26 19.5 35.5t36.5 9.5h82q24 0 36.5 -9.5t19.5 -35.5l67 -264q3 -13 8 -13q4 0 6 13l59 380q2 11 7 14t14 3h121q7 0 11 -5t4 -12v-4z" /> + <glyph glyph-name="x" unicode="x" horiz-adv-x="617" +d="M585 14q0 -5 -4 -9.5t-10 -4.5h-151q-8 0 -13.5 5t-12.5 16l-99 155l-93 -156q-7 -11 -12.5 -15.5t-13.5 -4.5h-134q-11 0 -11 12q0 5 2 8l175 278l-170 254q-2 4 -2 6q0 6 4.5 10.5t10.5 4.5h149q8 0 13.5 -5.5t12.5 -15.5l89 -138l82 138q7 11 12.5 16t13.5 5h134 +q12 0 12 -13q0 -5 -2 -8l-165 -262l181 -269q2 -4 2 -7z" /> + <glyph glyph-name="y" unicode="y" horiz-adv-x="592" +d="M570 555q0 -2 -0.5 -2.5t-0.5 -2.5l-168 -589q-12 -41 -27 -71.5t-39 -50.5t-61 -30.5t-92 -10.5q-14 0 -31 1.5t-34 3.5t-32 5t-24 6q-8 3 -14.5 6.5t-6.5 11.5v81q0 8 6 13.5t14 5.5h2q12 -1 28.5 -2t34 -2.5t34 -2.5t28.5 -1q27 0 42 11t24 41l9 31h-15 +q-14 0 -26.5 2.5t-24.5 11.5t-22.5 27.5t-19.5 51.5l-132 450q-1 3 -1 7q0 16 20 16h133q8 0 12.5 -5.5t6.5 -13.5l90 -376q4 -19 12 -19h1h4h4l93 395q2 8 7.5 13.5t13.5 5.5h133q8 0 13.5 -5t5.5 -13z" /> + <glyph glyph-name="z" unicode="z" horiz-adv-x="515" +d="M472 20q0 -8 -6 -14t-14 -6h-375q-14 0 -24 9.5t-10 23.5v64q0 11 3 19t11 19l217 296q3 4 3 7q0 5 -7 5h-201q-17 0 -17 16v94q0 8 6 14t14 6h365q14 0 23.5 -10t9.5 -24v-74q0 -8 -2 -16.5t-9 -18.5l-207 -283q-3 -5 -3 -7q0 -4 7 -4h198q8 0 13 -4t5 -12v-100v0z" /> + <glyph glyph-name="braceleft" unicode="{" horiz-adv-x="407" +d="M377 -174q0 -8 -6 -14t-14 -6h-58q-56 0 -94.5 9t-62.5 30t-34.5 56.5t-10.5 89.5v131q0 36 -14.5 60.5t-42.5 42.5v95q28 18 42 42.5t14 60.5v135q0 54 10.5 89.5t34.5 56.5t62.5 30t94.5 9h58q8 0 14 -6t6 -14v-87q0 -8 -6 -14t-14 -6h-58q-24 0 -31 -10.5t-7 -47.5 +v-135q0 -52 -19 -89.5t-64 -60.5q45 -23 64 -61t19 -90v-131q0 -37 7.5 -47.5t31.5 -10.5h58q8 0 14 -6t6 -14v-87v0z" /> + <glyph glyph-name="bar" unicode="|" horiz-adv-x="290" +d="M227 -173q0 -8 -6 -14.5t-14 -6.5h-123q-8 0 -14.5 6.5t-6.5 14.5v896q0 8 6.5 14t14.5 6h123q8 0 14 -6t6 -14v-896v0z" /> + <glyph glyph-name="braceright" unicode="}" horiz-adv-x="407" +d="M367 225q-28 -18 -42.5 -42.5t-14.5 -60.5v-131q0 -54 -11 -89.5t-35 -56.5t-62.5 -30t-93.5 -9h-58q-8 0 -14 6t-6 14v87q0 8 6 14t14 6h58q24 0 31.5 10.5t7.5 47.5v131q0 52 19 90t64 61q-45 23 -64 60.5t-19 89.5v135q0 37 -7 47.5t-31 10.5h-58q-8 0 -14 6t-6 14v87 +q0 8 6 14t14 6h58q55 0 93.5 -9t62.5 -30t35 -56.5t11 -89.5v-135q0 -36 14 -60.5t42 -42.5v-95v0z" /> + <glyph glyph-name="asciitilde" unicode="~" +d="M576 480q0 -79 -35.5 -115t-107.5 -36q-29 0 -51.5 9t-39.5 20l-71 43q-14 8 -24.5 10.5t-18.5 2.5q-21 0 -26 -12t-5 -28v-18q0 -8 -5 -14t-13 -6h-89q-20 0 -20 20v18q0 45 10 75.5t29 48.5t45.5 26t58.5 8q14 0 36.5 -4t36.5 -13l90 -54q14 -8 24.5 -11t18.5 -3 +q16 0 22.5 7t6.5 26v25q0 20 19 20h89q20 0 20 -20v-25v0z" /> + <glyph glyph-name="exclamdown" unicode="&#xa1;" horiz-adv-x="273" +d="M215 427q0 -8 -6 -13.5t-14 -5.5h-118q-19 0 -19 19v126q0 8 5.5 14t13.5 6h118q8 0 14 -6t6 -14v-126zM220 -175q0 -8 -7 -13.5t-15 -5.5h-125q-8 0 -14 5.5t-6 13.5v1l20 499q1 8 6.5 14.5t13.5 6.5h85q8 0 15 -6.5t7 -14.5l20 -499v-1z" /> + <glyph glyph-name="cent" unicode="&#xa2;" +d="M516 29q0 -11 -5 -15.5t-16 -7.5q-14 -4 -33.5 -7.5t-45.5 -5.5v-73q0 -8 -6 -14t-14 -6h-101q-8 0 -14 6t-6 14v84q-69 23 -107.5 84t-38.5 156v84q0 95 38.5 156t107.5 84v82q0 8 6 14t14 6h101q8 0 14 -6t6 -14v-71q26 -2 45.5 -5.5t33.5 -7.5q11 -3 16 -7.5t5 -15.5 +v-89q0 -8 -5.5 -12.5t-13.5 -4.5h-2q-28 3 -53.5 5t-68.5 2q-17 0 -32 -5.5t-26 -19t-17.5 -36t-6.5 -55.5v-84q0 -33 6.5 -55.5t17.5 -36t26 -19t32 -5.5q43 0 68.5 2t53.5 5h2q8 0 13.5 -4.5t5.5 -12.5v-89v0z" /> + <glyph glyph-name="sterling" unicode="&#xa3;" +d="M577 614q0 -18 -16 -18h-3q-32 4 -78.5 8t-86.5 4q-49 0 -70 -15.5t-21 -63.5v-84h169q8 0 14 -5.5t6 -13.5v-97q0 -19 -19 -19h-170v-100q0 -25 -6 -43.5t-14 -32.5h274q8 0 14 -5t6 -13v-97q0 -8 -6 -13.5t-14 -5.5h-442q-11 0 -15 8t-4 16v70q0 9 3 14l6 10 +q11 14 22 40t11 52v100h-50q-19 0 -19 19v97q0 8 6 13.5t14 5.5h49v83q0 58 14 100.5t44.5 70t79 40.5t118.5 13q21 0 45.5 -2t47 -5t41.5 -6t31 -6q14 -3 16.5 -7.5t2.5 -12.5v-99v0z" /> + <glyph glyph-name="fraction" unicode="&#x2044;" horiz-adv-x="370" +d="M464 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8z" /> + <glyph glyph-name="yen" unicode="&#xa5;" +d="M623 730q0 -6 -2 -9l-111 -224h87q8 0 14 -5.5t6 -13.5v-74q0 -19 -19 -19h-142l-46 -92l-2 -11h189q8 0 14 -5t6 -13v-75q0 -18 -19 -18h-190v-151q0 -8 -6 -14t-14 -6h-133q-8 0 -13.5 6t-5.5 14v151h-189q-8 0 -14 5t-6 13v75q0 8 6 13t14 5h189l-1 11l-45 92h-143 +q-8 0 -14 5.5t-6 13.5v74q0 8 6 13.5t14 5.5h88l-111 224q-2 3 -2 9q0 13 15 13h147q8 0 12 -5t7 -12l119 -270l120 270q3 7 7 12t12 5h147q15 0 15 -13z" /> + <glyph glyph-name="florin" unicode="&#x192;" +d="M612 755l-10 -75q-2 -18 -24 -18h-65q-37 0 -49.5 -10t-16.5 -39l-22 -159h134q18 0 18 -16v-3l-12 -84q-2 -8 -8 -14.5t-15 -6.5h-134l-46 -325q-7 -50 -26.5 -82.5t-47.5 -52t-63 -27.5t-74 -8q-30 0 -57.5 3t-41.5 6q-11 2 -14.5 6t-3.5 9v4l10 75q2 18 24 18h65 +q37 0 49.5 10t16.5 39l45 325h-126q-8 0 -13 5t-5 13v3l12 84q3 19 23 19h127l22 159q7 50 26 82.5t47 52t63.5 27.5t74.5 8q30 0 57.5 -3t41.5 -6q11 -2 14.5 -6t3.5 -9v-4z" /> + <glyph glyph-name="section" unicode="&#xa7;" horiz-adv-x="589" +d="M549 1q0 -39 -14 -78t-45.5 -69.5t-84 -50t-128.5 -19.5q-60 0 -108.5 6t-86.5 16q-8 2 -14 7t-6 13v101q0 8 6 13.5t14 5.5h2q48 -5 93.5 -9.5t93.5 -4.5h6q52 1 73 16t21 53q0 22 -15.5 37.5t-55.5 37.5l-133 73q-39 21 -63.5 43t-38.5 47t-19.5 53.5t-5.5 61.5 +q0 10 2.5 23.5t6.5 27.5t9.5 28t11.5 24q-12 14 -20.5 40t-8.5 55q0 41 12.5 77.5t42 63.5t78.5 43t122 16q27 0 58.5 -2t60.5 -5t54 -7t39 -8q8 -2 14 -6.5t6 -12.5v-102q0 -14 -13 -14h-1q-54 3 -108.5 5.5t-109.5 2.5q-45 0 -64 -9.5t-19 -41.5q0 -19 15.5 -33.5 +t56.5 -36.5l128 -69q78 -42 107 -90.5t29 -109.5q0 -28 -8 -57.5t-18 -48.5q14 -23 20 -50t6 -56zM407 220q0 16 -4 28.5t-15 24.5t-29.5 24t-47.5 28l-72 39q-19 11 -30.5 18t-18.5 13q-9 -9 -13 -22.5t-4 -28.5q0 -14 3 -25t12 -21t26 -21t45 -26l70 -37q22 -11 40 -24.5 +l26 -19.5q12 21 12 50z" /> + <glyph glyph-name="currency" unicode="&#xa4;" +d="M583 557q0 -8 -7 -15l-86 -85q23 -41 23 -86q0 -48 -24 -90l84 -84q7 -7 7 -15q0 -6 -5 -11l-57 -57q-5 -5 -11 -5q-8 0 -15 7l-86 87q-38 -21 -82 -21q-46 0 -86 22l-85 -85q-3 -3 -7 -5.5t-9 -2.5t-10 5l-57 57q-5 5 -5 12q0 8 7 15l85 84q-23 41 -23 87q0 21 4.5 42 +t15.5 40l-85 86q-7 7 -7 15q0 6 5 11l57 57q5 5 11 5q8 0 15 -7l83 -83q21 12 44.5 17.5t46.5 5.5q46 0 86 -22l85 85q7 7 15 7q6 0 11 -5l57 -57q5 -5 5 -11zM410 374q0 35 -24.5 59t-59.5 24t-60 -24t-25 -59t25 -59.5t60 -24.5t59.5 24.5t24.5 59.5z" /> + <glyph glyph-name="quotesingle" unicode="'" horiz-adv-x="253" +d="M230 756q0 -2 -2 -8l-75 -219q-4 -10 -7.5 -14.5t-11.5 -4.5h-101q-9 0 -9 10v4.5t1 4.5l54 219q4 19 20 19h119q12 0 12 -11z" /> + <glyph glyph-name="quotedblleft" unicode="&#x201c;" horiz-adv-x="473" +d="M449 757v-4.5t-1 -4.5l-54 -219q-4 -19 -20 -19h-119q-12 0 -12 11q0 2 2 8l74 219q6 19 19 19h102q9 0 9 -10zM229 757v-4.5t-1 -4.5l-54 -219q-4 -19 -20 -19h-119q-12 0 -12 11q0 2 2 8l75 219q4 10 7.5 14.5t11.5 4.5h101q9 0 9 -10z" /> + <glyph glyph-name="guillemotleft" unicode="&#xab;" horiz-adv-x="718" +d="M685 74q0 -11 -14 -11h-122q-11 0 -17 2.5t-12 9.5l-160 185q-5 6 -7.5 13t-2.5 13t2.5 13t7.5 13l160 185q6 7 12 9.5t17 2.5h122q14 0 14 -11q0 -3 -4 -9l-176 -203l176 -203q4 -6 4 -9zM380 74q0 -11 -14 -11h-121q-11 0 -17.5 2.5t-12.5 9.5l-160 185q-5 6 -7.5 13 +t-2.5 13t2.5 13t7.5 13l160 185q6 7 12.5 9.5t17.5 2.5h121q14 0 14 -11q0 -3 -4 -9l-176 -203l176 -203q4 -6 4 -9z" /> + <glyph glyph-name="guilsinglleft" unicode="&#x2039;" horiz-adv-x="413" +d="M370 74q0 -11 -14 -11h-121q-11 0 -17.5 2.5t-12.5 9.5l-160 185q-5 6 -7.5 13t-2.5 13t2.5 13t7.5 13l160 185q6 7 12.5 9.5t17.5 2.5h121q14 0 14 -11q0 -3 -4 -9l-176 -203l176 -203q4 -6 4 -9z" /> + <glyph glyph-name="guilsinglright" unicode="&#x203a;" horiz-adv-x="413" +d="M378 286q0 -6 -2.5 -13t-7.5 -13l-160 -185q-6 -7 -12.5 -9.5t-17.5 -2.5h-121q-14 0 -14 11q0 3 4 9l176 203l-176 203q-4 6 -4 9q0 11 14 11h121q11 0 17.5 -2.5t12.5 -9.5l160 -185q5 -6 7.5 -13t2.5 -13z" /> + <glyph glyph-name="endash" unicode="&#x2013;" horiz-adv-x="309" +d="M324 251q0 -8 -6 -13.5t-14 -5.5h-300q-19 0 -19 19v79q0 8 5.5 14t13.5 6h300q8 0 14 -6t6 -14v-79v0z" /> + <glyph glyph-name="dagger" unicode="&#x2020;" horiz-adv-x="440" +d="M410 465q0 -16 -19 -16h-92v-435q0 -8 -4 -14t-12 -6h-132q-8 0 -12 6t-4 14v435h-86q-19 0 -19 16v104q0 15 19 15h86v164q0 8 4.5 13.5t12.5 5.5h131q8 0 12 -5.5t4 -13.5v-164h92q19 0 19 -15v-104v0z" /> + <glyph glyph-name="daggerdbl" unicode="&#x2021;" horiz-adv-x="440" +d="M410 243q0 -16 -19 -16h-92v-213q0 -8 -4 -14t-12 -6h-132q-8 0 -12 6t-4 14v213h-86q-19 0 -19 16v103q0 15 19 15h86v88h-86q-19 0 -19 16v104q0 15 19 15h86v164q0 8 4.5 13.5t12.5 5.5h131q8 0 12 -5.5t4 -13.5v-164h92q19 0 19 -15v-104q0 -16 -19 -16h-92v-88h92 +q19 0 19 -15v-103v0z" /> + <glyph glyph-name="periodcentered" unicode="&#xb7;" horiz-adv-x="274" +d="M216 319q0 -8 -6 -14t-14 -6h-117q-8 0 -14.5 6t-6.5 14v126q0 8 6.5 13.5t14.5 5.5h117q8 0 14 -5.5t6 -13.5v-126v0z" /> + <glyph glyph-name="paragraph" unicode="&#xb6;" horiz-adv-x="659" +d="M602 -176q0 -8 -4.5 -13.5t-12.5 -5.5h-43q-8 0 -12.5 5.5t-4.5 13.5v843h-63v-843q0 -8 -4.5 -13.5t-12.5 -5.5h-43q-8 0 -12.5 5.5t-4.5 13.5v418h-96q-52 0 -96.5 14.5t-77.5 43t-51.5 70t-18.5 95.5v55q0 54 18.5 95.5t51.5 70t77.5 43t96.5 14.5h297q16 0 16 -19 +v-900v0z" /> + <glyph glyph-name="bullet" unicode="&#x2022;" horiz-adv-x="418" +d="M376 367q0 -35 -13 -65t-36 -53t-53.5 -36t-64.5 -13q-35 0 -65 13t-53 36t-36 53t-13 65q0 34 13 64.5t36 53.5t53 36t65 13q34 0 64.5 -13t53.5 -36t36 -53.5t13 -64.5z" /> + <glyph glyph-name="quotesinglbase" unicode="&#x201a;" horiz-adv-x="253" +d="M231 153q0 -3 -2 -7l-96 -224q-4 -8 -7.5 -14t-11.5 -6h-88q-7 0 -12 4.5t-5 10.5q0 2 0.5 2.5t0.5 2.5l64 224q5 19 20 19h122q15 0 15 -12z" /> + <glyph glyph-name="quotedblbase" unicode="&#x201e;" horiz-adv-x="473" +d="M460 153q0 -3 -2 -7l-96 -224q-4 -8 -7.5 -14t-11.5 -6h-88q-7 0 -12 4.5t-5 10.5q0 2 0.5 2.5t0.5 2.5l64 224q5 19 20 19h122q15 0 15 -12zM231 153q0 -3 -2 -7l-96 -224q-4 -8 -7.5 -14t-11.5 -6h-88q-7 0 -12 4.5t-5 10.5q0 2 0.5 2.5t0.5 2.5l64 224q5 19 20 19h122 +q15 0 15 -12z" /> + <glyph glyph-name="quotedblright" unicode="&#x201d;" horiz-adv-x="473" +d="M450 756q0 -2 -2 -8l-75 -219q-4 -10 -7.5 -14.5t-11.5 -4.5h-101q-9 0 -9 10v4.5t1 4.5l54 219q4 19 20 19h119q12 0 12 -11zM230 756q0 -2 -2 -8l-74 -219q-6 -19 -19 -19h-102q-9 0 -9 10v4.5t1 4.5l55 219q4 19 20 19h118q12 0 12 -11z" /> + <glyph glyph-name="guillemotright" unicode="&#xbb;" horiz-adv-x="718" +d="M683 286q0 -13 -11 -26l-160 -185q-6 -7 -12 -9.5t-17 -2.5h-121q-14 0 -14 11q0 3 4 9l176 203l-176 203q-4 6 -4 9q0 11 14 11h121q11 0 17 -2.5t12 -9.5l160 -185q11 -13 11 -26zM378 286q0 -6 -2.5 -13t-7.5 -13l-160 -185q-6 -7 -12.5 -9.5t-17.5 -2.5h-121 +q-14 0 -14 11q0 3 4 9l176 203l-176 203q-4 6 -4 9q0 11 14 11h121q11 0 17.5 -2.5t12.5 -9.5l160 -185q5 -6 7.5 -13t2.5 -13z" /> + <glyph glyph-name="ellipsis" unicode="&#x2026;" horiz-adv-x="767" +d="M717 20q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v126q0 8 6 13.5t14 5.5h118q8 0 14 -5.5t6 -13.5v-126zM463 20q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v126q0 8 6 13.5t14 5.5h118q8 0 14 -5.5t6 -13.5v-126zM209 20q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14 +v126q0 8 6 13.5t14 5.5h118q8 0 14 -5.5t6 -13.5v-126z" /> + <glyph glyph-name="perthousand" unicode="&#x2030;" horiz-adv-x="1193" +d="M1155 166q0 -88 -38.5 -130t-109.5 -42t-109.5 42t-38.5 130v75q0 88 38.5 130t109.5 42t109.5 -42t38.5 -130v-75zM801 166q0 -88 -38 -130t-109 -42t-109.5 42t-38.5 130v75q0 88 38.5 130t109.5 42t109 -42t38 -130v-75zM698 735q0 -7 -4 -12l-416 -702 +q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8zM334 502q0 -88 -38.5 -130t-109.5 -42t-109.5 42t-38.5 130v75q0 88 38.5 129.5t109.5 41.5t109.5 -41.5t38.5 -129.5v-75zM1054 241q0 51 -12.5 68t-34.5 17t-35 -17 +t-13 -68v-75q0 -51 13 -68t35 -17t34.5 17t12.5 68v75zM701 241q0 51 -12.5 68t-34.5 17t-35 -17t-13 -68v-75q0 -51 13 -68t35 -17t34.5 17t12.5 68v75zM233 577q0 51 -12.5 68t-34.5 17t-35 -17t-13 -68v-75q0 -51 13 -68.5t35 -17.5t34.5 17.5t12.5 68.5v75z" /> + <glyph glyph-name="questiondown" unicode="&#xbf;" horiz-adv-x="479" +d="M375 428q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v126q0 8 6 13.5t14 5.5h118q8 0 14 -5.5t6 -13.5v-126zM445 -143q0 -11 -3.5 -17t-14.5 -9q-32 -10 -75 -15.5t-85 -5.5q-52 0 -92.5 8.5t-68.5 28t-43 51t-15 78.5v17q0 34 17.5 68.5t59.5 88.5l45 58q17 22 28 36 +t17 23.5t8.5 16.5t2.5 15v28q0 9 8 14t16 5h100q8 0 13.5 -6t5.5 -14v-27q0 -20 -1 -36t-5.5 -31t-13 -30.5t-22.5 -34.5l-48 -63q-28 -37 -37 -58t-9 -43v-10q0 -17 11.5 -27t37.5 -10q39 0 73 3t70 8h3q17 0 17 -21v-89z" /> + <glyph glyph-name="grave" unicode="`" horiz-adv-x="443" +d="M293 637q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="acute" unicode="&#xb4;" horiz-adv-x="443" +d="M416 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="circumflex" unicode="&#x2c6;" horiz-adv-x="443" +d="M421 637q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="tilde" unicode="&#x2dc;" horiz-adv-x="497" +d="M444 746q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5q11 0 17 5.5t6 21.5v19q0 16 16 16h70 +q15 0 15 -16v-20v0z" /> + <glyph glyph-name="macron" unicode="&#xaf;" horiz-adv-x="443" +d="M404 672q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72v0z" /> + <glyph glyph-name="breve" unicode="&#x2d8;" horiz-adv-x="443" +d="M408 772q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="dotaccent" unicode="&#x2d9;" horiz-adv-x="443" +d="M306 658q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93v0z" /> + <glyph glyph-name="dieresis" unicode="&#xa8;" horiz-adv-x="443" +d="M399 658q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM182 658q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="ring" unicode="&#x2da;" horiz-adv-x="443" +d="M339 711q0 -24 -9 -45.5t-25 -37.5t-37.5 -25t-45.5 -9t-45.5 9t-37.5 25t-25 37.5t-9 45.5t9 45.5t25 37.5t37.5 25t45.5 9t45.5 -9t37.5 -25t25 -37.5t9 -45.5zM266 711q0 18 -13 31t-31 13t-31 -13t-13 -31t13 -31t31 -13t31 13t13 31z" /> + <glyph glyph-name="cedilla" unicode="&#xb8;" horiz-adv-x="426" +d="M324 -45q0 -4 -4 -8l-127 -130q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l97 125q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7z" /> + <glyph glyph-name="hungarumlaut" unicode="&#x2dd;" horiz-adv-x="443" +d="M487 772q0 -4 -4 -8l-122 -122q-6 -6 -10.5 -9t-14.5 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7zM254 772q0 -4 -4 -8l-122 -122q-6 -6 -10.5 -9t-14.5 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7z" /> + <glyph glyph-name="ogonek" unicode="&#x2db;" horiz-adv-x="426" +d="M333 -166q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 35 16 59t55 47l48 28q10 7 29 7h98q8 0 9 -5t-5 -10l-78 -52q-11 -7 -18.5 -13.5t-7.5 -16.5q0 -15 9.5 -21t31.5 -6q19 0 39 4.5t28 4.5q7 0 8.5 -2t1.5 -10 +v-75v-1z" /> + <glyph glyph-name="caron" unicode="&#x2c7;" horiz-adv-x="443" +d="M421 772q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="emdash" unicode="&#x2014;" horiz-adv-x="599" +d="M614 251q0 -8 -6 -13.5t-14 -5.5h-590q-19 0 -19 19v79q0 8 5.5 14t13.5 6h590q8 0 14 -6t6 -14v-79v0z" /> + <glyph glyph-name="AE" unicode="&#xc6;" horiz-adv-x="923" +d="M867 25q0 -18 -20 -21l-26 -4t-31 -4t-45 -3.5t-67 -1.5q-46 0 -88 7t-75 28t-54 58.5t-25 97.5h-204l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 56.5t39.5 30.5t48.5 12.5t52 2.5h512q20 0 20 -20v-97q0 -8 -6 -14t-14 -6h-242 +v-159h234q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-234v-106q0 -39 14.5 -53.5t49.5 -14.5h178q8 0 14 -6t6 -14v-93zM435 610h-100q-11 0 -14 -15l-61 -276h175v291z" /> + <glyph glyph-name="ordfeminine" unicode="&#xaa;" horiz-adv-x="357" +d="M320 418q0 -14 -8 -16q-31 -8 -63.5 -12t-64.5 -4q-78 0 -114.5 27t-36.5 84v7q0 55 43 77t116 22h22v13q0 27 -8.5 36t-33.5 9q-9 0 -23 -0.5t-28.5 -1.5t-28 -1.5t-20.5 -1.5h-1q-13 0 -13 14v50q0 11 14 15q15 5 43 10t57 5q33 0 60 -6.5t46.5 -22t30.5 -41.5t11 -64 +v-198zM214 544h-22q-29 0 -43.5 -9t-14.5 -31v-7q0 -21 12 -28.5t38 -7.5q10 0 17 1t13 2v80z" /> + <glyph glyph-name="Lslash" unicode="&#x141;" horiz-adv-x="519" +d="M497 25q0 -17 -20 -21q-12 -3 -32 -5t-42.5 -4t-45.5 -3t-43 -1q-48 0 -92.5 8t-78 31t-53.5 65.5t-20 110.5v11l-38 -38q-4 -4 -7 -4q-5 0 -5 6v139v3q0 6 1 9t8 10l41 41v340q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-173l70 68q3 3 8 3q8 0 8 -8v-135q0 -6 -1 -9.5 +t-6 -8.5l-79 -77v-177q0 -39 14.5 -53.5t49.5 -14.5h173q8 0 14 -6t6 -14v-93v0z" /> + <glyph glyph-name="Oslash" unicode="&#xd8;" horiz-adv-x="698" +d="M677 739q0 -4 -3 -8l-75 -103q22 -37 34 -85.5t12 -111.5v-119q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5q-101 0 -174 46l-19 -27q-5 -6 -11.5 -12.5t-14.5 -6.5h-97q-11 0 -11 11q0 3 3 8l75 104q-22 37 -34.5 86t-12.5 112v119q0 87 23 148t63 99.5t94 56 +t116 17.5q50 0 94.5 -11t81.5 -35l18 25q5 6 11.5 12.5t14.5 6.5h97q11 0 11 -11zM431 575q-30 27 -82 27q-63 0 -93 -40t-30 -131v-119q0 -5 0.5 -10.5t0.5 -10.5zM473 451l-204 -284q29 -26 80 -26q63 0 93.5 40t30.5 131v119v13v7z" /> + <glyph glyph-name="OE" unicode="&#x152;" horiz-adv-x="987" +d="M931 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-54 0 -102.5 10t-82.5 41q-38 -27 -84.5 -39t-98.5 -12q-62 0 -116 17.5t-94 56t-63 99.5t-23 148v119q0 87 23 148t63 99.5t94 56t116 17.5q53 0 99 -12.5t84 -39.5q35 31 83.5 41t102.5 10q40 0 70.5 -1.5 +t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-72q0 -5 0.5 -9t0.5 -9h258q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-258q0 -9 -0.5 -17.5t-0.5 -16.5v-72q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93z +M473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40t30.5 131v119z" /> + <glyph glyph-name="ordmasculine" unicode="&#xba;" horiz-adv-x="380" +d="M347 551q0 -84 -40.5 -124.5t-115.5 -40.5t-116 40.5t-41 124.5v33q0 84 41 125t116 41t115.5 -41t40.5 -125v-33zM240 584q0 42 -11.5 59t-37.5 17t-38.5 -17t-12.5 -59v-33q0 -42 12.5 -59t38.5 -17t37.5 17t11.5 59v33z" /> + <glyph glyph-name="ae" unicode="&#xe6;" horiz-adv-x="881" +d="M835 265q0 -8 -6.5 -14.5t-14.5 -6.5h-310v-41q0 -43 30.5 -60t85.5 -17q14 0 37.5 0.5t49 2t49 2.5t37.5 3h5q16 0 16 -16v-72q0 -11 -4 -16.5t-15 -9.5q-42 -14 -95.5 -21.5t-102.5 -7.5q-87 0 -141 46q-40 -22 -91 -34t-104 -12q-42 0 -81.5 9.5t-70 31.5t-49 56 +t-18.5 84v11q0 44 18 74t51.5 49t81.5 27t108 8h42v9q0 56 -17.5 76t-60.5 20q-23 0 -47.5 -0.5t-47 -1.5t-40.5 -2.5t-28 -2.5h-3q-17 0 -17 18v79q0 19 20 24q13 3 31.5 7t40 7t45 5t46.5 2q110 0 170 -60q30 29 68 44.5t90 15.5q63 0 109 -18.5t75.5 -52t43.5 -80 +t14 -101.5v-64zM680 350q0 49 -20 77.5t-68 28.5q-46 0 -67 -28.5t-21 -77.5v-18h176v18zM348 253h-47q-53 0 -79 -15.5t-26 -54.5v-11q0 -37 24 -51.5t55 -14.5q20 0 39 3t34 10v134z" /> + <glyph glyph-name="dotlessi" unicode="&#x131;" horiz-adv-x="290" +d="M226 21q0 -8 -6.5 -14.5t-14.5 -6.5h-120q-8 0 -14.5 6.5t-6.5 14.5v531q0 8 6.5 14.5t14.5 6.5h120q8 0 14.5 -6.5t6.5 -14.5v-531v0z" /> + <glyph glyph-name="lslash" unicode="&#x142;" horiz-adv-x="282" +d="M294 478q0 -6 -1 -9.5t-6 -8.5l-64 -63v-376q0 -8 -6 -14.5t-14 -6.5h-122q-8 0 -14.5 6.5t-6.5 14.5v216l-59 -58q-4 -4 -7 -4q-5 0 -5 6v139v3q0 6 1 9t8 10l62 62v343q0 8 6.5 14t14.5 6h122q8 0 14 -6t6 -14v-183l55 54q3 3 7 3q9 0 9 -8v-135v0z" /> + <glyph glyph-name="oslash" unicode="&#xf8;" horiz-adv-x="589" +d="M559 598q0 -7 -4 -11l-65 -87q55 -67 55 -179v-70q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5q-90 0 -150 40l-42 -56q-5 -7 -8 -8.5t-8 -1.5h-50q-8 0 -8 8q0 6 4 11l66 89q-55 67 -55 178v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5q90 0 150 -40l40 55 +q5 7 8 8.5t8 1.5h50q8 0 8 -8zM355 420q-23 23 -60 23q-44 0 -67 -30.5t-23 -91.5v-70q0 -8 0.5 -16t1.5 -16zM384 321q0 8 -0.5 16t-1.5 16l-148 -201q22 -24 61 -24q89 0 89 123v70z" /> + <glyph glyph-name="oe" unicode="&#x153;" horiz-adv-x="932" +d="M887 260q0 -24 -21 -24h-319v-5v-3q1 -21 6.5 -39.5t17.5 -32.5t31 -22.5t48 -8.5q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90.5 14.5t-80.5 50.5q-32 -32 -74.5 -48.5t-96.5 -16.5q-61 0 -107.5 18.5 +t-78.5 52t-48.5 81.5t-16.5 108v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5q55 0 97.5 -18t74.5 -49q32 32 75 49.5t97 17.5q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM729 340q0 56 -24 83.5t-66 27.5q-41 0 -66.5 -27t-25.5 -81v-7h182v4zM385 321 +q0 122 -89 122t-89 -122v-70q0 -123 89 -123t89 123v70z" /> + <glyph glyph-name="germandbls" unicode="&#xdf;" horiz-adv-x="652" +d="M598 225q0 -60 -20 -104t-53.5 -73t-77.5 -43t-92 -14q-13 0 -29 1.5t-32 4.5q-8 2 -14 6.5t-6 12.5v96q0 5 2.5 10.5t8.5 5.5h1q9 -1 18.5 -1h18.5q23 0 43.5 4.5t35.5 15.5t24 30t9 48v21q0 38 -25 63t-82 25h-31q-8 0 -14 5.5t-6 13.5v79q0 8 6 13.5t14 5.5h31 +q28 0 46.5 7t30 18.5t16.5 26.5t5 31v19q0 35 -22 58.5t-75 23.5q-33 0 -54 -9t-33 -25t-17 -38t-5 -48v-494q0 -8 -5.5 -14.5t-13.5 -6.5h-124q-8 0 -14 6.5t-6 14.5v494q0 133 69.5 196t202.5 63q125 0 192 -57.5t67 -163.5v-19q0 -23 -7.5 -44.5t-20.5 -39.5t-29 -31.5 +t-34 -21.5q48 -20 74.5 -60t26.5 -91v-21v0z" /> + <glyph glyph-name="logicalnot" unicode="&#xac;" +d="M552 198q0 -8 -5.5 -14t-13.5 -6h-85q-8 0 -13 6t-5 14v261h-317q-8 0 -14 4t-6 12v89q0 8 6 12t14 4h420q19 0 19 -16v-366v0z" /> + <glyph glyph-name="mu" unicode="&#xb5;" horiz-adv-x="612" +d="M552 49q0 -11 -6.5 -18t-24.5 -13q-34 -11 -87.5 -19t-123.5 -8q-50 0 -89 9v-171q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v722q0 8 6.5 15t14.5 7h121q8 0 14.5 -7t6.5 -15v-332q0 -52 20.5 -73.5t67.5 -21.5q24 0 44.5 1.5t35.5 5.5v420q0 8 6 15t14 7h121 +q8 0 14.5 -7t6.5 -15v-502v0z" /> + <glyph glyph-name="trademark" unicode="&#x2122;" horiz-adv-x="830" +d="M791 349q0 -10 -11 -10h-78q-11 0 -11 10v242q0 21 -3 34t-11 20t-21.5 9.5t-34.5 2.5v-308q0 -10 -11 -10h-79q-10 0 -10 10v308q-20 0 -37 -1t-33 -3v-304q0 -10 -10 -10h-78q-11 0 -11 10v355q0 19 6 25.5t22 8.5q54 5 101 7t89 2q53 0 94 -4.5t69.5 -21t43 -47.5 +t14.5 -83v-242zM320 673q0 -13 -13 -13h-82v-308q0 -13 -13 -13h-77q-13 0 -13 13v308h-84q-13 0 -13 13v57q0 13 13 13h269q13 0 13 -13v-57z" /> + <glyph glyph-name="Eth" unicode="&#xd0;" horiz-adv-x="682" +d="M631 321q0 -89 -23.5 -151.5t-65.5 -102t-100.5 -58t-129.5 -18.5q-75 0 -127 4.5t-90 11.5q-14 2 -21.5 10t-7.5 25v270h-55q-19 0 -19 19v97q0 19 19 19h55v254q0 17 7.5 25t21.5 10q39 7 90.5 11.5t126.5 4.5q71 0 129.5 -18t100.5 -58t65.5 -102.5t23.5 -151.5v-101z +M457 422q0 53 -9.5 88t-28 56t-45.5 29.5t-62 8.5h-17.5t-21 -0.5t-20 -1t-15.5 -0.5v-155h61q19 0 19 -19v-97q0 -19 -19 -19h-61v-172q6 0 15.5 -0.5t20 -0.5h21h17.5q35 0 62 8.5t45.5 29.5t28 56t9.5 88v101z" /> + <glyph glyph-name="onehalf" unicode="&#xbd;" horiz-adv-x="804" +d="M128 746q6 3 14 3h49q10 0 12.5 -5t2.5 -12v-380q0 -17 -15 -17h-71q-7 0 -12 3.5t-5 13.5v290l-53 -23q-20 -7 -20 12v62q0 9 10 13zM636 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8 +zM620 250q16 12 26 19t16 12.5t8 11t2 14.5q0 14 -10.5 20t-40.5 6q-24 0 -52 -2t-54 -5q-8 0 -12.5 5t-4.5 12v42q0 7 4.5 11t9.5 6q23 7 55 12t62 5q78 0 111.5 -27.5t33.5 -81.5q0 -35 -17 -60t-49 -47l-45 -31q-35 -24 -54.5 -41.5t-21.5 -42.5h165q7 0 12 -3.5t5 -11.5 +v-56q0 -7 -5 -12t-12 -5h-241q-7 0 -12 5t-5 12v55q0 47 22 83t54 59z" /> + <glyph glyph-name="plusminus" unicode="&#xb1;" +d="M558 346q0 -8 -6 -12t-14 -4h-155v-154q0 -8 -4 -14t-12 -6h-90q-8 0 -12 6t-4 14v154h-154q-8 0 -14 4t-6 12v90q0 8 6 12t14 4h154v155q0 8 4 14t12 6h90q8 0 12 -6t4 -14v-155h155q8 0 14 -4t6 -12v-90zM558 -4q0 -8 -6 -12t-14 -4h-431q-8 0 -14 4t-6 12v71q0 8 6 12 +t14 4h431q8 0 14 -4t6 -12v-71z" /> + <glyph glyph-name="Thorn" unicode="&#xde;" horiz-adv-x="651" +d="M618 414q0 -72 -26 -119t-68.5 -75t-96.5 -39.5t-110 -11.5q-20 0 -38.5 0.5t-39.5 1.5v-151q0 -8 -5.5 -14t-13.5 -6h-131q-8 0 -13.5 6t-5.5 14v704q0 19 19 19h131q19 0 19 -19v-59q4 0 13 0.5t19.5 0.5h21.5h20q58 0 112.5 -11t97.5 -39t69 -74.5t26 -116.5v-11z +M447 425q0 54 -33.5 75.5t-96.5 21.5h-16.5h-24t-23 -0.5t-14.5 -0.5v-207q4 0 15 -0.5t23.5 -0.5h24h15.5q65 0 97.5 23.5t32.5 77.5v11z" /> + <glyph glyph-name="onequarter" unicode="&#xbc;" horiz-adv-x="772" +d="M128 746q6 3 14 3h49q10 0 12.5 -5t2.5 -12v-380q0 -17 -15 -17h-71q-7 0 -12 3.5t-5 13.5v290l-53 -23q-20 -7 -20 12v62q0 9 10 13zM636 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8 +zM742 107q0 -7 -5 -12t-11 -5h-30v-73q0 -7 -4 -12t-12 -5h-72q-8 0 -12 5t-4 12v73h-151q-6 0 -11 5t-5 12v52q0 10 7 21l171 224q8 10 18 10h58q7 0 12 -5t5 -12v-224h30q6 0 11 -4.5t5 -12.5v-49zM595 276l-76 -103h76v103z" /> + <glyph glyph-name="divide" unicode="&#xf7;" +d="M401 552q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v112q0 8 6 14t14 6h118q8 0 14 -6t6 -14v-112zM552 346q0 -8 -6 -12t-14 -4h-419q-8 0 -14 4t-6 12v90q0 8 6 12t14 4h419q8 0 14 -4t6 -12v-90zM401 104q0 -8 -6 -13.5t-14 -5.5h-118q-8 0 -14 5.5t-6 13.5v112 +q0 8 6 14t14 6h118q8 0 14 -6t6 -14v-112z" /> + <glyph glyph-name="brokenbar" unicode="&#xa6;" horiz-adv-x="290" +d="M227 363q0 -8 -6 -14.5t-14 -6.5h-123q-8 0 -14.5 6.5t-6.5 14.5v345q0 8 6.5 14t14.5 6h123q8 0 14 -6t6 -14v-345zM227 -190q0 -8 -6 -14.5t-14 -6.5h-123q-8 0 -14.5 6.5t-6.5 14.5v345q0 8 6.5 14t14.5 6h123q8 0 14 -6t6 -14v-345z" /> + <glyph glyph-name="degree" unicode="&#xb0;" horiz-adv-x="361" +d="M334 598q0 -32 -12 -60t-32.5 -49t-48.5 -33t-60 -12t-60 12t-49 33t-33 49t-12 60t12 60t33 49t49 33t60 12t60 -12t48.5 -33t32.5 -49t12 -60zM253 598q0 30 -21.5 51.5t-50.5 21.5t-50.5 -21.5t-21.5 -51.5q0 -29 21 -50.5t51 -21.5t51 21.5t21 50.5z" /> + <glyph glyph-name="thorn" unicode="&#xfe;" horiz-adv-x="597" +d="M555 249q0 -119 -62.5 -188.5t-187.5 -69.5q-16 0 -41 3t-42 7v-176q0 -8 -5.5 -14t-13.5 -6h-122q-8 0 -14.5 6t-6.5 14v922q0 8 5.5 14t13.5 6h124q8 0 13.5 -6t5.5 -14v-171q19 2 40.5 3.5t42.5 1.5q118 0 184 -66.5t66 -191.5v-74zM393 323q0 57 -19.5 90.5 +t-68.5 33.5q-25 0 -44.5 -2t-38.5 -4v-311q17 -2 39.5 -4t43.5 -2q48 0 68 34t20 91v74z" /> + <glyph glyph-name="threequarters" unicode="&#xbe;" horiz-adv-x="835" +d="M699 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8zM805 107q0 -7 -5 -12t-11 -5h-30v-73q0 -7 -4 -12t-12 -5h-72q-8 0 -12 5t-4 12v73h-151q-6 0 -11 5t-5 12v52q0 10 7 21l171 224 +q8 10 18 10h58q7 0 12 -5t5 -12v-224h30q6 0 11 -4.5t5 -12.5v-49zM658 276l-76 -103h76v103zM306 456q0 -66 -40.5 -96t-106.5 -30q-32 0 -62 4.5t-52 10.5q-6 2 -10.5 5.5t-4.5 11.5v43q0 16 17 16q29 -2 60 -3.5t48 -1.5q26 0 36.5 10t10.5 30v10q0 15 -7 27.5t-30 12.5 +h-95q-8 0 -12 5t-4 12v46q0 16 16 16h93q23 0 31 12.5t8 28.5v8q0 15 -9 24.5t-38 9.5q-17 0 -44 -1t-53 -5q-10 -2 -18 -0.5t-8 15.5v43q0 8 4.5 11.5t10.5 5.5q21 6 50 11.5t62 5.5q69 0 108 -27t39 -90v-8q0 -23 -11.5 -46t-31.5 -37q21 -13 32 -34t11 -46v-10z" /> + <glyph glyph-name="registered" unicode="&#xae;" horiz-adv-x="598" +d="M579 484q0 -58 -22 -108.5t-60 -88.5t-89 -60t-109 -22t-108.5 22t-88.5 60t-60 88.5t-22 108.5t22 108.5t60 88.5t88.5 60t108.5 22t109 -22t89 -60t60 -88.5t22 -108.5zM528 484q0 47 -18 89t-49 73t-73 49t-89 18t-88.5 -18t-72.5 -49t-49 -73t-18 -89t18 -89t49 -73 +t72.5 -49t88.5 -18t89 18t73 49t49 73t18 89zM437 330q0 -10 -10 -10h-67q-6 0 -10 8l-63 111q-2 0 -4 3t-4 3h-26v-114q0 -11 -11 -11h-60q-11 0 -11 11v294q0 16 5.5 22t19.5 8q6 1 16.5 1.5t23.5 1.5t26 1.5t23 0.5q66 0 103 -23.5t37 -84.5v-7q0 -35 -16.5 -55.5 +t-42.5 -31.5l69 -121q2 -4 2 -7zM346 552q0 20 -12.5 29.5t-41.5 9.5h-41v-85h8t13 -0.5t12.5 -0.5h7.5q29 0 41.5 10t12.5 30v7z" /> + <glyph glyph-name="minus" unicode="&#x2212;" +d="M558 346q0 -8 -6 -12t-14 -4h-431q-8 0 -14 4t-6 12v90q0 8 6 12t14 4h431q8 0 14 -4t6 -12v-90v0z" /> + <glyph glyph-name="eth" unicode="&#xf0;" horiz-adv-x="589" +d="M545 259q0 -135 -64 -201.5t-185 -66.5q-127 0 -189.5 69.5t-62.5 198.5v31q0 135 65 201t186 66q11 0 25 -1.5t25 -7.5q-17 21 -46 42t-66 39l-71 -54q-8 -6 -13 -6q-6 0 -11 6l-27 30q-3 3 -3 8q0 9 10 16l41 31q-12 4 -24.5 8t-24.5 7q-6 2 -11 5t-5 9q0 4 1 6l25 68 +q4 11 14 11q5 0 8 -1q32 -8 60.5 -17t55.5 -20l79 60q5 4 13 4t12 -5l27 -29q4 -4 4 -8q0 -6 -10 -14l-53 -41q54 -29 94 -67.5t67 -88.5t40.5 -113.5t13.5 -143.5v-31zM384 290q0 70 -21 101t-68 31t-68.5 -31t-21.5 -101v-31q0 -70 22 -101t69 -31t67.5 31t20.5 101v31z +" /> + <glyph glyph-name="multiply" unicode="&#xd7;" +d="M537 255q0 -5 -5 -10l-63 -63q-5 -5 -10 -5q-8 0 -16 8l-120 120l-120 -120q-8 -8 -15 -8q-5 0 -10 5l-64 64q-5 5 -5 10q0 7 8 15l120 120l-120 120q-8 8 -8 15q0 5 5 10l64 64q5 5 10 5q7 0 15 -8l120 -120l120 120q8 8 16 8q5 0 10 -5l63 -63q5 -5 5 -10q0 -8 -8 -16 +l-120 -120l120 -120q8 -8 8 -16z" /> + <glyph glyph-name="copyright" unicode="&#xa9;" horiz-adv-x="750" +d="M708 374q0 -69 -26.5 -129.5t-71.5 -105.5t-106 -71t-130 -26t-129.5 26t-105.5 71t-71 105.5t-26 129.5t26 130t71 106.5t105.5 72t129.5 26.5t130 -26.5t106 -72t71.5 -106.5t26.5 -130zM656 374q0 58 -22.5 109.5t-60.5 90t-89.5 61t-109.5 22.5t-109 -22.5t-89.5 -61 +t-60.5 -90t-22 -109.5t22 -109t60.5 -89t89.5 -60t109 -22t109.5 22t89.5 60t60.5 89t22.5 109zM477 183q0 -11 -13 -14q-13 -4 -33 -6.5t-49 -2.5q-81 0 -125.5 46t-44.5 143v56q0 98 44.5 143.5t125.5 45.5q29 0 49.5 -3.5t32.5 -6.5q7 -2 10 -4t3 -8v-63q0 -12 -12 -12 +h-2q-17 2 -34.5 3.5t-46.5 1.5q-13 0 -25 -4t-21.5 -15t-15 -29.5t-5.5 -48.5v-56q0 -30 5.5 -49.5t15 -30t21.5 -14.5t25 -4q26 0 45 1.5t36 3.5h3q11 0 11 -11v-62z" /> + <glyph glyph-name="Aacute" unicode="&#xc1;" horiz-adv-x="669" +d="M650 16q0 -16 -17 -16h-140q-8 0 -13 5t-7 13l-36 164h-205l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2zM348 595q-2 8 -4 11.5 +t-9 3.5q-11 0 -14 -15l-61 -276h149zM497 936q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Acircumflex" unicode="&#xc2;" horiz-adv-x="669" +d="M650 16q0 -16 -17 -16h-140q-8 0 -13 5t-7 13l-36 164h-205l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2zM348 595q-2 8 -4 11.5 +t-9 3.5q-11 0 -14 -15l-61 -276h149zM534 802q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="Adieresis" unicode="&#xc4;" horiz-adv-x="669" +d="M650 16q0 -16 -17 -16h-140q-8 0 -13 5t-7 13l-36 164h-205l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2zM348 595q-2 8 -4 11.5 +t-9 3.5q-11 0 -14 -15l-61 -276h149zM511 821q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM294 821q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="Agrave" unicode="&#xc0;" horiz-adv-x="669" +d="M650 16q0 -16 -17 -16h-140q-8 0 -13 5t-7 13l-36 164h-205l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2zM348 595q-2 8 -4 11.5 +t-9 3.5q-11 0 -14 -15l-61 -276h149zM453 801q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="Aring" unicode="&#xc5;" horiz-adv-x="669" +d="M650 16q0 -16 -17 -16h-140q-8 0 -13 5t-7 13l-36 164h-205l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2zM348 595q-2 8 -4 11.5 +t-9 3.5q-11 0 -14 -15l-61 -276h149zM451 895q0 -24 -9 -45.5t-25 -37.5t-37.5 -25t-45.5 -9t-45.5 9t-37.5 25t-25 37.5t-9 45.5t9 45.5t25 37.5t37.5 25t45.5 9t45.5 -9t37.5 -25t25 -37.5t9 -45.5zM378 895q0 18 -13 31t-31 13t-31 -13t-13 -31t13 -31t31 -13t31 13 +t13 31z" /> + <glyph glyph-name="Atilde" unicode="&#xc3;" horiz-adv-x="669" +d="M650 16q0 -16 -17 -16h-140q-8 0 -13 5t-7 13l-36 164h-205l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2zM348 595q-2 8 -4 11.5 +t-9 3.5q-11 0 -14 -15l-61 -276h149zM535 907q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5 +q11 0 17 5.5t6 21.5v19q0 16 16 16h70q15 0 15 -16v-20z" /> + <glyph glyph-name="Ccedilla" unicode="&#xc7;" horiz-adv-x="561" +d="M520 31q0 -11 -5.5 -15.5t-16.5 -7.5q-16 -5 -56 -11t-93 -6q-57 0 -110.5 16t-94.5 53.5t-66 98.5t-25 150v126q0 89 25 150t66 98t94.5 53t110.5 16q53 0 93 -6t56 -11q11 -3 16.5 -7t5.5 -15v-97q0 -20 -19 -20h-3q-29 2 -67.5 5t-80.5 3q-26 0 -48.5 -7.5t-39.5 -27 +t-26.5 -52t-9.5 -82.5v-126q0 -50 9.5 -82.5t26.5 -52t39.5 -27t48.5 -7.5q42 0 80.5 3t67.5 5h3q19 0 19 -20v-97zM430 -42q0 -4 -4 -8l-123 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7z" /> + <glyph glyph-name="Eacute" unicode="&#xc9;" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259 +q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93zM477 937q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Ecircumflex" unicode="&#xca;" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259 +q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93zM509 802q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160 +q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="Edieresis" unicode="&#xcb;" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259 +q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93zM470 821q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM253 821q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93 +q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="Egrave" unicode="&#xc8;" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259 +q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93zM394 802q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="Iacute" unicode="&#xcd;" horiz-adv-x="311" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704zM326 937q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Icircumflex" unicode="&#xce;" horiz-adv-x="311" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704zM356 801q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3 +t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="Idieresis" unicode="&#xcf;" horiz-adv-x="311" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704zM332 821q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM115 821q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14 +t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="Igrave" unicode="&#xcc;" horiz-adv-x="311" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704zM254 802q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="Ntilde" unicode="&#xd1;" horiz-adv-x="729" +d="M659 38q0 -16 -11.5 -27t-27.5 -11h-98q-16 0 -28 5.5t-24 25.5l-228 394q-5 8 -9 8q-5 0 -5 -8v-405q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v685q0 16 11 27t27 11h101q15 0 24 -7.5t18 -23.5l237 -412q5 -8 8 -8q5 0 5 9v423q0 8 6 13.5t14 5.5h118q8 0 14 -5.5 +t6 -13.5v-686zM558 907q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5q11 0 17 5.5t6 21.5v19 +q0 16 16 16h70q15 0 15 -16v-20z" /> + <glyph glyph-name="Oacute" unicode="&#xd3;" horiz-adv-x="698" +d="M645 312q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5t-116 17.5t-94 56t-63 99.5t-23 148v119q0 87 23 148t63 99.5t94 56t116 17.5t116 -17.5t94 -56t63 -99.5t23 -148v-119zM473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40 +t30.5 131v119zM514 937q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Ocircumflex" unicode="&#xd4;" horiz-adv-x="698" +d="M645 312q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5t-116 17.5t-94 56t-63 99.5t-23 148v119q0 87 23 148t63 99.5t94 56t116 17.5t116 -17.5t94 -56t63 -99.5t23 -148v-119zM473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40 +t30.5 131v119zM544 802q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="Odieresis" unicode="&#xd6;" horiz-adv-x="698" +d="M645 312q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5t-116 17.5t-94 56t-63 99.5t-23 148v119q0 87 23 148t63 99.5t94 56t116 17.5t116 -17.5t94 -56t63 -99.5t23 -148v-119zM473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40 +t30.5 131v119zM526 821q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM309 821q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="Ograve" unicode="&#xd2;" horiz-adv-x="698" +d="M645 312q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5t-116 17.5t-94 56t-63 99.5t-23 148v119q0 87 23 148t63 99.5t94 56t116 17.5t116 -17.5t94 -56t63 -99.5t23 -148v-119zM473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40 +t30.5 131v119zM438 801q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="Otilde" unicode="&#xd5;" horiz-adv-x="698" +d="M645 312q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5t-116 17.5t-94 56t-63 99.5t-23 148v119q0 87 23 148t63 99.5t94 56t116 17.5t116 -17.5t94 -56t63 -99.5t23 -148v-119zM473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40 +t30.5 131v119zM553 908q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5q11 0 17 5.5t6 21.5v19 +q0 16 16 16h70q15 0 15 -16v-20z" /> + <glyph glyph-name="Scaron" unicode="&#x160;" horiz-adv-x="588" +d="M546 210q0 -40 -14 -79t-46.5 -70t-84.5 -50.5t-128 -19.5q-60 0 -105.5 6t-83.5 16q-8 2 -14 7t-6 13v98q0 11 5 15t13 4h3q15 -2 41.5 -4t54.5 -3.5t53.5 -3t40.5 -1.5q52 0 70.5 17t18.5 53q0 22 -13.5 37.5t-52.5 38.5l-138 82q-35 21 -57.5 43t-36 46t-19 49.5 +t-5.5 52.5q0 41 12.5 76.5t42.5 62t79 41.5t122 15q27 0 58.5 -2t60.5 -5t54 -7t39 -8q6 -2 10.5 -6t4.5 -12v-101q0 -7 -3.5 -12t-13.5 -5h-2q-11 1 -35.5 2.5t-55.5 3.5t-63.5 3.5t-57.5 1.5q-43 0 -60.5 -13t-17.5 -40q0 -11 3 -19t10.5 -15.5t20.5 -16t33 -19.5l128 -69 +q78 -42 106.5 -92t28.5 -111zM483 937q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="Uacute" unicode="&#xda;" horiz-adv-x="711" +d="M644 279q0 -86 -23 -141.5t-62 -88t-91.5 -45.5t-112.5 -13t-112.5 13t-91.5 45.5t-61.5 88t-22.5 141.5v445q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-445q0 -38 5.5 -65.5t19 -45t36 -26t56.5 -8.5t56.5 8.5t36 26t19.5 45t6 65.5v445q0 8 6 13.5t14 5.5h130 +q8 0 14.5 -5.5t6.5 -13.5v-445zM534 936q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Ucircumflex" unicode="&#xdb;" horiz-adv-x="711" +d="M644 279q0 -86 -23 -141.5t-62 -88t-91.5 -45.5t-112.5 -13t-112.5 13t-91.5 45.5t-61.5 88t-22.5 141.5v445q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-445q0 -38 5.5 -65.5t19 -45t36 -26t56.5 -8.5t56.5 8.5t36 26t19.5 45t6 65.5v445q0 8 6 13.5t14 5.5h130 +q8 0 14.5 -5.5t6.5 -13.5v-445zM554 802q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="Udieresis" unicode="&#xdc;" horiz-adv-x="711" +d="M644 279q0 -86 -23 -141.5t-62 -88t-91.5 -45.5t-112.5 -13t-112.5 13t-91.5 45.5t-61.5 88t-22.5 141.5v445q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-445q0 -38 5.5 -65.5t19 -45t36 -26t56.5 -8.5t56.5 8.5t36 26t19.5 45t6 65.5v445q0 8 6 13.5t14 5.5h130 +q8 0 14.5 -5.5t6.5 -13.5v-445zM532 821q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM315 821q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="Ugrave" unicode="&#xd9;" horiz-adv-x="711" +d="M644 279q0 -86 -23 -141.5t-62 -88t-91.5 -45.5t-112.5 -13t-112.5 13t-91.5 45.5t-61.5 88t-22.5 141.5v445q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-445q0 -38 5.5 -65.5t19 -45t36 -26t56.5 -8.5t56.5 8.5t36 26t19.5 45t6 65.5v445q0 8 6 13.5t14 5.5h130 +q8 0 14.5 -5.5t6.5 -13.5v-445zM460 801q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="Yacute" unicode="&#xdd;" horiz-adv-x="647" +d="M626 728q0 -5 -1 -7l-151 -346q-15 -35 -31 -52t-34 -25v-278q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v278q-18 8 -34.5 25t-31.5 52l-151 346q-1 2 -1 7q0 6 4 10.5t12 4.5h144q8 0 13 -5t7 -12l108 -282q4 -10 7 -12.5t8 -2.5t8 2.5t7 12.5l108 282q2 7 7 12t13 5 +h144q8 0 12 -4.5t4 -10.5zM509 936q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Ydieresis" unicode="&#x178;" horiz-adv-x="647" +d="M626 728q0 -5 -1 -7l-151 -346q-15 -35 -31 -52t-34 -25v-278q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v278q-18 8 -34.5 25t-31.5 52l-151 346q-1 2 -1 7q0 6 4 10.5t12 4.5h144q8 0 13 -5t7 -12l108 -282q4 -10 7 -12.5t8 -2.5t8 2.5t7 12.5l108 282q2 7 7 12t13 5 +h144q8 0 12 -4.5t4 -10.5zM500 818q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM283 818q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="Zcaron" unicode="&#x17d;" horiz-adv-x="615" +d="M565 20q0 -8 -6 -14t-14 -6h-454q-17 0 -29 7t-12 24v80q0 11 3 20.5t12 23.5l279 422q4 5 4 10q0 8 -11 8h-249q-8 0 -14 5.5t-6 13.5v110q0 8 6 13.5t14 5.5h431q16 0 28 -7t12 -21v-7q0 -3 0.5 -7.5t0.5 -9.5q0 -11 -0.5 -22.5t-0.5 -21.5v-23q0 -13 -8 -26l-282 -432 +q-5 -7 -5 -11q0 -7 11 -7h270q8 0 14 -5t6 -13v-110zM515 936q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="aacute" unicode="&#xe1;" horiz-adv-x="562" +d="M502 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v16q-29 -21 -61.5 -33t-77.5 -12q-33 0 -63.5 8.5t-54.5 28.5t-38.5 53t-14.5 82v9q0 88 58.5 128.5t187.5 40.5h54v36q0 43 -20 56t-55 13q-24 0 -48.5 -0.5t-47 -1.5t-40.5 -2.5l-30 -2.5h-5q-8 0 -13 4t-5 14v81 +q0 17 19 22q28 7 75.5 14t97.5 7q54 0 97.5 -11.5t73.5 -36t46.5 -63t16.5 -93.5v-357zM343 245h-57q-26 0 -43 -4.5t-27 -13.5t-14 -23t-4 -32v-9q0 -32 15.5 -41t47.5 -9q23 0 43.5 6.5t38.5 15.5v110zM465 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7 +q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="acircumflex" unicode="&#xe2;" horiz-adv-x="562" +d="M502 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v16q-29 -21 -61.5 -33t-77.5 -12q-33 0 -63.5 8.5t-54.5 28.5t-38.5 53t-14.5 82v9q0 88 58.5 128.5t187.5 40.5h54v36q0 43 -20 56t-55 13q-24 0 -48.5 -0.5t-47 -1.5t-40.5 -2.5l-30 -2.5h-5q-8 0 -13 4t-5 14v81 +q0 17 19 22q28 7 75.5 14t97.5 7q54 0 97.5 -11.5t73.5 -36t46.5 -63t16.5 -93.5v-357zM343 245h-57q-26 0 -43 -4.5t-27 -13.5t-14 -23t-4 -32v-9q0 -32 15.5 -41t47.5 -9q23 0 43.5 6.5t38.5 15.5v110zM485 637q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70 +q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="adieresis" unicode="&#xe4;" horiz-adv-x="562" +d="M502 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v16q-29 -21 -61.5 -33t-77.5 -12q-33 0 -63.5 8.5t-54.5 28.5t-38.5 53t-14.5 82v9q0 88 58.5 128.5t187.5 40.5h54v36q0 43 -20 56t-55 13q-24 0 -48.5 -0.5t-47 -1.5t-40.5 -2.5l-30 -2.5h-5q-8 0 -13 4t-5 14v81 +q0 17 19 22q28 7 75.5 14t97.5 7q54 0 97.5 -11.5t73.5 -36t46.5 -63t16.5 -93.5v-357zM343 245h-57q-26 0 -43 -4.5t-27 -13.5t-14 -23t-4 -32v-9q0 -32 15.5 -41t47.5 -9q23 0 43.5 6.5t38.5 15.5v110zM464 660q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93 +q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM247 660q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="agrave" unicode="&#xe0;" horiz-adv-x="562" +d="M502 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v16q-29 -21 -61.5 -33t-77.5 -12q-33 0 -63.5 8.5t-54.5 28.5t-38.5 53t-14.5 82v9q0 88 58.5 128.5t187.5 40.5h54v36q0 43 -20 56t-55 13q-24 0 -48.5 -0.5t-47 -1.5t-40.5 -2.5l-30 -2.5h-5q-8 0 -13 4t-5 14v81 +q0 17 19 22q28 7 75.5 14t97.5 7q54 0 97.5 -11.5t73.5 -36t46.5 -63t16.5 -93.5v-357zM343 245h-57q-26 0 -43 -4.5t-27 -13.5t-14 -23t-4 -32v-9q0 -32 15.5 -41t47.5 -9q23 0 43.5 6.5t38.5 15.5v110zM366 637q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8 +q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="aring" unicode="&#xe5;" horiz-adv-x="562" +d="M502 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v16q-29 -21 -61.5 -33t-77.5 -12q-33 0 -63.5 8.5t-54.5 28.5t-38.5 53t-14.5 82v9q0 88 58.5 128.5t187.5 40.5h54v36q0 43 -20 56t-55 13q-24 0 -48.5 -0.5t-47 -1.5t-40.5 -2.5l-30 -2.5h-5q-8 0 -13 4t-5 14v81 +q0 17 19 22q28 7 75.5 14t97.5 7q54 0 97.5 -11.5t73.5 -36t46.5 -63t16.5 -93.5v-357zM343 245h-57q-26 0 -43 -4.5t-27 -13.5t-14 -23t-4 -32v-9q0 -32 15.5 -41t47.5 -9q23 0 43.5 6.5t38.5 15.5v110zM400 741q0 -24 -9 -45.5t-25 -37.5t-37.5 -25t-45.5 -9t-45.5 9 +t-37.5 25t-25 37.5t-9 45.5t9 45.5t25 37.5t37.5 25t45.5 9t45.5 -9t37.5 -25t25 -37.5t9 -45.5zM327 741q0 18 -13 31t-31 13t-31 -13t-13 -31t13 -31t31 -13t31 13t13 31z" /> + <glyph glyph-name="atilde" unicode="&#xe3;" horiz-adv-x="562" +d="M502 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v16q-29 -21 -61.5 -33t-77.5 -12q-33 0 -63.5 8.5t-54.5 28.5t-38.5 53t-14.5 82v9q0 88 58.5 128.5t187.5 40.5h54v36q0 43 -20 56t-55 13q-24 0 -48.5 -0.5t-47 -1.5t-40.5 -2.5l-30 -2.5h-5q-8 0 -13 4t-5 14v81 +q0 17 19 22q28 7 75.5 14t97.5 7q54 0 97.5 -11.5t73.5 -36t46.5 -63t16.5 -93.5v-357zM343 245h-57q-26 0 -43 -4.5t-27 -13.5t-14 -23t-4 -32v-9q0 -32 15.5 -41t47.5 -9q23 0 43.5 6.5t38.5 15.5v110zM489 746q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29 +q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5q11 0 17 5.5t6 21.5v19q0 16 16 16h70q15 0 15 -16v-20z" /> + <glyph glyph-name="ccedilla" unicode="&#xe7;" horiz-adv-x="474" +d="M432 29q0 -11 -5 -15.5t-16 -7.5q-21 -5 -54.5 -10t-78.5 -5q-106 0 -169.5 65t-63.5 188v84q0 123 63.5 188t169.5 65q45 0 78.5 -5t54.5 -10q11 -3 16 -7.5t5 -15.5v-89q0 -8 -5.5 -12.5t-13.5 -4.5h-2q-28 3 -53.5 5t-68.5 2q-17 0 -32 -5.5t-26 -19t-17.5 -36 +t-6.5 -55.5v-84q0 -33 6.5 -55.5t17.5 -36t26 -19t32 -5.5q43 0 68.5 2t53.5 5h2q8 0 13.5 -4.5t5.5 -12.5v-89zM345 -42q0 -4 -4 -8l-123 -122l-10.5 -9t-13.5 -3h-107q-10 0 -10 7q0 3 5 10l93 117q6 8 11 11.5t16 3.5h132q11 0 11 -7z" /> + <glyph glyph-name="eacute" unicode="&#xe9;" horiz-adv-x="590" +d="M545 260q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5 +q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM387 340q0 56 -24 83.5t-66 27.5t-67 -28t-25 -83v-4h182v4zM469 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="ecircumflex" unicode="&#xea;" horiz-adv-x="590" +d="M545 260q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5 +q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM387 340q0 56 -24 83.5t-66 27.5t-67 -28t-25 -83v-4h182v4zM494 637q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160 +q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="edieresis" unicode="&#xeb;" horiz-adv-x="590" +d="M545 260q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5 +q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM387 340q0 56 -24 83.5t-66 27.5t-67 -28t-25 -83v-4h182v4zM470 658q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM253 658q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14 +v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="egrave" unicode="&#xe8;" horiz-adv-x="590" +d="M545 260q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5 +q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM387 340q0 56 -24 83.5t-66 27.5t-67 -28t-25 -83v-4h182v4zM407 637q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="iacute" unicode="&#xed;" horiz-adv-x="290" +d="M329 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-10 0 -10 7q0 3 5 10l93 117q6 8 11 11.5t16 3.5h131q11 0 11 -7zM226 21q0 -8 -6.5 -14.5t-14.5 -6.5h-120q-8 0 -14.5 6.5t-6.5 14.5v531q0 8 6.5 14.5t14.5 6.5h120q8 0 14.5 -6.5t6.5 -14.5v-531z" /> + <glyph glyph-name="icircumflex" unicode="&#xee;" horiz-adv-x="290" +d="M226 21q0 -8 -6.5 -14.5t-14.5 -6.5h-120q-8 0 -14.5 6.5t-6.5 14.5v531q0 8 6.5 14.5t14.5 6.5h120q8 0 14.5 -6.5t6.5 -14.5v-531zM345 637q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117 +q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="idieresis" unicode="&#xef;" horiz-adv-x="290" +d="M226 21q0 -8 -6.5 -14.5t-14.5 -6.5h-120q-8 0 -14.5 6.5t-6.5 14.5v531q0 8 6.5 14.5t14.5 6.5h120q8 0 14.5 -6.5t6.5 -14.5v-531zM323 658q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM106 658q0 -8 -6.5 -14 +t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="igrave" unicode="&#xec;" horiz-adv-x="290" +d="M233 637q0 -7 -10 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 16 -3.5t11 -11.5l92 -117q5 -7 5 -10zM226 21q0 -8 -6.5 -14.5t-14.5 -6.5h-120q-8 0 -14.5 6.5t-6.5 14.5v531q0 8 6.5 14.5t14.5 6.5h120q8 0 14.5 -6.5t6.5 -14.5v-531z" /> + <glyph glyph-name="ntilde" unicode="&#xf1;" horiz-adv-x="612" +d="M552 21q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14t14 6h112q8 0 14 -6t6 -14v-24q41 29 78 40.5t85 11.5 +q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333zM503 746q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13 +t17.5 -5q11 0 17 5.5t6 21.5v19q0 16 16 16h70q15 0 15 -16v-20z" /> + <glyph glyph-name="oacute" unicode="&#xf3;" horiz-adv-x="589" +d="M545 251q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5t-107.5 18.5t-78.5 52t-48.5 81.5t-16.5 108v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5t107.5 -18.5t78 -52t48 -81.5t16.5 -108v-70zM384 321q0 122 -89 122q-44 0 -67 -30.5t-23 -91.5v-70 +q0 -61 23 -92t67 -31q89 0 89 123v70zM465 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="ocircumflex" unicode="&#xf4;" horiz-adv-x="589" +d="M545 251q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5t-107.5 18.5t-78.5 52t-48.5 81.5t-16.5 108v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5t107.5 -18.5t78 -52t48 -81.5t16.5 -108v-70zM384 321q0 122 -89 122q-44 0 -67 -30.5t-23 -91.5v-70 +q0 -61 23 -92t67 -31q89 0 89 123v70zM493 637q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="odieresis" unicode="&#xf6;" horiz-adv-x="589" +d="M545 251q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5t-107.5 18.5t-78.5 52t-48.5 81.5t-16.5 108v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5t107.5 -18.5t78 -52t48 -81.5t16.5 -108v-70zM384 321q0 122 -89 122q-44 0 -67 -30.5t-23 -91.5v-70 +q0 -61 23 -92t67 -31q89 0 89 123v70zM470 658q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM253 658q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="ograve" unicode="&#xf2;" horiz-adv-x="589" +d="M545 251q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5t-107.5 18.5t-78.5 52t-48.5 81.5t-16.5 108v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5t107.5 -18.5t78 -52t48 -81.5t16.5 -108v-70zM384 321q0 122 -89 122q-44 0 -67 -30.5t-23 -91.5v-70 +q0 -61 23 -92t67 -31q89 0 89 123v70zM386 637q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="otilde" unicode="&#xf5;" horiz-adv-x="589" +d="M545 251q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5t-107.5 18.5t-78.5 52t-48.5 81.5t-16.5 108v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5t107.5 -18.5t78 -52t48 -81.5t16.5 -108v-70zM384 321q0 122 -89 122q-44 0 -67 -30.5t-23 -91.5v-70 +q0 -61 23 -92t67 -31q89 0 89 123v70zM493 746q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5 +q11 0 17 5.5t6 21.5v19q0 16 16 16h70q15 0 15 -16v-20z" /> + <glyph glyph-name="scaron" unicode="&#x161;" horiz-adv-x="503" +d="M461 159q0 -35 -13 -66t-39.5 -53.5t-66.5 -35.5t-95 -13q-21 0 -44.5 1.5t-48 4.5t-47.5 7t-42 9t-19 23v81q0 8 5 13.5t14 5.5h4q20 -3 44.5 -5.5t48.5 -4.5t44.5 -3t32.5 -1q36 0 47.5 9.5t11.5 29.5q0 11 -8 20.5t-29 21.5l-130 75q-42 24 -65.5 61.5t-23.5 86.5 +q0 76 50.5 115.5t154.5 39.5q59 0 99.5 -6.5t78.5 -16.5q19 -5 19 -23v-81q0 -19 -17 -19h-3q-11 1 -31 3.5t-43.5 4.5t-48 3.5t-43.5 1.5q-29 0 -41 -6t-12 -23q0 -11 8 -18.5t23 -16.5l124 -71q31 -18 50.5 -36.5t31 -38t15.5 -39.5t4 -40zM451 772q0 -5 -4 -10l-89 -117 +q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="uacute" unicode="&#xfa;" horiz-adv-x="612" +d="M552 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v24q-41 -29 -78 -40.5t-85 -11.5q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v333q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-333q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v394q0 8 6 14.5 +t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532zM489 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="ucircumflex" unicode="&#xfb;" horiz-adv-x="612" +d="M552 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v24q-41 -29 -78 -40.5t-85 -11.5q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v333q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-333q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v394q0 8 6 14.5 +t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532zM504 637q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="udieresis" unicode="&#xfc;" horiz-adv-x="612" +d="M552 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v24q-41 -29 -78 -40.5t-85 -11.5q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v333q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-333q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v394q0 8 6 14.5 +t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532zM483 658q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM266 658q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="ugrave" unicode="&#xf9;" horiz-adv-x="612" +d="M552 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v24q-41 -29 -78 -40.5t-85 -11.5q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v333q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-333q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v394q0 8 6 14.5 +t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532zM397 637q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="yacute" unicode="&#xfd;" horiz-adv-x="592" +d="M570 555q0 -2 -0.5 -2.5t-0.5 -2.5l-168 -589q-12 -41 -27 -71.5t-39 -50.5t-61 -30.5t-92 -10.5q-14 0 -31 1.5t-34 3.5t-32 5t-24 6q-8 3 -14.5 6.5t-6.5 11.5v81q0 8 6 13.5t14 5.5h2q12 -1 28.5 -2t34 -2.5t34 -2.5t28.5 -1q27 0 42 11t24 41l9 31h-15 +q-14 0 -26.5 2.5t-24.5 11.5t-22.5 27.5t-19.5 51.5l-132 450q-1 3 -1 7q0 16 20 16h133q8 0 12.5 -5.5t6.5 -13.5l90 -376q4 -19 12 -19h1h4h4l93 395q2 8 7.5 13.5t13.5 5.5h133q8 0 13.5 -5t5.5 -13zM489 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7 +q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="ydieresis" unicode="&#xff;" horiz-adv-x="592" +d="M570 555q0 -2 -0.5 -2.5t-0.5 -2.5l-168 -589q-12 -41 -27 -71.5t-39 -50.5t-61 -30.5t-92 -10.5q-14 0 -31 1.5t-34 3.5t-32 5t-24 6q-8 3 -14.5 6.5t-6.5 11.5v81q0 8 6 13.5t14 5.5h2q12 -1 28.5 -2t34 -2.5t34 -2.5t28.5 -1q27 0 42 11t24 41l9 31h-15 +q-14 0 -26.5 2.5t-24.5 11.5t-22.5 27.5t-19.5 51.5l-132 450q-1 3 -1 7q0 16 20 16h133q8 0 12.5 -5.5t6.5 -13.5l90 -376q4 -19 12 -19h1h4h4l93 395q2 8 7.5 13.5t13.5 5.5h133q8 0 13.5 -5t5.5 -13zM476 658q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14 +t14.5 6h94q8 0 15 -6t7 -14v-93zM259 658q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="zcaron" unicode="&#x17e;" horiz-adv-x="515" +d="M472 20q0 -8 -6 -14t-14 -6h-375q-14 0 -24 9.5t-10 23.5v64q0 11 3 19t11 19l217 296q3 4 3 7q0 5 -7 5h-201q-17 0 -17 16v94q0 8 6 14t14 6h365q14 0 23.5 -10t9.5 -24v-74q0 -8 -2 -16.5t-9 -18.5l-207 -283q-3 -5 -3 -7q0 -4 7 -4h198q8 0 13 -4t5 -12v-100z +M468 772q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="oneeighth" unicode="&#x215b;" horiz-adv-x="814" +d="M128 746q6 3 14 3h49q10 0 12.5 -5t2.5 -12v-380q0 -17 -15 -17h-71q-7 0 -12 3.5t-5 13.5v290l-53 -23q-20 -7 -20 12v62q0 9 10 13zM636 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8 +zM784 121q0 -63 -41 -94.5t-108 -31.5h-6q-66 0 -107 31.5t-41 94.5v7q0 26 11 48.5t30 37.5q-39 31 -39 82v6q0 60 39.5 88.5t106.5 28.5h6q67 0 107.5 -28.5t40.5 -88.5v-6q0 -50 -41 -82q19 -15 30.5 -37.5t11.5 -48.5v-7zM683 129q0 17 -9.5 31.5t-32.5 14.5h-17 +q-23 0 -33 -14.5t-10 -31.5v-5q0 -22 12.5 -35.5t35.5 -13.5h6q24 0 36 13.5t12 35.5v5zM629 339q-26 0 -37 -12.5t-11 -33.5q0 -19 10.5 -30t32.5 -11h17q22 0 32.5 11t10.5 30q0 21 -11 33.5t-37 12.5h-7z" /> + <glyph glyph-name="threeeighths" unicode="&#x215c;" horiz-adv-x="887" +d="M709 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8zM857 121q0 -63 -41 -94.5t-108 -31.5h-6q-66 0 -107 31.5t-41 94.5v7q0 26 11 48.5t30 37.5q-39 31 -39 82v6q0 60 39.5 88.5 +t106.5 28.5h6q67 0 107.5 -28.5t40.5 -88.5v-6q0 -50 -41 -82q19 -15 30.5 -37.5t11.5 -48.5v-7zM756 129q0 17 -9.5 31.5t-32.5 14.5h-17q-23 0 -33 -14.5t-10 -31.5v-5q0 -22 12.5 -35.5t35.5 -13.5h6q24 0 36 13.5t12 35.5v5zM702 339q-26 0 -37 -12.5t-11 -33.5 +q0 -19 10.5 -30t32.5 -11h17q22 0 32.5 11t10.5 30q0 21 -11 33.5t-37 12.5h-7zM306 456q0 -66 -40.5 -96t-106.5 -30q-32 0 -62 4.5t-52 10.5q-6 2 -10.5 5.5t-4.5 11.5v43q0 16 17 16q29 -2 60 -3.5t48 -1.5q26 0 36.5 10t10.5 30v10q0 15 -7 27.5t-30 12.5h-95 +q-8 0 -12 5t-4 12v46q0 16 16 16h93q23 0 31 12.5t8 28.5v8q0 15 -9 24.5t-38 9.5q-17 0 -44 -1t-53 -5q-10 -2 -18 -0.5t-8 15.5v43q0 8 4.5 11.5t10.5 5.5q21 6 50 11.5t62 5.5q69 0 108 -27t39 -90v-8q0 -23 -11.5 -46t-31.5 -37q21 -13 32 -34t11 -46v-10z" /> + <glyph glyph-name="fiveeighths" unicode="&#x215d;" horiz-adv-x="887" +d="M709 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8zM857 121q0 -63 -41 -94.5t-108 -31.5h-6q-66 0 -107 31.5t-41 94.5v7q0 26 11 48.5t30 37.5q-39 31 -39 82v6q0 60 39.5 88.5 +t106.5 28.5h6q67 0 107.5 -28.5t40.5 -88.5v-6q0 -50 -41 -82q19 -15 30.5 -37.5t11.5 -48.5v-7zM756 129q0 17 -9.5 31.5t-32.5 14.5h-17q-23 0 -33 -14.5t-10 -31.5v-5q0 -22 12.5 -35.5t35.5 -13.5h6q24 0 36 13.5t12 35.5v5zM702 339q-26 0 -37 -12.5t-11 -33.5 +q0 -19 10.5 -30t32.5 -11h17q22 0 32.5 11t10.5 30q0 21 -11 33.5t-37 12.5h-7zM306 469q0 -68 -38.5 -103.5t-113.5 -35.5q-26 0 -55.5 4t-53.5 12q-5 2 -10 5.5t-5 12.5v43q0 8 5 11.5t13 3.5q26 -2 54 -4t42 -2q36 0 46.5 13.5t10.5 39.5v4q0 24 -14 34t-56 10h-85 +q-5 0 -9 4.5t-4 9.5l17 201q0 7 5 12t12 5h210q7 0 12 -5t5 -12v-54q0 -8 -5 -12t-12 -4h-141q-2 -14 -3.5 -30.5t-3.5 -32.5h10q37 0 67.5 -6t52.5 -20t34.5 -38.5t12.5 -61.5v-4z" /> + <glyph glyph-name="seveneighths" unicode="&#x215e;" horiz-adv-x="815" +d="M637 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8zM785 121q0 -63 -41 -94.5t-108 -31.5h-6q-66 0 -107 31.5t-41 94.5v7q0 26 11 48.5t30 37.5q-39 31 -39 82v6q0 60 39.5 88.5 +t106.5 28.5h6q67 0 107.5 -28.5t40.5 -88.5v-6q0 -50 -41 -82q19 -15 30.5 -37.5t11.5 -48.5v-7zM684 129q0 17 -9.5 31.5t-32.5 14.5h-17q-23 0 -33 -14.5t-10 -31.5v-5q0 -22 12.5 -35.5t35.5 -13.5h6q24 0 36 13.5t12 35.5v5zM630 339q-26 0 -37 -12.5t-11 -33.5 +q0 -19 10.5 -30t32.5 -11h17q22 0 32.5 11t10.5 30q0 21 -11 33.5t-37 12.5h-7zM154 349q-7 -14 -17 -14h-75q-11 0 -14.5 6t0.5 14l146 307h-146q-7 0 -12.5 4t-5.5 12v54q0 7 5.5 12t12.5 5h234q10 0 17.5 -7.5t7.5 -16.5v-31q0 -12 -1.5 -17t-5.5 -14z" /> + <glyph glyph-name="onethird" unicode="&#x2153;" horiz-adv-x="803" +d="M128 746q6 3 14 3h49q10 0 12.5 -5t2.5 -12v-380q0 -17 -15 -17h-71q-7 0 -12 3.5t-5 13.5v290l-53 -23q-20 -7 -20 12v62q0 9 10 13zM636 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8 +zM773 121q0 -66 -40.5 -96t-106.5 -30q-32 0 -62 4.5t-52 10.5q-6 2 -10.5 5.5t-4.5 11.5v43q0 16 17 16q29 -2 60 -3.5t48 -1.5q26 0 36.5 10t10.5 30v10q0 15 -7 27.5t-30 12.5h-95q-8 0 -12 5t-4 12v46q0 16 16 16h93q23 0 31 12.5t8 28.5v8q0 15 -9 24.5t-38 9.5 +q-17 0 -44 -1t-53 -5q-10 -2 -18 -0.5t-8 15.5v43q0 8 4.5 11.5t10.5 5.5q21 6 50 11.5t62 5.5q69 0 108 -27t39 -90v-8q0 -23 -11.5 -46t-31.5 -37q21 -13 32 -34t11 -46v-10z" /> + <glyph glyph-name="twothirds" unicode="&#x2154;" horiz-adv-x="889" +d="M722 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8zM859 121q0 -66 -40.5 -96t-106.5 -30q-32 0 -62 4.5t-52 10.5q-6 2 -10.5 5.5t-4.5 11.5v43q0 16 17 16q29 -2 60 -3.5t48 -1.5 +q26 0 36.5 10t10.5 30v10q0 15 -7 27.5t-30 12.5h-95q-8 0 -12 5t-4 12v46q0 16 16 16h93q23 0 31 12.5t8 28.5v8q0 15 -9 24.5t-38 9.5q-17 0 -44 -1t-53 -5q-10 -2 -18 -0.5t-8 15.5v43q0 8 4.5 11.5t10.5 5.5q21 6 50 11.5t62 5.5q69 0 108 -27t39 -90v-8 +q0 -23 -11.5 -46t-31.5 -37q21 -13 32 -34t11 -46v-10zM156 585q16 12 26 19t16 12.5t8 11t2 14.5q0 14 -10.5 20t-40.5 6q-24 0 -52 -2t-54 -5q-8 0 -12.5 5t-4.5 12v42q0 7 4.5 11t9.5 6q23 7 55 12t62 5q78 0 111.5 -27.5t33.5 -81.5q0 -35 -17 -60t-49 -47l-45 -31 +q-35 -24 -54.5 -41.5t-21.5 -42.5h165q7 0 12 -3.5t5 -11.5v-56q0 -7 -5 -12t-12 -5h-241q-7 0 -12 5t-5 12v55q0 47 22 83t54 59z" /> + <glyph glyph-name="zero.oldstyle" unicode="&#xf730;" +d="M592 298q0 -158 -71 -232.5t-199 -74.5t-198.5 74.5t-70.5 232.5v6q0 158 70.5 233t198.5 75t199 -75t71 -233v-6zM421 304q0 52 -7.5 84.5t-21 50.5t-31.5 24.5t-39 6.5t-39 -6.5t-31 -24.5t-20.5 -50.5t-7.5 -84.5v-6q0 -52 7.5 -84t20.5 -50t31 -24.5t39 -6.5t39 6.5 +t31.5 24.5t21 50t7.5 84v6z" /> + <glyph glyph-name="one.oldstyle" unicode="&#xf731;" horiz-adv-x="439" +d="M342 20q0 -8 -5.5 -14t-13.5 -6h-131q-8 0 -14 6t-6 14v405l-112 -46q-8 -3 -12 -3q-11 0 -11 13v114q0 10 10 14l163 75q9 4 23 4h90q19 0 19 -19v-557v0z" /> + <glyph glyph-name="two.oldstyle" unicode="&#xf732;" +d="M570 434q0 -62 -36 -108t-124 -82q-79 -33 -117 -54t-38 -44v-4h286q8 0 14 -5.5t6 -13.5v-103q0 -8 -6 -14t-14 -6h-445q-8 0 -14 6t-6 14v70q0 58 14 98t39.5 68.5t60 48.5t75.5 37q42 18 69.5 30t43.5 21.5t22 18.5t6 22q0 25 -22.5 34t-83.5 9q-46 0 -98.5 -4 +t-98.5 -9h-2q-8 0 -13 6t-5 14v78q0 8 5.5 12.5t13.5 6.5q42 13 99.5 22t113.5 9q69 0 117.5 -10t79 -32t44.5 -55.5t14 -80.5z" /> + <glyph glyph-name="three.oldstyle" unicode="&#xf733;" +d="M566 72q0 -57 -19 -99t-53.5 -69t-82.5 -40t-106 -13q-59 0 -113.5 8t-93.5 20q-8 2 -13.5 6.5t-5.5 12.5v80q0 9 4 14.5t16 3.5q53 -5 105.5 -7t93.5 -2q54 0 76.5 21.5t22.5 63.5v18q0 17 -3.5 32.5t-12.5 27.5t-25 19t-40 7h-176q-8 0 -13.5 6t-5.5 14v85q0 19 19 19 +h172q24 0 40.5 7.5t26.5 19.5t14 27.5t4 32.5v14q0 34 -20.5 54.5t-78.5 20.5q-26 0 -49.5 -1t-47 -3t-48 -4t-52.5 -4q-20 -1 -20 18v80q0 8 6 12.5t14 6.5q39 12 92 21.5t112 9.5q61 0 109.5 -11t82 -35.5t51.5 -63.5t18 -95v-14q0 -44 -24.5 -87t-64.5 -66 +q42 -22 65.5 -61.5t23.5 -88.5v-18v0z" /> + <glyph glyph-name="four.oldstyle" unicode="&#xf734;" +d="M606 40q0 -8 -6 -14t-14 -6h-66v-147q0 -8 -5.5 -14t-13.5 -6h-133q-8 0 -13.5 6t-5.5 14v147h-289q-8 0 -14 6t-6 14v97q0 15 11 31l316 414q5 7 11 10.5t15 3.5h107q12 0 16 -6t4 -14v-424h66q8 0 14 -6t6 -14v-92zM354 372q0 6 -4 6q-1 0 -3 -2l-157 -214q-2 -2 -2 -6 +t6 -4h160v220z" /> + <glyph glyph-name="five.oldstyle" unicode="&#xf735;" +d="M566 89q0 -119 -69 -182t-201 -63q-48 0 -100.5 7.5t-96.5 21.5q-8 2 -14 6.5t-6 15.5v79q0 8 5 13t13 5h2q24 -3 49.5 -5t50 -3.5t45.5 -2.5t35 -1q36 0 58 7.5t35 21.5t17.5 34t4.5 46v8q0 25 -6.5 42.5t-23 28.5t-43.5 16t-69 5h-155q-6 0 -10 4.5t-4 9.5v1l31 373 +q1 8 6.5 13.5t13.5 5.5h389q8 0 14 -5.5t6 -13.5v-100q0 -8 -6 -13.5t-14 -5.5h-272l-12 -138h29q65 0 119.5 -10.5t94.5 -36t62 -68.5t22 -108v-8v0z" /> + <glyph glyph-name="six.oldstyle" unicode="&#xf736;" +d="M589 245q0 -57 -17 -104t-50.5 -80t-83 -51.5t-113.5 -18.5q-60 0 -109.5 18t-85 54.5t-54.5 91.5t-19 130v153q0 85 19.5 144.5t55.5 97t87.5 55t115.5 17.5q68 0 117 -6t80 -14q22 -6 22 -22v-87q0 -21 -18 -21h-5q-18 3 -40.5 5.5t-46.5 4.5t-48.5 3t-46.5 1 +q-66 0 -95.5 -31.5t-29.5 -114.5v-7q20 4 53 8t65 4q51 0 95.5 -11.5t78.5 -38t53.5 -69t19.5 -104.5v-7zM422 252q0 31 -8.5 51t-23 32t-34 16.5t-41.5 4.5q-10 0 -22 -1t-24.5 -2.5t-24 -3.5t-20.5 -3v-61q0 -51 7.5 -83t21 -50t32 -24.5t40.5 -6.5q21 0 38.5 5.5 +t30.5 19.5t20.5 38t7.5 61v7z" /> + <glyph glyph-name="seven.oldstyle" unicode="&#xf737;" horiz-adv-x="588" +d="M534 491q0 -10 -4.5 -21t-11.5 -25l-263 -572q-9 -19 -25 -19h-137q-18 0 -18 12q0 5 3 11l272 571q1 2 1 5q0 6 -7 6h-277q-8 0 -14.5 5.5t-6.5 13.5v100q0 8 6.5 13.5t14.5 5.5h433q14 0 24 -9.5t10 -23.5v-73v0z" /> + <glyph glyph-name="eight.oldstyle" unicode="&#xf738;" +d="M593 213q0 -54 -19.5 -95.5t-54.5 -69.5t-83.5 -42.5t-107.5 -14.5h-11q-59 0 -107.5 14.5t-83.5 42.5t-54.5 69.5t-19.5 95.5v13q0 50 23.5 91t61.5 69q-81 55 -81 150v11q0 52 18.5 91t52.5 64t82.5 37.5t107.5 12.5h11q59 0 107.5 -12.5t83 -37.5t53 -64t18.5 -91v-11 +q0 -94 -82 -150q38 -28 61.5 -69t23.5 -91v-13zM429 536q0 40 -23 65.5t-78 25.5h-11q-55 0 -78 -25.5t-23 -65.5v-5q0 -38 22 -62.5t69 -24.5h31q47 0 69 24.5t22 62.5v5zM428 228q0 17 -5 34.5t-15.5 31t-27.5 22t-42 8.5h-31q-25 0 -42 -8.5t-27.5 -22t-15.5 -31 +t-5 -34.5v-10q0 -44 25 -72.5t75 -28.5h11q50 0 75 28.5t25 72.5v10z" /> + <glyph glyph-name="nine.oldstyle" unicode="&#xf739;" +d="M589 166q0 -85 -19.5 -144.5t-55.5 -97t-87.5 -55t-115.5 -17.5q-68 0 -117 6t-80 14q-22 5 -22 22v87q0 15 5.5 19t17.5 2l40.5 -4.5t46.5 -4.5t48.5 -3.5t46.5 -1.5q66 0 95.5 31.5t29.5 114.5v7q-20 -4 -53 -8t-65 -4q-51 0 -95.5 11.5t-78.5 37.5t-53.5 69t-19.5 105 +v7q0 57 17 104t50.5 80t82.5 51.5t114 18.5q60 0 109.5 -18t85 -54.5t54.5 -91.5t19 -130v-153zM422 319q0 51 -7.5 83t-21 50t-32 24.5t-40.5 6.5q-21 0 -38.5 -5.5t-30.5 -19.5t-20.5 -38t-7.5 -61v-7q0 -31 8.5 -51t23 -32t34 -16.5t41.5 -4.5q10 0 22 1t24.5 2.5t24 3 +t20.5 3.5v61z" /> + <glyph glyph-name="uni2014.alt" unicode="&#xe009;" horiz-adv-x="599" +d="M549 251q0 -8 -6 -13.5t-14 -5.5h-460q-19 0 -19 19v79q0 8 5.5 14t13.5 6h460q8 0 14 -6t6 -14v-79v0z" /> + <glyph glyph-name="a.superior" unicode="&#xf6e9;" horiz-adv-x="318" +d="M282 355q0 -6 -4.5 -10.5t-10.5 -4.5h-61q-8 0 -11 4.5t-3 10.5v1q-32 -21 -73 -21q-18 0 -35.5 5t-31 16.5t-22 30t-8.5 46.5v5q0 50 33 73t105 23h26v15q0 21 -10 27t-27 6q-26 0 -52 -1t-41 -3q-14 0 -14 14v45q0 12 13 15q16 4 41.5 8t53.5 4q61 0 96.5 -26t35.5 -89 +v-194zM188 473h-28q-26 0 -35 -8.5t-9 -26.5v-5q0 -14 8 -19t20 -5q11 0 23.5 3.5t20.5 7.5v53z" /> + <glyph glyph-name="b.superior" unicode="&#xf6ea;" horiz-adv-x="338" +d="M313 478q0 -69 -35.5 -106t-104.5 -37q-32 0 -63 4.5t-54 9.5q-13 3 -16 7.5t-3 12.5v381q0 6 4.5 10.5t10.5 4.5h66q6 0 10 -4.5t4 -10.5v-89q11 2 22 2.5t19 0.5q72 0 106 -38.5t34 -104.5v-43zM218 521q0 27 -9 44.5t-36 17.5h-20t-21 -2v-163q16 -3 41 -3q27 0 36 18 +t9 45v43z" /> + <glyph glyph-name="d.superior" unicode="&#xf6eb;" horiz-adv-x="338" +d="M301 369q0 -8 -3 -12.5t-16 -7.5q-23 -5 -54 -9.5t-63 -4.5q-69 0 -104.5 37t-35.5 106v43q0 66 34 104.5t106 38.5q8 0 19 -0.5t22 -2.5v89q0 6 4 10.5t10 4.5h67q5 0 9.5 -4.5t4.5 -10.5v-381zM206 581q-10 2 -21.5 2h-19.5q-27 0 -36 -17.5t-9 -44.5v-43q0 -27 9 -45 +t36 -18q26 0 41 3v163z" /> + <glyph glyph-name="e.superior" unicode="&#xf6ec;" horiz-adv-x="333" +d="M306 485q0 -8 -4.5 -12t-10.5 -4h-169q0 -22 11 -37.5t40 -15.5q26 0 57.5 1.5t49.5 3.5q14 0 14 -13v-41q0 -16 -14 -19q-26 -7 -52 -10t-61 -3q-26 0 -51 7.5t-44.5 24t-32 44t-12.5 67.5v39q0 67 36.5 107t104.5 40q69 0 103.5 -42t34.5 -105v-32zM212 531 +q-1 26 -10.5 40t-34.5 14t-34.5 -14t-10.5 -40h90z" /> + <glyph glyph-name="i.superior" unicode="&#xf6ed;" horiz-adv-x="172" +d="M133 355q0 -6 -4 -10.5t-10 -4.5h-67q-6 0 -10 4.5t-4 10.5v290q0 5 4 9.5t10 4.5h67q6 0 10 -4.5t4 -9.5v-290zM136 702q0 -6 -4 -10.5t-10 -4.5h-72q-6 0 -10 4.5t-4 10.5v50q0 6 4 10.5t10 4.5h72q6 0 10 -4.5t4 -10.5v-50z" /> + <glyph glyph-name="l.superior" unicode="&#xf6ee;" horiz-adv-x="167" +d="M131 356q0 -6 -3.5 -11t-9.5 -5h-67q-6 0 -10.5 5t-4.5 11v394q0 6 4.5 10.5t10.5 4.5h67q6 0 9.5 -4.5t3.5 -10.5v-394v0z" /> + <glyph glyph-name="m.superior" unicode="&#xf6ef;" horiz-adv-x="493" +d="M456 356q0 -6 -4.5 -11t-10.5 -5h-66q-6 0 -10.5 5t-4.5 11v185q0 23 -6 32t-23 9q-7 0 -16.5 -2t-21.5 -7q1 -8 1 -16v-16v-185q0 -6 -4 -11t-10 -5h-67q-6 0 -10 5t-4 11v185q0 23 -5.5 32t-22.5 9q-13 0 -38 -14v-212q0 -6 -4.5 -11t-10.5 -5h-65q-6 0 -11 5t-5 11 +v289q0 5 4.5 9.5t10.5 4.5h63q5 0 9.5 -4.5t4.5 -9.5v-5q17 11 35 17.5t41 6.5q22 0 39 -7t28 -18q23 13 42 19t45 6q55 0 76 -34t21 -89v-185v0z" /> + <glyph glyph-name="n.superior" unicode="&#x207f;" horiz-adv-x="349" +d="M312 356q0 -6 -4.5 -11t-10.5 -5h-66q-8 0 -11 5t-3 11v181q0 26 -7 36t-30 10q-11 0 -22.5 -4.5t-25.5 -12.5v-210q0 -6 -4 -11t-10 -5h-66q-6 0 -10.5 5t-4.5 11v289q0 5 4 9.5t10 4.5h62q6 0 10.5 -4.5t4.5 -9.5v-6q21 14 40 19.5t44 5.5q31 0 50.5 -10t30.5 -27.5 +t15 -40.5t4 -49v-181v0z" /> + <glyph glyph-name="o.superior" unicode="&#xf6f0;" horiz-adv-x="332" +d="M306 480q0 -66 -35.5 -105.5t-104.5 -39.5t-104.5 39.5t-35.5 105.5v39q0 66 35.5 105.5t104.5 39.5t104.5 -39.5t35.5 -105.5v-39zM210 519q0 62 -44 62t-44 -62v-39q0 -30 11 -46.5t33 -16.5t33 16.5t11 46.5v39z" /> + <glyph glyph-name="r.superior" unicode="&#xf6f1;" horiz-adv-x="225" +d="M215 597q0 -5 -2.5 -9.5t-10.5 -4.5h-4q-19 0 -35.5 -5t-30.5 -13v-209q0 -6 -4.5 -11t-10.5 -5h-65q-6 0 -11 5t-5 11v289q0 5 4.5 9.5t10.5 4.5h64q8 0 11.5 -4.5t3.5 -9.5v-8q14 12 33.5 19.5t36.5 7.5q9 0 12 -4.5t3 -10.5v-52v0z" /> + <glyph glyph-name="s.superior" unicode="&#xf6f2;" horiz-adv-x="285" +d="M75 492q-24 14 -37.5 35.5t-13.5 47.5q0 89 116 89q33 0 55 -4t43 -9q6 -2 9.5 -5t3.5 -11v-44q0 -10 -3 -13.5t-12 -1.5q-6 1 -17 2t-23.5 2t-26 2t-23.5 1q-14 0 -19.5 -2t-5.5 -10q0 -4 2.5 -7t12.5 -8l67 -39q35 -20 46.5 -42t11.5 -45q0 -39 -29.5 -67t-91.5 -28 +q-23 0 -51 3t-49 9q-9 4 -11.5 6.5t-2.5 10.5v43q0 10 4.5 12.5t13.5 2.5q11 -2 24.5 -3t26 -2.5t23.5 -2t17 -0.5q18 0 23.5 4.5t5.5 13.5q0 8 -18 19z" /> + <glyph glyph-name="t.superior" unicode="&#xf6f3;" horiz-adv-x="236" +d="M220 354q0 -12 -14 -15q-6 -2 -18.5 -3t-25.5 -1q-24 0 -41.5 4t-29.5 14.5t-18 29.5t-6 49v154q-10 2 -21 3.5t-20 3.5q-14 2 -14 15v37q0 5 4.5 9.5t10.5 4.5h40v41q0 13 13 15l69 12q14 0 14 -14v-54h41q6 0 10.5 -4.5t4.5 -9.5v-44q0 -6 -4.5 -10.5t-10.5 -4.5h-41 +v-154q0 -14 2.5 -18t11.5 -4h27q16 0 16 -14v-42v0z" /> + <glyph glyph-name="one.superior" unicode="&#xb9;" horiz-adv-x="241" +d="M114 746q6 3 14 3h49q10 0 12.5 -5t2.5 -12v-380q0 -17 -15 -17h-71q-7 0 -12 3.5t-5 13.5v290l-53 -23q-20 -7 -20 12v62q0 9 10 13z" /> + <glyph glyph-name="two.superior" unicode="&#xb2;" horiz-adv-x="355" +d="M164 585q16 12 26 19t16 12.5t8 11t2 14.5q0 14 -10.5 20t-40.5 6q-24 0 -52 -2t-54 -5q-8 0 -12.5 5t-4.5 12v42q0 7 4.5 11t9.5 6q23 7 55 12t62 5q78 0 111.5 -27.5t33.5 -81.5q0 -35 -17 -60t-49 -47l-45 -31q-35 -24 -54.5 -41.5t-21.5 -42.5h165q7 0 12 -3.5 +t5 -11.5v-56q0 -7 -5 -12t-12 -5h-241q-7 0 -12 5t-5 12v55q0 47 22 83t54 59z" /> + <glyph glyph-name="three.superior" unicode="&#xb3;" horiz-adv-x="355" +d="M315 456q0 -66 -40.5 -96t-106.5 -30q-32 0 -62 4.5t-52 10.5q-6 2 -10.5 5.5t-4.5 11.5v43q0 16 17 16q29 -2 60 -3.5t48 -1.5q26 0 36.5 10t10.5 30v10q0 15 -7 27.5t-30 12.5h-95q-8 0 -12 5t-4 12v46q0 16 16 16h93q23 0 31 12.5t8 28.5v8q0 15 -9 24.5t-38 9.5 +q-17 0 -44 -1t-53 -5q-10 -2 -18 -0.5t-8 15.5v43q0 8 4.5 11.5t10.5 5.5q21 6 50 11.5t62 5.5q69 0 108 -27t39 -90v-8q0 -23 -11.5 -46t-31.5 -37q21 -13 32 -34t11 -46v-10v0z" /> + <glyph glyph-name="commaaccent" unicode="&#xf6c3;" horiz-adv-x="443" +d="M280 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117v0z" /> + <glyph glyph-name="Abreve" unicode="&#x102;" horiz-adv-x="669" +d="M650 16q0 -16 -17 -16h-140q-8 0 -13 5t-7 13l-36 164h-205l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2zM348 595q-2 8 -4 11.5 +t-9 3.5q-11 0 -14 -15l-61 -276h149zM518 936q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5 +q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="Amacron" unicode="&#x100;" horiz-adv-x="669" +d="M650 16q0 -16 -17 -16h-140q-8 0 -13 5t-7 13l-36 164h-205l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2zM348 595q-2 8 -4 11.5 +t-9 3.5q-11 0 -14 -15l-61 -276h149zM514 836q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72z" /> + <glyph glyph-name="Aogonek" unicode="&#x104;" horiz-adv-x="669" +d="M232 182l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q1 -4 1 -9t-2.5 -7t-7.5 -4l-84 -38q-11 -5 -18.5 -12.5t-7.5 -17.5q0 -15 9.5 -21t31.5 -6 +q19 0 39 4.5t28 4.5q7 0 8.5 -2t1.5 -10v-76q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 35 16 59t55 47l20 12l-38 175h-205zM348 595q-2 8 -4 11.5t-9 3.5q-11 0 -14 -15l-61 -276h149z" /> + <glyph glyph-name="AEacute" unicode="&#x1fc;" horiz-adv-x="923" +d="M867 25q0 -18 -20 -21l-26 -4t-31 -4t-45 -3.5t-67 -1.5q-46 0 -88 7t-75 28t-54 58.5t-25 97.5h-204l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 56.5t39.5 30.5t48.5 12.5t52 2.5h512q20 0 20 -20v-97q0 -8 -6 -14t-14 -6h-242 +v-159h234q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-234v-106q0 -39 14.5 -53.5t49.5 -14.5h178q8 0 14 -6t6 -14v-93zM435 610h-100q-11 0 -14 -15l-61 -276h175v291zM695 937q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5 +t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Cacute" unicode="&#x106;" horiz-adv-x="561" +d="M520 31q0 -11 -5.5 -15.5t-16.5 -7.5q-16 -5 -56 -11t-93 -6q-57 0 -110.5 16t-94.5 53.5t-66 98.5t-25 150v126q0 89 25 150t66 98t94.5 53t110.5 16q53 0 93 -6t56 -11q11 -3 16.5 -7t5.5 -15v-97q0 -20 -19 -20h-3q-29 2 -67.5 5t-80.5 3q-26 0 -48.5 -7.5t-39.5 -27 +t-26.5 -52t-9.5 -82.5v-126q0 -50 9.5 -82.5t26.5 -52t39.5 -27t48.5 -7.5q42 0 80.5 3t67.5 5h3q19 0 19 -20v-97zM482 936q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Ccaron" unicode="&#x10c;" horiz-adv-x="561" +d="M520 31q0 -11 -5.5 -15.5t-16.5 -7.5q-16 -5 -56 -11t-93 -6q-57 0 -110.5 16t-94.5 53.5t-66 98.5t-25 150v126q0 89 25 150t66 98t94.5 53t110.5 16q53 0 93 -6t56 -11q11 -3 16.5 -7t5.5 -15v-97q0 -20 -19 -20h-3q-29 2 -67.5 5t-80.5 3q-26 0 -48.5 -7.5t-39.5 -27 +t-26.5 -52t-9.5 -82.5v-126q0 -50 9.5 -82.5t26.5 -52t39.5 -27t48.5 -7.5q42 0 80.5 3t67.5 5h3q19 0 19 -20v-97zM514 936q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70 +l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="Ccircumflex" unicode="&#x108;" horiz-adv-x="561" +d="M520 31q0 -11 -5.5 -15.5t-16.5 -7.5q-16 -5 -56 -11t-93 -6q-57 0 -110.5 16t-94.5 53.5t-66 98.5t-25 150v126q0 89 25 150t66 98t94.5 53t110.5 16q53 0 93 -6t56 -11q11 -3 16.5 -7t5.5 -15v-97q0 -20 -19 -20h-3q-29 2 -67.5 5t-80.5 3q-26 0 -48.5 -7.5t-39.5 -27 +t-26.5 -52t-9.5 -82.5v-126q0 -50 9.5 -82.5t26.5 -52t39.5 -27t48.5 -7.5q42 0 80.5 3t67.5 5h3q19 0 19 -20v-97zM498 802q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160 +q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="Cdotaccent" unicode="&#x10a;" horiz-adv-x="561" +d="M520 31q0 -11 -5.5 -15.5t-16.5 -7.5q-16 -5 -56 -11t-93 -6q-57 0 -110.5 16t-94.5 53.5t-66 98.5t-25 150v126q0 89 25 150t66 98t94.5 53t110.5 16q53 0 93 -6t56 -11q11 -3 16.5 -7t5.5 -15v-97q0 -20 -19 -20h-3q-29 2 -67.5 5t-80.5 3q-26 0 -48.5 -7.5t-39.5 -27 +t-26.5 -52t-9.5 -82.5v-126q0 -50 9.5 -82.5t26.5 -52t39.5 -27t48.5 -7.5q42 0 80.5 3t67.5 5h3q19 0 19 -20v-97zM402 821q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="Dcaron" unicode="&#x10e;" horiz-adv-x="682" +d="M631 307q0 -79 -22 -138.5t-63 -99t-100 -59t-134 -19.5q-31 0 -62.5 1.5t-60 3.5t-52 4.5t-38.5 5.5q-14 2 -21.5 10t-7.5 25v661q0 17 7.5 25t21.5 10q15 3 38.5 5.5t52 4.5t60 3.5t62.5 1.5q75 0 134 -19.5t100 -59t63 -99t22 -138.5v-129zM460 436q0 51 -10.5 84 +t-30 52.5t-46.5 27t-61 7.5q-19 0 -39.5 -0.5t-31.5 -1.5v-467q11 -1 31.5 -1.5t39.5 -0.5q34 0 61 7.5t46.5 27t30 52.5t10.5 84v129zM541 936q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103 +q10 0 14 -2.5t10 -9.5l63 -70l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="Dcroat" unicode="&#x110;" horiz-adv-x="682" +d="M631 321q0 -89 -23.5 -151.5t-65.5 -102t-100.5 -58t-129.5 -18.5q-75 0 -127 4.5t-90 11.5q-14 2 -21.5 10t-7.5 25v270h-55q-19 0 -19 19v97q0 19 19 19h55v254q0 17 7.5 25t21.5 10q39 7 90.5 11.5t126.5 4.5q71 0 129.5 -18t100.5 -58t65.5 -102.5t23.5 -151.5v-101z +M457 422q0 53 -9.5 88t-28 56t-45.5 29.5t-62 8.5h-17.5t-21 -0.5t-20 -1t-15.5 -0.5v-155h61q19 0 19 -19v-97q0 -19 -19 -19h-61v-172q6 0 15.5 -0.5t20 -0.5h21h17.5q35 0 62 8.5t45.5 29.5t28 56t9.5 88v101z" /> + <glyph glyph-name="Ebreve" unicode="&#x114;" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259 +q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93zM502 945q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5 +q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="Ecaron" unicode="&#x11a;" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259 +q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93zM490 936q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70l64 70 +q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="Edotaccent" unicode="&#x116;" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259 +q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93zM388 822q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="Emacron" unicode="&#x112;" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259 +q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93zM486 836q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72z" /> + <glyph glyph-name="Eng" unicode="&#x14a;" horiz-adv-x="729" +d="M659 -6q0 -51 -14 -84.5t-38 -53t-56.5 -27.5t-70.5 -8q-17 0 -30.5 1t-33.5 3q-15 2 -15 17v102q0 5 3 9.5t8 4.5h50q17 0 21.5 8.5t4.5 27.5v15q-10 8 -18 22l-228 394q-5 8 -9 8q-5 0 -5 -8v-405q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v685q0 16 11 27t27 11h101 +q15 0 24 -7.5t18 -23.5l237 -412q5 -8 8 -8q5 0 5 9v423q0 8 6 13.5t14 5.5h118q8 0 14 -5.5t6 -13.5v-730v0z" /> + <glyph glyph-name="Eogonek" unicode="&#x118;" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-6 -1 -12.5 -2t-14.5 -2l-45 -30q-11 -7 -18.5 -13.5t-7.5 -16.5q0 -15 9.5 -21t31.5 -6q19 0 39 4.5t28 4.5q7 0 8.5 -2t1.5 -10v-76q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 31 12 53 +t41 42h-3q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259 +v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93v0z" /> + <glyph glyph-name="Gbreve" unicode="&#x11e;" +d="M580 608q0 -8 -4 -10.5t-11 -2.5h-3l-90 5t-118 3q-30 0 -54.5 -8t-41.5 -27.5t-26 -52.5t-9 -82v-125q0 -52 10.5 -85t27 -52t36.5 -26t38 -7q41 0 77 3v230q0 8 5.5 14t13.5 6h128q8 0 14 -6t6 -14v-336q0 -19 -20 -23q-41 -8 -95 -14.5t-129 -6.5q-28 0 -60.5 6 +t-64 20t-60.5 38t-51.5 59t-35.5 83.5t-13 111.5v124q0 96 27 157.5t70.5 97.5t98 50t108.5 14q75 0 128 -8.5t81 -14.5q17 -3 17 -15v-106zM509 936q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46 +t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="Gcircumflex" unicode="&#x11c;" +d="M580 608q0 -8 -4 -10.5t-11 -2.5h-3l-90 5t-118 3q-30 0 -54.5 -8t-41.5 -27.5t-26 -52.5t-9 -82v-125q0 -52 10.5 -85t27 -52t36.5 -26t38 -7q41 0 77 3v230q0 8 5.5 14t13.5 6h128q8 0 14 -6t6 -14v-336q0 -19 -20 -23q-41 -8 -95 -14.5t-129 -6.5q-28 0 -60.5 6 +t-64 20t-60.5 38t-51.5 59t-35.5 83.5t-13 111.5v124q0 96 27 157.5t70.5 97.5t98 50t108.5 14q75 0 128 -8.5t81 -14.5q17 -3 17 -15v-106zM534 802q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117 +q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="Gcommaaccent" unicode="&#x122;" +d="M580 608q0 -8 -4 -10.5t-11 -2.5h-3l-90 5t-118 3q-30 0 -54.5 -8t-41.5 -27.5t-26 -52.5t-9 -82v-125q0 -52 10.5 -85t27 -52t36.5 -26t38 -7q41 0 77 3v230q0 8 5.5 14t13.5 6h128q8 0 14 -6t6 -14v-336q0 -19 -20 -23q-41 -8 -95 -14.5t-129 -6.5q-28 0 -60.5 6 +t-64 20t-60.5 38t-51.5 59t-35.5 83.5t-13 111.5v124q0 96 27 157.5t70.5 97.5t98 50t108.5 14q75 0 128 -8.5t81 -14.5q17 -3 17 -15v-106zM381 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="Gdotaccent" unicode="&#x120;" +d="M580 608q0 -8 -4 -10.5t-11 -2.5h-3l-90 5t-118 3q-30 0 -54.5 -8t-41.5 -27.5t-26 -52.5t-9 -82v-125q0 -52 10.5 -85t27 -52t36.5 -26t38 -7q41 0 77 3v230q0 8 5.5 14t13.5 6h128q8 0 14 -6t6 -14v-336q0 -19 -20 -23q-41 -8 -95 -14.5t-129 -6.5q-28 0 -60.5 6 +t-64 20t-60.5 38t-51.5 59t-35.5 83.5t-13 111.5v124q0 96 27 157.5t70.5 97.5t98 50t108.5 14q75 0 128 -8.5t81 -14.5q17 -3 17 -15v-106zM428 821q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="Hbar" unicode="&#x126;" horiz-adv-x="729" +d="M659 20q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v289h-247v-289q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v511h-50q-8 0 -14 6t-6 14v95q0 8 6 14t14 6h50v58q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-58h247v58q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-58 +h50q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-50v-511zM488 458v73h-247v-73h247z" /> + <glyph glyph-name="Hcircumflex" unicode="&#x124;" horiz-adv-x="729" +d="M659 20q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v289h-247v-289q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-266h247v266q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-704zM562 802q0 -7 -9 -7h-103q-10 0 -14 2.5 +t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="Ibreve" unicode="&#x12c;" horiz-adv-x="311" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704zM338 943q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87 +q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="IJ" unicode="&#x132;" horiz-adv-x="622" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704zM552 -6q0 -51 -14 -84.5t-38 -53t-56.5 -27.5t-70.5 -8q-17 0 -30.5 1t-33.5 3q-15 2 -15 17v102q0 5 3 9.5t8 4.5h50q17 0 21.5 8.5t4.5 27.5v730q0 8 6 13.5t14 5.5h131 +q8 0 14 -5.5t6 -13.5v-730z" /> + <glyph glyph-name="Imacron" unicode="&#x12a;" horiz-adv-x="311" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704zM337 836q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72z" /> + <glyph glyph-name="Iogonek" unicode="&#x12e;" horiz-adv-x="311" +d="M241 20q0 -5 -1.5 -9.5t-7.5 -8.5l-45 -32q-13 -10 -19.5 -17t-6.5 -18q0 -14 9.5 -18t31.5 -4q19 0 39 4.5t28 4.5q7 0 8.5 -2t1.5 -10v-76q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 30 12 56t43 46v726 +q0 19 18 19h134q19 0 19 -19v-704v0z" /> + <glyph glyph-name="Itilde" unicode="&#x128;" horiz-adv-x="311" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704zM355 909q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27 +q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5q11 0 17 5.5t6 21.5v19q0 16 16 16h70q15 0 15 -16v-20z" /> + <glyph glyph-name="Jcircumflex" unicode="&#x134;" horiz-adv-x="311" +d="M241 -6q0 -51 -14 -84.5t-38 -53t-56.5 -27.5t-70.5 -8q-17 0 -30.5 1t-33.5 3q-15 2 -15 17v102q0 5 3 9.5t8 4.5h50q17 0 21.5 8.5t4.5 27.5v730q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-730zM354 802q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70 +q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="Kcommaaccent" unicode="&#x136;" horiz-adv-x="678" +d="M652 732q0 -6 -5 -14l-238 -338l239 -359q4 -5 4 -11q0 -10 -14 -10h-172q-9 0 -13.5 4t-8.5 10l-203 330v-324q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-318l220 325q7 12 22 12h153q16 0 16 -11zM392 -38 +q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="Lacute" unicode="&#x139;" horiz-adv-x="519" +d="M497 25q0 -17 -20 -21q-12 -3 -32 -5t-42.5 -4t-45.5 -3t-43 -1q-48 0 -92.5 8t-78 31t-53.5 65.5t-20 110.5v517q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-517q0 -39 14.5 -53.5t49.5 -14.5h172q8 0 14 -6t6 -14v-93zM427 936q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3 +h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Lcaron" unicode="&#x13d;" horiz-adv-x="519" +d="M497 25q0 -17 -20 -21q-12 -3 -32 -5t-42.5 -4t-45.5 -3t-43 -1q-48 0 -92.5 8t-78 31t-53.5 65.5t-20 110.5v517q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-517q0 -39 14.5 -53.5t49.5 -14.5h172q8 0 14 -6t6 -14v-93zM491 756q0 -2 -2 -8l-75 -219q-4 -10 -7.5 -14.5 +t-11.5 -4.5h-101q-9 0 -9 10v4.5t1 4.5l54 219q4 19 20 19h119q12 0 12 -11z" /> + <glyph glyph-name="Lcommaaccent" unicode="&#x13b;" horiz-adv-x="519" +d="M497 25q0 -17 -20 -21q-12 -3 -32 -5t-42.5 -4t-45.5 -3t-43 -1q-48 0 -92.5 8t-78 31t-53.5 65.5t-20 110.5v517q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-517q0 -39 14.5 -53.5t49.5 -14.5h172q8 0 14 -6t6 -14v-93zM318 -38q13 0 15 -5.5t-2 -13.5l-69 -118 +q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="Ldot" unicode="&#x13f;" horiz-adv-x="519" +d="M497 25q0 -17 -20 -21q-12 -3 -32 -5t-42.5 -4t-45.5 -3t-43 -1q-48 0 -92.5 8t-78 31t-53.5 65.5t-20 110.5v517q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-517q0 -39 14.5 -53.5t49.5 -14.5h172q8 0 14 -6t6 -14v-93zM479 362q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93 +q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="Nacute" unicode="&#x143;" horiz-adv-x="729" +d="M659 38q0 -16 -11.5 -27t-27.5 -11h-98q-16 0 -28 5.5t-24 25.5l-228 394q-5 8 -9 8q-5 0 -5 -8v-405q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v685q0 16 11 27t27 11h101q15 0 24 -7.5t18 -23.5l237 -412q5 -8 8 -8q5 0 5 9v423q0 8 6 13.5t14 5.5h118q8 0 14 -5.5 +t6 -13.5v-686zM533 936q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Ncaron" unicode="&#x147;" horiz-adv-x="729" +d="M659 38q0 -16 -11.5 -27t-27.5 -11h-98q-16 0 -28 5.5t-24 25.5l-228 394q-5 8 -9 8q-5 0 -5 -8v-405q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v685q0 16 11 27t27 11h101q15 0 24 -7.5t18 -23.5l237 -412q5 -8 8 -8q5 0 5 9v423q0 8 6 13.5t14 5.5h118q8 0 14 -5.5 +t6 -13.5v-686zM564 936q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="Ncommaaccent" unicode="&#x145;" horiz-adv-x="729" +d="M659 38q0 -16 -11.5 -27t-27.5 -11h-98q-16 0 -28 5.5t-24 25.5l-228 394q-5 8 -9 8q-5 0 -5 -8v-405q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v685q0 16 11 27t27 11h101q15 0 24 -7.5t18 -23.5l237 -412q5 -8 8 -8q5 0 5 9v423q0 8 6 13.5t14 5.5h118q8 0 14 -5.5 +t6 -13.5v-686zM423 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="Obreve" unicode="&#x14e;" horiz-adv-x="698" +d="M645 312q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5t-116 17.5t-94 56t-63 99.5t-23 148v119q0 87 23 148t63 99.5t94 56t116 17.5t116 -17.5t94 -56t63 -99.5t23 -148v-119zM473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40 +t30.5 131v119zM535 944q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87 +q10 0 10 -7z" /> + <glyph glyph-name="Ohungarumlaut" unicode="&#x150;" horiz-adv-x="698" +d="M645 312q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5t-116 17.5t-94 56t-63 99.5t-23 148v119q0 87 23 148t63 99.5t94 56t116 17.5t116 -17.5t94 -56t63 -99.5t23 -148v-119zM473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40 +t30.5 131v119zM634 936q0 -4 -4 -8l-122 -122q-6 -6 -10.5 -9t-14.5 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7zM401 936q0 -4 -4 -8l-122 -122q-6 -6 -10.5 -9t-14.5 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h132 +q11 0 11 -7z" /> + <glyph glyph-name="Omacron" unicode="&#x14c;" horiz-adv-x="698" +d="M645 312q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5t-116 17.5t-94 56t-63 99.5t-23 148v119q0 87 23 148t63 99.5t94 56t116 17.5t116 -17.5t94 -56t63 -99.5t23 -148v-119zM473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40 +t30.5 131v119zM531 836q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72z" /> + <glyph glyph-name="Oslashacute" unicode="&#x1fe;" horiz-adv-x="698" +d="M677 739q0 -4 -3 -8l-75 -103q22 -37 34 -85.5t12 -111.5v-119q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5q-101 0 -174 46l-19 -27q-5 -6 -11.5 -12.5t-14.5 -6.5h-97q-11 0 -11 11q0 3 3 8l75 104q-22 37 -34.5 86t-12.5 112v119q0 87 23 148t63 99.5t94 56 +t116 17.5q50 0 94.5 -11t81.5 -35l18 25q5 6 11.5 12.5t14.5 6.5h97q11 0 11 -11zM431 575q-30 27 -82 27q-63 0 -93 -40t-30 -131v-119q0 -5 0.5 -10.5t0.5 -10.5zM473 451l-204 -284q29 -26 80 -26q63 0 93.5 40t30.5 131v119v13v7zM522 937q0 -4 -4 -8l-122 -122 +q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Racute" unicode="&#x154;" horiz-adv-x="680" +d="M644 12q0 -12 -15 -12h-153q-8 0 -12 6t-8 14l-134 253l-11 -1q-16 0 -36.5 1t-34.5 1v-254q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v671q0 26 11 35t34 13q17 3 41 5t51 4t55.5 3t55.5 1q64 0 119 -11.5t95.5 -39t63.5 -72.5t23 -111v-13q0 -80 -37 -129t-92 -71 +l151 -282q3 -6 3 -11zM449 518q0 46 -34 67.5t-97 21.5q-5 0 -16.5 -0.5t-23.5 -1t-23 -1t-15 -0.5v-192q4 0 14 -0.5t21.5 -1t21.5 -0.5h14q39 0 65.5 5.5t42.5 16.5t23 29t7 44v13zM508 936q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117 +q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Rcaron" unicode="&#x158;" horiz-adv-x="680" +d="M644 12q0 -12 -15 -12h-153q-8 0 -12 6t-8 14l-134 253l-11 -1q-16 0 -36.5 1t-34.5 1v-254q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v671q0 26 11 35t34 13q17 3 41 5t51 4t55.5 3t55.5 1q64 0 119 -11.5t95.5 -39t63.5 -72.5t23 -111v-13q0 -80 -37 -129t-92 -71 +l151 -282q3 -6 3 -11zM449 518q0 46 -34 67.5t-97 21.5q-5 0 -16.5 -0.5t-23.5 -1t-23 -1t-15 -0.5v-192q4 0 14 -0.5t21.5 -1t21.5 -0.5h14q39 0 65.5 5.5t42.5 16.5t23 29t7 44v13zM540 936q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3 +t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="Rcommaaccent" unicode="&#x156;" horiz-adv-x="680" +d="M644 12q0 -12 -15 -12h-153q-8 0 -12 6t-8 14l-134 253l-11 -1q-16 0 -36.5 1t-34.5 1v-254q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v671q0 26 11 35t34 13q17 3 41 5t51 4t55.5 3t55.5 1q64 0 119 -11.5t95.5 -39t63.5 -72.5t23 -111v-13q0 -80 -37 -129t-92 -71 +l151 -282q3 -6 3 -11zM449 518q0 46 -34 67.5t-97 21.5q-5 0 -16.5 -0.5t-23.5 -1t-23 -1t-15 -0.5v-192q4 0 14 -0.5t21.5 -1t21.5 -0.5h14q39 0 65.5 5.5t42.5 16.5t23 29t7 44v13zM399 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5 +t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="Sacute" unicode="&#x15a;" horiz-adv-x="588" +d="M546 210q0 -40 -14 -79t-46.5 -70t-84.5 -50.5t-128 -19.5q-60 0 -105.5 6t-83.5 16q-8 2 -14 7t-6 13v98q0 11 5 15t13 4h3q15 -2 41.5 -4t54.5 -3.5t53.5 -3t40.5 -1.5q52 0 70.5 17t18.5 53q0 22 -13.5 37.5t-52.5 38.5l-138 82q-35 21 -57.5 43t-36 46t-19 49.5 +t-5.5 52.5q0 41 12.5 76.5t42.5 62t79 41.5t122 15q27 0 58.5 -2t60.5 -5t54 -7t39 -8q6 -2 10.5 -6t4.5 -12v-101q0 -7 -3.5 -12t-13.5 -5h-2q-11 1 -35.5 2.5t-55.5 3.5t-63.5 3.5t-57.5 1.5q-43 0 -60.5 -13t-17.5 -40q0 -11 3 -19t10.5 -15.5t20.5 -16t33 -19.5l128 -69 +q78 -42 106.5 -92t28.5 -111zM462 936q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="uni015E" unicode="&#x15e;" horiz-adv-x="588" +d="M546 210q0 -40 -14 -79t-46.5 -70t-84.5 -50.5t-128 -19.5q-60 0 -105.5 6t-83.5 16q-8 2 -14 7t-6 13v98q0 11 5 15t13 4h3q15 -2 41.5 -4t54.5 -3.5t53.5 -3t40.5 -1.5q52 0 70.5 17t18.5 53q0 22 -13.5 37.5t-52.5 38.5l-138 82q-35 21 -57.5 43t-36 46t-19 49.5 +t-5.5 52.5q0 41 12.5 76.5t42.5 62t79 41.5t122 15q27 0 58.5 -2t60.5 -5t54 -7t39 -8q6 -2 10.5 -6t4.5 -12v-101q0 -7 -3.5 -12t-13.5 -5h-2q-11 1 -35.5 2.5t-55.5 3.5t-63.5 3.5t-57.5 1.5q-43 0 -60.5 -13t-17.5 -40q0 -11 3 -19t10.5 -15.5t20.5 -16t33 -19.5l128 -69 +q78 -42 106.5 -92t28.5 -111zM395 -45q0 -4 -4 -8l-127 -130q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l97 125q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7z" /> + <glyph glyph-name="Scircumflex" unicode="&#x15c;" horiz-adv-x="588" +d="M546 210q0 -40 -14 -79t-46.5 -70t-84.5 -50.5t-128 -19.5q-60 0 -105.5 6t-83.5 16q-8 2 -14 7t-6 13v98q0 11 5 15t13 4h3q15 -2 41.5 -4t54.5 -3.5t53.5 -3t40.5 -1.5q52 0 70.5 17t18.5 53q0 22 -13.5 37.5t-52.5 38.5l-138 82q-35 21 -57.5 43t-36 46t-19 49.5 +t-5.5 52.5q0 41 12.5 76.5t42.5 62t79 41.5t122 15q27 0 58.5 -2t60.5 -5t54 -7t39 -8q6 -2 10.5 -6t4.5 -12v-101q0 -7 -3.5 -12t-13.5 -5h-2q-11 1 -35.5 2.5t-55.5 3.5t-63.5 3.5t-57.5 1.5q-43 0 -60.5 -13t-17.5 -40q0 -11 3 -19t10.5 -15.5t20.5 -16t33 -19.5l128 -69 +q78 -42 106.5 -92t28.5 -111zM486 802q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="uni0218" unicode="&#x218;" horiz-adv-x="588" +d="M546 210q0 -40 -14 -79t-46.5 -70t-84.5 -50.5t-128 -19.5q-60 0 -105.5 6t-83.5 16q-8 2 -14 7t-6 13v98q0 11 5 15t13 4h3q15 -2 41.5 -4t54.5 -3.5t53.5 -3t40.5 -1.5q52 0 70.5 17t18.5 53q0 22 -13.5 37.5t-52.5 38.5l-138 82q-35 21 -57.5 43t-36 46t-19 49.5 +t-5.5 52.5q0 41 12.5 76.5t42.5 62t79 41.5t122 15q27 0 58.5 -2t60.5 -5t54 -7t39 -8q6 -2 10.5 -6t4.5 -12v-101q0 -7 -3.5 -12t-13.5 -5h-2q-11 1 -35.5 2.5t-55.5 3.5t-63.5 3.5t-57.5 1.5q-43 0 -60.5 -13t-17.5 -40q0 -11 3 -19t10.5 -15.5t20.5 -16t33 -19.5l128 -69 +q78 -42 106.5 -92t28.5 -111zM342 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="Tbar" unicode="&#x166;" horiz-adv-x="587" +d="M379 332v-312q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v312h-163q-8 0 -14 5.5t-6 13.5v103q0 8 6 13.5t14 5.5h163v129h-163q-8 0 -14 5.5t-6 13.5v103q0 8 6 13.5t14 5.5h496q8 0 14.5 -5.5t6.5 -13.5v-103q0 -8 -6.5 -13.5t-14.5 -5.5h-162v-129h162q8 0 14.5 -5.5 +t6.5 -13.5v-103q0 -8 -6.5 -13.5t-14.5 -5.5h-162z" /> + <glyph glyph-name="Tcaron" unicode="&#x164;" horiz-adv-x="587" +d="M562 621q0 -8 -6.5 -13.5t-14.5 -5.5h-162v-582q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v582h-163q-8 0 -14 5.5t-6 13.5v103q0 8 6 13.5t14 5.5h496q8 0 14.5 -5.5t6.5 -13.5v-103zM493 936q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3 +t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="Tcommaaccent" unicode="&#x162;" horiz-adv-x="587" +d="M562 621q0 -8 -6.5 -13.5t-14.5 -5.5h-162v-582q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v582h-163q-8 0 -14 5.5t-6 13.5v103q0 8 6 13.5t14 5.5h496q8 0 14.5 -5.5t6.5 -13.5v-103zM334 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5 +t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="Ubreve" unicode="&#x16c;" horiz-adv-x="711" +d="M644 279q0 -86 -23 -141.5t-62 -88t-91.5 -45.5t-112.5 -13t-112.5 13t-91.5 45.5t-61.5 88t-22.5 141.5v445q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-445q0 -38 5.5 -65.5t19 -45t36 -26t56.5 -8.5t56.5 8.5t36 26t19.5 45t6 65.5v445q0 8 6 13.5t14 5.5h130 +q8 0 14.5 -5.5t6.5 -13.5v-445zM543 943q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9 +t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="Uhungarumlaut" unicode="&#x170;" horiz-adv-x="711" +d="M644 279q0 -86 -23 -141.5t-62 -88t-91.5 -45.5t-112.5 -13t-112.5 13t-91.5 45.5t-61.5 88t-22.5 141.5v445q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-445q0 -38 5.5 -65.5t19 -45t36 -26t56.5 -8.5t56.5 8.5t36 26t19.5 45t6 65.5v445q0 8 6 13.5t14 5.5h130 +q8 0 14.5 -5.5t6.5 -13.5v-445zM641 936q0 -4 -4 -8l-122 -122q-6 -6 -10.5 -9t-14.5 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7zM408 936q0 -4 -4 -8l-122 -122q-6 -6 -10.5 -9t-14.5 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5 +t15.5 3.5h132q11 0 11 -7z" /> + <glyph glyph-name="Umacron" unicode="&#x16a;" horiz-adv-x="711" +d="M644 279q0 -86 -23 -141.5t-62 -88t-91.5 -45.5t-112.5 -13t-112.5 13t-91.5 45.5t-61.5 88t-22.5 141.5v445q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-445q0 -38 5.5 -65.5t19 -45t36 -26t56.5 -8.5t56.5 8.5t36 26t19.5 45t6 65.5v445q0 8 6 13.5t14 5.5h130 +q8 0 14.5 -5.5t6.5 -13.5v-445zM538 836q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72z" /> + <glyph glyph-name="Uogonek" unicode="&#x172;" horiz-adv-x="711" +d="M644 279q0 -47 -6 -83.5t-19.5 -66.5t-36 -55t-55.5 -47l-84 -57q-11 -7 -18.5 -13.5t-7.5 -16.5q0 -15 9.5 -21t31.5 -6q19 0 39 4.5t28 4.5q7 0 8.5 -2t1.5 -10v-76q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5 +q0 32 12 54t42 42q-54 3 -101.5 18t-82 48t-54.5 87t-20 134v445q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-445q0 -38 5.5 -65.5t19 -45t36 -26t56.5 -8.5t56.5 8.5t36 26t19.5 45t6 65.5v445q0 8 6 13.5t14 5.5h130q8 0 14.5 -5.5t6.5 -13.5v-445v0z" /> + <glyph glyph-name="Uring" unicode="&#x16e;" horiz-adv-x="711" +d="M644 279q0 -86 -23 -141.5t-62 -88t-91.5 -45.5t-112.5 -13t-112.5 13t-91.5 45.5t-61.5 88t-22.5 141.5v445q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-445q0 -38 5.5 -65.5t19 -45t36 -26t56.5 -8.5t56.5 8.5t36 26t19.5 45t6 65.5v445q0 8 6 13.5t14 5.5h130 +q8 0 14.5 -5.5t6.5 -13.5v-445zM473 881q0 -24 -9 -45.5t-25 -37.5t-37.5 -25t-45.5 -9t-45.5 9t-37.5 25t-25 37.5t-9 45.5t9 45.5t25 37.5t37.5 25t45.5 9t45.5 -9t37.5 -25t25 -37.5t9 -45.5zM400 881q0 18 -13 31t-31 13t-31 -13t-13 -31t13 -31t31 -13t31 13t13 31z +" /> + <glyph glyph-name="Utilde" unicode="&#x168;" horiz-adv-x="711" +d="M644 279q0 -86 -23 -141.5t-62 -88t-91.5 -45.5t-112.5 -13t-112.5 13t-91.5 45.5t-61.5 88t-22.5 141.5v445q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-445q0 -38 5.5 -65.5t19 -45t36 -26t56.5 -8.5t56.5 8.5t36 26t19.5 45t6 65.5v445q0 8 6 13.5t14 5.5h130 +q8 0 14.5 -5.5t6.5 -13.5v-445zM559 909q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5 +q11 0 17 5.5t6 21.5v19q0 16 16 16h70q15 0 15 -16v-20z" /> + <glyph glyph-name="Wacute" unicode="&#x1e82;" horiz-adv-x="889" +d="M872 728l-93 -655q-6 -44 -29 -60t-63 -16h-57q-33 0 -57.5 15t-34.5 53l-79 299q-2 6 -3.5 7t-5.5 1t-5 -1t-3 -7l-79 -299q-10 -38 -34.5 -53t-57.5 -15h-57q-40 0 -63 16t-29 60l-93 655v2q0 8 5 10.5t11 2.5h136q14 0 16 -19l57 -536q1 -13 6 -13q4 0 7 13l72 275 +q8 29 25 38.5t37 9.5h99q20 0 37 -9.5t25 -38.5l72 -275q3 -13 7 -13q5 0 6 13l57 536q2 19 16 19h136q6 0 11 -2.5t5 -10.5v-2zM642 937q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Wcircumflex" unicode="&#x174;" horiz-adv-x="889" +d="M872 728l-93 -655q-6 -44 -29 -60t-63 -16h-57q-33 0 -57.5 15t-34.5 53l-79 299q-2 6 -3.5 7t-5.5 1t-5 -1t-3 -7l-79 -299q-10 -38 -34.5 -53t-57.5 -15h-57q-40 0 -63 16t-29 60l-93 655v2q0 8 5 10.5t11 2.5h136q14 0 16 -19l57 -536q1 -13 6 -13q4 0 7 13l72 275 +q8 29 25 38.5t37 9.5h99q20 0 37 -9.5t25 -38.5l72 -275q3 -13 7 -13q5 0 6 13l57 536q2 19 16 19h136q6 0 11 -2.5t5 -10.5v-2zM649 802q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5 +t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="Wdieresis" unicode="&#x1e84;" horiz-adv-x="889" +d="M872 728l-93 -655q-6 -44 -29 -60t-63 -16h-57q-33 0 -57.5 15t-34.5 53l-79 299q-2 6 -3.5 7t-5.5 1t-5 -1t-3 -7l-79 -299q-10 -38 -34.5 -53t-57.5 -15h-57q-40 0 -63 16t-29 60l-93 655v2q0 8 5 10.5t11 2.5h136q14 0 16 -19l57 -536q1 -13 6 -13q4 0 7 13l72 275 +q8 29 25 38.5t37 9.5h99q20 0 37 -9.5t25 -38.5l72 -275q3 -13 7 -13q5 0 6 13l57 536q2 19 16 19h136q6 0 11 -2.5t5 -10.5v-2zM627 821q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM410 821q0 -8 -6.5 -14t-14.5 -6h-94 +q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="Wgrave" unicode="&#x1e80;" horiz-adv-x="889" +d="M872 728l-93 -655q-6 -44 -29 -60t-63 -16h-57q-33 0 -57.5 15t-34.5 53l-79 299q-2 6 -3.5 7t-5.5 1t-5 -1t-3 -7l-79 -299q-10 -38 -34.5 -53t-57.5 -15h-57q-40 0 -63 16t-29 60l-93 655v2q0 8 5 10.5t11 2.5h136q14 0 16 -19l57 -536q1 -13 6 -13q4 0 7 13l72 275 +q8 29 25 38.5t37 9.5h99q20 0 37 -9.5t25 -38.5l72 -275q3 -13 7 -13q5 0 6 13l57 536q2 19 16 19h136q6 0 11 -2.5t5 -10.5v-2zM538 802q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="Ycircumflex" unicode="&#x176;" horiz-adv-x="647" +d="M626 728q0 -5 -1 -7l-151 -346q-15 -35 -31 -52t-34 -25v-278q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v278q-18 8 -34.5 25t-31.5 52l-151 346q-1 2 -1 7q0 6 4 10.5t12 4.5h144q8 0 13 -5t7 -12l108 -282q4 -10 7 -12.5t8 -2.5t8 2.5t7 12.5l108 282q2 7 7 12t13 5 +h144q8 0 12 -4.5t4 -10.5zM525 802q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="Ygrave" unicode="&#x1ef2;" horiz-adv-x="647" +d="M626 728q0 -5 -1 -7l-151 -346q-15 -35 -31 -52t-34 -25v-278q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v278q-18 8 -34.5 25t-31.5 52l-151 346q-1 2 -1 7q0 6 4 10.5t12 4.5h144q8 0 13 -5t7 -12l108 -282q4 -10 7 -12.5t8 -2.5t8 2.5t7 12.5l108 282q2 7 7 12t13 5 +h144q8 0 12 -4.5t4 -10.5zM408 802q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="Zacute" unicode="&#x179;" horiz-adv-x="615" +d="M565 20q0 -8 -6 -14t-14 -6h-454q-17 0 -29 7t-12 24v80q0 11 3 20.5t12 23.5l279 422q4 5 4 10q0 8 -11 8h-249q-8 0 -14 5.5t-6 13.5v110q0 8 6 13.5t14 5.5h431q16 0 28 -7t12 -21v-7q0 -3 0.5 -7.5t0.5 -9.5q0 -11 -0.5 -22.5t-0.5 -21.5v-23q0 -13 -8 -26l-282 -432 +q-5 -7 -5 -11q0 -7 11 -7h270q8 0 14 -5t6 -13v-110zM490 936q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="Zdotaccent" unicode="&#x17b;" horiz-adv-x="615" +d="M565 20q0 -8 -6 -14t-14 -6h-454q-17 0 -29 7t-12 24v80q0 11 3 20.5t12 23.5l279 422q4 5 4 10q0 8 -11 8h-249q-8 0 -14 5.5t-6 13.5v110q0 8 6 13.5t14 5.5h431q16 0 28 -7t12 -21v-7q0 -3 0.5 -7.5t0.5 -9.5q0 -11 -0.5 -22.5t-0.5 -21.5v-23q0 -13 -8 -26l-282 -432 +q-5 -7 -5 -11q0 -7 11 -7h270q8 0 14 -5t6 -13v-110zM392 822q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="Idotaccent" unicode="&#x130;" horiz-adv-x="311" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704zM239 822q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="abreve" unicode="&#x103;" horiz-adv-x="562" +d="M502 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v16q-29 -21 -61.5 -33t-77.5 -12q-33 0 -63.5 8.5t-54.5 28.5t-38.5 53t-14.5 82v9q0 88 58.5 128.5t187.5 40.5h54v36q0 43 -20 56t-55 13q-24 0 -48.5 -0.5t-47 -1.5t-40.5 -2.5l-30 -2.5h-5q-8 0 -13 4t-5 14v81 +q0 17 19 22q28 7 75.5 14t97.5 7q54 0 97.5 -11.5t73.5 -36t46.5 -63t16.5 -93.5v-357zM343 245h-57q-26 0 -43 -4.5t-27 -13.5t-14 -23t-4 -32v-9q0 -32 15.5 -41t47.5 -9q23 0 43.5 6.5t38.5 15.5v110zM467 772q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46 +t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="amacron" unicode="&#x101;" horiz-adv-x="562" +d="M502 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v16q-29 -21 -61.5 -33t-77.5 -12q-33 0 -63.5 8.5t-54.5 28.5t-38.5 53t-14.5 82v9q0 88 58.5 128.5t187.5 40.5h54v36q0 43 -20 56t-55 13q-24 0 -48.5 -0.5t-47 -1.5t-40.5 -2.5l-30 -2.5h-5q-8 0 -13 4t-5 14v81 +q0 17 19 22q28 7 75.5 14t97.5 7q54 0 97.5 -11.5t73.5 -36t46.5 -63t16.5 -93.5v-357zM343 245h-57q-26 0 -43 -4.5t-27 -13.5t-14 -23t-4 -32v-9q0 -32 15.5 -41t47.5 -9q23 0 43.5 6.5t38.5 15.5v110zM463 672q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72 +q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72z" /> + <glyph glyph-name="aogonek" unicode="&#x105;" horiz-adv-x="562" +d="M443 -30q-14 -9 -20 -17t-6 -19q0 -13 8.5 -17t19.5 -4q12 0 24 2.5t21 2.5q7 0 9.5 -2t2.5 -10v-75q0 -8 -3 -11t-8 -5q-12 -6 -35 -11t-54 -5q-26 0 -49.5 4.5t-41.5 16t-29 30t-11 46.5q0 35 16.5 58.5t54.5 47.5l8 5v29q-29 -21 -61.5 -33t-77.5 -12q-33 0 -63.5 8.5 +t-54.5 28.5t-38.5 53t-14.5 82v9q0 88 58.5 128.5t187.5 40.5h54v36q0 43 -20 56t-55 13q-24 0 -48.5 -0.5t-47 -1.5t-40.5 -2.5l-30 -2.5h-5q-8 0 -13 4t-5 14v81q0 17 19 22q28 7 75.5 14t97.5 7q54 0 97.5 -11.5t73.5 -36t46.5 -63t16.5 -93.5v-357q0 -7 -2 -10t-9 -8z +M343 245h-57q-26 0 -43 -4.5t-27 -13.5t-14 -23t-4 -32v-9q0 -32 15.5 -41t47.5 -9q23 0 43.5 6.5t38.5 15.5v110z" /> + <glyph glyph-name="aeacute" unicode="&#x1fd;" horiz-adv-x="881" +d="M835 265q0 -8 -6.5 -14.5t-14.5 -6.5h-310v-41q0 -43 30.5 -60t85.5 -17q14 0 37.5 0.5t49 2t49 2.5t37.5 3h5q16 0 16 -16v-72q0 -11 -4 -16.5t-15 -9.5q-42 -14 -95.5 -21.5t-102.5 -7.5q-87 0 -141 46q-40 -22 -91 -34t-104 -12q-42 0 -81.5 9.5t-70 31.5t-49 56 +t-18.5 84v11q0 44 18 74t51.5 49t81.5 27t108 8h42v9q0 56 -17.5 76t-60.5 20q-23 0 -47.5 -0.5t-47 -1.5t-40.5 -2.5t-28 -2.5h-3q-17 0 -17 18v79q0 19 20 24q13 3 31.5 7t40 7t45 5t46.5 2q110 0 170 -60q30 29 68 44.5t90 15.5q63 0 109 -18.5t75.5 -52t43.5 -80 +t14 -101.5v-64zM680 350q0 49 -20 77.5t-68 28.5q-46 0 -67 -28.5t-21 -77.5v-18h176v18zM348 253h-47q-53 0 -79 -15.5t-26 -54.5v-11q0 -37 24 -51.5t55 -14.5q20 0 39 3t34 10v134zM638 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117 +q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="cacute" unicode="&#x107;" horiz-adv-x="474" +d="M432 29q0 -11 -5 -15.5t-16 -7.5q-21 -5 -54.5 -10t-78.5 -5q-106 0 -169.5 65t-63.5 188v84q0 123 63.5 188t169.5 65q45 0 78.5 -5t54.5 -10q11 -3 16 -7.5t5 -15.5v-89q0 -8 -5.5 -12.5t-13.5 -4.5h-2q-28 3 -53.5 5t-68.5 2q-17 0 -32 -5.5t-26 -19t-17.5 -36 +t-6.5 -55.5v-84q0 -33 6.5 -55.5t17.5 -36t26 -19t32 -5.5q43 0 68.5 2t53.5 5h2q8 0 13.5 -4.5t5.5 -12.5v-89zM427 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="ccaron" unicode="&#x10d;" horiz-adv-x="474" +d="M432 29q0 -11 -5 -15.5t-16 -7.5q-21 -5 -54.5 -10t-78.5 -5q-106 0 -169.5 65t-63.5 188v84q0 123 63.5 188t169.5 65q45 0 78.5 -5t54.5 -10q11 -3 16 -7.5t5 -15.5v-89q0 -8 -5.5 -12.5t-13.5 -4.5h-2q-28 3 -53.5 5t-68.5 2q-17 0 -32 -5.5t-26 -19t-17.5 -36 +t-6.5 -55.5v-84q0 -33 6.5 -55.5t17.5 -36t26 -19t32 -5.5q43 0 68.5 2t53.5 5h2q8 0 13.5 -4.5t5.5 -12.5v-89zM459 772q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70 +l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="ccircumflex" unicode="&#x109;" horiz-adv-x="474" +d="M432 29q0 -11 -5 -15.5t-16 -7.5q-21 -5 -54.5 -10t-78.5 -5q-106 0 -169.5 65t-63.5 188v84q0 123 63.5 188t169.5 65q45 0 78.5 -5t54.5 -10q11 -3 16 -7.5t5 -15.5v-89q0 -8 -5.5 -12.5t-13.5 -4.5h-2q-28 3 -53.5 5t-68.5 2q-17 0 -32 -5.5t-26 -19t-17.5 -36 +t-6.5 -55.5v-84q0 -33 6.5 -55.5t17.5 -36t26 -19t32 -5.5q43 0 68.5 2t53.5 5h2q8 0 13.5 -4.5t5.5 -12.5v-89zM445 637q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160 +q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="cdotaccent" unicode="&#x10b;" horiz-adv-x="474" +d="M432 29q0 -11 -5 -15.5t-16 -7.5q-21 -5 -54.5 -10t-78.5 -5q-106 0 -169.5 65t-63.5 188v84q0 123 63.5 188t169.5 65q45 0 78.5 -5t54.5 -10q11 -3 16 -7.5t5 -15.5v-89q0 -8 -5.5 -12.5t-13.5 -4.5h-2q-28 3 -53.5 5t-68.5 2q-17 0 -32 -5.5t-26 -19t-17.5 -36 +t-6.5 -55.5v-84q0 -33 6.5 -55.5t17.5 -36t26 -19t32 -5.5q43 0 68.5 2t53.5 5h2q8 0 13.5 -4.5t5.5 -12.5v-89zM349 658q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="dcaron" unicode="&#x10f;" horiz-adv-x="756" +d="M781 756q0 -2 -2 -8l-75 -219q-4 -10 -7.5 -14.5t-11.5 -4.5h-101q-9 0 -9 10v4.5t1 4.5l54 219q4 19 20 19h119q12 0 12 -11zM537 46q0 -12 -5.5 -18t-25.5 -11q-43 -11 -99 -18.5t-114 -7.5q-122 0 -186.5 67t-64.5 189v78q0 118 62 187t189 69q15 0 37.5 -2t44.5 -5 +v173q0 8 6 14t14 6h121q8 0 14.5 -6t6.5 -14v-701zM375 442q-18 2 -41 3.5t-41 1.5q-27 0 -44 -9t-27 -25.5t-14 -39t-4 -48.5v-78q0 -27 4 -49.5t14 -39t27 -25.5t44 -9q25 0 46.5 2t35.5 4v312z" /> + <glyph glyph-name="dcroat" unicode="&#x111;" horiz-adv-x="597" +d="M375 713v34q0 8 6 14t14 6h121q8 0 14.5 -6t6.5 -14v-34h41q19 0 19 -19v-37q0 -19 -19 -19h-41v-592q0 -12 -5.5 -18t-25.5 -11q-43 -11 -99 -18.5t-114 -7.5q-122 0 -186.5 67t-64.5 189v78q0 118 62 187t189 69q15 0 37.5 -2t44.5 -5v64h-135q-19 0 -19 19v37 +q0 19 19 19h135zM375 442q-18 2 -41 3.5t-41 1.5q-27 0 -44 -9t-27 -25.5t-14 -39t-4 -48.5v-78q0 -27 4 -49.5t14 -39t27 -25.5t44 -9q25 0 46.5 2t35.5 4v312z" /> + <glyph glyph-name="ebreve" unicode="&#x115;" horiz-adv-x="590" +d="M545 260q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5 +q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM387 340q0 56 -24 83.5t-66 27.5t-67 -28t-25 -83v-4h182v4zM483 772q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5 +q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="ecaron" unicode="&#x11b;" horiz-adv-x="590" +d="M545 260q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5 +q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM387 340q0 56 -24 83.5t-66 27.5t-67 -28t-25 -83v-4h182v4zM495 772q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70 +l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="edotaccent" unicode="&#x117;" horiz-adv-x="590" +d="M545 260q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5 +q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM387 340q0 56 -24 83.5t-66 27.5t-67 -28t-25 -83v-4h182v4zM379 658q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="emacron" unicode="&#x113;" horiz-adv-x="590" +d="M545 260q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5 +q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM387 340q0 56 -24 83.5t-66 27.5t-67 -28t-25 -83v-4h182v4zM477 672q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72z" /> + <glyph glyph-name="eng" unicode="&#x14b;" horiz-adv-x="612" +d="M552 -32q0 -50 -11 -83t-31.5 -52.5t-50 -27.5t-65.5 -8q-39 0 -80 7q-20 3 -20 20v79q0 18 21 18h44q21 0 26 10.5t5 36.5v386q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14 +t14 6h112q8 0 14 -6t6 -14v-24q41 29 78 40.5t85 11.5q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-386v0z" /> + <glyph glyph-name="eogonek" unicode="&#x119;" horiz-adv-x="590" +d="M522 -166q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 31 14 53t43 42h-19q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58 +q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -17 -9 -22l-83 -50q-11 -7 -18.5 -13.5t-7.5 -16.5q0 -15 8.5 -21t25.5 -6q24 0 45 4.5t29 4.5q7 0 8.5 -2t1.5 -10v-76zM387 340q0 56 -24 83.5 +t-66 27.5t-67 -28t-25 -83v-4h182v4z" /> + <glyph glyph-name="gbreve" unicode="&#x11f;" horiz-adv-x="599" +d="M577 490q0 -11 -4.5 -15t-13.5 -7l-31 -10q9 -14 15.5 -35t6.5 -39v-8q0 -98 -64.5 -142.5t-182.5 -44.5q-35 0 -62 4.5t-42 10.5q-8 -5 -11 -10.5t-3 -12.5q0 -12 6 -18t24 -10l113 -25q65 -14 110 -27.5t72.5 -31t39.5 -42t12 -60.5v-8q0 -163 -262 -163 +q-125 0 -189.5 42t-64.5 121v8q0 31 14 59t46 53q-27 15 -39 41.5t-12 51.5q0 28 12.5 49t31.5 36q-24 21 -35 55t-11 64v8q0 85 59.5 137t190.5 52h249q11 0 18 -7.5t7 -18.5v-57zM392 384q0 31 -18 51.5t-71 20.5t-72 -20.5t-19 -51.5v-8q0 -13 3.5 -25.5t13.5 -22.5 +t27.5 -16t46.5 -6q53 0 71 19t18 51v8zM397 -33q0 7 -3.5 13.5t-14.5 12.5t-31 12t-54 14l-74 16q-9 -13 -14.5 -27.5t-5.5 -40.5v-8q0 -26 21 -38.5t79 -12.5q31 0 50 3.5t29.5 10.5t14 16.5t3.5 20.5v8zM486 772q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46 +t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="gcircumflex" unicode="&#x11d;" horiz-adv-x="599" +d="M577 490q0 -11 -4.5 -15t-13.5 -7l-31 -10q9 -14 15.5 -35t6.5 -39v-8q0 -98 -64.5 -142.5t-182.5 -44.5q-35 0 -62 4.5t-42 10.5q-8 -5 -11 -10.5t-3 -12.5q0 -12 6 -18t24 -10l113 -25q65 -14 110 -27.5t72.5 -31t39.5 -42t12 -60.5v-8q0 -163 -262 -163 +q-125 0 -189.5 42t-64.5 121v8q0 31 14 59t46 53q-27 15 -39 41.5t-12 51.5q0 28 12.5 49t31.5 36q-24 21 -35 55t-11 64v8q0 85 59.5 137t190.5 52h249q11 0 18 -7.5t7 -18.5v-57zM392 384q0 31 -18 51.5t-71 20.5t-72 -20.5t-19 -51.5v-8q0 -13 3.5 -25.5t13.5 -22.5 +t27.5 -16t46.5 -6q53 0 71 19t18 51v8zM397 -33q0 7 -3.5 13.5t-14.5 12.5t-31 12t-54 14l-74 16q-9 -13 -14.5 -27.5t-5.5 -40.5v-8q0 -26 21 -38.5t79 -12.5q31 0 50 3.5t29.5 10.5t14 16.5t3.5 20.5v8zM501 637q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70 +q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="gcommaaccent" unicode="&#x123;" horiz-adv-x="599" +d="M577 490q0 -11 -4.5 -15t-13.5 -7l-31 -10q9 -14 15.5 -35t6.5 -39v-8q0 -98 -64.5 -142.5t-182.5 -44.5q-35 0 -62 4.5t-42 10.5q-8 -5 -11 -10.5t-3 -12.5q0 -12 6 -18t24 -10l113 -25q65 -14 110 -27.5t72.5 -31t39.5 -42t12 -60.5v-8q0 -163 -262 -163 +q-125 0 -189.5 42t-64.5 121v8q0 31 14 59t46 53q-27 15 -39 41.5t-12 51.5q0 28 12.5 49t31.5 36q-24 21 -35 55t-11 64v8q0 85 59.5 137t190.5 52h249q11 0 18 -7.5t7 -18.5v-57zM392 384q0 31 -18 51.5t-71 20.5t-72 -20.5t-19 -51.5v-8q0 -13 3.5 -25.5t13.5 -22.5 +t27.5 -16t46.5 -6q53 0 71 19t18 51v8zM397 -33q0 7 -3.5 13.5t-14.5 12.5t-31 12t-54 14l-74 16q-9 -13 -14.5 -27.5t-5.5 -40.5v-8q0 -26 21 -38.5t79 -12.5q31 0 50 3.5t29.5 10.5t14 16.5t3.5 20.5v8zM218 642q0 3 2 7l65 108q8 12 12 16t13 4h75q12 0 12 -12 +q0 -5 -1 -8l-26 -108q-5 -19 -20 -19h-117q-15 0 -15 12z" /> + <glyph glyph-name="gdotaccent" unicode="&#x121;" horiz-adv-x="599" +d="M577 490q0 -11 -4.5 -15t-13.5 -7l-31 -10q9 -14 15.5 -35t6.5 -39v-8q0 -98 -64.5 -142.5t-182.5 -44.5q-35 0 -62 4.5t-42 10.5q-8 -5 -11 -10.5t-3 -12.5q0 -12 6 -18t24 -10l113 -25q65 -14 110 -27.5t72.5 -31t39.5 -42t12 -60.5v-8q0 -163 -262 -163 +q-125 0 -189.5 42t-64.5 121v8q0 31 14 59t46 53q-27 15 -39 41.5t-12 51.5q0 28 12.5 49t31.5 36q-24 21 -35 55t-11 64v8q0 85 59.5 137t190.5 52h249q11 0 18 -7.5t7 -18.5v-57zM392 384q0 31 -18 51.5t-71 20.5t-72 -20.5t-19 -51.5v-8q0 -13 3.5 -25.5t13.5 -22.5 +t27.5 -16t46.5 -6q53 0 71 19t18 51v8zM397 -33q0 7 -3.5 13.5t-14.5 12.5t-31 12t-54 14l-74 16q-9 -13 -14.5 -27.5t-5.5 -40.5v-8q0 -26 21 -38.5t79 -12.5q31 0 50 3.5t29.5 10.5t14 16.5t3.5 20.5v8zM386 658q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14 +t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="hbar" unicode="&#x127;" horiz-adv-x="612" +d="M222 638v-102q38 25 73 35t80 10q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5 +v617h-41q-19 0 -19 19v37q0 19 19 19h41v34q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-34h135q19 0 19 -19v-37q0 -19 -19 -19h-135z" /> + <glyph glyph-name="hcircumflex" unicode="&#x125;" horiz-adv-x="612" +d="M552 21q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v726q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-211q38 25 73 35t80 10 +q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333zM518 802q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="ibreve" unicode="&#x12d;" horiz-adv-x="290" +d="M226 21q0 -8 -6.5 -14.5t-14.5 -6.5h-120q-8 0 -14.5 6.5t-6.5 14.5v531q0 8 6.5 14.5t14.5 6.5h120q8 0 14.5 -6.5t6.5 -14.5v-531zM330 772q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5 +q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="ij" unicode="&#x133;" horiz-adv-x="580" +d="M230 658q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93zM226 20q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v533q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-533zM520 658q0 -8 -6.5 -14t-14.5 -6h-129q-8 0 -14 6t-6 14v93q0 8 6 14 +t14 6h129q8 0 14.5 -6t6.5 -14v-93zM516 -32q0 -50 -11 -83t-31.5 -52.5t-50 -27.5t-65.5 -8q-39 0 -80 7q-20 3 -20 20v79q0 18 21 18h44q21 0 26 10.5t5 36.5v584q0 8 5.5 14.5t13.5 6.5h124q8 0 13.5 -6.5t5.5 -14.5v-584z" /> + <glyph glyph-name="imacron" unicode="&#x12b;" horiz-adv-x="290" +d="M226 21q0 -8 -6.5 -14.5t-14.5 -6.5h-120q-8 0 -14.5 6.5t-6.5 14.5v531q0 8 6.5 14.5t14.5 6.5h120q8 0 14.5 -6.5t6.5 -14.5v-531zM327 672q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72z" /> + <glyph glyph-name="iogonek" unicode="&#x12f;" horiz-adv-x="290" +d="M226 20q0 -5 -1.5 -9t-7.5 -9l-39 -28q-21 -15 -21 -33q0 -28 38 -28q20 0 40.5 4.5t28.5 4.5q7 0 8.5 -2t1.5 -10v-76q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 30 11.5 56t42.5 46v554q0 8 6.5 14.5t14.5 6.5 +h120q8 0 14.5 -6.5t6.5 -14.5v-532zM230 658q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="itilde" unicode="&#x129;" horiz-adv-x="290" +d="M226 21q0 -8 -6.5 -14.5t-14.5 -6.5h-120q-8 0 -14.5 6.5t-6.5 14.5v531q0 8 6.5 14.5t14.5 6.5h120q8 0 14.5 -6.5t6.5 -14.5v-531zM342 746q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17 +h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5q11 0 17 5.5t6 21.5v19q0 16 16 16h70q15 0 15 -16v-20z" /> + <glyph glyph-name="jcircumflex" unicode="&#x135;" horiz-adv-x="290" +d="M226 -32q0 -50 -11 -83t-31.5 -52.5t-50 -27.5t-65.5 -8q-39 0 -80 7q-20 3 -20 20v79q0 18 21 18h44q21 0 26 10.5t5 36.5v584q0 8 5.5 14.5t13.5 6.5h124q8 0 13.5 -6.5t5.5 -14.5v-584zM342 637q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5 +t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="kcommaaccent" unicode="&#x137;" horiz-adv-x="588" +d="M558 562q0 -5 -4 -10l-186 -253l185 -278q2 -2 2 -8q0 -13 -13 -13h-151q-8 0 -13.5 2.5t-11.5 11.5l-144 235v-228q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v726q0 8 6.5 14t14.5 6h121q8 0 14 -6t6 -14v-418l152 229q6 9 13 12t13 3h143q15 0 15 -11z +M342 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="lacute" unicode="&#x13a;" horiz-adv-x="282" +d="M222 21q0 -8 -5.5 -14.5t-13.5 -6.5h-122q-8 0 -14.5 6.5t-6.5 14.5v726q0 8 6.5 14t14.5 6h122q8 0 13.5 -6t5.5 -14v-726zM309 951q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="lcaron" unicode="&#x13e;" horiz-adv-x="445" +d="M222 21q0 -8 -5.5 -14.5t-13.5 -6.5h-122q-8 0 -14.5 6.5t-6.5 14.5v726q0 8 6.5 14t14.5 6h122q8 0 13.5 -6t5.5 -14v-726zM470 756q0 -2 -2 -8l-75 -219q-4 -10 -7.5 -14.5t-11.5 -4.5h-101q-9 0 -9 10v4.5t1 4.5l54 219q4 19 20 19h119q12 0 12 -11z" /> + <glyph glyph-name="lcommaaccent" unicode="&#x13c;" horiz-adv-x="282" +d="M222 21q0 -8 -5.5 -14.5t-13.5 -6.5h-122q-8 0 -14.5 6.5t-6.5 14.5v726q0 8 6.5 14t14.5 6h122q8 0 13.5 -6t5.5 -14v-726zM199 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="ldot" unicode="&#x140;" horiz-adv-x="467" +d="M222 21q0 -8 -5.5 -14.5t-13.5 -6.5h-122q-8 0 -14.5 6.5t-6.5 14.5v726q0 8 6.5 14t14.5 6h122q8 0 13.5 -6t5.5 -14v-726zM437 362q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="nacute" unicode="&#x144;" horiz-adv-x="612" +d="M552 21q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14t14 6h112q8 0 14 -6t6 -14v-24q41 29 78 40.5t85 11.5 +q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333zM474 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="ncaron" unicode="&#x148;" horiz-adv-x="612" +d="M552 21q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14t14 6h112q8 0 14 -6t6 -14v-24q41 29 78 40.5t85 11.5 +q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333zM506 772q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="ncommaaccent" unicode="&#x146;" horiz-adv-x="612" +d="M552 21q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14t14 6h112q8 0 14 -6t6 -14v-24q41 29 78 40.5t85 11.5 +q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333zM351 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="obreve" unicode="&#x14f;" horiz-adv-x="589" +d="M545 251q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5t-107.5 18.5t-78.5 52t-48.5 81.5t-16.5 108v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5t107.5 -18.5t78 -52t48 -81.5t16.5 -108v-70zM384 321q0 122 -89 122q-44 0 -67 -30.5t-23 -91.5v-70 +q0 -61 23 -92t67 -31q89 0 89 123v70zM483 772q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5 +q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="ohungarumlaut" unicode="&#x151;" horiz-adv-x="589" +d="M545 251q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5t-107.5 18.5t-78.5 52t-48.5 81.5t-16.5 108v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5t107.5 -18.5t78 -52t48 -81.5t16.5 -108v-70zM384 321q0 122 -89 122q-44 0 -67 -30.5t-23 -91.5v-70 +q0 -61 23 -92t67 -31q89 0 89 123v70zM580 772q0 -4 -4 -8l-122 -122q-6 -6 -10.5 -9t-14.5 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7zM347 772q0 -4 -4 -8l-122 -122q-6 -6 -10.5 -9t-14.5 -3h-107q-9 0 -9 7q0 5 4 10l93 117 +q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7z" /> + <glyph glyph-name="omacron" unicode="&#x14d;" horiz-adv-x="589" +d="M545 251q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5t-107.5 18.5t-78.5 52t-48.5 81.5t-16.5 108v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5t107.5 -18.5t78 -52t48 -81.5t16.5 -108v-70zM384 321q0 122 -89 122q-44 0 -67 -30.5t-23 -91.5v-70 +q0 -61 23 -92t67 -31q89 0 89 123v70zM477 672q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72z" /> + <glyph glyph-name="oslashacute" unicode="&#x1ff;" horiz-adv-x="589" +d="M559 598q0 -7 -4 -11l-65 -87q55 -67 55 -179v-70q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5q-90 0 -150 40l-42 -56q-5 -7 -8 -8.5t-8 -1.5h-50q-8 0 -8 8q0 6 4 11l66 89q-55 67 -55 178v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5q90 0 150 -40l40 55 +q5 7 8 8.5t8 1.5h50q8 0 8 -8zM355 420q-23 23 -60 23q-44 0 -67 -30.5t-23 -91.5v-70q0 -8 0.5 -16t1.5 -16zM384 321q0 8 -0.5 16t-1.5 16l-148 -201q22 -24 61 -24q89 0 89 123v70zM480 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117 +q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="racute" unicode="&#x155;" horiz-adv-x="396" +d="M374 466q0 -7 -4 -13t-11 -6h-8q-37 0 -69 -10t-60 -25v-391q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14t14 6h119q8 0 14 -6t6 -14v-20q28 23 63.5 35.5t71.5 12.5q8 0 14 -6t6 -14v-95zM366 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3 +h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="rcaron" unicode="&#x159;" horiz-adv-x="396" +d="M374 466q0 -7 -4 -13t-11 -6h-8q-37 0 -69 -10t-60 -25v-391q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14t14 6h119q8 0 14 -6t6 -14v-20q28 23 63.5 35.5t71.5 12.5q8 0 14 -6t6 -14v-95zM397 772q0 -5 -4 -10l-89 -117q-7 -8 -11.5 -11.5 +t-15.5 -3.5h-160q-11 0 -15.5 3t-11.5 12l-88 117q-4 5 -4 10q0 7 9 7h103q10 0 14 -2.5t10 -9.5l63 -70l64 70q6 7 10 9.5t14 2.5h103q9 0 9 -7z" /> + <glyph glyph-name="rcommaaccent" unicode="&#x157;" horiz-adv-x="396" +d="M374 466q0 -7 -4 -13t-11 -6h-8q-37 0 -69 -10t-60 -25v-391q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14t14 6h119q8 0 14 -6t6 -14v-20q28 23 63.5 35.5t71.5 12.5q8 0 14 -6t6 -14v-95zM256 -38q13 0 15 -5.5t-2 -13.5l-69 -118 +q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="sacute" unicode="&#x15b;" horiz-adv-x="503" +d="M461 159q0 -35 -13 -66t-39.5 -53.5t-66.5 -35.5t-95 -13q-21 0 -44.5 1.5t-48 4.5t-47.5 7t-42 9t-19 23v81q0 8 5 13.5t14 5.5h4q20 -3 44.5 -5.5t48.5 -4.5t44.5 -3t32.5 -1q36 0 47.5 9.5t11.5 29.5q0 11 -8 20.5t-29 21.5l-130 75q-42 24 -65.5 61.5t-23.5 86.5 +q0 76 50.5 115.5t154.5 39.5q59 0 99.5 -6.5t78.5 -16.5q19 -5 19 -23v-81q0 -19 -17 -19h-3q-11 1 -31 3.5t-43.5 4.5t-48 3.5t-43.5 1.5q-29 0 -41 -6t-12 -23q0 -11 8 -18.5t23 -16.5l124 -71q31 -18 50.5 -36.5t31 -38t15.5 -39.5t4 -40zM419 772q0 -4 -4 -8l-122 -122 +q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="uni015F" unicode="&#x15f;" horiz-adv-x="503" +d="M461 159q0 -35 -13 -66t-39.5 -53.5t-66.5 -35.5t-95 -13q-21 0 -44.5 1.5t-48 4.5t-47.5 7t-42 9t-19 23v81q0 8 5 13.5t14 5.5h4q20 -3 44.5 -5.5t48.5 -4.5t44.5 -3t32.5 -1q36 0 47.5 9.5t11.5 29.5q0 11 -8 20.5t-29 21.5l-130 75q-42 24 -65.5 61.5t-23.5 86.5 +q0 76 50.5 115.5t154.5 39.5q59 0 99.5 -6.5t78.5 -16.5q19 -5 19 -23v-81q0 -19 -17 -19h-3q-11 1 -31 3.5t-43.5 4.5t-48 3.5t-43.5 1.5q-29 0 -41 -6t-12 -23q0 -11 8 -18.5t23 -16.5l124 -71q31 -18 50.5 -36.5t31 -38t15.5 -39.5t4 -40zM345 -45q0 -4 -4 -8l-127 -130 +q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l97 125q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7z" /> + <glyph glyph-name="scircumflex" unicode="&#x15d;" horiz-adv-x="503" +d="M461 159q0 -35 -13 -66t-39.5 -53.5t-66.5 -35.5t-95 -13q-21 0 -44.5 1.5t-48 4.5t-47.5 7t-42 9t-19 23v81q0 8 5 13.5t14 5.5h4q20 -3 44.5 -5.5t48.5 -4.5t44.5 -3t32.5 -1q36 0 47.5 9.5t11.5 29.5q0 11 -8 20.5t-29 21.5l-130 75q-42 24 -65.5 61.5t-23.5 86.5 +q0 76 50.5 115.5t154.5 39.5q59 0 99.5 -6.5t78.5 -16.5q19 -5 19 -23v-81q0 -19 -17 -19h-3q-11 1 -31 3.5t-43.5 4.5t-48 3.5t-43.5 1.5q-29 0 -41 -6t-12 -23q0 -11 8 -18.5t23 -16.5l124 -71q31 -18 50.5 -36.5t31 -38t15.5 -39.5t4 -40zM440 637q0 -7 -9 -7h-103 +q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="uni0219" unicode="&#x219;" horiz-adv-x="503" +d="M461 159q0 -35 -13 -66t-39.5 -53.5t-66.5 -35.5t-95 -13q-21 0 -44.5 1.5t-48 4.5t-47.5 7t-42 9t-19 23v81q0 8 5 13.5t14 5.5h4q20 -3 44.5 -5.5t48.5 -4.5t44.5 -3t32.5 -1q36 0 47.5 9.5t11.5 29.5q0 11 -8 20.5t-29 21.5l-130 75q-42 24 -65.5 61.5t-23.5 86.5 +q0 76 50.5 115.5t154.5 39.5q59 0 99.5 -6.5t78.5 -16.5q19 -5 19 -23v-81q0 -19 -17 -19h-3q-11 1 -31 3.5t-43.5 4.5t-48 3.5t-43.5 1.5q-29 0 -41 -6t-12 -23q0 -11 8 -18.5t23 -16.5l124 -71q31 -18 50.5 -36.5t31 -38t15.5 -39.5t4 -40zM308 -38q13 0 15 -5.5t-2 -13.5 +l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="tbar" unicode="&#x167;" horiz-adv-x="421" +d="M390 19q0 -17 -19 -20q-23 -4 -40 -6t-39 -2q-41 0 -72.5 6.5t-52.5 25.5t-32 52.5t-11 86.5v90l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v79l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v82q0 8 6 13t14 7l122 21q11 2 16 -3.5 +t5 -13.5v-106h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-79h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-91q0 -30 5 -38.5t28 -8.5h49q21 0 21 -17v-78v0z" /> + <glyph glyph-name="tcaron" unicode="&#x165;" horiz-adv-x="612" +d="M390 19q0 -17 -19 -20q-23 -4 -40 -6t-39 -2q-41 0 -72.5 6.5t-52.5 25.5t-32 52.5t-11 86.5v290l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v82q0 8 6 13t14 7l122 21h3q8 0 13 -4.5t5 -12.5v-106h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82 +v-291q0 -30 5 -38.5t28 -8.5h49q21 0 21 -17v-78zM637 756q0 -2 -2 -8l-75 -219q-4 -10 -7.5 -14.5t-11.5 -4.5h-101q-9 0 -9 10v4.5t1 4.5l54 219q4 19 20 19h119q12 0 12 -11z" /> + <glyph glyph-name="tcommaaccent" unicode="&#x163;" horiz-adv-x="421" +d="M390 19q0 -17 -19 -20q-23 -4 -40 -6t-39 -2q-41 0 -72.5 6.5t-52.5 25.5t-32 52.5t-11 86.5v290l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v82q0 8 6 13t14 7l122 21h3q8 0 13 -4.5t5 -12.5v-106h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82 +v-291q0 -30 5 -38.5t28 -8.5h49q21 0 21 -17v-78zM269 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="ubreve" unicode="&#x16d;" horiz-adv-x="612" +d="M552 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v24q-41 -29 -78 -40.5t-85 -11.5q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v333q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-333q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v394q0 8 6 14.5 +t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532zM490 772q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5 +q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="uhungarumlaut" unicode="&#x171;" horiz-adv-x="612" +d="M552 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v24q-41 -29 -78 -40.5t-85 -11.5q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v333q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-333q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v394q0 8 6 14.5 +t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532zM591 772q0 -4 -4 -8l-122 -122q-6 -6 -10.5 -9t-14.5 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7zM358 772q0 -4 -4 -8l-122 -122q-6 -6 -10.5 -9t-14.5 -3h-107q-9 0 -9 7q0 5 4 10l93 117 +q7 8 11.5 11.5t15.5 3.5h132q11 0 11 -7z" /> + <glyph glyph-name="umacron" unicode="&#x16b;" horiz-adv-x="612" +d="M552 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v24q-41 -29 -78 -40.5t-85 -11.5q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v333q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-333q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v394q0 8 6 14.5 +t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532zM488 672q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72z" /> + <glyph glyph-name="uogonek" unicode="&#x173;" horiz-adv-x="612" +d="M400 44q-41 -29 -78 -40.5t-85 -11.5q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v333q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-333q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v394q0 8 6 14.5t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532 +q0 -7 -2 -10t-9 -8l-48 -32q-14 -9 -20 -17t-6 -19q0 -13 8.5 -17t19.5 -4q12 0 24 2.5t21 2.5q7 0 9.5 -2t2.5 -10v-75q0 -8 -3 -11t-8 -5q-12 -6 -35 -11t-54 -5q-26 0 -49.5 4.5t-41.5 16t-29 30t-11 46.5q0 35 16.5 58.5t54.5 47.5l8 5v37z" /> + <glyph glyph-name="uring" unicode="&#x16f;" horiz-adv-x="612" +d="M552 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v24q-41 -29 -78 -40.5t-85 -11.5q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v333q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-333q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v394q0 8 6 14.5 +t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532zM423 711q0 -24 -9 -45.5t-25 -37.5t-37.5 -25t-45.5 -9t-45.5 9t-37.5 25t-25 37.5t-9 45.5t9 45.5t25 37.5t37.5 25t45.5 9t45.5 -9t37.5 -25t25 -37.5t9 -45.5zM350 711q0 18 -13 31t-31 13t-31 -13t-13 -31t13 -31t31 -13 +t31 13t13 31z" /> + <glyph glyph-name="utilde" unicode="&#x169;" horiz-adv-x="612" +d="M552 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v24q-41 -29 -78 -40.5t-85 -11.5q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v333q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-333q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v394q0 8 6 14.5 +t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532zM504 746q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5 +q11 0 17 5.5t6 21.5v19q0 16 16 16h70q15 0 15 -16v-20z" /> + <glyph glyph-name="wacute" unicode="&#x1e83;" horiz-adv-x="845" +d="M816 552l-89 -482q-8 -43 -32.5 -56.5t-55.5 -13.5h-61q-36 0 -56 17.5t-28 46.5l-67 261q-1 5 -5 5t-5 -5l-67 -261q-8 -29 -28 -46.5t-56 -17.5h-61q-16 0 -30 3t-25.5 10.5t-20 21.5t-12.5 35l-89 482v4q0 7 4 12t11 5h121q9 0 14 -3t7 -14l59 -380q2 -13 6 -13 +q5 0 8 13l67 264q7 26 19.5 35.5t36.5 9.5h82q24 0 36.5 -9.5t19.5 -35.5l67 -264q3 -13 8 -13q4 0 6 13l59 380q2 11 7 14t14 3h121q7 0 11 -5t4 -12v-4zM607 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131 +q11 0 11 -7z" /> + <glyph glyph-name="wcircumflex" unicode="&#x175;" horiz-adv-x="845" +d="M816 552l-89 -482q-8 -43 -32.5 -56.5t-55.5 -13.5h-61q-36 0 -56 17.5t-28 46.5l-67 261q-1 5 -5 5t-5 -5l-67 -261q-8 -29 -28 -46.5t-56 -17.5h-61q-16 0 -30 3t-25.5 10.5t-20 21.5t-12.5 35l-89 482v4q0 7 4 12t11 5h121q9 0 14 -3t7 -14l59 -380q2 -13 6 -13 +q5 0 8 13l67 264q7 26 19.5 35.5t36.5 9.5h82q24 0 36.5 -9.5t19.5 -35.5l67 -264q3 -13 8 -13q4 0 6 13l59 380q2 11 7 14t14 3h121q7 0 11 -5t4 -12v-4zM623 637q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10 +l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="wdieresis" unicode="&#x1e85;" horiz-adv-x="845" +d="M816 552l-89 -482q-8 -43 -32.5 -56.5t-55.5 -13.5h-61q-36 0 -56 17.5t-28 46.5l-67 261q-1 5 -5 5t-5 -5l-67 -261q-8 -29 -28 -46.5t-56 -17.5h-61q-16 0 -30 3t-25.5 10.5t-20 21.5t-12.5 35l-89 482v4q0 7 4 12t11 5h121q9 0 14 -3t7 -14l59 -380q2 -13 6 -13 +q5 0 8 13l67 264q7 26 19.5 35.5t36.5 9.5h82q24 0 36.5 -9.5t19.5 -35.5l67 -264q3 -13 8 -13q4 0 6 13l59 380q2 11 7 14t14 3h121q7 0 11 -5t4 -12v-4zM599 658q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM382 658 +q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="wgrave" unicode="&#x1e81;" horiz-adv-x="845" +d="M816 552l-89 -482q-8 -43 -32.5 -56.5t-55.5 -13.5h-61q-36 0 -56 17.5t-28 46.5l-67 261q-1 5 -5 5t-5 -5l-67 -261q-8 -29 -28 -46.5t-56 -17.5h-61q-16 0 -30 3t-25.5 10.5t-20 21.5t-12.5 35l-89 482v4q0 7 4 12t11 5h121q9 0 14 -3t7 -14l59 -380q2 -13 6 -13 +q5 0 8 13l67 264q7 26 19.5 35.5t36.5 9.5h82q24 0 36.5 -9.5t19.5 -35.5l67 -264q3 -13 8 -13q4 0 6 13l59 380q2 11 7 14t14 3h121q7 0 11 -5t4 -12v-4zM504 637q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117 +q4 -5 4 -10z" /> + <glyph glyph-name="ycircumflex" unicode="&#x177;" horiz-adv-x="592" +d="M570 555q0 -2 -0.5 -2.5t-0.5 -2.5l-168 -589q-12 -41 -27 -71.5t-39 -50.5t-61 -30.5t-92 -10.5q-14 0 -31 1.5t-34 3.5t-32 5t-24 6q-8 3 -14.5 6.5t-6.5 11.5v81q0 8 6 13.5t14 5.5h2q12 -1 28.5 -2t34 -2.5t34 -2.5t28.5 -1q27 0 42 11t24 41l9 31h-15 +q-14 0 -26.5 2.5t-24.5 11.5t-22.5 27.5t-19.5 51.5l-132 450q-1 3 -1 7q0 16 20 16h133q8 0 12.5 -5.5t6.5 -13.5l90 -376q4 -19 12 -19h1h4h4l93 395q2 8 7.5 13.5t13.5 5.5h133q8 0 13.5 -5t5.5 -13zM496 637q0 -7 -9 -7h-103q-10 0 -14 2.5t-10 9.5l-63 70l-64 -70 +q-6 -7 -10 -9.5t-14 -2.5h-103q-9 0 -9 7q0 5 4 10l89 117q7 8 11.5 11.5t15.5 3.5h160q11 0 15.5 -3t11.5 -12l88 -117q4 -5 4 -10z" /> + <glyph glyph-name="ygrave" unicode="&#x1ef3;" horiz-adv-x="592" +d="M570 555q0 -2 -0.5 -2.5t-0.5 -2.5l-168 -589q-12 -41 -27 -71.5t-39 -50.5t-61 -30.5t-92 -10.5q-14 0 -31 1.5t-34 3.5t-32 5t-24 6q-8 3 -14.5 6.5t-6.5 11.5v81q0 8 6 13.5t14 5.5h2q12 -1 28.5 -2t34 -2.5t34 -2.5t28.5 -1q27 0 42 11t24 41l9 31h-15 +q-14 0 -26.5 2.5t-24.5 11.5t-22.5 27.5t-19.5 51.5l-132 450q-1 3 -1 7q0 16 20 16h133q8 0 12.5 -5.5t6.5 -13.5l90 -376q4 -19 12 -19h1h4h4l93 395q2 8 7.5 13.5t13.5 5.5h133q8 0 13.5 -5t5.5 -13zM380 637q0 -7 -9 -7h-107q-10 0 -14 3t-10 9l-122 122q-4 4 -4 8 +q0 7 11 7h132q11 0 15.5 -3.5t11.5 -11.5l92 -117q4 -5 4 -10z" /> + <glyph glyph-name="zacute" unicode="&#x17a;" horiz-adv-x="515" +d="M472 20q0 -8 -6 -14t-14 -6h-375q-14 0 -24 9.5t-10 23.5v64q0 11 3 19t11 19l217 296q3 4 3 7q0 5 -7 5h-201q-17 0 -17 16v94q0 8 6 14t14 6h365q14 0 23.5 -10t9.5 -24v-74q0 -8 -2 -16.5t-9 -18.5l-207 -283q-3 -5 -3 -7q0 -4 7 -4h198q8 0 13 -4t5 -12v-100z +M446 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="zdotaccent" unicode="&#x17c;" horiz-adv-x="515" +d="M472 20q0 -8 -6 -14t-14 -6h-375q-14 0 -24 9.5t-10 23.5v64q0 11 3 19t11 19l217 296q3 4 3 7q0 5 -7 5h-201q-17 0 -17 16v94q0 8 6 14t14 6h365q14 0 23.5 -10t9.5 -24v-74q0 -8 -2 -16.5t-9 -18.5l-207 -283q-3 -5 -3 -7q0 -4 7 -4h198q8 0 13 -4t5 -12v-100z +M342 658q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93z" /> + <glyph glyph-name="kgreenlandic" unicode="&#x138;" horiz-adv-x="588" +d="M543 573q11 0 13.5 -6.5t-2.5 -14.5l-186 -253l185 -278q5 -8 1.5 -14.5t-12.5 -6.5h-151q-8 0 -13.5 2.5t-11.5 11.5l-144 235v-228q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6.5 14t14.5 6h121q8 0 14 -6t6 -14v-224l152 229q6 9 13 12t13 3h143 +v0z" /> + <glyph glyph-name="napostrophe" unicode="&#x149;" horiz-adv-x="805" +d="M230 756q0 -2 -2 -8l-75 -219q-4 -10 -7.5 -14.5t-11.5 -4.5h-101q-9 0 -9 10v4.5t1 4.5l54 219q4 19 20 19h119q12 0 12 -11zM745 21q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394 +q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6 14t14 6h112q8 0 14 -6t6 -14v-24q41 29 78 40.5t85 11.5q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333z" /> + <glyph glyph-name="Delta" unicode="&#x2206;" horiz-adv-x="669" +d="M650 16q0 -16 -17 -16h-597q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2zM348 595q-2 8 -4 11.5t-9 3.5q-11 0 -14 -15l-99 -458h225z" /> + <glyph glyph-name="Omega" unicode="&#x2126;" horiz-adv-x="716" +d="M358 755q69 0 126 -16.5t97.5 -52t62.5 -91t22 -134.5v-12q0 -43 -5 -83t-22 -75t-49 -63t-86 -46v-27h111q10 0 16.5 -4t6.5 -16v-114q0 -12 -6.5 -16.5t-16.5 -4.5h-191q-21 0 -21 21v213q0 14 3 18t11 7q24 8 38.5 22.5t22.5 37t11 54.5t3 76v12q0 26 -5.5 51.5 +t-20 45.5t-40.5 32t-68 12t-68 -12t-40.5 -32t-20 -45.5t-5.5 -51.5v-12q0 -44 3 -76t11 -54.5t22.5 -37t38.5 -22.5q8 -3 11 -7t3 -18v-213q0 -21 -21 -21h-191q-10 0 -16.5 4.5t-6.5 16.5v114q0 12 6.5 16t16.5 4h111v27q-54 18 -86 46t-49 63t-22 75t-5 83v12 +q0 79 22 134.5t62.5 91t97.5 52t126 16.5z" /> + <glyph glyph-name="uni03BC" unicode="&#x3bc;" horiz-adv-x="612" +d="M552 49q0 -11 -6.5 -18t-24.5 -13q-34 -11 -87.5 -19t-123.5 -8q-50 0 -89 9v-171q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v722q0 8 6.5 15t14.5 7h121q8 0 14.5 -7t6.5 -15v-332q0 -52 20.5 -73.5t67.5 -21.5q24 0 44.5 1.5t35.5 5.5v420q0 8 6 15t14 7h121 +q8 0 14.5 -7t6.5 -15v-502v0z" /> + <glyph glyph-name="pi" unicode="&#x3c0;" horiz-adv-x="672" +d="M567 454v-320q0 -19 9 -22t41 -3h24q10 0 10 -11v-93q0 -8 -3 -9.5t-8 -3.5q-4 -1 -15.5 -1.5t-25 -1t-26 -1t-18.5 -0.5q-34 0 -57 8t-37 25t-20 45t-6 68v320h-198v-434q0 -7 -2 -13.5t-12 -6.5h-103q-9 0 -12 5.5t-3 14.5v434h-69q-8 0 -11.5 2.5t-3.5 12.5v79 +q0 10 3.5 13t11.5 3h600q8 0 11.5 -3t3.5 -13v-79q0 -10 -3.5 -12.5t-11.5 -2.5h-69z" /> + <glyph glyph-name="afii10017" unicode="&#x410;" horiz-adv-x="669" +d="M650 16q0 -16 -17 -16h-140q-8 0 -13 5t-7 13l-36 164h-205l-36 -164q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2zM348 595q-2 8 -4 11.5 +t-9 3.5q-11 0 -14 -15l-61 -276h149z" /> + <glyph glyph-name="afii10018" unicode="&#x411;" horiz-adv-x="669" +d="M70 723q0 8 6 14t14 6h418q8 0 14.5 -5.5t6.5 -13.5v-103q0 -8 -6.5 -13.5t-14.5 -5.5h-268v-146q17 1 34 1.5t34 0.5q65 0 122.5 -9.5t100 -35t67.5 -70t25 -113.5v-7q0 -69 -25 -114t-67.5 -71.5t-100 -36.5t-122.5 -10q-25 0 -51 1t-50.5 2.5t-45.5 3.5t-36 5 +q-30 5 -42.5 18t-12.5 47v655zM299 131q48 0 79 5t48.5 16.5t24 29t6.5 41.5v7q0 24 -6.5 41t-24 27.5t-48.5 15t-79 4.5h-25t-14.5 -0.5t-9.5 -0.5h-10v-185h10t9.5 -0.5t14.5 -0.5h25z" /> + <glyph glyph-name="afii10019" unicode="&#x412;" horiz-adv-x="669" +d="M623 215q0 -66 -25 -109.5t-67.5 -69t-100 -35.5t-122.5 -10q-25 0 -51 1t-50.5 2.5t-45.5 3.5t-36 5q-30 5 -42.5 18t-12.5 47v608q0 34 12 47t41 18q13 2 33.5 4t45 3.5t50.5 2.5t50 1q71 0 129 -10.5t99.5 -34.5t64.5 -64t23 -100v-18q0 -49 -22 -88t-62 -59 +q40 -20 64.5 -58t24.5 -90v-15zM453 532q0 41 -30.5 60.5t-107.5 19.5h-16.5h-22t-22 -0.5t-15.5 -0.5v-173h112q30 0 49.5 6.5t31 17t16.5 25t5 30.5v15zM457 230q0 36 -23 62.5t-83 26.5h-112v-187h17.5t24 -0.5t24 -0.5h16.5q77 0 106.5 23t29.5 65v11z" /> + <glyph glyph-name="afii10020" unicode="&#x413;" horiz-adv-x="581" +d="M237 20q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v517q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-517z" /> + <glyph glyph-name="afii10050" unicode="&#x490;" horiz-adv-x="581" +d="M237 20q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v517q0 68 20 110t53.5 65t78 31t92.5 8q20 0 37.5 -0.5t33.5 -1.5v55q0 12 6.5 16.5t14.5 4.5h101q8 0 14 -4.5t6 -16.5v-179q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-517z" /> + <glyph glyph-name="afii10021" unicode="&#x414;" horiz-adv-x="782" +d="M25 130q0 8 6 14t14 6h61l118 491q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l118 -491h64q8 0 14 -6t6 -14v-231q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v101h-390v-101q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v231zM279 150h220 +l-96 445q-2 8 -4 11.5t-9 3.5q-11 0 -14 -15z" /> + <glyph glyph-name="afii10022" unicode="&#x415;" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259 +q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93v0z" /> + <glyph glyph-name="afii10024" unicode="&#x416;" horiz-adv-x="1045" +d="M437 724q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-318l220 325q7 12 22 12h153q16 0 16 -11q0 -6 -5 -14l-238 -338l239 -359q4 -5 4 -11q0 -10 -14 -10h-172q-9 0 -13.5 4t-8.5 10l-203 330v-324q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v324l-203 -330 +q-4 -6 -8.5 -10t-13.5 -4h-172q-14 0 -14 10q0 6 4 11l239 359l-238 338q-5 8 -5 14q0 11 16 11h153q14 0 22 -12l220 -325v318z" /> + <glyph glyph-name="afii10025" unicode="&#x417;" +d="M566 212q0 -57 -19 -99t-53.5 -69t-82.5 -40t-106 -13q-59 0 -113.5 8t-93.5 20q-8 2 -13.5 6.5t-5.5 12.5v80q0 8 5 13t13 5h2q53 -5 105.5 -7t93.5 -2q54 0 76.5 21.5t22.5 63.5v18q0 17 -3.5 32.5t-12.5 27.5t-25 19t-40 7h-176q-8 0 -13.5 6t-5.5 14v85q0 19 19 19 +h172q24 0 40.5 7.5t26.5 19.5t14 27.5t4 32.5v14q0 34 -20.5 54.5t-78.5 20.5q-26 0 -49.5 -1t-47 -2.5t-48 -3.5t-52.5 -5h-2q-8 0 -13 5t-5 13v80q0 8 6 12.5t14 6.5q39 12 92 21.5t112 9.5q61 0 109.5 -11t82 -35.5t51.5 -63.5t18 -95v-14q0 -44 -24.5 -87t-64.5 -66 +q42 -22 65.5 -61.5t23.5 -88.5v-18v0z" /> + <glyph glyph-name="afii10026" unicode="&#x418;" horiz-adv-x="729" +d="M70 724q0 8 6 13.5t14 5.5h118q8 0 14 -5.5t6 -13.5v-423q0 -9 5 -9q3 0 8 8l237 412q9 16 18 23.5t24 7.5h101q16 0 27 -11t11 -27v-685q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v405q0 8 -5 8q-4 0 -9 -8l-228 -394q-12 -20 -24 -25.5t-28 -5.5h-98q-16 0 -27.5 11 +t-11.5 27v686z" /> + <glyph glyph-name="afii10027" unicode="&#x419;" horiz-adv-x="729" +d="M362 794q-41 0 -73 11.5t-55.5 31t-38 46t-18.5 56.5q-1 5 0 8t9 3h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q3 12 13 12h87q8 0 9 -3t0 -8q-5 -30 -19 -56.5t-37.5 -46t-56 -31t-72.5 -11.5zM70 724q0 8 6 13.5t14 5.5h118q8 0 14 -5.5t6 -13.5v-423 +q0 -9 5 -9q3 0 8 8l237 412q9 16 18 23.5t24 7.5h101q16 0 27 -11t11 -27v-685q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v405q0 8 -5 8q-4 0 -9 -8l-228 -394q-12 -20 -24 -25.5t-28 -5.5h-98q-16 0 -27.5 11t-11.5 27v686z" /> + <glyph glyph-name="afii10028" unicode="&#x41a;" horiz-adv-x="678" +d="M652 732q0 -6 -5 -14l-238 -338l239 -359q4 -5 4 -11q0 -10 -14 -10h-172q-9 0 -13.5 4t-8.5 10l-203 330v-324q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-318l220 325q7 12 22 12h153q16 0 16 -11z" /> + <glyph glyph-name="afii10029" unicode="&#x41b;" horiz-adv-x="669" +d="M348 595q-2 8 -4 11.5t-9 3.5q-11 0 -14 -15l-125 -577q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l149 620q9 36 26 58t39.5 33.5t48.5 15.5t52 4t51.5 -4t48 -15.5t39.5 -33.5t26 -58l149 -620q0 -2 0.5 -3t0.5 -2q0 -16 -17 -16h-140q-8 0 -13 5t-7 13z +" /> + <glyph glyph-name="afii10030" unicode="&#x41c;" horiz-adv-x="816" +d="M746 14q0 -8 -5.5 -11t-11.5 -3h-132q-7 0 -11.5 6t-4.5 14v417q0 8 -5 8q-4 0 -8 -7l-90 -165q-10 -17 -30 -17h-80q-20 0 -30 17l-90 165q-4 7 -8 7q-5 0 -5 -8v-417q0 -8 -4.5 -14t-11.5 -6h-132q-6 0 -11.5 3t-5.5 11v695q0 16 10 25t26 9h94q30 0 44 -27l153 -285 +q6 -13 11 -13q4 0 11 13l153 285q14 27 44 27h94q16 0 26 -9.5t10 -25.5v-694v0z" /> + <glyph glyph-name="afii10031" unicode="&#x41d;" horiz-adv-x="729" +d="M659 20q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v289h-247v-289q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-266h247v266q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="afii10032" unicode="&#x41e;" horiz-adv-x="698" +d="M645 312q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5t-116 17.5t-94 56t-63 99.5t-23 148v119q0 87 23 148t63 99.5t94 56t116 17.5t116 -17.5t94 -56t63 -99.5t23 -148v-119zM473 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40 +t30.5 131v119z" /> + <glyph glyph-name="afii10033" unicode="&#x41f;" horiz-adv-x="729" +d="M449 743q65 0 106 -15.5t64 -42.5t31.5 -63.5t8.5 -78.5v-523q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v523q0 11 -0.5 20.5t-5 16t-13.5 10.5t-25 4h-159q-17 0 -25.5 -4t-13 -10.5t-5 -16t-0.5 -20.5v-523q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v523 +q0 42 8.5 78.5t31.5 63.5t64 42.5t106 15.5h169z" /> + <glyph glyph-name="afii10034" unicode="&#x420;" horiz-adv-x="651" +d="M618 502q0 -70 -25.5 -116.5t-67.5 -74.5t-95.5 -39.5t-109.5 -11.5q-18 0 -40 1t-41 2v-243q0 -8 -6 -14t-14 -6h-129q-8 0 -14 5.5t-6 13.5v672q0 26 11 35t34 13q38 6 93.5 9.5t109.5 3.5q57 0 111 -11t96 -39t67.5 -74.5t25.5 -116.5v-9zM448 511q0 54 -32.5 76.5 +t-95.5 22.5q-5 0 -17 -0.5t-24.5 -1t-24 -1t-15.5 -0.5v-204q4 0 15.5 -0.5t25 -1t25 -0.5h15.5q67 0 97.5 25t30.5 76v9z" /> + <glyph glyph-name="afii10035" unicode="&#x421;" horiz-adv-x="561" +d="M520 31q0 -11 -5.5 -15.5t-16.5 -7.5q-16 -5 -56 -11t-93 -6q-57 0 -110.5 16t-94.5 53.5t-66 98.5t-25 150v126q0 89 25 150t66 98t94.5 53t110.5 16q53 0 93 -6t56 -11q11 -3 16.5 -7t5.5 -15v-97q0 -20 -19 -20h-3q-29 2 -67.5 5t-80.5 3q-26 0 -48.5 -7.5t-39.5 -27 +t-26.5 -52t-9.5 -82.5v-126q0 -50 9.5 -82.5t26.5 -52t39.5 -27t48.5 -7.5q42 0 80.5 3t67.5 5h3q19 0 19 -20v-97v0z" /> + <glyph glyph-name="afii10036" unicode="&#x422;" horiz-adv-x="587" +d="M562 621q0 -8 -6.5 -13.5t-14.5 -5.5h-162v-582q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v582h-163q-8 0 -14 5.5t-6 13.5v103q0 8 6 13.5t14 5.5h496q8 0 14.5 -5.5t6.5 -13.5v-103v0z" /> + <glyph glyph-name="afii10037" unicode="&#x423;" horiz-adv-x="589" +d="M569 725q0 -2 -0.5 -2.5t-0.5 -2.5l-168 -565q-12 -41 -27 -71.5t-39 -50.5t-61 -30.5t-92 -10.5q-14 0 -31 1.5t-34 3.5t-32 5t-24 6q-8 3 -14.5 6.5t-6.5 11.5v81q0 8 6 13.5t14 5.5h2q12 -1 28.5 -2t34 -2.5t34 -2.5t28.5 -1q27 0 42 11t24 41l9 31h-15 +q-14 0 -26.5 2.5t-24 12t-22 28t-20.5 50.5l-132 426q-1 3 -1 7q0 16 20 16h133q8 0 12.5 -5.5t6.5 -13.5l90 -352q3 -11 5.5 -15t10.5 -4h5l93 371q2 8 7.5 13.5t13.5 5.5h133q8 0 13.5 -5t5.5 -13z" /> + <glyph glyph-name="afii10038" unicode="&#x424;" horiz-adv-x="993" +d="M790 402q0 54 -32.5 76.5t-95.5 22.5q-5 0 -17 -0.5t-24.5 -1t-24 -1t-15.5 -0.5v-204q4 0 15.5 -0.5t25 -1t25 -0.5h15.5q67 0 97.5 25t30.5 76v9zM412 154q-19 -1 -41 -2t-40 -1q-56 0 -109.5 11.5t-95.5 39.5t-67.5 74.5t-25.5 116.5v9q0 70 25.5 116.5t67.5 74.5 +t96 39t111 11q20 0 39.5 -0.5t39.5 -1.5v92q0 8 6 13.5t14 5.5h129q8 0 14 -6t6 -14v-91q20 1 39.5 1.5t39.5 0.5q57 0 111 -11t96 -39t67.5 -74.5t25.5 -116.5v-9q0 -70 -25.5 -116.5t-67.5 -74.5t-95.5 -39.5t-109.5 -11.5q-18 0 -40 1t-41 2v-134q0 -8 -6 -14t-14 -6 +h-129q-8 0 -14 5.5t-6 13.5v135zM412 498q-5 0 -16 0.5t-24 1t-24.5 1t-16.5 0.5q-63 0 -95.5 -22.5t-32.5 -76.5v-9q0 -51 30.5 -76t97.5 -25h15.5t25 0.5t25 1t15.5 0.5v204z" /> + <glyph glyph-name="afii10039" unicode="&#x425;" horiz-adv-x="703" +d="M671 10q0 -10 -13 -10h-159q-10 0 -15.5 3.5t-10.5 11.5l-130 211l-117 -206q-5 -9 -11 -14.5t-14 -5.5h-148q-15 0 -15 13q0 3 2 7l209 361l-211 343q-2 4 -2 6q0 5 4.5 9t10.5 4h161q8 0 14 -6t11 -13l124 -202l112 202q4 7 10.5 13t14.5 6h148q6 0 10.5 -4t4.5 -9 +q0 -2 -2 -6l-206 -353l215 -351q3 -6 3 -10z" /> + <glyph glyph-name="afii10040" unicode="&#x426;" horiz-adv-x="767" +d="M571 0h-291q-65 0 -106 15.5t-64 42.5t-31.5 64t-8.5 79v522q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-522q0 -11 0.5 -20.5t5 -16.5t13 -10.5t25.5 -3.5h159q16 0 25 3.5t13.5 10.5t5 16.5t0.5 20.5v522q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-522q0 -14 -1 -26.5t-3 -24.5h67 +q8 0 14 -6t6 -14v-232q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v102z" /> + <glyph glyph-name="afii10041" unicode="&#x427;" horiz-adv-x="686" +d="M445 277q-29 -17 -75.5 -31t-99.5 -14q-57 0 -95.5 17.5t-62 48.5t-33 72.5t-9.5 88.5v263q0 8 6.5 14.5t14.5 6.5h130q8 0 14 -6.5t6 -14.5v-263q0 -26 6 -43t17 -26.5t27 -13t36 -3.5q28 0 60 9t58 23v318q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-703q0 -8 -6 -14t-14 -6 +h-131q-8 0 -14 6t-6 14v257z" /> + <glyph glyph-name="afii10042" unicode="&#x428;" horiz-adv-x="987" +d="M579 150h123q16 0 25 3.5t13.5 10.5t5 16.5t0.5 20.5v523q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-524q0 -42 -8.5 -78.5t-31.5 -63.5t-64 -42.5t-106 -15.5h-427q-65 0 -106 15.5t-64 42.5t-31.5 63.5t-8.5 78.5v524q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-523 +q0 -11 0.5 -20.5t5 -16.5t13 -10.5t25.5 -3.5h123v574q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-574z" /> + <glyph glyph-name="afii10043" unicode="&#x429;" horiz-adv-x="1030" +d="M834 0h-554q-65 0 -106 15.5t-64 42.5t-31.5 63.5t-8.5 78.5v524q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-523q0 -11 0.5 -20.5t5 -16.5t13 -10.5t25.5 -3.5h123v574q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-574h123q16 0 25 3.5t13.5 10.5t5 16.5t0.5 20.5v523q0 8 6 14t14 6 +h131q8 0 14 -6t6 -14v-524q0 -26 -3 -50h71q8 0 14 -6t6 -14v-231q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v101z" /> + <glyph glyph-name="afii10044" unicode="&#x42a;" horiz-adv-x="708" +d="M20 602q-8 0 -14 5.5t-6 13.5v103q0 8 6 13.5t14 5.5h239q8 0 14 -6t6 -14v-267q17 1 34 1.5t34 0.5q65 0 122.5 -9.5t100 -35t67.5 -70t25 -113.5v-7q0 -69 -25 -114t-67.5 -71.5t-100 -36.5t-122.5 -10q-25 0 -51 1t-50.5 2.5t-45.5 3.5t-36 5q-30 5 -42.5 18t-12.5 47 +v534h-89zM338 131q48 0 79 5t48.5 16.5t24 29t6.5 41.5v7q0 24 -6.5 41t-24 27.5t-48.5 15t-79 4.5h-25t-14.5 -0.5t-9.5 -0.5h-10v-185h10t9.5 -0.5t14.5 -0.5h25z" /> + <glyph glyph-name="afii10045" unicode="&#x42b;" horiz-adv-x="936" +d="M70 723q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-267q17 1 34 1.5t34 0.5q65 0 122.5 -9.5t100 -35t67.5 -70t25 -113.5v-7q0 -69 -25 -114t-67.5 -71.5t-100 -36.5t-122.5 -10q-25 0 -51 1t-50.5 2.5t-45.5 3.5t-36 5q-30 5 -42.5 18t-12.5 47v655zM299 131q48 0 79 5 +t48.5 16.5t24 29t6.5 41.5v7q0 24 -6.5 41t-24 27.5t-48.5 15t-79 4.5h-25t-14.5 -0.5t-9.5 -0.5h-10v-185h10t9.5 -0.5t14.5 -0.5h25zM866 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704z" /> + <glyph glyph-name="afii10046" unicode="&#x42c;" horiz-adv-x="669" +d="M70 723q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-267q17 1 34 1.5t34 0.5q65 0 122.5 -9.5t100 -35t67.5 -70t25 -113.5v-7q0 -69 -25 -114t-67.5 -71.5t-100 -36.5t-122.5 -10q-25 0 -51 1t-50.5 2.5t-45.5 3.5t-36 5q-30 5 -42.5 18t-12.5 47v655zM299 131q48 0 79 5 +t48.5 16.5t24 29t6.5 41.5v7q0 24 -6.5 41t-24 27.5t-48.5 15t-79 4.5h-25t-14.5 -0.5t-9.5 -0.5h-10v-185h10t9.5 -0.5t14.5 -0.5h25z" /> + <glyph glyph-name="afii10047" unicode="&#x42d;" horiz-adv-x="635" +d="M70 128q0 23 22 20q31 -3 67 -5.5t82 -2.5q44 0 75 8.5t50.5 28t29.5 52.5t12 83h-269q-8 0 -14 6t-6 14v95q0 8 6 14t14 6h267q-8 87 -47.5 122t-117.5 35q-48 0 -84 -3t-65 -5q-12 -2 -17 4t-5 16v97q0 11 5.5 15t16.5 7q16 5 56 11t93 6q82 0 145.5 -20t107 -62.5 +t66 -110.5t22.5 -164v-46q0 -98 -22.5 -166.5t-66 -111t-107 -61.5t-145.5 -19q-52 0 -92.5 6t-56.5 11q-11 3 -16.5 7.5t-5.5 15.5v97z" /> + <glyph glyph-name="afii10048" unicode="&#x42e;" horiz-adv-x="996" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-266h110q4 79 28 135t64 91.5t92 51.5t112 16q62 0 116 -17.5t94 -56t63 -99.5t23 -148v-119q0 -87 -23 -148t-63 -99.5t-94 -56t-116 -17.5t-116 17.5t-93.5 55.5t-63 98.5 +t-23.5 146.5h-110v-289zM771 431q0 91 -30.5 131t-93.5 40t-93 -40t-30 -131v-119q0 -91 30 -131t93 -40t93.5 40t30.5 131v119z" /> + <glyph glyph-name="afii10049" unicode="&#x42f;" horiz-adv-x="680" +d="M36 12q0 5 3 11l151 282q-55 22 -92 71t-37 129v13q0 66 23 111t63.5 72.5t95.5 39t119 11.5q27 0 55.5 -1t55.5 -3t51 -4t41 -5q23 -4 34 -13t11 -35v-671q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v254q-14 0 -34.5 -1t-36.5 -1l-11 1l-134 -253q-4 -8 -8 -14t-12 -6 +h-153q-15 0 -15 12zM231 505q0 -26 7 -44t23 -29t42.5 -16.5t65.5 -5.5h14t21.5 0.5t21.5 1t14 0.5v192q-5 0 -15.5 0.5t-22.5 1t-23.5 1t-16.5 0.5q-63 0 -97 -21.5t-34 -67.5v-13z" /> + <glyph glyph-name="afii10023" unicode="&#x401;" horiz-adv-x="580" +d="M524 25q0 -18 -20 -21q-26 -4 -69.5 -8.5t-124.5 -4.5q-48 0 -92 8t-77.5 31t-53.5 65.5t-20 110.5v332q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-91h259 +q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-106q0 -39 14.5 -53.5t49.5 -14.5h203q8 0 14 -6t6 -14v-93zM470 821q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM253 821q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93 +q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="afii10051" unicode="&#x402;" horiz-adv-x="824" +d="M754 160q0 -51 -14 -84.5t-38 -53t-56.5 -27.5t-70.5 -8q-17 0 -30.5 1t-33.5 3q-15 2 -15 17v102q0 5 3 9.5t8 4.5h50q17 0 21.5 8.5t4.5 27.5v124q0 52 -23 69t-63 17q-28 0 -60 -9t-58 -23v-318q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v582h-163q-8 0 -14 5.5 +t-6 13.5v103q0 8 6 13.5t14 5.5h496q8 0 14.5 -5.5t6.5 -13.5v-103q0 -8 -6.5 -13.5t-14.5 -5.5h-162v-136q29 17 75.5 31t99.5 14q57 0 95.5 -18t62 -48.5t33 -72t9.5 -88.5v-124v0z" /> + <glyph glyph-name="afii10052" unicode="&#x403;" horiz-adv-x="581" +d="M237 20q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v517q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-517zM497 936q0 -4 -4 -8l-122 -122q-6 -6 -10 -9 +t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="afii10053" unicode="&#x404;" horiz-adv-x="635" +d="M565 31q0 -11 -5.5 -15.5t-16.5 -7.5q-16 -5 -56.5 -11t-92.5 -6q-82 0 -145.5 19t-107 61.5t-66 111t-22.5 166.5v46q0 96 22.5 164t66 110.5t107 62.5t145.5 20q53 0 93 -6t56 -11q11 -3 16.5 -7t5.5 -15v-97q0 -10 -5 -16t-17 -4q-29 2 -65 5t-84 3q-79 0 -118.5 -35 +t-47.5 -122h268q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-270q2 -50 12 -83t29.5 -52.5t50.5 -28t76 -8.5q46 0 82 2.5t67 5.5q22 3 22 -20v-97v0z" /> + <glyph glyph-name="afii10054" unicode="&#x405;" horiz-adv-x="588" +d="M546 210q0 -40 -14 -79t-46.5 -70t-84.5 -50.5t-128 -19.5q-60 0 -105.5 6t-83.5 16q-8 2 -14 7t-6 13v98q0 11 5 15t13 4h3q15 -2 41.5 -4t54.5 -3.5t53.5 -3t40.5 -1.5q52 0 70.5 17t18.5 53q0 22 -13.5 37.5t-52.5 38.5l-138 82q-35 21 -57.5 43t-36 46t-19 49.5 +t-5.5 52.5q0 41 12.5 76.5t42.5 62t79 41.5t122 15q27 0 58.5 -2t60.5 -5t54 -7t39 -8q6 -2 10.5 -6t4.5 -12v-101q0 -7 -3.5 -12t-13.5 -5h-2q-11 1 -35.5 2.5t-55.5 3.5t-63.5 3.5t-57.5 1.5q-43 0 -60.5 -13t-17.5 -40q0 -11 3 -19t10.5 -15.5t20.5 -16t33 -19.5l128 -69 +q78 -42 106.5 -92t28.5 -111z" /> + <glyph glyph-name="afii10055" unicode="&#x406;" horiz-adv-x="311" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704v0z" /> + <glyph glyph-name="afii10056" unicode="&#x407;" horiz-adv-x="311" +d="M241 20q0 -8 -5.5 -14t-13.5 -6h-134q-8 0 -13 6t-5 14v704q0 19 18 19h134q19 0 19 -19v-704zM332 821q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM115 821q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14 +t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="afii10057" unicode="&#x408;" horiz-adv-x="311" +d="M241 -6q0 -51 -14 -84.5t-38 -53t-56.5 -27.5t-70.5 -8q-17 0 -30.5 1t-33.5 3q-15 2 -15 17v102q0 5 3 9.5t8 4.5h50q17 0 21.5 8.5t4.5 27.5v730q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-730v0z" /> + <glyph glyph-name="afii10058" unicode="&#x409;" horiz-adv-x="1038" +d="M196 18q-2 -8 -7 -13t-13 -5h-140q-17 0 -17 16q0 1 0.5 2t0.5 3l146 611q9 36 26 58t39.5 33.5t48.5 15.5t52 4h253q8 0 14 -6t6 -14v-267q17 1 34 1.5t34 0.5q65 0 122.5 -9.5t100 -35t67.5 -70t25 -113.5v-7q0 -69 -25 -114t-67.5 -71.5t-100 -36.5t-122.5 -10 +q-25 0 -51 1t-50.5 2.5t-45.5 3.5t-36 5q-30 5 -42.5 18t-12.5 47v533h-103q-11 0 -14 -15zM664 131q48 0 79 5t48.5 16.5t24 29t6.5 41.5v7q0 24 -6.5 41t-24 27.5t-48.5 15t-79 4.5h-25t-14.5 -0.5t-9.5 -0.5h-10v-185h10t9.5 -0.5t14.5 -0.5h25z" /> + <glyph glyph-name="afii10059" unicode="&#x40a;" horiz-adv-x="1091" +d="M717 131q48 0 79 5t48.5 16.5t24 29t6.5 41.5v7q0 24 -6.5 41t-24 27.5t-48.5 15t-79 4.5h-25t-14.5 -0.5t-9.5 -0.5h-10v-185h10t9.5 -0.5t14.5 -0.5h25zM488 309h-247v-289q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5 +v-266h247v266q0 8 6 13.5t14 5.5h130q8 0 14 -5.5t6 -13.5v-268q17 1 34 1.5t34 0.5q65 0 122.5 -9.5t100 -35t67.5 -70t25 -113.5v-7q0 -69 -25 -114t-67.5 -71.5t-100 -36.5t-122.5 -10q-25 0 -51 1t-50.5 2.5t-45.5 3.5t-36 5q-30 5 -42.5 18t-12.5 47v241z" /> + <glyph glyph-name="afii10060" unicode="&#x40b;" horiz-adv-x="824" +d="M562 621q0 -8 -6.5 -13.5t-14.5 -5.5h-162v-136q29 17 75.5 31t99.5 14q57 0 95.5 -18t62 -48.5t33 -72t9.5 -88.5v-263q0 -8 -6.5 -14.5t-14.5 -6.5h-130q-8 0 -14 6.5t-6 14.5v263q0 52 -23 69t-63 17q-28 0 -60 -9t-58 -23v-318q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6 +t-6 14v582h-163q-8 0 -14 5.5t-6 13.5v103q0 8 6 13.5t14 5.5h496q8 0 14.5 -5.5t6.5 -13.5v-103v0z" /> + <glyph glyph-name="afii10061" unicode="&#x40c;" horiz-adv-x="678" +d="M652 732q0 -6 -5 -14l-238 -338l239 -359q4 -5 4 -11q0 -10 -14 -10h-172q-9 0 -13.5 4t-8.5 10l-203 330v-324q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h131q8 0 14 -5.5t6 -13.5v-318l220 325q7 12 22 12h153q16 0 16 -11zM534 936q0 -4 -4 -8 +l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="afii10062" unicode="&#x40e;" horiz-adv-x="589" +d="M569 725q0 -2 -0.5 -2.5t-0.5 -2.5l-168 -565q-12 -41 -27 -71.5t-39 -50.5t-61 -30.5t-92 -10.5q-14 0 -31 1.5t-34 3.5t-32 5t-24 6q-8 3 -14.5 6.5t-6.5 11.5v81q0 8 6 13.5t14 5.5h2q12 -1 28.5 -2t34 -2.5t34 -2.5t28.5 -1q27 0 42 11t24 41l9 31h-15 +q-14 0 -26.5 2.5t-24 12t-22 28t-20.5 50.5l-132 426q-1 3 -1 7q0 16 20 16h133q8 0 12.5 -5.5t6.5 -13.5l90 -352q3 -11 5.5 -15t10.5 -4h5l93 371q2 8 7.5 13.5t13.5 5.5h133q8 0 13.5 -5t5.5 -13zM476 940q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46 +t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="afii10145" unicode="&#x40f;" horiz-adv-x="729" +d="M70 724q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-523q0 -11 0.5 -20.5t5 -16.5t13 -10.5t25.5 -3.5h159q16 0 25 3.5t13.5 10.5t5 16.5t0.5 20.5v523q0 8 6 14t14 6h131q8 0 14 -6t6 -14v-523q0 -42 -8.5 -78.5t-31.5 -63.5t-63.5 -42.5t-105.5 -15.5v-102q0 -8 -6 -14 +t-14 -6h-131q-8 0 -14 6t-6 14v102q-65 0 -105.5 15.5t-63.5 42.5t-31.5 63.5t-8.5 78.5v523z" /> + <glyph glyph-name="afii10065" unicode="&#x430;" horiz-adv-x="562" +d="M502 20q0 -8 -6 -14t-14 -6h-112q-8 0 -14 6t-6 14v16q-29 -21 -61.5 -33t-77.5 -12q-33 0 -63.5 8.5t-54.5 28.5t-38.5 53t-14.5 82v9q0 88 58.5 128.5t187.5 40.5h54v36q0 43 -20 56t-55 13q-24 0 -48.5 -0.5t-47 -1.5t-40.5 -2.5l-30 -2.5h-5q-8 0 -13 4t-5 14v81 +q0 17 19 22q28 7 75.5 14t97.5 7q54 0 97.5 -11.5t73.5 -36t46.5 -63t16.5 -93.5v-357zM343 245h-57q-26 0 -43 -4.5t-27 -13.5t-14 -23t-4 -32v-9q0 -32 15.5 -41t47.5 -9q23 0 43.5 6.5t38.5 15.5v110z" /> + <glyph glyph-name="afii10066" unicode="&#x431;" horiz-adv-x="589" +d="M306 563q-25 -5 -47 -11.5t-36 -18.5q20 7 40.5 9t31.5 2q61 0 107.5 -18.5t78 -52t48 -81.5t16.5 -108v-33q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5t-107.5 18.5t-78.5 52t-48.5 81.5t-16.5 108v33q0 71 3 135t22.5 116t61.5 89t119 54l51 11q25 5 41 10.5 +t25 11.5t12.5 12.5t5.5 15.5q1 13 15 13h120q13 0 12 -13q-2 -32 -11 -57.5t-27.5 -46t-48 -35t-72.5 -23.5zM384 284q0 67 -22.5 94.5t-66.5 27.5t-67 -27.5t-23 -94.5v-33q0 -66 23 -94.5t67 -28.5t66.5 28.5t22.5 94.5v33z" /> + <glyph glyph-name="afii10067" unicode="&#x432;" horiz-adv-x="571" +d="M527 172q0 -53 -21 -87.5t-57 -54.5t-84 -28.5t-102 -8.5q-41 0 -86.5 3t-90.5 11q-17 3 -21.5 12t-4.5 29v493q0 17 9.5 23t23.5 8q35 5 82 8.5t94 3.5q55 0 102 -7.5t80.5 -27t52.5 -52.5t19 -84v-10q0 -75 -65 -110q34 -11 51.5 -40.5t17.5 -73.5v-7zM370 183 +q0 26 -15.5 42.5t-57.5 16.5h-78v-124q5 0 15 -0.5t39 -0.5q56 0 76.5 15t20.5 43v8zM367 408q0 29 -21.5 41t-77.5 12h-25.5t-23.5 -1v-114h78q42 0 56 15.5t14 38.5v8z" /> + <glyph glyph-name="afii10068" unicode="&#x433;" horiz-adv-x="422" +d="M266 438q-17 0 -25.5 -4t-13 -10.5t-5 -16t-0.5 -20.5v-367q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v367q0 37 8.5 71t31 59.5t62.5 40.5t103 15h121q11 0 16 -6.5t5 -14.5v-94q0 -8 -5 -14t-16 -6h-120z" /> + <glyph glyph-name="afii10098" unicode="&#x491;" horiz-adv-x="422" +d="M407 458q0 -8 -5 -14t-16 -6h-120q-17 0 -25.5 -4t-13 -10.5t-5 -16t-0.5 -20.5v-367q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v367q0 37 8 71t30 59.5t60 40.5t98 15h9v48q0 12 6.5 16.5t14.5 4.5h101q8 0 14 -4.5t6 -16.5v-163z" /> + <glyph glyph-name="afii10069" unicode="&#x434;" horiz-adv-x="656" +d="M481 0h-306v-101q0 -8 -6 -14t-14 -6h-115q-8 0 -14 6t-6 14v217q0 8 6 14t14 6h51l92 356q7 28 22.5 46t35.5 28.5t42.5 14t44.5 3.5t44.5 -3.5t42 -13t34.5 -27.5t23 -48l93 -356h51q8 0 14 -6t6 -14v-217q0 -8 -6 -14t-14 -6h-115q-8 0 -14 6t-6 14v101zM254 136h147 +l-70 302q-2 6 -4 6q-3 0 -4 -6z" /> + <glyph glyph-name="afii10070" unicode="&#x435;" horiz-adv-x="590" +d="M545 260q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5 +q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM387 340q0 56 -24 83.5t-66 27.5t-67 -28t-25 -83v-4h182v4z" /> + <glyph glyph-name="afii10072" unicode="&#x436;" horiz-adv-x="894" +d="M366 553q0 8 6.5 14t14.5 6h121q8 0 14 -6t6 -14v-224l152 229q6 9 13 12t13 3h143q15 0 15 -11q0 -5 -4 -10l-186 -253l185 -278q2 -2 2 -8q0 -13 -13 -13h-151q-8 0 -13.5 2.5t-11.5 11.5l-144 235v-228q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v228 +l-144 -235q-6 -9 -11.5 -11.5t-13.5 -2.5h-151q-13 0 -13 13q0 6 2 8l185 278l-186 253q-4 5 -4 10q0 11 15 11h143q6 0 13 -3t13 -12l152 -229v224z" /> + <glyph glyph-name="afii10073" unicode="&#x437;" horiz-adv-x="534" +d="M114 236q-12 0 -16.5 6.5t-4.5 14.5v74q0 8 4.5 14t16.5 6h144q21 0 32.5 4t17 11.5t6.5 18t1 22.5v5q0 12 -2.5 20.5t-10 14.5t-21.5 9t-37 3q-15 0 -34.5 -0.5t-41 -1t-44.5 -2t-44 -3.5q-8 -1 -14 2t-6 14v75q0 13 16 17q38 10 85 17t95 7q52 0 92.5 -9t68.5 -28.5 +t42.5 -50.5t14.5 -76v-7q0 -13 -1.5 -28.5t-8.5 -31.5t-20 -31t-36 -27q34 -16 50 -47.5t16 -69.5v-9q0 -46 -16 -79t-45.5 -54.5t-70.5 -32t-90 -10.5q-48 0 -93 7t-83 17q-16 4 -16 17v75q0 11 6 14t14 2q21 -2 44 -3.5t44.5 -2t41 -1t34.5 -0.5q45 0 58 13t13 38v9 +q0 26 -9 42t-45 16h-147z" /> + <glyph glyph-name="afii10074" unicode="&#x438;" horiz-adv-x="612" +d="M81 0q-8 0 -14.5 4.5t-6.5 16.5v531q0 11 6 16t14 5h108q8 0 14.5 -5t6.5 -16v-270q0 -7 4 -7q3 0 7 6l167 268q8 12 15 18t19 6h111q8 0 14 -6t6 -14v-532q0 -8 -6.5 -14.5t-14.5 -6.5h-108q-8 0 -14 6.5t-6 14.5v257q0 6 -4 6t-8 -6l-160 -254q-10 -16 -19.5 -20 +t-22.5 -4h-108z" /> + <glyph glyph-name="afii10075" unicode="&#x439;" horiz-adv-x="612" +d="M478 779q12 0 9 -11q-7 -30 -21.5 -56t-37.5 -46t-54.5 -31.5t-71.5 -11.5q-41 0 -72 11.5t-54 31.5t-37.5 46t-21.5 56q-3 11 9 11h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87zM81 0q-8 0 -14.5 4.5t-6.5 16.5v531q0 11 6 16t14 5h108 +q8 0 14.5 -5t6.5 -16v-270q0 -7 4 -7q3 0 7 6l167 268q8 12 15 18t19 6h111q8 0 14 -6t6 -14v-532q0 -8 -6.5 -14.5t-14.5 -6.5h-108q-8 0 -14 6.5t-6 14.5v257q0 6 -4 6t-8 -6l-160 -254q-10 -16 -19.5 -20t-22.5 -4h-108z" /> + <glyph glyph-name="afii10076" unicode="&#x43a;" horiz-adv-x="588" +d="M558 562q0 -5 -4 -10l-186 -253l185 -278q2 -2 2 -8q0 -13 -13 -13h-151q-8 0 -13.5 2.5t-11.5 11.5l-144 235v-228q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6.5 14t14.5 6h121q8 0 14 -6t6 -14v-224l152 229q6 9 13 12t13 3h143q15 0 15 -11z +" /> + <glyph glyph-name="afii10077" unicode="&#x43b;" horiz-adv-x="574" +d="M290 438q-2 6 -4 6t-4 -6l-95 -416q-2 -9 -9.5 -15.5t-18.5 -6.5h-112q-11 0 -18 6.5t-7 16.5q0 1 0.5 3t0.5 4l119 462q7 28 22.5 46t35.5 28.5t42.5 14t44.5 3.5t44.5 -3.5t42 -13t34.5 -27.5t23 -48l121 -464v-5q0 -10 -7.5 -16.5t-18.5 -6.5h-112q-11 0 -18 6.5 +t-9 15.5z" /> + <glyph glyph-name="afii10078" unicode="&#x43c;" horiz-adv-x="741" +d="M681 11q0 -7 -4 -9t-9 -2h-122q-5 0 -8.5 4.5t-3.5 10.5v322q0 6 -4 6t-6 -5l-70 -127q-7 -14 -23 -14h-121q-16 0 -23 14l-70 127q-3 5 -6 5q-4 0 -4 -6v-322q0 -6 -3.5 -10.5t-8.5 -4.5h-122q-5 0 -9 2t-4 9v536q0 12 8 19t20 7h122q23 0 34 -21l118 -220q5 -10 8 -10 +q4 0 9 10l118 220q11 21 34 21h122q12 0 20 -7.5t8 -19.5v-535v0z" /> + <glyph glyph-name="afii10079" unicode="&#x43d;" horiz-adv-x="616" +d="M556 21q0 -11 -6 -16t-14 -5h-119q-8 0 -14.5 5t-6.5 16v209h-175v-209q0 -11 -6 -16t-14 -5h-120q-8 0 -14.5 5t-6.5 16v531q0 12 6.5 16.5t14.5 4.5h120q8 0 14 -4.5t6 -16.5v-187h175v187q0 12 6.5 16.5t14.5 4.5h119q8 0 14 -4.5t6 -16.5v-531z" /> + <glyph glyph-name="afii10080" unicode="&#x43e;" horiz-adv-x="589" +d="M545 251q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5t-107.5 18.5t-78.5 52t-48.5 81.5t-16.5 108v70q0 60 16.5 108t48.5 81.5t78.5 52t107.5 18.5t107.5 -18.5t78 -52t48 -81.5t16.5 -108v-70zM384 321q0 122 -89 122q-44 0 -67 -30.5t-23 -91.5v-70 +q0 -61 23 -92t67 -31q89 0 89 123v70z" /> + <glyph glyph-name="afii10081" unicode="&#x43f;" horiz-adv-x="612" +d="M342 573q65 0 106 -15.5t64 -42.5t31.5 -63.5t8.5 -78.5v-353q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v367q0 11 -0.5 20.5t-5 16t-13.5 10.5t-25 4h-80q-17 0 -25.5 -4t-13 -10.5t-5 -16t-0.5 -20.5v-367q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v353 +q0 42 8.5 78.5t31.5 63.5t64 42.5t106 15.5h72z" /> + <glyph glyph-name="afii10082" unicode="&#x440;" horiz-adv-x="597" +d="M555 247q0 -118 -62 -187t-189 -69q-15 0 -37.5 2t-44.5 5v-173q0 -8 -6 -14t-14 -6h-121q-8 0 -14.5 6t-6.5 14v701q0 12 5.5 18t25.5 11q43 11 99 18.5t114 7.5q122 0 186.5 -67t64.5 -189v-78zM393 325q0 27 -4 49t-14 38.5t-27 25.5t-44 9q-25 0 -46.5 -1.5 +t-35.5 -3.5v-312q18 -2 41 -4t41 -2q27 0 44 9.5t27 26t14 39t4 48.5v78z" /> + <glyph glyph-name="afii10083" unicode="&#x441;" horiz-adv-x="474" +d="M432 29q0 -11 -5 -15.5t-16 -7.5q-21 -5 -54.5 -10t-78.5 -5q-106 0 -169.5 65t-63.5 188v84q0 123 63.5 188t169.5 65q45 0 78.5 -5t54.5 -10q11 -3 16 -7.5t5 -15.5v-89q0 -8 -5.5 -12.5t-13.5 -4.5h-2q-28 3 -53.5 5t-68.5 2q-17 0 -32 -5.5t-26 -19t-17.5 -36 +t-6.5 -55.5v-84q0 -33 6.5 -55.5t17.5 -36t26 -19t32 -5.5q43 0 68.5 2t53.5 5h2q8 0 13.5 -4.5t5.5 -12.5v-89v0z" /> + <glyph glyph-name="afii10084" unicode="&#x442;" horiz-adv-x="493" +d="M328 445v-424q0 -11 -6.5 -16t-14.5 -5h-121q-8 0 -14 5t-6 16v424h-125q-11 0 -16 6t-5 14v87q0 8 5 14.5t16 6.5h411q11 0 16 -6.5t5 -14.5v-87q0 -8 -5 -14t-16 -6h-124z" /> + <glyph glyph-name="afii10085" unicode="&#x443;" horiz-adv-x="592" +d="M551 573q25 0 18 -23l-168 -589q-12 -41 -27 -71.5t-39 -50.5t-61 -30.5t-92 -10.5q-14 0 -31 1.5t-34 3.5t-32 5t-24 6q-8 3 -14.5 6.5t-6.5 11.5v81q0 8 6 13.5t14 5.5h2q12 -1 28.5 -2t34 -2.5t34 -2.5t28.5 -1q27 0 42 11t24 41l9 31h-15q-14 0 -26.5 2.5t-24.5 11.5 +t-22.5 27.5t-19.5 51.5l-132 450q-1 3 -1 7q0 16 20 16h133q8 0 12.5 -5.5t6.5 -13.5l90 -376q4 -19 12 -19h1h4h4l93 395q2 8 7.5 13.5t13.5 5.5h133z" /> + <glyph glyph-name="afii10086" unicode="&#x444;" horiz-adv-x="912" +d="M375 732q0 8 6.5 14t14.5 6h121q8 0 14 -6t6 -14v-155q20 2 40.5 3t41.5 1q122 0 186.5 -67t64.5 -189v-78q0 -118 -62 -187t-189 -69q-15 0 -37.5 2t-44.5 5v-173q0 -8 -6 -14t-14 -6h-121q-8 0 -14.5 6t-6.5 14v173q-22 -3 -44.5 -5t-37.5 -2q-127 0 -189 69t-62 187 +v78q0 122 64.5 189t186.5 67q20 0 41 -1t41 -3v155zM375 442q-14 2 -35.5 3.5t-46.5 1.5q-27 0 -44 -9t-27 -25.5t-14 -38.5t-4 -49v-78q0 -26 4 -48.5t14 -39t27 -26t44 -9.5q18 0 41 2t41 4v312zM708 325q0 27 -4 49t-14 38.5t-27 25.5t-44 9q-25 0 -46.5 -1.5t-35.5 -3.5 +v-312q18 -2 41 -4t41 -2q27 0 44 9.5t27 26t14 39t4 48.5v78z" /> + <glyph glyph-name="afii10087" unicode="&#x445;" horiz-adv-x="617" +d="M585 14q0 -5 -4 -9.5t-10 -4.5h-151q-8 0 -13.5 5t-12.5 16l-99 155l-93 -156q-7 -11 -12.5 -15.5t-13.5 -4.5h-134q-11 0 -11 12q0 5 2 8l175 278l-170 254q-2 4 -2 6q0 6 4.5 10.5t10.5 4.5h149q8 0 13.5 -5.5t12.5 -15.5l89 -138l82 138q7 11 12.5 16t13.5 5h134 +q12 0 12 -13q0 -5 -2 -8l-165 -262l181 -269q2 -4 2 -7z" /> + <glyph glyph-name="afii10088" unicode="&#x446;" horiz-adv-x="633" +d="M270 0q-65 0 -106 15.5t-64 42.5t-31.5 63.5t-8.5 78.5v353q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-367q0 -11 0.5 -20.5t5 -16.5t13 -10.5t25.5 -3.5h80q16 0 25 3.5t13.5 10.5t5 16.5t0.5 20.5v367q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-353q0 -17 -1 -33.5t-4 -31.5h46 +q8 0 14 -6t6 -14v-216q0 -8 -6 -14t-14 -6h-121q-8 0 -14 6t-6 14v101h-182z" /> + <glyph glyph-name="afii10089" unicode="&#x447;" horiz-adv-x="607" +d="M55 552q0 8 6.5 14.5t14.5 6.5h121q8 0 14 -6.5t6 -14.5v-139q0 -26 3 -44t11 -29t22.5 -15.5t37.5 -4.5q22 0 45 9t49 23v200q0 8 6 14.5t14 6.5h121q8 0 14.5 -6.5t6.5 -14.5v-532q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v211q-38 -25 -73 -35t-80 -10 +q-54 0 -88.5 17.5t-54 48.5t-27 72.5t-7.5 88.5v139v0z" /> + <glyph glyph-name="afii10090" unicode="&#x448;" horiz-adv-x="889" +d="M270 0q-65 0 -106 15.5t-64 42.5t-31.5 63.5t-8.5 78.5v353q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-367q0 -11 0.5 -20.5t5 -16.5t13 -10.5t25.5 -3.5h97v418q0 8 6 14t14 6h123q8 0 14 -6t6 -14v-418h97q16 0 25 3.5t13.5 10.5t5 16.5t0.5 20.5v367q0 8 6 14t14 6h122 +q8 0 14 -6t6 -14v-353q0 -42 -8.5 -78.5t-31.5 -63.5t-64 -42.5t-106 -15.5h-349z" /> + <glyph glyph-name="afii10091" unicode="&#x449;" horiz-adv-x="909" +d="M728 0h-458q-65 0 -106 15.5t-64 42.5t-31.5 63.5t-8.5 78.5v353q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-367q0 -11 0.5 -20.5t5 -16.5t13 -10.5t25.5 -3.5h97v418q0 8 6 14t14 6h123q8 0 14 -6t6 -14v-418h97q16 0 25 3.5t13.5 10.5t5 16.5t0.5 20.5v367q0 8 6 14t14 6 +h122q8 0 14 -6t6 -14v-368q0 -26 -3 -50h43q8 0 14 -6t6 -14v-216q0 -8 -6 -14t-14 -6h-121q-8 0 -14 6t-6 14v101z" /> + <glyph glyph-name="afii10092" unicode="&#x44a;" horiz-adv-x="604" +d="M574 186q0 -60 -21 -98t-57 -59t-84 -28.5t-102 -7.5q-41 0 -86.5 3t-90.5 11q-17 3 -21.5 12t-4.5 29v397h-66q-11 0 -16 6t-5 14v87q0 8 5 14.5t16 6.5h207q8 0 14 -4.5t6 -16.5v-166q11 1 21 1h21q54 0 102 -7.5t84 -29t57 -59t21 -97.5v-8zM310 267q-8 0 -22.5 -0.5 +t-19.5 -0.5v-148q5 0 12.5 -0.5t29.5 -0.5q62 0 84.5 16.5t22.5 52.5v8q0 36 -22 54.5t-85 18.5z" /> + <glyph glyph-name="afii10093" unicode="&#x44b;" horiz-adv-x="819" +d="M759 20q0 -8 -6 -14t-14 -6h-121q-8 0 -14 6t-6 14v533q0 8 6 14t14 6h121q8 0 14 -6t6 -14v-533zM527 186q0 -60 -21 -98t-57 -59t-84 -28.5t-102 -7.5q-41 0 -86.5 3t-90.5 11q-17 3 -21.5 12t-4.5 29v504q0 12 6.5 16.5t14.5 4.5h120q8 0 14 -4.5t6 -16.5v-166 +q11 1 21 1h21q54 0 102 -7.5t84 -29t57 -59t21 -97.5v-8zM263 267q-8 0 -22.5 -0.5t-19.5 -0.5v-148q5 0 12.5 -0.5t29.5 -0.5q62 0 84.5 16.5t22.5 52.5v8q0 36 -22 54.5t-85 18.5z" /> + <glyph glyph-name="afii10094" unicode="&#x44c;" horiz-adv-x="557" +d="M527 186q0 -60 -21 -98t-57 -59t-84 -28.5t-102 -7.5q-41 0 -86.5 3t-90.5 11q-17 3 -21.5 12t-4.5 29v504q0 12 6.5 16.5t14.5 4.5h120q8 0 14 -4.5t6 -16.5v-166q11 1 21 1h21q54 0 102 -7.5t84 -29t57 -59t21 -97.5v-8zM263 267q-8 0 -22.5 -0.5t-19.5 -0.5v-148 +q5 0 12.5 -0.5t29.5 -0.5q62 0 84.5 16.5t22.5 52.5v8q0 36 -22 54.5t-85 18.5z" /> + <glyph glyph-name="afii10095" unicode="&#x44d;" horiz-adv-x="524" +d="M60 121q0 8 4 12t17 2q28 -3 52 -5t57 -2q56 0 86 21.5t38 80.5h-209q-11 0 -16 6t-5 14v75q0 8 5 14.5t16 6.5h208q-8 56 -37.5 77t-85.5 21q-33 0 -57 -2t-52 -5q-13 -2 -17 2t-4 13v91q0 11 5 15.5t16 7.5q21 5 54.5 10t78.5 5q139 0 202 -72.5t63 -215.5v-14 +q0 -144 -63 -216t-202 -72q-45 0 -78.5 5t-54.5 10q-11 3 -16 7.5t-5 15.5v92z" /> + <glyph glyph-name="afii10096" unicode="&#x44e;" horiz-adv-x="871" +d="M222 20q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v533q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-194h105q10 103 74 162.5t176 59.5q61 0 107.5 -18.5t78 -52t48 -81.5t16.5 -108v-70q0 -60 -16.5 -108t-48 -81.5t-78 -52t-107.5 -18.5q-114 0 -177.5 60.5t-72.5 166.5h-105 +v-198zM666 321q0 122 -89 122q-44 0 -67 -30.5t-23 -91.5v-70q0 -61 23 -92t67 -31q89 0 89 123v70z" /> + <glyph glyph-name="afii10097" unicode="&#x44f;" horiz-adv-x="570" +d="M145 233q-42 20 -70.5 58t-28.5 97v9q0 53 19.5 89t53.5 57.5t80 31t100 9.5q45 0 94.5 -3t94.5 -10q17 -2 19.5 -8t2.5 -16v-525q0 -9 -6.5 -15.5t-14.5 -6.5h-119q-8 0 -14 6.5t-6 14.5v183h-23h-28l-104 -189q-4 -6 -8.5 -10.5t-14.5 -4.5h-123q-12 0 -18 6t-6 14 +q0 7 5 15zM205 384q0 -38 19 -52.5t75 -14.5h25t26 1v134h-51q-45 0 -69.5 -12t-24.5 -47v-9z" /> + <glyph glyph-name="afii10071" unicode="&#x451;" horiz-adv-x="590" +d="M545 260q0 -24 -21 -24h-319v-2q0 -21 5 -41t17 -35t31.5 -24t49.5 -9q24 0 51 1t53.5 2t49.5 2.5t38 3.5h3q19 0 19 -16v-76q0 -12 -4 -18t-17 -9q-48 -12 -94 -18t-111 -6q-45 0 -90 13t-81 43t-58 79.5t-22 121.5v70q0 60 17 109t49.5 83t79.5 52.5t107 18.5 +q61 0 107.5 -20t77.5 -55t46.5 -83t15.5 -105v-58zM387 340q0 56 -24 83.5t-66 27.5t-67 -28t-25 -83v-4h182v4zM470 658q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM253 658q0 -8 -6.5 -14t-14.5 -6h-94q-8 0 -15 6t-7 14 +v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="afii10099" unicode="&#x452;" horiz-adv-x="642" +d="M582 -32q0 -50 -11 -83t-31.5 -52.5t-50 -27.5t-65.5 -8q-39 0 -80 7q-20 3 -20 20v79q0 18 21 18h44q21 0 26 10.5t5 36.5v386q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v600h-47 +q-8 0 -14 6t-6 14v42q0 8 6 14t14 6h47v44q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-44h107q8 0 14 -6t6 -14v-42q0 -8 -6 -14t-14 -6h-107v-85q38 25 73 35t80 10q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-386v0z" /> + <glyph glyph-name="afii10100" unicode="&#x453;" horiz-adv-x="422" +d="M266 438q-17 0 -25.5 -4t-13 -10.5t-5 -16t-0.5 -20.5v-367q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v367q0 37 8.5 71t31 59.5t62.5 40.5t103 15h121q11 0 16 -6.5t5 -14.5v-94q0 -8 -5 -14t-16 -6h-120zM425 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107 +q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="afii10101" unicode="&#x454;" horiz-adv-x="524" +d="M464 29q0 -11 -5 -15.5t-16 -7.5q-21 -5 -54.5 -10t-78.5 -5q-139 0 -202 72t-63 216v14q0 143 63 215.5t202 72.5q45 0 78.5 -5t54.5 -10q11 -3 16 -7.5t5 -15.5v-91q0 -9 -4 -13t-17 -2q-28 3 -52 5t-57 2q-56 0 -86 -21t-38 -77h209q11 0 16 -6.5t5 -14.5v-75 +q0 -8 -5 -14t-16 -6h-210q7 -59 38 -80.5t87 -21.5q33 0 57 2t52 5q13 2 17 -2t4 -12v-92v0z" /> + <glyph glyph-name="afii10102" unicode="&#x455;" horiz-adv-x="503" +d="M461 159q0 -35 -13 -66t-39.5 -53.5t-66.5 -35.5t-95 -13q-21 0 -44.5 1.5t-48 4.5t-47.5 7t-42 9t-19 23v81q0 9 6 15t17 4q20 -3 44.5 -5.5t48.5 -4.5t44.5 -3t32.5 -1q36 0 47.5 9.5t11.5 29.5q0 11 -8 20.5t-29 21.5l-130 75q-42 24 -65.5 61.5t-23.5 86.5 +q0 76 50.5 115.5t154.5 39.5q59 0 99.5 -6.5t78.5 -16.5q19 -5 19 -23v-81q0 -22 -20 -19q-11 1 -31 3.5t-43.5 4.5t-48 3.5t-43.5 1.5q-29 0 -41 -6t-12 -23q0 -11 8 -18.5t23 -16.5l124 -71q31 -18 50.5 -36.5t31 -38t15.5 -39.5t4 -40z" /> + <glyph glyph-name="afii10103" unicode="&#x456;" horiz-adv-x="290" +d="M230 658q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h130q8 0 14 -6t6 -14v-93zM226 20q0 -8 -6 -14t-14 -6h-122q-8 0 -14 6t-6 14v533q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-533z" /> + <glyph glyph-name="afii10104" unicode="&#x457;" horiz-adv-x="290" +d="M226 21q0 -8 -6.5 -14.5t-14.5 -6.5h-120q-8 0 -14.5 6.5t-6.5 14.5v531q0 8 6.5 14.5t14.5 6.5h120q8 0 14.5 -6.5t6.5 -14.5v-531zM323 658q0 -8 -7 -14t-15 -6h-94q-8 0 -14.5 6t-6.5 14v93q0 8 6.5 14t14.5 6h94q8 0 15 -6t7 -14v-93zM106 658q0 -8 -6.5 -14 +t-14.5 -6h-94q-8 0 -15 6t-7 14v93q0 8 7 14t15 6h94q8 0 14.5 -6t6.5 -14v-93z" /> + <glyph glyph-name="afii10105" unicode="&#x458;" horiz-adv-x="290" +d="M230 658q0 -8 -6.5 -14t-14.5 -6h-129q-8 0 -14 6t-6 14v93q0 8 6 14t14 6h129q8 0 14.5 -6t6.5 -14v-93zM226 -32q0 -50 -11 -83t-31.5 -52.5t-50 -27.5t-65.5 -8q-39 0 -80 7q-20 3 -20 20v79q0 18 21 18h44q21 0 26 10.5t5 36.5v584q0 8 5.5 14.5t13.5 6.5h124 +q8 0 13.5 -6.5t5.5 -14.5v-584z" /> + <glyph glyph-name="afii10106" unicode="&#x459;" horiz-adv-x="857" +d="M827 186q0 -60 -21 -98t-57 -59t-84 -28.5t-102 -7.5q-41 0 -86.5 3t-90.5 11q-17 3 -21.5 12t-4.5 29v385h-69q-5 0 -9 -2t-6 -10l-91 -399q-2 -9 -9.5 -15.5t-18.5 -6.5h-112q-11 0 -18 6.5t-7 16.5q0 1 0.5 3t0.5 4l117 452q7 28 18.5 46t28.5 28t41 13.5t57 3.5h218 +q8 0 14 -4.5t6 -16.5v-166q11 1 21 1h21q54 0 102 -7.5t84 -29t57 -59t21 -97.5v-8zM563 267q-8 0 -22.5 -0.5t-19.5 -0.5v-148q5 0 12.5 -0.5t29.5 -0.5q62 0 84.5 16.5t22.5 52.5v8q0 36 -22 54.5t-85 18.5z" /> + <glyph glyph-name="afii10107" unicode="&#x45a;" horiz-adv-x="892" +d="M862 186q0 -60 -21 -98t-57 -59t-84 -28.5t-102 -7.5h-31t-37 1t-48.5 2t-64.5 4q-8 1 -14.5 4.5t-6.5 16.5v209h-175v-209q0 -11 -6 -16t-14 -5h-120q-8 0 -14.5 5t-6.5 16v531q0 12 6.5 16.5t14.5 4.5h120q8 0 14 -4.5t6 -16.5v-187h175v187q0 12 6.5 16.5t14.5 4.5 +h119q8 0 14 -4.5t6 -16.5v-166q11 1 21 1h21q54 0 102 -7.5t84 -29t57 -59t21 -97.5v-8zM598 267q-8 0 -22.5 -0.5t-19.5 -0.5v-148q5 0 12.5 -0.5t29.5 -0.5q62 0 84.5 16.5t22.5 52.5v8q0 36 -22 54.5t-85 18.5z" /> + <glyph glyph-name="afii10108" unicode="&#x45b;" horiz-adv-x="642" +d="M582 21q0 -8 -6.5 -14.5t-14.5 -6.5h-121q-8 0 -14 6.5t-6 14.5v333q0 26 -3 44t-11 29t-22.5 15.5t-37.5 4.5q-22 0 -45 -9t-49 -23v-394q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v600h-47q-8 0 -14 6t-6 14v42q0 8 6 14t14 6h47v44q0 8 6 14t14 6h122 +q8 0 14 -6t6 -14v-44h107q8 0 14 -6t6 -14v-42q0 -8 -6 -14t-14 -6h-107v-85q38 25 73 35t80 10q54 0 88.5 -18t54 -48.5t27 -72t7.5 -88.5v-333v0z" /> + <glyph glyph-name="afii10109" unicode="&#x45c;" horiz-adv-x="588" +d="M558 562q0 -5 -4 -10l-186 -253l185 -278q2 -2 2 -8q0 -13 -13 -13h-151q-8 0 -13.5 2.5t-11.5 11.5l-144 235v-228q0 -8 -6 -14.5t-14 -6.5h-121q-8 0 -14.5 6.5t-6.5 14.5v532q0 8 6.5 14t14.5 6h121q8 0 14 -6t6 -14v-224l152 229q6 9 13 12t13 3h143q15 0 15 -11z +M476 772q0 -4 -4 -8l-122 -122q-6 -6 -10 -9t-14 -3h-107q-9 0 -9 7q0 5 4 10l93 117q7 8 11.5 11.5t15.5 3.5h131q11 0 11 -7z" /> + <glyph glyph-name="afii10110" unicode="&#x45e;" horiz-adv-x="592" +d="M397 554q2 8 7.5 13.5t13.5 5.5h133q11 0 15.5 -7t2.5 -16l-168 -589q-12 -41 -27 -71.5t-39 -50.5t-61 -30.5t-92 -10.5q-14 0 -31 1.5t-34 3.5t-32 5t-24 6q-8 3 -14.5 6.5t-6.5 11.5v81q0 8 6 13.5t14 5.5h2q12 -1 28.5 -2t34 -2.5t34 -2.5t28.5 -1q27 0 42 11t24 41 +l9 31h-15q-14 0 -26.5 2.5t-24.5 11.5t-22.5 27.5t-19.5 51.5l-132 450q-1 3 -1 7q0 16 20 16h133q8 0 12.5 -5.5t6.5 -13.5l90 -376q4 -19 12 -19h1h4h4zM481 772q0 -1 -0.5 -1.5t-0.5 -2.5q-7 -30 -21.5 -56.5t-37.5 -46t-54.5 -31t-71.5 -11.5q-41 0 -72 11.5t-54 31 +t-37.5 46t-21.5 56.5q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h87q10 0 13 -12q8 -32 28 -44.5t48 -12.5t48 12.5t28 44.5q2 6 3.5 9t9.5 3h87q10 0 10 -7z" /> + <glyph glyph-name="afii10193" unicode="&#x45f;" horiz-adv-x="612" +d="M60 553q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-367q0 -11 0.5 -20.5t5 -16.5t13 -10.5t25.5 -3.5h80q16 0 25 3.5t13.5 10.5t5 16.5t0.5 20.5v367q0 8 6 14t14 6h122q8 0 14 -6t6 -14v-353q0 -39 -7 -72.5t-25 -60t-50.5 -43.5t-83.5 -22v-103q0 -8 -6 -14t-14 -6h-121 +q-8 0 -14 6t-6 14v103q-51 5 -83 22t-50.5 43.5t-25 60t-6.5 72.5v353z" /> + <glyph glyph-name="franc" unicode="&#x20a3;" horiz-adv-x="581" +d="M237 113v-93q0 -8 -6 -14t-14 -6h-130q-8 0 -14 6t-6 14v93h-47q-8 0 -14 6t-6 14v95q0 8 6 14t14 6h47v289q0 68 20 110t53.5 65t78 31t92.5 8q40 0 70.5 -1.5t53.5 -3.5t39.5 -4t29.5 -4q20 -3 20 -20v-93q0 -8 -6 -14t-14 -6h-203q-35 0 -49.5 -14.5t-14.5 -53.5v-90 +h259q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-259v-64h119q8 0 14 -6t6 -14v-95q0 -8 -6 -14t-14 -6h-119z" /> + <glyph glyph-name="lira" unicode="&#x20a4;" +d="M302 230v-20q0 -25 -6 -43.5t-14 -32.5h274q8 0 14 -5t6 -13v-97q0 -8 -6 -13.5t-14 -5.5h-442q-11 0 -15 8t-4 16v70q0 9 2.5 14t6.5 10q12 14 22.5 40t10.5 52v20h-50q-19 0 -19 19v57q0 8 6 13.5t14 5.5h49v65h-50q-19 0 -19 19v57q0 8 6 13.5t14 5.5h49v43 +q0 58 14 100.5t44.5 70t79 40.5t118.5 13q21 0 45.5 -2t47 -5t41.5 -6t31 -6q14 -3 16.5 -7.5t2.5 -12.5v-99q0 -11 -5.5 -15t-13.5 -3q-32 4 -78.5 8t-86.5 4q-49 0 -70 -15.5t-21 -63.5v-44h169q8 0 14 -5.5t6 -13.5v-57q0 -19 -19 -19h-170v-65h169q8 0 14 -5.5t6 -13.5 +v-57q0 -19 -19 -19h-170z" /> + <glyph glyph-name="peseta" unicode="&#x20a7;" horiz-adv-x="1575" +d="M618 502q0 -70 -25.5 -116.5t-67.5 -74.5t-95.5 -39.5t-109.5 -11.5q-18 0 -40 1t-41 2v-243q0 -8 -6 -14t-14 -6h-129q-8 0 -14 5.5t-6 13.5v672q0 26 11 35t34 13q38 6 93.5 9.5t109.5 3.5q57 0 111 -11t96 -39t67.5 -74.5t25.5 -116.5v-9zM448 511q0 54 -32.5 76.5 +t-95.5 22.5q-5 0 -17 -0.5t-24.5 -1t-24 -1t-15.5 -0.5v-204q4 0 15.5 -0.5t25 -1t25 -0.5h15.5q67 0 97.5 25t30.5 76v9zM1041 19q0 -17 -19 -20q-23 -4 -40 -6t-39 -2q-41 0 -72.5 6.5t-52.5 25.5t-32 52.5t-11 86.5v290l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5 +t14.5 6.5h80v82q0 8 6 13t14 7l122 21q13 2 17 -3.5t4 -13.5v-106h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82v-291q0 -30 5 -38.5t28 -8.5h49q21 0 21 -17v-78zM1533 159q0 -35 -13 -66t-39.5 -53.5t-66.5 -35.5t-95 -13q-21 0 -44.5 1.5t-48 4.5t-47.5 7t-42 9 +t-19 23v81q0 9 5 15t18 4q20 -3 44.5 -5.5t48.5 -4.5t44.5 -3t32.5 -1q36 0 47.5 9.5t11.5 29.5q0 11 -8 20.5t-29 21.5l-130 75q-42 24 -65.5 61.5t-23.5 86.5q0 76 50.5 115.5t154.5 39.5q59 0 99.5 -6.5t78.5 -16.5q19 -5 19 -23v-81q0 -20 -20 -19q-11 1 -31 3 +t-43.5 4.5t-48 4t-43.5 1.5q-29 0 -41 -6t-12 -23q0 -11 8 -18.5t23 -16.5l124 -71q31 -18 50.5 -36.5t31 -38t15.5 -39.5t4 -40z" /> + <glyph glyph-name="Euro" unicode="&#x20ac;" +d="M578 31q0 -11 -5.5 -15.5t-16.5 -7.5q-16 -5 -51 -11t-88 -6t-104 13.5t-92.5 45t-70 82.5t-36.5 126h-27q-8 0 -14 6t-6 14v44q0 8 6 14t14 6h24v62h-24q-8 0 -14 6t-6 14v44q0 8 6 14t14 6h27q8 73 37 123.5t70.5 81.5t92 44.5t103.5 13.5t88 -6t51 -11q11 -3 16.5 -7 +t5.5 -15v-97q0 -20 -19 -20h-3q-29 2 -62.5 5t-75.5 3q-22 0 -43 -5.5t-38 -18.5t-30 -35.5t-19 -55.5h213q17 0 17 -15q0 -3 -1 -5l-12 -44q-6 -20 -20 -20h-201v-62h183q6 0 10 -3.5t4 -8.5v-3l-15 -60q-2 -9 -14 -9h-164q6 -35 18.5 -57.5t30 -36t38.5 -19t43 -5.5 +q42 0 75.5 3t62.5 5h3q19 0 19 -20v-97v0z" /> + <glyph glyph-name="afii61289" unicode="&#x2113;" horiz-adv-x="540" +d="M499 63q4 -8 2.5 -14t-9.5 -11q-11 -8 -30 -17.5t-42.5 -17.5t-51 -13t-56.5 -5q-93 0 -132 47.5t-39 153.5v60l-60 -42q-5 -3 -10.5 -3.5t-9.5 5.5l-23 36q-7 13 3 20l100 69v265q0 100 43.5 148.5t138.5 48.5q51 0 85.5 -12t55.5 -32.5t30.5 -47.5t9.5 -57 +q0 -77 -49.5 -156.5t-152.5 -153.5v-137q0 -48 18 -67t47 -19q20 0 40 7t38 16q9 5 14.5 4.5t10.5 -9.5zM427 644q0 12 -2 25.5t-8.5 25t-18.5 18.5t-31 7q-21 0 -34 -8.5t-20 -24t-9 -38.5t-2 -53v-172q66 56 95.5 113t29.5 107z" /> + <glyph glyph-name="afii61352" unicode="&#x2116;" horiz-adv-x="1216" +d="M1166 61q0 -8 -6 -14t-14 -6h-382q-8 0 -14 6t-6 14v69q0 8 6 14t14 6h382q8 0 14 -6t6 -14v-69zM659 38q0 -16 -11.5 -27t-27.5 -11h-98q-16 0 -28 5.5t-24 25.5l-228 394q-5 8 -9 8q-5 0 -5 -8v-405q0 -8 -6 -14t-14 -6h-118q-8 0 -14 6t-6 14v685q0 16 11 27t27 11 +h101q15 0 24 -7.5t18 -23.5l237 -412q5 -8 8 -8q5 0 5 9v423q0 8 6 13.5t14 5.5h118q8 0 14 -5.5t6 -13.5v-686zM1166 413q0 -101 -53.5 -160t-156.5 -59t-157 59t-54 160v59q0 101 54 159.5t157 58.5t156.5 -58.5t53.5 -159.5v-59zM1031 472q0 102 -75 102q-76 0 -76 -102 +v-59q0 -103 76 -103q75 0 75 103v59z" /> + <glyph glyph-name="estimated" unicode="&#x212e;" horiz-adv-x="606" +d="M148 282v-193q32 -30 69.5 -46.5t82.5 -16.5q42 0 73.5 10.5t56.5 27.5t44 40t36 49l31 -19q-20 -30 -42.5 -56t-51 -45t-64.5 -29.5t-83 -10.5q-61 0 -111 23t-85.5 63t-55 92.5t-19.5 111.5q0 60 19 112.5t54.5 92t86.5 62.5t115 23t114.5 -23.5t85.5 -63t54 -92.5 +t19 -112h-429zM457 478q-27 25 -68 43.5t-85 18.5q-45 0 -85.5 -15.5t-70.5 -46.5v-163h309v163z" /> + <glyph glyph-name="partialdiff" unicode="&#x2202;" horiz-adv-x="623" +d="M583 457q0 -51 -5.5 -106t-15.5 -104q-26 -128 -97 -192t-195 -64q-115 0 -172.5 55.5t-57.5 155.5q0 22 2 45t8 61q12 66 36.5 111.5t60 73.5t79.5 40t94 12q28 0 58.5 -8t49.5 -22q-1 5 -2.5 12t-3.5 13q-4 31 -14.5 59.5t-32 51t-56.5 36t-88 13.5q-23 0 -47 -1.5 +t-50 -6.5q-17 -3 -15 11l7 65q2 11 6.5 14.5t12.5 5.5q28 5 56.5 8t58.5 3q82 0 143 -24.5t101 -69.5t59.5 -108t19.5 -140zM409 339q0 41 -18 61.5t-61 20.5q-51 0 -78.5 -34.5t-37.5 -102.5q-5 -35 -7 -53t-2 -32q0 -42 18.5 -63.5t60.5 -21.5q51 0 77.5 34.5t37.5 102.5 +q6 36 8 55t2 33z" /> + <glyph glyph-name="product" unicode="&#x220f;" horiz-adv-x="839" +d="M714 -54q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v648h-247v-648q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v648h-50q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h689q8 0 14 -6t6 -14v-109q0 -8 -6 -14t-14 -6h-50v-648v0z" /> + <glyph glyph-name="summation" unicode="&#x2211;" horiz-adv-x="547" +d="M492 -59q0 -16 -14 -16h-406q-11 0 -14 6t-3 14v126q0 14 6 24l171 227q2 4 2.5 6.5t0.5 5.5t-0.5 5.5t-2.5 6.5l-171 227q-6 10 -6 24v126q0 8 3 14t14 6h406q14 0 14 -16v-116q0 -8 -2.5 -12.5t-11.5 -4.5h-244q-8 0 -3 -9l157 -217q6 -9 6 -20v-28q0 -11 -6 -20 +l-157 -218q-5 -9 3 -9h244q9 0 11.5 -4.5t2.5 -12.5v-115v0z" /> + <glyph glyph-name="uni2219" unicode="&#x2219;" horiz-adv-x="274" +d="M216 319q0 -8 -6 -14t-14 -6h-117q-8 0 -14.5 6t-6.5 14v126q0 8 6.5 13.5t14.5 5.5h117q8 0 14 -5.5t6 -13.5v-126v0z" /> + <glyph glyph-name="radical" unicode="&#x221a;" horiz-adv-x="730" +d="M714 858q5 8 7 11.5t12 3.5h125q10 0 10.5 -4t-2.5 -10l-427 -918q-7 -16 -28 -16h-185q-9 0 -12 4t-5 14l-32 402q-1 7 -2.5 9t-7.5 2h-62q-7 0 -8.5 3.5t-0.5 8.5l17 97q3 14 14 14h168q7 0 11.5 -2.5t5.5 -12.5l31 -423z" /> + <glyph glyph-name="infinity" unicode="&#x221e;" horiz-adv-x="649" +d="M609 366q0 -38 -6.5 -79.5t-25 -76t-53 -57t-90.5 -22.5h-6q-29 0 -58 10.5t-54 35.5q-38 -47 -98 -47h-7q-56 0 -89.5 22.5t-51.5 57t-24 76t-6 79.5v25q0 38 6.5 79.5t25 76t52.5 57t90 22.5h7q29 0 58 -11t53 -35q19 25 43 36t57 11h6q56 0 89.5 -22.5t51.5 -57 +t24 -76.5t6 -80v-24zM490 390q0 26 -1.5 50t-6.5 42.5t-15.5 29.5t-28.5 11h-5q-25 -1 -35.5 -36t-20.5 -110q-5 -42 -9 -66t-9 -44q18 -21 36 -27.5t34 -6.5h5q18 0 29 11t17 30t8 42.5t2 49.5v24zM288 485q-16 20 -34 28.5t-34 8.5h-5q-18 0 -29 -12t-17 -30.5t-7.5 -42 +t-1.5 -47.5v-25q0 -24 1 -47.5t6.5 -42t16 -30.5t28.5 -12h5q24 0 35 34t21 117q5 38 8.5 61t6.5 40z" /> + <glyph glyph-name="integral" unicode="&#x222b;" horiz-adv-x="479" +d="M321 -37q0 -53 -11 -86.5t-32 -52.5t-52.5 -25.5t-72.5 -6.5q-22 0 -39 2t-40 6q-19 3 -19 20v78q0 17 21 17h49q23 0 28 8.5t5 38.5v643q0 53 11 86.5t32 52t52.5 25.5t72.5 7q22 0 39 -2t40 -6q19 -3 19 -20v-78q0 -17 -21 -17h-49q-23 0 -28 -8.5t-5 -38.5v-643z" /> + <glyph glyph-name="approxequal" unicode="&#x2248;" horiz-adv-x="549" +d="M470 547q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5q11 0 17 5.5t6 21.5v19q0 16 16 16h70 +q15 0 15 -16v-20zM470 327q0 -66 -32.5 -93t-89.5 -27q-15 0 -35 5.5t-36 16.5l-42 29q-26 18 -41 18q-10 0 -16.5 -5.5t-6.5 -21.5v-19q0 -17 -15 -17h-71q-15 0 -15 17v19q0 65 33 92t90 27q15 0 34.5 -5t35.5 -16l43 -28q13 -8 22.5 -13t17.5 -5q11 0 17 5.5t6 21.5v19 +q0 16 16 16h70q15 0 15 -16v-20z" /> + <glyph glyph-name="notequal" unicode="&#x2260;" +d="M471 743q11 0 15 -6t2 -14l-43 -143h87q8 0 14 -4t6 -12v-90q0 -8 -6 -12t-14 -4h-124l-40 -134h164q8 0 14 -4t6 -12v-90q0 -8 -6 -12t-14 -4h-201l-54 -181q-2 -8 -7 -14.5t-13 -6.5h-107q-8 0 -15 4.5t-3 16.5l54 181h-73q-8 0 -14 4t-6 12v90q0 8 6 12t14 4h110 +l41 134h-151q-8 0 -14 4t-6 12v90q0 8 6 12t14 4h188l43 143q2 8 7 14t13 6h107z" /> + <glyph glyph-name="lessequal" unicode="&#x2264;" +d="M536 150q0 -13 -12 -13h-139q-8 0 -13.5 3t-10.5 8l-233 207q-20 17 -20 36t20 36l233 207q5 5 10.5 8t13.5 3h139q12 0 12 -13q0 -6 -6 -12l-259 -229l259 -229q6 -6 6 -12zM558 -4q0 -8 -6 -12t-14 -4h-431q-8 0 -14 4t-6 12v71q0 8 6 12t14 4h431q8 0 14 -4t6 -12v-71 +z" /> + <glyph glyph-name="greaterequal" unicode="&#x2265;" +d="M536 391q0 -11 -5 -19t-16 -17l-232 -207q-5 -5 -10.5 -8t-13.5 -3h-139q-12 0 -12 13q0 6 6 12l259 229l-259 229q-6 6 -6 12q0 13 12 13h139q8 0 13.5 -3t10.5 -8l232 -207q11 -9 16 -17t5 -19zM558 -4q0 -8 -6 -12t-14 -4h-431q-8 0 -14 4t-6 12v71q0 8 6 12t14 4h431 +q8 0 14 -4t6 -12v-71z" /> + <glyph glyph-name="lozenge" unicode="&#x25ca;" horiz-adv-x="576" +d="M536 364q0 -21 -15 -41l-203 -249q-16 -19 -30 -19t-29 19l-203 249q-16 19 -16 41q0 21 16 40l204 255q11 14 28 14q18 0 29 -14l204 -255q15 -20 15 -40zM392 363q0 8 -8 19l-77 100q-9 10 -19 10t-19 -10l-77 -100q-8 -11 -8 -19q0 -11 9 -21l76 -95q6 -8 10 -10.5 +t9 -2.5q10 0 20 13l75 95q9 10 9 21z" /> + <glyph glyph-name="uni00A0" unicode="&#xa0;" horiz-adv-x="260" + /> + <glyph glyph-name="uni00AD" unicode="&#xad;" horiz-adv-x="302" +d="M268 264q0 -8 -6 -13t-14 -5h-194q-8 0 -14 5t-6 13v80q0 8 6 13.5t14 5.5h194q8 0 14 -5.5t6 -13.5v-80v0z" /> + <glyph glyph-name="uni02C9" unicode="&#x2c9;" horiz-adv-x="443" +d="M404 672q0 -8 -6 -13.5t-14 -5.5h-324q-8 0 -14 5.5t-6 13.5v72q0 8 6 13.5t14 5.5h324q8 0 14 -5.5t6 -13.5v-72v0z" /> + <glyph glyph-name="zero.fitted" unicode="&#xf639;" +d="M592 328q0 -90 -18.5 -154t-53 -104.5t-84.5 -59.5t-114 -19t-114 19t-84.5 59.5t-52.5 104.5t-18 154v86q0 90 18 154t52.5 105t84.5 60t114 19t114 -19t84.5 -60t53 -105t18.5 -154v-86zM421 414q0 59 -7.5 97t-21 60t-31.5 30.5t-39 8.5t-39 -8.5t-31 -30.5t-20.5 -60 +t-7.5 -97v-86q0 -59 7.5 -97t20.5 -60t31 -30t39 -8t39 8t31.5 30t21 60t7.5 97v86z" /> + <glyph glyph-name="one.fitted" unicode="&#xf6dc;" horiz-adv-x="439" +d="M342 20q0 -8 -5.5 -14t-13.5 -6h-131q-8 0 -14 6t-6 14v552l-112 -46q-8 -3 -12 -3q-11 0 -11 13v114q0 10 10 14l163 75q9 4 23 4h90q19 0 19 -19v-704v0z" /> + <glyph glyph-name="two.fitted" unicode="&#xf63a;" +d="M570 561q0 -61 -29.5 -105.5t-85.5 -82.5l-85 -57q-32 -21 -58.5 -40.5t-46 -39.5t-30 -42t-10.5 -48v-4h316q8 0 14 -5.5t6 -13.5v-103q0 -8 -6 -14t-14 -6h-445q-8 0 -14 6t-6 14v102q0 83 39.5 148t96.5 106l92 65q33 23 53 37.5t31 26t14.5 23t3.5 29.5 +q0 32 -22.5 46t-83.5 14q-46 0 -98.5 -4t-98.5 -9h-2q-8 0 -13 6t-5 14v78q0 8 5.5 12.5t13.5 6.5q42 13 99.5 22t113.5 9q138 0 196.5 -47.5t58.5 -143.5z" /> + <glyph glyph-name="three.fitted" unicode="&#xf63b;" +d="M566 212q0 -57 -19 -99t-53.5 -69t-82.5 -40t-106 -13q-59 0 -113.5 8t-93.5 20q-8 2 -13.5 6.5t-5.5 12.5v80q0 8 5 13t13 5h2q53 -5 105.5 -7t93.5 -2q54 0 76.5 21.5t22.5 63.5v18q0 17 -3.5 32.5t-12.5 27.5t-25 19t-40 7h-176q-8 0 -13.5 6t-5.5 14v85q0 19 19 19 +h172q24 0 40.5 7.5t26.5 19.5t14 27.5t4 32.5v14q0 34 -20.5 54.5t-78.5 20.5q-26 0 -49.5 -1t-47 -2.5t-48 -3.5t-52.5 -5h-2q-8 0 -13 5t-5 13v80q0 8 6 12.5t14 6.5q39 12 92 21.5t112 9.5q61 0 109.5 -11t82 -35.5t51.5 -63.5t18 -95v-14q0 -44 -24.5 -87t-64.5 -66 +q42 -22 65.5 -61.5t23.5 -88.5v-18v0z" /> + <glyph glyph-name="four.fitted" unicode="&#xf63c;" +d="M606 187q0 -8 -6 -14t-14 -6h-66v-147q0 -8 -5.5 -14t-13.5 -6h-133q-8 0 -13.5 6t-5.5 14v147h-289q-8 0 -14 6t-6 14v97q0 15 11 31l316 414q5 7 11 10.5t15 3.5h107q8 0 14 -6t6 -14v-424h66q8 0 14 -6t6 -14v-92zM354 519q0 6 -4 6q-1 0 -3 -2l-157 -214q-2 -2 -2 -6 +t6 -4h160v220z" /> + <glyph glyph-name="five.fitted" unicode="&#xf63d;" +d="M566 236q0 -119 -69 -182t-201 -63q-48 0 -100.5 7.5t-96.5 21.5q-8 2 -14 6.5t-6 15.5v79q0 8 5 13t13 5h2q24 -3 49.5 -5t50 -3.5t45.5 -2.5t35 -1q36 0 58 7.5t35 21.5t17.5 34t4.5 46v8q0 25 -6.5 42.5t-23 28.5t-43.5 16t-69 5h-155q-6 0 -10 4.5t-4 9.5v1l31 373 +q1 8 6.5 13.5t13.5 5.5h389q8 0 14 -5.5t6 -13.5v-100q0 -8 -6 -13.5t-14 -5.5h-272l-12 -138h29q65 0 119.5 -10.5t94.5 -36t62 -68.5t22 -108v-8v0z" /> + <glyph glyph-name="six.fitted" unicode="&#xf63e;" +d="M589 245q0 -57 -17 -104t-50.5 -80t-83 -51.5t-113.5 -18.5q-60 0 -109.5 18t-85 54.5t-54.5 91.5t-19 130v153q0 85 19.5 144.5t55.5 97t87.5 55t115.5 17.5q68 0 117 -6t80 -14q22 -6 22 -22v-87q0 -21 -18 -21h-5q-18 3 -40.5 5.5t-46.5 4.5t-48.5 3t-46.5 1 +q-66 0 -95.5 -31.5t-29.5 -114.5v-7q20 4 53 8t65 4q51 0 95.5 -11.5t78.5 -38t53.5 -69t19.5 -104.5v-7zM422 252q0 31 -8.5 51t-23 32t-34 16.5t-41.5 4.5q-10 0 -22 -1t-24.5 -2.5t-24 -3.5t-20.5 -3v-61q0 -51 7.5 -83t21 -50t32 -24.5t40.5 -6.5q21 0 38.5 5.5 +t30.5 19.5t20.5 38t7.5 61v7z" /> + <glyph glyph-name="seven.fitted" unicode="&#xf63f;" horiz-adv-x="588" +d="M534 637q0 -10 -4.5 -21t-11.5 -25l-263 -572q-9 -19 -25 -19h-137q-18 0 -18 12q0 5 3 11l272 571q1 2 1 5q0 6 -7 6h-277q-8 0 -14.5 5.5t-6.5 13.5v100q0 8 6.5 13.5t14.5 5.5h433q14 0 24 -9.5t10 -23.5v-73v0z" /> + <glyph glyph-name="eight.fitted" unicode="&#xf640;" +d="M593 213q0 -54 -19.5 -95.5t-54.5 -69.5t-83.5 -42.5t-107.5 -14.5h-11q-59 0 -107.5 14.5t-83.5 42.5t-54.5 69.5t-19.5 95.5v13q0 50 23.5 91t61.5 69q-81 55 -81 150v11q0 52 18.5 91t52.5 64t82.5 37.5t107.5 12.5h11q59 0 107.5 -12.5t83 -37.5t53 -64t18.5 -91v-11 +q0 -94 -82 -150q38 -28 61.5 -69t23.5 -91v-13zM429 536q0 40 -23 65.5t-78 25.5h-11q-55 0 -78 -25.5t-23 -65.5v-5q0 -38 22 -62.5t69 -24.5h31q47 0 69 24.5t22 62.5v5zM428 228q0 17 -5 34.5t-15.5 31t-27.5 22t-42 8.5h-31q-25 0 -42 -8.5t-27.5 -22t-15.5 -31 +t-5 -34.5v-10q0 -44 25 -72.5t75 -28.5h11q50 0 75 28.5t25 72.5v10z" /> + <glyph glyph-name="nine.fitted" unicode="&#xf641;" +d="M589 305q0 -85 -19.5 -144.5t-55.5 -97t-87.5 -55t-115.5 -17.5q-68 0 -117 6t-80 14q-22 5 -22 22v87q0 21 18 21h5q18 -3 40.5 -5.5t46.5 -4.5t48.5 -3t46.5 -1q66 0 95.5 31.5t29.5 114.5v7q-20 -4 -53 -8t-65 -4q-51 0 -95.5 11.5t-78.5 37.5t-53.5 69t-19.5 105v7 +q0 57 17 104t50.5 80t82.5 51.5t114 18.5q60 0 109.5 -18t85 -54.5t54.5 -91.5t19 -130v-153zM422 458q0 51 -7.5 83t-21 50t-32 24.5t-40.5 6.5q-21 0 -38.5 -5.5t-30.5 -19.5t-20.5 -38t-7.5 -61v-7q0 -31 8.5 -51t23 -32t34 -16.5t41.5 -4.5q10 0 22 1t24.5 2.5t24 3 +t20.5 3.5v61z" /> + <glyph glyph-name="zero.taboldstyle" unicode="&#xf643;" +d="M592 298q0 -158 -71 -232.5t-199 -74.5t-198.5 74.5t-70.5 232.5v6q0 158 70.5 233t198.5 75t199 -75t71 -233v-6zM421 304q0 52 -7.5 84.5t-21 50.5t-31.5 24.5t-39 6.5t-39 -6.5t-31 -24.5t-20.5 -50.5t-7.5 -84.5v-6q0 -52 7.5 -84t20.5 -50t31 -24.5t39 -6.5t39 6.5 +t31.5 24.5t21 50t7.5 84v6z" /> + <glyph glyph-name="one.taboldstyle" unicode="&#xf644;" +d="M254 142v283l-130 -56q-8 -3 -12 -3q-11 0 -11 13v114q0 10 10 14l181 85q9 4 23 4h90q19 0 19 -19v-435h133q8 0 14 -5.5t6 -13.5v-103q0 -8 -6 -14t-14 -6h-436q-8 0 -14 6t-6 14v103q0 8 6 13.5t14 5.5h133z" /> + <glyph glyph-name="two.taboldstyle" unicode="&#xf645;" +d="M570 434q0 -62 -36 -108t-124 -82q-79 -33 -117 -54t-38 -44v-4h286q8 0 14 -5.5t6 -13.5v-103q0 -8 -6 -14t-14 -6h-445q-8 0 -14 6t-6 14v70q0 58 14 98t39.5 68.5t60 48.5t75.5 37q42 18 69.5 30t43.5 21.5t22 18.5t6 22q0 25 -22.5 34t-83.5 9q-46 0 -98.5 -4 +t-98.5 -9h-2q-8 0 -13 6t-5 14v78q0 8 5.5 12.5t13.5 6.5q42 13 99.5 22t113.5 9q69 0 117.5 -10t79 -32t44.5 -55.5t14 -80.5z" /> + <glyph glyph-name="three.taboldstyle" unicode="&#xf646;" +d="M566 72q0 -57 -19 -99t-53.5 -69t-82.5 -40t-106 -13q-59 0 -113.5 8t-93.5 20q-8 2 -13.5 6.5t-5.5 12.5v80q0 9 4 14.5t16 3.5q53 -5 105.5 -7t93.5 -2q54 0 76.5 21.5t22.5 63.5v18q0 17 -3.5 32.5t-12.5 27.5t-25 19t-40 7h-176q-8 0 -13.5 6t-5.5 14v85q0 19 19 19 +h172q24 0 40.5 7.5t26.5 19.5t14 27.5t4 32.5v14q0 34 -20.5 54.5t-78.5 20.5q-26 0 -49.5 -1t-47 -3t-48 -4t-52.5 -4q-20 -1 -20 18v80q0 8 6 12.5t14 6.5q39 12 92 21.5t112 9.5q61 0 109.5 -11t82 -35.5t51.5 -63.5t18 -95v-14q0 -44 -24.5 -87t-64.5 -66 +q42 -22 65.5 -61.5t23.5 -88.5v-18v0z" /> + <glyph glyph-name="four.taboldstyle" unicode="&#xf647;" +d="M606 40q0 -8 -6 -14t-14 -6h-66v-147q0 -8 -5.5 -14t-13.5 -6h-133q-8 0 -13.5 6t-5.5 14v147h-289q-8 0 -14 6t-6 14v97q0 15 11 31l316 414q5 7 11 10.5t15 3.5h107q12 0 16 -6t4 -14v-424h66q8 0 14 -6t6 -14v-92zM354 372q0 6 -4 6q-1 0 -3 -2l-157 -214q-2 -2 -2 -6 +t6 -4h160v220z" /> + <glyph glyph-name="five.taboldstyle" unicode="&#xf648;" +d="M566 89q0 -119 -69 -182t-201 -63q-48 0 -100.5 7.5t-96.5 21.5q-8 2 -14 6.5t-6 15.5v79q0 8 5 13t13 5h2q24 -3 49.5 -5t50 -3.5t45.5 -2.5t35 -1q36 0 58 7.5t35 21.5t17.5 34t4.5 46v8q0 25 -6.5 42.5t-23 28.5t-43.5 16t-69 5h-155q-6 0 -10 4.5t-4 9.5v1l31 373 +q1 8 6.5 13.5t13.5 5.5h389q8 0 14 -5.5t6 -13.5v-100q0 -8 -6 -13.5t-14 -5.5h-272l-12 -138h29q65 0 119.5 -10.5t94.5 -36t62 -68.5t22 -108v-8v0z" /> + <glyph glyph-name="six.taboldstyle" unicode="&#xf649;" +d="M589 245q0 -57 -17 -104t-50.5 -80t-83 -51.5t-113.5 -18.5q-60 0 -109.5 18t-85 54.5t-54.5 91.5t-19 130v153q0 85 19.5 144.5t55.5 97t87.5 55t115.5 17.5q68 0 117 -6t80 -14q22 -6 22 -22v-87q0 -21 -18 -21h-5q-18 3 -40.5 5.5t-46.5 4.5t-48.5 3t-46.5 1 +q-66 0 -95.5 -31.5t-29.5 -114.5v-7q20 4 53 8t65 4q51 0 95.5 -11.5t78.5 -38t53.5 -69t19.5 -104.5v-7zM422 252q0 31 -8.5 51t-23 32t-34 16.5t-41.5 4.5q-10 0 -22 -1t-24.5 -2.5t-24 -3.5t-20.5 -3v-61q0 -51 7.5 -83t21 -50t32 -24.5t40.5 -6.5q21 0 38.5 5.5 +t30.5 19.5t20.5 38t7.5 61v7z" /> + <glyph glyph-name="seven.taboldstyle" unicode="&#xf64a;" +d="M566 491q0 -10 -4.5 -21t-11.5 -25l-263 -572q-9 -19 -25 -19h-137q-18 0 -18 12q0 5 3 11l272 571q1 2 1 5q0 6 -7 6h-277q-8 0 -14.5 5.5t-6.5 13.5v100q0 8 6.5 13.5t14.5 5.5h433q14 0 24 -9.5t10 -23.5v-73v0z" /> + <glyph glyph-name="eight.taboldstyle" unicode="&#xf64b;" +d="M593 213q0 -54 -19.5 -95.5t-54.5 -69.5t-83.5 -42.5t-107.5 -14.5h-11q-59 0 -107.5 14.5t-83.5 42.5t-54.5 69.5t-19.5 95.5v13q0 50 23.5 91t61.5 69q-81 55 -81 150v11q0 52 18.5 91t52.5 64t82.5 37.5t107.5 12.5h11q59 0 107.5 -12.5t83 -37.5t53 -64t18.5 -91v-11 +q0 -94 -82 -150q38 -28 61.5 -69t23.5 -91v-13zM429 536q0 40 -23 65.5t-78 25.5h-11q-55 0 -78 -25.5t-23 -65.5v-5q0 -38 22 -62.5t69 -24.5h31q47 0 69 24.5t22 62.5v5zM428 228q0 17 -5 34.5t-15.5 31t-27.5 22t-42 8.5h-31q-25 0 -42 -8.5t-27.5 -22t-15.5 -31 +t-5 -34.5v-10q0 -44 25 -72.5t75 -28.5h11q50 0 75 28.5t25 72.5v10z" /> + <glyph glyph-name="nine.taboldstyle" unicode="&#xf64c;" +d="M589 166q0 -85 -19.5 -144.5t-55.5 -97t-87.5 -55t-115.5 -17.5q-68 0 -117 6t-80 14q-22 5 -22 22v87q0 15 5.5 19t17.5 2l40.5 -4.5t46.5 -4.5t48.5 -3.5t46.5 -1.5q66 0 95.5 31.5t29.5 114.5v7q-20 -4 -53 -8t-65 -4q-51 0 -95.5 11.5t-78.5 37.5t-53.5 69t-19.5 105 +v7q0 57 17 104t50.5 80t82.5 51.5t114 18.5q60 0 109.5 -18t85 -54.5t54.5 -91.5t19 -130v-153zM422 319q0 51 -7.5 83t-21 50t-32 24.5t-40.5 6.5q-21 0 -38.5 -5.5t-30.5 -19.5t-20.5 -38t-7.5 -61v-7q0 -31 8.5 -51t23 -32t34 -16.5t41.5 -4.5q10 0 22 1t24.5 2.5t24 3 +t20.5 3.5v61z" /> + <glyph glyph-name="zero.denominator" unicode="&#xf655;" horiz-adv-x="355" +d="M329 183q0 -101 -40 -144.5t-112 -43.5t-111.5 43.5t-39.5 144.5v47q0 101 39.5 145t111.5 44t112 -44t40 -145v-47zM225 230q0 30 -3.5 49.5t-10 31t-15.5 15.5t-19 4q-11 0 -19.5 -4t-14.5 -15.5t-9.5 -31t-3.5 -49.5v-47q0 -60 13 -79.5t34 -19.5t34.5 19.5t13.5 79.5 +v47z" /> + <glyph glyph-name="one.denominator" unicode="&#xf656;" horiz-adv-x="241" +d="M114 411q6 3 14 3h49q10 0 12.5 -5t2.5 -12v-380q0 -17 -15 -17h-71q-7 0 -12 3.5t-5 13.5v290l-53 -23q-20 -7 -20 12v62q0 9 10 13z" /> + <glyph glyph-name="two.denominator" unicode="&#xf657;" horiz-adv-x="355" +d="M164 250q16 12 26 19t16 12.5t8 11t2 14.5q0 14 -10.5 20t-40.5 6q-24 0 -52 -2t-54 -5q-8 0 -12.5 5t-4.5 12v42q0 7 4.5 11t9.5 6q23 7 55 12t62 5q78 0 111.5 -27.5t33.5 -81.5q0 -35 -17 -60t-49 -47l-45 -31q-35 -24 -54.5 -41.5t-21.5 -42.5h165q7 0 12 -3.5 +t5 -11.5v-56q0 -7 -5 -12t-12 -5h-241q-7 0 -12 5t-5 12v55q0 47 22 83t54 59z" /> + <glyph glyph-name="three.denominator" unicode="&#xf658;" horiz-adv-x="355" +d="M315 121q0 -66 -40.5 -96t-106.5 -30q-32 0 -62 4.5t-52 10.5q-6 2 -10.5 5.5t-4.5 11.5v43q0 16 17 16q29 -2 60 -3.5t48 -1.5q26 0 36.5 10t10.5 30v10q0 15 -7 27.5t-30 12.5h-95q-8 0 -12 5t-4 12v46q0 16 16 16h93q23 0 31 12.5t8 28.5v8q0 15 -9 24.5t-38 9.5 +q-17 0 -44 -1t-53 -5q-10 -2 -18 -0.5t-8 15.5v43q0 8 4.5 11.5t10.5 5.5q21 6 50 11.5t62 5.5q69 0 108 -27t39 -90v-8q0 -23 -11.5 -46t-31.5 -37q21 -13 32 -34t11 -46v-10v0z" /> + <glyph glyph-name="four.denominator" unicode="&#xf659;" horiz-adv-x="355" +d="M336 107q0 -7 -5 -12t-11 -5h-30v-73q0 -7 -4 -12t-12 -5h-72q-8 0 -12 5t-4 12v73h-151q-6 0 -11 5t-5 12v52q0 10 7 21l171 224q8 10 18 10h58q7 0 12 -5t5 -12v-224h30q6 0 11 -4.5t5 -12.5v-49zM189 276l-76 -103h76v103z" /> + <glyph glyph-name="five.denominator" unicode="&#xf65a;" horiz-adv-x="355" +d="M315 134q0 -68 -38.5 -103.5t-113.5 -35.5q-26 0 -55.5 4t-53.5 12q-5 2 -10 5.5t-5 12.5v43q0 8 5 11.5t13 3.5q26 -2 54 -4t42 -2q36 0 46.5 13.5t10.5 39.5v4q0 24 -14 34t-56 10h-85q-5 0 -9 4.5t-4 9.5l17 201q0 7 5 12t12 5h210q7 0 12 -5t5 -12v-54q0 -8 -5 -12 +t-12 -4h-141q-2 -14 -3.5 -30.5t-3.5 -32.5h10q37 0 67.5 -6t52.5 -20t34.5 -38.5t12.5 -61.5v-4v0z" /> + <glyph glyph-name="six.denominator" unicode="&#xf65b;" horiz-adv-x="355" +d="M327 139q0 -66 -38 -105t-110 -39q-68 0 -109.5 40.5t-41.5 124.5v83q0 94 42.5 135t113.5 41q36 0 63.5 -4t46.5 -8q11 -2 13 -6t2 -11v-47q0 -9 -3 -15t-17 -3q-19 4 -46.5 6t-50.5 2q-32 0 -46.5 -15t-15.5 -55q14 2 28.5 3.5t29.5 1.5q28 0 53.5 -6.5t44.5 -21 +t30 -38.5t11 -59v-4zM225 143q0 29 -14.5 39.5t-37.5 10.5q-8 0 -20.5 -1.5t-22.5 -3.5v-28q0 -26 3.5 -42t10 -25t15.5 -12t20 -3q20 0 33 12t13 49v4z" /> + <glyph glyph-name="seven.denominator" unicode="&#xf65c;" horiz-adv-x="323" +d="M145 14q-7 -14 -17 -14h-75q-11 0 -14.5 6t0.5 14l146 307h-146q-7 0 -12.5 4t-5.5 12v54q0 7 5.5 12t12.5 5h234q10 0 17.5 -7.5t7.5 -16.5v-31q0 -12 -1.5 -17t-5.5 -14z" /> + <glyph glyph-name="eight.denominator" unicode="&#xf65d;" horiz-adv-x="355" +d="M329 121q0 -63 -41 -94.5t-108 -31.5h-6q-66 0 -107 31.5t-41 94.5v7q0 26 11 48.5t30 37.5q-39 31 -39 82v6q0 60 39.5 88.5t106.5 28.5h6q67 0 107.5 -28.5t40.5 -88.5v-6q0 -50 -41 -82q19 -15 30.5 -37.5t11.5 -48.5v-7zM228 129q0 17 -9.5 31.5t-32.5 14.5h-17 +q-23 0 -33 -14.5t-10 -31.5v-5q0 -22 12.5 -35.5t35.5 -13.5h6q24 0 36 13.5t12 35.5v5zM174 339q-26 0 -37 -12.5t-11 -33.5q0 -19 10.5 -30t32.5 -11h17q22 0 32.5 11t10.5 30q0 21 -11 33.5t-37 12.5h-7z" /> + <glyph glyph-name="nine.denominator" unicode="&#xf65e;" horiz-adv-x="355" +d="M327 171q0 -95 -42 -135.5t-114 -40.5q-37 0 -63.5 3.5t-43.5 7.5t-17 18v47q0 9 2.5 14t16.5 3q20 -3 47 -5t50 -2q32 0 46.5 14.5t15.5 53.5q-11 -2 -27 -3t-31 -1q-29 0 -54 6.5t-44 21.5t-30 39t-11 59v4q0 66 38 105t111 39q68 0 109 -40.5t41 -124.5v-83zM225 254 +q0 51 -13.5 66.5t-34.5 15.5t-34 -12.5t-13 -48.5v-4q0 -29 15 -39.5t37 -10.5q8 0 20.5 1t22.5 3v29z" /> + <glyph glyph-name="zero.numerator" unicode="&#xf661;" horiz-adv-x="355" +d="M329 518q0 -101 -40 -144.5t-112 -43.5t-111.5 43.5t-39.5 144.5v47q0 101 39.5 145t111.5 44t112 -44t40 -145v-47zM225 565q0 30 -3.5 49.5t-10 31t-15.5 15.5t-19 4q-11 0 -19.5 -4t-14.5 -15.5t-9.5 -31t-3.5 -49.5v-47q0 -60 13 -79.5t34 -19.5t34.5 19.5t13.5 79.5 +v47z" /> + <glyph glyph-name="one.numerator" unicode="&#xf662;" horiz-adv-x="241" +d="M114 746q6 3 14 3h49q10 0 12.5 -5t2.5 -12v-380q0 -17 -15 -17h-71q-7 0 -12 3.5t-5 13.5v290l-53 -23q-20 -7 -20 12v62q0 9 10 13z" /> + <glyph glyph-name="two.numerator" unicode="&#xf663;" horiz-adv-x="355" +d="M164 585q16 12 26 19t16 12.5t8 11t2 14.5q0 14 -10.5 20t-40.5 6q-24 0 -52 -2t-54 -5q-8 0 -12.5 5t-4.5 12v42q0 7 4.5 11t9.5 6q23 7 55 12t62 5q78 0 111.5 -27.5t33.5 -81.5q0 -35 -17 -60t-49 -47l-45 -31q-35 -24 -54.5 -41.5t-21.5 -42.5h165q7 0 12 -3.5 +t5 -11.5v-56q0 -7 -5 -12t-12 -5h-241q-7 0 -12 5t-5 12v55q0 47 22 83t54 59z" /> + <glyph glyph-name="three.numerator" unicode="&#xf664;" horiz-adv-x="355" +d="M315 456q0 -66 -40.5 -96t-106.5 -30q-32 0 -62 4.5t-52 10.5q-6 2 -10.5 5.5t-4.5 11.5v43q0 16 17 16q29 -2 60 -3.5t48 -1.5q26 0 36.5 10t10.5 30v10q0 15 -7 27.5t-30 12.5h-95q-8 0 -12 5t-4 12v46q0 16 16 16h93q23 0 31 12.5t8 28.5v8q0 15 -9 24.5t-38 9.5 +q-17 0 -44 -1t-53 -5q-10 -2 -18 -0.5t-8 15.5v43q0 8 4.5 11.5t10.5 5.5q21 6 50 11.5t62 5.5q69 0 108 -27t39 -90v-8q0 -23 -11.5 -46t-31.5 -37q21 -13 32 -34t11 -46v-10v0z" /> + <glyph glyph-name="four.numerator" unicode="&#xf665;" horiz-adv-x="355" +d="M336 442q0 -7 -5 -12t-11 -5h-30v-73q0 -7 -4 -12t-12 -5h-72q-8 0 -12 5t-4 12v73h-151q-6 0 -11 5t-5 12v52q0 10 7 21l171 224q8 10 18 10h58q7 0 12 -5t5 -12v-224h30q6 0 11 -4.5t5 -12.5v-49zM189 611l-76 -103h76v103z" /> + <glyph glyph-name="five.numerator" unicode="&#xf666;" horiz-adv-x="355" +d="M315 469q0 -68 -38.5 -103.5t-113.5 -35.5q-26 0 -55.5 4t-53.5 12q-5 2 -10 5.5t-5 12.5v43q0 8 5 11.5t13 3.5q26 -2 54 -4t42 -2q36 0 46.5 13.5t10.5 39.5v4q0 24 -14 34t-56 10h-85q-5 0 -9 4.5t-4 9.5l17 201q0 7 5 12t12 5h210q7 0 12 -5t5 -12v-54q0 -8 -5 -12 +t-12 -4h-141q-2 -14 -3.5 -30.5t-3.5 -32.5h10q37 0 67.5 -6t52.5 -20t34.5 -38.5t12.5 -61.5v-4v0z" /> + <glyph glyph-name="six.numerator" unicode="&#xf667;" horiz-adv-x="355" +d="M327 474q0 -66 -38 -105t-110 -39q-68 0 -109.5 40.5t-41.5 124.5v83q0 94 42.5 135t113.5 41q36 0 63.5 -4t46.5 -8q11 -2 13 -6t2 -11v-47q0 -9 -3 -15t-17 -3q-19 4 -46.5 6t-50.5 2q-32 0 -46.5 -15t-15.5 -55q14 2 28.5 3.5t29.5 1.5q28 0 53.5 -6.5t44.5 -21 +t30 -38.5t11 -59v-4zM225 478q0 29 -14.5 39.5t-37.5 10.5q-8 0 -20.5 -1.5t-22.5 -3.5v-28q0 -26 3.5 -42t10 -25t15.5 -12t20 -3q20 0 33 12t13 49v4z" /> + <glyph glyph-name="seven.numerator" unicode="&#xf668;" horiz-adv-x="323" +d="M145 349q-7 -14 -17 -14h-75q-11 0 -14.5 6t0.5 14l146 307h-146q-7 0 -12.5 4t-5.5 12v54q0 7 5.5 12t12.5 5h234q10 0 17.5 -7.5t7.5 -16.5v-31q0 -12 -1.5 -17t-5.5 -14z" /> + <glyph glyph-name="eight.numerator" unicode="&#xf669;" horiz-adv-x="355" +d="M329 456q0 -63 -41 -94.5t-108 -31.5h-6q-66 0 -107 31.5t-41 94.5v7q0 26 11 48.5t30 37.5q-39 31 -39 82v6q0 60 39.5 88.5t106.5 28.5h6q67 0 107.5 -28.5t40.5 -88.5v-6q0 -50 -41 -82q19 -15 30.5 -37.5t11.5 -48.5v-7zM228 464q0 17 -9.5 31.5t-32.5 14.5h-17 +q-23 0 -33 -14.5t-10 -31.5v-5q0 -22 12.5 -35.5t35.5 -13.5h6q24 0 36 13.5t12 35.5v5zM174 674q-26 0 -37 -12.5t-11 -33.5q0 -19 10.5 -30t32.5 -11h17q22 0 32.5 11t10.5 30q0 21 -11 33.5t-37 12.5h-7z" /> + <glyph glyph-name="nine.numerator" unicode="&#xf66a;" horiz-adv-x="355" +d="M327 506q0 -95 -42 -135.5t-114 -40.5q-37 0 -63.5 3.5t-43.5 7.5t-17 18v47q0 9 2.5 14t16.5 3q20 -3 47 -5t50 -2q32 0 46.5 14.5t15.5 53.5q-11 -2 -27 -3t-31 -1q-29 0 -54 6.5t-44 21.5t-30 39t-11 59v4q0 66 38 105t111 39q68 0 109 -40.5t41 -124.5v-83zM225 589 +q0 51 -13.5 66.5t-34.5 15.5t-34 -12.5t-13 -48.5v-4q0 -29 15 -39.5t37 -10.5q8 0 20.5 1t22.5 3v29z" /> + <glyph glyph-name="j.dotless" unicode="&#xe008;" horiz-adv-x="290" +d="M226 -32q0 -50 -11 -83t-31.5 -52.5t-50 -27.5t-65.5 -8q-39 0 -80 7q-20 3 -20 20v79q0 18 21 18h44q21 0 26 10.5t5 36.5v584q0 8 5.5 14.5t13.5 6.5h124q8 0 13.5 -6.5t5.5 -14.5v-584v0z" /> + <glyph glyph-name="uni2215" unicode="&#x2215;" horiz-adv-x="370" +d="M464 735q0 -7 -4 -12l-416 -702q-6 -11 -10.5 -16t-12.5 -5h-103q-11 0 -11 11q0 4 3 10l416 702q7 11 12 15.5t13 4.5h103q10 0 10 -8z" /> + <glyph glyph-name="uni021A" unicode="&#x21a;" horiz-adv-x="587" +d="M562 621q0 -8 -6.5 -13.5t-14.5 -5.5h-162v-582q0 -8 -6 -14t-14 -6h-131q-8 0 -14 6t-6 14v582h-163q-8 0 -14 5.5t-6 13.5v103q0 8 6 13.5t14 5.5h496q8 0 14.5 -5.5t6.5 -13.5v-103zM334 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5 +t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="uni021B" unicode="&#x21b;" horiz-adv-x="421" +d="M390 19q0 -17 -19 -20q-23 -4 -40 -6t-39 -2q-41 0 -72.5 6.5t-52.5 25.5t-32 52.5t-11 86.5v290l-80 13q-8 2 -14.5 7.5t-6.5 13.5v66q0 8 6.5 14.5t14.5 6.5h80v82q0 8 6 13t14 7l122 21h3q8 0 13 -4.5t5 -12.5v-106h82q8 0 14 -6t6 -14v-81q0 -8 -6 -14t-14 -6h-82 +v-291q0 -30 5 -38.5t28 -8.5h49q21 0 21 -17v-78zM269 -38q13 0 15 -5.5t-2 -13.5l-69 -118q-8 -12 -12 -16t-13 -4h-75q-6 0 -10 4.5t-1 15.5l30 118q5 19 20 19h117z" /> + <glyph glyph-name="uni03A9" unicode="&#x3a9;" horiz-adv-x="716" +d="M358 755q69 0 126 -16.5t97.5 -52t62.5 -91t22 -134.5v-12q0 -43 -5 -83t-22 -75t-49 -63t-86 -46v-27h111q10 0 16.5 -4t6.5 -16v-114q0 -12 -6.5 -16.5t-16.5 -4.5h-191q-21 0 -21 21v213q0 14 3 18t11 7q24 8 38.5 22.5t22.5 37t11 54.5t3 76v12q0 26 -5.5 51.5 +t-20 45.5t-40.5 32t-68 12t-68 -12t-40.5 -32t-20 -45.5t-5.5 -51.5v-12q0 -44 3 -76t11 -54.5t22.5 -37t38.5 -22.5q8 -3 11 -7t3 -18v-213q0 -21 -21 -21h-191q-10 0 -16.5 4.5t-6.5 16.5v114q0 12 6.5 16t16.5 4h111v27q-54 18 -86 46t-49 63t-22 75t-5 83v12 +q0 79 22 134.5t62.5 91t97.5 52t126 16.5z" /> + <glyph glyph-name="quotedbl" unicode="&#x22;" horiz-adv-x="472" +d="M449 756q0 -2 -2 -8l-75 -219q-4 -10 -7.5 -14.5t-11.5 -4.5h-101q-9 0 -9 10v4.5t1 4.5l54 219q4 19 20 19h119q12 0 12 -11zM230 756q0 -2 -2 -8l-75 -219q-4 -10 -7.5 -14.5t-11.5 -4.5h-101q-9 0 -9 10v4.5t1 4.5l54 219q4 19 20 19h119q12 0 12 -11z" /> + <glyph glyph-name="exclam" unicode="!" horiz-adv-x="273" +d="M220 747l-20 -499q0 -8 -6 -14.5t-14 -6.5h-85q-8 0 -15 6.5t-7 14.5l-20 499v1q0 8 7 13.5t15 5.5h125q8 0 14 -5.5t6 -13.5v-1zM215 20q0 -8 -5.5 -14t-13.5 -6h-118q-8 0 -14 6t-6 14v126q0 8 6 13.5t14 5.5h118q19 0 19 -19v-126z" /> + <hkern u1="&#x28;" u2="j" k="-37" /> + <hkern u1="&#x2c;" u2="&#x2a;" k="76" /> + <hkern u1="&#x2e;" u2="&#x2a;" k="76" /> + <hkern u1="&#x2f;" u2="&#x119;" k="50" /> + <hkern u1="&#x2f;" u2="&#x109;" k="55" /> + <hkern u1="&#x2f;" u2="&#x10d;" k="55" /> + <hkern u1="&#x2f;" u2="&#x107;" k="55" /> + <hkern u1="&#x2f;" u2="&#xe7;" k="55" /> + <hkern u1="&#x2f;" u2="&#x153;" k="32" /> + <hkern u1="&#x2f;" u2="&#xf8;" k="32" /> + <hkern u1="&#x2f;" u2="o" k="32" /> + <hkern u1="&#x2f;" u2="e" k="50" /> + <hkern u1="&#x2f;" u2="c" k="55" /> + <hkern u1="&#x2f;" u2="q" k="32" /> + <hkern u1="&#x2f;" u2="&#x34;" k="45" /> + <hkern u1="&#x2f;" u2="&#x2f;" k="13" /> + <hkern u1="&#x37;" u2="&#x2026;" k="118" /> + <hkern u1="&#x37;" u2="&#x201e;" k="118" /> + <hkern u1="&#x37;" u2="&#x201a;" k="118" /> + <hkern u1="&#x37;" u2="&#x2e;" k="118" /> + <hkern u1="&#x37;" u2="&#x2c;" k="118" /> + <hkern u1="&#x37;" u2="&#x2f;" k="112" /> + <hkern u1="A" u2="v" k="46" /> + <hkern u1="A" u2="V" k="56" /> + <hkern u1="A" u2="Q" k="18" /> + <hkern u1="B" u2="&#x1ef2;" k="40" /> + <hkern u1="B" u2="&#x176;" k="40" /> + <hkern u1="B" u2="&#x162;" k="13" /> + <hkern u1="B" u2="&#x164;" k="13" /> + <hkern u1="B" u2="&#x166;" k="13" /> + <hkern u1="B" u2="&#x1fc;" k="12" /> + <hkern u1="B" u2="&#x104;" k="12" /> + <hkern u1="B" u2="&#x100;" k="12" /> + <hkern u1="B" u2="&#x102;" k="12" /> + <hkern u1="B" u2="&#x178;" k="40" /> + <hkern u1="B" u2="&#xdd;" k="40" /> + <hkern u1="B" u2="&#xc3;" k="12" /> + <hkern u1="B" u2="&#xc5;" k="12" /> + <hkern u1="B" u2="&#xc0;" k="12" /> + <hkern u1="B" u2="&#xc4;" k="12" /> + <hkern u1="B" u2="&#xc2;" k="12" /> + <hkern u1="B" u2="&#xc1;" k="12" /> + <hkern u1="B" u2="Y" k="40" /> + <hkern u1="B" u2="T" k="13" /> + <hkern u1="B" u2="A" k="12" /> + <hkern u1="B" u2="&#xc6;" k="18" /> + <hkern u1="B" u2="X" k="22" /> + <hkern u1="B" u2="V" k="22" /> + <hkern u1="C" u2="Q" k="21" /> + <hkern u1="D" u2="&#xc6;" k="16" /> + <hkern u1="D" u2="X" k="33" /> + <hkern u1="D" u2="V" k="16" /> + <hkern u1="F" u2="&#x173;" k="24" /> + <hkern u1="F" u2="&#x1ff;" k="36" /> + <hkern u1="F" u2="&#x14d;" k="36" /> + <hkern u1="F" u2="&#x151;" k="36" /> + <hkern u1="F" u2="&#x14f;" k="36" /> + <hkern u1="F" u2="&#x119;" k="30" /> + <hkern u1="F" u2="&#x1fd;" k="36" /> + <hkern u1="F" u2="&#x105;" k="36" /> + <hkern u1="F" u2="&#x101;" k="36" /> + <hkern u1="F" u2="&#x103;" k="36" /> + <hkern u1="F" u2="&#x1fe;" k="10" /> + <hkern u1="F" u2="&#x14c;" k="10" /> + <hkern u1="F" u2="&#x150;" k="10" /> + <hkern u1="F" u2="&#x14e;" k="10" /> + <hkern u1="F" u2="&#x120;" k="21" /> + <hkern u1="F" u2="&#x122;" k="21" /> + <hkern u1="F" u2="&#x11c;" k="21" /> + <hkern u1="F" u2="&#x11e;" k="21" /> + <hkern u1="F" u2="&#x1fc;" k="58" /> + <hkern u1="F" u2="&#x104;" k="58" /> + <hkern u1="F" u2="&#x100;" k="58" /> + <hkern u1="F" u2="&#x102;" k="58" /> + <hkern u1="F" u2="&#xf5;" k="36" /> + <hkern u1="F" u2="&#xf2;" k="36" /> + <hkern u1="F" u2="&#xf6;" k="36" /> + <hkern u1="F" u2="&#xf4;" k="36" /> + <hkern u1="F" u2="&#xf3;" k="36" /> + <hkern u1="F" u2="&#xe3;" k="36" /> + <hkern u1="F" u2="&#xe5;" k="36" /> + <hkern u1="F" u2="&#xe0;" k="36" /> + <hkern u1="F" u2="&#xe4;" k="36" /> + <hkern u1="F" u2="&#xe2;" k="36" /> + <hkern u1="F" u2="&#xe1;" k="36" /> + <hkern u1="F" u2="&#xd5;" k="10" /> + <hkern u1="F" u2="&#xd2;" k="10" /> + <hkern u1="F" u2="&#xd6;" k="10" /> + <hkern u1="F" u2="&#xd4;" k="10" /> + <hkern u1="F" u2="&#xd3;" k="10" /> + <hkern u1="F" u2="&#xc3;" k="58" /> + <hkern u1="F" u2="&#xc5;" k="58" /> + <hkern u1="F" u2="&#xc0;" k="58" /> + <hkern u1="F" u2="&#xc4;" k="58" /> + <hkern u1="F" u2="&#xc2;" k="58" /> + <hkern u1="F" u2="&#xc1;" k="58" /> + <hkern u1="F" u2="&#x153;" k="36" /> + <hkern u1="F" u2="&#xf8;" k="36" /> + <hkern u1="F" u2="&#xe6;" k="36" /> + <hkern u1="F" u2="&#x152;" k="10" /> + <hkern u1="F" u2="&#xd8;" k="10" /> + <hkern u1="F" u2="&#x2026;" k="106" /> + <hkern u1="F" u2="u" k="24" /> + <hkern u1="F" u2="o" k="36" /> + <hkern u1="F" u2="e" k="30" /> + <hkern u1="F" u2="a" k="36" /> + <hkern u1="F" u2="O" k="10" /> + <hkern u1="F" u2="G" k="21" /> + <hkern u1="F" u2="A" k="58" /> + <hkern u1="F" u2="&#x2e;" k="106" /> + <hkern u1="F" u2="&#x2c;" k="106" /> + <hkern u1="F" u2="&#xc6;" k="58" /> + <hkern u1="F" u2="&#x201e;" k="58" /> + <hkern u1="F" u2="&#x201a;" k="58" /> + <hkern u1="G" u2="V" k="6" /> + <hkern u1="K" u2="&#xc7;" k="22" /> + <hkern u1="K" u2="v" k="53" /> + <hkern u1="K" u2="q" k="25" /> + <hkern u1="K" u2="V" k="7" /> + <hkern u1="K" u2="Q" k="53" /> + <hkern u1="K" u2="&#x2d;" k="16" /> + <hkern u1="L" u2="&#xae;" k="24" /> + <hkern u1="L" u2="&#x2122;" k="24" /> + <hkern u1="L" u2="v" k="21" /> + <hkern u1="L" u2="V" k="64" /> + <hkern u1="L" u2="Q" k="30" /> + <hkern u1="L" u2="&#x2d;" k="16" /> + <hkern u1="M" u2="&#x1ef2;" k="27" /> + <hkern u1="M" u2="&#x176;" k="27" /> + <hkern u1="M" u2="&#x178;" k="27" /> + <hkern u1="M" u2="&#xdd;" k="27" /> + <hkern u1="M" u2="Y" k="27" /> + <hkern u1="M" u2="V" k="16" /> + <hkern u1="N" u2="V" k="21" /> + <hkern u1="O" u2="&#xc6;" k="13" /> + <hkern u1="O" u2="x" k="13" /> + <hkern u1="O" u2="X" k="49" /> + <hkern u1="O" u2="V" k="24" /> + <hkern u1="P" u2="&#xc6;" k="42" /> + <hkern u1="P" u2="&#x201e;" k="56" /> + <hkern u1="P" u2="&#x201a;" k="56" /> + <hkern u1="P" u2="X" k="36" /> + <hkern u1="Q" u2="&#x17b;" k="28" /> + <hkern u1="Q" u2="&#x179;" k="28" /> + <hkern u1="Q" u2="&#x1ef2;" k="45" /> + <hkern u1="Q" u2="&#x176;" k="45" /> + <hkern u1="Q" u2="&#x1e80;" k="10" /> + <hkern u1="Q" u2="&#x1e84;" k="10" /> + <hkern u1="Q" u2="&#x174;" k="10" /> + <hkern u1="Q" u2="&#x1e82;" k="10" /> + <hkern u1="Q" u2="&#x162;" k="30" /> + <hkern u1="Q" u2="&#x164;" k="30" /> + <hkern u1="Q" u2="&#x166;" k="30" /> + <hkern u1="Q" u2="&#x1fc;" k="18" /> + <hkern u1="Q" u2="&#x104;" k="18" /> + <hkern u1="Q" u2="&#x100;" k="18" /> + <hkern u1="Q" u2="&#x102;" k="18" /> + <hkern u1="Q" u2="&#x17d;" k="28" /> + <hkern u1="Q" u2="&#x178;" k="45" /> + <hkern u1="Q" u2="&#xdd;" k="45" /> + <hkern u1="Q" u2="&#xc3;" k="18" /> + <hkern u1="Q" u2="&#xc5;" k="18" /> + <hkern u1="Q" u2="&#xc0;" k="18" /> + <hkern u1="Q" u2="&#xc4;" k="18" /> + <hkern u1="Q" u2="&#xc2;" k="18" /> + <hkern u1="Q" u2="&#xc1;" k="18" /> + <hkern u1="Q" u2="Z" k="28" /> + <hkern u1="Q" u2="Y" k="45" /> + <hkern u1="Q" u2="W" k="10" /> + <hkern u1="Q" u2="T" k="30" /> + <hkern u1="Q" u2="A" k="18" /> + <hkern u1="Q" u2="&#xc6;" k="13" /> + <hkern u1="Q" u2="X" k="49" /> + <hkern u1="Q" u2="V" k="24" /> + <hkern u1="R" u2="V" k="31" /> + <hkern u1="R" u2="Q" k="21" /> + <hkern u1="S" u2="x" k="6" /> + <hkern u1="S" u2="v" k="9" /> + <hkern u1="S" u2="V" k="10" /> + <hkern u1="T" u2="&#xc6;" k="70" /> + <hkern u1="T" u2="x" k="16" /> + <hkern u1="T" u2="v" k="13" /> + <hkern u1="T" u2="q" k="65" /> + <hkern u1="T" u2="p" k="16" /> + <hkern u1="T" u2="m" k="16" /> + <hkern u1="T" u2="Q" k="30" /> + <hkern u1="T" u2="F" k="16" /> + <hkern u1="T" u2="&#x2f;" k="80" /> + <hkern u1="T" u2="&#x2d;" k="57" /> + <hkern u1="U" u2="&#xc6;" k="20" /> + <hkern u1="U" u2="X" k="16" /> + <hkern u1="V" u2="&#x17c;" k="12" /> + <hkern u1="V" u2="&#x17a;" k="12" /> + <hkern u1="V" u2="&#x1ef3;" k="13" /> + <hkern u1="V" u2="&#x177;" k="13" /> + <hkern u1="V" u2="&#x1e81;" k="10" /> + <hkern u1="V" u2="&#x1e85;" k="10" /> + <hkern u1="V" u2="&#x175;" k="10" /> + <hkern u1="V" u2="&#x1e83;" k="10" /> + <hkern u1="V" u2="&#x169;" k="33" /> + <hkern u1="V" u2="&#x16f;" k="33" /> + <hkern u1="V" u2="&#x173;" k="33" /> + <hkern u1="V" u2="&#x16b;" k="33" /> + <hkern u1="V" u2="&#x171;" k="33" /> + <hkern u1="V" u2="&#x16d;" k="33" /> + <hkern u1="V" u2="&#x219;" k="44" /> + <hkern u1="V" u2="&#x15d;" k="44" /> + <hkern u1="V" u2="&#x15f;" k="44" /> + <hkern u1="V" u2="&#x15b;" k="44" /> + <hkern u1="V" u2="&#x157;" k="26" /> + <hkern u1="V" u2="&#x159;" k="26" /> + <hkern u1="V" u2="&#x155;" k="26" /> + <hkern u1="V" u2="&#x1ff;" k="50" /> + <hkern u1="V" u2="&#x14d;" k="50" /> + <hkern u1="V" u2="&#x151;" k="50" /> + <hkern u1="V" u2="&#x14f;" k="50" /> + <hkern u1="V" u2="&#x129;" k="-13" /> + <hkern u1="V" u2="&#x12b;" k="-13" /> + <hkern u1="V" u2="&#x12d;" k="-13" /> + <hkern u1="V" u2="&#x121;" k="43" /> + <hkern u1="V" u2="&#x123;" k="43" /> + <hkern u1="V" u2="&#x11d;" k="43" /> + <hkern u1="V" u2="&#x11f;" k="43" /> + <hkern u1="V" u2="&#x119;" k="50" /> + <hkern u1="V" u2="&#x14b;" k="10" /> + <hkern u1="V" u2="&#x113;" k="50" /> + <hkern u1="V" u2="&#x117;" k="50" /> + <hkern u1="V" u2="&#x11b;" k="50" /> + <hkern u1="V" u2="&#x115;" k="50" /> + <hkern u1="V" u2="&#x109;" k="43" /> + <hkern u1="V" u2="&#x10d;" k="43" /> + <hkern u1="V" u2="&#x107;" k="43" /> + <hkern u1="V" u2="&#x1fd;" k="50" /> + <hkern u1="V" u2="&#x105;" k="50" /> + <hkern u1="V" u2="&#x101;" k="50" /> + <hkern u1="V" u2="&#x103;" k="50" /> + <hkern u1="V" u2="&#x218;" k="9" /> + <hkern u1="V" u2="&#x15c;" k="9" /> + <hkern u1="V" u2="&#x15e;" k="9" /> + <hkern u1="V" u2="&#x15a;" k="9" /> + <hkern u1="V" u2="&#x1fe;" k="24" /> + <hkern u1="V" u2="&#x14c;" k="24" /> + <hkern u1="V" u2="&#x150;" k="24" /> + <hkern u1="V" u2="&#x14e;" k="24" /> + <hkern u1="V" u2="&#x120;" k="23" /> + <hkern u1="V" u2="&#x122;" k="23" /> + <hkern u1="V" u2="&#x11c;" k="23" /> + <hkern u1="V" u2="&#x11e;" k="23" /> + <hkern u1="V" u2="&#x118;" k="33" /> + <hkern u1="V" u2="&#x112;" k="33" /> + <hkern u1="V" u2="&#x116;" k="33" /> + <hkern u1="V" u2="&#x11a;" k="33" /> + <hkern u1="V" u2="&#x114;" k="33" /> + <hkern u1="V" u2="&#x108;" k="29" /> + <hkern u1="V" u2="&#x10c;" k="29" /> + <hkern u1="V" u2="&#x106;" k="29" /> + <hkern u1="V" u2="&#x1fc;" k="56" /> + <hkern u1="V" u2="&#x104;" k="56" /> + <hkern u1="V" u2="&#x100;" k="56" /> + <hkern u1="V" u2="&#x102;" k="56" /> + <hkern u1="V" u2="&#x17e;" k="12" /> + <hkern u1="V" u2="&#xff;" k="13" /> + <hkern u1="V" u2="&#xfd;" k="13" /> + <hkern u1="V" u2="&#xf9;" k="33" /> + <hkern u1="V" u2="&#xfc;" k="33" /> + <hkern u1="V" u2="&#xfb;" k="33" /> + <hkern u1="V" u2="&#xfa;" k="33" /> + <hkern u1="V" u2="&#x161;" k="44" /> + <hkern u1="V" u2="&#xf5;" k="50" /> + <hkern u1="V" u2="&#xf2;" k="50" /> + <hkern u1="V" u2="&#xf6;" k="50" /> + <hkern u1="V" u2="&#xf4;" k="50" /> + <hkern u1="V" u2="&#xf3;" k="50" /> + <hkern u1="V" u2="&#xec;" k="-13" /> + <hkern u1="V" u2="&#xee;" k="-13" /> + <hkern u1="V" u2="&#xe8;" k="50" /> + <hkern u1="V" u2="&#xeb;" k="50" /> + <hkern u1="V" u2="&#xea;" k="50" /> + <hkern u1="V" u2="&#xe9;" k="50" /> + <hkern u1="V" u2="&#xe7;" k="43" /> + <hkern u1="V" u2="&#xe3;" k="50" /> + <hkern u1="V" u2="&#xe5;" k="50" /> + <hkern u1="V" u2="&#xe0;" k="50" /> + <hkern u1="V" u2="&#xe4;" k="50" /> + <hkern u1="V" u2="&#xe2;" k="50" /> + <hkern u1="V" u2="&#xe1;" k="50" /> + <hkern u1="V" u2="&#x160;" k="9" /> + <hkern u1="V" u2="&#xd5;" k="24" /> + <hkern u1="V" u2="&#xd2;" k="24" /> + <hkern u1="V" u2="&#xd6;" k="24" /> + <hkern u1="V" u2="&#xd4;" k="24" /> + <hkern u1="V" u2="&#xd3;" k="24" /> + <hkern u1="V" u2="&#xc8;" k="33" /> + <hkern u1="V" u2="&#xcb;" k="33" /> + <hkern u1="V" u2="&#xca;" k="33" /> + <hkern u1="V" u2="&#xc9;" k="33" /> + <hkern u1="V" u2="&#xc7;" k="29" /> + <hkern u1="V" u2="&#xc3;" k="56" /> + <hkern u1="V" u2="&#xc5;" k="56" /> + <hkern u1="V" u2="&#xc0;" k="56" /> + <hkern u1="V" u2="&#xc4;" k="56" /> + <hkern u1="V" u2="&#xc2;" k="56" /> + <hkern u1="V" u2="&#xc1;" k="56" /> + <hkern u1="V" u2="&#x153;" k="50" /> + <hkern u1="V" u2="&#xf8;" k="50" /> + <hkern u1="V" u2="&#xe6;" k="50" /> + <hkern u1="V" u2="&#x152;" k="24" /> + <hkern u1="V" u2="&#xd8;" k="24" /> + <hkern u1="V" u2="&#x2026;" k="55" /> + <hkern u1="V" u2="&#x201e;" k="55" /> + <hkern u1="V" u2="&#x201a;" k="55" /> + <hkern u1="V" u2="z" k="12" /> + <hkern u1="V" u2="y" k="13" /> + <hkern u1="V" u2="w" k="10" /> + <hkern u1="V" u2="u" k="33" /> + <hkern u1="V" u2="s" k="44" /> + <hkern u1="V" u2="r" k="26" /> + <hkern u1="V" u2="o" k="50" /> + <hkern u1="V" u2="n" k="10" /> + <hkern u1="V" u2="g" k="43" /> + <hkern u1="V" u2="e" k="50" /> + <hkern u1="V" u2="c" k="43" /> + <hkern u1="V" u2="a" k="50" /> + <hkern u1="V" u2="S" k="9" /> + <hkern u1="V" u2="O" k="24" /> + <hkern u1="V" u2="G" k="23" /> + <hkern u1="V" u2="E" k="33" /> + <hkern u1="V" u2="C" k="29" /> + <hkern u1="V" u2="A" k="56" /> + <hkern u1="V" u2="&#x2e;" k="55" /> + <hkern u1="V" u2="&#x2c;" k="55" /> + <hkern u1="V" u2="&#xef;" k="-18" /> + <hkern u1="V" u2="&#xc6;" k="56" /> + <hkern u1="V" u2="&#xbf;" k="99" /> + <hkern u1="V" u2="&#xa1;" k="10" /> + <hkern u1="V" u2="x" k="16" /> + <hkern u1="V" u2="v" k="10" /> + <hkern u1="V" u2="q" k="44" /> + <hkern u1="V" u2="p" k="10" /> + <hkern u1="V" u2="m" k="10" /> + <hkern u1="V" u2="Q" k="24" /> + <hkern u1="V" u2="F" k="20" /> + <hkern u1="V" u2="&#x2f;" k="56" /> + <hkern u1="W" u2="&#xc6;" k="27" /> + <hkern u1="W" u2="&#xbf;" k="73" /> + <hkern u1="W" u2="x" k="29" /> + <hkern u1="W" u2="q" k="15" /> + <hkern u1="W" u2="Q" k="10" /> + <hkern u1="X" u2="&#x1ef3;" k="46" /> + <hkern u1="X" u2="&#x177;" k="46" /> + <hkern u1="X" u2="&#x169;" k="36" /> + <hkern u1="X" u2="&#x16f;" k="36" /> + <hkern u1="X" u2="&#x173;" k="36" /> + <hkern u1="X" u2="&#x16b;" k="36" /> + <hkern u1="X" u2="&#x171;" k="36" /> + <hkern u1="X" u2="&#x16d;" k="36" /> + <hkern u1="X" u2="&#x1ff;" k="40" /> + <hkern u1="X" u2="&#x14d;" k="40" /> + <hkern u1="X" u2="&#x151;" k="40" /> + <hkern u1="X" u2="&#x14f;" k="40" /> + <hkern u1="X" u2="&#x119;" k="33" /> + <hkern u1="X" u2="&#x113;" k="33" /> + <hkern u1="X" u2="&#x117;" k="33" /> + <hkern u1="X" u2="&#x11b;" k="33" /> + <hkern u1="X" u2="&#x115;" k="33" /> + <hkern u1="X" u2="&#x1fd;" k="33" /> + <hkern u1="X" u2="&#x105;" k="33" /> + <hkern u1="X" u2="&#x101;" k="33" /> + <hkern u1="X" u2="&#x103;" k="33" /> + <hkern u1="X" u2="&#x168;" k="16" /> + <hkern u1="X" u2="&#x16e;" k="16" /> + <hkern u1="X" u2="&#x172;" k="16" /> + <hkern u1="X" u2="&#x16a;" k="16" /> + <hkern u1="X" u2="&#x170;" k="16" /> + <hkern u1="X" u2="&#x16c;" k="16" /> + <hkern u1="X" u2="&#x1fe;" k="49" /> + <hkern u1="X" u2="&#x14c;" k="49" /> + <hkern u1="X" u2="&#x150;" k="49" /> + <hkern u1="X" u2="&#x14e;" k="49" /> + <hkern u1="X" u2="&#x13f;" k="20" /> + <hkern u1="X" u2="&#x13b;" k="20" /> + <hkern u1="X" u2="&#x13d;" k="20" /> + <hkern u1="X" u2="&#x139;" k="20" /> + <hkern u1="X" u2="&#x120;" k="47" /> + <hkern u1="X" u2="&#x122;" k="47" /> + <hkern u1="X" u2="&#x11c;" k="47" /> + <hkern u1="X" u2="&#x11e;" k="47" /> + <hkern u1="X" u2="&#x118;" k="34" /> + <hkern u1="X" u2="&#x112;" k="34" /> + <hkern u1="X" u2="&#x116;" k="34" /> + <hkern u1="X" u2="&#x11a;" k="34" /> + <hkern u1="X" u2="&#x114;" k="34" /> + <hkern u1="X" u2="&#x108;" k="43" /> + <hkern u1="X" u2="&#x10c;" k="43" /> + <hkern u1="X" u2="&#x106;" k="43" /> + <hkern u1="X" u2="&#xff;" k="46" /> + <hkern u1="X" u2="&#xfd;" k="46" /> + <hkern u1="X" u2="&#xf9;" k="36" /> + <hkern u1="X" u2="&#xfc;" k="36" /> + <hkern u1="X" u2="&#xfb;" k="36" /> + <hkern u1="X" u2="&#xfa;" k="36" /> + <hkern u1="X" u2="&#xf5;" k="40" /> + <hkern u1="X" u2="&#xf2;" k="40" /> + <hkern u1="X" u2="&#xf6;" k="40" /> + <hkern u1="X" u2="&#xf4;" k="40" /> + <hkern u1="X" u2="&#xf3;" k="40" /> + <hkern u1="X" u2="&#xe8;" k="33" /> + <hkern u1="X" u2="&#xeb;" k="33" /> + <hkern u1="X" u2="&#xea;" k="33" /> + <hkern u1="X" u2="&#xe9;" k="33" /> + <hkern u1="X" u2="&#xe3;" k="33" /> + <hkern u1="X" u2="&#xe5;" k="33" /> + <hkern u1="X" u2="&#xe0;" k="33" /> + <hkern u1="X" u2="&#xe4;" k="33" /> + <hkern u1="X" u2="&#xe2;" k="33" /> + <hkern u1="X" u2="&#xe1;" k="33" /> + <hkern u1="X" u2="&#xd9;" k="16" /> + <hkern u1="X" u2="&#xdc;" k="16" /> + <hkern u1="X" u2="&#xdb;" k="16" /> + <hkern u1="X" u2="&#xda;" k="16" /> + <hkern u1="X" u2="&#xd5;" k="49" /> + <hkern u1="X" u2="&#xd2;" k="49" /> + <hkern u1="X" u2="&#xd6;" k="49" /> + <hkern u1="X" u2="&#xd4;" k="49" /> + <hkern u1="X" u2="&#xd3;" k="49" /> + <hkern u1="X" u2="&#xc8;" k="34" /> + <hkern u1="X" u2="&#xcb;" k="34" /> + <hkern u1="X" u2="&#xca;" k="34" /> + <hkern u1="X" u2="&#xc9;" k="34" /> + <hkern u1="X" u2="&#xc7;" k="43" /> + <hkern u1="X" u2="&#x153;" k="40" /> + <hkern u1="X" u2="&#xf8;" k="40" /> + <hkern u1="X" u2="&#xe6;" k="33" /> + <hkern u1="X" u2="&#x152;" k="49" /> + <hkern u1="X" u2="&#xd8;" k="49" /> + <hkern u1="X" u2="&#x141;" k="20" /> + <hkern u1="X" u2="&#x2014;" k="43" /> + <hkern u1="X" u2="&#x2013;" k="43" /> + <hkern u1="X" u2="y" k="46" /> + <hkern u1="X" u2="u" k="36" /> + <hkern u1="X" u2="o" k="40" /> + <hkern u1="X" u2="e" k="33" /> + <hkern u1="X" u2="a" k="33" /> + <hkern u1="X" u2="U" k="16" /> + <hkern u1="X" u2="O" k="49" /> + <hkern u1="X" u2="L" k="20" /> + <hkern u1="X" u2="G" k="47" /> + <hkern u1="X" u2="E" k="34" /> + <hkern u1="X" u2="C" k="43" /> + <hkern u1="X" u2="v" k="43" /> + <hkern u1="X" u2="Q" k="49" /> + <hkern u1="X" u2="&#x2d;" k="43" /> + <hkern u1="Y" u2="&#xc6;" k="76" /> + <hkern u1="Y" u2="&#xbf;" k="140" /> + <hkern u1="Y" u2="&#xa1;" k="55" /> + <hkern u1="Y" u2="x" k="41" /> + <hkern u1="Y" u2="v" k="47" /> + <hkern u1="Y" u2="q" k="93" /> + <hkern u1="Y" u2="p" k="69" /> + <hkern u1="Y" u2="m" k="48" /> + <hkern u1="Y" u2="Q" k="45" /> + <hkern u1="Y" u2="F" k="36" /> + <hkern u1="Y" u2="&#x2f;" k="96" /> + <hkern u1="Y" u2="&#x2d;" k="56" /> + <hkern u1="Z" u2="v" k="13" /> + <hkern u1="Z" u2="Q" k="20" /> + <hkern u1="[" u2="j" k="-37" /> + <hkern u1="a" u2="v" k="23" /> + <hkern u1="b" g2="f_k" k="20" /> + <hkern u1="b" g2="f_f_j" k="20" /> + <hkern u1="b" g2="f_j" k="20" /> + <hkern u1="b" g2="f_h" k="20" /> + <hkern u1="b" g2="f_f_k" k="20" /> + <hkern u1="b" g2="f_f_h" k="20" /> + <hkern u1="b" g2="f_f_b" k="20" /> + <hkern u1="b" g2="f_b" k="20" /> + <hkern u1="b" g2="f_f_l" k="20" /> + <hkern u1="b" g2="f_f_i" k="20" /> + <hkern u1="b" g2="f_f" k="20" /> + <hkern u1="b" u2="x" k="21" /> + <hkern u1="b" u2="v" k="18" /> + <hkern u1="e" g2="f_k" k="20" /> + <hkern u1="e" g2="f_f_j" k="20" /> + <hkern u1="e" g2="f_j" k="20" /> + <hkern u1="e" g2="f_h" k="20" /> + <hkern u1="e" g2="f_f_k" k="20" /> + <hkern u1="e" g2="f_f_h" k="20" /> + <hkern u1="e" g2="f_f_b" k="20" /> + <hkern u1="e" g2="f_b" k="20" /> + <hkern u1="e" g2="f_f_l" k="20" /> + <hkern u1="e" g2="f_f_i" k="20" /> + <hkern u1="e" g2="f_f" k="20" /> + <hkern u1="e" u2="x" k="23" /> + <hkern u1="e" u2="v" k="20" /> + <hkern u1="f" u2="&#x219;" k="6" /> + <hkern u1="f" u2="&#x15d;" k="6" /> + <hkern u1="f" u2="&#x15f;" k="6" /> + <hkern u1="f" u2="&#x15b;" k="6" /> + <hkern u1="f" u2="&#x1ff;" k="23" /> + <hkern u1="f" u2="&#x14d;" k="23" /> + <hkern u1="f" u2="&#x151;" k="23" /> + <hkern u1="f" u2="&#x14f;" k="23" /> + <hkern u1="f" u2="&#x121;" k="15" /> + <hkern u1="f" u2="&#x123;" k="15" /> + <hkern u1="f" u2="&#x11d;" k="15" /> + <hkern u1="f" u2="&#x11f;" k="15" /> + <hkern u1="f" u2="&#x119;" k="18" /> + <hkern u1="f" u2="&#x113;" k="18" /> + <hkern u1="f" u2="&#x117;" k="18" /> + <hkern u1="f" u2="&#x11b;" k="18" /> + <hkern u1="f" u2="&#x115;" k="18" /> + <hkern u1="f" u2="&#x109;" k="9" /> + <hkern u1="f" u2="&#x10d;" k="9" /> + <hkern u1="f" u2="&#x107;" k="9" /> + <hkern u1="f" u2="&#x161;" k="6" /> + <hkern u1="f" u2="&#xf5;" k="23" /> + <hkern u1="f" u2="&#xf2;" k="23" /> + <hkern u1="f" u2="&#xf6;" k="23" /> + <hkern u1="f" u2="&#xf4;" k="23" /> + <hkern u1="f" u2="&#xf3;" k="23" /> + <hkern u1="f" u2="&#xe8;" k="18" /> + <hkern u1="f" u2="&#xeb;" k="18" /> + <hkern u1="f" u2="&#xea;" k="18" /> + <hkern u1="f" u2="&#xe9;" k="18" /> + <hkern u1="f" u2="&#xe7;" k="9" /> + <hkern u1="f" u2="&#x153;" k="23" /> + <hkern u1="f" u2="&#xf8;" k="23" /> + <hkern u1="f" u2="&#x2026;" k="58" /> + <hkern u1="f" u2="&#x201e;" k="58" /> + <hkern u1="f" u2="&#x201a;" k="58" /> + <hkern u1="f" u2="s" k="6" /> + <hkern u1="f" u2="o" k="23" /> + <hkern u1="f" u2="g" k="15" /> + <hkern u1="f" u2="e" k="18" /> + <hkern u1="f" u2="c" k="9" /> + <hkern u1="f" u2="&#x2e;" k="58" /> + <hkern u1="f" u2="&#x2c;" k="58" /> + <hkern u1="f" u2="q" k="18" /> + <hkern u1="h" u2="v" k="20" /> + <hkern u1="k" u2="q" k="36" /> + <hkern u1="m" u2="&#x1ef3;" k="15" /> + <hkern u1="m" u2="&#x177;" k="15" /> + <hkern u1="m" u2="&#x163;" k="13" /> + <hkern u1="m" u2="&#x165;" k="13" /> + <hkern u1="m" u2="&#x167;" k="13" /> + <hkern u1="m" u2="&#xff;" k="15" /> + <hkern u1="m" u2="&#xfd;" k="15" /> + <hkern u1="m" g2="fl" k="20" /> + <hkern u1="m" g2="fi" k="20" /> + <hkern u1="m" u2="y" k="15" /> + <hkern u1="m" u2="t" k="13" /> + <hkern u1="m" u2="f" k="20" /> + <hkern u1="m" u2="v" k="20" /> + <hkern u1="n" u2="v" k="26" /> + <hkern u1="o" g2="f_k" k="20" /> + <hkern u1="o" g2="f_f_j" k="20" /> + <hkern u1="o" g2="f_j" k="20" /> + <hkern u1="o" g2="f_h" k="20" /> + <hkern u1="o" g2="f_f_k" k="20" /> + <hkern u1="o" g2="f_f_h" k="20" /> + <hkern u1="o" g2="f_f_b" k="20" /> + <hkern u1="o" g2="f_b" k="20" /> + <hkern u1="o" g2="f_f_l" k="20" /> + <hkern u1="o" g2="f_f_i" k="20" /> + <hkern u1="o" g2="f_f" k="20" /> + <hkern u1="o" u2="x" k="38" /> + <hkern u1="o" u2="v" k="20" /> + <hkern u1="p" u2="&#x1ef3;" k="20" /> + <hkern u1="p" u2="&#x177;" k="20" /> + <hkern u1="p" u2="&#x1e81;" k="6" /> + <hkern u1="p" u2="&#x1e85;" k="6" /> + <hkern u1="p" u2="&#x175;" k="6" /> + <hkern u1="p" u2="&#x1e83;" k="6" /> + <hkern u1="p" u2="&#x163;" k="13" /> + <hkern u1="p" u2="&#x165;" k="13" /> + <hkern u1="p" u2="&#x167;" k="13" /> + <hkern u1="p" u2="&#xff;" k="20" /> + <hkern u1="p" u2="&#xfd;" k="20" /> + <hkern u1="p" g2="fl" k="18" /> + <hkern u1="p" g2="fi" k="18" /> + <hkern u1="p" u2="y" k="20" /> + <hkern u1="p" u2="w" k="6" /> + <hkern u1="p" u2="t" k="13" /> + <hkern u1="p" u2="f" k="18" /> + <hkern u1="p" g2="f_k" k="20" /> + <hkern u1="p" g2="f_f_j" k="20" /> + <hkern u1="p" g2="f_j" k="20" /> + <hkern u1="p" g2="f_h" k="20" /> + <hkern u1="p" g2="f_f_k" k="20" /> + <hkern u1="p" g2="f_f_h" k="20" /> + <hkern u1="p" g2="f_f_b" k="20" /> + <hkern u1="p" g2="f_b" k="20" /> + <hkern u1="p" g2="f_f_l" k="20" /> + <hkern u1="p" g2="f_f_i" k="20" /> + <hkern u1="p" g2="f_f" k="20" /> + <hkern u1="p" u2="x" k="28" /> + <hkern u1="p" u2="v" k="20" /> + <hkern u1="r" u2="q" k="12" /> + <hkern u1="s" u2="v" k="6" /> + <hkern u1="t" u2="q" k="6" /> + <hkern u1="v" u2="&#x1ff;" k="23" /> + <hkern u1="v" u2="&#x14d;" k="23" /> + <hkern u1="v" u2="&#x151;" k="23" /> + <hkern u1="v" u2="&#x14f;" k="23" /> + <hkern u1="v" u2="&#x121;" k="28" /> + <hkern u1="v" u2="&#x123;" k="28" /> + <hkern u1="v" u2="&#x11d;" k="28" /> + <hkern u1="v" u2="&#x11f;" k="28" /> + <hkern u1="v" u2="&#x119;" k="20" /> + <hkern u1="v" u2="&#x113;" k="20" /> + <hkern u1="v" u2="&#x117;" k="20" /> + <hkern u1="v" u2="&#x11b;" k="20" /> + <hkern u1="v" u2="&#x115;" k="20" /> + <hkern u1="v" u2="&#x111;" k="20" /> + <hkern u1="v" u2="&#x10f;" k="20" /> + <hkern u1="v" u2="&#x1fd;" k="23" /> + <hkern u1="v" u2="&#x105;" k="23" /> + <hkern u1="v" u2="&#x101;" k="23" /> + <hkern u1="v" u2="&#x103;" k="23" /> + <hkern u1="v" u2="&#xf5;" k="23" /> + <hkern u1="v" u2="&#xf2;" k="23" /> + <hkern u1="v" u2="&#xf6;" k="23" /> + <hkern u1="v" u2="&#xf4;" k="23" /> + <hkern u1="v" u2="&#xf3;" k="23" /> + <hkern u1="v" u2="&#xe8;" k="20" /> + <hkern u1="v" u2="&#xeb;" k="20" /> + <hkern u1="v" u2="&#xea;" k="20" /> + <hkern u1="v" u2="&#xe9;" k="20" /> + <hkern u1="v" u2="&#xe3;" k="23" /> + <hkern u1="v" u2="&#xe5;" k="23" /> + <hkern u1="v" u2="&#xe0;" k="23" /> + <hkern u1="v" u2="&#xe4;" k="23" /> + <hkern u1="v" u2="&#xe2;" k="23" /> + <hkern u1="v" u2="&#xe1;" k="23" /> + <hkern u1="v" u2="&#x153;" k="23" /> + <hkern u1="v" u2="&#xf8;" k="23" /> + <hkern u1="v" u2="&#xe6;" k="23" /> + <hkern u1="v" u2="&#x2026;" k="51" /> + <hkern u1="v" u2="o" k="23" /> + <hkern u1="v" u2="g" k="28" /> + <hkern u1="v" u2="e" k="20" /> + <hkern u1="v" u2="d" k="20" /> + <hkern u1="v" u2="a" k="23" /> + <hkern u1="v" u2="&#x2e;" k="51" /> + <hkern u1="v" u2="&#x2c;" k="55" /> + <hkern u1="v" u2="&#x201e;" k="51" /> + <hkern u1="v" u2="&#x201a;" k="51" /> + <hkern u1="v" u2="q" k="22" /> + <hkern u1="x" u2="&#x1e81;" k="23" /> + <hkern u1="x" u2="&#x1e85;" k="23" /> + <hkern u1="x" u2="&#x175;" k="23" /> + <hkern u1="x" u2="&#x1e83;" k="23" /> + <hkern u1="x" u2="&#x169;" k="23" /> + <hkern u1="x" u2="&#x16f;" k="23" /> + <hkern u1="x" u2="&#x173;" k="31" /> + <hkern u1="x" u2="&#x16b;" k="23" /> + <hkern u1="x" u2="&#x171;" k="23" /> + <hkern u1="x" u2="&#x16d;" k="23" /> + <hkern u1="x" u2="&#x163;" k="25" /> + <hkern u1="x" u2="&#x165;" k="25" /> + <hkern u1="x" u2="&#x167;" k="25" /> + <hkern u1="x" u2="&#x1ff;" k="43" /> + <hkern u1="x" u2="&#x14d;" k="43" /> + <hkern u1="x" u2="&#x151;" k="43" /> + <hkern u1="x" u2="&#x14f;" k="43" /> + <hkern u1="x" u2="&#x121;" k="43" /> + <hkern u1="x" u2="&#x123;" k="43" /> + <hkern u1="x" u2="&#x11d;" k="43" /> + <hkern u1="x" u2="&#x11f;" k="43" /> + <hkern u1="x" u2="&#x119;" k="43" /> + <hkern u1="x" u2="&#x113;" k="43" /> + <hkern u1="x" u2="&#x117;" k="43" /> + <hkern u1="x" u2="&#x11b;" k="43" /> + <hkern u1="x" u2="&#x115;" k="43" /> + <hkern u1="x" u2="&#x111;" k="47" /> + <hkern u1="x" u2="&#x10f;" k="47" /> + <hkern u1="x" u2="&#x109;" k="31" /> + <hkern u1="x" u2="&#x10d;" k="31" /> + <hkern u1="x" u2="&#x107;" k="31" /> + <hkern u1="x" u2="&#xf9;" k="23" /> + <hkern u1="x" u2="&#xfc;" k="23" /> + <hkern u1="x" u2="&#xfb;" k="23" /> + <hkern u1="x" u2="&#xfa;" k="23" /> + <hkern u1="x" u2="&#xf5;" k="43" /> + <hkern u1="x" u2="&#xf2;" k="43" /> + <hkern u1="x" u2="&#xf6;" k="43" /> + <hkern u1="x" u2="&#xf4;" k="43" /> + <hkern u1="x" u2="&#xf3;" k="43" /> + <hkern u1="x" u2="&#xe8;" k="43" /> + <hkern u1="x" u2="&#xeb;" k="43" /> + <hkern u1="x" u2="&#xea;" k="43" /> + <hkern u1="x" u2="&#xe9;" k="43" /> + <hkern u1="x" u2="&#xe7;" k="31" /> + <hkern u1="x" u2="&#x153;" k="43" /> + <hkern u1="x" u2="&#xf8;" k="43" /> + <hkern u1="x" u2="w" k="23" /> + <hkern u1="x" u2="u" k="31" /> + <hkern u1="x" u2="t" k="25" /> + <hkern u1="x" u2="o" k="43" /> + <hkern u1="x" u2="g" k="43" /> + <hkern u1="x" u2="e" k="43" /> + <hkern u1="x" u2="d" k="47" /> + <hkern u1="x" u2="c" k="31" /> + <hkern u1="x" u2="q" k="46" /> + <hkern u1="y" u2="&#x201e;" k="51" /> + <hkern u1="y" u2="&#x201a;" k="51" /> + <hkern u1="y" u2="q" k="20" /> + <hkern u1="&#x7b;" u2="j" k="-37" /> + <hkern u1="&#xa1;" u2="&#x1ef2;" k="55" /> + <hkern u1="&#xa1;" u2="&#x176;" k="55" /> + <hkern u1="&#xa1;" u2="&#x178;" k="55" /> + <hkern u1="&#xa1;" u2="&#xdd;" k="55" /> + <hkern u1="&#xa1;" u2="Y" k="55" /> + <hkern u1="&#xa1;" u2="V" k="10" /> + <hkern u1="&#x201a;" u2="&#x2a;" k="76" /> + <hkern u1="&#x201e;" u2="&#x2a;" k="76" /> + <hkern u1="&#x2026;" u2="&#x2a;" k="76" /> + <hkern u1="&#xbf;" u2="&#x1ef2;" k="85" /> + <hkern u1="&#xbf;" u2="&#x176;" k="85" /> + <hkern u1="&#xbf;" u2="&#x178;" k="85" /> + <hkern u1="&#xbf;" u2="&#xdd;" k="85" /> + <hkern u1="&#xbf;" u2="Y" k="85" /> + <hkern u1="&#xbf;" u2="V" k="58" /> + <hkern u1="&#x141;" u2="&#xae;" k="24" /> + <hkern u1="&#x141;" u2="&#x2122;" k="24" /> + <hkern u1="&#x141;" u2="v" k="21" /> + <hkern u1="&#x141;" u2="V" k="64" /> + <hkern u1="&#x141;" u2="Q" k="30" /> + <hkern u1="&#x141;" u2="&#x2d;" k="16" /> + <hkern u1="&#xd8;" u2="&#xc6;" k="13" /> + <hkern u1="&#xd8;" u2="x" k="13" /> + <hkern u1="&#xd8;" u2="X" k="49" /> + <hkern u1="&#xd8;" u2="V" k="24" /> + <hkern u1="&#xe6;" g2="f_k" k="20" /> + <hkern u1="&#xe6;" g2="f_f_j" k="20" /> + <hkern u1="&#xe6;" g2="f_j" k="20" /> + <hkern u1="&#xe6;" g2="f_h" k="20" /> + <hkern u1="&#xe6;" g2="f_f_k" k="20" /> + <hkern u1="&#xe6;" g2="f_f_h" k="20" /> + <hkern u1="&#xe6;" g2="f_f_b" k="20" /> + <hkern u1="&#xe6;" g2="f_b" k="20" /> + <hkern u1="&#xe6;" g2="f_f_l" k="20" /> + <hkern u1="&#xe6;" g2="f_f_i" k="20" /> + <hkern u1="&#xe6;" g2="f_f" k="20" /> + <hkern u1="&#xe6;" u2="x" k="23" /> + <hkern u1="&#xe6;" u2="v" k="20" /> + <hkern u1="&#xf8;" g2="f_k" k="20" /> + <hkern u1="&#xf8;" g2="f_f_j" k="20" /> + <hkern u1="&#xf8;" g2="f_j" k="20" /> + <hkern u1="&#xf8;" g2="f_h" k="20" /> + <hkern u1="&#xf8;" g2="f_f_k" k="20" /> + <hkern u1="&#xf8;" g2="f_f_h" k="20" /> + <hkern u1="&#xf8;" g2="f_f_b" k="20" /> + <hkern u1="&#xf8;" g2="f_b" k="20" /> + <hkern u1="&#xf8;" g2="f_f_l" k="20" /> + <hkern u1="&#xf8;" g2="f_f_i" k="20" /> + <hkern u1="&#xf8;" g2="f_f" k="20" /> + <hkern u1="&#xf8;" u2="x" k="38" /> + <hkern u1="&#xf8;" u2="v" k="20" /> + <hkern u1="&#x153;" g2="f_k" k="20" /> + <hkern u1="&#x153;" g2="f_f_j" k="20" /> + <hkern u1="&#x153;" g2="f_j" k="20" /> + <hkern u1="&#x153;" g2="f_h" k="20" /> + <hkern u1="&#x153;" g2="f_f_k" k="20" /> + <hkern u1="&#x153;" g2="f_f_h" k="20" /> + <hkern u1="&#x153;" g2="f_f_b" k="20" /> + <hkern u1="&#x153;" g2="f_b" k="20" /> + <hkern u1="&#x153;" g2="f_f_l" k="20" /> + <hkern u1="&#x153;" g2="f_f_i" k="20" /> + <hkern u1="&#x153;" g2="f_f" k="20" /> + <hkern u1="&#x153;" u2="x" k="23" /> + <hkern u1="&#x153;" u2="v" k="20" /> + <hkern u1="&#xd0;" u2="&#xc6;" k="16" /> + <hkern u1="&#xd0;" u2="X" k="33" /> + <hkern u1="&#xd0;" u2="V" k="16" /> + <hkern u1="&#xde;" u2="&#xc6;" k="42" /> + <hkern u1="&#xde;" u2="&#x201e;" k="56" /> + <hkern u1="&#xde;" u2="&#x201a;" k="56" /> + <hkern u1="&#xde;" u2="X" k="36" /> + <hkern u1="&#xfe;" g2="f_k" k="20" /> + <hkern u1="&#xfe;" g2="f_f_j" k="20" /> + <hkern u1="&#xfe;" g2="f_j" k="20" /> + <hkern u1="&#xfe;" g2="f_h" k="20" /> + <hkern u1="&#xfe;" g2="f_f_k" k="20" /> + <hkern u1="&#xfe;" g2="f_f_h" k="20" /> + <hkern u1="&#xfe;" g2="f_f_b" k="20" /> + <hkern u1="&#xfe;" g2="f_b" k="20" /> + <hkern u1="&#xfe;" g2="f_f_l" k="20" /> + <hkern u1="&#xfe;" g2="f_f_i" k="20" /> + <hkern u1="&#xfe;" g2="f_f" k="20" /> + <hkern u1="&#xfe;" u2="x" k="21" /> + <hkern u1="&#xfe;" u2="v" k="18" /> + <hkern u1="&#xc1;" u2="v" k="46" /> + <hkern u1="&#xc1;" u2="V" k="56" /> + <hkern u1="&#xc1;" u2="Q" k="18" /> + <hkern u1="&#xc2;" u2="v" k="46" /> + <hkern u1="&#xc2;" u2="V" k="56" /> + <hkern u1="&#xc2;" u2="Q" k="18" /> + <hkern u1="&#xc4;" u2="v" k="46" /> + <hkern u1="&#xc4;" u2="V" k="56" /> + <hkern u1="&#xc4;" u2="Q" k="18" /> + <hkern u1="&#xc0;" u2="v" k="46" /> + <hkern u1="&#xc0;" u2="V" k="56" /> + <hkern u1="&#xc0;" u2="Q" k="18" /> + <hkern u1="&#xc5;" u2="v" k="46" /> + <hkern u1="&#xc5;" u2="V" k="56" /> + <hkern u1="&#xc5;" u2="Q" k="18" /> + <hkern u1="&#xc3;" u2="v" k="46" /> + <hkern u1="&#xc3;" u2="V" k="56" /> + <hkern u1="&#xc3;" u2="Q" k="18" /> + <hkern u1="&#xc7;" u2="Q" k="21" /> + <hkern u1="&#xd1;" u2="V" k="21" /> + <hkern u1="&#xd3;" u2="&#xc6;" k="13" /> + <hkern u1="&#xd3;" u2="x" k="13" /> + <hkern u1="&#xd3;" u2="X" k="49" /> + <hkern u1="&#xd3;" u2="V" k="24" /> + <hkern u1="&#xd4;" u2="&#xc6;" k="13" /> + <hkern u1="&#xd4;" u2="x" k="13" /> + <hkern u1="&#xd4;" u2="X" k="49" /> + <hkern u1="&#xd4;" u2="V" k="24" /> + <hkern u1="&#xd6;" u2="&#xc6;" k="13" /> + <hkern u1="&#xd6;" u2="x" k="13" /> + <hkern u1="&#xd6;" u2="X" k="49" /> + <hkern u1="&#xd6;" u2="V" k="24" /> + <hkern u1="&#xd2;" u2="&#xc6;" k="13" /> + <hkern u1="&#xd2;" u2="x" k="13" /> + <hkern u1="&#xd2;" u2="X" k="49" /> + <hkern u1="&#xd2;" u2="V" k="24" /> + <hkern u1="&#xd5;" u2="&#xc6;" k="13" /> + <hkern u1="&#xd5;" u2="x" k="13" /> + <hkern u1="&#xd5;" u2="X" k="49" /> + <hkern u1="&#xd5;" u2="V" k="24" /> + <hkern u1="&#x160;" u2="x" k="6" /> + <hkern u1="&#x160;" u2="v" k="9" /> + <hkern u1="&#x160;" u2="V" k="10" /> + <hkern u1="&#xda;" u2="&#xc6;" k="20" /> + <hkern u1="&#xda;" u2="X" k="16" /> + <hkern u1="&#xdb;" u2="&#xc6;" k="20" /> + <hkern u1="&#xdb;" u2="X" k="16" /> + <hkern u1="&#xdc;" u2="&#xc6;" k="20" /> + <hkern u1="&#xdc;" u2="X" k="16" /> + <hkern u1="&#xd9;" u2="&#xc6;" k="20" /> + <hkern u1="&#xd9;" u2="X" k="16" /> + <hkern u1="&#xdd;" u2="&#xc6;" k="76" /> + <hkern u1="&#xdd;" u2="&#xbf;" k="140" /> + <hkern u1="&#xdd;" u2="&#xa1;" k="55" /> + <hkern u1="&#xdd;" u2="x" k="41" /> + <hkern u1="&#xdd;" u2="v" k="47" /> + <hkern u1="&#xdd;" u2="q" k="93" /> + <hkern u1="&#xdd;" u2="p" k="69" /> + <hkern u1="&#xdd;" u2="m" k="48" /> + <hkern u1="&#xdd;" u2="Q" k="45" /> + <hkern u1="&#xdd;" u2="F" k="36" /> + <hkern u1="&#xdd;" u2="&#x2f;" k="96" /> + <hkern u1="&#xdd;" u2="&#x2d;" k="56" /> + <hkern u1="&#x178;" u2="&#xc6;" k="76" /> + <hkern u1="&#x178;" u2="&#xbf;" k="140" /> + <hkern u1="&#x178;" u2="&#xa1;" k="55" /> + <hkern u1="&#x178;" u2="x" k="41" /> + <hkern u1="&#x178;" u2="v" k="47" /> + <hkern u1="&#x178;" u2="q" k="93" /> + <hkern u1="&#x178;" u2="p" k="69" /> + <hkern u1="&#x178;" u2="m" k="48" /> + <hkern u1="&#x178;" u2="Q" k="45" /> + <hkern u1="&#x178;" u2="F" k="36" /> + <hkern u1="&#x178;" u2="&#x2f;" k="96" /> + <hkern u1="&#x178;" u2="&#x2d;" k="56" /> + <hkern u1="&#x17d;" u2="v" k="13" /> + <hkern u1="&#x17d;" u2="Q" k="20" /> + <hkern u1="&#xe1;" u2="v" k="23" /> + <hkern u1="&#xe2;" u2="v" k="23" /> + <hkern u1="&#xe4;" u2="v" k="23" /> + <hkern u1="&#xe0;" u2="v" k="23" /> + <hkern u1="&#xe5;" u2="v" k="23" /> + <hkern u1="&#xe3;" u2="v" k="23" /> + <hkern u1="&#xe9;" g2="f_k" k="20" /> + <hkern u1="&#xe9;" g2="f_f_j" k="20" /> + <hkern u1="&#xe9;" g2="f_j" k="20" /> + <hkern u1="&#xe9;" g2="f_h" k="20" /> + <hkern u1="&#xe9;" g2="f_f_k" k="20" /> + <hkern u1="&#xe9;" g2="f_f_h" k="20" /> + <hkern u1="&#xe9;" g2="f_f_b" k="20" /> + <hkern u1="&#xe9;" g2="f_b" k="20" /> + <hkern u1="&#xe9;" g2="f_f_l" k="20" /> + <hkern u1="&#xe9;" g2="f_f_i" k="20" /> + <hkern u1="&#xe9;" g2="f_f" k="20" /> + <hkern u1="&#xe9;" u2="x" k="23" /> + <hkern u1="&#xe9;" u2="v" k="20" /> + <hkern u1="&#xea;" g2="f_k" k="20" /> + <hkern u1="&#xea;" g2="f_f_j" k="20" /> + <hkern u1="&#xea;" g2="f_j" k="20" /> + <hkern u1="&#xea;" g2="f_h" k="20" /> + <hkern u1="&#xea;" g2="f_f_k" k="20" /> + <hkern u1="&#xea;" g2="f_f_h" k="20" /> + <hkern u1="&#xea;" g2="f_f_b" k="20" /> + <hkern u1="&#xea;" g2="f_b" k="20" /> + <hkern u1="&#xea;" g2="f_f_l" k="20" /> + <hkern u1="&#xea;" g2="f_f_i" k="20" /> + <hkern u1="&#xea;" g2="f_f" k="20" /> + <hkern u1="&#xea;" u2="x" k="23" /> + <hkern u1="&#xea;" u2="v" k="20" /> + <hkern u1="&#xeb;" g2="f_k" k="20" /> + <hkern u1="&#xeb;" g2="f_f_j" k="20" /> + <hkern u1="&#xeb;" g2="f_j" k="20" /> + <hkern u1="&#xeb;" g2="f_h" k="20" /> + <hkern u1="&#xeb;" g2="f_f_k" k="20" /> + <hkern u1="&#xeb;" g2="f_f_h" k="20" /> + <hkern u1="&#xeb;" g2="f_f_b" k="20" /> + <hkern u1="&#xeb;" g2="f_b" k="20" /> + <hkern u1="&#xeb;" g2="f_f_l" k="20" /> + <hkern u1="&#xeb;" g2="f_f_i" k="20" /> + <hkern u1="&#xeb;" g2="f_f" k="20" /> + <hkern u1="&#xeb;" u2="x" k="23" /> + <hkern u1="&#xeb;" u2="v" k="20" /> + <hkern u1="&#xe8;" g2="f_k" k="20" /> + <hkern u1="&#xe8;" g2="f_f_j" k="20" /> + <hkern u1="&#xe8;" g2="f_j" k="20" /> + <hkern u1="&#xe8;" g2="f_h" k="20" /> + <hkern u1="&#xe8;" g2="f_f_k" k="20" /> + <hkern u1="&#xe8;" g2="f_f_h" k="20" /> + <hkern u1="&#xe8;" g2="f_f_b" k="20" /> + <hkern u1="&#xe8;" g2="f_b" k="20" /> + <hkern u1="&#xe8;" g2="f_f_l" k="20" /> + <hkern u1="&#xe8;" g2="f_f_i" k="20" /> + <hkern u1="&#xe8;" g2="f_f" k="20" /> + <hkern u1="&#xe8;" u2="x" k="23" /> + <hkern u1="&#xe8;" u2="v" k="20" /> + <hkern u1="&#xf1;" u2="v" k="26" /> + <hkern u1="&#xf3;" g2="f_k" k="20" /> + <hkern u1="&#xf3;" g2="f_f_j" k="20" /> + <hkern u1="&#xf3;" g2="f_j" k="20" /> + <hkern u1="&#xf3;" g2="f_h" k="20" /> + <hkern u1="&#xf3;" g2="f_f_k" k="20" /> + <hkern u1="&#xf3;" g2="f_f_h" k="20" /> + <hkern u1="&#xf3;" g2="f_f_b" k="20" /> + <hkern u1="&#xf3;" g2="f_b" k="20" /> + <hkern u1="&#xf3;" g2="f_f_l" k="20" /> + <hkern u1="&#xf3;" g2="f_f_i" k="20" /> + <hkern u1="&#xf3;" g2="f_f" k="20" /> + <hkern u1="&#xf3;" u2="x" k="38" /> + <hkern u1="&#xf3;" u2="v" k="20" /> + <hkern u1="&#xf4;" g2="f_k" k="20" /> + <hkern u1="&#xf4;" g2="f_f_j" k="20" /> + <hkern u1="&#xf4;" g2="f_j" k="20" /> + <hkern u1="&#xf4;" g2="f_h" k="20" /> + <hkern u1="&#xf4;" g2="f_f_k" k="20" /> + <hkern u1="&#xf4;" g2="f_f_h" k="20" /> + <hkern u1="&#xf4;" g2="f_f_b" k="20" /> + <hkern u1="&#xf4;" g2="f_b" k="20" /> + <hkern u1="&#xf4;" g2="f_f_l" k="20" /> + <hkern u1="&#xf4;" g2="f_f_i" k="20" /> + <hkern u1="&#xf4;" g2="f_f" k="20" /> + <hkern u1="&#xf4;" u2="x" k="38" /> + <hkern u1="&#xf4;" u2="v" k="20" /> + <hkern u1="&#xf6;" g2="f_k" k="20" /> + <hkern u1="&#xf6;" g2="f_f_j" k="20" /> + <hkern u1="&#xf6;" g2="f_j" k="20" /> + <hkern u1="&#xf6;" g2="f_h" k="20" /> + <hkern u1="&#xf6;" g2="f_f_k" k="20" /> + <hkern u1="&#xf6;" g2="f_f_h" k="20" /> + <hkern u1="&#xf6;" g2="f_f_b" k="20" /> + <hkern u1="&#xf6;" g2="f_b" k="20" /> + <hkern u1="&#xf6;" g2="f_f_l" k="20" /> + <hkern u1="&#xf6;" g2="f_f_i" k="20" /> + <hkern u1="&#xf6;" g2="f_f" k="20" /> + <hkern u1="&#xf6;" u2="x" k="38" /> + <hkern u1="&#xf6;" u2="v" k="20" /> + <hkern u1="&#xf2;" g2="f_k" k="20" /> + <hkern u1="&#xf2;" g2="f_f_j" k="20" /> + <hkern u1="&#xf2;" g2="f_j" k="20" /> + <hkern u1="&#xf2;" g2="f_h" k="20" /> + <hkern u1="&#xf2;" g2="f_f_k" k="20" /> + <hkern u1="&#xf2;" g2="f_f_h" k="20" /> + <hkern u1="&#xf2;" g2="f_f_b" k="20" /> + <hkern u1="&#xf2;" g2="f_b" k="20" /> + <hkern u1="&#xf2;" g2="f_f_l" k="20" /> + <hkern u1="&#xf2;" g2="f_f_i" k="20" /> + <hkern u1="&#xf2;" g2="f_f" k="20" /> + <hkern u1="&#xf2;" u2="x" k="38" /> + <hkern u1="&#xf2;" u2="v" k="20" /> + <hkern u1="&#xf5;" g2="f_k" k="20" /> + <hkern u1="&#xf5;" g2="f_f_j" k="20" /> + <hkern u1="&#xf5;" g2="f_j" k="20" /> + <hkern u1="&#xf5;" g2="f_h" k="20" /> + <hkern u1="&#xf5;" g2="f_f_k" k="20" /> + <hkern u1="&#xf5;" g2="f_f_h" k="20" /> + <hkern u1="&#xf5;" g2="f_f_b" k="20" /> + <hkern u1="&#xf5;" g2="f_b" k="20" /> + <hkern u1="&#xf5;" g2="f_f_l" k="20" /> + <hkern u1="&#xf5;" g2="f_f_i" k="20" /> + <hkern u1="&#xf5;" g2="f_f" k="20" /> + <hkern u1="&#xf5;" u2="x" k="38" /> + <hkern u1="&#xf5;" u2="v" k="20" /> + <hkern u1="&#x161;" u2="v" k="6" /> + <hkern u1="&#xfd;" u2="&#x201e;" k="51" /> + <hkern u1="&#xfd;" u2="&#x201a;" k="51" /> + <hkern u1="&#xfd;" u2="q" k="20" /> + <hkern u1="&#xff;" u2="&#x201e;" k="51" /> + <hkern u1="&#xff;" u2="&#x201a;" k="51" /> + <hkern u1="&#xff;" u2="q" k="20" /> + <hkern g1="f_f" u2="&#x1ff;" k="20" /> + <hkern g1="f_f" u2="&#x14d;" k="20" /> + <hkern g1="f_f" u2="&#x151;" k="20" /> + <hkern g1="f_f" u2="&#x14f;" k="20" /> + <hkern g1="f_f" u2="&#x119;" k="20" /> + <hkern g1="f_f" u2="&#x113;" k="20" /> + <hkern g1="f_f" u2="&#x117;" k="20" /> + <hkern g1="f_f" u2="&#x11b;" k="20" /> + <hkern g1="f_f" u2="&#x115;" k="20" /> + <hkern g1="f_f" u2="&#x111;" k="20" /> + <hkern g1="f_f" u2="&#x10f;" k="20" /> + <hkern g1="f_f" u2="&#x109;" k="20" /> + <hkern g1="f_f" u2="&#x10d;" k="20" /> + <hkern g1="f_f" u2="&#x107;" k="20" /> + <hkern g1="f_f" u2="&#xf5;" k="20" /> + <hkern g1="f_f" u2="&#xf2;" k="20" /> + <hkern g1="f_f" u2="&#xf6;" k="20" /> + <hkern g1="f_f" u2="&#xf4;" k="20" /> + <hkern g1="f_f" u2="&#xf3;" k="20" /> + <hkern g1="f_f" u2="&#xe8;" k="20" /> + <hkern g1="f_f" u2="&#xeb;" k="20" /> + <hkern g1="f_f" u2="&#xea;" k="20" /> + <hkern g1="f_f" u2="&#xe9;" k="20" /> + <hkern g1="f_f" u2="&#xe7;" k="20" /> + <hkern g1="f_f" u2="&#x153;" k="20" /> + <hkern g1="f_f" u2="&#xf8;" k="20" /> + <hkern g1="f_f" u2="o" k="20" /> + <hkern g1="f_f" u2="e" k="20" /> + <hkern g1="f_f" u2="d" k="20" /> + <hkern g1="f_f" u2="c" k="20" /> + <hkern g1="f_f" u2="&#x10b;" k="20" /> + <hkern g1="f_f" u2="q" k="20" /> + <hkern u1="&#x102;" u2="v" k="46" /> + <hkern u1="&#x102;" u2="V" k="56" /> + <hkern u1="&#x102;" u2="Q" k="18" /> + <hkern u1="&#x100;" u2="v" k="46" /> + <hkern u1="&#x100;" u2="V" k="56" /> + <hkern u1="&#x100;" u2="Q" k="18" /> + <hkern u1="&#x104;" u2="v" k="46" /> + <hkern u1="&#x104;" u2="V" k="56" /> + <hkern u1="&#x104;" u2="Q" k="18" /> + <hkern u1="&#x106;" u2="Q" k="21" /> + <hkern u1="&#x10c;" u2="Q" k="21" /> + <hkern u1="&#x108;" u2="Q" k="21" /> + <hkern u1="&#x10e;" u2="&#xc6;" k="16" /> + <hkern u1="&#x10e;" u2="X" k="33" /> + <hkern u1="&#x10e;" u2="V" k="16" /> + <hkern u1="&#x11e;" u2="V" k="6" /> + <hkern u1="&#x11c;" u2="V" k="6" /> + <hkern u1="&#x122;" u2="V" k="6" /> + <hkern u1="&#x120;" u2="V" k="6" /> + <hkern u1="&#x136;" u2="&#xc7;" k="22" /> + <hkern u1="&#x136;" u2="v" k="53" /> + <hkern u1="&#x136;" u2="q" k="25" /> + <hkern u1="&#x136;" u2="V" k="7" /> + <hkern u1="&#x136;" u2="Q" k="53" /> + <hkern u1="&#x136;" u2="&#x2d;" k="16" /> + <hkern u1="&#x139;" u2="&#xae;" k="24" /> + <hkern u1="&#x139;" u2="&#x2122;" k="24" /> + <hkern u1="&#x139;" u2="v" k="21" /> + <hkern u1="&#x139;" u2="V" k="64" /> + <hkern u1="&#x139;" u2="Q" k="30" /> + <hkern u1="&#x139;" u2="&#x2d;" k="16" /> + <hkern u1="&#x13d;" u2="&#xae;" k="24" /> + <hkern u1="&#x13d;" u2="&#x2122;" k="24" /> + <hkern u1="&#x13d;" u2="v" k="21" /> + <hkern u1="&#x13d;" u2="V" k="64" /> + <hkern u1="&#x13d;" u2="Q" k="30" /> + <hkern u1="&#x13d;" u2="&#x2d;" k="16" /> + <hkern u1="&#x13b;" u2="&#xae;" k="24" /> + <hkern u1="&#x13b;" u2="&#x2122;" k="24" /> + <hkern u1="&#x13b;" u2="v" k="21" /> + <hkern u1="&#x13b;" u2="V" k="64" /> + <hkern u1="&#x13b;" u2="Q" k="30" /> + <hkern u1="&#x13b;" u2="&#x2d;" k="16" /> + <hkern u1="&#x13f;" u2="&#xae;" k="24" /> + <hkern u1="&#x13f;" u2="&#x2122;" k="24" /> + <hkern u1="&#x13f;" u2="v" k="21" /> + <hkern u1="&#x13f;" u2="V" k="64" /> + <hkern u1="&#x13f;" u2="Q" k="30" /> + <hkern u1="&#x13f;" u2="&#x2d;" k="16" /> + <hkern u1="&#x143;" u2="V" k="21" /> + <hkern u1="&#x147;" u2="V" k="21" /> + <hkern u1="&#x14e;" u2="&#xc6;" k="13" /> + <hkern u1="&#x14e;" u2="x" k="13" /> + <hkern u1="&#x14e;" u2="X" k="49" /> + <hkern u1="&#x14e;" u2="V" k="24" /> + <hkern u1="&#x150;" u2="&#xc6;" k="13" /> + <hkern u1="&#x150;" u2="x" k="13" /> + <hkern u1="&#x150;" u2="X" k="49" /> + <hkern u1="&#x150;" u2="V" k="24" /> + <hkern u1="&#x14c;" u2="&#xc6;" k="13" /> + <hkern u1="&#x14c;" u2="x" k="13" /> + <hkern u1="&#x14c;" u2="X" k="49" /> + <hkern u1="&#x14c;" u2="V" k="24" /> + <hkern u1="&#x1fe;" u2="&#xc6;" k="13" /> + <hkern u1="&#x1fe;" u2="x" k="13" /> + <hkern u1="&#x1fe;" u2="X" k="49" /> + <hkern u1="&#x1fe;" u2="V" k="24" /> + <hkern u1="&#x154;" u2="V" k="31" /> + <hkern u1="&#x154;" u2="Q" k="21" /> + <hkern u1="&#x158;" u2="V" k="31" /> + <hkern u1="&#x158;" u2="Q" k="21" /> + <hkern u1="&#x156;" u2="V" k="31" /> + <hkern u1="&#x156;" u2="Q" k="21" /> + <hkern u1="&#x15a;" u2="x" k="6" /> + <hkern u1="&#x15a;" u2="v" k="9" /> + <hkern u1="&#x15a;" u2="V" k="10" /> + <hkern u1="&#x15e;" u2="x" k="6" /> + <hkern u1="&#x15e;" u2="v" k="9" /> + <hkern u1="&#x15e;" u2="V" k="10" /> + <hkern u1="&#x15c;" u2="x" k="6" /> + <hkern u1="&#x15c;" u2="v" k="9" /> + <hkern u1="&#x15c;" u2="V" k="10" /> + <hkern u1="&#x218;" u2="x" k="6" /> + <hkern u1="&#x218;" u2="v" k="9" /> + <hkern u1="&#x218;" u2="V" k="10" /> + <hkern u1="&#x166;" u2="&#xc6;" k="70" /> + <hkern u1="&#x166;" u2="x" k="16" /> + <hkern u1="&#x166;" u2="v" k="13" /> + <hkern u1="&#x166;" u2="q" k="65" /> + <hkern u1="&#x166;" u2="p" k="16" /> + <hkern u1="&#x166;" u2="m" k="16" /> + <hkern u1="&#x166;" u2="Q" k="30" /> + <hkern u1="&#x166;" u2="F" k="16" /> + <hkern u1="&#x166;" u2="&#x2f;" k="80" /> + <hkern u1="&#x166;" u2="&#x2d;" k="57" /> + <hkern u1="&#x164;" u2="&#xc6;" k="70" /> + <hkern u1="&#x164;" u2="x" k="16" /> + <hkern u1="&#x164;" u2="v" k="13" /> + <hkern u1="&#x164;" u2="q" k="65" /> + <hkern u1="&#x164;" u2="p" k="16" /> + <hkern u1="&#x164;" u2="m" k="16" /> + <hkern u1="&#x164;" u2="Q" k="30" /> + <hkern u1="&#x164;" u2="F" k="16" /> + <hkern u1="&#x164;" u2="&#x2f;" k="80" /> + <hkern u1="&#x164;" u2="&#x2d;" k="57" /> + <hkern u1="&#x162;" u2="&#xc6;" k="70" /> + <hkern u1="&#x162;" u2="x" k="16" /> + <hkern u1="&#x162;" u2="v" k="13" /> + <hkern u1="&#x162;" u2="q" k="65" /> + <hkern u1="&#x162;" u2="p" k="16" /> + <hkern u1="&#x162;" u2="m" k="16" /> + <hkern u1="&#x162;" u2="Q" k="30" /> + <hkern u1="&#x162;" u2="F" k="16" /> + <hkern u1="&#x162;" u2="&#x2f;" k="80" /> + <hkern u1="&#x162;" u2="&#x2d;" k="57" /> + <hkern u1="&#x16c;" u2="&#xc6;" k="20" /> + <hkern u1="&#x16c;" u2="X" k="16" /> + <hkern u1="&#x170;" u2="&#xc6;" k="20" /> + <hkern u1="&#x170;" u2="X" k="16" /> + <hkern u1="&#x16a;" u2="&#xc6;" k="20" /> + <hkern u1="&#x16a;" u2="X" k="16" /> + <hkern u1="&#x172;" u2="&#xc6;" k="20" /> + <hkern u1="&#x172;" u2="X" k="16" /> + <hkern u1="&#x16e;" u2="&#xc6;" k="20" /> + <hkern u1="&#x16e;" u2="X" k="16" /> + <hkern u1="&#x168;" u2="&#xc6;" k="20" /> + <hkern u1="&#x168;" u2="X" k="16" /> + <hkern u1="&#x1e82;" u2="&#xc6;" k="27" /> + <hkern u1="&#x1e82;" u2="&#xbf;" k="73" /> + <hkern u1="&#x1e82;" u2="x" k="29" /> + <hkern u1="&#x1e82;" u2="q" k="15" /> + <hkern u1="&#x1e82;" u2="Q" k="10" /> + <hkern u1="&#x174;" u2="&#xc6;" k="27" /> + <hkern u1="&#x174;" u2="&#xbf;" k="73" /> + <hkern u1="&#x174;" u2="x" k="29" /> + <hkern u1="&#x174;" u2="q" k="15" /> + <hkern u1="&#x174;" u2="Q" k="10" /> + <hkern u1="&#x1e84;" u2="&#xc6;" k="27" /> + <hkern u1="&#x1e84;" u2="&#xbf;" k="73" /> + <hkern u1="&#x1e84;" u2="x" k="29" /> + <hkern u1="&#x1e84;" u2="q" k="15" /> + <hkern u1="&#x1e84;" u2="Q" k="10" /> + <hkern u1="&#x1e80;" u2="&#xc6;" k="27" /> + <hkern u1="&#x1e80;" u2="&#xbf;" k="73" /> + <hkern u1="&#x1e80;" u2="x" k="29" /> + <hkern u1="&#x1e80;" u2="q" k="15" /> + <hkern u1="&#x1e80;" u2="Q" k="10" /> + <hkern u1="&#x176;" u2="&#xc6;" k="76" /> + <hkern u1="&#x176;" u2="&#xbf;" k="140" /> + <hkern u1="&#x176;" u2="&#xa1;" k="55" /> + <hkern u1="&#x176;" u2="x" k="41" /> + <hkern u1="&#x176;" u2="v" k="47" /> + <hkern u1="&#x176;" u2="q" k="93" /> + <hkern u1="&#x176;" u2="p" k="69" /> + <hkern u1="&#x176;" u2="m" k="48" /> + <hkern u1="&#x176;" u2="Q" k="45" /> + <hkern u1="&#x176;" u2="F" k="36" /> + <hkern u1="&#x176;" u2="&#x2f;" k="96" /> + <hkern u1="&#x176;" u2="&#x2d;" k="56" /> + <hkern u1="&#x1ef2;" u2="&#xc6;" k="76" /> + <hkern u1="&#x1ef2;" u2="&#xbf;" k="140" /> + <hkern u1="&#x1ef2;" u2="&#xa1;" k="55" /> + <hkern u1="&#x1ef2;" u2="x" k="41" /> + <hkern u1="&#x1ef2;" u2="v" k="47" /> + <hkern u1="&#x1ef2;" u2="q" k="93" /> + <hkern u1="&#x1ef2;" u2="p" k="69" /> + <hkern u1="&#x1ef2;" u2="m" k="48" /> + <hkern u1="&#x1ef2;" u2="Q" k="45" /> + <hkern u1="&#x1ef2;" u2="F" k="36" /> + <hkern u1="&#x1ef2;" u2="&#x2f;" k="96" /> + <hkern u1="&#x1ef2;" u2="&#x2d;" k="56" /> + <hkern u1="&#x179;" u2="v" k="13" /> + <hkern u1="&#x179;" u2="Q" k="20" /> + <hkern u1="&#x17b;" u2="v" k="13" /> + <hkern u1="&#x17b;" u2="Q" k="20" /> + <hkern u1="&#x103;" u2="v" k="23" /> + <hkern u1="&#x101;" u2="v" k="23" /> + <hkern u1="&#x105;" u2="v" k="23" /> + <hkern u1="&#x1fd;" g2="f_k" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_j" k="20" /> + <hkern u1="&#x1fd;" g2="f_j" k="20" /> + <hkern u1="&#x1fd;" g2="f_h" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_k" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_h" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_b" k="20" /> + <hkern u1="&#x1fd;" g2="f_b" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_l" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_i" k="20" /> + <hkern u1="&#x1fd;" g2="f_f" k="20" /> + <hkern u1="&#x1fd;" u2="x" k="23" /> + <hkern u1="&#x1fd;" u2="v" k="20" /> + <hkern u1="&#x115;" g2="f_k" k="20" /> + <hkern u1="&#x115;" g2="f_f_j" k="20" /> + <hkern u1="&#x115;" g2="f_j" k="20" /> + <hkern u1="&#x115;" g2="f_h" k="20" /> + <hkern u1="&#x115;" g2="f_f_k" k="20" /> + <hkern u1="&#x115;" g2="f_f_h" k="20" /> + <hkern u1="&#x115;" g2="f_f_b" k="20" /> + <hkern u1="&#x115;" g2="f_b" k="20" /> + <hkern u1="&#x115;" g2="f_f_l" k="20" /> + <hkern u1="&#x115;" g2="f_f_i" k="20" /> + <hkern u1="&#x115;" g2="f_f" k="20" /> + <hkern u1="&#x115;" u2="x" k="23" /> + <hkern u1="&#x115;" u2="v" k="20" /> + <hkern u1="&#x11b;" g2="f_k" k="20" /> + <hkern u1="&#x11b;" g2="f_f_j" k="20" /> + <hkern u1="&#x11b;" g2="f_j" k="20" /> + <hkern u1="&#x11b;" g2="f_h" k="20" /> + <hkern u1="&#x11b;" g2="f_f_k" k="20" /> + <hkern u1="&#x11b;" g2="f_f_h" k="20" /> + <hkern u1="&#x11b;" g2="f_f_b" k="20" /> + <hkern u1="&#x11b;" g2="f_b" k="20" /> + <hkern u1="&#x11b;" g2="f_f_l" k="20" /> + <hkern u1="&#x11b;" g2="f_f_i" k="20" /> + <hkern u1="&#x11b;" g2="f_f" k="20" /> + <hkern u1="&#x11b;" u2="x" k="23" /> + <hkern u1="&#x11b;" u2="v" k="20" /> + <hkern u1="&#x117;" g2="f_k" k="20" /> + <hkern u1="&#x117;" g2="f_f_j" k="20" /> + <hkern u1="&#x117;" g2="f_j" k="20" /> + <hkern u1="&#x117;" g2="f_h" k="20" /> + <hkern u1="&#x117;" g2="f_f_k" k="20" /> + <hkern u1="&#x117;" g2="f_f_h" k="20" /> + <hkern u1="&#x117;" g2="f_f_b" k="20" /> + <hkern u1="&#x117;" g2="f_b" k="20" /> + <hkern u1="&#x117;" g2="f_f_l" k="20" /> + <hkern u1="&#x117;" g2="f_f_i" k="20" /> + <hkern u1="&#x117;" g2="f_f" k="20" /> + <hkern u1="&#x117;" u2="x" k="23" /> + <hkern u1="&#x117;" u2="v" k="20" /> + <hkern u1="&#x113;" g2="f_k" k="20" /> + <hkern u1="&#x113;" g2="f_f_j" k="20" /> + <hkern u1="&#x113;" g2="f_j" k="20" /> + <hkern u1="&#x113;" g2="f_h" k="20" /> + <hkern u1="&#x113;" g2="f_f_k" k="20" /> + <hkern u1="&#x113;" g2="f_f_h" k="20" /> + <hkern u1="&#x113;" g2="f_f_b" k="20" /> + <hkern u1="&#x113;" g2="f_b" k="20" /> + <hkern u1="&#x113;" g2="f_f_l" k="20" /> + <hkern u1="&#x113;" g2="f_f_i" k="20" /> + <hkern u1="&#x113;" g2="f_f" k="20" /> + <hkern u1="&#x113;" u2="x" k="23" /> + <hkern u1="&#x113;" u2="v" k="20" /> + <hkern u1="&#x119;" g2="f_k" k="20" /> + <hkern u1="&#x119;" g2="f_f_j" k="20" /> + <hkern u1="&#x119;" g2="f_j" k="20" /> + <hkern u1="&#x119;" g2="f_h" k="20" /> + <hkern u1="&#x119;" g2="f_f_k" k="20" /> + <hkern u1="&#x119;" g2="f_f_h" k="20" /> + <hkern u1="&#x119;" g2="f_f_b" k="20" /> + <hkern u1="&#x119;" g2="f_b" k="20" /> + <hkern u1="&#x119;" g2="f_f_l" k="20" /> + <hkern u1="&#x119;" g2="f_f_i" k="20" /> + <hkern u1="&#x119;" g2="f_f" k="20" /> + <hkern u1="&#x119;" u2="x" k="23" /> + <hkern u1="&#x119;" u2="v" k="20" /> + <hkern u1="&#x127;" u2="v" k="20" /> + <hkern u1="&#x125;" u2="v" k="20" /> + <hkern u1="&#x137;" u2="q" k="36" /> + <hkern u1="&#x144;" u2="v" k="26" /> + <hkern u1="&#x148;" u2="v" k="26" /> + <hkern u1="&#x14f;" g2="f_k" k="20" /> + <hkern u1="&#x14f;" g2="f_f_j" k="20" /> + <hkern u1="&#x14f;" g2="f_j" k="20" /> + <hkern u1="&#x14f;" g2="f_h" k="20" /> + <hkern u1="&#x14f;" g2="f_f_k" k="20" /> + <hkern u1="&#x14f;" g2="f_f_h" k="20" /> + <hkern u1="&#x14f;" g2="f_f_b" k="20" /> + <hkern u1="&#x14f;" g2="f_b" k="20" /> + <hkern u1="&#x14f;" g2="f_f_l" k="20" /> + <hkern u1="&#x14f;" g2="f_f_i" k="20" /> + <hkern u1="&#x14f;" g2="f_f" k="20" /> + <hkern u1="&#x14f;" u2="x" k="38" /> + <hkern u1="&#x14f;" u2="v" k="20" /> + <hkern u1="&#x151;" g2="f_k" k="20" /> + <hkern u1="&#x151;" g2="f_f_j" k="20" /> + <hkern u1="&#x151;" g2="f_j" k="20" /> + <hkern u1="&#x151;" g2="f_h" k="20" /> + <hkern u1="&#x151;" g2="f_f_k" k="20" /> + <hkern u1="&#x151;" g2="f_f_h" k="20" /> + <hkern u1="&#x151;" g2="f_f_b" k="20" /> + <hkern u1="&#x151;" g2="f_b" k="20" /> + <hkern u1="&#x151;" g2="f_f_l" k="20" /> + <hkern u1="&#x151;" g2="f_f_i" k="20" /> + <hkern u1="&#x151;" g2="f_f" k="20" /> + <hkern u1="&#x151;" u2="x" k="38" /> + <hkern u1="&#x151;" u2="v" k="20" /> + <hkern u1="&#x14d;" g2="f_k" k="20" /> + <hkern u1="&#x14d;" g2="f_f_j" k="20" /> + <hkern u1="&#x14d;" g2="f_j" k="20" /> + <hkern u1="&#x14d;" g2="f_h" k="20" /> + <hkern u1="&#x14d;" g2="f_f_k" k="20" /> + <hkern u1="&#x14d;" g2="f_f_h" k="20" /> + <hkern u1="&#x14d;" g2="f_f_b" k="20" /> + <hkern u1="&#x14d;" g2="f_b" k="20" /> + <hkern u1="&#x14d;" g2="f_f_l" k="20" /> + <hkern u1="&#x14d;" g2="f_f_i" k="20" /> + <hkern u1="&#x14d;" g2="f_f" k="20" /> + <hkern u1="&#x14d;" u2="x" k="38" /> + <hkern u1="&#x14d;" u2="v" k="20" /> + <hkern u1="&#x1ff;" g2="f_k" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_j" k="20" /> + <hkern u1="&#x1ff;" g2="f_j" k="20" /> + <hkern u1="&#x1ff;" g2="f_h" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_k" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_h" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_b" k="20" /> + <hkern u1="&#x1ff;" g2="f_b" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_l" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_i" k="20" /> + <hkern u1="&#x1ff;" g2="f_f" k="20" /> + <hkern u1="&#x1ff;" u2="x" k="38" /> + <hkern u1="&#x1ff;" u2="v" k="20" /> + <hkern u1="&#x155;" u2="q" k="12" /> + <hkern u1="&#x159;" u2="q" k="12" /> + <hkern u1="&#x157;" u2="q" k="12" /> + <hkern u1="&#x15b;" u2="v" k="6" /> + <hkern u1="&#x15f;" u2="v" k="6" /> + <hkern u1="&#x15d;" u2="v" k="6" /> + <hkern u1="&#x219;" u2="v" k="6" /> + <hkern u1="&#x167;" u2="q" k="6" /> + <hkern u1="&#x165;" u2="q" k="6" /> + <hkern u1="&#x163;" u2="q" k="6" /> + <hkern u1="&#x177;" u2="&#x201e;" k="51" /> + <hkern u1="&#x177;" u2="&#x201a;" k="51" /> + <hkern u1="&#x177;" u2="q" k="20" /> + <hkern u1="&#x1ef3;" u2="&#x201e;" k="51" /> + <hkern u1="&#x1ef3;" u2="&#x201a;" k="51" /> + <hkern u1="&#x1ef3;" u2="q" k="20" /> + <hkern u1="&#x138;" u2="q" k="36" /> + <hkern u1="&#x149;" u2="v" k="26" /> + <hkern u1="&#x410;" u2="&#x2019;" k="40" /> + <hkern u1="&#x410;" u2="&#x45e;" k="25" /> + <hkern u1="&#x410;" u2="&#x451;" k="20" /> + <hkern u1="&#x410;" u2="&#x44a;" k="30" /> + <hkern u1="&#x410;" u2="&#x447;" k="51" /> + <hkern u1="&#x410;" u2="&#x443;" k="25" /> + <hkern u1="&#x410;" u2="&#x442;" k="51" /> + <hkern u1="&#x410;" u2="&#x43e;" k="20" /> + <hkern u1="&#x410;" u2="&#x435;" k="20" /> + <hkern u1="&#x410;" u2="&#x40f;" k="25" /> + <hkern u1="&#x410;" u2="&#x40b;" k="60" /> + <hkern u1="&#x410;" u2="&#x404;" k="25" /> + <hkern u1="&#x410;" u2="&#x402;" k="60" /> + <hkern u1="&#x410;" u2="&#x401;" k="25" /> + <hkern u1="&#x410;" u2="&#x427;" k="55" /> + <hkern u1="&#x410;" u2="&#x426;" k="20" /> + <hkern u1="&#x410;" u2="&#x424;" k="50" /> + <hkern u1="&#x410;" u2="&#x422;" k="55" /> + <hkern u1="&#x410;" u2="&#x421;" k="20" /> + <hkern u1="&#x410;" u2="&#x41e;" k="20" /> + <hkern u1="&#x410;" u2="&#x419;" k="20" /> + <hkern u1="&#x410;" u2="&#x418;" k="20" /> + <hkern u1="&#x410;" u2="&#x415;" k="25" /> + <hkern u1="&#x410;" u2="&#x201d;" k="40" /> + <hkern u1="&#x411;" u2="&#x44a;" k="20" /> + <hkern u1="&#x411;" u2="&#x41b;" k="20" /> + <hkern u1="&#x411;" u2="&#x416;" k="23" /> + <hkern u1="&#x411;" u2="&#x410;" k="20" /> + <hkern u1="&#x412;" u2="&#x425;" k="25" /> + <hkern u1="&#x412;" u2="&#x416;" k="25" /> + <hkern u1="&#x413;" u2="&#x2026;" k="130" /> + <hkern u1="&#x413;" u2="&#x2e;" k="130" /> + <hkern u1="&#x413;" u2="&#x2c;" k="130" /> + <hkern u1="&#x413;" u2="&#x45f;" k="65" /> + <hkern u1="&#x413;" u2="&#x45e;" k="65" /> + <hkern u1="&#x413;" u2="&#x45c;" k="65" /> + <hkern u1="&#x413;" u2="&#x45a;" k="65" /> + <hkern u1="&#x413;" u2="&#x459;" k="119" /> + <hkern u1="&#x413;" u2="&#x455;" k="74" /> + <hkern u1="&#x413;" u2="&#x454;" k="85" /> + <hkern u1="&#x413;" u2="&#x453;" k="65" /> + <hkern u1="&#x413;" u2="&#x451;" k="62" /> + <hkern u1="&#x413;" u2="&#x44f;" k="105" /> + <hkern u1="&#x413;" u2="&#x44e;" k="68" /> + <hkern u1="&#x413;" u2="&#x44d;" k="65" /> + <hkern u1="&#x413;" u2="&#x44c;" k="68" /> + <hkern u1="&#x413;" u2="&#x44b;" k="68" /> + <hkern u1="&#x413;" u2="&#x44a;" k="50" /> + <hkern u1="&#x413;" u2="&#x449;" k="79" /> + <hkern u1="&#x413;" u2="&#x448;" k="74" /> + <hkern u1="&#x413;" u2="&#x447;" k="74" /> + <hkern u1="&#x413;" u2="&#x446;" k="76" /> + <hkern u1="&#x413;" u2="&#x445;" k="71" /> + <hkern u1="&#x413;" u2="&#x444;" k="122" /> + <hkern u1="&#x413;" u2="&#x443;" k="65" /> + <hkern u1="&#x413;" u2="&#x442;" k="68" /> + <hkern u1="&#x413;" u2="&#x441;" k="91" /> + <hkern u1="&#x413;" u2="&#x440;" k="68" /> + <hkern u1="&#x413;" u2="&#x43f;" k="108" /> + <hkern u1="&#x413;" u2="&#x43e;" k="108" /> + <hkern u1="&#x413;" u2="&#x43d;" k="65" /> + <hkern u1="&#x413;" u2="&#x43c;" k="68" /> + <hkern u1="&#x413;" u2="&#x43b;" k="122" /> + <hkern u1="&#x413;" u2="&#x43a;" k="65" /> + <hkern u1="&#x413;" u2="&#x439;" k="65" /> + <hkern u1="&#x413;" u2="&#x438;" k="65" /> + <hkern u1="&#x413;" u2="&#x437;" k="45" /> + <hkern u1="&#x413;" u2="&#x436;" k="39" /> + <hkern u1="&#x413;" u2="&#x435;" k="93" /> + <hkern u1="&#x413;" u2="&#x434;" k="142" /> + <hkern u1="&#x413;" u2="&#x491;" k="68" /> + <hkern u1="&#x413;" u2="&#x433;" k="65" /> + <hkern u1="&#x413;" u2="&#x432;" k="62" /> + <hkern u1="&#x413;" u2="&#x431;" k="68" /> + <hkern u1="&#x413;" u2="&#x430;" k="59" /> + <hkern u1="&#x413;" u2="&#x409;" k="80" /> + <hkern u1="&#x413;" u2="&#x404;" k="34" /> + <hkern u1="&#x413;" u2="&#x403;" k="28" /> + <hkern u1="&#x413;" u2="&#x401;" k="35" /> + <hkern u1="&#x413;" u2="&#x42f;" k="34" /> + <hkern u1="&#x413;" u2="&#x427;" k="25" /> + <hkern u1="&#x413;" u2="&#x424;" k="57" /> + <hkern u1="&#x413;" u2="&#x421;" k="40" /> + <hkern u1="&#x413;" u2="&#x41f;" k="28" /> + <hkern u1="&#x413;" u2="&#x41e;" k="51" /> + <hkern u1="&#x413;" u2="&#x41b;" k="101" /> + <hkern u1="&#x413;" u2="&#x416;" k="25" /> + <hkern u1="&#x413;" u2="&#x415;" k="35" /> + <hkern u1="&#x413;" u2="&#x414;" k="138" /> + <hkern u1="&#x413;" u2="&#x410;" k="101" /> + <hkern u1="&#x413;" u2="&#x201e;" k="57" /> + <hkern u1="&#x413;" u2="&#x201a;" k="57" /> + <hkern u1="&#x490;" u2="&#x2026;" k="130" /> + <hkern u1="&#x490;" u2="&#x2e;" k="130" /> + <hkern u1="&#x490;" u2="&#x2c;" k="130" /> + <hkern u1="&#x490;" u2="&#x45f;" k="65" /> + <hkern u1="&#x490;" u2="&#x45e;" k="65" /> + <hkern u1="&#x490;" u2="&#x45c;" k="65" /> + <hkern u1="&#x490;" u2="&#x45a;" k="65" /> + <hkern u1="&#x490;" u2="&#x459;" k="119" /> + <hkern u1="&#x490;" u2="&#x455;" k="74" /> + <hkern u1="&#x490;" u2="&#x454;" k="85" /> + <hkern u1="&#x490;" u2="&#x453;" k="65" /> + <hkern u1="&#x490;" u2="&#x451;" k="62" /> + <hkern u1="&#x490;" u2="&#x44f;" k="105" /> + <hkern u1="&#x490;" u2="&#x44e;" k="68" /> + <hkern u1="&#x490;" u2="&#x44d;" k="65" /> + <hkern u1="&#x490;" u2="&#x44c;" k="68" /> + <hkern u1="&#x490;" u2="&#x44b;" k="68" /> + <hkern u1="&#x490;" u2="&#x44a;" k="50" /> + <hkern u1="&#x490;" u2="&#x449;" k="79" /> + <hkern u1="&#x490;" u2="&#x448;" k="74" /> + <hkern u1="&#x490;" u2="&#x447;" k="74" /> + <hkern u1="&#x490;" u2="&#x446;" k="76" /> + <hkern u1="&#x490;" u2="&#x445;" k="71" /> + <hkern u1="&#x490;" u2="&#x444;" k="122" /> + <hkern u1="&#x490;" u2="&#x443;" k="65" /> + <hkern u1="&#x490;" u2="&#x442;" k="68" /> + <hkern u1="&#x490;" u2="&#x441;" k="91" /> + <hkern u1="&#x490;" u2="&#x440;" k="68" /> + <hkern u1="&#x490;" u2="&#x43f;" k="108" /> + <hkern u1="&#x490;" u2="&#x43e;" k="108" /> + <hkern u1="&#x490;" u2="&#x43d;" k="65" /> + <hkern u1="&#x490;" u2="&#x43c;" k="68" /> + <hkern u1="&#x490;" u2="&#x43b;" k="122" /> + <hkern u1="&#x490;" u2="&#x43a;" k="65" /> + <hkern u1="&#x490;" u2="&#x439;" k="65" /> + <hkern u1="&#x490;" u2="&#x438;" k="65" /> + <hkern u1="&#x490;" u2="&#x437;" k="45" /> + <hkern u1="&#x490;" u2="&#x436;" k="39" /> + <hkern u1="&#x490;" u2="&#x435;" k="93" /> + <hkern u1="&#x490;" u2="&#x434;" k="142" /> + <hkern u1="&#x490;" u2="&#x491;" k="98" /> + <hkern u1="&#x490;" u2="&#x433;" k="65" /> + <hkern u1="&#x490;" u2="&#x432;" k="62" /> + <hkern u1="&#x490;" u2="&#x431;" k="68" /> + <hkern u1="&#x490;" u2="&#x430;" k="59" /> + <hkern u1="&#x490;" u2="&#x409;" k="80" /> + <hkern u1="&#x490;" u2="&#x404;" k="34" /> + <hkern u1="&#x490;" u2="&#x403;" k="28" /> + <hkern u1="&#x490;" u2="&#x401;" k="35" /> + <hkern u1="&#x490;" u2="&#x42f;" k="34" /> + <hkern u1="&#x490;" u2="&#x427;" k="25" /> + <hkern u1="&#x490;" u2="&#x424;" k="57" /> + <hkern u1="&#x490;" u2="&#x421;" k="40" /> + <hkern u1="&#x490;" u2="&#x41f;" k="28" /> + <hkern u1="&#x490;" u2="&#x41e;" k="51" /> + <hkern u1="&#x490;" u2="&#x41b;" k="101" /> + <hkern u1="&#x490;" u2="&#x416;" k="25" /> + <hkern u1="&#x490;" u2="&#x415;" k="35" /> + <hkern u1="&#x490;" u2="&#x414;" k="128" /> + <hkern u1="&#x490;" u2="&#x410;" k="101" /> + <hkern u1="&#x490;" u2="&#x201e;" k="57" /> + <hkern u1="&#x490;" u2="&#x201a;" k="57" /> + <hkern u1="&#x414;" u2="&#x45f;" k="20" /> + <hkern u1="&#x414;" u2="&#x45e;" k="30" /> + <hkern u1="&#x414;" u2="&#x45b;" k="30" /> + <hkern u1="&#x414;" u2="&#x458;" k="-25" /> + <hkern u1="&#x414;" u2="&#x454;" k="20" /> + <hkern u1="&#x414;" u2="&#x452;" k="30" /> + <hkern u1="&#x414;" u2="&#x451;" k="20" /> + <hkern u1="&#x414;" u2="&#x44a;" k="40" /> + <hkern u1="&#x414;" u2="&#x447;" k="74" /> + <hkern u1="&#x414;" u2="&#x446;" k="20" /> + <hkern u1="&#x414;" u2="&#x444;" k="20" /> + <hkern u1="&#x414;" u2="&#x443;" k="30" /> + <hkern u1="&#x414;" u2="&#x442;" k="80" /> + <hkern u1="&#x414;" u2="&#x441;" k="20" /> + <hkern u1="&#x414;" u2="&#x43e;" k="20" /> + <hkern u1="&#x414;" u2="&#x435;" k="20" /> + <hkern u1="&#x414;" u2="&#x40b;" k="85" /> + <hkern u1="&#x414;" u2="&#x408;" k="-37" /> + <hkern u1="&#x414;" u2="&#x404;" k="28" /> + <hkern u1="&#x414;" u2="&#x402;" k="85" /> + <hkern u1="&#x414;" u2="&#x401;" k="20" /> + <hkern u1="&#x414;" u2="&#x427;" k="94" /> + <hkern u1="&#x414;" u2="&#x424;" k="74" /> + <hkern u1="&#x414;" u2="&#x422;" k="85" /> + <hkern u1="&#x414;" u2="&#x421;" k="35" /> + <hkern u1="&#x414;" u2="&#x41e;" k="35" /> + <hkern u1="&#x414;" u2="&#x419;" k="20" /> + <hkern u1="&#x414;" u2="&#x418;" k="20" /> + <hkern u1="&#x414;" u2="&#x415;" k="36" /> + <hkern u1="&#x416;" u2="&#x45f;" k="35" /> + <hkern u1="&#x416;" u2="&#x45e;" k="35" /> + <hkern u1="&#x416;" u2="&#x454;" k="40" /> + <hkern u1="&#x416;" u2="&#x451;" k="37" /> + <hkern u1="&#x416;" u2="&#x44a;" k="30" /> + <hkern u1="&#x416;" u2="&#x447;" k="80" /> + <hkern u1="&#x416;" u2="&#x444;" k="37" /> + <hkern u1="&#x416;" u2="&#x443;" k="35" /> + <hkern u1="&#x416;" u2="&#x442;" k="60" /> + <hkern u1="&#x416;" u2="&#x441;" k="37" /> + <hkern u1="&#x416;" u2="&#x43e;" k="45" /> + <hkern u1="&#x416;" u2="&#x439;" k="35" /> + <hkern u1="&#x416;" u2="&#x438;" k="37" /> + <hkern u1="&#x416;" u2="&#x435;" k="49" /> + <hkern u1="&#x416;" u2="&#x404;" k="51" /> + <hkern u1="&#x416;" u2="&#x401;" k="37" /> + <hkern u1="&#x416;" u2="&#x427;" k="32" /> + <hkern u1="&#x416;" u2="&#x424;" k="72" /> + <hkern u1="&#x416;" u2="&#x421;" k="50" /> + <hkern u1="&#x416;" u2="&#x41e;" k="66" /> + <hkern u1="&#x416;" u2="&#x419;" k="20" /> + <hkern u1="&#x416;" u2="&#x418;" k="20" /> + <hkern u1="&#x416;" u2="&#x415;" k="37" /> + <hkern u1="&#x417;" u2="&#x425;" k="40" /> + <hkern u1="&#x417;" u2="&#x422;" k="31" /> + <hkern u1="&#x417;" u2="&#x41b;" k="37" /> + <hkern u1="&#x417;" u2="&#x416;" k="40" /> + <hkern u1="&#x417;" u2="&#x410;" k="37" /> + <hkern u1="&#x418;" u2="&#x41b;" k="20" /> + <hkern u1="&#x418;" u2="&#x416;" k="20" /> + <hkern u1="&#x418;" u2="&#x414;" k="20" /> + <hkern u1="&#x418;" u2="&#x410;" k="20" /> + <hkern u1="&#x419;" u2="&#x41b;" k="20" /> + <hkern u1="&#x419;" u2="&#x416;" k="20" /> + <hkern u1="&#x419;" u2="&#x414;" k="20" /> + <hkern u1="&#x419;" u2="&#x410;" k="20" /> + <hkern u1="&#x41a;" u2="&#x45f;" k="35" /> + <hkern u1="&#x41a;" u2="&#x45e;" k="35" /> + <hkern u1="&#x41a;" u2="&#x454;" k="40" /> + <hkern u1="&#x41a;" u2="&#x451;" k="37" /> + <hkern u1="&#x41a;" u2="&#x44a;" k="30" /> + <hkern u1="&#x41a;" u2="&#x447;" k="80" /> + <hkern u1="&#x41a;" u2="&#x444;" k="37" /> + <hkern u1="&#x41a;" u2="&#x443;" k="35" /> + <hkern u1="&#x41a;" u2="&#x442;" k="60" /> + <hkern u1="&#x41a;" u2="&#x441;" k="37" /> + <hkern u1="&#x41a;" u2="&#x43e;" k="45" /> + <hkern u1="&#x41a;" u2="&#x439;" k="35" /> + <hkern u1="&#x41a;" u2="&#x438;" k="37" /> + <hkern u1="&#x41a;" u2="&#x435;" k="49" /> + <hkern u1="&#x41a;" u2="&#x404;" k="51" /> + <hkern u1="&#x41a;" u2="&#x401;" k="37" /> + <hkern u1="&#x41a;" u2="&#x427;" k="32" /> + <hkern u1="&#x41a;" u2="&#x424;" k="72" /> + <hkern u1="&#x41a;" u2="&#x421;" k="50" /> + <hkern u1="&#x41a;" u2="&#x41e;" k="66" /> + <hkern u1="&#x41a;" u2="&#x419;" k="20" /> + <hkern u1="&#x41a;" u2="&#x418;" k="20" /> + <hkern u1="&#x41a;" u2="&#x415;" k="37" /> + <hkern u1="&#x41b;" u2="&#x2019;" k="40" /> + <hkern u1="&#x41b;" u2="&#x45e;" k="25" /> + <hkern u1="&#x41b;" u2="&#x451;" k="20" /> + <hkern u1="&#x41b;" u2="&#x447;" k="51" /> + <hkern u1="&#x41b;" u2="&#x443;" k="25" /> + <hkern u1="&#x41b;" u2="&#x442;" k="51" /> + <hkern u1="&#x41b;" u2="&#x43e;" k="20" /> + <hkern u1="&#x41b;" u2="&#x435;" k="20" /> + <hkern u1="&#x41b;" u2="&#x40f;" k="25" /> + <hkern u1="&#x41b;" u2="&#x40b;" k="60" /> + <hkern u1="&#x41b;" u2="&#x404;" k="25" /> + <hkern u1="&#x41b;" u2="&#x402;" k="60" /> + <hkern u1="&#x41b;" u2="&#x401;" k="25" /> + <hkern u1="&#x41b;" u2="&#x427;" k="55" /> + <hkern u1="&#x41b;" u2="&#x426;" k="20" /> + <hkern u1="&#x41b;" u2="&#x424;" k="50" /> + <hkern u1="&#x41b;" u2="&#x422;" k="75" /> + <hkern u1="&#x41b;" u2="&#x421;" k="20" /> + <hkern u1="&#x41b;" u2="&#x41e;" k="20" /> + <hkern u1="&#x41b;" u2="&#x419;" k="20" /> + <hkern u1="&#x41b;" u2="&#x418;" k="20" /> + <hkern u1="&#x41b;" u2="&#x415;" k="25" /> + <hkern u1="&#x41b;" u2="&#x201d;" k="40" /> + <hkern u1="&#x41e;" u2="&#x40e;" k="28" /> + <hkern u1="&#x41e;" u2="&#x40b;" k="22" /> + <hkern u1="&#x41e;" u2="&#x402;" k="22" /> + <hkern u1="&#x41e;" u2="&#x425;" k="34" /> + <hkern u1="&#x41e;" u2="&#x423;" k="28" /> + <hkern u1="&#x41e;" u2="&#x422;" k="31" /> + <hkern u1="&#x41e;" u2="&#x41b;" k="30" /> + <hkern u1="&#x41e;" u2="&#x416;" k="50" /> + <hkern u1="&#x41e;" u2="&#x414;" k="22" /> + <hkern u1="&#x41e;" u2="&#x410;" k="30" /> + <hkern u1="&#x420;" u2="&#x2026;" k="125" /> + <hkern u1="&#x420;" u2="&#x2e;" k="125" /> + <hkern u1="&#x420;" u2="&#x2c;" k="125" /> + <hkern u1="&#x420;" u2="&#x459;" k="68" /> + <hkern u1="&#x420;" u2="&#x44a;" k="-25" /> + <hkern u1="&#x420;" u2="&#x43b;" k="63" /> + <hkern u1="&#x420;" u2="&#x434;" k="80" /> + <hkern u1="&#x420;" u2="&#x40e;" k="17" /> + <hkern u1="&#x420;" u2="&#x409;" k="62" /> + <hkern u1="&#x420;" u2="&#x425;" k="31" /> + <hkern u1="&#x420;" u2="&#x423;" k="17" /> + <hkern u1="&#x420;" u2="&#x41b;" k="56" /> + <hkern u1="&#x420;" u2="&#x416;" k="48" /> + <hkern u1="&#x420;" u2="&#x414;" k="88" /> + <hkern u1="&#x420;" u2="&#x410;" k="56" /> + <hkern u1="&#x420;" u2="&#x201e;" k="84" /> + <hkern u1="&#x420;" u2="&#x201a;" k="84" /> + <hkern u1="&#x421;" u2="&#x454;" k="28" /> + <hkern u1="&#x421;" u2="&#x451;" k="22" /> + <hkern u1="&#x421;" u2="&#x447;" k="68" /> + <hkern u1="&#x421;" u2="&#x442;" k="42" /> + <hkern u1="&#x421;" u2="&#x441;" k="20" /> + <hkern u1="&#x421;" u2="&#x43e;" k="25" /> + <hkern u1="&#x421;" u2="&#x435;" k="22" /> + <hkern u1="&#x421;" u2="&#x404;" k="37" /> + <hkern u1="&#x421;" u2="&#x424;" k="54" /> + <hkern u1="&#x421;" u2="&#x421;" k="40" /> + <hkern u1="&#x421;" u2="&#x41e;" k="25" /> + <hkern u1="&#x422;" u2="&#x2026;" k="62" /> + <hkern u1="&#x422;" u2="&#x2e;" k="62" /> + <hkern u1="&#x422;" u2="&#x2c;" k="62" /> + <hkern u1="&#x422;" u2="&#x45f;" k="65" /> + <hkern u1="&#x422;" u2="&#x45e;" k="54" /> + <hkern u1="&#x422;" u2="&#x45c;" k="59" /> + <hkern u1="&#x422;" u2="&#x45a;" k="45" /> + <hkern u1="&#x422;" u2="&#x459;" k="108" /> + <hkern u1="&#x422;" u2="&#x455;" k="54" /> + <hkern u1="&#x422;" u2="&#x454;" k="68" /> + <hkern u1="&#x422;" u2="&#x453;" k="56" /> + <hkern u1="&#x422;" u2="&#x451;" k="54" /> + <hkern u1="&#x422;" u2="&#x44f;" k="73" /> + <hkern u1="&#x422;" u2="&#x44e;" k="70" /> + <hkern u1="&#x422;" u2="&#x44d;" k="45" /> + <hkern u1="&#x422;" u2="&#x44c;" k="54" /> + <hkern u1="&#x422;" u2="&#x44b;" k="56" /> + <hkern u1="&#x422;" u2="&#x449;" k="88" /> + <hkern u1="&#x422;" u2="&#x448;" k="88" /> + <hkern u1="&#x422;" u2="&#x447;" k="71" /> + <hkern u1="&#x422;" u2="&#x446;" k="71" /> + <hkern u1="&#x422;" u2="&#x445;" k="28" /> + <hkern u1="&#x422;" u2="&#x444;" k="82" /> + <hkern u1="&#x422;" u2="&#x443;" k="54" /> + <hkern u1="&#x422;" u2="&#x442;" k="51" /> + <hkern u1="&#x422;" u2="&#x441;" k="71" /> + <hkern u1="&#x422;" u2="&#x440;" k="71" /> + <hkern u1="&#x422;" u2="&#x43f;" k="79" /> + <hkern u1="&#x422;" u2="&#x43e;" k="85" /> + <hkern u1="&#x422;" u2="&#x43d;" k="65" /> + <hkern u1="&#x422;" u2="&#x43c;" k="68" /> + <hkern u1="&#x422;" u2="&#x43b;" k="96" /> + <hkern u1="&#x422;" u2="&#x43a;" k="42" /> + <hkern u1="&#x422;" u2="&#x439;" k="48" /> + <hkern u1="&#x422;" u2="&#x438;" k="48" /> + <hkern u1="&#x422;" u2="&#x435;" k="71" /> + <hkern u1="&#x422;" u2="&#x434;" k="108" /> + <hkern u1="&#x422;" u2="&#x491;" k="54" /> + <hkern u1="&#x422;" u2="&#x433;" k="65" /> + <hkern u1="&#x422;" u2="&#x432;" k="59" /> + <hkern u1="&#x422;" u2="&#x431;" k="42" /> + <hkern u1="&#x422;" u2="&#x430;" k="59" /> + <hkern u1="&#x422;" u2="&#x409;" k="68" /> + <hkern u1="&#x422;" u2="&#x404;" k="45" /> + <hkern u1="&#x422;" u2="&#x403;" k="20" /> + <hkern u1="&#x422;" u2="&#x401;" k="20" /> + <hkern u1="&#x422;" u2="&#x424;" k="42" /> + <hkern u1="&#x422;" u2="&#x421;" k="34" /> + <hkern u1="&#x422;" u2="&#x41f;" k="25" /> + <hkern u1="&#x422;" u2="&#x41e;" k="28" /> + <hkern u1="&#x422;" u2="&#x41b;" k="75" /> + <hkern u1="&#x422;" u2="&#x415;" k="22" /> + <hkern u1="&#x422;" u2="&#x414;" k="85" /> + <hkern u1="&#x422;" u2="&#x490;" k="28" /> + <hkern u1="&#x422;" u2="&#x413;" k="28" /> + <hkern u1="&#x422;" u2="&#x410;" k="75" /> + <hkern u1="&#x422;" u2="&#x201e;" k="62" /> + <hkern u1="&#x422;" u2="&#x201a;" k="62" /> + <hkern u1="&#x422;" u2="&#x2d;" k="86" /> + <hkern u1="&#x423;" u2="&#x2026;" k="65" /> + <hkern u1="&#x423;" u2="&#x2e;" k="65" /> + <hkern u1="&#x423;" u2="&#x2c;" k="55" /> + <hkern u1="&#x423;" u2="&#x45f;" k="30" /> + <hkern u1="&#x423;" u2="&#x45c;" k="30" /> + <hkern u1="&#x423;" u2="&#x45a;" k="30" /> + <hkern u1="&#x423;" u2="&#x459;" k="100" /> + <hkern u1="&#x423;" u2="&#x455;" k="30" /> + <hkern u1="&#x423;" u2="&#x454;" k="51" /> + <hkern u1="&#x423;" u2="&#x453;" k="40" /> + <hkern u1="&#x423;" u2="&#x451;" k="60" /> + <hkern u1="&#x423;" u2="&#x44f;" k="40" /> + <hkern u1="&#x423;" u2="&#x44e;" k="30" /> + <hkern u1="&#x423;" u2="&#x44d;" k="30" /> + <hkern u1="&#x423;" u2="&#x44c;" k="30" /> + <hkern u1="&#x423;" u2="&#x44b;" k="30" /> + <hkern u1="&#x423;" u2="&#x44a;" k="21" /> + <hkern u1="&#x423;" u2="&#x449;" k="30" /> + <hkern u1="&#x423;" u2="&#x448;" k="30" /> + <hkern u1="&#x423;" u2="&#x447;" k="30" /> + <hkern u1="&#x423;" u2="&#x446;" k="30" /> + <hkern u1="&#x423;" u2="&#x445;" k="30" /> + <hkern u1="&#x423;" u2="&#x444;" k="60" /> + <hkern u1="&#x423;" u2="&#x443;" k="10" /> + <hkern u1="&#x423;" u2="&#x442;" k="10" /> + <hkern u1="&#x423;" u2="&#x441;" k="60" /> + <hkern u1="&#x423;" u2="&#x440;" k="30" /> + <hkern u1="&#x423;" u2="&#x43f;" k="30" /> + <hkern u1="&#x423;" u2="&#x43e;" k="60" /> + <hkern u1="&#x423;" u2="&#x43d;" k="30" /> + <hkern u1="&#x423;" u2="&#x43c;" k="30" /> + <hkern u1="&#x423;" u2="&#x43b;" k="80" /> + <hkern u1="&#x423;" u2="&#x43a;" k="30" /> + <hkern u1="&#x423;" u2="&#x439;" k="30" /> + <hkern u1="&#x423;" u2="&#x438;" k="30" /> + <hkern u1="&#x423;" u2="&#x437;" k="30" /> + <hkern u1="&#x423;" u2="&#x436;" k="30" /> + <hkern u1="&#x423;" u2="&#x435;" k="60" /> + <hkern u1="&#x423;" u2="&#x434;" k="100" /> + <hkern u1="&#x423;" u2="&#x433;" k="30" /> + <hkern u1="&#x423;" u2="&#x432;" k="30" /> + <hkern u1="&#x423;" u2="&#x431;" k="30" /> + <hkern u1="&#x423;" u2="&#x430;" k="30" /> + <hkern u1="&#x423;" u2="&#x409;" k="85" /> + <hkern u1="&#x423;" u2="&#x405;" k="28" /> + <hkern u1="&#x423;" u2="&#x404;" k="45" /> + <hkern u1="&#x423;" u2="&#x403;" k="31" /> + <hkern u1="&#x423;" u2="&#x401;" k="34" /> + <hkern u1="&#x423;" u2="&#x42f;" k="31" /> + <hkern u1="&#x423;" u2="&#x424;" k="37" /> + <hkern u1="&#x423;" u2="&#x421;" k="40" /> + <hkern u1="&#x423;" u2="&#x41f;" k="29" /> + <hkern u1="&#x423;" u2="&#x41e;" k="40" /> + <hkern u1="&#x423;" u2="&#x41b;" k="65" /> + <hkern u1="&#x423;" u2="&#x415;" k="34" /> + <hkern u1="&#x423;" u2="&#x414;" k="100" /> + <hkern u1="&#x423;" u2="&#x490;" k="26" /> + <hkern u1="&#x423;" u2="&#x413;" k="26" /> + <hkern u1="&#x423;" u2="&#x410;" k="65" /> + <hkern u1="&#x423;" u2="&#x201e;" k="50" /> + <hkern u1="&#x423;" u2="&#x201a;" k="50" /> + <hkern u1="&#x424;" u2="&#x2026;" k="125" /> + <hkern u1="&#x424;" u2="&#x2e;" k="125" /> + <hkern u1="&#x424;" u2="&#x2c;" k="125" /> + <hkern u1="&#x424;" u2="&#x459;" k="51" /> + <hkern u1="&#x424;" u2="&#x43b;" k="60" /> + <hkern u1="&#x424;" u2="&#x434;" k="90" /> + <hkern u1="&#x424;" u2="&#x40e;" k="36" /> + <hkern u1="&#x424;" u2="&#x40b;" k="51" /> + <hkern u1="&#x424;" u2="&#x409;" k="48" /> + <hkern u1="&#x424;" u2="&#x402;" k="51" /> + <hkern u1="&#x424;" u2="&#x425;" k="57" /> + <hkern u1="&#x424;" u2="&#x423;" k="36" /> + <hkern u1="&#x424;" u2="&#x422;" k="42" /> + <hkern u1="&#x424;" u2="&#x41b;" k="50" /> + <hkern u1="&#x424;" u2="&#x416;" k="65" /> + <hkern u1="&#x424;" u2="&#x414;" k="99" /> + <hkern u1="&#x424;" u2="&#x410;" k="50" /> + <hkern u1="&#x424;" u2="&#x201e;" k="84" /> + <hkern u1="&#x424;" u2="&#x201a;" k="84" /> + <hkern u1="&#x425;" u2="&#x45e;" k="31" /> + <hkern u1="&#x425;" u2="&#x454;" k="20" /> + <hkern u1="&#x425;" u2="&#x44a;" k="50" /> + <hkern u1="&#x425;" u2="&#x447;" k="63" /> + <hkern u1="&#x425;" u2="&#x446;" k="31" /> + <hkern u1="&#x425;" u2="&#x444;" k="34" /> + <hkern u1="&#x425;" u2="&#x442;" k="34" /> + <hkern u1="&#x425;" u2="&#x441;" k="26" /> + <hkern u1="&#x425;" u2="&#x43e;" k="31" /> + <hkern u1="&#x425;" u2="&#x439;" k="31" /> + <hkern u1="&#x425;" u2="&#x438;" k="31" /> + <hkern u1="&#x425;" u2="&#x435;" k="37" /> + <hkern u1="&#x425;" u2="&#x40f;" k="26" /> + <hkern u1="&#x425;" u2="&#x404;" k="30" /> + <hkern u1="&#x425;" u2="&#x401;" k="31" /> + <hkern u1="&#x425;" u2="&#x429;" k="20" /> + <hkern u1="&#x425;" u2="&#x428;" k="20" /> + <hkern u1="&#x425;" u2="&#x427;" k="31" /> + <hkern u1="&#x425;" u2="&#x426;" k="20" /> + <hkern u1="&#x425;" u2="&#x424;" k="62" /> + <hkern u1="&#x425;" u2="&#x421;" k="40" /> + <hkern u1="&#x425;" u2="&#x41e;" k="54" /> + <hkern u1="&#x425;" u2="&#x419;" k="20" /> + <hkern u1="&#x425;" u2="&#x418;" k="20" /> + <hkern u1="&#x425;" u2="&#x415;" k="34" /> + <hkern u1="&#x425;" u2="&#x2d;" k="65" /> + <hkern u1="&#x426;" u2="&#x458;" k="-34" /> + <hkern u1="&#x426;" u2="&#x442;" k="48" /> + <hkern u1="&#x426;" u2="&#x40b;" k="45" /> + <hkern u1="&#x426;" u2="&#x408;" k="-37" /> + <hkern u1="&#x426;" u2="&#x402;" k="45" /> + <hkern u1="&#x426;" u2="&#x427;" k="51" /> + <hkern u1="&#x426;" u2="&#x424;" k="34" /> + <hkern u1="&#x426;" u2="&#x422;" k="31" /> + <hkern u1="&#x426;" u2="&#x419;" k="20" /> + <hkern u1="&#x426;" u2="&#x418;" k="20" /> + <hkern u1="&#x426;" u2="&#x415;" k="26" /> + <hkern u1="&#x429;" u2="&#x458;" k="-34" /> + <hkern u1="&#x429;" u2="&#x44a;" k="10" /> + <hkern u1="&#x429;" u2="&#x442;" k="48" /> + <hkern u1="&#x429;" u2="&#x40b;" k="45" /> + <hkern u1="&#x429;" u2="&#x408;" k="-37" /> + <hkern u1="&#x429;" u2="&#x402;" k="45" /> + <hkern u1="&#x429;" u2="&#x427;" k="51" /> + <hkern u1="&#x429;" u2="&#x424;" k="34" /> + <hkern u1="&#x429;" u2="&#x422;" k="31" /> + <hkern u1="&#x429;" u2="&#x419;" k="20" /> + <hkern u1="&#x429;" u2="&#x418;" k="20" /> + <hkern u1="&#x429;" u2="&#x415;" k="26" /> + <hkern u1="&#x42a;" u2="&#x44a;" k="10" /> + <hkern u1="&#x42a;" u2="&#x442;" k="40" /> + <hkern u1="&#x42a;" u2="&#x40b;" k="91" /> + <hkern u1="&#x42a;" u2="&#x402;" k="91" /> + <hkern u1="&#x42a;" u2="&#x427;" k="52" /> + <hkern u1="&#x42a;" u2="&#x425;" k="31" /> + <hkern u1="&#x42a;" u2="&#x424;" k="17" /> + <hkern u1="&#x42a;" u2="&#x422;" k="89" /> + <hkern u1="&#x42a;" u2="&#x41b;" k="20" /> + <hkern u1="&#x42a;" u2="&#x416;" k="20" /> + <hkern u1="&#x42a;" u2="&#x410;" k="20" /> + <hkern u1="&#x42c;" u2="&#x442;" k="40" /> + <hkern u1="&#x42c;" u2="&#x436;" k="17" /> + <hkern u1="&#x42c;" u2="&#x40b;" k="91" /> + <hkern u1="&#x42c;" u2="&#x402;" k="91" /> + <hkern u1="&#x42c;" u2="&#x427;" k="52" /> + <hkern u1="&#x42c;" u2="&#x425;" k="31" /> + <hkern u1="&#x42c;" u2="&#x424;" k="17" /> + <hkern u1="&#x42c;" u2="&#x422;" k="89" /> + <hkern u1="&#x42c;" u2="&#x41b;" k="20" /> + <hkern u1="&#x42c;" u2="&#x416;" k="20" /> + <hkern u1="&#x42c;" u2="&#x410;" k="20" /> + <hkern u1="&#x42d;" u2="&#x43b;" k="43" /> + <hkern u1="&#x42d;" u2="&#x434;" k="37" /> + <hkern u1="&#x42d;" u2="&#x40e;" k="26" /> + <hkern u1="&#x42d;" u2="&#x40b;" k="23" /> + <hkern u1="&#x42d;" u2="&#x402;" k="23" /> + <hkern u1="&#x42d;" u2="&#x427;" k="26" /> + <hkern u1="&#x42d;" u2="&#x425;" k="34" /> + <hkern u1="&#x42d;" u2="&#x423;" k="26" /> + <hkern u1="&#x42d;" u2="&#x422;" k="20" /> + <hkern u1="&#x42d;" u2="&#x41b;" k="20" /> + <hkern u1="&#x42d;" u2="&#x416;" k="52" /> + <hkern u1="&#x42d;" u2="&#x414;" k="26" /> + <hkern u1="&#x42d;" u2="&#x410;" k="20" /> + <hkern u1="&#x42e;" u2="&#x434;" k="32" /> + <hkern u1="&#x42e;" u2="&#x40e;" k="25" /> + <hkern u1="&#x42e;" u2="&#x40b;" k="23" /> + <hkern u1="&#x42e;" u2="&#x402;" k="23" /> + <hkern u1="&#x42e;" u2="&#x427;" k="23" /> + <hkern u1="&#x42e;" u2="&#x425;" k="37" /> + <hkern u1="&#x42e;" u2="&#x423;" k="25" /> + <hkern u1="&#x42e;" u2="&#x422;" k="22" /> + <hkern u1="&#x42e;" u2="&#x41b;" k="30" /> + <hkern u1="&#x42e;" u2="&#x416;" k="54" /> + <hkern u1="&#x42e;" u2="&#x414;" k="28" /> + <hkern u1="&#x42e;" u2="&#x410;" k="30" /> + <hkern u1="&#x402;" u2="&#x2026;" k="62" /> + <hkern u1="&#x402;" u2="&#x2e;" k="62" /> + <hkern u1="&#x402;" u2="&#x2c;" k="62" /> + <hkern u1="&#x402;" u2="&#x40b;" k="56" /> + <hkern u1="&#x402;" u2="&#x402;" k="56" /> + <hkern u1="&#x402;" u2="&#x427;" k="48" /> + <hkern u1="&#x402;" u2="&#x424;" k="51" /> + <hkern u1="&#x402;" u2="&#x422;" k="77" /> + <hkern u1="&#x402;" u2="&#x421;" k="10" /> + <hkern u1="&#x402;" u2="&#x201e;" k="62" /> + <hkern u1="&#x402;" u2="&#x201a;" k="62" /> + <hkern u1="&#x402;" u2="&#x2d;" k="86" /> + <hkern u1="&#x403;" u2="&#x2026;" k="130" /> + <hkern u1="&#x403;" u2="&#x2e;" k="130" /> + <hkern u1="&#x403;" u2="&#x2c;" k="130" /> + <hkern u1="&#x403;" u2="&#x45f;" k="65" /> + <hkern u1="&#x403;" u2="&#x45e;" k="65" /> + <hkern u1="&#x403;" u2="&#x45c;" k="65" /> + <hkern u1="&#x403;" u2="&#x45a;" k="65" /> + <hkern u1="&#x403;" u2="&#x459;" k="119" /> + <hkern u1="&#x403;" u2="&#x455;" k="74" /> + <hkern u1="&#x403;" u2="&#x454;" k="85" /> + <hkern u1="&#x403;" u2="&#x453;" k="65" /> + <hkern u1="&#x403;" u2="&#x451;" k="62" /> + <hkern u1="&#x403;" u2="&#x44f;" k="105" /> + <hkern u1="&#x403;" u2="&#x44e;" k="68" /> + <hkern u1="&#x403;" u2="&#x44d;" k="65" /> + <hkern u1="&#x403;" u2="&#x44c;" k="68" /> + <hkern u1="&#x403;" u2="&#x44b;" k="68" /> + <hkern u1="&#x403;" u2="&#x44a;" k="80" /> + <hkern u1="&#x403;" u2="&#x449;" k="79" /> + <hkern u1="&#x403;" u2="&#x448;" k="79" /> + <hkern u1="&#x403;" u2="&#x447;" k="74" /> + <hkern u1="&#x403;" u2="&#x446;" k="76" /> + <hkern u1="&#x403;" u2="&#x445;" k="71" /> + <hkern u1="&#x403;" u2="&#x444;" k="122" /> + <hkern u1="&#x403;" u2="&#x443;" k="65" /> + <hkern u1="&#x403;" u2="&#x442;" k="68" /> + <hkern u1="&#x403;" u2="&#x441;" k="91" /> + <hkern u1="&#x403;" u2="&#x440;" k="68" /> + <hkern u1="&#x403;" u2="&#x43f;" k="108" /> + <hkern u1="&#x403;" u2="&#x43e;" k="88" /> + <hkern u1="&#x403;" u2="&#x43d;" k="65" /> + <hkern u1="&#x403;" u2="&#x43c;" k="68" /> + <hkern u1="&#x403;" u2="&#x43b;" k="122" /> + <hkern u1="&#x403;" u2="&#x43a;" k="65" /> + <hkern u1="&#x403;" u2="&#x439;" k="65" /> + <hkern u1="&#x403;" u2="&#x438;" k="65" /> + <hkern u1="&#x403;" u2="&#x437;" k="45" /> + <hkern u1="&#x403;" u2="&#x436;" k="39" /> + <hkern u1="&#x403;" u2="&#x435;" k="93" /> + <hkern u1="&#x403;" u2="&#x434;" k="142" /> + <hkern u1="&#x403;" u2="&#x491;" k="68" /> + <hkern u1="&#x403;" u2="&#x433;" k="65" /> + <hkern u1="&#x403;" u2="&#x432;" k="62" /> + <hkern u1="&#x403;" u2="&#x431;" k="68" /> + <hkern u1="&#x403;" u2="&#x430;" k="59" /> + <hkern u1="&#x403;" u2="&#x409;" k="80" /> + <hkern u1="&#x403;" u2="&#x405;" k="30" /> + <hkern u1="&#x403;" u2="&#x404;" k="70" /> + <hkern u1="&#x403;" u2="&#x403;" k="28" /> + <hkern u1="&#x403;" u2="&#x401;" k="35" /> + <hkern u1="&#x403;" u2="&#x42f;" k="23" /> + <hkern u1="&#x403;" u2="&#x424;" k="57" /> + <hkern u1="&#x403;" u2="&#x421;" k="40" /> + <hkern u1="&#x403;" u2="&#x41f;" k="28" /> + <hkern u1="&#x403;" u2="&#x41e;" k="37" /> + <hkern u1="&#x403;" u2="&#x41b;" k="101" /> + <hkern u1="&#x403;" u2="&#x417;" k="40" /> + <hkern u1="&#x403;" u2="&#x415;" k="35" /> + <hkern u1="&#x403;" u2="&#x414;" k="139" /> + <hkern u1="&#x403;" u2="&#x412;" k="10" /> + <hkern u1="&#x403;" u2="&#x410;" k="101" /> + <hkern u1="&#x403;" u2="&#x201e;" k="57" /> + <hkern u1="&#x403;" u2="&#x201a;" k="57" /> + <hkern u1="&#x404;" u2="&#x424;" k="34" /> + <hkern u1="&#x409;" u2="&#x40e;" k="25" /> + <hkern u1="&#x409;" u2="&#x40b;" k="80" /> + <hkern u1="&#x409;" u2="&#x402;" k="80" /> + <hkern u1="&#x409;" u2="&#x42f;" k="25" /> + <hkern u1="&#x409;" u2="&#x427;" k="60" /> + <hkern u1="&#x409;" u2="&#x425;" k="29" /> + <hkern u1="&#x409;" u2="&#x424;" k="40" /> + <hkern u1="&#x409;" u2="&#x423;" k="25" /> + <hkern u1="&#x409;" u2="&#x422;" k="96" /> + <hkern u1="&#x409;" u2="&#x416;" k="40" /> + <hkern u1="&#x40a;" u2="&#x40e;" k="23" /> + <hkern u1="&#x40a;" u2="&#x40b;" k="101" /> + <hkern u1="&#x40a;" u2="&#x402;" k="91" /> + <hkern u1="&#x40a;" u2="&#x427;" k="48" /> + <hkern u1="&#x40a;" u2="&#x423;" k="23" /> + <hkern u1="&#x40a;" u2="&#x422;" k="74" /> + <hkern u1="&#x40a;" u2="&#x416;" k="40" /> + <hkern u1="&#x40b;" u2="&#x2026;" k="62" /> + <hkern u1="&#x40b;" u2="&#x2e;" k="62" /> + <hkern u1="&#x40b;" u2="&#x2c;" k="62" /> + <hkern u1="&#x40b;" u2="&#x40b;" k="56" /> + <hkern u1="&#x40b;" u2="&#x402;" k="56" /> + <hkern u1="&#x40b;" u2="&#x427;" k="65" /> + <hkern u1="&#x40b;" u2="&#x424;" k="51" /> + <hkern u1="&#x40b;" u2="&#x422;" k="77" /> + <hkern u1="&#x40b;" u2="&#x421;" k="10" /> + <hkern u1="&#x40b;" u2="&#x201e;" k="62" /> + <hkern u1="&#x40b;" u2="&#x201a;" k="62" /> + <hkern u1="&#x40b;" u2="&#x2d;" k="86" /> + <hkern u1="&#x40c;" u2="&#x45f;" k="35" /> + <hkern u1="&#x40c;" u2="&#x45e;" k="35" /> + <hkern u1="&#x40c;" u2="&#x454;" k="40" /> + <hkern u1="&#x40c;" u2="&#x451;" k="37" /> + <hkern u1="&#x40c;" u2="&#x447;" k="80" /> + <hkern u1="&#x40c;" u2="&#x444;" k="37" /> + <hkern u1="&#x40c;" u2="&#x443;" k="35" /> + <hkern u1="&#x40c;" u2="&#x442;" k="60" /> + <hkern u1="&#x40c;" u2="&#x441;" k="37" /> + <hkern u1="&#x40c;" u2="&#x43e;" k="45" /> + <hkern u1="&#x40c;" u2="&#x439;" k="35" /> + <hkern u1="&#x40c;" u2="&#x438;" k="37" /> + <hkern u1="&#x40c;" u2="&#x435;" k="49" /> + <hkern u1="&#x40c;" u2="&#x404;" k="51" /> + <hkern u1="&#x40c;" u2="&#x401;" k="37" /> + <hkern u1="&#x40c;" u2="&#x427;" k="32" /> + <hkern u1="&#x40c;" u2="&#x424;" k="72" /> + <hkern u1="&#x40c;" u2="&#x421;" k="50" /> + <hkern u1="&#x40c;" u2="&#x41e;" k="66" /> + <hkern u1="&#x40c;" u2="&#x419;" k="20" /> + <hkern u1="&#x40c;" u2="&#x418;" k="20" /> + <hkern u1="&#x40c;" u2="&#x415;" k="37" /> + <hkern u1="&#x40e;" u2="&#x2026;" k="65" /> + <hkern u1="&#x40e;" u2="&#x2e;" k="65" /> + <hkern u1="&#x40e;" u2="&#x2c;" k="55" /> + <hkern u1="&#x40e;" u2="&#x45f;" k="30" /> + <hkern u1="&#x40e;" u2="&#x45c;" k="30" /> + <hkern u1="&#x40e;" u2="&#x45a;" k="30" /> + <hkern u1="&#x40e;" u2="&#x459;" k="80" /> + <hkern u1="&#x40e;" u2="&#x455;" k="30" /> + <hkern u1="&#x40e;" u2="&#x454;" k="51" /> + <hkern u1="&#x40e;" u2="&#x453;" k="40" /> + <hkern u1="&#x40e;" u2="&#x451;" k="60" /> + <hkern u1="&#x40e;" u2="&#x44f;" k="40" /> + <hkern u1="&#x40e;" u2="&#x44e;" k="30" /> + <hkern u1="&#x40e;" u2="&#x44d;" k="30" /> + <hkern u1="&#x40e;" u2="&#x44c;" k="30" /> + <hkern u1="&#x40e;" u2="&#x44b;" k="30" /> + <hkern u1="&#x40e;" u2="&#x44a;" k="21" /> + <hkern u1="&#x40e;" u2="&#x449;" k="30" /> + <hkern u1="&#x40e;" u2="&#x448;" k="30" /> + <hkern u1="&#x40e;" u2="&#x447;" k="30" /> + <hkern u1="&#x40e;" u2="&#x446;" k="30" /> + <hkern u1="&#x40e;" u2="&#x445;" k="30" /> + <hkern u1="&#x40e;" u2="&#x444;" k="60" /> + <hkern u1="&#x40e;" u2="&#x443;" k="10" /> + <hkern u1="&#x40e;" u2="&#x442;" k="10" /> + <hkern u1="&#x40e;" u2="&#x441;" k="60" /> + <hkern u1="&#x40e;" u2="&#x440;" k="30" /> + <hkern u1="&#x40e;" u2="&#x43f;" k="30" /> + <hkern u1="&#x40e;" u2="&#x43e;" k="60" /> + <hkern u1="&#x40e;" u2="&#x43d;" k="30" /> + <hkern u1="&#x40e;" u2="&#x43c;" k="30" /> + <hkern u1="&#x40e;" u2="&#x43b;" k="80" /> + <hkern u1="&#x40e;" u2="&#x43a;" k="30" /> + <hkern u1="&#x40e;" u2="&#x439;" k="30" /> + <hkern u1="&#x40e;" u2="&#x438;" k="30" /> + <hkern u1="&#x40e;" u2="&#x437;" k="50" /> + <hkern u1="&#x40e;" u2="&#x436;" k="30" /> + <hkern u1="&#x40e;" u2="&#x435;" k="60" /> + <hkern u1="&#x40e;" u2="&#x434;" k="100" /> + <hkern u1="&#x40e;" u2="&#x433;" k="50" /> + <hkern u1="&#x40e;" u2="&#x432;" k="30" /> + <hkern u1="&#x40e;" u2="&#x431;" k="30" /> + <hkern u1="&#x40e;" u2="&#x430;" k="50" /> + <hkern u1="&#x40e;" u2="&#x409;" k="85" /> + <hkern u1="&#x40e;" u2="&#x405;" k="28" /> + <hkern u1="&#x40e;" u2="&#x404;" k="45" /> + <hkern u1="&#x40e;" u2="&#x403;" k="31" /> + <hkern u1="&#x40e;" u2="&#x401;" k="34" /> + <hkern u1="&#x40e;" u2="&#x42f;" k="31" /> + <hkern u1="&#x40e;" u2="&#x424;" k="37" /> + <hkern u1="&#x40e;" u2="&#x421;" k="40" /> + <hkern u1="&#x40e;" u2="&#x41f;" k="29" /> + <hkern u1="&#x40e;" u2="&#x41e;" k="40" /> + <hkern u1="&#x40e;" u2="&#x41b;" k="65" /> + <hkern u1="&#x40e;" u2="&#x415;" k="34" /> + <hkern u1="&#x40e;" u2="&#x414;" k="100" /> + <hkern u1="&#x40e;" u2="&#x490;" k="26" /> + <hkern u1="&#x40e;" u2="&#x413;" k="26" /> + <hkern u1="&#x40e;" u2="&#x410;" k="65" /> + <hkern u1="&#x40e;" u2="&#x201e;" k="50" /> + <hkern u1="&#x40e;" u2="&#x201a;" k="50" /> + <hkern u1="&#x430;" u2="&#x45e;" k="26" /> + <hkern u1="&#x430;" u2="&#x443;" k="26" /> + <hkern u1="&#x431;" u2="&#x45e;" k="34" /> + <hkern u1="&#x431;" u2="&#x447;" k="31" /> + <hkern u1="&#x431;" u2="&#x445;" k="30" /> + <hkern u1="&#x431;" u2="&#x443;" k="34" /> + <hkern u1="&#x431;" u2="&#x442;" k="37" /> + <hkern u1="&#x431;" u2="&#x43b;" k="23" /> + <hkern u1="&#x431;" u2="&#x436;" k="37" /> + <hkern u1="&#x431;" u2="&#x434;" k="18" /> + <hkern u1="&#x432;" u2="&#x436;" k="26" /> + <hkern u1="&#x433;" u2="&#x459;" k="57" /> + <hkern u1="&#x433;" u2="&#x44f;" k="23" /> + <hkern u1="&#x433;" u2="&#x44a;" k="-43" /> + <hkern u1="&#x433;" u2="&#x43b;" k="66" /> + <hkern u1="&#x433;" u2="&#x434;" k="68" /> + <hkern u1="&#x433;" u2="&#x41b;" k="34" /> + <hkern u1="&#x433;" u2="&#x410;" k="34" /> + <hkern u1="&#x491;" u2="&#x459;" k="57" /> + <hkern u1="&#x491;" u2="&#x44f;" k="23" /> + <hkern u1="&#x491;" u2="&#x44a;" k="-43" /> + <hkern u1="&#x491;" u2="&#x43b;" k="66" /> + <hkern u1="&#x491;" u2="&#x434;" k="68" /> + <hkern u1="&#x491;" u2="&#x41b;" k="34" /> + <hkern u1="&#x491;" u2="&#x410;" k="34" /> + <hkern u1="&#x434;" u2="&#x45e;" k="23" /> + <hkern u1="&#x434;" u2="&#x45b;" k="30" /> + <hkern u1="&#x434;" u2="&#x458;" k="-31" /> + <hkern u1="&#x434;" u2="&#x454;" k="20" /> + <hkern u1="&#x434;" u2="&#x452;" k="20" /> + <hkern u1="&#x434;" u2="&#x451;" k="26" /> + <hkern u1="&#x434;" u2="&#x44a;" k="20" /> + <hkern u1="&#x434;" u2="&#x447;" k="77" /> + <hkern u1="&#x434;" u2="&#x444;" k="32" /> + <hkern u1="&#x434;" u2="&#x443;" k="23" /> + <hkern u1="&#x434;" u2="&#x442;" k="76" /> + <hkern u1="&#x434;" u2="&#x441;" k="30" /> + <hkern u1="&#x434;" u2="&#x43e;" k="26" /> + <hkern u1="&#x434;" u2="&#x435;" k="23" /> + <hkern u1="&#x434;" u2="&#x431;" k="23" /> + <hkern u1="&#x435;" u2="&#x45e;" k="23" /> + <hkern u1="&#x435;" u2="&#x443;" k="23" /> + <hkern u1="&#x435;" u2="&#x442;" k="30" /> + <hkern u1="&#x435;" u2="&#x436;" k="43" /> + <hkern u1="&#x435;" u2="&#x434;" k="30" /> + <hkern u1="&#x436;" u2="&#x454;" k="46" /> + <hkern u1="&#x436;" u2="&#x451;" k="40" /> + <hkern u1="&#x436;" u2="&#x449;" k="32" /> + <hkern u1="&#x436;" u2="&#x448;" k="32" /> + <hkern u1="&#x436;" u2="&#x447;" k="49" /> + <hkern u1="&#x436;" u2="&#x446;" k="23" /> + <hkern u1="&#x436;" u2="&#x444;" k="43" /> + <hkern u1="&#x436;" u2="&#x441;" k="40" /> + <hkern u1="&#x436;" u2="&#x43e;" k="43" /> + <hkern u1="&#x436;" u2="&#x439;" k="20" /> + <hkern u1="&#x436;" u2="&#x438;" k="20" /> + <hkern u1="&#x436;" u2="&#x437;" k="30" /> + <hkern u1="&#x436;" u2="&#x435;" k="43" /> + <hkern u1="&#x437;" u2="&#x45e;" k="20" /> + <hkern u1="&#x437;" u2="&#x443;" k="20" /> + <hkern u1="&#x437;" u2="&#x436;" k="34" /> + <hkern u1="&#x437;" u2="&#x434;" k="10" /> + <hkern u1="&#x43a;" u2="&#x454;" k="46" /> + <hkern u1="&#x43a;" u2="&#x451;" k="40" /> + <hkern u1="&#x43a;" u2="&#x449;" k="32" /> + <hkern u1="&#x43a;" u2="&#x448;" k="32" /> + <hkern u1="&#x43a;" u2="&#x447;" k="49" /> + <hkern u1="&#x43a;" u2="&#x446;" k="23" /> + <hkern u1="&#x43a;" u2="&#x444;" k="43" /> + <hkern u1="&#x43a;" u2="&#x441;" k="40" /> + <hkern u1="&#x43a;" u2="&#x43e;" k="43" /> + <hkern u1="&#x43a;" u2="&#x439;" k="20" /> + <hkern u1="&#x43a;" u2="&#x438;" k="20" /> + <hkern u1="&#x43a;" u2="&#x435;" k="43" /> + <hkern u1="&#x43b;" u2="&#x45f;" k="26" /> + <hkern u1="&#x43b;" u2="&#x45e;" k="50" /> + <hkern u1="&#x43b;" u2="&#x455;" k="20" /> + <hkern u1="&#x43b;" u2="&#x454;" k="20" /> + <hkern u1="&#x43b;" u2="&#x451;" k="23" /> + <hkern u1="&#x43b;" u2="&#x44a;" k="17" /> + <hkern u1="&#x43b;" u2="&#x449;" k="23" /> + <hkern u1="&#x43b;" u2="&#x448;" k="23" /> + <hkern u1="&#x43b;" u2="&#x447;" k="71" /> + <hkern u1="&#x43b;" u2="&#x446;" k="31" /> + <hkern u1="&#x43b;" u2="&#x444;" k="23" /> + <hkern u1="&#x43b;" u2="&#x443;" k="50" /> + <hkern u1="&#x43b;" u2="&#x442;" k="74" /> + <hkern u1="&#x43b;" u2="&#x441;" k="26" /> + <hkern u1="&#x43b;" u2="&#x43e;" k="31" /> + <hkern u1="&#x43b;" u2="&#x439;" k="34" /> + <hkern u1="&#x43b;" u2="&#x438;" k="34" /> + <hkern u1="&#x43b;" u2="&#x435;" k="34" /> + <hkern u1="&#x43b;" u2="&#x431;" k="23" /> + <hkern u1="&#x43e;" u2="&#x45e;" k="28" /> + <hkern u1="&#x43e;" u2="&#x44a;" k="10" /> + <hkern u1="&#x43e;" u2="&#x445;" k="30" /> + <hkern u1="&#x43e;" u2="&#x443;" k="28" /> + <hkern u1="&#x43e;" u2="&#x442;" k="37" /> + <hkern u1="&#x43e;" u2="&#x43b;" k="25" /> + <hkern u1="&#x43e;" u2="&#x436;" k="40" /> + <hkern u1="&#x43f;" u2="&#x45e;" k="11" /> + <hkern u1="&#x43f;" u2="&#x443;" k="11" /> + <hkern u1="&#x440;" u2="&#x45e;" k="23" /> + <hkern u1="&#x440;" u2="&#x445;" k="30" /> + <hkern u1="&#x440;" u2="&#x443;" k="23" /> + <hkern u1="&#x440;" u2="&#x442;" k="34" /> + <hkern u1="&#x440;" u2="&#x436;" k="40" /> + <hkern u1="&#x441;" u2="&#x441;" k="15" /> + <hkern u1="&#x442;" u2="&#x459;" k="74" /> + <hkern u1="&#x442;" u2="&#x454;" k="26" /> + <hkern u1="&#x442;" u2="&#x453;" k="23" /> + <hkern u1="&#x442;" u2="&#x451;" k="37" /> + <hkern u1="&#x442;" u2="&#x44f;" k="31" /> + <hkern u1="&#x442;" u2="&#x44a;" k="-23" /> + <hkern u1="&#x442;" u2="&#x444;" k="34" /> + <hkern u1="&#x442;" u2="&#x441;" k="31" /> + <hkern u1="&#x442;" u2="&#x43e;" k="37" /> + <hkern u1="&#x442;" u2="&#x43b;" k="70" /> + <hkern u1="&#x442;" u2="&#x435;" k="34" /> + <hkern u1="&#x442;" u2="&#x434;" k="80" /> + <hkern u1="&#x442;" u2="&#x433;" k="29" /> + <hkern u1="&#x442;" u2="&#x430;" k="20" /> + <hkern u1="&#x443;" u2="&#x2026;" k="65" /> + <hkern u1="&#x443;" u2="&#x2e;" k="65" /> + <hkern u1="&#x443;" u2="&#x2c;" k="55" /> + <hkern u1="&#x443;" u2="&#x459;" k="60" /> + <hkern u1="&#x443;" u2="&#x454;" k="20" /> + <hkern u1="&#x443;" u2="&#x453;" k="20" /> + <hkern u1="&#x443;" u2="&#x451;" k="23" /> + <hkern u1="&#x443;" u2="&#x44f;" k="20" /> + <hkern u1="&#x443;" u2="&#x44a;" k="-20" /> + <hkern u1="&#x443;" u2="&#x444;" k="23" /> + <hkern u1="&#x443;" u2="&#x441;" k="23" /> + <hkern u1="&#x443;" u2="&#x43e;" k="23" /> + <hkern u1="&#x443;" u2="&#x43b;" k="54" /> + <hkern u1="&#x443;" u2="&#x435;" k="24" /> + <hkern u1="&#x443;" u2="&#x434;" k="46" /> + <hkern u1="&#x443;" u2="&#x201e;" k="50" /> + <hkern u1="&#x443;" u2="&#x201a;" k="50" /> + <hkern u1="&#x444;" u2="&#x45e;" k="20" /> + <hkern u1="&#x444;" u2="&#x44a;" k="20" /> + <hkern u1="&#x444;" u2="&#x445;" k="30" /> + <hkern u1="&#x444;" u2="&#x443;" k="20" /> + <hkern u1="&#x444;" u2="&#x442;" k="37" /> + <hkern u1="&#x444;" u2="&#x43b;" k="29" /> + <hkern u1="&#x444;" u2="&#x436;" k="40" /> + <hkern u1="&#x444;" u2="&#x434;" k="20" /> + <hkern u1="&#x445;" u2="&#x45f;" k="10" /> + <hkern u1="&#x445;" u2="&#x454;" k="31" /> + <hkern u1="&#x445;" u2="&#x451;" k="30" /> + <hkern u1="&#x445;" u2="&#x449;" k="20" /> + <hkern u1="&#x445;" u2="&#x448;" k="20" /> + <hkern u1="&#x445;" u2="&#x447;" k="30" /> + <hkern u1="&#x445;" u2="&#x446;" k="20" /> + <hkern u1="&#x445;" u2="&#x444;" k="30" /> + <hkern u1="&#x445;" u2="&#x441;" k="40" /> + <hkern u1="&#x445;" u2="&#x43e;" k="40" /> + <hkern u1="&#x445;" u2="&#x435;" k="40" /> + <hkern u1="&#x445;" u2="&#x431;" k="21" /> + <hkern u1="&#x446;" u2="&#x447;" k="29" /> + <hkern u1="&#x446;" u2="&#x442;" k="37" /> + <hkern u1="&#x449;" u2="&#x44a;" k="10" /> + <hkern u1="&#x449;" u2="&#x447;" k="32" /> + <hkern u1="&#x449;" u2="&#x442;" k="26" /> + <hkern u1="&#x44a;" u2="&#x45e;" k="40" /> + <hkern u1="&#x44a;" u2="&#x459;" k="20" /> + <hkern u1="&#x44a;" u2="&#x44a;" k="20" /> + <hkern u1="&#x44a;" u2="&#x447;" k="34" /> + <hkern u1="&#x44a;" u2="&#x445;" k="20" /> + <hkern u1="&#x44a;" u2="&#x443;" k="40" /> + <hkern u1="&#x44a;" u2="&#x442;" k="79" /> + <hkern u1="&#x44a;" u2="&#x43b;" k="26" /> + <hkern u1="&#x44a;" u2="&#x436;" k="40" /> + <hkern u1="&#x44c;" u2="&#x45e;" k="40" /> + <hkern u1="&#x44c;" u2="&#x459;" k="10" /> + <hkern u1="&#x44c;" u2="&#x452;" k="30" /> + <hkern u1="&#x44c;" u2="&#x44a;" k="20" /> + <hkern u1="&#x44c;" u2="&#x447;" k="34" /> + <hkern u1="&#x44c;" u2="&#x445;" k="20" /> + <hkern u1="&#x44c;" u2="&#x443;" k="40" /> + <hkern u1="&#x44c;" u2="&#x442;" k="79" /> + <hkern u1="&#x44c;" u2="&#x43b;" k="26" /> + <hkern u1="&#x44c;" u2="&#x436;" k="40" /> + <hkern u1="&#x44d;" u2="&#x45e;" k="20" /> + <hkern u1="&#x44d;" u2="&#x44d;" k="15" /> + <hkern u1="&#x44d;" u2="&#x447;" k="28" /> + <hkern u1="&#x44d;" u2="&#x445;" k="20" /> + <hkern u1="&#x44d;" u2="&#x443;" k="20" /> + <hkern u1="&#x44d;" u2="&#x442;" k="17" /> + <hkern u1="&#x44d;" u2="&#x43b;" k="20" /> + <hkern u1="&#x44d;" u2="&#x436;" k="50" /> + <hkern u1="&#x44d;" u2="&#x434;" k="23" /> + <hkern u1="&#x44e;" u2="&#x45e;" k="20" /> + <hkern u1="&#x44e;" u2="&#x44a;" k="10" /> + <hkern u1="&#x44e;" u2="&#x445;" k="30" /> + <hkern u1="&#x44e;" u2="&#x443;" k="20" /> + <hkern u1="&#x44e;" u2="&#x442;" k="23" /> + <hkern u1="&#x44e;" u2="&#x43b;" k="20" /> + <hkern u1="&#x44e;" u2="&#x436;" k="40" /> + <hkern u1="&#x44e;" u2="&#x434;" k="20" /> + <hkern u1="&#x451;" u2="&#x45e;" k="23" /> + <hkern u1="&#x451;" u2="&#x44a;" k="10" /> + <hkern u1="&#x451;" u2="&#x445;" k="20" /> + <hkern u1="&#x451;" u2="&#x443;" k="23" /> + <hkern u1="&#x451;" u2="&#x442;" k="31" /> + <hkern u1="&#x451;" u2="&#x436;" k="34" /> + <hkern u1="&#x452;" u2="&#x442;" k="25" /> + <hkern u1="&#x453;" u2="&#x43b;" k="52" /> + <hkern u1="&#x453;" u2="&#x434;" k="77" /> + <hkern u1="&#x454;" u2="&#x454;" k="15" /> + <hkern u1="&#x459;" u2="&#x45e;" k="40" /> + <hkern u1="&#x459;" u2="&#x459;" k="20" /> + <hkern u1="&#x459;" u2="&#x44a;" k="20" /> + <hkern u1="&#x459;" u2="&#x447;" k="34" /> + <hkern u1="&#x459;" u2="&#x445;" k="20" /> + <hkern u1="&#x459;" u2="&#x443;" k="40" /> + <hkern u1="&#x459;" u2="&#x442;" k="79" /> + <hkern u1="&#x459;" u2="&#x43b;" k="26" /> + <hkern u1="&#x459;" u2="&#x436;" k="40" /> + <hkern u1="&#x45a;" u2="&#x45e;" k="40" /> + <hkern u1="&#x45a;" u2="&#x45b;" k="20" /> + <hkern u1="&#x45a;" u2="&#x459;" k="20" /> + <hkern u1="&#x45a;" u2="&#x44a;" k="20" /> + <hkern u1="&#x45a;" u2="&#x447;" k="34" /> + <hkern u1="&#x45a;" u2="&#x445;" k="20" /> + <hkern u1="&#x45a;" u2="&#x443;" k="40" /> + <hkern u1="&#x45a;" u2="&#x442;" k="79" /> + <hkern u1="&#x45a;" u2="&#x43b;" k="26" /> + <hkern u1="&#x45a;" u2="&#x436;" k="40" /> + <hkern u1="&#x45b;" u2="&#x45e;" k="31" /> + <hkern u1="&#x45b;" u2="&#x443;" k="31" /> + <hkern u1="&#x45c;" u2="&#x454;" k="46" /> + <hkern u1="&#x45c;" u2="&#x451;" k="40" /> + <hkern u1="&#x45c;" u2="&#x449;" k="32" /> + <hkern u1="&#x45c;" u2="&#x448;" k="32" /> + <hkern u1="&#x45c;" u2="&#x447;" k="49" /> + <hkern u1="&#x45c;" u2="&#x446;" k="23" /> + <hkern u1="&#x45c;" u2="&#x444;" k="43" /> + <hkern u1="&#x45c;" u2="&#x441;" k="40" /> + <hkern u1="&#x45c;" u2="&#x43e;" k="43" /> + <hkern u1="&#x45c;" u2="&#x439;" k="20" /> + <hkern u1="&#x45c;" u2="&#x438;" k="20" /> + <hkern u1="&#x45c;" u2="&#x435;" k="43" /> + <hkern u1="&#x45e;" u2="&#x2026;" k="65" /> + <hkern u1="&#x45e;" u2="&#x2e;" k="65" /> + <hkern u1="&#x45e;" u2="&#x2c;" k="55" /> + <hkern u1="&#x45e;" u2="&#x459;" k="60" /> + <hkern u1="&#x45e;" u2="&#x454;" k="20" /> + <hkern u1="&#x45e;" u2="&#x453;" k="20" /> + <hkern u1="&#x45e;" u2="&#x451;" k="23" /> + <hkern u1="&#x45e;" u2="&#x44f;" k="20" /> + <hkern u1="&#x45e;" u2="&#x44a;" k="-20" /> + <hkern u1="&#x45e;" u2="&#x444;" k="23" /> + <hkern u1="&#x45e;" u2="&#x441;" k="23" /> + <hkern u1="&#x45e;" u2="&#x43e;" k="23" /> + <hkern u1="&#x45e;" u2="&#x43b;" k="54" /> + <hkern u1="&#x45e;" u2="&#x435;" k="24" /> + <hkern u1="&#x45e;" u2="&#x434;" k="46" /> + <hkern u1="&#x45e;" u2="&#x201e;" k="50" /> + <hkern u1="&#x45e;" u2="&#x201a;" k="50" /> + <hkern u1="&#x45f;" u2="&#x436;" k="31" /> + <hkern g1="f_f_k" u2="&#x1ff;" k="40" /> + <hkern g1="f_f_k" u2="&#x14d;" k="40" /> + <hkern g1="f_f_k" u2="&#x151;" k="40" /> + <hkern g1="f_f_k" u2="&#x14f;" k="40" /> + <hkern g1="f_f_k" u2="&#x119;" k="40" /> + <hkern g1="f_f_k" u2="&#x113;" k="40" /> + <hkern g1="f_f_k" u2="&#x117;" k="40" /> + <hkern g1="f_f_k" u2="&#x11b;" k="40" /> + <hkern g1="f_f_k" u2="&#x115;" k="40" /> + <hkern g1="f_f_k" u2="&#x111;" k="40" /> + <hkern g1="f_f_k" u2="&#x10f;" k="40" /> + <hkern g1="f_f_k" u2="&#x109;" k="40" /> + <hkern g1="f_f_k" u2="&#x10d;" k="40" /> + <hkern g1="f_f_k" u2="&#x107;" k="40" /> + <hkern g1="f_f_k" u2="&#xf5;" k="40" /> + <hkern g1="f_f_k" u2="&#xf2;" k="40" /> + <hkern g1="f_f_k" u2="&#xf6;" k="40" /> + <hkern g1="f_f_k" u2="&#xf4;" k="40" /> + <hkern g1="f_f_k" u2="&#xf3;" k="40" /> + <hkern g1="f_f_k" u2="&#xe8;" k="40" /> + <hkern g1="f_f_k" u2="&#xeb;" k="40" /> + <hkern g1="f_f_k" u2="&#xea;" k="40" /> + <hkern g1="f_f_k" u2="&#xe9;" k="40" /> + <hkern g1="f_f_k" u2="&#xe7;" k="40" /> + <hkern g1="f_f_k" u2="&#x153;" k="40" /> + <hkern g1="f_f_k" u2="&#xf8;" k="40" /> + <hkern g1="f_f_k" u2="o" k="40" /> + <hkern g1="f_f_k" u2="e" k="40" /> + <hkern g1="f_f_k" u2="d" k="40" /> + <hkern g1="f_f_k" u2="c" k="40" /> + <hkern g1="f_f_k" u2="&#x10b;" k="40" /> + <hkern g1="f_f_k" u2="q" k="40" /> + <hkern g1="f_k" u2="&#x1ff;" k="40" /> + <hkern g1="f_k" u2="&#x14d;" k="40" /> + <hkern g1="f_k" u2="&#x151;" k="40" /> + <hkern g1="f_k" u2="&#x14f;" k="40" /> + <hkern g1="f_k" u2="&#x119;" k="40" /> + <hkern g1="f_k" u2="&#x113;" k="40" /> + <hkern g1="f_k" u2="&#x117;" k="40" /> + <hkern g1="f_k" u2="&#x11b;" k="40" /> + <hkern g1="f_k" u2="&#x115;" k="40" /> + <hkern g1="f_k" u2="&#x111;" k="40" /> + <hkern g1="f_k" u2="&#x10f;" k="40" /> + <hkern g1="f_k" u2="&#x109;" k="40" /> + <hkern g1="f_k" u2="&#x10d;" k="40" /> + <hkern g1="f_k" u2="&#x107;" k="40" /> + <hkern g1="f_k" u2="&#xf5;" k="40" /> + <hkern g1="f_k" u2="&#xf2;" k="40" /> + <hkern g1="f_k" u2="&#xf6;" k="40" /> + <hkern g1="f_k" u2="&#xf4;" k="40" /> + <hkern g1="f_k" u2="&#xf3;" k="40" /> + <hkern g1="f_k" u2="&#xe8;" k="40" /> + <hkern g1="f_k" u2="&#xeb;" k="40" /> + <hkern g1="f_k" u2="&#xea;" k="40" /> + <hkern g1="f_k" u2="&#xe9;" k="40" /> + <hkern g1="f_k" u2="&#xe7;" k="40" /> + <hkern g1="f_k" u2="&#x153;" k="40" /> + <hkern g1="f_k" u2="&#xf8;" k="40" /> + <hkern g1="f_k" u2="o" k="40" /> + <hkern g1="f_k" u2="e" k="40" /> + <hkern g1="f_k" u2="d" k="40" /> + <hkern g1="f_k" u2="c" k="40" /> + <hkern g1="f_k" u2="&#x10b;" k="40" /> + <hkern g1="f_k" u2="q" k="40" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="29" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="16" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="21" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="9" /> + <hkern g1="D,Eth,Dcaron" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="15" /> + <hkern g1="D,Eth,Dcaron" + g2="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="6" /> + <hkern g1="D,Eth,Dcaron" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="47" /> + <hkern g1="D,Eth,Dcaron" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="16" /> + <hkern g1="D,Eth,Dcaron" + g2="Z,Zcaron,Zacute,Zdotaccent" + k="9" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="24" /> + <hkern g1="K,Kcommaaccent" + g2="quoteright,quotedblright" + k="7" /> + <hkern g1="K,Kcommaaccent" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="61" /> + <hkern g1="K,Kcommaaccent" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="42" /> + <hkern g1="K,Kcommaaccent" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="61" /> + <hkern g1="K,Kcommaaccent" + g2="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + k="13" /> + <hkern g1="K,Kcommaaccent" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="53" /> + <hkern g1="K,Kcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="6" /> + <hkern g1="K,Kcommaaccent" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + k="7" /> + <hkern g1="K,Kcommaaccent" + g2="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="12" /> + <hkern g1="K,Kcommaaccent" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="10" /> + <hkern g1="K,Kcommaaccent" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="50" /> + <hkern g1="K,Kcommaaccent" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="53" /> + <hkern g1="K,Kcommaaccent" + g2="a,ae,aogonek,aeacute" + k="28" /> + <hkern g1="K,Kcommaaccent" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="33" /> + <hkern g1="K,Kcommaaccent" + g2="d,dcaron,dcroat" + k="33" /> + <hkern g1="K,Kcommaaccent" + g2="e,eogonek" + k="50" /> + <hkern g1="K,Kcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="16" /> + <hkern g1="K,Kcommaaccent" + g2="o,oslash,oe" + k="38" /> + <hkern g1="K,Kcommaaccent" + g2="u,uogonek" + k="46" /> + <hkern g1="K,Kcommaaccent" + g2="endash,emdash" + k="16" /> + <hkern g1="K,Kcommaaccent" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="28" /> + <hkern g1="K,Kcommaaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="50" /> + <hkern g1="K,Kcommaaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="38" /> + <hkern g1="K,Kcommaaccent" + g2="uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uring,utilde" + k="46" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="13" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="16" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="27" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + k="22" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="30" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="82" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + k="34" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="30" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="96" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="23" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="63" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="e,eogonek" + k="9" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="o,oslash,oe" + k="10" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="endash,emdash" + k="16" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="9" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + k="7" /> + <hkern g1="N,Ntilde,Nacute,Ncaron" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="26" /> + <hkern g1="O,Oslash,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="30" /> + <hkern g1="O,Oslash,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + g2="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="10" /> + <hkern g1="O,Oslash,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="45" /> + <hkern g1="O,Oslash,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="18" /> + <hkern g1="O,Oslash,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + g2="Z,Zcaron,Zacute,Zdotaccent" + k="28" /> + <hkern g1="P,Thorn" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="11" /> + <hkern g1="P,Thorn" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="16" /> + <hkern g1="P,Thorn" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="54" /> + <hkern g1="P,Thorn" + g2="Z,Zcaron,Zacute,Zdotaccent" + k="26" /> + <hkern g1="P,Thorn" + g2="a,ae,aogonek,aeacute" + k="21" /> + <hkern g1="P,Thorn" + g2="e,eogonek" + k="7" /> + <hkern g1="P,Thorn" + g2="o,oslash,oe" + k="7" /> + <hkern g1="P,Thorn" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="21" /> + <hkern g1="P,Thorn" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="7" /> + <hkern g1="P,Thorn" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="7" /> + <hkern g1="P,Thorn" + g2="comma,quotesinglbase,quotedblbase" + k="105" /> + <hkern g1="P,Thorn" + g2="period,ellipsis" + k="110" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="24" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="23" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="28" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + k="23" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="21" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="32" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="39" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="20" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="6" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="e,eogonek" + k="23" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="6" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="o,oslash,oe" + k="30" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="23" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="30" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + k="8" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="10" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="16" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="t,tbar,tcaron,tcommaaccent" + k="23" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="21" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="9" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="8" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="27" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="23" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="25" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="30" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="13" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="27" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="70" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="a,ae,aogonek,aeacute" + k="60" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="43" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="d,dcaron,dcroat" + k="50" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="e,eogonek" + k="66" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="27" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="o,oslash,oe" + k="78" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="u,uogonek" + k="20" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="60" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="66" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="78" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uring,utilde" + k="20" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="comma,quotesinglbase,quotedblbase" + k="55" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="period,ellipsis" + k="55" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="n,eng" + k="16" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="r,racute,rcaron,rcommaaccent" + k="34" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="s,scaron,sacute,uni015F,scircumflex,uni0219" + k="58" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="z,zcaron,zacute,zdotaccent" + k="15" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="icircumflex,idieresis,igrave,ibreve,imacron,itilde" + k="-21" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="20" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="10" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="10" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="27" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="a,ae,aogonek,aeacute" + k="20" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="15" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="d,dcaron,dcroat" + k="15" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="e,eogonek" + k="15" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="15" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="o,oslash,oe" + k="15" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="20" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="15" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="15" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + k="10" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="s,scaron,sacute,uni015F,scircumflex,uni0219" + k="15" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="z,zcaron,zacute,zdotaccent" + k="15" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="50" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="35" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="50" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="45" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="44" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="41" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="76" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="a,ae,aogonek,aeacute" + k="90" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="93" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="d,dcaron,dcroat" + k="93" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="e,eogonek" + k="95" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="93" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="o,oslash,oe" + k="96" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="u,uogonek" + k="68" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="endash,emdash" + k="56" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="90" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="95" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="96" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uring,utilde" + k="68" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + k="9" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="comma,quotesinglbase,quotedblbase" + k="96" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="period,ellipsis" + k="96" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="n,eng" + k="48" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="r,racute,rcaron,rcommaaccent" + k="69" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="s,scaron,sacute,uni015F,scircumflex,uni0219" + k="68" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="z,zcaron,zacute,zdotaccent" + k="65" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="icircumflex,idieresis,igrave,ibreve,imacron,itilde" + k="-23" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="10" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="24" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="13" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="a,ae,aogonek,aeacute" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="27" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="e,eogonek" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="27" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="o,oslash,oe" + k="23" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="u,uogonek" + k="13" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="23" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uring,utilde" + k="13" /> + <hkern g1="a,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek" + g2="f,fi,fl" + k="18" /> + <hkern g1="a,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek" + g2="t,tbar,tcaron,tcommaaccent" + k="23" /> + <hkern g1="a,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="20" /> + <hkern g1="a,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="23" /> + <hkern g1="b,thorn" + g2="f,fi,fl" + k="13" /> + <hkern g1="b,thorn" + g2="t,tbar,tcaron,tcommaaccent" + k="13" /> + <hkern g1="b,thorn" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="20" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="16" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="e,eogonek" + k="21" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="o,oslash,oe" + k="33" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="21" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="33" /> + <hkern g1="comma,quotesinglbase,quotedblbase" + g2="quoteright,quotedblright" + k="75" /> + <hkern g1="comma,quotesinglbase,quotedblbase" + g2="quotesingle,quotedbl" + k="75" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="60" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="f,fi,fl" + k="13" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="t,tbar,tcaron,tcommaaccent" + k="13" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="20" /> + <hkern g1="h,hbar,hcircumflex" + g2="f,fi,fl" + k="13" /> + <hkern g1="h,hbar,hcircumflex" + g2="t,tbar,tcaron,tcommaaccent" + k="13" /> + <hkern g1="h,hbar,hcircumflex" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="18" /> + <hkern g1="h,hbar,hcircumflex" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="20" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="a,ae,aogonek,aeacute" + k="20" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="35" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="d,dcaron,dcroat" + k="40" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="e,eogonek" + k="40" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="36" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="o,oslash,oe" + k="36" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="u,uogonek" + k="25" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="20" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="40" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="36" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uring,utilde" + k="25" /> + <hkern g1="n,ntilde,nacute,ncaron,napostrophe" + g2="f,fi,fl" + k="18" /> + <hkern g1="n,ntilde,nacute,ncaron,napostrophe" + g2="t,tbar,tcaron,tcommaaccent" + k="13" /> + <hkern g1="n,ntilde,nacute,ncaron,napostrophe" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="16" /> + <hkern g1="n,ntilde,nacute,ncaron,napostrophe" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="23" /> + <hkern g1="o,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="f,fi,fl" + k="18" /> + <hkern g1="o,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="t,tbar,tcaron,tcommaaccent" + k="20" /> + <hkern g1="o,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="15" /> + <hkern g1="o,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="23" /> + <hkern g1="o,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="z,zcaron,zacute,zdotaccent" + k="16" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="36" /> + <hkern g1="period,ellipsis" + g2="quoteright,quotedblright" + k="75" /> + <hkern g1="period,ellipsis" + g2="quotesingle,quotedbl" + k="75" /> + <hkern g1="period,ellipsis" + g2="quoteleft,quotedblleft" + k="75" /> + <hkern g1="quotesingle,quotedbl" + g2="comma,quotesinglbase,quotedblbase" + k="75" /> + <hkern g1="quotesingle,quotedbl" + g2="period,ellipsis" + k="75" /> + <hkern g1="quoteleft,quotedblleft" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="50" /> + <hkern g1="quoteleft,quotedblleft" + g2="period,ellipsis" + k="75" /> + <hkern g1="quoteright,quotedblright" + g2="comma,quotesinglbase,quotedblbase" + k="75" /> + <hkern g1="quoteright,quotedblright" + g2="period,ellipsis" + k="75" /> + <hkern g1="quoteright,quotedblright" + g2="s,scaron,sacute,uni015F,scircumflex,uni0219" + k="56" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="a,ae,aogonek,aeacute" + k="23" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="14" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="d,dcaron,dcroat" + k="18" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="e,eogonek" + k="16" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="16" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="o,oslash,oe" + k="19" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="23" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="16" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="19" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="comma,quotesinglbase,quotedblbase" + k="30" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="period,ellipsis" + k="30" /> + <hkern g1="s,scaron,sacute,uni015F,scircumflex,uni0219" + g2="t,tbar,tcaron,tcommaaccent" + k="6" /> + <hkern g1="t,tbar,tcaron,tcommaaccent" + g2="o,oslash,oe" + k="10" /> + <hkern g1="t,tbar,tcaron,tcommaaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="10" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="a,ae,aogonek,aeacute" + k="10" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="10" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="e,eogonek" + k="20" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="o,oslash,oe" + k="15" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="10" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="20" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="15" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="comma,quotesinglbase,quotedblbase" + k="27" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="period,ellipsis" + k="40" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="a,ae,aogonek,aeacute" + k="24" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="27" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="d,dcaron,dcroat" + k="13" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="e,eogonek" + k="20" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="25" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="o,oslash,oe" + k="23" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="24" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="20" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="23" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="comma,quotesinglbase,quotedblbase" + k="55" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="period,ellipsis" + k="61" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="d,dcaron,dcroat" + k="6" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="e,eogonek" + k="23" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="o,oslash,oe" + k="16" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="23" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="16" /> + </font> +</defs></svg> diff --git a/site/css/font/65482afbeb61af43c403d0fec1fdb679.ttf b/site/css/font/65482afbeb61af43c403d0fec1fdb679.ttf new file mode 100644 index 0000000..65c6272 Binary files /dev/null and b/site/css/font/65482afbeb61af43c403d0fec1fdb679.ttf differ diff --git a/site/css/font/65482afbeb61af43c403d0fec1fdb679.woff b/site/css/font/65482afbeb61af43c403d0fec1fdb679.woff new file mode 100644 index 0000000..24a7003 Binary files /dev/null and b/site/css/font/65482afbeb61af43c403d0fec1fdb679.woff differ diff --git a/site/css/font/65482afbeb61af43c403d0fec1fdb679.woff2 b/site/css/font/65482afbeb61af43c403d0fec1fdb679.woff2 new file mode 100644 index 0000000..4573671 Binary files /dev/null and b/site/css/font/65482afbeb61af43c403d0fec1fdb679.woff2 differ diff --git a/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.eot b/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.eot new file mode 100644 index 0000000..8dd6c36 Binary files /dev/null and b/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.eot differ diff --git a/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.svg b/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.svg new file mode 100644 index 0000000..64c3dca --- /dev/null +++ b/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.svg @@ -0,0 +1,4463 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<svg> +<metadata> +Created by FontForge 20120731 at Fri Jul 20 11:53:00 2018 + By www +Copyright 2004 Monotype Imaging Inc. All Rights Reserved. Neo Sans is designed by Sebastian Lester. +</metadata> +<defs> +<font id="NeoSansProCyrW04-Black" horiz-adv-x="666" > + <font-face + font-family="NeoSansProCyrW04-Black" + font-weight="900" + font-stretch="normal" + units-per-em="1000" + panose-1="2 11 10 4 3 5 4 4 2 4" + ascent="800" + descent="-200" + x-height="582" + cap-height="743" + bbox="-130 -216 1587 1025" + underline-thickness="50" + underline-position="-125" + unicode-range="U+0020-FB04" + /> +<missing-glyph horiz-adv-x="500" +d="M12 665h475v-665h-475v665zM250 375l161 243h-323zM60 91l7 10t18 27t25.5 39t29.5 45q35 54 81 121l-161 242v-484zM278 333l162 -243v485zM250 290l-162 -242h323z" /> + <glyph glyph-name="uniFB00" unicode="ff" horiz-adv-x="798" +d="M765 460q0 -8 -6 -14t-14 -6h-76v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420h-174v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 56 12.5 91.5t36 55.5t56 27.5t72.5 7.5q21 0 45 -2.5 +t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5v-27h174v27q0 56 12.5 91.5t36 55.5t56 27.5t72.5 7.5q21 0 45 -2.5t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5v-27h76q8 0 14 -6 +t6 -14v-102v0z" /> + <glyph glyph-name="uniFB01" unicode="fi" horiz-adv-x="730" +d="M670 22q0 -8 -6.5 -15t-14.5 -7h-150q-8 0 -15 7t-7 15v418h-174v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 56 12.5 91.5t36 55.5t56 27.5t72.5 7.5q21 0 45 -2.5t44 -6.5q9 -2 15 -7t6 -13v-94 +q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5v-27h346q8 0 14.5 -6.5t6.5 -14.5v-539zM675 657q0 -8 -7 -14t-15 -6h-158q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h158q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="uniFB02" unicode="fl" horiz-adv-x="725" +d="M399 460q0 -8 -6 -14t-14 -6h-76v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 58 13.5 94t41 55.5t70.5 26t102 6.5q54 0 92 -5.5t69 -12.5h151q8 0 14 -6t6 -14v-731q0 -8 -6 -15t-14 -7h-151 +q-8 0 -15 7t-7 15v627h-115q-35 0 -47 -6t-12 -34v-27h76q8 0 14 -6t6 -14v-102v0z" /> + <glyph glyph-name="uniFB03" unicode="ffi" horiz-adv-x="1111" +d="M1051 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v418h-189v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420h-174v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 56 12.5 91.5t36 55.5t56 27.5 +t72.5 7.5q21 0 45 -2.5t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5v-27h174v27q0 56 12.5 91.5t36 55.5t56 27.5t72.5 7.5q21 0 45 -2.5t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5 +v-27h360q8 0 15 -6.5t7 -14.5v-539zM1056 657q0 -8 -7 -14t-15 -6h-158q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h158q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="uniFB04" unicode="ffl" horiz-adv-x="1091" +d="M303 440v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 56 12.5 91.5t36 55.5t56 27.5t72.5 7.5q21 0 45 -2.5t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5 +v-27h174v27q0 58 13.5 94t41 55.5t70.5 26t102 6.5q54 0 92 -5.5t69 -12.5h151q8 0 14 -6t6 -14v-731q0 -8 -6 -15t-14 -7h-151q-8 0 -15 7t-7 15v627h-115q-35 0 -47 -6t-12 -34v-27h76q8 0 14 -6t6 -14v-102q0 -8 -6 -14t-14 -6h-76v-420q0 -8 -6 -14t-14 -6h-152 +q-8 0 -14 6t-6 14v420h-174z" /> + <glyph glyph-name="f_b.liga" unicode="fb" horiz-adv-x="1038" +d="M808 330q0 44 -14.5 73t-56.5 29q-18 0 -35.5 -1t-32.5 -3v-274q14 -2 29.5 -3.5t38.5 -1.5q42 0 56.5 29t14.5 74v78zM670 584q16 2 35.5 4.5t31.5 2.5q66 0 115.5 -18.5t82.5 -52.5t49 -82t16 -108v-78q0 -127 -69.5 -194t-193.5 -67q-68 0 -126.5 8.5t-97.5 16.5 +q-23 5 -29.5 12t-6.5 20v601h-115q-35 0 -47 -6t-12 -34v-27h76q8 0 14 -6t6 -14v-102q0 -8 -6 -14t-14 -6h-76v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 58 13.5 94t41 55.5t70.5 26t102 6.5 +q54 0 92 -5.5t69 -12.5h151q8 0 14 -6t6 -14v-169z" /> + <glyph glyph-name="f_f_b.liga" unicode="ffb" horiz-adv-x="1404" +d="M1174 330q0 44 -14.5 73t-56.5 29q-18 0 -35.5 -1t-32.5 -3v-274q14 -2 29.5 -3.5t38.5 -1.5q42 0 56.5 29t14.5 74v78zM303 440v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 56 12.5 91.5t36 55.5 +t56 27.5t72.5 7.5q21 0 45 -2.5t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5v-27h174v27q0 58 13.5 94t41 55.5t70.5 26t102 6.5q54 0 92 -5.5t69 -12.5h150q8 0 14 -6t6 -14v-169l36 4.5t32 2.5q66 0 115.5 -18.5t82.5 -52.5 +t49 -82t16 -108v-78q0 -127 -69.5 -194t-193.5 -67q-68 0 -126.5 8.5t-97.5 16.5q-23 5 -29.5 12t-6.5 20v601h-115q-35 0 -47 -6t-12 -34v-27h76q8 0 14 -6t6 -14v-102q0 -8 -6 -14t-14 -6h-76v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420h-174z" /> + <glyph glyph-name="f_f_h.liga" unicode="ffh" horiz-adv-x="1421" +d="M1035 552q32 23 67 30.5t81 7.5q54 0 89.5 -17.5t56 -48.5t29 -72t8.5 -87v-345q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v345q0 40 -16 53t-47 13q-35 0 -76 -22v-387q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v627h-115q-35 0 -47 -6t-12 -34v-27h76 +q8 0 14 -6t6 -14v-102q0 -8 -6 -14t-14 -6h-76v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420h-174v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 56 12.5 91.5t36 55.5t56 27.5t72.5 7.5 +q21 0 45 -2.5t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5v-27h174v27q0 58 13.5 94t41 55.5t70.5 26t102 6.5q54 0 92 -5.5t69 -12.5h150q8 0 14 -4.5t6 -14.5v-202z" /> + <glyph glyph-name="f_f_k.liga" unicode="ffk" horiz-adv-x="1415" +d="M303 440v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 56 12.5 91.5t36 55.5t56 27.5t72.5 7.5q21 0 45 -2.5t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5 +v-27h174v27q0 58 13.5 94t41 55.5t70.5 26t102 6.5q54 0 92 -5.5t69 -12.5h150q8 0 14 -4.5t6 -14.5v-419l137 229q7 12 14 15t15 3h173q14 0 14 -12q0 -5 -3 -9l-173 -259l177 -280q2 -3 2 -8t-3.5 -9.5t-9.5 -4.5h-185q-19 0 -31 22l-127 228v-228q0 -8 -6 -15t-14 -7 +h-150q-8 0 -15 7t-7 15v627h-115q-35 0 -47 -6t-12 -34v-27h76q8 0 14 -6t6 -14v-102q0 -8 -6 -14t-14 -6h-76v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420h-174z" /> + <glyph glyph-name="f_h.liga" unicode="fh" horiz-adv-x="1055" +d="M669 552q32 23 67 30.5t81 7.5q54 0 89.5 -17.5t56 -48.5t29 -72t8.5 -87v-345q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v345q0 40 -16 53t-47 13q-35 0 -76 -22v-387q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v627h-115q-35 0 -47 -6t-12 -34v-27h76 +q8 0 14 -6t6 -14v-102q0 -8 -6 -14t-14 -6h-76v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 58 13.5 94t41 55.5t70.5 26t102 6.5q54 0 92 -5.5t69 -12.5h150q8 0 14 -6t6 -14v-201z" /> + <glyph glyph-name="f_j.liga" unicode="fj" horiz-adv-x="744" +d="M685 -21q0 -54 -12.5 -89.5t-34.5 -57t-53.5 -30t-68.5 -8.5q-23 0 -45.5 2t-48.5 7q-20 3 -20 21v93q0 8 6 14t15 6h43q18 0 22 11t4 31v461h-189v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27 +q0 56 12.5 91.5t36 55.5t56 27.5t72.5 7.5q21 0 45 -2.5t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5v-27h360q8 0 15 -6.5t7 -14.5v-582zM689 657q0 -8 -7 -14t-15 -6h-157q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h157q8 0 15 -6 +t7 -14v-98z" /> + <glyph glyph-name="f_f_j.liga" unicode="ffj" horiz-adv-x="1109" +d="M1050 -21q0 -54 -12.5 -89.5t-34.5 -57t-53.5 -30t-68.5 -8.5q-23 0 -45.5 2t-48.5 7q-20 3 -20 21v93q0 8 6 14t15 6h43q18 0 22 11t4 31v461h-189v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420h-173v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15 +q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 56 12.5 91.5t36 55.5t56 27.5t72.5 7.5q21 0 45 -2.5t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5v-27h173v27q0 56 12.5 91.5t36 55.5t56 27.5t72.5 7.5q21 0 45 -2.5 +t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5v-27h360q8 0 15 -6.5t7 -14.5v-582zM1054 657q0 -8 -7 -14t-15 -6h-157q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h157q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="f_k.liga" unicode="fk" horiz-adv-x="1049" +d="M669 335l137 229q7 12 14 15t15 3h173q14 0 14 -12q0 -5 -3 -9l-173 -259l177 -280q2 -3 2 -8t-3.5 -9.5t-9.5 -4.5h-185q-19 0 -31 22l-127 228v-228q0 -8 -6 -15t-14 -7h-150q-8 0 -15 7t-7 15v627h-115q-35 0 -47 -6t-12 -34v-27h76q8 0 14 -6t6 -14v-102q0 -8 -6 -14 +t-14 -6h-76v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 58 13.5 94t41 55.5t70.5 26t102 6.5q54 0 92 -5.5t69 -12.5h150q8 0 14 -4.5t6 -14.5v-419z" /> + <glyph glyph-name=".notdef" horiz-adv-x="500" +d="M12 665h475v-665h-475v665zM250 375l161 243h-323zM60 91l7 10t18 27t25.5 39t29.5 45q35 54 81 121l-161 242v-484zM278 333l162 -243v485zM250 290l-162 -242h323z" /> + <glyph glyph-name=".null" horiz-adv-x="0" + /> + <glyph glyph-name="nonmarkingreturn" horiz-adv-x="333" + /> + <glyph glyph-name="space" unicode=" " horiz-adv-x="252" + /> + <glyph glyph-name="exclam" unicode="!" horiz-adv-x="291" +d="M245 753l-25 -491q-1 -8 -6.5 -14.5t-13.5 -6.5h-106q-8 0 -14.5 6.5t-7.5 14.5l-25 491v1q0 8 7 13.5t15 5.5h156q8 0 14 -5.5t6 -13.5v-1zM239 20q0 -8 -6 -14t-14 -6h-146q-8 0 -14 6t-6 14v139q0 8 6 14t14 6h146q8 0 14 -6t6 -14v-139z" /> + <glyph glyph-name="quotedbl" unicode="&#x22;" horiz-adv-x="504" +d="M485 762q0 -2 -2 -8l-81 -230q-4 -10 -7.5 -14.5t-11.5 -4.5h-123q-9 0 -9 10v4.5t1 4.5l57 230q4 19 20 19h144q12 0 12 -11zM247 762q0 -2 -2 -8l-81 -230q-4 -10 -7.5 -14.5t-11.5 -4.5h-123q-9 0 -9 10v4.5t1 4.5l57 230q4 19 20 19h144q12 0 12 -11z" /> + <glyph glyph-name="numbersign" unicode="#" horiz-adv-x="715" +d="M666 545l-11 -89q-2 -13 -18 -13h-78l-14 -145h79q7 0 12.5 -4.5t5.5 -10.5v-2l-11 -86q-1 -6 -6 -10.5t-12 -4.5h-78l-14 -161q-1 -8 -5.5 -13.5t-12.5 -5.5h-125q-8 0 -12 5t-4 12v2l13 161h-96l-14 -161q-1 -8 -5.5 -13.5t-12.5 -5.5h-127q-7 0 -11.5 5t-4.5 12v2 +l14 161h-77q-16 0 -16 13v2l11 88q1 6 5.5 10.5t11.5 4.5h76l13 145h-77q-16 0 -16 13v2l11 89q2 14 18 14h74l14 163q1 8 6 13.5t13 5.5h127q7 0 11 -5t4 -12v-2l-15 -163h97l15 163q1 8 6 13.5t13 5.5h125q8 0 11.5 -5t3.5 -12v-2l-15 -163h81q7 0 12 -4t5 -10v-2z +M303 443l-14 -145h97l13 145h-96z" /> + <glyph glyph-name="dollar" unicode="$" +d="M598 220q0 -35 -10.5 -70t-34 -65t-60 -52.5t-88.5 -33.5v-97q0 -8 -6 -14t-14 -6h-129q-8 0 -14 6t-6 14v93q-36 3 -66.5 8.5t-56.5 13.5q-8 2 -14 7t-6 13v123q0 8 5.5 14t13.5 6h2q16 -2 41.5 -4.5t54 -5t57 -4t49.5 -1.5q37 0 50 13.5t13 37.5q0 15 -9.5 25.5 +t-37.5 27.5l-144 85q-35 21 -58 44t-36.5 48t-19 52t-5.5 56q0 34 8.5 64.5t28 55.5t51.5 43.5t79 27.5v88q0 8 6 14t14 6h129q8 0 14 -6t6 -14v-84q46 -4 88 -9.5t64 -11.5q8 -2 13.5 -7t5.5 -13v-124q0 -8 -5 -13.5t-13 -5.5h-2q-22 2 -50 4t-58.5 4t-61 3.5t-57.5 1.5 +t-38 -8.5t-11 -25.5q0 -13 10 -23.5t42 -27.5l134 -72q73 -39 102.5 -88.5t29.5 -112.5z" /> + <glyph glyph-name="percent" unicode="%" horiz-adv-x="867" +d="M831 170q0 -90 -39 -133t-113 -43t-113.5 43t-39.5 133v68q0 90 39.5 133t113.5 43t113 -43t39 -133v-68zM723 734q0 -3 -4 -11l-415 -701q-7 -11 -11.5 -16.5t-12.5 -5.5h-122q-13 0 -13 13q0 4 3 9l415 701q7 11 12.5 15.5t13.5 4.5h123q11 0 11 -9zM343 505 +q0 -90 -39.5 -133t-113.5 -43t-113.5 43t-39.5 133v68q0 90 39.5 132.5t113.5 42.5t113.5 -42.5t39.5 -132.5v-68zM716 238q0 24 -2.5 39.5t-7.5 23.5t-11.5 11t-15.5 3t-16 -3t-12 -11t-7.5 -23.5t-2.5 -39.5v-68q0 -24 2.5 -39.5t7.5 -23.5t12 -11t16 -3t15.5 3t11.5 11 +t7.5 23.5t2.5 39.5v68zM227 573q0 24 -2.5 39.5t-7.5 23.5t-11.5 11t-15.5 3t-16 -3t-12 -11t-7.5 -23.5t-2.5 -39.5v-68q0 -24 2.5 -39.5t7.5 -24t12 -11.5t16 -3q17 0 27 14.5t10 63.5v68z" /> + <glyph glyph-name="ampersand" unicode="&#x26;" horiz-adv-x="746" +d="M742 13q0 -13 -14 -13h-171q-6 0 -9.5 2t-8.5 7l-24 24q-37 -20 -82 -31t-99 -11q-64 0 -117 11t-91.5 35t-60 62.5t-21.5 93.5v6q0 37 9.5 65.5t26.5 52t41 42.5t53 37l-9 10q-26 28 -42 50t-25 40t-12.5 34.5t-3.5 33.5v8q0 37 13.5 69.5t43 57.5t76 39.5t113.5 14.5 +q61 0 106.5 -13.5t75.5 -37.5t44.5 -57t14.5 -73v-8q0 -34 -8.5 -59t-24 -45.5t-37 -37.5t-47.5 -35l-36 -25l104 -110q14 42 14 93v13q0 8 5.5 14t13.5 6h113q8 0 13.5 -6t5.5 -14v-13q0 -57 -14 -109t-42 -97l107 -113q6 -6 6 -13zM391 572q0 22 -15.5 36t-47.5 14 +q-36 0 -52 -14t-16 -36v-8q0 -20 7.5 -37.5t33.5 -43.5l7 -7l24 16q35 24 47 37.5t12 34.5v8zM282 280q-26 -17 -34 -37.5t-8 -43.5v-6q0 -31 23.5 -49.5t70.5 -18.5q45 0 80 15z" /> + <glyph glyph-name="quotesingle" unicode="'" horiz-adv-x="233" +d="M247 762q0 -2 -2 -8l-81 -230q-4 -10 -7.5 -14.5t-11.5 -4.5h-123q-9 0 -9 10v4.5t1 4.5l57 230q4 19 20 19h144q12 0 12 -11z" /> + <glyph glyph-name="parenleft" unicode="(" horiz-adv-x="389" +d="M354 -185q0 -10 -12 -10h-130q-11 0 -19.5 3t-14.5 11q-32 45 -56.5 92.5t-41 101.5t-25 116t-8.5 135v19q0 145 33.5 251t97.5 195q6 8 14.5 11t19.5 3h130q12 0 12 -10q0 -6 -5 -16q-21 -38 -40.5 -83.5t-34.5 -99.5t-24 -116.5t-9 -134.5v-19q0 -72 9 -134.5t24 -116 +t34.5 -99t40.5 -83.5q5 -10 5 -16z" /> + <glyph glyph-name="parenright" unicode=")" horiz-adv-x="389" +d="M343 264q0 -73 -8.5 -135t-25 -116t-41 -101.5t-56.5 -92.5q-6 -8 -14.5 -11t-19.5 -3h-130q-12 0 -12 10q0 6 5 16q21 38 40.5 83.5t34.5 99t24 116t9 134.5v19q0 72 -9 134.5t-24 116.5t-34.5 99.5t-40.5 83.5q-5 10 -5 16q0 10 12 10h130q11 0 19.5 -3t14.5 -11 +q64 -89 97.5 -195t33.5 -251v-19v0z" /> + <glyph glyph-name="asterisk" unicode="*" horiz-adv-x="485" +d="M456 561q0 -12 -16 -17l-111 -32l70 -94q6 -8 6 -15q0 -8 -7 -12l-63 -46q-5 -3 -10 -3q-9 0 -16 10l-66 97l-66 -97q-7 -10 -16 -10q-6 0 -10 3l-64 46q-7 4 -7 12q0 7 6 15l70 94l-110 32q-7 2 -12 6.5t-5 10.5q0 3 1 5l25 76q3 10 13 10q3 0 5.5 -0.5t5.5 -1.5 +l111 -37l-3 115v1q0 8 4 14t12 6h80q8 0 11.5 -6t3.5 -14v-1l-1 -115l109 37q3 1 5.5 1.5t5.5 0.5q10 0 13 -10l25 -76q1 -2 1 -5z" /> + <glyph glyph-name="plus" unicode="+" +d="M580 336q0 -8 -6 -12t-14 -4h-156v-155q0 -8 -4 -14t-12 -6h-110q-8 0 -12 6t-4 14v155h-155q-8 0 -14 4t-6 12v110q0 8 6 12t14 4h155v156q0 8 4 14t12 6h110q8 0 12 -6t4 -14v-156h156q8 0 14 -4t6 -12v-110v0z" /> + <glyph glyph-name="comma" unicode="," horiz-adv-x="291" +d="M265 165q0 -4 -1 -6l-104 -238q-4 -8 -9.5 -14t-13.5 -6h-104q-8 0 -13.5 4.5t-5.5 11.5q0 1 0.5 2t0.5 2l67 238q2 8 7.5 14t13.5 6h147q15 0 15 -14z" /> + <glyph glyph-name="hyphen" unicode="-" horiz-adv-x="282" +d="M258 250q0 -8 -6 -13.5t-14 -5.5h-193q-8 0 -14 5.5t-6 13.5v102q0 8 6 13.5t14 5.5h193q8 0 14 -5.5t6 -13.5v-102v0z" /> + <glyph glyph-name="period" unicode="." horiz-adv-x="291" +d="M239 20q0 -8 -6.5 -14t-14.5 -6h-145q-8 0 -14.5 6t-6.5 14v139q0 8 6.5 14t14.5 6h145q8 0 14.5 -6t6.5 -14v-139v0z" /> + <glyph glyph-name="slash" unicode="/" horiz-adv-x="425" +d="M413 727q0 -1 -0.5 -2t-0.5 -2l-205 -701q-2 -8 -7.5 -15t-13.5 -7h-153q-8 0 -15 5.5t-7 12.5q0 2 0.5 2.5t0.5 1.5l206 701q2 8 8 14t14 6h153q8 0 14 -4.5t6 -11.5z" /> + <glyph glyph-name="zero" unicode="0" +d="M611 323q0 -87 -18.5 -149.5t-54 -103t-87 -60t-118.5 -19.5q-134 0 -206 79.5t-72 252.5v97q0 173 72 253t206 80q133 0 205.5 -80t72.5 -253v-97zM407 420q0 51 -5.5 82.5t-15.5 49t-23.5 23.5t-29.5 6t-29.5 -6t-23.5 -23.5t-15.5 -49t-5.5 -82.5v-97q0 -51 5.5 -82.5 +t15.5 -49t23.5 -23.5t29.5 -6t29.5 6t23.5 23.5t15.5 49t5.5 82.5v97z" /> + <glyph glyph-name="one" unicode="1" +d="M232 171v370l-117 -42q-8 -3 -12 -3q-10 0 -10 12v142q0 12 12 17l172 72q9 4 23 4h115q19 0 19 -19v-553h119q8 0 14 -6t6 -14v-131q0 -8 -6 -14t-14 -6h-441q-8 0 -14 6t-6 14v131q0 8 6 14t14 6h120z" /> + <glyph glyph-name="two" unicode="2" +d="M592 555q0 -59 -27 -104.5t-78 -78.5l-81 -54q-29 -19 -55.5 -36t-47 -34t-32.5 -35t-12 -39v-3h302q8 0 14 -6t6 -14v-131q0 -8 -6 -14t-14 -6h-466q-8 0 -14 6t-6 14v106q0 83 33 145t86 101l86 64q40 30 62.5 47t33.5 27.5t13.5 18t2.5 18.5q0 12 -3.5 20.5t-14 14 +t-28.5 8t-48 2.5q-48 0 -98 -4t-97 -8h-2q-8 0 -13 6t-5 14v97q0 8 5.5 12t13.5 7q45 16 103.5 26.5t121.5 10.5q72 0 122.5 -12.5t82 -37t46 -62t14.5 -86.5z" /> + <glyph glyph-name="three" unicode="3" +d="M590 216q0 -59 -19 -101t-54.5 -70t-86 -41t-113.5 -13q-31 0 -62.5 3t-61 7.5t-54.5 10.5t-43 13q-8 3 -14 7.5t-6 12.5v98q0 8 5 13.5t13 5.5h2q23 -2 50 -3.5t54.5 -3t54 -2.5t49.5 -1q46 0 65.5 17t19.5 47v16q0 14 -3 27t-11 22.5t-23.5 15.5t-40.5 6h-166 +q-8 0 -14 6t-6 14v107q0 8 6 13.5t14 5.5h166q24 0 39 6.5t23.5 17t12 24t3.5 26.5v16q0 30 -19.5 41t-57.5 11q-52 0 -107 -3.5t-104 -7.5h-2q-8 0 -13.5 5.5t-5.5 13.5v98q0 8 6.5 12.5t14.5 7.5q18 7 41.5 13.5t51 11.5t57.5 8t61 3q63 0 114 -10.5t87 -34t55.5 -62 +t19.5 -94.5v-14q0 -42 -22 -86t-69 -73q42 -22 67.5 -59t25.5 -88v-16v0z" /> + <glyph glyph-name="four" unicode="4" +d="M623 175q0 -8 -6 -14t-14 -6h-58v-135q0 -8 -6 -14t-14 -6h-164q-8 0 -13.5 6t-5.5 14v135h-279q-8 0 -14 6t-6 14v113q0 16 11 30l324 416q5 6 10.5 7.5t13.5 1.5h123q8 0 14 -6t6 -14v-414h58q8 0 14 -6t6 -14v-114zM350 499q0 4 -2 4q-1 0 -3 -2l-138 -183 +q-3 -5 -3 -6q0 -3 5 -3h141v190z" /> + <glyph glyph-name="five" unicode="5" +d="M587 238q0 -62 -20 -108.5t-56.5 -77.5t-89 -46t-118.5 -15q-52 0 -104.5 8.5t-97.5 24.5q-8 3 -14.5 7t-6.5 14v99q0 8 5.5 13.5t13.5 5.5h2q18 -2 42.5 -4t49 -3.5t45 -2.5t30.5 -1q36 0 58 5t34 15.5t16 26.5t4 39v10q0 37 -22 53t-84 16h-175q-17 0 -17 16v2l31 389 +q1 8 6.5 13.5t13.5 5.5h414q8 0 14 -5.5t6 -13.5v-124q0 -8 -6 -13.5t-14 -5.5h-272l-10 -110h41q146 0 213.5 -55.5t67.5 -167.5v-10v0z" /> + <glyph glyph-name="six" unicode="6" +d="M606 248q0 -59 -17 -106t-51 -81t-85 -52t-118 -18q-131 0 -202.5 71t-71.5 208v206q0 75 21.5 127.5t59.5 86t88.5 48.5t109.5 15q70 0 121.5 -8t87.5 -18q14 -4 18 -9.5t4 -14.5v-105q0 -21 -18 -21h-5q-18 3 -39.5 5.5t-45.5 4.5t-48 3t-46 1q-33 0 -54.5 -5 +t-33.5 -18t-16.5 -35.5t-4.5 -56.5v-6q7 1 20 3t27.5 3.5t29 2.5t25.5 1q61 0 107 -11t76.5 -36.5t45.5 -68t15 -105.5v-11zM407 259q0 26 -5 42t-14.5 25t-24 12t-33.5 3q-18 0 -37.5 -2t-32.5 -4v-65q0 -39 4 -63.5t13 -38t23 -18.5t35 -5q16 0 29 4t22.5 15.5t15 31.5 +t5.5 52v11z" /> + <glyph glyph-name="seven" unicode="7" +d="M582 625q0 -12 -4.5 -23t-9.5 -22l-256 -560q-4 -9 -9 -14.5t-14 -5.5h-178q-10 0 -12.5 7t1.5 15l257 544q5 9 2.5 12t-10.5 3h-244q-8 0 -14.5 5.5t-6.5 13.5v124q0 8 6.5 13.5t14.5 5.5h450q11 0 19 -7.5t8 -18.5v-92v0z" /> + <glyph glyph-name="eight" unicode="8" +d="M613 212q0 -50 -17.5 -90.5t-52 -69.5t-86 -45t-118.5 -16h-12q-67 0 -118.5 16t-86 45t-52 69.5t-17.5 90.5v16q0 49 21.5 89t58.5 68q-35 25 -55.5 59.5t-20.5 84.5v18q0 99 67 152.5t203 53.5h12q135 0 202.5 -53.5t67.5 -152.5v-18q0 -50 -20.5 -84.5t-55.5 -59.5 +q37 -28 58.5 -68t21.5 -89v-16zM417 529q0 29 -17 52.5t-61 23.5h-12q-44 0 -61 -23t-17 -53v-6q0 -33 19 -52t54 -19h22q35 0 54 19t19 52v6zM417 232q0 33 -17 57.5t-56 24.5h-22q-39 0 -56 -24t-17 -58v-11q0 -36 20 -59t58 -23h12q38 0 58 23t20 59v11z" /> + <glyph glyph-name="nine" unicode="9" +d="M606 268q0 -75 -21.5 -127.5t-59.5 -86t-89 -48.5t-109 -15q-70 0 -121.5 8t-87.5 18q-14 4 -18 9.5t-4 14.5v105q0 14 5 18.5t18 2.5q37 -5 85.5 -9.5t93.5 -4.5q33 0 54.5 5t33.5 18t16.5 35t4.5 57v6q-7 -2 -20 -3.5t-27.5 -3t-29 -2.5t-25.5 -1q-62 0 -107.5 11 +t-76 36.5t-45.5 68t-15 105.5v11q0 58 17 105.5t51 81.5t85 52t118 18q131 0 202.5 -71t71.5 -208v-206zM407 474q0 39 -4 63.5t-13 38t-23 18.5t-35 5q-16 0 -29 -4t-22.5 -15.5t-15 -31.5t-5.5 -52v-11q0 -26 5 -42t14.5 -25t24 -12t33.5 -3q18 0 37.5 2t32.5 4v65z" /> + <glyph glyph-name="colon" unicode=":" horiz-adv-x="291" +d="M239 391q0 -8 -6.5 -14t-14.5 -6h-145q-8 0 -14.5 6t-6.5 14v139q0 8 6.5 14t14.5 6h145q8 0 14.5 -6t6.5 -14v-139zM239 20q0 -8 -6.5 -14t-14.5 -6h-145q-8 0 -14.5 6t-6.5 14v139q0 8 6.5 14t14.5 6h145q8 0 14.5 -6t6.5 -14v-139z" /> + <glyph glyph-name="semicolon" unicode=";" horiz-adv-x="291" +d="M239 391q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v139q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-139zM223 178q8 0 11.5 -6t-0.5 -14l-103 -238q-4 -8 -8 -14t-12 -6h-108q-8 0 -14.5 4.5t-3.5 15.5l67 238q2 8 6 14t15 6h150z" /> + <glyph glyph-name="less" unicode="&#x3c;" +d="M562 148q0 -12 -12 -12h-168q-16 0 -26 10l-234 213q-18 16 -18 32q0 18 18 33l234 212q6 5 12 8t14 3h168q12 0 12 -12q0 -6 -6 -12l-257 -232l257 -231q6 -6 6 -12z" /> + <glyph glyph-name="equal" unicode="=" +d="M569 471q0 -8 -6 -12t-14 -4h-432q-8 0 -14 4t-6 12v110q0 8 6 12t14 4h432q8 0 14 -4t6 -12v-110zM569 201q0 -8 -6 -12t-14 -4h-432q-8 0 -14 4t-6 12v110q0 8 6 12t14 4h432q8 0 14 -4t6 -12v-110z" /> + <glyph glyph-name="greater" unicode="&#x3e;" +d="M562 391q0 -16 -18 -32l-234 -213q-10 -10 -26 -10h-168q-12 0 -12 12q0 6 6 12l258 231l-258 232q-6 6 -6 12q0 12 12 12h168q8 0 14 -3t12 -8l234 -212q18 -15 18 -33z" /> + <glyph glyph-name="question" unicode="?" horiz-adv-x="492" +d="M456 601q0 -64 -51 -137l-106 -153q-11 -15 -15 -25t-6 -26q-1 -6 -6 -10t-10 -4h-139q-10 0 -10 13v35q0 36 6 59.5t23 53.5l81 138q5 8 8 15t3 15q0 15 -10 21t-35 6q-10 0 -28 -1.5t-38 -3t-38 -3.5l-27 -3q-20 -3 -20 20v117q0 17 19 23q33 11 76.5 18t89.5 7 +q55 0 98.5 -8.5t73.5 -28t45.5 -51t15.5 -78.5v-9zM288 20q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v139q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-139z" /> + <glyph glyph-name="at" unicode="@" horiz-adv-x="778" +d="M749 358q0 -88 -29 -148t-80 -97.5t-119.5 -54t-146.5 -16.5q-38 0 -71.5 8t-58 25t-38.5 43.5t-14 63.5q0 11 1 27t2 26l7 88q4 47 21 80t44 53.5t63 30t78 9.5q32 0 67.5 -4t68.5 -12q14 -3 21.5 -9t5.5 -25l-28 -293q28 6 50 23.5t36.5 44.5t22 61.5t7.5 75.5 +q0 44 -13 85t-41.5 73t-73 51t-107.5 19q-263 0 -286 -242l-15 -165q-1 -9 -1 -18v-17q0 -45 13.5 -80t43 -59t76.5 -36.5t114 -12.5q38 0 78 2.5t75 5.5q7 1 8.5 -1t1.5 -10v-45q0 -11 -10 -12q-33 -4 -71 -7.5t-82 -3.5q-72 0 -134 15.5t-107.5 47.5t-71.5 80.5t-26 115.5 +v17.5t1 17.5l17 171q7 74 35.5 132.5t76 99t114 62t150.5 21.5q83 0 144 -26t101.5 -68.5t60 -98t19.5 -114.5zM433 383q-11 2 -18.5 3t-16.5 1q-33 0 -47 -13.5t-18 -54.5l-11 -110q-1 -5 -1 -8.5v-7.5q0 -26 14 -34.5t48 -8.5h11.5t17.5 1z" /> + <glyph glyph-name="A" unicode="A" horiz-adv-x="692" +d="M483 0q-11 0 -14.5 5.5t-5.5 13.5l-28 139h-178l-28 -139q-2 -8 -5.5 -13.5t-14.5 -5.5h-173q-11 0 -14.5 6.5t-1.5 14.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q2 -9 -1 -15t-14 -6h-174zM357 572l-3 10.5t-8 3.5 +t-8 -3.5l-3 -10.5l-49 -254h120z" /> + <glyph glyph-name="B" unicode="B" horiz-adv-x="689" +d="M646 222q0 -72 -28.5 -117.5t-74.5 -70.5t-104.5 -34t-118.5 -9q-19 0 -45 0.5t-52.5 2t-51.5 4t-43 5.5t-30 7.5t-19.5 13t-10.5 22t-3 33.5v587q0 40 13.5 55t48.5 20q16 3 40.5 5t51.5 3.5t53 2.5t45 1q74 0 134 -10t102.5 -34t65.5 -65.5t23 -104.5v-17 +q0 -48 -21.5 -85.5t-55.5 -56.5q34 -20 57.5 -58.5t23.5 -86.5v-13zM446 524q0 34 -19 49t-72 15h-21t-28.5 -0.5t-26 -0.5h-14.5v-142h97q49 0 66.5 18.5t17.5 44.5v16zM450 237q0 30 -19 51t-69 21h-97v-153h82q59 0 81 20t22 52v9z" /> + <glyph glyph-name="C" unicode="C" horiz-adv-x="555" +d="M517 31q0 -10 -5 -14t-17 -8q-20 -7 -56 -12.5t-84 -5.5q-69 0 -126 19t-97.5 59.5t-62.5 102.5t-22 148v103q0 86 22 148t62.5 102.5t97.5 59.5t126 19q48 0 84 -5.5t56 -12.5q12 -4 17 -7.5t5 -14.5v-128q0 -11 -4 -16t-17 -3q-31 3 -64 6t-76 3q-20 0 -39 -5.5 +t-33 -22t-22.5 -46t-8.5 -77.5v-103q0 -47 8.5 -76.5t22.5 -46t32.5 -22.5t39.5 -6q43 0 75 2.5t65 6.5q14 2 17.5 -4t3.5 -15v-128v0z" /> + <glyph glyph-name="D" unicode="D" horiz-adv-x="696" +d="M651 317q0 -84 -23 -145.5t-65 -101.5t-102 -59.5t-135 -19.5q-72 0 -131 5t-98 12q-17 3 -24.5 11t-7.5 28v650q0 20 7.5 28t24.5 11q39 7 98 12t131 5q74 0 134 -19.5t102.5 -59.5t65.5 -101.5t23 -145.5v-110zM446 427q0 45 -7.5 74.5t-22.5 46.5t-37.5 24t-52.5 7 +h-22t-35 -1v-413q3 0 10 -0.5t16 -0.5h17.5h13.5q30 0 52.5 7t37.5 24t22.5 47t7.5 75v110z" /> + <glyph glyph-name="E" unicode="E" horiz-adv-x="585" +d="M532 23q0 -17 -20 -20q-29 -4 -76.5 -8t-120.5 -4q-48 0 -94 7.5t-82 31.5t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118 +q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122v0z" /> + <glyph glyph-name="F" unicode="F" horiz-adv-x="580" +d="M527 598q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-72h246q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-246v-278q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v508q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122v0z" /> + <glyph glyph-name="G" unicode="G" horiz-adv-x="657" +d="M599 38q0 -11 -4.5 -16t-16.5 -7q-43 -9 -100.5 -16.5t-130.5 -7.5q-30 0 -64 5.5t-67.5 19.5t-64.5 37.5t-54.5 60t-37.5 87t-14 118.5v105q0 103 30 167t76 100t102 49t108 13q78 0 133 -9.5t86 -17.5q11 -3 15 -6t4 -13v-126q0 -11 -4 -14t-13 -2q-29 2 -83 5.5 +t-110 3.5q-36 0 -62 -6.5t-43 -23t-25 -46t-8 -74.5v-106q0 -50 9.5 -80.5t24 -46.5t31 -21t31.5 -5q29 0 55 3v205q0 8 5.5 14t13.5 6h158q8 0 14 -6t6 -14v-335v0z" /> + <glyph glyph-name="H" unicode="H" horiz-adv-x="746" +d="M681 20q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v272h-209v-272q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v704q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-256h209v256q0 8 6 13.5t14 5.5h163q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="I" unicode="I" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="J" unicode="J" horiz-adv-x="334" +d="M269 2q0 -58 -13 -95.5t-36 -59.5t-56 -30.5t-72 -8.5q-21 0 -44 1.5t-47 5.5q-12 2 -16 7t-4 13v109q0 8 6 14t14 6h37q17 0 22 9.5t5 28.5v721q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-721v0z" /> + <glyph glyph-name="K" unicode="K" horiz-adv-x="713" +d="M689 11q0 -11 -13 -11h-210q-9 0 -13 5t-8 12l-176 319v-316q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v704q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-317l192 320q4 7 9 11.5t13 4.5h192q14 0 14 -11q0 -6 -4 -11l-218 -344l219 -356q3 -5 3 -10z" /> + <glyph glyph-name="L" unicode="L" horiz-adv-x="522" +d="M499 23q0 -17 -20 -20q-14 -3 -32.5 -5t-39.5 -3.5t-43 -2.5t-42 -1q-48 0 -94 7.5t-82.5 31.5t-58.5 68t-22 117v508q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-508q0 -29 10.5 -39.5t37.5 -10.5h162q8 0 14 -6t6 -14v-122v0z" /> + <glyph glyph-name="M" unicode="M" horiz-adv-x="841" +d="M484 249q-12 -19 -29 -19h-69q-17 0 -29 19l-82 137q-5 7 -6.5 9t-4.5 2q-4 0 -4 -10v-370q0 -6 -4 -11.5t-10 -5.5h-165q-6 0 -11 2.5t-5 14.5v689q0 15 11 26t26 11h111q19 0 31 -8t20 -22l145 -253q7 -12 11 -12q5 0 12 12l145 253q8 14 20 22t31 8h111q15 0 26 -11 +t11 -26v-689q0 -8 -5.5 -12.5t-11.5 -4.5h-164q-6 0 -10.5 3t-4.5 14v370q0 10 -4 10q-3 0 -4 -2t-6 -9z" /> + <glyph glyph-name="N" unicode="N" horiz-adv-x="746" +d="M681 37q0 -15 -11 -26t-26 -11h-134q-26 0 -42 27l-197 335q-5 8 -10 8t-5 -9v-341q0 -8 -6 -14t-14 -6h-150q-8 0 -14.5 6t-6.5 14v686q0 15 11 26t26 11h132q14 0 23 -7.5t17 -21.5l203 -345q5 -9 9 -9q2 0 3.5 1.5t1.5 7.5v354q0 8 6 14t14 6h150q8 0 14 -6t6 -14 +v-686v0z" /> + <glyph glyph-name="O" unicode="O" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM455 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5 +t77 -34.5t77 34.5t24 115.5v103z" /> + <glyph glyph-name="P" unicode="P" horiz-adv-x="677" +d="M646 494q0 -74 -28 -122.5t-72.5 -77.5t-99.5 -40.5t-109 -11.5q-17 0 -34 1t-37 2v-225q0 -8 -6 -14t-14 -6h-160q-8 0 -14.5 5t-6.5 13v656q0 36 13 48.5t45 17.5q19 3 44 5.5t53.5 4t57.5 2.5t56 1q56 0 111.5 -11t100 -39.5t72.5 -77t28 -123.5v-8zM444 502 +q0 44 -28 62.5t-79 18.5h-13.5t-22.5 -0.5t-22.5 -0.5h-12.5v-170q2 0 12.5 -0.5t22.5 -0.5h23h13q107 0 107 83v8z" /> + <glyph glyph-name="Q" unicode="Q" horiz-adv-x="707" +d="M660 320q0 -72 -16 -126.5t-44 -93.5t-66.5 -63t-83.5 -35v-19q0 -13 4 -16t14 -3h83q11 0 18 -4t7 -12v-102q0 -17 -24 -23q-26 -7 -57.5 -11t-66.5 -4q-33 0 -63.5 8t-54 28t-37.5 53.5t-14 84.5v20q-46 11 -84.5 34.5t-67 62t-44.5 93.5t-16 128v103q0 91 24.5 154 +t66.5 102t98 56t118 17t117.5 -17t97.5 -56t66.5 -102t24.5 -154v-103zM455 423q0 81 -24 116t-77 35t-77.5 -35t-24.5 -116v-103q0 -81 24.5 -116t77.5 -35t77 35t24 116v103z" /> + <glyph glyph-name="R" unicode="R" horiz-adv-x="708" +d="M673 15q0 -15 -17 -15h-184q-8 0 -12 6t-8 14l-127 244h-22.5t-34.5 1v-245q0 -8 -6 -14t-14 -6h-162q-8 0 -14.5 6t-6.5 14v654q0 36 13 48.5t45 17.5q15 2 40 4.5t54 4.5t59.5 3t57.5 1q70 0 127.5 -12t98.5 -40.5t64 -74.5t23 -115v-16q0 -40 -10 -72t-27 -56.5 +t-39 -41.5t-46 -27l145 -272q3 -6 3 -11zM445 511q0 71 -100 71h-11h-19t-23.5 -0.5t-23.5 -1.5v-159q2 0 12.5 -0.5t23.5 -0.5h24h13q58 0 81 19.5t23 54.5v17z" /> + <glyph glyph-name="S" unicode="S" horiz-adv-x="607" +d="M568 220q0 -42 -15.5 -83t-49 -73.5t-87.5 -52.5t-131 -20q-62 0 -112 7.5t-90 18.5q-8 2 -14.5 7t-6.5 13v123q0 21 21 20q16 -2 42.5 -4.5t55.5 -4.5t57 -4t48 -2q37 0 50 13.5t13 37.5q0 15 -9.5 25.5t-37.5 27.5l-144 85q-35 21 -58 44t-36.5 48t-19 52t-5.5 56 +q0 41 12.5 77t42.5 63t80.5 43t126.5 16q30 0 63 -2t64.5 -6t58 -8.5t41.5 -8.5q7 -2 12.5 -6.5t5.5 -12.5v-125q0 -8 -4 -14t-16 -5q-15 1 -42.5 3t-59.5 4.5t-65 4t-60 1.5q-28 0 -39 -9t-11 -25q0 -14 10 -24t42 -27l135 -72q73 -39 102.5 -88.5t29.5 -112.5z" /> + <glyph glyph-name="T" unicode="T" horiz-adv-x="594" +d="M570 596q0 -8 -6.5 -13.5t-14.5 -5.5h-149v-557q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v557h-152q-8 0 -14 5.5t-6 13.5v128q0 8 6 13.5t14 5.5h504q8 0 14.5 -5.5t6.5 -13.5v-128v0z" /> + <glyph glyph-name="U" unicode="U" horiz-adv-x="731" +d="M668 282q0 -91 -25.5 -147.5t-67.5 -88.5t-96.5 -43.5t-113.5 -11.5t-113.5 11.5t-96.5 43.5t-67 88.5t-25 147.5v441q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-441q0 -68 23 -94t76 -26t76.5 26t23.5 94v441q0 8 6 14t14 6h162q8 0 14.5 -6t6.5 -14v-441v0z" /> + <glyph glyph-name="V" unicode="V" horiz-adv-x="716" +d="M669 743q11 0 14 -6t1 -14l-134 -612q-8 -37 -25.5 -60.5t-42.5 -36.5t-56.5 -18t-67.5 -5t-67.5 5t-56.5 18t-42.5 36.5t-25.5 60.5l-134 612q-2 8 1.5 14t14.5 6h173q11 0 15 -5.5t6 -13.5l105 -553q2 -7 3.5 -10.5t7.5 -3.5t8 3.5t4 10.5l105 553q2 8 7 13.5t13 5.5 +h174v0z" /> + <glyph glyph-name="W" unicode="W" horiz-adv-x="917" +d="M880 743q17 0 16 -13l-88 -645q-4 -26 -10.5 -42.5t-16.5 -26t-23.5 -13t-29.5 -3.5h-103q-33 0 -50.5 17t-30.5 60l-74 252q-2 6 -3 7.5t-5 1.5t-5.5 -1.5t-3.5 -7.5l-74 -252q-13 -43 -30.5 -60t-50.5 -17h-103q-17 0 -30 3.5t-23 13t-16.5 26t-10.5 42.5l-88 645 +q-1 8 3.5 10.5t12.5 2.5h170q8 0 11 -5.5t4 -13.5l49 -443q2 -13 7 -13t8 13l58 202q7 25 21.5 34t37.5 9h105q23 0 37.5 -9t21.5 -34l58 -202q3 -13 8 -13t7 13l49 443q1 8 4 13.5t11 5.5h170v0z" /> + <glyph glyph-name="X" unicode="X" horiz-adv-x="736" +d="M705 11q0 -11 -13 -11h-203q-9 0 -14.5 5t-10.5 13l-108 178l-96 -176q-5 -8 -10.5 -14t-13.5 -6h-187q-6 0 -9.5 3.5t-3.5 8.5q0 2 2 8l204 368l-202 336q-2 4 -2 7q0 12 13 12h204q8 0 13.5 -6t10.5 -13l103 -170l88 170q4 7 10 13t14 6h188q13 0 13 -12q0 -3 -2 -7 +l-201 -354l210 -350q3 -5 3 -9z" /> + <glyph glyph-name="Y" unicode="Y" horiz-adv-x="682" +d="M662 730q0 -2 -2 -8l-147 -345q-16 -37 -33.5 -57.5t-37.5 -28.5v-271q0 -8 -6 -14t-14 -6h-163q-8 0 -13.5 6t-5.5 14v271q-20 8 -37.5 28.5t-33.5 57.5l-147 345q-2 6 -2 8q0 13 14 13h174q15 0 19.5 -5.5t7.5 -13.5l96 -265q4 -10 10 -10t10 10l96 265q3 8 7 13.5 +t20 5.5h174q14 0 14 -13z" /> + <glyph glyph-name="Z" unicode="Z" horiz-adv-x="632" +d="M577 20q0 -8 -6 -14t-14 -6h-471q-13 0 -22 6.5t-9 19.5v105q0 11 4 22t14 27l239 369q4 7 4 12q0 7 -11 7h-219q-8 0 -14 6t-6 14v136q0 8 6 13.5t14 5.5h456q10 0 18 -3t8 -13v-126q0 -8 -5.5 -24.5t-26.5 -48.5l-218 -334q-4 -5 -4 -11q0 -8 12 -8h231q8 0 14 -5.5 +t6 -13.5v-136v0z" /> + <glyph glyph-name="bracketleft" unicode="[" horiz-adv-x="394" +d="M361 -176q0 -18 -19 -18h-268q-8 0 -12.5 5.5t-4.5 13.5v899q0 8 4.5 13.5t12.5 5.5h267q8 0 14 -5t6 -13v-113q0 -8 -6 -13t-14 -5h-90v-639h91q19 0 19 -18v-113v0z" /> + <glyph glyph-name="backslash" unicode="\" horiz-adv-x="425" +d="M414 15q0 -7 -7 -12t-15 -5h-153q-8 0 -13 6.5t-7 14.5l-207 704q0 1 -0.5 2t-0.5 2q0 7 6.5 11.5t14.5 4.5h153q8 0 14 -6t8 -14l206 -704q0 -1 0.5 -1.5t0.5 -2.5z" /> + <glyph glyph-name="bracketright" unicode="]" horiz-adv-x="394" +d="M337 -175q0 -8 -4.5 -13.5t-12.5 -5.5h-268q-19 0 -19 18v113q0 18 19 18h91v639h-90q-8 0 -14 5t-6 13v113q0 8 6 13t14 5h267q8 0 12.5 -5.5t4.5 -13.5v-899v0z" /> + <glyph glyph-name="asciicircum" unicode="^" +d="M607 576q0 -10 -12 -10h-159q-14 0 -19.5 3t-12.5 11l-71 77l-71 -77q-7 -8 -12.5 -11t-19.5 -3h-158q-12 0 -12 10q0 5 5 12l109 147q8 11 14.5 14.5t21.5 3.5h246q15 0 21.5 -3.5t14.5 -14.5l110 -147q5 -7 5 -12z" /> + <glyph glyph-name="underscore" unicode="_" horiz-adv-x="561" +d="M593 -108q0 -8 -6 -12t-14 -4h-584q-8 0 -14 4t-6 12v58q0 8 6 12t14 4h584q8 0 14 -4t6 -12v-58v0z" /> + <glyph glyph-name="grave" unicode="`" horiz-adv-x="472" +d="M314 640q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="a" unicode="a" horiz-adv-x="575" +d="M525 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v21q-29 -21 -65 -35.5t-78 -14.5q-30 0 -60 9t-55 30t-40.5 55t-15.5 85v12q0 90 66.5 126.5t191.5 36.5h43v29q0 37 -14 47.5t-52 10.5q-21 0 -47 -1t-50.5 -2t-45.5 -2t-31 -2q-13 -1 -17.5 5t-4.5 15v97q0 11 5.5 16 +t14.5 8q12 4 33.5 8t46.5 7.5t52 6t51 2.5q54 0 100 -10.5t79.5 -36t52.5 -67t19 -102.5v-354zM339 241h-49q-38 0 -54 -13t-16 -45v-10q0 -26 15 -35t36 -9q18 0 36.5 4.5t31.5 10.5v97z" /> + <glyph glyph-name="b" unicode="b" horiz-adv-x="616" +d="M578 252q0 -127 -69.5 -194t-193.5 -67q-68 0 -126.5 8.5t-97.5 16.5q-23 5 -29.5 12t-6.5 20v705q0 8 7 14t15 6h150q8 0 14 -6t6 -14v-169l36 4.5t32 2.5q66 0 115.5 -18.5t82.5 -52.5t49 -82t16 -108v-78zM386 330q0 44 -14.5 73t-56.5 29q-18 0 -35.5 -1t-32.5 -3 +v-274q14 -2 29.5 -3.5t38.5 -1.5q42 0 56.5 29t14.5 74v78z" /> + <glyph glyph-name="c" unicode="c" horiz-adv-x="474" +d="M436 28q0 -10 -5 -14.5t-15 -6.5q-26 -6 -59 -11t-78 -5q-115 0 -177 69t-62 193v75q0 123 62 193t177 70q45 0 80.5 -5.5t56.5 -10.5q10 -2 15 -6.5t5 -14.5v-113q0 -9 -5 -15t-16 -4q-26 2 -52 4.5t-63 2.5q-32 0 -50 -22.5t-18 -78.5v-75q0 -56 18 -78t50 -22 +q37 0 63 1.5t52 4.5q21 3 21 -19v-112v0z" /> + <glyph glyph-name="d" unicode="d" horiz-adv-x="616" +d="M561 48q0 -13 -6 -20t-29 -12q-39 -8 -97.5 -16.5t-126.5 -8.5q-124 0 -193.5 66.5t-69.5 194.5v78q0 60 16 108t49 82t82.5 52.5t115.5 18.5q12 0 32 -2.5l36 -4.5v169q0 8 6 14t14 6h149q8 0 15 -6t7 -14v-705zM370 428q-15 2 -32.5 3t-35.5 1q-42 0 -57 -28.5 +t-15 -73.5v-78q0 -45 15 -74t57 -29q22 0 38 1.5t30 3.5v274z" /> + <glyph glyph-name="e" unicode="e" horiz-adv-x="602" +d="M562 259q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 46.5 1t53.5 2t51 2.5t39 2.5q12 1 17 -2.5t5 -14.5v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20 +t79.5 -56t47 -86t15.5 -110v-60zM378 346q0 45 -18 70.5t-56 25.5q-36 0 -55 -25.5t-19 -70.5v-3h148v3z" /> + <glyph glyph-name="f" unicode="f" horiz-adv-x="432" +d="M399 460q0 -8 -6 -14t-14 -6h-76v-420q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v420l-66 15q-8 2 -14.5 7.5t-6.5 13.5v84q0 8 6 15t15 7h66v27q0 56 12.5 91.5t35.5 55.5t54.5 27.5t70.5 7.5q50 0 93 -8q9 -2 15 -7t6 -13v-95q0 -8 -6 -13.5t-15 -5.5h-42 +q-19 0 -25.5 -8.5t-6.5 -31.5v-27h76q8 0 14 -6t6 -14v-102v0z" /> + <glyph glyph-name="g" unicode="g" horiz-adv-x="614" +d="M598 487q0 -17 -20 -22l-28 -8q8 -14 13 -33t5 -33v-11q0 -101 -68.5 -146t-189.5 -45q-30 0 -56.5 3.5t-41.5 8.5q-13 -9 -13 -21q0 -8 4.5 -13.5t18.5 -8.5l112 -23q48 -10 92.5 -21t78.5 -28.5t54.5 -45t20.5 -69.5v-7q0 -88 -70.5 -128.5t-208.5 -40.5 +q-128 0 -194 45.5t-66 123.5v7q0 22 13.5 53t42.5 54q-19 14 -33 33t-14 55q0 35 14.5 54.5t32.5 36.5q-17 15 -26.5 31.5t-14 33t-6 31.5t-1.5 27v11q0 94 64 142.5t197 48.5h265q10 0 16.5 -7t6.5 -17v-71zM382 391q0 26 -15 42.5t-57 16.5t-57 -16.5t-15 -42.5v-11 +q0 -12 3 -22.5t10.5 -18.5t21.5 -12.5t37 -4.5q42 0 57 16t15 42v11zM380 -29q0 7 -2.5 12.5t-11.5 11t-26 11t-46 11.5l-60 13q-7 -9 -11 -25t-4 -34v-7q0 -20 18.5 -32t63.5 -12q25 0 41 3.5t24 9.5t11 14t3 17v7z" /> + <glyph glyph-name="h" unicode="h" horiz-adv-x="632" +d="M578 20q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v345q0 40 -16 53t-47 13q-35 0 -76 -22v-387q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v731q0 8 6 14t14 6h152q8 0 14 -6t6 -14v-201q32 23 67 30.5t81 7.5q54 0 89.5 -17.5t56 -48.5t29 -72t8.5 -87v-345v0z +" /> + <glyph glyph-name="i" unicode="i" horiz-adv-x="313" +d="M258 657q0 -8 -7 -14t-15 -6h-158q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h158q8 0 15 -6t7 -14v-98zM253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539z" /> + <glyph glyph-name="j" unicode="j" horiz-adv-x="312" +d="M253 -21q0 -54 -12.5 -89.5t-34.5 -57t-53.5 -30t-68.5 -8.5q-23 0 -45.5 2t-48.5 7q-20 3 -20 21v93q0 8 6 14t15 6h43q18 0 22 11t4 31v582q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-582zM258 657q0 -8 -7 -14t-15 -6h-158q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14 +t15.5 6h158q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="k" unicode="k" horiz-adv-x="627" +d="M603 14q0 -5 -3.5 -9.5t-9.5 -4.5h-185q-19 0 -31 22l-127 228v-228q0 -8 -6 -15t-14 -7h-150q-8 0 -15 7t-7 15v731q0 8 7 14t15 6h150q8 0 14 -6t6 -14v-418l137 229q7 12 14 15t15 3h173q14 0 14 -12q0 -5 -3 -9l-173 -259l177 -280q2 -3 2 -8z" /> + <glyph glyph-name="l" unicode="l" horiz-adv-x="303" +d="M248 22q0 -8 -6 -15t-14 -7h-151q-8 0 -15 7t-7 15v731q0 8 7 14t15 6h151q8 0 14 -6t6 -14v-731v0z" /> + <glyph glyph-name="m" unicode="m" horiz-adv-x="901" +d="M846 22q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v341q0 38 -11.5 49.5t-37.5 11.5q-11 0 -27.5 -2.5t-33.5 -9.5q2 -13 2.5 -23.5t0.5 -25.5v-341q0 -8 -6 -15t-15 -7h-150q-9 0 -15 7t-6 15v341q0 38 -11 49.5t-37 11.5q-12 0 -28 -3.5t-32 -11.5v-387 +q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v540q0 8 6 14t14 6h139q8 0 14 -6t6 -14v-23q38 29 74.5 40t79.5 11q37 0 67 -12t50 -39q39 32 78.5 41.5t85.5 9.5q95 0 136 -59t41 -168v-341v0z" /> + <glyph glyph-name="n" unicode="n" horiz-adv-x="631" +d="M576 22q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v339q0 40 -14 55t-48 15q-17 0 -37.5 -6t-37.5 -15v-388q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v540q0 8 6 14t14 6h139q8 0 14 -6t6 -14v-23q40 30 81.5 40.5t83.5 10.5q59 0 94 -19t53.5 -51 +t24 -73t5.5 -86v-339v0z" /> + <glyph glyph-name="o" unicode="o" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM374 320q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-58q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v58z" /> + <glyph glyph-name="p" unicode="p" horiz-adv-x="616" +d="M578 252q0 -60 -16 -108t-49 -82t-82.5 -52.5t-115.5 -18.5q-12 0 -32 2t-36 4v-168q0 -8 -6 -14.5t-14 -6.5h-150q-8 0 -15 6.5t-7 14.5v705q0 13 6.5 20t29.5 12q39 8 97.5 16.5t126.5 8.5q124 0 193.5 -66.5t69.5 -194.5v-78zM386 330q0 45 -14.5 73.5t-56.5 28.5 +q-22 0 -38 -1t-30 -3v-274q15 -2 32.5 -3.5t35.5 -1.5q42 0 56.5 29t14.5 74v78z" /> + <glyph glyph-name="q" unicode="q" horiz-adv-x="616" +d="M561 -171q0 -8 -7 -14.5t-15 -6.5h-149q-8 0 -14 6.5t-6 14.5v168q-16 -2 -36 -4t-32 -2q-66 0 -115.5 18.5t-82.5 52.5t-49 82t-16 108v78q0 127 69.5 194t193.5 67q68 0 126.5 -8.5t97.5 -16.5q23 -5 29 -12t6 -20v-705zM370 428q-14 2 -29.5 3t-38.5 1 +q-42 0 -57 -28.5t-15 -73.5v-78q0 -44 15 -73.5t57 -29.5q18 0 35.5 1.5t32.5 3.5v274z" /> + <glyph glyph-name="r" unicode="r" horiz-adv-x="417" +d="M393 448q0 -9 -3.5 -12t-13.5 -3h-14q-32 0 -62 -5t-53 -18v-388q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v540q0 8 4.5 14t15.5 6h144q20 0 20 -20v-24q17 18 32.5 28t31.5 15.5t33 7t37 1.5q13 0 16.5 -4t3.5 -16v-122v0z" /> + <glyph glyph-name="s" unicode="s" horiz-adv-x="517" +d="M478 170q0 -38 -13.5 -70.5t-42 -56.5t-72 -38t-104.5 -14q-54 0 -102 7t-83 17q-19 5 -19 22v103q0 11 5.5 17t19.5 4q23 -3 48 -6t48.5 -5t43.5 -3.5t32 -1.5q30 0 38.5 7t8.5 21q0 9 -6 16.5t-24 17.5l-122 66q-95 51 -95 158q0 77 54 118.5t166 41.5q57 0 102.5 -7.5 +t81.5 -17.5q20 -5 20 -22v-105q0 -10 -3.5 -16t-16.5 -4q-11 1 -33 4t-47 5l-50 4t-42 2q-37 0 -37 -20q0 -9 5.5 -14t16.5 -11l117 -63q61 -33 83 -73.5t22 -82.5z" /> + <glyph glyph-name="t" unicode="t" horiz-adv-x="432" +d="M399 460q0 -8 -6 -14t-14 -6h-76v-269q0 -23 4.5 -30.5t23.5 -7.5h46q9 0 15 -5.5t6 -13.5v-94q0 -8 -6 -13t-15 -7q-25 -5 -47.5 -7t-41.5 -2q-40 0 -72.5 7.5t-56 27.5t-36 55.5t-12.5 91.5v267l-66 15q-8 2 -14.5 8t-6.5 14v84q0 8 6 14.5t15 6.5h66v81q0 8 6.5 13.5 +t14.5 7.5l149 26q14 2 18 -4.5t4 -14.5v-109h76q8 0 14 -6t6 -14v-102v0z" /> + <glyph glyph-name="u" unicode="u" horiz-adv-x="631" +d="M576 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v23q-27 -20 -64.5 -36t-93.5 -16t-91.5 19t-56 51t-28.5 73.5t-8 86.5v339q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-339q0 -40 12 -55.5t50 -15.5q17 0 37.5 6.5t37.5 15.5v388q0 8 5.5 15t14.5 7h150q9 0 15.5 -7 +t6.5 -15v-540v0z" /> + <glyph glyph-name="v" unicode="v" horiz-adv-x="620" +d="M584 582q23 0 17 -22l-126 -454q-11 -39 -28.5 -62t-39.5 -35t-47 -15t-50 -3t-50 3t-46.5 15t-39 35t-28.5 62l-125 454q-6 22 16 22h164q11 0 15.5 -6t6.5 -15l75 -365q3 -18 12 -18q10 0 13 18l75 365q2 9 6 15t16 6h164z" /> + <glyph glyph-name="w" unicode="w" horiz-adv-x="871" +d="M831 582q7 0 12 -4.5t3 -13.5l-88 -475q-9 -49 -30 -69t-55 -20h-91q-34 0 -53.5 22.5t-31.5 63.5l-54 183q-1 7 -7 7t-7 -7l-54 -183q-12 -41 -31 -63.5t-54 -22.5h-91q-34 0 -55 20t-30 69l-88 475q-2 10 3 14t12 4h160q14 0 17 -17l49 -343q1 -8 7 -8q5 0 8 8l58 205 +q5 18 16 29.5t40 11.5h80q29 0 40 -11.5t16 -29.5l58 -205q3 -8 8 -8q6 0 7 8l49 343q3 17 17 17h160z" /> + <glyph glyph-name="x" unicode="x" horiz-adv-x="647" +d="M421 0q-9 0 -14.5 5.5t-13.5 16.5l-85 134l-78 -135q-5 -10 -9.5 -15.5t-15.5 -5.5h-164q-12 0 -12 13q0 4 2 8l171 285l-170 255q-4 6 -1.5 13.5t12.5 7.5h185q8 0 14.5 -6t11.5 -15l77 -121l69 121q11 21 25 21h162q14 0 15.5 -7.5t-1.5 -13.5l-164 -272l178 -264 +q6 -10 2.5 -17.5t-12.5 -7.5h-184v0z" /> + <glyph glyph-name="y" unicode="y" horiz-adv-x="621" +d="M586 582q7 0 14 -4t3 -18l-170 -594q-11 -40 -27 -71.5t-42 -53t-65.5 -33t-98.5 -11.5q-15 0 -34 1.5t-38 4t-36 5.5t-27 7q-8 3 -15.5 7.5t-7.5 11.5v97q0 8 3.5 15.5t19.5 5.5q14 -1 31.5 -2.5t36.5 -2.5t37 -2t32 -1q21 0 35 8t19 30l8 33h-13q-17 0 -31 2.5t-26 13 +t-22.5 31t-21.5 57.5l-132 441q-6 22 21 22h163q11 0 14.5 -6t5.5 -14l79 -344q4 -17 11 -17h8l79 362q2 8 5.5 13.5t15.5 5.5h166v0z" /> + <glyph glyph-name="z" unicode="z" horiz-adv-x="542" +d="M495 20q0 -8 -6 -14t-14 -6h-401q-11 0 -19 8t-8 19v84q0 13 3 22.5t12 21.5l191 259q4 5 4 9q0 6 -9 6h-178q-16 0 -16 16v117q0 8 6 14t14 6h393q11 0 18.5 -8t7.5 -19v-91q0 -17 -4 -25.5t-13 -20.5l-182 -247q-4 -6 -4 -9q0 -6 9 -6h178q8 0 13 -4t5 -12v-120v0z" /> + <glyph glyph-name="braceleft" unicode="{" horiz-adv-x="417" +d="M402 -179q0 -8 -6 -13t-14 -5h-62q-67 0 -110 9.5t-68 33t-34.5 63t-9.5 98.5v116q0 32 -15 55t-40 39v112q25 16 40 39t15 55v116q0 59 9.5 98.5t34.5 63t68 33t110 9.5h62q8 0 14 -5t6 -13v-113q0 -8 -6 -13t-14 -5h-52q-25 0 -32 -11.5t-7 -43.5v-116 +q0 -51 -20.5 -89.5t-67.5 -60.5q47 -22 67.5 -60.5t20.5 -89.5v-116q0 -32 7 -43.5t32 -11.5h52q8 0 14 -5t6 -13v-113v0z" /> + <glyph glyph-name="bar" unicode="|" horiz-adv-x="308" +d="M251 -172q0 -8 -6.5 -15t-14.5 -7h-151q-8 0 -15 7t-7 15v895q0 8 7 14t15 6h151q8 0 14.5 -6t6.5 -14v-895v0z" /> + <glyph glyph-name="braceright" unicode="}" horiz-adv-x="417" +d="M374 217q-25 -16 -40 -39t-15 -55v-116q0 -59 -9.5 -98.5t-34.5 -63t-68 -33t-110 -9.5h-62q-8 0 -14 5t-6 13v113q0 8 6 13t14 5h52q25 0 32 11.5t7 43.5v116q0 51 20.5 89.5t67.5 60.5q-47 22 -67.5 60.5t-20.5 89.5v116q0 32 -7 43.5t-32 11.5h-52q-8 0 -14 5t-6 13 +v113q0 8 6 13t14 5h62q67 0 110 -9.5t68 -33t34.5 -63t9.5 -98.5v-116q0 -32 15 -55t40 -39v-112v0z" /> + <glyph glyph-name="asciitilde" unicode="~" +d="M603 485q0 -89 -42.5 -125.5t-122.5 -36.5q-23 0 -49 8t-45 19l-60 35q-16 9 -27 11.5t-19 2.5q-14 0 -19.5 -7.5t-5.5 -21.5v-19q0 -21 -20 -21h-108q-22 0 -22 21v19q0 46 11.5 78t33.5 51.5t52.5 28t68.5 8.5q16 0 41 -4.5t43 -15.5l70 -40q16 -9 27.5 -12.5 +t19.5 -3.5q23 0 23 26v23q0 21 21 21h107q22 0 22 -21v-24v0z" /> + <glyph glyph-name="uni00A0" unicode="&#xa0;" horiz-adv-x="252" + /> + <glyph glyph-name="exclamdown" unicode="&#xa1;" horiz-adv-x="291" +d="M238 423q0 -8 -6 -14t-14 -6h-146q-8 0 -14 6t-6 14v139q0 8 6 14t14 6h146q8 0 14 -6t6 -14v-139zM244 -172q0 -8 -7 -13.5t-15 -5.5h-156q-8 0 -14 5.5t-6 13.5v1l25 491q1 8 6.5 14.5t13.5 6.5h106q8 0 14.5 -6.5t7.5 -14.5l25 -491v-1z" /> + <glyph glyph-name="cent" unicode="&#xa2;" +d="M531 28q0 -10 -5 -14.5t-15 -6.5q-15 -4 -33.5 -7.5t-40.5 -5.5v-67q0 -8 -6 -14t-14 -6h-121q-8 0 -14 6t-6 14v80q-69 26 -105 89t-36 157v75q0 94 36 157t105 89v78q0 8 6 14t14 6h121q8 0 14 -6t6 -14v-65q23 -2 42 -5.5t32 -6.5q10 -2 15 -6.5t5 -14.5v-113 +q0 -8 -5.5 -13.5t-13.5 -5.5h-2q-26 2 -52 4.5t-63 2.5q-32 0 -50 -22.5t-18 -78.5v-75q0 -56 18 -78t50 -22q37 0 63 2l52 4h2q8 0 13.5 -5.5t5.5 -13.5v-112v0z" /> + <glyph glyph-name="sterling" unicode="&#xa3;" +d="M596 580q0 -18 -17 -18h-3q-31 3 -77 7t-90 4q-42 0 -58 -13t-16 -57v-50h152q8 0 14 -5.5t6 -13.5v-119q0 -8 -5.5 -14t-13.5 -6h-153v-74q0 -19 -5 -35.5t-11 -27.5h256q8 0 14 -5.5t6 -13.5v-119q0 -8 -6 -14t-14 -6h-457q-10 0 -15 7t-5 15v90q0 10 3 15t7 10 +q5 6 10.5 15.5t10 21t7.5 24t3 23.5v74h-49q-8 0 -13.5 6t-5.5 14v119q0 8 6 13.5t14 5.5h48v48q0 67 16 114t49 76.5t84 42.5t121 13q24 0 48.5 -2t47 -5t41.5 -6t30 -5q14 -3 17 -7.5t3 -13.5v-128v0z" /> + <glyph glyph-name="currency" unicode="&#xa4;" +d="M598 552q0 -8 -7 -15l-86 -86q19 -40 19 -80q0 -45 -21 -85l84 -85q7 -7 7 -15q0 -6 -5 -11l-65 -66q-5 -5 -11 -5q-8 0 -15 7l-87 87q-35 -16 -76 -16q-44 0 -81 19l-86 -86q-3 -3 -7 -5.5t-9 -2.5t-10 5l-65 66q-5 5 -5 12q0 8 7 15l86 85q-20 38 -20 81q0 39 17 76 +l-87 87q-7 7 -7 15q0 6 5 11l66 65q5 5 11 5q8 0 15 -7l84 -84q40 21 86 21q44 0 81 -19l85 86q7 7 15 7q6 0 11 -5l66 -66q5 -5 5 -11zM413 375q0 32 -21.5 53.5t-53.5 21.5t-54 -21.5t-22 -53.5t22 -54.5t54 -22.5t53.5 22.5t21.5 54.5z" /> + <glyph glyph-name="yen" unicode="&#xa5;" +d="M649 730q0 -2 -2 -8l-107 -221h80q8 0 14 -5.5t6 -13.5v-86q0 -19 -19 -19h-141l-42 -86l-3 -9h185q8 0 14 -5.5t6 -13.5v-86q0 -19 -19 -19h-186v-138q0 -8 -6.5 -14t-14.5 -6h-164q-8 0 -13.5 6t-5.5 14v138h-185q-8 0 -14 5.5t-6 13.5v86q0 8 6 13.5t14 5.5h185l-3 9 +l-40 86h-142q-8 0 -14 5.5t-6 13.5v86q0 8 6 13.5t14 5.5h81l-108 221q-2 6 -2 8q0 13 15 13h181q8 0 12.5 -5t7.5 -13l100 -245l100 245q3 8 7.5 13t12.5 5h181q15 0 15 -13z" /> + <glyph glyph-name="brokenbar" unicode="&#xa6;" horiz-adv-x="308" +d="M251 364q0 -8 -6 -15t-14 -7h-152q-8 0 -15 7t-7 15v344q0 8 7 14t15 6h152q8 0 14 -6t6 -14v-344zM251 -189q0 -8 -6 -15t-14 -7h-152q-8 0 -15 7t-7 15v344q0 8 7 14t15 6h152q8 0 14 -6t6 -14v-344z" /> + <glyph glyph-name="section" unicode="&#xa7;" horiz-adv-x="607" +d="M569 12q0 -42 -15 -82.5t-48.5 -73t-87 -52.5t-131.5 -20q-62 0 -113.5 7.5t-91.5 18.5q-8 2 -14.5 7t-6.5 13v125q0 8 6 13.5t14 5.5h2q20 -2 44.5 -4.5t51.5 -5t54 -4t51 -1.5h3q37 0 51 12t14 38q0 15 -10 26t-39 27l-142 80q-37 21 -61 44t-37.5 48.5t-19 54 +t-5.5 60.5q0 23 7 51.5t19 49.5q-12 20 -19 46t-7 55q0 41 12.5 77.5t42.5 64.5t80.5 44t126.5 16q30 0 63 -2t64.5 -6t58 -8.5t41.5 -8.5q8 -2 14 -7t6 -13v-125q0 -7 -4.5 -12t-11.5 -5h-1q-47 4 -110.5 7.5t-119.5 3.5q-29 0 -40.5 -6.5t-11.5 -26.5q0 -13 11 -23.5 +t43 -27.5l135 -72q73 -39 102.5 -88t29.5 -112q0 -27 -7 -55t-18 -50q14 -23 19.5 -49t5.5 -55zM402 226q0 15 -3.5 26.5t-13 22.5t-26 22.5t-42.5 25.5l-66 36q-16 8 -25.5 14.5t-17.5 13.5q-16 -16 -16 -47q0 -13 3 -23t11 -20t23.5 -20t39.5 -23l64 -35 +q20 -11 35.5 -21.5t23.5 -18.5q10 19 10 47z" /> + <glyph glyph-name="dieresis" unicode="&#xa8;" horiz-adv-x="472" +d="M434 657q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM200 657q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="copyright" unicode="&#xa9;" horiz-adv-x="750" +d="M712 374q0 -70 -26.5 -131t-72.5 -106.5t-107.5 -71.5t-131.5 -26t-131 26t-106.5 71.5t-71.5 106.5t-26 131t26 131.5t71.5 107.5t106.5 73t131 27t131.5 -27t107.5 -73t72.5 -107.5t26.5 -131.5zM656 374q0 58 -22.5 109.5t-60.5 90t-89.5 61t-109.5 22.5t-109 -22.5 +t-89 -61t-60 -90t-22 -109.5t22 -109t60 -89t89 -60t109 -22t109.5 22t89.5 60t60.5 89t22.5 109zM478 183q0 -6 -3 -8.5t-10 -4.5q-14 -4 -33 -7t-45 -3q-87 0 -132 47.5t-45 143.5v52q0 97 45 144t132 47q26 0 46 -3t32 -7q7 -2 10 -4t3 -8v-77q0 -11 -11 -11h-2 +q-18 2 -33 3.5t-45 1.5q-11 0 -21 -3.5t-18 -12.5t-13 -26t-5 -44v-52q0 -28 5 -45t13 -26t18 -12t21 -3q26 0 43 1.5t35 3.5h2q11 0 11 -11v-76z" /> + <glyph glyph-name="ordfeminine" unicode="&#xaa;" horiz-adv-x="379" +d="M343 405q0 -6 -1 -9.5t-6 -5.5q-68 -18 -140 -18q-81 0 -121.5 28.5t-40.5 88.5v7q0 28 12 47.5t34 31.5t52.5 17t67.5 5h19v13q0 23 -10 30.5t-28 7.5q-13 0 -28.5 -0.5t-30.5 -1.5t-27.5 -1.5t-19.5 -1.5h-1q-13 0 -13 14v62q0 12 14 16q15 4 46 10.5t60 6.5 +q34 0 64 -6.5t51.5 -22.5t34 -43.5t12.5 -69.5v-205zM221 531h-21q-22 0 -34.5 -7.5t-12.5 -27.5v-7q0 -19 11.5 -25t31.5 -6q8 0 14 1t11 2v70z" /> + <glyph glyph-name="guillemotleft" unicode="&#xab;" horiz-adv-x="747" +d="M718 71q0 -11 -13 -11h-148q-10 0 -17 2t-12 9l-158 192q-12 15 -12 27q0 13 12 28l158 191q5 7 12 9t17 2h148q13 0 13 -10q0 -4 -5 -11l-171 -209l171 -208q5 -7 5 -11zM396 71q0 -11 -13 -11h-148q-10 0 -17 2t-12 9l-158 192q-5 7 -9 13.5t-4 13.5t4 14t9 14l158 191 +q5 7 12 9t17 2h148q13 0 13 -10q0 -4 -5 -11l-171 -209l171 -208q5 -7 5 -11z" /> + <glyph glyph-name="logicalnot" unicode="&#xac;" +d="M569 193q0 -8 -5 -14t-13 -6h-107q-8 0 -12.5 6t-4.5 14v263h-310q-8 0 -14 4t-6 12v109q0 8 6 12t14 4h432q8 0 14 -4t6 -12v-388v0z" /> + <glyph glyph-name="uni00AD" unicode="&#xad;" horiz-adv-x="282" +d="M258 250q0 -8 -6 -13.5t-14 -5.5h-193q-8 0 -14 5.5t-6 13.5v102q0 8 6 13.5t14 5.5h193q8 0 14 -5.5t6 -13.5v-102v0z" /> + <glyph glyph-name="registered" unicode="&#xae;" horiz-adv-x="598" +d="M583 484q0 -59 -22.5 -110.5t-61 -90t-90.5 -60.5t-110 -22q-59 0 -110.5 22t-89.5 60.5t-60.5 90t-22.5 110.5q0 58 22.5 110t60.5 90t89.5 60.5t110.5 22.5q58 0 110 -22.5t90.5 -60.5t61 -90t22.5 -110zM529 484q0 47 -18 89t-49.5 73t-73.5 49t-89 18t-88.5 -18 +t-72.5 -49t-49 -73t-18 -89t18 -89t49 -73t72.5 -49t88.5 -18t89 18t73.5 49t49.5 73t18 89zM442 330q0 -9 -9 -9h-82q-6 0 -10 8q-8 14 -18 33.5t-19 36.5q-11 20 -21 42h-24v-110q0 -10 -10 -10h-74q-10 0 -10 10v290q0 19 5.5 25.5t22.5 8.5q6 1 17 1.5t24.5 1.5 +t27.5 1.5t25 0.5q67 0 105 -24t38 -86v-9q0 -34 -16 -54t-39 -31l65 -120q2 -4 2 -6zM340 550q0 17 -10.5 25t-34.5 8h-39v-75h39q24 0 34.5 9t10.5 24v9z" /> + <glyph glyph-name="macron" unicode="&#xaf;" horiz-adv-x="472" +d="M426 664q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88v0z" /> + <glyph glyph-name="degree" unicode="&#xb0;" horiz-adv-x="368" +d="M343 594q0 -33 -12.5 -61.5t-34 -50t-50 -34t-61.5 -12.5t-61.5 12.5t-50.5 34t-34.5 50t-12.5 61.5t12.5 61.5t34.5 50.5t50.5 34.5t61.5 12.5t61.5 -12.5t50 -34.5t34 -50.5t12.5 -61.5zM251 594q0 27 -19.5 47t-46.5 20t-46.5 -20t-19.5 -47t19.5 -46t46.5 -19 +t46.5 19t19.5 46z" /> + <glyph glyph-name="plusminus" unicode="&#xb1;" +d="M572 336q0 -8 -6 -12t-14 -4h-149v-147q0 -8 -4 -14t-12 -6h-110q-8 0 -12 6t-4 14v147h-147q-8 0 -14 4t-6 12v110q0 8 6 12t14 4h147v149q0 8 4 14t12 6h110q8 0 12 -6t4 -14v-149h149q8 0 14 -4t6 -12v-110zM572 -9q0 -8 -6 -12t-14 -4h-438q-8 0 -14 4t-6 12v86 +q0 8 6 12t14 4h438q8 0 14 -4t6 -12v-86z" /> + <glyph glyph-name="uni00B2" unicode="&#xb2;" horiz-adv-x="371" +d="M331 640q0 -33 -16 -59t-43 -44l-62 -41q-24 -16 -41.5 -28.5t-18.5 -30.5h159q16 0 16 -16v-71q0 -16 -16 -16h-253q-16 0 -16 16v57q0 46 19 80.5t48 57.5l55 41q17 12 27 19.5t15.5 13t7 9t1.5 8.5q0 10 -9 14.5t-38 4.5q-22 0 -45 -2t-45 -4q-9 -1 -20 0t-11 15v53 +q0 6 4 9.5t9 5.5q24 8 56.5 14t67.5 6q81 0 115 -27.5t34 -84.5z" /> + <glyph glyph-name="uni00B3" unicode="&#xb3;" horiz-adv-x="365" +d="M325 452q0 -63 -41 -93.5t-113 -30.5q-15 0 -33 2t-35 5t-31.5 7t-21.5 8q-10 4 -10 12v56q0 14 14 14h1q9 -1 22 -2t27.5 -1.5t28.5 -1t26 -0.5q26 0 37.5 5.5t11.5 22.5v8q0 17 -9.5 24.5t-32.5 7.5h-85q-6 0 -10.5 4.5t-4.5 10.5v60q0 6 4.5 10.5t10.5 4.5h85 +q43 0 43 28v9q0 14 -9.5 20t-39.5 6q-23 0 -53 -1.5t-49 -3.5h-1q-14 0 -14 14v58q0 6 4.5 9t9.5 5q25 8 54.5 13t61.5 5q70 0 111 -24t41 -86v-7q0 -32 -13 -53.5t-32 -34.5q24 -14 34.5 -36.5t10.5 -48.5v-5v0z" /> + <glyph glyph-name="acute" unicode="&#xb4;" horiz-adv-x="472" +d="M450 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="mu" unicode="&#xb5;" horiz-adv-x="632" +d="M577 48q0 -12 -6.5 -19.5t-28.5 -13.5q-35 -10 -90 -17t-133 -7q-38 0 -71 6v-169q0 -8 -6 -14t-14 -6h-153q-8 0 -14 6t-6 14v732q0 8 6.5 15t14.5 7h150q8 0 14.5 -7t6.5 -15v-346q0 -35 17.5 -51t53.5 -16q20 0 37 1t30 4v408q0 8 6 15t14 7h150q8 0 15 -7t7 -15v-512 +v0z" /> + <glyph glyph-name="paragraph" unicode="&#xb6;" horiz-adv-x="674" +d="M621 -176q0 -8 -4.5 -13.5t-12.5 -5.5h-52q-8 0 -12.5 5.5t-4.5 13.5v834h-64v-834q0 -8 -4.5 -13.5t-12.5 -5.5h-52q-8 0 -12.5 5.5t-4.5 13.5v410h-92q-52 0 -97 14.5t-78.5 43t-53 70t-19.5 95.5v63q0 54 19.5 95.5t53 70t78.5 43t97 14.5h312q16 0 16 -19v-900v0z +" /> + <glyph glyph-name="periodcentered" unicode="&#xb7;" horiz-adv-x="291" +d="M239 308q0 -8 -6.5 -14t-14.5 -6h-145q-8 0 -14.5 6t-6.5 14v139q0 8 6.5 14t14.5 6h145q8 0 14.5 -6t6.5 -14v-139v0z" /> + <glyph glyph-name="cedilla" unicode="&#xb8;" horiz-adv-x="451" +d="M352 -43q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-128q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="uni00B9" unicode="&#xb9;" horiz-adv-x="290" +d="M128 744q6 3 14 3h62q16 0 16 -16v-381q0 -16 -16 -16h-88q-16 0 -16 16v275l-51 -21q-6 -2 -12.5 0t-6.5 10v78q0 9 9 14z" /> + <glyph glyph-name="ordmasculine" unicode="&#xba;" horiz-adv-x="404" +d="M370 546q0 -89 -44 -131.5t-123 -42.5t-123.5 42.5t-44.5 131.5v31q0 89 44.5 132t123.5 43t123 -43t44 -132v-31zM244 577q0 40 -10 55t-31 15t-32 -15t-11 -55v-31q0 -40 11 -55t32 -15t31 15t10 55v31z" /> + <glyph glyph-name="guillemotright" unicode="&#xbb;" horiz-adv-x="747" +d="M717 290q0 -7 -4 -13.5t-9 -13.5l-158 -192q-5 -7 -11.5 -9t-16.5 -2h-148q-13 0 -13 11q0 4 5 11l171 208l-171 209q-5 7 -5 11q0 10 13 10h148q10 0 16.5 -2t11.5 -9l158 -191q5 -7 9 -14t4 -14zM395 290q0 -7 -4 -13.5t-9 -13.5l-158 -192q-5 -7 -12 -9t-17 -2h-148 +q-13 0 -13 11q0 4 5 11l171 208l-171 209q-5 7 -5 11q0 10 13 10h148q10 0 17 -2t12 -9l158 -191q5 -7 9 -14t4 -14z" /> + <glyph glyph-name="onequarter" unicode="&#xbc;" horiz-adv-x="814" +d="M675 733q0 -4 -3 -10l-417 -707q-6 -10 -9.5 -13t-11.5 -3h-123q-12 0 -12 12q0 5 3 10l417 706q5 10 10 12.5t13 2.5h122q11 0 11 -10zM138 744q6 3 14 3h62q16 0 16 -16v-381q0 -16 -16 -16h-88q-16 0 -16 16v275l-51 -21q-19 -8 -19 10v78q0 9 9 14zM774 100 +q0 -16 -16 -16h-27v-68q0 -7 -4.5 -11.5t-10.5 -4.5h-89q-16 0 -16 16v68h-146q-16 0 -16 16v61q0 10 7 19l176 226q7 7 16 7h68q6 0 10.5 -4.5t4.5 -11.5v-220h27q16 0 16 -15v-62zM616 266l-67 -89h67v89z" /> + <glyph glyph-name="onehalf" unicode="&#xbd;" horiz-adv-x="854" +d="M675 733q0 -4 -3 -10l-417 -707q-6 -10 -9.5 -13t-11.5 -3h-123q-12 0 -12 12q0 5 3 10l417 706q5 10 10 12.5t13 2.5h122q11 0 11 -10zM138 744q6 3 14 3h62q16 0 16 -16v-381q0 -16 -16 -16h-88q-16 0 -16 16v275l-51 -21q-19 -8 -19 10v78q0 9 9 14zM814 306 +q0 -33 -16 -59t-43 -44l-62 -41q-24 -16 -41.5 -28.5t-18.5 -30.5h159q16 0 16 -16v-71q0 -16 -16 -16h-253q-16 0 -16 16v57q0 46 19 80.5t48 57.5l55 41q17 12 27 19.5t15.5 13t7 9t1.5 8.5q0 10 -9 14.5t-38 4.5q-22 0 -45 -2t-45 -4q-9 -1 -20 0t-11 15v53q0 6 4 9.5 +t9 5.5q24 8 56.5 14t67.5 6q81 0 115 -27.5t34 -84.5z" /> + <glyph glyph-name="threequarters" unicode="&#xbe;" horiz-adv-x="877" +d="M837 97q0 -6 -5 -10.5t-11 -4.5h-25v-66q0 -6 -4.5 -11t-10.5 -5h-90q-6 0 -10 5t-4 11v66h-142q-7 0 -10.5 4.5t-3.5 9.5v66q0 12 6 19l170 221q6 7 16 7h65q7 0 12.5 -5t5.5 -13v-215h25q6 0 11 -4t5 -10v-65zM744 733q0 -4 -3 -10l-417 -707q-6 -10 -9.5 -13t-11.5 -3 +h-123q-12 0 -12 12q0 5 3 10l417 706q5 10 10 12.5t13 2.5h122q11 0 11 -10zM325 458q0 -63 -41 -93.5t-113 -30.5q-15 0 -33 2t-35 5t-31.5 7t-21.5 8q-10 4 -10 12v56q0 14 14 14h1q9 -1 22 -2t27.5 -1.5t28.5 -1t26 -0.5q26 0 37.5 5.5t11.5 22.5v8q0 17 -9.5 24.5 +t-32.5 7.5h-85q-6 0 -10.5 4.5t-4.5 10.5v60q0 6 4.5 10.5t10.5 4.5h85q43 0 43 28v9q0 14 -9.5 20t-39.5 6q-23 0 -53 -1.5t-49 -3.5h-1q-14 0 -14 14v58q0 6 4.5 9t9.5 5q25 8 54.5 13t61.5 5q70 0 111 -24t41 -86v-7q0 -32 -13 -53.5t-32 -34.5q24 -14 34.5 -36.5 +t10.5 -48.5v-5zM682 261q0 7 -2 7q-1 0 -2 -1l-63 -82q-3 -5 -3 -7t2 -2h68v85z" /> + <glyph glyph-name="questiondown" unicode="&#xbf;" horiz-adv-x="492" +d="M395 423q0 -8 -6 -14t-14 -6h-146q-8 0 -14.5 6t-6.5 14v139q0 8 6.5 14t14.5 6h146q8 0 14 -6t6 -14v-139zM458 -146q0 -17 -19 -23q-33 -11 -76.5 -18t-89.5 -7q-56 0 -99 8.5t-73 28t-45.5 51t-15.5 78.5v9q0 64 51 137l106 153q11 15 15 25t6 26q1 6 6 10t10 4h139 +q10 0 10 -13v-35q0 -36 -6 -59.5t-23 -53.5l-81 -138q-5 -8 -8 -15t-3 -15q0 -15 10 -21t35 -6q10 0 28 1.5t38 3t38 3.5l27 3h3q17 0 17 -20v-117z" /> + <glyph glyph-name="Agrave" unicode="&#xc0;" horiz-adv-x="692" +d="M673 16q0 -16 -16 -16h-174q-8 0 -13 5.5t-7 13.5l-28 139h-178l-28 -139q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q0 -2 0.5 -3t0.5 -2zM357 572 +l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-49 -254h120zM473 802q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="Aacute" unicode="&#xc1;" horiz-adv-x="692" +d="M673 16q0 -16 -16 -16h-174q-8 0 -13 5.5t-7 13.5l-28 139h-178l-28 -139q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q0 -2 0.5 -3t0.5 -2zM357 572 +l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-49 -254h120zM543 934q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="Acircumflex" unicode="&#xc2;" horiz-adv-x="692" +d="M673 16q0 -16 -16 -16h-174q-8 0 -13 5.5t-7 13.5l-28 139h-178l-28 -139q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q0 -2 0.5 -3t0.5 -2zM357 572 +l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-49 -254h120zM559 802q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="Atilde" unicode="&#xc3;" horiz-adv-x="692" +d="M673 16q0 -16 -16 -16h-174q-8 0 -13 5.5t-7 13.5l-28 139h-178l-28 -139q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q0 -2 0.5 -3t0.5 -2zM357 572 +l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-49 -254h120zM559 915q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4 +q10 0 14 4.5t4 16.5v17q0 17 17 17h83q17 0 17 -17v-18z" /> + <glyph glyph-name="Adieresis" unicode="&#xc4;" horiz-adv-x="692" +d="M673 16q0 -16 -16 -16h-174q-8 0 -13 5.5t-7 13.5l-28 139h-178l-28 -139q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q0 -2 0.5 -3t0.5 -2zM357 572 +l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-49 -254h120zM543 818q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM309 818q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="Aring" unicode="&#xc5;" horiz-adv-x="692" +d="M673 16q0 -16 -16 -16h-174q-8 0 -13 5.5t-7 13.5l-28 139h-178l-28 -139q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q0 -2 0.5 -3t0.5 -2zM357 572 +l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-49 -254h120zM469 903q0 -25 -9.5 -47.5t-26 -39t-39 -26t-47.5 -9.5t-47 9.5t-38 26t-25 39t-9 47.5t9 47.5t25 39t38 26t47 9.5t47.5 -9.5t39 -26t26 -39t9.5 -47.5zM389 904q0 17 -12 29t-29 12t-28.5 -12t-11.5 -29t11.5 -30t28.5 -13 +t29 13t12 30z" /> + <glyph glyph-name="AE" unicode="&#xc6;" horiz-adv-x="943" +d="M890 23q0 -17 -20 -20q-14 -2 -29.5 -4t-36 -4t-47 -3t-62.5 -1q-43 0 -84 6t-74.5 24t-57.5 50.5t-33 85.5h-188l-28 -138q-2 -8 -7 -13.5t-13 -5.5h-174q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 607q8 37 26 59.5t43 35t56.5 16.5t67.5 4h523q20 0 20 -20v-129 +q0 -8 -6 -14t-14 -6h-228v-118h224q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-224v-83q0 -29 11 -39.5t38 -10.5h179q8 0 14 -6t6 -14v-122zM439 576h-89q-8 0 -10.5 -4t-4.5 -14l-48 -240h152v258z" /> + <glyph glyph-name="Ccedilla" unicode="&#xc7;" horiz-adv-x="555" +d="M517 31q0 -10 -5 -14t-17 -8q-20 -7 -56 -12.5t-84 -5.5q-69 0 -126 19t-97.5 59.5t-62.5 102.5t-22 148v103q0 86 22 148t62.5 102.5t97.5 59.5t126 19q48 0 84 -5.5t56 -12.5q12 -4 17 -7.5t5 -14.5v-128q0 -19 -18 -19h-3q-31 3 -64 6t-76 3q-20 0 -39 -5.5t-33 -22 +t-22.5 -46t-8.5 -77.5v-103q0 -47 8.5 -76.5t22.5 -46t32.5 -22.5t39.5 -6q43 0 76 3t64 6h3q18 0 18 -19v-128zM440 -43q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-128q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="Egrave" unicode="&#xc8;" horiz-adv-x="585" +d="M532 23q0 -17 -20 -20q-29 -4 -76.5 -8t-120.5 -4q-48 0 -94 7.5t-82 31.5t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118 +q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122zM406 802q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="Eacute" unicode="&#xc9;" horiz-adv-x="585" +d="M532 23q0 -17 -20 -20q-29 -4 -76.5 -8t-120.5 -4q-48 0 -94 7.5t-82 31.5t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118 +q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122zM487 934q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="Ecircumflex" unicode="&#xca;" horiz-adv-x="585" +d="M532 23q0 -17 -20 -20q-29 -4 -76.5 -8t-120.5 -4q-48 0 -94 7.5t-82 31.5t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118 +q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122zM515 802q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114 +q4 -5 4 -10z" /> + <glyph glyph-name="Edieresis" unicode="&#xcb;" horiz-adv-x="585" +d="M532 23q0 -17 -20 -20q-29 -4 -76.5 -8t-120.5 -4q-48 0 -94 7.5t-82 31.5t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118 +q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122zM494 818q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM260 818q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14 +t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="Igrave" unicode="&#xcc;" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704zM279 802q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="Iacute" unicode="&#xcd;" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704zM351 934q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="Icircumflex" unicode="&#xce;" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704zM380 802q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190 +q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="Idieresis" unicode="&#xcf;" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704zM364 818q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM130 818q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6 +t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="Eth" unicode="&#xd0;" horiz-adv-x="696" +d="M651 324q0 -89 -23.5 -152t-66.5 -103.5t-102.5 -59t-132.5 -18.5q-78 0 -133 4.5t-98 12.5q-17 3 -24.5 11t-7.5 28v251h-51q-8 0 -14 6t-6 14v119q0 8 6 13.5t14 5.5h51v240q0 20 7.5 28t24.5 11q43 8 98 13t133 5q72 0 132 -18.5t103 -58.5t66.5 -103.5t23.5 -152.5 +v-96zM445 420q0 46 -7 76.5t-21.5 48.5t-37 25.5t-53.5 7.5q-17 0 -35 -0.5t-24 -0.5v-121h53q19 0 19 -19v-119q0 -8 -5.5 -14t-13.5 -6h-53v-131q5 -1 24.5 -1h34.5q31 0 53.5 7t37 25t21.5 48.5t7 77.5v96z" /> + <glyph glyph-name="Ntilde" unicode="&#xd1;" horiz-adv-x="746" +d="M681 37q0 -15 -11 -26t-26 -11h-134q-26 0 -42 27l-197 335q-5 8 -10 8t-5 -9v-341q0 -8 -6 -14t-14 -6h-150q-8 0 -14.5 6t-6.5 14v686q0 15 11 26t26 11h132q14 0 23 -7.5t17 -21.5l203 -345q5 -9 9 -9q2 0 3.5 1.5t1.5 7.5v354q0 8 6 14t14 6h150q8 0 14 -6t6 -14 +v-686zM577 915q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5t4 16.5v17q0 17 17 17h83 +q17 0 17 -17v-18z" /> + <glyph glyph-name="Ograve" unicode="&#xd2;" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM455 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5 +t77 -34.5t77 34.5t24 115.5v103zM450 802q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="Oacute" unicode="&#xd3;" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM455 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5 +t77 -34.5t77 34.5t24 115.5v103zM542 934q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="Ocircumflex" unicode="&#xd4;" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM455 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5 +t77 -34.5t77 34.5t24 115.5v103zM564 802q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="Otilde" unicode="&#xd5;" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM455 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5 +t77 -34.5t77 34.5t24 115.5v103zM572 916q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5 +t4 16.5v17q0 17 17 17h83q17 0 17 -17v-18z" /> + <glyph glyph-name="Odieresis" unicode="&#xd6;" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM455 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5 +t77 -34.5t77 34.5t24 115.5v103zM548 818q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM314 818q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="multiply" unicode="&#xd7;" +d="M552 516q0 -8 -8 -16l-110 -110l109 -110q8 -8 8 -15q0 -5 -5 -10l-77 -78q-5 -5 -10 -5q-8 0 -16 8l-110 110l-110 -110q-8 -8 -15 -8q-5 0 -10 5l-78 78q-5 5 -5 10q0 7 8 15l110 110l-110 110q-8 8 -8 16q0 5 5 10l78 78q5 5 10 5q7 0 15 -8l110 -111l110 111 +q8 8 16 8q5 0 10 -5l78 -78q5 -5 5 -10z" /> + <glyph glyph-name="Oslash" unicode="&#xd8;" horiz-adv-x="708" +d="M693 742q0 -4 -3 -8l-78 -107q23 -38 36 -88t13 -116v-103q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17q-47 0 -90 9.5t-80 30.5l-14 -21q-5 -6 -11.5 -12.5t-14.5 -6.5h-118q-11 0 -11 11q0 3 3 8l77 108q-23 38 -35.5 87.5t-12.5 114.5v103q0 91 24.5 154 +t66.5 102t98 56.5t118 17.5q47 0 89.5 -9.5t79.5 -30.5l15 21q5 6 11.5 12.5t14.5 6.5h118q11 0 11 -11zM412 559q-11 8 -26 11.5t-32 3.5q-53 0 -77 -35t-24 -116v-85zM455 407l-159 -221q22 -16 58 -16q53 0 77 34.5t24 115.5v87z" /> + <glyph glyph-name="Ugrave" unicode="&#xd9;" horiz-adv-x="731" +d="M668 282q0 -91 -25.5 -147.5t-67.5 -88.5t-96.5 -43.5t-113.5 -11.5t-113.5 11.5t-96.5 43.5t-67 88.5t-25 147.5v441q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-441q0 -68 23 -94t76 -26t76.5 26t23.5 94v441q0 8 6 14t14 6h162q8 0 14.5 -6t6.5 -14v-441zM476 801 +q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="Uacute" unicode="&#xda;" horiz-adv-x="731" +d="M668 282q0 -91 -25.5 -147.5t-67.5 -88.5t-96.5 -43.5t-113.5 -11.5t-113.5 11.5t-96.5 43.5t-67 88.5t-25 147.5v441q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-441q0 -68 23 -94t76 -26t76.5 26t23.5 94v441q0 8 6 14t14 6h162q8 0 14.5 -6t6.5 -14v-441zM558 934 +q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="Ucircumflex" unicode="&#xdb;" horiz-adv-x="731" +d="M668 282q0 -91 -25.5 -147.5t-67.5 -88.5t-96.5 -43.5t-113.5 -11.5t-113.5 11.5t-96.5 43.5t-67 88.5t-25 147.5v441q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-441q0 -68 23 -94t76 -26t76.5 26t23.5 94v441q0 8 6 14t14 6h162q8 0 14.5 -6t6.5 -14v-441zM580 802 +q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="Udieresis" unicode="&#xdc;" horiz-adv-x="731" +d="M668 282q0 -91 -25.5 -147.5t-67.5 -88.5t-96.5 -43.5t-113.5 -11.5t-113.5 11.5t-96.5 43.5t-67 88.5t-25 147.5v441q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-441q0 -68 23 -94t76 -26t76.5 26t23.5 94v441q0 8 6 14t14 6h162q8 0 14.5 -6t6.5 -14v-441zM563 818 +q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM329 818q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="Yacute" unicode="&#xdd;" horiz-adv-x="682" +d="M662 730q0 -2 -2 -8l-147 -345q-16 -37 -33.5 -57.5t-37.5 -28.5v-271q0 -8 -6 -14t-14 -6h-163q-8 0 -13.5 6t-5.5 14v271q-20 8 -37.5 28.5t-33.5 57.5l-147 345q-2 6 -2 8q0 13 14 13h181q8 0 12.5 -5.5t7.5 -13.5l96 -265q4 -10 10 -10t10 10l96 265q3 8 7.5 13.5 +t12.5 5.5h181q14 0 14 -13zM539 933q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="Thorn" unicode="&#xde;" horiz-adv-x="677" +d="M646 410q0 -75 -28 -123.5t-73 -77.5t-100.5 -40.5t-109.5 -11.5q-17 0 -33 0.5t-37 1.5v-139q0 -8 -5.5 -14t-13.5 -6h-162q-8 0 -13.5 6t-5.5 14v704q0 19 19 19h162q19 0 19 -19v-55q2 0 9.5 0.5t17.5 0.5h20.5h18.5q56 0 112.5 -11t101.5 -39.5t73 -77t28 -123.5v-9z +M444 419q0 44 -29 62t-80 18h-51h-19v-171q2 0 12.5 -0.5t22.5 -0.5h22.5h12.5q51 0 80 20t29 63v9z" /> + <glyph glyph-name="germandbls" unicode="&#xdf;" horiz-adv-x="680" +d="M627 229q0 -60 -20 -104.5t-54 -74t-78.5 -44.5t-92.5 -15q-14 0 -32.5 1.5t-34.5 4.5q-8 2 -14 7t-6 13v119q0 5 1.5 9.5t6.5 4.5h41q19 0 35.5 2.5t28.5 10.5t19 23t7 39v17q0 45 -21.5 64t-67.5 19h-27q-8 0 -14 6t-6 14v96q0 8 6 14t14 6h27q47 0 64.5 19.5 +t17.5 45.5v25q0 26 -18 45.5t-64 19.5q-54 0 -76 -24.5t-22 -75.5v-495q0 -8 -5.5 -14.5t-13.5 -6.5h-154q-8 0 -14 6.5t-6 14.5v495q0 137 72.5 201t218.5 64q72 0 124 -16.5t85.5 -46.5t49.5 -70.5t16 -88.5v-25q0 -46 -24.5 -82t-56.5 -53q42 -22 65 -59.5t23 -85.5v-25 +v0z" /> + <glyph glyph-name="agrave" unicode="&#xe0;" horiz-adv-x="575" +d="M525 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v21q-29 -21 -65 -35.5t-78 -14.5q-30 0 -60 9t-55 30t-40.5 55t-15.5 85v12q0 90 66.5 126.5t191.5 36.5h43v29q0 18 -5.5 29.5t-14.5 18t-21 8.5t-25 2q-48 0 -93.5 -1.5t-80.5 -5.5h-3q-19 0 -19 20v97q0 17 20 24 +q12 4 33.5 8t46.5 7.5t52 6t51 2.5q54 0 100 -10.5t79.5 -36t52.5 -67t19 -102.5v-354zM339 241h-49q-38 0 -54 -13t-16 -45v-10q0 -26 15 -35t36 -9q18 0 36.5 4.5t31.5 10.5v97zM383 640q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158 +q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="aacute" unicode="&#xe1;" horiz-adv-x="575" +d="M525 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v21q-29 -21 -65 -35.5t-78 -14.5q-30 0 -60 9t-55 30t-40.5 55t-15.5 85v12q0 90 66.5 126.5t191.5 36.5h43v29q0 18 -5.5 29.5t-14.5 18t-21 8.5t-25 2q-48 0 -93.5 -1.5t-80.5 -5.5h-3q-19 0 -19 20v97q0 17 20 24 +q12 4 33.5 8t46.5 7.5t52 6t51 2.5q54 0 100 -10.5t79.5 -36t52.5 -67t19 -102.5v-354zM339 241h-49q-38 0 -54 -13t-16 -45v-10q0 -26 15 -35t36 -9q18 0 36.5 4.5t31.5 10.5v97zM492 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114 +q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="acircumflex" unicode="&#xe2;" horiz-adv-x="575" +d="M525 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v21q-29 -21 -65 -35.5t-78 -14.5q-30 0 -60 9t-55 30t-40.5 55t-15.5 85v12q0 90 66.5 126.5t191.5 36.5h43v29q0 18 -5.5 29.5t-14.5 18t-21 8.5t-25 2q-48 0 -93.5 -1.5t-80.5 -5.5h-3q-19 0 -19 20v97q0 17 20 24 +q12 4 33.5 8t46.5 7.5t52 6t51 2.5q54 0 100 -10.5t79.5 -36t52.5 -67t19 -102.5v-354zM339 241h-49q-38 0 -54 -13t-16 -45v-10q0 -26 15 -35t36 -9q18 0 36.5 4.5t31.5 10.5v97zM509 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5 +t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="atilde" unicode="&#xe3;" horiz-adv-x="575" +d="M525 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v21q-29 -21 -65 -35.5t-78 -14.5q-30 0 -60 9t-55 30t-40.5 55t-15.5 85v12q0 90 66.5 126.5t191.5 36.5h43v29q0 18 -5.5 29.5t-14.5 18t-21 8.5t-25 2q-48 0 -93.5 -1.5t-80.5 -5.5h-3q-19 0 -19 20v97q0 17 20 24 +q12 4 33.5 8t46.5 7.5t52 6t51 2.5q54 0 100 -10.5t79.5 -36t52.5 -67t19 -102.5v-354zM339 241h-49q-38 0 -54 -13t-16 -45v-10q0 -26 15 -35t36 -9q18 0 36.5 4.5t31.5 10.5v97zM513 753q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15 +q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5t4 16.5v17q0 17 17 17h83q17 0 17 -17v-18z" /> + <glyph glyph-name="adieresis" unicode="&#xe4;" horiz-adv-x="575" +d="M525 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v21q-29 -21 -65 -35.5t-78 -14.5q-30 0 -60 9t-55 30t-40.5 55t-15.5 85v12q0 90 66.5 126.5t191.5 36.5h43v29q0 18 -5.5 29.5t-14.5 18t-21 8.5t-25 2q-48 0 -93.5 -1.5t-80.5 -5.5h-3q-19 0 -19 20v97q0 17 20 24 +q12 4 33.5 8t46.5 7.5t52 6t51 2.5q54 0 100 -10.5t79.5 -36t52.5 -67t19 -102.5v-354zM339 241h-49q-38 0 -54 -13t-16 -45v-10q0 -26 15 -35t36 -9q18 0 36.5 4.5t31.5 10.5v97zM496 658q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6 +t7.5 -14v-98zM262 658q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="aring" unicode="&#xe5;" horiz-adv-x="575" +d="M525 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v21q-29 -21 -65 -35.5t-78 -14.5q-30 0 -60 9t-55 30t-40.5 55t-15.5 85v12q0 90 66.5 126.5t191.5 36.5h43v29q0 18 -5.5 29.5t-14.5 18t-21 8.5t-25 2q-48 0 -93.5 -1.5t-80.5 -5.5h-3q-19 0 -19 20v97q0 17 20 24 +q12 4 33.5 8t46.5 7.5t52 6t51 2.5q54 0 100 -10.5t79.5 -36t52.5 -67t19 -102.5v-354zM339 241h-49q-38 0 -54 -13t-16 -45v-10q0 -26 15 -35t36 -9q18 0 36.5 4.5t31.5 10.5v97zM413 752q0 -25 -9.5 -47.5t-26 -39t-39 -26t-47.5 -9.5t-47 9.5t-38 26t-25 39t-9 47.5 +t9 47.5t25 39t38 26t47 9.5t47.5 -9.5t39 -26t26 -39t9.5 -47.5zM333 753q0 17 -12 29t-29 12t-28.5 -12t-11.5 -29t11.5 -30t28.5 -13t29 13t12 30z" /> + <glyph glyph-name="ae" unicode="&#xe6;" horiz-adv-x="892" +d="M852 262q0 -8 -7 -14.5t-15 -6.5h-306v-34q0 -32 26.5 -44.5t74.5 -12.5q15 0 40 0.5t52 1.5t51 2.5t38 2.5h4q17 0 17 -17v-88q0 -12 -4 -17.5t-15 -10.5q-45 -17 -101.5 -25t-111.5 -8q-37 0 -69 10t-58 28q-43 -18 -85 -28t-89 -10q-255 0 -255 185v11q0 45 19 75.5 +t53.5 49t82.5 26.5t107 8h33v15q0 43 -17.5 57t-46.5 14q-24 0 -49.5 -0.5t-49 -1.5t-42 -2.5t-28.5 -2.5h-2q-8 0 -13 6t-5 14v96q0 18 20 25q12 4 31.5 8t42.5 8t47.5 6.5t47.5 2.5q107 0 172 -53q32 26 69.5 39.5t86.5 13.5q66 0 114 -19.5t79 -54.5t46 -84t15 -109v-62z +M668 355q0 40 -16.5 64.5t-55.5 24.5q-37 0 -54.5 -24.5t-17.5 -64.5v-14h144v14zM340 246h-39q-37 0 -59 -13t-22 -46v-11q0 -32 20 -42t54 -10q14 0 23.5 1.5t22.5 5.5v115z" /> + <glyph glyph-name="ccedilla" unicode="&#xe7;" horiz-adv-x="474" +d="M436 28q0 -10 -5 -14.5t-15 -6.5q-26 -6 -59 -11t-78 -5q-115 0 -177 69t-62 193v75q0 123 62 193t177 70q45 0 80.5 -5.5t56.5 -10.5q10 -2 15 -6.5t5 -14.5v-113q0 -8 -5.5 -13.5t-13.5 -5.5h-2q-26 2 -52 4.5t-63 2.5q-32 0 -50 -22.5t-18 -78.5v-75q0 -56 18 -78 +t50 -22q37 0 63 2l52 4h2q8 0 13.5 -5.5t5.5 -13.5v-112zM353 -43q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-128q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="egrave" unicode="&#xe8;" horiz-adv-x="602" +d="M562 259q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20t79.5 -56 +t47 -86t15.5 -110v-60zM378 346q0 45 -18 70.5t-56 25.5q-36 0 -55 -25.5t-19 -70.5v-3h148v3zM384 640q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="eacute" unicode="&#xe9;" horiz-adv-x="602" +d="M562 259q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20t79.5 -56 +t47 -86t15.5 -110v-60zM378 346q0 45 -18 70.5t-56 25.5q-36 0 -55 -25.5t-19 -70.5v-3h148v3zM504 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="ecircumflex" unicode="&#xea;" horiz-adv-x="602" +d="M562 259q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20t79.5 -56 +t47 -86t15.5 -110v-60zM378 346q0 45 -18 70.5t-56 25.5q-36 0 -55 -25.5t-19 -70.5v-3h148v3zM516 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12 +l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="edieresis" unicode="&#xeb;" horiz-adv-x="602" +d="M562 259q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20t79.5 -56 +t47 -86t15.5 -110v-60zM378 346q0 45 -18 70.5t-56 25.5q-36 0 -55 -25.5t-19 -70.5v-3h148v3zM498 657q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM264 657q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98 +q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="igrave" unicode="&#xec;" horiz-adv-x="313" +d="M253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539zM248 640q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="iacute" unicode="&#xed;" horiz-adv-x="313" +d="M253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539zM352 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="icircumflex" unicode="&#xee;" horiz-adv-x="313" +d="M253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539zM369 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190 +q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="idieresis" unicode="&#xef;" horiz-adv-x="313" +d="M253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539zM354 657q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM120 657q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6 +t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="eth" unicode="&#xf0;" horiz-adv-x="605" +d="M565 266q0 -140 -68.5 -207.5t-193.5 -67.5q-128 0 -195.5 69t-67.5 206v21q0 140 69 207t194 67q6 0 13.5 -0.5t13.5 -3.5q-36 36 -99 66l-67 -51q-8 -6 -13 -6t-11 6l-25 28q-3 3 -3 8q0 9 10 16l37 28q-11 4 -22.5 7.5t-23.5 7.5q-6 2 -11 5t-5 10q0 3 1 5l28 78 +q4 11 14 11q6 0 9 -1q62 -16 119 -39l73 55q7 5 14 5t11 -5l25 -28q4 -6 4 -8q0 -6 -10 -14l-47 -37q116 -63 171.5 -164.5t55.5 -252.5v-21zM373 287q0 64 -17 89.5t-53 25.5t-53.5 -25t-17.5 -90v-21q0 -64 17.5 -89.5t53.5 -25.5t53 25t17 90v21z" /> + <glyph glyph-name="ntilde" unicode="&#xf1;" horiz-adv-x="631" +d="M576 22q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v339q0 40 -14 55t-48 15q-17 0 -37.5 -6t-37.5 -15v-388q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v540q0 8 6 14t14 6h139q8 0 14 -6t6 -14v-23q20 15 38 25t37 15.5t40.5 8t49.5 2.5q55 0 90 -19 +t54 -51t26 -73t7 -86v-339zM524 753q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5t4 16.5 +v17q0 17 17 17h83q17 0 17 -17v-18z" /> + <glyph glyph-name="ograve" unicode="&#xf2;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM374 320q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-58q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v58zM405 640q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8 +l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="oacute" unicode="&#xf3;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM374 320q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-58q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v58zM489 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8 +t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="ocircumflex" unicode="&#xf4;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM374 320q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-58q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v58zM515 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5 +l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="otilde" unicode="&#xf5;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM374 320q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-58q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v58zM512 753q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5 +t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5t4 16.5v17q0 17 17 17h83q17 0 17 -17v-18z" /> + <glyph glyph-name="odieresis" unicode="&#xf6;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM374 320q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-58q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v58zM499 657q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6 +t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM265 657q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="divide" unicode="&#xf7;" +d="M426 562q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v122q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-122zM569 336q0 -8 -6 -12t-14 -4h-432q-8 0 -14 4t-6 12v110q0 8 6 12t14 4h432q8 0 14 -4t6 -12v-110zM426 81q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v122 +q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-122z" /> + <glyph glyph-name="oslash" unicode="&#xf8;" horiz-adv-x="605" +d="M575 608q0 -6 -4 -11l-64 -87q58 -69 58 -190v-58q0 -133 -68 -202t-194 -69q-89 0 -152 37l-39 -53q-5 -7 -8 -8.5t-8 -1.5h-58q-8 0 -8 8q0 6 4 11l65 88q-29 34 -44 81.5t-15 108.5v58q0 133 68.5 202t194.5 69q90 0 152 -37l38 52q5 7 8 8.5t8 1.5h58q8 0 8 -8z +M350 412q-18 18 -47 18q-35 0 -53.5 -25t-18.5 -85v-58v-7v-4zM374 330l-119 -160q18 -19 48 -19q35 0 53 25.5t18 85.5v58v7v3z" /> + <glyph glyph-name="ugrave" unicode="&#xf9;" horiz-adv-x="631" +d="M576 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v23q-27 -20 -64.5 -36t-93.5 -16t-91.5 19t-56 51t-28.5 73.5t-8 86.5v339q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-339q0 -40 12 -55.5t50 -15.5q17 0 37.5 6.5t37.5 15.5v388q0 8 5.5 15t14.5 7h150q9 0 15.5 -7 +t6.5 -15v-540zM416 640q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="uacute" unicode="&#xfa;" horiz-adv-x="631" +d="M576 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v23q-27 -20 -64.5 -36t-93.5 -16t-91.5 19t-56 51t-28.5 73.5t-8 86.5v339q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-339q0 -40 12 -55.5t50 -15.5q17 0 37.5 6.5t37.5 15.5v388q0 8 5.5 15t14.5 7h150q9 0 15.5 -7 +t6.5 -15v-540zM517 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="ucircumflex" unicode="&#xfb;" horiz-adv-x="631" +d="M576 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v23q-27 -20 -64.5 -36t-93.5 -16t-91.5 19t-56 51t-28.5 73.5t-8 86.5v339q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-339q0 -40 12 -55.5t50 -15.5q17 0 37.5 6.5t37.5 15.5v388q0 8 5.5 15t14.5 7h150q9 0 15.5 -7 +t6.5 -15v-540zM528 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="udieresis" unicode="&#xfc;" horiz-adv-x="631" +d="M576 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v23q-27 -20 -64.5 -36t-93.5 -16t-91.5 19t-56 51t-28.5 73.5t-8 86.5v339q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-339q0 -40 12 -55.5t50 -15.5q17 0 37.5 6.5t37.5 15.5v388q0 8 5.5 15t14.5 7h150q9 0 15.5 -7 +t6.5 -15v-540zM515 657q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM281 657q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="yacute" unicode="&#xfd;" horiz-adv-x="621" +d="M604 564q0 -1 -0.5 -2t-0.5 -2l-170 -594q-11 -40 -27 -71.5t-42 -53t-65.5 -33t-98.5 -11.5q-15 0 -34 1.5t-38 4t-36 5.5t-27 7q-8 3 -15.5 7t-7.5 12v97q0 8 6.5 14.5t15.5 6.5h1q14 -1 31.5 -2t36.5 -2.5t37 -2.5t32 -1q21 0 35 8t19 30l8 33h-13q-17 0 -31 2.5 +t-26 13t-22.5 31t-21.5 57.5l-132 441q-1 2 -1 7q0 15 22 15h163q8 0 13 -6t7 -14l79 -344q4 -17 11 -17h8l79 362q3 19 21 19h163q8 0 14.5 -5t6.5 -13zM518 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158 +q11 0 11 -7z" /> + <glyph glyph-name="thorn" unicode="&#xfe;" horiz-adv-x="616" +d="M578 253q0 -120 -65.5 -191t-197.5 -71q-12 0 -33 2.5t-35 5.5v-168q0 -8 -6 -14.5t-14 -6.5h-150q-8 0 -15 6.5t-7 14.5v922q0 8 5.5 14t13.5 6h153q8 0 14 -6t6 -14v-165q31 3 68 3q121 0 192 -67t71 -195v-76zM386 329q0 47 -15.5 74.5t-55.5 27.5q-22 0 -36.5 -1.5 +t-31.5 -3.5v-271q15 -2 31.5 -3t36.5 -1q39 0 55 28t16 74v76z" /> + <glyph glyph-name="ydieresis" unicode="&#xff;" horiz-adv-x="621" +d="M604 564q0 -1 -0.5 -2t-0.5 -2l-170 -594q-11 -40 -27 -71.5t-42 -53t-65.5 -33t-98.5 -11.5q-15 0 -34 1.5t-38 4t-36 5.5t-27 7q-8 3 -15.5 7t-7.5 12v97q0 8 6.5 14.5t15.5 6.5h1q14 -1 31.5 -2t36.5 -2.5t37 -2.5t32 -1q21 0 35 8t19 30l8 33h-13q-17 0 -31 2.5 +t-26 13t-22.5 31t-21.5 57.5l-132 441q-1 2 -1 7q0 15 22 15h163q8 0 13 -6t7 -14l79 -344q4 -17 11 -17h8l79 362q3 19 21 19h163q8 0 14.5 -5t6.5 -13zM515 657q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM281 657 +q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="Amacron" unicode="&#x100;" horiz-adv-x="692" +d="M673 16q0 -16 -16 -16h-174q-8 0 -13 5.5t-7 13.5l-28 139h-178l-28 -139q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q0 -2 0.5 -3t0.5 -2zM357 572 +l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-49 -254h120zM533 825q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="amacron" unicode="&#x101;" horiz-adv-x="575" +d="M525 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v21q-29 -21 -65 -35.5t-78 -14.5q-30 0 -60 9t-55 30t-40.5 55t-15.5 85v12q0 90 66.5 126.5t191.5 36.5h43v29q0 18 -5.5 29.5t-14.5 18t-21 8.5t-25 2q-48 0 -93.5 -1.5t-80.5 -5.5h-3q-19 0 -19 20v97q0 17 20 24 +q12 4 33.5 8t46.5 7.5t52 6t51 2.5q54 0 100 -10.5t79.5 -36t52.5 -67t19 -102.5v-354zM339 241h-49q-38 0 -54 -13t-16 -45v-10q0 -26 15 -35t36 -9q18 0 36.5 4.5t31.5 10.5v97zM477 664q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5 +t6 -13.5v-88z" /> + <glyph glyph-name="Abreve" unicode="&#x102;" horiz-adv-x="692" +d="M673 16q0 -16 -16 -16h-174q-8 0 -13 5.5t-7 13.5l-28 139h-178l-28 -139q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q0 -2 0.5 -3t0.5 -2zM357 572 +l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-49 -254h120zM551 934q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="abreve" unicode="&#x103;" horiz-adv-x="575" +d="M525 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v21q-29 -21 -65 -35.5t-78 -14.5q-30 0 -60 9t-55 30t-40.5 55t-15.5 85v12q0 90 66.5 126.5t191.5 36.5h43v29q0 18 -5.5 29.5t-14.5 18t-21 8.5t-25 2q-48 0 -93.5 -1.5t-80.5 -5.5h-3q-19 0 -19 20v97q0 17 20 24 +q12 4 33.5 8t46.5 7.5t52 6t51 2.5q54 0 100 -10.5t79.5 -36t52.5 -67t19 -102.5v-354zM339 241h-49q-38 0 -54 -13t-16 -45v-10q0 -26 15 -35t36 -9q18 0 36.5 4.5t31.5 10.5v97zM496 773q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6 +h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="Aogonek" unicode="&#x104;" horiz-adv-x="692" +d="M257 158l-28 -139q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 14q0 1 3 16l132 603q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l132 -602q3 -14 3 -16q0 -12 -11 -15l-82 -30q-11 -5 -18.5 -12.5t-7.5 -17.5q0 -15 9.5 -21t31.5 -6 +q19 0 39 4.5t28 4.5q7 0 8.5 -2t1.5 -10v-76q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 33 13.5 56t45.5 44l-32 162h-178zM357 572l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-49 -254h120z" /> + <glyph glyph-name="aogonek" unicode="&#x105;" horiz-adv-x="575" +d="M525 20q0 -8 -3 -12t-12 -8l-75 -30q-11 -5 -18.5 -12.5t-7.5 -17.5q0 -15 9.5 -21t31.5 -6q19 0 39 4.5t28 4.5q7 0 8.5 -2t1.5 -10v-76q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 35 16 59t55 47l12 7v32 +q-29 -21 -65 -35.5t-78 -14.5q-30 0 -60 9t-55 30t-40.5 55t-15.5 85v12q0 90 66.5 126.5t191.5 36.5h43v29q0 18 -5.5 29.5t-14.5 18t-21 8.5t-25 2q-48 0 -93.5 -1.5t-80.5 -5.5h-3q-19 0 -19 20v97q0 17 20 24q12 4 33.5 8t46.5 7.5t52 6t51 2.5q54 0 100 -10.5t79.5 -36 +t52.5 -67t19 -102.5v-354zM339 241h-49q-38 0 -54 -13t-16 -45v-10q0 -26 15 -35t36 -9q18 0 36.5 4.5t31.5 10.5v97z" /> + <glyph glyph-name="Cacute" unicode="&#x106;" horiz-adv-x="555" +d="M517 31q0 -10 -5 -14t-17 -8q-20 -7 -56 -12.5t-84 -5.5q-69 0 -126 19t-97.5 59.5t-62.5 102.5t-22 148v103q0 86 22 148t62.5 102.5t97.5 59.5t126 19q48 0 84 -5.5t56 -12.5q12 -4 17 -7.5t5 -14.5v-128q0 -19 -18 -19h-3q-31 3 -64 6t-76 3q-20 0 -39 -5.5t-33 -22 +t-22.5 -46t-8.5 -77.5v-103q0 -47 8.5 -76.5t22.5 -46t32.5 -22.5t39.5 -6q43 0 76 3t64 6h3q18 0 18 -19v-128zM492 933q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="cacute" unicode="&#x107;" horiz-adv-x="474" +d="M436 28q0 -10 -5 -14.5t-15 -6.5q-26 -6 -59 -11t-78 -5q-115 0 -177 69t-62 193v75q0 123 62 193t177 70q45 0 80.5 -5.5t56.5 -10.5q10 -2 15 -6.5t5 -14.5v-113q0 -8 -5.5 -13.5t-13.5 -5.5h-2q-26 2 -52 4.5t-63 2.5q-32 0 -50 -22.5t-18 -78.5v-75q0 -56 18 -78 +t50 -22q37 0 63 2l52 4h2q8 0 13.5 -5.5t5.5 -13.5v-112zM440 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="Ccircumflex" unicode="&#x108;" horiz-adv-x="555" +d="M517 31q0 -10 -5 -14t-17 -8q-20 -7 -56 -12.5t-84 -5.5q-69 0 -126 19t-97.5 59.5t-62.5 102.5t-22 148v103q0 86 22 148t62.5 102.5t97.5 59.5t126 19q48 0 84 -5.5t56 -12.5q12 -4 17 -7.5t5 -14.5v-128q0 -19 -18 -19h-3q-31 3 -64 6t-76 3q-20 0 -39 -5.5t-33 -22 +t-22.5 -46t-8.5 -77.5v-103q0 -47 8.5 -76.5t22.5 -46t32.5 -22.5t39.5 -6q43 0 76 3t64 6h3q18 0 18 -19v-128zM509 802q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190 +q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="ccircumflex" unicode="&#x109;" horiz-adv-x="474" +d="M436 28q0 -10 -5 -14.5t-15 -6.5q-26 -6 -59 -11t-78 -5q-115 0 -177 69t-62 193v75q0 123 62 193t177 70q45 0 80.5 -5.5t56.5 -10.5q10 -2 15 -6.5t5 -14.5v-113q0 -8 -5.5 -13.5t-13.5 -5.5h-2q-26 2 -52 4.5t-63 2.5q-32 0 -50 -22.5t-18 -78.5v-75q0 -56 18 -78 +t50 -22q37 0 63 2l52 4h2q8 0 13.5 -5.5t5.5 -13.5v-112zM463 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="Cdotaccent" unicode="&#x10a;" horiz-adv-x="555" +d="M517 31q0 -10 -5 -14t-17 -8q-20 -7 -56 -12.5t-84 -5.5q-69 0 -126 19t-97.5 59.5t-62.5 102.5t-22 148v103q0 86 22 148t62.5 102.5t97.5 59.5t126 19q48 0 84 -5.5t56 -12.5q12 -4 17 -7.5t5 -14.5v-128q0 -19 -18 -19h-3q-31 3 -64 6t-76 3q-20 0 -39 -5.5t-33 -22 +t-22.5 -46t-8.5 -77.5v-103q0 -47 8.5 -76.5t22.5 -46t32.5 -22.5t39.5 -6q43 0 76 3t64 6h3q18 0 18 -19v-128zM415 825q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109z" /> + <glyph glyph-name="cdotaccent" unicode="&#x10b;" horiz-adv-x="474" +d="M436 28q0 -10 -5 -14.5t-15 -6.5q-26 -6 -59 -11t-78 -5q-115 0 -177 69t-62 193v75q0 123 62 193t177 70q45 0 80.5 -5.5t56.5 -10.5q10 -2 15 -6.5t5 -14.5v-113q0 -8 -5.5 -13.5t-13.5 -5.5h-2q-26 2 -52 4.5t-63 2.5q-32 0 -50 -22.5t-18 -78.5v-75q0 -56 18 -78 +t50 -22q37 0 63 2l52 4h2q8 0 13.5 -5.5t5.5 -13.5v-112zM356 653q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109z" /> + <glyph glyph-name="Ccaron" unicode="&#x10c;" horiz-adv-x="555" +d="M517 31q0 -10 -5 -14t-17 -8q-20 -7 -56 -12.5t-84 -5.5q-69 0 -126 19t-97.5 59.5t-62.5 102.5t-22 148v103q0 86 22 148t62.5 102.5t97.5 59.5t126 19q48 0 84 -5.5t56 -12.5q12 -4 17 -7.5t5 -14.5v-128q0 -19 -18 -19h-3q-31 3 -64 6t-76 3q-20 0 -39 -5.5t-33 -22 +t-22.5 -46t-8.5 -77.5v-103q0 -47 8.5 -76.5t22.5 -46t32.5 -22.5t39.5 -6q43 0 76 3t64 6h3q18 0 18 -19v-128zM528 933q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57 +q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="ccaron" unicode="&#x10d;" horiz-adv-x="474" +d="M436 28q0 -10 -5 -14.5t-15 -6.5q-26 -6 -59 -11t-78 -5q-115 0 -177 69t-62 193v75q0 123 62 193t177 70q45 0 80.5 -5.5t56.5 -10.5q10 -2 15 -6.5t5 -14.5v-113q0 -8 -5.5 -13.5t-13.5 -5.5h-2q-26 2 -52 4.5t-63 2.5q-32 0 -50 -22.5t-18 -78.5v-75q0 -56 18 -78 +t50 -22q37 0 63 2l52 4h2q8 0 13.5 -5.5t5.5 -13.5v-112zM475 772q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="Dcaron" unicode="&#x10e;" horiz-adv-x="696" +d="M651 317q0 -84 -23 -145.5t-65 -101.5t-102 -59.5t-135 -19.5q-72 0 -131 5t-98 12q-17 3 -24.5 11t-7.5 28v650q0 20 7.5 28t24.5 11q39 7 98 12t131 5q74 0 134 -19.5t102.5 -59.5t65.5 -101.5t23 -145.5v-110zM446 427q0 45 -7.5 74.5t-22.5 46.5t-37.5 24t-52.5 7 +h-13t-17 -0.5t-16.5 -0.5h-10.5v-413q3 0 10 -0.5t16 -0.5h17.5h13.5q30 0 52.5 7t37.5 24t22.5 47t7.5 75v110zM564 934q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57 +q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="dcaron" unicode="&#x10f;" horiz-adv-x="841" +d="M561 48q0 -13 -6 -20t-29 -12q-39 -8 -97.5 -16.5t-126.5 -8.5q-124 0 -193.5 66.5t-69.5 194.5v78q0 60 16 108t49 82t82.5 52.5t115.5 18.5q12 0 32 -2.5l36 -4.5v169q0 8 6 14t14 6h149q8 0 15 -6t7 -14v-705zM370 428q-15 2 -32.5 3t-35.5 1q-42 0 -57 -28.5 +t-15 -73.5v-78q0 -45 15 -74t57 -29q22 0 38 1.5t30 3.5v274zM851 762q0 -2 -2 -8l-100 -230q-4 -10 -7.5 -14.5t-11.5 -4.5h-109q-12 0 -12 11q0 5 1 8l65 230q4 19 20 19h144q12 0 12 -11z" /> + <glyph glyph-name="Dcroat" unicode="&#x110;" horiz-adv-x="696" +d="M651 324q0 -89 -23.5 -152t-66.5 -103.5t-102.5 -59t-132.5 -18.5q-78 0 -133 4.5t-98 12.5q-17 3 -24.5 11t-7.5 28v251h-51q-8 0 -14 6t-6 14v119q0 8 6 13.5t14 5.5h51v240q0 20 7.5 28t24.5 11q43 8 98 13t133 5q72 0 132 -18.5t103 -58.5t66.5 -103.5t23.5 -152.5 +v-96zM445 420q0 46 -7 76.5t-21.5 48.5t-37 25.5t-53.5 7.5q-17 0 -35 -0.5t-24 -0.5v-121h53q19 0 19 -19v-119q0 -8 -5.5 -14t-13.5 -6h-53v-131q5 -1 24.5 -1h34.5q31 0 53.5 7t37 25t21.5 48.5t7 77.5v96z" /> + <glyph glyph-name="dcroat" unicode="&#x111;" horiz-adv-x="616" +d="M561 48q0 -13 -6 -20t-29 -12q-39 -8 -97.5 -16.5t-126.5 -8.5q-124 0 -193.5 66.5t-69.5 194.5v78q0 60 16 108t49 82t82.5 52.5t115.5 18.5q12 0 32 -2.5l36 -4.5v49h-114q-8 0 -14 6t-6 14v49q0 8 6 13.5t14 5.5h114v32q0 8 6 14t14 6h149q8 0 15 -6t7 -14v-32h36 +q19 0 19 -19v-49q0 -8 -5.5 -14t-13.5 -6h-36v-585zM370 428q-15 2 -32.5 3t-35.5 1q-42 0 -57 -28.5t-15 -73.5v-78q0 -45 15 -74t57 -29q22 0 38 1.5t30 3.5v274z" /> + <glyph glyph-name="Emacron" unicode="&#x112;" horiz-adv-x="585" +d="M490 825q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88zM532 23q0 -17 -20 -20q-29 -4 -76.5 -8t-120.5 -4q-48 0 -94 7.5t-82 31.5t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8 +q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122z" /> + <glyph glyph-name="emacron" unicode="&#x113;" horiz-adv-x="602" +d="M562 259q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20t79.5 -56 +t47 -86t15.5 -110v-60zM378 346q0 45 -18 70.5t-56 25.5q-36 0 -55 -25.5t-19 -70.5v-3h148v3zM491 664q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="Ebreve" unicode="&#x114;" horiz-adv-x="585" +d="M532 23q0 -17 -20 -20q-29 -4 -76.5 -8t-120.5 -4q-48 0 -94 7.5t-82 31.5t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118 +q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122zM522 945q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118 +q9 0 9 -6z" /> + <glyph glyph-name="ebreve" unicode="&#x115;" horiz-adv-x="602" +d="M562 259q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20t79.5 -56 +t47 -86t15.5 -110v-60zM378 346q0 45 -18 70.5t-56 25.5q-36 0 -55 -25.5t-19 -70.5v-3h148v3zM510 783q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5 +h118q9 0 9 -6z" /> + <glyph glyph-name="Edotaccent" unicode="&#x116;" horiz-adv-x="585" +d="M386 818q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109zM532 23q0 -17 -20 -20q-29 -4 -76.5 -8t-120.5 -4q-48 0 -94 7.5t-82 31.5t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8 +q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122z" /> + <glyph glyph-name="edotaccent" unicode="&#x117;" horiz-adv-x="602" +d="M562 259q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20t79.5 -56 +t47 -86t15.5 -110v-60zM378 346q0 45 -18 70.5t-56 25.5q-36 0 -55 -25.5t-19 -70.5v-3h148v3zM395 664q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109z" /> + <glyph glyph-name="Eogonek" unicode="&#x118;" horiz-adv-x="585" +d="M532 -166q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 31 12 53t41 42h-6q-48 0 -94 7.5t-82 31.5t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6 +h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122q0 -17 -20 -20q-6 -1 -13 -2t-15 -1l-44 -30q-11 -7 -18.5 -13.5t-7.5 -16.5q0 -15 9.5 -21t31.5 -6q19 0 39 4.5 +t28 4.5q7 0 8.5 -2t1.5 -10v-76v0z" /> + <glyph glyph-name="eogonek" unicode="&#x119;" horiz-adv-x="602" +d="M540 -166q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 32 12 54t41 42q-7 -1 -14 -1h-15q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20t79.5 -56t47 -86t15.5 -110v-60 +q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -8 -2.5 -16t-8.5 -12l-78 -52q-11 -7 -18.5 -13.5t-7.5 -16.5q0 -15 9.5 -21t31.5 -6q19 0 39 4.5t28 4.5q7 0 8.5 -2t1.5 -10v-76zM378 346q0 45 -18 70.5t-56 25.5 +q-36 0 -55 -25.5t-19 -70.5v-3h148v3z" /> + <glyph glyph-name="Ecaron" unicode="&#x11a;" horiz-adv-x="585" +d="M515 934q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7zM532 23q0 -17 -20 -20q-29 -4 -76.5 -8t-120.5 -4q-48 0 -94 7.5t-82 31.5 +t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122z +" /> + <glyph glyph-name="ecaron" unicode="&#x11b;" horiz-adv-x="602" +d="M562 259q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20t79.5 -56 +t47 -86t15.5 -110v-60zM378 346q0 45 -18 70.5t-56 25.5q-36 0 -55 -25.5t-19 -70.5v-3h148v3zM517 772q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5 +t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="Gcircumflex" unicode="&#x11c;" horiz-adv-x="657" +d="M599 38q0 -11 -4.5 -16t-16.5 -7q-43 -9 -100.5 -16.5t-130.5 -7.5q-30 0 -64 5.5t-67.5 19.5t-64.5 37.5t-54.5 60t-37.5 87t-14 118.5v105q0 103 30 167t76 100t102 49t108 13q78 0 133 -9.5t86 -17.5q11 -3 15 -6t4 -13v-126q0 -16 -14 -16h-3q-29 2 -83 5.5t-110 3.5 +q-36 0 -62 -6.5t-43 -23t-25 -46t-8 -74.5v-106q0 -50 9.5 -80.5t24 -46.5t31 -21t31.5 -5q29 0 55 3v205q0 8 5.5 14t13.5 6h158q8 0 14 -6t6 -14v-335zM566 802q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7 +q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="gcircumflex" unicode="&#x11d;" horiz-adv-x="614" +d="M598 487q0 -17 -20 -22l-28 -8q8 -14 13 -33t5 -33v-11q0 -101 -68.5 -146t-189.5 -45q-30 0 -56.5 3.5t-41.5 8.5q-13 -9 -13 -21q0 -8 4.5 -13.5t18.5 -8.5l112 -23q48 -10 92.5 -21t78.5 -28.5t54.5 -45t20.5 -69.5v-7q0 -88 -70.5 -128.5t-208.5 -40.5 +q-128 0 -194 45.5t-66 123.5v7q0 22 13.5 53t42.5 54q-19 14 -33 33t-14 55q0 35 14.5 54.5t32.5 36.5q-17 15 -26.5 31.5t-14 33t-6 31.5t-1.5 27v11q0 94 64 142.5t197 48.5h265q10 0 16.5 -7t6.5 -17v-71zM382 391q0 26 -15 42.5t-57 16.5t-57 -16.5t-15 -42.5v-11 +q0 -12 3 -22.5t10.5 -18.5t21.5 -12.5t37 -4.5q42 0 57 16t15 42v11zM380 -29q0 7 -2.5 12.5t-11.5 11t-26 11t-46 11.5l-60 13q-7 -9 -11 -25t-4 -34v-7q0 -20 18.5 -32t63.5 -12q25 0 41 3.5t24 9.5t11 14t3 17v7zM521 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5 +l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="Gbreve" unicode="&#x11e;" horiz-adv-x="657" +d="M599 38q0 -11 -4.5 -16t-16.5 -7q-43 -9 -100.5 -16.5t-130.5 -7.5q-30 0 -64 5.5t-67.5 19.5t-64.5 37.5t-54.5 60t-37.5 87t-14 118.5v105q0 103 30 167t76 100t102 49t108 13q78 0 133 -9.5t86 -17.5q11 -3 15 -6t4 -13v-126q0 -16 -14 -16h-3q-29 2 -83 5.5t-110 3.5 +q-36 0 -62 -6.5t-43 -23t-25 -46t-8 -74.5v-106q0 -50 9.5 -80.5t24 -46.5t31 -21t31.5 -5q29 0 55 3v205q0 8 5.5 14t13.5 6h158q8 0 14 -6t6 -14v-335zM557 944q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5 +t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="gbreve" unicode="&#x11f;" horiz-adv-x="614" +d="M598 487q0 -17 -20 -22l-28 -8q8 -14 13 -33t5 -33v-11q0 -101 -68.5 -146t-189.5 -45q-30 0 -56.5 3.5t-41.5 8.5q-13 -9 -13 -21q0 -8 4.5 -13.5t18.5 -8.5l112 -23q48 -10 92.5 -21t78.5 -28.5t54.5 -45t20.5 -69.5v-7q0 -88 -70.5 -128.5t-208.5 -40.5 +q-128 0 -194 45.5t-66 123.5v7q0 22 13.5 53t42.5 54q-19 14 -33 33t-14 55q0 35 14.5 54.5t32.5 36.5q-17 15 -26.5 31.5t-14 33t-6 31.5t-1.5 27v11q0 94 64 142.5t197 48.5h265q10 0 16.5 -7t6.5 -17v-71zM382 391q0 26 -15 42.5t-57 16.5t-57 -16.5t-15 -42.5v-11 +q0 -12 3 -22.5t10.5 -18.5t21.5 -12.5t37 -4.5q42 0 57 16t15 42v11zM380 -29q0 7 -2.5 12.5t-11.5 11t-26 11t-46 11.5l-60 13q-7 -9 -11 -25t-4 -34v-7q0 -20 18.5 -32t63.5 -12q25 0 41 3.5t24 9.5t11 14t3 17v7zM515 780q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5 +t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="Gdotaccent" unicode="&#x120;" horiz-adv-x="657" +d="M599 38q0 -11 -4.5 -16t-16.5 -7q-43 -9 -100.5 -16.5t-130.5 -7.5q-30 0 -64 5.5t-67.5 19.5t-64.5 37.5t-54.5 60t-37.5 87t-14 118.5v105q0 103 30 167t76 100t102 49t108 13q78 0 133 -9.5t86 -17.5q11 -3 15 -6t4 -13v-126q0 -16 -14 -16h-3q-29 2 -83 5.5t-110 3.5 +q-36 0 -62 -6.5t-43 -23t-25 -46t-8 -74.5v-106q0 -50 9.5 -80.5t24 -46.5t31 -21t31.5 -5q29 0 55 3v205q0 8 5.5 14t13.5 6h158q8 0 14 -6t6 -14v-335zM444 825q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109z" /> + <glyph glyph-name="gdotaccent" unicode="&#x121;" horiz-adv-x="614" +d="M598 487q0 -17 -20 -22l-28 -8q8 -14 13 -33t5 -33v-11q0 -101 -68.5 -146t-189.5 -45q-30 0 -56.5 3.5t-41.5 8.5q-13 -9 -13 -21q0 -8 4.5 -13.5t18.5 -8.5l112 -23q48 -10 92.5 -21t78.5 -28.5t54.5 -45t20.5 -69.5v-7q0 -88 -70.5 -128.5t-208.5 -40.5 +q-128 0 -194 45.5t-66 123.5v7q0 22 13.5 53t42.5 54q-19 14 -33 33t-14 55q0 35 14.5 54.5t32.5 36.5q-17 15 -26.5 31.5t-14 33t-6 31.5t-1.5 27v11q0 94 64 142.5t197 48.5h265q10 0 16.5 -7t6.5 -17v-71zM382 391q0 26 -15 42.5t-57 16.5t-57 -16.5t-15 -42.5v-11 +q0 -12 3 -22.5t10.5 -18.5t21.5 -12.5t37 -4.5q42 0 57 16t15 42v11zM380 -29q0 7 -2.5 12.5t-11.5 11t-26 11t-46 11.5l-60 13q-7 -9 -11 -25t-4 -34v-7q0 -20 18.5 -32t63.5 -12q25 0 41 3.5t24 9.5t11 14t3 17v7zM406 653q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14 +v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109z" /> + <glyph glyph-name="uni0122" unicode="&#x122;" horiz-adv-x="657" +d="M599 38q0 -11 -4.5 -16t-16.5 -7q-43 -9 -100.5 -16.5t-130.5 -7.5q-30 0 -64 5.5t-67.5 19.5t-64.5 37.5t-54.5 60t-37.5 87t-14 118.5v105q0 103 30 167t76 100t102 49t108 13q78 0 133 -9.5t86 -17.5q11 -3 15 -6t4 -13v-126q0 -16 -14 -16h-3q-29 2 -83 5.5t-110 3.5 +q-36 0 -62 -6.5t-43 -23t-25 -46t-8 -74.5v-106q0 -50 9.5 -80.5t24 -46.5t31 -21t31.5 -5q29 0 55 3v205q0 8 5.5 14t13.5 6h158q8 0 14 -6t6 -14v-335zM461 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146 +q14 0 14 -12z" /> + <glyph glyph-name="uni0123" unicode="&#x123;" horiz-adv-x="614" +d="M598 487q0 -17 -20 -22l-28 -8q8 -14 13 -33t5 -33v-11q0 -101 -68.5 -146t-189.5 -45q-30 0 -56.5 3.5t-41.5 8.5q-13 -9 -13 -21q0 -8 4.5 -13.5t18.5 -8.5l112 -23q48 -10 92.5 -21t78.5 -28.5t54.5 -45t20.5 -69.5v-7q0 -88 -70.5 -128.5t-208.5 -40.5 +q-128 0 -194 45.5t-66 123.5v7q0 22 13.5 53t42.5 54q-19 14 -33 33t-14 55q0 35 14.5 54.5t32.5 36.5q-17 15 -26.5 31.5t-14 33t-6 31.5t-1.5 27v11q0 94 64 142.5t197 48.5h265q10 0 16.5 -7t6.5 -17v-71zM382 391q0 26 -15 42.5t-57 16.5t-57 -16.5t-15 -42.5v-11 +q0 -12 3 -22.5t10.5 -18.5t21.5 -12.5t37 -4.5q42 0 57 16t15 42v11zM380 -29q0 7 -2.5 12.5t-11.5 11t-26 11t-46 11.5l-60 13q-7 -9 -11 -25t-4 -34v-7q0 -20 18.5 -32t63.5 -12q25 0 41 3.5t24 9.5t11 14t3 17v7zM228 645q0 1 2 7l57 108q8 20 22 20h112q15 0 15 -12 +q0 -5 -1 -8l-27 -108q-5 -19 -20 -19h-146q-14 0 -14 12z" /> + <glyph glyph-name="Hcircumflex" unicode="&#x124;" horiz-adv-x="746" +d="M681 20q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v272h-209v-272q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v704q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-256h209v256q0 8 6 13.5t14 5.5h163q8 0 14 -5.5t6 -13.5v-704zM584 802q0 -7 -9 -7h-124 +q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="hcircumflex" unicode="&#x125;" horiz-adv-x="632" +d="M578 20q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v345q0 40 -16 53t-47 13q-35 0 -76 -22v-387q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v731q0 8 6 14t14 6h152q8 0 14 -6t6 -14v-201q32 23 67 30.5t81 7.5q54 0 89.5 -17.5t56 -48.5t29 -72t8.5 -87v-345z +M541 802q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="Hbar" unicode="&#x126;" horiz-adv-x="746" +d="M681 20q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v272h-209v-272q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v533h-46q-8 0 -13.5 6t-5.5 14v69q0 19 19 19h46v63q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-63h209v63q0 8 6 13.5t14 5.5h163q8 0 14 -5.5 +t6 -13.5v-63h45q8 0 14 -5.5t6 -13.5v-69q0 -8 -6 -14t-14 -6h-45v-533zM478 468v85h-209v-85h209z" /> + <glyph glyph-name="hbar" unicode="&#x127;" horiz-adv-x="632" +d="M247 633v-81q32 23 67 30.5t81 7.5q54 0 89.5 -17.5t56 -48.5t29 -72t8.5 -87v-345q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v345q0 40 -16 53t-47 13q-35 0 -76 -22v-387q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v611h-36q-8 0 -13.5 6t-5.5 14v49 +q0 19 19 19h36v32q0 8 6 14t14 6h152q8 0 14 -6t6 -14v-32h113q8 0 14 -5.5t6 -13.5v-49q0 -8 -6 -14t-14 -6h-113z" /> + <glyph glyph-name="Itilde" unicode="&#x128;" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704zM377 919q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98 +t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5t4 16.5v17q0 17 17 17h83q17 0 17 -17v-18z" /> + <glyph glyph-name="itilde" unicode="&#x129;" horiz-adv-x="313" +d="M253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539zM365 754q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98 +t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5t4 16.5v17q0 17 17 17h83q17 0 17 -17v-18z" /> + <glyph glyph-name="Imacron" unicode="&#x12a;" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704zM356 825q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="imacron" unicode="&#x12b;" horiz-adv-x="313" +d="M253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539zM346 664q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="Ibreve" unicode="&#x12c;" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704zM373 935q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37 +q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="ibreve" unicode="&#x12d;" horiz-adv-x="313" +d="M253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539zM362 783q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37 +q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="Iogonek" unicode="&#x12e;" horiz-adv-x="334" +d="M269 20q0 -8 -2 -11t-7 -6l-59 -27q-22 -10 -31 -17t-9 -20q0 -14 9.5 -20t37.5 -6q20 0 41.5 4.5t29.5 4.5q7 0 8.5 -2t1.5 -10v-76q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-29 0 -56 2.5t-48 12.5t-34 29.5t-13 52.5q0 35 15 61t41 46v721q0 8 6 13.5 +t14 5.5h164q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="iogonek" unicode="&#x12f;" horiz-adv-x="313" +d="M258 657q0 -8 -7 -14t-15 -6h-158q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h158q8 0 15 -6t7 -14v-98zM60 561q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-542q0 -13 -9 -18l-49 -25q-21 -11 -30.5 -17.5t-9.5 -19.5q0 -14 9.5 -20t37.5 -6q20 0 41.5 4.5t29.5 4.5 +q7 0 8.5 -2t1.5 -10v-76q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-20 0 -46 2.5t-49.5 12.5t-39.5 29.5t-16 52.5q0 35 15.5 61t41.5 46v558z" /> + <glyph glyph-name="Idotaccent" unicode="&#x130;" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704zM260 815q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109z" /> + <glyph glyph-name="dotlessi" unicode="&#x131;" horiz-adv-x="313" +d="M253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539v0z" /> + <glyph glyph-name="IJ" unicode="&#x132;" horiz-adv-x="668" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704zM603 2q0 -58 -13 -95.5t-36 -59.5t-56 -30.5t-72 -8.5q-21 0 -44 1.5t-47 5.5q-12 2 -16 7t-4 13v109q0 8 6 14t14 6h37q17 0 22 9.5t5 28.5v721q0 8 6.5 14 +t14.5 6h163q8 0 14 -6t6 -14v-721z" /> + <glyph glyph-name="ij" unicode="&#x133;" horiz-adv-x="625" +d="M258 657q0 -8 -7 -14t-15 -6h-158q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h158q8 0 15 -6t7 -14v-98zM253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539zM570 657q0 -8 -7 -14t-15 -6h-157q-8 0 -15 6t-7 14v98 +q0 8 7 14t15 6h157q8 0 15 -6t7 -14v-98zM566 -21q0 -54 -12.5 -89.5t-34.5 -57t-53.5 -30t-68.5 -8.5q-23 0 -45.5 2t-48.5 7q-20 3 -20 21v93q0 8 6 14t15 6h43q18 0 22 11t4 31v582q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-582z" /> + <glyph glyph-name="Jcircumflex" unicode="&#x134;" horiz-adv-x="334" +d="M269 2q0 -58 -13 -95.5t-36 -59.5t-56 -30.5t-72 -8.5q-21 0 -44 1.5t-47 5.5q-12 2 -16 7t-4 13v109q0 8 6 14t14 6h37q17 0 22 9.5t5 28.5v721q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-721zM382 802q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59 +q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="jcircumflex" unicode="&#x135;" horiz-adv-x="312" +d="M253 -21q0 -54 -12.5 -89.5t-34.5 -57t-53.5 -30t-68.5 -8.5q-23 0 -45.5 2t-48.5 7q-20 3 -20 21v93q0 8 6 14t15 6h43q18 0 22 11t4 31v582q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-582zM371 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59 +q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="uni0136" unicode="&#x136;" horiz-adv-x="713" +d="M689 11q0 -11 -13 -11h-210q-9 0 -13 5t-8 12l-176 319v-316q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v704q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-317l192 320q4 7 9 11.5t13 4.5h192q14 0 14 -11q0 -6 -4 -11l-218 -344l219 -356q3 -5 3 -10zM445 -65 +q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="uni0137" unicode="&#x137;" horiz-adv-x="627" +d="M603 14q0 -5 -3.5 -9.5t-9.5 -4.5h-185q-19 0 -31 22l-127 228v-228q0 -8 -6 -15t-14 -7h-150q-8 0 -15 7t-7 15v731q0 8 7 14t15 6h150q8 0 14 -6t6 -14v-418l137 229q7 12 14 15t15 3h173q14 0 14 -12q0 -5 -3 -9l-173 -259l177 -280q2 -3 2 -8zM401 -65q0 -1 -2 -7 +l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="kgreenlandic" unicode="&#x138;" horiz-adv-x="627" +d="M603 14q0 -5 -3.5 -9.5t-9.5 -4.5h-185q-19 0 -31 22l-127 228v-228q0 -8 -6 -15t-14 -7h-150q-8 0 -15 7t-7 15v540q0 8 7 14t15 6h150q8 0 14 -6t6 -14v-227l137 229q7 12 14 15t15 3h173q14 0 14 -12q0 -5 -3 -9l-173 -259l177 -280q2 -3 2 -8z" /> + <glyph glyph-name="Lacute" unicode="&#x139;" horiz-adv-x="522" +d="M499 23q0 -17 -20 -20q-14 -3 -32.5 -5t-39.5 -3.5t-43 -2.5t-42 -1q-48 0 -94 7.5t-82.5 31.5t-58.5 68t-22 117v508q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-508q0 -29 10.5 -39.5t37.5 -10.5h162q8 0 14 -6t6 -14v-122zM442 934q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8 +t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="lacute" unicode="&#x13a;" horiz-adv-x="303" +d="M248 22q0 -8 -6 -15t-14 -7h-151q-8 0 -15 7t-7 15v731q0 8 7 14t15 6h151q8 0 14 -6t6 -14v-731zM332 934q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="uni013B" unicode="&#x13b;" horiz-adv-x="522" +d="M499 23q0 -17 -20 -20q-14 -3 -32.5 -5t-39.5 -3.5t-43 -2.5t-42 -1q-48 0 -94 7.5t-82.5 31.5t-58.5 68t-22 117v508q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-508q0 -29 10.5 -39.5t37.5 -10.5h162q8 0 14 -6t6 -14v-122zM365 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14 +t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="uni013C" unicode="&#x13c;" horiz-adv-x="303" +d="M248 22q0 -8 -6 -15t-14 -7h-151q-8 0 -15 7t-7 15v731q0 8 7 14t15 6h151q8 0 14 -6t6 -14v-731zM241 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="Lcaron" unicode="&#x13d;" horiz-adv-x="522" +d="M499 23q0 -17 -20 -20q-14 -3 -32.5 -5t-39.5 -3.5t-43 -2.5t-42 -1q-48 0 -94 7.5t-82.5 31.5t-58.5 68t-22 117v508q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-508q0 -29 10.5 -39.5t37.5 -10.5h162q8 0 14 -6t6 -14v-122zM579 761q0 -2 -2 -8l-100 -230 +q-4 -10 -7.5 -14.5t-11.5 -4.5h-109q-12 0 -12 11q0 5 1 8l65 230q4 19 20 19h144q12 0 12 -11z" /> + <glyph glyph-name="lcaron" unicode="&#x13e;" horiz-adv-x="548" +d="M248 22q0 -8 -6 -15t-14 -7h-151q-8 0 -15 7t-7 15v731q0 8 7 14t15 6h151q8 0 14 -6t6 -14v-731zM548 762q0 -2 -2 -8l-100 -230q-4 -10 -7.5 -14.5t-11.5 -4.5h-109q-12 0 -12 11q0 5 1 8l65 230q4 19 20 19h144q12 0 12 -11z" /> + <glyph glyph-name="Ldot" unicode="&#x13f;" horiz-adv-x="522" +d="M499 23q0 -17 -20 -20q-14 -3 -32.5 -5t-39.5 -3.5t-43 -2.5t-42 -1q-48 0 -94 7.5t-82.5 31.5t-58.5 68t-22 117v508q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-508q0 -29 10.5 -39.5t37.5 -10.5h162q8 0 14 -6t6 -14v-122zM499 310q0 -8 -6.5 -14t-14.5 -6h-146 +q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109z" /> + <glyph glyph-name="ldot" unicode="&#x140;" horiz-adv-x="521" +d="M248 22q0 -8 -6 -15t-14 -7h-151q-8 0 -15 7t-7 15v731q0 8 7 14t15 6h151q8 0 14 -6t6 -14v-731zM466 310q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109z" /> + <glyph glyph-name="Lslash" unicode="&#x141;" horiz-adv-x="522" +d="M499 23q0 -17 -20 -20q-28 -5 -72.5 -8.5t-84.5 -3.5q-46 0 -88 7t-76.5 28.5t-58 60.5t-32.5 103q-1 1 -1 7v2v2l-34 -32q-5 -5 -9 -5q-5 0 -5 7v167v3q0 4 1 7.5t6 8.5l40 37v329q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-145l60 55q5 5 9 5q7 0 7 -9v-164 +q0 -6 -1 -9.5t-6 -8.5l-69 -63v-169q0 -29 11 -39.5t38 -10.5h162q8 0 14 -6t6 -14v-122v0z" /> + <glyph glyph-name="lslash" unicode="&#x142;" horiz-adv-x="303" +d="M314 465q0 -6 -1 -9.5t-6 -8.5l-59 -55v-370q0 -8 -6.5 -15t-14.5 -7h-150q-8 0 -15 7t-7 15v195l-52 -48q-5 -5 -9 -5q-5 0 -5 7v167v3q0 4 1 7.5t6 8.5l59 54v342q0 8 7 14t15 6h150q8 0 14.5 -6t6.5 -14v-166l50 46q5 5 9 5q7 0 7 -9v-164v0z" /> + <glyph glyph-name="Nacute" unicode="&#x143;" horiz-adv-x="746" +d="M681 37q0 -15 -11 -26t-26 -11h-134q-26 0 -42 27l-197 335q-5 8 -10 8t-5 -9v-341q0 -8 -6 -14t-14 -6h-150q-8 0 -14.5 6t-6.5 14v686q0 15 11 26t26 11h132q14 0 23 -7.5t17 -21.5l203 -345q5 -9 9 -9q2 0 3.5 1.5t1.5 7.5v354q0 8 6 14t14 6h150q8 0 14 -6t6 -14 +v-686zM557 934q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="nacute" unicode="&#x144;" horiz-adv-x="631" +d="M576 22q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v339q0 40 -14 55t-48 15q-17 0 -37.5 -6t-37.5 -15v-388q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v540q0 8 6 14t14 6h139q8 0 14 -6t6 -14v-23q20 15 38 25t37 15.5t40.5 8t49.5 2.5q55 0 90 -19 +t54 -51t26 -73t7 -86v-339zM497 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="uni0145" unicode="&#x145;" horiz-adv-x="746" +d="M681 37q0 -15 -11 -26t-26 -11h-134q-26 0 -42 27l-197 335q-5 8 -10 8t-5 -9v-341q0 -8 -6 -14t-14 -6h-150q-8 0 -14.5 6t-6.5 14v686q0 15 11 26t26 11h132q14 0 23 -7.5t17 -21.5l203 -345q5 -9 9 -9q2 0 3.5 1.5t1.5 7.5v354q0 8 6 14t14 6h150q8 0 14 -6t6 -14 +v-686zM465 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="uni0146" unicode="&#x146;" horiz-adv-x="631" +d="M576 22q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v339q0 40 -14 55t-48 15q-17 0 -37.5 -6t-37.5 -15v-388q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v540q0 8 6 14t14 6h139q8 0 14 -6t6 -14v-23q20 15 38 25t37 15.5t40.5 8t49.5 2.5q55 0 90 -19 +t54 -51t26 -73t7 -86v-339zM406 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="Ncaron" unicode="&#x147;" horiz-adv-x="746" +d="M681 37q0 -15 -11 -26t-26 -11h-134q-26 0 -42 27l-197 335q-5 8 -10 8t-5 -9v-341q0 -8 -6 -14t-14 -6h-150q-8 0 -14.5 6t-6.5 14v686q0 15 11 26t26 11h132q14 0 23 -7.5t17 -21.5l203 -345q5 -9 9 -9q2 0 3.5 1.5t1.5 7.5v354q0 8 6 14t14 6h150q8 0 14 -6t6 -14 +v-686zM589 934q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="ncaron" unicode="&#x148;" horiz-adv-x="631" +d="M576 22q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v339q0 40 -14 55t-48 15q-17 0 -37.5 -6t-37.5 -15v-388q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v540q0 8 6 14t14 6h139q8 0 14 -6t6 -14v-23q20 15 38 25t37 15.5t40.5 8t49.5 2.5q55 0 90 -19 +t54 -51t26 -73t7 -86v-339zM532 772q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="napostrophe" unicode="&#x149;" horiz-adv-x="838" +d="M256 762q0 -2 -2 -8l-82 -230q-4 -10 -7.5 -14.5t-11.5 -4.5h-123q-9 0 -9 10v4.5t1 4.5l58 230q5 19 20 19h144q12 0 12 -11zM783 22q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v339q0 40 -14 55t-48 15q-17 0 -37.5 -6t-37.5 -15v-388q0 -8 -5.5 -15t-14.5 -7 +h-150q-9 0 -15.5 7t-6.5 15v540q0 8 6 14t14 6h139q8 0 14 -6t6 -14v-23q20 15 38 25t37 15.5t40.5 8t49.5 2.5q55 0 90 -19t54 -51t26 -73t7 -86v-339z" /> + <glyph glyph-name="Eng" unicode="&#x14a;" horiz-adv-x="746" +d="M681 -11q0 -58 -13 -95.5t-36 -59.5t-56 -30.5t-72 -8.5q-21 0 -44 1.5t-47 5.5q-12 2 -16 7t-4 13v109q0 8 6 14t14 6h37q17 0 22 9.5t5 28.5v25q-2 3 -4.5 6t-4.5 7l-197 335q-5 8 -10 8t-5 -9v-341q0 -8 -6 -14t-14 -6h-150q-8 0 -14.5 6t-6.5 14v686q0 15 11 26 +t26 11h132q14 0 23 -7.5t17 -21.5l203 -345q5 -9 9 -9q2 0 3.5 1.5t1.5 7.5v354q0 8 6 14t14 6h150q8 0 14 -6t6 -14v-734v0z" /> + <glyph glyph-name="eng" unicode="&#x14b;" horiz-adv-x="631" +d="M576 -21q0 -54 -12.5 -89.5t-34.5 -57t-53.5 -30t-68.5 -8.5q-23 0 -45.5 2t-48.5 7q-20 3 -20 21v93q0 8 6 14t15 6h43q18 0 22 11t4 31v110.5v78v55.5v44t0.5 42.5t0.5 51.5q0 40 -14 55t-48 15q-17 0 -37.5 -6t-37.5 -15v-388q0 -8 -5.5 -15t-14.5 -7h-150 +q-9 0 -15.5 7t-6.5 15v540q0 8 6 14t14 6h139q8 0 14 -6t6 -14v-23q20 15 38 25t37 15.5t40.5 8t49.5 2.5q55 0 90 -19t54 -51t26 -73t7 -86v-382v0z" /> + <glyph glyph-name="Omacron" unicode="&#x14c;" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM455 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5 +t77 -34.5t77 34.5t24 115.5v103zM544 825q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="omacron" unicode="&#x14d;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM374 320q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-58q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v58zM492 664q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14 +v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="Obreve" unicode="&#x14e;" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM455 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5 +t77 -34.5t77 34.5t24 115.5v103zM563 944q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="obreve" unicode="&#x14f;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM374 320q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-58q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v58zM510 783q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5 +t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="Ohungarumlaut" unicode="&#x150;" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM455 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5 +t77 -34.5t77 34.5t24 115.5v103zM664 934q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-128q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7zM408 934q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h159 +q11 0 11 -7z" /> + <glyph glyph-name="ohungarumlaut" unicode="&#x151;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM374 320q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-58q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v58zM612 772q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3 +h-128q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7zM356 772q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h159q11 0 11 -7z" /> + <glyph glyph-name="OE" unicode="&#x152;" horiz-adv-x="984" +d="M931 23q0 -17 -20 -20q-29 -4 -77 -8t-121 -4q-51 0 -98.5 9t-83.5 36q-38 -23 -83 -34t-94 -11q-62 0 -118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5q50 0 94.5 -11t82.5 -35q36 27 84 36t99 9q73 0 120.5 -4t76.5 -8 +q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-23 0 -34.5 -8.5t-12.5 -31.5q-2 -1 -2 -16.5v-24.5v-5v-1v-7t0.5 -11t0.5 -11v-6h246q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-246q0 -5 -0.5 -13.5t-0.5 -13.5v-56q0 -29 11 -39.5t38 -10.5h202q8 0 14 -6t6 -14v-122z +M455 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5t77 -34.5t77 34.5t24 115.5v103z" /> + <glyph glyph-name="oe" unicode="&#x153;" horiz-adv-x="938" +d="M898 259q0 -10 -6 -16t-15 -6h-311v-4v-3q1 -38 21.5 -59.5t73.5 -21.5q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-45 0 -88.5 13.5t-76.5 43.5q-33 -28 -74.5 -42.5t-93.5 -14.5q-126 0 -194.5 69t-68.5 202 +v58q0 133 68.5 202t194.5 69q53 0 95 -15.5t75 -43.5q68 59 169 59q66 0 114 -20t79.5 -56t47 -86t15.5 -110v-60zM713 346q0 45 -17.5 70.5t-55.5 25.5q-35 0 -54.5 -25t-19.5 -69v-1v-4h148zM374 320q0 60 -18 85t-53 25t-53 -25t-18 -85v-58q0 -60 18 -85.5t53 -25.5 +t53 25.5t18 85.5v58z" /> + <glyph glyph-name="Racute" unicode="&#x154;" horiz-adv-x="708" +d="M673 15q0 -15 -17 -15h-184q-8 0 -12 6t-8 14l-125 240l-7 4q-8 0 -26 0.5t-26 0.5v-245q0 -8 -6 -14t-14 -6h-162q-8 0 -14.5 6t-6.5 14v654q0 36 13 48.5t45 17.5q15 2 40 4.5t54 4.5t59.5 3t57.5 1q70 0 127.5 -12t98.5 -40.5t64 -74.5t23 -115v-16q0 -40 -10 -72 +t-27 -56.5t-39 -41.5t-46 -27l145 -272q3 -6 3 -11zM445 511q0 71 -100 71q-3 0 -14.5 -0.5t-24.5 -0.5t-24.5 -0.5t-13.5 -0.5v-159q2 0 12.5 -0.5t23.5 -0.5h24h13q58 0 81 19.5t23 54.5v17zM535 934q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7 +q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="racute" unicode="&#x155;" horiz-adv-x="417" +d="M393 453q0 -8 -4.5 -14t-12.5 -6h-14q-32 0 -62 -5t-53 -18v-388q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v540q0 8 6 14t14 6h144q8 0 14 -6t6 -14v-24q17 18 32.5 28t30.5 15.5t29.5 7t30.5 1.5h11q8 0 14 -6t6 -14v-117zM389 772q0 -4 -4 -8l-126 -120 +q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="uni0156" unicode="&#x156;" horiz-adv-x="708" +d="M673 15q0 -15 -17 -15h-184q-8 0 -12 6t-8 14l-125 240l-7 4q-8 0 -26 0.5t-26 0.5v-245q0 -8 -6 -14t-14 -6h-162q-8 0 -14.5 6t-6.5 14v654q0 36 13 48.5t45 17.5q15 2 40 4.5t54 4.5t59.5 3t57.5 1q70 0 127.5 -12t98.5 -40.5t64 -74.5t23 -115v-16q0 -40 -10 -72 +t-27 -56.5t-39 -41.5t-46 -27l145 -272q3 -6 3 -11zM445 511q0 71 -100 71q-3 0 -14.5 -0.5t-24.5 -0.5t-24.5 -0.5t-13.5 -0.5v-159q2 0 12.5 -0.5t23.5 -0.5h24h13q58 0 81 19.5t23 54.5v17zM458 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13 +q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="uni0157" unicode="&#x157;" horiz-adv-x="417" +d="M393 453q0 -8 -4.5 -14t-12.5 -6h-14q-32 0 -62 -5t-53 -18v-388q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v540q0 8 6 14t14 6h144q8 0 14 -6t6 -14v-24q17 18 32.5 28t30.5 15.5t29.5 7t30.5 1.5h11q8 0 14 -6t6 -14v-117zM313 -65q0 -1 -2 -7l-56 -101 +q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="Rcaron" unicode="&#x158;" horiz-adv-x="708" +d="M673 15q0 -15 -17 -15h-184q-8 0 -12 6t-8 14l-125 240l-7 4q-8 0 -26 0.5t-26 0.5v-245q0 -8 -6 -14t-14 -6h-162q-8 0 -14.5 6t-6.5 14v654q0 36 13 48.5t45 17.5q15 2 40 4.5t54 4.5t59.5 3t57.5 1q70 0 127.5 -12t98.5 -40.5t64 -74.5t23 -115v-16q0 -40 -10 -72 +t-27 -56.5t-39 -41.5t-46 -27l145 -272q3 -6 3 -11zM445 511q0 71 -100 71q-3 0 -14.5 -0.5t-24.5 -0.5t-24.5 -0.5t-13.5 -0.5v-159q2 0 12.5 -0.5t23.5 -0.5h24h13q58 0 81 19.5t23 54.5v17zM570 933q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3 +t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="rcaron" unicode="&#x159;" horiz-adv-x="417" +d="M393 453q0 -8 -4.5 -14t-12.5 -6h-14q-32 0 -62 -5t-53 -18v-388q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v540q0 8 6 14t14 6h144q8 0 14 -6t6 -14v-24q17 18 32.5 28t30.5 15.5t29.5 7t30.5 1.5h11q8 0 14 -6t6 -14v-117zM424 772q0 -5 -4 -10l-89 -114 +q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="Sacute" unicode="&#x15a;" horiz-adv-x="607" +d="M568 220q0 -42 -15.5 -83t-49 -73.5t-87.5 -52.5t-131 -20q-62 0 -112 7.5t-90 18.5q-8 2 -14.5 7t-6.5 13v123q0 10 5.5 15t13.5 5h2q16 -2 42 -4.5t55.5 -4.5t57.5 -4t48 -2q37 0 50 13.5t13 37.5q0 15 -9.5 25.5t-37.5 27.5l-144 85q-35 21 -58 44t-36.5 48t-19 52 +t-5.5 56q0 41 12.5 77t42.5 63t80.5 43t126.5 16q30 0 63 -2t64.5 -6t58 -8.5t41.5 -8.5q7 -2 12.5 -6.5t5.5 -12.5v-125q0 -8 -5 -13.5t-13 -5.5h-2q-15 1 -42.5 3t-59.5 4.5t-65 4t-60 1.5q-28 0 -39 -9t-11 -25q0 -14 10 -24t42 -27l135 -72q73 -39 102.5 -88.5 +t29.5 -112.5zM484 933q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="sacute" unicode="&#x15b;" horiz-adv-x="517" +d="M478 170q0 -38 -13.5 -70.5t-42 -56.5t-72 -38t-104.5 -14q-54 0 -102 7t-83 17q-19 5 -19 22v103q0 9 5 15t16 6h4q22 -3 47 -6t48.5 -5t44 -3.5t32.5 -1.5q29 0 38 7.5t9 21.5q0 8 -6 15.5t-24 17.5l-122 66q-95 51 -95 158q0 77 54 118.5t166 41.5q57 0 102.5 -7.5 +t81.5 -17.5q20 -5 20 -22v-106q0 -20 -17 -20h-3q-11 1 -33 4t-47 5.5t-50 4.5t-42 2q-37 0 -37 -22q0 -11 22 -23l117 -63q61 -33 83 -73.5t22 -82.5zM439 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158 +q11 0 11 -7z" /> + <glyph glyph-name="Scircumflex" unicode="&#x15c;" horiz-adv-x="607" +d="M568 220q0 -42 -15.5 -83t-49 -73.5t-87.5 -52.5t-131 -20q-62 0 -112 7.5t-90 18.5q-8 2 -14.5 7t-6.5 13v123q0 10 5.5 15t13.5 5h2q16 -2 42 -4.5t55.5 -4.5t57.5 -4t48 -2q37 0 50 13.5t13 37.5q0 15 -9.5 25.5t-37.5 27.5l-144 85q-35 21 -58 44t-36.5 48t-19 52 +t-5.5 56q0 41 12.5 77t42.5 63t80.5 43t126.5 16q30 0 63 -2t64.5 -6t58 -8.5t41.5 -8.5q7 -2 12.5 -6.5t5.5 -12.5v-125q0 -8 -5 -13.5t-13 -5.5h-2q-15 1 -42.5 3t-59.5 4.5t-65 4t-60 1.5q-28 0 -39 -9t-11 -25q0 -14 10 -24t42 -27l135 -72q73 -39 102.5 -88.5 +t29.5 -112.5zM495 802q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="scircumflex" unicode="&#x15d;" horiz-adv-x="517" +d="M478 170q0 -38 -13.5 -70.5t-42 -56.5t-72 -38t-104.5 -14q-54 0 -102 7t-83 17q-19 5 -19 22v103q0 9 5 15t16 6h4q22 -3 47 -6t48.5 -5t44 -3.5t32.5 -1.5q29 0 38 7.5t9 21.5q0 8 -6 15.5t-24 17.5l-122 66q-95 51 -95 158q0 77 54 118.5t166 41.5q57 0 102.5 -7.5 +t81.5 -17.5q20 -5 20 -22v-106q0 -20 -17 -20h-3q-11 1 -33 4t-47 5.5t-50 4.5t-42 2q-37 0 -37 -22q0 -11 22 -23l117 -63q61 -33 83 -73.5t22 -82.5zM466 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7 +q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="Scedilla" unicode="&#x15e;" horiz-adv-x="607" +d="M568 220q0 -42 -15.5 -83t-49 -73.5t-87.5 -52.5t-131 -20q-62 0 -112 7.5t-90 18.5q-8 2 -14.5 7t-6.5 13v123q0 10 5.5 15t13.5 5h2q16 -2 42 -4.5t55.5 -4.5t57.5 -4t48 -2q37 0 50 13.5t13 37.5q0 15 -9.5 25.5t-37.5 27.5l-144 85q-35 21 -58 44t-36.5 48t-19 52 +t-5.5 56q0 41 12.5 77t42.5 63t80.5 43t126.5 16q30 0 63 -2t64.5 -6t58 -8.5t41.5 -8.5q7 -2 12.5 -6.5t5.5 -12.5v-125q0 -8 -5 -13.5t-13 -5.5h-2q-15 1 -42.5 3t-59.5 4.5t-65 4t-60 1.5q-28 0 -39 -9t-11 -25q0 -14 10 -24t42 -27l135 -72q73 -39 102.5 -88.5 +t29.5 -112.5zM413 -59q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-128q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="scedilla" unicode="&#x15f;" horiz-adv-x="517" +d="M478 170q0 -38 -13.5 -70.5t-42 -56.5t-72 -38t-104.5 -14q-54 0 -102 7t-83 17q-19 5 -19 22v103q0 9 5 15t16 6h4q22 -3 47 -6t48.5 -5t44 -3.5t32.5 -1.5q29 0 38 7.5t9 21.5q0 8 -6 15.5t-24 17.5l-122 66q-95 51 -95 158q0 77 54 118.5t166 41.5q57 0 102.5 -7.5 +t81.5 -17.5q20 -5 20 -22v-106q0 -20 -17 -20h-3q-11 1 -33 4t-47 5.5t-50 4.5t-42 2q-37 0 -37 -22q0 -11 22 -23l117 -63q61 -33 83 -73.5t22 -82.5zM366 -59q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-128q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158 +q11 0 11 -7z" /> + <glyph glyph-name="Scaron" unicode="&#x160;" horiz-adv-x="607" +d="M568 220q0 -42 -15.5 -83t-49 -73.5t-87.5 -52.5t-131 -20q-62 0 -112 7.5t-90 18.5q-8 2 -14.5 7t-6.5 13v123q0 10 5.5 15t13.5 5h2q16 -2 42 -4.5t55.5 -4.5t57.5 -4t48 -2q37 0 50 13.5t13 37.5q0 15 -9.5 25.5t-37.5 27.5l-144 85q-35 21 -58 44t-36.5 48t-19 52 +t-5.5 56q0 41 12.5 77t42.5 63t80.5 43t126.5 16q30 0 63 -2t64.5 -6t58 -8.5t41.5 -8.5q7 -2 12.5 -6.5t5.5 -12.5v-125q0 -8 -5 -13.5t-13 -5.5h-2q-15 1 -42.5 3t-59.5 4.5t-65 4t-60 1.5q-28 0 -39 -9t-11 -25q0 -14 10 -24t42 -27l135 -72q73 -39 102.5 -88.5 +t29.5 -112.5zM507 934q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="scaron" unicode="&#x161;" horiz-adv-x="517" +d="M478 170q0 -38 -13.5 -70.5t-42 -56.5t-72 -38t-104.5 -14q-54 0 -102 7t-83 17q-19 5 -19 22v103q0 9 5 15t16 6h4q22 -3 47 -6t48.5 -5t44 -3.5t32.5 -1.5q29 0 38 7.5t9 21.5q0 8 -6 15.5t-24 17.5l-122 66q-95 51 -95 158q0 77 54 118.5t166 41.5q57 0 102.5 -7.5 +t81.5 -17.5q20 -5 20 -22v-106q0 -20 -17 -20h-3q-11 1 -33 4t-47 5.5t-50 4.5t-42 2q-37 0 -37 -22q0 -11 22 -23l117 -63q61 -33 83 -73.5t22 -82.5zM477 772q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127 +q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="uni0162" unicode="&#x162;" horiz-adv-x="594" +d="M570 596q0 -8 -6.5 -13.5t-14.5 -5.5h-149v-557q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v557h-152q-8 0 -14 5.5t-6 13.5v128q0 8 6 13.5t14 5.5h504q8 0 14.5 -5.5t6.5 -13.5v-128zM389 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5 +t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="uni0163" unicode="&#x163;" horiz-adv-x="432" +d="M399 460q0 -8 -6 -14t-14 -6h-76v-269q0 -23 4.5 -30.5t23.5 -7.5h46q9 0 15 -5.5t6 -13.5v-94q0 -8 -6 -13t-15 -7q-13 -2 -23.5 -4t-20.5 -3t-20.5 -1.5t-24.5 -0.5q-40 0 -72.5 7.5t-56 27.5t-36 55.5t-12.5 91.5v267l-66 15q-8 2 -14.5 8t-6.5 14v84q0 8 6 14.5 +t15 6.5h66v81q0 8 6.5 13.5t14.5 7.5l149 26h3q8 0 13.5 -5.5t5.5 -13.5v-109h76q8 0 14 -6t6 -14v-102zM334 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="Tcaron" unicode="&#x164;" horiz-adv-x="594" +d="M570 596q0 -8 -6.5 -13.5t-14.5 -5.5h-149v-557q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v557h-152q-8 0 -14 5.5t-6 13.5v128q0 8 6 13.5t14 5.5h504q8 0 14.5 -5.5t6.5 -13.5v-128zM513 933q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12 +l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="tcaron" unicode="&#x165;" horiz-adv-x="677" +d="M399 460q0 -8 -6 -14t-14 -6h-76v-269q0 -23 4.5 -30.5t23.5 -7.5h46q9 0 15 -5.5t6 -13.5v-94q0 -8 -6 -13t-15 -7q-13 -2 -23.5 -4t-20.5 -3t-20.5 -1.5t-24.5 -0.5q-40 0 -72.5 7.5t-56 27.5t-36 55.5t-12.5 91.5v267l-66 15q-8 2 -14.5 8t-6.5 14v84q0 8 6 14.5 +t15 6.5h66v81q0 8 6.5 13.5t14.5 7.5l149 26h3q8 0 13.5 -5.5t5.5 -13.5v-109h76q8 0 14 -6t6 -14v-102zM687 762q0 -2 -2 -8l-100 -230q-4 -10 -7.5 -14.5t-11.5 -4.5h-109q-12 0 -12 11q0 5 1 8l65 230q4 19 20 19h144q12 0 12 -11z" /> + <glyph glyph-name="Tbar" unicode="&#x166;" horiz-adv-x="594" +d="M400 297v-277q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v277h-152q-8 0 -14 5.5t-6 13.5v128q0 8 6 13.5t14 5.5h152v114h-152q-8 0 -14 5.5t-6 13.5v128q0 8 6 13.5t14 5.5h504q8 0 14.5 -5.5t6.5 -13.5v-128q0 -8 -6.5 -13.5t-14.5 -5.5h-149v-114h149q8 0 14.5 -5.5 +t6.5 -13.5v-128q0 -8 -6.5 -13.5t-14.5 -5.5h-149z" /> + <glyph glyph-name="tbar" unicode="&#x167;" horiz-adv-x="432" +d="M399 460q0 -8 -6 -14t-14 -6h-76v-58h76q8 0 14 -6t6 -14v-102q0 -8 -6 -14t-14 -6h-76v-69q0 -23 4.5 -30.5t23.5 -7.5h46q9 0 15 -5.5t6 -13.5v-94q0 -8 -6 -13t-15 -7q-13 -2 -23.5 -4t-20.5 -3t-20.5 -1.5t-24.5 -0.5q-40 0 -72.5 7.5t-56 27.5t-36 55.5t-12.5 91.5 +v67l-66 15q-8 2 -14.5 8t-6.5 14v84q0 8 6 14.5t15 6.5h66v58l-66 15q-8 2 -14.5 8t-6.5 14v84q0 8 6 14.5t15 6.5h66v81q0 8 6.5 13.5t14.5 7.5l149 26h3q8 0 13.5 -5.5t5.5 -13.5v-109h76q8 0 14 -6t6 -14v-102v0z" /> + <glyph glyph-name="Utilde" unicode="&#x168;" horiz-adv-x="731" +d="M668 282q0 -91 -25.5 -147.5t-67.5 -88.5t-96.5 -43.5t-113.5 -11.5t-113.5 11.5t-96.5 43.5t-67 88.5t-25 147.5v441q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-441q0 -68 23 -94t76 -26t76.5 26t23.5 94v441q0 8 6 14t14 6h162q8 0 14.5 -6t6.5 -14v-441zM577 916 +q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5t4 16.5v17q0 17 17 17h83q17 0 17 -17v-18z +" /> + <glyph glyph-name="utilde" unicode="&#x169;" horiz-adv-x="631" +d="M576 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v23q-27 -20 -64.5 -36t-93.5 -16t-91.5 19t-56 51t-28.5 73.5t-8 86.5v339q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-339q0 -40 12 -55.5t50 -15.5q17 0 37.5 6.5t37.5 15.5v388q0 8 5.5 15t14.5 7h150q9 0 15.5 -7 +t6.5 -15v-540zM525 754q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5t4 16.5v17 +q0 17 17 17h83q17 0 17 -17v-18z" /> + <glyph glyph-name="Umacron" unicode="&#x16a;" horiz-adv-x="731" +d="M668 282q0 -91 -25.5 -147.5t-67.5 -88.5t-96.5 -43.5t-113.5 -11.5t-113.5 11.5t-96.5 43.5t-67 88.5t-25 147.5v441q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-441q0 -68 23 -94t76 -26t76.5 26t23.5 94v441q0 8 6 14t14 6h162q8 0 14.5 -6t6.5 -14v-441zM555 825 +q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="umacron" unicode="&#x16b;" horiz-adv-x="631" +d="M576 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v23q-27 -20 -64.5 -36t-93.5 -16t-91.5 19t-56 51t-28.5 73.5t-8 86.5v339q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-339q0 -40 12 -55.5t50 -15.5q17 0 37.5 6.5t37.5 15.5v388q0 8 5.5 15t14.5 7h150q9 0 15.5 -7 +t6.5 -15v-540zM505 664q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="Ubreve" unicode="&#x16c;" horiz-adv-x="731" +d="M668 282q0 -91 -25.5 -147.5t-67.5 -88.5t-96.5 -43.5t-113.5 -11.5t-113.5 11.5t-96.5 43.5t-67 88.5t-25 147.5v441q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-441q0 -68 23 -94t76 -26t76.5 26t23.5 94v441q0 8 6 14t14 6h162q8 0 14.5 -6t6.5 -14v-441zM572 945 +q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="ubreve" unicode="&#x16d;" horiz-adv-x="631" +d="M576 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v23q-27 -20 -64.5 -36t-93.5 -16t-91.5 19t-56 51t-28.5 73.5t-8 86.5v339q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-339q0 -40 12 -55.5t50 -15.5q17 0 37.5 6.5t37.5 15.5v388q0 8 5.5 15t14.5 7h150q9 0 15.5 -7 +t6.5 -15v-540zM521 783q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="Uring" unicode="&#x16e;" horiz-adv-x="731" +d="M668 282q0 -91 -25.5 -147.5t-67.5 -88.5t-96.5 -43.5t-113.5 -11.5t-113.5 11.5t-96.5 43.5t-67 88.5t-25 147.5v441q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-441q0 -68 23 -94t76 -26t76.5 26t23.5 94v441q0 8 6 14t14 6h162q8 0 14.5 -6t6.5 -14v-441zM486 876 +q0 -25 -9.5 -47.5t-26 -39t-39 -26t-47.5 -9.5t-47 9.5t-38 26t-25 39t-9 47.5t9 47.5t25 39t38 26t47 9.5t47.5 -9.5t39 -26t26 -39t9.5 -47.5zM406 877q0 17 -12 29t-29 12t-28.5 -12t-11.5 -29t11.5 -30t28.5 -13t29 13t12 30z" /> + <glyph glyph-name="uring" unicode="&#x16f;" horiz-adv-x="631" +d="M576 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v23q-27 -20 -64.5 -36t-93.5 -16t-91.5 19t-56 51t-28.5 73.5t-8 86.5v339q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-339q0 -40 12 -55.5t50 -15.5q17 0 37.5 6.5t37.5 15.5v388q0 8 5.5 15t14.5 7h150q9 0 15.5 -7 +t6.5 -15v-540zM436 715q0 -25 -9.5 -47.5t-26 -39t-39 -26t-47.5 -9.5t-47 9.5t-38 26t-25 39t-9 47.5t9 47.5t25 39t38 26t47 9.5t47.5 -9.5t39 -26t26 -39t9.5 -47.5zM356 716q0 17 -12 29t-29 12t-28.5 -12t-11.5 -29t11.5 -30t28.5 -13t29 13t12 30z" /> + <glyph glyph-name="Uhungarumlaut" unicode="&#x170;" horiz-adv-x="731" +d="M668 282q0 -91 -25.5 -147.5t-67.5 -88.5t-96.5 -43.5t-113.5 -11.5t-113.5 11.5t-96.5 43.5t-67 88.5t-25 147.5v441q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-441q0 -68 23 -94t76 -26t76.5 26t23.5 94v441q0 8 6 14t14 6h162q8 0 14.5 -6t6.5 -14v-441zM675 933 +q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-128q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7zM419 933q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h159q11 0 11 -7z" /> + <glyph glyph-name="uhungarumlaut" unicode="&#x171;" horiz-adv-x="631" +d="M576 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v23q-27 -20 -64.5 -36t-93.5 -16t-91.5 19t-56 51t-28.5 73.5t-8 86.5v339q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-339q0 -40 12 -55.5t50 -15.5q17 0 37.5 6.5t37.5 15.5v388q0 8 5.5 15t14.5 7h150q9 0 15.5 -7 +t6.5 -15v-540zM625 772q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-128q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7zM369 772q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h159q11 0 11 -7z" /> + <glyph glyph-name="Uogonek" unicode="&#x172;" horiz-adv-x="731" +d="M668 282q-1 -53 -9.5 -93.5t-24.5 -71.5t-38.5 -54t-50.5 -41l-81 -52q-11 -7 -18.5 -13.5t-7.5 -16.5q0 -15 9.5 -21t31.5 -6q19 0 39 4.5t28 4.5q7 0 8.5 -2t1.5 -10v-76q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30 +t-11.5 46.5q0 32 12 54t41 42q-56 1 -107 14t-90 45.5t-62 88t-23 142.5v441q0 8 6.5 14t14.5 6h162q8 0 14 -6t6 -14v-441q0 -68 23 -94t76 -26t76.5 26t23.5 94v441q0 8 6 14t14 6h162q8 0 14.5 -6t6.5 -14v-441v0z" /> + <glyph glyph-name="uogonek" unicode="&#x173;" horiz-adv-x="631" +d="M397 43q-27 -20 -64.5 -36t-93.5 -16t-91.5 19t-56 51t-28.5 73.5t-8 86.5v339q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-339q0 -40 12 -55.5t50 -15.5q17 0 37.5 6.5t37.5 15.5v388q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-535q0 -11 -2.5 -15.5t-13.5 -9.5 +l-74 -30q-11 -5 -18.5 -12.5t-7.5 -17.5q0 -15 9.5 -21t31.5 -6q19 0 39 4.5t28 4.5q7 0 8.5 -2t1.5 -10v-76q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 35 16 59t55 47l12 7v34z" /> + <glyph glyph-name="Wcircumflex" unicode="&#x174;" horiz-adv-x="917" +d="M896 730l-88 -645q-4 -26 -10.5 -42.5t-16.5 -26t-23.5 -13t-29.5 -3.5h-103q-33 0 -50.5 17t-30.5 60l-74 252q-2 6 -3 7.5t-5 1.5t-5.5 -1.5t-3.5 -7.5l-74 -252q-13 -43 -30.5 -60t-50.5 -17h-103q-17 0 -30 3.5t-23 13t-16.5 26t-10.5 42.5l-88 645v2q0 7 5.5 9 +t10.5 2h170q13 0 15 -19l49 -443q2 -13 7 -13t8 13l58 202q7 25 21.5 34t37.5 9h105q23 0 37.5 -9t21.5 -34l58 -202q3 -13 8 -13t7 13l49 443q2 19 15 19h170q5 0 10.5 -2t5.5 -9v-2zM674 802q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5 +t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="wcircumflex" unicode="&#x175;" horiz-adv-x="871" +d="M846 564l-88 -475q-9 -49 -30 -69t-55 -20h-91q-34 0 -53.5 22.5t-31.5 63.5l-54 183q-1 7 -7 7t-7 -7l-54 -183q-12 -41 -31 -63.5t-54 -22.5h-91q-34 0 -55 20t-30 69l-88 475v3q0 6 4.5 10.5t10.5 4.5h160q14 0 17 -17l49 -343q1 -8 7 -8q5 0 8 8l58 205q5 18 16 29.5 +t40 11.5h80q29 0 40 -11.5t16 -29.5l58 -205q3 -8 8 -8q6 0 7 8l49 343q3 17 17 17h160q6 0 10.5 -4.5t4.5 -10.5v-3zM649 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5 +h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="Ycircumflex" unicode="&#x176;" horiz-adv-x="682" +d="M662 730q0 -2 -2 -8l-147 -345q-16 -37 -33.5 -57.5t-37.5 -28.5v-271q0 -8 -6 -14t-14 -6h-163q-8 0 -13.5 6t-5.5 14v271q-20 8 -37.5 28.5t-33.5 57.5l-147 345q-2 6 -2 8q0 13 14 13h181q8 0 12.5 -5.5t7.5 -13.5l96 -265q4 -10 10 -10t10 10l96 265q3 8 7.5 13.5 +t12.5 5.5h181q14 0 14 -13zM554 802q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="ycircumflex" unicode="&#x177;" horiz-adv-x="621" +d="M604 564q0 -1 -0.5 -2t-0.5 -2l-170 -594q-11 -40 -27 -71.5t-42 -53t-65.5 -33t-98.5 -11.5q-15 0 -34 1.5t-38 4t-36 5.5t-27 7q-8 3 -15.5 7t-7.5 12v97q0 8 6.5 14.5t15.5 6.5h1q14 -1 31.5 -2t36.5 -2.5t37 -2.5t32 -1q21 0 35 8t19 30l8 33h-13q-17 0 -31 2.5 +t-26 13t-22.5 31t-21.5 57.5l-132 441q-1 2 -1 7q0 15 22 15h163q8 0 13 -6t7 -14l79 -344q4 -17 11 -17h8l79 362q3 19 21 19h163q8 0 14.5 -5t6.5 -13zM527 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7 +q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="Ydieresis" unicode="&#x178;" horiz-adv-x="682" +d="M662 730q0 -2 -2 -8l-147 -345q-16 -37 -33.5 -57.5t-37.5 -28.5v-271q0 -8 -6 -14t-14 -6h-163q-8 0 -13.5 6t-5.5 14v271q-20 8 -37.5 28.5t-33.5 57.5l-147 345q-2 6 -2 8q0 13 14 13h181q8 0 12.5 -5.5t7.5 -13.5l96 -265q4 -10 10 -10t10 10l96 265q3 8 7.5 13.5 +t12.5 5.5h181q14 0 14 -13zM546 816q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM312 816q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="Zacute" unicode="&#x179;" horiz-adv-x="632" +d="M577 20q0 -8 -6 -14t-14 -6h-471q-13 0 -22 6.5t-9 19.5v105q0 11 4 22t14 27l239 369q4 7 4 12q0 7 -11 7h-219q-8 0 -14 6t-6 14v136q0 8 6 13.5t14 5.5h456q10 0 18 -3t8 -13v-126q0 -8 -5.5 -24.5t-26.5 -48.5l-218 -334q-4 -5 -4 -11q0 -8 12 -8h231q8 0 14 -5.5 +t6 -13.5v-136zM497 933q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="zacute" unicode="&#x17a;" horiz-adv-x="542" +d="M495 20q0 -8 -6 -14t-14 -6h-401q-11 0 -19 8t-8 19v84q0 13 3 22.5t12 21.5l191 259q4 5 4 9q0 6 -9 6h-178q-16 0 -16 16v117q0 8 6 14t14 6h393q11 0 18.5 -8t7.5 -19v-91q0 -17 -4 -25.5t-13 -20.5l-182 -247q-4 -6 -4 -9q0 -6 9 -6h178q8 0 13 -4t5 -12v-120z +M452 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="Zdotaccent" unicode="&#x17b;" horiz-adv-x="632" +d="M577 20q0 -8 -6 -14t-14 -6h-471q-13 0 -22 6.5t-9 19.5v105q0 11 4 22t14 27l239 369q4 7 4 12q0 7 -11 7h-219q-8 0 -14 6t-6 14v136q0 8 6 13.5t14 5.5h456q10 0 18 -3t8 -13v-126q0 -8 -5.5 -24.5t-26.5 -48.5l-218 -334q-4 -5 -4 -11q0 -8 12 -8h231q8 0 14 -5.5 +t6 -13.5v-136zM410 812q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109z" /> + <glyph glyph-name="zdotaccent" unicode="&#x17c;" horiz-adv-x="542" +d="M495 20q0 -8 -6 -14t-14 -6h-401q-11 0 -19 8t-8 19v84q0 13 3 22.5t12 21.5l191 259q4 5 4 9q0 6 -9 6h-178q-16 0 -16 16v117q0 8 6 14t14 6h393q11 0 18.5 -8t7.5 -19v-91q0 -17 -4 -25.5t-13 -20.5l-182 -247q-4 -6 -4 -9q0 -6 9 -6h178q8 0 13 -4t5 -12v-120z +M365 651q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109z" /> + <glyph glyph-name="Zcaron" unicode="&#x17d;" horiz-adv-x="632" +d="M577 20q0 -8 -6 -14t-14 -6h-471q-13 0 -22 6.5t-9 19.5v105q0 11 4 22t14 27l239 369q4 7 4 12q0 7 -11 7h-219q-8 0 -14 6t-6 14v136q0 8 6 13.5t14 5.5h456q10 0 18 -3t8 -13v-126q0 -8 -5.5 -24.5t-26.5 -48.5l-218 -334q-4 -5 -4 -11q0 -8 12 -8h231q8 0 14 -5.5 +t6 -13.5v-136zM537 934q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="zcaron" unicode="&#x17e;" horiz-adv-x="542" +d="M495 20q0 -8 -6 -14t-14 -6h-401q-11 0 -19 8t-8 19v84q0 13 3 22.5t12 21.5l191 259q4 5 4 9q0 6 -9 6h-178q-16 0 -16 16v117q0 8 6 14t14 6h393q11 0 18.5 -8t7.5 -19v-91q0 -17 -4 -25.5t-13 -20.5l-182 -247q-4 -6 -4 -9q0 -6 9 -6h178q8 0 13 -4t5 -12v-120z +M494 772q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q10 0 14 -2.5t10 -8.5l56 -57l56 57q6 6 10 8.5t14 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="florin" unicode="&#x192;" +d="M640 762l-13 -92q-2 -8 -8.5 -14t-15.5 -6h-68q-19 0 -30.5 -2t-18 -6.5t-9.5 -12.5t-5 -20l-20 -144h130q18 0 18 -17v-3l-14 -103q-2 -8 -8.5 -14.5t-15.5 -6.5h-130l-44 -313q-8 -54 -29 -89.5t-52.5 -56.5t-70 -29t-80.5 -8q-32 0 -63.5 3.5t-47.5 6.5q-11 2 -14.5 6 +t-3.5 10v4l12 92q1 8 8 13.5t16 5.5h69q19 0 30 2t17.5 7t9.5 13t5 20l44 313h-125q-8 0 -13 5t-5 13v3l14 103q2 8 8.5 14t15.5 6h126l20 144q7 54 28.5 89.5t52.5 56.5t69.5 29t80.5 8q32 0 64 -3.5t48 -6.5q11 -2 14.5 -6t3.5 -10v-4z" /> + <glyph glyph-name="AEacute" unicode="&#x1fc;" horiz-adv-x="943" +d="M890 23q0 -17 -20 -20q-14 -2 -29.5 -4t-36 -4t-47 -3t-62.5 -1q-43 0 -84 6t-74.5 24t-57.5 50.5t-33 85.5h-188l-28 -138q-2 -8 -7 -13.5t-13 -5.5h-174q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 607q8 37 26 59.5t43 35t56.5 16.5t67.5 4h523q20 0 20 -20v-129 +q0 -8 -6 -14t-14 -6h-228v-118h224q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-224v-83q0 -29 11 -39.5t38 -10.5h179q8 0 14 -6t6 -14v-122zM439 576h-89q-8 0 -10.5 -4t-4.5 -14l-48 -240h152v258zM757 934q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7 +q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="aeacute" unicode="&#x1fd;" horiz-adv-x="892" +d="M852 262q0 -8 -7 -14.5t-15 -6.5h-306v-34q0 -32 26.5 -44.5t74.5 -12.5q15 0 40 0.5t52 1.5t51 2.5t38 2.5h4q17 0 17 -17v-88q0 -12 -4 -17.5t-15 -10.5q-45 -17 -101.5 -25t-111.5 -8q-37 0 -69 10t-58 28q-43 -18 -85 -28t-89 -10q-255 0 -255 185v11q0 45 19 75.5 +t53.5 49t82.5 26.5t107 8h33v15q0 43 -17.5 57t-46.5 14q-24 0 -49.5 -0.5t-49 -1.5t-42 -2.5t-28.5 -2.5h-2q-8 0 -13 6t-5 14v96q0 18 20 25q12 4 31.5 8t42.5 8t47.5 6.5t47.5 2.5q107 0 172 -53q32 26 69.5 39.5t86.5 13.5q66 0 114 -19.5t79 -54.5t46 -84t15 -109v-62z +M668 355q0 40 -16.5 64.5t-55.5 24.5q-37 0 -54.5 -24.5t-17.5 -64.5v-14h144v14zM340 246h-39q-37 0 -59 -13t-22 -46v-11q0 -32 20 -42t54 -10q14 0 23.5 1.5t22.5 5.5v115zM648 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114 +q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="Oslashacute" unicode="&#x1fe;" horiz-adv-x="708" +d="M693 742q0 -4 -3 -8l-78 -107q23 -38 36 -88t13 -116v-103q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17q-47 0 -90 9.5t-80 30.5l-14 -21q-5 -6 -11.5 -12.5t-14.5 -6.5h-118q-11 0 -11 11q0 3 3 8l77 108q-23 38 -35.5 87.5t-12.5 114.5v103q0 91 24.5 154 +t66.5 102t98 56.5t118 17.5q47 0 89.5 -9.5t79.5 -30.5l15 21q5 6 11.5 12.5t14.5 6.5h118q11 0 11 -11zM412 559q-11 8 -26 11.5t-32 3.5q-53 0 -77 -35t-24 -116v-85zM455 407l-159 -221q22 -16 58 -16q53 0 77 34.5t24 115.5v87zM556 934q0 -4 -4 -8l-126 -120 +q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="oslashacute" unicode="&#x1ff;" horiz-adv-x="605" +d="M575 608q0 -6 -4 -11l-64 -87q58 -69 58 -190v-58q0 -133 -68 -202t-194 -69q-89 0 -152 37l-39 -53q-5 -7 -8 -8.5t-8 -1.5h-58q-8 0 -8 8q0 6 4 11l65 88q-29 34 -44 81.5t-15 108.5v58q0 133 68.5 202t194.5 69q90 0 152 -37l38 52q5 7 8 8.5t8 1.5h58q8 0 8 -8z +M350 412q-18 18 -47 18q-35 0 -53.5 -25t-18.5 -85v-58v-7v-4zM374 330l-119 -160q18 -19 48 -19q35 0 53 25.5t18 85.5v58v7v3zM496 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="uni0218" unicode="&#x218;" horiz-adv-x="607" +d="M568 220q0 -42 -15.5 -83t-49 -73.5t-87.5 -52.5t-131 -20q-62 0 -112 7.5t-90 18.5q-8 2 -14.5 7t-6.5 13v123q0 10 5.5 15t13.5 5h2q16 -2 42 -4.5t55.5 -4.5t57.5 -4t48 -2q37 0 50 13.5t13 37.5q0 15 -9.5 25.5t-37.5 27.5l-144 85q-35 21 -58 44t-36.5 48t-19 52 +t-5.5 56q0 41 12.5 77t42.5 63t80.5 43t126.5 16q30 0 63 -2t64.5 -6t58 -8.5t41.5 -8.5q7 -2 12.5 -6.5t5.5 -12.5v-125q0 -8 -5 -13.5t-13 -5.5h-2q-15 1 -42.5 3t-59.5 4.5t-65 4t-60 1.5q-28 0 -39 -9t-11 -25q0 -14 10 -24t42 -27l135 -72q73 -39 102.5 -88.5 +t29.5 -112.5zM408 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="uni0219" unicode="&#x219;" horiz-adv-x="517" +d="M478 170q0 -38 -13.5 -70.5t-42 -56.5t-72 -38t-104.5 -14q-54 0 -102 7t-83 17q-19 5 -19 22v103q0 9 5 15t16 6h4q22 -3 47 -6t48.5 -5t44 -3.5t32.5 -1.5q29 0 38 7.5t9 21.5q0 8 -6 15.5t-24 17.5l-122 66q-95 51 -95 158q0 77 54 118.5t166 41.5q57 0 102.5 -7.5 +t81.5 -17.5q20 -5 20 -22v-106q0 -20 -17 -20h-3q-11 1 -33 4t-47 5.5t-50 4.5t-42 2q-37 0 -37 -22q0 -11 22 -23l117 -63q61 -33 83 -73.5t22 -82.5zM357 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146 +q14 0 14 -12z" /> + <glyph glyph-name="uni021A" unicode="&#x21a;" horiz-adv-x="594" +d="M570 596q0 -8 -6.5 -13.5t-14.5 -5.5h-149v-557q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v557h-152q-8 0 -14 5.5t-6 13.5v128q0 8 6 13.5t14 5.5h504q8 0 14.5 -5.5t6.5 -13.5v-128zM389 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5 +t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="uni021B" unicode="&#x21b;" horiz-adv-x="432" +d="M399 460q0 -8 -6 -14t-14 -6h-76v-269q0 -23 4.5 -30.5t23.5 -7.5h46q9 0 15 -5.5t6 -13.5v-94q0 -8 -6 -13t-15 -7q-13 -2 -23.5 -4t-20.5 -3t-20.5 -1.5t-24.5 -0.5q-40 0 -72.5 7.5t-56 27.5t-36 55.5t-12.5 91.5v267l-66 15q-8 2 -14.5 8t-6.5 14v84q0 8 6 14.5 +t15 6.5h66v81q0 8 6.5 13.5t14.5 7.5l149 26h3q8 0 13.5 -5.5t5.5 -13.5v-109h76q8 0 14 -6t6 -14v-102zM334 -65q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="circumflex" unicode="&#x2c6;" horiz-adv-x="472" +d="M449 640q0 -7 -9 -7h-124q-11 0 -14.5 2.5t-9.5 8.5l-56 59l-56 -59q-6 -6 -9.5 -8.5t-14.5 -2.5h-124q-9 0 -9 7q0 5 4 10l86 114q7 8 12 11.5t16 3.5h190q11 0 16 -3t12 -12l86 -114q4 -5 4 -10z" /> + <glyph glyph-name="caron" unicode="&#x2c7;" horiz-adv-x="472" +d="M452 772q0 -5 -4 -10l-89 -114q-7 -8 -12 -11.5t-16 -3.5h-190q-11 0 -16 3t-12 12l-89 114q-4 5 -4 10q0 7 9 7h127q11 0 14.5 -2.5t9.5 -8.5l56 -57l56 57q6 6 9.5 8.5t14.5 2.5h127q9 0 9 -7z" /> + <glyph glyph-name="uni02C9" unicode="&#x2c9;" horiz-adv-x="472" +d="M426 664q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88v0z" /> + <glyph glyph-name="breve" unicode="&#x2d8;" horiz-adv-x="472" +d="M444 773q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="dotaccent" unicode="&#x2d9;" horiz-adv-x="472" +d="M330 651q0 -8 -6.5 -14t-14.5 -6h-146q-8 0 -14 6t-6 14v109q0 8 6 14t14 6h146q8 0 14.5 -6t6.5 -14v-109v0z" /> + <glyph glyph-name="ring" unicode="&#x2da;" horiz-adv-x="472" +d="M358 715q0 -25 -9.5 -47.5t-26 -39t-39 -26t-47.5 -9.5t-47 9.5t-38 26t-25 39t-9 47.5t9 47.5t25 39t38 26t47 9.5t47.5 -9.5t39 -26t26 -39t9.5 -47.5zM278 716q0 17 -12 29t-29 12t-28.5 -12t-11.5 -29t11.5 -30t28.5 -13t29 13t12 30z" /> + <glyph glyph-name="ogonek" unicode="&#x2db;" horiz-adv-x="451" +d="M333 -166q0 -5 -1.5 -8t-9.5 -7q-11 -5 -43.5 -12.5t-74.5 -7.5q-26 0 -50 4.5t-43 16t-30.5 30t-11.5 46.5q0 35 16 59t55 47l48 28q10 7 29 7h98q8 0 9 -5t-5 -10l-78 -52q-11 -7 -18.5 -13.5t-7.5 -16.5q0 -15 9.5 -21t31.5 -6q19 0 39 4.5t28 4.5q7 0 8.5 -2t1.5 -10 +v-75v-1z" /> + <glyph glyph-name="tilde" unicode="&#x2dc;" horiz-adv-x="498" +d="M456 753q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5t4 16.5v17q0 17 17 17h83 +q17 0 17 -17v-18v0z" /> + <glyph glyph-name="hungarumlaut" unicode="&#x2dd;" horiz-adv-x="472" +d="M517 772q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-128q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7zM261 772q0 -4 -4 -8l-126 -120q-6 -5 -10 -8t-15 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h159q11 0 11 -7z" /> + <glyph glyph-name="uni03A9" unicode="&#x3a9;" horiz-adv-x="716" +d="M358 575q-56 0 -80 -31t-24 -103v-12q0 -18 0.5 -37.5t5 -38.5t13.5 -35.5t26 -28.5q7 -5 10.5 -8t3.5 -17v-243q0 -21 -21 -21h-191q-10 0 -16.5 4.5t-6.5 16.5v114q0 12 6.5 16t16.5 4h111v27q-54 18 -86.5 46t-50 63t-23 75t-5.5 83v12q0 79 22.5 134.5t63.5 91 +t98.5 52t126.5 16.5t126.5 -16.5t98.5 -52t63.5 -91t22.5 -134.5v-12q0 -43 -5.5 -83t-23 -75t-50 -63t-86.5 -46v-27h111q10 0 16.5 -4t6.5 -16v-114q0 -12 -6.5 -16.5t-16.5 -4.5h-191q-21 0 -21 21v243q0 14 3.5 17t10.5 8q17 12 26 28.5t13.5 35.5t5 38.5t0.5 37.5v12 +q0 72 -24 103t-80 31z" /> + <glyph glyph-name="uni03BC" unicode="&#x3bc;" horiz-adv-x="632" +d="M577 48q0 -12 -6.5 -19.5t-28.5 -13.5q-35 -10 -90 -17t-133 -7q-38 0 -71 6v-169q0 -8 -6 -14t-14 -6h-153q-8 0 -14 6t-6 14v732q0 8 6.5 15t14.5 7h150q8 0 14.5 -7t6.5 -15v-346q0 -35 17.5 -51t53.5 -16q20 0 37 1t30 4v408q0 8 6 15t14 7h150q8 0 15 -7t7 -15v-512 +v0z" /> + <glyph glyph-name="pi" unicode="&#x3c0;" horiz-adv-x="672" +d="M596 433v-269q0 -9 0.5 -14.5t3.5 -7.5t10 -2.5t20 -0.5h11q10 0 10 -11v-123q0 -8 -3 -9.5t-8 -3.5q-4 -1 -15.5 -1.5t-25 -1t-26 -1t-18.5 -0.5q-68 0 -109.5 33t-41.5 113v299h-137v-413q0 -7 -2 -13.5t-12 -6.5h-162q-9 0 -12 5.5t-3 14.5v413h-40q-8 0 -11.5 2.5 +t-3.5 12.5v119q0 10 3.5 13t11.5 3h600q8 0 11.5 -3t3.5 -13v-119q0 -10 -3.5 -12.5t-11.5 -2.5h-40z" /> + <glyph glyph-name="uni0401" unicode="&#x401;" horiz-adv-x="585" +d="M532 23q0 -17 -20 -20q-29 -4 -76.5 -8t-120.5 -4q-48 0 -94 7.5t-82 31.5t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118 +q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122zM494 818q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM260 818q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14 +t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="uni0402" unicode="&#x402;" horiz-adv-x="841" +d="M570 596q0 -8 -6.5 -13.5t-14.5 -5.5h-149v-128q32 18 74 28t95 10q66 0 108.5 -17.5t66.5 -48.5t33.5 -72t9.5 -87v-260q0 -58 -13 -95.5t-36 -59.5t-56 -30.5t-72 -8.5q-21 0 -44 1.5t-47 5.5q-12 2 -16 7t-4 13v109q0 8 6 14t14 6h37q17 0 22 9.5t5 28.5v260 +q0 40 -19.5 53t-57.5 13q-12 0 -26 -1.5t-28.5 -4.5t-28 -7t-23.5 -9v-286q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v557h-152q-8 0 -14 5.5t-6 13.5v128q0 8 6 13.5t14 5.5h504q8 0 14.5 -5.5t6.5 -13.5v-128v0z" /> + <glyph glyph-name="uni0403" unicode="&#x403;" horiz-adv-x="558" +d="M257 20q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v508q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-508zM528 934q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7 +q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="uni0404" unicode="&#x404;" horiz-adv-x="628" +d="M563 32q0 -10 -5 -14t-17 -8q-20 -7 -62.5 -12.5t-90.5 -5.5q-69 0 -131 18t-108.5 59.5t-74 108t-27.5 163.5v63q0 97 27.5 163.5t74 108t108.5 59.5t131 18q48 0 90.5 -5.5t62.5 -12.5q12 -4 17 -7.5t5 -14.5v-128q0 -19 -18 -19h-3q-31 3 -63.5 6t-70.5 3 +q-23 0 -46 -3t-43.5 -13.5t-36 -31.5t-23.5 -56h249q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-254q3 -49 18 -77.5t36.5 -43t47.5 -18.5t52 -4q38 0 70.5 3t63.5 6h3q18 0 18 -19v-128v0z" /> + <glyph glyph-name="uni0405" unicode="&#x405;" horiz-adv-x="607" +d="M568 220q0 -42 -15.5 -83t-49 -73.5t-87.5 -52.5t-131 -20q-62 0 -112 7.5t-90 18.5q-8 2 -14.5 7t-6.5 13v123q0 10 5.5 15t13.5 5h2q16 -2 42 -4.5t55.5 -4.5t57.5 -4t48 -2q37 0 50 13.5t13 37.5q0 15 -9.5 25.5t-37.5 27.5l-144 85q-35 21 -58 44t-36.5 48t-19 52 +t-5.5 56q0 41 12.5 77t42.5 63t80.5 43t126.5 16q30 0 63 -2t64.5 -6t58 -8.5t41.5 -8.5q7 -2 12.5 -6.5t5.5 -12.5v-125q0 -8 -5 -13.5t-13 -5.5h-2q-15 1 -42.5 3t-59.5 4.5t-65 4t-60 1.5q-28 0 -39 -9t-11 -25q0 -14 10 -24t42 -27l135 -72q73 -39 102.5 -88.5 +t29.5 -112.5z" /> + <glyph glyph-name="uni0406" unicode="&#x406;" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="uni0407" unicode="&#x407;" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704zM364 818q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM130 818q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6 +t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="uni0408" unicode="&#x408;" horiz-adv-x="334" +d="M269 2q0 -58 -13 -95.5t-36 -59.5t-56 -30.5t-72 -8.5q-21 0 -44 1.5t-47 5.5q-12 2 -16 7t-4 13v109q0 8 6 14t14 6h37q17 0 22 9.5t5 28.5v721q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-721v0z" /> + <glyph glyph-name="uni0409" unicode="&#x409;" horiz-adv-x="1111" +d="M346 576q-7 0 -8 -3.5l-3 -10.5l-106 -543q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 602q8 37 26 60.5t43 36.5t56 18t67 5h333q8 0 14 -5.5t6 -13.5v-242q14 0 27 0.5t24 0.5q60 0 118.5 -9t104.5 -34t74.5 -70.5t28.5 -117.5v-30 +q0 -72 -28.5 -117.5t-74.5 -70.5t-104.5 -34t-118.5 -9q-19 0 -45 0.5t-52.5 2t-51.5 4t-43 5.5t-30 7.5t-19.5 13t-10.5 22t-3 33.5v497h-149zM695 318v-162h82q59 0 81 20t22 52v18q0 32 -22 52t-81 20h-82z" /> + <glyph glyph-name="uni040A" unicode="&#x40a;" horiz-adv-x="1097" +d="M681 482q17 1 30.5 1h24.5q60 0 118.5 -9t104.5 -34t74.5 -70.5t28.5 -117.5v-30q0 -72 -28.5 -117.5t-74.5 -70.5t-104.5 -34t-118.5 -9q-68 0 -128 2t-110 7q-8 1 -14 6.5t-6 13.5v272h-209v-272q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v704q0 8 6.5 13.5 +t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-256h209v256q0 8 6 13.5t14 5.5h163q8 0 14 -5.5t6 -13.5v-242zM681 156h82q59 0 81 20t22 52v18q0 32 -22 52t-81 20h-82v-162z" /> + <glyph glyph-name="uni040B" unicode="&#x40b;" horiz-adv-x="841" +d="M570 596q0 -8 -6.5 -13.5t-14.5 -5.5h-149v-128q32 18 74 28t95 10q66 0 108.5 -17.5t66.5 -48.5t33.5 -72t9.5 -87v-243q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v243q0 40 -19.5 53t-57.5 13q-12 0 -26 -1.5t-28.5 -4.5t-28 -7t-23.5 -9v-286q0 -8 -6 -14t-14 -6 +h-163q-8 0 -14 6t-6 14v557h-152q-8 0 -14 5.5t-6 13.5v128q0 8 6 13.5t14 5.5h504q8 0 14.5 -5.5t6.5 -13.5v-128v0z" /> + <glyph glyph-name="uni040C" unicode="&#x40c;" horiz-adv-x="713" +d="M689 11q0 -11 -13 -11h-210q-9 0 -13 5t-8 12l-176 319v-316q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v704q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-317l192 320q4 7 9 11.5t13 4.5h192q14 0 14 -11q0 -6 -4 -11l-218 -344l219 -356q3 -5 3 -10zM582 933 +q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="uni040E" unicode="&#x40e;" horiz-adv-x="639" +d="M598 743q27 0 19 -25l-162 -558q-12 -40 -29.5 -71.5t-46 -53t-70 -33t-100.5 -11.5q-15 0 -34 1.5t-38 4t-36 5.5t-27 7q-8 3 -15.5 7t-7.5 12v103q0 8 5 15t18 6q14 -1 31.5 -2t36.5 -2.5t37 -2.5t32 -1q21 0 32 5t16 27l8 35h-19q-17 0 -30.5 2t-25 11t-21.5 26.5 +t-19 47.5l-130 421q-5 16 2.5 20t17.5 4h169q8 0 13 -6t7 -14l79 -309q4 -17 11 -17h8l79 327q5 19 21 19h169zM532 946q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37 +q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="uni040F" unicode="&#x40f;" horiz-adv-x="746" +d="M473 -101q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v103q-72 7 -113 30.5t-61 55.5t-25 70.5t-5 75.5v489q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-489q0 -33 16.5 -41.5t40.5 -8.5h95q24 0 40.5 8.5t16.5 41.5v489q0 8 6 14t14 6h163q8 0 14 -6t6 -14v-489 +q0 -38 -5 -76.5t-26 -71t-62.5 -55.5t-114.5 -29v-103z" /> + <glyph glyph-name="uni0410" unicode="&#x410;" horiz-adv-x="692" +d="M673 16q0 -16 -16 -16h-174q-8 0 -13 5.5t-7 13.5l-28 139h-178l-28 -139q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q0 -2 0.5 -3t0.5 -2zM357 572 +l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-49 -254h120z" /> + <glyph glyph-name="uni0411" unicode="&#x411;" horiz-adv-x="689" +d="M570 743q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-301v-103q14 0 27 0.5t24 0.5q60 0 118.5 -9t104.5 -34t74.5 -70.5t28.5 -117.5v-30q0 -72 -28.5 -117.5t-74.5 -70.5t-104.5 -34t-118.5 -9q-19 0 -45 0.5t-52.5 2t-51.5 4t-43 5.5t-30 7.5t-19.5 13t-10.5 22 +t-3 33.5v645q0 8 6 13.5t14 5.5h485zM265 318v-162h82q59 0 81 20t22 52v18q0 32 -22 52t-81 20h-82z" /> + <glyph glyph-name="uni0412" unicode="&#x412;" horiz-adv-x="689" +d="M646 222q0 -72 -28.5 -117.5t-74.5 -70.5t-104.5 -34t-118.5 -9q-19 0 -45 0.5t-52.5 2t-51.5 4t-43 5.5t-30 7.5t-19.5 13t-10.5 22t-3 33.5v587q0 40 13.5 55t48.5 20q16 3 40.5 5t51.5 3.5t53 2.5t45 1q74 0 134 -10t102.5 -34t65.5 -65.5t23 -104.5v-17 +q0 -48 -21.5 -85.5t-55.5 -56.5q34 -20 57.5 -58.5t23.5 -86.5v-13zM446 524q0 29 -21.5 46.5t-80.5 17.5h-14.5t-25 -0.5t-25 -0.5h-14.5v-142h97q49 0 66.5 18.5t17.5 44.5v16zM450 237q0 30 -19 51t-69 21h-97v-153h82q59 0 81 20t22 52v9z" /> + <glyph glyph-name="uni0413" unicode="&#x413;" horiz-adv-x="557" +d="M257 20q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v508q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-508z" /> + <glyph glyph-name="uni0414" unicode="&#x414;" horiz-adv-x="786" +d="M90 160l109 473q9 37 26.5 60.5t42.5 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t42.5 -36.5t26.5 -60.5l109 -473h54q8 0 14 -6t6 -14v-241q0 -8 -6 -14t-14 -6h-138q-8 0 -14 6t-6 14v101h-390v-101q0 -8 -6 -14t-14 -6h-138q-8 0 -14 6t-6 14v241q0 8 6 14t14 6h50z +M296 160h189l-83 412l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5z" /> + <glyph glyph-name="uni0415" unicode="&#x415;" horiz-adv-x="585" +d="M532 23q0 -17 -20 -20q-29 -4 -76.5 -8t-120.5 -4q-48 0 -94 7.5t-82 31.5t-58 68t-22 117v314q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-73h246q8 0 14 -6t6 -14v-118 +q0 -8 -6 -14t-14 -6h-246v-83q0 -29 10.5 -39.5t37.5 -10.5h202q8 0 14 -6t6 -14v-122v0z" /> + <glyph glyph-name="uni0416" unicode="&#x416;" horiz-adv-x="1094" +d="M1070 11q0 -11 -13 -11h-210q-9 0 -13 5t-8 12l-176 319v-316q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v316l-176 -319q-4 -7 -8 -12t-13 -5h-210q-13 0 -13 11q0 5 3 10l219 356l-218 344q-4 5 -4 11q0 11 14 11h192q8 0 13 -4.5t9 -11.5l192 -320v317 +q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-317l192 320q4 7 9 11.5t13 4.5h192q14 0 14 -11q0 -6 -4 -11l-218 -344l219 -356q3 -5 3 -10z" /> + <glyph glyph-name="uni0417" unicode="&#x417;" horiz-adv-x="594" +d="M554 216q0 -59 -19 -101t-54.5 -70t-86 -41t-113.5 -13q-31 0 -62.5 3t-61 7.5t-54.5 10.5t-43 13q-8 3 -14 7.5t-6 12.5v98q0 8 5 13.5t13 5.5h2q23 -2 50 -3.5t54.5 -3t54 -2.5t49.5 -1q46 0 65.5 17t19.5 47v16q0 14 -3 27t-11 22.5t-23.5 15.5t-40.5 6h-166 +q-8 0 -14 6t-6 14v107q0 8 6 13.5t14 5.5h166q24 0 39 6.5t23.5 17t12 24t3.5 26.5v16q0 30 -19.5 41t-57.5 11q-52 0 -107 -3.5t-104 -7.5h-2q-8 0 -13.5 5.5t-5.5 13.5v98q0 8 6.5 12.5t14.5 7.5q18 7 41.5 13.5t51 11.5t57.5 8t61 3q63 0 114 -10.5t87 -34t55.5 -62 +t19.5 -94.5v-14q0 -42 -22 -86t-69 -73q42 -22 67.5 -59t25.5 -88v-16v0z" /> + <glyph glyph-name="uni0418" unicode="&#x418;" horiz-adv-x="746" +d="M65 723q0 8 6 14t14 6h150q8 0 14 -6t6 -14v-354q0 -6 1.5 -7.5t3.5 -1.5q4 0 9 9l203 345q8 14 17 21.5t23 7.5h132q15 0 26 -11t11 -26v-686q0 -8 -6.5 -14t-14.5 -6h-150q-8 0 -14 6t-6 14v341q0 9 -5 9t-10 -8l-197 -335q-16 -27 -42 -27h-134q-15 0 -26 11t-11 26 +v686z" /> + <glyph glyph-name="uni0419" unicode="&#x419;" horiz-adv-x="746" +d="M65 37v686q0 8 6 14t14 6h150q8 0 14 -6t6 -14v-354q0 -6 1.5 -7.5t3.5 -1.5q4 0 9 9l203 345q8 14 17 21.5t23 7.5h132q15 0 26 -11t11 -26v-686q0 -8 -6.5 -14t-14.5 -6h-150q-8 0 -14 6t-6 14v341q0 9 -5 9t-10 -8l-197 -335q-16 -27 -42 -27h-134q-15 0 -26 11 +t-11 26zM585 941q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="uni041A" unicode="&#x41a;" horiz-adv-x="704" +d="M689 11q0 -11 -13 -11h-210q-9 0 -13 5t-8 12l-176 319v-316q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v704q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-317l192 320q4 7 9 11.5t13 4.5h192q14 0 14 -11q0 -6 -4 -11l-218 -344l219 -356q3 -5 3 -10z" /> + <glyph glyph-name="uni041B" unicode="&#x41b;" horiz-adv-x="692" +d="M357 572l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-106 -553q-2 -8 -7 -13.5t-13 -5.5h-173q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q0 -2 0.5 -3t0.5 -2q0 -16 -16 -16h-174q-8 0 -13 5.5 +t-7 13.5z" /> + <glyph glyph-name="uni041C" unicode="&#x41c;" horiz-adv-x="841" +d="M776 12q0 -8 -5.5 -10t-11.5 -2h-164q-6 0 -10.5 6t-4.5 14v367q0 10 -3 10q-1 0 -3 -2h-1q-2 0 -4.5 -5t-4.5 -8l-80 -133q-12 -19 -29 -19h-69q-17 0 -29 19l-82 137q-2 3 -3.5 6t-3.5 3h-1q-2 2 -3 2q-4 0 -4 -10v-367q0 -8 -4 -14t-10 -6h-165q-6 0 -11 2t-5 10v694 +q0 15 11 26t26 11h111q19 0 31 -8t20 -22l145 -253q7 -12 11 -12q5 0 12 12l145 253q8 14 20 22t31 8h111q15 0 26 -11t11 -26v-694v0z" /> + <glyph glyph-name="uni041D" unicode="&#x41d;" horiz-adv-x="746" +d="M681 20q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v272h-209v-272q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v704q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-256h209v256q0 8 6 13.5t14 5.5h163q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="uni041E" unicode="&#x41e;" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM455 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5 +t77 -34.5t77 34.5t24 115.5v103z" /> + <glyph glyph-name="uni041F" unicode="&#x41f;" horiz-adv-x="746" +d="M681 20q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v489q0 33 -16.5 41.5t-40.5 8.5h-95q-24 0 -40.5 -8.5t-16.5 -41.5v-489q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v489q0 40 6 82t32 75.5t78.5 55t144.5 21.5h94q92 0 144.5 -21.5t78.5 -55t32 -75.5t6 -82v-489 +z" /> + <glyph glyph-name="uni0420" unicode="&#x420;" horiz-adv-x="677" +d="M646 494q0 -74 -28 -122.5t-72.5 -77.5t-99.5 -40.5t-109 -11.5q-17 0 -34 1t-37 2v-225q0 -8 -6 -14t-14 -6h-160q-8 0 -14.5 5t-6.5 13v656q0 36 13 48.5t45 17.5q19 3 44 5.5t53.5 4t57.5 2.5t56 1q56 0 111.5 -11t100 -39.5t72.5 -77t28 -123.5v-8zM444 502 +q0 44 -28 62.5t-79 18.5h-13.5t-22.5 -0.5t-22.5 -0.5h-12.5v-170q2 0 12.5 -0.5t22.5 -0.5h23h13q107 0 107 83v8z" /> + <glyph glyph-name="uni0421" unicode="&#x421;" horiz-adv-x="555" +d="M517 31q0 -10 -5 -14t-17 -8q-20 -7 -56 -12.5t-84 -5.5q-69 0 -126 19t-97.5 59.5t-62.5 102.5t-22 148v103q0 86 22 148t62.5 102.5t97.5 59.5t126 19q48 0 84 -5.5t56 -12.5q12 -4 17 -7.5t5 -14.5v-128q0 -19 -18 -19h-3q-31 3 -64 6t-76 3q-20 0 -39 -5.5t-33 -22 +t-22.5 -46t-8.5 -77.5v-103q0 -47 8.5 -76.5t22.5 -46t32.5 -22.5t39.5 -6q43 0 76 3t64 6h3q18 0 18 -19v-128v0z" /> + <glyph glyph-name="uni0422" unicode="&#x422;" horiz-adv-x="594" +d="M570 596q0 -8 -6.5 -13.5t-14.5 -5.5h-149v-557q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v557h-152q-8 0 -14 5.5t-6 13.5v128q0 8 6 13.5t14 5.5h504q8 0 14.5 -5.5t6.5 -13.5v-128v0z" /> + <glyph glyph-name="uni0423" unicode="&#x423;" horiz-adv-x="639" +d="M598 743q27 0 19 -25l-162 -558q-12 -40 -29.5 -71.5t-46 -53t-70 -33t-100.5 -11.5q-15 0 -34 1.5t-38 4t-36 5.5t-27 7q-8 3 -15.5 7t-7.5 12v103q0 8 5 15t18 6q14 -1 31.5 -2t36.5 -2.5t37 -2.5t32 -1q21 0 32 5t16 27l8 35h-19q-17 0 -30.5 2t-25 11t-21.5 26.5 +t-19 47.5l-130 421q-5 16 2.5 20t17.5 4h169q8 0 13 -6t7 -14l79 -309q4 -17 11 -17h8l79 327q5 19 21 19h169z" /> + <glyph glyph-name="uni0424" unicode="&#x424;" horiz-adv-x="1022" +d="M991 385q0 -74 -28 -122.5t-70.5 -77.5t-94 -40.5t-98.5 -11.5q-30 0 -49.5 1t-39.5 2v-116q0 -8 -6 -14t-14 -6h-160q-8 0 -14.5 5t-6.5 13v118q-20 -1 -39 -2t-48 -1q-48 0 -99.5 11.5t-94 40.5t-70.5 77.5t-28 122.5v8q0 75 28 123.5t72.5 77t100 39.5t111.5 11h33 +t34 -1v91q0 8 6.5 13t14.5 5h160q8 0 14 -6t6 -14v-90q17 1 34 1.5t34 0.5q56 0 111.5 -11t100 -39.5t72.5 -77t28 -123.5v-8zM789 393q0 44 -28 62.5t-79 18.5h-13.5t-22.5 -0.5t-22.5 -0.5h-12.5v-170q2 0 12.5 -0.5t22.5 -0.5h23h13q107 0 107 83v8zM340 302h12h22 +t22.5 0.5t13.5 0.5v170h-13.5t-22 0.5t-21.5 0.5h-13q-51 0 -79 -18.5t-28 -62.5v-8q0 -83 107 -83z" /> + <glyph glyph-name="uni0425" unicode="&#x425;" horiz-adv-x="729" +d="M699 11q0 -11 -13 -11h-203q-9 0 -14.5 5t-10.5 13l-108 178l-96 -176q-5 -8 -10.5 -14t-13.5 -6h-187q-6 0 -9.5 3.5t-3.5 8.5q0 2 2 8l204 368l-202 336q-2 4 -2 7q0 12 13 12h204q8 0 13.5 -6t10.5 -13l103 -170l88 170q4 7 10 13t14 6h188q13 0 13 -12q0 -3 -2 -7 +l-201 -354l210 -350q3 -5 3 -9z" /> + <glyph glyph-name="uni0426" unicode="&#x426;" horiz-adv-x="774" +d="M764 -101q0 -8 -6 -14t-14 -6h-154q-8 0 -14 6t-6 14v124q-28 -11 -65 -17t-85 -6h-94q-62 0 -105 10t-72 27t-45.5 39.5t-25.5 48.5t-11 54t-2 55v489q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-489q0 -33 16.5 -41.5t40.5 -8.5h95q24 0 40.5 8.5t16.5 41.5v489q0 8 6 14 +t14 6h163q8 0 14 -6t6 -14v-489q0 -32 -3 -62h66q8 0 14 -5.5t6 -13.5v-254z" /> + <glyph glyph-name="uni0427" unicode="&#x427;" horiz-adv-x="731" +d="M463 264q-29 -17 -75.5 -31t-99.5 -14q-76 0 -122.5 20t-72 53t-34.5 76.5t-9 90.5v263q0 8 6.5 14.5t14.5 6.5h164q8 0 14 -6.5t6 -14.5v-263q0 -26 6.5 -41t18.5 -22t28.5 -8.5t36.5 -1.5q28 0 60 9t58 23v305q0 8 6 14t14 6h163q8 0 14 -6t6 -14v-703q0 -8 -6 -14 +t-14 -6h-163q-8 0 -14 6t-6 14v244z" /> + <glyph glyph-name="uni0428" unicode="&#x428;" horiz-adv-x="1019" +d="M408 184v539q0 8 6 14t14 6h163q8 0 14 -6t6 -14v-539h83q24 0 40.5 8.5t16.5 41.5v489q0 8 6 14t14 6h163q8 0 14 -6t6 -14v-489q0 -27 -2 -55t-11 -54t-25.5 -48.5t-45.5 -39.5t-72.5 -27t-104.5 -10h-367q-62 0 -105 10t-72 27t-45.5 39.5t-25.5 48.5t-11 54t-2 55 +v489q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-489q0 -33 16.5 -41.5t40.5 -8.5h82z" /> + <glyph glyph-name="uni0429" unicode="&#x429;" horiz-adv-x="1047" +d="M1037 -101q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v121q-27 -10 -61 -15t-79 -5h-367q-62 0 -105 10t-72 27t-45.5 39.5t-25.5 48.5t-11 54t-2 55v489q0 8 6.5 14t14.5 6h163q8 0 14 -6t6 -14v-489q0 -33 16.5 -41.5t40.5 -8.5h82v539q0 8 6 14t14 6h163q8 0 14 -6 +t6 -14v-539h83q24 0 40.5 8.5t16.5 41.5v489q0 8 6 14t14 6h163q8 0 14 -6t6 -14v-489q0 -32 -3 -62h66q8 0 14 -5.5t6 -13.5v-254z" /> + <glyph glyph-name="uni042A" unicode="&#x42a;" horiz-adv-x="709" +d="M277 743q8 0 14 -5.5t6 -13.5v-242q14 0 27 0.5t24 0.5q60 0 118.5 -9t104.5 -34t74.5 -70.5t28.5 -117.5v-30q0 -72 -28.5 -117.5t-74.5 -70.5t-104.5 -34t-118.5 -9q-19 0 -45 0.5t-52.5 2t-51.5 4t-43 5.5t-30 7.5t-19.5 13t-10.5 22t-3 33.5v498h-73q-8 0 -14 6 +t-6 14v126q0 8 6 14t14 6h257zM293 318v-162h82q59 0 81 20t22 52v18q0 32 -22 52t-81 20h-82z" /> + <glyph glyph-name="uni042B" unicode="&#x42b;" horiz-adv-x="973" +d="M65 724q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-242q14 0 27 0.5t24 0.5q60 0 118.5 -9t104.5 -34t74.5 -70.5t28.5 -117.5v-30q0 -72 -28.5 -117.5t-74.5 -70.5t-104.5 -34t-118.5 -9q-19 0 -45 0.5t-52.5 2t-51.5 4t-43 5.5t-30 7.5t-19.5 13t-10.5 22t-3 33.5 +v645zM265 318v-162h82q59 0 81 20t22 52v18q0 32 -22 52t-81 20h-82zM908 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704z" /> + <glyph glyph-name="uni042C" unicode="&#x42c;" horiz-adv-x="681" +d="M65 724q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-242q14 0 27 0.5t24 0.5q60 0 118.5 -9t104.5 -34t74.5 -70.5t28.5 -117.5v-30q0 -72 -28.5 -117.5t-74.5 -70.5t-104.5 -34t-118.5 -9q-19 0 -45 0.5t-52.5 2t-51.5 4t-43 5.5t-30 7.5t-19.5 13t-10.5 22t-3 33.5 +v645zM265 318v-162h82q59 0 81 20t22 52v18q0 32 -22 52t-81 20h-82z" /> + <glyph glyph-name="uni042D" unicode="&#x42d;" horiz-adv-x="618" +d="M55 160q0 19 18 19h3q31 -3 63.5 -6t70.5 -3q26 0 52 4t47.5 18.5t36.5 43t18 77.5h-254q-8 0 -14 6t-6 14v118q0 8 6 14t14 6h249q-8 35 -23.5 56t-36 31.5t-43.5 13.5t-46 3q-38 0 -70.5 -3t-63.5 -6h-3q-18 0 -18 19v128q0 11 5 14.5t17 7.5q20 7 62.5 12.5t90.5 5.5 +q69 0 131 -18t108.5 -59.5t74 -108t27.5 -163.5v-63q0 -97 -27.5 -163.5t-74 -108t-108.5 -59.5t-131 -18q-48 0 -90.5 5.5t-62.5 12.5q-12 4 -17 8t-5 14v128z" /> + <glyph glyph-name="uni042E" unicode="&#x42e;" horiz-adv-x="997" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-274h68q4 84 29.5 141.5t67 93.5t95.5 52t114 16q62 0 118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17 +q-59 0 -112 15t-94.5 49.5t-68 90t-31.5 136.5h-68v-262zM744 423q0 81 -24 116t-77 35t-77 -35t-24 -116v-103q0 -81 24 -115.5t77 -34.5t77 34.5t24 115.5v103z" /> + <glyph glyph-name="uni042F" unicode="&#x42f;" horiz-adv-x="693" +d="M20 15q0 5 3 11l145 272q-24 10 -46 27t-39 41.5t-27 56.5t-10 72v16q0 69 22.5 115t64 74.5t99 40.5t127.5 12q27 0 57.5 -1t59.5 -3t54 -4.5t40 -4.5q32 -5 45 -17.5t13 -48.5v-654q0 -8 -6.5 -14t-14.5 -6h-162q-8 0 -14 6t-6 14v245q-8 0 -26 -0.5t-26 -0.5l-7 -4 +l-125 -240q-4 -8 -8 -14t-12 -6h-184q-17 0 -17 15zM248 494q0 -35 23 -54.5t81 -19.5h13h24t23.5 0.5t12.5 0.5v159q-2 0 -13.5 0.5t-24.5 0.5t-24.5 0.5t-14.5 0.5q-100 0 -100 -71v-17z" /> + <glyph glyph-name="uni0430" unicode="&#x430;" horiz-adv-x="575" +d="M525 20q0 -8 -6 -14t-14 -6h-139q-8 0 -14 6t-6 14v21q-29 -21 -65 -35.5t-78 -14.5q-30 0 -60 9t-55 30t-40.5 55t-15.5 85v12q0 90 66.5 126.5t191.5 36.5h43v29q0 18 -5.5 29.5t-14.5 18t-21 8.5t-25 2q-48 0 -93.5 -1.5t-80.5 -5.5h-3q-19 0 -19 20v97q0 17 20 24 +q12 4 33.5 8t46.5 7.5t52 6t51 2.5q54 0 100 -10.5t79.5 -36t52.5 -67t19 -102.5v-354zM339 241h-49q-38 0 -54 -13t-16 -45v-10q0 -26 15 -35t36 -9q18 0 36.5 4.5t31.5 10.5v97z" /> + <glyph glyph-name="uni0431" unicode="&#x431;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v45q0 59 4.5 119.5t25 112.5t63 91t118.5 55l51 11q51 11 73.5 29t25.5 35q1 13 15 13h120q13 0 12 -13q-2 -32 -11 -60.5t-27 -52.5t-47 -41.5t-72 -26.5l-67 -14q-22 -5 -39.5 -11t-31.5 -13q33 9 69 9 +q125 0 184 -62t59 -188v-38zM374 284q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-22q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v22z" /> + <glyph glyph-name="uni0432" unicode="&#x432;" horiz-adv-x="616" +d="M586 174q0 -57 -21.5 -92t-59.5 -55t-90.5 -27t-114.5 -7q-16 0 -42.5 0.5t-54.5 1.5t-54 3t-41 4q-30 5 -41.5 16.5t-11.5 43.5v459q0 32 11.5 43t40.5 16q13 2 39 3.5t54.5 3t55 2.5t42.5 1q62 0 114.5 -7.5t90 -27t58.5 -52t21 -81.5v-13q0 -38 -18 -67.5t-47 -43.5 +q29 -16 49 -46t20 -68v-10zM397 410q0 23 -19.5 35t-69.5 12h-64v-106h79q42 0 58 13t16 34v12zM400 186q0 23 -17.5 38t-59.5 15h-79v-114h66q50 0 70 14t20 40v7z" /> + <glyph glyph-name="uni0433" unicode="&#x433;" horiz-adv-x="422" +d="M386 582q11 0 16 -6.5t5 -14.5v-128q0 -8 -5 -14t-16 -6h-87q-32 0 -42 -12.5t-10 -41.5v-337q0 -8 -6.5 -15t-15.5 -7h-150q-9 0 -14.5 7t-5.5 15v336q0 52 8 94t33 70.5t70.5 44t119.5 15.5h100z" /> + <glyph glyph-name="uni0434" unicode="&#x434;" horiz-adv-x="698" +d="M83 157l76 339q6 29 21 47t38.5 28.5t55.5 14t73 3.5q40 0 72.5 -3.5t56 -14t38.5 -28.5t21 -47l76 -339h52q8 0 14 -6t6 -14v-238q0 -8 -6 -14t-14 -6h-135q-8 0 -14 6t-6 14v101h-318v-101q0 -8 -6 -14t-14 -6h-135q-8 0 -14 6t-6 14v238q0 8 6 14t14 6h48zM347 459 +q-7 0 -9 -11l-61 -291h140l-61 291q-2 11 -9 11z" /> + <glyph glyph-name="uni0435" unicode="&#x435;" horiz-adv-x="602" +d="M562 259q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20t79.5 -56 +t47 -86t15.5 -110v-60zM378 346q0 45 -18 70.5t-56 25.5q-36 0 -55 -25.5t-19 -70.5v-3h148v3z" /> + <glyph glyph-name="uni0436" unicode="&#x436;" horiz-adv-x="952" +d="M380 562q0 8 7 14t15 6h150q8 0 14 -6t6 -14v-227l137 229q7 12 14 15t15 3h173q14 0 14 -12q0 -5 -3 -9l-173 -259l177 -280q2 -3 2 -8t-3.5 -9.5t-9.5 -4.5h-185q-19 0 -31 22l-127 228v-228q0 -8 -6 -15t-14 -7h-150q-8 0 -15 7t-7 15v228l-127 -228q-12 -22 -31 -22 +h-185q-6 0 -9.5 4.5t-3.5 9.5t2 8l177 280l-173 259q-3 4 -3 9q0 12 14 12h173q8 0 15 -3t14 -15l137 -229v227v0z" /> + <glyph glyph-name="uni0437" unicode="&#x437;" horiz-adv-x="520" +d="M424 292q39 -23 52.5 -55t13.5 -64v-11q0 -89 -59.5 -128.5t-180.5 -39.5q-71 0 -122 9t-81 20q-6 2 -11.5 5.5t-5.5 9.5v92q0 8 3 12t14 3q42 -3 88 -6t91 -3q32 0 48.5 8.5t16.5 31.5v7q0 21 -13 35t-53 14h-140q-8 0 -12.5 4.5t-4.5 10.5v90q0 6 4.5 10.5t12.5 4.5 +h140q40 0 53 14t13 35v7q0 23 -16.5 31.5t-48.5 8.5q-45 0 -91 -3t-88 -6q-11 -1 -14 3t-3 12v92q0 6 5.5 9.5t11.5 5.5q30 11 81 20t122 9q121 0 180.5 -39.5t59.5 -128.5v-11q0 -32 -13.5 -64t-52.5 -55z" /> + <glyph glyph-name="uni0438" unicode="&#x438;" horiz-adv-x="630" +d="M55 566q0 16 16 16h147q7 0 12 -4.5t5 -11.5v-242q0 -7 4 -7t8 7l151 235q7 11 14.5 17t19.5 6h112q13 0 22 -9t9 -20v-537q0 -7 -5 -11.5t-13 -4.5h-146q-17 0 -17 16v232q0 7 -5 7t-8 -7l-146 -227q-14 -21 -36 -21h-113q-13 0 -22 8.5t-9 20.5v537z" /> + <glyph glyph-name="uni0439" unicode="&#x439;" horiz-adv-x="630" +d="M55 29v537q0 16 16 16h147q7 0 12 -4.5t5 -11.5v-242q0 -7 4 -7t8 7l151 235q7 11 14.5 17t19.5 6h112q13 0 22 -9t9 -20v-537q0 -7 -5 -11.5t-13 -4.5h-146q-17 0 -17 16v232q0 7 -5 7t-8 -7l-146 -227q-14 -21 -36 -21h-113q-13 0 -22 8.5t-9 20.5zM526 773q0 -1 -2 -7 +q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="uni043A" unicode="&#x43a;" horiz-adv-x="627" +d="M603 14q0 -5 -3.5 -9.5t-9.5 -4.5h-185q-19 0 -31 22l-127 228v-228q0 -8 -6 -15t-14 -7h-150q-8 0 -15 7t-7 15v540q0 8 7 14t15 6h150q8 0 14 -6t6 -14v-227l137 229q7 12 14 15t15 3h173q14 0 14 -12q0 -5 -3 -9l-173 -259l177 -280q2 -3 2 -8z" /> + <glyph glyph-name="uni043B" unicode="&#x43b;" horiz-adv-x="616" +d="M308 459q-7 0 -9 -11l-86 -421q-4 -17 -9.5 -22t-16.5 -5h-155q-22 0 -15 28l103 468q6 29 21 47t38.5 28.5t55.5 14t73 3.5q40 0 72.5 -3.5t56 -14t38.5 -28.5t21 -47l103 -468q7 -28 -15 -28h-155q-11 0 -16.5 5t-9.5 22l-86 421q-2 11 -9 11z" /> + <glyph glyph-name="uni043C" unicode="&#x43c;" horiz-adv-x="744" +d="M689 22q0 -8 -5.5 -15t-14.5 -7h-140q-9 0 -15.5 7t-6.5 15v246q0 10 -5 9t-7 -4l-69 -107q-11 -15 -25 -15h-58q-15 0 -24 15l-70 107q-2 3 -7 4t-5 -9v-246q0 -8 -5.5 -15t-14.5 -7h-140q-9 0 -15.5 7t-6.5 15v538q0 22 24 22h118q29 0 43 -24l123 -198q5 -9 9 -9 +q5 0 10 9l123 198q14 24 43 24h116q25 0 25 -22v-538z" /> + <glyph glyph-name="uni043D" unicode="&#x43d;" horiz-adv-x="631" +d="M576 22q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v197h-137v-197q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v538q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-184h137v184q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-538z" /> + <glyph glyph-name="uni043E" unicode="&#x43e;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM374 320q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-58q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v58z" /> + <glyph glyph-name="uni043F" unicode="&#x43f;" horiz-adv-x="631" +d="M345 582q74 0 119.5 -15.5t70 -44t33 -70.5t8.5 -94v-336q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v337q0 29 -10 41.5t-42 12.5h-33q-32 0 -42 -12.5t-10 -41.5v-337q0 -8 -6.5 -15t-15.5 -7h-150q-9 0 -14.5 7t-5.5 15v336q0 52 8 94t33 70.5t70.5 44 +t119.5 15.5h59z" /> + <glyph glyph-name="uni0440" unicode="&#x440;" horiz-adv-x="616" +d="M578 252q0 -60 -16 -108t-49 -82t-82.5 -52.5t-115.5 -18.5q-12 0 -32 2t-36 4v-168q0 -8 -6 -14.5t-14 -6.5h-150q-8 0 -15 6.5t-7 14.5v705q0 13 6.5 20t29.5 12q39 8 97.5 16.5t126.5 8.5q124 0 193.5 -66.5t69.5 -194.5v-78zM386 330q0 45 -14.5 73.5t-56.5 28.5 +q-22 0 -38 -1t-30 -3v-274q15 -2 32.5 -3.5t35.5 -1.5q42 0 56.5 29t14.5 74v78z" /> + <glyph glyph-name="uni0441" unicode="&#x441;" horiz-adv-x="474" +d="M436 28q0 -10 -5 -14.5t-15 -6.5q-26 -6 -59 -11t-78 -5q-115 0 -177 69t-62 193v75q0 123 62 193t177 70q45 0 80.5 -5.5t56.5 -10.5q10 -2 15 -6.5t5 -14.5v-113q0 -8 -5.5 -13.5t-13.5 -5.5h-2q-26 2 -52 4.5t-63 2.5q-32 0 -50 -22.5t-18 -78.5v-75q0 -56 18 -78 +t50 -22q37 0 63 2l52 4h2q8 0 13.5 -5.5t5.5 -13.5v-112v0z" /> + <glyph glyph-name="uni0442" unicode="&#x442;" horiz-adv-x="570" +d="M381 415v-393q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v393h-147q-8 0 -15 6.5t-7 15.5v125q0 9 7 14.5t15 5.5h486q8 0 15 -5.5t7 -14.5v-125q0 -9 -7 -15.5t-15 -6.5h-147z" /> + <glyph glyph-name="uni0443" unicode="&#x443;" horiz-adv-x="621" +d="M604 564q0 -1 -0.5 -2t-0.5 -2l-170 -594q-11 -40 -27 -71.5t-42 -53t-65.5 -33t-98.5 -11.5q-15 0 -34 1.5t-38 4t-36 5.5t-27 7q-8 3 -15.5 7t-7.5 12v97q0 8 6.5 14.5t15.5 6.5h1q14 -1 31.5 -2t36.5 -2.5t37 -2.5t32 -1q21 0 35 8t19 30l8 33h-13q-17 0 -31 2.5 +t-26 13t-22.5 31t-21.5 57.5l-132 441q-1 2 -1 7q0 15 22 15h163q8 0 13 -6t7 -14l79 -344q4 -17 11 -17h8l79 362q3 19 21 19h163q8 0 14.5 -5t6.5 -13z" /> + <glyph glyph-name="uni0444" unicode="&#x444;" horiz-adv-x="930" +d="M892 252q0 -60 -16 -108t-49 -82t-82.5 -52.5t-115.5 -18.5q-12 0 -32 2t-36 4v-168q0 -8 -6 -14.5t-14 -6.5h-150q-8 0 -15 6.5t-7 14.5v168q-16 -2 -36 -4t-32 -2q-66 0 -115.5 18.5t-82.5 52.5t-49 82t-16 108v78q0 128 69.5 194.5t193.5 66.5q34 0 67 -3v165 +q0 8 7 14t15 6h151q8 0 14 -6t6 -14v-165q33 3 68 3q124 0 193.5 -66.5t69.5 -194.5v-78zM700 330q0 45 -14.5 73.5t-56.5 28.5q-22 0 -38 -1t-30 -3v-274q15 -2 32.5 -3.5t35.5 -1.5q42 0 56.5 29t14.5 74v78zM230 252q0 -45 14.5 -74t56.5 -29q18 0 35.5 1.5t32.5 3.5v274 +q-14 2 -30 3t-38 1q-42 0 -56.5 -28.5t-14.5 -73.5v-78z" /> + <glyph glyph-name="uni0445" unicode="&#x445;" horiz-adv-x="647" +d="M619 15q0 -6 -4.5 -10.5t-9.5 -4.5h-188q-8 0 -13 6.5t-11 15.5l-85 134l-78 -135q-11 -21 -25 -21h-164q-12 0 -12 13q0 4 2 8l171 285l-170 255q-2 4 -2 7q0 5 4 9.5t9 4.5h185q8 0 14.5 -6t11.5 -15l77 -121l69 121q11 21 25 21h166q12 0 12 -13q0 -4 -2 -8l-164 -272 +l180 -267q2 -2 2 -7z" /> + <glyph glyph-name="uni0446" unicode="&#x446;" horiz-adv-x="659" +d="M286 0q-74 0 -119.5 15.5t-70.5 44t-33 70t-8 94.5v336q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-337q0 -29 10 -41.5t42 -12.5h33q32 0 42 12.5t10 41.5v337q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-336q0 -19 -1 -36t-3 -33h50q8 0 15 -6.5t7 -14.5v-233 +q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v110q-22 -5 -48 -8t-58 -3h-59z" /> + <glyph glyph-name="uni0447" unicode="&#x447;" horiz-adv-x="605" +d="M30 561q0 8 6.5 14.5t14.5 6.5h151q8 0 14 -6.5t6 -14.5v-164q0 -42 10 -57t35 -15q14 0 40 5.5t53 19.5v211q0 8 6 14.5t14 6.5h149q8 0 14.5 -6.5t6.5 -14.5v-541q0 -8 -6 -14t-14 -6h-150q-8 0 -14 6t-6 14v199q-38 -25 -76.5 -34t-76.5 -9q-54 0 -88.5 19t-54 49.5 +t-27 69t-7.5 77.5v170v0z" /> + <glyph glyph-name="uni0448" unicode="&#x448;" horiz-adv-x="900" +d="M601 169q32 0 42 12.5t10 41.5v337q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-336q0 -53 -8.5 -94.5t-33 -70t-70 -44t-119.5 -15.5h-328q-74 0 -119.5 15.5t-70.5 44t-33 70t-8 94.5v336q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-337q0 -29 10 -41.5t42 -12.5h55 +v391q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-391h55z" /> + <glyph glyph-name="uni0449" unicode="&#x449;" horiz-adv-x="919" +d="M909 -99q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v109q-40 -10 -102 -10h-328q-74 0 -119.5 15.5t-70.5 44t-33 70t-8 94.5v336q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-337q0 -29 10 -41.5t42 -12.5h55v391q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-391h55 +q32 0 42 12.5t10 41.5v337q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-336q0 -19 -1 -36t-3 -33h46q8 0 15 -6.5t7 -14.5v-233v0z" /> + <glyph glyph-name="uni044A" unicode="&#x44a;" horiz-adv-x="617" +d="M21 438q-11 0 -16 6t-5 14v103q0 8 5 14.5t16 6.5h216q8 0 15 -6.5t7 -14.5v-191q16 1 29 1h23q62 0 114.5 -7t90.5 -27t59.5 -55t21.5 -92v-16q0 -57 -21.5 -92t-59.5 -55t-90.5 -27t-114.5 -7q-16 0 -42.5 0.5t-54.5 1.5t-54 3t-41 4q-30 5 -41.5 16.5t-11.5 43.5v376 +h-45zM255 239v-114h66q50 0 70 14t20 40v6q0 26 -20 40t-70 14h-66z" /> + <glyph glyph-name="uni044B" unicode="&#x44b;" horiz-adv-x="898" +d="M55 561q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-191q16 1 29 1h23q62 0 114.5 -7t90.5 -27t59.5 -55t21.5 -92v-16q0 -57 -21.5 -92t-59.5 -55t-90.5 -27t-114.5 -7q-16 0 -42.5 0.5t-54.5 1.5t-54 3t-41 4q-30 5 -41.5 16.5t-11.5 43.5v499zM244 239v-114h66 +q50 0 70 14t20 40v6q0 26 -20 40t-70 14h-66zM843 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539z" /> + <glyph glyph-name="uni044C" unicode="&#x44c;" horiz-adv-x="606" +d="M55 561q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-191q16 1 29 1h23q62 0 114.5 -7t90.5 -27t59.5 -55t21.5 -92v-16q0 -57 -21.5 -92t-59.5 -55t-90.5 -27t-114.5 -7q-16 0 -42.5 0.5t-54.5 1.5t-54 3t-41 4q-30 5 -41.5 16.5t-11.5 43.5v499zM244 239v-114h66 +q50 0 70 14t20 40v6q0 26 -20 40t-70 14h-66z" /> + <glyph glyph-name="uni044D" unicode="&#x44d;" horiz-adv-x="541" +d="M122 225q-11 0 -16 6t-5 14v85q0 8 5 14.5t16 6.5h186q-2 24 -9.5 39.5t-20.5 24t-31 11.5t-41 3q-27 0 -46 -0.5t-33.5 -1.5t-26 -2.5t-24.5 -2.5h-2q-8 0 -13.5 5.5t-5.5 13.5v113q0 10 5 14.5t15 6.5q21 5 57 10.5t95 5.5q76 0 128.5 -18t84.5 -52t46.5 -83t14.5 -110 +v-75q0 -62 -14.5 -110.5t-46.5 -82t-84.5 -51.5t-128.5 -18q-45 0 -85.5 5t-66.5 11q-10 2 -15 6.5t-5 14.5v112q0 8 5.5 13.5t13.5 5.5h2q13 -1 24.5 -2t26 -2t33.5 -1.5t46 -0.5q22 0 40 2.5t30.5 10.5t20 22t10.5 37h-185z" /> + <glyph glyph-name="uni044E" unicode="&#x44e;" horiz-adv-x="910" +d="M248 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-194h99q12 110 79 167t182 57q126 0 194 -69t68 -202v-58q0 -133 -68 -202t-194 -69q-113 0 -179.5 55.5t-80.5 162.5h-100v-187zM679 320q0 60 -18 85t-53 25 +t-53.5 -25t-18.5 -85v-58q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v58z" /> + <glyph glyph-name="uni044F" unicode="&#x44f;" horiz-adv-x="620" +d="M220 18q-5 -8 -10 -13t-22 -5h-158q-10 0 -13.5 8.5t2.5 18.5l116 201q-20 8 -38 22.5t-32 35.5t-22.5 47.5t-8.5 58.5v12q0 54 19.5 89.5t55 57t85.5 30.5t111 9q86 0 135.5 -3.5t75.5 -7.5q27 -4 38 -13.5t11 -37.5v-512q0 -7 -5 -11.5t-13 -4.5h-156q-16 0 -16 16v191 +h-47zM223 387q0 -28 16 -43t67 -15h19h21.5t18.5 0.5t10 0.5v124q-2 0 -10 0.5t-18.5 0.5t-21.5 0.5t-20 0.5q-50 0 -66 -14t-16 -42v-13z" /> + <glyph glyph-name="uni0451" unicode="&#x451;" horiz-adv-x="602" +d="M562 259q0 -10 -6 -16t-15 -6h-311v-2q0 -40 20 -63t75 -23q20 0 47 0.5t54 2t51 2.5t38 3h4q18 0 18 -17v-90q0 -12 -4 -18t-16 -10q-48 -16 -101 -23.5t-116 -7.5q-51 0 -98 14t-83 45.5t-57.5 81t-21.5 121.5v66q0 132 71.5 202t194.5 70q66 0 114 -20t79.5 -56 +t47 -86t15.5 -110v-60zM378 346q0 45 -18 70.5t-56 25.5q-36 0 -55 -25.5t-19 -70.5v-3h148v3zM498 657q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM264 657q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98 +q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="uni0452" unicode="&#x452;" horiz-adv-x="632" +d="M247 631v-79q32 23 67 30.5t81 7.5q54 0 89.5 -17.5t56 -48.5t29 -72t8.5 -87v-386q0 -54 -12 -89.5t-34.5 -57t-53.5 -30t-68 -8.5q-23 0 -45.5 2t-48.5 7q-20 3 -20 21v93q0 8 6 14t15 6h43q18 0 22 11t4 31v386q0 40 -16 53t-47 13q-35 0 -76 -22v-387q0 -8 -5.5 -15 +t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v609h-45q-8 0 -14 6t-6 14v42q0 8 6 14t14 6h45v40q0 8 6 14t14 6h152q8 0 14 -6t6 -14v-40h113q8 0 14 -6t6 -14v-42q0 -8 -6 -14t-14 -6h-113z" /> + <glyph glyph-name="uni0453" unicode="&#x453;" horiz-adv-x="422" +d="M386 582q11 0 16 -6.5t5 -14.5v-128q0 -8 -5 -14t-16 -6h-87q-32 0 -42 -12.5t-10 -41.5v-337q0 -8 -6.5 -15t-15.5 -7h-150q-9 0 -14.5 7t-5.5 15v336q0 52 8 94t33 70.5t70.5 44t119.5 15.5h100zM459 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7 +q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="uni0454" unicode="&#x454;" horiz-adv-x="541" +d="M233 225q6 -46 31 -59t71 -13q27 0 46 0.5t33.5 1.5t26 2t24.5 2h2q8 0 13.5 -5.5t5.5 -13.5v-112q0 -10 -5 -14.5t-15 -6.5q-26 -6 -66.5 -11t-85.5 -5q-76 0 -128.5 18t-84.5 51.5t-46.5 82t-14.5 110.5v75q0 61 14.5 110t46.5 83t84.5 52t128.5 18q59 0 95 -5.5 +t57 -10.5q10 -2 15 -6.5t5 -14.5v-113q0 -8 -5.5 -13.5t-13.5 -5.5h-2q-13 1 -24.5 2.5t-26 2.5t-33.5 1.5t-46 0.5q-24 0 -42 -3t-30.5 -11.5t-20 -24t-9.5 -39.5h186q11 0 16 -6.5t5 -14.5v-85q0 -8 -5 -14t-16 -6h-186z" /> + <glyph glyph-name="uni0455" unicode="&#x455;" horiz-adv-x="517" +d="M478 170q0 -38 -13.5 -70.5t-42 -56.5t-72 -38t-104.5 -14q-54 0 -102 7t-83 17q-19 5 -19 22v103q0 9 5 15t16 6h4q22 -3 47 -6t48.5 -5t44 -3.5t32.5 -1.5q29 0 38 7.5t9 21.5q0 8 -6 15.5t-24 17.5l-122 66q-95 51 -95 158q0 77 54 118.5t166 41.5q57 0 102.5 -7.5 +t81.5 -17.5q20 -5 20 -22v-106q0 -20 -17 -20h-3q-11 1 -33 4t-47 5.5t-50 4.5t-42 2q-37 0 -37 -22q0 -11 22 -23l117 -63q61 -33 83 -73.5t22 -82.5z" /> + <glyph glyph-name="uni0456" unicode="&#x456;" horiz-adv-x="313" +d="M258 657q0 -8 -7 -14t-15 -6h-158q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h158q8 0 15 -6t7 -14v-98zM253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539z" /> + <glyph glyph-name="uni0457" unicode="&#x457;" horiz-adv-x="313" +d="M253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539zM354 657q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM120 657q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6 +t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="uni0458" unicode="&#x458;" horiz-adv-x="312" +d="M257 657q0 -8 -7 -14t-15 -6h-157q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h157q8 0 15 -6t7 -14v-98zM253 -21q0 -54 -12.5 -89.5t-34.5 -57t-53.5 -30t-68.5 -8.5q-23 0 -45.5 2t-48.5 7q-20 3 -20 21v93q0 8 6 14t15 6h43q18 0 22 11t4 31v582q0 8 7 14.5t15 6.5h149 +q8 0 15 -6.5t7 -14.5v-582z" /> + <glyph glyph-name="uni0459" unicode="&#x459;" horiz-adv-x="944" +d="M325 434q-5 0 -9 -2t-6 -10l-91 -400q-2 -9 -8 -15.5t-20 -6.5h-145q-17 0 -22 8.5t-2 21.5l115 461q7 28 18.5 46t28.5 28t41 13.5t57 3.5h282q11 0 16.5 -6.5t5.5 -14.5v-191q16 1 29 1h23q62 0 114.5 -7t90.5 -27t59.5 -55t21.5 -92v-16q0 -57 -21.5 -92t-59.5 -55 +t-90.5 -27t-114.5 -7q-16 0 -42.5 0.5t-54.5 1.5t-54 3t-41 4q-30 5 -41.5 16.5t-11.5 43.5v372h-68zM582 239v-114h66q50 0 70 14t20 40v6q0 26 -20 40t-70 14h-66z" /> + <glyph glyph-name="uni045A" unicode="&#x45a;" horiz-adv-x="938" +d="M384 219h-137v-197q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v538q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-184h137v184q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-190q16 1 31 1h25q62 0 114.5 -7t90.5 -27t59.5 -55t21.5 -92v-16q0 -57 -21.5 -92 +t-59.5 -55t-90.5 -27t-114.5 -7q-66 0 -123.5 1t-102.5 6q-22 2 -22 22v197zM576 239v-114h66q50 0 70 14t20 40v6q0 26 -20 40t-70 14h-66z" /> + <glyph glyph-name="uni045B" unicode="&#x45b;" horiz-adv-x="632" +d="M578 20q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v345q0 40 -16 53t-47 13q-35 0 -76 -22v-387q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v599h-35q-8 0 -14 6t-6 14v42q0 8 6 14t14 6h35v50q0 8 6 14t14 6h152q8 0 14 -6t6 -14v-50h112q8 0 14 -6t6 -14v-42 +q0 -8 -6 -14t-14 -6h-112v-69q32 23 67 30.5t81 7.5q54 0 89.5 -17.5t56 -48.5t29 -72t8.5 -87v-345v0z" /> + <glyph glyph-name="uni045C" unicode="&#x45c;" horiz-adv-x="627" +d="M603 14q0 -5 -3.5 -9.5t-9.5 -4.5h-185q-19 0 -31 22l-127 228v-228q0 -8 -6 -15t-14 -7h-150q-8 0 -15 7t-7 15v540q0 8 7 14t15 6h150q8 0 14 -6t6 -14v-227l137 229q7 12 14 15t15 3h173q14 0 14 -12q0 -5 -3 -9l-173 -259l177 -280q2 -3 2 -8zM531 772q0 -4 -4 -8 +l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="uni045E" unicode="&#x45e;" horiz-adv-x="621" +d="M583 582q14 0 18 -6.5t2 -15.5l-170 -594q-11 -40 -27 -71.5t-42 -53t-65.5 -33t-98.5 -11.5q-15 0 -34 1.5t-38 4t-36 5.5t-27 7q-8 3 -15.5 7t-7.5 12v97q0 8 6.5 14.5t15.5 6.5h1q14 -1 31.5 -2t36.5 -2.5t37 -2.5t32 -1q21 0 35 8t19 30l8 33h-13q-17 0 -31 2.5 +t-26 13t-22.5 31t-21.5 57.5l-132 441q-4 13 3.5 17.5t17.5 4.5h163q8 0 13 -6t7 -14l79 -344q4 -17 11 -17h8l79 362q3 19 21 19h163zM527 773q0 -1 -2 -7q-27 -70 -79 -106.5t-127 -36.5t-127 36.5t-79 106.5q-2 6 -2 7q0 6 9 6h118q9 0 11.5 -3.5t4.5 -9.5q8 -28 28 -37 +t37 -9t37 9t28 37q2 6 4.5 9.5t11.5 3.5h118q9 0 9 -6z" /> + <glyph glyph-name="uni045F" unicode="&#x45f;" horiz-adv-x="631" +d="M412 -99q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v103q-52 7 -84 25t-50 46t-24 65.5t-6 83.5v336q0 8 5.5 15t14.5 7h150q9 0 15.5 -7t6.5 -15v-337q0 -29 10 -41.5t42 -12.5h33q32 0 42 12.5t10 41.5v337q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-336 +q0 -46 -6 -83.5t-24 -65.5t-50 -46t-84 -25v-103v0z" /> + <glyph glyph-name="uni0462" unicode="&#x462;" horiz-adv-x="689" +d="M2 550q-8 0 -14 6t-6 14v88q0 8 6 14t14 6h63v46q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-46h80q8 0 14 -6t6 -14v-88q0 -8 -6 -14t-14 -6h-80v-68q14 0 27 0.5t24 0.5q60 0 118.5 -9t104.5 -34t74.5 -70.5t28.5 -117.5v-30q0 -72 -28.5 -117.5t-74.5 -70.5 +t-104.5 -34t-118.5 -9q-19 0 -45 0.5t-52.5 2t-51.5 4t-43 5.5t-30 7.5t-19.5 13t-10.5 22t-3 33.5v471h-63zM265 318v-162h82q59 0 81 20t22 52v18q0 32 -22 52t-81 20h-82z" /> + <glyph glyph-name="uni0463" unicode="&#x463;" horiz-adv-x="606" +d="M-15 477q-8 0 -14 6t-6 14v118q0 8 6 14t14 6h70v87q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-87h101q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-101v-107q16 1 29 1h23q62 0 114.5 -7t90.5 -27t59.5 -55t21.5 -92v-16q0 -57 -21.5 -92t-59.5 -55t-90.5 -27 +t-114.5 -7q-16 0 -42.5 0.5t-54.5 1.5t-54 3t-41 4q-30 5 -41.5 16.5t-11.5 43.5v415h-70zM244 239v-114h66q50 0 70 14t20 40v6q0 26 -20 40t-70 14h-66z" /> + <glyph glyph-name="uni0472" unicode="&#x472;" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM354 170q50 0 74.5 30.5t26.5 102.5h-12q-20 0 -39 6.5t-45 21.5 +l-25 14q-14 8 -23.5 12t-22.5 4q-17 0 -25.5 -8t-9.5 -19v-10q0 -84 24 -119t77 -35zM354 574q-48 0 -72 -29t-28 -94q18 5 38 5q15 0 31.5 -5.5t39.5 -19.5l33 -19q11 -5 20 -9.5t20 -4.5q19 0 19 16v21q0 74 -25 106.5t-76 32.5z" /> + <glyph glyph-name="uni0473" unicode="&#x473;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM303 151q31 0 49 20.5t21 69.5h-5q-14 0 -28 5t-33 16l-18 10q-11 5 -18 8t-15 3q-20 0 -25 -14q0 -65 18.5 -91.5t53.5 -26.5zM303 430q-29 0 -47.5 -18 +t-23.5 -60q12 3 27 3q11 0 22.5 -4t28.5 -14l24 -13q8 -5 14.5 -8t14.5 -3q7 0 11 4q0 62 -18 87.5t-53 25.5z" /> + <glyph glyph-name="uni0474" unicode="&#x474;" horiz-adv-x="853" +d="M852 574q1 -9 -2 -14.5t-14 -5.5h-118q-8 0 -13.5 3.5t-7.5 15.5q-2 14 -6.5 21t-15.5 7q-14 0 -17.5 -7t-6.5 -21l-101 -462q-8 -37 -25.5 -60.5t-42.5 -36.5t-56.5 -18t-67.5 -5t-67.5 5t-56.5 18t-42.5 36.5t-25.5 60.5l-134 612q0 2 -0.5 2.5t-0.5 2.5q0 15 17 15 +h173q8 0 13.5 -5.5t7.5 -13.5l105 -553q2 -7 3.5 -10.5t7.5 -3.5t8 3.5t4 10.5l82 434q9 48 27.5 77t44 45t57.5 21t68 5q40 0 75 -9t62 -29.5t44.5 -55t21.5 -85.5z" /> + <glyph glyph-name="uni0475" unicode="&#x475;" horiz-adv-x="754" +d="M475 106q-11 -39 -28.5 -62t-39.5 -35t-47 -15t-50 -3t-50 3t-46.5 15t-39 35t-28.5 62l-125 454q0 2 -0.5 2.5t-0.5 2.5q0 8 5 12.5t12 4.5h164q8 0 14 -6t8 -15l75 -365q3 -18 12 -18q10 0 13 18l53 256q9 45 26.5 73t41.5 43.5t53.5 21t63.5 5.5q37 0 70 -9t58.5 -29 +t42 -53t20.5 -81q1 -8 -1.5 -13.5t-13.5 -5.5h-111q-8 0 -13 3.5t-7 14.5q-2 13 -6 19.5t-13 6.5q-11 0 -15.5 -6.5t-8.5 -19.5z" /> + <glyph glyph-name="uni0490" unicode="&#x490;" horiz-adv-x="580" +d="M257 20q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v508q0 72 22 116t58 68t82 32t94 8h24t23 -1v53q0 12 6.5 16.5t14.5 4.5h129q8 0 14 -4.5t6 -16.5v-206q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-508z" /> + <glyph glyph-name="uni0491" unicode="&#x491;" horiz-adv-x="422" +d="M55 359q0 49 7 89t28.5 68.5t60.5 45.5t102 20v49q0 12 6.5 16.5t14.5 4.5h113q8 0 14 -4.5t6 -16.5v-197q0 -8 -5 -14t-16 -6h-87q-32 0 -42 -12.5t-10 -41.5v-338q0 -8 -6.5 -15t-15.5 -7h-150q-9 0 -14.5 7t-5.5 15v337v0z" /> + <glyph glyph-name="uni0492" unicode="&#x492;" horiz-adv-x="617" +d="M114 298h-74q-8 0 -14 6t-6 14v118q0 8 6 14t14 6h74v72q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-72h165q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-165v-278q0 -8 -6 -14 +t-14 -6h-163q-8 0 -14 6t-6 14v278z" /> + <glyph glyph-name="uni0493" unicode="&#x493;" horiz-adv-x="523" +d="M289 156v-134q0 -8 -6.5 -15t-15.5 -7h-150q-9 0 -14.5 7t-5.5 15v134h-56q-11 0 -16 6t-5 14v128q0 8 5 14.5t16 6.5h56v33q0 52 8 94t33 70.5t70.5 44t119.5 15.5h154q11 0 16 -6.5t5 -14.5v-128q0 -8 -5 -14t-16 -6h-141q-32 0 -42 -12.5t-10 -41.5v-34h155 +q11 0 16 -6.5t5 -14.5v-128q0 -8 -5 -14t-16 -6h-155z" /> + <glyph glyph-name="uni0496" unicode="&#x496;" horiz-adv-x="1094" +d="M650 336v-316q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v316l-176 -319q-4 -7 -8 -12t-13 -5h-210q-13 0 -13 11q0 5 3 10l219 356l-218 344q-4 5 -4 11q0 11 14 11h192q8 0 13 -4.5t9 -11.5l192 -320v317q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-317 +l192 320q4 7 9 11.5t13 4.5h192q14 0 14 -11q0 -6 -4 -11l-218 -344l208 -338q10 -15 12 -26t2 -31v-83q0 -8 -6 -14t-14 -6h-194q-8 0 -14 6t-6 14v103z" /> + <glyph glyph-name="uni0497" unicode="&#x497;" horiz-adv-x="952" +d="M572 250v-228q0 -8 -6 -15t-14 -7h-150q-8 0 -15 7t-7 15v228l-127 -228q-12 -22 -31 -22h-185q-6 0 -9.5 4.5t-3.5 9.5t2 8l177 280l-173 259q-3 4 -3 9q0 12 14 12h173q8 0 15 -3t14 -15l137 -229v227q0 8 7 14t15 6h150q8 0 14 -6t6 -14v-227l137 229q7 12 14 15t15 3 +h173q14 0 14 -12q0 -5 -3 -9l-173 -259l166 -263q10 -15 12 -26t2 -31v-83q0 -8 -6 -14t-14 -6h-180q-8 0 -14 6t-6 14v103z" /> + <glyph glyph-name="uni049A" unicode="&#x49a;" horiz-adv-x="713" +d="M675 39q10 -15 12 -26t2 -31v-83q0 -8 -6 -14t-14 -6h-194q-8 0 -14 6t-6 14v102l-186 335v-316q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v704q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-317l192 320q4 7 9 11.5t13 4.5h192q14 0 14 -11q0 -6 -4 -11 +l-218 -344z" /> + <glyph glyph-name="uni049B" unicode="&#x49b;" horiz-adv-x="627" +d="M247 250v-228q0 -8 -6 -15t-14 -7h-150q-8 0 -15 7t-7 15v540q0 8 7 14t15 6h150q8 0 14 -6t6 -14v-227l137 229q7 12 14 15t15 3h173q14 0 14 -12q0 -5 -3 -9l-173 -259l166 -263q10 -15 12 -26t2 -31v-83q0 -8 -6 -14t-14 -6h-180q-8 0 -14 6t-6 14v100z" /> + <glyph glyph-name="uni04A2" unicode="&#x4a2;" horiz-adv-x="777" +d="M563 0h-65q-8 0 -14 6t-6 14v272h-209v-272q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v704q0 8 6.5 13.5t14.5 5.5h163q8 0 14 -5.5t6 -13.5v-256h209v256q0 8 6 13.5t14 5.5h163q8 0 14 -5.5t6 -13.5v-552h66q8 0 14 -5.5t6 -13.5v-254q0 -8 -6 -14t-14 -6h-164 +q-8 0 -14 6t-6 14v101z" /> + <glyph glyph-name="uni04A3" unicode="&#x4a3;" horiz-adv-x="662" +d="M458 0h-52q-9 0 -15.5 7t-6.5 15v197h-137v-197q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v538q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-184h137v184q0 8 6.5 15t15.5 7h150q9 0 14.5 -7t5.5 -15v-388h56q8 0 14 -5.5t6 -13.5v-254q0 -8 -6 -14t-14 -6 +h-154q-8 0 -14 6t-6 14v101z" /> + <glyph glyph-name="uni04AE" unicode="&#x4ae;" horiz-adv-x="682" +d="M662 730q0 -2 -2 -8l-147 -345q-16 -37 -33.5 -57.5t-37.5 -28.5v-271q0 -8 -6 -14t-14 -6h-163q-8 0 -13.5 6t-5.5 14v271q-20 8 -37.5 28.5t-33.5 57.5l-147 345q-2 6 -2 8q0 13 14 13h181q8 0 12.5 -5.5t7.5 -13.5l96 -265q4 -10 10 -10t10 10l96 265q3 8 7.5 13.5 +t12.5 5.5h181q14 0 14 -13z" /> + <glyph glyph-name="uni04AF" unicode="&#x4af;" horiz-adv-x="620" +d="M407 -170q0 -8 -6 -15t-14 -7h-151q-8 0 -15 7t-7 15v179q-22 11 -39.5 34t-28.5 63l-125 454q0 2 -0.5 2.5t-0.5 2.5q0 8 5 12.5t12 4.5h164q8 0 14 -6t8 -15l75 -365q3 -18 12 -18q10 0 13 18l75 365q2 9 8 15t14 6h164q7 0 12.5 -4.5t5.5 -12.5q0 -2 -0.5 -2.5 +t-0.5 -2.5l-126 -454q-11 -40 -28.5 -63t-39.5 -34v-179v0z" /> + <glyph glyph-name="uni04B0" unicode="&#x4b0;" horiz-adv-x="682" +d="M442 123v-103q0 -8 -6 -14t-14 -6h-163q-8 0 -13.5 6t-5.5 14v103h-149q-11 0 -16 6t-5 14v128q0 8 5 14.5t16 6.5h146q-20 8 -36.5 28.5t-31.5 56.5l-147 345q-2 6 -2 8q0 13 14 13h181q8 0 12.5 -5.5t7.5 -13.5l96 -265q4 -10 10 -10t10 10l96 265q3 8 7.5 13.5 +t12.5 5.5h181q14 0 14 -13q0 -2 -2 -8l-147 -345q-16 -36 -32.5 -56.5t-36.5 -28.5h147q11 0 16 -6.5t5 -14.5v-128q0 -8 -5 -14t-16 -6h-149z" /> + <glyph glyph-name="uni04B1" unicode="&#x4b1;" horiz-adv-x="620" +d="M407 -170q0 -8 -6 -15t-14 -7h-151q-8 0 -15 7t-7 15v49h-128q-11 0 -16 6t-5 14v74q0 8 5 14.5t16 6.5h128v15q-22 11 -39.5 34t-28.5 63l-125 454q0 2 -0.5 2.5t-0.5 2.5q0 8 5 12.5t12 4.5h164q8 0 14 -6t8 -15l75 -365q3 -18 12 -18q10 0 13 18l75 365q2 9 8 15t14 6 +h164q7 0 12.5 -4.5t5.5 -12.5q0 -2 -0.5 -2.5t-0.5 -2.5l-126 -454q-11 -40 -28.5 -63t-39.5 -34v-15h130q11 0 16 -6.5t5 -14.5v-74q0 -8 -5 -14t-16 -6h-130v-49v0z" /> + <glyph glyph-name="uni04B2" unicode="&#x4b2;" horiz-adv-x="736" +d="M356 196l-96 -176q-5 -8 -10.5 -14t-13.5 -6h-187q-6 0 -9.5 3.5t-3.5 8.5q0 2 2 8l204 368l-202 336q-2 4 -2 7q0 12 13 12h204q8 0 13.5 -6t10.5 -13l103 -170l88 170q4 7 10 13t14 6h188q13 0 13 -12q0 -3 -2 -7l-201 -354l199 -331q9 -15 11.5 -26t2.5 -31v-83 +q0 -8 -6 -14t-14 -6h-194q-8 0 -14 6t-6 14v102z" /> + <glyph glyph-name="uni04B3" unicode="&#x4b3;" horiz-adv-x="647" +d="M308 156l-78 -135q-11 -21 -25 -21h-164q-12 0 -12 13q0 4 2 8l171 285l-170 255q-2 4 -2 7q0 5 4 9.5t9 4.5h185q8 0 14.5 -6t11.5 -15l77 -121l69 121q11 21 25 21h166q12 0 12 -13q0 -4 -2 -8l-164 -272l169 -250q10 -14 12 -25.5t2 -31.5v-83q0 -8 -6 -14t-14 -6 +h-174q-8 0 -14 6t-6 14v102z" /> + <glyph glyph-name="uni04B6" unicode="&#x4b6;" horiz-adv-x="777" +d="M563 0h-65q-8 0 -14 6t-6 14v244q-29 -17 -75.5 -31t-99.5 -14q-76 0 -122.5 20t-72 53t-34.5 76.5t-9 90.5v263q0 8 6.5 14.5t14.5 6.5h164q8 0 14 -6.5t6 -14.5v-263q0 -26 6.5 -41t18.5 -22t28.5 -8.5t36.5 -1.5q28 0 60 9t58 23v305q0 8 6 14t14 6h163q8 0 14 -6 +t6 -14v-551h66q8 0 14 -5.5t6 -13.5v-254q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v101z" /> + <glyph glyph-name="uni04B7" unicode="&#x4b7;" horiz-adv-x="636" +d="M432 0h-52q-8 0 -14 6t-6 14v199q-38 -25 -76.5 -34t-76.5 -9q-54 0 -88.5 19t-54 49.5t-27 69t-7.5 77.5v170q0 8 6.5 14.5t14.5 6.5h151q8 0 14 -6.5t6 -14.5v-164q0 -42 10 -57t35 -15q14 0 40 5.5t53 19.5v211q0 8 6 14.5t14 6.5h149q8 0 14.5 -6.5t6.5 -14.5v-389 +h56q8 0 14 -5.5t6 -13.5v-254q0 -8 -6 -14t-14 -6h-154q-8 0 -14 6t-6 14v101z" /> + <glyph glyph-name="uni04BA" unicode="&#x4ba;" horiz-adv-x="746" +d="M268 479q29 17 75.5 31t99.5 14q76 0 122.5 -20t72 -53t34.5 -76.5t9 -90.5v-263q0 -8 -6.5 -14.5t-14.5 -6.5h-164q-8 0 -14 6.5t-6 14.5v263q0 26 -6.5 41t-18.5 22t-28.5 8.5t-36.5 1.5q-28 0 -60 -9t-58 -23v-305q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v703 +q0 8 6 14t14 6h163q8 0 14 -6t6 -14v-244z" /> + <glyph glyph-name="uni04BB" unicode="&#x4bb;" horiz-adv-x="632" +d="M578 20q0 -8 -6 -14t-14 -6h-152q-8 0 -14 6t-6 14v345q0 40 -16 53t-47 13q-35 0 -76 -22v-387q0 -8 -5.5 -15t-14.5 -7h-150q-9 0 -15.5 7t-6.5 15v731q0 8 6 14t14 6h152q8 0 14 -6t6 -14v-201q32 23 67 30.5t81 7.5q54 0 89.5 -17.5t56 -48.5t29 -72t8.5 -87v-345v0z +" /> + <glyph glyph-name="uni04C0" unicode="&#x4c0;" horiz-adv-x="334" +d="M269 20q0 -8 -6 -14t-14 -6h-164q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h164q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="uni04CF" unicode="&#x4cf;" horiz-adv-x="303" +d="M248 22q0 -8 -6 -15t-14 -7h-151q-8 0 -15 7t-7 15v731q0 8 7 14t15 6h151q8 0 14 -6t6 -14v-731v0z" /> + <glyph glyph-name="uni04D8" unicode="&#x4d8;" horiz-adv-x="709" +d="M47 414q0 12 7 20t18 8h383v2q0 37 -4.5 62t-19 40t-41.5 21.5t-73 6.5q-23 0 -53.5 -1t-61.5 -2.5t-59 -3.5t-47 -3q-11 -1 -18.5 3.5t-7.5 17.5v94q0 16 4.5 23.5t18.5 12.5q58 20 121 29.5t138 9.5q60 0 116 -17.5t99 -57t69 -103t26 -154.5v-85q0 -169 -77.5 -257.5 +t-230.5 -88.5q-82 0 -140 25t-95 71t-54.5 109.5t-17.5 140.5v77zM253 303q0 -57 21.5 -95t73.5 -38q31 0 52 10t33 28t17 42t5 53v4h-202v-4z" /> + <glyph glyph-name="uni04D9" unicode="&#x4d9;" horiz-adv-x="602" +d="M40 323q0 10 6 16t15 6h311v2q0 40 -20 63t-75 23q-20 0 -47 -0.5t-54 -2t-51 -3t-38 -2.5h-4q-18 0 -18 17v90q0 12 4 18t16 10q48 16 101 23.5t116 7.5q51 0 98 -14t83 -45.5t57.5 -81t21.5 -121.5v-66q0 -132 -71.5 -202t-194.5 -70q-66 0 -114 20t-79.5 56t-47 86 +t-15.5 110v60zM224 236q0 -45 18 -70.5t56 -25.5q36 0 55 25.5t19 70.5v3h-148v-3z" /> + <glyph glyph-name="uni04E2" unicode="&#x4e2;" horiz-adv-x="746" +d="M65 37v686q0 8 6 14t14 6h150q8 0 14 -6t6 -14v-354q0 -6 1.5 -7.5t3.5 -1.5q4 0 9 9l203 345q8 14 17 21.5t23 7.5h132q15 0 26 -11t11 -26v-686q0 -8 -6.5 -14t-14.5 -6h-150q-8 0 -14 6t-6 14v341q0 9 -5 9t-10 -8l-197 -335q-16 -27 -42 -27h-134q-15 0 -26 11 +t-11 26zM564 814q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="uni04E3" unicode="&#x4e3;" horiz-adv-x="630" +d="M55 29v537q0 16 16 16h147q7 0 12 -4.5t5 -11.5v-242q0 -7 4 -7t8 7l151 235q7 11 14.5 17t19.5 6h112q13 0 22 -9t9 -20v-537q0 -7 -5 -11.5t-13 -4.5h-146q-17 0 -17 16v232q0 7 -5 7t-8 -7l-146 -227q-14 -21 -36 -21h-113q-13 0 -22 8.5t-9 20.5zM502 657 +q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="uni04E8" unicode="&#x4e8;" horiz-adv-x="708" +d="M661 320q0 -92 -24.5 -154.5t-66.5 -101.5t-98 -56t-118 -17t-118 17t-98 56t-66.5 101.5t-24.5 154.5v103q0 91 24.5 154t66.5 102t98 56.5t118 17.5t118 -17.5t98 -56.5t66.5 -102t24.5 -154v-103zM354 170q50 0 74 30.5t27 101.5h-202q2 -71 26.5 -101.5t74.5 -30.5z +M354 574q-47 0 -71 -27.5t-29 -88.5h199q-5 61 -29 88.5t-70 27.5z" /> + <glyph glyph-name="uni04E9" unicode="&#x4e9;" horiz-adv-x="605" +d="M565 262q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v58q0 133 68.5 202t194.5 69t194 -69t68 -202v-58zM303 151q32 0 50 21t20 72h-142q3 -50 21.5 -71.5t50.5 -21.5zM303 430q-32 0 -50.5 -21t-21.5 -70h142q-3 49 -20.5 70t-49.5 21z" /> + <glyph glyph-name="uni04EE" unicode="&#x4ee;" horiz-adv-x="639" +d="M598 743q27 0 19 -25l-162 -558q-12 -40 -29.5 -71.5t-46 -53t-70 -33t-100.5 -11.5q-15 0 -34 1.5t-38 4t-36 5.5t-27 7q-8 3 -15.5 7t-7.5 12v103q0 8 5 15t18 6q14 -1 31.5 -2t36.5 -2.5t37 -2.5t32 -1q21 0 32 5t16 27l8 35h-19q-17 0 -30.5 2t-25 11t-21.5 26.5 +t-19 47.5l-130 421q-5 16 2.5 20t17.5 4h169q8 0 13 -6t7 -14l79 -309q4 -17 11 -17h8l79 327q5 19 21 19h169zM508 815q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="uni04EF" unicode="&#x4ef;" horiz-adv-x="621" +d="M604 564q0 -1 -0.5 -2t-0.5 -2l-170 -594q-11 -40 -27 -71.5t-42 -53t-65.5 -33t-98.5 -11.5q-15 0 -34 1.5t-38 4t-36 5.5t-27 7q-8 3 -15.5 7t-7.5 12v97q0 8 6.5 14.5t15.5 6.5h1q14 -1 31.5 -2t36.5 -2.5t37 -2.5t32 -1q21 0 35 8t19 30l8 33h-13q-17 0 -31 2.5 +t-26 13t-22.5 31t-21.5 57.5l-132 441q-1 2 -1 7q0 15 22 15h163q8 0 13 -6t7 -14l79 -344q4 -17 11 -17h8l79 362q3 19 21 19h163q8 0 14.5 -5t6.5 -13zM498 664q0 -8 -6 -14t-14 -6h-339q-8 0 -14 6t-6 14v88q0 8 6 13.5t14 5.5h339q8 0 14 -5.5t6 -13.5v-88z" /> + <glyph glyph-name="Wgrave" unicode="&#x1e80;" horiz-adv-x="917" +d="M896 730l-88 -645q-4 -26 -10.5 -42.5t-16.5 -26t-23.5 -13t-29.5 -3.5h-103q-33 0 -50.5 17t-30.5 60l-74 252q-2 6 -3 7.5t-5 1.5t-5.5 -1.5t-3.5 -7.5l-74 -252q-13 -43 -30.5 -60t-50.5 -17h-103q-17 0 -30 3.5t-23 13t-16.5 26t-10.5 42.5l-88 645v2q0 7 5.5 9 +t10.5 2h170q13 0 15 -19l49 -443q2 -13 7 -13t8 13l58 202q7 25 21.5 34t37.5 9h105q23 0 37.5 -9t21.5 -34l58 -202q3 -13 8 -13t7 13l49 443q2 19 15 19h170q5 0 10.5 -2t5.5 -9v-2zM554 802q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158 +q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="wgrave" unicode="&#x1e81;" horiz-adv-x="871" +d="M846 564l-88 -475q-9 -49 -30 -69t-55 -20h-91q-34 0 -53.5 22.5t-31.5 63.5l-54 183q-1 7 -7 7t-7 -7l-54 -183q-12 -41 -31 -63.5t-54 -22.5h-91q-34 0 -55 20t-30 69l-88 475v3q0 6 4.5 10.5t10.5 4.5h160q14 0 17 -17l49 -343q1 -8 7 -8q5 0 8 8l58 205q5 18 16 29.5 +t40 11.5h80q29 0 40 -11.5t16 -29.5l58 -205q3 -8 8 -8q6 0 7 8l49 343q3 17 17 17h160q6 0 10.5 -4.5t4.5 -10.5v-3zM528 640q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="Wacute" unicode="&#x1e82;" horiz-adv-x="917" +d="M896 730l-88 -645q-4 -26 -10.5 -42.5t-16.5 -26t-23.5 -13t-29.5 -3.5h-103q-33 0 -50.5 17t-30.5 60l-74 252q-2 6 -3 7.5t-5 1.5t-5.5 -1.5t-3.5 -7.5l-74 -252q-13 -43 -30.5 -60t-50.5 -17h-103q-17 0 -30 3.5t-23 13t-16.5 26t-10.5 42.5l-88 645v2q0 7 5.5 9 +t10.5 2h170q13 0 15 -19l49 -443q2 -13 7 -13t8 13l58 202q7 25 21.5 34t37.5 9h105q23 0 37.5 -9t21.5 -34l58 -202q3 -13 8 -13t7 13l49 443q2 19 15 19h170q5 0 10.5 -2t5.5 -9v-2zM669 934q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114 +q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="wacute" unicode="&#x1e83;" horiz-adv-x="871" +d="M846 564l-88 -475q-9 -49 -30 -69t-55 -20h-91q-34 0 -53.5 22.5t-31.5 63.5l-54 183q-1 7 -7 7t-7 -7l-54 -183q-12 -41 -31 -63.5t-54 -22.5h-91q-34 0 -55 20t-30 69l-88 475v3q0 6 4.5 10.5t10.5 4.5h160q14 0 17 -17l49 -343q1 -8 7 -8q5 0 8 8l58 205q5 18 16 29.5 +t40 11.5h80q29 0 40 -11.5t16 -29.5l58 -205q3 -8 8 -8q6 0 7 8l49 343q3 17 17 17h160q6 0 10.5 -4.5t4.5 -10.5v-3zM640 772q0 -4 -4 -8l-126 -120q-6 -5 -9.5 -8t-14.5 -3h-129q-9 0 -9 7q0 6 4 10l91 114q7 8 12 11.5t16 3.5h158q11 0 11 -7z" /> + <glyph glyph-name="Wdieresis" unicode="&#x1e84;" horiz-adv-x="917" +d="M896 730l-88 -645q-4 -26 -10.5 -42.5t-16.5 -26t-23.5 -13t-29.5 -3.5h-103q-33 0 -50.5 17t-30.5 60l-74 252q-2 6 -3 7.5t-5 1.5t-5.5 -1.5t-3.5 -7.5l-74 -252q-13 -43 -30.5 -60t-50.5 -17h-103q-17 0 -30 3.5t-23 13t-16.5 26t-10.5 42.5l-88 645v2q0 7 5.5 9 +t10.5 2h170q13 0 15 -19l49 -443q2 -13 7 -13t8 13l58 202q7 25 21.5 34t37.5 9h105q23 0 37.5 -9t21.5 -34l58 -202q3 -13 8 -13t7 13l49 443q2 19 15 19h170q5 0 10.5 -2t5.5 -9v-2zM659 825q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116 +q8 0 15.5 -6t7.5 -14v-98zM425 825q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="wdieresis" unicode="&#x1e85;" horiz-adv-x="871" +d="M846 564l-88 -475q-9 -49 -30 -69t-55 -20h-91q-34 0 -53.5 22.5t-31.5 63.5l-54 183q-1 7 -7 7t-7 -7l-54 -183q-12 -41 -31 -63.5t-54 -22.5h-91q-34 0 -55 20t-30 69l-88 475v3q0 6 4.5 10.5t10.5 4.5h160q14 0 17 -17l49 -343q1 -8 7 -8q5 0 8 8l58 205q5 18 16 29.5 +t40 11.5h80q29 0 40 -11.5t16 -29.5l58 -205q3 -8 8 -8q6 0 7 8l49 343q3 17 17 17h160q6 0 10.5 -4.5t4.5 -10.5v-3zM634 657q0 -8 -7.5 -14t-15.5 -6h-116q-8 0 -15 6t-7 14v98q0 8 7 14t15 6h116q8 0 15.5 -6t7.5 -14v-98zM400 657q0 -8 -7 -14t-15 -6h-116q-8 0 -15.5 6 +t-7.5 14v98q0 8 7.5 14t15.5 6h116q8 0 15 -6t7 -14v-98z" /> + <glyph glyph-name="Ygrave" unicode="&#x1ef2;" horiz-adv-x="682" +d="M662 730q0 -2 -2 -8l-147 -345q-16 -37 -33.5 -57.5t-37.5 -28.5v-271q0 -8 -6 -14t-14 -6h-163q-8 0 -13.5 6t-5.5 14v271q-20 8 -37.5 28.5t-33.5 57.5l-147 345q-2 6 -2 8q0 13 14 13h181q8 0 12.5 -5.5t7.5 -13.5l96 -265q4 -10 10 -10t10 10l96 265q3 8 7.5 13.5 +t12.5 5.5h181q14 0 14 -13zM447 802q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114q4 -4 4 -10z" /> + <glyph glyph-name="ygrave" unicode="&#x1ef3;" horiz-adv-x="621" +d="M604 564q0 -1 -0.5 -2t-0.5 -2l-170 -594q-11 -40 -27 -71.5t-42 -53t-65.5 -33t-98.5 -11.5q-15 0 -34 1.5t-38 4t-36 5.5t-27 7q-8 3 -15.5 7t-7.5 12v97q0 8 6.5 14.5t15.5 6.5h1q14 -1 31.5 -2t36.5 -2.5t37 -2.5t32 -1q21 0 35 8t19 30l8 33h-13q-17 0 -31 2.5 +t-26 13t-22.5 31t-21.5 57.5l-132 441q-1 2 -1 7q0 15 22 15h163q8 0 13 -6t7 -14l79 -344q4 -17 11 -17h8l79 362q3 19 21 19h163q8 0 14.5 -5t6.5 -13zM409 640q0 -7 -9 -7h-129q-11 0 -14.5 3t-9.5 8l-126 120q-4 4 -4 8q0 7 11 7h158q11 0 16 -3.5t12 -11.5l91 -114 +q4 -4 4 -10z" /> + <glyph glyph-name="endash" unicode="&#x2013;" horiz-adv-x="309" +d="M324 249q0 -8 -6 -13.5t-14 -5.5h-300q-19 0 -19 19v90q0 8 5.5 14t13.5 6h300q8 0 14 -6t6 -14v-90v0z" /> + <glyph glyph-name="emdash" unicode="&#x2014;" horiz-adv-x="599" +d="M614 249q0 -8 -6 -13.5t-14 -5.5h-590q-19 0 -19 19v90q0 8 5.5 14t13.5 6h590q8 0 14 -6t6 -14v-90v0z" /> + <glyph glyph-name="quoteleft" unicode="&#x2018;" horiz-adv-x="277" +d="M256 763v-4.5t-1 -4.5l-58 -230q-5 -19 -20 -19h-144q-12 0 -12 11q0 2 2 8l82 230q4 10 7.5 14.5t11.5 4.5h123q9 0 9 -10z" /> + <glyph glyph-name="quoteright" unicode="&#x2019;" horiz-adv-x="277" +d="M256 762q0 -2 -2 -8l-82 -230q-4 -10 -7.5 -14.5t-11.5 -4.5h-123q-9 0 -9 10v4.5t1 4.5l58 230q5 19 20 19h144q12 0 12 -11z" /> + <glyph glyph-name="quotesinglbase" unicode="&#x201a;" horiz-adv-x="277" +d="M274 165q0 -4 -1 -6l-104 -238q-4 -8 -9.5 -14t-13.5 -6h-104q-8 0 -13.5 4.5t-5.5 11.5q0 1 0.5 2t0.5 2l67 238q2 8 7.5 14t13.5 6h147q15 0 15 -14z" /> + <glyph glyph-name="quotedblleft" unicode="&#x201c;" horiz-adv-x="515" +d="M494 763v-4.5t-1 -4.5l-58 -230q-5 -19 -20 -19h-144q-12 0 -12 11q0 2 2 8l81 230q4 10 7.5 14.5t11.5 4.5h124q9 0 9 -10zM255 763v-4.5t-1 -4.5l-57 -230q-4 -19 -20 -19h-144q-12 0 -12 11q0 2 2 8l81 230q4 10 7.5 14.5t11.5 4.5h123q9 0 9 -10z" /> + <glyph glyph-name="quotedblright" unicode="&#x201d;" horiz-adv-x="515" +d="M494 762q0 -2 -2 -8l-82 -230q-4 -10 -7.5 -14.5t-11.5 -4.5h-123q-9 0 -9 10v4.5t1 4.5l58 230q5 19 20 19h144q12 0 12 -11zM255 762q0 -2 -2 -8l-81 -230q-4 -10 -7.5 -14.5t-11.5 -4.5h-123q-9 0 -9 10v4.5t1 4.5l58 230q5 19 20 19h143q12 0 12 -11z" /> + <glyph glyph-name="quotedblbase" unicode="&#x201e;" horiz-adv-x="515" +d="M510 165q0 -4 -1 -6l-104 -238q-4 -8 -9.5 -14t-13.5 -6h-104q-8 0 -13.5 4.5t-5.5 11.5q0 1 0.5 2t0.5 2l67 238q2 8 7.5 14t13.5 6h147q15 0 15 -14zM265 165q0 -4 -1 -6l-104 -238q-4 -8 -9.5 -14t-13.5 -6h-104q-8 0 -13.5 4.5t-5.5 11.5q0 1 0.5 2t0.5 2l67 238 +q2 8 7.5 14t13.5 6h147q15 0 15 -14z" /> + <glyph glyph-name="dagger" unicode="&#x2020;" horiz-adv-x="455" +d="M428 454q0 -16 -19 -16h-86v-424q0 -8 -4 -14t-12 -6h-162q-8 0 -12 6t-4 14v424h-82q-19 0 -19 16v127q0 15 19 15h82v158q0 8 4.5 13.5t12.5 5.5h161q8 0 12 -5.5t4 -13.5v-158h86q19 0 19 -15v-127v0z" /> + <glyph glyph-name="daggerdbl" unicode="&#x2021;" horiz-adv-x="455" +d="M428 218q0 -16 -19 -16h-86v-188q0 -8 -4 -14t-12 -6h-162q-8 0 -12 6t-4 14v188h-82q-19 0 -19 16v127q0 15 19 15h82v78h-82q-19 0 -19 16v127q0 15 19 15h82v158q0 8 4.5 13.5t12.5 5.5h161q8 0 12 -5.5t4 -13.5v-158h86q19 0 19 -15v-127q0 -16 -19 -16h-86v-78h86 +q19 0 19 -15v-127v0z" /> + <glyph glyph-name="bullet" unicode="&#x2022;" horiz-adv-x="418" +d="M380 367q0 -35 -13.5 -66t-37 -54t-54.5 -36.5t-66 -13.5t-66 13.5t-54 36.5t-36.5 54t-13.5 66t13.5 66t36.5 54.5t54 37t66 13.5t66 -13.5t54.5 -37t37 -54.5t13.5 -66z" /> + <glyph glyph-name="ellipsis" unicode="&#x2026;" horiz-adv-x="833" +d="M785 20q0 -8 -6 -14t-14 -6h-146q-8 0 -14.5 6t-6.5 14v139q0 8 6.5 14t14.5 6h146q8 0 14 -6t6 -14v-139zM510 20q0 -8 -6 -14t-14 -6h-146q-8 0 -14.5 6t-6.5 14v139q0 8 6.5 14t14.5 6h146q8 0 14 -6t6 -14v-139zM235 20q0 -8 -6 -14t-14 -6h-146q-8 0 -14.5 6 +t-6.5 14v139q0 8 6.5 14t14.5 6h146q8 0 14 -6t6 -14v-139z" /> + <glyph glyph-name="perthousand" unicode="&#x2030;" horiz-adv-x="1225" +d="M1188 170q0 -90 -39.5 -133t-113.5 -43t-113.5 43t-39.5 133v68q0 90 39.5 133t113.5 43t113.5 -43t39.5 -133v-68zM831 170q0 -90 -39 -133t-113 -43t-113.5 43t-39.5 133v68q0 90 39.5 133t113.5 43t113 -43t39 -133v-68zM723 734q0 -3 -4 -11l-415 -701 +q-7 -11 -11.5 -16.5t-12.5 -5.5h-122q-13 0 -13 13q0 4 3 9l415 701q7 11 12.5 15.5t13.5 4.5h123q11 0 11 -9zM343 505q0 -90 -39.5 -133t-113.5 -43t-113.5 43t-39.5 133v68q0 90 39.5 132.5t113.5 42.5t113.5 -42.5t39.5 -132.5v-68zM1072 238q0 24 -2.5 39.5t-7.5 23.5 +t-11.5 11t-15.5 3t-16 -3t-12 -11t-7.5 -23.5t-2.5 -39.5v-68q0 -24 2.5 -39.5t7.5 -23.5t12 -11t16 -3t15.5 3t11.5 11t7.5 23.5t2.5 39.5v68zM716 238q0 24 -2.5 39.5t-7.5 23.5t-11.5 11t-15.5 3t-16 -3t-12 -11t-7.5 -23.5t-2.5 -39.5v-68q0 -24 2.5 -39.5t7.5 -23.5 +t12 -11t16 -3t15.5 3t11.5 11t7.5 23.5t2.5 39.5v68zM227 573q0 24 -2.5 39.5t-7.5 23.5t-11.5 11t-15.5 3t-16 -3t-12 -11t-7.5 -23.5t-2.5 -39.5v-68q0 -24 2.5 -39.5t7.5 -24t12 -11.5t16 -3q17 0 27 14.5t10 63.5v68z" /> + <glyph glyph-name="guilsinglleft" unicode="&#x2039;" horiz-adv-x="424" +d="M391 71q0 -11 -13 -11h-148q-10 0 -17 2t-12 9l-158 192q-5 7 -9 13.5t-4 13.5t4 14t9 14l158 191q5 7 12 9t17 2h148q13 0 13 -10q0 -4 -5 -11l-171 -209l171 -208q5 -7 5 -11z" /> + <glyph glyph-name="guilsinglright" unicode="&#x203a;" horiz-adv-x="424" +d="M395 290q0 -7 -4 -13.5t-9 -13.5l-158 -192q-5 -7 -12 -9t-17 -2h-148q-13 0 -13 11q0 4 5 11l171 208l-171 209q-5 7 -5 11q0 10 13 10h148q10 0 17 -2t12 -9l158 -191q5 -7 9 -14t4 -14z" /> + <glyph glyph-name="fraction" unicode="&#x2044;" horiz-adv-x="316" +d="M447 733q0 -4 -3 -10l-417 -705q-6 -11 -10 -14.5t-12 -3.5h-123q-12 0 -12 12q0 5 3 10l417 704q6 10 11 13.5t13 3.5h122q11 0 11 -10z" /> + <glyph glyph-name="uni2071" unicode="&#x2071;" horiz-adv-x="182" +d="M149 361q0 -7 -5.5 -12.5t-12.5 -5.5h-80q-7 0 -12.5 5.5t-5.5 12.5v292q0 7 5.5 11.5t12.5 4.5h80q7 0 12.5 -4.5t5.5 -11.5v-292zM152 704q0 -7 -5.5 -12t-12.5 -5h-85q-7 0 -13 5t-6 12v53q0 7 6 12t13 5h85q7 0 12.5 -5t5.5 -12v-53z" /> + <glyph glyph-name="franc" unicode="&#x20a3;" horiz-adv-x="580" +d="M54 236v292q0 72 22 116t58 68t82 32t94 8q73 0 120.5 -4t76.5 -8q20 -3 20 -20v-122q0 -8 -6 -14t-14 -6h-202q-27 0 -37.5 -10.5t-10.5 -39.5v-72h246q8 0 14 -6t6 -14v-118q0 -8 -6 -14t-14 -6h-246v-62h97q8 0 14 -6t6 -14v-88q0 -8 -6 -14t-14 -6h-97v-88 +q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v88h-34q-8 0 -14 6t-6 14v88q0 8 6 14t14 6h34z" /> + <glyph glyph-name="lira" unicode="&#x20a4;" +d="M335 255v-34q0 -19 -5 -35.5t-11 -27.5h256q8 0 14 -5.5t6 -13.5v-119q0 -8 -6 -14t-14 -6h-457q-10 0 -15 7t-5 15v90q0 10 3 15t7 10q5 6 10.5 15.5t10 21t7.5 24t3 23.5v34h-49q-8 0 -13.5 6t-5.5 14v39q0 8 6 13.5t14 5.5h48v62h-49q-8 0 -13.5 6t-5.5 14v39 +q0 8 6 13.5t14 5.5h48v28q0 67 16 114t49 76.5t84 42.5t121 13q24 0 48.5 -2t47 -5t41.5 -6t30 -5q14 -3 17 -7.5t3 -13.5v-128q0 -21 -20 -18q-31 4 -77 7.5t-90 3.5q-42 0 -58 -13t-16 -57v-30h152q8 0 14 -5.5t6 -13.5v-39q0 -8 -5.5 -14t-13.5 -6h-153v-62h152 +q8 0 14 -5.5t6 -13.5v-39q0 -8 -5.5 -14t-13.5 -6h-153z" /> + <glyph glyph-name="peseta" unicode="&#x20a7;" horiz-adv-x="1626" +d="M646 494q0 -74 -28 -122.5t-72.5 -77.5t-99.5 -40.5t-109 -11.5q-17 0 -34 1t-37 2v-225q0 -8 -6 -14t-14 -6h-160q-8 0 -14.5 5t-6.5 13v656q0 36 13 48.5t45 17.5q19 3 44 5.5t53.5 4t57.5 2.5t56 1q56 0 111.5 -11t100 -39.5t72.5 -77t28 -123.5v-8zM444 502 +q0 44 -28 62.5t-79 18.5h-11.5h-19t-21.5 -0.5t-19 -0.5v-170q2 0 12.5 -0.5t22.5 -0.5h23h13q107 0 107 83v8zM1076 460q0 -8 -6 -14t-14 -6h-76v-269q0 -23 4.5 -30.5t23.5 -7.5h46q9 0 15 -5.5t6 -13.5v-94q0 -8 -6 -13t-15 -7q-13 -2 -23.5 -4t-20.5 -3t-20.5 -1.5 +t-24.5 -0.5q-40 0 -72.5 7.5t-56 27.5t-36 55.5t-12.5 91.5v267l-66 15q-8 2 -14.5 8t-6.5 14v84q0 8 6 14.5t15 6.5h66v81q0 8 6.5 13.5t14.5 7.5l149 26q15 2 18.5 -4.5t3.5 -14.5v-109h76q8 0 14 -6t6 -14v-102zM1587 170q0 -38 -13.5 -70.5t-42 -56.5t-72 -38 +t-104.5 -14q-54 0 -102 7t-83 17q-19 5 -19 22v103q0 24 25 21q22 -3 47.5 -6t49 -5t43.5 -3.5t32 -1.5q29 0 38 7.5t9 21.5q0 8 -6 15.5t-24 17.5l-122 66q-95 51 -95 158q0 77 54 118.5t166 41.5q57 0 102.5 -7.5t81.5 -17.5q20 -5 20 -22v-106q0 -10 -5.5 -16t-14.5 -4 +q-11 1 -33 4t-47 5.5t-50 4.5t-42 2q-37 0 -37 -22q0 -11 22 -23l117 -63q61 -33 83 -73.5t22 -82.5z" /> + <glyph glyph-name="Euro" unicode="&#x20ac;" +d="M590 31q0 -10 -5 -14t-17 -8q-20 -7 -53.5 -12.5t-81.5 -5.5q-62 0 -115.5 15.5t-94 48.5t-66.5 83.5t-34 120.5h-26q-8 0 -14 6t-6 14v46q0 8 6 14t14 6h23v56h-23q-8 0 -14 6t-6 14v46q0 8 6 14t14 6h26q8 70 34 120.5t66.5 82.5t94 47.5t115.5 15.5q47 0 81 -5.5 +t54 -12.5q12 -4 17 -7.5t5 -14.5v-121q0 -19 -18 -19h-3q-31 3 -62 5.5t-68 2.5q-19 0 -36.5 -4.5t-32 -15t-24.5 -28.5t-14 -46h188q15 0 15 -10v-2l-14 -62q-2 -8 -6 -10t-10 -2h-179v-56h158q16 0 16 -14v-4l-13 -53q-2 -6 -6 -10.5t-11 -4.5h-139q4 -28 14.5 -46.5 +t24.5 -29.5t32 -15.5t37 -4.5q37 0 68 2.5t62 5.5h3q18 0 18 -19v-121v0z" /> + <glyph glyph-name="uni20B4" unicode="&#x20b4;" horiz-adv-x="607" +d="M39 220v14.5t1 14.5h-26q-8 0 -14 4t-6 12v38q0 8 6 12t14 4h47q22 45 76 82h-123q-8 0 -14 4t-6 12v38q0 8 6 12t14 4h250l42 22q32 17 42 27t10 24q0 16 -11 25t-39 9q-27 0 -60 -1.5t-65 -4t-59.5 -4.5t-42.5 -3h-2q-8 0 -13 5.5t-5 13.5v125q0 8 5.5 12.5t12.5 6.5 +q15 4 41.5 8.5t58 8.5t64.5 6t63 2q76 0 126.5 -16t80.5 -43t42.5 -63t12.5 -77q0 -45 -13 -83h35q8 0 14 -4t6 -12v-38q0 -8 -6 -12t-14 -4h-79q-12 -13 -27.5 -24.5t-34.5 -22.5l-60 -35h201q8 0 14 -4t6 -12v-38q0 -8 -6 -12t-14 -4h-315q-10 -8 -13.5 -15.5t-3.5 -17.5 +q0 -24 13 -37.5t50 -13.5q20 0 48 2t57.5 4t55.5 4.5t42 4.5h2q8 0 13.5 -5t5.5 -15v-123q0 -8 -6.5 -13t-14.5 -7q-40 -11 -90 -18.5t-112 -7.5q-77 0 -131 20t-88 52.5t-49 73.5t-15 83z" /> + <glyph glyph-name="uni2113" unicode="&#x2113;" horiz-adv-x="573" +d="M530 62q7 -17 -8 -25q-11 -7 -30 -16.5t-44.5 -17.5t-55.5 -14t-63 -6q-100 0 -142 50.5t-42 165.5v41l-59 -38q-4 -3 -9.5 -3t-9.5 6l-27 43q-7 13 4 19l101 65v262q0 103 47.5 153t148.5 50q55 0 92 -12.5t60 -34.5t33 -50.5t10 -59.5q0 -74 -48 -152t-155 -149v-127 +q0 -47 18 -65t46 -18q18 0 37 6t37 14q10 4 14.5 3.5t9.5 -10.5zM451 640q0 11 -1.5 24t-7.5 24.5t-17 19t-30 7.5q-21 0 -33 -8.5t-18.5 -24.5t-8.5 -38t-2 -50v-158q32 25 54.5 52t36.5 54t20.5 52t6.5 46z" /> + <glyph glyph-name="uni2116" unicode="&#x2116;" horiz-adv-x="1251" +d="M1195 61q0 -8 -6 -14t-14 -6h-382q-8 0 -14 6t-6 14v69q0 8 6 14t14 6h382q8 0 14 -6t6 -14v-69zM1200 422q0 -112 -57 -170t-163 -58t-163.5 58t-57.5 170v49q0 112 57.5 170t163.5 58t163 -58t57 -170v-49zM1039 471q0 50 -15 71t-44 21t-45 -20.5t-16 -71.5v-49 +q0 -50 16 -71.5t45 -21.5t44 21t15 72v49zM681 37q0 -15 -11 -26t-26 -11h-134q-26 0 -42 27l-197 335q-5 8 -10 8t-5 -9v-341q0 -8 -6 -14t-14 -6h-150q-8 0 -14.5 6t-6.5 14v686q0 15 11 26t26 11h132q14 0 23 -7.5t17 -21.5l203 -345q5 -9 9 -9q2 0 3.5 1.5t1.5 7.5v354 +q0 8 6 14t14 6h150q8 0 14 -6t6 -14v-686z" /> + <glyph glyph-name="trademark" unicode="&#x2122;" horiz-adv-x="847" +d="M807 351q0 -10 -11 -10h-93q-11 0 -11 10v238q0 18 -2 29t-7.5 17t-16.5 8t-29 2v-294q0 -10 -11 -10h-94q-10 0 -10 10v294q-15 0 -28 -1t-27 -2v-291q0 -10 -11 -10h-93q-11 0 -11 10v348q0 22 7 30t26 10q50 5 101.5 7t92.5 2q57 0 100 -5t71.5 -21.5t42.5 -48 +t14 -84.5v-238zM322 661q0 -12 -12 -12h-76v-297q0 -11 -12 -11h-95q-12 0 -12 11v297h-78q-12 0 -12 12v70q0 5 3.5 8.5t8.5 3.5h273q5 0 8.5 -3.5t3.5 -8.5v-70z" /> + <glyph glyph-name="Omega" unicode="&#x2126;" horiz-adv-x="716" +d="M358 575q-56 0 -80 -31t-24 -103v-12q0 -18 0.5 -37.5t5 -38.5t13.5 -35.5t26 -28.5q7 -5 10.5 -8t3.5 -17v-243q0 -21 -21 -21h-191q-10 0 -16.5 4.5t-6.5 16.5v114q0 12 6.5 16t16.5 4h111v27q-54 18 -86.5 46t-50 63t-23 75t-5.5 83v12q0 79 22.5 134.5t63.5 91 +t98.5 52t126.5 16.5t126.5 -16.5t98.5 -52t63.5 -91t22.5 -134.5v-12q0 -43 -5.5 -83t-23 -75t-50 -63t-86.5 -46v-27h111q10 0 16.5 -4t6.5 -16v-114q0 -12 -6.5 -16.5t-16.5 -4.5h-191q-21 0 -21 21v243q0 14 3.5 17t10.5 8q17 12 26 28.5t13.5 35.5t5 38.5t0.5 37.5v12 +q0 72 -24 103t-80 31z" /> + <glyph glyph-name="estimated" unicode="&#x212e;" horiz-adv-x="606" +d="M148 282v-193q32 -30 69.5 -46.5t82.5 -16.5q42 0 73.5 10.5t56.5 27.5t44 40t36 49l31 -19q-20 -30 -42.5 -56t-51 -45t-64.5 -29.5t-83 -10.5q-61 0 -111 23t-85.5 63t-55 92.5t-19.5 111.5q0 60 19 112.5t54.5 92t86.5 62.5t115 23t114.5 -23.5t85.5 -63t54 -92.5 +t19 -112h-429zM457 478q-27 25 -68 43.5t-85 18.5q-45 0 -85.5 -15.5t-70.5 -46.5v-163h309v163z" /> + <glyph glyph-name="onethird" unicode="&#x2153;" horiz-adv-x="850" +d="M675 733q0 -4 -3 -10l-417 -707q-6 -10 -9.5 -13t-11.5 -3h-123q-12 0 -12 12q0 5 3 10l417 706q5 10 10 12.5t13 2.5h122q11 0 11 -10zM138 744q6 3 14 3h62q16 0 16 -16v-381q0 -16 -16 -16h-88q-16 0 -16 16v275l-51 -21q-19 -8 -19 10v78q0 9 9 14zM810 118 +q0 -63 -41 -93.5t-113 -30.5q-15 0 -33 2t-35 5t-31.5 7t-21.5 8q-10 4 -10 12v56q0 14 14 14h1q9 -1 22 -2t27.5 -1.5t28.5 -1t26 -0.5q26 0 37.5 5.5t11.5 22.5v8q0 17 -9.5 24.5t-32.5 7.5h-85q-6 0 -10.5 4.5t-4.5 10.5v60q0 6 4.5 10.5t10.5 4.5h85q43 0 43 28v9 +q0 14 -9.5 20t-39.5 6q-23 0 -53 -1.5t-49 -3.5h-1q-14 0 -14 14v58q0 6 4.5 9t9.5 5q25 8 54.5 13t61.5 5q70 0 111 -24t41 -86v-7q0 -32 -13 -53.5t-32 -34.5q24 -14 34.5 -36.5t10.5 -48.5v-5z" /> + <glyph glyph-name="twothirds" unicode="&#x2154;" horiz-adv-x="945" +d="M770 733q0 -4 -3 -10l-417 -707q-6 -10 -9.5 -13t-11.5 -3h-123q-12 0 -12 12q0 5 3 10l417 706q5 10 10 12.5t13 2.5h122q11 0 11 -10zM905 118q0 -63 -41 -93.5t-113 -30.5q-15 0 -33 2t-35 5t-31.5 7t-21.5 8q-10 4 -10 12v56q0 14 14 14h1q9 -1 22 -2t27.5 -1.5 +t28.5 -1t26 -0.5q26 0 37.5 5.5t11.5 22.5v8q0 17 -9.5 24.5t-32.5 7.5h-85q-6 0 -10.5 4.5t-4.5 10.5v60q0 6 4.5 10.5t10.5 4.5h85q43 0 43 28v9q0 14 -9.5 20t-39.5 6q-23 0 -53 -1.5t-49 -3.5h-1q-14 0 -14 14v58q0 6 4.5 9t9.5 5q25 8 54.5 13t61.5 5q70 0 111 -24 +t41 -86v-7q0 -32 -13 -53.5t-32 -34.5q24 -14 34.5 -36.5t10.5 -48.5v-5zM331 641q0 -33 -16 -59t-43 -44l-62 -41q-24 -16 -41.5 -28.5t-18.5 -30.5h159q16 0 16 -16v-71q0 -16 -16 -16h-253q-16 0 -16 16v57q0 46 19 80.5t48 57.5l55 41q17 12 27 19.5t15.5 13t7 9 +t1.5 8.5q0 10 -9 14.5t-38 4.5q-22 0 -45 -2t-45 -4q-9 -1 -20 0t-11 15v53q0 6 4 9.5t9 5.5q24 8 56.5 14t67.5 6q81 0 115 -27.5t34 -84.5z" /> + <glyph glyph-name="oneeighth" unicode="&#x215b;" horiz-adv-x="866" +d="M675 733q0 -4 -3 -10l-417 -707q-6 -10 -9.5 -13t-11.5 -3h-123q-12 0 -12 12q0 5 3 10l417 706q5 10 10 12.5t13 2.5h122q11 0 11 -10zM138 744q6 3 14 3h62q16 0 16 -16v-381q0 -16 -16 -16h-88q-16 0 -16 16v275l-51 -21q-19 -8 -19 10v78q0 9 9 14zM826 119 +q0 -57 -39 -91t-115 -34h-6q-76 0 -115 34t-39 91v8q0 26 10.5 47.5t29.5 38.5q-19 14 -28.5 32.5t-9.5 45.5v10q0 56 38 86t114 30h6q76 0 114 -30t38 -86v-10q0 -27 -9.5 -45.5t-28.5 -32.5q19 -17 29.5 -38.5t10.5 -47.5v-8zM709 130q0 16 -7.5 28t-26.5 12h-12 +q-19 0 -26.5 -12t-7.5 -28v-6q0 -17 9 -28.5t28 -11.5h6q19 0 28 11.5t9 28.5v6zM666 327q-21 0 -29 -11t-8 -28q0 -34 34 -34h12q34 0 34 34q0 17 -8 28t-29 11h-6z" /> + <glyph glyph-name="threeeighths" unicode="&#x215c;" horiz-adv-x="930" +d="M739 733q0 -4 -3 -10l-417 -707q-6 -10 -9.5 -13t-11.5 -3h-123q-12 0 -12 12q0 5 3 10l417 706q5 10 10 12.5t13 2.5h122q11 0 11 -10zM890 119q0 -57 -39 -91t-115 -34h-6q-76 0 -115 34t-39 91v8q0 26 10.5 47.5t29.5 38.5q-19 14 -28.5 32.5t-9.5 45.5v10q0 56 38 86 +t114 30h6q76 0 114 -30t38 -86v-10q0 -27 -9.5 -45.5t-28.5 -32.5q19 -17 29.5 -38.5t10.5 -47.5v-8zM773 130q0 16 -7.5 28t-26.5 12h-12q-19 0 -26.5 -12t-7.5 -28v-6q0 -17 9 -28.5t28 -11.5h6q19 0 28 11.5t9 28.5v6zM730 327q-21 0 -29 -11t-8 -28q0 -34 34 -34h12 +q34 0 34 34q0 17 -8 28t-29 11h-6zM325 458q0 -63 -41 -93.5t-113 -30.5q-15 0 -33 2t-35 5t-31.5 7t-21.5 8q-10 4 -10 12v56q0 14 14 14h1q9 -1 22 -2t27.5 -1.5t28.5 -1t26 -0.5q26 0 37.5 5.5t11.5 22.5v8q0 17 -9.5 24.5t-32.5 7.5h-85q-6 0 -10.5 4.5t-4.5 10.5v60 +q0 6 4.5 10.5t10.5 4.5h85q43 0 43 28v9q0 14 -9.5 20t-39.5 6q-23 0 -53 -1.5t-49 -3.5h-1q-14 0 -14 14v58q0 6 4.5 9t9.5 5q25 8 54.5 13t61.5 5q70 0 111 -24t41 -86v-7q0 -32 -13 -53.5t-32 -34.5q24 -14 34.5 -36.5t10.5 -48.5v-5z" /> + <glyph glyph-name="fiveeighths" unicode="&#x215d;" horiz-adv-x="928" +d="M737 733q0 -4 -3 -10l-417 -707q-6 -10 -9.5 -13t-11.5 -3h-123q-12 0 -12 12q0 5 3 10l417 706q5 10 10 12.5t13 2.5h122q11 0 11 -10zM888 119q0 -57 -39 -91t-115 -34h-6q-76 0 -115 34t-39 91v8q0 26 10.5 47.5t29.5 38.5q-19 14 -28.5 32.5t-9.5 45.5v10q0 56 38 86 +t114 30h6q76 0 114 -30t38 -86v-10q0 -27 -9.5 -45.5t-28.5 -32.5q19 -17 29.5 -38.5t10.5 -47.5v-8zM771 130q0 16 -7.5 28t-26.5 12h-12q-19 0 -26.5 -12t-7.5 -28v-6q0 -17 9 -28.5t28 -11.5h6q19 0 28 11.5t9 28.5v6zM728 327q-21 0 -29 -11t-8 -28q0 -34 34 -34h12 +q34 0 34 34q0 17 -8 28t-29 11h-6zM325 468q0 -70 -42.5 -104.5t-116.5 -34.5q-29 0 -58.5 5t-52.5 13q-5 2 -10 5.5t-5 11.5v53q0 16 18 16q9 -1 22 -2l26 -2t24.5 -1.5t16.5 -0.5q36 0 46 9.5t10 31.5v5q0 17 -11 25t-42 8h-95q-14 0 -14 14l17 213q2 14 16 14h224 +q16 0 16 -16v-67q0 -15 -16 -15h-143l-5 -50h17q82 0 120 -31.5t38 -94.5v-5z" /> + <glyph glyph-name="seveneighths" unicode="&#x215e;" horiz-adv-x="854" +d="M679 733q0 -4 -3 -10l-417 -707q-6 -10 -9.5 -13t-11.5 -3h-123q-12 0 -12 12q0 5 3 10l417 706q5 10 10 12.5t13 2.5h122q11 0 11 -10zM830 119q0 -57 -39 -91t-115 -34h-6q-76 0 -115 34t-39 91v8q0 26 10.5 47.5t29.5 38.5q-19 14 -28.5 32.5t-9.5 45.5v10q0 56 38 86 +t114 30h6q76 0 114 -30t38 -86v-10q0 -27 -9.5 -45.5t-28.5 -32.5q19 -17 29.5 -38.5t10.5 -47.5v-8zM713 130q0 16 -7.5 28t-26.5 12h-12q-19 0 -26.5 -12t-7.5 -28v-6q0 -17 9 -28.5t28 -11.5h6q19 0 28 11.5t9 28.5v6zM670 327q-21 0 -29 -11t-8 -28q0 -34 34 -34h12 +q34 0 34 34q0 17 -8 28t-29 11h-6zM174 348q-2 -5 -6.5 -9.5t-11.5 -4.5h-92q-16 0 -16 13q0 4 2 8q35 73 69.5 146.5t69.5 147.5h-132q-7 0 -12 4t-5 11v67q0 7 5 11.5t12 4.5h243q20 0 20 -20v-49q0 -7 -2.5 -13.5t-5.5 -13.5z" /> + <glyph glyph-name="partialdiff" unicode="&#x2202;" horiz-adv-x="647" +d="M607 448q0 -50 -5.5 -102.5t-15.5 -99.5q-29 -131 -102 -194.5t-201 -63.5q-121 0 -182 57t-61 162q0 23 2 45.5t7 54.5q12 67 37.5 112.5t62 73.5t81 39.5t94.5 11.5q26 0 55.5 -6.5t46.5 -17.5q-2 7 -3.5 15t-4.5 15q-5 27 -16.5 51.5t-32.5 43.5t-54 30.5t-82 11.5 +q-22 0 -45.5 -1.5t-49.5 -6.5q-8 -2 -12 2t-3 10l8 78q2 11 7 14.5t13 5.5q55 12 118 12q85 0 148.5 -25t105.5 -71.5t63 -111.5t21 -145zM404 330q0 35 -15.5 52.5t-50.5 17.5q-43 0 -66 -30t-31 -92q-5 -28 -6.5 -44.5t-1.5 -30.5q0 -37 15.5 -54.5t50.5 -17.5 +q42 0 64.5 30t32.5 92q5 29 6.5 46t1.5 31z" /> + <glyph glyph-name="Delta" unicode="&#x2206;" horiz-adv-x="692" +d="M673 16q0 -16 -16 -16h-621q-17 0 -17 16q0 2 0.5 2.5t0.5 2.5l134 612q8 37 26 60.5t43 36.5t56 17.5t67 4.5t67 -4.5t56 -17.5t43 -36.5t26 -60.5l134 -612q0 -2 0.5 -3t0.5 -2zM357 572l-3 10.5t-8 3.5t-8 -3.5l-3 -10.5l-49 -412h120z" /> + <glyph glyph-name="product" unicode="&#x220f;" horiz-adv-x="746" +d="M726 743q8 0 14 -6t6 -14v-135q0 -8 -6 -14t-14 -6h-45v-646q0 -8 -6 -14t-14 -6h-163q-8 0 -14 6t-6 14v645h-209v-645q0 -8 -6 -14t-14 -6h-163q-8 0 -14.5 6t-6.5 14v646h-45q-8 0 -14 6t-6 14v135q0 8 6 14t14 6h706z" /> + <glyph glyph-name="summation" unicode="&#x2211;" horiz-adv-x="567" +d="M512 -82q0 -16 -14 -16h-426q-11 0 -14 6t-3 14v156q0 14 6 24l131 209q2 4 2.5 6.5t0.5 5.5t-0.5 5.5t-2.5 6.5l-131 208q-6 10 -6 24v156q0 8 3 14t14 6h426q14 0 14 -16v-143q0 -8 -2.5 -12.5t-11.5 -4.5h-224q-8 0 -3 -9l117 -201q6 -9 6 -20v-28q0 -11 -6 -20 +l-117 -203q-5 -9 3 -9h224q9 0 11.5 -4.5t2.5 -12.5v-142v0z" /> + <glyph glyph-name="minus" unicode="&#x2212;" +d="M572 336q0 -8 -6 -12t-14 -4h-438q-8 0 -14 4t-6 12v110q0 8 6 12t14 4h438q8 0 14 -4t6 -12v-110v0z" /> + <glyph glyph-name="uni2215" unicode="&#x2215;" horiz-adv-x="316" +d="M447 733q0 -4 -3 -10l-417 -705q-6 -11 -10 -14.5t-12 -3.5h-123q-12 0 -12 12q0 5 3 10l417 704q6 10 11 13.5t13 3.5h122q11 0 11 -10z" /> + <glyph glyph-name="uni2219" unicode="&#x2219;" horiz-adv-x="291" +d="M239 308q0 -8 -6.5 -14t-14.5 -6h-145q-8 0 -14.5 6t-6.5 14v139q0 8 6.5 14t14.5 6h145q8 0 14.5 -6t6.5 -14v-139v0z" /> + <glyph glyph-name="radical" unicode="&#x221a;" horiz-adv-x="730" +d="M523 858q2 8 4.5 11.5t12.5 3.5h175q10 0 11 -4t-1 -10l-215 -918q-4 -16 -25 -16h-275q-9 0 -13 4t-7 14l-83 382q-2 7 -4 9t-8 2h-62q-7 0 -9 3.5t-2 8.5v117q0 14 11 14h218q7 0 12 -2.5t8 -12.5l75 -423z" /> + <glyph glyph-name="infinity" unicode="&#x221e;" horiz-adv-x="662" +d="M622 367q0 -39 -6.5 -82t-26 -78t-55.5 -58t-94 -23h-6q-30 0 -58 10t-51 33q-39 -45 -98 -45h-6q-59 0 -94.5 23t-54.5 59t-25.5 78.5t-6.5 81.5v24q0 39 6.5 82t26 78.5t55.5 58.5t94 23h7q61 0 107 -43q19 23 42.5 33.5t57.5 10.5h6q58 0 93.5 -23t54.5 -58.5 +t25.5 -78.5t6.5 -83v-23zM485 390q0 24 -1 46.5t-5 40t-13 27.5t-24 10h-5q-20 -1 -29 -35t-17 -102q-5 -37 -8 -60.5t-8 -45.5q16 -18 31 -23.5t29 -5.5h4q15 0 24.5 10.5t14 28t6 40t1.5 46.5v23zM286 482q-13 16 -28.5 24t-29.5 8h-5q-16 0 -25 -11.5t-13.5 -29.5t-6 -40 +t-1.5 -43v-24q0 -22 1 -44t5.5 -40t13.5 -29t24 -11h6q19 0 28 32.5t18 110.5q4 31 7 55t6 42z" /> + <glyph glyph-name="integral" unicode="&#x222b;" horiz-adv-x="432" +d="M111 609q0 56 12.5 91.5t36 55.5t56 27.5t72.5 7.5q21 0 45 -2.5t44 -6.5q9 -2 15 -7t6 -13v-94q0 -8 -6 -13.5t-15 -5.5h-42q-19 0 -25.5 -8.5t-6.5 -31.5v-632q0 -56 -12.5 -91.5t-36 -55.5t-56 -27.5t-72.5 -7.5q-21 0 -45 2.5t-44 6.5q-9 2 -15 7t-6 13v94 +q0 8 6 13.5t15 5.5h42q19 0 25.5 8.5t6.5 31.5v632z" /> + <glyph glyph-name="approxequal" unicode="&#x2248;" horiz-adv-x="549" +d="M485 590q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5t4 16.5v17q0 17 17 17h83 +q17 0 17 -17v-18zM485 360q0 -71 -36 -99t-97 -28q-14 0 -35.5 5.5t-37.5 15.5l-40 24q-25 15 -39 15q-8 0 -13.5 -4t-5.5 -16v-17q0 -17 -16 -17h-84q-17 0 -17 17v17q0 69 36 98t98 29q14 0 34.5 -5t37.5 -15l41 -24q14 -8 22.5 -12t16.5 -4q10 0 14 4.5t4 16.5v17 +q0 17 17 17h83q17 0 17 -17v-18z" /> + <glyph glyph-name="notequal" unicode="&#x2260;" +d="M488 743q14 0 17.5 -6t1.5 -14l-37 -126h79q8 0 14 -4t6 -12v-110q0 -8 -6 -12t-14 -4h-121l-37 -128h158q8 0 14 -4t6 -12v-110q0 -8 -6 -12t-14 -4h-200l-47 -163q-2 -8 -7.5 -15t-13.5 -7h-133q-8 0 -16.5 4.5t-4.5 17.5l48 163h-58q-8 0 -14 4t-6 12v110q0 8 6 12 +t14 4h99l38 128h-137q-8 0 -14 4t-6 12v110q0 8 6 12t14 4h179l37 126q2 8 6.5 14t15.5 6h133z" /> + <glyph glyph-name="lessequal" unicode="&#x2264;" +d="M562 148q0 -12 -12 -12h-168q-16 0 -26 10l-234 213q-18 16 -18 32q0 18 18 33l234 212q6 5 12 8t14 3h168q12 0 12 -12q0 -6 -6 -12l-257 -232l257 -231q6 -6 6 -12zM572 -9q0 -8 -6 -12t-14 -4h-438q-8 0 -14 4t-6 12v86q0 8 6 12t14 4h438q8 0 14 -4t6 -12v-86z" /> + <glyph glyph-name="greaterequal" unicode="&#x2265;" +d="M562 391q0 -16 -18 -32l-234 -213q-10 -10 -26 -10h-168q-12 0 -12 12q0 6 6 12l258 231l-258 232q-6 6 -6 12q0 12 12 12h168q8 0 14 -3t12 -8l234 -212q18 -15 18 -33zM572 -9q0 -8 -6 -12t-14 -4h-438q-8 0 -14 4t-6 12v86q0 8 6 12t14 4h438q8 0 14 -4t6 -12v-86z +" /> + <glyph glyph-name="lozenge" unicode="&#x25ca;" horiz-adv-x="598" +d="M558 365q0 -19 -13 -37l-221 -272q-11 -14 -25 -14q-13 0 -24 14l-222 272q-13 18 -13 37q0 20 13 36l222 278q9 11 24 11t24 -11l222 -278q13 -14 13 -36zM391 364q0 9 -7 17l-66 87q-5 5 -9 7.5t-10 2.5q-7 0 -10 -2.5t-8 -7.5l-67 -87q-3 -5 -5 -8.5t-2 -8.5 +q0 -8 8 -18l65 -83q11 -12 19 -12q10 0 19 12l66 83q7 8 7 18z" /> + <glyph glyph-name="uniF6C3" unicode="&#xf6c3;" horiz-adv-x="415" +d="M304 -64q0 -1 -2 -7l-56 -101q-5 -8 -11 -14t-14 -6h-109q-15 0 -15 13q0 2 0.5 5t2.5 11l24 92q5 19 20 19h146q14 0 14 -12z" /> + <glyph glyph-name="zero.oldstyle.pnum" horiz-adv-x="605" +d="M611 277q0 -137 -72 -211.5t-206 -74.5t-206 74.5t-72 211.5v17q0 152 72 225t206 73t206 -73t72 -225v-17zM407 294q0 39 -5.5 64t-15.5 38.5t-23.5 18.5t-29.5 5t-29.5 -5t-23.5 -18.5t-15.5 -38.5t-5.5 -64v-17q0 -36 5.5 -58t15.5 -35t23.5 -17.5t29.5 -4.5t29.5 4.5 +t23.5 17.5t15.5 35t5.5 58v17z" /> + <glyph glyph-name="one.oldstyle.pnum" horiz-adv-x="517" +d="M436 20q0 -8 -5.5 -14t-13.5 -6h-163q-8 0 -14 6t-6 14v360l-107 -42q-8 -3 -12 -3q-10 0 -10 12v142q0 12 12 17l162 72q9 4 23 4h115q19 0 19 -19v-543v0z" /> + <glyph glyph-name="two.oldstyle.pnum" +d="M592 435q0 -42 -11 -70.5t-33 -50t-55.5 -38.5t-78.5 -34q-27 -10 -50.5 -18t-41 -16t-27.5 -16t-10 -18v-3h276q8 0 14 -6t6 -14v-131q0 -8 -6 -14t-14 -6h-466q-8 0 -14 6t-6 14v106q0 48 17.5 83t46 61.5t64 45t72.5 33.5q35 14 58 22.5t36 15t18 11.5t5 13 +q0 6 -3.5 9.5t-14 6t-28.5 3t-48 0.5q-48 0 -96.5 -3.5t-98.5 -8.5q-13 -2 -16.5 4t-3.5 16v97q0 8 5.5 12t13.5 7q45 16 103.5 26.5t121.5 10.5q75 0 126 -11t81.5 -31.5t44 -49.5t13.5 -64z" /> + <glyph glyph-name="three.oldstyle.pnum" +d="M590 54q0 -59 -19 -101t-54.5 -70t-86 -41t-113.5 -13q-31 0 -62.5 3t-61 7.5t-54.5 10.5t-43 13q-8 3 -14 7.5t-6 12.5v98q0 8 5 13.5t13 5.5h2q23 -2 50 -3.5t54.5 -3t54 -2.5t49.5 -1q46 0 65.5 17t19.5 47v16q0 14 -3 27t-11 22.5t-23.5 15.5t-40.5 6h-166 +q-8 0 -14 6t-6 14v107q0 8 6 13.5t14 5.5h166q24 0 39 6.5t23.5 17t12 24t3.5 26.5v16q0 30 -19.5 41t-57.5 11q-52 0 -107 -3.5t-104 -7.5h-2q-8 0 -13.5 5.5t-5.5 13.5v98q0 8 6.5 12.5t14.5 7.5q18 7 41.5 13.5t51 11.5t57.5 8t61 3q63 0 114 -10.5t87 -34t55.5 -62 +t19.5 -94.5v-14q0 -42 -22 -86t-69 -73q42 -22 67.5 -59t25.5 -88v-16v0z" /> + <glyph glyph-name="four.oldstyle.pnum" +d="M623 23q0 -8 -6 -14t-14 -6h-58v-135q0 -8 -6 -14t-14 -6h-164q-8 0 -13.5 6t-5.5 14v135h-279q-8 0 -14 6t-6 14v113q0 16 11 30l324 416q5 6 10.5 7.5t13.5 1.5h123q8 0 14 -6t6 -14v-414h58q8 0 14 -6t6 -14v-114zM350 347q0 4 -2 4q-1 0 -3 -2l-138 -183q-3 -5 -3 -6 +q0 -3 5 -3h141v190z" /> + <glyph glyph-name="five.oldstyle.pnum" +d="M587 77q0 -62 -20 -108.5t-56.5 -77.5t-89 -46t-118.5 -15q-52 0 -104.5 8.5t-97.5 24.5q-8 3 -14.5 7t-6.5 14v99q0 8 5.5 13.5t13.5 5.5h2q18 -2 42.5 -4t49 -3.5t45 -2.5t30.5 -1q36 0 58 5t34 15.5t16 26.5t4 39v10q0 37 -22 53t-84 16h-175q-17 0 -17 16v2l31 389 +q1 8 6.5 13.5t13.5 5.5h414q8 0 14 -5.5t6 -13.5v-124q0 -8 -6 -13.5t-14 -5.5h-272l-10 -110h41q146 0 213.5 -55.5t67.5 -167.5v-10v0z" /> + <glyph glyph-name="six.oldstyle.pnum" +d="M606 248q0 -59 -17 -106t-51 -81t-85 -52t-118 -18q-131 0 -202.5 71t-71.5 208v206q0 75 21.5 127.5t59.5 86t88.5 48.5t109.5 15q70 0 121.5 -8t87.5 -18q14 -4 18 -9.5t4 -14.5v-105q0 -21 -18 -21h-5q-18 3 -39.5 5.5t-45.5 4.5t-48 3t-46 1q-33 0 -54.5 -5 +t-33.5 -18t-16.5 -35.5t-4.5 -56.5v-6q7 1 20 3t27.5 3.5t29 2.5t25.5 1q61 0 107 -11t76.5 -36.5t45.5 -68t15 -105.5v-11zM407 259q0 26 -5 42t-14.5 25t-24 12t-33.5 3q-18 0 -37.5 -2t-32.5 -4v-65q0 -39 4 -63.5t13 -38t23 -18.5t35 -5q16 0 29 4t22.5 15.5t15 31.5 +t5.5 52v11z" /> + <glyph glyph-name="seven.oldstyle.pnum" horiz-adv-x="588" +d="M543 464q0 -12 -4.5 -23t-9.5 -22l-256 -560q-4 -9 -9 -14.5t-14 -5.5h-171q-9 0 -14.5 4.5t-5.5 10.5q0 3 2 7l261 553v1q0 2 -3.5 3.5t-5.5 1.5h-247q-8 0 -14.5 5.5t-6.5 13.5v124q0 8 6.5 13.5t14.5 5.5h450q11 0 19 -7.5t8 -18.5v-92v0z" /> + <glyph glyph-name="eight.oldstyle.pnum" +d="M613 212q0 -50 -17.5 -90.5t-52 -69.5t-86 -45t-118.5 -16h-12q-67 0 -118.5 16t-86 45t-52 69.5t-17.5 90.5v16q0 49 21.5 89t58.5 68q-35 25 -55.5 59.5t-20.5 84.5v18q0 99 67 152.5t203 53.5h12q135 0 202.5 -53.5t67.5 -152.5v-18q0 -50 -20.5 -84.5t-55.5 -59.5 +q37 -28 58.5 -68t21.5 -89v-16zM417 529q0 29 -17 52.5t-61 23.5h-12q-44 0 -61 -23t-17 -53v-6q0 -33 19 -52t54 -19h22q35 0 54 19t19 52v6zM417 232q0 33 -17 57.5t-56 24.5h-22q-39 0 -56 -24t-17 -58v-11q0 -36 20 -59t58 -23h12q38 0 58 23t20 59v11z" /> + <glyph glyph-name="nine.oldstyle.pnum" +d="M605 106q0 -75 -21.5 -127.5t-59.5 -86t-89 -48.5t-109 -15q-70 0 -121.5 8t-87.5 18q-14 4 -18 9.5t-4 14.5v105q0 21 18 21h5q18 -3 39.5 -5.5t45.5 -4.5t48 -3t46 -1q33 0 54.5 5t33.5 18t16.5 35t4.5 57v6q-7 -2 -20 -3.5t-27.5 -3t-29 -2.5t-25.5 -1 +q-62 0 -107.5 11t-76 36.5t-45.5 68t-15 105.5v11q0 58 17 105.5t51 81.5t85 52t118 18q131 0 202.5 -71t71.5 -208v-206zM406 312q0 39 -4 63.5t-13 38t-23 18.5t-35 5q-16 0 -29 -4t-22.5 -15.5t-15 -31.5t-5.5 -52v-11q0 -26 5 -42t14.5 -25t24 -12t33.5 -3q18 0 37.5 2 +t32.5 4v65z" /> + <glyph glyph-name="glyph236" horiz-adv-x="599" +d="M554 249q0 -8 -6 -13.5t-14 -5.5h-470q-19 0 -19 19v90q0 8 5.5 14t13.5 6h470q8 0 14 -6t6 -14v-90v0z" /> + <glyph glyph-name="a.superior" horiz-adv-x="322" +d="M295 360q0 -7 -5 -12t-12 -5h-76q-7 0 -12 5t-5 12q-15 -10 -33.5 -16t-43.5 -6q-15 0 -31.5 5t-30 17t-22 32t-8.5 49v6q0 52 37 73.5t109 21.5h17v9q0 17 -9 21.5t-21 4.5q-25 0 -49.5 -1t-44.5 -3q-18 0 -18 17v52q0 6 4.5 11.5t10.5 7.5q14 4 44.5 8.5t56.5 4.5 +q30 0 56 -6t45 -20.5t30 -38t11 -58.5v-191zM182 474h-20q-18 0 -25.5 -6t-7.5 -20v-6q0 -11 6.5 -14.5t14.5 -3.5t16 2l16 4v44z" /> + <glyph glyph-name="b.aalt" horiz-adv-x="347" +d="M326 486q0 -72 -39.5 -110t-108.5 -38q-37 0 -68.5 4.5t-53.5 9.5q-15 4 -19.5 8.5t-4.5 13.5v382q0 7 5 12t12 5h82q7 0 12 -5t5 -12v-85q8 2 16 2.5t14 0.5q75 0 111.5 -39.5t36.5 -106.5v-42zM148 437q6 -1 14 -1.5t16 -0.5q20 0 26 14t6 37v42q0 20 -6 34.5t-26 14.5 +h-15.5t-14.5 -1v-139z" /> + <glyph glyph-name="d.aalt" horiz-adv-x="347" +d="M315 374q0 -9 -4 -13.5t-20 -8.5q-21 -5 -52.5 -9.5t-69.5 -4.5q-69 0 -108.5 38t-39.5 110v42q0 67 36.5 106.5t111.5 39.5q6 0 14.5 -0.5t16.5 -2.5v85q0 7 4.5 12t12.5 5h80q8 0 13 -5t5 -12v-382zM200 575q-6 1 -15 1.5t-16 0.5q-20 0 -26 -14t-6 -35v-42 +q0 -23 6 -37t26 -14q9 0 17 0.5t14 1.5v138z" /> + <glyph glyph-name="e.aalt" horiz-adv-x="337" +d="M315 489q0 -18 -16 -18h-162q2 -17 11.5 -26.5t33.5 -9.5q10 0 24.5 0.5l29 1t27.5 1t22 1.5q17 0 17 -14v-49q0 -9 -3 -13.5t-12 -7.5q-26 -8 -55 -12.5t-64 -4.5q-29 0 -55 8t-46.5 25.5t-32.5 45.5t-12 69v35q0 75 40 114t109 39q74 0 109 -42.5t35 -110.5v-32z +M203 541q0 21 -9 31t-24 10t-24 -10t-9 -31h66z" /> + <glyph glyph-name="l.aalt" horiz-adv-x="177" +d="M146 361q0 -7 -5 -12.5t-12 -5.5h-81q-7 0 -12.5 5.5t-5.5 12.5v395q0 7 5.5 12t12.5 5h81q7 0 12 -5t5 -12v-395v0z" /> + <glyph glyph-name="m.aalt" horiz-adv-x="506" +d="M472 361q0 -7 -4 -12.5t-12 -5.5h-81q-8 0 -13 5.5t-5 12.5v190q0 16 -4.5 21t-15.5 5q-5 0 -11.5 -0.5t-15.5 -3.5v-1q1 -5 1 -10v-11v-190q0 -7 -5 -12.5t-13 -5.5h-80q-8 0 -13 5.5t-5 12.5v190q0 16 -4.5 21t-15.5 5q-15 0 -26 -5v-211q0 -7 -5 -12.5t-12 -5.5h-82 +q-6 0 -11.5 5.5t-5.5 12.5v292q0 7 5 11.5t11 4.5h76q7 0 12 -4.5t5 -11.5q33 21 77 21q41 0 64 -25q20 14 42 19.5t46 5.5q55 0 78 -33.5t23 -94.5v-185v0z" /> + <glyph glyph-name="n.aalt" horiz-adv-x="357" +d="M325 361q0 -7 -4.5 -12.5t-11.5 -5.5h-82q-7 0 -12.5 5.5t-5.5 12.5v189q0 17 -5.5 24t-21.5 7t-34 -8v-212q0 -7 -5 -12.5t-12 -5.5h-82q-7 0 -12 5.5t-5 12.5v292q0 16 16 16h76q7 0 12 -4.5t5 -11.5v-1q20 14 36.5 18t45.5 4q32 0 52 -11t31 -29t15 -41t4 -48v-184v0z +" /> + <glyph glyph-name="o.superior" horiz-adv-x="339" +d="M317 490q0 -75 -38 -113.5t-109 -38.5t-109.5 38.5t-38.5 113.5v32q0 75 38.5 113.5t109.5 38.5t109 -38.5t38 -113.5v-32zM202 522q0 29 -8 41.5t-24 12.5q-17 0 -25 -12.5t-8 -41.5v-32q0 -29 8 -41.5t25 -12.5q16 0 24 12.5t8 41.5v32z" /> + <glyph glyph-name="r.aalt" horiz-adv-x="235" +d="M225 594q0 -6 -4.5 -11.5t-9.5 -5.5h-8q-17 0 -31 -2t-25 -7v-207q0 -7 -5 -12.5t-12 -5.5h-82q-6 0 -11.5 5.5t-5.5 12.5v292q0 7 5 11.5t11 4.5h78q17 0 17 -16q16 14 30.5 17.5t30.5 3.5h6q6 0 11 -5t5 -11v-64v0z" /> + <glyph glyph-name="s.aalt" horiz-adv-x="290" +d="M246 661q16 -4 16 -18v-57q0 -8 -3.5 -13.5t-17.5 -3.5l-20 2.5t-25 3t-25 2.5t-19 1q-14 0 -14 -5t9 -9l63 -34q20 -11 32 -21.5t18 -21.5t8 -22.5t2 -23.5q0 -44 -31.5 -73.5t-100.5 -29.5q-29 0 -56 4t-45 9q-15 4 -15 18v56q0 8 3.5 13.5t17.5 3.5q23 -4 50 -6.5 +t41 -2.5q12 0 16 2.5t4 7.5q0 6 -13 13l-66 35q-55 30 -55 91q0 45 31 68.5t94 23.5q32 0 56.5 -4t44.5 -9z" /> + <glyph glyph-name="t.aalt" horiz-adv-x="242" +d="M224 598q0 -7 -4.5 -12t-12.5 -5h-34v-140q0 -8 1.5 -11t7.5 -3h24q18 0 18 -16v-51q0 -8 -4.5 -11.5t-12.5 -5.5q-9 -2 -23 -3.5t-26 -1.5q-23 0 -41.5 4.5t-32 16t-20.5 31.5t-7 52v140q-8 2 -16.5 3.5t-15.5 3.5q-6 2 -10.5 6t-4.5 11v47q0 16 18 16h29v39q0 7 5 10.5 +t12 5.5l81 15q12 2 15 -3.5t3 -13.5v-53h34q17 0 17 -16v-55v0z" /> + <glyph glyph-name="h.aalt" horiz-adv-x="357" +d="M325 361q0 -7 -4.5 -12.5t-11.5 -5.5h-82q-7 0 -12.5 5.5t-5.5 12.5v189q0 17 -5.5 24t-21.5 7t-34 -8v-212q0 -7 -5 -12.5t-12 -5.5h-82q-7 0 -12 5.5t-5 12.5v396q0 16 16 16h83q7 0 12 -4.5t5 -11.5v-101q15 11 30.5 14.5t44.5 3.5q32 0 52 -11t31 -29t15 -41t4 -48 +v-184v0z" /> + <glyph glyph-name="zero.pnum" +d="M611 323q0 -87 -18.5 -149.5t-54 -103t-87 -60t-118.5 -19.5q-134 0 -206 79.5t-72 252.5v97q0 173 72 253t206 80q133 0 205.5 -80t72.5 -253v-97zM407 420q0 51 -5.5 82.5t-15.5 49t-23.5 23.5t-29.5 6t-29.5 -6t-23.5 -23.5t-15.5 -49t-5.5 -82.5v-97q0 -51 5.5 -82.5 +t15.5 -49t23.5 -23.5t29.5 -6t29.5 6t23.5 23.5t15.5 49t5.5 82.5v97z" /> + <glyph glyph-name="one.pnum" horiz-adv-x="511" +d="M382 20q0 -8 -5.5 -14t-13.5 -6h-163q-8 0 -14 6t-6 14v521l-107 -42q-8 -3 -12 -3q-10 0 -10 12v142q0 12 12 17l162 72q9 4 23 4h115q19 0 19 -19v-704v0z" /> + <glyph glyph-name="two.pnum" +d="M592 555q0 -59 -27 -104.5t-78 -78.5l-81 -54q-29 -19 -55.5 -36t-47 -34t-32.5 -35t-12 -39v-3h302q8 0 14 -6t6 -14v-131q0 -8 -6 -14t-14 -6h-466q-8 0 -14 6t-6 14v106q0 83 33 145t86 101l86 64q40 30 62.5 47t33.5 27.5t13.5 18t2.5 18.5q0 12 -3.5 20.5t-14 14 +t-28.5 8t-48 2.5q-48 0 -98 -4t-97 -8h-2q-8 0 -13 6t-5 14v97q0 8 5.5 12t13.5 7q45 16 103.5 26.5t121.5 10.5q72 0 122.5 -12.5t82 -37t46 -62t14.5 -86.5z" /> + <glyph glyph-name="three.pnum" +d="M590 216q0 -59 -19 -101t-54.5 -70t-86 -41t-113.5 -13q-31 0 -62.5 3t-61 7.5t-54.5 10.5t-43 13q-8 3 -14 7.5t-6 12.5v98q0 8 5 13.5t13 5.5h2q23 -2 50 -3.5t54.5 -3t54 -2.5t49.5 -1q46 0 65.5 17t19.5 47v16q0 14 -3 27t-11 22.5t-23.5 15.5t-40.5 6h-166 +q-8 0 -14 6t-6 14v107q0 8 6 13.5t14 5.5h166q24 0 39 6.5t23.5 17t12 24t3.5 26.5v16q0 30 -19.5 41t-57.5 11q-52 0 -107 -3.5t-104 -7.5h-2q-8 0 -13.5 5.5t-5.5 13.5v98q0 8 6.5 12.5t14.5 7.5q18 7 41.5 13.5t51 11.5t57.5 8t61 3q63 0 114 -10.5t87 -34t55.5 -62 +t19.5 -94.5v-14q0 -42 -22 -86t-69 -73q42 -22 67.5 -59t25.5 -88v-16v0z" /> + <glyph glyph-name="four.pnum" +d="M623 175q0 -8 -6 -14t-14 -6h-58v-135q0 -8 -6 -14t-14 -6h-164q-8 0 -13.5 6t-5.5 14v135h-279q-8 0 -14 6t-6 14v113q0 16 11 30l324 416q5 6 10.5 7.5t13.5 1.5h123q8 0 14 -6t6 -14v-414h58q8 0 14 -6t6 -14v-114zM350 499q0 4 -2 4q-1 0 -3 -2l-138 -183 +q-3 -5 -3 -6q0 -3 5 -3h141v190z" /> + <glyph glyph-name="five.pnum" +d="M587 238q0 -62 -20 -108.5t-56.5 -77.5t-89 -46t-118.5 -15q-52 0 -104.5 8.5t-97.5 24.5q-8 3 -14.5 7t-6.5 14v99q0 8 5.5 13.5t13.5 5.5h2q18 -2 42.5 -4t49 -3.5t45 -2.5t30.5 -1q36 0 58 5t34 15.5t16 26.5t4 39v10q0 37 -22 53t-84 16h-175q-17 0 -17 16v2l31 389 +q1 8 6.5 13.5t13.5 5.5h414q8 0 14 -5.5t6 -13.5v-124q0 -8 -6 -13.5t-14 -5.5h-272l-10 -110h41q146 0 213.5 -55.5t67.5 -167.5v-10v0z" /> + <glyph glyph-name="six.pnum" +d="M606 248q0 -59 -17 -106t-51 -81t-85 -52t-118 -18q-131 0 -202.5 71t-71.5 208v206q0 75 21.5 127.5t59.5 86t88.5 48.5t109.5 15q70 0 121.5 -8t87.5 -18q14 -4 18 -9.5t4 -14.5v-105q0 -21 -18 -21h-5q-18 3 -39.5 5.5t-45.5 4.5t-48 3t-46 1q-33 0 -54.5 -5 +t-33.5 -18t-16.5 -35.5t-4.5 -56.5v-6q7 1 20 3t27.5 3.5t29 2.5t25.5 1q61 0 107 -11t76.5 -36.5t45.5 -68t15 -105.5v-11zM407 259q0 26 -5 42t-14.5 25t-24 12t-33.5 3q-18 0 -37.5 -2t-32.5 -4v-65q0 -39 4 -63.5t13 -38t23 -18.5t35 -5q16 0 29 4t22.5 15.5t15 31.5 +t5.5 52v11z" /> + <glyph glyph-name="seven.pnum" horiz-adv-x="588" +d="M545 625q0 -12 -4.5 -23t-9.5 -22l-256 -560q-4 -9 -9 -14.5t-14 -5.5h-178q-10 0 -12.5 7t1.5 15l257 544q5 9 2.5 12t-10.5 3h-244q-8 0 -14.5 5.5t-6.5 13.5v124q0 8 6.5 13.5t14.5 5.5h450q11 0 19 -7.5t8 -18.5v-92v0z" /> + <glyph glyph-name="eight.pnum" +d="M613 212q0 -50 -17.5 -90.5t-52 -69.5t-86 -45t-118.5 -16h-12q-67 0 -118.5 16t-86 45t-52 69.5t-17.5 90.5v16q0 49 21.5 89t58.5 68q-35 25 -55.5 59.5t-20.5 84.5v18q0 99 67 152.5t203 53.5h12q135 0 202.5 -53.5t67.5 -152.5v-18q0 -50 -20.5 -84.5t-55.5 -59.5 +q37 -28 58.5 -68t21.5 -89v-16zM417 529q0 29 -17 52.5t-61 23.5h-12q-44 0 -61 -23t-17 -53v-6q0 -33 19 -52t54 -19h22q35 0 54 19t19 52v6zM417 232q0 33 -17 57.5t-56 24.5h-22q-39 0 -56 -24t-17 -58v-11q0 -36 20 -59t58 -23h12q38 0 58 23t20 59v11z" /> + <glyph glyph-name="nine.pnum" +d="M606 268q0 -75 -21.5 -127.5t-59.5 -86t-89 -48.5t-109 -15q-70 0 -121.5 8t-87.5 18q-14 4 -18 9.5t-4 14.5v105q0 14 5 18.5t18 2.5q37 -5 85.5 -9.5t93.5 -4.5q33 0 54.5 5t33.5 18t16.5 35t4.5 57v6q-7 -2 -20 -3.5t-27.5 -3t-29 -2.5t-25.5 -1q-62 0 -107.5 11 +t-76 36.5t-45.5 68t-15 105.5v11q0 58 17 105.5t51 81.5t85 52t118 18q131 0 202.5 -71t71.5 -208v-206zM407 474q0 39 -4 63.5t-13 38t-23 18.5t-35 5q-16 0 -29 -4t-22.5 -15.5t-15 -31.5t-5.5 -52v-11q0 -26 5 -42t14.5 -25t24 -12t33.5 -3q18 0 37.5 2t32.5 4v65z" /> + <glyph glyph-name="zero.oldstyle" horiz-adv-x="605" +d="M611 277q0 -137 -72 -211.5t-206 -74.5t-206 74.5t-72 211.5v17q0 152 72 225t206 73t206 -73t72 -225v-17zM407 294q0 39 -5.5 64t-15.5 38.5t-23.5 18.5t-29.5 5t-29.5 -5t-23.5 -18.5t-15.5 -38.5t-5.5 -64v-17q0 -36 5.5 -58t15.5 -35t23.5 -17.5t29.5 -4.5t29.5 4.5 +t23.5 17.5t15.5 35t5.5 58v17z" /> + <glyph glyph-name="one.oldstyle" +d="M271 171v218l-117 -42q-8 -3 -12 -3q-10 0 -10 12v142q0 12 12 17l172 72q9 4 23 4h115q19 0 19 -19v-401h119q8 0 14 -6t6 -14v-131q0 -8 -6 -14t-14 -6h-441q-8 0 -14 6t-6 14v131q0 8 6 14t14 6h120z" /> + <glyph glyph-name="two.oldstyle" +d="M592 435q0 -42 -11 -70.5t-33 -50t-55.5 -38.5t-78.5 -34q-27 -10 -50.5 -18t-41 -16t-27.5 -16t-10 -18v-3h276q8 0 14 -6t6 -14v-131q0 -8 -6 -14t-14 -6h-466q-8 0 -14 6t-6 14v106q0 48 17.5 83t46 61.5t64 45t72.5 33.5q35 14 58 22.5t36 15t18 11.5t5 13 +q0 6 -3.5 9.5t-14 6t-28.5 3t-48 0.5q-48 0 -96.5 -3.5t-98.5 -8.5q-13 -2 -16.5 4t-3.5 16v97q0 8 5.5 12t13.5 7q45 16 103.5 26.5t121.5 10.5q75 0 126 -11t81.5 -31.5t44 -49.5t13.5 -64z" /> + <glyph glyph-name="three.oldstyle" +d="M590 54q0 -59 -19 -101t-54.5 -70t-86 -41t-113.5 -13q-31 0 -62.5 3t-61 7.5t-54.5 10.5t-43 13q-8 3 -14 7.5t-6 12.5v98q0 8 5 13.5t13 5.5h2q23 -2 50 -3.5t54.5 -3t54 -2.5t49.5 -1q46 0 65.5 17t19.5 47v16q0 14 -3 27t-11 22.5t-23.5 15.5t-40.5 6h-166 +q-8 0 -14 6t-6 14v107q0 8 6 13.5t14 5.5h166q24 0 39 6.5t23.5 17t12 24t3.5 26.5v16q0 30 -19.5 41t-57.5 11q-52 0 -107 -3.5t-104 -7.5h-2q-8 0 -13.5 5.5t-5.5 13.5v98q0 8 6.5 12.5t14.5 7.5q18 7 41.5 13.5t51 11.5t57.5 8t61 3q63 0 114 -10.5t87 -34t55.5 -62 +t19.5 -94.5v-14q0 -42 -22 -86t-69 -73q42 -22 67.5 -59t25.5 -88v-16v0z" /> + <glyph glyph-name="four.oldstyle" +d="M623 23q0 -8 -6 -14t-14 -6h-58v-135q0 -8 -6 -14t-14 -6h-164q-8 0 -13.5 6t-5.5 14v135h-279q-8 0 -14 6t-6 14v113q0 16 11 30l324 416q5 6 10.5 7.5t13.5 1.5h123q8 0 14 -6t6 -14v-414h58q8 0 14 -6t6 -14v-114zM350 347q0 4 -2 4q-1 0 -3 -2l-138 -183q-3 -5 -3 -6 +q0 -3 5 -3h141v190z" /> + <glyph glyph-name="five.oldstyle" +d="M587 77q0 -62 -20 -108.5t-56.5 -77.5t-89 -46t-118.5 -15q-52 0 -104.5 8.5t-97.5 24.5q-8 3 -14.5 7t-6.5 14v99q0 8 5.5 13.5t13.5 5.5h2q18 -2 42.5 -4t49 -3.5t45 -2.5t30.5 -1q36 0 58 5t34 15.5t16 26.5t4 39v10q0 37 -22 53t-84 16h-175q-17 0 -17 16v2l31 389 +q1 8 6.5 13.5t13.5 5.5h414q8 0 14 -5.5t6 -13.5v-124q0 -8 -6 -13.5t-14 -5.5h-272l-10 -110h41q146 0 213.5 -55.5t67.5 -167.5v-10v0z" /> + <glyph glyph-name="six.oldstyle" +d="M606 248q0 -59 -17 -106t-51 -81t-85 -52t-118 -18q-131 0 -202.5 71t-71.5 208v206q0 75 21.5 127.5t59.5 86t88.5 48.5t109.5 15q70 0 121.5 -8t87.5 -18q14 -4 18 -9.5t4 -14.5v-105q0 -21 -18 -21h-5q-18 3 -39.5 5.5t-45.5 4.5t-48 3t-46 1q-33 0 -54.5 -5 +t-33.5 -18t-16.5 -35.5t-4.5 -56.5v-6q7 1 20 3t27.5 3.5t29 2.5t25.5 1q61 0 107 -11t76.5 -36.5t45.5 -68t15 -105.5v-11zM407 259q0 26 -5 42t-14.5 25t-24 12t-33.5 3q-18 0 -37.5 -2t-32.5 -4v-65q0 -39 4 -63.5t13 -38t23 -18.5t35 -5q16 0 29 4t22.5 15.5t15 31.5 +t5.5 52v11z" /> + <glyph glyph-name="seven.oldstyle" +d="M582 464q0 -12 -4.5 -23t-9.5 -22l-256 -560q-4 -9 -9 -14.5t-14 -5.5h-171q-9 0 -14.5 4.5t-5.5 10.5q0 3 2 7l261 553v1q0 2 -3.5 3.5t-5.5 1.5h-247q-8 0 -14.5 5.5t-6.5 13.5v124q0 8 6.5 13.5t14.5 5.5h450q11 0 19 -7.5t8 -18.5v-92v0z" /> + <glyph glyph-name="eight.oldstyle" +d="M613 212q0 -50 -17.5 -90.5t-52 -69.5t-86 -45t-118.5 -16h-12q-67 0 -118.5 16t-86 45t-52 69.5t-17.5 90.5v16q0 49 21.5 89t58.5 68q-35 25 -55.5 59.5t-20.5 84.5v18q0 99 67 152.5t203 53.5h12q135 0 202.5 -53.5t67.5 -152.5v-18q0 -50 -20.5 -84.5t-55.5 -59.5 +q37 -28 58.5 -68t21.5 -89v-16zM417 529q0 29 -17 52.5t-61 23.5h-12q-44 0 -61 -23t-17 -53v-6q0 -33 19 -52t54 -19h22q35 0 54 19t19 52v6zM417 232q0 33 -17 57.5t-56 24.5h-22q-39 0 -56 -24t-17 -58v-11q0 -36 20 -59t58 -23h12q38 0 58 23t20 59v11z" /> + <glyph glyph-name="nine.oldstyle" +d="M605 106q0 -75 -21.5 -127.5t-59.5 -86t-89 -48.5t-109 -15q-70 0 -121.5 8t-87.5 18q-14 4 -18 9.5t-4 14.5v105q0 21 18 21h5q18 -3 39.5 -5.5t45.5 -4.5t48 -3t46 -1q33 0 54.5 5t33.5 18t16.5 35t4.5 57v6q-7 -2 -20 -3.5t-27.5 -3t-29 -2.5t-25.5 -1 +q-62 0 -107.5 11t-76 36.5t-45.5 68t-15 105.5v11q0 58 17 105.5t51 81.5t85 52t118 18q131 0 202.5 -71t71.5 -208v-206zM406 312q0 39 -4 63.5t-13 38t-23 18.5t-35 5q-16 0 -29 -4t-22.5 -15.5t-15 -31.5t-5.5 -52v-11q0 -26 5 -42t14.5 -25t24 -12t33.5 -3q18 0 37.5 2 +t32.5 4v65z" /> + <glyph glyph-name="zero.dnom" horiz-adv-x="392" +d="M352 179q0 -97 -40.5 -141t-115.5 -44t-115.5 44t-40.5 141v53q0 97 40.5 141t115.5 44t115.5 -44t40.5 -141v-53zM231 232q0 26 -2.5 42t-7 25t-11 12t-14.5 3t-14 -3t-11 -12t-7.5 -25t-2.5 -42v-53q0 -26 2.5 -42t7.5 -25t11 -12t14 -3t14.5 3t11 12t7 25t2.5 42v53z +" /> + <glyph glyph-name="one.dnom" horiz-adv-x="290" +d="M128 410q6 3 14 3h62q16 0 16 -16v-381q0 -16 -16 -16h-88q-16 0 -16 16v275l-51 -21q-6 -2 -12.5 0t-6.5 10v78q0 9 9 14z" /> + <glyph glyph-name="two.dnom" horiz-adv-x="371" +d="M331 306q0 -33 -16 -59t-43 -44l-62 -41q-24 -16 -41.5 -28.5t-18.5 -30.5h159q16 0 16 -16v-71q0 -16 -16 -16h-253q-16 0 -16 16v57q0 46 19 80.5t48 57.5l55 41q17 12 27 19.5t15.5 13t7 9t1.5 8.5q0 10 -9 14.5t-38 4.5q-22 0 -45 -2t-45 -4q-9 -1 -20 0t-11 15v53 +q0 6 4 9.5t9 5.5q24 8 56.5 14t67.5 6q81 0 115 -27.5t34 -84.5z" /> + <glyph glyph-name="three.dnom" horiz-adv-x="365" +d="M325 118q0 -63 -41 -93.5t-113 -30.5q-15 0 -33 2t-35 5t-31.5 7t-21.5 8q-10 4 -10 12v56q0 14 14 14h1q9 -1 22 -2t27.5 -1.5t28.5 -1t26 -0.5q26 0 37.5 5.5t11.5 22.5v8q0 17 -9.5 24.5t-32.5 7.5h-85q-6 0 -10.5 4.5t-4.5 10.5v60q0 6 4.5 10.5t10.5 4.5h85 +q43 0 43 28v9q0 14 -9.5 20t-39.5 6q-23 0 -53 -1.5t-49 -3.5h-1q-14 0 -14 14v58q0 6 4.5 9t9.5 5q25 8 54.5 13t61.5 5q70 0 111 -24t41 -86v-7q0 -32 -13 -53.5t-32 -34.5q24 -14 34.5 -36.5t10.5 -48.5v-5v0z" /> + <glyph glyph-name="four.dnom" horiz-adv-x="366" +d="M346 100q0 -16 -16 -16h-27v-68q0 -7 -4.5 -11.5t-10.5 -4.5h-89q-16 0 -16 16v68h-146q-16 0 -16 16v61q0 10 7 19l176 226q7 7 16 7h68q6 0 10.5 -4.5t4.5 -11.5v-220h27q16 0 16 -15v-62zM188 266l-67 -89h67v89z" /> + <glyph glyph-name="five.dnom" horiz-adv-x="365" +d="M325 134q0 -70 -42.5 -104.5t-116.5 -34.5q-29 0 -58.5 5t-52.5 13q-5 2 -10 5.5t-5 11.5v53q0 16 18 16q9 -1 22 -2l26 -2t24.5 -1.5t16.5 -0.5q36 0 46 9.5t10 31.5v5q0 17 -11 25t-42 8h-95q-14 0 -14 14l17 213q2 14 16 14h224q16 0 16 -16v-67q0 -15 -16 -15h-143 +l-5 -50h17q82 0 120 -31.5t38 -94.5v-5v0z" /> + <glyph glyph-name="six.dnom" horiz-adv-x="385" +d="M345 138q0 -66 -38 -105t-114 -39q-73 0 -113 40t-40 117v111q0 42 12 71.5t33 48t49.5 27t61.5 8.5q38 0 66.5 -4.5t47.5 -9.5q10 -3 13 -7t3 -11v-57q0 -16 -19 -16q-18 2 -45 4.5t-50 2.5q-33 0 -43.5 -10t-11.5 -44q10 2 25 3t26 1q69 0 103 -26.5t34 -98.5v-6z +M227 144q0 25 -8.5 32.5t-27.5 7.5q-8 0 -17.5 -0.5t-16.5 -2.5v-30q0 -40 8 -51.5t28 -11.5q15 0 24.5 9.5t9.5 40.5v6z" /> + <glyph glyph-name="seven.dnom" horiz-adv-x="360" +d="M174 14q-2 -5 -6.5 -9.5t-11.5 -4.5h-92q-16 0 -16 13q0 4 2 8q35 73 69.5 146.5t69.5 147.5h-132q-7 0 -12 4t-5 11v67q0 7 5 11.5t12 4.5h243q20 0 20 -20v-49q0 -7 -2.5 -13.5t-5.5 -13.5z" /> + <glyph glyph-name="eight.dnom" horiz-adv-x="384" +d="M349 119q0 -57 -39 -91t-115 -34h-6q-76 0 -115 34t-39 91v8q0 26 10.5 47.5t29.5 38.5q-19 14 -28.5 32.5t-9.5 45.5v10q0 56 38 86t114 30h6q76 0 114 -30t38 -86v-10q0 -27 -9.5 -45.5t-28.5 -32.5q19 -17 29.5 -38.5t10.5 -47.5v-8zM232 130q0 16 -7.5 28t-26.5 12 +h-12q-19 0 -26.5 -12t-7.5 -28v-6q0 -17 9 -28.5t28 -11.5h6q19 0 28 11.5t9 28.5v6zM189 327q-21 0 -29 -11t-8 -28q0 -34 34 -34h12q34 0 34 34q0 17 -8 28t-29 11h-6z" /> + <glyph glyph-name="nine.dnom" horiz-adv-x="385" +d="M345 149q0 -42 -12 -71.5t-33 -48t-49.5 -27t-61.5 -8.5q-38 0 -66.5 4.5t-47.5 9.5q-10 3 -13 7t-3 12v56q0 17 18 17q19 -3 46 -5.5t50 -2.5q33 0 43.5 11t10.5 44q-10 -2 -24.5 -3.5t-25.5 -1.5q-68 0 -102.5 27t-34.5 98v6q0 66 38 105t114 39q73 0 113 -40t40 -116 +v-112zM227 261q0 40 -7.5 51t-27.5 11q-15 0 -25 -9t-10 -41v-6q0 -26 9 -32.5t28 -6.5q8 0 17.5 0.5t15.5 1.5v31z" /> + <glyph glyph-name="zero.numr" horiz-adv-x="392" +d="M352 513q0 -97 -40.5 -141t-115.5 -44t-115.5 44t-40.5 141v53q0 97 40.5 141t115.5 44t115.5 -44t40.5 -141v-53zM231 566q0 26 -2.5 42t-7 25t-11 12t-14.5 3t-14 -3t-11 -12t-7.5 -25t-2.5 -42v-53q0 -26 2.5 -42t7.5 -25t11 -12t14 -3t14.5 3t11 12t7 25t2.5 42v53z +" /> + <glyph glyph-name="one.numr" horiz-adv-x="290" +d="M128 744q6 3 14 3h62q16 0 16 -16v-381q0 -16 -16 -16h-88q-16 0 -16 16v275l-51 -21q-6 -2 -12.5 0t-6.5 10v78q0 9 9 14z" /> + <glyph glyph-name="two.numr" horiz-adv-x="371" +d="M331 640q0 -33 -16 -59t-43 -44l-62 -41q-24 -16 -41.5 -28.5t-18.5 -30.5h159q16 0 16 -16v-71q0 -16 -16 -16h-253q-16 0 -16 16v57q0 46 19 80.5t48 57.5l55 41q17 12 27 19.5t15.5 13t7 9t1.5 8.5q0 10 -9 14.5t-38 4.5q-22 0 -45 -2t-45 -4q-9 -1 -20 0t-11 15v53 +q0 6 4 9.5t9 5.5q24 8 56.5 14t67.5 6q81 0 115 -27.5t34 -84.5z" /> + <glyph glyph-name="three.numr" horiz-adv-x="365" +d="M325 452q0 -63 -41 -93.5t-113 -30.5q-15 0 -33 2t-35 5t-31.5 7t-21.5 8q-10 4 -10 12v56q0 14 14 14h1q9 -1 22 -2t27.5 -1.5t28.5 -1t26 -0.5q26 0 37.5 5.5t11.5 22.5v8q0 17 -9.5 24.5t-32.5 7.5h-85q-6 0 -10.5 4.5t-4.5 10.5v60q0 6 4.5 10.5t10.5 4.5h85 +q43 0 43 28v9q0 14 -9.5 20t-39.5 6q-23 0 -53 -1.5t-49 -3.5h-1q-14 0 -14 14v58q0 6 4.5 9t9.5 5q25 8 54.5 13t61.5 5q70 0 111 -24t41 -86v-7q0 -32 -13 -53.5t-32 -34.5q24 -14 34.5 -36.5t10.5 -48.5v-5v0z" /> + <glyph glyph-name="four.numr" horiz-adv-x="366" +d="M346 434q0 -16 -16 -16h-27v-68q0 -7 -4.5 -11.5t-10.5 -4.5h-89q-16 0 -16 16v68h-146q-16 0 -16 16v61q0 10 7 19l176 226q7 7 16 7h68q6 0 10.5 -4.5t4.5 -11.5v-220h27q16 0 16 -15v-62zM188 600l-67 -89h67v89z" /> + <glyph glyph-name="five.numr" horiz-adv-x="365" +d="M325 468q0 -70 -42.5 -104.5t-116.5 -34.5q-29 0 -58.5 5t-52.5 13q-5 2 -10 5.5t-5 11.5v53q0 16 18 16q9 -1 22 -2l26 -2t24.5 -1.5t16.5 -0.5q36 0 46 9.5t10 31.5v5q0 17 -11 25t-42 8h-95q-14 0 -14 14l17 213q2 14 16 14h224q16 0 16 -16v-67q0 -15 -16 -15h-143 +l-5 -50h17q82 0 120 -31.5t38 -94.5v-5v0z" /> + <glyph glyph-name="six.numr" horiz-adv-x="385" +d="M345 472q0 -66 -38 -105t-114 -39q-73 0 -113 40t-40 117v111q0 42 12 71.5t33 48t49.5 27t61.5 8.5q38 0 66.5 -4.5t47.5 -9.5q10 -3 13 -7t3 -11v-57q0 -16 -19 -16q-18 2 -45 4.5t-50 2.5q-33 0 -43.5 -10t-11.5 -44q10 2 25 3t26 1q69 0 103 -26.5t34 -98.5v-6z +M227 478q0 25 -8.5 32.5t-27.5 7.5q-8 0 -17.5 -0.5t-16.5 -2.5v-30q0 -40 8 -51.5t28 -11.5q15 0 24.5 9.5t9.5 40.5v6z" /> + <glyph glyph-name="seven.numr" horiz-adv-x="360" +d="M174 348q-2 -5 -6.5 -9.5t-11.5 -4.5h-92q-16 0 -16 13q0 4 2 8q35 73 69.5 146.5t69.5 147.5h-132q-7 0 -12 4t-5 11v67q0 7 5 11.5t12 4.5h243q20 0 20 -20v-49q0 -7 -2.5 -13.5t-5.5 -13.5z" /> + <glyph glyph-name="eight.numr" horiz-adv-x="384" +d="M349 453q0 -57 -39 -91t-115 -34h-6q-76 0 -115 34t-39 91v8q0 26 10.5 47.5t29.5 38.5q-19 14 -28.5 32.5t-9.5 45.5v10q0 56 38 86t114 30h6q76 0 114 -30t38 -86v-10q0 -27 -9.5 -45.5t-28.5 -32.5q19 -17 29.5 -38.5t10.5 -47.5v-8zM232 464q0 16 -7.5 28t-26.5 12 +h-12q-19 0 -26.5 -12t-7.5 -28v-6q0 -17 9 -28.5t28 -11.5h6q19 0 28 11.5t9 28.5v6zM189 661q-21 0 -29 -11t-8 -28q0 -34 34 -34h12q34 0 34 34q0 17 -8 28t-29 11h-6z" /> + <glyph glyph-name="nine.numr" horiz-adv-x="385" +d="M345 483q0 -42 -12 -71.5t-33 -48t-49.5 -27t-61.5 -8.5q-38 0 -66.5 4.5t-47.5 9.5q-10 3 -13 7t-3 12v56q0 17 18 17q19 -3 46 -5.5t50 -2.5q33 0 43.5 11t10.5 44q-10 -2 -24.5 -3.5t-25.5 -1.5q-68 0 -102.5 27t-34.5 98v6q0 66 38 105t114 39q73 0 113 -40t40 -116 +v-112zM227 595q0 40 -7.5 51t-27.5 11q-15 0 -25 -9t-10 -41v-6q0 -26 9 -32.5t28 -6.5q8 0 17.5 0.5t15.5 1.5v31z" /> + <glyph glyph-name="glyph564" horiz-adv-x="312" +d="M253 -21q0 -54 -12.5 -89.5t-34.5 -57t-53.5 -30t-68.5 -8.5q-23 0 -45.5 2t-48.5 7q-20 3 -20 21v93q0 8 6 14t15 6h43q18 0 22 11t4 31v582q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-582v0z" /> + <glyph glyph-name="uni0431.aalt" horiz-adv-x="605" +d="M272 627q-14 0 -27.5 -0.5t-24 -4t-17 -11t-6.5 -21.5q0 -29 27 -34t79 -5q126 0 194 -69t68 -202v-18q0 -133 -68 -202t-194 -69t-194.5 69t-68.5 202v18q0 61 15 108.5t44 81.5q-27 18 -44 49.5t-17 82.5q0 55 25 89t63.5 52t85.5 24t91 6h217q8 0 14 -6t6 -14v-106 +q0 -8 -6 -14t-14 -6h-248zM374 280q0 60 -18 85t-53 25t-53.5 -25t-18.5 -85v-18q0 -60 18.5 -85.5t53.5 -25.5t53 25.5t18 85.5v18z" /> + <glyph glyph-name="i.locl" horiz-adv-x="313" +d="M258 657q0 -8 -7 -14t-15 -6h-158q-8 0 -15.5 6t-7.5 14v98q0 8 7.5 14t15.5 6h158q8 0 15 -6t7 -14v-98zM253 22q0 -8 -7 -15t-15 -7h-149q-8 0 -15 7t-7 15v539q0 8 7 14.5t15 6.5h149q8 0 15 -6.5t7 -14.5v-539z" /> + <hkern u1="&#x2f;" u2="q" k="16" /> + <hkern u1="&#x2f;" u2="&#x34;" k="50" /> + <hkern u1="&#x2f;" u2="&#x2f;" k="6" /> + <hkern u1="&#x37;" u2="&#x2f;" k="38" /> + <hkern u1="M" u2="V" k="15" /> + <hkern u1="P" u2="&#x201e;" k="28" /> + <hkern u1="P" u2="&#x201a;" k="28" /> + <hkern u1="Q" u2="X" k="39" /> + <hkern u1="Q" u2="V" k="22" /> + <hkern u1="V" u2="&#xef;" k="-21" /> + <hkern u1="V" u2="&#xbf;" k="101" /> + <hkern u1="V" u2="&#xa1;" k="5" /> + <hkern u1="V" u2="z" k="6" /> + <hkern u1="V" u2="y" k="6" /> + <hkern u1="V" u2="x" k="8" /> + <hkern u1="V" u2="v" k="5" /> + <hkern u1="V" u2="q" k="42" /> + <hkern u1="V" u2="p" k="5" /> + <hkern u1="V" u2="m" k="5" /> + <hkern u1="V" u2="Q" k="22" /> + <hkern u1="V" u2="&#x2f;" k="48" /> + <hkern u1="X" u2="y" k="48" /> + <hkern u1="X" u2="v" k="44" /> + <hkern u1="X" u2="Q" k="45" /> + <hkern u1="f" u2="q" k="16" /> + <hkern u1="p" g2="f_k.liga" k="20" /> + <hkern u1="p" g2="f_f_j.liga" k="20" /> + <hkern u1="p" g2="f_j.liga" k="20" /> + <hkern u1="p" g2="f_h.liga" k="20" /> + <hkern u1="p" g2="f_f_k.liga" k="20" /> + <hkern u1="p" g2="f_f_h.liga" k="20" /> + <hkern u1="p" g2="f_f_b.liga" k="20" /> + <hkern u1="p" g2="f_b.liga" k="20" /> + <hkern u1="p" g2="uniFB04" k="20" /> + <hkern u1="p" g2="uniFB03" k="20" /> + <hkern u1="p" g2="uniFB00" k="20" /> + <hkern u1="p" u2="x" k="35" /> + <hkern u1="p" u2="v" k="5" /> + <hkern u1="x" u2="q" k="53" /> + <hkern u1="&#xa1;" u2="V" k="5" /> + <hkern u1="&#xbf;" u2="V" k="57" /> + <hkern u1="&#x402;" u2="&#x4b6;" k="60" /> + <hkern u1="&#x402;" u2="&#x474;" k="60" /> + <hkern u1="&#x402;" u2="&#x462;" k="48" /> + <hkern u1="&#x402;" u2="&#x42d;" k="30" /> + <hkern u1="&#x402;" u2="&#x426;" k="20" /> + <hkern u1="&#x402;" u2="&#x405;" k="45" /> + <hkern u1="&#x402;" u2="&#x2f;" k="82" /> + <hkern u1="&#x402;" u2="&#x2d;" k="86" /> + <hkern u1="&#x403;" u2="&#x4b1;" k="61" /> + <hkern u1="&#x404;" u2="&#x424;" k="34" /> + <hkern u1="&#x404;" u2="&#x415;" k="20" /> + <hkern u1="&#x405;" u2="&#x42f;" k="15" /> + <hkern u1="&#x405;" u2="&#x414;" k="20" /> + <hkern u1="&#x40a;" u2="&#x4b6;" k="50" /> + <hkern u1="&#x40b;" u2="&#x2026;" k="29" /> + <hkern u1="&#x40b;" u2="&#x4b6;" k="49" /> + <hkern u1="&#x40c;" u2="&#x4b1;" k="50" /> + <hkern u1="&#x40e;" u2="&#x201e;" k="50" /> + <hkern u1="&#x40e;" u2="&#x201a;" k="50" /> + <hkern u1="&#x40f;" u2="&#x414;" k="30" /> + <hkern u1="&#x410;" u2="&#x4b6;" k="73" /> + <hkern u1="&#x411;" u2="&#x474;" k="37" /> + <hkern u1="&#x411;" u2="&#x42f;" k="30" /> + <hkern u1="&#x411;" u2="&#x427;" k="50" /> + <hkern u1="&#x412;" u2="&#x474;" k="30" /> + <hkern u1="&#x412;" u2="&#x42f;" k="10" /> + <hkern u1="&#x412;" u2="&#x42a;" k="10" /> + <hkern u1="&#x412;" u2="&#x414;" k="15" /> + <hkern u1="&#x414;" u2="&#x492;" k="30" /> + <hkern u1="&#x414;" u2="&#x474;" k="80" /> + <hkern u1="&#x414;" u2="&#x42a;" k="40" /> + <hkern u1="&#x414;" u2="&#x429;" k="20" /> + <hkern u1="&#x414;" u2="&#x428;" k="20" /> + <hkern u1="&#x414;" u2="&#x426;" k="40" /> + <hkern u1="&#x414;" u2="&#x424;" k="60" /> + <hkern u1="&#x414;" u2="&#x415;" k="30" /> + <hkern u1="&#x414;" u2="&#x40f;" k="30" /> + <hkern u1="&#x414;" u2="&#x401;" k="30" /> + <hkern u1="&#x417;" u2="&#x474;" k="20" /> + <hkern u1="&#x417;" u2="&#x42f;" k="20" /> + <hkern u1="&#x417;" u2="&#x414;" k="30" /> + <hkern u1="&#x41f;" u2="&#x474;" k="30" /> + <hkern u1="&#x420;" u2="&#x414;" k="90" /> + <hkern u1="&#x421;" u2="&#x442;" k="42" /> + <hkern u1="&#x421;" u2="&#x42a;" k="-10" /> + <hkern u1="&#x421;" u2="&#x424;" k="54" /> + <hkern u1="&#x421;" u2="&#x2d;" k="43" /> + <hkern u1="&#x422;" u2="&#x4b1;" k="72" /> + <hkern u1="&#x422;" u2="&#x492;" k="40" /> + <hkern u1="&#x422;" u2="&#x490;" k="28" /> + <hkern u1="&#x422;" u2="&#x455;" k="54" /> + <hkern u1="&#x422;" u2="&#x44f;" k="73" /> + <hkern u1="&#x422;" u2="&#x442;" k="51" /> + <hkern u1="&#x422;" u2="&#x431;" k="42" /> + <hkern u1="&#x422;" u2="&#x430;" k="59" /> + <hkern u1="&#x422;" u2="&#x42f;" k="20" /> + <hkern u1="&#x422;" u2="&#x42a;" k="-20" /> + <hkern u1="&#x422;" u2="&#x424;" k="42" /> + <hkern u1="&#x422;" u2="&#x41f;" k="25" /> + <hkern u1="&#x422;" u2="&#x415;" k="22" /> + <hkern u1="&#x422;" u2="&#x414;" k="85" /> + <hkern u1="&#x422;" u2="&#x413;" k="28" /> + <hkern u1="&#x422;" u2="&#x405;" k="20" /> + <hkern u1="&#x422;" u2="&#x403;" k="20" /> + <hkern u1="&#x422;" u2="&#x401;" k="20" /> + <hkern u1="&#x422;" u2="&#x2f;" k="88" /> + <hkern u1="&#x422;" u2="&#x2d;" k="105" /> + <hkern u1="&#x424;" u2="&#x474;" k="30" /> + <hkern u1="&#x424;" u2="&#x42d;" k="40" /> + <hkern u1="&#x424;" u2="&#x42a;" k="10" /> + <hkern u1="&#x424;" u2="&#x414;" k="60" /> + <hkern u1="&#x425;" u2="&#x4b1;" k="36" /> + <hkern u1="&#x428;" u2="&#x414;" k="20" /> + <hkern u1="&#x42d;" u2="&#x42f;" k="30" /> + <hkern u1="&#x42d;" u2="&#x42a;" k="40" /> + <hkern u1="&#x42d;" u2="&#x414;" k="26" /> + <hkern u1="&#x430;" u2="&#x442;" k="20" /> + <hkern u1="&#x432;" u2="&#x442;" k="20" /> + <hkern u1="&#x434;" u2="&#x44a;" k="30" /> + <hkern u1="&#x434;" u2="&#x442;" k="76" /> + <hkern u1="&#x434;" u2="&#x431;" k="25" /> + <hkern u1="&#x43b;" u2="&#x455;" k="20" /> + <hkern u1="&#x43b;" u2="&#x44a;" k="5" /> + <hkern u1="&#x43b;" u2="&#x442;" k="40" /> + <hkern u1="&#x43b;" u2="&#x431;" k="40" /> + <hkern u1="&#x43f;" u2="&#x442;" k="20" /> + <hkern u1="&#x442;" u2="&#x44a;" k="-30" /> + <hkern u1="&#x442;" u2="&#x2d;" k="56" /> + <hkern u1="&#x45e;" u2="&#x201e;" k="50" /> + <hkern u1="&#x45e;" u2="&#x201a;" k="50" /> + <hkern u1="&#x474;" u2="&#x455;" k="43" /> + <hkern u1="&#x474;" u2="&#x44f;" k="40" /> + <hkern u1="&#x474;" u2="&#x431;" k="20" /> + <hkern u1="&#x474;" u2="&#x430;" k="20" /> + <hkern u1="&#x474;" u2="&#x42a;" k="-30" /> + <hkern u1="&#x474;" u2="&#x424;" k="30" /> + <hkern u1="&#x474;" u2="&#x414;" k="85" /> + <hkern u1="&#x475;" u2="&#x44a;" k="-20" /> + <hkern u1="&#x492;" u2="&#x455;" k="40" /> + <hkern u1="&#x492;" u2="&#x44f;" k="50" /> + <hkern u1="&#x492;" u2="&#x442;" k="20" /> + <hkern u1="&#x492;" u2="&#x42f;" k="10" /> + <hkern u1="&#x492;" u2="&#x424;" k="40" /> + <hkern u1="&#x492;" u2="&#x414;" k="100" /> + <hkern g1="uniFB00" u2="q" k="20" /> + <hkern g1="f_f_k.liga" u2="q" k="40" /> + <hkern g1="f_k.liga" u2="q" k="40" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="j,jcircumflex" + k="-42" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute" + k="18" /> + <hkern g1="comma,quotesinglbase,quotedblbase" + g2="asterisk" + k="83" /> + <hkern g1="comma,quotesinglbase,quotedblbase" + g2="quotedbl,quotesingle" + k="77" /> + <hkern g1="comma,quotesinglbase,quotedblbase" + g2="quoteright,quotedblright" + k="77" /> + <hkern g1="period,ellipsis" + g2="asterisk" + k="83" /> + <hkern g1="period,ellipsis" + g2="quotedbl,quotesingle" + k="77" /> + <hkern g1="period,ellipsis" + g2="quoteright,quotedblright" + k="77" /> + <hkern g1="slash" + g2="c,ccedilla" + k="55" /> + <hkern g1="slash" + g2="e,eacute,eogonek" + k="52" /> + <hkern g1="slash" + g2="o,oacute,oslash,oe" + k="16" /> + <hkern g1="seven" + g2="comma,quotesinglbase,quotedblbase" + k="109" /> + <hkern g1="seven" + g2="period,ellipsis" + k="109" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + g2="quoteright,quotedblright" + k="30" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + g2="T,uni0162,Tcaron,Tbar" + k="23" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + g2="V" + k="30" /> + <hkern g1="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,Amacron,Abreve,Aogonek" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="47" /> + <hkern g1="B" + g2="T,uni0162,Tcaron,Tbar" + k="6" /> + <hkern g1="B" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="42" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute" + k="16" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="Q" + k="16" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="y" + k="4" /> + <hkern g1="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + g2="yacute,ydieresis,ycircumflex,ygrave" + k="4" /> + <hkern g1="D,Eth,Dcaron" + g2="T,uni0162,Tcaron,Tbar" + k="7" /> + <hkern g1="D,Eth,Dcaron" + g2="V" + k="7" /> + <hkern g1="D,Eth,Dcaron" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="51" /> + <hkern g1="D,Eth,Dcaron" + g2="X" + k="34" /> + <hkern g1="D,Eth,Dcaron" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="4" /> + <hkern g1="F" + g2="comma,quotesinglbase,quotedblbase" + k="59" /> + <hkern g1="F" + g2="period,ellipsis" + k="59" /> + <hkern g1="F" + g2="e,eacute,eogonek" + k="15" /> + <hkern g1="F" + g2="o,oacute,oslash,oe" + k="15" /> + <hkern g1="F" + g2="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute" + k="5" /> + <hkern g1="F" + g2="a,aacute,ae,aogonek,aeacute" + k="28" /> + <hkern g1="F" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="28" /> + <hkern g1="F" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="15" /> + <hkern g1="G,Gcircumflex,Gbreve,Gdotaccent,uni0122" + g2="V" + k="3" /> + <hkern g1="K,uni0136" + g2="quoteright,quotedblright" + k="3" /> + <hkern g1="K,uni0136" + g2="c,ccedilla" + k="17" /> + <hkern g1="K,uni0136" + g2="e,eacute,eogonek" + k="50" /> + <hkern g1="K,uni0136" + g2="o,oacute,oslash,oe" + k="39" /> + <hkern g1="K,uni0136" + g2="T,uni0162,Tcaron,Tbar" + k="3" /> + <hkern g1="K,uni0136" + g2="V" + k="3" /> + <hkern g1="K,uni0136" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="5" /> + <hkern g1="K,uni0136" + g2="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute" + k="53" /> + <hkern g1="K,uni0136" + g2="Q" + k="53" /> + <hkern g1="K,uni0136" + g2="y" + k="46" /> + <hkern g1="K,uni0136" + g2="yacute,ydieresis,ycircumflex,ygrave" + k="46" /> + <hkern g1="K,uni0136" + g2="a,aacute,ae,aogonek,aeacute" + k="31" /> + <hkern g1="K,uni0136" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="31" /> + <hkern g1="K,uni0136" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="39" /> + <hkern g1="K,uni0136" + g2="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + k="58" /> + <hkern g1="K,uni0136" + g2="E,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron" + k="38" /> + <hkern g1="K,uni0136" + g2="G,Gcircumflex,Gbreve,Gdotaccent,uni0122" + k="58" /> + <hkern g1="K,uni0136" + g2="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + k="11" /> + <hkern g1="K,uni0136" + g2="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + k="3" /> + <hkern g1="K,uni0136" + g2="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="6" /> + <hkern g1="K,uni0136" + g2="ccircumflex,cdotaccent,ccaron" + k="17" /> + <hkern g1="K,uni0136" + g2="d,dcaron,dcroat" + k="17" /> + <hkern g1="K,uni0136" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="50" /> + <hkern g1="K,uni0136" + g2="endash,emdash" + k="8" /> + <hkern g1="K,uni0136" + g2="g,uni0123" + k="8" /> + <hkern g1="K,uni0136" + g2="hyphen" + k="8" /> + <hkern g1="K,uni0136" + g2="q" + k="12" /> + <hkern g1="K,uni0136" + g2="u,uacute,uogonek" + k="48" /> + <hkern g1="K,uni0136" + g2="ugrave,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut" + k="48" /> + <hkern g1="K,uni0136" + g2="v" + k="46" /> + <hkern g1="K,uni0136" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="50" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="o,oacute,oslash,oe" + k="5" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="T,uni0162,Tcaron,Tbar" + k="76" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="V" + k="76" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="93" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute" + k="25" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="Q" + k="25" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="y" + k="61" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="yacute,ydieresis,ycircumflex,ygrave" + k="61" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + k="6" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="E,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron" + k="13" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="G,Gcircumflex,Gbreve,Gdotaccent,uni0122" + k="23" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="U,Ugrave,Uacute,Ucircumflex,Udieresis,Utilde,Umacron,Ubreve,Uring,Uhungarumlaut,Uogonek" + k="32" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + k="26" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="4" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="endash,emdash" + k="8" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="hyphen" + k="8" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="v" + k="10" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="21" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,uni0218" + k="3" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="registered" + k="12" /> + <hkern g1="L,Lacute,uni013B,Lcaron,Ldot,Lslash" + g2="trademark" + k="12" /> + <hkern g1="M" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="43" /> + <hkern g1="N,Ntilde,Nacute,Ncaron" + g2="T,uni0162,Tcaron,Tbar" + k="23" /> + <hkern g1="N,Ntilde,Nacute,Ncaron" + g2="V" + k="20" /> + <hkern g1="N,Ntilde,Nacute,Ncaron" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="43" /> + <hkern g1="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,Oslashacute" + g2="T,uni0162,Tcaron,Tbar" + k="25" /> + <hkern g1="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,Oslashacute" + g2="V" + k="22" /> + <hkern g1="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,Oslashacute" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="47" /> + <hkern g1="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,Oslashacute" + g2="X" + k="39" /> + <hkern g1="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,Oslashacute" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="23" /> + <hkern g1="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,Oslashacute" + g2="x" + k="6" /> + <hkern g1="P,Thorn" + g2="comma,quotesinglbase,quotedblbase" + k="71" /> + <hkern g1="P,Thorn" + g2="period,ellipsis" + k="81" /> + <hkern g1="P,Thorn" + g2="e,eacute,eogonek" + k="3" /> + <hkern g1="P,Thorn" + g2="o,oacute,oslash,oe" + k="3" /> + <hkern g1="P,Thorn" + g2="T,uni0162,Tcaron,Tbar" + k="5" /> + <hkern g1="P,Thorn" + g2="X" + k="40" /> + <hkern g1="P,Thorn" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="23" /> + <hkern g1="P,Thorn" + g2="a,aacute,ae,aogonek,aeacute" + k="20" /> + <hkern g1="P,Thorn" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="20" /> + <hkern g1="P,Thorn" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="3" /> + <hkern g1="P,Thorn" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="3" /> + <hkern g1="Q" + g2="T,uni0162,Tcaron,Tbar" + k="25" /> + <hkern g1="Q" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="47" /> + <hkern g1="Q" + g2="Z,Zacute,Zdotaccent,Zcaron" + k="23" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="c,ccedilla" + k="3" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="e,eacute,eogonek" + k="24" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="o,oacute,oslash,oe" + k="28" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="T,uni0162,Tcaron,Tbar" + k="28" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="V" + k="30" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="55" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute" + k="22" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="Q" + k="22" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="y" + k="20" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="yacute,ydieresis,ycircumflex,ygrave" + k="20" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="28" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + k="22" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="E,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron" + k="18" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="G,Gcircumflex,Gbreve,Gdotaccent,uni0122" + k="22" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="24" /> + <hkern g1="R,Racute,uni0156,Rcaron" + g2="g,uni0123" + k="3" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,uni0218" + g2="V" + k="5" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,uni0218" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="4" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,uni0218" + g2="y" + k="4" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,uni0218" + g2="v" + k="4" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,uni0218" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="18" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,uni0218" + g2="x" + k="3" /> + <hkern g1="S,Sacute,Scircumflex,Scedilla,Scaron,uni0218" + g2="t,uni0163,tcaron,tbar" + k="5" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="comma,quotesinglbase,quotedblbase" + k="47" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="period,ellipsis" + k="47" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="c,ccedilla" + k="13" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="e,eacute,eogonek" + k="63" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="o,oacute,oslash,oe" + k="60" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute" + k="25" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="Q" + k="25" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="y" + k="13" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="yacute,ydieresis,ycircumflex,ygrave" + k="13" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="a,aacute,ae,aogonek,aeacute" + k="50" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="50" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="60" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + k="23" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="E,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron" + k="4" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="G,Gcircumflex,Gbreve,Gdotaccent,uni0122" + k="5" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="ccircumflex,cdotaccent,ccaron" + k="13" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="d,dcaron,dcroat" + k="13" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="63" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="g,uni0123" + k="13" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="q" + k="60" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="u,uacute,uogonek" + k="10" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="ugrave,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut" + k="10" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="v" + k="6" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="6" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="x" + k="8" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute" + k="23" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="F" + k="15" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="gcircumflex,gbreve,gdotaccent" + k="13" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="igrave,icircumflex,idieresis,itilde,imacron,ibreve" + k="-10" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="m" + k="8" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="n,eng" + k="8" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="p" + k="8" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="r,uni0157" + k="29" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="racute,rcaron" + k="29" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="s,scedilla,uni0219" + k="51" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="sacute,scircumflex,scaron" + k="51" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="slash" + k="72" /> + <hkern g1="T,uni0162,Tcaron,Tbar" + g2="z" + k="7" /> + <hkern g1="V" + g2="comma,quotesinglbase,quotedblbase" + k="47" /> + <hkern g1="V" + g2="period,ellipsis" + k="47" /> + <hkern g1="V" + g2="c,ccedilla" + k="41" /> + <hkern g1="V" + g2="e,eacute,eogonek" + k="50" /> + <hkern g1="V" + g2="o,oacute,oslash,oe" + k="50" /> + <hkern g1="V" + g2="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute" + k="22" /> + <hkern g1="V" + g2="yacute,ydieresis,ycircumflex,ygrave" + k="6" /> + <hkern g1="V" + g2="a,aacute,ae,aogonek,aeacute" + k="58" /> + <hkern g1="V" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="58" /> + <hkern g1="V" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="50" /> + <hkern g1="V" + g2="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + k="37" /> + <hkern g1="V" + g2="E,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron" + k="23" /> + <hkern g1="V" + g2="G,Gcircumflex,Gbreve,Gdotaccent,uni0122" + k="24" /> + <hkern g1="V" + g2="ccircumflex,cdotaccent,ccaron" + k="41" /> + <hkern g1="V" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="50" /> + <hkern g1="V" + g2="g,uni0123" + k="41" /> + <hkern g1="V" + g2="u,uacute,uogonek" + k="31" /> + <hkern g1="V" + g2="ugrave,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut" + k="31" /> + <hkern g1="V" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="5" /> + <hkern g1="V" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,uni0218" + k="4" /> + <hkern g1="V" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute" + k="30" /> + <hkern g1="V" + g2="gcircumflex,gbreve,gdotaccent" + k="41" /> + <hkern g1="V" + g2="igrave,icircumflex,idieresis,itilde,imacron,ibreve" + k="-6" /> + <hkern g1="V" + g2="n,eng" + k="5" /> + <hkern g1="V" + g2="r,uni0157" + k="23" /> + <hkern g1="V" + g2="racute,rcaron" + k="23" /> + <hkern g1="V" + g2="s,scedilla,uni0219" + k="42" /> + <hkern g1="V" + g2="sacute,scircumflex,scaron" + k="42" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="e,eacute,eogonek" + k="15" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="o,oacute,oslash,oe" + k="15" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="a,aacute,ae,aogonek,aeacute" + k="15" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="15" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="15" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="15" /> + <hkern g1="W,Wcircumflex,Wgrave,Wacute,Wdieresis" + g2="questiondown" + k="80" /> + <hkern g1="X" + g2="e,eacute,eogonek" + k="36" /> + <hkern g1="X" + g2="o,oacute,oslash,oe" + k="40" /> + <hkern g1="X" + g2="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute" + k="45" /> + <hkern g1="X" + g2="yacute,ydieresis,ycircumflex,ygrave" + k="48" /> + <hkern g1="X" + g2="a,aacute,ae,aogonek,aeacute" + k="36" /> + <hkern g1="X" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="36" /> + <hkern g1="X" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="40" /> + <hkern g1="X" + g2="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + k="46" /> + <hkern g1="X" + g2="E,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron" + k="37" /> + <hkern g1="X" + g2="G,Gcircumflex,Gbreve,Gdotaccent,uni0122" + k="51" /> + <hkern g1="X" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="36" /> + <hkern g1="X" + g2="u,uacute,uogonek" + k="38" /> + <hkern g1="X" + g2="ugrave,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut" + k="38" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="comma,quotesinglbase,quotedblbase" + k="98" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="period,ellipsis" + k="98" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="c,ccedilla" + k="94" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="e,eacute,eogonek" + k="95" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="o,oacute,oslash,oe" + k="95" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute" + k="47" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="Q" + k="47" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="y" + k="38" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="yacute,ydieresis,ycircumflex,ygrave" + k="38" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="a,aacute,ae,aogonek,aeacute" + k="92" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="92" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="95" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + k="52" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="E,Egrave,Eacute,Ecircumflex,Edieresis,Emacron,Ebreve,Edotaccent,Eogonek,Ecaron" + k="43" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="G,Gcircumflex,Gbreve,Gdotaccent,uni0122" + k="52" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="ccircumflex,cdotaccent,ccaron" + k="94" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="d,dcaron,dcroat" + k="94" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="95" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="endash,emdash" + k="16" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="g,uni0123" + k="94" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="hyphen" + k="16" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="q" + k="94" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="u,uacute,uogonek" + k="66" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="ugrave,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut" + k="66" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="v" + k="43" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="42" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="S,Sacute,Scircumflex,Scedilla,Scaron,uni0218" + k="4" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="x" + k="38" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute" + k="47" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="gcircumflex,gbreve,gdotaccent" + k="94" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="igrave,icircumflex,idieresis,itilde,imacron,ibreve" + k="-31" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="m" + k="49" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="n,eng" + k="49" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="p" + k="67" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="r,uni0157" + k="67" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="racute,rcaron" + k="67" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="s,scedilla,uni0219" + k="69" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="sacute,scircumflex,scaron" + k="69" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="slash" + k="98" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="z" + k="64" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="questiondown" + k="145" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="exclamdown" + k="55" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="ntilde,nacute,ncaron" + k="49" /> + <hkern g1="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + g2="zacute,zdotaccent,zcaron" + k="64" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="c,ccedilla" + k="23" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="e,eacute,eogonek" + k="23" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="o,oacute,oslash,oe" + k="31" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="O,Ograve,Oacute,Ocircumflex,Otilde,Odieresis,Oslash,Omacron,Obreve,Ohungarumlaut,OE,Oslashacute" + k="23" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="Q" + k="23" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="y" + k="6" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="yacute,ydieresis,ycircumflex,ygrave" + k="6" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="a,aacute,ae,aogonek,aeacute" + k="20" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="20" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="31" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="C,Ccedilla,Cacute,Ccircumflex,Cdotaccent,Ccaron" + k="5" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="G,Gcircumflex,Gbreve,Gdotaccent,uni0122" + k="22" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="ccircumflex,cdotaccent,ccaron" + k="23" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="23" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="g,uni0123" + k="23" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="u,uacute,uogonek" + k="6" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="ugrave,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut" + k="6" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="v" + k="6" /> + <hkern g1="Z,Zacute,Zdotaccent,Zcaron" + g2="gcircumflex,gbreve,gdotaccent" + k="23" /> + <hkern g1="a,agrave,aacute,acircumflex,atilde,adieresis,aring,amacron,abreve,aogonek" + g2="v" + k="18" /> + <hkern g1="a,agrave,aacute,acircumflex,atilde,adieresis,aring,amacron,abreve,aogonek" + g2="t,uni0163,tcaron,tbar" + k="20" /> + <hkern g1="b,thorn" + g2="x" + k="30" /> + <hkern g1="b,thorn" + g2="t,uni0163,tcaron,tbar" + k="20" /> + <hkern g1="b,thorn" + g2="uniFB03" + k="20" /> + <hkern g1="b,thorn" + g2="uniFB00" + k="20" /> + <hkern g1="b,thorn" + g2="uniFB04" + k="20" /> + <hkern g1="b,thorn" + g2="f_b.liga" + k="20" /> + <hkern g1="b,thorn" + g2="f_f_b.liga" + k="20" /> + <hkern g1="b,thorn" + g2="f_h.liga" + k="20" /> + <hkern g1="b,thorn" + g2="f_f_h.liga" + k="20" /> + <hkern g1="b,thorn" + g2="f_j.liga" + k="20" /> + <hkern g1="b,thorn" + g2="f_f_j.liga" + k="20" /> + <hkern g1="b,thorn" + g2="f_k.liga" + k="20" /> + <hkern g1="b,thorn" + g2="f_f_k.liga" + k="20" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="e,eacute,eogonek" + k="18" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="o,oacute,oslash,oe" + k="24" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="24" /> + <hkern g1="c,ccedilla,cacute,ccircumflex,cdotaccent,ccaron" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="18" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="T,uni0162,Tcaron,Tbar" + k="14" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="v" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="x" + k="30" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="t,uni0163,tcaron,tbar" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="uniFB03" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="uniFB00" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="uniFB04" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="f_b.liga" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="f_f_b.liga" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="f_h.liga" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="f_f_h.liga" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="f_j.liga" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="f_f_j.liga" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="f_k.liga" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="f_f_k.liga" + k="20" /> + <hkern g1="e,ae,egrave,eacute,ecircumflex,edieresis,emacron,ebreve,edotaccent,eogonek,ecaron,oe,aeacute" + g2="f,uniFB01,uniFB02" + k="15" /> + <hkern g1="f" + g2="comma,quotesinglbase,quotedblbase" + k="59" /> + <hkern g1="f" + g2="period,ellipsis" + k="59" /> + <hkern g1="f" + g2="c,ccedilla" + k="5" /> + <hkern g1="f" + g2="e,eacute,eogonek" + k="16" /> + <hkern g1="f" + g2="o,oacute,oslash,oe" + k="20" /> + <hkern g1="f" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="20" /> + <hkern g1="f" + g2="d,dcaron,dcroat" + k="5" /> + <hkern g1="f" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="16" /> + <hkern g1="f" + g2="g,uni0123" + k="5" /> + <hkern g1="f" + g2="s,scedilla,uni0219" + k="3" /> + <hkern g1="h,hcircumflex,hbar" + g2="t,uni0163,tcaron,tbar" + k="20" /> + <hkern g1="k,uni0137,kgreenlandic" + g2="c,ccedilla" + k="37" /> + <hkern g1="k,uni0137,kgreenlandic" + g2="e,eacute,eogonek" + k="40" /> + <hkern g1="k,uni0137,kgreenlandic" + g2="o,oacute,oslash,oe" + k="38" /> + <hkern g1="k,uni0137,kgreenlandic" + g2="a,aacute,ae,aogonek,aeacute" + k="22" /> + <hkern g1="k,uni0137,kgreenlandic" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="22" /> + <hkern g1="k,uni0137,kgreenlandic" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="38" /> + <hkern g1="k,uni0137,kgreenlandic" + g2="ccircumflex,cdotaccent,ccaron" + k="37" /> + <hkern g1="k,uni0137,kgreenlandic" + g2="d,dcaron,dcroat" + k="47" /> + <hkern g1="k,uni0137,kgreenlandic" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="40" /> + <hkern g1="k,uni0137,kgreenlandic" + g2="g,uni0123" + k="38" /> + <hkern g1="k,uni0137,kgreenlandic" + g2="gcircumflex,gbreve,gdotaccent" + k="38" /> + <hkern g1="m" + g2="f,uniFB01,uniFB02" + k="15" /> + <hkern g1="n,ntilde,nacute,ncaron,napostrophe" + g2="v" + k="28" /> + <hkern g1="n,ntilde,nacute,ncaron,napostrophe" + g2="t,uni0163,tcaron,tbar" + k="20" /> + <hkern g1="n,ntilde,nacute,ncaron,napostrophe" + g2="f,uniFB01,uniFB02" + k="15" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="y" + k="30" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="yacute,ydieresis,ycircumflex,ygrave" + k="30" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="v" + k="30" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="24" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="x" + k="40" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="t,uni0163,tcaron,tbar" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="z" + k="18" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="zacute,zdotaccent,zcaron" + k="18" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="uniFB03" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="uniFB00" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="uniFB04" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="f_b.liga" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="f_f_b.liga" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="f_h.liga" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="f_f_h.liga" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="f_j.liga" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="f_f_j.liga" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="f_k.liga" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="f_f_k.liga" + k="20" /> + <hkern g1="o,ograve,oacute,ocircumflex,otilde,odieresis,oslash,omacron,obreve,ohungarumlaut,oslashacute" + g2="f,uniFB01,uniFB02" + k="15" /> + <hkern g1="p" + g2="t,uni0163,tcaron,tbar" + k="20" /> + <hkern g1="p" + g2="f,uniFB01,uniFB02" + k="15" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="comma,quotesinglbase,quotedblbase" + k="30" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="period,ellipsis" + k="30" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="c,ccedilla" + k="5" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="e,eacute,eogonek" + k="13" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="o,oacute,oslash,oe" + k="8" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="a,aacute,ae,aogonek,aeacute" + k="21" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="21" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="8" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="d,dcaron,dcroat" + k="6" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="13" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="g,uni0123" + k="13" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="q" + k="6" /> + <hkern g1="r,racute,uni0157,rcaron" + g2="gcircumflex,gbreve,gdotaccent" + k="13" /> + <hkern g1="s,sacute,scircumflex,scedilla,scaron,uni0219" + g2="v" + k="3" /> + <hkern g1="t,uni0163,tbar" + g2="c,ccedilla" + k="3" /> + <hkern g1="t,uni0163,tbar" + g2="e,eacute,eogonek" + k="11" /> + <hkern g1="t,uni0163,tbar" + g2="o,oacute,oslash,oe" + k="5" /> + <hkern g1="t,uni0163,tbar" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="5" /> + <hkern g1="t,uni0163,tbar" + g2="d,dcaron,dcroat" + k="3" /> + <hkern g1="t,uni0163,tbar" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="11" /> + <hkern g1="t,uni0163,tbar" + g2="g,uni0123" + k="3" /> + <hkern g1="t,uni0163,tbar" + g2="q" + k="3" /> + <hkern g1="v" + g2="comma,quotesinglbase,quotedblbase" + k="53" /> + <hkern g1="v" + g2="period,ellipsis" + k="53" /> + <hkern g1="v" + g2="e,eacute,eogonek" + k="21" /> + <hkern g1="v" + g2="o,oacute,oslash,oe" + k="21" /> + <hkern g1="v" + g2="a,aacute,ae,aogonek,aeacute" + k="24" /> + <hkern g1="v" + g2="agrave,acircumflex,atilde,adieresis,aring,amacron,abreve" + k="24" /> + <hkern g1="v" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="21" /> + <hkern g1="v" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="21" /> + <hkern g1="v" + g2="g,uni0123" + k="16" /> + <hkern g1="v" + g2="gcircumflex,gbreve,gdotaccent" + k="16" /> + <hkern g1="w,wcircumflex,wgrave,wacute,wdieresis" + g2="e,eacute,eogonek" + k="6" /> + <hkern g1="w,wcircumflex,wgrave,wacute,wdieresis" + g2="o,oacute,oslash,oe" + k="24" /> + <hkern g1="w,wcircumflex,wgrave,wacute,wdieresis" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="24" /> + <hkern g1="w,wcircumflex,wgrave,wacute,wdieresis" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="6" /> + <hkern g1="w,wcircumflex,wgrave,wacute,wdieresis" + g2="q" + k="24" /> + <hkern g1="x" + g2="c,ccedilla" + k="53" /> + <hkern g1="x" + g2="e,eacute,eogonek" + k="53" /> + <hkern g1="x" + g2="o,oacute,oslash,oe" + k="53" /> + <hkern g1="x" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="53" /> + <hkern g1="x" + g2="ccircumflex,cdotaccent,ccaron" + k="53" /> + <hkern g1="x" + g2="d,dcaron,dcroat" + k="53" /> + <hkern g1="x" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="53" /> + <hkern g1="x" + g2="g,uni0123" + k="46" /> + <hkern g1="x" + g2="u,uacute,uogonek" + k="28" /> + <hkern g1="x" + g2="ugrave,ucircumflex,udieresis,utilde,umacron,ubreve,uring,uhungarumlaut" + k="11" /> + <hkern g1="x" + g2="w,wcircumflex,wgrave,wacute,wdieresis" + k="11" /> + <hkern g1="x" + g2="t,uni0163,tcaron,tbar" + k="28" /> + <hkern g1="x" + g2="gcircumflex,gbreve,gdotaccent" + k="46" /> + <hkern g1="x" + g2="s,scedilla,uni0219" + k="16" /> + <hkern g1="x" + g2="sacute,scircumflex,scaron" + k="16" /> + <hkern g1="x" + g2="f,uniFB01,uniFB02" + k="16" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="comma,quotesinglbase,quotedblbase" + k="53" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="period,ellipsis" + k="53" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="e,eacute,eogonek" + k="21" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="o,oacute,oslash,oe" + k="18" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="18" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="d,dcaron,dcroat" + k="3" /> + <hkern g1="z,zacute,zdotaccent,zcaron" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="21" /> + <hkern g1="quoteleft,quotedblleft" + g2="A,Agrave,Aacute,Acircumflex,Atilde,Adieresis,Aring,AE,Amacron,Abreve,Aogonek,AEacute" + k="50" /> + <hkern g1="quoteright,quotedblright" + g2="comma,quotesinglbase,quotedblbase" + k="77" /> + <hkern g1="quoteright,quotedblright" + g2="period,ellipsis" + k="77" /> + <hkern g1="quoteright,quotedblright" + g2="s,scedilla,uni0219" + k="56" /> + <hkern g1="exclamdown" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="55" /> + <hkern g1="questiondown" + g2="Y,Yacute,Ycircumflex,Ydieresis,Ygrave" + k="90" /> + <hkern g1="uni0410,uni041B" + g2="quoteright,quotedblright" + k="40" /> + <hkern g1="uni0410,uni041B" + g2="uni0401" + k="25" /> + <hkern g1="uni0410,uni041B" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="20" /> + <hkern g1="uni0410,uni041B" + g2="uni040F" + k="15" /> + <hkern g1="uni0410,uni041B" + g2="uni0415" + k="25" /> + <hkern g1="uni0410,uni041B" + g2="uni0419" + k="20" /> + <hkern g1="uni0410,uni041B" + g2="uni0418" + k="20" /> + <hkern g1="uni0410,uni041B" + g2="uni0424" + k="30" /> + <hkern g1="uni0410,uni041B" + g2="uni0426" + k="30" /> + <hkern g1="uni0410,uni041B" + g2="uni0427,uni04B6" + k="65" /> + <hkern g1="uni0410,uni041B" + g2="uni0442" + k="51" /> + <hkern g1="uni0410,uni041B" + g2="uni0447,uni04B7" + k="71" /> + <hkern g1="uni0410,uni041B" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="20" /> + <hkern g1="uni0410,uni041B" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="25" /> + <hkern g1="uni0410,uni041B" + g2="uni0402,uni040B,uni0422" + k="65" /> + <hkern g1="uni0410,uni041B" + g2="uni04AE,uni04B0" + k="47" /> + <hkern g1="uni0410,uni041B" + g2="uni0462" + k="60" /> + <hkern g1="uni0410,uni041B" + g2="uni0474" + k="80" /> + <hkern g1="uni0410,uni041B" + g2="uni042A" + k="30" /> + <hkern g1="uni0410,uni041B" + g2="uni0405" + k="20" /> + <hkern g1="uni0410,uni041B" + g2="uni0428" + k="15" /> + <hkern g1="uni0410,uni041B" + g2="uni0429" + k="15" /> + <hkern g1="uni0411" + g2="uni0427,uni04B6" + k="49" /> + <hkern g1="uni0411" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="30" /> + <hkern g1="uni0411" + g2="uni0402,uni040B,uni0422" + k="60" /> + <hkern g1="uni0411" + g2="uni04AE,uni04B0" + k="49" /> + <hkern g1="uni0411" + g2="uni0416,uni0496" + k="23" /> + <hkern g1="uni0411" + g2="uni040E,uni0423,uni04EE" + k="25" /> + <hkern g1="uni0411" + g2="uni0425,uni04B2" + k="30" /> + <hkern g1="uni0411" + g2="uni0409,uni0410,uni041B" + k="10" /> + <hkern g1="uni0412" + g2="uni0402,uni040B,uni0422" + k="30" /> + <hkern g1="uni0412" + g2="uni0416,uni0496" + k="25" /> + <hkern g1="uni0412" + g2="uni0425,uni04B2" + k="25" /> + <hkern g1="uni0412" + g2="uni0409,uni0410,uni041B" + k="20" /> + <hkern g1="uni0414" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="42" /> + <hkern g1="uni0414" + g2="uni0427,uni04B6" + k="100" /> + <hkern g1="uni0414" + g2="uni0402,uni040B,uni0422" + k="110" /> + <hkern g1="uni0414" + g2="uni040E,uni0423,uni04EE" + k="30" /> + <hkern g1="uni0401,uni0415" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="10" /> + <hkern g1="uni0417" + g2="uni0427,uni04B6" + k="20" /> + <hkern g1="uni0417" + g2="uni0402,uni040B,uni0422" + k="30" /> + <hkern g1="uni0417" + g2="uni04AE,uni04B0" + k="36" /> + <hkern g1="uni0417" + g2="uni0416,uni0496" + k="40" /> + <hkern g1="uni0417" + g2="uni0425,uni04B2" + k="40" /> + <hkern g1="uni0417" + g2="uni0409,uni0410,uni041B" + k="20" /> + <hkern g1="uni0418" + g2="uni0416,uni0496" + k="20" /> + <hkern g1="uni0419" + g2="uni0416,uni0496" + k="20" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni0427,uni04B6" + k="15" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni0402,uni040B,uni0422" + k="32" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni04AE,uni04B0" + k="48" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni0474" + k="30" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni042A" + k="20" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni0416,uni0496" + k="50" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni040E,uni0423,uni04EE" + k="20" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni0425,uni04B2" + k="40" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni0409,uni0410,uni041B" + k="20" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni0414" + k="42" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni042F" + k="20" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni0434,uni043B,uni0459,uni0475" + k="30" /> + <hkern g1="uni041E,uni042E,uni0472,uni04D8,uni04E8" + g2="uni042D" + k="30" /> + <hkern g1="uni041F" + g2="uni0402,uni040B,uni0422" + k="25" /> + <hkern g1="uni0420" + g2="comma,quotesinglbase,quotedblbase" + k="125" /> + <hkern g1="uni0420" + g2="period,ellipsis" + k="125" /> + <hkern g1="uni0420" + g2="uni0402,uni040B,uni0422" + k="20" /> + <hkern g1="uni0420" + g2="uni0416,uni0496" + k="48" /> + <hkern g1="uni0420" + g2="uni040E,uni0423,uni04EE" + k="17" /> + <hkern g1="uni0420" + g2="uni0425,uni04B2" + k="54" /> + <hkern g1="uni0420" + g2="uni0409,uni0410,uni041B" + k="50" /> + <hkern g1="uni0420" + g2="uni0434,uni043B,uni0459,uni0475" + k="70" /> + <hkern g1="uni0421" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="37" /> + <hkern g1="uni0421" + g2="uni0447,uni04B7" + k="68" /> + <hkern g1="uni0421" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="22" /> + <hkern g1="uni0422" + g2="comma,quotesinglbase,quotedblbase" + k="62" /> + <hkern g1="uni0422" + g2="period,ellipsis" + k="62" /> + <hkern g1="uni0422" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="45" /> + <hkern g1="uni0422" + g2="uni0447,uni04B7" + k="71" /> + <hkern g1="uni0422" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="54" /> + <hkern g1="uni0422" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="54" /> + <hkern g1="uni0422" + g2="uni0409,uni0410,uni041B" + k="65" /> + <hkern g1="uni0422" + g2="uni0434,uni043B,uni0459,uni0475" + k="88" /> + <hkern g1="uni0422" + g2="uni0445,uni04B3" + k="28" /> + <hkern g1="uni0422" + g2="uni0432,uni0433,uni0437,uni0438,uni0439,uni043A,uni043C,uni043D,uni043F,uni0440,uni0446,uni0448,uni0449,uni044B,uni044C,uni044D,uni044E,uni0453,uni045A,uni045C,uni045F,uni0491,uni0493,uni049B,uni04A3,uni04E3" + k="56" /> + <hkern g1="uni0422" + g2="uni0436,uni0497" + k="60" /> + <hkern g1="uni0424" + g2="comma,quotesinglbase,quotedblbase" + k="125" /> + <hkern g1="uni0424" + g2="period,ellipsis" + k="85" /> + <hkern g1="uni0424" + g2="uni0402,uni040B,uni0422" + k="51" /> + <hkern g1="uni0424" + g2="uni04AE,uni04B0" + k="48" /> + <hkern g1="uni0424" + g2="uni0416,uni0496" + k="80" /> + <hkern g1="uni0424" + g2="uni040E,uni0423,uni04EE" + k="36" /> + <hkern g1="uni0424" + g2="uni0425,uni04B2" + k="57" /> + <hkern g1="uni0424" + g2="uni0409,uni0410,uni041B" + k="30" /> + <hkern g1="uni0424" + g2="uni0434,uni043B,uni0459,uni0475" + k="51" /> + <hkern g1="uni0425,uni04B2" + g2="hyphen" + k="86" /> + <hkern g1="uni0425,uni04B2" + g2="uni0401" + k="31" /> + <hkern g1="uni0425,uni04B2" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="70" /> + <hkern g1="uni0425,uni04B2" + g2="uni040F" + k="26" /> + <hkern g1="uni0425,uni04B2" + g2="uni0415" + k="34" /> + <hkern g1="uni0425,uni04B2" + g2="uni0419" + k="20" /> + <hkern g1="uni0425,uni04B2" + g2="uni0418" + k="10" /> + <hkern g1="uni0425,uni04B2" + g2="uni0424" + k="62" /> + <hkern g1="uni0425,uni04B2" + g2="uni0426" + k="20" /> + <hkern g1="uni0425,uni04B2" + g2="uni0427,uni04B6" + k="41" /> + <hkern g1="uni0425,uni04B2" + g2="uni0442" + k="55" /> + <hkern g1="uni0425,uni04B2" + g2="uni0447,uni04B7" + k="63" /> + <hkern g1="uni0425,uni04B2" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="40" /> + <hkern g1="uni0425,uni04B2" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="61" /> + <hkern g1="uni0425,uni04B2" + g2="uni0474" + k="20" /> + <hkern g1="uni0425,uni04B2" + g2="uni0405" + k="30" /> + <hkern g1="uni0425,uni04B2" + g2="uni0428" + k="20" /> + <hkern g1="uni0425,uni04B2" + g2="uni0429" + k="20" /> + <hkern g1="uni0425,uni04B2" + g2="uni0414" + k="20" /> + <hkern g1="uni0425,uni04B2" + g2="uni0430" + k="20" /> + <hkern g1="uni0425,uni04B2" + g2="uni0431" + k="20" /> + <hkern g1="uni0425,uni04B2" + g2="uni0492" + k="50" /> + <hkern g1="uni0426,uni0429,uni04A2,uni04B6" + g2="uni0401" + k="15" /> + <hkern g1="uni0426,uni0429,uni04A2,uni04B6" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="10" /> + <hkern g1="uni0426,uni0429,uni04A2,uni04B6" + g2="uni0415" + k="20" /> + <hkern g1="uni0426,uni0429,uni04A2,uni04B6" + g2="uni0424" + k="30" /> + <hkern g1="uni0426,uni0429,uni04A2,uni04B6" + g2="uni0427,uni04B6" + k="30" /> + <hkern g1="uni0426,uni0429,uni04A2,uni04B6" + g2="uni0402,uni040B,uni0422" + k="40" /> + <hkern g1="uni0426,uni0429,uni04A2,uni04B6" + g2="uni0474" + k="40" /> + <hkern g1="uni0426,uni0429,uni04A2,uni04B6" + g2="uni0408" + k="-20" /> + <hkern g1="uni0428" + g2="uni0409,uni0410,uni041B" + k="15" /> + <hkern g1="uni042D" + g2="uni0427,uni04B6" + k="26" /> + <hkern g1="uni042D" + g2="uni0402,uni040B,uni0422" + k="50" /> + <hkern g1="uni042D" + g2="uni0416,uni0496" + k="52" /> + <hkern g1="uni042D" + g2="uni040E,uni0423,uni04EE" + k="26" /> + <hkern g1="uni042D" + g2="uni0425,uni04B2" + k="34" /> + <hkern g1="uni042D" + g2="uni0409,uni0410,uni041B" + k="20" /> + <hkern g1="uni042D" + g2="uni0434,uni043B,uni0459,uni0475" + k="30" /> + <hkern g1="uni0402" + g2="comma,quotesinglbase,quotedblbase" + k="62" /> + <hkern g1="uni0402" + g2="period,ellipsis" + k="62" /> + <hkern g1="uni0402" + g2="uni0427,uni04B6" + k="48" /> + <hkern g1="uni0402" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="30" /> + <hkern g1="uni0402" + g2="uni0402,uni040B,uni0422" + k="86" /> + <hkern g1="uni0402" + g2="uni04AE,uni04B0" + k="61" /> + <hkern g1="uni0402" + g2="uni0416,uni0496" + k="30" /> + <hkern g1="uni0402" + g2="uni040E,uni0423,uni04EE" + k="25" /> + <hkern g1="uni0402" + g2="uni0425,uni04B2" + k="40" /> + <hkern g1="uni0402" + g2="uni0445,uni04B3" + k="35" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="comma,quotesinglbase,quotedblbase" + k="130" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="period,ellipsis" + k="130" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="hyphen" + k="136" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0401" + k="35" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="45" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0415" + k="35" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0424" + k="57" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0442" + k="68" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0447,uni04B7" + k="74" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="85" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="65" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0405" + k="10" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0409,uni0410,uni041B" + k="80" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0414" + k="120" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni042F" + k="40" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0434,uni043B,uni0459,uni0475" + k="119" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0445,uni04B3" + k="71" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0432,uni0433,uni0437,uni0438,uni0439,uni043A,uni043C,uni043D,uni043F,uni0440,uni0446,uni0448,uni0449,uni044B,uni044C,uni044D,uni044E,uni0453,uni045A,uni045C,uni045F,uni0491,uni0493,uni049B,uni04A3,uni04E3" + k="65" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0436,uni0497" + k="39" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0430" + k="59" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0431" + k="68" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0492" + k="150" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni041F" + k="28" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni044F" + k="85" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0455" + k="74" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0403" + k="28" /> + <hkern g1="uni0403,uni0413,uni0490" + g2="uni0413" + k="10" /> + <hkern g1="uni0404" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="15" /> + <hkern g1="uni0405" + g2="uni0427,uni04B6" + k="30" /> + <hkern g1="uni0405" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="30" /> + <hkern g1="uni0405" + g2="uni0402,uni040B,uni0422" + k="30" /> + <hkern g1="uni0405" + g2="uni0416,uni0496" + k="30" /> + <hkern g1="uni0405" + g2="uni0409,uni0410,uni041B" + k="10" /> + <hkern g1="uni0405" + g2="uni0445,uni04B3" + k="20" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="10" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0424" + k="20" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0427,uni04B6" + k="40" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="25" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0402,uni040B,uni0422" + k="120" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni04AE,uni04B0" + k="48" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0462" + k="49" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0474" + k="65" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni042A" + k="20" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0405" + k="30" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0416,uni0496" + k="50" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni040E,uni0423,uni04EE" + k="35" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0425,uni04B2" + k="60" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0409,uni0410,uni041B" + k="10" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0414" + k="20" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni042F" + k="30" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni042D" + k="20" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C,uni0462" + g2="uni0417" + k="30" /> + <hkern g1="uni040B,uni04BA" + g2="comma,quotesinglbase,quotedblbase" + k="62" /> + <hkern g1="uni040B,uni04BA" + g2="period,ellipsis" + k="62" /> + <hkern g1="uni040B,uni04BA" + g2="hyphen" + k="6" /> + <hkern g1="uni040B,uni04BA" + g2="uni0427,uni04B6" + k="65" /> + <hkern g1="uni040B,uni04BA" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="40" /> + <hkern g1="uni040B,uni04BA" + g2="uni0402,uni040B,uni0422" + k="86" /> + <hkern g1="uni040B,uni04BA" + g2="uni04AE,uni04B0" + k="60" /> + <hkern g1="uni040B,uni04BA" + g2="uni0474" + k="61" /> + <hkern g1="uni040B,uni04BA" + g2="uni0405" + k="20" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0401" + k="37" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="55" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni040F" + k="20" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0415" + k="37" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0419" + k="20" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0418" + k="20" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0424" + k="80" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0426" + k="30" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0427,uni04B6" + k="32" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0442" + k="60" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0447,uni04B7" + k="80" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="55" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="35" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0462" + k="30" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0405" + k="20" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0428" + k="20" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0431" + k="50" /> + <hkern g1="uni040C,uni0416,uni041A,uni0496,uni049A" + g2="uni0492" + k="40" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="comma,quotesinglbase,quotedblbase" + k="55" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="period,ellipsis" + k="65" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="hyphen" + k="86" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0401" + k="34" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="40" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0415" + k="34" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0424" + k="37" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0442" + k="50" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0447,uni04B7" + k="50" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="70" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="60" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0462" + k="36" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni042A" + k="-20" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0405" + k="20" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0409,uni0410,uni041B" + k="70" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0414" + k="100" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni042F" + k="35" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0434,uni043B,uni0459,uni0475" + k="100" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0445,uni04B3" + k="60" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0432,uni0433,uni0437,uni0438,uni0439,uni043A,uni043C,uni043D,uni043F,uni0440,uni0446,uni0448,uni0449,uni044B,uni044C,uni044D,uni044E,uni0453,uni045A,uni045C,uni045F,uni0491,uni0493,uni049B,uni04A3,uni04E3" + k="60" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0436,uni0497" + k="50" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0430" + k="60" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0431" + k="50" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0492" + k="50" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni041F" + k="25" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni044F" + k="70" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0455" + k="50" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0403" + k="31" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0413" + k="26" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni0490" + k="26" /> + <hkern g1="uni040E,uni0423,uni04EE" + g2="uni044A" + k="20" /> + <hkern g1="uni0430" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="26" /> + <hkern g1="uni0430" + g2="uni0445,uni04B3" + k="20" /> + <hkern g1="uni0431,uni043E,uni0440,uni0444,uni044D,uni044E,uni0473,uni04D9,uni04E9,uni0431.aalt" + g2="uni0442" + k="30" /> + <hkern g1="uni0431,uni043E,uni0440,uni0444,uni044D,uni044E,uni0473,uni04D9,uni04E9,uni0431.aalt" + g2="uni0447,uni04B7" + k="21" /> + <hkern g1="uni0431,uni043E,uni0440,uni0444,uni044D,uni044E,uni0473,uni04D9,uni04E9,uni0431.aalt" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="30" /> + <hkern g1="uni0431,uni043E,uni0440,uni0444,uni044D,uni044E,uni0473,uni04D9,uni04E9,uni0431.aalt" + g2="uni0434,uni043B,uni0459,uni0475" + k="20" /> + <hkern g1="uni0431,uni043E,uni0440,uni0444,uni044D,uni044E,uni0473,uni04D9,uni04E9,uni0431.aalt" + g2="uni0445,uni04B3" + k="45" /> + <hkern g1="uni0431,uni043E,uni0440,uni0444,uni044D,uni044E,uni0473,uni04D9,uni04E9,uni0431.aalt" + g2="uni0436,uni0497" + k="45" /> + <hkern g1="uni0431,uni043E,uni0440,uni0444,uni044D,uni044E,uni0473,uni04D9,uni04E9,uni0431.aalt" + g2="uni044F" + k="10" /> + <hkern g1="uni0431,uni043E,uni0440,uni0444,uni044D,uni044E,uni0473,uni04D9,uni04E9,uni0431.aalt" + g2="uni044A" + k="10" /> + <hkern g1="uni0432" + g2="uni0434,uni043B,uni0459,uni0475" + k="20" /> + <hkern g1="uni0432" + g2="uni0445,uni04B3" + k="20" /> + <hkern g1="uni0432" + g2="uni0436,uni0497" + k="26" /> + <hkern g1="uni0434" + g2="uni0447,uni04B7" + k="80" /> + <hkern g1="uni0434" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="30" /> + <hkern g1="uni0434" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="53" /> + <hkern g1="uni0435,uni0451" + g2="uni0442" + k="31" /> + <hkern g1="uni0435,uni0451" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="23" /> + <hkern g1="uni0435,uni0451" + g2="uni04AE,uni04B0" + k="48" /> + <hkern g1="uni0435,uni0451" + g2="uni0434,uni043B,uni0459,uni0475" + k="30" /> + <hkern g1="uni0435,uni0451" + g2="uni0445,uni04B3" + k="30" /> + <hkern g1="uni0435,uni0451" + g2="uni0436,uni0497" + k="34" /> + <hkern g1="uni0436,uni043A,uni0497,uni049B" + g2="hyphen" + k="86" /> + <hkern g1="uni0436,uni043A,uni0497,uni049B" + g2="uni0447,uni04B7" + k="49" /> + <hkern g1="uni0436,uni043A,uni0497,uni049B" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="45" /> + <hkern g1="uni0436,uni043A,uni0497,uni049B" + g2="uni0432,uni0433,uni0437,uni0438,uni0439,uni043A,uni043C,uni043D,uni043F,uni0440,uni0446,uni0448,uni0449,uni044B,uni044C,uni044D,uni044E,uni0453,uni045A,uni045C,uni045F,uni0491,uni0493,uni049B,uni04A3,uni04E3" + k="40" /> + <hkern g1="uni0436,uni043A,uni0497,uni049B" + g2="uni0430" + k="20" /> + <hkern g1="uni0436,uni043A,uni0497,uni049B" + g2="uni0431" + k="20" /> + <hkern g1="uni0436,uni043A,uni0497,uni049B" + g2="uni0455" + k="20" /> + <hkern g1="uni0437" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="10" /> + <hkern g1="uni0437" + g2="uni0434,uni043B,uni0459,uni0475" + k="5" /> + <hkern g1="uni0437" + g2="uni0445,uni04B3" + k="15" /> + <hkern g1="uni0437" + g2="uni0436,uni0497" + k="20" /> + <hkern g1="uni043B" + g2="uni0447,uni04B7" + k="71" /> + <hkern g1="uni043B" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="20" /> + <hkern g1="uni043B" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="45" /> + <hkern g1="uni043F" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="11" /> + <hkern g1="uni0442" + g2="period,ellipsis" + k="92" /> + <hkern g1="uni0442" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="30" /> + <hkern g1="uni0442" + g2="uni0434,uni043B,uni0459,uni0475" + k="40" /> + <hkern g1="uni0442" + g2="uni0432,uni0433,uni0437,uni0438,uni0439,uni043A,uni043C,uni043D,uni043F,uni0440,uni0446,uni0448,uni0449,uni044B,uni044C,uni044D,uni044E,uni0453,uni045A,uni045C,uni045F,uni0491,uni0493,uni049B,uni04A3,uni04E3" + k="50" /> + <hkern g1="uni0445,uni04B3" + g2="hyphen" + k="61" /> + <hkern g1="uni0445,uni04B3" + g2="uni0447,uni04B7" + k="30" /> + <hkern g1="uni0445,uni04B3" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="50" /> + <hkern g1="uni0445,uni04B3" + g2="uni042A" + k="50" /> + <hkern g1="uni0445,uni04B3" + g2="uni0432,uni0433,uni0437,uni0438,uni0439,uni043A,uni043C,uni043D,uni043F,uni0440,uni0446,uni0448,uni0449,uni044B,uni044C,uni044D,uni044E,uni0453,uni045A,uni045C,uni045F,uni0491,uni0493,uni049B,uni04A3,uni04E3" + k="10" /> + <hkern g1="uni0445,uni04B3" + g2="uni0430" + k="30" /> + <hkern g1="uni0445,uni04B3" + g2="uni0431" + k="21" /> + <hkern g1="uni0445,uni04B3" + g2="uni0455" + k="20" /> + <hkern g1="uni0446,uni0449,uni04A3,uni04B7" + g2="uni0447,uni04B7" + k="20" /> + <hkern g1="uni0446,uni0449,uni04A3,uni04B7" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="20" /> + <hkern g1="uni0446,uni0449,uni04A3,uni04B7" + g2="uni0431" + k="20" /> + <hkern g1="uni0448" + g2="uni0434,uni043B,uni0459,uni0475" + k="20" /> + <hkern g1="uni0448" + g2="uni0436,uni0497" + k="20" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A,uni0463" + g2="uni0442" + k="79" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A,uni0463" + g2="uni0447,uni04B7" + k="20" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A,uni0463" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="50" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A,uni0463" + g2="uni0462" + k="51" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A,uni0463" + g2="uni0445,uni04B3" + k="20" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A,uni0463" + g2="uni0436,uni0497" + k="40" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A,uni0463" + g2="uni044A" + k="40" /> + <hkern g1="uni0452,uni045B,uni04BB" + g2="uni0427,uni04B6" + k="48" /> + <hkern g1="uni0452,uni045B,uni04BB" + g2="uni0442" + k="25" /> + <hkern g1="uni0452,uni045B,uni04BB" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="30" /> + <hkern g1="uni0452,uni045B,uni04BB" + g2="uni0462" + k="48" /> + <hkern g1="uni0452,uni045B,uni04BB" + g2="uni0474" + k="50" /> + <hkern g1="uni0433,uni0453,uni0491" + g2="period,ellipsis" + k="72" /> + <hkern g1="uni0433,uni0453,uni0491" + g2="hyphen" + k="55" /> + <hkern g1="uni0433,uni0453,uni0491" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="10" /> + <hkern g1="uni0433,uni0453,uni0491" + g2="uni0434,uni043B,uni0459,uni0475" + k="45" /> + <hkern g1="uni0433,uni0453,uni0491" + g2="uni0432,uni0433,uni0437,uni0438,uni0439,uni043A,uni043C,uni043D,uni043F,uni0440,uni0446,uni0448,uni0449,uni044B,uni044C,uni044D,uni044E,uni0453,uni045A,uni045C,uni045F,uni0491,uni0493,uni049B,uni04A3,uni04E3" + k="30" /> + <hkern g1="uni0441,uni0454" + g2="hyphen" + k="74" /> + <hkern g1="uni0441,uni0454" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="20" /> + <hkern g1="uni0441,uni0454" + g2="uni0474" + k="37" /> + <hkern g1="uni0441,uni0454" + g2="uni0431" + k="15" /> + <hkern g1="uni0455" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="15" /> + <hkern g1="uni0455" + g2="uni0434,uni043B,uni0459,uni0475" + k="10" /> + <hkern g1="uni0455" + g2="uni0445,uni04B3" + k="20" /> + <hkern g1="uni045C" + g2="uni0447,uni04B7" + k="49" /> + <hkern g1="uni045C" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="40" /> + <hkern g1="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + g2="comma,quotesinglbase,quotedblbase" + k="55" /> + <hkern g1="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + g2="period,ellipsis" + k="65" /> + <hkern g1="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + g2="hyphen" + k="61" /> + <hkern g1="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="25" /> + <hkern g1="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + g2="uni0434,uni043B,uni0459,uni0475" + k="60" /> + <hkern g1="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + g2="uni0432,uni0433,uni0437,uni0438,uni0439,uni043A,uni043C,uni043D,uni043F,uni0440,uni0446,uni0448,uni0449,uni044B,uni044C,uni044D,uni044E,uni0453,uni045A,uni045C,uni045F,uni0491,uni0493,uni049B,uni04A3,uni04E3" + k="50" /> + <hkern g1="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + g2="uni0430" + k="25" /> + <hkern g1="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + g2="uni0431" + k="20" /> + <hkern g1="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + g2="uni044F" + k="20" /> + <hkern g1="uni040F" + g2="uni0409,uni0410,uni041B" + k="15" /> + <hkern g1="uni0474" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="30" /> + <hkern g1="uni0474" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="60" /> + <hkern g1="uni0474" + g2="uni0443,uni045E,uni04AF,uni04B1,uni04EF" + k="-10" /> + <hkern g1="uni0474" + g2="uni0409,uni0410,uni041B" + k="80" /> + <hkern g1="uni0474" + g2="uni0434,uni043B,uni0459,uni0475" + k="115" /> + <hkern g1="uni0474" + g2="uni0432,uni0433,uni0437,uni0438,uni0439,uni043A,uni043C,uni043D,uni043F,uni0440,uni0446,uni0448,uni0449,uni044B,uni044C,uni044D,uni044E,uni0453,uni045A,uni045C,uni045F,uni0491,uni0493,uni049B,uni04A3,uni04E3" + k="35" /> + <hkern g1="uni045F" + g2="uni04AE,uni04B0" + k="61" /> + <hkern g1="uni045F" + g2="uni0436,uni0497" + k="31" /> + <hkern g1="uni0475" + g2="uni0434,uni043B,uni0459,uni0475" + k="80" /> + <hkern g1="uni0475" + g2="uni0436,uni0497" + k="20" /> + <hkern g1="uniFB00" + g2="c,ccedilla" + k="20" /> + <hkern g1="uniFB00" + g2="e,eacute,eogonek" + k="20" /> + <hkern g1="uniFB00" + g2="o,oacute,oslash,oe" + k="20" /> + <hkern g1="uniFB00" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="20" /> + <hkern g1="uniFB00" + g2="ccircumflex,cdotaccent,ccaron" + k="20" /> + <hkern g1="uniFB00" + g2="d,dcaron,dcroat" + k="20" /> + <hkern g1="uniFB00" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="20" /> + <hkern g1="f_f_k.liga" + g2="c,ccedilla" + k="40" /> + <hkern g1="f_f_k.liga" + g2="e,eacute,eogonek" + k="40" /> + <hkern g1="f_f_k.liga" + g2="o,oacute,oslash,oe" + k="40" /> + <hkern g1="f_f_k.liga" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="40" /> + <hkern g1="f_f_k.liga" + g2="ccircumflex,cdotaccent,ccaron" + k="40" /> + <hkern g1="f_f_k.liga" + g2="d,dcaron,dcroat" + k="40" /> + <hkern g1="f_f_k.liga" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="40" /> + <hkern g1="f_k.liga" + g2="c,ccedilla" + k="40" /> + <hkern g1="f_k.liga" + g2="e,eacute,eogonek" + k="40" /> + <hkern g1="f_k.liga" + g2="o,oacute,oslash,oe" + k="40" /> + <hkern g1="f_k.liga" + g2="ograve,ocircumflex,otilde,odieresis,omacron,obreve,ohungarumlaut,oslashacute" + k="40" /> + <hkern g1="f_k.liga" + g2="ccircumflex,cdotaccent,ccaron" + k="40" /> + <hkern g1="f_k.liga" + g2="d,dcaron,dcroat" + k="40" /> + <hkern g1="f_k.liga" + g2="egrave,ecircumflex,edieresis,emacron,ebreve,edotaccent,ecaron" + k="40" /> + <hkern g1="uni0492" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="40" /> + <hkern g1="uni0492" + g2="uni0447,uni04B7" + k="20" /> + <hkern g1="uni0492" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="70" /> + <hkern g1="uni0492" + g2="uni0409,uni0410,uni041B" + k="80" /> + <hkern g1="uni0492" + g2="uni0434,uni043B,uni0459,uni0475" + k="110" /> + <hkern g1="uni0492" + g2="uni0445,uni04B3" + k="20" /> + <hkern g1="uni0492" + g2="uni0432,uni0433,uni0437,uni0438,uni0439,uni043A,uni043C,uni043D,uni043F,uni0440,uni0446,uni0448,uni0449,uni044B,uni044C,uni044D,uni044E,uni0453,uni045A,uni045C,uni045F,uni0491,uni0493,uni049B,uni04A3,uni04E3" + k="40" /> + <hkern g1="uni0493" + g2="uni0434,uni043B,uni0459,uni0475" + k="20" /> + <hkern g1="uni04AE,uni04B0" + g2="uni0401" + k="37" /> + <hkern g1="uni04AE,uni04B0" + g2="uni0404,uni041E,uni0421,uni0472,uni04E8" + k="45" /> + <hkern g1="uni04AE,uni04B0" + g2="uni0415" + k="36" /> + <hkern g1="uni04AE,uni04B0" + g2="uni0424" + k="48" /> + <hkern g1="uni04AE,uni04B0" + g2="uni0435,uni043E,uni0441,uni0444,uni0451,uni0454,uni0473,uni04E9,uni0431.aalt" + k="73" /> + <hkern g1="uni04AE,uni04B0" + g2="uni0409,uni0410,uni041B" + k="47" /> + <hkern g1="uni04AE,uni04B0" + g2="uni0414" + k="72" /> + <hkern g1="uni04AE,uni04B0" + g2="uni0434,uni043B,uni0459,uni0475" + k="85" /> + <hkern g1="uni04AE,uni04B0" + g2="uni0455" + k="36" /> + </font> +</defs></svg> diff --git a/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.ttf b/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.ttf new file mode 100644 index 0000000..b64470b Binary files /dev/null and b/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.ttf differ diff --git a/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.woff b/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.woff new file mode 100644 index 0000000..51630aa Binary files /dev/null and b/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.woff differ diff --git a/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.woff2 b/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.woff2 new file mode 100644 index 0000000..4150797 Binary files /dev/null and b/site/css/font/7c9748fba0c14c426a6e934bfa64a7e6.woff2 differ diff --git a/site/css/font/AllerDisplay.ttf b/site/css/font/AllerDisplay.ttf new file mode 100644 index 0000000..9c5a761 Binary files /dev/null and b/site/css/font/AllerDisplay.ttf differ diff --git a/site/css/font/Myriad Pro Bold.ttf b/site/css/font/Myriad Pro Bold.ttf new file mode 100644 index 0000000..a4c78b0 Binary files /dev/null and b/site/css/font/Myriad Pro Bold.ttf differ diff --git a/site/css/font/MyriadPro-Bold.otf b/site/css/font/MyriadPro-Bold.otf new file mode 100644 index 0000000..a967951 Binary files /dev/null and b/site/css/font/MyriadPro-Bold.otf differ diff --git a/site/css/font/NeoSansPro-Black.otf b/site/css/font/NeoSansPro-Black.otf new file mode 100644 index 0000000..7c31429 Binary files /dev/null and b/site/css/font/NeoSansPro-Black.otf differ diff --git a/site/css/font/NeoSansPro-Bold.otf b/site/css/font/NeoSansPro-Bold.otf new file mode 100644 index 0000000..5738fba Binary files /dev/null and b/site/css/font/NeoSansPro-Bold.otf differ diff --git a/site/css/font/NeoSansPro-Light.otf b/site/css/font/NeoSansPro-Light.otf new file mode 100644 index 0000000..026a049 Binary files /dev/null and b/site/css/font/NeoSansPro-Light.otf differ diff --git a/site/css/font/NeoSansPro-Medium.otf b/site/css/font/NeoSansPro-Medium.otf new file mode 100644 index 0000000..ba45bda Binary files /dev/null and b/site/css/font/NeoSansPro-Medium.otf differ diff --git a/site/css/font/NeoSansPro-Regular.otf b/site/css/font/NeoSansPro-Regular.otf new file mode 100644 index 0000000..c1c338a Binary files /dev/null and b/site/css/font/NeoSansPro-Regular.otf differ diff --git a/site/css/font/_notes/dwsync.xml b/site/css/font/_notes/dwsync.xml new file mode 100644 index 0000000..d43b44d --- /dev/null +++ b/site/css/font/_notes/dwsync.xml @@ -0,0 +1,120 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="AllerDisplay.ttf" server="62.244.88.21/fafih_deciday/" local="131541711872182363" remote="131541684600000000" Dst="1" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.eot" server="62.244.88.21/fafih_deciday/" local="131417118540000000" remote="131541757200000000" Dst="1" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.woff" server="62.244.88.21/fafih_deciday/" local="131417118540000000" remote="131541757200000000" Dst="1" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.ttf" server="62.244.88.21/fafih_deciday/" local="131006674800000000" remote="131541757200000000" Dst="1" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.woff2" server="62.244.88.21/fafih_deciday/" local="131417118620000000" remote="131541757200000000" Dst="1" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.svg" server="62.244.88.21/fafih_deciday/" local="131417118560000000" remote="131541757200000000" Dst="1" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.svg" server="62.244.88.21/fafih_deciday/" local="131423452680000000" remote="131541909600000000" Dst="1" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.woff" server="62.244.88.21/fafih_deciday/" local="131423452680000000" remote="131541909600000000" Dst="1" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.ttf" server="62.244.88.21/fafih_deciday/" local="130858296580000000" remote="131541909600000000" Dst="1" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.woff2" server="62.244.88.21/fafih_deciday/" local="131423452680000000" remote="131541909600000000" Dst="1" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.eot" server="62.244.88.21/fafih_deciday/" local="131423452680000000" remote="131541909600000000" Dst="1" /> +<file name="NeoSansPro-Black.otf" server="62.244.88.21/fafih_deciday/" local="131823419630900796" remote="131823355200000000" Dst="2" /> +<file name="NeoSansPro-Bold.otf" server="62.244.88.21/fafih_deciday/" local="131823419630980577" remote="131823355200000000" Dst="2" /> +<file name="NeoSansPro-Light.otf" server="62.244.88.21/fafih_deciday/" local="131823419631070342" remote="131823355200000000" Dst="2" /> +<file name="NeoSansPro-Medium.otf" server="62.244.88.21/fafih_deciday/" local="131823419631149869" remote="131823355200000000" Dst="2" /> +<file name="NeoSansPro-Regular.otf" server="62.244.88.21/fafih_deciday/" local="131823419631229929" remote="131823355200000000" Dst="2" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.eot" server="62.244.88.21/deciday_18/" local="131423452680000000" remote="131823362400000000" Dst="2" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.woff" server="62.244.88.21/deciday_18/" local="131423452680000000" remote="131823362400000000" Dst="2" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.ttf" server="62.244.88.21/deciday_18/" local="130858296580000000" remote="131823362400000000" Dst="2" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.woff2" server="62.244.88.21/deciday_18/" local="131423452680000000" remote="131823362400000000" Dst="2" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.svg" server="62.244.88.21/deciday_18/" local="131423452680000000" remote="131823362400000000" Dst="2" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.eot" server="62.244.88.21/deciday_18/" local="131417118540000000" remote="131823362400000000" Dst="2" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.woff" server="62.244.88.21/deciday_18/" local="131417118540000000" remote="131823362400000000" Dst="2" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.ttf" server="62.244.88.21/deciday_18/" local="131006674800000000" remote="131823362400000000" Dst="2" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.svg" server="62.244.88.21/deciday_18/" local="131417118560000000" remote="131823362400000000" Dst="2" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.woff2" server="62.244.88.21/deciday_18/" local="131417118620000000" remote="131823362400000000" Dst="2" /> +<file name="AllerDisplay.ttf" server="62.244.88.21/deciday_18/" local="131541711872182363" remote="131823362400000000" Dst="2" /> +<file name="NeoSansPro-Black.otf" server="62.244.88.21/deciday_18/" local="131823419630900796" remote="131823362400000000" Dst="2" /> +<file name="NeoSansPro-Bold.otf" server="62.244.88.21/deciday_18/" local="131823419630980577" remote="131823362400000000" Dst="2" /> +<file name="NeoSansPro-Light.otf" server="62.244.88.21/deciday_18/" local="131823419631070342" remote="131823362400000000" Dst="2" /> +<file name="NeoSansPro-Medium.otf" server="62.244.88.21/deciday_18/" local="131823419631149869" remote="131823362400000000" Dst="2" /> +<file name="NeoSansPro-Regular.otf" server="62.244.88.21/deciday_18/" local="131823419631229929" remote="131823362400000000" Dst="2" /> +<file name="Myriad Pro Bold.ttf" server="62.244.88.21/deciday_18/" local="130589588800000000" remote="131824320600000000" Dst="2" /> +<file name="MyriadPro-Bold.otf" server="62.244.88.21/deciday_18/" local="131823532480000000" remote="131824320600000000" Dst="2" /> +<file name="63f7c4ed344e79ed1cf58a1817e6ff0d.eot" server="62.244.88.21/deciday_18/" local="131724095760000000" remote="131824321800000000" Dst="2" /> +<file name="63f7c4ed344e79ed1cf58a1817e6ff0d.woff" server="62.244.88.21/deciday_18/" local="131724095780000000" remote="131824321800000000" Dst="2" /> +<file name="63f7c4ed344e79ed1cf58a1817e6ff0d.ttf" server="62.244.88.21/deciday_18/" local="131005031400000000" remote="131824321800000000" Dst="2" /> +<file name="63f7c4ed344e79ed1cf58a1817e6ff0d.svg" server="62.244.88.21/deciday_18/" local="131724095780000000" remote="131824321800000000" Dst="2" /> +<file name="63f7c4ed344e79ed1cf58a1817e6ff0d.woff2" server="62.244.88.21/deciday_18/" local="131724095780000000" remote="131824321800000000" Dst="2" /> +<file name="65482afbeb61af43c403d0fec1fdb679.eot" server="62.244.88.21/deciday_18/" local="131735256860000000" remote="131824321800000000" Dst="2" /> +<file name="65482afbeb61af43c403d0fec1fdb679.ttf" server="62.244.88.21/deciday_18/" local="131271881520000000" remote="131824321800000000" Dst="2" /> +<file name="65482afbeb61af43c403d0fec1fdb679.woff" server="62.244.88.21/deciday_18/" local="131735256860000000" remote="131824321800000000" Dst="2" /> +<file name="65482afbeb61af43c403d0fec1fdb679.svg" server="62.244.88.21/deciday_18/" local="131735256860000000" remote="131824321800000000" Dst="2" /> +<file name="65482afbeb61af43c403d0fec1fdb679.woff2" server="62.244.88.21/deciday_18/" local="131735256860000000" remote="131824321800000000" Dst="2" /> +<file name="7c9748fba0c14c426a6e934bfa64a7e6.eot" server="62.244.88.21/deciday_18/" local="131765539780000000" remote="131824321800000000" Dst="2" /> +<file name="7c9748fba0c14c426a6e934bfa64a7e6.woff" server="62.244.88.21/deciday_18/" local="131765539800000000" remote="131824321800000000" Dst="2" /> +<file name="7c9748fba0c14c426a6e934bfa64a7e6.ttf" server="62.244.88.21/deciday_18/" local="130865730920000000" remote="131824321800000000" Dst="2" /> +<file name="7c9748fba0c14c426a6e934bfa64a7e6.svg" server="62.244.88.21/deciday_18/" local="131765539800000000" remote="131824321800000000" Dst="2" /> +<file name="7c9748fba0c14c426a6e934bfa64a7e6.woff2" server="62.244.88.21/deciday_18/" local="131765539780000000" remote="131824321800000000" Dst="2" /> +<file name="c38f2cc711985becf7550d75271b1175.eot" server="62.244.88.21/deciday_18/" local="131753487820000000" remote="131824321800000000" Dst="2" /> +<file name="c38f2cc711985becf7550d75271b1175.ttf" server="62.244.88.21/deciday_18/" local="131271881540000000" remote="131824321800000000" Dst="2" /> +<file name="c38f2cc711985becf7550d75271b1175.svg" server="62.244.88.21/deciday_18/" local="131753487840000000" remote="131824321800000000" Dst="2" /> +<file name="c38f2cc711985becf7550d75271b1175.woff" server="62.244.88.21/deciday_18/" local="131753487840000000" remote="131824321800000000" Dst="2" /> +<file name="c38f2cc711985becf7550d75271b1175.woff2" server="62.244.88.21/deciday_18/" local="131753487840000000" remote="131824321800000000" Dst="2" /> +<file name="d2daa36af4aaac8c5e102ca2db9d8227.eot" server="62.244.88.21/deciday_18/" local="131837182425210221" remote="131837112000000000" Dst="2" /> +<file name="d2daa36af4aaac8c5e102ca2db9d8227.ttf" server="62.244.88.21/deciday_18/" local="131837182428022055" remote="131837112000000000" Dst="2" /> +<file name="d2daa36af4aaac8c5e102ca2db9d8227.woff" server="62.244.88.21/deciday_18/" local="131837182427397231" remote="131837112000000000" Dst="2" /> +<file name="d2daa36af4aaac8c5e102ca2db9d8227.svg" server="62.244.88.21/deciday_18/" local="131837182432741170" remote="131837112000000000" Dst="2" /> +<file name="d2daa36af4aaac8c5e102ca2db9d8227.woff2" server="62.244.88.21/deciday_18/" local="131837182429281977" remote="131837112000000000" Dst="2" /> +<file name="f3b65bc5f78ed2b3748f81383222dd43.eot" server="62.244.88.21/deciday_18/" local="131837182431022835" remote="131837112600000000" Dst="2" /> +<file name="f3b65bc5f78ed2b3748f81383222dd43.ttf" server="62.244.88.21/deciday_18/" local="131837182434468081" remote="131837112600000000" Dst="2" /> +<file name="f3b65bc5f78ed2b3748f81383222dd43.woff" server="62.244.88.21/deciday_18/" local="131837182434932635" remote="131837112600000000" Dst="2" /> +<file name="f3b65bc5f78ed2b3748f81383222dd43.woff2" server="62.244.88.21/deciday_18/" local="131837182436182371" remote="131837112600000000" Dst="2" /> +<file name="f3b65bc5f78ed2b3748f81383222dd43.svg" server="62.244.88.21/deciday_18/" local="131837182437744216" remote="131837112600000000" Dst="2" /> +<file name="glyphicons-halflings-regular.eot" server="62.244.88.21/deciday/" local="131139067140000000" remote="131880426000000000" Dst="1" /> +<file name="glyphicons-halflings-regular.svg" server="62.244.88.21/deciday/" local="131139067140000000" remote="131880426000000000" Dst="1" /> +<file name="glyphicons-halflings-regular.ttf" server="62.244.88.21/deciday/" local="131139067140000000" remote="131880426000000000" Dst="1" /> +<file name="glyphicons-halflings-regular.woff" server="62.244.88.21/deciday/" local="131139067140000000" remote="131880426000000000" Dst="1" /> +<file name="glyphicons-halflings-regular.woff2" server="62.244.88.21/deciday/" local="131139067140000000" remote="131880426000000000" Dst="1" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.eot" server="62.244.88.21/deciday/" local="131919455438319972" remote="131823434400000000" Dst="1" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.woff2" server="62.244.88.21/deciday/" local="131919455438505355" remote="131823434400000000" Dst="1" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.woff" server="62.244.88.21/deciday/" local="131919455438681972" remote="131823434400000000" Dst="1" /> +<file name="7c9748fba0c14c426a6e934bfa64a7e6.woff2" server="62.244.88.21/deciday/" local="131919455440300147" remote="131824393800000000" Dst="1" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.ttf" server="62.244.88.21/deciday/" local="131919455440537485" remote="131823434400000000" Dst="1" /> +<file name="7c9748fba0c14c426a6e934bfa64a7e6.eot" server="62.244.88.21/deciday/" local="131919455441639444" remote="131824393800000000" Dst="1" /> +<file name="7c9748fba0c14c426a6e934bfa64a7e6.woff" server="62.244.88.21/deciday/" local="131919455442050449" remote="131824393800000000" Dst="1" /> +<file name="65482afbeb61af43c403d0fec1fdb679.woff2" server="62.244.88.21/deciday/" local="131919455444344846" remote="131824393800000000" Dst="1" /> +<file name="7c9748fba0c14c426a6e934bfa64a7e6.ttf" server="62.244.88.21/deciday/" local="131919455444647951" remote="131824393800000000" Dst="1" /> +<file name="65482afbeb61af43c403d0fec1fdb679.eot" server="62.244.88.21/deciday/" local="131919455445772858" remote="131824393800000000" Dst="1" /> +<file name="65482afbeb61af43c403d0fec1fdb679.woff" server="62.244.88.21/deciday/" local="131919455446158317" remote="131824393800000000" Dst="1" /> +<file name="c38f2cc711985becf7550d75271b1175.woff2" server="62.244.88.21/deciday/" local="131919455448739336" remote="131824393800000000" Dst="1" /> +<file name="c38f2cc711985becf7550d75271b1175.eot" server="62.244.88.21/deciday/" local="131919455450680201" remote="131824393800000000" Dst="1" /> +<file name="c38f2cc711985becf7550d75271b1175.woff" server="62.244.88.21/deciday/" local="131919455451154462" remote="131824393800000000" Dst="1" /> +<file name="65482afbeb61af43c403d0fec1fdb679.ttf" server="62.244.88.21/deciday/" local="131919455452707350" remote="131824393800000000" Dst="1" /> +<file name="63f7c4ed344e79ed1cf58a1817e6ff0d.woff2" server="62.244.88.21/deciday/" local="131919455454010648" remote="131824393800000000" Dst="1" /> +<file name="63f7c4ed344e79ed1cf58a1817e6ff0d.eot" server="62.244.88.21/deciday/" local="131919455454321089" remote="131824393800000000" Dst="1" /> +<file name="63f7c4ed344e79ed1cf58a1817e6ff0d.woff" server="62.244.88.21/deciday/" local="131919455455620198" remote="131824393800000000" Dst="1" /> +<file name="63f7c4ed344e79ed1cf58a1817e6ff0d.ttf" server="62.244.88.21/deciday/" local="131919455456342353" remote="131824393800000000" Dst="1" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.eot" server="62.244.88.21/deciday/" local="131919455457603724" remote="131823434400000000" Dst="1" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.woff2" server="62.244.88.21/deciday/" local="131919455457918804" remote="131823434400000000" Dst="1" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.woff" server="62.244.88.21/deciday/" local="131919455459359871" remote="131823434400000000" Dst="1" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.ttf" server="62.244.88.21/deciday/" local="131919455459914197" remote="131823434400000000" Dst="1" /> +<file name="d2daa36af4aaac8c5e102ca2db9d8227.eot" server="62.244.88.21/deciday/" local="131919455462905155" remote="131837184000000000" Dst="1" /> +<file name="d2daa36af4aaac8c5e102ca2db9d8227.woff2" server="62.244.88.21/deciday/" local="131919455464952242" remote="131837184000000000" Dst="1" /> +<file name="4cf80f22e2f9d7f0b9bd2381d6c5886c.svg" server="62.244.88.21/deciday/" local="131919455465630067" remote="131823434400000000" Dst="1" /> +<file name="d2daa36af4aaac8c5e102ca2db9d8227.ttf" server="62.244.88.21/deciday/" local="131919455467399104" remote="131837184000000000" Dst="1" /> +<file name="d2daa36af4aaac8c5e102ca2db9d8227.woff" server="62.244.88.21/deciday/" local="131919455467855129" remote="131837184000000000" Dst="1" /> +<file name="f3b65bc5f78ed2b3748f81383222dd43.woff2" server="62.244.88.21/deciday/" local="131919455469594094" remote="131837184600000000" Dst="1" /> +<file name="f3b65bc5f78ed2b3748f81383222dd43.eot" server="62.244.88.21/deciday/" local="131919455469804242" remote="131837184600000000" Dst="1" /> +<file name="f3b65bc5f78ed2b3748f81383222dd43.woff" server="62.244.88.21/deciday/" local="131919455471625850" remote="131837184600000000" Dst="1" /> +<file name="f3b65bc5f78ed2b3748f81383222dd43.ttf" server="62.244.88.21/deciday/" local="131919455471841754" remote="131837184600000000" Dst="1" /> +<file name="c38f2cc711985becf7550d75271b1175.ttf" server="62.244.88.21/deciday/" local="131919455484052157" remote="131824393800000000" Dst="1" /> +<file name="63f7c4ed344e79ed1cf58a1817e6ff0d.svg" server="62.244.88.21/deciday/" local="131919462158390458" remote="131824393800000000" Dst="1" /> +<file name="7c9748fba0c14c426a6e934bfa64a7e6.svg" server="62.244.88.21/deciday/" local="131919462160144243" remote="131824393800000000" Dst="1" /> +<file name="65482afbeb61af43c403d0fec1fdb679.svg" server="62.244.88.21/deciday/" local="131919462160626501" remote="131824393800000000" Dst="1" /> +<file name="AllerDisplay.ttf" server="62.244.88.21/deciday/" local="131919462163718796" remote="131823434400000000" Dst="1" /> +<file name="a89cf050c859a23e4b6d9cf5989acf9e.svg" server="62.244.88.21/deciday/" local="131919462166863318" remote="131823434400000000" Dst="1" /> +<file name="c38f2cc711985becf7550d75271b1175.svg" server="62.244.88.21/deciday/" local="131919462171469738" remote="131824393800000000" Dst="1" /> +<file name="d2daa36af4aaac8c5e102ca2db9d8227.svg" server="62.244.88.21/deciday/" local="131919462175513137" remote="131837184000000000" Dst="1" /> +<file name="f3b65bc5f78ed2b3748f81383222dd43.svg" server="62.244.88.21/deciday/" local="131919462176924526" remote="131837184600000000" Dst="1" /> +<file name="Myriad Pro Bold.ttf" server="62.244.88.21/deciday/" local="131919462177892944" remote="131824392600000000" Dst="1" /> +<file name="MyriadPro-Bold.otf" server="62.244.88.21/deciday/" local="131919462178338831" remote="131824392600000000" Dst="1" /> +<file name="NeoSansPro-Black.otf" server="62.244.88.21/deciday/" local="131919462179497650" remote="131823434400000000" Dst="1" /> +<file name="NeoSansPro-Bold.otf" server="62.244.88.21/deciday/" local="131919462180702196" remote="131823434400000000" Dst="1" /> +<file name="NeoSansPro-Light.otf" server="62.244.88.21/deciday/" local="131919462181108723" remote="131823434400000000" Dst="1" /> +<file name="NeoSansPro-Medium.otf" server="62.244.88.21/deciday/" local="131919462181931001" remote="131823434400000000" Dst="1" /> +<file name="NeoSansPro-Regular.otf" server="62.244.88.21/deciday/" local="131919462183906328" remote="131823434400000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.eot b/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.eot new file mode 100644 index 0000000..44449fb Binary files /dev/null and b/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.eot differ diff --git a/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.svg b/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.svg new file mode 100644 index 0000000..fdf4dbf --- /dev/null +++ b/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.svg @@ -0,0 +1,7080 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<svg> +<metadata> +Created by FontForge 20120731 at Mon Jun 12 05:30:56 2017 + By www +Copyright (c) 2000 Adobe Systems Incorporated. All Rights Reserved. U.S. Patent Des. pending.Myriad is a registered trademark of Adobe Systems Incorporated. +</metadata> +<defs> +<font id="MyriadPro-Regular" horiz-adv-x="300" > + <font-face + font-family="Myriad Pro" + font-weight="400" + font-stretch="normal" + units-per-em="1000" + panose-1="2 11 5 3 3 4 3 2 2 4" + ascent="750" + descent="-250" + x-height="484" + cap-height="674" + bbox="-46 -250 1126 881" + underline-thickness="50" + underline-position="-50" + stemh="67" + stemv="88" + unicode-range="U+0020-FB04" + /> +<missing-glyph horiz-adv-x="500" +d="M0 0v700h500v-700h-500zM250 395l170 255h-340zM280 350l170 -255v510zM80 50h340l-170 255zM50 605v-510l170 255z" /> + <glyph glyph-name="fi" unicode="fi" horiz-adv-x="523" +d="M169 0h-88v417h-67v67h67v27c0 127 76 210 212 210c45 0 98 -14 123 -32l-25 -67c-22 15 -59 28 -102 28c-93 0 -121 -65 -121 -142v-24h282v-484h-88v417h-193v-417z" /> + <glyph glyph-name="fl" unicode="fl" horiz-adv-x="523" +d="M169 0h-88v417h-67v67h67v21c0 68 23 128 69 167c37 32 87 49 155 49c57 0 109 -12 146 -32v-689h-88v640c-15 8 -38 13 -72 13c-92 0 -123 -67 -123 -144v-25h114v-67h-113v-417z" /> + <glyph glyph-name="ff" unicode="ff" horiz-adv-x="583" +d="M460 0h-88v417h-203v-417h-88v417h-67v67h67v14c0 68 16 127 54 166c29 28 69 45 123 45c28 0 54 -9 69 -17l-19 -66c-13 7 -32 13 -51 13c-69 0 -89 -59 -89 -135v-20h204v23c0 68 16 130 57 169c33 32 77 45 117 45c32 0 58 -7 75 -14l-11 -68c-14 6 -31 11 -57 11 +c-74 0 -94 -66 -94 -140v-26h117v-67h-116v-417z" /> + <glyph glyph-name="ffi" unicode="ffi" horiz-adv-x="815" +d="M705 690l-26 -66c-22 14 -58 26 -98 26c-93 0 -121 -65 -121 -142v-24h282v-484h-88v417h-193v-417h-88v417h-204v-417h-88v417h-67v67h67v17c0 61 17 120 58 161c29 29 71 47 125 47c33 0 67 -12 85 -21l-25 -65c-15 9 -38 17 -60 17c-28 0 -49 -10 -63 -26 +c-25 -25 -33 -70 -33 -113v-17h205v27c0 127 76 210 212 210c43 0 94 -14 120 -31z" /> + <glyph glyph-name="ffl" unicode="ffl" horiz-adv-x="815" +d="M349 691l-24 -66c-17 10 -38 15 -60 15c-28 0 -49 -9 -64 -26c-24 -25 -33 -67 -33 -112v-18h205v21c0 68 23 128 69 167c37 32 87 49 155 49c56 0 108 -12 145 -32v-689h-88v640c-15 8 -38 13 -72 13c-91 0 -122 -67 -122 -144v-25h114v-67h-113v-417h-88v417h-204v-417 +h-88v417h-67v67h67v11c0 63 15 125 57 166c31 30 75 48 130 48c33 0 66 -11 81 -18z" /> + <glyph glyph-name="f_j" unicode="fj" horiz-adv-x="522" +d="M169 0h-88v417h-67v67h67v27c0 127 76 210 212 210c45 0 98 -14 123 -32l-25 -67c-22 15 -59 28 -102 28c-93 0 -121 -65 -121 -142v-24h282v-441c0 -94 -15 -155 -58 -199c-39 -39 -103 -55 -150 -55l-9 69c40 3 75 14 95 37c24 27 34 66 34 182v340h-193v-417z" /> + <glyph glyph-name="f_f_j" unicode="ffj" horiz-adv-x="809" +d="M705 690l-26 -66c-22 14 -58 26 -98 26c-93 0 -121 -65 -121 -142v-24h282v-441c0 -94 -15 -155 -58 -199c-39 -39 -103 -55 -150 -55l-9 69c40 3 75 14 95 37c24 27 34 66 34 182v340h-193v-417h-88v417h-204v-417h-88v417h-67v67h67v17c0 61 17 120 58 161 +c29 29 71 47 125 47c33 0 67 -12 85 -21l-25 -65c-15 9 -38 17 -60 17c-28 0 -49 -10 -63 -26c-25 -25 -33 -70 -33 -113v-17h205v27c0 127 76 210 212 210c43 0 94 -14 120 -31z" /> + <glyph glyph-name=".notdef" horiz-adv-x="500" +d="M0 0v700h500v-700h-500zM250 395l170 255h-340zM280 350l170 -255v510zM80 50h340l-170 255zM50 605v-510l170 255z" /> + <glyph glyph-name="space" unicode=" " horiz-adv-x="212" + /> + <glyph glyph-name="space" unicode="&#xa0;" horiz-adv-x="212" + /> + <glyph glyph-name="exclam" unicode="!" horiz-adv-x="230" +d="M149 193h-68l-14 481h96zM115 -11h-1c-34 0 -58 27 -58 62c0 36 25 62 59 62c36 0 59 -26 59 -62c0 -35 -23 -62 -59 -62z" /> + <glyph glyph-name="quotedbl" unicode="&#x22;" horiz-adv-x="337" +d="M51 692h86l-16 -240h-54zM200 692h86l-16 -240h-54z" /> + <glyph glyph-name="numbersign" unicode="#" horiz-adv-x="497" +d="M188 255h104l19 145h-104zM154 0h-60l26 196h-83v59h92l19 145h-87v59h95l26 191h59l-26 -191h105l25 191h59l-25 -191h82v-59h-91l-18 -145h86v-59h-95l-26 -196h-60l26 196h-104z" /> + <glyph glyph-name="dollar" unicode="$" horiz-adv-x="513" +d="M281 -86h-63v101c-58 1 -117 19 -152 44l24 67c35 -24 87 -43 142 -43c72 0 120 41 120 98c0 55 -39 89 -113 119c-102 40 -165 87 -165 174c0 83 59 146 150 161v100h63v-97c60 -2 101 -18 130 -35l-25 -66c-21 12 -62 35 -126 35c-77 0 -106 -46 -106 -87 +c0 -51 37 -77 124 -114c103 -42 155 -93 155 -182c0 -80 -55 -154 -158 -171v-104z" /> + <glyph glyph-name="percent" unicode="%" horiz-adv-x="792" +d="M187 661h1c90 0 149 -70 149 -194c0 -136 -71 -204 -155 -204c-82 0 -151 65 -152 195c0 130 70 203 157 203zM184 608h-1c-54 0 -84 -65 -84 -147c-2 -82 30 -145 85 -145c58 0 84 61 84 147c0 79 -23 145 -84 145zM231 -12h-56l383 674h56zM611 392h1 +c90 0 149 -69 149 -193c0 -138 -71 -206 -155 -206c-82 0 -151 66 -152 196c0 131 70 203 157 203zM608 339h-1c-54 0 -84 -64 -84 -146c-2 -83 30 -147 85 -147c58 0 84 62 84 149c0 79 -23 144 -84 144z" /> + <glyph glyph-name="ampersand" unicode="&#x26;" horiz-adv-x="605" +d="M602 0h-104c-19 19 -37 38 -63 65c-58 -53 -122 -76 -197 -76c-131 0 -207 88 -207 189c0 92 55 155 132 197v3c-34 44 -57 93 -57 141c0 82 60 166 172 166c84 0 149 -55 149 -143c0 -71 -41 -127 -148 -180v-3c57 -66 121 -140 164 -188c31 47 52 112 65 197h80 +c-18 -106 -47 -190 -97 -249c36 -38 71 -76 111 -119zM253 55h1c58 0 106 26 138 61c-40 43 -115 126 -189 212c-37 -23 -87 -66 -87 -137c0 -77 56 -136 137 -136zM272 625h-1c-55 0 -84 -46 -84 -98c0 -48 23 -85 51 -121c69 39 112 75 112 132c0 41 -23 87 -78 87z" /> + <glyph glyph-name="quoteright" unicode="&#x2019;" horiz-adv-x="207" +d="M93 682l90 10c-23 -84 -66 -192 -93 -238l-56 -6c21 59 48 162 59 234z" /> + <glyph glyph-name="parenleft" unicode="(" horiz-adv-x="284" +d="M195 694h68c-73 -99 -125 -228 -125 -410c0 -178 55 -305 125 -405h-68c-63 83 -131 211 -131 406c1 196 68 325 131 409z" /> + <glyph glyph-name="parenright" unicode=")" horiz-adv-x="284" +d="M88 -121h-68c70 99 125 228 125 408s-54 307 -125 407h68c63 -82 131 -211 131 -407c-1 -196 -68 -323 -131 -408z" /> + <glyph glyph-name="asterisk" unicode="*" horiz-adv-x="415" +d="M269 685l60 -35l-95 -124v-2l151 20v-68l-151 18v-2l96 -121l-63 -35l-61 140h-2l-64 -141l-57 36l95 122v2l-148 -19v68l147 -19v2l-94 123l61 34l62 -139h2z" /> + <glyph glyph-name="plus" unicode="+" horiz-adv-x="596" +d="M266 532h64v-235h226v-60h-226v-237h-64v237h-226v60h226v235z" /> + <glyph glyph-name="comma" unicode="," horiz-adv-x="207" +d="M78 -117l-62 -7c22 60 49 167 60 240l98 10c-24 -85 -68 -196 -96 -243z" /> + <glyph glyph-name="hyphen" unicode="-" horiz-adv-x="307" +d="M30 302h247v-64h-247v64z" /> + <glyph glyph-name="hyphen" unicode="&#xad;" horiz-adv-x="307" +d="M30 302h247v-64h-247v64z" /> + <glyph glyph-name="period" unicode="." horiz-adv-x="207" +d="M111 -11h-1c-34 0 -58 27 -58 63s25 63 60 63s59 -26 59 -63c0 -36 -24 -63 -60 -63z" /> + <glyph glyph-name="slash" unicode="/" horiz-adv-x="343" +d="M66 -40h-67l278 725h69z" /> + <glyph glyph-name="zero" unicode="0" horiz-adv-x="513" +d="M253 -11h-1c-127 0 -214 119 -216 334c0 219 95 338 227 338c136 0 215 -122 215 -329c0 -221 -83 -343 -225 -343zM256 57h1c89 0 132 105 132 271c0 160 -40 265 -132 265c-80 0 -132 -102 -132 -265c-2 -169 50 -271 131 -271z" /> + <glyph glyph-name="one" unicode="1" horiz-adv-x="513" +d="M236 0v568h-2l-113 -61l-17 67l142 76h75v-650h-85z" /> + <glyph glyph-name="two" unicode="2" horiz-adv-x="513" +d="M460 0h-415v54l69 67c166 158 242 242 242 340c0 66 -31 127 -128 127c-59 0 -108 -30 -138 -55l-28 62c44 37 109 66 184 66c139 0 198 -96 198 -189c0 -120 -87 -217 -224 -349l-51 -48v-2h291v-73z" /> + <glyph glyph-name="three" unicode="3" horiz-adv-x="513" +d="M42 33l24 67c25 -15 82 -40 144 -40c112 0 148 71 147 126c-1 91 -83 130 -168 130h-49v66h49c64 0 145 33 145 110c0 52 -33 98 -114 98c-52 0 -102 -23 -130 -43l-24 64c35 25 101 50 171 50c128 0 186 -76 186 -155c0 -68 -41 -125 -120 -154v-2 +c80 -15 145 -75 145 -166c0 -104 -82 -195 -237 -195c-73 0 -137 23 -169 44z" /> + <glyph glyph-name="four" unicode="4" horiz-adv-x="513" +d="M400 0h-83v178h-302v57l290 415h95v-404h91v-68h-91v-178zM104 246h213v217c0 34 1 68 3 102h-3c-20 -38 -36 -66 -54 -96l-159 -221v-2z" /> + <glyph glyph-name="five" unicode="5" horiz-adv-x="513" +d="M433 650v-74h-248l-25 -167c15 2 29 4 53 4c51 0 100 -11 140 -35c51 -28 93 -85 93 -167c0 -127 -101 -222 -242 -222c-71 0 -130 20 -162 40l22 67c27 -16 80 -36 140 -36c82 0 154 54 153 142c0 83 -57 143 -186 143c-38 0 -67 -3 -91 -7l42 312h311z" /> + <glyph glyph-name="six" unicode="6" horiz-adv-x="513" +d="M416 660v-72c-18 1 -41 -1 -66 -5c-139 -22 -211 -122 -226 -230h2c31 42 86 76 158 76c115 0 196 -84 196 -210c0 -120 -81 -230 -217 -230c-138 0 -229 108 -229 277c0 128 45 229 110 293c54 53 126 86 208 96c26 4 48 5 64 5zM264 57h1c75 0 126 63 126 156 +s-53 149 -134 149c-53 0 -103 -32 -127 -80c-5 -10 -9 -22 -9 -38c1 -107 51 -187 143 -187z" /> + <glyph glyph-name="seven" unicode="7" horiz-adv-x="513" +d="M57 650h410v-58l-283 -592h-90l281 575v2h-318v73z" /> + <glyph glyph-name="eight" unicode="8" horiz-adv-x="513" +d="M262 661h1c126 0 190 -78 190 -160c0 -55 -28 -115 -108 -152v-3c81 -32 131 -90 131 -168c0 -114 -97 -189 -221 -189c-136 0 -218 80 -218 175c0 82 49 141 128 175v3c-73 34 -104 90 -104 146c0 103 87 173 201 173zM256 53h1c79 0 130 49 130 116 +c0 78 -55 117 -143 142c-76 -22 -117 -73 -117 -135c-3 -65 47 -123 129 -123zM259 598h-1c-73 0 -113 -48 -113 -104c-1 -65 49 -100 124 -120c56 19 99 59 99 118c0 52 -31 106 -109 106z" /> + <glyph glyph-name="nine" unicode="9" horiz-adv-x="513" +d="M96 -10v72c19 -1 41 0 71 4c51 6 99 27 136 62c43 40 74 96 86 173h-3c-36 -44 -88 -70 -154 -70c-117 0 -192 88 -192 200c0 122 90 230 223 230s215 -107 215 -274c0 -143 -48 -243 -112 -305c-50 -48 -119 -79 -189 -87c-32 -4 -61 -6 -81 -5zM256 594h-1 +c-74 0 -127 -66 -127 -158c0 -81 49 -138 125 -138c59 0 105 29 129 68c4 8 7 18 7 32c1 112 -41 196 -133 196z" /> + <glyph glyph-name="colon" unicode=":" horiz-adv-x="207" +d="M112 342h-1c-34 0 -58 27 -58 62c0 37 25 63 59 63c36 0 59 -26 59 -63c0 -35 -23 -62 -59 -62zM112 -11h-1c-34 0 -58 27 -58 62c0 37 25 63 59 63c36 0 59 -26 59 -63c0 -35 -23 -62 -59 -62z" /> + <glyph glyph-name="semicolon" unicode=";" horiz-adv-x="207" +d="M78 -117l-61 -6c22 59 49 166 60 239l97 10c-24 -85 -68 -196 -96 -243zM119 342h-1c-34 0 -58 27 -58 62c0 37 25 63 59 63c36 0 59 -26 59 -63c0 -35 -23 -62 -59 -62z" /> + <glyph glyph-name="less" unicode="&#x3c;" horiz-adv-x="596" +d="M66 239v54l464 239v-69l-391 -196v-2l391 -196v-69z" /> + <glyph glyph-name="equal" unicode="=" horiz-adv-x="596" +d="M556 337h-516v60h516v-60zM556 141h-516v60h516v-60z" /> + <glyph glyph-name="greater" unicode="&#x3e;" horiz-adv-x="596" +d="M530 295v-57l-464 -238v69l394 196v2l-394 196v69z" /> + <glyph glyph-name="question" unicode="?" horiz-adv-x="406" +d="M219 192h-78l-2 25c-6 54 12 113 62 173c45 54 70 92 70 137c0 51 -32 86 -95 86c-36 0 -76 -11 -101 -31l-24 63c33 25 90 41 143 41c115 0 167 -72 167 -148c0 -67 -38 -117 -86 -173c-44 -53 -60 -97 -57 -148zM179 -11h-1c-34 0 -58 27 -58 62c0 37 25 63 59 63 +c36 0 59 -26 59 -63c0 -35 -23 -62 -59 -62z" /> + <glyph glyph-name="at" unicode="@" horiz-adv-x="737" +d="M449 255l21 112c-10 4 -27 8 -50 8c-89 0 -160 -83 -160 -180c0 -44 22 -76 66 -76c58 0 112 74 123 136zM508 -22l16 -43c-55 -29 -111 -40 -178 -40c-164 0 -303 120 -303 313c0 206 143 384 365 384c174 0 290 -122 290 -289c0 -150 -83 -238 -177 -238 +c-40 0 -76 26 -74 88h-3c-36 -59 -82 -88 -142 -88c-58 0 -108 47 -108 126c0 124 98 237 237 237c43 0 82 -9 107 -21l-33 -181c-15 -76 -4 -111 29 -112c51 -2 108 67 108 182c0 146 -87 250 -242 250c-163 0 -300 -129 -300 -332c0 -167 109 -271 257 -271 +c58 0 111 13 151 35z" /> + <glyph glyph-name="A" unicode="A" horiz-adv-x="612" +d="M424 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM203 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122z" /> + <glyph glyph-name="B" unicode="B" horiz-adv-x="542" +d="M76 2v662c38 9 99 15 159 15c87 0 143 -15 184 -49c35 -26 57 -66 57 -119c0 -66 -44 -123 -114 -148v-3c64 -15 139 -68 139 -168c0 -58 -23 -102 -58 -135c-46 -43 -122 -63 -232 -63c-60 0 -106 4 -135 8zM163 606v-218h79c91 0 145 49 145 114c0 78 -59 110 -147 110 +c-40 0 -63 -3 -77 -6zM163 323v-257c18 -3 42 -4 73 -4c90 0 173 33 173 131c0 91 -79 130 -174 130h-72z" /> + <glyph glyph-name="C" unicode="C" horiz-adv-x="580" +d="M529 92l17 -70c-31 -16 -96 -32 -178 -32c-190 0 -332 120 -332 341c0 211 143 353 352 353c83 0 137 -18 160 -29l-22 -72c-32 16 -79 28 -135 28c-158 0 -263 -101 -263 -277c0 -165 95 -270 258 -270c54 0 108 11 143 28z" /> + <glyph glyph-name="D" unicode="D" horiz-adv-x="666" +d="M75 2v663c54 8 117 14 186 14c125 0 214 -29 273 -84c61 -55 96 -133 96 -242c0 -110 -35 -200 -97 -262c-64 -63 -168 -97 -299 -97c-63 0 -114 2 -159 8zM163 601v-533c22 -4 54 -4 88 -4c186 -1 287 104 287 286c1 159 -89 260 -273 260c-45 0 -79 -4 -102 -9z" /> + <glyph glyph-name="E" unicode="E" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261z" /> + <glyph glyph-name="F" unicode="F" horiz-adv-x="487" +d="M75 0v674h363v-73h-275v-224h254v-72h-254v-305h-88z" /> + <glyph glyph-name="G" unicode="G" horiz-adv-x="646" +d="M590 354v-324c-39 -15 -117 -37 -208 -37c-102 0 -186 26 -252 89c-58 56 -94 146 -94 251c0 201 139 348 365 348c78 0 140 -17 169 -31l-22 -71c-36 17 -81 29 -149 29c-164 0 -271 -102 -271 -271c0 -171 102 -272 260 -272c57 0 96 8 116 18v201h-136v70h222z" /> + <glyph glyph-name="H" unicode="H" horiz-adv-x="652" +d="M75 674h88v-282h326v282h88v-674h-88v316h-326v-316h-88v674z" /> + <glyph glyph-name="I" unicode="I" horiz-adv-x="239" +d="M75 674h88v-674h-88v674z" /> + <glyph glyph-name="J" unicode="J" horiz-adv-x="370" +d="M213 230v444h88v-451c0 -179 -88 -234 -204 -234c-33 0 -72 7 -93 16l12 71c18 -7 44 -13 74 -13c78 0 123 35 123 167z" /> + <glyph glyph-name="K" unicode="K" horiz-adv-x="542" +d="M76 0v674h87v-325h3c18 26 36 50 53 72l206 253h108l-244 -286l263 -388h-103l-221 331l-65 -74v-257h-87z" /> + <glyph glyph-name="L" unicode="L" horiz-adv-x="472" +d="M75 0v674h88v-601h288v-73h-376z" /> + <glyph glyph-name="M" unicode="M" horiz-adv-x="804" +d="M660 0l-16 296c-5 93 -11 208 -11 291h-2c-24 -78 -51 -164 -85 -256l-119 -327h-66l-110 321c-32 95 -58 182 -77 262h-2c-2 -84 -7 -197 -13 -298l-18 -289h-83l47 674h111l115 -326c28 -83 50 -158 68 -228h2c18 68 42 143 72 228l120 326h111l42 -674h-86z" /> + <glyph glyph-name="N" unicode="N" horiz-adv-x="658" +d="M158 0h-82v674h96l215 -341c49 -79 89 -150 120 -219l3 1c-8 90 -10 172 -10 276v283h82v-674h-88l-214 342c-47 75 -92 152 -125 225l-3 -1c5 -85 6 -166 6 -278v-288z" /> + <glyph glyph-name="O" unicode="O" horiz-adv-x="689" +d="M340 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM343 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273z" /> + <glyph glyph-name="P" unicode="P" horiz-adv-x="532" +d="M76 0v665c42 8 97 14 167 14c86 0 149 -20 189 -56c37 -32 60 -81 60 -140c0 -61 -18 -109 -53 -144c-46 -49 -121 -74 -206 -74c-26 0 -50 1 -70 6v-271h-87zM163 603v-261c19 -5 43 -7 72 -7c105 0 169 51 169 143c0 89 -63 132 -159 132c-38 0 -67 -3 -82 -7z" /> + <glyph glyph-name="Q" unicode="Q" horiz-adv-x="689" +d="M657 -26l-25 -72c-91 23 -180 51 -258 77c-15 5 -28 10 -41 10c-161 6 -297 124 -297 341c0 216 131 355 313 355c184 0 303 -142 303 -341c0 -173 -80 -283 -192 -323v-4c67 -17 140 -33 197 -43zM343 60h1c138 0 216 127 216 280c0 135 -70 274 -213 274 +c-147 0 -219 -136 -219 -282c0 -143 78 -272 215 -272z" /> + <glyph glyph-name="R" unicode="R" horiz-adv-x="538" +d="M76 0v664c44 9 108 15 167 15c93 0 154 -18 196 -56c33 -29 53 -75 53 -128c0 -88 -57 -147 -127 -171v-3c51 -18 82 -66 99 -136c22 -94 38 -159 51 -185h-90c-11 20 -26 77 -44 161c-20 93 -57 128 -136 131h-82v-292h-87zM163 603v-245h89c93 0 152 51 152 128 +c0 87 -63 125 -155 125c-42 0 -71 -4 -86 -8z" /> + <glyph glyph-name="S" unicode="S" horiz-adv-x="493" +d="M42 34l23 72c39 -24 95 -43 155 -43c89 0 141 46 141 114c0 63 -36 100 -127 134c-110 38 -178 96 -178 190c0 105 87 183 218 183c68 0 119 -16 148 -32l-24 -72c-21 13 -66 32 -127 32c-92 0 -127 -55 -127 -101c0 -62 41 -93 134 -129c114 -45 171 -99 171 -198 +c0 -103 -76 -194 -235 -194c-65 0 -136 20 -172 44z" /> + <glyph glyph-name="T" unicode="T" horiz-adv-x="497" +d="M204 0v600h-205v74h499v-74h-206v-600h-88z" /> + <glyph glyph-name="U" unicode="U" horiz-adv-x="647" +d="M75 674h88v-400c0 -150 67 -214 157 -214c99 0 164 66 164 214v400h88v-394c0 -207 -109 -291 -255 -291c-138 0 -242 78 -242 288v397z" /> + <glyph glyph-name="V" unicode="V" horiz-adv-x="558" +d="M320 0h-96l-221 674h95l105 -332c28 -91 53 -174 72 -252h2c19 78 46 163 77 251l114 333h93z" /> + <glyph glyph-name="W" unicode="W" horiz-adv-x="846" +d="M277 0h-91l-171 674h92l80 -341c20 -85 38 -168 50 -233h2c11 67 32 147 55 234l90 340h91l82 -342c19 -81 37 -160 47 -231h2c14 74 33 149 54 233l89 340h89l-191 -674h-91l-85 350c-21 87 -35 153 -44 221h-2c-11 -68 -27 -133 -52 -220z" /> + <glyph glyph-name="X" unicode="X" horiz-adv-x="571" +d="M546 0h-101l-87 149c-35 57 -56 94 -77 133h-2c-19 -39 -39 -75 -73 -134l-81 -148h-100l206 341l-198 333h101l89 -158c25 -44 44 -78 62 -114h3c19 40 36 71 61 114l91 158h101l-205 -328z" /> + <glyph glyph-name="Y" unicode="Y" horiz-adv-x="541" +d="M314 0h-88v286l-214 388h100l95 -186c25 -51 46 -92 67 -139h2c18 44 42 88 68 139l97 186h98l-225 -387v-287z" /> + <glyph glyph-name="Z" unicode="Z" horiz-adv-x="553" +d="M30 0v51l374 547v3h-342v73h455v-53l-372 -545v-3h377v-73h-492z" /> + <glyph glyph-name="bracketleft" unicode="[" horiz-adv-x="284" +d="M264 -112h-183v798h183v-55h-114v-688h114v-55z" /> + <glyph glyph-name="backslash" unicode="\" horiz-adv-x="341" +d="M342 -40h-68l-272 725h68z" /> + <glyph glyph-name="bracketright" unicode="]" horiz-adv-x="284" +d="M20 686h183v-798h-183v55h114v688h-114v55z" /> + <glyph glyph-name="asciicircum" unicode="^" horiz-adv-x="596" +d="M536 189h-70l-167 388h-2l-167 -388h-69l206 461h63z" /> + <glyph glyph-name="underscore" unicode="_" horiz-adv-x="500" +d="M0 -75h500v-50h-500v50z" /> + <glyph glyph-name="quoteleft" unicode="&#x2018;" horiz-adv-x="207" +d="M125 458l-90 -10c23 84 66 192 93 238l56 6c-21 -59 -48 -162 -59 -234z" /> + <glyph glyph-name="a" unicode="a" horiz-adv-x="482" +d="M414 297v-181c0 -42 2 -83 7 -116h-79l-8 61h-3c-26 -38 -79 -72 -148 -72c-98 0 -148 69 -148 139c0 117 104 181 291 180v10c0 40 -11 113 -110 112c-46 0 -93 -13 -127 -36l-20 59c40 25 99 42 160 42c149 0 185 -101 185 -198zM328 163v84c-96 2 -205 -15 -205 -109 +c0 -58 38 -84 82 -84c64 0 105 40 119 81c3 9 4 19 4 28z" /> + <glyph glyph-name="b" unicode="b" horiz-adv-x="569" +d="M73 125v585h88v-303h2c31 54 87 88 165 88c120 0 204 -100 204 -246c0 -174 -110 -260 -218 -260c-70 0 -125 27 -162 91h-2l-5 -80h-76c3 33 4 82 4 125zM161 281v-87c0 -11 1 -22 3 -32c17 -61 69 -103 132 -103c93 0 147 75 147 186c0 98 -50 181 -144 181 +c-60 0 -116 -42 -133 -108c-3 -11 -5 -23 -5 -37z" /> + <glyph glyph-name="c" unicode="c" horiz-adv-x="448" +d="M403 84l15 -66c-23 -11 -74 -28 -139 -28c-146 0 -241 99 -241 247c0 149 102 258 260 258c52 0 98 -13 122 -26l-20 -67c-21 11 -54 23 -102 23c-111 0 -171 -83 -171 -183c0 -112 72 -181 168 -181c50 0 83 12 108 23z" /> + <glyph glyph-name="d" unicode="d" horiz-adv-x="564" +d="M403 710h88v-585c0 -43 1 -92 4 -125h-79l-4 84h-2c-27 -54 -85 -95 -164 -95c-117 0 -208 99 -208 246c-1 162 100 260 217 260c75 0 125 -35 146 -73h2v288zM403 203v84c0 12 -1 26 -4 38c-13 55 -61 101 -127 101c-91 0 -145 -80 -145 -186c0 -99 49 -180 143 -180 +c59 0 113 40 129 106c3 11 4 23 4 37z" /> + <glyph glyph-name="e" unicode="e" horiz-adv-x="501" +d="M462 226h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63c-31 -14 -85 -31 -162 -31c-148 0 -238 99 -238 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -31 -3 -41zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143z" /> + <glyph glyph-name="f" unicode="f" horiz-adv-x="292" +d="M169 0h-88v417h-67v67h67v23c0 68 16 130 57 169c33 32 77 45 117 45c32 0 58 -7 75 -14l-11 -68c-14 6 -31 11 -57 11c-74 0 -94 -66 -94 -140v-26h117v-67h-116v-417z" /> + <glyph glyph-name="g" unicode="g" horiz-adv-x="559" +d="M487 352v-281c0 -112 -23 -179 -69 -222c-48 -43 -116 -58 -177 -58c-58 0 -122 14 -161 40l22 68c32 -21 82 -39 142 -39c90 0 156 47 156 170v53h-2c-26 -45 -79 -81 -154 -81c-120 0 -206 102 -206 237c0 164 107 256 219 256c84 0 129 -43 151 -84h2l3 73h78 +c-3 -34 -4 -74 -4 -132zM399 207v87c0 14 -1 27 -5 39c-16 52 -58 94 -123 94c-84 0 -144 -71 -144 -184c0 -94 49 -174 143 -174c55 0 104 34 122 91c5 14 7 31 7 47z" /> + <glyph glyph-name="h" unicode="h" horiz-adv-x="555" +d="M73 0v710h88v-302h2c14 25 36 48 63 62c26 16 57 25 90 25c65 0 169 -40 169 -207v-288h-88v279c0 78 -29 143 -112 143c-57 0 -101 -40 -118 -88c-5 -12 -6 -25 -6 -42v-292h-88z" /> + <glyph glyph-name="i" unicode="i" horiz-adv-x="234" +d="M161 0h-88v484h88v-484zM116 566h-1c-32 0 -53 25 -53 54c0 31 22 55 55 55c32 0 54 -24 54 -55c0 -29 -21 -54 -55 -54z" /> + <glyph glyph-name="j" unicode="j" horiz-adv-x="243" +d="M-36 -211l-10 69c41 3 75 14 96 37c24 27 34 66 34 182v407h88v-441c0 -94 -15 -155 -58 -199c-39 -39 -103 -55 -150 -55zM127 566h-1c-32 0 -53 25 -53 54c0 31 22 55 55 55s54 -24 54 -55c0 -29 -20 -54 -55 -54z" /> + <glyph glyph-name="k" unicode="k" horiz-adv-x="469" +d="M161 710v-448h2c12 17 28 38 42 55l143 167h105l-187 -199l213 -285h-107l-166 232l-45 -50v-182h-88v710h88z" /> + <glyph glyph-name="l" unicode="l" horiz-adv-x="236" +d="M73 0v710h88v-710h-88z" /> + <glyph glyph-name="m" unicode="m" horiz-adv-x="834" +d="M73 0v353c0 51 -2 91 -4 131h77l4 -78h3c27 46 72 89 153 89c65 0 115 -40 136 -97h2c15 28 35 48 55 63c29 22 60 34 106 34c65 0 160 -42 160 -210v-285h-86v274c0 94 -35 149 -105 149c-51 0 -89 -37 -105 -79c-4 -13 -7 -29 -7 -44v-300h-86v291 +c0 77 -34 132 -101 132c-54 0 -95 -44 -109 -88c-5 -13 -7 -28 -7 -43v-292h-86z" /> + <glyph glyph-name="n" unicode="n" horiz-adv-x="555" +d="M73 0v353c0 51 -1 91 -4 131h78l5 -79h2c24 45 80 90 160 90c67 0 171 -40 171 -206v-289h-88v279c0 78 -29 144 -112 144c-57 0 -102 -41 -118 -90c-4 -11 -6 -27 -6 -41v-292h-88z" /> + <glyph glyph-name="o" unicode="o" horiz-adv-x="549" +d="M271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186z" /> + <glyph glyph-name="p" unicode="p" horiz-adv-x="569" +d="M73 -198v524c0 62 -1 112 -4 158h79l5 -83h2c35 60 93 94 171 94c118 0 206 -99 206 -246c0 -174 -107 -260 -220 -260c-65 0 -120 28 -149 76h-2v-263h-88zM161 281v-84c0 -12 1 -25 4 -36c15 -61 69 -103 131 -103c93 0 147 76 147 187c0 97 -50 180 -143 180 +c-60 0 -117 -42 -134 -109c-2 -11 -5 -24 -5 -35z" /> + <glyph glyph-name="q" unicode="q" horiz-adv-x="563" +d="M403 -198v272h-2c-26 -47 -80 -85 -158 -85c-113 0 -205 97 -205 245c0 181 117 261 219 261c75 0 125 -37 149 -84h2l3 73h84c-3 -40 -4 -83 -4 -133v-549h-88zM403 197v91c0 13 -1 26 -4 37c-14 54 -60 100 -126 100c-91 0 -146 -77 -146 -186c0 -97 46 -180 143 -180 +c57 0 106 35 126 96c4 12 7 29 7 42z" /> + <glyph glyph-name="r" unicode="r" horiz-adv-x="327" +d="M73 0v333c0 57 -1 106 -4 151h77l4 -95h3c22 65 76 106 135 106c9 0 16 -1 24 -2v-83c-9 1 -18 2 -30 2c-62 0 -106 -47 -118 -112c-2 -13 -3 -27 -3 -41v-259h-88z" /> + <glyph glyph-name="s" unicode="s" horiz-adv-x="396" +d="M40 24l21 66c27 -16 73 -34 117 -34c63 0 93 31 93 72c0 42 -25 64 -89 88c-88 32 -129 80 -129 137c0 78 64 142 167 142c49 0 92 -13 118 -30l-21 -63c-19 11 -54 28 -99 28c-52 0 -80 -30 -80 -66c0 -40 28 -58 91 -83c83 -31 127 -73 127 -145 +c0 -86 -67 -146 -180 -146c-53 0 -102 14 -136 34z" /> + <glyph glyph-name="t" unicode="t" horiz-adv-x="331" +d="M93 573l86 27v-116h126v-67h-126v-260c0 -60 17 -94 66 -94c24 0 38 2 51 6l4 -67c-17 -6 -44 -12 -78 -12c-41 0 -74 14 -95 37c-24 27 -34 70 -34 127v263h-75v67h75v89z" /> + <glyph glyph-name="u" unicode="u" horiz-adv-x="551" +d="M478 484v-351c0 -51 1 -95 4 -133h-78l-5 79h-2c-22 -39 -74 -90 -160 -90c-76 0 -167 43 -167 212v283h88v-267c0 -92 29 -155 108 -155c59 0 100 41 116 81c5 12 8 28 8 45v296h88z" /> + <glyph glyph-name="v" unicode="v" horiz-adv-x="481" +d="M13 484h94l95 -271c16 -45 29 -85 39 -125h3c11 40 25 80 41 125l94 271h92l-190 -484h-84z" /> + <glyph glyph-name="w" unicode="w" horiz-adv-x="736" +d="M18 484h90l65 -245c13 -54 26 -105 35 -155h3c11 49 27 101 43 154l79 246h74l75 -242c18 -57 32 -109 43 -158h3c8 49 21 100 37 157l69 243h87l-156 -484h-80l-74 231c-17 55 -31 103 -43 160h-2c-12 -58 -27 -109 -44 -161l-78 -230h-80z" /> + <glyph glyph-name="x" unicode="x" horiz-adv-x="463" +d="M16 484h98l69 -104c18 -27 33 -51 49 -79h3c16 29 32 54 49 80l67 103h96l-165 -234l169 -250h-100l-71 109c-19 28 -35 55 -52 84h-2c-16 -29 -33 -55 -51 -84l-70 -109h-97l172 247z" /> + <glyph glyph-name="y" unicode="y" horiz-adv-x="471" +d="M9 484h96l105 -286c12 -32 24 -70 32 -99h2c9 29 19 66 31 101l96 284h93l-132 -345c-63 -166 -106 -250 -166 -303c-44 -37 -86 -52 -108 -56l-22 73c22 7 51 21 77 43c24 19 53 53 74 98c4 9 7 16 7 21s-2 12 -7 23z" /> + <glyph glyph-name="z" unicode="z" horiz-adv-x="428" +d="M18 0v51l219 285c22 27 41 50 64 76v2h-263v70h369v-55l-217 -282c-20 -26 -40 -51 -62 -75v-2h283v-70h-393z" /> + <glyph glyph-name="braceleft" unicode="{" horiz-adv-x="284" +d="M28 263v51c71 0 81 39 81 74c0 28 -4 56 -8 84s-8 56 -8 83c0 92 61 131 146 131h20v-55h-17c-59 -1 -80 -32 -80 -86c0 -23 4 -47 7 -71c4 -25 8 -49 8 -76c1 -64 -28 -96 -72 -108v-2c44 -11 73 -45 72 -109c0 -27 -4 -52 -8 -77c-3 -24 -7 -48 -7 -72 +c0 -56 24 -86 80 -87h17v-55h-21c-82 0 -145 36 -145 137c0 27 4 55 9 82c3 28 7 55 7 81c0 32 -10 75 -81 75z" /> + <glyph glyph-name="bar" unicode="|" horiz-adv-x="239" +d="M86 750h67v-1000h-67v1000z" /> + <glyph glyph-name="braceright" unicode="}" horiz-adv-x="284" +d="M256 314v-51c-71 0 -81 -43 -81 -75c0 -26 4 -53 8 -81c4 -27 8 -55 8 -82c0 -101 -63 -137 -145 -137h-21v55h17c56 1 80 31 80 87c0 24 -4 48 -7 72c-4 25 -8 50 -8 77c-1 64 28 98 72 109v2c-44 12 -73 44 -72 108c0 27 4 51 8 76c3 24 7 48 7 71c0 54 -21 85 -80 86 +h-17v55h20c85 0 146 -39 146 -131c0 -27 -4 -55 -8 -83s-8 -56 -8 -84c0 -35 10 -74 81 -74z" /> + <glyph glyph-name="asciitilde" unicode="~" horiz-adv-x="596" +d="M109 211h-60c-3 99 50 150 119 150c42 0 74 -13 142 -45c50 -24 87 -42 124 -42c36 0 53 29 54 84h59c5 -111 -52 -151 -114 -151c-39 0 -76 12 -145 44c-47 23 -84 44 -120 44s-58 -25 -59 -84z" /> + <glyph glyph-name="exclamdown" unicode="&#xa1;" horiz-adv-x="230" +d="M163 -195h-96l14 478h68zM115 488h1c35 0 58 -26 58 -62c0 -35 -23 -62 -59 -62c-35 0 -59 27 -59 62c0 36 25 62 59 62z" /> + <glyph glyph-name="cent" unicode="&#xa2;" horiz-adv-x="513" +d="M331 -15h-63v102c-64 7 -108 31 -144 70c-35 38 -57 96 -57 169c0 129 79 227 201 247v101h63v-99c45 -1 85 -13 109 -25l-20 -67c-21 12 -55 25 -105 25c-98 0 -160 -80 -160 -179c0 -110 69 -175 157 -175c54 0 90 13 114 25l15 -64c-19 -11 -61 -26 -110 -29v-101z +" /> + <glyph glyph-name="sterling" unicode="&#xa3;" horiz-adv-x="513" +d="M471 0h-416v50c68 34 114 100 114 175c0 24 -1 44 -5 70h-102v63h93c-5 30 -11 69 -11 108c0 118 81 195 192 195c52 0 88 -12 109 -25l-19 -66c-18 10 -48 20 -90 20c-78 0 -109 -54 -109 -125c0 -43 5 -75 11 -107h143v-63h-135c3 -38 5 -76 -4 -112 +c-11 -43 -35 -79 -69 -108v-2h298v-73z" /> + <glyph glyph-name="fraction" unicode="&#x2044;" horiz-adv-x="418" +d="M47 -11h-56l380 672h56z" /> + <glyph glyph-name="fraction" unicode="&#x2215;" horiz-adv-x="418" +d="M47 -11h-56l380 672h56z" /> + <glyph glyph-name="yen" unicode="&#xa5;" horiz-adv-x="513" +d="M292 0h-83v176h-155v49h155v73h-155v49h131l-169 303h94l104 -206c16 -34 28 -61 40 -91h3c10 28 23 59 40 93l108 204h92l-179 -303h130v-49h-156v-73h156v-49h-156v-176z" /> + <glyph glyph-name="florin" unicode="&#x192;" horiz-adv-x="513" +d="M111 338v64h99l6 46c12 98 56 213 191 213c29 -1 54 -7 68 -15l-16 -64c-15 6 -32 10 -52 10c-69 0 -98 -65 -106 -139l-6 -51h120v-64h-128l-25 -204c-15 -130 -56 -218 -174 -218c-33 0 -61 7 -77 17l16 62c17 -8 35 -11 56 -11c61 0 85 55 97 157l22 197h-91z" /> + <glyph glyph-name="section" unicode="&#xa7;" horiz-adv-x="519" +d="M131 352v-1c0 -36 26 -66 105 -94c51 -19 91 -34 114 -49c24 19 38 47 38 77c0 39 -24 70 -89 93c-39 15 -90 32 -123 51c-32 -22 -45 -48 -45 -77zM418 650l-22 -57c-25 16 -65 32 -119 32c-59 0 -104 -29 -104 -74c0 -51 50 -71 125 -96c92 -30 162 -67 162 -157 +c0 -52 -25 -90 -64 -121c16 -15 38 -48 38 -89c0 -104 -96 -150 -190 -150c-60 0 -119 14 -157 42l24 57c24 -17 73 -40 133 -40c63 0 111 29 111 81c0 47 -29 72 -122 105c-102 35 -174 72 -174 157c0 38 21 83 74 118c-21 15 -37 49 -37 83c0 89 81 142 184 142 +c56 0 104 -14 138 -33z" /> + <glyph glyph-name="currency" unicode="&#xa4;" horiz-adv-x="513" +d="M256 534h1c46 0 88 -16 115 -40l71 75l45 -46l-79 -71c20 -27 35 -69 35 -118c0 -54 -16 -97 -35 -122l75 -74l-44 -44l-69 76c-30 -28 -77 -42 -117 -42c-41 0 -87 15 -114 40l-67 -74l-43 44l72 70c-20 27 -37 71 -37 121c0 52 17 95 39 123l-76 71l45 46l68 -76 +c29 25 71 41 115 41zM255 471h-1c-73 0 -118 -63 -118 -141c0 -97 66 -139 118 -139c56 0 119 39 119 142c0 70 -41 138 -118 138z" /> + <glyph glyph-name="quotesingle" unicode="'" horiz-adv-x="188" +d="M51 692h86l-16 -240h-54z" /> + <glyph glyph-name="quotedblleft" unicode="&#x201c;" horiz-adv-x="354" +d="M125 458l-90 -10c23 84 66 192 93 238l56 6c-21 -59 -48 -162 -59 -234zM273 458l-90 -10c23 84 66 192 93 238l56 6c-22 -59 -48 -162 -59 -234z" /> + <glyph glyph-name="guillemotleft" unicode="&#xab;" horiz-adv-x="419" +d="M232 436l-133 -184l134 -184h-71l-133 184l132 184h71zM396 436l-133 -184l134 -184h-71l-133 184l132 184h71z" /> + <glyph glyph-name="guilsinglleft" unicode="&#x2039;" horiz-adv-x="255" +d="M232 436l-133 -184l134 -184h-71l-133 184l132 184h71z" /> + <glyph glyph-name="guilsinglright" unicode="&#x203a;" horiz-adv-x="255" +d="M157 252l-134 184h71l133 -184l-133 -184h-70z" /> + <glyph glyph-name="endash" unicode="&#x2013;" horiz-adv-x="500" +d="M30 284h440v-60h-440v60z" /> + <glyph glyph-name="dagger" unicode="&#x2020;" horiz-adv-x="500" +d="M209 674h82l-8 -211l174 7v-72l-174 8l8 -456h-82l8 456l-174 -8v72l174 -7z" /> + <glyph glyph-name="daggerdbl" unicode="&#x2021;" horiz-adv-x="500" +d="M210 674h80l-6 -201l173 7v-72l-173 8v-203l173 8v-72l-173 7l6 -206h-81l6 206l-172 -7v72l173 -8v203l-173 -8v72l173 -7z" /> + <glyph glyph-name="periodcentered" unicode="&#xb7;" horiz-adv-x="207" +d="M103 200h-1c-34 0 -58 27 -58 62c0 37 25 63 60 63s59 -26 59 -63c0 -35 -24 -62 -60 -62z" /> + <glyph glyph-name="periodcentered" unicode="&#x2219;" horiz-adv-x="207" +d="M103 200h-1c-34 0 -58 27 -58 62c0 37 25 63 60 63s59 -26 59 -63c0 -35 -24 -62 -60 -62z" /> + <glyph glyph-name="paragraph" unicode="&#xb6;" horiz-adv-x="512" +d="M293 -48h-62v313h-7c-79 0 -188 61 -190 190c-1 104 56 221 275 221c53 0 92 -3 117 -8v-716h-62v664h-71v-664z" /> + <glyph glyph-name="bullet" unicode="&#x2022;" horiz-adv-x="282" +d="M141 157h-1c-57 0 -104 46 -104 105c-1 58 47 105 105 105s105 -46 105 -105c0 -58 -47 -105 -105 -105z" /> + <glyph glyph-name="quotesinglbase" unicode="&#x201a;" horiz-adv-x="207" +d="M77 -111l-56 -6c21 59 48 162 59 234l90 10c-23 -84 -66 -192 -93 -238z" /> + <glyph glyph-name="quotedblbase" unicode="&#x201e;" horiz-adv-x="356" +d="M76 -111l-56 -6c22 59 48 162 59 234l90 10c-23 -84 -66 -192 -93 -238zM224 -111l-56 -6c21 59 48 162 59 234l90 10c-23 -84 -66 -192 -93 -238z" /> + <glyph glyph-name="quotedblright" unicode="&#x201d;" horiz-adv-x="354" +d="M93 682l90 10c-23 -84 -66 -192 -93 -238l-56 -6c22 59 48 162 59 234zM241 682l90 10c-23 -84 -66 -192 -93 -238l-56 -6c21 59 48 162 59 234z" /> + <glyph glyph-name="guillemotright" unicode="&#xbb;" horiz-adv-x="419" +d="M157 252l-134 184h71l133 -184l-133 -184h-70zM320 252l-134 184h71l133 -184l-133 -184h-70z" /> + <glyph glyph-name="ellipsis" unicode="&#x2026;" horiz-adv-x="1000" +d="M166 -11h-1c-34 0 -58 27 -58 63s25 63 60 63s59 -26 59 -63c0 -36 -24 -63 -60 -63zM499 -11h-1c-34 0 -58 27 -58 63s25 63 60 63s59 -26 59 -63c0 -36 -24 -63 -60 -63zM832 -11h-1c-34 0 -58 27 -58 63s25 63 60 63s59 -26 59 -63c0 -36 -24 -63 -60 -63z" /> + <glyph glyph-name="perthousand" unicode="&#x2030;" horiz-adv-x="1156" +d="M187 661h1c90 0 149 -70 149 -193c0 -137 -71 -205 -155 -205c-82 0 -151 65 -152 195c0 130 70 203 157 203zM184 608h-1c-54 0 -84 -65 -84 -146c-2 -83 30 -146 85 -146c58 0 84 62 84 147c0 80 -23 145 -84 145zM232 -12h-56l382 674h56zM611 392h1 +c90 0 149 -70 149 -194c0 -137 -71 -205 -155 -205c-82 0 -151 66 -152 196c0 130 70 203 157 203zM608 339h-1c-54 0 -84 -65 -84 -147c-2 -82 30 -146 85 -146c58 0 84 62 84 148c0 79 -23 145 -84 145zM976 392h1c90 0 149 -70 149 -194c0 -137 -71 -205 -155 -205 +c-82 0 -151 66 -152 196c0 130 70 203 157 203zM973 339h-1c-54 0 -84 -65 -84 -147c-2 -82 30 -146 85 -146c58 0 84 62 84 148c0 79 -23 145 -84 145z" /> + <glyph glyph-name="questiondown" unicode="&#xbf;" horiz-adv-x="406" +d="M237 488h1c34 0 58 -26 58 -63c0 -35 -23 -62 -59 -62c-35 0 -59 27 -59 62c0 37 24 63 59 63zM197 286h78l2 -26c6 -54 -12 -113 -62 -173c-45 -54 -70 -92 -70 -137c0 -51 32 -86 95 -86c36 0 76 12 102 31l23 -63c-33 -24 -90 -41 -143 -41c-115 0 -167 72 -167 148 +c0 67 38 117 86 173c44 53 60 97 57 148z" /> + <glyph glyph-name="grave" unicode="`" +d="M22 693h96l88 -143h-62z" /> + <glyph glyph-name="acute" unicode="&#xb4;" +d="M189 693h96l-122 -143h-62z" /> + <glyph glyph-name="circumflex" unicode="&#x2c6;" +d="M119 693h61l96 -143h-67l-58 94h-2l-58 -94h-66z" /> + <glyph glyph-name="tilde" unicode="&#x2dc;" +d="M75 567h-48c-2 65 25 104 68 104c22 0 39 -10 62 -22c16 -9 30 -17 43 -17c15 0 25 9 27 42h47c1 -66 -21 -101 -68 -101c-22 0 -41 10 -62 21c-20 12 -31 18 -43 18c-16 0 -24 -17 -26 -45z" /> + <glyph glyph-name="macron" unicode="&#xaf;" +d="M38 643h225v-57h-225v57z" /> + <glyph glyph-name="macron" unicode="&#x2c9;" +d="M38 643h225v-57h-225v57z" /> + <glyph glyph-name="breve" unicode="&#x2d8;" +d="M26 682h52c6 -39 31 -69 72 -69c48 0 69 35 72 69h52c0 -75 -49 -125 -124 -125c-88 0 -124 62 -124 125z" /> + <glyph glyph-name="dotaccent" unicode="&#x2d9;" +d="M140 570h-1c-29 0 -50 24 -50 52s23 51 51 51s49 -23 49 -51s-20 -52 -49 -52z" /> + <glyph glyph-name="dieresis" unicode="&#xa8;" +d="M57 570h-1c-28 0 -49 24 -49 51c0 28 22 51 51 51c27 0 48 -22 48 -51c0 -27 -20 -51 -49 -51zM243 570h-1c-29 0 -49 24 -49 51c0 28 22 51 50 51s49 -22 49 -51c0 -27 -20 -51 -49 -51z" /> + <glyph glyph-name="ring" unicode="&#x2da;" horiz-adv-x="400" +d="M201 723h1c60 0 99 -41 99 -94c0 -52 -43 -92 -100 -92c-60 0 -102 41 -102 92c0 52 40 94 102 94zM200 685h-1c-30 0 -49 -26 -49 -56c0 -27 20 -54 50 -54c32 0 52 25 52 55s-20 55 -52 55z" /> + <glyph glyph-name="cedilla" unicode="&#xb8;" +d="M135 3h55l-33 -53c36 -4 70 -30 70 -69c0 -59 -49 -81 -105 -81c-24 0 -51 7 -68 18l15 42c17 -9 37 -14 54 -14c22 0 44 8 43 31c0 26 -31 38 -78 42z" /> + <glyph glyph-name="hungarumlaut" unicode="&#x2dd;" +d="M123 693h86l-110 -136h-55zM267 693h86l-110 -136h-55z" /> + <glyph glyph-name="ogonek" unicode="&#x2db;" +d="M123 4h57c-15 -19 -53 -62 -53 -100c0 -31 20 -50 50 -50c18 0 34 4 46 10l14 -46c-21 -15 -56 -23 -80 -23c-56 0 -94 30 -94 86c0 50 36 97 60 123z" /> + <glyph glyph-name="caron" unicode="&#x2c7;" +d="M183 550h-63l-96 143h67l59 -95h2l59 95h66z" /> + <glyph glyph-name="emdash" unicode="&#x2014;" horiz-adv-x="1000" +d="M30 284h940v-60h-940v60z" /> + <glyph glyph-name="AE" unicode="&#xc6;" horiz-adv-x="788" +d="M89 0h-90l308 674h421v-73h-286l26 -215h251v-72h-240l30 -241h246v-73h-322l-30 237h-206zM226 308h168l-22 194c-4 31 -10 75 -12 109h-4c-12 -32 -28 -71 -43 -106z" /> + <glyph glyph-name="ordfeminine" unicode="&#xaa;" horiz-adv-x="346" +d="M304 267h-59l-5 42h-2c-20 -23 -55 -47 -102 -47c-66 0 -103 43 -103 95c0 71 72 116 201 113v10c0 16 -9 62 -75 62c-32 0 -62 -9 -85 -26l-16 42c29 21 71 33 114 33c100 0 127 -68 127 -140v-106c0 -27 2 -54 5 -78zM235 373v54c-63 2 -136 -10 -136 -66 +c0 -33 27 -51 58 -51c30 0 56 17 68 36c7 10 10 20 10 27z" /> + <glyph glyph-name="Lslash" unicode="&#x141;" horiz-adv-x="476" +d="M455 0h-376v269l-84 -61v67l84 62v337h88v-278l134 97v-68l-134 -97v-255h288v-73z" /> + <glyph glyph-name="Oslash" unicode="&#xd8;" horiz-adv-x="689" +d="M112 -43l-49 39l62 87c-56 61 -89 149 -89 250c0 213 134 352 311 352c62 0 120 -18 168 -53l59 81l53 -36l-62 -86c56 -61 87 -149 87 -248c0 -235 -145 -354 -307 -354c-63 0 -122 19 -170 54zM176 158l296 410c-34 29 -76 47 -127 47c-146 0 -220 -136 -220 -278 +c0 -74 19 -129 49 -180zM513 515l-295 -408c33 -31 71 -48 126 -48c140 0 219 129 219 281c0 57 -12 118 -47 175h-3z" /> + <glyph glyph-name="OE" unicode="&#x152;" horiz-adv-x="894" +d="M857 73v-73h-345c-20 0 -42 -3 -66 -6c-25 -2 -52 -5 -83 -5c-210 0 -327 150 -327 343c0 221 138 353 332 353c35 0 63 -3 88 -5c25 -3 46 -6 64 -6h322v-73h-277v-214h261v-72h-261v-242h292zM477 74v525c-26 9 -58 15 -107 15c-150 0 -242 -113 -242 -278 +c0 -164 92 -276 251 -276c37 0 76 5 98 14z" /> + <glyph glyph-name="ordmasculine" unicode="&#xba;" horiz-adv-x="355" +d="M179 591h1c96 0 157 -69 157 -162c-1 -115 -83 -167 -160 -167c-89 0 -159 64 -159 162c0 103 75 167 161 167zM177 541h-1c-63 0 -91 -62 -91 -116c0 -65 43 -113 93 -113c53 0 92 46 92 115c0 50 -27 114 -93 114z" /> + <glyph glyph-name="ae" unicode="&#xe6;" horiz-adv-x="773" +d="M734 233h-325c-3 -115 64 -176 155 -176c67 0 106 15 132 27l16 -62c-38 -20 -95 -33 -159 -33c-83 0 -156 38 -184 107h-3c-30 -67 -96 -107 -179 -107c-101 0 -151 67 -151 138c0 112 104 178 291 175v20c0 24 -14 108 -112 108c-46 0 -95 -16 -124 -36l-21 58 +c43 27 103 43 151 43c87 0 136 -40 156 -102h2c32 63 92 102 169 102c148 0 189 -143 189 -223c0 -15 -1 -30 -3 -39zM329 172v71c-93 2 -206 -14 -206 -109c0 -51 38 -80 84 -80c63 -1 103 38 117 83c3 11 5 23 5 35zM409 296h244c2 49 -25 137 -114 137 +c-88 0 -127 -81 -130 -137z" /> + <glyph glyph-name="dotlessi" unicode="&#x131;" horiz-adv-x="234" +d="M161 0h-88v484h88v-484z" /> + <glyph glyph-name="lslash" unicode="&#x142;" horiz-adv-x="242" +d="M165 0h-88v288l-68 -58v69l68 59v352h88v-285l71 61v-70l-71 -61v-355z" /> + <glyph glyph-name="oslash" unicode="&#xf8;" horiz-adv-x="549" +d="M276 495h1c43 0 86 -11 122 -34l42 60l39 -27l-43 -62c47 -46 74 -111 74 -186c0 -178 -123 -257 -236 -257c-45 0 -88 11 -123 34l-44 -61l-37 30l42 60c-46 43 -75 107 -75 187c0 161 106 256 238 256zM161 119l198 281c-22 19 -50 29 -85 29 +c-107 0 -150 -100 -150 -188c0 -42 10 -86 35 -121zM389 362l-198 -279c24 -20 51 -28 81 -28c92 0 153 79 153 188c0 33 -8 80 -34 118z" /> + <glyph glyph-name="oe" unicode="&#x153;" horiz-adv-x="863" +d="M824 227h-329c0 -110 68 -169 161 -169c60 0 97 13 130 27l16 -63c-39 -22 -104 -33 -157 -33c-84 0 -154 35 -192 114h-2c-36 -78 -113 -114 -187 -114c-128 0 -226 97 -226 250c0 158 102 256 232 256c82 0 152 -42 182 -116h2c36 78 102 116 177 116 +c156 0 196 -141 196 -227c0 -17 -1 -32 -3 -41zM271 429h-1c-105 0 -142 -105 -142 -188c0 -105 60 -186 143 -186c85 0 142 76 142 187c0 92 -43 187 -142 187zM494 290h248c1 54 -21 142 -118 142c-87 0 -124 -81 -130 -142z" /> + <glyph glyph-name="germandbls" unicode="&#xdf;" horiz-adv-x="548" +d="M161 0h-88v452c0 114 27 178 72 218c37 34 85 51 145 51c96 0 179 -59 179 -169c0 -34 -12 -65 -23 -82c-45 -19 -72 -47 -72 -81s20 -55 51 -87c40 -40 81 -82 81 -154c0 -94 -68 -159 -179 -159c-38 0 -77 6 -106 21l16 67c26 -13 54 -20 84 -20c64 0 98 38 98 84 +c0 42 -19 70 -54 103c-42 40 -78 78 -78 133c0 52 31 95 89 123c6 12 9 27 9 43c0 69 -43 109 -104 109c-77 0 -120 -54 -120 -196v-456z" /> + <glyph glyph-name="onesuperior" unicode="&#xb9;" horiz-adv-x="244" +d="M177 444h-70v328h-2l-72 -35l-11 52l94 44h61v-389z" /> + <glyph glyph-name="logicalnot" unicode="&#xac;" horiz-adv-x="596" +d="M40 399h516v-278h-64v218h-452v60z" /> + <glyph glyph-name="mu" unicode="&#xb5;" horiz-adv-x="553" +d="M403 76h-3c-20 -38 -67 -85 -139 -85c-44 0 -85 16 -106 54v-60c0 -54 2 -143 11 -183h-79c-10 30 -14 101 -14 178v504h88v-286c0 -75 31 -136 109 -136c58 0 99 41 115 80c5 13 8 29 8 46v296h88v-350c0 -54 10 -75 46 -77l-7 -64c-11 -3 -16 -4 -31 -4 +c-43 0 -78 24 -86 87z" /> + <glyph glyph-name="trademark" unicode="&#x2122;" horiz-adv-x="619" +d="M31 674h227v-45h-87v-227h-54v227h-86v45zM606 402h-54l-10 160c-1 21 -1 46 -2 76h-3c-7 -24 -15 -56 -23 -81l-49 -151h-56l-48 155c-5 20 -14 53 -20 77h-3c0 -25 -1 -52 -2 -76l-10 -160h-52l20 272h82l46 -133c7 -21 12 -41 18 -69h2c6 24 13 48 18 67l47 135h79z +" /> + <glyph glyph-name="Eth" unicode="&#xd0;" horiz-adv-x="671" +d="M-2 307v70h82v291c54 8 117 14 186 14c124 0 214 -28 272 -83c61 -55 96 -135 96 -246s-35 -201 -97 -263c-64 -63 -168 -97 -298 -97c-63 0 -114 2 -159 7v307h-82zM348 377v-70h-180v-240c22 -4 54 -4 87 -4c187 0 287 103 287 289c1 162 -89 261 -272 261 +c-45 0 -79 -4 -102 -9v-227h180z" /> + <glyph glyph-name="onehalf" unicode="&#xbd;" horiz-adv-x="759" +d="M184 267h-70v328h-2l-72 -35l-11 52l94 44h61v-389zM175 -11h-56l379 672h56zM440 0v37l63 59c83 76 126 123 126 174c0 38 -24 69 -76 69c-35 0 -65 -17 -84 -31l-21 46c27 22 72 41 123 41c94 0 132 -59 132 -112c0 -75 -57 -130 -133 -198l-30 -28v-2h170v-55h-270z +" /> + <glyph glyph-name="plusminus" unicode="&#xb1;" horiz-adv-x="596" +d="M266 571h64v-194h226v-60h-226v-200h-64v200h-226v60h226v194zM40 60h516v-60h-516v60z" /> + <glyph glyph-name="Thorn" unicode="&#xde;" horiz-adv-x="531" +d="M76 0v674h86v-131c27 5 60 7 96 7c79 0 137 -18 178 -55c35 -32 55 -79 55 -130c0 -143 -107 -214 -253 -214c-28 0 -55 2 -76 5v-156h-86zM162 473v-246c23 -5 49 -6 75 -6c108 0 167 52 167 134c0 87 -63 126 -154 126c-40 0 -72 -4 -88 -8z" /> + <glyph glyph-name="onequarter" unicode="&#xbc;" horiz-adv-x="759" +d="M198 267h-70v328h-2l-72 -35l-11 52l94 44h61v-389zM195 -11h-57l380 672h56zM663 0h-66v103h-200v39l193 253h73v-243h60v-49h-60v-103zM597 152v119c0 23 2 44 3 62h-2c-13 -21 -22 -38 -33 -54l-96 -126l1 -1h127z" /> + <glyph glyph-name="divide" unicode="&#xf7;" horiz-adv-x="596" +d="M298 387h-1c-31 0 -52 24 -52 55c0 33 22 56 53 56c32 0 53 -23 53 -56c0 -31 -21 -55 -53 -55zM556 237h-516v60h516v-60zM298 36h-1c-31 0 -52 24 -52 55c0 33 22 56 53 56c32 0 53 -23 53 -56c0 -31 -21 -55 -53 -55z" /> + <glyph glyph-name="brokenbar" unicode="&#xa6;" horiz-adv-x="239" +d="M86 174h67v-350h-67v350zM86 674h67v-350h-67v350z" /> + <glyph glyph-name="degree" unicode="&#xb0;" horiz-adv-x="318" +d="M162 685h1c82 0 131 -62 131 -130c0 -80 -65 -133 -134 -133c-78 0 -131 59 -131 129c0 76 59 134 133 134zM161 638h-1c-51 0 -77 -45 -77 -87c0 -46 33 -82 78 -82c46 0 79 36 79 85c0 37 -22 84 -79 84z" /> + <glyph glyph-name="thorn" unicode="&#xfe;" horiz-adv-x="569" +d="M73 670h88v-262h2c32 52 85 87 164 87c114 1 205 -96 205 -247c0 -177 -111 -259 -220 -259c-64 0 -118 28 -149 76h-2v-263h-88v868zM161 281v-90c0 -14 3 -31 9 -44c20 -55 70 -89 129 -89c86 0 144 73 144 189c0 96 -52 178 -142 178c-57 0 -110 -36 -131 -95 +c-4 -14 -9 -34 -9 -49z" /> + <glyph glyph-name="threequarters" unicode="&#xbe;" horiz-adv-x="759" +d="M67 583l-18 46c23 16 65 32 114 32c87 0 123 -46 123 -94c0 -40 -29 -73 -76 -90v-2c54 -7 93 -46 93 -97c0 -61 -56 -116 -158 -116c-48 0 -92 13 -115 28l18 49c16 -10 56 -25 93 -25c62 0 89 35 88 66c0 51 -53 71 -107 71h-27v46h28c37 0 91 17 91 63 +c0 24 -18 49 -64 49c-36 0 -68 -16 -83 -26zM232 -11h-57l380 672h56zM674 0h-66v103h-200v39l193 253h73v-243h60v-49h-60v-103zM608 152v119c0 24 2 44 3 62h-2c-13 -21 -22 -38 -33 -54l-97 -126l1 -1h128z" /> + <glyph glyph-name="twosuperior" unicode="&#xb2;" horiz-adv-x="311" +d="M12 444v37l63 58c83 76 126 123 126 174c0 38 -24 69 -76 69c-35 0 -65 -17 -84 -31l-21 46c27 22 72 41 123 41c94 0 132 -59 132 -112c0 -75 -57 -130 -133 -197l-30 -28v-2h170v-55h-270z" /> + <glyph glyph-name="registered" unicode="&#xae;" horiz-adv-x="419" +d="M184 499v-65h-38v164c15 2 36 5 63 5c31 0 45 -5 56 -13c10 -7 17 -19 17 -35c0 -20 -15 -33 -34 -39v-2c16 -5 24 -18 29 -40c5 -25 9 -34 12 -40h-40c-5 6 -8 20 -13 40c-3 17 -13 25 -34 25h-18zM185 573v-47h18c21 0 38 7 38 24c0 15 -11 25 -35 25 +c-10 0 -17 -1 -21 -2zM210 683h1c93 0 167 -72 167 -164s-74 -165 -168 -165s-169 73 -169 165s75 164 169 164zM210 650h-1c-71 0 -126 -59 -126 -131c0 -73 55 -131 128 -131c71 -1 125 58 125 130c0 73 -54 132 -126 132z" /> + <glyph glyph-name="minus" unicode="&#x2212;" horiz-adv-x="596" +d="M40 297h516v-60h-516v60z" /> + <glyph glyph-name="eth" unicode="&#xf0;" horiz-adv-x="541" +d="M267 55h1c87 0 143 78 143 188c0 63 -9 103 -34 134c-22 25 -55 47 -106 47c-104 0 -143 -107 -143 -187c0 -102 59 -182 139 -182zM116 507l-19 43l116 55c-29 22 -67 42 -104 60l39 55c47 -22 97 -50 140 -81l127 61l22 -44l-106 -50c55 -45 98 -100 127 -159 +c28 -56 43 -120 43 -195c0 -185 -119 -263 -234 -263c-131 0 -229 96 -229 247c0 155 109 247 223 248c38 0 74 -8 113 -43l2 3c-29 47 -67 90 -118 129z" /> + <glyph glyph-name="multiply" unicode="&#xd7;" horiz-adv-x="596" +d="M40 483l44 44l214 -219l214 219l44 -44l-214 -219l214 -220l-44 -44l-214 219l-214 -219l-44 44l215 220z" /> + <glyph glyph-name="threesuperior" unicode="&#xb3;" horiz-adv-x="305" +d="M45 760l-17 47c23 15 66 31 115 31c86 0 122 -46 122 -94c0 -40 -29 -73 -77 -90v-2c54 -7 93 -46 93 -96c0 -62 -56 -117 -158 -117c-48 0 -92 13 -115 28l18 50c16 -11 56 -26 93 -26c62 0 89 36 88 67c0 50 -53 70 -106 70h-27v46h28c37 0 91 17 91 63 +c0 24 -18 49 -63 49c-36 0 -69 -16 -85 -26z" /> + <glyph glyph-name="copyright" unicode="&#xa9;" horiz-adv-x="677" +d="M340 648h1c168 0 300 -138 300 -308c0 -172 -132 -310 -301 -310c-170 0 -304 138 -304 310c0 170 134 308 304 308zM340 607h-1c-143 0 -253 -118 -253 -270c0 -149 110 -266 254 -266c141 -2 251 117 251 269c0 149 -110 267 -251 267zM474 493l-12 -39 +c-13 7 -50 23 -97 23c-94 0 -140 -60 -140 -140c0 -78 49 -141 141 -141c40 0 78 11 101 26l12 -38c-35 -23 -81 -31 -123 -31c-116 0 -183 80 -183 181c0 114 90 186 191 186c52 0 96 -15 110 -27z" /> + <glyph glyph-name="Aacute" unicode="&#xc1;" horiz-adv-x="612" +d="M424 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM203 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122zM348 827h106l-128 -117h-71z" /> + <glyph glyph-name="Acircumflex" unicode="&#xc2;" horiz-adv-x="612" +d="M424 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM203 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122zM276 824h67l105 -114h-74l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="Adieresis" unicode="&#xc4;" horiz-adv-x="612" +d="M424 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM203 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122zM217 719h-1c-28 0 -48 23 -48 51c0 27 21 50 49 50s48 -22 48 -50s-19 -51 -48 -51zM402 719h-1c-28 0 -48 23 -48 51c0 27 21 50 50 50 +c28 0 48 -22 48 -50s-19 -51 -49 -51z" /> + <glyph glyph-name="Agrave" unicode="&#xc0;" horiz-adv-x="612" +d="M424 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM203 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122zM160 827h106l93 -116h-71z" /> + <glyph glyph-name="Aring" unicode="&#xc5;" horiz-adv-x="612" +d="M424 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM203 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122zM307 879h1c61 0 99 -40 99 -91c0 -50 -41 -88 -100 -88c-60 0 -100 39 -100 88c0 50 38 91 100 91zM306 843h-1c-29 0 -47 -26 -47 -55 +c0 -26 19 -51 48 -51c30 0 49 23 49 53c0 29 -19 53 -49 53z" /> + <glyph glyph-name="Atilde" unicode="&#xc3;" horiz-adv-x="612" +d="M424 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM203 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122zM232 715h-47c-1 61 25 102 68 102c22 0 38 -9 59 -20c16 -9 32 -18 48 -18c15 0 24 7 27 39h46c1 -63 -21 -97 -67 -97 +c-21 0 -39 8 -61 19c-19 10 -32 19 -47 19c-16 0 -23 -17 -26 -44z" /> + <glyph glyph-name="Ccedilla" unicode="&#xc7;" horiz-adv-x="585" +d="M530 91l17 -69c-30 -16 -92 -31 -175 -32l-25 -40c38 -7 70 -34 70 -75c0 -59 -51 -81 -103 -81c-26 0 -53 7 -71 17l14 45c15 -9 35 -14 55 -14c23 0 43 10 43 31c0 26 -31 38 -78 43l42 77c-165 19 -283 135 -283 338c0 211 143 353 353 353c83 0 137 -18 159 -29 +l-21 -72c-33 16 -80 28 -136 28c-158 0 -263 -101 -263 -278c0 -165 95 -270 259 -270c53 0 107 11 143 28z" /> + <glyph glyph-name="Eacute" unicode="&#xc9;" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261zM303 827h106l-128 -117h-71z" /> + <glyph glyph-name="Ecircumflex" unicode="&#xca;" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261zM223 824h67l105 -114h-74l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="Edieresis" unicode="&#xcb;" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261zM163 721h-1c-28 0 -48 23 -48 51c0 27 21 50 49 50s48 -22 48 -50s-19 -51 -48 -51zM348 721h-1c-28 0 -48 23 -48 51c0 27 21 50 50 50c28 0 48 -22 48 -50s-19 -51 -49 -51z" /> + <glyph glyph-name="Egrave" unicode="&#xc8;" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261zM120 827h106l93 -116h-71z" /> + <glyph glyph-name="Iacute" unicode="&#xcd;" horiz-adv-x="239" +d="M75 674h88v-674h-88v674zM159 827h106l-128 -117h-71z" /> + <glyph glyph-name="Icircumflex" unicode="&#xce;" horiz-adv-x="239" +d="M75 674h88v-674h-88v674zM85 824h67l105 -114h-74l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="Idieresis" unicode="&#xcf;" horiz-adv-x="239" +d="M75 674h88v-674h-88v674zM28 721h-1c-28 0 -48 23 -48 51c0 27 21 50 49 50s48 -22 48 -50s-19 -51 -48 -51zM213 721h-1c-28 0 -48 23 -48 51c0 27 21 50 50 50c28 0 48 -22 48 -50s-19 -51 -49 -51z" /> + <glyph glyph-name="Igrave" unicode="&#xcc;" horiz-adv-x="239" +d="M75 674h88v-674h-88v674zM-26 827h106l93 -116h-71z" /> + <glyph glyph-name="Ntilde" unicode="&#xd1;" horiz-adv-x="658" +d="M158 0h-82v674h96l215 -341c49 -79 89 -150 120 -219l3 1c-8 90 -10 172 -10 276v283h82v-674h-88l-214 342c-47 75 -92 152 -125 225l-3 -1c5 -85 6 -166 6 -278v-288zM257 715h-47c-1 61 25 102 68 102c22 0 38 -9 59 -20c16 -9 32 -18 48 -18c15 0 24 7 27 39h46 +c1 -63 -21 -97 -67 -97c-21 0 -39 8 -61 19c-19 10 -32 19 -47 19c-16 0 -23 -17 -26 -44z" /> + <glyph glyph-name="Oacute" unicode="&#xd3;" horiz-adv-x="689" +d="M340 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM343 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273zM385 830h106l-128 -117h-71z" /> + <glyph glyph-name="Ocircumflex" unicode="&#xd4;" horiz-adv-x="689" +d="M340 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM343 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273zM310 827h67l105 -114h-74l-63 69h-2l-64 -69 +h-71z" /> + <glyph glyph-name="Odieresis" unicode="&#xd6;" horiz-adv-x="689" +d="M340 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM343 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273zM253 721h-1c-28 0 -48 23 -48 51 +c0 27 21 50 49 50s48 -22 48 -50s-19 -51 -48 -51zM438 721h-1c-28 0 -48 23 -48 51c0 27 21 50 50 50c28 0 48 -22 48 -50s-19 -51 -49 -51z" /> + <glyph glyph-name="Ograve" unicode="&#xd2;" horiz-adv-x="689" +d="M340 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM343 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273zM200 830h106l93 -116h-71z" /> + <glyph glyph-name="Otilde" unicode="&#xd5;" horiz-adv-x="689" +d="M340 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM343 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273zM268 717h-47c-1 61 25 102 68 102 +c22 0 38 -9 59 -20c16 -9 32 -18 48 -18c15 0 24 7 27 39h46c1 -63 -21 -97 -67 -97c-21 0 -39 8 -61 19c-19 10 -32 19 -47 19c-16 0 -23 -17 -26 -44z" /> + <glyph glyph-name="Scaron" unicode="&#x160;" horiz-adv-x="493" +d="M42 34l23 72c39 -24 95 -43 155 -43c89 0 141 46 141 114c0 63 -36 100 -127 134c-110 38 -178 96 -178 190c0 105 87 183 218 183c68 0 119 -16 148 -32l-24 -72c-21 13 -66 32 -127 32c-92 0 -127 -55 -127 -101c0 -62 41 -93 134 -129c114 -45 171 -99 171 -198 +c0 -103 -76 -194 -235 -194c-65 0 -136 20 -172 44zM294 713h-67l-105 114h74l64 -69h2l63 69h71z" /> + <glyph glyph-name="Uacute" unicode="&#xda;" horiz-adv-x="647" +d="M75 674h88v-400c0 -150 67 -214 157 -214c99 0 164 66 164 214v400h88v-394c0 -207 -109 -291 -255 -291c-138 0 -242 78 -242 288v397zM367 827h106l-128 -117h-71z" /> + <glyph glyph-name="Ucircumflex" unicode="&#xdb;" horiz-adv-x="647" +d="M75 674h88v-400c0 -150 67 -214 157 -214c99 0 164 66 164 214v400h88v-394c0 -207 -109 -291 -255 -291c-138 0 -242 78 -242 288v397zM295 824h67l105 -114h-74l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="Udieresis" unicode="&#xdc;" horiz-adv-x="647" +d="M75 674h88v-400c0 -150 67 -214 157 -214c99 0 164 66 164 214v400h88v-394c0 -207 -109 -291 -255 -291c-138 0 -242 78 -242 288v397zM234 721h-1c-28 0 -48 23 -48 51c0 27 21 50 49 50s48 -22 48 -50s-19 -51 -48 -51zM419 721h-1c-28 0 -48 23 -48 51 +c0 27 21 50 50 50c28 0 48 -22 48 -50s-19 -51 -49 -51z" /> + <glyph glyph-name="Ugrave" unicode="&#xd9;" horiz-adv-x="647" +d="M75 674h88v-400c0 -150 67 -214 157 -214c99 0 164 66 164 214v400h88v-394c0 -207 -109 -291 -255 -291c-138 0 -242 78 -242 288v397zM184 827h106l93 -116h-71z" /> + <glyph glyph-name="Yacute" unicode="&#xdd;" horiz-adv-x="541" +d="M314 0h-88v286l-214 388h100l95 -186c25 -51 46 -92 67 -139h2c18 44 42 88 68 139l97 186h98l-225 -387v-287zM321 822h106l-128 -117h-71z" /> + <glyph glyph-name="Ydieresis" unicode="&#x178;" horiz-adv-x="541" +d="M314 0h-88v286l-214 388h100l95 -186c25 -51 46 -92 67 -139h2c18 44 42 88 68 139l97 186h98l-225 -387v-287zM188 714h-1c-28 0 -48 23 -48 51c0 27 21 50 49 50s48 -22 48 -50s-19 -51 -48 -51zM373 714h-1c-28 0 -48 23 -48 51c0 27 21 50 50 50c28 0 48 -22 48 -50 +s-19 -51 -49 -51z" /> + <glyph glyph-name="Zcaron" unicode="&#x17d;" horiz-adv-x="553" +d="M30 0v51l374 547v3h-342v73h455v-53l-372 -545v-3h377v-73h-492zM322 710h-67l-105 114h74l64 -69h2l63 69h71z" /> + <glyph glyph-name="aacute" unicode="&#xe1;" horiz-adv-x="482" +d="M414 297v-181c0 -42 2 -83 7 -116h-79l-8 61h-3c-26 -38 -79 -72 -148 -72c-98 0 -148 69 -148 139c0 117 104 181 291 180v10c0 40 -11 113 -110 112c-46 0 -93 -13 -127 -36l-20 59c40 25 99 42 160 42c149 0 185 -101 185 -198zM328 163v84c-96 2 -205 -15 -205 -109 +c0 -58 38 -84 82 -84c64 0 105 40 119 81c3 9 4 19 4 28zM275 693h96l-122 -143h-62z" /> + <glyph glyph-name="acircumflex" unicode="&#xe2;" horiz-adv-x="482" +d="M414 297v-181c0 -42 2 -83 7 -116h-79l-8 61h-3c-26 -38 -79 -72 -148 -72c-98 0 -148 69 -148 139c0 117 104 181 291 180v10c0 40 -11 113 -110 112c-46 0 -93 -13 -127 -36l-20 59c40 25 99 42 160 42c149 0 185 -101 185 -198zM328 163v84c-96 2 -205 -15 -205 -109 +c0 -58 38 -84 82 -84c64 0 105 40 119 81c3 9 4 19 4 28zM206 693h61l96 -143h-67l-58 94h-2l-58 -94h-66z" /> + <glyph glyph-name="adieresis" unicode="&#xe4;" horiz-adv-x="482" +d="M414 297v-181c0 -42 2 -83 7 -116h-79l-8 61h-3c-26 -38 -79 -72 -148 -72c-98 0 -148 69 -148 139c0 117 104 181 291 180v10c0 40 -11 113 -110 112c-46 0 -93 -13 -127 -36l-20 59c40 25 99 42 160 42c149 0 185 -101 185 -198zM328 163v84c-96 2 -205 -15 -205 -109 +c0 -58 38 -84 82 -84c64 0 105 40 119 81c3 9 4 19 4 28zM148 570h-1c-28 0 -49 24 -49 51c0 28 22 51 51 51c27 0 48 -22 48 -51c0 -27 -20 -51 -49 -51zM334 570h-1c-29 0 -49 24 -49 51c0 28 22 51 50 51s49 -22 49 -51c0 -27 -20 -51 -49 -51z" /> + <glyph glyph-name="agrave" unicode="&#xe0;" horiz-adv-x="482" +d="M414 297v-181c0 -42 2 -83 7 -116h-79l-8 61h-3c-26 -38 -79 -72 -148 -72c-98 0 -148 69 -148 139c0 117 104 181 291 180v10c0 40 -11 113 -110 112c-46 0 -93 -13 -127 -36l-20 59c40 25 99 42 160 42c149 0 185 -101 185 -198zM328 163v84c-96 2 -205 -15 -205 -109 +c0 -58 38 -84 82 -84c64 0 105 40 119 81c3 9 4 19 4 28zM95 693h96l88 -143h-62z" /> + <glyph glyph-name="aring" unicode="&#xe5;" horiz-adv-x="482" +d="M414 297v-181c0 -42 2 -83 7 -116h-79l-8 61h-3c-26 -38 -79 -72 -148 -72c-98 0 -148 69 -148 139c0 117 104 181 291 180v10c0 40 -11 113 -110 112c-46 0 -93 -13 -127 -36l-20 59c40 25 99 42 160 42c149 0 185 -101 185 -198zM328 163v84c-96 2 -205 -15 -205 -109 +c0 -58 38 -84 82 -84c64 0 105 40 119 81c3 9 4 19 4 28zM240 723h1c60 0 99 -41 99 -94c0 -52 -43 -92 -100 -92c-60 0 -102 41 -102 92c0 52 40 94 102 94zM239 685h-1c-30 0 -49 -26 -49 -56c0 -27 20 -54 50 -54c32 0 52 25 52 55s-20 55 -52 55z" /> + <glyph glyph-name="atilde" unicode="&#xe3;" horiz-adv-x="482" +d="M414 297v-181c0 -42 2 -83 7 -116h-79l-8 61h-3c-26 -38 -79 -72 -148 -72c-98 0 -148 69 -148 139c0 117 104 181 291 180v10c0 40 -11 113 -110 112c-46 0 -93 -13 -127 -36l-20 59c40 25 99 42 160 42c149 0 185 -101 185 -198zM328 163v84c-96 2 -205 -15 -205 -109 +c0 -58 38 -84 82 -84c64 0 105 40 119 81c3 9 4 19 4 28zM163 567h-48c-2 65 25 104 68 104c22 0 39 -10 62 -22c16 -9 30 -17 43 -17c15 0 25 9 27 42h47c1 -66 -21 -101 -68 -101c-22 0 -41 10 -62 21c-20 12 -31 18 -43 18c-16 0 -24 -17 -26 -45z" /> + <glyph glyph-name="ccedilla" unicode="&#xe7;" horiz-adv-x="447" +d="M403 83l15 -65c-20 -11 -66 -27 -126 -28l-25 -40c37 -7 70 -32 70 -73c0 -60 -50 -83 -104 -83c-23 0 -51 6 -70 17l15 45c15 -9 35 -14 55 -14c23 0 43 8 43 32c-1 26 -31 37 -78 42l42 77c-123 15 -202 110 -202 244c0 149 102 258 260 258c52 0 98 -13 122 -26 +l-20 -67c-21 11 -54 23 -102 23c-111 0 -171 -83 -171 -184c0 -112 72 -181 168 -181c50 0 84 13 108 23z" /> + <glyph glyph-name="eacute" unicode="&#xe9;" horiz-adv-x="501" +d="M462 226h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63c-31 -14 -85 -31 -162 -31c-148 0 -238 99 -238 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -31 -3 -41zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143zM304 693h96 +l-122 -143h-62z" /> + <glyph glyph-name="ecircumflex" unicode="&#xea;" horiz-adv-x="501" +d="M462 226h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63c-31 -14 -85 -31 -162 -31c-148 0 -238 99 -238 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -31 -3 -41zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143zM233 693h61 +l96 -143h-67l-58 94h-2l-58 -94h-66z" /> + <glyph glyph-name="edieresis" unicode="&#xeb;" horiz-adv-x="501" +d="M462 226h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63c-31 -14 -85 -31 -162 -31c-148 0 -238 99 -238 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -31 -3 -41zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143zM176 570h-1 +c-28 0 -49 24 -49 51c0 28 22 51 51 51c27 0 48 -22 48 -51c0 -27 -20 -51 -49 -51zM362 570h-1c-29 0 -49 24 -49 51c0 28 22 51 50 51s49 -22 49 -51c0 -27 -20 -51 -49 -51z" /> + <glyph glyph-name="egrave" unicode="&#xe8;" horiz-adv-x="501" +d="M462 226h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63c-31 -14 -85 -31 -162 -31c-148 0 -238 99 -238 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -31 -3 -41zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143zM136 693h96 +l88 -143h-62z" /> + <glyph glyph-name="iacute" unicode="&#xed;" horiz-adv-x="234" +d="M161 0h-88v484h88v-484zM155 693h96l-122 -143h-62z" /> + <glyph glyph-name="icircumflex" unicode="&#xee;" horiz-adv-x="234" +d="M161 0h-88v484h88v-484zM86 693h61l96 -143h-67l-58 94h-2l-58 -94h-66z" /> + <glyph glyph-name="idieresis" unicode="&#xef;" horiz-adv-x="234" +d="M161 0h-88v484h88v-484zM24 570h-1c-28 0 -49 24 -49 51c0 28 22 51 51 51c27 0 48 -22 48 -51c0 -27 -20 -51 -49 -51zM210 570h-1c-29 0 -49 24 -49 51c0 28 22 51 50 51s49 -22 49 -51c0 -27 -20 -51 -49 -51z" /> + <glyph glyph-name="igrave" unicode="&#xec;" horiz-adv-x="234" +d="M161 0h-88v484h88v-484zM-28 693h96l88 -143h-62z" /> + <glyph glyph-name="ntilde" unicode="&#xf1;" horiz-adv-x="555" +d="M73 0v353c0 51 -1 91 -4 131h78l5 -79h2c24 45 80 90 160 90c67 0 171 -40 171 -206v-289h-88v279c0 78 -29 144 -112 144c-57 0 -102 -41 -118 -90c-4 -11 -6 -27 -6 -41v-292h-88zM203 567h-48c-2 65 25 104 68 104c22 0 39 -10 62 -22c16 -9 30 -17 43 -17 +c15 0 25 9 27 42h47c1 -66 -21 -101 -68 -101c-22 0 -41 10 -62 21c-20 12 -31 18 -43 18c-16 0 -24 -17 -26 -45z" /> + <glyph glyph-name="oacute" unicode="&#xf3;" horiz-adv-x="549" +d="M271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186zM310 693h96l-122 -143h-62z" /> + <glyph glyph-name="ocircumflex" unicode="&#xf4;" horiz-adv-x="549" +d="M271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186zM244 693h61l96 -143h-67l-58 94h-2 +l-58 -94h-66z" /> + <glyph glyph-name="odieresis" unicode="&#xf6;" horiz-adv-x="549" +d="M271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186zM182 570h-1c-28 0 -49 24 -49 51 +c0 28 22 51 51 51c27 0 48 -22 48 -51c0 -27 -20 -51 -49 -51zM368 570h-1c-29 0 -49 24 -49 51c0 28 22 51 50 51s49 -22 49 -51c0 -27 -20 -51 -49 -51z" /> + <glyph glyph-name="ograve" unicode="&#xf2;" horiz-adv-x="549" +d="M271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186zM146 693h96l88 -143h-62z" /> + <glyph glyph-name="otilde" unicode="&#xf5;" horiz-adv-x="549" +d="M271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186zM200 567h-48c-2 65 25 104 68 104 +c22 0 39 -10 62 -22c16 -9 30 -17 43 -17c15 0 25 9 27 42h47c1 -66 -21 -101 -68 -101c-22 0 -41 10 -62 21c-20 12 -31 18 -43 18c-16 0 -24 -17 -26 -45z" /> + <glyph glyph-name="scaron" unicode="&#x161;" horiz-adv-x="396" +d="M40 24l21 66c27 -16 73 -34 117 -34c63 0 93 31 93 72c0 42 -25 64 -89 88c-88 32 -129 80 -129 137c0 78 64 142 167 142c49 0 92 -13 118 -30l-21 -63c-19 11 -54 28 -99 28c-52 0 -80 -30 -80 -66c0 -40 28 -58 91 -83c83 -31 127 -73 127 -145 +c0 -86 -67 -146 -180 -146c-53 0 -102 14 -136 34zM235 550h-63l-96 143h67l59 -95h2l59 95h66z" /> + <glyph glyph-name="uacute" unicode="&#xfa;" horiz-adv-x="551" +d="M478 484v-351c0 -51 1 -95 4 -133h-78l-5 79h-2c-22 -39 -74 -90 -160 -90c-76 0 -167 43 -167 212v283h88v-267c0 -92 29 -155 108 -155c59 0 100 41 116 81c5 12 8 28 8 45v296h88zM322 693h96l-122 -143h-62z" /> + <glyph glyph-name="ucircumflex" unicode="&#xfb;" horiz-adv-x="551" +d="M478 484v-351c0 -51 1 -95 4 -133h-78l-5 79h-2c-22 -39 -74 -90 -160 -90c-76 0 -167 43 -167 212v283h88v-267c0 -92 29 -155 108 -155c59 0 100 41 116 81c5 12 8 28 8 45v296h88zM245 693h61l96 -143h-67l-58 94h-2l-58 -94h-66z" /> + <glyph glyph-name="udieresis" unicode="&#xfc;" horiz-adv-x="551" +d="M478 484v-351c0 -51 1 -95 4 -133h-78l-5 79h-2c-22 -39 -74 -90 -160 -90c-76 0 -167 43 -167 212v283h88v-267c0 -92 29 -155 108 -155c59 0 100 41 116 81c5 12 8 28 8 45v296h88zM186 570h-1c-28 0 -49 24 -49 51c0 28 22 51 51 51c27 0 48 -22 48 -51 +c0 -27 -20 -51 -49 -51zM372 570h-1c-29 0 -49 24 -49 51c0 28 22 51 50 51s49 -22 49 -51c0 -27 -20 -51 -49 -51z" /> + <glyph glyph-name="ugrave" unicode="&#xf9;" horiz-adv-x="551" +d="M478 484v-351c0 -51 1 -95 4 -133h-78l-5 79h-2c-22 -39 -74 -90 -160 -90c-76 0 -167 43 -167 212v283h88v-267c0 -92 29 -155 108 -155c59 0 100 41 116 81c5 12 8 28 8 45v296h88zM141 693h96l88 -143h-62z" /> + <glyph glyph-name="yacute" unicode="&#xfd;" horiz-adv-x="471" +d="M9 484h96l105 -286c12 -32 24 -70 32 -99h2c9 29 19 66 31 101l96 284h93l-132 -345c-63 -166 -106 -250 -166 -303c-44 -37 -86 -52 -108 -56l-22 73c22 7 51 21 77 43c24 19 53 53 74 98c4 9 7 16 7 21s-2 12 -7 23zM285 693h96l-122 -143h-62z" /> + <glyph glyph-name="ydieresis" unicode="&#xff;" horiz-adv-x="471" +d="M9 484h96l105 -286c12 -32 24 -70 32 -99h2c9 29 19 66 31 101l96 284h93l-132 -345c-63 -166 -106 -250 -166 -303c-44 -37 -86 -52 -108 -56l-22 73c22 7 51 21 77 43c24 19 53 53 74 98c4 9 7 16 7 21s-2 12 -7 23zM155 570h-1c-28 0 -49 24 -49 51c0 28 22 51 51 51 +c27 0 48 -22 48 -51c0 -27 -20 -51 -49 -51zM341 570h-1c-29 0 -49 24 -49 51c0 28 22 51 50 51s49 -22 49 -51c0 -27 -20 -51 -49 -51z" /> + <glyph glyph-name="zcaron" unicode="&#x17e;" horiz-adv-x="428" +d="M18 0v51l219 285c22 27 41 50 64 76v2h-263v70h369v-55l-217 -282c-20 -26 -40 -51 -62 -75v-2h283v-70h-393zM260 550h-63l-96 143h67l59 -95h2l59 95h66z" /> + <glyph glyph-name="dollarsuperior" unicode="&#xf6e4;" horiz-adv-x="317" +d="M179 392h-45v59c-38 1 -77 12 -99 27l16 50c24 -15 57 -27 94 -27c42 0 69 21 69 51s-21 46 -68 64c-67 24 -106 52 -106 106c0 51 36 90 97 100v59h45v-56c36 -1 65 -11 83 -21l-16 -49c-13 7 -41 21 -82 21c-46 0 -61 -24 -61 -46c0 -27 20 -40 76 -61 +c67 -25 98 -56 98 -111c0 -49 -35 -94 -101 -104v-62z" /> + <glyph glyph-name="parenleftsuperior" unicode="&#x207d;" horiz-adv-x="180" +d="M117 868h51c-40 -57 -72 -136 -72 -242s33 -183 72 -241h-51c-36 48 -77 125 -77 241s41 194 77 242z" /> + <glyph glyph-name="parenrightsuperior" unicode="&#x207e;" horiz-adv-x="180" +d="M64 385h-51c39 58 72 136 72 242s-32 183 -72 241h51c36 -48 77 -125 77 -241c0 -115 -41 -193 -77 -242z" /> + <glyph glyph-name="zerooldstyle" unicode="&#xf730;" horiz-adv-x="530" +d="M265 -11h-1c-123 0 -224 92 -224 253c0 158 100 254 225 254c124 0 225 -93 225 -254c0 -157 -100 -253 -225 -253zM265 56h1c87 0 139 79 139 186c0 108 -52 187 -140 187s-140 -79 -140 -187c0 -107 52 -186 140 -186z" /> + <glyph glyph-name="oneoldstyle" unicode="&#xf731;" horiz-adv-x="362" +d="M263 0h-84v408h-2l-135 -62l-16 66l164 73h73v-485z" /> + <glyph glyph-name="twooldstyle" unicode="&#xf732;" horiz-adv-x="448" +d="M420 0h-396v48l49 34c150 99 224 167 224 248c0 65 -45 98 -107 98c-52 0 -102 -24 -136 -49l-24 57c36 27 101 62 182 62c101 0 173 -57 173 -156c0 -93 -72 -162 -177 -236l-51 -37v-3c25 3 56 4 82 4h181v-70z" /> + <glyph glyph-name="threeoldstyle" unicode="&#xf733;" horiz-adv-x="433" +d="M18 -94l10 65c25 -8 67 -16 109 -16c99 0 169 48 169 121c0 63 -60 102 -152 102c-23 0 -43 -1 -55 -2l-2 64l19 1c93 7 163 44 163 106c0 54 -40 80 -105 80c-51 0 -99 -21 -123 -34l-18 58c31 21 94 45 160 45c102 0 174 -51 174 -134c0 -68 -50 -119 -118 -138v-3 +c79 -11 147 -59 147 -144c0 -115 -116 -191 -251 -191c-52 0 -105 10 -127 20z" /> + <glyph glyph-name="fouroldstyle" unicode="&#xf734;" horiz-adv-x="502" +d="M483 50h-91v-166h-82v166h-292v57l279 385h95v-375h91v-67zM310 117v200c0 33 0 63 3 95l-4 1c-16 -32 -35 -66 -54 -95l-150 -198l1 -3h204z" /> + <glyph glyph-name="fiveoldstyle" unicode="&#xf735;" horiz-adv-x="441" +d="M36 -97l11 63c23 -7 64 -13 102 -13c86 0 164 45 164 129c0 29 -11 54 -31 73c-39 38 -118 50 -227 43l51 287h287l-11 -72h-217l-29 -150c83 2 168 -11 220 -61c30 -29 46 -70 46 -113c0 -122 -103 -203 -252 -203c-44 0 -89 7 -114 17z" /> + <glyph glyph-name="sixoldstyle" unicode="&#xf736;" horiz-adv-x="520" +d="M432 606l6 -65c-180 -11 -275 -106 -297 -219l3 -1c25 36 77 73 146 73c102 0 187 -72 187 -191c0 -135 -104 -214 -208 -214c-134 0 -223 99 -223 247c0 207 146 357 386 370zM269 56h1c59 0 120 47 120 142c0 82 -49 134 -122 134c-45 0 -82 -23 -101 -43 +c-24 -25 -32 -50 -32 -83c0 -81 52 -150 134 -150z" /> + <glyph glyph-name="sevenoldstyle" unicode="&#xf737;" horiz-adv-x="428" +d="M405 485v-56c-62 -163 -181 -386 -282 -543l-83 16c82 118 222 368 275 508v2h-297v73h387z" /> + <glyph glyph-name="eightoldstyle" unicode="&#xf738;" horiz-adv-x="513" +d="M343 320v-3c76 -27 129 -80 129 -151c0 -108 -98 -177 -218 -177c-127 0 -213 69 -213 166c0 72 51 125 125 158v3c-56 24 -101 66 -101 129c0 96 86 162 197 162c113 0 187 -67 187 -151c0 -58 -34 -102 -106 -136zM261 547c-61 0 -111 -36 -111 -95 +c0 -54 45 -88 121 -108c53 16 96 52 96 108c0 63 -52 95 -106 95zM255 52h1c70 0 126 42 126 106c0 63 -51 105 -142 129c-66 -22 -111 -68 -111 -124c0 -65 48 -111 126 -111z" /> + <glyph glyph-name="nineoldstyle" unicode="&#xf739;" horiz-adv-x="520" +d="M82 -113l-7 65c172 7 272 90 300 208h-2c-21 -33 -76 -67 -144 -67c-101 0 -186 71 -186 191c0 122 94 214 216 214c119 0 213 -87 213 -241c0 -222 -160 -363 -390 -370zM252 155h1c50 0 97 30 116 65c10 13 16 35 16 60c0 90 -59 150 -130 150 +c-60 0 -125 -45 -125 -139c0 -93 57 -136 122 -136z" /> + <glyph glyph-name="commasuperior" unicode="&#xf6e2;" horiz-adv-x="131" +d="M48 376l-48 -5c16 44 32 107 39 155l74 6c-17 -56 -43 -120 -65 -156z" /> + <glyph glyph-name="periodsuperior" unicode="&#xf6e8;" horiz-adv-x="131" +d="M65 438h-1c-25 0 -43 20 -43 45c0 27 19 45 44 45c26 0 44 -18 44 -45c0 -25 -18 -45 -44 -45z" /> + <glyph glyph-name="centsuperior" unicode="&#xf6e0;" horiz-adv-x="315" +d="M206 435h-46v60c-40 5 -68 20 -90 44c-21 23 -34 58 -34 99c0 76 47 137 124 150v58h46v-57c25 0 49 -7 64 -14l-13 -50c-13 7 -32 14 -61 14c-57 0 -93 -41 -93 -97c0 -63 41 -97 91 -97c31 0 53 7 67 13l11 -47c-13 -7 -38 -15 -66 -17v-59z" /> + <glyph glyph-name="parenleftinferior" unicode="&#x208d;" horiz-adv-x="180" +d="M117 278h51c-40 -57 -72 -136 -72 -242s33 -183 72 -241h-51c-36 48 -77 125 -77 241s41 194 77 242z" /> + <glyph glyph-name="parenrightinferior" unicode="&#x208e;" horiz-adv-x="180" +d="M64 -205h-51c39 58 72 136 72 242s-32 183 -72 241h51c36 -48 77 -125 77 -241c0 -115 -41 -193 -77 -242z" /> + <glyph glyph-name="hyphensuperior" unicode="&#xf6e6;" horiz-adv-x="191" +d="M18 651h155v-48h-155v48z" /> + <glyph glyph-name="hypheninferior" unicode="&#xf6e5;" horiz-adv-x="191" +d="M18 61h155v-48h-155v48z" /> + <glyph glyph-name="zerosuperior" unicode="&#x2070;" horiz-adv-x="336" +d="M166 439h-1c-87 0 -142 75 -142 199c0 123 57 200 147 200c92 0 143 -76 143 -197s-50 -202 -147 -202zM167 490h1c49 0 75 55 75 150c0 93 -25 147 -75 147c-45 0 -75 -54 -75 -147c0 -96 29 -150 74 -150z" /> + <glyph glyph-name="foursuperior" unicode="&#x2074;" horiz-adv-x="347" +d="M272 444h-67v101h-189v41l177 247h79v-238h55v-50h-55v-101zM205 595v115c0 23 2 44 3 64h-2c-12 -23 -22 -41 -34 -59l-87 -119l1 -1h119z" /> + <glyph glyph-name="fivesuperior" unicode="&#x2075;" horiz-adv-x="308" +d="M268 831v-55h-155l-13 -85c8 1 18 2 31 2c33 0 66 -6 93 -22c30 -17 55 -51 55 -100c0 -77 -63 -133 -155 -133c-44 0 -85 12 -105 24l14 49c17 -9 51 -21 89 -21c45 0 88 28 88 75s-32 79 -113 79c-22 0 -42 -2 -57 -4l26 191h202z" /> + <glyph glyph-name="sixsuperior" unicode="&#x2076;" horiz-adv-x="332" +d="M267 837v-53c-10 1 -25 1 -40 -1c-80 -11 -125 -62 -136 -122h2c19 21 52 41 94 41c72 0 122 -50 122 -125c0 -76 -57 -138 -138 -138c-93 0 -148 70 -148 166c0 74 27 135 67 173c35 33 81 51 138 57c15 1 29 2 39 2zM170 490h1c42 0 70 35 70 83c0 49 -29 81 -76 81 +c-31 0 -58 -19 -71 -44c-3 -6 -5 -13 -5 -22c0 -54 28 -98 81 -98z" /> + <glyph glyph-name="sevensuperior" unicode="&#x2077;" horiz-adv-x="294" +d="M19 831h263v-43l-172 -344h-70l171 331v1h-192v55z" /> + <glyph glyph-name="eightsuperior" unicode="&#x2078;" horiz-adv-x="328" +d="M167 838h1c81 0 121 -47 121 -97c0 -33 -18 -68 -63 -88v-2c45 -17 78 -50 78 -98c0 -68 -59 -114 -142 -114c-90 0 -138 51 -138 105c0 48 29 81 77 100v3c-43 19 -63 52 -63 86c0 63 56 105 129 105zM163 486h1c44 0 72 27 72 62c0 43 -32 64 -80 76 +c-42 -12 -65 -38 -65 -72c0 -35 27 -66 72 -66zM165 792h-1c-41 0 -63 -26 -63 -56c0 -34 27 -54 70 -65c31 10 55 31 55 63c0 28 -18 58 -61 58z" /> + <glyph glyph-name="ninesuperior" unicode="&#x2079;" horiz-adv-x="327" +d="M58 440v53c11 -1 26 -1 42 1c32 3 61 14 84 33c26 21 45 51 52 91h-2c-20 -23 -51 -38 -90 -38c-71 0 -121 50 -121 120c0 74 58 138 142 138c89 0 139 -69 139 -165c0 -83 -29 -142 -68 -179c-34 -31 -81 -48 -131 -52c-18 -2 -36 -3 -47 -2zM162 788h-1 +c-41 0 -71 -36 -71 -85c0 -42 27 -75 71 -75c33 0 59 16 71 37c3 4 5 11 5 19c0 57 -23 104 -75 104z" /> + <glyph glyph-name="zeroinferior" unicode="&#x2080;" horiz-adv-x="336" +d="M166 -151h-1c-87 0 -142 75 -142 199c0 123 57 200 147 200c92 0 143 -76 143 -197s-50 -202 -147 -202zM167 -100h1c49 0 75 55 75 150c0 93 -25 147 -75 147c-45 0 -75 -54 -75 -147c0 -96 29 -150 74 -150z" /> + <glyph glyph-name="oneinferior" unicode="&#x2081;" horiz-adv-x="244" +d="M177 -146h-70v328h-2l-72 -35l-11 52l94 44h61v-389z" /> + <glyph glyph-name="twoinferior" unicode="&#x2082;" horiz-adv-x="311" +d="M12 -146v37l63 58c83 76 126 123 126 174c0 38 -24 69 -76 69c-35 0 -65 -17 -84 -31l-21 46c27 22 72 41 123 41c94 0 132 -59 132 -112c0 -75 -57 -130 -133 -197l-30 -28v-2h170v-55h-270z" /> + <glyph glyph-name="threeinferior" unicode="&#x2083;" horiz-adv-x="305" +d="M45 170l-17 47c23 15 66 31 115 31c86 0 122 -46 122 -94c0 -40 -29 -73 -77 -90v-2c54 -7 93 -46 93 -96c0 -62 -56 -117 -158 -117c-48 0 -92 13 -115 28l18 50c16 -11 56 -26 93 -26c62 0 89 36 88 67c0 50 -53 70 -106 70h-27v46h28c37 0 91 17 91 63 +c0 24 -18 49 -63 49c-36 0 -69 -16 -85 -26z" /> + <glyph glyph-name="fourinferior" unicode="&#x2084;" horiz-adv-x="347" +d="M272 -146h-67v101h-189v41l177 247h79v-238h55v-50h-55v-101zM205 5v115c0 23 2 44 3 64h-2c-12 -23 -22 -41 -34 -59l-87 -119l1 -1h119z" /> + <glyph glyph-name="fiveinferior" unicode="&#x2085;" horiz-adv-x="308" +d="M268 241v-55h-155l-13 -85c8 1 18 2 31 2c33 0 66 -6 93 -22c30 -17 55 -51 55 -100c0 -77 -63 -133 -155 -133c-44 0 -85 12 -105 24l14 49c17 -9 51 -21 89 -21c45 0 88 28 88 75s-32 79 -113 79c-22 0 -42 -2 -57 -4l26 191h202z" /> + <glyph glyph-name="sixinferior" unicode="&#x2086;" horiz-adv-x="332" +d="M267 247v-53c-10 1 -25 1 -40 -1c-80 -11 -125 -62 -136 -122h2c19 21 52 41 94 41c72 0 122 -50 122 -125c0 -76 -57 -138 -138 -138c-93 0 -148 70 -148 166c0 74 27 135 67 173c35 33 81 51 138 57c15 1 29 2 39 2zM170 -100h1c42 0 70 35 70 83c0 49 -29 81 -76 81 +c-31 0 -58 -19 -71 -44c-3 -6 -5 -13 -5 -22c0 -54 28 -98 81 -98z" /> + <glyph glyph-name="seveninferior" unicode="&#x2087;" horiz-adv-x="294" +d="M19 241h263v-43l-172 -344h-70l171 331v1h-192v55z" /> + <glyph glyph-name="eightinferior" unicode="&#x2088;" horiz-adv-x="328" +d="M167 248h1c81 0 121 -47 121 -97c0 -33 -18 -68 -63 -88v-2c45 -17 78 -50 78 -98c0 -68 -59 -114 -142 -114c-90 0 -138 51 -138 105c0 48 29 81 77 100v3c-43 19 -63 52 -63 86c0 63 56 105 129 105zM163 -104h1c44 0 72 27 72 62c0 43 -32 64 -80 76 +c-42 -12 -65 -38 -65 -72c0 -35 27 -66 72 -66zM165 202h-1c-41 0 -63 -26 -63 -56c0 -34 27 -54 70 -65c31 10 55 31 55 63c0 28 -18 58 -61 58z" /> + <glyph glyph-name="nineinferior" unicode="&#x2089;" horiz-adv-x="327" +d="M58 -150v53c11 -1 26 -1 42 1c32 3 61 14 84 33c26 21 45 51 52 91h-2c-20 -23 -51 -38 -90 -38c-71 0 -121 50 -121 120c0 74 58 138 142 138c89 0 139 -69 139 -165c0 -83 -29 -142 -68 -179c-34 -31 -81 -48 -131 -52c-18 -2 -36 -3 -47 -2zM162 198h-1 +c-41 0 -71 -36 -71 -85c0 -42 27 -75 71 -75c33 0 59 16 71 37c3 4 5 11 5 19c0 57 -23 104 -75 104z" /> + <glyph glyph-name="centinferior" unicode="&#xf6df;" horiz-adv-x="315" +d="M206 -155h-46v60c-40 5 -68 20 -90 44c-21 23 -34 58 -34 99c0 76 47 137 124 150v58h46v-57c25 0 49 -7 64 -14l-13 -50c-13 7 -32 14 -61 14c-57 0 -93 -41 -93 -97c0 -63 41 -97 91 -97c31 0 53 7 67 13l11 -47c-13 -7 -38 -15 -66 -17v-59z" /> + <glyph glyph-name="dollarinferior" unicode="&#xf6e3;" horiz-adv-x="317" +d="M179 -198h-45v59c-38 1 -77 12 -99 27l16 50c24 -15 57 -27 94 -27c42 0 69 21 69 51s-21 46 -68 64c-67 24 -106 52 -106 106c0 51 36 90 97 100v59h45v-56c36 -1 65 -11 83 -21l-16 -49c-13 7 -41 21 -82 21c-46 0 -61 -24 -61 -46c0 -27 20 -40 76 -61 +c67 -25 98 -56 98 -111c0 -49 -35 -94 -101 -104v-62z" /> + <glyph glyph-name="periodinferior" unicode="&#xf6e7;" horiz-adv-x="131" +d="M65 -152h-1c-25 0 -43 20 -43 45c0 27 19 45 44 45c26 0 44 -18 44 -45c0 -25 -18 -45 -44 -45z" /> + <glyph glyph-name="commainferior" unicode="&#xf6e1;" horiz-adv-x="131" +d="M48 -214l-48 -5c16 44 32 107 39 155l74 6c-17 -56 -43 -120 -65 -156z" /> + <glyph glyph-name="commaaccent" unicode="&#xf6c3;" +d="M93 -222l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="Abreve" unicode="&#x102;" horiz-adv-x="612" +d="M424 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM203 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122zM181 817h52c5 -23 23 -49 72 -49c48 0 67 23 73 49h50c-1 -59 -38 -106 -124 -106c-85 0 -121 46 -123 106z" /> + <glyph glyph-name="Amacron" unicode="&#x100;" horiz-adv-x="612" +d="M424 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM203 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122zM185 788h240v-55h-240v55z" /> + <glyph glyph-name="Aogonek" unicode="&#x104;" horiz-adv-x="612" +d="M359 674l231 -674l-37 -2c-15 -16 -53 -57 -53 -93c0 -32 22 -51 51 -51c17 0 33 4 45 9l14 -44c-21 -16 -56 -24 -80 -24c-56 0 -94 30 -94 87c0 49 36 95 59 122l-71 208h-239l-69 -212h-91l230 674h104zM203 280h204l-67 194c-15 44 -25 84 -35 123h-2 +c-10 -39 -20 -81 -34 -122z" /> + <glyph glyph-name="AEacute" unicode="&#x1fc;" horiz-adv-x="788" +d="M89 0h-90l308 674h421v-73h-286l26 -215h251v-72h-240l30 -241h246v-73h-322l-30 237h-206zM226 308h168l-22 194c-4 31 -10 75 -12 109h-4c-12 -32 -28 -71 -43 -106zM489 827h106l-128 -117h-71z" /> + <glyph glyph-name="Cacute" unicode="&#x106;" horiz-adv-x="580" +d="M529 92l17 -70c-31 -16 -96 -32 -178 -32c-190 0 -332 120 -332 341c0 211 143 353 352 353c83 0 137 -18 160 -29l-22 -72c-32 16 -79 28 -135 28c-158 0 -263 -101 -263 -277c0 -165 95 -270 258 -270c54 0 108 11 143 28zM400 829h106l-128 -117h-71z" /> + <glyph glyph-name="Ccaron" unicode="&#x10c;" horiz-adv-x="580" +d="M529 92l17 -70c-31 -16 -96 -32 -178 -32c-190 0 -332 120 -332 341c0 211 143 353 352 353c83 0 137 -18 160 -29l-22 -72c-32 16 -79 28 -135 28c-158 0 -263 -101 -263 -277c0 -165 95 -270 258 -270c54 0 108 11 143 28zM387 713h-67l-105 114h74l64 -69h2l63 69h71z +" /> + <glyph glyph-name="Ccircumflex" unicode="&#x108;" horiz-adv-x="580" +d="M529 92l17 -70c-31 -16 -96 -32 -178 -32c-190 0 -332 120 -332 341c0 211 143 353 352 353c83 0 137 -18 160 -29l-22 -72c-32 16 -79 28 -135 28c-158 0 -263 -101 -263 -277c0 -165 95 -270 258 -270c54 0 108 11 143 28zM314 828h67l105 -114h-74l-63 69h-2l-64 -69 +h-71z" /> + <glyph glyph-name="Cdotaccent" unicode="&#x10a;" horiz-adv-x="580" +d="M529 92l17 -70c-31 -16 -96 -32 -178 -32c-190 0 -332 120 -332 341c0 211 143 353 352 353c83 0 137 -18 160 -29l-22 -72c-32 16 -79 28 -135 28c-158 0 -263 -101 -263 -277c0 -165 95 -270 258 -270c54 0 108 11 143 28zM348 719h-1c-28 0 -49 24 -49 51 +c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -48 -51z" /> + <glyph glyph-name="Dcaron" unicode="&#x10e;" horiz-adv-x="666" +d="M75 2v663c54 8 117 14 186 14c125 0 214 -29 273 -84c61 -55 96 -133 96 -242c0 -110 -35 -200 -97 -262c-64 -63 -168 -97 -299 -97c-63 0 -114 2 -159 8zM163 601v-533c22 -4 54 -4 88 -4c186 -1 287 104 287 286c1 159 -89 260 -273 260c-45 0 -79 -4 -102 -9z +M343 712h-67l-105 114h74l64 -69h2l63 69h71z" /> + <glyph glyph-name="Dcroat" unicode="&#x110;" horiz-adv-x="671" +d="M-2 307v70h82v291c54 8 117 14 186 14c124 0 214 -28 272 -83c61 -55 96 -135 96 -246s-35 -201 -97 -263c-64 -63 -168 -97 -298 -97c-63 0 -114 2 -159 7v307h-82zM348 377v-70h-180v-240c22 -4 54 -4 87 -4c187 0 287 103 287 289c1 162 -89 261 -272 261 +c-45 0 -79 -4 -102 -9v-227h180z" /> + <glyph glyph-name="Ebreve" unicode="&#x114;" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261zM131 825h52c5 -23 23 -49 72 -49c48 0 67 23 73 49h50c-1 -59 -38 -106 -124 -106c-85 0 -121 46 -123 106z" /> + <glyph glyph-name="Ecaron" unicode="&#x11a;" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261zM292 710h-67l-105 114h74l64 -69h2l63 69h71z" /> + <glyph glyph-name="Edotaccent" unicode="&#x116;" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261zM251 721h-1c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -48 -51z" /> + <glyph glyph-name="Emacron" unicode="&#x112;" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261zM140 788h240v-55h-240v55z" /> + <glyph glyph-name="Eng" unicode="&#x14a;" horiz-adv-x="658" +d="M158 0h-82v674h96l215 -341c49 -79 89 -150 120 -219l3 1c-8 90 -10 172 -10 276v283h82v-636c0 -143 -66 -218 -193 -237l-18 68c80 16 120 54 127 125l-218 347c-47 76 -92 153 -125 226l-3 -1c5 -85 6 -167 6 -278v-288z" /> + <glyph glyph-name="Eogonek" unicode="&#x118;" horiz-adv-x="492" +d="M446 -138l14 -47c-23 -14 -51 -21 -81 -21c-56 0 -92 29 -92 81c0 55 45 102 81 126h-293v673h365v-73h-277v-213h261v-72h-261v-243h292v-72c-5 0 -10 -1 -16 -1c-41 -27 -82 -69 -82 -106c0 -26 19 -40 45 -40c15 0 29 2 44 8z" /> + <glyph glyph-name="Gbreve" unicode="&#x11e;" horiz-adv-x="646" +d="M590 354v-324c-39 -15 -117 -37 -208 -37c-102 0 -186 26 -252 89c-58 56 -94 146 -94 251c0 201 139 348 365 348c78 0 140 -17 169 -31l-22 -71c-36 17 -81 29 -149 29c-164 0 -271 -102 -271 -271c0 -171 102 -272 260 -272c57 0 96 8 116 18v201h-136v70h222z +M231 827h52c5 -23 23 -49 72 -49c48 0 67 23 73 49h50c-1 -59 -38 -106 -124 -106c-85 0 -121 46 -123 106z" /> + <glyph glyph-name="Gcircumflex" unicode="&#x11c;" horiz-adv-x="646" +d="M590 354v-324c-39 -15 -117 -37 -208 -37c-102 0 -186 26 -252 89c-58 56 -94 146 -94 251c0 201 139 348 365 348c78 0 140 -17 169 -31l-22 -71c-36 17 -81 29 -149 29c-164 0 -271 -102 -271 -271c0 -171 102 -272 260 -272c57 0 96 8 116 18v201h-136v70h222z +M326 827h67l105 -114h-74l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="Gcommaaccent" unicode="&#x122;" horiz-adv-x="646" +d="M590 354v-324c-39 -15 -117 -37 -208 -37c-102 0 -186 26 -252 89c-58 56 -94 146 -94 251c0 201 139 348 365 348c78 0 140 -17 169 -31l-22 -71c-36 17 -81 29 -149 29c-164 0 -271 -102 -271 -271c0 -171 102 -272 260 -272c57 0 96 8 116 18v201h-136v70h222z +M298 -222l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="Gdotaccent" unicode="&#x120;" horiz-adv-x="646" +d="M590 354v-324c-39 -15 -117 -37 -208 -37c-102 0 -186 26 -252 89c-58 56 -94 146 -94 251c0 201 139 348 365 348c78 0 140 -17 169 -31l-22 -71c-36 17 -81 29 -149 29c-164 0 -271 -102 -271 -271c0 -171 102 -272 260 -272c57 0 96 8 116 18v201h-136v70h222z +M362 719h-1c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -48 -51z" /> + <glyph glyph-name="Hbar" unicode="&#x126;" horiz-adv-x="657" +d="M636 479h-57v-479h-88v301h-325v-301h-88v479h-57v58h57v137h88v-137h325v137h88v-137h57v-58zM491 377v102h-325v-102h325z" /> + <glyph glyph-name="Hcircumflex" unicode="&#x124;" horiz-adv-x="652" +d="M75 674h88v-282h326v282h88v-674h-88v316h-326v-316h-88v674zM292 824h67l105 -114h-74l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="Ibreve" unicode="&#x12c;" horiz-adv-x="239" +d="M75 674h88v-674h-88v674zM-4 823h52c5 -23 23 -49 72 -49c48 0 67 23 73 49h50c-1 -59 -38 -106 -124 -106c-85 0 -121 46 -123 106z" /> + <glyph glyph-name="IJ" unicode="&#x132;" horiz-adv-x="609" +d="M75 674h88v-674h-88v674zM452 230v444h88v-451c0 -179 -88 -234 -204 -234c-33 0 -72 7 -93 16l12 71c18 -7 44 -13 74 -13c78 0 123 35 123 167z" /> + <glyph glyph-name="Imacron" unicode="&#x12a;" horiz-adv-x="239" +d="M75 674h88v-674h-88v674zM1 788h240v-55h-240v55z" /> + <glyph glyph-name="Iogonek" unicode="&#x12e;" horiz-adv-x="239" +d="M163 674v-674h-30c-15 -21 -42 -61 -42 -98c0 -33 22 -51 51 -51c20 0 35 4 46 9l13 -46c-20 -15 -55 -23 -81 -23c-54 0 -92 30 -92 87c0 49 30 95 47 122v674h88z" /> + <glyph glyph-name="Itilde" unicode="&#x128;" horiz-adv-x="239" +d="M75 674h88v-674h-88v674zM43 715h-47c-1 61 25 102 68 102c22 0 38 -9 59 -20c16 -9 32 -18 48 -18c15 0 24 7 27 39h46c1 -63 -21 -97 -67 -97c-21 0 -39 8 -61 19c-19 10 -32 19 -47 19c-16 0 -23 -17 -26 -44z" /> + <glyph glyph-name="Jcircumflex" unicode="&#x134;" horiz-adv-x="370" +d="M213 230v444h88v-451c0 -179 -88 -234 -204 -234c-33 0 -72 7 -93 16l12 71c18 -7 44 -13 74 -13c78 0 123 35 123 167zM219 824h67l105 -114h-74l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="Kcommaaccent" unicode="&#x136;" horiz-adv-x="542" +d="M76 0v674h87v-325h3c18 26 36 50 53 72l206 253h108l-244 -286l263 -388h-103l-221 331l-65 -74v-257h-87zM215 -220l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="Lacute" unicode="&#x139;" horiz-adv-x="472" +d="M75 0v674h88v-601h288v-73h-376zM179 827h106l-128 -117h-71z" /> + <glyph glyph-name="Lcaron" unicode="&#x13d;" horiz-adv-x="472" +d="M75 0v674h88v-601h288v-73h-376zM260 504l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="Lcommaaccent" unicode="&#x13b;" horiz-adv-x="472" +d="M75 0v674h88v-601h288v-73h-376zM187 -222l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="Ldot" unicode="&#x13f;" horiz-adv-x="472" +d="M75 0v674h88v-601h288v-73h-376zM341 320h-1c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -48 -51z" /> + <glyph glyph-name="Nacute" unicode="&#x143;" horiz-adv-x="658" +d="M158 0h-82v674h96l215 -341c49 -79 89 -150 120 -219l3 1c-8 90 -10 172 -10 276v283h82v-674h-88l-214 342c-47 75 -92 152 -125 225l-3 -1c5 -85 6 -166 6 -278v-288zM371 827h106l-128 -117h-71z" /> + <glyph glyph-name="Ncaron" unicode="&#x147;" horiz-adv-x="658" +d="M158 0h-82v674h96l215 -341c49 -79 89 -150 120 -219l3 1c-8 90 -10 172 -10 276v283h82v-674h-88l-214 342c-47 75 -92 152 -125 225l-3 -1c5 -85 6 -166 6 -278v-288zM365 705h-67l-105 114h74l64 -69h2l63 69h71z" /> + <glyph glyph-name="Ncommaaccent" unicode="&#x145;" horiz-adv-x="658" +d="M158 0h-82v674h96l215 -341c49 -79 89 -150 120 -219l3 1c-8 90 -10 172 -10 276v283h82v-674h-88l-214 342c-47 75 -92 152 -125 225l-3 -1c5 -85 6 -166 6 -278v-288zM270 -221l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74 +c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="Obreve" unicode="&#x14e;" horiz-adv-x="689" +d="M340 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM343 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273zM221 830h52c5 -23 23 -49 72 -49 +c48 0 67 23 73 49h50c-1 -59 -38 -106 -124 -106c-85 0 -121 46 -123 106z" /> + <glyph glyph-name="Ohungarumlaut" unicode="&#x150;" horiz-adv-x="689" +d="M340 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM343 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273zM320 830h96l-112 -112h-64zM467 830h96 +l-112 -112h-64z" /> + <glyph glyph-name="Omacron" unicode="&#x14c;" horiz-adv-x="689" +d="M340 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM343 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273zM226 793h240v-55h-240v55z" /> + <glyph glyph-name="Oslashacute" unicode="&#x1fe;" horiz-adv-x="689" +d="M112 -43l-49 39l62 87c-56 61 -89 149 -89 250c0 213 134 352 311 352c62 0 120 -18 168 -53l59 81l53 -36l-62 -86c56 -61 87 -149 87 -248c0 -235 -145 -354 -307 -354c-63 0 -122 19 -170 54zM176 158l296 410c-34 29 -76 47 -127 47c-146 0 -220 -136 -220 -278 +c0 -74 19 -129 49 -180zM513 515l-295 -408c33 -31 71 -48 126 -48c140 0 219 129 219 281c0 57 -12 118 -47 175h-3zM393 835h106l-128 -117h-71z" /> + <glyph glyph-name="Racute" unicode="&#x154;" horiz-adv-x="538" +d="M76 0v664c44 9 108 15 167 15c93 0 154 -18 196 -56c33 -29 53 -75 53 -128c0 -88 -57 -147 -127 -171v-3c51 -18 82 -66 99 -136c22 -94 38 -159 51 -185h-90c-11 20 -26 77 -44 161c-20 93 -57 128 -136 131h-82v-292h-87zM163 603v-245h89c93 0 152 51 152 128 +c0 87 -63 125 -155 125c-42 0 -71 -4 -86 -8zM302 830h106l-128 -117h-71z" /> + <glyph glyph-name="Rcaron" unicode="&#x158;" horiz-adv-x="538" +d="M76 0v664c44 9 108 15 167 15c93 0 154 -18 196 -56c33 -29 53 -75 53 -128c0 -88 -57 -147 -127 -171v-3c51 -18 82 -66 99 -136c22 -94 38 -159 51 -185h-90c-11 20 -26 77 -44 161c-20 93 -57 128 -136 131h-82v-292h-87zM163 603v-245h89c93 0 152 51 152 128 +c0 87 -63 125 -155 125c-42 0 -71 -4 -86 -8zM299 713h-67l-105 114h74l64 -69h2l63 69h71z" /> + <glyph glyph-name="Rcommaaccent" unicode="&#x156;" horiz-adv-x="538" +d="M76 0v664c44 9 108 15 167 15c93 0 154 -18 196 -56c33 -29 53 -75 53 -128c0 -88 -57 -147 -127 -171v-3c51 -18 82 -66 99 -136c22 -94 38 -159 51 -185h-90c-11 20 -26 77 -44 161c-20 93 -57 128 -136 131h-82v-292h-87zM163 603v-245h89c93 0 152 51 152 128 +c0 87 -63 125 -155 125c-42 0 -71 -4 -86 -8zM212 -215l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="Sacute" unicode="&#x15a;" horiz-adv-x="493" +d="M42 34l23 72c39 -24 95 -43 155 -43c89 0 141 46 141 114c0 63 -36 100 -127 134c-110 38 -178 96 -178 190c0 105 87 183 218 183c68 0 119 -16 148 -32l-24 -72c-21 13 -66 32 -127 32c-92 0 -127 -55 -127 -101c0 -62 41 -93 134 -129c114 -45 171 -99 171 -198 +c0 -103 -76 -194 -235 -194c-65 0 -136 20 -172 44zM300 830h106l-128 -117h-71z" /> + <glyph glyph-name="Scedilla" unicode="&#x15e;" horiz-adv-x="493" +d="M42 34l23 72c39 -24 95 -43 155 -43c89 0 141 46 141 114c0 63 -37 100 -128 134c-109 38 -177 96 -177 190c0 105 87 183 218 183c68 0 119 -16 148 -32l-24 -72c-21 13 -66 32 -127 32c-92 0 -127 -55 -127 -101c0 -62 41 -93 133 -129c115 -45 172 -99 172 -198 +c0 -88 -56 -168 -174 -189l-28 -45c38 -5 70 -32 70 -70c0 -57 -50 -80 -103 -80c-27 0 -53 8 -70 18l15 42c16 -8 34 -14 55 -14c22 0 41 9 41 31c0 26 -30 38 -77 42l40 71h-7c-58 0 -131 19 -169 44z" /> + <glyph glyph-name="Scedilla" unicode="&#xf6c1;" horiz-adv-x="493" +d="M42 34l23 72c39 -24 95 -43 155 -43c89 0 141 46 141 114c0 63 -37 100 -128 134c-109 38 -177 96 -177 190c0 105 87 183 218 183c68 0 119 -16 148 -32l-24 -72c-21 13 -66 32 -127 32c-92 0 -127 -55 -127 -101c0 -62 41 -93 133 -129c115 -45 172 -99 172 -198 +c0 -88 -56 -168 -174 -189l-28 -45c38 -5 70 -32 70 -70c0 -57 -50 -80 -103 -80c-27 0 -53 8 -70 18l15 42c16 -8 34 -14 55 -14c22 0 41 9 41 31c0 26 -30 38 -77 42l40 71h-7c-58 0 -131 19 -169 44z" /> + <glyph glyph-name="Scircumflex" unicode="&#x15c;" horiz-adv-x="493" +d="M42 34l23 72c39 -24 95 -43 155 -43c89 0 141 46 141 114c0 63 -36 100 -127 134c-110 38 -178 96 -178 190c0 105 87 183 218 183c68 0 119 -16 148 -32l-24 -72c-21 13 -66 32 -127 32c-92 0 -127 -55 -127 -101c0 -62 41 -93 134 -129c114 -45 171 -99 171 -198 +c0 -103 -76 -194 -235 -194c-65 0 -136 20 -172 44zM214 827h67l105 -114h-74l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="Scommaaccent" unicode="&#x218;" horiz-adv-x="493" +d="M42 34l23 72c39 -24 95 -43 155 -43c89 0 141 46 141 114c0 63 -36 100 -127 134c-110 38 -178 96 -178 190c0 105 87 183 218 183c68 0 119 -16 148 -32l-24 -72c-21 13 -66 32 -127 32c-92 0 -127 -55 -127 -101c0 -62 41 -93 134 -129c114 -45 171 -99 171 -198 +c0 -103 -76 -194 -235 -194c-65 0 -136 20 -172 44zM186 -222l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="Tbar" unicode="&#x166;" horiz-adv-x="497" +d="M498 600h-206v-222h124v-58h-124v-320h-88v320h-125v58h125v222h-205v74h499v-74z" /> + <glyph glyph-name="Tcaron" unicode="&#x164;" horiz-adv-x="497" +d="M204 0v600h-205v74h499v-74h-206v-600h-88zM284 710h-67l-105 114h74l64 -69h2l63 69h71z" /> + <glyph glyph-name="Tcommaaccent" unicode="&#x162;" horiz-adv-x="497" +d="M204 0v600h-205v74h499v-74h-206v-600h-88zM181 -222l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="Tcommaaccent" unicode="&#x21a;" horiz-adv-x="497" +d="M204 0v600h-205v74h499v-74h-206v-600h-88zM181 -222l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="Ubreve" unicode="&#x16c;" horiz-adv-x="647" +d="M75 674h88v-400c0 -150 67 -214 157 -214c99 0 164 66 164 214v400h88v-394c0 -207 -109 -291 -255 -291c-138 0 -242 78 -242 288v397zM200 827h52c5 -23 23 -49 72 -49c48 0 67 23 73 49h50c-1 -59 -38 -106 -124 -106c-85 0 -121 46 -123 106z" /> + <glyph glyph-name="Uhungarumlaut" unicode="&#x170;" horiz-adv-x="647" +d="M75 674h88v-400c0 -150 67 -214 157 -214c99 0 164 66 164 214v400h88v-394c0 -207 -109 -291 -255 -291c-138 0 -242 78 -242 288v397zM284 827h96l-112 -112h-64zM431 827h96l-112 -112h-64z" /> + <glyph glyph-name="Umacron" unicode="&#x16a;" horiz-adv-x="647" +d="M75 674h88v-400c0 -150 67 -214 157 -214c99 0 164 66 164 214v400h88v-394c0 -207 -109 -291 -255 -291c-138 0 -242 78 -242 288v397zM205 788h240v-55h-240v55z" /> + <glyph glyph-name="Uogonek" unicode="&#x172;" horiz-adv-x="647" +d="M415 -135l14 -45c-21 -15 -55 -24 -82 -24c-55 0 -90 30 -90 80c0 44 30 85 58 114h-7c-133 4 -233 82 -233 287v397h88v-399c0 -150 67 -214 157 -214c100 0 164 66 164 214v399h88v-393c0 -172 -77 -259 -186 -282c-27 -24 -61 -65 -61 -101c0 -28 19 -43 45 -43 +c16 0 32 4 45 10z" /> + <glyph glyph-name="Uring" unicode="&#x16e;" horiz-adv-x="647" +d="M75 674h88v-400c0 -150 67 -214 157 -214c99 0 164 66 164 214v400h88v-394c0 -207 -109 -291 -255 -291c-138 0 -242 78 -242 288v397zM324 873h1c61 0 99 -40 99 -91c0 -50 -41 -88 -100 -88c-60 0 -100 39 -100 88c0 50 38 91 100 91zM323 837h-1 +c-29 0 -47 -26 -47 -55c0 -26 19 -51 48 -51c30 0 49 23 49 53c0 29 -19 53 -49 53z" /> + <glyph glyph-name="Utilde" unicode="&#x168;" horiz-adv-x="647" +d="M75 674h88v-400c0 -150 67 -214 157 -214c99 0 164 66 164 214v400h88v-394c0 -207 -109 -291 -255 -291c-138 0 -242 78 -242 288v397zM247 715h-47c-1 61 25 102 68 102c22 0 38 -9 59 -20c16 -9 32 -18 48 -18c15 0 24 7 27 39h46c1 -63 -21 -97 -67 -97 +c-21 0 -39 8 -61 19c-19 10 -32 19 -47 19c-16 0 -23 -17 -26 -44z" /> + <glyph glyph-name="Wacute" unicode="&#x1e82;" horiz-adv-x="846" +d="M277 0h-91l-171 674h92l80 -341c20 -85 38 -168 50 -233h2c11 67 32 147 55 234l90 340h91l82 -342c19 -81 37 -160 47 -231h2c14 74 33 149 54 233l89 340h89l-191 -674h-91l-85 350c-21 87 -35 153 -44 221h-2c-11 -68 -27 -133 -52 -220zM477 827h106l-128 -117h-71z +" /> + <glyph glyph-name="Wcircumflex" unicode="&#x174;" horiz-adv-x="846" +d="M277 0h-91l-171 674h92l80 -341c20 -85 38 -168 50 -233h2c11 67 32 147 55 234l90 340h91l82 -342c19 -81 37 -160 47 -231h2c14 74 33 149 54 233l89 340h89l-191 -674h-91l-85 350c-21 87 -35 153 -44 221h-2c-11 -68 -27 -133 -52 -220zM390 824h67l105 -114h-74 +l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="Wdieresis" unicode="&#x1e84;" horiz-adv-x="846" +d="M277 0h-91l-171 674h92l80 -341c20 -85 38 -168 50 -233h2c11 67 32 147 55 234l90 340h91l82 -342c19 -81 37 -160 47 -231h2c14 74 33 149 54 233l89 340h89l-191 -674h-91l-85 350c-21 87 -35 153 -44 221h-2c-11 -68 -27 -133 -52 -220zM335 721h-1 +c-28 0 -48 23 -48 51c0 27 21 50 49 50s48 -22 48 -50s-19 -51 -48 -51zM520 721h-1c-28 0 -48 23 -48 51c0 27 21 50 50 50c28 0 48 -22 48 -50s-19 -51 -49 -51z" /> + <glyph glyph-name="Wgrave" unicode="&#x1e80;" horiz-adv-x="846" +d="M277 0h-91l-171 674h92l80 -341c20 -85 38 -168 50 -233h2c11 67 32 147 55 234l90 340h91l82 -342c19 -81 37 -160 47 -231h2c14 74 33 149 54 233l89 340h89l-191 -674h-91l-85 350c-21 87 -35 153 -44 221h-2c-11 -68 -27 -133 -52 -220zM273 827h106l93 -116h-71z +" /> + <glyph glyph-name="Ycircumflex" unicode="&#x176;" horiz-adv-x="541" +d="M314 0h-88v286l-214 388h100l95 -186c25 -51 46 -92 67 -139h2c18 44 42 88 68 139l97 186h98l-225 -387v-287zM237 824h67l105 -114h-74l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="Ygrave" unicode="&#x1ef2;" horiz-adv-x="541" +d="M314 0h-88v286l-214 388h100l95 -186c25 -51 46 -92 67 -139h2c18 44 42 88 68 139l97 186h98l-225 -387v-287zM132 820h106l93 -116h-71z" /> + <glyph glyph-name="Zacute" unicode="&#x179;" horiz-adv-x="553" +d="M30 0v51l374 547v3h-342v73h455v-53l-372 -545v-3h377v-73h-492zM326 827h106l-128 -117h-71z" /> + <glyph glyph-name="Zdotaccent" unicode="&#x17b;" horiz-adv-x="553" +d="M30 0v51l374 547v3h-342v73h455v-53l-372 -545v-3h377v-73h-492zM281 720h-1c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -48 -51z" /> + <glyph glyph-name="Idotaccent" unicode="&#x130;" horiz-adv-x="239" +d="M75 674h88v-674h-88v674zM121 721h-1c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -48 -51z" /> + <glyph glyph-name="abreve" unicode="&#x103;" horiz-adv-x="482" +d="M414 297v-181c0 -42 2 -83 7 -116h-79l-8 61h-3c-26 -38 -79 -72 -148 -72c-98 0 -148 69 -148 139c0 117 104 181 291 180v10c0 40 -11 113 -110 112c-46 0 -93 -13 -127 -36l-20 59c40 25 99 42 160 42c149 0 185 -101 185 -198zM328 163v84c-96 2 -205 -15 -205 -109 +c0 -58 38 -84 82 -84c64 0 105 40 119 81c3 9 4 19 4 28zM117 682h52c6 -39 31 -69 72 -69c48 0 69 35 72 69h52c0 -75 -49 -125 -124 -125c-88 0 -124 62 -124 125z" /> + <glyph glyph-name="amacron" unicode="&#x101;" horiz-adv-x="482" +d="M414 297v-181c0 -42 2 -83 7 -116h-79l-8 61h-3c-26 -38 -79 -72 -148 -72c-98 0 -148 69 -148 139c0 117 104 181 291 180v10c0 40 -11 113 -110 112c-46 0 -93 -13 -127 -36l-20 59c40 25 99 42 160 42c149 0 185 -101 185 -198zM328 163v84c-96 2 -205 -15 -205 -109 +c0 -58 38 -84 82 -84c64 0 105 40 119 81c3 9 4 19 4 28zM129 643h225v-57h-225v57z" /> + <glyph glyph-name="aogonek" unicode="&#x105;" horiz-adv-x="482" +d="M414 297v-181c0 -45 2 -84 7 -116h-25c-15 -20 -39 -61 -39 -96c0 -34 20 -50 48 -50c19 0 33 4 46 10l14 -46c-24 -17 -56 -24 -83 -24c-51 0 -89 30 -89 85c0 50 29 96 48 124l-7 58h-3c-26 -38 -79 -72 -148 -72c-98 0 -148 69 -148 139c0 117 104 181 291 180v10 +c0 40 -11 113 -110 112c-46 0 -93 -13 -127 -36l-20 59c40 25 99 42 160 42c149 0 185 -101 185 -198zM328 163v84c-96 2 -205 -15 -205 -109c0 -58 38 -84 82 -84c64 0 105 40 119 81c3 9 4 19 4 28z" /> + <glyph glyph-name="aeacute" unicode="&#x1fd;" horiz-adv-x="773" +d="M734 233h-325c-3 -115 64 -176 155 -176c67 0 106 15 132 27l16 -62c-38 -20 -95 -33 -159 -33c-83 0 -156 38 -184 107h-3c-30 -67 -96 -107 -179 -107c-101 0 -151 67 -151 138c0 112 104 178 291 175v20c0 24 -14 108 -112 108c-46 0 -95 -16 -124 -36l-21 58 +c43 27 103 43 151 43c87 0 136 -40 156 -102h2c32 63 92 102 169 102c148 0 189 -143 189 -223c0 -15 -1 -30 -3 -39zM329 172v71c-93 2 -206 -14 -206 -109c0 -51 38 -80 84 -80c63 -1 103 38 117 83c3 11 5 23 5 35zM409 296h244c2 49 -25 137 -114 137 +c-88 0 -127 -81 -130 -137zM429 693h96l-122 -143h-62z" /> + <glyph glyph-name="cacute" unicode="&#x107;" horiz-adv-x="448" +d="M403 84l15 -66c-23 -11 -74 -28 -139 -28c-146 0 -241 99 -241 247c0 149 102 258 260 258c52 0 98 -13 122 -26l-20 -67c-21 11 -54 23 -102 23c-111 0 -171 -83 -171 -183c0 -112 72 -181 168 -181c50 0 83 12 108 23zM302 693h96l-122 -143h-62z" /> + <glyph glyph-name="ccaron" unicode="&#x10d;" horiz-adv-x="448" +d="M403 84l15 -66c-23 -11 -74 -28 -139 -28c-146 0 -241 99 -241 247c0 149 102 258 260 258c52 0 98 -13 122 -26l-20 -67c-21 11 -54 23 -102 23c-111 0 -171 -83 -171 -183c0 -112 72 -181 168 -181c50 0 83 12 108 23zM294 550h-63l-96 143h67l59 -95h2l59 95h66z" /> + <glyph glyph-name="ccircumflex" unicode="&#x109;" horiz-adv-x="448" +d="M403 84l15 -66c-23 -11 -74 -28 -139 -28c-146 0 -241 99 -241 247c0 149 102 258 260 258c52 0 98 -13 122 -26l-20 -67c-21 11 -54 23 -102 23c-111 0 -171 -83 -171 -183c0 -112 72 -181 168 -181c50 0 83 12 108 23zM229 693h61l96 -143h-67l-58 94h-2l-58 -94h-66z +" /> + <glyph glyph-name="cdotaccent" unicode="&#x10b;" horiz-adv-x="448" +d="M403 84l15 -66c-23 -11 -74 -28 -139 -28c-146 0 -241 99 -241 247c0 149 102 258 260 258c52 0 98 -13 122 -26l-20 -67c-21 11 -54 23 -102 23c-111 0 -171 -83 -171 -183c0 -112 72 -181 168 -181c50 0 83 12 108 23zM265 570h-1c-29 0 -50 24 -50 52s23 51 51 51 +s49 -23 49 -51s-20 -52 -49 -52z" /> + <glyph glyph-name="dcaron" unicode="&#x10f;" horiz-adv-x="574" +d="M403 710h88v-585c0 -43 1 -92 4 -125h-79l-4 84h-2c-27 -54 -85 -95 -164 -95c-117 0 -208 99 -208 246c-1 162 100 260 217 260c75 0 125 -35 146 -73h2v288zM403 203v84c0 12 -1 26 -4 38c-13 55 -61 101 -127 101c-91 0 -145 -80 -145 -186c0 -99 49 -180 143 -180 +c59 0 113 40 129 106c3 11 4 23 4 37zM572 522l-37 30c16 18 36 47 36 88c0 26 -14 50 -30 65l62 14c18 -11 36 -40 36 -73c0 -74 -52 -112 -67 -124z" /> + <glyph glyph-name="dcroat" unicode="&#x111;" horiz-adv-x="564" +d="M568 552h-77v-427c0 -43 1 -92 4 -125h-79l-4 84h-2c-27 -54 -85 -95 -164 -95c-117 0 -208 99 -208 246c-1 162 100 260 217 260c75 0 125 -35 146 -73h2v130h-197v55h197v103h88v-103h77v-55zM403 203v84c0 12 -1 26 -4 38c-13 55 -61 101 -127 101 +c-91 0 -145 -80 -145 -186c0 -99 49 -180 143 -180c59 0 113 40 129 106c3 11 4 23 4 37z" /> + <glyph glyph-name="ebreve" unicode="&#x115;" horiz-adv-x="501" +d="M462 226h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63c-31 -14 -85 -31 -162 -31c-148 0 -238 99 -238 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -31 -3 -41zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143zM130 682h52 +c6 -39 31 -69 72 -69c48 0 69 35 72 69h52c0 -75 -49 -125 -124 -125c-88 0 -124 62 -124 125z" /> + <glyph glyph-name="ecaron" unicode="&#x11b;" horiz-adv-x="501" +d="M462 226h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63c-31 -14 -85 -31 -162 -31c-148 0 -238 99 -238 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -31 -3 -41zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143zM286 550h-63 +l-96 143h67l59 -95h2l59 95h66z" /> + <glyph glyph-name="edotaccent" unicode="&#x117;" horiz-adv-x="501" +d="M462 226h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63c-31 -14 -85 -31 -162 -31c-148 0 -238 99 -238 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -31 -3 -41zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143zM256 570h-1 +c-29 0 -50 24 -50 52s23 51 51 51s49 -23 49 -51s-20 -52 -49 -52z" /> + <glyph glyph-name="emacron" unicode="&#x113;" horiz-adv-x="501" +d="M462 226h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63c-31 -14 -85 -31 -162 -31c-148 0 -238 99 -238 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -31 -3 -41zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143zM142 643h225 +v-57h-225v57z" /> + <glyph glyph-name="eng" unicode="&#x14b;" horiz-adv-x="555" +d="M73 0v353c0 51 -1 91 -4 131h78l5 -79h2c24 45 80 90 160 90c67 0 171 -40 171 -206v-230c0 -154 -83 -223 -190 -238l-17 70c80 16 119 67 119 160v228c0 78 -29 144 -112 144c-57 0 -102 -41 -118 -90c-4 -11 -6 -27 -6 -41v-292h-88z" /> + <glyph glyph-name="eogonek" unicode="&#x119;" horiz-adv-x="501" +d="M385 -136l14 -45c-21 -16 -51 -24 -81 -24c-54 0 -89 28 -89 78s40 95 72 117v1c-8 0 -16 -1 -27 -1c-147 1 -236 99 -236 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -32 -3 -41h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63 +c-15 -7 -37 -14 -46 -17c-40 -17 -95 -66 -95 -108c0 -29 20 -42 41 -42c15 0 34 3 47 10zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143z" /> + <glyph glyph-name="gbreve" unicode="&#x11f;" horiz-adv-x="559" +d="M487 352v-281c0 -112 -23 -179 -69 -222c-48 -43 -116 -58 -177 -58c-58 0 -122 14 -161 40l22 68c32 -21 82 -39 142 -39c90 0 156 47 156 170v53h-2c-26 -45 -79 -81 -154 -81c-120 0 -206 102 -206 237c0 164 107 256 219 256c84 0 129 -43 151 -84h2l3 73h78 +c-3 -34 -4 -74 -4 -132zM399 207v87c0 14 -1 27 -5 39c-16 52 -58 94 -123 94c-84 0 -144 -71 -144 -184c0 -94 49 -174 143 -174c55 0 104 34 122 91c5 14 7 31 7 47zM148 682h52c6 -39 31 -69 72 -69c48 0 69 35 72 69h52c0 -75 -49 -125 -124 -125 +c-88 0 -124 62 -124 125z" /> + <glyph glyph-name="gcircumflex" unicode="&#x11d;" horiz-adv-x="559" +d="M487 352v-281c0 -112 -23 -179 -69 -222c-48 -43 -116 -58 -177 -58c-58 0 -122 14 -161 40l22 68c32 -21 82 -39 142 -39c90 0 156 47 156 170v53h-2c-26 -45 -79 -81 -154 -81c-120 0 -206 102 -206 237c0 164 107 256 219 256c84 0 129 -43 151 -84h2l3 73h78 +c-3 -34 -4 -74 -4 -132zM399 207v87c0 14 -1 27 -5 39c-16 52 -58 94 -123 94c-84 0 -144 -71 -144 -184c0 -94 49 -174 143 -174c55 0 104 34 122 91c5 14 7 31 7 47zM249 696h61l96 -143h-67l-58 94h-2l-58 -94h-66z" /> + <glyph glyph-name="gcommaaccent" unicode="&#x123;" horiz-adv-x="559" +d="M487 352v-281c0 -112 -23 -179 -69 -222c-48 -43 -116 -58 -177 -58c-59 0 -122 14 -161 40l22 68c32 -21 82 -39 142 -39c90 0 156 47 156 170v53h-2c-26 -45 -80 -81 -154 -81c-120 0 -206 102 -206 237c0 164 107 256 218 256c84 0 130 -43 152 -84h2l3 73h78 +c-3 -34 -4 -74 -4 -132zM399 207v87c0 14 -1 27 -5 39c-16 52 -59 94 -124 94c-84 0 -143 -71 -143 -184c0 -94 48 -174 142 -174c55 0 104 34 123 91c5 14 7 31 7 47zM338 709l17 -37c-42 -6 -78 -25 -78 -65c0 -23 16 -44 35 -58l-64 -14c-20 13 -39 40 -39 71 +c0 71 67 99 129 103z" /> + <glyph glyph-name="gdotaccent" unicode="&#x121;" horiz-adv-x="559" +d="M487 352v-281c0 -112 -23 -179 -69 -222c-48 -43 -116 -58 -177 -58c-58 0 -122 14 -161 40l22 68c32 -21 82 -39 142 -39c90 0 156 47 156 170v53h-2c-26 -45 -79 -81 -154 -81c-120 0 -206 102 -206 237c0 164 107 256 219 256c84 0 129 -43 151 -84h2l3 73h78 +c-3 -34 -4 -74 -4 -132zM399 207v87c0 14 -1 27 -5 39c-16 52 -58 94 -123 94c-84 0 -144 -71 -144 -184c0 -94 49 -174 143 -174c55 0 104 34 122 91c5 14 7 31 7 47zM280 573h-1c-29 0 -50 24 -50 52s23 51 51 51s49 -23 49 -51s-20 -52 -49 -52z" /> + <glyph glyph-name="hbar" unicode="&#x127;" horiz-adv-x="555" +d="M485 0h-88v279c0 78 -29 143 -112 143c-57 0 -101 -40 -118 -88c-5 -12 -6 -25 -6 -42v-292h-88v552h-77v55h77v103h88v-103h194v-55h-194v-144h2c14 25 36 47 63 62c26 15 57 25 90 25c65 0 169 -40 169 -207v-288z" /> + <glyph glyph-name="hcircumflex" unicode="&#x125;" horiz-adv-x="555" +d="M73 0v710h88v-302h2c14 25 36 48 63 62c26 16 57 25 90 25c65 0 169 -40 169 -207v-288h-88v279c0 78 -29 143 -112 143c-57 0 -101 -40 -118 -88c-5 -12 -6 -25 -6 -42v-292h-88zM85 843h67l105 -114h-74l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="ibreve" unicode="&#x12d;" horiz-adv-x="234" +d="M161 0h-88v484h88v-484zM-4 682h52c6 -39 31 -69 72 -69c48 0 69 35 72 69h52c0 -75 -49 -125 -124 -125c-88 0 -124 62 -124 125z" /> + <glyph glyph-name="ij" unicode="&#x133;" horiz-adv-x="477" +d="M161 0h-88v484h88v-484zM116 566h-1c-32 0 -53 25 -53 54c0 31 22 55 55 55c32 0 54 -24 54 -55c0 -29 -21 -54 -55 -54zM198 -211l-10 69c41 3 75 14 96 37c24 27 34 66 34 182v407h88v-441c0 -94 -15 -155 -58 -199c-39 -39 -103 -55 -150 -55zM361 566h-1 +c-32 0 -53 25 -53 54c0 31 22 55 55 55s54 -24 54 -55c0 -29 -20 -54 -55 -54z" /> + <glyph glyph-name="imacron" unicode="&#x12b;" horiz-adv-x="234" +d="M161 0h-88v484h88v-484zM5 643h225v-57h-225v57z" /> + <glyph glyph-name="iogonek" unicode="&#x12f;" horiz-adv-x="234" +d="M116 571h-1c-32 0 -54 25 -54 56c0 30 23 55 56 55s55 -24 55 -55s-21 -56 -56 -56zM161 484v-484h-30c-15 -21 -42 -61 -42 -98c0 -33 22 -51 51 -51c20 0 35 4 46 9l13 -46c-20 -15 -55 -23 -81 -23c-55 0 -93 30 -93 87c0 49 30 95 48 122v484h88z" /> + <glyph glyph-name="itilde" unicode="&#x129;" horiz-adv-x="234" +d="M161 0h-88v484h88v-484zM42 567h-48c-2 65 25 104 68 104c22 0 39 -10 62 -22c16 -9 30 -17 43 -17c15 0 25 9 27 42h47c1 -66 -21 -101 -68 -101c-22 0 -41 10 -62 21c-20 12 -31 18 -43 18c-16 0 -24 -17 -26 -45z" /> + <glyph glyph-name="jcircumflex" unicode="&#x135;" horiz-adv-x="243" +d="M-36 -211l-10 69c41 3 75 14 96 37c24 27 34 66 34 182v407h88v-441c0 -94 -15 -155 -58 -199c-39 -39 -103 -55 -150 -55zM92 686h58l96 -143h-66l-58 94h-2l-58 -94h-64z" /> + <glyph glyph-name="kcommaaccent" unicode="&#x137;" horiz-adv-x="469" +d="M161 710v-448h2c12 17 28 38 42 55l143 167h105l-187 -199l213 -285h-107l-166 232l-45 -50v-182h-88v710h88zM178 -222l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="lacute" unicode="&#x13a;" horiz-adv-x="236" +d="M73 0v710h88v-710h-88zM154 856h106l-128 -117h-71z" /> + <glyph glyph-name="lcaron" unicode="&#x13e;" horiz-adv-x="244" +d="M73 0v710h88v-710h-88zM239 522l-38 30c15 19 35 47 35 88c0 26 -14 50 -30 65l62 14c18 -11 36 -40 36 -74c0 -73 -50 -110 -65 -123z" /> + <glyph glyph-name="lcommaaccent" unicode="&#x13c;" horiz-adv-x="236" +d="M73 0v710h88v-710h-88zM52 -222l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="ldot" unicode="&#x140;" horiz-adv-x="272" +d="M73 0v710h88v-710h-88zM253 341h-1c-27 0 -47 23 -47 50s21 50 48 50c26 0 46 -22 46 -50c0 -27 -19 -50 -46 -50z" /> + <glyph glyph-name="nacute" unicode="&#x144;" horiz-adv-x="555" +d="M73 0v353c0 51 -1 91 -4 131h78l5 -79h2c24 45 80 90 160 90c67 0 171 -40 171 -206v-289h-88v279c0 78 -29 144 -112 144c-57 0 -102 -41 -118 -90c-4 -11 -6 -27 -6 -41v-292h-88zM319 693h96l-122 -143h-62z" /> + <glyph glyph-name="ncaron" unicode="&#x148;" horiz-adv-x="555" +d="M73 0v353c0 51 -1 91 -4 131h78l5 -79h2c24 45 80 90 160 90c67 0 171 -40 171 -206v-289h-88v279c0 78 -29 144 -112 144c-57 0 -102 -41 -118 -90c-4 -11 -6 -27 -6 -41v-292h-88zM311 550h-63l-96 143h67l59 -95h2l59 95h66z" /> + <glyph glyph-name="ncommaaccent" unicode="&#x146;" horiz-adv-x="555" +d="M73 0v353c0 51 -1 91 -4 131h78l5 -79h2c24 45 80 90 160 90c67 0 171 -40 171 -206v-289h-88v279c0 78 -29 144 -112 144c-57 0 -102 -41 -118 -90c-4 -11 -6 -27 -6 -41v-292h-88zM222 -221l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74 +c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="obreve" unicode="&#x14f;" horiz-adv-x="549" +d="M271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186zM151 682h52c6 -39 31 -69 72 -69 +c48 0 69 35 72 69h52c0 -75 -49 -125 -124 -125c-88 0 -124 62 -124 125z" /> + <glyph glyph-name="ohungarumlaut" unicode="&#x151;" horiz-adv-x="549" +d="M271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186zM239 693h86l-110 -136h-55zM383 693h86 +l-110 -136h-55z" /> + <glyph glyph-name="omacron" unicode="&#x14d;" horiz-adv-x="549" +d="M271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186zM163 643h225v-57h-225v57z" /> + <glyph glyph-name="oslashacute" unicode="&#x1ff;" horiz-adv-x="549" +d="M276 495h1c43 0 86 -11 122 -34l42 60l39 -27l-43 -62c47 -46 74 -111 74 -186c0 -178 -123 -257 -236 -257c-45 0 -88 11 -123 34l-44 -61l-37 30l42 60c-46 43 -75 107 -75 187c0 161 106 256 238 256zM161 119l198 281c-22 19 -50 29 -85 29 +c-107 0 -150 -100 -150 -188c0 -42 10 -86 35 -121zM389 362l-198 -279c24 -20 51 -28 81 -28c92 0 153 79 153 188c0 33 -8 80 -34 118zM315 693h96l-122 -143h-62z" /> + <glyph glyph-name="racute" unicode="&#x155;" horiz-adv-x="327" +d="M73 0v333c0 57 -1 106 -4 151h77l4 -95h3c22 65 76 106 135 106c9 0 16 -1 24 -2v-83c-9 1 -18 2 -30 2c-62 0 -106 -47 -118 -112c-2 -13 -3 -27 -3 -41v-259h-88zM217 693h96l-122 -143h-62z" /> + <glyph glyph-name="rcaron" unicode="&#x159;" horiz-adv-x="327" +d="M73 0v333c0 57 -1 106 -4 151h77l4 -95h3c22 65 76 106 135 106c9 0 16 -1 24 -2v-83c-9 1 -18 2 -30 2c-62 0 -106 -47 -118 -112c-2 -13 -3 -27 -3 -41v-259h-88zM214 550h-63l-96 143h67l59 -95h2l59 95h66z" /> + <glyph glyph-name="rcommaaccent" unicode="&#x157;" horiz-adv-x="327" +d="M73 0v333c0 57 -1 106 -4 151h77l4 -95h3c22 65 76 106 135 106c9 0 16 -1 24 -2v-83c-9 1 -18 2 -30 2c-62 0 -106 -47 -118 -112c-2 -13 -3 -27 -3 -41v-259h-88zM60 -222l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74 +c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="sacute" unicode="&#x15b;" horiz-adv-x="396" +d="M40 24l21 66c27 -16 73 -34 117 -34c63 0 93 31 93 72c0 42 -25 64 -89 88c-88 32 -129 80 -129 137c0 78 64 142 167 142c49 0 92 -13 118 -30l-21 -63c-19 11 -54 28 -99 28c-52 0 -80 -30 -80 -66c0 -40 28 -58 91 -83c83 -31 127 -73 127 -145 +c0 -86 -67 -146 -180 -146c-53 0 -102 14 -136 34zM244 693h96l-122 -143h-62z" /> + <glyph glyph-name="scedilla" unicode="&#x15f;" horiz-adv-x="396" +d="M40 23l21 66c27 -16 73 -34 117 -34c64 0 93 32 93 72c0 43 -25 65 -89 89c-88 32 -129 79 -129 137c0 78 64 142 167 142c50 0 92 -13 118 -30l-21 -63c-19 11 -54 28 -99 28c-52 0 -80 -30 -80 -66c0 -41 28 -58 92 -83c82 -31 126 -73 126 -146 +c0 -71 -47 -125 -129 -140l-27 -45c36 -4 70 -30 70 -69c0 -59 -49 -81 -105 -81c-24 0 -51 7 -68 18l15 42c17 -9 37 -14 54 -14c22 0 44 8 43 31c0 27 -30 38 -78 42l40 71h-3c-40 0 -89 11 -128 33z" /> + <glyph glyph-name="scedilla" unicode="&#xf6c2;" horiz-adv-x="396" +d="M40 23l21 66c27 -16 73 -34 117 -34c64 0 93 32 93 72c0 43 -25 65 -89 89c-88 32 -129 79 -129 137c0 78 64 142 167 142c50 0 92 -13 118 -30l-21 -63c-19 11 -54 28 -99 28c-52 0 -80 -30 -80 -66c0 -41 28 -58 92 -83c82 -31 126 -73 126 -146 +c0 -71 -47 -125 -129 -140l-27 -45c36 -4 70 -30 70 -69c0 -59 -49 -81 -105 -81c-24 0 -51 7 -68 18l15 42c17 -9 37 -14 54 -14c22 0 44 8 43 31c0 27 -30 38 -78 42l40 71h-3c-40 0 -89 11 -128 33z" /> + <glyph glyph-name="scircumflex" unicode="&#x15d;" horiz-adv-x="396" +d="M40 24l21 66c27 -16 73 -34 117 -34c63 0 93 31 93 72c0 42 -25 64 -89 88c-88 32 -129 80 -129 137c0 78 64 142 167 142c49 0 92 -13 118 -30l-21 -63c-19 11 -54 28 -99 28c-52 0 -80 -30 -80 -66c0 -40 28 -58 91 -83c83 -31 127 -73 127 -145 +c0 -86 -67 -146 -180 -146c-53 0 -102 14 -136 34zM169 693h61l96 -143h-67l-58 94h-2l-58 -94h-66z" /> + <glyph glyph-name="scommaaccent" unicode="&#x219;" horiz-adv-x="396" +d="M40 24l21 66c27 -16 73 -34 117 -34c63 0 93 31 93 72c0 42 -25 64 -89 88c-88 32 -129 80 -129 137c0 78 64 142 167 142c49 0 92 -13 118 -30l-21 -63c-19 11 -54 28 -99 28c-52 0 -80 -30 -80 -66c0 -40 28 -58 91 -83c83 -31 127 -73 127 -145 +c0 -86 -67 -146 -180 -146c-53 0 -102 14 -136 34zM136 -222l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="tbar" unicode="&#x167;" horiz-adv-x="331" +d="M305 417h-126v-115h98v-54h-98v-96c0 -57 19 -89 66 -89c24 0 38 2 51 6l4 -67c-17 -6 -44 -12 -78 -12c-41 0 -74 14 -95 37c-24 27 -34 70 -34 126v95h-66v54h66v115h-75v67h75v89l86 27v-116h126v-67z" /> + <glyph glyph-name="tcaron" unicode="&#x165;" horiz-adv-x="339" +d="M93 573l86 27v-116h127v-67h-127v-260c0 -60 17 -94 67 -94c23 0 37 2 51 6l4 -67c-17 -6 -45 -12 -79 -12c-41 0 -74 14 -95 37c-24 27 -34 70 -34 127v263h-75v67h75v89zM277 541l-26 35c18 13 38 38 38 74c0 23 -13 45 -30 59l64 13c17 -11 35 -38 35 -69 +c0 -68 -56 -102 -81 -112z" /> + <glyph glyph-name="tcommaaccent" unicode="&#x163;" horiz-adv-x="331" +d="M93 573l86 27v-116h126v-67h-126v-260c0 -60 17 -94 66 -94c24 0 38 2 51 6l4 -67c-17 -6 -44 -12 -78 -12c-41 0 -74 14 -95 37c-24 27 -34 70 -34 127v263h-75v67h75v89zM122 -227l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74 +c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="tcommaaccent" unicode="&#x21b;" horiz-adv-x="331" +d="M93 573l86 27v-116h126v-67h-126v-260c0 -60 17 -94 66 -94c24 0 38 2 51 6l4 -67c-17 -6 -44 -12 -78 -12c-41 0 -74 14 -95 37c-24 27 -34 70 -34 127v263h-75v67h75v89zM122 -227l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74 +c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="ubreve" unicode="&#x16d;" horiz-adv-x="551" +d="M478 484v-351c0 -51 1 -95 4 -133h-78l-5 79h-2c-22 -39 -74 -90 -160 -90c-76 0 -167 43 -167 212v283h88v-267c0 -92 29 -155 108 -155c59 0 100 41 116 81c5 12 8 28 8 45v296h88zM152 682h52c6 -39 31 -69 72 -69c48 0 69 35 72 69h52c0 -75 -49 -125 -124 -125 +c-88 0 -124 62 -124 125z" /> + <glyph glyph-name="uhungarumlaut" unicode="&#x171;" horiz-adv-x="551" +d="M478 484v-351c0 -51 1 -95 4 -133h-78l-5 79h-2c-22 -39 -74 -90 -160 -90c-76 0 -167 43 -167 212v283h88v-267c0 -92 29 -155 108 -155c59 0 100 41 116 81c5 12 8 28 8 45v296h88zM247 693h86l-110 -136h-55zM391 693h86l-110 -136h-55z" /> + <glyph glyph-name="umacron" unicode="&#x16b;" horiz-adv-x="551" +d="M478 484v-351c0 -51 1 -95 4 -133h-78l-5 79h-2c-22 -39 -74 -90 -160 -90c-76 0 -167 43 -167 212v283h88v-267c0 -92 29 -155 108 -155c59 0 100 41 116 81c5 12 8 28 8 45v296h88zM164 643h225v-57h-225v57z" /> + <glyph glyph-name="uogonek" unicode="&#x173;" horiz-adv-x="551" +d="M478 484v-351c0 -51 1 -96 4 -133l-21 3c-15 -21 -41 -61 -41 -98c0 -33 22 -51 51 -51c19 0 34 4 45 9l14 -46c-21 -15 -56 -23 -81 -23c-55 0 -93 30 -93 87c0 49 30 95 48 122l-5 76h-2c-22 -39 -74 -90 -160 -90c-76 0 -167 43 -167 212v283h88v-267 +c0 -92 29 -155 108 -155c59 0 100 41 116 81c5 12 8 28 8 45v296h88z" /> + <glyph glyph-name="uring" unicode="&#x16f;" horiz-adv-x="551" +d="M478 484v-351c0 -51 1 -95 4 -133h-78l-5 79h-2c-22 -39 -74 -90 -160 -90c-76 0 -167 43 -167 212v283h88v-267c0 -92 29 -155 108 -155c59 0 100 41 116 81c5 12 8 28 8 45v296h88zM277 723h1c60 0 99 -41 99 -94c0 -52 -43 -92 -100 -92c-60 0 -102 41 -102 92 +c0 52 40 94 102 94zM276 685h-1c-30 0 -49 -26 -49 -56c0 -27 20 -54 50 -54c32 0 52 25 52 55s-20 55 -52 55z" /> + <glyph glyph-name="utilde" unicode="&#x169;" horiz-adv-x="551" +d="M478 484v-351c0 -51 1 -95 4 -133h-78l-5 79h-2c-22 -39 -74 -90 -160 -90c-76 0 -167 43 -167 212v283h88v-267c0 -92 29 -155 108 -155c59 0 100 41 116 81c5 12 8 28 8 45v296h88zM201 567h-48c-2 65 25 104 68 104c22 0 39 -10 62 -22c16 -9 30 -17 43 -17 +c15 0 25 9 27 42h47c1 -66 -21 -101 -68 -101c-22 0 -41 10 -62 21c-20 12 -31 18 -43 18c-16 0 -24 -17 -26 -45z" /> + <glyph glyph-name="wacute" unicode="&#x1e83;" horiz-adv-x="736" +d="M18 484h90l65 -245c13 -54 26 -105 35 -155h3c11 49 27 101 43 154l79 246h74l75 -242c18 -57 32 -109 43 -158h3c8 49 21 100 37 157l69 243h87l-156 -484h-80l-74 231c-17 55 -31 103 -43 160h-2c-12 -58 -27 -109 -44 -161l-78 -230h-80zM411 693h96l-122 -143h-62z +" /> + <glyph glyph-name="wcircumflex" unicode="&#x175;" horiz-adv-x="736" +d="M18 484h90l65 -245c13 -54 26 -105 35 -155h3c11 49 27 101 43 154l79 246h74l75 -242c18 -57 32 -109 43 -158h3c8 49 21 100 37 157l69 243h87l-156 -484h-80l-74 231c-17 55 -31 103 -43 160h-2c-12 -58 -27 -109 -44 -161l-78 -230h-80zM337 693h61l96 -143h-67 +l-58 94h-2l-58 -94h-66z" /> + <glyph glyph-name="wdieresis" unicode="&#x1e85;" horiz-adv-x="736" +d="M18 484h90l65 -245c13 -54 26 -105 35 -155h3c11 49 27 101 43 154l79 246h74l75 -242c18 -57 32 -109 43 -158h3c8 49 21 100 37 157l69 243h87l-156 -484h-80l-74 231c-17 55 -31 103 -43 160h-2c-12 -58 -27 -109 -44 -161l-78 -230h-80zM275 570h-1 +c-28 0 -49 24 -49 51c0 28 22 51 51 51c27 0 48 -22 48 -51c0 -27 -20 -51 -49 -51zM461 570h-1c-29 0 -49 24 -49 51c0 28 22 51 50 51s49 -22 49 -51c0 -27 -20 -51 -49 -51z" /> + <glyph glyph-name="wgrave" unicode="&#x1e81;" horiz-adv-x="736" +d="M18 484h90l65 -245c13 -54 26 -105 35 -155h3c11 49 27 101 43 154l79 246h74l75 -242c18 -57 32 -109 43 -158h3c8 49 21 100 37 157l69 243h87l-156 -484h-80l-74 231c-17 55 -31 103 -43 160h-2c-12 -58 -27 -109 -44 -161l-78 -230h-80zM237 693h96l88 -143h-62z" /> + <glyph glyph-name="ycircumflex" unicode="&#x177;" horiz-adv-x="471" +d="M9 484h96l105 -286c12 -32 24 -70 32 -99h2c9 29 19 66 31 101l96 284h93l-132 -345c-63 -166 -106 -250 -166 -303c-44 -37 -86 -52 -108 -56l-22 73c22 7 51 21 77 43c24 19 53 53 74 98c4 9 7 16 7 21s-2 12 -7 23zM207 693h61l96 -143h-67l-58 94h-2l-58 -94h-66z +" /> + <glyph glyph-name="ygrave" unicode="&#x1ef3;" horiz-adv-x="471" +d="M9 484h96l105 -286c12 -32 24 -70 32 -99h2c9 29 19 66 31 101l96 284h93l-132 -345c-63 -166 -106 -250 -166 -303c-44 -37 -86 -52 -108 -56l-22 73c22 7 51 21 77 43c24 19 53 53 74 98c4 9 7 16 7 21s-2 12 -7 23zM108 693h96l88 -143h-62z" /> + <glyph glyph-name="zacute" unicode="&#x17a;" horiz-adv-x="428" +d="M18 0v51l219 285c22 27 41 50 64 76v2h-263v70h369v-55l-217 -282c-20 -26 -40 -51 -62 -75v-2h283v-70h-393zM261 693h96l-122 -143h-62z" /> + <glyph glyph-name="zdotaccent" unicode="&#x17c;" horiz-adv-x="428" +d="M18 0v51l219 285c22 27 41 50 64 76v2h-263v70h369v-55l-217 -282c-20 -26 -40 -51 -62 -75v-2h283v-70h-393zM217 570h-1c-29 0 -50 24 -50 52s23 51 51 51s49 -23 49 -51s-20 -52 -49 -52z" /> + <glyph glyph-name="kgreenlandic" unicode="&#x138;" horiz-adv-x="469" +d="M161 484v-222h2c12 17 28 38 42 55l143 167h105l-187 -199l213 -285h-107l-166 232l-45 -50v-182h-88v484h88z" /> + <glyph glyph-name="napostrophe" unicode="&#x149;" horiz-adv-x="555" +d="M73 0v353c0 51 -1 91 -4 131h78l5 -79h2c24 45 80 90 160 90c67 0 171 -40 171 -206v-289h-88v279c0 78 -29 144 -112 144c-57 0 -102 -41 -118 -90c-4 -11 -6 -27 -6 -41v-292h-88zM56 536l-38 29c17 19 37 45 37 82c0 24 -14 46 -31 59l64 17c16 -10 35 -37 35 -72 +c0 -66 -51 -102 -67 -115z" /> + <glyph glyph-name="tonos" unicode="&#x384;" horiz-adv-x="301" +d="M137 694h89l-83 -143h-59z" /> + <glyph glyph-name="dieresistonos" unicode="&#x385;" horiz-adv-x="346" +d="M152 710h76l-49 -157h-48zM51 573h-1c-27 0 -46 22 -46 48s21 47 48 47c25 0 45 -21 45 -47s-19 -48 -46 -48zM292 573h-1c-26 0 -45 22 -45 48s21 47 47 47s46 -21 46 -47s-19 -48 -47 -48z" /> + <glyph glyph-name="Alpha" unicode="&#x391;" horiz-adv-x="612" +d="M424 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM203 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122z" /> + <glyph glyph-name="Beta" unicode="&#x392;" horiz-adv-x="542" +d="M76 2v662c38 9 99 15 159 15c87 0 143 -15 184 -49c35 -26 57 -66 57 -119c0 -66 -44 -123 -114 -148v-3c64 -15 139 -68 139 -168c0 -58 -23 -102 -58 -135c-46 -43 -122 -63 -232 -63c-60 0 -106 4 -135 8zM163 606v-218h79c91 0 145 49 145 114c0 78 -59 110 -147 110 +c-40 0 -63 -3 -77 -6zM163 323v-257c18 -3 42 -4 73 -4c90 0 173 33 173 131c0 91 -79 130 -174 130h-72z" /> + <glyph glyph-name="Gamma" unicode="&#x393;" horiz-adv-x="451" +d="M75 674h362v-73h-274v-601h-88v674z" /> + <glyph glyph-name="Delta" unicode="&#x394;" horiz-adv-x="620" +d="M26 0v50l234 624h99l232 -624v-50h-565zM119 73h375l-137 371c-17 47 -38 107 -50 150h-3c-9 -34 -28 -90 -44 -137z" /> + <glyph glyph-name="Delta" unicode="&#xe000;" horiz-adv-x="620" +d="M26 0v50l234 624h99l232 -624v-50h-565zM119 73h375l-137 371c-17 47 -38 107 -50 150h-3c-9 -34 -28 -90 -44 -137z" /> + <glyph glyph-name="Epsilon" unicode="&#x395;" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261z" /> + <glyph glyph-name="Zeta" unicode="&#x396;" horiz-adv-x="553" +d="M30 0v51l374 547v3h-342v73h455v-53l-372 -545v-3h377v-73h-492z" /> + <glyph glyph-name="Eta" unicode="&#x397;" horiz-adv-x="652" +d="M75 674h88v-282h326v282h88v-674h-88v316h-326v-316h-88v674z" /> + <glyph glyph-name="Theta" unicode="&#x398;" horiz-adv-x="689" +d="M341 -11h-1c-179 0 -304 138 -304 342c0 213 133 354 313 354c184 0 304 -141 304 -342c0 -230 -141 -354 -312 -354zM343 60h1c139 0 217 127 217 280c0 134 -70 274 -216 274c-145 0 -217 -135 -217 -281c0 -142 78 -273 215 -273zM209 383h271v-72h-271v72z" /> + <glyph glyph-name="Iota" unicode="&#x399;" horiz-adv-x="239" +d="M75 674h88v-674h-88v674z" /> + <glyph glyph-name="Kappa" unicode="&#x39a;" horiz-adv-x="542" +d="M76 0v674h87v-325h3c18 26 36 50 53 72l206 253h108l-244 -286l263 -388h-103l-221 331l-65 -74v-257h-87z" /> + <glyph glyph-name="Lambda" unicode="&#x39b;" horiz-adv-x="609" +d="M590 0h-94l-156 464c-15 47 -25 87 -35 128h-3c-9 -42 -20 -83 -33 -127l-153 -465h-91l230 674h103z" /> + <glyph glyph-name="Mu" unicode="&#x39c;" horiz-adv-x="804" +d="M660 0l-16 296c-5 93 -11 208 -11 291h-2c-24 -78 -51 -164 -85 -256l-119 -327h-66l-110 321c-32 95 -58 182 -77 262h-2c-2 -84 -7 -197 -13 -298l-18 -289h-83l47 674h111l115 -326c28 -83 50 -158 68 -228h2c18 68 42 143 72 228l120 326h111l42 -674h-86z" /> + <glyph glyph-name="Nu" unicode="&#x39d;" horiz-adv-x="658" +d="M158 0h-82v674h96l215 -341c49 -79 89 -150 120 -219l3 1c-8 90 -10 172 -10 276v283h82v-674h-88l-214 342c-47 75 -92 152 -125 225l-3 -1c5 -85 6 -166 6 -278v-288z" /> + <glyph glyph-name="Xi" unicode="&#x39e;" horiz-adv-x="540" +d="M54 674h440v-72h-440v72zM87 385h374v-72h-374v72zM43 73h462v-73h-462v73z" /> + <glyph glyph-name="Omicron" unicode="&#x39f;" horiz-adv-x="689" +d="M340 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM343 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273z" /> + <glyph glyph-name="Pi" unicode="&#x3a0;" horiz-adv-x="634" +d="M558 674v-674h-88v600h-307v-600h-88v674h483z" /> + <glyph glyph-name="Rho" unicode="&#x3a1;" horiz-adv-x="532" +d="M76 0v665c42 8 97 14 167 14c86 0 149 -20 189 -56c37 -32 60 -81 60 -140c0 -61 -18 -109 -53 -144c-46 -49 -121 -74 -206 -74c-26 0 -50 1 -70 6v-271h-87zM163 603v-261c19 -5 43 -7 72 -7c105 0 169 51 169 143c0 89 -63 132 -159 132c-38 0 -67 -3 -82 -7z" /> + <glyph glyph-name="Sigma" unicode="&#x3a3;" horiz-adv-x="552" +d="M140 77v-4h384v-73h-498v53l234 282l-222 280v59h454v-73h-341v-3l206 -260z" /> + <glyph glyph-name="Tau" unicode="&#x3a4;" horiz-adv-x="497" +d="M204 0v600h-205v74h499v-74h-206v-600h-88z" /> + <glyph glyph-name="Upsilon" unicode="&#x3a5;" horiz-adv-x="588" +d="M11 609l15 71c47 -4 119 -37 165 -91c51 -57 91 -141 104 -247h4c16 108 68 192 117 245c47 50 108 86 153 93l15 -71c-74 -28 -185 -124 -231 -298c-10 -40 -18 -86 -18 -138v-173h-88v174c0 50 -5 95 -14 136c-40 181 -134 279 -222 299z" /> + <glyph glyph-name="Phi" unicode="&#x3a6;" horiz-adv-x="718" +d="M400 26v-52h-84v52c-137 12 -280 106 -280 307c0 207 154 307 282 317v50h84v-50c139 -11 280 -113 280 -313c0 -199 -141 -300 -282 -311zM317 89v498c-87 -7 -191 -91 -191 -252c0 -148 93 -234 191 -246zM401 587v-498c96 9 191 93 191 247c0 160 -96 242 -191 251z +" /> + <glyph glyph-name="Chi" unicode="&#x3a7;" horiz-adv-x="571" +d="M546 0h-101l-87 149c-35 57 -56 94 -77 133h-2c-19 -39 -38 -75 -73 -134l-81 -148h-100l206 341l-198 333h101l89 -158c25 -44 44 -78 62 -114h3c19 40 36 71 61 114l91 158h101l-205 -328z" /> + <glyph glyph-name="Psi" unicode="&#x3a8;" horiz-adv-x="685" +d="M639 674v-195c0 -175 -106 -265 -255 -273v-206h-83v206c-130 6 -254 72 -254 248v220h85v-205c0 -137 70 -189 169 -194v399h83v-400c89 6 170 60 170 214v186h85z" /> + <glyph glyph-name="Omega" unicode="&#x3a9;" horiz-adv-x="705" +d="M528 72v-3h146v-69h-252v55c80 55 149 162 149 297c0 123 -73 262 -216 262c-142 0 -221 -131 -221 -263c0 -127 71 -246 150 -296v-55h-254v69h146v3c-68 56 -133 156 -133 286c0 192 136 327 315 327c186 0 303 -141 303 -319c0 -138 -66 -238 -133 -294z" /> + <glyph glyph-name="Omega" unicode="&#x2126;" horiz-adv-x="705" +d="M528 72v-3h146v-69h-252v55c80 55 149 162 149 297c0 123 -73 262 -216 262c-142 0 -221 -131 -221 -263c0 -127 71 -246 150 -296v-55h-254v69h146v3c-68 56 -133 156 -133 286c0 192 136 327 315 327c186 0 303 -141 303 -319c0 -138 -66 -238 -133 -294z" /> + <glyph glyph-name="Alphatonos" unicode="&#x386;" horiz-adv-x="615" +d="M427 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM206 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122zM70 674h79l-35 -155h-52z" /> + <glyph glyph-name="Epsilontonos" unicode="&#x388;" horiz-adv-x="561" +d="M494 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261zM7 674h79l-34 -155h-52z" /> + <glyph glyph-name="Etatonos" unicode="&#x389;" horiz-adv-x="722" +d="M145 674h88v-282h325v282h88v-674h-88v316h-325v-316h-88v674zM7 674h80l-35 -155h-52z" /> + <glyph glyph-name="Iotatonos" unicode="&#x38a;" horiz-adv-x="309" +d="M145 674h88v-674h-88v674zM7 674h79l-34 -155h-52z" /> + <glyph glyph-name="Iotadieresis" unicode="&#x3aa;" horiz-adv-x="239" +d="M28 711h-1c-29 0 -49 23 -49 50s22 50 50 50c27 0 48 -22 48 -50c0 -27 -19 -50 -48 -50zM211 711h-1c-28 0 -48 23 -48 50s21 50 50 50c27 0 48 -22 48 -50c0 -27 -19 -50 -49 -50zM75 674h88v-674h-88v674z" /> + <glyph glyph-name="Omicrontonos" unicode="&#x38c;" horiz-adv-x="728" +d="M380 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM383 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273zM7 674h80l-35 -155h-52z" /> + <glyph glyph-name="Upsilontonos" unicode="&#x38e;" horiz-adv-x="707" +d="M128 609l15 71c47 -4 119 -37 165 -91c51 -57 91 -141 104 -247h4c16 108 68 192 117 245c47 50 108 86 153 93l15 -71c-74 -28 -185 -124 -231 -298c-10 -40 -18 -86 -18 -138v-173h-88v174c0 50 -5 95 -14 136c-40 181 -134 279 -222 299zM7 674h79l-35 -155h-51z" /> + <glyph glyph-name="Upsilondieresis" unicode="&#x3ab;" horiz-adv-x="588" +d="M207 697h-1c-29 0 -49 23 -49 50s22 50 50 50c27 0 48 -22 48 -50c0 -27 -19 -50 -48 -50zM390 697h-1c-28 0 -48 23 -48 50s21 50 50 50c27 0 48 -22 48 -50c0 -27 -19 -50 -49 -50zM11 609l15 71c47 -4 119 -37 165 -91c51 -57 91 -141 104 -247h4 +c16 108 68 192 117 245c47 50 108 86 153 93l15 -71c-74 -28 -185 -124 -231 -298c-10 -40 -18 -86 -18 -138v-173h-88v174c0 50 -5 95 -14 136c-40 181 -134 279 -222 299z" /> + <glyph glyph-name="Omegatonos" unicode="&#x38f;" horiz-adv-x="742" +d="M565 72v-3h146v-69h-253v55c81 54 150 157 150 296c0 123 -73 263 -217 263c-142 0 -220 -132 -220 -264c0 -131 69 -246 149 -295v-55h-253v69h145v3c-68 56 -132 155 -132 285c0 192 135 328 314 328c186 0 304 -142 304 -320c0 -139 -65 -238 -133 -293zM8 674h79 +l-35 -155h-52z" /> + <glyph glyph-name="alpha" unicode="&#x3b1;" horiz-adv-x="551" +d="M416 484h73c-5 -51 -13 -217 -13 -346c0 -58 14 -81 48 -82l-7 -63c-7 -3 -20 -4 -30 -4c-43 0 -78 28 -83 102h-3c-31 -59 -88 -102 -165 -102c-115 0 -198 96 -198 243c0 159 104 263 216 263c70 0 124 -36 149 -96h4c2 37 5 62 9 85zM127 235v-1 +c0 -91 47 -175 131 -175c61 0 114 59 130 123c5 22 5 41 5 68c0 19 0 35 -3 52c-12 65 -60 124 -125 124c-81 0 -138 -81 -138 -191z" /> + <glyph glyph-name="beta" unicode="&#x3b2;" horiz-adv-x="560" +d="M159 50h-2v-67c0 -56 1 -140 12 -181h-83c-11 32 -15 100 -15 170v461c0 138 37 198 75 235c34 32 78 53 142 53c100 0 176 -70 176 -174c0 -76 -44 -133 -90 -155v-5c76 -15 148 -79 148 -191c0 -134 -102 -207 -208 -207c-68 0 -117 22 -155 61zM157 443v-306 +c22 -37 72 -80 140 -80c80 0 137 60 137 139c0 97 -68 146 -156 149h-27v60c6 0 12 0 18 1c75 5 113 65 113 128c0 71 -43 117 -102 117c-80 0 -123 -70 -123 -208z" /> + <glyph glyph-name="gamma" unicode="&#x3b3;" horiz-adv-x="464" +d="M269 -198h-87c3 93 6 188 -17 284c-37 160 -122 324 -171 398h99c43 -66 117 -228 147 -376h4c44 80 114 224 114 343v33h83c2 -8 2 -21 2 -33c0 -124 -77 -284 -171 -425c-6 -8 -6 -15 -6 -24c2 -57 3 -132 3 -200z" /> + <glyph glyph-name="delta" unicode="&#x3b4;" horiz-adv-x="546" +d="M466 672l-26 -58c-21 16 -77 41 -132 41s-82 -21 -82 -45c0 -27 26 -46 72 -82l82 -65c80 -61 128 -131 128 -227c0 -150 -105 -247 -236 -247c-124 0 -234 88 -234 243c0 124 85 206 183 253v5l-22 18c-23 19 -62 54 -62 100c0 53 55 113 169 113c70 0 132 -25 160 -49z +M326 402l-53 42c-76 -40 -146 -106 -146 -212c0 -112 75 -177 150 -177c78 0 143 65 143 175c0 68 -31 124 -94 172z" /> + <glyph glyph-name="epsilon" unicode="&#x3b5;" horiz-adv-x="440" +d="M158 259v4c-63 14 -95 54 -95 101c0 65 64 131 193 131c62 0 111 -12 147 -36l-19 -59c-21 14 -73 31 -121 31c-68 0 -112 -29 -112 -73c0 -49 59 -70 134 -70h59v-62h-61c-87 0 -152 -24 -152 -83c0 -57 60 -87 131 -87c53 0 113 19 142 37l16 -60 +c-37 -25 -109 -44 -177 -44c-97 0 -204 38 -204 147c0 59 49 110 119 123z" /> + <glyph glyph-name="zeta" unicode="&#x3b6;" horiz-adv-x="409" +d="M341 -143l-58 17c14 23 32 84 33 110c-35 5 -78 13 -118 27c-88 29 -159 94 -159 223c0 138 90 301 245 407v3h-71c-46 0 -87 2 -117 9l9 59c32 -4 77 -4 122 -3h167l13 -61c-160 -81 -279 -252 -279 -399c0 -107 51 -150 124 -176c46 -17 94 -24 140 -30 +c5 -1 9 -5 9 -11c0 -58 -33 -140 -60 -175z" /> + <glyph glyph-name="eta" unicode="&#x3b7;" horiz-adv-x="555" +d="M152 405h2c24 45 80 90 160 90c67 0 171 -40 171 -206v-307c0 -55 1 -140 11 -180h-84c-12 30 -15 113 -15 177v300c0 78 -29 144 -112 144c-57 0 -102 -41 -118 -91c-4 -10 -6 -26 -6 -40v-292h-88v353c0 49 -3 98 -14 131h79c9 -18 14 -49 14 -79z" /> + <glyph glyph-name="theta" unicode="&#x3b8;" horiz-adv-x="534" +d="M269 -11h-1c-141 0 -230 125 -230 372c0 204 83 360 234 360c154 0 225 -145 225 -360c0 -225 -73 -372 -228 -372zM125 399h285c0 142 -46 257 -143 257c-89 0 -142 -121 -142 -257zM411 334h-286c0 -178 60 -280 146 -280c94 0 140 116 140 280z" /> + <glyph glyph-name="iota" unicode="&#x3b9;" horiz-adv-x="236" +d="M161 484v-367c0 -43 9 -61 47 -59l-5 -64c-9 -3 -25 -5 -39 -5c-52 0 -91 23 -91 119v376h88z" /> + <glyph glyph-name="kappa" unicode="&#x3ba;" horiz-adv-x="493" +d="M250 263v-3c48 -12 100 -74 149 -139l88 -121h-102l-76 103c-49 64 -94 111 -139 112h-9v-215h-88v379c0 39 -3 88 -11 105h85c9 -11 14 -42 14 -82v-133h4c87 82 155 158 212 215h103v-4c-68 -63 -145 -137 -230 -217z" /> + <glyph glyph-name="lambda" unicode="&#x3bb;" horiz-adv-x="472" +d="M364 0l-98 277c-12 33 -22 66 -33 105h-4c-7 -32 -20 -69 -31 -102l-100 -280h-91l175 448c4 11 5 19 5 24s-1 13 -6 25c-31 85 -67 152 -126 152c-5 0 -11 0 -17 -1l8 68c8 3 22 4 34 4c95 0 139 -91 192 -228l185 -492h-93z" /> + <glyph glyph-name="uni03BC" unicode="&#x3bc;" horiz-adv-x="553" +d="M403 76h-3c-20 -38 -67 -85 -139 -85c-44 0 -85 16 -106 54v-60c0 -54 2 -143 11 -183h-79c-10 30 -14 101 -14 178v504h88v-286c0 -75 31 -136 109 -136c58 0 99 41 115 80c5 13 8 29 8 46v296h88v-350c0 -54 10 -75 46 -77l-7 -64c-11 -3 -16 -4 -31 -4 +c-43 0 -78 24 -86 87z" /> + <glyph glyph-name="nu" unicode="&#x3bd;" horiz-adv-x="469" +d="M4 484h93l93 -271c16 -44 28 -85 41 -127h4c40 79 125 241 125 353c0 17 0 31 -1 45h82c2 -10 3 -23 3 -35c0 -138 -92 -301 -180 -449h-83z" /> + <glyph glyph-name="xi" unicode="&#x3be;" horiz-adv-x="433" +d="M361 435v-63h-27c-139 -1 -204 -68 -204 -152c0 -81 55 -126 154 -152c47 -13 92 -19 132 -25c6 0 10 -5 10 -11c0 -52 -32 -140 -60 -175l-57 17c13 23 31 85 32 110c-133 19 -302 59 -302 229c0 96 70 170 156 194v5c-74 23 -111 75 -111 141c0 83 69 168 209 168 +c53 0 95 -11 122 -27l-18 -61c-20 11 -57 23 -99 23c-84 0 -126 -53 -126 -109c0 -70 62 -108 141 -112h48z" /> + <glyph glyph-name="omicron" unicode="&#x3bf;" horiz-adv-x="549" +d="M271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186z" /> + <glyph glyph-name="pi" unicode="&#x3c0;" horiz-adv-x="555" +d="M520 416h-67v-272c0 -79 6 -119 13 -144h-84c-9 15 -16 58 -16 136v280h-158c-4 -128 -33 -336 -68 -416h-83c36 95 64 287 67 416c-39 0 -73 -2 -98 -9l-12 52c22 15 61 25 139 25h376z" /> + <glyph glyph-name="rho" unicode="&#x3c1;" horiz-adv-x="563" +d="M157 60h-2v-78c0 -55 1 -140 7 -180h-84c-8 30 -11 101 -11 176v224c0 125 33 181 70 221c38 40 94 72 167 72c135 0 222 -101 222 -246c0 -171 -107 -260 -222 -260c-63 0 -118 26 -147 71zM155 230v-40c0 -12 1 -24 4 -35c15 -55 69 -97 131 -97c93 0 147 80 147 189 +c0 95 -50 175 -140 175c-70 0 -142 -57 -142 -192z" /> + <glyph glyph-name="sigma" unicode="&#x3c3;" horiz-adv-x="554" +d="M412 433v-4c57 -40 90 -111 90 -184c0 -178 -122 -256 -232 -256c-130 0 -232 95 -232 249c0 162 103 257 249 257h93h53c33 0 91 -1 109 0l-3 -66c-23 0 -56 0 -127 4zM272 55h1c79 0 142 80 142 190c0 82 -42 184 -142 184s-145 -96 -145 -188c0 -106 61 -186 144 -186 +z" /> + <glyph glyph-name="tau" unicode="&#x3c4;" horiz-adv-x="413" +d="M321 60l-4 -62c-9 -6 -29 -9 -48 -9c-78 0 -112 48 -112 150v277h-53c-51 0 -77 -4 -98 -8l-11 51c16 12 52 25 131 25h279l-11 -68h-149v-275c0 -66 26 -82 55 -82c9 0 16 0 21 1z" /> + <glyph glyph-name="upsilon" unicode="&#x3c5;" horiz-adv-x="524" +d="M360 484h82c16 -31 36 -108 36 -189c0 -142 -46 -306 -221 -306c-106 0 -190 63 -190 196v136c0 85 -2 136 -10 163h84c9 -10 14 -38 14 -90v-197c0 -98 56 -135 109 -135c84 0 128 86 128 225c0 90 -21 172 -32 197z" /> + <glyph glyph-name="phi" unicode="&#x3c6;" horiz-adv-x="642" +d="M205 499l33 -49c-51 -33 -112 -98 -112 -203c0 -97 52 -177 156 -193v294c0 104 58 147 124 146c95 -1 197 -91 197 -239c0 -167 -118 -253 -240 -265v-188h-81v188c-120 9 -244 83 -244 256c0 140 100 225 167 253zM363 362v-309c95 13 156 87 156 200 +c0 99 -58 177 -114 177c-25 0 -42 -22 -42 -68z" /> + <glyph glyph-name="chi" unicode="&#x3c7;" horiz-adv-x="457" +d="M18 484h94l123 -261h4c14 32 30 65 50 107l73 154h85l-170 -327l176 -348l-82 -22l-144 297l-4 -1c-13 -29 -28 -64 -46 -103l-91 -193l-75 23l173 346z" /> + <glyph glyph-name="psi" unicode="&#x3c8;" horiz-adv-x="655" +d="M295 -198v187c-124 8 -228 64 -228 252v131c0 44 -2 88 -8 112h80c8 -11 13 -40 13 -90v-146c0 -142 67 -190 143 -195v558h81v-558c87 4 149 94 149 233c0 101 -23 178 -36 198h81c20 -31 39 -101 39 -191c0 -144 -61 -295 -233 -304v-187h-81z" /> + <glyph glyph-name="omega" unicode="&#x3c9;" horiz-adv-x="694" +d="M388 363l-2 -191c0 -62 35 -110 83 -110c50 0 101 64 101 195c0 95 -33 186 -80 231v2h83c43 -36 83 -124 83 -235c0 -181 -91 -266 -182 -266c-60 0 -107 33 -127 85h-3c-24 -52 -69 -85 -129 -85c-84 0 -177 73 -177 258c0 109 42 201 84 243h82v-2 +c-45 -49 -80 -136 -80 -239c0 -135 57 -187 103 -187c45 0 81 49 80 109l-1 192h82z" /> + <glyph glyph-name="alphatonos" unicode="&#x3ac;" horiz-adv-x="551" +d="M286 686h88l-83 -143h-59zM416 484h73c-5 -51 -13 -217 -13 -346c0 -58 14 -81 48 -82l-7 -63c-7 -3 -20 -4 -30 -4c-43 0 -78 28 -83 102h-3c-31 -59 -88 -102 -165 -102c-115 0 -198 96 -198 243c0 159 104 263 216 263c70 0 124 -36 149 -96h4c2 37 5 62 9 85z +M127 235v-1c0 -91 47 -175 131 -175c61 0 114 59 130 123c5 22 5 41 5 68c0 19 0 35 -3 52c-12 65 -60 124 -125 124c-81 0 -138 -81 -138 -191z" /> + <glyph glyph-name="epsilontonos" unicode="&#x3ad;" horiz-adv-x="440" +d="M256 686h89l-84 -143h-58zM158 259v4c-63 14 -95 54 -95 101c0 65 64 131 193 131c62 0 111 -13 147 -37l-19 -58c-21 14 -73 31 -121 31c-68 0 -112 -29 -112 -73c0 -49 59 -70 134 -70h59v-62h-61c-87 0 -152 -24 -152 -83c0 -57 60 -87 131 -87c53 0 113 19 142 36 +l16 -59c-37 -25 -109 -44 -177 -44c-97 0 -204 38 -204 147c0 59 49 109 119 123z" /> + <glyph glyph-name="etatonos" unicode="&#x3ae;" horiz-adv-x="555" +d="M301 686h89l-84 -143h-58zM152 405h2c24 45 80 90 160 90c67 0 171 -40 171 -206v-307c0 -55 1 -140 11 -180h-84c-12 30 -15 113 -15 177v300c0 78 -29 144 -112 144c-57 0 -102 -41 -118 -91c-4 -10 -6 -26 -6 -40v-292h-88v353c0 49 -3 98 -14 131h79 +c9 -18 14 -49 14 -79z" /> + <glyph glyph-name="iotatonos" unicode="&#x3af;" horiz-adv-x="236" +d="M133 687h90l-84 -143h-59zM161 484v-367c0 -43 9 -61 47 -59l-5 -64c-9 -3 -25 -5 -39 -5c-52 0 -91 23 -91 119v376h88z" /> + <glyph glyph-name="iotadieresis" unicode="&#x3ca;" horiz-adv-x="236" +d="M29 557h-1c-29 0 -49 24 -49 51s22 50 50 50c27 0 48 -22 48 -50c0 -27 -19 -51 -48 -51zM212 557h-1c-28 0 -48 24 -48 51s21 50 50 50c27 0 48 -22 48 -50c0 -27 -19 -51 -49 -51zM161 484v-367c0 -43 9 -61 47 -59l-5 -64c-9 -3 -25 -5 -39 -5c-52 0 -91 23 -91 120 +v375h88z" /> + <glyph glyph-name="omicrontonos" unicode="&#x3cc;" horiz-adv-x="549" +d="M289 686h88l-83 -143h-58zM271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186z" /> + <glyph glyph-name="upsilontonos" unicode="&#x3cd;" horiz-adv-x="524" +d="M272 687h89l-83 -143h-59zM360 484h82c16 -31 36 -108 36 -189c0 -142 -46 -306 -221 -306c-106 0 -190 63 -190 196v136c0 85 -2 136 -10 163h84c9 -10 14 -38 14 -90v-197c0 -98 56 -135 109 -135c84 0 128 86 128 225c0 90 -21 172 -32 197z" /> + <glyph glyph-name="upsilondieresis" unicode="&#x3cb;" horiz-adv-x="524" +d="M166 557h-1c-29 0 -49 24 -49 51s22 50 50 50c27 0 48 -22 48 -50c0 -27 -19 -51 -48 -51zM349 557h-1c-28 0 -48 24 -48 51s21 50 50 50c27 0 47 -22 47 -50c0 -27 -18 -51 -48 -51zM360 484h82c16 -31 36 -108 36 -189c0 -142 -46 -306 -221 -306 +c-106 0 -190 63 -190 196v136c0 85 -2 136 -10 163h84c9 -10 14 -38 14 -90v-197c0 -98 56 -135 110 -135c84 0 128 86 128 225c0 90 -21 172 -33 197z" /> + <glyph glyph-name="omegatonos" unicode="&#x3ce;" horiz-adv-x="694" +d="M361 686h88l-83 -143h-58zM388 363l-2 -191c0 -62 35 -110 83 -110c50 0 101 64 101 195c0 95 -33 186 -80 231v2h83c43 -36 83 -124 83 -235c0 -181 -91 -266 -182 -266c-60 0 -107 33 -127 85h-3c-24 -52 -69 -85 -129 -85c-84 0 -177 73 -177 258c0 109 42 201 84 243 +h82v-2c-45 -49 -80 -136 -80 -239c0 -135 57 -187 103 -187c45 0 81 49 80 109l-1 192h82z" /> + <glyph glyph-name="iotadieresistonos" unicode="&#x390;" horiz-adv-x="236" +d="M161 484v-367c0 -43 9 -61 47 -59l-5 -64c-9 -3 -25 -5 -39 -5c-52 0 -91 23 -91 119v376h88zM107 696h75l-50 -156h-47zM5 561h-1c-26 0 -45 21 -45 46s21 46 47 46c25 0 44 -20 44 -46c0 -25 -18 -46 -45 -46zM246 561h-1c-25 0 -44 21 -44 46s20 46 46 46 +s45 -20 45 -46c0 -25 -18 -46 -46 -46z" /> + <glyph glyph-name="upsilondieresistonos" unicode="&#x3b0;" horiz-adv-x="524" +d="M360 484h82c16 -31 36 -108 36 -189c0 -142 -46 -306 -221 -306c-106 0 -190 63 -190 196v136c0 85 -2 136 -10 163h84c9 -10 14 -38 14 -90v-197c0 -98 56 -135 109 -135c84 0 128 86 128 225c0 90 -21 172 -32 197zM242 695h75l-49 -156h-47zM140 560h-1 +c-26 0 -45 21 -45 47c0 25 21 46 47 46c25 0 44 -20 44 -47c0 -25 -18 -46 -45 -46zM382 560h-1c-25 0 -44 21 -44 47c0 25 20 46 46 46s45 -20 45 -47c0 -25 -18 -46 -46 -46z" /> + <glyph glyph-name="uni03C2" unicode="&#x3c2;" horiz-adv-x="417" +d="M408 473l-20 -64c-25 11 -51 18 -89 18c-105 0 -172 -85 -172 -185c0 -95 50 -146 136 -172c48 -14 84 -20 130 -27c6 -1 9 -5 9 -14c0 -55 -32 -140 -57 -173l-59 18c14 23 31 85 33 109c-33 5 -70 13 -99 21c-102 28 -182 100 -182 230s93 261 261 261 +c43 0 83 -8 109 -22z" /> + <glyph glyph-name="uni037E" unicode="&#x37e;" horiz-adv-x="217" +d="M92 -116l-62 -7c17 60 40 166 46 237l97 5c-17 -78 -58 -188 -81 -235zM119 323h-1c-36 0 -61 29 -61 66c0 38 26 66 63 66s62 -27 62 -66c0 -37 -25 -66 -63 -66z" /> + <glyph glyph-name="anoteleia" unicode="&#x387;" horiz-adv-x="217" +d="M108 251h-1c-37 0 -63 30 -63 67c0 40 27 69 64 69c38 0 64 -28 64 -69c0 -37 -25 -67 -64 -67z" /> + <glyph glyph-name="afii10017" unicode="&#x410;" horiz-adv-x="612" +d="M424 212h-239l-70 -212h-90l229 674h105l230 -674h-93zM203 280h203l-67 194c-14 44 -24 84 -34 123h-3c-9 -39 -20 -81 -33 -122z" /> + <glyph glyph-name="afii10018" unicode="&#x411;" horiz-adv-x="546" +d="M76 674h378v-73h-291v-181c21 3 61 5 83 5c64 0 127 -14 174 -45c51 -33 86 -86 86 -164c0 -64 -22 -112 -56 -147c-55 -54 -146 -75 -238 -75c-61 0 -107 4 -136 8v672zM163 353v-286c20 -4 43 -5 73 -5c54 0 109 17 142 52c23 24 37 57 37 99c0 52 -22 87 -55 110 +c-34 24 -80 34 -128 34c-19 0 -47 -2 -69 -4z" /> + <glyph glyph-name="afii10019" unicode="&#x412;" horiz-adv-x="542" +d="M76 2v662c38 9 99 15 159 15c87 0 143 -15 184 -49c35 -26 57 -66 57 -119c0 -66 -44 -123 -114 -148v-3c64 -15 139 -68 139 -168c0 -58 -23 -102 -58 -135c-46 -43 -122 -63 -232 -63c-60 0 -106 4 -135 8zM163 606v-218h79c91 0 145 49 145 114c0 78 -59 110 -147 110 +c-40 0 -63 -3 -77 -6zM163 323v-257c18 -3 42 -4 73 -4c90 0 173 33 173 131c0 91 -79 130 -174 130h-72z" /> + <glyph glyph-name="afii10020" unicode="&#x413;" horiz-adv-x="433" +d="M75 674h359v-73h-271v-601h-88v674z" /> + <glyph glyph-name="afii10050" unicode="&#x490;" horiz-adv-x="447" +d="M75 674h292l16 122h65l-11 -195h-274v-601h-88v674z" /> + <glyph glyph-name="afii10021" unicode="&#x414;" horiz-adv-x="630" +d="M160 674h377v-603l59 -2l-6 -231h-68l-6 162h-425l-6 -162h-68l-6 231l51 2c25 46 50 95 66 148c23 78 32 168 32 283v172zM241 601v-126c0 -109 -10 -199 -34 -275c-14 -47 -36 -92 -55 -128h297v529h-208z" /> + <glyph glyph-name="afii10022" unicode="&#x415;" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261z" /> + <glyph glyph-name="afii10024" unicode="&#x416;" horiz-adv-x="801" +d="M22 674h101l209 -299h27v299h84v-299h27l209 299h101l-239 -310c106 -10 149 -77 183 -173c22 -64 38 -129 66 -191h-89c-23 45 -39 110 -55 158c-32 92 -65 151 -173 151h-30v-309h-84v309h-31c-108 0 -141 -59 -173 -151c-17 -48 -33 -113 -55 -158h-89 +c29 62 46 127 68 190c34 96 76 161 181 174z" /> + <glyph glyph-name="afii10025" unicode="&#x417;" horiz-adv-x="492" +d="M74 570l-24 64c46 30 104 51 178 51c117 0 198 -61 198 -165c0 -83 -61 -146 -138 -165v-2c94 -10 164 -72 164 -168c0 -140 -122 -196 -245 -196c-61 0 -124 13 -176 44l23 68c37 -21 96 -41 152 -41c99 0 154 54 154 128c0 100 -97 129 -184 129h-40v67h40 +c89 0 159 55 159 124s-49 106 -121 106c-51 0 -103 -21 -140 -44z" /> + <glyph glyph-name="afii10026" unicode="&#x418;" horiz-adv-x="658" +d="M76 674h82v-284c0 -106 -2 -195 -8 -285l3 -1c33 71 75 143 124 223l218 347h87v-674h-82v287c0 109 1 189 8 274l-3 1c-33 -74 -79 -151 -125 -227l-211 -335h-93v674z" /> + <glyph glyph-name="afii10027" unicode="&#x419;" horiz-adv-x="658" +d="M76 674h82v-284c0 -106 -2 -195 -8 -285l3 -1c33 71 75 143 124 223l218 347h87v-674h-82v287c0 109 1 189 8 274l-3 1c-33 -74 -79 -151 -125 -227l-211 -335h-93v674zM201 816h67c4 -31 14 -62 61 -62c46 0 57 29 61 62h67c-5 -67 -45 -108 -130 -108 +c-82 0 -121 42 -126 108z" /> + <glyph glyph-name="afii10028" unicode="&#x41a;" horiz-adv-x="542" +d="M76 674h87v-299h27l231 299h104l-255 -309c112 -15 155 -83 189 -174c26 -69 45 -131 74 -191h-93c-25 46 -43 106 -62 159c-31 89 -73 150 -187 150h-28v-309h-87v674z" /> + <glyph glyph-name="afii10029" unicode="&#x41b;" horiz-adv-x="594" +d="M123 674h396v-674h-88v601h-222v-204c0 -147 -7 -309 -101 -373c-25 -16 -65 -32 -104 -32l-11 70c27 4 55 20 71 36c54 52 59 184 59 292v284z" /> + <glyph glyph-name="afii10030" unicode="&#x41c;" horiz-adv-x="804" +d="M660 0l-16 296c-5 93 -11 208 -11 291h-2c-24 -78 -51 -164 -85 -256l-119 -327h-66l-110 321c-32 95 -58 182 -77 262h-2c-2 -84 -7 -197 -13 -298l-18 -289h-83l47 674h111l115 -326c28 -83 50 -158 68 -228h2c18 68 42 143 72 228l120 326h111l42 -674h-86z" /> + <glyph glyph-name="afii10031" unicode="&#x41d;" horiz-adv-x="652" +d="M75 674h88v-282h326v282h88v-674h-88v316h-326v-316h-88v674z" /> + <glyph glyph-name="afii10032" unicode="&#x41e;" horiz-adv-x="689" +d="M340 -11h-1c-179 0 -303 138 -303 342c0 214 132 354 312 354c185 0 304 -141 304 -341c0 -231 -141 -355 -312 -355zM343 60h1c138 0 216 127 216 280c0 134 -70 274 -215 274s-217 -135 -217 -281c0 -142 78 -273 215 -273z" /> + <glyph glyph-name="afii10033" unicode="&#x41f;" horiz-adv-x="639" +d="M75 674h489v-674h-88v601h-313v-601h-88v674z" /> + <glyph glyph-name="afii10034" unicode="&#x420;" horiz-adv-x="532" +d="M76 0v665c42 8 97 14 167 14c86 0 149 -20 189 -56c37 -32 60 -81 60 -140c0 -61 -18 -109 -53 -144c-46 -49 -121 -74 -206 -74c-26 0 -50 1 -70 6v-271h-87zM163 603v-261c19 -5 43 -7 72 -7c105 0 169 51 169 143c0 89 -63 132 -159 132c-38 0 -67 -3 -82 -7z" /> + <glyph glyph-name="afii10035" unicode="&#x421;" horiz-adv-x="580" +d="M529 92l17 -70c-31 -16 -96 -32 -178 -32c-190 0 -332 120 -332 341c0 211 143 353 352 353c83 0 137 -18 160 -29l-22 -72c-32 16 -79 28 -135 28c-158 0 -263 -101 -263 -277c0 -165 95 -270 258 -270c54 0 108 11 143 28z" /> + <glyph glyph-name="afii10036" unicode="&#x422;" horiz-adv-x="497" +d="M204 0v600h-205v74h499v-74h-206v-600h-88z" /> + <glyph glyph-name="afii10037" unicode="&#x423;" horiz-adv-x="521" +d="M3 674h99l133 -289c17 -40 33 -79 49 -118h2c13 34 25 73 42 121l105 286h92l-141 -348c-37 -90 -79 -193 -126 -255c-43 -55 -93 -83 -152 -83c-23 0 -38 2 -49 6l8 71c7 -2 18 -3 32 -3c70 0 111 67 133 115c7 15 5 25 -3 41z" /> + <glyph glyph-name="afii10038" unicode="&#x424;" horiz-adv-x="725" +d="M322 701h84v-61c141 -6 283 -91 283 -303c0 -213 -142 -293 -285 -302v-63h-84v63c-141 9 -284 85 -284 298c0 221 156 299 286 307v61zM321 98v480c-88 -5 -195 -66 -195 -242c0 -160 96 -228 195 -238zM405 578v-480c97 7 194 73 194 239c0 174 -98 235 -194 241z" /> + <glyph glyph-name="afii10039" unicode="&#x425;" horiz-adv-x="571" +d="M546 0h-101l-87 149c-35 57 -56 94 -77 133h-2c-19 -39 -39 -75 -73 -134l-81 -148h-100l206 341l-198 333h101l89 -158c25 -44 44 -78 62 -114h3c19 40 36 71 61 114l91 158h101l-205 -328z" /> + <glyph glyph-name="afii10040" unicode="&#x426;" horiz-adv-x="652" +d="M75 674h88v-602h309v602h88v-603l59 -2l-6 -231h-69l-5 162h-464v674z" /> + <glyph glyph-name="afii10041" unicode="&#x427;" horiz-adv-x="597" +d="M70 674h88v-216c0 -93 48 -145 142 -145c48 0 99 16 134 39v322h88v-678h-88v288h-2c-47 -27 -103 -42 -162 -42c-90 0 -200 38 -200 202v230z" /> + <glyph glyph-name="afii10042" unicode="&#x428;" horiz-adv-x="847" +d="M76 674h86v-601h219v601h86v-601h219v601h86v-674h-696v674z" /> + <glyph glyph-name="afii10043" unicode="&#x429;" horiz-adv-x="864" +d="M76 674h86v-602h219v602h86v-602h219v602h86v-603l59 -2l-6 -231h-69l-5 162h-675v674z" /> + <glyph glyph-name="afii10044" unicode="&#x42a;" horiz-adv-x="631" +d="M-2 674h260v-252c20 3 55 5 81 5c130 0 253 -64 253 -211c0 -62 -20 -109 -52 -143c-55 -58 -144 -79 -235 -79c-59 0 -105 4 -134 8v599h-173v73zM258 353v-286c19 -4 41 -5 69 -5c98 0 174 49 174 151c0 104 -85 144 -173 144c-23 0 -49 -2 -70 -4z" /> + <glyph glyph-name="afii10045" unicode="&#x42b;" horiz-adv-x="746" +d="M76 674h87v-253c20 4 59 6 81 6c138 0 259 -62 259 -211c0 -62 -20 -108 -52 -143c-55 -58 -149 -79 -240 -79c-60 0 -106 4 -135 8v672zM163 353v-286c18 -4 41 -5 70 -5c96 0 179 49 179 151c0 105 -90 144 -180 144c-32 0 -58 -3 -69 -4zM578 674h88v-674h-88v674z +" /> + <glyph glyph-name="afii10046" unicode="&#x42c;" horiz-adv-x="545" +d="M76 674h87v-252c20 3 60 5 83 5c138 0 260 -61 260 -210c0 -63 -20 -109 -52 -144c-55 -58 -149 -79 -242 -79c-61 0 -107 4 -136 8v672zM163 353v-286c20 -4 42 -5 72 -5c97 0 180 47 180 150c0 105 -85 145 -181 145c-22 0 -49 -2 -71 -4z" /> + <glyph glyph-name="afii10047" unicode="&#x42d;" horiz-adv-x="568" +d="M124 310v70h313c-11 131 -91 233 -230 233c-55 0 -102 -15 -145 -33l-21 66c48 22 106 39 171 39c211 0 319 -153 319 -348c0 -222 -145 -348 -325 -348c-66 0 -128 13 -176 34l19 70c39 -18 95 -31 146 -31c148 0 237 108 243 248h-314z" /> + <glyph glyph-name="afii10048" unicode="&#x42e;" horiz-adv-x="867" +d="M75 674h88v-290h100c18 187 128 301 287 301c175 0 281 -141 281 -341c0 -234 -130 -355 -290 -355c-163 0 -273 124 -280 321h-98v-310h-88v674zM544 59h1c127 0 197 128 197 281c0 135 -62 275 -196 275s-199 -136 -199 -281c0 -143 70 -275 197 -275z" /> + <glyph glyph-name="afii10049" unicode="&#x42f;" horiz-adv-x="543" +d="M108 0h-94c11 18 20 39 28 61c29 77 46 171 101 226c16 16 36 28 57 35v2c-84 14 -149 74 -149 166c0 59 24 106 62 136c42 35 108 53 193 53c57 0 117 -6 161 -14v-665h-87v292h-65c-41 0 -72 -9 -96 -33c-47 -47 -65 -146 -89 -210c-7 -17 -13 -31 -22 -49zM380 360 +v243c-15 4 -43 8 -83 8c-85 0 -158 -32 -158 -125c0 -81 71 -128 167 -128c29 0 57 0 74 2z" /> + <glyph glyph-name="afii10023" unicode="&#x401;" horiz-adv-x="492" +d="M424 388v-72h-261v-243h292v-73h-380v674h365v-73h-277v-213h261zM163 721h-1c-28 0 -48 23 -48 51c0 27 21 50 49 50s48 -22 48 -50s-19 -51 -48 -51zM348 721h-1c-28 0 -48 23 -48 51c0 27 21 50 50 50c28 0 48 -22 48 -50s-19 -51 -49 -51z" /> + <glyph glyph-name="afii10051" unicode="&#x402;" horiz-adv-x="665" +d="M-1 674h518v-73h-244v-192h3c32 21 82 41 135 41c73 0 126 -32 162 -84c38 -52 52 -120 52 -188c0 -103 -34 -191 -93 -241c-42 -47 -95 -69 -140 -76l-15 68c39 10 81 31 110 70c29 38 47 97 47 171c0 60 -11 111 -35 146c-25 39 -61 61 -112 61c-44 0 -84 -17 -114 -39 +v-338h-88v601h-186v73z" /> + <glyph glyph-name="afii10052" unicode="&#x403;" horiz-adv-x="433" +d="M75 674h359v-73h-271v-601h-88v674zM284 827h106l-128 -117h-71z" /> + <glyph glyph-name="afii10053" unicode="&#x404;" horiz-adv-x="576" +d="M544 653l-21 -68c-32 16 -80 28 -133 28c-153 0 -246 -103 -260 -234h346v-69h-345c4 -137 102 -248 256 -248c52 0 101 10 141 27l15 -67c-33 -17 -92 -33 -172 -33c-191 0 -334 129 -334 347c0 190 131 349 350 349c85 0 133 -19 157 -32z" /> + <glyph glyph-name="afii10054" unicode="&#x405;" horiz-adv-x="493" +d="M42 34l23 72c39 -24 95 -43 155 -43c89 0 141 46 141 114c0 63 -36 100 -127 134c-110 38 -178 96 -178 190c0 105 87 183 218 183c68 0 119 -16 148 -32l-24 -72c-21 13 -66 32 -127 32c-92 0 -127 -55 -127 -101c0 -62 41 -93 134 -129c114 -45 171 -99 171 -198 +c0 -103 -76 -194 -235 -194c-65 0 -136 20 -172 44z" /> + <glyph glyph-name="afii10055" unicode="&#x406;" horiz-adv-x="239" +d="M75 674h88v-674h-88v674z" /> + <glyph glyph-name="afii10056" unicode="&#x407;" horiz-adv-x="239" +d="M75 674h88v-674h-88v674zM28 721h-1c-28 0 -48 23 -48 51c0 27 21 50 49 50s48 -22 48 -50s-19 -51 -48 -51zM213 721h-1c-28 0 -48 23 -48 51c0 27 21 50 50 50c28 0 48 -22 48 -50s-19 -51 -49 -51z" /> + <glyph glyph-name="afii10057" unicode="&#x408;" horiz-adv-x="370" +d="M213 230v444h88v-451c0 -179 -88 -234 -204 -234c-33 0 -72 7 -93 16l12 71c18 -7 44 -13 74 -13c78 0 123 35 123 167z" /> + <glyph glyph-name="afii10058" unicode="&#x409;" horiz-adv-x="881" +d="M124 674h377v-254c21 3 60 5 82 5c135 0 259 -61 259 -209c0 -64 -22 -112 -56 -147c-56 -54 -144 -75 -237 -75c-61 0 -106 4 -135 8v599h-205v-204c0 -146 -7 -309 -101 -373c-25 -16 -65 -32 -101 -32l-13 70c27 5 56 21 72 37c53 52 58 183 58 292v283zM501 353v-287 +c21 -3 42 -4 70 -4c97 0 180 49 180 151c0 105 -86 144 -181 144c-20 0 -47 -2 -69 -4z" /> + <glyph glyph-name="afii10059" unicode="&#x40a;" horiz-adv-x="897" +d="M75 674h88v-269h267v269h87v-263c21 3 57 5 93 5c131 0 248 -60 248 -202c0 -64 -22 -112 -56 -146c-56 -55 -140 -74 -235 -74c-63 0 -108 4 -137 8v329h-267v-331h-88v674zM517 344v-277c21 -4 42 -5 71 -5c95 0 179 45 179 149c0 99 -83 137 -175 137 +c-31 0 -56 -2 -75 -4z" /> + <glyph glyph-name="afii10060" unicode="&#x40b;" horiz-adv-x="675" +d="M-1 674h507v-73h-235v-193h2c38 23 96 46 153 46c56 0 96 -18 125 -47c36 -37 53 -90 53 -157v-250h-88v239c0 50 -9 84 -32 110c-21 21 -48 33 -86 33c-43 0 -95 -19 -127 -43v-339h-88v601h-184v73z" /> + <glyph glyph-name="afii10061" unicode="&#x40c;" horiz-adv-x="542" +d="M76 674h87v-299h27l231 299h104l-255 -309c112 -15 155 -83 189 -174c26 -69 45 -131 74 -191h-93c-25 46 -43 106 -62 159c-31 89 -73 150 -187 150h-28v-309h-87v674zM319 822h106l-128 -117h-71z" /> + <glyph glyph-name="afii10062" unicode="&#x40e;" horiz-adv-x="521" +d="M3 674h99l133 -289c17 -40 33 -79 49 -118h2c13 34 25 73 42 121l105 286h92l-141 -348c-37 -90 -79 -193 -126 -255c-43 -55 -93 -83 -152 -83c-23 0 -38 2 -49 6l8 71c7 -2 18 -3 32 -3c70 0 111 67 133 115c7 15 5 25 -3 41zM134 817h67c4 -31 14 -62 61 -62 +c46 0 57 29 61 62h67c-5 -67 -45 -108 -130 -108c-82 0 -121 42 -126 108z" /> + <glyph glyph-name="afii10145" unicode="&#x40f;" horiz-adv-x="635" +d="M75 674h88v-601h310v601h88v-674h-199l-8 -174h-72l-7 174h-200v674z" /> + <glyph glyph-name="afii10065" unicode="&#x430;" horiz-adv-x="482" +d="M414 297v-181c0 -42 2 -83 7 -116h-79l-8 61h-3c-26 -38 -79 -72 -148 -72c-98 0 -148 69 -148 139c0 117 104 181 291 180v10c0 40 -11 113 -110 112c-46 0 -93 -13 -127 -36l-20 59c40 25 99 42 160 42c149 0 185 -101 185 -198zM328 163v84c-96 2 -205 -15 -205 -109 +c0 -58 38 -84 82 -84c64 0 105 40 119 81c3 9 4 19 4 28z" /> + <glyph glyph-name="afii10066" unicode="&#x431;" horiz-adv-x="528" +d="M443 721l-4 -73c-24 -9 -69 -17 -101 -22c-78 -12 -136 -38 -173 -91c-31 -44 -48 -109 -53 -160h3c32 71 100 109 169 109c119 0 206 -85 206 -239c0 -158 -82 -256 -224 -256c-170 0 -226 163 -226 324c0 110 23 200 74 268c47 67 114 98 209 114c40 7 87 15 120 26z +M401 238v1c0 78 -31 180 -135 180c-52 0 -89 -27 -110 -66c-16 -29 -24 -64 -24 -102c0 -81 40 -196 136 -196c98 0 133 95 133 183z" /> + <glyph glyph-name="afii10067" unicode="&#x432;" horiz-adv-x="500" +d="M70 0v479c35 6 98 11 154 11c82 0 216 -14 216 -122c0 -60 -46 -98 -101 -110v-2c71 -10 123 -49 123 -119c0 -127 -160 -143 -255 -143c-54 0 -111 4 -137 6zM155 425v-145h66c65 0 132 20 132 77c0 49 -42 72 -130 72c-30 0 -48 -2 -68 -4zM154 223v-166 +c25 -2 43 -3 70 -3c60 0 148 13 148 84c0 70 -71 85 -154 85h-64z" /> + <glyph glyph-name="afii10068" unicode="&#x433;" horiz-adv-x="385" +d="M70 484h298v-70h-210v-414h-88v484z" /> + <glyph glyph-name="afii10098" unicode="&#x491;" horiz-adv-x="392" +d="M70 484h230l12 109h63l-6 -179h-211v-414h-88v484z" /> + <glyph glyph-name="afii10069" unicode="&#x434;" horiz-adv-x="530" +d="M125 484h323v-418l49 -1l-5 -218h-68l-4 153h-335l-4 -153h-69l-4 218l41 1c21 31 37 64 48 99c19 61 28 125 28 194v125zM202 417v-79c0 -65 -8 -126 -25 -181c-10 -33 -23 -62 -38 -90h223v350h-160z" /> + <glyph glyph-name="afii10070" unicode="&#x435;" horiz-adv-x="501" +d="M462 226h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63c-31 -14 -85 -31 -162 -31c-148 0 -238 99 -238 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -31 -3 -41zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143z" /> + <glyph glyph-name="afii10072" unicode="&#x436;" horiz-adv-x="667" +d="M14 484h100l161 -211h17v211h84v-211h17l160 211h101l-191 -220c73 -8 116 -51 145 -128c17 -47 33 -98 53 -136h-88c-16 29 -30 69 -44 111c-30 79 -75 103 -138 103h-15v-214h-84v214h-15c-69 0 -110 -25 -140 -104c-16 -42 -29 -80 -45 -110h-86c21 39 37 90 54 135 +c30 78 72 121 145 129z" /> + <glyph glyph-name="afii10073" unicode="&#x437;" horiz-adv-x="431" +d="M114 221l-1 60h42c74 0 124 34 124 79c0 43 -39 71 -94 71c-39 0 -83 -14 -117 -35l-22 55c49 29 105 43 161 43c74 0 164 -33 164 -127c0 -60 -55 -99 -109 -110v-2c72 -7 132 -50 132 -121c0 -104 -107 -144 -209 -144c-56 0 -114 15 -157 39l23 60 +c35 -20 83 -34 128 -34c73 0 119 35 119 83c0 65 -68 83 -141 83h-43z" /> + <glyph glyph-name="afii10074" unicode="&#x438;" horiz-adv-x="554" +d="M70 484h84v-204c0 -77 -2 -125 -6 -195h3c30 58 46 93 79 149l151 250h103v-484h-84v206c0 78 2 120 6 198h-2c-32 -63 -52 -101 -81 -151c-46 -75 -100 -168 -151 -253h-102v484z" /> + <glyph glyph-name="afii10075" unicode="&#x439;" horiz-adv-x="554" +d="M70 484h84v-204c0 -77 -2 -125 -6 -195h3c30 58 46 93 79 149l151 250h103v-484h-84v206c0 78 2 120 6 198h-2c-32 -63 -52 -101 -81 -151c-46 -75 -100 -168 -151 -253h-102v484zM148 681h64c3 -43 24 -76 64 -76c43 0 63 33 68 76h63c-4 -81 -56 -124 -133 -124 +c-88 0 -122 55 -126 124z" /> + <glyph glyph-name="afii10076" unicode="&#x43a;" horiz-adv-x="479" +d="M73 484h88v-210h20l182 210h107l-211 -218c79 -9 126 -61 164 -148c13 -32 29 -79 51 -118h-92c-13 21 -29 59 -45 99c-33 78 -78 114 -159 114h-17v-213h-88v484z" /> + <glyph glyph-name="afii10077" unicode="&#x43b;" horiz-adv-x="507" +d="M100 484h337v-484h-88v415h-166v-124c0 -136 -13 -227 -76 -268c-24 -19 -51 -30 -96 -30l-9 69c17 3 36 10 48 20c45 33 50 101 50 210v192z" /> + <glyph glyph-name="afii10078" unicode="&#x43c;" horiz-adv-x="639" +d="M42 0l37 484h108l87 -244c13 -36 33 -95 44 -133h2c11 36 38 113 58 166l77 211h109l34 -484h-84l-11 231c-2 52 -6 114 -8 173h-3c-13 -44 -27 -82 -54 -157l-93 -244h-63l-86 240c-16 45 -37 115 -49 160h-4c-2 -57 -4 -121 -7 -174l-13 -229h-81z" /> + <glyph glyph-name="afii10079" unicode="&#x43d;" horiz-adv-x="546" +d="M70 484h88v-195h229v195h88v-484h-88v219h-229v-219h-88v484z" /> + <glyph glyph-name="afii10080" unicode="&#x43e;" horiz-adv-x="549" +d="M271 -11h-1c-130 0 -232 96 -232 249c0 162 107 257 240 257c139 0 233 -101 233 -248c0 -180 -125 -258 -240 -258zM273 55h1c84 0 147 79 147 189c0 82 -41 185 -145 185c-103 0 -148 -96 -148 -188c0 -106 60 -186 145 -186z" /> + <glyph glyph-name="afii10081" unicode="&#x43f;" horiz-adv-x="541" +d="M70 484h401v-484h-88v415h-225v-415h-88v484z" /> + <glyph glyph-name="afii10082" unicode="&#x440;" horiz-adv-x="569" +d="M73 -198v524c0 62 -1 112 -4 158h79l5 -83h2c35 60 93 94 171 94c118 0 206 -99 206 -246c0 -174 -107 -260 -220 -260c-65 0 -120 28 -149 76h-2v-263h-88zM161 281v-84c0 -12 1 -25 4 -36c15 -61 69 -103 131 -103c93 0 147 76 147 187c0 97 -50 180 -143 180 +c-60 0 -117 -42 -134 -109c-2 -11 -5 -24 -5 -35z" /> + <glyph glyph-name="afii10083" unicode="&#x441;" horiz-adv-x="448" +d="M403 84l15 -66c-23 -11 -74 -28 -139 -28c-146 0 -241 99 -241 247c0 149 102 258 260 258c52 0 98 -13 122 -26l-20 -67c-21 11 -54 23 -102 23c-111 0 -171 -83 -171 -183c0 -112 72 -181 168 -181c50 0 83 12 108 23z" /> + <glyph glyph-name="afii10084" unicode="&#x442;" horiz-adv-x="411" +d="M10 484h390v-69h-151v-415h-88v415h-151v69z" /> + <glyph glyph-name="afii10085" unicode="&#x443;" horiz-adv-x="471" +d="M9 484h96l105 -286c12 -32 24 -70 32 -99h2c9 29 19 66 31 101l96 284h93l-132 -345c-63 -166 -106 -250 -166 -303c-44 -37 -86 -52 -108 -56l-22 73c22 7 51 21 77 43c24 19 53 53 74 98c4 9 7 16 7 21s-2 12 -7 23z" /> + <glyph glyph-name="afii10086" unicode="&#x444;" horiz-adv-x="641" +d="M280 709h82l-1 -215c141 -10 243 -100 243 -250c0 -159 -107 -243 -243 -253l1 -189h-82l1 188c-140 9 -243 98 -243 248c0 160 107 244 243 255zM281 51v382c-97 -13 -156 -93 -156 -192c0 -100 60 -178 156 -190zM361 433v-382c97 13 156 93 156 192 +c0 100 -59 177 -156 190z" /> + <glyph glyph-name="afii10087" unicode="&#x445;" horiz-adv-x="463" +d="M16 484h98l69 -104c18 -27 33 -51 49 -79h3c16 29 32 54 49 80l67 103h96l-165 -234l169 -250h-100l-71 109c-19 28 -35 55 -52 84h-2c-16 -29 -33 -55 -51 -84l-70 -109h-97l172 247z" /> + <glyph glyph-name="afii10088" unicode="&#x446;" horiz-adv-x="550" +d="M70 484h88v-415h223v415h88v-418l49 -1l-5 -218h-68l-4 153h-371v484z" /> + <glyph glyph-name="afii10089" unicode="&#x447;" horiz-adv-x="515" +d="M65 484h88v-164c0 -61 23 -102 100 -102c38 0 78 13 104 33v233h88v-490h-88v195h-1c-33 -21 -86 -36 -132 -36c-91 0 -159 47 -159 157v174z" /> + <glyph glyph-name="afii10090" unicode="&#x448;" horiz-adv-x="738" +d="M70 484h87v-415h169v415h87v-415h168v415h87v-484h-598v484z" /> + <glyph glyph-name="afii10091" unicode="&#x449;" horiz-adv-x="749" +d="M70 484h87v-415h169v415h87v-415h168v415h87v-418l49 -1l-5 -218h-68l-4 153h-570v484z" /> + <glyph glyph-name="afii10092" unicode="&#x44a;" horiz-adv-x="579" +d="M14 484h231v-163c23 4 53 5 83 5c100 0 215 -39 215 -164c0 -50 -20 -86 -51 -112c-53 -45 -134 -55 -205 -55c-48 0 -93 4 -130 7v413h-143v69zM244 257v-195c17 -2 37 -4 66 -4c72 0 145 24 145 101c0 83 -79 104 -149 104c-22 0 -41 -2 -62 -6z" /> + <glyph glyph-name="afii10093" unicode="&#x44b;" horiz-adv-x="665" +d="M71 484h88v-164c18 3 46 6 78 6c103 0 209 -43 209 -162c0 -51 -20 -87 -51 -113c-53 -45 -130 -56 -194 -56c-48 0 -93 4 -130 7v482zM158 257v-195c17 -3 36 -4 61 -4c67 0 139 27 139 103c0 78 -70 102 -135 102c-25 0 -47 -2 -65 -6zM507 484h87v-483h-87v483z" /> + <glyph glyph-name="afii10094" unicode="&#x44c;" horiz-adv-x="498" +d="M71 484h88v-163c20 3 53 5 79 5c109 0 224 -35 224 -163c0 -51 -20 -86 -51 -112c-53 -45 -139 -56 -210 -56c-48 0 -93 4 -130 7v482zM158 257v-195c17 -2 37 -4 65 -4c66 0 151 22 151 102c0 84 -88 103 -153 103c-23 0 -42 -2 -63 -6z" /> + <glyph glyph-name="afii10095" unicode="&#x44d;" horiz-adv-x="464" +d="M94 216v61h243c-8 82 -59 150 -167 150c-51 0 -90 -15 -115 -27l-20 58c43 23 98 37 149 37c71 0 133 -23 176 -69c42 -43 66 -106 66 -186c0 -141 -93 -251 -256 -251c-53 0 -103 12 -142 33l17 62c24 -10 65 -26 121 -26c97 0 162 62 170 158h-242z" /> + <glyph glyph-name="afii10096" unicode="&#x44e;" horiz-adv-x="705" +d="M71 484h86v-204h83c15 129 98 215 214 215c127 0 213 -99 213 -249c0 -157 -96 -257 -218 -257c-117 0 -201 86 -211 224h-81v-213h-86v484zM450 54h1c88 0 128 98 128 190c0 91 -41 185 -127 185c-85 0 -130 -92 -130 -190c0 -94 43 -185 128 -185z" /> + <glyph glyph-name="afii10097" unicode="&#x44f;" horiz-adv-x="496" +d="M426 480v-480h-87v203h-65c-37 0 -62 -10 -80 -27c-37 -29 -50 -89 -69 -136c-6 -15 -13 -28 -20 -40h-94c11 16 21 34 30 55c21 47 33 110 76 146c15 13 33 23 55 28v2c-63 7 -128 46 -128 121c0 50 27 84 64 105c40 23 99 33 163 33c57 0 113 -5 155 -10zM339 263v163 +c-22 3 -42 5 -73 5c-59 0 -131 -17 -131 -84c0 -62 77 -85 129 -85c37 0 55 1 75 1z" /> + <glyph glyph-name="afii10071" unicode="&#x451;" horiz-adv-x="501" +d="M462 226h-339c2 -118 77 -167 165 -167c63 0 102 11 134 25l16 -63c-31 -14 -85 -31 -162 -31c-148 0 -238 99 -238 244c0 146 87 261 228 261c158 0 199 -139 199 -228c0 -18 -1 -31 -3 -41zM124 289h256c1 56 -23 143 -121 143c-90 0 -128 -82 -135 -143zM176 570h-1 +c-28 0 -49 24 -49 51c0 28 22 51 51 51c27 0 48 -22 48 -51c0 -27 -20 -51 -49 -51zM362 570h-1c-29 0 -49 24 -49 51c0 28 22 51 50 51s49 -22 49 -51c0 -27 -20 -51 -49 -51z" /> + <glyph glyph-name="afii10099" unicode="&#x452;" horiz-adv-x="557" +d="M7 625h82v85h88v-85h226v-63h-226v-141h2c35 39 88 69 147 69c60 0 107 -29 138 -79c38 -56 53 -132 53 -211c0 -136 -37 -236 -99 -288c-35 -30 -79 -51 -125 -56l-16 69c38 8 66 20 93 50c35 40 59 114 59 219c0 60 -8 120 -38 170c-20 33 -51 55 -92 55 +c-39 0 -79 -24 -107 -58c-10 -14 -15 -31 -15 -55v-306h-88v562h-82v63z" /> + <glyph glyph-name="afii10100" unicode="&#x453;" horiz-adv-x="385" +d="M70 484h298v-70h-210v-414h-88v484zM251 693h96l-122 -143h-62z" /> + <glyph glyph-name="afii10101" unicode="&#x454;" horiz-adv-x="460" +d="M432 463l-21 -63c-23 11 -59 27 -110 27c-106 0 -163 -68 -173 -150h245v-61h-244c7 -96 75 -158 170 -158c52 0 92 15 116 25l17 -63c-24 -12 -78 -31 -147 -31c-156 0 -247 108 -247 249c0 155 110 257 264 257c59 0 108 -19 130 -32z" /> + <glyph glyph-name="afii10102" unicode="&#x455;" horiz-adv-x="396" +d="M40 24l21 66c27 -16 73 -34 117 -34c63 0 93 31 93 72c0 42 -25 64 -89 88c-88 32 -129 80 -129 137c0 78 64 142 167 142c49 0 92 -13 118 -30l-21 -63c-19 11 -54 28 -99 28c-52 0 -80 -30 -80 -66c0 -40 28 -58 91 -83c83 -31 127 -73 127 -145 +c0 -86 -67 -146 -180 -146c-53 0 -102 14 -136 34z" /> + <glyph glyph-name="afii10103" unicode="&#x456;" horiz-adv-x="234" +d="M161 0h-88v484h88v-484zM116 566h-1c-32 0 -53 25 -53 54c0 31 22 55 55 55c32 0 54 -24 54 -55c0 -29 -21 -54 -55 -54z" /> + <glyph glyph-name="afii10104" unicode="&#x457;" horiz-adv-x="234" +d="M161 0h-88v484h88v-484zM24 570h-1c-28 0 -49 24 -49 51c0 28 22 51 51 51c27 0 48 -22 48 -51c0 -27 -20 -51 -49 -51zM210 570h-1c-29 0 -49 24 -49 51c0 28 22 51 50 51s49 -22 49 -51c0 -27 -20 -51 -49 -51z" /> + <glyph glyph-name="afii10105" unicode="&#x458;" horiz-adv-x="243" +d="M-36 -211l-10 69c41 3 75 14 96 37c24 27 34 66 34 182v407h88v-441c0 -94 -15 -155 -58 -199c-39 -39 -103 -55 -150 -55zM127 566h-1c-32 0 -53 25 -53 54c0 31 22 55 55 55s54 -24 54 -55c0 -29 -20 -54 -55 -54z" /> + <glyph glyph-name="afii10106" unicode="&#x459;" horiz-adv-x="775" +d="M105 484h332v-163c20 3 54 5 79 5c108 0 223 -37 223 -164c0 -50 -19 -85 -48 -110c-53 -46 -141 -57 -211 -57c-48 0 -94 4 -131 7v413h-162v-122c0 -137 -18 -228 -82 -269c-22 -19 -50 -30 -95 -30l-8 68c17 3 36 10 48 20c46 32 55 104 55 211v191zM436 256v-194 +c17 -3 37 -4 65 -4c65 0 150 22 150 102c0 84 -83 103 -145 103c-28 0 -49 -2 -70 -7z" /> + <glyph glyph-name="afii10107" unicode="&#x45a;" horiz-adv-x="782" +d="M70 484h88v-180h204v180h88v-169c20 3 54 5 82 5c98 0 214 -39 214 -160c0 -50 -20 -85 -49 -110c-53 -46 -134 -55 -204 -55c-48 0 -94 3 -131 6v235h-204v-236h-88v484zM449 253v-192c17 -1 36 -3 66 -3c63 0 143 21 143 100c0 80 -77 100 -143 100 +c-25 0 -46 -2 -66 -5z" /> + <glyph glyph-name="afii10108" unicode="&#x45b;" horiz-adv-x="571" +d="M7 625h82v85h88v-85h202v-63h-202v-156h2c16 25 36 44 60 59c27 16 58 25 93 25c101 0 169 -72 169 -206v-284h-88v273c0 79 -29 144 -112 144c-59 0 -102 -43 -118 -88c-4 -12 -6 -29 -6 -45v-284h-88v562h-82v63z" /> + <glyph glyph-name="afii10109" unicode="&#x45c;" horiz-adv-x="479" +d="M73 484h88v-210h20l182 210h107l-211 -218c79 -9 126 -61 164 -148c13 -32 29 -79 51 -118h-92c-13 21 -29 59 -45 99c-33 78 -78 114 -159 114h-17v-213h-88v484zM281 693h96l-122 -143h-62z" /> + <glyph glyph-name="afii10110" unicode="&#x45e;" horiz-adv-x="471" +d="M9 484h96l105 -286c12 -32 24 -70 32 -99h2c9 29 19 66 31 101l96 284h93l-132 -345c-63 -166 -106 -250 -166 -303c-44 -37 -86 -52 -108 -56l-22 73c22 7 51 21 77 43c24 19 53 53 74 98c4 9 7 16 7 21s-2 12 -7 23zM106 681h64c3 -43 24 -76 64 -76c43 0 63 33 68 76 +h63c-4 -81 -56 -124 -133 -124c-88 0 -122 55 -126 124z" /> + <glyph glyph-name="afii10193" unicode="&#x45f;" horiz-adv-x="538" +d="M70 484h88v-415h222v415h88v-484h-157l-6 -157h-70l-7 157h-158v484z" /> + <glyph glyph-name="afii10846" unicode="&#x4d9;" horiz-adv-x="501" +d="M78 400l-16 63c32 14 86 32 163 32c147 0 237 -100 237 -245c0 -146 -86 -260 -227 -260c-158 0 -200 138 -200 227c0 18 1 32 3 41h339c-2 119 -73 168 -164 168c-62 0 -100 -11 -135 -26zM376 195h-256c-1 -55 23 -142 122 -142c90 0 127 81 134 142z" /> + <glyph glyph-name="Euro" unicode="&#x20ac;" horiz-adv-x="513" +d="M479 95l17 -64c-31 -21 -84 -42 -149 -42c-81 0 -154 31 -203 90c-38 41 -63 99 -72 171h-62v50h56v15c0 15 1 30 2 44h-59v50h67c12 70 41 128 82 169c50 53 116 83 197 83c60 0 106 -17 134 -32l-20 -66c-26 15 -67 28 -112 28c-54 0 -99 -19 -133 -54 +c-29 -30 -50 -75 -59 -128h279v-50h-288c-2 -13 -2 -27 -2 -42v-17h290v-50h-283c8 -58 27 -101 55 -130c37 -40 87 -58 141 -58c53 0 99 19 122 33z" /> + <glyph glyph-name="afii61289" unicode="&#x2113;" horiz-adv-x="504" +d="M194 512v-216c82 84 131 174 131 264c0 67 -26 93 -62 93s-69 -41 -69 -141zM432 151l43 -40c-47 -82 -114 -121 -200 -121c-103 0 -154 69 -163 162c0 3 0 6 -1 8c-18 -13 -36 -25 -55 -37l-26 49c27 19 55 38 80 59v265c0 156 69 219 158 219c80 0 130 -61 130 -153 +c0 -123 -72 -233 -204 -350v-14c1 -100 43 -134 102 -134c65 0 111 51 136 87z" /> + <glyph glyph-name="afii61352" unicode="&#x2116;" horiz-adv-x="916" +d="M728 640h1c96 0 156 -68 156 -172c0 -125 -78 -177 -158 -177c-90 0 -158 62 -158 172c0 113 72 177 159 177zM727 590h-1c-58 0 -85 -66 -85 -126c0 -71 39 -123 86 -123c53 0 86 52 86 125c0 58 -24 124 -86 124zM859 197h-263v52h263v-52zM152 0h-78v654h96l170 -325 +c40 -77 74 -149 102 -217l1 1c-7 91 -9 170 -9 274v267h78v-654h-89l-172 327c-37 73 -72 147 -102 221h-2c3 -85 5 -164 5 -279v-269z" /> + <glyph glyph-name="estimated" unicode="&#x212e;" horiz-adv-x="817" +d="M782 316h-605c-3 0 -5 -1 -5 -4v-183c0 -8 4 -15 9 -21c57 -61 139 -99 229 -99c96 0 182 43 240 111h55c-68 -79 -176 -131 -296 -131c-206 0 -374 150 -374 336s168 336 374 336s373 -150 373 -336v-9zM646 340v184c0 9 -4 16 -10 22c-58 58 -138 95 -226 95 +c-90 0 -170 -38 -228 -98c-6 -6 -10 -14 -10 -23v-180c0 -3 2 -5 5 -5h464c3 0 5 2 5 5z" /> + <glyph glyph-name="partialdiff" unicode="&#x2202;" horiz-adv-x="530" +d="M86 614l-28 59c33 24 88 54 173 54c138 0 263 -125 263 -354c0 -255 -128 -384 -270 -384c-135 0 -198 104 -198 210c0 136 95 244 218 244c84 0 142 -48 164 -87h1c1 10 1 23 1 33c0 176 -94 265 -187 265c-66 0 -111 -21 -137 -40zM232 61h1c89 0 152 102 166 216 +c-18 49 -71 96 -141 96c-79 0 -144 -74 -144 -172c0 -87 48 -140 118 -140z" /> + <glyph glyph-name="uni2206" unicode="&#x2206;" horiz-adv-x="569" +d="M544 0h-518v49l212 607h97l209 -606v-50zM452 72l-119 348c-16 48 -37 115 -49 158h-3c-9 -35 -27 -97 -43 -145l-124 -361h338z" /> + <glyph glyph-name="product" unicode="&#x220f;" horiz-adv-x="615" +d="M605 577h-93v-667h-83v667h-244v-667h-83v667h-93v73h596v-73z" /> + <glyph glyph-name="summation" unicode="&#x2211;" horiz-adv-x="507" +d="M515 -90h-506v53l251 315l-238 313v59h461v-73h-349v-3l222 -293l-234 -294v-4h393v-73z" /> + <glyph glyph-name="radical" unicode="&#x221a;" horiz-adv-x="562" +d="M578 827l-230 -922h-63l-160 427l-74 -31l-19 47l138 57l123 -345c8 -22 15 -46 19 -64h1c3 17 8 42 14 64l185 767h66z" /> + <glyph glyph-name="infinity" unicode="&#x221e;" horiz-adv-x="728" +d="M542 117h-1c-74 0 -129 58 -177 106c-51 -51 -104 -106 -186 -106c-84 0 -143 61 -143 148c0 78 64 146 151 146c75 0 130 -58 178 -106c51 51 104 106 186 106c84 0 143 -61 143 -146c0 -80 -64 -148 -151 -148zM542 176h1c49 0 87 41 87 89c0 50 -36 87 -85 87 +c-57 0 -103 -49 -141 -87c39 -36 80 -89 138 -89zM183 176h1c56 0 102 49 140 88c-39 36 -80 88 -138 88c-50 0 -88 -40 -88 -87c0 -51 36 -89 85 -89z" /> + <glyph glyph-name="integral" unicode="&#x222b;" horiz-adv-x="316" +d="M306 788l-12 -56c-8 2 -19 4 -30 4c-17 0 -35 -7 -46 -22c-20 -25 -29 -68 -29 -157c0 -146 12 -320 12 -471c0 -98 -18 -156 -42 -188c-22 -32 -57 -48 -96 -48c-22 0 -44 5 -53 10l11 57c9 -3 21 -6 36 -6c16 0 32 6 44 21c17 21 31 58 31 154c0 152 -12 330 -12 476 +c0 101 16 158 52 196c24 26 55 37 89 37c18 0 35 -3 45 -7z" /> + <glyph glyph-name="approxequal" unicode="&#x2248;" horiz-adv-x="596" +d="M533 417l36 -41c-31 -40 -89 -78 -151 -78c-59 0 -96 23 -129 36c-30 12 -64 34 -114 34c-46 0 -90 -30 -117 -59l-35 42c32 38 90 77 153 77c58 0 95 -23 127 -36c30 -12 64 -34 114 -34c46 0 91 33 116 59zM538 218l36 -40c-32 -41 -91 -79 -153 -79 +c-57 0 -95 23 -127 36c-30 12 -64 34 -115 34c-45 0 -90 -30 -117 -59l-35 43c32 38 91 76 153 76c58 0 95 -23 128 -36c30 -12 64 -34 113 -34c47 0 91 30 117 59z" /> + <glyph glyph-name="notequal" unicode="&#x2260;" horiz-adv-x="596" +d="M556 140h-310l-76 -122h-65l79 122h-144v60h182l89 138h-271v60h309l76 122h65l-79 -122h145v-60h-183l-88 -138h271v-60z" /> + <glyph glyph-name="lessequal" unicode="&#x2264;" horiz-adv-x="596" +d="M530 99l-464 193v59l464 192v-66l-382 -155v-2l382 -154v-67zM530 0h-462v58h462v-58z" /> + <glyph glyph-name="greaterequal" unicode="&#x2265;" horiz-adv-x="596" +d="M530 292l-464 -193v67l382 154v2l-382 155v66l464 -192v-59zM528 0h-462v58h462v-58z" /> + <glyph glyph-name="lozenge" unicode="&#x25ca;" horiz-adv-x="522" +d="M477 325l-182 -356h-69l-181 356l181 355h69zM401 323l-130 267c-4 6 -8 15 -10 23h-2c-3 -8 -7 -17 -11 -23l-128 -264l131 -267c4 -7 8 -15 10 -23h2c3 8 7 16 10 23z" /> + <glyph glyph-name="uniEFED" unicode="&#xefed;" +d="M151 721h-1c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -48 -51z" /> + <glyph glyph-name="uniEFEE" unicode="&#xefee;" +d="M26 832h52c5 -23 23 -49 72 -49c48 0 67 23 73 49h50c-1 -59 -38 -106 -124 -106c-85 0 -121 46 -123 106z" /> + <glyph glyph-name="uniEFF1" unicode="&#xeff1;" +d="M123 4h57c-15 -19 -53 -62 -53 -100c0 -31 20 -50 50 -50c18 0 34 4 46 10l14 -46c-21 -15 -56 -23 -80 -23c-56 0 -94 30 -94 86c0 50 36 97 60 123z" /> + <glyph glyph-name="uniEFF2" unicode="&#xeff2;" +d="M137 2h54l-31 -53c38 -6 70 -33 70 -74c0 -58 -51 -81 -103 -81c-26 0 -53 7 -71 17l15 45c15 -8 33 -14 55 -14c23 0 42 9 42 31c0 26 -31 38 -78 43z" /> + <glyph glyph-name="uniEFF3" unicode="&#xeff3;" horiz-adv-x="400" +d="M201 877h1c61 0 99 -40 99 -91c0 -50 -41 -88 -100 -88c-60 0 -100 39 -100 88c0 50 38 91 100 91zM200 841h-1c-29 0 -47 -26 -47 -55c0 -26 19 -51 48 -51c30 0 49 23 49 53c0 29 -19 53 -49 53z" /> + <glyph glyph-name="uniEFF5" unicode="&#xeff5;" +d="M73 715h-47c-1 61 25 102 68 102c22 0 38 -9 59 -20c16 -9 32 -18 48 -18c15 0 24 7 27 39h46c1 -63 -21 -97 -67 -97c-21 0 -39 8 -61 19c-19 10 -32 19 -47 19c-16 0 -23 -17 -26 -44z" /> + <glyph glyph-name="uniEFF7" unicode="&#xeff7;" +d="M115 824h67l105 -114h-74l-63 69h-2l-64 -69h-71z" /> + <glyph glyph-name="Acute" unicode="&#xf6c9;" +d="M198 827h106l-128 -117h-71z" /> + <glyph glyph-name="Caron" unicode="&#xf6ca;" +d="M185 710h-67l-105 114h74l64 -69h2l63 69h71z" /> + <glyph glyph-name="Dieresis" unicode="&#xf6cb;" +d="M58 721h-1c-28 0 -48 23 -48 51c0 27 21 50 49 50s48 -22 48 -50s-19 -51 -48 -51zM243 721h-1c-28 0 -48 23 -48 51c0 27 21 50 50 50c28 0 48 -22 48 -50s-19 -51 -49 -51z" /> + <glyph glyph-name="DieresisAcute" unicode="&#xf6cc;" +d="M14 721h-1c-27 0 -46 23 -46 49c0 28 21 50 48 50s47 -22 47 -50s-20 -49 -48 -49zM287 721h-1c-26 0 -45 23 -45 49c0 28 21 50 48 50s47 -22 47 -50s-20 -49 -49 -49zM142 828h102l-116 -117h-67z" /> + <glyph glyph-name="DieresisGrave" unicode="&#xf6cd;" +d="M13 721h-1c-27 0 -46 23 -46 49c0 28 21 50 48 50s47 -22 47 -50s-20 -49 -48 -49zM287 721h-1c-26 0 -45 23 -45 49c0 28 21 50 48 50s47 -22 47 -50s-20 -49 -49 -49zM56 828h103l81 -117h-67z" /> + <glyph glyph-name="Grave" unicode="&#xf6ce;" +d="M-2 827h106l93 -116h-71z" /> + <glyph glyph-name="Hungarumlaut" unicode="&#xf6cf;" +d="M117 827h96l-112 -112h-64zM264 827h96l-112 -112h-64z" /> + <glyph glyph-name="Macron" unicode="&#xf6d0;" +d="M31 788h240v-55h-240v55z" /> + <glyph glyph-name="cyrBreve" unicode="&#xf6d1;" +d="M22 834h67c4 -31 14 -62 61 -62c46 0 57 29 61 62h67c-5 -67 -45 -108 -130 -108c-82 0 -121 42 -126 108z" /> + <glyph glyph-name="cyrFlex" unicode="&#xf6d2;" +d="M278 726l-67 -1c-4 28 -14 60 -61 60c-46 0 -57 -30 -61 -60l-67 1c5 63 46 105 130 105c82 0 122 -43 126 -105z" /> + <glyph glyph-name="dblGrave" unicode="&#xf6d3;" +d="M-45 828h103l91 -117h-66zM129 828h102l92 -117h-67z" /> + <glyph glyph-name="cyrbreve" unicode="&#xf6d4;" horiz-adv-x="301" +d="M21 681h64c3 -43 24 -76 64 -76c43 0 63 33 68 76h63c-4 -81 -56 -124 -133 -124c-88 0 -122 55 -126 124z" /> + <glyph glyph-name="cyrflex" unicode="&#xf6d5;" +d="M82 563h-63c4 82 56 124 133 124c88 0 122 -55 126 -124h-64c-4 43 -24 76 -64 76c-43 0 -63 -33 -68 -76z" /> + <glyph glyph-name="dblgrave" unicode="&#xf6d6;" +d="M-2 685h91l80 -142h-55zM149 685h90l81 -142h-56z" /> + <glyph glyph-name="dieresisacute" unicode="&#xf6d7;" horiz-adv-x="301" +d="M24 573h-1c-27 0 -47 23 -47 49c0 27 21 49 49 49c27 0 47 -21 47 -49s-20 -49 -48 -49zM270 573h-1c-27 0 -46 23 -46 49c0 27 21 49 49 49c27 0 47 -21 47 -49s-20 -49 -49 -49zM151 701h92l-111 -143h-58z" /> + <glyph glyph-name="dieresisgrave" unicode="&#xf6d8;" horiz-adv-x="301" +d="M28 573h-1c-27 0 -47 23 -47 49c0 27 21 49 49 49c27 0 47 -21 47 -49s-20 -49 -48 -49zM269 573h-1c-27 0 -46 23 -46 49c0 27 21 49 49 49c27 0 47 -21 47 -49s-20 -49 -49 -49zM56 701h92l78 -143h-58z" /> + <glyph glyph-name="uniF634" unicode="&#xf634;" +d="M93 -222l-17 41c39 6 75 26 75 65c0 24 -16 46 -34 61l65 14c20 -13 40 -41 40 -74c0 -73 -67 -103 -129 -107z" /> + <glyph glyph-name="uniF638" unicode="&#xf638;" horiz-adv-x="513" +d="M145 168l202 374c-20 32 -50 51 -90 51c-83 0 -135 -105 -136 -265c-1 -63 8 -117 24 -160zM371 482l-202 -376c22 -32 50 -49 86 -49c92 0 137 105 137 271c0 58 -7 110 -21 154zM473 649l-49 -80c35 -56 53 -137 53 -238c0 -220 -82 -342 -225 -342 +c-48 0 -91 16 -126 50l-36 -63l-44 31l46 75c-35 55 -55 137 -56 241c-1 220 94 338 226 338c51 0 94 -16 128 -49l39 66z" /> + <glyph glyph-name="uniF639" unicode="&#xf639;" horiz-adv-x="513" +d="M253 -11h-1c-127 0 -214 119 -216 334c0 219 95 338 227 338c136 0 215 -122 215 -329c0 -221 -83 -343 -225 -343zM256 57h1c89 0 132 105 132 271c0 160 -40 265 -132 265c-80 0 -132 -102 -132 -265c-2 -169 50 -271 131 -271z" /> + <glyph glyph-name="uniF6DC" unicode="&#xf6dc;" horiz-adv-x="326" +d="M151 0v568h-2l-113 -61l-17 67l142 76h75v-650h-85z" /> + <glyph glyph-name="uniF63A" unicode="&#xf63a;" horiz-adv-x="447" +d="M418 0h-415v54l69 67c166 158 242 242 242 340c0 66 -31 127 -128 127c-59 0 -108 -30 -138 -55l-28 62c44 37 109 66 184 66c139 0 198 -96 198 -189c0 -120 -87 -217 -224 -349l-51 -48v-2h291v-73z" /> + <glyph glyph-name="uniF63B" unicode="&#xf63b;" horiz-adv-x="450" +d="M7 33l24 67c25 -15 82 -40 144 -40c112 0 148 71 147 126c-1 91 -83 130 -168 130h-49v66h49c64 0 145 33 145 110c0 52 -33 98 -114 98c-52 0 -102 -23 -130 -43l-24 64c35 25 101 50 171 50c128 0 186 -76 186 -155c0 -68 -41 -125 -120 -154v-2 +c80 -15 145 -75 145 -166c0 -104 -82 -195 -237 -195c-73 0 -137 23 -169 44z" /> + <glyph glyph-name="uniF63C" unicode="&#xf63c;" horiz-adv-x="503" +d="M396 0h-83v178h-302v57l290 415h95v-404h91v-68h-91v-178zM100 246h213v217c0 34 1 68 3 102h-3c-20 -38 -36 -66 -54 -96l-159 -221v-2z" /> + <glyph glyph-name="uniF63D" unicode="&#xf63d;" horiz-adv-x="460" +d="M406 650v-74h-248l-25 -167c15 2 29 4 53 4c51 0 100 -11 140 -35c51 -28 93 -85 93 -167c0 -127 -101 -222 -242 -222c-71 0 -130 20 -162 40l22 67c27 -16 80 -36 140 -36c82 0 154 54 153 142c0 83 -57 143 -186 143c-38 0 -67 -3 -91 -7l42 312h311z" /> + <glyph glyph-name="uniF63E" unicode="&#xf63e;" horiz-adv-x="515" +d="M418 660v-72c-18 1 -41 -1 -66 -5c-139 -22 -211 -122 -226 -230h2c31 42 86 76 158 76c115 0 196 -84 196 -210c0 -120 -81 -230 -217 -230c-138 0 -229 108 -229 277c0 128 45 229 110 293c54 53 126 86 208 96c26 4 48 5 64 5zM266 57h1c75 0 126 63 126 156 +s-53 149 -134 149c-53 0 -103 -32 -127 -80c-5 -10 -9 -22 -9 -38c1 -107 51 -187 143 -187z" /> + <glyph glyph-name="uniF63F" unicode="&#xf63f;" horiz-adv-x="412" +d="M1 650h410v-58l-283 -592h-90l281 575v2h-318v73z" /> + <glyph glyph-name="uniF640" unicode="&#xf640;" horiz-adv-x="513" +d="M262 661h1c126 0 190 -78 190 -160c0 -55 -28 -115 -108 -152v-3c81 -32 131 -90 131 -168c0 -114 -97 -189 -221 -189c-136 0 -218 80 -218 175c0 82 49 141 128 175v3c-73 34 -104 90 -104 146c0 103 87 173 201 173zM256 53h1c79 0 130 49 130 116 +c0 78 -55 117 -143 142c-76 -22 -117 -73 -117 -135c-3 -65 47 -123 129 -123zM259 598h-1c-73 0 -113 -48 -113 -104c-1 -65 49 -100 124 -120c56 19 99 59 99 118c0 52 -31 106 -109 106z" /> + <glyph glyph-name="uniF641" unicode="&#xf641;" horiz-adv-x="517" +d="M96 -10v72c19 -1 41 0 71 4c51 6 99 27 136 62c43 40 74 96 86 173h-3c-36 -44 -88 -70 -154 -70c-117 0 -192 88 -192 200c0 122 90 230 223 230s215 -107 215 -274c0 -143 -48 -243 -112 -305c-50 -48 -119 -79 -189 -87c-32 -4 -61 -6 -81 -5zM256 594h-1 +c-74 0 -127 -66 -127 -158c0 -81 49 -138 125 -138c59 0 105 29 129 68c4 8 7 18 7 32c1 112 -41 196 -133 196z" /> + <glyph glyph-name="uniF642" unicode="&#xf642;" horiz-adv-x="818" +d="M185 603h1c90 0 149 -70 149 -194c0 -137 -71 -205 -155 -205c-82 0 -151 66 -152 196c0 130 70 203 157 203zM182 550h-1c-54 0 -84 -65 -84 -147c-1 -82 30 -146 85 -146c58 0 84 62 84 148c0 79 -23 145 -84 145zM261 -12h-56l351 620h56zM640 392h1 +c90 0 149 -70 149 -194c0 -137 -71 -205 -155 -205c-82 0 -151 66 -152 196c0 130 70 203 157 203zM637 339h-1c-54 0 -84 -65 -84 -147c-1 -82 30 -146 85 -146c58 0 84 62 84 148c0 79 -23 145 -84 145z" /> + <glyph glyph-name="uniF643" unicode="&#xf643;" horiz-adv-x="530" +d="M265 -11h-1c-123 0 -224 92 -224 253c0 158 100 254 225 254c124 0 225 -93 225 -254c0 -157 -100 -253 -225 -253zM265 56h1c87 0 139 79 139 186c0 108 -52 187 -140 187s-140 -79 -140 -187c0 -107 52 -186 140 -186z" /> + <glyph glyph-name="uniF644" unicode="&#xf644;" horiz-adv-x="530" +d="M365 0h-84v411h-2l-186 -82l-15 65l214 91h73v-485z" /> + <glyph glyph-name="uniF645" unicode="&#xf645;" horiz-adv-x="530" +d="M462 0h-396v48l49 34c150 99 224 167 224 248c0 65 -45 98 -107 98c-52 0 -102 -24 -136 -49l-24 57c36 27 101 62 182 62c101 0 173 -57 173 -156c0 -93 -72 -162 -177 -236l-51 -37v-3c25 3 56 4 82 4h181v-70z" /> + <glyph glyph-name="uniF646" unicode="&#xf646;" horiz-adv-x="530" +d="M62 -94l10 65c25 -8 67 -16 109 -16c99 0 169 48 169 121c0 63 -60 102 -152 102c-23 0 -43 -1 -55 -2l-2 64l19 1c93 7 163 44 163 106c0 54 -40 80 -105 80c-51 0 -99 -21 -123 -34l-18 58c31 21 94 45 160 45c102 0 174 -51 174 -134c0 -68 -50 -119 -118 -138v-3 +c79 -11 147 -59 147 -144c0 -115 -116 -191 -251 -191c-52 0 -105 10 -127 20z" /> + <glyph glyph-name="uniF647" unicode="&#xf647;" horiz-adv-x="530" +d="M497 50h-91v-166h-82v166h-292v57l279 385h95v-375h91v-67zM324 117v200c0 33 0 63 3 95l-4 1c-16 -32 -35 -66 -54 -95l-150 -198l1 -3h204z" /> + <glyph glyph-name="uniF648" unicode="&#xf648;" horiz-adv-x="530" +d="M78 -97l11 63c23 -7 64 -13 102 -13c86 0 164 45 164 129c0 29 -11 54 -31 73c-39 38 -118 50 -227 43l51 287h287l-11 -72h-217l-29 -150c83 2 168 -11 220 -61c30 -29 46 -70 46 -113c0 -122 -103 -203 -252 -203c-44 0 -89 7 -114 17z" /> + <glyph glyph-name="uniF649" unicode="&#xf649;" horiz-adv-x="530" +d="M441 606l6 -65c-180 -11 -275 -106 -297 -219l3 -1c25 36 77 73 146 73c102 0 187 -72 187 -191c0 -135 -104 -214 -208 -214c-134 0 -223 99 -223 247c0 207 146 357 386 370zM278 56h1c59 0 120 47 120 142c0 82 -49 134 -122 134c-45 0 -82 -23 -101 -43 +c-24 -25 -32 -50 -32 -83c0 -81 52 -150 134 -150z" /> + <glyph glyph-name="uniF64A" unicode="&#xf64a;" horiz-adv-x="530" +d="M454 485v-56c-62 -163 -181 -386 -282 -543l-83 16c82 118 222 368 275 508v2h-297v73h387z" /> + <glyph glyph-name="uniF64B" unicode="&#xf64b;" horiz-adv-x="530" +d="M350 320v-3c76 -27 129 -80 129 -151c0 -108 -98 -177 -218 -177c-127 0 -213 69 -213 166c0 72 51 125 125 158v3c-56 24 -101 66 -101 129c0 96 86 162 197 162c113 0 187 -67 187 -151c0 -58 -34 -102 -106 -136zM268 547c-61 0 -111 -36 -111 -95 +c0 -54 45 -88 121 -108c53 16 96 52 96 108c0 63 -52 95 -106 95zM262 52h1c70 0 126 42 126 106c0 63 -51 105 -142 129c-66 -22 -111 -68 -111 -124c0 -65 48 -111 126 -111z" /> + <glyph glyph-name="uniF64C" unicode="&#xf64c;" horiz-adv-x="530" +d="M89 -113l-7 65c172 7 272 90 300 208h-2c-21 -33 -76 -67 -144 -67c-101 0 -186 71 -186 191c0 122 94 214 216 214c119 0 213 -87 213 -241c0 -222 -160 -363 -390 -370zM259 155h1c50 0 97 30 116 65c10 13 16 35 16 60c0 90 -59 150 -130 150 +c-60 0 -125 -45 -125 -139c0 -93 57 -136 122 -136z" /> + <glyph glyph-name="uniF64E" unicode="&#xf64e;" horiz-adv-x="530" +d="M466 83l12 -61c-23 -15 -76 -33 -138 -33c-65 0 -130 22 -178 69c-30 30 -52 73 -62 120h-62v49h55c0 11 -1 18 -1 24c0 10 1 22 2 35h-56v48h64c11 46 33 87 63 117c51 51 120 75 189 75c59 0 97 -15 123 -28l-20 -62c-23 12 -56 24 -104 24c-45 0 -88 -14 -123 -48 +c-20 -20 -36 -47 -41 -78h248v-48h-258c-1 -11 -2 -22 -2 -29c0 -8 0 -18 1 -30h259v-49h-249c7 -29 21 -55 39 -72c36 -35 76 -49 126 -49c49 0 90 13 113 26z" /> + <glyph glyph-name="uniF64F" unicode="&#xf64f;" horiz-adv-x="530" +d="M128 282v58h99l6 53c12 99 57 215 191 214c30 0 55 -7 69 -15l-16 -64c-16 6 -32 10 -53 10c-68 0 -97 -65 -106 -139l-7 -59h122v-58h-128l-23 -182c-15 -129 -56 -217 -174 -217c-33 0 -61 7 -77 17l16 62c17 -8 35 -11 56 -11c61 0 85 55 97 157l20 174h-92z" /> + <glyph glyph-name="uniF650" unicode="&#xf650;" horiz-adv-x="530" +d="M205 226h104l19 145h-104zM174 -3h-60l23 170h-83v59h92l19 145h-87v59h95l22 165h59l-22 -165h105l22 165h59l-22 -165h82v-59h-91l-18 -145h86v-59h-95l-22 -170h-61l23 170h-104z" /> + <glyph glyph-name="uniF651" unicode="&#xf651;" horiz-adv-x="530" +d="M479 0h-416v50c66 28 107 74 107 128c0 15 -2 30 -4 44h-97v55h86c-4 21 -8 42 -8 62c0 115 77 194 192 194c50 0 87 -12 109 -25l-19 -64c-18 10 -49 20 -90 20c-73 0 -109 -49 -109 -126c0 -21 3 -42 7 -61h149v-55h-139c2 -11 3 -22 3 -32c-1 -52 -27 -93 -63 -117v-2 +h292v-71z" /> + <glyph glyph-name="uniF652" unicode="&#xf652;" horiz-adv-x="530" +d="M305 0h-83v115h-152v49h152v60h-152v49h127l-149 242h93l86 -154c16 -30 28 -54 39 -78h2c11 25 27 52 42 80l91 152h91l-160 -242h127v-49h-154v-60h154v-49h-154v-115z" /> + <glyph glyph-name="uniF653" unicode="&#xf653;" horiz-adv-x="530" +d="M295 -82h-57v80c-53 1 -114 17 -148 40l24 60c29 -20 86 -36 134 -36c57 0 106 27 106 72c0 39 -30 60 -100 84c-103 34 -153 71 -153 138s59 116 143 127v85h57v-83c54 -2 98 -17 123 -31l-23 -60c-24 14 -69 30 -115 30c-55 0 -97 -25 -97 -62c0 -36 23 -54 109 -82 +c100 -33 146 -76 146 -142c0 -63 -54 -124 -149 -138v-82z" /> + <glyph glyph-name="uniF654" unicode="&#xf654;" horiz-adv-x="530" +d="M403 129l14 -59c-17 -9 -56 -22 -100 -24v-72h-55v73c-108 12 -181 83 -181 197c0 108 72 189 181 205v68h55v-66c40 -1 78 -11 98 -20l-16 -60c-20 11 -53 18 -94 18c-84 0 -141 -57 -141 -141c0 -91 62 -139 137 -139c47 0 81 11 102 20z" /> + <glyph glyph-name="uniF655" unicode="&#xf655;" horiz-adv-x="336" +d="M166 -4h-1c-87 0 -142 75 -142 199c0 123 57 200 147 200c92 0 143 -76 143 -197s-50 -202 -147 -202zM167 47h1c49 0 75 55 75 150c0 93 -25 147 -75 147c-45 0 -75 -54 -75 -147c0 -96 29 -150 74 -150z" /> + <glyph glyph-name="uniF656" unicode="&#xf656;" horiz-adv-x="244" +d="M177 1h-70v328h-2l-72 -35l-11 52l94 44h61v-389z" /> + <glyph glyph-name="uniF657" unicode="&#xf657;" horiz-adv-x="311" +d="M12 1v37l63 58c83 76 126 123 126 174c0 38 -24 69 -76 69c-35 0 -65 -17 -84 -31l-21 46c27 22 72 41 123 41c94 0 132 -59 132 -112c0 -75 -57 -130 -133 -197l-30 -28v-2h170v-55h-270z" /> + <glyph glyph-name="uniF658" unicode="&#xf658;" horiz-adv-x="305" +d="M45 317l-17 47c23 15 66 31 115 31c86 0 122 -46 122 -94c0 -40 -29 -73 -77 -90v-2c54 -7 93 -46 93 -96c0 -62 -56 -117 -158 -117c-48 0 -92 13 -115 28l18 50c16 -11 56 -26 93 -26c62 0 89 36 88 67c0 50 -53 70 -106 70h-27v46h28c37 0 91 17 91 63 +c0 24 -18 49 -63 49c-36 0 -69 -16 -85 -26z" /> + <glyph glyph-name="uniF659" unicode="&#xf659;" horiz-adv-x="347" +d="M272 1h-67v101h-189v41l177 247h79v-238h55v-50h-55v-101zM205 152v115c0 23 2 44 3 64h-2c-12 -23 -22 -41 -34 -59l-87 -119l1 -1h119z" /> + <glyph glyph-name="uniF65A" unicode="&#xf65a;" horiz-adv-x="308" +d="M268 388v-55h-155l-13 -85c8 1 18 2 31 2c33 0 66 -6 93 -22c30 -17 55 -51 55 -100c0 -77 -63 -133 -155 -133c-44 0 -85 12 -105 24l14 49c17 -9 51 -21 89 -21c45 0 88 28 88 75s-32 79 -113 79c-22 0 -42 -2 -57 -4l26 191h202z" /> + <glyph glyph-name="uniF65B" unicode="&#xf65b;" horiz-adv-x="332" +d="M267 394v-53c-10 1 -25 1 -40 -1c-80 -11 -125 -62 -136 -122h2c19 21 52 41 94 41c72 0 122 -50 122 -125c0 -76 -57 -138 -138 -138c-93 0 -148 70 -148 166c0 74 27 135 67 173c35 33 81 51 138 57c15 1 29 2 39 2zM170 47h1c42 0 70 35 70 83c0 49 -29 81 -76 81 +c-31 0 -58 -19 -71 -44c-3 -6 -5 -13 -5 -22c0 -54 28 -98 81 -98z" /> + <glyph glyph-name="uniF65C" unicode="&#xf65c;" horiz-adv-x="294" +d="M19 388h263v-43l-172 -344h-70l171 331v1h-192v55z" /> + <glyph glyph-name="uniF65D" unicode="&#xf65d;" horiz-adv-x="328" +d="M167 395h1c81 0 121 -47 121 -97c0 -33 -18 -68 -63 -88v-2c45 -17 78 -50 78 -98c0 -68 -59 -114 -142 -114c-90 0 -138 51 -138 105c0 48 29 81 77 100v3c-43 19 -63 52 -63 86c0 63 56 105 129 105zM163 43h1c44 0 72 27 72 62c0 43 -32 64 -80 76 +c-42 -12 -65 -38 -65 -72c0 -35 27 -66 72 -66zM165 349h-1c-41 0 -63 -26 -63 -56c0 -34 27 -54 70 -65c31 10 55 31 55 63c0 28 -18 58 -61 58z" /> + <glyph glyph-name="uniF65E" unicode="&#xf65e;" horiz-adv-x="327" +d="M58 -3v53c11 -1 26 -1 42 1c32 3 61 14 84 33c26 21 45 51 52 91h-2c-20 -23 -51 -38 -90 -38c-71 0 -121 50 -121 120c0 74 58 138 142 138c89 0 139 -69 139 -165c0 -83 -29 -142 -68 -179c-34 -31 -81 -48 -131 -52c-18 -2 -36 -3 -47 -2zM162 345h-1 +c-41 0 -71 -36 -71 -85c0 -42 27 -75 71 -75c33 0 59 16 71 37c3 4 5 11 5 19c0 57 -23 104 -75 104z" /> + <glyph glyph-name="uniF65F" unicode="&#xf65f;" horiz-adv-x="131" +d="M48 -67l-48 -5c16 44 32 107 39 155l74 6c-17 -56 -43 -120 -65 -156z" /> + <glyph glyph-name="uniF660" unicode="&#xf660;" horiz-adv-x="131" +d="M65 -5h-1c-25 0 -43 20 -43 45c0 27 19 45 44 45c26 0 44 -18 44 -45c0 -25 -18 -45 -44 -45z" /> + <glyph glyph-name="uniF629" unicode="&#xf629;" horiz-adv-x="315" +d="M206 -8h-46v60c-40 5 -68 20 -90 44c-21 23 -34 58 -34 99c0 76 47 137 124 150v58h46v-57c25 0 49 -7 64 -14l-13 -50c-13 7 -32 14 -61 14c-57 0 -93 -41 -93 -97c0 -63 41 -97 91 -97c31 0 53 7 67 13l11 -47c-13 -7 -38 -15 -66 -17v-59z" /> + <glyph glyph-name="uniF62A" unicode="&#xf62a;" horiz-adv-x="317" +d="M179 -51h-45v59c-38 1 -77 12 -99 27l16 50c24 -15 57 -27 94 -27c42 0 69 21 69 51s-21 46 -68 64c-67 24 -106 52 -106 106c0 51 36 90 97 100v59h45v-56c36 -1 65 -11 83 -21l-16 -49c-13 7 -41 21 -82 21c-46 0 -61 -24 -61 -46c0 -27 20 -40 76 -61 +c67 -25 98 -56 98 -111c0 -49 -35 -94 -101 -104v-62z" /> + <glyph glyph-name="uniF62B" unicode="&#xf62b;" horiz-adv-x="191" +d="M18 208h155v-48h-155v48z" /> + <glyph glyph-name="uniF62C" unicode="&#xf62c;" horiz-adv-x="180" +d="M117 425h51c-40 -57 -72 -136 -72 -242s33 -183 72 -241h-51c-36 48 -77 125 -77 241s41 194 77 242z" /> + <glyph glyph-name="uniF62D" unicode="&#xf62d;" horiz-adv-x="180" +d="M64 -58h-51c39 58 72 136 72 242s-32 183 -72 241h51c36 -48 77 -125 77 -241c0 -115 -41 -193 -77 -242z" /> + <glyph glyph-name="uniF661" unicode="&#xf661;" horiz-adv-x="336" +d="M166 262h-1c-87 0 -142 75 -142 199c0 123 57 200 147 200c92 0 143 -76 143 -197s-50 -202 -147 -202zM167 313h1c49 0 75 55 75 150c0 93 -25 147 -75 147c-45 0 -75 -54 -75 -147c0 -96 29 -150 74 -150z" /> + <glyph glyph-name="uniF662" unicode="&#xf662;" horiz-adv-x="244" +d="M177 267h-70v328h-2l-72 -35l-11 52l94 44h61v-389z" /> + <glyph glyph-name="uniF663" unicode="&#xf663;" horiz-adv-x="311" +d="M12 267v37l63 58c83 76 126 123 126 174c0 38 -24 69 -76 69c-35 0 -65 -17 -84 -31l-21 46c27 22 72 41 123 41c94 0 132 -59 132 -112c0 -75 -57 -130 -133 -197l-30 -28v-2h170v-55h-270z" /> + <glyph glyph-name="uniF664" unicode="&#xf664;" horiz-adv-x="305" +d="M45 583l-17 47c23 15 66 31 115 31c86 0 122 -46 122 -94c0 -40 -29 -73 -77 -90v-2c54 -7 93 -46 93 -96c0 -62 -56 -117 -158 -117c-48 0 -92 13 -115 28l18 50c16 -11 56 -26 93 -26c62 0 89 36 88 67c0 50 -53 70 -106 70h-27v46h28c37 0 91 17 91 63 +c0 24 -18 49 -63 49c-36 0 -69 -16 -85 -26z" /> + <glyph glyph-name="uniF665" unicode="&#xf665;" horiz-adv-x="347" +d="M272 267h-67v101h-189v41l177 247h79v-238h55v-50h-55v-101zM205 418v115c0 23 2 44 3 64h-2c-12 -23 -22 -41 -34 -59l-87 -119l1 -1h119z" /> + <glyph glyph-name="uniF666" unicode="&#xf666;" horiz-adv-x="308" +d="M268 654v-55h-155l-13 -85c8 1 18 2 31 2c33 0 66 -6 93 -22c30 -17 55 -51 55 -100c0 -77 -63 -133 -155 -133c-44 0 -85 12 -105 24l14 49c17 -9 51 -21 89 -21c45 0 88 28 88 75s-32 79 -113 79c-22 0 -42 -2 -57 -4l26 191h202z" /> + <glyph glyph-name="uniF667" unicode="&#xf667;" horiz-adv-x="332" +d="M267 660v-53c-10 1 -25 1 -40 -1c-80 -11 -125 -62 -136 -122h2c19 21 52 41 94 41c72 0 122 -50 122 -125c0 -76 -57 -138 -138 -138c-93 0 -148 70 -148 166c0 74 27 135 67 173c35 33 81 51 138 57c15 1 29 2 39 2zM170 313h1c42 0 70 35 70 83c0 49 -29 81 -76 81 +c-31 0 -58 -19 -71 -44c-3 -6 -5 -13 -5 -22c0 -54 28 -98 81 -98z" /> + <glyph glyph-name="uniF668" unicode="&#xf668;" horiz-adv-x="294" +d="M19 654h263v-43l-172 -344h-70l171 331v1h-192v55z" /> + <glyph glyph-name="uniF669" unicode="&#xf669;" horiz-adv-x="328" +d="M167 661h1c81 0 121 -47 121 -97c0 -33 -18 -68 -63 -88v-2c45 -17 78 -50 78 -98c0 -68 -59 -114 -142 -114c-90 0 -138 51 -138 105c0 48 29 81 77 100v3c-43 19 -63 52 -63 86c0 63 56 105 129 105zM163 309h1c44 0 72 27 72 62c0 43 -32 64 -80 76 +c-42 -12 -65 -38 -65 -72c0 -35 27 -66 72 -66zM165 615h-1c-41 0 -63 -26 -63 -56c0 -34 27 -54 70 -65c31 10 55 31 55 63c0 28 -18 58 -61 58z" /> + <glyph glyph-name="uniF66A" unicode="&#xf66a;" horiz-adv-x="327" +d="M58 263v53c11 -1 26 -1 42 1c32 3 61 14 84 33c26 21 45 51 52 91h-2c-20 -23 -51 -38 -90 -38c-71 0 -121 50 -121 120c0 74 58 138 142 138c89 0 139 -69 139 -165c0 -83 -29 -142 -68 -179c-34 -31 -81 -48 -131 -52c-18 -2 -36 -3 -47 -2zM162 611h-1 +c-41 0 -71 -36 -71 -85c0 -42 27 -75 71 -75c33 0 59 16 71 37c3 4 5 11 5 19c0 57 -23 104 -75 104z" /> + <glyph glyph-name="uniF66B" unicode="&#xf66b;" horiz-adv-x="131" +d="M48 199l-48 -5c16 44 32 107 39 155l74 6c-17 -56 -43 -120 -65 -156z" /> + <glyph glyph-name="uniF66C" unicode="&#xf66c;" horiz-adv-x="131" +d="M65 261h-1c-25 0 -43 20 -43 45c0 27 19 45 44 45c26 0 44 -18 44 -45c0 -25 -18 -45 -44 -45z" /> + <glyph glyph-name="uniF62E" unicode="&#xf62e;" horiz-adv-x="315" +d="M206 258h-46v60c-40 5 -68 20 -90 44c-21 23 -34 58 -34 99c0 76 47 137 124 150v58h46v-57c25 0 49 -7 64 -14l-13 -50c-13 7 -32 14 -61 14c-57 0 -93 -41 -93 -97c0 -63 41 -97 91 -97c31 0 53 7 67 13l11 -47c-13 -7 -38 -15 -66 -17v-59z" /> + <glyph glyph-name="uniF62F" unicode="&#xf62f;" horiz-adv-x="317" +d="M179 215h-45v59c-38 1 -77 12 -99 27l16 50c24 -15 57 -27 94 -27c42 0 69 21 69 51s-21 46 -68 64c-67 24 -106 52 -106 106c0 51 36 90 97 100v59h45v-56c36 -1 65 -11 83 -21l-16 -49c-13 7 -41 21 -82 21c-46 0 -61 -24 -61 -46c0 -27 20 -40 76 -61 +c67 -25 98 -56 98 -111c0 -49 -35 -94 -101 -104v-62z" /> + <glyph glyph-name="uniF630" unicode="&#xf630;" horiz-adv-x="191" +d="M18 474h155v-48h-155v48z" /> + <glyph glyph-name="uniF631" unicode="&#xf631;" horiz-adv-x="180" +d="M117 691h51c-40 -57 -72 -136 -72 -242s33 -183 72 -241h-51c-36 48 -77 125 -77 241s41 194 77 242z" /> + <glyph glyph-name="uniF632" unicode="&#xf632;" horiz-adv-x="180" +d="M64 208h-51c39 58 72 136 72 242s-32 183 -72 241h51c36 -48 77 -125 77 -241c0 -115 -41 -193 -77 -242z" /> + <glyph glyph-name="uniF6AE" unicode="&#xf6ae;" horiz-adv-x="284" +d="M195 733h68c-73 -99 -125 -228 -125 -410c0 -178 55 -305 125 -405h-68c-63 83 -131 211 -131 406c1 196 68 325 131 409z" /> + <glyph glyph-name="uniF6AF" unicode="&#xf6af;" horiz-adv-x="284" +d="M88 -82h-68c70 99 125 228 125 408s-54 307 -125 407h68c63 -82 131 -211 131 -407c-1 -196 -68 -323 -131 -408z" /> + <glyph glyph-name="uniF6B0" unicode="&#xf6b0;" horiz-adv-x="284" +d="M264 -73h-183v798h183v-55h-114v-688h114v-55z" /> + <glyph glyph-name="uniF6B1" unicode="&#xf6b1;" horiz-adv-x="284" +d="M20 725h183v-798h-183v55h114v688h-114v55z" /> + <glyph glyph-name="uniF6B2" unicode="&#xf6b2;" horiz-adv-x="284" +d="M28 302v51c71 0 81 39 81 74c0 28 -4 56 -8 84s-8 56 -8 83c0 92 61 131 146 131h20v-55h-17c-59 -1 -80 -32 -80 -86c0 -23 4 -47 7 -71c4 -25 8 -49 8 -76c1 -64 -28 -96 -72 -108v-2c44 -11 73 -45 72 -109c0 -27 -4 -52 -8 -77c-3 -24 -7 -48 -7 -72 +c0 -56 24 -86 80 -87h17v-55h-21c-82 0 -145 36 -145 137c0 27 4 55 9 82c3 28 7 55 7 81c0 32 -10 75 -81 75z" /> + <glyph glyph-name="uniF6B3" unicode="&#xf6b3;" horiz-adv-x="284" +d="M256 353v-51c-71 0 -81 -43 -81 -75c0 -26 4 -53 8 -81c4 -27 8 -55 8 -82c0 -101 -63 -137 -145 -137h-21v55h17c56 1 80 31 80 87c0 24 -4 48 -7 72c-4 25 -8 50 -8 77c-1 64 28 98 72 109v2c-44 12 -73 44 -72 108c0 27 4 51 8 76c3 24 7 48 7 71c0 54 -21 85 -80 86 +h-17v55h20c85 0 146 -39 146 -131c0 -27 -4 -55 -8 -83s-8 -56 -8 -84c0 -35 10 -74 81 -74z" /> + <glyph glyph-name="uniF6B4" unicode="&#xf6b4;" horiz-adv-x="230" +d="M163 0h-96l14 478h68zM115 683h1c35 0 58 -26 58 -62c0 -35 -23 -62 -59 -62c-35 0 -59 27 -59 62c0 36 25 62 59 62z" /> + <glyph glyph-name="uniF6B5" unicode="&#xf6b5;" horiz-adv-x="406" +d="M237 683h1c34 0 58 -26 58 -63c0 -35 -23 -62 -59 -62c-35 0 -59 27 -59 62c0 37 24 63 59 63zM197 481h78l2 -26c6 -54 -12 -113 -62 -173c-45 -54 -70 -92 -70 -137c0 -51 32 -86 95 -86c36 0 76 12 102 31l23 -63c-33 -24 -90 -41 -143 -41c-115 0 -167 72 -167 148 +c0 67 38 117 86 173c44 53 60 97 57 148z" /> + <glyph glyph-name="uniF6B6" unicode="&#xf6b6;" horiz-adv-x="419" +d="M232 511l-133 -184l134 -184h-71l-133 184l132 184h71zM396 511l-133 -184l134 -184h-71l-133 184l132 184h71z" /> + <glyph glyph-name="uniF6B7" unicode="&#xf6b7;" horiz-adv-x="419" +d="M157 327l-134 184h71l133 -184l-133 -184h-70zM320 327l-134 184h71l133 -184l-133 -184h-70z" /> + <glyph glyph-name="uniF6B8" unicode="&#xf6b8;" horiz-adv-x="255" +d="M232 511l-133 -184l134 -184h-71l-133 184l132 184h71z" /> + <glyph glyph-name="uniF6B9" unicode="&#xf6b9;" horiz-adv-x="255" +d="M157 327l-134 184h71l133 -184l-133 -184h-70z" /> + <glyph glyph-name="uniF6BA" unicode="&#xf6ba;" horiz-adv-x="307" +d="M30 377h247v-64h-247v64z" /> + <glyph glyph-name="uniF6BB" unicode="&#xf6bb;" horiz-adv-x="500" +d="M30 359h440v-60h-440v60z" /> + <glyph glyph-name="uniF6BC" unicode="&#xf6bc;" horiz-adv-x="1000" +d="M30 359h940v-60h-940v60z" /> + <glyph glyph-name="uniF6BD" unicode="&#xf6bd;" horiz-adv-x="207" +d="M103 275h-1c-34 0 -58 27 -58 62c0 37 25 63 60 63s59 -26 59 -63c0 -35 -24 -62 -60 -62z" /> + <glyph glyph-name="uniF633" unicode="&#xf633;" horiz-adv-x="737" +d="M449 348l21 112c-10 4 -27 8 -50 8c-89 0 -160 -83 -160 -180c0 -44 22 -76 66 -76c58 0 112 74 123 136zM508 71l16 -43c-55 -29 -111 -40 -178 -40c-164 0 -303 120 -303 313c0 206 143 384 365 384c174 0 290 -122 290 -289c0 -150 -83 -238 -177 -238 +c-40 0 -76 26 -74 88h-3c-36 -59 -82 -88 -142 -88c-58 0 -108 47 -108 126c0 124 98 237 237 237c43 0 82 -9 107 -21l-33 -181c-15 -76 -4 -111 29 -112c51 -2 108 67 108 182c0 146 -87 250 -242 250c-163 0 -300 -129 -300 -332c0 -167 109 -271 257 -271 +c58 0 111 13 151 35z" /> + <hkern u1="&#x20;" u2="&#x38f;" k="12" /> + <hkern u1="&#x20;" u2="&#x38e;" k="30" /> + <hkern u1="&#x20;" u2="&#x38c;" k="12" /> + <hkern u1="&#x20;" u2="&#x386;" k="50" /> + <hkern u1="&#x2019;" u2="&#x129;" k="39" /> + <hkern u1="&#x2019;" u2="&#x12f;" k="39" /> + <hkern u1="&#x2019;" u2="&#x12b;" k="39" /> + <hkern u1="&#x2019;" u2="&#x133;" k="39" /> + <hkern u1="&#x2019;" u2="&#x12d;" k="39" /> + <hkern u1="&#x2019;" u2="&#xec;" k="39" /> + <hkern u1="&#x2019;" u2="&#xef;" k="39" /> + <hkern u1="&#x2019;" u2="&#xee;" k="39" /> + <hkern u1="&#x2019;" u2="&#xed;" k="39" /> + <hkern u1="&#x2019;" u2="&#x131;" k="39" /> + <hkern u1="&#x2019;" u2="i" k="39" /> + <hkern u1="C" u2="&#x152;" k="24" /> + <hkern u1="F" u2="&#xef;" k="-15" /> + <hkern u1="L" u2="&#x1fe;" k="33" /> + <hkern u1="L" u2="&#xd8;" k="33" /> + <hkern u1="P" u2="&#x127;" k="4" /> + <hkern u1="T" u2="&#x129;" k="12" /> + <hkern u1="T" u2="&#x12f;" k="12" /> + <hkern u1="T" u2="&#x12b;" k="12" /> + <hkern u1="T" u2="&#x133;" k="12" /> + <hkern u1="T" u2="&#x12d;" k="-52" /> + <hkern u1="T" u2="&#xec;" k="12" /> + <hkern u1="T" u2="&#xef;" k="-68" /> + <hkern u1="T" u2="&#xee;" k="12" /> + <hkern u1="T" u2="&#xed;" k="12" /> + <hkern u1="T" u2="&#xe8;" k="68" /> + <hkern u1="T" u2="&#xe0;" k="36" /> + <hkern u1="T" u2="&#x131;" k="12" /> + <hkern u1="T" u2="i" k="12" /> + <hkern u1="V" u2="&#x12d;" k="-50" /> + <hkern u1="V" u2="&#x1fc;" k="59" /> + <hkern u1="V" u2="&#xef;" k="-66" /> + <hkern u1="V" u2="&#xc6;" k="59" /> + <hkern u1="W" u2="&#x12d;" k="-50" /> + <hkern u1="W" u2="&#x1fc;" k="59" /> + <hkern u1="W" u2="&#xef;" k="-66" /> + <hkern u1="W" u2="&#xc6;" k="59" /> + <hkern u1="Y" u2="&#x12d;" k="-29" /> + <hkern u1="Y" u2="&#xf6;" k="64" /> + <hkern u1="Y" u2="&#xef;" k="-52" /> + <hkern u1="Y" u2="&#xeb;" k="64" /> + <hkern u1="Y" u2="&#xe4;" k="48" /> + <hkern u1="&#x2018;" u2="&#x129;" k="21" /> + <hkern u1="&#x2018;" u2="&#x12f;" k="21" /> + <hkern u1="&#x2018;" u2="&#x12b;" k="21" /> + <hkern u1="&#x2018;" u2="&#x133;" k="21" /> + <hkern u1="&#x2018;" u2="&#x12d;" k="21" /> + <hkern u1="&#x2018;" u2="&#x127;" k="-9" /> + <hkern u1="&#x2018;" u2="&#xec;" k="21" /> + <hkern u1="&#x2018;" u2="&#xef;" k="21" /> + <hkern u1="&#x2018;" u2="&#xee;" k="21" /> + <hkern u1="&#x2018;" u2="&#xed;" k="21" /> + <hkern u1="&#x2018;" u2="&#x131;" k="21" /> + <hkern u1="&#x2018;" u2="i" k="21" /> + <hkern u1="r" u2="&#x142;" k="-6" /> + <hkern u1="&#x201c;" u2="&#x129;" k="21" /> + <hkern u1="&#x201c;" u2="&#x12f;" k="21" /> + <hkern u1="&#x201c;" u2="&#x12b;" k="21" /> + <hkern u1="&#x201c;" u2="&#x133;" k="21" /> + <hkern u1="&#x201c;" u2="&#x12d;" k="21" /> + <hkern u1="&#x201c;" u2="&#x127;" k="-9" /> + <hkern u1="&#x201c;" u2="&#xec;" k="21" /> + <hkern u1="&#x201c;" u2="&#xef;" k="21" /> + <hkern u1="&#x201c;" u2="&#xee;" k="21" /> + <hkern u1="&#x201c;" u2="&#xed;" k="21" /> + <hkern u1="&#x201c;" u2="&#x131;" k="21" /> + <hkern u1="&#x201c;" u2="i" k="21" /> + <hkern u1="&#x201d;" u2="&#x129;" k="39" /> + <hkern u1="&#x201d;" u2="&#x12f;" k="39" /> + <hkern u1="&#x201d;" u2="&#x12b;" k="39" /> + <hkern u1="&#x201d;" u2="&#x133;" k="39" /> + <hkern u1="&#x201d;" u2="&#x12d;" k="39" /> + <hkern u1="&#x201d;" u2="&#xec;" k="39" /> + <hkern u1="&#x201d;" u2="&#xef;" k="39" /> + <hkern u1="&#x201d;" u2="&#xee;" k="39" /> + <hkern u1="&#x201d;" u2="&#xed;" k="39" /> + <hkern u1="&#x201d;" u2="&#x131;" k="39" /> + <hkern u1="&#x201d;" u2="i" k="39" /> + <hkern u1="&#x141;" u2="&#x1fe;" k="33" /> + <hkern u1="&#x141;" u2="&#xd8;" k="33" /> + <hkern u1="&#x142;" u2="&#x201d;" k="-9" /> + <hkern u1="&#x142;" u2="&#x2019;" k="-9" /> + <hkern u1="&#xc7;" u2="&#x152;" k="24" /> + <hkern u1="&#xdd;" u2="&#x12d;" k="-29" /> + <hkern u1="&#xdd;" u2="&#xf6;" k="64" /> + <hkern u1="&#xdd;" u2="&#xef;" k="-52" /> + <hkern u1="&#xdd;" u2="&#xeb;" k="64" /> + <hkern u1="&#xdd;" u2="&#xe4;" k="48" /> + <hkern u1="&#x178;" u2="&#x12d;" k="-29" /> + <hkern u1="&#x178;" u2="&#xf6;" k="64" /> + <hkern u1="&#x178;" u2="&#xef;" k="-52" /> + <hkern u1="&#x178;" u2="&#xeb;" k="64" /> + <hkern u1="&#x178;" u2="&#xe4;" k="48" /> + <hkern u1="&#x106;" u2="&#x152;" k="24" /> + <hkern u1="&#x10c;" u2="&#x152;" k="24" /> + <hkern u1="&#x108;" u2="&#x152;" k="24" /> + <hkern u1="&#x10a;" u2="&#x152;" k="24" /> + <hkern u1="&#x139;" u2="&#x1fe;" k="33" /> + <hkern u1="&#x139;" u2="&#xd8;" k="33" /> + <hkern u1="&#x13d;" u2="&#x1fe;" k="33" /> + <hkern u1="&#x13d;" u2="&#xd8;" k="33" /> + <hkern u1="&#x13b;" u2="&#x1fe;" k="33" /> + <hkern u1="&#x13b;" u2="&#xd8;" k="33" /> + <hkern u1="&#x13f;" u2="&#x39f;" k="36" /> + <hkern u1="&#x13f;" u2="&#x398;" k="36" /> + <hkern u1="&#x13f;" u2="&#x1fe;" k="36" /> + <hkern u1="&#x13f;" u2="&#x14c;" k="36" /> + <hkern u1="&#x13f;" u2="&#x150;" k="36" /> + <hkern u1="&#x13f;" u2="&#x14e;" k="36" /> + <hkern u1="&#x13f;" u2="&#x120;" k="36" /> + <hkern u1="&#x13f;" u2="&#x122;" k="36" /> + <hkern u1="&#x13f;" u2="&#x11c;" k="36" /> + <hkern u1="&#x13f;" u2="&#x11e;" k="36" /> + <hkern u1="&#x13f;" u2="&#x10a;" k="36" /> + <hkern u1="&#x13f;" u2="&#x108;" k="36" /> + <hkern u1="&#x13f;" u2="&#x10c;" k="36" /> + <hkern u1="&#x13f;" u2="&#x106;" k="36" /> + <hkern u1="&#x13f;" u2="&#xd5;" k="36" /> + <hkern u1="&#x13f;" u2="&#xd2;" k="36" /> + <hkern u1="&#x13f;" u2="&#xd6;" k="36" /> + <hkern u1="&#x13f;" u2="&#xd4;" k="36" /> + <hkern u1="&#x13f;" u2="&#xd3;" k="36" /> + <hkern u1="&#x13f;" u2="&#xc7;" k="36" /> + <hkern u1="&#x13f;" u2="&#x152;" k="36" /> + <hkern u1="&#x13f;" u2="&#xd8;" k="36" /> + <hkern u1="&#x13f;" u2="Q" k="36" /> + <hkern u1="&#x13f;" u2="O" k="36" /> + <hkern u1="&#x13f;" u2="G" k="36" /> + <hkern u1="&#x13f;" u2="C" k="36" /> + <hkern u1="&#x166;" u2="&#x129;" k="12" /> + <hkern u1="&#x166;" u2="&#x12f;" k="12" /> + <hkern u1="&#x166;" u2="&#x12b;" k="12" /> + <hkern u1="&#x166;" u2="&#x133;" k="12" /> + <hkern u1="&#x166;" u2="&#x12d;" k="-52" /> + <hkern u1="&#x166;" u2="&#xec;" k="12" /> + <hkern u1="&#x166;" u2="&#xef;" k="-68" /> + <hkern u1="&#x166;" u2="&#xee;" k="12" /> + <hkern u1="&#x166;" u2="&#xed;" k="12" /> + <hkern u1="&#x166;" u2="&#xe8;" k="68" /> + <hkern u1="&#x166;" u2="&#xe0;" k="36" /> + <hkern u1="&#x166;" u2="&#x131;" k="12" /> + <hkern u1="&#x166;" u2="i" k="12" /> + <hkern u1="&#x164;" u2="&#x129;" k="12" /> + <hkern u1="&#x164;" u2="&#x12f;" k="12" /> + <hkern u1="&#x164;" u2="&#x12b;" k="12" /> + <hkern u1="&#x164;" u2="&#x133;" k="12" /> + <hkern u1="&#x164;" u2="&#x12d;" k="-52" /> + <hkern u1="&#x164;" u2="&#xec;" k="12" /> + <hkern u1="&#x164;" u2="&#xef;" k="-68" /> + <hkern u1="&#x164;" u2="&#xee;" k="12" /> + <hkern u1="&#x164;" u2="&#xed;" k="12" /> + <hkern u1="&#x164;" u2="&#xe8;" k="68" /> + <hkern u1="&#x164;" u2="&#xe0;" k="36" /> + <hkern u1="&#x164;" u2="&#x131;" k="12" /> + <hkern u1="&#x164;" u2="i" k="12" /> + <hkern u1="&#x162;" u2="&#x129;" k="12" /> + <hkern u1="&#x162;" u2="&#x12f;" k="12" /> + <hkern u1="&#x162;" u2="&#x12b;" k="12" /> + <hkern u1="&#x162;" u2="&#x133;" k="12" /> + <hkern u1="&#x162;" u2="&#x12d;" k="-52" /> + <hkern u1="&#x162;" u2="&#xec;" k="12" /> + <hkern u1="&#x162;" u2="&#xef;" k="-68" /> + <hkern u1="&#x162;" u2="&#xee;" k="12" /> + <hkern u1="&#x162;" u2="&#xed;" k="12" /> + <hkern u1="&#x162;" u2="&#xe8;" k="68" /> + <hkern u1="&#x162;" u2="&#xe0;" k="36" /> + <hkern u1="&#x162;" u2="&#x131;" k="12" /> + <hkern u1="&#x162;" u2="i" k="12" /> + <hkern u1="&#x1e82;" u2="&#x12d;" k="-50" /> + <hkern u1="&#x1e82;" u2="&#x1fc;" k="59" /> + <hkern u1="&#x1e82;" u2="&#xef;" k="-66" /> + <hkern u1="&#x1e82;" u2="&#xc6;" k="59" /> + <hkern u1="&#x174;" u2="&#x12d;" k="-50" /> + <hkern u1="&#x174;" u2="&#x1fc;" k="59" /> + <hkern u1="&#x174;" u2="&#xef;" k="-66" /> + <hkern u1="&#x174;" u2="&#xc6;" k="59" /> + <hkern u1="&#x1e84;" u2="&#x12d;" k="-50" /> + <hkern u1="&#x1e84;" u2="&#x1fc;" k="59" /> + <hkern u1="&#x1e84;" u2="&#xef;" k="-66" /> + <hkern u1="&#x1e84;" u2="&#xc6;" k="59" /> + <hkern u1="&#x1e80;" u2="&#x12d;" k="-50" /> + <hkern u1="&#x1e80;" u2="&#x1fc;" k="59" /> + <hkern u1="&#x1e80;" u2="&#xef;" k="-66" /> + <hkern u1="&#x1e80;" u2="&#xc6;" k="59" /> + <hkern u1="&#x1ef2;" u2="&#x12d;" k="-29" /> + <hkern u1="&#x1ef2;" u2="&#xf6;" k="64" /> + <hkern u1="&#x1ef2;" u2="&#xef;" k="-52" /> + <hkern u1="&#x1ef2;" u2="&#xeb;" k="64" /> + <hkern u1="&#x1ef2;" u2="&#xe4;" k="48" /> + <hkern u1="&#x10f;" u2="&#x140;" k="-56" /> + <hkern u1="&#x10f;" u2="&#x13c;" k="-56" /> + <hkern u1="&#x10f;" u2="&#x13e;" k="-56" /> + <hkern u1="&#x10f;" u2="&#x13a;" k="-56" /> + <hkern u1="&#x10f;" u2="&#x137;" k="-56" /> + <hkern u1="&#x10f;" u2="&#x125;" k="-56" /> + <hkern u1="&#x10f;" u2="&#x127;" k="-56" /> + <hkern u1="&#x10f;" u2="&#x142;" k="-56" /> + <hkern u1="&#x10f;" u2="&#x201d;" k="-74" /> + <hkern u1="&#x10f;" u2="l" k="-56" /> + <hkern u1="&#x10f;" u2="k" k="-56" /> + <hkern u1="&#x10f;" u2="h" k="-56" /> + <hkern u1="&#x10f;" u2="b" k="-56" /> + <hkern u1="&#x10f;" u2="&#x2019;" k="-74" /> + <hkern u1="&#x155;" u2="&#x142;" k="-6" /> + <hkern u1="&#x159;" u2="&#x142;" k="-6" /> + <hkern u1="&#x157;" u2="&#x142;" k="-6" /> + <hkern u1="&#x165;" u2="&#x201d;" k="-50" /> + <hkern u1="&#x165;" u2="&#x2019;" k="-50" /> + <hkern u1="&#x391;" u2="&#x3c2;" k="12" /> + <hkern u1="&#x391;" u2="&#x3be;" k="2" /> + <hkern u1="&#x391;" u2="&#x3bd;" k="23" /> + <hkern u1="&#x391;" u2="&#x3b4;" k="9" /> + <hkern u1="&#x392;" u2="&#x3b4;" k="-4" /> + <hkern u1="&#x393;" u2="&#x3b0;" k="23" /> + <hkern u1="&#x393;" u2="&#x390;" k="-77" /> + <hkern u1="&#x393;" u2="&#x3cb;" k="36" /> + <hkern u1="&#x393;" u2="&#x3ca;" k="-56" /> + <hkern u1="&#x393;" u2="&#x3b4;" k="48" /> + <hkern u1="&#x393;" u2="&#x3b2;" k="25" /> + <hkern u1="&#x394;" u2="&#x3be;" k="-4" /> + <hkern u1="&#x395;" u2="&#x390;" k="-42" /> + <hkern u1="&#x395;" u2="&#x3ca;" k="-26" /> + <hkern u1="&#x395;" u2="&#x3be;" k="4" /> + <hkern u1="&#x397;" u2="&#x390;" k="-30" /> + <hkern u1="&#x397;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x398;" u2="&#x3be;" k="-8" /> + <hkern u1="&#x399;" u2="&#x390;" k="-30" /> + <hkern u1="&#x399;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x39a;" u2="&#x3c2;" k="4" /> + <hkern u1="&#x39a;" u2="&#x3b0;" k="11" /> + <hkern u1="&#x39a;" u2="&#x390;" k="-63" /> + <hkern u1="&#x39a;" u2="&#x3ca;" k="-42" /> + <hkern u1="&#x39a;" u2="&#x3b2;" k="-6" /> + <hkern u1="&#x39d;" u2="&#x390;" k="-30" /> + <hkern u1="&#x39d;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x39d;" u2="&#x3c1;" k="5" /> + <hkern u1="&#x39d;" u2="&#x3bf;" k="5" /> + <hkern u1="&#x39d;" u2="&#x3b4;" k="5" /> + <hkern u1="&#x39d;" u2="&#x391;" k="13" /> + <hkern u1="&#x39e;" u2="&#x390;" k="-53" /> + <hkern u1="&#x39e;" u2="&#x3ca;" k="-40" /> + <hkern u1="&#x39e;" u2="&#x3b9;" k="-8" /> + <hkern u1="&#x39e;" u2="&#x3b7;" k="-10" /> + <hkern u1="&#x39f;" u2="&#x3be;" k="-8" /> + <hkern u1="&#x3a0;" u2="&#x390;" k="-30" /> + <hkern u1="&#x3a0;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x3a1;" u2="&#x390;" k="-38" /> + <hkern u1="&#x3a1;" u2="&#x3ca;" k="-21" /> + <hkern u1="&#x3a1;" u2="&#x127;" k="4" /> + <hkern u1="&#x3a3;" u2="&#x390;" k="-35" /> + <hkern u1="&#x3a3;" u2="&#x3ca;" k="-15" /> + <hkern u1="&#x3a3;" u2="&#x3c7;" k="7" /> + <hkern u1="&#x3a3;" u2="&#x3b4;" k="15" /> + <hkern u1="&#x3a3;" u2="&#x3aa;" k="-6" /> + <hkern u1="&#x3a4;" u2="&#x3b0;" k="19" /> + <hkern u1="&#x3a4;" u2="&#x390;" k="-92" /> + <hkern u1="&#x3a4;" u2="&#x3cb;" k="22" /> + <hkern u1="&#x3a4;" u2="&#x3ca;" k="-68" /> + <hkern u1="&#x3a4;" u2="&#x3b4;" k="47" /> + <hkern u1="&#x3a4;" u2="&#x3a3;" k="-12" /> + <hkern u1="&#x3a4;" u2="&#x129;" k="12" /> + <hkern u1="&#x3a4;" u2="&#x12f;" k="12" /> + <hkern u1="&#x3a4;" u2="&#x12b;" k="12" /> + <hkern u1="&#x3a4;" u2="&#x133;" k="12" /> + <hkern u1="&#x3a4;" u2="&#x12d;" k="-52" /> + <hkern u1="&#x3a4;" u2="&#xec;" k="12" /> + <hkern u1="&#x3a4;" u2="&#xef;" k="-68" /> + <hkern u1="&#x3a4;" u2="&#xee;" k="12" /> + <hkern u1="&#x3a4;" u2="&#xed;" k="12" /> + <hkern u1="&#x3a4;" u2="&#xe8;" k="68" /> + <hkern u1="&#x3a4;" u2="&#xe0;" k="36" /> + <hkern u1="&#x3a4;" u2="&#x131;" k="12" /> + <hkern u1="&#x3a4;" u2="i" k="12" /> + <hkern u1="&#x3a5;" u2="&#x3b0;" k="16" /> + <hkern u1="&#x3a5;" u2="&#x390;" k="-84" /> + <hkern u1="&#x3a5;" u2="&#x3ca;" k="-58" /> + <hkern u1="&#x3a5;" u2="&#x3bb;" k="-2" /> + <hkern u1="&#x3a5;" u2="&#x3b4;" k="54" /> + <hkern u1="&#x3a5;" u2="&#x3b2;" k="20" /> + <hkern u1="&#x3a7;" u2="&#x390;" k="-51" /> + <hkern u1="&#x3a7;" u2="&#x3ca;" k="-36" /> + <hkern u1="&#x3a8;" u2="&#x3aa;" k="-7" /> + <hkern u1="&#x3a9;" u2="&#x390;" k="-20" /> + <hkern u1="&#x3a9;" u2="&#x3ca;" k="-8" /> + <hkern u1="&#x3a9;" u2="&#x3bd;" k="-27" /> + <hkern u1="&#x3a9;" u2="&#xb5;" k="-6" /> + <hkern u1="&#x388;" u2="&#x390;" k="-42" /> + <hkern u1="&#x388;" u2="&#x3ca;" k="-26" /> + <hkern u1="&#x389;" u2="&#x390;" k="-30" /> + <hkern u1="&#x389;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x38a;" u2="&#x390;" k="-30" /> + <hkern u1="&#x38a;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x38c;" u2="&#x3be;" k="-8" /> + <hkern u1="&#x38e;" u2="&#x3b0;" k="16" /> + <hkern u1="&#x38e;" u2="&#x390;" k="-84" /> + <hkern u1="&#x38e;" u2="&#x3ca;" k="-58" /> + <hkern u1="&#x38e;" u2="&#x3bb;" k="-2" /> + <hkern u1="&#x38e;" u2="&#x3b4;" k="68" /> + <hkern u1="&#x38e;" u2="&#x3b2;" k="20" /> + <hkern u1="&#x38f;" u2="&#x390;" k="-20" /> + <hkern u1="&#x38f;" u2="&#x3ca;" k="-8" /> + <hkern u1="&#x3b1;" u2="&#x3b6;" k="-14" /> + <hkern u1="&#x3b2;" u2="&#x390;" k="-25" /> + <hkern u1="&#x3b2;" u2="&#x3ca;" k="-11" /> + <hkern u1="&#x3b3;" u2="&#x3b3;" k="-11" /> + <hkern u1="&#x3b4;" u2="&#x390;" k="-24" /> + <hkern u1="&#x3b4;" u2="&#x3ca;" k="-12" /> + <hkern u1="&#x3b4;" u2="&#x3c1;" k="10" /> + <hkern u1="&#x3b4;" u2="&#x3b3;" k="9" /> + <hkern u1="&#x3b6;" u2="&#x3c6;" k="6" /> + <hkern u1="&#x3b6;" u2="&#x3b2;" k="-10" /> + <hkern u1="&#x3b7;" u2="&#x3bd;" k="12" /> + <hkern u1="&#x3b8;" u2="&#x3be;" k="-2" /> + <hkern u1="&#x3b8;" u2="&#x3b6;" k="-14" /> + <hkern u1="&#x3bb;" u2="&#x3bd;" k="22" /> + <hkern u1="&#x3bd;" u2="&#x3c1;" k="19" /> + <hkern u1="&#x3bd;" u2="&#x3b6;" k="-6" /> + <hkern u1="&#x3bf;" u2="&#x3bd;" k="2" /> + <hkern u1="&#x3c0;" u2="&#x390;" k="-25" /> + <hkern u1="&#x3c0;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x3c3;" u2="&#x390;" k="-37" /> + <hkern u1="&#x3c3;" u2="&#x3ca;" k="-23" /> + <hkern u1="&#x3c3;" u2="&#x3b6;" k="-15" /> + <hkern u1="&#x3c5;" u2="&#x3c1;" k="6" /> + <hkern u1="&#x3c7;" u2="&#x390;" k="-21" /> + <hkern u1="&#x3c7;" u2="&#x3ca;" k="-12" /> + <hkern u1="&#x3ad;" u2="&#x390;" k="-32" /> + <hkern u1="&#x3ad;" u2="&#x3ca;" k="-20" /> + <hkern u1="&#x3af;" u2="&#x3bb;" k="-15" /> + <hkern u1="&#x3ca;" u2="&#x3c0;" k="-15" /> + <hkern u1="&#x3ca;" u2="&#x3be;" k="-20" /> + <hkern u1="&#x3ca;" u2="&#x3bb;" k="-29" /> + <hkern u1="&#x3ca;" u2="&#x3b8;" k="-19" /> + <hkern u1="&#x3ca;" u2="&#x3b6;" k="-22" /> + <hkern u1="&#x3ca;" u2="&#x3b2;" k="-11" /> + <hkern u1="&#x390;" u2="&#x3c0;" k="-28" /> + <hkern u1="&#x390;" u2="&#x3be;" k="-35" /> + <hkern u1="&#x390;" u2="&#x3bb;" k="-54" /> + <hkern u1="&#x390;" u2="&#x3b8;" k="-35" /> + <hkern u1="&#x390;" u2="&#x3b6;" k="-43" /> + <hkern u1="&#x390;" u2="&#x3b2;" k="-32" /> + <hkern u1="&#xf6dc;" u2="&#xf641;" k="13" /> + <hkern u1="&#xf6dc;" u2="&#xf63c;" k="4" /> + <hkern u1="&#xf63a;" u2="&#xf63c;" k="28" /> + <hkern u1="&#xf63a;" u2="&#xf63a;" k="-15" /> + <hkern u1="&#xf63d;" u2="&#xf641;" k="17" /> + <hkern u1="&#xf63e;" u2="&#xf641;" k="22" /> + <hkern u1="&#xf63f;" u2="&#xf63f;" k="-40" /> + <hkern u1="&#xf63f;" u2="&#xf63e;" k="14" /> + <hkern u1="&#xf63f;" u2="&#xf63c;" k="46" /> + <hkern u1="&#xf63f;" u2="&#xf63a;" k="-9" /> + <hkern u1="&#xf63f;" u2="&#xf6dc;" k="-11" /> + <hkern u1="&#xf640;" u2="&#xf641;" k="10" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="12" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="6" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="t,tbar,tcaron,tcommaaccent" + k="-13" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-18" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="guilsinglright,guillemotright" + k="-14" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="hyphen,endash,emdash" + k="-5" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="quoteleft,quotedblleft" + k="-18" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="quoteright,quotedblright" + k="-17" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="33" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="hyphen,endash,emdash" + k="-28" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="quoteright,quotedblright" + k="25" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="comma,period,ellipsis" + k="12" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="32" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + g2="f,fi,fl,germandbls,ff,ffi,ffl,f_j,f_f_j" + k="-4" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="6" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + g2="quoteright,quotedblright" + k="22" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + g2="comma,period,ellipsis" + k="15" /> + <hkern g1="h,m,n,ntilde,eng,hbar,hcircumflex,nacute,ncaron,ncommaaccent,napostrophe" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="50" /> + <hkern g1="h,m,n,ntilde,eng,hbar,hcircumflex,nacute,ncaron,ncommaaccent,napostrophe" + g2="t,tbar,tcaron,tcommaaccent" + k="4" /> + <hkern g1="h,m,n,ntilde,eng,hbar,hcircumflex,nacute,ncaron,ncommaaccent,napostrophe" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="13" /> + <hkern g1="h,m,n,ntilde,eng,hbar,hcircumflex,nacute,ncaron,ncommaaccent,napostrophe" + g2="quotedbl,quotesingle" + k="7" /> + <hkern g1="h,m,n,ntilde,eng,hbar,hcircumflex,nacute,ncaron,ncommaaccent,napostrophe" + g2="quoteright,quotedblright" + k="33" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="19" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="-18" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="-4" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-13" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-17" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="-17" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="colon,semicolon" + k="-10" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="hyphen,endash,emdash" + k="10" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="quoteright,quotedblright" + k="-24" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="comma,period,ellipsis" + k="-14" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="31" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + g2="quoteright,quotedblright" + k="22" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + g2="comma,period,ellipsis" + k="8" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="40" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="7" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="z,zcaron,zacute,zdotaccent" + k="7" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="x" + k="14" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="hyphen,endash,emdash" + k="-15" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="quotedbl,quotesingle" + k="11" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="quoteright,quotedblright" + k="33" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="comma,period,ellipsis" + k="24" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="14" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="5" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="f,fi,fl,germandbls,ff,ffi,ffl,f_j,f_f_j" + k="-30" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="8" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="10" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="t,tbar,tcaron,tcommaaccent" + k="-24" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-25" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="z,zcaron,zacute,zdotaccent" + k="-9" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-4" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="-4" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="x" + k="-18" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="colon,semicolon" + k="-9" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="guilsinglright,guillemotright" + k="-12" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="guillemotleft,guilsinglleft" + k="6" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="hyphen,endash,emdash" + k="5" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="quoteleft,quotedblleft" + k="-20" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="quoteright,quotedblright" + k="-30" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="comma,period,ellipsis" + k="53" /> + <hkern g1="s,germandbls,scaron,sacute,scedilla,scircumflex,scommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="24" /> + <hkern g1="s,germandbls,scaron,sacute,scedilla,scircumflex,scommaaccent" + g2="quoteright,quotedblright" + k="17" /> + <hkern g1="s,germandbls,scaron,sacute,scedilla,scircumflex,scommaaccent" + g2="comma,period,ellipsis" + k="11" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="30" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="4" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="10" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="10" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent" + k="6" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-12" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + g2="colon,semicolon" + k="-24" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + g2="hyphen,endash,emdash" + k="4" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + g2="quoteleft,quotedblleft" + k="-27" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + g2="quoteright,quotedblright" + k="-30" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + g2="comma,period,ellipsis" + k="39" /> + <hkern g1="x" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="22" /> + <hkern g1="x" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="15" /> + <hkern g1="x" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent" + k="6" /> + <hkern g1="x" + g2="t,tbar,tcaron,tcommaaccent" + k="-13" /> + <hkern g1="x" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-15" /> + <hkern g1="x" + g2="hyphen,endash,emdash" + k="6" /> + <hkern g1="x" + g2="quoteright,quotedblright" + k="-25" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="20" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="7" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-24" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="guilsinglright,guillemotright" + k="-18" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="quoteright,quotedblright" + k="-29" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="77" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="J,Jcircumflex" + k="-19" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="M,Mu" + k="4" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="15" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + k="28" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="53" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="X,Chi" + k="14" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="Y,Yacute,Ydieresis,Ygrave" + k="79" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="-4" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="f,fi,fl,germandbls,ff,ffi,ffl,f_j,f_f_j" + k="7" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="12" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="j,jcircumflex" + k="4" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="12" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent" + k="6" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="t,tbar,tcaron,tcommaaccent" + k="10" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="12" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="21" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="z,zcaron,zacute,zdotaccent" + k="-14" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="parenright,bracketright,braceright" + k="9" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="quotedbl,quotesingle" + k="59" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="quoteleft,quotedblleft" + k="60" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="quoteright,quotedblright" + k="49" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="Delta" + k="-10" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="Omega" + k="-4" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="Phi" + k="21" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="Psi" + k="72" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="Upsilon,Upsilondieresis" + k="99" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="chi" + k="27" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="epsilon,epsilontonos" + k="-7" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="gamma,nu" + k="25" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="lambda" + k="-10" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="11" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="rho" + k="13" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="tau" + k="26" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="theta" + k="12" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="12" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos" + g2="zeta,xi" + k="4" /> + <hkern g1="B,Beta" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="9" /> + <hkern g1="B,Beta" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-4" /> + <hkern g1="B,Beta" + g2="Y,Yacute,Ydieresis,Ygrave" + k="15" /> + <hkern g1="B,Beta" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="-4" /> + <hkern g1="B,Beta" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-4" /> + <hkern g1="B,Beta" + g2="hyphen,endash,emdash" + k="-5" /> + <hkern g1="B,Beta" + g2="quoteright,quotedblright" + k="-8" /> + <hkern g1="B,Beta" + g2="comma,period,ellipsis" + k="13" /> + <hkern g1="B,Beta" + g2="Psi" + k="11" /> + <hkern g1="B,Beta" + g2="Upsilon,Upsilondieresis" + k="18" /> + <hkern g1="B,Beta" + g2="epsilon,epsilontonos" + k="-4" /> + <hkern g1="B,Beta" + g2="gamma,nu" + k="-10" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-28" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="J,Jcircumflex" + k="-4" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="21" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-12" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="-4" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="7" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="11" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="12" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="20" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="z,zcaron,zacute,zdotaccent" + k="-4" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="guillemotleft,guilsinglleft" + k="12" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="parenright,bracketright,braceright" + k="-17" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="quoteright,quotedblright" + k="-19" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-16" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="J,Jcircumflex" + k="-18" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-9" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="6" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="4" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="7" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="7" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="comma,period,ellipsis" + k="4" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="Delta" + k="-12" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="Xi" + k="-7" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="epsilon,epsilontonos" + k="-17" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="lambda" + k="-11" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="tau" + k="-10" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,AEacute,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Epsilon,Xi,Epsilontonos" + g2="pi" + k="-13" /> + <hkern g1="F" + g2="J,Jcircumflex" + k="85" /> + <hkern g1="F" + g2="M,Mu" + k="18" /> + <hkern g1="F" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="78" /> + <hkern g1="F" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="45" /> + <hkern g1="F" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="16" /> + <hkern g1="F" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="31" /> + <hkern g1="F" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="35" /> + <hkern g1="F" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="21" /> + <hkern g1="F" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="17" /> + <hkern g1="F" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="26" /> + <hkern g1="F" + g2="colon,semicolon" + k="13" /> + <hkern g1="F" + g2="guilsinglright,guillemotright" + k="15" /> + <hkern g1="F" + g2="guillemotleft,guilsinglleft" + k="15" /> + <hkern g1="F" + g2="quoteleft,quotedblleft" + k="7" /> + <hkern g1="F" + g2="comma,period,ellipsis" + k="97" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="Y,Yacute,Ydieresis,Ygrave" + k="7" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="f,fi,fl,germandbls,ff,ffi,ffl,f_j,f_f_j" + k="-10" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="j,jcircumflex" + k="-8" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="t,tbar,tcaron,tcommaaccent" + k="-16" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-9" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="z,zcaron,zacute,zdotaccent" + k="-11" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-10" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="-10" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="x" + k="-5" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="quoteright,quotedblright" + k="5" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="tau" + k="-5" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="zeta,xi" + k="-6" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Imacron,Iogonek,Itilde,Nacute,Ncaron,Ncommaaccent,Idotaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis" + g2="pi" + k="-8" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-21" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="J,Jcircumflex" + k="-38" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="17" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-15" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Y,Yacute,Ydieresis,Ygrave" + k="7" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="-10" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-20" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="-16" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="5" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="6" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="16" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-10" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="-10" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="colon,semicolon" + k="-22" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="guillemotleft,guilsinglleft" + k="5" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="hyphen,endash,emdash" + k="18" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="parenright,bracketright,braceright" + k="-23" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="quoteleft,quotedblleft" + k="4" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="quoteright,quotedblright" + k="-9" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="comma,period,ellipsis" + k="-17" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Delta" + k="-12" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Omega" + k="-14" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Phi" + k="27" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Xi" + k="-26" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Sigma" + k="-24" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="epsilon,epsilontonos" + k="-19" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="gamma,nu" + k="14" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="lambda" + k="-17" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="tau" + k="15" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="18" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="mu,beta,eta,kappa,etatonos" + k="-5" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="88" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="J,Jcircumflex" + k="-11" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="39" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + k="36" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="59" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="Y,Yacute,Ydieresis,Ygrave" + k="84" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="14" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="t,tbar,tcaron,tcommaaccent" + k="4" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="15" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="27" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="guillemotleft,guilsinglleft" + k="38" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="hyphen,endash,emdash" + k="42" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="quotedbl,quotesingle" + k="98" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="quoteleft,quotedblleft" + k="117" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="quoteright,quotedblright" + k="103" /> + <hkern g1="M,Mu" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="10" /> + <hkern g1="M,Mu" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="10" /> + <hkern g1="M,Mu" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="-6" /> + <hkern g1="M,Mu" + g2="j,jcircumflex" + k="-10" /> + <hkern g1="M,Mu" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="-6" /> + <hkern g1="M,Mu" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-7" /> + <hkern g1="M,Mu" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="-12" /> + <hkern g1="M,Mu" + g2="hyphen,endash,emdash" + k="-6" /> + <hkern g1="M,Mu" + g2="quoteleft,quotedblleft" + k="4" /> + <hkern g1="M,Mu" + g2="quoteright,quotedblright" + k="5" /> + <hkern g1="M,Mu" + g2="Psi" + k="11" /> + <hkern g1="M,Mu" + g2="Upsilon,Upsilondieresis" + k="22" /> + <hkern g1="M,Mu" + g2="pi" + k="-9" /> + <hkern g1="M,Mu" + g2="mu,beta,eta,kappa,etatonos" + k="-4" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="25" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="X,Chi" + k="27" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="Y,Yacute,Ydieresis,Ygrave" + k="28" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="14" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="f,fi,fl,germandbls,ff,ffi,ffl,f_j,f_f_j" + k="-16" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="-6" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="j,jcircumflex" + k="-5" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="-4" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="t,tbar,tcaron,tcommaaccent" + k="-17" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-14" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="x" + k="5" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="guillemotleft,guilsinglleft" + k="-13" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="hyphen,endash,emdash" + k="-14" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="parenright,bracketright,braceright" + k="7" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="quoteright,quotedblright" + k="-9" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="comma,period,ellipsis" + k="34" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="Delta" + k="20" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="Omega" + k="-4" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="Upsilon,Upsilondieresis" + k="30" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="Xi" + k="8" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="Sigma" + k="15" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="gamma,nu" + k="-16" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="lambda" + k="16" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="rho" + k="14" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="tau" + k="-11" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="theta" + k="-18" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="zeta,xi" + k="-9" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcaron,Dcroat,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos" + g2="pi" + k="-12" /> + <hkern g1="P,Rho" + g2="J,Jcircumflex" + k="74" /> + <hkern g1="P,Rho" + g2="M,Mu" + k="12" /> + <hkern g1="P,Rho" + g2="X,Chi" + k="13" /> + <hkern g1="P,Rho" + g2="Y,Yacute,Ydieresis,Ygrave" + k="9" /> + <hkern g1="P,Rho" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="84" /> + <hkern g1="P,Rho" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="30" /> + <hkern g1="P,Rho" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="26" /> + <hkern g1="P,Rho" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="24" /> + <hkern g1="P,Rho" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="25" /> + <hkern g1="P,Rho" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent" + k="22" /> + <hkern g1="P,Rho" + g2="t,tbar,tcaron,tcommaaccent" + k="-6" /> + <hkern g1="P,Rho" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="15" /> + <hkern g1="P,Rho" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-4" /> + <hkern g1="P,Rho" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="5" /> + <hkern g1="P,Rho" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="16" /> + <hkern g1="P,Rho" + g2="colon,semicolon" + k="11" /> + <hkern g1="P,Rho" + g2="guillemotleft,guilsinglleft" + k="23" /> + <hkern g1="P,Rho" + g2="hyphen,endash,emdash" + k="17" /> + <hkern g1="P,Rho" + g2="quoteleft,quotedblleft" + k="-6" /> + <hkern g1="P,Rho" + g2="quoteright,quotedblright" + k="-21" /> + <hkern g1="P,Rho" + g2="comma,period,ellipsis" + k="140" /> + <hkern g1="P,Rho" + g2="Delta" + k="85" /> + <hkern g1="P,Rho" + g2="Psi" + k="-5" /> + <hkern g1="P,Rho" + g2="Upsilon,Upsilondieresis" + k="6" /> + <hkern g1="P,Rho" + g2="epsilon,epsilontonos" + k="25" /> + <hkern g1="P,Rho" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="25" /> + <hkern g1="P,Rho" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="10" /> + <hkern g1="P,Rho" + g2="mu,beta,eta,kappa,etatonos" + k="10" /> + <hkern g1="P,Rho" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="10" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-9" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-16" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="X,Chi" + k="-5" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="Y,Yacute,Ydieresis,Ygrave" + k="11" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="-5" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="-12" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="-4" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="t,tbar,tcaron,tcommaaccent" + k="-19" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-14" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-9" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="-10" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="quoteright,quotedblright" + k="-9" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-38" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="J,Jcircumflex" + k="43" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="27" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-40" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="X,Chi" + k="-22" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-28" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="75" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent" + k="6" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="64" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="64" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="71" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent" + k="53" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="45" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="40" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="z,zcaron,zacute,zdotaccent" + k="51" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="7" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="45" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="x" + k="34" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="colon,semicolon" + k="26" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="guilsinglright,guillemotright" + k="36" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="guillemotleft,guilsinglleft" + k="51" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="hyphen,endash,emdash" + k="51" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="parenright,bracketright,braceright" + k="-60" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="quotedbl,quotesingle" + k="-17" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="quoteright,quotedblright" + k="-34" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="comma,period,ellipsis" + k="60" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="Delta" + k="70" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="Omega" + k="26" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="Phi" + k="40" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="Psi" + k="-9" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="Upsilon,Upsilondieresis" + k="-12" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="Sigma" + k="-5" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="epsilon,epsilontonos" + k="44" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="lambda" + k="-9" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="61" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="rho" + k="66" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="39" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="zeta,xi" + k="10" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="mu,beta,eta,kappa,etatonos" + k="33" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="33" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau" + g2="omega,omegatonos" + k="46" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="34" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="4" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + g2="f,fi,fl,germandbls,ff,ffi,ffl,f_j,f_f_j" + k="-7" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent" + k="6" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + g2="t,tbar,tcaron,tcommaaccent" + k="-4" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + g2="z,zcaron,zacute,zdotaccent" + k="5" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + g2="x" + k="7" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + g2="quoteright,quotedblright" + k="5" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + g2="comma,period,ellipsis" + k="27" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-33" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="J,Jcircumflex" + k="23" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-16" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="57" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="33" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="9" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="33" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent" + k="25" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="t,tbar,tcaron,tcommaaccent" + k="-9" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="18" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="4" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="5" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="16" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="colon,semicolon" + k="16" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="guilsinglright,guillemotright" + k="11" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="guillemotleft,guilsinglleft" + k="25" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="hyphen,endash,emdash" + k="14" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="parenright,bracketright,braceright" + k="-55" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="quotedbl,quotesingle" + k="-19" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="quoteleft,quotedblleft" + k="-8" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="quoteright,quotedblright" + k="-27" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="comma,period,ellipsis" + k="55" /> + <hkern g1="X,Chi" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-8" /> + <hkern g1="X,Chi" + g2="J,Jcircumflex" + k="-4" /> + <hkern g1="X,Chi" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="29" /> + <hkern g1="X,Chi" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-9" /> + <hkern g1="X,Chi" + g2="X,Chi" + k="15" /> + <hkern g1="X,Chi" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-5" /> + <hkern g1="X,Chi" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="9" /> + <hkern g1="X,Chi" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="6" /> + <hkern g1="X,Chi" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="11" /> + <hkern g1="X,Chi" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="8" /> + <hkern g1="X,Chi" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="19" /> + <hkern g1="X,Chi" + g2="guillemotleft,guilsinglleft" + k="18" /> + <hkern g1="X,Chi" + g2="hyphen,endash,emdash" + k="21" /> + <hkern g1="X,Chi" + g2="quoteleft,quotedblleft" + k="6" /> + <hkern g1="X,Chi" + g2="Delta" + k="4" /> + <hkern g1="X,Chi" + g2="Phi" + k="41" /> + <hkern g1="X,Chi" + g2="Psi" + k="13" /> + <hkern g1="X,Chi" + g2="Upsilon,Upsilondieresis" + k="16" /> + <hkern g1="X,Chi" + g2="Xi" + k="-11" /> + <hkern g1="X,Chi" + g2="gamma,nu" + k="29" /> + <hkern g1="X,Chi" + g2="lambda" + k="-11" /> + <hkern g1="X,Chi" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="21" /> + <hkern g1="X,Chi" + g2="rho" + k="11" /> + <hkern g1="X,Chi" + g2="tau" + k="17" /> + <hkern g1="X,Chi" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="18" /> + <hkern g1="X,Chi" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="12" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-34" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="J,Jcircumflex" + k="54" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="M,Mu" + k="10" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="36" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-29" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="81" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent" + k="13" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="B,D,E,F,H,I,K,L,N,P,R,Lslash,Eth,Eacute,Ecircumflex,Edieresis,Egrave,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Dcaron,Dcroat,Ebreve,Ecaron,Edotaccent,Emacron,Eng,Eogonek,Hbar,Hcircumflex,Ibreve,IJ,Imacron,Iogonek,Itilde,Kcommaaccent,Lacute,Lcaron,Lcommaaccent,Ldot,Nacute,Ncaron,Ncommaaccent,Racute,Rcaron,Rcommaaccent,Idotaccent,Beta,Gamma,Epsilon,Eta,Iota,Kappa,Nu,Pi,Rho,Iotadieresis" + k="7" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="70" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="40" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="76" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent" + k="52" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="t,tbar,tcaron,tcommaaccent" + k="19" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="53" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="29" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="z,zcaron,zacute,zdotaccent" + k="25" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="9" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="13" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="x" + k="26" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="colon,semicolon" + k="33" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="guilsinglright,guillemotright" + k="20" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="guillemotleft,guilsinglleft" + k="49" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="hyphen,endash,emdash" + k="51" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="parenright,bracketright,braceright" + k="-56" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="quotedbl,quotesingle" + k="-8" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="quoteleft,quotedblleft" + k="5" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="quoteright,quotedblright" + k="-15" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave" + g2="comma,period,ellipsis" + k="95" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="J,Jcircumflex" + k="-8" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="21" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="X,Chi" + k="6" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="12" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="7" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="9" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="hyphen,endash,emdash" + k="27" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="quoteleft,quotedblleft" + k="5" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="Upsilon,Upsilondieresis" + k="-8" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="Xi" + k="-5" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="Sigma" + k="7" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="lambda" + k="-10" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="11" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="-8" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="-5" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + g2="quoteright,quotedblright" + k="4" /> + <hkern g1="J,IJ,Jcircumflex" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-10" /> + <hkern g1="J,IJ,Jcircumflex" + g2="parenright,bracketright,braceright" + k="-42" /> + <hkern g1="J,IJ,Jcircumflex" + g2="quoteright,quotedblright" + k="-8" /> + <hkern g1="J,IJ,Jcircumflex" + g2="comma,period,ellipsis" + k="12" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent" + g2="j,jcircumflex" + k="4" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="-6" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="8" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent" + g2="hyphen,endash,emdash" + k="-5" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent" + g2="quoteleft,quotedblleft" + k="8" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent" + g2="quoteright,quotedblright" + k="12" /> + <hkern g1="f,ff" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="12" /> + <hkern g1="f,ff" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="13" /> + <hkern g1="f,ff" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent" + k="9" /> + <hkern g1="f,ff" + g2="t,tbar,tcaron,tcommaaccent" + k="-11" /> + <hkern g1="f,ff" + g2="colon,semicolon" + k="-32" /> + <hkern g1="f,ff" + g2="guilsinglright,guillemotright" + k="-13" /> + <hkern g1="f,ff" + g2="parenright,bracketright,braceright" + k="-103" /> + <hkern g1="f,ff" + g2="quotedbl,quotesingle" + k="-56" /> + <hkern g1="f,ff" + g2="quoteleft,quotedblleft" + k="-49" /> + <hkern g1="f,ff" + g2="quoteright,quotedblright" + k="-66" /> + <hkern g1="f,ff" + g2="comma,period,ellipsis" + k="33" /> + <hkern g1="t,tbar,tcaron,tcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="6" /> + <hkern g1="t,tbar,tcaron,tcommaaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="6" /> + <hkern g1="t,tbar,tcaron,tcommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-9" /> + <hkern g1="t,tbar,tcaron,tcommaaccent" + g2="hyphen,endash,emdash" + k="5" /> + <hkern g1="t,tbar,tcaron,tcommaaccent" + g2="quoteleft,quotedblleft" + k="-7" /> + <hkern g1="t,tbar,tcaron,tcommaaccent" + g2="quoteright,quotedblright" + k="-21" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="34" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="12" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Y,Yacute,Ydieresis,Ygrave" + k="35" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Delta" + k="-4" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Omega" + k="-7" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Phi" + k="4" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Upsilon,Upsilondieresis" + k="53" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Sigma" + k="4" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="gamma,nu" + k="-13" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="lambda" + k="-7" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="tau" + k="-14" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="pi" + k="-18" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Omegatonos" + k="-11" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Omicrontonos" + k="-11" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Upsilontonos" + k="52" /> + <hkern g1="guilsinglright,guillemotright" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="55" /> + <hkern g1="guilsinglright,guillemotright" + g2="J,Jcircumflex" + k="17" /> + <hkern g1="guilsinglright,guillemotright" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="-11" /> + <hkern g1="guilsinglright,guillemotright" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="27" /> + <hkern g1="guilsinglright,guillemotright" + g2="X,Chi" + k="14" /> + <hkern g1="guilsinglright,guillemotright" + g2="Y,Yacute,Ydieresis,Ygrave" + k="50" /> + <hkern g1="guilsinglright,guillemotright" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="-12" /> + <hkern g1="hyphen,endash,emdash" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="50" /> + <hkern g1="hyphen,endash,emdash" + g2="J,Jcircumflex" + k="20" /> + <hkern g1="hyphen,endash,emdash" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="-14" /> + <hkern g1="hyphen,endash,emdash" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="11" /> + <hkern g1="hyphen,endash,emdash" + g2="X,Chi" + k="22" /> + <hkern g1="hyphen,endash,emdash" + g2="Y,Yacute,Ydieresis,Ygrave" + k="50" /> + <hkern g1="hyphen,endash,emdash" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="4" /> + <hkern g1="hyphen,endash,emdash" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="-14" /> + <hkern g1="hyphen,endash,emdash" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="-18" /> + <hkern g1="hyphen,endash,emdash" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="5" /> + <hkern g1="hyphen,endash,emdash" + g2="Omega" + k="-6" /> + <hkern g1="hyphen,endash,emdash" + g2="Phi" + k="-13" /> + <hkern g1="hyphen,endash,emdash" + g2="Psi" + k="13" /> + <hkern g1="hyphen,endash,emdash" + g2="Upsilon,Upsilondieresis" + k="54" /> + <hkern g1="hyphen,endash,emdash" + g2="Sigma" + k="24" /> + <hkern g1="hyphen,endash,emdash" + g2="zeta,xi" + k="-13" /> + <hkern g1="hyphen,endash,emdash" + g2="omega,omegatonos" + k="-12" /> + <hkern g1="hyphen,endash,emdash" + g2="Omegatonos" + k="-11" /> + <hkern g1="hyphen,endash,emdash" + g2="Omicrontonos" + k="-11" /> + <hkern g1="hyphen,endash,emdash" + g2="Upsilontonos" + k="53" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-48" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="J,Jcircumflex" + k="-17" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="12" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-50" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="X,Chi" + k="-11" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-41" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="11" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="j,jcircumflex" + k="-56" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Delta" + k="16" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Phi" + k="23" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Psi" + k="-6" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Upsilon,Upsilondieresis" + k="-11" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="chi" + k="-4" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="lambda" + k="-8" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="rho" + k="23" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="tau" + k="5" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="zeta,xi" + k="13" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="omega,omegatonos" + k="5" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Omegatonos" + k="-22" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Omicrontonos" + k="-19" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Upsilontonos" + k="-11" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Epsilontonos,Etatonos,Iotatonos" + k="-19" /> + <hkern g1="comma,period,ellipsis" + g2="quotedbl,quotesingle" + k="102" /> + <hkern g1="comma,period,ellipsis" + g2="quoteleft,quotedblleft" + k="104" /> + <hkern g1="comma,period,ellipsis" + g2="quoteright,quotedblright" + k="113" /> + <hkern g1="comma,period,ellipsis" + g2="Upsilon,Upsilondieresis" + k="85" /> + <hkern g1="d,l,fl,lslash,ffl,dcaron,dcroat,lacute,lcaron,lcommaaccent,ldot" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="d,l,fl,lslash,ffl,dcaron,dcroat,lacute,lcaron,lcommaaccent,ldot" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="j,ij,jcircumflex,f_j,f_f_j" + g2="quoteright,quotedblright" + k="-7" /> + <hkern g1="j,ij,jcircumflex,f_j,f_f_j" + g2="comma,period,ellipsis" + k="11" /> + <hkern g1="quotedbl,quotesingle" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-17" /> + <hkern g1="quotedbl,quotesingle" + g2="J,Jcircumflex" + k="59" /> + <hkern g1="quotedbl,quotesingle" + g2="M,Mu" + k="5" /> + <hkern g1="quotedbl,quotesingle" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-17" /> + <hkern g1="quotedbl,quotesingle" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="61" /> + <hkern g1="quotedbl,quotesingle" + g2="f,fi,fl,germandbls,ff,ffi,ffl,f_j,f_f_j" + k="-25" /> + <hkern g1="quotedbl,quotesingle" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="10" /> + <hkern g1="quotedbl,quotesingle" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="8" /> + <hkern g1="quotedbl,quotesingle" + g2="t,tbar,tcaron,tcommaaccent" + k="-24" /> + <hkern g1="quotedbl,quotesingle" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-21" /> + <hkern g1="quotedbl,quotesingle" + g2="comma,period,ellipsis" + k="113" /> + <hkern g1="quotedbl,quotesingle" + g2="Delta" + k="88" /> + <hkern g1="quotedbl,quotesingle" + g2="Omega" + k="21" /> + <hkern g1="quotedbl,quotesingle" + g2="Phi" + k="20" /> + <hkern g1="quotedbl,quotesingle" + g2="epsilon,epsilontonos" + k="58" /> + <hkern g1="quotedbl,quotesingle" + g2="gamma,nu" + k="6" /> + <hkern g1="quotedbl,quotesingle" + g2="rho" + k="76" /> + <hkern g1="quotedbl,quotesingle" + g2="tau" + k="-7" /> + <hkern g1="quotedbl,quotesingle" + g2="theta" + k="5" /> + <hkern g1="quotedbl,quotesingle" + g2="zeta,xi" + k="18" /> + <hkern g1="quotedbl,quotesingle" + g2="omega,omegatonos" + k="49" /> + <hkern g1="quotedbl,quotesingle" + g2="Omegatonos" + k="-18" /> + <hkern g1="quotedbl,quotesingle" + g2="Omicrontonos" + k="-18" /> + <hkern g1="quotedbl,quotesingle" + g2="Upsilontonos" + k="-18" /> + <hkern g1="quotedbl,quotesingle" + g2="Epsilontonos,Etatonos,Iotatonos" + k="-18" /> + <hkern g1="quoteleft,quotedblleft" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-40" /> + <hkern g1="quoteleft,quotedblleft" + g2="J,Jcircumflex" + k="82" /> + <hkern g1="quoteleft,quotedblleft" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="16" /> + <hkern g1="quoteleft,quotedblleft" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-28" /> + <hkern g1="quoteleft,quotedblleft" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-19" /> + <hkern g1="quoteleft,quotedblleft" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="68" /> + <hkern g1="quoteleft,quotedblleft" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="35" /> + <hkern g1="quoteleft,quotedblleft" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="62" /> + <hkern g1="quoteleft,quotedblleft" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="65" /> + <hkern g1="quoteleft,quotedblleft" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent" + k="33" /> + <hkern g1="quoteleft,quotedblleft" + g2="t,tbar,tcaron,tcommaaccent" + k="-5" /> + <hkern g1="quoteleft,quotedblleft" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde" + k="27" /> + <hkern g1="quoteleft,quotedblleft" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="-4" /> + <hkern g1="quoteleft,quotedblleft" + g2="z,zcaron,zacute,zdotaccent" + k="5" /> + <hkern g1="quoteleft,quotedblleft" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-6" /> + <hkern g1="quoteleft,quotedblleft" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="23" /> + <hkern g1="quoteleft,quotedblleft" + g2="x" + k="-5" /> + <hkern g1="quoteleft,quotedblleft" + g2="quoteleft,quotedblleft" + k="58" /> + <hkern g1="quoteleft,quotedblleft" + g2="comma,period,ellipsis" + k="125" /> + <hkern g1="quoteleft,quotedblleft" + g2="Delta" + k="78" /> + <hkern g1="quoteleft,quotedblleft" + g2="Omega" + k="44" /> + <hkern g1="quoteleft,quotedblleft" + g2="Phi" + k="22" /> + <hkern g1="quoteleft,quotedblleft" + g2="Upsilon,Upsilondieresis" + k="-19" /> + <hkern g1="quoteleft,quotedblleft" + g2="Xi" + k="-4" /> + <hkern g1="quoteleft,quotedblleft" + g2="epsilon,epsilontonos" + k="77" /> + <hkern g1="quoteleft,quotedblleft" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="65" /> + <hkern g1="quoteleft,quotedblleft" + g2="rho" + k="105" /> + <hkern g1="quoteleft,quotedblleft" + g2="theta" + k="8" /> + <hkern g1="quoteleft,quotedblleft" + g2="zeta,xi" + k="29" /> + <hkern g1="quoteleft,quotedblleft" + g2="mu,beta,eta,kappa,etatonos" + k="23" /> + <hkern g1="quoteleft,quotedblleft" + g2="omega,omegatonos" + k="63" /> + <hkern g1="quoteleft,quotedblleft" + g2="Omegatonos" + k="-31" /> + <hkern g1="quoteleft,quotedblleft" + g2="Omicrontonos" + k="-31" /> + <hkern g1="quoteleft,quotedblleft" + g2="Upsilontonos" + k="-31" /> + <hkern g1="quoteleft,quotedblleft" + g2="Epsilontonos,Etatonos,Iotatonos" + k="-31" /> + <hkern g1="i,fi,dotlessi,iacute,icircumflex,idieresis,igrave,ffi,ibreve,imacron,iogonek,itilde" + g2="quoteright,quotedblright" + k="-7" /> + <hkern g1="quoteright,quotedblright" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-39" /> + <hkern g1="quoteright,quotedblright" + g2="J,Jcircumflex" + k="78" /> + <hkern g1="quoteright,quotedblright" + g2="M,Mu" + k="9" /> + <hkern g1="quoteright,quotedblright" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="24" /> + <hkern g1="quoteright,quotedblright" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-31" /> + <hkern g1="quoteright,quotedblright" + g2="Y,Yacute,Ydieresis,Ygrave" + k="-21" /> + <hkern g1="quoteright,quotedblright" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="90" /> + <hkern g1="quoteright,quotedblright" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent" + k="8" /> + <hkern g1="quoteright,quotedblright" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek,aeacute" + k="18" /> + <hkern g1="quoteright,quotedblright" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="50" /> + <hkern g1="quoteright,quotedblright" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,cacute,ccaron,ccircumflex,cdotaccent,dcaron,dcroat,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute" + k="77" /> + <hkern g1="quoteright,quotedblright" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent" + k="72" /> + <hkern g1="quoteright,quotedblright" + g2="t,tbar,tcaron,tcommaaccent" + k="11" /> + <hkern g1="quoteright,quotedblright" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="7" /> + <hkern g1="quoteright,quotedblright" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,ibreve,ij,imacron,iogonek,itilde,nacute,ncaron,ncommaaccent,racute,rcaron,rcommaaccent,kgreenlandic" + k="39" /> + <hkern g1="quoteright,quotedblright" + g2="quoteright,quotedblright" + k="58" /> + <hkern g1="quoteright,quotedblright" + g2="comma,period,ellipsis" + k="154" /> + <hkern g1="quoteright,quotedblright" + g2="space" + k="86" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="83" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="J,Jcircumflex" + k="-6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="52" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="Y,Yacute,Ydieresis,Ygrave" + k="94" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-12" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="j,jcircumflex" + k="-5" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave" + k="20" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="z,zcaron,zacute,zdotaccent" + k="-11" /> + <hkern g1="space" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="41" /> + <hkern g1="space" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="36" /> + <hkern g1="space" + g2="Y,Yacute,Ydieresis,Ygrave" + k="46" /> + <hkern g1="space" + g2="quoteleft,quotedblleft" + k="83" /> + <hkern g1="space" + g2="quotesinglbase,quotedblbase" + k="113" /> + <hkern g1="Delta" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="75" /> + <hkern g1="Delta" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="13" /> + <hkern g1="Delta" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="-6" /> + <hkern g1="Delta" + g2="colon,semicolon" + k="-5" /> + <hkern g1="Delta" + g2="parenright,bracketright,braceright" + k="21" /> + <hkern g1="Delta" + g2="quotedbl,quotesingle" + k="83" /> + <hkern g1="Delta" + g2="quoteright,quotedblright" + k="60" /> + <hkern g1="Delta" + g2="comma,period,ellipsis" + k="-5" /> + <hkern g1="Delta" + g2="Delta" + k="-7" /> + <hkern g1="Delta" + g2="Phi" + k="18" /> + <hkern g1="Delta" + g2="Psi" + k="72" /> + <hkern g1="Delta" + g2="Upsilon,Upsilondieresis" + k="92" /> + <hkern g1="Delta" + g2="chi" + k="29" /> + <hkern g1="Delta" + g2="epsilon,epsilontonos" + k="-16" /> + <hkern g1="Delta" + g2="gamma,nu" + k="19" /> + <hkern g1="Delta" + g2="lambda" + k="-17" /> + <hkern g1="Delta" + g2="rho" + k="-4" /> + <hkern g1="Delta" + g2="tau" + k="13" /> + <hkern g1="Delta" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="5" /> + <hkern g1="Delta" + g2="zeta,xi" + k="-5" /> + <hkern g1="Delta" + g2="pi" + k="-10" /> + <hkern g1="Gamma" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-19" /> + <hkern g1="Gamma" + g2="M,Mu" + k="16" /> + <hkern g1="Gamma" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="36" /> + <hkern g1="Gamma" + g2="X,Chi" + k="-4" /> + <hkern g1="Gamma" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="116" /> + <hkern g1="Gamma" + g2="colon,semicolon" + k="50" /> + <hkern g1="Gamma" + g2="guilsinglright,guillemotright" + k="60" /> + <hkern g1="Gamma" + g2="hyphen,endash,emdash" + k="68" /> + <hkern g1="Gamma" + g2="parenright,bracketright,braceright" + k="-13" /> + <hkern g1="Gamma" + g2="quotedbl,quotesingle" + k="-9" /> + <hkern g1="Gamma" + g2="quoteright,quotedblright" + k="4" /> + <hkern g1="Gamma" + g2="comma,period,ellipsis" + k="119" /> + <hkern g1="Gamma" + g2="Delta" + k="113" /> + <hkern g1="Gamma" + g2="Omega" + k="31" /> + <hkern g1="Gamma" + g2="Phi" + k="40" /> + <hkern g1="Gamma" + g2="Psi" + k="-11" /> + <hkern g1="Gamma" + g2="Upsilon,Upsilondieresis" + k="-15" /> + <hkern g1="Gamma" + g2="Sigma" + k="-10" /> + <hkern g1="Gamma" + g2="epsilon,epsilontonos" + k="80" /> + <hkern g1="Gamma" + g2="gamma,nu" + k="41" /> + <hkern g1="Gamma" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="83" /> + <hkern g1="Gamma" + g2="rho" + k="107" /> + <hkern g1="Gamma" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="51" /> + <hkern g1="Gamma" + g2="mu,beta,eta,kappa,etatonos" + k="54" /> + <hkern g1="Gamma" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="54" /> + <hkern g1="Omega,Omegatonos" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="23" /> + <hkern g1="Omega,Omegatonos" + g2="colon,semicolon" + k="-11" /> + <hkern g1="Omega,Omegatonos" + g2="hyphen,endash,emdash" + k="-11" /> + <hkern g1="Omega,Omegatonos" + g2="quotedbl,quotesingle" + k="21" /> + <hkern g1="Omega,Omegatonos" + g2="quoteright,quotedblright" + k="4" /> + <hkern g1="Omega,Omegatonos" + g2="comma,period,ellipsis" + k="-11" /> + <hkern g1="Omega,Omegatonos" + g2="Omega" + k="-10" /> + <hkern g1="Omega,Omegatonos" + g2="Phi" + k="-6" /> + <hkern g1="Omega,Omegatonos" + g2="Psi" + k="4" /> + <hkern g1="Omega,Omegatonos" + g2="Upsilon,Upsilondieresis" + k="24" /> + <hkern g1="Omega,Omegatonos" + g2="chi" + k="-13" /> + <hkern g1="Omega,Omegatonos" + g2="gamma,nu" + k="-24" /> + <hkern g1="Omega,Omegatonos" + g2="lambda" + k="-20" /> + <hkern g1="Omega,Omegatonos" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="-10" /> + <hkern g1="Omega,Omegatonos" + g2="tau" + k="-23" /> + <hkern g1="Omega,Omegatonos" + g2="theta" + k="-18" /> + <hkern g1="Omega,Omegatonos" + g2="zeta,xi" + k="-13" /> + <hkern g1="Omega,Omegatonos" + g2="pi" + k="-27" /> + <hkern g1="Omega,Omegatonos" + g2="mu,beta,eta,kappa,etatonos" + k="-6" /> + <hkern g1="Omega,Omegatonos" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="-5" /> + <hkern g1="Phi" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="23" /> + <hkern g1="Phi" + g2="X,Chi" + k="34" /> + <hkern g1="Phi" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="30" /> + <hkern g1="Phi" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="18" /> + <hkern g1="Phi" + g2="hyphen,endash,emdash" + k="-11" /> + <hkern g1="Phi" + g2="parenright,bracketright,braceright" + k="6" /> + <hkern g1="Phi" + g2="quotedbl,quotesingle" + k="18" /> + <hkern g1="Phi" + g2="comma,period,ellipsis" + k="59" /> + <hkern g1="Phi" + g2="Delta" + k="20" /> + <hkern g1="Phi" + g2="Omega" + k="-5" /> + <hkern g1="Phi" + g2="Upsilon,Upsilondieresis" + k="44" /> + <hkern g1="Phi" + g2="Xi" + k="8" /> + <hkern g1="Phi" + g2="Sigma" + k="26" /> + <hkern g1="Phi" + g2="lambda" + k="19" /> + <hkern g1="Phi" + g2="rho" + k="14" /> + <hkern g1="Phi" + g2="tau" + k="-8" /> + <hkern g1="Phi" + g2="theta" + k="-18" /> + <hkern g1="Phi" + g2="zeta,xi" + k="-14" /> + <hkern g1="Psi" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-9" /> + <hkern g1="Psi" + g2="M,Mu" + k="24" /> + <hkern g1="Psi" + g2="X,Chi" + k="8" /> + <hkern g1="Psi" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="78" /> + <hkern g1="Psi" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="13" /> + <hkern g1="Psi" + g2="B,D,E,F,H,I,K,L,N,P,R,Lslash,Eth,Eacute,Ecircumflex,Edieresis,Egrave,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Dcaron,Dcroat,Ebreve,Ecaron,Edotaccent,Emacron,Eng,Eogonek,Hbar,Hcircumflex,Ibreve,IJ,Imacron,Iogonek,Itilde,Kcommaaccent,Lacute,Lcaron,Lcommaaccent,Ldot,Nacute,Ncaron,Ncommaaccent,Racute,Rcaron,Rcommaaccent,Idotaccent,Beta,Gamma,Epsilon,Eta,Iota,Kappa,Nu,Pi,Rho,Iotadieresis" + k="7" /> + <hkern g1="Psi" + g2="hyphen,endash,emdash" + k="15" /> + <hkern g1="Psi" + g2="comma,period,ellipsis" + k="93" /> + <hkern g1="Psi" + g2="Delta" + k="75" /> + <hkern g1="Psi" + g2="Omega" + k="11" /> + <hkern g1="Psi" + g2="Phi" + k="9" /> + <hkern g1="Psi" + g2="Upsilon,Upsilondieresis" + k="-5" /> + <hkern g1="Psi" + g2="Sigma" + k="4" /> + <hkern g1="Psi" + g2="epsilon,epsilontonos" + k="25" /> + <hkern g1="Psi" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="22" /> + <hkern g1="Psi" + g2="rho" + k="42" /> + <hkern g1="Psi" + g2="omega,omegatonos" + k="13" /> + <hkern g1="Sigma" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="40" /> + <hkern g1="Sigma" + g2="colon,semicolon" + k="-11" /> + <hkern g1="Sigma" + g2="guilsinglright,guillemotright" + k="4" /> + <hkern g1="Sigma" + g2="hyphen,endash,emdash" + k="34" /> + <hkern g1="Sigma" + g2="quotedbl,quotesingle" + k="15" /> + <hkern g1="Sigma" + g2="quoteright,quotedblright" + k="35" /> + <hkern g1="Sigma" + g2="comma,period,ellipsis" + k="-11" /> + <hkern g1="Sigma" + g2="chi" + k="6" /> + <hkern g1="Sigma" + g2="gamma,nu" + k="21" /> + <hkern g1="Sigma" + g2="lambda" + k="-6" /> + <hkern g1="Sigma" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="19" /> + <hkern g1="Sigma" + g2="rho" + k="9" /> + <hkern g1="Sigma" + g2="tau" + k="17" /> + <hkern g1="Sigma" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="10" /> + <hkern g1="Sigma" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="4" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau" + k="-11" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="M,Mu" + k="20" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron" + k="34" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="X,Chi" + k="5" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda" + k="102" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="colon,semicolon" + k="38" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="guilsinglright,guillemotright" + k="32" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="hyphen,endash,emdash" + k="53" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="parenright,bracketright,braceright" + k="-11" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="comma,period,ellipsis" + k="100" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Delta" + k="98" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Omega" + k="22" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Phi" + k="33" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Psi" + k="-8" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Upsilon,Upsilondieresis" + k="-5" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="epsilon,epsilontonos" + k="65" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="gamma,nu" + k="19" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="lambda" + k="5" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="78" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="rho" + k="91" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="35" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="pi" + k="14" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="mu,beta,eta,kappa,etatonos" + k="37" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="34" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="hyphen,endash,emdash" + k="-5" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="lambda" + k="-8" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="rho" + k="7" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="zeta,xi" + k="-12" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="pi" + k="-9" /> + <hkern g1="beta" + g2="hyphen,endash,emdash" + k="-5" /> + <hkern g1="beta" + g2="parenright,bracketright,braceright" + k="9" /> + <hkern g1="beta" + g2="quotedbl,quotesingle" + k="33" /> + <hkern g1="beta" + g2="quoteright,quotedblright" + k="25" /> + <hkern g1="beta" + g2="comma,period,ellipsis" + k="25" /> + <hkern g1="beta" + g2="gamma,nu" + k="9" /> + <hkern g1="beta" + g2="rho" + k="9" /> + <hkern g1="beta" + g2="zeta,xi" + k="-4" /> + <hkern g1="chi" + g2="parenright,bracketright,braceright" + k="5" /> + <hkern g1="chi" + g2="quoteright,quotedblright" + k="-11" /> + <hkern g1="chi" + g2="comma,period,ellipsis" + k="13" /> + <hkern g1="chi" + g2="epsilon,epsilontonos" + k="12" /> + <hkern g1="chi" + g2="lambda" + k="20" /> + <hkern g1="chi" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="21" /> + <hkern g1="chi" + g2="rho" + k="10" /> + <hkern g1="chi" + g2="tau" + k="-20" /> + <hkern g1="chi" + g2="pi" + k="-15" /> + <hkern g1="chi" + g2="mu,beta,eta,kappa,etatonos" + k="-5" /> + <hkern g1="chi" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="4" /> + <hkern g1="epsilon,epsilontonos" + g2="guilsinglright,guillemotright" + k="-11" /> + <hkern g1="epsilon,epsilontonos" + g2="gamma,nu" + k="-6" /> + <hkern g1="epsilon,epsilontonos" + g2="lambda" + k="-6" /> + <hkern g1="epsilon,epsilontonos" + g2="rho" + k="4" /> + <hkern g1="epsilon,epsilontonos" + g2="pi" + k="-8" /> + <hkern g1="eta,etatonos" + g2="quoteright,quotedblright" + k="33" /> + <hkern g1="eta,etatonos" + g2="gamma,nu" + k="16" /> + <hkern g1="eta,etatonos" + g2="rho" + k="4" /> + <hkern g1="eta,etatonos" + g2="tau" + k="4" /> + <hkern g1="eta,etatonos" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="6" /> + <hkern g1="gamma,nu" + g2="guilsinglright,guillemotright" + k="-11" /> + <hkern g1="gamma,nu" + g2="hyphen,endash,emdash" + k="-11" /> + <hkern g1="gamma,nu" + g2="quotedbl,quotesingle" + k="-8" /> + <hkern g1="gamma,nu" + g2="quoteright,quotedblright" + k="-13" /> + <hkern g1="gamma,nu" + g2="comma,period,ellipsis" + k="48" /> + <hkern g1="gamma,nu" + g2="epsilon,epsilontonos" + k="8" /> + <hkern g1="gamma,nu" + g2="gamma,nu" + k="-10" /> + <hkern g1="gamma,nu" + g2="lambda" + k="14" /> + <hkern g1="gamma,nu" + g2="rho" + k="23" /> + <hkern g1="gamma,nu" + g2="tau" + k="-18" /> + <hkern g1="gamma,nu" + g2="theta" + k="-23" /> + <hkern g1="gamma,nu" + g2="zeta,xi" + k="-5" /> + <hkern g1="gamma,nu" + g2="pi" + k="-16" /> + <hkern g1="kappa" + g2="colon,semicolon" + k="-11" /> + <hkern g1="kappa" + g2="guilsinglright,guillemotright" + k="-11" /> + <hkern g1="kappa" + g2="hyphen,endash,emdash" + k="25" /> + <hkern g1="kappa" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="kappa" + g2="comma,period,ellipsis" + k="-11" /> + <hkern g1="kappa" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="15" /> + <hkern g1="kappa" + g2="rho" + k="8" /> + <hkern g1="kappa" + g2="zeta,xi" + k="10" /> + <hkern g1="kappa" + g2="pi" + k="-5" /> + <hkern g1="lambda" + g2="parenright,bracketright,braceright" + k="6" /> + <hkern g1="lambda" + g2="quotedbl,quotesingle" + k="85" /> + <hkern g1="lambda" + g2="quoteright,quotedblright" + k="60" /> + <hkern g1="lambda" + g2="chi" + k="33" /> + <hkern g1="lambda" + g2="epsilon,epsilontonos" + k="-5" /> + <hkern g1="lambda" + g2="gamma,nu" + k="34" /> + <hkern g1="lambda" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="6" /> + <hkern g1="lambda" + g2="tau" + k="27" /> + <hkern g1="lambda" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="10" /> + <hkern g1="lambda" + g2="pi" + k="4" /> + <hkern g1="lambda" + g2="mu,beta,eta,kappa,etatonos" + k="5" /> + <hkern g1="lambda" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="8" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="hyphen,endash,emdash" + k="-11" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="parenright,bracketright,braceright" + k="20" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="quotedbl,quotesingle" + k="49" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="quoteright,quotedblright" + k="10" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="comma,period,ellipsis" + k="27" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="-6" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="chi" + k="24" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="gamma,nu" + k="8" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="lambda" + k="7" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="rho" + k="8" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="tau" + k="5" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="zeta,xi" + k="-8" /> + <hkern g1="delta,omicron,rho,phi,omicrontonos" + g2="omega,omegatonos" + k="-6" /> + <hkern g1="pi" + g2="guilsinglright,guillemotright" + k="-15" /> + <hkern g1="pi" + g2="parenright,bracketright,braceright" + k="22" /> + <hkern g1="pi" + g2="quotedbl,quotesingle" + k="13" /> + <hkern g1="pi" + g2="comma,period,ellipsis" + k="20" /> + <hkern g1="pi" + g2="gamma,nu" + k="-7" /> + <hkern g1="pi" + g2="lambda" + k="11" /> + <hkern g1="pi" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="5" /> + <hkern g1="pi" + g2="rho" + k="14" /> + <hkern g1="pi" + g2="tau" + k="-9" /> + <hkern g1="pi" + g2="pi" + k="-6" /> + <hkern g1="pi" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="8" /> + <hkern g1="sigma" + g2="guilsinglright,guillemotright" + k="-22" /> + <hkern g1="sigma" + g2="hyphen,endash,emdash" + k="-17" /> + <hkern g1="sigma" + g2="quoteright,quotedblright" + k="-13" /> + <hkern g1="sigma" + g2="comma,period,ellipsis" + k="31" /> + <hkern g1="sigma" + g2="chi" + k="-5" /> + <hkern g1="sigma" + g2="gamma,nu" + k="-14" /> + <hkern g1="sigma" + g2="lambda" + k="10" /> + <hkern g1="sigma" + g2="rho" + k="14" /> + <hkern g1="sigma" + g2="tau" + k="-23" /> + <hkern g1="sigma" + g2="theta" + k="-14" /> + <hkern g1="sigma" + g2="zeta,xi" + k="-14" /> + <hkern g1="sigma" + g2="pi" + k="-14" /> + <hkern g1="sigma" + g2="mu,beta,eta,kappa,etatonos" + k="-5" /> + <hkern g1="sigma" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="-5" /> + <hkern g1="tau" + g2="guilsinglright,guillemotright" + k="-22" /> + <hkern g1="tau" + g2="hyphen,endash,emdash" + k="17" /> + <hkern g1="tau" + g2="quoteright,quotedblright" + k="-19" /> + <hkern g1="tau" + g2="comma,period,ellipsis" + k="26" /> + <hkern g1="tau" + g2="chi" + k="-5" /> + <hkern g1="tau" + g2="gamma,nu" + k="-8" /> + <hkern g1="tau" + g2="lambda" + k="12" /> + <hkern g1="tau" + g2="alpha,delta,omicron,sigma,phi,alphatonos,omicrontonos,uni03C2" + k="12" /> + <hkern g1="tau" + g2="rho" + k="24" /> + <hkern g1="tau" + g2="tau" + k="-6" /> + <hkern g1="theta" + g2="hyphen,endash,emdash" + k="-17" /> + <hkern g1="theta" + g2="comma,period,ellipsis" + k="32" /> + <hkern g1="theta" + g2="lambda" + k="5" /> + <hkern g1="theta" + g2="zeta,xi" + k="-18" /> + <hkern g1="xi" + g2="colon,semicolon" + k="-24" /> + <hkern g1="xi" + g2="guilsinglright,guillemotright" + k="-22" /> + <hkern g1="xi" + g2="parenright,bracketright,braceright" + k="-37" /> + <hkern g1="xi" + g2="quotedbl,quotesingle" + k="-7" /> + <hkern g1="xi" + g2="comma,period,ellipsis" + k="-26" /> + <hkern g1="xi" + g2="epsilon,epsilontonos" + k="-8" /> + <hkern g1="xi" + g2="lambda" + k="-38" /> + <hkern g1="xi" + g2="pi" + k="-19" /> + <hkern g1="zeta" + g2="colon,semicolon" + k="-14" /> + <hkern g1="zeta" + g2="guilsinglright,guillemotright" + k="-18" /> + <hkern g1="zeta" + g2="hyphen,endash,emdash" + k="16" /> + <hkern g1="zeta" + g2="parenright,bracketright,braceright" + k="-50" /> + <hkern g1="zeta" + g2="quotedbl,quotesingle" + k="-29" /> + <hkern g1="zeta" + g2="comma,period,ellipsis" + k="-19" /> + <hkern g1="zeta" + g2="epsilon,epsilontonos" + k="-6" /> + <hkern g1="zeta" + g2="lambda" + k="-33" /> + <hkern g1="zeta" + g2="rho" + k="-12" /> + <hkern g1="zeta" + g2="tau" + k="8" /> + <hkern g1="afii10018" + g2="afii10041" + k="41" /> + <hkern g1="afii10018" + g2="afii10021" + k="10" /> + <hkern g1="afii10018" + g2="afii10051" + k="44" /> + <hkern g1="afii10018" + g2="afii10025,afii10047" + k="7" /> + <hkern g1="afii10018" + g2="afii10038" + k="9" /> + <hkern g1="afii10018" + g2="afii10029,afii10058" + k="-5" /> + <hkern g1="afii10018" + g2="afii10036,afii10044,afii10060" + k="42" /> + <hkern g1="afii10018" + g2="afii10057" + k="4" /> + <hkern g1="afii10018" + g2="afii10032,afii10035,afii10053" + k="12" /> + <hkern g1="afii10018" + g2="afii10037,afii10062" + k="17" /> + <hkern g1="afii10018" + g2="afii10024" + k="8" /> + <hkern g1="afii10018" + g2="afii10017" + k="7" /> + <hkern g1="afii10018" + g2="afii10054" + k="6" /> + <hkern g1="afii10018" + g2="afii10039" + k="20" /> + <hkern g1="afii10018" + g2="afii10089" + k="9" /> + <hkern g1="afii10018" + g2="afii10069" + k="4" /> + <hkern g1="afii10018" + g2="afii10099" + k="12" /> + <hkern g1="afii10018" + g2="afii10084,afii10092" + k="33" /> + <hkern g1="afii10018" + g2="afii10105" + k="7" /> + <hkern g1="afii10018" + g2="afii10108" + k="6" /> + <hkern g1="afii10018" + g2="afii10085,afii10110" + k="20" /> + <hkern g1="afii10018" + g2="afii10087" + k="12" /> + <hkern g1="afii10051" + g2="afii10041" + k="45" /> + <hkern g1="afii10051" + g2="afii10021" + k="-11" /> + <hkern g1="afii10051" + g2="afii10051" + k="72" /> + <hkern g1="afii10051" + g2="afii10025,afii10047" + k="-5" /> + <hkern g1="afii10051" + g2="afii10038" + k="7" /> + <hkern g1="afii10051" + g2="afii10029,afii10058" + k="-18" /> + <hkern g1="afii10051" + g2="afii10036,afii10044,afii10060" + k="80" /> + <hkern g1="afii10051" + g2="afii10057" + k="-10" /> + <hkern g1="afii10051" + g2="afii10032,afii10035,afii10053" + k="6" /> + <hkern g1="afii10051" + g2="afii10037,afii10062" + k="10" /> + <hkern g1="afii10051" + g2="afii10024" + k="-12" /> + <hkern g1="afii10051" + g2="afii10049" + k="-11" /> + <hkern g1="afii10051" + g2="afii10089" + k="13" /> + <hkern g1="afii10051" + g2="afii10069" + k="-11" /> + <hkern g1="afii10051" + g2="afii10099" + k="8" /> + <hkern g1="afii10051" + g2="afii10077,afii10106" + k="-10" /> + <hkern g1="afii10051" + g2="afii10084,afii10092" + k="20" /> + <hkern g1="afii10051" + g2="afii10108" + k="10" /> + <hkern g1="afii10051" + g2="afii10085,afii10110" + k="13" /> + <hkern g1="afii10051" + g2="afii10097" + k="-8" /> + <hkern g1="afii10051" + g2="afii10072" + k="-10" /> + <hkern g1="afii10054" + g2="afii10041" + k="25" /> + <hkern g1="afii10054" + g2="afii10021" + k="5" /> + <hkern g1="afii10054" + g2="afii10029,afii10058" + k="-6" /> + <hkern g1="afii10054" + g2="afii10036,afii10044,afii10060" + k="7" /> + <hkern g1="afii10054" + g2="afii10057" + k="4" /> + <hkern g1="afii10054" + g2="afii10037,afii10062" + k="4" /> + <hkern g1="afii10054" + g2="afii10049" + k="-5" /> + <hkern g1="afii10054" + g2="afii10089" + k="16" /> + <hkern g1="afii10054" + g2="afii10099" + k="7" /> + <hkern g1="afii10054" + g2="afii10077,afii10106" + k="-4" /> + <hkern g1="afii10054" + g2="afii10084,afii10092" + k="25" /> + <hkern g1="afii10054" + g2="afii10105" + k="4" /> + <hkern g1="afii10054" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="-5" /> + <hkern g1="afii10054" + g2="afii10085,afii10110" + k="11" /> + <hkern g1="afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049,afii10055,afii10056,afii10145" + g2="afii10041" + k="6" /> + <hkern g1="afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049,afii10055,afii10056,afii10145" + g2="afii10089" + k="8" /> + <hkern g1="afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049,afii10055,afii10056,afii10145" + g2="afii10073,afii10095,afii10846" + k="-5" /> + <hkern g1="afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049,afii10055,afii10056,afii10145" + g2="afii10077,afii10106" + k="-5" /> + <hkern g1="afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049,afii10055,afii10056,afii10145" + g2="afii10084,afii10092" + k="4" /> + <hkern g1="afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049,afii10055,afii10056,afii10145" + g2="afii10097" + k="-4" /> + <hkern g1="afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049,afii10055,afii10056,afii10145" + g2="afii10072" + k="-5" /> + <hkern g1="afii10026,afii10027,afii10029,afii10031,afii10033,afii10041,afii10042,afii10045,afii10049,afii10055,afii10056,afii10145" + g2="comma,period,ellipsis" + k="-5" /> + <hkern g1="afii10038" + g2="afii10041" + k="8" /> + <hkern g1="afii10038" + g2="afii10021" + k="27" /> + <hkern g1="afii10038" + g2="afii10051" + k="31" /> + <hkern g1="afii10038" + g2="afii10025,afii10047" + k="9" /> + <hkern g1="afii10038" + g2="afii10029,afii10058" + k="5" /> + <hkern g1="afii10038" + g2="afii10036,afii10044,afii10060" + k="21" /> + <hkern g1="afii10038" + g2="afii10057" + k="21" /> + <hkern g1="afii10038" + g2="afii10037,afii10062" + k="24" /> + <hkern g1="afii10038" + g2="afii10024" + k="17" /> + <hkern g1="afii10038" + g2="afii10017" + k="21" /> + <hkern g1="afii10038" + g2="afii10039" + k="37" /> + <hkern g1="afii10038" + g2="afii10030" + k="6" /> + <hkern g1="afii10038" + g2="afii10065" + k="4" /> + <hkern g1="afii10038" + g2="afii10069" + k="14" /> + <hkern g1="afii10038" + g2="afii10099" + k="-5" /> + <hkern g1="afii10038" + g2="afii10073,afii10095,afii10846" + k="-4" /> + <hkern g1="afii10038" + g2="afii10084,afii10092" + k="-10" /> + <hkern g1="afii10038" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="-6" /> + <hkern g1="afii10038" + g2="afii10108" + k="-6" /> + <hkern g1="afii10038" + g2="afii10085,afii10110" + k="-8" /> + <hkern g1="afii10038" + g2="afii10097" + k="-8" /> + <hkern g1="afii10030" + g2="afii10041" + k="18" /> + <hkern g1="afii10030" + g2="afii10021" + k="-9" /> + <hkern g1="afii10030" + g2="afii10029,afii10058" + k="-11" /> + <hkern g1="afii10030" + g2="afii10037,afii10062" + k="4" /> + <hkern g1="afii10030" + g2="afii10017" + k="8" /> + <hkern g1="afii10030" + g2="afii10049" + k="-5" /> + <hkern g1="afii10030" + g2="afii10065" + k="-4" /> + <hkern g1="afii10030" + g2="afii10089" + k="15" /> + <hkern g1="afii10030" + g2="afii10069" + k="-5" /> + <hkern g1="afii10030" + g2="afii10073,afii10095,afii10846" + k="-7" /> + <hkern g1="afii10030" + g2="afii10077,afii10106" + k="-6" /> + <hkern g1="afii10030" + g2="afii10097" + k="-7" /> + <hkern g1="afii10030" + g2="afii10072" + k="-8" /> + <hkern g1="afii10034" + g2="afii10041" + k="7" /> + <hkern g1="afii10034" + g2="afii10021" + k="66" /> + <hkern g1="afii10034" + g2="afii10025,afii10047" + k="21" /> + <hkern g1="afii10034" + g2="afii10038" + k="11" /> + <hkern g1="afii10034" + g2="afii10029,afii10058" + k="29" /> + <hkern g1="afii10034" + g2="afii10057" + k="87" /> + <hkern g1="afii10034" + g2="afii10032,afii10035,afii10053" + k="8" /> + <hkern g1="afii10034" + g2="afii10037,afii10062" + k="12" /> + <hkern g1="afii10034" + g2="afii10024" + k="23" /> + <hkern g1="afii10034" + g2="afii10017" + k="84" /> + <hkern g1="afii10034" + g2="afii10039" + k="26" /> + <hkern g1="afii10034" + g2="afii10030" + k="18" /> + <hkern g1="afii10034" + g2="afii10065" + k="26" /> + <hkern g1="afii10034" + g2="afii10066" + k="5" /> + <hkern g1="afii10034" + g2="afii10089" + k="11" /> + <hkern g1="afii10034" + g2="afii10069" + k="48" /> + <hkern g1="afii10034" + g2="afii10099" + k="-9" /> + <hkern g1="afii10034" + g2="afii10102" + k="20" /> + <hkern g1="afii10034" + g2="afii10077,afii10106" + k="24" /> + <hkern g1="afii10034" + g2="afii10084,afii10092" + k="-6" /> + <hkern g1="afii10034" + g2="afii10105" + k="19" /> + <hkern g1="afii10034" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="28" /> + <hkern g1="afii10034" + g2="afii10108" + k="-9" /> + <hkern g1="afii10034" + g2="afii10097" + k="9" /> + <hkern g1="afii10034" + g2="afii10067,afii10068,afii10098,afii10074,afii10075,afii10076,afii10079,afii10081,afii10082,afii10088,afii10090,afii10091,afii10093,afii10094,afii10096,afii10100,afii10104,afii10107,afii10109,afii10193" + k="15" /> + <hkern g1="afii10034" + g2="afii10086" + k="28" /> + <hkern g1="afii10034" + g2="afii10078" + k="15" /> + <hkern g1="afii10034" + g2="afii10103" + k="15" /> + <hkern g1="afii10034" + g2="colon,semicolon" + k="21" /> + <hkern g1="afii10034" + g2="comma,period,ellipsis" + k="139" /> + <hkern g1="afii10034" + g2="hyphen,endash,emdash" + k="13" /> + <hkern g1="afii10034" + g2="guilsinglright,guillemotright" + k="8" /> + <hkern g1="afii10035,afii10053" + g2="afii10041" + k="12" /> + <hkern g1="afii10035,afii10053" + g2="afii10021" + k="-21" /> + <hkern g1="afii10035,afii10053" + g2="afii10051" + k="-36" /> + <hkern g1="afii10035,afii10053" + g2="afii10025,afii10047" + k="-19" /> + <hkern g1="afii10035,afii10053" + g2="afii10038" + k="25" /> + <hkern g1="afii10035,afii10053" + g2="afii10029,afii10058" + k="-35" /> + <hkern g1="afii10035,afii10053" + g2="afii10036,afii10044,afii10060" + k="-35" /> + <hkern g1="afii10035,afii10053" + g2="afii10032,afii10035,afii10053" + k="20" /> + <hkern g1="afii10035,afii10053" + g2="afii10037,afii10062" + k="-18" /> + <hkern g1="afii10035,afii10053" + g2="afii10024" + k="-15" /> + <hkern g1="afii10035,afii10053" + g2="afii10017" + k="-4" /> + <hkern g1="afii10035,afii10053" + g2="afii10039" + k="-7" /> + <hkern g1="afii10035,afii10053" + g2="afii10049" + k="-15" /> + <hkern g1="afii10035,afii10053" + g2="afii10065" + k="5" /> + <hkern g1="afii10035,afii10053" + g2="afii10066" + k="14" /> + <hkern g1="afii10035,afii10053" + g2="afii10089" + k="59" /> + <hkern g1="afii10035,afii10053" + g2="afii10069" + k="-11" /> + <hkern g1="afii10035,afii10053" + g2="afii10099" + k="-13" /> + <hkern g1="afii10035,afii10053" + g2="afii10073,afii10095,afii10846" + k="-10" /> + <hkern g1="afii10035,afii10053" + g2="afii10077,afii10106" + k="-16" /> + <hkern g1="afii10035,afii10053" + g2="afii10084,afii10092" + k="33" /> + <hkern g1="afii10035,afii10053" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="16" /> + <hkern g1="afii10035,afii10053" + g2="afii10108" + k="-14" /> + <hkern g1="afii10035,afii10053" + g2="afii10085,afii10110" + k="25" /> + <hkern g1="afii10035,afii10053" + g2="afii10072" + k="-15" /> + <hkern g1="afii10035,afii10053" + g2="afii10086" + k="18" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10041" + k="7" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10021" + k="50" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10051" + k="-52" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10025,afii10047" + k="-13" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10038" + k="42" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10029,afii10058" + k="25" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10036,afii10044,afii10060" + k="-41" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10057" + k="64" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10032,afii10035,afii10053" + k="35" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10037,afii10062" + k="-40" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10024" + k="-20" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10017" + k="81" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10049" + k="5" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10030" + k="8" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10065" + k="80" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10066" + k="26" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10089" + k="88" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10069" + k="101" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10099" + k="-33" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10102" + k="40" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10073,afii10095,afii10846" + k="60" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10077,afii10106" + k="88" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10084,afii10092" + k="61" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10105" + k="23" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="92" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10108" + k="-33" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10085,afii10110" + k="46" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10097" + k="78" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10072" + k="61" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10087" + k="57" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10067,afii10068,afii10098,afii10074,afii10075,afii10076,afii10079,afii10081,afii10082,afii10088,afii10090,afii10091,afii10093,afii10094,afii10096,afii10100,afii10104,afii10107,afii10109,afii10193" + k="67" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10086" + k="86" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10078" + k="79" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="afii10103" + k="15" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="parenright,bracketright,braceright" + k="-30" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="colon,semicolon" + k="59" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="comma,period,ellipsis" + k="68" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="hyphen,endash,emdash" + k="73" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="guilsinglright,guillemotright" + k="51" /> + <hkern g1="afii10020,afii10050,afii10036,afii10052" + g2="guillemotleft,guilsinglleft" + k="36" /> + <hkern g1="afii10039" + g2="afii10041" + k="18" /> + <hkern g1="afii10039" + g2="afii10021" + k="-11" /> + <hkern g1="afii10039" + g2="afii10051" + k="-15" /> + <hkern g1="afii10039" + g2="afii10025,afii10047" + k="-6" /> + <hkern g1="afii10039" + g2="afii10038" + k="36" /> + <hkern g1="afii10039" + g2="afii10029,afii10058" + k="-24" /> + <hkern g1="afii10039" + g2="afii10036,afii10044,afii10060" + k="-17" /> + <hkern g1="afii10039" + g2="afii10032,afii10035,afii10053" + k="29" /> + <hkern g1="afii10039" + g2="afii10037,afii10062" + k="-10" /> + <hkern g1="afii10039" + g2="afii10024" + k="-4" /> + <hkern g1="afii10039" + g2="afii10017" + k="5" /> + <hkern g1="afii10039" + g2="afii10049" + k="-12" /> + <hkern g1="afii10039" + g2="afii10065" + k="6" /> + <hkern g1="afii10039" + g2="afii10066" + k="18" /> + <hkern g1="afii10039" + g2="afii10089" + k="51" /> + <hkern g1="afii10039" + g2="afii10069" + k="-11" /> + <hkern g1="afii10039" + g2="afii10099" + k="-8" /> + <hkern g1="afii10039" + g2="afii10073,afii10095,afii10846" + k="-5" /> + <hkern g1="afii10039" + g2="afii10077,afii10106" + k="-14" /> + <hkern g1="afii10039" + g2="afii10084,afii10092" + k="20" /> + <hkern g1="afii10039" + g2="afii10105" + k="4" /> + <hkern g1="afii10039" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="20" /> + <hkern g1="afii10039" + g2="afii10108" + k="-9" /> + <hkern g1="afii10039" + g2="afii10085,afii10110" + k="24" /> + <hkern g1="afii10039" + g2="afii10097" + k="-4" /> + <hkern g1="afii10039" + g2="afii10072" + k="-5" /> + <hkern g1="afii10039" + g2="afii10086" + k="21" /> + <hkern g1="afii10039" + g2="colon,semicolon" + k="4" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10041" + k="51" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10021" + k="8" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10051" + k="87" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10025,afii10047" + k="11" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10038" + k="4" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10036,afii10044,afii10060" + k="72" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10057" + k="5" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10032,afii10035,afii10053" + k="4" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10037,afii10062" + k="47" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10017" + k="6" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10054" + k="8" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10039" + k="23" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10030" + k="6" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10089" + k="10" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10069" + k="4" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10099" + k="8" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10102" + k="5" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10084,afii10092" + k="24" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10105" + k="9" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10108" + k="6" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10085,afii10110" + k="15" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="afii10087" + k="12" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="parenright,bracketright,braceright" + k="31" /> + <hkern g1="afii10044,afii10046,afii10058,afii10059" + g2="quoteright,quotedblright" + k="48" /> + <hkern g1="afii10022,afii10023" + g2="afii10041" + k="13" /> + <hkern g1="afii10022,afii10023" + g2="afii10021" + k="-20" /> + <hkern g1="afii10022,afii10023" + g2="afii10025,afii10047" + k="-9" /> + <hkern g1="afii10022,afii10023" + g2="afii10029,afii10058" + k="-26" /> + <hkern g1="afii10022,afii10023" + g2="afii10036,afii10044,afii10060" + k="-5" /> + <hkern g1="afii10022,afii10023" + g2="afii10057" + k="-18" /> + <hkern g1="afii10022,afii10023" + g2="afii10037,afii10062" + k="-9" /> + <hkern g1="afii10022,afii10023" + g2="afii10049" + k="-7" /> + <hkern g1="afii10022,afii10023" + g2="afii10066" + k="4" /> + <hkern g1="afii10022,afii10023" + g2="afii10089" + k="13" /> + <hkern g1="afii10022,afii10023" + g2="afii10069" + k="-12" /> + <hkern g1="afii10022,afii10023" + g2="afii10073,afii10095,afii10846" + k="-8" /> + <hkern g1="afii10022,afii10023" + g2="afii10077,afii10106" + k="-14" /> + <hkern g1="afii10022,afii10023" + g2="afii10084,afii10092" + k="14" /> + <hkern g1="afii10022,afii10023" + g2="afii10105" + k="4" /> + <hkern g1="afii10022,afii10023" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="7" /> + <hkern g1="afii10022,afii10023" + g2="afii10108" + k="-4" /> + <hkern g1="afii10022,afii10023" + g2="afii10085,afii10110" + k="6" /> + <hkern g1="afii10022,afii10023" + g2="afii10097" + k="-7" /> + <hkern g1="afii10022,afii10023" + g2="afii10072" + k="-8" /> + <hkern g1="afii10022,afii10023" + g2="afii10086" + k="7" /> + <hkern g1="afii10057" + g2="afii10021" + k="10" /> + <hkern g1="afii10057" + g2="afii10057" + k="25" /> + <hkern g1="afii10057" + g2="afii10037,afii10062" + k="-5" /> + <hkern g1="afii10057" + g2="afii10017" + k="5" /> + <hkern g1="afii10057" + g2="afii10049" + k="-5" /> + <hkern g1="afii10057" + g2="afii10089" + k="6" /> + <hkern g1="afii10057" + g2="afii10069" + k="9" /> + <hkern g1="afii10057" + g2="afii10099" + k="-9" /> + <hkern g1="afii10057" + g2="afii10105" + k="4" /> + <hkern g1="afii10057" + g2="afii10108" + k="-8" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10041" + k="17" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10021" + k="-30" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10051" + k="-19" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10025,afii10047" + k="-13" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10038" + k="21" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10029,afii10058" + k="-36" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10036,afii10044,afii10060" + k="-29" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10057" + k="-25" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10032,afii10035,afii10053" + k="19" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10037,afii10062" + k="-19" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10024" + k="-17" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10017" + k="-5" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10039" + k="-9" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10049" + k="-23" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10065" + k="-12" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10066" + k="9" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10089" + k="38" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10069" + k="-24" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10099" + k="-15" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10102" + k="-4" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10073,afii10095,afii10846" + k="-13" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10077,afii10106" + k="-28" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10084,afii10092" + k="23" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10108" + k="-13" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10085,afii10110" + k="19" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10097" + k="-11" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10072" + k="-15" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10087" + k="-12" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10078" + k="-7" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="afii10103" + k="-4" /> + <hkern g1="afii10024,afii10028,afii10061" + g2="hyphen,endash,emdash" + k="19" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10041" + k="7" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10021" + k="21" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10051" + k="14" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10025,afii10047" + k="14" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10029,afii10058" + k="4" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10036,afii10044,afii10060" + k="8" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10057" + k="11" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10037,afii10062" + k="21" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10024" + k="17" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10017" + k="15" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10039" + k="28" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10049" + k="-4" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10089" + k="-4" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10069" + k="9" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10099" + k="-5" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10073,afii10095,afii10846" + k="-7" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10084,afii10092" + k="-13" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10108" + k="-8" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10085,afii10110" + k="-12" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10097" + k="-5" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10087" + k="5" /> + <hkern g1="afii10032,afii10047,afii10048" + g2="afii10078" + k="-5" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10041" + k="17" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10021" + k="-13" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10051" + k="13" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10025,afii10047" + k="-6" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10038" + k="12" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10029,afii10058" + k="-14" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10036,afii10044,afii10060" + k="11" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10057" + k="-12" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10032,afii10035,afii10053" + k="9" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10037,afii10062" + k="4" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10024" + k="-5" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10049" + k="-7" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10065" + k="-5" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10066" + k="6" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10089" + k="19" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10069" + k="-14" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10099" + k="4" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10073,afii10095,afii10846" + k="-8" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10077,afii10106" + k="-14" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10084,afii10092" + k="18" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10105" + k="-35" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="6" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10108" + k="4" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10085,afii10110" + k="6" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10097" + k="-8" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10072" + k="-9" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10087" + k="-4" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="afii10086" + k="7" /> + <hkern g1="afii10021,afii10040,afii10043" + g2="comma,period,ellipsis" + k="-20" /> + <hkern g1="afii10060" + g2="afii10041" + k="45" /> + <hkern g1="afii10060" + g2="afii10051" + k="84" /> + <hkern g1="afii10060" + g2="afii10038" + k="7" /> + <hkern g1="afii10060" + g2="afii10036,afii10044,afii10060" + k="70" /> + <hkern g1="afii10060" + g2="afii10057" + k="4" /> + <hkern g1="afii10060" + g2="afii10032,afii10035,afii10053" + k="6" /> + <hkern g1="afii10060" + g2="afii10037,afii10062" + k="23" /> + <hkern g1="afii10060" + g2="afii10049" + k="-5" /> + <hkern g1="afii10060" + g2="afii10089" + k="18" /> + <hkern g1="afii10060" + g2="afii10099" + k="10" /> + <hkern g1="afii10060" + g2="afii10084,afii10092" + k="27" /> + <hkern g1="afii10060" + g2="afii10105" + k="14" /> + <hkern g1="afii10060" + g2="afii10108" + k="7" /> + <hkern g1="afii10060" + g2="afii10085,afii10110" + k="19" /> + <hkern g1="afii10060" + g2="afii10097" + k="-4" /> + <hkern g1="afii10037,afii10062" + g2="afii10021" + k="50" /> + <hkern g1="afii10037,afii10062" + g2="afii10051" + k="-52" /> + <hkern g1="afii10037,afii10062" + g2="afii10025,afii10047" + k="-11" /> + <hkern g1="afii10037,afii10062" + g2="afii10038" + k="11" /> + <hkern g1="afii10037,afii10062" + g2="afii10029,afii10058" + k="16" /> + <hkern g1="afii10037,afii10062" + g2="afii10036,afii10044,afii10060" + k="-42" /> + <hkern g1="afii10037,afii10062" + g2="afii10057" + k="68" /> + <hkern g1="afii10037,afii10062" + g2="afii10032,afii10035,afii10053" + k="11" /> + <hkern g1="afii10037,afii10062" + g2="afii10037,afii10062" + k="-24" /> + <hkern g1="afii10037,afii10062" + g2="afii10024" + k="-14" /> + <hkern g1="afii10037,afii10062" + g2="afii10017" + k="57" /> + <hkern g1="afii10037,afii10062" + g2="afii10039" + k="-4" /> + <hkern g1="afii10037,afii10062" + g2="afii10030" + k="9" /> + <hkern g1="afii10037,afii10062" + g2="afii10065" + k="49" /> + <hkern g1="afii10037,afii10062" + g2="afii10066" + k="14" /> + <hkern g1="afii10037,afii10062" + g2="afii10089" + k="34" /> + <hkern g1="afii10037,afii10062" + g2="afii10069" + k="68" /> + <hkern g1="afii10037,afii10062" + g2="afii10099" + k="-37" /> + <hkern g1="afii10037,afii10062" + g2="afii10102" + k="41" /> + <hkern g1="afii10037,afii10062" + g2="afii10073,afii10095,afii10846" + k="20" /> + <hkern g1="afii10037,afii10062" + g2="afii10077,afii10106" + k="33" /> + <hkern g1="afii10037,afii10062" + g2="afii10084,afii10092" + k="-12" /> + <hkern g1="afii10037,afii10062" + g2="afii10105" + k="12" /> + <hkern g1="afii10037,afii10062" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="53" /> + <hkern g1="afii10037,afii10062" + g2="afii10108" + k="-34" /> + <hkern g1="afii10037,afii10062" + g2="afii10085,afii10110" + k="8" /> + <hkern g1="afii10037,afii10062" + g2="afii10097" + k="41" /> + <hkern g1="afii10037,afii10062" + g2="afii10072" + k="17" /> + <hkern g1="afii10037,afii10062" + g2="afii10087" + k="16" /> + <hkern g1="afii10037,afii10062" + g2="afii10067,afii10068,afii10098,afii10074,afii10075,afii10076,afii10079,afii10081,afii10082,afii10088,afii10090,afii10091,afii10093,afii10094,afii10096,afii10100,afii10104,afii10107,afii10109,afii10193" + k="24" /> + <hkern g1="afii10037,afii10062" + g2="afii10086" + k="50" /> + <hkern g1="afii10037,afii10062" + g2="afii10078" + k="35" /> + <hkern g1="afii10037,afii10062" + g2="afii10103" + k="8" /> + <hkern g1="afii10037,afii10062" + g2="parenright,bracketright,braceright" + k="-24" /> + <hkern g1="afii10037,afii10062" + g2="colon,semicolon" + k="37" /> + <hkern g1="afii10037,afii10062" + g2="comma,period,ellipsis" + k="106" /> + <hkern g1="afii10037,afii10062" + g2="hyphen,endash,emdash" + k="39" /> + <hkern g1="afii10037,afii10062" + g2="guilsinglright,guillemotright" + k="19" /> + <hkern g1="afii10037,afii10062" + g2="guillemotleft,guilsinglleft" + k="27" /> + <hkern g1="afii10019,afii10025" + g2="afii10041" + k="21" /> + <hkern g1="afii10019,afii10025" + g2="afii10021" + k="4" /> + <hkern g1="afii10019,afii10025" + g2="afii10051" + k="10" /> + <hkern g1="afii10019,afii10025" + g2="afii10038" + k="10" /> + <hkern g1="afii10019,afii10025" + g2="afii10036,afii10044,afii10060" + k="6" /> + <hkern g1="afii10019,afii10025" + g2="afii10057" + k="5" /> + <hkern g1="afii10019,afii10025" + g2="afii10032,afii10035,afii10053" + k="8" /> + <hkern g1="afii10019,afii10025" + g2="afii10037,afii10062" + k="14" /> + <hkern g1="afii10019,afii10025" + g2="afii10024" + k="5" /> + <hkern g1="afii10019,afii10025" + g2="afii10039" + k="9" /> + <hkern g1="afii10019,afii10025" + g2="afii10049" + k="-6" /> + <hkern g1="afii10019,afii10025" + g2="afii10089" + k="20" /> + <hkern g1="afii10019,afii10025" + g2="afii10069" + k="4" /> + <hkern g1="afii10019,afii10025" + g2="afii10077,afii10106" + k="-4" /> + <hkern g1="afii10019,afii10025" + g2="afii10084,afii10092" + k="6" /> + <hkern g1="afii10019,afii10025" + g2="afii10105" + k="5" /> + <hkern g1="afii10019,afii10025" + g2="afii10085,afii10110" + k="4" /> + <hkern g1="afii10019,afii10025" + g2="afii10087" + k="10" /> + <hkern g1="afii10065" + g2="afii10089" + k="14" /> + <hkern g1="afii10065" + g2="afii10099" + k="10" /> + <hkern g1="afii10065" + g2="afii10077,afii10106" + k="-6" /> + <hkern g1="afii10065" + g2="afii10084,afii10092" + k="7" /> + <hkern g1="afii10065" + g2="afii10105" + k="7" /> + <hkern g1="afii10065" + g2="afii10108" + k="8" /> + <hkern g1="afii10065" + g2="afii10085,afii10110" + k="11" /> + <hkern g1="afii10065" + g2="afii10097" + k="-7" /> + <hkern g1="afii10099" + g2="afii10089" + k="9" /> + <hkern g1="afii10099" + g2="afii10069" + k="-4" /> + <hkern g1="afii10099" + g2="afii10099" + k="8" /> + <hkern g1="afii10099" + g2="afii10077,afii10106" + k="-8" /> + <hkern g1="afii10099" + g2="afii10084,afii10092" + k="12" /> + <hkern g1="afii10099" + g2="afii10085,afii10110" + k="8" /> + <hkern g1="afii10099" + g2="afii10097" + k="-5" /> + <hkern g1="afii10102" + g2="afii10089" + k="14" /> + <hkern g1="afii10102" + g2="afii10069" + k="-4" /> + <hkern g1="afii10102" + g2="afii10099" + k="11" /> + <hkern g1="afii10102" + g2="afii10105" + k="4" /> + <hkern g1="afii10102" + g2="afii10108" + k="8" /> + <hkern g1="afii10102" + g2="afii10097" + k="-5" /> + <hkern g1="afii10074,afii10075,afii10077,afii10079,afii10081,afii10089,afii10090,afii10093,afii10097,afii10193" + g2="afii10089" + k="11" /> + <hkern g1="afii10074,afii10075,afii10077,afii10079,afii10081,afii10089,afii10090,afii10093,afii10097,afii10193" + g2="afii10099" + k="9" /> + <hkern g1="afii10074,afii10075,afii10077,afii10079,afii10081,afii10089,afii10090,afii10093,afii10097,afii10193" + g2="afii10077,afii10106" + k="-4" /> + <hkern g1="afii10074,afii10075,afii10077,afii10079,afii10081,afii10089,afii10090,afii10093,afii10097,afii10193" + g2="afii10105" + k="7" /> + <hkern g1="afii10074,afii10075,afii10077,afii10079,afii10081,afii10089,afii10090,afii10093,afii10097,afii10193" + g2="afii10108" + k="5" /> + <hkern g1="afii10074,afii10075,afii10077,afii10079,afii10081,afii10089,afii10090,afii10093,afii10097,afii10193" + g2="afii10085,afii10110" + k="4" /> + <hkern g1="afii10074,afii10075,afii10077,afii10079,afii10081,afii10089,afii10090,afii10093,afii10097,afii10193" + g2="afii10097" + k="-4" /> + <hkern g1="afii10086" + g2="afii10089" + k="6" /> + <hkern g1="afii10086" + g2="afii10069" + k="4" /> + <hkern g1="afii10086" + g2="afii10099" + k="6" /> + <hkern g1="afii10086" + g2="afii10073,afii10095,afii10846" + k="4" /> + <hkern g1="afii10086" + g2="afii10077,afii10106" + k="-5" /> + <hkern g1="afii10086" + g2="afii10084,afii10092" + k="5" /> + <hkern g1="afii10086" + g2="afii10105" + k="9" /> + <hkern g1="afii10086" + g2="afii10108" + k="4" /> + <hkern g1="afii10086" + g2="afii10085,afii10110" + k="17" /> + <hkern g1="afii10086" + g2="afii10072" + k="8" /> + <hkern g1="afii10086" + g2="afii10087" + k="18" /> + <hkern g1="afii10078" + g2="afii10089" + k="11" /> + <hkern g1="afii10078" + g2="afii10069" + k="-11" /> + <hkern g1="afii10078" + g2="afii10099" + k="5" /> + <hkern g1="afii10078" + g2="afii10073,afii10095,afii10846" + k="-5" /> + <hkern g1="afii10078" + g2="afii10077,afii10106" + k="-13" /> + <hkern g1="afii10078" + g2="afii10084,afii10092" + k="4" /> + <hkern g1="afii10078" + g2="afii10085,afii10110" + k="5" /> + <hkern g1="afii10078" + g2="afii10097" + k="-5" /> + <hkern g1="afii10083,afii10101" + g2="afii10066" + k="-6" /> + <hkern g1="afii10083,afii10101" + g2="afii10089" + k="6" /> + <hkern g1="afii10083,afii10101" + g2="afii10069" + k="-19" /> + <hkern g1="afii10083,afii10101" + g2="afii10073,afii10095,afii10846" + k="-13" /> + <hkern g1="afii10083,afii10101" + g2="afii10077,afii10106" + k="-21" /> + <hkern g1="afii10083,afii10101" + g2="afii10084,afii10092" + k="-16" /> + <hkern g1="afii10083,afii10101" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="6" /> + <hkern g1="afii10083,afii10101" + g2="afii10085,afii10110" + k="-14" /> + <hkern g1="afii10083,afii10101" + g2="afii10097" + k="-9" /> + <hkern g1="afii10083,afii10101" + g2="afii10072" + k="-13" /> + <hkern g1="afii10083,afii10101" + g2="afii10087" + k="-9" /> + <hkern g1="afii10083,afii10101" + g2="afii10086" + k="7" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10065" + k="14" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10066" + k="-4" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10089" + k="9" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10069" + k="37" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10102" + k="6" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10073,afii10095,afii10846" + k="-5" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10077,afii10106" + k="14" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10084,afii10092" + k="-20" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10105" + k="10" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="20" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10085,afii10110" + k="-14" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10097" + k="6" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10072" + k="-12" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10087" + k="-6" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10067,afii10068,afii10098,afii10074,afii10075,afii10076,afii10079,afii10081,afii10082,afii10088,afii10090,afii10091,afii10093,afii10094,afii10096,afii10100,afii10104,afii10107,afii10109,afii10193" + k="7" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10086" + k="20" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10078" + k="6" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="afii10103" + k="7" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="parenright,bracketright,braceright" + k="23" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="comma,period,ellipsis" + k="76" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="hyphen,endash,emdash" + k="34" /> + <hkern g1="afii10068,afii10098,afii10084,afii10100" + g2="guillemotleft,guilsinglleft" + k="14" /> + <hkern g1="afii10087" + g2="afii10089" + k="8" /> + <hkern g1="afii10087" + g2="afii10069" + k="-18" /> + <hkern g1="afii10087" + g2="afii10073,afii10095,afii10846" + k="-15" /> + <hkern g1="afii10087" + g2="afii10077,afii10106" + k="-24" /> + <hkern g1="afii10087" + g2="afii10084,afii10092" + k="-12" /> + <hkern g1="afii10087" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="14" /> + <hkern g1="afii10087" + g2="afii10085,afii10110" + k="-8" /> + <hkern g1="afii10087" + g2="afii10097" + k="-17" /> + <hkern g1="afii10087" + g2="afii10072" + k="-17" /> + <hkern g1="afii10087" + g2="afii10087" + k="-4" /> + <hkern g1="afii10087" + g2="afii10086" + k="15" /> + <hkern g1="afii10087" + g2="guillemotleft,guilsinglleft" + k="16" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10066" + k="5" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10089" + k="33" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10099" + k="14" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10102" + k="5" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10077,afii10106" + k="-4" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10084,afii10092" + k="52" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10105" + k="10" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10108" + k="9" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10085,afii10110" + k="36" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="afii10087" + k="6" /> + <hkern g1="afii10092,afii10094,afii10106,afii10107" + g2="quoteright,quotedblright" + k="57" /> + <hkern g1="afii10103" + g2="afii10089" + k="9" /> + <hkern g1="afii10103" + g2="afii10077,afii10106" + k="-4" /> + <hkern g1="afii10103" + g2="afii10105" + k="4" /> + <hkern g1="afii10103" + g2="afii10097" + k="-5" /> + <hkern g1="afii10070,afii10071" + g2="afii10066" + k="-5" /> + <hkern g1="afii10070,afii10071" + g2="afii10089" + k="6" /> + <hkern g1="afii10070,afii10071" + g2="afii10099" + k="4" /> + <hkern g1="afii10070,afii10071" + g2="afii10077,afii10106" + k="-5" /> + <hkern g1="afii10070,afii10071" + g2="afii10084,afii10092" + k="4" /> + <hkern g1="afii10070,afii10071" + g2="afii10105" + k="4" /> + <hkern g1="afii10070,afii10071" + g2="afii10085,afii10110" + k="4" /> + <hkern g1="afii10070,afii10071" + g2="afii10097" + k="-6" /> + <hkern g1="afii10070,afii10071" + g2="afii10087" + k="4" /> + <hkern g1="afii10070,afii10071" + g2="afii10086" + k="-5" /> + <hkern g1="afii10105" + g2="afii10089" + k="8" /> + <hkern g1="afii10105" + g2="afii10069" + k="-6" /> + <hkern g1="afii10105" + g2="afii10097" + k="-5" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10065" + k="-10" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10089" + k="15" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10069" + k="-25" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10073,afii10095,afii10846" + k="-11" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10077,afii10106" + k="-27" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10084,afii10092" + k="-17" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="6" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10085,afii10110" + k="-7" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10097" + k="-18" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10072" + k="-20" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10087" + k="-13" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="afii10086" + k="8" /> + <hkern g1="afii10072,afii10076,afii10109" + g2="guillemotleft,guilsinglleft" + k="9" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10089" + k="10" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10069" + k="7" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10099" + k="10" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10077,afii10106" + k="-4" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10084,afii10092" + k="8" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10105" + k="8" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10108" + k="6" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10085,afii10110" + k="10" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10072" + k="8" /> + <hkern g1="afii10066,afii10080,afii10082,afii10095,afii10096,afii10846" + g2="afii10087" + k="13" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10066" + k="7" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10089" + k="16" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10069" + k="-19" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10099" + k="13" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10077,afii10106" + k="-9" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10084,afii10092" + k="8" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10105" + k="-27" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="4" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10108" + k="8" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10097" + k="-9" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10072" + k="-8" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10087" + k="-4" /> + <hkern g1="afii10069,afii10088,afii10091" + g2="afii10086" + k="5" /> + <hkern g1="afii10108" + g2="afii10089" + k="18" /> + <hkern g1="afii10108" + g2="afii10069" + k="-4" /> + <hkern g1="afii10108" + g2="afii10099" + k="14" /> + <hkern g1="afii10108" + g2="afii10077,afii10106" + k="-6" /> + <hkern g1="afii10108" + g2="afii10084,afii10092" + k="15" /> + <hkern g1="afii10108" + g2="afii10105" + k="10" /> + <hkern g1="afii10108" + g2="afii10085,afii10110" + k="10" /> + <hkern g1="afii10108" + g2="afii10097" + k="-5" /> + <hkern g1="afii10085,afii10110" + g2="afii10065" + k="7" /> + <hkern g1="afii10085,afii10110" + g2="afii10066" + k="-8" /> + <hkern g1="afii10085,afii10110" + g2="afii10069" + k="20" /> + <hkern g1="afii10085,afii10110" + g2="afii10102" + k="5" /> + <hkern g1="afii10085,afii10110" + g2="afii10073,afii10095,afii10846" + k="-5" /> + <hkern g1="afii10085,afii10110" + g2="afii10077,afii10106" + k="4" /> + <hkern g1="afii10085,afii10110" + g2="afii10084,afii10092" + k="-22" /> + <hkern g1="afii10085,afii10110" + g2="afii10105" + k="5" /> + <hkern g1="afii10085,afii10110" + g2="afii10070,afii10080,afii10083,afii10071,afii10101" + k="9" /> + <hkern g1="afii10085,afii10110" + g2="afii10085,afii10110" + k="-6" /> + <hkern g1="afii10085,afii10110" + g2="afii10072" + k="-10" /> + <hkern g1="afii10085,afii10110" + g2="afii10087" + k="-4" /> + <hkern g1="afii10085,afii10110" + g2="afii10086" + k="9" /> + <hkern g1="afii10085,afii10110" + g2="afii10078" + k="5" /> + <hkern g1="afii10085,afii10110" + g2="parenright,bracketright,braceright" + k="19" /> + <hkern g1="afii10085,afii10110" + g2="comma,period,ellipsis" + k="50" /> + <hkern g1="afii10085,afii10110" + g2="hyphen,endash,emdash" + k="10" /> + <hkern g1="afii10085,afii10110" + g2="guillemotleft,guilsinglleft" + k="8" /> + <hkern g1="afii10067,afii10073" + g2="afii10066" + k="4" /> + <hkern g1="afii10067,afii10073" + g2="afii10089" + k="16" /> + <hkern g1="afii10067,afii10073" + g2="afii10099" + k="11" /> + <hkern g1="afii10067,afii10073" + g2="afii10077,afii10106" + k="-7" /> + <hkern g1="afii10067,afii10073" + g2="afii10084,afii10092" + k="10" /> + <hkern g1="afii10067,afii10073" + g2="afii10105" + k="9" /> + <hkern g1="afii10067,afii10073" + g2="afii10108" + k="9" /> + <hkern g1="afii10067,afii10073" + g2="afii10085,afii10110" + k="11" /> + <hkern g1="afii10067,afii10073" + g2="afii10097" + k="-5" /> + <hkern g1="afii10067,afii10073" + g2="afii10072" + k="-4" /> + <hkern g1="afii10104" + g2="afii10089" + k="9" /> + <hkern g1="afii10104" + g2="afii10099" + k="-59" /> + <hkern g1="afii10104" + g2="afii10077,afii10106" + k="-4" /> + <hkern g1="afii10104" + g2="afii10084,afii10092" + k="-9" /> + <hkern g1="afii10104" + g2="afii10105" + k="-7" /> + <hkern g1="afii10104" + g2="afii10108" + k="-52" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10041" + k="26" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10021" + k="-21" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10051" + k="-34" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10029,afii10058" + k="13" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10036,afii10044,afii10060" + k="-35" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10057" + k="15" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10037,afii10062" + k="-11" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10049" + k="11" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10089" + k="49" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10069" + k="-18" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10099" + k="-5" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10084,afii10092" + k="23" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10105" + k="-27" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10108" + k="-6" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10085,afii10110" + k="16" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="afii10097" + k="13" /> + <hkern g1="colon,semicolon" + g2="afii10021" + k="-6" /> + <hkern g1="colon,semicolon" + g2="afii10051" + k="6" /> + <hkern g1="colon,semicolon" + g2="afii10069" + k="-6" /> + <hkern g1="colon,semicolon" + g2="afii10084,afii10092" + k="-12" /> + <hkern g1="colon,semicolon" + g2="afii10105" + k="5" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10041" + k="13" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10021" + k="15" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10051" + k="41" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10029,afii10058" + k="9" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10036,afii10044,afii10060" + k="33" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10057" + k="26" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10037,afii10062" + k="33" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10024" + k="16" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10039" + k="29" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10049" + k="8" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10089" + k="8" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10069" + k="17" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10099" + k="9" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10077,afii10106" + k="11" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10084,afii10092" + k="12" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10105" + k="5" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10085,afii10110" + k="11" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10097" + k="6" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10072" + k="15" /> + <hkern g1="hyphen,endash,emdash" + g2="afii10087" + k="6" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10051" + k="19" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10036,afii10044,afii10060" + k="15" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10039" + k="5" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="afii10084,afii10092" + k="-5" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10041" + k="15" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10021" + k="5" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10051" + k="33" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10029,afii10058" + k="4" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10036,afii10044,afii10060" + k="16" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10057" + k="12" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10037,afii10062" + k="20" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10024" + k="8" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10049" + k="7" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10089" + k="5" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10069" + k="4" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10099" + k="9" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10077,afii10106" + k="4" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10084,afii10092" + k="7" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10105" + k="10" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10108" + k="9" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10085,afii10110" + k="10" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10097" + k="5" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10072" + k="6" /> + <hkern g1="guilsinglright,guillemotright" + g2="afii10087" + k="10" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10051" + k="-66" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10038" + k="11" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10029,afii10058" + k="18" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10036,afii10044,afii10060" + k="-67" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10057" + k="80" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10032,afii10035,afii10053" + k="11" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10037,afii10062" + k="-10" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10017" + k="77" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10049" + k="11" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10069" + k="57" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10099" + k="-26" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10077,afii10106" + k="38" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10084,afii10092" + k="-20" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10105" + k="9" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10108" + k="-28" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10085,afii10110" + k="7" /> + <hkern g1="quoteleft,quotedblleft" + g2="afii10097" + k="33" /> + <hkern g1="quoteright,quotedblright" + g2="afii10021" + k="12" /> + <hkern g1="quoteright,quotedblright" + g2="afii10051" + k="-6" /> + <hkern g1="quoteright,quotedblright" + g2="afii10029,afii10058" + k="10" /> + <hkern g1="quoteright,quotedblright" + g2="afii10036,afii10044,afii10060" + k="-10" /> + <hkern g1="quoteright,quotedblright" + g2="afii10057" + k="17" /> + <hkern g1="quoteright,quotedblright" + g2="afii10017" + k="18" /> + <hkern g1="quoteright,quotedblright" + g2="afii10089" + k="10" /> + <hkern g1="quoteright,quotedblright" + g2="afii10069" + k="16" /> + <hkern g1="quoteright,quotedblright" + g2="afii10099" + k="-5" /> + <hkern g1="quoteright,quotedblright" + g2="afii10105" + k="6" /> + <hkern g1="quoteright,quotedblright" + g2="afii10108" + k="-5" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10041" + k="32" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10051" + k="10" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10036,afii10044,afii10060" + k="12" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10037,afii10062" + k="6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10024" + k="5" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10017" + k="5" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10054" + k="8" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10039" + k="8" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10049" + k="6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10099" + k="6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10084,afii10092" + k="-7" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10105" + k="5" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10108" + k="5" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10085,afii10110" + k="6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10097" + k="6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10072" + k="6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="afii10087" + k="7" /> + </font> +</defs></svg> diff --git a/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.ttf b/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.ttf new file mode 100644 index 0000000..c9454bb Binary files /dev/null and b/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.ttf differ diff --git a/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.woff b/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.woff new file mode 100644 index 0000000..0100d15 Binary files /dev/null and b/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.woff differ diff --git a/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.woff2 b/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.woff2 new file mode 100644 index 0000000..5878e53 Binary files /dev/null and b/site/css/font/a89cf050c859a23e4b6d9cf5989acf9e.woff2 differ diff --git a/site/css/font/c38f2cc711985becf7550d75271b1175.eot b/site/css/font/c38f2cc711985becf7550d75271b1175.eot new file mode 100644 index 0000000..4e7aed0 Binary files /dev/null and b/site/css/font/c38f2cc711985becf7550d75271b1175.eot differ diff --git a/site/css/font/c38f2cc711985becf7550d75271b1175.svg b/site/css/font/c38f2cc711985becf7550d75271b1175.svg new file mode 100644 index 0000000..88a1975 --- /dev/null +++ b/site/css/font/c38f2cc711985becf7550d75271b1175.svg @@ -0,0 +1,5240 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<svg> +<metadata> +Created by FontForge 20120731 at Fri Jul 6 13:06:25 2018 + By www +Digitised data (c) 2004 Monotype Imaging. All Rights Reserved. Neo Sans is designed by Sebastian Lester. +</metadata> +<defs> +<font id="NeoSansPro-Medium" horiz-adv-x="630" > + <font-face + font-family="Neo Sans Pro Medium" + font-weight="500" + font-stretch="normal" + units-per-em="1000" + panose-1="2 11 7 4 3 5 4 4 2 4" + ascent="765" + descent="-235" + x-height="564" + cap-height="743" + bbox="-73 -216 1475 1000" + underline-thickness="71" + underline-position="-8" + unicode-range="U+0020-FB04" + /> +<missing-glyph horiz-adv-x="500" +d="M12 665h475v-665h-475v665zM250 375l161 243h-323zM60 91l7 10t18 27t25.5 39t29.5 45q35 54 81 121l-161 242v-484zM278 333l162 -243v485zM250 290l-162 -242h323z" /> + <glyph glyph-name="fi" unicode="fi" horiz-adv-x="657" +d="M375 690q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5v-49h313q8 0 14 -6t6 -14v-523q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v444h-201v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14 +t14 6h89v49q0 48 12.5 79t35 49t54.5 25t71 7q18 0 32 -2.5t28 -5.5q6 -2 12 -5.5t6 -10.5v-59zM592 659q0 -8 -6 -14t-14 -6h-97q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h97q8 0 14 -6t6 -14v-88z" /> + <glyph glyph-name="fl" unicode="fl" horiz-adv-x="659" +d="M589 21q0 -8 -5.5 -14.5t-13.5 -6.5h-93q-8 0 -14 6.5t-6 14.5v652h-112q-30 0 -47.5 -2.5t-26.5 -9t-12 -18.5t-3 -30v-49h96q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5t-14 -5.5h-96v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5 +t-6 12.5v46q0 8 6 14t14 6h89v49q0 48 10.5 79t34 49t62.5 25t96 7q9 0 32.5 -1t49 -2.5t48 -3.5t29.5 -5h84q8 0 13.5 -6t5.5 -14v-720v0z" /> + <glyph glyph-name="f_f" unicode="ff" horiz-adv-x="728" +d="M708 690q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5v-49h96q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5t-14 -5.5h-96v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444h-201v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14 +q-8 2 -14 6.5t-6 12.5v46q0 8 6 14t14 6h89v49q0 48 12.5 79t35 49t54.5 25t71 7q18 0 32 -2.5t28 -5.5q6 -2 12 -5.5t6 -10.5v-59q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5v-49h201v49q0 48 12.5 79t35 49t54.5 25t71 7q18 0 32 -2.5t28 -5.5q6 -2 12 -5.5 +t6 -10.5v-59v0z" /> + <glyph glyph-name="f_f_i" unicode="ffi" horiz-adv-x="1001" +d="M933 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v444h-207v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444h-206v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14t14 6h89v49 +q0 48 12.5 79t35 49t54.5 25t71 7q18 0 32 -2.5t28 -5.5q6 -2 12 -5.5t6 -10.5v-59q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5v-49h206v49q0 48 12.5 79t35 49t54.5 25t71 7q18 0 32 -2.5t28 -5.5q6 -2 12 -5.5t6 -10.5v-59q0 -9 -5 -13t-10 -4h-45 +q-36 0 -47.5 -11.5t-11.5 -48.5v-49h319q8 0 14 -6t6 -14v-523zM936 659q0 -8 -6 -14t-14 -6h-97q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h97q8 0 14 -6t6 -14v-88z" /> + <glyph glyph-name="f_f_l" unicode="ffl" horiz-adv-x="997" +d="M462 613q0 48 10.5 79t34 49t62.5 25t96 7q9 0 32.5 -1t49 -2.5t48 -3.5t29.5 -5h84q8 0 13.5 -6t5.5 -14v-720q0 -8 -5.5 -14.5t-13.5 -6.5h-93q-8 0 -14 6.5t-6 14.5v652h-112q-30 0 -47.5 -2.5t-26.5 -9t-12 -18.5t-3 -30v-49h96q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5 +t-14 -5.5h-96v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444h-206v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14t14 6h89v49q0 48 12.5 79t35 49t54.5 25t71 7q18 0 32 -2.5t28 -5.5 +q6 -2 12 -5.5t6 -10.5v-59q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5v-49h206v49z" /> + <glyph glyph-name="f_b" unicode="fb" horiz-adv-x="972" +d="M795 320q0 31 -4.5 57t-16.5 45t-33 30t-53 11q-18 0 -46.5 -2t-49.5 -5v-349q14 -3 41.5 -5t54.5 -2q32 0 53 11t33 30t16.5 45t4.5 57v77zM592 564q28 4 53 5.5t43 1.5q121 0 180 -66.5t59 -184.5v-77q0 -118 -59 -184.5t-180 -66.5q-48 0 -101 7t-100 19 +q-17 5 -22 10.5t-5 16.5v628h-115q-30 0 -47.5 -2.5t-26.5 -9t-12 -18.5t-3 -30v-49h96q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5t-14 -5.5h-96v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14t14 6h89v49q0 48 10.5 79 +t34 49t62.5 25t96 7q9 0 33 -1t50 -2.5t49 -3.5t30 -5h84q8 0 13.5 -6t5.5 -14v-177z" /> + <glyph glyph-name="f_f_b" unicode="ffb" horiz-adv-x="1310" +d="M1134 320q0 31 -4.5 57t-16.5 45t-33 30t-53 11q-18 0 -46.5 -2t-49.5 -5v-349q14 -3 41.5 -5t54.5 -2q32 0 53 11t33 30t16.5 45t4.5 57v77zM256 465v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14t14 6h89 +v49q0 48 12 79t34 49t52 25t65 7q20 0 38 -2.5t32 -5.5q11 -3 14.5 -6t3.5 -10v-59q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5v-49h207v49q0 48 10.5 79t34 49t62.5 25t96 7q9 0 33 -1t50 -2.5t49 -3.5t30 -5h84q8 0 13.5 -6t5.5 -14v-177q28 4 53 5.5t43 1.5 +q121 0 180 -66.5t59 -184.5v-77q0 -118 -59 -184.5t-180 -66.5q-48 0 -101 7t-100 19q-17 5 -22 10.5t-5 16.5v628h-115q-30 0 -47.5 -2.5t-26.5 -9t-12 -18.5t-3 -30v-49h96q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5t-14 -5.5h-96v-444q0 -8 -6 -14.5t-14 -6.5h-91 +q-8 0 -14.5 6.5t-7.5 14.5v444h-206z" /> + <glyph glyph-name="f_f_h" unicode="ffh" horiz-adv-x="1325" +d="M256 465v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14t14 6h89v49q0 48 12 79t34 49t52 25t65 7q20 0 38 -2.5t32 -5.5q11 -3 14.5 -6t3.5 -10v-59q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5 +v-49h207v49q0 48 10.5 79t34 49t62.5 25t96 7q9 0 33 -1t50 -2.5t49 -3.5t30 -5h83q8 0 13.5 -6t5.5 -14v-207q29 17 63 27t88 10q52 0 86.5 -17t55 -47t29 -70.5t8.5 -86.5v-329q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v329q0 33 -3.5 54t-12.5 33t-25 17t-41 5 +q-51 0 -116 -34v-404q0 -8 -6 -14.5t-14 -6.5h-93q-8 0 -13.5 6.5t-5.5 14.5v652h-114q-30 0 -47.5 -2.5t-27 -9t-12.5 -18.5t-3 -30v-49h96q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5t-14 -5.5h-96v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444h-206z" /> + <glyph glyph-name="f_f_k" unicode="ffk" horiz-adv-x="1282" +d="M256 465v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14t14 6h89v49q0 48 12.5 79t35 49t54.5 25t71 7q18 0 32 -2.5t28 -5.5q6 -2 12 -5.5t6 -10.5v-59q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5 +v-49h207v49q0 48 10.5 79t34 49t62.5 25t96 7q9 0 33 -1t50 -2.5t49 -3.5t30 -5h83q8 0 13.5 -6t5.5 -14v-417l171 228q5 7 11.5 9.5t11.5 2.5h112q15 0 15 -11q0 -5 -4 -10l-201 -247l203 -276q3 -5 3 -8q0 -5 -4 -8.5t-10 -3.5h-122q-8 0 -16 6.5t-13 13.5l-157 228v-227 +q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v652h-114q-30 0 -47.5 -2.5t-27 -9t-12.5 -18.5t-3 -30v-49h96q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5t-14 -5.5h-96v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444h-206z" /> + <glyph glyph-name="f_h" unicode="fh" horiz-adv-x="987" +d="M592 534q29 17 63 27t88 10q52 0 86.5 -17t55 -47t29 -70.5t8.5 -86.5v-329q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v329q0 33 -3.5 54t-12.5 33t-25 17t-41 5q-51 0 -116 -34v-404q0 -8 -6 -14.5t-14 -6.5h-93q-8 0 -13.5 6.5t-5.5 14.5v652h-114 +q-30 0 -47.5 -2.5t-27 -9t-12.5 -18.5t-3 -30v-49h96q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5t-14 -5.5h-96v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14t14 6h90v49q0 48 10.5 79t34 49t62.5 25t96 7q9 0 33 -1 +t50 -2.5t49 -3.5t30 -5h83q8 0 13.5 -6t5.5 -14v-207z" /> + <glyph glyph-name="f_j" unicode="fj" horiz-adv-x="663" +d="M595 -42q0 -46 -10 -76.5t-29 -48.5t-46.5 -25.5t-62.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v507h-207v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14 +t14 6h89v49q0 48 12.5 79t35 49t54.5 25t71 7q18 0 32 -2.5t28 -5.5q6 -2 12 -5.5t6 -10.5v-59q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5v-49h319q8 0 14 -6t6 -14v-586zM598 659q0 -8 -6.5 -14t-14.5 -6h-96q-8 0 -14 6t-6 14v88q0 8 6 14t14 6h96 +q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="f_f_j" unicode="ffj" horiz-adv-x="1001" +d="M933 -42q0 -46 -10 -76.5t-29 -48.5t-46.5 -25.5t-62.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v507h-207v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444h-206v-444q0 -8 -6 -14.5t-14 -6.5h-91 +q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14t14 6h89v49q0 48 12.5 79t35 49t54.5 25t71 7q18 0 32 -2.5t28 -5.5q6 -2 12 -5.5t6 -10.5v-59q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5v-49h206v49q0 48 12.5 79t35 49t54.5 25t71 7 +q18 0 32 -2.5t28 -5.5q6 -2 12 -5.5t6 -10.5v-59q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5v-49h319q8 0 14 -6t6 -14v-586zM936 659q0 -8 -6.5 -14t-14.5 -6h-96q-8 0 -14 6t-6 14v88q0 8 6 14t14 6h96q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="f_k" unicode="fk" horiz-adv-x="944" +d="M592 324l171 228q5 7 11.5 9.5t11.5 2.5h112q15 0 15 -11q0 -5 -4 -10l-201 -247l203 -276q3 -5 3 -8q0 -5 -4 -8.5t-10 -3.5h-122q-8 0 -16 6.5t-13 13.5l-157 228v-227q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v652h-114q-30 0 -47.5 -2.5t-27 -9t-12.5 -18.5 +t-3 -30v-49h96q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5t-14 -5.5h-96v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14t14 6h90v49q0 48 10.5 79t34 49t62.5 25t96 7q9 0 33 -1t50 -2.5t49 -3.5t30 -5h83q8 0 13.5 -6 +t5.5 -14v-417z" /> + <glyph glyph-name=".notdef" horiz-adv-x="500" +d="M12 665h475v-665h-475v665zM250 375l161 243h-323zM60 91l7 10t18 27t25.5 39t29.5 45q35 54 81 121l-161 242v-484zM278 333l162 -243v485zM250 290l-162 -242h323z" /> + <glyph glyph-name=".null" horiz-adv-x="0" + /> + <glyph glyph-name="nonmarkingreturn" horiz-adv-x="250" + /> + <glyph glyph-name="space" unicode=" " horiz-adv-x="250" + /> + <glyph glyph-name="numbersign" unicode="#" horiz-adv-x="684" +d="M634 524l-5 -45q-1 -8 -6.5 -14t-13.5 -6h-13t-23 -0.5t-27.5 -0.5h-25.5l-16 -177h85q8 0 14 -5t6 -13v-2l-5 -46q-1 -8 -6.5 -14t-13.5 -6h-88l-15 -176q-1 -8 -5.5 -13.5t-12.5 -5.5h-79q-8 0 -12 5t-4 12v2l15 176h-130l-15 -176q-1 -8 -5.5 -13.5t-12.5 -5.5h-80 +q-7 0 -11.5 5t-4.5 12v2l15 176h-83q-8 0 -14 5t-6 13v2l5 46q1 8 6.5 14t13.5 6h86l16 177l-81 1q-8 0 -14 5t-6 13v2l5 45q1 8 6.5 14t13.5 6h83l16 180q1 8 6 13.5t13 5.5h80q7 0 11 -5t4 -12v-2l-16 -180h130l16 180q1 8 6 13.5t13 5.5h79q8 0 11.5 -5t3.5 -12v-2 +l-16 -180h87q8 0 14 -5t6 -13v-2zM277 458l-16 -177h130l16 177h-130z" /> + <glyph glyph-name="dollar" unicode="$" +d="M555 201q0 -32 -9 -64t-30 -59.5t-55.5 -48t-84.5 -30.5v-91q0 -8 -6 -14t-14 -6h-91q-8 0 -14 6t-6 14v85q-39 2 -70.5 6.5t-59.5 10.5q-8 2 -13.5 7t-5.5 13v72q0 8 5.5 13.5t13.5 5.5h2q15 -2 39.5 -3.5t50.5 -3t49.5 -2.5t37.5 -1q67 0 91.5 23t24.5 67q0 15 -4 26.5 +t-14 22.5t-26 22.5t-41 26.5l-132 79q-35 21 -57.5 42t-36 43.5t-19 47t-5.5 50.5q0 34 9 64.5t29 54.5t52.5 40.5t79.5 24.5v84q0 8 6 14t14 6h91q8 0 14 -6t6 -14v-80q42 -2 81.5 -6.5t59.5 -9.5q8 -2 13 -6.5t5 -12.5v-74q0 -8 -4.5 -13t-12.5 -5h-2q-50 5 -99 7.5 +t-98 2.5q-56 0 -80.5 -18.5t-24.5 -52.5q0 -12 3.5 -22.5t13 -21t25.5 -21.5t40 -24l120 -67q41 -23 68 -46.5t42.5 -48.5t22 -52t6.5 -57z" /> + <glyph glyph-name="percent" unicode="%" horiz-adv-x="811" +d="M772 162q0 -86 -37 -127t-105 -41t-105.5 41t-37.5 127v82q0 86 37.5 127t105.5 41t105 -41t37 -127v-82zM674 735q0 -5 -4 -12l-417 -705q-6 -11 -10.5 -16t-12.5 -5h-84q-10 0 -10 9q0 7 4 12l417 705q7 11 11.5 15.5t12.5 4.5h84q9 0 9 -8zM325 499q0 -86 -37 -127 +t-105 -41t-105.5 41t-37.5 127v82q0 86 37.5 126.5t105.5 40.5t105 -40.5t37 -126.5v-82zM687 244q0 53 -15 73t-42 20t-42.5 -20t-15.5 -73v-82q0 -53 15.5 -73t42.5 -20t42 20t15 73v82zM240 581q0 53 -15 73t-42 20t-42.5 -20t-15.5 -73v-82q0 -54 15.5 -74t42.5 -20 +t42 20t15 74v82z" /> + <glyph glyph-name="ampersand" unicode="&#x26;" horiz-adv-x="718" +d="M687 11q0 -11 -11 -11h-112q-5 0 -8.5 1.5t-8.5 6.5l-37 39q-38 -26 -85.5 -40.5t-104.5 -14.5q-54 0 -102 10.5t-84.5 34t-57.5 60t-21 87.5v10q0 31 9 57.5t26.5 49t43 43t58.5 40.5l-7 8q-32 37 -51 64t-28.5 48.5t-12.5 38.5t-3 34v9q0 74 57 119.5t171 45.5 +q100 0 157.5 -45t57.5 -120v-9q0 -36 -12.5 -65t-33.5 -53t-47.5 -44t-54.5 -37l-24 -15l150 -160q14 31 20 67t6 76v12q0 8 4.5 14t12.5 6h73q8 0 13 -6t5 -14v-12q0 -64 -15 -120t-45 -101l98 -104q4 -4 4 -10zM414 586q0 34 -24 52.5t-72 18.5q-51 0 -80.5 -18t-29.5 -53 +v-9q0 -12 1.5 -23.5t8 -25.5t20.5 -33t40 -44l9 -9l30 18q28 17 46.5 30.5t30 27t16 27.5t4.5 32v9zM266 306q-45 -27 -59.5 -52t-14.5 -60v-10q0 -48 36.5 -71t91.5 -23q38 0 68 8t53 22z" /> + <glyph glyph-name="quoteright" unicode="&#x2019;" horiz-adv-x="215" +d="M196 750q0 -5 -1 -8l-68 -207q-5 -19 -19 -19h-80q-9 0 -9 10q0 6 1 9l51 207q4 19 20 19h94q11 0 11 -11z" /> + <glyph glyph-name="parenleft" unicode="(" horiz-adv-x="333" +d="M303 -185q0 -10 -12 -10h-71q-11 0 -19.5 3t-14.5 11q-32 45 -56.5 92.5t-41 101.5t-25 116t-8.5 135v19q0 145 33.5 251t97.5 195q6 8 14.5 11t19.5 3h71q12 0 12 -10q0 -8 -5 -16q-21 -38 -40.5 -83.5t-34.5 -99.5t-24 -116.5t-9 -134.5v-19q0 -72 9 -134.5t24 -116 +t34.5 -99t40.5 -83.5q5 -8 5 -16z" /> + <glyph glyph-name="parenright" unicode=")" horiz-adv-x="333" +d="M278 264q0 -73 -8.5 -135t-25 -116t-41 -101.5t-56.5 -92.5q-6 -8 -14.5 -11t-19.5 -3h-71q-12 0 -12 10q0 8 5 16q21 38 40.5 83.5t34.5 99t24 116t9 134.5v19q0 72 -9 134.5t-24 116.5t-34.5 99.5t-40.5 83.5q-5 8 -5 16q0 10 12 10h71q11 0 19.5 -3t14.5 -11 +q64 -89 97.5 -195t33.5 -251v-19v0z" /> + <glyph glyph-name="asterisk" unicode="*" horiz-adv-x="473" +d="M435 583q0 -11 -15 -16l-119 -36l74 -101q5 -7 5 -14t-6 -11l-41 -30q-5 -3 -9 -3q-8 0 -15 10l-72 102l-72 -102q-7 -10 -15 -10q-5 0 -9 3l-42 30q-6 4 -6 11t5 14l75 101l-118 36q-16 5 -16 16q0 3 1 5l16 49q3 10 13 10q4 0 10 -2l119 -39l-2 125q0 8 3.5 13.5 +t11.5 5.5h52q8 0 11.5 -6t3.5 -14l-1 -124l118 39q6 2 10 2q10 0 13 -10l16 -49q1 -2 1 -5z" /> + <glyph glyph-name="plus" unicode="+" +d="M548 356q0 -8 -6 -12t-14 -4h-162v-161q0 -8 -4 -14t-12 -6h-70q-8 0 -12 6t-4 14v161h-161q-8 0 -14 4t-6 12v70q0 8 6 12t14 4h161v162q0 8 4 14t12 6h70q8 0 12 -6t4 -14v-162h162q8 0 14 -4t6 -12v-70v0z" /> + <glyph glyph-name="comma" unicode="," horiz-adv-x="259" +d="M203 140q0 -1 -2 -7l-87 -210q-4 -9 -7.5 -14.5t-11.5 -5.5h-69q-15 0 -15 14q0 4 1 6l61 210q6 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="hyphen" unicode="-" horiz-adv-x="321" +d="M278 276q0 -18 -19 -18h-196q-8 0 -14 5t-6 13v63q0 8 6 13.5t14 5.5h196q19 0 19 -19v-63v0z" /> + <glyph glyph-name="period" unicode="." horiz-adv-x="259" +d="M194 20q0 -8 -6 -14t-14 -6h-89q-8 0 -14 6t-6 14v113q0 8 6 13.5t14 5.5h89q8 0 14 -5.5t6 -13.5v-113v0z" /> + <glyph glyph-name="slash" unicode="/" horiz-adv-x="365" +d="M234 723q2 8 6.5 14t12.5 6h81q8 0 13 -4.5t2 -15.5l-217 -702q-2 -8 -6.5 -14.5t-12.5 -6.5h-81q-11 0 -14.5 6.5t-1.5 14.5l218 702v0z" /> + <glyph glyph-name="zero" unicode="0" +d="M576 334q0 -93 -18 -158.5t-52 -106t-82 -59t-109 -18.5t-109.5 18.5t-82 59t-51.5 106t-18 158.5v74q0 93 18 158.5t51.5 106.5t82 59.5t109.5 18.5t109 -18.5t82 -59.5t52 -106.5t18 -158.5v-74zM437 408q0 68 -9.5 112.5t-26 70.5t-38.5 36.5t-48 10.5t-48 -10.5 +t-38.5 -36.5t-26 -70.5t-9.5 -112.5v-74q0 -68 9.5 -112t26 -70t38.5 -36.5t48 -10.5t48 10.5t38.5 36.5t26 70t9.5 112v74z" /> + <glyph glyph-name="one" unicode="1" +d="M129 0q-8 0 -14 6t-6 14v76q0 8 6 13t14 5h134v492l-131 -40q-5 -2 -12 -2q-11 0 -11 12v94q0 8 7 11l177 58q5 2 10 3t13 1h66q19 0 19 -19v-610h134q8 0 14 -5t6 -13v-76q0 -8 -6 -14t-14 -6h-406z" /> + <glyph glyph-name="two" unicode="2" +d="M553 568q0 -63 -31.5 -107.5t-93.5 -86.5l-90 -60q-71 -47 -106.5 -90.5t-35.5 -105.5v-4h329q8 0 14 -5t6 -13v-76q0 -8 -6 -14t-14 -6h-424q-8 0 -14 6t-6 14v98q0 41 12 79.5t33 72t48.5 61.5t58.5 49l99 66q29 19 47 33t28 26.5t13.5 27t3.5 35.5q0 41 -27 57.5 +t-90 16.5q-22 0 -47.5 -1.5t-52 -3.5t-52.5 -4.5t-48 -5.5h-2q-8 0 -13 6t-5 14v60q0 8 5.5 12.5t13.5 6.5q19 5 44 9.5t51.5 8t54 5.5t51.5 2q131 0 188.5 -45t57.5 -138z" /> + <glyph glyph-name="three" unicode="3" +d="M546 208q0 -56 -19.5 -96.5t-53 -67t-79.5 -39.5t-99 -13q-56 0 -102.5 7t-89.5 18q-8 2 -13.5 6.5t-5.5 12.5v62q0 8 5 13t13 5h2q60 -6 107.5 -10t83.5 -4q61 0 86.5 26.5t25.5 79.5v21q0 20 -3.5 38t-14 32t-28.5 22.5t-46 8.5h-177q-19 0 -19 19v63q0 19 19 19h177 +q28 0 46 8t28.5 21.5t14 31t3.5 37.5v16q0 19 -4.5 36.5t-17 30.5t-34.5 21t-56 8q-27 0 -47.5 -1t-41.5 -2.5t-45 -4.5t-57 -6h-2q-8 0 -13 5t-5 13v62q0 8 5.5 12.5t13.5 6.5q43 11 89.5 18t102.5 7q54 0 100 -11t79.5 -35.5t52.5 -63.5t19 -96v-16q0 -53 -22.5 -89.5 +t-63.5 -58.5q42 -23 64 -63.5t22 -88.5v-21v0z" /> + <glyph glyph-name="four" unicode="4" +d="M592 199q0 -8 -6 -14t-14 -6h-74v-159q0 -8 -5 -14t-13 -6h-103q-8 0 -13 6t-5 14v159h-300q-8 0 -14 6t-6 14v81q0 18 11 32l308 413q5 8 11.5 13t17.5 5h91q8 0 14 -6t6 -14v-434h74q8 0 14 -6t6 -14v-70zM360 543q0 6 -3 6t-7 -6l-175 -243q-3 -3 -3 -6q0 -5 8 -5h180 +v254z" /> + <glyph glyph-name="five" unicode="5" +d="M552 237q0 -113 -63 -179t-194 -66q-45 0 -97 7t-95 18q-8 2 -13.5 6.5t-5.5 15.5v59q0 8 5 13t13 5h2q60 -8 107.5 -11t83.5 -3q35 0 58 9.5t36.5 27t18.5 42.5t5 56v5q0 62 -41.5 87t-135.5 25h-135q-5 0 -8 4.5t-3 8.5v2l32 356q1 8 6.5 13t13.5 5h363q8 0 14 -5.5 +t6 -13.5v-76q0 -8 -6 -13.5t-14 -5.5h-271l-15 -166h17q57 0 113.5 -7.5t101.5 -31t73 -67t28 -115.5v-5v0z" /> + <glyph glyph-name="six" unicode="6" +d="M580 240q0 -56 -17 -101.5t-50 -78t-81 -50.5t-110 -18q-56 0 -104 18t-83 55.5t-55 96t-20 139.5v115q0 90 17.5 154t52.5 104t86.5 58.5t120.5 18.5q66 0 113 -7t72 -12q11 -2 17 -6.5t6 -14.5v-62q0 -21 -19 -21h-4q-14 2 -36.5 4.5t-48 4.5t-52 3t-48.5 1 +q-38 0 -64.5 -9t-43 -30.5t-24.5 -56.5t-9 -86q24 5 61 8t78 3q49 0 93 -11.5t78 -37t54 -68t20 -103.5v-10zM444 250q0 35 -11 58t-30 36.5t-44 19t-52 5.5q-22 0 -55 -3t-56 -8v-57q0 -63 9.5 -102t26 -61t40 -30t50.5 -8q25 0 47.5 6.5t39 22.5t26 43t9.5 68v10z" /> + <glyph glyph-name="seven" unicode="7" +d="M554 649q0 -8 -5 -18.5t-13 -27.5l-270 -584q-5 -11 -11 -15t-16 -4h-104q-7 0 -10.5 4.5t-3.5 10.5q0 3 2 9l287 598v2q0 5 -5 5h-308q-8 0 -14 5t-6 13v77q0 8 6 13.5t14 5.5h417q17 0 28.5 -11.5t11.5 -28.5v-54v0z" /> + <glyph glyph-name="eight" unicode="8" +d="M577 215q0 -59 -21 -101.5t-56.5 -69.5t-82 -39.5t-97.5 -12.5h-10q-51 0 -97.5 12.5t-81.5 39.5t-56 69.5t-21 101.5v9q0 51 25 92.5t66 70.5q-46 30 -66.5 69.5t-20.5 86.5v4q0 56 20 95t54.5 63t80.5 35t97 11h10q51 0 97.5 -11t81 -35t55 -63t20.5 -95v-4 +q0 -47 -21 -86.5t-67 -69.5q41 -29 66 -70.5t25 -92.5v-9zM445 543q0 51 -29.5 78.5t-95.5 27.5h-10q-66 0 -94.5 -27.5t-28.5 -78.5v-4q0 -44 25 -73.5t83 -29.5h41q58 0 83.5 29.5t25.5 73.5v4zM442 224q0 18 -5.5 37.5t-18 35.5t-32.5 26.5t-50 10.5h-41q-30 0 -50 -10.5 +t-32.5 -26.5t-18 -35.5t-5.5 -37.5v-9q0 -51 30 -85t91 -34h10q61 0 91.5 34t30.5 85v9z" /> + <glyph glyph-name="nine" unicode="9" +d="M569 327q0 -90 -17.5 -154t-52.5 -104t-86.5 -58.5t-120.5 -18.5q-66 0 -113 7t-72 12q-11 2 -17 6.5t-6 14.5v62q0 21 19 21h4q14 -2 36.5 -4.5t48 -4.5t51.5 -3t49 -1q38 0 64.5 9t43 30.5t24.5 56.5t9 86q-24 -5 -61 -8t-78 -3q-49 0 -93.5 11.5t-78 37t-53.5 67.5 +t-20 104v10q0 55 17 101t50 78.5t81 50.5t110 18q56 0 104 -18t83 -55.5t55 -96t20 -139.5v-115zM433 442q0 63 -9.5 102t-26 61t-40 30t-50.5 8q-26 0 -48 -6.5t-38.5 -22.5t-26 -43t-9.5 -68v-10q0 -35 11 -58t30 -36.5t44 -19t52 -5.5q22 0 55 3t56 8v57z" /> + <glyph glyph-name="colon" unicode=":" horiz-adv-x="259" +d="M194 414q0 -8 -6 -13.5t-14 -5.5h-89q-8 0 -14 5.5t-6 13.5v113q0 8 6 14t14 6h89q8 0 14 -6t6 -14v-113zM194 20q0 -8 -6 -14t-14 -6h-89q-8 0 -14 6t-6 14v113q0 8 6 13.5t14 5.5h89q8 0 14 -5.5t6 -13.5v-113z" /> + <glyph glyph-name="semicolon" unicode=";" horiz-adv-x="259" +d="M194 414q0 -8 -6 -13.5t-14 -5.5h-89q-8 0 -14 5.5t-6 13.5v113q0 8 6 14t14 6h89q8 0 14 -6t6 -14v-113zM196 140q0 -1 -2 -7l-87 -210q-4 -9 -7.5 -14.5t-11.5 -5.5h-69q-15 0 -15 14q0 4 1 6l61 210q6 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="less" unicode="&#x3c;" +d="M514 153q0 -5 -3.5 -9.5t-8.5 -4.5h-110q-8 0 -12.5 3t-9.5 8l-231 202q-12 11 -17.5 19t-5.5 20t5.5 20t17.5 19l231 202q5 5 9.5 8t12.5 3h110q5 0 8.5 -4.5t3.5 -9.5q0 -8 -6 -12l-260 -226l260 -226q6 -5 6 -12z" /> + <glyph glyph-name="equal" unicode="=" +d="M538 477q0 -8 -6 -12t-14 -4h-405q-8 0 -14 4t-6 12v70q0 8 6 12t14 4h405q8 0 14 -4t6 -12v-70zM538 235q0 -8 -6 -12t-14 -4h-405q-8 0 -14 4t-6 12v70q0 8 6 12t14 4h405q8 0 14 -4t6 -12v-70z" /> + <glyph glyph-name="greater" unicode="&#x3e;" +d="M514 391q0 -12 -5.5 -20t-17.5 -19l-231 -202q-5 -5 -9.5 -8t-12.5 -3h-110q-5 0 -8.5 4.5t-3.5 9.5q0 7 6 12l260 226l-260 226q-6 4 -6 12q0 5 3.5 9.5t8.5 4.5h110q8 0 12.5 -3t9.5 -8l231 -202q12 -11 17.5 -19t5.5 -20z" /> + <glyph glyph-name="question" unicode="?" horiz-adv-x="437" +d="M407 579q0 -14 -1.5 -28.5t-8.5 -32.5t-21.5 -40.5t-39.5 -52.5l-61 -72q-20 -24 -33 -41t-13 -41v-38q0 -8 -6 -13.5t-14 -5.5h-83q-19 0 -19 19v38q0 24 2.5 42t9.5 34.5t18 33t29 37.5l64 74q18 21 23.5 42t5.5 45v16q0 18 -13.5 27.5t-44.5 9.5q-37 0 -77 -3.5 +t-73 -7.5h-4q-17 0 -17 22v62q0 12 2.5 18.5t15.5 9.5q32 8 73 13t80 5q48 0 86.5 -7.5t65 -25.5t40.5 -48t14 -75v-16zM233 19q0 -8 -6 -13.5t-14 -5.5h-90q-8 0 -14 5.5t-6 13.5v113q0 8 6 14t14 6h90q8 0 14 -6t6 -14v-113z" /> + <glyph glyph-name="at" unicode="@" horiz-adv-x="772" +d="M737 362q0 -91 -26.5 -151.5t-75.5 -96.5t-117 -51t-150 -15q-76 0 -123 35.5t-47 107.5q0 5 0.5 9t0.5 9l9 117q7 85 59 125t135 40q10 0 26 -1.5t34.5 -3.5t37.5 -4.5t34 -5.5q23 -3 23 -26v-4l-29 -302q39 6 64.5 24.5t40.5 47t21 65.5t6 81q0 45 -14 87t-43.5 73.5 +t-75 50.5t-107.5 19q-132 0 -206 -65t-85 -183l-15 -158q-1 -9 -1.5 -17t-0.5 -16q0 -44 15 -81t46 -64t78 -42t111 -15q35 0 75.5 2t69.5 5h6q7 0 7 -9v-37q0 -12 -13 -13q-23 -3 -60 -6.5t-85 -3.5q-72 0 -132 18t-103 51.5t-67 83t-24 112.5v16t1 16l15 163 +q6 70 34 127.5t75 98.5t112.5 63t147.5 22q80 0 139.5 -25t98.5 -66.5t58.5 -95.5t19.5 -111zM446 397q-14 2 -27.5 3.5t-27.5 1.5q-38 0 -55 -18t-22 -62l-11 -112q-1 -5 -1 -9v-8q0 -31 17 -43.5t56 -12.5h20h14.5t13.5 1z" /> + <glyph glyph-name="A" unicode="A" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-106q-7 0 -12 5t-7 12l-46 190h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2z +M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176z" /> + <glyph glyph-name="B" unicode="B" horiz-adv-x="650" +d="M600 208q0 -60 -21.5 -101t-61 -66.5t-95.5 -37t-126 -11.5q-61 0 -105.5 3t-67.5 8q-25 5 -36.5 15.5t-11.5 38.5v630q0 27 10.5 38.5t34.5 15.5q20 3 64 6.5t103 3.5q68 0 124.5 -10.5t97.5 -34.5t63.5 -62.5t22.5 -95.5v-20q0 -50 -23 -90.5t-69 -60.5 +q46 -20 71.5 -57.5t25.5 -94.5v-17zM460 540q0 52 -38.5 74t-134.5 22q-18 0 -37.5 -0.5t-35.5 -1.5v-203h127q35 0 58 7.5t36.5 20.5t19 30.5t5.5 36.5v14zM464 223q0 21 -6 40t-20.5 33.5t-38 23.5t-58.5 9h-127v-220q18 0 42 -1t40 -1q48 0 80 6t51.5 19t28 32.5 +t8.5 45.5v13z" /> + <glyph glyph-name="C" unicode="C" horiz-adv-x="563" +d="M518 31q0 -11 -6 -15.5t-16 -7.5q-6 -2 -20.5 -4.5t-35.5 -5t-47 -4.5t-55 -2q-45 0 -95 13t-91.5 47.5t-69 93.5t-27.5 152v147q0 94 27.5 153.5t69 93.5t91.5 46.5t95 12.5q29 0 55 -2t47 -4.5t35.5 -5.5t20.5 -4q10 -3 16 -7.5t6 -15.5v-67q0 -9 -4.5 -15t-15.5 -6h-2 +q-13 1 -31.5 2.5t-39.5 2.5t-43 2t-42 1q-32 0 -58.5 -9.5t-45.5 -31t-30 -57.5t-11 -89v-147q0 -52 11 -88t30 -58t45.5 -31.5t58.5 -9.5q20 0 42 1t43 2t39.5 2.5t31.5 2.5h2q11 0 15.5 -6t4.5 -15v-67v0z" /> + <glyph glyph-name="D" unicode="D" horiz-adv-x="667" +d="M612 298q0 -149 -81.5 -227.5t-232.5 -78.5q-27 0 -56.5 1t-57 3t-50 4t-33.5 4q-13 2 -19.5 9t-6.5 22v673q0 15 6.5 22t19.5 9q11 2 33.5 4t50 4t57 3t56.5 1q151 0 232.5 -78.5t81.5 -227.5v-147zM474 445q0 56 -13.5 92.5t-37 58t-56 30t-69.5 8.5q-28 0 -48 -1 +t-36 -2v-519q16 -1 36 -2t48 -1q37 0 69.5 8.5t56 30t37 58t13.5 92.5v147z" /> + <glyph glyph-name="E" unicode="E" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64v0z" /> + <glyph glyph-name="F" unicode="F" horiz-adv-x="576" +d="M516 652q0 -8 -6 -14t-14 -6h-204q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-306q0 -8 -6 -14t-14 -6h-98q-8 0 -14 6t-6 14v526q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6 +t4.5 -15v-64v0z" /> + <glyph glyph-name="G" unicode="G" horiz-adv-x="635" +d="M560 33q0 -20 -19 -24q-38 -8 -89 -12.5t-129 -4.5q-41 0 -87.5 15t-87 50t-67 94t-26.5 148v144q0 89 25.5 148t65.5 94.5t87.5 50.5t92.5 15q36 0 69.5 -2t61.5 -5t50 -6t34 -5q19 -4 19 -21v-67q0 -11 -4 -16t-16 -5h-3q-35 3 -87 5.5t-124 2.5q-25 0 -48.5 -9.5 +t-42 -31.5t-29.5 -58.5t-11 -89.5v-144q0 -53 11.5 -89t30 -58t41.5 -31.5t45 -9.5q28 0 52 0.5t47 2.5v255q0 8 5.5 14t13.5 6h99q8 0 14 -6t6 -14v-336v0z" /> + <glyph glyph-name="H" unicode="H" horiz-adv-x="712" +d="M637 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v306h-284v-306q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-276h284v276q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="I" unicode="I" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="J" unicode="J" horiz-adv-x="289" +d="M214 -21q0 -80 -39.5 -113t-120.5 -33q-11 0 -24 1t-24.5 2.5t-20 2.5t-11.5 2q-10 3 -10 14v71q0 8 6 13t14 5h66q14 0 19.5 6.5t5.5 28.5v745q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-745v0z" /> + <glyph glyph-name="K" unicode="K" horiz-adv-x="643" +d="M615 9q0 -9 -15 -9h-134q-16 0 -23 11l-229 341v-332q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v703q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-318l245 329q4 5 9.5 6.5t13.5 1.5h114q19 0 19 -12q0 -7 -7 -16l-256 -331l258 -362q5 -8 5 -12z" /> + <glyph glyph-name="L" unicode="L" horiz-adv-x="516" +d="M496 27q0 -11 -4.5 -15t-15.5 -6q-11 -3 -31.5 -5.5t-44.5 -4.5t-49 -3t-45 -1q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v526q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-526q0 -50 17 -68t61 -18h184q8 0 14 -6t6 -14v-64v0z" /> + <glyph glyph-name="M" unicode="M" horiz-adv-x="792" +d="M717 15q0 -8 -5 -11.5t-12 -3.5h-101q-7 0 -11.5 6t-4.5 14v465q0 10 -3 10q-1 0 -5 -6l-96 -191q-5 -8 -13.5 -12.5t-18.5 -4.5h-101q-10 0 -18.5 4.5t-13.5 12.5l-97 191q-4 6 -5 6q-3 0 -3 -10v-465q0 -8 -4.5 -14t-11.5 -6h-101q-7 0 -12 3.5t-5 11.5v688 +q0 17 11.5 28.5t28.5 11.5h82q12 0 22 -6.5t15 -17.5l151 -306l6 -10.5t5 -3.5t5 3.5l6 10.5l151 306q5 11 15 17.5t22 6.5h82q17 0 28.5 -11.5t11.5 -28.5v-688v0z" /> + <glyph glyph-name="N" unicode="N" horiz-adv-x="712" +d="M637 40q0 -17 -11.5 -28.5t-28.5 -11.5h-101q-18 0 -33.5 4.5t-27.5 31.5l-222 487q-4 8 -9 8t-5 -8v-503q0 -8 -5.5 -14t-13.5 -6h-85q-8 0 -14 6t-6 14v683q0 17 11.5 28.5t28.5 11.5h108q16 0 25.5 -6t18.5 -26l233 -514q3 -8 8 -8t5 9v526q0 19 19 19h86q19 0 19 -19 +v-684v0z" /> + <glyph glyph-name="O" unicode="O" horiz-adv-x="680" +d="M625 304q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM485 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135 +q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135z" /> + <glyph glyph-name="P" unicode="P" horiz-adv-x="626" +d="M591 511q0 -66 -23.5 -111t-63 -72.5t-91.5 -39t-110 -11.5q-20 0 -46 1.5t-43 2.5v-261q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -14 6t-6 14v688q0 15 8.5 21.5t23.5 8.5q39 6 90 9.5t106 3.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-9zM453 520q0 63 -37.5 89.5 +t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-238q6 0 18.5 -0.5t26 -1t26 -1t18.5 -0.5q81 0 115.5 30t34.5 90v9z" /> + <glyph glyph-name="Q" unicode="Q" horiz-adv-x="690" +d="M630 304q0 -71 -16 -124.5t-45 -91t-69 -60t-89 -31.5v-21q0 -20 8.5 -26t21.5 -6h97q11 0 17.5 -4t6.5 -12v-62q0 -15 -22 -21q-15 -4 -45 -7.5t-54 -3.5q-36 0 -65.5 7.5t-51 24.5t-33.5 43.5t-12 64.5v23q-49 9 -89 31.5t-69 60t-45 91t-16 124.5v135q0 82 21.5 141.5 +t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM490 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135z" /> + <glyph glyph-name="R" unicode="R" horiz-adv-x="653" +d="M615 12q0 -12 -12 -12h-122q-8 0 -12 6t-8 14l-144 267h-14q-20 0 -46 1.5t-43 2.5v-271q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -14 6t-6 14v688q0 15 8.5 21.5t23.5 8.5q39 6 90 9.5t106 3.5q58 0 110 -11.5t91.5 -37.5t63 -69.5t23.5 -107.5v-9q0 -80 -36.5 -130 +t-98.5 -74l157 -292q2 -3 2 -8zM453 525q0 57 -37.5 82t-112.5 25q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-225q6 0 18.5 -0.5t26 -1t26 -1t18.5 -0.5q78 0 114 25t36 91v9z" /> + <glyph glyph-name="S" unicode="S" horiz-adv-x="570" +d="M525 201q0 -38 -13 -75.5t-43.5 -67t-81 -48t-125.5 -18.5q-57 0 -99 5t-78 13q-8 2 -13.5 7t-5.5 13v72q0 8 5.5 13.5t13.5 5.5h2q15 -2 39.5 -3.5t50.5 -3t49.5 -2.5t37.5 -1q67 0 91.5 23t24.5 67q0 15 -4 26.5t-14 22.5t-26 22.5t-41 26.5l-132 79q-35 21 -57.5 42 +t-36 43.5t-19 47t-5.5 50.5q0 41 13 76t42.5 60.5t77 39.5t117.5 14q25 0 53 -1.5t55 -4.5t49 -6t35 -6q8 -2 13 -6.5t5 -12.5v-74q0 -8 -4.5 -13t-12.5 -5h-2q-50 5 -99 7.5t-98 2.5q-56 0 -80.5 -18.5t-24.5 -52.5q0 -12 3.5 -22.5t13 -21t25.5 -21.5t40 -24l120 -67 +q41 -23 68 -46.5t42.5 -48.5t22 -52t6.5 -57z" /> + <glyph glyph-name="T" unicode="T" horiz-adv-x="579" +d="M554 645q0 -8 -6 -13t-14 -5h-175v-607q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v607h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h489q8 0 14 -5.5t6 -13.5v-79v0z" /> + <glyph glyph-name="U" unicode="U" horiz-adv-x="690" +d="M620 275q0 -80 -20.5 -134t-57 -87t-87 -47.5t-110.5 -14.5t-110.5 14.5t-87 47.5t-57 87t-20.5 134v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-449q0 -43 6 -74.5t21.5 -52.5t41.5 -31t67 -10q40 0 66.5 10t42 31t21.5 52.5t6 74.5v449q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-449v0z" /> + <glyph glyph-name="V" unicode="V" horiz-adv-x="656" +d="M632 726q0 -2 -0.5 -2.5t-0.5 -2.5l-164 -627q-9 -35 -26 -55t-36.5 -30.5t-40 -13.5t-36.5 -3t-36.5 3t-40 13.5t-36.5 30.5t-26 55l-164 627q0 2 -0.5 2.5t-0.5 2.5q0 8 5 12.5t13 4.5h106q7 0 12 -5t7 -12l145 -601q2 -9 5 -12.5t11 -3.5t11 3.5t5 12.5l145 601 +q2 7 7 12t12 5h106q8 0 13 -4.5t5 -12.5z" /> + <glyph glyph-name="W" unicode="W" horiz-adv-x="862" +d="M838 726l-94 -653q-7 -47 -29 -64t-61 -17h-54q-34 0 -53 18t-30 62l-79 330q-2 11 -6 11q-5 0 -7 -11l-79 -330q-11 -44 -30 -62t-53 -18h-54q-39 0 -61 17t-29 64l-94 653v3q0 7 5 10.5t12 3.5h106q6 0 11 -5t6 -13l72 -597q1 -7 1.5 -11t3.5 -4t3.5 4t2.5 11l86 351 +q5 18 18 31.5t45 13.5h69q32 0 45 -13.5t18 -31.5l86 -351q2 -7 2.5 -11t3.5 -4t3.5 4t1.5 11l72 597q1 8 6 13t11 5h106q7 0 12 -3.5t5 -10.5v-3z" /> + <glyph glyph-name="X" unicode="X" horiz-adv-x="650" +d="M627 12q0 -5 -4 -8.5t-12 -3.5h-118q-8 0 -14 5.5t-12 14.5l-147 236l-138 -236q-11 -20 -26 -20h-109q-16 0 -16 13q0 3 2 7l213 355l-219 349q-2 4 -2 6q0 13 16 13h118q8 0 14.5 -6t11.5 -13l146 -233l135 233q4 7 11 13t15 6h109q16 0 16 -13q0 -2 -2 -6l-210 -352 +l220 -352q2 -3 2 -8z" /> + <glyph glyph-name="Y" unicode="Y" horiz-adv-x="615" +d="M590 728q0 -2 -2 -8l-152 -347q-14 -33 -29 -49.5t-32 -23.5v-280q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -13.5 6t-5.5 14v280q-17 7 -32 23.5t-29 49.5l-151 347q-2 6 -2 8q0 6 4 10.5t12 4.5h111q7 0 12 -5t7 -11l120 -298q5 -13 9.5 -16.5t7.5 -3.5q4 0 8.5 3.5t9.5 16.5 +l120 298q2 6 7 11t12 5h110q8 0 12.5 -4.5t4.5 -10.5z" /> + <glyph glyph-name="Z" unicode="Z" horiz-adv-x="588" +d="M548 20q0 -8 -6 -14t-14 -6h-437q-22 0 -36.5 8.5t-14.5 28.5v55q0 9 2.5 18t10.5 20l317 475q3 4 3 9q0 8 -10 8h-278q-19 0 -19 18v84q0 19 19 19h403q22 0 37.5 -9t15.5 -29v-58q0 -11 -4 -21.5t-10 -19.5l-312 -467q-4 -5 -4 -11t9 -6h308q8 0 14 -5t6 -13v-84v0z +" /> + <glyph glyph-name="bracketleft" unicode="[" horiz-adv-x="356" +d="M328 -178q0 -16 -19 -16h-222q-8 0 -12.5 5.5t-4.5 13.5v899q0 8 4.5 13.5t12.5 5.5h222q19 0 19 -16v-73q0 -17 -19 -17h-105v-725h105q19 0 19 -17v-73v0z" /> + <glyph glyph-name="backslash" unicode="\" horiz-adv-x="385" +d="M371 8q0 -6 -5 -11t-12 -5h-101q-8 0 -12 6.5t-6 14.5l-219 710q0 2 -0.5 2.5t-0.5 2.5q0 6 5 10.5t12 4.5h100q8 0 13 -6t7 -14l218 -710q0 -2 0.5 -2.5t0.5 -2.5z" /> + <glyph glyph-name="bracketright" unicode="]" horiz-adv-x="356" +d="M286 -175q0 -8 -4.5 -13.5t-12.5 -5.5h-222q-19 0 -19 16v73q0 17 19 17h105v725h-105q-19 0 -19 16v73q0 17 19 17h222q8 0 12.5 -5.5t4.5 -13.5v-899v0z" /> + <glyph glyph-name="asciicircum" unicode="^" +d="M548 573q0 -9 -12 -9h-102q-11 0 -16.5 4t-13.5 12l-89 102l-89 -102q-8 -8 -13.5 -12t-16.5 -4h-102q-12 0 -12 9q0 5 5 12l113 148q8 11 14 14.5t18 3.5h166q12 0 18 -3.5t14 -14.5l113 -148q5 -7 5 -12z" /> + <glyph glyph-name="underscore" unicode="_" horiz-adv-x="523" +d="M554 -98q0 -8 -6 -12t-14 -4h-545q-8 0 -14 4t-6 12v39q0 8 6 12t14 4h545q8 0 14 -4t6 -12v-39v0z" /> + <glyph glyph-name="quoteleft" unicode="&#x2018;" horiz-adv-x="215" +d="M196 751q0 -6 -1 -9l-51 -207q-4 -19 -20 -19h-94q-11 0 -11 11q0 5 1 8l68 207q5 19 19 19h80q9 0 9 -10z" /> + <glyph glyph-name="a" unicode="a" horiz-adv-x="548" +d="M483 20q0 -8 -6 -14t-14 -6h-85q-8 0 -14 6t-6 14v16q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11 +t94.5 5q107 0 163.5 -47t56.5 -144v-360zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123z" /> + <glyph glyph-name="b" unicode="b" horiz-adv-x="577" +d="M532 243q0 -118 -59 -184.5t-180 -66.5q-48 0 -101 7t-100 19q-17 5 -22 10.5t-5 16.5v696q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-177q28 4 53 5.5t43 1.5q121 0 180 -66.5t59 -184.5v-77zM400 320q0 31 -4.5 57t-16.5 45t-33 30t-53 11q-18 0 -46.5 -2t-49.5 -5v-349 +q14 -3 41.5 -5t54.5 -2q32 0 53 11t33 30t16.5 45t4.5 57v77z" /> + <glyph glyph-name="c" unicode="c" horiz-adv-x="468" +d="M423 31q0 -12 -4 -17.5t-17 -8.5q-17 -5 -50 -9t-79 -4q-49 0 -90.5 15t-72 45.5t-48 76t-17.5 106.5v93q0 61 17.5 106.5t48 76t72 45.5t90.5 15q46 0 79 -4t50 -9q13 -3 17 -8.5t4 -17.5v-65q0 -8 -5 -11.5t-13 -3.5h-3q-15 2 -28 3.5t-27 2t-32 1t-42 0.5 +q-18 0 -35 -6t-30.5 -20.5t-22 -40t-8.5 -64.5v-93q0 -39 8.5 -64.5t22 -40t30.5 -20.5t35 -6q24 0 42 0.5t32 1t27 2t28 3.5h3q8 0 13 -3.5t5 -11.5v-65v0z" /> + <glyph glyph-name="d" unicode="d" horiz-adv-x="577" +d="M512 45q0 -11 -5 -16.5t-22 -10.5q-47 -12 -100 -19t-101 -7q-121 0 -180 66.5t-59 184.5v77q0 118 59 184.5t180 66.5q18 0 43 -1.5t53 -5.5v177q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-696zM380 456q-21 3 -49.5 5t-46.5 2q-32 0 -53 -11t-33 -30t-16.5 -45t-4.5 -57v-77 +q0 -31 4.5 -57t16.5 -45t33 -30t53 -11q27 0 54.5 2t41.5 5v349z" /> + <glyph glyph-name="e" unicode="e" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4z" /> + <glyph glyph-name="f" unicode="f" horiz-adv-x="395" +d="M375 690q0 -9 -5 -13t-10 -4h-45q-36 0 -47.5 -11.5t-11.5 -48.5v-49h96q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5t-14 -5.5h-96v-444q0 -8 -6 -14.5t-14 -6.5h-91q-8 0 -14.5 6.5t-6.5 14.5v444l-89 14q-8 2 -14 6.5t-6 12.5v46q0 8 6 14t14 6h89v49q0 48 12.5 79t35 49 +t54.5 25t71 7q18 0 32 -2.5t28 -5.5q6 -2 12 -5.5t6 -10.5v-59v0z" /> + <glyph glyph-name="g" unicode="g" horiz-adv-x="584" +d="M556 495q0 -11 -3.5 -14.5t-12.5 -7.5l-33 -13q12 -17 18.5 -35.5t6.5 -44.5v-7q0 -94 -61.5 -138t-175.5 -44q-40 0 -67 5.5t-42 11.5q-17 -11 -17 -26t8.5 -22t25.5 -11l118 -28q51 -12 92.5 -23.5t70.5 -28.5t45 -42.5t16 -65.5v-7q0 -77 -58.5 -117t-186.5 -40 +q-122 0 -185 43.5t-63 122.5v9q0 31 13.5 59.5t37.5 50.5q-21 16 -33 40.5t-12 51.5v1q0 23 10 45t30 36q-23 23 -32 51t-9 66v7q0 37 13 70.5t41.5 59t73.5 40t110 14.5h234q11 0 19 -8t8 -19v-42zM402 378q0 18 -4.5 33.5t-16.5 27t-33 18t-53 6.5t-53 -6.5t-33 -18 +t-17 -27t-5 -33.5v-8q0 -14 4 -28t15.5 -25.5t32.5 -18.5t56 -7q62 0 84.5 20.5t22.5 58.5v8zM413 -39q0 8 -3.5 15t-16 14t-36 14.5t-62.5 16.5l-89 21q-11 -16 -18 -29.5t-7 -40.5v-9q0 -15 5.5 -27.5t19 -21t36.5 -13t58 -4.5q36 0 58 4t34.5 11t16.5 17.5t4 24.5v7z" /> + <glyph glyph-name="h" unicode="h" horiz-adv-x="592" +d="M527 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v329q0 33 -3.5 54t-12.5 33t-25 17t-41 5q-51 0 -116 -34v-404q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v720q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-207q29 17 63 27t88 10q52 0 86.5 -17t55 -47 +t29 -70.5t8.5 -86.5v-329v0z" /> + <glyph glyph-name="i" unicode="i" horiz-adv-x="268" +d="M203 659q0 -8 -6 -14t-14 -6h-97q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h97q8 0 14 -6t6 -14v-88zM200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523z" /> + <glyph glyph-name="j" unicode="j" horiz-adv-x="268" +d="M203 659q0 -8 -6.5 -14t-14.5 -6h-96q-8 0 -14 6t-6 14v88q0 8 6 14t14 6h96q8 0 14.5 -6t6.5 -14v-88zM200 -42q0 -46 -10 -76.5t-29 -48.5t-46.5 -25.5t-62.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v586q0 8 6 14 +t14 6h92q8 0 14 -6t6 -14v-586z" /> + <glyph glyph-name="k" unicode="k" horiz-adv-x="549" +d="M519 12q0 -5 -4 -8.5t-10 -3.5h-122q-8 0 -16 6.5t-13 13.5l-157 228v-227q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v720q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-417l171 228q5 7 11.5 9.5t11.5 2.5h112q15 0 15 -11q0 -5 -4 -10l-201 -247l203 -276q3 -5 3 -8z +" /> + <glyph glyph-name="l" unicode="l" horiz-adv-x="272" +d="M202 21q0 -8 -5.5 -14.5t-13.5 -6.5h-93q-8 0 -14 6.5t-6 14.5v720q0 8 6 14t14 6h93q8 0 13.5 -6t5.5 -14v-720v0z" /> + <glyph glyph-name="m" unicode="m" horiz-adv-x="848" +d="M783 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v340q0 29 -3.5 47.5t-11.5 29.5t-22 15.5t-35 4.5q-14 0 -40 -5.5t-53 -19.5q2 -17 3 -35t1 -37v-340q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v340q0 29 -3 47.5t-10.5 29.5t-21 15.5t-34.5 4.5 +q-31 0 -92 -33v-404q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q32 20 65 34t78 14q43 0 71.5 -12t45.5 -33q38 21 75.5 33t89.5 12q51 0 83.5 -16.5t50.5 -45t25 -66.5t7 -82v-340v0z" /> + <glyph glyph-name="n" unicode="n" horiz-adv-x="592" +d="M527 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v326q0 33 -2.5 54.5t-11 34t-25.5 18t-46 5.5q-26 0 -53.5 -9.5t-59.5 -26.5v-402q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q22 14 40.5 23t37.5 14.5t39 8 +t45 2.5q54 0 88 -17t52.5 -47t25.5 -71t7 -89v-326v0z" /> + <glyph glyph-name="o" unicode="o" horiz-adv-x="574" +d="M526 241q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19t-103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19t103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81zM394 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81 +q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81z" /> + <glyph glyph-name="p" unicode="p" horiz-adv-x="577" +d="M532 243q0 -118 -59 -184.5t-180 -66.5q-18 0 -43 1.5t-53 5.5v-177q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v696q0 11 5 16.5t22 10.5q47 12 100 19t101 7q121 0 180 -66.5t59 -184.5v-77zM400 320q0 31 -4.5 57t-16.5 45t-33 30t-53 11q-27 0 -54.5 -2t-41.5 -5v-349 +q21 -3 49.5 -5t46.5 -2q32 0 53 11t33 30t16.5 45t4.5 57v77z" /> + <glyph glyph-name="q" unicode="q" horiz-adv-x="577" +d="M512 -178q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v177q-28 -4 -53 -5.5t-43 -1.5q-121 0 -180 66.5t-59 184.5v77q0 118 59 184.5t180 66.5q48 0 101 -7t100 -19q17 -5 22 -10.5t5 -16.5v-696zM380 456q-14 3 -41.5 5t-54.5 2q-32 0 -53 -11t-33 -30t-16.5 -45 +t-4.5 -57v-77q0 -31 4.5 -57t16.5 -45t33 -30t53 -11q18 0 46.5 2t49.5 5v349z" /> + <glyph glyph-name="r" unicode="r" horiz-adv-x="375" +d="M355 479q0 -8 -6 -14t-14 -6q-41 0 -73.5 -9.5t-64.5 -26.5v-402q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q37 29 75 38.5t68 9.5q8 0 14 -6t6 -14v-72v0z" /> + <glyph glyph-name="s" unicode="s" horiz-adv-x="489" +d="M444 148q0 -33 -12 -61.5t-36.5 -49.5t-61.5 -33t-86 -12q-15 0 -36.5 1t-46.5 3.5t-50 6t-46 9.5q-19 5 -19 23v60q0 6 4.5 11t12.5 5h4q18 -2 42.5 -4t48.5 -3.5t45 -2.5t32 -1q23 0 37 3.5t21.5 10t10 15.5t2.5 19q0 14 -10 25t-34 26l-137 84q-37 23 -60.5 58.5 +t-23.5 79.5q0 150 190 150q30 0 54.5 -1.5t45.5 -4.5t40 -6.5t38 -7.5q18 -5 18 -23v-58q0 -19 -16 -19h-4q-11 1 -30 3.5t-42 4t-47.5 3t-45.5 1.5q-36 0 -52.5 -9.5t-16.5 -32.5q0 -12 10.5 -21t29.5 -20l131 -80q31 -19 50 -38t29.5 -38t13.5 -38t3 -38z" /> + <glyph glyph-name="t" unicode="t" horiz-adv-x="405" +d="M380 17q0 -15 -19 -18q-18 -3 -34.5 -5t-33.5 -2q-42 0 -72.5 6t-49.5 23t-28 48.5t-9 81.5v314l-94 14q-8 2 -14 7t-6 13v45q0 8 6 14t14 6h94v82q0 8 6 13t14 7l93 16h4q16 0 16 -15v-103h90q8 0 14 -6t6 -14v-59q0 -8 -6 -14t-14 -6h-90v-314q0 -19 1 -30t5 -17 +t11.5 -7.5t21.5 -1.5h53q21 0 21 -15v-63v0z" /> + <glyph glyph-name="u" unicode="u" horiz-adv-x="592" +d="M527 20q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v23q-39 -26 -74 -38t-83 -12q-38 0 -69.5 10t-53.5 32q-28 28 -39 73.5t-11 108.5v326q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-326q0 -38 4.5 -60.5t18.5 -35.5q11 -9 25 -13.5t37 -4.5q14 0 29.5 4t30.5 10 +t28.5 13t24.5 13v400q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523v0z" /> + <glyph glyph-name="v" unicode="v" horiz-adv-x="551" +d="M527 548q0 -5 -1 -7l-126 -455q-8 -28 -21 -46t-30 -28.5t-36 -15t-38 -4.5t-38 4.5t-35.5 15t-30 28.5t-20.5 46l-126 455q-1 2 -1 7q0 16 16 16h100q15 0 20 -20l96 -419q3 -14 8 -19.5t11 -5.5t11 5.5t8 19.5l96 419q5 20 21 20h100q16 0 16 -16z" /> + <glyph glyph-name="w" unicode="w" horiz-adv-x="819" +d="M793 541l-91 -460q-5 -23 -10.5 -38.5t-15.5 -26t-25 -15t-38 -4.5h-27q-41 0 -63 19.5t-32 58.5l-79 306q-1 5 -3 5t-3 -5l-79 -306q-10 -39 -32 -58.5t-63 -19.5h-27q-23 0 -38 4.5t-25 15t-16 26t-10 38.5l-91 460v3q0 8 6 14t14 6h97q8 0 12.5 -5.5t5.5 -12.5 +l63 -423q2 -14 5 -14q4 0 7 14l83 336q8 29 19 36t37 7h70q26 0 37 -7t19 -36l83 -336q3 -14 7 -14q3 0 5 14l63 423q1 7 5.5 12.5t12.5 5.5h97q8 0 14 -6t6 -14v-3z" /> + <glyph glyph-name="x" unicode="x" horiz-adv-x="557" +d="M537 13q0 -5 -4.5 -9t-10.5 -4h-114q-8 0 -13.5 3.5t-13.5 16.5l-114 176l-108 -176q-8 -13 -13.5 -16.5t-13.5 -3.5h-103q-12 0 -12 11q0 4 3 9l179 271l-169 253q-2 4 -2 6q0 5 4.5 9.5t11.5 4.5h114q8 0 13 -4.5t13 -15.5l101 -156l94 156q8 14 13.5 17t13.5 3h103 +q12 0 12 -11q0 -5 -3 -9l-165 -252l182 -272q2 -4 2 -7z" /> + <glyph glyph-name="y" unicode="y" horiz-adv-x="560" +d="M535 547q0 -4 -1 -6l-167 -584q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 8 6 13t14 5h2q10 0 25.5 -1l31 -2t30.5 -2t26 -1q32 0 50 12.5t29 51.5l8 30h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5 +t-18.5 45.5l-131 458q-1 3 -1 7q0 16 19 16h101q7 0 12 -5.5t7 -12.5l101 -407q3 -13 6 -17.5t8 -4.5h1h5h3l108 430q2 7 7 12t13 5h102q8 0 13 -5t5 -12z" /> + <glyph glyph-name="z" unicode="z" horiz-adv-x="490" +d="M450 20q0 -8 -6 -14t-14 -6h-350q-17 0 -28.5 11.5t-11.5 28.5v43q0 15 13 32l242 333q3 4 3 6q0 3 -6 3h-226q-8 0 -13 4t-5 12v71q0 8 6 14t14 6h340q17 0 28.5 -12t11.5 -29v-57q0 -4 -1.5 -12t-3.5 -11l-233 -319l-2 -3q0 -4 6 -4h218q8 0 13 -4t5 -12v-81v0z" /> + <glyph glyph-name="braceleft" unicode="{" horiz-adv-x="363" +d="M353 -181q0 -17 -19 -17h-56q-56 0 -91.5 8t-55.5 27.5t-27.5 51.5t-7.5 80v152q0 40 -14 65.5t-45 46.5v80q31 21 44.5 46.5t13.5 65.5v151q0 48 7.5 80t27.5 51.5t55.5 27.5t91.5 8h57q19 0 19 -17v-73q0 -16 -19 -16h-47q-38 0 -48 -13t-10 -48v-151q0 -52 -17.5 -89 +t-60.5 -63q43 -26 61 -63t18 -89v-152q0 -35 10 -48t48 -13h46q19 0 19 -16v-73v0z" /> + <glyph glyph-name="bar" unicode="|" horiz-adv-x="274" +d="M204 -174q0 -8 -5.5 -14t-13.5 -6h-95q-8 0 -14 6t-6 14v897q0 8 6 14t14 6h95q8 0 13.5 -6t5.5 -14v-897v0z" /> + <glyph glyph-name="braceright" unicode="}" horiz-adv-x="363" +d="M326 233q-31 -21 -45 -46.5t-14 -65.5v-152q0 -48 -7.5 -80t-27.5 -51.5t-55.5 -27.5t-91.5 -8h-56q-19 0 -19 17v73q0 16 19 16h46q38 0 48 13t10 48v152q0 52 18 89t61 63q-43 26 -60.5 63t-17.5 89v151q0 35 -10 48t-48 13h-47q-19 0 -19 16v73q0 17 19 17h57 +q56 0 91.5 -8t55.5 -27.5t27.5 -51.5t7.5 -80v-151q0 -40 13.5 -65.5t44.5 -46.5v-80v0z" /> + <glyph glyph-name="asciitilde" unicode="~" +d="M552 475q0 -76 -32 -107.5t-97 -31.5q-17 0 -38.5 4.5t-36.5 15.5l-88 61q-12 8 -21.5 10.5t-17.5 2.5q-16 0 -26 -9t-10 -33v-26q0 -20 -17 -20h-71q-18 0 -18 20v26q0 75 32.5 107.5t97.5 32.5q17 0 38 -5t36 -16l88 -60q12 -8 22 -10.5t18 -2.5q18 0 26.5 9t8.5 32v26 +q0 20 17 20h70q19 0 19 -20v-26v0z" /> + <glyph glyph-name="exclamdown" unicode="&#xa1;" horiz-adv-x="256" +d="M192 431q0 -19 -19 -19h-90q-19 0 -19 19v113q0 8 5.5 14t13.5 6h90q8 0 13.5 -6t5.5 -14v-113zM196 -181q0 -8 -6.5 -13.5t-14.5 -5.5h-95q-8 0 -14 5.5t-6 13.5l15 508q0 8 6 14t14 6h65q8 0 14.5 -6t6.5 -14z" /> + <glyph glyph-name="cent" unicode="&#xa2;" +d="M494 31q0 -12 -4 -17.5t-17 -8.5t-34.5 -6.5t-50.5 -5.5v-80q0 -8 -6 -14t-14 -6h-82q-8 0 -14 6t-6 14v90q-67 20 -108.5 77.5t-41.5 154.5v93q0 97 41.5 154.5t108.5 77.5v88q0 8 6 14t14 6h82q8 0 14 -6t6 -14v-78q29 -2 50.5 -5.5t34.5 -6.5t17 -8.5t4 -17.5v-65 +q0 -8 -5 -11.5t-13 -3.5h-3q-15 2 -28 3.5t-27 2t-32 1t-42 0.5q-18 0 -35 -6t-30.5 -20.5t-22 -40t-8.5 -64.5v-93q0 -39 8.5 -64.5t22 -40t30.5 -20.5t35 -6q24 0 42 0.5t32 1t27 2t28 3.5h3q8 0 13 -3.5t5 -11.5v-65v0z" /> + <glyph glyph-name="sterling" unicode="&#xa3;" +d="M562 629q0 -18 -17 -18h-2q-15 1 -34.5 3t-41.5 3.5t-44 2.5t-42 1q-56 0 -81.5 -18t-25.5 -70v-96h185q8 0 14 -5.5t6 -13.5v-75q0 -18 -19 -18h-186v-125q0 -31 -7 -51.5t-17 -37.5h291q8 0 14 -4.5t6 -12.5v-76q0 -8 -6 -13t-14 -5h-427q-12 0 -15 9t-3 17v51 +q0 8 2.5 13t5.5 10q11 17 22.5 44t11.5 56v125h-50q-19 0 -19 18v75q0 8 6 13.5t14 5.5h49v96q0 49 12 86.5t40 63t74.5 39t116.5 13.5q19 0 42.5 -1.5t46 -3.5t42.5 -4.5t32 -4.5q14 -2 16 -6.5t2 -12.5v-73v0z" /> + <glyph glyph-name="fraction" unicode="&#x2044;" horiz-adv-x="294" +d="M463 735q0 -7 -4 -12l-419 -709q-6 -11 -9.5 -14t-11.5 -3h-82q-10 0 -10 9q0 7 4 12l419 708q6 10 10 13.5t12 3.5h81q10 0 10 -8z" /> + <glyph glyph-name="yen" unicode="&#xa5;" +d="M601 730q0 -4 -3 -10l-114 -227h93q8 0 14 -5t6 -13v-63q0 -18 -19 -18h-143l-50 -99v-12h192q8 0 14 -5t6 -13v-63q0 -18 -19 -18h-193v-164q0 -8 -5.5 -14t-13.5 -6h-103q-8 0 -13 6t-5 14v164h-194q-19 0 -19 18v63q0 8 6 13t14 5h193v12l-50 99h-144q-19 0 -19 18v63 +q0 8 6 13t14 5h94l-114 227q-3 6 -3 10q0 13 16 13h114q7 0 11 -5t7 -11l138 -294l138 294q3 6 7.5 11t11.5 5h113q16 0 16 -13z" /> + <glyph glyph-name="florin" unicode="&#x192;" +d="M587 749l-8 -58q-2 -17 -24 -17h-61q-37 0 -50.5 -12.5t-18.5 -44.5l-24 -173h138q17 0 17 -16v-3l-9 -65q-2 -8 -8.5 -14t-14.5 -6h-137l-48 -337q-6 -45 -23.5 -75.5t-42.5 -49t-57 -26t-68 -7.5q-29 0 -51 2.5t-36 4.5q-11 2 -14.5 5.5t-3.5 9.5v3l8 58q2 17 24 17h61 +q37 0 50.5 12.5t18.5 44.5l48 338h-127q-8 0 -13 5t-5 12v3l9 65q2 8 8.5 13.5t14.5 5.5h127l24 173q6 46 23.5 76t42.5 48t57 25.5t68 7.5q29 0 51 -2.5t36 -4.5q11 -2 14.5 -5.5t3.5 -9.5v-3z" /> + <glyph glyph-name="section" unicode="&#xa7;" horiz-adv-x="573" +d="M529 -3q0 -40 -12.5 -78t-43 -68t-81 -48.5t-125.5 -18.5q-57 0 -102.5 5.5t-81.5 13.5q-8 2 -14 6.5t-6 12.5v78q0 8 6 13t14 5h2q45 -5 88.5 -8.5t88.5 -3.5h7q33 0 54.5 6.5t33.5 18t17 27.5t5 36q0 15 -3.5 26.5t-12.5 22t-24.5 22t-40.5 26.5l-125 74 +q-39 23 -64 45.5t-39.5 46t-20 49t-5.5 54.5q0 30 6.5 56t21.5 47q-16 24 -22 49.5t-6 55.5q0 41 12.5 75t42 58t77 37t117.5 13q25 0 54 -1.5t56.5 -4.5t50.5 -6t36 -6q8 -2 13.5 -6.5t5.5 -12.5v-79q0 -8 -5.5 -13t-13.5 -5h-1q-48 3 -96.5 7t-97.5 4h-3 +q-56 0 -79.5 -16.5t-23.5 -50.5q0 -12 3.5 -22.5t12.5 -21t24.5 -21.5t39.5 -24l120 -67q41 -23 68 -46t43 -47.5t22.5 -50.5t6.5 -56q0 -28 -6 -55t-20 -52q15 -23 20.5 -47.5t5.5 -53.5zM411 206q0 19 -4.5 34t-16 29t-32 29t-52.5 34l-79 47q-17 10 -30 18.5t-24 18.5 +q-19 -22 -19 -60q0 -17 4.5 -30t15 -26t29 -26t46.5 -30l77 -46q48 -29 73 -52q7 13 9.5 28t2.5 32z" /> + <glyph glyph-name="currency" unicode="&#xa4;" +d="M571 562q0 -8 -7 -15l-85 -84q26 -43 26 -91q0 -52 -27 -95l83 -84q7 -7 7 -15q0 -6 -5 -11l-47 -48q-5 -5 -11 -5q-8 0 -15 7l-86 86q-41 -24 -88 -24q-50 0 -91 25l-85 -84q-4 -3 -7.5 -5.5t-8.5 -2.5t-10 5l-47 48q-5 7 -5 12q0 8 7 15l84 83q-27 44 -27 93 +q0 47 24 88l-84 84q-7 7 -7 15q0 7 5 12l48 48q5 5 10 5q8 0 16 -8l82 -82q22 14 46.5 20.5t49.5 6.5q49 0 92 -26l84 84q7 7 15 7q6 0 11 -5l48 -48q5 -5 5 -11zM409 374q0 19 -7 35.5t-19.5 29t-29.5 19.5t-36 7t-36 -7t-29.5 -19.5t-20 -29t-7.5 -35.5t7.5 -36t20 -29.5 +t29.5 -20t36 -7.5t36 7.5t29.5 20t19.5 29.5t7 36z" /> + <glyph glyph-name="quotesingle" unicode="'" horiz-adv-x="220" +d="M207 750q0 -2 -2 -8l-68 -207q-5 -19 -19 -19h-80q-9 0 -9 10q0 6 1 9l51 207q4 19 20 19h94q12 0 12 -11z" /> + <glyph glyph-name="quotedblleft" unicode="&#x201c;" horiz-adv-x="416" +d="M397 751q0 -6 -1 -9l-51 -207q-4 -19 -20 -19h-94q-11 0 -11 11q0 5 1 8l68 207q5 19 19 19h80q9 0 9 -10zM196 751q0 -6 -1 -9l-51 -207q-4 -19 -20 -19h-94q-11 0 -11 11q0 5 1 8l68 207q5 19 19 19h80q9 0 9 -10z" /> + <glyph glyph-name="guillemotleft" unicode="&#xab;" horiz-adv-x="689" +d="M652 77q0 -4 -3.5 -7.5t-11.5 -3.5h-95q-13 0 -18 3t-12 10l-162 178q-5 5 -6.5 12.5t-1.5 12.5t1.5 12.5t6.5 12.5l162 178q7 7 12 10t18 3h95q8 0 11.5 -3.5t3.5 -7.5t-3 -7l-181 -198l181 -198q3 -3 3 -7zM365 77q0 -4 -3.5 -7.5t-11.5 -3.5h-95q-13 0 -18 3t-12 10 +l-162 178q-5 5 -6.5 12.5t-1.5 12.5t1.5 12.5t6.5 12.5l162 178q7 7 12 10t18 3h95q8 0 11.5 -3.5t3.5 -7.5t-3 -7l-181 -198l181 -198q3 -3 3 -7z" /> + <glyph glyph-name="guilsinglleft" unicode="&#x2039;" horiz-adv-x="402" +d="M350 77q0 -4 -3.5 -7.5t-11.5 -3.5h-95q-13 0 -18 3t-12 10l-162 178q-5 5 -6.5 12.5t-1.5 12.5t1.5 12.5t6.5 12.5l162 178q7 7 12 10t18 3h95q8 0 11.5 -3.5t3.5 -7.5t-3 -7l-181 -198l181 -198q3 -3 3 -7z" /> + <glyph glyph-name="guilsinglright" unicode="&#x203a;" horiz-adv-x="402" +d="M362 282q0 -5 -1.5 -12.5t-6.5 -12.5l-162 -178q-7 -7 -12 -10t-18 -3h-95q-8 0 -11.5 3.5t-3.5 7.5t3 7l181 198l-181 198q-3 3 -3 7t3.5 7.5t11.5 3.5h95q13 0 18 -3t12 -10l162 -178q5 -5 6.5 -12.5t1.5 -12.5z" /> + <glyph glyph-name="endash" unicode="&#x2013;" horiz-adv-x="309" +d="M324 256q0 -18 -19 -18h-301q-19 0 -19 18v63q0 19 19 19h301q19 0 19 -19v-63v0z" /> + <glyph glyph-name="dagger" unicode="&#x2020;" horiz-adv-x="425" +d="M393 477q0 -16 -19 -16h-99v-447q0 -8 -4 -14t-12 -6h-102q-8 0 -12 6t-4 14v447h-89q-19 0 -19 16v80q0 15 19 15h89v170q0 8 4.5 13.5t12.5 5.5h101q8 0 12 -5.5t4 -13.5v-170h99q19 0 19 -15v-80v0z" /> + <glyph glyph-name="daggerdbl" unicode="&#x2021;" horiz-adv-x="425" +d="M393 267q0 -16 -19 -16h-99v-237q0 -8 -4 -14t-12 -6h-102q-8 0 -12 6t-4 14v237h-89q-19 0 -19 16v80q0 15 19 15h89v99h-89q-19 0 -19 16v80q0 15 19 15h89v170q0 8 4.5 13.5t12.5 5.5h101q8 0 12 -5.5t4 -13.5v-170h99q19 0 19 -15v-80q0 -16 -19 -16h-99v-99h99 +q19 0 19 -15v-80v0z" /> + <glyph glyph-name="periodcentered" unicode="&#xb7;" horiz-adv-x="259" +d="M194 329q0 -8 -6 -14t-14 -6h-89q-8 0 -14 6t-6 14v113q0 8 6 13.5t14 5.5h89q8 0 14 -5.5t6 -13.5v-113v0z" /> + <glyph glyph-name="paragraph" unicode="&#xb6;" horiz-adv-x="644" +d="M584 -176q0 -8 -4.5 -13.5t-12.5 -5.5h-35q-8 0 -12.5 5.5t-4.5 13.5v852h-61v-852q0 -8 -4.5 -13.5t-12.5 -5.5h-35q-8 0 -12.5 5.5t-4.5 13.5v426h-99q-52 0 -96 14.5t-76.5 43t-50.5 70t-18 95.5v47q0 54 18 95.5t50.5 70t76.5 43t96 14.5h282q16 0 16 -19v-900v0z +" /> + <glyph glyph-name="bullet" unicode="&#x2022;" horiz-adv-x="418" +d="M373 367q0 -34 -13 -64t-35 -52t-52 -35t-64 -13t-64 13t-52 35t-35 52t-13 64t13 64t35 52t52 35t64 13t64 -13t52 -35t35 -52t13 -64z" /> + <glyph glyph-name="quotesinglbase" unicode="&#x201a;" horiz-adv-x="215" +d="M203 140q0 -1 -2 -7l-87 -210q-4 -9 -7.5 -14.5t-11.5 -5.5h-69q-15 0 -15 14q0 4 1 6l61 210q6 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="quotedblbase" unicode="&#x201e;" horiz-adv-x="416" +d="M413 140q0 -1 -2 -7l-87 -210q-4 -9 -7.5 -14.5t-11.5 -5.5h-69q-15 0 -15 14q0 4 1 6l61 210q6 19 20 19h96q14 0 14 -12zM203 140q0 -1 -2 -7l-87 -210q-4 -9 -7.5 -14.5t-11.5 -5.5h-69q-15 0 -15 14q0 4 1 6l61 210q6 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="quotedblright" unicode="&#x201d;" horiz-adv-x="416" +d="M397 750q0 -5 -1 -8l-68 -207q-5 -19 -19 -19h-80q-9 0 -9 10q0 6 1 9l51 207q4 19 20 19h94q11 0 11 -11zM196 750q0 -5 -1 -8l-68 -207q-5 -19 -19 -19h-80q-9 0 -9 10q0 6 1 9l51 207q4 19 20 19h94q11 0 11 -11z" /> + <glyph glyph-name="guillemotright" unicode="&#xbb;" horiz-adv-x="689" +d="M649 282q0 -5 -1.5 -12.5t-6.5 -12.5l-162 -178q-7 -7 -12 -10t-18 -3h-95q-8 0 -11.5 3.5t-3.5 7.5t3 7l181 198l-181 198q-3 3 -3 7t3.5 7.5t11.5 3.5h95q13 0 18 -3t12 -10l162 -178q5 -5 6.5 -12.5t1.5 -12.5zM362 282q0 -5 -1.5 -12.5t-6.5 -12.5l-162 -178 +q-7 -7 -12 -10t-18 -3h-95q-8 0 -11.5 3.5t-3.5 7.5t3 7l181 198l-181 198q-3 3 -3 7t3.5 7.5t11.5 3.5h95q13 0 18 -3t12 -10l162 -178q5 -5 6.5 -12.5t1.5 -12.5z" /> + <glyph glyph-name="ellipsis" unicode="&#x2026;" horiz-adv-x="703" +d="M650 20q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v113q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-113zM417 20q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v113q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-113zM184 20q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v113 +q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-113z" /> + <glyph glyph-name="perthousand" unicode="&#x2030;" horiz-adv-x="1162" +d="M1122 162q0 -86 -37 -127t-105 -41t-105.5 41t-37.5 127v82q0 86 37.5 127t105.5 41t105 -41t37 -127v-82zM772 162q0 -86 -37 -127t-105 -41t-105.5 41t-37.5 127v82q0 86 37.5 127t105.5 41t105 -41t37 -127v-82zM674 735q0 -5 -4 -12l-417 -705q-6 -11 -10.5 -16 +t-12.5 -5h-84q-10 0 -10 9q0 7 4 12l417 705q7 11 11.5 15.5t12.5 4.5h84q9 0 9 -8zM325 499q0 -86 -37 -127t-105 -41t-105.5 41t-37.5 127v82q0 86 37.5 126.5t105.5 40.5t105 -40.5t37 -126.5v-82zM1037 244q0 53 -15 73t-42 20t-42.5 -20t-15.5 -73v-82q0 -53 15.5 -73 +t42.5 -20t42 20t15 73v82zM687 244q0 53 -15 73t-42 20t-42.5 -20t-15.5 -73v-82q0 -53 15.5 -73t42.5 -20t42 20t15 73v82zM240 581q0 53 -15 73t-42 20t-42.5 -20t-15.5 -73v-82q0 -54 15.5 -74t42.5 -20t42 20t15 74v82z" /> + <glyph glyph-name="questiondown" unicode="&#xbf;" horiz-adv-x="437" +d="M334 432q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v113q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-113zM407 -144q0 -12 -2.5 -18.5t-15.5 -9.5q-32 -8 -73 -13t-80 -5q-48 0 -86.5 7.5t-65 25.5t-40.5 48t-14 75v16q0 13 1.5 28t8.5 33t21.5 40.5t39.5 52.5l61 72 +q20 24 33 41t13 41v38q0 8 6 13.5t14 5.5h83q19 0 19 -19v-38q0 -24 -2.5 -42t-9.5 -34.5t-18 -33t-29 -37.5l-64 -74q-18 -21 -23.5 -42t-5.5 -45v-16q0 -22 13.5 -29.5t44.5 -7.5q37 0 77 3.5t73 7.5h4q17 0 17 -22v-62z" /> + <glyph glyph-name="grave" unicode="`" horiz-adv-x="415" +d="M273 634q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120q4 -4 4 -10z" /> + <glyph glyph-name="acute" unicode="&#xb4;" horiz-adv-x="415" +d="M383 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="circumflex" unicode="&#x2c6;" horiz-adv-x="415" +d="M394 634q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="tilde" unicode="&#x2dc;" horiz-adv-x="496" +d="M433 739q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5l44 -33q26 -20 42 -20q13 0 20.5 6.5t7.5 26.5v21q0 16 14 16h57 +q14 0 14 -16v-22v0z" /> + <glyph glyph-name="macron" unicode="&#xaf;" horiz-adv-x="415" +d="M383 680q0 -8 -6 -13t-14 -5h-310q-8 0 -14 5t-6 13v57q0 8 6 13t14 5h310q8 0 14 -5t6 -13v-57v0z" /> + <glyph glyph-name="breve" unicode="&#x2d8;" horiz-adv-x="415" +d="M386 772q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="dotaccent" unicode="&#x2d9;" horiz-adv-x="415" +d="M273 655q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-95v0z" /> + <glyph glyph-name="dieresis" unicode="&#xa8;" horiz-adv-x="415" +d="M365 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM165 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="ring" unicode="&#x2da;" horiz-adv-x="415" +d="M318 708q0 -23 -8.5 -43t-23.5 -35t-35 -23.5t-43 -8.5t-43 8.5t-35 23.5t-24 35t-9 43t9 43t24 35t35 24t43 9t43 -9t35 -24t23.5 -35t8.5 -43zM256 709q0 20 -14 33.5t-34 13.5t-33 -13.5t-13 -33.5t13 -34t33 -14t34 14t14 34z" /> + <glyph glyph-name="cedilla" unicode="&#xb8;" horiz-adv-x="403" +d="M296 -41q0 -4 -4 -8l-119 -123q-6 -7 -10 -10.5t-13 -3.5h-86q-9 0 -9 7q0 6 4 10l94 120q7 8 11.5 11.5t14.5 3.5h106q11 0 11 -7z" /> + <glyph glyph-name="hungarumlaut" unicode="&#x2dd;" horiz-adv-x="415" +d="M457 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7zM247 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="ogonek" unicode="&#x2db;" horiz-adv-x="403" +d="M292 20q10 0 10 -8q0 -5 -4 -8l-51 -34q-19 -13 -30.5 -21t-17.5 -13.5t-7.5 -10.5t-1.5 -11q0 -19 25 -19q29 0 53 4.5t29 4.5q7 0 8.5 -2t1.5 -10v-58q0 -5 -1.5 -8t-9.5 -7q-11 -5 -36 -12.5t-67 -7.5q-24 0 -47 6t-41 17.5t-28.5 28.5t-10.5 40q0 22 5 38t16.5 28.5 +t30 25t44.5 29.5q6 4 11.5 6t13.5 2h105z" /> + <glyph glyph-name="caron" unicode="&#x2c7;" horiz-adv-x="415" +d="M397 772q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="emdash" unicode="&#x2014;" horiz-adv-x="599" +d="M614 256q0 -18 -19 -18h-591q-19 0 -19 18v63q0 19 19 19h591q19 0 19 -19v-63v0z" /> + <glyph glyph-name="AE" unicode="&#xc6;" horiz-adv-x="880" +d="M820 27q0 -11 -4.5 -15t-15.5 -6q-12 -3 -23.5 -5.5t-28 -4.5t-42.5 -3t-66 -1q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v10h-201l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 54t36.5 28t40 10.5t36.5 1.5h477q20 0 20 -21 +v-70q0 -8 -6 -14t-14 -6h-253v-194h241q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-241v-129q0 -50 17.5 -68t61.5 -18h174q8 0 14 -6t6 -14v-64zM409 634h-86q-8 0 -11 -3.5t-5 -12.5l-72 -297h174v313z" /> + <glyph glyph-name="ordfeminine" unicode="&#xaa;" horiz-adv-x="335" +d="M298 431q0 -13 -9 -16q-56 -15 -116 -15q-74 0 -107.5 26t-33.5 80v7q0 53 39.5 74.5t112.5 21.5h26v13q0 30 -12 41t-35 11q-29 0 -53 -1.5t-40 -3.5h-1q-5 0 -9.5 3.5t-4.5 10.5v38q0 11 14 15q16 4 41 8t53 4q64 0 99.5 -28.5t35.5 -97.5v-191zM210 557q-2 0 -7.5 0.5 +t-11.5 0.5t-7 -1q-37 0 -52.5 -10t-15.5 -34v-7q0 -23 12.5 -32.5t44.5 -9.5q11 0 20.5 1.5t16.5 2.5v89z" /> + <glyph glyph-name="Lslash" unicode="&#x141;" horiz-adv-x="516" +d="M75 279l-51 -64q-5 -6 -10 -6q-7 0 -7 7v102q0 5 1 9.5t6 10.5l61 77v309q0 19 19 19h100q8 0 14 -6t6 -14v-176l61 73q6 7 11 7q6 0 6 -8v-101q0 -6 -1.5 -11t-6.5 -11l-70 -85v-214q0 -50 17 -68t61 -18h184q8 0 14 -6t6 -14v-64q0 -11 -4.5 -15t-15.5 -6 +q-11 -3 -31.5 -5.5t-44.5 -4.5t-49 -3t-45 -1q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v82z" /> + <glyph glyph-name="Oslash" unicode="&#xd8;" horiz-adv-x="680" +d="M656 737q0 -4 -3 -8l-72 -100q21 -36 32.5 -83t11.5 -107v-135q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18q-53 0 -98 12.5t-81 39.5l-29 -40q-5 -6 -8.5 -9t-11.5 -3h-76q-11 0 -11 11q0 3 3 8l72 100q-45 74 -45 193v135q0 82 21.5 141.5t59.5 97t90 55.5 +t114 18q54 0 100 -13t82 -41l29 41q5 6 8 8t11 2h75q11 0 11 -11zM444 590q-36 40 -104 40q-74 0 -109.5 -45.5t-35.5 -145.5v-135q0 -31 3 -56zM485 439q0 28 -3 52l-244 -340q35 -38 102 -38q74 0 109.5 45.5t35.5 145.5v135z" /> + <glyph glyph-name="OE" unicode="&#x152;" horiz-adv-x="990" +d="M930 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-59 0 -107 12t-80 52q-38 -36 -84.5 -50t-103.5 -14q-62 0 -114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18q57 0 103.5 -14.5t84.5 -49.5 +q27 37 77.5 50.5t109.5 13.5q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64z +M489 463q0 87 -37.5 127t-106.5 40q-74 0 -109.5 -45.5t-35.5 -145.5v-135q0 -100 35.5 -145.5t109.5 -45.5q69 0 106.5 40t37.5 127v183z" /> + <glyph glyph-name="ordmasculine" unicode="&#xba;" horiz-adv-x="357" +d="M325 557q0 -78 -37.5 -117.5t-108.5 -39.5t-108.5 39.5t-37.5 117.5v34q0 78 37.5 117.5t108.5 39.5t108.5 -39.5t37.5 -117.5v-34zM236 591q0 43 -13.5 62.5t-43.5 19.5t-44 -19.5t-14 -62.5v-34q0 -83 58 -83q30 0 43.5 20t13.5 63v34z" /> + <glyph glyph-name="ae" unicode="&#xe6;" horiz-adv-x="870" +d="M819 268q0 -8 -6.5 -14t-14.5 -6h-314v-41q0 -57 32.5 -80.5t98.5 -23.5q13 0 35 1t46 2t46.5 2.5t37.5 3.5h1h3q17 0 17 -16v-56q0 -11 -4 -16t-15 -8q-20 -6 -44 -10.5t-49 -7.5t-49.5 -4.5t-45.5 -1.5q-49 0 -90.5 13.5t-67.5 40.5q-38 -28 -86 -41t-98 -13 +q-43 0 -80.5 10t-65.5 31t-44 54.5t-16 80.5v11q0 86 64.5 121.5t190.5 35.5h51v27q0 56 -23.5 76.5t-68.5 20.5q-23 0 -46.5 -0.5t-44.5 -1.5t-38.5 -2t-27.5 -2h-1h-2q-17 0 -17 17v60q0 18 20 23q27 6 69.5 11.5t87.5 5.5q58 0 100 -17t68 -49q28 31 67 48.5t94 17.5 +q61 0 104.5 -18t71.5 -49.5t41 -75t13 -94.5v-66zM691 358q0 22 -5.5 42t-18 35t-32 24t-47.5 9q-27 0 -47 -9t-32.5 -24t-18.5 -35t-6 -42v-34h207v34zM356 261h-55q-68 0 -98 -18.5t-30 -63.5v-11q0 -45 24.5 -59t64.5 -14q24 0 48.5 3t45.5 11v152z" /> + <glyph glyph-name="dotlessi" unicode="&#x131;" horiz-adv-x="268" +d="M200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523v0z" /> + <glyph glyph-name="lslash" unicode="&#x142;" horiz-adv-x="272" +d="M279 491q0 -6 -1 -9t-6 -9l-69 -85v-367q0 -8 -5.5 -14.5t-13.5 -6.5h-95q-8 0 -14 6.5t-6 14.5v240l-61 -70q-6 -6 -10 -6q-5 0 -5 6v115q0 5 0.5 8t5.5 8l70 85v334q0 8 6 14t14 6h95q8 0 13.5 -6t5.5 -14v-207l61 72q5 5 8 5t5 -3.5t2 -6.5v-110v0z" /> + <glyph glyph-name="oslash" unicode="&#xf8;" horiz-adv-x="574" +d="M545 589q0 -6 -4 -11l-65 -90q25 -32 37.5 -74.5t12.5 -91.5v-81q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19q-43 0 -77.5 10t-62.5 28l-40 -55q-5 -7 -8 -8.5t-8 -1.5h-56q-8 0 -8 8q0 6 4 11l66 92q-25 32 -37 74t-12 91v81q0 54 15.5 99.5t45.5 78.5 +t74.5 52t103.5 19q42 0 76.5 -10t62.5 -28l39 54q5 7 8 8.5t8 1.5h56q8 0 8 -8zM354 433q-27 24 -67 24q-53 0 -80 -36.5t-27 -98.5v-81q0 -25 4 -44zM394 322q0 12 -1 23.5t-3 22.5l-171 -238q25 -24 68 -24q53 0 80 36.5t27 98.5v81z" /> + <glyph glyph-name="oe" unicode="&#x153;" horiz-adv-x="926" +d="M876 261q0 -25 -20 -25h-328v-6v-4q1 -22 7 -44.5t19 -40.5t34 -29t52 -11q55 0 108.5 3.5t85.5 6.5h3q8 0 13 -3.5t5 -11.5v-61q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-45 0 -93.5 15.5t-83.5 56.5q-30 -35 -73.5 -53.5t-100.5 -18.5 +q-59 0 -103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19q58 0 102 -19.5t73 -54.5q63 74 174 74q58 0 102.5 -20t74.5 -54.5t45.5 -80.5t15.5 -99v-56zM745 334q0 66 -30 96t-77 30q-22 0 -42 -7t-35 -21.5t-24 -36t-9 -51.5v-6v-8 +h217v4zM396 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81z" /> + <glyph glyph-name="germandbls" unicode="&#xdf;" horiz-adv-x="624" +d="M570 221q0 -60 -19.5 -103t-53 -71t-77 -41.5t-91.5 -13.5q-12 0 -26 1.5t-30 3.5q-8 2 -14 6.5t-6 12.5v74q0 15 17 15q34 0 64 3t52.5 14.5t36 34.5t13.5 64v19q0 45 -30.5 74t-96.5 29h-32q-8 0 -14 5t-6 13v62q0 8 6 13t14 5h32q32 0 54 8t36 21.5t20 31t6 36.5v17 +q0 43 -25.5 70.5t-85.5 27.5q-39 0 -62.5 -11.5t-36 -30.5t-17 -44t-4.5 -51v-495q0 -8 -5.5 -14.5t-13.5 -6.5h-95q-8 0 -14 6.5t-6 14.5v494q0 130 66 191.5t188 61.5q52 0 97 -11.5t77 -37t50.5 -66t18.5 -98.5v-17q0 -45 -26 -83.5t-67 -58.5q48 -20 77 -60.5t29 -95.5 +v-19v0z" /> + <glyph glyph-name="logicalnot" unicode="&#xac;" +d="M538 203q0 -8 -6 -14t-14 -6h-62q-8 0 -14 6t-6 14v259h-323q-8 0 -14 4t-6 12v70q0 8 6 12t14 4h407q8 0 13 -4.5t5 -12.5v-344v0z" /> + <glyph glyph-name="mu" unicode="&#xb5;" horiz-adv-x="587" +d="M527 42q0 -10 -6 -16t-21 -10q-38 -10 -89 -17t-114 -7q-34 0 -59.5 8.5t-43.5 22.5v-195q0 -8 -5 -14t-13 -6h-97q-8 0 -13.5 6t-5.5 14v715q0 8 6 14.5t14 6.5h93q8 0 14 -6.5t6 -14.5v-346q0 -96 104 -96q24 0 50 3t46 8v431q0 8 6 14.5t14 6.5h93q8 0 14.5 -6.5 +t6.5 -14.5v-501v0z" /> + <glyph glyph-name="trademark" unicode="&#x2122;" horiz-adv-x="814" +d="M773 348q0 -10 -10 -10h-64q-10 0 -10 10v245q0 24 -2.5 39t-11 23.5t-25 11t-45.5 2.5v-321q0 -10 -11 -10h-64q-10 0 -10 10v321q-25 0 -46 -1t-38 -3v-317q0 -10 -10 -10h-63q-11 0 -11 10v361q0 15 5 20.5t18 7.5q57 5 100 7.5t87 2.5q55 0 94.5 -4.5t65.5 -20.5 +t38.5 -46.5t12.5 -82.5v-245zM319 685q0 -6 -5 -9.5t-10 -3.5h-88v-320q0 -5 -4 -9.5t-10 -4.5h-59q-6 0 -10 4.5t-4 9.5v320h-90q-5 0 -9.5 3.5t-4.5 9.5v44q0 14 14 14h265q6 0 10.5 -4t4.5 -10v-44z" /> + <glyph glyph-name="Eth" unicode="&#xd0;" horiz-adv-x="667" +d="M612 298q0 -149 -81.5 -227.5t-232.5 -78.5q-27 0 -56.5 1t-57 3t-50 4t-33.5 4q-13 2 -19.5 9t-6.5 22v291h-58q-19 0 -19 19v75q0 18 19 18h58v270q0 15 6.5 22t19.5 9q11 2 33.5 4t50 4t57 3t56.5 1q151 0 232.5 -78.5t81.5 -227.5v-147zM474 445q0 56 -13.5 92.5 +t-37 58t-56 30t-69.5 8.5q-28 0 -48 -1t-36 -2v-193h71q19 0 19 -18v-75q0 -19 -19 -19h-71v-214q16 -1 36 -2t48 -1q37 0 69.5 8.5t56 30t37 58t13.5 92.5v147z" /> + <glyph glyph-name="onehalf" unicode="&#xbd;" horiz-adv-x="751" +d="M120 751q3 2 9.5 2.5t11.5 0.5h36q10 0 13.5 -5t3.5 -12v-380q0 -7 -5 -12t-12 -5h-53q-7 0 -12 5t-5 12v307l-56 -19q-7 -2 -14 -0.5t-7 11.5v53q0 5 2 7t7 4zM600 735q0 -7 -4 -12l-419 -709q-6 -11 -9.5 -14t-11.5 -3h-82q-10 0 -10 9q0 7 4 12l419 708q6 10 10 13.5 +t12 3.5h81q10 0 10 -8zM721 313q0 -35 -18.5 -60.5t-52.5 -48.5l-48 -33q-34 -23 -53 -45t-21 -52h172q7 0 12 -4t5 -12v-41q0 -7 -5 -12t-12 -5h-229q-7 0 -12 5t-5 12v53q0 45 25.5 84t59.5 62l54 36q26 17 36 29t10 32q0 19 -13 26.5t-44 7.5q-23 0 -53 -2.5t-55 -5.5 +q-8 0 -12.5 5t-4.5 12v32q0 6 4.5 10t10.5 6h-1q21 6 52.5 10t58.5 4q74 0 106.5 -25.5t32.5 -79.5z" /> + <glyph glyph-name="plusminus" unicode="&#xb1;" +d="M548 356q0 -8 -6 -12t-14 -4h-162v-161q0 -8 -4 -14t-12 -6h-70q-8 0 -12 6t-4 14v161h-161q-8 0 -14 4t-6 12v70q0 8 6 12t14 4h161v162q0 8 4 14t12 6h70q8 0 12 -6t4 -14v-162h162q8 0 14 -4t6 -12v-70zM548 1q0 -8 -6 -12t-14 -4h-425q-8 0 -14 4t-6 12v56q0 8 6 12 +t14 4h425q8 0 14 -4t6 -12v-56z" /> + <glyph glyph-name="Thorn" unicode="&#xde;" horiz-adv-x="626" +d="M591 419q0 -68 -24 -114t-64 -73.5t-93 -39t-111 -11.5q-23 0 -44 1l-42 2v-164q0 -8 -5 -14t-13 -6h-101q-8 0 -13.5 6t-5.5 14v704q0 19 19 19h101q18 0 18 -19v-63q13 1 38.5 1.5t44.5 0.5q59 0 112.5 -11.5t94 -38.5t64.5 -71.5t24 -110.5v-12zM452 431q0 64 -39 89 +t-114 25h-20.5t-25 -0.5t-23.5 -1t-17 -0.5v-242q6 0 17.5 -0.5t24.5 -1t25.5 -0.5h18.5q78 0 115.5 28t37.5 92v12z" /> + <glyph glyph-name="onequarter" unicode="&#xbc;" horiz-adv-x="709" +d="M120 751q3 2 9.5 2.5t11.5 0.5h36q10 0 13.5 -5t3.5 -12v-380q0 -7 -5 -12t-12 -5h-53q-7 0 -12 5t-5 12v307l-56 -19q-7 -2 -14 -0.5t-7 11.5v53q0 5 2 7t7 4zM600 735q0 -7 -4 -12l-419 -709q-6 -11 -9.5 -14t-11.5 -3h-82q-10 0 -10 9q0 7 4 12l419 708q6 10 10 13.5 +t12 3.5h81q10 0 10 -8zM679 113q0 -7 -5 -12t-11 -5h-35v-79q0 -7 -4 -12t-12 -5h-56q-7 0 -11 5t-4 12v79h-157q-6 0 -11 5t-5 12v44q0 11 8 22l166 223q4 5 8 8.5t12 3.5h49q7 0 12 -5t5 -12v-229h35q6 0 11 -5t5 -12v-38zM542 288l-87 -120h87v120z" /> + <glyph glyph-name="divide" unicode="&#xf7;" +d="M380 542q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v103q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-103zM538 356q0 -8 -6 -12t-14 -4h-405q-8 0 -14 4t-6 12v70q0 8 6 12t14 4h405q8 0 14 -4t6 -12v-70zM380 127q0 -8 -6 -13.5t-14 -5.5h-90q-8 0 -14 5.5t-6 13.5v103 +q0 8 6 14t14 6h90q8 0 14 -6t6 -14v-103z" /> + <glyph glyph-name="brokenbar" unicode="&#xa6;" horiz-adv-x="274" +d="M204 363q0 -8 -5.5 -14.5t-13.5 -6.5h-95q-8 0 -14 6.5t-6 14.5v345q0 8 6 14t14 6h95q8 0 13.5 -6t5.5 -14v-345zM204 -190q0 -8 -5.5 -14.5t-13.5 -6.5h-95q-8 0 -14 6.5t-6 14.5v345q0 8 6 14t14 6h95q8 0 13.5 -6t5.5 -14v-345z" /> + <glyph glyph-name="degree" unicode="&#xb0;" horiz-adv-x="353" +d="M326 602q0 -31 -12 -58t-32 -47.5t-47 -32t-58 -11.5t-58 11.5t-47.5 32t-32 47.5t-11.5 58t11.5 58t32 47t47.5 32t58 12t58 -12t47 -32t32 -47t12 -58zM256 602q0 32 -23.5 55.5t-55.5 23.5t-55 -23.5t-23 -55.5t23 -55t55 -23t55.5 23t23.5 55z" /> + <glyph glyph-name="thorn" unicode="&#xfe;" horiz-adv-x="577" +d="M532 245q0 -117 -58.5 -185t-176.5 -68q-9 0 -22 0.5t-27 1.5t-27.5 2.5t-23.5 3.5v-178q0 -8 -5 -14t-13 -6h-94q-8 0 -14 6t-6 14v919q0 8 5.5 14t13.5 6h95q8 0 13 -6t5 -14v-177q23 3 49.5 5t50.5 2q115 0 175 -66.5t60 -187.5v-72zM400 317q0 44 -8 72t-23.5 44.5 +t-37.5 23t-49 6.5q-19 0 -40.5 -2.5t-44.5 -5.5v-347q23 -4 46 -6t42 -2q27 0 48.5 6.5t36.5 23t22.5 44.5t7.5 71v72z" /> + <glyph glyph-name="threequarters" unicode="&#xbe;" horiz-adv-x="770" +d="M661 735q0 -7 -4 -12l-419 -709q-6 -11 -9.5 -14t-11.5 -3h-82q-10 0 -10 9q0 7 4 12l419 708q6 10 10 13.5t12 3.5h81q10 0 10 -8zM740 113q0 -7 -5 -12t-11 -5h-35v-79q0 -7 -4 -12t-12 -5h-56q-7 0 -11 5t-4 12v79h-157q-6 0 -11 5t-5 12v44q0 11 8 22l166 223 +q4 5 8 8.5t12 3.5h49q7 0 12 -5t5 -12v-229h35q6 0 11 -5t5 -12v-38zM603 288l-87 -120h87v120zM292 458q0 -32 -11 -55t-30 -38t-45 -22t-56 -7q-29 0 -55 4t-49 9q-6 2 -11 6.5t-5 10.5v33q0 8 5 12t13 4q32 -4 58 -6t44 -2q30 0 42.5 13t12.5 38v12q0 19 -8.5 34 +t-35.5 15h-95q-7 0 -12 4t-5 12v34q0 8 5 12t12 4h95q27 0 35.5 13.5t8.5 33.5v9q0 18 -10.5 32t-44.5 14q-28 0 -51.5 -2.5t-52.5 -5.5q-6 0 -11 4t-5 12v33q0 5 5 9.5t11 6.5q23 6 49 10t55 4q30 0 56 -6.5t45 -20.5t30 -36t11 -54v-9q0 -55 -41 -80q20 -14 30.5 -35.5 +t10.5 -46.5v-12z" /> + <glyph glyph-name="registered" unicode="&#xae;" horiz-adv-x="598" +d="M575 484q0 -57 -22 -107t-59.5 -87.5t-87.5 -59t-107 -21.5t-107 21.5t-87.5 59t-59 87.5t-21.5 107t21.5 107t59 87.5t87.5 59t107 21.5t107 -21.5t87.5 -59t59.5 -87.5t22 -107zM528 484q0 47 -18 89t-49 73t-73 49t-89 18t-88.5 -18t-72.5 -49t-49 -73t-18 -89 +t18 -88.5t49 -72.5t72.5 -49t88.5 -18t89 18t73 49t49 72.5t18 88.5zM432 330q0 -4 -2.5 -7.5t-8.5 -3.5h-51q-7 0 -11 8l-70 118q-3 5 -10 5h-20h-11v-118q0 -5 -3.5 -9t-8.5 -4h-46q-5 0 -8.5 4t-3.5 9v297q0 14 5 19.5t17 7.5q6 1 16 1.5t22 1t24.5 1t21.5 0.5 +q64 0 100 -23t36 -82v-6q0 -37 -17 -57.5t-45 -30.5l72 -123q2 -4 2 -8zM353 555q0 25 -15 35t-49 10h-31h-12v-96h9t13 -0.5t13 -0.5h8q35 0 49.5 11.5t14.5 34.5v6z" /> + <glyph glyph-name="minus" unicode="&#x2212;" +d="M548 356q0 -8 -6 -12t-14 -4h-425q-8 0 -14 4t-6 12v70q0 8 6 12t14 4h425q8 0 14 -4t6 -12v-70v0z" /> + <glyph glyph-name="eth" unicode="&#xf0;" horiz-adv-x="574" +d="M526 253q0 -130 -61 -195.5t-177 -65.5q-63 0 -108 18.5t-74.5 52t-43.5 82t-14 108.5v40q0 129 61.5 194.5t177.5 65.5q17 0 36.5 -2.5t36.5 -11.5q-16 25 -49 50t-76 47l-76 -58q-8 -6 -13 -6t-11 6l-29 32q-3 3 -3 8q0 9 10 16l45 34q-26 9 -51 15q-6 2 -11 5t-5 10 +q0 3 1 5l21 58q4 11 14 11q5 0 8 -1q30 -8 58 -16t54 -19l85 65q5 4 13 4t12 -5l29 -31q4 -4 4 -8q0 -6 -10 -14l-59 -45q55 -31 94 -69.5t64 -88t36 -111.5t11 -140v-40zM393 293q0 75 -24.5 112t-81.5 37t-81.5 -36.5t-24.5 -112.5v-40q0 -75 25 -112t82 -37t81 36.5 +t24 112.5v40z" /> + <glyph glyph-name="multiply" unicode="&#xd7;" +d="M520 531q0 -8 -8 -16l-125 -125l125 -124q7 -7 7 -15q0 -6 -5 -11l-49 -49q-5 -5 -10 -5q-7 0 -15 8l-125 124l-124 -124q-8 -8 -16 -8q-5 0 -10 5l-49 49q-5 5 -5 10q0 8 8 16l124 124l-125 125q-8 8 -8 16q0 5 5 10l49 49q5 5 10 5q8 0 16 -8l125 -125l125 125 +q8 8 16 8q5 0 10 -5l49 -49q5 -5 5 -10z" /> + <glyph glyph-name="copyright" unicode="&#xa9;" horiz-adv-x="750" +d="M705 374q0 -68 -26 -128t-71 -104.5t-105.5 -70.5t-128.5 -26t-128 26t-104.5 70.5t-70.5 104.5t-26 128t26 128.5t70.5 105.5t104.5 71.5t128 26.5t128.5 -26.5t105.5 -71.5t71 -105.5t26 -128.5zM656 374q0 58 -22.5 109.5t-60.5 90t-89.5 61t-109.5 22.5t-109 -22.5 +t-89.5 -61t-60.5 -90t-22 -109.5t22 -109t60.5 -89t89.5 -60t109 -22t109.5 22t89.5 60t60.5 89t22.5 109zM477 183q0 -11 -14 -14q-12 -3 -33.5 -6t-52.5 -3q-74 0 -118.5 44.5t-44.5 142.5v60q0 98 44.5 142.5t118.5 44.5q31 0 53 -3t33 -6q6 -2 10 -4t4 -9v-49 +q0 -8 -4 -10t-9 -2h-2q-17 2 -36.5 3.5t-48.5 1.5q-15 0 -29 -5t-24.5 -17.5t-16.5 -33.5t-6 -53v-60q0 -33 6 -54t16.5 -33.5t24.5 -17t29 -4.5q26 0 47 1.5t38 3.5h2q5 0 9 -2t4 -10v-48z" /> + <glyph glyph-name="Aacute" unicode="&#xc1;" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-106q-7 0 -12 5t-7 12l-46 190h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2z +M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176zM491 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Acircumflex" unicode="&#xc2;" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-106q-7 0 -12 5t-7 12l-46 190h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2z +M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176zM509 801q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="Adieresis" unicode="&#xc4;" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-106q-7 0 -12 5t-7 12l-46 190h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2z +M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176zM479 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM279 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72 +q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="Agrave" unicode="&#xc0;" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-106q-7 0 -12 5t-7 12l-46 190h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2z +M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176zM434 801q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120q4 -4 4 -10z" /> + <glyph glyph-name="Aring" unicode="&#xc5;" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-106q-7 0 -12 5t-7 12l-46 190h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2z +M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176zM432 889q0 -23 -8.5 -43t-23.5 -35t-35 -23.5t-43 -8.5t-43 8.5t-35 23.5t-24 35t-9 43t9 43t24 35t35 24t43 9t43 -9t35 -24t23.5 -35t8.5 -43zM370 890q0 20 -14 33.5t-34 13.5t-33 -13.5t-13 -33.5t13 -34 +t33 -14t34 14t14 34z" /> + <glyph glyph-name="Atilde" unicode="&#xc3;" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-106q-7 0 -12 5t-7 12l-46 190h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2z +M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176zM531 900q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5 +l44 -33q26 -20 42 -20q13 0 20.5 6.5t7.5 26.5v21q0 16 14 16h57q14 0 14 -16v-22z" /> + <glyph glyph-name="Ccedilla" unicode="&#xc7;" horiz-adv-x="563" +d="M518 31q0 -11 -6 -15.5t-16 -7.5q-6 -2 -20.5 -4.5t-35.5 -5t-47 -4.5t-55 -2q-45 0 -95 13t-91.5 47.5t-69 93.5t-27.5 152v147q0 94 27.5 153.5t69 93.5t91.5 46.5t95 12.5q29 0 55 -2t47 -4.5t35.5 -5.5t20.5 -4q10 -3 16 -7.5t6 -15.5v-67q0 -9 -4 -15t-15 -6h-3 +q-13 1 -31.5 2.5t-39.5 2.5t-43 2t-42 1q-32 0 -58.5 -9.5t-45.5 -31t-30 -57.5t-11 -89v-147q0 -52 11 -88t30 -58t45.5 -31.5t58.5 -9.5q20 0 42 1t43 2t39.5 2.5t31.5 2.5h3q11 0 15 -6t4 -15v-67zM420 -41q0 -3 -5 -8l-119 -123q-6 -7 -9.5 -10.5t-13.5 -3.5h-86 +q-9 0 -9 7q0 4 4 10l94 120q7 8 11.5 11.5t14.5 3.5h106q12 0 12 -7z" /> + <glyph glyph-name="Eacute" unicode="&#xc9;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64zM454 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105 +q11 0 11 -7z" /> + <glyph glyph-name="Ecircumflex" unicode="&#xca;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64zM484 802q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120 +q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="Edieresis" unicode="&#xcb;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64zM448 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM248 824 +q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="Egrave" unicode="&#xc8;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64zM403 801q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120q4 -4 4 -10z +" /> + <glyph glyph-name="Iacute" unicode="&#xcd;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM303 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Icircumflex" unicode="&#xce;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM332 801q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5 +t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="Idieresis" unicode="&#xcf;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM301 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM101 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6 +t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="Igrave" unicode="&#xcc;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM231 801q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120q4 -4 4 -10z" /> + <glyph glyph-name="Ntilde" unicode="&#xd1;" horiz-adv-x="712" +d="M637 40q0 -17 -11.5 -28.5t-28.5 -11.5h-101q-18 0 -33.5 4.5t-27.5 31.5l-222 487q-4 8 -9 8t-5 -8v-503q0 -8 -5.5 -14t-13.5 -6h-85q-8 0 -14 6t-6 14v683q0 17 11.5 28.5t28.5 11.5h108q16 0 25.5 -6t18.5 -26l233 -514q3 -8 8 -8t5 9v526q0 19 19 19h86q19 0 19 -19 +v-684zM539 900q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5l44 -33q26 -20 42 -20q13 0 20.5 6.5t7.5 26.5v21q0 16 14 16 +h57q14 0 14 -16v-22z" /> + <glyph glyph-name="Oacute" unicode="&#xd3;" horiz-adv-x="680" +d="M625 304q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM485 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135 +q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135zM488 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Ocircumflex" unicode="&#xd4;" horiz-adv-x="680" +d="M625 304q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM485 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135 +q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135zM524 802q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="Odieresis" unicode="&#xd6;" horiz-adv-x="680" +d="M625 304q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM485 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135 +q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135zM491 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM291 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72 +q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="Ograve" unicode="&#xd2;" horiz-adv-x="680" +d="M625 304q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM485 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135 +q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135zM426 801q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120q4 -4 4 -10z" /> + <glyph glyph-name="Otilde" unicode="&#xd5;" horiz-adv-x="680" +d="M625 304q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM485 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135 +q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135zM535 901q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5l44 -33 +q26 -20 42 -20q13 0 20.5 6.5t7.5 26.5v21q0 16 14 16h57q14 0 14 -16v-22z" /> + <glyph glyph-name="Scaron" unicode="&#x160;" horiz-adv-x="570" +d="M525 201q0 -38 -13 -75.5t-43.5 -67t-81 -48t-125.5 -18.5q-57 0 -99 5t-78 13q-8 2 -13.5 7t-5.5 13v72q0 8 5.5 13.5t13.5 5.5h2q15 -2 39.5 -3.5t50.5 -3t49.5 -2.5t37.5 -1q67 0 91.5 23t24.5 67q0 15 -4 26.5t-14 22.5t-26 22.5t-41 26.5l-132 79q-35 21 -57.5 42 +t-36 43.5t-19 47t-5.5 50.5q0 41 13 76t42.5 60.5t77 39.5t117.5 14q25 0 53 -1.5t55 -4.5t49 -6t35 -6q8 -2 13 -6.5t5 -12.5v-74q0 -8 -4.5 -13t-12.5 -5h-2q-50 5 -99 7.5t-98 2.5q-56 0 -80.5 -18.5t-24.5 -52.5q0 -12 3.5 -22.5t13 -21t25.5 -21.5t40 -24l120 -67 +q41 -23 68 -46.5t42.5 -48.5t22 -52t6.5 -57zM467 940q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="Uacute" unicode="&#xda;" horiz-adv-x="690" +d="M620 275q0 -80 -20.5 -134t-57 -87t-87 -47.5t-110.5 -14.5t-110.5 14.5t-87 47.5t-57 87t-20.5 134v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-449q0 -43 6 -74.5t21.5 -52.5t41.5 -31t67 -10q40 0 66.5 10t42 31t21.5 52.5t6 74.5v449q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-449zM512 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Ucircumflex" unicode="&#xdb;" horiz-adv-x="690" +d="M620 275q0 -80 -20.5 -134t-57 -87t-87 -47.5t-110.5 -14.5t-110.5 14.5t-87 47.5t-57 87t-20.5 134v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-449q0 -43 6 -74.5t21.5 -52.5t41.5 -31t67 -10q40 0 66.5 10t42 31t21.5 52.5t6 74.5v449q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-449zM531 801q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="Udieresis" unicode="&#xdc;" horiz-adv-x="690" +d="M620 275q0 -80 -20.5 -134t-57 -87t-87 -47.5t-110.5 -14.5t-110.5 14.5t-87 47.5t-57 87t-20.5 134v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-449q0 -43 6 -74.5t21.5 -52.5t41.5 -31t67 -10q40 0 66.5 10t42 31t21.5 52.5t6 74.5v449q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-449zM503 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM303 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="Ugrave" unicode="&#xd9;" horiz-adv-x="690" +d="M620 275q0 -80 -20.5 -134t-57 -87t-87 -47.5t-110.5 -14.5t-110.5 14.5t-87 47.5t-57 87t-20.5 134v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-449q0 -43 6 -74.5t21.5 -52.5t41.5 -31t67 -10q40 0 66.5 10t42 31t21.5 52.5t6 74.5v449q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-449zM424 801q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120q4 -4 4 -10z" /> + <glyph glyph-name="Yacute" unicode="&#xdd;" horiz-adv-x="615" +d="M590 728q0 -2 -2 -8l-152 -347q-14 -33 -29 -49.5t-32 -23.5v-280q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -13.5 6t-5.5 14v280q-17 7 -32 23.5t-29 49.5l-151 347q-2 6 -2 8q0 6 4 10.5t12 4.5h111q7 0 12 -5t7 -11l120 -298q5 -13 9.5 -16.5t7.5 -3.5q4 0 8.5 3.5t9.5 16.5 +l120 298q2 6 7 11t12 5h110q8 0 12.5 -4.5t4.5 -10.5zM481 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Ydieresis" unicode="&#x178;" horiz-adv-x="615" +d="M590 728q0 -2 -2 -8l-152 -347q-14 -33 -29 -49.5t-32 -23.5v-280q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -13.5 6t-5.5 14v280q-17 7 -32 23.5t-29 49.5l-151 347q-2 6 -2 8q0 6 4 10.5t12 4.5h111q7 0 12 -5t7 -11l120 -298q5 -13 9.5 -16.5t7.5 -3.5q4 0 8.5 3.5t9.5 16.5 +l120 298q2 6 7 11t12 5h110q8 0 12.5 -4.5t4.5 -10.5zM469 819q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM269 819q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6 +t6.5 -14v-88z" /> + <glyph glyph-name="Zcaron" unicode="&#x17d;" horiz-adv-x="588" +d="M548 20q0 -8 -6 -14t-14 -6h-437q-22 0 -36.5 8.5t-14.5 28.5v55q0 9 2.5 18t10.5 20l317 475q3 4 3 9q0 8 -10 8h-278q-19 0 -19 18v84q0 19 19 19h403q22 0 37.5 -9t15.5 -29v-58q0 -11 -4 -21.5t-10 -19.5l-312 -467q-4 -5 -4 -11t9 -6h308q8 0 14 -5t6 -13v-84z +M499 939q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="aacute" unicode="&#xe1;" horiz-adv-x="548" +d="M483 20q0 -8 -6 -14t-14 -6h-85q-8 0 -14 6t-6 14v16q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11 +t94.5 5q107 0 163.5 -47t56.5 -144v-360zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123zM439 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5 +h105q11 0 11 -7z" /> + <glyph glyph-name="acircumflex" unicode="&#xe2;" horiz-adv-x="548" +d="M483 20q0 -8 -6 -14t-14 -6h-85q-8 0 -14 6t-6 14v16q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11 +t94.5 5q107 0 163.5 -47t56.5 -144v-360zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123zM463 634q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10 +l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="adieresis" unicode="&#xe4;" horiz-adv-x="548" +d="M483 20q0 -8 -6 -14t-14 -6h-85q-8 0 -14 6t-6 14v16q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11 +t94.5 5q107 0 163.5 -47t56.5 -144v-360zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123zM433 662q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z +M233 662q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="agrave" unicode="&#xe0;" horiz-adv-x="548" +d="M483 20q0 -8 -6 -14t-14 -6h-85q-8 0 -14 6t-6 14v16q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11 +t94.5 5q107 0 163.5 -47t56.5 -144v-360zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123zM351 634q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120 +q4 -4 4 -10z" /> + <glyph glyph-name="aring" unicode="&#xe5;" horiz-adv-x="548" +d="M483 20q0 -8 -6 -14t-14 -6h-85q-8 0 -14 6t-6 14v16q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11 +t94.5 5q107 0 163.5 -47t56.5 -144v-360zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123zM385 731q0 -23 -8.5 -43t-23.5 -35t-35 -23.5t-43 -8.5t-43 8.5t-35 23.5t-24 35t-9 43t9 43t24 35t35 24t43 9 +t43 -9t35 -24t23.5 -35t8.5 -43zM323 732q0 20 -14 33.5t-34 13.5t-33 -13.5t-13 -33.5t13 -34t33 -14t34 14t14 34z" /> + <glyph glyph-name="atilde" unicode="&#xe3;" horiz-adv-x="548" +d="M483 20q0 -8 -6 -14t-14 -6h-85q-8 0 -14 6t-6 14v16q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11 +t94.5 5q107 0 163.5 -47t56.5 -144v-360zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123zM467 739q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7 +t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5l44 -33q26 -20 42 -20q13 0 20.5 6.5t7.5 26.5v21q0 16 14 16h57q14 0 14 -16v-22z" /> + <glyph glyph-name="ccedilla" unicode="&#xe7;" horiz-adv-x="468" +d="M423 31q0 -12 -4 -17.5t-17 -8.5q-17 -5 -50 -9t-79 -4q-49 0 -90.5 15t-72 45.5t-48 76t-17.5 106.5v93q0 61 17.5 106.5t48 76t72 45.5t90.5 15q46 0 79 -4t50 -9q13 -3 17 -8.5t4 -17.5v-65q0 -8 -5 -11.5t-13 -3.5h-3q-15 2 -28 3.5t-27 2t-32 1t-42 0.5 +q-18 0 -35 -6t-30.5 -20.5t-22 -40t-8.5 -64.5v-93q0 -39 8.5 -64.5t22 -40t30.5 -20.5t35 -6q24 0 42 0.5t32 1t27 2t28 3.5h3q8 0 13 -3.5t5 -11.5v-65zM336 -41q0 -4 -4 -8l-119 -123q-6 -7 -10 -10.5t-13 -3.5h-86q-9 0 -9 7q0 6 4 10l94 120q7 8 11.5 11.5t14.5 3.5 +h106q11 0 11 -7z" /> + <glyph glyph-name="eacute" unicode="&#xe9;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4zM456 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105 +q11 0 11 -7z" /> + <glyph glyph-name="ecircumflex" unicode="&#xea;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4zM473 634q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120 +q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="edieresis" unicode="&#xeb;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4zM443 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM243 659 +q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="egrave" unicode="&#xe8;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4zM352 634q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120q4 -4 4 -10 +z" /> + <glyph glyph-name="iacute" unicode="&#xed;" horiz-adv-x="268" +d="M302 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7zM201 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14.5 6.5t-6.5 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523h1z" /> + <glyph glyph-name="icircumflex" unicode="&#xee;" horiz-adv-x="268" +d="M200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523zM321 634q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5 +t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="idieresis" unicode="&#xef;" horiz-adv-x="268" +d="M200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523zM291 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM91 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6 +t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="igrave" unicode="&#xec;" horiz-adv-x="268" +d="M212 634q0 -7 -9 -7h-86q-9 0 -12.5 3t-10.5 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120q4 -4 4 -10zM200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523z" /> + <glyph glyph-name="ntilde" unicode="&#xf1;" horiz-adv-x="592" +d="M527 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v326q0 33 -2.5 54.5t-11 34t-25.5 18t-46 5.5q-26 0 -53.5 -9.5t-59.5 -26.5v-402q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q22 14 40.5 23t37.5 14.5t39 8 +t45 2.5q54 0 88 -17t52.5 -47t25.5 -71t7 -89v-326zM482 739q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5l44 -33 +q26 -20 42 -20q13 0 20.5 6.5t7.5 26.5v21q0 16 14 16h57q14 0 14 -16v-22z" /> + <glyph glyph-name="oacute" unicode="&#xf3;" horiz-adv-x="574" +d="M526 241q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19t-103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19t103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81zM394 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81 +q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81zM441 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="ocircumflex" unicode="&#xf4;" horiz-adv-x="574" +d="M526 241q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19t-103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19t103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81zM394 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81 +q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81zM472 634q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="odieresis" unicode="&#xf6;" horiz-adv-x="574" +d="M526 241q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19t-103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19t103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81zM394 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81 +q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81zM442 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM242 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z +" /> + <glyph glyph-name="ograve" unicode="&#xf2;" horiz-adv-x="574" +d="M526 241q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19t-103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19t103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81zM394 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81 +q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81zM368 634q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120q4 -4 4 -10z" /> + <glyph glyph-name="otilde" unicode="&#xf5;" horiz-adv-x="574" +d="M526 241q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19t-103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19t103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81zM394 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81 +q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81zM474 739q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5l44 -33q26 -20 42 -20 +q13 0 20.5 6.5t7.5 26.5v21q0 16 14 16h57q14 0 14 -16v-22z" /> + <glyph glyph-name="scaron" unicode="&#x161;" horiz-adv-x="489" +d="M444 148q0 -33 -12 -61.5t-36.5 -49.5t-61.5 -33t-86 -12q-15 0 -36.5 1t-46.5 3.5t-50 6t-46 9.5q-19 5 -19 23v60q0 6 4.5 11t12.5 5h4q18 -2 42.5 -4t48.5 -3.5t45 -2.5t32 -1q23 0 37 3.5t21.5 10t10 15.5t2.5 19q0 14 -10 25t-34 26l-137 84q-37 23 -60.5 58.5 +t-23.5 79.5q0 150 190 150q30 0 54.5 -1.5t45.5 -4.5t40 -6.5t38 -7.5q18 -5 18 -23v-58q0 -19 -16 -19h-4q-11 1 -30 3.5t-42 4t-47.5 3t-45.5 1.5q-36 0 -52.5 -9.5t-16.5 -32.5q0 -12 10.5 -21t29.5 -20l131 -80q31 -19 50 -38t29.5 -38t13.5 -38t3 -38zM433 772 +q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="uacute" unicode="&#xfa;" horiz-adv-x="592" +d="M527 20q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v23q-39 -26 -74 -38t-83 -12q-38 0 -69.5 10t-53.5 32q-28 28 -39 73.5t-11 108.5v326q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-326q0 -38 4.5 -60.5t18.5 -35.5q11 -9 25 -13.5t37 -4.5q14 0 29.5 4t30.5 10 +t28.5 13t24.5 13v400q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523zM463 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="ucircumflex" unicode="&#xfb;" horiz-adv-x="592" +d="M527 20q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v23q-39 -26 -74 -38t-83 -12q-38 0 -69.5 10t-53.5 32q-28 28 -39 73.5t-11 108.5v326q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-326q0 -38 4.5 -60.5t18.5 -35.5q11 -9 25 -13.5t37 -4.5q14 0 29.5 4t30.5 10 +t28.5 13t24.5 13v400q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523zM481 634q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z +" /> + <glyph glyph-name="udieresis" unicode="&#xfc;" horiz-adv-x="592" +d="M527 20q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v23q-39 -26 -74 -38t-83 -12q-38 0 -69.5 10t-53.5 32q-28 28 -39 73.5t-11 108.5v326q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-326q0 -38 4.5 -60.5t18.5 -35.5q11 -9 25 -13.5t37 -4.5q14 0 29.5 4t30.5 10 +t28.5 13t24.5 13v400q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523zM458 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM258 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72 +q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="ugrave" unicode="&#xf9;" horiz-adv-x="592" +d="M527 20q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v23q-39 -26 -74 -38t-83 -12q-38 0 -69.5 10t-53.5 32q-28 28 -39 73.5t-11 108.5v326q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-326q0 -38 4.5 -60.5t18.5 -35.5q11 -9 25 -13.5t37 -4.5q14 0 29.5 4t30.5 10 +t28.5 13t24.5 13v400q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523zM380 634q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120q4 -4 4 -10z" /> + <glyph glyph-name="yacute" unicode="&#xfd;" horiz-adv-x="560" +d="M535 547q0 -4 -1 -6l-167 -584q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 8 6 13t14 5h2q10 0 25.5 -1l31 -2t30.5 -2t26 -1q32 0 50 12.5t29 51.5l8 30h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5 +t-18.5 45.5l-131 458q-1 3 -1 7q0 16 19 16h101q7 0 12 -5.5t7 -12.5l101 -407q3 -13 6 -17.5t8 -4.5h1h5h3l108 430q2 7 7 12t13 5h102q8 0 13 -5t5 -12zM471 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5 +h105q11 0 11 -7z" /> + <glyph glyph-name="ydieresis" unicode="&#xff;" horiz-adv-x="560" +d="M535 547q0 -4 -1 -6l-167 -584q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 8 6 13t14 5h2q10 0 25.5 -1l31 -2t30.5 -2t26 -1q32 0 50 12.5t29 51.5l8 30h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5 +t-18.5 45.5l-131 458q-1 3 -1 7q0 16 19 16h101q7 0 12 -5.5t7 -12.5l101 -407q3 -13 6 -17.5t8 -4.5h1h5h3l108 430q2 7 7 12t13 5h102q8 0 13 -5t5 -12zM443 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z +M243 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="zcaron" unicode="&#x17e;" horiz-adv-x="490" +d="M450 20q0 -8 -6 -14t-14 -6h-350q-17 0 -28.5 11.5t-11.5 28.5v43q0 15 13 32l242 333q3 4 3 6q0 3 -6 3h-226q-8 0 -13 4t-5 12v71q0 8 6 14t14 6h340q17 0 28.5 -12t11.5 -29v-57q0 -4 -1.5 -12t-3.5 -11l-233 -319l-2 -3q0 -4 6 -4h218q8 0 13 -4t5 -12v-81zM449 772 +q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="oneeighth" unicode="&#x215b;" horiz-adv-x="764" +d="M120 751q3 2 9.5 2.5t11.5 0.5h36q10 0 13.5 -5t3.5 -12v-380q0 -7 -5 -12t-12 -5h-53q-7 0 -12 5t-5 12v307l-56 -19q-7 -2 -14 -0.5t-7 11.5v53q0 5 2 7t7 4zM600 735q0 -7 -4 -12l-419 -709q-6 -11 -9.5 -14t-11.5 -3h-82q-10 0 -10 9q0 7 4 12l419 708q6 10 10 13.5 +t12 3.5h81q10 0 10 -8zM734 122q0 -34 -11.5 -58t-31.5 -39t-46 -22t-55 -7h-5q-29 0 -55 7t-46 22t-31.5 39t-11.5 58v5q0 26 12 49t32 39q-25 17 -34 38t-9 49q0 31 11.5 53.5t31 36t45.5 20t55 6.5h5q29 0 55 -6.5t45.5 -20.5t31 -36.5t11.5 -54.5q0 -26 -10 -47t-34 -38 +q45 -33 45 -88v-5zM650 127q0 9 -2.5 18.5t-8.5 17.5t-16 13t-24 5h-23q-14 0 -24 -5t-16 -13t-8.5 -17.5t-2.5 -18.5v-5q0 -26 15 -42t45 -16h5q30 0 45 16t15 42v5zM585 351q-33 0 -47 -14t-14 -40q0 -21 12 -35t40 -14h23q28 0 40.5 14t12.5 35q0 26 -14 40t-47 14h-6z +" /> + <glyph glyph-name="threeeighths" unicode="&#x215c;" horiz-adv-x="829" +d="M665 735q0 -7 -4 -12l-419 -709q-6 -11 -9.5 -14t-11.5 -3h-82q-10 0 -10 9q0 7 4 12l419 708q6 10 10 13.5t12 3.5h81q10 0 10 -8zM799 122q0 -34 -11.5 -58t-31.5 -39t-46 -22t-55 -7h-5q-29 0 -55 7t-46 22t-31.5 39t-11.5 58v5q0 26 12 49t32 39q-25 17 -34 38t-9 49 +q0 31 11.5 53.5t31 36t45.5 20t55 6.5h5q29 0 55 -6.5t45.5 -20.5t31 -36.5t11.5 -54.5q0 -26 -10 -47t-34 -38q45 -33 45 -88v-5zM715 127q0 9 -2.5 18.5t-8.5 17.5t-16 13t-24 5h-23q-14 0 -24 -5t-16 -13t-8.5 -17.5t-2.5 -18.5v-5q0 -26 15 -42t45 -16h5q30 0 45 16 +t15 42v5zM650 351q-33 0 -47 -14t-14 -40q0 -21 12 -35t40 -14h23q28 0 40.5 14t12.5 35q0 26 -14 40t-47 14h-6zM292 458q0 -32 -11 -55t-30 -38t-45 -22t-56 -7q-29 0 -55 4t-49 9q-6 2 -11 6.5t-5 10.5v33q0 8 5 12t13 4q32 -4 58 -6t44 -2q30 0 42.5 13t12.5 38v12 +q0 19 -8.5 34t-35.5 15h-95q-7 0 -12 4t-5 12v34q0 8 5 12t12 4h95q27 0 35.5 13.5t8.5 33.5v9q0 18 -10.5 32t-44.5 14q-28 0 -51.5 -2.5t-52.5 -5.5q-6 0 -11 4t-5 12v33q0 5 5 9.5t11 6.5q23 6 49 10t55 4q30 0 56 -6.5t45 -20.5t30 -36t11 -54v-9q0 -55 -41 -80 +q20 -14 30.5 -35.5t10.5 -46.5v-12z" /> + <glyph glyph-name="fiveeighths" unicode="&#x215d;" horiz-adv-x="833" +d="M669 735q0 -7 -4 -12l-419 -709q-6 -11 -9.5 -14t-11.5 -3h-82q-10 0 -10 9q0 7 4 12l419 708q6 10 10 13.5t12 3.5h81q10 0 10 -8zM803 122q0 -34 -11.5 -58t-31.5 -39t-46 -22t-55 -7h-5q-29 0 -55 7t-46 22t-31.5 39t-11.5 58v5q0 26 12 49t32 39q-25 17 -34 38t-9 49 +q0 31 11.5 53.5t31 36t45.5 20t55 6.5h5q29 0 55 -6.5t45.5 -20.5t31 -36.5t11.5 -54.5q0 -26 -10 -47t-34 -38q45 -33 45 -88v-5zM719 127q0 9 -2.5 18.5t-8.5 17.5t-16 13t-24 5h-23q-14 0 -24 -5t-16 -13t-8.5 -17.5t-2.5 -18.5v-5q0 -26 15 -42t45 -16h5q30 0 45 16 +t15 42v5zM654 351q-33 0 -47 -14t-14 -40q0 -21 12 -35t40 -14h23q28 0 40.5 14t12.5 35q0 26 -14 40t-47 14h-6zM296 474q0 -65 -35.5 -101.5t-110.5 -36.5q-24 0 -52.5 3.5t-51.5 9.5q-7 2 -11.5 5t-4.5 13v32q0 8 5 12t13 4q32 -5 58 -6.5t44 -1.5q35 0 46.5 18.5 +t11.5 51.5q0 31 -20.5 43t-68.5 12h-73q-6 0 -9 4t-3 9l17 195q2 5 6.5 9.5t10.5 4.5h196q7 0 12 -5t5 -12v-41q0 -8 -5 -12t-12 -4h-141l-7 -77h3q32 0 63.5 -4.5t57 -18t41 -38t15.5 -65.5v-3z" /> + <glyph glyph-name="seveneighths" unicode="&#x215e;" horiz-adv-x="750" +d="M586 735q0 -7 -4 -12l-419 -709q-6 -11 -9.5 -14t-11.5 -3h-82q-10 0 -10 9q0 7 4 12l419 708q6 10 10 13.5t12 3.5h81q10 0 10 -8zM720 122q0 -34 -11.5 -58t-31.5 -39t-46 -22t-55 -7h-5q-29 0 -55 7t-46 22t-31.5 39t-11.5 58v5q0 26 12 49t32 39q-25 17 -34 38t-9 49 +q0 31 11.5 53.5t31 36t45.5 20t55 6.5h5q29 0 55 -6.5t45.5 -20.5t31 -36.5t11.5 -54.5q0 -26 -10 -47t-34 -38q45 -33 45 -88v-5zM636 127q0 9 -2.5 18.5t-8.5 17.5t-16 13t-24 5h-23q-14 0 -24 -5t-16 -13t-8.5 -17.5t-2.5 -18.5v-5q0 -26 15 -42t45 -16h5q30 0 45 16 +t15 42v5zM571 351q-33 0 -47 -14t-14 -40q0 -21 12 -35t40 -14h23q28 0 40.5 14t12.5 35q0 26 -14 40t-47 14h-6zM143 354q-8 -14 -19 -14h-56q-9 0 -12.5 6.5t-0.5 13.5l153 320h-161q-7 0 -12 4t-5 12v41q0 7 5 12t12 5h225q18 0 23 -8.5t5 -19.5v-21q0 -11 -2.5 -18 +t-7.5 -17z" /> + <glyph glyph-name="onethird" unicode="&#x2153;" horiz-adv-x="748" +d="M120 751q3 2 9.5 2.5t11.5 0.5h36q10 0 13.5 -5t3.5 -12v-380q0 -7 -5 -12t-12 -5h-53q-7 0 -12 5t-5 12v307l-56 -19q-7 -2 -14 -0.5t-7 11.5v53q0 5 2 7t7 4zM600 735q0 -7 -4 -12l-419 -709q-6 -11 -9.5 -14t-11.5 -3h-82q-10 0 -10 9q0 7 4 12l419 708q6 10 10 13.5 +t12 3.5h81q10 0 10 -8zM718 118q0 -32 -11 -55t-30 -38t-45 -22t-56 -7q-29 0 -55 4t-49 9q-6 2 -11 6.5t-5 10.5v33q0 8 5 12t13 4q32 -4 58 -6t44 -2q30 0 42.5 13t12.5 38v12q0 19 -8.5 34t-35.5 15h-95q-7 0 -12 4t-5 12v34q0 8 5 12t12 4h95q27 0 35.5 13.5t8.5 33.5v9 +q0 18 -10.5 32t-44.5 14q-28 0 -51.5 -2.5t-52.5 -5.5q-6 0 -11 4t-5 12v33q0 5 5 9.5t11 6.5q23 6 49 10t55 4q30 0 56 -6.5t45 -20.5t30 -36t11 -54v-9q0 -55 -41 -80q20 -14 30.5 -35.5t10.5 -46.5v-12z" /> + <glyph glyph-name="twothirds" unicode="&#x2154;" horiz-adv-x="827" +d="M679 735q0 -7 -4 -12l-419 -709q-6 -11 -9.5 -14t-11.5 -3h-82q-10 0 -10 9q0 7 4 12l419 708q6 10 10 13.5t12 3.5h81q10 0 10 -8zM797 118q0 -32 -11 -55t-30 -38t-45 -22t-56 -7q-29 0 -55 4t-49 9q-6 2 -11 6.5t-5 10.5v33q0 8 5 12t13 4q32 -4 58 -6t44 -2 +q30 0 42.5 13t12.5 38v12q0 19 -8.5 34t-35.5 15h-95q-7 0 -12 4t-5 12v34q0 8 5 12t12 4h95q27 0 35.5 13.5t8.5 33.5v9q0 18 -10.5 32t-44.5 14q-28 0 -51.5 -2.5t-52.5 -5.5q-6 0 -11 4t-5 12v33q0 5 5 9.5t11 6.5q23 6 49 10t55 4q30 0 56 -6.5t45 -20.5t30 -36t11 -54 +v-9q0 -55 -41 -80q20 -14 30.5 -35.5t10.5 -46.5v-12zM297 653q0 -35 -18.5 -60.5t-52.5 -48.5l-48 -33q-34 -23 -53 -45t-21 -52h172q7 0 12 -4t5 -12v-41q0 -7 -5 -12t-12 -5h-229q-7 0 -12 5t-5 12v53q0 45 25.5 84t59.5 62l54 36q26 17 36 29t10 32q0 19 -13 26.5 +t-44 7.5q-23 0 -53 -2.5t-55 -5.5q-8 0 -12.5 5t-4.5 12v32q0 6 4.5 10t10.5 6h-1q21 6 52.5 10t58.5 4q74 0 106.5 -25.5t32.5 -79.5z" /> + <glyph glyph-name="zero.oldstyle" unicode="&#xf730;" +d="M576 286q0 -78 -18 -134t-52 -91.5t-82 -52t-109 -16.5t-109.5 16.5t-82 52t-51.5 91.5t-18 134v14q0 78 18 134t51.5 92t82 52.5t109.5 16.5t109 -16.5t82 -52.5t52 -92t18 -134v-14zM437 300q0 53 -9.5 88t-26 56t-38.5 29.5t-48 8.5t-48 -8.5t-38.5 -29.5t-26 -56 +t-9.5 -88v-14q0 -53 9.5 -88t26 -55.5t38.5 -29t48 -8.5t48 8.5t38.5 29t26 55.5t9.5 88v14z" /> + <glyph glyph-name="one.oldstyle" unicode="&#xf731;" horiz-adv-x="462" +d="M330 20q0 -8 -6 -14t-14 -6h-98q-8 0 -14 6t-6 14v420l-118 -40q-5 -2 -12 -2q-11 0 -11 12v97q0 8 7 11l164 58q5 2 10 3t13 1h66q19 0 19 -19v-541v0z" /> + <glyph glyph-name="two.oldstyle" unicode="&#xf732;" +d="M553 412q0 -38 -16 -67t-42 -51.5t-59.5 -40t-68.5 -32.5q-31 -13 -60 -24.5t-51.5 -23.5t-36 -25.5t-13.5 -29.5v-4h319q8 0 14 -5t6 -13v-76q0 -8 -6 -14t-14 -6h-424q-8 0 -14 6t-6 14v69q0 48 15 81t42 57.5t64 43t82 36.5q27 11 52 22t44.5 23.5t31.5 27t12 32.5 +q0 41 -27 57.5t-90 16.5q-22 0 -47.5 -1.5t-52 -3.5t-52.5 -4.5t-48 -5.5h-2q-8 0 -13 6t-5 14v60q0 8 5.5 12.5t13.5 6.5q19 5 44 9.5t51.5 8t54 5.5t51.5 2q131 0 188.5 -45t57.5 -138z" /> + <glyph glyph-name="three.oldstyle" unicode="&#xf733;" +d="M546 52q0 -56 -19.5 -96.5t-53 -67t-79.5 -39.5t-99 -13q-56 0 -102.5 7t-89.5 18q-8 2 -13.5 6.5t-5.5 12.5v62q0 8 5 13t13 5h2q60 -6 107.5 -10t83.5 -4q61 0 86.5 26.5t25.5 79.5v21q0 20 -3.5 38t-14 32t-28.5 22.5t-46 8.5h-177q-19 0 -19 19v63q0 19 19 19h177 +q28 0 46 8t28.5 21.5t14 31t3.5 37.5v16q0 19 -4.5 36.5t-17 30.5t-34.5 21t-56 8q-27 0 -47.5 -1t-41.5 -2.5t-45 -4.5t-57 -6h-2q-8 0 -13 5t-5 13v62q0 8 5.5 12.5t13.5 6.5q43 11 89.5 18t102.5 7q54 0 100 -11t79.5 -35.5t52.5 -63.5t19 -96v-16q0 -53 -22.5 -89.5 +t-63.5 -58.5q42 -23 64 -63.5t22 -88.5v-21v0z" /> + <glyph glyph-name="four.oldstyle" unicode="&#xf734;" +d="M592 36q0 -8 -6 -14t-14 -6h-74v-159q0 -8 -5 -14t-13 -6h-103q-8 0 -13 6t-5 14v159h-300q-8 0 -14 6t-6 14v81q0 18 11 32l308 413q5 8 11.5 13t17.5 5h91q8 0 14 -6t6 -14v-434h74q8 0 14 -6t6 -14v-70zM360 380q0 6 -3 6t-7 -6l-175 -243q-3 -3 -3 -6q0 -5 8 -5h180 +v254z" /> + <glyph glyph-name="five.oldstyle" unicode="&#xf735;" +d="M552 74q0 -113 -63 -179t-194 -66q-45 0 -97 7t-95 18q-8 2 -13.5 6.5t-5.5 15.5v59q0 8 5 13t13 5h2q60 -8 107.5 -11t83.5 -3q35 0 58 9.5t36.5 27t18.5 42.5t5 56v5q0 62 -41.5 87t-135.5 25h-135q-5 0 -8 4.5t-3 8.5v2l32 356q1 8 6.5 13t13.5 5h363q8 0 14 -5.5 +t6 -13.5v-76q0 -8 -6 -13.5t-14 -5.5h-271l-15 -166h17q57 0 113.5 -7.5t101.5 -31t73 -67t28 -115.5v-5v0z" /> + <glyph glyph-name="six.oldstyle" unicode="&#xf736;" +d="M580 240q0 -56 -17 -101.5t-50 -78t-81 -50.5t-110 -18q-56 0 -104 18t-83 55.5t-55 96t-20 139.5v115q0 90 17.5 154t52.5 104t86.5 58.5t120.5 18.5q66 0 113 -7t72 -12q11 -2 17 -6.5t6 -14.5v-62q0 -21 -19 -21h-4q-14 2 -36.5 4.5t-48 4.5t-52 3t-48.5 1 +q-38 0 -64.5 -9t-43 -30.5t-24.5 -56.5t-9 -86q24 5 61 8t78 3q49 0 93 -11.5t78 -37t54 -68t20 -103.5v-10zM444 250q0 35 -11 58t-30 36.5t-44 19t-52 5.5q-22 0 -55 -3t-56 -8v-57q0 -63 9.5 -102t26 -61t40 -30t50.5 -8q25 0 47.5 6.5t39 22.5t26 43t9.5 68v10z" /> + <glyph glyph-name="seven.oldstyle" unicode="&#xf737;" horiz-adv-x="568" +d="M528 486q0 -8 -5 -18.5t-13 -27.5l-270 -584q-5 -11 -11 -15t-16 -4h-104q-7 0 -10.5 4.5t-3.5 10.5q0 3 2 9l287 598q3 7 -5 7h-308q-8 0 -14 5t-6 13v77q0 8 6 13.5t14 5.5h417q17 0 28.5 -11.5t11.5 -28.5v-54v0z" /> + <glyph glyph-name="eight.oldstyle" unicode="&#xf738;" +d="M577 215q0 -59 -21 -101.5t-56.5 -69.5t-82 -39.5t-97.5 -12.5h-10q-51 0 -97.5 12.5t-81.5 39.5t-56 69.5t-21 101.5v9q0 51 25 92.5t66 70.5q-46 30 -66.5 69.5t-20.5 86.5v4q0 56 20 95t54.5 63t80.5 35t97 11h10q51 0 97.5 -11t81 -35t55 -63t20.5 -95v-4 +q0 -47 -21 -86.5t-67 -69.5q41 -29 66 -70.5t25 -92.5v-9zM445 543q0 51 -29.5 78.5t-95.5 27.5h-10q-66 0 -94.5 -27.5t-28.5 -78.5v-4q0 -44 25 -73.5t83 -29.5h41q58 0 83.5 29.5t25.5 73.5v4zM442 224q0 18 -5.5 37.5t-18 35.5t-32.5 26.5t-50 10.5h-41q-30 0 -50 -10.5 +t-32.5 -26.5t-18 -35.5t-5.5 -37.5v-9q0 -51 30 -85t91 -34h10q61 0 91.5 34t30.5 85v9z" /> + <glyph glyph-name="nine.oldstyle" unicode="&#xf739;" +d="M569 171q0 -90 -17.5 -154t-52.5 -104t-86.5 -58.5t-120.5 -18.5q-66 0 -113 7t-72 12q-11 2 -17 6.5t-6 14.5v62q0 25 23 21q14 -2 36.5 -4.5t48 -4.5t51.5 -3t49 -1q38 0 64.5 9t43 30.5t24.5 56.5t9 86q-24 -5 -61 -8t-78 -3q-49 0 -93.5 11.5t-78 37t-53.5 67.5 +t-20 104v10q0 55 17 101t50 78.5t81 50.5t110 18q56 0 104 -18t83 -55.5t55 -96t20 -139.5v-115zM433 286q0 63 -9.5 102t-26 61t-40 30t-50.5 8q-26 0 -48 -6.5t-38.5 -22.5t-26 -43t-9.5 -68v-10q0 -35 11 -58t30 -36.5t44 -19t52 -5.5q22 0 55 3t56 8v57z" /> + <glyph glyph-name="uni2014.alt" unicode="&#xe068;" horiz-adv-x="599" +d="M554 256q0 -18 -19 -18h-471q-19 0 -19 18v63q0 19 19 19h471q19 0 19 -19v-63v0z" /> + <glyph glyph-name="a.superior" unicode="&#xf6e9;" horiz-adv-x="312" +d="M277 335q0 -14 -14 -14h-49q-13 0 -13 14v4q-38 -23 -77 -23q-18 0 -36 4.5t-32.5 15.5t-23.5 30.5t-9 49.5q0 51 33 76t108 25h33v22q0 26 -11.5 34.5t-35.5 8.5q-28 0 -53 -1.5t-42 -3.5q-13 0 -13 13v35q0 14 13 15q17 4 41.5 6.5t53.5 2.5q62 0 94.5 -27t32.5 -83 +v-204zM197 461h-33q-38 0 -49 -11.5t-11 -35.5q0 -20 9 -26.5t29 -6.5q14 0 28.5 4.5t26.5 10.5v65z" /> + <glyph glyph-name="b.superior" unicode="&#xf6ea;" horiz-adv-x="329" +d="M305 462q0 -68 -34 -107t-104 -39q-28 0 -58 4t-57 11q-11 3 -14 7t-3 12v392q0 15 14 15h53q13 0 13 -15v-96q15 2 28.5 2.5t23.5 0.5q70 0 104 -38t34 -107v-42zM225 504q0 34 -11.5 56.5t-46.5 22.5q-10 0 -25 -0.5t-27 -2.5v-193q8 -2 23 -3t29 -1q35 0 46.5 22.5 +t11.5 56.5v42z" /> + <glyph glyph-name="d.superior" unicode="&#xf6eb;" horiz-adv-x="329" +d="M294 350q0 -8 -3 -12t-15 -7q-26 -7 -56 -11t-58 -4q-70 0 -104 39t-34 107v42q0 69 34 107t104 38q10 0 23.5 -0.5t28.5 -2.5v96q0 15 13 15h52q15 0 15 -15v-392zM214 580q-12 2 -27 2.5t-25 0.5q-35 0 -46.5 -22.5t-11.5 -56.5v-42q0 -34 11.5 -56.5t46.5 -22.5 +q14 0 29 1t23 3v193z" /> + <glyph glyph-name="e.superior" unicode="&#xf6ec;" horiz-adv-x="327" +d="M302 472q0 -17 -15 -17l-181 -2q0 -12 3 -23.5t10.5 -21.5t20 -16t31.5 -6q27 0 51 1.5t42 3.5q3 0 6 0.5t7 0.5q13 0 13 -11v-37q0 -8 -2.5 -12t-11.5 -6q-14 -3 -25.5 -4.5t-24 -3t-27 -2t-34.5 -0.5q-22 0 -46.5 7t-45.5 23.5t-34.5 44.5t-13.5 71v41q0 69 36.5 107.5 +t102.5 38.5q67 0 102.5 -40t35.5 -106v-31zM164 579q-24 0 -40.5 -17t-17.5 -49h112q0 66 -54 66z" /> + <glyph glyph-name="i.superior" unicode="&#xf6ed;" horiz-adv-x="153" +d="M117 336q0 -6 -4 -10.5t-10 -4.5h-53q-6 0 -10 4.5t-4 10.5v295q0 14 14 14h53q14 0 14 -14v-295zM119 697q0 -15 -15 -15h-55q-6 0 -10.5 4t-4.5 11v49q0 6 4.5 10t10.5 4h55q15 0 15 -14v-49z" /> + <glyph glyph-name="l.superior" unicode="&#xf6ee;" horiz-adv-x="155" +d="M118 336q0 -6 -3.5 -10.5t-10.5 -4.5h-53q-6 0 -10 4.5t-4 10.5v406q0 15 14 15h53q14 0 14 -15v-406v0z" /> + <glyph glyph-name="m.superior" unicode="&#xf6ef;" horiz-adv-x="483" +d="M447 336q0 -6 -4 -10.5t-10 -4.5h-52q-6 0 -10 4.5t-4 10.5v192q0 32 -7.5 42t-30.5 10q-8 0 -21.5 -2.5t-27.5 -10.5q2 -10 2 -19v-20v-192q0 -6 -4 -10.5t-10 -4.5h-53q-6 0 -10 4.5t-4 10.5v192q0 32 -6.5 42t-28.5 10q-16 0 -50 -18v-226q0 -6 -4 -10.5t-10 -4.5h-52 +q-6 0 -10 4.5t-4 10.5v295q0 14 14 14h49q14 0 14 -14v-6q16 10 35.5 17t42.5 7q47 0 68 -24q22 12 42 18t50 6q29 0 48 -9.5t29.5 -25.5t14.5 -38.5t4 -47.5v-192v0z" /> + <glyph glyph-name="n.superior" unicode="&#x207f;" horiz-adv-x="337" +d="M302 336q0 -6 -4 -10.5t-10 -4.5h-52q-7 0 -10.5 4.5t-3.5 10.5v184q0 35 -7 48t-38 13q-14 0 -29 -5t-33 -15v-225q0 -6 -3.5 -10.5t-9.5 -4.5h-53q-6 0 -10 4.5t-4 10.5v295q0 14 14 14h50q13 0 13 -14v-5q23 14 42.5 18.5t47.5 4.5q31 0 51 -10t30.5 -27t14.5 -40.5 +t4 -51.5v-184v0z" /> + <glyph glyph-name="o.superior" unicode="&#xf6f0;" horiz-adv-x="327" +d="M302 460q0 -31 -9 -57t-26.5 -45.5t-43 -30.5t-59.5 -11t-60 11t-43.5 30.5t-26.5 45.5t-9 57v46q0 63 35 103t104 40q68 0 103 -40t35 -103v-46zM221 506q0 33 -14.5 53t-42.5 20q-29 0 -43.5 -20t-14.5 -53v-46q0 -33 14.5 -53.5t43.5 -20.5q28 0 42.5 20.5t14.5 53.5 +v46z" /> + <glyph glyph-name="r.superior" unicode="&#xf6f1;" horiz-adv-x="214" +d="M204 595q0 -14 -14 -14q-21 0 -39 -5t-36 -15v-225q0 -6 -4 -10.5t-10 -4.5h-52q-6 0 -10 4.5t-4 10.5v295q0 14 14 14h49q14 0 14 -14v-6q21 15 41.5 19.5t36.5 4.5q14 0 14 -14v-40v0z" /> + <glyph glyph-name="s.superior" unicode="&#xf6f2;" horiz-adv-x="279" +d="M255 407q0 -38 -28.5 -64.5t-85.5 -26.5q-8 0 -20.5 0.5t-26.5 2t-28.5 4t-26.5 5.5q-13 5 -13 16v34q0 11 15 11q10 -1 24 -2t27.5 -2t25.5 -1.5t18 -0.5q25 0 31.5 7t6.5 17q0 7 -5.5 12.5t-18.5 13.5l-77 48q-22 13 -35.5 34t-13.5 47q0 87 110 87q35 0 57 -3t44 -8 +q13 -5 13 -16v-32q0 -14 -15 -14q-12 2 -40 4.5t-53 2.5q-19 0 -27.5 -4.5t-8.5 -16.5q0 -5 5.5 -9.5t16.5 -10.5l73 -46q35 -22 45.5 -44t10.5 -45z" /> + <glyph glyph-name="t.superior" unicode="&#xf6f3;" horiz-adv-x="231" +d="M219 334q0 -6 -3.5 -9t-9.5 -5q-2 0 -3 -0.5t-3 -0.5q-17 -3 -33 -3q-25 0 -42.5 3.5t-29 13.5t-17 28.5t-5.5 47.5v175q-11 2 -24.5 4t-24.5 4q-6 2 -10.5 5.5t-4.5 8.5v25q0 6 4.5 10t10.5 4h49v44q0 11 13 15l57 9q12 0 12 -12v-56h47q15 0 15 -14v-33q0 -14 -15 -14 +h-47v-175q0 -19 3 -24t15 -5h31q15 0 15 -10v-36v0z" /> + <glyph glyph-name="one.superior" unicode="&#xb9;" horiz-adv-x="254" +d="M113 751q3 2 9.5 2.5t11.5 0.5h36q10 0 13.5 -5t3.5 -12v-380q0 -7 -5 -12t-12 -5h-53q-7 0 -12 5t-5 12v307l-56 -19q-7 -2 -14 -0.5t-7 11.5v53q0 5 2 7t7 4z" /> + <glyph glyph-name="two.superior" unicode="&#xb2;" horiz-adv-x="347" +d="M58 744q21 6 52.5 10t58.5 4q74 0 106.5 -25.5t32.5 -79.5q0 -35 -18.5 -60.5t-52.5 -48.5l-48 -33q-20 -14 -34 -25t-22.5 -22t-12.5 -23t-5 -27h172q7 0 12 -3t5 -13v-41q0 -9 -5 -13t-12 -4h-229q-7 0 -12 5t-5 12v53q0 45 20 80.5t65 65.5l54 36q26 17 36 29t10 32 +q0 19 -13 26.5t-44 7.5q-23 0 -53 -2.5t-55 -5.5q-11 -2 -14 4t-3 13v32q0 12 14 16z" /> + <glyph glyph-name="three.superior" unicode="&#xb3;" horiz-adv-x="347" +d="M304 458q0 -32 -11 -55t-30 -38t-45 -22t-56 -7q-29 0 -55 4t-49 9q-6 2 -11 5.5t-5 11.5v33q0 8 3.5 13t14.5 3q32 -4 58 -6t44 -2q30 0 42.5 13t12.5 38v12q0 19 -8.5 34t-35.5 15h-95q-7 0 -12 4t-5 12v34q0 8 5 12t12 4h95q27 0 35.5 13.5t8.5 33.5v9q0 18 -10.5 32 +t-44.5 14q-28 0 -51.5 -2.5t-52.5 -5.5q-6 0 -11 4t-5 12v33q0 5 5 9.5t11 6.5q23 6 49 10t55 4q30 0 56 -6.5t45 -20.5t30 -36t11 -54v-9q0 -55 -41 -80q20 -14 30.5 -35.5t10.5 -46.5v-12v0z" /> + <glyph glyph-name="commaaccent" unicode="&#xf6c3;" horiz-adv-x="415" +d="M286 -63q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="Abreve" unicode="&#x102;" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-106q-7 0 -12 5t-7 12l-46 190h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2z +M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176zM498 939q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5 +t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="Amacron" unicode="&#x100;" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-106q-7 0 -12 5t-7 12l-46 190h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2z +M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176zM495 847q0 -8 -6 -13t-14 -5h-310q-8 0 -14 5t-6 13v57q0 8 6 13t14 5h310q8 0 14 -5t6 -13v-57z" /> + <glyph glyph-name="Aogonek" unicode="&#x104;" horiz-adv-x="646" +d="M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176zM438 207h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q2 -5 1 -9.5 +t-6 -8.5l-51 -34q-17 -11 -28 -19t-17.5 -14t-9 -11.5t-2.5 -11.5q0 -19 34 -19q11 0 22.5 1.5t22 3t18 3t10.5 1.5q7 0 8.5 -2t1.5 -10v-57v-1q0 -5 -1.5 -8t-9.5 -7q-11 -5 -36 -12.5t-67 -7.5q-24 0 -47 6t-41 17.5t-28.5 28.5t-10.5 40q0 22 5 37.5t15.5 28t27.5 24 +t40 26.5l8 5z" /> + <glyph glyph-name="AEacute" unicode="&#x1fc;" horiz-adv-x="880" +d="M820 27q0 -11 -4.5 -15t-15.5 -6q-12 -3 -23.5 -5.5t-28 -4.5t-42.5 -3t-66 -1q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v10h-201l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 54t36.5 28t40 10.5t36.5 1.5h477q20 0 20 -21 +v-70q0 -8 -6 -14t-14 -6h-253v-194h241q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-241v-129q0 -50 17.5 -68t61.5 -18h174q8 0 14 -6t6 -14v-64zM409 634h-86q-8 0 -11 -3.5t-5 -12.5l-72 -297h174v313zM658 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86 +q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Cacute" unicode="&#x106;" horiz-adv-x="563" +d="M518 31q0 -11 -6 -15.5t-16 -7.5q-6 -2 -20.5 -4.5t-35.5 -5t-47 -4.5t-55 -2q-45 0 -95 13t-91.5 47.5t-69 93.5t-27.5 152v147q0 94 27.5 153.5t69 93.5t91.5 46.5t95 12.5q29 0 55 -2t47 -4.5t35.5 -5.5t20.5 -4q10 -3 16 -7.5t6 -15.5v-67q0 -9 -4.5 -15t-15.5 -6h-2 +q-13 1 -31.5 2.5t-39.5 2.5t-43 2t-42 1q-32 0 -58.5 -9.5t-45.5 -31t-30 -57.5t-11 -89v-147q0 -52 11 -88t30 -58t45.5 -31.5t58.5 -9.5q20 0 42 1t43 2t39.5 2.5t31.5 2.5h2q11 0 15.5 -6t4.5 -15v-67zM471 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86 +q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Ccaron" unicode="&#x10c;" horiz-adv-x="563" +d="M518 31q0 -11 -6 -15.5t-16 -7.5q-6 -2 -20.5 -4.5t-35.5 -5t-47 -4.5t-55 -2q-45 0 -95 13t-91.5 47.5t-69 93.5t-27.5 152v147q0 94 27.5 153.5t69 93.5t91.5 46.5t95 12.5q29 0 55 -2t47 -4.5t35.5 -5.5t20.5 -4q10 -3 16 -7.5t6 -15.5v-67q0 -9 -4.5 -15t-15.5 -6h-2 +q-13 1 -31.5 2.5t-39.5 2.5t-43 2t-42 1q-32 0 -58.5 -9.5t-45.5 -31t-30 -57.5t-11 -89v-147q0 -52 11 -88t30 -58t45.5 -31.5t58.5 -9.5q20 0 42 1t43 2t39.5 2.5t31.5 2.5h2q11 0 15.5 -6t4.5 -15v-67zM505 939q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130 +q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="Ccircumflex" unicode="&#x108;" horiz-adv-x="563" +d="M518 31q0 -11 -6 -15.5t-16 -7.5q-6 -2 -20.5 -4.5t-35.5 -5t-47 -4.5t-55 -2q-45 0 -95 13t-91.5 47.5t-69 93.5t-27.5 152v147q0 94 27.5 153.5t69 93.5t91.5 46.5t95 12.5q29 0 55 -2t47 -4.5t35.5 -5.5t20.5 -4q10 -3 16 -7.5t6 -15.5v-67q0 -9 -4.5 -15t-15.5 -6h-2 +q-13 1 -31.5 2.5t-39.5 2.5t-43 2t-42 1q-32 0 -58.5 -9.5t-45.5 -31t-30 -57.5t-11 -89v-147q0 -52 11 -88t30 -58t45.5 -31.5t58.5 -9.5q20 0 42 1t43 2t39.5 2.5t31.5 2.5h2q11 0 15.5 -6t4.5 -15v-67zM489 801q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81 +q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="Cdotaccent" unicode="&#x10a;" horiz-adv-x="563" +d="M518 31q0 -11 -6 -15.5t-16 -7.5q-6 -2 -20.5 -4.5t-35.5 -5t-47 -4.5t-55 -2q-45 0 -95 13t-91.5 47.5t-69 93.5t-27.5 152v147q0 94 27.5 153.5t69 93.5t91.5 46.5t95 12.5q29 0 55 -2t47 -4.5t35.5 -5.5t20.5 -4q10 -3 16 -7.5t6 -15.5v-67q0 -9 -4.5 -15t-15.5 -6h-2 +q-13 1 -31.5 2.5t-39.5 2.5t-43 2t-42 1q-32 0 -58.5 -9.5t-45.5 -31t-30 -57.5t-11 -89v-147q0 -52 11 -88t30 -58t45.5 -31.5t58.5 -9.5q20 0 42 1t43 2t39.5 2.5t31.5 2.5h2q11 0 15.5 -6t4.5 -15v-67zM387 848q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95q0 8 6 13.5 +t14 5.5h90q8 0 14 -5.5t6 -13.5v-95z" /> + <glyph glyph-name="Dcaron" unicode="&#x10e;" horiz-adv-x="667" +d="M612 298q0 -149 -81.5 -227.5t-232.5 -78.5q-27 0 -56.5 1t-57 3t-50 4t-33.5 4q-13 2 -19.5 9t-6.5 22v673q0 15 6.5 22t19.5 9q11 2 33.5 4t50 4t57 3t56.5 1q151 0 232.5 -78.5t81.5 -227.5v-147zM474 445q0 56 -13.5 92.5t-37 58t-56 30t-69.5 8.5q-28 0 -48 -1 +t-36 -2v-519q16 -1 36 -2t48 -1q37 0 69.5 8.5t56 30t37 58t13.5 92.5v147zM523 939q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86 +q9 0 9 -7z" /> + <glyph glyph-name="Dcroat" unicode="&#x110;" horiz-adv-x="667" +d="M612 298q0 -149 -81.5 -227.5t-232.5 -78.5q-27 0 -56.5 1t-57 3t-50 4t-33.5 4q-13 2 -19.5 9t-6.5 22v291h-58q-19 0 -19 19v75q0 18 19 18h58v270q0 15 6.5 22t19.5 9q11 2 33.5 4t50 4t57 3t56.5 1q151 0 232.5 -78.5t81.5 -227.5v-147zM474 445q0 56 -13.5 92.5 +t-37 58t-56 30t-69.5 8.5q-28 0 -48 -1t-36 -2v-193h71q19 0 19 -18v-75q0 -19 -19 -19h-71v-214q16 -1 36 -2t48 -1q37 0 69.5 8.5t56 30t37 58t13.5 92.5v147z" /> + <glyph glyph-name="Ebreve" unicode="&#x114;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64zM492 944q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55 +q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="Ecaron" unicode="&#x11a;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64zM478 939q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86 +q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="Edotaccent" unicode="&#x116;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64zM353 822q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-95z" /> + <glyph glyph-name="Emacron" unicode="&#x112;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64zM477 847q0 -8 -6 -13t-14 -5h-310q-8 0 -14 5t-6 13v57q0 8 6 13t14 5h310q8 0 14 -5t6 -13v-57z" /> + <glyph glyph-name="Eng" unicode="&#x14a;" horiz-adv-x="712" +d="M637 -21q0 -80 -39.5 -113t-120.5 -33q-11 0 -24 1t-24.5 2.5t-20 2.5t-11.5 2q-10 3 -10 14v71q0 8 6 13t14 5h66q14 0 19.5 6.5t5.5 28.5v21h-2q-18 0 -33.5 4.5t-27.5 31.5l-222 487q-4 8 -9 8t-5 -8v-503q0 -8 -5.5 -14t-13.5 -6h-85q-8 0 -14 6t-6 14v683 +q0 17 11.5 28.5t28.5 11.5h108q16 0 25.5 -6t18.5 -26l233 -514q3 -8 8 -8t5 9v526q0 19 19 19h86q19 0 19 -19v-745v0z" /> + <glyph glyph-name="Eogonek" unicode="&#x118;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-5 -1 -9.5 -1.5t-9.5 -1.5l-49 -33q-19 -13 -30.5 -21t-17.5 -13.5t-7.5 -10.5t-1.5 -11q0 -19 25 -19q29 0 53 4.5t29 4.5q7 0 8.5 -2t1.5 -10v-58q0 -5 -1.5 -8t-9.5 -7q-11 -5 -36 -12.5t-67 -7.5q-24 0 -47 6t-41 17.5t-28.5 28.5 +t-10.5 40q0 19 3.5 33t11 25t20 21.5t29.5 21.5h-5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204q-44 0 -61.5 -18t-17.5 -68v-108h271 +q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64v0z" /> + <glyph glyph-name="Gbreve" unicode="&#x11e;" horiz-adv-x="635" +d="M560 33q0 -20 -19 -24q-38 -8 -89 -12.5t-129 -4.5q-41 0 -87.5 15t-87 50t-67 94t-26.5 148v144q0 89 25.5 148t65.5 94.5t87.5 50.5t92.5 15q36 0 69.5 -2t61.5 -5t50 -6t34 -5q19 -4 19 -21v-67q0 -11 -4 -16t-16 -5h-3q-35 3 -87 5.5t-124 2.5q-25 0 -48.5 -9.5 +t-42 -31.5t-29.5 -58.5t-11 -89.5v-144q0 -53 11.5 -89t30 -58t41.5 -31.5t45 -9.5q28 0 52 0.5t47 2.5v255q0 8 5.5 14t13.5 6h99q8 0 14 -6t6 -14v-336zM496 939q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46 +t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="Gcircumflex" unicode="&#x11c;" horiz-adv-x="635" +d="M560 33q0 -20 -19 -24q-38 -8 -89 -12.5t-129 -4.5q-41 0 -87.5 15t-87 50t-67 94t-26.5 148v144q0 89 25.5 148t65.5 94.5t87.5 50.5t92.5 15q36 0 69.5 -2t61.5 -5t50 -6t34 -5q19 -4 19 -21v-67q0 -11 -4 -16t-16 -5h-3q-35 3 -87 5.5t-124 2.5q-25 0 -48.5 -9.5 +t-42 -31.5t-29.5 -58.5t-11 -89.5v-144q0 -53 11.5 -89t30 -58t41.5 -31.5t45 -9.5q28 0 52 0.5t47 2.5v255q0 8 5.5 14t13.5 6h99q8 0 14 -6t6 -14v-336zM517 801q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10 +l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="Gcommaaccent" unicode="&#x122;" horiz-adv-x="635" +d="M560 33q0 -20 -19 -24q-38 -8 -89 -12.5t-129 -4.5q-41 0 -87.5 15t-87 50t-67 94t-26.5 148v144q0 89 25.5 148t65.5 94.5t87.5 50.5t92.5 15q36 0 69.5 -2t61.5 -5t50 -6t34 -5q19 -4 19 -21v-67q0 -11 -4 -16t-16 -5h-3q-35 3 -87 5.5t-124 2.5q-25 0 -48.5 -9.5 +t-42 -31.5t-29.5 -58.5t-11 -89.5v-144q0 -53 11.5 -89t30 -58t41.5 -31.5t45 -9.5q28 0 52 0.5t47 2.5v255q0 8 5.5 14t13.5 6h99q8 0 14 -6t6 -14v-336zM420 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="Gdotaccent" unicode="&#x120;" horiz-adv-x="635" +d="M560 33q0 -20 -19 -24q-38 -8 -89 -12.5t-129 -4.5q-41 0 -87.5 15t-87 50t-67 94t-26.5 148v144q0 89 25.5 148t65.5 94.5t87.5 50.5t92.5 15q36 0 69.5 -2t61.5 -5t50 -6t34 -5q19 -4 19 -21v-67q0 -11 -4 -16t-16 -5h-3q-35 3 -87 5.5t-124 2.5q-25 0 -48.5 -9.5 +t-42 -31.5t-29.5 -58.5t-11 -89.5v-144q0 -53 11.5 -89t30 -58t41.5 -31.5t45 -9.5q28 0 52 0.5t47 2.5v255q0 8 5.5 14t13.5 6h99q8 0 14 -6t6 -14v-336zM394 848q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-95z" /> + <glyph glyph-name="Hbar" unicode="&#x126;" horiz-adv-x="712" +d="M637 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v306h-284v-306q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v529h-55q-8 0 -14 6t-6 14v72q0 8 6 14t14 6h55v63q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-63h284v63q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-63h55 +q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-55v-529zM498 448v101h-284v-101h284z" /> + <glyph glyph-name="Hcircumflex" unicode="&#x124;" horiz-adv-x="712" +d="M637 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v306h-284v-306q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-276h284v276q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM542 802q0 -7 -9 -7h-83q-9 0 -13 3t-10 10 +l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="Ibreve" unicode="&#x12c;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM322 943q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75 +q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="IJ" unicode="&#x132;" horiz-adv-x="578" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM503 -21q0 -80 -39.5 -113t-120.5 -33q-11 0 -24 1t-24.5 2.5t-20 2.5t-11.5 2q-10 3 -10 14v71q0 8 6 13t14 5h66q14 0 19.5 6.5t5.5 28.5v745q0 8 6 13.5t14 5.5 +h99q8 0 14 -5.5t6 -13.5v-745z" /> + <glyph glyph-name="Imacron" unicode="&#x12a;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM319 847q0 -8 -6 -13t-14 -5h-310q-8 0 -14 5t-6 13v57q0 8 6 13t14 5h310q8 0 14 -5t6 -13v-57z" /> + <glyph glyph-name="Iogonek" unicode="&#x12e;" horiz-adv-x="289" +d="M214 20q0 -13 -4 -16q-30 -26 -47.5 -40.5t-26.5 -23.5t-11 -14.5t-2 -11.5q0 -19 25 -19q29 0 53 4.5t29 4.5q7 0 8.5 -2t1.5 -10v-58q0 -5 -1.5 -8t-9.5 -7q-11 -5 -36 -12.5t-67 -7.5q-24 0 -47 6t-41 17.5t-28.5 28.5t-10.5 40q0 20 4 35t13 27t23.5 23t35.5 24v724 +q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="Itilde" unicode="&#x128;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM333 900q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21 +q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5l44 -33q26 -20 42 -20q13 0 20.5 6.5t7.5 26.5v21q0 16 14 16h57q14 0 14 -16v-22z" /> + <glyph glyph-name="Jcircumflex" unicode="&#x134;" horiz-adv-x="289" +d="M214 -21q0 -80 -39.5 -113t-120.5 -33q-11 0 -24 1t-24.5 2.5t-20 2.5t-11.5 2q-10 3 -10 14v71q0 8 6 13t14 5h66q14 0 19.5 6.5t5.5 28.5v745q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-745zM331 801q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81 +q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="Kcommaaccent" unicode="&#x136;" horiz-adv-x="643" +d="M615 9q0 -9 -15 -9h-134q-16 0 -23 11l-229 341v-332q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v703q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-318l245 329q4 5 9.5 6.5t13.5 1.5h114q19 0 19 -12q0 -7 -7 -16l-256 -331l258 -362q5 -8 5 -12zM401 -65q0 -1 -2 -7 +l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="Lacute" unicode="&#x139;" horiz-adv-x="516" +d="M496 27q0 -11 -4.5 -15t-15.5 -6q-11 -3 -31.5 -5.5t-44.5 -4.5t-49 -3t-45 -1q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v526q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-526q0 -50 17 -68t61 -18h184q8 0 14 -6t6 -14v-64zM413 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10 +t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Lcaron" unicode="&#x13d;" horiz-adv-x="516" +d="M496 27q0 -11 -4.5 -15t-15.5 -6q-11 -3 -31.5 -5.5t-44.5 -4.5t-49 -3t-45 -1q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v526q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-526q0 -50 17 -68t61 -18h184q8 0 14 -6t6 -14v-64zM488 750q0 -2 -2 -8l-87 -207q-5 -19 -22 -19h-68 +q-9 0 -9 10q0 6 1 9l61 207q5 19 20 19h94q12 0 12 -11z" /> + <glyph glyph-name="Lcommaaccent" unicode="&#x13b;" horiz-adv-x="516" +d="M496 27q0 -11 -4.5 -15t-15.5 -6q-11 -3 -31.5 -5.5t-44.5 -4.5t-49 -3t-45 -1q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v526q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-526q0 -50 17 -68t61 -18h184q8 0 14 -6t6 -14v-64zM337 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66 +q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="Ldot" unicode="&#x13f;" horiz-adv-x="516" +d="M496 27q0 -11 -4.5 -15t-15.5 -6q-11 -3 -31.5 -5.5t-44.5 -4.5t-49 -3t-45 -1q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v526q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-526q0 -50 17 -68t61 -18h184q8 0 14 -6t6 -14v-64zM444 340q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95 +q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-95z" /> + <glyph glyph-name="Nacute" unicode="&#x143;" horiz-adv-x="712" +d="M637 40q0 -17 -11.5 -28.5t-28.5 -11.5h-101q-18 0 -33.5 4.5t-27.5 31.5l-222 487q-4 8 -9 8t-5 -8v-503q0 -8 -5.5 -14t-13.5 -6h-85q-8 0 -14 6t-6 14v683q0 17 11.5 28.5t28.5 11.5h108q16 0 25.5 -6t18.5 -26l233 -514q3 -8 8 -8t5 9v526q0 19 19 19h86q19 0 19 -19 +v-684zM512 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Ncaron" unicode="&#x147;" horiz-adv-x="712" +d="M637 40q0 -17 -11.5 -28.5t-28.5 -11.5h-101q-18 0 -33.5 4.5t-27.5 31.5l-222 487q-4 8 -9 8t-5 -8v-503q0 -8 -5.5 -14t-13.5 -6h-85q-8 0 -14 6t-6 14v683q0 17 11.5 28.5t28.5 11.5h108q16 0 25.5 -6t18.5 -26l233 -514q3 -8 8 -8t5 9v526q0 19 19 19h86q19 0 19 -19 +v-684zM546 939q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="Ncommaaccent" unicode="&#x145;" horiz-adv-x="712" +d="M637 40q0 -17 -11.5 -28.5t-28.5 -11.5h-101q-18 0 -33.5 4.5t-27.5 31.5l-222 487q-4 8 -9 8t-5 -8v-503q0 -8 -5.5 -14t-13.5 -6h-85q-8 0 -14 6t-6 14v683q0 17 11.5 28.5t28.5 11.5h108q16 0 25.5 -6t18.5 -26l233 -514q3 -8 8 -8t5 9v526q0 19 19 19h86q19 0 19 -19 +v-684zM427 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="Obreve" unicode="&#x14e;" horiz-adv-x="680" +d="M625 304q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM485 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135 +q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135zM522 942q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5 +t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="Ohungarumlaut" unicode="&#x150;" horiz-adv-x="680" +d="M625 304q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM485 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135 +q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135zM601 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7zM391 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7 +q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Omacron" unicode="&#x14c;" horiz-adv-x="680" +d="M625 304q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM485 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135 +q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135zM515 847q0 -8 -6 -13t-14 -5h-310q-8 0 -14 5t-6 13v57q0 8 6 13t14 5h310q8 0 14 -5t6 -13v-57z" /> + <glyph glyph-name="Oslashacute" unicode="&#x1fe;" horiz-adv-x="680" +d="M656 737q0 -4 -3 -8l-72 -100q21 -36 32.5 -83t11.5 -107v-135q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18q-53 0 -98 12.5t-81 39.5l-29 -40q-5 -6 -8.5 -9t-11.5 -3h-76q-11 0 -11 11q0 3 3 8l72 100q-45 74 -45 193v135q0 82 21.5 141.5t59.5 97t90 55.5 +t114 18q54 0 100 -13t82 -41l29 41q5 6 8 8t11 2h75q11 0 11 -11zM444 590q-36 40 -104 40q-74 0 -109.5 -45.5t-35.5 -145.5v-135q0 -31 3 -56zM485 439q0 28 -3 52l-244 -340q35 -38 102 -38q74 0 109.5 45.5t35.5 145.5v135zM521 938q0 -4 -4 -8l-118 -124 +q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Racute" unicode="&#x154;" horiz-adv-x="653" +d="M615 12q0 -12 -12 -12h-122q-8 0 -12 6t-8 14l-144 267h-14q-20 0 -46 1.5t-43 2.5v-271q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -14 6t-6 14v688q0 15 8.5 21.5t23.5 8.5q39 6 90 9.5t106 3.5q58 0 110 -11.5t91.5 -37.5t63 -69.5t23.5 -107.5v-9q0 -80 -36.5 -130 +t-98.5 -74l157 -292q2 -3 2 -8zM453 525q0 57 -37.5 82t-112.5 25q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-225q6 0 18.5 -0.5t26 -1t26 -1t18.5 -0.5q78 0 114 25t36 91v9zM482 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120 +q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Rcaron" unicode="&#x158;" horiz-adv-x="653" +d="M615 12q0 -12 -12 -12h-122q-8 0 -12 6t-8 14l-144 267h-14q-20 0 -46 1.5t-43 2.5v-271q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -14 6t-6 14v688q0 15 8.5 21.5t23.5 8.5q39 6 90 9.5t106 3.5q58 0 110 -11.5t91.5 -37.5t63 -69.5t23.5 -107.5v-9q0 -80 -36.5 -130 +t-98.5 -74l157 -292q2 -3 2 -8zM453 525q0 57 -37.5 82t-112.5 25q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-225q6 0 18.5 -0.5t26 -1t26 -1t18.5 -0.5q78 0 114 25t36 91v9zM516 939q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5 +t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="Rcommaaccent" unicode="&#x156;" horiz-adv-x="653" +d="M615 12q0 -12 -12 -12h-122q-8 0 -12 6t-8 14l-144 267h-14q-20 0 -46 1.5t-43 2.5v-271q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -14 6t-6 14v688q0 15 8.5 21.5t23.5 8.5q39 6 90 9.5t106 3.5q58 0 110 -11.5t91.5 -37.5t63 -69.5t23.5 -107.5v-9q0 -80 -36.5 -130 +t-98.5 -74l157 -292q2 -3 2 -8zM453 525q0 57 -37.5 82t-112.5 25q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-225q6 0 18.5 -0.5t26 -1t26 -1t18.5 -0.5q78 0 114 25t36 91v9zM406 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108 +q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="Sacute" unicode="&#x15a;" horiz-adv-x="570" +d="M525 201q0 -38 -13 -75.5t-43.5 -67t-81 -48t-125.5 -18.5q-57 0 -99 5t-78 13q-8 2 -13.5 7t-5.5 13v72q0 8 5.5 13.5t13.5 5.5h2q15 -2 39.5 -3.5t50.5 -3t49.5 -2.5t37.5 -1q67 0 91.5 23t24.5 67q0 15 -4 26.5t-14 22.5t-26 22.5t-41 26.5l-132 79q-35 21 -57.5 42 +t-36 43.5t-19 47t-5.5 50.5q0 41 13 76t42.5 60.5t77 39.5t117.5 14q25 0 53 -1.5t55 -4.5t49 -6t35 -6q8 -2 13 -6.5t5 -12.5v-74q0 -8 -4.5 -13t-12.5 -5h-2q-50 5 -99 7.5t-98 2.5q-56 0 -80.5 -18.5t-24.5 -52.5q0 -12 3.5 -22.5t13 -21t25.5 -21.5t40 -24l120 -67 +q41 -23 68 -46.5t42.5 -48.5t22 -52t6.5 -57zM441 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="uni015E" unicode="&#x15e;" horiz-adv-x="570" +d="M525 201q0 -38 -13 -75.5t-43.5 -67t-81 -48t-125.5 -18.5q-57 0 -99 5t-78 13q-8 2 -13.5 7t-5.5 13v72q0 8 5.5 13.5t13.5 5.5h2q15 -2 39.5 -3.5t50.5 -3t49.5 -2.5t37.5 -1q67 0 91.5 23t24.5 67q0 15 -4 26.5t-14 22.5t-26 22.5t-41 26.5l-132 79q-35 21 -57.5 42 +t-36 43.5t-19 47t-5.5 50.5q0 41 13 76t42.5 60.5t77 39.5t117.5 14q25 0 53 -1.5t55 -4.5t49 -6t35 -6q8 -2 13 -6.5t5 -12.5v-74q0 -8 -4.5 -13t-12.5 -5h-2q-50 5 -99 7.5t-98 2.5q-56 0 -80.5 -18.5t-24.5 -52.5q0 -12 3.5 -22.5t13 -21t25.5 -21.5t40 -24l120 -67 +q41 -23 68 -46.5t42.5 -48.5t22 -52t6.5 -57zM377 -58q0 -4 -4 -8l-119 -123q-6 -7 -10 -10.5t-13 -3.5h-86q-9 0 -9 7q0 6 4 10l94 120q7 8 11.5 11.5t14.5 3.5h106q11 0 11 -7z" /> + <glyph glyph-name="Scircumflex" unicode="&#x15c;" horiz-adv-x="570" +d="M525 201q0 -38 -13 -75.5t-43.5 -67t-81 -48t-125.5 -18.5q-57 0 -99 5t-78 13q-8 2 -13.5 7t-5.5 13v72q0 8 5.5 13.5t13.5 5.5h2q15 -2 39.5 -3.5t50.5 -3t49.5 -2.5t37.5 -1q67 0 91.5 23t24.5 67q0 15 -4 26.5t-14 22.5t-26 22.5t-41 26.5l-132 79q-35 21 -57.5 42 +t-36 43.5t-19 47t-5.5 50.5q0 41 13 76t42.5 60.5t77 39.5t117.5 14q25 0 53 -1.5t55 -4.5t49 -6t35 -6q8 -2 13 -6.5t5 -12.5v-74q0 -8 -4.5 -13t-12.5 -5h-2q-50 5 -99 7.5t-98 2.5q-56 0 -80.5 -18.5t-24.5 -52.5q0 -12 3.5 -22.5t13 -21t25.5 -21.5t40 -24l120 -67 +q41 -23 68 -46.5t42.5 -48.5t22 -52t6.5 -57zM469 801q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="uni0218" unicode="&#x218;" horiz-adv-x="570" +d="M525 201q0 -38 -13 -75.5t-43.5 -67t-81 -48t-125.5 -18.5q-57 0 -99 5t-78 13q-8 2 -13.5 7t-5.5 13v72q0 8 5.5 13.5t13.5 5.5h2q15 -2 39.5 -3.5t50.5 -3t49.5 -2.5t37.5 -1q67 0 91.5 23t24.5 67q0 15 -4 26.5t-14 22.5t-26 22.5t-41 26.5l-132 79q-35 21 -57.5 42 +t-36 43.5t-19 47t-5.5 50.5q0 41 13 76t42.5 60.5t77 39.5t117.5 14q25 0 53 -1.5t55 -4.5t49 -6t35 -6q8 -2 13 -6.5t5 -12.5v-74q0 -8 -4.5 -13t-12.5 -5h-2q-50 5 -99 7.5t-98 2.5q-56 0 -80.5 -18.5t-24.5 -52.5q0 -12 3.5 -22.5t13 -21t25.5 -21.5t40 -24l120 -67 +q41 -23 68 -46.5t42.5 -48.5t22 -52t6.5 -57zM356 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="Tbar" unicode="&#x166;" horiz-adv-x="579" +d="M359 377v-357q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v357h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h175v134h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h489q8 0 14 -5.5t6 -13.5v-79q0 -8 -6 -13t-14 -5h-175v-134h175q8 0 14 -5.5t6 -13.5v-79q0 -8 -6 -13 +t-14 -5h-175z" /> + <glyph glyph-name="Tcaron" unicode="&#x164;" horiz-adv-x="579" +d="M554 645q0 -8 -6 -13t-14 -5h-175v-607q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v607h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h489q8 0 14 -5.5t6 -13.5v-79zM479 939q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120 +q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="Tcommaaccent" unicode="&#x162;" horiz-adv-x="579" +d="M554 645q0 -8 -6 -13t-14 -5h-175v-607q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v607h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h489q8 0 14 -5.5t6 -13.5v-79zM352 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96 +q14 0 14 -12z" /> + <glyph glyph-name="Ubreve" unicode="&#x16c;" horiz-adv-x="690" +d="M620 275q0 -80 -20.5 -134t-57 -87t-87 -47.5t-110.5 -14.5t-110.5 14.5t-87 47.5t-57 87t-20.5 134v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-449q0 -43 6 -74.5t21.5 -52.5t41.5 -31t67 -10q40 0 66.5 10t42 31t21.5 52.5t6 74.5v449q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-449zM524 941q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75 +q10 0 10 -7z" /> + <glyph glyph-name="Uhungarumlaut" unicode="&#x170;" horiz-adv-x="690" +d="M620 275q0 -80 -20.5 -134t-57 -87t-87 -47.5t-110.5 -14.5t-110.5 14.5t-87 47.5t-57 87t-20.5 134v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-449q0 -43 6 -74.5t21.5 -52.5t41.5 -31t67 -10q40 0 66.5 10t42 31t21.5 52.5t6 74.5v449q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-449zM606 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7zM396 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5 +t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Umacron" unicode="&#x16a;" horiz-adv-x="690" +d="M620 275q0 -80 -20.5 -134t-57 -87t-87 -47.5t-110.5 -14.5t-110.5 14.5t-87 47.5t-57 87t-20.5 134v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-449q0 -43 6 -74.5t21.5 -52.5t41.5 -31t67 -10q40 0 66.5 10t42 31t21.5 52.5t6 74.5v449q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-449zM520 847q0 -8 -6 -13t-14 -5h-310q-8 0 -14 5t-6 13v57q0 8 6 13t14 5h310q8 0 14 -5t6 -13v-57z" /> + <glyph glyph-name="Uogonek" unicode="&#x172;" horiz-adv-x="690" +d="M620 275q0 -54 -8 -93.5t-26 -70t-46 -56t-67 -51.5l-51 -34q-19 -13 -30.5 -21t-17.5 -13.5t-7.5 -10.5t-1.5 -11q0 -19 25 -19q29 0 53 4.5t29 4.5q7 0 8.5 -2t1.5 -10v-58q0 -5 -1.5 -8t-9.5 -7q-11 -5 -36 -12.5t-67 -7.5q-24 0 -47 6t-41 17.5t-28.5 28.5t-10.5 40 +q0 38 15 58.5t51 43.5q-53 4 -96.5 21t-75 50.5t-48.5 85t-17 125.5v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-449q0 -43 6 -74.5t21.5 -52.5t41.5 -31t67 -10q40 0 66.5 10t42 31t21.5 52.5t6 74.5v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-438v-11v0z" /> + <glyph glyph-name="Uring" unicode="&#x16e;" horiz-adv-x="690" +d="M620 275q0 -80 -20.5 -134t-57 -87t-87 -47.5t-110.5 -14.5t-110.5 14.5t-87 47.5t-57 87t-20.5 134v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-449q0 -43 6 -74.5t21.5 -52.5t41.5 -31t67 -10q40 0 66.5 10t42 31t21.5 52.5t6 74.5v449q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-449zM456 875q0 -23 -8.5 -43t-23.5 -35t-35 -23.5t-43 -8.5t-43 8.5t-35 23.5t-24 35t-9 43t9 43t24 35t35 24t43 9t43 -9t35 -24t23.5 -35t8.5 -43zM394 876q0 20 -14 33.5t-34 13.5t-33 -13.5t-13 -33.5t13 -34t33 -14t34 14t14 34z" /> + <glyph glyph-name="Utilde" unicode="&#x168;" horiz-adv-x="690" +d="M620 275q0 -80 -20.5 -134t-57 -87t-87 -47.5t-110.5 -14.5t-110.5 14.5t-87 47.5t-57 87t-20.5 134v449q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-449q0 -43 6 -74.5t21.5 -52.5t41.5 -31t67 -10q40 0 66.5 10t42 31t21.5 52.5t6 74.5v449q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-449zM537 900q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5l44 -33q26 -20 42 -20q13 0 20.5 6.5 +t7.5 26.5v21q0 16 14 16h57q14 0 14 -16v-22z" /> + <glyph glyph-name="Wacute" unicode="&#x1e82;" horiz-adv-x="862" +d="M838 726l-94 -653q-7 -47 -29 -64t-61 -17h-54q-34 0 -53 18t-30 62l-79 330q-2 11 -6 11q-5 0 -7 -11l-79 -330q-11 -44 -30 -62t-53 -18h-54q-39 0 -61 17t-29 64l-94 653v3q0 7 5 10.5t12 3.5h106q6 0 11 -5t6 -13l72 -597q1 -7 1.5 -11t3.5 -4t3.5 4t2.5 11l86 351 +q5 18 18 31.5t45 13.5h69q32 0 45 -13.5t18 -31.5l86 -351q2 -7 2.5 -11t3.5 -4t3.5 4t1.5 11l72 597q1 8 6 13t11 5h106q7 0 12 -3.5t5 -10.5v-3zM600 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105 +q11 0 11 -7z" /> + <glyph glyph-name="Wcircumflex" unicode="&#x174;" horiz-adv-x="862" +d="M838 726l-94 -653q-7 -47 -29 -64t-61 -17h-54q-34 0 -53 18t-30 62l-79 330q-2 11 -6 11q-5 0 -7 -11l-79 -330q-11 -44 -30 -62t-53 -18h-54q-39 0 -61 17t-29 64l-94 653v3q0 7 5 10.5t12 3.5h106q6 0 11 -5t6 -13l72 -597q1 -7 1.5 -11t3.5 -4t3.5 4t2.5 11l86 351 +q5 18 18 31.5t45 13.5h69q32 0 45 -13.5t18 -31.5l86 -351q2 -7 2.5 -11t3.5 -4t3.5 4t1.5 11l72 597q1 8 6 13t11 5h106q7 0 12 -3.5t5 -10.5v-3zM619 802q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120 +q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="Wdieresis" unicode="&#x1e84;" horiz-adv-x="862" +d="M838 726l-94 -653q-7 -47 -29 -64t-61 -17h-54q-34 0 -53 18t-30 62l-79 330q-2 11 -6 11q-5 0 -7 -11l-79 -330q-11 -44 -30 -62t-53 -18h-54q-39 0 -61 17t-29 64l-94 653v3q0 7 5 10.5t12 3.5h106q6 0 11 -5t6 -13l72 -597q1 -7 1.5 -11t3.5 -4t3.5 4t2.5 11l86 351 +q5 18 18 31.5t45 13.5h69q32 0 45 -13.5t18 -31.5l86 -351q2 -7 2.5 -11t3.5 -4t3.5 4t1.5 11l72 597q1 8 6 13t11 5h106q7 0 12 -3.5t5 -10.5v-3zM587 789q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM387 789 +q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="Wgrave" unicode="&#x1e80;" horiz-adv-x="862" +d="M838 726l-94 -653q-7 -47 -29 -64t-61 -17h-54q-34 0 -53 18t-30 62l-79 330q-2 11 -6 11q-5 0 -7 -11l-79 -330q-11 -44 -30 -62t-53 -18h-54q-39 0 -61 17t-29 64l-94 653v3q0 7 5 10.5t12 3.5h106q6 0 11 -5t6 -13l72 -597q1 -7 1.5 -11t3.5 -4t3.5 4t2.5 11l86 351 +q5 18 18 31.5t45 13.5h69q32 0 45 -13.5t18 -31.5l86 -351q2 -7 2.5 -11t3.5 -4t3.5 4t1.5 11l72 597q1 8 6 13t11 5h106q7 0 12 -3.5t5 -10.5v-3zM516 801q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120 +q4 -4 4 -10z" /> + <glyph glyph-name="Ycircumflex" unicode="&#x176;" horiz-adv-x="615" +d="M590 728q0 -2 -2 -8l-152 -347q-14 -33 -29 -49.5t-32 -23.5v-280q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -13.5 6t-5.5 14v280q-17 7 -32 23.5t-29 49.5l-151 347q-2 6 -2 8q0 6 4 10.5t12 4.5h111q7 0 12 -5t7 -11l120 -298q5 -13 9.5 -16.5t7.5 -3.5q4 0 8.5 3.5t9.5 16.5 +l120 298q2 6 7 11t12 5h110q8 0 12.5 -4.5t4.5 -10.5zM495 801q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="Ygrave" unicode="&#x1ef2;" horiz-adv-x="615" +d="M590 728q0 -2 -2 -8l-152 -347q-14 -33 -29 -49.5t-32 -23.5v-280q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -13.5 6t-5.5 14v280q-17 7 -32 23.5t-29 49.5l-151 347q-2 6 -2 8q0 6 4 10.5t12 4.5h111q7 0 12 -5t7 -11l120 -298q5 -13 9.5 -16.5t7.5 -3.5q4 0 8.5 3.5t9.5 16.5 +l120 298q2 6 7 11t12 5h110q8 0 12.5 -4.5t4.5 -10.5zM389 801q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120q4 -4 4 -10z" /> + <glyph glyph-name="Zacute" unicode="&#x179;" horiz-adv-x="588" +d="M548 20q0 -8 -6 -14t-14 -6h-437q-22 0 -36.5 8.5t-14.5 28.5v55q0 9 2.5 18t10.5 20l317 475q3 4 3 9q0 8 -10 8h-278q-19 0 -19 18v84q0 19 19 19h403q22 0 37.5 -9t15.5 -29v-58q0 -11 -4 -21.5t-10 -19.5l-312 -467q-4 -5 -4 -11t9 -6h308q8 0 14 -5t6 -13v-84z +M450 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="Zdotaccent" unicode="&#x17b;" horiz-adv-x="588" +d="M548 20q0 -8 -6 -14t-14 -6h-437q-22 0 -36.5 8.5t-14.5 28.5v55q0 9 2.5 18t10.5 20l317 475q3 4 3 9q0 8 -10 8h-278q-19 0 -19 18v84q0 19 19 19h403q22 0 37.5 -9t15.5 -29v-58q0 -11 -4 -21.5t-10 -19.5l-312 -467q-4 -5 -4 -11t9 -6h308q8 0 14 -5t6 -13v-84z +M359 822q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-95z" /> + <glyph glyph-name="Idotaccent" unicode="&#x130;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM209 822q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-95z" /> + <glyph glyph-name="abreve" unicode="&#x103;" horiz-adv-x="548" +d="M483 20q0 -8 -6 -14t-14 -6h-85q-8 0 -14 6t-6 14v16q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11 +t94.5 5q107 0 163.5 -47t56.5 -144v-360zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123zM452 772q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46 +t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="amacron" unicode="&#x101;" horiz-adv-x="548" +d="M483 20q0 -8 -6 -14t-14 -6h-85q-8 0 -14 6t-6 14v16q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11 +t94.5 5q107 0 163.5 -47t56.5 -144v-360zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123zM449 680q0 -8 -6 -13t-14 -5h-310q-8 0 -14 5t-6 13v57q0 8 6 13t14 5h310q8 0 14 -5t6 -13v-57z" /> + <glyph glyph-name="aogonek" unicode="&#x105;" horiz-adv-x="548" +d="M483 20q0 -4 -1 -8.5t-6 -7.5l-51 -34q-19 -13 -30.5 -21t-17.5 -13.5t-7.5 -10.5t-1.5 -11q0 -19 25 -19q29 0 53 4.5t29 4.5q7 0 8.5 -2t1.5 -10v-58q0 -5 -1.5 -8t-9.5 -7q-11 -5 -36 -12.5t-67 -7.5q-24 0 -47 3.5t-41 12.5t-28.5 25.5t-10.5 42.5q0 17 3 30.5 +t11.5 26t24 26t41.5 30.5l34 23v17q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11t94.5 5 +q107 0 163.5 -47t56.5 -144v-355v-5zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123z" /> + <glyph glyph-name="aeacute" unicode="&#x1fd;" horiz-adv-x="870" +d="M819 268q0 -8 -6.5 -14t-14.5 -6h-314v-41q0 -57 32.5 -80.5t98.5 -23.5q13 0 35 1t46 2t46.5 2.5t37.5 3.5h1h3q17 0 17 -16v-56q0 -11 -4 -16t-15 -8q-20 -6 -44 -10.5t-49 -7.5t-49.5 -4.5t-45.5 -1.5q-49 0 -90.5 13.5t-67.5 40.5q-38 -28 -86 -41t-98 -13 +q-43 0 -80.5 10t-65.5 31t-44 54.5t-16 80.5v11q0 86 64.5 121.5t190.5 35.5h51v27q0 56 -23.5 76.5t-68.5 20.5q-23 0 -46.5 -0.5t-44.5 -1.5t-38.5 -2t-27.5 -2h-1h-2q-17 0 -17 17v60q0 18 20 23q27 6 69.5 11.5t87.5 5.5q58 0 100 -17t68 -49q28 31 67 48.5t94 17.5 +q61 0 104.5 -18t71.5 -49.5t41 -75t13 -94.5v-66zM691 358q0 22 -5.5 42t-18 35t-32 24t-47.5 9q-27 0 -47 -9t-32.5 -24t-18.5 -35t-6 -42v-34h207v34zM356 261h-55q-68 0 -98 -18.5t-30 -63.5v-11q0 -45 24.5 -59t64.5 -14q24 0 48.5 3t45.5 11v152zM609 772q0 -4 -4 -8 +l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="cacute" unicode="&#x107;" horiz-adv-x="468" +d="M423 31q0 -12 -4 -17.5t-17 -8.5q-17 -5 -50 -9t-79 -4q-49 0 -90.5 15t-72 45.5t-48 76t-17.5 106.5v93q0 61 17.5 106.5t48 76t72 45.5t90.5 15q46 0 79 -4t50 -9q13 -3 17 -8.5t4 -17.5v-65q0 -8 -5 -11.5t-13 -3.5h-3q-15 2 -28 3.5t-27 2t-32 1t-42 0.5 +q-18 0 -35 -6t-30.5 -20.5t-22 -40t-8.5 -64.5v-93q0 -39 8.5 -64.5t22 -40t30.5 -20.5t35 -6q24 0 42 0.5t32 1t27 2t28 3.5h3q8 0 13 -3.5t5 -11.5v-65zM411 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5 +h105q11 0 11 -7z" /> + <glyph glyph-name="ccaron" unicode="&#x10d;" horiz-adv-x="468" +d="M423 31q0 -12 -4 -17.5t-17 -8.5q-17 -5 -50 -9t-79 -4q-49 0 -90.5 15t-72 45.5t-48 76t-17.5 106.5v93q0 61 17.5 106.5t48 76t72 45.5t90.5 15q46 0 79 -4t50 -9q13 -3 17 -8.5t4 -17.5v-65q0 -8 -5 -11.5t-13 -3.5h-3q-15 2 -28 3.5t-27 2t-32 1t-42 0.5 +q-18 0 -35 -6t-30.5 -20.5t-22 -40t-8.5 -64.5v-93q0 -39 8.5 -64.5t22 -40t30.5 -20.5t35 -6q24 0 42 0.5t32 1t27 2t28 3.5h3q8 0 13 -3.5t5 -11.5v-65zM446 772q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10 +q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="ccircumflex" unicode="&#x109;" horiz-adv-x="468" +d="M423 31q0 -12 -4 -17.5t-17 -8.5q-17 -5 -50 -9t-79 -4q-49 0 -90.5 15t-72 45.5t-48 76t-17.5 106.5v93q0 61 17.5 106.5t48 76t72 45.5t90.5 15q46 0 79 -4t50 -9q13 -3 17 -8.5t4 -17.5v-65q0 -8 -5 -11.5t-13 -3.5h-3q-15 2 -28 3.5t-27 2t-32 1t-42 0.5 +q-18 0 -35 -6t-30.5 -20.5t-22 -40t-8.5 -64.5v-93q0 -39 8.5 -64.5t22 -40t30.5 -20.5t35 -6q24 0 42 0.5t32 1t27 2t28 3.5h3q8 0 13 -3.5t5 -11.5v-65zM434 634q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10 +l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="cdotaccent" unicode="&#x10b;" horiz-adv-x="468" +d="M423 31q0 -12 -4 -17.5t-17 -8.5q-17 -5 -50 -9t-79 -4q-49 0 -90.5 15t-72 45.5t-48 76t-17.5 106.5v93q0 61 17.5 106.5t48 76t72 45.5t90.5 15q46 0 79 -4t50 -9q13 -3 17 -8.5t4 -17.5v-65q0 -8 -5 -11.5t-13 -3.5h-3q-15 2 -28 3.5t-27 2t-32 1t-42 0.5 +q-18 0 -35 -6t-30.5 -20.5t-22 -40t-8.5 -64.5v-93q0 -39 8.5 -64.5t22 -40t30.5 -20.5t35 -6q24 0 42 0.5t32 1t27 2t28 3.5h3q8 0 13 -3.5t5 -11.5v-65zM328 655q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-95z" /> + <glyph glyph-name="dcaron" unicode="&#x10f;" horiz-adv-x="739" +d="M512 45q0 -11 -5 -16.5t-22 -10.5q-47 -12 -100 -19t-101 -7q-121 0 -180 66.5t-59 184.5v77q0 118 59 184.5t180 66.5q18 0 43 -1.5t53 -5.5v177q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-696zM380 456q-21 3 -49.5 5t-46.5 2q-32 0 -53 -11t-33 -30t-16.5 -45t-4.5 -57v-77 +q0 -31 4.5 -57t16.5 -45t33 -30t53 -11q27 0 54.5 2t41.5 5v349zM764 750q0 -2 -2 -8l-87 -207q-5 -19 -22 -19h-68q-9 0 -9 10q0 6 1 9l61 207q5 19 20 19h94q12 0 12 -11z" /> + <glyph glyph-name="dcroat" unicode="&#x111;" horiz-adv-x="577" +d="M512 45q0 -11 -5 -16.5t-22 -10.5q-47 -12 -100 -19t-101 -7q-121 0 -180 66.5t-59 184.5v77q0 118 59 184.5t180 66.5q18 0 43 -1.5t53 -5.5v63h-150q-19 0 -19 19v55q0 18 19 18h150v22q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-22h46q19 0 19 -18v-55q0 -19 -19 -19h-46 +v-582zM380 456q-21 3 -49.5 5t-46.5 2q-32 0 -53 -11t-33 -30t-16.5 -45t-4.5 -57v-77q0 -31 4.5 -57t16.5 -45t33 -30t53 -11q27 0 54.5 2t41.5 5v349z" /> + <glyph glyph-name="ebreve" unicode="&#x115;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4zM466 772q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55 +q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="ecaron" unicode="&#x11b;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4zM477 772q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7 +h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="edotaccent" unicode="&#x117;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4zM352 655q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-95z" /> + <glyph glyph-name="emacron" unicode="&#x113;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4zM462 680q0 -8 -6 -13t-14 -5h-310q-8 0 -14 5t-6 13v57q0 8 6 13t14 5h310q8 0 14 -5t6 -13v-57z" /> + <glyph glyph-name="eng" unicode="&#x14b;" horiz-adv-x="592" +d="M527 -42q0 -46 -10 -76.5t-29 -48.5t-46.5 -25.5t-62.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v389q0 33 -2.5 54.5t-11 34t-25.5 18t-46 5.5q-26 0 -53.5 -9.5t-59.5 -26.5v-402q0 -8 -6 -14.5t-14 -6.5h-92 +q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q22 14 40.5 23t37.5 14.5t39 8t45 2.5q54 0 88 -17t52.5 -47t25.5 -71t7 -89v-389v0z" /> + <glyph glyph-name="eogonek" unicode="&#x119;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-76q0 -11 -1.5 -15.5t-8.5 -9.5l-45 -30q-19 -13 -30.5 -21t-17.5 -13.5t-7.5 -10.5t-1.5 -11q0 -19 25 -19q29 0 53 4.5t29 4.5q7 0 8.5 -2 +t1.5 -10v-58q0 -5 -1.5 -8t-9.5 -7q-11 -5 -36 -12.5t-67 -7.5q-24 0 -47 6t-41 17.5t-28.5 28.5t-10.5 40q0 37 15 58t50 44q-11 -1 -21.5 -1h-22.5q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5 +t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4z" /> + <glyph glyph-name="gbreve" unicode="&#x11f;" horiz-adv-x="584" +d="M556 495q0 -11 -3.5 -14.5t-12.5 -7.5l-33 -13q12 -17 18.5 -35.5t6.5 -44.5v-7q0 -94 -61.5 -138t-175.5 -44q-40 0 -67 5.5t-42 11.5q-17 -11 -17 -26t8.5 -22t25.5 -11l118 -28q51 -12 92.5 -23.5t70.5 -28.5t45 -42.5t16 -65.5v-7q0 -77 -58.5 -117t-186.5 -40 +q-122 0 -185 43.5t-63 122.5v9q0 31 13.5 59.5t37.5 50.5q-21 16 -33 40.5t-12 51.5v1q0 23 10 45t30 36q-23 23 -32 51t-9 66v7q0 37 13 70.5t41.5 59t73.5 40t110 14.5h234q11 0 19 -8t8 -19v-42zM402 378q0 18 -4.5 33.5t-16.5 27t-33 18t-53 6.5t-53 -6.5t-33 -18 +t-17 -27t-5 -33.5v-8q0 -14 4 -28t15.5 -25.5t32.5 -18.5t56 -7q62 0 84.5 20.5t22.5 58.5v8zM413 -39q0 8 -3.5 15t-16 14t-36 14.5t-62.5 16.5l-89 21q-11 -16 -18 -29.5t-7 -40.5v-9q0 -15 5.5 -27.5t19 -21t36.5 -13t58 -4.5q36 0 58 4t34.5 11t16.5 17.5t4 24.5v7z +M470 772q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="gcircumflex" unicode="&#x11d;" horiz-adv-x="584" +d="M556 495q0 -11 -3.5 -14.5t-12.5 -7.5l-33 -13q12 -17 18.5 -35.5t6.5 -44.5v-7q0 -94 -61.5 -138t-175.5 -44q-40 0 -67 5.5t-42 11.5q-17 -11 -17 -26t8.5 -22t25.5 -11l118 -28q51 -12 92.5 -23.5t70.5 -28.5t45 -42.5t16 -65.5v-7q0 -77 -58.5 -117t-186.5 -40 +q-122 0 -185 43.5t-63 122.5v9q0 31 13.5 59.5t37.5 50.5q-21 16 -33 40.5t-12 51.5v1q0 23 10 45t30 36q-23 23 -32 51t-9 66v7q0 37 13 70.5t41.5 59t73.5 40t110 14.5h234q11 0 19 -8t8 -19v-42zM402 378q0 18 -4.5 33.5t-16.5 27t-33 18t-53 6.5t-53 -6.5t-33 -18 +t-17 -27t-5 -33.5v-8q0 -14 4 -28t15.5 -25.5t32.5 -18.5t56 -7q62 0 84.5 20.5t22.5 58.5v8zM413 -39q0 8 -3.5 15t-16 14t-36 14.5t-62.5 16.5l-89 21q-11 -16 -18 -29.5t-7 -40.5v-9q0 -15 5.5 -27.5t19 -21t36.5 -13t58 -4.5q36 0 58 4t34.5 11t16.5 17.5t4 24.5v7z +M481 634q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="gcommaaccent" unicode="&#x123;" horiz-adv-x="584" +d="M556 495q0 -11 -3.5 -14.5t-12.5 -7.5l-33 -13q12 -17 18.5 -35.5t6.5 -44.5v-7q0 -94 -61.5 -138t-175.5 -44q-40 0 -67 5.5t-42 11.5q-17 -11 -17 -26t8.5 -22t25.5 -11l118 -28q51 -12 92.5 -23.5t70.5 -28.5t45 -42.5t16 -65.5v-7q0 -77 -58.5 -117t-186.5 -40 +q-122 0 -185 43.5t-63 122.5v9q0 31 13.5 59.5t37.5 50.5q-21 16 -33 40.5t-12 51.5v1q0 23 10 45t30 36q-23 23 -32 51t-9 66v7q0 37 13 70.5t41.5 59t73.5 40t110 14.5h234q11 0 19 -8t8 -19v-42zM402 378q0 18 -4.5 33.5t-16.5 27t-33 18t-53 6.5t-53 -6.5t-33 -18 +t-17 -27t-5 -33.5v-8q0 -14 4 -28t15.5 -25.5t32.5 -18.5t56 -7q62 0 84.5 20.5t22.5 58.5v8zM413 -39q0 8 -3.5 15t-16 14t-36 14.5t-62.5 16.5l-89 21q-11 -16 -18 -29.5t-7 -40.5v-9q0 -15 5.5 -27.5t19 -21t36.5 -13t58 -4.5q36 0 58 4t34.5 11t16.5 17.5t4 24.5v7z +M243 640q0 1 2 7l53 108q6 12 10.5 16t18.5 4h59q15 0 15 -12q0 -5 -1 -8l-27 -108q-5 -19 -20 -19h-96q-14 0 -14 12z" /> + <glyph glyph-name="gdotaccent" unicode="&#x121;" horiz-adv-x="584" +d="M556 495q0 -11 -3.5 -14.5t-12.5 -7.5l-33 -13q12 -17 18.5 -35.5t6.5 -44.5v-7q0 -94 -61.5 -138t-175.5 -44q-40 0 -67 5.5t-42 11.5q-17 -11 -17 -26t8.5 -22t25.5 -11l118 -28q51 -12 92.5 -23.5t70.5 -28.5t45 -42.5t16 -65.5v-7q0 -77 -58.5 -117t-186.5 -40 +q-122 0 -185 43.5t-63 122.5v9q0 31 13.5 59.5t37.5 50.5q-21 16 -33 40.5t-12 51.5v1q0 23 10 45t30 36q-23 23 -32 51t-9 66v7q0 37 13 70.5t41.5 59t73.5 40t110 14.5h234q11 0 19 -8t8 -19v-42zM402 378q0 18 -4.5 33.5t-16.5 27t-33 18t-53 6.5t-53 -6.5t-33 -18 +t-17 -27t-5 -33.5v-8q0 -14 4 -28t15.5 -25.5t32.5 -18.5t56 -7q62 0 84.5 20.5t22.5 58.5v8zM413 -39q0 8 -3.5 15t-16 14t-36 14.5t-62.5 16.5l-89 21q-11 -16 -18 -29.5t-7 -40.5v-9q0 -15 5.5 -27.5t19 -21t36.5 -13t58 -4.5q36 0 58 4t34.5 11t16.5 17.5t4 24.5v7z +M359 655q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-95z" /> + <glyph glyph-name="hbar" unicode="&#x127;" horiz-adv-x="592" +d="M197 627v-93q29 17 63 27t88 10q52 0 86.5 -17t55 -47t29 -70.5t8.5 -86.5v-329q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v329q0 33 -3.5 54t-12.5 33t-25 17t-41 5q-51 0 -116 -34v-404q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v606h-46q-19 0 -19 19 +v55q0 18 19 18h46v22q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-22h150q19 0 19 -18v-55q0 -19 -19 -19h-150z" /> + <glyph glyph-name="hcircumflex" unicode="&#x125;" horiz-adv-x="592" +d="M527 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v329q0 33 -3.5 54t-12.5 33t-25 17t-41 5q-51 0 -116 -34v-404q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v720q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-207q29 17 63 27t88 10q52 0 86.5 -17t55 -47 +t29 -70.5t8.5 -86.5v-329zM492 801q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="ibreve" unicode="&#x12d;" horiz-adv-x="268" +d="M200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523zM312 772q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75 +q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="ij" unicode="&#x133;" horiz-adv-x="536" +d="M203 659q0 -8 -6 -14t-14 -6h-97q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h97q8 0 14 -6t6 -14v-88zM200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523zM471 659q0 -8 -6.5 -14t-14.5 -6h-96q-8 0 -14 6t-6 14v88 +q0 8 6 14t14 6h96q8 0 14.5 -6t6.5 -14v-88zM468 -42q0 -46 -10 -76.5t-29 -48.5t-46.5 -25.5t-62.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v586q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-586z" /> + <glyph glyph-name="imacron" unicode="&#x12b;" horiz-adv-x="268" +d="M200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523zM309 680q0 -8 -6 -13t-14 -5h-310q-8 0 -14 5t-6 13v57q0 8 6 13t14 5h310q8 0 14 -5t6 -13v-57z" /> + <glyph glyph-name="iogonek" unicode="&#x12f;" horiz-adv-x="268" +d="M203 659q0 -8 -6 -14t-14 -6h-97q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h97q8 0 14 -6t6 -14v-88zM184 -11q-32 -21 -42.5 -35.5t-10.5 -31.5t8 -22t29 -5q22 0 43.5 4.5t26.5 4.5q7 0 8.5 -2t1.5 -10v-58q0 -5 -1.5 -8t-9.5 -7q-11 -5 -36 -12.5t-67 -7.5 +q-24 0 -47 4t-41 15.5t-28.5 31t-10.5 51.5q0 36 13 60t48 49v534q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-529q0 -8 -2.5 -13t-13.5 -13z" /> + <glyph glyph-name="itilde" unicode="&#x129;" horiz-adv-x="268" +d="M200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523zM323 739q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21 +q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5l44 -33q26 -20 42 -20q13 0 20.5 6.5t7.5 26.5v21q0 16 14 16h57q14 0 14 -16v-22z" /> + <glyph glyph-name="jcircumflex" unicode="&#x135;" horiz-adv-x="268" +d="M200 -42q0 -46 -10 -76.5t-29 -48.5t-46.5 -25.5t-62.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v586q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-586zM321 634q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81 +q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="kcommaaccent" unicode="&#x137;" horiz-adv-x="549" +d="M519 12q0 -5 -4 -8.5t-10 -3.5h-122q-8 0 -16 6.5t-13 13.5l-157 228v-227q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v720q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-417l171 228q5 7 11.5 9.5t11.5 2.5h112q15 0 15 -11q0 -5 -4 -10l-201 -247l203 -276q3 -5 3 -8z +M354 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="lacute" unicode="&#x13a;" horiz-adv-x="272" +d="M202 21q0 -8 -5.5 -14.5t-13.5 -6.5h-93q-8 0 -14 6.5t-6 14.5v720q0 8 6 14t14 6h93q8 0 13.5 -6t5.5 -14v-720zM291 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="lcaron" unicode="&#x13e;" horiz-adv-x="444" +d="M202 21q0 -8 -5.5 -14.5t-13.5 -6.5h-93q-8 0 -14 6.5t-6 14.5v720q0 8 6 14t14 6h93q8 0 13.5 -6t5.5 -14v-720zM469 750q0 -2 -2 -8l-87 -207q-5 -19 -22 -19h-68q-9 0 -9 10q0 6 1 9l61 207q5 19 20 19h94q12 0 12 -11z" /> + <glyph glyph-name="lcommaaccent" unicode="&#x13c;" horiz-adv-x="272" +d="M202 21q0 -8 -5.5 -14.5t-13.5 -6.5h-93q-8 0 -14 6.5t-6 14.5v720q0 8 6 14t14 6h93q8 0 13.5 -6t5.5 -14v-720zM210 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="ldot" unicode="&#x140;" horiz-adv-x="451" +d="M202 21q0 -8 -5.5 -14.5t-13.5 -6.5h-93q-8 0 -14 6.5t-6 14.5v720q0 8 6 14t14 6h93q8 0 13.5 -6t5.5 -14v-720zM401 341q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-95z" /> + <glyph glyph-name="nacute" unicode="&#x144;" horiz-adv-x="592" +d="M527 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v326q0 33 -2.5 54.5t-11 34t-25.5 18t-46 5.5q-26 0 -53.5 -9.5t-59.5 -26.5v-402q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q22 14 40.5 23t37.5 14.5t39 8 +t45 2.5q54 0 88 -17t52.5 -47t25.5 -71t7 -89v-326zM452 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="ncaron" unicode="&#x148;" horiz-adv-x="592" +d="M527 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v326q0 33 -2.5 54.5t-11 34t-25.5 18t-46 5.5q-26 0 -53.5 -9.5t-59.5 -26.5v-402q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q22 14 40.5 23t37.5 14.5t39 8 +t45 2.5q54 0 88 -17t52.5 -47t25.5 -71t7 -89v-326zM486 772q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="ncommaaccent" unicode="&#x146;" horiz-adv-x="592" +d="M527 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v326q0 33 -2.5 54.5t-11 34t-25.5 18t-46 5.5q-26 0 -53.5 -9.5t-59.5 -26.5v-402q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q22 14 40.5 23t37.5 14.5t39 8 +t45 2.5q54 0 88 -17t52.5 -47t25.5 -71t7 -89v-326zM360 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="obreve" unicode="&#x14f;" horiz-adv-x="574" +d="M526 241q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19t-103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19t103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81zM394 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81 +q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81zM466 772q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5 +q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="ohungarumlaut" unicode="&#x151;" horiz-adv-x="574" +d="M526 241q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19t-103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19t103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81zM394 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81 +q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81zM548 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7zM338 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120 +q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="omacron" unicode="&#x14d;" horiz-adv-x="574" +d="M526 241q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19t-103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19t103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81zM394 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81 +q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81zM462 680q0 -8 -6 -13t-14 -5h-310q-8 0 -14 5t-6 13v57q0 8 6 13t14 5h310q8 0 14 -5t6 -13v-57z" /> + <glyph glyph-name="oslashacute" unicode="&#x1ff;" horiz-adv-x="574" +d="M545 589q0 -6 -4 -11l-65 -90q25 -32 37.5 -74.5t12.5 -91.5v-81q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19q-43 0 -77.5 10t-62.5 28l-40 -55q-5 -7 -8 -8.5t-8 -1.5h-56q-8 0 -8 8q0 6 4 11l66 92q-25 32 -37 74t-12 91v81q0 54 15.5 99.5t45.5 78.5 +t74.5 52t103.5 19q42 0 76.5 -10t62.5 -28l39 54q5 7 8 8.5t8 1.5h56q8 0 8 -8zM354 433q-27 24 -67 24q-53 0 -80 -36.5t-27 -98.5v-81q0 -25 4 -44zM394 322q0 12 -1 23.5t-3 22.5l-171 -238q25 -24 68 -24q53 0 80 36.5t27 98.5v81zM452 772q0 -4 -4 -8l-118 -124 +q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="racute" unicode="&#x155;" horiz-adv-x="375" +d="M355 479q0 -8 -6 -14t-14 -6q-41 0 -73.5 -9.5t-64.5 -26.5v-402q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q37 29 75 38.5t68 9.5q8 0 14 -6t6 -14v-72zM343 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86 +q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="rcaron" unicode="&#x159;" horiz-adv-x="375" +d="M355 479q0 -8 -6 -14t-14 -6q-41 0 -73.5 -9.5t-64.5 -26.5v-402q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q37 29 75 38.5t68 9.5q8 0 14 -6t6 -14v-72zM377 772q0 -6 -4 -10l-94 -120q-7 -8 -11.5 -11.5t-14.5 -3.5 +h-130q-10 0 -14.5 3.5t-11.5 11.5l-95 120q-4 4 -4 10q0 7 9 7h86q9 0 13.5 -3.5t10.5 -10.5l71 -79l71 79q6 7 10 10.5t13 3.5h86q9 0 9 -7z" /> + <glyph glyph-name="rcommaaccent" unicode="&#x157;" horiz-adv-x="375" +d="M355 479q0 -8 -6 -14t-14 -6q-41 0 -73.5 -9.5t-64.5 -26.5v-402q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q37 29 75 38.5t68 9.5q8 0 14 -6t6 -14v-72zM266 -64q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66 +q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="sacute" unicode="&#x15b;" horiz-adv-x="489" +d="M444 148q0 -33 -12 -61.5t-36.5 -49.5t-61.5 -33t-86 -12q-15 0 -36.5 1t-46.5 3.5t-50 6t-46 9.5q-19 5 -19 23v60q0 6 4.5 11t12.5 5h4q18 -2 42.5 -4t48.5 -3.5t45 -2.5t32 -1q23 0 37 3.5t21.5 10t10 15.5t2.5 19q0 14 -10 25t-34 26l-137 84q-37 23 -60.5 58.5 +t-23.5 79.5q0 150 190 150q30 0 54.5 -1.5t45.5 -4.5t40 -6.5t38 -7.5q18 -5 18 -23v-58q0 -19 -16 -19h-4q-11 1 -30 3.5t-42 4t-47.5 3t-45.5 1.5q-36 0 -52.5 -9.5t-16.5 -32.5q0 -12 10.5 -21t29.5 -20l131 -80q31 -19 50 -38t29.5 -38t13.5 -38t3 -38zM400 772 +q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="uni015F" unicode="&#x15f;" horiz-adv-x="489" +d="M444 148q0 -33 -12 -61.5t-36.5 -49.5t-61.5 -33t-86 -12q-15 0 -36.5 1t-46.5 3.5t-50 6t-46 9.5q-19 5 -19 23v60q0 6 4.5 11t12.5 5h4q18 -2 42.5 -4t48.5 -3.5t45 -2.5t32 -1q23 0 37 3.5t21.5 10t10 15.5t2.5 19q0 14 -10 25t-34 26l-137 84q-37 23 -60.5 58.5 +t-23.5 79.5q0 150 190 150q30 0 54.5 -1.5t45.5 -4.5t40 -6.5t38 -7.5q18 -5 18 -23v-58q0 -19 -16 -19h-4q-11 1 -30 3.5t-42 4t-47.5 3t-45.5 1.5q-36 0 -52.5 -9.5t-16.5 -32.5q0 -12 10.5 -21t29.5 -20l131 -80q31 -19 50 -38t29.5 -38t13.5 -38t3 -38zM330 -59 +q0 -4 -4 -8l-119 -123q-6 -7 -10 -10.5t-13 -3.5h-86q-9 0 -9 7q0 6 4 10l94 120q7 8 11.5 11.5t14.5 3.5h106q11 0 11 -7z" /> + <glyph glyph-name="scircumflex" unicode="&#x15d;" horiz-adv-x="489" +d="M444 148q0 -33 -12 -61.5t-36.5 -49.5t-61.5 -33t-86 -12q-15 0 -36.5 1t-46.5 3.5t-50 6t-46 9.5q-19 5 -19 23v60q0 6 4.5 11t12.5 5h4q18 -2 42.5 -4t48.5 -3.5t45 -2.5t32 -1q23 0 37 3.5t21.5 10t10 15.5t2.5 19q0 14 -10 25t-34 26l-137 84q-37 23 -60.5 58.5 +t-23.5 79.5q0 150 190 150q30 0 54.5 -1.5t45.5 -4.5t40 -6.5t38 -7.5q18 -5 18 -23v-58q0 -19 -16 -19h-4q-11 1 -30 3.5t-42 4t-47.5 3t-45.5 1.5q-36 0 -52.5 -9.5t-16.5 -32.5q0 -12 10.5 -21t29.5 -20l131 -80q31 -19 50 -38t29.5 -38t13.5 -38t3 -38zM426 634 +q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="uni0219" unicode="&#x219;" horiz-adv-x="489" +d="M444 148q0 -33 -12 -61.5t-36.5 -49.5t-61.5 -33t-86 -12q-15 0 -36.5 1t-46.5 3.5t-50 6t-46 9.5q-19 5 -19 23v60q0 6 4.5 11t12.5 5h4q18 -2 42.5 -4t48.5 -3.5t45 -2.5t32 -1q23 0 37 3.5t21.5 10t10 15.5t2.5 19q0 14 -10 25t-34 26l-137 84q-37 23 -60.5 58.5 +t-23.5 79.5q0 150 190 150q30 0 54.5 -1.5t45.5 -4.5t40 -6.5t38 -7.5q18 -5 18 -23v-58q0 -19 -16 -19h-4q-11 1 -30 3.5t-42 4t-47.5 3t-45.5 1.5q-36 0 -52.5 -9.5t-16.5 -32.5q0 -12 10.5 -21t29.5 -20l131 -80q31 -19 50 -38t29.5 -38t13.5 -38t3 -38zM317 -65 +q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="tbar" unicode="&#x167;" horiz-adv-x="405" +d="M380 17q0 -15 -19 -18q-18 -3 -34.5 -5t-33.5 -2q-42 0 -72.5 6t-49.5 23t-28 48.5t-9 81.5v114l-94 14q-8 2 -14 7t-6 13v45q0 8 6 14t14 6h94v101l-94 14q-8 2 -14 7t-6 13v45q0 8 6 14t14 6h94v82q0 8 6 13t14 7l93 16h4q16 0 16 -15v-103h90q8 0 14 -6t6 -14v-59 +q0 -8 -6 -14t-14 -6h-90v-101h90q8 0 14 -6t6 -14v-59q0 -8 -6 -14t-14 -6h-90v-114q0 -19 1 -30t5 -17t11.5 -7.5t21.5 -1.5h53q21 0 21 -15v-63v0z" /> + <glyph glyph-name="tcaron" unicode="&#x165;" horiz-adv-x="597" +d="M380 17q0 -15 -19 -18q-18 -3 -34.5 -5t-33.5 -2q-42 0 -72.5 6t-49.5 23t-28 48.5t-9 81.5v314l-94 14q-8 2 -14 7t-6 13v45q0 8 6 14t14 6h94v82q0 8 6 13t14 7l93 16h4q16 0 16 -15v-103h90q8 0 14 -6t6 -14v-59q0 -8 -6 -14t-14 -6h-90v-314q0 -19 1 -30t5 -17 +t11.5 -7.5t21.5 -1.5h53q21 0 21 -15v-63zM622 750q0 -2 -2 -8l-87 -207q-5 -19 -22 -19h-68q-9 0 -9 10q0 6 1 9l61 207q5 19 20 19h94q12 0 12 -11z" /> + <glyph glyph-name="tcommaaccent" unicode="&#x163;" horiz-adv-x="405" +d="M380 17q0 -15 -19 -18q-18 -3 -34.5 -5t-33.5 -2q-42 0 -72.5 6t-49.5 23t-28 48.5t-9 81.5v314l-94 14q-8 2 -14 7t-6 13v45q0 8 6 14t14 6h94v82q0 8 6 13t14 7l93 16h4q16 0 16 -15v-103h90q8 0 14 -6t6 -14v-59q0 -8 -6 -14t-14 -6h-90v-314q0 -19 1 -30t5 -17 +t11.5 -7.5t21.5 -1.5h53q21 0 21 -15v-63zM312 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="ubreve" unicode="&#x16d;" horiz-adv-x="592" +d="M527 20q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v23q-39 -26 -74 -38t-83 -12q-38 0 -69.5 10t-53.5 32q-28 28 -39 73.5t-11 108.5v326q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-326q0 -38 4.5 -60.5t18.5 -35.5q11 -9 25 -13.5t37 -4.5q14 0 29.5 4t30.5 10 +t28.5 13t24.5 13v400q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523zM472 772q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5 +t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="uhungarumlaut" unicode="&#x171;" horiz-adv-x="592" +d="M527 20q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v23q-39 -26 -74 -38t-83 -12q-38 0 -69.5 10t-53.5 32q-28 28 -39 73.5t-11 108.5v326q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-326q0 -38 4.5 -60.5t18.5 -35.5q11 -9 25 -13.5t37 -4.5q14 0 29.5 4t30.5 10 +t28.5 13t24.5 13v400q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523zM557 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7zM347 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86 +q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="umacron" unicode="&#x16b;" horiz-adv-x="592" +d="M527 20q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v23q-39 -26 -74 -38t-83 -12q-38 0 -69.5 10t-53.5 32q-28 28 -39 73.5t-11 108.5v326q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-326q0 -38 4.5 -60.5t18.5 -35.5q11 -9 25 -13.5t37 -4.5q14 0 29.5 4t30.5 10 +t28.5 13t24.5 13v400q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523zM471 680q0 -8 -6 -13t-14 -5h-310q-8 0 -14 5t-6 13v57q0 8 6 13t14 5h310q8 0 14 -5t6 -13v-57z" /> + <glyph glyph-name="uogonek" unicode="&#x173;" horiz-adv-x="592" +d="M401 46q-39 -26 -77 -39.5t-86 -13.5q-38 0 -69.5 10t-53.5 32q-28 28 -39 73.5t-11 108.5v326q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-326q0 -38 4.5 -60.5t18.5 -35.5q11 -9 25 -13.5t37 -4.5q14 0 29.5 4t30.5 10t28.5 13t24.5 13v400q0 8 6 14.5t14 6.5h92 +q8 0 13.5 -6.5t5.5 -14.5v-518q0 -8 -1 -12.5t-6 -8.5l-51 -34q-19 -13 -30.5 -21t-17.5 -13.5t-7.5 -10.5t-1.5 -11q0 -19 25 -19q29 0 53 4.5t29 4.5q7 0 8.5 -2t1.5 -10v-58q0 -5 -1.5 -8t-9.5 -7q-11 -5 -36 -12.5t-67 -7.5q-24 0 -47 3.5t-41 12.5t-28.5 25.5 +t-10.5 42.5q0 17 3 30.5t11.5 26t24 26t41.5 30.5l34 23v27z" /> + <glyph glyph-name="uring" unicode="&#x16f;" horiz-adv-x="592" +d="M527 20q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v23q-39 -26 -74 -38t-83 -12q-38 0 -69.5 10t-53.5 32q-28 28 -39 73.5t-11 108.5v326q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-326q0 -38 4.5 -60.5t18.5 -35.5q11 -9 25 -13.5t37 -4.5q14 0 29.5 4t30.5 10 +t28.5 13t24.5 13v400q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523zM407 708q0 -23 -8.5 -43t-23.5 -35t-35 -23.5t-43 -8.5t-43 8.5t-35 23.5t-24 35t-9 43t9 43t24 35t35 24t43 9t43 -9t35 -24t23.5 -35t8.5 -43zM345 709q0 20 -14 33.5t-34 13.5t-33 -13.5t-13 -33.5 +t13 -34t33 -14t34 14t14 34z" /> + <glyph glyph-name="utilde" unicode="&#x169;" horiz-adv-x="592" +d="M527 20q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v23q-39 -26 -74 -38t-83 -12q-38 0 -69.5 10t-53.5 32q-28 28 -39 73.5t-11 108.5v326q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-326q0 -38 4.5 -60.5t18.5 -35.5q11 -9 25 -13.5t37 -4.5q14 0 29.5 4t30.5 10 +t28.5 13t24.5 13v400q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523zM485 739q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21q0 60 30 86t82 26q17 0 35.5 -5.5 +t33.5 -16.5l44 -33q26 -20 42 -20q13 0 20.5 6.5t7.5 26.5v21q0 16 14 16h57q14 0 14 -16v-22z" /> + <glyph glyph-name="wacute" unicode="&#x1e83;" horiz-adv-x="819" +d="M793 541l-91 -460q-5 -23 -10.5 -38.5t-15.5 -26t-25 -15t-38 -4.5h-27q-41 0 -63 19.5t-32 58.5l-79 306q-1 5 -3 5t-3 -5l-79 -306q-10 -39 -32 -58.5t-63 -19.5h-27q-23 0 -38 4.5t-25 15t-16 26t-10 38.5l-91 460v3q0 8 6 14t14 6h97q8 0 12.5 -5.5t5.5 -12.5 +l63 -423q2 -14 5 -14q4 0 7 14l83 336q8 29 19 36t37 7h70q26 0 37 -7t19 -36l83 -336q3 -14 7 -14q3 0 5 14l63 423q1 7 5.5 12.5t12.5 5.5h97q8 0 14 -6t6 -14v-3zM586 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5 +t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="wcircumflex" unicode="&#x175;" horiz-adv-x="819" +d="M793 541l-91 -460q-5 -23 -10.5 -38.5t-15.5 -26t-25 -15t-38 -4.5h-27q-41 0 -63 19.5t-32 58.5l-79 306q-1 5 -3 5t-3 -5l-79 -306q-10 -39 -32 -58.5t-63 -19.5h-27q-23 0 -38 4.5t-25 15t-16 26t-10 38.5l-91 460v3q0 8 6 14t14 6h97q8 0 12.5 -5.5t5.5 -12.5 +l63 -423q2 -14 5 -14q4 0 7 14l83 336q8 29 19 36t37 7h70q26 0 37 -7t19 -36l83 -336q3 -14 7 -14q3 0 5 14l63 423q1 7 5.5 12.5t12.5 5.5h97q8 0 14 -6t6 -14v-3zM596 634q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7 +q0 6 4 10l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="wdieresis" unicode="&#x1e85;" horiz-adv-x="819" +d="M793 541l-91 -460q-5 -23 -10.5 -38.5t-15.5 -26t-25 -15t-38 -4.5h-27q-41 0 -63 19.5t-32 58.5l-79 306q-1 5 -3 5t-3 -5l-79 -306q-10 -39 -32 -58.5t-63 -19.5h-27q-23 0 -38 4.5t-25 15t-16 26t-10 38.5l-91 460v3q0 8 6 14t14 6h97q8 0 12.5 -5.5t5.5 -12.5 +l63 -423q2 -14 5 -14q4 0 7 14l83 336q8 29 19 36t37 7h70q26 0 37 -7t19 -36l83 -336q3 -14 7 -14q3 0 5 14l63 423q1 7 5.5 12.5t12.5 5.5h97q8 0 14 -6t6 -14v-3zM568 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14 +v-88zM368 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="wgrave" unicode="&#x1e81;" horiz-adv-x="819" +d="M793 541l-91 -460q-5 -23 -10.5 -38.5t-15.5 -26t-25 -15t-38 -4.5h-27q-41 0 -63 19.5t-32 58.5l-79 306q-1 5 -3 5t-3 -5l-79 -306q-10 -39 -32 -58.5t-63 -19.5h-27q-23 0 -38 4.5t-25 15t-16 26t-10 38.5l-91 460v3q0 8 6 14t14 6h97q8 0 12.5 -5.5t5.5 -12.5 +l63 -423q2 -14 5 -14q4 0 7 14l83 336q8 29 19 36t37 7h70q26 0 37 -7t19 -36l83 -336q3 -14 7 -14q3 0 5 14l63 423q1 7 5.5 12.5t12.5 5.5h97q8 0 14 -6t6 -14v-3zM486 634q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5 +l94 -120q4 -4 4 -10z" /> + <glyph glyph-name="ycircumflex" unicode="&#x177;" horiz-adv-x="560" +d="M535 547q0 -4 -1 -6l-167 -584q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 8 6 13t14 5h2q10 0 25.5 -1l31 -2t30.5 -2t26 -1q32 0 50 12.5t29 51.5l8 30h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5 +t-18.5 45.5l-131 458q-1 3 -1 7q0 16 19 16h101q7 0 12 -5.5t7 -12.5l101 -407q3 -13 6 -17.5t8 -4.5h1h5h3l108 430q2 7 7 12t13 5h102q8 0 13 -5t5 -12zM467 634q0 -7 -9 -7h-83q-9 0 -13 3t-10 10l-71 81l-71 -81q-6 -7 -10.5 -10t-13.5 -3h-83q-9 0 -9 7q0 6 4 10 +l92 120q7 8 11.5 11.5t14.5 3.5h130q10 0 14.5 -3.5t11.5 -11.5l91 -120q4 -4 4 -10z" /> + <glyph glyph-name="ygrave" unicode="&#x1ef3;" horiz-adv-x="560" +d="M535 547q0 -4 -1 -6l-167 -584q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 8 6 13t14 5h2q10 0 25.5 -1l31 -2t30.5 -2t26 -1q32 0 50 12.5t29 51.5l8 30h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5 +t-18.5 45.5l-131 458q-1 3 -1 7q0 16 19 16h101q7 0 12 -5.5t7 -12.5l101 -407q3 -13 6 -17.5t8 -4.5h1h5h3l108 430q2 7 7 12t13 5h102q8 0 13 -5t5 -12zM361 634q0 -7 -9 -7h-86q-9 0 -13 3t-10 10l-119 124q-4 4 -4 8q0 7 11 7h106q10 0 14.5 -3.5t11.5 -11.5l94 -120 +q4 -4 4 -10z" /> + <glyph glyph-name="zacute" unicode="&#x17a;" horiz-adv-x="490" +d="M450 20q0 -8 -6 -14t-14 -6h-350q-17 0 -28.5 11.5t-11.5 28.5v43q0 15 13 32l242 333q3 4 3 6q0 3 -6 3h-226q-8 0 -13 4t-5 12v71q0 8 6 14t14 6h340q17 0 28.5 -12t11.5 -29v-57q0 -4 -1.5 -12t-3.5 -11l-233 -319l-2 -3q0 -4 6 -4h218q8 0 13 -4t5 -12v-81zM420 772 +q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="zdotaccent" unicode="&#x17c;" horiz-adv-x="490" +d="M450 20q0 -8 -6 -14t-14 -6h-350q-17 0 -28.5 11.5t-11.5 28.5v43q0 15 13 32l242 333q3 4 3 6q0 3 -6 3h-226q-8 0 -13 4t-5 12v71q0 8 6 14t14 6h340q17 0 28.5 -12t11.5 -29v-57q0 -4 -1.5 -12t-3.5 -11l-233 -319l-2 -3q0 -4 6 -4h218q8 0 13 -4t5 -12v-81zM310 655 +q0 -8 -6 -14t-14 -6h-90q-8 0 -14 6t-6 14v95q0 8 6 13.5t14 5.5h90q8 0 14 -5.5t6 -13.5v-95z" /> + <glyph glyph-name="kgreenlandic" unicode="&#x138;" horiz-adv-x="549" +d="M519 12q0 -5 -4 -8.5t-10 -3.5h-122q-8 0 -16 6.5t-13 13.5l-157 228v-227q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-220l171 228q5 7 11.5 9.5t11.5 2.5h112q15 0 15 -11q0 -5 -4 -10l-201 -247l203 -276q3 -5 3 -8z +" /> + <glyph glyph-name="napostrophe" unicode="&#x149;" horiz-adv-x="747" +d="M196 750q0 -5 -1 -8l-68 -207q-5 -19 -19 -19h-80q-9 0 -9 10q0 6 1 9l51 207q4 19 20 19h94q11 0 11 -11zM682 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v326q0 33 -2.5 54.5t-11 34t-25.5 18t-46 5.5q-26 0 -53.5 -9.5t-59.5 -26.5v-402q0 -8 -6 -14.5 +t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h87q8 0 14 -6t6 -14v-21q22 14 40.5 23t37.5 14.5t39 8t45 2.5q54 0 88 -17t52.5 -47t25.5 -71t7 -89v-326z" /> + <glyph glyph-name="Delta" unicode="&#x2206;" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-572q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2zM339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-122 -504h276z" /> + <glyph glyph-name="Omega" unicode="&#x2126;" horiz-adv-x="678" +d="M483 461q0 78 -35 122.5t-109 44.5t-109 -44.5t-35 -122.5v-28q0 -41 3.5 -70.5t13.5 -51.5t28.5 -36.5t49.5 -25.5q8 -3 11 -7t3 -18v-203q0 -21 -21 -21h-181q-10 0 -16.5 4.5t-6.5 16.5v84q0 12 6.5 16t16.5 4h121v27q-54 18 -87 48.5t-51 68t-24 80t-6 84.5v28 +q0 70 21 125t58.5 92.5t89.5 57t115 19.5t115 -19.5t89.5 -57t58.5 -92.5t21 -125v-28q0 -42 -6 -84.5t-24 -80t-51 -68t-87 -48.5v-27h121q10 0 16.5 -4t6.5 -16v-84q0 -12 -6.5 -16.5t-16.5 -4.5h-181q-21 0 -21 21v203q0 14 3 18t11 7q31 11 49.5 25.5t28.5 36.5 +t13.5 51.5t3.5 70.5v28z" /> + <glyph glyph-name="uni03BC" unicode="&#x3bc;" horiz-adv-x="587" +d="M527 42q0 -10 -6 -16t-21 -10q-38 -10 -89 -17t-114 -7q-34 0 -59.5 8.5t-43.5 22.5v-195q0 -8 -5 -14t-13 -6h-97q-8 0 -13.5 6t-5.5 14v715q0 8 6 14.5t14 6.5h93q8 0 14 -6.5t6 -14.5v-346q0 -96 104 -96q24 0 50 3t46 8v431q0 8 6 14.5t14 6.5h93q8 0 14.5 -6.5 +t6.5 -14.5v-501v0z" /> + <glyph glyph-name="pi" unicode="&#x3c0;" horiz-adv-x="672" +d="M567 454v-320q0 -19 9 -22t41 -3h24q10 0 10 -11v-93q0 -8 -3 -9.5t-8 -3.5q-4 -1 -15.5 -1.5t-25 -1t-26 -1t-18.5 -0.5q-34 0 -57 8t-37 25t-20 45t-6 68v320h-198v-434q0 -7 -2 -13.5t-12 -6.5h-103q-9 0 -12 5.5t-3 14.5v434h-69q-8 0 -11.5 2.5t-3.5 12.5v79 +q0 10 3.5 13t11.5 3h600q8 0 11.5 -3t3.5 -13v-79q0 -10 -3.5 -12.5t-11.5 -2.5h-69z" /> + <glyph glyph-name="afii10017" unicode="&#x410;" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-106q-7 0 -12 5t-7 12l-46 190h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2z +M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176z" /> + <glyph glyph-name="afii10018" unicode="&#x411;" horiz-adv-x="641" +d="M214 628v-158q21 2 43.5 2h45.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v689q0 8 6 14t14 6h435q8 0 14 -5.5t6 -13.5v-79q0 -8 -6 -13t-14 -5h-316z +M214 111q7 -1 18.5 -1.5t24.5 -1t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242z" /> + <glyph glyph-name="afii10019" unicode="&#x412;" horiz-adv-x="650" +d="M600 208q0 -60 -21.5 -101t-61 -66.5t-95.5 -37t-126 -11.5q-61 0 -105.5 3t-67.5 8q-25 5 -36.5 15.5t-11.5 38.5v630q0 27 10.5 38.5t34.5 15.5q20 3 64 6.5t103 3.5q68 0 124.5 -10.5t97.5 -34.5t63.5 -62.5t22.5 -95.5v-20q0 -50 -23 -90.5t-69 -60.5 +q46 -20 71.5 -57.5t25.5 -94.5v-17zM460 540q0 52 -38.5 74t-134.5 22q-18 0 -37.5 -0.5t-35.5 -1.5v-203h127q35 0 58 7.5t36.5 20.5t19 30.5t5.5 36.5v14zM464 223q0 21 -6 40t-20.5 33.5t-38 23.5t-58.5 9h-127v-220q18 0 42 -1t40 -1q48 0 80 6t51.5 19t28 32.5 +t8.5 45.5v13z" /> + <glyph glyph-name="afii10020" unicode="&#x413;" horiz-adv-x="576" +d="M213 20q0 -8 -6 -14t-14 -6h-98q-8 0 -14 6t-6 14v526q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204q-44 0 -61.5 -18t-17.5 -68v-526z" /> + <glyph glyph-name="afii10050" unicode="&#x490;" horiz-adv-x="576" +d="M213 20q0 -8 -6 -14t-14 -6h-98q-8 0 -14 6t-6 14v526q0 64 18 104t49 62.5t73 30.5t91 8h38t33 -1v47q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-145q0 -8 -6 -14t-14 -6h-204q-44 0 -61.5 -18t-17.5 -68v-526z" /> + <glyph glyph-name="afii10021" unicode="&#x414;" horiz-adv-x="773" +d="M109 124l137 525q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l136 -525h78q8 0 14 -6t6 -14v-222q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v118h-465v-118q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v222q0 8 6 14t14 6h74zM250 124h269 +l-118 494q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5z" /> + <glyph glyph-name="afii10022" unicode="&#x415;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64v0z" /> + <glyph glyph-name="afii10024" unicode="&#x416;" horiz-adv-x="997" +d="M429 723q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-318l245 329q4 5 9.5 6.5t13.5 1.5h114q19 0 19 -12q0 -7 -7 -16l-256 -331l258 -362q5 -8 5 -12q0 -9 -15 -9h-134q-16 0 -23 11l-229 341v-332q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v332l-229 -341 +q-7 -11 -23 -11h-134q-15 0 -15 9q0 4 5 12l258 362l-256 331q-7 9 -7 16q0 12 19 12h114q8 0 13.5 -1.5t9.5 -6.5l245 -329v318z" /> + <glyph glyph-name="afii10025" unicode="&#x417;" horiz-adv-x="587" +d="M522 208q0 -56 -19.5 -96.5t-53 -67t-79.5 -39.5t-99 -13q-56 0 -102.5 7t-89.5 18q-8 2 -13.5 6.5t-5.5 12.5v62q0 8 5 13t13 5h2q60 -6 107.5 -10t83.5 -4q61 0 86.5 26.5t25.5 79.5v21q0 20 -3.5 38t-14 32t-28.5 22.5t-46 8.5h-177q-19 0 -19 19v63q0 19 19 19h177 +q28 0 46 8t28.5 21.5t14 31t3.5 37.5v16q0 19 -4.5 36.5t-17 30.5t-34.5 21t-56 8q-27 0 -47.5 -1t-41.5 -2.5t-45 -4.5t-57 -6h-2q-8 0 -13 5t-5 13v62q0 8 5.5 12.5t13.5 6.5q43 11 89.5 18t102.5 7q54 0 100 -11t79.5 -35.5t52.5 -63.5t19 -96v-16q0 -53 -22.5 -89.5 +t-63.5 -58.5q42 -23 64 -63.5t22 -88.5v-21v0z" /> + <glyph glyph-name="afii10026" unicode="&#x418;" horiz-adv-x="712" +d="M75 724q0 19 19 19h86q19 0 19 -19v-526q0 -9 5 -9t8 8l233 514q9 20 18.5 26t25.5 6h108q17 0 28.5 -11.5t11.5 -28.5v-683q0 -8 -6 -14t-14 -6h-85q-8 0 -13.5 6t-5.5 14v503q0 8 -5 8t-9 -8l-222 -487q-12 -27 -27.5 -31.5t-33.5 -4.5h-101q-17 0 -28.5 11.5 +t-11.5 28.5v684z" /> + <glyph glyph-name="afii10027" unicode="&#x419;" horiz-adv-x="712" +d="M540 944q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7zM75 40v684 +q0 19 19 19h86q19 0 19 -19v-526q0 -9 5 -9t8 8l233 514q9 20 18.5 26t25.5 6h108q17 0 28.5 -11.5t11.5 -28.5v-683q0 -8 -6 -14t-14 -6h-85q-8 0 -13.5 6t-5.5 14v503q0 8 -5 8t-9 -8l-222 -487q-12 -27 -27.5 -31.5t-33.5 -4.5h-101q-17 0 -28.5 11.5t-11.5 28.5z" /> + <glyph glyph-name="afii10028" unicode="&#x41a;" horiz-adv-x="643" +d="M615 9q0 -9 -15 -9h-134q-16 0 -23 11l-229 341v-332q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v703q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-318l245 329q4 5 9.5 6.5t13.5 1.5h114q19 0 19 -12q0 -7 -7 -16l-256 -331l258 -362q5 -8 5 -12z" /> + <glyph glyph-name="afii10029" unicode="&#x41b;" horiz-adv-x="646" +d="M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-145 -601q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2q0 -8 -5 -12.5t-13 -4.5 +h-106q-7 0 -12 5t-7 12z" /> + <glyph glyph-name="afii10030" unicode="&#x41c;" horiz-adv-x="792" +d="M717 15q0 -8 -5 -11.5t-12 -3.5h-101q-7 0 -11.5 6t-4.5 14v465q0 10 -3 10q-1 0 -5 -6l-96 -191q-5 -8 -13.5 -12.5t-18.5 -4.5h-101q-10 0 -18.5 4.5t-13.5 12.5l-97 191q-4 6 -5 6q-3 0 -3 -10v-465q0 -8 -4.5 -14t-11.5 -6h-101q-7 0 -12 3.5t-5 11.5v688 +q0 17 11.5 28.5t28.5 11.5h82q12 0 22 -6.5t15 -17.5l151 -306l6 -10.5t5 -3.5t5 3.5l6 10.5l151 306q5 11 15 17.5t22 6.5h82q17 0 28.5 -11.5t11.5 -28.5v-688v0z" /> + <glyph glyph-name="afii10031" unicode="&#x41d;" horiz-adv-x="712" +d="M637 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v306h-284v-306q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-276h284v276q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="afii10032" unicode="&#x41e;" horiz-adv-x="680" +d="M625 304q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM485 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135 +q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135z" /> + <glyph glyph-name="afii10033" unicode="&#x41f;" horiz-adv-x="712" +d="M637 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v551q0 29 -9 39t-33 10h-200q-24 0 -33 -10t-9 -39v-551q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v551q0 90 42 131t139 41h200q97 0 139 -41t42 -131v-551z" /> + <glyph glyph-name="afii10034" unicode="&#x420;" horiz-adv-x="626" +d="M591 511q0 -66 -23.5 -111t-63 -72.5t-91.5 -39t-110 -11.5q-20 0 -46 1.5t-43 2.5v-261q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -14 6t-6 14v688q0 15 8.5 21.5t23.5 8.5q39 6 90 9.5t106 3.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-9zM453 520q0 63 -37.5 89.5 +t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-238q6 0 18.5 -0.5t26 -1t26 -1t18.5 -0.5q81 0 115.5 30t34.5 90v9z" /> + <glyph glyph-name="afii10035" unicode="&#x421;" horiz-adv-x="563" +d="M518 31q0 -11 -6 -15.5t-16 -7.5q-6 -2 -20.5 -4.5t-35.5 -5t-47 -4.5t-55 -2q-45 0 -95 13t-91.5 47.5t-69 93.5t-27.5 152v147q0 94 27.5 153.5t69 93.5t91.5 46.5t95 12.5q29 0 55 -2t47 -4.5t35.5 -5.5t20.5 -4q10 -3 16 -7.5t6 -15.5v-67q0 -9 -4.5 -15t-15.5 -6h-2 +q-13 1 -31.5 2.5t-39.5 2.5t-43 2t-42 1q-32 0 -58.5 -9.5t-45.5 -31t-30 -57.5t-11 -89v-147q0 -52 11 -88t30 -58t45.5 -31.5t58.5 -9.5q20 0 42 1t43 2t39.5 2.5t31.5 2.5h2q11 0 15.5 -6t4.5 -15v-67v0z" /> + <glyph glyph-name="afii10036" unicode="&#x422;" horiz-adv-x="579" +d="M554 645q0 -8 -6 -13t-14 -5h-175v-607q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v607h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h489q8 0 14 -5.5t6 -13.5v-79v0z" /> + <glyph glyph-name="afii10037" unicode="&#x423;" horiz-adv-x="573" +d="M402 727q2 7 6 12t14 5h102q8 0 14.5 -5.5t2.5 -17.5l-164 -572q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 11 6.5 15t15.5 3q11 -1 26 -2t31 -2t30.5 -1.5t25.5 -0.5q32 0 50 12.5t29 51.5 +l5 18h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5t-18.5 45.5l-131 458q-7 23 18 23h101q11 0 14 -5.5t5 -12.5l101 -407q3 -13 6 -17.5t11 -4.5h6z" /> + <glyph glyph-name="afii10038" unicode="&#x424;" horiz-adv-x="881" +d="M510 657q8 1 16 1h19q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-9q0 -66 -23.5 -111t-63 -72.5t-91.5 -39t-110 -11.5h-35v-164q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -14 6t-6 14v164h-35q-58 0 -110 11.5t-91.5 39t-63 72.5t-23.5 111v9q0 66 23.5 110.5t63 71.5 +t91.5 38t110 11h19t16 -1v67q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-67zM545 543h-16t-19 -1v-244h35q81 0 115.5 30t34.5 90v9q0 63 -37.5 89.5t-112.5 26.5zM371 298v244q-11 1 -20 1h-15q-75 0 -112.5 -26.5t-37.5 -89.5v-9q0 -60 34.5 -90t115.5 -30h35z" /> + <glyph glyph-name="afii10039" unicode="&#x425;" horiz-adv-x="650" +d="M627 12q0 -5 -4 -8.5t-12 -3.5h-118q-8 0 -14 5.5t-12 14.5l-147 236l-138 -236q-11 -20 -26 -20h-109q-16 0 -16 13q0 3 2 7l213 355l-219 349q-2 4 -2 6q0 13 16 13h118q8 0 14.5 -6t11.5 -13l146 -233l135 233q4 7 11 13t15 6h109q16 0 16 -13q0 -2 -2 -6l-210 -352 +l220 -352q2 -3 2 -8z" /> + <glyph glyph-name="afii10040" unicode="&#x426;" horiz-adv-x="756" +d="M637 172q0 -29 -4 -48h93q8 0 14 -6t6 -14v-222q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v118h-351q-97 0 -139 41t-42 131v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551q0 -29 9 -39t33 -10h200q24 0 33 10t9 39v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551z" /> + <glyph glyph-name="afii10041" unicode="&#x427;" horiz-adv-x="692" +d="M65 722q0 8 6 14.5t14 6.5h99q8 0 14 -6.5t6 -14.5v-229q0 -33 7.5 -53.5t23.5 -32t39.5 -16t55.5 -4.5q40 0 84 10t74 22v303q0 8 6 14.5t14 6.5h99q8 0 14 -6.5t6 -14.5v-702q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v288q-31 -13 -82 -25t-112 -12q-62 0 -105.5 17 +t-71 47t-40 70.5t-12.5 86.5v230v0z" /> + <glyph glyph-name="afii10042" unicode="&#x428;" horiz-adv-x="1005" +d="M438 723q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-600h172q24 0 33 10t9 39v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551q0 -90 -42 -131t-139 -41h-493q-97 0 -139 41t-42 131v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551q0 -29 9 -39t33 -10h182v600z" /> + <glyph glyph-name="afii10043" unicode="&#x429;" horiz-adv-x="1069" +d="M438 723q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-600h172q24 0 33 10t9 39v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551q0 -29 -4 -48h93q8 0 14 -6t6 -14v-222q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v118h-644q-97 0 -139 41t-42 131v551q0 8 6 14t14 6h99q8 0 14 -6 +t6 -14v-551q0 -29 9 -39t33 -10h182v600z" /> + <glyph glyph-name="afii10044" unicode="&#x42a;" horiz-adv-x="621" +d="M195 744q8 0 13.5 -6t5.5 -14v-254q21 2 43.5 2h45.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v593h-70q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h190z +M214 111q7 -1 18.5 -1.5t24.5 -1t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242z" /> + <glyph glyph-name="afii10045" unicode="&#x42b;" horiz-adv-x="908" +d="M214 470q21 2 43.5 2h45.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v688q0 8 6 14t14 6h100q8 0 13.5 -6t5.5 -14v-253zM214 111q7 -1 18.5 -1.5t24.5 -1 +t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242zM833 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704z" /> + <glyph glyph-name="afii10046" unicode="&#x42c;" horiz-adv-x="639" +d="M214 470q21 2 43.5 2h45.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v688q0 8 6 14t14 6h100q8 0 13.5 -6t5.5 -14v-253zM214 111q7 -1 18.5 -1.5t24.5 -1 +t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242z" /> + <glyph glyph-name="afii10047" unicode="&#x42d;" horiz-adv-x="621" +d="M117 326q-8 0 -14 6t-6 14v72q0 8 6 14t14 6h311v6q0 57 -11.5 93.5t-33 57.5t-54 29t-74.5 8h-160q-8 0 -14 6t-6 14v64q0 11 4.5 15t15.5 6q24 5 64.5 9.5t96.5 4.5t111.5 -13.5t99.5 -52.5t71.5 -111t27.5 -189v-37q0 -78 -12.5 -134.5t-34.5 -96.5t-52 -64t-64.5 -38 +t-72 -18.5t-74.5 -4.5q-56 0 -96.5 4.5t-64.5 9.5q-11 2 -15.5 6t-4.5 15v64q0 8 6 14t14 6h160q42 0 74.5 8t54 29t33 57.5t11.5 93.5v27h-311z" /> + <glyph glyph-name="afii10048" unicode="&#x42e;" horiz-adv-x="960" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-293h121v8q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5 +t-59.5 96.5t-21.5 142v14h-121v-298zM765 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135z" /> + <glyph glyph-name="afii10049" unicode="&#x42f;" horiz-adv-x="653" +d="M38 12q0 5 2 8l157 292q-62 24 -98.5 74t-36.5 130v9q0 64 23.5 107.5t63 69.5t91.5 37.5t110 11.5q55 0 106 -3.5t90 -9.5q15 -2 23.5 -8.5t8.5 -21.5v-688q0 -8 -6 -14t-14 -6h-100q-8 0 -13.5 6t-5.5 14v271q-17 -1 -43 -2.5t-46 -1.5h-14l-144 -267q-4 -8 -8 -14 +t-12 -6h-122q-12 0 -12 12zM200 516q0 -66 36 -91t114 -25q6 0 18.5 0.5t26 1t26 1t18.5 0.5v225q-7 1 -18.5 1.5t-24.5 1t-25.5 1t-20.5 0.5q-75 0 -112.5 -25t-37.5 -82v-9z" /> + <glyph glyph-name="afii10023" unicode="&#x401;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64zM448 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM248 824 +q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="afii10051" unicode="&#x402;" horiz-adv-x="787" +d="M722 150q0 -46 -11 -76.5t-31.5 -48.5t-49 -25.5t-63.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v105q0 33 -5 54t-16 33t-28.5 17t-42.5 5q-26 0 -63 -8.5t-69 -25.5v-310q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v607 +h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h489q8 0 14 -5.5t6 -13.5v-79q0 -8 -6 -13t-14 -5h-175v-188q29 17 69.5 27t84.5 10q57 0 96.5 -17t64.5 -47t36.5 -70.5t11.5 -86.5v-105v0z" /> + <glyph glyph-name="afii10052" unicode="&#x403;" horiz-adv-x="556" +d="M213 20q0 -8 -6 -14t-14 -6h-98q-8 0 -14 6t-6 14v526q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204q-44 0 -61.5 -18t-17.5 -68v-526zM491 939q0 -4 -4 -8l-118 -124 +q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="afii10053" unicode="&#x404;" horiz-adv-x="621" +d="M193 326v-37q0 -57 11.5 -93.5t33 -57.5t54 -29t74.5 -8h160q8 0 14 -6t6 -14v-64q0 -11 -4.5 -15t-15.5 -6q-24 -5 -64.5 -9.5t-96.5 -4.5t-111.5 13.5t-99.5 52.5t-71.5 111t-27.5 189v37q0 117 27.5 189t71.5 111t99.5 52.5t111.5 13.5t96.5 -4.5t64.5 -9.5 +q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-160q-42 0 -74.5 -8t-54 -29t-33 -57.5t-11.5 -93.5v-6h311q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-311z" /> + <glyph glyph-name="afii10054" unicode="&#x405;" horiz-adv-x="570" +d="M525 201q0 -38 -13 -75.5t-43.5 -67t-81 -48t-125.5 -18.5q-57 0 -99 5t-78 13q-8 2 -13.5 7t-5.5 13v72q0 8 5.5 13.5t13.5 5.5h2q15 -2 39.5 -3.5t50.5 -3t49.5 -2.5t37.5 -1q67 0 91.5 23t24.5 67q0 15 -4 26.5t-14 22.5t-26 22.5t-41 26.5l-132 79q-35 21 -57.5 42 +t-36 43.5t-19 47t-5.5 50.5q0 41 13 76t42.5 60.5t77 39.5t117.5 14q25 0 53 -1.5t55 -4.5t49 -6t35 -6q8 -2 13 -6.5t5 -12.5v-74q0 -8 -4.5 -13t-12.5 -5h-2q-50 5 -99 7.5t-98 2.5q-56 0 -80.5 -18.5t-24.5 -52.5q0 -12 3.5 -22.5t13 -21t25.5 -21.5t40 -24l120 -67 +q41 -23 68 -46.5t42.5 -48.5t22 -52t6.5 -57z" /> + <glyph glyph-name="afii10055" unicode="&#x406;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="afii10056" unicode="&#x407;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM301 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM101 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6 +t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="afii10057" unicode="&#x408;" horiz-adv-x="289" +d="M214 -21q0 -80 -39.5 -113t-120.5 -33q-11 0 -24 1t-24.5 2.5t-20 2.5t-11.5 2q-10 3 -10 14v71q0 8 6 13t14 5h66q14 0 19.5 6.5t5.5 28.5v745q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-745v0z" /> + <glyph glyph-name="afii10058" unicode="&#x409;" horiz-adv-x="1032" +d="M607 120q7 -1 18.5 -1.5t24.5 -1t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242zM587 743q8 0 14 -5.5t6 -13.5v-245q21 2 43.5 2h45.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5 +v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v582h-145q-8 0 -11 -3.5t-5 -12.5l-145 -593q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 619q9 35 26 55t36.5 30.5t40 13.5t36.5 3h264z +" /> + <glyph glyph-name="afii10059" unicode="&#x40a;" horiz-adv-x="1062" +d="M637 468q21 2 43.5 3t45.5 1q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v291h-284v-306q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-276h284v276q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-256zM637 111q7 -1 18.5 -1.5t24.5 -1t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242z" /> + <glyph glyph-name="afii10060" unicode="&#x40b;" horiz-adv-x="801" +d="M736 21q0 -8 -6 -14.5t-14 -6.5h-99q-8 0 -14 6.5t-6 14.5v233q0 33 -5 53.5t-17 32t-31.5 15.5t-48.5 4q-13 0 -31 -3t-37.5 -7.5t-37.5 -11t-30 -12.5v-305q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v607h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h489q8 0 14 -5.5 +t6 -13.5v-79q0 -8 -6 -13t-14 -5h-175v-189q12 6 30 12.5t40.5 12t48 9t52.5 3.5q59 0 98.5 -17t63.5 -47t34 -70.5t10 -86.5v-233v0z" /> + <glyph glyph-name="afii10061" unicode="&#x40c;" horiz-adv-x="643" +d="M509 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7zM615 9q0 -9 -15 -9h-134q-16 0 -23 11l-229 341v-332q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v703q0 8 6 13.5t14 5.5h99q8 0 14 -5.5 +t6 -13.5v-318l245 329q4 5 9.5 6.5t13.5 1.5h114q19 0 19 -12q0 -7 -7 -16l-256 -331l258 -362q5 -8 5 -12z" /> + <glyph glyph-name="afii10062" unicode="&#x40e;" horiz-adv-x="573" +d="M402 727q2 7 6 12t14 5h102q8 0 14.5 -5.5t2.5 -17.5l-164 -572q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 11 6.5 15t15.5 3q11 -1 26 -2t31 -2t30.5 -1.5t25.5 -0.5q32 0 50 12.5t29 51.5 +l5 18h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5t-18.5 45.5l-131 458q-7 23 18 23h101q11 0 14 -5.5t5 -12.5l101 -407q3 -13 6 -17.5t11 -4.5h6zM465 930q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55 +q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="afii10145" unicode="&#x40f;" horiz-adv-x="712" +d="M637 172q0 -90 -42 -131t-139 -41h-30v-118q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v118h-31q-97 0 -139 41t-42 131v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551q0 -29 9 -39t33 -10h200q24 0 33 10t9 39v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551z" /> + <glyph glyph-name="afii10065" unicode="&#x430;" horiz-adv-x="548" +d="M483 20q0 -8 -6 -14t-14 -6h-85q-8 0 -14 6t-6 14v16q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11 +t94.5 5q107 0 163.5 -47t56.5 -144v-360zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123z" /> + <glyph glyph-name="afii10066" unicode="&#x431;" horiz-adv-x="574" +d="M526 246q0 -56 -15.5 -102.5t-45.5 -80t-74.5 -52.5t-103.5 -19t-103.5 19t-74.5 52.5t-45.5 80t-15.5 102.5v56q0 75 4.5 138t25 110.5t63 79.5t118.5 46l60 11q38 7 49 20.5t14 30.5q1 13 15 13h106q12 0 12 -13q0 -58 -35.5 -92t-100.5 -48l-63 -13q-43 -9 -74 -20.5 +t-42 -41.5q14 8 39 13t48 5q59 0 103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-46zM394 292q0 62 -23 98.5t-84 36.5q-58 0 -82.5 -36.5t-24.5 -98.5v-46q0 -75 27 -107.5t80 -32.5t80 32.5t27 107.5v46z" /> + <glyph glyph-name="afii10067" unicode="&#x432;" horiz-adv-x="577" +d="M537 158q0 -48 -19 -80t-54.5 -51t-87.5 -27t-118 -8q-57 0 -91.5 2.5t-56.5 5.5q-23 4 -34 12t-11 30v481q0 20 9.5 29t32.5 12q20 2 54 4.5t90 2.5q63 0 115 -5.5t89 -23t57.5 -49t20.5 -82.5v-6q0 -16 -4.5 -33t-14.5 -33t-26 -28.5t-38 -19.5q45 -14 66 -46.5 +t21 -80.5v-6zM405 411q0 18 -5 30t-18.5 19t-37.5 10t-63 3h-33t-22 -0.5t-15.5 -1t-13.5 -0.5v-135h88q39 0 63 5.5t36.5 14.5t16.5 21.5t4 27.5v6zM409 175q0 18 -4.5 32t-18 23t-38 13.5t-63.5 4.5h-88v-156q23 -1 34.5 -1h26.5q42 0 71 3.5t47 12.5t25.5 24t7.5 38v6z +" /> + <glyph glyph-name="afii10068" unicode="&#x433;" horiz-adv-x="402" +d="M246 448q-49 0 -49 -56v-372q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v372q0 90 42 131t139 41h119q8 0 14 -6t6 -14v-76q0 -8 -6 -14t-14 -6h-119z" /> + <glyph glyph-name="afii10098" unicode="&#x491;" horiz-adv-x="402" +d="M246 448q-49 0 -49 -56v-372q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v372q0 90 42 131t139 41h7v52q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-148q0 -8 -6 -14t-14 -6h-119z" /> + <glyph glyph-name="afii10069" unicode="&#x434;" horiz-adv-x="671" +d="M147 0v-118q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v207q0 8 6 14t14 6h68l96 360q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36 -3t39.5 -13.5t36.5 -30.5t27 -55l101 -360h58q8 0 14 -6t6 -14v-207q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v118h-377zM239 109h204 +l-87 329q-4 16 -18 16t-18 -16z" /> + <glyph glyph-name="afii10070" unicode="&#x435;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4z" /> + <glyph glyph-name="afii10072" unicode="&#x436;" horiz-adv-x="836" +d="M352 544q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-220l171 228q5 7 11.5 9.5t11.5 2.5h112q15 0 15 -11q0 -5 -4 -10l-201 -247l203 -276q3 -5 3 -8q0 -5 -4 -8.5t-10 -3.5h-122q-8 0 -16 6.5t-13 13.5l-157 228v-227q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v227 +l-157 -228q-5 -7 -13 -13.5t-16 -6.5h-122q-6 0 -10 3.5t-4 8.5q0 3 3 8l203 276l-201 247q-4 5 -4 10q0 11 15 11h112q5 0 11.5 -2.5t11.5 -9.5l171 -228v220z" /> + <glyph glyph-name="afii10073" unicode="&#x437;" horiz-adv-x="483" +d="M435 163q0 -50 -18.5 -83t-49.5 -52.5t-72 -27.5t-86 -8q-47 0 -87 5.5t-76 13.5q-6 2 -11 5.5t-5 9.5v69q0 14 16 14h1q51 -5 91 -8t71 -3q26 0 44 2.5t29 9.5t16 20t5 33v10q0 30 -14.5 48t-62.5 18h-150q-16 0 -16 14v70q0 15 16 15h150q48 0 62.5 16.5t14.5 47.5v8 +q0 15 -3.5 25.5t-14 17.5t-29 10.5t-47.5 3.5q-23 0 -40.5 -0.5t-35.5 -2t-38 -3.5t-48 -5h-1q-16 0 -16 14v67q0 6 5 9.5t11 5.5q36 8 76 13.5t87 5.5q46 0 87 -6.5t72 -24.5t49 -49.5t18 -80.5v-8q0 -35 -18.5 -65t-53.5 -48q18 -7 31.5 -19.5t22.5 -28.5t13.5 -34 +t4.5 -34v-10v0z" /> + <glyph glyph-name="afii10074" unicode="&#x438;" horiz-adv-x="592" +d="M395 324l-198 -303q-6 -10 -14 -15.5t-26 -5.5h-72q-8 0 -14 6.5t-6 14.5v522q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-302l198 303q4 6 11 13t30 7h71q8 0 14 -6.5t6 -14.5v-522q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v303z" /> + <glyph glyph-name="afii10075" unicode="&#x439;" horiz-adv-x="592" +d="M298 623q-41 0 -72 11.5t-53 31.5t-35 46.5t-17 55.5q-2 11 11 11h73q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h73q13 0 11 -11q-4 -29 -17 -55.5t-35 -46.5t-53.5 -31.5t-71.5 -11.5zM395 324l-198 -303q-6 -10 -14 -15.5t-26 -5.5h-72 +q-8 0 -14 6.5t-6 14.5v522q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-302l198 303q4 6 11 13t30 7h71q8 0 14 -6.5t6 -14.5v-522q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v303z" /> + <glyph glyph-name="afii10076" unicode="&#x43a;" horiz-adv-x="549" +d="M519 12q0 -5 -4 -8.5t-10 -3.5h-122q-8 0 -16 6.5t-13 13.5l-157 228v-227q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-220l171 228q5 7 11.5 9.5t11.5 2.5h112q15 0 15 -11q0 -5 -4 -10l-201 -247l203 -276q3 -5 3 -8z +" /> + <glyph glyph-name="afii10077" unicode="&#x43b;" horiz-adv-x="592" +d="M320 438q-5 20 -22 20t-22 -20l-98 -421q-2 -7 -7 -12t-12 -5h-100q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l117 447q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l118 -447q0 -2 0.5 -3t0.5 -2q0 -8 -5 -12.5t-13 -4.5h-100q-7 0 -12 5 +t-7 12z" /> + <glyph glyph-name="afii10078" unicode="&#x43c;" horiz-adv-x="718" +d="M643 11q0 -11 -16 -11h-93q-5 0 -9.5 5t-4.5 10v352q0 7 -3 7l-4 -4l-79 -144q-3 -6 -11.5 -9.5t-16.5 -3.5h-92q-9 0 -17.5 3.5t-12.5 9.5l-79 144l-4 4q-3 0 -3 -7v-352q0 -5 -4.5 -10t-9.5 -5h-93q-16 0 -16 11v521q0 13 11 22t25 9h76q11 0 20 -5.5t14 -13.5 +l127 -232q5 -10 12 -10q5 0 10 10l127 232q5 8 14 13.5t20 5.5h76q14 0 25 -9t11 -22v-521v0z" /> + <glyph glyph-name="afii10079" unicode="&#x43d;" horiz-adv-x="592" +d="M197 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v522q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-202h198v202q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-522q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v221h-198v-221z" /> + <glyph glyph-name="afii10080" unicode="&#x43e;" horiz-adv-x="574" +d="M526 241q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19t-103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19t103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81zM394 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81 +q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81z" /> + <glyph glyph-name="afii10081" unicode="&#x43f;" horiz-adv-x="592" +d="M229 455q-17 0 -24.5 -6.5t-7.5 -30.5v-397q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v398q0 49 13 78t35.5 44t52 19t63.5 4h134q34 0 63.5 -4t52 -19t35.5 -44t13 -78v-398q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v397q0 24 -7.5 30.5t-24.5 6.5 +h-134z" /> + <glyph glyph-name="afii10082" unicode="&#x440;" horiz-adv-x="577" +d="M532 243q0 -118 -59 -184.5t-180 -66.5q-18 0 -43 1.5t-53 5.5v-177q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v696q0 11 5 16.5t22 10.5q47 12 100 19t101 7q121 0 180 -66.5t59 -184.5v-77zM400 320q0 31 -4.5 57t-16.5 45t-33 30t-53 11q-27 0 -54.5 -2t-41.5 -5v-349 +q21 -3 49.5 -5t46.5 -2q32 0 53 11t33 30t16.5 45t4.5 57v77z" /> + <glyph glyph-name="afii10083" unicode="&#x441;" horiz-adv-x="468" +d="M423 31q0 -12 -4 -17.5t-17 -8.5q-17 -5 -50 -9t-79 -4q-49 0 -90.5 15t-72 45.5t-48 76t-17.5 106.5v93q0 61 17.5 106.5t48 76t72 45.5t90.5 15q46 0 79 -4t50 -9q13 -3 17 -8.5t4 -17.5v-65q0 -8 -5 -11.5t-13 -3.5h-3q-15 2 -28 3.5t-27 2t-32 1t-42 0.5 +q-18 0 -35 -6t-30.5 -20.5t-22 -40t-8.5 -64.5v-93q0 -39 8.5 -64.5t22 -40t30.5 -20.5t35 -6q24 0 42 0.5t32 1t27 2t28 3.5h3q8 0 13 -3.5t5 -11.5v-65v0z" /> + <glyph glyph-name="afii10084" unicode="&#x442;" horiz-adv-x="542" +d="M337 456v-435q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v435h-155q-8 0 -14 5.5t-6 13.5v69q0 8 6 14t14 6h442q8 0 14 -6t6 -14v-69q0 -8 -6 -13.5t-14 -5.5h-155z" /> + <glyph glyph-name="afii10085" unicode="&#x443;" horiz-adv-x="560" +d="M535 547q0 -4 -1 -6l-167 -584q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 8 6 13t14 5h2q10 0 25.5 -1l31 -2t30.5 -2t26 -1q32 0 50 12.5t29 51.5l8 30h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5 +t-18.5 45.5l-131 458q-1 3 -1 7q0 16 19 16h101q7 0 12 -5.5t7 -12.5l101 -407q3 -13 6 -17.5t8 -4.5h9l108 430q2 7 7 12t13 5h102q8 0 13 -5t5 -12z" /> + <glyph glyph-name="afii10086" unicode="&#x444;" horiz-adv-x="858" +d="M810 243q0 -117 -57 -184t-178 -67q-18 0 -35 1.5t-45 5.5v-177q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v177q-28 -4 -45 -5.5t-35 -1.5q-121 0 -178 67t-57 184v77q0 117 57 184t178 67q41 0 80 -6v176q0 8 6 14t14 6h93q8 0 13.5 -6t5.5 -14v-176q39 6 80 6 +q121 0 178 -67t57 -184v-77zM678 320q0 31 -4 57t-15.5 45t-31.5 30t-52 11q-27 0 -46.5 -2t-33.5 -5v-349q21 -3 41.5 -5t38.5 -2q32 0 52 11t31.5 30t15.5 45t4 57v77zM363 456q-14 3 -33.5 5t-46.5 2q-32 0 -52.5 -11t-31.5 -30t-15 -45t-4 -57v-77q0 -31 4 -57t15 -45 +t31.5 -30t52.5 -11q18 0 38.5 2t41.5 5v349z" /> + <glyph glyph-name="afii10087" unicode="&#x445;" horiz-adv-x="557" +d="M537 13q0 -5 -4.5 -9t-10.5 -4h-114q-8 0 -13.5 3.5t-13.5 16.5l-114 176l-108 -176q-8 -13 -13.5 -16.5t-13.5 -3.5h-103q-12 0 -12 11q0 4 3 9l179 271l-169 253q-2 4 -2 6q0 5 4.5 9.5t11.5 4.5h114q8 0 13 -4.5t13 -15.5l101 -156l94 156q8 14 13.5 17t13.5 3h103 +q12 0 12 -11q0 -5 -3 -9l-165 -252l182 -272q2 -4 2 -7z" /> + <glyph glyph-name="afii10088" unicode="&#x446;" horiz-adv-x="637" +d="M602 99q8 0 14 -6t6 -14v-197q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v118h-261q-34 0 -63.5 4t-52 19t-35.5 44t-13 78v398q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-397q0 -24 7.5 -30.5t24.5 -6.5h134q17 0 24.5 6.5t7.5 30.5v397q0 8 6 14.5t14 6.5h92 +q8 0 14 -6.5t6 -14.5v-398q0 -14 -1 -25t-3 -21h79z" /> + <glyph glyph-name="afii10089" unicode="&#x447;" horiz-adv-x="592" +d="M65 543q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-132q0 -33 3.5 -54t12.5 -33t25 -17t41 -5q51 0 116 34v207q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v207q-29 -17 -63 -27t-88 -10q-52 0 -86.5 17t-55 47t-29 70.5 +t-8.5 86.5v132v0z" /> + <glyph glyph-name="afii10090" unicode="&#x448;" horiz-adv-x="848" +d="M358 543q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-434h129q17 0 24.5 6.5t7.5 30.5v397q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-398q0 -49 -13 -78t-35.5 -44t-52 -19t-63.5 -4h-390q-34 0 -63.5 4t-52 19t-35.5 44t-13 78v398q0 8 6 14.5t14 6.5h92q8 0 14 -6.5 +t6 -14.5v-397q0 -24 7.5 -30.5t24.5 -6.5h129v434z" /> + <glyph glyph-name="afii10091" unicode="&#x449;" horiz-adv-x="878" +d="M358 543q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-434h129q17 0 24.5 6.5t7.5 30.5v397q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-398q0 -10 -0.5 -19t-1.5 -17h77q8 0 14 -6t6 -14v-207q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v118h-517q-34 0 -63.5 4t-52 19 +t-35.5 44t-13 78v398q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-397q0 -24 7.5 -30.5t24.5 -6.5h129v434z" /> + <glyph glyph-name="afii10092" unicode="&#x44a;" horiz-adv-x="573" +d="M198 564q8 0 14 -6.5t6 -14.5v-153h68q54 0 101 -9.5t81.5 -32t54.5 -59.5t20 -92v-4q0 -54 -20 -91t-54.5 -59.5t-81.5 -32.5t-101 -10q-21 0 -48 1t-52.5 2.5t-47 4t-32.5 5.5q-8 2 -14 7t-6 13v420h-86q-8 0 -14 5.5t-6 13.5v72q0 8 6 14t14 6h198zM218 113 +q17 -1 37 -1.5t31 -0.5q66 0 95 19t29 63v4q0 47 -29 67t-95 20h-35.5t-32.5 -2v-169z" /> + <glyph glyph-name="afii10093" unicode="&#x44b;" horiz-adv-x="797" +d="M80 13q-8 2 -14 7t-6 13v510q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-153h68q54 0 101 -9.5t81.5 -32t54.5 -59.5t20 -92v-4q0 -54 -20 -91t-54.5 -59.5t-81.5 -32.5t-101 -10q-21 0 -48 1t-52.5 2.5t-47 4t-32.5 5.5zM192 113q17 -1 37 -1.5t31 -0.5q66 0 95 19 +t29 63v4q0 47 -29 67t-95 20h-35.5t-32.5 -2v-169zM737 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523z" /> + <glyph glyph-name="afii10094" unicode="&#x44c;" horiz-adv-x="537" +d="M80 13q-8 2 -14 7t-6 13v510q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-153h68q54 0 101 -9.5t81.5 -32t54.5 -59.5t20 -92v-4q0 -54 -20 -91t-54.5 -59.5t-81.5 -32.5t-101 -10q-21 0 -48 1t-52.5 2.5t-47 4t-32.5 5.5zM192 113q17 -1 37 -1.5t31 -0.5q66 0 95 19 +t29 63v4q0 47 -29 67t-95 20h-35.5t-32.5 -2v-169z" /> + <glyph glyph-name="afii10095" unicode="&#x44d;" horiz-adv-x="468" +d="M423 265q0 -145 -60 -209t-178 -64q-38 0 -70 4t-49 9q-13 3 -17 8.5t-4 17.5v62q0 10 4 14.5t17 3.5q15 -1 45 -4t64 -3q27 0 48 6t36 20.5t23.5 39.5t8.5 63h-193q-8 0 -14 5.5t-6 13.5v60q0 8 6 14t14 6h193q0 37 -8.5 62t-23.5 39t-36 20t-48 6q-34 0 -64 -3t-45 -4 +q-13 -1 -17 3.5t-4 14.5v62q0 12 4 17.5t17 8.5q17 5 49 9t70 4q118 0 178 -64t60 -209v-33z" /> + <glyph glyph-name="afii10096" unicode="&#x44e;" horiz-adv-x="851" +d="M200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-207h125q3 50 19 92.5t46 73.5t73.5 48.5t100.5 17.5q59 0 103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19 +q-57 0 -100.5 17t-73.5 48t-46 73.5t-19 92.5h-125v-200zM671 320q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81z" /> + <glyph glyph-name="afii10097" unicode="&#x44f;" horiz-adv-x="596" +d="M30 9q0 4 2 6l148 216q-58 19 -92 55.5t-34 102.5v7q0 52 22 85.5t59 53.5t86.5 28t103.5 8q52 0 91.5 -2.5t76.5 -7.5q14 -2 22 -6.5t8 -16.5v-523q0 -6 -5.5 -10.5t-12.5 -4.5h-95q-9 0 -14 4.5t-5 10.5v200q-25 -2 -36.5 -2.5t-29.5 -0.5h-16l-133 -197q-3 -5 -7 -10 +t-12 -5h-114q-13 0 -13 9zM184 389q0 -50 34 -65.5t107 -15.5q6 0 15 0.5t18.5 0.5t18.5 0.5t14 0.5v156q-12 2 -31 3t-35 1q-71 0 -106 -15.5t-35 -58.5v-7z" /> + <glyph glyph-name="afii10071" unicode="&#x451;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4zM443 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM243 659 +q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="afii10099" unicode="&#x452;" horiz-adv-x="592" +d="M527 -42q0 -46 -10 -76.5t-29 -48.5t-46.5 -25.5t-62.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v392q0 33 -3.5 54t-12.5 33t-25 17t-41 5q-51 0 -116 -34v-404q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v606 +h-46q-19 0 -19 19v55q0 18 19 18h46v22q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-22h150q19 0 19 -18v-55q0 -19 -19 -19h-150v-93q29 17 63 27t88 10q52 0 86.5 -17t55 -47t29 -70.5t8.5 -86.5v-392v0z" /> + <glyph glyph-name="afii10100" unicode="&#x453;" horiz-adv-x="402" +d="M403 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7zM246 448q-49 0 -49 -56v-372q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v372q0 90 42 131t139 41h119q8 0 14 -6t6 -14v-76q0 -8 -6 -14 +t-14 -6h-119z" /> + <glyph glyph-name="afii10101" unicode="&#x454;" horiz-adv-x="468" +d="M45 298q0 145 60 209t178 64q38 0 70 -4t49 -9q13 -3 17 -8.5t4 -17.5v-62q0 -10 -4 -14.5t-17 -3.5q-15 1 -45 4t-64 3q-27 0 -48 -6t-36 -20t-23.5 -39t-8.5 -62h193q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5t-14 -5.5h-193q0 -38 8.5 -63t23.5 -39.5t36 -20.5t48 -6 +q34 0 64 3t45 4q13 1 17 -3.5t4 -14.5v-62q0 -12 -4 -17.5t-17 -8.5q-17 -5 -49 -9t-70 -4q-118 0 -178 64t-60 209v33z" /> + <glyph glyph-name="afii10102" unicode="&#x455;" horiz-adv-x="489" +d="M444 148q0 -33 -12 -61.5t-36.5 -49.5t-61.5 -33t-86 -12q-15 0 -36.5 1t-46.5 3.5t-50 6t-46 9.5q-19 5 -19 23v60q0 6 4.5 11t12.5 5h4q18 -2 42.5 -4t48.5 -3.5t45 -2.5t32 -1q23 0 37 3.5t21.5 10t10 15.5t2.5 19q0 14 -10 25t-34 26l-137 84q-37 23 -60.5 58.5 +t-23.5 79.5q0 150 190 150q30 0 54.5 -1.5t45.5 -4.5t40 -6.5t38 -7.5q18 -5 18 -23v-58q0 -19 -16 -19h-4q-11 1 -30 3.5t-42 4t-47.5 3t-45.5 1.5q-36 0 -52.5 -9.5t-16.5 -32.5q0 -12 10.5 -21t29.5 -20l131 -80q31 -19 50 -38t29.5 -38t13.5 -38t3 -38z" /> + <glyph glyph-name="afii10103" unicode="&#x456;" horiz-adv-x="268" +d="M203 659q0 -8 -6 -14t-14 -6h-97q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h97q8 0 14 -6t6 -14v-88zM200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523z" /> + <glyph glyph-name="afii10104" unicode="&#x457;" horiz-adv-x="268" +d="M200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523zM291 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM91 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6 +t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="afii10105" unicode="&#x458;" horiz-adv-x="268" +d="M203 659q0 -8 -6.5 -14t-14.5 -6h-96q-8 0 -14 6t-6 14v88q0 8 6 14t14 6h96q8 0 14.5 -6t6.5 -14v-88zM200 -42q0 -46 -10 -76.5t-29 -48.5t-46.5 -25.5t-62.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v586q0 8 6 14 +t14 6h92q8 0 14 -6t6 -14v-586z" /> + <glyph glyph-name="afii10106" unicode="&#x459;" horiz-adv-x="893" +d="M538 105q17 -1 37 -1.5t31 -0.5q66 0 95 19t29 63v4q0 47 -29 67t-95 20h-30.5t-37.5 -2v-169zM518 564q8 0 14 -6t6 -14v-164q19 1 35 1.5t33 0.5q54 0 101 -9.5t81.5 -32t54.5 -59.5t20 -92v-4q0 -54 -20 -91t-54.5 -59.5t-81.5 -32.5t-101 -10q-21 0 -48 1t-52.5 2.5 +t-47 4t-32.5 5.5q-8 2 -14 7t-6 13v426h-118q-17 0 -22 -20l-98 -414q-2 -7 -7 -12t-12 -5h-100q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l117 440q9 35 26 55t36.5 30.5t40 13.5t36.5 3h230z" /> + <glyph glyph-name="afii10107" unicode="&#x45a;" horiz-adv-x="882" +d="M415 5q-8 2 -14 7t-6 13v217h-198v-221q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v522q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-202h198v202q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-162q19 1 35 1h33q54 0 101 -9.5t81.5 -32t54.5 -59.5t20 -92v-4 +q0 -54 -20 -91t-54.5 -59.5t-81.5 -32.5t-101 -10q-21 0 -48 1t-52.5 2.5t-47 4t-32.5 5.5zM527 105q17 -1 37 -1.5t31 -0.5q66 0 95 19t29 63v4q0 47 -29 67t-95 20q-13 0 -30.5 -0.5t-37.5 -1.5v-169z" /> + <glyph glyph-name="afii10108" unicode="&#x45b;" horiz-adv-x="592" +d="M197 627v-93q29 17 63 27t88 10q52 0 86.5 -17t55 -47t29 -70.5t8.5 -86.5v-329q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v329q0 33 -3.5 54t-12.5 33t-25 17t-41 5q-51 0 -116 -34v-404q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v606h-46q-19 0 -19 19 +v55q0 18 19 18h46v22q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-22h150q19 0 19 -18v-55q0 -19 -19 -19h-150z" /> + <glyph glyph-name="afii10109" unicode="&#x45c;" horiz-adv-x="549" +d="M519 12q0 -5 -4 -8.5t-10 -3.5h-122q-8 0 -16 6.5t-13 13.5l-157 228v-227q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-220l171 228q5 7 11.5 9.5t11.5 2.5h112q15 0 15 -11q0 -5 -4 -10l-201 -247l203 -276q3 -5 3 -8z +M455 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="afii10110" unicode="&#x45e;" horiz-adv-x="560" +d="M535 547q0 -4 -1 -6l-167 -584q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 8 6 13t14 5h2q10 0 25.5 -1l31 -2t30.5 -2t26 -1q32 0 50 12.5t29 51.5l8 30h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5 +t-18.5 45.5l-131 458q-1 3 -1 7q0 16 19 16h101q7 0 12 -5.5t7 -12.5l101 -407q3 -13 6 -17.5t8 -4.5h1h5h3l108 430q2 7 7 12t13 5h102q8 0 13 -5t5 -12zM461 772q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46 +t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="afii10193" unicode="&#x45f;" horiz-adv-x="592" +d="M363 109q17 0 24.5 6.5t7.5 30.5v397q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-398q0 -49 -13 -78t-35.5 -44t-52 -19t-63.5 -4h-1v-118q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v118h-1q-34 0 -63.5 4t-52 19t-35.5 44t-13 78v398q0 8 6 14.5t14 6.5h92q8 0 14 -6.5 +t6 -14.5v-397q0 -24 7.5 -30.5t24.5 -6.5h134z" /> + <glyph glyph-name="franc" unicode="&#x20a3;" horiz-adv-x="576" +d="M75 248v298q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-78h119q8 0 14 -6t6 -14v-72 +q0 -8 -6 -14t-14 -6h-119v-116q0 -8 -6 -14t-14 -6h-98q-8 0 -14 6t-6 14v116h-55q-8 0 -14 6t-6 14v72q0 8 6 14t14 6h55z" /> + <glyph glyph-name="lira" unicode="&#x20a4;" +d="M274 215v-15q0 -31 -7 -51.5t-17 -37.5h291q8 0 14 -4.5t6 -12.5v-76q0 -8 -6 -13t-14 -5h-427q-12 0 -15 9t-3 17v51q0 8 2.5 13t5.5 10q11 17 22.5 44t11.5 56v15h-50q-19 0 -19 18v75q0 8 6 13.5t14 5.5h49v58h-50q-19 0 -19 18v75q0 8 6 13.5t14 5.5h49v36 +q0 49 12 86.5t40 63t74.5 39t116.5 13.5q19 0 42.5 -1.5t46 -3.5t42.5 -4.5t32 -4.5q14 -2 16 -6.5t2 -12.5v-73q0 -18 -17 -18h-2q-15 1 -34.5 3t-41.5 3.5t-44 2.5t-42 1q-56 0 -81.5 -18t-25.5 -70v-36h185q8 0 14 -5.5t6 -13.5v-75q0 -18 -19 -18h-186v-58h185 +q8 0 14 -5.5t6 -13.5v-75q0 -18 -19 -18h-186z" /> + <glyph glyph-name="peseta" unicode="&#x20a7;" horiz-adv-x="1520" +d="M591 511q0 -66 -23.5 -111t-63 -72.5t-91.5 -39t-110 -11.5q-20 0 -46 1.5t-43 2.5v-261q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -14 6t-6 14v688q0 15 8.5 21.5t23.5 8.5q39 6 90 9.5t106 3.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-9zM453 520q0 63 -37.5 89.5 +t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-238q6 0 18.5 -0.5t26 -1t26 -1t18.5 -0.5q81 0 115.5 30t34.5 90v9zM1006 17q0 -15 -19 -18q-18 -3 -34.5 -5t-33.5 -2q-42 0 -72.5 6t-49.5 23t-28 48.5t-9 81.5v314l-94 14q-8 2 -14 7t-6 13v45q0 8 6 14 +t14 6h94v82q0 8 6 13t14 7l93 16h4q16 0 16 -15v-103h90q8 0 14 -6t6 -14v-59q0 -8 -6 -14t-14 -6h-90v-314q0 -19 1 -30t5 -17t11.5 -7.5t21.5 -1.5h53q21 0 21 -15v-63zM1475 148q0 -33 -12 -61.5t-36.5 -49.5t-61.5 -33t-86 -12q-15 0 -36.5 1t-46.5 3.5t-50 6t-46 9.5 +q-19 5 -19 23v60q0 6 4.5 11t12.5 5h4q18 -2 42.5 -4t48.5 -3.5t45 -2.5t32 -1q23 0 37 3.5t21.5 10t10 15.5t2.5 19q0 14 -10 25t-34 26l-137 84q-37 23 -60.5 58.5t-23.5 79.5q0 150 190 150q30 0 54.5 -1.5t45.5 -4.5t40 -6.5t38 -7.5q18 -5 18 -23v-58q0 -19 -16 -19h-4 +q-11 1 -30 3.5t-42 4t-47.5 3t-45.5 1.5q-36 0 -52.5 -9.5t-16.5 -32.5q0 -12 10.5 -21t29.5 -20l131 -80q31 -19 50 -38t29.5 -38t13.5 -38t3 -38z" /> + <glyph glyph-name="Euro" unicode="&#x20ac;" +d="M570 31q0 -11 -6 -15.5t-16 -7.5q-11 -3 -49.5 -9.5t-96.5 -6.5q-42 0 -90.5 12t-91.5 41t-73.5 79t-37.5 127h-38q-8 0 -14 6t-6 14v48q0 8 6 14t14 6h36v68h-36q-8 0 -14 6t-6 14v48q0 8 6 14t14 6h38q8 78 39 127.5t73.5 78t91 39.5t90.5 11q58 0 96 -6.5t49 -9.5 +q10 -3 16 -7.5t6 -15.5v-67q0 -9 -4 -15t-15 -6h-3q-35 3 -69 5.5t-74 2.5q-28 0 -53.5 -7.5t-46 -23.5t-35 -42.5t-20.5 -63.5h246q7 0 11.5 -4.5t4.5 -10.5q0 -2 -0.5 -2.5t-0.5 -2.5l-13 -48q-2 -8 -7 -14t-13 -6h-231v-68h206q7 0 11.5 -4.5t4.5 -10.5q0 -2 -0.5 -2.5 +t-0.5 -2.5l-13 -48q-2 -8 -7 -14t-13 -6h-186q6 -38 20 -64.5t35 -43.5t46.5 -24.5t53.5 -7.5q40 0 71.5 2.5t72.5 5.5h3q11 0 15 -6t4 -15v-67v0z" /> + <glyph glyph-name="afii61289" unicode="&#x2113;" horiz-adv-x="506" +d="M468 64q8 -16 -5 -24q-12 -10 -30 -19.5t-40.5 -17t-47.5 -12.5t-50 -5q-86 0 -122 45.5t-36 142.5v78l-60 -46q-5 -4 -11.5 -4t-10.5 6l-18 29q-9 12 2 21l98 72v268q0 97 40 144.5t128 47.5q46 0 78.5 -11.5t52 -31t28.5 -45.5t9 -54q0 -80 -52.5 -161t-149.5 -158 +v-146q0 -51 18.5 -70t48.5 -19q22 0 42.5 7.5t39.5 18.5q8 5 14 4.5t11 -9.5zM403 648q0 14 -2.5 28t-10 25t-20 17.5t-31.5 6.5q-22 0 -35 -8t-20.5 -24t-10 -40t-2.5 -55v-187q69 63 100.5 121.5t31.5 115.5z" /> + <glyph glyph-name="afii61352" unicode="&#x2116;" horiz-adv-x="1198" +d="M637 40q0 -17 -11.5 -28.5t-28.5 -11.5h-101q-18 0 -33.5 4.5t-27.5 31.5l-222 487q-4 8 -9 8t-5 -8v-503q0 -8 -5.5 -14t-13.5 -6h-85q-8 0 -14 6t-6 14v683q0 17 11.5 28.5t28.5 11.5h108q16 0 25.5 -6t18.5 -26l233 -514q3 -8 8 -8t5 9v526q0 19 19 19h86q19 0 19 -19 +v-684zM1143 422q0 -48 -13.5 -88t-40 -69.5t-65.5 -46t-91 -16.5t-91.5 16.5t-66 46t-40 69.5t-13.5 88v44q0 48 13.5 88t40 69.5t66 46t91.5 16.5t91 -16.5t65.5 -46t40 -69.5t13.5 -88v-44zM1027 466q0 55 -24 87t-70 32q-47 0 -71 -32t-24 -87v-44q0 -55 24 -87t71 -32 +q46 0 70 32t24 87v44zM1150 81q0 -8 -6 -12t-14 -4h-388q-8 0 -14 4t-6 12v70q0 8 6 12t14 4h388q8 0 14 -4t6 -12v-70z" /> + <glyph glyph-name="estimated" unicode="&#x212e;" horiz-adv-x="606" +d="M148 282v-193q32 -30 69.5 -46.5t82.5 -16.5q42 0 73.5 10.5t56.5 27.5t44 40t36 49l31 -19q-20 -30 -42.5 -56t-51 -45t-64.5 -29.5t-83 -10.5q-61 0 -111 23t-85.5 63t-55 92.5t-19.5 111.5q0 60 19 112.5t54.5 92t86.5 62.5t115 23t114.5 -23.5t85.5 -63t54 -92.5 +t19 -112h-429zM457 478q-27 25 -68 43.5t-85 18.5q-45 0 -85.5 -15.5t-70.5 -46.5v-163h309v163z" /> + <glyph glyph-name="partialdiff" unicode="&#x2202;" horiz-adv-x="600" +d="M560 467q0 -51 -6 -109.5t-16 -108.5q-25 -126 -92.5 -191t-187.5 -65q-110 0 -164 54.5t-54 150.5q0 19 2 42.5t10 68.5q11 66 34.5 111t58 73t78 40.5t93.5 12.5q30 0 62.5 -9t52.5 -28q-1 5 -1.5 11t-2.5 11q-3 35 -13 67.5t-32 58t-59 40.5t-94 15q-23 0 -47 -1.5 +t-51 -6.5q-17 -3 -15 11l5 52q2 10 6 13.5t13 5.5q26 6 54 8.5t58 2.5q79 0 137.5 -23.5t96 -67t56 -104t18.5 -135.5zM414 348q0 46 -20.5 70t-71.5 24q-60 0 -91.5 -39t-42.5 -112q-3 -22 -5.5 -37t-3.5 -25.5t-1.5 -18.5t-0.5 -15q0 -48 21.5 -72.5t70.5 -24.5 +q59 0 90.5 38.5t42.5 112.5q7 44 9.5 64.5t2.5 34.5z" /> + <glyph glyph-name="product" unicode="&#x220f;" horiz-adv-x="712" +d="M683 743q9 0 11.5 -4.5t2.5 -12.5v-89q0 -16 -14 -16h-46v-676q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v676h-284v-676q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v676h-46q-14 0 -14 16v89q0 8 2.5 12.5t11.5 4.5h654z" /> + <glyph glyph-name="summation" unicode="&#x2211;" horiz-adv-x="547" +d="M492 -59q0 -16 -14 -16h-406q-11 0 -14 6t-3 14v86q0 14 6 24l191 267q2 4 2.5 6.5t0.5 5.5t-0.5 5.5t-2.5 6.5l-191 267q-6 10 -6 24v86q0 8 3 14t14 6h406q14 0 14 -16v-88q0 -8 -2.5 -12.5t-11.5 -4.5h-268q-8 0 -3 -9l177 -245q6 -9 6 -20v-28q0 -11 -6 -20 +l-177 -245q-5 -9 3 -9h268q9 0 11.5 -4.5t2.5 -12.5v-88v0z" /> + <glyph glyph-name="uni2219" unicode="&#x2219;" horiz-adv-x="259" +d="M194 329q0 -8 -6 -14t-14 -6h-89q-8 0 -14 6t-6 14v113q0 8 6 13.5t14 5.5h89q8 0 14 -5.5t6 -13.5v-113v0z" /> + <glyph glyph-name="radical" unicode="&#x221a;" horiz-adv-x="730" +d="M583 858q3 8 5 11.5t12 3.5h105q10 0 11 -4t-1 -10l-285 -918q-4 -16 -25 -16h-145q-9 0 -13 4t-7 14l-123 402q-2 7 -4 9t-8 2h-62q-7 0 -9 3.5t-2 8.5v97q0 14 11 14h148q7 0 12 -2.5t8 -12.5l125 -423z" /> + <glyph glyph-name="infinity" unicode="&#x221e;" horiz-adv-x="636" +d="M596 366q0 -38 -6 -78t-24 -74t-51 -55.5t-86 -21.5h-6q-29 0 -59.5 10.5t-57.5 37.5q-36 -49 -97 -49h-7q-53 0 -85 22t-49 55.5t-22.5 74t-5.5 77.5v24q0 37 6 77.5t24 74t51 55.5t86 22h6q29 0 59 -11t56 -38q20 27 43.5 38.5t56.5 11.5h6q53 0 85 -22t49 -55.5 +t22.5 -74t5.5 -77.5v-24zM494 390q0 28 -1.5 53.5t-7.5 45t-18 31t-33 11.5h-5q-29 0 -42 -35.5t-24 -119.5q-6 -46 -10 -70t-9 -43q20 -24 41.5 -31.5t38.5 -7.5h5q21 0 34 12t19.5 31.5t9 45.5t2.5 53v24zM290 488q-19 23 -39.5 33t-37.5 10h-6q-21 0 -34 -12.5 +t-19.5 -32.5t-9 -45.5t-2.5 -51.5v-24q0 -26 1.5 -51.5t7.5 -45.5t18.5 -32.5t33.5 -12.5h5q14 0 24 8.5t17.5 27t13 49t11.5 75.5t9.5 67.5t6.5 37.5z" /> + <glyph glyph-name="integral" unicode="&#x222b;" horiz-adv-x="440" +d="M286 10q0 -48 -12.5 -79t-35 -49t-54.5 -25t-71 -7q-18 0 -32 2.5t-28 5.5q-6 2 -12 5.5t-6 10.5v59q0 9 5 13t10 4h45q36 0 47.5 11.5t11.5 48.5v603q0 48 12.5 79t35 49t54.5 25t71 7q18 0 32 -2.5t28 -5.5q6 -2 12 -5.5t6 -10.5v-59q0 -9 -5 -13t-10 -4h-45 +q-36 0 -47.5 -11.5t-11.5 -48.5v-603z" /> + <glyph glyph-name="approxequal" unicode="&#x2248;" horiz-adv-x="549" +d="M460 491q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5l44 -33q26 -20 42 -20q13 0 20.5 6.5t7.5 26.5v21q0 16 14 16h57 +q14 0 14 -16v-22zM460 291q0 -61 -29.5 -86.5t-81.5 -25.5q-17 0 -36 6t-34 17l-44 33q-13 10 -23 15.5t-19 5.5q-12 0 -20 -7t-8 -27v-21q0 -16 -14 -16h-57q-14 0 -14 16v21q0 60 30 86t82 26q17 0 35.5 -5.5t33.5 -16.5l44 -33q26 -20 42 -20q13 0 20.5 6.5t7.5 26.5v21 +q0 16 14 16h57q14 0 14 -16v-22z" /> + <glyph glyph-name="notequal" unicode="&#x2260;" +d="M354 723q2 8 6.5 14t12.5 6h81q8 0 13 -4.5t2 -15.5l-50 -160h99q8 0 14 -4t6 -12v-70q0 -8 -6 -12t-14 -4h-130l-44 -140h174q8 0 14 -4t6 -12v-70q0 -8 -6 -12t-14 -4h-205l-61 -198q-2 -8 -6.5 -14.5t-12.5 -6.5h-81q-11 0 -14.5 6.5t-1.5 14.5l61 198h-84q-8 0 -14 4 +t-6 12v70q0 8 6 12t14 4h116l43 140h-159q-8 0 -14 4t-6 12v70q0 8 6 12t14 4h191l50 160v0z" /> + <glyph glyph-name="lessequal" unicode="&#x2264;" +d="M514 153q0 -5 -3.5 -9.5t-8.5 -4.5h-110q-8 0 -12.5 3t-9.5 8l-231 202q-12 11 -17.5 19t-5.5 20t5.5 20t17.5 19l231 202q5 5 9.5 8t12.5 3h110q5 0 8.5 -4.5t3.5 -9.5q0 -8 -6 -12l-260 -226l260 -226q6 -5 6 -12zM548 1q0 -8 -6 -12t-14 -4h-425q-8 0 -14 4t-6 12v56 +q0 8 6 12t14 4h425q8 0 14 -4t6 -12v-56z" /> + <glyph glyph-name="greaterequal" unicode="&#x2265;" +d="M514 391q0 -12 -5.5 -20t-17.5 -19l-231 -202q-5 -5 -9.5 -8t-12.5 -3h-110q-5 0 -8.5 4.5t-3.5 9.5q0 7 6 12l260 226l-260 226q-6 4 -6 12q0 5 3.5 9.5t8.5 4.5h110q8 0 12.5 -3t9.5 -8l231 -202q12 -11 17.5 -19t5.5 -20zM548 1q0 -8 -6 -12t-14 -4h-425q-8 0 -14 4 +t-6 12v56q0 8 6 12t14 4h425q8 0 14 -4t6 -12v-56z" /> + <glyph glyph-name="lozenge" unicode="&#x25ca;" horiz-adv-x="554" +d="M514 363q0 -23 -18 -44l-184 -228q-19 -22 -35 -22t-34 22l-185 228q-18 21 -18 44q0 21 18 44l186 232q6 8 14 12.5t19 4.5t19 -4.5t14 -12.5l186 -232q18 -23 18 -44zM393 362q0 9 -9 21l-88 113q-10 11 -19 11q-6 0 -10 -2.5t-9 -8.5l-88 -113q-9 -12 -9 -21 +q0 -10 10 -23l86 -108q12 -15 20 -15q9 0 20 15l86 108q10 11 10 23z" /> + <glyph glyph-name="uni00A0" unicode="&#xa0;" horiz-adv-x="250" + /> + <glyph glyph-name="uni00AD" unicode="&#xad;" horiz-adv-x="321" +d="M278 276q0 -18 -19 -18h-196q-8 0 -14 5t-6 13v63q0 8 6 13.5t14 5.5h196q19 0 19 -19v-63v0z" /> + <glyph glyph-name="uni02C9" unicode="&#x2c9;" horiz-adv-x="373" +d="M351 692q0 -8 -6 -12.5t-14 -4.5h-288q-8 0 -14 4.5t-6 12.5v34q0 8 6 12.5t14 4.5h288q8 0 14 -4.5t6 -12.5v-34v0z" /> + <glyph glyph-name="zero.fitted" unicode="&#xf639;" +d="M576 334q0 -93 -18 -158.5t-52 -106t-82 -59t-109 -18.5t-109.5 18.5t-82 59t-51.5 106t-18 158.5v74q0 93 18 158.5t51.5 106.5t82 59.5t109.5 18.5t109 -18.5t82 -59.5t52 -106.5t18 -158.5v-74zM437 408q0 68 -9.5 112.5t-26 70.5t-38.5 36.5t-48 10.5t-48 -10.5 +t-38.5 -36.5t-26 -70.5t-9.5 -112.5v-74q0 -68 9.5 -112t26 -70t38.5 -36.5t48 -10.5t48 10.5t38.5 36.5t26 70t9.5 112v74z" /> + <glyph glyph-name="one.fitted" unicode="&#xf6dc;" horiz-adv-x="462" +d="M330 20q0 -8 -6 -14t-14 -6h-98q-8 0 -14 6t-6 14v583l-118 -40q-5 -2 -12 -2q-11 0 -11 12v97q0 8 7 11l164 58q5 2 10 3t13 1h66q19 0 19 -19v-704v0z" /> + <glyph glyph-name="two.fitted" unicode="&#xf63a;" +d="M553 568q0 -63 -31.5 -107.5t-93.5 -86.5l-90 -60q-71 -47 -106.5 -90.5t-35.5 -105.5v-4h329q8 0 14 -5t6 -13v-76q0 -8 -6 -14t-14 -6h-424q-8 0 -14 6t-6 14v98q0 41 12 79.5t33 72t48.5 61.5t58.5 49l99 66q29 19 47 33t28 26.5t13.5 27t3.5 35.5q0 41 -27 57.5 +t-90 16.5q-22 0 -47.5 -1.5t-52 -3.5t-52.5 -4.5t-48 -5.5h-2q-8 0 -13 6t-5 14v60q0 8 5.5 12.5t13.5 6.5q19 5 44 9.5t51.5 8t54 5.5t51.5 2q131 0 188.5 -45t57.5 -138z" /> + <glyph glyph-name="three.fitted" unicode="&#xf63b;" +d="M546 208q0 -56 -19.5 -96.5t-53 -67t-79.5 -39.5t-99 -13q-56 0 -102.5 7t-89.5 18q-8 2 -13.5 6.5t-5.5 12.5v62q0 8 5 13t13 5h2q60 -6 107.5 -10t83.5 -4q61 0 86.5 26.5t25.5 79.5v21q0 20 -3.5 38t-14 32t-28.5 22.5t-46 8.5h-177q-19 0 -19 19v63q0 19 19 19h177 +q28 0 46 8t28.5 21.5t14 31t3.5 37.5v16q0 19 -4.5 36.5t-17 30.5t-34.5 21t-56 8q-27 0 -47.5 -1t-41.5 -2.5t-45 -4.5t-57 -6h-2q-8 0 -13 5t-5 13v62q0 8 5.5 12.5t13.5 6.5q43 11 89.5 18t102.5 7q54 0 100 -11t79.5 -35.5t52.5 -63.5t19 -96v-16q0 -53 -22.5 -89.5 +t-63.5 -58.5q42 -23 64 -63.5t22 -88.5v-21v0z" /> + <glyph glyph-name="four.fitted" unicode="&#xf63c;" +d="M592 199q0 -8 -6 -14t-14 -6h-74v-159q0 -8 -5 -14t-13 -6h-103q-8 0 -13 6t-5 14v159h-300q-8 0 -14 6t-6 14v81q0 18 11 32l308 413q5 8 11.5 13t17.5 5h91q8 0 14 -6t6 -14v-434h74q8 0 14 -6t6 -14v-70zM360 543q0 6 -3 6t-7 -6l-175 -243q-3 -3 -3 -6q0 -5 8 -5h180 +v254z" /> + <glyph glyph-name="five.fitted" unicode="&#xf63d;" +d="M552 237q0 -113 -63 -179t-194 -66q-45 0 -97 7t-95 18q-8 2 -13.5 6.5t-5.5 15.5v59q0 8 5 13t13 5h2q60 -8 107.5 -11t83.5 -3q35 0 58 9.5t36.5 27t18.5 42.5t5 56v5q0 62 -41.5 87t-135.5 25h-135q-5 0 -8 4.5t-3 8.5v2l32 356q1 8 6.5 13t13.5 5h363q8 0 14 -5.5 +t6 -13.5v-76q0 -8 -6 -13.5t-14 -5.5h-271l-15 -166h17q57 0 113.5 -7.5t101.5 -31t73 -67t28 -115.5v-5v0z" /> + <glyph glyph-name="six.fitted" unicode="&#xf63e;" +d="M580 240q0 -56 -17 -101.5t-50 -78t-81 -50.5t-110 -18q-56 0 -104 18t-83 55.5t-55 96t-20 139.5v115q0 90 17.5 154t52.5 104t86.5 58.5t120.5 18.5q66 0 113 -7t72 -12q11 -2 17 -6.5t6 -14.5v-62q0 -21 -19 -21h-4q-14 2 -36.5 4.5t-48 4.5t-52 3t-48.5 1 +q-38 0 -64.5 -9t-43 -30.5t-24.5 -56.5t-9 -86q24 5 61 8t78 3q49 0 93 -11.5t78 -37t54 -68t20 -103.5v-10zM444 250q0 35 -11 58t-30 36.5t-44 19t-52 5.5q-22 0 -55 -3t-56 -8v-57q0 -63 9.5 -102t26 -61t40 -30t50.5 -8q25 0 47.5 6.5t39 22.5t26 43t9.5 68v10z" /> + <glyph glyph-name="seven.fitted" unicode="&#xf63f;" horiz-adv-x="568" +d="M528 649q0 -8 -5 -18.5t-13 -27.5l-270 -584q-5 -11 -11 -15t-16 -4h-104q-7 0 -10.5 4.5t-3.5 10.5q0 3 2 9l287 598v2q0 5 -5 5h-308q-8 0 -14 5t-6 13v77q0 8 6 13.5t14 5.5h417q17 0 28.5 -11.5t11.5 -28.5v-54v0z" /> + <glyph glyph-name="eight.fitted" unicode="&#xf640;" +d="M577 215q0 -59 -21 -101.5t-56.5 -69.5t-82 -39.5t-97.5 -12.5h-10q-51 0 -97.5 12.5t-81.5 39.5t-56 69.5t-21 101.5v9q0 51 25 92.5t66 70.5q-46 30 -66.5 69.5t-20.5 86.5v4q0 56 20 95t54.5 63t80.5 35t97 11h10q51 0 97.5 -11t81 -35t55 -63t20.5 -95v-4 +q0 -47 -21 -86.5t-67 -69.5q41 -29 66 -70.5t25 -92.5v-9zM445 543q0 51 -29.5 78.5t-95.5 27.5h-10q-66 0 -94.5 -27.5t-28.5 -78.5v-4q0 -44 25 -73.5t83 -29.5h41q58 0 83.5 29.5t25.5 73.5v4zM442 224q0 18 -5.5 37.5t-18 35.5t-32.5 26.5t-50 10.5h-41q-30 0 -50 -10.5 +t-32.5 -26.5t-18 -35.5t-5.5 -37.5v-9q0 -51 30 -85t91 -34h10q61 0 91.5 34t30.5 85v9z" /> + <glyph glyph-name="nine.fitted" unicode="&#xf641;" +d="M569 327q0 -90 -17.5 -154t-52.5 -104t-86.5 -58.5t-120.5 -18.5q-66 0 -113 7t-72 12q-11 2 -17 6.5t-6 14.5v62q0 21 19 21h4q14 -2 36.5 -4.5t48 -4.5t51.5 -3t49 -1q38 0 64.5 9t43 30.5t24.5 56.5t9 86q-24 -5 -61 -8t-78 -3q-49 0 -93.5 11.5t-78 37t-53.5 67.5 +t-20 104v10q0 55 17 101t50 78.5t81 50.5t110 18q56 0 104 -18t83 -55.5t55 -96t20 -139.5v-115zM433 442q0 63 -9.5 102t-26 61t-40 30t-50.5 8q-26 0 -48 -6.5t-38.5 -22.5t-26 -43t-9.5 -68v-10q0 -35 11 -58t30 -36.5t44 -19t52 -5.5q22 0 55 3t56 8v57z" /> + <glyph glyph-name="zero.taboldstyle" unicode="&#xf643;" +d="M576 286q0 -78 -18 -134t-52 -91.5t-82 -52t-109 -16.5t-109.5 16.5t-82 52t-51.5 91.5t-18 134v14q0 78 18 134t51.5 92t82 52.5t109.5 16.5t109 -16.5t82 -52.5t52 -92t18 -134v-14zM437 300q0 53 -9.5 88t-26 56t-38.5 29.5t-48 8.5t-48 -8.5t-38.5 -29.5t-26 -56 +t-9.5 -88v-14q0 -53 9.5 -88t26 -55.5t38.5 -29t48 -8.5t48 8.5t38.5 29t26 55.5t9.5 88v14z" /> + <glyph glyph-name="one.taboldstyle" unicode="&#xf644;" +d="M129 0q-8 0 -14 6t-6 14v76q0 8 6 13t14 5h134v329l-131 -40q-5 -2 -12 -2q-11 0 -11 12v94q0 8 7 11l177 58q5 2 10 3t13 1h66q19 0 19 -19v-447h134q8 0 14 -5t6 -13v-76q0 -8 -6 -14t-14 -6h-406z" /> + <glyph glyph-name="two.taboldstyle" unicode="&#xf645;" +d="M553 412q0 -38 -16 -67t-42 -51.5t-59.5 -40t-68.5 -32.5q-31 -13 -60 -24.5t-51.5 -23.5t-36 -25.5t-13.5 -29.5v-4h319q8 0 14 -5t6 -13v-76q0 -8 -6 -14t-14 -6h-424q-8 0 -14 6t-6 14v69q0 48 15 81t42 57.5t64 43t82 36.5q27 11 52 22t44.5 23.5t31.5 27t12 32.5 +q0 41 -27 57.5t-90 16.5q-22 0 -47.5 -1.5t-52 -3.5t-52.5 -4.5t-48 -5.5h-2q-8 0 -13 6t-5 14v60q0 8 5.5 12.5t13.5 6.5q19 5 44 9.5t51.5 8t54 5.5t51.5 2q131 0 188.5 -45t57.5 -138z" /> + <glyph glyph-name="three.taboldstyle" unicode="&#xf646;" +d="M546 52q0 -56 -19.5 -96.5t-53 -67t-79.5 -39.5t-99 -13q-56 0 -102.5 7t-89.5 18q-8 2 -13.5 6.5t-5.5 12.5v62q0 8 5 13t13 5h2q60 -6 107.5 -10t83.5 -4q61 0 86.5 26.5t25.5 79.5v21q0 20 -3.5 38t-14 32t-28.5 22.5t-46 8.5h-177q-19 0 -19 19v63q0 19 19 19h177 +q28 0 46 8t28.5 21.5t14 31t3.5 37.5v16q0 19 -4.5 36.5t-17 30.5t-34.5 21t-56 8q-27 0 -47.5 -1t-41.5 -2.5t-45 -4.5t-57 -6h-2q-8 0 -13 5t-5 13v62q0 8 5.5 12.5t13.5 6.5q43 11 89.5 18t102.5 7q54 0 100 -11t79.5 -35.5t52.5 -63.5t19 -96v-16q0 -53 -22.5 -89.5 +t-63.5 -58.5q42 -23 64 -63.5t22 -88.5v-21v0z" /> + <glyph glyph-name="four.taboldstyle" unicode="&#xf647;" +d="M592 36q0 -8 -6 -14t-14 -6h-74v-159q0 -8 -5 -14t-13 -6h-103q-8 0 -13 6t-5 14v159h-300q-8 0 -14 6t-6 14v81q0 18 11 32l308 413q5 8 11.5 13t17.5 5h91q8 0 14 -6t6 -14v-434h74q8 0 14 -6t6 -14v-70zM360 380q0 6 -3 6t-7 -6l-175 -243q-3 -3 -3 -6q0 -5 8 -5h180 +v254z" /> + <glyph glyph-name="five.taboldstyle" unicode="&#xf648;" +d="M552 74q0 -113 -63 -179t-194 -66q-45 0 -97 7t-95 18q-8 2 -13.5 6.5t-5.5 15.5v59q0 8 5 13t13 5h2q60 -8 107.5 -11t83.5 -3q35 0 58 9.5t36.5 27t18.5 42.5t5 56v5q0 62 -41.5 87t-135.5 25h-135q-5 0 -8 4.5t-3 8.5v2l32 356q1 8 6.5 13t13.5 5h363q8 0 14 -5.5 +t6 -13.5v-76q0 -8 -6 -13.5t-14 -5.5h-271l-15 -166h17q57 0 113.5 -7.5t101.5 -31t73 -67t28 -115.5v-5v0z" /> + <glyph glyph-name="six.taboldstyle" unicode="&#xf649;" +d="M580 240q0 -56 -17 -101.5t-50 -78t-81 -50.5t-110 -18q-56 0 -104 18t-83 55.5t-55 96t-20 139.5v115q0 90 17.5 154t52.5 104t86.5 58.5t120.5 18.5q66 0 113 -7t72 -12q11 -2 17 -6.5t6 -14.5v-62q0 -21 -19 -21h-4q-14 2 -36.5 4.5t-48 4.5t-52 3t-48.5 1 +q-38 0 -64.5 -9t-43 -30.5t-24.5 -56.5t-9 -86q24 5 61 8t78 3q49 0 93 -11.5t78 -37t54 -68t20 -103.5v-10zM444 250q0 35 -11 58t-30 36.5t-44 19t-52 5.5q-22 0 -55 -3t-56 -8v-57q0 -63 9.5 -102t26 -61t40 -30t50.5 -8q25 0 47.5 6.5t39 22.5t26 43t9.5 68v10z" /> + <glyph glyph-name="seven.taboldstyle" unicode="&#xf64a;" +d="M553 486q0 -8 -5 -18.5t-13 -27.5l-270 -584q-5 -11 -11 -15t-16 -4h-104q-7 0 -10.5 4.5t-3.5 10.5q0 3 2 9l287 598q3 7 -5 7h-308q-8 0 -14 5t-6 13v77q0 8 6 13.5t14 5.5h417q17 0 28.5 -11.5t11.5 -28.5v-54v0z" /> + <glyph glyph-name="eight.taboldstyle" unicode="&#xf64b;" +d="M577 215q0 -59 -21 -101.5t-56.5 -69.5t-82 -39.5t-97.5 -12.5h-10q-51 0 -97.5 12.5t-81.5 39.5t-56 69.5t-21 101.5v9q0 51 25 92.5t66 70.5q-46 30 -66.5 69.5t-20.5 86.5v4q0 56 20 95t54.5 63t80.5 35t97 11h10q51 0 97.5 -11t81 -35t55 -63t20.5 -95v-4 +q0 -47 -21 -86.5t-67 -69.5q41 -29 66 -70.5t25 -92.5v-9zM445 543q0 51 -29.5 78.5t-95.5 27.5h-10q-66 0 -94.5 -27.5t-28.5 -78.5v-4q0 -44 25 -73.5t83 -29.5h41q58 0 83.5 29.5t25.5 73.5v4zM442 224q0 18 -5.5 37.5t-18 35.5t-32.5 26.5t-50 10.5h-41q-30 0 -50 -10.5 +t-32.5 -26.5t-18 -35.5t-5.5 -37.5v-9q0 -51 30 -85t91 -34h10q61 0 91.5 34t30.5 85v9z" /> + <glyph glyph-name="nine.taboldstyle" unicode="&#xf64c;" +d="M569 171q0 -90 -17.5 -154t-52.5 -104t-86.5 -58.5t-120.5 -18.5q-66 0 -113 7t-72 12q-11 2 -17 6.5t-6 14.5v62q0 25 23 21q14 -2 36.5 -4.5t48 -4.5t51.5 -3t49 -1q38 0 64.5 9t43 30.5t24.5 56.5t9 86q-24 -5 -61 -8t-78 -3q-49 0 -93.5 11.5t-78 37t-53.5 67.5 +t-20 104v10q0 55 17 101t50 78.5t81 50.5t110 18q56 0 104 -18t83 -55.5t55 -96t20 -139.5v-115zM433 286q0 63 -9.5 102t-26 61t-40 30t-50.5 8q-26 0 -48 -6.5t-38.5 -22.5t-26 -43t-9.5 -68v-10q0 -35 11 -58t30 -36.5t44 -19t52 -5.5q22 0 55 3t56 8v57z" /> + <glyph glyph-name="zero.denominator" unicode="&#xf655;" horiz-adv-x="347" +d="M320 187q0 -52 -10 -88.5t-29 -59t-46.5 -33t-61.5 -10.5q-68 0 -107 43.5t-39 147.5v39q0 104 39 148t107 44t107.5 -44t39.5 -148v-39zM233 226q0 35 -4.5 58t-12.5 36.5t-19 19t-24 5.5t-24 -5.5t-19 -19t-12.5 -36.5t-4.5 -58v-39q0 -35 4.5 -58t12.5 -36.5t19 -18.5 +t24 -5t24 5t19 18.5t12.5 36.5t4.5 58v39z" /> + <glyph glyph-name="one.denominator" unicode="&#xf656;" horiz-adv-x="254" +d="M113 411q3 2 9.5 2.5t11.5 0.5h36q10 0 13.5 -5t3.5 -12v-380q0 -7 -5 -12t-12 -5h-53q-7 0 -12 5t-5 12v307l-56 -19q-7 -2 -14 -0.5t-7 11.5v53q0 5 2 7t7 4z" /> + <glyph glyph-name="two.denominator" unicode="&#xf657;" horiz-adv-x="347" +d="M308 313q0 -35 -18.5 -60.5t-52.5 -48.5l-48 -33q-34 -23 -53 -45t-21 -52h172q7 0 12 -4t5 -12v-41q0 -7 -5 -12t-12 -5h-229q-7 0 -12 5t-5 12v53q0 45 25.5 84t59.5 62l54 36q26 17 36 29t10 32q0 19 -13 26.5t-44 7.5q-23 0 -53 -2.5t-55 -5.5q-8 0 -12.5 5t-4.5 12 +v32q0 6 4.5 10t10.5 6h-1q21 6 52.5 10t58.5 4q74 0 106.5 -25.5t32.5 -79.5z" /> + <glyph glyph-name="three.denominator" unicode="&#xf658;" horiz-adv-x="347" +d="M304 118q0 -32 -11 -55t-30 -38t-45 -22t-56 -7q-29 0 -55 4t-49 9q-6 2 -11 6.5t-5 10.5v33q0 8 5 12t13 4q32 -4 58 -6t44 -2q30 0 42.5 13t12.5 38v12q0 19 -8.5 34t-35.5 15h-95q-7 0 -12 4t-5 12v34q0 8 5 12t12 4h95q27 0 35.5 13.5t8.5 33.5v9q0 18 -10.5 32 +t-44.5 14q-28 0 -51.5 -2.5t-52.5 -5.5q-6 0 -11 4t-5 12v33q0 5 5 9.5t11 6.5q23 6 49 10t55 4q30 0 56 -6.5t45 -20.5t30 -36t11 -54v-9q0 -55 -41 -80q20 -14 30.5 -35.5t10.5 -46.5v-12v0z" /> + <glyph glyph-name="four.denominator" unicode="&#xf659;" horiz-adv-x="347" +d="M329 113q0 -7 -5 -12t-11 -5h-35v-79q0 -7 -4 -12t-12 -5h-56q-7 0 -11 5t-4 12v79h-157q-6 0 -11 5t-5 12v44q0 11 8 22l166 223q4 5 8 8.5t12 3.5h49q7 0 12 -5t5 -12v-229h35q6 0 11 -5t5 -12v-38zM192 288l-87 -120h87v120z" /> + <glyph glyph-name="five.denominator" unicode="&#xf65a;" horiz-adv-x="347" +d="M308 134q0 -65 -35.5 -101.5t-110.5 -36.5q-24 0 -52.5 3.5t-51.5 9.5q-7 2 -11.5 5t-4.5 13v32q0 8 5 12t13 4q32 -5 58 -6.5t44 -1.5q35 0 46.5 18.5t11.5 51.5q0 31 -20.5 43t-68.5 12h-73q-6 0 -9 4t-3 9l17 195q2 5 6.5 9.5t10.5 4.5h196q7 0 12 -5t5 -12v-41 +q0 -8 -5 -12t-12 -4h-141l-7 -77h3q32 0 63.5 -4.5t57 -18t41 -38t15.5 -65.5v-3v0z" /> + <glyph glyph-name="six.denominator" unicode="&#xf65b;" horiz-adv-x="347" +d="M322 136q0 -63 -37.5 -101.5t-107.5 -38.5q-32 0 -58.5 10t-46.5 31t-31 53.5t-11 78.5v62q0 101 39 144t116 43q35 0 63 -4t38 -6q11 -3 14.5 -6.5t3.5 -11.5v-33q0 -14 -8.5 -16.5t-20.5 -0.5q-17 3 -43.5 5t-46.5 2q-36 0 -52 -19t-18 -66q14 2 31.5 3t37.5 1 +q28 0 53 -6.5t44 -21t30 -38.5t11 -58v-6zM237 142q0 34 -20.5 46t-47.5 12q-10 0 -26 -1.5t-28 -3.5v-26q0 -32 4.5 -52t13 -31.5t19.5 -15.5t25 -4q26 0 43 14.5t17 55.5v6z" /> + <glyph glyph-name="seven.denominator" unicode="&#xf65c;" horiz-adv-x="312" +d="M137 14q-8 -14 -19 -14h-56q-9 0 -12.5 6.5t-0.5 13.5l153 320h-161q-7 0 -12 4t-5 12v41q0 7 5 12t12 5h225q18 0 23 -8.5t5 -19.5v-21q0 -11 -2.5 -18t-7.5 -17z" /> + <glyph glyph-name="eight.denominator" unicode="&#xf65d;" horiz-adv-x="347" +d="M320 122q0 -34 -11.5 -58t-31.5 -39t-46 -22t-55 -7h-5q-29 0 -55 7t-46 22t-31.5 39t-11.5 58v5q0 26 12 49t32 39q-25 17 -34 38t-9 49q0 31 11.5 53.5t31 36t45.5 20t55 6.5h5q29 0 55 -6.5t45.5 -20.5t31 -36.5t11.5 -54.5q0 -26 -10 -47t-34 -38q45 -33 45 -88v-5z +M236 127q0 9 -2.5 18.5t-8.5 17.5t-16 13t-24 5h-23q-14 0 -24 -5t-16 -13t-8.5 -17.5t-2.5 -18.5v-5q0 -26 15 -42t45 -16h5q30 0 45 16t15 42v5zM171 351q-33 0 -47 -14t-14 -40q0 -21 12 -35t40 -14h23q28 0 40.5 14t12.5 35q0 26 -14 40t-47 14h-6z" /> + <glyph glyph-name="nine.denominator" unicode="&#xf65e;" horiz-adv-x="347" +d="M316 183q0 -101 -39.5 -144t-115.5 -43q-36 0 -61.5 3.5t-39.5 6.5q-8 2 -13 5.5t-5 12.5v33q0 8 4.5 13.5t15.5 3.5q7 -1 19.5 -2.5t26 -2.5t27.5 -1.5t26 -0.5q36 0 52 18t18 66q-14 -2 -31.5 -3t-37.5 -1q-28 0 -53 6.5t-44 21.5t-30 38.5t-11 58.5v6q0 63 37.5 101.5 +t107.5 38.5q31 0 58 -10t47 -31t31 -54t11 -78v-62zM231 245q0 32 -4.5 52t-13 31.5t-20 15.5t-24.5 4q-26 0 -43 -14.5t-17 -55.5v-6q0 -35 20.5 -46.5t47.5 -11.5q11 0 26.5 1.5t27.5 3.5v26z" /> + <glyph glyph-name="zero.numerator" unicode="&#xf661;" horiz-adv-x="347" +d="M320 527q0 -52 -10 -88.5t-29 -59t-46.5 -33t-61.5 -10.5q-68 0 -107 43.5t-39 147.5v39q0 104 39 148t107 44t107.5 -44t39.5 -148v-39zM233 566q0 35 -4.5 58t-12.5 36.5t-19 19t-24 5.5t-24 -5.5t-19 -19t-12.5 -36.5t-4.5 -58v-39q0 -35 4.5 -58t12.5 -36.5t19 -18.5 +t24 -5t24 5t19 18.5t12.5 36.5t4.5 58v39z" /> + <glyph glyph-name="one.numerator" unicode="&#xf662;" horiz-adv-x="254" +d="M113 751q3 2 9.5 2.5t11.5 0.5h36q10 0 13.5 -5t3.5 -12v-380q0 -7 -5 -12t-12 -5h-53q-7 0 -12 5t-5 12v307l-56 -19q-7 -2 -14 -0.5t-7 11.5v53q0 5 2 7t7 4z" /> + <glyph glyph-name="two.numerator" unicode="&#xf663;" horiz-adv-x="347" +d="M58 744q21 6 52.5 10t58.5 4q74 0 106.5 -25.5t32.5 -79.5q0 -35 -18.5 -60.5t-52.5 -48.5l-48 -33q-20 -14 -34 -25t-22.5 -22t-12.5 -23t-5 -27h172q7 0 12 -3t5 -13v-41q0 -9 -5 -13t-12 -4h-229q-7 0 -12 5t-5 12v53q0 45 20 80.5t65 65.5l54 36q26 17 36 29t10 32 +q0 19 -13 26.5t-44 7.5q-23 0 -53 -2.5t-55 -5.5q-11 -2 -14 4t-3 13v32q0 12 14 16z" /> + <glyph glyph-name="three.numerator" unicode="&#xf664;" horiz-adv-x="347" +d="M304 458q0 -32 -11 -55t-30 -38t-45 -22t-56 -7q-29 0 -55 4t-49 9q-6 2 -11 5.5t-5 11.5v33q0 8 3.5 13t14.5 3q32 -4 58 -6t44 -2q30 0 42.5 13t12.5 38v12q0 19 -8.5 34t-35.5 15h-95q-7 0 -12 4t-5 12v34q0 8 5 12t12 4h95q27 0 35.5 13.5t8.5 33.5v9q0 18 -10.5 32 +t-44.5 14q-28 0 -51.5 -2.5t-52.5 -5.5q-6 0 -11 4t-5 12v33q0 5 5 9.5t11 6.5q23 6 49 10t55 4q30 0 56 -6.5t45 -20.5t30 -36t11 -54v-9q0 -55 -41 -80q20 -14 30.5 -35.5t10.5 -46.5v-12v0z" /> + <glyph glyph-name="four.numerator" unicode="&#xf665;" horiz-adv-x="347" +d="M329 453q0 -7 -5 -12t-11 -5h-35v-79q0 -7 -4 -12t-12 -5h-56q-7 0 -11 5t-4 12v79h-157q-6 0 -11 5t-5 12v44q0 11 8 22l166 223q4 5 8 8.5t12 3.5h49q7 0 12 -5t5 -12v-229h35q6 0 11 -5t5 -12v-38zM192 628l-87 -120h87v120z" /> + <glyph glyph-name="five.numerator" unicode="&#xf666;" horiz-adv-x="347" +d="M308 474q0 -65 -35.5 -101.5t-110.5 -36.5q-24 0 -52.5 3.5t-51.5 9.5q-7 2 -11.5 5t-4.5 13v32q0 8 5 12t13 4q32 -5 58 -6.5t44 -1.5q35 0 46.5 18.5t11.5 51.5q0 31 -20.5 43t-68.5 12h-73q-6 0 -9 4t-3 9l17 195q2 5 6.5 9.5t10.5 4.5h196q7 0 12 -5t5 -12v-41 +q0 -8 -5 -12t-12 -4h-141l-7 -77h3q32 0 63.5 -4.5t57 -18t41 -38t15.5 -65.5v-3v0z" /> + <glyph glyph-name="six.numerator" unicode="&#xf667;" horiz-adv-x="347" +d="M322 476q0 -63 -37.5 -101.5t-107.5 -38.5q-32 0 -58.5 10t-46.5 31t-31 53.5t-11 78.5v62q0 101 39 144t116 43q35 0 63 -4t38 -6q11 -3 14.5 -6.5t3.5 -11.5v-33q0 -14 -8.5 -16.5t-20.5 -0.5q-17 3 -43.5 5t-46.5 2q-36 0 -52 -19t-18 -66q14 2 31.5 3t37.5 1 +q28 0 53 -6.5t44 -21t30 -38.5t11 -58v-6zM237 482q0 34 -20.5 46t-47.5 12q-10 0 -26 -1.5t-28 -3.5v-26q0 -32 4.5 -52t13 -31.5t19.5 -15.5t25 -4q26 0 43 14.5t17 55.5v6z" /> + <glyph glyph-name="seven.numerator" unicode="&#xf668;" horiz-adv-x="312" +d="M137 354q-8 -14 -19 -14h-56q-9 0 -12.5 6.5t-0.5 13.5l153 320h-161q-7 0 -12 4t-5 12v41q0 7 5 12t12 5h225q18 0 23 -8.5t5 -19.5v-21q0 -11 -2.5 -18t-7.5 -17z" /> + <glyph glyph-name="eight.numerator" unicode="&#xf669;" horiz-adv-x="347" +d="M320 462q0 -34 -11.5 -58t-31.5 -39t-46 -22t-55 -7h-5q-29 0 -55 7t-46 22t-31.5 39t-11.5 58v5q0 26 12 49t32 39q-25 17 -34 38t-9 49q0 31 11.5 53.5t31 36t45.5 20t55 6.5h5q29 0 55 -6.5t45.5 -20.5t31 -36.5t11.5 -54.5q0 -26 -10 -47t-34 -38q45 -33 45 -88v-5z +M236 467q0 9 -2.5 18.5t-8.5 17.5t-16 13t-24 5h-23q-14 0 -24 -5t-16 -13t-8.5 -17.5t-2.5 -18.5v-5q0 -26 15 -42t45 -16h5q30 0 45 16t15 42v5zM171 691q-33 0 -47 -14t-14 -40q0 -21 12 -35t40 -14h23q28 0 40.5 14t12.5 35q0 26 -14 40t-47 14h-6z" /> + <glyph glyph-name="nine.numerator" unicode="&#xf66a;" horiz-adv-x="347" +d="M316 523q0 -101 -39.5 -144t-115.5 -43q-36 0 -61.5 3.5t-39.5 6.5q-8 2 -13 5.5t-5 12.5v33q0 8 4.5 13.5t15.5 3.5q7 -1 19.5 -2.5t26 -2.5t27.5 -1.5t26 -0.5q36 0 52 18t18 66q-14 -2 -31.5 -3t-37.5 -1q-28 0 -53 6.5t-44 21.5t-30 38.5t-11 58.5v6q0 63 37.5 101.5 +t107.5 38.5q31 0 58 -10t47 -31t31 -54t11 -78v-62zM231 585q0 32 -4.5 52t-13 31.5t-20 15.5t-24.5 4q-26 0 -43 -14.5t-17 -55.5v-6q0 -35 20.5 -46.5t47.5 -11.5q11 0 26.5 1.5t27.5 3.5v26z" /> + <glyph glyph-name="j.dotless" unicode="&#xe067;" horiz-adv-x="268" +d="M200 -42q0 -46 -10 -76.5t-29 -48.5t-46.5 -25.5t-62.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v586q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-586v0z" /> + <glyph glyph-name="uni2215" unicode="&#x2215;" horiz-adv-x="294" +d="M463 735q0 -7 -4 -12l-419 -709q-6 -11 -9.5 -14t-11.5 -3h-82q-10 0 -10 9q0 7 4 12l419 708q6 10 10 13.5t12 3.5h81q10 0 10 -8z" /> + <glyph glyph-name="uni021A" unicode="&#x21a;" horiz-adv-x="579" +d="M554 645q0 -8 -6 -13t-14 -5h-175v-607q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v607h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h489q8 0 14 -5.5t6 -13.5v-79zM352 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96 +q14 0 14 -12z" /> + <glyph glyph-name="uni021B" unicode="&#x21b;" horiz-adv-x="405" +d="M380 17q0 -15 -19 -18q-18 -3 -34.5 -5t-33.5 -2q-42 0 -72.5 6t-49.5 23t-28 48.5t-9 81.5v314l-94 14q-8 2 -14 7t-6 13v45q0 8 6 14t14 6h94v82q0 8 6 13t14 7l93 16h4q16 0 16 -15v-103h90q8 0 14 -6t6 -14v-59q0 -8 -6 -14t-14 -6h-90v-314q0 -19 1 -30t5 -17 +t11.5 -7.5t21.5 -1.5h53q21 0 21 -15v-63zM312 -65q0 -1 -2 -7l-53 -108q-8 -20 -22 -20h-66q-15 0 -15 12q0 5 1 8l27 108q5 19 20 19h96q14 0 14 -12z" /> + <glyph glyph-name="uni03A9" unicode="&#x3a9;" horiz-adv-x="366" +d="M483 461q0 78 -35 122.5t-109 44.5t-109 -44.5t-35 -122.5v-28q0 -41 3.5 -70.5t13.5 -51.5t28.5 -36.5t49.5 -25.5q8 -3 11 -7t3 -18v-203q0 -21 -21 -21h-181q-10 0 -16.5 4.5t-6.5 16.5v84q0 12 6.5 16t16.5 4h121v27q-54 18 -87 48.5t-51 68t-24 80t-6 84.5v28 +q0 70 21 125t58.5 92.5t89.5 57t115 19.5t115 -19.5t89.5 -57t58.5 -92.5t21 -125v-28q0 -42 -6 -84.5t-24 -80t-51 -68t-87 -48.5v-27h121q10 0 16.5 -4t6.5 -16v-84q0 -12 -6.5 -16.5t-16.5 -4.5h-181q-21 0 -21 21v203q0 14 3 18t11 7q31 11 49.5 25.5t28.5 36.5 +t13.5 51.5t3.5 70.5v28z" /> + <glyph glyph-name="afii10051.001" unicode="&#xe022;" horiz-adv-x="787" +d="M722 150q0 -46 -11 -76.5t-31.5 -48.5t-49 -25.5t-63.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v105q0 33 -5 54t-16 33t-28.5 17t-42.5 5q-26 0 -63 -8.5t-69 -25.5v-310q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v607 +h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h489q8 0 14 -5.5t6 -13.5v-79q0 -8 -6 -13t-14 -5h-175v-188q29 17 69.5 27t84.5 10q57 0 96.5 -17t64.5 -47t36.5 -70.5t11.5 -86.5v-105v0z" /> + <glyph glyph-name="afii10052.001" unicode="&#xe023;" horiz-adv-x="556" +d="M213 20q0 -8 -6 -14t-14 -6h-98q-8 0 -14 6t-6 14v526q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204q-44 0 -61.5 -18t-17.5 -68v-526zM491 939q0 -4 -4 -8l-118 -124 +q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="afii10100.001" unicode="&#xe051;" horiz-adv-x="402" +d="M403 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7zM246 448q-49 0 -49 -56v-372q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v372q0 90 42 131t139 41h119q8 0 14 -6t6 -14v-76q0 -8 -6 -14 +t-14 -6h-119z" /> + <glyph glyph-name="afii10058.001" unicode="&#xe029;" horiz-adv-x="1032" +d="M607 120q7 -1 18.5 -1.5t24.5 -1t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242zM587 743q8 0 14 -5.5t6 -13.5v-245q21 2 43.5 2h45.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5 +v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v582h-145q-8 0 -11 -3.5t-5 -12.5l-145 -593q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 619q9 35 26 55t36.5 30.5t40 13.5t36.5 3h264z +" /> + <glyph glyph-name="afii10059.001" unicode="&#xe02a;" horiz-adv-x="1062" +d="M637 468q21 2 43.5 3t45.5 1q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v291h-284v-306q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99 +q8 0 14 -5.5t6 -13.5v-276h284v276q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-256zM637 111q7 -1 18.5 -1.5t24.5 -1t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242z" /> + <glyph glyph-name="afii10061.001" unicode="&#xe02c;" horiz-adv-x="643" +d="M509 939q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7zM615 9q0 -9 -15 -9h-134q-16 0 -23 11l-229 341v-332q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v703q0 8 6 13.5t14 5.5h99q8 0 14 -5.5 +t6 -13.5v-318l245 329q4 5 9.5 6.5t13.5 1.5h114q19 0 19 -12q0 -7 -7 -16l-256 -331l258 -362q5 -8 5 -12z" /> + <glyph glyph-name="afii10060.001" unicode="&#xe02b;" horiz-adv-x="801" +d="M736 21q0 -8 -6 -14.5t-14 -6.5h-99q-8 0 -14 6.5t-6 14.5v233q0 33 -5 53.5t-17 32t-31.5 15.5t-48.5 4q-13 0 -31 -3t-37.5 -7.5t-37.5 -11t-30 -12.5v-305q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v607h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h489q8 0 14 -5.5 +t6 -13.5v-79q0 -8 -6 -13t-14 -5h-175v-189q12 6 30 12.5t40.5 12t48 9t52.5 3.5q59 0 98.5 -17t63.5 -47t34 -70.5t10 -86.5v-233v0z" /> + <glyph glyph-name="afii10145.001" unicode="&#xe05c;" horiz-adv-x="712" +d="M637 172q0 -90 -42 -131t-139 -41h-30v-118q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v118h-31q-97 0 -139 41t-42 131v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551q0 -29 9 -39t33 -10h200q24 0 33 10t9 39v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551z" /> + <glyph glyph-name="afii10099.001" unicode="&#xe050;" horiz-adv-x="592" +d="M527 -42q0 -46 -10 -76.5t-29 -48.5t-46.5 -25.5t-62.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v392q0 33 -3.5 54t-12.5 33t-25 17t-41 5q-51 0 -116 -34v-404q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v606 +h-46q-19 0 -19 19v55q0 18 19 18h46v22q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-22h150q19 0 19 -18v-55q0 -19 -19 -19h-150v-93q29 17 63 27t88 10q52 0 86.5 -17t55 -47t29 -70.5t8.5 -86.5v-392v0z" /> + <glyph glyph-name="afii10106.001" unicode="&#xe057;" horiz-adv-x="893" +d="M538 105q17 -1 37 -1.5t31 -0.5q66 0 95 19t29 63v4q0 47 -29 67t-95 20h-30.5t-37.5 -2v-169zM518 564q8 0 14 -6t6 -14v-164q19 1 35 1.5t33 0.5q54 0 101 -9.5t81.5 -32t54.5 -59.5t20 -92v-4q0 -54 -20 -91t-54.5 -59.5t-81.5 -32.5t-101 -10q-21 0 -48 1t-52.5 2.5 +t-47 4t-32.5 5.5q-8 2 -14 7t-6 13v426h-118q-17 0 -22 -20l-98 -414q-2 -7 -7 -12t-12 -5h-100q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l117 440q9 35 26 55t36.5 30.5t40 13.5t36.5 3h230z" /> + <glyph glyph-name="afii10107.001" unicode="&#xe058;" horiz-adv-x="882" +d="M415 5q-8 2 -14 7t-6 13v217h-198v-221q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v522q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-202h198v202q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-162q19 1 35 1h33q54 0 101 -9.5t81.5 -32t54.5 -59.5t20 -92v-4 +q0 -54 -20 -91t-54.5 -59.5t-81.5 -32.5t-101 -10q-21 0 -48 1t-52.5 2.5t-47 4t-32.5 5.5zM527 105q17 -1 37 -1.5t31 -0.5q66 0 95 19t29 63v4q0 47 -29 67t-95 20q-13 0 -30.5 -0.5t-37.5 -1.5v-169z" /> + <glyph glyph-name="afii10109.001" unicode="&#xe05a;" horiz-adv-x="549" +d="M519 12q0 -5 -4 -8.5t-10 -3.5h-122q-8 0 -16 6.5t-13 13.5l-157 228v-227q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-220l171 228q5 7 11.5 9.5t11.5 2.5h112q15 0 15 -11q0 -5 -4 -10l-201 -247l203 -276q3 -5 3 -8z +M455 772q0 -4 -4 -8l-118 -124q-6 -7 -10.5 -10t-13.5 -3h-86q-9 0 -9 7q0 6 4 10l95 120q7 8 11.5 11.5t14.5 3.5h105q11 0 11 -7z" /> + <glyph glyph-name="afii10108.001" unicode="&#xe059;" horiz-adv-x="592" +d="M197 627v-93q29 17 63 27t88 10q52 0 86.5 -17t55 -47t29 -70.5t8.5 -86.5v-329q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v329q0 33 -3.5 54t-12.5 33t-25 17t-41 5q-51 0 -116 -34v-404q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v606h-46q-19 0 -19 19 +v55q0 18 19 18h46v22q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-22h150q19 0 19 -18v-55q0 -19 -19 -19h-150z" /> + <glyph glyph-name="afii10193.001" unicode="&#xe05d;" horiz-adv-x="592" +d="M363 109q17 0 24.5 6.5t7.5 30.5v397q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-398q0 -49 -13 -78t-35.5 -44t-52 -19t-63.5 -4h-1v-118q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v118h-1q-34 0 -63.5 4t-52 19t-35.5 44t-13 78v398q0 8 6 14.5t14 6.5h92q8 0 14 -6.5 +t6 -14.5v-397q0 -24 7.5 -30.5t24.5 -6.5h134z" /> + <glyph glyph-name="afii10062.001" unicode="&#xe02d;" horiz-adv-x="573" +d="M402 727q2 7 6 12t14 5h102q8 0 14.5 -5.5t2.5 -17.5l-164 -572q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 11 6.5 15t15.5 3q11 -1 26 -2t31 -2t30.5 -1.5t25.5 -0.5q32 0 50 12.5t29 51.5 +l5 18h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5t-18.5 45.5l-131 458q-7 23 18 23h101q11 0 14 -5.5t5 -12.5l101 -407q3 -13 6 -17.5t11 -4.5h6zM465 930q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55 +q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="afii10110.001" unicode="&#xe05b;" horiz-adv-x="560" +d="M535 547q0 -4 -1 -6l-167 -584q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 8 6 13t14 5h2q10 0 25.5 -1l31 -2t30.5 -2t26 -1q32 0 50 12.5t29 51.5l8 30h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5 +t-18.5 45.5l-131 458q-1 3 -1 7q0 16 19 16h101q7 0 12 -5.5t7 -12.5l101 -407q3 -13 6 -17.5t8 -4.5h1h5h3l108 430q2 7 7 12t13 5h102q8 0 13 -5t5 -12zM461 772q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46 +t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7z" /> + <glyph glyph-name="afii10057.001" unicode="&#xe028;" horiz-adv-x="289" +d="M214 -21q0 -80 -39.5 -113t-120.5 -33q-11 0 -24 1t-24.5 2.5t-20 2.5t-11.5 2q-10 3 -10 14v71q0 8 6 13t14 5h66q14 0 19.5 6.5t5.5 28.5v745q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-745v0z" /> + <glyph glyph-name="afii10050.001" unicode="&#xe021;" horiz-adv-x="576" +d="M213 20q0 -8 -6 -14t-14 -6h-98q-8 0 -14 6t-6 14v526q0 64 18 104t49 62.5t73 30.5t91 8h38t33 -1v47q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-145q0 -8 -6 -14t-14 -6h-204q-44 0 -61.5 -18t-17.5 -68v-526z" /> + <glyph glyph-name="afii10023.001" unicode="&#xe006;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64zM448 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM248 824 +q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="afii10053.001" unicode="&#xe024;" horiz-adv-x="621" +d="M193 326v-37q0 -57 11.5 -93.5t33 -57.5t54 -29t74.5 -8h160q8 0 14 -6t6 -14v-64q0 -11 -4.5 -15t-15.5 -6q-24 -5 -64.5 -9.5t-96.5 -4.5t-111.5 13.5t-99.5 52.5t-71.5 111t-27.5 189v37q0 117 27.5 189t71.5 111t99.5 52.5t111.5 13.5t96.5 -4.5t64.5 -9.5 +q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-160q-42 0 -74.5 -8t-54 -29t-33 -57.5t-11.5 -93.5v-6h311q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-311z" /> + <glyph glyph-name="afii10056.001" unicode="&#xe027;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704zM301 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM101 824q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6 +t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="afii10055.001" unicode="&#xe026;" horiz-adv-x="289" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="afii10103.001" unicode="&#xe054;" horiz-adv-x="268" +d="M203 659q0 -8 -6 -14t-14 -6h-97q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h97q8 0 14 -6t6 -14v-88zM200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523z" /> + <glyph glyph-name="afii10098.001" unicode="&#xe04f;" horiz-adv-x="402" +d="M246 448q-49 0 -49 -56v-372q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v372q0 90 42 131t139 41h7v52q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-148q0 -8 -6 -14t-14 -6h-119z" /> + <glyph glyph-name="afii10071.001" unicode="&#xe034;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4zM443 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM243 659 +q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="afii61352.001" unicode="&#xe05e;" horiz-adv-x="1198" +d="M637 40q0 -17 -11.5 -28.5t-28.5 -11.5h-101q-18 0 -33.5 4.5t-27.5 31.5l-222 487q-4 8 -9 8t-5 -8v-503q0 -8 -5.5 -14t-13.5 -6h-85q-8 0 -14 6t-6 14v683q0 17 11.5 28.5t28.5 11.5h108q16 0 25.5 -6t18.5 -26l233 -514q3 -8 8 -8t5 9v526q0 19 19 19h86q19 0 19 -19 +v-684zM1143 422q0 -48 -13.5 -88t-40 -69.5t-65.5 -46t-91 -16.5t-91.5 16.5t-66 46t-40 69.5t-13.5 88v44q0 48 13.5 88t40 69.5t66 46t91.5 16.5t91 -16.5t65.5 -46t40 -69.5t13.5 -88v-44zM1027 466q0 55 -24 87t-70 32q-47 0 -71 -32t-24 -87v-44q0 -55 24 -87t71 -32 +q46 0 70 32t24 87v44zM1150 81q0 -8 -6 -12t-14 -4h-388q-8 0 -14 4t-6 12v70q0 8 6 12t14 4h388q8 0 14 -4t6 -12v-70z" /> + <glyph glyph-name="afii10101.001" unicode="&#xe052;" horiz-adv-x="468" +d="M45 298q0 145 60 209t178 64q38 0 70 -4t49 -9q13 -3 17 -8.5t4 -17.5v-62q0 -10 -4 -14.5t-17 -3.5q-15 1 -45 4t-64 3q-27 0 -48 -6t-36 -20t-23.5 -39t-8.5 -62h193q8 0 14 -6t6 -14v-60q0 -8 -6 -13.5t-14 -5.5h-193q0 -38 8.5 -63t23.5 -39.5t36 -20.5t48 -6 +q34 0 64 3t45 4q13 1 17 -3.5t4 -14.5v-62q0 -12 -4 -17.5t-17 -8.5q-17 -5 -49 -9t-70 -4q-118 0 -178 64t-60 209v33z" /> + <glyph glyph-name="afii10105.001" unicode="&#xe056;" horiz-adv-x="268" +d="M203 659q0 -8 -6.5 -14t-14.5 -6h-96q-8 0 -14 6t-6 14v88q0 8 6 14t14 6h96q8 0 14.5 -6t6.5 -14v-88zM200 -42q0 -46 -10 -76.5t-29 -48.5t-46.5 -25.5t-62.5 -7.5q-17 0 -32.5 1.5t-33.5 4.5q-19 3 -19 18v65q0 16 21 16h45q24 0 29.5 11.5t5.5 41.5v586q0 8 6 14 +t14 6h92q8 0 14 -6t6 -14v-586z" /> + <glyph glyph-name="afii10054.001" unicode="&#xe025;" horiz-adv-x="570" +d="M525 201q0 -38 -13 -75.5t-43.5 -67t-81 -48t-125.5 -18.5q-57 0 -99 5t-78 13q-8 2 -13.5 7t-5.5 13v72q0 8 5.5 13.5t13.5 5.5h2q15 -2 39.5 -3.5t50.5 -3t49.5 -2.5t37.5 -1q67 0 91.5 23t24.5 67q0 15 -4 26.5t-14 22.5t-26 22.5t-41 26.5l-132 79q-35 21 -57.5 42 +t-36 43.5t-19 47t-5.5 50.5q0 41 13 76t42.5 60.5t77 39.5t117.5 14q25 0 53 -1.5t55 -4.5t49 -6t35 -6q8 -2 13 -6.5t5 -12.5v-74q0 -8 -4.5 -13t-12.5 -5h-2q-50 5 -99 7.5t-98 2.5q-56 0 -80.5 -18.5t-24.5 -52.5q0 -12 3.5 -22.5t13 -21t25.5 -21.5t40 -24l120 -67 +q41 -23 68 -46.5t42.5 -48.5t22 -52t6.5 -57z" /> + <glyph glyph-name="afii10102.001" unicode="&#xe053;" horiz-adv-x="489" +d="M444 148q0 -33 -12 -61.5t-36.5 -49.5t-61.5 -33t-86 -12q-15 0 -36.5 1t-46.5 3.5t-50 6t-46 9.5q-19 5 -19 23v60q0 6 4.5 11t12.5 5h4q18 -2 42.5 -4t48.5 -3.5t45 -2.5t32 -1q23 0 37 3.5t21.5 10t10 15.5t2.5 19q0 14 -10 25t-34 26l-137 84q-37 23 -60.5 58.5 +t-23.5 79.5q0 150 190 150q30 0 54.5 -1.5t45.5 -4.5t40 -6.5t38 -7.5q18 -5 18 -23v-58q0 -19 -16 -19h-4q-11 1 -30 3.5t-42 4t-47.5 3t-45.5 1.5q-36 0 -52.5 -9.5t-16.5 -32.5q0 -12 10.5 -21t29.5 -20l131 -80q31 -19 50 -38t29.5 -38t13.5 -38t3 -38z" /> + <glyph glyph-name="afii10104.001" unicode="&#xe055;" horiz-adv-x="268" +d="M200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523zM291 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88zM91 659q0 -8 -6.5 -14t-14.5 -6h-72q-8 0 -14.5 6 +t-6.5 14v88q0 8 6.5 14t14.5 6h72q8 0 14.5 -6t6.5 -14v-88z" /> + <glyph glyph-name="afii10017.001" unicode="&#xe000;" horiz-adv-x="646" +d="M627 17q0 -8 -5 -12.5t-13 -4.5h-106q-7 0 -12 5t-7 12l-46 190h-230l-46 -190q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2z +M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-72 -297h176z" /> + <glyph glyph-name="afii10018.001" unicode="&#xe001;" horiz-adv-x="641" +d="M214 628v-158q21 2 43.5 2h45.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v689q0 8 6 14t14 6h435q8 0 14 -5.5t6 -13.5v-79q0 -8 -6 -13t-14 -5h-316z +M214 111q7 -1 18.5 -1.5t24.5 -1t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242z" /> + <glyph glyph-name="afii10019.001" unicode="&#xe002;" horiz-adv-x="650" +d="M600 208q0 -60 -21.5 -101t-61 -66.5t-95.5 -37t-126 -11.5q-61 0 -105.5 3t-67.5 8q-25 5 -36.5 15.5t-11.5 38.5v630q0 27 10.5 38.5t34.5 15.5q20 3 64 6.5t103 3.5q68 0 124.5 -10.5t97.5 -34.5t63.5 -62.5t22.5 -95.5v-20q0 -50 -23 -90.5t-69 -60.5 +q46 -20 71.5 -57.5t25.5 -94.5v-17zM460 540q0 52 -38.5 74t-134.5 22q-18 0 -37.5 -0.5t-35.5 -1.5v-203h127q35 0 58 7.5t36.5 20.5t19 30.5t5.5 36.5v14zM464 223q0 21 -6 40t-20.5 33.5t-38 23.5t-58.5 9h-127v-220q18 0 42 -1t40 -1q48 0 80 6t51.5 19t28 32.5 +t8.5 45.5v13z" /> + <glyph glyph-name="afii10020.001" unicode="&#xe003;" horiz-adv-x="576" +d="M213 20q0 -8 -6 -14t-14 -6h-98q-8 0 -14 6t-6 14v526q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204q-44 0 -61.5 -18t-17.5 -68v-526z" /> + <glyph glyph-name="afii10021.001" unicode="&#xe004;" horiz-adv-x="773" +d="M109 124l137 525q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l136 -525h78q8 0 14 -6t6 -14v-222q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v118h-465v-118q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v222q0 8 6 14t14 6h74zM250 124h269 +l-118 494q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5z" /> + <glyph glyph-name="afii10022.001" unicode="&#xe005;" horiz-adv-x="576" +d="M516 27q0 -11 -4.5 -15t-15.5 -6q-12 -2 -26.5 -4.5t-36 -4.5t-52 -3.5t-75.5 -1.5q-49 0 -91 8t-73 30.5t-49 62.5t-18 104v349q0 64 18 104t49 62.5t73 30.5t91 8q45 0 75.5 -1.5t52 -3.5t36 -4.5t26.5 -4.5q11 -2 15.5 -6t4.5 -15v-64q0 -8 -6 -14t-14 -6h-204 +q-44 0 -61.5 -18t-17.5 -68v-108h271q8 0 14 -6t6 -14v-72q0 -8 -6 -14t-14 -6h-271v-129q0 -50 17.5 -68t61.5 -18h204q8 0 14 -6t6 -14v-64v0z" /> + <glyph glyph-name="afii10024.001" unicode="&#xe007;" horiz-adv-x="997" +d="M429 723q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-318l245 329q4 5 9.5 6.5t13.5 1.5h114q19 0 19 -12q0 -7 -7 -16l-256 -331l258 -362q5 -8 5 -12q0 -9 -15 -9h-134q-16 0 -23 11l-229 341v-332q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v332l-229 -341 +q-7 -11 -23 -11h-134q-15 0 -15 9q0 4 5 12l258 362l-256 331q-7 9 -7 16q0 12 19 12h114q8 0 13.5 -1.5t9.5 -6.5l245 -329v318z" /> + <glyph glyph-name="afii10025.001" unicode="&#xe008;" horiz-adv-x="587" +d="M522 208q0 -56 -19.5 -96.5t-53 -67t-79.5 -39.5t-99 -13q-56 0 -102.5 7t-89.5 18q-8 2 -13.5 6.5t-5.5 12.5v62q0 8 5 13t13 5h2q60 -6 107.5 -10t83.5 -4q61 0 86.5 26.5t25.5 79.5v21q0 20 -3.5 38t-14 32t-28.5 22.5t-46 8.5h-177q-19 0 -19 19v63q0 19 19 19h177 +q28 0 46 8t28.5 21.5t14 31t3.5 37.5v16q0 19 -4.5 36.5t-17 30.5t-34.5 21t-56 8q-27 0 -47.5 -1t-41.5 -2.5t-45 -4.5t-57 -6h-2q-8 0 -13 5t-5 13v62q0 8 5.5 12.5t13.5 6.5q43 11 89.5 18t102.5 7q54 0 100 -11t79.5 -35.5t52.5 -63.5t19 -96v-16q0 -53 -22.5 -89.5 +t-63.5 -58.5q42 -23 64 -63.5t22 -88.5v-21v0z" /> + <glyph glyph-name="afii10026.001" unicode="&#xe009;" horiz-adv-x="712" +d="M75 724q0 19 19 19h86q19 0 19 -19v-526q0 -9 5 -9t8 8l233 514q9 20 18.5 26t25.5 6h108q17 0 28.5 -11.5t11.5 -28.5v-683q0 -8 -6 -14t-14 -6h-85q-8 0 -13.5 6t-5.5 14v503q0 8 -5 8t-9 -8l-222 -487q-12 -27 -27.5 -31.5t-33.5 -4.5h-101q-17 0 -28.5 11.5 +t-11.5 28.5v684z" /> + <glyph glyph-name="afii10027.001" unicode="&#xe00a;" horiz-adv-x="712" +d="M536 944q0 -1 -0.5 -1.5t-0.5 -2.5q-6 -29 -19.5 -55t-35 -46t-52 -32t-70.5 -12q-41 0 -71 12t-51.5 32t-35 46t-19.5 55q0 2 -0.5 2.5t-0.5 1.5q0 7 10 7h75q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h75q10 0 10 -7zM75 40v684 +q0 19 19 19h86q19 0 19 -19v-526q0 -9 5 -9t8 8l233 514q9 20 18.5 26t25.5 6h108q17 0 28.5 -11.5t11.5 -28.5v-683q0 -8 -6 -14t-14 -6h-85q-8 0 -13.5 6t-5.5 14v503q0 8 -5 8t-9 -8l-222 -487q-12 -27 -27.5 -31.5t-33.5 -4.5h-101q-17 0 -28.5 11.5t-11.5 28.5z" /> + <glyph glyph-name="afii10028.001" unicode="&#xe00b;" horiz-adv-x="643" +d="M615 9q0 -9 -15 -9h-134q-16 0 -23 11l-229 341v-332q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v703q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-318l245 329q4 5 9.5 6.5t13.5 1.5h114q19 0 19 -12q0 -7 -7 -16l-256 -331l258 -362q5 -8 5 -12z" /> + <glyph glyph-name="afii10029.001" unicode="&#xe00c;" horiz-adv-x="646" +d="M339 618q-2 9 -5 12.5t-11 3.5t-11 -3.5t-5 -12.5l-145 -601q-2 -7 -7 -12t-12 -5h-106q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l164 627q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l164 -627q0 -2 0.5 -3t0.5 -2q0 -8 -5 -12.5t-13 -4.5 +h-106q-7 0 -12 5t-7 12z" /> + <glyph glyph-name="afii10030.001" unicode="&#xe00d;" horiz-adv-x="792" +d="M717 15q0 -8 -5 -11.5t-12 -3.5h-101q-7 0 -11.5 6t-4.5 14v465q0 10 -3 10q-1 0 -5 -6l-96 -191q-5 -8 -13.5 -12.5t-18.5 -4.5h-101q-10 0 -18.5 4.5t-13.5 12.5l-97 191q-4 6 -5 6q-3 0 -3 -10v-465q0 -8 -4.5 -14t-11.5 -6h-101q-7 0 -12 3.5t-5 11.5v688 +q0 17 11.5 28.5t28.5 11.5h82q12 0 22 -6.5t15 -17.5l151 -306l6 -10.5t5 -3.5t5 3.5l6 10.5l151 306q5 11 15 17.5t22 6.5h82q17 0 28.5 -11.5t11.5 -28.5v-688v0z" /> + <glyph glyph-name="afii10031.001" unicode="&#xe00e;" horiz-adv-x="712" +d="M637 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v306h-284v-306q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-276h284v276q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704v0z" /> + <glyph glyph-name="afii10032.001" unicode="&#xe00f;" horiz-adv-x="680" +d="M625 304q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5t-59.5 96.5t-21.5 142v135q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135zM485 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135 +q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135z" /> + <glyph glyph-name="afii10033.001" unicode="&#xe010;" horiz-adv-x="712" +d="M637 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v551q0 29 -9 39t-33 10h-200q-24 0 -33 -10t-9 -39v-551q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v551q0 90 42 131t139 41h200q97 0 139 -41t42 -131v-551z" /> + <glyph glyph-name="afii10034.001" unicode="&#xe011;" horiz-adv-x="626" +d="M591 511q0 -66 -23.5 -111t-63 -72.5t-91.5 -39t-110 -11.5q-20 0 -46 1.5t-43 2.5v-261q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -14 6t-6 14v688q0 15 8.5 21.5t23.5 8.5q39 6 90 9.5t106 3.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-9zM453 520q0 63 -37.5 89.5 +t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-238q6 0 18.5 -0.5t26 -1t26 -1t18.5 -0.5q81 0 115.5 30t34.5 90v9z" /> + <glyph glyph-name="afii10035.001" unicode="&#xe012;" horiz-adv-x="563" +d="M518 31q0 -11 -6 -15.5t-16 -7.5q-6 -2 -20.5 -4.5t-35.5 -5t-47 -4.5t-55 -2q-45 0 -95 13t-91.5 47.5t-69 93.5t-27.5 152v147q0 94 27.5 153.5t69 93.5t91.5 46.5t95 12.5q29 0 55 -2t47 -4.5t35.5 -5.5t20.5 -4q10 -3 16 -7.5t6 -15.5v-67q0 -9 -4.5 -15t-15.5 -6h-2 +q-13 1 -31.5 2.5t-39.5 2.5t-43 2t-42 1q-32 0 -58.5 -9.5t-45.5 -31t-30 -57.5t-11 -89v-147q0 -52 11 -88t30 -58t45.5 -31.5t58.5 -9.5q20 0 42 1t43 2t39.5 2.5t31.5 2.5h2q11 0 15.5 -6t4.5 -15v-67v0z" /> + <glyph glyph-name="afii10036.001" unicode="&#xe013;" horiz-adv-x="579" +d="M554 645q0 -8 -6 -13t-14 -5h-175v-607q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v607h-175q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h489q8 0 14 -5.5t6 -13.5v-79v0z" /> + <glyph glyph-name="afii10037.001" unicode="&#xe014;" horiz-adv-x="573" +d="M402 727q2 7 6 12t14 5h102q8 0 14.5 -5.5t2.5 -17.5l-164 -572q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 11 6.5 15t15.5 3q11 -1 26 -2t31 -2t30.5 -1.5t25.5 -0.5q32 0 50 12.5t29 51.5 +l5 18h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5t-18.5 45.5l-131 458q-7 23 18 23h101q11 0 14 -5.5t5 -12.5l101 -407q3 -13 6 -17.5t11 -4.5h6z" /> + <glyph glyph-name="afii10038.001" unicode="&#xe015;" horiz-adv-x="881" +d="M510 657q8 1 16 1h19q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-9q0 -66 -23.5 -111t-63 -72.5t-91.5 -39t-110 -11.5h-35v-164q0 -8 -5.5 -14t-13.5 -6h-100q-8 0 -14 6t-6 14v164h-35q-58 0 -110 11.5t-91.5 39t-63 72.5t-23.5 111v9q0 66 23.5 110.5t63 71.5 +t91.5 38t110 11h19t16 -1v67q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-67zM545 543h-16t-19 -1v-244h35q81 0 115.5 30t34.5 90v9q0 63 -37.5 89.5t-112.5 26.5zM371 298v244q-11 1 -20 1h-15q-75 0 -112.5 -26.5t-37.5 -89.5v-9q0 -60 34.5 -90t115.5 -30h35z" /> + <glyph glyph-name="afii10039.001" unicode="&#xe016;" horiz-adv-x="650" +d="M627 12q0 -5 -4 -8.5t-12 -3.5h-118q-8 0 -14 5.5t-12 14.5l-147 236l-138 -236q-11 -20 -26 -20h-109q-16 0 -16 13q0 3 2 7l213 355l-219 349q-2 4 -2 6q0 13 16 13h118q8 0 14.5 -6t11.5 -13l146 -233l135 233q4 7 11 13t15 6h109q16 0 16 -13q0 -2 -2 -6l-210 -352 +l220 -352q2 -3 2 -8z" /> + <glyph glyph-name="afii10040.001" unicode="&#xe017;" horiz-adv-x="756" +d="M637 172q0 -29 -4 -48h93q8 0 14 -6t6 -14v-222q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v118h-351q-97 0 -139 41t-42 131v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551q0 -29 9 -39t33 -10h200q24 0 33 10t9 39v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551z" /> + <glyph glyph-name="afii10041.001" unicode="&#xe018;" horiz-adv-x="692" +d="M65 722q0 8 6 14.5t14 6.5h99q8 0 14 -6.5t6 -14.5v-229q0 -33 7.5 -53.5t23.5 -32t39.5 -16t55.5 -4.5q40 0 84 10t74 22v303q0 8 6 14.5t14 6.5h99q8 0 14 -6.5t6 -14.5v-702q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v288q-31 -13 -82 -25t-112 -12q-62 0 -105.5 17 +t-71 47t-40 70.5t-12.5 86.5v230v0z" /> + <glyph glyph-name="afii10042.001" unicode="&#xe019;" horiz-adv-x="1005" +d="M438 723q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-600h172q24 0 33 10t9 39v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551q0 -90 -42 -131t-139 -41h-493q-97 0 -139 41t-42 131v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551q0 -29 9 -39t33 -10h182v600z" /> + <glyph glyph-name="afii10043.001" unicode="&#xe01a;" horiz-adv-x="1069" +d="M438 723q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-600h172q24 0 33 10t9 39v551q0 8 6 14t14 6h99q8 0 14 -6t6 -14v-551q0 -29 -4 -48h93q8 0 14 -6t6 -14v-222q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v118h-644q-97 0 -139 41t-42 131v551q0 8 6 14t14 6h99q8 0 14 -6 +t6 -14v-551q0 -29 9 -39t33 -10h182v600z" /> + <glyph glyph-name="afii10044.001" unicode="&#xe01b;" horiz-adv-x="621" +d="M195 744q8 0 13.5 -6t5.5 -14v-254q21 2 43.5 2h45.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v593h-70q-8 0 -14 5t-6 13v79q0 8 6 13.5t14 5.5h190z +M214 111q7 -1 18.5 -1.5t24.5 -1t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242z" /> + <glyph glyph-name="afii10045.001" unicode="&#xe01c;" horiz-adv-x="908" +d="M214 470q21 2 43.5 2h45.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v688q0 8 6 14t14 6h100q8 0 13.5 -6t5.5 -14v-253zM214 111q7 -1 18.5 -1.5t24.5 -1 +t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242zM833 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-704z" /> + <glyph glyph-name="afii10046.001" unicode="&#xe01d;" horiz-adv-x="639" +d="M214 470q21 2 43.5 2h45.5q58 0 110 -11t91.5 -38t63 -71.5t23.5 -110.5v-18q0 -66 -23.5 -110.5t-63 -71.5t-91.5 -38t-110 -11q-55 0 -106 3.5t-90 9.5q-15 2 -23.5 8.5t-8.5 21.5v688q0 8 6 14t14 6h100q8 0 13.5 -6t5.5 -14v-253zM214 111q7 -1 18.5 -1.5t24.5 -1 +t25.5 -1t20.5 -0.5q75 0 112.5 26.5t37.5 89.5v18q0 63 -37.5 89.5t-112.5 26.5q-8 0 -20.5 -0.5t-25.5 -1t-24.5 -1t-18.5 -1.5v-242z" /> + <glyph glyph-name="afii10047.001" unicode="&#xe01e;" horiz-adv-x="621" +d="M117 326q-8 0 -14 6t-6 14v72q0 8 6 14t14 6h311v6q0 57 -11.5 93.5t-33 57.5t-54 29t-74.5 8h-160q-8 0 -14 6t-6 14v64q0 11 4.5 15t15.5 6q24 5 64.5 9.5t96.5 4.5t111.5 -13.5t99.5 -52.5t71.5 -111t27.5 -189v-37q0 -78 -12.5 -134.5t-34.5 -96.5t-52 -64t-64.5 -38 +t-72 -18.5t-74.5 -4.5q-56 0 -96.5 4.5t-64.5 9.5q-11 2 -15.5 6t-4.5 15v64q0 8 6 14t14 6h160q42 0 74.5 8t54 29t33 57.5t11.5 93.5v27h-311z" /> + <glyph glyph-name="afii10048.001" unicode="&#xe01f;" horiz-adv-x="960" +d="M214 20q0 -8 -6 -14t-14 -6h-99q-8 0 -14 6t-6 14v704q0 8 6 13.5t14 5.5h99q8 0 14 -5.5t6 -13.5v-293h121v8q0 82 21.5 141.5t59.5 97t90 55.5t114 18t114 -18t90 -55.5t59.5 -97t21.5 -141.5v-135q0 -83 -21.5 -142t-59.5 -96.5t-90 -55.5t-114 -18t-114 18t-90 55.5 +t-59.5 96.5t-21.5 142v14h-121v-298zM765 439q0 100 -35.5 145.5t-109.5 45.5t-109.5 -45.5t-35.5 -145.5v-135q0 -100 35.5 -145.5t109.5 -45.5t109.5 45.5t35.5 145.5v135z" /> + <glyph glyph-name="afii10049.001" unicode="&#xe020;" horiz-adv-x="653" +d="M38 12q0 5 2 8l157 292q-62 24 -98.5 74t-36.5 130v9q0 64 23.5 107.5t63 69.5t91.5 37.5t110 11.5q55 0 106 -3.5t90 -9.5q15 -2 23.5 -8.5t8.5 -21.5v-688q0 -8 -6 -14t-14 -6h-100q-8 0 -13.5 6t-5.5 14v271q-17 -1 -43 -2.5t-46 -1.5h-14l-144 -267q-4 -8 -8 -14 +t-12 -6h-122q-12 0 -12 12zM200 516q0 -66 36 -91t114 -25q6 0 18.5 0.5t26 1t26 1t18.5 0.5v225q-7 1 -18.5 1.5t-24.5 1t-25.5 1t-20.5 0.5q-75 0 -112.5 -25t-37.5 -82v-9z" /> + <glyph glyph-name="afii10065.001" unicode="&#xe02e;" horiz-adv-x="548" +d="M483 20q0 -8 -6 -14t-14 -6h-85q-8 0 -14 6t-6 14v16q-35 -21 -70 -32.5t-71 -11.5q-31 0 -62 7t-55.5 26t-40 51t-15.5 83v4q0 43 13.5 75t43 54t76 33t111.5 11h63v44q0 49 -21.5 65t-66.5 16q-48 0 -93 -2.5t-70 -5.5h-5q-8 0 -13 3t-5 14v64q0 17 19 21q30 6 72.5 11 +t94.5 5q107 0 163.5 -47t56.5 -144v-360zM351 248h-63q-34 0 -55.5 -5.5t-34 -16t-17 -26.5t-4.5 -37v-4q0 -37 17 -49.5t55 -12.5q27 0 53.5 8t48.5 20v123z" /> + <glyph glyph-name="afii10066.001" unicode="&#xe02f;" horiz-adv-x="574" +d="M526 246q0 -56 -15.5 -102.5t-45.5 -80t-74.5 -52.5t-103.5 -19t-103.5 19t-74.5 52.5t-45.5 80t-15.5 102.5v56q0 75 4.5 138t25 110.5t63 79.5t118.5 46l60 11q38 7 49 20.5t14 30.5q1 13 15 13h106q12 0 12 -13q0 -58 -35.5 -92t-100.5 -48l-63 -13q-43 -9 -74 -20.5 +t-42 -41.5q14 8 39 13t48 5q59 0 103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-46zM394 292q0 62 -23 98.5t-84 36.5q-58 0 -82.5 -36.5t-24.5 -98.5v-46q0 -75 27 -107.5t80 -32.5t80 32.5t27 107.5v46z" /> + <glyph glyph-name="afii10067.001" unicode="&#xe030;" horiz-adv-x="577" +d="M537 158q0 -48 -19 -80t-54.5 -51t-87.5 -27t-118 -8q-57 0 -91.5 2.5t-56.5 5.5q-23 4 -34 12t-11 30v481q0 20 9.5 29t32.5 12q20 2 54 4.5t90 2.5q63 0 115 -5.5t89 -23t57.5 -49t20.5 -82.5v-6q0 -16 -4.5 -33t-14.5 -33t-26 -28.5t-38 -19.5q45 -14 66 -46.5 +t21 -80.5v-6zM405 411q0 18 -5 30t-18.5 19t-37.5 10t-63 3h-33t-22 -0.5t-15.5 -1t-13.5 -0.5v-135h88q39 0 63 5.5t36.5 14.5t16.5 21.5t4 27.5v6zM409 175q0 18 -4.5 32t-18 23t-38 13.5t-63.5 4.5h-88v-156q23 -1 34.5 -1h26.5q42 0 71 3.5t47 12.5t25.5 24t7.5 38v6z +" /> + <glyph glyph-name="afii10068.001" unicode="&#xe031;" horiz-adv-x="402" +d="M246 448q-49 0 -49 -56v-372q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v372q0 90 42 131t139 41h119q8 0 14 -6t6 -14v-76q0 -8 -6 -14t-14 -6h-119z" /> + <glyph glyph-name="afii10069.001" unicode="&#xe032;" horiz-adv-x="671" +d="M147 0v-118q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v207q0 8 6 14t14 6h68l96 360q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36 -3t39.5 -13.5t36.5 -30.5t27 -55l101 -360h58q8 0 14 -6t6 -14v-207q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v118h-377zM239 109h204 +l-87 329q-4 16 -18 16t-18 -16z" /> + <glyph glyph-name="afii10070.001" unicode="&#xe033;" horiz-adv-x="574" +d="M526 261q0 -25 -20 -25h-326v-3q0 -22 5 -44.5t18.5 -41t37 -30t59.5 -11.5q55 0 103.5 3.5t80.5 6.5h3q8 0 13 -3.5t5 -11.5v-66q0 -12 -3.5 -18t-17.5 -8q-24 -5 -45 -8t-42.5 -5t-47 -3t-59.5 -1q-38 0 -80.5 11.5t-78.5 40t-59.5 77t-23.5 122.5v74q0 58 16 105 +t46.5 80t75.5 51t102 18q58 0 102.5 -18.5t74.5 -52.5t45.5 -80.5t15.5 -102.5v-56zM393 334q0 59 -29 91t-76 32t-77 -31.5t-30 -91.5v-4h212v4z" /> + <glyph glyph-name="afii10072.001" unicode="&#xe035;" horiz-adv-x="836" +d="M352 544q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-220l171 228q5 7 11.5 9.5t11.5 2.5h112q15 0 15 -11q0 -5 -4 -10l-201 -247l203 -276q3 -5 3 -8q0 -5 -4 -8.5t-10 -3.5h-122q-8 0 -16 6.5t-13 13.5l-157 228v-227q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v227 +l-157 -228q-5 -7 -13 -13.5t-16 -6.5h-122q-6 0 -10 3.5t-4 8.5q0 3 3 8l203 276l-201 247q-4 5 -4 10q0 11 15 11h112q5 0 11.5 -2.5t11.5 -9.5l171 -228v220z" /> + <glyph glyph-name="afii10073.001" unicode="&#xe036;" horiz-adv-x="483" +d="M435 163q0 -50 -18.5 -83t-49.5 -52.5t-72 -27.5t-86 -8q-47 0 -87 5.5t-76 13.5q-6 2 -11 5.5t-5 9.5v69q0 14 16 14h1q51 -5 91 -8t71 -3q26 0 44 2.5t29 9.5t16 20t5 33v10q0 30 -14.5 48t-62.5 18h-150q-16 0 -16 14v70q0 15 16 15h150q48 0 62.5 16.5t14.5 47.5v8 +q0 15 -3.5 25.5t-14 17.5t-29 10.5t-47.5 3.5q-23 0 -40.5 -0.5t-35.5 -2t-38 -3.5t-48 -5h-1q-16 0 -16 14v67q0 6 5 9.5t11 5.5q36 8 76 13.5t87 5.5q46 0 87 -6.5t72 -24.5t49 -49.5t18 -80.5v-8q0 -35 -18.5 -65t-53.5 -48q18 -7 31.5 -19.5t22.5 -28.5t13.5 -34 +t4.5 -34v-10v0z" /> + <glyph glyph-name="afii10074.001" unicode="&#xe037;" horiz-adv-x="592" +d="M395 324l-198 -303q-6 -10 -14 -15.5t-26 -5.5h-72q-8 0 -14 6.5t-6 14.5v522q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-302l198 303q4 6 11 13t30 7h71q8 0 14 -6.5t6 -14.5v-522q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v303z" /> + <glyph glyph-name="afii10075.001" unicode="&#xe038;" horiz-adv-x="592" +d="M298 623q-41 0 -72 11.5t-53 31.5t-35 46.5t-17 55.5q-2 11 11 11h73q10 0 13 -12q9 -35 30.5 -50.5t49.5 -15.5t49.5 15.5t30.5 50.5q3 12 13 12h73q13 0 11 -11q-4 -29 -17 -55.5t-35 -46.5t-53.5 -31.5t-71.5 -11.5zM395 324l-198 -303q-6 -10 -14 -15.5t-26 -5.5h-72 +q-8 0 -14 6.5t-6 14.5v522q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-302l198 303q4 6 11 13t30 7h71q8 0 14 -6.5t6 -14.5v-522q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v303z" /> + <glyph glyph-name="afii10076.001" unicode="&#xe039;" horiz-adv-x="549" +d="M519 12q0 -5 -4 -8.5t-10 -3.5h-122q-8 0 -16 6.5t-13 13.5l-157 228v-227q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-220l171 228q5 7 11.5 9.5t11.5 2.5h112q15 0 15 -11q0 -5 -4 -10l-201 -247l203 -276q3 -5 3 -8z +" /> + <glyph glyph-name="afii10077.001" unicode="&#xe03a;" horiz-adv-x="592" +d="M320 438q-5 20 -22 20t-22 -20l-98 -421q-2 -7 -7 -12t-12 -5h-100q-8 0 -13 4.5t-5 12.5q0 1 0.5 2t0.5 3l117 447q9 35 26 55t36.5 30.5t40 13.5t36.5 3t36.5 -3t40 -13.5t36.5 -30.5t26 -55l118 -447q0 -2 0.5 -3t0.5 -2q0 -8 -5 -12.5t-13 -4.5h-100q-7 0 -12 5 +t-7 12z" /> + <glyph glyph-name="afii10078.001" unicode="&#xe03b;" horiz-adv-x="718" +d="M643 11q0 -11 -16 -11h-93q-5 0 -9.5 5t-4.5 10v352q0 7 -3 7l-4 -4l-79 -144q-3 -6 -11.5 -9.5t-16.5 -3.5h-92q-9 0 -17.5 3.5t-12.5 9.5l-79 144l-4 4q-3 0 -3 -7v-352q0 -5 -4.5 -10t-9.5 -5h-93q-16 0 -16 11v521q0 13 11 22t25 9h76q11 0 20 -5.5t14 -13.5 +l127 -232q5 -10 12 -10q5 0 10 10l127 232q5 8 14 13.5t20 5.5h76q14 0 25 -9t11 -22v-521v0z" /> + <glyph glyph-name="afii10079.001" unicode="&#xe03c;" horiz-adv-x="592" +d="M197 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v522q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-202h198v202q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-522q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v221h-198v-221z" /> + <glyph glyph-name="afii10080.001" unicode="&#xe03d;" horiz-adv-x="574" +d="M526 241q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19t-103.5 19t-74.5 52t-45.5 78.5t-15.5 99.5v81q0 54 15.5 99.5t45.5 78.5t74.5 52t103.5 19t103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81zM394 322q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81 +q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81z" /> + <glyph glyph-name="afii10081.001" unicode="&#xe03e;" horiz-adv-x="592" +d="M229 455q-17 0 -24.5 -6.5t-7.5 -30.5v-397q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v398q0 49 13 78t35.5 44t52 19t63.5 4h134q34 0 63.5 -4t52 -19t35.5 -44t13 -78v-398q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v397q0 24 -7.5 30.5t-24.5 6.5 +h-134z" /> + <glyph glyph-name="afii10082.001" unicode="&#xe03f;" horiz-adv-x="577" +d="M532 243q0 -118 -59 -184.5t-180 -66.5q-18 0 -43 1.5t-53 5.5v-177q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v696q0 11 5 16.5t22 10.5q47 12 100 19t101 7q121 0 180 -66.5t59 -184.5v-77zM400 320q0 31 -4.5 57t-16.5 45t-33 30t-53 11q-27 0 -54.5 -2t-41.5 -5v-349 +q21 -3 49.5 -5t46.5 -2q32 0 53 11t33 30t16.5 45t4.5 57v77z" /> + <glyph glyph-name="afii10083.001" unicode="&#xe040;" horiz-adv-x="468" +d="M423 31q0 -12 -4 -17.5t-17 -8.5q-17 -5 -50 -9t-79 -4q-49 0 -90.5 15t-72 45.5t-48 76t-17.5 106.5v93q0 61 17.5 106.5t48 76t72 45.5t90.5 15q46 0 79 -4t50 -9q13 -3 17 -8.5t4 -17.5v-65q0 -8 -5 -11.5t-13 -3.5h-3q-15 2 -28 3.5t-27 2t-32 1t-42 0.5 +q-18 0 -35 -6t-30.5 -20.5t-22 -40t-8.5 -64.5v-93q0 -39 8.5 -64.5t22 -40t30.5 -20.5t35 -6q24 0 42 0.5t32 1t27 2t28 3.5h3q8 0 13 -3.5t5 -11.5v-65v0z" /> + <glyph glyph-name="afii10084.001" unicode="&#xe041;" horiz-adv-x="542" +d="M337 456v-435q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v435h-155q-8 0 -14 5.5t-6 13.5v69q0 8 6 14t14 6h442q8 0 14 -6t6 -14v-69q0 -8 -6 -13.5t-14 -5.5h-155z" /> + <glyph glyph-name="afii10085.001" unicode="&#xe042;" horiz-adv-x="560" +d="M535 547q0 -4 -1 -6l-167 -584q-12 -41 -26 -70.5t-36.5 -49t-56.5 -28.5t-85 -9q-12 0 -27 1t-29.5 3t-27.5 4t-22 5q-8 2 -14.5 5.5t-6.5 11.5v64q0 8 6 13t14 5h2q10 0 25.5 -1l31 -2t30.5 -2t26 -1q32 0 50 12.5t29 51.5l8 30h-15q-11 0 -23 2.5t-23.5 10.5t-22 24.5 +t-18.5 45.5l-131 458q-1 3 -1 7q0 16 19 16h101q7 0 12 -5.5t7 -12.5l101 -407q3 -13 6 -17.5t8 -4.5h9l108 430q2 7 7 12t13 5h102q8 0 13 -5t5 -12z" /> + <glyph glyph-name="afii10086.001" unicode="&#xe043;" horiz-adv-x="858" +d="M810 243q0 -117 -57 -184t-178 -67q-18 0 -35 1.5t-45 5.5v-177q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v177q-28 -4 -45 -5.5t-35 -1.5q-121 0 -178 67t-57 184v77q0 117 57 184t178 67q41 0 80 -6v176q0 8 6 14t14 6h93q8 0 13.5 -6t5.5 -14v-176q39 6 80 6 +q121 0 178 -67t57 -184v-77zM678 320q0 31 -4 57t-15.5 45t-31.5 30t-52 11q-27 0 -46.5 -2t-33.5 -5v-349q21 -3 41.5 -5t38.5 -2q32 0 52 11t31.5 30t15.5 45t4 57v77zM363 456q-14 3 -33.5 5t-46.5 2q-32 0 -52.5 -11t-31.5 -30t-15 -45t-4 -57v-77q0 -31 4 -57t15 -45 +t31.5 -30t52.5 -11q18 0 38.5 2t41.5 5v349z" /> + <glyph glyph-name="afii10087.001" unicode="&#xe044;" horiz-adv-x="557" +d="M537 13q0 -5 -4.5 -9t-10.5 -4h-114q-8 0 -13.5 3.5t-13.5 16.5l-114 176l-108 -176q-8 -13 -13.5 -16.5t-13.5 -3.5h-103q-12 0 -12 11q0 4 3 9l179 271l-169 253q-2 4 -2 6q0 5 4.5 9.5t11.5 4.5h114q8 0 13 -4.5t13 -15.5l101 -156l94 156q8 14 13.5 17t13.5 3h103 +q12 0 12 -11q0 -5 -3 -9l-165 -252l182 -272q2 -4 2 -7z" /> + <glyph glyph-name="afii10088.001" unicode="&#xe045;" horiz-adv-x="637" +d="M602 99q8 0 14 -6t6 -14v-197q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v118h-261q-34 0 -63.5 4t-52 19t-35.5 44t-13 78v398q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-397q0 -24 7.5 -30.5t24.5 -6.5h134q17 0 24.5 6.5t7.5 30.5v397q0 8 6 14.5t14 6.5h92 +q8 0 14 -6.5t6 -14.5v-398q0 -14 -1 -25t-3 -21h79z" /> + <glyph glyph-name="afii10089.001" unicode="&#xe046;" horiz-adv-x="592" +d="M65 543q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-132q0 -33 3.5 -54t12.5 -33t25 -17t41 -5q51 0 116 34v207q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-523q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v207q-29 -17 -63 -27t-88 -10q-52 0 -86.5 17t-55 47t-29 70.5 +t-8.5 86.5v132v0z" /> + <glyph glyph-name="afii10090.001" unicode="&#xe047;" horiz-adv-x="848" +d="M358 543q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-434h129q17 0 24.5 6.5t7.5 30.5v397q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-398q0 -49 -13 -78t-35.5 -44t-52 -19t-63.5 -4h-390q-34 0 -63.5 4t-52 19t-35.5 44t-13 78v398q0 8 6 14.5t14 6.5h92q8 0 14 -6.5 +t6 -14.5v-397q0 -24 7.5 -30.5t24.5 -6.5h129v434z" /> + <glyph glyph-name="afii10091.001" unicode="&#xe048;" horiz-adv-x="878" +d="M358 543q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-434h129q17 0 24.5 6.5t7.5 30.5v397q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-398q0 -10 -0.5 -19t-1.5 -17h77q8 0 14 -6t6 -14v-207q0 -8 -6 -14t-14 -6h-92q-8 0 -14 6t-6 14v118h-517q-34 0 -63.5 4t-52 19 +t-35.5 44t-13 78v398q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-397q0 -24 7.5 -30.5t24.5 -6.5h129v434z" /> + <glyph glyph-name="afii10092.001" unicode="&#xe049;" horiz-adv-x="573" +d="M198 564q8 0 14 -6.5t6 -14.5v-153h68q54 0 101 -9.5t81.5 -32t54.5 -59.5t20 -92v-4q0 -54 -20 -91t-54.5 -59.5t-81.5 -32.5t-101 -10q-21 0 -48 1t-52.5 2.5t-47 4t-32.5 5.5q-8 2 -14 7t-6 13v420h-86q-8 0 -14 5.5t-6 13.5v72q0 8 6 14t14 6h198zM218 113 +q17 -1 37 -1.5t31 -0.5q66 0 95 19t29 63v4q0 47 -29 67t-95 20h-35.5t-32.5 -2v-169z" /> + <glyph glyph-name="afii10093.001" unicode="&#xe04a;" horiz-adv-x="797" +d="M80 13q-8 2 -14 7t-6 13v510q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-153h68q54 0 101 -9.5t81.5 -32t54.5 -59.5t20 -92v-4q0 -54 -20 -91t-54.5 -59.5t-81.5 -32.5t-101 -10q-21 0 -48 1t-52.5 2.5t-47 4t-32.5 5.5zM192 113q17 -1 37 -1.5t31 -0.5q66 0 95 19 +t29 63v4q0 47 -29 67t-95 20h-35.5t-32.5 -2v-169zM737 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-523z" /> + <glyph glyph-name="afii10094.001" unicode="&#xe04b;" horiz-adv-x="537" +d="M80 13q-8 2 -14 7t-6 13v510q0 8 6 14.5t14 6.5h92q8 0 14 -6.5t6 -14.5v-153h68q54 0 101 -9.5t81.5 -32t54.5 -59.5t20 -92v-4q0 -54 -20 -91t-54.5 -59.5t-81.5 -32.5t-101 -10q-21 0 -48 1t-52.5 2.5t-47 4t-32.5 5.5zM192 113q17 -1 37 -1.5t31 -0.5q66 0 95 19 +t29 63v4q0 47 -29 67t-95 20h-35.5t-32.5 -2v-169z" /> + <glyph glyph-name="afii10095.001" unicode="&#xe04c;" horiz-adv-x="468" +d="M423 265q0 -145 -60 -209t-178 -64q-38 0 -70 4t-49 9q-13 3 -17 8.5t-4 17.5v62q0 10 4 14.5t17 3.5q15 -1 45 -4t64 -3q27 0 48 6t36 20.5t23.5 39.5t8.5 63h-193q-8 0 -14 5.5t-6 13.5v60q0 8 6 14t14 6h193q0 37 -8.5 62t-23.5 39t-36 20t-48 6q-34 0 -64 -3t-45 -4 +q-13 -1 -17 3.5t-4 14.5v62q0 12 4 17.5t17 8.5q17 5 49 9t70 4q118 0 178 -64t60 -209v-33z" /> + <glyph glyph-name="afii10096.001" unicode="&#xe04d;" horiz-adv-x="851" +d="M200 21q0 -8 -6 -14.5t-14 -6.5h-92q-8 0 -14 6.5t-6 14.5v523q0 8 6 14t14 6h92q8 0 14 -6t6 -14v-207h125q3 50 19 92.5t46 73.5t73.5 48.5t100.5 17.5q59 0 103.5 -19t74.5 -52t45.5 -78.5t15.5 -99.5v-81q0 -54 -15.5 -99.5t-45.5 -78.5t-74.5 -52t-103.5 -19 +q-57 0 -100.5 17t-73.5 48t-46 73.5t-19 92.5h-125v-200zM671 320q0 62 -27 98.5t-80 36.5t-80 -36.5t-27 -98.5v-81q0 -62 27 -98.5t80 -36.5t80 36.5t27 98.5v81z" /> + <glyph glyph-name="afii10097.001" unicode="&#xe04e;" horiz-adv-x="596" +d="M30 9q0 4 2 6l148 216q-58 19 -92 55.5t-34 102.5v7q0 52 22 85.5t59 53.5t86.5 28t103.5 8q52 0 91.5 -2.5t76.5 -7.5q14 -2 22 -6.5t8 -16.5v-523q0 -6 -5.5 -10.5t-12.5 -4.5h-95q-9 0 -14 4.5t-5 10.5v200q-25 -2 -36.5 -2.5t-29.5 -0.5h-16l-133 -197q-3 -5 -7 -10 +t-12 -5h-114q-13 0 -13 9zM184 389q0 -50 34 -65.5t107 -15.5q6 0 15 0.5t18.5 0.5t18.5 0.5t14 0.5v156q-12 2 -31 3t-35 1q-71 0 -106 -15.5t-35 -58.5v-7z" /> + <glyph glyph-name="quotedbl" unicode="&#x22;" horiz-adv-x="420" +d="M407 750q0 -2 -2 -8l-68 -207q-5 -19 -19 -19h-80q-9 0 -9 10q0 6 1 9l51 207q4 19 20 19h94q12 0 12 -11zM207 750q0 -2 -2 -8l-68 -207q-5 -19 -19 -19h-80q-9 0 -9 10q0 6 1 9l51 207q4 19 20 19h94q12 0 12 -11z" /> + <glyph glyph-name="exclam" unicode="!" horiz-adv-x="256" +d="M181 234q0 -8 -6 -14t-14 -6h-65q-8 0 -14.5 6t-6.5 14l-15 508q0 8 6.5 13.5t14.5 5.5h95q8 0 14 -5.5t6 -13.5zM192 17q0 -8 -5.5 -14t-13.5 -6h-90q-8 0 -13.5 6t-5.5 14v113q0 19 19 19h90q19 0 19 -19v-113z" /> + <hkern u1="&#x28;" u2="j" k="-32" /> + <hkern u1="&#x2c;" u2="&#x2a;" k="70" /> + <hkern u1="&#x2e;" u2="&#x2a;" k="70" /> + <hkern u1="&#x2f;" u2="&#x119;" k="48" /> + <hkern u1="&#x2f;" u2="&#x109;" k="56" /> + <hkern u1="&#x2f;" u2="&#x10d;" k="56" /> + <hkern u1="&#x2f;" u2="&#x107;" k="56" /> + <hkern u1="&#x2f;" u2="&#xe7;" k="56" /> + <hkern u1="&#x2f;" u2="&#x153;" k="48" /> + <hkern u1="&#x2f;" u2="&#xf8;" k="48" /> + <hkern u1="&#x2f;" u2="o" k="48" /> + <hkern u1="&#x2f;" u2="e" k="48" /> + <hkern u1="&#x2f;" u2="c" k="56" /> + <hkern u1="&#x2f;" u2="q" k="48" /> + <hkern u1="&#x2f;" u2="&#x34;" k="40" /> + <hkern u1="&#x2f;" u2="&#x2f;" k="20" /> + <hkern u1="&#x37;" u2="&#x2026;" k="128" /> + <hkern u1="&#x37;" u2="&#x201e;" k="128" /> + <hkern u1="&#x37;" u2="&#x201a;" k="128" /> + <hkern u1="&#x37;" u2="&#x2e;" k="128" /> + <hkern u1="&#x37;" u2="&#x2c;" k="128" /> + <hkern u1="&#x37;" u2="&#x2f;" k="113" /> + <hkern u1="A" u2="v" k="46" /> + <hkern u1="A" u2="V" k="60" /> + <hkern u1="A" u2="Q" k="20" /> + <hkern u1="B" u2="&#x1ef2;" k="38" /> + <hkern u1="B" u2="&#x176;" k="38" /> + <hkern u1="B" u2="&#x162;" k="20" /> + <hkern u1="B" u2="&#x164;" k="20" /> + <hkern u1="B" u2="&#x166;" k="20" /> + <hkern u1="B" u2="&#x1fc;" k="18" /> + <hkern u1="B" u2="&#x104;" k="18" /> + <hkern u1="B" u2="&#x100;" k="18" /> + <hkern u1="B" u2="&#x102;" k="18" /> + <hkern u1="B" u2="&#x178;" k="38" /> + <hkern u1="B" u2="&#xdd;" k="38" /> + <hkern u1="B" u2="&#xc3;" k="18" /> + <hkern u1="B" u2="&#xc5;" k="18" /> + <hkern u1="B" u2="&#xc0;" k="18" /> + <hkern u1="B" u2="&#xc4;" k="18" /> + <hkern u1="B" u2="&#xc2;" k="18" /> + <hkern u1="B" u2="&#xc1;" k="18" /> + <hkern u1="B" u2="Y" k="38" /> + <hkern u1="B" u2="T" k="20" /> + <hkern u1="B" u2="A" k="18" /> + <hkern u1="B" u2="&#xc6;" k="28" /> + <hkern u1="B" u2="X" k="24" /> + <hkern u1="B" u2="V" k="24" /> + <hkern u1="C" u2="Q" k="25" /> + <hkern u1="D" u2="&#xc6;" k="16" /> + <hkern u1="D" u2="X" k="32" /> + <hkern u1="D" u2="V" k="25" /> + <hkern u1="F" u2="&#x169;" k="36" /> + <hkern u1="F" u2="&#x16f;" k="36" /> + <hkern u1="F" u2="&#x173;" k="36" /> + <hkern u1="F" u2="&#x16b;" k="36" /> + <hkern u1="F" u2="&#x171;" k="36" /> + <hkern u1="F" u2="&#x16d;" k="36" /> + <hkern u1="F" u2="&#x1ff;" k="45" /> + <hkern u1="F" u2="&#x14d;" k="45" /> + <hkern u1="F" u2="&#x151;" k="45" /> + <hkern u1="F" u2="&#x14f;" k="45" /> + <hkern u1="F" u2="&#x119;" k="45" /> + <hkern u1="F" u2="&#x1fd;" k="45" /> + <hkern u1="F" u2="&#x105;" k="45" /> + <hkern u1="F" u2="&#x101;" k="45" /> + <hkern u1="F" u2="&#x103;" k="45" /> + <hkern u1="F" u2="&#x1fe;" k="15" /> + <hkern u1="F" u2="&#x14c;" k="15" /> + <hkern u1="F" u2="&#x150;" k="15" /> + <hkern u1="F" u2="&#x14e;" k="15" /> + <hkern u1="F" u2="&#x120;" k="32" /> + <hkern u1="F" u2="&#x122;" k="32" /> + <hkern u1="F" u2="&#x11c;" k="32" /> + <hkern u1="F" u2="&#x11e;" k="32" /> + <hkern u1="F" u2="&#x1fc;" k="65" /> + <hkern u1="F" u2="&#x104;" k="65" /> + <hkern u1="F" u2="&#x100;" k="65" /> + <hkern u1="F" u2="&#x102;" k="65" /> + <hkern u1="F" u2="&#xf9;" k="36" /> + <hkern u1="F" u2="&#xfc;" k="36" /> + <hkern u1="F" u2="&#xfb;" k="36" /> + <hkern u1="F" u2="&#xfa;" k="36" /> + <hkern u1="F" u2="&#xf5;" k="45" /> + <hkern u1="F" u2="&#xf2;" k="45" /> + <hkern u1="F" u2="&#xf6;" k="45" /> + <hkern u1="F" u2="&#xf4;" k="45" /> + <hkern u1="F" u2="&#xf3;" k="45" /> + <hkern u1="F" u2="&#xe3;" k="45" /> + <hkern u1="F" u2="&#xe5;" k="45" /> + <hkern u1="F" u2="&#xe0;" k="45" /> + <hkern u1="F" u2="&#xe4;" k="45" /> + <hkern u1="F" u2="&#xe2;" k="45" /> + <hkern u1="F" u2="&#xe1;" k="45" /> + <hkern u1="F" u2="&#xd5;" k="15" /> + <hkern u1="F" u2="&#xd2;" k="15" /> + <hkern u1="F" u2="&#xd6;" k="15" /> + <hkern u1="F" u2="&#xd4;" k="15" /> + <hkern u1="F" u2="&#xd3;" k="15" /> + <hkern u1="F" u2="&#xc3;" k="65" /> + <hkern u1="F" u2="&#xc5;" k="65" /> + <hkern u1="F" u2="&#xc0;" k="65" /> + <hkern u1="F" u2="&#xc4;" k="65" /> + <hkern u1="F" u2="&#xc2;" k="65" /> + <hkern u1="F" u2="&#xc1;" k="65" /> + <hkern u1="F" u2="&#x153;" k="45" /> + <hkern u1="F" u2="&#xf8;" k="45" /> + <hkern u1="F" u2="&#xe6;" k="45" /> + <hkern u1="F" u2="&#x152;" k="15" /> + <hkern u1="F" u2="&#xd8;" k="15" /> + <hkern u1="F" u2="&#x2026;" k="130" /> + <hkern u1="F" u2="u" k="36" /> + <hkern u1="F" u2="o" k="45" /> + <hkern u1="F" u2="e" k="45" /> + <hkern u1="F" u2="a" k="45" /> + <hkern u1="F" u2="O" k="15" /> + <hkern u1="F" u2="G" k="32" /> + <hkern u1="F" u2="A" k="65" /> + <hkern u1="F" u2="&#x2e;" k="130" /> + <hkern u1="F" u2="&#x2c;" k="130" /> + <hkern u1="F" u2="&#xc6;" k="65" /> + <hkern u1="F" u2="&#x201e;" k="57" /> + <hkern u1="F" u2="&#x201a;" k="57" /> + <hkern u1="G" u2="V" k="9" /> + <hkern u1="K" u2="&#xc7;" k="33" /> + <hkern u1="K" u2="v" k="60" /> + <hkern u1="K" u2="q" k="37" /> + <hkern u1="K" u2="V" k="11" /> + <hkern u1="K" u2="Q" k="50" /> + <hkern u1="K" u2="&#x2d;" k="24" /> + <hkern u1="L" u2="&#xae;" k="36" /> + <hkern u1="L" u2="&#x2122;" k="36" /> + <hkern u1="L" u2="v" k="31" /> + <hkern u1="L" u2="V" k="70" /> + <hkern u1="L" u2="Q" k="35" /> + <hkern u1="L" u2="&#x2d;" k="24" /> + <hkern u1="M" u2="&#x1ef2;" k="40" /> + <hkern u1="M" u2="&#x176;" k="40" /> + <hkern u1="M" u2="&#x178;" k="40" /> + <hkern u1="M" u2="&#xdd;" k="40" /> + <hkern u1="M" u2="Y" k="40" /> + <hkern u1="M" u2="V" k="17" /> + <hkern u1="N" u2="V" k="22" /> + <hkern u1="O" u2="&#xc6;" k="20" /> + <hkern u1="O" u2="x" k="20" /> + <hkern u1="O" u2="X" k="54" /> + <hkern u1="O" u2="V" k="26" /> + <hkern u1="P" u2="&#xc6;" k="64" /> + <hkern u1="P" u2="&#x201e;" k="84" /> + <hkern u1="P" u2="&#x201a;" k="84" /> + <hkern u1="P" u2="X" k="32" /> + <hkern u1="Q" u2="&#x17b;" k="32" /> + <hkern u1="Q" u2="&#x179;" k="32" /> + <hkern u1="Q" u2="&#x1ef2;" k="43" /> + <hkern u1="Q" u2="&#x176;" k="43" /> + <hkern u1="Q" u2="&#x1e80;" k="10" /> + <hkern u1="Q" u2="&#x1e84;" k="10" /> + <hkern u1="Q" u2="&#x174;" k="10" /> + <hkern u1="Q" u2="&#x1e82;" k="10" /> + <hkern u1="Q" u2="&#x162;" k="35" /> + <hkern u1="Q" u2="&#x164;" k="35" /> + <hkern u1="Q" u2="&#x166;" k="35" /> + <hkern u1="Q" u2="&#x1fc;" k="20" /> + <hkern u1="Q" u2="&#x104;" k="20" /> + <hkern u1="Q" u2="&#x100;" k="20" /> + <hkern u1="Q" u2="&#x102;" k="20" /> + <hkern u1="Q" u2="&#x17d;" k="32" /> + <hkern u1="Q" u2="&#x178;" k="43" /> + <hkern u1="Q" u2="&#xdd;" k="43" /> + <hkern u1="Q" u2="&#xc3;" k="20" /> + <hkern u1="Q" u2="&#xc5;" k="20" /> + <hkern u1="Q" u2="&#xc0;" k="20" /> + <hkern u1="Q" u2="&#xc4;" k="20" /> + <hkern u1="Q" u2="&#xc2;" k="20" /> + <hkern u1="Q" u2="&#xc1;" k="20" /> + <hkern u1="Q" u2="Z" k="32" /> + <hkern u1="Q" u2="Y" k="43" /> + <hkern u1="Q" u2="W" k="10" /> + <hkern u1="Q" u2="T" k="35" /> + <hkern u1="Q" u2="A" k="20" /> + <hkern u1="Q" u2="&#xc6;" k="20" /> + <hkern u1="Q" u2="X" k="54" /> + <hkern u1="Q" u2="V" k="26" /> + <hkern u1="R" u2="V" k="32" /> + <hkern u1="R" u2="Q" k="20" /> + <hkern u1="S" u2="x" k="9" /> + <hkern u1="S" u2="v" k="13" /> + <hkern u1="S" u2="V" k="15" /> + <hkern u1="T" u2="&#xc6;" k="75" /> + <hkern u1="T" u2="x" k="24" /> + <hkern u1="T" u2="v" k="20" /> + <hkern u1="T" u2="q" k="70" /> + <hkern u1="T" u2="p" k="24" /> + <hkern u1="T" u2="m" k="24" /> + <hkern u1="T" u2="Q" k="35" /> + <hkern u1="T" u2="F" k="17" /> + <hkern u1="T" u2="&#x2f;" k="88" /> + <hkern u1="T" u2="&#x2d;" k="86" /> + <hkern u1="U" u2="&#xc6;" k="20" /> + <hkern u1="U" u2="X" k="24" /> + <hkern u1="V" u2="&#x17c;" k="18" /> + <hkern u1="V" u2="&#x17a;" k="18" /> + <hkern u1="V" u2="&#x1ef3;" k="20" /> + <hkern u1="V" u2="&#x177;" k="20" /> + <hkern u1="V" u2="&#x1e81;" k="15" /> + <hkern u1="V" u2="&#x1e85;" k="15" /> + <hkern u1="V" u2="&#x175;" k="15" /> + <hkern u1="V" u2="&#x1e83;" k="15" /> + <hkern u1="V" u2="&#x169;" k="34" /> + <hkern u1="V" u2="&#x16f;" k="34" /> + <hkern u1="V" u2="&#x173;" k="34" /> + <hkern u1="V" u2="&#x16b;" k="34" /> + <hkern u1="V" u2="&#x171;" k="34" /> + <hkern u1="V" u2="&#x16d;" k="34" /> + <hkern u1="V" u2="&#x219;" k="46" /> + <hkern u1="V" u2="&#x15d;" k="46" /> + <hkern u1="V" u2="&#x15f;" k="46" /> + <hkern u1="V" u2="&#x15b;" k="46" /> + <hkern u1="V" u2="&#x157;" k="29" /> + <hkern u1="V" u2="&#x159;" k="29" /> + <hkern u1="V" u2="&#x155;" k="29" /> + <hkern u1="V" u2="&#x1ff;" k="50" /> + <hkern u1="V" u2="&#x14d;" k="50" /> + <hkern u1="V" u2="&#x151;" k="50" /> + <hkern u1="V" u2="&#x14f;" k="50" /> + <hkern u1="V" u2="&#x129;" k="-20" /> + <hkern u1="V" u2="&#x12b;" k="-20" /> + <hkern u1="V" u2="&#x12d;" k="-20" /> + <hkern u1="V" u2="&#x121;" k="44" /> + <hkern u1="V" u2="&#x123;" k="44" /> + <hkern u1="V" u2="&#x11d;" k="44" /> + <hkern u1="V" u2="&#x11f;" k="44" /> + <hkern u1="V" u2="&#x119;" k="50" /> + <hkern u1="V" u2="&#x14b;" k="15" /> + <hkern u1="V" u2="&#x113;" k="50" /> + <hkern u1="V" u2="&#x117;" k="50" /> + <hkern u1="V" u2="&#x11b;" k="50" /> + <hkern u1="V" u2="&#x115;" k="50" /> + <hkern u1="V" u2="&#x109;" k="44" /> + <hkern u1="V" u2="&#x10d;" k="44" /> + <hkern u1="V" u2="&#x107;" k="44" /> + <hkern u1="V" u2="&#x1fd;" k="55" /> + <hkern u1="V" u2="&#x105;" k="55" /> + <hkern u1="V" u2="&#x101;" k="55" /> + <hkern u1="V" u2="&#x103;" k="55" /> + <hkern u1="V" u2="&#x218;" k="13" /> + <hkern u1="V" u2="&#x15c;" k="13" /> + <hkern u1="V" u2="&#x15e;" k="13" /> + <hkern u1="V" u2="&#x15a;" k="13" /> + <hkern u1="V" u2="&#x1fe;" k="26" /> + <hkern u1="V" u2="&#x14c;" k="26" /> + <hkern u1="V" u2="&#x150;" k="26" /> + <hkern u1="V" u2="&#x14e;" k="26" /> + <hkern u1="V" u2="&#x120;" k="22" /> + <hkern u1="V" u2="&#x122;" k="22" /> + <hkern u1="V" u2="&#x11c;" k="22" /> + <hkern u1="V" u2="&#x11e;" k="22" /> + <hkern u1="V" u2="&#x118;" k="37" /> + <hkern u1="V" u2="&#x112;" k="37" /> + <hkern u1="V" u2="&#x116;" k="37" /> + <hkern u1="V" u2="&#x11a;" k="37" /> + <hkern u1="V" u2="&#x114;" k="37" /> + <hkern u1="V" u2="&#x108;" k="25" /> + <hkern u1="V" u2="&#x10c;" k="25" /> + <hkern u1="V" u2="&#x106;" k="25" /> + <hkern u1="V" u2="&#x1fc;" k="60" /> + <hkern u1="V" u2="&#x104;" k="60" /> + <hkern u1="V" u2="&#x100;" k="60" /> + <hkern u1="V" u2="&#x102;" k="60" /> + <hkern u1="V" u2="&#x17e;" k="18" /> + <hkern u1="V" u2="&#xff;" k="20" /> + <hkern u1="V" u2="&#xfd;" k="20" /> + <hkern u1="V" u2="&#xf9;" k="34" /> + <hkern u1="V" u2="&#xfc;" k="34" /> + <hkern u1="V" u2="&#xfb;" k="34" /> + <hkern u1="V" u2="&#xfa;" k="34" /> + <hkern u1="V" u2="&#x161;" k="46" /> + <hkern u1="V" u2="&#xf5;" k="50" /> + <hkern u1="V" u2="&#xf2;" k="50" /> + <hkern u1="V" u2="&#xf6;" k="50" /> + <hkern u1="V" u2="&#xf4;" k="50" /> + <hkern u1="V" u2="&#xf3;" k="50" /> + <hkern u1="V" u2="&#xec;" k="-20" /> + <hkern u1="V" u2="&#xee;" k="-20" /> + <hkern u1="V" u2="&#xe8;" k="50" /> + <hkern u1="V" u2="&#xeb;" k="50" /> + <hkern u1="V" u2="&#xea;" k="50" /> + <hkern u1="V" u2="&#xe9;" k="50" /> + <hkern u1="V" u2="&#xe7;" k="44" /> + <hkern u1="V" u2="&#xe3;" k="55" /> + <hkern u1="V" u2="&#xe5;" k="55" /> + <hkern u1="V" u2="&#xe0;" k="55" /> + <hkern u1="V" u2="&#xe4;" k="55" /> + <hkern u1="V" u2="&#xe2;" k="55" /> + <hkern u1="V" u2="&#xe1;" k="55" /> + <hkern u1="V" u2="&#x160;" k="13" /> + <hkern u1="V" u2="&#xd5;" k="26" /> + <hkern u1="V" u2="&#xd2;" k="26" /> + <hkern u1="V" u2="&#xd6;" k="26" /> + <hkern u1="V" u2="&#xd4;" k="26" /> + <hkern u1="V" u2="&#xd3;" k="26" /> + <hkern u1="V" u2="&#xc8;" k="37" /> + <hkern u1="V" u2="&#xcb;" k="37" /> + <hkern u1="V" u2="&#xca;" k="37" /> + <hkern u1="V" u2="&#xc9;" k="37" /> + <hkern u1="V" u2="&#xc7;" k="25" /> + <hkern u1="V" u2="&#xc3;" k="60" /> + <hkern u1="V" u2="&#xc5;" k="60" /> + <hkern u1="V" u2="&#xc0;" k="60" /> + <hkern u1="V" u2="&#xc4;" k="60" /> + <hkern u1="V" u2="&#xc2;" k="60" /> + <hkern u1="V" u2="&#xc1;" k="60" /> + <hkern u1="V" u2="&#x153;" k="50" /> + <hkern u1="V" u2="&#xf8;" k="50" /> + <hkern u1="V" u2="&#xe6;" k="55" /> + <hkern u1="V" u2="&#x152;" k="26" /> + <hkern u1="V" u2="&#xd8;" k="26" /> + <hkern u1="V" u2="&#x2026;" k="62" /> + <hkern u1="V" u2="&#x201e;" k="62" /> + <hkern u1="V" u2="&#x201a;" k="62" /> + <hkern u1="V" u2="z" k="18" /> + <hkern u1="V" u2="y" k="20" /> + <hkern u1="V" u2="w" k="15" /> + <hkern u1="V" u2="u" k="34" /> + <hkern u1="V" u2="s" k="46" /> + <hkern u1="V" u2="r" k="29" /> + <hkern u1="V" u2="o" k="50" /> + <hkern u1="V" u2="n" k="15" /> + <hkern u1="V" u2="g" k="44" /> + <hkern u1="V" u2="e" k="50" /> + <hkern u1="V" u2="c" k="44" /> + <hkern u1="V" u2="a" k="55" /> + <hkern u1="V" u2="S" k="13" /> + <hkern u1="V" u2="O" k="26" /> + <hkern u1="V" u2="G" k="22" /> + <hkern u1="V" u2="E" k="37" /> + <hkern u1="V" u2="C" k="25" /> + <hkern u1="V" u2="A" k="60" /> + <hkern u1="V" u2="&#x2e;" k="62" /> + <hkern u1="V" u2="&#x2c;" k="62" /> + <hkern u1="V" u2="&#xef;" k="-16" /> + <hkern u1="V" u2="&#xc6;" k="60" /> + <hkern u1="V" u2="&#xbf;" k="97" /> + <hkern u1="V" u2="&#xa1;" k="15" /> + <hkern u1="V" u2="x" k="24" /> + <hkern u1="V" u2="v" k="15" /> + <hkern u1="V" u2="q" k="46" /> + <hkern u1="V" u2="p" k="15" /> + <hkern u1="V" u2="m" k="15" /> + <hkern u1="V" u2="Q" k="26" /> + <hkern u1="V" u2="F" k="20" /> + <hkern u1="V" u2="&#x2f;" k="64" /> + <hkern u1="W" u2="&#xc6;" k="25" /> + <hkern u1="W" u2="&#xbf;" k="66" /> + <hkern u1="W" u2="x" k="44" /> + <hkern u1="W" u2="Q" k="10" /> + <hkern u1="X" u2="&#x1ef3;" k="45" /> + <hkern u1="X" u2="&#x177;" k="45" /> + <hkern u1="X" u2="&#x169;" k="35" /> + <hkern u1="X" u2="&#x16f;" k="35" /> + <hkern u1="X" u2="&#x173;" k="35" /> + <hkern u1="X" u2="&#x16b;" k="35" /> + <hkern u1="X" u2="&#x171;" k="35" /> + <hkern u1="X" u2="&#x16d;" k="35" /> + <hkern u1="X" u2="&#x1ff;" k="40" /> + <hkern u1="X" u2="&#x14d;" k="40" /> + <hkern u1="X" u2="&#x151;" k="40" /> + <hkern u1="X" u2="&#x14f;" k="40" /> + <hkern u1="X" u2="&#x119;" k="30" /> + <hkern u1="X" u2="&#x113;" k="30" /> + <hkern u1="X" u2="&#x117;" k="30" /> + <hkern u1="X" u2="&#x11b;" k="30" /> + <hkern u1="X" u2="&#x115;" k="30" /> + <hkern u1="X" u2="&#x1fd;" k="30" /> + <hkern u1="X" u2="&#x105;" k="30" /> + <hkern u1="X" u2="&#x101;" k="30" /> + <hkern u1="X" u2="&#x103;" k="30" /> + <hkern u1="X" u2="&#x168;" k="24" /> + <hkern u1="X" u2="&#x16e;" k="24" /> + <hkern u1="X" u2="&#x172;" k="24" /> + <hkern u1="X" u2="&#x16a;" k="24" /> + <hkern u1="X" u2="&#x170;" k="24" /> + <hkern u1="X" u2="&#x16c;" k="24" /> + <hkern u1="X" u2="&#x1fe;" k="54" /> + <hkern u1="X" u2="&#x14c;" k="54" /> + <hkern u1="X" u2="&#x150;" k="54" /> + <hkern u1="X" u2="&#x14e;" k="54" /> + <hkern u1="X" u2="&#x13f;" k="20" /> + <hkern u1="X" u2="&#x13b;" k="20" /> + <hkern u1="X" u2="&#x13d;" k="20" /> + <hkern u1="X" u2="&#x139;" k="20" /> + <hkern u1="X" u2="&#x120;" k="43" /> + <hkern u1="X" u2="&#x122;" k="43" /> + <hkern u1="X" u2="&#x11c;" k="43" /> + <hkern u1="X" u2="&#x11e;" k="43" /> + <hkern u1="X" u2="&#x118;" k="32" /> + <hkern u1="X" u2="&#x112;" k="32" /> + <hkern u1="X" u2="&#x116;" k="32" /> + <hkern u1="X" u2="&#x11a;" k="32" /> + <hkern u1="X" u2="&#x114;" k="32" /> + <hkern u1="X" u2="&#x108;" k="40" /> + <hkern u1="X" u2="&#x10c;" k="40" /> + <hkern u1="X" u2="&#x106;" k="40" /> + <hkern u1="X" u2="&#xff;" k="45" /> + <hkern u1="X" u2="&#xfd;" k="45" /> + <hkern u1="X" u2="&#xf9;" k="35" /> + <hkern u1="X" u2="&#xfc;" k="35" /> + <hkern u1="X" u2="&#xfb;" k="35" /> + <hkern u1="X" u2="&#xfa;" k="35" /> + <hkern u1="X" u2="&#xf5;" k="40" /> + <hkern u1="X" u2="&#xf2;" k="40" /> + <hkern u1="X" u2="&#xf6;" k="40" /> + <hkern u1="X" u2="&#xf4;" k="40" /> + <hkern u1="X" u2="&#xf3;" k="40" /> + <hkern u1="X" u2="&#xe8;" k="30" /> + <hkern u1="X" u2="&#xeb;" k="30" /> + <hkern u1="X" u2="&#xea;" k="30" /> + <hkern u1="X" u2="&#xe9;" k="30" /> + <hkern u1="X" u2="&#xe3;" k="30" /> + <hkern u1="X" u2="&#xe5;" k="30" /> + <hkern u1="X" u2="&#xe0;" k="30" /> + <hkern u1="X" u2="&#xe4;" k="30" /> + <hkern u1="X" u2="&#xe2;" k="30" /> + <hkern u1="X" u2="&#xe1;" k="30" /> + <hkern u1="X" u2="&#xd9;" k="24" /> + <hkern u1="X" u2="&#xdc;" k="24" /> + <hkern u1="X" u2="&#xdb;" k="24" /> + <hkern u1="X" u2="&#xda;" k="24" /> + <hkern u1="X" u2="&#xd5;" k="54" /> + <hkern u1="X" u2="&#xd2;" k="54" /> + <hkern u1="X" u2="&#xd6;" k="54" /> + <hkern u1="X" u2="&#xd4;" k="54" /> + <hkern u1="X" u2="&#xd3;" k="54" /> + <hkern u1="X" u2="&#xc8;" k="32" /> + <hkern u1="X" u2="&#xcb;" k="32" /> + <hkern u1="X" u2="&#xca;" k="32" /> + <hkern u1="X" u2="&#xc9;" k="32" /> + <hkern u1="X" u2="&#xc7;" k="40" /> + <hkern u1="X" u2="&#x153;" k="40" /> + <hkern u1="X" u2="&#xf8;" k="40" /> + <hkern u1="X" u2="&#xe6;" k="30" /> + <hkern u1="X" u2="&#x152;" k="54" /> + <hkern u1="X" u2="&#xd8;" k="54" /> + <hkern u1="X" u2="&#x141;" k="20" /> + <hkern u1="X" u2="&#x2014;" k="65" /> + <hkern u1="X" u2="&#x2013;" k="65" /> + <hkern u1="X" u2="y" k="45" /> + <hkern u1="X" u2="u" k="35" /> + <hkern u1="X" u2="o" k="40" /> + <hkern u1="X" u2="e" k="30" /> + <hkern u1="X" u2="a" k="30" /> + <hkern u1="X" u2="U" k="24" /> + <hkern u1="X" u2="O" k="54" /> + <hkern u1="X" u2="L" k="20" /> + <hkern u1="X" u2="G" k="43" /> + <hkern u1="X" u2="E" k="32" /> + <hkern u1="X" u2="C" k="40" /> + <hkern u1="X" u2="v" k="42" /> + <hkern u1="X" u2="Q" k="54" /> + <hkern u1="X" u2="&#x2d;" k="65" /> + <hkern u1="Y" u2="&#xc6;" k="75" /> + <hkern u1="Y" u2="&#xbf;" k="136" /> + <hkern u1="Y" u2="&#xa1;" k="55" /> + <hkern u1="Y" u2="x" k="44" /> + <hkern u1="Y" u2="v" k="51" /> + <hkern u1="Y" u2="q" k="92" /> + <hkern u1="Y" u2="p" k="71" /> + <hkern u1="Y" u2="m" k="47" /> + <hkern u1="Y" u2="Q" k="43" /> + <hkern u1="Y" u2="F" k="30" /> + <hkern u1="Y" u2="&#x2f;" k="95" /> + <hkern u1="Y" u2="&#x2d;" k="49" /> + <hkern u1="Z" u2="v" k="20" /> + <hkern u1="Z" u2="Q" k="20" /> + <hkern u1="[" u2="j" k="-32" /> + <hkern u1="&#x2018;" u2="&#x1fc;" k="40" /> + <hkern u1="&#x2018;" u2="&#x104;" k="40" /> + <hkern u1="&#x2018;" u2="&#x100;" k="40" /> + <hkern u1="&#x2018;" u2="&#x102;" k="40" /> + <hkern u1="&#x2018;" u2="&#xc3;" k="40" /> + <hkern u1="&#x2018;" u2="&#xc5;" k="40" /> + <hkern u1="&#x2018;" u2="&#xc0;" k="40" /> + <hkern u1="&#x2018;" u2="&#xc4;" k="40" /> + <hkern u1="&#x2018;" u2="&#xc2;" k="40" /> + <hkern u1="&#x2018;" u2="&#xc1;" k="40" /> + <hkern u1="&#x2018;" u2="A" k="40" /> + <hkern u1="a" u2="v" k="25" /> + <hkern u1="b" g2="f_k" k="20" /> + <hkern u1="b" g2="f_f_j" k="20" /> + <hkern u1="b" g2="f_j" k="20" /> + <hkern u1="b" g2="f_h" k="20" /> + <hkern u1="b" g2="f_f_k" k="20" /> + <hkern u1="b" g2="f_f_h" k="20" /> + <hkern u1="b" g2="f_f_b" k="20" /> + <hkern u1="b" g2="f_b" k="20" /> + <hkern u1="b" g2="f_f_l" k="20" /> + <hkern u1="b" g2="f_f_i" k="20" /> + <hkern u1="b" g2="f_f" k="20" /> + <hkern u1="b" u2="x" k="22" /> + <hkern u1="b" u2="v" k="20" /> + <hkern u1="c" u2="&#xe7;" k="24" /> + <hkern u1="c" u2="q" k="15" /> + <hkern u1="e" g2="f_k" k="20" /> + <hkern u1="e" g2="f_f_j" k="20" /> + <hkern u1="e" g2="f_j" k="20" /> + <hkern u1="e" g2="f_h" k="20" /> + <hkern u1="e" g2="f_f_k" k="20" /> + <hkern u1="e" g2="f_f_h" k="20" /> + <hkern u1="e" g2="f_f_b" k="20" /> + <hkern u1="e" g2="f_b" k="20" /> + <hkern u1="e" g2="f_f_l" k="20" /> + <hkern u1="e" g2="f_f_i" k="20" /> + <hkern u1="e" g2="f_f" k="20" /> + <hkern u1="e" u2="x" k="24" /> + <hkern u1="e" u2="v" k="20" /> + <hkern u1="f" u2="&#x219;" k="10" /> + <hkern u1="f" u2="&#x15d;" k="10" /> + <hkern u1="f" u2="&#x15f;" k="10" /> + <hkern u1="f" u2="&#x15b;" k="10" /> + <hkern u1="f" u2="&#x1ff;" k="25" /> + <hkern u1="f" u2="&#x14d;" k="25" /> + <hkern u1="f" u2="&#x151;" k="25" /> + <hkern u1="f" u2="&#x14f;" k="25" /> + <hkern u1="f" u2="&#x121;" k="13" /> + <hkern u1="f" u2="&#x123;" k="13" /> + <hkern u1="f" u2="&#x11d;" k="13" /> + <hkern u1="f" u2="&#x11f;" k="13" /> + <hkern u1="f" u2="&#x119;" k="20" /> + <hkern u1="f" u2="&#x113;" k="20" /> + <hkern u1="f" u2="&#x117;" k="20" /> + <hkern u1="f" u2="&#x11b;" k="20" /> + <hkern u1="f" u2="&#x115;" k="20" /> + <hkern u1="f" u2="&#x109;" k="13" /> + <hkern u1="f" u2="&#x10d;" k="13" /> + <hkern u1="f" u2="&#x107;" k="13" /> + <hkern u1="f" u2="&#x161;" k="10" /> + <hkern u1="f" u2="&#xf5;" k="25" /> + <hkern u1="f" u2="&#xf2;" k="25" /> + <hkern u1="f" u2="&#xf6;" k="25" /> + <hkern u1="f" u2="&#xf4;" k="25" /> + <hkern u1="f" u2="&#xf3;" k="25" /> + <hkern u1="f" u2="&#xe8;" k="20" /> + <hkern u1="f" u2="&#xeb;" k="20" /> + <hkern u1="f" u2="&#xea;" k="20" /> + <hkern u1="f" u2="&#xe9;" k="20" /> + <hkern u1="f" u2="&#xe7;" k="13" /> + <hkern u1="f" u2="&#x153;" k="25" /> + <hkern u1="f" u2="&#xf8;" k="25" /> + <hkern u1="f" u2="&#x2026;" k="57" /> + <hkern u1="f" u2="&#x201e;" k="57" /> + <hkern u1="f" u2="&#x201a;" k="57" /> + <hkern u1="f" u2="s" k="10" /> + <hkern u1="f" u2="o" k="25" /> + <hkern u1="f" u2="g" k="13" /> + <hkern u1="f" u2="e" k="20" /> + <hkern u1="f" u2="c" k="13" /> + <hkern u1="f" u2="&#x2e;" k="57" /> + <hkern u1="f" u2="&#x2c;" k="57" /> + <hkern u1="f" u2="q" k="20" /> + <hkern u1="h" u2="v" k="20" /> + <hkern u1="k" u2="q" k="35" /> + <hkern u1="m" u2="&#x1ef3;" k="15" /> + <hkern u1="m" u2="&#x177;" k="15" /> + <hkern u1="m" u2="&#x163;" k="20" /> + <hkern u1="m" u2="&#x165;" k="20" /> + <hkern u1="m" u2="&#x167;" k="20" /> + <hkern u1="m" u2="&#xff;" k="15" /> + <hkern u1="m" u2="&#xfd;" k="15" /> + <hkern u1="m" g2="fl" k="20" /> + <hkern u1="m" g2="fi" k="20" /> + <hkern u1="m" u2="y" k="15" /> + <hkern u1="m" u2="t" k="20" /> + <hkern u1="m" u2="f" k="20" /> + <hkern u1="m" u2="v" k="20" /> + <hkern u1="n" u2="v" k="25" /> + <hkern u1="o" g2="f_k" k="20" /> + <hkern u1="o" g2="f_f_j" k="20" /> + <hkern u1="o" g2="f_j" k="20" /> + <hkern u1="o" g2="f_h" k="20" /> + <hkern u1="o" g2="f_f_k" k="20" /> + <hkern u1="o" g2="f_f_h" k="20" /> + <hkern u1="o" g2="f_f_b" k="20" /> + <hkern u1="o" g2="f_b" k="20" /> + <hkern u1="o" g2="f_f_l" k="20" /> + <hkern u1="o" g2="f_f_i" k="20" /> + <hkern u1="o" g2="f_f" k="20" /> + <hkern u1="o" u2="x" k="40" /> + <hkern u1="o" u2="v" k="25" /> + <hkern u1="p" u2="&#x1ef3;" k="20" /> + <hkern u1="p" u2="&#x177;" k="20" /> + <hkern u1="p" u2="&#x1e81;" k="10" /> + <hkern u1="p" u2="&#x1e85;" k="10" /> + <hkern u1="p" u2="&#x175;" k="10" /> + <hkern u1="p" u2="&#x1e83;" k="10" /> + <hkern u1="p" u2="&#x163;" k="20" /> + <hkern u1="p" u2="&#x165;" k="20" /> + <hkern u1="p" u2="&#x167;" k="20" /> + <hkern u1="p" u2="&#xff;" k="20" /> + <hkern u1="p" u2="&#xfd;" k="20" /> + <hkern u1="p" g2="fl" k="20" /> + <hkern u1="p" g2="fi" k="20" /> + <hkern u1="p" u2="y" k="20" /> + <hkern u1="p" u2="w" k="10" /> + <hkern u1="p" u2="t" k="20" /> + <hkern u1="p" u2="f" k="20" /> + <hkern u1="p" g2="f_k" k="20" /> + <hkern u1="p" g2="f_f_j" k="20" /> + <hkern u1="p" g2="f_j" k="20" /> + <hkern u1="p" g2="f_h" k="20" /> + <hkern u1="p" g2="f_f_k" k="20" /> + <hkern u1="p" g2="f_f_h" k="20" /> + <hkern u1="p" g2="f_f_b" k="20" /> + <hkern u1="p" g2="f_b" k="20" /> + <hkern u1="p" g2="f_f_l" k="20" /> + <hkern u1="p" g2="f_f_i" k="20" /> + <hkern u1="p" g2="f_f" k="20" /> + <hkern u1="p" u2="x" k="30" /> + <hkern u1="p" u2="v" k="20" /> + <hkern u1="r" u2="q" k="18" /> + <hkern u1="s" u2="v" k="9" /> + <hkern u1="t" u2="q" k="9" /> + <hkern u1="v" u2="&#x1ff;" k="25" /> + <hkern u1="v" u2="&#x14d;" k="25" /> + <hkern u1="v" u2="&#x151;" k="25" /> + <hkern u1="v" u2="&#x14f;" k="25" /> + <hkern u1="v" u2="&#x121;" k="32" /> + <hkern u1="v" u2="&#x123;" k="32" /> + <hkern u1="v" u2="&#x11d;" k="32" /> + <hkern u1="v" u2="&#x11f;" k="32" /> + <hkern u1="v" u2="&#x119;" k="20" /> + <hkern u1="v" u2="&#x113;" k="20" /> + <hkern u1="v" u2="&#x117;" k="20" /> + <hkern u1="v" u2="&#x11b;" k="20" /> + <hkern u1="v" u2="&#x115;" k="20" /> + <hkern u1="v" u2="&#x111;" k="20" /> + <hkern u1="v" u2="&#x10f;" k="20" /> + <hkern u1="v" u2="&#x1fd;" k="22" /> + <hkern u1="v" u2="&#x105;" k="22" /> + <hkern u1="v" u2="&#x101;" k="22" /> + <hkern u1="v" u2="&#x103;" k="22" /> + <hkern u1="v" u2="&#xf5;" k="25" /> + <hkern u1="v" u2="&#xf2;" k="25" /> + <hkern u1="v" u2="&#xf6;" k="25" /> + <hkern u1="v" u2="&#xf4;" k="25" /> + <hkern u1="v" u2="&#xf3;" k="25" /> + <hkern u1="v" u2="&#xe8;" k="20" /> + <hkern u1="v" u2="&#xeb;" k="20" /> + <hkern u1="v" u2="&#xea;" k="20" /> + <hkern u1="v" u2="&#xe9;" k="20" /> + <hkern u1="v" u2="&#xe3;" k="22" /> + <hkern u1="v" u2="&#xe5;" k="22" /> + <hkern u1="v" u2="&#xe0;" k="22" /> + <hkern u1="v" u2="&#xe4;" k="22" /> + <hkern u1="v" u2="&#xe2;" k="22" /> + <hkern u1="v" u2="&#xe1;" k="22" /> + <hkern u1="v" u2="&#x153;" k="25" /> + <hkern u1="v" u2="&#xf8;" k="25" /> + <hkern u1="v" u2="&#xe6;" k="22" /> + <hkern u1="v" u2="&#x2026;" k="50" /> + <hkern u1="v" u2="o" k="25" /> + <hkern u1="v" u2="g" k="32" /> + <hkern u1="v" u2="e" k="20" /> + <hkern u1="v" u2="d" k="20" /> + <hkern u1="v" u2="a" k="22" /> + <hkern u1="v" u2="&#x2e;" k="50" /> + <hkern u1="v" u2="&#x2c;" k="55" /> + <hkern u1="v" u2="&#x201e;" k="50" /> + <hkern u1="v" u2="&#x201a;" k="50" /> + <hkern u1="v" u2="q" k="24" /> + <hkern u1="x" u2="&#x1e81;" k="35" /> + <hkern u1="x" u2="&#x1e85;" k="35" /> + <hkern u1="x" u2="&#x175;" k="35" /> + <hkern u1="x" u2="&#x1e83;" k="35" /> + <hkern u1="x" u2="&#x169;" k="35" /> + <hkern u1="x" u2="&#x16f;" k="35" /> + <hkern u1="x" u2="&#x173;" k="35" /> + <hkern u1="x" u2="&#x16b;" k="35" /> + <hkern u1="x" u2="&#x171;" k="35" /> + <hkern u1="x" u2="&#x16d;" k="35" /> + <hkern u1="x" u2="&#x163;" k="24" /> + <hkern u1="x" u2="&#x165;" k="24" /> + <hkern u1="x" u2="&#x167;" k="24" /> + <hkern u1="x" u2="&#x1ff;" k="40" /> + <hkern u1="x" u2="&#x14d;" k="40" /> + <hkern u1="x" u2="&#x151;" k="40" /> + <hkern u1="x" u2="&#x14f;" k="40" /> + <hkern u1="x" u2="&#x121;" k="40" /> + <hkern u1="x" u2="&#x123;" k="40" /> + <hkern u1="x" u2="&#x11d;" k="40" /> + <hkern u1="x" u2="&#x11f;" k="40" /> + <hkern u1="x" u2="&#x119;" k="45" /> + <hkern u1="x" u2="&#x113;" k="45" /> + <hkern u1="x" u2="&#x117;" k="45" /> + <hkern u1="x" u2="&#x11b;" k="45" /> + <hkern u1="x" u2="&#x115;" k="45" /> + <hkern u1="x" u2="&#x111;" k="43" /> + <hkern u1="x" u2="&#x10f;" k="43" /> + <hkern u1="x" u2="&#x109;" k="30" /> + <hkern u1="x" u2="&#x10d;" k="30" /> + <hkern u1="x" u2="&#x107;" k="30" /> + <hkern u1="x" u2="&#xf9;" k="35" /> + <hkern u1="x" u2="&#xfc;" k="35" /> + <hkern u1="x" u2="&#xfb;" k="35" /> + <hkern u1="x" u2="&#xfa;" k="35" /> + <hkern u1="x" u2="&#xf5;" k="40" /> + <hkern u1="x" u2="&#xf2;" k="40" /> + <hkern u1="x" u2="&#xf6;" k="40" /> + <hkern u1="x" u2="&#xf4;" k="40" /> + <hkern u1="x" u2="&#xf3;" k="40" /> + <hkern u1="x" u2="&#xe8;" k="45" /> + <hkern u1="x" u2="&#xeb;" k="45" /> + <hkern u1="x" u2="&#xea;" k="45" /> + <hkern u1="x" u2="&#xe9;" k="45" /> + <hkern u1="x" u2="&#xe7;" k="30" /> + <hkern u1="x" u2="&#x153;" k="40" /> + <hkern u1="x" u2="&#xf8;" k="40" /> + <hkern u1="x" u2="w" k="35" /> + <hkern u1="x" u2="u" k="35" /> + <hkern u1="x" u2="t" k="24" /> + <hkern u1="x" u2="o" k="40" /> + <hkern u1="x" u2="g" k="40" /> + <hkern u1="x" u2="e" k="45" /> + <hkern u1="x" u2="d" k="43" /> + <hkern u1="x" u2="c" k="30" /> + <hkern u1="x" u2="q" k="49" /> + <hkern u1="y" u2="&#x201e;" k="50" /> + <hkern u1="y" u2="&#x201a;" k="50" /> + <hkern u1="y" u2="q" k="20" /> + <hkern u1="&#x7b;" u2="j" k="-32" /> + <hkern u1="&#xa1;" u2="&#x1ef2;" k="55" /> + <hkern u1="&#xa1;" u2="&#x176;" k="55" /> + <hkern u1="&#xa1;" u2="&#x178;" k="55" /> + <hkern u1="&#xa1;" u2="&#xdd;" k="55" /> + <hkern u1="&#xa1;" u2="Y" k="55" /> + <hkern u1="&#xa1;" u2="V" k="15" /> + <hkern u1="&#x201a;" u2="&#x2a;" k="70" /> + <hkern u1="&#x201e;" u2="&#x2a;" k="70" /> + <hkern u1="&#x2026;" u2="&#x2a;" k="70" /> + <hkern u1="&#xbf;" u2="&#x1ef2;" k="81" /> + <hkern u1="&#xbf;" u2="&#x176;" k="81" /> + <hkern u1="&#xbf;" u2="&#x178;" k="81" /> + <hkern u1="&#xbf;" u2="&#xdd;" k="81" /> + <hkern u1="&#xbf;" u2="Y" k="81" /> + <hkern u1="&#xbf;" u2="V" k="60" /> + <hkern u1="&#x141;" u2="&#xae;" k="36" /> + <hkern u1="&#x141;" u2="&#x2122;" k="36" /> + <hkern u1="&#x141;" u2="v" k="31" /> + <hkern u1="&#x141;" u2="V" k="70" /> + <hkern u1="&#x141;" u2="Q" k="35" /> + <hkern u1="&#x141;" u2="&#x2d;" k="24" /> + <hkern u1="&#xd8;" u2="&#xc6;" k="20" /> + <hkern u1="&#xd8;" u2="x" k="20" /> + <hkern u1="&#xd8;" u2="X" k="54" /> + <hkern u1="&#xd8;" u2="V" k="26" /> + <hkern u1="&#xe6;" g2="f_k" k="20" /> + <hkern u1="&#xe6;" g2="f_f_j" k="20" /> + <hkern u1="&#xe6;" g2="f_j" k="20" /> + <hkern u1="&#xe6;" g2="f_h" k="20" /> + <hkern u1="&#xe6;" g2="f_f_k" k="20" /> + <hkern u1="&#xe6;" g2="f_f_h" k="20" /> + <hkern u1="&#xe6;" g2="f_f_b" k="20" /> + <hkern u1="&#xe6;" g2="f_b" k="20" /> + <hkern u1="&#xe6;" g2="f_f_l" k="20" /> + <hkern u1="&#xe6;" g2="f_f_i" k="20" /> + <hkern u1="&#xe6;" g2="f_f" k="20" /> + <hkern u1="&#xe6;" u2="x" k="24" /> + <hkern u1="&#xe6;" u2="v" k="20" /> + <hkern u1="&#xf8;" g2="f_k" k="20" /> + <hkern u1="&#xf8;" g2="f_f_j" k="20" /> + <hkern u1="&#xf8;" g2="f_j" k="20" /> + <hkern u1="&#xf8;" g2="f_h" k="20" /> + <hkern u1="&#xf8;" g2="f_f_k" k="20" /> + <hkern u1="&#xf8;" g2="f_f_h" k="20" /> + <hkern u1="&#xf8;" g2="f_f_b" k="20" /> + <hkern u1="&#xf8;" g2="f_b" k="20" /> + <hkern u1="&#xf8;" g2="f_f_l" k="20" /> + <hkern u1="&#xf8;" g2="f_f_i" k="20" /> + <hkern u1="&#xf8;" g2="f_f" k="20" /> + <hkern u1="&#xf8;" u2="x" k="40" /> + <hkern u1="&#xf8;" u2="v" k="25" /> + <hkern u1="&#x153;" g2="f_k" k="20" /> + <hkern u1="&#x153;" g2="f_f_j" k="20" /> + <hkern u1="&#x153;" g2="f_j" k="20" /> + <hkern u1="&#x153;" g2="f_h" k="20" /> + <hkern u1="&#x153;" g2="f_f_k" k="20" /> + <hkern u1="&#x153;" g2="f_f_h" k="20" /> + <hkern u1="&#x153;" g2="f_f_b" k="20" /> + <hkern u1="&#x153;" g2="f_b" k="20" /> + <hkern u1="&#x153;" g2="f_f_l" k="20" /> + <hkern u1="&#x153;" g2="f_f_i" k="20" /> + <hkern u1="&#x153;" g2="f_f" k="20" /> + <hkern u1="&#x153;" u2="x" k="24" /> + <hkern u1="&#x153;" u2="v" k="20" /> + <hkern u1="&#xd0;" u2="&#xc6;" k="16" /> + <hkern u1="&#xd0;" u2="X" k="32" /> + <hkern u1="&#xd0;" u2="V" k="25" /> + <hkern u1="&#xde;" u2="&#xc6;" k="64" /> + <hkern u1="&#xde;" u2="&#x201e;" k="84" /> + <hkern u1="&#xde;" u2="&#x201a;" k="84" /> + <hkern u1="&#xde;" u2="X" k="32" /> + <hkern u1="&#xfe;" g2="f_k" k="20" /> + <hkern u1="&#xfe;" g2="f_f_j" k="20" /> + <hkern u1="&#xfe;" g2="f_j" k="20" /> + <hkern u1="&#xfe;" g2="f_h" k="20" /> + <hkern u1="&#xfe;" g2="f_f_k" k="20" /> + <hkern u1="&#xfe;" g2="f_f_h" k="20" /> + <hkern u1="&#xfe;" g2="f_f_b" k="20" /> + <hkern u1="&#xfe;" g2="f_b" k="20" /> + <hkern u1="&#xfe;" g2="f_f_l" k="20" /> + <hkern u1="&#xfe;" g2="f_f_i" k="20" /> + <hkern u1="&#xfe;" g2="f_f" k="20" /> + <hkern u1="&#xfe;" u2="x" k="22" /> + <hkern u1="&#xfe;" u2="v" k="20" /> + <hkern u1="&#xc1;" u2="v" k="46" /> + <hkern u1="&#xc1;" u2="V" k="60" /> + <hkern u1="&#xc1;" u2="Q" k="20" /> + <hkern u1="&#xc2;" u2="v" k="46" /> + <hkern u1="&#xc2;" u2="V" k="60" /> + <hkern u1="&#xc2;" u2="Q" k="20" /> + <hkern u1="&#xc4;" u2="v" k="46" /> + <hkern u1="&#xc4;" u2="V" k="60" /> + <hkern u1="&#xc4;" u2="Q" k="20" /> + <hkern u1="&#xc0;" u2="v" k="46" /> + <hkern u1="&#xc0;" u2="V" k="60" /> + <hkern u1="&#xc0;" u2="Q" k="20" /> + <hkern u1="&#xc5;" u2="v" k="46" /> + <hkern u1="&#xc5;" u2="V" k="60" /> + <hkern u1="&#xc5;" u2="Q" k="20" /> + <hkern u1="&#xc3;" u2="v" k="46" /> + <hkern u1="&#xc3;" u2="V" k="60" /> + <hkern u1="&#xc3;" u2="Q" k="20" /> + <hkern u1="&#xc7;" u2="Q" k="25" /> + <hkern u1="&#xd1;" u2="V" k="22" /> + <hkern u1="&#xd3;" u2="&#xc6;" k="20" /> + <hkern u1="&#xd3;" u2="x" k="20" /> + <hkern u1="&#xd3;" u2="X" k="54" /> + <hkern u1="&#xd3;" u2="V" k="26" /> + <hkern u1="&#xd4;" u2="&#xc6;" k="20" /> + <hkern u1="&#xd4;" u2="x" k="20" /> + <hkern u1="&#xd4;" u2="X" k="54" /> + <hkern u1="&#xd4;" u2="V" k="26" /> + <hkern u1="&#xd6;" u2="&#xc6;" k="20" /> + <hkern u1="&#xd6;" u2="x" k="20" /> + <hkern u1="&#xd6;" u2="X" k="54" /> + <hkern u1="&#xd6;" u2="V" k="26" /> + <hkern u1="&#xd2;" u2="&#xc6;" k="20" /> + <hkern u1="&#xd2;" u2="x" k="20" /> + <hkern u1="&#xd2;" u2="X" k="54" /> + <hkern u1="&#xd2;" u2="V" k="26" /> + <hkern u1="&#xd5;" u2="&#xc6;" k="20" /> + <hkern u1="&#xd5;" u2="x" k="20" /> + <hkern u1="&#xd5;" u2="X" k="54" /> + <hkern u1="&#xd5;" u2="V" k="26" /> + <hkern u1="&#x160;" u2="x" k="9" /> + <hkern u1="&#x160;" u2="v" k="13" /> + <hkern u1="&#x160;" u2="V" k="15" /> + <hkern u1="&#xda;" u2="&#xc6;" k="20" /> + <hkern u1="&#xda;" u2="X" k="24" /> + <hkern u1="&#xdb;" u2="&#xc6;" k="20" /> + <hkern u1="&#xdb;" u2="X" k="24" /> + <hkern u1="&#xdc;" u2="&#xc6;" k="20" /> + <hkern u1="&#xdc;" u2="X" k="24" /> + <hkern u1="&#xd9;" u2="&#xc6;" k="20" /> + <hkern u1="&#xd9;" u2="X" k="24" /> + <hkern u1="&#xdd;" u2="&#xc6;" k="75" /> + <hkern u1="&#xdd;" u2="&#xbf;" k="136" /> + <hkern u1="&#xdd;" u2="&#xa1;" k="55" /> + <hkern u1="&#xdd;" u2="x" k="44" /> + <hkern u1="&#xdd;" u2="v" k="51" /> + <hkern u1="&#xdd;" u2="q" k="92" /> + <hkern u1="&#xdd;" u2="p" k="71" /> + <hkern u1="&#xdd;" u2="m" k="47" /> + <hkern u1="&#xdd;" u2="Q" k="43" /> + <hkern u1="&#xdd;" u2="F" k="30" /> + <hkern u1="&#xdd;" u2="&#x2f;" k="95" /> + <hkern u1="&#xdd;" u2="&#x2d;" k="49" /> + <hkern u1="&#x178;" u2="&#xc6;" k="75" /> + <hkern u1="&#x178;" u2="&#xbf;" k="136" /> + <hkern u1="&#x178;" u2="&#xa1;" k="55" /> + <hkern u1="&#x178;" u2="x" k="44" /> + <hkern u1="&#x178;" u2="v" k="51" /> + <hkern u1="&#x178;" u2="q" k="92" /> + <hkern u1="&#x178;" u2="p" k="71" /> + <hkern u1="&#x178;" u2="m" k="47" /> + <hkern u1="&#x178;" u2="Q" k="43" /> + <hkern u1="&#x178;" u2="F" k="30" /> + <hkern u1="&#x178;" u2="&#x2f;" k="95" /> + <hkern u1="&#x178;" u2="&#x2d;" k="49" /> + <hkern u1="&#x17d;" u2="v" k="20" /> + <hkern u1="&#x17d;" u2="Q" k="20" /> + <hkern u1="&#xe1;" u2="v" k="25" /> + <hkern u1="&#xe2;" u2="v" k="25" /> + <hkern u1="&#xe4;" u2="v" k="25" /> + <hkern u1="&#xe0;" u2="v" k="25" /> + <hkern u1="&#xe5;" u2="v" k="25" /> + <hkern u1="&#xe3;" u2="v" k="25" /> + <hkern u1="&#xe7;" u2="&#xe7;" k="24" /> + <hkern u1="&#xe7;" u2="q" k="15" /> + <hkern u1="&#xe9;" g2="f_k" k="20" /> + <hkern u1="&#xe9;" g2="f_f_j" k="20" /> + <hkern u1="&#xe9;" g2="f_j" k="20" /> + <hkern u1="&#xe9;" g2="f_h" k="20" /> + <hkern u1="&#xe9;" g2="f_f_k" k="20" /> + <hkern u1="&#xe9;" g2="f_f_h" k="20" /> + <hkern u1="&#xe9;" g2="f_f_b" k="20" /> + <hkern u1="&#xe9;" g2="f_b" k="20" /> + <hkern u1="&#xe9;" g2="f_f_l" k="20" /> + <hkern u1="&#xe9;" g2="f_f_i" k="20" /> + <hkern u1="&#xe9;" g2="f_f" k="20" /> + <hkern u1="&#xe9;" u2="x" k="24" /> + <hkern u1="&#xe9;" u2="v" k="20" /> + <hkern u1="&#xea;" g2="f_k" k="20" /> + <hkern u1="&#xea;" g2="f_f_j" k="20" /> + <hkern u1="&#xea;" g2="f_j" k="20" /> + <hkern u1="&#xea;" g2="f_h" k="20" /> + <hkern u1="&#xea;" g2="f_f_k" k="20" /> + <hkern u1="&#xea;" g2="f_f_h" k="20" /> + <hkern u1="&#xea;" g2="f_f_b" k="20" /> + <hkern u1="&#xea;" g2="f_b" k="20" /> + <hkern u1="&#xea;" g2="f_f_l" k="20" /> + <hkern u1="&#xea;" g2="f_f_i" k="20" /> + <hkern u1="&#xea;" g2="f_f" k="20" /> + <hkern u1="&#xea;" u2="x" k="24" /> + <hkern u1="&#xea;" u2="v" k="20" /> + <hkern u1="&#xeb;" g2="f_k" k="20" /> + <hkern u1="&#xeb;" g2="f_f_j" k="20" /> + <hkern u1="&#xeb;" g2="f_j" k="20" /> + <hkern u1="&#xeb;" g2="f_h" k="20" /> + <hkern u1="&#xeb;" g2="f_f_k" k="20" /> + <hkern u1="&#xeb;" g2="f_f_h" k="20" /> + <hkern u1="&#xeb;" g2="f_f_b" k="20" /> + <hkern u1="&#xeb;" g2="f_b" k="20" /> + <hkern u1="&#xeb;" g2="f_f_l" k="20" /> + <hkern u1="&#xeb;" g2="f_f_i" k="20" /> + <hkern u1="&#xeb;" g2="f_f" k="20" /> + <hkern u1="&#xeb;" u2="x" k="24" /> + <hkern u1="&#xeb;" u2="v" k="20" /> + <hkern u1="&#xe8;" g2="f_k" k="20" /> + <hkern u1="&#xe8;" g2="f_f_j" k="20" /> + <hkern u1="&#xe8;" g2="f_j" k="20" /> + <hkern u1="&#xe8;" g2="f_h" k="20" /> + <hkern u1="&#xe8;" g2="f_f_k" k="20" /> + <hkern u1="&#xe8;" g2="f_f_h" k="20" /> + <hkern u1="&#xe8;" g2="f_f_b" k="20" /> + <hkern u1="&#xe8;" g2="f_b" k="20" /> + <hkern u1="&#xe8;" g2="f_f_l" k="20" /> + <hkern u1="&#xe8;" g2="f_f_i" k="20" /> + <hkern u1="&#xe8;" g2="f_f" k="20" /> + <hkern u1="&#xe8;" u2="x" k="24" /> + <hkern u1="&#xe8;" u2="v" k="20" /> + <hkern u1="&#xf1;" u2="v" k="25" /> + <hkern u1="&#xf3;" g2="f_k" k="20" /> + <hkern u1="&#xf3;" g2="f_f_j" k="20" /> + <hkern u1="&#xf3;" g2="f_j" k="20" /> + <hkern u1="&#xf3;" g2="f_h" k="20" /> + <hkern u1="&#xf3;" g2="f_f_k" k="20" /> + <hkern u1="&#xf3;" g2="f_f_h" k="20" /> + <hkern u1="&#xf3;" g2="f_f_b" k="20" /> + <hkern u1="&#xf3;" g2="f_b" k="20" /> + <hkern u1="&#xf3;" g2="f_f_l" k="20" /> + <hkern u1="&#xf3;" g2="f_f_i" k="20" /> + <hkern u1="&#xf3;" g2="f_f" k="20" /> + <hkern u1="&#xf3;" u2="x" k="40" /> + <hkern u1="&#xf3;" u2="v" k="25" /> + <hkern u1="&#xf4;" g2="f_k" k="20" /> + <hkern u1="&#xf4;" g2="f_f_j" k="20" /> + <hkern u1="&#xf4;" g2="f_j" k="20" /> + <hkern u1="&#xf4;" g2="f_h" k="20" /> + <hkern u1="&#xf4;" g2="f_f_k" k="20" /> + <hkern u1="&#xf4;" g2="f_f_h" k="20" /> + <hkern u1="&#xf4;" g2="f_f_b" k="20" /> + <hkern u1="&#xf4;" g2="f_b" k="20" /> + <hkern u1="&#xf4;" g2="f_f_l" k="20" /> + <hkern u1="&#xf4;" g2="f_f_i" k="20" /> + <hkern u1="&#xf4;" g2="f_f" k="20" /> + <hkern u1="&#xf4;" u2="x" k="40" /> + <hkern u1="&#xf4;" u2="v" k="25" /> + <hkern u1="&#xf6;" g2="f_k" k="20" /> + <hkern u1="&#xf6;" g2="f_f_j" k="20" /> + <hkern u1="&#xf6;" g2="f_j" k="20" /> + <hkern u1="&#xf6;" g2="f_h" k="20" /> + <hkern u1="&#xf6;" g2="f_f_k" k="20" /> + <hkern u1="&#xf6;" g2="f_f_h" k="20" /> + <hkern u1="&#xf6;" g2="f_f_b" k="20" /> + <hkern u1="&#xf6;" g2="f_b" k="20" /> + <hkern u1="&#xf6;" g2="f_f_l" k="20" /> + <hkern u1="&#xf6;" g2="f_f_i" k="20" /> + <hkern u1="&#xf6;" g2="f_f" k="20" /> + <hkern u1="&#xf6;" u2="x" k="40" /> + <hkern u1="&#xf6;" u2="v" k="25" /> + <hkern u1="&#xf2;" g2="f_k" k="20" /> + <hkern u1="&#xf2;" g2="f_f_j" k="20" /> + <hkern u1="&#xf2;" g2="f_j" k="20" /> + <hkern u1="&#xf2;" g2="f_h" k="20" /> + <hkern u1="&#xf2;" g2="f_f_k" k="20" /> + <hkern u1="&#xf2;" g2="f_f_h" k="20" /> + <hkern u1="&#xf2;" g2="f_f_b" k="20" /> + <hkern u1="&#xf2;" g2="f_b" k="20" /> + <hkern u1="&#xf2;" g2="f_f_l" k="20" /> + <hkern u1="&#xf2;" g2="f_f_i" k="20" /> + <hkern u1="&#xf2;" g2="f_f" k="20" /> + <hkern u1="&#xf2;" u2="x" k="40" /> + <hkern u1="&#xf2;" u2="v" k="25" /> + <hkern u1="&#xf5;" g2="f_k" k="20" /> + <hkern u1="&#xf5;" g2="f_f_j" k="20" /> + <hkern u1="&#xf5;" g2="f_j" k="20" /> + <hkern u1="&#xf5;" g2="f_h" k="20" /> + <hkern u1="&#xf5;" g2="f_f_k" k="20" /> + <hkern u1="&#xf5;" g2="f_f_h" k="20" /> + <hkern u1="&#xf5;" g2="f_f_b" k="20" /> + <hkern u1="&#xf5;" g2="f_b" k="20" /> + <hkern u1="&#xf5;" g2="f_f_l" k="20" /> + <hkern u1="&#xf5;" g2="f_f_i" k="20" /> + <hkern u1="&#xf5;" g2="f_f" k="20" /> + <hkern u1="&#xf5;" u2="x" k="40" /> + <hkern u1="&#xf5;" u2="v" k="25" /> + <hkern u1="&#x161;" u2="v" k="9" /> + <hkern u1="&#xfd;" u2="&#x201e;" k="50" /> + <hkern u1="&#xfd;" u2="&#x201a;" k="50" /> + <hkern u1="&#xfd;" u2="q" k="20" /> + <hkern u1="&#xff;" u2="&#x201e;" k="50" /> + <hkern u1="&#xff;" u2="&#x201a;" k="50" /> + <hkern u1="&#xff;" u2="q" k="20" /> + <hkern g1="f_f" u2="&#x1ff;" k="20" /> + <hkern g1="f_f" u2="&#x14d;" k="20" /> + <hkern g1="f_f" u2="&#x151;" k="20" /> + <hkern g1="f_f" u2="&#x14f;" k="20" /> + <hkern g1="f_f" u2="&#x119;" k="20" /> + <hkern g1="f_f" u2="&#x113;" k="20" /> + <hkern g1="f_f" u2="&#x117;" k="20" /> + <hkern g1="f_f" u2="&#x11b;" k="20" /> + <hkern g1="f_f" u2="&#x115;" k="20" /> + <hkern g1="f_f" u2="&#x111;" k="20" /> + <hkern g1="f_f" u2="&#x10f;" k="20" /> + <hkern g1="f_f" u2="&#x109;" k="20" /> + <hkern g1="f_f" u2="&#x10d;" k="20" /> + <hkern g1="f_f" u2="&#x107;" k="20" /> + <hkern g1="f_f" u2="&#xf5;" k="20" /> + <hkern g1="f_f" u2="&#xf2;" k="20" /> + <hkern g1="f_f" u2="&#xf6;" k="20" /> + <hkern g1="f_f" u2="&#xf4;" k="20" /> + <hkern g1="f_f" u2="&#xf3;" k="20" /> + <hkern g1="f_f" u2="&#xe8;" k="20" /> + <hkern g1="f_f" u2="&#xeb;" k="20" /> + <hkern g1="f_f" u2="&#xea;" k="20" /> + <hkern g1="f_f" u2="&#xe9;" k="20" /> + <hkern g1="f_f" u2="&#xe7;" k="20" /> + <hkern g1="f_f" u2="&#x153;" k="20" /> + <hkern g1="f_f" u2="&#xf8;" k="20" /> + <hkern g1="f_f" u2="o" k="20" /> + <hkern g1="f_f" u2="e" k="20" /> + <hkern g1="f_f" u2="d" k="20" /> + <hkern g1="f_f" u2="c" k="20" /> + <hkern g1="f_f" u2="&#x10b;" k="20" /> + <hkern g1="f_f" u2="q" k="20" /> + <hkern u1="&#x102;" u2="v" k="46" /> + <hkern u1="&#x102;" u2="V" k="60" /> + <hkern u1="&#x102;" u2="Q" k="20" /> + <hkern u1="&#x100;" u2="v" k="46" /> + <hkern u1="&#x100;" u2="V" k="60" /> + <hkern u1="&#x100;" u2="Q" k="20" /> + <hkern u1="&#x104;" u2="v" k="46" /> + <hkern u1="&#x104;" u2="V" k="60" /> + <hkern u1="&#x104;" u2="Q" k="20" /> + <hkern u1="&#x106;" u2="Q" k="25" /> + <hkern u1="&#x10c;" u2="Q" k="25" /> + <hkern u1="&#x108;" u2="Q" k="25" /> + <hkern u1="&#x10e;" u2="&#xc6;" k="16" /> + <hkern u1="&#x10e;" u2="X" k="32" /> + <hkern u1="&#x10e;" u2="V" k="25" /> + <hkern u1="&#x11e;" u2="V" k="9" /> + <hkern u1="&#x11c;" u2="V" k="9" /> + <hkern u1="&#x122;" u2="V" k="9" /> + <hkern u1="&#x120;" u2="V" k="9" /> + <hkern u1="&#x136;" u2="&#xc7;" k="33" /> + <hkern u1="&#x136;" u2="v" k="60" /> + <hkern u1="&#x136;" u2="q" k="37" /> + <hkern u1="&#x136;" u2="V" k="11" /> + <hkern u1="&#x136;" u2="Q" k="50" /> + <hkern u1="&#x136;" u2="&#x2d;" k="24" /> + <hkern u1="&#x139;" u2="&#xae;" k="36" /> + <hkern u1="&#x139;" u2="&#x2122;" k="36" /> + <hkern u1="&#x139;" u2="v" k="31" /> + <hkern u1="&#x139;" u2="V" k="70" /> + <hkern u1="&#x139;" u2="Q" k="35" /> + <hkern u1="&#x139;" u2="&#x2d;" k="24" /> + <hkern u1="&#x13d;" u2="&#xae;" k="36" /> + <hkern u1="&#x13d;" u2="&#x2122;" k="36" /> + <hkern u1="&#x13d;" u2="v" k="31" /> + <hkern u1="&#x13d;" u2="V" k="70" /> + <hkern u1="&#x13d;" u2="Q" k="35" /> + <hkern u1="&#x13d;" u2="&#x2d;" k="24" /> + <hkern u1="&#x13b;" u2="&#xae;" k="36" /> + <hkern u1="&#x13b;" u2="&#x2122;" k="36" /> + <hkern u1="&#x13b;" u2="v" k="31" /> + <hkern u1="&#x13b;" u2="V" k="70" /> + <hkern u1="&#x13b;" u2="Q" k="35" /> + <hkern u1="&#x13b;" u2="&#x2d;" k="24" /> + <hkern u1="&#x13f;" u2="&#xae;" k="36" /> + <hkern u1="&#x13f;" u2="&#x2122;" k="36" /> + <hkern u1="&#x13f;" u2="v" k="31" /> + <hkern u1="&#x13f;" u2="V" k="70" /> + <hkern u1="&#x13f;" u2="Q" k="35" /> + <hkern u1="&#x13f;" u2="&#x2d;" k="24" /> + <hkern u1="&#x143;" u2="V" k="22" /> + <hkern u1="&#x147;" u2="V" k="22" /> + <hkern u1="&#x14e;" u2="&#xc6;" k="20" /> + <hkern u1="&#x14e;" u2="x" k="20" /> + <hkern u1="&#x14e;" u2="X" k="54" /> + <hkern u1="&#x14e;" u2="V" k="26" /> + <hkern u1="&#x150;" u2="&#xc6;" k="20" /> + <hkern u1="&#x150;" u2="x" k="20" /> + <hkern u1="&#x150;" u2="X" k="54" /> + <hkern u1="&#x150;" u2="V" k="26" /> + <hkern u1="&#x14c;" u2="&#xc6;" k="20" /> + <hkern u1="&#x14c;" u2="x" k="20" /> + <hkern u1="&#x14c;" u2="X" k="54" /> + <hkern u1="&#x14c;" u2="V" k="26" /> + <hkern u1="&#x1fe;" u2="&#xc6;" k="20" /> + <hkern u1="&#x1fe;" u2="x" k="20" /> + <hkern u1="&#x1fe;" u2="X" k="54" /> + <hkern u1="&#x1fe;" u2="V" k="26" /> + <hkern u1="&#x154;" u2="V" k="32" /> + <hkern u1="&#x154;" u2="Q" k="20" /> + <hkern u1="&#x158;" u2="V" k="32" /> + <hkern u1="&#x158;" u2="Q" k="20" /> + <hkern u1="&#x156;" u2="V" k="32" /> + <hkern u1="&#x156;" u2="Q" k="20" /> + <hkern u1="&#x15a;" u2="x" k="9" /> + <hkern u1="&#x15a;" u2="v" k="13" /> + <hkern u1="&#x15a;" u2="V" k="15" /> + <hkern u1="&#x15e;" u2="x" k="9" /> + <hkern u1="&#x15e;" u2="v" k="13" /> + <hkern u1="&#x15e;" u2="V" k="15" /> + <hkern u1="&#x15c;" u2="x" k="9" /> + <hkern u1="&#x15c;" u2="v" k="13" /> + <hkern u1="&#x15c;" u2="V" k="15" /> + <hkern u1="&#x218;" u2="x" k="9" /> + <hkern u1="&#x218;" u2="v" k="13" /> + <hkern u1="&#x218;" u2="V" k="15" /> + <hkern u1="&#x166;" u2="&#xc6;" k="75" /> + <hkern u1="&#x166;" u2="x" k="24" /> + <hkern u1="&#x166;" u2="v" k="20" /> + <hkern u1="&#x166;" u2="q" k="70" /> + <hkern u1="&#x166;" u2="p" k="24" /> + <hkern u1="&#x166;" u2="m" k="24" /> + <hkern u1="&#x166;" u2="Q" k="35" /> + <hkern u1="&#x166;" u2="F" k="17" /> + <hkern u1="&#x166;" u2="&#x2f;" k="88" /> + <hkern u1="&#x166;" u2="&#x2d;" k="86" /> + <hkern u1="&#x164;" u2="&#xc6;" k="75" /> + <hkern u1="&#x164;" u2="x" k="24" /> + <hkern u1="&#x164;" u2="v" k="20" /> + <hkern u1="&#x164;" u2="q" k="70" /> + <hkern u1="&#x164;" u2="p" k="24" /> + <hkern u1="&#x164;" u2="m" k="24" /> + <hkern u1="&#x164;" u2="Q" k="35" /> + <hkern u1="&#x164;" u2="F" k="17" /> + <hkern u1="&#x164;" u2="&#x2f;" k="88" /> + <hkern u1="&#x164;" u2="&#x2d;" k="86" /> + <hkern u1="&#x162;" u2="&#xc6;" k="75" /> + <hkern u1="&#x162;" u2="x" k="24" /> + <hkern u1="&#x162;" u2="v" k="20" /> + <hkern u1="&#x162;" u2="q" k="70" /> + <hkern u1="&#x162;" u2="p" k="24" /> + <hkern u1="&#x162;" u2="m" k="24" /> + <hkern u1="&#x162;" u2="Q" k="35" /> + <hkern u1="&#x162;" u2="F" k="17" /> + <hkern u1="&#x162;" u2="&#x2f;" k="88" /> + <hkern u1="&#x162;" u2="&#x2d;" k="86" /> + <hkern u1="&#x16c;" u2="&#xc6;" k="20" /> + <hkern u1="&#x16c;" u2="X" k="24" /> + <hkern u1="&#x170;" u2="&#xc6;" k="20" /> + <hkern u1="&#x170;" u2="X" k="24" /> + <hkern u1="&#x16a;" u2="&#xc6;" k="20" /> + <hkern u1="&#x16a;" u2="X" k="24" /> + <hkern u1="&#x172;" u2="&#xc6;" k="20" /> + <hkern u1="&#x172;" u2="X" k="24" /> + <hkern u1="&#x16e;" u2="&#xc6;" k="20" /> + <hkern u1="&#x16e;" u2="X" k="24" /> + <hkern u1="&#x168;" u2="&#xc6;" k="20" /> + <hkern u1="&#x168;" u2="X" k="24" /> + <hkern u1="&#x1e82;" u2="&#xc6;" k="25" /> + <hkern u1="&#x1e82;" u2="&#xbf;" k="66" /> + <hkern u1="&#x1e82;" u2="x" k="44" /> + <hkern u1="&#x1e82;" u2="Q" k="10" /> + <hkern u1="&#x174;" u2="&#xc6;" k="25" /> + <hkern u1="&#x174;" u2="&#xbf;" k="66" /> + <hkern u1="&#x174;" u2="x" k="44" /> + <hkern u1="&#x174;" u2="Q" k="10" /> + <hkern u1="&#x1e84;" u2="&#xc6;" k="25" /> + <hkern u1="&#x1e84;" u2="&#xbf;" k="66" /> + <hkern u1="&#x1e84;" u2="x" k="44" /> + <hkern u1="&#x1e84;" u2="Q" k="10" /> + <hkern u1="&#x1e80;" u2="&#xc6;" k="25" /> + <hkern u1="&#x1e80;" u2="&#xbf;" k="66" /> + <hkern u1="&#x1e80;" u2="x" k="44" /> + <hkern u1="&#x1e80;" u2="Q" k="10" /> + <hkern u1="&#x176;" u2="&#xc6;" k="75" /> + <hkern u1="&#x176;" u2="&#xbf;" k="136" /> + <hkern u1="&#x176;" u2="&#xa1;" k="55" /> + <hkern u1="&#x176;" u2="x" k="44" /> + <hkern u1="&#x176;" u2="v" k="51" /> + <hkern u1="&#x176;" u2="q" k="92" /> + <hkern u1="&#x176;" u2="p" k="71" /> + <hkern u1="&#x176;" u2="m" k="47" /> + <hkern u1="&#x176;" u2="Q" k="43" /> + <hkern u1="&#x176;" u2="F" k="30" /> + <hkern u1="&#x176;" u2="&#x2f;" k="95" /> + <hkern u1="&#x176;" u2="&#x2d;" k="49" /> + <hkern u1="&#x1ef2;" u2="&#xc6;" k="75" /> + <hkern u1="&#x1ef2;" u2="&#xbf;" k="136" /> + <hkern u1="&#x1ef2;" u2="&#xa1;" k="55" /> + <hkern u1="&#x1ef2;" u2="x" k="44" /> + <hkern u1="&#x1ef2;" u2="v" k="51" /> + <hkern u1="&#x1ef2;" u2="q" k="92" /> + <hkern u1="&#x1ef2;" u2="p" k="71" /> + <hkern u1="&#x1ef2;" u2="m" k="47" /> + <hkern u1="&#x1ef2;" u2="Q" k="43" /> + <hkern u1="&#x1ef2;" u2="F" k="30" /> + <hkern u1="&#x1ef2;" u2="&#x2f;" k="95" /> + <hkern u1="&#x1ef2;" u2="&#x2d;" k="49" /> + <hkern u1="&#x179;" u2="v" k="20" /> + <hkern u1="&#x179;" u2="Q" k="20" /> + <hkern u1="&#x17b;" u2="v" k="20" /> + <hkern u1="&#x17b;" u2="Q" k="20" /> + <hkern u1="&#x103;" u2="v" k="25" /> + <hkern u1="&#x101;" u2="v" k="25" /> + <hkern u1="&#x105;" u2="v" k="25" /> + <hkern u1="&#x1fd;" g2="f_k" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_j" k="20" /> + <hkern u1="&#x1fd;" g2="f_j" k="20" /> + <hkern u1="&#x1fd;" g2="f_h" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_k" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_h" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_b" k="20" /> + <hkern u1="&#x1fd;" g2="f_b" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_l" k="20" /> + <hkern u1="&#x1fd;" g2="f_f_i" k="20" /> + <hkern u1="&#x1fd;" g2="f_f" k="20" /> + <hkern u1="&#x1fd;" u2="x" k="24" /> + <hkern u1="&#x1fd;" u2="v" k="20" /> + <hkern u1="&#x107;" u2="&#xe7;" k="24" /> + <hkern u1="&#x107;" u2="q" k="15" /> + <hkern u1="&#x10d;" u2="&#xe7;" k="24" /> + <hkern u1="&#x10d;" u2="q" k="15" /> + <hkern u1="&#x109;" u2="&#xe7;" k="24" /> + <hkern u1="&#x109;" u2="q" k="15" /> + <hkern u1="&#x115;" g2="f_k" k="20" /> + <hkern u1="&#x115;" g2="f_f_j" k="20" /> + <hkern u1="&#x115;" g2="f_j" k="20" /> + <hkern u1="&#x115;" g2="f_h" k="20" /> + <hkern u1="&#x115;" g2="f_f_k" k="20" /> + <hkern u1="&#x115;" g2="f_f_h" k="20" /> + <hkern u1="&#x115;" g2="f_f_b" k="20" /> + <hkern u1="&#x115;" g2="f_b" k="20" /> + <hkern u1="&#x115;" g2="f_f_l" k="20" /> + <hkern u1="&#x115;" g2="f_f_i" k="20" /> + <hkern u1="&#x115;" g2="f_f" k="20" /> + <hkern u1="&#x115;" u2="x" k="24" /> + <hkern u1="&#x115;" u2="v" k="20" /> + <hkern u1="&#x11b;" g2="f_k" k="20" /> + <hkern u1="&#x11b;" g2="f_f_j" k="20" /> + <hkern u1="&#x11b;" g2="f_j" k="20" /> + <hkern u1="&#x11b;" g2="f_h" k="20" /> + <hkern u1="&#x11b;" g2="f_f_k" k="20" /> + <hkern u1="&#x11b;" g2="f_f_h" k="20" /> + <hkern u1="&#x11b;" g2="f_f_b" k="20" /> + <hkern u1="&#x11b;" g2="f_b" k="20" /> + <hkern u1="&#x11b;" g2="f_f_l" k="20" /> + <hkern u1="&#x11b;" g2="f_f_i" k="20" /> + <hkern u1="&#x11b;" g2="f_f" k="20" /> + <hkern u1="&#x11b;" u2="x" k="24" /> + <hkern u1="&#x11b;" u2="v" k="20" /> + <hkern u1="&#x117;" g2="f_k" k="20" /> + <hkern u1="&#x117;" g2="f_f_j" k="20" /> + <hkern u1="&#x117;" g2="f_j" k="20" /> + <hkern u1="&#x117;" g2="f_h" k="20" /> + <hkern u1="&#x117;" g2="f_f_k" k="20" /> + <hkern u1="&#x117;" g2="f_f_h" k="20" /> + <hkern u1="&#x117;" g2="f_f_b" k="20" /> + <hkern u1="&#x117;" g2="f_b" k="20" /> + <hkern u1="&#x117;" g2="f_f_l" k="20" /> + <hkern u1="&#x117;" g2="f_f_i" k="20" /> + <hkern u1="&#x117;" g2="f_f" k="20" /> + <hkern u1="&#x117;" u2="x" k="24" /> + <hkern u1="&#x117;" u2="v" k="20" /> + <hkern u1="&#x113;" g2="f_k" k="20" /> + <hkern u1="&#x113;" g2="f_f_j" k="20" /> + <hkern u1="&#x113;" g2="f_j" k="20" /> + <hkern u1="&#x113;" g2="f_h" k="20" /> + <hkern u1="&#x113;" g2="f_f_k" k="20" /> + <hkern u1="&#x113;" g2="f_f_h" k="20" /> + <hkern u1="&#x113;" g2="f_f_b" k="20" /> + <hkern u1="&#x113;" g2="f_b" k="20" /> + <hkern u1="&#x113;" g2="f_f_l" k="20" /> + <hkern u1="&#x113;" g2="f_f_i" k="20" /> + <hkern u1="&#x113;" g2="f_f" k="20" /> + <hkern u1="&#x113;" u2="x" k="24" /> + <hkern u1="&#x113;" u2="v" k="20" /> + <hkern u1="&#x119;" g2="f_k" k="20" /> + <hkern u1="&#x119;" g2="f_f_j" k="20" /> + <hkern u1="&#x119;" g2="f_j" k="20" /> + <hkern u1="&#x119;" g2="f_h" k="20" /> + <hkern u1="&#x119;" g2="f_f_k" k="20" /> + <hkern u1="&#x119;" g2="f_f_h" k="20" /> + <hkern u1="&#x119;" g2="f_f_b" k="20" /> + <hkern u1="&#x119;" g2="f_b" k="20" /> + <hkern u1="&#x119;" g2="f_f_l" k="20" /> + <hkern u1="&#x119;" g2="f_f_i" k="20" /> + <hkern u1="&#x119;" g2="f_f" k="20" /> + <hkern u1="&#x119;" u2="x" k="24" /> + <hkern u1="&#x119;" u2="v" k="20" /> + <hkern u1="&#x127;" u2="v" k="20" /> + <hkern u1="&#x125;" u2="v" k="20" /> + <hkern u1="&#x137;" u2="q" k="35" /> + <hkern u1="&#x144;" u2="v" k="25" /> + <hkern u1="&#x148;" u2="v" k="25" /> + <hkern u1="&#x14f;" g2="f_k" k="20" /> + <hkern u1="&#x14f;" g2="f_f_j" k="20" /> + <hkern u1="&#x14f;" g2="f_j" k="20" /> + <hkern u1="&#x14f;" g2="f_h" k="20" /> + <hkern u1="&#x14f;" g2="f_f_k" k="20" /> + <hkern u1="&#x14f;" g2="f_f_h" k="20" /> + <hkern u1="&#x14f;" g2="f_f_b" k="20" /> + <hkern u1="&#x14f;" g2="f_b" k="20" /> + <hkern u1="&#x14f;" g2="f_f_l" k="20" /> + <hkern u1="&#x14f;" g2="f_f_i" k="20" /> + <hkern u1="&#x14f;" g2="f_f" k="20" /> + <hkern u1="&#x14f;" u2="x" k="40" /> + <hkern u1="&#x14f;" u2="v" k="25" /> + <hkern u1="&#x151;" g2="f_k" k="20" /> + <hkern u1="&#x151;" g2="f_f_j" k="20" /> + <hkern u1="&#x151;" g2="f_j" k="20" /> + <hkern u1="&#x151;" g2="f_h" k="20" /> + <hkern u1="&#x151;" g2="f_f_k" k="20" /> + <hkern u1="&#x151;" g2="f_f_h" k="20" /> + <hkern u1="&#x151;" g2="f_f_b" k="20" /> + <hkern u1="&#x151;" g2="f_b" k="20" /> + <hkern u1="&#x151;" g2="f_f_l" k="20" /> + <hkern u1="&#x151;" g2="f_f_i" k="20" /> + <hkern u1="&#x151;" g2="f_f" k="20" /> + <hkern u1="&#x151;" u2="x" k="40" /> + <hkern u1="&#x151;" u2="v" k="25" /> + <hkern u1="&#x14d;" g2="f_k" k="20" /> + <hkern u1="&#x14d;" g2="f_f_j" k="20" /> + <hkern u1="&#x14d;" g2="f_j" k="20" /> + <hkern u1="&#x14d;" g2="f_h" k="20" /> + <hkern u1="&#x14d;" g2="f_f_k" k="20" /> + <hkern u1="&#x14d;" g2="f_f_h" k="20" /> + <hkern u1="&#x14d;" g2="f_f_b" k="20" /> + <hkern u1="&#x14d;" g2="f_b" k="20" /> + <hkern u1="&#x14d;" g2="f_f_l" k="20" /> + <hkern u1="&#x14d;" g2="f_f_i" k="20" /> + <hkern u1="&#x14d;" g2="f_f" k="20" /> + <hkern u1="&#x14d;" u2="x" k="40" /> + <hkern u1="&#x14d;" u2="v" k="25" /> + <hkern u1="&#x1ff;" g2="f_k" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_j" k="20" /> + <hkern u1="&#x1ff;" g2="f_j" k="20" /> + <hkern u1="&#x1ff;" g2="f_h" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_k" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_h" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_b" k="20" /> + <hkern u1="&#x1ff;" g2="f_b" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_l" k="20" /> + <hkern u1="&#x1ff;" g2="f_f_i" k="20" /> + <hkern u1="&#x1ff;" g2="f_f" k="20" /> + <hkern u1="&#x1ff;" u2="x" k="40" /> + <hkern u1="&#x1ff;" u2="v" k="25" /> + <hkern u1="&#x155;" u2="q" k="18" /> + <hkern u1="&#x159;" u2="q" k="18" /> + <hkern u1="&#x157;" u2="q" k="18" /> + <hkern u1="&#x15b;" u2="v" k="9" /> + <hkern u1="&#x15f;" u2="v" k="9" /> + <hkern u1="&#x15d;" u2="v" k="9" /> + <hkern u1="&#x219;" u2="v" k="9" /> + <hkern u1="&#x167;" u2="q" k="9" /> + <hkern u1="&#x165;" u2="q" k="9" /> + <hkern u1="&#x163;" u2="q" k="9" /> + <hkern u1="&#x177;" u2="&#x201e;" k="50" /> + <hkern u1="&#x177;" u2="&#x201a;" k="50" /> + <hkern u1="&#x177;" u2="q" k="20" /> + <hkern u1="&#x1ef3;" u2="&#x201e;" k="50" /> + <hkern u1="&#x1ef3;" u2="&#x201a;" k="50" /> + <hkern u1="&#x1ef3;" u2="q" k="20" /> + <hkern u1="&#x138;" u2="q" k="35" /> + <hkern u1="&#x149;" u2="v" k="25" /> + <hkern u1="&#x2126;" u2="&#x147;" k="23" /> + <hkern u1="&#x2126;" u2="&#x143;" k="23" /> + <hkern u1="&#x2126;" u2="&#xd1;" k="23" /> + <hkern u1="&#x2126;" u2="N" k="23" /> + <hkern u1="&#x410;" u2="&#x2019;" k="40" /> + <hkern u1="&#x410;" u2="&#x45e;" k="25" /> + <hkern u1="&#x410;" u2="&#x451;" k="20" /> + <hkern u1="&#x410;" u2="&#x447;" k="51" /> + <hkern u1="&#x410;" u2="&#x443;" k="25" /> + <hkern u1="&#x410;" u2="&#x442;" k="51" /> + <hkern u1="&#x410;" u2="&#x43e;" k="20" /> + <hkern u1="&#x410;" u2="&#x435;" k="20" /> + <hkern u1="&#x410;" u2="&#x40f;" k="25" /> + <hkern u1="&#x410;" u2="&#x40b;" k="60" /> + <hkern u1="&#x410;" u2="&#x404;" k="25" /> + <hkern u1="&#x410;" u2="&#x402;" k="60" /> + <hkern u1="&#x410;" u2="&#x401;" k="25" /> + <hkern u1="&#x410;" u2="&#x427;" k="55" /> + <hkern u1="&#x410;" u2="&#x426;" k="20" /> + <hkern u1="&#x410;" u2="&#x424;" k="50" /> + <hkern u1="&#x410;" u2="&#x422;" k="55" /> + <hkern u1="&#x410;" u2="&#x421;" k="20" /> + <hkern u1="&#x410;" u2="&#x41e;" k="20" /> + <hkern u1="&#x410;" u2="&#x419;" k="20" /> + <hkern u1="&#x410;" u2="&#x418;" k="20" /> + <hkern u1="&#x410;" u2="&#x415;" k="25" /> + <hkern u1="&#x410;" u2="&#x201d;" k="40" /> + <hkern u1="&#x411;" u2="&#x41b;" k="20" /> + <hkern u1="&#x411;" u2="&#x416;" k="23" /> + <hkern u1="&#x411;" u2="&#x410;" k="20" /> + <hkern u1="&#x412;" u2="&#x425;" k="25" /> + <hkern u1="&#x412;" u2="&#x416;" k="25" /> + <hkern u1="&#x413;" u2="&#x2026;" k="130" /> + <hkern u1="&#x413;" u2="&#x2e;" k="130" /> + <hkern u1="&#x413;" u2="&#x2c;" k="130" /> + <hkern u1="&#x413;" u2="&#x45f;" k="65" /> + <hkern u1="&#x413;" u2="&#x45e;" k="65" /> + <hkern u1="&#x413;" u2="&#x45c;" k="65" /> + <hkern u1="&#x413;" u2="&#x45a;" k="65" /> + <hkern u1="&#x413;" u2="&#x459;" k="119" /> + <hkern u1="&#x413;" u2="&#x455;" k="74" /> + <hkern u1="&#x413;" u2="&#x454;" k="85" /> + <hkern u1="&#x413;" u2="&#x453;" k="65" /> + <hkern u1="&#x413;" u2="&#x451;" k="62" /> + <hkern u1="&#x413;" u2="&#x44f;" k="105" /> + <hkern u1="&#x413;" u2="&#x44e;" k="68" /> + <hkern u1="&#x413;" u2="&#x44d;" k="65" /> + <hkern u1="&#x413;" u2="&#x44c;" k="68" /> + <hkern u1="&#x413;" u2="&#x44b;" k="68" /> + <hkern u1="&#x413;" u2="&#x449;" k="79" /> + <hkern u1="&#x413;" u2="&#x448;" k="74" /> + <hkern u1="&#x413;" u2="&#x447;" k="74" /> + <hkern u1="&#x413;" u2="&#x446;" k="76" /> + <hkern u1="&#x413;" u2="&#x445;" k="71" /> + <hkern u1="&#x413;" u2="&#x444;" k="122" /> + <hkern u1="&#x413;" u2="&#x443;" k="65" /> + <hkern u1="&#x413;" u2="&#x442;" k="68" /> + <hkern u1="&#x413;" u2="&#x441;" k="91" /> + <hkern u1="&#x413;" u2="&#x440;" k="68" /> + <hkern u1="&#x413;" u2="&#x43f;" k="108" /> + <hkern u1="&#x413;" u2="&#x43e;" k="108" /> + <hkern u1="&#x413;" u2="&#x43d;" k="65" /> + <hkern u1="&#x413;" u2="&#x43c;" k="68" /> + <hkern u1="&#x413;" u2="&#x43b;" k="122" /> + <hkern u1="&#x413;" u2="&#x43a;" k="65" /> + <hkern u1="&#x413;" u2="&#x439;" k="65" /> + <hkern u1="&#x413;" u2="&#x438;" k="65" /> + <hkern u1="&#x413;" u2="&#x437;" k="45" /> + <hkern u1="&#x413;" u2="&#x436;" k="39" /> + <hkern u1="&#x413;" u2="&#x435;" k="93" /> + <hkern u1="&#x413;" u2="&#x434;" k="142" /> + <hkern u1="&#x413;" u2="&#x491;" k="68" /> + <hkern u1="&#x413;" u2="&#x433;" k="65" /> + <hkern u1="&#x413;" u2="&#x432;" k="62" /> + <hkern u1="&#x413;" u2="&#x431;" k="68" /> + <hkern u1="&#x413;" u2="&#x430;" k="59" /> + <hkern u1="&#x413;" u2="&#x409;" k="80" /> + <hkern u1="&#x413;" u2="&#x404;" k="34" /> + <hkern u1="&#x413;" u2="&#x403;" k="28" /> + <hkern u1="&#x413;" u2="&#x401;" k="35" /> + <hkern u1="&#x413;" u2="&#x42f;" k="34" /> + <hkern u1="&#x413;" u2="&#x427;" k="25" /> + <hkern u1="&#x413;" u2="&#x424;" k="57" /> + <hkern u1="&#x413;" u2="&#x421;" k="40" /> + <hkern u1="&#x413;" u2="&#x41f;" k="28" /> + <hkern u1="&#x413;" u2="&#x41e;" k="51" /> + <hkern u1="&#x413;" u2="&#x41b;" k="101" /> + <hkern u1="&#x413;" u2="&#x416;" k="25" /> + <hkern u1="&#x413;" u2="&#x415;" k="35" /> + <hkern u1="&#x413;" u2="&#x414;" k="128" /> + <hkern u1="&#x413;" u2="&#x410;" k="101" /> + <hkern u1="&#x413;" u2="&#x201e;" k="57" /> + <hkern u1="&#x413;" u2="&#x201a;" k="57" /> + <hkern u1="&#x490;" u2="&#x2026;" k="130" /> + <hkern u1="&#x490;" u2="&#x2e;" k="130" /> + <hkern u1="&#x490;" u2="&#x2c;" k="130" /> + <hkern u1="&#x490;" u2="&#x45f;" k="65" /> + <hkern u1="&#x490;" u2="&#x45e;" k="65" /> + <hkern u1="&#x490;" u2="&#x45c;" k="65" /> + <hkern u1="&#x490;" u2="&#x45a;" k="65" /> + <hkern u1="&#x490;" u2="&#x459;" k="119" /> + <hkern u1="&#x490;" u2="&#x455;" k="74" /> + <hkern u1="&#x490;" u2="&#x454;" k="85" /> + <hkern u1="&#x490;" u2="&#x453;" k="65" /> + <hkern u1="&#x490;" u2="&#x451;" k="62" /> + <hkern u1="&#x490;" u2="&#x44f;" k="105" /> + <hkern u1="&#x490;" u2="&#x44e;" k="68" /> + <hkern u1="&#x490;" u2="&#x44d;" k="65" /> + <hkern u1="&#x490;" u2="&#x44c;" k="68" /> + <hkern u1="&#x490;" u2="&#x44b;" k="68" /> + <hkern u1="&#x490;" u2="&#x449;" k="79" /> + <hkern u1="&#x490;" u2="&#x448;" k="74" /> + <hkern u1="&#x490;" u2="&#x447;" k="74" /> + <hkern u1="&#x490;" u2="&#x446;" k="76" /> + <hkern u1="&#x490;" u2="&#x445;" k="71" /> + <hkern u1="&#x490;" u2="&#x444;" k="122" /> + <hkern u1="&#x490;" u2="&#x443;" k="65" /> + <hkern u1="&#x490;" u2="&#x442;" k="68" /> + <hkern u1="&#x490;" u2="&#x441;" k="91" /> + <hkern u1="&#x490;" u2="&#x440;" k="68" /> + <hkern u1="&#x490;" u2="&#x43f;" k="108" /> + <hkern u1="&#x490;" u2="&#x43e;" k="108" /> + <hkern u1="&#x490;" u2="&#x43d;" k="65" /> + <hkern u1="&#x490;" u2="&#x43c;" k="68" /> + <hkern u1="&#x490;" u2="&#x43b;" k="122" /> + <hkern u1="&#x490;" u2="&#x43a;" k="65" /> + <hkern u1="&#x490;" u2="&#x439;" k="65" /> + <hkern u1="&#x490;" u2="&#x438;" k="65" /> + <hkern u1="&#x490;" u2="&#x437;" k="45" /> + <hkern u1="&#x490;" u2="&#x436;" k="39" /> + <hkern u1="&#x490;" u2="&#x435;" k="93" /> + <hkern u1="&#x490;" u2="&#x434;" k="142" /> + <hkern u1="&#x490;" u2="&#x491;" k="68" /> + <hkern u1="&#x490;" u2="&#x433;" k="65" /> + <hkern u1="&#x490;" u2="&#x432;" k="62" /> + <hkern u1="&#x490;" u2="&#x431;" k="68" /> + <hkern u1="&#x490;" u2="&#x430;" k="59" /> + <hkern u1="&#x490;" u2="&#x409;" k="80" /> + <hkern u1="&#x490;" u2="&#x404;" k="34" /> + <hkern u1="&#x490;" u2="&#x403;" k="28" /> + <hkern u1="&#x490;" u2="&#x401;" k="35" /> + <hkern u1="&#x490;" u2="&#x42f;" k="34" /> + <hkern u1="&#x490;" u2="&#x427;" k="25" /> + <hkern u1="&#x490;" u2="&#x424;" k="57" /> + <hkern u1="&#x490;" u2="&#x421;" k="40" /> + <hkern u1="&#x490;" u2="&#x41f;" k="28" /> + <hkern u1="&#x490;" u2="&#x41e;" k="51" /> + <hkern u1="&#x490;" u2="&#x41b;" k="101" /> + <hkern u1="&#x490;" u2="&#x416;" k="25" /> + <hkern u1="&#x490;" u2="&#x415;" k="35" /> + <hkern u1="&#x490;" u2="&#x414;" k="128" /> + <hkern u1="&#x490;" u2="&#x410;" k="101" /> + <hkern u1="&#x490;" u2="&#x201e;" k="57" /> + <hkern u1="&#x490;" u2="&#x201a;" k="57" /> + <hkern u1="&#x414;" u2="&#x458;" k="-25" /> + <hkern u1="&#x414;" u2="&#x447;" k="74" /> + <hkern u1="&#x414;" u2="&#x442;" k="80" /> + <hkern u1="&#x414;" u2="&#x40b;" k="85" /> + <hkern u1="&#x414;" u2="&#x408;" k="-37" /> + <hkern u1="&#x414;" u2="&#x404;" k="28" /> + <hkern u1="&#x414;" u2="&#x402;" k="85" /> + <hkern u1="&#x414;" u2="&#x427;" k="94" /> + <hkern u1="&#x414;" u2="&#x424;" k="74" /> + <hkern u1="&#x414;" u2="&#x422;" k="85" /> + <hkern u1="&#x414;" u2="&#x41e;" k="20" /> + <hkern u1="&#x414;" u2="&#x419;" k="20" /> + <hkern u1="&#x414;" u2="&#x418;" k="20" /> + <hkern u1="&#x414;" u2="&#x415;" k="26" /> + <hkern u1="&#x416;" u2="&#x45f;" k="35" /> + <hkern u1="&#x416;" u2="&#x45e;" k="35" /> + <hkern u1="&#x416;" u2="&#x454;" k="40" /> + <hkern u1="&#x416;" u2="&#x451;" k="37" /> + <hkern u1="&#x416;" u2="&#x447;" k="80" /> + <hkern u1="&#x416;" u2="&#x444;" k="37" /> + <hkern u1="&#x416;" u2="&#x443;" k="35" /> + <hkern u1="&#x416;" u2="&#x442;" k="60" /> + <hkern u1="&#x416;" u2="&#x441;" k="37" /> + <hkern u1="&#x416;" u2="&#x43e;" k="45" /> + <hkern u1="&#x416;" u2="&#x439;" k="35" /> + <hkern u1="&#x416;" u2="&#x438;" k="37" /> + <hkern u1="&#x416;" u2="&#x435;" k="49" /> + <hkern u1="&#x416;" u2="&#x404;" k="51" /> + <hkern u1="&#x416;" u2="&#x401;" k="37" /> + <hkern u1="&#x416;" u2="&#x427;" k="32" /> + <hkern u1="&#x416;" u2="&#x424;" k="72" /> + <hkern u1="&#x416;" u2="&#x421;" k="50" /> + <hkern u1="&#x416;" u2="&#x41e;" k="66" /> + <hkern u1="&#x416;" u2="&#x419;" k="20" /> + <hkern u1="&#x416;" u2="&#x418;" k="20" /> + <hkern u1="&#x416;" u2="&#x415;" k="37" /> + <hkern u1="&#x417;" u2="&#x425;" k="40" /> + <hkern u1="&#x417;" u2="&#x422;" k="31" /> + <hkern u1="&#x417;" u2="&#x41b;" k="37" /> + <hkern u1="&#x417;" u2="&#x416;" k="40" /> + <hkern u1="&#x417;" u2="&#x410;" k="37" /> + <hkern u1="&#x418;" u2="&#x41b;" k="20" /> + <hkern u1="&#x418;" u2="&#x416;" k="20" /> + <hkern u1="&#x418;" u2="&#x414;" k="20" /> + <hkern u1="&#x418;" u2="&#x410;" k="20" /> + <hkern u1="&#x419;" u2="&#x41b;" k="20" /> + <hkern u1="&#x419;" u2="&#x416;" k="20" /> + <hkern u1="&#x419;" u2="&#x414;" k="20" /> + <hkern u1="&#x419;" u2="&#x410;" k="20" /> + <hkern u1="&#x41a;" u2="&#x45f;" k="35" /> + <hkern u1="&#x41a;" u2="&#x45e;" k="35" /> + <hkern u1="&#x41a;" u2="&#x454;" k="40" /> + <hkern u1="&#x41a;" u2="&#x451;" k="37" /> + <hkern u1="&#x41a;" u2="&#x447;" k="80" /> + <hkern u1="&#x41a;" u2="&#x444;" k="37" /> + <hkern u1="&#x41a;" u2="&#x443;" k="35" /> + <hkern u1="&#x41a;" u2="&#x442;" k="60" /> + <hkern u1="&#x41a;" u2="&#x441;" k="37" /> + <hkern u1="&#x41a;" u2="&#x43e;" k="45" /> + <hkern u1="&#x41a;" u2="&#x439;" k="35" /> + <hkern u1="&#x41a;" u2="&#x438;" k="37" /> + <hkern u1="&#x41a;" u2="&#x435;" k="49" /> + <hkern u1="&#x41a;" u2="&#x404;" k="51" /> + <hkern u1="&#x41a;" u2="&#x401;" k="37" /> + <hkern u1="&#x41a;" u2="&#x427;" k="32" /> + <hkern u1="&#x41a;" u2="&#x424;" k="72" /> + <hkern u1="&#x41a;" u2="&#x421;" k="50" /> + <hkern u1="&#x41a;" u2="&#x41e;" k="66" /> + <hkern u1="&#x41a;" u2="&#x419;" k="20" /> + <hkern u1="&#x41a;" u2="&#x418;" k="20" /> + <hkern u1="&#x41a;" u2="&#x415;" k="37" /> + <hkern u1="&#x41b;" u2="&#x2019;" k="40" /> + <hkern u1="&#x41b;" u2="&#x45e;" k="25" /> + <hkern u1="&#x41b;" u2="&#x451;" k="20" /> + <hkern u1="&#x41b;" u2="&#x447;" k="51" /> + <hkern u1="&#x41b;" u2="&#x443;" k="25" /> + <hkern u1="&#x41b;" u2="&#x442;" k="51" /> + <hkern u1="&#x41b;" u2="&#x43e;" k="20" /> + <hkern u1="&#x41b;" u2="&#x435;" k="20" /> + <hkern u1="&#x41b;" u2="&#x40f;" k="25" /> + <hkern u1="&#x41b;" u2="&#x40b;" k="60" /> + <hkern u1="&#x41b;" u2="&#x404;" k="25" /> + <hkern u1="&#x41b;" u2="&#x402;" k="60" /> + <hkern u1="&#x41b;" u2="&#x401;" k="25" /> + <hkern u1="&#x41b;" u2="&#x427;" k="55" /> + <hkern u1="&#x41b;" u2="&#x426;" k="20" /> + <hkern u1="&#x41b;" u2="&#x424;" k="50" /> + <hkern u1="&#x41b;" u2="&#x422;" k="55" /> + <hkern u1="&#x41b;" u2="&#x421;" k="20" /> + <hkern u1="&#x41b;" u2="&#x41e;" k="20" /> + <hkern u1="&#x41b;" u2="&#x419;" k="20" /> + <hkern u1="&#x41b;" u2="&#x418;" k="20" /> + <hkern u1="&#x41b;" u2="&#x415;" k="25" /> + <hkern u1="&#x41b;" u2="&#x201d;" k="40" /> + <hkern u1="&#x41e;" u2="&#x40e;" k="28" /> + <hkern u1="&#x41e;" u2="&#x40b;" k="22" /> + <hkern u1="&#x41e;" u2="&#x402;" k="22" /> + <hkern u1="&#x41e;" u2="&#x425;" k="34" /> + <hkern u1="&#x41e;" u2="&#x423;" k="28" /> + <hkern u1="&#x41e;" u2="&#x422;" k="31" /> + <hkern u1="&#x41e;" u2="&#x41b;" k="30" /> + <hkern u1="&#x41e;" u2="&#x416;" k="50" /> + <hkern u1="&#x41e;" u2="&#x414;" k="22" /> + <hkern u1="&#x41e;" u2="&#x410;" k="30" /> + <hkern u1="&#x420;" u2="&#x2026;" k="125" /> + <hkern u1="&#x420;" u2="&#x2e;" k="125" /> + <hkern u1="&#x420;" u2="&#x2c;" k="125" /> + <hkern u1="&#x420;" u2="&#x459;" k="68" /> + <hkern u1="&#x420;" u2="&#x44a;" k="-25" /> + <hkern u1="&#x420;" u2="&#x43b;" k="63" /> + <hkern u1="&#x420;" u2="&#x434;" k="80" /> + <hkern u1="&#x420;" u2="&#x40e;" k="17" /> + <hkern u1="&#x420;" u2="&#x409;" k="62" /> + <hkern u1="&#x420;" u2="&#x425;" k="31" /> + <hkern u1="&#x420;" u2="&#x423;" k="17" /> + <hkern u1="&#x420;" u2="&#x41b;" k="56" /> + <hkern u1="&#x420;" u2="&#x416;" k="48" /> + <hkern u1="&#x420;" u2="&#x414;" k="88" /> + <hkern u1="&#x420;" u2="&#x410;" k="56" /> + <hkern u1="&#x420;" u2="&#x201e;" k="84" /> + <hkern u1="&#x420;" u2="&#x201a;" k="84" /> + <hkern u1="&#x421;" u2="&#x454;" k="28" /> + <hkern u1="&#x421;" u2="&#x451;" k="22" /> + <hkern u1="&#x421;" u2="&#x447;" k="68" /> + <hkern u1="&#x421;" u2="&#x442;" k="42" /> + <hkern u1="&#x421;" u2="&#x441;" k="20" /> + <hkern u1="&#x421;" u2="&#x43e;" k="25" /> + <hkern u1="&#x421;" u2="&#x435;" k="22" /> + <hkern u1="&#x421;" u2="&#x404;" k="37" /> + <hkern u1="&#x421;" u2="&#x424;" k="54" /> + <hkern u1="&#x421;" u2="&#x421;" k="40" /> + <hkern u1="&#x421;" u2="&#x41e;" k="25" /> + <hkern u1="&#x422;" u2="&#x2026;" k="62" /> + <hkern u1="&#x422;" u2="&#x2e;" k="62" /> + <hkern u1="&#x422;" u2="&#x2c;" k="62" /> + <hkern u1="&#x422;" u2="&#x45f;" k="65" /> + <hkern u1="&#x422;" u2="&#x45e;" k="54" /> + <hkern u1="&#x422;" u2="&#x45c;" k="59" /> + <hkern u1="&#x422;" u2="&#x45a;" k="45" /> + <hkern u1="&#x422;" u2="&#x459;" k="108" /> + <hkern u1="&#x422;" u2="&#x455;" k="54" /> + <hkern u1="&#x422;" u2="&#x454;" k="68" /> + <hkern u1="&#x422;" u2="&#x453;" k="56" /> + <hkern u1="&#x422;" u2="&#x451;" k="54" /> + <hkern u1="&#x422;" u2="&#x44f;" k="73" /> + <hkern u1="&#x422;" u2="&#x44e;" k="70" /> + <hkern u1="&#x422;" u2="&#x44d;" k="45" /> + <hkern u1="&#x422;" u2="&#x44c;" k="54" /> + <hkern u1="&#x422;" u2="&#x44b;" k="56" /> + <hkern u1="&#x422;" u2="&#x449;" k="88" /> + <hkern u1="&#x422;" u2="&#x448;" k="88" /> + <hkern u1="&#x422;" u2="&#x447;" k="71" /> + <hkern u1="&#x422;" u2="&#x446;" k="71" /> + <hkern u1="&#x422;" u2="&#x445;" k="28" /> + <hkern u1="&#x422;" u2="&#x444;" k="82" /> + <hkern u1="&#x422;" u2="&#x443;" k="54" /> + <hkern u1="&#x422;" u2="&#x442;" k="51" /> + <hkern u1="&#x422;" u2="&#x441;" k="71" /> + <hkern u1="&#x422;" u2="&#x440;" k="71" /> + <hkern u1="&#x422;" u2="&#x43f;" k="79" /> + <hkern u1="&#x422;" u2="&#x43e;" k="85" /> + <hkern u1="&#x422;" u2="&#x43d;" k="65" /> + <hkern u1="&#x422;" u2="&#x43c;" k="68" /> + <hkern u1="&#x422;" u2="&#x43b;" k="96" /> + <hkern u1="&#x422;" u2="&#x43a;" k="42" /> + <hkern u1="&#x422;" u2="&#x439;" k="48" /> + <hkern u1="&#x422;" u2="&#x438;" k="48" /> + <hkern u1="&#x422;" u2="&#x435;" k="71" /> + <hkern u1="&#x422;" u2="&#x434;" k="108" /> + <hkern u1="&#x422;" u2="&#x491;" k="54" /> + <hkern u1="&#x422;" u2="&#x433;" k="65" /> + <hkern u1="&#x422;" u2="&#x432;" k="59" /> + <hkern u1="&#x422;" u2="&#x431;" k="42" /> + <hkern u1="&#x422;" u2="&#x430;" k="59" /> + <hkern u1="&#x422;" u2="&#x409;" k="68" /> + <hkern u1="&#x422;" u2="&#x404;" k="45" /> + <hkern u1="&#x422;" u2="&#x403;" k="20" /> + <hkern u1="&#x422;" u2="&#x401;" k="20" /> + <hkern u1="&#x422;" u2="&#x424;" k="42" /> + <hkern u1="&#x422;" u2="&#x421;" k="34" /> + <hkern u1="&#x422;" u2="&#x41f;" k="25" /> + <hkern u1="&#x422;" u2="&#x41e;" k="28" /> + <hkern u1="&#x422;" u2="&#x41b;" k="75" /> + <hkern u1="&#x422;" u2="&#x415;" k="22" /> + <hkern u1="&#x422;" u2="&#x414;" k="85" /> + <hkern u1="&#x422;" u2="&#x490;" k="28" /> + <hkern u1="&#x422;" u2="&#x413;" k="28" /> + <hkern u1="&#x422;" u2="&#x410;" k="75" /> + <hkern u1="&#x422;" u2="&#x201e;" k="62" /> + <hkern u1="&#x422;" u2="&#x201a;" k="62" /> + <hkern u1="&#x422;" u2="&#x2d;" k="86" /> + <hkern u1="&#x423;" u2="&#x2026;" k="65" /> + <hkern u1="&#x423;" u2="&#x2e;" k="65" /> + <hkern u1="&#x423;" u2="&#x2c;" k="55" /> + <hkern u1="&#x423;" u2="&#x45f;" k="50" /> + <hkern u1="&#x423;" u2="&#x45e;" k="20" /> + <hkern u1="&#x423;" u2="&#x45c;" k="40" /> + <hkern u1="&#x423;" u2="&#x45a;" k="40" /> + <hkern u1="&#x423;" u2="&#x459;" k="70" /> + <hkern u1="&#x423;" u2="&#x455;" k="40" /> + <hkern u1="&#x423;" u2="&#x454;" k="50" /> + <hkern u1="&#x423;" u2="&#x453;" k="60" /> + <hkern u1="&#x423;" u2="&#x451;" k="45" /> + <hkern u1="&#x423;" u2="&#x44f;" k="65" /> + <hkern u1="&#x423;" u2="&#x44e;" k="40" /> + <hkern u1="&#x423;" u2="&#x44d;" k="30" /> + <hkern u1="&#x423;" u2="&#x44c;" k="50" /> + <hkern u1="&#x423;" u2="&#x44b;" k="40" /> + <hkern u1="&#x423;" u2="&#x449;" k="50" /> + <hkern u1="&#x423;" u2="&#x448;" k="40" /> + <hkern u1="&#x423;" u2="&#x447;" k="50" /> + <hkern u1="&#x423;" u2="&#x446;" k="50" /> + <hkern u1="&#x423;" u2="&#x445;" k="20" /> + <hkern u1="&#x423;" u2="&#x444;" k="50" /> + <hkern u1="&#x423;" u2="&#x442;" k="40" /> + <hkern u1="&#x423;" u2="&#x441;" k="50" /> + <hkern u1="&#x423;" u2="&#x43f;" k="50" /> + <hkern u1="&#x423;" u2="&#x43e;" k="50" /> + <hkern u1="&#x423;" u2="&#x43d;" k="50" /> + <hkern u1="&#x423;" u2="&#x43c;" k="50" /> + <hkern u1="&#x423;" u2="&#x43b;" k="70" /> + <hkern u1="&#x423;" u2="&#x43a;" k="40" /> + <hkern u1="&#x423;" u2="&#x438;" k="40" /> + <hkern u1="&#x423;" u2="&#x437;" k="30" /> + <hkern u1="&#x423;" u2="&#x436;" k="40" /> + <hkern u1="&#x423;" u2="&#x435;" k="50" /> + <hkern u1="&#x423;" u2="&#x434;" k="100" /> + <hkern u1="&#x423;" u2="&#x491;" k="50" /> + <hkern u1="&#x423;" u2="&#x433;" k="50" /> + <hkern u1="&#x423;" u2="&#x432;" k="48" /> + <hkern u1="&#x423;" u2="&#x431;" k="30" /> + <hkern u1="&#x423;" u2="&#x430;" k="40" /> + <hkern u1="&#x423;" u2="&#x409;" k="85" /> + <hkern u1="&#x423;" u2="&#x405;" k="28" /> + <hkern u1="&#x423;" u2="&#x404;" k="45" /> + <hkern u1="&#x423;" u2="&#x403;" k="31" /> + <hkern u1="&#x423;" u2="&#x401;" k="34" /> + <hkern u1="&#x423;" u2="&#x42f;" k="31" /> + <hkern u1="&#x423;" u2="&#x424;" k="37" /> + <hkern u1="&#x423;" u2="&#x421;" k="40" /> + <hkern u1="&#x423;" u2="&#x41f;" k="29" /> + <hkern u1="&#x423;" u2="&#x41e;" k="40" /> + <hkern u1="&#x423;" u2="&#x41b;" k="65" /> + <hkern u1="&#x423;" u2="&#x415;" k="34" /> + <hkern u1="&#x423;" u2="&#x414;" k="100" /> + <hkern u1="&#x423;" u2="&#x490;" k="26" /> + <hkern u1="&#x423;" u2="&#x413;" k="26" /> + <hkern u1="&#x423;" u2="&#x410;" k="65" /> + <hkern u1="&#x423;" u2="&#x201e;" k="50" /> + <hkern u1="&#x423;" u2="&#x201a;" k="50" /> + <hkern u1="&#x424;" u2="&#x2026;" k="125" /> + <hkern u1="&#x424;" u2="&#x2e;" k="125" /> + <hkern u1="&#x424;" u2="&#x2c;" k="125" /> + <hkern u1="&#x424;" u2="&#x459;" k="51" /> + <hkern u1="&#x424;" u2="&#x43b;" k="60" /> + <hkern u1="&#x424;" u2="&#x434;" k="90" /> + <hkern u1="&#x424;" u2="&#x40e;" k="36" /> + <hkern u1="&#x424;" u2="&#x40b;" k="51" /> + <hkern u1="&#x424;" u2="&#x409;" k="48" /> + <hkern u1="&#x424;" u2="&#x402;" k="51" /> + <hkern u1="&#x424;" u2="&#x425;" k="57" /> + <hkern u1="&#x424;" u2="&#x423;" k="36" /> + <hkern u1="&#x424;" u2="&#x422;" k="42" /> + <hkern u1="&#x424;" u2="&#x41b;" k="50" /> + <hkern u1="&#x424;" u2="&#x416;" k="65" /> + <hkern u1="&#x424;" u2="&#x414;" k="99" /> + <hkern u1="&#x424;" u2="&#x410;" k="50" /> + <hkern u1="&#x424;" u2="&#x201e;" k="84" /> + <hkern u1="&#x424;" u2="&#x201a;" k="84" /> + <hkern u1="&#x425;" u2="&#x45e;" k="31" /> + <hkern u1="&#x425;" u2="&#x454;" k="20" /> + <hkern u1="&#x425;" u2="&#x447;" k="63" /> + <hkern u1="&#x425;" u2="&#x446;" k="31" /> + <hkern u1="&#x425;" u2="&#x444;" k="34" /> + <hkern u1="&#x425;" u2="&#x442;" k="34" /> + <hkern u1="&#x425;" u2="&#x441;" k="26" /> + <hkern u1="&#x425;" u2="&#x43e;" k="31" /> + <hkern u1="&#x425;" u2="&#x439;" k="31" /> + <hkern u1="&#x425;" u2="&#x438;" k="31" /> + <hkern u1="&#x425;" u2="&#x435;" k="37" /> + <hkern u1="&#x425;" u2="&#x40f;" k="26" /> + <hkern u1="&#x425;" u2="&#x404;" k="30" /> + <hkern u1="&#x425;" u2="&#x401;" k="31" /> + <hkern u1="&#x425;" u2="&#x429;" k="20" /> + <hkern u1="&#x425;" u2="&#x428;" k="20" /> + <hkern u1="&#x425;" u2="&#x427;" k="31" /> + <hkern u1="&#x425;" u2="&#x426;" k="20" /> + <hkern u1="&#x425;" u2="&#x424;" k="62" /> + <hkern u1="&#x425;" u2="&#x421;" k="40" /> + <hkern u1="&#x425;" u2="&#x41e;" k="54" /> + <hkern u1="&#x425;" u2="&#x419;" k="20" /> + <hkern u1="&#x425;" u2="&#x418;" k="20" /> + <hkern u1="&#x425;" u2="&#x415;" k="34" /> + <hkern u1="&#x425;" u2="&#x2d;" k="65" /> + <hkern u1="&#x426;" u2="&#x458;" k="-34" /> + <hkern u1="&#x426;" u2="&#x442;" k="48" /> + <hkern u1="&#x426;" u2="&#x40b;" k="45" /> + <hkern u1="&#x426;" u2="&#x408;" k="-37" /> + <hkern u1="&#x426;" u2="&#x402;" k="45" /> + <hkern u1="&#x426;" u2="&#x427;" k="51" /> + <hkern u1="&#x426;" u2="&#x424;" k="34" /> + <hkern u1="&#x426;" u2="&#x422;" k="31" /> + <hkern u1="&#x426;" u2="&#x419;" k="20" /> + <hkern u1="&#x426;" u2="&#x418;" k="20" /> + <hkern u1="&#x426;" u2="&#x415;" k="26" /> + <hkern u1="&#x429;" u2="&#x458;" k="-34" /> + <hkern u1="&#x429;" u2="&#x442;" k="48" /> + <hkern u1="&#x429;" u2="&#x40b;" k="45" /> + <hkern u1="&#x429;" u2="&#x408;" k="-37" /> + <hkern u1="&#x429;" u2="&#x402;" k="45" /> + <hkern u1="&#x429;" u2="&#x427;" k="51" /> + <hkern u1="&#x429;" u2="&#x424;" k="34" /> + <hkern u1="&#x429;" u2="&#x422;" k="31" /> + <hkern u1="&#x429;" u2="&#x419;" k="20" /> + <hkern u1="&#x429;" u2="&#x418;" k="20" /> + <hkern u1="&#x429;" u2="&#x415;" k="26" /> + <hkern u1="&#x42a;" u2="&#x442;" k="40" /> + <hkern u1="&#x42a;" u2="&#x40b;" k="91" /> + <hkern u1="&#x42a;" u2="&#x402;" k="91" /> + <hkern u1="&#x42a;" u2="&#x427;" k="52" /> + <hkern u1="&#x42a;" u2="&#x425;" k="31" /> + <hkern u1="&#x42a;" u2="&#x424;" k="17" /> + <hkern u1="&#x42a;" u2="&#x422;" k="89" /> + <hkern u1="&#x42a;" u2="&#x41b;" k="20" /> + <hkern u1="&#x42a;" u2="&#x416;" k="20" /> + <hkern u1="&#x42a;" u2="&#x410;" k="20" /> + <hkern u1="&#x42c;" u2="&#x442;" k="40" /> + <hkern u1="&#x42c;" u2="&#x436;" k="17" /> + <hkern u1="&#x42c;" u2="&#x40b;" k="91" /> + <hkern u1="&#x42c;" u2="&#x402;" k="91" /> + <hkern u1="&#x42c;" u2="&#x427;" k="52" /> + <hkern u1="&#x42c;" u2="&#x425;" k="31" /> + <hkern u1="&#x42c;" u2="&#x424;" k="17" /> + <hkern u1="&#x42c;" u2="&#x422;" k="89" /> + <hkern u1="&#x42c;" u2="&#x41b;" k="20" /> + <hkern u1="&#x42c;" u2="&#x416;" k="20" /> + <hkern u1="&#x42c;" u2="&#x410;" k="20" /> + <hkern u1="&#x42d;" u2="&#x43b;" k="43" /> + <hkern u1="&#x42d;" u2="&#x434;" k="37" /> + <hkern u1="&#x42d;" u2="&#x40e;" k="26" /> + <hkern u1="&#x42d;" u2="&#x40b;" k="23" /> + <hkern u1="&#x42d;" u2="&#x402;" k="23" /> + <hkern u1="&#x42d;" u2="&#x427;" k="26" /> + <hkern u1="&#x42d;" u2="&#x425;" k="34" /> + <hkern u1="&#x42d;" u2="&#x422;" k="20" /> + <hkern u1="&#x42d;" u2="&#x41b;" k="20" /> + <hkern u1="&#x42d;" u2="&#x416;" k="52" /> + <hkern u1="&#x42d;" u2="&#x414;" k="26" /> + <hkern u1="&#x42d;" u2="&#x410;" k="20" /> + <hkern u1="&#x42e;" u2="&#x434;" k="32" /> + <hkern u1="&#x42e;" u2="&#x40e;" k="25" /> + <hkern u1="&#x42e;" u2="&#x40b;" k="23" /> + <hkern u1="&#x42e;" u2="&#x402;" k="23" /> + <hkern u1="&#x42e;" u2="&#x427;" k="23" /> + <hkern u1="&#x42e;" u2="&#x425;" k="37" /> + <hkern u1="&#x42e;" u2="&#x423;" k="25" /> + <hkern u1="&#x42e;" u2="&#x422;" k="22" /> + <hkern u1="&#x42e;" u2="&#x41b;" k="30" /> + <hkern u1="&#x42e;" u2="&#x416;" k="54" /> + <hkern u1="&#x42e;" u2="&#x414;" k="28" /> + <hkern u1="&#x42e;" u2="&#x410;" k="30" /> + <hkern u1="&#x402;" u2="&#x2026;" k="62" /> + <hkern u1="&#x402;" u2="&#x2e;" k="62" /> + <hkern u1="&#x402;" u2="&#x2c;" k="62" /> + <hkern u1="&#x402;" u2="&#x40b;" k="56" /> + <hkern u1="&#x402;" u2="&#x402;" k="56" /> + <hkern u1="&#x402;" u2="&#x427;" k="48" /> + <hkern u1="&#x402;" u2="&#x424;" k="51" /> + <hkern u1="&#x402;" u2="&#x422;" k="77" /> + <hkern u1="&#x402;" u2="&#x421;" k="10" /> + <hkern u1="&#x402;" u2="&#x201e;" k="62" /> + <hkern u1="&#x402;" u2="&#x201a;" k="62" /> + <hkern u1="&#x402;" u2="&#x2d;" k="86" /> + <hkern u1="&#x403;" u2="&#x2026;" k="130" /> + <hkern u1="&#x403;" u2="&#x2e;" k="130" /> + <hkern u1="&#x403;" u2="&#x2c;" k="130" /> + <hkern u1="&#x403;" u2="&#x45f;" k="65" /> + <hkern u1="&#x403;" u2="&#x45e;" k="65" /> + <hkern u1="&#x403;" u2="&#x45c;" k="65" /> + <hkern u1="&#x403;" u2="&#x45a;" k="65" /> + <hkern u1="&#x403;" u2="&#x459;" k="119" /> + <hkern u1="&#x403;" u2="&#x455;" k="74" /> + <hkern u1="&#x403;" u2="&#x454;" k="85" /> + <hkern u1="&#x403;" u2="&#x453;" k="65" /> + <hkern u1="&#x403;" u2="&#x451;" k="62" /> + <hkern u1="&#x403;" u2="&#x44f;" k="105" /> + <hkern u1="&#x403;" u2="&#x44e;" k="68" /> + <hkern u1="&#x403;" u2="&#x44d;" k="65" /> + <hkern u1="&#x403;" u2="&#x44c;" k="68" /> + <hkern u1="&#x403;" u2="&#x44b;" k="68" /> + <hkern u1="&#x403;" u2="&#x449;" k="79" /> + <hkern u1="&#x403;" u2="&#x448;" k="79" /> + <hkern u1="&#x403;" u2="&#x447;" k="74" /> + <hkern u1="&#x403;" u2="&#x446;" k="76" /> + <hkern u1="&#x403;" u2="&#x445;" k="71" /> + <hkern u1="&#x403;" u2="&#x444;" k="122" /> + <hkern u1="&#x403;" u2="&#x443;" k="65" /> + <hkern u1="&#x403;" u2="&#x442;" k="68" /> + <hkern u1="&#x403;" u2="&#x441;" k="91" /> + <hkern u1="&#x403;" u2="&#x440;" k="68" /> + <hkern u1="&#x403;" u2="&#x43f;" k="108" /> + <hkern u1="&#x403;" u2="&#x43e;" k="88" /> + <hkern u1="&#x403;" u2="&#x43d;" k="65" /> + <hkern u1="&#x403;" u2="&#x43c;" k="68" /> + <hkern u1="&#x403;" u2="&#x43b;" k="122" /> + <hkern u1="&#x403;" u2="&#x43a;" k="65" /> + <hkern u1="&#x403;" u2="&#x439;" k="65" /> + <hkern u1="&#x403;" u2="&#x438;" k="65" /> + <hkern u1="&#x403;" u2="&#x437;" k="45" /> + <hkern u1="&#x403;" u2="&#x436;" k="39" /> + <hkern u1="&#x403;" u2="&#x435;" k="93" /> + <hkern u1="&#x403;" u2="&#x434;" k="142" /> + <hkern u1="&#x403;" u2="&#x491;" k="68" /> + <hkern u1="&#x403;" u2="&#x433;" k="65" /> + <hkern u1="&#x403;" u2="&#x432;" k="62" /> + <hkern u1="&#x403;" u2="&#x431;" k="68" /> + <hkern u1="&#x403;" u2="&#x430;" k="59" /> + <hkern u1="&#x403;" u2="&#x409;" k="80" /> + <hkern u1="&#x403;" u2="&#x404;" k="34" /> + <hkern u1="&#x403;" u2="&#x403;" k="28" /> + <hkern u1="&#x403;" u2="&#x401;" k="35" /> + <hkern u1="&#x403;" u2="&#x42f;" k="23" /> + <hkern u1="&#x403;" u2="&#x424;" k="57" /> + <hkern u1="&#x403;" u2="&#x421;" k="40" /> + <hkern u1="&#x403;" u2="&#x41f;" k="28" /> + <hkern u1="&#x403;" u2="&#x41e;" k="37" /> + <hkern u1="&#x403;" u2="&#x41b;" k="101" /> + <hkern u1="&#x403;" u2="&#x415;" k="35" /> + <hkern u1="&#x403;" u2="&#x414;" k="139" /> + <hkern u1="&#x403;" u2="&#x410;" k="101" /> + <hkern u1="&#x403;" u2="&#x201e;" k="57" /> + <hkern u1="&#x403;" u2="&#x201a;" k="57" /> + <hkern u1="&#x404;" u2="&#x424;" k="34" /> + <hkern u1="&#x409;" u2="&#x434;" k="20" /> + <hkern u1="&#x409;" u2="&#x40e;" k="25" /> + <hkern u1="&#x409;" u2="&#x40b;" k="80" /> + <hkern u1="&#x409;" u2="&#x402;" k="80" /> + <hkern u1="&#x409;" u2="&#x42f;" k="25" /> + <hkern u1="&#x409;" u2="&#x427;" k="60" /> + <hkern u1="&#x409;" u2="&#x425;" k="29" /> + <hkern u1="&#x409;" u2="&#x424;" k="40" /> + <hkern u1="&#x409;" u2="&#x423;" k="25" /> + <hkern u1="&#x409;" u2="&#x422;" k="96" /> + <hkern u1="&#x409;" u2="&#x416;" k="40" /> + <hkern u1="&#x40a;" u2="&#x40e;" k="23" /> + <hkern u1="&#x40a;" u2="&#x40b;" k="91" /> + <hkern u1="&#x40a;" u2="&#x402;" k="91" /> + <hkern u1="&#x40a;" u2="&#x427;" k="48" /> + <hkern u1="&#x40a;" u2="&#x423;" k="23" /> + <hkern u1="&#x40a;" u2="&#x422;" k="74" /> + <hkern u1="&#x40a;" u2="&#x416;" k="40" /> + <hkern u1="&#x40b;" u2="&#x2026;" k="62" /> + <hkern u1="&#x40b;" u2="&#x2e;" k="62" /> + <hkern u1="&#x40b;" u2="&#x2c;" k="62" /> + <hkern u1="&#x40b;" u2="&#x40b;" k="56" /> + <hkern u1="&#x40b;" u2="&#x402;" k="56" /> + <hkern u1="&#x40b;" u2="&#x427;" k="65" /> + <hkern u1="&#x40b;" u2="&#x424;" k="51" /> + <hkern u1="&#x40b;" u2="&#x422;" k="77" /> + <hkern u1="&#x40b;" u2="&#x421;" k="10" /> + <hkern u1="&#x40b;" u2="&#x201e;" k="62" /> + <hkern u1="&#x40b;" u2="&#x201a;" k="62" /> + <hkern u1="&#x40b;" u2="&#x2d;" k="86" /> + <hkern u1="&#x40c;" u2="&#x45f;" k="35" /> + <hkern u1="&#x40c;" u2="&#x45e;" k="35" /> + <hkern u1="&#x40c;" u2="&#x454;" k="40" /> + <hkern u1="&#x40c;" u2="&#x451;" k="37" /> + <hkern u1="&#x40c;" u2="&#x447;" k="80" /> + <hkern u1="&#x40c;" u2="&#x444;" k="37" /> + <hkern u1="&#x40c;" u2="&#x443;" k="35" /> + <hkern u1="&#x40c;" u2="&#x442;" k="60" /> + <hkern u1="&#x40c;" u2="&#x441;" k="37" /> + <hkern u1="&#x40c;" u2="&#x43e;" k="45" /> + <hkern u1="&#x40c;" u2="&#x439;" k="35" /> + <hkern u1="&#x40c;" u2="&#x438;" k="37" /> + <hkern u1="&#x40c;" u2="&#x435;" k="49" /> + <hkern u1="&#x40c;" u2="&#x404;" k="51" /> + <hkern u1="&#x40c;" u2="&#x401;" k="37" /> + <hkern u1="&#x40c;" u2="&#x427;" k="32" /> + <hkern u1="&#x40c;" u2="&#x424;" k="72" /> + <hkern u1="&#x40c;" u2="&#x421;" k="50" /> + <hkern u1="&#x40c;" u2="&#x41e;" k="66" /> + <hkern u1="&#x40c;" u2="&#x419;" k="20" /> + <hkern u1="&#x40c;" u2="&#x418;" k="20" /> + <hkern u1="&#x40c;" u2="&#x415;" k="37" /> + <hkern u1="&#x40e;" u2="&#x2026;" k="65" /> + <hkern u1="&#x40e;" u2="&#x2e;" k="65" /> + <hkern u1="&#x40e;" u2="&#x2c;" k="55" /> + <hkern u1="&#x40e;" u2="&#x45f;" k="50" /> + <hkern u1="&#x40e;" u2="&#x45e;" k="20" /> + <hkern u1="&#x40e;" u2="&#x45c;" k="40" /> + <hkern u1="&#x40e;" u2="&#x45a;" k="40" /> + <hkern u1="&#x40e;" u2="&#x459;" k="70" /> + <hkern u1="&#x40e;" u2="&#x455;" k="40" /> + <hkern u1="&#x40e;" u2="&#x454;" k="50" /> + <hkern u1="&#x40e;" u2="&#x453;" k="60" /> + <hkern u1="&#x40e;" u2="&#x451;" k="45" /> + <hkern u1="&#x40e;" u2="&#x44f;" k="65" /> + <hkern u1="&#x40e;" u2="&#x44e;" k="40" /> + <hkern u1="&#x40e;" u2="&#x44d;" k="30" /> + <hkern u1="&#x40e;" u2="&#x44c;" k="50" /> + <hkern u1="&#x40e;" u2="&#x44b;" k="40" /> + <hkern u1="&#x40e;" u2="&#x449;" k="50" /> + <hkern u1="&#x40e;" u2="&#x448;" k="40" /> + <hkern u1="&#x40e;" u2="&#x447;" k="50" /> + <hkern u1="&#x40e;" u2="&#x446;" k="50" /> + <hkern u1="&#x40e;" u2="&#x445;" k="20" /> + <hkern u1="&#x40e;" u2="&#x444;" k="50" /> + <hkern u1="&#x40e;" u2="&#x442;" k="40" /> + <hkern u1="&#x40e;" u2="&#x441;" k="50" /> + <hkern u1="&#x40e;" u2="&#x43f;" k="50" /> + <hkern u1="&#x40e;" u2="&#x43e;" k="50" /> + <hkern u1="&#x40e;" u2="&#x43d;" k="50" /> + <hkern u1="&#x40e;" u2="&#x43c;" k="50" /> + <hkern u1="&#x40e;" u2="&#x43b;" k="70" /> + <hkern u1="&#x40e;" u2="&#x43a;" k="40" /> + <hkern u1="&#x40e;" u2="&#x438;" k="40" /> + <hkern u1="&#x40e;" u2="&#x437;" k="30" /> + <hkern u1="&#x40e;" u2="&#x436;" k="40" /> + <hkern u1="&#x40e;" u2="&#x435;" k="50" /> + <hkern u1="&#x40e;" u2="&#x434;" k="100" /> + <hkern u1="&#x40e;" u2="&#x491;" k="50" /> + <hkern u1="&#x40e;" u2="&#x433;" k="50" /> + <hkern u1="&#x40e;" u2="&#x432;" k="48" /> + <hkern u1="&#x40e;" u2="&#x431;" k="30" /> + <hkern u1="&#x40e;" u2="&#x430;" k="40" /> + <hkern u1="&#x40e;" u2="&#x409;" k="85" /> + <hkern u1="&#x40e;" u2="&#x405;" k="28" /> + <hkern u1="&#x40e;" u2="&#x404;" k="45" /> + <hkern u1="&#x40e;" u2="&#x403;" k="31" /> + <hkern u1="&#x40e;" u2="&#x401;" k="34" /> + <hkern u1="&#x40e;" u2="&#x42f;" k="31" /> + <hkern u1="&#x40e;" u2="&#x424;" k="37" /> + <hkern u1="&#x40e;" u2="&#x421;" k="40" /> + <hkern u1="&#x40e;" u2="&#x41f;" k="29" /> + <hkern u1="&#x40e;" u2="&#x41e;" k="40" /> + <hkern u1="&#x40e;" u2="&#x41b;" k="65" /> + <hkern u1="&#x40e;" u2="&#x415;" k="34" /> + <hkern u1="&#x40e;" u2="&#x414;" k="100" /> + <hkern u1="&#x40e;" u2="&#x490;" k="26" /> + <hkern u1="&#x40e;" u2="&#x413;" k="26" /> + <hkern u1="&#x40e;" u2="&#x410;" k="65" /> + <hkern u1="&#x40e;" u2="&#x201e;" k="50" /> + <hkern u1="&#x40e;" u2="&#x201a;" k="50" /> + <hkern u1="&#x430;" u2="&#x45e;" k="26" /> + <hkern u1="&#x430;" u2="&#x443;" k="26" /> + <hkern u1="&#x431;" u2="&#x45e;" k="34" /> + <hkern u1="&#x431;" u2="&#x447;" k="31" /> + <hkern u1="&#x431;" u2="&#x445;" k="30" /> + <hkern u1="&#x431;" u2="&#x443;" k="34" /> + <hkern u1="&#x431;" u2="&#x442;" k="37" /> + <hkern u1="&#x431;" u2="&#x43b;" k="23" /> + <hkern u1="&#x431;" u2="&#x436;" k="37" /> + <hkern u1="&#x431;" u2="&#x434;" k="20" /> + <hkern u1="&#x432;" u2="&#x436;" k="26" /> + <hkern u1="&#x433;" u2="&#x459;" k="57" /> + <hkern u1="&#x433;" u2="&#x44f;" k="23" /> + <hkern u1="&#x433;" u2="&#x44a;" k="-43" /> + <hkern u1="&#x433;" u2="&#x43b;" k="66" /> + <hkern u1="&#x433;" u2="&#x434;" k="68" /> + <hkern u1="&#x433;" u2="&#x41b;" k="34" /> + <hkern u1="&#x433;" u2="&#x410;" k="34" /> + <hkern u1="&#x491;" u2="&#x459;" k="57" /> + <hkern u1="&#x491;" u2="&#x44f;" k="23" /> + <hkern u1="&#x491;" u2="&#x44a;" k="-43" /> + <hkern u1="&#x491;" u2="&#x43b;" k="66" /> + <hkern u1="&#x491;" u2="&#x434;" k="68" /> + <hkern u1="&#x491;" u2="&#x41b;" k="34" /> + <hkern u1="&#x491;" u2="&#x410;" k="34" /> + <hkern u1="&#x434;" u2="&#x45e;" k="23" /> + <hkern u1="&#x434;" u2="&#x458;" k="-31" /> + <hkern u1="&#x434;" u2="&#x454;" k="20" /> + <hkern u1="&#x434;" u2="&#x451;" k="26" /> + <hkern u1="&#x434;" u2="&#x44a;" k="20" /> + <hkern u1="&#x434;" u2="&#x447;" k="77" /> + <hkern u1="&#x434;" u2="&#x444;" k="32" /> + <hkern u1="&#x434;" u2="&#x443;" k="23" /> + <hkern u1="&#x434;" u2="&#x442;" k="86" /> + <hkern u1="&#x434;" u2="&#x441;" k="20" /> + <hkern u1="&#x434;" u2="&#x43e;" k="26" /> + <hkern u1="&#x434;" u2="&#x435;" k="23" /> + <hkern u1="&#x434;" u2="&#x431;" k="23" /> + <hkern u1="&#x434;" u2="&#x430;" k="10" /> + <hkern u1="&#x435;" u2="&#x45e;" k="23" /> + <hkern u1="&#x435;" u2="&#x443;" k="23" /> + <hkern u1="&#x435;" u2="&#x442;" k="30" /> + <hkern u1="&#x435;" u2="&#x436;" k="43" /> + <hkern u1="&#x435;" u2="&#x434;" k="20" /> + <hkern u1="&#x436;" u2="&#x454;" k="46" /> + <hkern u1="&#x436;" u2="&#x451;" k="40" /> + <hkern u1="&#x436;" u2="&#x449;" k="32" /> + <hkern u1="&#x436;" u2="&#x448;" k="32" /> + <hkern u1="&#x436;" u2="&#x447;" k="49" /> + <hkern u1="&#x436;" u2="&#x446;" k="23" /> + <hkern u1="&#x436;" u2="&#x444;" k="43" /> + <hkern u1="&#x436;" u2="&#x441;" k="40" /> + <hkern u1="&#x436;" u2="&#x43e;" k="43" /> + <hkern u1="&#x436;" u2="&#x439;" k="20" /> + <hkern u1="&#x436;" u2="&#x438;" k="20" /> + <hkern u1="&#x436;" u2="&#x435;" k="43" /> + <hkern u1="&#x437;" u2="&#x45e;" k="20" /> + <hkern u1="&#x437;" u2="&#x443;" k="20" /> + <hkern u1="&#x437;" u2="&#x436;" k="34" /> + <hkern u1="&#x43a;" u2="&#x454;" k="46" /> + <hkern u1="&#x43a;" u2="&#x451;" k="40" /> + <hkern u1="&#x43a;" u2="&#x449;" k="32" /> + <hkern u1="&#x43a;" u2="&#x448;" k="32" /> + <hkern u1="&#x43a;" u2="&#x447;" k="49" /> + <hkern u1="&#x43a;" u2="&#x446;" k="23" /> + <hkern u1="&#x43a;" u2="&#x444;" k="43" /> + <hkern u1="&#x43a;" u2="&#x441;" k="40" /> + <hkern u1="&#x43a;" u2="&#x43e;" k="43" /> + <hkern u1="&#x43a;" u2="&#x439;" k="20" /> + <hkern u1="&#x43a;" u2="&#x438;" k="20" /> + <hkern u1="&#x43a;" u2="&#x435;" k="43" /> + <hkern u1="&#x43b;" u2="&#x45f;" k="26" /> + <hkern u1="&#x43b;" u2="&#x45e;" k="50" /> + <hkern u1="&#x43b;" u2="&#x455;" k="20" /> + <hkern u1="&#x43b;" u2="&#x454;" k="20" /> + <hkern u1="&#x43b;" u2="&#x451;" k="23" /> + <hkern u1="&#x43b;" u2="&#x44a;" k="17" /> + <hkern u1="&#x43b;" u2="&#x449;" k="23" /> + <hkern u1="&#x43b;" u2="&#x448;" k="23" /> + <hkern u1="&#x43b;" u2="&#x447;" k="71" /> + <hkern u1="&#x43b;" u2="&#x446;" k="31" /> + <hkern u1="&#x43b;" u2="&#x444;" k="23" /> + <hkern u1="&#x43b;" u2="&#x443;" k="50" /> + <hkern u1="&#x43b;" u2="&#x442;" k="74" /> + <hkern u1="&#x43b;" u2="&#x441;" k="26" /> + <hkern u1="&#x43b;" u2="&#x43e;" k="31" /> + <hkern u1="&#x43b;" u2="&#x439;" k="34" /> + <hkern u1="&#x43b;" u2="&#x438;" k="34" /> + <hkern u1="&#x43b;" u2="&#x435;" k="34" /> + <hkern u1="&#x43b;" u2="&#x431;" k="23" /> + <hkern u1="&#x43e;" u2="&#x45e;" k="28" /> + <hkern u1="&#x43e;" u2="&#x445;" k="30" /> + <hkern u1="&#x43e;" u2="&#x443;" k="28" /> + <hkern u1="&#x43e;" u2="&#x442;" k="37" /> + <hkern u1="&#x43e;" u2="&#x43b;" k="25" /> + <hkern u1="&#x43e;" u2="&#x436;" k="40" /> + <hkern u1="&#x43e;" u2="&#x434;" k="20" /> + <hkern u1="&#x43f;" u2="&#x45e;" k="11" /> + <hkern u1="&#x43f;" u2="&#x443;" k="11" /> + <hkern u1="&#x440;" u2="&#x45e;" k="23" /> + <hkern u1="&#x440;" u2="&#x445;" k="30" /> + <hkern u1="&#x440;" u2="&#x443;" k="23" /> + <hkern u1="&#x440;" u2="&#x442;" k="34" /> + <hkern u1="&#x440;" u2="&#x436;" k="40" /> + <hkern u1="&#x440;" u2="&#x434;" k="20" /> + <hkern u1="&#x441;" u2="&#x441;" k="15" /> + <hkern u1="&#x442;" u2="&#x459;" k="74" /> + <hkern u1="&#x442;" u2="&#x454;" k="26" /> + <hkern u1="&#x442;" u2="&#x453;" k="23" /> + <hkern u1="&#x442;" u2="&#x451;" k="37" /> + <hkern u1="&#x442;" u2="&#x44f;" k="31" /> + <hkern u1="&#x442;" u2="&#x44a;" k="-23" /> + <hkern u1="&#x442;" u2="&#x444;" k="34" /> + <hkern u1="&#x442;" u2="&#x441;" k="31" /> + <hkern u1="&#x442;" u2="&#x43e;" k="37" /> + <hkern u1="&#x442;" u2="&#x43b;" k="70" /> + <hkern u1="&#x442;" u2="&#x435;" k="34" /> + <hkern u1="&#x442;" u2="&#x434;" k="80" /> + <hkern u1="&#x442;" u2="&#x433;" k="29" /> + <hkern u1="&#x442;" u2="&#x430;" k="20" /> + <hkern u1="&#x443;" u2="&#x2026;" k="65" /> + <hkern u1="&#x443;" u2="&#x2e;" k="65" /> + <hkern u1="&#x443;" u2="&#x2c;" k="55" /> + <hkern u1="&#x443;" u2="&#x459;" k="60" /> + <hkern u1="&#x443;" u2="&#x454;" k="20" /> + <hkern u1="&#x443;" u2="&#x453;" k="20" /> + <hkern u1="&#x443;" u2="&#x451;" k="23" /> + <hkern u1="&#x443;" u2="&#x44f;" k="20" /> + <hkern u1="&#x443;" u2="&#x44a;" k="-20" /> + <hkern u1="&#x443;" u2="&#x444;" k="23" /> + <hkern u1="&#x443;" u2="&#x441;" k="23" /> + <hkern u1="&#x443;" u2="&#x43e;" k="23" /> + <hkern u1="&#x443;" u2="&#x43b;" k="54" /> + <hkern u1="&#x443;" u2="&#x435;" k="24" /> + <hkern u1="&#x443;" u2="&#x434;" k="46" /> + <hkern u1="&#x443;" u2="&#x201e;" k="50" /> + <hkern u1="&#x443;" u2="&#x201a;" k="50" /> + <hkern u1="&#x444;" u2="&#x45e;" k="20" /> + <hkern u1="&#x444;" u2="&#x445;" k="30" /> + <hkern u1="&#x444;" u2="&#x443;" k="20" /> + <hkern u1="&#x444;" u2="&#x442;" k="37" /> + <hkern u1="&#x444;" u2="&#x43b;" k="29" /> + <hkern u1="&#x444;" u2="&#x436;" k="40" /> + <hkern u1="&#x444;" u2="&#x434;" k="20" /> + <hkern u1="&#x445;" u2="&#x45f;" k="10" /> + <hkern u1="&#x445;" u2="&#x454;" k="31" /> + <hkern u1="&#x445;" u2="&#x451;" k="30" /> + <hkern u1="&#x445;" u2="&#x449;" k="20" /> + <hkern u1="&#x445;" u2="&#x448;" k="20" /> + <hkern u1="&#x445;" u2="&#x447;" k="30" /> + <hkern u1="&#x445;" u2="&#x446;" k="20" /> + <hkern u1="&#x445;" u2="&#x444;" k="30" /> + <hkern u1="&#x445;" u2="&#x441;" k="40" /> + <hkern u1="&#x445;" u2="&#x43e;" k="40" /> + <hkern u1="&#x445;" u2="&#x435;" k="40" /> + <hkern u1="&#x445;" u2="&#x431;" k="21" /> + <hkern u1="&#x446;" u2="&#x447;" k="29" /> + <hkern u1="&#x446;" u2="&#x442;" k="37" /> + <hkern u1="&#x449;" u2="&#x447;" k="32" /> + <hkern u1="&#x449;" u2="&#x442;" k="26" /> + <hkern u1="&#x44a;" u2="&#x45e;" k="40" /> + <hkern u1="&#x44a;" u2="&#x459;" k="20" /> + <hkern u1="&#x44a;" u2="&#x447;" k="34" /> + <hkern u1="&#x44a;" u2="&#x445;" k="20" /> + <hkern u1="&#x44a;" u2="&#x443;" k="40" /> + <hkern u1="&#x44a;" u2="&#x442;" k="79" /> + <hkern u1="&#x44a;" u2="&#x43b;" k="26" /> + <hkern u1="&#x44a;" u2="&#x436;" k="40" /> + <hkern u1="&#x44c;" u2="&#x45e;" k="40" /> + <hkern u1="&#x44c;" u2="&#x459;" k="20" /> + <hkern u1="&#x44c;" u2="&#x447;" k="34" /> + <hkern u1="&#x44c;" u2="&#x445;" k="20" /> + <hkern u1="&#x44c;" u2="&#x443;" k="40" /> + <hkern u1="&#x44c;" u2="&#x442;" k="79" /> + <hkern u1="&#x44c;" u2="&#x43b;" k="26" /> + <hkern u1="&#x44c;" u2="&#x436;" k="40" /> + <hkern u1="&#x44d;" u2="&#x45e;" k="20" /> + <hkern u1="&#x44d;" u2="&#x44d;" k="15" /> + <hkern u1="&#x44d;" u2="&#x447;" k="28" /> + <hkern u1="&#x44d;" u2="&#x445;" k="20" /> + <hkern u1="&#x44d;" u2="&#x443;" k="20" /> + <hkern u1="&#x44d;" u2="&#x442;" k="17" /> + <hkern u1="&#x44d;" u2="&#x43b;" k="20" /> + <hkern u1="&#x44d;" u2="&#x436;" k="50" /> + <hkern u1="&#x44d;" u2="&#x434;" k="23" /> + <hkern u1="&#x44e;" u2="&#x45e;" k="20" /> + <hkern u1="&#x44e;" u2="&#x445;" k="30" /> + <hkern u1="&#x44e;" u2="&#x443;" k="20" /> + <hkern u1="&#x44e;" u2="&#x442;" k="23" /> + <hkern u1="&#x44e;" u2="&#x43b;" k="20" /> + <hkern u1="&#x44e;" u2="&#x436;" k="40" /> + <hkern u1="&#x44e;" u2="&#x434;" k="20" /> + <hkern u1="&#x451;" u2="&#x45e;" k="23" /> + <hkern u1="&#x451;" u2="&#x445;" k="20" /> + <hkern u1="&#x451;" u2="&#x443;" k="23" /> + <hkern u1="&#x451;" u2="&#x442;" k="31" /> + <hkern u1="&#x451;" u2="&#x436;" k="34" /> + <hkern u1="&#x452;" u2="&#x442;" k="25" /> + <hkern u1="&#x453;" u2="&#x43b;" k="52" /> + <hkern u1="&#x453;" u2="&#x434;" k="77" /> + <hkern u1="&#x454;" u2="&#x454;" k="15" /> + <hkern u1="&#x459;" u2="&#x45e;" k="40" /> + <hkern u1="&#x459;" u2="&#x459;" k="20" /> + <hkern u1="&#x459;" u2="&#x447;" k="34" /> + <hkern u1="&#x459;" u2="&#x445;" k="20" /> + <hkern u1="&#x459;" u2="&#x443;" k="40" /> + <hkern u1="&#x459;" u2="&#x442;" k="79" /> + <hkern u1="&#x459;" u2="&#x43b;" k="26" /> + <hkern u1="&#x459;" u2="&#x436;" k="40" /> + <hkern u1="&#x45a;" u2="&#x45e;" k="40" /> + <hkern u1="&#x45a;" u2="&#x459;" k="20" /> + <hkern u1="&#x45a;" u2="&#x447;" k="34" /> + <hkern u1="&#x45a;" u2="&#x445;" k="20" /> + <hkern u1="&#x45a;" u2="&#x443;" k="40" /> + <hkern u1="&#x45a;" u2="&#x442;" k="79" /> + <hkern u1="&#x45a;" u2="&#x43b;" k="26" /> + <hkern u1="&#x45a;" u2="&#x436;" k="40" /> + <hkern u1="&#x45b;" u2="&#x45e;" k="31" /> + <hkern u1="&#x45b;" u2="&#x443;" k="31" /> + <hkern u1="&#x45c;" u2="&#x454;" k="46" /> + <hkern u1="&#x45c;" u2="&#x451;" k="40" /> + <hkern u1="&#x45c;" u2="&#x449;" k="32" /> + <hkern u1="&#x45c;" u2="&#x448;" k="32" /> + <hkern u1="&#x45c;" u2="&#x447;" k="49" /> + <hkern u1="&#x45c;" u2="&#x446;" k="23" /> + <hkern u1="&#x45c;" u2="&#x444;" k="43" /> + <hkern u1="&#x45c;" u2="&#x441;" k="40" /> + <hkern u1="&#x45c;" u2="&#x43e;" k="43" /> + <hkern u1="&#x45c;" u2="&#x439;" k="20" /> + <hkern u1="&#x45c;" u2="&#x438;" k="20" /> + <hkern u1="&#x45c;" u2="&#x435;" k="43" /> + <hkern u1="&#x45e;" u2="&#x2026;" k="65" /> + <hkern u1="&#x45e;" u2="&#x2e;" k="65" /> + <hkern u1="&#x45e;" u2="&#x2c;" k="55" /> + <hkern u1="&#x45e;" u2="&#x459;" k="60" /> + <hkern u1="&#x45e;" u2="&#x454;" k="20" /> + <hkern u1="&#x45e;" u2="&#x453;" k="20" /> + <hkern u1="&#x45e;" u2="&#x451;" k="23" /> + <hkern u1="&#x45e;" u2="&#x44f;" k="20" /> + <hkern u1="&#x45e;" u2="&#x44a;" k="-20" /> + <hkern u1="&#x45e;" u2="&#x444;" k="23" /> + <hkern u1="&#x45e;" u2="&#x441;" k="23" /> + <hkern u1="&#x45e;" u2="&#x43e;" k="23" /> + <hkern u1="&#x45e;" u2="&#x43b;" k="54" /> + <hkern u1="&#x45e;" u2="&#x435;" k="24" /> + <hkern u1="&#x45e;" u2="&#x434;" k="46" /> + <hkern u1="&#x45e;" u2="&#x201e;" k="50" /> + <hkern u1="&#x45e;" u2="&#x201a;" k="50" /> + <hkern u1="&#x45f;" u2="&#x436;" k="31" /> + <hkern g1="f_f_k" u2="&#x1ff;" k="35" /> + <hkern g1="f_f_k" u2="&#x14d;" k="35" /> + <hkern g1="f_f_k" u2="&#x151;" k="35" /> + <hkern g1="f_f_k" u2="&#x14f;" k="35" /> + <hkern g1="f_f_k" u2="&#x119;" k="35" /> + <hkern g1="f_f_k" u2="&#x113;" k="35" /> + <hkern g1="f_f_k" u2="&#x117;" k="35" /> + <hkern g1="f_f_k" u2="&#x11b;" k="35" /> + <hkern g1="f_f_k" u2="&#x115;" k="35" /> + <hkern g1="f_f_k" u2="&#x111;" k="35" /> + <hkern g1="f_f_k" u2="&#x10f;" k="35" /> + <hkern g1="f_f_k" u2="&#x109;" k="35" /> + <hkern g1="f_f_k" u2="&#x10d;" k="35" /> + <hkern g1="f_f_k" u2="&#x107;" k="35" /> + <hkern g1="f_f_k" u2="&#xf5;" k="35" /> + <hkern g1="f_f_k" u2="&#xf2;" k="35" /> + <hkern g1="f_f_k" u2="&#xf6;" k="35" /> + <hkern g1="f_f_k" u2="&#xf4;" k="35" /> + <hkern g1="f_f_k" u2="&#xf3;" k="35" /> + <hkern g1="f_f_k" u2="&#xe8;" k="35" /> + <hkern g1="f_f_k" u2="&#xeb;" k="35" /> + <hkern g1="f_f_k" u2="&#xea;" k="35" /> + <hkern g1="f_f_k" u2="&#xe9;" k="35" /> + <hkern g1="f_f_k" u2="&#xe7;" k="35" /> + <hkern g1="f_f_k" u2="&#x153;" k="35" /> + <hkern g1="f_f_k" u2="&#xf8;" k="35" /> + <hkern g1="f_f_k" u2="o" k="35" /> + <hkern g1="f_f_k" u2="e" k="35" /> + <hkern g1="f_f_k" u2="d" k="35" /> + <hkern g1="f_f_k" u2="c" k="35" /> + <hkern g1="f_f_k" u2="&#x10b;" k="35" /> + <hkern g1="f_f_k" u2="q" k="35" /> + <hkern g1="f_k" u2="&#x1ff;" k="35" /> + <hkern g1="f_k" u2="&#x14d;" k="35" /> + <hkern g1="f_k" u2="&#x151;" k="35" /> + <hkern g1="f_k" u2="&#x14f;" k="35" /> + <hkern g1="f_k" u2="&#x119;" k="35" /> + <hkern g1="f_k" u2="&#x113;" k="35" /> + <hkern g1="f_k" u2="&#x117;" k="35" /> + <hkern g1="f_k" u2="&#x11b;" k="35" /> + <hkern g1="f_k" u2="&#x115;" k="35" /> + <hkern g1="f_k" u2="&#x111;" k="35" /> + <hkern g1="f_k" u2="&#x10f;" k="35" /> + <hkern g1="f_k" u2="&#x109;" k="35" /> + <hkern g1="f_k" u2="&#x10d;" k="35" /> + <hkern g1="f_k" u2="&#x107;" k="35" /> + <hkern g1="f_k" u2="&#xf5;" k="35" /> + <hkern g1="f_k" u2="&#xf2;" k="35" /> + <hkern g1="f_k" u2="&#xf6;" k="35" /> + <hkern g1="f_k" u2="&#xf4;" k="35" /> + <hkern g1="f_k" u2="&#xf3;" k="35" /> + <hkern g1="f_k" u2="&#xe8;" k="35" /> + <hkern g1="f_k" u2="&#xeb;" k="35" /> + <hkern g1="f_k" u2="&#xea;" k="35" /> + <hkern g1="f_k" u2="&#xe9;" k="35" /> + <hkern g1="f_k" u2="&#xe7;" k="35" /> + <hkern g1="f_k" u2="&#x153;" k="35" /> + <hkern g1="f_k" u2="&#xf8;" k="35" /> + <hkern g1="f_k" u2="o" k="35" /> + <hkern g1="f_k" u2="e" k="35" /> + <hkern g1="f_k" u2="d" k="35" /> + <hkern g1="f_k" u2="c" k="35" /> + <hkern g1="f_k" u2="&#x10b;" k="35" /> + <hkern g1="f_k" u2="q" k="35" /> + <hkern u1="&#x3a9;" u2="&#x147;" k="23" /> + <hkern u1="&#x3a9;" u2="&#x143;" k="23" /> + <hkern u1="&#x3a9;" u2="&#xd1;" k="23" /> + <hkern u1="&#x3a9;" u2="N" k="23" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="44" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="25" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="25" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="13" /> + <hkern g1="D,Eth,Dcaron" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="22" /> + <hkern g1="D,Eth,Dcaron" + g2="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="10" /> + <hkern g1="D,Eth,Dcaron" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="43" /> + <hkern g1="D,Eth,Dcaron" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="16" /> + <hkern g1="D,Eth,Dcaron" + g2="Z,Zcaron,Zacute,Zdotaccent" + k="13" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="36" /> + <hkern g1="K,Kcommaaccent" + g2="quoteright,quotedblright" + k="10" /> + <hkern g1="K,Kcommaaccent" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="64" /> + <hkern g1="K,Kcommaaccent" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="44" /> + <hkern g1="K,Kcommaaccent" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="64" /> + <hkern g1="K,Kcommaaccent" + g2="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + k="14" /> + <hkern g1="K,Kcommaaccent" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="50" /> + <hkern g1="K,Kcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="9" /> + <hkern g1="K,Kcommaaccent" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + k="11" /> + <hkern g1="K,Kcommaaccent" + g2="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="18" /> + <hkern g1="K,Kcommaaccent" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="15" /> + <hkern g1="K,Kcommaaccent" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="50" /> + <hkern g1="K,Kcommaaccent" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="60" /> + <hkern g1="K,Kcommaaccent" + g2="a,ae,aogonek,aeacute" + k="25" /> + <hkern g1="K,Kcommaaccent" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="50" /> + <hkern g1="K,Kcommaaccent" + g2="d,dcaron,dcroat" + k="50" /> + <hkern g1="K,Kcommaaccent" + g2="e,eogonek" + k="50" /> + <hkern g1="K,Kcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="25" /> + <hkern g1="K,Kcommaaccent" + g2="o,oslash,oe" + k="37" /> + <hkern g1="K,Kcommaaccent" + g2="u,uogonek" + k="45" /> + <hkern g1="K,Kcommaaccent" + g2="endash,emdash" + k="24" /> + <hkern g1="K,Kcommaaccent" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="25" /> + <hkern g1="K,Kcommaaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="50" /> + <hkern g1="K,Kcommaaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="37" /> + <hkern g1="K,Kcommaaccent" + g2="uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uring,utilde" + k="45" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="20" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="20" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="31" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + k="24" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="35" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="88" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + k="36" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="30" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="99" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="24" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="64" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="e,eogonek" + k="13" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="o,oslash,oe" + k="15" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="endash,emdash" + k="24" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="13" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + k="11" /> + <hkern g1="N,Ntilde,Nacute,Ncaron" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="29" /> + <hkern g1="O,Oslash,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="35" /> + <hkern g1="O,Oslash,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + g2="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="10" /> + <hkern g1="O,Oslash,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="43" /> + <hkern g1="O,Oslash,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="20" /> + <hkern g1="O,Oslash,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + g2="Z,Zcaron,Zacute,Zdotaccent" + k="32" /> + <hkern g1="P,Thorn" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="17" /> + <hkern g1="P,Thorn" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="12" /> + <hkern g1="P,Thorn" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="55" /> + <hkern g1="P,Thorn" + g2="Z,Zcaron,Zacute,Zdotaccent" + k="29" /> + <hkern g1="P,Thorn" + g2="a,ae,aogonek,aeacute" + k="22" /> + <hkern g1="P,Thorn" + g2="e,eogonek" + k="11" /> + <hkern g1="P,Thorn" + g2="o,oslash,oe" + k="11" /> + <hkern g1="P,Thorn" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="22" /> + <hkern g1="P,Thorn" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="11" /> + <hkern g1="P,Thorn" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="11" /> + <hkern g1="P,Thorn" + g2="comma,quotesinglbase,quotedblbase" + k="125" /> + <hkern g1="P,Thorn" + g2="period,ellipsis" + k="125" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="20" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="25" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="20" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + k="25" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="20" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="36" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="30" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="20" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="9" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="e,eogonek" + k="22" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="9" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="o,oslash,oe" + k="30" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="22" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="30" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + k="12" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="15" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + k="13" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="t,tbar,tcaron,tcommaaccent" + k="35" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="25" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="13" /> + <hkern g1="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="12" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="31" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="25" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="28" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="35" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="20" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="40" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="75" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="a,ae,aogonek,aeacute" + k="70" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="65" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="d,dcaron,dcroat" + k="75" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="e,eogonek" + k="70" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="40" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="o,oslash,oe" + k="90" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="u,uogonek" + k="30" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="70" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="70" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="90" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uring,utilde" + k="30" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="comma,quotesinglbase,quotedblbase" + k="62" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="period,ellipsis" + k="62" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="n,eng" + k="24" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="r,racute,rcaron,rcommaaccent" + k="38" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="s,scaron,sacute,uni015F,scircumflex,uni0219" + k="65" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="z,zcaron,zacute,zdotaccent" + k="22" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent" + g2="icircumflex,idieresis,igrave,ibreve,imacron,itilde" + k="-32" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="20" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="10" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="10" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="25" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="a,ae,aogonek,aeacute" + k="26" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="e,eogonek" + k="26" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="o,oslash,oe" + k="26" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="26" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="26" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="26" /> + <hkern g1="W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + k="15" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="48" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="E,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek" + k="31" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="48" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="43" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="46" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="44" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="75" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="a,ae,aogonek,aeacute" + k="88" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="92" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="d,dcaron,dcroat" + k="92" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="e,eogonek" + k="95" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="92" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="o,oslash,oe" + k="97" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="u,uogonek" + k="69" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="endash,emdash" + k="49" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="88" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="95" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="97" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uring,utilde" + k="69" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="S,Scaron,Sacute,uni015E,Scircumflex,uni0218" + k="13" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="comma,quotesinglbase,quotedblbase" + k="95" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="period,ellipsis" + k="95" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="n,eng" + k="47" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="r,racute,rcaron,rcommaaccent" + k="71" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="s,scaron,sacute,uni015F,scircumflex,uni0219" + k="67" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="z,zcaron,zacute,zdotaccent" + k="66" /> + <hkern g1="Y,Yacute,Ydieresis,Ycircumflex,Ygrave" + g2="icircumflex,idieresis,igrave,ibreve,imacron,itilde" + k="-16" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="C,Ccedilla,Cacute,Ccaron,Ccircumflex" + k="15" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent" + k="26" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="O,Oslash,OE,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Obreve,Ohungarumlaut,Omacron,Oslashacute" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="a,ae,aogonek,aeacute" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="31" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="e,eogonek" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="31" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="o,oslash,oe" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="u,uogonek" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent" + g2="uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uring,utilde" + k="20" /> + <hkern g1="a,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek" + g2="f,fi,fl" + k="20" /> + <hkern g1="a,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek" + g2="t,tbar,tcaron,tcommaaccent" + k="28" /> + <hkern g1="a,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="20" /> + <hkern g1="a,aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron,aogonek" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="25" /> + <hkern g1="b,thorn" + g2="f,fi,fl" + k="20" /> + <hkern g1="b,thorn" + g2="t,tbar,tcaron,tcommaaccent" + k="20" /> + <hkern g1="b,thorn" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="20" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="15" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="d,dcaron,dcroat" + k="15" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="e,eogonek" + k="15" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="15" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="o,oslash,oe" + k="15" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="15" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="15" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex" + g2="s,scaron,sacute,uni015F,scircumflex,uni0219" + k="15" /> + <hkern g1="comma,quotesinglbase,quotedblbase" + g2="quoteright,quotedblright" + k="50" /> + <hkern g1="comma,quotesinglbase,quotedblbase" + g2="quotesingle,quotedbl" + k="50" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="T,Tbar,Tcaron,Tcommaaccent" + k="91" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="f,fi,fl" + k="20" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="t,tbar,tcaron,tcommaaccent" + k="20" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,aeacute,ebreve,ecaron,edotaccent,emacron,eogonek" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="20" /> + <hkern g1="h,hbar,hcircumflex" + g2="f,fi,fl" + k="20" /> + <hkern g1="h,hbar,hcircumflex" + g2="t,tbar,tcaron,tcommaaccent" + k="20" /> + <hkern g1="h,hbar,hcircumflex" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="20" /> + <hkern g1="h,hbar,hcircumflex" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="20" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="a,ae,aogonek,aeacute" + k="18" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="33" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="d,dcaron,dcroat" + k="33" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="e,eogonek" + k="40" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="35" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="o,oslash,oe" + k="35" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="u,uogonek" + k="28" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="18" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="40" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="35" /> + <hkern g1="k,kcommaaccent,kgreenlandic" + g2="uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uring,utilde" + k="28" /> + <hkern g1="n,ntilde,nacute,ncaron,napostrophe" + g2="f,fi,fl" + k="20" /> + <hkern g1="n,ntilde,nacute,ncaron,napostrophe" + g2="t,tbar,tcaron,tcommaaccent" + k="20" /> + <hkern g1="n,ntilde,nacute,ncaron,napostrophe" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="24" /> + <hkern g1="n,ntilde,nacute,ncaron,napostrophe" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="25" /> + <hkern g1="o,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="f,fi,fl" + k="20" /> + <hkern g1="o,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="t,tbar,tcaron,tcommaaccent" + k="25" /> + <hkern g1="o,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="w,wacute,wcircumflex,wdieresis,wgrave" + k="15" /> + <hkern g1="o,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="y,yacute,ydieresis,ycircumflex,ygrave" + k="25" /> + <hkern g1="o,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + g2="z,zcaron,zacute,zdotaccent" + k="15" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Abreve,Amacron,Aogonek,AEacute" + k="55" /> + <hkern g1="period,ellipsis" + g2="quoteright,quotedblright" + k="50" /> + <hkern g1="period,ellipsis" + g2="quotesingle,quotedbl" + k="50" /> + <hkern g1="quotesingle,quotedbl" + g2="comma,quotesinglbase,quotedblbase" + k="50" /> + <hkern g1="quotesingle,quotedbl" + g2="period,ellipsis" + k="50" /> + <hkern g1="quoteright,quotedblright" + g2="comma,quotesinglbase,quotedblbase" + k="50" /> + <hkern g1="quoteright,quotedblright" + g2="period,ellipsis" + k="50" /> + <hkern g1="quoteright,quotedblright" + g2="s,scaron,sacute,uni015F,scircumflex,uni0219" + k="55" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="a,ae,aogonek,aeacute" + k="24" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="15" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="d,dcaron,dcroat" + k="18" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="e,eogonek" + k="19" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="19" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="o,oslash,oe" + k="26" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="24" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="19" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="26" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="comma,quotesinglbase,quotedblbase" + k="30" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="period,ellipsis" + k="30" /> + <hkern g1="s,scaron,sacute,uni015F,scircumflex,uni0219" + g2="t,tbar,tcaron,tcommaaccent" + k="10" /> + <hkern g1="t,tbar,tcaron,tcommaaccent" + g2="o,oslash,oe" + k="10" /> + <hkern g1="t,tbar,tcaron,tcommaaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="10" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="a,ae,aogonek,aeacute" + k="15" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="15" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="e,eogonek" + k="20" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="o,oslash,oe" + k="15" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="15" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="20" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="15" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="comma,quotesinglbase,quotedblbase" + k="28" /> + <hkern g1="w,wacute,wcircumflex,wdieresis,wgrave" + g2="period,ellipsis" + k="48" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="a,ae,aogonek,aeacute" + k="24" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="c,ccedilla,cacute,ccaron,ccircumflex" + k="28" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="d,dcaron,dcroat" + k="20" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="e,eogonek" + k="20" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent" + k="28" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="o,oslash,oe" + k="25" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="aacute,acircumflex,adieresis,agrave,aring,atilde,abreve,amacron" + k="24" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="20" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="25" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="comma,quotesinglbase,quotedblbase" + k="55" /> + <hkern g1="y,yacute,ydieresis,ycircumflex,ygrave" + g2="period,ellipsis" + k="65" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="d,dcaron,dcroat" + k="9" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="e,eogonek" + k="24" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="o,oslash,oe" + k="15" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron" + k="24" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute" + k="15" /> + </font> +</defs></svg> diff --git a/site/css/font/c38f2cc711985becf7550d75271b1175.ttf b/site/css/font/c38f2cc711985becf7550d75271b1175.ttf new file mode 100644 index 0000000..77cbb25 Binary files /dev/null and b/site/css/font/c38f2cc711985becf7550d75271b1175.ttf differ diff --git a/site/css/font/c38f2cc711985becf7550d75271b1175.woff b/site/css/font/c38f2cc711985becf7550d75271b1175.woff new file mode 100644 index 0000000..7a85b0a Binary files /dev/null and b/site/css/font/c38f2cc711985becf7550d75271b1175.woff differ diff --git a/site/css/font/c38f2cc711985becf7550d75271b1175.woff2 b/site/css/font/c38f2cc711985becf7550d75271b1175.woff2 new file mode 100644 index 0000000..13906e3 Binary files /dev/null and b/site/css/font/c38f2cc711985becf7550d75271b1175.woff2 differ diff --git a/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.eot b/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.eot new file mode 100644 index 0000000..4e51afc Binary files /dev/null and b/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.eot differ diff --git a/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.svg b/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.svg new file mode 100644 index 0000000..e63cbab --- /dev/null +++ b/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.svg @@ -0,0 +1,7849 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<svg> +<metadata> +Created by FontForge 20120731 at Mon Jun 26 07:08:17 2017 + By www +Copyright 1992, 1994, 1997, 2000, 2004 Adobe Systems Incorporated. All rights reserved. Protected by U.S. Patents D454,582. Myriad is either a registered trademark or a trademark of Adobe Systems Incorporated in the United States and/or other countries. +</metadata> +<defs> +<font id="MyriadPro-It" horiz-adv-x="383" > + <font-face + font-family="Myriad Pro" + font-weight="400" + font-style="italic" + font-stretch="normal" + units-per-em="1000" + panose-1="2 11 5 3 3 4 3 9 2 4" + ascent="750" + descent="-250" + x-height="484" + cap-height="674" + bbox="-184 -250 1090 953" + underline-thickness="50" + underline-position="-50" + slope="-11" + stemh="65" + stemv="88" + unicode-range="U+0020-FB04" + /> +<missing-glyph horiz-adv-x="500" +d="M0 0v700h500v-700h-500zM250 395l170 255h-340zM280 350l170 -255v510zM80 50h340l-170 255zM50 605v-510l170 255z" /> + <glyph glyph-name="f_f" unicode="ff" horiz-adv-x="561" +d="M676 708l-18 -66c-13 6 -30 10 -49 10c-66 0 -98 -65 -112 -145l-4 -23h107l-12 -65h-108l-79 -419h-83l80 419h-196l-79 -419h-83l79 419h-64l13 65h64l4 20c11 58 32 119 73 159c28 28 66 46 117 46c25 0 46 -6 62 -15l-25 -63c-10 5 -25 9 -40 9 +c-66 0 -92 -67 -105 -138l-4 -18h196l5 26c12 67 36 129 79 168c31 27 73 43 115 43c33 0 55 -7 67 -13z" /> + <glyph glyph-name="f_f_i" unicode="ffi" horiz-adv-x="777" +d="M757 694l-26 -65c-21 11 -55 22 -96 22c-87 0 -125 -66 -138 -145l-4 -22h260l-93 -484h-82l79 419h-176l-79 -419h-83l79 419h-196l-79 -419h-83l79 419h-64l12 65h65l4 23c11 55 33 113 72 152c30 30 71 50 125 50c33 0 60 -11 76 -22l-30 -62c-14 9 -32 15 -51 15 +c-26 0 -47 -9 -63 -25c-24 -24 -38 -64 -47 -111l-4 -20h197l5 24c24 132 105 212 231 212c45 0 93 -13 110 -26z" /> + <glyph glyph-name="f_f_j" unicode="ffj" horiz-adv-x="756" +d="M757 694l-26 -65c-21 11 -55 22 -96 22c-87 0 -125 -66 -138 -145l-4 -22h260l-92 -482c-15 -81 -33 -132 -62 -164c-28 -32 -69 -47 -111 -47c-21 0 -38 1 -54 6l10 65c8 -3 21 -4 38 -4c42 0 74 26 93 126l83 435h-177l-80 -419h-82l79 419h-196l-79 -419h-83l79 419 +h-64l12 65h65l4 23c11 55 33 113 72 152c30 30 71 50 125 50c33 0 60 -11 75 -22l-29 -62c-14 9 -32 15 -51 15c-26 0 -47 -9 -63 -25c-24 -24 -38 -64 -47 -111l-4 -20h197l5 24c24 132 105 212 231 212c45 0 93 -13 110 -26z" /> + <glyph glyph-name="f_f_l" unicode="ffl" horiz-adv-x="777" +d="M411 688l-30 -62c-15 9 -33 14 -51 14c-27 0 -48 -10 -64 -26c-27 -27 -41 -70 -48 -110l-4 -20h197l4 21c11 68 39 128 94 170c38 30 92 46 149 46c48 0 104 -12 133 -31l-131 -690h-83l122 640c-12 8 -29 13 -64 13c-80 0 -122 -62 -137 -143l-5 -26h102l-13 -65h-102 +l-79 -419h-83l80 419h-196l-79 -419h-83l79 419h-64l12 65h65l4 22c10 57 33 114 72 153c31 31 72 50 125 50c34 0 62 -11 78 -21z" /> + <glyph glyph-name="f_i" unicode="fi" horiz-adv-x="499" +d="M123 0h-82l79 419h-64l12 65h65l5 24c24 132 105 212 231 212c45 0 93 -13 110 -26l-26 -65c-21 11 -55 22 -96 22c-87 0 -125 -66 -138 -145l-4 -22h260l-93 -484h-82l79 419h-177z" /> + <glyph glyph-name="f_j" unicode="fj" horiz-adv-x="478" +d="M479 694l-26 -65c-21 11 -55 22 -96 22c-87 0 -125 -66 -138 -145l-4 -22h260l-92 -482c-15 -81 -33 -132 -62 -164c-28 -32 -69 -47 -111 -47c-21 0 -38 1 -54 6l10 65c9 -3 21 -4 38 -4c42 0 74 26 93 126l83 435h-178l-78 -419h-83l79 419h-64l12 65h65l5 24 +c24 132 105 212 231 212c45 0 92 -13 110 -26z" /> + <glyph glyph-name="f_l" unicode="fl" horiz-adv-x="499" +d="M123 0h-82l79 419h-64l12 65h65l4 21c12 68 39 128 94 170c38 30 92 46 149 46c48 0 104 -12 133 -32l-131 -689h-82l121 640c-12 8 -29 13 -64 13c-80 0 -122 -62 -137 -143l-5 -26h102l-13 -65h-102z" /> + <glyph glyph-name=".notdef" horiz-adv-x="500" +d="M0 0v700h500v-700h-500zM250 395l170 255h-340zM280 350l170 -255v510zM80 50h340l-170 255zM50 605v-510l170 255z" /> + <glyph glyph-name="space" unicode=" " horiz-adv-x="182" + /> + <glyph glyph-name="exclam" unicode="!" horiz-adv-x="236" +d="M142 194h-66l79 480h94zM77 -11c-32 0 -54 26 -54 58c0 37 26 67 62 67c34 0 56 -26 56 -59c0 -37 -26 -66 -64 -66z" /> + <glyph glyph-name="quotedbl" unicode="&#x22;" horiz-adv-x="304" +d="M121 692h87l-62 -242h-55zM271 692h86l-62 -242h-55z" /> + <glyph glyph-name="numbersign" unicode="#" horiz-adv-x="492" +d="M193 254h91l45 147h-90zM114 0h-58l60 197h-82l10 57h91l46 147h-87l10 57h94l60 192h58l-60 -192h91l60 192h58l-60 -192h82l-10 -57h-90l-45 -147h86l-10 -57h-95l-60 -197h-59l61 197h-90z" /> + <glyph glyph-name="dollar" unicode="$" horiz-adv-x="492" +d="M210 -85h-60l19 100c-49 2 -105 23 -132 44l28 65c32 -23 75 -43 133 -43c73 0 131 44 131 111c0 44 -21 79 -84 111c-83 44 -129 93 -129 160c0 89 74 164 177 174l19 97h61l-19 -97c49 -2 90 -19 109 -34l-29 -62c-20 12 -55 32 -114 32c-72 0 -116 -44 -116 -98 +c0 -44 24 -70 97 -109c76 -42 116 -92 116 -158c0 -111 -82 -180 -188 -193z" /> + <glyph glyph-name="percent" unicode="%" horiz-adv-x="773" +d="M257 661c82 0 119 -66 119 -135c0 -142 -75 -263 -184 -263c-77 0 -123 58 -123 144c0 123 72 254 188 254zM246 608c-67 0 -109 -114 -109 -203c0 -46 14 -89 63 -89c67 0 108 119 108 205c0 39 -12 87 -62 87zM186 -13h-60l491 675h59zM618 392c82 0 119 -66 119 -136 +c0 -142 -75 -263 -184 -263c-76 0 -122 58 -122 145c0 122 72 254 187 254zM607 339c-66 0 -108 -115 -108 -203c0 -47 14 -90 63 -90c67 0 107 119 107 206c0 39 -12 87 -62 87z" /> + <glyph glyph-name="ampersand" unicode="&#x26;" horiz-adv-x="589" +d="M533 0h-98c-17 20 -30 38 -46 62c-56 -51 -116 -73 -190 -73c-116 0 -182 75 -182 169c0 105 84 177 167 217v3c-24 43 -37 82 -37 123c0 100 75 184 179 184c90 0 136 -61 136 -133c0 -80 -57 -142 -173 -196v-3c37 -63 86 -137 121 -187c41 51 73 117 102 202h78 +c-37 -107 -80 -192 -142 -256c25 -35 52 -72 85 -112zM222 54c53 0 98 24 132 60c-32 47 -90 129 -140 213c-44 -27 -113 -75 -113 -157c0 -65 43 -116 121 -116zM317 626c-51 0 -93 -49 -93 -116c0 -37 10 -72 32 -107c81 39 129 83 129 147c0 39 -18 76 -68 76z" /> + <glyph glyph-name="quoteright" unicode="&#x2019;" horiz-adv-x="194" +d="M161 682l91 10c-37 -84 -97 -192 -131 -238l-58 -6c31 59 75 162 98 234z" /> + <glyph glyph-name="parenleft" unicode="(" horiz-adv-x="284" +d="M279 692h71c-105 -119 -210 -303 -210 -534c0 -91 14 -178 55 -276h-63c-41 82 -64 171 -64 278c0 239 112 424 211 532z" /> + <glyph glyph-name="parenright" unicode=")" horiz-adv-x="284" +d="M25 -118h-71c105 120 210 305 210 536c0 90 -14 178 -55 274h64c41 -81 63 -170 63 -276c0 -239 -112 -425 -211 -534z" /> + <glyph glyph-name="asterisk" unicode="*" horiz-adv-x="414" +d="M338 685l57 -35l-110 -124l1 -2l152 20l-14 -68l-143 18l-1 -3l82 -120l-64 -36l-48 140h-2l-79 -140l-53 36l109 121v3l-150 -19l13 68l140 -19v2l-79 123l64 34l48 -139h2z" /> + <glyph glyph-name="plus" unicode="+" horiz-adv-x="596" +d="M274 532h62v-235h219v-59h-219v-238h-62v238h-219v59h219v235z" /> + <glyph glyph-name="comma" unicode="," horiz-adv-x="211" +d="M21 -117l-64 -7c31 60 77 167 98 240l99 10c-36 -85 -98 -196 -133 -243z" /> + <glyph glyph-name="hyphen" unicode="-" horiz-adv-x="307" +d="M48 302h239l-12 -64h-239z" /> + <glyph glyph-name="period" unicode="." horiz-adv-x="211" +d="M76 -11c-33 0 -55 26 -55 59c0 37 26 67 63 67c34 0 56 -26 56 -60c0 -37 -26 -66 -64 -66z" /> + <glyph glyph-name="slash" unicode="/" horiz-adv-x="326" +d="M13 -40h-67l402 725h68z" /> + <glyph glyph-name="zero" unicode="0" horiz-adv-x="492" +d="M327 661c124 0 161 -103 161 -204c0 -213 -100 -468 -282 -468c-120 0 -163 98 -163 223c0 216 113 449 284 449zM318 594c-113 0 -192 -227 -192 -386c0 -69 13 -152 91 -152c122 0 188 265 188 396c0 51 -7 142 -87 142z" /> + <glyph glyph-name="one" unicode="1" horiz-adv-x="492" +d="M182 0l107 566h-2l-111 -56l-9 66l148 74h70l-123 -650h-80z" /> + <glyph glyph-name="two" unicode="2" horiz-adv-x="492" +d="M393 0h-393l10 55l97 81c174 147 276 248 276 355c0 47 -26 99 -101 99c-58 0 -104 -26 -134 -47l-21 60c45 34 112 58 173 58c122 0 169 -81 169 -159c0 -138 -126 -258 -281 -386l-55 -43v-2h273z" /> + <glyph glyph-name="three" unicode="3" horiz-adv-x="492" +d="M16 30l28 66c25 -15 66 -36 125 -36c111 0 162 76 162 143c0 81 -63 115 -139 115h-33l13 65h33c61 0 161 40 161 126c0 50 -30 81 -92 81c-49 0 -94 -16 -123 -36l-18 63c41 25 98 44 155 44c109 0 166 -65 166 -140c0 -85 -69 -147 -144 -168v-2 +c71 -17 108 -78 108 -147c0 -123 -111 -215 -252 -215c-70 0 -128 21 -150 41z" /> + <glyph glyph-name="four" unicode="4" horiz-adv-x="492" +d="M335 0h-78l34 179h-280l11 56l346 415h91l-77 -405h88l-12 -66h-89zM113 245h191l42 216c7 35 16 71 24 105h-3c-27 -40 -45 -72 -73 -107l-181 -212v-2z" /> + <glyph glyph-name="five" unicode="5" horiz-adv-x="492" +d="M487 650l-14 -72h-223l-51 -165c11 2 21 2 32 2c28 0 77 -8 114 -31c53 -29 77 -87 77 -143c0 -158 -126 -252 -267 -252c-63 0 -118 19 -140 36l26 66c23 -15 69 -31 122 -31c92 0 173 73 173 164c0 70 -36 125 -157 125c-27 0 -47 -2 -73 -4l90 305h291z" /> + <glyph glyph-name="six" unicode="6" horiz-adv-x="492" +d="M470 660l-12 -71c-16 0 -36 -1 -60 -5c-117 -21 -214 -110 -258 -236l2 -1c38 49 101 82 160 82c102 0 157 -78 157 -177c0 -127 -99 -263 -239 -263c-124 0 -185 91 -185 214c0 150 80 289 164 358c65 55 141 86 215 95c23 4 42 4 56 4zM226 56c86 0 147 99 147 191 +c0 76 -38 116 -103 116c-51 0 -104 -34 -137 -89c-6 -9 -11 -21 -12 -31c-2 -15 -4 -32 -4 -52c0 -78 37 -135 109 -135z" /> + <glyph glyph-name="seven" unicode="7" horiz-adv-x="492" +d="M134 650h389l-11 -58c-125 -197 -250 -394 -377 -592h-92c126 193 251 385 375 576l-1 3h-297z" /> + <glyph glyph-name="eight" unicode="8" horiz-adv-x="492" +d="M315 661c95 0 164 -57 164 -147c0 -77 -52 -134 -127 -169l-1 -3c67 -36 96 -95 96 -154c0 -128 -115 -199 -228 -199c-122 0 -195 69 -195 161c0 100 72 165 152 196l1 3c-52 37 -71 81 -71 128c0 105 94 184 209 184zM225 52c76 0 136 52 136 129 +c0 64 -37 105 -115 132c-67 -18 -136 -68 -136 -153c0 -56 38 -108 115 -108zM302 598c-66 0 -116 -54 -116 -115c0 -51 31 -87 95 -110c64 21 116 69 116 131c0 44 -22 94 -95 94z" /> + <glyph glyph-name="nine" unicode="9" horiz-adv-x="492" +d="M56 -10l10 71c17 -1 38 1 62 4c45 7 94 28 138 64c48 38 91 95 119 172h-3c-40 -46 -97 -70 -148 -70c-107 0 -158 83 -158 168c0 133 106 262 241 262c123 0 175 -94 175 -205c0 -162 -92 -309 -168 -374c-57 -48 -128 -78 -195 -87c-28 -4 -52 -6 -73 -5zM307 594 +c-80 0 -146 -91 -146 -185c0 -65 33 -113 98 -113c53 0 100 30 129 75c6 8 11 17 13 28c4 17 7 43 7 67c0 74 -28 128 -101 128z" /> + <glyph glyph-name="colon" unicode=":" horiz-adv-x="211" +d="M142 342c-32 0 -54 26 -54 58c0 37 26 67 62 67c34 0 56 -25 56 -59c0 -37 -26 -66 -64 -66zM75 -11c-32 0 -54 26 -54 58c0 37 26 67 62 67c34 0 56 -25 56 -59c0 -37 -26 -66 -64 -66z" /> + <glyph glyph-name="semicolon" unicode=";" horiz-adv-x="211" +d="M20 -116l-63 -7c31 60 76 166 98 240l98 10c-36 -86 -97 -196 -133 -243zM147 342c-32 0 -54 26 -54 58c0 37 26 67 62 67c34 0 56 -25 56 -59c0 -37 -26 -66 -64 -66z" /> + <glyph glyph-name="less" unicode="&#x3c;" horiz-adv-x="596" +d="M78 239v54l448 239v-68l-375 -197v-2l375 -197v-68z" /> + <glyph glyph-name="equal" unicode="=" horiz-adv-x="596" +d="M556 338h-500v59h500v-59zM556 141h-500v59h500v-59z" /> + <glyph glyph-name="greater" unicode="&#x3e;" horiz-adv-x="596" +d="M541 294v-56l-448 -238v68l378 197v2l-378 197v68z" /> + <glyph glyph-name="question" unicode="?" horiz-adv-x="384" +d="M207 192h-80c1 9 2 17 2 26c5 54 34 115 98 182c45 47 87 92 87 146c0 35 -18 70 -76 70c-38 0 -72 -10 -100 -28l-15 61c37 23 83 37 136 37c97 0 141 -64 141 -125c0 -78 -49 -135 -109 -197c-49 -51 -73 -93 -79 -144c-1 -9 -3 -19 -5 -28zM136 -11 +c-32 0 -54 26 -54 58c0 37 26 67 62 67c34 0 56 -26 56 -59c0 -37 -26 -66 -64 -66z" /> + <glyph glyph-name="at" unicode="@" horiz-adv-x="720" +d="M439 255l21 112c-10 4 -27 8 -50 8c-88 0 -160 -83 -160 -180c0 -44 23 -76 67 -76c58 0 111 74 122 136zM498 -21l16 -44c-54 -30 -111 -40 -174 -40c-172 0 -305 120 -305 313c0 206 142 384 364 384c174 0 291 -122 291 -289c0 -150 -84 -238 -178 -238 +c-40 0 -77 26 -75 88h-3c-35 -59 -81 -88 -142 -88c-57 0 -107 47 -107 126c0 124 98 237 237 237c43 0 81 -9 107 -21l-34 -181c-15 -76 -3 -111 30 -112c52 -2 109 67 109 182c0 146 -88 250 -244 250c-163 0 -299 -129 -299 -332c0 -167 105 -271 260 -271 +c51 0 107 13 147 36z" /> + <glyph glyph-name="A" unicode="A" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123z" /> + <glyph glyph-name="B" unicode="B" horiz-adv-x="519" +d="M33 5l124 660c42 8 90 14 145 14c69 0 120 -14 155 -46c32 -26 49 -61 49 -105c0 -86 -69 -149 -145 -169v-2c60 -18 110 -69 110 -150c0 -69 -36 -124 -80 -157c-54 -40 -128 -55 -219 -55c-58 0 -108 4 -139 10zM229 607l-42 -219h62c97 0 171 50 171 132 +c0 65 -49 93 -122 93c-31 0 -56 -2 -69 -6zM174 325l-48 -259c21 -3 45 -4 68 -4c98 0 190 41 190 149c0 79 -67 114 -142 114h-68z" /> + <glyph glyph-name="C" unicode="C" horiz-adv-x="555" +d="M486 90l11 -68c-38 -17 -99 -32 -175 -32c-170 0 -273 107 -273 279c0 127 51 248 143 325c70 59 156 90 255 90c74 0 128 -19 146 -32l-27 -67c-25 15 -73 27 -133 27c-70 0 -141 -27 -193 -75c-63 -59 -103 -154 -103 -256c0 -121 55 -220 205 -220c51 0 107 10 144 29 +z" /> + <glyph glyph-name="D" unicode="D" horiz-adv-x="647" +d="M33 3l125 663c52 9 109 13 168 13c112 0 198 -32 248 -90c36 -37 63 -98 63 -183c0 -122 -49 -243 -135 -317c-78 -66 -176 -94 -306 -94c-59 0 -120 3 -163 8zM230 604l-102 -536c30 -4 62 -4 87 -4c107 0 185 31 241 89c61 62 92 154 92 249c0 120 -58 209 -226 209 +c-30 0 -68 -2 -92 -7z" /> + <glyph glyph-name="E" unicode="E" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245z" /> + <glyph glyph-name="F" unicode="F" horiz-adv-x="465" +d="M31 0l128 674h342l-14 -71h-258l-44 -227h238l-14 -70h-238l-57 -306h-83z" /> + <glyph glyph-name="G" unicode="G" horiz-adv-x="623" +d="M588 352l-61 -323c-39 -16 -111 -36 -190 -36c-95 0 -169 27 -220 84c-51 56 -68 130 -68 196c0 112 45 230 131 308c73 63 170 100 278 100c82 0 138 -19 159 -31l-28 -70c-34 18 -80 29 -141 29c-80 0 -153 -29 -209 -82c-63 -59 -101 -156 -101 -247 +c0 -130 65 -216 215 -216c40 0 78 8 102 19l39 201h-137l13 68h218z" /> + <glyph glyph-name="H" unicode="H" horiz-adv-x="627" +d="M159 674h83l-54 -284h310l54 284h83l-128 -674h-83l59 317h-309l-60 -317h-83z" /> + <glyph glyph-name="I" unicode="I" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83z" /> + <glyph glyph-name="J" unicode="J" horiz-adv-x="364" +d="M210 220l86 454h83l-88 -464c-30 -157 -96 -221 -222 -221c-41 0 -83 9 -100 18l18 71c22 -10 49 -15 85 -15c71 0 115 37 138 157z" /> + <glyph glyph-name="K" unicode="K" horiz-adv-x="515" +d="M31 0l128 674h82l-62 -328l4 1c24 28 46 52 67 75l237 252h104l-284 -290l173 -384h-90l-147 331l-81 -75l-49 -256h-82z" /> + <glyph glyph-name="L" unicode="L" horiz-adv-x="442" +d="M31 0l128 674h83l-115 -602h272l-14 -72h-354z" /> + <glyph glyph-name="M" unicode="M" horiz-adv-x="780" +d="M676 0h-80l48 364c9 64 24 163 36 228h-3c-31 -68 -69 -148 -105 -217l-201 -371h-63l-50 363c-10 78 -17 156 -21 225h-3c-14 -62 -35 -164 -51 -228l-92 -364h-78l175 674h106l53 -386c7 -58 14 -119 16 -169h3c21 50 50 110 79 166l208 389h109z" /> + <glyph glyph-name="N" unicode="N" horiz-adv-x="632" +d="M109 0h-78l128 674h91l154 -382c30 -76 45 -130 59 -188l2 1c4 61 11 117 29 211l68 358h78l-128 -674h-82l-154 381c-32 83 -47 130 -62 194l-3 -1c-7 -63 -18 -130 -35 -222z" /> + <glyph glyph-name="O" unicode="O" horiz-adv-x="668" +d="M402 685c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91zM391 615c-60 0 -112 -26 -154 -67c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211 +c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210z" /> + <glyph glyph-name="P" unicode="P" horiz-adv-x="507" +d="M31 0l127 664c37 9 91 15 146 15c65 0 127 -16 165 -52c32 -29 49 -69 49 -122c0 -75 -37 -139 -81 -176c-52 -44 -128 -64 -204 -64c-26 0 -48 2 -69 5l-51 -270h-82zM227 605l-50 -265c23 -5 43 -7 67 -7c114 0 190 71 190 166c0 81 -57 113 -134 113 +c-33 0 -58 -3 -73 -7z" /> + <glyph glyph-name="Q" unicode="Q" horiz-adv-x="668" +d="M589 -25l-32 -69c-88 21 -198 55 -234 71c-31 11 -41 13 -46 13c-127 8 -229 106 -229 274c0 115 45 245 124 325c60 60 145 96 231 96c183 0 254 -136 254 -276c0 -109 -41 -241 -118 -319c-36 -36 -85 -66 -129 -77v-4c59 -12 122 -25 179 -34zM392 615 +c-60 0 -112 -25 -153 -66c-66 -66 -104 -188 -104 -281c0 -107 46 -209 177 -209c62 0 115 25 156 65c66 66 102 191 102 283c0 88 -30 208 -178 208z" /> + <glyph glyph-name="R" unicode="R" horiz-adv-x="523" +d="M31 0l127 664c41 10 97 15 147 15c67 0 125 -16 161 -49c31 -27 50 -65 50 -111c0 -99 -75 -172 -160 -196l-1 -2c48 -16 70 -66 75 -135c7 -94 12 -159 21 -186h-86c-4 14 -11 85 -16 163c-5 93 -39 131 -106 131h-74l-55 -294h-83zM229 606l-47 -248h74 +c105 0 173 69 173 150c0 72 -54 105 -130 105c-33 0 -54 -3 -70 -7z" /> + <glyph glyph-name="S" unicode="S" horiz-adv-x="466" +d="M12 36l30 68c37 -25 87 -43 143 -43c76 0 146 45 146 126c0 50 -28 88 -99 126c-86 47 -134 101 -134 173c0 121 104 198 228 198c66 0 115 -19 138 -35l-30 -68c-21 13 -63 32 -117 32c-83 0 -133 -55 -133 -110s34 -86 105 -125c83 -45 128 -98 128 -181 +c0 -116 -91 -208 -243 -208c-67 1 -134 22 -162 47z" /> + <glyph glyph-name="T" unicode="T" horiz-adv-x="474" +d="M148 0l114 602h-197l14 72h478l-14 -72h-198l-114 -602h-83z" /> + <glyph glyph-name="U" unicode="U" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 125 -130c92 0 159 62 188 214l77 400h83l-77 -403c-39 -201 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93z" /> + <glyph glyph-name="V" unicode="V" horiz-adv-x="539" +d="M258 0h-91l-83 674h84l49 -432c8 -69 12 -108 13 -152h3c17 42 37 92 74 163l214 421h92z" /> + <glyph glyph-name="W" unicode="W" horiz-adv-x="829" +d="M219 0h-89l-33 674h84l14 -404c3 -87 1 -133 0 -176h2c16 44 33 88 70 171l187 409h88l14 -388c3 -88 3 -146 2 -190h2c20 58 40 112 66 173l181 405h87l-312 -674h-88l-17 383c-4 79 -3 117 2 194h-3c-22 -64 -40 -116 -68 -177z" /> + <glyph glyph-name="X" unicode="X" horiz-adv-x="521" +d="M466 0h-88l-64 167c-18 45 -32 83 -43 118h-2c-21 -32 -45 -69 -79 -116l-121 -169h-99l263 343l-126 331h87l64 -173c14 -40 25 -71 34 -102h2c22 33 45 68 69 102l129 173h99l-260 -330z" /> + <glyph glyph-name="Y" unicode="Y" horiz-adv-x="517" +d="M243 0h-82l53 280l-130 394h89l65 -218c17 -60 23 -87 28 -113h2c17 28 40 66 72 116l146 215h97l-287 -393z" /> + <glyph glyph-name="Z" unicode="Z" horiz-adv-x="523" +d="M-20 0l9 51l458 549l-1 3h-320l14 71h432l-11 -54l-454 -546l1 -3h354l-13 -71h-469z" /> + <glyph glyph-name="bracketleft" unicode="[" horiz-adv-x="284" +d="M194 -111h-175l152 797h175l-10 -54h-108l-131 -689h107z" /> + <glyph glyph-name="backslash" unicode="\" horiz-adv-x="329" +d="M310 -40h-65l-184 725h65z" /> + <glyph glyph-name="bracketright" unicode="]" horiz-adv-x="284" +d="M109 686h175l-152 -797h-175l10 54h108l131 689h-107z" /> + <glyph glyph-name="asciicircum" unicode="^" horiz-adv-x="596" +d="M534 189h-68l-164 388h-2l-164 -388h-67l202 461l61 -1z" /> + <glyph glyph-name="underscore" unicode="_" horiz-adv-x="500" +d="M-49 -75h500l-10 -50h-500z" /> + <glyph glyph-name="quoteleft" unicode="&#x2018;" horiz-adv-x="194" +d="M164 458l-91 -10c37 84 97 192 131 238l58 6c-31 -59 -76 -162 -98 -234z" /> + <glyph glyph-name="a" unicode="a" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219z" /> + <glyph glyph-name="b" unicode="b" horiz-adv-x="525" +d="M159 710h83l-64 -314h2c43 65 105 99 170 99c106 0 146 -88 146 -174c0 -149 -107 -332 -301 -332c-85 0 -149 35 -149 124c0 24 4 53 9 76zM148 238l-11 -51c-4 -17 -7 -36 -6 -62c0 -46 27 -71 78 -71c125 0 201 149 201 257c0 60 -26 115 -92 115 +c-72 0 -146 -74 -170 -188z" /> + <glyph glyph-name="c" unicode="c" horiz-adv-x="423" +d="M353 85l8 -65c-25 -13 -75 -30 -140 -30c-125 0 -186 84 -186 187c0 165 122 317 296 317c45 0 86 -13 101 -21l-24 -66c-19 9 -46 18 -82 18c-126 0 -205 -124 -205 -238c0 -78 41 -129 120 -129c50 0 87 15 112 27z" /> + <glyph glyph-name="d" unicode="d" horiz-adv-x="525" +d="M460 710h82l-106 -556c-9 -51 -17 -107 -20 -154h-76l13 96h-2c-44 -69 -105 -107 -174 -107c-94 0 -145 77 -145 176c0 172 128 330 299 330c31 0 65 -7 86 -17zM371 239l32 169c-16 12 -44 21 -79 21c-116 0 -206 -124 -206 -253c0 -58 20 -119 91 -119 +c64 0 141 73 162 182z" /> + <glyph glyph-name="e" unicode="e" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92z" /> + <glyph glyph-name="f" unicode="f" horiz-adv-x="283" +d="M122 0h-83l80 419h-65l13 65h64l5 26c12 67 36 129 79 168c31 28 73 43 115 43c33 0 55 -6 67 -13l-18 -66c-13 6 -30 9 -49 9c-66 0 -98 -64 -112 -144l-4 -23h107l-12 -65h-108z" /> + <glyph glyph-name="g" unicode="g" horiz-adv-x="524" +d="M10 -175l23 65c29 -19 78 -32 128 -32c82 0 146 41 174 172l16 73h-2c-43 -69 -102 -103 -168 -103c-98 0 -148 82 -148 168c0 164 120 327 307 327c56 0 118 -16 156 -34l-75 -400c-19 -103 -47 -173 -97 -217c-49 -41 -114 -53 -169 -53c-59 0 -115 14 -145 34z +M374 250l31 162c-16 7 -46 16 -80 16c-121 0 -205 -127 -205 -246c-1 -54 19 -116 93 -116c71 0 143 90 161 184z" /> + <glyph glyph-name="h" unicode="h" horiz-adv-x="534" +d="M111 0h-83l135 710h83l-60 -311h2c41 59 100 96 173 96c55 0 120 -33 120 -130c0 -25 -3 -57 -8 -81l-54 -284h-83l54 280c3 17 6 40 6 67c0 44 -21 79 -75 79c-64 0 -145 -75 -165 -183z" /> + <glyph glyph-name="i" unicode="i" horiz-adv-x="229" +d="M111 0h-83l93 484h82zM183 566c-29 0 -47 22 -47 52c1 32 25 56 54 56c30 0 50 -22 50 -52c-1 -33 -24 -56 -57 -56z" /> + <glyph glyph-name="j" unicode="j" horiz-adv-x="227" +d="M126 484h82l-92 -483c-15 -80 -33 -131 -62 -163c-28 -32 -69 -47 -111 -47c-21 0 -39 1 -54 6l10 65c9 -3 22 -4 38 -4c42 0 75 26 94 126zM183 566c-29 0 -47 22 -47 52c1 32 25 56 55 56c29 0 49 -22 49 -52c-1 -33 -24 -56 -57 -56z" /> + <glyph glyph-name="k" unicode="k" horiz-adv-x="456" +d="M110 0h-82l135 710h83l-85 -445h2c14 17 32 36 45 49l170 170h103l-211 -199l144 -285h-91l-117 239l-61 -55z" /> + <glyph glyph-name="l" unicode="l" horiz-adv-x="229" +d="M112 0h-83l135 710h83z" /> + <glyph glyph-name="m" unicode="m" horiz-adv-x="808" +d="M110 0h-81l64 343c10 54 17 101 22 141h73l-12 -91h2c45 68 106 102 170 102c74 0 109 -47 113 -108c43 70 105 107 177 108c56 0 118 -36 118 -127c0 -22 -3 -55 -8 -82l-54 -286h-81l52 279c4 19 7 43 7 63c0 51 -19 84 -73 84c-60 0 -132 -70 -152 -178l-46 -248h-80 +l54 284c4 22 6 40 6 59c0 41 -11 83 -72 83c-60 0 -136 -80 -155 -183z" /> + <glyph glyph-name="n" unicode="n" horiz-adv-x="534" +d="M111 0h-82l64 343c11 54 18 101 23 141h74l-12 -95h2c43 68 109 106 179 106c58 0 123 -33 123 -134c0 -22 -4 -52 -9 -78l-54 -283h-82l53 280c3 19 6 41 6 62c0 48 -19 84 -76 84c-59 0 -143 -71 -165 -191z" /> + <glyph glyph-name="o" unicode="o" horiz-adv-x="522" +d="M303 495c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305c-121 0 -189 90 -189 199c0 160 111 307 268 307zM294 429c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136c98 0 172 126 172 239c0 56 -26 135 -113 135z" /> + <glyph glyph-name="p" unicode="p" horiz-adv-x="525" +d="M68 -198h-83l97 510c11 59 21 124 27 173h76l-13 -92h2c43 64 107 102 174 102c104 0 148 -86 148 -175c0 -171 -122 -331 -283 -331c-51 0 -85 11 -104 22h-2zM146 216l-25 -135c22 -17 53 -27 93 -27c107 0 196 133 196 260c0 51 -22 112 -93 112 +c-65 0 -146 -74 -171 -210z" /> + <glyph glyph-name="q" unicode="q" horiz-adv-x="525" +d="M370 -198h-83l59 286h-2c-41 -64 -107 -99 -168 -99c-96 0 -144 81 -144 176c0 162 120 330 308 330c64 0 120 -16 155 -32zM372 244l31 167c-15 9 -44 17 -80 17c-111 0 -205 -118 -205 -253c0 -75 33 -118 84 -118c78 0 151 88 170 187z" /> + <glyph glyph-name="r" unicode="r" horiz-adv-x="318" +d="M111 0h-82l59 312c11 63 19 127 24 172h73c-4 -34 -8 -68 -13 -105h3c31 66 83 116 148 116c8 0 17 -1 24 -2l-16 -82c-6 1 -14 2 -23 2c-72 0 -136 -87 -157 -200z" /> + <glyph glyph-name="s" unicode="s" horiz-adv-x="373" +d="M9 23l24 61c23 -14 64 -30 104 -30c56 0 92 36 92 79c0 38 -17 61 -68 89c-56 31 -87 74 -87 124c0 84 73 149 175 149c44 0 83 -12 101 -24l-23 -63c-17 10 -48 22 -84 22c-50 0 -86 -31 -86 -73c0 -35 23 -57 67 -81c54 -30 90 -73 90 -127c0 -102 -82 -159 -184 -159 +c-52 1 -99 16 -121 33z" /> + <glyph glyph-name="t" unicode="t" horiz-adv-x="313" +d="M155 574l87 26l-22 -116h116l-13 -65h-116l-44 -235c-6 -27 -10 -52 -10 -77c0 -29 14 -47 46 -47c15 0 28 1 39 4l-4 -65c-15 -6 -40 -9 -64 -9c-73 0 -102 44 -102 94c0 28 4 55 11 90l47 245h-69l12 65h69z" /> + <glyph glyph-name="u" unicode="u" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177z" /> + <glyph glyph-name="v" unicode="v" horiz-adv-x="455" +d="M52 484h84l42 -276c7 -55 14 -92 15 -119h3c11 26 24 58 52 113l147 282h91l-269 -484h-81z" /> + <glyph glyph-name="w" unicode="w" horiz-adv-x="707" +d="M61 484h82l17 -272c4 -60 3 -91 2 -130h3c11 31 29 73 53 121l143 281h73l30 -276c5 -53 8 -94 8 -126h2c13 39 26 76 46 123l131 279h84l-239 -484h-77l-32 263c-5 45 -7 86 -7 129h-2c-20 -47 -34 -84 -56 -126l-139 -266h-77z" /> + <glyph glyph-name="x" unicode="x" horiz-adv-x="441" +d="M63 484h90l47 -106c14 -31 23 -55 33 -77h2c19 27 30 44 53 73l90 110h95l-204 -236l115 -248h-91l-48 109c-17 36 -24 55 -35 86h-3c-14 -23 -29 -45 -50 -74l-98 -121h-96l212 249z" /> + <glyph glyph-name="y" unicode="y" horiz-adv-x="441" +d="M48 484h86l48 -260c11 -56 17 -92 22 -128h2c13 31 27 65 52 119l124 269h88l-182 -368c-52 -104 -101 -189 -167 -254c-54 -55 -113 -78 -140 -84l-21 72c21 7 56 20 89 46c33 25 68 64 94 112c4 8 4 13 2 22z" /> + <glyph glyph-name="z" unicode="z" horiz-adv-x="415" +d="M-21 0l9 51l235 262c41 45 68 70 101 100v3h-248l14 68h347l-11 -55l-231 -258c-44 -47 -70 -72 -100 -100l-1 -3h269l-14 -68h-370z" /> + <glyph glyph-name="braceleft" unicode="{" horiz-adv-x="284" +d="M33 263l9 51c68 0 85 39 92 74c10 55 6 111 17 167c17 92 77 131 159 131h23l-10 -54h-18c-52 0 -79 -32 -90 -86c-9 -49 -4 -96 -13 -148c-11 -67 -44 -98 -91 -109v-2c38 -11 54 -39 54 -71c0 -34 -12 -74 -25 -111c-14 -37 -26 -73 -26 -100c0 -35 17 -61 60 -62h18 +l-11 -54h-18c-70 0 -117 34 -117 102c0 38 14 79 27 116c13 38 26 74 26 102c0 19 -7 55 -66 54z" /> + <glyph glyph-name="bar" unicode="|" horiz-adv-x="217" +d="M95 750h62v-1000h-62v1000z" /> + <glyph glyph-name="braceright" unicode="}" horiz-adv-x="284" +d="M264 311l-9 -51c-68 0 -85 -39 -92 -74c-10 -54 -6 -111 -17 -167c-17 -91 -77 -130 -159 -130h-23l10 54h18c52 0 79 32 90 86c9 48 4 95 13 147c11 65 44 97 91 109v2c-38 11 -54 40 -54 72s14 71 26 109c13 38 25 75 25 101c0 36 -17 62 -60 63h-18l11 54h18 +c70 0 117 -34 117 -102c0 -40 -13 -81 -26 -119c-14 -37 -27 -72 -27 -101c0 -19 7 -54 66 -53z" /> + <glyph glyph-name="asciitilde" unicode="~" horiz-adv-x="596" +d="M123 212h-60c-3 98 51 148 118 148c37 0 76 -12 134 -43c49 -25 86 -42 123 -42c36 0 53 28 54 82h59c5 -110 -52 -148 -115 -148c-36 0 -80 13 -139 44c-38 20 -80 41 -117 41c-34 0 -56 -30 -57 -82z" /> + <glyph glyph-name="exclamdown" unicode="&#xa1;" horiz-adv-x="236" +d="M83 -195h-94l106 477h66zM160 488c32 0 54 -26 54 -58c0 -37 -26 -67 -62 -67c-34 0 -56 26 -56 59c0 36 26 66 64 66z" /> + <glyph glyph-name="cent" unicode="&#xa2;" horiz-adv-x="492" +d="M272 -14h-61l20 101c-53 9 -90 33 -115 67c-24 34 -35 78 -35 122c0 153 111 279 246 297l18 100h61l-19 -98c32 0 73 -12 91 -24l-29 -64c-22 13 -51 23 -95 23c-93 0 -185 -97 -185 -227c0 -75 43 -131 124 -131c43 0 78 12 103 23l8 -63c-23 -13 -70 -25 -113 -26z +" /> + <glyph glyph-name="sterling" unicode="&#xa3;" horiz-adv-x="492" +d="M426 0h-402l9 51c65 31 115 95 131 162c6 24 8 52 9 82h-90l12 63h79c1 34 3 78 12 123c23 111 96 180 207 180c42 0 76 -12 92 -23l-25 -64c-19 10 -45 17 -75 17c-70 0 -110 -49 -123 -121c-7 -41 -8 -78 -8 -112h148l-12 -63h-139c-2 -25 -4 -50 -11 -79 +c-13 -56 -43 -105 -92 -143v-2h291z" /> + <glyph glyph-name="fraction" unicode="&#x2044;" horiz-adv-x="142" +d="M-123 -11h-61l487 672h61z" /> + <glyph glyph-name="yen" unicode="&#xa5;" horiz-adv-x="492" +d="M234 0h-78l33 176h-146l9 49h146l14 73h-146l10 49h122l-103 303h85l59 -206c9 -34 17 -61 23 -92h4c15 29 34 61 56 94l141 204h91l-228 -303h121l-9 -49h-148l-14 -73h148l-10 -49h-147z" /> + <glyph glyph-name="florin" unicode="&#x192;" horiz-adv-x="492" +d="M125 339l10 62h93l13 47c27 106 73 213 204 213c32 -1 53 -7 67 -16l-23 -61c-15 6 -32 11 -54 11c-62 0 -96 -64 -116 -152l-10 -42h116l-10 -62h-121l-51 -207c-32 -127 -78 -216 -189 -216c-32 0 -62 9 -75 18l19 60c14 -8 36 -12 56 -12c53 0 85 56 111 163l49 194 +h-89z" /> + <glyph glyph-name="section" unicode="&#xa7;" horiz-adv-x="501" +d="M152 349c0 -35 15 -62 82 -94c40 -19 72 -36 92 -51c32 20 57 53 57 89c0 31 -14 62 -75 94c-30 14 -68 33 -93 50c-38 -20 -63 -53 -63 -88zM473 652l-24 -55c-25 15 -62 30 -112 30c-57 0 -106 -33 -106 -81c0 -43 34 -62 100 -92c74 -34 125 -72 125 -142 +c0 -66 -40 -111 -88 -142c16 -19 23 -45 23 -71c0 -110 -99 -159 -196 -159c-57 0 -115 15 -148 40l25 57c28 -18 69 -39 126 -39c66 0 115 35 115 89c0 35 -20 63 -98 100c-78 35 -137 76 -137 142c0 56 38 106 100 141c-15 19 -23 40 -23 64c0 94 90 151 191 151 +c53 0 102 -16 127 -33z" /> + <glyph glyph-name="currency" unicode="&#xa4;" horiz-adv-x="492" +d="M264 534c45 0 88 -16 114 -40l71 74l44 -46l-77 -70c19 -27 35 -69 35 -119c0 -54 -17 -96 -35 -121l75 -72l-44 -46l-69 76c-30 -28 -76 -42 -116 -42c-41 0 -86 14 -112 39l-67 -73l-45 46l73 69c-20 26 -37 67 -37 120c0 54 18 95 39 123l-76 70l45 46l69 -74 +c27 25 69 40 113 40zM261 474c-73 0 -119 -65 -119 -143c0 -101 67 -143 120 -143c59 0 121 41 121 144c0 73 -42 142 -122 142z" /> + <glyph glyph-name="quotesingle" unicode="'" horiz-adv-x="166" +d="M128 692h86l-62 -242h-54z" /> + <glyph glyph-name="quotedblleft" unicode="&#x201c;" horiz-adv-x="342" +d="M163 458l-91 -10c37 84 97 192 132 238l57 6c-31 -59 -75 -162 -98 -234zM312 458l-91 -10c37 84 97 192 132 238l57 6c-31 -59 -76 -162 -98 -234z" /> + <glyph glyph-name="guillemotleft" unicode="&#xab;" horiz-adv-x="409" +d="M253 436l-151 -186l101 -182h-66l-104 184l148 184h72zM417 436l-152 -186l102 -182h-67l-103 184l147 184h73z" /> + <glyph glyph-name="guilsinglleft" unicode="&#x2039;" horiz-adv-x="245" +d="M253 436l-152 -186l102 -182h-66l-104 184l147 184h73z" /> + <glyph glyph-name="guilsinglright" unicode="&#x203a;" horiz-adv-x="245" +d="M160 255l-102 181h66l104 -184l-148 -184h-72z" /> + <glyph glyph-name="fi" unicode="&#xfb01;" horiz-adv-x="499" +d="M123 0h-82l79 419h-64l12 65h65l5 24c24 132 105 212 231 212c45 0 93 -13 110 -26l-26 -65c-21 11 -55 22 -96 22c-87 0 -125 -66 -138 -145l-4 -22h260l-93 -484h-82l79 419h-177z" /> + <glyph glyph-name="fl" unicode="&#xfb02;" horiz-adv-x="499" +d="M123 0h-82l79 419h-64l12 65h65l4 21c12 68 39 128 94 170c38 30 92 46 149 46c48 0 104 -12 133 -32l-131 -689h-82l121 640c-12 8 -29 13 -64 13c-80 0 -122 -62 -137 -143l-5 -26h102l-13 -65h-102z" /> + <glyph glyph-name="endash" unicode="&#x2013;" horiz-adv-x="500" +d="M41 284h440l-12 -60h-440z" /> + <glyph glyph-name="dagger" unicode="&#x2020;" horiz-adv-x="483" +d="M286 674h80l-49 -211l168 7l-14 -71l-165 7l-79 -456h-80l95 456l-167 -7l14 71l164 -7z" /> + <glyph glyph-name="daggerdbl" unicode="&#x2021;" horiz-adv-x="483" +d="M286 674h79l-46 -201l167 7l-14 -71l-163 7l-39 -205l166 8l-14 -71l-163 7l-33 -205h-79l46 205l-166 -7l14 71l163 -8l39 205l-166 -7l14 71l163 -7z" /> + <glyph glyph-name="periodcentered" unicode="&#xb7;" horiz-adv-x="211" +d="M105 198c-33 0 -55 26 -55 59c0 37 26 67 63 67c34 0 56 -26 56 -60c0 -37 -26 -66 -64 -66z" /> + <glyph glyph-name="paragraph" unicode="&#xb6;" horiz-adv-x="494" +d="M222 -51h-61l61 313c-3 1 -7 1 -10 2c-58 8 -137 60 -137 170c0 137 111 240 307 240c49 0 88 -3 110 -8l-138 -717h-60l127 667h-72z" /> + <glyph glyph-name="bullet" unicode="&#x2022;" horiz-adv-x="277" +d="M144 161c-57 0 -104 46 -104 105c-1 58 47 105 105 105s105 -46 105 -105c0 -58 -47 -105 -106 -105z" /> + <glyph glyph-name="quotesinglbase" unicode="&#x201a;" horiz-adv-x="194" +d="M7 -115l-60 -7c31 60 77 165 99 238l94 10c-37 -85 -98 -194 -133 -241z" /> + <glyph glyph-name="quotedblbase" unicode="&#x201e;" horiz-adv-x="342" +d="M5 -115l-60 -7c32 60 77 165 99 238l94 10c-37 -85 -98 -194 -133 -241zM160 -115l-60 -7c31 60 77 165 99 238l94 10c-37 -85 -98 -194 -133 -241z" /> + <glyph glyph-name="quotedblright" unicode="&#x201d;" horiz-adv-x="342" +d="M161 682l91 10c-37 -84 -97 -192 -131 -238l-58 -6c31 59 76 162 98 234zM310 682l91 10c-37 -84 -97 -192 -131 -238l-58 -6c31 59 76 162 98 234z" /> + <glyph glyph-name="guillemotright" unicode="&#xbb;" horiz-adv-x="408" +d="M159 255l-102 181h67l103 -184l-147 -184h-73zM322 255l-101 181h66l104 -184l-148 -184h-72z" /> + <glyph glyph-name="ellipsis" unicode="&#x2026;" horiz-adv-x="1000" +d="M127 -11c-33 0 -55 26 -55 59c0 37 26 67 63 67c34 0 56 -26 56 -60c0 -37 -26 -66 -64 -66zM460 -11c-33 0 -55 26 -55 59c0 37 26 67 63 67c34 0 56 -26 56 -60c0 -37 -26 -66 -64 -66zM793 -11c-33 0 -55 26 -55 59c0 37 26 67 63 67c34 0 56 -26 56 -60 +c0 -37 -26 -66 -64 -66z" /> + <glyph glyph-name="perthousand" unicode="&#x2030;" horiz-adv-x="1124" +d="M258 661c82 0 119 -66 119 -135c0 -142 -75 -263 -184 -263c-77 0 -123 58 -123 144c0 123 72 254 188 254zM247 608c-67 0 -109 -114 -109 -203c0 -46 14 -89 63 -89c67 0 108 119 108 205c0 39 -12 87 -62 87zM186 -13h-60l491 675h60zM618 392c82 0 119 -66 119 -136 +c0 -142 -75 -263 -184 -263c-76 0 -122 58 -122 145c0 122 72 254 187 254zM607 339c-66 0 -108 -115 -108 -203c0 -47 14 -90 63 -90c67 0 107 119 107 206c0 39 -12 87 -62 87zM971 392c82 0 119 -66 119 -136c0 -142 -75 -263 -184 -263c-76 0 -122 58 -122 145 +c0 122 72 254 187 254zM960 339c-66 0 -108 -115 -108 -203c0 -47 14 -90 63 -90c67 0 107 119 107 206c0 39 -12 87 -62 87z" /> + <glyph glyph-name="questiondown" unicode="&#xbf;" horiz-adv-x="384" +d="M191 286h80c0 -9 -1 -18 -2 -27c-5 -54 -35 -115 -98 -182c-46 -46 -86 -93 -86 -145c0 -36 18 -71 76 -71c37 0 71 9 100 27l16 -61c-37 -21 -85 -36 -135 -36c-101 0 -143 68 -143 130c0 70 46 131 108 193c49 50 73 93 80 143zM262 488c32 0 54 -26 54 -58 +c0 -37 -26 -67 -63 -67c-33 0 -55 26 -55 59c0 37 26 66 64 66z" /> + <glyph glyph-name="grave" unicode="`" +d="M144 686h94l66 -143h-60z" /> + <glyph glyph-name="acute" unicode="&#xb4;" +d="M300 686h100l-133 -143h-65z" /> + <glyph glyph-name="circumflex" unicode="&#x2c6;" +d="M245 686h59l69 -143h-62l-43 91h-2l-70 -91h-67z" /> + <glyph glyph-name="tilde" unicode="&#x2dc;" +d="M186 568h-48c7 58 34 100 77 100c26 0 40 -10 61 -22c15 -9 27 -17 40 -17c17 0 24 9 30 42h47c-8 -62 -30 -96 -77 -96c-23 0 -43 10 -59 20c-14 9 -27 18 -42 18c-17 0 -24 -19 -29 -45z" /> + <glyph glyph-name="macron" unicode="&#xaf;" +d="M162 646h219l-10 -53h-219z" /> + <glyph glyph-name="breve" unicode="&#x2d8;" +d="M159 683h50c-2 -37 17 -68 55 -68c48 0 71 35 80 68h52c-12 -73 -64 -121 -133 -121c-89 0 -112 60 -104 121z" /> + <glyph glyph-name="dotaccent" unicode="&#x2d9;" +d="M261 569c-26 0 -46 21 -46 49c0 31 23 54 52 54s47 -22 47 -49c0 -31 -21 -54 -53 -54z" /> + <glyph glyph-name="dieresis" unicode="&#xa8;" +d="M172 570c-27 0 -47 21 -47 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -52 -53zM354 570c-27 0 -46 21 -46 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -53 -53z" /> + <glyph glyph-name="ring" unicode="&#x2da;" horiz-adv-x="384" +d="M272 721c53 0 95 -35 95 -92c-1 -58 -50 -95 -104 -95s-95 36 -96 88c-1 58 44 99 105 99zM267 683c-29 0 -50 -25 -50 -58c0 -28 19 -53 48 -53c30 0 52 25 52 59c0 29 -19 52 -50 52z" /> + <glyph glyph-name="cedilla" unicode="&#xb8;" +d="M132 2h53l-39 -52c32 -8 54 -32 54 -64c0 -56 -52 -87 -109 -87c-27 0 -52 8 -65 17l18 43c15 -9 34 -14 52 -14c23 0 44 13 44 36c0 21 -23 34 -66 39z" /> + <glyph glyph-name="hungarumlaut" unicode="&#x2dd;" +d="M242 686h88l-125 -143h-56zM387 686h88l-126 -143h-55z" /> + <glyph glyph-name="ogonek" unicode="&#x2db;" +d="M137 1h62c-36 -28 -74 -74 -74 -111c0 -23 14 -37 38 -37c16 0 31 4 44 10l9 -45c-25 -17 -53 -24 -81 -24c-49 0 -78 29 -78 72c0 59 53 112 80 135z" /> + <glyph glyph-name="caron" unicode="&#x2c7;" +d="M284 543h-59l-70 143h62l43 -92h3l71 92h67z" /> + <glyph glyph-name="emdash" unicode="&#x2014;" horiz-adv-x="1000" +d="M41 284h940l-12 -60h-940z" /> + <glyph glyph-name="AE" unicode="&#xc6;" horiz-adv-x="773" +d="M37 0h-88l448 674h380l-14 -71h-251l-23 -218h238l-13 -70h-230l-26 -244h257l-13 -71h-329l24 238h-202zM238 307h165l21 195c3 32 7 75 12 109h-4c-18 -32 -41 -71 -64 -106z" /> + <glyph glyph-name="ordfeminine" unicode="&#xaa;" horiz-adv-x="350" +d="M325 267h-59c0 18 1 41 4 63h-2c-28 -45 -70 -69 -116 -69c-57 0 -94 46 -94 115c0 108 74 215 214 215c33 0 76 -9 97 -17l-36 -206c-7 -37 -8 -75 -8 -101zM280 422l20 112c-12 5 -26 7 -45 7c-71 0 -131 -68 -131 -155c0 -37 14 -73 55 -73c44 0 90 50 101 109z" /> + <glyph glyph-name="Lslash" unicode="&#x141;" horiz-adv-x="448" +d="M391 0h-354l51 270l-95 -62l13 68l95 61l64 337h83l-53 -278l142 93l-13 -69l-142 -92l-48 -256h271z" /> + <glyph glyph-name="Oslash" unicode="&#xd8;" horiz-adv-x="667" +d="M64 -42l-41 39l77 88c-34 50 -52 104 -52 183c0 118 45 238 121 317c62 63 146 100 232 100c72 0 125 -19 166 -57l76 85l44 -36l-80 -91c34 -49 49 -108 49 -176c0 -118 -45 -244 -119 -322c-59 -62 -145 -99 -230 -99c-69 0 -123 19 -165 57zM159 155l358 413 +c-27 29 -64 47 -125 47c-111 0 -205 -95 -241 -218c-23 -78 -26 -166 6 -242h2zM547 512l-354 -407c29 -30 66 -46 126 -46c100 0 192 85 231 207c23 73 32 165 -1 246h-2z" /> + <glyph glyph-name="OE" unicode="&#x152;" horiz-adv-x="867" +d="M799 71l-13 -71h-324c-19 0 -39 -2 -62 -3c-21 -3 -43 -4 -72 -4c-192 0 -282 130 -282 284c0 205 138 404 408 404c31 0 52 -1 77 -3c28 -2 45 -4 67 -4h300l-13 -71h-269l-41 -217h253l-13 -70h-253l-46 -245h283zM433 71l100 532c-20 5 -40 8 -85 8 +c-204 0 -314 -159 -314 -328c0 -120 59 -220 218 -220c30 0 54 3 81 8z" /> + <glyph glyph-name="ordmasculine" unicode="&#xba;" horiz-adv-x="345" +d="M231 591c91 0 136 -63 136 -136c0 -110 -78 -194 -181 -194c-87 0 -134 65 -134 133c0 113 81 197 179 197zM223 541c-58 0 -104 -70 -104 -146c0 -54 31 -85 73 -85c56 0 107 62 107 149c0 37 -15 82 -76 82z" /> + <glyph glyph-name="ae" unicode="&#xe6;" horiz-adv-x="718" +d="M630 89l11 -60c-36 -22 -91 -40 -159 -40c-77 0 -137 39 -158 107h-2c-39 -67 -106 -107 -183 -107c-86 0 -132 56 -133 124c0 129 136 196 315 189l3 19c8 46 -10 111 -92 111c-49 0 -89 -15 -126 -40l-17 56c50 33 106 47 153 47c78 0 127 -37 138 -102h3 +c41 68 113 102 183 102c94 0 139 -58 139 -116c0 -135 -150 -152 -321 -146c-7 -39 -9 -77 5 -112c18 -43 59 -65 110 -65c65 0 100 17 131 33zM301 189l10 54c-85 4 -221 -15 -221 -119c0 -43 28 -69 71 -69c60 0 123 45 140 134zM623 373c0 30 -25 58 -71 58 +c-85 0 -141 -81 -157 -137c120 -4 228 1 228 79z" /> + <glyph glyph-name="dotlessi" unicode="&#x131;" horiz-adv-x="229" +d="M111 0h-83l92 484h83z" /> + <glyph glyph-name="lslash" unicode="&#x142;" horiz-adv-x="237" +d="M116 0h-82l54 284l-76 -54l13 68l76 54l68 358h83l-56 -293l79 57l-13 -68l-79 -56z" /> + <glyph glyph-name="oslash" unicode="&#xf8;" horiz-adv-x="523" +d="M52 -38l-30 30l56 65c-31 38 -43 85 -43 137c0 155 112 301 266 301c51 0 89 -14 116 -35l55 61l33 -29l-55 -63c31 -41 43 -91 43 -133c0 -169 -121 -307 -261 -307c-56 0 -94 14 -123 39zM139 125l230 277c-17 18 -42 29 -77 29c-106 0 -172 -129 -172 -227 +c0 -33 4 -56 17 -79h2zM390 359l-232 -275c19 -20 46 -31 81 -31c88 0 168 115 169 228c0 29 -5 54 -15 78h-3z" /> + <glyph glyph-name="oe" unicode="&#x153;" horiz-adv-x="800" +d="M712 90l13 -61c-36 -22 -95 -40 -156 -40c-78 0 -139 37 -161 114h-2c-44 -77 -115 -114 -190 -114c-112 0 -182 88 -182 200c0 161 109 306 260 306c85 0 141 -47 159 -118h1c44 77 122 118 195 118c102 0 137 -65 137 -119c0 -138 -162 -156 -319 -157 +c-7 -32 -3 -70 9 -98c18 -40 55 -64 110 -64c56 0 97 17 126 33zM232 55c103 0 168 140 168 240c0 67 -24 135 -108 135c-106 0 -172 -126 -172 -237c0 -81 43 -138 112 -138zM707 371c0 35 -27 60 -74 60c-79 0 -135 -78 -155 -149c112 1 229 9 229 89z" /> + <glyph glyph-name="germandbls" unicode="&#xdf;" horiz-adv-x="538" +d="M112 0h-83l88 461c27 144 94 260 246 260c97 0 156 -62 156 -142c0 -43 -20 -87 -42 -107c-46 -17 -86 -47 -86 -93c0 -33 14 -54 37 -84c29 -39 51 -82 51 -130c0 -111 -89 -176 -197 -176c-40 0 -76 9 -100 23l23 63c23 -13 54 -20 77 -20c64 0 112 40 112 102 +c0 26 -8 55 -37 92c-35 44 -51 77 -51 113c0 66 49 114 109 140c11 11 22 35 22 69c0 41 -24 82 -86 82c-73 0 -127 -61 -149 -180z" /> + <glyph glyph-name="onesuperior" unicode="&#xb9;" horiz-adv-x="228" +d="M203 406h-69l63 329h-2l-72 -32l-6 49l100 44h60z" /> + <glyph glyph-name="logicalnot" unicode="&#xac;" horiz-adv-x="596" +d="M49 399h501v-279h-63v220h-438v59z" /> + <glyph glyph-name="mu" unicode="&#xb5;" horiz-adv-x="525" +d="M196 484l-54 -287c-16 -84 7 -138 81 -138c51 0 98 53 124 102c10 18 17 39 21 59l50 264h83l-65 -344c-12 -63 -3 -82 28 -84l-18 -64c-9 -2 -13 -3 -27 -3c-39 0 -67 24 -63 100h-3c-29 -52 -81 -98 -146 -98c-43 0 -81 19 -98 58l-11 -65c-10 -53 -24 -141 -21 -182 +h-74c-6 28 1 100 16 179l95 503h82z" /> + <glyph glyph-name="trademark" unicode="&#x2122;" horiz-adv-x="669" +d="M104 674h227v-45h-87v-227h-54v227h-86v45zM679 402h-54l-10 160c-1 21 -1 47 -2 76h-3c-7 -24 -15 -56 -22 -81l-50 -151h-55l-49 155c-5 21 -13 53 -19 77h-3c-1 -25 -1 -51 -3 -76l-10 -160h-52l20 272h82l47 -133c6 -21 11 -41 17 -69h2c6 24 13 48 18 68l47 134h79z +" /> + <glyph glyph-name="Eth" unicode="&#xd0;" horiz-adv-x="654" +d="M14 317l14 70h84l52 278c56 10 114 14 171 14c108 0 195 -31 244 -88c37 -38 64 -100 64 -184c0 -120 -51 -242 -140 -316c-75 -62 -175 -94 -301 -94c-60 0 -120 3 -163 9l59 311h-84zM361 387l-14 -70h-166l-47 -246c30 -5 62 -5 91 -5c94 0 177 32 234 90 +c61 61 95 155 95 248c0 118 -58 207 -225 207c-31 0 -64 -1 -93 -5l-41 -219h166z" /> + <glyph glyph-name="onehalf" unicode="&#xbd;" horiz-adv-x="751" +d="M195 266h-69l62 329h-1l-72 -33l-7 50l100 44h61zM140 -11h-61l488 672h61zM661 0h-263l7 39l73 59c93 75 156 128 156 187c0 27 -14 54 -60 54c-33 0 -66 -17 -84 -31l-16 45c31 24 75 42 121 42c71 0 112 -44 112 -101c0 -79 -80 -143 -165 -209l-36 -28v-2h165z" /> + <glyph glyph-name="plusminus" unicode="&#xb1;" horiz-adv-x="596" +d="M275 572h62v-195h219v-59h-219v-201h-62v201h-219v59h219v195zM56 59h500v-59h-500v59z" /> + <glyph glyph-name="Thorn" unicode="&#xde;" horiz-adv-x="507" +d="M32 0l128 674h81l-25 -132c22 5 49 7 80 7c66 0 119 -17 153 -52c30 -29 45 -68 45 -113c0 -152 -133 -233 -276 -233c-27 0 -54 2 -76 5l-29 -156h-81zM203 474l-47 -248c23 -5 47 -6 70 -6c98 0 184 61 184 154c0 75 -55 108 -133 108c-29 0 -60 -4 -74 -8z" /> + <glyph glyph-name="onequarter" unicode="&#xbc;" horiz-adv-x="751" +d="M616 0h-66l19 103h-192l8 40l232 252h73l-46 -243h58l-9 -49h-58zM578 152l23 118c4 24 10 45 15 63h-2c-16 -22 -29 -40 -43 -57l-113 -123l1 -1h119zM198 266h-69l63 329h-2l-71 -33l-7 50l100 44h60zM159 -11h-62l486 672h62z" /> + <glyph glyph-name="divide" unicode="&#xf7;" horiz-adv-x="596" +d="M305 386c-31 0 -52 24 -52 55c0 33 22 56 53 56c32 0 53 -23 53 -56c0 -31 -21 -55 -54 -55zM556 237h-500v59h500v-59zM305 36c-31 0 -52 24 -52 55c0 33 22 56 53 56c32 0 53 -23 53 -56c0 -31 -21 -55 -54 -55z" /> + <glyph glyph-name="brokenbar" unicode="&#xa6;" horiz-adv-x="217" +d="M95 174h62v-350h-62v350zM95 674h62v-350h-62v350z" /> + <glyph glyph-name="degree" unicode="&#xb0;" horiz-adv-x="318" +d="M226 685c79 0 127 -60 127 -125c0 -80 -67 -135 -133 -135c-76 0 -127 58 -127 127c0 73 60 133 133 133zM223 638c-48 0 -76 -47 -76 -86c0 -45 33 -80 75 -80c43 0 77 38 77 86c0 35 -20 80 -76 80z" /> + <glyph glyph-name="thorn" unicode="&#xfe;" horiz-adv-x="526" +d="M-15 -198l164 868h83l-53 -273h2c40 60 100 98 167 98c103 0 149 -82 149 -176c0 -176 -127 -330 -284 -330c-36 0 -79 8 -103 22h-3l-39 -209h-83zM146 216l-26 -136c21 -17 58 -26 94 -26c107 0 196 132 196 258c0 53 -23 114 -91 114c-64 0 -146 -70 -173 -210z" /> + <glyph glyph-name="threequarters" unicode="&#xbe;" horiz-adv-x="751" +d="M193 -11h-62l486 672h62zM124 582l-11 45c25 18 68 34 111 34c72 0 110 -40 110 -86c0 -47 -39 -81 -91 -97v-2c41 -10 71 -45 71 -89c-1 -76 -68 -126 -164 -126c-46 0 -89 13 -109 29l22 48c17 -12 50 -26 87 -26c59 0 93 35 93 75c0 46 -44 65 -90 65h-20l8 45h21 +c45 0 100 26 100 68c0 25 -15 45 -57 45c-29 0 -62 -14 -81 -28zM627 0h-66l19 103h-192l8 40l232 252h74l-46 -243h57l-9 -49h-58zM590 152l22 118c5 24 10 45 15 63h-2c-16 -22 -28 -40 -43 -57l-113 -123l1 -1h120z" /> + <glyph glyph-name="twosuperior" unicode="&#xb2;" horiz-adv-x="298" +d="M310 406h-263l7 40l73 58c93 74 156 128 156 187c0 27 -14 54 -60 54c-33 0 -66 -17 -85 -30l-16 44c32 24 76 42 122 42c71 0 112 -44 112 -101c0 -79 -80 -143 -165 -209l-36 -28v-2h166z" /> + <glyph glyph-name="registered" unicode="&#xae;" horiz-adv-x="395" +d="M226 499v-65h-38v164c15 2 36 5 63 5c32 0 46 -5 57 -13c10 -7 17 -19 17 -35c0 -20 -15 -33 -34 -39v-2c16 -5 24 -18 29 -40c5 -25 9 -34 12 -40h-40c-5 6 -8 20 -13 40c-3 17 -13 25 -34 25h-19zM227 573v-47h18c22 0 39 7 39 24c0 15 -11 25 -36 25 +c-10 0 -16 -1 -21 -2zM254 683c93 0 166 -72 166 -164s-73 -165 -167 -165s-169 73 -169 165s75 164 170 164zM251 650c-71 0 -125 -59 -125 -131c0 -73 54 -131 127 -131c72 -1 125 58 125 130c0 73 -53 132 -127 132z" /> + <glyph glyph-name="minus" unicode="&#x2212;" horiz-adv-x="596" +d="M57 297h500v-59h-500v59z" /> + <glyph glyph-name="eth" unicode="&#xf0;" horiz-adv-x="516" +d="M228 55c99 0 169 119 171 244c1 27 -1 51 -15 74c-16 26 -44 48 -92 48c-104 0 -173 -124 -173 -235c0 -71 36 -131 109 -131zM165 507l-17 42l128 59c-25 25 -57 46 -89 62l39 49c48 -22 83 -47 121 -79l130 58l18 -42l-112 -51c64 -70 103 -158 103 -269 +c0 -212 -126 -347 -264 -347c-132 0 -189 96 -189 195c0 160 113 298 255 300c33 0 77 -8 105 -48l3 2c-18 53 -45 97 -85 137z" /> + <glyph glyph-name="multiply" unicode="&#xd7;" horiz-adv-x="596" +d="M63 482l43 44l204 -222l205 222l43 -43l-207 -220l207 -219l-44 -44l-205 222l-205 -222l-41 45l205 218z" /> + <glyph glyph-name="threesuperior" unicode="&#xb3;" horiz-adv-x="291" +d="M137 722l-11 45c25 18 68 34 111 34c72 0 110 -40 110 -86c0 -47 -39 -81 -90 -97v-2c41 -10 71 -45 71 -89c-1 -76 -68 -126 -164 -126c-46 0 -89 13 -109 29l22 48c17 -12 50 -26 87 -26c59 0 93 35 93 75c0 46 -44 65 -91 65h-20l8 45h21c45 0 100 26 100 68 +c0 25 -15 45 -57 45c-29 0 -62 -14 -81 -28z" /> + <glyph glyph-name="copyright" unicode="&#xa9;" horiz-adv-x="675" +d="M368 648c167 0 298 -138 298 -308c0 -172 -131 -310 -299 -310c-170 0 -303 138 -303 310c0 170 133 308 304 308zM365 607c-141 0 -252 -117 -252 -270c0 -150 111 -266 253 -266c141 -2 251 116 251 269c0 150 -110 267 -252 267zM501 493l-12 -40c-14 8 -50 24 -98 24 +c-93 0 -139 -60 -139 -140c0 -78 49 -141 140 -141c41 0 79 11 103 27l11 -38c-35 -24 -82 -32 -123 -32c-116 0 -183 79 -183 181c0 114 90 186 190 186c53 0 97 -15 111 -27z" /> + <glyph glyph-name="Aacute" unicode="&#xc1;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM424 828h108l-136 -118h-74z" /> + <glyph glyph-name="Acircumflex" unicode="&#xc2;" horiz-adv-x="568" +d="M400 213h-232l-108 -213h-87l348 674h98l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -56 -123zM357 828h65l80 -118h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Adieresis" unicode="&#xc4;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l93 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM284 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53zM468 720c-25 0 -46 21 -46 48c0 29 23 53 52 53 +s47 -24 47 -48c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="Agrave" unicode="&#xc0;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM233 828h103l75 -117h-68z" /> + <glyph glyph-name="Aring" unicode="&#xc5;" horiz-adv-x="568" +d="M401 213h-233l-107 -213h-88l349 674h98l93 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM386 873c56 0 95 -34 95 -87c-1 -56 -47 -91 -103 -91c-55 0 -94 34 -95 83c-1 55 42 95 103 95zM382 837c-29 0 -48 -24 -48 -56 +c0 -27 18 -50 46 -50c29 0 49 23 49 54c0 30 -17 52 -47 52z" /> + <glyph glyph-name="Atilde" unicode="&#xc3;" horiz-adv-x="568" +d="M401 213h-233l-107 -213h-88l349 674h98l93 -674h-85zM198 279h197l-27 195c-4 35 -8 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM292 715h-47c10 59 41 100 82 100c27 0 42 -9 60 -20c15 -10 29 -18 44 -18c17 0 27 13 35 40h46c-11 -62 -38 -96 -83 -96 +c-26 0 -40 8 -60 19c-17 10 -27 19 -43 18c-16 0 -27 -16 -34 -43z" /> + <glyph glyph-name="Ccedilla" unicode="&#xc7;" horiz-adv-x="558" +d="M486 91l11 -68c-35 -16 -92 -31 -152 -33l-31 -40c33 -8 54 -33 54 -65c0 -56 -55 -85 -108 -85c-28 0 -53 8 -67 18l18 41c15 -9 33 -14 51 -14c22 0 44 12 44 35c0 22 -21 35 -65 40l52 71c-156 12 -244 119 -244 279c0 125 51 247 144 324c70 59 156 90 254 90 +c75 0 129 -19 146 -32l-27 -67c-25 15 -73 27 -132 27c-71 0 -142 -27 -194 -75c-64 -59 -103 -156 -103 -256c0 -120 56 -220 205 -220c51 0 107 11 144 30z" /> + <glyph glyph-name="Eacute" unicode="&#xc9;" horiz-adv-x="470" +d="M432 387l-13 -70h-245l-47 -246h276l-14 -71h-358l128 674h343l-14 -71h-259l-42 -216h245zM387 828h109l-137 -118h-73z" /> + <glyph glyph-name="Ecircumflex" unicode="&#xca;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245zM323 828h65l80 -118h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Edieresis" unicode="&#xcb;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-47 -246h277l-14 -71h-359l128 674h344l-14 -71h-261l-41 -216h246zM252 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53zM437 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53z +" /> + <glyph glyph-name="Egrave" unicode="&#xc8;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245zM214 828h103l75 -117h-68z" /> + <glyph glyph-name="Iacute" unicode="&#xcd;" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83zM252 828h109l-137 -118h-73z" /> + <glyph glyph-name="Icircumflex" unicode="&#xce;" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83zM187 828h64l80 -118h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Idieresis" unicode="&#xcf;" horiz-adv-x="233" +d="M158 674h84l-129 -674h-83zM120 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53zM305 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="Igrave" unicode="&#xcc;" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83zM79 828h103l75 -117h-68z" /> + <glyph glyph-name="Ntilde" unicode="&#xd1;" horiz-adv-x="632" +d="M110 0h-79l129 674h90l154 -382c30 -76 45 -130 60 -188l2 1c3 61 10 117 28 211l68 358h78l-128 -674h-82l-153 381c-33 83 -48 130 -63 194l-3 -1c-7 -63 -18 -130 -35 -222zM332 716h-47c10 59 41 100 82 100c27 0 42 -9 60 -21c15 -10 29 -18 44 -18 +c16 0 26 13 34 40h46c-11 -62 -38 -96 -83 -96c-25 0 -40 8 -59 20c-17 10 -27 19 -43 18c-16 0 -27 -16 -34 -43z" /> + <glyph glyph-name="Oacute" unicode="&#xd3;" horiz-adv-x="668" +d="M303 -11c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94zM316 59c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210c-60 0 -112 -26 -154 -67 +c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211zM470 829h109l-137 -118h-74z" /> + <glyph glyph-name="Ocircumflex" unicode="&#xd4;" horiz-adv-x="668" +d="M303 -11c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94zM316 59c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210c-60 0 -112 -26 -154 -67 +c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211zM402 828h65l80 -118h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Odieresis" unicode="&#xd6;" horiz-adv-x="668" +d="M304 -11c-175 0 -256 131 -256 274c0 119 46 250 128 331c58 56 142 91 227 91c181 0 254 -132 254 -276c0 -117 -43 -246 -122 -326c-60 -59 -138 -94 -231 -94zM316 59c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -178 210c-60 0 -113 -26 -155 -67 +c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211zM335 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53zM520 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="Ograve" unicode="&#xd2;" horiz-adv-x="668" +d="M303 -11c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94zM316 59c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210c-60 0 -112 -26 -154 -67 +c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211zM287 828h104l75 -117h-69z" /> + <glyph glyph-name="Otilde" unicode="&#xd5;" horiz-adv-x="668" +d="M304 -11c-175 0 -256 131 -256 274c0 119 46 250 128 331c59 56 142 91 227 91c181 0 254 -132 254 -276c0 -117 -43 -246 -122 -326c-60 -59 -138 -94 -231 -94zM316 59c58 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -178 210c-60 0 -113 -26 -154 -67 +c-65 -65 -103 -184 -103 -278c0 -110 49 -211 181 -211zM345 716h-47c10 59 41 100 82 100c27 0 42 -9 60 -21c15 -10 29 -18 44 -18c16 0 26 13 34 40h46c-11 -62 -38 -96 -83 -96c-25 0 -40 8 -59 20c-17 10 -27 19 -43 18c-16 0 -27 -16 -34 -43z" /> + <glyph glyph-name="Scaron" unicode="&#x160;" horiz-adv-x="466" +d="M12 36l30 68c37 -25 87 -43 143 -43c76 0 146 45 146 126c0 50 -28 88 -99 126c-86 47 -134 101 -134 173c0 121 104 198 228 198c66 0 115 -19 138 -35l-30 -68c-21 13 -63 32 -117 32c-83 0 -133 -55 -133 -110s34 -86 105 -125c83 -45 128 -98 128 -181 +c0 -116 -91 -208 -243 -208c-67 1 -134 22 -162 47zM350 710h-65l-80 118h69l47 -72h3l72 72h74z" /> + <glyph glyph-name="Uacute" unicode="&#xda;" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 125 -130c92 0 159 62 188 214l77 400h83l-77 -403c-39 -201 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93zM438 828h109l-137 -118h-73z" /> + <glyph glyph-name="Ucircumflex" unicode="&#xdb;" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 125 -130c92 0 159 62 188 214l77 400h83l-77 -403c-39 -201 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93zM391 828h64l80 -118h-67l-50 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Udieresis" unicode="&#xdc;" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 125 -130c92 0 159 62 188 214l77 400h83l-78 -403c-38 -201 -138 -282 -281 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93zM312 720c-25 0 -46 21 -46 48c0 29 23 53 52 53c28 0 46 -24 46 -48 +c0 -29 -22 -53 -52 -53zM496 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="Ugrave" unicode="&#xd9;" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 125 -130c92 0 159 62 188 214l77 400h83l-77 -403c-39 -201 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93zM274 828h103l75 -117h-69z" /> + <glyph glyph-name="Yacute" unicode="&#xdd;" horiz-adv-x="517" +d="M243 0h-82l53 280l-130 394h89l65 -218c17 -60 23 -87 28 -113h2c17 28 40 66 72 116l146 215h97l-287 -393zM386 828h109l-137 -118h-73z" /> + <glyph glyph-name="Ydieresis" unicode="&#x178;" horiz-adv-x="517" +d="M243 0h-82l53 280l-130 394h89l65 -218c17 -60 23 -87 28 -113h2c17 28 40 66 73 116l146 215h97l-287 -393zM251 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53zM436 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48 +c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="Zcaron" unicode="&#x17d;" horiz-adv-x="523" +d="M-20 0l9 51l458 549l-1 3h-320l14 71h432l-11 -54l-454 -546l1 -3h354l-13 -71h-469zM391 710h-65l-80 118h70l47 -73h3l71 73h74z" /> + <glyph glyph-name="aacute" unicode="&#xe1;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM396 686h100l-133 -143h-66z" /> + <glyph glyph-name="acircumflex" unicode="&#xe2;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM330 686h59l69 -143h-62l-43 91h-2l-70 -91h-67z" /> + <glyph glyph-name="adieresis" unicode="&#xe4;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM245 570c-27 0 -47 21 -47 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -52 -53zM427 570c-27 0 -46 21 -46 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -53 -53z" /> + <glyph glyph-name="agrave" unicode="&#xe0;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM227 686h94l66 -143h-60z" /> + <glyph glyph-name="aring" unicode="&#xe5;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -58 7c-125 0 -228 -130 -228 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM345 721c53 0 95 -35 95 -92c-1 -58 -50 -95 -104 -95s-95 36 -96 88c-1 58 44 99 105 99zM340 683c-29 0 -50 -25 -50 -58c0 -28 19 -53 48 -53c30 0 52 25 52 59c0 29 -19 52 -50 52z" /> + <glyph glyph-name="atilde" unicode="&#xe3;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM259 568h-48c7 58 34 100 77 100c26 0 40 -10 61 -22c14 -9 27 -17 40 -17c17 0 24 9 30 42h47c-8 -62 -30 -96 -77 -96c-23 0 -43 10 -59 20c-13 9 -27 18 -42 18c-17 0 -24 -19 -29 -45z" /> + <glyph glyph-name="ccedilla" unicode="&#xe7;" horiz-adv-x="423" +d="M352 84l8 -64c-21 -10 -61 -26 -106 -29l-31 -41c32 -8 54 -32 54 -65c0 -55 -53 -86 -108 -86c-27 0 -54 8 -67 17l19 43c15 -9 34 -14 52 -14c23 0 43 13 43 36c0 21 -22 35 -66 39l51 71c-117 7 -167 93 -167 185c0 165 122 318 296 318c46 0 86 -13 101 -22l-24 -65 +c-19 9 -46 18 -82 18c-126 0 -205 -124 -205 -239c0 -77 41 -129 120 -129c52 0 87 16 112 27z" /> + <glyph glyph-name="eacute" unicode="&#xe9;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM351 686h99l-133 -143h-65z" /> + <glyph glyph-name="ecircumflex" unicode="&#xea;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM296 686h59l69 -143h-62l-43 91h-2l-70 -91h-67z" /> + <glyph glyph-name="edieresis" unicode="&#xeb;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM221 570c-27 0 -47 21 -47 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -52 -53zM403 570c-27 0 -46 21 -46 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -53 -53z" /> + <glyph glyph-name="egrave" unicode="&#xe8;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM190 686h94l66 -143h-60z" /> + <glyph glyph-name="iacute" unicode="&#xed;" horiz-adv-x="229" +d="M111 0h-83l93 484h82zM223 686h100l-133 -143h-66z" /> + <glyph glyph-name="icircumflex" unicode="&#xee;" horiz-adv-x="229" +d="M111 0h-83l92 484h83zM161 686h59l69 -143h-62l-43 91h-2l-69 -91h-68z" /> + <glyph glyph-name="idieresis" unicode="&#xef;" horiz-adv-x="229" +d="M111 0h-83l92 484h83zM89 570c-27 0 -47 21 -47 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -52 -53zM271 570c-27 0 -46 21 -46 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -53 -53z" /> + <glyph glyph-name="igrave" unicode="&#xec;" horiz-adv-x="229" +d="M111 0h-83l92 484h83zM50 686h94l66 -143h-60z" /> + <glyph glyph-name="ntilde" unicode="&#xf1;" horiz-adv-x="534" +d="M111 0h-82l64 343c11 54 18 101 23 141h74l-12 -95h2c43 68 109 106 179 106c58 0 123 -33 123 -134c0 -22 -4 -52 -9 -78l-54 -283h-82l53 280c3 19 6 41 6 62c0 48 -19 84 -76 84c-59 0 -143 -71 -165 -191zM252 568h-48c7 58 34 100 77 100c26 0 40 -10 62 -22 +c14 -9 27 -17 40 -17c17 0 24 9 30 42h47c-8 -62 -30 -96 -77 -96c-23 0 -43 10 -60 20c-13 9 -27 18 -42 18c-17 0 -24 -19 -29 -45z" /> + <glyph glyph-name="oacute" unicode="&#xf3;" horiz-adv-x="522" +d="M224 -11c-121 0 -189 90 -189 199c0 160 111 307 268 307c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305zM235 55c98 0 172 126 172 239c0 56 -26 135 -113 135c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136zM367 686h99l-133 -143h-65z" /> + <glyph glyph-name="ocircumflex" unicode="&#xf4;" horiz-adv-x="522" +d="M224 -11c-121 0 -189 90 -189 199c0 160 111 307 268 307c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305zM235 55c98 0 172 126 172 239c0 56 -26 135 -113 135c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136zM313 686h60l68 -143h-62l-42 91h-2l-70 -91h-68 +z" /> + <glyph glyph-name="odieresis" unicode="&#xf6;" horiz-adv-x="522" +d="M224 -11c-121 0 -189 90 -189 199c0 160 111 307 268 307c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305zM235 55c98 0 172 126 172 239c0 56 -26 135 -113 135c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136zM239 570c-27 0 -47 21 -47 49c0 30 23 53 52 53 +s47 -22 47 -49c0 -29 -21 -53 -52 -53zM421 570c-27 0 -46 21 -46 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -53 -53z" /> + <glyph glyph-name="ograve" unicode="&#xf2;" horiz-adv-x="522" +d="M224 -11c-121 0 -189 90 -189 199c0 160 111 307 268 307c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305zM235 55c98 0 172 126 172 239c0 56 -26 135 -113 135c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136zM196 686h94l66 -143h-59z" /> + <glyph glyph-name="otilde" unicode="&#xf5;" horiz-adv-x="522" +d="M224 -11c-121 0 -189 90 -189 199c0 160 111 307 268 307c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305zM235 55c98 0 172 126 172 239c0 56 -26 135 -113 135c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136zM238 568h-48c7 58 34 100 77 100 +c26 0 40 -10 61 -22c15 -9 27 -17 40 -17c17 0 24 9 30 42h47c-8 -62 -30 -96 -77 -96c-23 0 -43 10 -59 20c-13 9 -27 18 -42 18c-17 0 -24 -19 -29 -45z" /> + <glyph glyph-name="scaron" unicode="&#x161;" horiz-adv-x="373" +d="M9 23l24 61c23 -14 64 -30 104 -30c56 0 92 36 92 79c0 38 -17 61 -68 89c-56 31 -87 74 -87 124c0 84 73 149 175 149c44 0 83 -12 101 -24l-23 -63c-17 10 -48 22 -84 22c-50 0 -86 -31 -86 -73c0 -35 23 -57 67 -81c54 -30 90 -73 90 -127c0 -102 -82 -159 -184 -159 +c-52 1 -99 16 -121 33zM275 543h-60l-70 143h63l43 -92h2l71 92h67z" /> + <glyph glyph-name="uacute" unicode="&#xfa;" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM361 686h99l-132 -143h-65z" /> + <glyph glyph-name="ucircumflex" unicode="&#xfb;" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-75l13 91h-2c-43 -63 -107 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM315 686h60l68 -143h-62l-42 91h-2l-70 -91h-67 +z" /> + <glyph glyph-name="udieresis" unicode="&#xfc;" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM237 570c-27 0 -47 21 -47 49c0 30 23 53 52 53 +s47 -22 47 -49c0 -29 -21 -53 -52 -53zM419 570c-27 0 -46 21 -46 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -53 -53z" /> + <glyph glyph-name="ugrave" unicode="&#xf9;" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM196 686h93l66 -143h-59z" /> + <glyph glyph-name="yacute" unicode="&#xfd;" horiz-adv-x="441" +d="M48 484h86l48 -260c11 -56 17 -92 22 -128h2c13 31 27 65 52 119l124 269h88l-182 -368c-52 -104 -101 -189 -167 -254c-54 -55 -113 -78 -140 -84l-21 72c21 7 56 20 89 46c33 25 68 64 94 112c4 8 4 13 2 22zM321 686h99l-133 -143h-65z" /> + <glyph glyph-name="ydieresis" unicode="&#xff;" horiz-adv-x="441" +d="M48 484h86l48 -260c11 -56 17 -92 22 -128h2c13 31 27 65 52 119l124 269h88l-182 -368c-52 -104 -101 -189 -167 -254c-54 -55 -113 -78 -140 -84l-21 72c21 7 56 20 89 46c33 25 68 64 94 112c4 8 4 13 2 22zM189 570c-27 0 -47 21 -47 49c0 30 23 53 52 53 +s47 -22 47 -49c0 -29 -21 -53 -52 -53zM371 570c-27 0 -46 21 -46 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -53 -53z" /> + <glyph glyph-name="zcaron" unicode="&#x17e;" horiz-adv-x="415" +d="M-21 0l9 51l235 262c41 45 68 70 101 100v3h-248l14 68h347l-11 -55l-231 -258c-44 -47 -70 -72 -100 -100l-1 -3h269l-14 -68h-370zM302 543h-60l-70 143h62l44 -92h2l72 92h66z" /> + <glyph glyph-name="Dcroat" unicode="&#x110;" horiz-adv-x="654" +d="M14 317l14 70h84l52 278c56 10 114 14 171 14c108 0 195 -31 244 -88c37 -38 64 -100 64 -184c0 -120 -51 -242 -140 -316c-75 -62 -175 -94 -301 -94c-60 0 -120 3 -163 9l59 311h-84zM361 387l-14 -70h-166l-47 -246c30 -5 62 -5 91 -5c94 0 177 32 234 90 +c61 61 95 155 95 248c0 118 -58 207 -225 207c-31 0 -64 -1 -93 -5l-41 -219h166z" /> + <glyph glyph-name="Eng" unicode="&#x14a;" horiz-adv-x="632" +d="M291 -196l-6 67c75 6 124 40 144 128l-153 382c-33 83 -47 131 -62 194l-3 -1c-7 -63 -18 -130 -35 -222l-67 -352h-78l128 674h91l154 -382c30 -76 45 -130 59 -188l2 2c4 60 11 116 29 210l68 358h78l-123 -647c-33 -176 -120 -219 -226 -223z" /> + <glyph glyph-name="Hbar" unicode="&#x126;" horiz-adv-x="627" +d="M515 480h-310l-20 -103h310zM60 536h73l26 138h83l-26 -138h310l26 138h83l-26 -138h65l-11 -56h-65l-91 -480h-83l57 304h-310l-57 -304h-83l91 480h-73z" /> + <glyph glyph-name="Tbar" unicode="&#x166;" horiz-adv-x="474" +d="M424 321h-132l-61 -321h-82l60 321h-125l11 58h125l43 223h-197l14 72h477l-14 -72h-198l-42 -223h132z" /> + <glyph glyph-name="uni021C" unicode="&#x21c;" horiz-adv-x="465" +d="M-7 -114l-7 67c192 23 350 111 350 249c0 55 -38 110 -132 110c-28 0 -57 -7 -88 -16l-10 58c115 25 232 88 232 181c0 52 -45 81 -99 81c-50 0 -95 -22 -121 -35l-16 56c35 21 101 48 167 48c97 0 159 -59 159 -133c0 -87 -71 -149 -147 -182v-3 +c74 -13 145 -65 145 -159c0 -158 -164 -293 -433 -322z" /> + <glyph glyph-name="dcroat" unicode="&#x111;" horiz-adv-x="525" +d="M371 239l32 169c-16 12 -44 21 -79 21c-116 0 -206 -124 -206 -253c0 -58 20 -119 91 -119c64 0 141 73 162 182zM246 606h195l19 104h82l-19 -104h80l-11 -53h-79l-77 -399c-9 -51 -17 -107 -20 -154h-76l13 96h-2c-44 -69 -105 -107 -174 -107c-94 0 -145 77 -145 176 +c0 172 128 330 299 330c31 0 65 -7 86 -17l14 75h-195z" /> + <glyph glyph-name="eng" unicode="&#x14b;" horiz-adv-x="534" +d="M208 -176l-8 69c71 11 124 40 147 162l43 225c3 19 6 41 6 62c0 48 -19 84 -76 84c-59 0 -143 -71 -165 -191l-44 -235h-82l64 343c10 54 18 101 23 141h74l-12 -95h2c43 68 109 106 179 106c58 0 123 -33 123 -135c0 -21 -4 -51 -9 -77l-44 -231 +c-31 -164 -111 -218 -221 -228z" /> + <glyph glyph-name="hbar" unicode="&#x127;" horiz-adv-x="534" +d="M57 606h87l19 104h83l-20 -104h185l-10 -53h-185l-30 -154h2c41 59 100 96 173 96c55 0 120 -33 120 -130c0 -25 -3 -57 -8 -81l-54 -284h-83l54 280c3 17 6 40 6 67c0 44 -21 79 -75 79c-64 0 -145 -75 -165 -183l-45 -243h-83l106 553h-87z" /> + <glyph glyph-name="kgreenlandic" unicode="&#x138;" horiz-adv-x="456" +d="M110 0h-82l92 484h83l-42 -219h2c14 17 32 36 45 49l170 170h103l-211 -199l144 -285h-91l-117 239l-61 -55z" /> + <glyph glyph-name="napostrophe" unicode="&#x149;" horiz-adv-x="534" +d="M111 0h-82l64 343c11 54 18 101 23 141h74l-12 -95h2c43 68 109 106 179 106c58 0 123 -33 123 -134c0 -22 -4 -52 -9 -78l-54 -283h-82l53 280c3 19 6 41 6 62c0 48 -19 84 -76 84c-59 0 -143 -71 -165 -191zM77 545l-12 41c26 9 55 33 55 72c0 21 -11 41 -23 52l63 14 +c14 -10 28 -35 28 -61c0 -76 -65 -112 -111 -118z" /> + <glyph glyph-name="tbar" unicode="&#x167;" horiz-adv-x="313" +d="M44 303h59l23 116h-69l12 65h69l17 90l87 26l-22 -116h116l-13 -65h-116l-22 -116h93l-11 -52h-92l-14 -75c-5 -25 -8 -46 -8 -69c0 -29 14 -47 46 -47c15 0 28 1 39 4l-4 -65c-15 -6 -40 -9 -64 -9c-73 0 -102 44 -102 94c0 28 4 55 11 90l14 77h-59z" /> + <glyph glyph-name="uni021D" unicode="&#x21d;" horiz-adv-x="393" +d="M-55 -208l-6 66c71 8 328 47 328 208c0 53 -47 94 -124 93c-21 0 -48 -5 -82 -15l-9 59c112 28 214 74 214 155c0 40 -33 68 -91 68c-50 0 -90 -20 -116 -33l-16 54c35 21 95 48 163 48c87 0 144 -55 144 -118c0 -79 -55 -128 -129 -158v-3c72 -12 132 -65 132 -142 +c0 -161 -181 -266 -408 -282z" /> + <glyph glyph-name="IJ" unicode="&#x132;" horiz-adv-x="597" +d="M158 674h83l-128 -674h-83zM443 219l86 455h83l-88 -464c-30 -157 -95 -221 -222 -221c-40 0 -83 9 -100 18l18 71c22 -10 49 -15 85 -15c71 0 115 37 138 156z" /> + <glyph glyph-name="ij" unicode="&#x133;" horiz-adv-x="456" +d="M111 0h-83l93 484h82zM183 566c-29 0 -47 22 -47 52c1 32 25 56 55 56c29 0 49 -22 49 -52c-1 -33 -24 -56 -57 -56zM354 484h83l-92 -482c-15 -81 -33 -132 -62 -164c-28 -32 -69 -47 -111 -47c-21 0 -39 1 -55 6l10 65c9 -3 22 -4 39 -4c42 0 74 26 93 126zM412 566 +c-29 0 -47 22 -47 52c1 32 25 56 55 56c29 0 49 -22 49 -52c-1 -33 -24 -56 -57 -56z" /> + <glyph glyph-name="zero.slash" unicode="&#xf638;" horiz-adv-x="492" +d="M130 165l261 378c-11 28 -34 51 -73 51c-110 0 -190 -202 -193 -372c0 -18 1 -38 5 -57zM403 479l-260 -375c12 -28 35 -48 72 -48c121 0 187 237 191 378c0 13 -1 29 -3 45zM530 648l-61 -80c14 -33 19 -73 19 -111c0 -213 -100 -468 -281 -468c-52 0 -89 18 -115 49 +l-45 -62l-37 32l55 73c-15 36 -22 82 -22 131c0 217 113 449 284 449c54 0 91 -19 116 -50l48 67z" /> + <glyph glyph-name="Euro" unicode="&#x20ac;" horiz-adv-x="492" +d="M431 85l13 -62c-28 -16 -81 -34 -141 -34c-154 0 -234 118 -231 262h-66l11 50h59c2 20 6 41 12 60h-61l11 50h65c46 137 169 250 316 250c58 0 100 -15 127 -30l-28 -63c-23 12 -58 24 -104 24c-109 0 -192 -89 -225 -181h264l-11 -50h-270c-6 -17 -10 -38 -12 -60h271 +l-11 -50h-263c0 -100 50 -193 161 -193c46 0 91 15 113 27z" /> + <glyph glyph-name="Aringacute" unicode="&#x1fa;" horiz-adv-x="568" +d="M382 692c-54 0 -86 31 -86 73c0 46 41 83 97 83c50 0 83 -30 83 -74c0 -49 -40 -82 -94 -82zM384 729c29 0 47 18 47 43c0 21 -15 40 -43 40c-27 0 -46 -21 -46 -44s17 -39 42 -39zM461 946h107l-131 -80h-76zM401 213h-233l-107 -213h-88l349 674h98l93 -674h-85z +M198 279h197l-27 195c-3 35 -8 85 -11 124h-3c-18 -40 -35 -82 -55 -123z" /> + <glyph glyph-name="estimated" unicode="&#x212e;" horiz-adv-x="817" +d="M782 316h-605c-3 0 -5 -1 -5 -4v-183c0 -8 4 -15 9 -21c57 -61 139 -99 229 -99c96 0 182 43 240 111h55c-68 -79 -176 -131 -296 -131c-206 0 -374 150 -374 336s168 336 374 336s373 -150 373 -336v-9zM646 340v184c0 9 -4 16 -10 22c-58 58 -138 95 -226 95 +c-90 0 -170 -38 -228 -98c-6 -6 -10 -14 -10 -23v-180c0 -3 2 -5 5 -5h464c3 0 5 2 5 5z" /> + <glyph glyph-name="zero.oldstyle" unicode="&#xf730;" horiz-adv-x="512" +d="M217 -11c-104 0 -181 78 -181 199c0 146 100 308 262 308c101 0 182 -80 182 -199c0 -149 -99 -308 -263 -308zM230 56c106 0 166 135 166 238c0 78 -40 135 -109 135c-109 0 -167 -137 -167 -238c0 -80 39 -135 110 -135z" /> + <glyph glyph-name="one.oldstyle" unicode="&#xf731;" horiz-adv-x="351" +d="M300 486l-92 -486h-80l77 405h-2l-139 -66l-6 66l172 81h70z" /> + <glyph glyph-name="two.oldstyle" unicode="&#xf732;" horiz-adv-x="444" +d="M389 69l-12 -69h-392l9 48l102 67c142 96 208 160 208 227c0 59 -39 87 -91 87c-48 0 -96 -28 -121 -44l-22 51c38 30 98 62 172 62c81 0 149 -50 149 -143c0 -86 -65 -154 -201 -248l-58 -40v-2c24 2 55 4 77 4h180z" /> + <glyph glyph-name="three.oldstyle" unicode="&#xf733;" horiz-adv-x="427" +d="M-26 -90l20 63c24 -10 68 -19 106 -19c100 0 176 49 176 125c0 65 -61 97 -127 97c-23 0 -41 -1 -58 -2l12 63c6 0 13 1 19 1c72 5 174 44 174 122c0 44 -35 68 -87 68c-47 0 -87 -16 -114 -31l-17 54c35 24 93 45 155 45c81 0 148 -44 148 -124 +c-1 -81 -69 -132 -141 -153v-2c68 -13 122 -58 122 -134c0 -130 -132 -197 -256 -197c-56 0 -106 11 -132 24z" /> + <glyph glyph-name="four.oldstyle" unicode="&#xf734;" horiz-adv-x="496" +d="M350 52l-32 -165h-76l31 165h-276l11 56l335 384h90l-70 -374h87l-13 -66h-87zM285 118l37 195c6 33 14 69 22 99h-3c-20 -31 -43 -63 -65 -89l-177 -201l1 -4h185z" /> + <glyph glyph-name="five.oldstyle" unicode="&#xf735;" horiz-adv-x="421" +d="M-15 -93l19 64c25 -10 64 -17 102 -17c96 0 175 51 175 137c0 28 -10 53 -29 71c-41 40 -129 45 -197 40l91 283h271l-24 -71h-198l-50 -151c66 2 136 -14 178 -56c28 -27 44 -64 44 -108c0 -131 -115 -213 -259 -213c-52 0 -101 11 -123 21z" /> + <glyph glyph-name="six.oldstyle" unicode="&#xf736;" horiz-adv-x="506" +d="M232 56c74 0 143 75 143 167c0 70 -46 109 -102 109c-62 0 -102 -33 -125 -69c-16 -22 -23 -49 -23 -79c0 -77 42 -128 107 -128zM472 605l6 -64c-111 -11 -197 -49 -250 -102c-37 -37 -59 -73 -74 -113h2c31 34 83 67 153 67c80 0 151 -60 151 -161 +c0 -134 -104 -243 -237 -243c-99 0 -180 67 -180 205c0 75 33 193 120 279c70 69 171 124 309 132z" /> + <glyph glyph-name="seven.oldstyle" unicode="&#xf737;" horiz-adv-x="443" +d="M445 485l-10 -55c-61 -129 -234 -386 -363 -544l-80 20c105 120 282 371 350 505v2h-282l12 72h373z" /> + <glyph glyph-name="eight.oldstyle" unicode="&#xf738;" horiz-adv-x="515" +d="M308 607c101 0 171 -61 171 -143c0 -70 -52 -111 -125 -147v-2c64 -34 105 -83 105 -144c0 -114 -115 -182 -226 -182c-120 0 -198 64 -198 159c0 83 75 135 153 170v2c-50 27 -81 70 -81 121c0 97 94 166 201 166zM298 545c-60 0 -112 -36 -112 -93 +c0 -52 44 -84 105 -108c60 25 107 60 107 115c0 45 -32 86 -100 86zM238 52c74 0 134 49 134 111c0 57 -46 93 -120 125c-62 -24 -130 -67 -130 -135c0 -62 49 -101 116 -101z" /> + <glyph glyph-name="nine.oldstyle" unicode="&#xf739;" horiz-adv-x="507" +d="M234 153c49 0 99 31 128 71c13 17 23 48 23 80c0 84 -46 127 -109 127c-73 0 -139 -75 -139 -167c0 -71 42 -111 97 -111zM45 -113l-5 65c26 2 54 4 81 9c140 28 210 116 240 200l-3 1c-28 -35 -86 -69 -150 -69c-94 0 -156 66 -156 162c0 132 107 243 239 243 +c104 0 177 -81 177 -206c0 -182 -117 -363 -356 -400c-24 -3 -47 -5 -67 -5z" /> + <glyph glyph-name="percent.oldstyle" unicode="&#xf642;" horiz-adv-x="781" +d="M224 607c82 0 119 -66 119 -136c0 -142 -75 -263 -184 -263c-76 0 -122 58 -122 145c0 122 72 254 187 254zM213 554c-66 0 -108 -114 -108 -203c0 -47 14 -90 63 -90c67 0 107 119 107 206c0 39 -12 87 -62 87zM194 -13h-60l450 619h60zM626 392c82 0 119 -66 119 -136 +c0 -142 -75 -263 -184 -263c-76 0 -122 58 -122 145c0 122 72 254 187 254zM615 339c-66 0 -108 -115 -108 -203c0 -47 14 -90 63 -90c67 0 107 119 107 206c0 39 -12 87 -62 87z" /> + <glyph glyph-name="zero.fitted" unicode="&#xf639;" horiz-adv-x="492" +d="M206 -11c-120 0 -163 98 -163 223c0 216 113 449 284 449c124 0 161 -103 161 -204c0 -213 -100 -468 -282 -468zM217 56c122 0 188 265 188 396c0 51 -7 142 -87 142c-113 0 -192 -227 -192 -386c0 -69 13 -152 91 -152z" /> + <glyph glyph-name="one.fitted" unicode="&#xf6dc;" horiz-adv-x="345" +d="M116 0l107 566h-2l-111 -56l-9 66l148 74h70l-123 -650h-80z" /> + <glyph glyph-name="two.fitted" unicode="&#xf63a;" horiz-adv-x="444" +d="M365 0h-393l10 55l97 81c174 147 276 248 276 355c0 47 -26 99 -101 99c-58 0 -104 -26 -134 -47l-21 60c45 34 112 58 173 58c122 0 169 -81 169 -159c0 -138 -126 -258 -281 -386l-55 -43v-2h273z" /> + <glyph glyph-name="three.fitted" unicode="&#xf63b;" horiz-adv-x="426" +d="M-16 30l28 66c25 -15 66 -36 125 -36c111 0 162 76 162 143c0 81 -63 115 -140 115h-33l13 65h33c61 0 161 40 161 126c0 50 -30 81 -92 81c-49 0 -94 -16 -123 -36l-18 63c41 25 98 44 155 44c109 0 166 -65 166 -140c0 -85 -69 -147 -143 -168v-2 +c71 -17 108 -78 108 -147c0 -123 -111 -215 -252 -215c-70 0 -128 21 -150 41z" /> + <glyph glyph-name="four.fitted" unicode="&#xf63c;" horiz-adv-x="492" +d="M335 0h-78l34 179h-280l11 56l346 415h91l-77 -405h88l-12 -66h-89zM113 245h191l42 216c7 35 16 71 24 105h-3c-27 -40 -45 -72 -73 -107l-181 -212v-2z" /> + <glyph glyph-name="five.fitted" unicode="&#xf63d;" horiz-adv-x="440" +d="M463 650l-14 -72h-223l-51 -165c11 2 21 2 32 2c28 0 77 -8 114 -31c53 -29 77 -87 77 -143c0 -158 -126 -252 -267 -252c-63 0 -118 19 -140 36l26 66c23 -15 69 -31 122 -31c92 0 173 73 173 164c0 70 -36 125 -157 125c-27 0 -47 -2 -73 -4l90 305h291z" /> + <glyph glyph-name="six.fitted" unicode="&#xf63e;" horiz-adv-x="491" +d="M472 660l-12 -71c-16 0 -36 -1 -60 -5c-117 -21 -214 -110 -258 -236l2 -1c38 49 101 82 160 82c102 0 157 -78 157 -177c0 -127 -99 -263 -239 -263c-124 0 -185 91 -185 214c0 150 80 289 164 358c65 55 141 86 215 95c23 4 42 4 56 4zM228 56c86 0 147 99 147 191 +c0 76 -38 116 -103 116c-51 0 -104 -34 -137 -89c-6 -9 -11 -21 -12 -31c-2 -15 -4 -32 -4 -52c0 -78 37 -135 109 -135z" /> + <glyph glyph-name="seven.fitted" unicode="&#xf63f;" horiz-adv-x="409" +d="M91 650h389l-11 -58c-125 -197 -250 -394 -377 -592h-92c126 193 251 385 375 576l-1 3h-297z" /> + <glyph glyph-name="eight.fitted" unicode="&#xf640;" horiz-adv-x="490" +d="M314 661c95 0 164 -57 164 -147c0 -77 -52 -134 -126 -169l-1 -3c67 -36 96 -95 96 -154c0 -128 -115 -199 -228 -199c-122 0 -195 69 -195 161c0 100 72 165 151 196l1 3c-52 37 -71 81 -71 128c0 105 94 184 209 184zM225 52c76 0 136 52 136 129 +c0 64 -37 105 -115 132c-67 -18 -136 -68 -136 -153c0 -56 37 -108 115 -108zM303 598h-2c-66 0 -116 -54 -116 -115c0 -51 31 -87 95 -110c64 21 116 69 116 131c0 44 -22 94 -93 94z" /> + <glyph glyph-name="nine.fitted" unicode="&#xf641;" horiz-adv-x="492" +d="M55 -10l10 71c17 -1 38 1 62 4c45 7 94 28 138 64c48 38 91 95 119 172h-3c-40 -46 -97 -70 -148 -70c-107 0 -158 83 -158 168c0 133 106 262 241 262c123 0 175 -94 175 -205c0 -162 -92 -309 -168 -374c-57 -48 -128 -78 -195 -87c-28 -4 -52 -6 -73 -5zM306 594 +c-80 0 -146 -91 -146 -185c0 -65 33 -113 98 -113c53 0 100 30 129 75c6 8 11 17 13 28c4 17 7 43 7 67c0 74 -28 128 -101 128z" /> + <glyph glyph-name="zero.slashfitted" unicode="&#xe008;" horiz-adv-x="492" +d="M130 165l261 378c-11 28 -34 51 -73 51c-110 0 -190 -202 -193 -372c0 -18 1 -38 5 -57zM403 479l-260 -375c12 -28 35 -48 72 -48c121 0 187 237 191 378c0 13 -1 29 -3 45zM530 648l-61 -80c14 -33 19 -73 19 -111c0 -213 -100 -468 -281 -468c-52 0 -89 18 -115 49 +l-45 -62l-37 32l55 73c-15 36 -22 82 -22 131c0 217 113 449 284 449c54 0 91 -19 116 -50l48 67z" /> + <glyph glyph-name="zero.taboldstyle" unicode="&#xf643;" horiz-adv-x="512" +d="M217 -11c-104 0 -181 78 -181 199c0 146 100 308 262 308c101 0 182 -80 182 -199c0 -149 -99 -308 -263 -308zM230 56c106 0 166 135 166 238c0 78 -40 135 -109 135c-109 0 -167 -137 -167 -238c0 -80 39 -135 110 -135z" /> + <glyph glyph-name="one.taboldstyle" unicode="&#xf644;" horiz-adv-x="512" +d="M395 486l-92 -486h-80l78 410h-2l-192 -71l-2 66l220 81h70z" /> + <glyph glyph-name="two.taboldstyle" unicode="&#xf645;" horiz-adv-x="512" +d="M428 69l-12 -69h-392l9 48l102 67c142 96 208 160 208 227c0 59 -39 87 -91 87c-48 0 -96 -28 -121 -44l-22 51c38 30 98 62 172 62c81 0 149 -50 149 -143c0 -86 -65 -154 -201 -248l-58 -40v-2c24 2 55 4 77 4h180z" /> + <glyph glyph-name="three.taboldstyle" unicode="&#xf646;" horiz-adv-x="512" +d="M27 -90l20 63c24 -10 68 -19 106 -19c100 0 176 49 176 125c0 65 -61 97 -128 97c-23 0 -41 -1 -58 -2l12 63c6 0 13 1 19 1c72 5 174 44 174 122c0 44 -35 68 -87 68c-47 0 -87 -16 -114 -31l-17 54c35 24 93 45 155 45c81 0 148 -44 148 -124 +c-1 -81 -69 -132 -140 -153v-2c68 -13 122 -58 122 -134c0 -130 -132 -197 -256 -197c-56 0 -106 11 -132 24z" /> + <glyph glyph-name="four.taboldstyle" unicode="&#xf647;" horiz-adv-x="512" +d="M360 52l-32 -165h-76l31 165h-276l11 56l335 384h90l-70 -374h87l-13 -66h-87zM295 118l37 195c6 33 14 69 22 99h-3c-20 -31 -43 -63 -65 -89l-177 -201l1 -4h185z" /> + <glyph glyph-name="five.taboldstyle" unicode="&#xf648;" horiz-adv-x="512" +d="M33 -93l19 64c25 -10 64 -17 102 -17c96 0 175 51 175 137c0 28 -10 53 -29 71c-41 40 -129 45 -197 40l91 283h271l-24 -71h-198l-50 -151c66 2 136 -14 178 -56c28 -27 44 -64 44 -108c0 -131 -115 -213 -259 -213c-52 0 -101 11 -123 21z" /> + <glyph glyph-name="six.taboldstyle" unicode="&#xf649;" horiz-adv-x="512" +d="M239 56c74 0 143 75 143 167c0 70 -46 109 -102 109c-62 0 -102 -33 -125 -69c-16 -22 -23 -49 -23 -79c0 -77 42 -128 107 -128zM479 605l6 -64c-111 -11 -197 -49 -250 -102c-37 -37 -59 -73 -74 -113h2c31 34 83 67 153 67c80 0 151 -60 151 -161 +c0 -134 -104 -243 -237 -243c-99 0 -180 67 -180 205c0 75 33 193 120 279c70 69 171 124 309 132z" /> + <glyph glyph-name="seven.taboldstyle" unicode="&#xf64a;" horiz-adv-x="512" +d="M478 485l-10 -55c-61 -129 -234 -386 -363 -544l-80 20c105 120 282 371 350 505v2h-282l12 72h373z" /> + <glyph glyph-name="eight.taboldstyle" unicode="&#xf64b;" horiz-adv-x="512" +d="M309 607c101 0 171 -61 171 -143c0 -70 -52 -111 -125 -147v-2c64 -34 105 -83 105 -144c0 -114 -115 -182 -226 -182c-120 0 -198 64 -198 159c0 83 75 135 153 170v2c-50 27 -81 70 -81 121c0 97 94 166 201 166zM299 545c-60 0 -112 -36 -112 -93 +c0 -52 44 -84 105 -108c60 25 107 60 107 115c0 45 -32 86 -100 86zM239 52c74 0 134 49 134 111c0 57 -46 93 -120 125c-62 -24 -130 -67 -130 -135c0 -62 49 -101 116 -101z" /> + <glyph glyph-name="nine.taboldstyle" unicode="&#xf64c;" horiz-adv-x="512" +d="M237 153c49 0 99 31 128 71c13 17 23 48 23 80c0 84 -46 127 -109 127c-73 0 -139 -75 -139 -167c0 -71 42 -111 97 -111zM48 -113l-5 65c26 2 54 4 81 9c140 28 210 116 240 200l-3 1c-28 -35 -86 -69 -150 -69c-94 0 -156 66 -156 162c0 132 107 243 239 243 +c104 0 177 -81 177 -206c0 -182 -117 -363 -356 -400c-24 -3 -47 -5 -67 -5z" /> + <glyph glyph-name="dollar.taboldstyle" unicode="&#xf653;" horiz-adv-x="512" +d="M225 -81h-53l15 80c-52 2 -104 21 -133 42l33 59c22 -17 69 -37 120 -37c61 0 118 29 118 78c0 27 -16 53 -90 83c-84 33 -113 67 -113 116c0 82 78 134 162 142l17 86h54l-16 -84c46 -4 87 -20 110 -37l-31 -57c-25 17 -64 33 -107 33c-58 0 -103 -28 -103 -69 +c0 -31 17 -46 89 -75c78 -30 116 -71 116 -123c0 -91 -85 -145 -172 -155z" /> + <glyph glyph-name="cent.taboldstyle" unicode="&#xf654;" horiz-adv-x="512" +d="M367 132l6 -59c-23 -11 -67 -25 -109 -27l-14 -72h-53l14 74c-85 10 -145 69 -145 153c0 122 93 230 221 248l12 68h54l-13 -66c37 -2 77 -17 96 -28l-28 -58c-17 11 -52 24 -86 24c-104 0 -174 -83 -174 -174c0 -67 44 -106 117 -106c39 0 77 12 102 23z" /> + <glyph glyph-name="Euro.taboldstyle" unicode="&#xf64e;" horiz-adv-x="512" +d="M426 83l9 -62c-28 -17 -84 -32 -147 -32c-117 0 -197 77 -203 194h-57l10 49h49c2 17 5 34 9 51h-48l11 49h52c45 117 151 194 279 194c58 0 96 -14 120 -27l-26 -61c-22 11 -55 22 -95 22c-89 0 -161 -53 -196 -128h238l-10 -49h-245c-4 -18 -7 -33 -8 -51h243l-10 -49 +h-232c9 -80 62 -127 142 -127c42 0 92 14 115 27z" /> + <glyph glyph-name="florin.taboldstyle" unicode="&#xf64f;" horiz-adv-x="512" +d="M514 591l-24 -62c-14 6 -28 10 -47 10c-66 0 -101 -55 -122 -140l-12 -53h115l-8 -64h-123l-46 -187c-31 -128 -83 -214 -191 -214c-32 0 -60 8 -74 18l21 61c16 -8 33 -12 52 -12c46 0 85 36 115 158l42 176h-88l8 64h96l11 45c22 94 75 216 209 216c26 0 51 -7 66 -16z +" /> + <glyph glyph-name="sterling.taboldstyle" unicode="&#xf651;" horiz-adv-x="512" +d="M458 509l-25 -63c-14 8 -44 18 -78 18c-77 0 -125 -61 -124 -163c-1 -6 -1 -13 -1 -20h147l-9 -55h-137c0 -63 -20 -118 -73 -156v-2h273l-10 -68h-397l8 49c81 33 124 87 121 177h-87l9 55h75c0 6 1 11 1 18c3 131 78 234 212 234c44 0 78 -13 95 -24z" /> + <glyph glyph-name="yen.taboldstyle" unicode="&#xf652;" horiz-adv-x="512" +d="M247 0h-79l22 115h-145l9 49h146l11 60h-146l10 49h123l-97 242h86l52 -153c9 -31 16 -55 22 -80h2c16 25 36 53 56 82l114 151h89l-198 -242h121l-9 -49h-147l-11 -60h146l-9 -49h-146z" /> + <glyph glyph-name="numbersign.taboldstyle" unicode="&#xf650;" horiz-adv-x="512" +d="M200 232h91l45 147h-90zM128 0h-59l54 175h-82l10 57h91l46 147h-87l10 57h94l54 171h57l-53 -171h91l53 171h58l-53 -171h82l-10 -57h-90l-45 -147h86l-10 -57h-95l-53 -175h-59l54 175h-90z" /> + <glyph glyph-name="zero.superior" unicode="&#x2070;" horiz-adv-x="323" +d="M200 400c-77 0 -112 59 -112 139c0 136 75 263 184 263c79 0 111 -62 111 -127c0 -139 -71 -275 -183 -275zM209 452c68 0 106 139 106 216c0 33 -7 82 -51 82c-63 0 -108 -126 -108 -212c0 -39 9 -86 53 -86z" /> + <glyph glyph-name="one.superior" horiz-adv-x="228" +d="M203 406h-69l63 329h-2l-72 -32l-6 49l100 44h60z" /> + <glyph glyph-name="two.superior" horiz-adv-x="298" +d="M310 406h-263l7 40l73 58c93 74 156 128 156 187c0 27 -14 54 -60 54c-33 0 -66 -17 -85 -30l-16 44c32 24 76 42 122 42c71 0 112 -44 112 -101c0 -79 -80 -143 -165 -209l-36 -28v-2h166z" /> + <glyph glyph-name="three.superior" horiz-adv-x="291" +d="M137 722l-11 45c25 18 68 34 111 34c72 0 110 -40 110 -86c0 -47 -39 -81 -90 -97v-2c41 -10 71 -45 71 -89c-1 -76 -68 -126 -164 -126c-46 0 -89 13 -109 29l22 48c17 -12 50 -26 87 -26c59 0 93 35 93 75c0 46 -44 65 -91 65h-20l8 45h21c45 0 100 26 100 68 +c0 25 -15 45 -57 45c-29 0 -62 -14 -81 -28z" /> + <glyph glyph-name="four.superior" unicode="&#x2074;" horiz-adv-x="318" +d="M290 406h-65l20 104h-180l8 40l216 248h76l-46 -239h55l-10 -49h-54zM255 559l22 116c4 22 10 45 15 64h-2c-16 -23 -29 -44 -44 -62l-101 -116l-1 -2h111z" /> + <glyph glyph-name="five.superior" unicode="&#x2075;" horiz-adv-x="295" +d="M364 796l-12 -55h-142l-27 -85c9 1 16 1 23 1c18 0 46 -4 68 -15c39 -18 56 -54 56 -89c0 -98 -82 -153 -177 -153c-43 0 -79 12 -94 22l18 50c15 -9 45 -19 80 -19c55 0 101 38 101 88c0 37 -23 68 -97 68c-18 0 -32 -2 -49 -3l56 190h196z" /> + <glyph glyph-name="six.superior" unicode="&#x2076;" horiz-adv-x="320" +d="M370 801l-9 -53c-11 1 -27 0 -42 -3c-74 -13 -125 -60 -148 -124l1 -1c22 27 61 46 94 46c69 0 103 -49 103 -109c0 -81 -67 -157 -156 -157c-80 0 -126 56 -126 133c0 92 52 172 106 213c35 25 77 43 124 50c17 3 36 5 53 5zM218 450c46 0 83 49 83 103 +c0 41 -22 65 -61 65c-28 0 -57 -18 -75 -47c-4 -5 -7 -11 -8 -17c-3 -9 -3 -20 -3 -31c0 -42 22 -73 64 -73z" /> + <glyph glyph-name="seven.superior" unicode="&#x2077;" horiz-adv-x="282" +d="M123 796h254l-8 -43c-50 -78 -167 -254 -229 -347h-73c67 99 172 254 227 334l-1 2h-181z" /> + <glyph glyph-name="eight.superior" unicode="&#x2078;" horiz-adv-x="323" +d="M270 802c60 0 110 -32 110 -91c0 -45 -34 -78 -78 -98v-1c43 -22 62 -56 62 -90c0 -82 -80 -122 -152 -122c-80 0 -129 42 -129 98c0 57 44 96 94 114v2c-31 20 -46 46 -46 75c0 67 63 113 139 113zM218 447c42 0 76 28 76 69c0 36 -21 58 -66 72c-38 -9 -76 -34 -76 -81 +c0 -30 22 -60 66 -60zM259 755c-36 0 -63 -29 -63 -61c0 -27 16 -48 57 -61c34 10 63 34 63 69c0 24 -13 53 -57 53z" /> + <glyph glyph-name="nine.superior" unicode="&#x2079;" horiz-adv-x="315" +d="M90 400l8 54c11 -1 28 -1 45 1c27 3 54 14 81 34c29 20 54 52 70 92l-1 1c-24 -27 -60 -40 -90 -40c-66 0 -104 48 -104 105c0 82 71 156 156 156c81 0 120 -59 120 -131c0 -96 -55 -180 -104 -219c-38 -30 -86 -47 -132 -52c-17 -2 -35 -2 -49 -1zM248 752 +c-43 0 -81 -46 -81 -100c0 -34 20 -62 58 -62c30 0 55 16 72 39c4 5 7 11 8 18c2 9 4 22 4 34c0 40 -19 71 -61 71z" /> + <glyph glyph-name="period.superior" unicode="&#xf6e8;" horiz-adv-x="140" +d="M113 400c-22 0 -38 18 -38 41c0 26 18 48 46 48c24 0 40 -17 40 -42c0 -27 -19 -47 -48 -47z" /> + <glyph glyph-name="comma.superior" unicode="&#xf6e2;" horiz-adv-x="140" +d="M78 338l-48 -5c22 43 49 106 63 155l73 6c-24 -56 -62 -121 -88 -156z" /> + <glyph glyph-name="dollar.superior" unicode="&#xf6e4;" horiz-adv-x="286" +d="M190 355h-45l11 58c-33 1 -71 16 -89 31l22 49c21 -16 52 -29 91 -29c41 0 74 22 74 57c0 23 -13 43 -54 61c-51 24 -86 54 -86 99c0 58 49 103 116 109l12 57h45l-12 -57c33 -1 61 -12 74 -22l-22 -47c-13 7 -37 21 -77 21c-42 0 -66 -24 -66 -52c0 -23 16 -37 63 -59 +c49 -24 77 -55 77 -100c0 -69 -55 -110 -122 -118z" /> + <glyph glyph-name="cent.superior" unicode="&#xf6e0;" horiz-adv-x="283" +d="M226 397h-45l12 61c-34 5 -57 19 -73 41c-16 21 -24 48 -24 77c0 95 71 165 155 177l10 59h46l-11 -57c19 -1 45 -7 57 -15l-21 -49c-14 8 -31 14 -59 14c-55 0 -108 -50 -108 -122c0 -46 29 -76 76 -76c26 0 46 7 62 14l6 -48c-16 -8 -45 -16 -71 -16z" /> + <glyph glyph-name="hyphen.superior" unicode="&#xf6e6;" horiz-adv-x="192" +d="M95 612h152l-9 -47h-152z" /> + <glyph glyph-name="parenleft.superior" unicode="&#x207d;" horiz-adv-x="181" +d="M231 832h51c-62 -73 -123 -185 -123 -321c0 -54 8 -106 32 -164h-47c-24 48 -38 102 -38 164c0 143 63 254 125 321z" /> + <glyph glyph-name="parenright.superior" unicode="&#x207e;" horiz-adv-x="181" +d="M92 347h-50c61 74 123 185 123 322c0 54 -9 105 -32 163h47c24 -47 39 -101 39 -163c0 -142 -64 -253 -127 -322z" /> + <glyph glyph-name="zero.inferior" unicode="&#x2080;" horiz-adv-x="323" +d="M94 -150c-77 0 -112 59 -112 139c0 136 75 263 184 263c79 0 111 -62 111 -127c0 -139 -71 -275 -183 -275zM103 -98c68 0 106 139 106 216c0 33 -7 82 -51 82c-63 0 -108 -126 -108 -212c0 -39 9 -86 53 -86z" /> + <glyph glyph-name="one.inferior" unicode="&#x2081;" horiz-adv-x="228" +d="M97 -144h-69l63 329h-2l-72 -33l-6 50l100 44h60z" /> + <glyph glyph-name="two.inferior" unicode="&#x2082;" horiz-adv-x="298" +d="M204 -144h-263l7 40l73 58c93 74 156 128 156 187c0 27 -14 54 -60 54c-33 0 -66 -17 -85 -30l-16 44c32 24 76 42 122 42c71 0 112 -44 112 -101c0 -79 -80 -143 -165 -209l-36 -28v-2h166z" /> + <glyph glyph-name="three.inferior" unicode="&#x2083;" horiz-adv-x="291" +d="M31 172l-11 45c25 18 68 34 111 34c72 0 110 -40 110 -86c0 -47 -39 -81 -90 -97v-2c41 -10 71 -45 71 -89c-1 -76 -68 -126 -164 -126c-46 0 -89 13 -109 29l22 48c17 -12 50 -26 87 -26c59 0 93 35 93 75c0 46 -44 65 -91 65h-20l8 45h21c45 0 100 26 100 68 +c0 25 -15 45 -57 45c-29 0 -62 -14 -81 -28z" /> + <glyph glyph-name="four.inferior" unicode="&#x2084;" horiz-adv-x="318" +d="M184 -144h-65l20 104h-180l8 40l216 248h76l-46 -239h55l-10 -49h-54zM149 9l22 116c4 22 10 45 15 63l-2 1c-16 -23 -29 -44 -44 -62l-101 -116l-1 -2h111z" /> + <glyph glyph-name="five.inferior" unicode="&#x2085;" horiz-adv-x="295" +d="M258 246l-12 -55h-142l-27 -85c9 1 16 1 23 1c18 0 46 -4 68 -15c39 -18 56 -54 56 -89c0 -98 -82 -153 -177 -153c-43 0 -79 12 -94 22l18 50c15 -9 45 -19 80 -19c55 0 101 38 101 88c0 37 -23 68 -97 68c-18 0 -32 -2 -49 -3l56 190h196z" /> + <glyph glyph-name="six.inferior" unicode="&#x2086;" horiz-adv-x="320" +d="M264 251l-9 -53c-11 1 -27 0 -42 -3c-74 -13 -125 -60 -148 -124l1 -1c22 27 61 46 94 46c69 0 103 -49 103 -109c0 -81 -67 -157 -156 -157c-80 0 -126 56 -126 133c0 92 52 172 106 213c35 25 77 43 124 50c17 3 36 5 53 5zM112 -100c46 0 83 49 83 103 +c0 41 -22 65 -61 65c-28 0 -57 -18 -75 -47c-4 -5 -7 -11 -8 -17c-3 -9 -3 -20 -3 -31c0 -42 22 -73 64 -73z" /> + <glyph glyph-name="seven.inferior" unicode="&#x2087;" horiz-adv-x="282" +d="M17 246h254l-8 -44c-50 -78 -167 -253 -229 -346h-73c67 99 172 254 227 334l-1 2h-181z" /> + <glyph glyph-name="eight.inferior" unicode="&#x2088;" horiz-adv-x="323" +d="M164 252c60 0 110 -32 110 -91c0 -45 -34 -78 -78 -98v-1c43 -22 62 -56 62 -90c0 -82 -80 -122 -152 -122c-80 0 -129 42 -129 98c0 57 44 96 94 114v2c-31 20 -46 46 -46 75c0 67 63 113 139 113zM112 -103c42 0 76 28 76 69c0 36 -21 58 -66 72 +c-38 -9 -76 -34 -76 -81c0 -30 22 -60 66 -60zM153 205c-36 0 -63 -29 -63 -61c0 -27 16 -48 57 -61c34 10 63 34 63 69c0 24 -13 53 -57 53z" /> + <glyph glyph-name="nine.inferior" unicode="&#x2089;" horiz-adv-x="315" +d="M-16 -150l8 54c11 -1 28 -1 45 1c27 3 54 14 81 34c29 20 54 52 70 92l-1 1c-24 -27 -60 -40 -90 -40c-66 0 -104 48 -104 105c0 82 71 156 156 156c81 0 120 -59 120 -131c0 -96 -55 -180 -104 -219c-38 -30 -86 -47 -132 -52c-17 -2 -35 -2 -49 -1zM142 202 +c-43 0 -81 -46 -81 -100c0 -35 20 -62 58 -62c30 0 55 16 72 39c4 5 7 11 8 18c2 9 4 22 4 34c0 40 -19 71 -61 71z" /> + <glyph glyph-name="period.inferior" unicode="&#xf6e7;" horiz-adv-x="140" +d="M7 -150c-22 0 -38 18 -38 41c0 26 18 48 46 48c24 0 40 -17 40 -42c0 -27 -19 -47 -48 -47z" /> + <glyph glyph-name="comma.inferior" unicode="&#xf6e1;" horiz-adv-x="140" +d="M-28 -212l-48 -5c22 43 49 106 63 155l73 6c-24 -56 -62 -121 -88 -156z" /> + <glyph glyph-name="dollar.inferior" unicode="&#xf6e3;" horiz-adv-x="286" +d="M84 -196h-45l11 58c-33 1 -71 17 -89 31l22 49c21 -16 52 -29 91 -29c41 0 74 22 74 58c0 23 -13 42 -54 61c-51 24 -86 53 -86 99c0 58 49 103 116 109l12 57h45l-12 -57c33 -1 61 -12 74 -22l-22 -47c-13 7 -37 21 -77 21c-42 0 -66 -24 -66 -52c0 -23 16 -37 63 -59 +c49 -24 77 -55 77 -100c0 -69 -55 -110 -122 -118z" /> + <glyph glyph-name="cent.inferior" unicode="&#xf6df;" horiz-adv-x="283" +d="M120 -153h-45l12 61c-34 5 -57 19 -73 41c-16 21 -24 48 -24 77c0 95 71 165 155 177l10 59h46l-11 -58c19 0 45 -7 57 -15l-21 -48c-14 7 -31 13 -59 13c-55 0 -108 -50 -108 -121c0 -46 29 -76 76 -76c26 0 46 7 62 14l6 -48c-16 -8 -45 -16 -71 -16z" /> + <glyph glyph-name="hyphen.inferior" unicode="&#xf6e5;" horiz-adv-x="192" +d="M-11 62h152l-9 -47h-152z" /> + <glyph glyph-name="parenleft.inferior" unicode="&#x208d;" horiz-adv-x="181" +d="M125 282h51c-62 -73 -123 -185 -123 -321c0 -54 8 -106 32 -164h-47c-24 48 -38 102 -38 164c0 143 63 254 125 321z" /> + <glyph glyph-name="parenright.inferior" unicode="&#x208e;" horiz-adv-x="181" +d="M-14 -203h-50c61 74 123 185 123 322c0 54 -9 105 -32 163h47c24 -47 39 -101 39 -163c0 -142 -64 -253 -127 -322z" /> + <glyph glyph-name="zero.numerator" unicode="&#xf661;" horiz-adv-x="323" +d="M172 260c-77 0 -112 59 -112 139c0 136 75 263 184 263c79 0 111 -62 111 -127c0 -139 -71 -275 -183 -275zM181 312c68 0 106 139 106 216c0 33 -7 82 -51 82c-63 0 -108 -126 -108 -212c0 -39 9 -86 53 -86z" /> + <glyph glyph-name="one.numerator" unicode="&#xf662;" horiz-adv-x="228" +d="M175 266h-69l63 329h-2l-72 -33l-6 50l100 44h60z" /> + <glyph glyph-name="two.numerator" unicode="&#xf663;" horiz-adv-x="298" +d="M282 266h-263l7 40l73 58c93 74 156 128 156 187c0 27 -14 54 -60 54c-33 0 -66 -17 -85 -30l-16 44c32 24 76 42 122 42c71 0 112 -44 112 -101c0 -79 -80 -143 -165 -209l-36 -28v-2h166z" /> + <glyph glyph-name="three.numerator" unicode="&#xf664;" horiz-adv-x="291" +d="M109 582l-11 45c25 18 68 34 111 34c72 0 110 -40 110 -86c0 -47 -39 -81 -90 -97v-2c41 -10 71 -45 71 -89c-1 -76 -68 -126 -164 -126c-46 0 -89 13 -109 29l22 48c17 -12 50 -26 87 -26c59 0 93 35 93 75c0 46 -44 65 -91 65h-20l8 45h21c45 0 100 26 100 68 +c0 25 -15 45 -57 45c-29 0 -62 -14 -81 -28z" /> + <glyph glyph-name="four.numerator" unicode="&#xf665;" horiz-adv-x="318" +d="M262 266h-65l20 104h-180l8 40l216 248h76l-46 -239h55l-10 -49h-54zM227 419l22 116c4 22 10 45 15 63l-2 1c-16 -23 -29 -44 -44 -62l-101 -116l-1 -2h111z" /> + <glyph glyph-name="five.numerator" unicode="&#xf666;" horiz-adv-x="295" +d="M336 656l-12 -55h-142l-27 -85c9 1 16 1 23 1c18 0 46 -4 68 -15c39 -18 56 -54 56 -89c0 -98 -82 -153 -177 -153c-43 0 -79 12 -94 22l18 50c15 -9 45 -19 80 -19c55 0 101 38 101 88c0 37 -23 68 -97 68c-18 0 -32 -2 -49 -3l56 190h196z" /> + <glyph glyph-name="six.numerator" unicode="&#xf667;" horiz-adv-x="320" +d="M342 661l-9 -53c-11 1 -27 0 -42 -3c-74 -13 -125 -60 -148 -124l1 -1c22 27 61 46 94 46c69 0 103 -49 103 -109c0 -81 -67 -157 -156 -157c-80 0 -126 56 -126 133c0 92 52 172 106 213c35 25 77 43 124 50c17 3 36 5 53 5zM190 310c46 0 83 49 83 103 +c0 41 -22 65 -61 65c-28 0 -57 -18 -75 -47c-4 -5 -7 -11 -8 -17c-3 -9 -3 -20 -3 -31c0 -42 22 -73 64 -73z" /> + <glyph glyph-name="seven.numerator" unicode="&#xf668;" horiz-adv-x="282" +d="M95 656h254l-8 -44c-50 -78 -167 -253 -229 -346h-73c67 99 172 254 227 334l-1 2h-181z" /> + <glyph glyph-name="eight.numerator" unicode="&#xf669;" horiz-adv-x="323" +d="M242 662c60 0 110 -32 110 -92c0 -44 -34 -77 -78 -97v-1c43 -22 62 -56 62 -90c0 -82 -80 -122 -152 -122c-80 0 -129 42 -129 98c0 57 44 96 94 114v2c-31 20 -46 46 -46 75c0 67 63 113 139 113zM190 307c42 0 76 28 76 69c0 36 -21 58 -66 72c-38 -9 -76 -34 -76 -81 +c0 -30 22 -60 66 -60zM231 615c-36 0 -63 -29 -63 -61c0 -27 16 -48 57 -61c34 10 63 34 63 69c0 24 -13 53 -57 53z" /> + <glyph glyph-name="nine.numerator" unicode="&#xf66a;" horiz-adv-x="315" +d="M62 260l8 54c11 -1 28 -1 45 1c27 3 54 14 81 34c29 20 54 52 70 92l-1 1c-24 -27 -60 -40 -90 -40c-66 0 -104 48 -104 105c0 82 71 156 156 156c81 0 120 -59 120 -131c0 -96 -55 -180 -104 -219c-38 -30 -86 -47 -132 -52c-17 -2 -35 -2 -49 -1zM220 612 +c-43 0 -81 -46 -81 -100c0 -35 20 -62 58 -62c30 0 55 16 72 39c4 5 7 11 8 18c2 9 4 22 4 34c0 40 -19 71 -61 71z" /> + <glyph glyph-name="period.numerator" unicode="&#xf66c;" horiz-adv-x="140" +d="M85 260c-22 0 -38 18 -38 41c0 26 18 48 46 48c24 0 40 -17 40 -42c0 -27 -19 -47 -48 -47z" /> + <glyph glyph-name="comma.numerator" unicode="&#xf66b;" horiz-adv-x="140" +d="M50 198l-48 -5c22 43 49 106 63 155l73 6c-24 -56 -62 -121 -88 -156z" /> + <glyph glyph-name="dollar.numerator" unicode="&#xf62f;" horiz-adv-x="286" +d="M162 215h-45l11 58c-33 1 -71 16 -89 31l22 49c21 -16 52 -29 91 -29c41 0 74 22 74 57c0 23 -13 43 -54 61c-51 24 -86 54 -86 99c0 58 49 103 116 109l12 57h45l-12 -57c33 -1 61 -12 74 -21l-22 -48c-13 7 -37 21 -77 21c-42 0 -66 -24 -66 -52c0 -23 16 -37 63 -60 +c49 -23 77 -54 77 -99c0 -69 -55 -110 -122 -118z" /> + <glyph glyph-name="cent.numerator" unicode="&#xf62e;" horiz-adv-x="283" +d="M198 257h-45l12 61c-34 5 -57 19 -73 41c-16 21 -24 48 -24 77c0 95 71 165 155 177l10 59h46l-11 -58c19 0 45 -7 57 -15l-21 -48c-14 7 -31 13 -59 13c-55 0 -108 -50 -108 -121c0 -46 29 -76 76 -76c26 0 46 7 62 14l6 -48c-16 -8 -45 -16 -71 -16z" /> + <glyph glyph-name="hyphen.numerator" unicode="&#xf630;" horiz-adv-x="192" +d="M67 472h152l-9 -47h-152z" /> + <glyph glyph-name="parenleft.numerator" unicode="&#xf631;" horiz-adv-x="181" +d="M203 692h51c-62 -73 -123 -185 -123 -321c0 -54 8 -106 32 -164h-47c-24 48 -38 102 -38 164c0 143 63 254 125 321z" /> + <glyph glyph-name="parenright.numerator" unicode="&#xf632;" horiz-adv-x="181" +d="M64 207h-50c61 75 123 186 123 322c0 54 -9 105 -32 163h47c24 -47 39 -101 39 -163c0 -142 -64 -253 -127 -322z" /> + <glyph glyph-name="zero.denominator" unicode="&#xf655;" horiz-adv-x="323" +d="M119 -6c-77 0 -112 59 -112 139c0 136 75 263 184 263c79 0 111 -62 111 -127c0 -139 -71 -275 -183 -275zM128 46c68 0 106 139 106 216c0 33 -7 82 -51 82c-63 0 -108 -126 -108 -212c0 -39 9 -86 53 -86z" /> + <glyph glyph-name="one.denominator" unicode="&#xf656;" horiz-adv-x="228" +d="M122 0h-69l63 329h-2l-72 -32l-6 49l100 44h60z" /> + <glyph glyph-name="two.denominator" unicode="&#xf657;" horiz-adv-x="298" +d="M230 0h-263l7 39l73 59c93 74 156 128 156 187c0 27 -14 54 -60 54c-33 0 -66 -17 -85 -30l-16 44c32 24 76 42 122 42c71 0 112 -44 112 -101c0 -79 -80 -143 -165 -209l-36 -28v-2h166z" /> + <glyph glyph-name="three.denominator" unicode="&#xf658;" horiz-adv-x="291" +d="M56 316l-11 45c25 18 68 34 111 34c72 0 110 -40 110 -86c0 -47 -39 -81 -90 -97v-2c41 -10 71 -45 71 -89c-1 -76 -68 -126 -164 -126c-46 0 -89 13 -109 29l22 48c17 -12 50 -26 87 -26c59 0 93 35 93 75c0 46 -44 65 -91 65h-20l8 45h21c45 0 100 26 100 68 +c0 25 -15 45 -57 45c-29 0 -62 -14 -81 -28z" /> + <glyph glyph-name="four.denominator" unicode="&#xf659;" horiz-adv-x="318" +d="M210 0h-65l20 104h-180l8 40l216 248h76l-46 -239h55l-10 -49h-54zM175 153l22 116c4 22 10 45 15 64h-2c-16 -23 -29 -44 -44 -62l-101 -116l-1 -2h111z" /> + <glyph glyph-name="five.denominator" unicode="&#xf65a;" horiz-adv-x="295" +d="M283 390l-12 -55h-142l-27 -85c9 1 16 1 23 1c18 0 46 -4 68 -15c39 -18 56 -54 56 -89c0 -98 -82 -153 -177 -153c-43 0 -79 12 -94 22l18 50c15 -9 45 -19 80 -19c55 0 101 38 101 88c0 37 -23 68 -97 68c-18 0 -32 -2 -49 -3l56 190h196z" /> + <glyph glyph-name="six.denominator" unicode="&#xf65b;" horiz-adv-x="320" +d="M289 395l-9 -53c-11 1 -27 0 -42 -3c-74 -13 -125 -60 -148 -124l1 -1c22 27 61 46 94 46c69 0 103 -49 103 -109c0 -81 -67 -157 -156 -157c-80 0 -126 56 -126 133c0 92 52 172 106 213c35 25 77 43 124 50c17 3 36 5 53 5zM137 44c46 0 83 49 83 103 +c0 41 -22 65 -61 65c-28 0 -57 -18 -75 -47c-4 -5 -7 -11 -8 -17c-3 -9 -3 -20 -3 -31c0 -42 22 -73 64 -73z" /> + <glyph glyph-name="seven.denominator" unicode="&#xf65c;" horiz-adv-x="282" +d="M43 390h254l-8 -43c-50 -78 -167 -254 -229 -347h-73c67 99 172 254 227 334l-1 2h-181z" /> + <glyph glyph-name="eight.denominator" unicode="&#xf65d;" horiz-adv-x="323" +d="M189 396c60 0 110 -32 110 -91c0 -45 -34 -78 -78 -98v-1c43 -22 62 -56 62 -90c0 -82 -80 -122 -152 -122c-80 0 -129 42 -129 98c0 57 44 96 94 114v2c-31 20 -46 46 -46 75c0 67 63 113 139 113zM137 41c42 0 76 28 76 69c0 36 -21 58 -66 72c-38 -9 -76 -34 -76 -81 +c0 -30 22 -60 66 -60zM178 349c-36 0 -63 -29 -63 -61c0 -27 16 -48 57 -61c34 10 63 34 63 69c0 24 -13 53 -57 53z" /> + <glyph glyph-name="nine.denominator" unicode="&#xf65e;" horiz-adv-x="315" +d="M9 -6l8 54c11 -1 28 -1 45 1c27 3 54 14 81 34c29 20 54 52 70 92l-1 1c-24 -27 -60 -40 -90 -40c-66 0 -104 48 -104 105c0 82 71 156 156 156c81 0 120 -59 120 -131c0 -96 -55 -180 -104 -219c-38 -30 -86 -47 -132 -52c-17 -2 -35 -2 -49 -1zM167 346 +c-43 0 -81 -46 -81 -100c0 -34 20 -62 58 -62c30 0 55 16 72 39c4 5 7 11 8 18c2 9 4 22 4 34c0 40 -19 71 -61 71z" /> + <glyph glyph-name="period.denominator" unicode="&#xf660;" horiz-adv-x="140" +d="M32 -6c-22 0 -38 18 -38 41c0 26 18 48 46 48c24 0 40 -17 40 -42c0 -27 -19 -47 -48 -47z" /> + <glyph glyph-name="comma.denominator" unicode="&#xf65f;" horiz-adv-x="140" +d="M-2 -68l-48 -5c22 43 49 106 63 155l73 6c-24 -56 -62 -121 -88 -156z" /> + <glyph glyph-name="dollar.denominator" unicode="&#xf62a;" horiz-adv-x="286" +d="M109 -51h-45l11 58c-33 1 -71 16 -89 31l22 49c21 -16 52 -29 91 -29c41 0 74 22 74 57c0 23 -13 43 -54 61c-51 24 -86 54 -86 99c0 58 49 103 116 109l12 57h45l-12 -57c33 -1 61 -12 74 -22l-22 -47c-13 7 -37 21 -77 21c-42 0 -66 -24 -66 -52c0 -23 16 -37 63 -59 +c49 -24 77 -55 77 -100c0 -69 -55 -110 -122 -118z" /> + <glyph glyph-name="cent.denominator" unicode="&#xf629;" horiz-adv-x="283" +d="M145 -9h-45l12 61c-34 5 -57 19 -73 41c-16 21 -24 48 -24 77c0 95 71 165 155 177l10 59h46l-11 -57c19 -1 45 -7 57 -15l-21 -49c-14 8 -31 14 -59 14c-55 0 -108 -50 -108 -122c0 -46 29 -76 76 -76c26 0 46 7 62 14l6 -48c-16 -8 -45 -16 -71 -16z" /> + <glyph glyph-name="hyphen.denominator" unicode="&#xf62b;" horiz-adv-x="192" +d="M14 206h152l-9 -47h-152z" /> + <glyph glyph-name="parenleft.denominator" unicode="&#xf62c;" horiz-adv-x="181" +d="M151 426h51c-62 -73 -123 -185 -123 -321c0 -54 8 -106 32 -164h-47c-24 48 -38 102 -38 164c0 143 63 254 125 321z" /> + <glyph glyph-name="parenright.denominator" unicode="&#xf62d;" horiz-adv-x="181" +d="M11 -59h-50c61 74 123 185 123 322c0 54 -9 105 -32 163h47c24 -47 39 -101 39 -163c0 -142 -64 -253 -127 -322z" /> + <glyph glyph-name="at.cap" unicode="&#xf633;" horiz-adv-x="720" +d="M457 348l21 112c-10 4 -27 8 -50 8c-88 0 -160 -83 -160 -180c0 -44 23 -76 67 -76c58 0 111 74 122 136zM516 72l16 -44c-54 -30 -111 -40 -174 -40c-172 0 -305 120 -305 313c0 206 142 384 364 384c174 0 291 -122 291 -289c0 -150 -84 -238 -178 -238 +c-40 0 -77 26 -75 88h-3c-35 -59 -81 -88 -142 -88c-57 0 -107 47 -107 126c0 124 98 237 237 237c43 0 81 -9 107 -21l-34 -181c-15 -76 -3 -111 30 -112c52 -2 109 67 109 182c0 146 -88 250 -244 250c-163 0 -299 -129 -299 -332c0 -167 105 -271 260 -271 +c51 0 107 13 147 36z" /> + <glyph glyph-name="emdash.cap" unicode="&#xf6bc;" horiz-adv-x="1000" +d="M55 359h940l-12 -60h-940z" /> + <glyph glyph-name="endash.cap" unicode="&#xf6bb;" horiz-adv-x="500" +d="M55 359h440l-12 -60h-440z" /> + <glyph glyph-name="exclamdown.cap" unicode="&#xf6b4;" horiz-adv-x="236" +d="M119 0h-94l106 477h66zM196 683c32 0 54 -26 54 -58c0 -37 -26 -67 -62 -67c-34 0 -56 26 -56 59c0 37 26 66 64 66z" /> + <glyph glyph-name="guillemotleft.cap" unicode="&#xf6b6;" horiz-adv-x="409" +d="M267 511l-151 -186l101 -182h-66l-104 184l148 184h72zM431 511l-152 -186l102 -182h-67l-103 184l147 184h73z" /> + <glyph glyph-name="guillemotright.cap" unicode="&#xf6b7;" horiz-adv-x="408" +d="M173 330l-102 181h67l103 -184l-147 -184h-73zM336 330l-101 181h66l104 -184l-148 -184h-72z" /> + <glyph glyph-name="guilsinglleft.cap" unicode="&#xf6b8;" horiz-adv-x="245" +d="M267 511l-152 -186l102 -182h-66l-104 184l147 184h73z" /> + <glyph glyph-name="guilsinglright.cap" unicode="&#xf6b9;" horiz-adv-x="245" +d="M174 330l-102 181h66l104 -184l-148 -184h-72z" /> + <glyph glyph-name="hyphen.cap" unicode="&#xf6ba;" horiz-adv-x="307" +d="M62 377h239l-12 -64h-239z" /> + <glyph glyph-name="questiondown.cap" unicode="&#xf6b5;" horiz-adv-x="384" +d="M227 481h80c0 -9 -1 -18 -2 -27c-5 -54 -35 -115 -98 -182c-46 -46 -86 -93 -86 -145c0 -36 18 -71 76 -71c37 0 71 9 100 27l16 -61c-37 -21 -85 -36 -135 -36c-101 0 -143 68 -143 130c0 70 46 131 108 193c49 50 73 93 80 143zM298 683c32 0 54 -26 54 -58 +c0 -37 -26 -67 -63 -67c-33 0 -55 26 -55 59c0 37 26 66 64 66z" /> + <glyph glyph-name="braceleft.cap" unicode="&#xf6b2;" horiz-adv-x="284" +d="M42 302l9 51c68 0 85 39 92 74c10 55 6 111 17 167c17 92 77 131 159 131h23l-10 -54h-18c-52 0 -79 -32 -90 -86c-9 -48 -4 -96 -13 -148c-11 -66 -44 -98 -91 -109v-2c38 -10 54 -39 54 -71c0 -34 -12 -74 -25 -111c-14 -37 -26 -73 -26 -99c0 -36 17 -62 60 -63h18 +l-11 -54h-18c-70 0 -117 34 -117 102c0 38 14 79 27 116c13 38 26 74 26 103c0 18 -7 54 -66 53z" /> + <glyph glyph-name="braceright.cap" unicode="&#xf6b3;" horiz-adv-x="284" +d="M273 351l-9 -51c-68 0 -85 -39 -92 -75c-10 -54 -6 -110 -17 -166c-17 -92 -77 -131 -159 -131h-23l10 54h18c52 0 79 32 90 86c9 48 4 96 13 148c11 65 44 98 91 109v2c-38 11 -54 40 -54 72s14 71 26 109c13 38 25 74 25 100c0 36 -17 62 -60 63h-18l11 54h18 +c70 0 117 -34 117 -102c0 -40 -13 -80 -26 -118c-14 -37 -27 -72 -27 -101c0 -19 7 -54 66 -53z" /> + <glyph glyph-name="bracketleft.cap" unicode="&#xf6b0;" horiz-adv-x="284" +d="M204 -72h-175l152 797h175l-10 -54h-108l-131 -689h107z" /> + <glyph glyph-name="bracketright.cap" unicode="&#xf6b1;" horiz-adv-x="284" +d="M119 725h175l-152 -797h-175l10 54h108l131 689h-107z" /> + <glyph glyph-name="parenleft.cap" unicode="&#xf6ae;" horiz-adv-x="284" +d="M288 731h71c-105 -119 -210 -304 -210 -534c0 -91 14 -178 55 -276h-63c-41 82 -64 171 -64 278c0 238 112 424 211 532z" /> + <glyph glyph-name="parenright.cap" unicode="&#xf6af;" horiz-adv-x="284" +d="M34 -79h-71c105 120 210 305 210 536c0 90 -14 178 -55 274h64c41 -81 63 -170 63 -276c0 -239 -112 -425 -211 -534z" /> + <glyph glyph-name="periodcentered.cap" unicode="&#xf6bd;" horiz-adv-x="211" +d="M119 273c-33 0 -55 26 -55 59c0 37 26 67 63 67c34 0 56 -26 56 -60c0 -37 -26 -66 -64 -66z" /> + <glyph glyph-name="lessequal" unicode="&#x2264;" horiz-adv-x="596" +d="M530 99l-464 193v59l464 192v-66l-382 -155v-2l382 -154v-67zM530 0h-462v58h462v-58z" /> + <glyph glyph-name="greaterequal" unicode="&#x2265;" horiz-adv-x="596" +d="M530 292l-464 -193v67l382 154v2l-382 155v66l464 -192v-59zM528 0h-462v58h462v-58z" /> + <glyph glyph-name="approxequal" unicode="&#x2248;" horiz-adv-x="596" +d="M533 416l36 -41c-31 -40 -89 -78 -151 -78c-59 0 -96 22 -129 37c-30 12 -64 34 -114 34c-46 0 -90 -30 -117 -59l-35 42c32 38 90 77 153 77c58 0 95 -23 127 -37c30 -12 64 -34 114 -34c46 0 91 33 116 59zM538 218l36 -40c-32 -41 -91 -79 -153 -79 +c-57 0 -95 23 -127 36c-30 12 -64 34 -115 34c-45 0 -90 -30 -117 -59l-35 43c32 38 91 76 153 76c58 0 95 -23 128 -36c30 -12 64 -34 113 -34c47 0 91 30 117 59z" /> + <glyph glyph-name="notequal" unicode="&#x2260;" horiz-adv-x="596" +d="M556 140h-310l-76 -122h-65l79 122h-144v60h182l89 138h-271v60h309l76 122h65l-79 -122h145v-60h-183l-88 -138h271v-60z" /> + <glyph glyph-name="infinity" unicode="&#x221e;" horiz-adv-x="728" +d="M541 117c-74 0 -129 58 -177 105c-51 -50 -104 -105 -186 -105c-84 0 -143 61 -143 146c0 80 64 148 151 148c75 0 130 -58 178 -106c51 51 104 106 186 106c84 0 143 -61 143 -148c0 -78 -64 -146 -152 -146zM543 176c49 0 87 40 87 87c0 51 -36 89 -85 89 +c-57 0 -103 -50 -141 -89c39 -35 80 -87 139 -87zM184 176c56 0 102 48 140 87c-39 36 -80 89 -138 89c-50 0 -88 -41 -88 -89c0 -50 36 -87 86 -87z" /> + <glyph glyph-name="lozenge" unicode="&#x25ca;" horiz-adv-x="520" +d="M490 324l-246 -355h-69l-117 355l246 356h68zM414 323l-83 267c-2 6 -4 15 -6 23h-2c-3 -8 -9 -17 -14 -23l-175 -264l82 -267c3 -7 5 -15 6 -23h2c4 8 10 16 15 23z" /> + <glyph glyph-name="integral" unicode="&#x222b;" horiz-adv-x="291" +d="M372 787l-19 -55c-8 2 -19 4 -29 4c-77 0 -95 -115 -106 -183c-22 -142 -39 -316 -63 -467c-17 -103 -54 -236 -174 -236c-22 0 -38 5 -50 10l17 57c8 -3 21 -6 34 -6c76 0 95 120 104 175c24 152 41 330 64 473c17 107 57 236 178 236c18 0 34 -3 44 -8z" /> + <glyph glyph-name="partialdiff" unicode="&#x2202;" horiz-adv-x="518" +d="M133 617l-20 57c34 24 93 53 171 53c126 0 227 -102 227 -291c0 -215 -110 -447 -306 -447c-115 0 -172 87 -172 186c0 145 106 267 248 267c71 0 125 -47 142 -85h1c4 26 7 56 7 85c0 145 -77 214 -160 214c-62 0 -111 -21 -138 -39zM218 57c94 0 162 105 186 222 +c-14 48 -63 95 -124 95c-93 0 -162 -89 -162 -197c0 -74 38 -120 100 -120z" /> + <glyph glyph-name="product" unicode="&#x220f;" horiz-adv-x="617" +d="M647 579h-76l-134 -669h-80l135 669h-244l-134 -669h-80l135 669h-78l14 71h557z" /> + <glyph glyph-name="radical" unicode="&#x221a;" horiz-adv-x="540" +d="M639 827l-372 -925h-61l-79 431l-75 -31l-12 45l142 58l57 -349c4 -21 6 -45 8 -63h1c6 17 15 42 23 64l305 770h63z" /> + <glyph glyph-name="summation" unicode="&#x2211;" horiz-adv-x="536" +d="M448 -90h-479l9 52l293 319l-170 311l10 58h436l-13 -72h-335l-1 -3l163 -295l-269 -294v-4h369z" /> + <glyph glyph-name="Delta" unicode="&#x2206;" horiz-adv-x="529" +d="M522 0h-519l9 49l321 607h98l100 -607zM107 71h339l-56 343c-7 48 -18 125 -23 166h-2c-17 -37 -45 -99 -70 -148z" /> + <glyph glyph-name="Omega" unicode="&#x2126;" horiz-adv-x="680" +d="M145 66l1 4c-48 47 -91 132 -91 229c0 216 151 386 349 386c165 0 263 -120 263 -266c0 -164 -99 -289 -186 -349v-4h136l-12 -66h-245l9 55c96 56 210 185 210 355c0 105 -59 207 -183 207c-159 0 -255 -169 -255 -322c0 -115 46 -198 102 -240l-10 -55h-244l12 66h144z +" /> + <glyph glyph-name="pi" unicode="&#x3c0;" horiz-adv-x="528" +d="M532 418h-67l-50 -271c-15 -82 -17 -122 -14 -147h-79c-6 15 -6 58 9 140l51 278h-151c-8 -31 -15 -66 -24 -101c-33 -124 -80 -260 -121 -317h-80c43 68 88 193 120 314c9 36 18 72 24 104c-43 0 -76 -3 -100 -10l-3 50c21 17 59 26 137 26h364z" /> + <glyph glyph-name="aringacute" unicode="&#x1fb;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-12 4 -30 7 -58 7c-125 0 -228 -130 -228 -265c0 -54 19 -107 83 -107 +c70 0 151 90 175 219zM447 844h103l-156 -112h-68zM364 709c53 0 94 -35 94 -92c0 -58 -49 -95 -103 -95c-53 0 -95 36 -95 88c-1 58 44 99 104 99zM359 671c-29 0 -50 -25 -50 -59c0 -27 19 -52 48 -52c30 0 52 25 52 59c0 29 -19 52 -50 52z" /> + <glyph glyph-name="Abreve" unicode="&#x102;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM272 835h52c0 -28 15 -54 61 -54s68 24 76 54h54c-10 -57 -52 -106 -133 -106c-87 0 -117 49 -110 106z" /> + <glyph glyph-name="Amacron" unicode="&#x100;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM272 787h231l-10 -54h-231z" /> + <glyph glyph-name="Aogonek" unicode="&#x104;" horiz-adv-x="568" +d="M419 674l94 -674h-33c-30 -34 -54 -75 -54 -107c0 -24 16 -40 40 -40c14 0 30 4 43 10l9 -44c-22 -19 -53 -25 -80 -25c-51 0 -80 30 -80 77c0 53 50 110 69 133l-27 209h-232l-107 -213h-88l349 674h97zM198 279h196l-26 195c-3 35 -8 85 -12 124h-2 +c-18 -40 -35 -82 -55 -123z" /> + <glyph glyph-name="i.dot" horiz-adv-x="229" +d="M111 0h-83l93 484h82zM183 566c-29 0 -47 22 -47 52c1 32 25 56 54 56c30 0 50 -22 50 -52c-1 -33 -24 -56 -57 -56z" /> + <glyph glyph-name="Cacute" unicode="&#x106;" horiz-adv-x="555" +d="M486 90l11 -68c-38 -17 -99 -32 -175 -32c-170 0 -273 107 -273 279c0 127 51 248 143 325c70 59 156 90 255 90c74 0 128 -19 146 -32l-27 -67c-25 15 -73 27 -133 27c-70 0 -141 -27 -193 -75c-63 -59 -103 -154 -103 -256c0 -121 55 -220 205 -220c51 0 107 10 144 29 +zM461 832h109l-137 -118h-73z" /> + <glyph glyph-name="Ccaron" unicode="&#x10c;" horiz-adv-x="555" +d="M486 90l11 -68c-38 -17 -99 -32 -175 -32c-170 0 -273 107 -273 279c0 127 51 248 143 325c70 59 156 90 255 90c74 0 128 -19 146 -32l-27 -67c-25 15 -73 27 -133 27c-70 0 -141 -27 -193 -75c-63 -59 -103 -154 -103 -256c0 -121 55 -220 205 -220c51 0 107 10 144 29 +zM446 714h-64l-80 118h69l47 -72h3l72 72h74z" /> + <glyph glyph-name="Ccircumflex" unicode="&#x108;" horiz-adv-x="555" +d="M486 90l11 -68c-38 -17 -99 -32 -175 -32c-170 0 -273 107 -273 279c0 127 51 248 143 325c70 59 156 90 255 90c74 0 128 -19 146 -32l-27 -67c-25 15 -73 27 -133 27c-70 0 -141 -27 -193 -75c-63 -59 -103 -154 -103 -256c0 -121 55 -220 205 -220c51 0 107 10 144 29 +zM400 829h65l80 -118h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Cdotaccent" unicode="&#x10a;" horiz-adv-x="555" +d="M486 90l11 -68c-38 -17 -99 -32 -175 -32c-170 0 -273 107 -273 279c0 127 51 248 143 325c70 59 156 90 254 90c75 0 129 -19 146 -32l-26 -67c-25 15 -73 27 -133 27c-70 0 -141 -27 -193 -75c-63 -59 -103 -154 -103 -256c0 -121 55 -220 205 -220c51 0 106 10 144 29 +zM430 722c-26 0 -47 22 -47 49c0 28 23 53 52 53s48 -24 48 -49c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="Dcaron" unicode="&#x10e;" horiz-adv-x="647" +d="M33 3l125 663c52 9 109 13 168 13c112 0 198 -32 248 -90c36 -37 63 -98 63 -183c0 -122 -49 -243 -135 -317c-78 -66 -176 -94 -306 -94c-59 0 -120 3 -163 8zM230 604l-102 -536c30 -4 62 -4 87 -4c107 0 185 31 241 89c61 62 92 154 92 249c0 120 -58 209 -226 209 +c-30 0 -68 -2 -92 -7zM404 710h-65l-80 118h70l47 -72h3l71 72h74z" /> + <glyph glyph-name="Ebreve" unicode="&#x114;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h275l-13 -71h-359l128 674h344l-14 -71h-260l-41 -216h245zM227 830h52c0 -28 15 -54 61 -54s68 24 76 54h54c-10 -57 -52 -106 -134 -106c-86 0 -116 49 -109 106z" /> + <glyph glyph-name="Ecaron" unicode="&#x11a;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h275l-13 -71h-359l128 674h344l-14 -71h-260l-42 -216h246zM363 710h-65l-80 118h69l47 -73h3l72 73h74z" /> + <glyph glyph-name="Edotaccent" unicode="&#x116;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l129 674h343l-14 -71h-260l-41 -216h245zM340 720c-26 0 -47 22 -47 49c0 28 23 53 52 53s48 -24 48 -49c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="Emacron" unicode="&#x112;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245zM231 787h231l-10 -54h-231z" /> + <glyph glyph-name="Eogonek" unicode="&#x118;" horiz-adv-x="470" +d="M32 0l128 674h343l-14 -71h-260l-41 -216h245l-14 -70h-244l-47 -246h276l-14 -71h-17c-46 -30 -87 -77 -87 -116c0 -20 12 -32 32 -32c16 0 32 4 45 10l12 -45c-25 -17 -52 -24 -82 -24c-48 0 -76 30 -76 71c0 58 56 111 91 136h-276z" /> + <glyph glyph-name="Gbreve" unicode="&#x11e;" horiz-adv-x="623" +d="M588 352l-61 -323c-39 -16 -111 -36 -190 -36c-95 0 -169 27 -220 84c-51 56 -68 130 -68 196c0 112 45 230 131 308c73 63 170 100 278 100c82 0 138 -19 159 -31l-28 -70c-34 18 -80 29 -141 29c-80 0 -153 -29 -209 -82c-63 -59 -101 -156 -101 -247 +c0 -130 65 -216 215 -216c40 0 78 8 102 19l39 201h-137l13 68h218zM315 831h52c0 -28 15 -54 61 -54s68 24 76 54h54c-10 -57 -52 -106 -133 -106c-86 0 -117 49 -110 106z" /> + <glyph glyph-name="Gcircumflex" unicode="&#x11c;" horiz-adv-x="623" +d="M588 352l-61 -323c-39 -16 -111 -36 -190 -36c-95 0 -169 27 -220 84c-51 56 -68 130 -68 196c0 112 45 230 131 308c73 63 170 100 278 100c82 0 138 -19 159 -31l-28 -70c-34 18 -80 29 -141 29c-80 0 -153 -29 -209 -82c-63 -59 -101 -156 -101 -247 +c0 -130 65 -216 215 -216c40 0 78 8 102 19l39 201h-137l13 68h218zM420 828h65l80 -118h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Gcommaaccent" unicode="&#x122;" horiz-adv-x="623" +d="M588 352l-61 -323c-39 -16 -111 -36 -190 -36c-95 0 -169 27 -220 84c-51 56 -68 130 -68 196c0 112 45 230 131 308c73 63 170 100 278 100c82 0 138 -19 159 -31l-28 -70c-34 18 -80 29 -141 29c-80 0 -153 -29 -209 -82c-63 -59 -101 -156 -101 -247 +c0 -130 65 -216 215 -216c40 0 78 8 102 19l39 201h-137l13 68h218zM193 -221l-10 41c41 7 87 29 87 75c0 21 -11 39 -24 50l66 13c14 -10 28 -33 28 -59c0 -78 -77 -114 -147 -120z" /> + <glyph glyph-name="Gdotaccent" unicode="&#x120;" horiz-adv-x="623" +d="M588 352l-61 -323c-39 -16 -111 -36 -190 -36c-95 0 -169 27 -220 84c-51 56 -68 130 -68 196c0 112 45 230 131 308c73 63 169 100 277 100c83 0 139 -19 160 -31l-28 -70c-34 18 -80 29 -141 29c-80 0 -153 -29 -209 -82c-63 -59 -101 -156 -101 -247 +c0 -130 65 -216 215 -216c40 0 78 8 102 19l39 201h-137l13 68h218zM442 720c-26 0 -47 22 -47 49c0 28 23 53 52 53s48 -24 48 -49c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="G_tildecomb" unicode="&#xe000;" horiz-adv-x="623" +d="M588 352l-61 -323c-39 -16 -110 -36 -189 -36c-96 0 -170 27 -221 84c-51 56 -68 130 -68 196c0 112 45 230 132 308c72 63 169 100 277 100c82 0 138 -19 159 -31l-28 -70c-34 18 -80 29 -141 29c-79 0 -152 -29 -209 -82c-63 -59 -101 -156 -101 -247 +c0 -130 66 -216 216 -216c39 0 77 8 102 19l38 201h-136l13 68h217zM330 716h-47c10 59 41 100 82 100c27 0 42 -9 60 -21c15 -10 29 -18 44 -18c16 0 26 13 34 40h46c-11 -62 -38 -96 -83 -96c-25 0 -40 8 -59 20c-17 10 -27 19 -43 18c-16 0 -27 -16 -34 -43z" /> + <glyph glyph-name="Hcircumflex" unicode="&#x124;" horiz-adv-x="627" +d="M159 674h83l-54 -284h310l54 284h83l-128 -674h-83l59 317h-309l-60 -317h-83zM392 828h64l80 -118h-67l-50 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Ibreve" unicode="&#x12c;" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83zM107 833h53c-1 -28 14 -54 60 -54s68 24 76 54h54c-10 -57 -52 -106 -133 -106c-86 0 -117 49 -110 106z" /> + <glyph glyph-name="Idotaccent" unicode="&#x130;" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83zM217 720c-26 0 -47 22 -47 49c0 28 23 53 52 53s48 -24 48 -49c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="Imacron" unicode="&#x12a;" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83zM107 787h231l-10 -54h-231z" /> + <glyph glyph-name="Iogonek" unicode="&#x12e;" horiz-adv-x="233" +d="M241 674l-129 -674h-28c-30 -34 -54 -75 -54 -107c0 -24 16 -40 40 -40c14 0 30 4 43 10l9 -44c-22 -19 -53 -25 -80 -25c-51 0 -80 30 -80 77c0 53 50 110 68 133l128 670h83z" /> + <glyph glyph-name="Itilde" unicode="&#x128;" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83zM132 715h-47c10 59 41 100 82 100c27 0 42 -9 60 -20c15 -10 29 -18 44 -18c16 0 26 13 34 40h46c-11 -62 -38 -96 -83 -96c-25 0 -40 8 -59 19c-17 10 -27 19 -43 18c-16 0 -27 -16 -34 -43z" /> + <glyph glyph-name="Jcircumflex" unicode="&#x134;" horiz-adv-x="364" +d="M210 220l86 454h83l-88 -464c-30 -157 -96 -221 -222 -221c-41 0 -83 9 -100 18l18 71c22 -10 49 -15 85 -15c71 0 115 37 138 157zM331 828h65l80 -118h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Kcommaaccent" unicode="&#x136;" horiz-adv-x="515" +d="M32 0l128 674h82l-62 -328l4 1c23 28 46 52 66 75l237 252h104l-284 -290l173 -384h-90l-147 331l-80 -75l-49 -256h-82zM115 -221l-10 42c41 6 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59c0 -79 -77 -115 -147 -121z" /> + <glyph glyph-name="Lacute" unicode="&#x139;" horiz-adv-x="442" +d="M31 0l128 674h83l-115 -602h272l-14 -72h-354zM280 828h109l-137 -118h-73z" /> + <glyph glyph-name="Lcaron" unicode="&#x13d;" horiz-adv-x="442" +d="M31 0l128 674h83l-115 -602h272l-14 -72h-354zM287 499l-10 41c41 7 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59c0 -78 -77 -114 -147 -120z" /> + <glyph glyph-name="Lcommaaccent" unicode="&#x13b;" horiz-adv-x="442" +d="M31 0l128 674h83l-115 -602h272l-14 -72h-354zM92 -221l-10 42c41 6 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59c0 -79 -77 -115 -147 -121z" /> + <glyph glyph-name="Ldot" unicode="&#x13f;" horiz-adv-x="443" +d="M31 0l128 674h83l-115 -602h272l-14 -72h-354zM336 316c-26 0 -47 21 -47 49s23 52 52 52s48 -23 48 -48c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="M_uni0302" unicode="&#xe001;" horiz-adv-x="780" +d="M676 0h-80l48 364c9 64 24 163 36 228h-3c-31 -68 -69 -148 -105 -217l-201 -371h-63l-50 363c-10 78 -17 156 -21 225h-3c-14 -62 -35 -164 -51 -228l-92 -364h-78l175 674h106l53 -386c7 -58 14 -119 16 -169h3c21 50 50 110 79 166l208 389h109zM468 828h65l80 -118 +h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Nacute" unicode="&#x143;" horiz-adv-x="632" +d="M109 0h-78l128 674h91l154 -382c30 -76 45 -130 59 -188l2 1c4 61 11 117 29 211l68 358h78l-128 -674h-82l-154 381c-32 83 -47 130 -62 194l-3 -1c-7 -63 -18 -130 -35 -222zM450 828h108l-136 -118h-74z" /> + <glyph glyph-name="Ncaron" unicode="&#x147;" horiz-adv-x="632" +d="M109 0h-78l128 674h91l154 -382c30 -76 45 -130 59 -188l2 1c4 61 11 117 29 211l68 358h78l-128 -674h-82l-154 381c-32 83 -47 130 -62 194l-3 -1c-7 -63 -18 -130 -35 -222zM439 710h-65l-79 118h69l47 -72h3l71 72h74z" /> + <glyph glyph-name="N_uni0302" unicode="&#xe002;" horiz-adv-x="632" +d="M109 0h-78l128 674h91l154 -382c30 -76 45 -130 59 -188l2 1c4 61 11 117 29 211l68 358h78l-128 -674h-82l-154 381c-32 83 -47 130 -62 194l-3 -1c-7 -63 -18 -130 -35 -222zM394 828h65l80 -118h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Ncommaaccent" unicode="&#x145;" horiz-adv-x="632" +d="M109 0h-78l128 674h91l154 -382c30 -76 45 -130 59 -188l2 1c4 61 11 117 28 211l69 358h78l-128 -674h-82l-154 381c-32 83 -47 130 -62 194l-3 -1c-7 -63 -18 -130 -35 -222zM181 -221l-10 42c41 6 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59 +c0 -79 -77 -115 -147 -121z" /> + <glyph glyph-name="Obreve" unicode="&#x14e;" horiz-adv-x="668" +d="M303 -11c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94zM316 59c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210c-60 0 -112 -26 -154 -67 +c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211zM321 834h53c-1 -28 14 -54 61 -54c45 0 67 24 75 54h55c-10 -57 -52 -106 -134 -106c-86 0 -117 49 -110 106z" /> + <glyph glyph-name="Ohungarumlaut" unicode="&#x150;" horiz-adv-x="668" +d="M303 -11c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94zM316 59c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210c-60 0 -112 -26 -154 -67 +c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211zM397 828h95l-127 -113h-64zM544 828h96l-127 -113h-65z" /> + <glyph glyph-name="Omacron" unicode="&#x14c;" horiz-adv-x="668" +d="M303 -11c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94zM316 59c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210c-60 0 -112 -26 -154 -67 +c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211zM321 787h231l-10 -54h-231z" /> + <glyph glyph-name="Oslashacute" unicode="&#x1fe;" horiz-adv-x="667" +d="M64 -42l-41 39l77 88c-34 50 -52 104 -52 183c0 118 45 238 121 317c62 63 146 100 232 100c72 0 125 -19 166 -57l76 85l44 -36l-80 -91c34 -49 49 -108 49 -176c0 -118 -45 -244 -119 -322c-59 -62 -145 -99 -230 -99c-69 0 -123 19 -165 57zM159 155l358 413 +c-27 29 -64 47 -125 47c-111 0 -205 -95 -241 -218c-23 -78 -26 -166 6 -242h2zM547 512l-354 -407c29 -30 66 -46 126 -46c100 0 192 85 231 207c23 73 32 165 -1 246h-2zM469 832h109l-137 -118h-73z" /> + <glyph glyph-name="Racute" unicode="&#x154;" horiz-adv-x="523" +d="M31 0l127 664c41 10 97 15 147 15c67 0 125 -16 161 -49c31 -27 50 -65 50 -111c0 -99 -75 -172 -160 -196l-1 -2c48 -16 70 -66 75 -135c7 -94 12 -159 21 -186h-86c-4 14 -11 85 -16 163c-5 93 -39 131 -106 131h-74l-55 -294h-83zM229 606l-47 -248h74 +c105 0 173 69 173 150c0 72 -54 105 -130 105c-33 0 -54 -3 -70 -7zM377 828h109l-137 -118h-74z" /> + <glyph glyph-name="Rcaron" unicode="&#x158;" horiz-adv-x="523" +d="M31 0l127 664c41 10 97 15 147 15c67 0 125 -16 161 -49c31 -27 50 -65 50 -111c0 -99 -75 -172 -160 -196l-1 -2c48 -16 70 -66 75 -135c7 -94 12 -159 21 -186h-86c-4 14 -11 85 -16 163c-5 93 -39 131 -106 131h-74l-55 -294h-83zM229 606l-47 -248h74 +c105 0 173 69 173 150c0 72 -54 105 -130 105c-33 0 -54 -3 -70 -7zM354 710h-65l-80 118h70l46 -72h4l71 72h74z" /> + <glyph glyph-name="Rcommaaccent" unicode="&#x156;" horiz-adv-x="523" +d="M31 0l127 664c41 10 96 15 147 15c67 0 125 -16 161 -49c31 -27 50 -65 50 -111c0 -99 -75 -172 -161 -196v-2c47 -16 70 -66 75 -135c7 -94 12 -159 21 -186h-86c-4 14 -11 85 -16 163c-5 93 -39 131 -106 131h-74l-55 -294h-83zM229 606l-47 -248h74 +c105 0 173 69 173 150c0 72 -54 105 -130 105c-34 0 -55 -3 -70 -7zM119 -221l-10 42c41 6 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59c0 -79 -77 -115 -147 -121z" /> + <glyph glyph-name="Sacute" unicode="&#x15a;" horiz-adv-x="466" +d="M12 36l30 68c37 -25 87 -43 143 -43c76 0 146 45 146 126c0 50 -28 88 -99 126c-86 47 -134 101 -134 173c0 121 104 198 228 198c66 0 115 -19 138 -35l-30 -68c-21 13 -63 32 -117 32c-83 0 -133 -55 -133 -110s34 -86 105 -125c83 -45 128 -98 128 -181 +c0 -116 -91 -208 -243 -208c-67 1 -134 22 -162 47zM366 828h109l-137 -118h-73z" /> + <glyph glyph-name="Scedilla" unicode="&#x15e;" horiz-adv-x="466" +d="M464 649l-30 -68c-21 13 -63 32 -117 32c-83 0 -133 -55 -133 -110s34 -86 105 -125c83 -45 128 -98 128 -180c0 -99 -65 -181 -178 -203l-34 -45c32 -8 54 -32 54 -65c0 -55 -52 -86 -109 -86c-27 0 -52 8 -65 17l18 44c15 -10 34 -15 52 -15c23 0 44 13 44 36 +c0 21 -23 35 -66 39l49 70h-14c-50 0 -123 18 -156 46l30 68c37 -25 87 -43 143 -43c76 0 146 45 146 126c0 51 -28 88 -99 126c-86 47 -134 101 -134 173c0 121 104 198 228 198c66 0 115 -19 138 -35z" /> + <glyph glyph-name="Scircumflex" unicode="&#x15c;" horiz-adv-x="466" +d="M12 36l30 68c37 -25 87 -43 143 -43c76 0 146 45 146 126c0 50 -28 88 -99 126c-86 47 -134 101 -134 173c0 121 104 198 228 198c66 0 115 -19 138 -35l-30 -68c-21 13 -63 32 -117 32c-83 0 -133 -55 -133 -110s34 -86 105 -125c83 -45 128 -98 128 -181 +c0 -116 -91 -208 -243 -208c-67 1 -134 22 -162 47zM312 828h64l80 -118h-67l-49 72h-2l-73 -72h-73z" /> + <glyph glyph-name="Scommaaccent" unicode="&#x218;" horiz-adv-x="466" +d="M12 36l30 68c37 -25 87 -43 143 -43c76 0 146 45 146 126c0 50 -28 88 -99 126c-86 47 -134 101 -134 173c0 121 104 198 228 198c66 0 115 -19 138 -35l-30 -68c-21 13 -63 32 -117 32c-83 0 -133 -55 -133 -110s34 -86 105 -125c83 -45 128 -98 128 -181 +c0 -116 -91 -208 -243 -208c-67 1 -134 22 -162 47zM91 -221l-11 41c41 7 87 29 87 75c0 21 -11 39 -24 49l66 14c14 -10 28 -33 28 -59c0 -78 -77 -114 -146 -120z" /> + <glyph glyph-name="Tcaron" unicode="&#x164;" horiz-adv-x="474" +d="M148 0l114 602h-197l14 72h478l-14 -72h-198l-114 -602h-83zM357 710h-65l-80 118h69l47 -73h3l72 73h74z" /> + <glyph glyph-name="Tcommaaccent" unicode="&#x162;" horiz-adv-x="474" +d="M148 0l114 602h-196l14 72h477l-14 -72h-198l-114 -602h-83zM90 -221l-10 42c41 6 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59c0 -79 -77 -115 -147 -121z" /> + <glyph glyph-name="Ubreve" unicode="&#x16c;" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 125 -130c92 0 159 62 188 214l77 400h83l-77 -403c-39 -201 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93zM299 830h53c-1 -28 14 -54 61 -54c45 0 67 24 75 54h54c-9 -57 -51 -106 -133 -106 +c-86 0 -117 49 -110 106z" /> + <glyph glyph-name="Uhungarumlaut" unicode="&#x170;" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 125 -130c92 0 159 62 188 214l77 400h83l-77 -403c-39 -201 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93zM376 828h95l-127 -113h-64zM523 828h96l-127 -113h-65z" /> + <glyph glyph-name="Umacron" unicode="&#x16a;" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 125 -130c92 0 159 62 188 214l77 400h83l-77 -403c-39 -201 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93zM300 787h231l-10 -54h-231z" /> + <glyph glyph-name="Uogonek" unicode="&#x172;" horiz-adv-x="621" +d="M366 -125l10 -48c-22 -13 -48 -19 -76 -19c-50 0 -80 27 -80 72c0 39 29 80 63 111c-8 0 -17 -1 -25 -1c-103 4 -184 64 -184 198c0 29 3 62 9 93l75 393h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 126 -130c91 0 159 62 188 214l76 400h83l-77 -403 +c-26 -136 -79 -217 -158 -255c-21 -10 -45 -25 -60 -38c-28 -23 -46 -53 -46 -78c0 -22 15 -33 34 -33c16 0 31 3 43 8z" /> + <glyph glyph-name="Uring" unicode="&#x16e;" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 126 -130c91 0 158 62 187 214l77 400h83l-77 -403c-39 -201 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93zM410 872c55 0 94 -34 94 -87c-1 -55 -47 -90 -103 -90c-54 0 -93 34 -94 83 +c-1 54 42 94 103 94zM405 836c-28 0 -47 -24 -47 -56c0 -27 18 -49 45 -49c29 0 49 23 49 54c0 29 -17 51 -47 51z" /> + <glyph glyph-name="Utilde" unicode="&#x168;" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 125 -130c92 0 160 62 189 214l76 400h83l-77 -403c-38 -201 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93zM329 716h-47c10 59 41 100 82 100c27 0 42 -9 60 -21c15 -10 29 -18 44 -18 +c17 0 27 13 35 40h46c-11 -62 -38 -96 -83 -96c-26 0 -40 8 -60 20c-17 10 -27 19 -43 18c-16 0 -27 -16 -34 -43z" /> + <glyph glyph-name="Wacute" unicode="&#x1e82;" horiz-adv-x="829" +d="M219 0h-89l-33 674h84l14 -404c3 -87 1 -133 0 -176h2c16 44 33 88 70 171l187 409h88l14 -388c3 -88 3 -146 2 -190h2c20 58 40 112 66 173l181 405h87l-312 -674h-88l-17 383c-4 79 -3 117 2 194h-3c-22 -64 -40 -116 -68 -177zM552 828h109l-137 -118h-74z" /> + <glyph glyph-name="Wcircumflex" unicode="&#x174;" horiz-adv-x="829" +d="M219 0h-89l-33 674h84l14 -404c3 -87 1 -133 0 -176h2c16 44 33 88 70 171l187 409h88l14 -388c3 -88 3 -146 2 -190h2c20 58 40 112 66 173l181 405h87l-312 -674h-88l-17 383c-4 79 -3 117 2 194h-3c-22 -64 -40 -116 -68 -177zM493 828h64l80 -118h-68l-49 72h-2 +l-72 -72h-74z" /> + <glyph glyph-name="Wdieresis" unicode="&#x1e84;" horiz-adv-x="829" +d="M219 0h-89l-33 674h84l14 -404c3 -87 1 -133 0 -176h2c16 44 33 88 70 171l187 409h88l14 -388c3 -88 3 -146 2 -190h2c20 58 40 112 66 173l181 405h87l-312 -674h-88l-17 383c-4 79 -3 117 2 194h-3c-22 -64 -40 -116 -68 -177zM421 720h-2c-25 0 -46 21 -46 48 +c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -51 -53zM604 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="Wgrave" unicode="&#x1e80;" horiz-adv-x="829" +d="M219 0h-89l-33 674h84l14 -404c3 -87 1 -133 0 -176h2c16 44 33 88 70 171l187 409h88l14 -388c3 -88 3 -146 2 -190h2c20 58 40 112 66 173l181 405h87l-312 -674h-88l-17 383c-4 79 -3 117 2 194h-3c-22 -64 -40 -116 -68 -177zM365 828h104l74 -117h-67z" /> + <glyph glyph-name="Ycircumflex" unicode="&#x176;" horiz-adv-x="517" +d="M243 0h-82l53 280l-130 394h89l65 -218c17 -60 23 -87 28 -113h2c17 28 40 66 72 116l146 215h97l-287 -393zM322 828h64l80 -118h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="Ygrave" unicode="&#x1ef2;" horiz-adv-x="517" +d="M243 0h-82l53 280l-130 394h89l65 -218c17 -60 23 -87 28 -113h2c17 28 40 66 72 116l146 215h97l-287 -393zM207 828h103l75 -117h-68z" /> + <glyph glyph-name="uni0232" unicode="&#x232;" horiz-adv-x="517" +d="M243 0h-82l53 280l-130 394h89l65 -218c17 -60 23 -87 28 -113h2c17 28 40 66 72 116l146 215h97l-287 -393zM248 787h231l-10 -54h-231z" /> + <glyph glyph-name="Zacute" unicode="&#x179;" horiz-adv-x="523" +d="M-20 0l9 51l458 549l-1 3h-320l14 71h432l-11 -54l-454 -546l1 -3h354l-13 -71h-469zM408 828h109l-137 -118h-74z" /> + <glyph glyph-name="Zdotaccent" unicode="&#x17b;" horiz-adv-x="523" +d="M-20 0l9 51l458 549l-1 3h-320l14 71h432l-11 -54l-454 -546l1 -3h354l-13 -71h-469zM358 720c-26 0 -47 22 -47 49c0 28 23 53 52 53s48 -24 48 -49c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="AEacute" unicode="&#x1fc;" horiz-adv-x="773" +d="M37 0h-88l448 674h380l-14 -71h-251l-23 -218h238l-13 -70h-230l-26 -244h257l-13 -71h-329l24 238h-202zM238 307h165l21 195c3 32 7 75 12 109h-4c-18 -32 -41 -71 -64 -106zM587 828h109l-137 -118h-74z" /> + <glyph glyph-name="abreve" unicode="&#x103;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM229 683h50c-2 -37 17 -68 56 -68c48 0 71 35 80 68h52c-13 -73 -65 -121 -134 -121c-89 0 -112 60 -104 121z" /> + <glyph glyph-name="amacron" unicode="&#x101;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM236 646h219l-10 -53h-219z" /> + <glyph glyph-name="aogonek" unicode="&#x105;" horiz-adv-x="522" +d="M497 477l-49 -253c-16 -84 -22 -170 -20 -224h-20c-32 -34 -58 -76 -58 -109c0 -23 15 -38 38 -38c16 0 32 4 45 10l9 -44c-22 -19 -53 -25 -80 -25c-51 0 -80 30 -80 77c0 53 50 110 68 133c1 30 5 74 11 121h-2c-53 -101 -120 -136 -188 -136c-86 0 -139 68 -139 160 +c0 169 124 346 335 346c46 0 97 -8 130 -18zM376 276l27 146c-11 4 -29 7 -57 7c-125 0 -228 -130 -228 -265c0 -54 19 -107 83 -107c70 0 151 90 175 219z" /> + <glyph glyph-name="a.superior" horiz-adv-x="350" +d="M325 267h-59c0 18 1 41 4 63h-2c-28 -45 -70 -69 -116 -69c-57 0 -94 46 -94 115c0 108 74 215 214 215c33 0 76 -9 97 -17l-36 -206c-7 -37 -8 -75 -8 -101zM280 422l20 112c-12 5 -26 7 -45 7c-71 0 -131 -68 -131 -155c0 -37 14 -73 55 -73c44 0 90 50 101 109z" /> + <glyph glyph-name="cacute" unicode="&#x107;" horiz-adv-x="423" +d="M353 85l8 -65c-25 -13 -75 -30 -140 -30c-125 0 -186 84 -186 187c0 165 122 317 296 317c45 0 86 -13 101 -22l-24 -65c-19 9 -46 18 -82 18c-126 0 -205 -124 -205 -238c0 -78 41 -129 120 -129c50 0 87 15 112 27zM345 686h100l-134 -143h-65z" /> + <glyph glyph-name="ccaron" unicode="&#x10d;" horiz-adv-x="423" +d="M353 85l8 -65c-25 -13 -75 -30 -140 -30c-125 0 -186 84 -186 187c0 165 122 317 296 317c45 0 86 -13 101 -22l-24 -65c-19 9 -46 18 -82 18c-126 0 -205 -124 -205 -238c0 -78 41 -129 120 -129c50 0 87 15 112 27zM331 543h-60l-70 143h63l43 -92h2l72 92h67z" /> + <glyph glyph-name="ccircumflex" unicode="&#x109;" horiz-adv-x="423" +d="M353 85l8 -65c-25 -13 -75 -30 -140 -30c-125 0 -186 84 -186 187c0 165 122 317 296 317c45 0 86 -13 101 -22l-24 -65c-19 9 -46 18 -82 18c-126 0 -205 -124 -205 -238c0 -78 41 -129 120 -129c50 0 87 15 112 27zM286 686h59l69 -143h-62l-43 91h-2l-70 -91h-67z" /> + <glyph glyph-name="cdotaccent" unicode="&#x10b;" horiz-adv-x="423" +d="M353 85l8 -65c-25 -13 -75 -30 -140 -30c-125 0 -186 84 -186 187c0 165 122 317 296 317c45 0 86 -13 100 -22l-23 -65c-20 9 -46 18 -82 18c-126 0 -205 -124 -205 -238c0 -78 41 -129 120 -129c50 0 87 15 112 27zM318 569c-26 0 -46 21 -46 49c0 31 23 54 52 54 +s47 -22 47 -49c0 -31 -21 -54 -53 -54z" /> + <glyph glyph-name="dcaron" unicode="&#x10f;" horiz-adv-x="534" +d="M460 710h83l-107 -556c-9 -51 -17 -107 -20 -154h-76l13 96h-2c-44 -69 -105 -107 -174 -107c-94 0 -145 77 -145 176c0 172 128 330 299 330c31 0 65 -7 86 -17zM371 239l32 169c-16 12 -44 21 -79 21c-116 0 -206 -124 -206 -253c0 -58 20 -119 91 -119 +c64 0 141 73 162 182zM570 529l-25 37c29 16 57 45 57 88c0 20 -9 38 -20 49l63 14c13 -10 26 -36 26 -61c0 -67 -54 -111 -101 -127z" /> + <glyph glyph-name="ebreve" unicode="&#x115;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM194 683h50c-2 -37 16 -68 55 -68c48 0 71 35 80 68h52c-13 -73 -64 -121 -133 -121c-89 0 -113 60 -104 121z" /> + <glyph glyph-name="ecaron" unicode="&#x11b;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM319 543h-60l-69 143h62l43 -92h2l72 92h66z" /> + <glyph glyph-name="edotaccent" unicode="&#x117;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM307 569c-26 0 -46 21 -46 49c0 31 23 54 52 54s47 -22 47 -49c0 -31 -21 -54 -53 -54z" /> + <glyph glyph-name="emacron" unicode="&#x113;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM197 646h219l-10 -53h-219z" /> + <glyph glyph-name="eogonek" unicode="&#x119;" horiz-adv-x="453" +d="M359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -158 -153c130 -2 232 16 232 92zM313 -130l10 -46c-26 -15 -54 -21 -81 -21c-49 0 -75 29 -75 72c0 45 34 88 72 115v1c-9 -1 -19 -1 -29 -1c-124 3 -177 89 -177 194c0 146 108 311 264 311c92 0 142 -55 142 -125 +c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c20 -44 58 -65 107 -65c58 0 101 17 131 33l12 -61c-8 -5 -18 -9 -36 -17c-49 -27 -105 -69 -105 -114c0 -22 12 -36 32 -36c16 0 31 3 45 9z" /> + <glyph glyph-name="gbreve" unicode="&#x11f;" horiz-adv-x="524" +d="M10 -175l23 65c29 -19 78 -32 128 -32c82 0 146 41 174 172l16 73h-2c-43 -69 -102 -103 -168 -103c-98 0 -148 82 -148 168c0 164 120 327 307 327c56 0 118 -16 156 -34l-75 -400c-19 -103 -47 -173 -97 -217c-49 -41 -114 -53 -169 -53c-59 0 -115 14 -145 34z +M374 250l31 162c-16 7 -46 16 -80 16c-121 0 -205 -127 -205 -246c-1 -54 19 -116 93 -116c71 0 143 90 161 184zM230 683h51c-2 -37 16 -68 55 -68c48 0 71 35 79 68h52c-12 -73 -64 -121 -133 -121c-89 0 -112 60 -104 121z" /> + <glyph glyph-name="gcircumflex" unicode="&#x11d;" horiz-adv-x="524" +d="M10 -175l23 65c29 -19 78 -32 128 -32c82 0 146 41 174 172l16 73h-2c-43 -69 -102 -103 -168 -103c-98 0 -148 82 -148 168c0 164 120 327 307 327c56 0 118 -16 156 -34l-75 -400c-19 -103 -47 -173 -97 -217c-49 -41 -114 -53 -169 -53c-59 0 -115 14 -145 34z +M374 250l31 162c-16 7 -46 16 -80 16c-121 0 -205 -127 -205 -246c-1 -54 19 -116 93 -116c71 0 143 90 161 184zM316 686h60l69 -143h-63l-42 91h-2l-70 -91h-67z" /> + <glyph glyph-name="gcommaaccent" unicode="&#x123;" horiz-adv-x="524" +d="M10 -175l23 65c29 -19 78 -32 128 -32c82 0 146 41 174 172l16 73h-3c-42 -69 -100 -103 -167 -103c-98 0 -148 82 -148 168c0 164 120 327 307 327c56 0 117 -16 155 -34l-74 -400c-19 -103 -47 -173 -97 -217c-48 -41 -114 -53 -169 -53c-59 0 -115 14 -145 34z +M373 250l31 162c-15 7 -45 16 -79 16c-121 0 -205 -127 -205 -246c-1 -54 19 -116 93 -116c71 0 142 90 160 184zM426 710l10 -42c-42 -6 -88 -28 -88 -75c0 -21 11 -38 24 -49l-63 -14c-14 11 -28 33 -28 60c0 78 77 114 145 120z" /> + <glyph glyph-name="gdotaccent" unicode="&#x121;" horiz-adv-x="524" +d="M10 -175l23 65c29 -19 78 -32 128 -32c82 0 146 41 174 172l16 73h-2c-42 -69 -101 -103 -168 -103c-98 0 -148 82 -148 168c0 164 120 327 307 327c56 0 117 -16 155 -34l-74 -400c-19 -103 -47 -173 -97 -217c-48 -41 -114 -53 -169 -53c-59 0 -115 14 -145 34z +M374 250l30 162c-15 7 -45 16 -79 16c-121 0 -205 -127 -205 -246c-1 -54 19 -116 93 -116c71 0 143 90 161 184zM336 569c-26 0 -46 21 -46 49c0 31 23 54 52 54s47 -22 47 -49c0 -31 -21 -54 -53 -54z" /> + <glyph glyph-name="g_tildecomb" unicode="&#xe005;" horiz-adv-x="524" +d="M10 -175l23 65c29 -19 78 -32 128 -32c82 0 145 41 174 172l16 73h-2c-43 -69 -102 -103 -168 -103c-98 0 -148 82 -148 168c0 164 120 327 307 327c56 0 117 -16 155 -34l-74 -400c-19 -103 -47 -173 -97 -217c-49 -41 -114 -53 -169 -53c-59 0 -115 14 -145 34z +M374 250l31 162c-16 7 -46 16 -80 16c-121 0 -205 -127 -205 -246c-1 -54 19 -116 92 -116c72 0 144 90 162 184zM257 568h-48c7 58 34 100 77 100c26 0 40 -10 61 -22c15 -9 27 -17 40 -17c17 0 24 9 30 42h47c-8 -62 -30 -96 -77 -96c-23 0 -43 10 -59 20 +c-14 9 -27 18 -42 18c-17 0 -24 -19 -29 -45z" /> + <glyph glyph-name="hcircumflex" unicode="&#x125;" horiz-adv-x="534" +d="M111 0h-83l135 710h83l-60 -311h2c41 59 100 96 173 96c55 0 120 -33 120 -130c0 -25 -3 -57 -8 -81l-54 -284h-83l54 280c3 17 6 40 6 67c0 44 -21 79 -75 79c-64 0 -145 -75 -165 -183zM194 853h64l80 -118h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="ibreve" unicode="&#x12d;" horiz-adv-x="229" +d="M111 0h-83l92 484h83zM82 683h50c-2 -37 16 -68 55 -68c48 0 71 35 80 68h52c-12 -73 -64 -121 -133 -121c-89 0 -113 60 -104 121z" /> + <glyph glyph-name="imacron" unicode="&#x12b;" horiz-adv-x="229" +d="M112 0h-83l92 484h83zM86 646h219l-10 -53h-219z" /> + <glyph glyph-name="iogonek" unicode="&#x12f;" horiz-adv-x="229" +d="M183 571c-29 0 -49 23 -49 54c1 33 26 59 57 59s52 -23 52 -54c-1 -35 -26 -59 -60 -59zM204 484l-93 -484h-28c-30 -34 -54 -75 -54 -107c0 -24 16 -40 40 -40c14 0 30 4 43 10l9 -44c-22 -19 -53 -25 -80 -25c-51 0 -80 30 -80 77c0 53 50 110 68 133l92 480h83z" /> + <glyph glyph-name="itilde" unicode="&#x129;" horiz-adv-x="229" +d="M112 0h-83l92 484h83zM110 568h-48c7 58 34 100 77 100c26 0 40 -10 61 -22c15 -9 27 -17 40 -17c17 0 24 9 30 42h47c-8 -62 -30 -96 -77 -96c-23 0 -43 10 -59 20c-14 9 -27 18 -42 18c-17 0 -24 -19 -29 -45z" /> + <glyph glyph-name="jcircumflex" unicode="&#x135;" horiz-adv-x="227" +d="M126 484h82l-91 -483c-15 -80 -33 -131 -62 -163c-28 -32 -69 -47 -111 -47c-21 0 -39 1 -55 6l10 65c9 -3 22 -4 38 -4c42 0 75 26 94 126zM166 686h58l69 -143h-62l-42 94h-2l-70 -94h-67z" /> + <glyph glyph-name="kcommaaccent" unicode="&#x137;" horiz-adv-x="456" +d="M111 0h-82l134 710h83l-85 -445h2c15 17 32 36 45 49l170 170h103l-211 -199l144 -285h-91l-116 239l-61 -55zM85 -221l-10 42c41 6 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59c0 -79 -77 -115 -147 -121z" /> + <glyph glyph-name="lacute" unicode="&#x13a;" horiz-adv-x="229" +d="M112 0h-83l135 710h83zM261 860h109l-137 -118h-73z" /> + <glyph glyph-name="lcaron" unicode="&#x13e;" horiz-adv-x="236" +d="M111 0h-83l136 710h83zM276 529l-26 36c26 15 56 44 56 89c0 20 -9 38 -20 49l63 14c13 -10 26 -36 26 -61c0 -72 -56 -114 -99 -127z" /> + <glyph glyph-name="lcommaaccent" unicode="&#x13c;" horiz-adv-x="229" +d="M112 0h-83l135 710h83zM-30 -221l-10 42c41 6 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59c0 -79 -77 -115 -147 -121z" /> + <glyph glyph-name="ldot" unicode="&#x140;" horiz-adv-x="265" +d="M111 0h-82l135 710h83zM268 314c-26 0 -45 20 -45 48c0 30 23 53 50 53c28 0 46 -22 46 -48c0 -30 -20 -53 -51 -53z" /> + <glyph glyph-name="m_uni0302" unicode="&#xe006;" horiz-adv-x="808" +d="M110 0h-81l64 343c10 54 17 101 22 141h73l-12 -91h2c45 68 106 102 170 102c74 0 109 -47 113 -108c43 70 105 107 177 108c56 0 118 -36 118 -127c0 -22 -3 -55 -8 -82l-54 -286h-81l52 279c4 19 7 43 7 63c0 51 -19 84 -73 84c-60 0 -132 -70 -152 -178l-46 -248h-80 +l54 284c4 22 6 40 6 59c0 41 -11 83 -72 83c-60 0 -136 -80 -155 -183zM457 686h59l69 -143h-62l-43 91h-2l-70 -91h-67z" /> + <glyph glyph-name="nacute" unicode="&#x144;" horiz-adv-x="534" +d="M111 0h-82l64 343c11 54 18 101 23 141h74l-12 -95h2c43 68 109 106 179 106c58 0 123 -33 123 -134c0 -22 -4 -52 -9 -78l-54 -283h-82l53 280c3 19 6 41 6 62c0 48 -19 84 -76 84c-59 0 -143 -71 -165 -191zM381 686h100l-134 -143h-65z" /> + <glyph glyph-name="ncaron" unicode="&#x148;" horiz-adv-x="534" +d="M111 0h-82l64 343c11 54 18 101 23 141h74l-12 -95h2c43 68 109 106 179 106c58 0 123 -33 123 -134c0 -22 -4 -52 -9 -78l-54 -283h-82l53 280c3 19 6 41 6 62c0 48 -19 84 -76 84c-59 0 -143 -71 -165 -191zM342 543h-60l-70 143h63l43 -92h2l72 92h67z" /> + <glyph glyph-name="n_uni0302" unicode="&#xe007;" horiz-adv-x="534" +d="M111 0h-82l64 343c11 54 18 101 23 141h74l-12 -95h2c43 68 109 106 179 106c58 0 123 -33 123 -134c0 -22 -4 -52 -9 -78l-54 -283h-82l53 280c3 19 6 41 6 62c0 48 -19 84 -76 84c-59 0 -143 -71 -165 -191zM320 686h59l69 -143h-62l-43 91h-2l-70 -91h-67z" /> + <glyph glyph-name="ncommaaccent" unicode="&#x146;" horiz-adv-x="534" +d="M111 0h-82l64 343c11 54 18 101 23 141h74l-12 -95h2c43 68 109 106 179 106c58 0 123 -33 123 -134c0 -22 -4 -52 -9 -78l-54 -283h-82l53 280c3 19 6 41 6 62c0 48 -19 84 -76 84c-59 0 -143 -71 -165 -191zM125 -221l-10 42c41 6 87 29 87 75c0 21 -11 38 -24 49 +l66 14c14 -10 28 -33 28 -59c0 -79 -77 -115 -147 -121z" /> + <glyph glyph-name="obreve" unicode="&#x14f;" horiz-adv-x="522" +d="M224 -11c-121 0 -189 90 -189 199c0 160 111 307 268 307c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305zM235 55c98 0 172 126 172 239c0 56 -26 135 -113 135c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136zM225 683h50c-2 -37 17 -68 56 -68 +c47 0 71 35 79 68h52c-12 -73 -64 -121 -133 -121c-89 0 -112 60 -104 121z" /> + <glyph glyph-name="ohungarumlaut" unicode="&#x151;" horiz-adv-x="522" +d="M224 -11c-121 0 -189 90 -189 199c0 160 111 307 268 307c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305zM235 55c98 0 172 126 172 239c0 56 -26 135 -113 135c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136zM290 686h87l-125 -143h-56zM435 686h87 +l-125 -143h-56z" /> + <glyph glyph-name="omacron" unicode="&#x14d;" horiz-adv-x="522" +d="M224 -11c-121 0 -189 90 -189 199c0 160 111 307 268 307c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305zM235 55c98 0 172 126 172 239c0 56 -26 135 -113 135c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136zM233 646h219l-10 -53h-219z" /> + <glyph glyph-name="oslashacute" unicode="&#x1ff;" horiz-adv-x="523" +d="M52 -38l-30 30l56 65c-31 38 -43 85 -43 137c0 155 112 301 266 301c51 0 89 -14 116 -35l55 60l33 -28l-55 -63c31 -41 43 -91 43 -133c0 -169 -121 -307 -261 -307c-56 0 -94 14 -123 39zM139 125l230 277c-17 18 -42 29 -77 29c-106 0 -172 -129 -172 -227 +c0 -33 4 -56 17 -79h2zM390 359l-232 -275c19 -20 46 -31 81 -31c88 0 168 115 169 228c0 29 -5 54 -15 78h-3zM367 686h99l-133 -143h-65z" /> + <glyph glyph-name="racute" unicode="&#x155;" horiz-adv-x="318" +d="M111 0h-82l59 312c11 63 19 127 24 172h73c-4 -34 -8 -68 -13 -105h3c31 66 83 116 148 116c8 0 17 -1 24 -2l-16 -82c-6 1 -14 2 -23 2c-72 0 -136 -87 -157 -200zM279 686h100l-133 -143h-66z" /> + <glyph glyph-name="rcaron" unicode="&#x159;" horiz-adv-x="318" +d="M111 0h-82l59 312c11 63 19 127 24 172h73c-4 -34 -8 -68 -13 -105h3c31 66 83 116 148 116c8 0 17 -1 24 -2l-16 -82c-6 1 -14 2 -23 2c-72 0 -136 -87 -157 -200zM258 543h-59l-70 143h62l43 -92h3l71 92h67z" /> + <glyph glyph-name="rcommaaccent" unicode="&#x157;" horiz-adv-x="318" +d="M111 0h-82l59 312c11 63 19 127 24 172h73c-4 -34 -8 -68 -13 -105h3c31 66 83 116 148 116c8 0 17 -1 24 -2l-16 -82c-6 1 -14 2 -23 2c-72 0 -136 -87 -157 -200zM1 -221l-10 42c41 6 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59 +c0 -79 -77 -115 -147 -121z" /> + <glyph glyph-name="sacute" unicode="&#x15b;" horiz-adv-x="373" +d="M9 23l24 61c23 -14 64 -30 104 -30c56 0 92 36 92 79c0 38 -17 61 -68 89c-56 31 -87 74 -87 124c0 84 73 149 175 149c44 0 83 -12 101 -24l-23 -63c-17 10 -48 22 -84 22c-50 0 -86 -31 -86 -73c0 -35 23 -57 67 -81c54 -30 90 -73 90 -127c0 -102 -82 -159 -184 -159 +c-52 1 -99 16 -121 33zM290 686h99l-132 -143h-66z" /> + <glyph glyph-name="scedilla" unicode="&#x15f;" horiz-adv-x="373" +d="M350 471l-23 -63c-17 10 -48 22 -84 22c-50 0 -86 -31 -86 -73c0 -35 23 -57 67 -81c54 -30 90 -73 90 -127c0 -82 -54 -136 -129 -153l-34 -46c32 -7 54 -32 54 -64c0 -55 -52 -86 -109 -86c-27 0 -52 8 -65 17l18 42c15 -9 34 -14 52 -14c23 0 44 13 44 36 +c0 22 -23 35 -65 39l49 70h-4c-45 0 -94 16 -116 33l24 61c23 -14 64 -30 104 -30c56 0 92 36 92 79c0 38 -17 61 -68 89c-56 31 -87 74 -87 124c0 84 73 149 175 149c44 0 83 -12 101 -24z" /> + <glyph glyph-name="scircumflex" unicode="&#x15d;" horiz-adv-x="373" +d="M9 23l24 61c23 -14 64 -30 104 -30c56 0 92 36 92 79c0 38 -17 61 -68 89c-56 31 -87 74 -87 124c0 84 73 149 175 149c44 0 83 -12 101 -24l-23 -63c-17 10 -48 22 -84 22c-50 0 -86 -31 -86 -73c0 -35 23 -57 67 -81c54 -30 90 -73 90 -127c0 -102 -82 -159 -184 -159 +c-52 1 -99 16 -121 33zM238 686h59l69 -143h-62l-43 91h-2l-69 -91h-68z" /> + <glyph glyph-name="scommaaccent" unicode="&#x219;" horiz-adv-x="373" +d="M9 23l24 61c23 -14 64 -30 104 -30c56 0 92 36 92 79c0 38 -17 61 -68 89c-56 31 -87 74 -87 124c0 84 73 149 175 149c44 0 83 -12 101 -24l-23 -63c-17 10 -48 22 -84 22c-50 0 -86 -31 -86 -73c0 -35 23 -57 67 -81c54 -30 90 -73 90 -127c0 -102 -82 -159 -184 -159 +c-52 1 -99 16 -121 33zM44 -220l-11 41c41 7 87 29 87 75c0 21 -11 39 -24 49l66 14c14 -10 28 -33 28 -59c0 -78 -77 -114 -146 -120z" /> + <glyph glyph-name="tcaron" unicode="&#x165;" horiz-adv-x="313" +d="M155 573l87 27l-22 -116h116l-13 -65h-116l-44 -235c-6 -27 -10 -52 -10 -77c0 -29 14 -47 46 -47c15 0 28 1 39 4l-4 -65c-15 -6 -40 -9 -64 -9c-73 0 -102 44 -102 94c0 28 4 55 11 90l47 245h-69l12 65h69zM317 542l-18 40c26 10 51 33 51 71c0 20 -10 40 -22 52 +l62 13c15 -10 29 -36 29 -62c0 -70 -60 -106 -102 -114z" /> + <glyph glyph-name="tcommaaccent" unicode="&#x163;" horiz-adv-x="313" +d="M155 574l87 26l-22 -116h116l-13 -65h-116l-44 -235c-6 -27 -10 -52 -10 -77c0 -29 14 -47 46 -47c15 0 28 1 39 4l-4 -65c-15 -6 -40 -9 -64 -9c-73 0 -102 44 -102 94c0 28 4 55 11 90l47 245h-69l12 65h69zM21 -220l-10 41c41 7 87 29 87 75c0 21 -11 39 -24 49l66 14 +c14 -10 28 -33 28 -59c0 -78 -77 -114 -147 -120z" /> + <glyph glyph-name="ubreve" unicode="&#x16d;" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM215 683h50c-2 -37 16 -68 55 -68 +c48 0 71 35 79 68h52c-12 -73 -64 -121 -132 -121c-89 0 -112 60 -104 121z" /> + <glyph glyph-name="uhungarumlaut" unicode="&#x171;" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM295 686h87l-125 -143h-55zM439 686h88 +l-125 -143h-56z" /> + <glyph glyph-name="umacron" unicode="&#x16b;" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM227 646h218l-10 -53h-218z" /> + <glyph glyph-name="uogonek" unicode="&#x173;" horiz-adv-x="526" +d="M500 484l-65 -343c-10 -54 -17 -101 -22 -141l-19 4c-30 -34 -54 -75 -54 -107c0 -24 16 -40 40 -40c14 0 30 4 43 10l9 -44c-22 -19 -53 -25 -80 -25c-51 0 -80 30 -80 77c0 53 50 110 68 133l11 83h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140 +c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177l47 248h83z" /> + <glyph glyph-name="uring" unicode="&#x16f;" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM343 721c53 0 95 -35 95 -92 +c-1 -58 -50 -95 -103 -95c-54 0 -95 36 -96 88c-1 58 44 99 104 99zM339 683c-29 0 -50 -25 -50 -58c0 -28 19 -53 47 -53c31 0 52 25 52 59c0 29 -18 52 -49 52z" /> + <glyph glyph-name="utilde" unicode="&#x169;" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM259 568h-48c7 58 34 100 77 100 +c26 0 40 -10 61 -22c15 -9 27 -17 40 -17c17 0 24 9 30 42h47c-8 -62 -30 -96 -77 -96c-23 0 -43 10 -59 20c-14 9 -27 18 -42 18c-17 0 -24 -19 -29 -45z" /> + <glyph glyph-name="wacute" unicode="&#x1e83;" horiz-adv-x="707" +d="M61 484h82l17 -272c4 -60 3 -91 2 -130h3c11 31 29 73 53 121l143 281h73l30 -276c5 -53 8 -94 8 -126h2c13 39 26 76 46 123l131 279h84l-239 -484h-77l-32 263c-5 45 -7 86 -7 129h-2c-20 -47 -34 -84 -56 -126l-139 -266h-77zM457 686h100l-133 -143h-65z" /> + <glyph glyph-name="wcircumflex" unicode="&#x175;" horiz-adv-x="707" +d="M61 484h82l17 -272c4 -60 3 -91 2 -130h2c12 31 30 73 54 121l144 281h72l31 -276c4 -53 8 -94 7 -126h3c12 39 26 76 45 123l131 279h84l-239 -484h-77l-32 263c-5 45 -7 86 -7 129h-2c-20 -47 -34 -84 -56 -126l-139 -266h-77zM404 686h60l68 -143h-62l-42 91h-2 +l-70 -91h-68z" /> + <glyph glyph-name="wdieresis" unicode="&#x1e85;" horiz-adv-x="707" +d="M61 484h82l17 -272c4 -60 3 -91 2 -130h2c12 31 29 73 53 121l144 281h73l31 -276c5 -53 8 -94 7 -126h3c13 39 26 76 45 123l131 279h85l-239 -484h-78l-32 263c-5 45 -7 86 -7 129h-2c-20 -47 -34 -84 -56 -126l-139 -266h-77zM328 570c-27 0 -47 21 -47 49 +c0 30 23 53 52 53s48 -22 48 -49c0 -29 -22 -53 -53 -53zM511 570c-27 0 -46 21 -46 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -53 -53z" /> + <glyph glyph-name="wgrave" unicode="&#x1e81;" horiz-adv-x="707" +d="M61 484h82l17 -272c4 -60 3 -91 2 -130h3c11 31 29 73 53 121l143 281h73l30 -276c5 -53 8 -94 8 -126h2c13 39 26 76 46 123l131 279h84l-239 -484h-77l-32 263c-5 45 -7 86 -7 129h-2c-20 -47 -34 -84 -56 -126l-139 -266h-77zM292 686h93l67 -143h-60z" /> + <glyph glyph-name="ycircumflex" unicode="&#x177;" horiz-adv-x="441" +d="M48 484h86l48 -260c11 -56 17 -92 22 -128h2c13 31 27 65 52 119l124 269h88l-182 -368c-52 -104 -101 -189 -167 -254c-54 -55 -113 -78 -140 -84l-21 72c21 7 56 20 89 46c33 25 68 64 94 112c4 8 4 13 2 22zM264 686h60l68 -143h-62l-42 91h-2l-70 -91h-68z" /> + <glyph glyph-name="ygrave" unicode="&#x1ef3;" horiz-adv-x="441" +d="M48 484h86l48 -260c11 -56 17 -92 22 -128h2c13 31 27 65 52 119l124 269h88l-182 -368c-52 -104 -101 -189 -167 -254c-54 -55 -113 -78 -140 -84l-21 72c21 7 56 20 89 46c33 25 68 64 94 112c4 8 4 13 2 22zM143 686h94l66 -143h-59z" /> + <glyph glyph-name="uni0233" unicode="&#x233;" horiz-adv-x="441" +d="M48 484h86l48 -260c11 -56 17 -92 22 -128h2c13 31 27 65 52 119l124 269h88l-182 -368c-52 -104 -101 -189 -167 -254c-54 -55 -113 -78 -140 -84l-21 72c21 7 56 20 89 46c33 25 68 64 94 112c4 8 4 13 2 22zM191 646h219l-10 -53h-219z" /> + <glyph glyph-name="zacute" unicode="&#x17a;" horiz-adv-x="415" +d="M-21 0l9 51l235 262c41 45 68 70 101 100v3h-248l14 68h347l-11 -55l-231 -258c-44 -47 -70 -72 -100 -100l-1 -3h269l-14 -68h-370zM319 686h100l-133 -143h-66z" /> + <glyph glyph-name="zdotaccent" unicode="&#x17c;" horiz-adv-x="415" +d="M-21 0l9 51l235 262c41 45 68 70 101 100v3h-248l14 68h347l-11 -55l-231 -258c-43 -47 -69 -72 -100 -100v-3h267l-13 -68h-370zM277 569c-26 0 -46 21 -46 49c0 31 23 54 52 54s47 -22 47 -49c0 -31 -21 -54 -53 -54z" /> + <glyph glyph-name="aeacute" unicode="&#x1fd;" horiz-adv-x="718" +d="M630 89l11 -60c-36 -22 -91 -40 -159 -40c-77 0 -137 39 -158 107h-2c-39 -67 -106 -107 -183 -107c-86 0 -132 56 -133 124c0 129 136 196 315 189l3 19c8 46 -10 111 -92 111c-49 0 -89 -15 -126 -40l-17 56c50 33 106 47 153 47c78 0 127 -37 138 -102h3 +c41 68 113 102 183 102c94 0 139 -58 139 -116c0 -135 -150 -152 -321 -146c-7 -39 -9 -77 5 -112c18 -43 59 -65 110 -65c65 0 100 17 131 33zM301 189l10 54c-85 4 -221 -15 -221 -119c0 -43 28 -69 71 -69c60 0 123 45 140 134zM623 373c0 30 -25 58 -71 58 +c-85 0 -141 -81 -157 -137c120 -4 228 1 228 79zM469 686h99l-133 -143h-65z" /> + <glyph glyph-name="space_uni0326" unicode="&#xf6c3;" +d="M49 -221l-10 41c41 7 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59c0 -78 -77 -114 -147 -120z" /> + <glyph glyph-name="acute.cap" unicode="&#xf6c9;" +d="M334 828h109l-137 -118h-74z" /> + <glyph glyph-name="breve.cap" unicode="&#xefee;" +d="M182 835h52c0 -28 15 -54 61 -54s68 24 76 54h54c-10 -57 -52 -106 -133 -106c-87 0 -117 49 -110 106z" /> + <glyph glyph-name="caron.cap" unicode="&#xf6ca;" +d="M317 710h-65l-80 118h69l47 -72h3l72 72h74z" /> + <glyph glyph-name="cedilla.cap" unicode="&#xeff2;" +d="M133 2h53l-39 -53c33 -8 54 -32 54 -64c0 -58 -55 -86 -108 -86c-28 0 -53 8 -66 18l18 42c14 -9 32 -14 50 -14c23 0 44 11 44 35c0 21 -21 35 -65 39z" /> + <glyph glyph-name="circumflex.cap" unicode="&#xeff7;" +d="M269 828h65l80 -118h-68l-49 72h-2l-72 -72h-74z" /> + <glyph glyph-name="space_uni0326.cap" unicode="&#xf634;" +d="M49 -221l-10 41c41 7 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59c0 -78 -77 -114 -147 -120z" /> + <glyph glyph-name="dieresis.cap" unicode="&#xf6cb;" +d="M198 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53zM382 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="dotaccent.cap" unicode="&#xefed;" +d="M291 720c-26 0 -47 22 -47 49c0 28 23 53 52 53s48 -24 48 -49c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="grave.cap" unicode="&#xf6ce;" +d="M152 828h103l75 -117h-68z" /> + <glyph glyph-name="hungarumlaut.cap" unicode="&#xf6cf;" +d="M268 828h95l-127 -113h-64zM416 828h95l-127 -113h-64z" /> + <glyph glyph-name="macron.cap" unicode="&#xf6d0;" +d="M181 787h231l-10 -54h-231z" /> + <glyph glyph-name="ogonek.cap" unicode="&#xeff1;" +d="M137 1h62c-36 -28 -74 -74 -74 -111c0 -23 14 -37 38 -37c16 0 31 4 44 10l9 -45c-25 -17 -53 -24 -81 -24c-49 0 -78 29 -78 72c0 59 53 112 80 135z" /> + <glyph glyph-name="ring.cap" unicode="&#xeff3;" +d="M299 873c55 0 94 -34 94 -87c-1 -56 -47 -91 -103 -91c-54 0 -93 34 -94 83c-1 55 42 95 103 95zM294 837c-28 0 -47 -24 -47 -56c0 -27 18 -50 45 -50c29 0 49 23 49 54c0 30 -17 52 -47 52z" /> + <glyph glyph-name="tilde.cap" unicode="&#xeff5;" +d="M210 716h-47c10 59 41 100 82 100c27 0 42 -9 60 -21c15 -10 29 -18 44 -18c16 0 26 13 34 40h46c-11 -62 -38 -96 -83 -96c-25 0 -40 8 -59 20c-17 10 -27 19 -43 18c-16 0 -27 -16 -34 -43z" /> + <glyph glyph-name="Alpha" unicode="&#x391;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123z" /> + <glyph glyph-name="Beta" unicode="&#x392;" horiz-adv-x="518" +d="M33 5l123 660c42 8 90 14 145 14c69 0 120 -14 155 -46c32 -26 49 -61 49 -105c0 -86 -69 -149 -144 -169v-2c60 -18 110 -69 110 -150c0 -69 -36 -124 -80 -157c-54 -40 -128 -55 -219 -55c-58 0 -108 4 -139 10zM228 607l-42 -219h62c97 0 171 50 171 132 +c0 65 -49 93 -122 93c-31 0 -56 -2 -69 -6zM173 325l-47 -259c21 -3 45 -4 68 -4c98 0 190 41 190 149c0 79 -67 114 -143 114h-68z" /> + <glyph glyph-name="Gamma" unicode="&#x393;" horiz-adv-x="436" +d="M159 674h347l-14 -71h-263l-114 -603h-84z" /> + <glyph glyph-name="uni0394" unicode="&#x394;" horiz-adv-x="596" +d="M-22 0l8 50l346 624h96l116 -624l-9 -50h-557zM84 69h372l-67 368c-8 48 -18 114 -24 158h-3c-16 -35 -46 -91 -71 -140z" /> + <glyph glyph-name="Epsilon" unicode="&#x395;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245z" /> + <glyph glyph-name="Zeta" unicode="&#x396;" horiz-adv-x="523" +d="M-20 0l9 51l458 549l-1 3h-320l14 71h432l-11 -54l-454 -546l1 -3h354l-13 -71h-469z" /> + <glyph glyph-name="Eta" unicode="&#x397;" horiz-adv-x="627" +d="M159 674h83l-54 -284h310l54 284h83l-128 -674h-83l59 317h-309l-60 -317h-83z" /> + <glyph glyph-name="Theta" unicode="&#x398;" horiz-adv-x="668" +d="M303 -11c-174 0 -255 131 -255 274c0 117 45 242 122 323c59 61 144 99 232 99c182 0 255 -132 255 -276c0 -114 -41 -239 -116 -319c-60 -63 -142 -101 -238 -101zM316 59c143 0 254 183 254 346c0 96 -32 210 -179 210c-151 0 -256 -190 -256 -345 +c0 -110 49 -211 181 -211zM225 382h269l-11 -68h-269z" /> + <glyph glyph-name="Iota" unicode="&#x399;" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83z" /> + <glyph glyph-name="Kappa" unicode="&#x39a;" horiz-adv-x="515" +d="M31 0l128 674h82l-62 -328l4 1c24 28 46 52 67 75l237 252h104l-284 -290l173 -384h-90l-147 331l-81 -75l-49 -256h-82z" /> + <glyph glyph-name="Lambda" unicode="&#x39b;" horiz-adv-x="569" +d="M514 0h-86l-62 464c-5 46 -8 87 -11 130h-2c-17 -44 -36 -85 -57 -129l-234 -465h-89l348 674h99z" /> + <glyph glyph-name="Mu" unicode="&#x39c;" horiz-adv-x="780" +d="M676 0h-80l48 364c9 64 24 163 36 228h-3c-31 -68 -69 -148 -105 -217l-201 -371h-63l-50 363c-10 78 -17 156 -21 225h-3c-14 -62 -35 -164 -51 -228l-92 -364h-78l175 674h106l53 -386c7 -58 14 -119 16 -169h3c21 50 50 110 79 166l208 389h109z" /> + <glyph glyph-name="Nu" unicode="&#x39d;" horiz-adv-x="632" +d="M109 0h-78l128 674h91l154 -382c30 -76 45 -130 59 -188l2 1c4 61 11 117 29 211l68 358h78l-128 -674h-82l-154 381c-32 83 -47 130 -62 194l-3 -1c-7 -63 -18 -130 -35 -222z" /> + <glyph glyph-name="Xi" unicode="&#x39e;" horiz-adv-x="534" +d="M132 674h434l-12 -70h-434zM113 384h367l-12 -70h-367zM12 71h455l-12 -71h-455z" /> + <glyph glyph-name="Omicron" unicode="&#x39f;" horiz-adv-x="668" +d="M303 -11c-174 0 -255 131 -255 274c0 116 45 242 122 324c58 60 144 98 232 98c182 0 255 -132 255 -276c0 -114 -41 -239 -116 -319c-60 -64 -142 -101 -238 -101zM316 59c143 0 254 183 254 346c0 96 -31 210 -179 210c-151 0 -256 -190 -256 -345 +c0 -110 49 -211 181 -211z" /> + <glyph glyph-name="Pi" unicode="&#x3a0;" horiz-adv-x="621" +d="M629 674l-127 -674h-83l114 604h-305l-114 -604h-83l128 674h470z" /> + <glyph glyph-name="Rho" unicode="&#x3a1;" horiz-adv-x="507" +d="M31 0l127 664c37 9 91 15 146 15c65 0 127 -16 165 -52c32 -29 49 -69 49 -122c0 -75 -37 -139 -81 -176c-52 -44 -128 -64 -204 -64c-26 0 -48 2 -69 5l-51 -270h-82zM227 605l-50 -265c23 -5 43 -7 67 -7c114 0 190 71 190 166c0 81 -57 113 -134 113 +c-33 0 -58 -3 -73 -7z" /> + <glyph glyph-name="Sigma" unicode="&#x3a3;" horiz-adv-x="534" +d="M112 75v-4h373l-12 -71h-488l8 53l285 286l-170 276l9 59h443l-12 -70h-337l-1 -3l164 -267z" /> + <glyph glyph-name="Tau" unicode="&#x3a4;" horiz-adv-x="474" +d="M148 0l114 602h-197l14 72h478l-14 -72h-198l-114 -602h-83z" /> + <glyph glyph-name="Upsilon" unicode="&#x3a5;" horiz-adv-x="544" +d="M67 611l19 69c44 -4 105 -39 140 -90c39 -56 68 -142 62 -248h4c37 108 102 196 161 249c56 51 119 82 158 89l8 -72c-72 -28 -200 -123 -279 -297c-17 -40 -33 -81 -43 -138l-32 -173h-83l32 174c9 50 13 96 11 136c-7 184 -82 280 -158 301z" /> + <glyph glyph-name="Phi" unicode="&#x3a6;" horiz-adv-x="691" +d="M256 -26l11 54c-119 12 -219 102 -219 253c0 237 190 370 336 369l11 50h78l-10 -50c119 -11 217 -103 217 -255c0 -227 -173 -364 -335 -367l-10 -54h-79zM279 91l93 496c-104 -1 -239 -118 -239 -302c0 -110 61 -183 146 -194zM450 587l-92 -496c136 6 238 142 238 303 +c0 113 -63 184 -146 193z" /> + <glyph glyph-name="Chi" unicode="&#x3a7;" horiz-adv-x="521" +d="M466 0h-88l-64 167c-18 45 -32 83 -43 118h-2c-21 -32 -45 -69 -79 -116l-121 -169h-99l263 343l-126 331h87l64 -173c15 -40 25 -71 34 -102h3c21 33 44 68 68 102l129 173h99l-260 -330z" /> + <glyph glyph-name="Psi" unicode="&#x3a8;" horiz-adv-x="647" +d="M686 674l-39 -206c-31 -166 -131 -257 -291 -262l-38 -206h-80l39 206c-91 7 -200 54 -200 196c0 28 3 51 9 83l35 189h81l-35 -189c-5 -30 -8 -57 -8 -74c0 -87 41 -130 130 -138l75 401h79l-75 -401c99 5 172 57 200 208l37 193h81z" /> + <glyph glyph-name="uni03A9" unicode="&#x3a9;" horiz-adv-x="680" +d="M145 66l1 4c-48 47 -91 132 -91 229c0 216 151 386 349 386c165 0 263 -120 263 -266c0 -164 -99 -289 -186 -349v-4h136l-12 -66h-245l9 55c96 56 210 185 210 355c0 105 -59 207 -183 207c-159 0 -255 -169 -255 -322c0 -115 46 -198 102 -240l-10 -55h-244l12 66h144z +" /> + <glyph glyph-name="Alphatonos" unicode="&#x386;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM103 674h78l-48 -155h-50z" /> + <glyph glyph-name="Epsilontonos" unicode="&#x388;" horiz-adv-x="491" +d="M453 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245zM34 674h79l-48 -155h-50z" /> + <glyph glyph-name="Etatonos" unicode="&#x389;" horiz-adv-x="647" +d="M179 674h83l-54 -284h310l54 284h83l-128 -674h-83l59 317h-309l-60 -317h-83zM34 674h78l-48 -155h-50z" /> + <glyph glyph-name="Iotatonos" unicode="&#x38a;" horiz-adv-x="254" +d="M179 674h83l-128 -674h-83zM37 674h78l-48 -155h-49z" /> + <glyph glyph-name="Iotadieresis" unicode="&#x3aa;" horiz-adv-x="233" +d="M113 711c-26 0 -46 20 -46 48c0 29 23 53 52 53s47 -22 47 -49c0 -29 -21 -52 -53 -52zM297 711c-26 0 -46 20 -46 48c0 29 23 53 52 53s47 -22 47 -49c0 -29 -21 -52 -53 -52zM158 674h83l-129 -674h-82z" /> + <glyph glyph-name="Omicrontonos" unicode="&#x38c;" horiz-adv-x="683" +d="M318 -11c-174 0 -255 131 -255 274c0 116 45 242 122 324c58 60 144 98 232 98c182 0 255 -132 255 -276c0 -114 -41 -239 -116 -319c-60 -64 -142 -101 -238 -101zM331 59c143 0 254 183 254 346c0 96 -31 210 -179 210c-151 0 -256 -190 -256 -345 +c0 -110 49 -211 181 -211zM32 674h78l-48 -155h-50z" /> + <glyph glyph-name="Upsilontonos" unicode="&#x38e;" horiz-adv-x="602" +d="M124 611l19 69c44 -4 105 -39 140 -90c39 -56 68 -142 62 -248h4c37 108 102 196 161 249c56 51 119 82 158 89l8 -72c-72 -28 -200 -123 -279 -297c-17 -40 -33 -80 -43 -138l-32 -173h-83l32 174c9 50 13 96 11 136c-7 184 -82 280 -158 301zM18 674h79l-49 -155h-49z +" /> + <glyph glyph-name="Upsilondieresis" unicode="&#x3ab;" horiz-adv-x="544" +d="M259 703c-26 0 -46 21 -46 48c0 30 23 53 52 53s47 -22 47 -48c0 -30 -21 -53 -53 -53zM443 703c-26 0 -46 21 -46 48c0 30 23 53 52 53s47 -22 47 -48c0 -30 -21 -53 -53 -53zM66 611l20 69c44 -4 105 -39 140 -90c39 -56 68 -142 62 -248h4c37 108 102 196 161 249 +c55 51 119 82 158 89l8 -72c-72 -28 -200 -123 -279 -297c-17 -40 -33 -81 -43 -138l-32 -173h-83l32 174c9 50 13 96 11 136c-7 184 -82 280 -159 301z" /> + <glyph glyph-name="Omegatonos" unicode="&#x38f;" horiz-adv-x="697" +d="M162 66l1 4c-48 47 -91 132 -91 229c0 216 151 386 349 386c165 0 263 -120 263 -266c0 -165 -98 -289 -186 -349v-4h136l-12 -66h-245l9 55c96 56 210 185 210 355c0 105 -59 207 -183 207c-159 0 -255 -169 -255 -322c0 -115 46 -198 102 -240l-10 -55h-244l12 66h144z +M36 674h78l-48 -155h-49z" /> + <glyph glyph-name="alpha" unicode="&#x3b1;" horiz-adv-x="541" +d="M369 90h-3c-38 -60 -99 -101 -175 -101c-95 0 -158 69 -158 177c0 186 127 329 255 329c77 0 118 -43 132 -96h4c10 38 17 62 25 85h70c-7 -23 -18 -70 -28 -114c-16 -73 -33 -154 -45 -219c-14 -68 -6 -96 29 -96l-17 -63c-7 -2 -15 -3 -26 -3c-40 0 -68 30 -63 101z +M118 177c0 -69 35 -121 102 -121c64 0 121 66 146 130c9 21 13 40 18 68c4 19 6 40 6 58c0 61 -34 117 -100 117c-85 0 -172 -116 -172 -252z" /> + <glyph glyph-name="beta" unicode="&#x3b2;" horiz-adv-x="533" +d="M84 -198h-78c-7 31 2 101 16 173l85 460c25 134 67 199 109 235c39 33 79 51 136 51c88 0 148 -62 148 -147c0 -88 -52 -158 -114 -185l-1 -5c61 -14 114 -76 114 -164c0 -153 -123 -231 -226 -231c-67 0 -118 23 -153 65h-2l-13 -71c-10 -56 -25 -139 -21 -181zM258 346 +l10 58c6 0 13 0 19 1c82 7 133 74 133 154c0 57 -30 95 -80 95c-75 0 -124 -71 -149 -208l-58 -310c18 -38 63 -82 132 -82c74 0 149 63 149 161c0 78 -54 128 -130 131h-26z" /> + <glyph glyph-name="gamma" unicode="&#x3b3;" horiz-adv-x="439" +d="M168 -198h-83c16 76 39 178 36 267c-4 140 -60 329 -97 415h92c31 -69 75 -229 77 -378h4c63 90 142 223 164 343c2 11 4 25 4 35h82c1 -9 0 -24 -3 -39c-22 -120 -108 -273 -230 -415c-8 -10 -10 -16 -12 -27c-9 -58 -22 -133 -34 -201z" /> + <glyph glyph-name="delta" unicode="&#x3b4;" horiz-adv-x="522" +d="M491 649l-34 -50c-26 29 -75 59 -125 59c-42 0 -62 -22 -62 -46c0 -27 24 -48 58 -80l68 -64c58 -56 94 -118 94 -201c0 -137 -101 -278 -258 -278c-113 0 -200 80 -200 206c0 152 112 252 222 297v4l-19 21c-21 23 -49 53 -49 95c0 56 54 109 139 109 +c87 0 140 -42 166 -72zM339 409l-42 41c-85 -38 -180 -123 -180 -250c0 -94 59 -148 126 -148c88 0 162 95 162 205c0 56 -14 103 -66 152z" /> + <glyph glyph-name="epsilon" unicode="&#x3b5;" horiz-adv-x="406" +d="M321 227h-63c-79 0 -150 -31 -150 -98c0 -47 48 -74 113 -74c54 0 112 19 140 33l7 -61c-36 -22 -108 -38 -169 -38c-96 0 -180 37 -180 127c0 77 65 133 135 143v5c-54 13 -81 48 -81 91c0 69 75 139 203 139c56 0 107 -14 130 -34l-22 -54c-16 9 -55 26 -109 26 +c-73 0 -118 -35 -118 -79c0 -45 50 -67 123 -67h51z" /> + <glyph glyph-name="zeta" unicode="&#x3b6;" horiz-adv-x="392" +d="M451 708l3 -59c-147 -82 -329 -271 -329 -436c0 -77 34 -118 104 -143c31 -15 75 -22 122 -28c5 -1 7 -4 7 -9c0 -37 -50 -136 -89 -177l-54 18c16 22 46 82 53 111c-25 4 -60 10 -98 25c-74 29 -132 85 -132 189c0 162 153 350 301 443v3h-72c-45 0 -81 2 -108 12l17 56 +c28 -5 71 -5 116 -5h159z" /> + <glyph glyph-name="eta" unicode="&#x3b7;" horiz-adv-x="534" +d="M178 389h2c43 68 109 106 179 106c57 0 123 -33 123 -134c0 -22 -4 -53 -9 -78l-56 -298c-11 -58 -26 -143 -22 -183h-78c-8 22 4 113 16 180l57 298c3 18 6 41 6 62c0 48 -19 84 -76 84c-59 0 -143 -71 -165 -191l-43 -235h-84l65 343c10 54 18 106 13 141h74 +c5 -21 5 -48 -2 -95z" /> + <glyph glyph-name="theta" unicode="&#x3b8;" horiz-adv-x="516" +d="M222 -11c-108 0 -178 82 -178 238c0 45 6 106 21 174c38 172 129 320 273 320c110 0 172 -94 172 -226c0 -47 -5 -98 -14 -146c-40 -204 -124 -360 -274 -360zM149 398h271c7 39 8 72 8 103c0 90 -32 157 -100 157c-93 0 -154 -122 -179 -260zM408 335h-271 +c-7 -45 -11 -84 -11 -118c0 -105 41 -165 104 -165c91 0 147 116 178 283z" /> + <glyph glyph-name="iota" unicode="&#x3b9;" horiz-adv-x="229" +d="M200 484l-69 -367c-9 -45 -2 -62 33 -60l-16 -63c-8 -3 -21 -5 -35 -5c-40 0 -70 18 -71 78c1 24 9 60 18 110l58 307h82z" /> + <glyph glyph-name="kappa" unicode="&#x3ba;" horiz-adv-x="461" +d="M243 261v-3c54 -16 83 -70 117 -136l60 -122h-91l-50 103c-35 66 -64 113 -116 113h-12l-40 -216h-82l70 377c7 39 13 89 9 107h78c5 -11 7 -43 -1 -85l-24 -130h5c95 87 169 158 231 215h96v-4c-72 -65 -149 -131 -250 -219z" /> + <glyph glyph-name="lambda" unicode="&#x3bb;" horiz-adv-x="437" +d="M311 0l-48 282c-4 28 -10 63 -14 95l-5 1c-11 -26 -27 -63 -43 -95l-144 -283h-88l242 452c7 12 10 22 10 28c0 5 0 12 -2 21c-16 86 -38 150 -99 151h-14l16 64c9 2 20 3 31 2c90 -3 119 -81 148 -223l95 -495h-85z" /> + <glyph glyph-name="uni03BC" unicode="&#x3bc;" horiz-adv-x="525" +d="M196 484l-54 -287c-16 -84 7 -138 81 -138c51 0 98 53 124 102c10 18 17 39 21 59l50 264h83l-65 -344c-12 -63 -3 -82 28 -84l-18 -64c-9 -2 -13 -3 -27 -3c-39 0 -67 24 -63 100h-3c-29 -52 -81 -98 -146 -98c-43 0 -81 19 -98 58l-11 -65c-10 -53 -24 -141 -21 -182 +h-74c-6 28 1 100 16 179l95 503h82z" /> + <glyph glyph-name="nu" unicode="&#x3bd;" horiz-adv-x="440" +d="M36 484h87c13 -87 27 -178 41 -267c6 -49 11 -87 17 -132h4c61 91 151 234 176 346c4 21 7 38 7 53h81c0 -11 0 -26 -3 -42c-23 -130 -129 -293 -247 -442h-79c-27 161 -56 325 -84 484z" /> + <glyph glyph-name="xi" unicode="&#x3be;" horiz-adv-x="418" +d="M372 372h-28c-138 0 -224 -74 -224 -171c0 -71 44 -112 133 -136c43 -12 88 -20 126 -23c5 -1 7 -4 7 -10c0 -37 -56 -142 -89 -175l-55 18c16 22 47 83 54 111c-29 3 -73 12 -109 23c-75 25 -155 76 -155 179c0 119 97 200 185 221v5c-53 19 -92 67 -92 126 +c0 92 84 181 222 181c55 0 100 -14 122 -31l-23 -55c-18 12 -54 24 -97 24c-87 0 -140 -54 -140 -122c0 -66 57 -100 135 -103c9 -1 22 -1 38 -1z" /> + <glyph glyph-name="omicron" unicode="&#x3bf;" horiz-adv-x="522" +d="M223 -11c-121 0 -189 90 -189 199c0 160 111 307 268 307c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305zM234 55c98 0 172 126 172 239c0 56 -26 135 -113 135c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136z" /> + <glyph glyph-name="rho" unicode="&#x3c1;" horiz-adv-x="537" +d="M79 -198h-77c-4 28 3 92 19 177l40 221c24 126 60 187 104 229c44 43 96 66 165 66c111 0 178 -85 178 -193c0 -173 -117 -313 -252 -313c-58 0 -113 26 -135 73h-3l-14 -79c-11 -57 -26 -141 -25 -181zM149 226l-5 -27c-2 -11 -3 -24 -3 -38c0 -44 38 -106 112 -106 +c89 0 170 106 170 242c0 68 -35 130 -109 130c-71 0 -138 -60 -165 -201z" /> + <glyph glyph-name="sigma" unicode="&#x3c3;" horiz-adv-x="538" +d="M422 439l-1 -5c53 -33 69 -107 69 -148c0 -140 -104 -297 -265 -297c-123 0 -191 90 -191 199c0 160 112 307 268 307h111h54h93l-10 -65c-22 0 -69 2 -128 9zM234 55c98 0 172 127 172 239c0 57 -26 135 -112 135c-105 0 -174 -127 -174 -238c0 -78 44 -136 114 -136z +" /> + <glyph glyph-name="tau" unicode="&#x3c4;" horiz-adv-x="388" +d="M264 58l-12 -62c-10 -4 -27 -7 -42 -7c-60 0 -93 34 -93 99c0 18 4 43 8 66l49 264h-48c-52 0 -78 -4 -101 -8v49c19 12 54 25 134 25h261l-17 -66h-147l-49 -271c-4 -19 -5 -32 -5 -43c0 -36 18 -47 42 -47c8 0 14 0 20 1z" /> + <glyph glyph-name="upsilon" unicode="&#x3c5;" horiz-adv-x="501" +d="M382 484h78c7 -17 12 -50 12 -88c0 -178 -77 -407 -266 -407c-89 0 -158 55 -158 153c0 18 3 39 8 60l22 117c16 86 23 138 20 165h78c6 -10 7 -44 -2 -89l-34 -186c-4 -19 -7 -40 -7 -54c0 -66 45 -97 87 -97c103 0 170 163 170 344c0 39 -4 69 -8 82z" /> + <glyph glyph-name="phi" unicode="&#x3c6;" horiz-adv-x="613" +d="M234 50l54 297c19 101 68 148 137 148c83 0 158 -76 158 -192c0 -192 -138 -311 -284 -314l-36 -187h-76l35 187c-95 12 -187 80 -187 209c0 178 132 275 200 297l29 -45c-52 -25 -147 -106 -147 -243c0 -76 36 -141 117 -157zM368 365l-58 -315c106 7 191 111 191 248 +c0 71 -33 134 -82 134c-26 0 -43 -22 -51 -67z" /> + <glyph glyph-name="chi" unicode="&#x3c7;" horiz-adv-x="423" +d="M47 484h87l47 -156c11 -36 21 -73 30 -110h5c20 34 39 67 66 109c32 52 65 104 98 157h86c-75 -112 -150 -224 -224 -335l111 -342l-79 -20l-50 159c-14 46 -27 90 -41 139h-5c-17 -28 -36 -61 -60 -100c-41 -65 -82 -133 -123 -198l-70 27c77 117 152 230 229 346z" /> + <glyph glyph-name="psi" unicode="&#x3c8;" horiz-adv-x="624" +d="M505 484h77c8 -19 14 -49 14 -91c0 -230 -113 -397 -291 -404l-35 -187h-77l35 187c-96 7 -174 61 -174 180c0 22 2 49 8 77l23 127c8 42 14 87 12 111h76c5 -11 5 -43 -3 -87l-28 -149c-4 -28 -7 -52 -7 -76c2 -82 48 -117 105 -121l104 560h77l-104 -560 +c91 1 198 114 198 345c0 45 -6 76 -10 88z" /> + <glyph glyph-name="omega" unicode="&#x3c9;" horiz-adv-x="676" +d="M515 490h75c27 -29 52 -95 52 -170c0 -185 -100 -331 -219 -331c-62 0 -100 33 -113 87h-3c-28 -51 -68 -87 -134 -87c-73 0 -140 59 -140 182c0 149 82 276 133 319h83l-1 -2c-54 -49 -131 -169 -131 -310c0 -82 37 -119 76 -119c46 0 83 52 95 122l32 180h78l-32 -163 +c-4 -23 -7 -42 -7 -57c0 -36 17 -82 67 -82c64 0 134 120 134 264c0 70 -18 132 -46 165z" /> + <glyph glyph-name="uni03C2" unicode="&#x3c2;" horiz-adv-x="410" +d="M277 -143l-55 18c17 23 46 82 53 110c-24 4 -65 13 -96 24c-66 24 -145 81 -145 195c0 150 119 290 283 290c47 0 83 -10 106 -24l-24 -60c-23 11 -48 18 -83 18c-105 0 -196 -89 -196 -215c0 -81 47 -123 117 -146c40 -13 75 -20 118 -26c6 -1 8 -5 8 -11 +c0 -42 -54 -139 -86 -173z" /> + <glyph glyph-name="alphatonos" unicode="&#x3ac;" horiz-adv-x="541" +d="M363 686h99l-133 -143h-65zM369 90h-3c-38 -60 -99 -101 -175 -101c-95 0 -158 69 -158 177c0 186 127 329 255 329c77 0 118 -43 132 -96h4c10 38 17 62 25 85h70c-7 -23 -18 -70 -28 -114c-16 -73 -33 -154 -45 -219c-14 -68 -6 -96 29 -96l-17 -63 +c-7 -2 -15 -3 -26 -3c-40 0 -68 30 -63 101zM118 177c0 -69 35 -121 102 -121c64 0 121 66 146 130c9 21 13 40 18 68c4 19 6 40 6 58c0 61 -34 117 -100 117c-85 0 -172 -116 -172 -252z" /> + <glyph glyph-name="epsilontonos" unicode="&#x3ad;" horiz-adv-x="406" +d="M301 686h99l-133 -143h-65zM321 227h-63c-79 0 -150 -31 -150 -98c0 -47 48 -74 113 -74c54 0 112 19 140 33l7 -59c-36 -23 -110 -40 -169 -40c-96 0 -180 37 -180 127c0 77 65 133 135 143v5c-54 13 -81 48 -81 91c0 69 75 139 203 139c56 0 107 -14 130 -34l-22 -54 +c-16 9 -55 26 -109 26c-73 0 -118 -35 -118 -79c0 -45 50 -67 123 -67h51z" /> + <glyph glyph-name="etatonos" unicode="&#x3ae;" horiz-adv-x="534" +d="M371 686h99l-133 -143h-65zM178 389h2c43 68 109 106 179 106c57 0 123 -33 123 -134c0 -22 -4 -53 -9 -78l-56 -298c-11 -58 -26 -142 -22 -183h-78c-8 22 4 113 16 180l57 298c3 18 6 41 6 62c0 48 -19 84 -76 84c-59 0 -143 -71 -165 -191l-44 -235h-83l65 343 +c10 54 18 106 13 141h74c5 -21 5 -48 -2 -95z" /> + <glyph glyph-name="iotatonos" unicode="&#x3af;" horiz-adv-x="229" +d="M230 686h98l-133 -143h-64zM200 484l-70 -367c-8 -45 -2 -62 34 -60l-17 -63c-8 -3 -20 -5 -35 -5c-39 0 -70 18 -70 78c0 23 8 61 16 104l59 313h83z" /> + <glyph glyph-name="iotadieresis" unicode="&#x3ca;" horiz-adv-x="229" +d="M79 557c-26 0 -46 21 -46 48c0 30 23 53 51 53c29 0 48 -22 48 -48c0 -30 -22 -53 -53 -53zM262 557c-26 0 -46 21 -46 48c0 30 23 53 52 53s47 -22 47 -48c0 -30 -21 -53 -53 -53zM200 484l-70 -367c-8 -44 -1 -62 34 -60l-17 -63c-7 -3 -20 -5 -34 -5 +c-40 0 -71 19 -71 77c0 23 8 62 16 105l60 313h82z" /> + <glyph glyph-name="omicrontonos" unicode="&#x3cc;" horiz-adv-x="522" +d="M354 686h99l-133 -143h-64zM223 -11c-121 0 -189 90 -189 199c0 160 111 307 268 307c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305zM234 55c98 0 172 126 172 239c0 56 -26 135 -113 135c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136z" /> + <glyph glyph-name="upsilontonos" unicode="&#x3cd;" horiz-adv-x="501" +d="M328 686h99l-133 -143h-65zM382 484h78c7 -17 12 -49 12 -87c0 -179 -79 -408 -268 -408c-89 0 -156 55 -156 154c0 17 4 38 8 59l22 117c16 85 23 138 20 165h78c6 -10 7 -44 -2 -89l-34 -186c-4 -22 -7 -40 -7 -54c0 -66 44 -97 86 -97c103 0 171 165 171 344 +c0 39 -4 69 -8 82z" /> + <glyph glyph-name="upsilondieresis" unicode="&#x3cb;" horiz-adv-x="501" +d="M199 557c-26 0 -46 21 -46 48c0 30 23 53 52 53s47 -22 47 -48c0 -30 -21 -53 -53 -53zM382 557c-26 0 -46 21 -46 48c0 30 23 53 52 53s47 -22 47 -48c0 -30 -21 -53 -53 -53zM381 484h79c7 -17 12 -49 12 -87c0 -179 -79 -408 -268 -408c-89 0 -156 54 -156 154 +c0 17 3 37 8 59l22 117c16 85 23 138 20 165h78c6 -10 7 -44 -2 -89l-34 -186c-4 -21 -7 -41 -7 -54c0 -66 44 -97 86 -97c103 0 171 165 171 344c0 39 -4 69 -9 82z" /> + <glyph glyph-name="omegatonos" unicode="&#x3ce;" horiz-adv-x="676" +d="M439 686h99l-133 -143h-64zM515 490h75c27 -29 52 -95 52 -170c0 -185 -100 -331 -219 -331c-62 0 -100 33 -113 87h-3c-28 -51 -68 -87 -134 -87c-73 0 -140 59 -140 182c0 149 82 276 133 319h83l-1 -2c-54 -49 -131 -169 -131 -310c0 -82 37 -119 76 -119 +c46 0 83 52 95 122l32 180h78l-32 -163c-4 -23 -7 -42 -7 -57c0 -36 16 -82 67 -82c63 0 134 120 134 264c0 70 -18 132 -46 165z" /> + <glyph glyph-name="iotadieresistonos" unicode="&#x390;" horiz-adv-x="229" +d="M200 484l-70 -368c-8 -44 -1 -61 34 -59l-17 -63c-7 -3 -20 -5 -34 -5c-40 0 -71 19 -71 78c0 24 8 61 17 105l59 312h82zM187 693h80l-96 -154h-48zM64 560c-24 0 -42 19 -42 44c0 27 21 48 47 48s42 -20 42 -44c0 -27 -19 -48 -47 -48zM306 560c-24 0 -42 19 -42 44 +c0 27 21 48 47 48c27 0 43 -20 43 -44c0 -27 -19 -48 -48 -48z" /> + <glyph glyph-name="upsilondieresistonos" unicode="&#x3b0;" horiz-adv-x="501" +d="M382 484h78c7 -17 12 -49 12 -87c0 -179 -79 -408 -268 -408c-89 0 -156 55 -156 154c0 16 4 38 8 59l22 117c16 85 23 138 20 165h78c6 -10 7 -44 -2 -89l-34 -186c-4 -20 -7 -40 -7 -54c0 -66 44 -97 86 -97c103 0 171 165 171 344c0 39 -4 69 -8 82zM296 693h80 +l-96 -154h-49zM172 560c-24 0 -42 19 -42 44c0 27 21 48 47 48c27 0 43 -20 43 -44c0 -27 -19 -48 -48 -48zM415 560c-24 0 -42 19 -42 44c0 27 21 48 47 48c27 0 43 -20 43 -44c0 -27 -19 -48 -48 -48z" /> + <glyph glyph-name="uni037E" unicode="&#x37e;" horiz-adv-x="214" +d="M32 -116l-64 -7c28 60 70 166 88 237l98 3c-32 -76 -90 -186 -122 -233zM143 324c-34 0 -57 27 -57 61c0 38 27 70 66 70c35 0 58 -27 58 -63c0 -37 -27 -68 -67 -68z" /> + <glyph glyph-name="anoteleia" unicode="&#x387;" horiz-adv-x="214" +d="M116 255c-33 0 -56 27 -56 61c0 38 27 69 65 69c35 0 57 -26 57 -62c0 -38 -26 -68 -66 -68z" /> + <glyph glyph-name="tonos" unicode="&#x384;" horiz-adv-x="360" +d="M300 686h99l-133 -143h-64z" /> + <glyph glyph-name="dieresistonos" unicode="&#x385;" horiz-adv-x="346" +d="M231 702h81l-96 -154h-49zM108 569c-25 0 -43 19 -43 45c0 27 21 49 48 49s43 -21 43 -45c0 -27 -19 -49 -48 -49zM351 569c-25 0 -43 19 -43 45c0 27 21 49 48 49s43 -21 43 -45c0 -27 -19 -49 -48 -49z" /> + <glyph glyph-name="dieresis_acutecomb" unicode="&#xf6d7;" +d="M147 575c-20 0 -42 13 -42 43c0 27 22 49 49 49c29 0 42 -20 42 -42c0 -32 -25 -50 -49 -50zM273 687h84l-112 -139h-54zM393 574c-20 0 -42 13 -42 43c0 28 22 50 49 50c29 0 42 -21 42 -43c0 -31 -25 -50 -49 -50z" /> + <glyph glyph-name="dieresis_gravecomb" unicode="&#xf6d8;" +d="M134 575c-21 0 -42 13 -42 43c0 27 22 49 49 49c28 0 41 -21 41 -42c0 -32 -24 -50 -48 -50zM178 687h82l76 -139h-53zM377 574c-20 0 -42 13 -42 43c0 27 22 49 49 49c29 0 42 -21 42 -42c0 -31 -25 -50 -49 -50z" /> + <glyph glyph-name="space_uni030F" unicode="&#xf6d6;" +d="M67 674h90l86 -136h-56zM224 674h90l86 -136h-56z" /> + <glyph glyph-name="dieresis_acutecomb.cap" unicode="&#xf6cc;" +d="M182 724c-21 0 -42 13 -42 43c0 27 22 49 49 49c29 0 42 -21 42 -42c0 -32 -25 -50 -49 -50zM316 827h96l-122 -117h-67zM448 724c-21 0 -42 13 -42 43c0 27 22 49 49 49c29 0 42 -21 42 -42c0 -32 -25 -50 -49 -50z" /> + <glyph glyph-name="dieresis_gravecomb.cap" unicode="&#xf6cd;" +d="M156 724c-20 0 -41 13 -41 43c0 27 22 49 49 49c29 0 42 -21 42 -42c0 -32 -25 -50 -50 -50zM201 827h97l91 -116h-64zM423 724c-20 0 -42 13 -42 43c0 27 22 49 49 49c29 0 42 -21 42 -42c0 -32 -25 -50 -49 -50z" /> + <glyph glyph-name="space_uni030F.cap" unicode="&#xf6d3;" horiz-adv-x="387" +d="M103 823h96l94 -112h-63zM260 823h96l94 -112h-64z" /> + <glyph glyph-name="o.superior" horiz-adv-x="345" +d="M231 591c91 0 136 -63 136 -136c0 -110 -78 -194 -181 -194c-87 0 -134 65 -134 133c0 113 81 197 179 197zM223 541c-58 0 -104 -70 -104 -146c0 -54 31 -85 73 -85c56 0 107 62 107 149c0 37 -15 82 -76 82z" /> + <glyph glyph-name="uni0401" unicode="&#x401;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-47 -246h277l-14 -71h-359l128 674h344l-14 -71h-261l-41 -216h246zM252 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53zM437 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53z +" /> + <glyph glyph-name="uni0402" unicode="&#x402;" horiz-adv-x="635" +d="M80 674h495l-15 -72h-231l-36 -190h2c29 19 77 37 125 37c108 0 173 -84 173 -209c0 -107 -38 -215 -105 -283c-57 -59 -123 -86 -177 -95l-15 69c45 11 91 33 127 73c52 57 82 142 82 232c0 80 -36 143 -115 143c-39 0 -77 -15 -110 -37l-64 -342h-83l114 602h-181z" /> + <glyph glyph-name="uni0403" unicode="&#x403;" horiz-adv-x="393" +d="M160 674h316l-14 -73h-233l-114 -601h-83zM367 828h109l-137 -118h-73z" /> + <glyph glyph-name="uni0404" unicode="&#x404;" horiz-adv-x="548" +d="M591 652l-26 -67c-23 13 -70 29 -131 28c-145 0 -258 -99 -285 -237h322l-12 -67h-319c-2 -9 -3 -25 -3 -39c0 -114 67 -211 206 -211c55 0 107 15 143 33l13 -66c-37 -19 -99 -37 -181 -37c-177 0 -269 122 -269 289c0 118 45 228 122 301c69 64 161 105 272 105 +c80 0 128 -21 148 -32z" /> + <glyph glyph-name="uni0405" unicode="&#x405;" horiz-adv-x="466" +d="M12 36l30 68c37 -25 87 -43 143 -43c76 0 146 45 146 126c0 50 -28 88 -99 126c-86 47 -134 101 -134 173c0 121 104 198 228 198c66 0 115 -19 138 -35l-30 -68c-21 13 -63 32 -117 32c-83 0 -133 -55 -133 -110s34 -86 105 -125c83 -45 128 -98 128 -181 +c0 -116 -91 -208 -243 -208c-67 0 -134 22 -162 47z" /> + <glyph glyph-name="uni0406" unicode="&#x406;" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83z" /> + <glyph glyph-name="uni0407" unicode="&#x407;" horiz-adv-x="233" +d="M158 674h84l-129 -674h-83zM120 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53zM305 720c-25 0 -46 21 -46 48c0 29 23 53 52 53s47 -24 47 -48c0 -29 -23 -53 -53 -53z" /> + <glyph glyph-name="uni0408" unicode="&#x408;" horiz-adv-x="364" +d="M210 220l86 454h83l-88 -464c-30 -157 -96 -221 -222 -221c-41 0 -83 9 -100 18l18 71c22 -10 49 -15 85 -15c71 0 115 37 138 157z" /> + <glyph glyph-name="uni0409" unicode="&#x409;" horiz-adv-x="864" +d="M218 674h370l-49 -253c20 4 52 6 78 6c120 0 210 -61 210 -189c0 -69 -27 -125 -70 -164c-61 -57 -158 -80 -248 -80c-58 0 -105 4 -131 8l113 601h-207l-39 -206c-31 -166 -75 -291 -145 -352c-31 -30 -79 -53 -131 -54l-7 70c29 2 67 21 87 42c53 51 91 156 115 287z +M526 353l-54 -287c17 -3 36 -4 65 -4c99 0 203 56 203 167c0 94 -61 130 -145 130c-26 0 -50 -2 -69 -6z" /> + <glyph glyph-name="uni040A" unicode="&#x40a;" horiz-adv-x="871" +d="M160 674h83l-53 -272h270l52 272h83l-50 -262c21 4 48 6 75 6c116 0 214 -59 214 -188c0 -65 -25 -118 -69 -159c-60 -56 -157 -77 -247 -77c-58 0 -106 4 -133 8l63 332h-271l-63 -334h-82zM532 345l-53 -280c17 -2 40 -3 67 -3c107 0 201 57 201 162 +c0 86 -69 126 -149 126c-24 0 -47 -2 -66 -5z" /> + <glyph glyph-name="uni040B" unicode="&#x40b;" horiz-adv-x="650" +d="M81 674h490l-14 -71h-230l-38 -198h2c28 20 85 45 152 46c100 0 146 -66 146 -149c0 -29 -5 -66 -12 -100l-37 -202h-82l38 198c6 31 10 63 10 85c0 51 -25 97 -103 97c-51 0 -102 -25 -128 -46l-63 -334h-81l114 603h-179z" /> + <glyph glyph-name="uni040C" unicode="&#x40c;" horiz-adv-x="523" +d="M159 674h82l-58 -304h21l278 304h102l-304 -315c93 -17 130 -88 150 -193c11 -59 18 -118 34 -166h-86c-12 38 -21 104 -30 156c-20 104 -55 153 -157 153h-19l-59 -309h-82zM400 828h109l-136 -118h-74z" /> + <glyph glyph-name="uni040E" unicode="&#x40e;" horiz-adv-x="495" +d="M87 674h90l83 -302c10 -36 20 -77 30 -118h2c25 53 44 97 64 140l130 280h93l-163 -325c-52 -104 -120 -239 -185 -302c-43 -43 -89 -58 -133 -58c-26 0 -50 5 -67 13l17 69c11 -5 29 -8 47 -8c60 0 103 57 129 107c7 12 9 22 3 40zM228 829h64c-1 -32 14 -60 55 -60 +c42 0 63 23 72 60h66c-13 -61 -63 -105 -142 -105c-83 0 -116 45 -115 105z" /> + <glyph glyph-name="uni040F" unicode="&#x40f;" horiz-adv-x="609" +d="M159 674h84l-115 -603h292l115 603h82l-128 -674h-185l-41 -173h-67l26 173h-191z" /> + <glyph glyph-name="uni0410" unicode="&#x410;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123z" /> + <glyph glyph-name="uni0411" unicode="&#x411;" horiz-adv-x="519" +d="M159 674h340l-13 -71h-257l-35 -186c19 5 55 7 77 7c118 0 208 -61 208 -188c0 -76 -31 -133 -78 -172c-60 -50 -149 -70 -236 -70c-57 0 -106 4 -133 8zM181 352l-54 -287c17 -4 38 -5 67 -5c96 0 199 57 199 165c0 91 -58 133 -145 133c-19 0 -48 -3 -67 -6z" /> + <glyph glyph-name="uni0412" unicode="&#x412;" horiz-adv-x="520" +d="M33 5l123 660c42 8 90 14 145 14c69 0 120 -14 155 -46c32 -26 49 -61 49 -105c0 -86 -69 -149 -144 -169v-2c60 -18 110 -69 110 -150c0 -69 -36 -124 -80 -157c-54 -40 -128 -55 -219 -55c-58 0 -108 4 -139 10zM228 607l-42 -219h62c97 0 171 50 171 132 +c0 65 -49 93 -122 93c-31 0 -56 -2 -69 -6zM173 325l-47 -259c21 -3 45 -4 68 -4c98 0 190 41 190 149c0 79 -67 114 -143 114h-68z" /> + <glyph glyph-name="uni0413" unicode="&#x413;" horiz-adv-x="393" +d="M159 674h317l-14 -73h-234l-114 -601h-83z" /> + <glyph glyph-name="uni0414" unicode="&#x414;" horiz-adv-x="601" +d="M228 674h358l-114 -605l57 -2l-54 -229h-68l27 162h-399l-39 -162h-67l38 229l47 2c46 62 81 124 110 189c31 75 53 153 70 240zM291 603l-25 -134c-15 -75 -36 -154 -66 -227c-27 -62 -59 -122 -98 -172h287l100 533h-198z" /> + <glyph glyph-name="uni0415" unicode="&#x415;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245z" /> + <glyph glyph-name="uni0416" unicode="&#x416;" horiz-adv-x="771" +d="M106 674h88l153 -305h20l56 305h79l-57 -305h22l261 305h96l-290 -315c91 -15 124 -93 143 -185c11 -61 16 -119 33 -174h-83c-14 50 -20 108 -31 168c-17 93 -49 141 -139 141h-22l-58 -309h-80l57 309h-20c-91 0 -141 -49 -191 -152c-26 -54 -49 -105 -78 -157h-89 +c32 50 61 117 92 178c60 115 108 168 214 182z" /> + <glyph glyph-name="uni0417" unicode="&#x417;" horiz-adv-x="449" +d="M125 321l12 66h32c82 0 178 41 177 135c0 59 -42 95 -99 95c-49 0 -94 -18 -130 -39l-19 59c41 27 99 48 166 48c89 0 168 -49 168 -151c0 -94 -72 -156 -154 -176v-2c72 -16 125 -72 125 -156c0 -135 -112 -211 -247 -211c-65 0 -127 20 -169 47l28 64 +c26 -16 85 -41 142 -41c87 0 160 51 160 144c0 83 -82 120 -154 119z" /> + <glyph glyph-name="uni0418" unicode="&#x418;" horiz-adv-x="629" +d="M160 674h79l-57 -302c-19 -98 -36 -181 -58 -266l2 -1c46 74 95 141 155 220l270 349h87l-128 -674h-79l59 311c19 95 33 166 53 247l-2 1c-45 -74 -102 -151 -160 -227l-257 -332h-92z" /> + <glyph glyph-name="uni0419" unicode="&#x419;" horiz-adv-x="629" +d="M159 674h80l-58 -302c-19 -98 -36 -181 -58 -266l2 -1c46 74 95 141 155 220l271 349h86l-127 -674h-79l59 311c18 95 33 166 53 247l-3 1c-45 -74 -101 -151 -160 -227l-257 -332h-92zM296 828h64c-1 -32 14 -60 55 -60c42 0 63 23 72 60h66c-13 -61 -63 -105 -142 -105 +c-83 0 -116 45 -115 105z" /> + <glyph glyph-name="uni041A" unicode="&#x41a;" horiz-adv-x="523" +d="M159 674h82l-58 -304h21l278 304h102l-304 -315c93 -17 130 -88 150 -193c11 -59 18 -118 34 -166h-86c-12 38 -21 104 -30 156c-20 104 -55 153 -157 153h-19l-59 -309h-82z" /> + <glyph glyph-name="uni041B" unicode="&#x41b;" horiz-adv-x="589" +d="M217 674h380l-129 -674h-83l116 603h-217l-39 -207c-35 -182 -79 -291 -144 -350c-26 -27 -72 -54 -132 -56l-8 70c35 4 66 21 88 44c52 51 88 146 115 286z" /> + <glyph glyph-name="uni041C" unicode="&#x41c;" horiz-adv-x="780" +d="M676 0h-80l48 364c9 64 24 163 36 228h-3c-31 -68 -69 -148 -105 -217l-201 -371h-63l-50 363c-10 78 -17 156 -21 225h-3c-14 -62 -35 -164 -51 -228l-92 -364h-78l175 674h106l53 -386c7 -58 14 -119 16 -169h3c21 50 50 110 79 166l208 389h109z" /> + <glyph glyph-name="uni041D" unicode="&#x41d;" horiz-adv-x="627" +d="M159 674h83l-54 -284h310l54 284h83l-128 -674h-83l59 317h-309l-60 -317h-83z" /> + <glyph glyph-name="uni041E" unicode="&#x41e;" horiz-adv-x="668" +d="M303 -11c-174 0 -255 131 -255 274c0 116 45 242 122 324c58 60 144 98 232 98c182 0 255 -132 255 -276c0 -114 -41 -239 -116 -319c-60 -64 -142 -101 -238 -101zM316 59c143 0 254 183 254 346c0 96 -31 210 -179 210c-151 0 -256 -190 -256 -345 +c0 -110 49 -211 181 -211z" /> + <glyph glyph-name="uni041F" unicode="&#x41f;" horiz-adv-x="611" +d="M159 674h460l-128 -674h-83l116 603h-295l-115 -603h-83z" /> + <glyph glyph-name="uni0420" unicode="&#x420;" horiz-adv-x="507" +d="M31 0l127 664c37 9 91 15 146 15c65 0 127 -16 165 -52c32 -29 49 -69 49 -122c0 -75 -37 -139 -81 -176c-52 -44 -128 -64 -204 -64c-26 0 -48 2 -69 5l-51 -270h-82zM227 605l-50 -265c23 -5 43 -7 67 -7c114 0 190 71 190 166c0 81 -57 113 -134 113 +c-33 0 -58 -3 -73 -7z" /> + <glyph glyph-name="uni0421" unicode="&#x421;" horiz-adv-x="555" +d="M486 90l11 -68c-38 -17 -99 -32 -175 -32c-170 0 -273 107 -273 279c0 127 51 248 143 325c70 59 156 90 255 90c74 0 128 -19 146 -32l-27 -67c-25 15 -73 27 -133 27c-70 0 -141 -27 -193 -75c-63 -59 -103 -154 -103 -256c0 -121 55 -220 205 -220c51 0 107 10 144 29 +z" /> + <glyph glyph-name="uni0422" unicode="&#x422;" horiz-adv-x="474" +d="M148 0l114 602h-197l14 72h478l-14 -72h-198l-114 -602h-83z" /> + <glyph glyph-name="uni0423" unicode="&#x423;" horiz-adv-x="495" +d="M87 674h90l83 -302c10 -36 20 -77 30 -118h2c25 53 43 97 63 140l131 280h93l-163 -325c-53 -104 -120 -239 -185 -302c-44 -43 -89 -58 -133 -58c-26 0 -51 5 -67 13l17 69c11 -5 29 -8 47 -8c60 0 103 57 129 107c7 12 9 22 3 40z" /> + <glyph glyph-name="uni0424" unicode="&#x424;" horiz-adv-x="702" +d="M263 -26l11 59c-115 16 -219 103 -219 261c0 249 190 355 336 354l11 52h78l-10 -55c117 -16 217 -102 217 -269c0 -223 -157 -345 -335 -347l-10 -55h-79zM286 95l93 491c-108 -2 -239 -101 -239 -288c0 -115 62 -186 146 -203zM457 583l-92 -492c152 6 238 131 238 292 +c0 119 -62 188 -146 200z" /> + <glyph glyph-name="uni0425" unicode="&#x425;" horiz-adv-x="521" +d="M466 0h-88l-64 167c-18 45 -32 83 -43 118h-2c-21 -32 -45 -69 -79 -116l-121 -169h-99l263 343l-126 331h87l64 -173c15 -40 25 -71 34 -102h2c22 33 45 68 69 102l129 173h99l-260 -330z" /> + <glyph glyph-name="uni0426" unicode="&#x426;" horiz-adv-x="620" +d="M160 674h83l-115 -603h293l115 603h82l-115 -605l57 -2l-54 -229h-68l27 162h-433z" /> + <glyph glyph-name="uni0427" unicode="&#x427;" horiz-adv-x="555" +d="M136 674h83l-37 -194c-4 -18 -10 -51 -10 -76c0 -66 42 -97 112 -97c57 0 111 24 135 42l61 325h82l-128 -678h-82l53 280h-2c-30 -17 -87 -38 -150 -38c-104 0 -166 56 -166 148c0 30 6 62 12 94z" /> + <glyph glyph-name="uni0428" unicode="&#x428;" horiz-adv-x="810" +d="M159 674h82l-115 -603h207l114 603h82l-115 -603h207l115 603h82l-129 -674h-658z" /> + <glyph glyph-name="uni0429" unicode="&#x429;" horiz-adv-x="820" +d="M159 674h83l-116 -603h207l114 603h83l-116 -603h207l115 603h82l-116 -605l57 -2l-53 -229h-69l27 162h-633z" /> + <glyph glyph-name="uni042A" unicode="&#x42a;" horiz-adv-x="618" +d="M79 674h267l-48 -253c20 3 47 6 76 6c121 0 210 -61 210 -189c0 -70 -26 -125 -68 -165c-60 -57 -153 -79 -250 -79c-57 0 -103 4 -130 7l114 601h-185zM284 352l-54 -286c17 -3 38 -4 67 -4c97 0 200 54 200 166c0 90 -58 131 -144 131c-26 0 -52 -4 -69 -7z" /> + <glyph glyph-name="uni042B" unicode="&#x42b;" horiz-adv-x="720" +d="M159 674h83l-49 -253c20 4 51 6 77 6c116 0 206 -61 206 -189c-1 -70 -26 -124 -67 -164c-63 -60 -154 -80 -247 -80c-58 0 -104 4 -131 7zM179 352l-54 -285c16 -4 38 -5 67 -5c95 0 197 56 197 164c0 92 -57 133 -142 133c-23 0 -49 -3 -68 -7zM642 674h86l-129 -674 +h-86z" /> + <glyph glyph-name="uni042C" unicode="&#x42c;" horiz-adv-x="518" +d="M159 674h83l-49 -253c19 4 50 6 77 6c120 0 210 -61 210 -189c0 -71 -26 -125 -66 -163c-62 -58 -155 -81 -252 -81c-57 0 -103 4 -130 7zM180 352l-54 -285c17 -4 38 -5 67 -5c99 0 200 56 200 164c0 92 -58 133 -146 133c-25 0 -52 -3 -67 -7z" /> + <glyph glyph-name="uni042D" unicode="&#x42d;" horiz-adv-x="540" +d="M125 308l13 68h304c1 10 1 19 1 34c-1 110 -68 204 -195 204c-45 0 -100 -11 -139 -29l-18 63c33 17 98 37 169 37c169 0 270 -113 270 -291c0 -109 -36 -226 -117 -309c-66 -64 -148 -96 -255 -96c-72 0 -136 19 -170 40l25 66c38 -21 93 -35 143 -35 +c156 0 252 110 276 248h-307z" /> + <glyph glyph-name="uni042E" unicode="&#x42e;" horiz-adv-x="862" +d="M160 674h83l-55 -285h102c18 74 52 145 99 197c56 61 137 99 221 99c171 0 242 -132 242 -277c0 -113 -40 -238 -110 -318c-57 -63 -134 -101 -224 -101c-165 0 -242 132 -242 266c0 20 2 42 5 63h-107l-60 -318h-83zM528 59c135 0 238 183 238 346 +c0 95 -28 210 -167 210c-143 0 -241 -191 -241 -345c0 -110 45 -211 170 -211z" /> + <glyph glyph-name="uni042F" unicode="&#x42f;" horiz-adv-x="519" +d="M527 664l-125 -664h-83l57 295h-53c-109 0 -149 -80 -191 -166c-20 -41 -42 -91 -65 -129h-91c28 42 55 105 78 153c36 72 78 148 155 170v3c-59 17 -112 62 -112 145c0 78 43 134 92 166c54 30 118 42 186 42c52 0 114 -7 152 -15zM388 358l46 248c-14 4 -40 7 -70 7 +c-95 0 -181 -44 -181 -143c0 -76 65 -113 140 -113c26 0 54 0 65 1z" /> + <glyph glyph-name="uni0430" unicode="&#x430;" horiz-adv-x="522" +d="M428 0h-78c0 29 5 75 11 125h-2c-53 -101 -120 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c46 0 97 -8 130 -18l-49 -253c-16 -84 -22 -170 -20 -224zM376 276l27 146c-11 4 -29 7 -57 7c-125 0 -228 -130 -228 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219z" /> + <glyph glyph-name="uni0431" unicode="&#x431;" horiz-adv-x="513" +d="M537 720l-12 -73c-22 -8 -45 -12 -69 -16c-95 -14 -178 -27 -245 -108c-29 -36 -55 -89 -68 -141h3c39 61 101 102 177 102c104 0 161 -80 161 -185c0 -147 -94 -310 -261 -310c-118 0 -176 90 -176 226c0 133 42 262 113 348c82 100 178 122 296 138c29 4 57 10 81 19z +M234 53c109 0 164 139 164 238c0 68 -28 129 -99 129c-48 0 -95 -32 -127 -78c-25 -36 -42 -91 -42 -149c0 -71 31 -140 104 -140z" /> + <glyph glyph-name="uni0432" unicode="&#x432;" horiz-adv-x="476" +d="M301 495c76 0 136 -35 136 -112c0 -66 -64 -105 -114 -121v-3c48 -6 100 -40 100 -108c0 -115 -119 -161 -218 -161c-97 0 -162 39 -162 140c0 88 40 258 126 322c36 27 77 43 132 43zM288 434c-86 0 -122 -93 -141 -165c54 7 119 16 160 39c27 16 50 38 50 68 +c0 39 -30 58 -69 58zM237 226c-42 0 -79 -9 -101 -15c-4 -21 -9 -49 -9 -74c0 -55 28 -86 88 -86c65 0 124 35 124 97c0 56 -46 78 -102 78z" /> + <glyph glyph-name="uni0433" unicode="&#x433;" horiz-adv-x="367" +d="M113 403l-14 58c30 17 75 33 127 33c86 -2 131 -49 131 -118c0 -82 -70 -121 -149 -157c-60 -28 -109 -55 -109 -104c0 -34 21 -60 71 -61c44 -1 90 18 116 33l13 -60c-34 -20 -92 -38 -145 -37c-86 2 -140 46 -140 124c0 89 74 127 150 163c51 24 112 49 112 97 +c0 30 -21 54 -66 55c-35 1 -69 -12 -97 -26z" /> + <glyph glyph-name="uni0434" unicode="&#x434;" horiz-adv-x="502" +d="M141 649l-3 71c34 -8 74 -9 104 -12c78 -8 131 -26 172 -70c50 -50 71 -136 71 -217c0 -165 -70 -432 -277 -432c-114 0 -175 76 -175 192c0 137 87 303 241 303c74 0 120 -40 138 -101h2c1 13 1 29 1 45c0 51 -14 119 -51 158c-34 35 -75 47 -141 53c-24 2 -51 4 -82 10 +zM221 53c98 0 160 149 160 234c0 65 -32 132 -103 132c-109 0 -160 -140 -159 -237c0 -67 29 -129 102 -129z" /> + <glyph glyph-name="uni0435" unicode="&#x435;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92z" /> + <glyph glyph-name="uni0436" unicode="&#x436;" horiz-adv-x="636" +d="M65 484h91l112 -214h18l41 214h77l-42 -214h19l193 214h94l-216 -221c55 -9 84 -64 98 -130c10 -42 18 -99 31 -133h-79c-13 35 -20 80 -27 115c-15 72 -41 104 -108 104h-15l-42 -219h-78l44 219h-12c-73 0 -116 -31 -153 -101c-26 -47 -42 -86 -61 -118h-84 +c21 34 39 74 64 124c41 80 92 134 171 139z" /> + <glyph glyph-name="uni0437" unicode="&#x437;" horiz-adv-x="400" +d="M94 224l10 59h33c57 0 139 25 139 86c0 42 -36 63 -79 63c-37 0 -80 -12 -115 -34l-19 52c39 26 95 44 147 44c74 0 153 -30 153 -116c0 -69 -63 -109 -127 -122l-1 -1c53 -7 112 -48 112 -113c0 -114 -112 -152 -208 -152c-63 0 -118 15 -157 41l24 60 +c35 -22 81 -37 128 -37c56 0 126 25 126 88s-68 82 -127 82h-39z" /> + <glyph glyph-name="uni0438" unicode="&#x438;" horiz-adv-x="526" +d="M113 484h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177l47 248h83l-65 -343c-10 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82z" /> + <glyph glyph-name="uni0439" unicode="&#x439;" horiz-adv-x="526" +d="M113 484h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177l47 248h83l-65 -343c-10 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82zM219 683h61c-4 -41 15 -74 51 -73 +c41 0 62 38 72 73h63c-17 -76 -68 -121 -140 -121c-88 0 -113 59 -107 121z" /> + <glyph glyph-name="uni043A" unicode="&#x43a;" horiz-adv-x="456" +d="M121 484h81l-40 -214h18l210 214h100l-236 -222c52 -14 82 -59 106 -136c17 -50 28 -97 42 -126h-81c-13 27 -23 73 -40 118c-28 76 -56 99 -115 99h-15l-41 -217h-81z" /> + <glyph glyph-name="uni043B" unicode="&#x43b;" horiz-adv-x="510" +d="M160 484h326l-92 -484h-82l78 418h-165l-24 -124c-25 -131 -61 -223 -128 -266c-29 -22 -55 -32 -100 -33l-6 67c22 2 45 9 58 20c50 33 79 111 98 211z" /> + <glyph glyph-name="uni043C" unicode="&#x43c;" horiz-adv-x="667" +d="M146 484h102l39 -245c5 -38 14 -95 18 -132h1c16 34 54 103 87 162l123 215h104l-62 -484h-78l32 231c7 53 17 117 25 169h-4c-13 -30 -50 -98 -79 -152l-139 -245h-64l-37 240c-6 47 -16 115 -19 158h-4c-12 -54 -26 -119 -40 -172l-59 -229h-76z" /> + <glyph glyph-name="uni043D" unicode="&#x43d;" horiz-adv-x="529" +d="M121 484h82l-36 -196h218l37 196h83l-92 -484h-82l42 222h-219l-42 -222h-83z" /> + <glyph glyph-name="uni043E" unicode="&#x43e;" horiz-adv-x="521" +d="M223 -11c-121 0 -189 90 -189 199c0 160 111 307 268 307c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305zM234 55c98 0 172 126 172 239c0 56 -26 135 -113 135c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136z" /> + <glyph glyph-name="uni043F" unicode="&#x43f;" horiz-adv-x="534" +d="M111 0h-82l64 343c10 54 18 101 23 141h74l-12 -95h2c43 68 109 106 179 106c58 0 123 -33 123 -134c0 -22 -4 -52 -9 -78l-54 -283h-82l53 280c3 19 6 41 6 62c0 48 -19 84 -76 84c-59 0 -143 -71 -165 -191z" /> + <glyph glyph-name="uni0440" unicode="&#x440;" horiz-adv-x="527" +d="M68 -198h-83l97 510c11 59 21 124 27 173h76l-13 -92h2c43 64 107 102 174 102c104 0 148 -86 148 -175c0 -171 -122 -331 -283 -331c-51 0 -85 11 -104 22h-2zM146 216l-25 -135c22 -17 53 -27 93 -27c107 0 196 133 196 260c0 51 -22 112 -93 112 +c-65 0 -147 -74 -171 -210z" /> + <glyph glyph-name="uni0441" unicode="&#x441;" horiz-adv-x="423" +d="M352 85l8 -65c-25 -13 -75 -30 -140 -30c-125 0 -186 84 -186 187c0 165 122 317 296 317c45 0 86 -13 101 -21l-24 -66c-19 9 -46 18 -82 18c-126 0 -205 -124 -205 -238c0 -78 41 -129 120 -129c50 0 87 15 112 27z" /> + <glyph glyph-name="uni0442" unicode="&#x442;" horiz-adv-x="808" +d="M110 0h-81l64 343c10 54 17 101 22 141h73l-12 -91h2c45 68 106 102 170 102c74 0 109 -47 113 -108c43 70 105 107 177 108c56 0 118 -36 118 -127c0 -22 -3 -55 -8 -82l-54 -286h-81l52 279c4 19 7 43 7 63c0 51 -19 84 -73 84c-60 0 -132 -70 -152 -178l-46 -248h-80 +l54 284c4 22 6 40 6 59c0 41 -11 83 -72 83c-60 0 -136 -80 -155 -183z" /> + <glyph glyph-name="uni0443" unicode="&#x443;" horiz-adv-x="438" +d="M47 484h87l48 -260c11 -56 19 -93 24 -130h2c14 32 30 66 53 120l118 270h88c-51 -110 -127 -273 -175 -370c-53 -104 -104 -187 -171 -252c-54 -55 -113 -78 -140 -84l-21 72c21 7 56 20 89 46c33 25 68 65 94 112c4 8 4 13 2 22z" /> + <glyph glyph-name="uni0444" unicode="&#x444;" horiz-adv-x="678" +d="M216 -198l52 251h-2c-26 -33 -60 -64 -120 -64c-74 0 -117 68 -117 161c0 139 81 345 229 345c42 0 70 -30 80 -63h1l53 278h76l-57 -281h2c23 30 65 66 118 66c87 0 120 -81 120 -172c0 -138 -77 -334 -219 -334c-45 0 -78 30 -90 63h-2l-45 -250h-79zM262 429 +c-101 0 -150 -181 -150 -271c0 -61 24 -102 67 -102c60 0 99 66 110 122l26 126c3 19 5 35 5 56c0 36 -26 69 -58 69zM507 426c-34 0 -65 -18 -91 -58c-15 -26 -23 -53 -29 -87c-7 -35 -14 -71 -21 -108c-3 -16 -4 -33 -2 -46c2 -29 26 -72 67 -71c90 3 138 167 138 260 +c0 57 -13 110 -62 110z" /> + <glyph glyph-name="uni0445" unicode="&#x445;" horiz-adv-x="441" +d="M63 484h90l47 -106c14 -31 23 -55 33 -77h2c19 27 30 44 53 73l90 110h95l-204 -236l115 -248h-91l-48 109c-17 36 -24 55 -35 86h-3c-14 -23 -29 -45 -50 -74l-98 -121h-96l212 249z" /> + <glyph glyph-name="uni0446" unicode="&#x446;" horiz-adv-x="538" +d="M113 484h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c61 0 138 71 158 177l47 248h82l-59 -315c-4 -22 -8 -43 -8 -61c0 -35 17 -60 66 -61l-59 -187h-62l37 140c-18 4 -35 16 -46 32c-10 18 -12 41 -11 61h-2c-42 -63 -108 -104 -174 -104 +c-63 0 -131 30 -131 140c0 23 3 50 9 82z" /> + <glyph glyph-name="uni0447" unicode="&#x447;" horiz-adv-x="498" +d="M100 484h82l-21 -108c-5 -24 -11 -54 -11 -78c0 -40 18 -72 83 -72c39 0 92 21 119 46l39 212h82l-92 -485h-82l40 204h-2c-36 -24 -83 -41 -133 -41c-99 0 -139 49 -139 118c0 27 6 58 12 88z" /> + <glyph glyph-name="uni0448" unicode="&#x448;" horiz-adv-x="789" +d="M113 484h81l-52 -279c-4 -19 -7 -43 -7 -63c0 -51 19 -84 68 -84c61 0 129 70 149 178l46 248h80l-54 -284c-4 -22 -6 -40 -6 -59c0 -41 11 -83 68 -83s132 80 151 183l45 243h81l-63 -340c-9 -48 -11 -102 -13 -144h-75c0 36 3 68 4 91h-2c-43 -67 -100 -102 -164 -102 +c-70 0 -108 47 -112 108c-43 -70 -105 -108 -177 -108c-51 0 -110 36 -110 127c0 22 3 55 8 82z" /> + <glyph glyph-name="uni0449" unicode="&#x449;" horiz-adv-x="801" +d="M113 484h81l-52 -279c-4 -19 -7 -43 -7 -63c0 -51 19 -84 68 -84c57 0 128 70 148 178l47 248h80l-54 -284c-4 -22 -6 -40 -6 -59c0 -41 11 -83 68 -83s132 80 151 183l45 243h81l-58 -311c-4 -20 -9 -48 -9 -66c0 -34 18 -59 66 -60l-60 -187h-61l37 140 +c-39 8 -60 52 -58 92h-3c-45 -67 -101 -103 -170 -103s-105 47 -109 108c-43 -70 -106 -108 -174 -108c-51 0 -113 36 -113 127c0 22 3 55 8 82z" /> + <glyph glyph-name="uni044A" unicode="&#x44a;" horiz-adv-x="514" +d="M55 484h269c-46 -73 -92 -142 -124 -225h1c34 39 87 66 144 66c76 0 127 -47 127 -125c0 -110 -97 -207 -231 -207c-82 0 -145 33 -145 129c0 90 61 216 118 295h-172zM249 55c73 0 141 56 141 129c0 45 -25 79 -77 79c-56 0 -109 -47 -126 -92c-7 -16 -10 -29 -10 -46 +c0 -39 23 -70 72 -70z" /> + <glyph glyph-name="uni044B" unicode="&#x44b;" horiz-adv-x="649" +d="M121 484h82l-54 -223h1c32 38 87 64 137 64c76 0 130 -47 130 -129c0 -110 -96 -203 -236 -203c-73 0 -137 23 -137 106c0 28 7 64 12 88zM195 55c70 0 140 51 140 129c0 45 -25 79 -78 79c-55 0 -111 -51 -124 -102c-4 -17 -8 -32 -8 -51c0 -35 25 -55 70 -55zM539 484 +h86l-92 -484h-87z" /> + <glyph glyph-name="uni044C" unicode="&#x44c;" horiz-adv-x="463" +d="M122 484h82l-55 -223h1c33 37 88 64 141 64c75 0 130 -47 130 -127c0 -114 -97 -205 -237 -205c-75 0 -140 25 -140 109c0 24 7 63 13 87zM196 55c72 0 143 51 143 128c0 46 -23 80 -78 80c-58 0 -110 -53 -125 -96c-6 -16 -10 -33 -10 -53c0 -38 26 -59 70 -59z" /> + <glyph glyph-name="uni044D" unicode="&#x44d;" horiz-adv-x="440" +d="M95 216l10 59h217c1 6 1 12 1 18c0 73 -48 135 -137 135c-45 0 -84 -11 -110 -23l-16 60c30 14 80 30 135 30c136 0 210 -89 210 -224c0 -158 -102 -282 -276 -282c-51 1 -104 11 -140 35l23 61c24 -13 70 -29 117 -29c99 0 168 60 186 160h-220z" /> + <glyph glyph-name="uni044E" unicode="&#x44e;" horiz-adv-x="698" +d="M120 484h84l-38 -197h78c33 119 124 208 241 208c123 0 183 -99 183 -204c0 -147 -101 -302 -257 -302c-117 0 -180 90 -180 193c0 13 1 27 3 42h-80l-42 -224h-83zM421 55c92 0 162 126 162 238c0 57 -25 136 -106 136c-100 0 -165 -132 -165 -238 +c0 -75 40 -136 109 -136z" /> + <glyph glyph-name="uni044F" unicode="&#x44f;" horiz-adv-x="474" +d="M450 480l-91 -480h-81l39 204h-49c-72 0 -109 -34 -141 -98c-18 -37 -34 -73 -54 -106h-88c27 42 43 83 66 128c28 52 66 92 124 104v2c-51 12 -101 48 -101 108c0 123 134 148 235 148c51 0 104 -5 141 -10zM328 263l31 162c-18 4 -36 6 -65 6c-65 0 -134 -17 -134 -90 +c0 -55 68 -78 117 -78h51z" /> + <glyph glyph-name="uni0451" unicode="&#x451;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM221 570c-27 0 -47 21 -47 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -52 -53zM403 570c-27 0 -46 21 -46 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -53 -53z" /> + <glyph glyph-name="uni0452" unicode="&#x452;" horiz-adv-x="532" +d="M163 710h82l-16 -85h252l-14 -59h-249l-29 -152h2c35 42 85 78 154 78c104 0 149 -87 149 -203c0 -136 -46 -293 -154 -377c-35 -34 -88 -60 -138 -68l-16 69c39 8 69 25 99 52c76 59 123 188 123 311c0 80 -21 147 -95 147c-72 0 -136 -79 -150 -154l-51 -269h-84 +l108 566h-62l13 59h61z" /> + <glyph glyph-name="uni0453" unicode="&#x453;" horiz-adv-x="367" +d="M113 403l-14 58c30 17 75 33 127 33c86 -2 131 -49 131 -118c0 -82 -70 -121 -149 -157c-60 -28 -109 -55 -109 -104c0 -34 21 -60 71 -61c44 -1 90 18 116 33l13 -60c-34 -20 -92 -38 -145 -37c-86 2 -140 46 -140 124c0 89 74 127 150 163c51 24 112 49 112 97 +c0 30 -21 54 -66 55c-35 1 -69 -12 -97 -26zM303 686h100l-133 -143h-65z" /> + <glyph glyph-name="uni0454" unicode="&#x454;" horiz-adv-x="422" +d="M435 466l-25 -61c-19 11 -53 24 -96 24c-97 0 -163 -69 -185 -155h229l-11 -58h-227c-1 -9 -1 -16 -1 -24c4 -77 52 -136 142 -136c36 0 73 9 100 21l11 -59c-31 -16 -78 -28 -137 -28c-124 0 -200 85 -200 210c0 80 29 155 78 210c50 53 121 85 202 85 +c55 0 98 -16 120 -29z" /> + <glyph glyph-name="uni0455" unicode="&#x455;" horiz-adv-x="373" +d="M9 23l24 61c23 -14 64 -30 104 -30c56 0 92 36 92 79c0 38 -17 61 -68 89c-56 31 -87 74 -87 124c0 84 73 149 175 149c44 0 83 -12 101 -24l-23 -63c-17 10 -48 22 -84 22c-50 0 -86 -31 -86 -73c0 -35 23 -57 67 -81c54 -30 90 -73 90 -127c0 -102 -82 -160 -184 -159 +c-52 0 -99 16 -121 33z" /> + <glyph glyph-name="uni0456" unicode="&#x456;" horiz-adv-x="229" +d="M111 0h-83l92 484h83zM183 572c-29 0 -49 23 -49 54c1 33 26 59 57 59s52 -23 52 -54c-1 -35 -26 -59 -60 -59z" /> + <glyph glyph-name="uni0457" unicode="&#x457;" horiz-adv-x="229" +d="M111 0h-83l92 484h83zM89 570c-27 0 -47 21 -47 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -52 -53zM271 570c-27 0 -46 21 -46 49c0 30 23 53 52 53s47 -22 47 -49c0 -29 -21 -53 -53 -53z" /> + <glyph glyph-name="uni0458" unicode="&#x458;" horiz-adv-x="227" +d="M126 484h82l-91 -483c-15 -80 -33 -131 -62 -163c-28 -32 -69 -47 -111 -47c-21 0 -39 1 -55 6l10 65c9 -3 22 -4 38 -4c42 0 75 26 94 126zM184 572c-29 0 -49 23 -49 53c0 33 25 60 57 60c31 0 51 -22 52 -53c-1 -34 -25 -60 -60 -60z" /> + <glyph glyph-name="uni0459" unicode="&#x459;" horiz-adv-x="735" +d="M152 484h315l-44 -220h2c36 38 90 61 141 61c74 0 127 -46 127 -126c0 -114 -97 -206 -236 -206c-77 0 -140 25 -140 108c0 22 5 55 10 84l47 233h-156l-24 -125c-27 -141 -60 -224 -126 -266c-26 -20 -54 -32 -95 -32l-7 67c18 1 40 8 54 19c46 30 75 98 96 210zM471 55 +c70 0 140 50 140 127c0 48 -24 81 -74 81c-56 0 -108 -50 -128 -95c-6 -14 -10 -33 -10 -52c0 -40 27 -61 72 -61z" /> + <glyph glyph-name="uni045A" unicode="&#x45a;" horiz-adv-x="747" +d="M120 484h83l-35 -184h194l35 184h82l-45 -219h2c33 37 88 60 136 60c76 0 133 -47 133 -128c0 -115 -97 -204 -238 -204c-77 0 -140 22 -140 104c0 19 5 50 10 72l13 66h-195l-44 -235h-83zM482 55c74 0 141 50 141 127c0 46 -26 81 -79 81c-57 0 -110 -50 -126 -102 +c-4 -13 -9 -28 -9 -48c0 -37 29 -58 73 -58z" /> + <glyph glyph-name="uni045B" unicode="&#x45b;" horiz-adv-x="534" +d="M164 710h83l-17 -86h245l-13 -58h-243l-32 -167h2c39 55 98 96 172 96c55 0 121 -33 121 -130c0 -26 -3 -57 -8 -82l-54 -283h-83l53 280c4 16 7 40 7 65c0 44 -20 81 -75 81c-64 0 -145 -75 -165 -183l-45 -243h-83l108 566h-67l12 58h66z" /> + <glyph glyph-name="uni045C" unicode="&#x45c;" horiz-adv-x="456" +d="M121 484h81l-40 -214h18l210 214h100l-236 -222c52 -14 82 -59 106 -136c17 -50 28 -97 42 -126h-81c-13 27 -23 73 -40 118c-28 76 -56 99 -115 99h-15l-41 -217h-81zM346 686h99l-133 -143h-65z" /> + <glyph glyph-name="uni045E" unicode="&#x45e;" horiz-adv-x="438" +d="M47 484h87l48 -260c11 -56 19 -93 24 -130h2c14 32 30 66 53 120l118 270h88c-51 -110 -127 -273 -175 -370c-53 -104 -104 -187 -171 -252c-54 -55 -113 -78 -140 -84l-21 72c21 7 56 20 89 46c33 25 68 65 94 112c4 8 4 13 2 22zM167 683h61c-4 -41 15 -74 51 -73 +c41 0 62 38 72 73h63c-17 -76 -68 -121 -140 -121c-88 0 -113 59 -107 121z" /> + <glyph glyph-name="uni045F" unicode="&#x45f;" horiz-adv-x="526" +d="M113 484h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177l47 248h83l-65 -343c-10 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -109 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82zM212 -192l-68 -9l31 157l78 7z" /> + <glyph glyph-name="uni0490" unicode="&#x490;" horiz-adv-x="400" +d="M158 674h253l40 126h67l-49 -199h-242l-112 -601h-84z" /> + <glyph glyph-name="uni0491" unicode="&#x491;" horiz-adv-x="372" +d="M120 484h212l38 110h64l-46 -177h-199l-78 -417h-82z" /> + <glyph glyph-name="uni04D9" unicode="&#x4d9;" horiz-adv-x="444" +d="M85 394l-14 62c36 20 96 39 161 39c129 0 184 -88 184 -195c0 -146 -107 -311 -263 -311c-93 0 -143 55 -143 125c0 127 143 160 322 157c4 21 2 66 -9 91c-20 45 -58 66 -108 66c-57 0 -101 -18 -130 -34zM165 54c78 0 138 77 158 153c-131 2 -233 -16 -233 -91 +c0 -40 31 -62 75 -62z" /> + <glyph glyph-name="uni2010" unicode="&#x2010;" horiz-adv-x="307" +d="M48 302h239l-12 -64h-239z" /> + <glyph glyph-name="uni2113" unicode="&#x2113;" horiz-adv-x="481" +d="M225 512l-41 -216c79 70 181 184 181 292c0 43 -17 64 -47 64c-37 0 -74 -43 -93 -140zM382 152l39 -41c-51 -82 -118 -121 -198 -121c-101 0 -143 71 -141 161l1 9c-20 -13 -38 -25 -56 -36l-21 48c30 19 60 38 88 59l50 264c29 156 103 219 183 219 +c67 0 108 -48 108 -120c0 -154 -152 -293 -266 -382l-3 -16c-13 -98 25 -132 79 -132c64 0 108 50 137 88z" /> + <glyph glyph-name="uni2116" unicode="&#x2116;" horiz-adv-x="884" +d="M710 291c-71 0 -124 44 -124 129c0 108 72 220 189 220c77 0 121 -51 121 -131c0 -111 -71 -218 -186 -218zM825 249l-10 -52h-250l10 52h250zM573 654l-125 -654h-85l-100 327c-22 73 -41 147 -55 221l-3 -1c-13 -84 -26 -163 -48 -278l-52 -269h-74l126 654h91 +l100 -325c22 -77 41 -149 54 -217l2 1c11 91 24 170 44 274l51 267h74zM721 341c72 0 106 99 106 164c0 47 -16 85 -62 85c-70 0 -109 -101 -109 -163c0 -53 24 -86 65 -86z" /> + <glyph glyph-name="breve.cyrcap" unicode="&#xf6d1;" horiz-adv-x="382" +d="M174 834h64c-1 -32 14 -60 55 -60c42 0 63 23 72 60h66c-13 -61 -63 -105 -142 -105c-83 0 -116 45 -115 105z" /> + <glyph glyph-name="circumflex.cyrcap" unicode="&#xf6d2;" horiz-adv-x="382" +d="M421 738h-64c1 32 -14 60 -55 60c-42 0 -63 -23 -72 -60h-66c13 61 63 105 142 105c83 0 116 -45 115 -105z" /> + <glyph glyph-name="breve.cyr" unicode="&#xf6d4;" +d="M155 683h61c-4 -41 15 -74 51 -73c41 0 62 38 72 73h63c-17 -76 -68 -121 -140 -121c-88 0 -113 59 -107 121z" /> + <glyph glyph-name="circumflex.cyr" unicode="&#xf6d5;" horiz-adv-x="382" +d="M384 561h-61c4 42 -15 74 -51 74c-41 0 -62 -37 -73 -74h-62c17 76 68 121 140 121c88 0 113 -59 107 -121z" /> + <glyph glyph-name="Ohorn" unicode="&#x1a0;" horiz-adv-x="668" +d="M648 741l69 11c7 -15 11 -39 11 -64c0 -70 -47 -113 -117 -106c33 -48 46 -109 46 -173c0 -117 -42 -246 -122 -326c-60 -59 -138 -94 -231 -94c-174 0 -256 131 -256 274c0 119 47 250 128 331c58 56 141 91 226 91c48 0 83 -9 117 -23c31 -13 57 -30 87 -30 +c39 0 53 21 53 57c0 19 -5 36 -11 52zM392 615c-60 0 -113 -26 -154 -68c-66 -65 -103 -183 -103 -277c0 -110 49 -211 181 -211c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -178 210z" /> + <glyph glyph-name="Uhorn" unicode="&#x1af;" horiz-adv-x="627" +d="M620 623l-67 -352c-39 -202 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 28 3 61 9 92l75 394h83l-76 -400c-5 -28 -8 -57 -8 -84c0 -87 50 -131 125 -131c92 0 159 63 188 214l77 401h69c40 0 60 17 60 55c0 15 -3 29 -7 43l64 11c5 -16 7 -33 7 -48 +c0 -67 -37 -110 -120 -112z" /> + <glyph glyph-name="ohorn" unicode="&#x1a1;" horiz-adv-x="524" +d="M294 428c-104 0 -173 -127 -173 -237c0 -79 44 -136 114 -136c97 0 172 126 172 238c0 57 -26 135 -113 135zM494 553l66 13c5 -18 8 -39 8 -57c0 -65 -39 -105 -105 -102c19 -31 29 -71 29 -113c0 -150 -106 -305 -268 -305c-121 0 -189 90 -189 199 +c0 160 111 307 268 307c31 0 58 -5 83 -17c21 -9 42 -23 70 -23c30 0 47 17 47 49c0 15 -3 33 -9 49z" /> + <glyph glyph-name="uhorn" unicode="&#x1b0;" horiz-adv-x="535" +d="M537 582l64 11c4 -14 7 -32 7 -48c0 -66 -38 -111 -118 -112l-55 -292c-10 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -107 -102 -170 -102s-128 30 -128 140c0 23 3 49 9 81l53 274h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 176 +l48 249h67c42 0 60 19 60 54c0 15 -4 31 -8 44z" /> + <glyph glyph-name="dong" unicode="&#x20ab;" horiz-adv-x="492" +d="M383 41h-311l10 57h310zM401 664h77l-13 -68h64l-10 -48h-63l-53 -277c-7 -36 -13 -77 -15 -110h-72l9 69h-1c-31 -48 -77 -77 -127 -77c-67 0 -105 54 -105 125c0 123 92 234 216 234c22 0 47 -5 62 -12l9 48h-118l11 48h116zM339 335l20 108c-11 7 -29 14 -52 14 +c-77 0 -137 -82 -137 -167c0 -39 14 -77 59 -77c43 0 95 50 110 122z" /> + <glyph glyph-name="dong.alt" unicode="&#xe184;" horiz-adv-x="492" +d="M401 664h77l-13 -68h64l-9 -48h-64l-53 -277c-7 -36 -12 -77 -15 -110h-72l9 69h-1c-31 -48 -77 -77 -127 -77c-67 0 -105 54 -105 125c0 123 92 234 216 234c23 0 47 -5 62 -12l9 48h-118l11 48h116zM339 335l20 108c-11 7 -29 14 -52 14c-77 0 -137 -82 -137 -167 +c0 -39 14 -77 59 -77c44 0 95 50 110 122z" /> + <glyph glyph-name="uni1EA0" unicode="&#x1ea0;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM220 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1EA2" unicode="&#x1ea2;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM392 708l-43 15c22 41 61 52 61 86c0 16 -11 29 -29 29c-22 0 -39 -17 -53 -34l-30 21c22 34 55 64 102 64c45 0 76 -30 76 -67 +c0 -54 -51 -68 -84 -114z" /> + <glyph glyph-name="uni1EA4" unicode="&#x1ea4;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM368 824h62l66 -114h-67l-37 69h-2l-69 -69h-75zM562 897h83l-122 -103h-50z" /> + <glyph glyph-name="uni1EA6" unicode="&#x1ea6;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM431 881h83l59 -105h-49zM368 824h62l66 -114h-67l-37 69h-2l-69 -69h-75z" /> + <glyph glyph-name="uni1EA8" unicode="&#x1ea8;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 84 -12 124h-2c-18 -40 -35 -82 -55 -123zM536 754l-41 17c22 38 63 47 63 79c0 16 -14 29 -32 29c-20 0 -40 -16 -52 -30l-27 27c19 25 54 50 96 50c44 0 75 -28 75 -65 +c0 -52 -54 -68 -82 -107zM370 824h62l66 -114h-67l-37 69h-2l-69 -69h-75z" /> + <glyph glyph-name="uni1EAA" unicode="&#x1eaa;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 84 -12 124h-2c-18 -40 -35 -82 -55 -123zM329 837h-48c6 56 36 93 78 93c22 0 37 -9 59 -22c15 -8 28 -16 40 -16c16 0 26 10 32 41h46c-7 -64 -33 -92 -78 -92c-21 0 -37 9 -57 20 +s-30 17 -42 17c-15 0 -26 -18 -30 -41zM369 824h61l67 -114h-68l-36 69h-2l-69 -69h-75z" /> + <glyph glyph-name="uni1EAC" unicode="&#x1eac;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM362 828h65l80 -118h-68l-49 72h-2l-72 -72h-74zM220 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50 +c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1EAE" unicode="&#x1eae;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM429 895h88l-120 -105h-49zM266 802h50c0 -27 16 -52 62 -52c45 0 69 23 76 52h52c-9 -55 -51 -103 -132 -103c-85 0 -115 48 -108 103z" /> + <glyph glyph-name="uni1EB0" unicode="&#x1eb0;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM270 897h89l61 -105h-49zM266 802h50c0 -27 16 -52 62 -52c45 0 69 23 77 52h52c-10 -55 -52 -103 -133 -103c-85 0 -116 48 -108 103z" /> + <glyph glyph-name="uni1EB2" unicode="&#x1eb2;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-87l348 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM393 781l-41 17c21 38 62 47 62 79c0 16 -13 29 -31 29c-20 0 -40 -16 -53 -30l-26 27c19 25 54 50 95 50c45 0 76 -28 76 -65 +c0 -52 -55 -68 -82 -107zM268 802h50c0 -27 16 -52 62 -52s69 23 77 52h52c-10 -55 -52 -103 -132 -103c-86 0 -116 48 -109 103z" /> + <glyph glyph-name="uni1EB4" unicode="&#x1eb4;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM265 802h52c-1 -27 14 -52 60 -52c45 0 67 23 75 52h54c-10 -55 -52 -103 -132 -103c-86 0 -116 48 -109 103zM313 833h-47 +c9 51 39 93 80 93c27 0 42 -9 60 -21c15 -10 29 -18 44 -18c16 0 26 13 34 41h46c-10 -63 -37 -97 -83 -97c-25 0 -40 8 -59 19c-17 10 -27 19 -43 18c-16 0 -26 -15 -32 -35z" /> + <glyph glyph-name="uni1EB6" unicode="&#x1eb6;" horiz-adv-x="568" +d="M400 213h-232l-107 -213h-88l349 674h97l94 -674h-85zM198 279h196l-26 195c-4 35 -9 85 -12 124h-2c-18 -40 -35 -82 -55 -123zM275 835h52c0 -28 15 -54 61 -54s68 24 76 54h54c-10 -57 -52 -106 -133 -106c-87 0 -117 49 -110 106zM217 -181c-28 0 -49 24 -49 51 +c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1EB8" unicode="&#x1eb8;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245zM191 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1EBA" unicode="&#x1eba;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245zM348 708l-44 15c22 41 61 52 61 86c0 16 -11 29 -29 29c-21 0 -39 -17 -53 -34l-30 21c22 34 56 64 103 64c45 0 75 -30 75 -67c0 -54 -51 -68 -83 -114z" /> + <glyph glyph-name="uni1EBC" unicode="&#x1ebc;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245zM261 716h-47c10 59 41 100 82 100c27 0 42 -9 60 -21c15 -10 29 -18 44 -18c17 0 27 13 35 40h46c-11 -62 -38 -96 -83 -96c-26 0 -40 8 -60 20c-17 10 -27 19 -43 18 +c-16 0 -27 -16 -34 -43z" /> + <glyph glyph-name="uni1EBE" unicode="&#x1ebe;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245zM335 824h61l67 -114h-68l-36 69h-2l-69 -69h-76zM529 897h83l-122 -103h-50z" /> + <glyph glyph-name="uni1EC0" unicode="&#x1ec0;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245zM394 881h83l60 -105h-50zM332 824h61l66 -114h-67l-36 69h-2l-70 -69h-75z" /> + <glyph glyph-name="uni1EC2" unicode="&#x1ec2;" horiz-adv-x="470" +d="M433 387l-14 -70h-244l-47 -246h276l-14 -71h-358l128 674h343l-14 -71h-260l-41 -216h245zM500 754l-41 17c21 38 62 47 62 79c0 16 -13 29 -31 29c-20 0 -40 -16 -52 -30l-27 27c19 25 54 50 96 50c44 0 75 -28 75 -65c0 -52 -55 -68 -82 -107zM334 824h61l67 -114h-68 +l-36 69h-2l-69 -69h-76z" /> + <glyph glyph-name="uni1EC4" unicode="&#x1ec4;" horiz-adv-x="470" +d="M433 387l-14 -70h-244l-47 -246h276l-14 -71h-358l128 674h343l-14 -71h-260l-41 -216h245zM290 837h-47c6 56 35 93 78 93c22 0 37 -9 59 -21c15 -9 28 -16 40 -16c15 0 26 9 32 40h46c-7 -64 -33 -92 -78 -92c-21 0 -37 9 -58 20c-19 11 -29 17 -41 17 +c-15 0 -26 -18 -31 -41zM331 824h61l67 -114h-68l-36 69h-2l-69 -69h-76z" /> + <glyph glyph-name="uni1EC6" unicode="&#x1ec6;" horiz-adv-x="470" +d="M433 387l-14 -70h-245l-46 -246h276l-14 -71h-359l128 674h344l-14 -71h-260l-41 -216h245zM322 828h65l80 -118h-68l-49 72h-2l-72 -72h-74zM193 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1EC8" unicode="&#x1ec8;" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83zM223 708l-44 15c22 41 62 52 62 86c0 16 -12 29 -29 29c-22 0 -40 -17 -53 -34l-31 21c23 34 56 64 103 64c45 0 75 -30 75 -67c0 -54 -50 -68 -83 -114z" /> + <glyph glyph-name="uni1ECA" unicode="&#x1eca;" horiz-adv-x="233" +d="M158 674h83l-128 -674h-83zM48 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1ECC" unicode="&#x1ecc;" horiz-adv-x="668" +d="M402 685c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91zM391 615c-60 0 -112 -26 -154 -67c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211 +c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210zM253 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1ECE" unicode="&#x1ece;" horiz-adv-x="668" +d="M402 685c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91zM391 615c-60 0 -112 -26 -154 -67c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211 +c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210zM437 708l-44 15c22 41 61 52 61 86c0 16 -11 29 -29 29c-21 0 -39 -17 -52 -34l-31 21c23 34 56 63 103 63c45 0 75 -29 75 -66c0 -55 -51 -68 -83 -114z" /> + <glyph glyph-name="uni1ED0" unicode="&#x1ed0;" horiz-adv-x="668" +d="M402 685c182 0 255 -132 255 -277c0 -116 -43 -245 -123 -325c-59 -59 -138 -94 -231 -94c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91zM391 615c-59 0 -112 -26 -154 -68c-65 -65 -102 -183 -102 -277c0 -110 49 -211 181 -211 +c57 0 112 25 154 67c63 64 100 185 100 279c0 95 -31 209 -179 210zM413 824h62l66 -114h-67l-36 69h-2l-70 -69h-75zM607 897h84l-123 -103h-50z" /> + <glyph glyph-name="uni1ED2" unicode="&#x1ed2;" horiz-adv-x="668" +d="M402 685c182 0 255 -132 255 -277c0 -116 -43 -245 -123 -325c-59 -59 -138 -94 -231 -94c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91zM391 615c-60 0 -112 -26 -154 -68c-65 -65 -102 -183 -102 -277c0 -110 49 -211 181 -211 +c57 0 112 25 154 67c63 64 100 185 100 279c0 95 -31 209 -179 210zM475 881h83l60 -105h-50zM413 824h61l66 -114h-67l-36 69h-2l-70 -69h-75z" /> + <glyph glyph-name="uni1ED4" unicode="&#x1ed4;" horiz-adv-x="668" +d="M402 685c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91zM391 615c-60 0 -112 -26 -154 -67c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211 +c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210zM576 754l-41 17c21 38 62 47 62 79c0 16 -13 29 -31 29c-20 0 -40 -16 -53 -30l-26 27c19 25 54 50 95 50c44 0 75 -28 75 -65c0 -52 -54 -68 -81 -107zM410 824h61l67 -114h-68l-36 69h-2l-70 -69h-75z +" /> + <glyph glyph-name="uni1ED6" unicode="&#x1ed6;" horiz-adv-x="668" +d="M402 685c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94c-174 0 -255 131 -255 274c0 119 46 250 129 331c57 56 140 91 225 91zM391 615c-60 0 -112 -26 -154 -67c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211 +c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210zM370 837h-48c6 56 36 93 78 93c22 0 37 -9 59 -22c15 -8 28 -16 40 -16c16 0 26 10 32 41h47c-7 -64 -34 -92 -78 -92c-21 0 -38 9 -58 20c-19 11 -30 17 -42 17c-15 0 -26 -18 -30 -41zM410 824h62 +l66 -114h-67l-36 69h-2l-70 -69h-75z" /> + <glyph glyph-name="uni1ED8" unicode="&#x1ed8;" horiz-adv-x="668" +d="M402 685c182 0 255 -132 255 -276c0 -117 -43 -246 -123 -326c-59 -59 -138 -94 -231 -94c-174 0 -255 131 -255 274c0 119 46 250 128 331c58 56 141 91 226 91zM391 615c-60 0 -112 -26 -154 -67c-65 -65 -102 -184 -102 -278c0 -110 49 -211 181 -211 +c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -179 210zM402 828h65l80 -118h-68l-49 72h-2l-72 -72h-74zM255 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1EDA" unicode="&#x1eda;" horiz-adv-x="668" +d="M648 740l69 12c7 -15 11 -40 11 -64c0 -70 -47 -113 -117 -107c33 -47 46 -108 46 -172c0 -117 -42 -246 -122 -326c-60 -59 -138 -94 -231 -94c-174 0 -256 131 -256 274c0 119 47 250 128 331c58 56 141 91 226 91c48 0 83 -9 117 -23c31 -13 57 -30 87 -30 +c39 0 53 21 53 57c0 19 -5 36 -11 51zM392 615c-60 0 -113 -26 -154 -68c-66 -65 -103 -183 -103 -277c0 -110 49 -211 181 -211c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -178 210zM453 830h109l-137 -118h-74z" /> + <glyph glyph-name="uni1EDC" unicode="&#x1edc;" horiz-adv-x="668" +d="M648 741l69 11c7 -15 11 -39 11 -64c0 -70 -47 -113 -117 -106c33 -48 46 -109 46 -173c0 -117 -42 -246 -122 -326c-60 -59 -138 -94 -231 -94c-174 0 -256 131 -256 274c0 119 47 250 128 331c58 56 141 91 226 91c48 0 83 -9 117 -23c31 -13 57 -29 87 -29 +c39 0 53 20 53 56c0 19 -5 36 -11 52zM392 615c-60 0 -113 -26 -154 -67c-66 -66 -103 -184 -103 -278c0 -110 49 -211 181 -211c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -178 210zM293 830h103l75 -117h-68z" /> + <glyph glyph-name="uni1EDE" unicode="&#x1ede;" horiz-adv-x="668" +d="M648 741l69 11c7 -15 11 -39 11 -64c0 -70 -47 -113 -117 -106c33 -48 46 -109 46 -173c0 -117 -42 -246 -122 -326c-60 -59 -138 -94 -231 -94c-174 0 -256 131 -256 274c0 119 47 250 128 331c58 56 141 91 226 91c48 0 83 -9 117 -23c31 -13 57 -30 87 -30 +c39 0 53 21 53 57c0 19 -5 36 -11 52zM392 615c-60 0 -113 -26 -154 -68c-66 -65 -103 -183 -103 -277c0 -110 49 -211 181 -211c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -178 210zM437 711l-44 15c22 40 61 51 61 85c0 17 -11 29 -29 29 +c-21 0 -39 -17 -52 -33l-31 21c23 33 56 63 103 63c45 0 75 -29 75 -67c0 -54 -51 -68 -83 -113z" /> + <glyph glyph-name="uni1EE0" unicode="&#x1ee0;" horiz-adv-x="668" +d="M648 741l69 11c7 -14 11 -39 11 -63c0 -71 -47 -114 -117 -107c33 -48 46 -109 46 -173c0 -117 -42 -246 -122 -326c-60 -59 -138 -94 -231 -94c-174 0 -256 131 -256 275c0 118 47 250 128 330c59 56 142 91 227 91c48 0 82 -9 116 -22c31 -13 57 -30 87 -30 +c39 0 53 21 53 56c0 20 -5 36 -11 52zM392 615c-60 0 -113 -26 -154 -67c-66 -65 -103 -184 -103 -278c0 -110 49 -211 181 -211c57 0 112 25 154 67c64 64 100 185 100 279c0 96 -31 210 -178 210zM343 718h-47c10 59 41 100 82 100c27 0 42 -9 60 -20 +c15 -10 29 -18 44 -18c16 0 26 13 34 40h46c-11 -62 -38 -96 -83 -96c-25 0 -40 8 -59 19c-17 10 -27 19 -43 18c-16 0 -27 -16 -34 -43z" /> + <glyph glyph-name="uni1EE2" unicode="&#x1ee2;" horiz-adv-x="668" +d="M648 741l69 11c7 -15 11 -39 11 -64c0 -70 -47 -113 -117 -106c33 -48 46 -109 46 -173c0 -117 -42 -246 -122 -326c-60 -59 -138 -94 -231 -94c-174 0 -256 131 -256 274c0 119 47 250 128 331c58 56 141 91 226 91c48 0 83 -9 117 -23c31 -13 57 -30 87 -30 +c39 0 53 21 53 57c0 19 -5 36 -11 52zM392 615c-60 0 -113 -26 -154 -68c-66 -65 -103 -183 -103 -277c0 -110 49 -211 181 -211c57 0 112 25 154 67c63 64 100 185 100 279c0 96 -31 210 -178 210zM252 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50 +c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1EE4" unicode="&#x1ee4;" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 125 -130c92 0 159 62 188 214l77 400h83l-77 -403c-39 -201 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93zM236 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50 +c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1EE6" unicode="&#x1ee6;" horiz-adv-x="621" +d="M158 674h83l-76 -399c-5 -28 -8 -57 -8 -85c0 -86 50 -130 125 -130c92 0 159 62 188 214l77 400h83l-77 -403c-39 -201 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 29 3 62 9 93zM410 708l-44 15c22 41 61 52 61 86c0 16 -11 29 -29 29c-21 0 -39 -17 -53 -34 +l-30 21c22 34 56 64 103 64c45 0 75 -30 75 -67c0 -54 -51 -68 -83 -114z" /> + <glyph glyph-name="uni1EE8" unicode="&#x1ee8;" horiz-adv-x="627" +d="M620 623l-67 -352c-39 -202 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 28 3 61 9 92l75 394h83l-76 -400c-5 -28 -8 -57 -8 -84c0 -87 50 -131 125 -131c92 0 159 63 188 214l77 401h69c40 0 60 18 60 55c0 15 -3 29 -7 43l64 12c5 -17 7 -34 7 -49 +c0 -67 -37 -110 -120 -112zM444 828h109l-137 -118h-74z" /> + <glyph glyph-name="uni1EEA" unicode="&#x1eea;" horiz-adv-x="627" +d="M620 623l-67 -352c-39 -202 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 28 3 61 9 92l75 394h83l-76 -400c-5 -28 -8 -57 -8 -84c0 -87 50 -131 125 -131c92 0 159 63 188 214l77 401h69c40 0 60 18 60 55c0 15 -3 29 -7 43l64 12c5 -17 7 -33 7 -49 +c0 -67 -37 -110 -120 -112zM282 828h103l75 -117h-68z" /> + <glyph glyph-name="uni1EEC" unicode="&#x1eec;" horiz-adv-x="627" +d="M620 623l-67 -352c-39 -202 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 28 3 61 9 92l75 394h83l-76 -400c-5 -28 -8 -57 -8 -84c0 -87 50 -131 125 -131c92 0 159 63 188 214l77 401h69c40 0 60 17 60 55c0 15 -3 29 -7 43l64 11c5 -16 7 -33 7 -48 +c0 -67 -37 -110 -120 -112zM415 708l-44 15c22 41 61 52 61 86c0 16 -11 29 -29 29c-21 0 -39 -17 -52 -34l-31 21c23 34 56 64 103 64c45 0 75 -30 75 -67c0 -54 -51 -68 -83 -114z" /> + <glyph glyph-name="uni1EEE" unicode="&#x1eee;" horiz-adv-x="627" +d="M620 623l-67 -352c-39 -202 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 28 3 61 9 92l75 394h83l-76 -400c-5 -28 -8 -57 -8 -84c0 -87 50 -131 125 -131c92 0 159 63 188 214l77 401h69c40 0 60 17 60 54c0 15 -3 29 -7 43l64 12c5 -17 7 -33 7 -49 +c0 -66 -37 -109 -120 -111zM327 716h-47c10 59 41 100 82 100c27 0 42 -9 60 -21c15 -10 29 -18 44 -18c16 0 26 13 34 40h46c-11 -62 -38 -96 -83 -96c-25 0 -40 8 -59 20c-17 10 -27 19 -43 18c-16 0 -27 -16 -34 -43z" /> + <glyph glyph-name="uni1EF0" unicode="&#x1ef0;" horiz-adv-x="627" +d="M620 623l-67 -352c-39 -202 -139 -282 -282 -282c-111 0 -197 60 -197 199c0 28 3 61 9 92l75 394h83l-76 -400c-5 -28 -8 -57 -8 -84c0 -87 50 -131 125 -131c92 0 159 63 188 214l77 401h69c40 0 60 17 60 55c0 15 -3 29 -7 43l64 11c5 -16 7 -33 7 -48 +c0 -67 -37 -110 -120 -112zM238 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1EF4" unicode="&#x1ef4;" horiz-adv-x="517" +d="M243 0h-82l53 280l-130 394h89l65 -218c17 -60 23 -87 28 -113h2c17 28 40 66 72 116l146 215h97l-287 -393zM184 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="uni1EF6" unicode="&#x1ef6;" horiz-adv-x="517" +d="M243 0h-82l53 280l-130 394h89l65 -218c17 -60 23 -87 28 -113h2c17 28 40 66 72 116l146 215h97l-287 -393zM358 708l-44 15c22 41 61 52 61 86c0 16 -11 29 -29 29c-21 0 -39 -17 -53 -34l-30 21c22 34 56 64 103 64c45 0 75 -30 75 -67c0 -54 -51 -68 -83 -114z" /> + <glyph glyph-name="uni1EF8" unicode="&#x1ef8;" horiz-adv-x="517" +d="M243 0h-82l53 280l-130 394h89l65 -218c17 -60 23 -87 28 -113h2c17 28 40 66 72 116l146 215h97l-287 -393zM269 716h-47c10 59 41 100 82 100c27 0 42 -9 60 -21c15 -10 29 -18 44 -18c17 0 27 13 35 40h46c-11 -62 -38 -96 -83 -96c-26 0 -40 8 -60 20 +c-17 10 -27 19 -43 18c-16 0 -27 -16 -34 -43z" /> + <glyph glyph-name="uni1EA1" unicode="&#x1ea1;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM201 -183c-29 0 -50 24 -50 51c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1EA3" unicode="&#x1ea3;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM341 531l-47 14c17 42 68 57 68 97c0 17 -12 30 -29 30c-24 0 -42 -19 -55 -37l-32 21c22 36 55 67 106 67c46 0 75 -31 75 -68c0 -62 -59 -79 -86 -124z" /> + <glyph glyph-name="uni1EA5" unicode="&#x1ea5;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM324 693h64l63 -143h-64l-36 94h-2l-65 -94h-67zM527 771h83l-121 -130h-51z" /> + <glyph glyph-name="uni1EA7" unicode="&#x1ea7;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -187 -136c-86 0 -139 68 -140 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c70 0 151 90 175 219zM383 773h76l66 -130h-46zM314 693h65l63 -143h-64l-37 94h-2l-64 -94h-68z" /> + <glyph glyph-name="uni1EA9" unicode="&#x1ea9;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-85 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM314 693h65l63 -143h-64l-37 94h-2l-64 -94h-68zM482 634l-41 17c21 38 62 47 62 79c0 16 -13 28 -31 28c-20 0 -40 -16 -53 -30l-26 28c19 25 54 50 95 50c45 0 76 -28 76 -65c0 -53 -55 -69 -82 -107z" /> + <glyph glyph-name="uni1EAB" unicode="&#x1eab;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-53 -101 -119 -136 -188 -136c-85 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM279 687h-48c6 56 36 93 79 93c21 0 37 -9 59 -21c15 -9 28 -16 40 -16c15 0 25 9 31 40h47c-7 -64 -33 -92 -78 -92c-21 0 -37 9 -58 21c-19 10 -29 16 -41 16c-16 0 -27 -18 -31 -41zM319 670h59l63 -120h-61l-35 73h-2l-57 -73h-68z" /> + <glyph glyph-name="uni1EAD" unicode="&#x1ead;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM327 686h59l69 -143h-62l-43 91h-2l-70 -91h-67zM209 -183c-29 0 -50 24 -50 51c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1EAF" unicode="&#x1eaf;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l27 146c-11 4 -29 7 -57 7c-125 0 -228 -130 -228 -265c0 -54 19 -107 83 -107 +c70 0 150 90 175 219zM387 773h84l-111 -132h-53zM226 654h49c-2 -38 20 -68 60 -68c48 0 74 35 82 68h53c-13 -73 -68 -121 -137 -121c-89 0 -115 62 -107 121z" /> + <glyph glyph-name="uni1EB1" unicode="&#x1eb1;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-53 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-12 4 -30 7 -58 7c-125 0 -228 -130 -228 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM230 774h83l66 -133h-51zM224 653h49c-2 -38 20 -68 60 -68c49 0 74 36 83 68h52c-12 -73 -68 -120 -137 -120c-89 0 -115 61 -107 120z" /> + <glyph glyph-name="uni1EB3" unicode="&#x1eb3;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c70 0 151 90 175 219zM224 655h49c-2 -38 20 -68 60 -68c49 0 75 35 83 68h53c-13 -73 -68 -120 -137 -120c-90 0 -116 61 -108 120zM348 634l-41 18c21 38 62 47 62 79c0 16 -13 28 -31 28c-20 0 -40 -16 -53 -30l-26 27c19 26 54 51 96 51c44 0 75 -28 75 -65 +c0 -53 -55 -69 -82 -108z" /> + <glyph glyph-name="uni1EB5" unicode="&#x1eb5;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-11 4 -29 7 -57 7c-126 0 -229 -130 -229 -265c0 -54 19 -107 83 -107 +c69 0 151 90 175 219zM228 654h50c-2 -37 17 -68 56 -68c47 0 70 36 79 68h52c-12 -73 -64 -120 -133 -120c-89 0 -112 60 -104 120zM275 689h-46c9 51 39 93 80 93c27 0 42 -9 60 -21c15 -10 29 -18 44 -18c16 0 27 13 34 40h47c-11 -62 -38 -96 -83 -96 +c-26 0 -40 7 -60 19c-17 10 -27 19 -43 18c-16 0 -26 -15 -33 -35z" /> + <glyph glyph-name="uni1EB7" unicode="&#x1eb7;" horiz-adv-x="522" +d="M427 0h-78c0 29 5 75 11 125h-2c-52 -101 -119 -136 -188 -136c-86 0 -139 68 -139 160c0 169 124 346 335 346c47 0 97 -8 131 -18l-50 -253c-16 -84 -22 -170 -20 -224zM375 276l28 146c-12 4 -30 7 -58 7c-125 0 -228 -130 -228 -265c0 -54 19 -107 83 -107 +c69 0 150 90 175 219zM234 683h50c-2 -37 17 -68 55 -68c48 0 71 35 80 68h52c-12 -73 -64 -121 -133 -121c-89 0 -112 60 -104 121zM206 -183c-29 0 -50 24 -50 51c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1EB9" unicode="&#x1eb9;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM186 -183c-29 0 -50 24 -50 51c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1EBB" unicode="&#x1ebb;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM306 531l-46 13c16 43 67 57 67 98c0 17 -12 30 -29 30c-23 0 -42 -19 -55 -37l-32 21c22 36 55 67 106 67c46 0 75 -31 75 -68c0 -62 -58 -79 -86 -124z" /> + <glyph glyph-name="uni1EBD" unicode="&#x1ebd;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM227 568h-48c7 58 34 100 77 100c26 0 40 -10 61 -22c14 -9 27 -17 40 -17c17 0 24 9 30 42h47c-8 -62 -30 -96 -77 -96c-23 0 -43 10 -59 20c-14 9 -27 18 -42 18c-17 0 -24 -19 -29 -45z" /> + <glyph glyph-name="uni1EBF" unicode="&#x1ebf;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM277 693h64l63 -143h-64l-36 94h-3l-64 -94h-67zM480 771h83l-121 -130h-51z" /> + <glyph glyph-name="uni1EC1" unicode="&#x1ec1;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM346 773h75l67 -130h-46zM277 693h64l63 -143h-63l-37 94h-3l-63 -94h-68z" /> + <glyph glyph-name="uni1EC3" unicode="&#x1ec3;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM277 693h64l63 -143h-63l-37 94h-3l-63 -94h-68zM445 634l-41 17c21 38 62 47 62 79c0 16 -13 28 -32 28s-39 -16 -52 -30l-26 28c19 25 53 50 95 50c44 0 75 -28 75 -65c0 -53 -54 -69 -81 -107z" /> + <glyph glyph-name="uni1EC5" unicode="&#x1ec5;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 107 -65c58 0 101 17 131 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM242 687h-48c7 56 36 93 79 93c21 0 37 -9 59 -21c15 -9 27 -16 40 -16c15 0 25 9 31 40h47c-7 -64 -34 -92 -78 -92c-21 0 -37 9 -58 21c-19 10 -29 16 -41 16c-16 0 -26 -18 -31 -41zM282 670h59l63 -120h-61l-35 73h-2l-56 -73h-69z" /> + <glyph glyph-name="uni1EC7" unicode="&#x1ec7;" horiz-adv-x="453" +d="M365 89l12 -62c-36 -20 -95 -38 -160 -38c-128 0 -184 88 -184 195c0 146 108 311 264 311c92 0 142 -55 142 -125c0 -127 -143 -160 -322 -157c-4 -21 -1 -66 10 -92c19 -44 58 -65 108 -65c57 0 100 17 130 33zM359 369c0 39 -30 61 -74 61c-79 0 -138 -77 -159 -153 +c131 -2 233 16 233 92zM285 686h59l69 -143h-62l-43 91h-2l-70 -91h-67zM186 -183c-29 0 -50 24 -50 51c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1EC9" unicode="&#x1ec9;" horiz-adv-x="229" +d="M111 0h-83l92 484h83zM191 531l-46 14c16 42 67 57 67 97c0 17 -12 30 -29 30c-23 0 -41 -19 -54 -37l-32 21c22 36 55 67 106 67c45 0 74 -31 74 -68c0 -62 -58 -79 -86 -124z" /> + <glyph glyph-name="uni1ECB" unicode="&#x1ecb;" horiz-adv-x="229" +d="M111 0h-83l93 484h82zM183 566c-29 0 -47 22 -47 52c1 32 25 56 54 56c30 0 50 -22 50 -52c-1 -33 -24 -56 -57 -56zM59 -183c-29 0 -50 24 -50 51c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1ECD" unicode="&#x1ecd;" horiz-adv-x="522" +d="M303 495c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305c-121 0 -189 90 -189 199c0 160 111 307 268 307zM294 429c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136c98 0 172 126 172 239c0 56 -26 135 -113 135zM205 -183c-29 0 -50 24 -50 51 +c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1ECF" unicode="&#x1ecf;" horiz-adv-x="522" +d="M303 495c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305c-121 0 -189 90 -189 199c0 160 111 307 268 307zM294 429c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136c98 0 172 126 172 239c0 56 -26 135 -113 135zM339 531l-46 13c16 43 67 57 67 98 +c0 17 -12 30 -29 30c-23 0 -42 -19 -54 -37l-33 21c23 36 55 67 106 67c46 0 75 -31 75 -68c0 -62 -58 -79 -86 -124z" /> + <glyph glyph-name="uni1ED1" unicode="&#x1ed1;" horiz-adv-x="522" +d="M303 495c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305c-121 0 -189 90 -189 199c0 160 111 307 268 307zM294 429c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136c98 0 172 126 172 239c0 56 -26 135 -113 135zM301 693h64l63 -143h-64l-36 94h-2l-65 -94 +h-67zM504 771h83l-121 -130h-51z" /> + <glyph glyph-name="uni1ED3" unicode="&#x1ed3;" horiz-adv-x="522" +d="M303 495c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305c-121 0 -189 90 -189 199c0 160 111 307 268 307zM294 429c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136c98 0 172 126 172 239c0 56 -26 135 -113 135zM370 773h76l66 -130h-46zM301 693h65l63 -143 +h-64l-37 94h-2l-64 -94h-67z" /> + <glyph glyph-name="uni1ED5" unicode="&#x1ed5;" horiz-adv-x="522" +d="M303 495c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305c-121 0 -189 90 -189 199c0 160 111 307 268 307zM294 429c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136c98 0 172 126 172 239c0 56 -26 135 -113 135zM296 693h65l62 -143h-63l-37 94h-2l-64 -94 +h-67zM464 634l-41 17c21 38 62 47 62 79c0 16 -13 28 -31 28c-20 0 -40 -16 -53 -30l-26 28c19 25 54 50 95 50c45 0 76 -28 76 -65c0 -53 -55 -69 -82 -107z" /> + <glyph glyph-name="uni1ED7" unicode="&#x1ed7;" horiz-adv-x="522" +d="M303 495c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305c-121 0 -189 90 -189 199c0 160 111 307 268 307zM294 429c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136c98 0 172 126 172 239c0 56 -26 135 -113 135zM267 687h-48c6 56 35 93 78 93 +c22 0 37 -9 59 -21c15 -9 28 -16 40 -16c15 0 26 9 32 40h46c-6 -64 -33 -92 -78 -92c-21 0 -37 9 -58 21c-19 10 -29 16 -41 16c-15 0 -26 -18 -30 -41zM306 670h59l63 -120h-60l-36 73h-2l-56 -73h-68z" /> + <glyph glyph-name="uni1ED9" unicode="&#x1ed9;" horiz-adv-x="522" +d="M303 495c131 0 190 -99 190 -201c0 -150 -106 -305 -269 -305c-121 0 -189 90 -189 199c0 160 111 307 268 307zM294 429c-104 0 -173 -127 -173 -238c0 -79 44 -136 114 -136c98 0 172 126 172 239c0 56 -26 135 -113 135zM315 686h59l69 -143h-62l-43 91h-2l-70 -91 +h-67zM200 -183c-29 0 -50 24 -50 51c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1EDB" unicode="&#x1edb;" horiz-adv-x="522" +d="M294 428c-104 0 -173 -127 -173 -237c0 -79 44 -136 114 -136c97 0 172 126 172 238c0 57 -26 135 -113 135zM494 553l66 12c5 -18 8 -38 8 -56c0 -65 -39 -105 -105 -102c19 -31 29 -71 29 -113c0 -150 -106 -305 -268 -305c-121 0 -189 90 -189 199 +c0 160 111 307 268 307c31 0 58 -5 83 -17c21 -9 42 -23 70 -23c30 0 47 17 47 49c0 15 -3 33 -9 49zM348 686h100l-133 -143h-65z" /> + <glyph glyph-name="uni1EDD" unicode="&#x1edd;" horiz-adv-x="522" +d="M294 428c-104 0 -173 -127 -173 -237c0 -79 44 -136 114 -136c97 0 172 126 172 238c0 57 -26 135 -113 135zM494 553l66 12c5 -18 8 -38 8 -56c0 -65 -39 -105 -105 -102c19 -31 29 -71 29 -113c0 -150 -106 -305 -268 -305c-121 0 -189 90 -189 199 +c0 160 111 307 268 307c31 0 58 -5 83 -17c21 -9 42 -23 70 -23c30 0 47 17 47 49c0 15 -3 33 -9 49zM206 686h94l66 -143h-60z" /> + <glyph glyph-name="uni1EDF" unicode="&#x1edf;" horiz-adv-x="522" +d="M294 428c-104 0 -173 -127 -173 -237c0 -79 44 -136 114 -136c97 0 172 126 172 238c0 57 -26 135 -113 135zM494 553l66 13c5 -18 8 -39 8 -57c0 -65 -39 -105 -105 -102c19 -31 29 -71 29 -113c0 -150 -106 -305 -268 -305c-121 0 -189 90 -189 199 +c0 160 111 307 268 307c31 0 58 -5 83 -17c21 -9 42 -23 70 -23c30 0 47 17 47 49c0 15 -3 33 -9 49zM326 531l-46 14c16 42 67 57 67 97c0 17 -12 30 -29 30c-23 0 -42 -19 -55 -37l-32 21c22 36 55 67 106 67c45 0 75 -31 75 -68c0 -62 -59 -79 -86 -124z" /> + <glyph glyph-name="uni1EE1" unicode="&#x1ee1;" horiz-adv-x="522" +d="M294 429c-104 0 -173 -127 -173 -238c0 -78 44 -136 114 -136c98 0 172 127 172 238c0 57 -26 135 -113 136zM494 554l66 12c6 -18 8 -39 8 -57c0 -65 -39 -105 -104 -102c19 -31 29 -71 29 -113c0 -150 -106 -305 -269 -305c-121 0 -189 90 -190 199 +c0 160 111 307 269 307c31 0 58 -5 83 -17c21 -9 42 -23 70 -23c30 0 47 17 47 50c0 14 -3 32 -9 49zM239 568l-48 1c7 57 34 99 77 99c26 0 40 -10 61 -22c15 -9 27 -17 40 -17c17 0 24 9 30 42h47c-8 -62 -30 -96 -76 -96c-24 0 -44 10 -60 20c-14 9 -27 18 -42 18 +c-17 0 -24 -19 -29 -45z" /> + <glyph glyph-name="uni1EE3" unicode="&#x1ee3;" horiz-adv-x="522" +d="M294 428c-104 0 -173 -127 -173 -237c0 -79 44 -136 114 -136c97 0 172 126 172 238c0 57 -26 135 -113 135zM494 553l66 13c5 -18 8 -39 8 -57c0 -65 -39 -105 -105 -102c19 -31 29 -71 29 -113c0 -150 -106 -305 -268 -305c-121 0 -189 90 -189 199 +c0 160 111 307 268 307c31 0 58 -5 83 -17c21 -9 42 -23 70 -23c30 0 47 17 47 49c0 15 -3 33 -9 49zM200 -183c-29 0 -50 24 -50 51c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1EE5" unicode="&#x1ee5;" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-75l13 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM202 -183c-29 0 -50 24 -50 51 +c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1EE7" unicode="&#x1ee7;" horiz-adv-x="526" +d="M417 484h83l-65 -343c-11 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM340 531l-46 14c16 42 67 57 67 97 +c0 17 -12 30 -29 30c-23 0 -42 -19 -54 -37l-33 21c22 36 55 67 106 67c45 0 75 -31 75 -68c0 -62 -59 -79 -86 -124z" /> + <glyph glyph-name="uni1EE9" unicode="&#x1ee9;" horiz-adv-x="535" +d="M537 581l64 11c4 -13 7 -32 7 -48c0 -65 -38 -110 -118 -111l-55 -292c-10 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -107 -102 -170 -102s-128 30 -128 140c0 23 3 49 9 81l53 274h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 176 +l48 249h67c42 0 60 19 60 53c0 15 -4 31 -8 44zM364 686h100l-133 -143h-65z" /> + <glyph glyph-name="uni1EEB" unicode="&#x1eeb;" horiz-adv-x="535" +d="M537 581l64 11c4 -13 7 -32 7 -48c0 -65 -38 -110 -118 -111l-55 -292c-10 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -107 -102 -170 -102s-128 30 -128 140c0 23 3 49 9 81l53 274h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 176 +l48 249h67c42 0 60 19 60 53c0 15 -4 31 -8 44zM217 686h94l66 -143h-60z" /> + <glyph glyph-name="uni1EED" unicode="&#x1eed;" horiz-adv-x="535" +d="M537 582l64 11c4 -14 7 -32 7 -48c0 -66 -38 -111 -118 -112l-55 -292c-10 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -107 -102 -170 -102s-128 30 -128 140c0 23 3 49 9 81l53 274h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 176 +l48 249h67c42 0 60 19 60 54c0 15 -4 31 -8 44zM335 531l-46 14c16 42 67 57 67 97c0 17 -12 30 -29 30c-23 0 -42 -19 -54 -37l-33 21c22 36 55 67 106 67c45 0 75 -31 75 -68c0 -62 -59 -79 -86 -124z" /> + <glyph glyph-name="uni1EEF" unicode="&#x1eef;" horiz-adv-x="535" +d="M537 582l64 11c4 -14 7 -32 7 -48c0 -66 -38 -111 -118 -112l-55 -292c-10 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -107 -102 -170 -102s-128 30 -128 140c0 23 3 49 9 81l53 274h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 176 +l48 249h67c42 0 60 19 60 54c0 15 -4 31 -8 44zM248 568l-48 1c7 57 34 99 77 99c26 0 40 -10 61 -22c15 -9 27 -17 40 -17c17 0 24 9 30 42h47c-8 -62 -30 -96 -77 -96c-23 0 -43 10 -59 20c-14 9 -27 18 -42 18c-17 0 -24 -19 -29 -45z" /> + <glyph glyph-name="uni1EF1" unicode="&#x1ef1;" horiz-adv-x="535" +d="M537 582l64 11c4 -14 7 -32 7 -48c0 -66 -38 -111 -118 -112l-55 -292c-10 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -107 -102 -170 -102s-128 30 -128 140c0 23 3 49 9 81l53 274h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 176 +l48 249h67c42 0 60 19 60 54c0 15 -4 31 -8 44zM204 -183c-29 0 -50 24 -50 51c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1EF5" unicode="&#x1ef5;" horiz-adv-x="441" +d="M48 484h86l48 -260c11 -56 17 -92 22 -128h2c13 31 27 65 52 119l124 269h88l-182 -368c-52 -104 -101 -189 -167 -254c-54 -55 -113 -78 -140 -84l-21 72c21 7 56 20 89 46c33 25 68 64 94 112c4 8 4 13 2 22zM290 -183c-29 0 -50 24 -50 51c0 29 23 52 51 52 +s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="uni1EF7" unicode="&#x1ef7;" horiz-adv-x="441" +d="M48 484h86l48 -260c11 -56 17 -92 22 -128h2c13 31 27 65 52 119l124 269h88l-182 -368c-52 -104 -101 -189 -167 -254c-54 -55 -113 -78 -140 -84l-21 72c21 7 56 20 89 46c33 25 68 64 94 112c4 8 4 13 2 22zM296 531l-47 14c17 42 67 57 67 97c0 17 -12 30 -29 30 +c-23 0 -41 -19 -54 -37l-32 21c22 36 55 67 106 67c45 0 75 -31 75 -68c0 -62 -59 -79 -86 -124z" /> + <glyph glyph-name="uni1EF9" unicode="&#x1ef9;" horiz-adv-x="441" +d="M48 484h86l48 -260c11 -56 17 -92 22 -128h2c13 31 27 65 52 119l123 269h88l-181 -368c-52 -104 -101 -189 -167 -254c-54 -55 -113 -78 -140 -84l-21 72c21 7 56 20 89 46c33 25 68 64 94 112c4 8 4 13 2 22zM204 568h-48c7 58 34 100 77 100c26 0 40 -10 61 -22 +c15 -9 27 -17 40 -17c17 0 24 9 30 42h47c-8 -62 -30 -96 -77 -96c-23 0 -43 10 -59 20c-14 9 -27 18 -42 18c-17 0 -24 -19 -29 -45z" /> + <glyph glyph-name="breve_acutecomb" unicode="&#xe300;" +d="M304 773h84l-111 -132h-53zM143 654h49c-2 -38 20 -68 60 -68c48 0 74 35 82 68h53c-13 -73 -68 -121 -137 -121c-89 0 -115 62 -107 121z" /> + <glyph glyph-name="breve_gravecomb" unicode="&#xe301;" +d="M149 774h83l66 -133h-51zM143 653h49c-2 -38 20 -68 60 -68c49 0 74 36 83 68h52c-12 -73 -68 -120 -137 -120c-89 0 -115 61 -107 120z" /> + <glyph glyph-name="breve_hookabovecomb" unicode="&#xe302;" +d="M142 655h50c-3 -38 19 -68 59 -68c49 0 75 35 83 68h53c-13 -73 -68 -120 -137 -120c-89 0 -116 61 -108 120zM266 634l-41 18c21 38 62 47 62 79c0 16 -13 28 -31 28c-20 0 -40 -16 -52 -30l-27 27c19 26 54 51 96 51c44 0 75 -28 75 -65c0 -53 -55 -69 -82 -108z" /> + <glyph glyph-name="breve_tildecomb" unicode="&#xe303;" +d="M146 654h50c-2 -37 17 -68 56 -68c47 0 70 36 79 68h52c-12 -73 -64 -120 -133 -120c-89 0 -112 60 -104 120zM193 689h-46c9 51 39 93 80 93c27 0 42 -9 60 -21c15 -10 29 -18 44 -18c16 0 27 13 34 40h47c-11 -62 -38 -96 -83 -96c-26 0 -40 7 -60 19 +c-17 10 -27 19 -43 18c-16 0 -26 -15 -33 -35z" /> + <glyph glyph-name="circumflex_acutecomb" unicode="&#xe304;" +d="M241 693h65l63 -143h-64l-37 94h-2l-64 -94h-67zM445 771h83l-121 -130h-51z" /> + <glyph glyph-name="circumflex_gravecomb" unicode="&#xe305;" +d="M311 773h76l66 -130h-46zM242 693h64l63 -143h-63l-37 94h-2l-64 -94h-67z" /> + <glyph glyph-name="circumflex_hookabovecomb" unicode="&#xe306;" +d="M242 693h64l63 -143h-63l-37 94h-3l-63 -94h-68zM410 634l-41 17c21 38 62 47 62 79c0 16 -13 29 -32 29s-40 -17 -52 -30l-27 27c20 25 54 50 96 50c44 0 75 -28 75 -65c0 -53 -54 -68 -81 -107z" /> + <glyph glyph-name="circumflex_tildecomb" unicode="&#xe307;" +d="M202 688h-48c6 56 36 93 78 93c22 0 37 -9 59 -21c15 -9 28 -16 40 -16c16 0 26 9 32 40h47c-7 -64 -34 -92 -78 -92c-21 0 -38 9 -58 21c-19 10 -29 16 -41 16c-16 0 -27 -18 -31 -41zM241 671h60l63 -121h-61l-35 73h-2l-57 -73h-68z" /> + <glyph glyph-name="space_dotbelowcomb" unicode="&#xe308;" +d="M151 -183c-29 0 -50 24 -50 51c0 29 23 52 51 52s49 -23 49 -52c0 -27 -20 -51 -50 -51z" /> + <glyph glyph-name="space_hookabovecomb" unicode="&#xe309;" +d="M268 530l-46 14c16 43 67 57 67 97c0 18 -12 31 -29 31c-23 0 -41 -19 -54 -37l-32 21c22 36 55 66 106 66c45 0 75 -30 75 -67c0 -62 -59 -79 -87 -125z" /> + <glyph glyph-name="space_uni031B" unicode="&#xe310;" +d="M282 431l10 53h25c41 0 60 19 60 54c0 14 -4 30 -8 43l64 11c4 -13 8 -31 8 -48c0 -70 -44 -113 -129 -113h-30z" /> + <glyph glyph-name="breve_acutecomb.cap" unicode="&#xe311;" +d="M332 895h89l-121 -105h-48zM169 802h51c-1 -27 15 -51 62 -51c45 0 69 22 76 51h52c-9 -55 -51 -102 -132 -102c-86 0 -116 47 -109 102z" /> + <glyph glyph-name="breve_gravecomb.cap" unicode="&#xe312;" +d="M173 897h89l61 -105h-49zM169 802h50c0 -27 16 -51 62 -51c45 0 69 22 77 51h52c-10 -55 -52 -102 -133 -102c-85 0 -115 47 -108 102z" /> + <glyph glyph-name="breve_hookabovecomb.cap" unicode="&#xe313;" +d="M295 781l-41 17c21 38 62 47 62 79c0 16 -13 29 -32 29s-40 -16 -52 -30l-27 27c20 25 54 50 96 50c44 0 75 -28 75 -65c0 -52 -54 -68 -81 -107zM169 802h51c-1 -27 16 -52 62 -52c45 0 69 23 76 52h53c-10 -55 -52 -103 -133 -103c-85 0 -116 48 -109 103z" /> + <glyph glyph-name="breve_tildecomb.cap" unicode="&#xe314;" +d="M169 802h52c-1 -27 14 -51 60 -51c45 0 67 22 75 51h54c-10 -55 -52 -102 -132 -102c-86 0 -116 47 -109 102zM217 833h-47c9 51 39 93 80 93c27 0 42 -9 60 -20c15 -10 29 -19 44 -19c16 0 26 13 34 41h46c-10 -63 -37 -97 -83 -97c-25 0 -40 8 -59 19 +c-17 10 -27 19 -43 19c-16 -1 -26 -15 -32 -36z" /> + <glyph glyph-name="circumflex_acutecomb.cap" unicode="&#xe315;" +d="M270 823h62l66 -114h-67l-36 69h-2l-70 -69h-75zM464 896h84l-123 -102h-50z" /> + <glyph glyph-name="circumflex_gravecomb.cap" unicode="&#xe316;" +d="M333 880h83l60 -105h-50zM271 823h61l66 -114h-67l-36 69h-2l-70 -69h-75z" /> + <glyph glyph-name="circumflex_hookabovecomb.cap" unicode="&#xe317;" +d="M436 754l-41 17c22 38 63 47 63 79c0 16 -14 29 -32 29c-20 0 -40 -16 -52 -30l-27 27c19 25 54 50 96 50c44 0 75 -28 75 -65c0 -52 -54 -68 -82 -107zM270 824h62l66 -114h-67l-37 69h-2l-69 -69h-75z" /> + <glyph glyph-name="circumflex_tildecomb.cap" unicode="&#xe318;" +d="M230 837h-48c6 56 36 93 78 93c22 0 37 -9 59 -22c15 -8 28 -16 40 -16c16 0 26 10 32 41h46c-7 -64 -33 -92 -78 -92c-21 0 -37 9 -57 20s-30 17 -42 17c-15 0 -26 -18 -30 -41zM270 824h61l67 -114h-68l-36 69h-2l-69 -69h-75z" /> + <glyph glyph-name="space_dotbelowcomb.cap" unicode="&#xe319;" +d="M119 -181c-28 0 -49 24 -49 51c0 26 22 50 50 50c27 0 48 -24 48 -50c0 -27 -21 -51 -49 -51z" /> + <glyph glyph-name="space_hookabovecomb.cap" unicode="&#xe320;" +d="M291 708l-44 15c22 41 62 52 62 86c0 17 -12 29 -29 29c-22 0 -40 -17 -53 -34l-31 21c23 34 56 64 103 64c45 0 76 -30 76 -67c0 -54 -51 -68 -84 -114z" /> + <glyph glyph-name="space_uni031B.cap" unicode="&#xe321;" +d="M324 622l10 52h23c40 0 60 18 60 55c0 15 -4 29 -8 43l65 11c5 -16 7 -33 7 -48c0 -71 -42 -113 -129 -113h-28z" /> + <glyph glyph-name="Scedilla.dup" unicode="&#xf6c1;" horiz-adv-x="466" +d="M464 649l-30 -68c-21 13 -63 32 -117 32c-83 0 -133 -55 -133 -110s34 -86 105 -125c83 -45 128 -98 128 -180c0 -99 -65 -181 -178 -203l-34 -45c32 -8 54 -32 54 -65c0 -55 -52 -86 -109 -86c-27 0 -52 8 -65 17l18 44c15 -10 34 -15 52 -15c23 0 44 13 44 36 +c0 21 -23 35 -66 39l49 70h-14c-50 0 -123 18 -156 46l30 68c37 -25 87 -43 143 -43c76 0 146 45 146 126c0 51 -28 88 -99 126c-86 47 -134 101 -134 173c0 121 104 198 228 198c66 0 115 -19 138 -35z" /> + <glyph glyph-name="scedilla.dup" unicode="&#xf6c2;" horiz-adv-x="373" +d="M350 471l-23 -63c-17 10 -48 22 -84 22c-50 0 -86 -31 -86 -73c0 -35 23 -57 67 -81c54 -30 90 -73 90 -127c0 -82 -54 -136 -129 -153l-34 -46c32 -7 54 -32 54 -64c0 -55 -52 -86 -109 -86c-27 0 -52 8 -65 17l18 42c15 -9 34 -14 52 -14c23 0 44 13 44 36 +c0 22 -23 35 -65 39l49 70h-4c-45 0 -94 16 -116 33l24 61c23 -14 64 -30 104 -30c56 0 92 36 92 79c0 38 -17 61 -68 89c-56 31 -87 74 -87 124c0 84 73 149 175 149c44 0 83 -12 101 -24z" /> + <glyph glyph-name="uni021A" unicode="&#x21a;" horiz-adv-x="474" +d="M148 0l114 602h-196l14 72h477l-14 -72h-198l-114 -602h-83zM90 -221l-10 42c41 6 87 29 87 75c0 21 -11 38 -24 49l66 14c14 -10 28 -33 28 -59c0 -79 -77 -115 -147 -121z" /> + <glyph glyph-name="uni021B" unicode="&#x21b;" horiz-adv-x="313" +d="M155 574l87 26l-22 -116h116l-13 -65h-116l-44 -235c-6 -27 -10 -52 -10 -77c0 -29 14 -47 46 -47c15 0 28 1 39 4l-4 -65c-15 -6 -40 -9 -64 -9c-73 0 -102 44 -102 94c0 28 4 55 11 90l47 245h-69l12 65h69zM21 -220l-10 41c41 7 87 29 87 75c0 21 -11 39 -24 49l66 14 +c14 -10 28 -33 28 -59c0 -78 -77 -114 -147 -120z" /> + <glyph glyph-name="uni00AD" unicode="&#xad;" horiz-adv-x="307" +d="M48 302h239l-12 -64h-239z" /> + <glyph glyph-name="uni00A0" unicode="&#xa0;" horiz-adv-x="182" + /> + <glyph glyph-name="uni02C9" unicode="&#x2c9;" +d="M162 646h219l-10 -53h-219z" /> + <glyph glyph-name="uni2215" unicode="&#x2215;" horiz-adv-x="400" +d="M4 -11h-61l487 672h61z" /> + <glyph glyph-name="uni2219" unicode="&#x2219;" horiz-adv-x="211" +d="M105 198c-33 0 -55 26 -55 59c0 37 26 67 63 67c34 0 56 -26 56 -60c0 -37 -26 -66 -64 -66z" /> + <glyph glyph-name="slash.frac" horiz-adv-x="142" +d="M-123 -11h-61l487 672h61z" /> + <glyph glyph-name="space.frac" horiz-adv-x="96" + /> + <glyph glyph-name="uni00A0.frac" horiz-adv-x="96" + /> + <glyph glyph-name="uni0433.ital" horiz-adv-x="229" +d="M111 0h-83l92 484h83zM71 638h219l-10 -53h-219z" /> + <glyph glyph-name="uni0434.ital" horiz-adv-x="524" +d="M10 -175l23 65c29 -19 78 -32 128 -32c82 0 146 41 174 172l16 73h-2c-43 -69 -102 -103 -168 -103c-98 0 -148 82 -148 168c0 164 120 327 307 327c56 0 118 -16 156 -34l-75 -400c-19 -103 -47 -173 -97 -217c-49 -41 -114 -53 -169 -53c-59 0 -115 14 -145 34z +M374 250l31 162c-16 7 -46 16 -80 16c-121 0 -205 -127 -205 -246c-1 -54 19 -116 93 -116c71 0 143 90 161 184z" /> + <glyph glyph-name="uni043F.ital" horiz-adv-x="526" +d="M417 484h83l-65 -343c-10 -54 -17 -101 -22 -141h-74l12 91h-2c-43 -63 -106 -102 -170 -102c-62 0 -128 30 -128 140c0 23 3 50 9 82l53 273h82l-51 -270c-5 -27 -8 -50 -8 -71c0 -50 20 -84 77 -84c60 0 137 71 157 177zM152 638h357l-11 -53h-357z" /> + <glyph glyph-name="uni0442.ital" horiz-adv-x="789" +d="M112 484h81l-52 -279c-4 -19 -7 -43 -7 -63c0 -51 19 -84 73 -84c60 0 132 70 152 178l46 248h80l-54 -284c-4 -22 -6 -40 -6 -59c0 -41 11 -83 73 -83c60 0 135 80 154 183l45 243h81l-63 -340c-9 -48 -11 -102 -13 -144h-75c0 36 3 68 4 91h-2 +c-45 -67 -107 -102 -171 -102c-74 0 -109 47 -113 108c-43 -70 -106 -108 -177 -108c-56 0 -118 36 -118 127c0 22 3 55 8 82zM156 638h629l-10 -53h-630z" /> + <hkern u1="&#x20;" u2="&#x38f;" k="12" /> + <hkern u1="&#x20;" u2="&#x38e;" k="30" /> + <hkern u1="&#x20;" u2="&#x38c;" k="12" /> + <hkern u1="&#x20;" u2="&#x386;" k="50" /> + <hkern u1="F" u2="&#xef;" k="-18" /> + <hkern u1="T" u2="&#x129;" k="6" /> + <hkern u1="T" u2="&#x12f;" k="6" /> + <hkern u1="T" u2="&#x12b;" k="6" /> + <hkern u1="T" u2="&#x12d;" k="-44" /> + <hkern u1="T" g2="i.dot" k="6" /> + <hkern u1="T" u2="&#xec;" k="6" /> + <hkern u1="T" u2="&#xef;" k="-81" /> + <hkern u1="T" u2="&#xee;" k="6" /> + <hkern u1="T" u2="&#xed;" k="6" /> + <hkern u1="T" u2="&#xe8;" k="45" /> + <hkern u1="T" u2="&#xeb;" k="52" /> + <hkern u1="T" u2="&#xe0;" k="67" /> + <hkern u1="T" u2="i" k="6" /> + <hkern u1="V" u2="&#x12d;" k="-39" /> + <hkern u1="V" u2="&#xef;" k="-72" /> + <hkern u1="W" u2="&#x12d;" k="-39" /> + <hkern u1="W" u2="&#xef;" k="-72" /> + <hkern u1="Y" u2="&#x129;" k="28" /> + <hkern u1="Y" u2="&#x12f;" k="28" /> + <hkern u1="Y" u2="&#x12b;" k="28" /> + <hkern u1="Y" u2="&#x12d;" k="-20" /> + <hkern u1="Y" g2="i.dot" k="28" /> + <hkern u1="Y" u2="&#xf6;" k="61" /> + <hkern u1="Y" u2="&#xec;" k="28" /> + <hkern u1="Y" u2="&#xef;" k="-55" /> + <hkern u1="Y" u2="&#xee;" k="28" /> + <hkern u1="Y" u2="&#xed;" k="28" /> + <hkern u1="Y" u2="&#xeb;" k="57" /> + <hkern u1="Y" u2="&#xe4;" k="62" /> + <hkern u1="Y" u2="i" k="28" /> + <hkern u1="&#x2018;" u2="&#x3b1;" k="49" /> + <hkern u1="&#x201c;" u2="&#x3b1;" k="49" /> + <hkern u1="&#xd8;" u2="&#x3a4;" k="28" /> + <hkern u1="&#xdd;" u2="&#x129;" k="28" /> + <hkern u1="&#xdd;" u2="&#x12f;" k="28" /> + <hkern u1="&#xdd;" u2="&#x12b;" k="28" /> + <hkern u1="&#xdd;" u2="&#x12d;" k="-20" /> + <hkern u1="&#xdd;" g2="i.dot" k="28" /> + <hkern u1="&#xdd;" u2="&#xf6;" k="61" /> + <hkern u1="&#xdd;" u2="&#xec;" k="28" /> + <hkern u1="&#xdd;" u2="&#xef;" k="-55" /> + <hkern u1="&#xdd;" u2="&#xee;" k="28" /> + <hkern u1="&#xdd;" u2="&#xed;" k="28" /> + <hkern u1="&#xdd;" u2="&#xeb;" k="57" /> + <hkern u1="&#xdd;" u2="&#xe4;" k="62" /> + <hkern u1="&#xdd;" u2="i" k="28" /> + <hkern u1="&#x178;" u2="&#x129;" k="28" /> + <hkern u1="&#x178;" u2="&#x12f;" k="28" /> + <hkern u1="&#x178;" u2="&#x12b;" k="28" /> + <hkern u1="&#x178;" u2="&#x12d;" k="-20" /> + <hkern u1="&#x178;" g2="i.dot" k="28" /> + <hkern u1="&#x178;" u2="&#xf6;" k="61" /> + <hkern u1="&#x178;" u2="&#xec;" k="28" /> + <hkern u1="&#x178;" u2="&#xef;" k="-55" /> + <hkern u1="&#x178;" u2="&#xee;" k="28" /> + <hkern u1="&#x178;" u2="&#xed;" k="28" /> + <hkern u1="&#x178;" u2="&#xeb;" k="57" /> + <hkern u1="&#x178;" u2="&#xe4;" k="62" /> + <hkern u1="&#x178;" u2="i" k="28" /> + <hkern u1="&#x166;" u2="&#x129;" k="6" /> + <hkern u1="&#x166;" u2="&#x12f;" k="6" /> + <hkern u1="&#x166;" u2="&#x12b;" k="6" /> + <hkern u1="&#x166;" u2="&#x12d;" k="-44" /> + <hkern u1="&#x166;" g2="i.dot" k="6" /> + <hkern u1="&#x166;" u2="&#xec;" k="6" /> + <hkern u1="&#x166;" u2="&#xef;" k="-81" /> + <hkern u1="&#x166;" u2="&#xee;" k="6" /> + <hkern u1="&#x166;" u2="&#xed;" k="6" /> + <hkern u1="&#x166;" u2="&#xe8;" k="45" /> + <hkern u1="&#x166;" u2="&#xeb;" k="52" /> + <hkern u1="&#x166;" u2="&#xe0;" k="67" /> + <hkern u1="&#x166;" u2="i" k="6" /> + <hkern u1="&#xf6dc;" u2="&#xf63c;" k="17" /> + <hkern u1="&#xf63a;" u2="&#xf63e;" k="3" /> + <hkern u1="&#xf63a;" u2="&#xf63c;" k="18" /> + <hkern u1="&#xf63a;" u2="&#xf63a;" k="-8" /> + <hkern u1="&#xf63c;" u2="&#xf641;" k="13" /> + <hkern u1="&#xf63d;" u2="&#xf641;" k="10" /> + <hkern u1="&#xf63e;" u2="&#xf641;" k="14" /> + <hkern u1="&#xf63f;" u2="&#xf63f;" k="-27" /> + <hkern u1="&#xf63f;" u2="&#xf63e;" k="6" /> + <hkern u1="&#xf63f;" u2="&#xf63c;" k="33" /> + <hkern u1="&#xf640;" u2="&#xf641;" k="5" /> + <hkern u1="&#xf641;" u2="&#xf63e;" k="-8" /> + <hkern u1="&#xf641;" u2="&#xf63a;" k="3" /> + <hkern u1="&#x3c0;" u2="&#x390;" k="-24" /> + <hkern u1="&#x3c0;" u2="&#x3ca;" k="-12" /> + <hkern u1="&#x164;" u2="&#x129;" k="6" /> + <hkern u1="&#x164;" u2="&#x12f;" k="6" /> + <hkern u1="&#x164;" u2="&#x12b;" k="6" /> + <hkern u1="&#x164;" u2="&#x12d;" k="-44" /> + <hkern u1="&#x164;" g2="i.dot" k="6" /> + <hkern u1="&#x164;" u2="&#xec;" k="6" /> + <hkern u1="&#x164;" u2="&#xef;" k="-81" /> + <hkern u1="&#x164;" u2="&#xee;" k="6" /> + <hkern u1="&#x164;" u2="&#xed;" k="6" /> + <hkern u1="&#x164;" u2="&#xe8;" k="45" /> + <hkern u1="&#x164;" u2="&#xeb;" k="52" /> + <hkern u1="&#x164;" u2="&#xe0;" k="67" /> + <hkern u1="&#x164;" u2="i" k="6" /> + <hkern u1="&#x162;" u2="&#x129;" k="6" /> + <hkern u1="&#x162;" u2="&#x12f;" k="6" /> + <hkern u1="&#x162;" u2="&#x12b;" k="6" /> + <hkern u1="&#x162;" u2="&#x12d;" k="-44" /> + <hkern u1="&#x162;" g2="i.dot" k="6" /> + <hkern u1="&#x162;" u2="&#xec;" k="6" /> + <hkern u1="&#x162;" u2="&#xef;" k="-81" /> + <hkern u1="&#x162;" u2="&#xee;" k="6" /> + <hkern u1="&#x162;" u2="&#xed;" k="6" /> + <hkern u1="&#x162;" u2="&#xe8;" k="45" /> + <hkern u1="&#x162;" u2="&#xeb;" k="52" /> + <hkern u1="&#x162;" u2="&#xe0;" k="67" /> + <hkern u1="&#x162;" u2="i" k="6" /> + <hkern u1="&#x1e82;" u2="&#x12d;" k="-39" /> + <hkern u1="&#x1e82;" u2="&#xef;" k="-72" /> + <hkern u1="&#x174;" u2="&#x12d;" k="-39" /> + <hkern u1="&#x174;" u2="&#xef;" k="-72" /> + <hkern u1="&#x1e84;" u2="&#x12d;" k="-39" /> + <hkern u1="&#x1e84;" u2="&#xef;" k="-72" /> + <hkern u1="&#x1e80;" u2="&#x12d;" k="-39" /> + <hkern u1="&#x1e80;" u2="&#xef;" k="-72" /> + <hkern u1="&#x1ef2;" u2="&#x129;" k="28" /> + <hkern u1="&#x1ef2;" u2="&#x12f;" k="28" /> + <hkern u1="&#x1ef2;" u2="&#x12b;" k="28" /> + <hkern u1="&#x1ef2;" u2="&#x12d;" k="-20" /> + <hkern u1="&#x1ef2;" g2="i.dot" k="28" /> + <hkern u1="&#x1ef2;" u2="&#xf6;" k="61" /> + <hkern u1="&#x1ef2;" u2="&#xec;" k="28" /> + <hkern u1="&#x1ef2;" u2="&#xef;" k="-55" /> + <hkern u1="&#x1ef2;" u2="&#xee;" k="28" /> + <hkern u1="&#x1ef2;" u2="&#xed;" k="28" /> + <hkern u1="&#x1ef2;" u2="&#xeb;" k="57" /> + <hkern u1="&#x1ef2;" u2="&#xe4;" k="62" /> + <hkern u1="&#x1ef2;" u2="i" k="28" /> + <hkern u1="&#x232;" u2="&#x129;" k="28" /> + <hkern u1="&#x232;" u2="&#x12f;" k="28" /> + <hkern u1="&#x232;" u2="&#x12b;" k="28" /> + <hkern u1="&#x232;" u2="&#x12d;" k="-20" /> + <hkern u1="&#x232;" g2="i.dot" k="28" /> + <hkern u1="&#x232;" u2="&#xf6;" k="61" /> + <hkern u1="&#x232;" u2="&#xec;" k="28" /> + <hkern u1="&#x232;" u2="&#xef;" k="-55" /> + <hkern u1="&#x232;" u2="&#xee;" k="28" /> + <hkern u1="&#x232;" u2="&#xed;" k="28" /> + <hkern u1="&#x232;" u2="&#xeb;" k="57" /> + <hkern u1="&#x232;" u2="&#xe4;" k="62" /> + <hkern u1="&#x232;" u2="i" k="28" /> + <hkern u1="&#x10f;" u2="&#x140;" k="-49" /> + <hkern u1="&#x10f;" u2="&#x13c;" k="-49" /> + <hkern u1="&#x10f;" u2="&#x13e;" k="-49" /> + <hkern u1="&#x10f;" u2="&#x13a;" k="-49" /> + <hkern u1="&#x10f;" u2="&#x137;" k="-49" /> + <hkern u1="&#x10f;" u2="&#x125;" k="-49" /> + <hkern u1="&#x10f;" u2="&#x127;" k="-49" /> + <hkern u1="&#x10f;" u2="&#x142;" k="-49" /> + <hkern u1="&#x10f;" u2="&#x201d;" k="-83" /> + <hkern u1="&#x10f;" u2="l" k="-49" /> + <hkern u1="&#x10f;" u2="k" k="-49" /> + <hkern u1="&#x10f;" u2="h" k="-49" /> + <hkern u1="&#x10f;" u2="b" k="-49" /> + <hkern u1="&#x10f;" u2="&#x2019;" k="-83" /> + <hkern u1="&#x165;" u2="&#x201d;" k="-73" /> + <hkern u1="&#x165;" u2="&#x2019;" k="-73" /> + <hkern u1="&#x391;" u2="&#x3be;" k="7" /> + <hkern u1="&#x391;" u2="&#x3bd;" k="15" /> + <hkern u1="&#x391;" u2="&#x3b4;" k="6" /> + <hkern u1="&#x391;" u2="&#xd8;" k="20" /> + <hkern u1="&#x392;" u2="&#x3b4;" k="-7" /> + <hkern u1="&#x393;" u2="&#x3b0;" k="8" /> + <hkern u1="&#x393;" u2="&#x390;" k="-93" /> + <hkern u1="&#x393;" u2="&#x3cb;" k="22" /> + <hkern u1="&#x393;" u2="&#x3ca;" k="-77" /> + <hkern u1="&#x393;" u2="&#x3b4;" k="44" /> + <hkern u1="&#x393;" u2="&#x3b2;" k="46" /> + <hkern u1="&#x394;" u2="&#x3bd;" k="15" /> + <hkern u1="&#x395;" u2="&#x390;" k="-61" /> + <hkern u1="&#x395;" u2="&#x3ca;" k="-46" /> + <hkern u1="&#x395;" u2="&#x3be;" k="4" /> + <hkern u1="&#x397;" u2="&#x390;" k="-38" /> + <hkern u1="&#x397;" u2="&#x3ca;" k="-24" /> + <hkern u1="&#x398;" u2="&#xb5;" k="-3" /> + <hkern u1="&#x399;" u2="&#x390;" k="-38" /> + <hkern u1="&#x399;" u2="&#x3ca;" k="-24" /> + <hkern u1="&#x39a;" u2="&#x390;" k="-85" /> + <hkern u1="&#x39a;" u2="&#x3ca;" k="-66" /> + <hkern u1="&#x39a;" u2="&#x3b2;" k="-6" /> + <hkern u1="&#x39d;" u2="&#x390;" k="-38" /> + <hkern u1="&#x39d;" u2="&#x3ca;" k="-24" /> + <hkern u1="&#x39d;" u2="&#x3c1;" k="10" /> + <hkern u1="&#x39d;" u2="&#x3bf;" k="5" /> + <hkern u1="&#x39d;" u2="&#x3b4;" k="5" /> + <hkern u1="&#x39d;" u2="&#x391;" k="16" /> + <hkern u1="&#x39e;" u2="&#x390;" k="-81" /> + <hkern u1="&#x39e;" u2="&#x3ca;" k="-67" /> + <hkern u1="&#x39e;" u2="&#x3b9;" k="-10" /> + <hkern u1="&#x39e;" u2="&#x3b7;" k="-10" /> + <hkern u1="&#x39f;" u2="&#x3be;" k="-14" /> + <hkern u1="&#x39f;" u2="&#xb5;" k="-3" /> + <hkern u1="&#x3a0;" u2="&#x390;" k="-38" /> + <hkern u1="&#x3a0;" u2="&#x3ca;" k="-24" /> + <hkern u1="&#x3a1;" u2="&#x390;" k="-37" /> + <hkern u1="&#x3a1;" u2="&#x3ca;" k="-21" /> + <hkern u1="&#x3a1;" u2="&#x3b2;" k="10" /> + <hkern u1="&#x3a3;" u2="&#x390;" k="-53" /> + <hkern u1="&#x3a3;" u2="&#x3ca;" k="-33" /> + <hkern u1="&#x3a3;" u2="&#x3b4;" k="23" /> + <hkern u1="&#x3a3;" u2="&#x3aa;" k="-9" /> + <hkern u1="&#x3a4;" u2="&#x3b0;" k="-14" /> + <hkern u1="&#x3a4;" u2="&#x390;" k="-108" /> + <hkern u1="&#x3a4;" u2="&#x3ca;" k="-96" /> + <hkern u1="&#x3a4;" u2="&#x3b2;" k="26" /> + <hkern u1="&#x3a4;" u2="&#x129;" k="6" /> + <hkern u1="&#x3a4;" u2="&#x12f;" k="6" /> + <hkern u1="&#x3a4;" u2="&#x12b;" k="6" /> + <hkern u1="&#x3a4;" u2="&#x12d;" k="-44" /> + <hkern u1="&#x3a4;" g2="i.dot" k="6" /> + <hkern u1="&#x3a4;" u2="&#xec;" k="6" /> + <hkern u1="&#x3a4;" u2="&#xef;" k="-81" /> + <hkern u1="&#x3a4;" u2="&#xee;" k="6" /> + <hkern u1="&#x3a4;" u2="&#xed;" k="6" /> + <hkern u1="&#x3a4;" u2="&#xe8;" k="45" /> + <hkern u1="&#x3a4;" u2="&#xeb;" k="52" /> + <hkern u1="&#x3a4;" u2="&#xe0;" k="67" /> + <hkern u1="&#x3a4;" u2="i" k="6" /> + <hkern u1="&#x3a5;" u2="&#x390;" k="-98" /> + <hkern u1="&#x3a5;" u2="&#x3ca;" k="-77" /> + <hkern u1="&#x3a5;" u2="&#x3bb;" k="-5" /> + <hkern u1="&#x3a5;" u2="&#x3b4;" k="39" /> + <hkern u1="&#x3a5;" u2="&#x3b2;" k="15" /> + <hkern u1="&#x3a7;" u2="&#x390;" k="-64" /> + <hkern u1="&#x3a7;" u2="&#x3ca;" k="-47" /> + <hkern u1="&#x3a8;" u2="&#x3b4;" k="14" /> + <hkern u1="&#x3a8;" u2="&#x3aa;" k="-9" /> + <hkern u1="&#x3a9;" u2="&#x390;" k="-16" /> + <hkern u1="&#x3a9;" u2="&#x3ca;" k="-8" /> + <hkern u1="&#x3a9;" u2="&#x3bd;" k="-28" /> + <hkern u1="&#x3a9;" u2="&#x3b2;" k="-7" /> + <hkern u1="&#x3a9;" u2="&#xb5;" k="-10" /> + <hkern u1="&#x388;" u2="&#x390;" k="-61" /> + <hkern u1="&#x388;" u2="&#x3ca;" k="-46" /> + <hkern u1="&#x389;" u2="&#x390;" k="-38" /> + <hkern u1="&#x389;" u2="&#x3ca;" k="-24" /> + <hkern u1="&#x38a;" u2="&#x390;" k="-38" /> + <hkern u1="&#x38a;" u2="&#x3ca;" k="-24" /> + <hkern u1="&#x38c;" u2="&#xb5;" k="-3" /> + <hkern u1="&#x38e;" u2="&#x390;" k="-98" /> + <hkern u1="&#x38e;" u2="&#x3ca;" k="-77" /> + <hkern u1="&#x38e;" u2="&#x3bb;" k="-5" /> + <hkern u1="&#x38e;" u2="&#x3b4;" k="39" /> + <hkern u1="&#x38e;" u2="&#x3b2;" k="15" /> + <hkern u1="&#x38f;" u2="&#x390;" k="-16" /> + <hkern u1="&#x38f;" u2="&#x3ca;" k="-8" /> + <hkern u1="&#x3b2;" u2="&#x390;" k="-28" /> + <hkern u1="&#x3b2;" u2="&#x3ca;" k="-11" /> + <hkern u1="&#x3b2;" u2="&#x3b4;" k="-5" /> + <hkern u1="&#x3b3;" u2="&#x3b4;" k="-5" /> + <hkern u1="&#x3b4;" u2="&#x390;" k="-11" /> + <hkern u1="&#x3b4;" u2="&#x3ca;" k="-3" /> + <hkern u1="&#x3b4;" u2="&#x3ad;" k="-3" /> + <hkern u1="&#x3b4;" u2="&#x3c9;" k="-8" /> + <hkern u1="&#x3b4;" u2="&#x3c1;" k="6" /> + <hkern u1="&#x3b4;" u2="&#x3b6;" k="-9" /> + <hkern u1="&#x3b4;" u2="&#x3b5;" k="-3" /> + <hkern u1="&#x3b4;" u2="&#x3b3;" k="4" /> + <hkern u1="&#x3b6;" u2="&#x390;" k="-89" /> + <hkern u1="&#x3b6;" u2="&#x3ca;" k="-68" /> + <hkern u1="&#x3b6;" u2="&#x3b2;" k="-14" /> + <hkern u1="&#x3b7;" u2="&#x3c2;" k="6" /> + <hkern u1="&#x3b7;" u2="&#x3bd;" k="5" /> + <hkern u1="&#x3bb;" u2="&#x3bd;" k="15" /> + <hkern u1="&#x3bd;" u2="&#x3c1;" k="26" /> + <hkern u1="&#x3bd;" u2="&#x3b6;" k="-14" /> + <hkern u1="&#x3be;" u2="&#x390;" k="-75" /> + <hkern u1="&#x3be;" u2="&#x3ca;" k="-56" /> + <hkern u1="&#x3be;" u2="&#x3b2;" k="-13" /> + <hkern u1="&#x3be;" u2="&#xb5;" k="-18" /> + <hkern u1="&#x3c3;" u2="&#x390;" k="-24" /> + <hkern u1="&#x3c3;" u2="&#x3ca;" k="-13" /> + <hkern u1="&#x3c5;" u2="&#x3c1;" k="15" /> + <hkern u1="&#x3c5;" u2="&#x3b3;" k="-13" /> + <hkern u1="&#x3c5;" u2="&#x201d;" k="26" /> + <hkern u1="&#x3c5;" u2="&#x2019;" k="26" /> + <hkern u1="&#x3c7;" u2="&#x390;" k="-21" /> + <hkern u1="&#x3c7;" u2="&#x3ca;" k="-12" /> + <hkern u1="&#x3c8;" u2="&#x3c1;" k="7" /> + <hkern u1="&#x3c8;" u2="&#x3b3;" k="-13" /> + <hkern u1="&#x3c8;" u2="&#x201d;" k="26" /> + <hkern u1="&#x3c8;" u2="&#x2019;" k="26" /> + <hkern u1="&#x3c9;" u2="&#x3b4;" k="-6" /> + <hkern u1="&#x3ad;" u2="&#x390;" k="-32" /> + <hkern u1="&#x3ad;" u2="&#x3ca;" k="-20" /> + <hkern u1="&#x3af;" u2="&#x3bb;" k="-21" /> + <hkern u1="&#x3ca;" u2="&#x3be;" k="-26" /> + <hkern u1="&#x3ca;" u2="&#x3bb;" k="-31" /> + <hkern u1="&#x3ca;" u2="&#x3b8;" k="-19" /> + <hkern u1="&#x3ca;" u2="&#x3b6;" k="-23" /> + <hkern u1="&#x3ca;" u2="&#x3b2;" k="-13" /> + <hkern u1="&#x3ca;" u2="&#x3c0;" k="-18" /> + <hkern u1="&#x390;" u2="&#x3be;" k="-41" /> + <hkern u1="&#x390;" u2="&#x3bb;" k="-56" /> + <hkern u1="&#x390;" u2="&#x3b8;" k="-43" /> + <hkern u1="&#x390;" u2="&#x3b6;" k="-45" /> + <hkern u1="&#x390;" u2="&#x3b2;" k="-34" /> + <hkern u1="&#x390;" u2="&#x3c0;" k="-30" /> + <hkern u1="&#x1ef4;" u2="&#x129;" k="28" /> + <hkern u1="&#x1ef4;" u2="&#x12f;" k="28" /> + <hkern u1="&#x1ef4;" u2="&#x12b;" k="28" /> + <hkern u1="&#x1ef4;" u2="&#x12d;" k="-20" /> + <hkern u1="&#x1ef4;" g2="i.dot" k="28" /> + <hkern u1="&#x1ef4;" u2="&#xf6;" k="61" /> + <hkern u1="&#x1ef4;" u2="&#xec;" k="28" /> + <hkern u1="&#x1ef4;" u2="&#xef;" k="-55" /> + <hkern u1="&#x1ef4;" u2="&#xee;" k="28" /> + <hkern u1="&#x1ef4;" u2="&#xed;" k="28" /> + <hkern u1="&#x1ef4;" u2="&#xeb;" k="57" /> + <hkern u1="&#x1ef4;" u2="&#xe4;" k="62" /> + <hkern u1="&#x1ef4;" u2="i" k="28" /> + <hkern u1="&#x1ef6;" u2="&#x129;" k="28" /> + <hkern u1="&#x1ef6;" u2="&#x12f;" k="28" /> + <hkern u1="&#x1ef6;" u2="&#x12b;" k="28" /> + <hkern u1="&#x1ef6;" u2="&#x12d;" k="-20" /> + <hkern u1="&#x1ef6;" g2="i.dot" k="28" /> + <hkern u1="&#x1ef6;" u2="&#xf6;" k="61" /> + <hkern u1="&#x1ef6;" u2="&#xec;" k="28" /> + <hkern u1="&#x1ef6;" u2="&#xef;" k="-55" /> + <hkern u1="&#x1ef6;" u2="&#xee;" k="28" /> + <hkern u1="&#x1ef6;" u2="&#xed;" k="28" /> + <hkern u1="&#x1ef6;" u2="&#xeb;" k="57" /> + <hkern u1="&#x1ef6;" u2="&#xe4;" k="62" /> + <hkern u1="&#x1ef6;" u2="i" k="28" /> + <hkern u1="&#x1ef8;" u2="&#x129;" k="28" /> + <hkern u1="&#x1ef8;" u2="&#x12f;" k="28" /> + <hkern u1="&#x1ef8;" u2="&#x12b;" k="28" /> + <hkern u1="&#x1ef8;" u2="&#x12d;" k="-20" /> + <hkern u1="&#x1ef8;" g2="i.dot" k="28" /> + <hkern u1="&#x1ef8;" u2="&#xf6;" k="61" /> + <hkern u1="&#x1ef8;" u2="&#xec;" k="28" /> + <hkern u1="&#x1ef8;" u2="&#xef;" k="-55" /> + <hkern u1="&#x1ef8;" u2="&#xee;" k="28" /> + <hkern u1="&#x1ef8;" u2="&#xed;" k="28" /> + <hkern u1="&#x1ef8;" u2="&#xeb;" k="57" /> + <hkern u1="&#x1ef8;" u2="&#xe4;" k="62" /> + <hkern u1="&#x1ef8;" u2="i" k="28" /> + <hkern u1="&#x21a;" u2="&#x129;" k="6" /> + <hkern u1="&#x21a;" u2="&#x12f;" k="6" /> + <hkern u1="&#x21a;" u2="&#x12b;" k="6" /> + <hkern u1="&#x21a;" u2="&#x12d;" k="-44" /> + <hkern u1="&#x21a;" g2="i.dot" k="6" /> + <hkern u1="&#x21a;" u2="&#xec;" k="6" /> + <hkern u1="&#x21a;" u2="&#xef;" k="-81" /> + <hkern u1="&#x21a;" u2="&#xee;" k="6" /> + <hkern u1="&#x21a;" u2="&#xed;" k="6" /> + <hkern u1="&#x21a;" u2="&#xe8;" k="45" /> + <hkern u1="&#x21a;" u2="&#xeb;" k="52" /> + <hkern u1="&#x21a;" u2="&#xe0;" k="67" /> + <hkern u1="&#x21a;" u2="i" k="6" /> + <hkern u1="&#xa0;" u2="&#x38f;" k="12" /> + <hkern u1="&#xa0;" u2="&#x38e;" k="30" /> + <hkern u1="&#xa0;" u2="&#x38c;" k="12" /> + <hkern u1="&#xa0;" u2="&#x386;" k="50" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="21" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-8" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="9" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="-3" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-6" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-12" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="x" + k="-3" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="15" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="guilsinglright,guillemotright" + k="-11" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="guillemotleft,guilsinglleft" + k="13" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="quoteleft,quotedblleft" + k="-3" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="35" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="hyphen,endash,emdash,uni00AD" + k="-10" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="quoteright,quotedblright" + k="15" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="comma,period,ellipsis" + k="12" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="43" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="4" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + g2="quoteright,quotedblright" + k="13" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + g2="comma,period,ellipsis" + k="14" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="59" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="5" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="6" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="x" + k="3" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="quotedbl,quotesingle" + k="37" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="quoteleft,quotedblleft" + k="16" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="quoteright,quotedblright" + k="38" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="28" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="14" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-7" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="14" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-8" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="14" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-7" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="colon,semicolon" + k="-12" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="quoteright,quotedblright" + k="-13" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="comma,period,ellipsis" + k="-10" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="48" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="4" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="x" + k="3" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="5" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="quoteright,quotedblright" + k="12" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="53" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="-3" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="j,jcircumflex" + k="5" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-3" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="7" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="x" + k="10" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="z,zcaron,zacute,zdotaccent" + k="8" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="hyphen,endash,emdash,uni00AD" + k="-15" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="quotedbl,quotesingle" + k="22" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="quoteright,quotedblright" + k="42" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="comma,period,ellipsis" + k="18" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="23" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-22" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="8" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="6" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-26" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-20" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="x" + k="-11" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="z,zcaron,zacute,zdotaccent" + k="-8" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="15" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="colon,semicolon" + k="-12" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="hyphen,endash,emdash,uni00AD" + k="9" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="quoteright,quotedblright" + k="-25" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="comma,period,ellipsis" + k="36" /> + <hkern g1="s,germandbls,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="41" /> + <hkern g1="s,germandbls,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + g2="hyphen,endash,emdash,uni00AD" + k="6" /> + <hkern g1="s,germandbls,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + g2="quoteright,quotedblright" + k="7" /> + <hkern g1="s,germandbls,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="34" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="18" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="j,jcircumflex" + k="5" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="8" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-14" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="17" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="colon,semicolon" + k="-13" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="hyphen,endash,emdash,uni00AD" + k="8" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="quoteright,quotedblright" + k="-20" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="comma,period,ellipsis" + k="40" /> + <hkern g1="x" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="26" /> + <hkern g1="x" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="9" /> + <hkern g1="x" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="16" /> + <hkern g1="x" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-10" /> + <hkern g1="x" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-15" /> + <hkern g1="x" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="12" /> + <hkern g1="x" + g2="quoteright,quotedblright" + k="-13" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="29" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-22" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="5" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-11" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-25" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="quoteright,quotedblright" + k="-20" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="60" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="10" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="21" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="28" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="41" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="X,Chi" + k="6" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="62" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="4" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="10" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="j,jcircumflex" + k="-12" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-7" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="10" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="-5" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="4" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="4" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="21" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="x" + k="-14" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="z,zcaron,zacute,zdotaccent" + k="-19" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="hyphen,endash,emdash,uni00AD" + k="5" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="quotedbl,quotesingle" + k="36" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="quoteleft,quotedblleft" + k="36" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="quoteright,quotedblright" + k="55" /> + <hkern g1="B,Beta" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="12" /> + <hkern g1="B,Beta" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-5" /> + <hkern g1="B,Beta" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="8" /> + <hkern g1="B,Beta" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="3" /> + <hkern g1="B,Beta" + g2="X,Chi" + k="4" /> + <hkern g1="B,Beta" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="18" /> + <hkern g1="B,Beta" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-3" /> + <hkern g1="B,Beta" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-7" /> + <hkern g1="B,Beta" + g2="guillemotleft,guilsinglleft" + k="-4" /> + <hkern g1="B,Beta" + g2="hyphen,endash,emdash,uni00AD" + k="-7" /> + <hkern g1="B,Beta" + g2="comma,period,ellipsis" + k="15" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-3" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="25" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-8" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="M,M_uni0302,Mu" + k="-4" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="4" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="7" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="7" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="14" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="z,zcaron,zacute,zdotaccent" + k="-6" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="8" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="parenright,bracketright,braceright" + k="-20" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-8" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-3" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-4" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="5" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="5" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="4" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="6" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="8" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="z,zcaron,zacute,zdotaccent" + k="-3" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="5" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="quoteright,quotedblright" + k="3" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="comma,period,ellipsis" + k="7" /> + <hkern g1="F" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="61" /> + <hkern g1="F" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="4" /> + <hkern g1="F" + g2="X,Chi" + k="4" /> + <hkern g1="F" + g2="M,M_uni0302,Mu" + k="9" /> + <hkern g1="F" + g2="J,Jcircumflex" + k="85" /> + <hkern g1="F" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="36" /> + <hkern g1="F" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="21" /> + <hkern g1="F" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="29" /> + <hkern g1="F" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="27" /> + <hkern g1="F" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="27" /> + <hkern g1="F" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="20" /> + <hkern g1="F" + g2="x" + k="32" /> + <hkern g1="F" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="41" /> + <hkern g1="F" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="16" /> + <hkern g1="F" + g2="colon,semicolon" + k="12" /> + <hkern g1="F" + g2="guilsinglright,guillemotright" + k="15" /> + <hkern g1="F" + g2="hyphen,endash,emdash,uni00AD" + k="5" /> + <hkern g1="F" + g2="quotedbl,quotesingle" + k="-5" /> + <hkern g1="F" + g2="quoteright,quotedblright" + k="3" /> + <hkern g1="F" + g2="comma,period,ellipsis" + k="85" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="4" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-6" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="6" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="8" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-3" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="-7" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="hyphen,endash,emdash,uni00AD" + k="-3" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="quoteright,quotedblright" + k="6" /> + <hkern g1="J,IJ,Jcircumflex" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="5" /> + <hkern g1="J,IJ,Jcircumflex" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-3" /> + <hkern g1="J,IJ,Jcircumflex" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-13" /> + <hkern g1="J,IJ,Jcircumflex" + g2="parenright,bracketright,braceright" + k="-32" /> + <hkern g1="J,IJ,Jcircumflex" + g2="quoteright,quotedblright" + k="-10" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-6" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="19" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="7" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-13" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="J,Jcircumflex" + k="-23" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="3" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-22" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="5" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-9" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="8" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="10" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="19" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-9" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="guillemotleft,guilsinglleft" + k="6" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="hyphen,endash,emdash,uni00AD" + k="24" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="parenright,bracketright,braceright" + k="-23" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="quotedbl,quotesingle" + k="-9" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="quoteright,quotedblright" + k="-5" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="comma,period,ellipsis" + k="-22" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="86" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-11" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="45" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="49" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="65" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="90" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="J,Jcircumflex" + k="-3" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-20" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="11" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="26" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="13" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="40" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="x" + k="-3" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="z,zcaron,zacute,zdotaccent" + k="-16" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="3" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="guillemotleft,guilsinglleft" + k="38" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="hyphen,endash,emdash,uni00AD" + k="58" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="quotedbl,quotesingle" + k="135" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="quoteleft,quotedblleft" + k="148" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="quoteright,quotedblright" + k="115" /> + <hkern g1="M,M_uni0302,Mu" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="3" /> + <hkern g1="M,M_uni0302,Mu" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="3" /> + <hkern g1="M,M_uni0302,Mu" + g2="j,jcircumflex" + k="-12" /> + <hkern g1="M,M_uni0302,Mu" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-6" /> + <hkern g1="M,M_uni0302,Mu" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-7" /> + <hkern g1="M,M_uni0302,Mu" + g2="quoteright,quotedblright" + k="3" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="28" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="7" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="X,Chi" + k="12" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="33" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-23" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="-14" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="j,jcircumflex" + k="-3" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-6" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-11" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="-7" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-22" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="-6" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-18" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="z,zcaron,zacute,zdotaccent" + k="-3" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="-11" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-7" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="colon,semicolon" + k="-5" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="guilsinglright,guillemotright" + k="-10" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="guillemotleft,guilsinglleft" + k="-10" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="hyphen,endash,emdash,uni00AD" + k="-15" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="comma,period,ellipsis" + k="25" /> + <hkern g1="P,Rho" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="8" /> + <hkern g1="P,Rho" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="64" /> + <hkern g1="P,Rho" + g2="X,Chi" + k="33" /> + <hkern g1="P,Rho" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="3" /> + <hkern g1="P,Rho" + g2="J,Jcircumflex" + k="74" /> + <hkern g1="P,Rho" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="37" /> + <hkern g1="P,Rho" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="22" /> + <hkern g1="P,Rho" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="11" /> + <hkern g1="P,Rho" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="19" /> + <hkern g1="P,Rho" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="11" /> + <hkern g1="P,Rho" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-9" /> + <hkern g1="P,Rho" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="13" /> + <hkern g1="P,Rho" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-16" /> + <hkern g1="P,Rho" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="21" /> + <hkern g1="P,Rho" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="5" /> + <hkern g1="P,Rho" + g2="colon,semicolon" + k="10" /> + <hkern g1="P,Rho" + g2="guillemotleft,guilsinglleft" + k="20" /> + <hkern g1="P,Rho" + g2="hyphen,endash,emdash,uni00AD" + k="12" /> + <hkern g1="P,Rho" + g2="parenright,bracketright,braceright" + k="8" /> + <hkern g1="P,Rho" + g2="quoteright,quotedblright" + k="-15" /> + <hkern g1="P,Rho" + g2="comma,period,ellipsis" + k="107" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="7" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-6" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="-5" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="10" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-5" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="X,Chi" + k="-3" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="13" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="7" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-9" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-18" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="3" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-14" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="4" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-8" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="hyphen,endash,emdash,uni00AD" + k="5" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="3" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-10" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="10" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="x" + k="3" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="-9" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="hyphen,endash,emdash,uni00AD" + k="-3" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="quoteleft,quotedblleft" + k="16" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="quoteright,quotedblright" + k="18" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-43" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="56" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="16" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-44" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="X,Chi" + k="-31" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-30" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="J,Jcircumflex" + k="46" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="-9" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="70" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="51" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="59" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="62" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="7" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="57" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="33" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="x" + k="51" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="z,zcaron,zacute,zdotaccent" + k="56" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="76" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="3" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="colon,semicolon" + k="27" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="guilsinglright,guillemotright" + k="36" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="guillemotleft,guilsinglleft" + k="56" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="hyphen,endash,emdash,uni00AD" + k="63" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="parenright,bracketright,braceright" + k="-55" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="quotedbl,quotesingle" + k="-18" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="quoteright,quotedblright" + k="-36" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="comma,period,ellipsis" + k="66" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="17" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="9" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-13" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-3" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-4" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="x" + k="4" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-5" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="quoteright,quotedblright" + k="3" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-33" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="44" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="M,M_uni0302,Mu" + k="5" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="J,Jcircumflex" + k="32" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="-8" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="37" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="8" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="30" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="25" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-8" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="14" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="x" + k="15" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="z,zcaron,zacute,zdotaccent" + k="15" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="37" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-6" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="colon,semicolon" + k="18" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="guilsinglright,guillemotright" + k="9" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="guillemotleft,guilsinglleft" + k="22" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="hyphen,endash,emdash,uni00AD" + k="21" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="parenright,bracketright,braceright" + k="-35" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="quotedbl,quotesingle" + k="-10" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="quoteright,quotedblright" + k="-24" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="comma,period,ellipsis" + k="54" /> + <hkern g1="X,Chi" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-24" /> + <hkern g1="X,Chi" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="9" /> + <hkern g1="X,Chi" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="22" /> + <hkern g1="X,Chi" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-26" /> + <hkern g1="X,Chi" + g2="X,Chi" + k="-16" /> + <hkern g1="X,Chi" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-26" /> + <hkern g1="X,Chi" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="13" /> + <hkern g1="X,Chi" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="13" /> + <hkern g1="X,Chi" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="10" /> + <hkern g1="X,Chi" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="13" /> + <hkern g1="X,Chi" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="15" /> + <hkern g1="X,Chi" + g2="guillemotleft,guilsinglleft" + k="5" /> + <hkern g1="X,Chi" + g2="hyphen,endash,emdash,uni00AD" + k="25" /> + <hkern g1="X,Chi" + g2="parenright,bracketright,braceright" + k="-25" /> + <hkern g1="X,Chi" + g2="quotedbl,quotesingle" + k="-3" /> + <hkern g1="X,Chi" + g2="quoteright,quotedblright" + k="3" /> + <hkern g1="X,Chi" + g2="comma,period,ellipsis" + k="-6" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-22" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="74" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="25" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="6" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-11" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="X,Chi" + k="13" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="M,M_uni0302,Mu" + k="20" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="J,Jcircumflex" + k="58" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="8" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="B,D,E,F,H,I,K,L,N,P,R,Lslash,Eth,Eacute,Ecircumflex,Edieresis,Egrave,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Dcroat,Eng,Hbar,IJ,Dcaron,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Kcommaaccent,Lacute,Lcaron,Lcommaaccent,Ldot,Nacute,Ncaron,N_uni0302,Ncommaaccent,Racute,Rcaron,Rcommaaccent,Beta,Gamma,Epsilon,Eta,Iota,Kappa,Nu,Pi,Rho,Iotadieresis,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6,uni1EC8,uni1ECA" + k="8" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="80" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="j,jcircumflex" + k="9" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="36" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="69" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="66" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="20" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="53" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="26" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="x" + k="42" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="z,zcaron,zacute,zdotaccent" + k="52" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="85" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="8" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="colon,semicolon" + k="26" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="guilsinglright,guillemotright" + k="31" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="guillemotleft,guilsinglleft" + k="44" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="hyphen,endash,emdash,uni00AD" + k="63" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="parenright,bracketright,braceright" + k="-28" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="quoteleft,quotedblleft" + k="6" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="quoteright,quotedblright" + k="-11" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="comma,period,ellipsis" + k="97" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-5" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="21" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-16" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="X,Chi" + k="-3" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="11" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="9" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="5" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="12" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="guillemotleft,guilsinglleft" + k="24" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="hyphen,endash,emdash,uni00AD" + k="9" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-7" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-6" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-5" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="z,zcaron,zacute,zdotaccent" + k="-7" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="quoteright,quotedblright" + k="5" /> + <hkern g1="f,f_f" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-6" /> + <hkern g1="f,f_f" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="7" /> + <hkern g1="f,f_f" + g2="colon,semicolon" + k="-34" /> + <hkern g1="f,f_f" + g2="parenright,bracketright,braceright" + k="-86" /> + <hkern g1="f,f_f" + g2="quotedbl,quotesingle" + k="-63" /> + <hkern g1="f,f_f" + g2="quoteleft,quotedblleft" + k="-29" /> + <hkern g1="f,f_f" + g2="quoteright,quotedblright" + k="-61" /> + <hkern g1="f,f_f" + g2="comma,period,ellipsis" + k="31" /> + <hkern g1="j,f_f_j,f_j,ij,jcircumflex" + g2="j,jcircumflex" + k="-23" /> + <hkern g1="j,f_f_j,f_j,ij,jcircumflex" + g2="quoteright,quotedblright" + k="-12" /> + <hkern g1="j,f_f_j,f_j,ij,jcircumflex" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="t,tbar,tcaron,tcommaaccent,uni021B" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="5" /> + <hkern g1="t,tbar,tcaron,tcommaaccent,uni021B" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="4" /> + <hkern g1="t,tbar,tcaron,tcommaaccent,uni021B" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-11" /> + <hkern g1="t,tbar,tcaron,tcommaaccent,uni021B" + g2="quoteright,quotedblright" + k="-16" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="39" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="-10" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="10" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="20" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-12" /> + <hkern g1="guilsinglright,guillemotright" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="48" /> + <hkern g1="guilsinglright,guillemotright" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="-15" /> + <hkern g1="guilsinglright,guillemotright" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="15" /> + <hkern g1="guilsinglright,guillemotright" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="34" /> + <hkern g1="guilsinglright,guillemotright" + g2="M,M_uni0302,Mu" + k="-3" /> + <hkern g1="guilsinglright,guillemotright" + g2="J,Jcircumflex" + k="6" /> + <hkern g1="guilsinglright,guillemotright" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="6" /> + <hkern g1="guilsinglright,guillemotright" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="-22" /> + <hkern g1="guilsinglright,guillemotright" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-24" /> + <hkern g1="guilsinglright,guillemotright" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="-20" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="54" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="-19" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="13" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="X,Chi" + k="6" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="46" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="J,Jcircumflex" + k="33" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="3" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="-23" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-26" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="-23" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-50" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="7" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="8" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-45" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="X,Chi" + k="-3" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-34" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="J,Jcircumflex" + k="3" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="j,jcircumflex" + k="-41" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="10" /> + <hkern g1="comma,period,ellipsis" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="60" /> + <hkern g1="comma,period,ellipsis" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-18" /> + <hkern g1="comma,period,ellipsis" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="52" /> + <hkern g1="comma,period,ellipsis" + g2="X,Chi" + k="-20" /> + <hkern g1="comma,period,ellipsis" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="75" /> + <hkern g1="comma,period,ellipsis" + g2="J,Jcircumflex" + k="-3" /> + <hkern g1="comma,period,ellipsis" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-21" /> + <hkern g1="comma,period,ellipsis" + g2="quotedbl,quotesingle" + k="132" /> + <hkern g1="comma,period,ellipsis" + g2="quoteleft,quotedblleft" + k="125" /> + <hkern g1="comma,period,ellipsis" + g2="quoteright,quotedblright" + k="109" /> + <hkern g1="d,l,fl,lslash,dcroat,f_f_l,f_l,dcaron,lacute,lcaron,lcommaaccent,ldot" + g2="comma,period,ellipsis" + k="15" /> + <hkern g1="quotedbl,quotesingle" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="39" /> + <hkern g1="quotedbl,quotesingle" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-24" /> + <hkern g1="quotedbl,quotesingle" + g2="J,Jcircumflex" + k="56" /> + <hkern g1="quotedbl,quotesingle" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-42" /> + <hkern g1="quotedbl,quotesingle" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-24" /> + <hkern g1="quotedbl,quotesingle" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-12" /> + <hkern g1="quotedbl,quotesingle" + g2="comma,period,ellipsis" + k="103" /> + <hkern g1="quoteleft,quotedblleft" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-31" /> + <hkern g1="quoteleft,quotedblleft" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="64" /> + <hkern g1="quoteleft,quotedblleft" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="10" /> + <hkern g1="quoteleft,quotedblleft" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="3" /> + <hkern g1="quoteleft,quotedblleft" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-37" /> + <hkern g1="quoteleft,quotedblleft" + g2="X,Chi" + k="-11" /> + <hkern g1="quoteleft,quotedblleft" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-27" /> + <hkern g1="quoteleft,quotedblleft" + g2="M,M_uni0302,Mu" + k="3" /> + <hkern g1="quoteleft,quotedblleft" + g2="J,Jcircumflex" + k="72" /> + <hkern g1="quoteleft,quotedblleft" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="8" /> + <hkern g1="quoteleft,quotedblleft" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="3" /> + <hkern g1="quoteleft,quotedblleft" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="52" /> + <hkern g1="quoteleft,quotedblleft" + g2="j,jcircumflex" + k="-11" /> + <hkern g1="quoteleft,quotedblleft" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="9" /> + <hkern g1="quoteleft,quotedblleft" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="52" /> + <hkern g1="quoteleft,quotedblleft" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="27" /> + <hkern g1="quoteleft,quotedblleft" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-10" /> + <hkern g1="quoteleft,quotedblleft" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="21" /> + <hkern g1="quoteleft,quotedblleft" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-10" /> + <hkern g1="quoteleft,quotedblleft" + g2="z,zcaron,zacute,zdotaccent" + k="7" /> + <hkern g1="quoteleft,quotedblleft" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="44" /> + <hkern g1="quoteleft,quotedblleft" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="8" /> + <hkern g1="quoteleft,quotedblleft" + g2="quoteleft,quotedblleft" + k="45" /> + <hkern g1="quoteleft,quotedblleft" + g2="comma,period,ellipsis" + k="145" /> + <hkern g1="i,fi,dotlessi,iacute,icircumflex,idieresis,igrave,f_f_i,f_i,i.dot,ibreve,imacron,iogonek,itilde,uni1EC9,uni1ECB" + g2="quoteright,quotedblright" + k="-10" /> + <hkern g1="quoteright,quotedblright" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-29" /> + <hkern g1="quoteright,quotedblright" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="54" /> + <hkern g1="quoteright,quotedblright" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="13" /> + <hkern g1="quoteright,quotedblright" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-28" /> + <hkern g1="quoteright,quotedblright" + g2="X,Chi" + k="-3" /> + <hkern g1="quoteright,quotedblright" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-4" /> + <hkern g1="quoteright,quotedblright" + g2="M,M_uni0302,Mu" + k="10" /> + <hkern g1="quoteright,quotedblright" + g2="J,Jcircumflex" + k="72" /> + <hkern g1="quoteright,quotedblright" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="27" /> + <hkern g1="quoteright,quotedblright" + g2="j,jcircumflex" + k="-3" /> + <hkern g1="quoteright,quotedblright" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="27" /> + <hkern g1="quoteright,quotedblright" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="73" /> + <hkern g1="quoteright,quotedblright" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="62" /> + <hkern g1="quoteright,quotedblright" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="7" /> + <hkern g1="quoteright,quotedblright" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="4" /> + <hkern g1="quoteright,quotedblright" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="33" /> + <hkern g1="quoteright,quotedblright" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="3" /> + <hkern g1="quoteright,quotedblright" + g2="quoteright,quotedblright" + k="45" /> + <hkern g1="quoteright,quotedblright" + g2="comma,period,ellipsis" + k="147" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="67" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-3" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="25" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="20" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="48" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="X,Chi" + k="-3" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="76" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="J,Jcircumflex" + k="-4" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-3" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="j,jcircumflex" + k="-18" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="24" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="z,zcaron,zacute,zdotaccent" + k="-3" /> + <hkern g1="fraction,uni2215" + g2="four.denominator" + k="56" /> + <hkern g1="fraction,uni2215" + g2="seven.denominator" + k="-33" /> + <hkern g1="B,Beta" + g2="Phi" + k="4" /> + <hkern g1="B,Beta" + g2="Psi" + k="14" /> + <hkern g1="B,Beta" + g2="Upsilon,Upsilondieresis" + k="18" /> + <hkern g1="B,Beta" + g2="epsilon,epsilontonos" + k="-4" /> + <hkern g1="B,Beta" + g2="gamma,nu" + k="-19" /> + <hkern g1="uni0394" + g2="Phi" + k="29" /> + <hkern g1="uni0394" + g2="Psi" + k="69" /> + <hkern g1="uni0394" + g2="Upsilon,Upsilondieresis" + k="93" /> + <hkern g1="uni0394" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-10" /> + <hkern g1="uni0394" + g2="uni0394" + k="-14" /> + <hkern g1="uni0394" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="22" /> + <hkern g1="uni0394" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="74" /> + <hkern g1="uni0394" + g2="chi" + k="20" /> + <hkern g1="uni0394" + g2="epsilon,epsilontonos" + k="-11" /> + <hkern g1="uni0394" + g2="mu,beta,eta,kappa,etatonos" + k="-3" /> + <hkern g1="uni0394" + g2="gamma,nu" + k="14" /> + <hkern g1="uni0394" + g2="lambda" + k="-17" /> + <hkern g1="uni0394" + g2="rho" + k="-4" /> + <hkern g1="uni0394" + g2="tau" + k="13" /> + <hkern g1="uni0394" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="3" /> + <hkern g1="uni0394" + g2="zeta,xi" + k="-4" /> + <hkern g1="uni0394" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="3" /> + <hkern g1="uni0394" + g2="pi" + k="-10" /> + <hkern g1="uni0394" + g2="guilsinglright,guillemotright" + k="6" /> + <hkern g1="uni0394" + g2="hyphen,endash,emdash,uni00AD" + k="24" /> + <hkern g1="uni0394" + g2="quotedbl,quotesingle" + k="102" /> + <hkern g1="uni0394" + g2="quoteright,quotedblright" + k="89" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="uni0394" + k="-13" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="Xi" + k="-7" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="epsilon,epsilontonos" + k="-17" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="gamma,nu" + k="-19" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="lambda" + k="-19" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="tau" + k="-11" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="pi" + k="-13" /> + <hkern g1="Gamma" + g2="uni03A9" + k="31" /> + <hkern g1="Gamma" + g2="Phi" + k="42" /> + <hkern g1="Gamma" + g2="Psi" + k="-13" /> + <hkern g1="Gamma" + g2="Upsilon,Upsilondieresis" + k="-28" /> + <hkern g1="Gamma" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="107" /> + <hkern g1="Gamma" + g2="uni0394" + k="104" /> + <hkern g1="Gamma" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="38" /> + <hkern g1="Gamma" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-29" /> + <hkern g1="Gamma" + g2="Xi" + k="-7" /> + <hkern g1="Gamma" + g2="M,M_uni0302,Mu" + k="18" /> + <hkern g1="Gamma" + g2="Sigma" + k="-13" /> + <hkern g1="Gamma" + g2="X,Chi" + k="-6" /> + <hkern g1="Gamma" + g2="epsilon,epsilontonos" + k="94" /> + <hkern g1="Gamma" + g2="mu,beta,eta,kappa,etatonos" + k="80" /> + <hkern g1="Gamma" + g2="gamma,nu" + k="39" /> + <hkern g1="Gamma" + g2="lambda" + k="-3" /> + <hkern g1="Gamma" + g2="rho" + k="120" /> + <hkern g1="Gamma" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="65" /> + <hkern g1="Gamma" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="104" /> + <hkern g1="Gamma" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="67" /> + <hkern g1="Gamma" + g2="colon,semicolon" + k="16" /> + <hkern g1="Gamma" + g2="guilsinglright,guillemotright" + k="40" /> + <hkern g1="Gamma" + g2="guillemotleft,guilsinglleft" + k="62" /> + <hkern g1="Gamma" + g2="hyphen,endash,emdash,uni00AD" + k="38" /> + <hkern g1="Gamma" + g2="comma,period,ellipsis" + k="72" /> + <hkern g1="Gamma" + g2="quotedbl,quotesingle" + k="-11" /> + <hkern g1="Gamma" + g2="quoteright,quotedblright" + k="8" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="uni0394" + k="8" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="gamma,nu" + k="-17" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="rho" + k="6" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="tau" + k="-7" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="zeta,xi" + k="-4" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="pi" + k="-12" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="uni03A9" + k="-17" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Phi" + k="29" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="uni0394" + k="-22" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Xi" + k="-24" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Sigma" + k="-22" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="epsilon,epsilontonos" + k="-15" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="mu,beta,eta,kappa,etatonos" + k="-5" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="gamma,nu" + k="11" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="lambda" + k="-17" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="tau" + k="11" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="18" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="-3" /> + <hkern g1="M,M_uni0302,Mu" + g2="Phi" + k="6" /> + <hkern g1="M,M_uni0302,Mu" + g2="Psi" + k="19" /> + <hkern g1="M,M_uni0302,Mu" + g2="Upsilon,Upsilondieresis" + k="33" /> + <hkern g1="M,M_uni0302,Mu" + g2="mu,beta,eta,kappa,etatonos" + k="-4" /> + <hkern g1="M,M_uni0302,Mu" + g2="gamma,nu" + k="-3" /> + <hkern g1="M,M_uni0302,Mu" + g2="pi" + k="-12" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="uni03A9" + k="-7" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="Phi" + k="-5" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="Psi" + k="7" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="Upsilon,Upsilondieresis" + k="40" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="uni0394" + k="10" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="Xi" + k="8" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="Sigma" + k="15" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="chi" + k="-12" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="epsilon,epsilontonos" + k="-4" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="gamma,nu" + k="-30" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="lambda" + k="10" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="rho" + k="11" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="tau" + k="-22" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="theta" + k="-25" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="-10" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="zeta,xi" + k="-16" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="pi" + k="-14" /> + <hkern g1="uni03A9,Omegatonos" + g2="uni03A9" + k="-11" /> + <hkern g1="uni03A9,Omegatonos" + g2="Phi" + k="-13" /> + <hkern g1="uni03A9,Omegatonos" + g2="Psi" + k="9" /> + <hkern g1="uni03A9,Omegatonos" + g2="Upsilon,Upsilondieresis" + k="40" /> + <hkern g1="uni03A9,Omegatonos" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-6" /> + <hkern g1="uni03A9,Omegatonos" + g2="uni0394" + k="-5" /> + <hkern g1="uni03A9,Omegatonos" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="-6" /> + <hkern g1="uni03A9,Omegatonos" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="25" /> + <hkern g1="uni03A9,Omegatonos" + g2="Sigma" + k="3" /> + <hkern g1="uni03A9,Omegatonos" + g2="chi" + k="-13" /> + <hkern g1="uni03A9,Omegatonos" + g2="mu,beta,eta,kappa,etatonos" + k="-6" /> + <hkern g1="uni03A9,Omegatonos" + g2="gamma,nu" + k="-29" /> + <hkern g1="uni03A9,Omegatonos" + g2="lambda" + k="-21" /> + <hkern g1="uni03A9,Omegatonos" + g2="tau" + k="-25" /> + <hkern g1="uni03A9,Omegatonos" + g2="theta" + k="-26" /> + <hkern g1="uni03A9,Omegatonos" + g2="zeta,xi" + k="-27" /> + <hkern g1="uni03A9,Omegatonos" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-12" /> + <hkern g1="uni03A9,Omegatonos" + g2="pi" + k="-29" /> + <hkern g1="uni03A9,Omegatonos" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="-5" /> + <hkern g1="uni03A9,Omegatonos" + g2="guilsinglright,guillemotright" + k="5" /> + <hkern g1="uni03A9,Omegatonos" + g2="comma,period,ellipsis" + k="3" /> + <hkern g1="uni03A9,Omegatonos" + g2="quotedbl,quotesingle" + k="39" /> + <hkern g1="uni03A9,Omegatonos" + g2="quoteright,quotedblright" + k="25" /> + <hkern g1="P,Rho" + g2="Psi" + k="-10" /> + <hkern g1="P,Rho" + g2="Upsilon,Upsilondieresis" + k="8" /> + <hkern g1="P,Rho" + g2="uni0394" + k="68" /> + <hkern g1="P,Rho" + g2="epsilon,epsilontonos" + k="23" /> + <hkern g1="P,Rho" + g2="mu,beta,eta,kappa,etatonos" + k="10" /> + <hkern g1="P,Rho" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="10" /> + <hkern g1="P,Rho" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="10" /> + <hkern g1="Phi" + g2="uni03A9" + k="-11" /> + <hkern g1="Phi" + g2="Psi" + k="3" /> + <hkern g1="Phi" + g2="Upsilon,Upsilondieresis" + k="47" /> + <hkern g1="Phi" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="17" /> + <hkern g1="Phi" + g2="uni0394" + k="13" /> + <hkern g1="Phi" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="26" /> + <hkern g1="Phi" + g2="Xi" + k="8" /> + <hkern g1="Phi" + g2="Sigma" + k="29" /> + <hkern g1="Phi" + g2="X,Chi" + k="35" /> + <hkern g1="Phi" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="18" /> + <hkern g1="Phi" + g2="epsilon,epsilontonos" + k="-6" /> + <hkern g1="Phi" + g2="lambda" + k="13" /> + <hkern g1="Phi" + g2="rho" + k="13" /> + <hkern g1="Phi" + g2="tau" + k="-9" /> + <hkern g1="Phi" + g2="theta" + k="-21" /> + <hkern g1="Phi" + g2="zeta,xi" + k="-19" /> + <hkern g1="Phi" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-7" /> + <hkern g1="Phi" + g2="guilsinglright,guillemotright" + k="7" /> + <hkern g1="Phi" + g2="comma,period,ellipsis" + k="20" /> + <hkern g1="Phi" + g2="quotedbl,quotesingle" + k="32" /> + <hkern g1="Phi" + g2="quoteright,quotedblright" + k="16" /> + <hkern g1="Psi" + g2="uni03A9" + k="-4" /> + <hkern g1="Psi" + g2="Phi" + k="-5" /> + <hkern g1="Psi" + g2="Upsilon,Upsilondieresis" + k="-10" /> + <hkern g1="Psi" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="61" /> + <hkern g1="Psi" + g2="uni0394" + k="54" /> + <hkern g1="Psi" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-10" /> + <hkern g1="Psi" + g2="M,M_uni0302,Mu" + k="24" /> + <hkern g1="Psi" + g2="Sigma" + k="3" /> + <hkern g1="Psi" + g2="X,Chi" + k="13" /> + <hkern g1="Psi" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="18" /> + <hkern g1="Psi" + g2="B,D,E,F,H,I,K,L,N,P,R,Lslash,Eth,Eacute,Ecircumflex,Edieresis,Egrave,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Dcroat,Eng,Hbar,IJ,Dcaron,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Kcommaaccent,Lacute,Lcaron,Lcommaaccent,Ldot,Nacute,Ncaron,N_uni0302,Ncommaaccent,Racute,Rcaron,Rcommaaccent,Beta,Gamma,Epsilon,Eta,Iota,Kappa,Nu,Pi,Rho,Iotadieresis,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6,uni1EC8,uni1ECA" + k="6" /> + <hkern g1="Psi" + g2="epsilon,epsilontonos" + k="18" /> + <hkern g1="Psi" + g2="rho" + k="42" /> + <hkern g1="Psi" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="17" /> + <hkern g1="Psi" + g2="guillemotleft,guilsinglleft" + k="22" /> + <hkern g1="Psi" + g2="comma,period,ellipsis" + k="61" /> + <hkern g1="Psi" + g2="quotedbl,quotesingle" + k="-6" /> + <hkern g1="Sigma" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="40" /> + <hkern g1="Sigma" + g2="gamma,nu" + k="17" /> + <hkern g1="Sigma" + g2="lambda" + k="-12" /> + <hkern g1="Sigma" + g2="rho" + k="9" /> + <hkern g1="Sigma" + g2="tau" + k="17" /> + <hkern g1="Sigma" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="10" /> + <hkern g1="Sigma" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="19" /> + <hkern g1="Sigma" + g2="pi" + k="-3" /> + <hkern g1="Sigma" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="4" /> + <hkern g1="Sigma" + g2="guilsinglright,guillemotright" + k="15" /> + <hkern g1="Sigma" + g2="guillemotleft,guilsinglleft" + k="34" /> + <hkern g1="Sigma" + g2="hyphen,endash,emdash,uni00AD" + k="20" /> + <hkern g1="Sigma" + g2="quotedbl,quotesingle" + k="22" /> + <hkern g1="Sigma" + g2="quoteright,quotedblright" + k="34" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="uni03A9" + k="25" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="Phi" + k="20" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="Psi" + k="-18" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="Upsilon,Upsilondieresis" + k="-37" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="uni0394" + k="71" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="Sigma" + k="-24" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="epsilon,epsilontonos" + k="54" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="mu,beta,eta,kappa,etatonos" + k="44" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="lambda" + k="-14" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="rho" + k="77" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="39" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="33" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="omega,omegatonos" + k="50" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="uni03A9" + k="12" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Phi" + k="23" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Psi" + k="-16" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Upsilon,Upsilondieresis" + k="-31" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="86" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="uni0394" + k="80" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="18" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-36" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Xi" + k="-9" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="M,M_uni0302,Mu" + k="18" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Sigma" + k="-9" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="epsilon,epsilontonos" + k="59" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="mu,beta,eta,kappa,etatonos" + k="35" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="gamma,nu" + k="12" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="lambda" + k="-3" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="rho" + k="83" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="32" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="70" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="pi" + k="7" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="34" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="colon,semicolon" + k="14" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="guilsinglright,guillemotright" + k="22" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="guillemotleft,guilsinglleft" + k="49" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="hyphen,endash,emdash,uni00AD" + k="40" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="comma,period,ellipsis" + k="58" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="quotedbl,quotesingle" + k="-18" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="quoteright,quotedblright" + k="-5" /> + <hkern g1="X,Chi" + g2="Phi" + k="25" /> + <hkern g1="X,Chi" + g2="Psi" + k="-9" /> + <hkern g1="X,Chi" + g2="Upsilon,Upsilondieresis" + k="-17" /> + <hkern g1="X,Chi" + g2="uni0394" + k="-14" /> + <hkern g1="X,Chi" + g2="Xi" + k="-12" /> + <hkern g1="X,Chi" + g2="Sigma" + k="-13" /> + <hkern g1="X,Chi" + g2="epsilon,epsilontonos" + k="-8" /> + <hkern g1="X,Chi" + g2="mu,beta,eta,kappa,etatonos" + k="3" /> + <hkern g1="X,Chi" + g2="gamma,nu" + k="3" /> + <hkern g1="X,Chi" + g2="lambda" + k="-11" /> + <hkern g1="X,Chi" + g2="rho" + k="11" /> + <hkern g1="X,Chi" + g2="tau" + k="17" /> + <hkern g1="X,Chi" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="14" /> + <hkern g1="X,Chi" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="14" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="uni03A9" + k="-3" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="Upsilon,Upsilondieresis" + k="-14" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="Xi" + k="-7" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="lambda" + k="-10" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="chi" + k="5" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="epsilon,epsilontonos" + k="-8" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="lambda" + k="-3" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="rho" + k="9" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="theta" + k="-4" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="zeta,xi" + k="-4" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="pi" + k="-9" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="guilsinglright,guillemotright" + k="3" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="comma,period,ellipsis" + k="3" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="quotedbl,quotesingle" + k="37" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="quoteright,quotedblright" + k="27" /> + <hkern g1="beta" + g2="epsilon,epsilontonos" + k="-14" /> + <hkern g1="beta" + g2="lambda" + k="-12" /> + <hkern g1="beta" + g2="rho" + k="5" /> + <hkern g1="beta" + g2="zeta,xi" + k="-8" /> + <hkern g1="beta" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-3" /> + <hkern g1="beta" + g2="guilsinglright,guillemotright" + k="7" /> + <hkern g1="beta" + g2="comma,period,ellipsis" + k="4" /> + <hkern g1="beta" + g2="quotedbl,quotesingle" + k="32" /> + <hkern g1="beta" + g2="quoteright,quotedblright" + k="35" /> + <hkern g1="chi" + g2="chi" + k="-19" /> + <hkern g1="chi" + g2="gamma,nu" + k="-21" /> + <hkern g1="chi" + g2="lambda" + k="24" /> + <hkern g1="chi" + g2="rho" + k="10" /> + <hkern g1="chi" + g2="tau" + k="-32" /> + <hkern g1="chi" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="8" /> + <hkern g1="chi" + g2="pi" + k="-25" /> + <hkern g1="chi" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="4" /> + <hkern g1="chi" + g2="colon,semicolon" + k="-10" /> + <hkern g1="chi" + g2="guilsinglright,guillemotright" + k="-11" /> + <hkern g1="chi" + g2="hyphen,endash,emdash,uni00AD" + k="3" /> + <hkern g1="chi" + g2="comma,period,ellipsis" + k="12" /> + <hkern g1="chi" + g2="quotedbl,quotesingle" + k="-10" /> + <hkern g1="chi" + g2="quoteright,quotedblright" + k="-17" /> + <hkern g1="epsilon,epsilontonos" + g2="chi" + k="-7" /> + <hkern g1="epsilon,epsilontonos" + g2="epsilon,epsilontonos" + k="-10" /> + <hkern g1="epsilon,epsilontonos" + g2="mu,beta,eta,kappa,etatonos" + k="-3" /> + <hkern g1="epsilon,epsilontonos" + g2="gamma,nu" + k="-16" /> + <hkern g1="epsilon,epsilontonos" + g2="lambda" + k="-11" /> + <hkern g1="epsilon,epsilontonos" + g2="tau" + k="-5" /> + <hkern g1="epsilon,epsilontonos" + g2="zeta,xi" + k="-3" /> + <hkern g1="epsilon,epsilontonos" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="3" /> + <hkern g1="epsilon,epsilontonos" + g2="pi" + k="-14" /> + <hkern g1="epsilon,epsilontonos" + g2="quotedbl,quotesingle" + k="21" /> + <hkern g1="epsilon,epsilontonos" + g2="quoteright,quotedblright" + k="10" /> + <hkern g1="eta,etatonos" + g2="chi" + k="5" /> + <hkern g1="eta,etatonos" + g2="gamma,nu" + k="12" /> + <hkern g1="eta,etatonos" + g2="lambda" + k="9" /> + <hkern g1="eta,etatonos" + g2="rho" + k="4" /> + <hkern g1="eta,etatonos" + g2="tau" + k="4" /> + <hkern g1="eta,etatonos" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="6" /> + <hkern g1="eta,etatonos" + g2="pi" + k="3" /> + <hkern g1="eta,etatonos" + g2="colon,semicolon" + k="5" /> + <hkern g1="eta,etatonos" + g2="guilsinglright,guillemotright" + k="23" /> + <hkern g1="eta,etatonos" + g2="hyphen,endash,emdash,uni00AD" + k="5" /> + <hkern g1="eta,etatonos" + g2="comma,period,ellipsis" + k="17" /> + <hkern g1="eta,etatonos" + g2="quotedbl,quotesingle" + k="67" /> + <hkern g1="eta,etatonos" + g2="quoteright,quotedblright" + k="56" /> + <hkern g1="gamma,nu" + g2="chi" + k="-6" /> + <hkern g1="gamma,nu" + g2="gamma,nu" + k="-15" /> + <hkern g1="gamma,nu" + g2="lambda" + k="14" /> + <hkern g1="gamma,nu" + g2="rho" + k="28" /> + <hkern g1="gamma,nu" + g2="tau" + k="-20" /> + <hkern g1="gamma,nu" + g2="theta" + k="-24" /> + <hkern g1="gamma,nu" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="-4" /> + <hkern g1="gamma,nu" + g2="zeta,xi" + k="-11" /> + <hkern g1="gamma,nu" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-4" /> + <hkern g1="gamma,nu" + g2="pi" + k="-17" /> + <hkern g1="gamma,nu" + g2="guilsinglright,guillemotright" + k="-3" /> + <hkern g1="gamma,nu" + g2="comma,period,ellipsis" + k="43" /> + <hkern g1="gamma,nu" + g2="quotedbl,quotesingle" + k="14" /> + <hkern g1="gamma,nu" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="kappa" + g2="epsilon,epsilontonos" + k="-8" /> + <hkern g1="kappa" + g2="gamma,nu" + k="-19" /> + <hkern g1="kappa" + g2="rho" + k="9" /> + <hkern g1="kappa" + g2="tau" + k="-15" /> + <hkern g1="kappa" + g2="zeta,xi" + k="14" /> + <hkern g1="kappa" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="15" /> + <hkern g1="kappa" + g2="pi" + k="-26" /> + <hkern g1="kappa" + g2="colon,semicolon" + k="-11" /> + <hkern g1="kappa" + g2="guilsinglright,guillemotright" + k="-9" /> + <hkern g1="kappa" + g2="hyphen,endash,emdash,uni00AD" + k="12" /> + <hkern g1="kappa" + g2="comma,period,ellipsis" + k="-8" /> + <hkern g1="kappa" + g2="quoteright,quotedblright" + k="3" /> + <hkern g1="lambda" + g2="chi" + k="28" /> + <hkern g1="lambda" + g2="epsilon,epsilontonos" + k="-13" /> + <hkern g1="lambda" + g2="mu,beta,eta,kappa,etatonos" + k="5" /> + <hkern g1="lambda" + g2="gamma,nu" + k="19" /> + <hkern g1="lambda" + g2="rho" + k="3" /> + <hkern g1="lambda" + g2="tau" + k="27" /> + <hkern g1="lambda" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="10" /> + <hkern g1="lambda" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="8" /> + <hkern g1="lambda" + g2="pi" + k="4" /> + <hkern g1="lambda" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="8" /> + <hkern g1="lambda" + g2="colon,semicolon" + k="-16" /> + <hkern g1="lambda" + g2="hyphen,endash,emdash,uni00AD" + k="17" /> + <hkern g1="lambda" + g2="comma,period,ellipsis" + k="-16" /> + <hkern g1="lambda" + g2="quotedbl,quotesingle" + k="98" /> + <hkern g1="lambda" + g2="quoteright,quotedblright" + k="84" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="chi" + k="25" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="gamma,nu" + k="3" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="lambda" + k="6" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="rho" + k="8" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="tau" + k="4" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="zeta,xi" + k="-9" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="omega,omegatonos" + k="-7" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="gamma,nu" + k="-8" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="rho" + k="4" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-5" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="colon,semicolon" + k="7" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="guilsinglright,guillemotright" + k="20" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="comma,period,ellipsis" + k="20" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="quotedbl,quotesingle" + k="48" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="quoteright,quotedblright" + k="46" /> + <hkern g1="pi" + g2="epsilon,epsilontonos" + k="4" /> + <hkern g1="pi" + g2="gamma,nu" + k="-22" /> + <hkern g1="pi" + g2="lambda" + k="12" /> + <hkern g1="pi" + g2="rho" + k="15" /> + <hkern g1="pi" + g2="tau" + k="-21" /> + <hkern g1="pi" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="7" /> + <hkern g1="pi" + g2="pi" + k="-10" /> + <hkern g1="pi" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="8" /> + <hkern g1="pi" + g2="guilsinglright,guillemotright" + k="-7" /> + <hkern g1="pi" + g2="hyphen,endash,emdash,uni00AD" + k="9" /> + <hkern g1="pi" + g2="comma,period,ellipsis" + k="24" /> + <hkern g1="pi" + g2="quoteright,quotedblright" + k="-9" /> + <hkern g1="sigma" + g2="chi" + k="-8" /> + <hkern g1="sigma" + g2="mu,beta,eta,kappa,etatonos" + k="-5" /> + <hkern g1="sigma" + g2="gamma,nu" + k="-24" /> + <hkern g1="sigma" + g2="lambda" + k="4" /> + <hkern g1="sigma" + g2="rho" + k="14" /> + <hkern g1="sigma" + g2="tau" + k="-31" /> + <hkern g1="sigma" + g2="theta" + k="-19" /> + <hkern g1="sigma" + g2="zeta,xi" + k="-12" /> + <hkern g1="sigma" + g2="pi" + k="-19" /> + <hkern g1="sigma" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="-5" /> + <hkern g1="sigma" + g2="guilsinglright,guillemotright" + k="-4" /> + <hkern g1="sigma" + g2="comma,period,ellipsis" + k="27" /> + <hkern g1="sigma" + g2="quotedbl,quotesingle" + k="3" /> + <hkern g1="sigma" + g2="quoteright,quotedblright" + k="-7" /> + <hkern g1="tau" + g2="chi" + k="-16" /> + <hkern g1="tau" + g2="gamma,nu" + k="-32" /> + <hkern g1="tau" + g2="lambda" + k="14" /> + <hkern g1="tau" + g2="rho" + k="24" /> + <hkern g1="tau" + g2="tau" + k="-27" /> + <hkern g1="tau" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="12" /> + <hkern g1="tau" + g2="guilsinglright,guillemotright" + k="-13" /> + <hkern g1="tau" + g2="hyphen,endash,emdash,uni00AD" + k="6" /> + <hkern g1="tau" + g2="comma,period,ellipsis" + k="32" /> + <hkern g1="tau" + g2="quotedbl,quotesingle" + k="-17" /> + <hkern g1="tau" + g2="quoteright,quotedblright" + k="-13" /> + <hkern g1="theta" + g2="lambda" + k="7" /> + <hkern g1="theta" + g2="zeta,xi" + k="-14" /> + <hkern g1="theta" + g2="guilsinglright,guillemotright" + k="9" /> + <hkern g1="theta" + g2="comma,period,ellipsis" + k="27" /> + <hkern g1="theta" + g2="quotedbl,quotesingle" + k="13" /> + <hkern g1="theta" + g2="quoteright,quotedblright" + k="14" /> + <hkern g1="xi" + g2="epsilon,epsilontonos" + k="-9" /> + <hkern g1="xi" + g2="mu,beta,eta,kappa,etatonos" + k="-16" /> + <hkern g1="xi" + g2="lambda" + k="-40" /> + <hkern g1="xi" + g2="pi" + k="-29" /> + <hkern g1="xi" + g2="colon,semicolon" + k="-27" /> + <hkern g1="xi" + g2="guilsinglright,guillemotright" + k="-20" /> + <hkern g1="xi" + g2="comma,period,ellipsis" + k="-34" /> + <hkern g1="xi" + g2="quotedbl,quotesingle" + k="-12" /> + <hkern g1="zeta" + g2="chi" + k="-28" /> + <hkern g1="zeta" + g2="epsilon,epsilontonos" + k="-7" /> + <hkern g1="zeta" + g2="mu,beta,eta,kappa,etatonos" + k="-15" /> + <hkern g1="zeta" + g2="lambda" + k="-39" /> + <hkern g1="zeta" + g2="rho" + k="-15" /> + <hkern g1="zeta" + g2="tau" + k="8" /> + <hkern g1="zeta" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="6" /> + <hkern g1="zeta" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="-3" /> + <hkern g1="zeta" + g2="omega,omegatonos" + k="3" /> + <hkern g1="zeta" + g2="colon,semicolon" + k="-32" /> + <hkern g1="zeta" + g2="guilsinglright,guillemotright" + k="-6" /> + <hkern g1="zeta" + g2="hyphen,endash,emdash,uni00AD" + k="15" /> + <hkern g1="zeta" + g2="comma,period,ellipsis" + k="-35" /> + <hkern g1="zeta" + g2="quotedbl,quotesingle" + k="-26" /> + <hkern g1="zeta" + g2="quoteright,quotedblright" + k="4" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni03A9" + k="-13" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Phi" + k="8" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Psi" + k="11" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Upsilon,Upsilondieresis" + k="49" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0394" + k="-13" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Xi" + k="-16" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Sigma" + k="-15" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="chi" + k="-7" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="mu,beta,eta,kappa,etatonos" + k="9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="gamma,nu" + k="-27" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="lambda" + k="-14" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="rho" + k="19" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="tau" + k="-24" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="theta" + k="7" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="3" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="zeta,xi" + k="9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="pi" + k="-11" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="11" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="omega,omegatonos" + k="7" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Epsilontonos,Etatonos,Iotatonos" + k="-23" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Omegatonos" + k="-36" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Omicrontonos" + k="-34" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Upsilontonos" + k="14" /> + <hkern g1="guilsinglright,guillemotright" + g2="Psi" + k="26" /> + <hkern g1="guilsinglright,guillemotright" + g2="Upsilon,Upsilondieresis" + k="79" /> + <hkern g1="guilsinglright,guillemotright" + g2="Upsilontonos" + k="65" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Psi" + k="33" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Upsilon,Upsilondieresis" + k="82" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0394" + k="5" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Xi" + k="20" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Sigma" + k="58" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="chi" + k="16" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="mu,beta,eta,kappa,etatonos" + k="7" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="gamma,nu" + k="4" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="lambda" + k="16" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="rho" + k="12" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="tau" + k="7" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="zeta,xi" + k="-4" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="pi" + k="5" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="7" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Omegatonos" + k="-18" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Omicrontonos" + k="-17" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Upsilontonos" + k="45" /> + <hkern g1="quotedbl,quotesingle" + g2="Phi" + k="4" /> + <hkern g1="quotedbl,quotesingle" + g2="Psi" + k="-16" /> + <hkern g1="quotedbl,quotesingle" + g2="Upsilon,Upsilondieresis" + k="-29" /> + <hkern g1="quotedbl,quotesingle" + g2="uni0394" + k="63" /> + <hkern g1="quotedbl,quotesingle" + g2="chi" + k="-17" /> + <hkern g1="quotedbl,quotesingle" + g2="epsilon,epsilontonos" + k="17" /> + <hkern g1="quotedbl,quotesingle" + g2="mu,beta,eta,kappa,etatonos" + k="7" /> + <hkern g1="quotedbl,quotesingle" + g2="gamma,nu" + k="-34" /> + <hkern g1="quotedbl,quotesingle" + g2="lambda" + k="-13" /> + <hkern g1="quotedbl,quotesingle" + g2="rho" + k="59" /> + <hkern g1="quotedbl,quotesingle" + g2="tau" + k="-36" /> + <hkern g1="quotedbl,quotesingle" + g2="theta" + k="-4" /> + <hkern g1="quotedbl,quotesingle" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="7" /> + <hkern g1="quotedbl,quotesingle" + g2="zeta,xi" + k="9" /> + <hkern g1="quotedbl,quotesingle" + g2="pi" + k="-9" /> + <hkern g1="quotedbl,quotesingle" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="7" /> + <hkern g1="quotedbl,quotesingle" + g2="omega,omegatonos" + k="21" /> + <hkern g1="quotedbl,quotesingle" + g2="Epsilontonos,Etatonos,Iotatonos" + k="-79" /> + <hkern g1="quotedbl,quotesingle" + g2="Omegatonos" + k="-79" /> + <hkern g1="quotedbl,quotesingle" + g2="Omicrontonos" + k="-79" /> + <hkern g1="quotedbl,quotesingle" + g2="Upsilontonos" + k="-87" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni03A9" + k="19" /> + <hkern g1="quoteleft,quotedblleft" + g2="Phi" + k="17" /> + <hkern g1="quoteleft,quotedblleft" + g2="Psi" + k="-15" /> + <hkern g1="quoteleft,quotedblleft" + g2="Upsilon,Upsilondieresis" + k="-26" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0394" + k="95" /> + <hkern g1="quoteleft,quotedblleft" + g2="Sigma" + k="-8" /> + <hkern g1="quoteleft,quotedblleft" + g2="epsilon,epsilontonos" + k="36" /> + <hkern g1="quoteleft,quotedblleft" + g2="mu,beta,eta,kappa,etatonos" + k="18" /> + <hkern g1="quoteleft,quotedblleft" + g2="gamma,nu" + k="-17" /> + <hkern g1="quoteleft,quotedblleft" + g2="lambda" + k="-5" /> + <hkern g1="quoteleft,quotedblleft" + g2="rho" + k="89" /> + <hkern g1="quoteleft,quotedblleft" + g2="tau" + k="-18" /> + <hkern g1="quoteleft,quotedblleft" + g2="theta" + k="8" /> + <hkern g1="quoteleft,quotedblleft" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="20" /> + <hkern g1="quoteleft,quotedblleft" + g2="zeta,xi" + k="21" /> + <hkern g1="quoteleft,quotedblleft" + g2="pi" + k="6" /> + <hkern g1="quoteleft,quotedblleft" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="20" /> + <hkern g1="quoteleft,quotedblleft" + g2="omega,omegatonos" + k="53" /> + <hkern g1="quoteleft,quotedblleft" + g2="Epsilontonos,Etatonos,Iotatonos" + k="-75" /> + <hkern g1="quoteleft,quotedblleft" + g2="Omegatonos" + k="-77" /> + <hkern g1="quoteleft,quotedblleft" + g2="Omicrontonos" + k="-80" /> + <hkern g1="quoteleft,quotedblleft" + g2="Upsilontonos" + k="-90" /> + <hkern g1="space,uni00A0" + g2="Epsilontonos,Etatonos,Iotatonos" + k="15" /> + <hkern g1="uni0411" + g2="uni0414" + k="-7" /> + <hkern g1="uni0411" + g2="uni0402" + k="49" /> + <hkern g1="uni0411" + g2="uni0424" + k="15" /> + <hkern g1="uni0411" + g2="uni0409,uni041B" + k="-15" /> + <hkern g1="uni0411" + g2="uni040B,uni0422,uni042A" + k="50" /> + <hkern g1="uni0411" + g2="uni0408" + k="6" /> + <hkern g1="uni0411" + g2="uni0404,uni041E,uni0421" + k="10" /> + <hkern g1="uni0411" + g2="uni040E,uni0423" + k="14" /> + <hkern g1="uni0411" + g2="uni0416" + k="-10" /> + <hkern g1="uni0411" + g2="uni0410" + k="-3" /> + <hkern g1="uni0411" + g2="uni0427" + k="29" /> + <hkern g1="uni0411" + g2="uni0405" + k="6" /> + <hkern g1="uni0411" + g2="uni0431" + k="3" /> + <hkern g1="uni0411" + g2="uni0447" + k="5" /> + <hkern g1="uni0411" + g2="uni043B,uni0459" + k="-8" /> + <hkern g1="uni0411" + g2="uni044A" + k="18" /> + <hkern g1="uni0411" + g2="uni0458" + k="5" /> + <hkern g1="uni0411" + g2="uni0443,uni045E" + k="15" /> + <hkern g1="uni0411" + g2="uni0436" + k="-6" /> + <hkern g1="uni0411" + g2="uni0445" + k="3" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0414" + k="-9" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0417,uni042D" + k="-6" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0409,uni041B" + k="-12" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni040E,uni0423" + k="-3" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0410" + k="3" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0427" + k="3" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni042F" + k="-8" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0434" + k="4" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0437,uni044D" + k="-5" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0458" + k="4" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0436" + k="-3" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni045B" + k="-3" /> + <hkern g1="uni0402" + g2="uni0414" + k="-29" /> + <hkern g1="uni0402" + g2="uni0402" + k="69" /> + <hkern g1="uni0402" + g2="uni0417,uni042D" + k="-9" /> + <hkern g1="uni0402" + g2="uni0424" + k="14" /> + <hkern g1="uni0402" + g2="uni0409,uni041B" + k="-29" /> + <hkern g1="uni0402" + g2="uni040B,uni0422,uni042A" + k="69" /> + <hkern g1="uni0402" + g2="uni0408" + k="-10" /> + <hkern g1="uni0402" + g2="uni0404,uni041E,uni0421" + k="8" /> + <hkern g1="uni0402" + g2="uni040E,uni0423" + k="18" /> + <hkern g1="uni0402" + g2="uni0416" + k="-10" /> + <hkern g1="uni0402" + g2="uni0410" + k="-9" /> + <hkern g1="uni0402" + g2="uni0427" + k="39" /> + <hkern g1="uni0402" + g2="uni042F" + k="-10" /> + <hkern g1="uni0402" + g2="uni0425" + k="-8" /> + <hkern g1="uni0402" + g2="uni0447" + k="6" /> + <hkern g1="uni0402" + g2="uni0434" + k="-6" /> + <hkern g1="uni0402" + g2="uni043B,uni0459" + k="-18" /> + <hkern g1="uni0402" + g2="uni044A" + k="11" /> + <hkern g1="uni0402" + g2="uni0458" + k="-3" /> + <hkern g1="uni0402" + g2="uni0443,uni045E" + k="11" /> + <hkern g1="uni0402" + g2="uni044F" + k="-8" /> + <hkern g1="uni0402" + g2="uni0436" + k="-15" /> + <hkern g1="uni0402" + g2="uni0445" + k="-5" /> + <hkern g1="uni0402" + g2="uni045B" + k="-3" /> + <hkern g1="uni0405" + g2="uni0414" + k="-13" /> + <hkern g1="uni0405" + g2="uni0402" + k="19" /> + <hkern g1="uni0405" + g2="uni0409,uni041B" + k="-15" /> + <hkern g1="uni0405" + g2="uni040B,uni0422,uni042A" + k="22" /> + <hkern g1="uni0405" + g2="uni040E,uni0423" + k="9" /> + <hkern g1="uni0405" + g2="uni0416" + k="-10" /> + <hkern g1="uni0405" + g2="uni0427" + k="21" /> + <hkern g1="uni0405" + g2="uni042F" + k="-6" /> + <hkern g1="uni0405" + g2="uni0431" + k="7" /> + <hkern g1="uni0405" + g2="uni0447" + k="15" /> + <hkern g1="uni0405" + g2="uni0434" + k="4" /> + <hkern g1="uni0405" + g2="uni043B,uni0459" + k="-10" /> + <hkern g1="uni0405" + g2="uni044A" + k="13" /> + <hkern g1="uni0405" + g2="uni0458" + k="3" /> + <hkern g1="uni0405" + g2="uni0443,uni045E" + k="15" /> + <hkern g1="uni0405" + g2="uni0436" + k="-8" /> + <hkern g1="uni0424" + g2="uni0414" + k="6" /> + <hkern g1="uni0424" + g2="uni0402" + k="39" /> + <hkern g1="uni0424" + g2="uni0417,uni042D" + k="12" /> + <hkern g1="uni0424" + g2="uni0409,uni041B" + k="-6" /> + <hkern g1="uni0424" + g2="uni040B,uni0422,uni042A" + k="43" /> + <hkern g1="uni0424" + g2="uni0408" + k="24" /> + <hkern g1="uni0424" + g2="uni040E,uni0423" + k="44" /> + <hkern g1="uni0424" + g2="uni042F" + k="-3" /> + <hkern g1="uni0424" + g2="uni0425" + k="22" /> + <hkern g1="uni0424" + g2="uni0430" + k="-7" /> + <hkern g1="uni0424" + g2="uni0447" + k="-13" /> + <hkern g1="uni0424" + g2="uni0434" + k="-10" /> + <hkern g1="uni0424" + g2="uni0437,uni044D" + k="-4" /> + <hkern g1="uni0424" + g2="uni0458" + k="4" /> + <hkern g1="uni0424" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="-8" /> + <hkern g1="uni0424" + g2="uni0443,uni045E" + k="-5" /> + <hkern g1="uni0424" + g2="uni044F" + k="-4" /> + <hkern g1="uni0424" + g2="uni0445" + k="4" /> + <hkern g1="uni041C" + g2="uni0414" + k="-17" /> + <hkern g1="uni041C" + g2="uni0402" + k="5" /> + <hkern g1="uni041C" + g2="uni0417,uni042D" + k="-5" /> + <hkern g1="uni041C" + g2="uni0424" + k="6" /> + <hkern g1="uni041C" + g2="uni0409,uni041B" + k="-14" /> + <hkern g1="uni041C" + g2="uni040B,uni0422,uni042A" + k="14" /> + <hkern g1="uni041C" + g2="uni040E,uni0423" + k="13" /> + <hkern g1="uni041C" + g2="uni0427" + k="13" /> + <hkern g1="uni041C" + g2="uni042F" + k="-7" /> + <hkern g1="uni041C" + g2="uni0447" + k="7" /> + <hkern g1="uni041C" + g2="uni0455" + k="3" /> + <hkern g1="uni041C" + g2="uni0437,uni044D" + k="-3" /> + <hkern g1="uni041C" + g2="uni043B,uni0459" + k="-3" /> + <hkern g1="uni041C" + g2="uni044A" + k="3" /> + <hkern g1="uni041C" + g2="uni0436" + k="-8" /> + <hkern g1="uni0420" + g2="uni0414" + k="40" /> + <hkern g1="uni0420" + g2="uni0402" + k="6" /> + <hkern g1="uni0420" + g2="uni0417,uni042D" + k="7" /> + <hkern g1="uni0420" + g2="uni0409,uni041B" + k="24" /> + <hkern g1="uni0420" + g2="uni040B,uni0422,uni042A" + k="6" /> + <hkern g1="uni0420" + g2="uni0408" + k="81" /> + <hkern g1="uni0420" + g2="uni040E,uni0423" + k="12" /> + <hkern g1="uni0420" + g2="uni0416" + k="18" /> + <hkern g1="uni0420" + g2="uni0410" + k="63" /> + <hkern g1="uni0420" + g2="uni0425" + k="30" /> + <hkern g1="uni0420" + g2="uni041C" + k="6" /> + <hkern g1="uni0420" + g2="uni0430" + k="21" /> + <hkern g1="uni0420" + g2="uni0431" + k="-3" /> + <hkern g1="uni0420" + g2="uni0434" + k="16" /> + <hkern g1="uni0420" + g2="uni0455" + k="11" /> + <hkern g1="uni0420" + g2="uni0437,uni044D" + k="-9" /> + <hkern g1="uni0420" + g2="uni0444" + k="16" /> + <hkern g1="uni0420" + g2="uni043B,uni0459" + k="30" /> + <hkern g1="uni0420" + g2="uni044A" + k="-13" /> + <hkern g1="uni0420" + g2="uni0458" + k="13" /> + <hkern g1="uni0420" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="19" /> + <hkern g1="uni0420" + g2="uni0443,uni045E" + k="-14" /> + <hkern g1="uni0420" + g2="uni0436" + k="6" /> + <hkern g1="uni0420" + g2="uni043C" + k="21" /> + <hkern g1="uni0420" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="8" /> + <hkern g1="uni0420" + g2="uni0440" + k="10" /> + <hkern g1="uni0420" + g2="colon,semicolon" + k="10" /> + <hkern g1="uni0420" + g2="comma,period,ellipsis" + k="93" /> + <hkern g1="uni0420" + g2="hyphen,endash,emdash,uni00AD" + k="7" /> + <hkern g1="uni0404,uni0421" + g2="uni0414" + k="-33" /> + <hkern g1="uni0404,uni0421" + g2="uni0402" + k="-10" /> + <hkern g1="uni0404,uni0421" + g2="uni0417,uni042D" + k="-24" /> + <hkern g1="uni0404,uni0421" + g2="uni0424" + k="31" /> + <hkern g1="uni0404,uni0421" + g2="uni0409,uni041B" + k="-36" /> + <hkern g1="uni0404,uni0421" + g2="uni040B,uni0422,uni042A" + k="-6" /> + <hkern g1="uni0404,uni0421" + g2="uni0404,uni041E,uni0421" + k="25" /> + <hkern g1="uni0404,uni0421" + g2="uni040E,uni0423" + k="-18" /> + <hkern g1="uni0404,uni0421" + g2="uni0416" + k="-15" /> + <hkern g1="uni0404,uni0421" + g2="uni0410" + k="-3" /> + <hkern g1="uni0404,uni0421" + g2="uni0427" + k="9" /> + <hkern g1="uni0404,uni0421" + g2="uni042F" + k="-15" /> + <hkern g1="uni0404,uni0421" + g2="uni0425" + k="-6" /> + <hkern g1="uni0404,uni0421" + g2="uni0430" + k="9" /> + <hkern g1="uni0404,uni0421" + g2="uni0431" + k="16" /> + <hkern g1="uni0404,uni0421" + g2="uni0447" + k="62" /> + <hkern g1="uni0404,uni0421" + g2="uni0434" + k="8" /> + <hkern g1="uni0404,uni0421" + g2="uni0437,uni044D" + k="-12" /> + <hkern g1="uni0404,uni0421" + g2="uni0444" + k="7" /> + <hkern g1="uni0404,uni0421" + g2="uni043B,uni0459" + k="-33" /> + <hkern g1="uni0404,uni0421" + g2="uni044A" + k="28" /> + <hkern g1="uni0404,uni0421" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="8" /> + <hkern g1="uni0404,uni0421" + g2="uni0443,uni045E" + k="14" /> + <hkern g1="uni0404,uni0421" + g2="uni0436" + k="-10" /> + <hkern g1="uni0404,uni0421" + g2="uni045B" + k="-12" /> + <hkern g1="uni0404,uni0421" + g2="uni0452" + k="-12" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0414" + k="30" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0402" + k="-58" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0417,uni042D" + k="-26" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0424" + k="31" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0409,uni041B" + k="18" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni040B,uni0422,uni042A" + k="-50" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0408" + k="63" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0404,uni041E,uni0421" + k="17" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni040E,uni0423" + k="-36" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0416" + k="-22" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0410" + k="63" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0427" + k="-9" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0425" + k="-3" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni041C" + k="4" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0430" + k="81" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0431" + k="19" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0447" + k="70" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0434" + k="10" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0455" + k="45" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0437,uni044D" + k="45" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0444" + k="68" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni043B,uni0459" + k="80" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni044A" + k="36" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0458" + k="18" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="66" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0443,uni045E" + k="49" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni044F" + k="63" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0436" + k="57" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0445" + k="51" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni045B" + k="-32" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni043C" + k="71" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="18" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0440" + k="62" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0452" + k="-24" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="parenright,bracketright,braceright" + k="-31" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="colon,semicolon" + k="36" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="comma,period,ellipsis" + k="63" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="hyphen,endash,emdash,uni00AD" + k="47" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="guilsinglright,guillemotright" + k="33" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="guillemotleft,guilsinglleft" + k="40" /> + <hkern g1="uni0490" + g2="uni0414" + k="32" /> + <hkern g1="uni0490" + g2="uni0402" + k="-60" /> + <hkern g1="uni0490" + g2="uni0417,uni042D" + k="-28" /> + <hkern g1="uni0490" + g2="uni0424" + k="33" /> + <hkern g1="uni0490" + g2="uni0409,uni041B" + k="19" /> + <hkern g1="uni0490" + g2="uni040B,uni0422,uni042A" + k="-54" /> + <hkern g1="uni0490" + g2="uni0408" + k="65" /> + <hkern g1="uni0490" + g2="uni0404,uni041E,uni0421" + k="19" /> + <hkern g1="uni0490" + g2="uni040E,uni0423" + k="-38" /> + <hkern g1="uni0490" + g2="uni0416" + k="-27" /> + <hkern g1="uni0490" + g2="uni0410" + k="69" /> + <hkern g1="uni0490" + g2="uni0427" + k="-10" /> + <hkern g1="uni0490" + g2="uni042F" + k="-3" /> + <hkern g1="uni0490" + g2="uni0425" + k="-17" /> + <hkern g1="uni0490" + g2="uni041C" + k="4" /> + <hkern g1="uni0490" + g2="uni0430" + k="81" /> + <hkern g1="uni0490" + g2="uni0431" + k="15" /> + <hkern g1="uni0490" + g2="uni0447" + k="73" /> + <hkern g1="uni0490" + g2="uni0455" + k="65" /> + <hkern g1="uni0490" + g2="uni0437,uni044D" + k="46" /> + <hkern g1="uni0490" + g2="uni0444" + k="72" /> + <hkern g1="uni0490" + g2="uni043B,uni0459" + k="85" /> + <hkern g1="uni0490" + g2="uni044A" + k="41" /> + <hkern g1="uni0490" + g2="uni0458" + k="13" /> + <hkern g1="uni0490" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="69" /> + <hkern g1="uni0490" + g2="uni0443,uni045E" + k="50" /> + <hkern g1="uni0490" + g2="uni044F" + k="61" /> + <hkern g1="uni0490" + g2="uni0436" + k="64" /> + <hkern g1="uni0490" + g2="uni0445" + k="52" /> + <hkern g1="uni0490" + g2="uni045B" + k="-37" /> + <hkern g1="uni0490" + g2="uni043C" + k="80" /> + <hkern g1="uni0490" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="11" /> + <hkern g1="uni0490" + g2="uni0440" + k="70" /> + <hkern g1="uni0490" + g2="uni0452" + k="-32" /> + <hkern g1="uni0490" + g2="parenright,bracketright,braceright" + k="-37" /> + <hkern g1="uni0490" + g2="colon,semicolon" + k="30" /> + <hkern g1="uni0490" + g2="hyphen,endash,emdash,uni00AD" + k="53" /> + <hkern g1="uni0490" + g2="guillemotleft,guilsinglleft" + k="38" /> + <hkern g1="uni0425" + g2="uni0414" + k="-35" /> + <hkern g1="uni0425" + g2="uni0402" + k="-34" /> + <hkern g1="uni0425" + g2="uni0417,uni042D" + k="-27" /> + <hkern g1="uni0425" + g2="uni0424" + k="26" /> + <hkern g1="uni0425" + g2="uni0409,uni041B" + k="-42" /> + <hkern g1="uni0425" + g2="uni040B,uni0422,uni042A" + k="-33" /> + <hkern g1="uni0425" + g2="uni0404,uni041E,uni0421" + k="22" /> + <hkern g1="uni0425" + g2="uni040E,uni0423" + k="-32" /> + <hkern g1="uni0425" + g2="uni0416" + k="-19" /> + <hkern g1="uni0425" + g2="uni0410" + k="-4" /> + <hkern g1="uni0425" + g2="uni0427" + k="3" /> + <hkern g1="uni0425" + g2="uni042F" + k="-21" /> + <hkern g1="uni0425" + g2="uni0425" + k="-4" /> + <hkern g1="uni0425" + g2="uni0430" + k="14" /> + <hkern g1="uni0425" + g2="uni0431" + k="26" /> + <hkern g1="uni0425" + g2="uni0447" + k="30" /> + <hkern g1="uni0425" + g2="uni0434" + k="15" /> + <hkern g1="uni0425" + g2="uni0437,uni044D" + k="-12" /> + <hkern g1="uni0425" + g2="uni0444" + k="11" /> + <hkern g1="uni0425" + g2="uni043B,uni0459" + k="-25" /> + <hkern g1="uni0425" + g2="uni0458" + k="3" /> + <hkern g1="uni0425" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="13" /> + <hkern g1="uni0425" + g2="uni0443,uni045E" + k="17" /> + <hkern g1="uni0425" + g2="uni044F" + k="-9" /> + <hkern g1="uni0425" + g2="uni0436" + k="-13" /> + <hkern g1="uni0425" + g2="uni0445" + k="-15" /> + <hkern g1="uni0425" + g2="uni045B" + k="-18" /> + <hkern g1="uni0425" + g2="uni0452" + k="-16" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0414" + k="-11" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0402" + k="85" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0424" + k="11" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0409,uni041B" + k="-16" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni040B,uni0422,uni042A" + k="85" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0404,uni041E,uni0421" + k="10" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni040E,uni0423" + k="34" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0416" + k="-6" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0410" + k="-4" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0427" + k="35" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni042F" + k="-5" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0444" + k="-3" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni043B,uni0459" + k="-7" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni044A" + k="9" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0458" + k="5" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0443,uni045E" + k="12" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni044F" + k="-4" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0436" + k="-8" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0445" + k="3" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="parenright,bracketright,braceright" + k="25" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="quoteright,quotedblright" + k="27" /> + <hkern g1="uni0401,uni0415" + g2="uni0414" + k="-26" /> + <hkern g1="uni0401,uni0415" + g2="uni0402" + k="-3" /> + <hkern g1="uni0401,uni0415" + g2="uni0417,uni042D" + k="-9" /> + <hkern g1="uni0401,uni0415" + g2="uni0409,uni041B" + k="-25" /> + <hkern g1="uni0401,uni0415" + g2="uni040B,uni0422,uni042A" + k="-3" /> + <hkern g1="uni0401,uni0415" + g2="uni0408" + k="-5" /> + <hkern g1="uni0401,uni0415" + g2="uni040E,uni0423" + k="-10" /> + <hkern g1="uni0401,uni0415" + g2="uni0427" + k="3" /> + <hkern g1="uni0401,uni0415" + g2="uni042F" + k="-6" /> + <hkern g1="uni0401,uni0415" + g2="uni0430" + k="4" /> + <hkern g1="uni0401,uni0415" + g2="uni0431" + k="5" /> + <hkern g1="uni0401,uni0415" + g2="uni0447" + k="6" /> + <hkern g1="uni0401,uni0415" + g2="uni0434" + k="5" /> + <hkern g1="uni0401,uni0415" + g2="uni0437,uni044D" + k="-3" /> + <hkern g1="uni0401,uni0415" + g2="uni0444" + k="5" /> + <hkern g1="uni0401,uni0415" + g2="uni043B,uni0459" + k="-19" /> + <hkern g1="uni0401,uni0415" + g2="uni044A" + k="5" /> + <hkern g1="uni0401,uni0415" + g2="uni0458" + k="3" /> + <hkern g1="uni0401,uni0415" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="4" /> + <hkern g1="uni0401,uni0415" + g2="uni0443,uni045E" + k="8" /> + <hkern g1="uni0401,uni0415" + g2="uni0436" + k="-3" /> + <hkern g1="uni0401,uni0415" + g2="uni045B" + k="-4" /> + <hkern g1="uni0401,uni0415" + g2="uni043C" + k="4" /> + <hkern g1="uni0408" + g2="uni0414" + k="-8" /> + <hkern g1="uni0408" + g2="uni0408" + k="18" /> + <hkern g1="uni0408" + g2="uni040E,uni0423" + k="-8" /> + <hkern g1="uni0408" + g2="uni0416" + k="-5" /> + <hkern g1="uni0408" + g2="uni042F" + k="-6" /> + <hkern g1="uni0408" + g2="uni0447" + k="-4" /> + <hkern g1="uni0408" + g2="uni0437,uni044D" + k="-6" /> + <hkern g1="uni0408" + g2="uni043B,uni0459" + k="4" /> + <hkern g1="uni0408" + g2="uni044A" + k="-12" /> + <hkern g1="uni0408" + g2="uni0458" + k="3" /> + <hkern g1="uni0408" + g2="uni0443,uni045E" + k="-6" /> + <hkern g1="uni0408" + g2="uni045B" + k="-5" /> + <hkern g1="uni0408" + g2="uni043C" + k="5" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0414" + k="-37" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0402" + k="-17" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0417,uni042D" + k="-15" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0424" + k="30" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0409,uni041B" + k="-26" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni040B,uni0422,uni042A" + k="-15" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0408" + k="-16" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0404,uni041E,uni0421" + k="27" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni040E,uni0423" + k="-13" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0416" + k="-15" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0410" + k="-12" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0427" + k="10" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni042F" + k="-23" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0425" + k="-17" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0430" + k="7" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0431" + k="13" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0447" + k="33" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0434" + k="9" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0437,uni044D" + k="-10" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0444" + k="3" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni043B,uni0459" + k="-29" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni044A" + k="9" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="8" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0443,uni045E" + k="7" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni044F" + k="-10" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0436" + k="-14" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0445" + k="-16" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni045B" + k="-13" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni043C" + k="3" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0452" + k="-9" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="hyphen,endash,emdash,uni00AD" + k="9" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0402" + k="27" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0417,uni042D" + k="5" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0409,uni041B" + k="-7" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni040B,uni0422,uni042A" + k="26" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0408" + k="12" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni040E,uni0423" + k="37" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0410" + k="7" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0425" + k="15" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0430" + k="-8" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0447" + k="-20" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0434" + k="-11" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0437,uni044D" + k="-11" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni043B,uni0459" + k="-5" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni044A" + k="-10" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="-9" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0443,uni045E" + k="-14" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni044F" + k="-9" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni045B" + k="-3" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0452" + k="-3" /> + <hkern g1="uni040B" + g2="uni0414" + k="-12" /> + <hkern g1="uni040B" + g2="uni0402" + k="76" /> + <hkern g1="uni040B" + g2="uni0424" + k="12" /> + <hkern g1="uni040B" + g2="uni040B,uni0422,uni042A" + k="78" /> + <hkern g1="uni040B" + g2="uni0408" + k="4" /> + <hkern g1="uni040B" + g2="uni0404,uni041E,uni0421" + k="5" /> + <hkern g1="uni040B" + g2="uni040E,uni0423" + k="35" /> + <hkern g1="uni040B" + g2="uni0427" + k="41" /> + <hkern g1="uni040B" + g2="uni042F" + k="-6" /> + <hkern g1="uni040B" + g2="uni0431" + k="6" /> + <hkern g1="uni040B" + g2="uni0447" + k="6" /> + <hkern g1="uni040B" + g2="uni0437,uni044D" + k="-3" /> + <hkern g1="uni040B" + g2="uni043B,uni0459" + k="-9" /> + <hkern g1="uni040B" + g2="uni044A" + k="14" /> + <hkern g1="uni040B" + g2="uni0458" + k="6" /> + <hkern g1="uni040B" + g2="uni0443,uni045E" + k="15" /> + <hkern g1="uni040B" + g2="uni044F" + k="-6" /> + <hkern g1="uni040B" + g2="uni0436" + k="-10" /> + <hkern g1="uni040E,uni0423" + g2="uni0414" + k="28" /> + <hkern g1="uni040E,uni0423" + g2="uni0402" + k="-45" /> + <hkern g1="uni040E,uni0423" + g2="uni0417,uni042D" + k="-32" /> + <hkern g1="uni040E,uni0423" + g2="uni0424" + k="-3" /> + <hkern g1="uni040E,uni0423" + g2="uni0409,uni041B" + k="15" /> + <hkern g1="uni040E,uni0423" + g2="uni040B,uni0422,uni042A" + k="-42" /> + <hkern g1="uni040E,uni0423" + g2="uni0408" + k="60" /> + <hkern g1="uni040E,uni0423" + g2="uni0404,uni041E,uni0421" + k="-9" /> + <hkern g1="uni040E,uni0423" + g2="uni040E,uni0423" + k="-23" /> + <hkern g1="uni040E,uni0423" + g2="uni0416" + k="-9" /> + <hkern g1="uni040E,uni0423" + g2="uni0410" + k="60" /> + <hkern g1="uni040E,uni0423" + g2="uni0427" + k="-15" /> + <hkern g1="uni040E,uni0423" + g2="uni042F" + k="-7" /> + <hkern g1="uni040E,uni0423" + g2="uni0425" + k="-8" /> + <hkern g1="uni040E,uni0423" + g2="uni041C" + k="7" /> + <hkern g1="uni040E,uni0423" + g2="uni0430" + k="23" /> + <hkern g1="uni040E,uni0423" + g2="uni0431" + k="-5" /> + <hkern g1="uni040E,uni0423" + g2="uni0447" + k="4" /> + <hkern g1="uni040E,uni0423" + g2="uni0434" + k="5" /> + <hkern g1="uni040E,uni0423" + g2="uni0455" + k="13" /> + <hkern g1="uni040E,uni0423" + g2="uni0437,uni044D" + k="-11" /> + <hkern g1="uni040E,uni0423" + g2="uni0444" + k="21" /> + <hkern g1="uni040E,uni0423" + g2="uni043B,uni0459" + k="25" /> + <hkern g1="uni040E,uni0423" + g2="uni044A" + k="-21" /> + <hkern g1="uni040E,uni0423" + g2="uni0458" + k="-5" /> + <hkern g1="uni040E,uni0423" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="13" /> + <hkern g1="uni040E,uni0423" + g2="uni0443,uni045E" + k="-7" /> + <hkern g1="uni040E,uni0423" + g2="uni044F" + k="10" /> + <hkern g1="uni040E,uni0423" + g2="uni0445" + k="4" /> + <hkern g1="uni040E,uni0423" + g2="uni045B" + k="-31" /> + <hkern g1="uni040E,uni0423" + g2="uni043C" + k="23" /> + <hkern g1="uni040E,uni0423" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="-8" /> + <hkern g1="uni040E,uni0423" + g2="uni0440" + k="12" /> + <hkern g1="uni040E,uni0423" + g2="uni0452" + k="-30" /> + <hkern g1="uni040E,uni0423" + g2="parenright,bracketright,braceright" + k="-26" /> + <hkern g1="uni040E,uni0423" + g2="colon,semicolon" + k="23" /> + <hkern g1="uni040E,uni0423" + g2="comma,period,ellipsis" + k="66" /> + <hkern g1="uni040E,uni0423" + g2="hyphen,endash,emdash,uni00AD" + k="10" /> + <hkern g1="uni040E,uni0423" + g2="guillemotleft,guilsinglleft" + k="9" /> + <hkern g1="uni0412,uni0417" + g2="uni0414" + k="-9" /> + <hkern g1="uni0412,uni0417" + g2="uni0402" + k="10" /> + <hkern g1="uni0412,uni0417" + g2="uni0417,uni042D" + k="4" /> + <hkern g1="uni0412,uni0417" + g2="uni0424" + k="12" /> + <hkern g1="uni0412,uni0417" + g2="uni0409,uni041B" + k="-8" /> + <hkern g1="uni0412,uni0417" + g2="uni040B,uni0422,uni042A" + k="15" /> + <hkern g1="uni0412,uni0417" + g2="uni0408" + k="7" /> + <hkern g1="uni0412,uni0417" + g2="uni0404,uni041E,uni0421" + k="6" /> + <hkern g1="uni0412,uni0417" + g2="uni040E,uni0423" + k="21" /> + <hkern g1="uni0412,uni0417" + g2="uni0416" + k="-8" /> + <hkern g1="uni0412,uni0417" + g2="uni0427" + k="12" /> + <hkern g1="uni0412,uni0417" + g2="uni042F" + k="-4" /> + <hkern g1="uni0412,uni0417" + g2="uni0425" + k="4" /> + <hkern g1="uni0412,uni0417" + g2="uni0431" + k="4" /> + <hkern g1="uni0412,uni0417" + g2="uni0447" + k="5" /> + <hkern g1="uni0412,uni0417" + g2="uni0455" + k="6" /> + <hkern g1="uni0412,uni0417" + g2="uni0437,uni044D" + k="-4" /> + <hkern g1="uni0412,uni0417" + g2="uni043B,uni0459" + k="-4" /> + <hkern g1="uni0412,uni0417" + g2="uni044A" + k="-6" /> + <hkern g1="uni0412,uni0417" + g2="uni0458" + k="7" /> + <hkern g1="uni0412,uni0417" + g2="uni0443,uni045E" + k="-4" /> + <hkern g1="uni0412,uni0417" + g2="uni044F" + k="-4" /> + <hkern g1="uni0412,uni0417" + g2="uni0436" + k="-6" /> + <hkern g1="uni0412,uni0417" + g2="uni043C" + k="4" /> + <hkern g1="uni0430" + g2="uni0431" + k="-3" /> + <hkern g1="uni0430" + g2="uni0447" + k="-3" /> + <hkern g1="uni0430" + g2="uni0437,uni044D" + k="-3" /> + <hkern g1="uni0430" + g2="uni043B,uni0459" + k="-10" /> + <hkern g1="uni0430" + g2="uni0458" + k="3" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni0431" + k="-5" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni043B,uni0459" + k="-5" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni0458" + k="3" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni0436" + k="-3" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni045B" + k="-3" /> + <hkern g1="uni0434" + g2="uni0431" + k="-5" /> + <hkern g1="uni0434" + g2="uni0447" + k="-6" /> + <hkern g1="uni0434" + g2="uni0437,uni044D" + k="-6" /> + <hkern g1="uni0434" + g2="uni0444" + k="-5" /> + <hkern g1="uni0434" + g2="uni043B,uni0459" + k="-4" /> + <hkern g1="uni0434" + g2="uni044A" + k="-8" /> + <hkern g1="uni0434" + g2="uni0458" + k="5" /> + <hkern g1="uni0434" + g2="uni0436" + k="-4" /> + <hkern g1="uni0452" + g2="uni0434" + k="-6" /> + <hkern g1="uni0452" + g2="uni0455" + k="4" /> + <hkern g1="uni0452" + g2="uni0437,uni044D" + k="-3" /> + <hkern g1="uni0452" + g2="uni043B,uni0459" + k="-9" /> + <hkern g1="uni0452" + g2="uni0443,uni045E" + k="10" /> + <hkern g1="uni0452" + g2="uni044F" + k="-4" /> + <hkern g1="uni0455" + g2="uni0447" + k="10" /> + <hkern g1="uni0455" + g2="uni0434" + k="4" /> + <hkern g1="uni0455" + g2="uni044A" + k="-6" /> + <hkern g1="uni0455" + g2="uni0458" + k="5" /> + <hkern g1="uni0455" + g2="uni0443,uni045E" + k="3" /> + <hkern g1="uni0455" + g2="uni044F" + k="-3" /> + <hkern g1="uni0455" + g2="uni045B" + k="3" /> + <hkern g1="uni0455" + g2="uni0452" + k="4" /> + <hkern g1="uni0444" + g2="uni0434" + k="-4" /> + <hkern g1="uni0444" + g2="uni0437,uni044D" + k="3" /> + <hkern g1="uni0444" + g2="uni043B,uni0459" + k="-7" /> + <hkern g1="uni0444" + g2="uni044A" + k="-4" /> + <hkern g1="uni0444" + g2="uni0458" + k="5" /> + <hkern g1="uni0444" + g2="uni0443,uni045E" + k="7" /> + <hkern g1="uni0444" + g2="uni0445" + k="6" /> + <hkern g1="uni043C" + g2="uni0431" + k="3" /> + <hkern g1="uni043C" + g2="uni0447" + k="5" /> + <hkern g1="uni043C" + g2="uni0434" + k="3" /> + <hkern g1="uni043C" + g2="uni043B,uni0459" + k="-10" /> + <hkern g1="uni043C" + g2="uni0458" + k="6" /> + <hkern g1="uni043C" + g2="uni044F" + k="-3" /> + <hkern g1="uni0441,uni0454" + g2="uni0430" + k="11" /> + <hkern g1="uni0441,uni0454" + g2="uni0447" + k="-4" /> + <hkern g1="uni0441,uni0454" + g2="uni0434" + k="8" /> + <hkern g1="uni0441,uni0454" + g2="uni0437,uni044D" + k="-19" /> + <hkern g1="uni0441,uni0454" + g2="uni0444" + k="8" /> + <hkern g1="uni0441,uni0454" + g2="uni043B,uni0459" + k="-31" /> + <hkern g1="uni0441,uni0454" + g2="uni044A" + k="-21" /> + <hkern g1="uni0441,uni0454" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="9" /> + <hkern g1="uni0441,uni0454" + g2="uni0443,uni045E" + k="-9" /> + <hkern g1="uni0441,uni0454" + g2="uni044F" + k="-11" /> + <hkern g1="uni0441,uni0454" + g2="uni0436" + k="-13" /> + <hkern g1="uni0441,uni0454" + g2="uni0445" + k="-13" /> + <hkern g1="uni0441,uni0454" + g2="uni045B" + k="-4" /> + <hkern g1="uni0441,uni0454" + g2="uni0452" + k="-4" /> + <hkern g1="uni0433,uni0453" + g2="uni0431" + k="-8" /> + <hkern g1="uni0433,uni0453" + g2="uni0447" + k="-6" /> + <hkern g1="uni0433,uni0453" + g2="uni0434" + k="-5" /> + <hkern g1="uni0433,uni0453" + g2="uni0437,uni044D" + k="-13" /> + <hkern g1="uni0433,uni0453" + g2="uni043B,uni0459" + k="-21" /> + <hkern g1="uni0433,uni0453" + g2="uni044A" + k="-15" /> + <hkern g1="uni0433,uni0453" + g2="uni0443,uni045E" + k="-3" /> + <hkern g1="uni0433,uni0453" + g2="uni044F" + k="-7" /> + <hkern g1="uni0433,uni0453" + g2="uni0436" + k="-12" /> + <hkern g1="uni0433,uni0453" + g2="uni0445" + k="-8" /> + <hkern g1="uni0433,uni0453" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="-4" /> + <hkern g1="uni0433,uni0453" + g2="parenright,bracketright,braceright" + k="16" /> + <hkern g1="uni0433,uni0453" + g2="comma,period,ellipsis" + k="4" /> + <hkern g1="uni0433,uni0453" + g2="guilsinglright,guillemotright" + k="-5" /> + <hkern g1="uni0433,uni0453" + g2="guillemotleft,guilsinglleft" + k="-4" /> + <hkern g1="uni0491" + g2="uni0430" + k="28" /> + <hkern g1="uni0491" + g2="uni0431" + k="-20" /> + <hkern g1="uni0491" + g2="uni0447" + k="-6" /> + <hkern g1="uni0491" + g2="uni0434" + k="11" /> + <hkern g1="uni0491" + g2="uni0437,uni044D" + k="-28" /> + <hkern g1="uni0491" + g2="uni0444" + k="9" /> + <hkern g1="uni0491" + g2="uni043B,uni0459" + k="35" /> + <hkern g1="uni0491" + g2="uni044A" + k="-36" /> + <hkern g1="uni0491" + g2="uni0458" + k="12" /> + <hkern g1="uni0491" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="11" /> + <hkern g1="uni0491" + g2="uni0443,uni045E" + k="-24" /> + <hkern g1="uni0491" + g2="uni0436" + k="-6" /> + <hkern g1="uni0491" + g2="uni0445" + k="-5" /> + <hkern g1="uni0491" + g2="uni045B" + k="-29" /> + <hkern g1="uni0491" + g2="uni043C" + k="23" /> + <hkern g1="uni0491" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="4" /> + <hkern g1="uni0491" + g2="uni0440" + k="8" /> + <hkern g1="uni0491" + g2="uni0452" + k="-27" /> + <hkern g1="uni0491" + g2="parenright,bracketright,braceright" + k="-4" /> + <hkern g1="uni0491" + g2="hyphen,endash,emdash,uni00AD" + k="23" /> + <hkern g1="uni0491" + g2="guilsinglright,guillemotright" + k="-29" /> + <hkern g1="uni0445" + g2="uni0430" + k="13" /> + <hkern g1="uni0445" + g2="uni0431" + k="-5" /> + <hkern g1="uni0445" + g2="uni0447" + k="-5" /> + <hkern g1="uni0445" + g2="uni0434" + k="14" /> + <hkern g1="uni0445" + g2="uni0437,uni044D" + k="-17" /> + <hkern g1="uni0445" + g2="uni0444" + k="14" /> + <hkern g1="uni0445" + g2="uni043B,uni0459" + k="-19" /> + <hkern g1="uni0445" + g2="uni044A" + k="-27" /> + <hkern g1="uni0445" + g2="uni0458" + k="6" /> + <hkern g1="uni0445" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="16" /> + <hkern g1="uni0445" + g2="uni0443,uni045E" + k="-15" /> + <hkern g1="uni0445" + g2="uni044F" + k="-8" /> + <hkern g1="uni0445" + g2="uni0436" + k="-8" /> + <hkern g1="uni0445" + g2="uni0445" + k="-9" /> + <hkern g1="uni0445" + g2="uni045B" + k="4" /> + <hkern g1="uni0445" + g2="uni0452" + k="4" /> + <hkern g1="uni0445" + g2="guillemotleft,guilsinglleft" + k="6" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0430" + k="-3" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0431" + k="5" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0447" + k="13" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0455" + k="5" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni043B,uni0459" + k="-12" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni044A" + k="46" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0458" + k="5" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0443,uni045E" + k="21" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni044F" + k="-4" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0436" + k="-11" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0445" + k="-6" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="quoteright,quotedblright" + k="36" /> + <hkern g1="uni0456" + g2="uni043B,uni0459" + k="-4" /> + <hkern g1="uni0456" + g2="uni044A" + k="-7" /> + <hkern g1="uni0456" + g2="uni0458" + k="3" /> + <hkern g1="uni0456" + g2="uni045B" + k="-5" /> + <hkern g1="uni0435,uni0451" + g2="uni0431" + k="-4" /> + <hkern g1="uni0435,uni0451" + g2="uni0447" + k="-4" /> + <hkern g1="uni0435,uni0451" + g2="uni0437,uni044D" + k="-6" /> + <hkern g1="uni0435,uni0451" + g2="uni043B,uni0459" + k="-10" /> + <hkern g1="uni0435,uni0451" + g2="uni044A" + k="-9" /> + <hkern g1="uni0435,uni0451" + g2="uni0458" + k="3" /> + <hkern g1="uni0435,uni0451" + g2="uni044F" + k="-3" /> + <hkern g1="uni0435,uni0451" + g2="uni0436" + k="-6" /> + <hkern g1="uni0435,uni0451" + g2="uni043C" + k="3" /> + <hkern g1="uni0458" + g2="uni0447" + k="-4" /> + <hkern g1="uni0458" + g2="uni044A" + k="-8" /> + <hkern g1="uni0458" + g2="uni0443,uni045E" + k="-3" /> + <hkern g1="uni0458" + g2="uni044F" + k="-3" /> + <hkern g1="uni0458" + g2="uni045B" + k="-7" /> + <hkern g1="uni0458" + g2="uni0452" + k="-6" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0430" + k="5" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0431" + k="4" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0434" + k="12" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0437,uni044D" + k="-18" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0444" + k="7" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni043B,uni0459" + k="-20" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni044A" + k="-25" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="9" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0443,uni045E" + k="-6" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni044F" + k="-10" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0436" + k="-16" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0445" + k="-14" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni045B" + k="-5" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0452" + k="-4" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="guillemotleft,guilsinglleft" + k="8" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni043B,uni0459" + k="-4" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni044A" + k="-7" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni0458" + k="5" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni0443,uni045E" + k="7" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni0436" + k="-5" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni0445" + k="8" /> + <hkern g1="uni045B" + g2="uni0447" + k="5" /> + <hkern g1="uni045B" + g2="uni043B,uni0459" + k="-3" /> + <hkern g1="uni045B" + g2="uni0458" + k="8" /> + <hkern g1="uni045B" + g2="uni0443,uni045E" + k="9" /> + <hkern g1="uni0443,uni045E" + g2="uni0430" + k="10" /> + <hkern g1="uni0443,uni045E" + g2="uni0431" + k="-10" /> + <hkern g1="uni0443,uni045E" + g2="uni0447" + k="-4" /> + <hkern g1="uni0443,uni045E" + g2="uni0434" + k="4" /> + <hkern g1="uni0443,uni045E" + g2="uni0437,uni044D" + k="-12" /> + <hkern g1="uni0443,uni045E" + g2="uni0444" + k="5" /> + <hkern g1="uni0443,uni045E" + g2="uni044A" + k="-26" /> + <hkern g1="uni0443,uni045E" + g2="uni0458" + k="5" /> + <hkern g1="uni0443,uni045E" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="6" /> + <hkern g1="uni0443,uni045E" + g2="uni0443,uni045E" + k="-6" /> + <hkern g1="uni0443,uni045E" + g2="uni043C" + k="6" /> + <hkern g1="uni0443,uni045E" + g2="parenright,bracketright,braceright" + k="18" /> + <hkern g1="uni0443,uni045E" + g2="comma,period,ellipsis" + k="32" /> + <hkern g1="uni0443,uni045E" + g2="hyphen,endash,emdash,uni00AD" + k="5" /> + <hkern g1="uni0443,uni045E" + g2="guilsinglright,guillemotright" + k="-6" /> + <hkern g1="uni0432,uni0437" + g2="uni0431" + k="6" /> + <hkern g1="uni0432,uni0437" + g2="uni0447" + k="6" /> + <hkern g1="uni0432,uni0437" + g2="uni043B,uni0459" + k="-21" /> + <hkern g1="uni0432,uni0437" + g2="uni044A" + k="-7" /> + <hkern g1="uni0432,uni0437" + g2="uni0458" + k="5" /> + <hkern g1="uni0432,uni0437" + g2="uni0443,uni045E" + k="6" /> + <hkern g1="uni0432,uni0437" + g2="uni044F" + k="-5" /> + <hkern g1="uni0432,uni0437" + g2="uni0436" + k="-17" /> + <hkern g1="uni0432,uni0437" + g2="uni0445" + k="-7" /> + <hkern g1="uni0457" + g2="uni0434" + k="-7" /> + <hkern g1="uni0457" + g2="uni043B,uni0459" + k="-5" /> + <hkern g1="uni0457" + g2="uni044A" + k="-9" /> + <hkern g1="uni0457" + g2="uni0458" + k="-19" /> + <hkern g1="uni0457" + g2="uni045B" + k="-58" /> + <hkern g1="uni0457" + g2="uni0452" + k="-53" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0414" + k="-14" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0402" + k="-40" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0409,uni041B" + k="12" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni040B,uni0422,uni042A" + k="-35" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0408" + k="14" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni040E,uni0423" + k="-20" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0416" + k="-3" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0427" + k="20" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni042F" + k="17" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0447" + k="31" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0434" + k="17" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni044A" + k="16" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0443,uni045E" + k="13" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni044F" + k="35" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni045B" + k="-5" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0452" + k="-3" /> + <hkern g1="colon,semicolon" + g2="uni0414" + k="-10" /> + <hkern g1="colon,semicolon" + g2="uni0402" + k="12" /> + <hkern g1="colon,semicolon" + g2="uni0409,uni041B" + k="-11" /> + <hkern g1="colon,semicolon" + g2="uni040B,uni0422,uni042A" + k="10" /> + <hkern g1="colon,semicolon" + g2="uni040E,uni0423" + k="5" /> + <hkern g1="colon,semicolon" + g2="uni0427" + k="4" /> + <hkern g1="colon,semicolon" + g2="uni043B,uni0459" + k="-5" /> + <hkern g1="colon,semicolon" + g2="uni044A" + k="-11" /> + <hkern g1="colon,semicolon" + g2="uni045B" + k="3" /> + <hkern g1="colon,semicolon" + g2="uni0452" + k="7" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0414" + k="11" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0402" + k="59" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0409,uni041B" + k="20" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni040B,uni0422,uni042A" + k="61" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0408" + k="46" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni040E,uni0423" + k="34" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0416" + k="11" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0427" + k="22" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni042F" + k="13" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0425" + k="10" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni041C" + k="6" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0434" + k="-13" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni043B,uni0459" + k="11" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni044A" + k="14" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0443,uni045E" + k="9" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni044F" + k="6" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0436" + k="8" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0445" + k="14" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0414" + k="-29" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0402" + k="42" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0409,uni041B" + k="-19" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni040B,uni0422,uni042A" + k="38" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0408" + k="-10" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni040E,uni0423" + k="9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0416" + k="-11" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0410" + k="-8" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0427" + k="3" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni042F" + k="-13" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0425" + k="-5" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0434" + k="5" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni043B,uni0459" + k="-23" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni044A" + k="-7" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0443,uni045E" + k="-10" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0414" + k="-3" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0402" + k="45" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni040B,uni0422,uni042A" + k="45" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni040E,uni0423" + k="28" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0416" + k="-4" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0427" + k="16" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0434" + k="-3" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni044A" + k="10" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0436" + k="-4" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0402" + k="-31" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0424" + k="20" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0409,uni041B" + k="27" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni040B,uni0422,uni042A" + k="-39" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0408" + k="60" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0404,uni041E,uni0421" + k="13" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni040E,uni0423" + k="-11" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0410" + k="46" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0434" + k="8" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni043B,uni0459" + k="35" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni044A" + k="-9" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0458" + k="-3" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0443,uni045E" + k="-10" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni044F" + k="15" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni045B" + k="-17" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0452" + k="-17" /> + </font> +</defs></svg> diff --git a/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.ttf b/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.ttf new file mode 100644 index 0000000..0b74757 Binary files /dev/null and b/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.ttf differ diff --git a/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.woff b/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.woff new file mode 100644 index 0000000..166164a Binary files /dev/null and b/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.woff differ diff --git a/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.woff2 b/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.woff2 new file mode 100644 index 0000000..6ff5b74 Binary files /dev/null and b/site/css/font/d2daa36af4aaac8c5e102ca2db9d8227.woff2 differ diff --git a/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.eot b/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.eot new file mode 100644 index 0000000..4aaf3d3 Binary files /dev/null and b/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.eot differ diff --git a/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.svg b/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.svg new file mode 100644 index 0000000..34dafe7 --- /dev/null +++ b/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.svg @@ -0,0 +1,8129 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<svg> +<metadata> +Created by FontForge 20120731 at Mon Jun 12 07:31:56 2017 + By www +Copyright 1992, 1994, 1997, 2000, 2004 Adobe Systems Incorporated. All rights reserved. Protected by U.S. Patents D454,582. Myriad is either a registered trademark or a trademark of Adobe Systems Incorporated in the United States and/or other countries. +</metadata> +<defs> +<font id="MyriadPro-BoldIt" horiz-adv-x="395" > + <font-face + font-family="Myriad Pro" + font-weight="700" + font-style="italic" + font-stretch="normal" + units-per-em="1000" + panose-1="2 11 7 3 3 4 3 9 2 4" + ascent="750" + descent="-250" + x-height="489" + cap-height="674" + bbox="-201 -250 1225 987" + underline-thickness="50" + underline-position="-50" + slope="-11" + stemh="110" + stemv="152" + unicode-range="U+0020-FB04" + /> +<missing-glyph horiz-adv-x="500" +d="M0 0v700h500v-700h-500zM250 395l170 255h-340zM280 350l170 -255v510zM80 50h340l-170 255zM50 605v-510l170 255z" /> + <glyph glyph-name="f_f" unicode="ff" horiz-adv-x="632" +d="M727 709l-25 -115c-12 5 -27 8 -46 8c-47 0 -75 -40 -84 -88l-5 -24h97l-21 -110h-96l-70 -380h-145l72 380h-159l-71 -380h-144l72 380h-63l20 110h64l3 15c12 53 32 108 71 147c33 33 80 55 145 55c30 0 55 -6 73 -13l-39 -109c-10 3 -20 6 -33 6 +c-49 0 -66 -44 -75 -85l-3 -16h160l5 25c10 57 33 118 82 160c39 33 91 46 139 46c35 0 61 -5 76 -12z" /> + <glyph glyph-name="f_f_i" unicode="ffi" horiz-adv-x="865" +d="M837 692l-38 -111c-24 10 -62 22 -107 22c-84 0 -113 -46 -121 -94l-3 -19h283l-93 -490h-144l71 380h-137l-71 -380h-145l72 380h-160l-71 -380h-144l71 380h-63l21 110h63l4 18c12 54 34 105 71 142c34 35 82 57 149 57c36 0 71 -12 85 -20l-47 -106 +c-11 6 -25 10 -39 10c-19 0 -34 -6 -45 -17c-16 -16 -26 -42 -32 -70l-3 -14h161l4 19c27 135 128 211 273 211c56 0 111 -14 135 -28z" /> + <glyph glyph-name="f_f_j" unicode="ffj" horiz-adv-x="859" +d="M837 692l-38 -111c-24 10 -62 22 -107 22c-84 0 -113 -46 -121 -94l-3 -19h283l-89 -473c-15 -85 -36 -138 -69 -174c-31 -36 -82 -52 -133 -52c-22 0 -46 2 -69 8l16 108c11 -1 20 -2 33 -2c33 0 60 17 77 105l70 370h-139l-72 -380h-144l72 380h-160l-71 -380h-144 +l71 380h-63l21 110h63l4 18c12 54 34 105 71 142c34 35 82 57 149 57c36 0 70 -12 85 -20l-47 -106c-11 6 -25 10 -39 10c-19 0 -34 -6 -45 -17c-16 -16 -26 -42 -32 -70l-3 -14h161l4 19c27 135 128 211 273 211c56 0 111 -14 135 -28z" /> + <glyph glyph-name="f_f_l" unicode="ffl" horiz-adv-x="865" +d="M429 688l-44 -106c-13 5 -26 9 -41 9c-20 0 -35 -7 -46 -18c-18 -18 -27 -46 -31 -69l-3 -14h161l3 21c10 56 40 117 98 159c47 35 110 51 183 51c56 0 133 -14 177 -41l-128 -680h-144l113 598c-10 5 -26 10 -55 10c-57 0 -92 -45 -101 -100l-3 -18h84l-21 -110h-83 +l-72 -380h-144l72 380h-160l-71 -380h-144l71 380h-63l21 110h63l3 14c11 57 34 110 71 147c35 35 83 56 148 56c38 0 70 -11 86 -19z" /> + <glyph glyph-name="f_i" unicode="fi" horiz-adv-x="564" +d="M174 0h-143l71 380h-63l21 110h63l4 19c25 136 128 211 273 211c56 0 111 -14 135 -28l-38 -111c-24 10 -62 22 -107 22c-84 0 -113 -46 -121 -94l-3 -19h283l-93 -490h-144l71 380h-137z" /> + <glyph glyph-name="f_j" unicode="fj" horiz-adv-x="557" +d="M535 692l-38 -111c-23 10 -61 22 -107 22c-84 0 -112 -46 -121 -94l-3 -19h283l-89 -473c-15 -85 -36 -138 -69 -174c-31 -36 -82 -52 -133 -52c-22 0 -46 2 -68 8l16 108c10 -1 19 -2 32 -2c33 0 61 17 77 105l70 370h-139l-71 -380h-144l71 380h-63l21 110h63l4 19 +c27 135 128 211 273 211c56 0 111 -14 135 -28z" /> + <glyph glyph-name="f_l" unicode="fl" horiz-adv-x="564" +d="M174 0h-144l72 380h-64l21 110h63l4 21c11 56 40 117 98 159c47 35 110 51 183 51c56 0 133 -14 177 -41l-128 -680h-144l113 598c-10 5 -26 10 -55 10c-57 0 -92 -45 -101 -100l-3 -18h84l-21 -110h-83z" /> + <glyph glyph-name=".notdef" horiz-adv-x="500" +d="M0 0v700h500v-700h-500zM250 395l170 255h-340zM280 350l170 -255v510zM80 50h340l-170 255zM50 605v-510l170 255z" /> + <glyph glyph-name="space" unicode=" " horiz-adv-x="184" + /> + <glyph glyph-name="exclam" unicode="!" horiz-adv-x="269" +d="M185 221h-112l65 453h155zM94 -11c-48 0 -80 35 -80 82c0 53 40 100 97 100c48 0 82 -35 82 -84c0 -57 -41 -98 -99 -98z" /> + <glyph glyph-name="quotedbl" unicode="&#x22;" horiz-adv-x="387" +d="M115 692h134l-74 -278h-91zM307 692h134l-74 -278h-91z" /> + <glyph glyph-name="numbersign" unicode="#" horiz-adv-x="541" +d="M222 269h87l36 115h-87zM137 0h-89l56 179h-82l15 90h96l38 115h-85l14 90h98l56 176h87l-56 -176h88l56 176h88l-56 -176h81l-15 -90h-94l-36 -115h83l-15 -90h-98l-55 -179h-89l56 179h-87z" /> + <glyph glyph-name="dollar" unicode="$" horiz-adv-x="541" +d="M250 -87h-95l18 95c-61 3 -126 30 -156 53l46 109c38 -28 89 -50 158 -50c60 0 103 27 103 70c0 34 -23 58 -85 87c-77 40 -145 90 -145 172c0 100 80 178 202 191l18 89h94l-17 -88c56 -3 104 -20 130 -37l-46 -107c-25 15 -71 36 -136 36c-57 0 -89 -29 -89 -63 +c0 -31 27 -52 100 -88c79 -39 131 -92 131 -171c0 -122 -99 -189 -213 -202z" /> + <glyph glyph-name="percent" unicode="%" horiz-adv-x="869" +d="M276 661c90 0 143 -63 143 -149c0 -143 -91 -252 -209 -252c-86 0 -148 57 -148 154c0 130 85 247 214 247zM260 578c-57 0 -88 -106 -88 -167c0 -39 15 -68 49 -68c60 0 88 113 88 171c0 34 -13 64 -49 64zM248 -11h-86l483 671h85zM691 392c90 0 143 -63 143 -149 +c0 -143 -91 -252 -209 -252c-86 0 -148 57 -148 154c0 130 85 247 214 247zM675 309c-57 0 -88 -106 -88 -167c0 -38 15 -68 49 -68c60 0 88 113 88 171c0 34 -13 64 -49 64z" /> + <glyph glyph-name="ampersand" unicode="&#x26;" horiz-adv-x="666" +d="M610 0h-170c-14 15 -24 30 -36 46c-43 -32 -99 -57 -181 -57c-126 0 -209 69 -209 178c0 102 76 167 163 208l1 3c-21 35 -37 73 -37 114c0 109 86 193 211 193c101 0 171 -60 171 -150c0 -78 -59 -136 -167 -186v-3c27 -42 63 -92 90 -129c43 49 72 111 92 171h133 +c-36 -103 -83 -190 -159 -262c26 -38 60 -82 98 -126zM264 97c36 0 62 14 82 32c-34 44 -80 108 -119 169c-30 -22 -66 -56 -66 -106c0 -52 35 -95 103 -95zM339 592c-39 0 -69 -37 -69 -85c0 -31 11 -59 30 -84c52 24 95 61 95 111c0 31 -17 58 -56 58z" /> + <glyph glyph-name="quoteright" unicode="&#x2019;" horiz-adv-x="255" +d="M168 683l143 9c-45 -98 -101 -196 -157 -271l-95 -8c43 85 82 182 109 270z" /> + <glyph glyph-name="parenleft" unicode="(" horiz-adv-x="314" +d="M261 690h107c-103 -128 -191 -318 -191 -533c0 -97 8 -176 41 -273h-102c-35 78 -55 171 -55 268c0 232 88 418 200 538z" /> + <glyph glyph-name="parenright" unicode=")" horiz-adv-x="314" +d="M71 -116h-108c102 128 191 319 191 534c0 97 -8 175 -41 272h103c35 -78 54 -171 54 -267c0 -232 -88 -418 -199 -539z" /> + <glyph glyph-name="asterisk" unicode="*" horiz-adv-x="452" +d="M347 685l84 -51l-123 -127l1 -2l165 33l-20 -103l-152 28l-1 -2l95 -123l-95 -51l-40 154l-2 -1l-74 -154l-81 53l122 123l-1 2l-162 -29l20 103l147 -33v2l-91 128l95 50l39 -154h2z" /> + <glyph glyph-name="plus" unicode="+" horiz-adv-x="596" +d="M250 533h97v-219h207v-93h-207v-221h-97v221h-207v93h207v219z" /> + <glyph glyph-name="comma" unicode="," horiz-adv-x="260" +d="M46 -110l-104 -9c44 89 88 193 114 284l156 10c-46 -102 -107 -207 -166 -285z" /> + <glyph glyph-name="hyphen" unicode="-" horiz-adv-x="322" +d="M44 313h259l-20 -101h-259z" /> + <glyph glyph-name="period" unicode="." horiz-adv-x="260" +d="M98 -10c-48 0 -80 35 -80 83c0 55 40 102 97 102c49 0 83 -35 83 -86c0 -58 -41 -99 -100 -99z" /> + <glyph glyph-name="slash" unicode="/" horiz-adv-x="326" +d="M62 -40h-102l348 725h102z" /> + <glyph glyph-name="zero" unicode="0" horiz-adv-x="541" +d="M344 661c139 0 187 -107 187 -223c0 -203 -98 -449 -303 -449c-136 0 -189 103 -189 234c0 205 105 438 305 438zM327 547c-96 0 -146 -234 -146 -329c0 -49 7 -115 64 -115c99 0 144 248 144 334c0 44 -7 110 -62 110z" /> + <glyph glyph-name="one" unicode="1" horiz-adv-x="541" +d="M183 0l97 515h-2l-127 -56l-5 112l180 79h118l-123 -650h-138z" /> + <glyph glyph-name="two" unicode="2" horiz-adv-x="541" +d="M442 0h-445l18 93l140 108c130 106 213 182 213 260c0 46 -32 79 -89 79c-58 0 -104 -17 -138 -38l-29 103c52 32 127 56 202 56c131 0 202 -77 202 -177c0 -133 -106 -225 -220 -313l-65 -46v-2h233z" /> + <glyph glyph-name="three" unicode="3" horiz-adv-x="541" +d="M8 33l44 113c26 -14 78 -36 142 -36c81 0 129 40 129 92c0 59 -48 87 -133 87h-25l21 110h23c67 0 144 27 144 86c0 32 -24 56 -80 56c-55 0 -104 -15 -134 -32l-20 108c48 26 117 44 183 44c109 0 203 -50 203 -152c0 -81 -64 -141 -144 -161l-1 -2 +c67 -14 113 -68 113 -143c0 -136 -139 -214 -281 -214c-83 0 -155 20 -184 44z" /> + <glyph glyph-name="four" unicode="4" horiz-adv-x="541" +d="M392 0h-135l30 157h-277l18 97l310 396h177l-72 -382h76l-20 -111h-77zM172 268h136l30 141c9 41 21 86 31 127h-4c-29 -44 -54 -85 -85 -128l-107 -138z" /> + <glyph glyph-name="five" unicode="5" horiz-adv-x="541" +d="M533 650l-25 -123h-229l-31 -101c11 1 17 2 28 2c37 0 94 -11 134 -40c46 -31 72 -83 72 -144c0 -163 -137 -255 -301 -255c-78 0 -143 18 -168 38l37 115c26 -16 78 -32 133 -32c71 0 149 38 149 108c0 58 -36 100 -161 100c-31 0 -54 -2 -80 -4l93 336h349z" /> + <glyph glyph-name="six" unicode="6" horiz-adv-x="541" +d="M513 659l-22 -117c-16 1 -32 0 -54 -2c-119 -11 -197 -76 -230 -153l2 -1c36 32 82 50 134 50c96 0 166 -74 166 -182c0 -139 -107 -265 -260 -265c-146 0 -217 100 -217 228c0 148 71 276 161 347c73 58 169 90 266 95c25 2 40 1 54 0zM254 100c69 0 106 78 106 139 +c0 57 -32 90 -80 90c-40 0 -74 -25 -94 -60c-6 -10 -10 -23 -11 -33c-2 -13 -2 -24 -2 -35c0 -56 29 -101 81 -101z" /> + <glyph glyph-name="seven" unicode="7" horiz-adv-x="541" +d="M121 650h441l-18 -96c-119 -184 -238 -369 -357 -554h-160c118 175 236 350 353 525v2h-283z" /> + <glyph glyph-name="eight" unicode="8" horiz-adv-x="541" +d="M334 661c105 0 192 -55 192 -158c0 -70 -47 -122 -117 -155v-2c58 -33 89 -89 89 -144c0 -142 -136 -213 -262 -213c-138 1 -218 71 -218 167c0 92 64 154 139 184l1 3c-44 33 -65 76 -65 122c0 121 114 196 241 196zM251 94h2c47 0 94 35 94 94c0 52 -36 82 -84 99 +c-49 -13 -94 -53 -94 -112c0 -45 30 -81 82 -81zM316 556c-47 0 -85 -39 -85 -83c0 -41 33 -67 76 -82c41 14 80 49 80 96c0 39 -25 69 -71 69z" /> + <glyph glyph-name="nine" unicode="9" horiz-adv-x="541" +d="M48 -9l17 118c17 -2 34 -1 61 0c45 4 90 17 128 41c48 29 84 71 106 119l-2 2c-32 -32 -80 -47 -124 -47c-103 0 -173 71 -173 176c0 141 117 261 264 261c144 0 211 -98 211 -227c-1 -154 -79 -286 -166 -356c-67 -53 -159 -83 -247 -87c-38 -2 -57 -1 -75 0zM312 550 +c-57 0 -104 -67 -104 -132c0 -53 31 -87 76 -87c39 0 71 20 87 43c6 7 11 17 14 31c4 13 6 35 6 52c0 52 -25 93 -79 93z" /> + <glyph glyph-name="colon" unicode=":" horiz-adv-x="260" +d="M159 312c-48 0 -80 35 -80 82c0 54 40 101 97 101c48 0 82 -35 82 -85c0 -57 -41 -98 -99 -98zM98 -11c-48 0 -80 35 -80 82c0 54 40 101 97 101c48 0 82 -35 82 -85c0 -57 -41 -98 -99 -98z" /> + <glyph glyph-name="semicolon" unicode=";" horiz-adv-x="260" +d="M46 -110l-104 -9c45 89 88 193 114 284l155 10c-45 -102 -106 -207 -165 -285zM164 312c-48 0 -80 35 -80 82c0 54 40 101 97 101c48 0 82 -35 82 -85c0 -57 -41 -98 -99 -98z" /> + <glyph glyph-name="less" unicode="&#x3c;" horiz-adv-x="596" +d="M52 223v86l476 223v-106l-359 -159v-2l359 -159v-106z" /> + <glyph glyph-name="equal" unicode="=" horiz-adv-x="596" +d="M553 325h-511v93h511v-93zM553 117h-511v93h511v-93z" /> + <glyph glyph-name="greater" unicode="&#x3e;" horiz-adv-x="596" +d="M552 312v-92l-476 -220v105l367 160v2l-367 160v105z" /> + <glyph glyph-name="question" unicode="?" horiz-adv-x="437" +d="M269 219h-140c1 9 2 18 3 26c8 54 35 107 91 166c39 42 80 76 80 111c0 26 -13 47 -58 48c-45 0 -81 -11 -109 -28l-19 101c37 22 94 43 169 43c96 0 165 -54 165 -136c0 -80 -53 -131 -109 -189c-39 -39 -59 -73 -68 -118c-2 -7 -3 -15 -5 -24zM165 -11 +c-47 0 -79 35 -79 82c0 53 40 100 97 100c48 0 82 -35 82 -84c0 -57 -41 -98 -100 -98z" /> + <glyph glyph-name="at" unicode="@" horiz-adv-x="749" +d="M431 250l15 95c-9 2 -19 4 -31 4c-66 0 -118 -65 -118 -142c0 -38 17 -62 49 -62c37 0 76 47 85 105zM516 -11l18 -57c-60 -28 -112 -36 -182 -36c-168 0 -313 119 -313 315c0 204 149 381 374 381c176 0 302 -121 302 -289c0 -147 -82 -239 -190 -239 +c-47 0 -80 25 -85 77h-3c-31 -50 -75 -77 -129 -77c-64 0 -112 49 -112 131c0 123 91 233 234 233c45 0 94 -11 119 -24l-30 -186c-9 -59 -3 -86 26 -87c42 -2 96 53 96 169c0 131 -84 231 -238 231s-288 -119 -288 -311c0 -168 106 -262 257 -262c49 0 104 11 144 31z" /> + <glyph glyph-name="A" unicode="A" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132z" /> + <glyph glyph-name="B" unicode="B" horiz-adv-x="582" +d="M20 7l124 656c48 10 111 16 177 16c71 0 122 -9 167 -35c45 -23 78 -67 78 -124c0 -85 -62 -139 -136 -160v-3c65 -20 106 -73 106 -147c0 -73 -39 -125 -92 -160c-57 -39 -142 -55 -254 -55c-76 0 -137 5 -170 12zM268 563l-30 -157h48c79 0 133 34 133 92 +c0 48 -39 69 -94 69c-25 0 -46 -2 -57 -4zM216 301l-36 -191c17 -2 34 -2 55 -2c78 0 149 31 149 106c0 67 -56 87 -123 87h-45z" /> + <glyph glyph-name="C" unicode="C" horiz-adv-x="583" +d="M512 135l12 -116c-36 -16 -96 -29 -177 -29c-179 0 -298 109 -298 286c0 151 68 269 170 337c70 48 152 71 247 71c73 0 128 -17 148 -28l-40 -117c-19 9 -64 22 -122 22s-113 -18 -154 -52c-56 -47 -93 -123 -93 -217c0 -107 61 -179 179 -179c48 0 95 8 128 22z" /> + <glyph glyph-name="D" unicode="D" horiz-adv-x="681" +d="M20 8l125 656c58 10 121 15 187 15c105 0 188 -24 245 -73c55 -45 89 -111 89 -211c0 -131 -55 -243 -138 -310c-78 -63 -177 -90 -323 -90c-81 0 -151 7 -185 13zM271 559l-85 -444c17 -2 38 -3 63 -3c78 0 147 27 191 78c46 52 70 123 70 204c0 107 -59 170 -178 170 +c-25 0 -46 -2 -61 -5z" /> + <glyph glyph-name="E" unicode="E" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241z" /> + <glyph glyph-name="F" unicode="F" horiz-adv-x="511" +d="M19 0l128 674h395l-24 -123h-250l-31 -158h235l-24 -121h-234l-51 -272h-144z" /> + <glyph glyph-name="G" unicode="G" horiz-adv-x="673" +d="M643 384l-68 -353c-51 -17 -133 -38 -218 -38c-92 0 -169 24 -224 74c-54 47 -85 122 -85 208c0 126 51 235 137 308c76 63 181 98 298 98c87 0 152 -17 178 -30l-43 -121c-30 14 -83 27 -143 27c-67 0 -126 -19 -171 -54c-59 -46 -98 -126 -98 -218 +c0 -113 67 -170 173 -170c34 0 57 5 74 12l27 142h-105l23 115h245z" /> + <glyph glyph-name="H" unicode="H" horiz-adv-x="666" +d="M147 674h144l-50 -263h244l50 263h145l-128 -674h-144l53 283h-245l-53 -283h-144z" /> + <glyph glyph-name="I" unicode="I" horiz-adv-x="274" +d="M144 674h144l-128 -674h-144z" /> + <glyph glyph-name="J" unicode="J" horiz-adv-x="399" +d="M194 247l81 427h144l-85 -445c-33 -171 -106 -240 -259 -240c-42 0 -89 7 -111 16l28 123c21 -7 48 -12 80 -12c63 0 103 31 122 131z" /> + <glyph glyph-name="K" unicode="K" horiz-adv-x="590" +d="M19 0l128 674h142l-57 -301h3c20 29 41 53 60 77l187 224h180l-273 -291l156 -383h-156l-113 293l-72 -68l-43 -225h-142z" /> + <glyph glyph-name="L" unicode="L" horiz-adv-x="487" +d="M19 0l128 674h144l-104 -548h259l-24 -126h-403z" /> + <glyph glyph-name="M" unicode="M" horiz-adv-x="821" +d="M722 0h-140l41 278c11 73 26 166 45 263h-3c-37 -87 -79 -180 -116 -254l-138 -276h-112l-24 273c-6 74 -11 167 -15 257h-2c-19 -89 -39 -190 -56 -263l-67 -278h-132l169 674h193l21 -256c4 -63 11 -140 12 -215h4c26 75 62 154 91 215l125 256h195z" /> + <glyph glyph-name="N" unicode="N" horiz-adv-x="666" +d="M153 0h-134l128 674h169l89 -257c27 -86 45 -156 61 -230h3c3 69 13 143 31 242l46 245h135l-128 -674h-149l-94 269c-30 91 -48 153 -66 235h-3c-7 -66 -23 -162 -43 -268z" /> + <glyph glyph-name="O" unicode="O" horiz-adv-x="705" +d="M418 685c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96zM401 565c-45 0 -85 -19 -116 -51c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166c43 0 82 18 113 49 +c53 53 82 164 82 242c0 84 -30 165 -136 165z" /> + <glyph glyph-name="P" unicode="P" horiz-adv-x="559" +d="M19 0l125 662c44 11 111 17 176 17c61 0 130 -10 179 -44c46 -31 73 -79 73 -144c0 -84 -39 -149 -91 -189c-55 -43 -134 -63 -216 -63c-24 0 -44 3 -59 4l-46 -243h-141zM266 560l-38 -199c15 -3 31 -5 56 -5c86 0 143 55 143 123c0 64 -47 85 -102 85 +c-27 0 -47 -2 -59 -4z" /> + <glyph glyph-name="Q" unicode="Q" horiz-adv-x="705" +d="M632 -7l-50 -114c-92 27 -192 66 -252 95c-32 14 -41 17 -48 17c-131 9 -234 111 -234 281c0 114 41 232 117 310c67 67 158 103 254 103c182 0 271 -131 271 -281c0 -114 -41 -236 -113 -309c-27 -26 -61 -50 -99 -65v-3c41 -11 97 -24 154 -34zM402 565 +c-46 0 -85 -19 -116 -50c-55 -55 -85 -165 -85 -243c0 -95 44 -164 140 -164c44 0 82 19 113 49c52 53 83 165 83 246c0 76 -29 162 -135 162z" /> + <glyph glyph-name="R" unicode="R" horiz-adv-x="583" +d="M20 0l126 662c45 11 113 17 180 17c64 0 130 -9 177 -39c44 -26 75 -69 75 -131c0 -100 -66 -163 -153 -191v-3c40 -18 58 -62 64 -123c9 -76 14 -164 26 -192h-148c-6 18 -13 76 -19 159c-7 82 -35 107 -92 107h-44l-50 -266h-142zM269 561l-35 -187h59 +c78 0 135 47 135 113c0 55 -45 79 -103 79c-27 0 -44 -2 -56 -5z" /> + <glyph glyph-name="S" unicode="S" horiz-adv-x="510" +d="M0 37l48 119c40 -24 97 -43 159 -43c56 0 107 26 107 78c0 39 -29 63 -91 96c-71 38 -139 91 -139 178c0 137 118 219 265 219c82 0 130 -18 159 -33l-45 -120c-22 12 -70 30 -125 29c-68 0 -103 -33 -103 -70c0 -39 41 -64 98 -96c82 -42 134 -97 134 -178 +c0 -150 -124 -227 -274 -227c-94 1 -161 25 -193 48z" /> + <glyph glyph-name="T" unicode="T" horiz-adv-x="527" +d="M141 0l104 548h-178l25 126h501l-24 -126h-180l-104 -548h-144z" /> + <glyph glyph-name="U" unicode="U" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c76 0 125 50 149 175l74 389h144l-73 -383c-39 -204 -128 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94z" /> + <glyph glyph-name="V" unicode="V" horiz-adv-x="611" +d="M331 0h-167l-84 674h149l30 -321c7 -72 12 -137 16 -207h2c25 66 57 138 90 208l151 320h161z" /> + <glyph glyph-name="W" unicode="W" horiz-adv-x="864" +d="M278 0h-160l-26 674h146v-300c0 -81 -2 -158 -4 -218h2c24 66 48 134 80 216l120 302h158l-2 -301c0 -81 -3 -148 -6 -214h2c23 70 48 143 74 215l117 300h151l-297 -674h-156l-5 277c-1 79 1 147 6 223h-2c-25 -72 -48 -144 -82 -227z" /> + <glyph glyph-name="X" unicode="X" horiz-adv-x="569" +d="M517 0h-153l-46 136c-13 41 -24 73 -36 115h-2c-22 -38 -40 -72 -68 -120l-80 -131h-173l252 344l-118 330h152l41 -129c12 -42 21 -72 31 -112h3c25 46 43 78 64 114l78 127h172l-246 -331z" /> + <glyph glyph-name="Y" unicode="Y" horiz-adv-x="570" +d="M295 0h-144l52 275l-132 399h154l43 -171c13 -56 20 -88 26 -122h2c20 36 41 74 69 123l101 170h172l-291 -396z" /> + <glyph glyph-name="Z" unicode="Z" horiz-adv-x="553" +d="M-25 0l15 83l391 464v3h-274l25 124h467l-17 -89l-384 -458v-3h302l-24 -124h-501z" /> + <glyph glyph-name="bracketleft" unicode="[" horiz-adv-x="314" +d="M201 -112h-201l152 798h201l-16 -83h-93l-121 -632h93z" /> + <glyph glyph-name="backslash" unicode="\" horiz-adv-x="337" +d="M313 -40h-100l-161 725h99z" /> + <glyph glyph-name="bracketright" unicode="]" horiz-adv-x="314" +d="M126 686h201l-152 -798h-201l16 83h93l120 632h-93z" /> + <glyph glyph-name="asciicircum" unicode="^" horiz-adv-x="596" +d="M544 177h-108l-145 356h-3l-146 -356h-106l208 473h92z" /> + <glyph glyph-name="underscore" unicode="_" horiz-adv-x="500" +d="M-54 -75h500l-10 -50h-500z" /> + <glyph glyph-name="quoteleft" unicode="&#x2018;" horiz-adv-x="255" +d="M206 422l-143 -9c45 98 101 195 157 271l95 8c-43 -85 -83 -182 -109 -270z" /> + <glyph glyph-name="a" unicode="a" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169z" /> + <glyph glyph-name="b" unicode="b" horiz-adv-x="560" +d="M146 710h145l-58 -280h2c36 43 91 70 151 70c102 0 148 -84 148 -171c0 -158 -104 -340 -324 -340c-116 0 -174 50 -174 137c0 30 5 60 11 89zM199 246l-9 -40c-3 -16 -6 -34 -5 -54c1 -35 21 -54 55 -54c84 0 143 116 143 201c0 48 -20 84 -64 84 +c-52 0 -103 -52 -120 -137z" /> + <glyph glyph-name="c" unicode="c" horiz-adv-x="435" +d="M373 125l1 -109c-31 -15 -81 -26 -139 -26c-121 0 -206 74 -206 200c0 174 133 310 319 310c42 0 78 -8 100 -16l-36 -111c-17 7 -37 12 -66 12c-102 0 -166 -87 -166 -179c0 -67 43 -101 96 -101c42 0 72 10 97 20z" /> + <glyph glyph-name="d" unicode="d" horiz-adv-x="560" +d="M444 710h143l-99 -520c-12 -62 -21 -132 -23 -190h-132l7 79h-2c-43 -65 -103 -90 -161 -90c-83 0 -151 66 -151 185c0 170 123 327 308 327c20 0 46 -4 67 -12zM355 243l26 131c-12 10 -34 17 -57 17c-87 0 -148 -100 -148 -194c0 -59 26 -92 67 -92c42 0 93 44 112 138 +z" /> + <glyph glyph-name="e" unicode="e" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60z" /> + <glyph glyph-name="f" unicode="f" horiz-adv-x="329" +d="M173 0h-143l72 380h-64l21 110h64l4 25c10 58 33 119 82 160c39 33 91 46 139 46c35 0 61 -5 76 -12l-25 -114c-12 5 -27 8 -46 8c-47 0 -75 -40 -84 -89l-5 -24h97l-21 -110h-96z" /> + <glyph glyph-name="g" unicode="g" horiz-adv-x="558" +d="M11 -178l34 110c27 -16 86 -27 128 -27c72 0 125 32 146 130l8 42h-2c-38 -50 -82 -73 -140 -73c-97 0 -156 79 -157 175c-1 161 115 321 328 321c69 0 129 -13 181 -34l-74 -403c-17 -90 -45 -170 -103 -217c-53 -42 -124 -55 -189 -55c-66 0 -126 12 -160 31zM356 250 +l25 131c-11 5 -32 9 -52 9c-87 0 -149 -97 -149 -189c0 -50 22 -86 66 -86c47 0 94 53 110 135z" /> + <glyph glyph-name="h" unicode="h" horiz-adv-x="563" +d="M157 0h-144l135 710h144l-55 -284h2c41 45 92 74 156 74c76 0 123 -48 123 -132c0 -23 -4 -60 -9 -88l-53 -280h-144l51 268c4 19 6 40 6 60c0 33 -13 56 -49 56c-51 0 -102 -62 -120 -160z" /> + <glyph glyph-name="i" unicode="i" horiz-adv-x="265" +d="M157 0h-144l93 489h144zM197 550h-2c-40 0 -69 28 -69 70c0 49 39 82 83 82c43 0 73 -28 73 -71c0 -51 -39 -81 -85 -81z" /> + <glyph glyph-name="j" unicode="j" horiz-adv-x="275" +d="M121 489h143l-89 -473c-15 -84 -36 -137 -68 -173s-83 -52 -134 -52c-22 0 -46 2 -68 8l16 108c10 -1 20 -2 32 -2c33 0 61 17 77 105zM205 550c-40 0 -69 28 -69 70c0 49 39 82 83 82c42 0 72 -28 72 -71c0 -51 -39 -81 -86 -81z" /> + <glyph glyph-name="k" unicode="k" horiz-adv-x="530" +d="M156 0h-143l135 710h143l-81 -425h2c15 19 30 38 44 55l125 149h178l-208 -202l136 -287h-161l-86 209l-54 -52z" /> + <glyph glyph-name="l" unicode="l" horiz-adv-x="265" +d="M157 0h-144l136 710h144z" /> + <glyph glyph-name="m" unicode="m" horiz-adv-x="831" +d="M152 0h-139l61 330c11 62 19 115 25 159h123l-9 -79h2c45 63 105 91 168 91c78 0 112 -50 116 -93c44 63 105 93 169 93c75 0 119 -49 119 -132c0 -20 -4 -59 -8 -84l-53 -285h-140l49 268c4 19 7 40 7 59c0 34 -15 58 -48 58c-48 0 -96 -64 -115 -163l-41 -222h-139 +l51 269c3 20 6 39 6 56c0 34 -11 60 -46 60c-49 0 -101 -68 -118 -165z" /> + <glyph glyph-name="n" unicode="n" horiz-adv-x="563" +d="M156 0h-144l62 330c13 62 20 115 27 159h127l-9 -81h2c46 63 106 92 171 92c80 0 126 -49 126 -134c0 -22 -4 -58 -8 -82l-54 -284h-145l52 271c3 17 5 36 5 54c0 35 -12 59 -49 59c-47 0 -102 -59 -122 -167z" /> + <glyph glyph-name="o" unicode="o" horiz-adv-x="559" +d="M322 501c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309zM303 391c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95c77 0 122 116 122 199c0 45 -20 93 -77 93z" /> + <glyph glyph-name="p" unicode="p" horiz-adv-x="562" +d="M117 -198h-144l95 498c11 58 22 143 28 193h129l-9 -75h2c40 53 98 82 157 82c106 0 158 -85 158 -186c0 -169 -113 -325 -284 -325c-39 0 -73 10 -90 20h-3zM197 227l-18 -106c16 -14 37 -23 66 -23c77 0 137 109 137 205c0 39 -17 80 -63 80c-54 0 -104 -60 -122 -156z +" /> + <glyph glyph-name="q" unicode="q" horiz-adv-x="560" +d="M415 -198h-144l59 269h-2c-37 -55 -95 -82 -151 -82c-90 0 -151 74 -151 185c0 156 108 326 333 326c71 0 133 -16 181 -29zM356 247l25 133c-13 6 -32 10 -56 10c-88 0 -149 -106 -149 -198c0 -57 25 -87 61 -87c50 0 102 54 119 142z" /> + <glyph glyph-name="r" unicode="r" horiz-adv-x="370" +d="M157 0h-144l55 291c14 74 20 156 25 198h125c-3 -33 -5 -66 -9 -100h3c35 65 89 111 156 111c9 0 18 0 27 -1l-28 -140c-7 1 -15 1 -23 1c-92 0 -135 -82 -153 -178z" /> + <glyph glyph-name="s" unicode="s" horiz-adv-x="416" +d="M-4 28l35 101c28 -14 80 -34 127 -34c41 0 62 20 62 44s-16 41 -61 63c-56 28 -103 69 -103 130c0 102 89 169 215 169c57 0 102 -12 126 -25l-35 -102c-20 9 -55 21 -97 21c-39 0 -64 -16 -64 -43c0 -20 20 -37 59 -56c54 -27 110 -66 110 -134 +c0 -112 -95 -173 -225 -172c-62 1 -120 17 -149 38z" /> + <glyph glyph-name="t" unicode="t" horiz-adv-x="348" +d="M141 582l148 40l-25 -132h105l-22 -110h-104l-33 -166c-4 -19 -8 -45 -8 -62c0 -24 10 -41 42 -41c12 0 27 0 39 2l-16 -113c-19 -7 -55 -11 -85 -11c-87 0 -128 44 -128 106c0 26 3 53 11 91l37 194h-62l20 110h63z" /> + <glyph glyph-name="u" unicode="u" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156z" /> + <glyph glyph-name="v" unicode="v" horiz-adv-x="512" +d="M46 489h148l23 -214c5 -60 10 -97 13 -133h3c13 35 28 72 55 132l98 215h161l-272 -489h-147z" /> + <glyph glyph-name="w" unicode="w" horiz-adv-x="733" +d="M51 489h146l1 -207c0 -56 -2 -102 -5 -156h2c17 52 39 101 60 151l96 212h118l12 -205c2 -58 4 -105 1 -158h3c16 54 33 103 53 160l84 203h145l-238 -489h-135l-14 170c-4 52 -4 99 -4 157h-2c-26 -69 -38 -105 -58 -150l-83 -177h-136z" /> + <glyph glyph-name="x" unicode="x" horiz-adv-x="498" +d="M49 489h158l29 -73c15 -39 24 -64 31 -82h3c18 26 31 48 52 78l54 77h165l-206 -238l114 -251h-158l-31 78c-14 35 -22 60 -31 89h-3c-14 -23 -27 -48 -49 -82l-59 -85h-166l212 253z" /> + <glyph glyph-name="y" unicode="y" horiz-adv-x="497" +d="M44 489h151l30 -213c7 -51 12 -86 16 -117h2c11 30 22 61 43 114l89 216h152l-175 -352c-65 -130 -123 -218 -188 -279c-57 -54 -125 -79 -157 -84l-32 124c23 7 55 19 83 38c33 23 61 52 80 85c4 8 4 14 2 24z" /> + <glyph glyph-name="z" unicode="z" horiz-adv-x="450" +d="M-26 0l16 87l159 170c41 43 72 73 119 113l1 2h-209l23 117h382l-17 -91l-155 -166c-44 -46 -75 -77 -119 -113l-1 -2h230l-23 -117h-406z" /> + <glyph glyph-name="braceleft" unicode="{" horiz-adv-x="314" +d="M31 249l14 77c68 3 82 38 88 68c9 49 10 106 19 157c18 94 80 135 172 135h37l-16 -84h-18c-43 0 -64 -27 -73 -71c-8 -36 -8 -75 -16 -126c-11 -76 -45 -105 -103 -117v-2c40 -9 66 -35 66 -74c0 -29 -10 -65 -21 -101c-10 -35 -21 -69 -21 -93c0 -29 16 -46 48 -46h18 +l-15 -84h-30c-79 0 -131 28 -131 106c0 35 13 75 23 111c11 37 23 71 23 95c0 29 -20 48 -64 49z" /> + <glyph glyph-name="bar" unicode="|" horiz-adv-x="240" +d="M87 750h98v-1000h-98v1000z" /> + <glyph glyph-name="braceright" unicode="}" horiz-adv-x="314" +d="M296 325l-14 -77c-68 -3 -82 -38 -88 -68c-9 -49 -10 -106 -19 -157c-18 -94 -80 -135 -172 -135h-37l16 84h18c43 0 64 27 73 72c8 36 8 74 16 125c11 76 45 105 103 117v2c-40 9 -66 35 -66 74c0 29 12 65 22 101c10 35 21 69 21 93c0 29 -16 46 -48 46h-18l15 84h30 +c79 0 131 -28 131 -106c0 -35 -11 -74 -23 -111c-12 -36 -24 -70 -24 -95c0 -29 20 -48 64 -49z" /> + <glyph glyph-name="asciitilde" unicode="~" horiz-adv-x="596" +d="M143 193h-95c-1 133 58 185 139 185c47 0 84 -16 138 -47c43 -25 70 -40 94 -40s39 21 41 81h95c6 -142 -57 -187 -133 -187c-48 0 -92 20 -146 53c-25 14 -61 36 -87 36c-30 0 -43 -33 -46 -81z" /> + <glyph glyph-name="exclamdown" unicode="&#xa1;" horiz-adv-x="269" +d="M128 -191h-155l109 452h111zM172 494c48 0 80 -35 80 -82c0 -53 -40 -100 -97 -100c-48 0 -82 35 -82 84c0 57 41 98 99 98z" /> + <glyph glyph-name="cent" unicode="&#xa2;" horiz-adv-x="541" +d="M318 -12h-95l19 99c-52 9 -91 33 -118 67c-26 33 -40 78 -40 131c0 157 114 268 252 293l18 95h94l-17 -91c27 -1 65 -8 86 -19l-42 -109c-21 10 -47 17 -85 17c-85 0 -152 -71 -152 -167c0 -69 46 -108 109 -108c35 0 65 9 91 19l6 -107c-31 -15 -70 -23 -109 -24z" /> + <glyph glyph-name="sterling" unicode="&#xa3;" horiz-adv-x="541" +d="M459 0h-445l14 81c51 21 105 73 125 126c8 19 10 40 9 62h-94l20 103h73c1 36 4 73 13 109c28 109 109 180 236 180c52 0 90 -13 108 -25l-38 -110c-20 11 -44 16 -75 16c-58 0 -90 -37 -101 -88c-5 -28 -6 -55 -5 -82h137l-20 -103h-121c-2 -20 -6 -38 -14 -59 +c-11 -33 -33 -65 -64 -86v-2h261z" /> + <glyph glyph-name="fraction" unicode="&#x2044;" horiz-adv-x="143" +d="M-115 -11h-86l490 672h86z" /> + <glyph glyph-name="yen" unicode="&#xa5;" horiz-adv-x="541" +d="M284 0h-134l30 160h-150l14 71h149l12 64h-150l14 71h115l-106 284h150l37 -160c9 -40 17 -74 23 -109h3c18 33 38 71 62 110l99 159h159l-220 -284h114l-14 -71h-152l-11 -64h152l-14 -71h-151z" /> + <glyph glyph-name="florin" unicode="&#x192;" horiz-adv-x="541" +d="M117 307l15 103h89l8 34c17 69 64 217 233 217c34 0 62 -7 79 -18l-36 -103c-14 7 -30 10 -49 10c-43 0 -72 -37 -86 -97l-10 -43h102l-15 -103h-112l-44 -186c-28 -116 -80 -213 -214 -212c-42 0 -72 10 -87 19l30 102c13 -6 31 -10 50 -10c39 0 66 31 93 146l33 141 +h-79z" /> + <glyph glyph-name="section" unicode="&#xa7;" horiz-adv-x="556" +d="M181 335c0 -29 18 -53 74 -75c35 -14 79 -32 98 -44c23 14 43 38 43 64c0 32 -22 55 -56 72c-36 16 -85 35 -110 48c-24 -10 -49 -34 -49 -65zM529 649l-35 -88c-30 16 -77 31 -131 31s-90 -23 -90 -56c0 -28 27 -44 94 -68c85 -32 153 -73 153 -155 +c0 -68 -46 -116 -97 -146c19 -19 28 -47 28 -72c0 -123 -121 -172 -230 -172c-60 0 -133 11 -186 49l39 90c33 -23 88 -45 146 -45c57 0 94 22 94 56c0 28 -25 48 -94 75c-77 30 -162 73 -162 152c0 64 45 118 111 148c-20 23 -26 46 -26 68c0 114 118 169 231 169 +c59 0 117 -13 155 -36z" /> + <glyph glyph-name="currency" unicode="&#xa4;" horiz-adv-x="541" +d="M281 550c47 0 86 -13 113 -36l78 84l66 -69l-87 -79c16 -24 33 -60 33 -114c0 -57 -18 -95 -36 -120l86 -81l-65 -67l-75 87c-29 -25 -74 -39 -115 -39c-42 0 -86 14 -113 38l-73 -86l-66 67l85 80c-18 24 -37 62 -37 118c0 57 18 93 35 117l-87 79l67 69l76 -84 +c29 23 70 36 115 36zM278 452c-52 0 -96 -47 -96 -118c0 -81 53 -120 98 -120c46 0 97 38 97 121c0 67 -42 117 -99 117z" /> + <glyph glyph-name="quotesingle" unicode="'" horiz-adv-x="198" +d="M117 692h134l-74 -277h-91z" /> + <glyph glyph-name="quotedblleft" unicode="&#x201c;" horiz-adv-x="448" +d="M205 422l-143 -9c45 98 101 195 157 271l95 8c-43 -85 -83 -182 -109 -270zM401 422l-143 -9c44 98 100 195 157 271l95 8c-43 -85 -83 -182 -109 -270z" /> + <glyph glyph-name="guillemotleft" unicode="&#xab;" horiz-adv-x="461" +d="M267 443l-144 -193l96 -188h-100l-97 190l135 191h110zM460 443l-144 -193l96 -188h-100l-97 190l135 191h110z" /> + <glyph glyph-name="guilsinglleft" unicode="&#x2039;" horiz-adv-x="268" +d="M267 443l-144 -193l96 -188h-100l-97 190l135 191h110z" /> + <glyph glyph-name="guilsinglright" unicode="&#x203a;" horiz-adv-x="267" +d="M149 256l-96 187h100l97 -191l-135 -190h-110z" /> + <glyph glyph-name="fi" unicode="&#xfb01;" horiz-adv-x="564" +d="M174 0h-143l71 380h-63l21 110h63l4 19c25 136 128 211 273 211c56 0 111 -14 135 -28l-38 -111c-24 10 -62 22 -107 22c-84 0 -113 -46 -121 -94l-3 -19h283l-93 -490h-144l71 380h-137z" /> + <glyph glyph-name="fl" unicode="&#xfb02;" horiz-adv-x="564" +d="M174 0h-144l72 380h-64l21 110h63l4 21c11 56 40 117 98 159c47 35 110 51 183 51c56 0 133 -14 177 -41l-128 -680h-144l113 598c-10 5 -26 10 -55 10c-57 0 -92 -45 -101 -100l-3 -18h84l-21 -110h-83z" /> + <glyph glyph-name="endash" unicode="&#x2013;" horiz-adv-x="500" +d="M40 301h440l-18 -94h-440z" /> + <glyph glyph-name="dagger" unicode="&#x2020;" horiz-adv-x="519" +d="M273 674h135l-52 -201l172 12l-22 -116l-167 12l-70 -431h-135l96 431l-172 -12l22 116l167 -12z" /> + <glyph glyph-name="daggerdbl" unicode="&#x2021;" horiz-adv-x="519" +d="M275 674h132l-47 -185l170 12l-22 -116l-166 12l-30 -162l170 12l-22 -116l-166 12l-26 -193h-132l48 193l-170 -12l22 116l165 -12l31 162l-170 -12l22 116l166 -12z" /> + <glyph glyph-name="periodcentered" unicode="&#xb7;" horiz-adv-x="260" +d="M120 166c-48 0 -80 35 -80 83c0 55 40 102 97 102c49 0 83 -35 83 -86c0 -58 -41 -99 -100 -99z" /> + <glyph glyph-name="paragraph" unicode="&#xb6;" horiz-adv-x="538" +d="M241 -51l-93 -1l60 311c-4 2 -9 3 -13 4c-66 20 -124 75 -124 164c0 159 131 247 329 247c62 0 116 -3 144 -10l-137 -715h-94l122 636h-72z" /> + <glyph glyph-name="bullet" unicode="&#x2022;" horiz-adv-x="336" +d="M169 133c-71 0 -129 56 -129 130c-1 74 58 131 130 131s130 -57 130 -131c0 -73 -57 -130 -131 -130z" /> + <glyph glyph-name="quotesinglbase" unicode="&#x201a;" horiz-adv-x="255" +d="M46 -106l-100 -9c44 89 87 189 113 280l150 10c-46 -102 -105 -203 -163 -281z" /> + <glyph glyph-name="quotedblbase" unicode="&#x201e;" horiz-adv-x="448" +d="M38 -106l-100 -9c45 89 87 189 113 280l150 10c-46 -102 -104 -203 -163 -281zM250 -106l-100 -9c44 89 87 189 113 280l150 10c-46 -102 -105 -203 -163 -281z" /> + <glyph glyph-name="quotedblright" unicode="&#x201d;" horiz-adv-x="448" +d="M167 683l143 9c-45 -98 -100 -196 -157 -271l-95 -8c43 85 83 182 109 270zM363 683l143 9c-45 -98 -101 -196 -157 -271l-95 -8c43 85 83 182 109 270z" /> + <glyph glyph-name="guillemotright" unicode="&#xbb;" horiz-adv-x="460" +d="M149 256l-96 187h100l97 -191l-135 -190h-110zM342 256l-96 187h100l97 -191l-135 -190h-110z" /> + <glyph glyph-name="ellipsis" unicode="&#x2026;" horiz-adv-x="1000" +d="M124 -10c-48 0 -80 35 -80 83c0 55 40 102 97 102c49 0 83 -35 83 -86c0 -58 -41 -99 -100 -99zM458 -10c-48 0 -80 35 -80 83c0 55 40 102 97 102c49 0 83 -35 83 -86c0 -58 -41 -99 -100 -99zM792 -10c-48 0 -80 35 -80 83c0 55 40 102 97 102c49 0 83 -35 83 -86 +c0 -58 -41 -99 -100 -99z" /> + <glyph glyph-name="perthousand" unicode="&#x2030;" horiz-adv-x="1260" +d="M276 661c90 0 143 -63 143 -149c0 -143 -91 -252 -209 -252c-85 0 -147 57 -147 154c0 130 85 247 213 247zM261 578c-57 0 -88 -106 -88 -167c0 -39 15 -68 48 -68c60 0 88 113 88 171c0 34 -13 64 -48 64zM248 -11h-85l482 671h85zM691 392c90 0 143 -63 143 -149 +c0 -143 -91 -252 -209 -252c-86 0 -148 57 -148 154c0 130 85 247 214 247zM675 309c-57 0 -88 -106 -88 -167c0 -38 15 -68 49 -68c60 0 88 113 88 171c0 34 -13 64 -49 64zM1082 392c90 0 143 -63 143 -149c0 -143 -91 -252 -209 -252c-85 0 -147 57 -147 154 +c0 130 85 247 213 247zM1067 309c-57 0 -88 -106 -88 -167c0 -38 15 -68 48 -68c60 0 88 113 88 171c0 34 -13 64 -48 64z" /> + <glyph glyph-name="questiondown" unicode="&#xbf;" horiz-adv-x="437" +d="M171 265h140c-1 -9 -2 -18 -3 -26c-8 -54 -36 -107 -90 -167c-40 -42 -81 -76 -81 -111c0 -26 14 -47 59 -48c44 0 81 10 109 28l19 -101c-37 -23 -94 -43 -169 -43c-97 0 -166 55 -166 137c0 76 48 128 108 189c40 39 60 73 69 117zM276 494c47 0 79 -35 79 -82 +c0 -53 -40 -100 -97 -100c-48 0 -82 35 -82 84c0 57 41 98 100 98z" /> + <glyph glyph-name="grave" unicode="`" +d="M119 700h139l75 -152h-103z" /> + <glyph glyph-name="acute" unicode="&#xb4;" +d="M273 700h142l-130 -152h-106z" /> + <glyph glyph-name="circumflex" unicode="&#x2c6;" +d="M229 700h99l75 -152h-93l-40 79h-2l-58 -79h-102z" /> + <glyph glyph-name="tilde" unicode="&#x2dc;" +d="M194 558h-70c11 80 45 126 96 126c28 0 45 -10 62 -20c15 -10 28 -19 39 -19c16 0 23 10 32 44h69c-13 -87 -46 -123 -98 -123c-27 0 -49 9 -64 19c-14 11 -26 18 -38 18c-13 0 -23 -19 -28 -45z" /> + <glyph glyph-name="macron" unicode="&#xaf;" +d="M154 662h246l-16 -78h-246z" /> + <glyph glyph-name="breve" unicode="&#x2d8;" +d="M151 690h73c2 -31 12 -56 47 -56c40 0 58 28 65 56h75c-13 -78 -61 -130 -146 -130c-93 0 -123 57 -114 130z" /> + <glyph glyph-name="dotaccent" unicode="&#x2d9;" +d="M263 553c-36 0 -67 26 -67 66c0 46 34 77 76 77c41 0 67 -28 67 -67c0 -46 -34 -76 -76 -76z" /> + <glyph glyph-name="dieresis" unicode="&#xa8;" +d="M162 554c-35 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75zM367 554c-36 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75z" /> + <glyph glyph-name="ring" unicode="&#x2da;" +d="M279 735c58 0 107 -32 107 -94c-2 -66 -57 -103 -124 -103c-57 0 -104 34 -106 90c-2 65 51 107 123 107zM272 685c-28 0 -47 -23 -47 -53c0 -23 15 -44 43 -44c30 0 49 23 49 51c0 25 -15 46 -45 46z" /> + <glyph glyph-name="cedilla" unicode="&#xb8;" +d="M122 4h79l-34 -48c35 -9 61 -33 61 -65c0 -73 -70 -98 -126 -98c-33 0 -62 9 -78 21l25 57c16 -10 36 -16 53 -16c18 0 37 8 37 28c0 18 -18 32 -72 36z" /> + <glyph glyph-name="hungarumlaut" unicode="&#x2dd;" +d="M188 700h123l-121 -152h-86zM363 700h123l-120 -152h-87z" /> + <glyph glyph-name="ogonek" unicode="&#x2db;" +d="M126 1h83c-24 -26 -45 -61 -45 -87c0 -24 15 -39 41 -39c19 0 37 5 47 9l9 -71c-29 -22 -69 -32 -105 -32c-61 0 -97 32 -97 86c0 53 41 106 67 134z" /> + <glyph glyph-name="caron" unicode="&#x2c7;" +d="M309 548h-99l-75 152h93l40 -79h2l60 79h101z" /> + <glyph glyph-name="emdash" unicode="&#x2014;" horiz-adv-x="1000" +d="M40 301h940l-18 -94h-940z" /> + <glyph glyph-name="AE" unicode="&#xc6;" horiz-adv-x="845" +d="M106 0h-154l413 674h484l-23 -123h-256l-12 -147h243l-23 -121h-225l-12 -160h254l-23 -123h-378l14 185h-194zM282 304h132l14 165c2 31 5 65 8 98h-4c-17 -33 -36 -70 -53 -99z" /> + <glyph glyph-name="ordfeminine" unicode="&#xaa;" horiz-adv-x="400" +d="M369 268h-96c0 16 0 34 1 51h-1c-29 -40 -68 -58 -111 -58c-57 0 -101 42 -101 118c0 107 70 212 227 212c49 0 98 -12 123 -22l-35 -201c-6 -38 -7 -77 -7 -100zM281 407l17 103c-11 4 -22 6 -35 6c-58 0 -95 -63 -95 -117c0 -34 15 -57 45 -57s58 30 68 65z" /> + <glyph glyph-name="Lslash" unicode="&#x141;" horiz-adv-x="499" +d="M433 0h-403l45 235l-85 -51l21 105l84 52l63 333h144l-45 -233l138 85l-19 -107l-139 -84l-39 -209h259z" /> + <glyph glyph-name="Oslash" unicode="&#xd8;" horiz-adv-x="702" +d="M101 -66l-68 64l72 86c-37 47 -59 109 -59 193c0 121 45 233 122 309c64 63 150 99 242 99c66 0 116 -13 158 -42l73 88l73 -58l-77 -93c31 -42 51 -101 51 -182c1 -120 -45 -235 -118 -310c-63 -62 -152 -99 -243 -99c-61 0 -108 13 -147 38zM207 207l275 333 +c-19 17 -44 26 -80 26c-90 0 -162 -77 -192 -169c-20 -60 -24 -128 -6 -190h3zM531 453l-267 -323c19 -15 42 -22 75 -22c85 0 152 69 183 160c19 56 25 119 12 185h-3z" /> + <glyph glyph-name="OE" unicode="&#x152;" horiz-adv-x="909" +d="M846 123l-22 -123h-356c-16 0 -33 -2 -54 -5c-24 -4 -49 -5 -81 -5c-186 0 -291 122 -291 285c0 223 154 409 411 409c43 0 66 -3 88 -5c28 -3 47 -5 68 -5h327l-23 -123h-258l-26 -144h242l-23 -121h-243l-30 -163h271zM430 118l82 436c-16 6 -38 10 -69 10 +c-149 0 -247 -130 -247 -279c0 -104 62 -175 170 -175c23 0 44 3 64 8z" /> + <glyph glyph-name="ordmasculine" unicode="&#xba;" horiz-adv-x="383" +d="M247 591c89 0 149 -55 149 -139c0 -116 -82 -191 -196 -191c-85 0 -146 58 -146 137c0 115 82 193 193 193zM238 517c-48 0 -76 -68 -76 -121c0 -36 20 -61 50 -61c46 0 76 64 76 123c0 31 -13 59 -50 59z" /> + <glyph glyph-name="ae" unicode="&#xe6;" horiz-adv-x="763" +d="M676 132l5 -102c-55 -31 -123 -41 -179 -41c-72 0 -135 31 -162 87h-4c-41 -52 -103 -87 -182 -87c-90 0 -150 58 -150 135c0 146 167 202 314 200l2 11c4 23 -13 64 -79 64c-58 0 -104 -21 -136 -43l-23 92c41 27 106 53 177 53c72 0 123 -27 144 -79h3 +c38 48 101 79 173 79c115 0 167 -71 167 -135c0 -141 -144 -170 -319 -162c-2 -21 -1 -42 8 -59c18 -28 55 -43 101 -43c60 0 98 12 140 30zM296 186l8 44c-55 2 -156 -13 -156 -83c0 -30 21 -48 54 -48c42 0 83 31 94 87zM607 353c0 21 -18 43 -56 43 +c-63 0 -101 -56 -108 -93c85 -5 164 0 164 50z" /> + <glyph glyph-name="dotlessi" unicode="&#x131;" horiz-adv-x="265" +d="M157 0h-144l93 489h144z" /> + <glyph glyph-name="lslash" unicode="&#x142;" horiz-adv-x="278" +d="M164 0h-144l44 228l-74 -50l21 108l73 50l72 374h143l-50 -261l81 55l-21 -109l-81 -55z" /> + <glyph glyph-name="oslash" unicode="&#xf8;" horiz-adv-x="560" +d="M57 -56l-40 41l61 71c-32 35 -49 81 -49 139c0 167 119 306 291 306c44 0 82 -10 112 -28l62 70l44 -39l-59 -69c34 -38 50 -89 50 -136c0 -188 -130 -310 -283 -310c-54 0 -92 11 -123 31zM183 173l168 205c-12 12 -27 18 -50 18c-82 0 -124 -114 -125 -178 +c-1 -16 0 -31 4 -44zM375 316l-170 -202c13 -14 30 -20 53 -20c76 0 122 101 124 176c0 15 -1 30 -4 46h-3z" /> + <glyph glyph-name="oe" unicode="&#x153;" horiz-adv-x="826" +d="M738 132l9 -101c-55 -32 -123 -42 -175 -42c-68 0 -131 25 -166 86h-3c-42 -60 -108 -86 -176 -86c-115 0 -199 80 -199 209c0 174 120 303 270 303c75 0 132 -31 160 -88h2c42 55 108 88 182 88c112 0 165 -71 165 -140c0 -144 -160 -173 -312 -170c-2 -17 3 -36 14 -51 +c19 -24 53 -38 96 -38c56 0 95 13 133 30zM254 100c81 0 122 118 122 195c0 51 -18 98 -75 98c-82 0 -124 -110 -124 -193c0 -59 29 -100 77 -100zM673 351c0 23 -16 45 -59 45c-59 0 -94 -56 -105 -100c82 -2 164 6 164 55z" /> + <glyph glyph-name="germandbls" unicode="&#xdf;" horiz-adv-x="580" +d="M157 0h-144l85 449c31 164 115 272 284 272c106 0 187 -63 187 -161c0 -40 -15 -77 -41 -101c-37 -19 -69 -44 -69 -82c0 -26 11 -47 28 -73c22 -34 44 -81 44 -127c0 -131 -95 -188 -213 -188c-49 0 -89 11 -110 23l34 105c20 -11 49 -17 72 -17c43 0 71 22 71 59 +c0 19 -6 39 -28 73c-27 42 -46 76 -46 117c0 65 48 114 100 142c9 12 17 27 17 52c0 34 -22 63 -65 63c-54 0 -100 -45 -120 -151z" /> + <glyph glyph-name="onesuperior" unicode="&#xb9;" horiz-adv-x="274" +d="M252 406h-117l57 295h-2l-78 -32l-9 80l122 47h101z" /> + <glyph glyph-name="logicalnot" unicode="&#xac;" horiz-adv-x="596" +d="M34 422h511v-316h-97v223h-414v93z" /> + <glyph glyph-name="mu" unicode="&#xb5;" horiz-adv-x="559" +d="M245 489l-52 -275c-15 -78 6 -108 54 -108c37 0 69 40 86 76c6 11 11 24 13 37l52 270h144l-62 -329c-8 -45 3 -58 30 -59l-27 -104c-12 -5 -25 -8 -48 -8c-53 0 -82 28 -89 91h-3c-27 -48 -66 -87 -123 -87c-31 0 -57 10 -72 30l-8 -44c-9 -52 -22 -137 -21 -177h-129 +c-6 23 1 102 16 180l95 507h144z" /> + <glyph glyph-name="trademark" unicode="&#x2122;" horiz-adv-x="698" +d="M104 674h239v-67h-79v-206h-83v206h-77v67zM716 401h-80l-5 119c-1 31 0 65 -1 107h-4c-8 -37 -17 -76 -24 -107l-28 -114h-79l-24 116c-5 26 -11 69 -18 105h-4c-1 -37 -1 -75 -3 -106l-6 -120h-78l17 273h128l18 -67c5 -21 9 -43 16 -88h1c7 33 13 60 20 88l20 67h119z +" /> + <glyph glyph-name="Eth" unicode="&#xd0;" horiz-adv-x="693" +d="M10 287l24 119h76l48 258c59 10 120 15 184 15c105 0 191 -21 247 -69c56 -45 90 -117 90 -214c0 -132 -55 -244 -139 -310c-78 -62 -177 -90 -322 -90c-85 0 -151 7 -185 13l54 278h-77zM384 406l-23 -119h-129l-33 -170c17 -3 38 -4 64 -4c74 0 145 28 189 78 +c46 52 71 123 71 200c0 109 -59 173 -175 173c-28 0 -48 -2 -64 -5l-30 -153h130z" /> + <glyph glyph-name="onehalf" unicode="&#xbd;" horiz-adv-x="826" +d="M241 266h-117l56 295h-1l-78 -32l-9 79l122 48h101zM187 -11h-86l491 672h85zM738 0h-302l11 57l74 58c83 62 141 107 141 151c0 22 -15 40 -50 40c-32 0 -64 -13 -88 -29l-17 73c36 26 88 45 146 45c71 0 132 -35 132 -107c0 -79 -73 -131 -143 -180l-27 -20v-2h139z +" /> + <glyph glyph-name="plusminus" unicode="&#xb1;" horiz-adv-x="596" +d="M242 579h97v-173h207v-93h-207v-176h-97v176h-207v93h207v173zM35 93h511v-93h-511v93z" /> + <glyph glyph-name="Thorn" unicode="&#xde;" horiz-adv-x="558" +d="M19 0l128 674h140l-22 -121c15 2 38 4 67 4c63 0 119 -14 159 -47c38 -32 59 -78 59 -130c0 -176 -142 -252 -297 -252c-31 0 -53 2 -68 4l-25 -132h-141zM243 438l-36 -189c14 -3 34 -5 57 -5c78 0 141 46 141 116c0 57 -41 83 -106 83c-23 0 -44 -2 -56 -5z" /> + <glyph glyph-name="onequarter" unicode="&#xbc;" horiz-adv-x="826" +d="M691 0h-108l17 90h-194l13 64l212 240h135l-43 -230h52l-14 -74h-52zM615 164l14 74c4 26 12 50 18 74h-3c-17 -24 -33 -47 -49 -66l-69 -81l2 -1h87zM247 266h-116l56 295h-1l-78 -32l-9 79l122 48h101zM211 -11h-90l487 672h89z" /> + <glyph glyph-name="divide" unicode="&#xf7;" horiz-adv-x="596" +d="M298 368c-43 0 -72 30 -72 74c0 45 30 74 73 74c44 0 72 -29 73 -74c0 -44 -29 -74 -74 -74zM554 220h-511v93h511v-93zM298 17c-43 0 -72 30 -72 74c0 45 30 74 73 74c44 0 72 -29 73 -74c0 -44 -29 -74 -74 -74z" /> + <glyph glyph-name="brokenbar" unicode="&#xa6;" horiz-adv-x="240" +d="M87 174h98v-350h-98v350zM87 674h98v-350h-98v350z" /> + <glyph glyph-name="degree" unicode="&#xb0;" horiz-adv-x="356" +d="M237 685c89 0 147 -64 147 -142c0 -86 -74 -151 -156 -151c-87 0 -147 62 -147 142c-1 82 70 151 156 151zM234 615c-41 0 -73 -40 -73 -80c0 -43 30 -73 71 -73c42 0 72 36 72 80c0 38 -22 73 -70 73z" /> + <glyph glyph-name="thorn" unicode="&#xfe;" horiz-adv-x="564" +d="M-27 -198l165 875h144l-47 -248h2c26 38 76 71 139 71c104 0 158 -82 158 -185c-1 -180 -119 -326 -283 -326c-36 0 -73 9 -92 20h-3l-39 -207h-144zM196 220l-19 -100c16 -12 40 -22 67 -22c79 0 138 105 138 204c0 40 -17 81 -63 81c-53 0 -103 -58 -123 -163z" /> + <glyph glyph-name="threequarters" unicode="&#xbe;" horiz-adv-x="826" +d="M241 -11h-89l486 672h90zM111 554l-10 71c32 21 81 36 138 36c72 0 133 -36 133 -90c0 -50 -43 -81 -97 -95l-1 -2c40 -8 80 -37 80 -85c0 -83 -87 -128 -186 -128c-56 0 -109 13 -138 33l35 76c20 -15 59 -30 95 -30c42 0 73 21 73 50c0 31 -35 48 -84 48h-18l14 68h16 +c42 0 89 14 89 45c0 17 -13 31 -47 31c-33 0 -71 -14 -92 -28zM702 0h-108l17 90h-194l12 64l213 240h135l-43 -230h52l-15 -74h-52zM625 164l14 74c5 26 13 50 19 74h-3c-17 -24 -33 -47 -49 -66l-69 -81l2 -1h86z" /> + <glyph glyph-name="twosuperior" unicode="&#xb2;" horiz-adv-x="341" +d="M349 406h-304l11 57l75 58c84 61 141 107 141 151c0 22 -15 40 -50 40c-32 0 -65 -13 -89 -29l-17 73c36 26 88 45 145 45c73 0 134 -35 134 -107c0 -79 -74 -131 -143 -181l-27 -19v-2h140z" /> + <glyph glyph-name="registered" unicode="&#xae;" horiz-adv-x="409" +d="M238 489v-57h-49v157c11 2 38 6 70 6c37 0 52 -5 64 -13c10 -6 17 -18 17 -34s-15 -30 -36 -36v-2c17 -5 27 -18 32 -40c5 -23 8 -33 11 -38h-54c-5 6 -8 19 -12 34c-3 16 -11 23 -27 23h-16zM240 560v-38h14c19 0 30 7 30 19c0 13 -11 20 -28 20c-6 0 -12 -1 -16 -1z +M261 685c99 0 176 -77 176 -172c0 -96 -77 -173 -177 -173c-98 0 -178 77 -178 173c0 95 80 172 179 172zM259 642c-71 0 -124 -58 -124 -130c0 -71 53 -129 125 -129c72 -1 125 58 125 130c0 71 -53 129 -126 129z" /> + <glyph glyph-name="minus" unicode="&#x2212;" horiz-adv-x="596" +d="M46 314h511v-93h-511v93z" /> + <glyph glyph-name="eth" unicode="&#xf0;" horiz-adv-x="558" +d="M252 98c77 0 118 88 121 171c2 33 1 48 -7 66c-10 18 -30 34 -67 34c-75 0 -124 -96 -124 -178c0 -51 26 -93 77 -93zM150 478l-20 59l122 52c-24 18 -55 36 -84 49l66 79c55 -20 101 -47 143 -79l141 58l21 -59l-111 -45c59 -59 99 -153 99 -263 +c0 -198 -116 -340 -288 -340c-135 0 -213 88 -213 205c0 151 113 274 259 279c28 1 56 -4 80 -23l1 2c-13 37 -33 68 -60 92z" /> + <glyph glyph-name="multiply" unicode="&#xd7;" horiz-adv-x="596" +d="M35 460l65 66l192 -199l191 199l66 -66l-194 -197l194 -196l-66 -67l-192 199l-191 -199l-64 67l192 196z" /> + <glyph glyph-name="threesuperior" unicode="&#xb3;" horiz-adv-x="335" +d="M130 694l-10 71c32 21 81 36 138 36c72 0 133 -36 133 -90c0 -50 -43 -81 -98 -95v-2c39 -8 80 -37 80 -85c0 -84 -87 -128 -186 -128c-56 0 -109 13 -138 33l35 75c20 -14 59 -29 95 -29c42 0 73 21 73 50c0 31 -35 48 -84 48h-18l14 68h16c42 0 89 14 89 45 +c0 17 -13 31 -47 31c-33 0 -71 -14 -92 -28z" /> + <glyph glyph-name="copyright" unicode="&#xa9;" horiz-adv-x="673" +d="M359 648c169 0 304 -138 304 -308c0 -172 -135 -310 -305 -310s-306 138 -306 310c0 170 136 308 307 308zM357 592c-134 0 -240 -112 -240 -254c0 -141 106 -252 241 -252c133 -1 240 111 240 253c0 141 -107 253 -241 253zM493 492l-15 -54c-13 8 -51 23 -96 23 +c-77 0 -123 -46 -123 -124c0 -72 48 -125 122 -125c41 0 79 10 102 25l15 -52c-35 -23 -83 -32 -125 -32c-117 0 -185 79 -185 181c0 115 94 186 194 186c49 0 98 -14 111 -28z" /> + <glyph glyph-name="Aacute" unicode="&#xc1;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM417 836h160l-132 -126h-122z" /> + <glyph glyph-name="Acircumflex" unicode="&#xc2;" horiz-adv-x="618" +d="M398 175h-194l-79 -175h-154l329 674h185l78 -674h-151zM247 285h145l-13 145c-3 37 -6 91 -9 132h-2c-18 -41 -36 -93 -54 -132zM363 836h109l80 -126h-101l-40 61h-2l-59 -61h-111z" /> + <glyph glyph-name="Adieresis" unicode="&#xc4;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h186l78 -674h-151zM247 285h146l-13 145c-3 37 -6 91 -10 132h-2c-17 -41 -36 -93 -54 -132zM292 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73zM499 711c-33 0 -64 25 -64 64 +c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73z" /> + <glyph glyph-name="Agrave" unicode="&#xc0;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM224 837h158l77 -125h-119z" /> + <glyph glyph-name="Aring" unicode="&#xc5;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l78 -674h-151zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM416 889c60 0 108 -31 108 -91c-2 -64 -55 -101 -124 -101c-58 0 -105 34 -107 87c-2 63 51 105 123 105zM410 840c-28 0 -46 -22 -46 -51 +c0 -24 15 -43 41 -43c29 0 48 22 48 48s-15 46 -43 46z" /> + <glyph glyph-name="Atilde" unicode="&#xc3;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l78 -674h-150zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM321 713h-71c13 85 52 126 99 126c29 0 46 -9 63 -20c15 -10 28 -19 41 -19c16 0 25 11 34 43h69c-14 -88 -48 -123 -100 -123 +c-29 0 -48 9 -64 19s-26 18 -40 18c-13 0 -24 -14 -31 -44z" /> + <glyph glyph-name="Ccedilla" unicode="&#xc7;" horiz-adv-x="584" +d="M513 138l12 -116c-34 -15 -95 -31 -154 -32l-24 -34c34 -8 60 -32 60 -67c0 -68 -70 -92 -126 -92c-33 0 -61 8 -78 21l24 53c16 -10 36 -15 54 -15s37 8 37 27c0 18 -18 32 -72 36l50 74c-159 18 -247 129 -247 283c0 151 68 269 170 337c71 48 153 71 248 71 +c73 0 128 -17 147 -28l-39 -117c-20 9 -64 22 -122 22s-113 -18 -154 -52c-57 -46 -94 -123 -94 -217c0 -107 61 -179 180 -179c47 0 94 10 128 25z" /> + <glyph glyph-name="Eacute" unicode="&#xc9;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-24 -123h-413l128 674h399l-24 -123h-254l-28 -144h241zM371 836h160l-132 -126h-122z" /> + <glyph glyph-name="Ecircumflex" unicode="&#xca;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241zM319 836h109l80 -126h-101l-40 61h-2l-59 -61h-111z" /> + <glyph glyph-name="Edieresis" unicode="&#xcb;" horiz-adv-x="517" +d="M480 407l-23 -121h-239l-32 -163h269l-23 -123h-413l128 674h398l-24 -123h-253l-28 -144h240zM255 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73zM462 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64 +c0 -44 -34 -73 -73 -73z" /> + <glyph glyph-name="Egrave" unicode="&#xc8;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241zM195 837h157l78 -125h-120z" /> + <glyph glyph-name="Iacute" unicode="&#xcd;" horiz-adv-x="274" +d="M144 674h143l-127 -674h-144zM244 836h160l-132 -126h-122z" /> + <glyph glyph-name="Icircumflex" unicode="&#xce;" horiz-adv-x="274" +d="M144 674h144l-128 -674h-144zM185 836h109l80 -126h-101l-41 61h-2l-58 -61h-111z" /> + <glyph glyph-name="Idieresis" unicode="&#xcf;" horiz-adv-x="274" +d="M143 674h145l-128 -674h-144zM121 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73zM328 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73z" /> + <glyph glyph-name="Igrave" unicode="&#xcc;" horiz-adv-x="274" +d="M144 674h144l-128 -674h-144zM61 837h158l77 -125h-120z" /> + <glyph glyph-name="Ntilde" unicode="&#xd1;" horiz-adv-x="666" +d="M153 0h-134l128 674h169l89 -257c28 -86 46 -156 62 -230h2c3 69 13 143 31 242l46 245h135l-128 -674h-149l-94 269c-30 91 -48 153 -66 235h-3c-7 -66 -23 -162 -43 -268zM354 715h-71c13 85 52 126 99 126c28 0 46 -9 63 -20c15 -10 28 -19 41 -19c16 0 25 11 34 43 +h69c-14 -88 -48 -123 -100 -123c-29 0 -48 9 -64 19s-26 18 -40 18c-13 0 -24 -14 -31 -44z" /> + <glyph glyph-name="Oacute" unicode="&#xd3;" horiz-adv-x="705" +d="M321 -11c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97zM342 109c43 0 82 18 113 49c53 53 82 164 82 242c0 84 -30 165 -136 165c-45 0 -85 -19 -116 -51 +c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166zM453 839h160l-132 -126h-122z" /> + <glyph glyph-name="Ocircumflex" unicode="&#xd4;" horiz-adv-x="705" +d="M321 -11c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97zM342 109c43 0 82 18 113 49c53 53 82 164 82 242c0 84 -30 165 -136 165c-45 0 -85 -19 -116 -51 +c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166zM394 836h109l80 -126h-101l-40 61h-2l-58 -61h-111z" /> + <glyph glyph-name="Odieresis" unicode="&#xd6;" horiz-adv-x="705" +d="M321 -11c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97zM342 109c43 0 82 18 113 49c53 53 82 164 82 242c0 84 -30 165 -136 165c-45 0 -84 -19 -116 -51 +c-53 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166zM335 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73zM542 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73z" /> + <glyph glyph-name="Ograve" unicode="&#xd2;" horiz-adv-x="705" +d="M321 -11c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97zM342 109c43 0 82 18 113 49c53 53 82 164 82 242c0 84 -30 165 -136 165c-45 0 -85 -19 -116 -51 +c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166zM265 837h157l78 -125h-120z" /> + <glyph glyph-name="Otilde" unicode="&#xd5;" horiz-adv-x="705" +d="M321 -11c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 150 96 246 96c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97zM343 109c42 0 81 18 112 49c53 53 82 164 82 242c0 84 -30 165 -136 165c-45 0 -84 -19 -116 -51 +c-53 -53 -84 -158 -84 -239c0 -95 43 -166 142 -166zM360 715h-71c13 85 52 126 99 126c28 0 46 -9 63 -20c15 -10 28 -19 41 -19c16 0 25 11 34 43h69c-14 -88 -48 -123 -100 -123c-29 0 -48 9 -64 19s-26 18 -40 18c-13 0 -25 -14 -31 -44z" /> + <glyph glyph-name="Scaron" unicode="&#x160;" horiz-adv-x="510" +d="M0 37l48 119c40 -24 97 -43 159 -43c56 0 107 26 107 78c0 39 -29 63 -91 96c-71 38 -139 91 -139 178c0 137 118 219 265 219c82 0 130 -18 159 -33l-45 -120c-22 12 -70 30 -125 29c-68 0 -103 -33 -103 -70c0 -39 41 -64 98 -96c82 -42 134 -97 134 -178 +c0 -150 -124 -227 -274 -227c-94 1 -161 25 -193 48zM393 710h-110l-79 126h101l39 -64h3l58 64h111z" /> + <glyph glyph-name="Uacute" unicode="&#xda;" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c76 0 125 50 149 175l74 389h144l-73 -383c-39 -204 -128 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94zM433 836h160l-132 -126h-122z" /> + <glyph glyph-name="Ucircumflex" unicode="&#xdb;" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c76 0 125 50 149 175l74 389h144l-73 -383c-39 -204 -128 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94zM383 836h109l80 -126h-101l-40 61h-2l-59 -61h-111z" /> + <glyph glyph-name="Udieresis" unicode="&#xdc;" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c75 0 125 50 149 175l74 389h143l-72 -383c-39 -204 -129 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94zM316 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c39 0 64 -29 64 -64 +c0 -44 -33 -73 -73 -73zM523 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73z" /> + <glyph glyph-name="Ugrave" unicode="&#xd9;" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c76 0 125 50 149 175l74 389h144l-73 -383c-39 -204 -128 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94zM254 837h158l77 -125h-120z" /> + <glyph glyph-name="Yacute" unicode="&#xdd;" horiz-adv-x="570" +d="M295 0h-144l52 275l-132 399h154l43 -171c13 -56 20 -88 26 -122h2c20 36 41 74 69 123l101 170h172l-291 -396zM378 836h160l-132 -126h-122z" /> + <glyph glyph-name="Ydieresis" unicode="&#x178;" horiz-adv-x="570" +d="M294 0h-144l52 275l-131 399h154l43 -171c12 -56 19 -88 26 -122h2c19 36 40 74 69 123l101 170h172l-291 -396zM256 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73zM463 711c-33 0 -64 25 -64 64c0 43 33 73 73 73 +c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73z" /> + <glyph glyph-name="Zcaron" unicode="&#x17d;" horiz-adv-x="553" +d="M-25 0l15 83l391 464v3h-274l25 124h467l-17 -89l-384 -458v-3h302l-24 -124h-501zM418 710h-109l-80 126h102l39 -64h2l59 64h111z" /> + <glyph glyph-name="aacute" unicode="&#xe1;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM391 700h142l-130 -152h-106z" /> + <glyph glyph-name="acircumflex" unicode="&#xe2;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM330 700h99l75 -152h-93l-40 79h-2l-59 -79h-101z" /> + <glyph glyph-name="adieresis" unicode="&#xe4;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM243 554c-35 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75zM448 554c-36 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75z" /> + <glyph glyph-name="agrave" unicode="&#xe0;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM201 700h140l74 -152h-103z" /> + <glyph glyph-name="aring" unicode="&#xe5;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -25 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM361 735c58 0 107 -32 107 -94c-2 -66 -57 -103 -124 -103c-57 0 -104 34 -106 90c-2 65 51 107 123 107zM354 685c-28 0 -47 -23 -47 -53c0 -23 15 -44 43 -44c30 0 49 23 49 51c0 25 -15 46 -45 46z" /> + <glyph glyph-name="atilde" unicode="&#xe3;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM275 558h-70c11 80 45 126 96 126c28 0 45 -10 62 -20c15 -10 28 -19 39 -19c16 0 23 10 32 44h69c-13 -87 -46 -123 -98 -123c-27 0 -48 9 -64 19c-13 11 -25 18 -38 18s-23 -19 -28 -45z" /> + <glyph glyph-name="ccedilla" unicode="&#xe7;" horiz-adv-x="434" +d="M371 125l1 -109c-27 -13 -66 -23 -96 -25l-25 -35c35 -8 61 -34 61 -69c0 -69 -70 -94 -121 -94c-33 0 -67 9 -83 21l25 57c17 -10 38 -16 55 -16c18 0 35 8 35 28c0 18 -18 32 -72 36l49 73c-113 12 -173 93 -173 198c0 174 133 310 319 310c42 0 78 -8 100 -16 +l-36 -111c-17 7 -37 12 -66 12c-102 0 -166 -87 -166 -179c0 -67 42 -101 96 -101c42 0 72 10 97 20z" /> + <glyph glyph-name="eacute" unicode="&#xe9;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM352 700h142l-130 -152h-107z" /> + <glyph glyph-name="ecircumflex" unicode="&#xea;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM289 700h99l75 -152h-93l-40 79h-2l-58 -79h-102z" /> + <glyph glyph-name="edieresis" unicode="&#xeb;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM223 554c-35 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75zM429 554c-36 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75z" /> + <glyph glyph-name="egrave" unicode="&#xe8;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM167 700h140l75 -152h-103z" /> + <glyph glyph-name="iacute" unicode="&#xed;" horiz-adv-x="265" +d="M157 0h-144l93 489h144zM221 700h142l-130 -152h-106z" /> + <glyph glyph-name="icircumflex" unicode="&#xee;" horiz-adv-x="265" +d="M157 0h-144l93 489h144zM162 700h99l75 -152h-93l-40 79h-2l-58 -79h-102z" /> + <glyph glyph-name="idieresis" unicode="&#xef;" horiz-adv-x="265" +d="M156 0h-143l92 489h145zM95 554c-35 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75zM301 554c-36 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75z" /> + <glyph glyph-name="igrave" unicode="&#xec;" horiz-adv-x="265" +d="M157 0h-144l93 489h144zM33 700h139l75 -152h-103z" /> + <glyph glyph-name="ntilde" unicode="&#xf1;" horiz-adv-x="563" +d="M156 0h-144l62 330c13 62 20 115 27 159h127l-9 -81h2c46 63 106 92 171 92c80 0 126 -49 126 -134c0 -22 -4 -58 -8 -82l-54 -284h-145l52 271c3 17 5 36 5 54c0 35 -12 59 -49 59c-47 0 -102 -59 -122 -167zM269 558h-70c11 80 45 126 96 126c28 0 45 -10 62 -20 +c15 -10 28 -19 39 -19c16 0 23 10 32 44h69c-13 -87 -46 -123 -98 -123c-27 0 -49 9 -64 19c-14 11 -26 18 -38 18c-13 0 -23 -19 -28 -45z" /> + <glyph glyph-name="oacute" unicode="&#xf3;" horiz-adv-x="559" +d="M237 -11c-124 0 -207 81 -207 203c0 169 118 309 292 309c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310zM258 99c77 0 122 116 122 199c0 45 -20 93 -77 93c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95zM359 700h142l-130 -152h-105z" /> + <glyph glyph-name="ocircumflex" unicode="&#xf4;" horiz-adv-x="559" +d="M237 -11c-124 0 -207 81 -207 203c0 169 118 309 292 309c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310zM258 99c77 0 122 116 122 199c0 45 -20 93 -77 93c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95zM306 700h98l75 -152h-93l-40 79h-1l-59 -79h-101z" /> + <glyph glyph-name="odieresis" unicode="&#xf6;" horiz-adv-x="559" +d="M237 -11c-124 0 -207 81 -207 203c0 169 118 309 292 309c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310zM258 99c77 0 122 116 122 199c0 45 -20 93 -77 93c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95zM236 554c-35 0 -66 25 -66 66c0 45 34 75 76 75 +c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75zM441 554c-36 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75z" /> + <glyph glyph-name="ograve" unicode="&#xf2;" horiz-adv-x="559" +d="M237 -11c-124 0 -207 81 -207 203c0 169 118 309 292 309c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310zM258 99c77 0 122 116 122 199c0 45 -20 93 -77 93c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95zM177 700h139l75 -152h-103z" /> + <glyph glyph-name="otilde" unicode="&#xf5;" horiz-adv-x="559" +d="M237 -11c-124 0 -207 81 -207 203c0 169 118 309 292 309c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310zM258 99c77 0 122 116 122 199c0 45 -20 93 -77 93c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95zM257 558h-70c11 80 45 126 96 126c28 0 44 -10 61 -20 +c15 -10 28 -19 39 -19c16 0 23 10 32 44h69c-13 -87 -46 -123 -98 -123c-26 0 -48 9 -63 20c-14 10 -26 17 -38 17c-13 0 -23 -19 -28 -45z" /> + <glyph glyph-name="scaron" unicode="&#x161;" horiz-adv-x="416" +d="M-4 28l35 101c28 -14 80 -34 127 -34c41 0 62 20 62 44s-16 41 -61 63c-56 28 -103 69 -103 130c0 102 89 169 215 169c57 0 102 -12 126 -25l-35 -102c-20 9 -55 21 -97 21c-39 0 -64 -16 -64 -43c0 -20 20 -37 59 -56c54 -27 110 -66 110 -134 +c0 -112 -95 -173 -225 -172c-62 1 -120 17 -149 38zM313 548h-99l-75 152h93l40 -79h2l59 79h102z" /> + <glyph glyph-name="uacute" unicode="&#xfa;" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM361 700h142l-130 -152h-106z" /> + <glyph glyph-name="ucircumflex" unicode="&#xfb;" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM312 700h98l75 -152h-93l-39 79h-2l-59 -79 +h-101z" /> + <glyph glyph-name="udieresis" unicode="&#xfc;" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM237 554c-35 0 -66 25 -66 66 +c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75zM442 554c-36 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75z" /> + <glyph glyph-name="ugrave" unicode="&#xf9;" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM179 700h140l74 -152h-103z" /> + <glyph glyph-name="yacute" unicode="&#xfd;" horiz-adv-x="497" +d="M44 489h151l30 -213c7 -51 12 -86 16 -117h2c11 30 22 61 43 114l89 216h152l-175 -352c-65 -130 -123 -218 -188 -279c-57 -54 -125 -79 -157 -84l-32 124c23 7 55 19 83 38c33 23 61 52 80 85c4 8 4 14 2 24zM330 700h142l-130 -152h-106z" /> + <glyph glyph-name="ydieresis" unicode="&#xff;" horiz-adv-x="497" +d="M44 489h151l30 -213c7 -51 12 -86 16 -117h2c11 30 22 61 43 114l89 216h151l-174 -352c-65 -130 -123 -218 -188 -279c-57 -54 -125 -79 -157 -84l-32 124c23 7 55 19 83 38c33 23 61 52 80 85c4 8 4 14 2 24zM198 554c-35 0 -66 25 -66 66c0 45 34 75 76 75 +c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75zM403 554c-36 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75z" /> + <glyph glyph-name="zcaron" unicode="&#x17e;" horiz-adv-x="450" +d="M-26 0l16 87l159 170c41 43 72 73 119 113l1 2h-209l23 117h382l-17 -91l-155 -166c-44 -46 -75 -77 -119 -113l-1 -2h230l-23 -117h-406zM329 548h-99l-75 152h93l40 -79h2l60 79h101z" /> + <glyph glyph-name="Dcroat" unicode="&#x110;" horiz-adv-x="693" +d="M10 287l24 119h76l48 258c59 10 120 15 184 15c105 0 191 -21 247 -69c56 -45 90 -117 90 -214c0 -132 -55 -244 -139 -310c-78 -62 -177 -90 -322 -90c-85 0 -151 7 -185 13l54 278h-77zM384 406l-23 -119h-129l-33 -170c17 -3 38 -4 64 -4c74 0 145 28 189 78 +c46 52 71 123 71 200c0 109 -59 173 -175 173c-28 0 -48 -2 -64 -5l-30 -153h130z" /> + <glyph glyph-name="Eng" unicode="&#x14a;" horiz-adv-x="666" +d="M289 -212l-14 115c64 7 115 36 130 89l-95 277c-30 92 -48 153 -66 235h-3c-7 -66 -23 -161 -43 -268l-45 -236h-134l128 674h169l89 -257c27 -86 45 -156 61 -230h3c3 69 12 143 31 242l46 245h135l-119 -629c-37 -193 -143 -252 -273 -257z" /> + <glyph glyph-name="Hbar" unicode="&#x126;" horiz-adv-x="666" +d="M497 472h-244l-16 -85h244zM47 561h79l22 113h144l-22 -113h244l22 113h144l-21 -113h72l-18 -89h-71l-89 -472h-145l49 259h-244l-49 -259h-144l89 472h-80z" /> + <glyph glyph-name="Tbar" unicode="&#x166;" horiz-adv-x="527" +d="M463 290h-123l-55 -290h-143l54 290h-117l17 89h117l32 169h-178l25 126h501l-24 -126h-180l-32 -169h123z" /> + <glyph glyph-name="uni021C" unicode="&#x21c;" horiz-adv-x="514" +d="M4 -125l-10 114c178 14 317 86 317 193c0 41 -22 89 -105 89c-31 0 -60 -7 -89 -15l-15 97c98 21 214 71 214 152c0 41 -39 64 -84 64c-46 0 -76 -15 -110 -30l-23 95c48 29 121 52 193 51c118 0 180 -67 180 -142c0 -81 -55 -136 -141 -178v-2c81 -16 138 -83 138 -163 +c0 -194 -211 -308 -465 -325z" /> + <glyph glyph-name="dcroat" unicode="&#x111;" horiz-adv-x="560" +d="M355 243l26 131c-12 10 -34 17 -57 17c-87 0 -148 -100 -148 -194c0 -59 26 -92 67 -92c42 0 92 44 112 138zM241 624h186l17 86h143l-16 -86h77l-16 -79h-77l-67 -355c-12 -62 -21 -132 -23 -190h-132l7 79h-2c-43 -65 -103 -90 -161 -90c-83 0 -151 66 -151 185 +c0 170 123 327 308 327c20 0 46 -4 67 -12l11 56h-187z" /> + <glyph glyph-name="eng" unicode="&#x14b;" horiz-adv-x="563" +d="M221 -190l-13 118c61 6 96 34 112 115l43 228c3 17 5 36 5 54c0 35 -12 59 -49 59c-47 0 -102 -59 -122 -167l-41 -217h-144l62 330c12 62 20 115 27 159h127l-9 -81h2c46 63 106 92 170 92c80 0 127 -49 127 -135c0 -21 -4 -57 -8 -81l-44 -231 +c-36 -187 -126 -239 -245 -243z" /> + <glyph glyph-name="hbar" unicode="&#x127;" horiz-adv-x="563" +d="M42 622h89l17 88h144l-17 -88h165l-15 -79h-165l-23 -117h2c41 45 92 74 156 74c76 0 123 -48 123 -132c0 -23 -4 -60 -9 -88l-53 -280h-144l51 268c4 19 6 40 6 60c0 33 -13 56 -49 56c-51 0 -102 -62 -120 -160l-43 -224h-144l103 543h-89z" /> + <glyph glyph-name="kgreenlandic" unicode="&#x138;" horiz-adv-x="530" +d="M156 0h-143l93 489h143l-39 -204h2c15 19 30 38 44 55l125 149h178l-208 -202l136 -287h-161l-86 209l-54 -52z" /> + <glyph glyph-name="napostrophe" unicode="&#x149;" horiz-adv-x="563" +d="M156 0h-144l62 330c13 62 20 115 27 159h127l-9 -81h2c46 63 106 92 171 92c80 0 126 -49 126 -134c0 -22 -4 -58 -8 -82l-54 -284h-145l52 271c3 17 5 36 5 54c0 35 -12 59 -49 59c-47 0 -102 -59 -122 -167zM73 542l-16 66c23 7 48 34 48 67c0 20 -8 38 -19 49l100 17 +c12 -10 26 -35 26 -64c0 -92 -85 -132 -139 -135z" /> + <glyph glyph-name="tbar" unicode="&#x167;" horiz-adv-x="348" +d="M38 310h51l13 70h-62l20 110h63l18 92l148 40l-25 -132h105l-22 -110h-104l-14 -70h91l-15 -78h-92l-7 -38c-3 -15 -4 -30 -4 -42c0 -24 10 -41 42 -41c12 0 27 0 39 2l-16 -113c-19 -7 -55 -11 -85 -11c-87 0 -128 44 -128 106c0 27 4 53 11 91l8 46h-51z" /> + <glyph glyph-name="uni021D" unicode="&#x21d;" horiz-adv-x="439" +d="M-47 -208l-8 114c61 3 296 28 296 158c0 36 -29 67 -96 67c-21 0 -55 -6 -84 -14l-13 98c98 21 195 54 195 123c-1 28 -24 46 -70 46s-72 -13 -106 -28l-25 91c48 28 116 53 189 53c102 0 162 -61 162 -121c0 -74 -38 -117 -122 -153v-2c76 -16 125 -75 125 -140 +c0 -190 -241 -287 -443 -292z" /> + <glyph glyph-name="IJ" unicode="&#x132;" horiz-adv-x="673" +d="M144 674h144l-128 -674h-144zM468 247l81 427h144l-85 -445c-32 -171 -106 -240 -259 -240c-42 0 -89 7 -110 16l27 123c22 -7 48 -12 81 -12c63 0 102 31 121 131z" /> + <glyph glyph-name="ij" unicode="&#x133;" horiz-adv-x="540" +d="M157 0h-144l93 489h144zM197 550h-2c-40 0 -69 28 -69 70c0 49 39 82 83 82c42 0 72 -28 72 -71c0 -51 -39 -81 -84 -81zM385 489h144l-89 -472c-15 -85 -36 -138 -69 -174c-31 -36 -82 -52 -133 -52c-22 0 -47 2 -68 8l15 108c10 -1 20 -2 32 -2c33 0 61 17 77 105z +M470 550c-40 0 -69 28 -69 70c0 49 39 82 83 82c42 0 72 -28 72 -71c0 -51 -39 -81 -86 -81z" /> + <glyph glyph-name="zero.slash" unicode="&#xf638;" horiz-adv-x="541" +d="M180 230l200 277c-7 21 -24 40 -53 40c-89 0 -139 -168 -148 -290c0 -9 0 -18 1 -27zM391 413l-199 -273c6 -20 23 -37 49 -37c94 0 139 172 150 287v23zM571 640l-63 -78c16 -36 23 -80 23 -124c0 -203 -99 -449 -302 -449c-54 0 -95 17 -125 45l-46 -59l-48 45l55 67 +c-18 38 -26 86 -26 137c0 204 105 437 305 437c56 0 96 -17 126 -46l49 66z" /> + <glyph glyph-name="Euro" unicode="&#x20ac;" horiz-adv-x="541" +d="M487 132l14 -110c-33 -17 -92 -33 -158 -33c-158 0 -253 96 -260 245h-74l15 71h63c2 16 5 32 8 47h-62l14 71h69c50 137 184 238 336 238c69 0 117 -14 147 -30l-43 -111c-20 10 -57 21 -110 21c-79 0 -150 -53 -178 -118h232l-16 -71h-243c-3 -15 -6 -30 -8 -47h242 +l-15 -71h-228c10 -75 56 -125 137 -125c46 0 95 12 118 23z" /> + <glyph glyph-name="Aringacute" unicode="&#x1fa;" horiz-adv-x="618" +d="M405 693c-63 0 -101 35 -101 85c0 52 47 94 115 94c62 0 99 -34 99 -85c0 -52 -43 -94 -113 -94zM409 744c29 0 45 18 45 40c0 21 -16 39 -42 39c-28 0 -43 -20 -43 -42s16 -37 40 -37zM468 979h160l-145 -90h-123zM399 175h-194l-79 -175h-154l328 674h185l78 -674h-151 +zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132z" /> + <glyph glyph-name="estimated" unicode="&#x212e;" horiz-adv-x="817" +d="M782 316h-605c-3 0 -5 -1 -5 -4v-183c0 -8 4 -15 9 -21c57 -61 139 -99 229 -99c96 0 182 43 240 111h55c-68 -79 -176 -131 -296 -131c-206 0 -374 150 -374 336s168 336 374 336s373 -150 373 -336v-9zM646 340v184c0 9 -4 16 -10 22c-58 58 -138 95 -226 95 +c-90 0 -170 -38 -228 -98c-6 -6 -10 -14 -10 -23v-180c0 -3 2 -5 5 -5h464c3 0 5 2 5 5z" /> + <glyph glyph-name="zero.oldstyle" unicode="&#xf730;" horiz-adv-x="552" +d="M234 -11c-131 0 -205 93 -205 205c0 155 110 307 284 307c131 0 206 -97 206 -203c0 -161 -107 -309 -285 -309zM252 102c82 0 122 110 122 191c0 50 -24 94 -77 94c-82 0 -123 -111 -123 -189c0 -56 23 -96 78 -96z" /> + <glyph glyph-name="one.oldstyle" unicode="&#xf731;" horiz-adv-x="399" +d="M354 490l-92 -490h-139l67 356h-2l-134 -58l-4 113l186 79h118z" /> + <glyph glyph-name="two.oldstyle" unicode="&#xf732;" horiz-adv-x="484" +d="M432 118l-22 -118h-427l15 82l86 51c114 71 193 132 193 186c0 44 -27 65 -75 65c-40 0 -87 -22 -114 -38l-30 90c48 36 118 67 204 67c92 0 168 -55 168 -152c0 -85 -63 -148 -161 -210l-45 -28v-4c33 6 67 9 95 9h113z" /> + <glyph glyph-name="three.oldstyle" unicode="&#xf733;" horiz-adv-x="461" +d="M-31 -102l33 109c22 -8 69 -16 108 -16c74 0 136 30 136 85c0 49 -57 71 -114 71c-18 0 -36 0 -51 -1l21 104c9 1 18 1 26 2c45 3 143 25 144 83c0 32 -25 50 -70 50c-43 0 -87 -16 -118 -33l-22 95c48 32 115 54 184 54c109 0 172 -55 172 -134 +c-2 -86 -76 -133 -140 -152v-2c64 -14 119 -58 119 -135c0 -132 -137 -203 -283 -203c-59 0 -111 9 -145 23z" /> + <glyph glyph-name="four.oldstyle" unicode="&#xf734;" horiz-adv-x="544" +d="M402 35l-30 -159h-133l30 159h-279l19 95l304 362h176l-66 -349h77l-22 -108h-76zM290 143l23 125c7 37 17 83 26 119h-4c-18 -32 -45 -70 -67 -99l-116 -140l1 -5h137z" /> + <glyph glyph-name="five.oldstyle" unicode="&#xf735;" horiz-adv-x="454" +d="M-22 -101l31 107c25 -9 66 -16 107 -16c79 0 137 36 137 95c0 18 -7 38 -20 51c-36 34 -126 41 -194 39l105 315h308l-37 -121h-190l-34 -97c67 -3 128 -22 166 -60c29 -29 46 -66 46 -111c0 -142 -118 -226 -281 -226c-61 0 -115 11 -144 24z" /> + <glyph glyph-name="six.oldstyle" unicode="&#xf736;" horiz-adv-x="539" +d="M249 101c57 0 103 59 103 125c0 53 -36 83 -77 83c-40 0 -63 -20 -79 -42c-13 -17 -22 -43 -22 -75c0 -57 31 -91 75 -91zM495 616l8 -107c-96 -7 -191 -37 -244 -91c-20 -19 -32 -39 -42 -59l2 -1c28 24 71 47 129 47c84 0 151 -63 151 -165c0 -138 -111 -251 -260 -251 +c-120 0 -206 77 -206 215c0 77 32 188 116 273c76 75 193 136 346 139z" /> + <glyph glyph-name="seven.oldstyle" unicode="&#xf737;" horiz-adv-x="478" +d="M482 490l-17 -92c-45 -99 -220 -365 -349 -523l-134 30c107 129 241 316 322 459l1 2h-263l22 124h418z" /> + <glyph glyph-name="eight.oldstyle" unicode="&#xf738;" horiz-adv-x="560" +d="M326 617h2c118 0 199 -63 199 -154c0 -69 -51 -109 -114 -138v-3c51 -28 95 -75 95 -135c0 -125 -131 -198 -258 -198c-137 1 -221 69 -221 166c0 79 62 130 139 163v3c-43 25 -72 66 -72 116c0 110 111 180 230 180zM317 515c-50 0 -85 -29 -85 -67c0 -39 40 -64 85 -80 +c38 14 72 43 72 83c0 36 -27 64 -72 64zM265 94c49 0 91 36 91 83c0 41 -38 70 -86 91c-48 -18 -90 -51 -90 -97c0 -48 38 -77 85 -77z" /> + <glyph glyph-name="nine.oldstyle" unicode="&#xf739;" horiz-adv-x="541" +d="M257 187c29 0 57 15 77 37c16 15 28 48 28 78c0 54 -29 90 -77 90c-52 0 -99 -55 -99 -124c0 -50 29 -81 71 -81zM46 -120l-6 109c23 1 53 3 86 8c102 17 172 77 198 137l-3 2c-23 -24 -68 -46 -118 -46c-105 0 -164 73 -164 165c0 139 116 250 261 250 +c127 0 204 -98 204 -219c0 -207 -151 -376 -385 -403c-31 -3 -56 -4 -73 -3z" /> + <glyph glyph-name="percent.oldstyle" unicode="&#xf642;" horiz-adv-x="873" +d="M247 619c90 0 143 -63 143 -149c0 -143 -91 -252 -209 -252c-85 0 -147 57 -147 154c0 130 85 247 213 247zM232 536c-57 0 -88 -106 -88 -167c0 -38 15 -68 48 -68c60 0 88 113 88 171c0 34 -13 64 -48 64zM251 -11h-85l452 629h84zM694 392c90 0 143 -63 143 -149 +c0 -143 -91 -252 -209 -252c-85 0 -147 57 -147 154c0 130 85 247 213 247zM679 309c-57 0 -88 -106 -88 -167c0 -38 15 -68 48 -68c60 0 88 113 88 171c0 34 -13 64 -48 64z" /> + <glyph glyph-name="zero.fitted" unicode="&#xf639;" horiz-adv-x="541" +d="M228 -11c-136 0 -189 103 -189 234c0 205 105 438 305 438c139 0 187 -107 187 -223c0 -203 -98 -449 -303 -449zM245 103c99 0 144 248 144 334c0 44 -7 110 -62 110c-96 0 -146 -234 -146 -329c0 -49 7 -115 64 -115z" /> + <glyph glyph-name="one.fitted" unicode="&#xf6dc;" +d="M116 0l97 515h-2l-127 -56l-5 112l180 79h118l-123 -650h-138z" /> + <glyph glyph-name="two.fitted" unicode="&#xf63a;" horiz-adv-x="497" +d="M413 0h-445l18 93l140 108c130 106 213 182 213 260c0 46 -32 79 -89 79c-58 0 -104 -17 -138 -38l-29 103c52 32 127 56 202 56c131 0 202 -77 202 -177c0 -133 -106 -225 -220 -313l-65 -46v-2h233z" /> + <glyph glyph-name="three.fitted" unicode="&#xf63b;" horiz-adv-x="481" +d="M-24 33l44 113c26 -14 78 -36 142 -36c81 0 129 40 129 92c0 59 -48 87 -133 87h-25l21 110h23c67 0 144 27 144 86c0 32 -24 56 -80 56c-55 0 -104 -15 -134 -32l-20 108c48 26 117 44 183 44c109 0 203 -50 203 -152c0 -81 -64 -141 -144 -161l-1 -2 +c67 -14 113 -68 113 -143c0 -136 -139 -214 -281 -214c-83 0 -155 20 -184 44z" /> + <glyph glyph-name="four.fitted" unicode="&#xf63c;" horiz-adv-x="541" +d="M392 0h-135l30 157h-277l18 97l310 396h177l-72 -382h76l-20 -111h-77zM172 268h136l30 141c9 41 21 86 31 127h-4c-29 -44 -54 -85 -85 -128l-107 -138z" /> + <glyph glyph-name="five.fitted" unicode="&#xf63d;" horiz-adv-x="499" +d="M511 650l-25 -123h-229l-31 -101c11 1 17 2 28 2c37 0 94 -11 134 -40c46 -31 72 -83 72 -144c0 -163 -137 -255 -301 -255c-78 0 -143 18 -168 38l37 115c26 -16 78 -32 133 -32c71 0 149 38 149 108c0 58 -36 100 -161 100c-31 0 -54 -2 -80 -4l93 336h349z" /> + <glyph glyph-name="six.fitted" unicode="&#xf63e;" horiz-adv-x="542" +d="M516 659l-22 -117c-16 1 -32 0 -54 -2c-118 -11 -196 -76 -229 -153l2 -1c35 32 81 50 133 50c96 0 166 -74 166 -182c0 -139 -107 -265 -260 -265c-145 0 -216 100 -216 228c0 148 71 276 161 347c72 58 168 90 265 95c25 2 40 1 54 0zM258 100c68 0 105 78 105 139 +c0 57 -32 90 -80 90c-39 0 -73 -25 -93 -60c-6 -10 -10 -23 -11 -33c-2 -13 -2 -24 -2 -35c0 -56 29 -101 81 -101z" /> + <glyph glyph-name="seven.fitted" unicode="&#xf63f;" horiz-adv-x="472" +d="M91 650h441l-18 -96c-119 -184 -238 -369 -357 -554h-160c118 175 236 350 353 525v2h-283z" /> + <glyph glyph-name="eight.fitted" unicode="&#xf640;" horiz-adv-x="540" +d="M334 661c105 0 192 -55 192 -158c0 -70 -47 -122 -117 -155v-2c58 -33 89 -89 89 -144c0 -142 -136 -213 -263 -213c-138 1 -218 71 -218 167c0 92 64 154 140 184l1 3c-44 33 -65 76 -65 122c0 121 114 196 241 196zM252 94c48 0 95 35 95 94c0 52 -36 82 -85 99 +c-49 -13 -94 -53 -94 -112c0 -45 30 -81 84 -81zM316 556c-47 0 -85 -39 -85 -83c0 -41 33 -67 76 -82c41 14 80 49 80 96c0 39 -25 69 -71 69z" /> + <glyph glyph-name="nine.fitted" unicode="&#xf641;" horiz-adv-x="543" +d="M48 -9l17 118c17 -2 34 -1 61 0c45 4 90 17 128 41c48 29 84 71 106 119l-2 2c-32 -32 -80 -47 -124 -47c-103 0 -173 71 -173 176c0 141 117 261 264 261c144 0 211 -98 211 -227c-1 -154 -79 -286 -166 -356c-67 -53 -159 -83 -247 -87c-38 -2 -57 -1 -75 0zM312 550 +c-57 0 -104 -67 -104 -132c0 -53 31 -87 76 -87c39 0 71 20 87 43c6 7 11 17 14 31c4 13 6 35 6 52c0 52 -25 93 -79 93z" /> + <glyph glyph-name="zero.slashfitted" unicode="&#xe008;" horiz-adv-x="541" +d="M180 230l200 277c-7 21 -24 40 -53 40c-89 0 -139 -168 -148 -290c0 -9 0 -18 1 -27zM391 413l-199 -273c6 -20 23 -37 49 -37c94 0 139 172 150 287v23zM571 640l-63 -78c16 -36 23 -80 23 -124c0 -203 -99 -449 -302 -449c-54 0 -95 17 -125 45l-46 -59l-48 45l55 67 +c-18 38 -26 86 -26 137c0 204 105 437 305 437c56 0 96 -17 126 -46l49 66z" /> + <glyph glyph-name="zero.taboldstyle" unicode="&#xf643;" horiz-adv-x="552" +d="M234 -11c-131 0 -205 93 -205 205c0 155 110 307 284 307c131 0 206 -97 206 -203c0 -161 -107 -309 -285 -309zM252 102c82 0 122 110 122 191c0 50 -24 94 -77 94c-82 0 -123 -111 -123 -189c0 -56 23 -96 78 -96z" /> + <glyph glyph-name="one.taboldstyle" unicode="&#xf644;" horiz-adv-x="552" +d="M448 491l-92 -491h-139l68 361h-2l-188 -62l2 114l233 78h118z" /> + <glyph glyph-name="two.taboldstyle" unicode="&#xf645;" horiz-adv-x="552" +d="M471 118l-22 -118h-427l15 82l86 51c114 71 193 132 193 186c0 44 -27 65 -75 65c-40 0 -87 -22 -114 -38l-30 90c48 36 118 67 204 67c92 0 168 -55 168 -152c0 -85 -63 -148 -161 -210l-45 -28v-4c33 6 67 9 95 9h113z" /> + <glyph glyph-name="three.taboldstyle" unicode="&#xf646;" horiz-adv-x="552" +d="M24 -102l33 109c22 -8 69 -16 108 -16c74 0 136 30 136 85c0 49 -57 71 -113 71c-18 0 -36 0 -51 -1l21 104c9 1 18 1 26 2c45 3 143 25 144 83c0 32 -25 50 -70 50c-43 0 -87 -16 -118 -33l-22 95c48 32 115 54 184 54c109 0 172 -55 172 -134 +c-2 -86 -76 -133 -141 -152v-2c64 -14 119 -58 119 -135c0 -132 -137 -203 -283 -203c-59 0 -111 9 -145 23z" /> + <glyph glyph-name="four.taboldstyle" unicode="&#xf647;" horiz-adv-x="552" +d="M408 35l-30 -159h-133l30 159h-279l19 95l304 362h176l-66 -349h77l-22 -108h-76zM296 143l24 125c6 37 16 83 25 119h-3c-19 -32 -45 -70 -68 -99l-116 -140l1 -5h137z" /> + <glyph glyph-name="five.taboldstyle" unicode="&#xf648;" horiz-adv-x="552" +d="M28 -101l31 107c25 -9 66 -16 107 -16c79 0 137 36 137 95c0 18 -7 38 -20 51c-36 34 -126 41 -194 39l105 315h308l-37 -121h-190l-34 -97c67 -3 128 -22 166 -60c29 -29 46 -66 46 -111c0 -142 -118 -226 -281 -226c-61 0 -115 11 -144 24z" /> + <glyph glyph-name="six.taboldstyle" unicode="&#xf649;" horiz-adv-x="552" +d="M257 101c57 0 103 59 103 125c0 53 -36 83 -77 83c-40 0 -63 -20 -79 -42c-13 -17 -22 -43 -22 -75c0 -57 31 -91 75 -91zM503 616l8 -107c-96 -7 -191 -37 -244 -91c-20 -19 -32 -39 -42 -59l2 -1c28 24 71 47 129 47c84 0 151 -63 151 -165c0 -138 -111 -251 -260 -251 +c-120 0 -206 77 -206 215c0 77 32 188 116 273c76 75 193 136 346 139z" /> + <glyph glyph-name="seven.taboldstyle" unicode="&#xf64a;" horiz-adv-x="552" +d="M523 490l-17 -92c-45 -99 -220 -365 -349 -523l-134 30c107 129 241 316 322 459l1 2h-263l22 124h418z" /> + <glyph glyph-name="eight.taboldstyle" unicode="&#xf64b;" horiz-adv-x="552" +d="M325 617c119 0 200 -63 200 -154c0 -69 -51 -109 -114 -138v-3c51 -28 95 -75 95 -135c0 -125 -131 -198 -258 -198c-138 1 -222 69 -222 166c0 79 62 130 139 163v3c-43 25 -72 66 -72 116c0 110 111 180 232 180zM314 515c-50 0 -85 -29 -85 -67c0 -39 41 -64 85 -80 +c39 14 73 43 73 83c0 36 -27 64 -73 64zM262 94c50 0 92 36 92 83c0 41 -38 70 -87 91c-48 -18 -90 -51 -90 -97c0 -48 38 -77 85 -77z" /> + <glyph glyph-name="nine.taboldstyle" unicode="&#xf64c;" horiz-adv-x="552" +d="M263 187c29 0 57 15 77 37c16 15 28 48 28 78c0 54 -29 90 -77 90c-52 0 -99 -55 -99 -124c0 -50 29 -81 71 -81zM52 -120l-6 109c23 1 53 3 86 8c102 17 172 77 198 137l-3 2c-23 -24 -68 -46 -118 -46c-105 0 -164 73 -164 165c0 139 116 250 261 250 +c127 0 204 -98 204 -219c0 -207 -151 -376 -385 -403c-31 -3 -56 -4 -73 -3z" /> + <glyph glyph-name="dollar.taboldstyle" unicode="&#xf653;" horiz-adv-x="552" +d="M259 -87h-84l16 84c-59 3 -115 23 -147 46l49 100c27 -19 83 -40 131 -40c37 0 83 12 83 46c0 17 -11 32 -74 56c-87 30 -122 66 -122 119c0 96 89 149 177 163l17 93h85l-16 -88c51 -4 96 -19 122 -34l-46 -97c-23 15 -67 32 -113 32c-36 0 -76 -12 -76 -42 +c0 -20 14 -29 77 -53c87 -30 125 -70 125 -123c0 -101 -97 -159 -187 -173z" /> + <glyph glyph-name="cent.taboldstyle" unicode="&#xf654;" horiz-adv-x="552" +d="M410 159l-1 -97c-27 -11 -75 -23 -111 -24l-14 -73h-83l15 76c-89 13 -152 72 -152 161c0 127 94 235 230 257l15 73h82l-13 -69c29 -1 74 -13 96 -22l-39 -98c-16 8 -55 20 -85 20c-89 0 -147 -61 -147 -139c0 -56 42 -84 102 -84c38 0 80 10 105 19z" /> + <glyph glyph-name="Euro.taboldstyle" unicode="&#xf64e;" horiz-adv-x="552" +d="M464 122l6 -106c-31 -15 -90 -27 -150 -27c-124 0 -206 72 -218 189h-66l16 69h52c2 15 4 31 7 44h-49l17 69h53c44 114 156 189 291 189c63 0 103 -14 126 -25l-40 -102c-19 8 -49 17 -87 17c-67 0 -121 -32 -148 -79h198l-16 -69h-208c-3 -16 -5 -29 -6 -44h204 +l-15 -69h-184c13 -52 58 -76 111 -76c36 0 80 9 106 20z" /> + <glyph glyph-name="florin.taboldstyle" unicode="&#xf64f;" horiz-adv-x="552" +d="M537 599l-37 -105c-13 7 -29 10 -47 10c-44 0 -73 -33 -88 -92l-12 -47h100l-14 -105h-112l-43 -178c-29 -117 -81 -213 -211 -213c-43 1 -73 10 -89 21l31 102c13 -6 30 -10 49 -10c36 0 63 24 93 144l31 134h-77l14 105h89l8 32c16 68 69 220 236 220 +c32 0 62 -7 79 -18z" /> + <glyph glyph-name="sterling.taboldstyle" unicode="&#xf651;" horiz-adv-x="552" +d="M508 545l-39 -110c-17 10 -47 17 -77 17c-63 0 -99 -43 -104 -107c-2 -10 -3 -20 -2 -29h138l-14 -83h-125c-5 -47 -25 -87 -63 -113v-2h254l-19 -118h-437l13 80c70 27 118 77 121 153h-87l14 83h70c-1 10 1 20 2 32c13 120 102 221 247 221c47 0 88 -12 108 -24z" /> + <glyph glyph-name="yen.taboldstyle" unicode="&#xf652;" horiz-adv-x="552" +d="M291 0h-136l20 105h-143l14 71h143l9 52h-143l14 71h112l-95 240h148l31 -126c8 -38 14 -65 21 -99h1c19 32 39 64 60 100l78 125h148l-191 -240h110l-13 -71h-145l-9 -52h144l-13 -71h-145z" /> + <glyph glyph-name="numbersign.taboldstyle" unicode="&#xf650;" horiz-adv-x="552" +d="M226 252h87l36 115h-87zM146 0h-89l51 162h-82l15 90h96l38 115h-85l14 90h98l51 160h87l-51 -160h88l51 160h88l-51 -160h81l-15 -90h-94l-36 -115h83l-15 -90h-98l-50 -162h-89l51 162h-87z" /> + <glyph glyph-name="zero.superior" unicode="&#x2070;" horiz-adv-x="366" +d="M219 401c-87 0 -136 60 -136 147c0 132 79 253 206 253c88 0 134 -62 134 -138c0 -143 -80 -262 -204 -262zM231 484c54 0 80 114 80 170c0 34 -8 64 -35 64c-54 0 -81 -123 -81 -170c0 -33 7 -64 36 -64z" /> + <glyph glyph-name="one.superior" horiz-adv-x="274" +d="M252 406h-117l57 295h-2l-78 -32l-9 80l122 47h101z" /> + <glyph glyph-name="two.superior" horiz-adv-x="341" +d="M349 406h-304l11 57l75 58c84 61 141 107 141 151c0 22 -15 40 -50 40c-32 0 -65 -13 -89 -29l-17 73c36 26 88 45 145 45c73 0 134 -35 134 -107c0 -79 -74 -131 -143 -181l-27 -19v-2h140z" /> + <glyph glyph-name="three.superior" horiz-adv-x="335" +d="M130 694l-10 71c32 21 81 36 138 36c72 0 133 -36 133 -90c0 -50 -43 -81 -98 -95v-2c39 -8 80 -37 80 -85c0 -84 -87 -128 -186 -128c-56 0 -109 13 -138 33l35 75c20 -14 59 -29 95 -29c42 0 73 21 73 50c0 31 -35 48 -84 48h-18l14 68h16c42 0 89 14 89 45 +c0 17 -13 31 -47 31c-33 0 -71 -14 -92 -28z" /> + <glyph glyph-name="four.superior" unicode="&#x2074;" horiz-adv-x="365" +d="M336 406h-107l17 91h-187l13 64l204 238h134l-43 -227h51l-15 -75h-50zM260 572l14 70c5 25 12 53 19 76h-3c-17 -25 -34 -51 -49 -69l-61 -75v-2h80z" /> + <glyph glyph-name="five.superior" unicode="&#x2075;" horiz-adv-x="337" +d="M396 796l-17 -87h-151l-13 -46c10 1 18 1 25 1c22 0 50 -5 72 -16c44 -17 64 -51 64 -91c0 -101 -92 -156 -208 -156c-53 0 -92 10 -112 21l25 80c16 -7 49 -17 88 -17c49 0 86 21 86 58c0 29 -28 48 -97 48c-22 0 -39 -1 -55 -3l58 208h235z" /> + <glyph glyph-name="six.superior" unicode="&#x2076;" horiz-adv-x="358" +d="M402 799l-15 -82c-12 2 -28 3 -44 1c-69 -6 -110 -39 -126 -75l1 -1c20 17 51 28 77 28c74 0 112 -50 112 -112c0 -88 -75 -157 -173 -157c-92 0 -152 62 -152 142c0 90 50 166 112 207c43 27 97 45 156 48c18 2 39 2 52 1zM239 478c32 0 57 31 57 74c0 27 -17 46 -46 46 +c-19 0 -36 -11 -46 -25c-4 -5 -6 -9 -9 -14c-3 -10 -4 -21 -4 -30c0 -28 18 -51 48 -51z" /> + <glyph glyph-name="seven.superior" unicode="&#x2077;" horiz-adv-x="316" +d="M117 796h291l-13 -67c-43 -65 -166 -245 -218 -323h-120c62 87 171 238 216 302v1h-173z" /> + <glyph glyph-name="eight.superior" unicode="&#x2078;" horiz-adv-x="363" +d="M286 801c66 0 131 -29 131 -96c0 -42 -38 -73 -78 -89l-1 -1c42 -20 65 -52 65 -86c0 -90 -96 -128 -179 -128c-89 0 -146 42 -146 100c0 53 44 90 93 108v1c-30 16 -50 41 -50 71c0 76 78 120 165 120zM238 475c27 0 50 19 50 47c0 26 -18 42 -47 52 +c-26 -7 -50 -24 -50 -57c0 -23 18 -42 47 -42zM270 729c-24 0 -41 -18 -41 -39c0 -18 13 -34 45 -46c22 6 40 23 40 47c0 21 -14 38 -44 38z" /> + <glyph glyph-name="nine.superior" unicode="&#x2079;" horiz-adv-x="357" +d="M88 401l12 84c11 -1 34 -3 53 -2c24 1 47 7 70 18c30 14 53 37 63 60l-1 1c-18 -16 -50 -24 -76 -24c-63 0 -117 38 -117 111c0 87 82 154 177 154c93 0 146 -61 146 -144c0 -89 -47 -162 -103 -205c-46 -36 -112 -53 -170 -55c-16 0 -38 1 -54 2zM259 724 +c-31 0 -56 -32 -56 -69c0 -28 19 -46 46 -46c21 0 36 8 46 20c4 4 7 11 10 20c1 6 2 15 2 24c0 28 -16 51 -48 51z" /> + <glyph glyph-name="period.superior" unicode="&#xf6e8;" horiz-adv-x="171" +d="M128 400c-32 0 -55 23 -55 56c0 38 27 69 68 69c33 0 57 -23 57 -57c0 -40 -28 -68 -70 -68z" /> + <glyph glyph-name="comma.superior" unicode="&#xf6e2;" horiz-adv-x="171" +d="M98 342l-74 -6c29 61 55 123 71 183l110 6c-30 -67 -66 -129 -107 -183z" /> + <glyph glyph-name="dollar.superior" unicode="&#xf6e4;" horiz-adv-x="341" +d="M225 353h-67l10 55c-43 2 -89 22 -109 38l34 78c26 -20 63 -36 112 -36c33 0 56 11 56 31c0 18 -14 30 -54 46c-46 20 -100 49 -100 107c0 66 54 112 134 120l10 51h67l-9 -50c39 -2 71 -14 89 -26l-33 -75c-17 10 -50 25 -96 25c-32 0 -48 -14 -48 -28 +c0 -17 19 -28 66 -48c50 -21 90 -53 90 -108c0 -78 -68 -117 -141 -125z" /> + <glyph glyph-name="cent.superior" unicode="&#xf6e0;" horiz-adv-x="310" +d="M251 399h-67l11 58c-33 6 -59 20 -75 42c-18 21 -27 49 -27 83c0 95 72 159 159 175l9 54h68l-9 -52c15 0 38 -4 53 -11l-30 -76c-12 5 -26 9 -51 9c-52 0 -87 -35 -87 -85c0 -42 30 -61 65 -61c21 0 38 5 54 12l7 -76c-23 -11 -46 -15 -69 -16z" /> + <glyph glyph-name="hyphen.superior" unicode="&#xf6e6;" horiz-adv-x="206" +d="M92 627h170l-13 -69h-170z" /> + <glyph glyph-name="parenleft.superior" unicode="&#x207d;" horiz-adv-x="204" +d="M221 833h74c-63 -83 -111 -199 -111 -319c0 -59 5 -109 23 -163h-72c-19 44 -33 103 -33 157c0 134 46 246 119 325z" /> + <glyph glyph-name="parenright.superior" unicode="&#x207e;" horiz-adv-x="204" +d="M117 351h-74c62 84 111 199 111 319c0 59 -5 108 -23 163h72c19 -43 33 -103 33 -157c0 -131 -45 -244 -119 -325z" /> + <glyph glyph-name="zero.inferior" unicode="&#x2080;" horiz-adv-x="366" +d="M113 -149c-87 0 -136 61 -136 147c0 132 79 253 206 253c88 0 134 -62 134 -138c0 -143 -80 -262 -204 -262zM125 -66c54 0 80 114 80 170c0 34 -8 64 -35 64c-54 0 -81 -123 -81 -170c0 -33 7 -64 36 -64z" /> + <glyph glyph-name="one.inferior" unicode="&#x2081;" horiz-adv-x="274" +d="M146 -144h-117l57 295h-2l-78 -32l-9 79l122 48h101z" /> + <glyph glyph-name="two.inferior" unicode="&#x2082;" horiz-adv-x="341" +d="M243 -144h-304l11 57l75 58c84 61 141 107 141 151c0 22 -15 40 -50 40c-32 0 -65 -13 -89 -29l-17 73c36 26 88 45 145 45c73 0 134 -35 134 -107c0 -79 -74 -131 -143 -181l-27 -19v-2h140z" /> + <glyph glyph-name="three.inferior" unicode="&#x2083;" horiz-adv-x="335" +d="M24 144l-10 71c32 21 81 36 138 36c72 0 133 -36 133 -90c0 -50 -43 -81 -98 -95v-2c39 -8 80 -37 80 -85c0 -83 -87 -128 -186 -128c-56 0 -109 13 -138 33l35 76c20 -15 59 -30 95 -30c42 0 73 21 73 50c0 31 -35 48 -84 48h-18l14 68h16c42 0 89 14 89 45 +c0 17 -13 31 -47 31c-33 0 -71 -14 -92 -28z" /> + <glyph glyph-name="four.inferior" unicode="&#x2084;" horiz-adv-x="365" +d="M230 -144h-107l17 91h-187l13 64l204 238h134l-43 -227h51l-15 -75h-50zM154 22l14 70c5 25 12 53 19 76h-3c-17 -25 -34 -51 -49 -69l-61 -75v-2h80z" /> + <glyph glyph-name="five.inferior" unicode="&#x2085;" horiz-adv-x="337" +d="M290 246l-17 -87h-151l-13 -46c10 1 18 1 25 1c22 0 50 -5 72 -16c44 -17 64 -51 64 -91c0 -101 -92 -156 -208 -156c-53 0 -92 10 -112 21l25 80c16 -7 49 -17 88 -17c49 0 86 21 86 58c0 29 -28 48 -97 48c-22 0 -39 -1 -55 -3l58 208h235z" /> + <glyph glyph-name="six.inferior" unicode="&#x2086;" horiz-adv-x="358" +d="M296 249l-15 -82c-12 2 -28 3 -44 1c-69 -6 -110 -39 -126 -75l1 -1c20 17 51 28 77 28c74 0 112 -50 112 -112c0 -88 -75 -157 -173 -157c-92 0 -152 62 -152 142c0 90 50 166 112 207c43 27 97 45 156 48c18 2 39 2 52 1zM133 -72c32 0 57 31 57 74c0 27 -17 46 -46 46 +c-19 0 -36 -11 -46 -25c-4 -5 -6 -9 -9 -14c-3 -10 -4 -21 -4 -30c0 -28 18 -51 48 -51z" /> + <glyph glyph-name="seven.inferior" unicode="&#x2087;" horiz-adv-x="316" +d="M11 246h291l-13 -67c-43 -65 -166 -245 -218 -323h-120c62 87 171 238 216 302v1h-173z" /> + <glyph glyph-name="eight.inferior" unicode="&#x2088;" horiz-adv-x="363" +d="M180 251c66 0 131 -29 131 -96c0 -42 -38 -73 -78 -89l-1 -1c42 -20 65 -52 65 -86c0 -90 -96 -128 -179 -128c-89 0 -146 42 -146 100c0 53 44 90 93 108v1c-30 16 -50 41 -50 71c0 76 78 120 165 120zM132 -75c27 0 50 19 50 47c0 26 -18 42 -47 52 +c-26 -7 -50 -24 -50 -57c0 -23 18 -42 47 -42zM164 179c-24 0 -41 -18 -41 -39c0 -18 13 -34 45 -46c22 6 40 23 40 47c0 21 -14 38 -44 38z" /> + <glyph glyph-name="nine.inferior" unicode="&#x2089;" horiz-adv-x="357" +d="M-18 -149l12 84c11 -2 34 -3 53 -3c24 2 47 7 70 19c30 13 53 37 63 60l-1 1c-18 -16 -50 -24 -76 -24c-63 0 -117 38 -117 111c0 87 82 154 177 154c93 0 146 -61 146 -144c0 -89 -47 -162 -103 -206c-46 -36 -112 -52 -170 -54c-16 -1 -38 1 -54 2zM153 174 +c-31 0 -56 -32 -56 -69c0 -28 19 -46 46 -46c21 0 36 8 46 20c4 4 7 11 10 20c1 6 2 15 2 24c0 28 -16 51 -48 51z" /> + <glyph glyph-name="period.inferior" unicode="&#xf6e7;" horiz-adv-x="171" +d="M22 -150c-32 0 -55 23 -55 56c0 38 27 69 68 69c33 0 57 -23 57 -57c0 -40 -28 -68 -70 -68z" /> + <glyph glyph-name="comma.inferior" unicode="&#xf6e1;" horiz-adv-x="171" +d="M-8 -208l-74 -6c29 61 55 123 71 183l110 6c-30 -67 -66 -129 -107 -183z" /> + <glyph glyph-name="dollar.inferior" unicode="&#xf6e3;" horiz-adv-x="341" +d="M119 -197h-67l10 54c-43 3 -89 23 -109 39l34 78c26 -20 63 -36 112 -36c33 0 56 11 56 31c0 18 -14 30 -54 46c-46 20 -100 49 -100 107c0 66 54 112 134 120l10 51h67l-9 -50c39 -2 71 -14 89 -26l-33 -75c-17 10 -50 25 -96 25c-32 0 -48 -14 -48 -29 +c0 -16 19 -27 66 -47c50 -21 90 -53 90 -108c0 -79 -68 -117 -141 -125z" /> + <glyph glyph-name="cent.inferior" unicode="&#xf6df;" horiz-adv-x="310" +d="M145 -151h-67l11 57c-33 6 -59 20 -75 42c-18 21 -27 49 -27 84c0 95 72 159 159 175l9 54h68l-9 -51c15 -1 38 -4 53 -11l-30 -77c-12 5 -26 9 -51 9c-52 0 -87 -36 -87 -85c0 -43 30 -62 65 -62c21 0 38 5 54 12l7 -76c-23 -11 -46 -15 -69 -16z" /> + <glyph glyph-name="hyphen.inferior" unicode="&#xf6e5;" horiz-adv-x="206" +d="M-14 77h170l-13 -69h-170z" /> + <glyph glyph-name="parenleft.inferior" unicode="&#x208d;" horiz-adv-x="204" +d="M115 283h74c-63 -83 -111 -199 -111 -319c0 -59 5 -109 23 -163h-72c-19 43 -33 103 -33 157c0 134 46 246 119 325z" /> + <glyph glyph-name="parenright.inferior" unicode="&#x208e;" horiz-adv-x="204" +d="M11 -199h-74c62 84 111 198 111 319c0 59 -5 108 -23 163h72c19 -43 33 -103 33 -157c0 -131 -45 -244 -119 -325z" /> + <glyph glyph-name="zero.numerator" unicode="&#xf661;" horiz-adv-x="366" +d="M191 261c-87 0 -136 61 -136 147c0 132 79 253 206 253c88 0 134 -62 134 -138c0 -143 -80 -262 -204 -262zM203 344c54 0 80 114 80 170c0 34 -8 64 -35 64c-54 0 -81 -123 -81 -170c0 -33 7 -64 36 -64z" /> + <glyph glyph-name="one.numerator" unicode="&#xf662;" horiz-adv-x="274" +d="M224 266h-117l57 295h-2l-78 -32l-9 79l122 48h101z" /> + <glyph glyph-name="two.numerator" unicode="&#xf663;" horiz-adv-x="341" +d="M321 266h-304l11 57l75 58c84 61 141 107 141 151c0 22 -15 40 -50 40c-32 0 -65 -13 -89 -29l-17 73c36 26 88 45 145 45c73 0 134 -35 134 -107c0 -79 -74 -131 -143 -181l-27 -19v-2h140z" /> + <glyph glyph-name="three.numerator" unicode="&#xf664;" horiz-adv-x="335" +d="M102 554l-10 71c32 21 81 36 138 36c72 0 133 -36 133 -90c0 -50 -43 -81 -98 -95v-2c39 -8 80 -37 80 -85c0 -83 -87 -128 -186 -128c-56 0 -109 13 -138 33l35 76c20 -15 59 -30 95 -30c42 0 73 21 73 50c0 31 -35 48 -84 48h-18l14 68h16c42 0 89 14 89 45 +c0 17 -13 31 -47 31c-33 0 -71 -14 -92 -28z" /> + <glyph glyph-name="four.numerator" unicode="&#xf665;" horiz-adv-x="365" +d="M308 266h-107l17 91h-187l13 64l204 238h134l-43 -227h51l-15 -75h-50zM232 432l14 70c5 25 12 53 19 76h-3c-17 -25 -34 -51 -49 -69l-61 -75v-2h80z" /> + <glyph glyph-name="five.numerator" unicode="&#xf666;" horiz-adv-x="337" +d="M368 656l-17 -87h-151l-13 -46c10 1 18 1 25 1c22 0 50 -5 72 -16c44 -17 64 -51 64 -91c0 -101 -92 -156 -208 -156c-53 0 -92 10 -112 21l25 80c16 -7 49 -17 88 -17c49 0 86 21 86 58c0 29 -28 48 -97 48c-22 0 -39 -1 -55 -3l58 208h235z" /> + <glyph glyph-name="six.numerator" unicode="&#xf667;" horiz-adv-x="358" +d="M374 659l-15 -82c-12 2 -28 3 -44 1c-69 -6 -110 -39 -126 -75l1 -1c20 17 51 28 77 28c74 0 112 -50 112 -112c0 -88 -75 -157 -173 -157c-92 0 -152 62 -152 142c0 90 50 166 112 207c43 27 97 45 156 48c18 2 39 2 52 1zM211 338c32 0 57 31 57 74c0 27 -17 46 -46 46 +c-19 0 -36 -11 -46 -25c-4 -5 -6 -9 -9 -14c-3 -10 -4 -21 -4 -30c0 -28 18 -51 48 -51z" /> + <glyph glyph-name="seven.numerator" unicode="&#xf668;" horiz-adv-x="316" +d="M89 656h291l-13 -67c-43 -65 -166 -245 -218 -323h-120c62 87 171 238 216 302v1h-173z" /> + <glyph glyph-name="eight.numerator" unicode="&#xf669;" horiz-adv-x="363" +d="M258 661c66 0 131 -29 131 -96c0 -43 -38 -73 -78 -89l-1 -1c42 -20 65 -52 65 -86c0 -90 -96 -128 -179 -128c-89 0 -146 42 -146 100c0 53 44 90 93 108v1c-30 16 -50 41 -50 71c0 76 78 120 165 120zM210 335c27 0 50 19 50 47c0 26 -18 42 -47 52 +c-26 -7 -50 -24 -50 -57c0 -23 18 -42 47 -42zM242 589c-24 0 -41 -18 -41 -39c0 -18 13 -34 45 -46c22 6 40 23 40 47c0 21 -14 38 -44 38z" /> + <glyph glyph-name="nine.numerator" unicode="&#xf66a;" horiz-adv-x="357" +d="M60 261l12 84c11 -2 34 -3 53 -3c24 2 47 7 70 19c30 13 53 37 63 59l-1 2c-18 -16 -50 -24 -76 -24c-63 0 -117 38 -117 111c0 87 82 154 177 154c93 0 146 -61 146 -144c0 -90 -47 -162 -103 -206c-46 -36 -112 -52 -170 -54c-16 -1 -38 1 -54 2zM231 584 +c-31 0 -56 -32 -56 -69c0 -28 19 -46 46 -46c21 0 36 8 46 20c4 3 7 10 10 20c1 6 2 15 2 24c0 28 -16 51 -48 51z" /> + <glyph glyph-name="period.numerator" unicode="&#xf66c;" horiz-adv-x="171" +d="M100 260c-32 0 -55 23 -55 56c0 38 27 69 68 69c33 0 57 -23 57 -57c0 -40 -28 -68 -70 -68z" /> + <glyph glyph-name="comma.numerator" unicode="&#xf66b;" horiz-adv-x="171" +d="M70 202l-74 -6c29 61 55 123 71 183l110 6c-30 -67 -66 -129 -107 -183z" /> + <glyph glyph-name="dollar.numerator" unicode="&#xf62f;" horiz-adv-x="341" +d="M197 213h-67l10 54c-43 3 -89 23 -109 39l34 78c26 -20 63 -36 112 -36c33 0 56 11 56 31c0 18 -14 30 -54 46c-46 20 -100 49 -100 106c0 67 54 113 134 121l10 51h67l-9 -50c39 -2 71 -14 89 -26l-33 -75c-17 10 -50 25 -96 25c-32 0 -48 -14 -48 -28 +c0 -17 19 -28 66 -48c50 -21 90 -53 90 -108c0 -79 -68 -117 -141 -125z" /> + <glyph glyph-name="cent.numerator" unicode="&#xf62e;" horiz-adv-x="310" +d="M223 259h-67l11 58c-33 6 -59 20 -75 42c-18 21 -27 49 -27 83c0 95 72 159 159 175l9 54h68l-9 -51c15 -1 38 -4 53 -11l-30 -77c-12 5 -26 9 -51 9c-52 0 -87 -35 -87 -84c0 -43 30 -62 65 -62c21 0 38 5 54 12l7 -76c-23 -11 -46 -15 -69 -16z" /> + <glyph glyph-name="hyphen.numerator" unicode="&#xf630;" horiz-adv-x="206" +d="M64 487h170l-13 -69h-170z" /> + <glyph glyph-name="parenleft.numerator" unicode="&#xf631;" horiz-adv-x="204" +d="M193 693h74c-63 -83 -111 -199 -111 -319c0 -59 5 -109 23 -163h-72c-19 43 -33 103 -33 157c0 134 46 246 119 325z" /> + <glyph glyph-name="parenright.numerator" unicode="&#xf632;" horiz-adv-x="204" +d="M89 211h-74c62 84 111 199 111 319c0 59 -5 108 -23 163h72c19 -43 33 -103 33 -157c0 -131 -45 -244 -119 -325z" /> + <glyph glyph-name="zero.denominator" unicode="&#xf655;" horiz-adv-x="366" +d="M138 -5c-87 0 -136 61 -136 147c0 132 79 253 206 253c88 0 134 -62 134 -138c0 -143 -80 -262 -204 -262zM150 78c54 0 80 114 80 170c0 34 -8 64 -35 64c-54 0 -81 -123 -81 -170c0 -33 7 -64 36 -64z" /> + <glyph glyph-name="one.denominator" unicode="&#xf656;" horiz-adv-x="274" +d="M172 0h-117l57 295h-2l-78 -32l-9 80l122 47h101z" /> + <glyph glyph-name="two.denominator" unicode="&#xf657;" horiz-adv-x="341" +d="M268 0h-304l11 57l75 58c84 61 141 107 141 151c0 22 -15 40 -50 40c-32 0 -65 -13 -89 -29l-17 73c36 26 88 45 145 45c73 0 134 -35 134 -107c0 -79 -74 -131 -143 -180l-27 -20v-2h140z" /> + <glyph glyph-name="three.denominator" unicode="&#xf658;" horiz-adv-x="335" +d="M50 288l-10 71c32 21 81 36 138 36c72 0 133 -36 133 -90c0 -50 -43 -81 -98 -95v-2c39 -8 80 -37 80 -85c0 -83 -87 -128 -186 -128c-56 0 -109 13 -138 33l35 76c20 -15 59 -30 95 -30c42 0 73 21 73 50c0 31 -35 48 -84 48h-18l14 68h16c42 0 89 14 89 45 +c0 17 -13 31 -47 31c-33 0 -71 -14 -92 -28z" /> + <glyph glyph-name="four.denominator" unicode="&#xf659;" horiz-adv-x="365" +d="M256 0h-107l17 91h-187l13 64l204 238h135l-44 -227h51l-15 -75h-50zM180 166l14 70c5 25 12 53 19 76h-3c-17 -26 -34 -51 -49 -69l-61 -76v-1h80z" /> + <glyph glyph-name="five.denominator" unicode="&#xf65a;" horiz-adv-x="337" +d="M315 390l-17 -87h-151l-13 -46c10 1 18 1 25 1c22 0 50 -5 72 -16c44 -17 64 -51 64 -91c0 -101 -92 -156 -208 -156c-53 0 -92 10 -112 21l25 80c16 -7 49 -17 88 -17c49 0 86 21 86 58c0 29 -28 48 -97 48c-22 0 -39 -1 -55 -3l58 208h235z" /> + <glyph glyph-name="six.denominator" unicode="&#xf65b;" horiz-adv-x="358" +d="M322 393l-15 -82c-12 2 -28 3 -44 1c-69 -6 -111 -39 -127 -75l1 -1c20 17 52 28 78 28c74 0 112 -50 112 -112c0 -88 -75 -157 -174 -157c-92 0 -152 62 -152 142c0 90 50 166 113 207c42 27 97 45 156 48c18 2 39 2 52 1zM159 72c32 0 57 31 57 74c0 27 -17 46 -47 46 +c-18 0 -36 -11 -46 -25c-4 -5 -6 -9 -9 -14c-3 -10 -4 -21 -4 -30c0 -28 18 -51 49 -51z" /> + <glyph glyph-name="seven.denominator" unicode="&#xf65c;" horiz-adv-x="316" +d="M37 390h291l-13 -67c-43 -65 -166 -245 -218 -323h-120c62 87 171 238 216 302v1h-173z" /> + <glyph glyph-name="eight.denominator" unicode="&#xf65d;" horiz-adv-x="363" +d="M205 395c66 0 131 -29 131 -96c0 -42 -38 -73 -78 -89l-1 -1c42 -20 65 -52 65 -86c0 -90 -96 -128 -179 -128c-89 0 -146 42 -146 100c0 53 44 90 93 108v1c-30 16 -50 41 -50 71c0 76 78 120 165 120zM157 69c27 0 50 19 50 47c0 26 -18 42 -47 52 +c-26 -7 -50 -24 -50 -57c0 -23 18 -42 47 -42zM189 323c-24 0 -41 -18 -41 -39c0 -18 13 -34 45 -46c22 6 40 23 40 47c0 21 -14 38 -44 38z" /> + <glyph glyph-name="nine.denominator" unicode="&#xf65e;" horiz-adv-x="357" +d="M7 -5l12 84c11 -2 34 -3 53 -3c24 2 47 7 70 19c30 13 53 37 63 60l-1 1c-18 -16 -50 -24 -76 -24c-63 0 -117 38 -117 111c0 87 82 154 177 154c93 0 146 -61 146 -144c0 -89 -47 -162 -103 -206c-46 -36 -112 -52 -170 -54c-16 -1 -38 1 -54 2zM178 318 +c-31 0 -56 -32 -56 -69c0 -28 19 -46 46 -46c21 0 36 8 46 20c4 4 7 11 10 20c1 6 2 15 2 24c0 28 -16 51 -48 51z" /> + <glyph glyph-name="period.denominator" unicode="&#xf660;" horiz-adv-x="171" +d="M47 -6c-32 0 -55 23 -55 56c0 38 27 69 68 69c33 0 57 -23 57 -57c0 -40 -28 -68 -70 -68z" /> + <glyph glyph-name="comma.denominator" unicode="&#xf65f;" horiz-adv-x="171" +d="M17 -64l-74 -6c29 61 55 123 71 183l110 6c-30 -67 -66 -129 -107 -183z" /> + <glyph glyph-name="dollar.denominator" unicode="&#xf62a;" horiz-adv-x="341" +d="M144 -53h-67l10 54c-43 3 -89 23 -109 39l34 78c26 -20 63 -36 112 -36c33 0 56 11 56 31c0 18 -14 30 -54 46c-46 20 -100 49 -100 107c0 66 54 112 134 120l10 51h67l-9 -50c39 -2 71 -14 89 -26l-33 -75c-17 10 -50 25 -96 25c-32 0 -48 -14 -48 -28 +c0 -17 19 -28 66 -48c50 -21 90 -53 90 -108c0 -79 -68 -117 -141 -125z" /> + <glyph glyph-name="cent.denominator" unicode="&#xf629;" horiz-adv-x="310" +d="M171 -7h-67l11 58c-33 6 -59 20 -75 42c-18 21 -27 49 -27 83c0 95 72 159 159 175l9 54h68l-9 -52c15 0 38 -4 53 -11l-30 -76c-12 5 -26 9 -51 9c-52 0 -87 -35 -87 -85c0 -42 30 -61 65 -61c21 0 38 5 54 12l7 -76c-23 -11 -46 -15 -69 -16z" /> + <glyph glyph-name="hyphen.denominator" unicode="&#xf62b;" horiz-adv-x="206" +d="M11 221h170l-13 -69h-170z" /> + <glyph glyph-name="parenleft.denominator" unicode="&#xf62c;" horiz-adv-x="204" +d="M140 427h74c-63 -83 -111 -199 -111 -319c0 -59 5 -109 23 -163h-72c-19 44 -33 103 -33 157c0 134 46 246 119 325z" /> + <glyph glyph-name="parenright.denominator" unicode="&#xf62d;" horiz-adv-x="204" +d="M37 -55h-74c62 84 111 199 111 319c0 59 -5 108 -23 163h72c19 -43 33 -103 33 -157c0 -131 -45 -244 -119 -325z" /> + <glyph glyph-name="at.cap" unicode="&#xf633;" horiz-adv-x="749" +d="M449 343l14 95c-8 2 -19 4 -31 4c-66 0 -118 -65 -118 -142c0 -38 17 -62 50 -62c37 0 76 47 85 105zM534 82l17 -57c-59 -28 -112 -36 -182 -36c-168 0 -312 119 -312 315c0 204 148 381 373 381c177 0 303 -121 303 -289c0 -147 -82 -239 -190 -239 +c-47 0 -81 25 -86 77h-2c-32 -50 -76 -77 -130 -77c-64 0 -112 49 -112 131c0 123 91 233 235 233c44 0 94 -11 119 -24l-30 -186c-10 -59 -3 -86 25 -87c43 -2 97 53 97 169c0 131 -84 231 -239 231c-154 0 -287 -119 -287 -311c0 -168 105 -262 257 -262 +c49 0 104 11 144 31z" /> + <glyph glyph-name="emdash.cap" unicode="&#xf6bc;" horiz-adv-x="1000" +d="M54 376h940l-18 -94h-940z" /> + <glyph glyph-name="endash.cap" unicode="&#xf6bb;" horiz-adv-x="500" +d="M54 376h440l-18 -94h-440z" /> + <glyph glyph-name="exclamdown.cap" unicode="&#xf6b4;" horiz-adv-x="269" +d="M164 0h-155l109 452h111zM208 685c48 0 80 -35 80 -82c0 -53 -40 -100 -97 -100c-48 0 -82 35 -82 84c0 57 41 98 99 98z" /> + <glyph glyph-name="guillemotleft.cap" unicode="&#xf6b6;" horiz-adv-x="461" +d="M281 518l-144 -193l96 -188h-100l-97 190l135 191h110zM474 518l-144 -193l96 -188h-100l-97 190l135 191h110z" /> + <glyph glyph-name="guillemotright.cap" unicode="&#xf6b7;" horiz-adv-x="460" +d="M163 331l-96 187h100l97 -191l-135 -190h-110zM356 331l-96 187h100l97 -191l-135 -190h-110z" /> + <glyph glyph-name="guilsinglleft.cap" unicode="&#xf6b8;" horiz-adv-x="268" +d="M281 518l-144 -193l96 -188h-100l-97 190l135 191h110z" /> + <glyph glyph-name="guilsinglright.cap" unicode="&#xf6b9;" horiz-adv-x="267" +d="M163 331l-96 187h100l97 -191l-135 -190h-110z" /> + <glyph glyph-name="hyphen.cap" unicode="&#xf6ba;" horiz-adv-x="322" +d="M58 388h259l-20 -101h-259z" /> + <glyph glyph-name="questiondown.cap" unicode="&#xf6b5;" horiz-adv-x="437" +d="M207 456h140c-1 -9 -2 -18 -3 -26c-8 -54 -36 -107 -90 -167c-40 -42 -81 -76 -81 -111c0 -26 14 -47 59 -48c44 0 81 10 109 28l19 -101c-37 -23 -94 -43 -169 -43c-97 0 -166 55 -166 137c0 76 48 128 108 189c40 39 60 73 69 118zM312 685c47 0 79 -35 79 -82 +c0 -53 -40 -100 -97 -100c-48 0 -82 35 -82 84c0 57 41 98 100 98z" /> + <glyph glyph-name="braceleft.cap" unicode="&#xf6b2;" horiz-adv-x="314" +d="M42 287l14 77c68 3 82 38 88 68c9 49 10 106 19 157c18 94 80 135 172 135h37l-16 -84h-18c-43 0 -64 -27 -73 -72c-8 -36 -8 -74 -16 -125c-11 -76 -45 -105 -103 -117v-2c40 -9 66 -35 66 -74c0 -29 -10 -65 -21 -101c-10 -35 -21 -69 -21 -93c0 -29 16 -46 48 -46h18 +l-15 -84h-30c-79 0 -131 28 -131 106c0 35 13 75 23 111c11 37 23 71 23 95c0 29 -20 48 -64 49z" /> + <glyph glyph-name="braceright.cap" unicode="&#xf6b3;" horiz-adv-x="314" +d="M307 363l-14 -77c-68 -3 -82 -38 -88 -68c-9 -49 -10 -106 -19 -157c-18 -94 -80 -135 -172 -135h-37l16 84h18c43 0 64 27 73 72c8 36 8 74 16 125c11 76 45 105 103 117v2c-40 9 -66 35 -66 74c0 29 12 65 22 100c10 36 21 70 21 93c0 30 -16 47 -48 47h-18l15 84h30 +c79 0 131 -28 131 -106c0 -36 -11 -74 -23 -111c-12 -36 -24 -70 -24 -95c0 -29 20 -48 64 -49z" /> + <glyph glyph-name="bracketleft.cap" unicode="&#xf6b0;" horiz-adv-x="314" +d="M212 -74h-201l152 798h201l-16 -83h-93l-121 -632h93z" /> + <glyph glyph-name="bracketright.cap" unicode="&#xf6b1;" horiz-adv-x="314" +d="M137 724h201l-152 -798h-201l16 83h93l120 632h-93z" /> + <glyph glyph-name="parenleft.cap" unicode="&#xf6ae;" horiz-adv-x="314" +d="M272 728h107c-103 -128 -191 -318 -191 -533c0 -96 8 -176 41 -273h-102c-35 78 -55 171 -55 268c0 232 88 418 200 538z" /> + <glyph glyph-name="parenright.cap" unicode="&#xf6af;" horiz-adv-x="314" +d="M82 -78h-108c102 128 191 319 191 534c0 97 -8 175 -41 272h103c35 -78 54 -171 54 -267c0 -232 -88 -418 -199 -539z" /> + <glyph glyph-name="periodcentered.cap" unicode="&#xf6bd;" horiz-adv-x="260" +d="M134 241c-48 0 -80 35 -80 83c0 55 40 102 97 102c49 0 83 -35 83 -86c0 -58 -41 -99 -100 -99z" /> + <glyph glyph-name="lessequal" unicode="&#x2264;" horiz-adv-x="596" +d="M538 117l-479 177v91l479 176v-101l-351 -120v-2l351 -119v-102zM538 0h-478v87h478v-87z" /> + <glyph glyph-name="greaterequal" unicode="&#x2265;" horiz-adv-x="596" +d="M538 294l-479 -177v102l350 119v2l-350 120v101l479 -176v-91zM537 0h-478v87h478v-87z" /> + <glyph glyph-name="approxequal" unicode="&#x2248;" horiz-adv-x="596" +d="M520 435l56 -59c-34 -55 -93 -98 -162 -98c-53 0 -91 22 -123 37c-30 13 -62 34 -109 34c-49 0 -87 -34 -112 -64l-51 63c35 49 92 94 164 94c55 0 90 -22 122 -36c30 -13 62 -34 108 -34c50 0 87 40 107 63zM524 223l54 -57c-35 -58 -95 -100 -164 -100 +c-52 0 -90 22 -122 36c-30 13 -62 34 -111 34c-45 0 -85 -34 -110 -63l-50 63c34 51 95 93 162 93c55 0 91 -22 123 -36c30 -13 62 -34 108 -34c50 0 88 34 110 64z" /> + <glyph glyph-name="notequal" unicode="&#x2260;" horiz-adv-x="596" +d="M556 115h-309l-62 -101h-98l65 101h-112v93h172l75 119h-247v93h307l62 101h97l-64 -101h114v-93h-174l-76 -119h250v-93z" /> + <glyph glyph-name="infinity" unicode="&#x221e;" horiz-adv-x="752" +d="M554 97c-73 0 -130 55 -179 102c-52 -48 -101 -102 -187 -102c-96 0 -161 72 -161 166c0 90 67 168 169 168c74 0 131 -55 180 -103c52 49 101 103 187 103c96 0 161 -72 161 -168c0 -88 -67 -166 -170 -166zM554 189c40 0 72 33 72 74c0 44 -31 76 -70 76 +c-46 0 -84 -40 -119 -75c31 -29 69 -75 117 -75zM196 189c45 0 83 39 118 73c-31 30 -69 77 -116 77c-41 0 -73 -34 -73 -76c0 -43 31 -74 71 -74z" /> + <glyph glyph-name="lozenge" unicode="&#x25ca;" horiz-adv-x="593" +d="M558 324l-258 -362h-112l-124 362l258 362h112zM435 321l-70 226c-3 9 -7 21 -8 30h-2c-5 -9 -13 -21 -20 -30l-149 -220l70 -226c3 -9 7 -22 9 -30h2c5 8 13 21 19 30z" /> + <glyph glyph-name="integral" unicode="&#x222b;" horiz-adv-x="337" +d="M414 798l-25 -88c-9 3 -21 5 -34 5c-72 0 -85 -100 -97 -176c-23 -151 -29 -275 -54 -444c-19 -120 -62 -260 -205 -260c-28 0 -48 5 -65 13l26 93c9 -4 23 -7 37 -7c69 0 85 102 93 157c28 172 33 298 57 457c21 135 70 260 208 260c24 0 45 -4 59 -10z" /> + <glyph glyph-name="partialdiff" unicode="&#x2202;" horiz-adv-x="566" +d="M146 578l-26 98c28 20 97 56 189 56c150 0 246 -107 246 -291c0 -199 -100 -452 -329 -452c-129 0 -197 89 -197 201c0 149 110 266 253 266c71 0 112 -39 127 -66h1c3 17 5 43 5 65c-1 99 -52 159 -134 159c-60 0 -112 -22 -135 -36zM248 100c65 0 112 84 130 176 +c-8 28 -39 69 -86 69c-70 0 -118 -77 -118 -154c0 -58 30 -91 74 -91z" /> + <glyph glyph-name="product" unicode="&#x220f;" horiz-adv-x="652" +d="M674 528h-74l-120 -618h-137l120 618h-171l-121 -618h-136l120 618h-74l24 122h593z" /> + <glyph glyph-name="radical" unicode="&#x221a;" horiz-adv-x="568" +d="M688 840l-365 -927h-98l-83 419l-77 -31l-18 67l182 73l51 -305c5 -29 8 -58 9 -82h2c7 22 18 53 31 85l268 701h98z" /> + <glyph glyph-name="summation" unicode="&#x2211;" horiz-adv-x="561" +d="M469 -90h-494l15 86l254 283l-146 272l17 99h457l-22 -125h-282l-1 -3l132 -240l-216 -243l-1 -4h309z" /> + <glyph glyph-name="Delta" unicode="&#x2206;" horiz-adv-x="615" +d="M547 0h-548l15 76l291 576h182l75 -575zM175 122h239l-27 246c-5 44 -13 132 -15 168h-4c-14 -37 -45 -111 -67 -158z" /> + <glyph glyph-name="Omega" unicode="&#x2126;" horiz-adv-x="721" +d="M137 110l1 5c-42 41 -85 117 -85 208c0 206 164 362 367 362c184 0 285 -126 285 -264c0 -149 -93 -256 -165 -306v-5h121l-19 -110h-288l15 88c84 54 182 159 182 318c0 94 -51 162 -144 162c-112 0 -203 -114 -203 -277c0 -89 34 -163 85 -203l-15 -88h-288l20 110h131 +z" /> + <glyph glyph-name="pi" unicode="&#x3c0;" horiz-adv-x="573" +d="M570 378h-61l-41 -220c-13 -71 -20 -127 -18 -158h-138c-8 18 -2 81 11 149l42 229h-101c-7 -28 -13 -58 -20 -89c-30 -119 -72 -241 -108 -289h-138c39 65 79 179 106 286c9 33 15 65 20 92c-32 0 -65 -1 -91 -8l-2 83c24 24 72 37 176 37h388z" /> + <glyph glyph-name="aringacute" unicode="&#x1fb;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-3c-45 -81 -107 -108 -164 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -25 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM447 861h143l-156 -115h-107zM383 722c58 0 107 -32 107 -94c-2 -66 -57 -103 -124 -103c-57 0 -104 34 -106 90c-2 65 51 107 123 107zM376 672c-28 0 -47 -23 -47 -52c0 -24 15 -45 43 -45c30 0 49 24 49 51c0 26 -15 46 -45 46z" /> + <glyph glyph-name="Abreve" unicode="&#x102;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM277 845h80c0 -25 14 -49 53 -49c41 0 60 22 66 49h82c-12 -68 -58 -122 -156 -122s-133 54 -125 122z" /> + <glyph glyph-name="Amacron" unicode="&#x100;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM289 813h254l-15 -79h-254z" /> + <glyph glyph-name="Aogonek" unicode="&#x104;" horiz-adv-x="618" +d="M485 674l78 -674h-71c-19 -26 -36 -60 -36 -85c0 -24 15 -40 42 -40c18 0 36 5 47 9l9 -70c-28 -23 -69 -33 -105 -33c-62 0 -98 32 -98 89c0 51 39 105 61 132l-13 173h-194l-79 -175h-154l328 674h185zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2 +c-17 -41 -36 -93 -54 -132z" /> + <glyph glyph-name="i.dot" horiz-adv-x="265" +d="M157 0h-144l93 489h144zM197 550h-2c-40 0 -69 28 -69 70c0 49 39 82 83 82c43 0 73 -28 73 -71c0 -51 -39 -81 -85 -81z" /> + <glyph glyph-name="Cacute" unicode="&#x106;" horiz-adv-x="583" +d="M512 135l12 -116c-36 -16 -96 -29 -177 -29c-179 0 -298 109 -298 286c0 151 68 269 170 337c70 48 152 71 247 71c73 0 128 -17 148 -28l-40 -117c-19 9 -64 22 -122 22s-113 -18 -154 -52c-56 -47 -93 -123 -93 -217c0 -107 61 -179 179 -179c48 0 95 8 128 22z +M444 840h160l-132 -126h-122z" /> + <glyph glyph-name="Ccaron" unicode="&#x10c;" horiz-adv-x="583" +d="M512 135l12 -116c-36 -16 -96 -29 -177 -29c-179 0 -298 109 -298 286c0 151 68 269 170 337c70 48 152 71 247 71c73 0 128 -17 148 -28l-40 -117c-19 9 -64 22 -122 22s-113 -18 -154 -52c-56 -47 -93 -123 -93 -217c0 -107 61 -179 179 -179c48 0 95 8 128 22z +M474 714h-109l-80 126h102l39 -64h2l59 64h111z" /> + <glyph glyph-name="Ccircumflex" unicode="&#x108;" horiz-adv-x="583" +d="M512 135l12 -116c-36 -16 -96 -29 -177 -29c-179 0 -298 109 -298 286c0 151 68 269 170 337c70 48 152 71 247 71c73 0 128 -17 148 -28l-40 -117c-19 9 -64 22 -122 22s-113 -18 -154 -52c-56 -47 -93 -123 -93 -217c0 -107 61 -179 179 -179c48 0 95 8 128 22z +M388 839h109l80 -126h-101l-40 61h-2l-58 -61h-111z" /> + <glyph glyph-name="Cdotaccent" unicode="&#x10a;" horiz-adv-x="583" +d="M513 135l12 -116c-36 -16 -97 -29 -178 -29c-179 0 -298 109 -298 286c0 151 68 269 170 337c70 48 153 71 248 71c73 0 128 -17 148 -28l-40 -117c-20 9 -64 22 -122 22s-114 -18 -155 -52c-56 -47 -93 -123 -93 -217c0 -107 61 -179 180 -179c47 0 94 8 128 22z +M439 715c-35 0 -66 26 -66 64c0 44 34 74 75 74c39 0 65 -29 65 -65c0 -44 -34 -73 -74 -73z" /> + <glyph glyph-name="Dcaron" unicode="&#x10e;" horiz-adv-x="681" +d="M20 8l125 656c58 10 121 15 187 15c105 0 188 -24 245 -73c55 -45 89 -111 89 -211c0 -131 -55 -243 -138 -310c-78 -63 -177 -90 -323 -90c-81 0 -151 7 -185 13zM271 559l-85 -444c17 -2 38 -3 63 -3c78 0 147 27 191 78c46 52 70 123 70 204c0 107 -59 170 -178 170 +c-25 0 -46 -2 -61 -5zM432 710h-109l-80 126h102l39 -64h2l59 64h111z" /> + <glyph glyph-name="Ebreve" unicode="&#x114;" horiz-adv-x="517" +d="M480 407l-23 -121h-240l-31 -163h269l-23 -123h-413l128 674h398l-24 -123h-253l-28 -144h240zM227 839h80c-1 -26 13 -50 53 -49c41 0 59 22 65 49h82c-12 -69 -58 -123 -155 -122c-98 0 -133 54 -125 122z" /> + <glyph glyph-name="Ecaron" unicode="&#x11a;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-24 -123h-413l128 674h399l-24 -123h-254l-28 -144h241zM406 710h-109l-80 126h102l39 -64h2l59 64h111z" /> + <glyph glyph-name="Edotaccent" unicode="&#x116;" horiz-adv-x="517" +d="M480 407l-23 -121h-240l-31 -163h270l-24 -123h-413l127 674h400l-24 -123h-254l-28 -144h240zM357 712c-35 0 -66 26 -66 64c0 44 34 74 75 74c39 0 65 -29 65 -65c0 -44 -34 -73 -74 -73z" /> + <glyph glyph-name="Emacron" unicode="&#x112;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241zM242 813h254l-16 -79h-254z" /> + <glyph glyph-name="Eogonek" unicode="&#x118;" horiz-adv-x="517" +d="M19 0l128 674h399l-24 -123h-254l-28 -144h241l-24 -121h-239l-31 -163h269l-24 -123h-19c-45 -31 -75 -68 -75 -97c0 -19 12 -29 28 -29c17 0 36 6 46 10l18 -71c-30 -22 -70 -32 -107 -32c-60 0 -93 34 -93 82c0 52 41 104 87 137h-298z" /> + <glyph glyph-name="Gbreve" unicode="&#x11e;" horiz-adv-x="673" +d="M643 384l-68 -353c-51 -17 -133 -38 -218 -38c-92 0 -169 24 -224 74c-54 47 -85 122 -85 208c0 126 51 235 137 308c76 63 181 98 298 98c87 0 152 -17 178 -30l-43 -121c-30 14 -83 27 -143 27c-67 0 -126 -19 -171 -54c-59 -46 -98 -126 -98 -218 +c0 -113 67 -170 173 -170c34 0 57 5 74 12l27 142h-105l23 115h245zM320 841h80c-1 -25 13 -49 53 -49c41 0 60 22 66 49h81c-11 -68 -57 -122 -155 -122s-133 54 -125 122z" /> + <glyph glyph-name="Gcircumflex" unicode="&#x11c;" horiz-adv-x="673" +d="M643 384l-68 -353c-51 -17 -133 -38 -218 -38c-92 0 -169 24 -224 74c-54 47 -85 122 -85 208c0 126 51 235 137 308c76 63 181 98 298 98c87 0 152 -17 178 -30l-43 -121c-30 14 -83 27 -143 27c-67 0 -126 -19 -171 -54c-59 -46 -98 -126 -98 -218 +c0 -113 67 -170 173 -170c34 0 57 5 74 12l27 142h-105l23 115h245zM421 836h109l80 -126h-101l-40 61h-2l-59 -61h-111z" /> + <glyph glyph-name="Gcommaaccent" unicode="&#x122;" horiz-adv-x="673" +d="M643 384l-68 -353c-51 -17 -133 -38 -218 -38c-92 0 -169 24 -224 74c-54 47 -85 122 -85 208c0 126 51 235 137 308c76 63 181 98 298 98c87 0 152 -17 178 -30l-43 -121c-30 14 -83 27 -143 27c-67 0 -126 -19 -171 -54c-59 -46 -98 -126 -98 -218 +c0 -113 67 -170 173 -170c34 0 57 5 74 12l27 142h-105l23 115h245zM229 -240l-14 66c35 6 77 27 77 68c0 20 -9 37 -20 47l107 18c12 -10 26 -34 26 -63c0 -93 -95 -133 -176 -136z" /> + <glyph glyph-name="Gdotaccent" unicode="&#x120;" horiz-adv-x="673" +d="M643 384l-67 -353c-52 -17 -133 -38 -219 -38c-92 0 -169 24 -224 74c-54 47 -85 122 -85 208c0 126 51 235 137 308c77 63 181 98 298 98c88 0 153 -17 179 -30l-43 -121c-30 14 -83 27 -143 27c-67 0 -127 -19 -172 -54c-59 -46 -98 -126 -98 -218 +c0 -113 67 -170 174 -170c33 0 57 5 73 12l27 142h-105l23 115h245zM464 712c-35 0 -66 26 -66 64c0 44 34 74 75 74c39 0 65 -29 65 -65c0 -44 -34 -73 -74 -73z" /> + <glyph glyph-name="G_tildecomb" unicode="&#xe000;" horiz-adv-x="673" +d="M642 384l-66 -353c-52 -17 -133 -38 -219 -38c-92 0 -169 24 -224 74c-54 47 -85 122 -85 208c0 126 51 235 137 308c76 63 181 98 298 98c88 0 152 -17 178 -30l-43 -121c-30 14 -82 27 -142 27c-67 0 -127 -19 -172 -54c-59 -46 -98 -126 -98 -218 +c0 -113 67 -170 173 -170c34 0 57 5 74 12l27 142h-105l23 115h244zM360 716h-71c13 84 52 125 99 125c28 0 46 -9 63 -20c15 -10 28 -19 41 -19c16 0 25 11 34 43h69c-14 -88 -48 -123 -100 -123c-29 0 -48 9 -64 19s-26 18 -40 18c-13 0 -24 -14 -31 -43z" /> + <glyph glyph-name="Hcircumflex" unicode="&#x124;" horiz-adv-x="666" +d="M147 674h144l-50 -263h244l50 263h145l-128 -674h-144l53 283h-245l-53 -283h-144zM388 836h109l80 -126h-101l-40 61h-2l-59 -61h-111z" /> + <glyph glyph-name="Ibreve" unicode="&#x12c;" horiz-adv-x="274" +d="M144 674h144l-128 -674h-144zM105 842h80c0 -25 14 -49 53 -49c41 0 60 22 66 49h82c-12 -68 -58 -122 -156 -122s-133 54 -125 122z" /> + <glyph glyph-name="Idotaccent" unicode="&#x130;" horiz-adv-x="274" +d="M143 674h144l-128 -674h-144zM235 712c-35 0 -66 26 -66 64c0 44 34 74 75 74c39 0 65 -29 65 -65c0 -44 -34 -73 -74 -73z" /> + <glyph glyph-name="Imacron" unicode="&#x12a;" horiz-adv-x="274" +d="M144 674h143l-127 -674h-144zM117 813h254l-16 -79h-253z" /> + <glyph glyph-name="Iogonek" unicode="&#x12e;" horiz-adv-x="274" +d="M288 674l-128 -674h-63c-19 -25 -36 -60 -36 -85c0 -24 15 -40 42 -40c18 0 36 5 47 9l9 -70c-28 -23 -69 -33 -105 -33c-62 0 -98 32 -98 89c0 51 39 105 61 132l127 672h144z" /> + <glyph glyph-name="Itilde" unicode="&#x128;" horiz-adv-x="274" +d="M143 674h144l-128 -674h-144zM152 713h-71c13 85 52 126 99 126c28 0 46 -9 63 -20c15 -10 28 -19 41 -19c16 0 25 11 34 43h69c-14 -88 -48 -123 -100 -123c-29 0 -48 9 -64 19s-26 18 -40 18c-13 0 -24 -14 -31 -44z" /> + <glyph glyph-name="Jcircumflex" unicode="&#x134;" horiz-adv-x="399" +d="M194 247l81 427h144l-85 -445c-33 -171 -106 -240 -259 -240c-42 0 -89 7 -111 16l28 123c21 -7 48 -12 80 -12c63 0 103 31 122 131zM319 836h109l80 -126h-101l-41 61h-2l-58 -61h-111z" /> + <glyph glyph-name="Kcommaaccent" unicode="&#x136;" horiz-adv-x="590" +d="M19 0l127 674h142l-57 -301h3c21 29 41 53 61 77l187 224h180l-273 -291l156 -383h-157l-113 293l-71 -68l-43 -225h-142zM150 -240l-15 66c35 6 77 27 77 68c0 20 -9 37 -20 48l107 17c12 -10 26 -34 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="Lacute" unicode="&#x139;" horiz-adv-x="487" +d="M19 0l128 674h144l-104 -548h259l-23 -126h-404zM271 836h160l-132 -126h-123z" /> + <glyph glyph-name="Lcaron" unicode="&#x13d;" horiz-adv-x="487" +d="M19 0l128 674h144l-104 -548h259l-23 -126h-404zM331 480l-15 66c35 6 77 27 77 68c0 19 -9 36 -20 47l107 18c12 -11 26 -35 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="Lcommaaccent" unicode="&#x13b;" horiz-adv-x="487" +d="M18 0l128 674h144l-104 -548h259l-23 -126h-404zM105 -240l-15 66c35 6 77 27 77 68c0 20 -9 37 -20 48l107 17c12 -10 26 -34 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="Ldot" unicode="&#x13f;" horiz-adv-x="490" +d="M19 0l128 674h144l-104 -548h259l-24 -126h-403zM387 308c-35 0 -66 25 -66 64c0 43 34 74 75 74c39 0 65 -30 65 -65c0 -44 -34 -73 -74 -73z" /> + <glyph glyph-name="M_uni0302" unicode="&#xe001;" horiz-adv-x="821" +d="M722 0h-140l41 278c11 73 26 166 45 263h-3c-37 -87 -79 -180 -116 -254l-138 -276h-112l-24 273c-6 74 -11 167 -15 257h-2c-19 -89 -39 -190 -56 -263l-67 -278h-132l169 674h193l21 -256c4 -63 11 -140 12 -215h4c26 75 62 154 91 215l125 256h195zM465 836h109 +l80 -126h-101l-41 61h-2l-58 -61h-111z" /> + <glyph glyph-name="Nacute" unicode="&#x143;" horiz-adv-x="666" +d="M153 0h-134l128 674h169l89 -257c27 -86 45 -156 61 -230h3c3 69 13 143 31 242l46 245h135l-128 -674h-149l-94 269c-30 91 -48 153 -66 235h-3c-7 -66 -23 -162 -43 -268zM435 836h160l-132 -126h-122z" /> + <glyph glyph-name="Ncaron" unicode="&#x147;" horiz-adv-x="666" +d="M153 0h-134l128 674h169l89 -257c27 -86 45 -156 61 -230h3c3 69 13 143 31 242l46 245h135l-128 -674h-149l-94 269c-30 91 -48 153 -66 235h-3c-7 -66 -23 -162 -43 -268zM478 710h-109l-80 126h101l40 -64h2l59 64h111z" /> + <glyph glyph-name="N_uni0302" unicode="&#xe002;" horiz-adv-x="666" +d="M153 0h-134l128 674h169l89 -257c27 -86 45 -156 61 -230h3c3 69 13 143 31 242l46 245h135l-128 -674h-149l-94 269c-30 91 -48 153 -66 235h-3c-7 -66 -23 -162 -43 -268zM388 836h109l80 -126h-101l-41 61h-2l-58 -61h-111z" /> + <glyph glyph-name="Ncommaaccent" unicode="&#x145;" horiz-adv-x="666" +d="M153 0h-134l127 674h169l89 -257c28 -86 46 -156 62 -230h2c3 69 13 143 31 242l47 245h134l-127 -674h-149l-94 269c-30 91 -49 153 -66 235h-4c-7 -66 -23 -162 -43 -268zM191 -240l-15 66c35 6 77 27 77 68c0 20 -9 37 -20 48l107 17c12 -10 26 -34 26 -63 +c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="Obreve" unicode="&#x14e;" horiz-adv-x="705" +d="M321 -11c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97zM342 109c43 0 82 18 113 49c53 53 82 164 82 242c0 84 -30 165 -136 165c-45 0 -85 -19 -116 -51 +c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166zM312 843h80c0 -25 14 -49 53 -49c41 0 60 22 66 49h82c-12 -68 -58 -122 -156 -122s-133 54 -125 122z" /> + <glyph glyph-name="Ohungarumlaut" unicode="&#x150;" horiz-adv-x="705" +d="M321 -11c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97zM342 109c43 0 82 18 113 49c53 53 82 164 82 242c0 84 -30 165 -136 165c-45 0 -85 -19 -116 -51 +c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166zM365 837h141l-121 -119h-106zM548 837h140l-121 -119h-105z" /> + <glyph glyph-name="Omacron" unicode="&#x14c;" horiz-adv-x="705" +d="M321 -11c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97zM342 109c43 0 82 18 113 49c53 53 82 164 82 242c0 84 -30 165 -136 165c-45 0 -85 -19 -116 -51 +c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166zM324 813h254l-16 -79h-253z" /> + <glyph glyph-name="Oslashacute" unicode="&#x1fe;" horiz-adv-x="702" +d="M101 -66l-68 64l72 86c-37 47 -59 109 -59 193c0 121 45 233 122 309c64 63 150 99 242 99c66 0 116 -13 158 -42l73 88l73 -58l-77 -93c31 -42 51 -101 51 -182c1 -120 -45 -235 -118 -310c-63 -62 -152 -99 -243 -99c-61 0 -108 13 -147 38zM207 207l275 333 +c-19 17 -44 26 -80 26c-90 0 -162 -77 -192 -169c-20 -60 -24 -128 -6 -190h3zM531 453l-267 -323c19 -15 42 -22 75 -22c85 0 152 69 183 160c19 56 25 119 12 185h-3zM451 840h160l-132 -126h-122z" /> + <glyph glyph-name="Racute" unicode="&#x154;" horiz-adv-x="583" +d="M20 0l126 662c45 11 113 17 180 17c64 0 130 -9 177 -39c44 -26 75 -69 75 -131c0 -100 -66 -163 -153 -191v-3c40 -18 58 -62 64 -123c9 -76 14 -164 26 -192h-148c-6 18 -13 76 -19 159c-7 82 -35 107 -92 107h-44l-50 -266h-142zM269 561l-35 -187h59 +c78 0 135 47 135 113c0 55 -45 79 -103 79c-27 0 -44 -2 -56 -5zM370 836h160l-132 -126h-122z" /> + <glyph glyph-name="Rcaron" unicode="&#x158;" horiz-adv-x="583" +d="M20 0l126 662c45 11 113 17 180 17c64 0 130 -9 177 -39c44 -26 75 -69 75 -131c0 -100 -66 -163 -153 -191v-3c40 -18 58 -62 64 -123c9 -76 14 -164 26 -192h-148c-6 18 -13 76 -19 159c-7 82 -35 107 -92 107h-44l-50 -266h-142zM269 561l-35 -187h59 +c78 0 135 47 135 113c0 55 -45 79 -103 79c-27 0 -44 -2 -56 -5zM404 710h-109l-80 126h102l39 -64h2l59 64h111z" /> + <glyph glyph-name="Rcommaaccent" unicode="&#x156;" horiz-adv-x="583" +d="M19 0l126 662c45 11 114 17 181 17c64 0 130 -9 177 -39c44 -26 75 -69 75 -131c0 -100 -66 -163 -153 -191v-3c40 -18 58 -62 64 -123c9 -76 14 -164 26 -192h-149c-5 18 -12 76 -19 159c-6 82 -34 107 -91 107h-44l-50 -266h-143zM268 561l-35 -187h59 +c79 0 136 47 136 113c0 55 -46 79 -103 79c-27 0 -44 -2 -57 -5zM147 -240l-15 66c35 6 77 27 77 68c0 20 -9 37 -20 48l107 17c12 -10 26 -34 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="Sacute" unicode="&#x15a;" horiz-adv-x="510" +d="M0 37l48 119c40 -24 97 -43 159 -43c56 0 107 26 107 78c0 39 -29 63 -91 96c-71 38 -139 91 -139 178c0 137 118 219 265 219c82 0 130 -18 159 -33l-45 -120c-22 12 -70 30 -125 29c-68 0 -103 -33 -103 -70c0 -39 41 -64 98 -96c82 -42 134 -97 134 -178 +c0 -150 -124 -227 -274 -227c-94 1 -161 25 -193 48zM354 836h160l-132 -126h-122z" /> + <glyph glyph-name="Scedilla" unicode="&#x15e;" horiz-adv-x="510" +d="M508 651l-45 -120c-22 12 -70 30 -125 29c-68 0 -103 -33 -103 -70c0 -39 41 -63 98 -95c82 -43 134 -97 134 -178c0 -124 -85 -200 -202 -221l-27 -39c35 -8 61 -33 61 -68c0 -70 -70 -95 -126 -95c-33 0 -62 9 -78 21l25 57c16 -10 36 -16 53 -16c18 0 37 8 37 28 +c0 18 -18 32 -72 36l46 70h-7c-48 0 -134 16 -177 48l48 118c40 -23 97 -42 159 -42c56 0 107 26 107 78c0 39 -29 63 -91 96c-71 38 -139 90 -139 177c0 137 118 219 265 219c82 0 130 -18 159 -33z" /> + <glyph glyph-name="Scircumflex" unicode="&#x15c;" horiz-adv-x="510" +d="M0 37l48 119c40 -24 97 -43 159 -43c56 0 107 26 107 78c0 39 -29 63 -91 96c-71 38 -139 91 -139 178c0 137 118 219 265 219c82 0 130 -18 159 -33l-45 -120c-22 12 -70 30 -125 29c-68 0 -103 -33 -103 -70c0 -39 41 -64 98 -96c82 -42 134 -97 134 -178 +c0 -150 -124 -227 -274 -227c-94 1 -161 25 -193 48zM310 836h109l80 -126h-101l-40 61h-2l-59 -61h-111z" /> + <glyph glyph-name="Scommaaccent" unicode="&#x218;" horiz-adv-x="510" +d="M0 37l48 119c40 -24 97 -43 159 -43c56 0 107 26 107 78c0 39 -29 63 -91 96c-71 38 -139 91 -139 178c0 137 118 219 265 219c82 0 130 -18 159 -33l-45 -120c-22 12 -70 30 -125 29c-68 0 -103 -33 -103 -70c0 -39 41 -64 98 -96c82 -42 134 -97 134 -178 +c0 -150 -124 -227 -274 -227c-94 1 -161 25 -193 48zM110 -240l-15 66c35 6 77 27 77 68c0 19 -9 36 -20 47l107 18c12 -11 26 -35 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="Tcaron" unicode="&#x164;" horiz-adv-x="527" +d="M141 0l104 548h-178l25 126h501l-24 -126h-180l-104 -548h-144zM403 710h-109l-80 126h101l40 -64h2l59 64h111z" /> + <glyph glyph-name="Tcommaaccent" unicode="&#x162;" horiz-adv-x="527" +d="M142 0l103 548h-178l25 126h502l-25 -126h-180l-103 -548h-144zM110 -240l-15 66c35 6 77 27 77 68c0 20 -9 37 -20 48l107 17c12 -10 26 -34 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="Ubreve" unicode="&#x16c;" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c76 0 125 50 149 175l74 389h144l-73 -383c-39 -204 -128 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94zM295 836h80c0 -25 14 -49 53 -49c41 0 60 22 66 49h82c-12 -68 -58 -122 -156 -122 +s-133 54 -125 122z" /> + <glyph glyph-name="Uhungarumlaut" unicode="&#x170;" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c76 0 125 50 149 175l74 389h144l-73 -383c-39 -204 -128 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94zM341 837h141l-121 -119h-106zM524 837h140l-121 -119h-105z" /> + <glyph glyph-name="Umacron" unicode="&#x16a;" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c76 0 125 50 149 175l74 389h144l-73 -383c-39 -204 -128 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94zM308 813h254l-16 -79h-254z" /> + <glyph glyph-name="Uogonek" unicode="&#x172;" horiz-adv-x="655" +d="M384 -114l17 -72c-29 -20 -67 -28 -106 -28c-58 0 -93 31 -93 84c0 41 29 86 70 121h-18c-117 9 -191 81 -191 213c0 29 4 62 10 95l71 375h144l-73 -387c-5 -24 -8 -51 -8 -80c0 -55 34 -97 97 -97c76 0 125 50 149 175l74 389h144l-72 -383 +c-29 -149 -84 -242 -186 -280c-18 -7 -32 -15 -48 -26c-35 -24 -55 -58 -55 -79c0 -17 12 -27 28 -27c17 0 36 5 46 7z" /> + <glyph glyph-name="Uring" unicode="&#x16e;" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c76 0 125 50 149 175l74 389h144l-73 -383c-39 -204 -128 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94zM428 887c60 0 108 -31 108 -91c-2 -64 -55 -101 -124 -101c-58 0 -105 34 -107 87 +c-2 63 51 105 123 105zM422 838c-28 0 -46 -22 -46 -51c0 -24 15 -43 41 -43c29 0 48 22 48 48s-15 46 -43 46z" /> + <glyph glyph-name="Utilde" unicode="&#x168;" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c75 0 125 50 149 175l74 389h144l-73 -383c-39 -204 -128 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94zM352 715h-71c13 85 52 126 99 126c28 0 46 -9 63 -20c15 -10 28 -19 41 -19 +c16 0 25 11 34 43h69c-14 -88 -48 -123 -100 -123c-29 0 -48 9 -64 19s-26 18 -40 18c-13 0 -24 -14 -31 -44z" /> + <glyph glyph-name="Wacute" unicode="&#x1e82;" horiz-adv-x="864" +d="M278 0h-160l-26 674h146v-300c0 -81 -2 -158 -4 -218h2c24 66 48 134 80 216l120 302h158l-2 -301c0 -81 -3 -148 -6 -214h2c23 70 48 143 74 215l117 300h151l-297 -674h-156l-5 277c-1 79 1 147 6 223h-2c-25 -72 -48 -144 -82 -227zM540 836h160l-132 -126h-122z" /> + <glyph glyph-name="Wcircumflex" unicode="&#x174;" horiz-adv-x="864" +d="M278 0h-160l-26 674h146v-300c0 -81 -2 -158 -4 -218h2c24 66 48 134 80 216l120 302h158l-2 -301c0 -81 -3 -148 -6 -214h2c23 70 48 143 74 215l117 300h151l-297 -674h-156l-5 277c-1 79 1 147 6 223h-2c-25 -72 -48 -144 -82 -227zM487 836h109l80 -126h-101l-40 61 +h-2l-58 -61h-112z" /> + <glyph glyph-name="Wdieresis" unicode="&#x1e84;" horiz-adv-x="864" +d="M278 0h-160l-26 674h146v-300c0 -81 -2 -158 -4 -218h2c24 66 48 134 80 216l120 302h158l-2 -301c0 -81 -3 -148 -6 -214h2c23 70 48 143 74 215l117 300h151l-297 -674h-156l-5 277c-1 79 1 147 6 223h-2c-25 -72 -48 -144 -82 -227zM426 711h-2c-33 0 -64 25 -64 64 +c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -71 -73zM632 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73z" /> + <glyph glyph-name="Wgrave" unicode="&#x1e80;" horiz-adv-x="864" +d="M278 0h-160l-26 674h146v-300c0 -81 -2 -158 -4 -218h2c24 66 48 134 80 216l120 302h158l-2 -301c0 -81 -3 -148 -6 -214h2c23 70 48 143 74 215l117 300h151l-297 -674h-156l-5 277c-1 79 1 147 6 223h-2c-25 -72 -48 -144 -82 -227zM346 837h157l77 -125h-119z" /> + <glyph glyph-name="Ycircumflex" unicode="&#x176;" horiz-adv-x="570" +d="M295 0h-144l52 275l-132 399h154l43 -171c13 -56 20 -88 26 -122h2c20 36 41 74 69 123l101 170h172l-291 -396zM323 836h109l80 -126h-101l-40 61h-2l-59 -61h-111z" /> + <glyph glyph-name="Ygrave" unicode="&#x1ef2;" horiz-adv-x="570" +d="M295 0h-144l52 275l-132 399h154l43 -171c13 -56 20 -88 26 -122h2c20 36 41 74 69 123l101 170h172l-291 -396zM197 837h158l77 -125h-120z" /> + <glyph glyph-name="uni0232" unicode="&#x232;" horiz-adv-x="570" +d="M295 0h-144l52 275l-132 399h154l43 -171c13 -56 20 -88 26 -122h2c20 36 41 74 69 123l101 170h172l-291 -396zM266 813h253l-16 -79h-253z" /> + <glyph glyph-name="Zacute" unicode="&#x179;" horiz-adv-x="553" +d="M-25 0l15 83l391 464v3h-274l25 124h467l-17 -89l-384 -458v-3h302l-24 -124h-501zM382 836h160l-132 -126h-122z" /> + <glyph glyph-name="Zdotaccent" unicode="&#x17b;" horiz-adv-x="553" +d="M-25 0l15 83l391 464v3h-274l24 124h468l-17 -89l-384 -458v-3h302l-24 -124h-501zM368 712c-35 0 -66 26 -66 64c0 44 34 74 75 74c39 0 65 -29 65 -65c0 -44 -34 -73 -74 -73z" /> + <glyph glyph-name="AEacute" unicode="&#x1fc;" horiz-adv-x="845" +d="M106 0h-154l413 674h484l-23 -123h-256l-12 -147h243l-23 -121h-225l-12 -160h254l-23 -123h-378l14 185h-194zM282 304h132l14 165c2 31 5 65 8 98h-4c-17 -33 -36 -70 -53 -99zM564 836h160l-132 -126h-122z" /> + <glyph glyph-name="abreve" unicode="&#x103;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM232 690h73c1 -31 12 -56 47 -56c40 0 58 28 65 56h75c-13 -78 -61 -130 -147 -130c-92 0 -122 57 -113 130z" /> + <glyph glyph-name="amacron" unicode="&#x101;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM243 662h246l-15 -78h-247z" /> + <glyph glyph-name="aogonek" unicode="&#x105;" horiz-adv-x="554" +d="M538 476l-49 -256c-12 -63 -22 -159 -20 -220h-41c-25 -25 -48 -63 -48 -91c0 -20 14 -34 38 -34c21 0 40 5 51 9l9 -70c-28 -23 -69 -33 -105 -33c-62 0 -98 32 -98 89c0 51 39 105 62 132c1 28 4 61 6 95h-2c-47 -81 -110 -108 -167 -108c-88 0 -148 68 -148 170 +c0 165 110 341 351 341c58 0 121 -11 161 -24zM355 274l20 113c-11 2 -23 4 -38 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81c43 0 98 49 120 169z" /> + <glyph glyph-name="a.superior" horiz-adv-x="400" +d="M369 268h-96c0 16 0 34 1 51h-1c-29 -40 -68 -58 -111 -58c-57 0 -101 42 -101 118c0 107 70 212 227 212c49 0 98 -12 123 -22l-35 -201c-6 -38 -7 -77 -7 -100zM281 407l17 103c-11 4 -22 6 -35 6c-58 0 -95 -63 -95 -117c0 -34 15 -57 45 -57s58 30 68 65z" /> + <glyph glyph-name="cacute" unicode="&#x107;" horiz-adv-x="435" +d="M373 125l1 -109c-31 -15 -81 -26 -139 -26c-121 0 -206 74 -206 200c0 174 133 310 319 310c42 0 78 -8 100 -16l-36 -111c-17 7 -37 12 -66 12c-102 0 -166 -87 -166 -179c0 -67 43 -101 96 -101c42 0 72 10 97 20zM335 700h142l-130 -152h-106z" /> + <glyph glyph-name="ccaron" unicode="&#x10d;" horiz-adv-x="435" +d="M373 125l1 -109c-31 -15 -81 -26 -139 -26c-121 0 -206 74 -206 200c0 174 133 310 319 310c42 0 78 -8 100 -16l-36 -111c-17 7 -37 12 -66 12c-102 0 -166 -87 -166 -179c0 -67 43 -101 96 -101c42 0 72 10 97 20zM354 548h-99l-75 152h93l40 -79h2l59 79h101z" /> + <glyph glyph-name="ccircumflex" unicode="&#x109;" horiz-adv-x="435" +d="M373 125l1 -109c-31 -15 -81 -26 -139 -26c-121 0 -206 74 -206 200c0 174 133 310 319 310c42 0 78 -8 100 -16l-36 -111c-17 7 -37 12 -66 12c-102 0 -166 -87 -166 -179c0 -67 43 -101 96 -101c42 0 72 10 97 20zM270 700h98l75 -152h-93l-40 79h-2l-58 -79h-102z" /> + <glyph glyph-name="cdotaccent" unicode="&#x10b;" horiz-adv-x="435" +d="M372 125l1 -109c-31 -15 -80 -26 -138 -26c-121 0 -206 74 -206 200c0 174 133 310 319 310c41 0 77 -8 99 -16l-35 -111c-18 7 -38 12 -67 12c-102 0 -165 -87 -165 -179c0 -67 42 -101 95 -101c42 0 72 10 97 20zM317 553c-36 0 -67 26 -67 66c0 46 34 77 76 77 +c41 0 67 -28 67 -67c0 -46 -34 -76 -76 -76z" /> + <glyph glyph-name="dcaron" unicode="&#x10f;" horiz-adv-x="568" +d="M444 710h143l-99 -520c-12 -62 -21 -132 -23 -190h-132l7 79h-2c-43 -65 -103 -90 -161 -90c-83 0 -151 66 -151 185c0 170 123 327 308 327c20 0 46 -4 67 -12zM355 243l26 131c-12 10 -34 17 -57 17c-87 0 -148 -100 -148 -194c0 -59 26 -92 67 -92c42 0 93 44 112 138 +zM636 503l-53 54c32 25 53 65 53 106c0 18 -4 32 -10 42l97 17c12 -12 22 -37 22 -62c0 -68 -56 -129 -109 -157z" /> + <glyph glyph-name="ebreve" unicode="&#x115;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM204 690h73c2 -31 12 -56 47 -56c41 0 59 28 66 56h74c-12 -78 -61 -130 -146 -130c-93 0 -123 57 -114 130z" /> + <glyph glyph-name="ecaron" unicode="&#x11b;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM363 548h-99l-75 152h93l40 -79h2l59 79h101z" /> + <glyph glyph-name="edotaccent" unicode="&#x117;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM320 553c-36 0 -67 26 -67 66c0 46 34 77 76 77c41 0 67 -28 67 -67c0 -46 -34 -76 -76 -76z" /> + <glyph glyph-name="emacron" unicode="&#x113;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM206 662h247l-15 -78h-247z" /> + <glyph glyph-name="eogonek" unicode="&#x119;" horiz-adv-x="501" +d="M348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -115 -101c111 -1 168 14 168 60zM348 -114l17 -71c-32 -22 -71 -32 -110 -32c-57 0 -89 32 -89 82c0 45 31 91 77 124v1h-23c-127 7 -192 84 -192 206c0 149 108 304 285 304c99 0 170 -56 170 -147 +c0 -124 -121 -169 -317 -164c0 -14 5 -36 15 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31l10 -104c-12 -6 -25 -11 -58 -25c-58 -34 -90 -69 -90 -99c0 -17 12 -28 28 -28c17 0 36 6 46 10z" /> + <glyph glyph-name="gbreve" unicode="&#x11f;" horiz-adv-x="558" +d="M11 -178l34 110c27 -16 86 -27 128 -27c72 0 125 32 146 130l8 42h-2c-38 -50 -82 -73 -140 -73c-97 0 -156 79 -157 175c-1 161 115 321 328 321c69 0 129 -13 181 -34l-74 -403c-17 -90 -45 -170 -103 -217c-53 -42 -124 -55 -189 -55c-66 0 -126 12 -160 31zM356 250 +l25 131c-11 5 -32 9 -52 9c-87 0 -149 -97 -149 -189c0 -50 22 -86 66 -86c47 0 94 53 110 135zM233 690h73c2 -31 12 -56 47 -56c41 0 59 28 65 56h75c-12 -78 -61 -130 -146 -130c-93 0 -123 57 -114 130z" /> + <glyph glyph-name="gcircumflex" unicode="&#x11d;" horiz-adv-x="558" +d="M11 -178l34 110c27 -16 86 -27 128 -27c72 0 125 32 146 130l8 42h-2c-38 -50 -82 -73 -140 -73c-97 0 -156 79 -157 175c-1 161 115 321 328 321c69 0 129 -13 181 -34l-74 -403c-17 -90 -45 -170 -103 -217c-53 -42 -124 -55 -189 -55c-66 0 -126 12 -160 31zM356 250 +l25 131c-11 5 -32 9 -52 9c-87 0 -149 -97 -149 -189c0 -50 22 -86 66 -86c47 0 94 53 110 135zM311 700h99l75 -152h-93l-40 79h-2l-59 -79h-101z" /> + <glyph glyph-name="gcommaaccent" unicode="&#x123;" horiz-adv-x="558" +d="M11 -178l34 110c27 -16 86 -27 128 -27c72 0 126 32 146 130l9 42h-3c-38 -50 -82 -73 -140 -73c-97 0 -156 79 -157 175c-1 161 115 321 328 321c69 0 130 -13 181 -34l-74 -403c-16 -90 -44 -170 -103 -217c-53 -42 -124 -55 -189 -55c-66 0 -126 12 -160 31zM356 250 +l25 131c-11 5 -32 9 -52 9c-87 0 -149 -97 -149 -189c0 -50 22 -86 66 -86c47 0 94 53 110 135zM460 731l14 -66c-37 -6 -79 -27 -79 -68c0 -20 9 -37 20 -48l-101 -18c-12 11 -26 35 -26 64c0 93 95 133 172 136z" /> + <glyph glyph-name="gdotaccent" unicode="&#x121;" horiz-adv-x="558" +d="M11 -178l34 110c27 -16 86 -27 128 -27c72 0 126 32 146 130l9 42h-3c-38 -50 -82 -73 -140 -73c-97 0 -156 79 -157 175c-1 161 115 321 328 321c69 0 130 -13 181 -34l-74 -403c-17 -90 -44 -170 -103 -217c-53 -42 -124 -55 -189 -55c-66 0 -126 12 -160 31zM356 250 +l25 131c-11 5 -32 9 -52 9c-87 0 -149 -97 -149 -189c0 -50 22 -86 66 -86c47 0 95 53 110 135zM354 553c-36 0 -67 26 -67 66c0 46 34 77 76 77c41 0 67 -28 67 -67c0 -46 -34 -76 -76 -76z" /> + <glyph glyph-name="g_tildecomb" unicode="&#xe005;" horiz-adv-x="558" +d="M11 -178l34 110c27 -16 86 -27 128 -27c72 0 126 32 146 130l8 42h-2c-38 -50 -82 -73 -140 -73c-97 0 -156 79 -157 175c-1 161 115 321 328 321c69 0 130 -13 181 -34l-74 -403c-16 -90 -44 -170 -103 -217c-53 -42 -124 -55 -189 -55c-66 0 -126 12 -160 31zM356 250 +l25 131c-11 5 -32 9 -52 9c-87 0 -148 -97 -149 -189c0 -50 22 -86 66 -86c47 0 95 53 110 135zM276 558h-70c11 80 45 126 96 126c28 0 45 -10 62 -20c15 -10 28 -19 39 -19c16 0 23 10 32 44h69c-13 -87 -46 -123 -98 -123c-27 0 -49 9 -64 19c-14 11 -26 18 -38 18 +c-13 0 -23 -19 -28 -45z" /> + <glyph glyph-name="hcircumflex" unicode="&#x125;" horiz-adv-x="563" +d="M157 0h-144l135 710h144l-55 -284h2c41 45 92 74 156 74c76 0 123 -48 123 -132c0 -23 -4 -60 -9 -88l-53 -280h-144l51 268c4 19 6 40 6 60c0 33 -13 56 -49 56c-51 0 -102 -62 -120 -160zM195 867h109l80 -126h-101l-40 61h-2l-58 -61h-111z" /> + <glyph glyph-name="ibreve" unicode="&#x12d;" horiz-adv-x="265" +d="M157 0h-144l93 489h144zM87 690h73c1 -31 12 -56 47 -56c40 0 58 28 65 56h75c-13 -78 -62 -130 -147 -130c-92 0 -122 57 -113 130z" /> + <glyph glyph-name="imacron" unicode="&#x12b;" horiz-adv-x="265" +d="M157 0h-144l93 489h144zM89 662h246l-16 -78h-246z" /> + <glyph glyph-name="iogonek" unicode="&#x12f;" horiz-adv-x="265" +d="M195 553c-42 0 -73 30 -73 75c0 52 41 87 88 87c45 0 77 -29 77 -75c0 -55 -42 -87 -92 -87zM250 489l-93 -489h-63c-19 -25 -36 -60 -36 -85c0 -24 15 -40 42 -40c18 0 35 5 46 9l9 -70c-28 -23 -68 -33 -104 -33c-62 0 -98 32 -98 89c0 51 39 105 61 132l92 487h144z +" /> + <glyph glyph-name="itilde" unicode="&#x129;" horiz-adv-x="265" +d="M156 0h-143l92 489h144zM129 558h-70c11 80 45 126 96 126c28 0 45 -10 62 -20c15 -10 28 -19 39 -19c16 0 23 10 32 44h69c-13 -87 -46 -123 -98 -123c-27 0 -49 9 -64 19c-14 11 -26 18 -38 18c-13 0 -23 -19 -28 -45z" /> + <glyph glyph-name="jcircumflex" unicode="&#x135;" horiz-adv-x="275" +d="M120 489h143l-88 -473c-16 -84 -36 -137 -69 -173c-31 -36 -82 -52 -133 -52c-22 0 -47 2 -69 8l16 108c10 -1 20 -2 32 -2c34 0 61 17 78 105zM166 700h95l75 -152h-92l-39 86h-2l-59 -86h-100z" /> + <glyph glyph-name="kcommaaccent" unicode="&#x137;" horiz-adv-x="530" +d="M156 0h-143l134 710h143l-80 -425h2c15 19 30 38 44 55l125 149h178l-209 -202l136 -287h-160l-86 209l-54 -52zM120 -240l-15 66c35 6 77 27 77 68c0 20 -9 37 -20 48l107 17c12 -10 26 -34 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="lacute" unicode="&#x13a;" horiz-adv-x="265" +d="M157 0h-144l136 710h144zM248 874h160l-132 -126h-122z" /> + <glyph glyph-name="lcaron" unicode="&#x13e;" horiz-adv-x="273" +d="M157 0h-144l136 710h144zM349 502l-56 51c26 22 53 65 53 110c0 17 -4 32 -10 42l97 17c12 -12 22 -37 22 -62c0 -80 -62 -138 -106 -158z" /> + <glyph glyph-name="lcommaaccent" unicode="&#x13c;" horiz-adv-x="265" +d="M158 0h-144l135 710h144zM-18 -240l-15 66c35 6 77 27 77 68c0 20 -9 37 -20 48l107 17c12 -10 26 -34 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="ldot" unicode="&#x140;" horiz-adv-x="356" +d="M157 0h-144l136 710h144zM326 289c-33 0 -62 25 -62 64c0 44 32 74 71 74c37 0 62 -27 62 -65c0 -45 -32 -73 -71 -73z" /> + <glyph glyph-name="m_uni0302" unicode="&#xe006;" horiz-adv-x="831" +d="M152 0h-139l61 330c11 62 19 115 25 159h123l-9 -79h2c45 63 105 91 168 91c78 0 112 -50 116 -93c44 63 105 93 169 93c75 0 119 -49 119 -132c0 -20 -4 -59 -8 -84l-53 -285h-140l49 268c4 19 7 40 7 59c0 34 -15 58 -48 58c-48 0 -96 -64 -115 -163l-41 -222h-139 +l51 269c3 20 6 39 6 56c0 34 -11 60 -46 60c-49 0 -101 -68 -118 -165zM447 700h99l75 -152h-93l-40 79h-2l-58 -79h-102z" /> + <glyph glyph-name="nacute" unicode="&#x144;" horiz-adv-x="563" +d="M156 0h-144l62 330c13 62 20 115 27 159h127l-9 -81h2c46 63 106 92 171 92c80 0 126 -49 126 -134c0 -22 -4 -58 -8 -82l-54 -284h-145l52 271c3 17 5 36 5 54c0 35 -12 59 -49 59c-47 0 -102 -59 -122 -167zM368 700h142l-130 -152h-106z" /> + <glyph glyph-name="ncaron" unicode="&#x148;" horiz-adv-x="563" +d="M156 0h-144l62 330c13 62 20 115 27 159h127l-9 -81h2c46 63 106 92 171 92c80 0 126 -49 126 -134c0 -22 -4 -58 -8 -82l-54 -284h-145l52 271c3 17 5 36 5 54c0 35 -12 59 -49 59c-47 0 -102 -59 -122 -167zM374 548h-99l-75 152h93l40 -79h2l59 79h102z" /> + <glyph glyph-name="n_uni0302" unicode="&#xe007;" horiz-adv-x="563" +d="M156 0h-144l62 330c13 62 20 115 27 159h127l-9 -81h2c46 63 106 92 171 92c80 0 126 -49 126 -134c0 -22 -4 -58 -8 -82l-54 -284h-145l52 271c3 17 5 36 5 54c0 35 -12 59 -49 59c-47 0 -102 -59 -122 -167zM313 700h99l75 -152h-93l-40 79h-2l-58 -79h-102z" /> + <glyph glyph-name="ncommaaccent" unicode="&#x146;" horiz-adv-x="563" +d="M156 0h-144l62 330c13 62 20 115 27 159h127l-9 -81h2c46 63 106 92 171 92c80 0 126 -49 126 -134c0 -22 -4 -58 -8 -82l-54 -284h-145l52 271c3 17 5 36 5 54c0 35 -12 59 -49 59c-47 0 -102 -59 -122 -167zM137 -240l-15 66c35 6 77 27 77 68c0 20 -9 37 -20 48 +l107 17c12 -10 26 -34 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="obreve" unicode="&#x14f;" horiz-adv-x="559" +d="M237 -11c-124 0 -207 81 -207 203c0 169 118 309 292 309c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310zM258 99c77 0 122 116 122 199c0 45 -20 93 -77 93c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95zM233 690h73c1 -31 11 -56 46 -56c41 0 59 28 65 56h75 +c-12 -78 -61 -130 -146 -130c-92 0 -122 57 -113 130z" /> + <glyph glyph-name="ohungarumlaut" unicode="&#x151;" horiz-adv-x="559" +d="M237 -11c-124 0 -207 81 -207 203c0 169 118 309 292 309c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310zM258 99c77 0 122 116 122 199c0 45 -20 93 -77 93c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95zM267 700h122l-120 -152h-86zM442 700h122l-120 -152 +h-86z" /> + <glyph glyph-name="omacron" unicode="&#x14d;" horiz-adv-x="559" +d="M237 -11c-124 0 -207 81 -207 203c0 169 118 309 292 309c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310zM258 99c77 0 122 116 122 199c0 45 -20 93 -77 93c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95zM236 662h246l-15 -78h-246z" /> + <glyph glyph-name="oslashacute" unicode="&#x1ff;" horiz-adv-x="560" +d="M57 -56l-40 41l61 71c-32 35 -49 81 -49 139c0 167 119 306 291 306c44 0 82 -10 112 -28l62 70l44 -39l-59 -69c34 -38 50 -89 50 -136c0 -188 -130 -310 -283 -310c-54 0 -92 11 -123 31zM183 173l168 205c-12 12 -27 18 -50 18c-82 0 -124 -114 -125 -178 +c-1 -16 0 -31 4 -44zM375 316l-170 -202c13 -14 30 -20 53 -20c76 0 122 101 124 176c0 15 -1 30 -4 46h-3zM362 700h142l-130 -152h-106z" /> + <glyph glyph-name="racute" unicode="&#x155;" horiz-adv-x="370" +d="M157 0h-144l55 291c14 74 20 156 25 198h125c-3 -33 -5 -66 -9 -100h3c35 65 89 111 156 111c9 0 18 0 27 -1l-28 -140c-7 1 -15 1 -23 1c-92 0 -135 -82 -153 -178zM264 700h142l-130 -152h-106z" /> + <glyph glyph-name="rcaron" unicode="&#x159;" horiz-adv-x="370" +d="M157 0h-144l55 291c14 74 20 156 25 198h125c-3 -33 -5 -66 -9 -100h3c35 65 89 111 156 111c9 0 18 0 27 -1l-28 -140c-7 1 -15 1 -23 1c-92 0 -135 -82 -153 -178zM294 548h-99l-75 152h93l40 -79h2l59 79h102z" /> + <glyph glyph-name="rcommaaccent" unicode="&#x157;" horiz-adv-x="370" +d="M157 0h-144l55 291c14 74 20 156 25 198h125c-3 -33 -5 -66 -9 -100h3c35 65 89 111 156 111c9 0 18 0 27 -1l-28 -140c-7 1 -15 1 -23 1c-92 0 -135 -82 -153 -178zM-1 -240l-15 66c35 6 77 27 77 68c0 20 -9 37 -20 48l107 17c12 -10 26 -34 26 -63 +c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="sacute" unicode="&#x15b;" horiz-adv-x="416" +d="M-4 28l35 101c28 -14 80 -34 127 -34c41 0 62 20 62 44s-16 41 -61 63c-56 28 -103 69 -103 130c0 102 89 169 215 169c57 0 102 -12 126 -25l-35 -102c-20 9 -55 21 -97 21c-39 0 -64 -16 -64 -43c0 -20 20 -37 59 -56c54 -27 110 -66 110 -134 +c0 -112 -95 -173 -225 -172c-62 1 -120 17 -149 38zM280 700h142l-130 -152h-106z" /> + <glyph glyph-name="scedilla" unicode="&#x15f;" horiz-adv-x="416" +d="M397 476l-35 -102c-20 9 -55 21 -97 21c-39 0 -64 -16 -64 -43c0 -20 20 -37 59 -55c54 -27 110 -67 110 -135c0 -90 -61 -148 -151 -166l-28 -39c35 -8 61 -33 61 -65c0 -70 -70 -95 -126 -95c-33 0 -62 9 -78 21l25 54c16 -10 36 -16 53 -16c18 0 37 8 37 28 +c0 18 -18 32 -73 36l46 70h-4c-43 0 -108 17 -136 38l35 101c28 -14 80 -34 127 -34c41 0 62 20 62 44s-16 41 -61 63c-56 28 -103 69 -103 130c0 102 89 169 215 169c57 0 102 -12 126 -25z" /> + <glyph glyph-name="scircumflex" unicode="&#x15d;" horiz-adv-x="416" +d="M-4 28l35 101c28 -14 80 -34 127 -34c41 0 62 20 62 44s-16 41 -61 63c-56 28 -103 69 -103 130c0 102 89 169 215 169c57 0 102 -12 126 -25l-35 -102c-20 9 -55 21 -97 21c-39 0 -64 -16 -64 -43c0 -20 20 -37 59 -56c54 -27 110 -66 110 -134 +c0 -112 -95 -173 -225 -172c-62 1 -120 17 -149 38zM237 700h99l75 -152h-93l-40 79h-2l-59 -79h-101z" /> + <glyph glyph-name="scommaaccent" unicode="&#x219;" horiz-adv-x="416" +d="M-4 28l35 101c28 -14 80 -34 127 -34c41 0 62 20 62 44s-16 41 -61 63c-56 28 -103 69 -103 130c0 102 89 169 215 169c57 0 102 -12 126 -25l-35 -102c-20 9 -55 21 -97 21c-39 0 -64 -16 -64 -43c0 -20 20 -37 59 -56c54 -27 110 -66 110 -134 +c0 -112 -95 -173 -225 -172c-62 1 -120 17 -149 38zM61 -239l-15 66c35 6 77 27 77 68c0 19 -9 36 -20 47l107 18c12 -11 26 -35 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="tcaron" unicode="&#x165;" horiz-adv-x="348" +d="M141 581l148 41l-25 -132h105l-22 -110h-104l-33 -166c-4 -19 -8 -45 -8 -62c0 -24 10 -41 42 -41c12 0 27 0 39 2l-16 -113c-19 -7 -55 -11 -85 -11c-87 0 -128 44 -128 106c0 26 3 53 11 91l37 194h-62l20 110h63zM371 536l-33 60c23 11 39 37 39 63c0 19 -7 37 -15 50 +l96 17c14 -12 28 -40 28 -65c0 -78 -71 -118 -115 -125z" /> + <glyph glyph-name="tcommaaccent" unicode="&#x163;" horiz-adv-x="348" +d="M141 582l148 40l-25 -132h105l-22 -110h-104l-33 -166c-4 -19 -8 -45 -8 -62c0 -24 10 -41 42 -41c12 0 27 0 39 2l-16 -113c-19 -7 -55 -11 -85 -11c-87 0 -128 44 -128 106c0 26 3 53 11 91l37 194h-62l20 110h63zM32 -240l-16 66c35 6 77 27 77 68c0 19 -9 36 -20 47 +l107 18c12 -11 26 -35 26 -63c0 -93 -95 -133 -174 -136z" /> + <glyph glyph-name="ubreve" unicode="&#x16d;" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM226 690h73c1 -31 12 -56 47 -56 +c40 0 58 28 65 56h74c-12 -78 -61 -130 -146 -130c-92 0 -122 57 -113 130z" /> + <glyph glyph-name="uhungarumlaut" unicode="&#x171;" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM274 700h122l-120 -152h-86zM449 700h122 +l-120 -152h-86z" /> + <glyph glyph-name="umacron" unicode="&#x16b;" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM235 662h246l-16 -78h-246z" /> + <glyph glyph-name="uogonek" unicode="&#x173;" horiz-adv-x="560" +d="M543 489l-62 -330c-11 -62 -20 -115 -26 -159l-46 1c-19 -25 -36 -60 -36 -85c0 -24 15 -40 42 -40c18 0 36 5 47 9l9 -70c-28 -23 -69 -33 -105 -33c-62 0 -98 32 -98 89c0 51 39 105 61 132l8 76l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137 +c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156l43 227h143z" /> + <glyph glyph-name="uring" unicode="&#x16f;" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM362 735c58 0 107 -32 107 -94 +c-2 -66 -57 -103 -124 -103c-57 0 -104 34 -106 90c-2 65 51 107 123 107zM355 685c-28 0 -47 -23 -47 -53c0 -23 15 -44 43 -44c30 0 49 23 49 51c0 25 -15 46 -45 46z" /> + <glyph glyph-name="utilde" unicode="&#x169;" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM277 558h-70c11 80 45 126 96 126 +c29 0 45 -10 62 -20c15 -10 28 -19 39 -19c16 0 23 10 32 44h69c-13 -87 -46 -123 -98 -123c-26 0 -48 9 -63 19c-14 11 -26 18 -38 18c-14 0 -24 -19 -29 -45z" /> + <glyph glyph-name="wacute" unicode="&#x1e83;" horiz-adv-x="733" +d="M51 489h146l1 -207c0 -56 -2 -102 -5 -156h2c17 52 39 101 60 151l96 212h118l12 -205c2 -58 4 -105 1 -158h3c16 54 33 103 53 160l84 203h145l-238 -489h-135l-14 170c-4 52 -4 99 -4 157h-2c-26 -69 -38 -105 -58 -150l-83 -177h-136zM441 700h142l-130 -152h-106z +" /> + <glyph glyph-name="wcircumflex" unicode="&#x175;" horiz-adv-x="733" +d="M51 490h146l1 -208c0 -56 -2 -102 -5 -156h2c17 52 39 101 60 151l96 213h118l12 -206c3 -58 4 -105 2 -158h2c16 54 33 103 54 160l83 204h145l-237 -490h-136l-14 170c-3 52 -4 99 -4 157h-2c-26 -69 -38 -105 -58 -150l-83 -177h-136zM398 700h99l75 -152h-93l-40 79 +h-2l-59 -79h-102z" /> + <glyph glyph-name="wdieresis" unicode="&#x1e85;" horiz-adv-x="733" +d="M51 490h146l1 -208c0 -56 -1 -102 -5 -156h3c16 52 38 101 59 151l96 213h118l12 -206c2 -58 4 -105 1 -158h3c16 54 33 103 53 160l84 204h145l-238 -490h-135l-14 170c-3 52 -4 99 -4 157h-2c-26 -69 -38 -105 -58 -150l-83 -177h-136zM326 554c-35 0 -66 25 -66 66 +c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75zM531 554c-36 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75z" /> + <glyph glyph-name="wgrave" unicode="&#x1e81;" horiz-adv-x="733" +d="M51 489h146l1 -207c0 -56 -2 -102 -5 -156h2c17 52 39 101 60 151l96 212h118l12 -205c2 -58 4 -105 1 -158h3c16 54 33 103 53 160l84 203h145l-238 -489h-135l-14 170c-4 52 -4 99 -4 157h-2c-26 -69 -38 -105 -58 -150l-83 -177h-136zM274 700h139l75 -152h-103z" /> + <glyph glyph-name="ycircumflex" unicode="&#x177;" horiz-adv-x="497" +d="M44 489h151l30 -213c7 -51 12 -86 16 -117h2c11 30 22 61 43 114l89 216h152l-175 -352c-65 -130 -123 -218 -188 -279c-57 -54 -125 -79 -157 -84l-32 124c23 7 55 19 83 38c33 23 61 52 80 85c4 8 4 14 2 24zM271 700h99l75 -152h-93l-40 79h-2l-58 -79h-102z" /> + <glyph glyph-name="ygrave" unicode="&#x1ef3;" horiz-adv-x="497" +d="M44 489h151l30 -213c7 -51 12 -86 16 -117h2c11 30 22 61 43 114l89 216h152l-175 -352c-65 -130 -123 -218 -188 -279c-57 -54 -125 -79 -157 -84l-32 124c23 7 55 19 83 38c33 23 61 52 80 85c4 8 4 14 2 24zM146 700h139l75 -152h-103z" /> + <glyph glyph-name="uni0233" unicode="&#x233;" horiz-adv-x="497" +d="M44 489h151l30 -213c7 -51 12 -86 16 -117h2c11 30 22 61 43 114l89 216h152l-175 -352c-65 -130 -123 -218 -188 -279c-57 -54 -125 -79 -157 -84l-32 124c23 7 55 19 83 38c33 23 61 52 80 85c4 8 4 14 2 24zM205 662h246l-16 -78h-246z" /> + <glyph glyph-name="zacute" unicode="&#x17a;" horiz-adv-x="450" +d="M-26 0l16 87l159 170c41 43 72 73 119 113l1 2h-209l23 117h382l-17 -91l-155 -166c-44 -46 -75 -77 -119 -113l-1 -2h230l-23 -117h-406zM306 700h142l-130 -152h-106z" /> + <glyph glyph-name="zdotaccent" unicode="&#x17c;" horiz-adv-x="450" +d="M-25 0l15 87l159 170c41 43 73 73 120 113l1 2h-209l23 117h381l-16 -91l-156 -166c-43 -46 -75 -77 -118 -113l-1 -2h229l-23 -117h-405zM289 553c-36 0 -67 26 -67 66c0 46 34 77 76 77c41 0 67 -28 67 -67c0 -46 -34 -76 -76 -76z" /> + <glyph glyph-name="aeacute" unicode="&#x1fd;" horiz-adv-x="763" +d="M676 132l5 -102c-55 -31 -123 -41 -179 -41c-72 0 -135 31 -162 87h-4c-41 -52 -103 -87 -182 -87c-90 0 -150 58 -150 135c0 146 167 202 314 200l2 11c4 23 -13 64 -79 64c-58 0 -104 -21 -136 -43l-23 92c41 27 106 53 177 53c72 0 123 -27 144 -79h3 +c38 48 101 79 173 79c115 0 167 -71 167 -135c0 -141 -144 -170 -319 -162c-2 -21 -1 -42 8 -59c18 -28 55 -43 101 -43c60 0 98 12 140 30zM296 186l8 44c-55 2 -156 -13 -156 -83c0 -30 21 -48 54 -48c42 0 83 31 94 87zM607 353c0 21 -18 43 -56 43 +c-63 0 -101 -56 -108 -93c85 -5 164 0 164 50zM457 700h142l-130 -152h-106z" /> + <glyph glyph-name="space_uni0326" unicode="&#xf6c3;" +d="M53 -240l-15 66c35 6 77 27 77 68c0 19 -9 36 -20 47l107 18c12 -11 26 -35 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="acute.cap" unicode="&#xf6c9;" +d="M301 836h160l-132 -126h-122z" /> + <glyph glyph-name="breve.cap" unicode="&#xefee;" +d="M165 845h80c0 -25 14 -49 53 -49c41 0 60 22 66 49h82c-12 -68 -58 -122 -156 -122s-133 54 -125 122z" /> + <glyph glyph-name="caron.cap" unicode="&#xf6ca;" +d="M344 710h-109l-80 126h102l39 -64h2l59 64h111z" /> + <glyph glyph-name="cedilla.cap" unicode="&#xeff2;" +d="M123 4h78l-33 -48c34 -8 60 -32 60 -68c0 -70 -70 -94 -126 -94c-32 0 -60 8 -77 21l24 57c16 -10 35 -16 53 -16s37 8 37 27c0 18 -18 32 -71 36z" /> + <glyph glyph-name="circumflex.cap" unicode="&#xeff7;" +d="M253 836h109l80 -126h-101l-41 61h-2l-58 -61h-111z" /> + <glyph glyph-name="space_uni0326.cap" unicode="&#xf634;" +d="M53 -240l-15 66c35 6 77 27 77 68c0 19 -9 36 -20 47l107 18c12 -11 26 -35 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="dieresis.cap" unicode="&#xf6cb;" +d="M190 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73zM397 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73z" /> + <glyph glyph-name="dotaccent.cap" unicode="&#xefed;" +d="M295 712c-35 0 -66 26 -66 64c0 44 34 74 75 74c39 0 65 -29 65 -65c0 -44 -34 -73 -74 -73z" /> + <glyph glyph-name="grave.cap" unicode="&#xf6ce;" +d="M129 837h158l77 -125h-120z" /> + <glyph glyph-name="hungarumlaut.cap" unicode="&#xf6cf;" +d="M228 837h140l-121 -119h-105zM410 837h141l-121 -119h-105z" /> + <glyph glyph-name="macron.cap" unicode="&#xf6d0;" +d="M178 813h253l-16 -79h-253z" /> + <glyph glyph-name="ogonek.cap" unicode="&#xeff1;" +d="M126 1h83c-24 -26 -45 -61 -45 -87c0 -24 15 -39 41 -39c19 0 37 5 47 9l9 -71c-29 -22 -69 -32 -105 -32c-61 0 -97 32 -97 86c0 53 41 106 67 134z" /> + <glyph glyph-name="ring.cap" unicode="&#xeff3;" +d="M306 889c60 0 108 -31 108 -91c-2 -64 -55 -101 -124 -101c-58 0 -105 34 -107 87c-2 63 51 105 123 105zM300 840c-28 0 -46 -22 -46 -51c0 -24 15 -43 41 -43c29 0 48 22 48 48s-15 46 -43 46z" /> + <glyph glyph-name="tilde.cap" unicode="&#xeff5;" +d="M221 716h-71c13 84 52 125 99 125c28 0 46 -9 63 -20c15 -10 28 -19 41 -19c16 0 25 11 34 43h69c-14 -88 -48 -123 -100 -123c-29 0 -48 9 -64 19s-26 18 -40 18c-13 0 -24 -14 -31 -43z" /> + <glyph glyph-name="Alpha" unicode="&#x391;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132z" /> + <glyph glyph-name="Beta" unicode="&#x392;" horiz-adv-x="582" +d="M20 7l124 656c48 10 111 16 177 16c71 0 122 -9 167 -35c45 -23 78 -67 78 -124c0 -85 -62 -139 -136 -160v-3c65 -20 106 -73 106 -147c0 -73 -39 -125 -92 -160c-57 -39 -142 -55 -254 -55c-76 0 -137 5 -170 12zM268 563l-30 -157h48c79 0 133 34 133 92 +c0 48 -39 69 -94 69c-25 0 -46 -2 -57 -4zM216 301l-36 -191c17 -2 34 -2 55 -2c78 0 149 31 149 106c0 67 -56 87 -123 87h-45z" /> + <glyph glyph-name="Gamma" unicode="&#x393;" horiz-adv-x="476" +d="M147 674h399l-24 -123h-252l-105 -551h-146z" /> + <glyph glyph-name="uni0394" unicode="&#x394;" horiz-adv-x="636" +d="M-27 0l12 77l324 597h178l102 -597l-13 -77h-603zM155 117h277l-44 288c-6 44 -13 105 -17 147h-4c-14 -33 -42 -94 -62 -137z" /> + <glyph glyph-name="Epsilon" unicode="&#x395;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241z" /> + <glyph glyph-name="Zeta" unicode="&#x396;" horiz-adv-x="553" +d="M-25 0l15 83l391 464v3h-274l25 124h467l-17 -89l-384 -458v-3h302l-24 -124h-501z" /> + <glyph glyph-name="Eta" unicode="&#x397;" horiz-adv-x="666" +d="M147 674h144l-50 -263h244l50 263h145l-128 -674h-144l53 283h-245l-53 -283h-144z" /> + <glyph glyph-name="Theta" unicode="&#x398;" horiz-adv-x="705" +d="M321 -11c-175 0 -274 124 -274 281c0 121 45 240 123 317c63 61 150 98 247 98c178 0 273 -120 273 -281c0 -122 -43 -242 -119 -317c-63 -62 -149 -98 -250 -98zM342 108c115 0 195 165 195 291c0 85 -31 167 -137 167c-120 0 -200 -163 -200 -291 +c0 -95 43 -167 142 -167zM278 401h205l-20 -114h-204z" /> + <glyph glyph-name="Iota" unicode="&#x399;" horiz-adv-x="274" +d="M144 674h144l-128 -674h-144z" /> + <glyph glyph-name="Kappa" unicode="&#x39a;" horiz-adv-x="590" +d="M19 0l128 674h142l-57 -301h3c20 29 41 53 60 77l187 224h180l-273 -291l156 -383h-156l-113 293l-72 -68l-43 -225h-142z" /> + <glyph glyph-name="Lambda" unicode="&#x39b;" horiz-adv-x="618" +d="M564 0h-155l-35 403c-2 47 -5 98 -7 148h-3c-18 -51 -38 -102 -58 -149l-178 -402h-158l327 674h187z" /> + <glyph glyph-name="Mu" unicode="&#x39c;" horiz-adv-x="821" +d="M722 0h-140l41 278c11 73 26 166 45 263h-3c-37 -87 -79 -180 -116 -254l-138 -276h-112l-24 273c-6 74 -11 167 -15 257h-2c-19 -89 -39 -190 -56 -263l-67 -278h-132l169 674h193l21 -256c4 -63 11 -140 12 -215h4c26 75 62 154 91 215l125 256h195z" /> + <glyph glyph-name="Nu" unicode="&#x39d;" horiz-adv-x="666" +d="M153 0h-134l128 674h169l89 -257c27 -86 45 -156 61 -230h3c3 69 13 143 31 242l46 245h135l-128 -674h-149l-94 269c-30 91 -48 153 -66 235h-3c-7 -66 -23 -162 -43 -268z" /> + <glyph glyph-name="Xi" unicode="&#x39e;" horiz-adv-x="561" +d="M128 674h460l-20 -120h-460zM112 405h396l-20 -120h-396zM15 122h488l-20 -122h-488z" /> + <glyph glyph-name="Omicron" unicode="&#x39f;" horiz-adv-x="705" +d="M321 -11c-175 0 -273 124 -273 281c0 121 45 240 122 317c63 61 150 98 248 98c178 0 272 -120 272 -281c0 -122 -43 -242 -119 -317c-62 -62 -148 -98 -250 -98zM342 109c116 0 195 164 195 291c0 84 -30 165 -136 165c-121 0 -200 -162 -200 -290 +c0 -95 43 -166 141 -166z" /> + <glyph glyph-name="Pi" unicode="&#x3a0;" horiz-adv-x="653" +d="M668 674l-127 -674h-143l103 553h-234l-104 -553h-144l127 674h522z" /> + <glyph glyph-name="Rho" unicode="&#x3a1;" horiz-adv-x="559" +d="M19 0l125 662c44 11 111 17 176 17c61 0 130 -10 179 -44c46 -31 73 -79 73 -144c0 -84 -39 -149 -91 -189c-55 -43 -134 -63 -216 -63c-24 0 -44 3 -59 4l-46 -243h-141zM266 560l-38 -199c15 -3 31 -5 56 -5c86 0 143 55 143 123c0 64 -47 85 -102 85 +c-27 0 -47 -2 -59 -4z" /> + <glyph glyph-name="Sigma" unicode="&#x3a3;" horiz-adv-x="558" +d="M200 126l1 -4h310l-21 -122h-507l13 87l242 250l-149 236l17 101h470l-20 -121h-288l-1 -4l138 -217z" /> + <glyph glyph-name="Tau" unicode="&#x3a4;" horiz-adv-x="527" +d="M141 0l104 548h-178l25 126h501l-24 -126h-180l-104 -548h-144z" /> + <glyph glyph-name="Upsilon" unicode="&#x3a5;" horiz-adv-x="557" +d="M43 560l35 120c57 -1 127 -30 168 -87c37 -51 61 -129 54 -220h7c27 88 76 165 133 218c62 59 134 87 178 89l11 -129c-94 -28 -204 -136 -260 -267c-20 -46 -34 -90 -42 -138l-27 -146h-144l27 147c10 50 14 87 14 132c1 143 -46 258 -154 281z" /> + <glyph glyph-name="Phi" unicode="&#x3a6;" horiz-adv-x="766" +d="M263 -29l11 57c-122 18 -226 108 -226 260c0 237 201 360 343 362l10 52h135l-10 -52c119 -16 225 -108 225 -259c0 -232 -184 -355 -342 -363l-11 -57h-135zM294 132l77 415c-75 -4 -177 -106 -177 -256c0 -87 42 -146 100 -159zM506 547l-78 -416c82 7 177 101 177 259 +c0 88 -42 145 -99 157z" /> + <glyph glyph-name="Chi" unicode="&#x3a7;" horiz-adv-x="569" +d="M517 0h-153l-46 136c-13 41 -23 73 -36 115h-2c-22 -38 -40 -72 -68 -120l-80 -131h-173l252 344l-118 330h152l41 -129c12 -42 21 -72 31 -112h3c25 46 43 78 64 114l78 127h172l-246 -331z" /> + <glyph glyph-name="Psi" unicode="&#x3a8;" horiz-adv-x="691" +d="M737 674l-39 -211c-35 -183 -148 -271 -300 -279l-34 -184h-135l35 184c-101 11 -205 65 -205 199c0 22 3 46 8 76l41 215h139l-37 -200c-6 -29 -9 -54 -9 -73c0 -71 29 -97 83 -105l72 378h133l-71 -380c71 7 119 54 146 198l34 182h139z" /> + <glyph glyph-name="uni03A9" unicode="&#x3a9;" horiz-adv-x="721" +d="M137 110l1 5c-42 41 -85 117 -85 208c0 206 164 362 367 362c184 0 285 -126 285 -264c0 -149 -93 -256 -165 -306v-5h121l-19 -110h-288l15 88c84 54 182 159 182 318c0 94 -51 162 -144 162c-112 0 -203 -114 -203 -277c0 -89 34 -163 85 -203l-15 -88h-288l20 110h131 +z" /> + <glyph glyph-name="Alphatonos" unicode="&#x386;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM78 674h119l-61 -174h-83z" /> + <glyph glyph-name="Epsilontonos" unicode="&#x388;" horiz-adv-x="571" +d="M534 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241zM29 674h119l-62 -174h-82z" /> + <glyph glyph-name="Etatonos" unicode="&#x389;" horiz-adv-x="718" +d="M199 674h144l-50 -263h244l50 263h145l-128 -674h-144l53 283h-245l-53 -283h-144zM28 674h119l-61 -174h-83z" /> + <glyph glyph-name="Iotatonos" unicode="&#x38a;" horiz-adv-x="328" +d="M198 674h144l-128 -674h-144zM30 674h119l-62 -174h-82z" /> + <glyph glyph-name="Iotadieresis" unicode="&#x3aa;" horiz-adv-x="274" +d="M121 714c-34 0 -64 24 -64 63c0 44 33 73 73 73c39 0 64 -28 64 -64c0 -44 -33 -72 -73 -72zM329 714c-34 0 -64 24 -64 63c0 44 33 73 73 73c39 0 64 -28 64 -64c0 -44 -33 -72 -73 -72zM143 674h145l-128 -674h-144z" /> + <glyph glyph-name="Omicrontonos" unicode="&#x38c;" horiz-adv-x="744" +d="M360 -11c-175 0 -273 124 -273 281c0 121 45 240 122 317c63 61 150 98 248 98c178 0 272 -120 272 -281c0 -122 -43 -242 -119 -317c-62 -62 -148 -98 -250 -98zM381 109c116 0 195 164 195 291c0 84 -30 165 -136 165c-121 0 -200 -162 -200 -290 +c0 -95 43 -166 141 -166zM28 674h119l-61 -174h-83z" /> + <glyph glyph-name="Upsilontonos" unicode="&#x38e;" horiz-adv-x="677" +d="M160 560l35 120c57 -1 127 -30 168 -87c37 -51 61 -129 54 -220h7c27 88 76 165 133 218c62 59 134 87 178 89l11 -129c-94 -28 -204 -136 -260 -267c-20 -46 -34 -90 -42 -137l-27 -147h-144l27 147c10 50 14 87 14 132c1 143 -46 258 -154 281zM24 674h119l-62 -174 +h-82z" /> + <glyph glyph-name="Upsilondieresis" unicode="&#x3ab;" horiz-adv-x="557" +d="M252 699c-34 0 -64 25 -64 64c0 43 33 73 73 73c39 0 64 -28 64 -64c0 -45 -33 -73 -73 -73zM459 699c-34 0 -64 25 -64 64c0 43 33 73 73 73c39 0 64 -28 64 -64c0 -45 -33 -73 -73 -73zM43 560l35 120c57 -1 127 -30 168 -87c37 -51 61 -129 54 -220h7 +c27 88 76 165 132 218c63 59 135 87 179 89l10 -129c-93 -28 -203 -136 -259 -267c-20 -46 -34 -90 -42 -138l-27 -146h-144l27 147c10 50 14 87 14 132c1 143 -46 258 -154 281z" /> + <glyph glyph-name="Omegatonos" unicode="&#x38f;" horiz-adv-x="760" +d="M176 110l1 5c-42 41 -85 117 -85 208c0 206 164 362 368 362c184 0 285 -126 285 -264c0 -149 -93 -256 -164 -306v-5h120l-19 -110h-288l15 88c83 54 182 159 182 318c0 94 -51 162 -144 162c-112 0 -204 -114 -204 -277c0 -89 34 -163 85 -203l-15 -88h-288l20 110h131 +zM28 674h119l-61 -174h-83z" /> + <glyph glyph-name="alpha" unicode="&#x3b1;" horiz-adv-x="576" +d="M362 77h-2c-44 -60 -103 -88 -169 -88c-92 0 -163 68 -163 184c0 199 145 328 257 328c66 0 108 -25 128 -73l3 -1c7 23 15 43 23 62h122c-8 -31 -19 -73 -27 -109c-16 -71 -32 -144 -45 -208c-11 -58 5 -73 32 -71l-26 -105c-11 -4 -23 -7 -45 -7c-53 0 -83 31 -88 88z +M177 190c0 -52 27 -87 70 -87c46 0 87 49 104 95c5 16 10 34 13 53c3 16 6 38 6 50c0 52 -24 90 -71 90c-64 0 -122 -101 -122 -201z" /> + <glyph glyph-name="beta" unicode="&#x3b2;" horiz-adv-x="562" +d="M126 -198h-133c-9 27 -2 105 13 179l80 430c27 144 71 212 117 251c44 37 92 59 161 59c111 0 173 -74 173 -159c0 -83 -45 -145 -109 -175l-1 -6c56 -16 103 -77 103 -159c0 -136 -113 -233 -232 -233c-57 0 -107 16 -138 47h-3l-11 -60c-11 -60 -22 -131 -20 -174z +M273 319l17 90c6 0 11 0 17 2c54 9 95 56 95 123c0 41 -21 74 -59 74c-48 0 -88 -45 -111 -166l-54 -290c19 -30 53 -54 95 -54c63 0 110 55 110 122c0 56 -37 92 -88 99h-22z" /> + <glyph glyph-name="gamma" unicode="&#x3b3;" horiz-adv-x="483" +d="M211 -198h-141c15 73 36 170 36 263c0 142 -54 326 -94 424h159c27 -63 56 -202 57 -334h4c51 82 103 188 122 289c2 16 4 34 4 45h142c0 -11 -1 -29 -4 -50c-21 -113 -112 -274 -240 -417c-8 -9 -12 -19 -13 -29c-7 -42 -20 -125 -32 -191z" /> + <glyph glyph-name="delta" unicode="&#x3b4;" horiz-adv-x="551" +d="M522 653l-51 -84c-22 21 -69 49 -110 49c-31 0 -43 -13 -43 -30c0 -19 21 -39 51 -66l57 -55c52 -49 94 -115 94 -195c0 -145 -108 -283 -279 -283c-127 0 -217 87 -217 210c0 145 108 233 202 273v4l-19 22c-16 18 -40 51 -40 90c0 73 73 133 174 133 +c96 0 152 -39 181 -68zM326 367l-34 35c-63 -34 -119 -102 -119 -199c0 -65 36 -110 87 -110c60 0 113 65 113 155c0 45 -11 83 -47 119z" /> + <glyph glyph-name="epsilon" unicode="&#x3b5;" horiz-adv-x="437" +d="M346 207h-46c-68 0 -129 -15 -129 -62c0 -31 40 -47 88 -47c46 0 97 13 132 28l5 -99c-57 -31 -133 -38 -185 -38c-105 0 -198 36 -198 126c0 81 65 131 125 142l1 4c-51 16 -75 50 -75 90c0 77 84 149 228 149c67 0 117 -14 148 -38l-34 -89c-21 12 -62 25 -104 25 +c-58 0 -92 -24 -92 -52c0 -30 38 -45 110 -45h42z" /> + <glyph glyph-name="zeta" unicode="&#x3b6;" horiz-adv-x="427" +d="M476 706l3 -95c-119 -59 -299 -234 -299 -385c0 -60 26 -95 68 -116c36 -22 89 -31 137 -38c6 -1 8 -5 8 -12c0 -47 -56 -162 -107 -212l-87 29c14 21 38 73 44 100c-21 4 -56 12 -92 29c-62 27 -123 84 -123 190c0 150 133 319 260 401v4c-17 0 -35 1 -53 1 +c-46 0 -75 5 -95 16l27 93c25 -5 74 -5 129 -5h180z" /> + <glyph glyph-name="eta" unicode="&#x3b7;" horiz-adv-x="563" +d="M219 408h3c46 63 106 92 170 92c79 0 126 -49 126 -134c0 -22 -4 -61 -8 -82l-57 -302c-12 -66 -26 -142 -22 -180h-136c-10 21 0 106 14 181l54 288c2 14 5 36 5 54c0 35 -12 59 -48 59c-47 0 -102 -59 -122 -167l-41 -217h-144l62 330c12 62 21 119 15 159h126 +c6 -19 7 -49 3 -81z" /> + <glyph glyph-name="theta" unicode="&#x3b8;" horiz-adv-x="555" +d="M237 -11c-129 0 -202 85 -202 241c0 55 7 114 21 174c42 173 145 317 300 317c129 0 194 -99 194 -231c0 -47 -5 -96 -14 -144c-37 -191 -135 -357 -299 -357zM203 413h200c5 34 8 65 8 90c0 71 -24 116 -71 116c-70 0 -116 -92 -137 -206zM384 310h-200 +c-6 -38 -10 -74 -10 -101c0 -75 28 -118 76 -118c69 0 110 88 134 219z" /> + <glyph glyph-name="iota" unicode="&#x3b9;" horiz-adv-x="265" +d="M243 489l-64 -338c-7 -38 3 -51 35 -49l-27 -105c-12 -4 -34 -8 -57 -8c-62 0 -103 24 -103 100c0 19 6 46 12 77l60 323h144z" /> + <glyph glyph-name="kappa" unicode="&#x3ba;" horiz-adv-x="522" +d="M333 265v-3c40 -16 61 -62 85 -126l52 -136h-156l-34 96c-21 61 -39 104 -77 104h-8l-37 -200h-144l67 358c9 48 17 113 12 131h136c8 -11 12 -43 3 -91l-21 -112h5c65 72 123 143 175 203h164v-5c-69 -71 -141 -142 -222 -219z" /> + <glyph glyph-name="lambda" unicode="&#x3bb;" horiz-adv-x="475" +d="M290 0l-29 236c-3 25 -7 54 -10 88l-6 1c-11 -31 -22 -61 -35 -92l-102 -233h-151l237 458c6 12 10 23 10 29c0 5 -1 11 -2 18c-10 57 -35 98 -84 99h-18l29 109c11 3 30 4 47 3c108 -4 144 -92 171 -231l90 -485h-147z" /> + <glyph glyph-name="uni03BC" unicode="&#x3bc;" horiz-adv-x="559" +d="M245 489l-52 -275c-15 -78 6 -108 54 -108c37 0 69 40 86 76c6 11 11 24 13 37l52 270h144l-62 -329c-8 -45 3 -58 30 -59l-27 -104c-12 -5 -25 -8 -48 -8c-53 0 -82 28 -89 91h-3c-27 -48 -66 -87 -123 -87c-31 0 -57 10 -72 30l-8 -44c-9 -52 -22 -137 -21 -177h-129 +c-6 23 1 102 16 180l95 507h144z" /> + <glyph glyph-name="nu" unicode="&#x3bd;" horiz-adv-x="483" +d="M28 489h153c8 -71 16 -151 22 -226c4 -42 7 -80 10 -122h4c56 94 112 200 131 299c3 18 4 32 5 49h140c0 -12 0 -28 -3 -44c-23 -129 -126 -294 -245 -445h-138c-25 163 -52 333 -79 489z" /> + <glyph glyph-name="xi" unicode="&#x3be;" horiz-adv-x="452" +d="M390 333h-33c-110 0 -180 -52 -180 -127c0 -56 33 -91 111 -111c38 -11 80 -18 123 -24c6 -1 8 -5 8 -12c0 -44 -66 -170 -108 -211l-87 30c12 21 36 74 43 99c-22 3 -52 9 -78 18c-67 19 -167 70 -167 186c0 115 89 195 176 216v6c-50 22 -84 69 -84 124 +c0 105 93 194 249 194c59 0 108 -14 135 -32l-36 -93c-21 13 -55 22 -88 22c-69 0 -114 -43 -114 -98c0 -54 45 -81 117 -87c11 -1 19 -1 31 -1z" /> + <glyph glyph-name="omicron" unicode="&#x3bf;" horiz-adv-x="559" +d="M236 -11c-125 0 -208 81 -208 203c0 169 118 309 292 309c132 0 208 -90 208 -202c0 -179 -123 -310 -292 -310zM256 99c78 0 123 116 123 199c0 45 -20 93 -77 93c-83 0 -125 -121 -125 -197c0 -57 29 -95 79 -95z" /> + <glyph glyph-name="rho" unicode="&#x3c1;" horiz-adv-x="566" +d="M123 -198h-137c-3 23 0 81 18 175l40 218c27 144 73 208 128 250c52 41 103 55 168 55c120 0 198 -85 198 -199c0 -177 -128 -312 -259 -312c-53 0 -100 19 -119 48h-2l-11 -62c-12 -61 -24 -135 -24 -173zM196 234l-6 -27c-2 -12 -3 -24 -3 -38c0 -27 27 -70 80 -70 +c64 0 123 89 123 191c0 52 -25 94 -76 94c-56 0 -98 -53 -118 -150z" /> + <glyph glyph-name="sigma" unicode="&#x3c3;" horiz-adv-x="585" +d="M475 406l-1 -6c36 -27 50 -87 50 -123c0 -153 -119 -288 -285 -288c-128 0 -211 81 -211 202c0 170 119 310 290 310h125h76h98l-18 -107c-22 0 -62 3 -124 12zM256 99c78 0 123 116 123 199c0 46 -20 93 -76 93c-85 0 -126 -121 -126 -197c0 -57 29 -95 79 -95z" /> + <glyph glyph-name="tau" unicode="&#x3c4;" horiz-adv-x="430" +d="M316 103l-23 -103c-13 -7 -39 -11 -61 -11c-94 0 -123 52 -123 119c0 23 5 59 10 84l34 185h-40c-46 0 -70 -2 -94 -7v85c25 17 62 34 175 34h262l-26 -112h-133l-37 -197c-3 -17 -4 -28 -4 -40c0 -25 15 -37 38 -37h22z" /> + <glyph glyph-name="upsilon" unicode="&#x3c5;" horiz-adv-x="536" +d="M368 489h133c8 -19 14 -54 14 -94c0 -177 -92 -406 -291 -406c-115 0 -188 62 -188 163c0 25 6 55 11 82l16 87c15 76 24 135 20 168h139c7 -13 8 -46 -1 -93l-27 -142c-4 -26 -11 -58 -11 -77c0 -42 27 -71 62 -71c81 0 129 163 129 304c0 36 -3 65 -6 79z" /> + <glyph glyph-name="phi" unicode="&#x3c6;" horiz-adv-x="685" +d="M248 88l42 230c23 128 95 182 178 182c105 0 186 -84 186 -200c0 -194 -154 -310 -298 -311l-35 -187h-127l35 187c-95 12 -200 81 -200 214c0 175 130 274 211 297l49 -70c-47 -27 -121 -100 -121 -217c0 -63 29 -111 80 -125zM425 358l-51 -270c84 8 141 102 141 207 +c0 59 -24 104 -57 104c-16 0 -28 -14 -33 -41z" /> + <glyph glyph-name="chi" unicode="&#x3c7;" horiz-adv-x="471" +d="M39 489h149l34 -135c8 -33 15 -65 22 -99h5c14 28 29 58 48 91c27 48 54 96 81 143h144c-75 -114 -150 -229 -226 -344l101 -340l-139 -30l-36 140c-11 39 -21 77 -30 122h-6c-15 -29 -30 -56 -53 -97c-32 -54 -66 -113 -98 -165l-119 42c77 116 151 226 228 341z" /> + <glyph glyph-name="psi" unicode="&#x3c8;" horiz-adv-x="691" +d="M525 489h130c8 -23 14 -55 14 -99c0 -225 -116 -391 -310 -401l-34 -187h-130l35 187c-98 8 -190 65 -190 190c0 22 3 55 8 84l18 97c10 52 17 97 16 129h129c9 -14 8 -47 0 -93l-24 -128c-5 -30 -8 -55 -8 -85c0 -60 30 -89 71 -92l98 526h128l-98 -527 +c78 2 154 108 154 315c0 41 -4 70 -7 84z" /> + <glyph glyph-name="omega" unicode="&#x3c9;" horiz-adv-x="717" +d="M508 491h128c23 -28 48 -92 48 -170c0 -177 -101 -332 -241 -332c-57 0 -100 29 -117 78h-4c-29 -44 -73 -78 -138 -78c-84 0 -156 63 -156 193c0 139 77 264 127 309h137v-3c-52 -54 -118 -169 -118 -291c0 -56 19 -86 46 -86c32 0 54 39 62 92l30 167h132l-30 -146 +c-4 -23 -9 -45 -9 -61c0 -26 11 -52 39 -52c55 0 99 115 99 233c0 55 -12 109 -35 144v3z" /> + <glyph glyph-name="uni03C2" unicode="&#x3c2;" horiz-adv-x="443" +d="M293 -153l-87 31c14 21 37 71 44 99c-21 3 -54 12 -84 23c-56 21 -143 79 -143 201c0 154 125 300 308 300c56 0 93 -11 120 -26l-38 -103c-20 11 -50 17 -81 17c-83 0 -159 -71 -159 -166c0 -70 39 -103 91 -123c37 -14 81 -22 128 -30c5 -1 7 -5 7 -12 +c0 -49 -57 -162 -106 -211z" /> + <glyph glyph-name="alphatonos" unicode="&#x3ac;" horiz-adv-x="576" +d="M375 700h140l-130 -152h-104zM362 77h-2c-44 -60 -103 -88 -169 -88c-92 0 -163 68 -163 184c0 199 145 328 257 328c66 0 108 -25 128 -73l3 -1c7 23 15 43 23 62h122c-8 -31 -19 -73 -27 -109c-16 -71 -32 -144 -45 -208c-11 -58 5 -73 32 -71l-26 -105 +c-11 -4 -23 -7 -45 -7c-53 0 -83 31 -88 88zM177 190c0 -52 26 -87 70 -87c46 0 87 49 104 95c5 16 10 34 13 53c3 16 6 38 6 50c0 52 -24 90 -71 90c-64 0 -122 -101 -122 -201z" /> + <glyph glyph-name="epsilontonos" unicode="&#x3ad;" horiz-adv-x="437" +d="M302 700h139l-130 -152h-103zM346 207h-46c-68 0 -129 -15 -129 -62c0 -31 40 -47 88 -47c46 0 97 13 132 28l5 -98c-57 -32 -134 -39 -185 -39c-105 0 -198 36 -198 126c0 81 65 131 125 142l1 4c-51 16 -75 50 -75 90c0 77 84 149 228 149c67 0 117 -14 148 -37 +l-34 -90c-21 13 -62 25 -104 25c-58 0 -92 -24 -92 -52c0 -30 38 -45 110 -45h42z" /> + <glyph glyph-name="etatonos" unicode="&#x3ae;" horiz-adv-x="563" +d="M362 700h140l-130 -152h-104zM219 408h2c46 63 106 92 171 92c79 0 126 -49 126 -134c0 -22 -4 -61 -8 -82l-58 -302c-12 -66 -25 -140 -22 -180h-136c-9 22 1 107 15 181l54 288c2 14 5 36 5 54c0 35 -12 59 -48 59c-47 0 -102 -59 -122 -167l-41 -217h-144l62 330 +c11 62 20 119 15 159h126c6 -19 7 -49 3 -81z" /> + <glyph glyph-name="iotatonos" unicode="&#x3af;" horiz-adv-x="265" +d="M224 700h140l-131 -152h-103zM243 489l-64 -338c-7 -37 4 -52 35 -49l-27 -105c-13 -4 -33 -8 -58 -8c-57 0 -101 21 -101 97c0 24 5 51 10 78l62 325h143z" /> + <glyph glyph-name="iotadieresis" unicode="&#x3ca;" horiz-adv-x="265" +d="M81 546c-34 0 -64 25 -64 64c0 44 33 73 73 73c39 0 63 -28 63 -64c0 -44 -32 -73 -72 -73zM285 546c-34 0 -64 25 -64 64c0 44 33 73 73 73c39 0 64 -28 64 -64c0 -44 -33 -73 -73 -73zM243 489l-65 -338c-7 -36 3 -51 36 -49l-28 -105c-13 -4 -33 -8 -57 -8 +c-60 0 -101 24 -101 96c0 24 4 51 10 79l61 325h144z" /> + <glyph glyph-name="omicrontonos" unicode="&#x3cc;" horiz-adv-x="559" +d="M354 700h140l-131 -152h-103zM236 -11c-125 0 -208 81 -208 203c0 169 118 309 292 309c132 0 208 -90 208 -202c0 -179 -123 -310 -292 -310zM256 99c78 0 123 116 123 199c0 45 -20 93 -77 93c-83 0 -125 -121 -125 -197c0 -57 29 -95 79 -95z" /> + <glyph glyph-name="upsilontonos" unicode="&#x3cd;" horiz-adv-x="536" +d="M322 700h140l-130 -152h-104zM368 489h133c8 -19 14 -51 14 -91c0 -180 -92 -409 -292 -409c-114 0 -187 61 -187 164c0 26 6 54 12 83l16 85c14 73 24 135 19 168h139c7 -13 8 -46 -1 -93l-26 -142c-6 -33 -12 -59 -12 -76c0 -44 26 -72 62 -72c80 0 129 168 129 304 +c0 36 -3 65 -6 79z" /> + <glyph glyph-name="upsilondieresis" unicode="&#x3cb;" horiz-adv-x="536" +d="M200 546c-34 0 -64 25 -64 64c0 44 33 73 73 73c39 0 64 -28 64 -64c0 -44 -33 -73 -73 -73zM404 546c-34 0 -64 25 -64 64c0 44 33 73 73 73c39 0 64 -28 64 -64c0 -44 -33 -73 -73 -73zM367 489h134c8 -19 14 -51 14 -91c0 -180 -92 -409 -292 -409 +c-114 0 -187 59 -187 165c0 24 5 50 12 82l16 85c14 73 24 135 19 168h139c7 -13 8 -46 -1 -93l-26 -142c-6 -30 -12 -61 -12 -76c0 -44 26 -72 62 -72c80 0 129 168 129 304c0 36 -3 65 -7 79z" /> + <glyph glyph-name="omegatonos" unicode="&#x3ce;" horiz-adv-x="716" +d="M436 700h139l-130 -152h-103zM508 491h128c23 -28 48 -92 48 -170c0 -177 -101 -332 -241 -332c-57 0 -100 29 -117 78h-4c-29 -44 -73 -78 -138 -78c-84 0 -156 63 -156 193c0 139 77 264 127 309h137v-3c-52 -54 -118 -169 -118 -291c0 -56 19 -86 46 -86 +c32 0 54 39 62 92l30 167h132l-30 -146c-4 -23 -9 -45 -9 -61c0 -26 11 -52 39 -52c55 0 99 115 99 233c0 55 -12 109 -35 144v3z" /> + <glyph glyph-name="iotadieresistonos" unicode="&#x390;" horiz-adv-x="265" +d="M243 489l-64 -339c-7 -37 3 -50 35 -48l-27 -105c-13 -4 -33 -8 -57 -8c-60 0 -102 23 -102 98c0 21 4 48 10 77l61 325h144zM182 711h114l-96 -168h-78zM45 554c-30 0 -57 21 -57 56c0 38 29 64 65 64c34 0 56 -25 56 -56c0 -39 -29 -64 -64 -64zM347 554 +c-31 0 -57 21 -57 56c0 38 29 64 65 64c34 0 56 -25 56 -56c0 -39 -29 -64 -64 -64z" /> + <glyph glyph-name="upsilondieresistonos" unicode="&#x3b0;" horiz-adv-x="536" +d="M368 489h133c8 -19 14 -51 14 -91c0 -180 -92 -409 -292 -409c-114 0 -187 61 -187 164c0 21 6 53 12 83l16 85c14 73 24 135 19 168h139c7 -13 8 -46 -1 -93l-26 -142c-6 -28 -12 -59 -12 -76c0 -43 26 -72 62 -72c80 0 129 168 129 304c0 36 -3 65 -6 79zM293 711h114 +l-97 -168h-79zM155 554c-31 0 -57 21 -57 56c0 38 29 64 65 64c34 0 56 -25 56 -56c0 -39 -29 -64 -64 -64zM457 554c-31 0 -57 21 -57 56c0 38 29 64 65 64c34 0 56 -25 56 -56c0 -39 -29 -64 -64 -64z" /> + <glyph glyph-name="uni037E" unicode="&#x37e;" horiz-adv-x="267" +d="M62 -110l-104 -9c40 89 80 193 98 278l155 4c-38 -90 -96 -195 -149 -273zM160 287c-49 0 -83 37 -83 86c0 56 41 105 101 105c49 0 85 -37 85 -88c0 -60 -43 -103 -103 -103z" /> + <glyph glyph-name="anoteleia" unicode="&#x387;" horiz-adv-x="267" +d="M130 218c-50 0 -84 37 -84 87c0 57 42 106 101 106c52 0 87 -36 87 -89c0 -61 -43 -104 -104 -104z" /> + <glyph glyph-name="tonos" unicode="&#x384;" horiz-adv-x="336" +d="M274 700h140l-130 -152h-104z" /> + <glyph glyph-name="dieresistonos" unicode="&#x385;" horiz-adv-x="435" +d="M250 715h114l-97 -168h-78zM112 558c-31 0 -59 22 -59 58c0 40 30 67 68 67c35 0 58 -26 58 -59c0 -40 -30 -66 -67 -66zM414 558c-31 0 -59 22 -59 58c0 40 30 67 68 67c35 0 58 -26 58 -59c0 -40 -30 -66 -67 -66z" /> + <glyph glyph-name="dieresis_acutecomb" unicode="&#xf6d7;" +d="M116 560c-28 0 -59 19 -59 59c0 41 31 68 67 68s58 -26 58 -59c0 -44 -33 -68 -66 -68zM264 704h127l-119 -151h-91zM440 561c-29 0 -60 18 -60 58c0 41 31 69 67 69s58 -26 58 -59c0 -44 -33 -68 -65 -68z" /> + <glyph glyph-name="dieresis_gravecomb" unicode="&#xf6d8;" +d="M106 560c-29 0 -59 18 -59 58s30 67 67 67c35 0 57 -26 57 -58c0 -43 -32 -67 -65 -67zM168 704h124l63 -151h-86zM423 561c-28 0 -59 18 -59 58c0 39 30 67 67 67c35 0 57 -26 57 -58c0 -43 -32 -67 -65 -67z" /> + <glyph glyph-name="space_uni030F" unicode="&#xf6d6;" +d="M58 696h124l77 -149h-85zM260 696h123l78 -149h-85z" /> + <glyph glyph-name="dieresis_acutecomb.cap" unicode="&#xf6cc;" +d="M133 713c-29 0 -59 19 -59 58s30 67 67 67c36 0 58 -26 58 -58c0 -43 -33 -67 -66 -67zM283 847h147l-116 -137h-111zM492 713c-28 0 -59 19 -59 58s30 67 67 67c36 0 58 -26 58 -58c0 -43 -32 -67 -66 -67z" /> + <glyph glyph-name="dieresis_gravecomb.cap" unicode="&#xf6cd;" +d="M98 713c-28 0 -58 19 -58 58s30 67 67 67c35 0 57 -26 57 -58c0 -43 -33 -67 -66 -67zM169 847h149l74 -135h-102zM459 713c-28 0 -59 19 -59 58s30 67 67 67c35 0 57 -26 57 -58c0 -43 -32 -67 -65 -67z" /> + <glyph glyph-name="space_uni030F.cap" unicode="&#xf6d3;" horiz-adv-x="396" +d="M64 835h146l82 -123h-100zM275 835h146l82 -123h-100z" /> + <glyph glyph-name="o.superior" horiz-adv-x="383" +d="M247 591c89 0 149 -55 149 -139c0 -116 -82 -191 -196 -191c-85 0 -146 58 -146 137c0 115 82 193 193 193zM238 517c-48 0 -76 -68 -76 -121c0 -36 20 -61 50 -61c46 0 76 64 76 123c0 31 -13 59 -50 59z" /> + <glyph glyph-name="uni0401" unicode="&#x401;" horiz-adv-x="517" +d="M480 407l-23 -121h-239l-32 -163h269l-23 -123h-413l128 674h398l-24 -123h-253l-28 -144h240zM255 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73zM462 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64 +c0 -44 -34 -73 -73 -73z" /> + <glyph glyph-name="uni0402" unicode="&#x402;" horiz-adv-x="692" +d="M93 674h533l-25 -125h-220l-23 -122h2c23 12 59 24 103 24c121 0 186 -91 186 -219c0 -109 -38 -209 -101 -275c-58 -61 -138 -98 -206 -106l-22 123c43 8 81 28 111 59c41 42 64 109 64 179c0 66 -26 120 -91 120c-23 0 -49 -9 -67 -20l-58 -312h-142l102 549h-172z" /> + <glyph glyph-name="uni0403" unicode="&#x403;" horiz-adv-x="457" +d="M147 674h376l-24 -126h-232l-104 -548h-144zM358 836h160l-132 -126h-123z" /> + <glyph glyph-name="uni0404" unicode="&#x404;" horiz-adv-x="565" +d="M612 655l-41 -116c-26 13 -75 25 -127 24c-113 -1 -201 -66 -228 -170h278l-18 -114h-271c-1 -5 -1 -12 -1 -19c1 -69 54 -150 172 -150c57 0 103 12 137 26l11 -115c-37 -18 -113 -32 -180 -32c-194 0 -295 124 -295 292c0 130 50 239 139 312c72 59 163 91 268 91 +c80 0 131 -17 156 -29z" /> + <glyph glyph-name="uni0405" unicode="&#x405;" horiz-adv-x="510" +d="M0 37l48 119c40 -24 97 -43 159 -43c56 0 107 26 107 78c0 39 -29 63 -91 96c-71 38 -139 91 -139 178c0 137 118 219 265 219c82 0 130 -18 159 -33l-45 -120c-22 12 -70 30 -125 29c-68 0 -103 -33 -103 -70c0 -39 41 -64 98 -96c82 -42 134 -97 134 -178 +c0 -150 -124 -228 -274 -227c-94 1 -161 25 -193 48z" /> + <glyph glyph-name="uni0406" unicode="&#x406;" horiz-adv-x="274" +d="M144 674h144l-128 -674h-144z" /> + <glyph glyph-name="uni0407" unicode="&#x407;" horiz-adv-x="274" +d="M143 674h145l-128 -674h-144zM121 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73zM328 711c-33 0 -64 25 -64 64c0 43 33 73 73 73c38 0 64 -29 64 -64c0 -44 -34 -73 -73 -73z" /> + <glyph glyph-name="uni0408" unicode="&#x408;" horiz-adv-x="399" +d="M194 247l81 427h144l-85 -445c-33 -171 -106 -240 -259 -240c-42 0 -89 7 -111 16l28 123c21 -7 48 -12 80 -12c63 0 103 31 122 131z" /> + <glyph glyph-name="uni0409" unicode="&#x409;" horiz-adv-x="919" +d="M213 674h424l-46 -235c20 4 47 6 74 6c125 0 219 -64 219 -196c0 -72 -27 -126 -68 -166c-69 -67 -183 -90 -285 -90c-72 0 -133 5 -164 10l103 548h-143l-32 -161c-25 -130 -61 -268 -143 -341c-41 -36 -100 -60 -172 -60l-13 121c34 1 75 18 98 42c44 45 79 152 93 228 +zM569 326l-41 -217c16 -2 29 -2 50 -2c72 0 153 42 153 124c0 68 -48 100 -109 100c-19 0 -38 -2 -53 -5z" /> + <glyph glyph-name="uni040A" unicode="&#x40a;" horiz-adv-x="928" +d="M148 674h144l-49 -256h212l48 256h144l-48 -244c21 5 48 7 74 7c121 0 221 -62 221 -195c0 -67 -26 -120 -68 -160c-68 -67 -182 -89 -285 -89c-71 0 -133 5 -164 10l56 297h-213l-56 -300h-144zM577 318l-39 -209c16 -2 30 -2 51 -2c74 0 152 42 152 119 +c0 68 -53 97 -112 97c-18 0 -37 -2 -52 -5z" /> + <glyph glyph-name="uni040B" unicode="&#x40b;" horiz-adv-x="695" +d="M92 674h526l-25 -124h-216l-28 -143h3c33 21 81 41 139 40c102 0 147 -61 146 -152c-1 -33 -6 -70 -12 -104l-33 -191h-144l34 184c4 22 8 50 8 75c0 36 -19 69 -73 69c-37 0 -71 -19 -90 -36l-54 -292h-142l103 550h-167z" /> + <glyph glyph-name="uni040C" unicode="&#x40c;" horiz-adv-x="585" +d="M147 674h142l-55 -284h16l230 284h177l-282 -305c67 -30 94 -111 113 -208c16 -77 25 -126 40 -161h-149c-11 29 -23 91 -35 154c-16 81 -37 131 -111 131h-18l-54 -285h-142zM396 836h160l-132 -126h-122z" /> + <glyph glyph-name="uni040E" unicode="&#x40e;" horiz-adv-x="556" +d="M75 674h159l58 -242c11 -41 20 -85 30 -132h4c19 49 34 89 56 140l99 234h167l-182 -351c-56 -109 -111 -215 -186 -279c-44 -39 -98 -55 -150 -55c-34 0 -68 5 -92 17l25 117c14 -5 36 -8 56 -8c42 0 75 31 93 62c9 15 10 29 4 47zM236 836h101c-4 -36 7 -60 39 -60 +s49 23 58 60h102c-18 -79 -78 -122 -168 -122c-93 0 -134 44 -132 122z" /> + <glyph glyph-name="uni040F" unicode="&#x40f;" horiz-adv-x="648" +d="M146 674h145l-105 -551h227l105 551h144l-127 -674h-190l-45 -185h-114l29 185h-196z" /> + <glyph glyph-name="uni0410" unicode="&#x410;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -37 -93 -54 -132z" /> + <glyph glyph-name="uni0411" unicode="&#x411;" horiz-adv-x="573" +d="M146 674h410l-22 -124h-267l-23 -121c20 4 50 7 75 7c119 0 216 -63 216 -193c0 -80 -35 -139 -86 -178c-68 -53 -165 -72 -259 -72c-70 0 -139 5 -170 10zM223 322l-40 -215c16 -3 31 -3 51 -3c70 0 149 42 149 123c0 65 -44 100 -107 100c-17 0 -38 -2 -53 -5z" /> + <glyph glyph-name="uni0412" unicode="&#x412;" horiz-adv-x="586" +d="M20 7l124 656c48 10 111 16 177 16c71 0 122 -9 167 -35c45 -23 78 -67 78 -124c0 -85 -62 -139 -136 -160v-3c65 -20 106 -73 106 -147c0 -73 -39 -125 -92 -160c-57 -39 -142 -55 -254 -55c-76 0 -137 5 -170 12zM268 563l-30 -157h48c79 0 133 34 133 92 +c0 48 -39 69 -94 69c-25 0 -46 -2 -57 -4zM216 301l-36 -191c17 -2 34 -2 55 -2c78 0 149 31 149 106c0 67 -56 87 -123 87h-45z" /> + <glyph glyph-name="uni0413" unicode="&#x413;" horiz-adv-x="457" +d="M147 674h376l-24 -126h-232l-104 -548h-144z" /> + <glyph glyph-name="uni0414" unicode="&#x414;" horiz-adv-x="660" +d="M231 674h420l-105 -557l64 -4l-66 -284h-116l25 171h-358l-45 -171h-114l49 284l53 5c38 55 72 114 98 175c27 65 47 133 61 204zM339 551l-18 -94c-13 -65 -32 -132 -57 -193c-21 -51 -46 -99 -77 -144h217l80 431h-145z" /> + <glyph glyph-name="uni0415" unicode="&#x415;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241z" /> + <glyph glyph-name="uni0416" unicode="&#x416;" horiz-adv-x="845" +d="M85 674h154l116 -287h15l52 287h138l-54 -288h16l218 288h163l-272 -305c80 -27 104 -121 120 -206c9 -62 18 -116 36 -163h-145c-16 48 -25 103 -34 162c-12 78 -38 126 -102 126h-16l-54 -288h-139l55 289h-16c-65 0 -107 -52 -140 -124c-30 -61 -50 -116 -80 -165 +h-152c34 51 59 116 89 179c57 119 101 169 196 191z" /> + <glyph glyph-name="uni0417" unicode="&#x417;" horiz-adv-x="507" +d="M135 294l19 109h46c71 0 141 26 139 94c0 46 -37 69 -82 69c-50 0 -99 -18 -136 -37l-29 102c43 27 113 53 197 53c101 0 200 -45 200 -162c0 -89 -70 -150 -149 -168l-1 -2c69 -15 121 -70 121 -149c0 -147 -138 -214 -275 -214c-69 0 -145 19 -196 54l44 109 +c29 -17 89 -41 150 -41c65 0 128 31 128 97c0 64 -71 87 -123 86h-53z" /> + <glyph glyph-name="uni0418" unicode="&#x418;" horiz-adv-x="659" +d="M147 674h136l-39 -206c-20 -105 -42 -201 -66 -294l3 -1c51 86 103 161 153 234l183 267h156l-128 -674h-136l40 206c19 100 34 177 58 269h-3c-44 -80 -94 -157 -146 -233l-171 -242h-168z" /> + <glyph glyph-name="uni0419" unicode="&#x419;" horiz-adv-x="659" +d="M147 674h137l-40 -206c-20 -105 -42 -201 -65 -294l3 -1c50 86 103 161 152 234l183 267h156l-128 -674h-136l40 206c20 100 34 177 58 269h-3c-43 -80 -94 -157 -146 -233l-170 -242h-168zM285 833h101c-4 -36 7 -60 39 -60s49 23 58 60h102c-18 -79 -78 -122 -168 -122 +c-93 0 -134 44 -132 122z" /> + <glyph glyph-name="uni041A" unicode="&#x41a;" horiz-adv-x="585" +d="M147 674h142l-55 -284h16l230 284h177l-282 -305c67 -30 94 -111 113 -208c16 -77 25 -126 40 -161h-149c-11 29 -23 91 -35 154c-16 81 -37 131 -111 131h-18l-54 -285h-142z" /> + <glyph glyph-name="uni041B" unicode="&#x41b;" horiz-adv-x="637" +d="M212 674h439l-128 -674h-144l105 551h-158l-32 -163c-33 -169 -70 -271 -139 -334c-41 -40 -99 -64 -174 -65l-14 121c44 4 75 20 100 46c41 44 71 124 89 223z" /> + <glyph glyph-name="uni041C" unicode="&#x41c;" horiz-adv-x="821" +d="M722 0h-140l41 278c11 73 26 166 45 263h-3c-37 -87 -79 -180 -116 -254l-138 -276h-112l-24 273c-6 74 -11 167 -15 257h-2c-19 -89 -39 -190 -56 -263l-67 -278h-132l169 674h193l21 -256c4 -63 11 -140 12 -215h4c26 75 62 154 91 215l125 256h195z" /> + <glyph glyph-name="uni041D" unicode="&#x41d;" horiz-adv-x="666" +d="M147 674h144l-50 -263h244l50 263h145l-128 -674h-144l53 283h-245l-53 -283h-144z" /> + <glyph glyph-name="uni041E" unicode="&#x41e;" horiz-adv-x="705" +d="M321 -11c-175 0 -273 124 -273 281c0 121 45 240 122 317c63 61 150 98 248 98c178 0 272 -120 272 -281c0 -122 -43 -242 -119 -317c-62 -62 -148 -98 -250 -98zM342 109c116 0 195 164 195 291c0 84 -30 165 -136 165c-121 0 -200 -162 -200 -290 +c0 -95 43 -166 141 -166z" /> + <glyph glyph-name="uni041F" unicode="&#x41f;" horiz-adv-x="652" +d="M147 674h519l-128 -674h-144l105 551h-230l-106 -551h-144z" /> + <glyph glyph-name="uni0420" unicode="&#x420;" horiz-adv-x="559" +d="M19 0l125 662c44 11 111 17 176 17c61 0 130 -10 179 -44c46 -31 73 -79 73 -144c0 -84 -39 -149 -91 -189c-55 -43 -134 -63 -216 -63c-24 0 -44 3 -59 4l-46 -243h-141zM266 560l-38 -199c15 -3 31 -5 56 -5c86 0 143 55 143 123c0 64 -47 85 -102 85 +c-27 0 -47 -2 -59 -4z" /> + <glyph glyph-name="uni0421" unicode="&#x421;" horiz-adv-x="582" +d="M512 135l12 -116c-36 -16 -96 -29 -177 -29c-179 0 -298 109 -298 286c0 151 68 269 170 337c70 48 152 71 247 71c73 0 128 -17 148 -28l-40 -117c-19 9 -64 22 -122 22s-113 -18 -154 -52c-56 -47 -93 -123 -93 -217c0 -107 61 -179 179 -179c48 0 95 8 128 22z" /> + <glyph glyph-name="uni0422" unicode="&#x422;" horiz-adv-x="527" +d="M141 0l104 548h-178l25 126h501l-24 -126h-180l-104 -548h-144z" /> + <glyph glyph-name="uni0423" unicode="&#x423;" horiz-adv-x="556" +d="M75 674h159l58 -242c11 -41 20 -85 30 -132h3c20 49 35 89 56 140l100 234h167l-182 -351c-56 -109 -111 -215 -186 -279c-44 -39 -98 -55 -151 -55c-34 0 -67 5 -91 17l25 117c14 -5 36 -8 56 -8c42 0 75 31 93 62c9 15 10 29 4 47z" /> + <glyph glyph-name="uni0424" unicode="&#x424;" horiz-adv-x="774" +d="M268 -29l11 64c-113 22 -226 105 -226 265c0 247 201 344 342 346l11 56h135l-11 -59c115 -20 226 -103 226 -270c0 -236 -182 -339 -342 -341l-11 -61h-135zM299 139l76 404c-84 -5 -176 -99 -176 -243c0 -90 44 -146 100 -161zM510 540l-76 -405c91 6 176 93 176 249 +c0 89 -40 144 -100 156z" /> + <glyph glyph-name="uni0425" unicode="&#x425;" horiz-adv-x="569" +d="M517 0h-153l-46 136c-13 41 -24 73 -36 115h-2c-22 -38 -40 -72 -68 -120l-80 -131h-173l252 344l-118 330h152l41 -129c12 -42 21 -72 31 -112h3c25 46 42 78 64 114l78 127h172l-246 -331z" /> + <glyph glyph-name="uni0426" unicode="&#x426;" horiz-adv-x="668" +d="M147 674h144l-105 -551h227l105 551h144l-105 -557l63 -4l-66 -284h-115l25 171h-445z" /> + <glyph glyph-name="uni0427" unicode="&#x427;" horiz-adv-x="602" +d="M131 674h144l-37 -191c-3 -15 -7 -37 -7 -56c0 -50 32 -73 90 -73c39 0 76 12 96 24l56 296h143l-128 -675h-144l51 264l-3 1c-31 -16 -81 -27 -132 -27c-110 0 -178 57 -178 154c0 24 5 52 10 81z" /> + <glyph glyph-name="uni0428" unicode="&#x428;" horiz-adv-x="875" +d="M147 674h141l-105 -551h160l105 551h140l-104 -551h159l105 551h141l-128 -674h-742z" /> + <glyph glyph-name="uni0429" unicode="&#x429;" horiz-adv-x="895" +d="M148 674h141l-105 -551h160l105 551h140l-104 -551h159l105 551h141l-106 -557l64 -4l-66 -284h-116l25 171h-671z" /> + <glyph glyph-name="uni042A" unicode="&#x42a;" horiz-adv-x="685" +d="M91 674h312l-47 -235c20 3 46 6 72 6c129 0 222 -67 222 -198c0 -69 -26 -123 -66 -163c-69 -68 -183 -91 -289 -91c-71 0 -132 5 -162 10l103 546h-169zM334 325l-41 -215c17 -3 31 -3 51 -3c72 0 152 41 152 122c0 66 -45 102 -109 102c-21 0 -40 -3 -53 -6z" /> + <glyph glyph-name="uni042B" unicode="&#x42b;" horiz-adv-x="816" +d="M145 674h144l-47 -236c20 4 49 7 76 7c114 0 209 -65 209 -197c0 -70 -26 -124 -67 -165c-73 -73 -182 -90 -278 -90c-72 0 -132 5 -163 10zM220 325l-40 -215c11 -3 29 -3 50 -3c65 0 143 40 143 122c0 66 -41 102 -100 102c-18 0 -38 -3 -53 -6zM679 674h150l-129 -674 +h-150z" /> + <glyph glyph-name="uni042C" unicode="&#x42c;" horiz-adv-x="572" +d="M146 674h143l-46 -236c19 4 47 7 75 7c124 0 219 -65 219 -198c0 -69 -26 -122 -65 -161c-70 -69 -184 -93 -290 -93c-71 0 -132 5 -162 10zM221 325l-41 -215c16 -3 31 -3 51 -3c71 0 152 40 152 122c0 67 -45 102 -110 102c-18 0 -38 -3 -52 -6z" /> + <glyph glyph-name="uni042D" unicode="&#x42d;" horiz-adv-x="575" +d="M109 278l21 115h276c1 5 1 10 1 16c-2 81 -57 154 -162 154c-42 0 -89 -9 -130 -25l-28 109c40 19 105 38 178 38c181 0 292 -121 292 -303c0 -114 -37 -220 -112 -294c-67 -65 -158 -99 -277 -99c-77 0 -147 21 -178 39l36 114c41 -21 90 -30 140 -30 +c120 0 200 72 222 166h-279z" /> + <glyph glyph-name="uni042E" unicode="&#x42e;" horiz-adv-x="939" +d="M147 674h144l-50 -264h88c19 68 52 130 98 177c60 61 143 98 236 98c170 0 262 -120 262 -281c0 -122 -42 -241 -115 -317c-59 -62 -141 -98 -237 -98c-165 0 -260 127 -260 259c0 12 1 24 3 37h-99l-53 -285h-144zM591 108c111 0 183 165 183 291c0 84 -27 167 -127 167 +c-115 0 -190 -163 -190 -291c0 -95 40 -167 134 -167z" /> + <glyph glyph-name="uni042F" unicode="&#x42f;" horiz-adv-x="572" +d="M586 662l-123 -662h-144l51 269h-27c-82 0 -123 -85 -154 -147c-19 -42 -40 -86 -64 -122h-158c30 45 55 100 81 151c36 71 81 144 151 165v4c-49 13 -111 59 -111 148c0 71 37 128 90 162c57 36 128 49 216 49c70 0 149 -7 192 -17zM390 375l34 188c-12 2 -33 4 -53 4 +c-73 0 -134 -33 -134 -106c0 -58 51 -88 108 -88c15 0 33 1 45 2z" /> + <glyph glyph-name="uni0430" unicode="&#x430;" horiz-adv-x="554" +d="M469 0h-132c1 29 3 62 6 97h-2c-47 -81 -110 -108 -167 -108c-88 0 -148 68 -148 170c0 165 110 341 351 341c58 0 121 -11 161 -24l-49 -256c-12 -63 -22 -159 -20 -220zM355 274l21 113c-11 2 -24 4 -38 4c-94 0 -162 -114 -162 -205c0 -48 19 -81 59 -81 +c44 0 98 49 120 169z" /> + <glyph glyph-name="uni0431" unicode="&#x431;" horiz-adv-x="557" +d="M572 719l-21 -120c-27 -8 -57 -11 -86 -14c-75 -8 -149 -13 -212 -73c-31 -29 -58 -77 -67 -115h4c40 56 96 92 166 92c110 0 172 -84 172 -192c-1 -161 -112 -308 -284 -308c-123 0 -199 86 -199 239c0 141 42 269 125 355c89 93 184 110 305 120c35 3 71 7 97 16z +M261 95c83 0 118 118 118 192c0 46 -19 99 -71 99c-30 0 -58 -19 -78 -46c-27 -35 -43 -86 -43 -139c0 -55 22 -106 74 -106z" /> + <glyph glyph-name="uni0432" unicode="&#x432;" horiz-adv-x="533" +d="M319 501c107 0 176 -39 176 -121c0 -64 -63 -103 -114 -116v-2c51 -6 102 -39 102 -102c0 -129 -151 -170 -258 -170c-126 0 -192 48 -192 151c0 90 39 250 127 314c43 30 95 46 159 46zM306 403c-64 0 -91 -63 -106 -117c39 6 82 13 115 28c23 11 42 27 42 50 +c0 24 -21 39 -51 39zM263 209c-29 0 -61 -8 -80 -15c-3 -13 -6 -31 -6 -46c0 -34 17 -59 65 -59c56 0 95 28 95 67c0 41 -35 53 -74 53z" /> + <glyph glyph-name="uni0433" unicode="&#x433;" horiz-adv-x="421" +d="M104 369l-14 96c38 20 97 35 157 35c107 -1 163 -52 163 -135c0 -85 -75 -128 -166 -166c-53 -23 -90 -42 -90 -70c0 -20 14 -34 50 -34c51 0 102 21 135 37l15 -101c-45 -24 -113 -41 -172 -41c-109 1 -176 46 -176 134c0 102 88 139 173 174c49 20 91 38 91 64 +c0 19 -19 32 -53 32c-41 0 -81 -12 -113 -25z" /> + <glyph glyph-name="uni0434" unicode="&#x434;" horiz-adv-x="553" +d="M140 601l-2 118c43 -12 103 -10 146 -14c74 -8 130 -26 172 -65c58 -49 79 -132 79 -226c0 -187 -83 -425 -307 -425c-124 0 -199 76 -199 203c0 144 101 298 257 298c66 0 108 -32 129 -81h3c1 10 1 22 1 30c1 36 -12 80 -43 106c-32 31 -79 41 -140 45 +c-30 3 -60 4 -96 11zM250 95c77 0 118 122 119 187c0 48 -18 100 -72 100c-81 0 -120 -116 -119 -193c0 -49 20 -94 72 -94z" /> + <glyph glyph-name="uni0435" unicode="&#x435;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60z" /> + <glyph glyph-name="uni0436" unicode="&#x436;" horiz-adv-x="726" +d="M54 489h155l76 -202h14l38 202h136l-41 -202h15l157 202h160l-201 -215c48 -16 71 -86 81 -144c8 -41 16 -93 28 -130h-139c-11 31 -16 73 -22 106c-9 50 -23 99 -76 99h-17l-38 -205h-137l41 205h-13c-54 0 -87 -35 -112 -89c-21 -43 -36 -82 -57 -116h-142 +c23 40 39 83 62 131c34 73 85 135 151 142z" /> + <glyph glyph-name="uni0437" unicode="&#x437;" horiz-adv-x="461" +d="M98 206l14 93h57c48 0 102 14 102 51c0 32 -31 47 -70 47c-38 0 -86 -13 -121 -31l-24 87c49 27 115 45 178 45c80 0 189 -24 189 -126c0 -68 -63 -104 -125 -116l-1 -1c54 -9 111 -45 111 -113c0 -118 -136 -151 -233 -151c-72 0 -140 14 -194 49l37 96 +c39 -23 92 -40 141 -40c46 0 97 17 97 56c0 41 -47 54 -100 54h-58z" /> + <glyph glyph-name="uni0438" unicode="&#x438;" horiz-adv-x="560" +d="M103 489h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156l43 227h143l-62 -330c-11 -62 -20 -115 -26 -159h-127l9 80h-2c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90z" /> + <glyph glyph-name="uni0439" unicode="&#x439;" horiz-adv-x="560" +d="M103 489h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156l43 227h143l-62 -330c-11 -62 -20 -115 -26 -159h-127l9 80h-2c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90zM226 692h91c-5 -40 9 -66 36 -66 +c29 0 46 30 55 66h92c-18 -87 -75 -132 -156 -132c-88 0 -124 53 -118 132z" /> + <glyph glyph-name="uni043A" unicode="&#x43a;" horiz-adv-x="507" +d="M106 489h140l-38 -201h14l164 201h169l-214 -218c46 -19 69 -73 82 -145c9 -44 19 -94 32 -126h-142c-10 25 -18 73 -28 116c-15 59 -34 88 -80 88h-13l-39 -204h-140z" /> + <glyph glyph-name="uni043B" unicode="&#x43b;" horiz-adv-x="545" +d="M146 490h385l-93 -490h-143l71 379h-108l-19 -93c-24 -124 -56 -194 -107 -238c-36 -35 -80 -55 -152 -55l-9 113c30 3 54 13 71 30c31 28 52 81 66 153z" /> + <glyph glyph-name="uni043C" unicode="&#x43c;" horiz-adv-x="712" +d="M130 490h181l19 -191c3 -29 6 -71 9 -115h2c12 28 39 83 64 132l91 174h183l-65 -490h-133l30 196c6 42 18 114 27 163h-4c-15 -35 -43 -91 -73 -151l-103 -200h-110l-19 194c-5 55 -10 115 -13 158h-4c-11 -53 -26 -126 -36 -167l-48 -193h-127z" /> + <glyph glyph-name="uni043D" unicode="&#x43d;" horiz-adv-x="557" +d="M105 489h144l-34 -180h149l34 180h144l-93 -489h-144l38 198h-149l-37 -198h-144z" /> + <glyph glyph-name="uni043E" unicode="&#x43e;" horiz-adv-x="559" +d="M236 -11c-125 0 -208 81 -208 203c0 169 118 309 292 309c132 0 208 -90 208 -202c0 -179 -123 -310 -292 -310zM256 99c78 0 123 116 123 199c0 45 -20 93 -77 93c-83 0 -125 -121 -125 -197c0 -57 29 -95 79 -95z" /> + <glyph glyph-name="uni043F" unicode="&#x43f;" horiz-adv-x="563" +d="M156 0h-144l62 330c12 62 20 115 27 159h127l-9 -81h2c46 63 106 92 171 92c80 0 126 -49 126 -134c0 -22 -4 -58 -8 -82l-54 -284h-145l52 271c3 17 5 36 5 54c0 35 -12 59 -49 59c-47 0 -102 -59 -122 -167z" /> + <glyph glyph-name="uni0440" unicode="&#x440;" horiz-adv-x="565" +d="M117 -198h-144l95 498c11 58 22 143 28 193h129l-9 -75h2c40 53 98 82 157 82c106 0 158 -85 158 -186c0 -169 -113 -325 -284 -325c-39 0 -73 10 -90 20h-3zM197 227l-18 -106c16 -14 37 -23 66 -23c77 0 137 109 137 205c0 39 -17 80 -63 80c-54 0 -106 -59 -122 -156z +" /> + <glyph glyph-name="uni0441" unicode="&#x441;" horiz-adv-x="433" +d="M371 125l1 -109c-31 -15 -81 -26 -139 -26c-121 0 -206 74 -206 200c0 174 133 310 319 310c42 0 78 -8 100 -16l-36 -111c-17 7 -37 12 -66 12c-102 0 -166 -87 -166 -179c0 -67 43 -101 96 -101c42 0 72 10 97 20z" /> + <glyph glyph-name="uni0442" unicode="&#x442;" horiz-adv-x="831" +d="M152 0h-139l61 330c11 62 19 115 25 159h123l-9 -79h2c45 63 105 91 168 91c78 0 112 -50 116 -93c44 63 105 93 169 93c75 0 119 -49 119 -132c0 -20 -4 -59 -8 -84l-53 -285h-140l49 268c4 19 7 40 7 59c0 34 -15 58 -48 58c-48 0 -96 -64 -115 -163l-41 -222h-139 +l51 269c3 20 6 39 6 56c0 34 -11 60 -46 60c-49 0 -101 -68 -118 -165z" /> + <glyph glyph-name="uni0443" unicode="&#x443;" horiz-adv-x="497" +d="M43 489h152l30 -214c7 -51 13 -86 17 -117h2c11 30 23 61 43 115l87 216h152c-45 -93 -121 -257 -173 -359c-67 -129 -122 -209 -189 -272c-57 -54 -125 -79 -157 -84l-32 124c23 7 55 19 83 38c33 23 61 53 80 86c4 7 4 13 2 23z" /> + <glyph glyph-name="uni0444" unicode="&#x444;" horiz-adv-x="735" +d="M215 -198l45 234h-2c-23 -28 -59 -47 -106 -47c-71 0 -126 61 -126 180c0 160 95 331 237 331c41 0 66 -25 76 -47h2l49 257h129l-52 -260h3c22 25 62 50 106 50c91 0 131 -85 131 -181c0 -166 -93 -330 -232 -330c-37 0 -71 19 -84 45h-2l-41 -232h-133zM281 390 +c-66 0 -111 -124 -111 -205c0 -50 20 -80 50 -80c36 0 59 34 67 69l27 133c3 16 4 30 5 44c-1 18 -14 39 -38 39zM516 384c-22 0 -41 -14 -55 -36c-10 -21 -16 -43 -22 -71c-6 -35 -14 -71 -20 -108c-3 -17 -2 -32 4 -39c4 -12 19 -29 45 -26c54 7 96 116 96 199 +c0 42 -13 81 -48 81z" /> + <glyph glyph-name="uni0445" unicode="&#x445;" horiz-adv-x="498" +d="M49 489h158l29 -73c15 -39 24 -64 31 -82h3c18 26 31 48 52 78l54 77h165l-206 -238l114 -251h-158l-31 78c-14 35 -22 60 -31 89h-3c-14 -23 -27 -48 -49 -82l-59 -85h-166l212 253z" /> + <glyph glyph-name="uni0446" unicode="&#x446;" horiz-adv-x="576" +d="M103 489h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156l42 227h144l-53 -282c-5 -24 -10 -49 -10 -70c0 -36 18 -59 69 -60l-75 -233h-103l42 156c-14 4 -32 15 -43 32c-10 14 -14 33 -16 52h-2c-48 -64 -112 -96 -177 -95 +c-80 0 -134 44 -134 137c0 26 3 56 10 90z" /> + <glyph glyph-name="uni0447" unicode="&#x447;" horiz-adv-x="538" +d="M89 489h144l-23 -113c-3 -17 -8 -39 -8 -58c0 -30 17 -54 63 -54c28 0 59 11 77 26l38 199h143l-94 -489h-143l38 186h-2c-27 -15 -67 -27 -116 -27c-104 0 -152 51 -152 126c0 22 4 50 10 78z" /> + <glyph glyph-name="uni0448" unicode="&#x448;" horiz-adv-x="826" +d="M102 489h140l-49 -267c-4 -19 -7 -40 -7 -59c0 -34 15 -58 47 -58c48 0 94 64 113 163l41 221h139l-51 -269c-3 -19 -6 -38 -6 -55c0 -34 11 -60 45 -60c47 0 98 68 116 164l40 220h140l-61 -328c-10 -55 -13 -119 -15 -161h-129c1 29 3 56 5 81h-2 +c-44 -63 -104 -92 -167 -92c-76 0 -111 50 -115 93c-44 -63 -105 -93 -168 -93c-74 0 -117 49 -117 132c0 20 4 59 8 84z" /> + <glyph glyph-name="uni0449" unicode="&#x449;" horiz-adv-x="844" +d="M102 489h140l-49 -267c-4 -19 -7 -40 -7 -59c0 -34 15 -58 47 -58c47 0 93 64 112 163l42 221h139l-51 -269c-3 -19 -6 -38 -6 -55c0 -34 11 -60 45 -60c48 0 99 68 117 164l40 220h139l-50 -274c-3 -19 -11 -58 -11 -80c0 -36 19 -57 69 -58l-75 -233h-103l41 156 +c-32 7 -58 49 -61 84h-3c-45 -64 -110 -95 -176 -95c-76 0 -111 50 -115 93c-44 -63 -105 -93 -167 -93c-74 0 -118 49 -118 132c0 20 4 59 8 84z" /> + <glyph glyph-name="uni044A" unicode="&#x44a;" horiz-adv-x="579" +d="M55 489h323c-42 -62 -82 -124 -109 -189h1c32 29 77 45 130 45c79 0 139 -49 139 -135c0 -104 -94 -219 -264 -219c-88 0 -178 23 -178 141c0 77 47 176 97 246h-160zM294 93c54 0 104 37 104 92c0 36 -23 57 -59 57c-43 0 -78 -31 -90 -59c-6 -12 -9 -24 -9 -38 +c0 -28 17 -52 54 -52z" /> + <glyph glyph-name="uni044B" unicode="&#x44b;" horiz-adv-x="743" +d="M111 489h142l-48 -189h2c32 28 83 45 128 45c79 0 134 -49 134 -134c0 -106 -89 -220 -268 -220c-77 0 -166 18 -166 118c0 28 8 71 14 99zM231 93c46 0 97 36 97 92c0 36 -21 57 -56 57c-43 0 -79 -38 -88 -68c-4 -12 -6 -22 -6 -37c0 -26 17 -44 53 -44zM578 489h151 +l-94 -489h-151z" /> + <glyph glyph-name="uni044C" unicode="&#x44c;" horiz-adv-x="517" +d="M112 489h141l-48 -188l1 -1c32 28 85 45 130 45c79 0 141 -49 141 -135c0 -111 -92 -219 -273 -219c-79 0 -169 18 -169 123c0 25 8 66 15 94zM231 93c50 0 105 35 105 91c0 37 -23 58 -58 58c-48 0 -83 -38 -93 -65c-5 -13 -7 -22 -7 -38c0 -28 18 -46 53 -46z" /> + <glyph glyph-name="uni044D" unicode="&#x44d;" horiz-adv-x="471" +d="M89 198l16 92h188v9c0 51 -38 92 -111 92c-38 0 -76 -8 -102 -19l-23 100c40 16 89 28 145 28c152 0 233 -92 233 -231c0 -165 -109 -279 -301 -279c-62 2 -110 13 -148 34l34 100c27 -13 69 -24 116 -24c71 0 126 34 144 98h-191z" /> + <glyph glyph-name="uni044E" unicode="&#x44e;" horiz-adv-x="763" +d="M105 489h145l-35 -184h65c38 115 133 196 255 196s198 -90 198 -208c0 -173 -117 -304 -277 -304c-119 0 -192 80 -192 188c0 8 1 16 1 25h-70l-38 -202h-144zM474 99c69 0 113 115 113 198c0 46 -18 94 -68 94c-74 0 -116 -123 -116 -197c0 -56 24 -95 71 -95z" /> + <glyph glyph-name="uni044F" unicode="&#x44f;" horiz-adv-x="531" +d="M517 488l-93 -488h-141l35 185h-29c-50 0 -81 -29 -108 -82c-18 -36 -34 -70 -55 -103h-154c30 42 47 84 71 128c29 53 66 89 118 99v3c-43 8 -99 46 -99 108c0 144 168 161 278 161c64 0 130 -5 177 -11zM336 277l23 121c-15 2 -27 4 -52 4c-55 0 -98 -18 -98 -66 +c0 -42 45 -59 88 -59h39z" /> + <glyph glyph-name="uni0451" unicode="&#x451;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM223 554c-35 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75zM429 554c-36 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75z" /> + <glyph glyph-name="uni0452" unicode="&#x452;" horiz-adv-x="563" +d="M148 710h143l-12 -65h225l-18 -95h-225l-22 -117h2c34 36 79 60 133 60c109 0 153 -95 153 -203c0 -128 -40 -254 -120 -337c-46 -54 -124 -92 -188 -98l-22 118c39 7 64 22 96 55c47 45 84 138 84 236c0 57 -14 110 -67 110c-47 0 -90 -49 -105 -130l-47 -244h-144 +l104 550h-56l20 95h54z" /> + <glyph glyph-name="uni0453" unicode="&#x453;" horiz-adv-x="421" +d="M104 369l-14 96c38 20 97 35 157 35c107 -1 163 -52 163 -135c0 -85 -75 -128 -166 -166c-53 -23 -90 -42 -90 -70c0 -20 14 -34 50 -34c51 0 102 21 135 37l15 -101c-45 -24 -113 -41 -172 -41c-109 1 -176 46 -176 134c0 102 88 139 173 174c49 20 91 38 91 64 +c0 19 -19 32 -53 32c-41 0 -81 -12 -113 -25zM303 700h142l-130 -152h-106z" /> + <glyph glyph-name="uni0454" unicode="&#x454;" horiz-adv-x="443" +d="M456 476l-34 -102c-17 9 -48 18 -86 18c-71 0 -125 -39 -145 -101h190l-16 -92h-188c-1 -4 0 -7 0 -11c7 -53 49 -87 113 -87c35 0 71 8 97 19l7 -104c-39 -19 -92 -27 -144 -27c-128 0 -220 82 -220 219c0 84 29 155 79 207c56 55 137 86 225 86c52 0 100 -13 122 -25z +" /> + <glyph glyph-name="uni0455" unicode="&#x455;" horiz-adv-x="416" +d="M-4 28l35 101c28 -14 80 -34 127 -34c41 0 62 20 62 44s-16 41 -61 63c-56 28 -103 69 -103 130c0 102 89 169 215 169c57 0 102 -12 126 -25l-35 -102c-20 9 -55 21 -97 21c-39 0 -64 -16 -64 -43c0 -20 20 -37 59 -55c54 -27 110 -67 110 -135 +c0 -112 -95 -174 -225 -172c-62 1 -120 17 -149 38z" /> + <glyph glyph-name="uni0456" unicode="&#x456;" horiz-adv-x="267" +d="M157 0h-144l93 489h144zM197 553h-2c-42 0 -73 30 -73 75c0 52 41 87 88 87c45 0 77 -29 77 -75c0 -55 -42 -87 -90 -87z" /> + <glyph glyph-name="uni0457" unicode="&#x457;" horiz-adv-x="265" +d="M156 0h-143l92 489h145zM95 554c-35 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75zM301 554c-36 0 -66 25 -66 66c0 45 34 75 76 75c39 0 65 -29 65 -66c0 -46 -33 -75 -75 -75z" /> + <glyph glyph-name="uni0458" unicode="&#x458;" horiz-adv-x="275" +d="M121 489h143l-88 -473c-16 -84 -37 -137 -69 -173s-83 -52 -133 -52c-22 0 -47 2 -69 8l16 108c10 -1 19 -2 32 -2c33 0 61 17 77 105zM205 553c-42 0 -73 30 -73 75c0 51 41 87 88 87c45 0 77 -29 77 -75c0 -55 -42 -87 -92 -87z" /> + <glyph glyph-name="uni0459" unicode="&#x459;" horiz-adv-x="785" +d="M135 490h377l-39 -188h2c33 28 85 43 129 43c79 0 141 -48 141 -134c0 -106 -88 -220 -276 -220c-78 0 -166 18 -166 122c0 28 7 66 13 95l36 171h-106l-18 -94c-25 -127 -56 -194 -107 -238c-35 -34 -80 -54 -141 -54l-9 114c22 2 44 12 60 29c30 27 51 77 66 152z +M500 93c49 0 104 35 104 91c0 37 -23 58 -58 58c-47 0 -82 -37 -93 -67c-5 -12 -7 -22 -7 -34c0 -30 18 -48 54 -48z" /> + <glyph glyph-name="uni045A" unicode="&#x45a;" horiz-adv-x="793" +d="M105 489h144l-33 -175h131l35 175h140l-39 -188h1c32 28 83 44 127 44c79 0 142 -49 142 -135c0 -106 -89 -219 -276 -219c-75 0 -165 17 -165 115c0 17 3 41 6 60l8 39h-131l-38 -205h-144zM508 93c54 0 104 35 104 91c0 37 -23 58 -58 58c-48 0 -83 -38 -92 -67 +c-4 -12 -7 -21 -7 -37c0 -27 22 -45 53 -45z" /> + <glyph glyph-name="uni045B" unicode="&#x45b;" horiz-adv-x="564" +d="M149 710h144l-13 -67h209l-19 -92h-208l-24 -125h2c40 44 91 74 156 74c76 0 123 -48 123 -132c0 -23 -4 -61 -9 -88l-53 -280h-144l51 268c4 19 6 40 6 60c0 32 -13 56 -49 56c-51 0 -102 -62 -120 -160l-43 -224h-144l104 551h-68l19 92h67z" /> + <glyph glyph-name="uni045C" unicode="&#x45c;" horiz-adv-x="507" +d="M106 489h140l-38 -201h14l164 201h169l-214 -218c46 -19 69 -73 82 -145c9 -44 19 -94 32 -126h-142c-10 25 -18 73 -28 116c-15 59 -34 88 -80 88h-13l-39 -204h-140zM337 700h142l-130 -152h-105z" /> + <glyph glyph-name="uni045E" unicode="&#x45e;" horiz-adv-x="497" +d="M43 489h152l30 -214c7 -51 13 -86 17 -117h2c11 30 23 61 43 115l87 216h152c-45 -93 -121 -257 -173 -359c-67 -129 -122 -209 -189 -272c-57 -54 -125 -79 -157 -84l-32 124c23 7 55 19 83 38c33 23 61 53 80 86c4 7 4 13 2 23zM181 692h91c-5 -40 9 -66 36 -66 +c30 0 47 30 55 66h92c-18 -87 -75 -132 -156 -132c-88 0 -124 53 -118 132z" /> + <glyph glyph-name="uni045F" unicode="&#x45f;" horiz-adv-x="560" +d="M103 489h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156l43 227h143l-62 -330c-11 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -115 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90zM249 -193l-116 -16l36 162l127 9z" /> + <glyph glyph-name="uni0490" unicode="&#x490;" horiz-adv-x="447" +d="M146 674h251l45 132h110l-64 -258h-221l-104 -548h-144z" /> + <glyph glyph-name="uni0491" unicode="&#x491;" horiz-adv-x="404" +d="M106 489h204l41 114h106l-53 -227h-176l-71 -376h-144z" /> + <glyph glyph-name="uni04D9" unicode="&#x4d9;" horiz-adv-x="497" +d="M87 357l-16 102c56 29 130 42 184 42c140 0 212 -80 212 -209c0 -149 -106 -302 -283 -302c-101 0 -172 55 -172 147c0 123 121 169 317 164c0 14 -5 36 -14 49c-19 26 -53 39 -94 39c-52 0 -98 -14 -134 -32zM201 95c66 0 105 56 114 101c-112 1 -168 -14 -168 -59 +c0 -25 21 -42 54 -42z" /> + <glyph glyph-name="uni2010" unicode="&#x2010;" horiz-adv-x="322" +d="M44 313h259l-20 -101h-259z" /> + <glyph glyph-name="uni2113" unicode="&#x2113;" horiz-adv-x="538" +d="M280 488l-26 -135c59 54 124 136 124 212c0 29 -9 46 -29 46c-26 0 -52 -34 -69 -123zM419 192l56 -67c-64 -99 -144 -136 -231 -136c-96 0 -151 55 -156 143v7c-19 -12 -34 -21 -50 -30l-28 78c30 19 62 39 91 59l40 222c30 168 117 243 216 243c84 0 131 -55 131 -140 +c0 -153 -143 -269 -257 -353l-3 -14c-9 -61 18 -90 63 -90c52 0 96 43 128 78z" /> + <glyph glyph-name="uni2116" unicode="&#x2116;" horiz-adv-x="938" +d="M744 283c-82 0 -141 46 -141 133c0 119 86 220 208 220c86 0 136 -55 136 -135c0 -123 -84 -218 -203 -218zM874 244l-14 -75h-280l14 75h280zM599 651l-125 -651h-145l-58 249c-16 68 -28 151 -40 224h-3c-12 -82 -28 -176 -49 -287l-35 -186h-125l125 651h157l55 -241 +c15 -67 29 -148 40 -218h1c9 83 24 175 43 278l35 181h124zM757 358c55 0 77 97 77 142c0 37 -11 61 -40 61c-51 0 -78 -94 -78 -143c0 -36 14 -60 41 -60z" /> + <glyph glyph-name="breve.cyrcap" unicode="&#xf6d1;" +d="M153 845h101c-4 -36 7 -60 39 -60s49 23 58 60h102c-18 -79 -78 -122 -168 -122c-93 0 -134 44 -132 122z" /> + <glyph glyph-name="circumflex.cyrcap" unicode="&#xf6d2;" +d="M441 734h-101c4 36 -7 60 -39 60s-49 -23 -58 -60h-102c17 79 78 122 168 122c93 0 134 -44 132 -122z" /> + <glyph glyph-name="breve.cyr" unicode="&#xf6d4;" +d="M145 692h91c-5 -40 9 -66 36 -66c29 0 46 30 55 66h92c-18 -87 -75 -132 -156 -132c-88 0 -124 53 -118 132z" /> + <glyph glyph-name="circumflex.cyr" unicode="&#xf6d5;" +d="M402 561h-91c5 40 -9 66 -35 66c-30 0 -47 -29 -57 -66h-91c18 87 76 132 156 132c88 0 124 -53 118 -132z" /> + <glyph glyph-name="Ohorn" unicode="&#x1a0;" horiz-adv-x="705" +d="M653 743l109 18c8 -16 16 -50 16 -82c0 -76 -46 -127 -120 -130c22 -39 32 -92 32 -146c0 -122 -42 -242 -120 -318c-63 -60 -148 -96 -249 -96c-174 0 -273 124 -273 281c0 121 45 243 124 319c63 60 149 96 246 96c48 0 86 -7 124 -25c27 -11 55 -30 82 -30 +c30 0 43 18 43 51c0 23 -6 45 -14 62zM401 565c-45 0 -84 -20 -116 -51c-54 -54 -84 -158 -84 -239c0 -95 43 -166 141 -166c42 0 82 18 113 49c53 53 82 164 82 241c0 85 -30 166 -136 166z" /> + <glyph glyph-name="Uhorn" unicode="&#x1af;" horiz-adv-x="672" +d="M657 598l-58 -307c-39 -204 -129 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 95l71 375h144l-73 -387c-5 -24 -8 -51 -8 -80c1 -55 34 -97 98 -97c75 0 125 50 149 175l74 389h105c41 0 64 17 64 56c0 21 -5 39 -10 52l105 18c5 -17 9 -39 9 -58 +c0 -87 -52 -140 -144 -144z" /> + <glyph glyph-name="ohorn" unicode="&#x1a1;" horiz-adv-x="563" +d="M304 391c-84 0 -125 -121 -125 -196c0 -58 28 -96 78 -96c79 0 124 116 124 199c0 45 -20 93 -77 93zM508 566l106 18c7 -20 11 -48 11 -71c0 -77 -43 -123 -113 -129c12 -25 18 -54 18 -85c0 -179 -123 -310 -293 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309 +c34 0 62 -6 88 -16c24 -10 45 -25 68 -25c28 0 42 16 42 48c0 19 -5 39 -12 58z" /> + <glyph glyph-name="uhorn" unicode="&#x1b0;" horiz-adv-x="583" +d="M557 597l105 18c6 -19 9 -40 9 -60c0 -78 -46 -138 -142 -141l-48 -255c-11 -62 -20 -115 -26 -159h-127l9 80h-2c-50 -64 -110 -91 -169 -91c-78 0 -125 45 -125 137c0 27 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 48 -56 +c49 0 101 59 119 156l43 227h105c45 0 63 21 63 56c0 19 -5 38 -11 52z" /> + <glyph glyph-name="dong" unicode="&#x20ab;" horiz-adv-x="541" +d="M427 16h-373l15 88h373zM396 675h129l-11 -57h69l-15 -72h-68l-48 -252c-9 -46 -15 -97 -17 -140h-120l6 63h-2c-31 -48 -81 -71 -124 -71c-63 0 -116 48 -116 135c0 125 93 236 231 236c19 0 39 -3 54 -9l8 38h-115l15 72h114zM331 334l18 87c-8 6 -23 12 -39 12 +c-59 0 -101 -67 -101 -131c0 -40 18 -62 46 -62s63 31 76 94z" /> + <glyph glyph-name="dong.alt" unicode="&#xe184;" horiz-adv-x="541" +d="M397 675h128l-11 -57h69l-15 -72h-68l-48 -252c-9 -46 -15 -97 -17 -140h-120l6 63h-2c-31 -48 -81 -71 -124 -71c-63 0 -116 48 -116 135c0 125 93 236 231 236c19 0 39 -3 54 -9l8 38h-115l15 72h114zM331 334l18 87c-8 6 -23 12 -39 12c-59 0 -101 -67 -101 -131 +c0 -40 18 -62 46 -62c29 0 63 31 76 94z" /> + <glyph glyph-name="uni1EA0" unicode="&#x1ea0;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM242 -217c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="uni1EA2" unicode="&#x1ea2;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM427 703l-65 24c21 38 59 50 59 83c0 16 -11 27 -28 27s-34 -16 -46 -29l-42 31c29 41 70 72 122 72c56 0 92 -35 92 -79 +c0 -61 -59 -79 -92 -129z" /> + <glyph glyph-name="uni1EA4" unicode="&#x1ea4;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM374 833h103l65 -123h-97l-28 63h-2l-59 -63h-109zM605 913h118l-135 -112h-72z" /> + <glyph glyph-name="uni1EA6" unicode="&#x1ea6;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM462 901h119l56 -113h-73zM373 833h103l66 -123h-98l-27 63h-2l-60 -63h-108z" /> + <glyph glyph-name="uni1EA8" unicode="&#x1ea8;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM597 755l-60 23c19 38 58 45 58 75c0 15 -12 26 -29 26c-18 0 -35 -14 -46 -26l-37 36c24 29 64 58 113 58c52 0 86 -32 86 -74 +c0 -58 -56 -73 -85 -118zM374 833h103l65 -123h-97l-28 63h-2l-59 -63h-108z" /> + <glyph glyph-name="uni1EAA" unicode="&#x1eaa;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM359 849h-70c6 70 43 111 94 111c25 0 43 -9 61 -20c16 -9 29 -17 41 -17c17 0 24 9 31 40h69c-7 -82 -43 -112 -95 -112 +c-27 0 -44 11 -65 22c-17 9 -25 14 -37 14c-14 0 -25 -14 -29 -38zM374 833h103l65 -123h-97l-28 63h-2l-59 -63h-108z" /> + <glyph glyph-name="uni1EAC" unicode="&#x1eac;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM363 836h109l80 -126h-101l-41 61h-2l-58 -61h-111zM244 -217c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69 +c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="uni1EAE" unicode="&#x1eae;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM439 924h127l-134 -114h-67zM273 820h75c0 -25 17 -48 57 -48c42 0 64 21 70 48h76c-12 -67 -57 -121 -154 -121s-132 54 -124 121z" /> + <glyph glyph-name="uni1EB0" unicode="&#x1eb0;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM275 924h126l56 -113h-66zM276 820h75c-1 -25 17 -48 57 -48c42 0 64 21 70 48h75c-11 -67 -56 -121 -153 -121s-132 54 -124 121z" /> + <glyph glyph-name="uni1EB2" unicode="&#x1eb2;" horiz-adv-x="618" +d="M399 175h-195l-79 -175h-154l329 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM428 795l-60 23c18 38 58 44 58 75c0 15 -12 26 -29 26c-18 0 -35 -14 -46 -26l-37 36c24 29 64 58 113 58c52 0 86 -32 86 -75 +c0 -58 -56 -73 -85 -117zM276 819l74 1c0 -25 18 -48 57 -48c43 0 64 21 70 48h76c-11 -67 -57 -120 -154 -120s-131 53 -123 119z" /> + <glyph glyph-name="uni1EB4" unicode="&#x1eb4;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM275 820h79c0 -25 14 -48 53 -48c40 0 59 21 65 48h80c-11 -67 -56 -121 -153 -121s-132 54 -124 121zM347 849h-71c13 74 50 116 97 116 +c28 0 46 -10 62 -20c16 -11 28 -20 41 -20c17 0 25 11 35 44h69c-14 -88 -49 -123 -101 -123c-28 0 -47 9 -63 18c-16 10 -26 19 -40 18c-13 0 -23 -12 -29 -33z" /> + <glyph glyph-name="uni1EB6" unicode="&#x1eb6;" horiz-adv-x="618" +d="M399 175h-194l-79 -175h-154l328 674h185l79 -674h-152zM247 285h146l-14 145c-2 37 -6 91 -9 132h-2c-17 -41 -36 -93 -54 -132zM278 845h80c0 -25 14 -49 53 -49c41 0 60 22 66 49h82c-12 -68 -58 -122 -156 -122s-133 54 -125 122zM240 -217c-39 0 -69 32 -69 68 +c0 39 31 69 70 69c38 0 67 -30 67 -69c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="uni1EB8" unicode="&#x1eb8;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241zM210 -217c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="uni1EBA" unicode="&#x1eba;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241zM378 703l-66 24c22 38 59 50 59 83c0 16 -10 27 -27 27c-18 0 -35 -16 -46 -29l-42 31c29 41 69 72 122 72c55 0 92 -35 92 -79c0 -61 -59 -79 -92 -129z" /> + <glyph glyph-name="uni1EBC" unicode="&#x1ebc;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241zM286 715h-71c13 85 52 126 99 126c28 0 46 -9 63 -20c15 -10 28 -19 41 -19c16 0 25 11 34 43h69c-14 -88 -48 -123 -100 -123c-29 0 -48 9 -64 19s-26 18 -40 18 +c-13 0 -24 -14 -31 -44z" /> + <glyph glyph-name="uni1EBE" unicode="&#x1ebe;" horiz-adv-x="517" +d="M480 407l-23 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h240zM331 833h103l66 -123h-98l-27 63h-2l-60 -63h-108zM562 913h119l-135 -112h-72z" /> + <glyph glyph-name="uni1EC0" unicode="&#x1ec0;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241zM417 901h118l57 -113h-73zM328 833h103l66 -123h-98l-27 63h-2l-60 -63h-108z" /> + <glyph glyph-name="uni1EC2" unicode="&#x1ec2;" horiz-adv-x="517" +d="M480 407l-23 -121h-239l-32 -163h269l-23 -123h-413l128 674h398l-24 -123h-253l-28 -144h240zM557 755l-60 23c18 38 58 45 58 75c0 15 -13 27 -29 27c-18 0 -35 -15 -46 -27l-37 36c24 30 63 58 113 58c51 0 86 -31 86 -74c0 -58 -57 -73 -85 -118zM334 833h103 +l65 -123h-97l-28 63h-2l-59 -63h-109z" /> + <glyph glyph-name="uni1EC4" unicode="&#x1ec4;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-24 -123h-412l127 674h399l-24 -123h-254l-27 -144h240zM314 849h-70c6 70 42 111 94 111c25 0 43 -9 61 -20c16 -9 29 -17 42 -17c16 0 24 9 30 40h69c-7 -82 -43 -112 -95 -112c-27 0 -44 11 -65 22c-17 9 -25 14 -37 14 +c-14 0 -25 -14 -29 -38zM329 833h103l65 -123h-97l-28 63h-2l-59 -63h-108z" /> + <glyph glyph-name="uni1EC6" unicode="&#x1ec6;" horiz-adv-x="517" +d="M481 407l-24 -121h-239l-31 -163h269l-23 -123h-414l128 674h399l-24 -123h-254l-28 -144h241zM316 836h109l80 -126h-101l-41 61h-2l-58 -61h-111zM210 -217c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="uni1EC8" unicode="&#x1ec8;" horiz-adv-x="274" +d="M144 674h144l-128 -674h-144zM251 703l-65 24c21 38 59 50 59 83c0 15 -10 27 -27 27c-18 0 -35 -16 -47 -29l-42 31c29 41 70 72 122 72c56 0 93 -35 93 -79c0 -61 -60 -79 -93 -129z" /> + <glyph glyph-name="uni1ECA" unicode="&#x1eca;" horiz-adv-x="274" +d="M144 674h144l-128 -674h-144zM65 -217c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="uni1ECC" unicode="&#x1ecc;" horiz-adv-x="705" +d="M418 685c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96zM401 565c-45 0 -85 -19 -116 -51c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166c43 0 82 18 113 49 +c53 53 82 164 82 242c0 84 -30 165 -136 165zM269 -217c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="uni1ECE" unicode="&#x1ece;" horiz-adv-x="705" +d="M418 685c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96zM401 565c-45 0 -85 -19 -116 -51c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166c43 0 82 18 113 49 +c53 53 82 164 82 242c0 84 -30 165 -136 165zM462 703l-65 23c21 39 59 51 59 84c0 15 -11 27 -28 27s-34 -16 -46 -30l-42 32c29 41 69 72 122 72c56 0 92 -35 92 -79c0 -61 -59 -79 -92 -129z" /> + <glyph glyph-name="uni1ED0" unicode="&#x1ed0;" horiz-adv-x="705" +d="M418 685c178 0 272 -120 272 -281c0 -123 -43 -243 -121 -318c-62 -61 -147 -97 -248 -97c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96zM400 565c-44 0 -84 -19 -115 -51c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166c43 0 82 18 113 49 +c53 53 82 164 82 242c0 84 -30 165 -137 165zM403 832h103l66 -122h-98l-27 63h-2l-60 -63h-108zM634 913h118l-135 -113h-72z" /> + <glyph glyph-name="uni1ED2" unicode="&#x1ed2;" horiz-adv-x="705" +d="M418 685c178 0 273 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97c-175 0 -273 124 -273 281c0 122 45 243 125 319c62 60 149 96 245 96zM401 565c-45 0 -84 -19 -116 -51c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166c43 0 82 18 113 49 +c53 53 82 164 82 242c0 84 -30 165 -136 165zM491 901h118l57 -113h-73zM402 832h103l66 -122h-98l-27 63h-2l-60 -63h-108z" /> + <glyph glyph-name="uni1ED4" unicode="&#x1ed4;" horiz-adv-x="705" +d="M418 685c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96zM401 565c-45 0 -85 -19 -116 -51c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166c43 0 82 18 113 49 +c53 53 82 164 82 242c0 84 -30 165 -136 165zM625 755l-60 24c19 37 58 44 58 74c0 16 -12 27 -28 27c-18 0 -35 -15 -46 -27l-37 37c23 29 63 57 112 57c52 0 86 -31 86 -74c0 -58 -56 -73 -85 -118zM402 833h103l66 -123h-98l-27 63h-2l-60 -63h-108z" /> + <glyph glyph-name="uni1ED6" unicode="&#x1ed6;" horiz-adv-x="705" +d="M418 685c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96zM401 565c-45 0 -85 -19 -116 -51c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166c43 0 82 18 113 49 +c53 53 82 164 82 242c0 84 -30 165 -136 165zM387 850h-70c7 69 43 110 94 110c25 0 43 -9 62 -19c15 -9 29 -17 41 -17c16 0 24 8 30 39h69c-7 -81 -42 -112 -94 -112c-28 0 -45 11 -65 22c-17 9 -25 14 -38 14c-14 0 -24 -14 -29 -37zM402 833h103l66 -123h-98l-27 63h-2 +l-60 -63h-108z" /> + <glyph glyph-name="uni1ED8" unicode="&#x1ed8;" horiz-adv-x="705" +d="M418 685c178 0 272 -120 272 -281c0 -123 -43 -243 -120 -318c-63 -61 -148 -97 -249 -97c-175 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96zM401 565c-45 0 -85 -19 -116 -51c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166c43 0 82 18 113 49 +c53 53 82 164 82 242c0 84 -30 165 -136 165zM395 836h109l80 -126h-101l-41 61h-2l-58 -61h-111zM267 -217c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="uni1EDA" unicode="&#x1eda;" horiz-adv-x="705" +d="M653 743l109 18c8 -16 16 -49 16 -81c0 -76 -46 -127 -120 -130c22 -40 32 -93 32 -146c0 -123 -42 -243 -120 -319c-63 -60 -148 -96 -249 -96c-174 0 -273 124 -273 281c0 121 45 243 124 319c63 60 149 96 246 96c48 0 86 -7 124 -24c27 -12 55 -31 82 -31 +c30 0 43 18 43 52c0 22 -6 44 -14 61zM401 565c-45 0 -84 -19 -116 -51c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166c42 0 82 18 113 49c53 53 82 164 82 242c0 84 -30 165 -136 165zM430 842h160l-132 -126h-122z" /> + <glyph glyph-name="uni1EDC" unicode="&#x1edc;" horiz-adv-x="705" +d="M653 743l109 18c8 -17 16 -50 16 -82c0 -76 -46 -127 -120 -130c22 -39 32 -92 32 -146c0 -122 -42 -242 -120 -318c-63 -60 -148 -96 -249 -96c-174 0 -273 124 -273 281c0 121 45 242 124 319c63 60 149 96 246 96c48 0 86 -7 124 -25c27 -12 55 -30 82 -30 +c30 0 43 18 43 51c0 23 -6 44 -14 62zM401 564c-45 0 -84 -19 -116 -50c-54 -54 -84 -158 -84 -239c0 -95 43 -166 141 -166c42 0 82 18 113 49c53 53 82 164 82 241c0 84 -30 165 -136 165zM272 842h158l77 -125h-120z" /> + <glyph glyph-name="uni1EDE" unicode="&#x1ede;" horiz-adv-x="705" +d="M653 743l109 18c8 -16 16 -50 16 -82c0 -76 -46 -127 -120 -130c22 -39 32 -92 32 -146c0 -122 -42 -242 -120 -318c-63 -60 -148 -96 -249 -96c-174 0 -273 124 -273 281c0 121 45 243 124 319c63 60 149 96 246 96c48 0 86 -7 124 -25c27 -11 55 -30 82 -30 +c30 0 43 18 43 51c0 23 -6 45 -14 62zM401 565c-45 0 -84 -20 -116 -51c-54 -54 -84 -158 -84 -239c0 -95 43 -166 141 -166c42 0 82 18 113 49c53 53 82 164 82 241c0 85 -30 166 -136 166zM462 709l-66 23c22 39 60 51 60 84c0 15 -11 27 -28 27s-35 -16 -46 -30l-42 32 +c29 41 69 72 122 72c56 0 92 -35 92 -79c0 -61 -59 -80 -92 -129z" /> + <glyph glyph-name="uni1EE0" unicode="&#x1ee0;" horiz-adv-x="705" +d="M653 744l109 18c8 -17 16 -50 16 -82c0 -76 -46 -127 -120 -130c22 -40 32 -93 32 -146c0 -123 -42 -243 -120 -319c-63 -60 -148 -96 -249 -96c-174 0 -273 124 -273 281c0 122 45 243 124 319c63 60 149 96 246 96c48 0 86 -7 124 -24c27 -12 55 -30 82 -30 +c30 0 43 18 43 51c0 23 -6 44 -14 62zM401 565c-45 0 -84 -19 -116 -51c-54 -53 -84 -158 -84 -239c0 -95 43 -166 141 -166c42 0 82 18 113 49c53 53 82 164 82 242c0 84 -30 165 -136 165zM367 722h-71c13 84 52 125 99 125c29 0 46 -9 63 -20c15 -10 28 -19 41 -19 +c16 0 25 11 34 43h69c-14 -88 -48 -123 -100 -123c-29 0 -48 9 -64 19s-25 18 -40 18c-13 0 -24 -14 -31 -43z" /> + <glyph glyph-name="uni1EE2" unicode="&#x1ee2;" horiz-adv-x="705" +d="M653 743l109 18c8 -16 16 -50 16 -82c0 -76 -46 -127 -120 -130c22 -39 32 -92 32 -146c0 -122 -42 -242 -120 -318c-63 -60 -148 -96 -249 -96c-174 0 -273 124 -273 281c0 121 45 243 124 319c63 60 149 96 246 96c48 0 86 -7 124 -25c27 -11 55 -30 82 -30 +c30 0 43 18 43 51c0 23 -6 45 -14 62zM401 565c-45 0 -84 -20 -116 -51c-54 -54 -84 -158 -84 -239c0 -95 43 -166 141 -166c42 0 82 18 113 49c53 53 82 164 82 241c0 85 -30 166 -136 166zM270 -217h-2c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69 +c0 -36 -29 -68 -66 -68z" /> + <glyph glyph-name="uni1EE4" unicode="&#x1ee4;" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c76 0 125 50 149 175l74 389h144l-73 -383c-39 -204 -128 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94zM249 -217c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69 +c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="uni1EE6" unicode="&#x1ee6;" horiz-adv-x="655" +d="M144 674h144l-73 -388c-5 -23 -8 -50 -8 -79c0 -55 34 -97 98 -97c76 0 125 50 149 175l74 389h144l-73 -383c-39 -204 -128 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 94zM429 703l-65 24c21 38 59 50 59 83c0 15 -10 27 -27 27c-18 0 -35 -16 -47 -29 +l-42 31c29 41 70 72 122 72c56 0 93 -35 93 -79c0 -61 -60 -79 -93 -129z" /> + <glyph glyph-name="uni1EE8" unicode="&#x1ee8;" horiz-adv-x="672" +d="M657 598l-58 -307c-39 -204 -129 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 95l71 375h144l-73 -387c-5 -24 -8 -51 -8 -80c1 -55 34 -97 98 -97c75 0 125 50 149 175l74 389h105c41 0 64 17 64 56c0 21 -5 39 -10 52l105 18c5 -17 9 -39 9 -58 +c0 -87 -52 -140 -144 -144zM425 836h160l-132 -126h-122z" /> + <glyph glyph-name="uni1EEA" unicode="&#x1eea;" horiz-adv-x="672" +d="M657 598l-58 -307c-39 -204 -129 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 95l71 375h144l-73 -387c-5 -24 -8 -51 -8 -80c1 -55 34 -97 98 -97c75 0 125 50 149 175l74 389h105c41 0 64 17 64 57c0 21 -5 39 -10 52l105 18c5 -18 9 -39 9 -59 +c0 -87 -52 -140 -144 -144zM270 837h158l77 -125h-120z" /> + <glyph glyph-name="uni1EEC" unicode="&#x1eec;" horiz-adv-x="672" +d="M657 598l-58 -307c-39 -204 -129 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 95l71 375h144l-73 -387c-5 -24 -8 -51 -8 -80c1 -55 34 -97 98 -97c75 0 125 50 149 175l74 389h105c41 0 64 17 64 56c0 21 -5 39 -10 52l105 18c5 -17 9 -39 9 -58 +c0 -87 -52 -140 -144 -144zM438 703l-65 24c22 38 59 50 59 83c0 15 -10 27 -27 27c-18 0 -35 -16 -46 -29l-42 31c28 41 69 72 121 72c56 0 93 -35 93 -79c0 -61 -59 -79 -93 -129z" /> + <glyph glyph-name="uni1EEE" unicode="&#x1eee;" horiz-adv-x="672" +d="M657 598l-58 -307c-39 -204 -129 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 95l71 375h144l-73 -387c-5 -24 -8 -51 -8 -80c1 -55 34 -97 98 -97c75 0 125 50 149 175l74 389h105c41 0 64 17 64 57c0 21 -5 39 -10 52l105 18c5 -18 9 -39 9 -59 +c0 -87 -52 -140 -144 -144zM348 715h-71c13 85 52 126 99 126c29 0 46 -9 63 -20c15 -10 28 -19 41 -19c16 0 25 11 34 43h69c-14 -88 -48 -123 -100 -123c-29 0 -48 9 -64 19s-25 18 -40 18c-13 0 -24 -14 -31 -44z" /> + <glyph glyph-name="uni1EF0" unicode="&#x1ef0;" horiz-adv-x="672" +d="M657 598l-58 -307c-39 -204 -129 -302 -312 -302c-139 -1 -224 72 -224 215c0 29 4 62 10 95l71 375h144l-73 -387c-5 -24 -8 -51 -8 -80c1 -55 34 -97 98 -97c75 0 125 50 149 175l74 389h105c41 0 64 17 64 56c0 21 -5 39 -10 52l105 18c5 -17 9 -39 9 -58 +c0 -87 -52 -140 -144 -144zM254 -217c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="uni1EF4" unicode="&#x1ef4;" horiz-adv-x="570" +d="M295 0h-144l52 275l-132 399h154l43 -171c13 -56 20 -88 26 -122h2c20 36 41 74 69 123l101 170h172l-291 -396zM204 -217c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="uni1EF6" unicode="&#x1ef6;" horiz-adv-x="570" +d="M295 0h-144l52 275l-132 399h154l43 -171c13 -56 20 -88 26 -122h2c20 36 41 74 69 123l101 170h172l-291 -396zM387 703l-66 24c22 38 60 50 60 83c0 15 -11 27 -28 27c-18 0 -35 -16 -46 -29l-42 31c29 41 69 72 122 72c55 0 92 -35 92 -79c0 -61 -59 -79 -92 -129z +" /> + <glyph glyph-name="uni1EF8" unicode="&#x1ef8;" horiz-adv-x="570" +d="M295 0h-144l52 275l-132 399h154l43 -171c13 -56 20 -88 26 -122h2c20 36 41 74 69 123l101 170h172l-291 -396zM291 715h-71c13 85 52 126 99 126c28 0 46 -9 63 -20c15 -10 28 -19 41 -19c16 0 25 11 34 43h69c-14 -88 -48 -123 -100 -123c-29 0 -48 9 -64 19 +s-26 18 -40 18c-13 0 -24 -14 -31 -44z" /> + <glyph glyph-name="uni1EA1" unicode="&#x1ea1;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM217 -221h-2c-40 0 -70 32 -70 70c0 41 31 71 71 71c39 0 68 -30 68 -71c0 -38 -29 -70 -67 -70z" /> + <glyph glyph-name="uni1EA3" unicode="&#x1ea3;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM368 528l-72 20c17 45 67 60 67 99c0 17 -11 29 -26 29c-22 0 -39 -20 -50 -36l-46 32c29 45 69 78 127 78c56 0 91 -37 91 -82c0 -71 -65 -92 -91 -140z" /> + <glyph glyph-name="uni1EA5" unicode="&#x1ea5;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM321 702h105l63 -152h-93l-30 87h-2l-58 -87h-100zM561 795h115l-131 -147h-75z" /> + <glyph glyph-name="uni1EA7" unicode="&#x1ea7;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-3c-45 -81 -107 -108 -164 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM403 797h106l71 -148h-68zM311 702h106l62 -152h-93l-30 87h-2l-58 -87h-100z" /> + <glyph glyph-name="uni1EA9" unicode="&#x1ea9;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-3c-45 -81 -108 -108 -164 -108c-88 0 -149 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM311 702h106l62 -152h-93l-30 87h-2l-58 -87h-100zM532 632l-60 23c19 38 59 44 59 75c0 15 -13 26 -29 26c-18 0 -35 -14 -46 -26l-37 36c23 29 63 58 112 58c52 0 87 -32 87 -75c0 -58 -57 -73 -86 -117z" /> + <glyph glyph-name="uni1EAB" unicode="&#x1eab;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-3c-45 -81 -107 -108 -164 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM296 707h-70c7 69 43 110 94 110c25 0 43 -9 62 -19c15 -9 29 -17 41 -17c16 0 24 8 30 40h69c-6 -82 -42 -112 -94 -112c-28 0 -45 11 -65 21c-17 10 -25 15 -38 15c-14 0 -24 -15 -29 -38zM313 681h98l70 -131h-91l-32 68h-2l-49 -68h-101z" /> + <glyph glyph-name="uni1EAD" unicode="&#x1ead;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM318 700h98l75 -152h-93l-40 79h-2l-58 -79h-102zM225 -221c-40 0 -70 32 -70 70c0 41 31 71 71 71c39 0 68 -30 68 -71c0 -38 -29 -70 -69 -70z" /> + <glyph glyph-name="uni1EAF" unicode="&#x1eaf;" horiz-adv-x="554" +d="M466 0h-132c1 29 3 62 6 97h-3c-45 -81 -108 -108 -164 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -25 4 -40 4c-93 0 -160 -114 -160 -205c0 -48 19 -81 58 -81 +c43 0 97 49 120 169zM396 810h118l-125 -148h-79zM220 662h71c1 -33 20 -57 59 -57c44 0 68 29 74 57h75c-12 -78 -70 -131 -156 -131c-93 0 -131 60 -123 131z" /> + <glyph glyph-name="uni1EB1" unicode="&#x1eb1;" horiz-adv-x="554" +d="M466 0h-132c1 29 3 62 6 97h-3c-45 -81 -107 -108 -164 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -25 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 58 -81 +c43 0 97 49 120 169zM213 810h115l73 -149h-76zM220 661h71c1 -32 20 -56 59 -56c43 0 67 28 74 56h75c-13 -78 -70 -130 -156 -130c-93 0 -131 60 -123 130z" /> + <glyph glyph-name="uni1EB3" unicode="&#x1eb3;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-3c-44 -81 -107 -108 -164 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -25 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM220 665h71c1 -33 20 -57 59 -57c43 0 67 28 74 57h75c-13 -79 -70 -130 -156 -130c-93 0 -131 59 -123 130zM372 649l-60 23c19 37 58 44 58 74c0 16 -12 27 -29 27c-18 0 -35 -15 -45 -27l-38 37c24 29 64 57 113 57c52 0 86 -31 86 -74 +c0 -58 -56 -73 -85 -117z" /> + <glyph glyph-name="uni1EB5" unicode="&#x1eb5;" horiz-adv-x="554" +d="M466 0h-132c1 29 3 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -25 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 96 49 119 169zM230 664h73c1 -31 12 -56 47 -56c40 0 58 28 65 56h75c-13 -78 -62 -130 -147 -130c-92 0 -122 57 -113 130zM297 700h-70c12 74 49 116 96 116c28 0 46 -10 63 -20c15 -11 28 -20 41 -20c16 0 25 11 34 44h69c-13 -88 -48 -123 -100 -123 +c-29 0 -48 9 -64 18c-16 10 -26 19 -40 18c-12 0 -22 -12 -29 -33z" /> + <glyph glyph-name="uni1EB7" unicode="&#x1eb7;" horiz-adv-x="554" +d="M466 0h-132c1 29 4 62 6 97h-2c-45 -81 -108 -108 -165 -108c-88 0 -148 68 -148 170c0 165 110 341 350 341c59 0 121 -11 162 -24l-51 -256c-12 -63 -22 -159 -20 -220zM353 274l22 113c-11 2 -24 4 -39 4c-93 0 -161 -114 -161 -205c0 -48 19 -81 59 -81 +c43 0 97 49 119 169zM238 690h73c2 -31 12 -56 47 -56c40 0 58 28 65 56h75c-13 -78 -61 -130 -146 -130c-93 0 -123 57 -114 130zM219 -221h-2c-40 0 -70 32 -70 70c0 41 31 71 71 71c39 0 68 -30 68 -71c0 -38 -29 -70 -67 -70z" /> + <glyph glyph-name="uni1EB9" unicode="&#x1eb9;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM207 -221c-40 0 -70 32 -70 70c0 41 31 71 71 71c39 0 68 -30 68 -71c0 -38 -29 -70 -69 -70z" /> + <glyph glyph-name="uni1EBB" unicode="&#x1ebb;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM341 528l-72 20c17 45 68 60 68 99c0 17 -11 29 -27 29c-21 0 -39 -20 -50 -36l-46 32c29 45 69 78 127 78c56 0 91 -37 91 -82c0 -71 -64 -92 -91 -140z" /> + <glyph glyph-name="uni1EBD" unicode="&#x1ebd;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM249 558h-70c11 80 45 126 96 126c28 0 45 -10 62 -20c15 -10 28 -19 39 -19c16 0 23 10 32 44h69c-13 -87 -46 -123 -98 -123c-27 0 -49 9 -64 19c-13 11 -25 18 -38 18s-23 -19 -28 -45z" /> + <glyph glyph-name="uni1EBF" unicode="&#x1ebf;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM278 702h106l63 -152h-93l-31 87h-2l-57 -87h-100zM519 795h115l-131 -147h-75z" /> + <glyph glyph-name="uni1EC1" unicode="&#x1ec1;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM371 797h105l71 -148h-68zM278 702h106l63 -152h-93l-31 87h-2l-58 -87h-100z" /> + <glyph glyph-name="uni1EC3" unicode="&#x1ec3;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c52 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM278 702h106l63 -152h-93l-31 87h-2l-58 -87h-100zM500 632l-60 23c18 38 58 44 58 75c0 15 -13 26 -29 26c-18 0 -35 -14 -46 -26l-37 36c24 29 64 58 113 58c52 0 86 -32 86 -75c0 -58 -57 -73 -85 -117z" /> + <glyph glyph-name="uni1EC5" unicode="&#x1ec5;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c52 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM264 707h-71c7 69 43 110 95 110c25 0 43 -9 61 -19c16 -9 29 -17 42 -17c16 0 23 8 30 40h69c-7 -82 -43 -112 -95 -112c-27 0 -44 11 -65 21c-17 10 -25 15 -37 15c-14 0 -25 -15 -29 -38zM280 681h98l70 -131h-90l-33 68h-2l-48 -68h-102z" /> + <glyph glyph-name="uni1EC7" unicode="&#x1ec7;" horiz-adv-x="501" +d="M412 132l10 -104c-57 -29 -128 -39 -183 -39c-139 0 -211 79 -211 207c0 149 108 304 285 304c99 0 170 -56 170 -147c0 -124 -121 -169 -318 -164c1 -14 6 -36 16 -50c19 -25 52 -38 94 -38c53 0 98 12 137 31zM348 354c0 24 -20 41 -53 41c-67 0 -106 -56 -116 -101 +c113 -1 169 14 169 60zM284 700h99l75 -152h-93l-40 79h-2l-58 -79h-102zM207 -221c-40 0 -70 32 -70 70c0 41 31 71 71 71c39 0 68 -30 68 -71c0 -38 -29 -70 -69 -70z" /> + <glyph glyph-name="uni1EC9" unicode="&#x1ec9;" horiz-adv-x="265" +d="M157 0h-144l93 489h144zM221 528l-72 20c17 45 67 60 67 99c0 17 -11 29 -26 29c-22 0 -39 -20 -50 -36l-46 32c29 45 69 78 127 78c56 0 91 -37 91 -82c0 -71 -65 -92 -91 -140z" /> + <glyph glyph-name="uni1ECB" unicode="&#x1ecb;" horiz-adv-x="265" +d="M157 0h-144l93 489h144zM197 550h-2c-40 0 -69 28 -69 70c0 49 39 82 83 82c43 0 73 -28 73 -71c0 -51 -39 -81 -85 -81zM75 -221c-40 0 -70 32 -70 70c0 41 31 71 71 71c39 0 68 -30 68 -71c0 -38 -29 -70 -69 -70z" /> + <glyph glyph-name="uni1ECD" unicode="&#x1ecd;" horiz-adv-x="559" +d="M322 501c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309zM303 391c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95c77 0 122 116 122 199c0 45 -20 93 -77 93zM217 -221c-40 0 -70 32 -70 70c0 41 31 71 71 71 +c39 0 68 -30 68 -71c0 -38 -29 -70 -69 -70z" /> + <glyph glyph-name="uni1ECF" unicode="&#x1ecf;" horiz-adv-x="559" +d="M322 501c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309zM303 391c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95c77 0 122 116 122 199c0 45 -20 93 -77 93zM369 529l-72 20c17 45 67 60 67 99 +c0 17 -11 29 -26 29c-21 0 -39 -20 -49 -36l-46 32c28 45 68 78 126 78c56 0 91 -37 91 -82c0 -71 -65 -92 -91 -140z" /> + <glyph glyph-name="uni1ED1" unicode="&#x1ed1;" horiz-adv-x="559" +d="M322 501c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309zM303 391c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95c77 0 122 116 122 199c0 45 -20 93 -77 93zM304 702h105l63 -152h-93l-30 87h-3l-57 -87h-100z +M544 795h115l-131 -147h-75z" /> + <glyph glyph-name="uni1ED3" unicode="&#x1ed3;" horiz-adv-x="559" +d="M322 501c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309zM303 391c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95c77 0 122 116 122 199c0 45 -20 93 -77 93zM396 797h105l71 -148h-67zM304 702h105l63 -152h-93 +l-30 87h-3l-57 -87h-100z" /> + <glyph glyph-name="uni1ED5" unicode="&#x1ed5;" horiz-adv-x="559" +d="M322 501c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309zM303 391c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95c77 0 122 116 122 199c0 45 -20 93 -77 93zM302 702h106l62 -152h-93l-30 87h-2l-58 -87h-99z +M523 632l-59 23c18 38 58 44 58 75c0 15 -13 26 -29 26c-18 0 -35 -14 -46 -26l-37 36c24 29 63 58 112 58c52 0 87 -32 87 -75c0 -58 -57 -73 -86 -117z" /> + <glyph glyph-name="uni1ED7" unicode="&#x1ed7;" horiz-adv-x="559" +d="M322 501c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309zM303 391c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95c77 0 122 116 122 199c0 45 -20 93 -77 93zM289 707h-70c7 69 43 110 94 110c25 0 43 -9 62 -19 +c15 -9 28 -17 41 -17c16 0 24 8 30 40h69c-7 -82 -42 -112 -94 -112c-28 0 -45 11 -65 21c-17 10 -25 15 -38 15c-14 0 -24 -15 -29 -38zM306 681h97l71 -131h-91l-33 68h-2l-48 -68h-100z" /> + <glyph glyph-name="uni1ED9" unicode="&#x1ed9;" horiz-adv-x="559" +d="M322 501c131 0 207 -90 207 -202c0 -179 -123 -310 -292 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309zM303 391c-83 0 -124 -121 -124 -197c0 -57 28 -95 79 -95c77 0 122 116 122 199c0 45 -20 93 -77 93zM311 700h99l75 -152h-93l-40 79h-2l-58 -79h-102z +M216 -221c-40 0 -70 32 -70 70c0 41 31 71 71 71c39 0 68 -30 68 -71c0 -38 -29 -70 -69 -70z" /> + <glyph glyph-name="uni1EDB" unicode="&#x1edb;" horiz-adv-x="559" +d="M304 391c-84 0 -125 -121 -125 -196c0 -58 28 -96 78 -96c79 0 124 116 124 199c0 45 -20 93 -77 93zM508 566l106 18c7 -20 11 -48 11 -71c0 -77 -43 -123 -113 -129c12 -25 18 -54 18 -85c0 -179 -123 -310 -293 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309 +c34 0 62 -6 88 -16c24 -10 45 -25 68 -25c28 0 42 16 42 48c0 19 -5 39 -12 58zM335 700h141l-130 -152h-106z" /> + <glyph glyph-name="uni1EDD" unicode="&#x1edd;" horiz-adv-x="559" +d="M304 391c-84 0 -125 -121 -125 -196c0 -58 28 -96 78 -96c79 0 124 116 124 199c0 45 -20 93 -77 93zM508 566l106 18c7 -20 11 -48 11 -71c0 -77 -43 -123 -113 -129c12 -25 18 -54 18 -85c0 -179 -123 -310 -293 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309 +c34 0 62 -6 88 -16c24 -10 45 -25 68 -25c28 0 42 16 42 48c0 19 -5 39 -12 58zM192 700h139l75 -152h-103z" /> + <glyph glyph-name="uni1EDF" unicode="&#x1edf;" horiz-adv-x="559" +d="M304 391c-84 0 -125 -121 -125 -196c0 -58 28 -96 78 -96c79 0 124 116 124 199c0 45 -20 93 -77 93zM508 566l106 18c7 -20 11 -48 11 -71c0 -77 -43 -123 -113 -129c12 -25 18 -54 18 -85c0 -179 -123 -310 -293 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309 +c34 0 62 -6 88 -16c24 -10 45 -25 68 -25c28 0 42 16 42 48c0 19 -5 39 -12 58zM348 529l-72 20c17 44 68 59 68 99c0 17 -11 29 -27 29c-21 0 -39 -20 -50 -36l-46 32c29 45 69 78 127 78c57 0 91 -37 91 -82c0 -71 -64 -92 -91 -140z" /> + <glyph glyph-name="uni1EE1" unicode="&#x1ee1;" horiz-adv-x="559" +d="M304 391c-84 0 -125 -121 -125 -196c0 -58 28 -96 78 -96c79 0 124 116 124 199c0 45 -20 93 -77 93zM508 566l105 18c7 -19 12 -48 12 -72c0 -77 -43 -122 -113 -128c12 -25 17 -54 17 -85c0 -179 -122 -310 -292 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309 +c34 0 63 -6 88 -16c24 -10 45 -25 68 -25c28 0 42 16 42 48c0 19 -5 39 -12 58zM255 558l-70 1c11 80 45 126 97 125c28 0 44 -10 61 -20c15 -10 28 -19 39 -19c16 0 23 10 32 44h69c-13 -87 -46 -123 -97 -123c-27 0 -49 9 -64 20c-14 10 -26 17 -38 17 +c-14 0 -24 -19 -29 -45z" /> + <glyph glyph-name="uni1EE3" unicode="&#x1ee3;" horiz-adv-x="559" +d="M304 391c-84 0 -125 -121 -125 -196c0 -58 28 -96 78 -96c79 0 124 116 124 199c0 45 -20 93 -77 93zM508 566l106 18c7 -20 11 -48 11 -71c0 -77 -43 -123 -113 -129c12 -25 18 -54 18 -85c0 -179 -123 -310 -293 -310c-124 0 -207 81 -207 203c0 169 118 309 292 309 +c34 0 62 -6 88 -16c24 -10 45 -25 68 -25c28 0 42 16 42 48c0 19 -5 39 -12 58zM216 -221c-40 0 -70 32 -70 70c0 41 31 71 71 71c39 0 68 -30 68 -71c0 -38 -29 -70 -69 -70z" /> + <glyph glyph-name="uni1EE5" unicode="&#x1ee5;" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM216 -221c-40 0 -70 32 -70 70 +c0 41 31 71 71 71c39 0 68 -30 68 -71c0 -38 -29 -70 -69 -70z" /> + <glyph glyph-name="uni1EE7" unicode="&#x1ee7;" horiz-adv-x="560" +d="M400 489h143l-62 -330c-12 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM368 528l-72 20c17 45 67 60 67 99 +c0 17 -11 29 -26 29c-22 0 -39 -20 -50 -36l-46 32c29 45 69 78 126 78s91 -37 91 -82c0 -71 -64 -92 -90 -140z" /> + <glyph glyph-name="uni1EE9" unicode="&#x1ee9;" horiz-adv-x="583" +d="M557 598l105 18c6 -19 9 -41 9 -60c0 -79 -46 -139 -142 -142l-48 -255c-11 -62 -20 -115 -26 -159h-127l9 80h-2c-50 -64 -110 -91 -169 -91c-78 0 -125 45 -125 137c0 27 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 48 -56 +c49 0 101 59 119 156l43 227h105c45 0 63 21 63 57c0 19 -5 38 -11 52zM360 700h142l-130 -152h-106z" /> + <glyph glyph-name="uni1EEB" unicode="&#x1eeb;" horiz-adv-x="583" +d="M557 598l105 18c6 -19 9 -41 9 -60c0 -79 -46 -139 -142 -142l-48 -255c-11 -62 -20 -115 -26 -159h-127l9 80h-2c-50 -64 -110 -91 -169 -91c-78 0 -125 45 -125 137c0 27 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 48 -56 +c49 0 101 59 119 156l43 227h105c45 0 63 21 63 57c0 19 -5 38 -11 52zM210 700h139l75 -152h-103z" /> + <glyph glyph-name="uni1EED" unicode="&#x1eed;" horiz-adv-x="583" +d="M557 597l105 18c6 -19 9 -40 9 -60c0 -78 -46 -138 -142 -141l-48 -255c-11 -62 -20 -115 -26 -159h-127l9 80h-2c-50 -64 -110 -91 -169 -91c-78 0 -125 45 -125 137c0 27 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 48 -56 +c49 0 101 59 119 156l43 227h105c45 0 63 21 63 56c0 19 -5 38 -11 52zM367 528l-72 20c17 45 67 60 67 99c0 17 -11 29 -26 29c-22 0 -39 -20 -50 -36l-47 32c29 45 70 78 128 78c56 0 91 -37 91 -82c0 -71 -65 -92 -91 -140z" /> + <glyph glyph-name="uni1EEF" unicode="&#x1eef;" horiz-adv-x="583" +d="M557 598l105 18c6 -19 9 -40 9 -60c0 -79 -46 -139 -142 -142l-48 -255c-11 -62 -20 -115 -26 -159h-127l9 80h-2c-50 -64 -110 -91 -169 -91c-78 0 -125 45 -125 137c0 27 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 48 -56 +c49 0 101 59 119 156l43 227h105c45 0 63 21 63 57c0 19 -5 38 -11 52zM263 558l-70 1c11 80 45 126 96 125c28 0 45 -10 62 -20c15 -10 28 -19 39 -19c16 0 23 10 32 44h69c-13 -87 -46 -123 -97 -123c-27 0 -49 9 -64 19c-14 11 -26 18 -39 18s-23 -19 -28 -45z" /> + <glyph glyph-name="uni1EF1" unicode="&#x1ef1;" horiz-adv-x="583" +d="M557 597l105 18c6 -19 9 -40 9 -60c0 -78 -46 -138 -142 -141l-48 -255c-11 -62 -20 -115 -26 -159h-127l9 80h-2c-50 -64 -110 -91 -169 -91c-78 0 -125 45 -125 137c0 27 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 48 -56 +c49 0 101 59 119 156l43 227h105c45 0 63 21 63 56c0 19 -5 38 -11 52zM220 -221c-40 0 -70 32 -70 70c0 41 31 71 71 71c39 0 68 -30 68 -71c0 -38 -29 -70 -69 -70z" /> + <glyph glyph-name="uni1EF5" unicode="&#x1ef5;" horiz-adv-x="497" +d="M44 489h151l30 -213c7 -51 12 -86 16 -117h2c11 30 22 61 43 114l89 216h152l-175 -352c-65 -130 -123 -218 -188 -279c-57 -54 -125 -79 -157 -84l-32 124c23 7 55 19 83 38c33 23 61 52 80 85c4 8 4 14 2 24zM339 -221c-40 0 -70 32 -70 70c0 41 31 71 71 71 +c39 0 68 -30 68 -71c0 -38 -29 -70 -69 -70z" /> + <glyph glyph-name="uni1EF7" unicode="&#x1ef7;" horiz-adv-x="497" +d="M44 489h151l30 -213c7 -51 12 -86 16 -117h2c11 30 22 61 43 114l89 216h152l-175 -352c-65 -130 -123 -218 -188 -279c-57 -54 -125 -79 -157 -84l-32 124c23 7 55 19 83 38c33 23 61 52 80 85c4 8 4 14 2 24zM336 528l-72 20c17 45 67 60 67 99c0 17 -11 29 -26 29 +c-22 0 -39 -20 -50 -36l-46 32c29 45 69 78 127 78c56 0 91 -37 91 -82c0 -71 -65 -92 -91 -140z" /> + <glyph glyph-name="uni1EF9" unicode="&#x1ef9;" horiz-adv-x="497" +d="M44 489h151l30 -213c7 -51 12 -86 16 -117h2c11 30 22 61 43 114l89 216h152l-175 -352c-65 -130 -123 -218 -188 -279c-57 -54 -125 -79 -157 -84l-32 124c23 7 55 19 83 38c33 23 61 52 80 85c4 8 4 14 2 24zM237 558h-70c11 80 45 126 96 126c28 0 45 -10 62 -20 +c15 -10 28 -19 39 -19c16 0 23 10 32 44h69c-13 -87 -46 -123 -98 -123c-27 0 -49 9 -64 19c-14 11 -26 18 -38 18c-13 0 -23 -19 -28 -45z" /> + <glyph glyph-name="breve_acutecomb" unicode="&#xe300;" +d="M306 810h117l-124 -148h-79zM130 662h71c1 -33 20 -57 58 -57c44 0 68 29 74 57h75c-12 -78 -70 -131 -155 -131c-93 0 -131 60 -123 131z" /> + <glyph glyph-name="breve_gravecomb" unicode="&#xe301;" +d="M122 810h116l73 -149h-76zM129 661h71c1 -32 21 -56 59 -56c44 0 68 28 75 56h75c-13 -78 -70 -130 -156 -130c-94 0 -132 60 -124 130z" /> + <glyph glyph-name="breve_hookabovecomb" unicode="&#xe302;" +d="M130 665h71c1 -33 20 -57 59 -57c43 0 67 28 74 57h75c-13 -79 -70 -130 -156 -130c-93 0 -131 59 -123 130zM282 649l-60 23c19 37 58 44 58 74c0 16 -12 27 -28 27c-18 0 -36 -15 -46 -27l-37 37c23 29 63 57 112 57c52 0 86 -31 86 -74c0 -58 -56 -73 -85 -117z" /> + <glyph glyph-name="breve_tildecomb" unicode="&#xe303;" +d="M140 664h73c1 -31 12 -56 47 -56c40 0 58 28 65 56h75c-13 -78 -62 -130 -147 -130c-92 0 -122 57 -113 130zM207 700h-70c12 74 49 116 96 116c28 0 46 -10 63 -20c15 -11 28 -20 41 -20c16 0 25 11 34 44h69c-13 -88 -48 -123 -100 -123c-29 0 -48 9 -64 18 +c-16 10 -26 19 -40 18c-12 0 -22 -12 -29 -33z" /> + <glyph glyph-name="circumflex_acutecomb" unicode="&#xe304;" +d="M225 702h105l63 -152h-93l-30 87h-2l-58 -87h-100zM465 795h115l-131 -147h-75z" /> + <glyph glyph-name="circumflex_gravecomb" unicode="&#xe305;" +d="M318 797h105l71 -148h-68zM225 702h106l63 -152h-93l-31 87h-2l-58 -87h-100z" /> + <glyph glyph-name="circumflex_hookabovecomb" unicode="&#xe306;" +d="M225 702h106l63 -152h-94l-30 87h-2l-58 -87h-100zM447 632l-60 23c18 38 58 44 58 75c0 15 -12 26 -29 26c-18 0 -35 -14 -46 -26l-37 36c24 29 64 57 113 57c52 0 86 -31 86 -74c0 -58 -57 -73 -85 -117z" /> + <glyph glyph-name="circumflex_tildecomb" unicode="&#xe307;" +d="M209 707h-70c6 70 42 110 94 110c25 0 43 -9 61 -19c16 -9 29 -17 41 -17c17 0 24 8 31 40h69c-7 -82 -43 -112 -95 -112c-27 0 -45 11 -65 22c-17 9 -25 14 -37 14c-14 0 -25 -15 -29 -38zM225 681h98l70 -131h-91l-32 68h-2l-48 -68h-101z" /> + <glyph glyph-name="space_dotbelowcomb" unicode="&#xe308;" +d="M154 -221c-40 0 -70 32 -70 70c0 41 31 71 71 71c39 0 68 -30 68 -71c0 -38 -29 -70 -69 -70z" /> + <glyph glyph-name="space_hookabovecomb" unicode="&#xe309;" +d="M286 529l-73 19c18 45 68 60 68 100c0 17 -11 28 -27 28c-21 0 -39 -20 -49 -36l-46 33c28 44 68 77 126 77c57 0 91 -36 91 -81c0 -72 -64 -93 -90 -140z" /> + <glyph glyph-name="space_uni031B" unicode="&#xe310;" +d="M250 409l15 80h32c45 0 63 21 63 57c0 19 -5 37 -10 52l105 18c5 -19 9 -41 9 -60c0 -91 -62 -147 -169 -147h-45z" /> + <glyph glyph-name="breve_acutecomb.cap" unicode="&#xe311;" +d="M318 924h127l-134 -114h-67zM152 820h75c0 -25 17 -48 57 -48c42 0 64 21 70 48h76c-12 -67 -57 -120 -154 -120s-132 53 -124 120z" /> + <glyph glyph-name="breve_gravecomb.cap" unicode="&#xe312;" +d="M151 924h126l56 -113h-66zM152 820h75c-1 -25 17 -48 57 -48c42 0 64 21 70 48h75c-11 -67 -56 -120 -153 -120s-132 53 -124 120z" /> + <glyph glyph-name="breve_hookabovecomb.cap" unicode="&#xe313;" +d="M304 795l-60 23c19 38 58 44 58 75c0 15 -12 26 -28 26c-18 0 -36 -14 -46 -26l-37 36c23 29 63 58 112 58c52 0 86 -32 86 -75c0 -58 -56 -73 -85 -117zM152 819l75 1c-1 -25 17 -48 57 -48c42 0 63 21 69 48h76c-11 -67 -57 -120 -154 -120c-96 0 -131 53 -123 119z +" /> + <glyph glyph-name="breve_tildecomb.cap" unicode="&#xe314;" +d="M152 820h79c0 -25 14 -48 53 -48c40 0 59 21 65 48h80c-11 -67 -56 -120 -153 -120s-132 53 -124 120zM224 849h-71c13 74 50 116 97 116c28 0 46 -9 62 -20c16 -10 28 -20 41 -20c17 0 25 12 35 44h69c-14 -88 -49 -123 -101 -123c-28 0 -47 9 -63 18 +c-16 10 -26 19 -40 19c-13 -1 -23 -13 -29 -34z" /> + <glyph glyph-name="circumflex_acutecomb.cap" unicode="&#xe315;" +d="M256 833h103l66 -123h-98l-27 63h-2l-60 -63h-108zM487 914h118l-135 -113h-72z" /> + <glyph glyph-name="circumflex_gravecomb.cap" unicode="&#xe316;" +d="M345 901h118l57 -113h-73zM256 833h103l66 -123h-98l-27 63h-2l-60 -63h-108z" /> + <glyph glyph-name="circumflex_hookabovecomb.cap" unicode="&#xe317;" +d="M479 755l-60 24c19 37 58 44 58 74c0 16 -12 27 -29 27c-18 0 -35 -15 -46 -27l-37 37c24 29 64 57 113 57c52 0 86 -31 86 -74c0 -58 -56 -73 -85 -118zM256 833h103l65 -123h-97l-28 63h-2l-59 -63h-108z" /> + <glyph glyph-name="circumflex_tildecomb.cap" unicode="&#xe318;" +d="M241 850h-70c6 69 43 110 94 110c25 0 43 -9 61 -19c16 -9 29 -17 41 -17c17 0 24 8 31 39h69c-7 -81 -43 -112 -95 -112c-27 0 -44 11 -65 22c-17 9 -25 14 -37 14c-14 0 -25 -14 -29 -37zM256 833h103l65 -123h-97l-28 63h-2l-59 -63h-108z" /> + <glyph glyph-name="space_dotbelowcomb.cap" unicode="&#xe319;" +d="M118 -217c-39 0 -69 32 -69 68c0 39 31 69 70 69c38 0 67 -30 67 -69c0 -36 -29 -68 -68 -68z" /> + <glyph glyph-name="space_hookabovecomb.cap" unicode="&#xe320;" +d="M299 703l-65 24c21 38 59 50 59 83c0 16 -10 27 -27 27c-18 0 -35 -16 -47 -29l-42 31c29 41 70 72 122 72c56 0 93 -35 93 -79c0 -61 -60 -79 -93 -129z" /> + <glyph glyph-name="space_uni031B.cap" unicode="&#xe321;" +d="M294 594l15 80h30c40 0 63 17 63 56c0 21 -5 39 -9 53l104 17c6 -17 9 -39 9 -58c0 -93 -60 -148 -167 -148h-45z" /> + <glyph glyph-name="Scedilla.dup" unicode="&#xf6c1;" horiz-adv-x="510" +d="M508 651l-45 -120c-22 12 -70 30 -125 29c-68 0 -103 -33 -103 -70c0 -39 41 -63 98 -95c82 -43 134 -97 134 -178c0 -124 -85 -200 -202 -221l-27 -39c35 -8 61 -33 61 -68c0 -70 -70 -95 -126 -95c-33 0 -62 9 -78 21l25 57c16 -10 36 -16 53 -16c18 0 37 8 37 28 +c0 18 -18 32 -72 36l46 70h-7c-48 0 -134 16 -177 48l48 118c40 -23 97 -42 159 -42c56 0 107 26 107 78c0 39 -29 63 -91 96c-71 38 -139 90 -139 177c0 137 118 219 265 219c82 0 130 -18 159 -33z" /> + <glyph glyph-name="scedilla.dup" unicode="&#xf6c2;" horiz-adv-x="416" +d="M397 476l-35 -102c-20 9 -55 21 -97 21c-39 0 -64 -16 -64 -43c0 -20 20 -37 59 -55c54 -27 110 -67 110 -135c0 -90 -61 -148 -151 -166l-28 -39c35 -8 61 -33 61 -65c0 -70 -70 -95 -126 -95c-33 0 -62 9 -78 21l25 54c16 -10 36 -16 53 -16c18 0 37 8 37 28 +c0 18 -18 32 -73 36l46 70h-4c-43 0 -108 17 -136 38l35 101c28 -14 80 -34 127 -34c41 0 62 20 62 44s-16 41 -61 63c-56 28 -103 69 -103 130c0 102 89 169 215 169c57 0 102 -12 126 -25z" /> + <glyph glyph-name="uni021A" unicode="&#x21a;" horiz-adv-x="527" +d="M142 0l103 548h-178l25 126h502l-25 -126h-180l-103 -548h-144zM110 -240l-15 66c35 6 77 27 77 68c0 20 -9 37 -20 48l107 17c12 -10 26 -34 26 -63c0 -93 -95 -133 -175 -136z" /> + <glyph glyph-name="uni021B" unicode="&#x21b;" horiz-adv-x="348" +d="M141 582l148 40l-25 -132h105l-22 -110h-104l-33 -166c-4 -19 -8 -45 -8 -62c0 -24 10 -41 42 -41c12 0 27 0 39 2l-16 -113c-19 -7 -55 -11 -85 -11c-87 0 -128 44 -128 106c0 26 3 53 11 91l37 194h-62l20 110h63zM32 -240l-16 66c35 6 77 27 77 68c0 19 -9 36 -20 47 +l107 18c12 -11 26 -35 26 -63c0 -93 -95 -133 -174 -136z" /> + <glyph glyph-name="uni00AD" unicode="&#xad;" horiz-adv-x="322" +d="M44 313h259l-20 -101h-259z" /> + <glyph glyph-name="uni00A0" unicode="&#xa0;" horiz-adv-x="184" + /> + <glyph glyph-name="uni02C9" unicode="&#x2c9;" +d="M154 662h246l-16 -78h-246z" /> + <glyph glyph-name="uni2215" unicode="&#x2215;" horiz-adv-x="419" +d="M22 -11h-86l490 672h86z" /> + <glyph glyph-name="uni2219" unicode="&#x2219;" horiz-adv-x="260" +d="M120 166c-48 0 -80 35 -80 83c0 55 40 102 97 102c49 0 83 -35 83 -86c0 -58 -41 -99 -100 -99z" /> + <glyph glyph-name="slash.frac" horiz-adv-x="143" +d="M-115 -11h-86l490 672h86z" /> + <glyph glyph-name="space.frac" horiz-adv-x="100" + /> + <glyph glyph-name="uni00A0.frac" horiz-adv-x="100" + /> + <glyph glyph-name="uni0433.ital" horiz-adv-x="265" +d="M157 0h-144l93 489h144zM84 659h246l-15 -77h-246z" /> + <glyph glyph-name="uni0434.ital" horiz-adv-x="558" +d="M11 -178l34 110c27 -16 86 -27 128 -27c72 0 125 32 146 130l8 42h-2c-38 -50 -82 -73 -140 -73c-97 0 -156 79 -157 175c-1 161 115 321 328 321c69 0 129 -13 181 -34l-74 -403c-16 -90 -45 -170 -103 -217c-53 -42 -124 -55 -189 -55c-66 0 -126 12 -160 31zM356 250 +l25 131c-11 5 -32 9 -52 9c-87 0 -149 -97 -149 -189c0 -50 22 -86 66 -86c47 0 94 53 110 135z" /> + <glyph glyph-name="uni043F.ital" horiz-adv-x="560" +d="M400 489h143l-62 -330c-11 -62 -20 -115 -26 -159h-127l9 79l-2 1c-50 -64 -109 -91 -168 -91c-79 0 -126 44 -126 137c0 26 3 56 10 90l52 273h144l-50 -262c-4 -23 -7 -47 -7 -65c0 -31 13 -56 49 -56c49 0 99 59 118 156zM143 659h420l-15 -77h-420z" /> + <glyph glyph-name="uni0442.ital" horiz-adv-x="826" +d="M102 489h140l-49 -267c-4 -19 -7 -40 -7 -59c0 -34 15 -58 48 -58c48 0 96 64 115 163l41 221h139l-51 -269c-3 -19 -6 -38 -6 -55c0 -34 11 -60 46 -60c49 0 99 68 117 164l40 220h140l-61 -328c-10 -55 -13 -119 -15 -161h-129c1 29 3 56 5 81h-2 +c-45 -63 -105 -92 -168 -92c-78 0 -112 50 -116 93c-44 -63 -106 -93 -169 -93c-75 0 -119 49 -119 132c0 20 4 59 8 84zM147 659h680l-16 -77h-680z" /> + <hkern u1="&#x20;" u2="&#x38f;" k="12" /> + <hkern u1="&#x20;" u2="&#x38e;" k="30" /> + <hkern u1="&#x20;" u2="&#x38c;" k="12" /> + <hkern u1="&#x20;" u2="&#x386;" k="50" /> + <hkern u1="F" u2="&#xef;" k="-19" /> + <hkern u1="T" u2="&#x129;" k="16" /> + <hkern u1="T" u2="&#x12f;" k="16" /> + <hkern u1="T" u2="&#x12b;" k="16" /> + <hkern u1="T" u2="&#x12d;" k="-13" /> + <hkern u1="T" g2="i.dot" k="16" /> + <hkern u1="T" u2="&#xec;" k="16" /> + <hkern u1="T" u2="&#xef;" k="-79" /> + <hkern u1="T" u2="&#xee;" k="16" /> + <hkern u1="T" u2="&#xed;" k="16" /> + <hkern u1="T" u2="&#xe8;" k="53" /> + <hkern u1="T" u2="&#xeb;" k="55" /> + <hkern u1="T" u2="&#xe0;" k="77" /> + <hkern u1="T" u2="i" k="16" /> + <hkern u1="V" u2="&#x12d;" k="-20" /> + <hkern u1="V" u2="&#xef;" k="-67" /> + <hkern u1="W" u2="&#x12d;" k="-20" /> + <hkern u1="W" u2="&#xef;" k="-67" /> + <hkern u1="Y" u2="&#x129;" k="24" /> + <hkern u1="Y" u2="&#x12f;" k="24" /> + <hkern u1="Y" u2="&#x12b;" k="24" /> + <hkern u1="Y" u2="&#x12d;" k="-4" /> + <hkern u1="Y" g2="i.dot" k="24" /> + <hkern u1="Y" u2="&#xf6;" k="69" /> + <hkern u1="Y" u2="&#xec;" k="24" /> + <hkern u1="Y" u2="&#xef;" k="-52" /> + <hkern u1="Y" u2="&#xee;" k="24" /> + <hkern u1="Y" u2="&#xed;" k="24" /> + <hkern u1="Y" u2="&#xeb;" k="57" /> + <hkern u1="Y" u2="&#xe4;" k="62" /> + <hkern u1="Y" u2="i" k="24" /> + <hkern u1="&#x2018;" u2="&#x3b1;" k="44" /> + <hkern u1="&#x201c;" u2="&#x3b1;" k="44" /> + <hkern u1="&#xd8;" u2="&#x3a4;" k="35" /> + <hkern u1="&#xdd;" u2="&#x129;" k="24" /> + <hkern u1="&#xdd;" u2="&#x12f;" k="24" /> + <hkern u1="&#xdd;" u2="&#x12b;" k="24" /> + <hkern u1="&#xdd;" u2="&#x12d;" k="-4" /> + <hkern u1="&#xdd;" g2="i.dot" k="24" /> + <hkern u1="&#xdd;" u2="&#xf6;" k="69" /> + <hkern u1="&#xdd;" u2="&#xec;" k="24" /> + <hkern u1="&#xdd;" u2="&#xef;" k="-52" /> + <hkern u1="&#xdd;" u2="&#xee;" k="24" /> + <hkern u1="&#xdd;" u2="&#xed;" k="24" /> + <hkern u1="&#xdd;" u2="&#xeb;" k="57" /> + <hkern u1="&#xdd;" u2="&#xe4;" k="62" /> + <hkern u1="&#xdd;" u2="i" k="24" /> + <hkern u1="&#x178;" u2="&#x129;" k="24" /> + <hkern u1="&#x178;" u2="&#x12f;" k="24" /> + <hkern u1="&#x178;" u2="&#x12b;" k="24" /> + <hkern u1="&#x178;" u2="&#x12d;" k="-4" /> + <hkern u1="&#x178;" g2="i.dot" k="24" /> + <hkern u1="&#x178;" u2="&#xf6;" k="69" /> + <hkern u1="&#x178;" u2="&#xec;" k="24" /> + <hkern u1="&#x178;" u2="&#xef;" k="-52" /> + <hkern u1="&#x178;" u2="&#xee;" k="24" /> + <hkern u1="&#x178;" u2="&#xed;" k="24" /> + <hkern u1="&#x178;" u2="&#xeb;" k="57" /> + <hkern u1="&#x178;" u2="&#xe4;" k="62" /> + <hkern u1="&#x178;" u2="i" k="24" /> + <hkern u1="&#x166;" u2="&#x129;" k="16" /> + <hkern u1="&#x166;" u2="&#x12f;" k="16" /> + <hkern u1="&#x166;" u2="&#x12b;" k="16" /> + <hkern u1="&#x166;" u2="&#x12d;" k="-13" /> + <hkern u1="&#x166;" g2="i.dot" k="16" /> + <hkern u1="&#x166;" u2="&#xec;" k="16" /> + <hkern u1="&#x166;" u2="&#xef;" k="-79" /> + <hkern u1="&#x166;" u2="&#xee;" k="16" /> + <hkern u1="&#x166;" u2="&#xed;" k="16" /> + <hkern u1="&#x166;" u2="&#xe8;" k="53" /> + <hkern u1="&#x166;" u2="&#xeb;" k="55" /> + <hkern u1="&#x166;" u2="&#xe0;" k="77" /> + <hkern u1="&#x166;" u2="i" k="16" /> + <hkern u1="&#xf6dc;" u2="&#xf63e;" k="3" /> + <hkern u1="&#xf6dc;" u2="&#xf63c;" k="21" /> + <hkern u1="&#xf63a;" u2="&#xf63e;" k="9" /> + <hkern u1="&#xf63a;" u2="&#xf63c;" k="26" /> + <hkern u1="&#xf63c;" u2="&#xf641;" k="4" /> + <hkern u1="&#xf63d;" u2="&#xf641;" k="3" /> + <hkern u1="&#xf63e;" u2="&#xf641;" k="6" /> + <hkern u1="&#xf63f;" u2="&#xf63f;" k="-11" /> + <hkern u1="&#xf63f;" u2="&#xf63e;" k="12" /> + <hkern u1="&#xf63f;" u2="&#xf63c;" k="39" /> + <hkern u1="&#xf63f;" u2="&#xf6dc;" k="-4" /> + <hkern u1="&#xf641;" u2="&#xf63c;" k="6" /> + <hkern u1="&#xf641;" u2="&#xf63a;" k="3" /> + <hkern u1="&#x3c0;" u2="&#x390;" k="-29" /> + <hkern u1="&#x3c0;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x164;" u2="&#x129;" k="16" /> + <hkern u1="&#x164;" u2="&#x12f;" k="16" /> + <hkern u1="&#x164;" u2="&#x12b;" k="16" /> + <hkern u1="&#x164;" u2="&#x12d;" k="-13" /> + <hkern u1="&#x164;" g2="i.dot" k="16" /> + <hkern u1="&#x164;" u2="&#xec;" k="16" /> + <hkern u1="&#x164;" u2="&#xef;" k="-79" /> + <hkern u1="&#x164;" u2="&#xee;" k="16" /> + <hkern u1="&#x164;" u2="&#xed;" k="16" /> + <hkern u1="&#x164;" u2="&#xe8;" k="53" /> + <hkern u1="&#x164;" u2="&#xeb;" k="55" /> + <hkern u1="&#x164;" u2="&#xe0;" k="77" /> + <hkern u1="&#x164;" u2="i" k="16" /> + <hkern u1="&#x162;" u2="&#x129;" k="16" /> + <hkern u1="&#x162;" u2="&#x12f;" k="16" /> + <hkern u1="&#x162;" u2="&#x12b;" k="16" /> + <hkern u1="&#x162;" u2="&#x12d;" k="-13" /> + <hkern u1="&#x162;" g2="i.dot" k="16" /> + <hkern u1="&#x162;" u2="&#xec;" k="16" /> + <hkern u1="&#x162;" u2="&#xef;" k="-79" /> + <hkern u1="&#x162;" u2="&#xee;" k="16" /> + <hkern u1="&#x162;" u2="&#xed;" k="16" /> + <hkern u1="&#x162;" u2="&#xe8;" k="53" /> + <hkern u1="&#x162;" u2="&#xeb;" k="55" /> + <hkern u1="&#x162;" u2="&#xe0;" k="77" /> + <hkern u1="&#x162;" u2="i" k="16" /> + <hkern u1="&#x1e82;" u2="&#x12d;" k="-20" /> + <hkern u1="&#x1e82;" u2="&#xef;" k="-67" /> + <hkern u1="&#x174;" u2="&#x12d;" k="-20" /> + <hkern u1="&#x174;" u2="&#xef;" k="-67" /> + <hkern u1="&#x1e84;" u2="&#x12d;" k="-20" /> + <hkern u1="&#x1e84;" u2="&#xef;" k="-67" /> + <hkern u1="&#x1e80;" u2="&#x12d;" k="-20" /> + <hkern u1="&#x1e80;" u2="&#xef;" k="-67" /> + <hkern u1="&#x1ef2;" u2="&#x129;" k="24" /> + <hkern u1="&#x1ef2;" u2="&#x12f;" k="24" /> + <hkern u1="&#x1ef2;" u2="&#x12b;" k="24" /> + <hkern u1="&#x1ef2;" u2="&#x12d;" k="-4" /> + <hkern u1="&#x1ef2;" g2="i.dot" k="24" /> + <hkern u1="&#x1ef2;" u2="&#xf6;" k="69" /> + <hkern u1="&#x1ef2;" u2="&#xec;" k="24" /> + <hkern u1="&#x1ef2;" u2="&#xef;" k="-52" /> + <hkern u1="&#x1ef2;" u2="&#xee;" k="24" /> + <hkern u1="&#x1ef2;" u2="&#xed;" k="24" /> + <hkern u1="&#x1ef2;" u2="&#xeb;" k="57" /> + <hkern u1="&#x1ef2;" u2="&#xe4;" k="62" /> + <hkern u1="&#x1ef2;" u2="i" k="24" /> + <hkern u1="&#x232;" u2="&#x129;" k="24" /> + <hkern u1="&#x232;" u2="&#x12f;" k="24" /> + <hkern u1="&#x232;" u2="&#x12b;" k="24" /> + <hkern u1="&#x232;" u2="&#x12d;" k="-4" /> + <hkern u1="&#x232;" g2="i.dot" k="24" /> + <hkern u1="&#x232;" u2="&#xf6;" k="69" /> + <hkern u1="&#x232;" u2="&#xec;" k="24" /> + <hkern u1="&#x232;" u2="&#xef;" k="-52" /> + <hkern u1="&#x232;" u2="&#xee;" k="24" /> + <hkern u1="&#x232;" u2="&#xed;" k="24" /> + <hkern u1="&#x232;" u2="&#xeb;" k="57" /> + <hkern u1="&#x232;" u2="&#xe4;" k="62" /> + <hkern u1="&#x232;" u2="i" k="24" /> + <hkern u1="&#x10f;" u2="&#x140;" k="-100" /> + <hkern u1="&#x10f;" u2="&#x13c;" k="-100" /> + <hkern u1="&#x10f;" u2="&#x13e;" k="-100" /> + <hkern u1="&#x10f;" u2="&#x13a;" k="-100" /> + <hkern u1="&#x10f;" u2="&#x137;" k="-100" /> + <hkern u1="&#x10f;" u2="&#x125;" k="-100" /> + <hkern u1="&#x10f;" u2="&#x127;" k="-100" /> + <hkern u1="&#x10f;" u2="&#x142;" k="-100" /> + <hkern u1="&#x10f;" u2="&#x201d;" k="-107" /> + <hkern u1="&#x10f;" u2="l" k="-100" /> + <hkern u1="&#x10f;" u2="k" k="-100" /> + <hkern u1="&#x10f;" u2="h" k="-100" /> + <hkern u1="&#x10f;" u2="b" k="-100" /> + <hkern u1="&#x10f;" u2="&#x2019;" k="-107" /> + <hkern u1="&#x165;" u2="&#x201d;" k="-81" /> + <hkern u1="&#x165;" u2="&#x2019;" k="-81" /> + <hkern u1="&#x391;" u2="&#x390;" k="5" /> + <hkern u1="&#x391;" u2="&#x3be;" k="7" /> + <hkern u1="&#x391;" u2="&#x3bd;" k="19" /> + <hkern u1="&#x391;" u2="&#x3b4;" k="7" /> + <hkern u1="&#x391;" u2="&#xd8;" k="26" /> + <hkern u1="&#x392;" u2="&#x3b4;" k="-7" /> + <hkern u1="&#x393;" u2="&#x3b0;" k="-19" /> + <hkern u1="&#x393;" u2="&#x390;" k="-119" /> + <hkern u1="&#x393;" u2="&#x3cb;" k="7" /> + <hkern u1="&#x393;" u2="&#x3ca;" k="-91" /> + <hkern u1="&#x393;" u2="&#x3b4;" k="39" /> + <hkern u1="&#x393;" u2="&#x3b2;" k="24" /> + <hkern u1="&#x394;" u2="&#x3bd;" k="7" /> + <hkern u1="&#x395;" u2="&#x390;" k="-79" /> + <hkern u1="&#x395;" u2="&#x3ca;" k="-50" /> + <hkern u1="&#x397;" u2="&#x390;" k="-62" /> + <hkern u1="&#x397;" u2="&#x3ca;" k="-36" /> + <hkern u1="&#x399;" u2="&#x390;" k="-62" /> + <hkern u1="&#x399;" u2="&#x3ca;" k="-36" /> + <hkern u1="&#x39a;" u2="&#x3b0;" k="4" /> + <hkern u1="&#x39a;" u2="&#x390;" k="-95" /> + <hkern u1="&#x39a;" u2="&#x3ca;" k="-65" /> + <hkern u1="&#x39a;" u2="&#x3b2;" k="-4" /> + <hkern u1="&#x39b;" u2="&#x390;" k="5" /> + <hkern u1="&#x39d;" u2="&#x390;" k="-62" /> + <hkern u1="&#x39d;" u2="&#x3ca;" k="-36" /> + <hkern u1="&#x39d;" u2="&#x3c1;" k="7" /> + <hkern u1="&#x39d;" u2="&#x3bf;" k="5" /> + <hkern u1="&#x39d;" u2="&#x3b4;" k="5" /> + <hkern u1="&#x39d;" u2="&#x391;" k="11" /> + <hkern u1="&#x39e;" u2="&#x390;" k="-89" /> + <hkern u1="&#x39e;" u2="&#x3ca;" k="-60" /> + <hkern u1="&#x39e;" u2="&#x3b9;" k="-6" /> + <hkern u1="&#x39e;" u2="&#x3b7;" k="-9" /> + <hkern u1="&#x39f;" u2="&#x3be;" k="-11" /> + <hkern u1="&#x3a0;" u2="&#x390;" k="-62" /> + <hkern u1="&#x3a0;" u2="&#x3ca;" k="-36" /> + <hkern u1="&#x3a1;" u2="&#x390;" k="-58" /> + <hkern u1="&#x3a1;" u2="&#x3ca;" k="-25" /> + <hkern u1="&#x3a1;" u2="&#x3b2;" k="3" /> + <hkern u1="&#x3a3;" u2="&#x390;" k="-70" /> + <hkern u1="&#x3a3;" u2="&#x3ca;" k="-38" /> + <hkern u1="&#x3a3;" u2="&#x3b4;" k="12" /> + <hkern u1="&#x3a3;" u2="&#x3aa;" k="-3" /> + <hkern u1="&#x3a3;" u2="&#x3a4;" k="-3" /> + <hkern u1="&#x3a4;" u2="&#x3b0;" k="-14" /> + <hkern u1="&#x3a4;" u2="&#x390;" k="-115" /> + <hkern u1="&#x3a4;" u2="&#x3cb;" k="11" /> + <hkern u1="&#x3a4;" u2="&#x3ca;" k="-93" /> + <hkern u1="&#x3a4;" u2="&#x3b2;" k="29" /> + <hkern u1="&#x3a4;" u2="&#x129;" k="16" /> + <hkern u1="&#x3a4;" u2="&#x12f;" k="16" /> + <hkern u1="&#x3a4;" u2="&#x12b;" k="16" /> + <hkern u1="&#x3a4;" u2="&#x12d;" k="-13" /> + <hkern u1="&#x3a4;" g2="i.dot" k="16" /> + <hkern u1="&#x3a4;" u2="&#xec;" k="16" /> + <hkern u1="&#x3a4;" u2="&#xef;" k="-79" /> + <hkern u1="&#x3a4;" u2="&#xee;" k="16" /> + <hkern u1="&#x3a4;" u2="&#xed;" k="16" /> + <hkern u1="&#x3a4;" u2="&#xe8;" k="53" /> + <hkern u1="&#x3a4;" u2="&#xeb;" k="55" /> + <hkern u1="&#x3a4;" u2="&#xe0;" k="77" /> + <hkern u1="&#x3a4;" u2="i" k="16" /> + <hkern u1="&#x3a5;" u2="&#x3b0;" k="-26" /> + <hkern u1="&#x3a5;" u2="&#x390;" k="-124" /> + <hkern u1="&#x3a5;" u2="&#x3ca;" k="-95" /> + <hkern u1="&#x3a5;" u2="&#x3b4;" k="22" /> + <hkern u1="&#x3a7;" u2="&#x390;" k="-85" /> + <hkern u1="&#x3a7;" u2="&#x3ca;" k="-56" /> + <hkern u1="&#x3a8;" u2="&#x3b4;" k="12" /> + <hkern u1="&#x3a8;" u2="&#x3aa;" k="-5" /> + <hkern u1="&#x3a9;" u2="&#x390;" k="-9" /> + <hkern u1="&#x3a9;" u2="&#x3ca;" k="-3" /> + <hkern u1="&#x3a9;" u2="&#x3bd;" k="-18" /> + <hkern u1="&#x3a9;" u2="&#x3b2;" k="-5" /> + <hkern u1="&#x3a9;" u2="&#xb5;" k="-7" /> + <hkern u1="&#x388;" u2="&#x390;" k="-79" /> + <hkern u1="&#x388;" u2="&#x3ca;" k="-50" /> + <hkern u1="&#x389;" u2="&#x390;" k="-62" /> + <hkern u1="&#x389;" u2="&#x3ca;" k="-36" /> + <hkern u1="&#x38a;" u2="&#x390;" k="-62" /> + <hkern u1="&#x38a;" u2="&#x3ca;" k="-36" /> + <hkern u1="&#x38e;" u2="&#x3b0;" k="-26" /> + <hkern u1="&#x38e;" u2="&#x390;" k="-124" /> + <hkern u1="&#x38e;" u2="&#x3ca;" k="-95" /> + <hkern u1="&#x38e;" u2="&#x3b4;" k="22" /> + <hkern u1="&#x38f;" u2="&#x390;" k="-9" /> + <hkern u1="&#x38f;" u2="&#x3ca;" k="-3" /> + <hkern u1="&#x3b2;" u2="&#x390;" k="-40" /> + <hkern u1="&#x3b2;" u2="&#x3ca;" k="-11" /> + <hkern u1="&#x3b2;" u2="&#x3c2;" k="-6" /> + <hkern u1="&#x3b2;" u2="&#x3b4;" k="-10" /> + <hkern u1="&#x3b3;" u2="&#x3b4;" k="-4" /> + <hkern u1="&#x3b4;" u2="&#x390;" k="-23" /> + <hkern u1="&#x3b4;" u2="&#x3ca;" k="-3" /> + <hkern u1="&#x3b4;" u2="&#x3ad;" k="-3" /> + <hkern u1="&#x3b4;" u2="&#x3c9;" k="-6" /> + <hkern u1="&#x3b4;" u2="&#x3c1;" k="7" /> + <hkern u1="&#x3b4;" u2="&#x3b6;" k="-9" /> + <hkern u1="&#x3b4;" u2="&#x3b5;" k="-3" /> + <hkern u1="&#x3b4;" u2="&#x3b3;" k="11" /> + <hkern u1="&#x3b6;" u2="&#x390;" k="-101" /> + <hkern u1="&#x3b6;" u2="&#x3ca;" k="-76" /> + <hkern u1="&#x3b6;" u2="&#x3b2;" k="-18" /> + <hkern u1="&#x3b7;" u2="&#x3c2;" k="5" /> + <hkern u1="&#x3b7;" u2="&#x3bd;" k="4" /> + <hkern u1="&#x3bb;" u2="&#x3bd;" k="17" /> + <hkern u1="&#x3bd;" u2="&#x3c1;" k="24" /> + <hkern u1="&#x3bd;" u2="&#x3b6;" k="-11" /> + <hkern u1="&#x3be;" u2="&#x390;" k="-88" /> + <hkern u1="&#x3be;" u2="&#x3ca;" k="-67" /> + <hkern u1="&#x3be;" u2="&#x3b2;" k="-13" /> + <hkern u1="&#x3be;" u2="&#xb5;" k="-19" /> + <hkern u1="&#x3c3;" u2="&#x390;" k="-34" /> + <hkern u1="&#x3c3;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x3c5;" u2="&#x3c1;" k="8" /> + <hkern u1="&#x3c5;" u2="&#x3b3;" k="-18" /> + <hkern u1="&#x3c5;" u2="&#x201d;" k="25" /> + <hkern u1="&#x3c5;" u2="&#x2019;" k="25" /> + <hkern u1="&#x3c7;" u2="&#x390;" k="-22" /> + <hkern u1="&#x3c7;" u2="&#x3ca;" k="-14" /> + <hkern u1="&#x3c8;" u2="&#x3c1;" k="6" /> + <hkern u1="&#x3c8;" u2="&#x3b3;" k="-18" /> + <hkern u1="&#x3c8;" u2="&#x201d;" k="25" /> + <hkern u1="&#x3c8;" u2="&#x2019;" k="25" /> + <hkern u1="&#x3c9;" u2="&#x3b4;" k="-5" /> + <hkern u1="&#x3ad;" u2="&#x390;" k="-40" /> + <hkern u1="&#x3ad;" u2="&#x3ca;" k="-23" /> + <hkern u1="&#x3ae;" u2="&#x390;" k="-3" /> + <hkern u1="&#x3af;" u2="&#x3bb;" k="-17" /> + <hkern u1="&#x3ca;" u2="&#x3be;" k="-31" /> + <hkern u1="&#x3ca;" u2="&#x3bb;" k="-41" /> + <hkern u1="&#x3ca;" u2="&#x3b8;" k="-22" /> + <hkern u1="&#x3ca;" u2="&#x3b6;" k="-23" /> + <hkern u1="&#x3ca;" u2="&#x3b2;" k="-12" /> + <hkern u1="&#x3ca;" u2="&#x3c0;" k="-20" /> + <hkern u1="&#x390;" u2="&#x3be;" k="-58" /> + <hkern u1="&#x390;" u2="&#x3bb;" k="-81" /> + <hkern u1="&#x390;" u2="&#x3b8;" k="-52" /> + <hkern u1="&#x390;" u2="&#x3b6;" k="-61" /> + <hkern u1="&#x390;" u2="&#x3b2;" k="-45" /> + <hkern u1="&#x390;" u2="&#x3c0;" k="-34" /> + <hkern u1="&#x1ef4;" u2="&#x129;" k="24" /> + <hkern u1="&#x1ef4;" u2="&#x12f;" k="24" /> + <hkern u1="&#x1ef4;" u2="&#x12b;" k="24" /> + <hkern u1="&#x1ef4;" u2="&#x12d;" k="-4" /> + <hkern u1="&#x1ef4;" g2="i.dot" k="24" /> + <hkern u1="&#x1ef4;" u2="&#xf6;" k="69" /> + <hkern u1="&#x1ef4;" u2="&#xec;" k="24" /> + <hkern u1="&#x1ef4;" u2="&#xef;" k="-52" /> + <hkern u1="&#x1ef4;" u2="&#xee;" k="24" /> + <hkern u1="&#x1ef4;" u2="&#xed;" k="24" /> + <hkern u1="&#x1ef4;" u2="&#xeb;" k="57" /> + <hkern u1="&#x1ef4;" u2="&#xe4;" k="62" /> + <hkern u1="&#x1ef4;" u2="i" k="24" /> + <hkern u1="&#x1ef6;" u2="&#x129;" k="24" /> + <hkern u1="&#x1ef6;" u2="&#x12f;" k="24" /> + <hkern u1="&#x1ef6;" u2="&#x12b;" k="24" /> + <hkern u1="&#x1ef6;" u2="&#x12d;" k="-4" /> + <hkern u1="&#x1ef6;" g2="i.dot" k="24" /> + <hkern u1="&#x1ef6;" u2="&#xf6;" k="69" /> + <hkern u1="&#x1ef6;" u2="&#xec;" k="24" /> + <hkern u1="&#x1ef6;" u2="&#xef;" k="-52" /> + <hkern u1="&#x1ef6;" u2="&#xee;" k="24" /> + <hkern u1="&#x1ef6;" u2="&#xed;" k="24" /> + <hkern u1="&#x1ef6;" u2="&#xeb;" k="57" /> + <hkern u1="&#x1ef6;" u2="&#xe4;" k="62" /> + <hkern u1="&#x1ef6;" u2="i" k="24" /> + <hkern u1="&#x1ef8;" u2="&#x129;" k="24" /> + <hkern u1="&#x1ef8;" u2="&#x12f;" k="24" /> + <hkern u1="&#x1ef8;" u2="&#x12b;" k="24" /> + <hkern u1="&#x1ef8;" u2="&#x12d;" k="-4" /> + <hkern u1="&#x1ef8;" g2="i.dot" k="24" /> + <hkern u1="&#x1ef8;" u2="&#xf6;" k="69" /> + <hkern u1="&#x1ef8;" u2="&#xec;" k="24" /> + <hkern u1="&#x1ef8;" u2="&#xef;" k="-52" /> + <hkern u1="&#x1ef8;" u2="&#xee;" k="24" /> + <hkern u1="&#x1ef8;" u2="&#xed;" k="24" /> + <hkern u1="&#x1ef8;" u2="&#xeb;" k="57" /> + <hkern u1="&#x1ef8;" u2="&#xe4;" k="62" /> + <hkern u1="&#x1ef8;" u2="i" k="24" /> + <hkern u1="&#x21a;" u2="&#x129;" k="16" /> + <hkern u1="&#x21a;" u2="&#x12f;" k="16" /> + <hkern u1="&#x21a;" u2="&#x12b;" k="16" /> + <hkern u1="&#x21a;" u2="&#x12d;" k="-13" /> + <hkern u1="&#x21a;" g2="i.dot" k="16" /> + <hkern u1="&#x21a;" u2="&#xec;" k="16" /> + <hkern u1="&#x21a;" u2="&#xef;" k="-79" /> + <hkern u1="&#x21a;" u2="&#xee;" k="16" /> + <hkern u1="&#x21a;" u2="&#xed;" k="16" /> + <hkern u1="&#x21a;" u2="&#xe8;" k="53" /> + <hkern u1="&#x21a;" u2="&#xeb;" k="55" /> + <hkern u1="&#x21a;" u2="&#xe0;" k="77" /> + <hkern u1="&#x21a;" u2="i" k="16" /> + <hkern u1="&#xa0;" u2="&#x38f;" k="12" /> + <hkern u1="&#xa0;" u2="&#x38e;" k="30" /> + <hkern u1="&#xa0;" u2="&#x38c;" k="12" /> + <hkern u1="&#xa0;" u2="&#x386;" k="50" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="22" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="12" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-7" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-3" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="10" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-14" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-10" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="x" + k="-7" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="z,zcaron,zacute,zdotaccent" + k="-4" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="-7" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="guilsinglright,guillemotright" + k="-7" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="guillemotleft,guilsinglleft" + k="4" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="quoteleft,quotedblleft" + k="-7" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="quoteright,quotedblright" + k="-8" /> + <hkern g1="c,ccedilla,cacute,ccaron,ccircumflex,cdotaccent" + g2="comma,period,ellipsis" + k="9" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="54" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="j,jcircumflex" + k="5" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-4" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="6" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="x" + k="3" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="hyphen,endash,emdash,uni00AD" + k="-6" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="quoteright,quotedblright" + k="12" /> + <hkern g1="e,ae,oe,eacute,ecircumflex,edieresis,egrave,ebreve,ecaron,edotaccent,emacron,eogonek,aeacute,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7" + g2="comma,period,ellipsis" + k="11" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="48" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="5" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="11" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + g2="quoteright,quotedblright" + k="14" /> + <hkern g1="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + g2="comma,period,ellipsis" + k="15" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="70" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="8" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="12" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="x" + k="8" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="quotedbl,quotesingle" + k="33" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="quoteleft,quotedblleft" + k="5" /> + <hkern g1="h,m,n,ntilde,eng,hbar,napostrophe,hcircumflex,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent" + g2="quoteright,quotedblright" + k="27" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="36" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="27" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="24" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-4" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-4" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="24" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="7" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="4" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="colon,semicolon" + k="-4" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="quoteleft,quotedblleft" + k="-4" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="quoteright,quotedblright" + k="4" /> + <hkern g1="k,kgreenlandic,kcommaaccent" + g2="comma,period,ellipsis" + k="-3" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="44" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="11" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="10" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="j,jcircumflex" + k="-6" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="x" + k="8" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="quoteright,quotedblright" + k="9" /> + <hkern g1="q,u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="61" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="-5" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="j,jcircumflex" + k="13" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-5" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="9" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="x" + k="13" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="z,zcaron,zacute,zdotaccent" + k="9" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="hyphen,endash,emdash,uni00AD" + k="-13" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="quotedbl,quotesingle" + k="23" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="quoteright,quotedblright" + k="34" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="comma,period,ellipsis" + k="14" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="24" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="9" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-24" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="3" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-26" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-22" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="x" + k="-11" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="z,zcaron,zacute,zdotaccent" + k="-8" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="colon,semicolon" + k="-3" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="hyphen,endash,emdash,uni00AD" + k="3" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="quoteleft,quotedblleft" + k="-6" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="quoteright,quotedblright" + k="-14" /> + <hkern g1="r,racute,rcaron,rcommaaccent" + g2="comma,period,ellipsis" + k="41" /> + <hkern g1="s,germandbls,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="42" /> + <hkern g1="s,germandbls,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + g2="hyphen,endash,emdash,uni00AD" + k="3" /> + <hkern g1="s,germandbls,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + g2="quoteright,quotedblright" + k="15" /> + <hkern g1="s,germandbls,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="33" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="21" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="22" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="j,jcircumflex" + k="12" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="10" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-4" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-18" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="3" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="hyphen,endash,emdash,uni00AD" + k="9" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="quoteright,quotedblright" + k="-4" /> + <hkern g1="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + g2="comma,period,ellipsis" + k="45" /> + <hkern g1="x" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="30" /> + <hkern g1="x" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="16" /> + <hkern g1="x" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-6" /> + <hkern g1="x" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="16" /> + <hkern g1="x" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="17" /> + <hkern g1="x" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-20" /> + <hkern g1="x" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-22" /> + <hkern g1="x" + g2="hyphen,endash,emdash,uni00AD" + k="6" /> + <hkern g1="x" + g2="quoteright,quotedblright" + k="-10" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="31" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-14" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-6" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-10" /> + <hkern g1="z,zcaron,zacute,zdotaccent" + g2="quoteright,quotedblright" + k="-10" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="63" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="15" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="J,Jcircumflex" + k="-6" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="29" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="32" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="49" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="X,Chi" + k="11" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="67" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="3" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="4" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="10" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-5" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="j,jcircumflex" + k="-10" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-7" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="11" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="5" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="6" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="26" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="x" + k="-4" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="z,zcaron,zacute,zdotaccent" + k="-14" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="quotedbl,quotesingle" + k="35" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="quoteleft,quotedblleft" + k="41" /> + <hkern g1="A,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,Alpha,Lambda,Alphatonos,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + g2="quoteright,quotedblright" + k="63" /> + <hkern g1="B,Beta" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="24" /> + <hkern g1="B,Beta" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="6" /> + <hkern g1="B,Beta" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="8" /> + <hkern g1="B,Beta" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="15" /> + <hkern g1="B,Beta" + g2="X,Chi" + k="10" /> + <hkern g1="B,Beta" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="23" /> + <hkern g1="B,Beta" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-3" /> + <hkern g1="B,Beta" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="3" /> + <hkern g1="B,Beta" + g2="guillemotleft,guilsinglleft" + k="-11" /> + <hkern g1="B,Beta" + g2="hyphen,endash,emdash,uni00AD" + k="-12" /> + <hkern g1="B,Beta" + g2="quoteright,quotedblright" + k="11" /> + <hkern g1="B,Beta" + g2="comma,period,ellipsis" + k="15" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-3" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-7" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="J,Jcircumflex" + k="-5" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="24" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-5" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="X,Chi" + k="-6" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-4" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="M,M_uni0302,Mu" + k="-9" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="11" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="10" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="6" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="5" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="17" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="z,zcaron,zacute,zdotaccent" + k="-11" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="hyphen,endash,emdash,uni00AD" + k="3" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="parenright,bracketright,braceright" + k="-9" /> + <hkern g1="C,Ccedilla,Cacute,Ccaron,Ccircumflex,Cdotaccent" + g2="quoteright,quotedblright" + k="8" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-5" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-4" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="5" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-4" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="6" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="j,jcircumflex" + k="-4" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="6" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="4" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="12" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="z,zcaron,zacute,zdotaccent" + k="-3" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="comma,period,ellipsis" + k="9" /> + <hkern g1="F" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="60" /> + <hkern g1="F" + g2="J,Jcircumflex" + k="79" /> + <hkern g1="F" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="11" /> + <hkern g1="F" + g2="X,Chi" + k="11" /> + <hkern g1="F" + g2="M,M_uni0302,Mu" + k="8" /> + <hkern g1="F" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="35" /> + <hkern g1="F" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="32" /> + <hkern g1="F" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="12" /> + <hkern g1="F" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="14" /> + <hkern g1="F" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="24" /> + <hkern g1="F" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="19" /> + <hkern g1="F" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="14" /> + <hkern g1="F" + g2="x" + k="31" /> + <hkern g1="F" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="18" /> + <hkern g1="F" + g2="colon,semicolon" + k="11" /> + <hkern g1="F" + g2="guilsinglright,guillemotright" + k="8" /> + <hkern g1="F" + g2="comma,period,ellipsis" + k="57" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="11" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="J,Jcircumflex" + k="-5" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="15" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="14" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="M,M_uni0302,Mu" + k="-3" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="-4" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="11" /> + <hkern g1="G,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb" + g2="quoteright,quotedblright" + k="15" /> + <hkern g1="J,IJ,Jcircumflex" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="12" /> + <hkern g1="J,IJ,Jcircumflex" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-11" /> + <hkern g1="J,IJ,Jcircumflex" + g2="parenright,bracketright,braceright" + k="-14" /> + <hkern g1="J,IJ,Jcircumflex" + g2="quoteright,quotedblright" + k="-3" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="13" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="J,Jcircumflex" + k="-11" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="45" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="18" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="6" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-5" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="8" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-10" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="21" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="24" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="28" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="19" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="33" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="guillemotleft,guilsinglleft" + k="12" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="hyphen,endash,emdash,uni00AD" + k="30" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="parenright,bracketright,braceright" + k="-13" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="quotedbl,quotesingle" + k="-5" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="quoteright,quotedblright" + k="-3" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="comma,period,ellipsis" + k="-7" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="98" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-15" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="J,Jcircumflex" + k="-8" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="42" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="38" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="65" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="X,Chi" + k="4" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="97" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="M,M_uni0302,Mu" + k="-3" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-9" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="3" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="j,jcircumflex" + k="-5" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="13" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="7" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="44" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="x" + k="-7" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="z,zcaron,zacute,zdotaccent" + k="-9" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="guillemotleft,guilsinglleft" + k="22" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="hyphen,endash,emdash,uni00AD" + k="23" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="quotedbl,quotesingle" + k="134" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="quoteleft,quotedblleft" + k="155" /> + <hkern g1="L,Lslash,Lacute,Lcaron,Lcommaaccent,Ldot" + g2="quoteright,quotedblright" + k="117" /> + <hkern g1="M,M_uni0302,Mu" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="7" /> + <hkern g1="M,M_uni0302,Mu" + g2="j,jcircumflex" + k="-8" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="35" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="15" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="9" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="X,Chi" + k="12" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="45" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="-7" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-14" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="-8" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-3" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="j,jcircumflex" + k="6" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-3" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-8" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-11" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="-3" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-6" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="x" + k="10" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="-4" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="colon,semicolon" + k="4" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="guilsinglright,guillemotright" + k="-3" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="guillemotleft,guilsinglleft" + k="-6" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="hyphen,endash,emdash,uni00AD" + k="-15" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="quoteright,quotedblright" + k="4" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="comma,period,ellipsis" + k="18" /> + <hkern g1="P,Rho" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="13" /> + <hkern g1="P,Rho" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="58" /> + <hkern g1="P,Rho" + g2="J,Jcircumflex" + k="75" /> + <hkern g1="P,Rho" + g2="X,Chi" + k="32" /> + <hkern g1="P,Rho" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="28" /> + <hkern g1="P,Rho" + g2="B,D,E,F,H,I,K,L,N,P,R,Lslash,Eth,Eacute,Ecircumflex,Edieresis,Egrave,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Dcroat,Eng,Hbar,IJ,Dcaron,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Kcommaaccent,Lacute,Lcaron,Lcommaaccent,Ldot,Nacute,Ncaron,N_uni0302,Ncommaaccent,Racute,Rcaron,Rcommaaccent,Beta,Gamma,Epsilon,Eta,Iota,Kappa,Nu,Pi,Rho,Iotadieresis,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6,uni1EC8,uni1ECA" + k="-5" /> + <hkern g1="P,Rho" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="15" /> + <hkern g1="P,Rho" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="19" /> + <hkern g1="P,Rho" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="3" /> + <hkern g1="P,Rho" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="11" /> + <hkern g1="P,Rho" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-19" /> + <hkern g1="P,Rho" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="4" /> + <hkern g1="P,Rho" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-14" /> + <hkern g1="P,Rho" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="3" /> + <hkern g1="P,Rho" + g2="colon,semicolon" + k="10" /> + <hkern g1="P,Rho" + g2="guillemotleft,guilsinglleft" + k="6" /> + <hkern g1="P,Rho" + g2="hyphen,endash,emdash,uni00AD" + k="9" /> + <hkern g1="P,Rho" + g2="parenright,bracketright,braceright" + k="15" /> + <hkern g1="P,Rho" + g2="quoteright,quotedblright" + k="-9" /> + <hkern g1="P,Rho" + g2="comma,period,ellipsis" + k="83" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="13" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-10" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="8" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="7" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="X,Chi" + k="-3" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="21" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="17" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="17" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-6" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-6" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="11" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-7" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="5" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-6" /> + <hkern g1="R,Racute,Rcaron,Rcommaaccent" + g2="quoteright,quotedblright" + k="-4" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="6" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="J,Jcircumflex" + k="-5" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="7" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="X,Chi" + k="-4" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="-10" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-3" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-7" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="23" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="x" + k="7" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="quoteleft,quotedblleft" + k="8" /> + <hkern g1="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + g2="quoteright,quotedblright" + k="29" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-25" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="61" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="J,Jcircumflex" + k="48" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="16" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-35" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="X,Chi" + k="-28" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-34" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="-5" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="80" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="78" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="53" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="73" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="57" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="41" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="x" + k="42" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="z,zcaron,zacute,zdotaccent" + k="49" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="69" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="colon,semicolon" + k="23" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="guilsinglright,guillemotright" + k="43" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="guillemotleft,guilsinglleft" + k="48" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="hyphen,endash,emdash,uni00AD" + k="67" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="parenright,bracketright,braceright" + k="-25" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="quotedbl,quotesingle" + k="-11" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="quoteleft,quotedblleft" + k="6" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="quoteright,quotedblright" + k="-16" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="comma,period,ellipsis" + k="70" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="16" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="4" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-15" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-7" /> + <hkern g1="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + g2="x" + k="5" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-21" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="52" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="J,Jcircumflex" + k="35" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="14" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-3" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="M,M_uni0302,Mu" + k="7" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="3" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="51" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="51" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="21" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="38" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="25" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="3" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="x" + k="26" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="z,zcaron,zacute,zdotaccent" + k="25" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="34" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="colon,semicolon" + k="23" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="guilsinglright,guillemotright" + k="13" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="guillemotleft,guilsinglleft" + k="19" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="hyphen,endash,emdash,uni00AD" + k="35" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="parenright,bracketright,braceright" + k="-19" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="quotedbl,quotesingle" + k="-8" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="quoteleft,quotedblleft" + k="-4" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="quoteright,quotedblright" + k="-9" /> + <hkern g1="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + g2="comma,period,ellipsis" + k="64" /> + <hkern g1="X,Chi" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-14" /> + <hkern g1="X,Chi" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="16" /> + <hkern g1="X,Chi" + g2="J,Jcircumflex" + k="-6" /> + <hkern g1="X,Chi" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="33" /> + <hkern g1="X,Chi" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-19" /> + <hkern g1="X,Chi" + g2="X,Chi" + k="-18" /> + <hkern g1="X,Chi" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-23" /> + <hkern g1="X,Chi" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-5" /> + <hkern g1="X,Chi" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="25" /> + <hkern g1="X,Chi" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="25" /> + <hkern g1="X,Chi" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="22" /> + <hkern g1="X,Chi" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-3" /> + <hkern g1="X,Chi" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="16" /> + <hkern g1="X,Chi" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="33" /> + <hkern g1="X,Chi" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="6" /> + <hkern g1="X,Chi" + g2="guilsinglright,guillemotright" + k="-5" /> + <hkern g1="X,Chi" + g2="guillemotleft,guilsinglleft" + k="10" /> + <hkern g1="X,Chi" + g2="hyphen,endash,emdash,uni00AD" + k="23" /> + <hkern g1="X,Chi" + g2="parenright,bracketright,braceright" + k="-17" /> + <hkern g1="X,Chi" + g2="quotedbl,quotesingle" + k="-7" /> + <hkern g1="X,Chi" + g2="comma,period,ellipsis" + k="-4" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="80" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="J,Jcircumflex" + k="68" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="44" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="15" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="4" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="X,Chi" + k="18" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="M,M_uni0302,Mu" + k="19" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="20" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="B,D,E,F,H,I,K,L,N,P,R,Lslash,Eth,Eacute,Ecircumflex,Edieresis,Egrave,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Dcroat,Eng,Hbar,IJ,Dcaron,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Kcommaaccent,Lacute,Lcaron,Lcommaaccent,Ldot,Nacute,Ncaron,N_uni0302,Ncommaaccent,Racute,Rcaron,Rcommaaccent,Beta,Gamma,Epsilon,Eta,Iota,Kappa,Nu,Pi,Rho,Iotadieresis,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6,uni1EC8,uni1ECA" + k="16" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="108" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="97" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="14" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="j,jcircumflex" + k="24" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="45" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="90" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="34" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="72" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="48" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="x" + k="55" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="z,zcaron,zacute,zdotaccent" + k="68" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="84" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="colon,semicolon" + k="37" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="guilsinglright,guillemotright" + k="38" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="guillemotleft,guilsinglleft" + k="51" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="hyphen,endash,emdash,uni00AD" + k="73" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="parenright,bracketright,braceright" + k="-21" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="quotedbl,quotesingle" + k="-6" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="quoteleft,quotedblleft" + k="15" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="quoteright,quotedblright" + k="-7" /> + <hkern g1="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + g2="comma,period,ellipsis" + k="100" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-11" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="J,Jcircumflex" + k="-4" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="24" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-7" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="X,Chi" + k="-7" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-5" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="21" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="19" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="-4" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="11" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="6" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="guillemotleft,guilsinglleft" + k="8" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="hyphen,endash,emdash,uni00AD" + k="4" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="parenright,bracketright,braceright" + k="-6" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-4" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-4" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="z,zcaron,zacute,zdotaccent" + k="-4" /> + <hkern g1="d,l,fl,lslash,dcroat,f_f_l,f_l,dcaron,lacute,lcaron,lcommaaccent,ldot" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-4" /> + <hkern g1="d,l,fl,lslash,dcroat,f_f_l,f_l,dcaron,lacute,lcaron,lcommaaccent,ldot" + g2="quoteright,quotedblright" + k="-3" /> + <hkern g1="d,l,fl,lslash,dcroat,f_f_l,f_l,dcaron,lacute,lcaron,lcommaaccent,ldot" + g2="comma,period,ellipsis" + k="12" /> + <hkern g1="f,f_f" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="9" /> + <hkern g1="f,f_f" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-10" /> + <hkern g1="f,f_f" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-6" /> + <hkern g1="f,f_f" + g2="colon,semicolon" + k="-28" /> + <hkern g1="f,f_f" + g2="parenright,bracketright,braceright" + k="-55" /> + <hkern g1="f,f_f" + g2="quotedbl,quotesingle" + k="-52" /> + <hkern g1="f,f_f" + g2="quoteleft,quotedblleft" + k="-17" /> + <hkern g1="f,f_f" + g2="quoteright,quotedblright" + k="-53" /> + <hkern g1="f,f_f" + g2="comma,period,ellipsis" + k="28" /> + <hkern g1="j,f_f_j,f_j,ij,jcircumflex" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="4" /> + <hkern g1="j,f_f_j,f_j,ij,jcircumflex" + g2="j,jcircumflex" + k="-12" /> + <hkern g1="j,f_f_j,f_j,ij,jcircumflex" + g2="parenright,bracketright,braceright" + k="-6" /> + <hkern g1="j,f_f_j,f_j,ij,jcircumflex" + g2="quoteright,quotedblright" + k="-6" /> + <hkern g1="j,f_f_j,f_j,ij,jcircumflex" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="t,tbar,tcaron,tcommaaccent,uni021B" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="3" /> + <hkern g1="t,tbar,tcaron,tcommaaccent,uni021B" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="7" /> + <hkern g1="t,tbar,tcaron,tcommaaccent,uni021B" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="5" /> + <hkern g1="t,tbar,tcaron,tcommaaccent,uni021B" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="-9" /> + <hkern g1="t,tbar,tcaron,tcommaaccent,uni021B" + g2="quoteright,quotedblright" + k="-10" /> + <hkern g1="t,tbar,tcaron,tcommaaccent,uni021B" + g2="comma,period,ellipsis" + k="8" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="50" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="5" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="21" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="X,Chi" + k="-4" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="27" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-7" /> + <hkern g1="guilsinglright,guillemotright" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="55" /> + <hkern g1="guilsinglright,guillemotright" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="-8" /> + <hkern g1="guilsinglright,guillemotright" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="21" /> + <hkern g1="guilsinglright,guillemotright" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="44" /> + <hkern g1="guilsinglright,guillemotright" + g2="M,M_uni0302,Mu" + k="-4" /> + <hkern g1="guilsinglright,guillemotright" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="4" /> + <hkern g1="guilsinglright,guillemotright" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="-6" /> + <hkern g1="guilsinglright,guillemotright" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="-7" /> + <hkern g1="guilsinglright,guillemotright" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-17" /> + <hkern g1="guilsinglright,guillemotright" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="5" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="61" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="J,Jcircumflex" + k="12" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="-18" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="27" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="X,Chi" + k="12" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="52" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="S,Scaron,Sacute,Scedilla,Scircumflex,Scommaaccent,Scedilla.dup" + k="4" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="-21" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="-21" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-20" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="4" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-22" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="11" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="15" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-21" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="X,Chi" + k="-7" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-17" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="j,jcircumflex" + k="-27" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="5" /> + <hkern g1="i,fi,dotlessi,iacute,icircumflex,idieresis,igrave,f_f_i,f_i,i.dot,ibreve,imacron,iogonek,itilde,uni1EC9,uni1ECB" + g2="parenright,bracketright,braceright" + k="-4" /> + <hkern g1="i,fi,dotlessi,iacute,icircumflex,idieresis,igrave,f_f_i,f_i,i.dot,ibreve,imacron,iogonek,itilde,uni1EC9,uni1ECB" + g2="quoteright,quotedblright" + k="-3" /> + <hkern g1="comma,period,ellipsis" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="65" /> + <hkern g1="comma,period,ellipsis" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-12" /> + <hkern g1="comma,period,ellipsis" + g2="J,Jcircumflex" + k="-9" /> + <hkern g1="comma,period,ellipsis" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="56" /> + <hkern g1="comma,period,ellipsis" + g2="X,Chi" + k="-15" /> + <hkern g1="comma,period,ellipsis" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="79" /> + <hkern g1="comma,period,ellipsis" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-13" /> + <hkern g1="comma,period,ellipsis" + g2="quotedbl,quotesingle" + k="146" /> + <hkern g1="comma,period,ellipsis" + g2="quoteleft,quotedblleft" + k="149" /> + <hkern g1="comma,period,ellipsis" + g2="quoteright,quotedblright" + k="123" /> + <hkern g1="quotedbl,quotesingle" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="36" /> + <hkern g1="quotedbl,quotesingle" + g2="J,Jcircumflex" + k="63" /> + <hkern g1="quotedbl,quotesingle" + g2="X,Chi" + k="-5" /> + <hkern g1="quotedbl,quotesingle" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-13" /> + <hkern g1="quotedbl,quotesingle" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-44" /> + <hkern g1="quotedbl,quotesingle" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="-19" /> + <hkern g1="quotedbl,quotesingle" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-35" /> + <hkern g1="quotedbl,quotesingle" + g2="comma,period,ellipsis" + k="132" /> + <hkern g1="quoteleft,quotedblleft" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-16" /> + <hkern g1="quoteleft,quotedblleft" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="65" /> + <hkern g1="quoteleft,quotedblleft" + g2="J,Jcircumflex" + k="72" /> + <hkern g1="quoteleft,quotedblleft" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="11" /> + <hkern g1="quoteleft,quotedblleft" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-19" /> + <hkern g1="quoteleft,quotedblleft" + g2="X,Chi" + k="-11" /> + <hkern g1="quoteleft,quotedblleft" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-18" /> + <hkern g1="quoteleft,quotedblleft" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-4" /> + <hkern g1="quoteleft,quotedblleft" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="37" /> + <hkern g1="quoteleft,quotedblleft" + g2="f,fi,fl,germandbls,f_f,f_f_i,f_f_j,f_f_l,f_i,f_j,f_l" + k="-13" /> + <hkern g1="quoteleft,quotedblleft" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="45" /> + <hkern g1="quoteleft,quotedblleft" + g2="b,h,k,l,lslash,hbar,hcircumflex,kcommaaccent,lacute,lcaron,lcommaaccent,ldot" + k="3" /> + <hkern g1="quoteleft,quotedblleft" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="5" /> + <hkern g1="quoteleft,quotedblleft" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="45" /> + <hkern g1="quoteleft,quotedblleft" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="-6" /> + <hkern g1="quoteleft,quotedblleft" + g2="u,uacute,ucircumflex,udieresis,ugrave,ubreve,uhungarumlaut,umacron,uogonek,uring,utilde,uhorn,uni1EE5,uni1EE7,uni1EE9,uni1EEB,uni1EED,uni1EEF,uni1EF1" + k="8" /> + <hkern g1="quoteleft,quotedblleft" + g2="z,zcaron,zacute,zdotaccent" + k="4" /> + <hkern g1="quoteleft,quotedblleft" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="18" /> + <hkern g1="quoteleft,quotedblleft" + g2="quoteleft,quotedblleft" + k="59" /> + <hkern g1="quoteleft,quotedblleft" + g2="comma,period,ellipsis" + k="166" /> + <hkern g1="quoteright,quotedblright" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-17" /> + <hkern g1="quoteright,quotedblright" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="58" /> + <hkern g1="quoteright,quotedblright" + g2="J,Jcircumflex" + k="74" /> + <hkern g1="quoteright,quotedblright" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="20" /> + <hkern g1="quoteright,quotedblright" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="-18" /> + <hkern g1="quoteright,quotedblright" + g2="X,Chi" + k="-9" /> + <hkern g1="quoteright,quotedblright" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="-11" /> + <hkern g1="quoteright,quotedblright" + g2="M,M_uni0302,Mu" + k="3" /> + <hkern g1="quoteright,quotedblright" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="40" /> + <hkern g1="quoteright,quotedblright" + g2="g,gbreve,gcircumflex,gcommaaccent,gdotaccent,g_tildecomb" + k="38" /> + <hkern g1="quoteright,quotedblright" + g2="j,jcircumflex" + k="-9" /> + <hkern g1="quoteright,quotedblright" + g2="i,m,n,p,r,dotlessi,iacute,icircumflex,idieresis,igrave,ntilde,eng,kgreenlandic,ij,i.dot,ibreve,imacron,iogonek,itilde,m_uni0302,nacute,ncaron,n_uni0302,ncommaaccent,racute,rcaron,rcommaaccent,uni1EC9,uni1ECB" + k="13" /> + <hkern g1="quoteright,quotedblright" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="76" /> + <hkern g1="quoteright,quotedblright" + g2="t,tbar,tcaron,tcommaaccent,uni021B" + k="4" /> + <hkern g1="quoteright,quotedblright" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="3" /> + <hkern g1="quoteright,quotedblright" + g2="s,scaron,sacute,scedilla,scircumflex,scommaaccent,scedilla.dup" + k="63" /> + <hkern g1="quoteright,quotedblright" + g2="quoteright,quotedblright" + k="59" /> + <hkern g1="quoteright,quotedblright" + g2="comma,period,ellipsis" + k="167" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="78" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-7" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="J,Jcircumflex" + k="-10" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="23" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="U,Uacute,Ucircumflex,Udieresis,Ugrave,Ubreve,Uhungarumlaut,Umacron,Uogonek,Uring,Utilde,Uhorn,uni1EE4,uni1EE6,uni1EE8,uni1EEA,uni1EEC,uni1EEE,uni1EF0" + k="6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="V,W,Wacute,Wcircumflex,Wdieresis,Wgrave" + k="54" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="X,Chi" + k="-7" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="Y,Yacute,Ydieresis,Ygrave,uni0232,uni1EF4,uni1EF6,uni1EF8" + k="78" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="-7" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="a,ae,aacute,acircumflex,adieresis,agrave,aring,atilde,aringacute,abreve,amacron,aogonek,aeacute,uni1EA1,uni1EA3,uni1EA5,uni1EA7,uni1EA9,uni1EAB,uni1EAD,uni1EAF,uni1EB1,uni1EB3,uni1EB5,uni1EB7" + k="-6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="j,jcircumflex" + k="-12" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="v,w,y,yacute,ydieresis,wacute,wcircumflex,wdieresis,wgrave,ygrave,uni0233,uni1EF5,uni1EF7,uni1EF9" + k="9" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="x" + k="-6" /> + <hkern g1="quotesinglbase,quotedblbase" + g2="z,zcaron,zacute,zdotaccent" + k="-7" /> + <hkern g1="fraction,uni2215" + g2="four.denominator" + k="60" /> + <hkern g1="fraction,uni2215" + g2="seven.denominator" + k="-38" /> + <hkern g1="B,Beta" + g2="Phi" + k="4" /> + <hkern g1="B,Beta" + g2="Psi" + k="11" /> + <hkern g1="B,Beta" + g2="Upsilon,Upsilondieresis" + k="12" /> + <hkern g1="B,Beta" + g2="epsilon,epsilontonos" + k="-5" /> + <hkern g1="B,Beta" + g2="gamma,nu" + k="-11" /> + <hkern g1="B,Beta" + g2="rho" + k="6" /> + <hkern g1="uni0394" + g2="Phi" + k="28" /> + <hkern g1="uni0394" + g2="Psi" + k="51" /> + <hkern g1="uni0394" + g2="Upsilon,Upsilondieresis" + k="71" /> + <hkern g1="uni0394" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="-12" /> + <hkern g1="uni0394" + g2="uni0394" + k="-18" /> + <hkern g1="uni0394" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="19" /> + <hkern g1="uni0394" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="76" /> + <hkern g1="uni0394" + g2="X,Chi" + k="-3" /> + <hkern g1="uni0394" + g2="chi" + k="17" /> + <hkern g1="uni0394" + g2="epsilon,epsilontonos" + k="-15" /> + <hkern g1="uni0394" + g2="mu,beta,eta,kappa,etatonos" + k="-7" /> + <hkern g1="uni0394" + g2="gamma,nu" + k="9" /> + <hkern g1="uni0394" + g2="lambda" + k="-21" /> + <hkern g1="uni0394" + g2="rho" + k="-7" /> + <hkern g1="uni0394" + g2="tau" + k="11" /> + <hkern g1="uni0394" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="-5" /> + <hkern g1="uni0394" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-6" /> + <hkern g1="uni0394" + g2="pi" + k="-20" /> + <hkern g1="uni0394" + g2="zeta,xi" + k="-14" /> + <hkern g1="uni0394" + g2="guilsinglright,guillemotright" + k="8" /> + <hkern g1="uni0394" + g2="hyphen,endash,emdash,uni00AD" + k="9" /> + <hkern g1="uni0394" + g2="quotedbl,quotesingle" + k="91" /> + <hkern g1="uni0394" + g2="quoteright,quotedblright" + k="94" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="uni0394" + k="-18" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="Xi" + k="-4" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="epsilon,epsilontonos" + k="-15" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="gamma,nu" + k="-18" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="3" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="lambda" + k="-23" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="tau" + k="-11" /> + <hkern g1="E,AE,OE,Eacute,Ecircumflex,Edieresis,Egrave,Ebreve,Ecaron,Edotaccent,Emacron,Eogonek,AEacute,Epsilon,Xi,Epsilontonos,uni1EB8,uni1EBA,uni1EBC,uni1EBE,uni1EC0,uni1EC2,uni1EC4,uni1EC6" + g2="pi" + k="-14" /> + <hkern g1="Gamma" + g2="uni03A9" + k="15" /> + <hkern g1="Gamma" + g2="Phi" + k="26" /> + <hkern g1="Gamma" + g2="Psi" + k="-19" /> + <hkern g1="Gamma" + g2="Upsilon,Upsilondieresis" + k="-40" /> + <hkern g1="Gamma" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="99" /> + <hkern g1="Gamma" + g2="uni0394" + k="91" /> + <hkern g1="Gamma" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="24" /> + <hkern g1="Gamma" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-22" /> + <hkern g1="Gamma" + g2="X,Chi" + k="-15" /> + <hkern g1="Gamma" + g2="Xi" + k="-13" /> + <hkern g1="Gamma" + g2="M,M_uni0302,Mu" + k="12" /> + <hkern g1="Gamma" + g2="Sigma" + k="-17" /> + <hkern g1="Gamma" + g2="epsilon,epsilontonos" + k="80" /> + <hkern g1="Gamma" + g2="mu,beta,eta,kappa,etatonos" + k="59" /> + <hkern g1="Gamma" + g2="gamma,nu" + k="20" /> + <hkern g1="Gamma" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="55" /> + <hkern g1="Gamma" + g2="rho" + k="116" /> + <hkern g1="Gamma" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="51" /> + <hkern g1="Gamma" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="88" /> + <hkern g1="Gamma" + g2="colon,semicolon" + k="6" /> + <hkern g1="Gamma" + g2="guilsinglright,guillemotright" + k="29" /> + <hkern g1="Gamma" + g2="guillemotleft,guilsinglleft" + k="49" /> + <hkern g1="Gamma" + g2="hyphen,endash,emdash,uni00AD" + k="37" /> + <hkern g1="Gamma" + g2="comma,period,ellipsis" + k="87" /> + <hkern g1="Gamma" + g2="quotedbl,quotesingle" + k="-20" /> + <hkern g1="Gamma" + g2="quoteright,quotedblright" + k="7" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="uni03A9" + k="-9" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Phi" + k="47" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="uni0394" + k="-12" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Xi" + k="-15" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="Sigma" + k="-12" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="epsilon,epsilontonos" + k="-6" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="gamma,nu" + k="21" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="4" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="lambda" + k="-9" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="rho" + k="8" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="tau" + k="26" /> + <hkern g1="K,Kcommaaccent,Kappa" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="24" /> + <hkern g1="M,M_uni0302,Mu" + g2="Phi" + k="10" /> + <hkern g1="M,M_uni0302,Mu" + g2="Psi" + k="12" /> + <hkern g1="M,M_uni0302,Mu" + g2="Upsilon,Upsilondieresis" + k="22" /> + <hkern g1="M,M_uni0302,Mu" + g2="mu,beta,eta,kappa,etatonos" + k="-5" /> + <hkern g1="M,M_uni0302,Mu" + g2="gamma,nu" + k="-6" /> + <hkern g1="M,M_uni0302,Mu" + g2="pi" + k="-17" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="uni03A9" + k="-7" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="Phi" + k="-3" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="Upsilon,Upsilondieresis" + k="32" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="uni0394" + k="14" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="Xi" + k="8" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="Sigma" + k="20" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="chi" + k="-4" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="epsilon,epsilontonos" + k="4" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="gamma,nu" + k="-23" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="lambda" + k="14" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="rho" + k="9" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="tau" + k="-22" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="theta" + k="-20" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="-4" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="pi" + k="-15" /> + <hkern g1="D,O,Q,Oslash,Eth,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Dcroat,Dcaron,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Omicrontonos,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + g2="zeta,xi" + k="-14" /> + <hkern g1="uni03A9,Omegatonos" + g2="uni03A9" + k="-5" /> + <hkern g1="uni03A9,Omegatonos" + g2="Phi" + k="-7" /> + <hkern g1="uni03A9,Omegatonos" + g2="Psi" + k="5" /> + <hkern g1="uni03A9,Omegatonos" + g2="Upsilon,Upsilondieresis" + k="28" /> + <hkern g1="uni03A9,Omegatonos" + g2="uni0394" + k="-4" /> + <hkern g1="uni03A9,Omegatonos" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="-4" /> + <hkern g1="uni03A9,Omegatonos" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="30" /> + <hkern g1="uni03A9,Omegatonos" + g2="Sigma" + k="-3" /> + <hkern g1="uni03A9,Omegatonos" + g2="chi" + k="-6" /> + <hkern g1="uni03A9,Omegatonos" + g2="mu,beta,eta,kappa,etatonos" + k="-5" /> + <hkern g1="uni03A9,Omegatonos" + g2="gamma,nu" + k="-20" /> + <hkern g1="uni03A9,Omegatonos" + g2="lambda" + k="-16" /> + <hkern g1="uni03A9,Omegatonos" + g2="tau" + k="-16" /> + <hkern g1="uni03A9,Omegatonos" + g2="theta" + k="-21" /> + <hkern g1="uni03A9,Omegatonos" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-5" /> + <hkern g1="uni03A9,Omegatonos" + g2="pi" + k="-27" /> + <hkern g1="uni03A9,Omegatonos" + g2="zeta,xi" + k="-21" /> + <hkern g1="uni03A9,Omegatonos" + g2="guilsinglright,guillemotright" + k="13" /> + <hkern g1="uni03A9,Omegatonos" + g2="comma,period,ellipsis" + k="4" /> + <hkern g1="uni03A9,Omegatonos" + g2="quotedbl,quotesingle" + k="42" /> + <hkern g1="uni03A9,Omegatonos" + g2="quoteright,quotedblright" + k="31" /> + <hkern g1="P,Rho" + g2="Psi" + k="-16" /> + <hkern g1="P,Rho" + g2="uni0394" + k="51" /> + <hkern g1="P,Rho" + g2="epsilon,epsilontonos" + k="22" /> + <hkern g1="P,Rho" + g2="mu,beta,eta,kappa,etatonos" + k="3" /> + <hkern g1="P,Rho" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="3" /> + <hkern g1="P,Rho" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="6" /> + <hkern g1="Phi" + g2="uni03A9" + k="-8" /> + <hkern g1="Phi" + g2="Upsilon,Upsilondieresis" + k="39" /> + <hkern g1="Phi" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="24" /> + <hkern g1="Phi" + g2="uni0394" + k="16" /> + <hkern g1="Phi" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="37" /> + <hkern g1="Phi" + g2="X,Chi" + k="42" /> + <hkern g1="Phi" + g2="Xi" + k="8" /> + <hkern g1="Phi" + g2="Sigma" + k="31" /> + <hkern g1="Phi" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="17" /> + <hkern g1="Phi" + g2="lambda" + k="19" /> + <hkern g1="Phi" + g2="rho" + k="20" /> + <hkern g1="Phi" + g2="tau" + k="-12" /> + <hkern g1="Phi" + g2="theta" + k="-19" /> + <hkern g1="Phi" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-4" /> + <hkern g1="Phi" + g2="zeta,xi" + k="-16" /> + <hkern g1="Phi" + g2="guilsinglright,guillemotright" + k="17" /> + <hkern g1="Phi" + g2="comma,period,ellipsis" + k="18" /> + <hkern g1="Phi" + g2="quotedbl,quotesingle" + k="30" /> + <hkern g1="Phi" + g2="quoteright,quotedblright" + k="20" /> + <hkern g1="Psi" + g2="uni03A9" + k="-8" /> + <hkern g1="Psi" + g2="Phi" + k="-3" /> + <hkern g1="Psi" + g2="Upsilon,Upsilondieresis" + k="-21" /> + <hkern g1="Psi" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="61" /> + <hkern g1="Psi" + g2="uni0394" + k="48" /> + <hkern g1="Psi" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="-3" /> + <hkern g1="Psi" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-7" /> + <hkern g1="Psi" + g2="X,Chi" + k="12" /> + <hkern g1="Psi" + g2="M,M_uni0302,Mu" + k="20" /> + <hkern g1="Psi" + g2="Sigma" + k="4" /> + <hkern g1="Psi" + g2="Z,Zcaron,Zacute,Zdotaccent,Zeta" + k="11" /> + <hkern g1="Psi" + g2="epsilon,epsilontonos" + k="15" /> + <hkern g1="Psi" + g2="rho" + k="30" /> + <hkern g1="Psi" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="17" /> + <hkern g1="Psi" + g2="guillemotleft,guilsinglleft" + k="7" /> + <hkern g1="Psi" + g2="hyphen,endash,emdash,uni00AD" + k="-7" /> + <hkern g1="Psi" + g2="comma,period,ellipsis" + k="64" /> + <hkern g1="Psi" + g2="quotedbl,quotesingle" + k="-17" /> + <hkern g1="Sigma" + g2="uni0394" + k="-4" /> + <hkern g1="Sigma" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="34" /> + <hkern g1="Sigma" + g2="chi" + k="4" /> + <hkern g1="Sigma" + g2="gamma,nu" + k="16" /> + <hkern g1="Sigma" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="6" /> + <hkern g1="Sigma" + g2="lambda" + k="-8" /> + <hkern g1="Sigma" + g2="rho" + k="8" /> + <hkern g1="Sigma" + g2="tau" + k="14" /> + <hkern g1="Sigma" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="8" /> + <hkern g1="Sigma" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="14" /> + <hkern g1="Sigma" + g2="pi" + k="-3" /> + <hkern g1="Sigma" + g2="guilsinglright,guillemotright" + k="6" /> + <hkern g1="Sigma" + g2="guillemotleft,guilsinglleft" + k="22" /> + <hkern g1="Sigma" + g2="hyphen,endash,emdash,uni00AD" + k="9" /> + <hkern g1="Sigma" + g2="quotedbl,quotesingle" + k="22" /> + <hkern g1="Sigma" + g2="quoteright,quotedblright" + k="41" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="uni03A9" + k="17" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="Phi" + k="24" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="Psi" + k="-16" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="Upsilon,Upsilondieresis" + k="-37" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="uni0394" + k="71" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="Sigma" + k="-14" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="epsilon,epsilontonos" + k="69" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="mu,beta,eta,kappa,etatonos" + k="42" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="39" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="lambda" + k="3" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="rho" + k="94" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="46" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="zeta,xi" + k="20" /> + <hkern g1="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + g2="omega,omegatonos" + k="63" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Phi" + k="8" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Psi" + k="-28" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Upsilon,Upsilondieresis" + k="-43" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="A,AE,Aacute,Acircumflex,Adieresis,Agrave,Aring,Atilde,Aringacute,Abreve,Amacron,Aogonek,AEacute,Alpha,Lambda,uni1EA0,uni1EA2,uni1EA4,uni1EA6,uni1EA8,uni1EAA,uni1EAC,uni1EAE,uni1EB0,uni1EB2,uni1EB4,uni1EB6" + k="73" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="uni0394" + k="62" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="C,G,O,Q,Oslash,OE,Ccedilla,Oacute,Ocircumflex,Odieresis,Ograve,Otilde,Cacute,Ccaron,Ccircumflex,Cdotaccent,Gbreve,Gcircumflex,Gcommaaccent,Gdotaccent,G_tildecomb,Obreve,Ohungarumlaut,Omacron,Oslashacute,Theta,Omicron,Ohorn,uni1ECC,uni1ECE,uni1ED0,uni1ED2,uni1ED4,uni1ED6,uni1ED8,uni1EDA,uni1EDC,uni1EDE,uni1EE0,uni1EE2" + k="4" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="T,Tbar,Tcaron,Tcommaaccent,Tau,uni021A" + k="-36" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="X,Chi" + k="-6" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Xi" + k="-20" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="M,M_uni0302,Mu" + k="12" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="Sigma" + k="-23" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="epsilon,epsilontonos" + k="49" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="mu,beta,eta,kappa,etatonos" + k="27" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="gamma,nu" + k="-12" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="27" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="lambda" + k="-3" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="rho" + k="67" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="20" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="61" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="pi" + k="-14" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="colon,semicolon" + k="6" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="guilsinglright,guillemotright" + k="13" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="guillemotleft,guilsinglleft" + k="33" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="hyphen,endash,emdash,uni00AD" + k="29" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="comma,period,ellipsis" + k="55" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="quotedbl,quotesingle" + k="-25" /> + <hkern g1="Upsilon,Upsilontonos,Upsilondieresis" + g2="quoteright,quotedblright" + k="-9" /> + <hkern g1="X,Chi" + g2="Phi" + k="41" /> + <hkern g1="X,Chi" + g2="Psi" + k="-3" /> + <hkern g1="X,Chi" + g2="Upsilon,Upsilondieresis" + k="-12" /> + <hkern g1="X,Chi" + g2="uni0394" + k="-10" /> + <hkern g1="X,Chi" + g2="Xi" + k="-16" /> + <hkern g1="X,Chi" + g2="Sigma" + k="-4" /> + <hkern g1="X,Chi" + g2="mu,beta,eta,kappa,etatonos" + k="3" /> + <hkern g1="X,Chi" + g2="gamma,nu" + k="16" /> + <hkern g1="X,Chi" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="15" /> + <hkern g1="X,Chi" + g2="lambda" + k="-12" /> + <hkern g1="X,Chi" + g2="rho" + k="12" /> + <hkern g1="X,Chi" + g2="tau" + k="25" /> + <hkern g1="X,Chi" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="19" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="uni03A9" + k="-7" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="Upsilon,Upsilondieresis" + k="-20" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="uni0394" + k="-4" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="Xi" + k="-10" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="Sigma" + k="-3" /> + <hkern g1="Z,Zcaron,Zacute,Zdotaccent,Zeta" + g2="lambda" + k="-10" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="gamma,nu" + k="-10" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="4" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="rho" + k="3" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="pi" + k="-14" /> + <hkern g1="H,I,N,Iacute,Icircumflex,Idieresis,Igrave,Ntilde,Eng,Hbar,Hcircumflex,Ibreve,Idotaccent,Imacron,Iogonek,Itilde,Nacute,Ncaron,N_uni0302,Ncommaaccent,Eta,Iota,Nu,Pi,Etatonos,Iotatonos,Iotadieresis,uni1EC8,uni1ECA" + g2="zeta,xi" + k="-4" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="chi" + k="8" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="epsilon,epsilontonos" + k="-5" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="mu,beta,eta,kappa,etatonos" + k="-4" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="lambda" + k="-7" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="rho" + k="6" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="theta" + k="-6" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="pi" + k="-12" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="zeta,xi" + k="-4" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="guilsinglright,guillemotright" + k="9" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="quotedbl,quotesingle" + k="30" /> + <hkern g1="mu,alpha,iota,alphatonos,iotatonos,iotadieresis,iotadieresistonos" + g2="quoteright,quotedblright" + k="32" /> + <hkern g1="beta" + g2="epsilon,epsilontonos" + k="-13" /> + <hkern g1="beta" + g2="mu,beta,eta,kappa,etatonos" + k="-5" /> + <hkern g1="beta" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="-3" /> + <hkern g1="beta" + g2="lambda" + k="-14" /> + <hkern g1="beta" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="-8" /> + <hkern g1="beta" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-9" /> + <hkern g1="beta" + g2="zeta,xi" + k="-14" /> + <hkern g1="beta" + g2="guilsinglright,guillemotright" + k="17" /> + <hkern g1="beta" + g2="hyphen,endash,emdash,uni00AD" + k="-7" /> + <hkern g1="beta" + g2="comma,period,ellipsis" + k="3" /> + <hkern g1="beta" + g2="quotedbl,quotesingle" + k="25" /> + <hkern g1="beta" + g2="quoteright,quotedblright" + k="42" /> + <hkern g1="chi" + g2="chi" + k="-23" /> + <hkern g1="chi" + g2="mu,beta,eta,kappa,etatonos" + k="-3" /> + <hkern g1="chi" + g2="gamma,nu" + k="-24" /> + <hkern g1="chi" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="4" /> + <hkern g1="chi" + g2="lambda" + k="27" /> + <hkern g1="chi" + g2="rho" + k="11" /> + <hkern g1="chi" + g2="tau" + k="-36" /> + <hkern g1="chi" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="13" /> + <hkern g1="chi" + g2="pi" + k="-34" /> + <hkern g1="chi" + g2="colon,semicolon" + k="-9" /> + <hkern g1="chi" + g2="guilsinglright,guillemotright" + k="-11" /> + <hkern g1="chi" + g2="hyphen,endash,emdash,uni00AD" + k="4" /> + <hkern g1="chi" + g2="comma,period,ellipsis" + k="10" /> + <hkern g1="chi" + g2="quotedbl,quotesingle" + k="-19" /> + <hkern g1="chi" + g2="quoteright,quotedblright" + k="-14" /> + <hkern g1="epsilon,epsilontonos" + g2="epsilon,epsilontonos" + k="-13" /> + <hkern g1="epsilon,epsilontonos" + g2="mu,beta,eta,kappa,etatonos" + k="-6" /> + <hkern g1="epsilon,epsilontonos" + g2="gamma,nu" + k="-17" /> + <hkern g1="epsilon,epsilontonos" + g2="lambda" + k="-15" /> + <hkern g1="epsilon,epsilontonos" + g2="tau" + k="-12" /> + <hkern g1="epsilon,epsilontonos" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="6" /> + <hkern g1="epsilon,epsilontonos" + g2="pi" + k="-21" /> + <hkern g1="epsilon,epsilontonos" + g2="quotedbl,quotesingle" + k="17" /> + <hkern g1="epsilon,epsilontonos" + g2="quoteright,quotedblright" + k="18" /> + <hkern g1="eta,etatonos" + g2="epsilon,epsilontonos" + k="3" /> + <hkern g1="eta,etatonos" + g2="gamma,nu" + k="12" /> + <hkern g1="eta,etatonos" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="5" /> + <hkern g1="eta,etatonos" + g2="lambda" + k="5" /> + <hkern g1="eta,etatonos" + g2="rho" + k="4" /> + <hkern g1="eta,etatonos" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="5" /> + <hkern g1="eta,etatonos" + g2="colon,semicolon" + k="6" /> + <hkern g1="eta,etatonos" + g2="guilsinglright,guillemotright" + k="22" /> + <hkern g1="eta,etatonos" + g2="comma,period,ellipsis" + k="17" /> + <hkern g1="eta,etatonos" + g2="quotedbl,quotesingle" + k="60" /> + <hkern g1="eta,etatonos" + g2="quoteright,quotedblright" + k="51" /> + <hkern g1="gamma,nu" + g2="chi" + k="-7" /> + <hkern g1="gamma,nu" + g2="gamma,nu" + k="-22" /> + <hkern g1="gamma,nu" + g2="lambda" + k="15" /> + <hkern g1="gamma,nu" + g2="rho" + k="22" /> + <hkern g1="gamma,nu" + g2="tau" + k="-27" /> + <hkern g1="gamma,nu" + g2="theta" + k="-32" /> + <hkern g1="gamma,nu" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="-10" /> + <hkern g1="gamma,nu" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-3" /> + <hkern g1="gamma,nu" + g2="pi" + k="-23" /> + <hkern g1="gamma,nu" + g2="zeta,xi" + k="-12" /> + <hkern g1="gamma,nu" + g2="guilsinglright,guillemotright" + k="-3" /> + <hkern g1="gamma,nu" + g2="comma,period,ellipsis" + k="39" /> + <hkern g1="gamma,nu" + g2="quotedbl,quotesingle" + k="6" /> + <hkern g1="gamma,nu" + g2="quoteright,quotedblright" + k="3" /> + <hkern g1="kappa" + g2="gamma,nu" + k="-17" /> + <hkern g1="kappa" + g2="rho" + k="11" /> + <hkern g1="kappa" + g2="tau" + k="-14" /> + <hkern g1="kappa" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="21" /> + <hkern g1="kappa" + g2="pi" + k="-30" /> + <hkern g1="kappa" + g2="zeta,xi" + k="18" /> + <hkern g1="kappa" + g2="colon,semicolon" + k="-9" /> + <hkern g1="kappa" + g2="guilsinglright,guillemotright" + k="-5" /> + <hkern g1="kappa" + g2="hyphen,endash,emdash,uni00AD" + k="3" /> + <hkern g1="kappa" + g2="comma,period,ellipsis" + k="-4" /> + <hkern g1="kappa" + g2="quoteright,quotedblright" + k="5" /> + <hkern g1="lambda" + g2="chi" + k="31" /> + <hkern g1="lambda" + g2="epsilon,epsilontonos" + k="-20" /> + <hkern g1="lambda" + g2="gamma,nu" + k="26" /> + <hkern g1="lambda" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="8" /> + <hkern g1="lambda" + g2="lambda" + k="-6" /> + <hkern g1="lambda" + g2="tau" + k="36" /> + <hkern g1="lambda" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="11" /> + <hkern g1="lambda" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="6" /> + <hkern g1="lambda" + g2="colon,semicolon" + k="-15" /> + <hkern g1="lambda" + g2="hyphen,endash,emdash,uni00AD" + k="8" /> + <hkern g1="lambda" + g2="comma,period,ellipsis" + k="-15" /> + <hkern g1="lambda" + g2="quotedbl,quotesingle" + k="97" /> + <hkern g1="lambda" + g2="quoteright,quotedblright" + k="86" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="chi" + k="29" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="epsilon,epsilontonos" + k="-3" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="gamma,nu" + k="8" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="3" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="lambda" + k="8" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="rho" + k="10" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="tau" + k="4" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="zeta,xi" + k="-9" /> + <hkern g1="b,o,p,oslash,oacute,ocircumflex,odieresis,ograve,otilde,obreve,ohungarumlaut,omacron,oslashacute,delta,omicron,rho,phi,omicrontonos,ohorn,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + g2="omega,omegatonos" + k="-6" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="gamma,nu" + k="-6" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="rho" + k="5" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="-3" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="-5" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="colon,semicolon" + k="13" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="guilsinglright,guillemotright" + k="27" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="comma,period,ellipsis" + k="18" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="quotedbl,quotesingle" + k="41" /> + <hkern g1="upsilon,psi,omega,upsilontonos,upsilondieresis,omegatonos,upsilondieresistonos" + g2="quoteright,quotedblright" + k="46" /> + <hkern g1="pi" + g2="gamma,nu" + k="-21" /> + <hkern g1="pi" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="8" /> + <hkern g1="pi" + g2="lambda" + k="16" /> + <hkern g1="pi" + g2="rho" + k="16" /> + <hkern g1="pi" + g2="tau" + k="-29" /> + <hkern g1="pi" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="6" /> + <hkern g1="pi" + g2="pi" + k="-18" /> + <hkern g1="pi" + g2="guilsinglright,guillemotright" + k="-6" /> + <hkern g1="pi" + g2="hyphen,endash,emdash,uni00AD" + k="13" /> + <hkern g1="pi" + g2="comma,period,ellipsis" + k="31" /> + <hkern g1="sigma" + g2="chi" + k="-11" /> + <hkern g1="sigma" + g2="mu,beta,eta,kappa,etatonos" + k="-5" /> + <hkern g1="sigma" + g2="gamma,nu" + k="-34" /> + <hkern g1="sigma" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="-5" /> + <hkern g1="sigma" + g2="lambda" + k="14" /> + <hkern g1="sigma" + g2="rho" + k="24" /> + <hkern g1="sigma" + g2="tau" + k="-39" /> + <hkern g1="sigma" + g2="theta" + k="-22" /> + <hkern g1="sigma" + g2="pi" + k="-33" /> + <hkern g1="sigma" + g2="zeta,xi" + k="-9" /> + <hkern g1="sigma" + g2="guilsinglright,guillemotright" + k="-11" /> + <hkern g1="sigma" + g2="comma,period,ellipsis" + k="27" /> + <hkern g1="sigma" + g2="quotedbl,quotesingle" + k="-4" /> + <hkern g1="sigma" + g2="quoteright,quotedblright" + k="-9" /> + <hkern g1="tau" + g2="chi" + k="-11" /> + <hkern g1="tau" + g2="gamma,nu" + k="-29" /> + <hkern g1="tau" + g2="lambda" + k="23" /> + <hkern g1="tau" + g2="rho" + k="28" /> + <hkern g1="tau" + g2="tau" + k="-27" /> + <hkern g1="tau" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="11" /> + <hkern g1="tau" + g2="guilsinglright,guillemotright" + k="-7" /> + <hkern g1="tau" + g2="comma,period,ellipsis" + k="25" /> + <hkern g1="tau" + g2="quotedbl,quotesingle" + k="-10" /> + <hkern g1="theta" + g2="lambda" + k="8" /> + <hkern g1="theta" + g2="zeta,xi" + k="-12" /> + <hkern g1="theta" + g2="guilsinglright,guillemotright" + k="13" /> + <hkern g1="theta" + g2="comma,period,ellipsis" + k="23" /> + <hkern g1="theta" + g2="quotedbl,quotesingle" + k="22" /> + <hkern g1="theta" + g2="quoteright,quotedblright" + k="19" /> + <hkern g1="xi" + g2="epsilon,epsilontonos" + k="-10" /> + <hkern g1="xi" + g2="mu,beta,eta,kappa,etatonos" + k="-14" /> + <hkern g1="xi" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="-6" /> + <hkern g1="xi" + g2="lambda" + k="-37" /> + <hkern g1="xi" + g2="pi" + k="-22" /> + <hkern g1="xi" + g2="colon,semicolon" + k="-21" /> + <hkern g1="xi" + g2="guilsinglright,guillemotright" + k="-11" /> + <hkern g1="xi" + g2="hyphen,endash,emdash,uni00AD" + k="4" /> + <hkern g1="xi" + g2="comma,period,ellipsis" + k="-37" /> + <hkern g1="xi" + g2="quotedbl,quotesingle" + k="-4" /> + <hkern g1="xi" + g2="quoteright,quotedblright" + k="23" /> + <hkern g1="zeta" + g2="chi" + k="-18" /> + <hkern g1="zeta" + g2="epsilon,epsilontonos" + k="-8" /> + <hkern g1="zeta" + g2="mu,beta,eta,kappa,etatonos" + k="-16" /> + <hkern g1="zeta" + g2="gamma,nu" + k="-3" /> + <hkern g1="zeta" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="-9" /> + <hkern g1="zeta" + g2="lambda" + k="-36" /> + <hkern g1="zeta" + g2="rho" + k="-17" /> + <hkern g1="zeta" + g2="tau" + k="14" /> + <hkern g1="zeta" + g2="c,d,e,o,q,oslash,oe,ccedilla,eacute,ecircumflex,edieresis,egrave,oacute,ocircumflex,odieresis,ograve,otilde,dcroat,cacute,ccaron,ccircumflex,cdotaccent,dcaron,ebreve,ecaron,edotaccent,emacron,eogonek,obreve,ohungarumlaut,omacron,oslashacute,alpha,delta,omicron,sigma,phi,uni03C2,alphatonos,omicrontonos,ohorn,uni1EB9,uni1EBB,uni1EBD,uni1EBF,uni1EC1,uni1EC3,uni1EC5,uni1EC7,uni1ECD,uni1ECF,uni1ED1,uni1ED3,uni1ED5,uni1ED7,uni1ED9,uni1EDB,uni1EDD,uni1EDF,uni1EE1,uni1EE3" + k="11" /> + <hkern g1="zeta" + g2="omega,omegatonos" + k="6" /> + <hkern g1="zeta" + g2="colon,semicolon" + k="-29" /> + <hkern g1="zeta" + g2="guilsinglright,guillemotright" + k="-7" /> + <hkern g1="zeta" + g2="hyphen,endash,emdash,uni00AD" + k="8" /> + <hkern g1="zeta" + g2="comma,period,ellipsis" + k="-40" /> + <hkern g1="zeta" + g2="quotedbl,quotesingle" + k="-19" /> + <hkern g1="zeta" + g2="quoteright,quotedblright" + k="13" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni03A9" + k="-9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Phi" + k="21" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Psi" + k="19" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Upsilon,Upsilondieresis" + k="51" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0394" + k="-9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Xi" + k="-10" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Sigma" + k="-12" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="chi" + k="6" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="epsilon,epsilontonos" + k="9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="mu,beta,eta,kappa,etatonos" + k="13" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="gamma,nu" + k="-17" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="19" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="lambda" + k="-6" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="rho" + k="28" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="tau" + k="-13" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="theta" + k="17" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="pi" + k="-4" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="zeta,xi" + k="19" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="omega,omegatonos" + k="17" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Epsilontonos,Etatonos,Iotatonos" + k="-12" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Omegatonos" + k="-21" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Omicrontonos" + k="-15" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="Upsilontonos" + k="30" /> + <hkern g1="guilsinglright,guillemotright" + g2="Psi" + k="14" /> + <hkern g1="guilsinglright,guillemotright" + g2="Upsilon,Upsilondieresis" + k="63" /> + <hkern g1="guilsinglright,guillemotright" + g2="Upsilontonos" + k="71" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Phi" + k="5" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Psi" + k="12" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Upsilon,Upsilondieresis" + k="75" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0394" + k="3" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Xi" + k="18" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Sigma" + k="36" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="chi" + k="30" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="mu,beta,eta,kappa,etatonos" + k="7" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="gamma,nu" + k="11" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="7" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="lambda" + k="20" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="rho" + k="8" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="tau" + k="7" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="theta" + k="-4" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="pi" + k="3" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="zeta,xi" + k="-7" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Epsilontonos,Etatonos,Iotatonos" + k="21" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Omegatonos" + k="6" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Omicrontonos" + k="10" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="Upsilontonos" + k="76" /> + <hkern g1="quotedbl,quotesingle" + g2="Phi" + k="11" /> + <hkern g1="quotedbl,quotesingle" + g2="Psi" + k="-19" /> + <hkern g1="quotedbl,quotesingle" + g2="Upsilon,Upsilondieresis" + k="-43" /> + <hkern g1="quotedbl,quotesingle" + g2="uni0394" + k="62" /> + <hkern g1="quotedbl,quotesingle" + g2="Sigma" + k="-6" /> + <hkern g1="quotedbl,quotesingle" + g2="chi" + k="-13" /> + <hkern g1="quotedbl,quotesingle" + g2="epsilon,epsilontonos" + k="18" /> + <hkern g1="quotedbl,quotesingle" + g2="mu,beta,eta,kappa,etatonos" + k="7" /> + <hkern g1="quotedbl,quotesingle" + g2="gamma,nu" + k="-37" /> + <hkern g1="quotedbl,quotesingle" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="7" /> + <hkern g1="quotedbl,quotesingle" + g2="rho" + k="56" /> + <hkern g1="quotedbl,quotesingle" + g2="tau" + k="-31" /> + <hkern g1="quotedbl,quotesingle" + g2="theta" + k="-7" /> + <hkern g1="quotedbl,quotesingle" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="7" /> + <hkern g1="quotedbl,quotesingle" + g2="pi" + k="-16" /> + <hkern g1="quotedbl,quotesingle" + g2="zeta,xi" + k="9" /> + <hkern g1="quotedbl,quotesingle" + g2="omega,omegatonos" + k="20" /> + <hkern g1="quotedbl,quotesingle" + g2="Epsilontonos,Etatonos,Iotatonos" + k="-80" /> + <hkern g1="quotedbl,quotesingle" + g2="Omegatonos" + k="-80" /> + <hkern g1="quotedbl,quotesingle" + g2="Omicrontonos" + k="-80" /> + <hkern g1="quotedbl,quotesingle" + g2="Upsilontonos" + k="-79" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni03A9" + k="26" /> + <hkern g1="quoteleft,quotedblleft" + g2="Phi" + k="25" /> + <hkern g1="quoteleft,quotedblleft" + g2="Psi" + k="-12" /> + <hkern g1="quoteleft,quotedblleft" + g2="Upsilon,Upsilondieresis" + k="-26" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0394" + k="94" /> + <hkern g1="quoteleft,quotedblleft" + g2="Xi" + k="5" /> + <hkern g1="quoteleft,quotedblleft" + g2="Sigma" + k="-7" /> + <hkern g1="quoteleft,quotedblleft" + g2="epsilon,epsilontonos" + k="35" /> + <hkern g1="quoteleft,quotedblleft" + g2="mu,beta,eta,kappa,etatonos" + k="15" /> + <hkern g1="quoteleft,quotedblleft" + g2="gamma,nu" + k="-15" /> + <hkern g1="quoteleft,quotedblleft" + g2="iota,iotatonos,iotadieresis,iotadieresistonos" + k="21" /> + <hkern g1="quoteleft,quotedblleft" + g2="lambda" + k="9" /> + <hkern g1="quoteleft,quotedblleft" + g2="rho" + k="82" /> + <hkern g1="quoteleft,quotedblleft" + g2="tau" + k="-9" /> + <hkern g1="quoteleft,quotedblleft" + g2="theta" + k="12" /> + <hkern g1="quoteleft,quotedblleft" + g2="upsilon,psi,upsilontonos,upsilondieresis,upsilondieresistonos" + k="21" /> + <hkern g1="quoteleft,quotedblleft" + g2="pi" + k="5" /> + <hkern g1="quoteleft,quotedblleft" + g2="zeta,xi" + k="27" /> + <hkern g1="quoteleft,quotedblleft" + g2="omega,omegatonos" + k="52" /> + <hkern g1="quoteleft,quotedblleft" + g2="Epsilontonos,Etatonos,Iotatonos" + k="-67" /> + <hkern g1="quoteleft,quotedblleft" + g2="Omegatonos" + k="-62" /> + <hkern g1="quoteleft,quotedblleft" + g2="Omicrontonos" + k="-69" /> + <hkern g1="quoteleft,quotedblleft" + g2="Upsilontonos" + k="-71" /> + <hkern g1="space,uni00A0" + g2="Epsilontonos,Etatonos,Iotatonos" + k="15" /> + <hkern g1="uni0411" + g2="uni0414" + k="-10" /> + <hkern g1="uni0411" + g2="uni0402" + k="34" /> + <hkern g1="uni0411" + g2="uni0424" + k="14" /> + <hkern g1="uni0411" + g2="uni0409,uni041B" + k="-17" /> + <hkern g1="uni0411" + g2="uni040B,uni0422,uni042A" + k="38" /> + <hkern g1="uni0411" + g2="uni0404,uni041E,uni0421" + k="9" /> + <hkern g1="uni0411" + g2="uni040E,uni0423" + k="20" /> + <hkern g1="uni0411" + g2="uni0416" + k="-14" /> + <hkern g1="uni0411" + g2="uni0410" + k="3" /> + <hkern g1="uni0411" + g2="uni0427" + k="32" /> + <hkern g1="uni0411" + g2="uni0405" + k="5" /> + <hkern g1="uni0411" + g2="uni042F" + k="6" /> + <hkern g1="uni0411" + g2="uni0431" + k="7" /> + <hkern g1="uni0411" + g2="uni0447" + k="4" /> + <hkern g1="uni0411" + g2="uni0437,uni044D" + k="3" /> + <hkern g1="uni0411" + g2="uni043B,uni0459" + k="-5" /> + <hkern g1="uni0411" + g2="uni044A" + k="24" /> + <hkern g1="uni0411" + g2="uni0458" + k="9" /> + <hkern g1="uni0411" + g2="uni0443,uni045E" + k="20" /> + <hkern g1="uni0411" + g2="uni044F" + k="3" /> + <hkern g1="uni0411" + g2="uni0436" + k="-8" /> + <hkern g1="uni0411" + g2="uni0445" + k="5" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0414" + k="-5" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0402" + k="-5" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0409,uni041B" + k="-8" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0408" + k="5" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni040E,uni0423" + k="-4" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0410" + k="8" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0427" + k="3" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0417,uni042D" + k="-6" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0430" + k="3" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0431" + k="6" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0447" + k="-4" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0434" + k="6" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0437,uni044D" + k="-7" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0444" + k="4" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0458" + k="10" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni0452" + k="-4" /> + <hkern g1="uni0406,uni0407,uni040F,uni0418,uni0419,uni041B,uni041D,uni041F,uni0427,uni0428,uni042B,uni042F" + g2="uni045B" + k="-8" /> + <hkern g1="uni0402" + g2="uni0414" + k="-20" /> + <hkern g1="uni0402" + g2="uni0402" + k="63" /> + <hkern g1="uni0402" + g2="uni0424" + k="17" /> + <hkern g1="uni0402" + g2="uni0409,uni041B" + k="-31" /> + <hkern g1="uni0402" + g2="uni0425" + k="-7" /> + <hkern g1="uni0402" + g2="uni040B,uni0422,uni042A" + k="69" /> + <hkern g1="uni0402" + g2="uni0408" + k="-14" /> + <hkern g1="uni0402" + g2="uni0404,uni041E,uni0421" + k="12" /> + <hkern g1="uni0402" + g2="uni040E,uni0423" + k="29" /> + <hkern g1="uni0402" + g2="uni0416" + k="-6" /> + <hkern g1="uni0402" + g2="uni0410" + k="-6" /> + <hkern g1="uni0402" + g2="uni0427" + k="43" /> + <hkern g1="uni0402" + g2="uni042F" + k="-4" /> + <hkern g1="uni0402" + g2="uni0417,uni042D" + k="-4" /> + <hkern g1="uni0402" + g2="uni0447" + k="13" /> + <hkern g1="uni0402" + g2="uni043B,uni0459" + k="-17" /> + <hkern g1="uni0402" + g2="uni044A" + k="16" /> + <hkern g1="uni0402" + g2="uni0443,uni045E" + k="20" /> + <hkern g1="uni0402" + g2="uni0436" + k="-21" /> + <hkern g1="uni0402" + g2="uni0445" + k="-11" /> + <hkern g1="uni0402" + g2="uni045B" + k="-5" /> + <hkern g1="uni0405" + g2="uni0414" + k="-12" /> + <hkern g1="uni0405" + g2="uni0402" + k="15" /> + <hkern g1="uni0405" + g2="uni0409,uni041B" + k="-15" /> + <hkern g1="uni0405" + g2="uni0425" + k="-4" /> + <hkern g1="uni0405" + g2="uni040B,uni0422,uni042A" + k="19" /> + <hkern g1="uni0405" + g2="uni0408" + k="-3" /> + <hkern g1="uni0405" + g2="uni040E,uni0423" + k="13" /> + <hkern g1="uni0405" + g2="uni0416" + k="-6" /> + <hkern g1="uni0405" + g2="uni0410" + k="3" /> + <hkern g1="uni0405" + g2="uni0427" + k="29" /> + <hkern g1="uni0405" + g2="uni0431" + k="10" /> + <hkern g1="uni0405" + g2="uni0447" + k="16" /> + <hkern g1="uni0405" + g2="uni0434" + k="3" /> + <hkern g1="uni0405" + g2="uni0437,uni044D" + k="4" /> + <hkern g1="uni0405" + g2="uni0444" + k="5" /> + <hkern g1="uni0405" + g2="uni043B,uni0459" + k="-12" /> + <hkern g1="uni0405" + g2="uni044A" + k="18" /> + <hkern g1="uni0405" + g2="uni0458" + k="5" /> + <hkern g1="uni0405" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="-4" /> + <hkern g1="uni0405" + g2="uni0443,uni045E" + k="25" /> + <hkern g1="uni0405" + g2="uni044F" + k="6" /> + <hkern g1="uni0405" + g2="uni0436" + k="-12" /> + <hkern g1="uni0405" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="-4" /> + <hkern g1="uni0424" + g2="uni0414" + k="12" /> + <hkern g1="uni0424" + g2="uni0402" + k="37" /> + <hkern g1="uni0424" + g2="uni0425" + k="25" /> + <hkern g1="uni0424" + g2="uni040B,uni0422,uni042A" + k="41" /> + <hkern g1="uni0424" + g2="uni0408" + k="24" /> + <hkern g1="uni0424" + g2="uni040E,uni0423" + k="57" /> + <hkern g1="uni0424" + g2="uni0427" + k="7" /> + <hkern g1="uni0424" + g2="uni042F" + k="3" /> + <hkern g1="uni0424" + g2="uni0417,uni042D" + k="7" /> + <hkern g1="uni0424" + g2="uni0447" + k="-9" /> + <hkern g1="uni0424" + g2="uni0434" + k="-5" /> + <hkern g1="uni0424" + g2="uni043B,uni0459" + k="7" /> + <hkern g1="uni0424" + g2="uni0458" + k="14" /> + <hkern g1="uni0424" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="-4" /> + <hkern g1="uni0424" + g2="uni044F" + k="3" /> + <hkern g1="uni0424" + g2="uni0436" + k="5" /> + <hkern g1="uni0424" + g2="uni0445" + k="12" /> + <hkern g1="uni0424" + g2="uni043C" + k="4" /> + <hkern g1="uni041C" + g2="uni0414" + k="-8" /> + <hkern g1="uni041C" + g2="uni0402" + k="6" /> + <hkern g1="uni041C" + g2="uni0424" + k="5" /> + <hkern g1="uni041C" + g2="uni0409,uni041B" + k="-9" /> + <hkern g1="uni041C" + g2="uni0425" + k="-3" /> + <hkern g1="uni041C" + g2="uni040B,uni0422,uni042A" + k="13" /> + <hkern g1="uni041C" + g2="uni040E,uni0423" + k="12" /> + <hkern g1="uni041C" + g2="uni0427" + k="14" /> + <hkern g1="uni041C" + g2="uni0417,uni042D" + k="-3" /> + <hkern g1="uni041C" + g2="uni0447" + k="9" /> + <hkern g1="uni041C" + g2="uni0444" + k="3" /> + <hkern g1="uni041C" + g2="uni044A" + k="4" /> + <hkern g1="uni041C" + g2="uni0443,uni045E" + k="3" /> + <hkern g1="uni041C" + g2="uni045B" + k="-3" /> + <hkern g1="uni0420" + g2="uni0414" + k="41" /> + <hkern g1="uni0420" + g2="uni0402" + k="4" /> + <hkern g1="uni0420" + g2="uni0409,uni041B" + k="27" /> + <hkern g1="uni0420" + g2="uni0425" + k="29" /> + <hkern g1="uni0420" + g2="uni040B,uni0422,uni042A" + k="5" /> + <hkern g1="uni0420" + g2="uni0408" + k="82" /> + <hkern g1="uni0420" + g2="uni040E,uni0423" + k="14" /> + <hkern g1="uni0420" + g2="uni0416" + k="18" /> + <hkern g1="uni0420" + g2="uni0410" + k="56" /> + <hkern g1="uni0420" + g2="uni0417,uni042D" + k="8" /> + <hkern g1="uni0420" + g2="uni041C" + k="4" /> + <hkern g1="uni0420" + g2="uni0430" + k="15" /> + <hkern g1="uni0420" + g2="uni0431" + k="-6" /> + <hkern g1="uni0420" + g2="uni0447" + k="-7" /> + <hkern g1="uni0420" + g2="uni0434" + k="13" /> + <hkern g1="uni0420" + g2="uni0437,uni044D" + k="-7" /> + <hkern g1="uni0420" + g2="uni0444" + k="11" /> + <hkern g1="uni0420" + g2="uni043B,uni0459" + k="25" /> + <hkern g1="uni0420" + g2="uni044A" + k="-15" /> + <hkern g1="uni0420" + g2="uni0458" + k="13" /> + <hkern g1="uni0420" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="11" /> + <hkern g1="uni0420" + g2="uni0443,uni045E" + k="-13" /> + <hkern g1="uni0420" + g2="uni044F" + k="4" /> + <hkern g1="uni0420" + g2="uni0436" + k="6" /> + <hkern g1="uni0420" + g2="uni0445" + k="-3" /> + <hkern g1="uni0420" + g2="uni0452" + k="-6" /> + <hkern g1="uni0420" + g2="uni045B" + k="-10" /> + <hkern g1="uni0420" + g2="uni043C" + k="14" /> + <hkern g1="uni0420" + g2="uni0455" + k="3" /> + <hkern g1="uni0420" + g2="uni0440" + k="4" /> + <hkern g1="uni0420" + g2="colon,semicolon" + k="9" /> + <hkern g1="uni0420" + g2="comma,period,ellipsis" + k="77" /> + <hkern g1="uni0404,uni0421" + g2="uni0414" + k="-29" /> + <hkern g1="uni0404,uni0421" + g2="uni0402" + k="-3" /> + <hkern g1="uni0404,uni0421" + g2="uni0424" + k="30" /> + <hkern g1="uni0404,uni0421" + g2="uni0409,uni041B" + k="-30" /> + <hkern g1="uni0404,uni0421" + g2="uni0425" + k="-13" /> + <hkern g1="uni0404,uni0421" + g2="uni0404,uni041E,uni0421" + k="24" /> + <hkern g1="uni0404,uni0421" + g2="uni040E,uni0423" + k="-17" /> + <hkern g1="uni0404,uni0421" + g2="uni0416" + k="-18" /> + <hkern g1="uni0404,uni0421" + g2="uni0410" + k="-7" /> + <hkern g1="uni0404,uni0421" + g2="uni0427" + k="14" /> + <hkern g1="uni0404,uni0421" + g2="uni042F" + k="-17" /> + <hkern g1="uni0404,uni0421" + g2="uni0417,uni042D" + k="-21" /> + <hkern g1="uni0404,uni0421" + g2="uni0430" + k="12" /> + <hkern g1="uni0404,uni0421" + g2="uni0431" + k="18" /> + <hkern g1="uni0404,uni0421" + g2="uni0447" + k="50" /> + <hkern g1="uni0404,uni0421" + g2="uni0434" + k="15" /> + <hkern g1="uni0404,uni0421" + g2="uni0437,uni044D" + k="-11" /> + <hkern g1="uni0404,uni0421" + g2="uni0444" + k="14" /> + <hkern g1="uni0404,uni0421" + g2="uni043B,uni0459" + k="-26" /> + <hkern g1="uni0404,uni0421" + g2="uni044A" + k="30" /> + <hkern g1="uni0404,uni0421" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="8" /> + <hkern g1="uni0404,uni0421" + g2="uni0443,uni045E" + k="17" /> + <hkern g1="uni0404,uni0421" + g2="uni0436" + k="-7" /> + <hkern g1="uni0404,uni0421" + g2="uni0452" + k="-14" /> + <hkern g1="uni0404,uni0421" + g2="uni045B" + k="-19" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0414" + k="40" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0402" + k="-48" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0424" + k="24" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0409,uni041B" + k="28" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0425" + k="-8" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni040B,uni0422,uni042A" + k="-34" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0408" + k="81" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0404,uni041E,uni0421" + k="16" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni040E,uni0423" + k="-29" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0416" + k="-17" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0410" + k="64" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0427" + k="-8" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0417,uni042D" + k="-17" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni041C" + k="7" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0430" + k="86" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0431" + k="19" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0447" + k="66" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0434" + k="26" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0437,uni044D" + k="37" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0444" + k="72" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni043B,uni0459" + k="76" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni044A" + k="40" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0458" + k="22" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="79" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0443,uni045E" + k="48" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni044F" + k="66" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0436" + k="57" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0445" + k="48" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0452" + k="-33" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni045B" + k="-39" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="21" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni043C" + k="77" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0455" + k="19" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="uni0440" + k="62" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="parenright,bracketright,braceright" + k="-14" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="colon,semicolon" + k="28" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="comma,period,ellipsis" + k="64" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="hyphen,endash,emdash,uni00AD" + k="56" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="guilsinglright,guillemotright" + k="35" /> + <hkern g1="uni0403,uni0413,uni0422" + g2="guillemotleft,guilsinglleft" + k="33" /> + <hkern g1="uni0490" + g2="uni0414" + k="43" /> + <hkern g1="uni0490" + g2="uni0402" + k="-45" /> + <hkern g1="uni0490" + g2="uni0424" + k="22" /> + <hkern g1="uni0490" + g2="uni0409,uni041B" + k="31" /> + <hkern g1="uni0490" + g2="uni0425" + k="-15" /> + <hkern g1="uni0490" + g2="uni040B,uni0422,uni042A" + k="-38" /> + <hkern g1="uni0490" + g2="uni0408" + k="80" /> + <hkern g1="uni0490" + g2="uni0404,uni041E,uni0421" + k="14" /> + <hkern g1="uni0490" + g2="uni040E,uni0423" + k="-31" /> + <hkern g1="uni0490" + g2="uni0416" + k="-25" /> + <hkern g1="uni0490" + g2="uni0410" + k="66" /> + <hkern g1="uni0490" + g2="uni0427" + k="-8" /> + <hkern g1="uni0490" + g2="uni042F" + k="-3" /> + <hkern g1="uni0490" + g2="uni0417,uni042D" + k="-21" /> + <hkern g1="uni0490" + g2="uni041C" + k="10" /> + <hkern g1="uni0490" + g2="uni0430" + k="86" /> + <hkern g1="uni0490" + g2="uni0431" + k="15" /> + <hkern g1="uni0490" + g2="uni0447" + k="69" /> + <hkern g1="uni0490" + g2="uni0434" + k="9" /> + <hkern g1="uni0490" + g2="uni0437,uni044D" + k="40" /> + <hkern g1="uni0490" + g2="uni0444" + k="76" /> + <hkern g1="uni0490" + g2="uni043B,uni0459" + k="82" /> + <hkern g1="uni0490" + g2="uni044A" + k="48" /> + <hkern g1="uni0490" + g2="uni0458" + k="15" /> + <hkern g1="uni0490" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="82" /> + <hkern g1="uni0490" + g2="uni0443,uni045E" + k="51" /> + <hkern g1="uni0490" + g2="uni044F" + k="68" /> + <hkern g1="uni0490" + g2="uni0436" + k="65" /> + <hkern g1="uni0490" + g2="uni0445" + k="51" /> + <hkern g1="uni0490" + g2="uni0452" + k="-42" /> + <hkern g1="uni0490" + g2="uni045B" + k="-48" /> + <hkern g1="uni0490" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="11" /> + <hkern g1="uni0490" + g2="uni043C" + k="84" /> + <hkern g1="uni0490" + g2="uni0455" + k="65" /> + <hkern g1="uni0490" + g2="uni0440" + k="73" /> + <hkern g1="uni0490" + g2="parenright,bracketright,braceright" + k="-20" /> + <hkern g1="uni0490" + g2="colon,semicolon" + k="30" /> + <hkern g1="uni0490" + g2="hyphen,endash,emdash,uni00AD" + k="60" /> + <hkern g1="uni0490" + g2="guillemotleft,guilsinglleft" + k="33" /> + <hkern g1="uni0425" + g2="uni0414" + k="-25" /> + <hkern g1="uni0425" + g2="uni0402" + k="-25" /> + <hkern g1="uni0425" + g2="uni0424" + k="40" /> + <hkern g1="uni0425" + g2="uni0409,uni041B" + k="-30" /> + <hkern g1="uni0425" + g2="uni0425" + k="-11" /> + <hkern g1="uni0425" + g2="uni040B,uni0422,uni042A" + k="-23" /> + <hkern g1="uni0425" + g2="uni0404,uni041E,uni0421" + k="33" /> + <hkern g1="uni0425" + g2="uni040E,uni0423" + k="-28" /> + <hkern g1="uni0425" + g2="uni0416" + k="-21" /> + <hkern g1="uni0425" + g2="uni0410" + k="-8" /> + <hkern g1="uni0425" + g2="uni0427" + k="5" /> + <hkern g1="uni0425" + g2="uni042F" + k="-18" /> + <hkern g1="uni0425" + g2="uni0417,uni042D" + k="-21" /> + <hkern g1="uni0425" + g2="uni0430" + k="24" /> + <hkern g1="uni0425" + g2="uni0431" + k="35" /> + <hkern g1="uni0425" + g2="uni0447" + k="34" /> + <hkern g1="uni0425" + g2="uni0434" + k="22" /> + <hkern g1="uni0425" + g2="uni0437,uni044D" + k="-10" /> + <hkern g1="uni0425" + g2="uni0444" + k="17" /> + <hkern g1="uni0425" + g2="uni043B,uni0459" + k="-19" /> + <hkern g1="uni0425" + g2="uni044A" + k="10" /> + <hkern g1="uni0425" + g2="uni0458" + k="3" /> + <hkern g1="uni0425" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="22" /> + <hkern g1="uni0425" + g2="uni0443,uni045E" + k="34" /> + <hkern g1="uni0425" + g2="uni044F" + k="-9" /> + <hkern g1="uni0425" + g2="uni0436" + k="-16" /> + <hkern g1="uni0425" + g2="uni0445" + k="-26" /> + <hkern g1="uni0425" + g2="uni0452" + k="-21" /> + <hkern g1="uni0425" + g2="uni045B" + k="-29" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0414" + k="-13" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0402" + k="91" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0424" + k="12" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0409,uni041B" + k="-18" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni040B,uni0422,uni042A" + k="97" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0404,uni041E,uni0421" + k="9" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni040E,uni0423" + k="37" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0416" + k="-7" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0427" + k="42" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0417,uni042D" + k="4" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0401,uni0403,uni0406,uni0407,uni040A,uni040C,uni040F,uni0411,uni0412,uni0413,uni0415,uni0418,uni0419,uni041A,uni041D,uni041F,uni0420,uni0426,uni0428,uni0429,uni042B,uni042C,uni042E,uni0490" + k="-3" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0431" + k="5" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0447" + k="3" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0437,uni044D" + k="5" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni043B,uni0459" + k="-4" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni044A" + k="14" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0458" + k="9" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="-4" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0443,uni045E" + k="17" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0436" + k="-10" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="uni0445" + k="6" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="parenright,bracketright,braceright" + k="28" /> + <hkern g1="uni0409,uni040A,uni042A,uni042C" + g2="quoteright,quotedblright" + k="21" /> + <hkern g1="uni0401,uni0415" + g2="uni0414" + k="-19" /> + <hkern g1="uni0401,uni0415" + g2="uni0402" + k="-9" /> + <hkern g1="uni0401,uni0415" + g2="uni0409,uni041B" + k="-24" /> + <hkern g1="uni0401,uni0415" + g2="uni0425" + k="-5" /> + <hkern g1="uni0401,uni0415" + g2="uni040B,uni0422,uni042A" + k="-9" /> + <hkern g1="uni0401,uni0415" + g2="uni0408" + k="-9" /> + <hkern g1="uni0401,uni0415" + g2="uni0427" + k="4" /> + <hkern g1="uni0401,uni0415" + g2="uni042F" + k="-6" /> + <hkern g1="uni0401,uni0415" + g2="uni0417,uni042D" + k="-11" /> + <hkern g1="uni0401,uni0415" + g2="uni0430" + k="5" /> + <hkern g1="uni0401,uni0415" + g2="uni0431" + k="8" /> + <hkern g1="uni0401,uni0415" + g2="uni0447" + k="3" /> + <hkern g1="uni0401,uni0415" + g2="uni0434" + k="6" /> + <hkern g1="uni0401,uni0415" + g2="uni0437,uni044D" + k="-4" /> + <hkern g1="uni0401,uni0415" + g2="uni0444" + k="5" /> + <hkern g1="uni0401,uni0415" + g2="uni043B,uni0459" + k="-15" /> + <hkern g1="uni0401,uni0415" + g2="uni044A" + k="3" /> + <hkern g1="uni0401,uni0415" + g2="uni0458" + k="6" /> + <hkern g1="uni0401,uni0415" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="5" /> + <hkern g1="uni0401,uni0415" + g2="uni0443,uni045E" + k="9" /> + <hkern g1="uni0401,uni0415" + g2="uni0436" + k="-3" /> + <hkern g1="uni0401,uni0415" + g2="uni0445" + k="-3" /> + <hkern g1="uni0401,uni0415" + g2="uni0452" + k="-5" /> + <hkern g1="uni0401,uni0415" + g2="uni045B" + k="-12" /> + <hkern g1="uni0408" + g2="uni0414" + k="-3" /> + <hkern g1="uni0408" + g2="uni0402" + k="-7" /> + <hkern g1="uni0408" + g2="uni040B,uni0422,uni042A" + k="-3" /> + <hkern g1="uni0408" + g2="uni0408" + k="14" /> + <hkern g1="uni0408" + g2="uni040E,uni0423" + k="-7" /> + <hkern g1="uni0408" + g2="uni0410" + k="3" /> + <hkern g1="uni0408" + g2="uni0447" + k="-5" /> + <hkern g1="uni0408" + g2="uni043B,uni0459" + k="6" /> + <hkern g1="uni0408" + g2="uni044A" + k="-8" /> + <hkern g1="uni0408" + g2="uni0458" + k="9" /> + <hkern g1="uni0408" + g2="uni0443,uni045E" + k="-5" /> + <hkern g1="uni0408" + g2="uni0436" + k="3" /> + <hkern g1="uni0408" + g2="uni0452" + k="-5" /> + <hkern g1="uni0408" + g2="uni045B" + k="-10" /> + <hkern g1="uni0408" + g2="uni043C" + k="5" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0414" + k="-24" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0402" + k="-22" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0424" + k="39" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0409,uni041B" + k="-17" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0425" + k="-21" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni040B,uni0422,uni042A" + k="-17" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0408" + k="-19" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0404,uni041E,uni0421" + k="37" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni040E,uni0423" + k="-22" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0416" + k="-19" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0410" + k="-16" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0427" + k="9" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni042F" + k="-22" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0417,uni042D" + k="-19" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0430" + k="13" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0431" + k="17" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0447" + k="33" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0434" + k="13" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0437,uni044D" + k="-11" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0444" + k="9" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni043B,uni0459" + k="-17" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni044A" + k="14" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="14" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0443,uni045E" + k="13" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni044F" + k="-9" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0436" + k="-19" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0445" + k="-22" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0452" + k="-22" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni045B" + k="-30" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni043C" + k="3" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="uni0455" + k="-4" /> + <hkern g1="uni040C,uni0416,uni041A" + g2="hyphen,endash,emdash,uni00AD" + k="12" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0402" + k="30" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0424" + k="-6" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0409,uni041B" + k="-5" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0425" + k="18" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni040B,uni0422,uni042A" + k="26" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0408" + k="4" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni040E,uni0423" + k="49" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0410" + k="15" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0427" + k="9" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni042F" + k="5" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0417,uni042D" + k="7" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0430" + k="-4" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0447" + k="-16" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0434" + k="-10" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0437,uni044D" + k="-6" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni044A" + k="-3" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0458" + k="5" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="-7" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0443,uni045E" + k="-4" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0445" + k="10" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni0452" + k="-5" /> + <hkern g1="uni041E,uni042D,uni042E" + g2="uni045B" + k="-5" /> + <hkern g1="uni040B" + g2="uni0414" + k="-17" /> + <hkern g1="uni040B" + g2="uni0402" + k="67" /> + <hkern g1="uni040B" + g2="uni0424" + k="18" /> + <hkern g1="uni040B" + g2="uni0425" + k="-3" /> + <hkern g1="uni040B" + g2="uni040B,uni0422,uni042A" + k="70" /> + <hkern g1="uni040B" + g2="uni0408" + k="-5" /> + <hkern g1="uni040B" + g2="uni0404,uni041E,uni0421" + k="11" /> + <hkern g1="uni040B" + g2="uni040E,uni0423" + k="38" /> + <hkern g1="uni040B" + g2="uni0416" + k="-3" /> + <hkern g1="uni040B" + g2="uni0410" + k="-4" /> + <hkern g1="uni040B" + g2="uni0427" + k="47" /> + <hkern g1="uni040B" + g2="uni0431" + k="5" /> + <hkern g1="uni040B" + g2="uni0447" + k="11" /> + <hkern g1="uni040B" + g2="uni0434" + k="3" /> + <hkern g1="uni040B" + g2="uni0437,uni044D" + k="3" /> + <hkern g1="uni040B" + g2="uni043B,uni0459" + k="-7" /> + <hkern g1="uni040B" + g2="uni044A" + k="19" /> + <hkern g1="uni040B" + g2="uni0458" + k="13" /> + <hkern g1="uni040B" + g2="uni0443,uni045E" + k="24" /> + <hkern g1="uni040B" + g2="uni0436" + k="-6" /> + <hkern g1="uni040E,uni0423" + g2="uni0414" + k="37" /> + <hkern g1="uni040E,uni0423" + g2="uni0402" + k="-46" /> + <hkern g1="uni040E,uni0423" + g2="uni0409,uni041B" + k="22" /> + <hkern g1="uni040E,uni0423" + g2="uni0425" + k="-23" /> + <hkern g1="uni040E,uni0423" + g2="uni040B,uni0422,uni042A" + k="-45" /> + <hkern g1="uni040E,uni0423" + g2="uni0408" + k="66" /> + <hkern g1="uni040E,uni0423" + g2="uni040E,uni0423" + k="-40" /> + <hkern g1="uni040E,uni0423" + g2="uni0416" + k="-25" /> + <hkern g1="uni040E,uni0423" + g2="uni0410" + k="60" /> + <hkern g1="uni040E,uni0423" + g2="uni0427" + k="-13" /> + <hkern g1="uni040E,uni0423" + g2="uni042F" + k="-4" /> + <hkern g1="uni040E,uni0423" + g2="uni0417,uni042D" + k="-39" /> + <hkern g1="uni040E,uni0423" + g2="uni041C" + k="4" /> + <hkern g1="uni040E,uni0423" + g2="uni0430" + k="30" /> + <hkern g1="uni040E,uni0423" + g2="uni0431" + k="3" /> + <hkern g1="uni040E,uni0423" + g2="uni0447" + k="11" /> + <hkern g1="uni040E,uni0423" + g2="uni0444" + k="23" /> + <hkern g1="uni040E,uni0423" + g2="uni043B,uni0459" + k="40" /> + <hkern g1="uni040E,uni0423" + g2="uni044A" + k="-13" /> + <hkern g1="uni040E,uni0423" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="20" /> + <hkern g1="uni040E,uni0423" + g2="uni0443,uni045E" + k="-8" /> + <hkern g1="uni040E,uni0423" + g2="uni044F" + k="12" /> + <hkern g1="uni040E,uni0423" + g2="uni0436" + k="11" /> + <hkern g1="uni040E,uni0423" + g2="uni0445" + k="8" /> + <hkern g1="uni040E,uni0423" + g2="uni0452" + k="-47" /> + <hkern g1="uni040E,uni0423" + g2="uni045B" + k="-53" /> + <hkern g1="uni040E,uni0423" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="-10" /> + <hkern g1="uni040E,uni0423" + g2="uni043C" + k="32" /> + <hkern g1="uni040E,uni0423" + g2="uni0455" + k="14" /> + <hkern g1="uni040E,uni0423" + g2="uni0440" + k="21" /> + <hkern g1="uni040E,uni0423" + g2="parenright,bracketright,braceright" + k="-19" /> + <hkern g1="uni040E,uni0423" + g2="colon,semicolon" + k="27" /> + <hkern g1="uni040E,uni0423" + g2="comma,period,ellipsis" + k="79" /> + <hkern g1="uni040E,uni0423" + g2="hyphen,endash,emdash,uni00AD" + k="12" /> + <hkern g1="uni040E,uni0423" + g2="guillemotleft,guilsinglleft" + k="3" /> + <hkern g1="uni0412,uni0417" + g2="uni0414" + k="-8" /> + <hkern g1="uni0412,uni0417" + g2="uni0402" + k="22" /> + <hkern g1="uni0412,uni0417" + g2="uni0424" + k="20" /> + <hkern g1="uni0412,uni0417" + g2="uni0409,uni041B" + k="-9" /> + <hkern g1="uni0412,uni0417" + g2="uni0425" + k="4" /> + <hkern g1="uni0412,uni0417" + g2="uni040B,uni0422,uni042A" + k="22" /> + <hkern g1="uni0412,uni0417" + g2="uni0408" + k="5" /> + <hkern g1="uni0412,uni0417" + g2="uni0404,uni041E,uni0421" + k="16" /> + <hkern g1="uni0412,uni0417" + g2="uni040E,uni0423" + k="28" /> + <hkern g1="uni0412,uni0417" + g2="uni0416" + k="-8" /> + <hkern g1="uni0412,uni0417" + g2="uni0410" + k="4" /> + <hkern g1="uni0412,uni0417" + g2="uni0427" + k="17" /> + <hkern g1="uni0412,uni0417" + g2="uni042F" + k="3" /> + <hkern g1="uni0412,uni0417" + g2="uni0417,uni042D" + k="9" /> + <hkern g1="uni0412,uni0417" + g2="uni0431" + k="10" /> + <hkern g1="uni0412,uni0417" + g2="uni0447" + k="9" /> + <hkern g1="uni0412,uni0417" + g2="uni0434" + k="4" /> + <hkern g1="uni0412,uni0417" + g2="uni0437,uni044D" + k="3" /> + <hkern g1="uni0412,uni0417" + g2="uni0444" + k="4" /> + <hkern g1="uni0412,uni0417" + g2="uni044A" + k="6" /> + <hkern g1="uni0412,uni0417" + g2="uni0458" + k="17" /> + <hkern g1="uni0412,uni0417" + g2="uni0443,uni045E" + k="7" /> + <hkern g1="uni0412,uni0417" + g2="uni044F" + k="6" /> + <hkern g1="uni0412,uni0417" + g2="uni0436" + k="-3" /> + <hkern g1="uni0412,uni0417" + g2="uni0445" + k="3" /> + <hkern g1="uni0412,uni0417" + g2="uni0452" + k="6" /> + <hkern g1="uni0412,uni0417" + g2="uni043C" + k="5" /> + <hkern g1="uni0412,uni0417" + g2="uni0455" + k="10" /> + <hkern g1="uni0412,uni0417" + g2="uni0440" + k="3" /> + <hkern g1="uni0430" + g2="uni0431" + k="-5" /> + <hkern g1="uni0430" + g2="uni0447" + k="-6" /> + <hkern g1="uni0430" + g2="uni0437,uni044D" + k="-6" /> + <hkern g1="uni0430" + g2="uni0444" + k="-4" /> + <hkern g1="uni0430" + g2="uni043B,uni0459" + k="-9" /> + <hkern g1="uni0430" + g2="uni044A" + k="-5" /> + <hkern g1="uni0430" + g2="uni0458" + k="6" /> + <hkern g1="uni0430" + g2="uni044F" + k="-3" /> + <hkern g1="uni0430" + g2="uni0452" + k="-4" /> + <hkern g1="uni0430" + g2="uni045B" + k="-5" /> + <hkern g1="uni0430" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="-5" /> + <hkern g1="uni0430" + g2="uni0440" + k="-4" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni0431" + k="-5" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni0447" + k="-4" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni0434" + k="-5" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni0437,uni044D" + k="-6" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni0444" + k="-4" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni044A" + k="-5" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni0458" + k="5" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="-5" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni0436" + k="-6" /> + <hkern g1="uni0438,uni0439,uni043B,uni043D,uni043F,uni0442,uni0446,uni0447,uni0448,uni044B,uni044F,uni045F" + g2="uni045B" + k="-7" /> + <hkern g1="uni0434" + g2="uni0430" + k="-5" /> + <hkern g1="uni0434" + g2="uni0431" + k="-3" /> + <hkern g1="uni0434" + g2="uni0447" + k="-7" /> + <hkern g1="uni0434" + g2="uni0434" + k="-3" /> + <hkern g1="uni0434" + g2="uni0444" + k="-7" /> + <hkern g1="uni0434" + g2="uni044A" + k="-5" /> + <hkern g1="uni0434" + g2="uni0458" + k="15" /> + <hkern g1="uni0434" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="-4" /> + <hkern g1="uni0434" + g2="uni0445" + k="3" /> + <hkern g1="uni0434" + g2="uni0452" + k="-3" /> + <hkern g1="uni0452" + g2="uni0434" + k="-6" /> + <hkern g1="uni0452" + g2="uni043B,uni0459" + k="-16" /> + <hkern g1="uni0452" + g2="uni044A" + k="4" /> + <hkern g1="uni0452" + g2="uni0458" + k="6" /> + <hkern g1="uni0452" + g2="uni0443,uni045E" + k="15" /> + <hkern g1="uni0452" + g2="uni044F" + k="-3" /> + <hkern g1="uni0452" + g2="guilsinglright,guillemotright" + k="3" /> + <hkern g1="uni0455" + g2="uni0447" + k="6" /> + <hkern g1="uni0455" + g2="uni044A" + k="-4" /> + <hkern g1="uni0455" + g2="uni0458" + k="7" /> + <hkern g1="uni0455" + g2="uni0443,uni045E" + k="5" /> + <hkern g1="uni0444" + g2="uni0430" + k="-6" /> + <hkern g1="uni0444" + g2="uni0447" + k="-3" /> + <hkern g1="uni0444" + g2="uni0434" + k="-6" /> + <hkern g1="uni0444" + g2="uni0444" + k="-6" /> + <hkern g1="uni0444" + g2="uni043B,uni0459" + k="-8" /> + <hkern g1="uni0444" + g2="uni044A" + k="-3" /> + <hkern g1="uni0444" + g2="uni0458" + k="10" /> + <hkern g1="uni0444" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="-5" /> + <hkern g1="uni0444" + g2="uni0443,uni045E" + k="11" /> + <hkern g1="uni0444" + g2="uni044F" + k="5" /> + <hkern g1="uni0444" + g2="uni0436" + k="-7" /> + <hkern g1="uni0444" + g2="uni0445" + k="4" /> + <hkern g1="uni0444" + g2="uni0452" + k="-3" /> + <hkern g1="uni043C" + g2="uni0447" + k="-3" /> + <hkern g1="uni043C" + g2="uni0437,uni044D" + k="-4" /> + <hkern g1="uni043C" + g2="uni043B,uni0459" + k="-11" /> + <hkern g1="uni043C" + g2="uni0458" + k="8" /> + <hkern g1="uni043C" + g2="uni0452" + k="-4" /> + <hkern g1="uni043C" + g2="uni045B" + k="-3" /> + <hkern g1="uni0441,uni0454" + g2="uni0430" + k="9" /> + <hkern g1="uni0441,uni0454" + g2="uni0431" + k="-5" /> + <hkern g1="uni0441,uni0454" + g2="uni0447" + k="-11" /> + <hkern g1="uni0441,uni0454" + g2="uni0434" + k="6" /> + <hkern g1="uni0441,uni0454" + g2="uni0437,uni044D" + k="-24" /> + <hkern g1="uni0441,uni0454" + g2="uni0444" + k="4" /> + <hkern g1="uni0441,uni0454" + g2="uni043B,uni0459" + k="-27" /> + <hkern g1="uni0441,uni0454" + g2="uni044A" + k="-20" /> + <hkern g1="uni0441,uni0454" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="7" /> + <hkern g1="uni0441,uni0454" + g2="uni0443,uni045E" + k="-12" /> + <hkern g1="uni0441,uni0454" + g2="uni044F" + k="-11" /> + <hkern g1="uni0441,uni0454" + g2="uni0436" + k="-18" /> + <hkern g1="uni0441,uni0454" + g2="uni0445" + k="-21" /> + <hkern g1="uni0441,uni0454" + g2="uni0452" + k="-7" /> + <hkern g1="uni0441,uni0454" + g2="uni045B" + k="-7" /> + <hkern g1="uni0433,uni0453" + g2="uni0430" + k="-3" /> + <hkern g1="uni0433,uni0453" + g2="uni0431" + k="-8" /> + <hkern g1="uni0433,uni0453" + g2="uni0447" + k="-10" /> + <hkern g1="uni0433,uni0453" + g2="uni0434" + k="-5" /> + <hkern g1="uni0433,uni0453" + g2="uni0437,uni044D" + k="-12" /> + <hkern g1="uni0433,uni0453" + g2="uni0444" + k="-3" /> + <hkern g1="uni0433,uni0453" + g2="uni043B,uni0459" + k="-20" /> + <hkern g1="uni0433,uni0453" + g2="uni044A" + k="-14" /> + <hkern g1="uni0433,uni0453" + g2="uni0458" + k="4" /> + <hkern g1="uni0433,uni0453" + g2="uni044F" + k="-4" /> + <hkern g1="uni0433,uni0453" + g2="uni0436" + k="-12" /> + <hkern g1="uni0433,uni0453" + g2="uni0445" + k="-12" /> + <hkern g1="uni0433,uni0453" + g2="uni045B" + k="-3" /> + <hkern g1="uni0433,uni0453" + g2="uni043A,uni043D,uni043F,uni0442,uni044E,uni0456,uni0457,uni045A,uni045C,uni0491" + k="-5" /> + <hkern g1="uni0433,uni0453" + g2="uni0455" + k="-5" /> + <hkern g1="uni0433,uni0453" + g2="parenright,bracketright,braceright" + k="16" /> + <hkern g1="uni0433,uni0453" + g2="comma,period,ellipsis" + k="7" /> + <hkern g1="uni0433,uni0453" + g2="hyphen,endash,emdash,uni00AD" + k="-6" /> + <hkern g1="uni0433,uni0453" + g2="guilsinglright,guillemotright" + k="-6" /> + <hkern g1="uni0433,uni0453" + g2="guillemotleft,guilsinglleft" + k="-9" /> + <hkern g1="uni0491" + g2="uni0430" + k="19" /> + <hkern g1="uni0491" + g2="uni0431" + k="-17" /> + <hkern g1="uni0491" + g2="uni0447" + k="-14" /> + <hkern g1="uni0491" + g2="uni0434" + k="10" /> + <hkern g1="uni0491" + g2="uni0437,uni044D" + k="-16" /> + <hkern g1="uni0491" + g2="uni0444" + k="10" /> + <hkern g1="uni0491" + g2="uni043B,uni0459" + k="29" /> + <hkern g1="uni0491" + g2="uni044A" + k="-30" /> + <hkern g1="uni0491" + g2="uni0458" + k="20" /> + <hkern g1="uni0491" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="11" /> + <hkern g1="uni0491" + g2="uni0443,uni045E" + k="-16" /> + <hkern g1="uni0491" + g2="uni0436" + k="-3" /> + <hkern g1="uni0491" + g2="uni0445" + k="-9" /> + <hkern g1="uni0491" + g2="uni0452" + k="-32" /> + <hkern g1="uni0491" + g2="uni045B" + k="-39" /> + <hkern g1="uni0491" + g2="uni043C" + k="14" /> + <hkern g1="uni0491" + g2="parenright,bracketright,braceright" + k="5" /> + <hkern g1="uni0491" + g2="hyphen,endash,emdash,uni00AD" + k="19" /> + <hkern g1="uni0491" + g2="guilsinglright,guillemotright" + k="-9" /> + <hkern g1="uni0491" + g2="guillemotleft,guilsinglleft" + k="-4" /> + <hkern g1="uni0445" + g2="uni0430" + k="17" /> + <hkern g1="uni0445" + g2="uni0431" + k="-8" /> + <hkern g1="uni0445" + g2="uni0447" + k="-11" /> + <hkern g1="uni0445" + g2="uni0434" + k="15" /> + <hkern g1="uni0445" + g2="uni0437,uni044D" + k="-24" /> + <hkern g1="uni0445" + g2="uni0444" + k="13" /> + <hkern g1="uni0445" + g2="uni043B,uni0459" + k="-18" /> + <hkern g1="uni0445" + g2="uni044A" + k="-32" /> + <hkern g1="uni0445" + g2="uni0458" + k="10" /> + <hkern g1="uni0445" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="17" /> + <hkern g1="uni0445" + g2="uni0443,uni045E" + k="-25" /> + <hkern g1="uni0445" + g2="uni044F" + k="-9" /> + <hkern g1="uni0445" + g2="uni0436" + k="-15" /> + <hkern g1="uni0445" + g2="uni0445" + k="-25" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0430" + k="-4" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0431" + k="12" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0447" + k="12" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni043B,uni0459" + k="-14" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni044A" + k="54" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0458" + k="11" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0443,uni045E" + k="30" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0436" + k="-10" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0445" + k="-3" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0452" + k="3" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="uni0455" + k="7" /> + <hkern g1="uni044A,uni044C,uni0459,uni045A" + g2="quoteright,quotedblright" + k="38" /> + <hkern g1="uni0456" + g2="uni0447" + k="-5" /> + <hkern g1="uni0456" + g2="uni0434" + k="-5" /> + <hkern g1="uni0456" + g2="uni043B,uni0459" + k="-4" /> + <hkern g1="uni0456" + g2="uni044A" + k="-7" /> + <hkern g1="uni0456" + g2="uni0458" + k="7" /> + <hkern g1="uni0456" + g2="uni0443,uni045E" + k="-4" /> + <hkern g1="uni0456" + g2="uni0452" + k="-6" /> + <hkern g1="uni0456" + g2="uni045B" + k="-12" /> + <hkern g1="uni0435,uni0451" + g2="uni0447" + k="-8" /> + <hkern g1="uni0435,uni0451" + g2="uni0437,uni044D" + k="-5" /> + <hkern g1="uni0435,uni0451" + g2="uni043B,uni0459" + k="-3" /> + <hkern g1="uni0435,uni0451" + g2="uni044A" + k="-9" /> + <hkern g1="uni0435,uni0451" + g2="uni0458" + k="8" /> + <hkern g1="uni0435,uni0451" + g2="uni0443,uni045E" + k="5" /> + <hkern g1="uni0435,uni0451" + g2="uni0436" + k="-5" /> + <hkern g1="uni0435,uni0451" + g2="uni0452" + k="-3" /> + <hkern g1="uni0435,uni0451" + g2="uni043C" + k="3" /> + <hkern g1="uni0458" + g2="uni0447" + k="-9" /> + <hkern g1="uni0458" + g2="uni044A" + k="-7" /> + <hkern g1="uni0458" + g2="uni0452" + k="-13" /> + <hkern g1="uni0458" + g2="uni045B" + k="-18" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0430" + k="6" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0431" + k="4" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0434" + k="16" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0437,uni044D" + k="-15" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0444" + k="9" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni043B,uni0459" + k="-19" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni044A" + k="-31" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="12" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0443,uni045E" + k="-16" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni044F" + k="-10" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0436" + k="-18" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0445" + k="-24" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni0452" + k="-9" /> + <hkern g1="uni0436,uni043A,uni045C" + g2="uni045B" + k="-12" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni0444" + k="-4" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni043B,uni0459" + k="-4" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni044A" + k="3" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni0458" + k="12" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="-5" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni0443,uni045E" + k="10" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni044F" + k="4" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni0436" + k="-5" /> + <hkern g1="uni0431,uni043E,uni0440,uni044D,uni044E" + g2="uni0445" + k="9" /> + <hkern g1="uni045B" + g2="uni0431" + k="4" /> + <hkern g1="uni045B" + g2="uni0447" + k="6" /> + <hkern g1="uni045B" + g2="uni0434" + k="4" /> + <hkern g1="uni045B" + g2="uni043B,uni0459" + k="-3" /> + <hkern g1="uni045B" + g2="uni044A" + k="5" /> + <hkern g1="uni045B" + g2="uni0458" + k="15" /> + <hkern g1="uni045B" + g2="uni0443,uni045E" + k="16" /> + <hkern g1="uni0443,uni045E" + g2="uni0430" + k="14" /> + <hkern g1="uni0443,uni045E" + g2="uni0431" + k="-7" /> + <hkern g1="uni0443,uni045E" + g2="uni0447" + k="-6" /> + <hkern g1="uni0443,uni045E" + g2="uni0434" + k="8" /> + <hkern g1="uni0443,uni045E" + g2="uni0437,uni044D" + k="-10" /> + <hkern g1="uni0443,uni045E" + g2="uni0444" + k="6" /> + <hkern g1="uni0443,uni045E" + g2="uni043B,uni0459" + k="10" /> + <hkern g1="uni0443,uni045E" + g2="uni044A" + k="-21" /> + <hkern g1="uni0443,uni045E" + g2="uni0458" + k="12" /> + <hkern g1="uni0443,uni045E" + g2="uni0435,uni043E,uni0441,uni0451,uni0454" + k="8" /> + <hkern g1="uni0443,uni045E" + g2="uni0443,uni045E" + k="-11" /> + <hkern g1="uni0443,uni045E" + g2="uni044F" + k="3" /> + <hkern g1="uni0443,uni045E" + g2="uni0445" + k="-9" /> + <hkern g1="uni0443,uni045E" + g2="uni043C" + k="7" /> + <hkern g1="uni0443,uni045E" + g2="uni0455" + k="3" /> + <hkern g1="uni0443,uni045E" + g2="parenright,bracketright,braceright" + k="27" /> + <hkern g1="uni0443,uni045E" + g2="colon,semicolon" + k="9" /> + <hkern g1="uni0443,uni045E" + g2="comma,period,ellipsis" + k="34" /> + <hkern g1="uni0443,uni045E" + g2="guilsinglright,guillemotright" + k="-5" /> + <hkern g1="uni0432,uni0437" + g2="uni0431" + k="11" /> + <hkern g1="uni0432,uni0437" + g2="uni0447" + k="7" /> + <hkern g1="uni0432,uni0437" + g2="uni0434" + k="4" /> + <hkern g1="uni0432,uni0437" + g2="uni043B,uni0459" + k="-19" /> + <hkern g1="uni0432,uni0437" + g2="uni0458" + k="11" /> + <hkern g1="uni0432,uni0437" + g2="uni0443,uni045E" + k="12" /> + <hkern g1="uni0432,uni0437" + g2="uni0436" + k="-18" /> + <hkern g1="uni0432,uni0437" + g2="uni0445" + k="-6" /> + <hkern g1="uni0432,uni0437" + g2="uni043C" + k="-3" /> + <hkern g1="uni0457" + g2="uni0447" + k="-8" /> + <hkern g1="uni0457" + g2="uni0434" + k="-16" /> + <hkern g1="uni0457" + g2="uni043B,uni0459" + k="-4" /> + <hkern g1="uni0457" + g2="uni044A" + k="-10" /> + <hkern g1="uni0457" + g2="uni0458" + k="-32" /> + <hkern g1="uni0457" + g2="uni0443,uni045E" + k="-4" /> + <hkern g1="uni0457" + g2="uni0452" + k="-84" /> + <hkern g1="uni0457" + g2="uni045B" + k="-90" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0414" + k="-8" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0402" + k="-20" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0409,uni041B" + k="14" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni040B,uni0422,uni042A" + k="-22" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0408" + k="6" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni040E,uni0423" + k="-16" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0427" + k="14" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni042F" + k="15" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0447" + k="27" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0434" + k="15" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni044A" + k="14" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0458" + k="-9" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0443,uni045E" + k="12" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni044F" + k="28" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni0452" + k="-19" /> + <hkern g1="parenleft,bracketleft,braceleft" + g2="uni045B" + k="-22" /> + <hkern g1="colon,semicolon" + g2="uni0414" + k="-17" /> + <hkern g1="colon,semicolon" + g2="uni0402" + k="21" /> + <hkern g1="colon,semicolon" + g2="uni0409,uni041B" + k="-20" /> + <hkern g1="colon,semicolon" + g2="uni040B,uni0422,uni042A" + k="17" /> + <hkern g1="colon,semicolon" + g2="uni0408" + k="-4" /> + <hkern g1="colon,semicolon" + g2="uni040E,uni0423" + k="8" /> + <hkern g1="colon,semicolon" + g2="uni0427" + k="7" /> + <hkern g1="colon,semicolon" + g2="uni043B,uni0459" + k="-9" /> + <hkern g1="colon,semicolon" + g2="uni044A" + k="-20" /> + <hkern g1="colon,semicolon" + g2="uni0452" + k="12" /> + <hkern g1="colon,semicolon" + g2="uni045B" + k="3" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0414" + k="10" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0402" + k="69" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0409,uni041B" + k="13" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0425" + k="9" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni040B,uni0422,uni042A" + k="68" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0408" + k="39" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni040E,uni0423" + k="39" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0416" + k="14" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0427" + k="33" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni042F" + k="17" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni041C" + k="5" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0447" + k="-4" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0434" + k="-4" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni043B,uni0459" + k="12" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni044A" + k="19" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0458" + k="4" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0443,uni045E" + k="20" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni044F" + k="4" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0436" + k="9" /> + <hkern g1="hyphen,endash,emdash,uni00AD" + g2="uni0445" + k="20" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0414" + k="-9" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0402" + k="54" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0409,uni041B" + k="-8" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0425" + k="-4" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni040B,uni0422,uni042A" + k="43" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0408" + k="-5" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni040E,uni0423" + k="15" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0416" + k="-3" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0410" + k="-3" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0427" + k="7" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni042F" + k="-8" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0434" + k="12" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni043B,uni0459" + k="-10" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni0443,uni045E" + k="-3" /> + <hkern g1="guillemotleft,guilsinglleft" + g2="uni045B" + k="-5" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0414" + k="-5" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0402" + k="53" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0409,uni041B" + k="-3" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni040B,uni0422,uni042A" + k="52" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni040E,uni0423" + k="30" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0416" + k="-7" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0427" + k="16" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0434" + k="-5" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni044A" + k="11" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni044F" + k="-5" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0436" + k="-9" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0445" + k="-4" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni0452" + k="-3" /> + <hkern g1="guilsinglright,guillemotright" + g2="uni045B" + k="-4" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0424" + k="20" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0409,uni041B" + k="41" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni040B,uni0422,uni042A" + k="-11" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0408" + k="52" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0404,uni041E,uni0421" + k="17" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0410" + k="35" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni042F" + k="12" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0434" + k="21" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni043B,uni0459" + k="43" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0458" + k="6" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni044F" + k="18" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni0452" + k="-13" /> + <hkern g1="quoteleft,quotedblleft" + g2="uni045B" + k="-14" /> + </font> +</defs></svg> diff --git a/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.ttf b/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.ttf new file mode 100644 index 0000000..9c37583 Binary files /dev/null and b/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.ttf differ diff --git a/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.woff b/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.woff new file mode 100644 index 0000000..75990c1 Binary files /dev/null and b/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.woff differ diff --git a/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.woff2 b/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.woff2 new file mode 100644 index 0000000..94d885d Binary files /dev/null and b/site/css/font/f3b65bc5f78ed2b3748f81383222dd43.woff2 differ diff --git a/site/css/font/glyphicons-halflings-regular.eot b/site/css/font/glyphicons-halflings-regular.eot new file mode 100644 index 0000000..b93a495 Binary files /dev/null and b/site/css/font/glyphicons-halflings-regular.eot differ diff --git a/site/css/font/glyphicons-halflings-regular.svg b/site/css/font/glyphicons-halflings-regular.svg new file mode 100644 index 0000000..94fb549 --- /dev/null +++ b/site/css/font/glyphicons-halflings-regular.svg @@ -0,0 +1,288 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" > +<svg xmlns="http://www.w3.org/2000/svg"> +<metadata></metadata> +<defs> +<font id="glyphicons_halflingsregular" horiz-adv-x="1200" > +<font-face units-per-em="1200" ascent="960" descent="-240" /> +<missing-glyph horiz-adv-x="500" /> +<glyph horiz-adv-x="0" /> +<glyph horiz-adv-x="400" /> +<glyph unicode=" " /> +<glyph unicode="*" d="M600 1100q15 0 34 -1.5t30 -3.5l11 -1q10 -2 17.5 -10.5t7.5 -18.5v-224l158 158q7 7 18 8t19 -6l106 -106q7 -8 6 -19t-8 -18l-158 -158h224q10 0 18.5 -7.5t10.5 -17.5q6 -41 6 -75q0 -15 -1.5 -34t-3.5 -30l-1 -11q-2 -10 -10.5 -17.5t-18.5 -7.5h-224l158 -158 q7 -7 8 -18t-6 -19l-106 -106q-8 -7 -19 -6t-18 8l-158 158v-224q0 -10 -7.5 -18.5t-17.5 -10.5q-41 -6 -75 -6q-15 0 -34 1.5t-30 3.5l-11 1q-10 2 -17.5 10.5t-7.5 18.5v224l-158 -158q-7 -7 -18 -8t-19 6l-106 106q-7 8 -6 19t8 18l158 158h-224q-10 0 -18.5 7.5 t-10.5 17.5q-6 41 -6 75q0 15 1.5 34t3.5 30l1 11q2 10 10.5 17.5t18.5 7.5h224l-158 158q-7 7 -8 18t6 19l106 106q8 7 19 6t18 -8l158 -158v224q0 10 7.5 18.5t17.5 10.5q41 6 75 6z" /> +<glyph unicode="+" d="M450 1100h200q21 0 35.5 -14.5t14.5 -35.5v-350h350q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-350v-350q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v350h-350q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5 h350v350q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xa0;" /> +<glyph unicode="&#xa5;" d="M825 1100h250q10 0 12.5 -5t-5.5 -13l-364 -364q-6 -6 -11 -18h268q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-125v-100h275q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-125v-174q0 -11 -7.5 -18.5t-18.5 -7.5h-148q-11 0 -18.5 7.5t-7.5 18.5v174 h-275q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h125v100h-275q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h118q-5 12 -11 18l-364 364q-8 8 -5.5 13t12.5 5h250q25 0 43 -18l164 -164q8 -8 18 -8t18 8l164 164q18 18 43 18z" /> +<glyph unicode="&#x2000;" horiz-adv-x="650" /> +<glyph unicode="&#x2001;" horiz-adv-x="1300" /> +<glyph unicode="&#x2002;" horiz-adv-x="650" /> +<glyph unicode="&#x2003;" horiz-adv-x="1300" /> +<glyph unicode="&#x2004;" horiz-adv-x="433" /> +<glyph unicode="&#x2005;" horiz-adv-x="325" /> +<glyph unicode="&#x2006;" horiz-adv-x="216" /> +<glyph unicode="&#x2007;" horiz-adv-x="216" /> +<glyph unicode="&#x2008;" horiz-adv-x="162" /> +<glyph unicode="&#x2009;" horiz-adv-x="260" /> +<glyph unicode="&#x200a;" horiz-adv-x="72" /> +<glyph unicode="&#x202f;" horiz-adv-x="260" /> +<glyph unicode="&#x205f;" horiz-adv-x="325" /> +<glyph unicode="&#x20ac;" d="M744 1198q242 0 354 -189q60 -104 66 -209h-181q0 45 -17.5 82.5t-43.5 61.5t-58 40.5t-60.5 24t-51.5 7.5q-19 0 -40.5 -5.5t-49.5 -20.5t-53 -38t-49 -62.5t-39 -89.5h379l-100 -100h-300q-6 -50 -6 -100h406l-100 -100h-300q9 -74 33 -132t52.5 -91t61.5 -54.5t59 -29 t47 -7.5q22 0 50.5 7.5t60.5 24.5t58 41t43.5 61t17.5 80h174q-30 -171 -128 -278q-107 -117 -274 -117q-206 0 -324 158q-36 48 -69 133t-45 204h-217l100 100h112q1 47 6 100h-218l100 100h134q20 87 51 153.5t62 103.5q117 141 297 141z" /> +<glyph unicode="&#x20bd;" d="M428 1200h350q67 0 120 -13t86 -31t57 -49.5t35 -56.5t17 -64.5t6.5 -60.5t0.5 -57v-16.5v-16.5q0 -36 -0.5 -57t-6.5 -61t-17 -65t-35 -57t-57 -50.5t-86 -31.5t-120 -13h-178l-2 -100h288q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-138v-175q0 -11 -5.5 -18 t-15.5 -7h-149q-10 0 -17.5 7.5t-7.5 17.5v175h-267q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h117v100h-267q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h117v475q0 10 7.5 17.5t17.5 7.5zM600 1000v-300h203q64 0 86.5 33t22.5 119q0 84 -22.5 116t-86.5 32h-203z" /> +<glyph unicode="&#x2212;" d="M250 700h800q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#x231b;" d="M1000 1200v-150q0 -21 -14.5 -35.5t-35.5 -14.5h-50v-100q0 -91 -49.5 -165.5t-130.5 -109.5q81 -35 130.5 -109.5t49.5 -165.5v-150h50q21 0 35.5 -14.5t14.5 -35.5v-150h-800v150q0 21 14.5 35.5t35.5 14.5h50v150q0 91 49.5 165.5t130.5 109.5q-81 35 -130.5 109.5 t-49.5 165.5v100h-50q-21 0 -35.5 14.5t-14.5 35.5v150h800zM400 1000v-100q0 -60 32.5 -109.5t87.5 -73.5q28 -12 44 -37t16 -55t-16 -55t-44 -37q-55 -24 -87.5 -73.5t-32.5 -109.5v-150h400v150q0 60 -32.5 109.5t-87.5 73.5q-28 12 -44 37t-16 55t16 55t44 37 q55 24 87.5 73.5t32.5 109.5v100h-400z" /> +<glyph unicode="&#x25fc;" horiz-adv-x="500" d="M0 0z" /> +<glyph unicode="&#x2601;" d="M503 1089q110 0 200.5 -59.5t134.5 -156.5q44 14 90 14q120 0 205 -86.5t85 -206.5q0 -121 -85 -207.5t-205 -86.5h-750q-79 0 -135.5 57t-56.5 137q0 69 42.5 122.5t108.5 67.5q-2 12 -2 37q0 153 108 260.5t260 107.5z" /> +<glyph unicode="&#x26fa;" d="M774 1193.5q16 -9.5 20.5 -27t-5.5 -33.5l-136 -187l467 -746h30q20 0 35 -18.5t15 -39.5v-42h-1200v42q0 21 15 39.5t35 18.5h30l468 746l-135 183q-10 16 -5.5 34t20.5 28t34 5.5t28 -20.5l111 -148l112 150q9 16 27 20.5t34 -5zM600 200h377l-182 112l-195 534v-646z " /> +<glyph unicode="&#x2709;" d="M25 1100h1150q10 0 12.5 -5t-5.5 -13l-564 -567q-8 -8 -18 -8t-18 8l-564 567q-8 8 -5.5 13t12.5 5zM18 882l264 -264q8 -8 8 -18t-8 -18l-264 -264q-8 -8 -13 -5.5t-5 12.5v550q0 10 5 12.5t13 -5.5zM918 618l264 264q8 8 13 5.5t5 -12.5v-550q0 -10 -5 -12.5t-13 5.5 l-264 264q-8 8 -8 18t8 18zM818 482l364 -364q8 -8 5.5 -13t-12.5 -5h-1150q-10 0 -12.5 5t5.5 13l364 364q8 8 18 8t18 -8l164 -164q8 -8 18 -8t18 8l164 164q8 8 18 8t18 -8z" /> +<glyph unicode="&#x270f;" d="M1011 1210q19 0 33 -13l153 -153q13 -14 13 -33t-13 -33l-99 -92l-214 214l95 96q13 14 32 14zM1013 800l-615 -614l-214 214l614 614zM317 96l-333 -112l110 335z" /> +<glyph unicode="&#xe001;" d="M700 650v-550h250q21 0 35.5 -14.5t14.5 -35.5v-50h-800v50q0 21 14.5 35.5t35.5 14.5h250v550l-500 550h1200z" /> +<glyph unicode="&#xe002;" d="M368 1017l645 163q39 15 63 0t24 -49v-831q0 -55 -41.5 -95.5t-111.5 -63.5q-79 -25 -147 -4.5t-86 75t25.5 111.5t122.5 82q72 24 138 8v521l-600 -155v-606q0 -42 -44 -90t-109 -69q-79 -26 -147 -5.5t-86 75.5t25.5 111.5t122.5 82.5q72 24 138 7v639q0 38 14.5 59 t53.5 34z" /> +<glyph unicode="&#xe003;" d="M500 1191q100 0 191 -39t156.5 -104.5t104.5 -156.5t39 -191l-1 -2l1 -5q0 -141 -78 -262l275 -274q23 -26 22.5 -44.5t-22.5 -42.5l-59 -58q-26 -20 -46.5 -20t-39.5 20l-275 274q-119 -77 -261 -77l-5 1l-2 -1q-100 0 -191 39t-156.5 104.5t-104.5 156.5t-39 191 t39 191t104.5 156.5t156.5 104.5t191 39zM500 1022q-88 0 -162 -43t-117 -117t-43 -162t43 -162t117 -117t162 -43t162 43t117 117t43 162t-43 162t-117 117t-162 43z" /> +<glyph unicode="&#xe005;" d="M649 949q48 68 109.5 104t121.5 38.5t118.5 -20t102.5 -64t71 -100.5t27 -123q0 -57 -33.5 -117.5t-94 -124.5t-126.5 -127.5t-150 -152.5t-146 -174q-62 85 -145.5 174t-150 152.5t-126.5 127.5t-93.5 124.5t-33.5 117.5q0 64 28 123t73 100.5t104 64t119 20 t120.5 -38.5t104.5 -104z" /> +<glyph unicode="&#xe006;" d="M407 800l131 353q7 19 17.5 19t17.5 -19l129 -353h421q21 0 24 -8.5t-14 -20.5l-342 -249l130 -401q7 -20 -0.5 -25.5t-24.5 6.5l-343 246l-342 -247q-17 -12 -24.5 -6.5t-0.5 25.5l130 400l-347 251q-17 12 -14 20.5t23 8.5h429z" /> +<glyph unicode="&#xe007;" d="M407 800l131 353q7 19 17.5 19t17.5 -19l129 -353h421q21 0 24 -8.5t-14 -20.5l-342 -249l130 -401q7 -20 -0.5 -25.5t-24.5 6.5l-343 246l-342 -247q-17 -12 -24.5 -6.5t-0.5 25.5l130 400l-347 251q-17 12 -14 20.5t23 8.5h429zM477 700h-240l197 -142l-74 -226 l193 139l195 -140l-74 229l192 140h-234l-78 211z" /> +<glyph unicode="&#xe008;" d="M600 1200q124 0 212 -88t88 -212v-250q0 -46 -31 -98t-69 -52v-75q0 -10 6 -21.5t15 -17.5l358 -230q9 -5 15 -16.5t6 -21.5v-93q0 -10 -7.5 -17.5t-17.5 -7.5h-1150q-10 0 -17.5 7.5t-7.5 17.5v93q0 10 6 21.5t15 16.5l358 230q9 6 15 17.5t6 21.5v75q-38 0 -69 52 t-31 98v250q0 124 88 212t212 88z" /> +<glyph unicode="&#xe009;" d="M25 1100h1150q10 0 17.5 -7.5t7.5 -17.5v-1050q0 -10 -7.5 -17.5t-17.5 -7.5h-1150q-10 0 -17.5 7.5t-7.5 17.5v1050q0 10 7.5 17.5t17.5 7.5zM100 1000v-100h100v100h-100zM875 1000h-550q-10 0 -17.5 -7.5t-7.5 -17.5v-350q0 -10 7.5 -17.5t17.5 -7.5h550 q10 0 17.5 7.5t7.5 17.5v350q0 10 -7.5 17.5t-17.5 7.5zM1000 1000v-100h100v100h-100zM100 800v-100h100v100h-100zM1000 800v-100h100v100h-100zM100 600v-100h100v100h-100zM1000 600v-100h100v100h-100zM875 500h-550q-10 0 -17.5 -7.5t-7.5 -17.5v-350q0 -10 7.5 -17.5 t17.5 -7.5h550q10 0 17.5 7.5t7.5 17.5v350q0 10 -7.5 17.5t-17.5 7.5zM100 400v-100h100v100h-100zM1000 400v-100h100v100h-100zM100 200v-100h100v100h-100zM1000 200v-100h100v100h-100z" /> +<glyph unicode="&#xe010;" d="M50 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM650 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400 q0 21 14.5 35.5t35.5 14.5zM50 500h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM650 500h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe011;" d="M50 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200 q0 21 14.5 35.5t35.5 14.5zM850 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200 q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM850 700h200q21 0 35.5 -14.5t14.5 -35.5v-200 q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 300h200 q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM850 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5 t35.5 14.5z" /> +<glyph unicode="&#xe012;" d="M50 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 1100h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v200 q0 21 14.5 35.5t35.5 14.5zM50 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 700h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700 q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 300h700q21 0 35.5 -14.5t14.5 -35.5v-200 q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe013;" d="M465 477l571 571q8 8 18 8t17 -8l177 -177q8 -7 8 -17t-8 -18l-783 -784q-7 -8 -17.5 -8t-17.5 8l-384 384q-8 8 -8 18t8 17l177 177q7 8 17 8t18 -8l171 -171q7 -7 18 -7t18 7z" /> +<glyph unicode="&#xe014;" d="M904 1083l178 -179q8 -8 8 -18.5t-8 -17.5l-267 -268l267 -268q8 -7 8 -17.5t-8 -18.5l-178 -178q-8 -8 -18.5 -8t-17.5 8l-268 267l-268 -267q-7 -8 -17.5 -8t-18.5 8l-178 178q-8 8 -8 18.5t8 17.5l267 268l-267 268q-8 7 -8 17.5t8 18.5l178 178q8 8 18.5 8t17.5 -8 l268 -267l268 268q7 7 17.5 7t18.5 -7z" /> +<glyph unicode="&#xe015;" d="M507 1177q98 0 187.5 -38.5t154.5 -103.5t103.5 -154.5t38.5 -187.5q0 -141 -78 -262l300 -299q8 -8 8 -18.5t-8 -18.5l-109 -108q-7 -8 -17.5 -8t-18.5 8l-300 299q-119 -77 -261 -77q-98 0 -188 38.5t-154.5 103t-103 154.5t-38.5 188t38.5 187.5t103 154.5 t154.5 103.5t188 38.5zM506.5 1023q-89.5 0 -165.5 -44t-120 -120.5t-44 -166t44 -165.5t120 -120t165.5 -44t166 44t120.5 120t44 165.5t-44 166t-120.5 120.5t-166 44zM425 900h150q10 0 17.5 -7.5t7.5 -17.5v-75h75q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5 t-17.5 -7.5h-75v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-75q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h75v75q0 10 7.5 17.5t17.5 7.5z" /> +<glyph unicode="&#xe016;" d="M507 1177q98 0 187.5 -38.5t154.5 -103.5t103.5 -154.5t38.5 -187.5q0 -141 -78 -262l300 -299q8 -8 8 -18.5t-8 -18.5l-109 -108q-7 -8 -17.5 -8t-18.5 8l-300 299q-119 -77 -261 -77q-98 0 -188 38.5t-154.5 103t-103 154.5t-38.5 188t38.5 187.5t103 154.5 t154.5 103.5t188 38.5zM506.5 1023q-89.5 0 -165.5 -44t-120 -120.5t-44 -166t44 -165.5t120 -120t165.5 -44t166 44t120.5 120t44 165.5t-44 166t-120.5 120.5t-166 44zM325 800h350q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-350q-10 0 -17.5 7.5 t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" /> +<glyph unicode="&#xe017;" d="M550 1200h100q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM800 975v166q167 -62 272 -209.5t105 -331.5q0 -117 -45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5 t-184.5 123t-123 184.5t-45.5 224q0 184 105 331.5t272 209.5v-166q-103 -55 -165 -155t-62 -220q0 -116 57 -214.5t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5q0 120 -62 220t-165 155z" /> +<glyph unicode="&#xe018;" d="M1025 1200h150q10 0 17.5 -7.5t7.5 -17.5v-1150q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v1150q0 10 7.5 17.5t17.5 7.5zM725 800h150q10 0 17.5 -7.5t7.5 -17.5v-750q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v750 q0 10 7.5 17.5t17.5 7.5zM425 500h150q10 0 17.5 -7.5t7.5 -17.5v-450q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v450q0 10 7.5 17.5t17.5 7.5zM125 300h150q10 0 17.5 -7.5t7.5 -17.5v-250q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5 v250q0 10 7.5 17.5t17.5 7.5z" /> +<glyph unicode="&#xe019;" d="M600 1174q33 0 74 -5l38 -152l5 -1q49 -14 94 -39l5 -2l134 80q61 -48 104 -105l-80 -134l3 -5q25 -44 39 -93l1 -6l152 -38q5 -43 5 -73q0 -34 -5 -74l-152 -38l-1 -6q-15 -49 -39 -93l-3 -5l80 -134q-48 -61 -104 -105l-134 81l-5 -3q-44 -25 -94 -39l-5 -2l-38 -151 q-43 -5 -74 -5q-33 0 -74 5l-38 151l-5 2q-49 14 -94 39l-5 3l-134 -81q-60 48 -104 105l80 134l-3 5q-25 45 -38 93l-2 6l-151 38q-6 42 -6 74q0 33 6 73l151 38l2 6q13 48 38 93l3 5l-80 134q47 61 105 105l133 -80l5 2q45 25 94 39l5 1l38 152q43 5 74 5zM600 815 q-89 0 -152 -63t-63 -151.5t63 -151.5t152 -63t152 63t63 151.5t-63 151.5t-152 63z" /> +<glyph unicode="&#xe020;" d="M500 1300h300q41 0 70.5 -29.5t29.5 -70.5v-100h275q10 0 17.5 -7.5t7.5 -17.5v-75h-1100v75q0 10 7.5 17.5t17.5 7.5h275v100q0 41 29.5 70.5t70.5 29.5zM500 1200v-100h300v100h-300zM1100 900v-800q0 -41 -29.5 -70.5t-70.5 -29.5h-700q-41 0 -70.5 29.5t-29.5 70.5 v800h900zM300 800v-700h100v700h-100zM500 800v-700h100v700h-100zM700 800v-700h100v700h-100zM900 800v-700h100v700h-100z" /> +<glyph unicode="&#xe021;" d="M18 618l620 608q8 7 18.5 7t17.5 -7l608 -608q8 -8 5.5 -13t-12.5 -5h-175v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v375h-300v-375q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v575h-175q-10 0 -12.5 5t5.5 13z" /> +<glyph unicode="&#xe022;" d="M600 1200v-400q0 -41 29.5 -70.5t70.5 -29.5h300v-650q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v1100q0 21 14.5 35.5t35.5 14.5h450zM1000 800h-250q-21 0 -35.5 14.5t-14.5 35.5v250z" /> +<glyph unicode="&#xe023;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM525 900h50q10 0 17.5 -7.5t7.5 -17.5v-275h175q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5z" /> +<glyph unicode="&#xe024;" d="M1300 0h-538l-41 400h-242l-41 -400h-538l431 1200h209l-21 -300h162l-20 300h208zM515 800l-27 -300h224l-27 300h-170z" /> +<glyph unicode="&#xe025;" d="M550 1200h200q21 0 35.5 -14.5t14.5 -35.5v-450h191q20 0 25.5 -11.5t-7.5 -27.5l-327 -400q-13 -16 -32 -16t-32 16l-327 400q-13 16 -7.5 27.5t25.5 11.5h191v450q0 21 14.5 35.5t35.5 14.5zM1125 400h50q10 0 17.5 -7.5t7.5 -17.5v-350q0 -10 -7.5 -17.5t-17.5 -7.5 h-1050q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h50q10 0 17.5 -7.5t7.5 -17.5v-175h900v175q0 10 7.5 17.5t17.5 7.5z" /> +<glyph unicode="&#xe026;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM525 900h150q10 0 17.5 -7.5t7.5 -17.5v-275h137q21 0 26 -11.5t-8 -27.5l-223 -275q-13 -16 -32 -16t-32 16l-223 275q-13 16 -8 27.5t26 11.5h137v275q0 10 7.5 17.5t17.5 7.5z " /> +<glyph unicode="&#xe027;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM632 914l223 -275q13 -16 8 -27.5t-26 -11.5h-137v-275q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v275h-137q-21 0 -26 11.5t8 27.5l223 275q13 16 32 16 t32 -16z" /> +<glyph unicode="&#xe028;" d="M225 1200h750q10 0 19.5 -7t12.5 -17l186 -652q7 -24 7 -49v-425q0 -12 -4 -27t-9 -17q-12 -6 -37 -6h-1100q-12 0 -27 4t-17 8q-6 13 -6 38l1 425q0 25 7 49l185 652q3 10 12.5 17t19.5 7zM878 1000h-556q-10 0 -19 -7t-11 -18l-87 -450q-2 -11 4 -18t16 -7h150 q10 0 19.5 -7t11.5 -17l38 -152q2 -10 11.5 -17t19.5 -7h250q10 0 19.5 7t11.5 17l38 152q2 10 11.5 17t19.5 7h150q10 0 16 7t4 18l-87 450q-2 11 -11 18t-19 7z" /> +<glyph unicode="&#xe029;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM540 820l253 -190q17 -12 17 -30t-17 -30l-253 -190q-16 -12 -28 -6.5t-12 26.5v400q0 21 12 26.5t28 -6.5z" /> +<glyph unicode="&#xe030;" d="M947 1060l135 135q7 7 12.5 5t5.5 -13v-362q0 -10 -7.5 -17.5t-17.5 -7.5h-362q-11 0 -13 5.5t5 12.5l133 133q-109 76 -238 76q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5h150q0 -117 -45.5 -224 t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5q192 0 347 -117z" /> +<glyph unicode="&#xe031;" d="M947 1060l135 135q7 7 12.5 5t5.5 -13v-361q0 -11 -7.5 -18.5t-18.5 -7.5h-361q-11 0 -13 5.5t5 12.5l134 134q-110 75 -239 75q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5h-150q0 117 45.5 224t123 184.5t184.5 123t224 45.5q192 0 347 -117zM1027 600h150 q0 -117 -45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5q-192 0 -348 118l-134 -134q-7 -8 -12.5 -5.5t-5.5 12.5v360q0 11 7.5 18.5t18.5 7.5h360q10 0 12.5 -5.5t-5.5 -12.5l-133 -133q110 -76 240 -76q116 0 214.5 57t155.5 155.5t57 214.5z" /> +<glyph unicode="&#xe032;" d="M125 1200h1050q10 0 17.5 -7.5t7.5 -17.5v-1150q0 -10 -7.5 -17.5t-17.5 -7.5h-1050q-10 0 -17.5 7.5t-7.5 17.5v1150q0 10 7.5 17.5t17.5 7.5zM1075 1000h-850q-10 0 -17.5 -7.5t-7.5 -17.5v-850q0 -10 7.5 -17.5t17.5 -7.5h850q10 0 17.5 7.5t7.5 17.5v850 q0 10 -7.5 17.5t-17.5 7.5zM325 900h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 900h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 700h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 700h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 500h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 500h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 300h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 300h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5z" /> +<glyph unicode="&#xe033;" d="M900 800v200q0 83 -58.5 141.5t-141.5 58.5h-300q-82 0 -141 -59t-59 -141v-200h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-600q0 -41 29.5 -70.5t70.5 -29.5h900q41 0 70.5 29.5t29.5 70.5v600q0 41 -29.5 70.5t-70.5 29.5h-100zM400 800v150q0 21 15 35.5t35 14.5h200 q20 0 35 -14.5t15 -35.5v-150h-300z" /> +<glyph unicode="&#xe034;" d="M125 1100h50q10 0 17.5 -7.5t7.5 -17.5v-1075h-100v1075q0 10 7.5 17.5t17.5 7.5zM1075 1052q4 0 9 -2q16 -6 16 -23v-421q0 -6 -3 -12q-33 -59 -66.5 -99t-65.5 -58t-56.5 -24.5t-52.5 -6.5q-26 0 -57.5 6.5t-52.5 13.5t-60 21q-41 15 -63 22.5t-57.5 15t-65.5 7.5 q-85 0 -160 -57q-7 -5 -15 -5q-6 0 -11 3q-14 7 -14 22v438q22 55 82 98.5t119 46.5q23 2 43 0.5t43 -7t32.5 -8.5t38 -13t32.5 -11q41 -14 63.5 -21t57 -14t63.5 -7q103 0 183 87q7 8 18 8z" /> +<glyph unicode="&#xe035;" d="M600 1175q116 0 227 -49.5t192.5 -131t131 -192.5t49.5 -227v-300q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v300q0 127 -70.5 231.5t-184.5 161.5t-245 57t-245 -57t-184.5 -161.5t-70.5 -231.5v-300q0 -10 -7.5 -17.5t-17.5 -7.5h-50 q-10 0 -17.5 7.5t-7.5 17.5v300q0 116 49.5 227t131 192.5t192.5 131t227 49.5zM220 500h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14v460q0 8 6 14t14 6zM820 500h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14v460 q0 8 6 14t14 6z" /> +<glyph unicode="&#xe036;" d="M321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM900 668l120 120q7 7 17 7t17 -7l34 -34q7 -7 7 -17t-7 -17l-120 -120l120 -120q7 -7 7 -17 t-7 -17l-34 -34q-7 -7 -17 -7t-17 7l-120 119l-120 -119q-7 -7 -17 -7t-17 7l-34 34q-7 7 -7 17t7 17l119 120l-119 120q-7 7 -7 17t7 17l34 34q7 8 17 8t17 -8z" /> +<glyph unicode="&#xe037;" d="M321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM766 900h4q10 -1 16 -10q96 -129 96 -290q0 -154 -90 -281q-6 -9 -17 -10l-3 -1q-9 0 -16 6 l-29 23q-7 7 -8.5 16.5t4.5 17.5q72 103 72 229q0 132 -78 238q-6 8 -4.5 18t9.5 17l29 22q7 5 15 5z" /> +<glyph unicode="&#xe038;" d="M967 1004h3q11 -1 17 -10q135 -179 135 -396q0 -105 -34 -206.5t-98 -185.5q-7 -9 -17 -10h-3q-9 0 -16 6l-42 34q-8 6 -9 16t5 18q111 150 111 328q0 90 -29.5 176t-84.5 157q-6 9 -5 19t10 16l42 33q7 5 15 5zM321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5 t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM766 900h4q10 -1 16 -10q96 -129 96 -290q0 -154 -90 -281q-6 -9 -17 -10l-3 -1q-9 0 -16 6l-29 23q-7 7 -8.5 16.5t4.5 17.5q72 103 72 229q0 132 -78 238 q-6 8 -4.5 18.5t9.5 16.5l29 22q7 5 15 5z" /> +<glyph unicode="&#xe039;" d="M500 900h100v-100h-100v-100h-400v-100h-100v600h500v-300zM1200 700h-200v-100h200v-200h-300v300h-200v300h-100v200h600v-500zM100 1100v-300h300v300h-300zM800 1100v-300h300v300h-300zM300 900h-100v100h100v-100zM1000 900h-100v100h100v-100zM300 500h200v-500 h-500v500h200v100h100v-100zM800 300h200v-100h-100v-100h-200v100h-100v100h100v200h-200v100h300v-300zM100 400v-300h300v300h-300zM300 200h-100v100h100v-100zM1200 200h-100v100h100v-100zM700 0h-100v100h100v-100zM1200 0h-300v100h300v-100z" /> +<glyph unicode="&#xe040;" d="M100 200h-100v1000h100v-1000zM300 200h-100v1000h100v-1000zM700 200h-200v1000h200v-1000zM900 200h-100v1000h100v-1000zM1200 200h-200v1000h200v-1000zM400 0h-300v100h300v-100zM600 0h-100v91h100v-91zM800 0h-100v91h100v-91zM1100 0h-200v91h200v-91z" /> +<glyph unicode="&#xe041;" d="M500 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-682 682l1 475q0 10 7.5 17.5t17.5 7.5h474zM319.5 1024.5q-29.5 29.5 -71 29.5t-71 -29.5t-29.5 -71.5t29.5 -71.5t71 -29.5t71 29.5t29.5 71.5t-29.5 71.5z" /> +<glyph unicode="&#xe042;" d="M500 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-682 682l1 475q0 10 7.5 17.5t17.5 7.5h474zM800 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-56 56l424 426l-700 700h150zM319.5 1024.5q-29.5 29.5 -71 29.5t-71 -29.5 t-29.5 -71.5t29.5 -71.5t71 -29.5t71 29.5t29.5 71.5t-29.5 71.5z" /> +<glyph unicode="&#xe043;" d="M300 1200h825q75 0 75 -75v-900q0 -25 -18 -43l-64 -64q-8 -8 -13 -5.5t-5 12.5v950q0 10 -7.5 17.5t-17.5 7.5h-700q-25 0 -43 -18l-64 -64q-8 -8 -5.5 -13t12.5 -5h700q10 0 17.5 -7.5t7.5 -17.5v-950q0 -10 -7.5 -17.5t-17.5 -7.5h-850q-10 0 -17.5 7.5t-7.5 17.5v975 q0 25 18 43l139 139q18 18 43 18z" /> +<glyph unicode="&#xe044;" d="M250 1200h800q21 0 35.5 -14.5t14.5 -35.5v-1150l-450 444l-450 -445v1151q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe045;" d="M822 1200h-444q-11 0 -19 -7.5t-9 -17.5l-78 -301q-7 -24 7 -45l57 -108q6 -9 17.5 -15t21.5 -6h450q10 0 21.5 6t17.5 15l62 108q14 21 7 45l-83 301q-1 10 -9 17.5t-19 7.5zM1175 800h-150q-10 0 -21 -6.5t-15 -15.5l-78 -156q-4 -9 -15 -15.5t-21 -6.5h-550 q-10 0 -21 6.5t-15 15.5l-78 156q-4 9 -15 15.5t-21 6.5h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-650q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h750q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5 t7.5 17.5v650q0 10 -7.5 17.5t-17.5 7.5zM850 200h-500q-10 0 -19.5 -7t-11.5 -17l-38 -152q-2 -10 3.5 -17t15.5 -7h600q10 0 15.5 7t3.5 17l-38 152q-2 10 -11.5 17t-19.5 7z" /> +<glyph unicode="&#xe046;" d="M500 1100h200q56 0 102.5 -20.5t72.5 -50t44 -59t25 -50.5l6 -20h150q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v600q0 41 29.5 70.5t70.5 29.5h150q2 8 6.5 21.5t24 48t45 61t72 48t102.5 21.5zM900 800v-100 h100v100h-100zM600 730q-95 0 -162.5 -67.5t-67.5 -162.5t67.5 -162.5t162.5 -67.5t162.5 67.5t67.5 162.5t-67.5 162.5t-162.5 67.5zM600 603q43 0 73 -30t30 -73t-30 -73t-73 -30t-73 30t-30 73t30 73t73 30z" /> +<glyph unicode="&#xe047;" d="M681 1199l385 -998q20 -50 60 -92q18 -19 36.5 -29.5t27.5 -11.5l10 -2v-66h-417v66q53 0 75 43.5t5 88.5l-82 222h-391q-58 -145 -92 -234q-11 -34 -6.5 -57t25.5 -37t46 -20t55 -6v-66h-365v66q56 24 84 52q12 12 25 30.5t20 31.5l7 13l399 1006h93zM416 521h340 l-162 457z" /> +<glyph unicode="&#xe048;" d="M753 641q5 -1 14.5 -4.5t36 -15.5t50.5 -26.5t53.5 -40t50.5 -54.5t35.5 -70t14.5 -87q0 -67 -27.5 -125.5t-71.5 -97.5t-98.5 -66.5t-108.5 -40.5t-102 -13h-500v89q41 7 70.5 32.5t29.5 65.5v827q0 24 -0.5 34t-3.5 24t-8.5 19.5t-17 13.5t-28 12.5t-42.5 11.5v71 l471 -1q57 0 115.5 -20.5t108 -57t80.5 -94t31 -124.5q0 -51 -15.5 -96.5t-38 -74.5t-45 -50.5t-38.5 -30.5zM400 700h139q78 0 130.5 48.5t52.5 122.5q0 41 -8.5 70.5t-29.5 55.5t-62.5 39.5t-103.5 13.5h-118v-350zM400 200h216q80 0 121 50.5t41 130.5q0 90 -62.5 154.5 t-156.5 64.5h-159v-400z" /> +<glyph unicode="&#xe049;" d="M877 1200l2 -57q-83 -19 -116 -45.5t-40 -66.5l-132 -839q-9 -49 13 -69t96 -26v-97h-500v97q186 16 200 98l173 832q3 17 3 30t-1.5 22.5t-9 17.5t-13.5 12.5t-21.5 10t-26 8.5t-33.5 10q-13 3 -19 5v57h425z" /> +<glyph unicode="&#xe050;" d="M1300 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-850q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v850h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM175 1000h-75v-800h75l-125 -167l-125 167h75v800h-75l125 167z" /> +<glyph unicode="&#xe051;" d="M1100 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-650q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v650h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM1167 50l-167 -125v75h-800v-75l-167 125l167 125v-75h800v75z" /> +<glyph unicode="&#xe052;" d="M50 1100h600q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 500h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe053;" d="M250 1100h700q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM250 500h700q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe054;" d="M500 950v100q0 21 14.5 35.5t35.5 14.5h600q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5zM100 650v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000 q-21 0 -35.5 14.5t-14.5 35.5zM300 350v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5zM0 50v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100 q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5z" /> +<glyph unicode="&#xe055;" d="M50 1100h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 500h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe056;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 1100h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 800h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 500h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 500h800q21 0 35.5 -14.5t14.5 -35.5v-100 q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 200h800 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe057;" d="M400 0h-100v1100h100v-1100zM550 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM550 800h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM267 550l-167 -125v75h-200v100h200v75zM550 500h300q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM550 200h600 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe058;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM900 0h-100v1100h100v-1100zM50 800h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM1100 600h200v-100h-200v-75l-167 125l167 125v-75zM50 500h300q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h600 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe059;" d="M75 1000h750q31 0 53 -22t22 -53v-650q0 -31 -22 -53t-53 -22h-750q-31 0 -53 22t-22 53v650q0 31 22 53t53 22zM1200 300l-300 300l300 300v-600z" /> +<glyph unicode="&#xe060;" d="M44 1100h1112q18 0 31 -13t13 -31v-1012q0 -18 -13 -31t-31 -13h-1112q-18 0 -31 13t-13 31v1012q0 18 13 31t31 13zM100 1000v-737l247 182l298 -131l-74 156l293 318l236 -288v500h-1000zM342 884q56 0 95 -39t39 -94.5t-39 -95t-95 -39.5t-95 39.5t-39 95t39 94.5 t95 39z" /> +<glyph unicode="&#xe062;" d="M648 1169q117 0 216 -60t156.5 -161t57.5 -218q0 -115 -70 -258q-69 -109 -158 -225.5t-143 -179.5l-54 -62q-9 8 -25.5 24.5t-63.5 67.5t-91 103t-98.5 128t-95.5 148q-60 132 -60 249q0 88 34 169.5t91.5 142t137 96.5t166.5 36zM652.5 974q-91.5 0 -156.5 -65 t-65 -157t65 -156.5t156.5 -64.5t156.5 64.5t65 156.5t-65 157t-156.5 65z" /> +<glyph unicode="&#xe063;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 173v854q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57z" /> +<glyph unicode="&#xe064;" d="M554 1295q21 -72 57.5 -143.5t76 -130t83 -118t82.5 -117t70 -116t49.5 -126t18.5 -136.5q0 -71 -25.5 -135t-68.5 -111t-99 -82t-118.5 -54t-125.5 -23q-84 5 -161.5 34t-139.5 78.5t-99 125t-37 164.5q0 69 18 136.5t49.5 126.5t69.5 116.5t81.5 117.5t83.5 119 t76.5 131t58.5 143zM344 710q-23 -33 -43.5 -70.5t-40.5 -102.5t-17 -123q1 -37 14.5 -69.5t30 -52t41 -37t38.5 -24.5t33 -15q21 -7 32 -1t13 22l6 34q2 10 -2.5 22t-13.5 19q-5 4 -14 12t-29.5 40.5t-32.5 73.5q-26 89 6 271q2 11 -6 11q-8 1 -15 -10z" /> +<glyph unicode="&#xe065;" d="M1000 1013l108 115q2 1 5 2t13 2t20.5 -1t25 -9.5t28.5 -21.5q22 -22 27 -43t0 -32l-6 -10l-108 -115zM350 1100h400q50 0 105 -13l-187 -187h-368q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v182l200 200v-332 q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5zM1009 803l-362 -362l-161 -50l55 170l355 355z" /> +<glyph unicode="&#xe066;" d="M350 1100h361q-164 -146 -216 -200h-195q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5l200 153v-103q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5z M824 1073l339 -301q8 -7 8 -17.5t-8 -17.5l-340 -306q-7 -6 -12.5 -4t-6.5 11v203q-26 1 -54.5 0t-78.5 -7.5t-92 -17.5t-86 -35t-70 -57q10 59 33 108t51.5 81.5t65 58.5t68.5 40.5t67 24.5t56 13.5t40 4.5v210q1 10 6.5 12.5t13.5 -4.5z" /> +<glyph unicode="&#xe067;" d="M350 1100h350q60 0 127 -23l-178 -177h-349q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v69l200 200v-219q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5z M643 639l395 395q7 7 17.5 7t17.5 -7l101 -101q7 -7 7 -17.5t-7 -17.5l-531 -532q-7 -7 -17.5 -7t-17.5 7l-248 248q-7 7 -7 17.5t7 17.5l101 101q7 7 17.5 7t17.5 -7l111 -111q8 -7 18 -7t18 7z" /> +<glyph unicode="&#xe068;" d="M318 918l264 264q8 8 18 8t18 -8l260 -264q7 -8 4.5 -13t-12.5 -5h-170v-200h200v173q0 10 5 12t13 -5l264 -260q8 -7 8 -17.5t-8 -17.5l-264 -265q-8 -7 -13 -5t-5 12v173h-200v-200h170q10 0 12.5 -5t-4.5 -13l-260 -264q-8 -8 -18 -8t-18 8l-264 264q-8 8 -5.5 13 t12.5 5h175v200h-200v-173q0 -10 -5 -12t-13 5l-264 265q-8 7 -8 17.5t8 17.5l264 260q8 7 13 5t5 -12v-173h200v200h-175q-10 0 -12.5 5t5.5 13z" /> +<glyph unicode="&#xe069;" d="M250 1100h100q21 0 35.5 -14.5t14.5 -35.5v-438l464 453q15 14 25.5 10t10.5 -25v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v1000q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe070;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-438l464 453q15 14 25.5 10t10.5 -25v-438l464 453q15 14 25.5 10t10.5 -25v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5 t-14.5 35.5v1000q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe071;" d="M1200 1050v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -10.5 -25t-25.5 10l-492 480q-15 14 -15 35t15 35l492 480q15 14 25.5 10t10.5 -25v-438l464 453q15 14 25.5 10t10.5 -25z" /> +<glyph unicode="&#xe072;" d="M243 1074l814 -498q18 -11 18 -26t-18 -26l-814 -498q-18 -11 -30.5 -4t-12.5 28v1000q0 21 12.5 28t30.5 -4z" /> +<glyph unicode="&#xe073;" d="M250 1000h200q21 0 35.5 -14.5t14.5 -35.5v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5zM650 1000h200q21 0 35.5 -14.5t14.5 -35.5v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v800 q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe074;" d="M1100 950v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5z" /> +<glyph unicode="&#xe075;" d="M500 612v438q0 21 10.5 25t25.5 -10l492 -480q15 -14 15 -35t-15 -35l-492 -480q-15 -14 -25.5 -10t-10.5 25v438l-464 -453q-15 -14 -25.5 -10t-10.5 25v1000q0 21 10.5 25t25.5 -10z" /> +<glyph unicode="&#xe076;" d="M1048 1102l100 1q20 0 35 -14.5t15 -35.5l5 -1000q0 -21 -14.5 -35.5t-35.5 -14.5l-100 -1q-21 0 -35.5 14.5t-14.5 35.5l-2 437l-463 -454q-14 -15 -24.5 -10.5t-10.5 25.5l-2 437l-462 -455q-15 -14 -25.5 -9.5t-10.5 24.5l-5 1000q0 21 10.5 25.5t25.5 -10.5l466 -450 l-2 438q0 20 10.5 24.5t25.5 -9.5l466 -451l-2 438q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe077;" d="M850 1100h100q21 0 35.5 -14.5t14.5 -35.5v-1000q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v438l-464 -453q-15 -14 -25.5 -10t-10.5 25v1000q0 21 10.5 25t25.5 -10l464 -453v438q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe078;" d="M686 1081l501 -540q15 -15 10.5 -26t-26.5 -11h-1042q-22 0 -26.5 11t10.5 26l501 540q15 15 36 15t36 -15zM150 400h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe079;" d="M885 900l-352 -353l352 -353l-197 -198l-552 552l552 550z" /> +<glyph unicode="&#xe080;" d="M1064 547l-551 -551l-198 198l353 353l-353 353l198 198z" /> +<glyph unicode="&#xe081;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM650 900h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-150h-150 q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5t35.5 -14.5h150v-150q0 -21 14.5 -35.5t35.5 -14.5h100q21 0 35.5 14.5t14.5 35.5v150h150q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5h-150v150q0 21 -14.5 35.5t-35.5 14.5z" /> +<glyph unicode="&#xe082;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM850 700h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5 t35.5 -14.5h500q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5z" /> +<glyph unicode="&#xe083;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM741.5 913q-12.5 0 -21.5 -9l-120 -120l-120 120q-9 9 -21.5 9 t-21.5 -9l-141 -141q-9 -9 -9 -21.5t9 -21.5l120 -120l-120 -120q-9 -9 -9 -21.5t9 -21.5l141 -141q9 -9 21.5 -9t21.5 9l120 120l120 -120q9 -9 21.5 -9t21.5 9l141 141q9 9 9 21.5t-9 21.5l-120 120l120 120q9 9 9 21.5t-9 21.5l-141 141q-9 9 -21.5 9z" /> +<glyph unicode="&#xe084;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM546 623l-84 85q-7 7 -17.5 7t-18.5 -7l-139 -139q-7 -8 -7 -18t7 -18 l242 -241q7 -8 17.5 -8t17.5 8l375 375q7 7 7 17.5t-7 18.5l-139 139q-7 7 -17.5 7t-17.5 -7z" /> +<glyph unicode="&#xe085;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM588 941q-29 0 -59 -5.5t-63 -20.5t-58 -38.5t-41.5 -63t-16.5 -89.5 q0 -25 20 -25h131q30 -5 35 11q6 20 20.5 28t45.5 8q20 0 31.5 -10.5t11.5 -28.5q0 -23 -7 -34t-26 -18q-1 0 -13.5 -4t-19.5 -7.5t-20 -10.5t-22 -17t-18.5 -24t-15.5 -35t-8 -46q-1 -8 5.5 -16.5t20.5 -8.5h173q7 0 22 8t35 28t37.5 48t29.5 74t12 100q0 47 -17 83 t-42.5 57t-59.5 34.5t-64 18t-59 4.5zM675 400h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5z" /> +<glyph unicode="&#xe086;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM675 1000h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5 t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5zM675 700h-250q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h75v-200h-75q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h350q10 0 17.5 7.5t7.5 17.5v50q0 10 -7.5 17.5 t-17.5 7.5h-75v275q0 10 -7.5 17.5t-17.5 7.5z" /> +<glyph unicode="&#xe087;" d="M525 1200h150q10 0 17.5 -7.5t7.5 -17.5v-194q103 -27 178.5 -102.5t102.5 -178.5h194q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-194q-27 -103 -102.5 -178.5t-178.5 -102.5v-194q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v194 q-103 27 -178.5 102.5t-102.5 178.5h-194q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h194q27 103 102.5 178.5t178.5 102.5v194q0 10 7.5 17.5t17.5 7.5zM700 893v-168q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v168q-68 -23 -119 -74 t-74 -119h168q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-168q23 -68 74 -119t119 -74v168q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-168q68 23 119 74t74 119h-168q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h168 q-23 68 -74 119t-119 74z" /> +<glyph unicode="&#xe088;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM759 823l64 -64q7 -7 7 -17.5t-7 -17.5l-124 -124l124 -124q7 -7 7 -17.5t-7 -17.5l-64 -64q-7 -7 -17.5 -7t-17.5 7l-124 124l-124 -124q-7 -7 -17.5 -7t-17.5 7l-64 64 q-7 7 -7 17.5t7 17.5l124 124l-124 124q-7 7 -7 17.5t7 17.5l64 64q7 7 17.5 7t17.5 -7l124 -124l124 124q7 7 17.5 7t17.5 -7z" /> +<glyph unicode="&#xe089;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM782 788l106 -106q7 -7 7 -17.5t-7 -17.5l-320 -321q-8 -7 -18 -7t-18 7l-202 203q-8 7 -8 17.5t8 17.5l106 106q7 8 17.5 8t17.5 -8l79 -79l197 197q7 7 17.5 7t17.5 -7z" /> +<glyph unicode="&#xe090;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5q0 -120 65 -225 l587 587q-105 65 -225 65zM965 819l-584 -584q104 -62 219 -62q116 0 214.5 57t155.5 155.5t57 214.5q0 115 -62 219z" /> +<glyph unicode="&#xe091;" d="M39 582l522 427q16 13 27.5 8t11.5 -26v-291h550q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-550v-291q0 -21 -11.5 -26t-27.5 8l-522 427q-16 13 -16 32t16 32z" /> +<glyph unicode="&#xe092;" d="M639 1009l522 -427q16 -13 16 -32t-16 -32l-522 -427q-16 -13 -27.5 -8t-11.5 26v291h-550q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h550v291q0 21 11.5 26t27.5 -8z" /> +<glyph unicode="&#xe093;" d="M682 1161l427 -522q13 -16 8 -27.5t-26 -11.5h-291v-550q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v550h-291q-21 0 -26 11.5t8 27.5l427 522q13 16 32 16t32 -16z" /> +<glyph unicode="&#xe094;" d="M550 1200h200q21 0 35.5 -14.5t14.5 -35.5v-550h291q21 0 26 -11.5t-8 -27.5l-427 -522q-13 -16 -32 -16t-32 16l-427 522q-13 16 -8 27.5t26 11.5h291v550q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe095;" d="M639 1109l522 -427q16 -13 16 -32t-16 -32l-522 -427q-16 -13 -27.5 -8t-11.5 26v291q-94 -2 -182 -20t-170.5 -52t-147 -92.5t-100.5 -135.5q5 105 27 193.5t67.5 167t113 135t167 91.5t225.5 42v262q0 21 11.5 26t27.5 -8z" /> +<glyph unicode="&#xe096;" d="M850 1200h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94l-249 -249q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l249 249l-94 94q-14 14 -10 24.5t25 10.5zM350 0h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l249 249 q8 7 18 7t18 -7l106 -106q7 -8 7 -18t-7 -18l-249 -249l94 -94q14 -14 10 -24.5t-25 -10.5z" /> +<glyph unicode="&#xe097;" d="M1014 1120l106 -106q7 -8 7 -18t-7 -18l-249 -249l94 -94q14 -14 10 -24.5t-25 -10.5h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l249 249q8 7 18 7t18 -7zM250 600h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94 l-249 -249q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l249 249l-94 94q-14 14 -10 24.5t25 10.5z" /> +<glyph unicode="&#xe101;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM704 900h-208q-20 0 -32 -14.5t-8 -34.5l58 -302q4 -20 21.5 -34.5 t37.5 -14.5h54q20 0 37.5 14.5t21.5 34.5l58 302q4 20 -8 34.5t-32 14.5zM675 400h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5z" /> +<glyph unicode="&#xe102;" d="M260 1200q9 0 19 -2t15 -4l5 -2q22 -10 44 -23l196 -118q21 -13 36 -24q29 -21 37 -12q11 13 49 35l196 118q22 13 45 23q17 7 38 7q23 0 47 -16.5t37 -33.5l13 -16q14 -21 18 -45l25 -123l8 -44q1 -9 8.5 -14.5t17.5 -5.5h61q10 0 17.5 -7.5t7.5 -17.5v-50 q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 -7.5t-7.5 -17.5v-175h-400v300h-200v-300h-400v175q0 10 -7.5 17.5t-17.5 7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5h61q11 0 18 3t7 8q0 4 9 52l25 128q5 25 19 45q2 3 5 7t13.5 15t21.5 19.5t26.5 15.5 t29.5 7zM915 1079l-166 -162q-7 -7 -5 -12t12 -5h219q10 0 15 7t2 17l-51 149q-3 10 -11 12t-15 -6zM463 917l-177 157q-8 7 -16 5t-11 -12l-51 -143q-3 -10 2 -17t15 -7h231q11 0 12.5 5t-5.5 12zM500 0h-375q-10 0 -17.5 7.5t-7.5 17.5v375h400v-400zM1100 400v-375 q0 -10 -7.5 -17.5t-17.5 -7.5h-375v400h400z" /> +<glyph unicode="&#xe103;" d="M1165 1190q8 3 21 -6.5t13 -17.5q-2 -178 -24.5 -323.5t-55.5 -245.5t-87 -174.5t-102.5 -118.5t-118 -68.5t-118.5 -33t-120 -4.5t-105 9.5t-90 16.5q-61 12 -78 11q-4 1 -12.5 0t-34 -14.5t-52.5 -40.5l-153 -153q-26 -24 -37 -14.5t-11 43.5q0 64 42 102q8 8 50.5 45 t66.5 58q19 17 35 47t13 61q-9 55 -10 102.5t7 111t37 130t78 129.5q39 51 80 88t89.5 63.5t94.5 45t113.5 36t129 31t157.5 37t182 47.5zM1116 1098q-8 9 -22.5 -3t-45.5 -50q-38 -47 -119 -103.5t-142 -89.5l-62 -33q-56 -30 -102 -57t-104 -68t-102.5 -80.5t-85.5 -91 t-64 -104.5q-24 -56 -31 -86t2 -32t31.5 17.5t55.5 59.5q25 30 94 75.5t125.5 77.5t147.5 81q70 37 118.5 69t102 79.5t99 111t86.5 148.5q22 50 24 60t-6 19z" /> +<glyph unicode="&#xe104;" d="M653 1231q-39 -67 -54.5 -131t-10.5 -114.5t24.5 -96.5t47.5 -80t63.5 -62.5t68.5 -46.5t65 -30q-4 7 -17.5 35t-18.5 39.5t-17 39.5t-17 43t-13 42t-9.5 44.5t-2 42t4 43t13.5 39t23 38.5q96 -42 165 -107.5t105 -138t52 -156t13 -159t-19 -149.5q-13 -55 -44 -106.5 t-68 -87t-78.5 -64.5t-72.5 -45t-53 -22q-72 -22 -127 -11q-31 6 -13 19q6 3 17 7q13 5 32.5 21t41 44t38.5 63.5t21.5 81.5t-6.5 94.5t-50 107t-104 115.5q10 -104 -0.5 -189t-37 -140.5t-65 -93t-84 -52t-93.5 -11t-95 24.5q-80 36 -131.5 114t-53.5 171q-2 23 0 49.5 t4.5 52.5t13.5 56t27.5 60t46 64.5t69.5 68.5q-8 -53 -5 -102.5t17.5 -90t34 -68.5t44.5 -39t49 -2q31 13 38.5 36t-4.5 55t-29 64.5t-36 75t-26 75.5q-15 85 2 161.5t53.5 128.5t85.5 92.5t93.5 61t81.5 25.5z" /> +<glyph unicode="&#xe105;" d="M600 1094q82 0 160.5 -22.5t140 -59t116.5 -82.5t94.5 -95t68 -95t42.5 -82.5t14 -57.5t-14 -57.5t-43 -82.5t-68.5 -95t-94.5 -95t-116.5 -82.5t-140 -59t-159.5 -22.5t-159.5 22.5t-140 59t-116.5 82.5t-94.5 95t-68.5 95t-43 82.5t-14 57.5t14 57.5t42.5 82.5t68 95 t94.5 95t116.5 82.5t140 59t160.5 22.5zM888 829q-15 15 -18 12t5 -22q25 -57 25 -119q0 -124 -88 -212t-212 -88t-212 88t-88 212q0 59 23 114q8 19 4.5 22t-17.5 -12q-70 -69 -160 -184q-13 -16 -15 -40.5t9 -42.5q22 -36 47 -71t70 -82t92.5 -81t113 -58.5t133.5 -24.5 t133.5 24t113 58.5t92.5 81.5t70 81.5t47 70.5q11 18 9 42.5t-14 41.5q-90 117 -163 189zM448 727l-35 -36q-15 -15 -19.5 -38.5t4.5 -41.5q37 -68 93 -116q16 -13 38.5 -11t36.5 17l35 34q14 15 12.5 33.5t-16.5 33.5q-44 44 -89 117q-11 18 -28 20t-32 -12z" /> +<glyph unicode="&#xe106;" d="M592 0h-148l31 120q-91 20 -175.5 68.5t-143.5 106.5t-103.5 119t-66.5 110t-22 76q0 21 14 57.5t42.5 82.5t68 95t94.5 95t116.5 82.5t140 59t160.5 22.5q61 0 126 -15l32 121h148zM944 770l47 181q108 -85 176.5 -192t68.5 -159q0 -26 -19.5 -71t-59.5 -102t-93 -112 t-129 -104.5t-158 -75.5l46 173q77 49 136 117t97 131q11 18 9 42.5t-14 41.5q-54 70 -107 130zM310 824q-70 -69 -160 -184q-13 -16 -15 -40.5t9 -42.5q18 -30 39 -60t57 -70.5t74 -73t90 -61t105 -41.5l41 154q-107 18 -178.5 101.5t-71.5 193.5q0 59 23 114q8 19 4.5 22 t-17.5 -12zM448 727l-35 -36q-15 -15 -19.5 -38.5t4.5 -41.5q37 -68 93 -116q16 -13 38.5 -11t36.5 17l12 11l22 86l-3 4q-44 44 -89 117q-11 18 -28 20t-32 -12z" /> +<glyph unicode="&#xe107;" d="M-90 100l642 1066q20 31 48 28.5t48 -35.5l642 -1056q21 -32 7.5 -67.5t-50.5 -35.5h-1294q-37 0 -50.5 34t7.5 66zM155 200h345v75q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-75h345l-445 723zM496 700h208q20 0 32 -14.5t8 -34.5l-58 -252 q-4 -20 -21.5 -34.5t-37.5 -14.5h-54q-20 0 -37.5 14.5t-21.5 34.5l-58 252q-4 20 8 34.5t32 14.5z" /> +<glyph unicode="&#xe108;" d="M650 1200q62 0 106 -44t44 -106v-339l363 -325q15 -14 26 -38.5t11 -44.5v-41q0 -20 -12 -26.5t-29 5.5l-359 249v-263q100 -93 100 -113v-64q0 -21 -13 -29t-32 1l-205 128l-205 -128q-19 -9 -32 -1t-13 29v64q0 20 100 113v263l-359 -249q-17 -12 -29 -5.5t-12 26.5v41 q0 20 11 44.5t26 38.5l363 325v339q0 62 44 106t106 44z" /> +<glyph unicode="&#xe109;" d="M850 1200h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-150h-1100v150q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-50h500v50q0 21 14.5 35.5t35.5 14.5zM1100 800v-750q0 -21 -14.5 -35.5 t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v750h1100zM100 600v-100h100v100h-100zM300 600v-100h100v100h-100zM500 600v-100h100v100h-100zM700 600v-100h100v100h-100zM900 600v-100h100v100h-100zM100 400v-100h100v100h-100zM300 400v-100h100v100h-100zM500 400 v-100h100v100h-100zM700 400v-100h100v100h-100zM900 400v-100h100v100h-100zM100 200v-100h100v100h-100zM300 200v-100h100v100h-100zM500 200v-100h100v100h-100zM700 200v-100h100v100h-100zM900 200v-100h100v100h-100z" /> +<glyph unicode="&#xe110;" d="M1135 1165l249 -230q15 -14 15 -35t-15 -35l-249 -230q-14 -14 -24.5 -10t-10.5 25v150h-159l-600 -600h-291q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h209l600 600h241v150q0 21 10.5 25t24.5 -10zM522 819l-141 -141l-122 122h-209q-21 0 -35.5 14.5 t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h291zM1135 565l249 -230q15 -14 15 -35t-15 -35l-249 -230q-14 -14 -24.5 -10t-10.5 25v150h-241l-181 181l141 141l122 -122h159v150q0 21 10.5 25t24.5 -10z" /> +<glyph unicode="&#xe111;" d="M100 1100h1000q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-596l-304 -300v300h-100q-41 0 -70.5 29.5t-29.5 70.5v600q0 41 29.5 70.5t70.5 29.5z" /> +<glyph unicode="&#xe112;" d="M150 1200h200q21 0 35.5 -14.5t14.5 -35.5v-250h-300v250q0 21 14.5 35.5t35.5 14.5zM850 1200h200q21 0 35.5 -14.5t14.5 -35.5v-250h-300v250q0 21 14.5 35.5t35.5 14.5zM1100 800v-300q0 -41 -3 -77.5t-15 -89.5t-32 -96t-58 -89t-89 -77t-129 -51t-174 -20t-174 20 t-129 51t-89 77t-58 89t-32 96t-15 89.5t-3 77.5v300h300v-250v-27v-42.5t1.5 -41t5 -38t10 -35t16.5 -30t25.5 -24.5t35 -19t46.5 -12t60 -4t60 4.5t46.5 12.5t35 19.5t25 25.5t17 30.5t10 35t5 38t2 40.5t-0.5 42v25v250h300z" /> +<glyph unicode="&#xe113;" d="M1100 411l-198 -199l-353 353l-353 -353l-197 199l551 551z" /> +<glyph unicode="&#xe114;" d="M1101 789l-550 -551l-551 551l198 199l353 -353l353 353z" /> +<glyph unicode="&#xe115;" d="M404 1000h746q21 0 35.5 -14.5t14.5 -35.5v-551h150q21 0 25 -10.5t-10 -24.5l-230 -249q-14 -15 -35 -15t-35 15l-230 249q-14 14 -10 24.5t25 10.5h150v401h-381zM135 984l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-400h385l215 -200h-750q-21 0 -35.5 14.5 t-14.5 35.5v550h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" /> +<glyph unicode="&#xe116;" d="M56 1200h94q17 0 31 -11t18 -27l38 -162h896q24 0 39 -18.5t10 -42.5l-100 -475q-5 -21 -27 -42.5t-55 -21.5h-633l48 -200h535q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-50q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v50h-300v-50 q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v50h-31q-18 0 -32.5 10t-20.5 19l-5 10l-201 961h-54q-20 0 -35 14.5t-15 35.5t15 35.5t35 14.5z" /> +<glyph unicode="&#xe117;" d="M1200 1000v-100h-1200v100h200q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5h500zM0 800h1200v-800h-1200v800z" /> +<glyph unicode="&#xe118;" d="M200 800l-200 -400v600h200q0 41 29.5 70.5t70.5 29.5h300q42 0 71 -29.5t29 -70.5h500v-200h-1000zM1500 700l-300 -700h-1200l300 700h1200z" /> +<glyph unicode="&#xe119;" d="M635 1184l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-601h150q21 0 25 -10.5t-10 -24.5l-230 -249q-14 -15 -35 -15t-35 15l-230 249q-14 14 -10 24.5t25 10.5h150v601h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" /> +<glyph unicode="&#xe120;" d="M936 864l249 -229q14 -15 14 -35.5t-14 -35.5l-249 -229q-15 -15 -25.5 -10.5t-10.5 24.5v151h-600v-151q0 -20 -10.5 -24.5t-25.5 10.5l-249 229q-14 15 -14 35.5t14 35.5l249 229q15 15 25.5 10.5t10.5 -25.5v-149h600v149q0 21 10.5 25.5t25.5 -10.5z" /> +<glyph unicode="&#xe121;" d="M1169 400l-172 732q-5 23 -23 45.5t-38 22.5h-672q-20 0 -38 -20t-23 -41l-172 -739h1138zM1100 300h-1000q-41 0 -70.5 -29.5t-29.5 -70.5v-100q0 -41 29.5 -70.5t70.5 -29.5h1000q41 0 70.5 29.5t29.5 70.5v100q0 41 -29.5 70.5t-70.5 29.5zM800 100v100h100v-100h-100 zM1000 100v100h100v-100h-100z" /> +<glyph unicode="&#xe122;" d="M1150 1100q21 0 35.5 -14.5t14.5 -35.5v-850q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v850q0 21 14.5 35.5t35.5 14.5zM1000 200l-675 200h-38l47 -276q3 -16 -5.5 -20t-29.5 -4h-7h-84q-20 0 -34.5 14t-18.5 35q-55 337 -55 351v250v6q0 16 1 23.5t6.5 14 t17.5 6.5h200l675 250v-850zM0 750v-250q-4 0 -11 0.5t-24 6t-30 15t-24 30t-11 48.5v50q0 26 10.5 46t25 30t29 16t25.5 7z" /> +<glyph unicode="&#xe123;" d="M553 1200h94q20 0 29 -10.5t3 -29.5l-18 -37q83 -19 144 -82.5t76 -140.5l63 -327l118 -173h17q19 0 33 -14.5t14 -35t-13 -40.5t-31 -27q-8 -4 -23 -9.5t-65 -19.5t-103 -25t-132.5 -20t-158.5 -9q-57 0 -115 5t-104 12t-88.5 15.5t-73.5 17.5t-54.5 16t-35.5 12l-11 4 q-18 8 -31 28t-13 40.5t14 35t33 14.5h17l118 173l63 327q15 77 76 140t144 83l-18 32q-6 19 3.5 32t28.5 13zM498 110q50 -6 102 -6q53 0 102 6q-12 -49 -39.5 -79.5t-62.5 -30.5t-63 30.5t-39 79.5z" /> +<glyph unicode="&#xe124;" d="M800 946l224 78l-78 -224l234 -45l-180 -155l180 -155l-234 -45l78 -224l-224 78l-45 -234l-155 180l-155 -180l-45 234l-224 -78l78 224l-234 45l180 155l-180 155l234 45l-78 224l224 -78l45 234l155 -180l155 180z" /> +<glyph unicode="&#xe125;" d="M650 1200h50q40 0 70 -40.5t30 -84.5v-150l-28 -125h328q40 0 70 -40.5t30 -84.5v-100q0 -45 -29 -74l-238 -344q-16 -24 -38 -40.5t-45 -16.5h-250q-7 0 -42 25t-66 50l-31 25h-61q-45 0 -72.5 18t-27.5 57v400q0 36 20 63l145 196l96 198q13 28 37.5 48t51.5 20z M650 1100l-100 -212l-150 -213v-375h100l136 -100h214l250 375v125h-450l50 225v175h-50zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe126;" d="M600 1100h250q23 0 45 -16.5t38 -40.5l238 -344q29 -29 29 -74v-100q0 -44 -30 -84.5t-70 -40.5h-328q28 -118 28 -125v-150q0 -44 -30 -84.5t-70 -40.5h-50q-27 0 -51.5 20t-37.5 48l-96 198l-145 196q-20 27 -20 63v400q0 39 27.5 57t72.5 18h61q124 100 139 100z M50 1000h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5zM636 1000l-136 -100h-100v-375l150 -213l100 -212h50v175l-50 225h450v125l-250 375h-214z" /> +<glyph unicode="&#xe127;" d="M356 873l363 230q31 16 53 -6l110 -112q13 -13 13.5 -32t-11.5 -34l-84 -121h302q84 0 138 -38t54 -110t-55 -111t-139 -39h-106l-131 -339q-6 -21 -19.5 -41t-28.5 -20h-342q-7 0 -90 81t-83 94v525q0 17 14 35.5t28 28.5zM400 792v-503l100 -89h293l131 339 q6 21 19.5 41t28.5 20h203q21 0 30.5 25t0.5 50t-31 25h-456h-7h-6h-5.5t-6 0.5t-5 1.5t-5 2t-4 2.5t-4 4t-2.5 4.5q-12 25 5 47l146 183l-86 83zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500 q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe128;" d="M475 1103l366 -230q2 -1 6 -3.5t14 -10.5t18 -16.5t14.5 -20t6.5 -22.5v-525q0 -13 -86 -94t-93 -81h-342q-15 0 -28.5 20t-19.5 41l-131 339h-106q-85 0 -139.5 39t-54.5 111t54 110t138 38h302l-85 121q-11 15 -10.5 34t13.5 32l110 112q22 22 53 6zM370 945l146 -183 q17 -22 5 -47q-2 -2 -3.5 -4.5t-4 -4t-4 -2.5t-5 -2t-5 -1.5t-6 -0.5h-6h-6.5h-6h-475v-100h221q15 0 29 -20t20 -41l130 -339h294l106 89v503l-342 236zM1050 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5 v500q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe129;" d="M550 1294q72 0 111 -55t39 -139v-106l339 -131q21 -6 41 -19.5t20 -28.5v-342q0 -7 -81 -90t-94 -83h-525q-17 0 -35.5 14t-28.5 28l-9 14l-230 363q-16 31 6 53l112 110q13 13 32 13.5t34 -11.5l121 -84v302q0 84 38 138t110 54zM600 972v203q0 21 -25 30.5t-50 0.5 t-25 -31v-456v-7v-6v-5.5t-0.5 -6t-1.5 -5t-2 -5t-2.5 -4t-4 -4t-4.5 -2.5q-25 -12 -47 5l-183 146l-83 -86l236 -339h503l89 100v293l-339 131q-21 6 -41 19.5t-20 28.5zM450 200h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe130;" d="M350 1100h500q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5t35.5 -14.5zM600 306v-106q0 -84 -39 -139t-111 -55t-110 54t-38 138v302l-121 -84q-15 -12 -34 -11.5t-32 13.5l-112 110 q-22 22 -6 53l230 363q1 2 3.5 6t10.5 13.5t16.5 17t20 13.5t22.5 6h525q13 0 94 -83t81 -90v-342q0 -15 -20 -28.5t-41 -19.5zM308 900l-236 -339l83 -86l183 146q22 17 47 5q2 -1 4.5 -2.5t4 -4t2.5 -4t2 -5t1.5 -5t0.5 -6v-5.5v-6v-7v-456q0 -22 25 -31t50 0.5t25 30.5 v203q0 15 20 28.5t41 19.5l339 131v293l-89 100h-503z" /> +<glyph unicode="&#xe131;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM914 632l-275 223q-16 13 -27.5 8t-11.5 -26v-137h-275 q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h275v-137q0 -21 11.5 -26t27.5 8l275 223q16 13 16 32t-16 32z" /> +<glyph unicode="&#xe132;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM561 855l-275 -223q-16 -13 -16 -32t16 -32l275 -223q16 -13 27.5 -8 t11.5 26v137h275q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5h-275v137q0 21 -11.5 26t-27.5 -8z" /> +<glyph unicode="&#xe133;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM855 639l-223 275q-13 16 -32 16t-32 -16l-223 -275q-13 -16 -8 -27.5 t26 -11.5h137v-275q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v275h137q21 0 26 11.5t-8 27.5z" /> +<glyph unicode="&#xe134;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM675 900h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-275h-137q-21 0 -26 -11.5 t8 -27.5l223 -275q13 -16 32 -16t32 16l223 275q13 16 8 27.5t-26 11.5h-137v275q0 10 -7.5 17.5t-17.5 7.5z" /> +<glyph unicode="&#xe135;" d="M600 1176q116 0 222.5 -46t184 -123.5t123.5 -184t46 -222.5t-46 -222.5t-123.5 -184t-184 -123.5t-222.5 -46t-222.5 46t-184 123.5t-123.5 184t-46 222.5t46 222.5t123.5 184t184 123.5t222.5 46zM627 1101q-15 -12 -36.5 -20.5t-35.5 -12t-43 -8t-39 -6.5 q-15 -3 -45.5 0t-45.5 -2q-20 -7 -51.5 -26.5t-34.5 -34.5q-3 -11 6.5 -22.5t8.5 -18.5q-3 -34 -27.5 -91t-29.5 -79q-9 -34 5 -93t8 -87q0 -9 17 -44.5t16 -59.5q12 0 23 -5t23.5 -15t19.5 -14q16 -8 33 -15t40.5 -15t34.5 -12q21 -9 52.5 -32t60 -38t57.5 -11 q7 -15 -3 -34t-22.5 -40t-9.5 -38q13 -21 23 -34.5t27.5 -27.5t36.5 -18q0 -7 -3.5 -16t-3.5 -14t5 -17q104 -2 221 112q30 29 46.5 47t34.5 49t21 63q-13 8 -37 8.5t-36 7.5q-15 7 -49.5 15t-51.5 19q-18 0 -41 -0.5t-43 -1.5t-42 -6.5t-38 -16.5q-51 -35 -66 -12 q-4 1 -3.5 25.5t0.5 25.5q-6 13 -26.5 17.5t-24.5 6.5q1 15 -0.5 30.5t-7 28t-18.5 11.5t-31 -21q-23 -25 -42 4q-19 28 -8 58q6 16 22 22q6 -1 26 -1.5t33.5 -4t19.5 -13.5q7 -12 18 -24t21.5 -20.5t20 -15t15.5 -10.5l5 -3q2 12 7.5 30.5t8 34.5t-0.5 32q-3 18 3.5 29 t18 22.5t15.5 24.5q6 14 10.5 35t8 31t15.5 22.5t34 22.5q-6 18 10 36q8 0 24 -1.5t24.5 -1.5t20 4.5t20.5 15.5q-10 23 -31 42.5t-37.5 29.5t-49 27t-43.5 23q0 1 2 8t3 11.5t1.5 10.5t-1 9.5t-4.5 4.5q31 -13 58.5 -14.5t38.5 2.5l12 5q5 28 -9.5 46t-36.5 24t-50 15 t-41 20q-18 -4 -37 0zM613 994q0 -17 8 -42t17 -45t9 -23q-8 1 -39.5 5.5t-52.5 10t-37 16.5q3 11 16 29.5t16 25.5q10 -10 19 -10t14 6t13.5 14.5t16.5 12.5z" /> +<glyph unicode="&#xe136;" d="M756 1157q164 92 306 -9l-259 -138l145 -232l251 126q6 -89 -34 -156.5t-117 -110.5q-60 -34 -127 -39.5t-126 16.5l-596 -596q-15 -16 -36.5 -16t-36.5 16l-111 110q-15 15 -15 36.5t15 37.5l600 599q-34 101 5.5 201.5t135.5 154.5z" /> +<glyph unicode="&#xe137;" horiz-adv-x="1220" d="M100 1196h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 1096h-200v-100h200v100zM100 796h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000 q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 696h-500v-100h500v100zM100 396h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 296h-300v-100h300v100z " /> +<glyph unicode="&#xe138;" d="M150 1200h900q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM700 500v-300l-200 -200v500l-350 500h900z" /> +<glyph unicode="&#xe139;" d="M500 1200h200q41 0 70.5 -29.5t29.5 -70.5v-100h300q41 0 70.5 -29.5t29.5 -70.5v-400h-500v100h-200v-100h-500v400q0 41 29.5 70.5t70.5 29.5h300v100q0 41 29.5 70.5t70.5 29.5zM500 1100v-100h200v100h-200zM1200 400v-200q0 -41 -29.5 -70.5t-70.5 -29.5h-1000 q-41 0 -70.5 29.5t-29.5 70.5v200h1200z" /> +<glyph unicode="&#xe140;" d="M50 1200h300q21 0 25 -10.5t-10 -24.5l-94 -94l199 -199q7 -8 7 -18t-7 -18l-106 -106q-8 -7 -18 -7t-18 7l-199 199l-94 -94q-14 -14 -24.5 -10t-10.5 25v300q0 21 14.5 35.5t35.5 14.5zM850 1200h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94 l-199 -199q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l199 199l-94 94q-14 14 -10 24.5t25 10.5zM364 470l106 -106q7 -8 7 -18t-7 -18l-199 -199l94 -94q14 -14 10 -24.5t-25 -10.5h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l199 199 q8 7 18 7t18 -7zM1071 271l94 94q14 14 24.5 10t10.5 -25v-300q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -25 10.5t10 24.5l94 94l-199 199q-7 8 -7 18t7 18l106 106q8 7 18 7t18 -7z" /> +<glyph unicode="&#xe141;" d="M596 1192q121 0 231.5 -47.5t190 -127t127 -190t47.5 -231.5t-47.5 -231.5t-127 -190.5t-190 -127t-231.5 -47t-231.5 47t-190.5 127t-127 190.5t-47 231.5t47 231.5t127 190t190.5 127t231.5 47.5zM596 1010q-112 0 -207.5 -55.5t-151 -151t-55.5 -207.5t55.5 -207.5 t151 -151t207.5 -55.5t207.5 55.5t151 151t55.5 207.5t-55.5 207.5t-151 151t-207.5 55.5zM454.5 905q22.5 0 38.5 -16t16 -38.5t-16 -39t-38.5 -16.5t-38.5 16.5t-16 39t16 38.5t38.5 16zM754.5 905q22.5 0 38.5 -16t16 -38.5t-16 -39t-38 -16.5q-14 0 -29 10l-55 -145 q17 -23 17 -51q0 -36 -25.5 -61.5t-61.5 -25.5t-61.5 25.5t-25.5 61.5q0 32 20.5 56.5t51.5 29.5l122 126l1 1q-9 14 -9 28q0 23 16 39t38.5 16zM345.5 709q22.5 0 38.5 -16t16 -38.5t-16 -38.5t-38.5 -16t-38.5 16t-16 38.5t16 38.5t38.5 16zM854.5 709q22.5 0 38.5 -16 t16 -38.5t-16 -38.5t-38.5 -16t-38.5 16t-16 38.5t16 38.5t38.5 16z" /> +<glyph unicode="&#xe142;" d="M546 173l469 470q91 91 99 192q7 98 -52 175.5t-154 94.5q-22 4 -47 4q-34 0 -66.5 -10t-56.5 -23t-55.5 -38t-48 -41.5t-48.5 -47.5q-376 -375 -391 -390q-30 -27 -45 -41.5t-37.5 -41t-32 -46.5t-16 -47.5t-1.5 -56.5q9 -62 53.5 -95t99.5 -33q74 0 125 51l548 548 q36 36 20 75q-7 16 -21.5 26t-32.5 10q-26 0 -50 -23q-13 -12 -39 -38l-341 -338q-15 -15 -35.5 -15.5t-34.5 13.5t-14 34.5t14 34.5q327 333 361 367q35 35 67.5 51.5t78.5 16.5q14 0 29 -1q44 -8 74.5 -35.5t43.5 -68.5q14 -47 2 -96.5t-47 -84.5q-12 -11 -32 -32 t-79.5 -81t-114.5 -115t-124.5 -123.5t-123 -119.5t-96.5 -89t-57 -45q-56 -27 -120 -27q-70 0 -129 32t-93 89q-48 78 -35 173t81 163l511 511q71 72 111 96q91 55 198 55q80 0 152 -33q78 -36 129.5 -103t66.5 -154q17 -93 -11 -183.5t-94 -156.5l-482 -476 q-15 -15 -36 -16t-37 14t-17.5 34t14.5 35z" /> +<glyph unicode="&#xe143;" d="M649 949q48 68 109.5 104t121.5 38.5t118.5 -20t102.5 -64t71 -100.5t27 -123q0 -57 -33.5 -117.5t-94 -124.5t-126.5 -127.5t-150 -152.5t-146 -174q-62 85 -145.5 174t-150 152.5t-126.5 127.5t-93.5 124.5t-33.5 117.5q0 64 28 123t73 100.5t104 64t119 20 t120.5 -38.5t104.5 -104zM896 972q-33 0 -64.5 -19t-56.5 -46t-47.5 -53.5t-43.5 -45.5t-37.5 -19t-36 19t-40 45.5t-43 53.5t-54 46t-65.5 19q-67 0 -122.5 -55.5t-55.5 -132.5q0 -23 13.5 -51t46 -65t57.5 -63t76 -75l22 -22q15 -14 44 -44t50.5 -51t46 -44t41 -35t23 -12 t23.5 12t42.5 36t46 44t52.5 52t44 43q4 4 12 13q43 41 63.5 62t52 55t46 55t26 46t11.5 44q0 79 -53 133.5t-120 54.5z" /> +<glyph unicode="&#xe144;" d="M776.5 1214q93.5 0 159.5 -66l141 -141q66 -66 66 -160q0 -42 -28 -95.5t-62 -87.5l-29 -29q-31 53 -77 99l-18 18l95 95l-247 248l-389 -389l212 -212l-105 -106l-19 18l-141 141q-66 66 -66 159t66 159l283 283q65 66 158.5 66zM600 706l105 105q10 -8 19 -17l141 -141 q66 -66 66 -159t-66 -159l-283 -283q-66 -66 -159 -66t-159 66l-141 141q-66 66 -66 159.5t66 159.5l55 55q29 -55 75 -102l18 -17l-95 -95l247 -248l389 389z" /> +<glyph unicode="&#xe145;" d="M603 1200q85 0 162 -15t127 -38t79 -48t29 -46v-953q0 -41 -29.5 -70.5t-70.5 -29.5h-600q-41 0 -70.5 29.5t-29.5 70.5v953q0 21 30 46.5t81 48t129 37.5t163 15zM300 1000v-700h600v700h-600zM600 254q-43 0 -73.5 -30.5t-30.5 -73.5t30.5 -73.5t73.5 -30.5t73.5 30.5 t30.5 73.5t-30.5 73.5t-73.5 30.5z" /> +<glyph unicode="&#xe146;" d="M902 1185l283 -282q15 -15 15 -36t-14.5 -35.5t-35.5 -14.5t-35 15l-36 35l-279 -267v-300l-212 210l-308 -307l-280 -203l203 280l307 308l-210 212h300l267 279l-35 36q-15 14 -15 35t14.5 35.5t35.5 14.5t35 -15z" /> +<glyph unicode="&#xe148;" d="M700 1248v-78q38 -5 72.5 -14.5t75.5 -31.5t71 -53.5t52 -84t24 -118.5h-159q-4 36 -10.5 59t-21 45t-40 35.5t-64.5 20.5v-307l64 -13q34 -7 64 -16.5t70 -32t67.5 -52.5t47.5 -80t20 -112q0 -139 -89 -224t-244 -97v-77h-100v79q-150 16 -237 103q-40 40 -52.5 93.5 t-15.5 139.5h139q5 -77 48.5 -126t117.5 -65v335l-27 8q-46 14 -79 26.5t-72 36t-63 52t-40 72.5t-16 98q0 70 25 126t67.5 92t94.5 57t110 27v77h100zM600 754v274q-29 -4 -50 -11t-42 -21.5t-31.5 -41.5t-10.5 -65q0 -29 7 -50.5t16.5 -34t28.5 -22.5t31.5 -14t37.5 -10 q9 -3 13 -4zM700 547v-310q22 2 42.5 6.5t45 15.5t41.5 27t29 42t12 59.5t-12.5 59.5t-38 44.5t-53 31t-66.5 24.5z" /> +<glyph unicode="&#xe149;" d="M561 1197q84 0 160.5 -40t123.5 -109.5t47 -147.5h-153q0 40 -19.5 71.5t-49.5 48.5t-59.5 26t-55.5 9q-37 0 -79 -14.5t-62 -35.5q-41 -44 -41 -101q0 -26 13.5 -63t26.5 -61t37 -66q6 -9 9 -14h241v-100h-197q8 -50 -2.5 -115t-31.5 -95q-45 -62 -99 -112 q34 10 83 17.5t71 7.5q32 1 102 -16t104 -17q83 0 136 30l50 -147q-31 -19 -58 -30.5t-55 -15.5t-42 -4.5t-46 -0.5q-23 0 -76 17t-111 32.5t-96 11.5q-39 -3 -82 -16t-67 -25l-23 -11l-55 145q4 3 16 11t15.5 10.5t13 9t15.5 12t14.5 14t17.5 18.5q48 55 54 126.5 t-30 142.5h-221v100h166q-23 47 -44 104q-7 20 -12 41.5t-6 55.5t6 66.5t29.5 70.5t58.5 71q97 88 263 88z" /> +<glyph unicode="&#xe150;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM935 1184l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-900h-200v900h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" /> +<glyph unicode="&#xe151;" d="M1000 700h-100v100h-100v-100h-100v500h300v-500zM400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM801 1100v-200h100v200h-100zM1000 350l-200 -250h200v-100h-300v150l200 250h-200v100h300v-150z " /> +<glyph unicode="&#xe152;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1000 1050l-200 -250h200v-100h-300v150l200 250h-200v100h300v-150zM1000 0h-100v100h-100v-100h-100v500h300v-500zM801 400v-200h100v200h-100z " /> +<glyph unicode="&#xe153;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1000 700h-100v400h-100v100h200v-500zM1100 0h-100v100h-200v400h300v-500zM901 400v-200h100v200h-100z" /> +<glyph unicode="&#xe154;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1100 700h-100v100h-200v400h300v-500zM901 1100v-200h100v200h-100zM1000 0h-100v400h-100v100h200v-500z" /> +<glyph unicode="&#xe155;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM900 1000h-200v200h200v-200zM1000 700h-300v200h300v-200zM1100 400h-400v200h400v-200zM1200 100h-500v200h500v-200z" /> +<glyph unicode="&#xe156;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1200 1000h-500v200h500v-200zM1100 700h-400v200h400v-200zM1000 400h-300v200h300v-200zM900 100h-200v200h200v-200z" /> +<glyph unicode="&#xe157;" d="M350 1100h400q162 0 256 -93.5t94 -256.5v-400q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5z" /> +<glyph unicode="&#xe158;" d="M350 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-163 0 -256.5 92.5t-93.5 257.5v400q0 163 94 256.5t256 93.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM440 770l253 -190q17 -12 17 -30t-17 -30l-253 -190q-16 -12 -28 -6.5t-12 26.5v400q0 21 12 26.5t28 -6.5z" /> +<glyph unicode="&#xe159;" d="M350 1100h400q163 0 256.5 -94t93.5 -256v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 163 92.5 256.5t257.5 93.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM350 700h400q21 0 26.5 -12t-6.5 -28l-190 -253q-12 -17 -30 -17t-30 17l-190 253q-12 16 -6.5 28t26.5 12z" /> +<glyph unicode="&#xe160;" d="M350 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -163 -92.5 -256.5t-257.5 -93.5h-400q-163 0 -256.5 94t-93.5 256v400q0 165 92.5 257.5t257.5 92.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM580 693l190 -253q12 -16 6.5 -28t-26.5 -12h-400q-21 0 -26.5 12t6.5 28l190 253q12 17 30 17t30 -17z" /> +<glyph unicode="&#xe161;" d="M550 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h450q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5h-450q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM338 867l324 -284q16 -14 16 -33t-16 -33l-324 -284q-16 -14 -27 -9t-11 26v150h-250q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h250v150q0 21 11 26t27 -9z" /> +<glyph unicode="&#xe162;" d="M793 1182l9 -9q8 -10 5 -27q-3 -11 -79 -225.5t-78 -221.5l300 1q24 0 32.5 -17.5t-5.5 -35.5q-1 0 -133.5 -155t-267 -312.5t-138.5 -162.5q-12 -15 -26 -15h-9l-9 8q-9 11 -4 32q2 9 42 123.5t79 224.5l39 110h-302q-23 0 -31 19q-10 21 6 41q75 86 209.5 237.5 t228 257t98.5 111.5q9 16 25 16h9z" /> +<glyph unicode="&#xe163;" d="M350 1100h400q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-450q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h450q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400 q0 165 92.5 257.5t257.5 92.5zM938 867l324 -284q16 -14 16 -33t-16 -33l-324 -284q-16 -14 -27 -9t-11 26v150h-250q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h250v150q0 21 11 26t27 -9z" /> +<glyph unicode="&#xe164;" d="M750 1200h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -10.5 -25t-24.5 10l-109 109l-312 -312q-15 -15 -35.5 -15t-35.5 15l-141 141q-15 15 -15 35.5t15 35.5l312 312l-109 109q-14 14 -10 24.5t25 10.5zM456 900h-156q-41 0 -70.5 -29.5t-29.5 -70.5v-500 q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v148l200 200v-298q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5h300z" /> +<glyph unicode="&#xe165;" d="M600 1186q119 0 227.5 -46.5t187 -125t125 -187t46.5 -227.5t-46.5 -227.5t-125 -187t-187 -125t-227.5 -46.5t-227.5 46.5t-187 125t-125 187t-46.5 227.5t46.5 227.5t125 187t187 125t227.5 46.5zM600 1022q-115 0 -212 -56.5t-153.5 -153.5t-56.5 -212t56.5 -212 t153.5 -153.5t212 -56.5t212 56.5t153.5 153.5t56.5 212t-56.5 212t-153.5 153.5t-212 56.5zM600 794q80 0 137 -57t57 -137t-57 -137t-137 -57t-137 57t-57 137t57 137t137 57z" /> +<glyph unicode="&#xe166;" d="M450 1200h200q21 0 35.5 -14.5t14.5 -35.5v-350h245q20 0 25 -11t-9 -26l-383 -426q-14 -15 -33.5 -15t-32.5 15l-379 426q-13 15 -8.5 26t25.5 11h250v350q0 21 14.5 35.5t35.5 14.5zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5z M900 200v-50h100v50h-100z" /> +<glyph unicode="&#xe167;" d="M583 1182l378 -435q14 -15 9 -31t-26 -16h-244v-250q0 -20 -17 -35t-39 -15h-200q-20 0 -32 14.5t-12 35.5v250h-250q-20 0 -25.5 16.5t8.5 31.5l383 431q14 16 33.5 17t33.5 -14zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5z M900 200v-50h100v50h-100z" /> +<glyph unicode="&#xe168;" d="M396 723l369 369q7 7 17.5 7t17.5 -7l139 -139q7 -8 7 -18.5t-7 -17.5l-525 -525q-7 -8 -17.5 -8t-17.5 8l-292 291q-7 8 -7 18t7 18l139 139q8 7 18.5 7t17.5 -7zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50 h-100z" /> +<glyph unicode="&#xe169;" d="M135 1023l142 142q14 14 35 14t35 -14l77 -77l-212 -212l-77 76q-14 15 -14 36t14 35zM655 855l210 210q14 14 24.5 10t10.5 -25l-2 -599q-1 -20 -15.5 -35t-35.5 -15l-597 -1q-21 0 -25 10.5t10 24.5l208 208l-154 155l212 212zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5 v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50h-100z" /> +<glyph unicode="&#xe170;" d="M350 1200l599 -2q20 -1 35 -15.5t15 -35.5l1 -597q0 -21 -10.5 -25t-24.5 10l-208 208l-155 -154l-212 212l155 154l-210 210q-14 14 -10 24.5t25 10.5zM524 512l-76 -77q-15 -14 -36 -14t-35 14l-142 142q-14 14 -14 35t14 35l77 77zM50 300h1000q21 0 35.5 -14.5 t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50h-100z" /> +<glyph unicode="&#xe171;" d="M1200 103l-483 276l-314 -399v423h-399l1196 796v-1096zM483 424v-230l683 953z" /> +<glyph unicode="&#xe172;" d="M1100 1000v-850q0 -21 -14.5 -35.5t-35.5 -14.5h-150v400h-700v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200z" /> +<glyph unicode="&#xe173;" d="M1100 1000l-2 -149l-299 -299l-95 95q-9 9 -21.5 9t-21.5 -9l-149 -147h-312v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM1132 638l106 -106q7 -7 7 -17.5t-7 -17.5l-420 -421q-8 -7 -18 -7 t-18 7l-202 203q-8 7 -8 17.5t8 17.5l106 106q7 8 17.5 8t17.5 -8l79 -79l297 297q7 7 17.5 7t17.5 -7z" /> +<glyph unicode="&#xe174;" d="M1100 1000v-269l-103 -103l-134 134q-15 15 -33.5 16.5t-34.5 -12.5l-266 -266h-329v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM1202 572l70 -70q15 -15 15 -35.5t-15 -35.5l-131 -131 l131 -131q15 -15 15 -35.5t-15 -35.5l-70 -70q-15 -15 -35.5 -15t-35.5 15l-131 131l-131 -131q-15 -15 -35.5 -15t-35.5 15l-70 70q-15 15 -15 35.5t15 35.5l131 131l-131 131q-15 15 -15 35.5t15 35.5l70 70q15 15 35.5 15t35.5 -15l131 -131l131 131q15 15 35.5 15 t35.5 -15z" /> +<glyph unicode="&#xe175;" d="M1100 1000v-300h-350q-21 0 -35.5 -14.5t-14.5 -35.5v-150h-500v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM850 600h100q21 0 35.5 -14.5t14.5 -35.5v-250h150q21 0 25 -10.5t-10 -24.5 l-230 -230q-14 -14 -35 -14t-35 14l-230 230q-14 14 -10 24.5t25 10.5h150v250q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe176;" d="M1100 1000v-400l-165 165q-14 15 -35 15t-35 -15l-263 -265h-402v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM935 565l230 -229q14 -15 10 -25.5t-25 -10.5h-150v-250q0 -20 -14.5 -35 t-35.5 -15h-100q-21 0 -35.5 15t-14.5 35v250h-150q-21 0 -25 10.5t10 25.5l230 229q14 15 35 15t35 -15z" /> +<glyph unicode="&#xe177;" d="M50 1100h1100q21 0 35.5 -14.5t14.5 -35.5v-150h-1200v150q0 21 14.5 35.5t35.5 14.5zM1200 800v-550q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v550h1200zM100 500v-200h400v200h-400z" /> +<glyph unicode="&#xe178;" d="M935 1165l248 -230q14 -14 14 -35t-14 -35l-248 -230q-14 -14 -24.5 -10t-10.5 25v150h-400v200h400v150q0 21 10.5 25t24.5 -10zM200 800h-50q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v-200zM400 800h-100v200h100v-200zM18 435l247 230 q14 14 24.5 10t10.5 -25v-150h400v-200h-400v-150q0 -21 -10.5 -25t-24.5 10l-247 230q-15 14 -15 35t15 35zM900 300h-100v200h100v-200zM1000 500h51q20 0 34.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-34.5 -14.5h-51v200z" /> +<glyph unicode="&#xe179;" d="M862 1073l276 116q25 18 43.5 8t18.5 -41v-1106q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v397q-4 1 -11 5t-24 17.5t-30 29t-24 42t-11 56.5v359q0 31 18.5 65t43.5 52zM550 1200q22 0 34.5 -12.5t14.5 -24.5l1 -13v-450q0 -28 -10.5 -59.5 t-25 -56t-29 -45t-25.5 -31.5l-10 -11v-447q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v447q-4 4 -11 11.5t-24 30.5t-30 46t-24 55t-11 60v450q0 2 0.5 5.5t4 12t8.5 15t14.5 12t22.5 5.5q20 0 32.5 -12.5t14.5 -24.5l3 -13v-350h100v350v5.5t2.5 12 t7 15t15 12t25.5 5.5q23 0 35.5 -12.5t13.5 -24.5l1 -13v-350h100v350q0 2 0.5 5.5t3 12t7 15t15 12t24.5 5.5z" /> +<glyph unicode="&#xe180;" d="M1200 1100v-56q-4 0 -11 -0.5t-24 -3t-30 -7.5t-24 -15t-11 -24v-888q0 -22 25 -34.5t50 -13.5l25 -2v-56h-400v56q75 0 87.5 6.5t12.5 43.5v394h-500v-394q0 -37 12.5 -43.5t87.5 -6.5v-56h-400v56q4 0 11 0.5t24 3t30 7.5t24 15t11 24v888q0 22 -25 34.5t-50 13.5 l-25 2v56h400v-56q-75 0 -87.5 -6.5t-12.5 -43.5v-394h500v394q0 37 -12.5 43.5t-87.5 6.5v56h400z" /> +<glyph unicode="&#xe181;" d="M675 1000h375q21 0 35.5 -14.5t14.5 -35.5v-150h-105l-295 -98v98l-200 200h-400l100 100h375zM100 900h300q41 0 70.5 -29.5t29.5 -70.5v-500q0 -41 -29.5 -70.5t-70.5 -29.5h-300q-41 0 -70.5 29.5t-29.5 70.5v500q0 41 29.5 70.5t70.5 29.5zM100 800v-200h300v200 h-300zM1100 535l-400 -133v163l400 133v-163zM100 500v-200h300v200h-300zM1100 398v-248q0 -21 -14.5 -35.5t-35.5 -14.5h-375l-100 -100h-375l-100 100h400l200 200h105z" /> +<glyph unicode="&#xe182;" d="M17 1007l162 162q17 17 40 14t37 -22l139 -194q14 -20 11 -44.5t-20 -41.5l-119 -118q102 -142 228 -268t267 -227l119 118q17 17 42.5 19t44.5 -12l192 -136q19 -14 22.5 -37.5t-13.5 -40.5l-163 -162q-3 -1 -9.5 -1t-29.5 2t-47.5 6t-62.5 14.5t-77.5 26.5t-90 42.5 t-101.5 60t-111 83t-119 108.5q-74 74 -133.5 150.5t-94.5 138.5t-60 119.5t-34.5 100t-15 74.5t-4.5 48z" /> +<glyph unicode="&#xe183;" d="M600 1100q92 0 175 -10.5t141.5 -27t108.5 -36.5t81.5 -40t53.5 -37t31 -27l9 -10v-200q0 -21 -14.5 -33t-34.5 -9l-202 34q-20 3 -34.5 20t-14.5 38v146q-141 24 -300 24t-300 -24v-146q0 -21 -14.5 -38t-34.5 -20l-202 -34q-20 -3 -34.5 9t-14.5 33v200q3 4 9.5 10.5 t31 26t54 37.5t80.5 39.5t109 37.5t141 26.5t175 10.5zM600 795q56 0 97 -9.5t60 -23.5t30 -28t12 -24l1 -10v-50l365 -303q14 -15 24.5 -40t10.5 -45v-212q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v212q0 20 10.5 45t24.5 40l365 303v50 q0 4 1 10.5t12 23t30 29t60 22.5t97 10z" /> +<glyph unicode="&#xe184;" d="M1100 700l-200 -200h-600l-200 200v500h200v-200h200v200h200v-200h200v200h200v-500zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-12l137 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5 t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe185;" d="M700 1100h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-1000h300v1000q0 41 -29.5 70.5t-70.5 29.5zM1100 800h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-700h300v700q0 41 -29.5 70.5t-70.5 29.5zM400 0h-300v400q0 41 29.5 70.5t70.5 29.5h100q41 0 70.5 -29.5t29.5 -70.5v-400z " /> +<glyph unicode="&#xe186;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-100h200v-300h-300v100h200v100h-200v300h300v-100zM900 700v-300l-100 -100h-200v500h200z M700 700v-300h100v300h-100z" /> +<glyph unicode="&#xe187;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 300h-100v200h-100v-200h-100v500h100v-200h100v200h100v-500zM900 700v-300l-100 -100h-200v500h200z M700 700v-300h100v300h-100z" /> +<glyph unicode="&#xe188;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-300h200v-100h-300v500h300v-100zM900 700h-200v-300h200v-100h-300v500h300v-100z" /> +<glyph unicode="&#xe189;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 400l-300 150l300 150v-300zM900 550l-300 -150v300z" /> +<glyph unicode="&#xe190;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM900 300h-700v500h700v-500zM800 700h-130q-38 0 -66.5 -43t-28.5 -108t27 -107t68 -42h130v300zM300 700v-300 h130q41 0 68 42t27 107t-28.5 108t-66.5 43h-130z" /> +<glyph unicode="&#xe191;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-100h200v-300h-300v100h200v100h-200v300h300v-100zM900 300h-100v400h-100v100h200v-500z M700 300h-100v100h100v-100z" /> +<glyph unicode="&#xe192;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM300 700h200v-400h-300v500h100v-100zM900 300h-100v400h-100v100h200v-500zM300 600v-200h100v200h-100z M700 300h-100v100h100v-100z" /> +<glyph unicode="&#xe193;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 500l-199 -200h-100v50l199 200v150h-200v100h300v-300zM900 300h-100v400h-100v100h200v-500zM701 300h-100 v100h100v-100z" /> +<glyph unicode="&#xe194;" d="M600 1191q120 0 229.5 -47t188.5 -126t126 -188.5t47 -229.5t-47 -229.5t-126 -188.5t-188.5 -126t-229.5 -47t-229.5 47t-188.5 126t-126 188.5t-47 229.5t47 229.5t126 188.5t188.5 126t229.5 47zM600 1021q-114 0 -211 -56.5t-153.5 -153.5t-56.5 -211t56.5 -211 t153.5 -153.5t211 -56.5t211 56.5t153.5 153.5t56.5 211t-56.5 211t-153.5 153.5t-211 56.5zM800 700h-300v-200h300v-100h-300l-100 100v200l100 100h300v-100z" /> +<glyph unicode="&#xe195;" d="M600 1191q120 0 229.5 -47t188.5 -126t126 -188.5t47 -229.5t-47 -229.5t-126 -188.5t-188.5 -126t-229.5 -47t-229.5 47t-188.5 126t-126 188.5t-47 229.5t47 229.5t126 188.5t188.5 126t229.5 47zM600 1021q-114 0 -211 -56.5t-153.5 -153.5t-56.5 -211t56.5 -211 t153.5 -153.5t211 -56.5t211 56.5t153.5 153.5t56.5 211t-56.5 211t-153.5 153.5t-211 56.5zM800 700v-100l-50 -50l100 -100v-50h-100l-100 100h-150v-100h-100v400h300zM500 700v-100h200v100h-200z" /> +<glyph unicode="&#xe197;" d="M503 1089q110 0 200.5 -59.5t134.5 -156.5q44 14 90 14q120 0 205 -86.5t85 -207t-85 -207t-205 -86.5h-128v250q0 21 -14.5 35.5t-35.5 14.5h-300q-21 0 -35.5 -14.5t-14.5 -35.5v-250h-222q-80 0 -136 57.5t-56 136.5q0 69 43 122.5t108 67.5q-2 19 -2 37q0 100 49 185 t134 134t185 49zM525 500h150q10 0 17.5 -7.5t7.5 -17.5v-275h137q21 0 26 -11.5t-8 -27.5l-223 -244q-13 -16 -32 -16t-32 16l-223 244q-13 16 -8 27.5t26 11.5h137v275q0 10 7.5 17.5t17.5 7.5z" /> +<glyph unicode="&#xe198;" d="M502 1089q110 0 201 -59.5t135 -156.5q43 15 89 15q121 0 206 -86.5t86 -206.5q0 -99 -60 -181t-150 -110l-378 360q-13 16 -31.5 16t-31.5 -16l-381 -365h-9q-79 0 -135.5 57.5t-56.5 136.5q0 69 43 122.5t108 67.5q-2 19 -2 38q0 100 49 184.5t133.5 134t184.5 49.5z M632 467l223 -228q13 -16 8 -27.5t-26 -11.5h-137v-275q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v275h-137q-21 0 -26 11.5t8 27.5q199 204 223 228q19 19 31.5 19t32.5 -19z" /> +<glyph unicode="&#xe199;" d="M700 100v100h400l-270 300h170l-270 300h170l-300 333l-300 -333h170l-270 -300h170l-270 -300h400v-100h-50q-21 0 -35.5 -14.5t-14.5 -35.5v-50h400v50q0 21 -14.5 35.5t-35.5 14.5h-50z" /> +<glyph unicode="&#xe200;" d="M600 1179q94 0 167.5 -56.5t99.5 -145.5q89 -6 150.5 -71.5t61.5 -155.5q0 -61 -29.5 -112.5t-79.5 -82.5q9 -29 9 -55q0 -74 -52.5 -126.5t-126.5 -52.5q-55 0 -100 30v-251q21 0 35.5 -14.5t14.5 -35.5v-50h-300v50q0 21 14.5 35.5t35.5 14.5v251q-45 -30 -100 -30 q-74 0 -126.5 52.5t-52.5 126.5q0 18 4 38q-47 21 -75.5 65t-28.5 97q0 74 52.5 126.5t126.5 52.5q5 0 23 -2q0 2 -1 10t-1 13q0 116 81.5 197.5t197.5 81.5z" /> +<glyph unicode="&#xe201;" d="M1010 1010q111 -111 150.5 -260.5t0 -299t-150.5 -260.5q-83 -83 -191.5 -126.5t-218.5 -43.5t-218.5 43.5t-191.5 126.5q-111 111 -150.5 260.5t0 299t150.5 260.5q83 83 191.5 126.5t218.5 43.5t218.5 -43.5t191.5 -126.5zM476 1065q-4 0 -8 -1q-121 -34 -209.5 -122.5 t-122.5 -209.5q-4 -12 2.5 -23t18.5 -14l36 -9q3 -1 7 -1q23 0 29 22q27 96 98 166q70 71 166 98q11 3 17.5 13.5t3.5 22.5l-9 35q-3 13 -14 19q-7 4 -15 4zM512 920q-4 0 -9 -2q-80 -24 -138.5 -82.5t-82.5 -138.5q-4 -13 2 -24t19 -14l34 -9q4 -1 8 -1q22 0 28 21 q18 58 58.5 98.5t97.5 58.5q12 3 18 13.5t3 21.5l-9 35q-3 12 -14 19q-7 4 -15 4zM719.5 719.5q-49.5 49.5 -119.5 49.5t-119.5 -49.5t-49.5 -119.5t49.5 -119.5t119.5 -49.5t119.5 49.5t49.5 119.5t-49.5 119.5zM855 551q-22 0 -28 -21q-18 -58 -58.5 -98.5t-98.5 -57.5 q-11 -4 -17 -14.5t-3 -21.5l9 -35q3 -12 14 -19q7 -4 15 -4q4 0 9 2q80 24 138.5 82.5t82.5 138.5q4 13 -2.5 24t-18.5 14l-34 9q-4 1 -8 1zM1000 515q-23 0 -29 -22q-27 -96 -98 -166q-70 -71 -166 -98q-11 -3 -17.5 -13.5t-3.5 -22.5l9 -35q3 -13 14 -19q7 -4 15 -4 q4 0 8 1q121 34 209.5 122.5t122.5 209.5q4 12 -2.5 23t-18.5 14l-36 9q-3 1 -7 1z" /> +<glyph unicode="&#xe202;" d="M700 800h300v-380h-180v200h-340v-200h-380v755q0 10 7.5 17.5t17.5 7.5h575v-400zM1000 900h-200v200zM700 300h162l-212 -212l-212 212h162v200h100v-200zM520 0h-395q-10 0 -17.5 7.5t-7.5 17.5v395zM1000 220v-195q0 -10 -7.5 -17.5t-17.5 -7.5h-195z" /> +<glyph unicode="&#xe203;" d="M700 800h300v-520l-350 350l-550 -550v1095q0 10 7.5 17.5t17.5 7.5h575v-400zM1000 900h-200v200zM862 200h-162v-200h-100v200h-162l212 212zM480 0h-355q-10 0 -17.5 7.5t-7.5 17.5v55h380v-80zM1000 80v-55q0 -10 -7.5 -17.5t-17.5 -7.5h-155v80h180z" /> +<glyph unicode="&#xe204;" d="M1162 800h-162v-200h100l100 -100h-300v300h-162l212 212zM200 800h200q27 0 40 -2t29.5 -10.5t23.5 -30t7 -57.5h300v-100h-600l-200 -350v450h100q0 36 7 57.5t23.5 30t29.5 10.5t40 2zM800 400h240l-240 -400h-800l300 500h500v-100z" /> +<glyph unicode="&#xe205;" d="M650 1100h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5zM1000 850v150q41 0 70.5 -29.5t29.5 -70.5v-800 q0 -41 -29.5 -70.5t-70.5 -29.5h-600q-1 0 -20 4l246 246l-326 326v324q0 41 29.5 70.5t70.5 29.5v-150q0 -62 44 -106t106 -44h300q62 0 106 44t44 106zM412 250l-212 -212v162h-200v100h200v162z" /> +<glyph unicode="&#xe206;" d="M450 1100h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5zM800 850v150q41 0 70.5 -29.5t29.5 -70.5v-500 h-200v-300h200q0 -36 -7 -57.5t-23.5 -30t-29.5 -10.5t-40 -2h-600q-41 0 -70.5 29.5t-29.5 70.5v800q0 41 29.5 70.5t70.5 29.5v-150q0 -62 44 -106t106 -44h300q62 0 106 44t44 106zM1212 250l-212 -212v162h-200v100h200v162z" /> +<glyph unicode="&#xe209;" d="M658 1197l637 -1104q23 -38 7 -65.5t-60 -27.5h-1276q-44 0 -60 27.5t7 65.5l637 1104q22 39 54 39t54 -39zM704 800h-208q-20 0 -32 -14.5t-8 -34.5l58 -302q4 -20 21.5 -34.5t37.5 -14.5h54q20 0 37.5 14.5t21.5 34.5l58 302q4 20 -8 34.5t-32 14.5zM500 300v-100h200 v100h-200z" /> +<glyph unicode="&#xe210;" d="M425 1100h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM425 800h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5 t17.5 7.5zM825 800h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM25 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150 q0 10 7.5 17.5t17.5 7.5zM425 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM825 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5 v150q0 10 7.5 17.5t17.5 7.5zM25 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM425 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5 t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM825 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" /> +<glyph unicode="&#xe211;" d="M700 1200h100v-200h-100v-100h350q62 0 86.5 -39.5t-3.5 -94.5l-66 -132q-41 -83 -81 -134h-772q-40 51 -81 134l-66 132q-28 55 -3.5 94.5t86.5 39.5h350v100h-100v200h100v100h200v-100zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-12l137 -100 h-950l138 100h-13q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe212;" d="M600 1300q40 0 68.5 -29.5t28.5 -70.5h-194q0 41 28.5 70.5t68.5 29.5zM443 1100h314q18 -37 18 -75q0 -8 -3 -25h328q41 0 44.5 -16.5t-30.5 -38.5l-175 -145h-678l-178 145q-34 22 -29 38.5t46 16.5h328q-3 17 -3 25q0 38 18 75zM250 700h700q21 0 35.5 -14.5 t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-150v-200l275 -200h-950l275 200v200h-150q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe213;" d="M600 1181q75 0 128 -53t53 -128t-53 -128t-128 -53t-128 53t-53 128t53 128t128 53zM602 798h46q34 0 55.5 -28.5t21.5 -86.5q0 -76 39 -183h-324q39 107 39 183q0 58 21.5 86.5t56.5 28.5h45zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13 l138 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe214;" d="M600 1300q47 0 92.5 -53.5t71 -123t25.5 -123.5q0 -78 -55.5 -133.5t-133.5 -55.5t-133.5 55.5t-55.5 133.5q0 62 34 143l144 -143l111 111l-163 163q34 26 63 26zM602 798h46q34 0 55.5 -28.5t21.5 -86.5q0 -76 39 -183h-324q39 107 39 183q0 58 21.5 86.5t56.5 28.5h45 zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13l138 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe215;" d="M600 1200l300 -161v-139h-300q0 -57 18.5 -108t50 -91.5t63 -72t70 -67.5t57.5 -61h-530q-60 83 -90.5 177.5t-30.5 178.5t33 164.5t87.5 139.5t126 96.5t145.5 41.5v-98zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13l138 -100h-950l137 100 h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe216;" d="M600 1300q41 0 70.5 -29.5t29.5 -70.5v-78q46 -26 73 -72t27 -100v-50h-400v50q0 54 27 100t73 72v78q0 41 29.5 70.5t70.5 29.5zM400 800h400q54 0 100 -27t72 -73h-172v-100h200v-100h-200v-100h200v-100h-200v-100h200q0 -83 -58.5 -141.5t-141.5 -58.5h-400 q-83 0 -141.5 58.5t-58.5 141.5v400q0 83 58.5 141.5t141.5 58.5z" /> +<glyph unicode="&#xe218;" d="M150 1100h900q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5zM125 400h950q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-283l224 -224q13 -13 13 -31.5t-13 -32 t-31.5 -13.5t-31.5 13l-88 88h-524l-87 -88q-13 -13 -32 -13t-32 13.5t-13 32t13 31.5l224 224h-289q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM541 300l-100 -100h324l-100 100h-124z" /> +<glyph unicode="&#xe219;" d="M200 1100h800q83 0 141.5 -58.5t58.5 -141.5v-200h-100q0 41 -29.5 70.5t-70.5 29.5h-250q-41 0 -70.5 -29.5t-29.5 -70.5h-100q0 41 -29.5 70.5t-70.5 29.5h-250q-41 0 -70.5 -29.5t-29.5 -70.5h-100v200q0 83 58.5 141.5t141.5 58.5zM100 600h1000q41 0 70.5 -29.5 t29.5 -70.5v-300h-1200v300q0 41 29.5 70.5t70.5 29.5zM300 100v-50q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v50h200zM1100 100v-50q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v50h200z" /> +<glyph unicode="&#xe221;" d="M480 1165l682 -683q31 -31 31 -75.5t-31 -75.5l-131 -131h-481l-517 518q-32 31 -32 75.5t32 75.5l295 296q31 31 75.5 31t76.5 -31zM108 794l342 -342l303 304l-341 341zM250 100h800q21 0 35.5 -14.5t14.5 -35.5v-50h-900v50q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe223;" d="M1057 647l-189 506q-8 19 -27.5 33t-40.5 14h-400q-21 0 -40.5 -14t-27.5 -33l-189 -506q-8 -19 1.5 -33t30.5 -14h625v-150q0 -21 14.5 -35.5t35.5 -14.5t35.5 14.5t14.5 35.5v150h125q21 0 30.5 14t1.5 33zM897 0h-595v50q0 21 14.5 35.5t35.5 14.5h50v50 q0 21 14.5 35.5t35.5 14.5h48v300h200v-300h47q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-50z" /> +<glyph unicode="&#xe224;" d="M900 800h300v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-375v591l-300 300v84q0 10 7.5 17.5t17.5 7.5h375v-400zM1200 900h-200v200zM400 600h300v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-650q-10 0 -17.5 7.5t-7.5 17.5v950q0 10 7.5 17.5t17.5 7.5h375v-400zM700 700h-200v200z " /> +<glyph unicode="&#xe225;" d="M484 1095h195q75 0 146 -32.5t124 -86t89.5 -122.5t48.5 -142q18 -14 35 -20q31 -10 64.5 6.5t43.5 48.5q10 34 -15 71q-19 27 -9 43q5 8 12.5 11t19 -1t23.5 -16q41 -44 39 -105q-3 -63 -46 -106.5t-104 -43.5h-62q-7 -55 -35 -117t-56 -100l-39 -234q-3 -20 -20 -34.5 t-38 -14.5h-100q-21 0 -33 14.5t-9 34.5l12 70q-49 -14 -91 -14h-195q-24 0 -65 8l-11 -64q-3 -20 -20 -34.5t-38 -14.5h-100q-21 0 -33 14.5t-9 34.5l26 157q-84 74 -128 175l-159 53q-19 7 -33 26t-14 40v50q0 21 14.5 35.5t35.5 14.5h124q11 87 56 166l-111 95 q-16 14 -12.5 23.5t24.5 9.5h203q116 101 250 101zM675 1000h-250q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h250q10 0 17.5 7.5t7.5 17.5v50q0 10 -7.5 17.5t-17.5 7.5z" /> +<glyph unicode="&#xe226;" d="M641 900l423 247q19 8 42 2.5t37 -21.5l32 -38q14 -15 12.5 -36t-17.5 -34l-139 -120h-390zM50 1100h106q67 0 103 -17t66 -71l102 -212h823q21 0 35.5 -14.5t14.5 -35.5v-50q0 -21 -14 -40t-33 -26l-737 -132q-23 -4 -40 6t-26 25q-42 67 -100 67h-300q-62 0 -106 44 t-44 106v200q0 62 44 106t106 44zM173 928h-80q-19 0 -28 -14t-9 -35v-56q0 -51 42 -51h134q16 0 21.5 8t5.5 24q0 11 -16 45t-27 51q-18 28 -43 28zM550 727q-32 0 -54.5 -22.5t-22.5 -54.5t22.5 -54.5t54.5 -22.5t54.5 22.5t22.5 54.5t-22.5 54.5t-54.5 22.5zM130 389 l152 130q18 19 34 24t31 -3.5t24.5 -17.5t25.5 -28q28 -35 50.5 -51t48.5 -13l63 5l48 -179q13 -61 -3.5 -97.5t-67.5 -79.5l-80 -69q-47 -40 -109 -35.5t-103 51.5l-130 151q-40 47 -35.5 109.5t51.5 102.5zM380 377l-102 -88q-31 -27 2 -65l37 -43q13 -15 27.5 -19.5 t31.5 6.5l61 53q19 16 14 49q-2 20 -12 56t-17 45q-11 12 -19 14t-23 -8z" /> +<glyph unicode="&#xe227;" d="M625 1200h150q10 0 17.5 -7.5t7.5 -17.5v-109q79 -33 131 -87.5t53 -128.5q1 -46 -15 -84.5t-39 -61t-46 -38t-39 -21.5l-17 -6q6 0 15 -1.5t35 -9t50 -17.5t53 -30t50 -45t35.5 -64t14.5 -84q0 -59 -11.5 -105.5t-28.5 -76.5t-44 -51t-49.5 -31.5t-54.5 -16t-49.5 -6.5 t-43.5 -1v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-100v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-175q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h75v600h-75q-10 0 -17.5 7.5t-7.5 17.5v150 q0 10 7.5 17.5t17.5 7.5h175v75q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-75h100v75q0 10 7.5 17.5t17.5 7.5zM400 900v-200h263q28 0 48.5 10.5t30 25t15 29t5.5 25.5l1 10q0 4 -0.5 11t-6 24t-15 30t-30 24t-48.5 11h-263zM400 500v-200h363q28 0 48.5 10.5 t30 25t15 29t5.5 25.5l1 10q0 4 -0.5 11t-6 24t-15 30t-30 24t-48.5 11h-363z" /> +<glyph unicode="&#xe230;" d="M212 1198h780q86 0 147 -61t61 -147v-416q0 -51 -18 -142.5t-36 -157.5l-18 -66q-29 -87 -93.5 -146.5t-146.5 -59.5h-572q-82 0 -147 59t-93 147q-8 28 -20 73t-32 143.5t-20 149.5v416q0 86 61 147t147 61zM600 1045q-70 0 -132.5 -11.5t-105.5 -30.5t-78.5 -41.5 t-57 -45t-36 -41t-20.5 -30.5l-6 -12l156 -243h560l156 243q-2 5 -6 12.5t-20 29.5t-36.5 42t-57 44.5t-79 42t-105 29.5t-132.5 12zM762 703h-157l195 261z" /> +<glyph unicode="&#xe231;" d="M475 1300h150q103 0 189 -86t86 -189v-500q0 -41 -42 -83t-83 -42h-450q-41 0 -83 42t-42 83v500q0 103 86 189t189 86zM700 300v-225q0 -21 -27 -48t-48 -27h-150q-21 0 -48 27t-27 48v225h300z" /> +<glyph unicode="&#xe232;" d="M475 1300h96q0 -150 89.5 -239.5t239.5 -89.5v-446q0 -41 -42 -83t-83 -42h-450q-41 0 -83 42t-42 83v500q0 103 86 189t189 86zM700 300v-225q0 -21 -27 -48t-48 -27h-150q-21 0 -48 27t-27 48v225h300z" /> +<glyph unicode="&#xe233;" d="M1294 767l-638 -283l-378 170l-78 -60v-224l100 -150v-199l-150 148l-150 -149v200l100 150v250q0 4 -0.5 10.5t0 9.5t1 8t3 8t6.5 6l47 40l-147 65l642 283zM1000 380l-350 -166l-350 166v147l350 -165l350 165v-147z" /> +<glyph unicode="&#xe234;" d="M250 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM650 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM1050 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44z" /> +<glyph unicode="&#xe235;" d="M550 1100q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM550 700q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM550 300q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44z" /> +<glyph unicode="&#xe236;" d="M125 1100h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM125 700h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5 t17.5 7.5zM125 300h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" /> +<glyph unicode="&#xe237;" d="M350 1200h500q162 0 256 -93.5t94 -256.5v-500q0 -165 -93.5 -257.5t-256.5 -92.5h-500q-165 0 -257.5 92.5t-92.5 257.5v500q0 165 92.5 257.5t257.5 92.5zM900 1000h-600q-41 0 -70.5 -29.5t-29.5 -70.5v-600q0 -41 29.5 -70.5t70.5 -29.5h600q41 0 70.5 29.5 t29.5 70.5v600q0 41 -29.5 70.5t-70.5 29.5zM350 900h500q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -14.5 -35.5t-35.5 -14.5h-500q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 14.5 35.5t35.5 14.5zM400 800v-200h400v200h-400z" /> +<glyph unicode="&#xe238;" d="M150 1100h1000q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5 t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe239;" d="M650 1187q87 -67 118.5 -156t0 -178t-118.5 -155q-87 66 -118.5 155t0 178t118.5 156zM300 800q124 0 212 -88t88 -212q-124 0 -212 88t-88 212zM1000 800q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM300 500q124 0 212 -88t88 -212q-124 0 -212 88t-88 212z M1000 500q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM700 199v-144q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v142q40 -4 43 -4q17 0 57 6z" /> +<glyph unicode="&#xe240;" d="M745 878l69 19q25 6 45 -12l298 -295q11 -11 15 -26.5t-2 -30.5q-5 -14 -18 -23.5t-28 -9.5h-8q1 0 1 -13q0 -29 -2 -56t-8.5 -62t-20 -63t-33 -53t-51 -39t-72.5 -14h-146q-184 0 -184 288q0 24 10 47q-20 4 -62 4t-63 -4q11 -24 11 -47q0 -288 -184 -288h-142 q-48 0 -84.5 21t-56 51t-32 71.5t-16 75t-3.5 68.5q0 13 2 13h-7q-15 0 -27.5 9.5t-18.5 23.5q-6 15 -2 30.5t15 25.5l298 296q20 18 46 11l76 -19q20 -5 30.5 -22.5t5.5 -37.5t-22.5 -31t-37.5 -5l-51 12l-182 -193h891l-182 193l-44 -12q-20 -5 -37.5 6t-22.5 31t6 37.5 t31 22.5z" /> +<glyph unicode="&#xe241;" d="M1200 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-850q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v850h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM500 450h-25q0 15 -4 24.5t-9 14.5t-17 7.5t-20 3t-25 0.5h-100v-425q0 -11 12.5 -17.5t25.5 -7.5h12v-50h-200v50q50 0 50 25v425h-100q-17 0 -25 -0.5t-20 -3t-17 -7.5t-9 -14.5t-4 -24.5h-25v150h500v-150z" /> +<glyph unicode="&#xe242;" d="M1000 300v50q-25 0 -55 32q-14 14 -25 31t-16 27l-4 11l-289 747h-69l-300 -754q-18 -35 -39 -56q-9 -9 -24.5 -18.5t-26.5 -14.5l-11 -5v-50h273v50q-49 0 -78.5 21.5t-11.5 67.5l69 176h293l61 -166q13 -34 -3.5 -66.5t-55.5 -32.5v-50h312zM412 691l134 342l121 -342 h-255zM1100 150v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5z" /> +<glyph unicode="&#xe243;" d="M50 1200h1100q21 0 35.5 -14.5t14.5 -35.5v-1100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v1100q0 21 14.5 35.5t35.5 14.5zM611 1118h-70q-13 0 -18 -12l-299 -753q-17 -32 -35 -51q-18 -18 -56 -34q-12 -5 -12 -18v-50q0 -8 5.5 -14t14.5 -6 h273q8 0 14 6t6 14v50q0 8 -6 14t-14 6q-55 0 -71 23q-10 14 0 39l63 163h266l57 -153q11 -31 -6 -55q-12 -17 -36 -17q-8 0 -14 -6t-6 -14v-50q0 -8 6 -14t14 -6h313q8 0 14 6t6 14v50q0 7 -5.5 13t-13.5 7q-17 0 -42 25q-25 27 -40 63h-1l-288 748q-5 12 -19 12zM639 611 h-197l103 264z" /> +<glyph unicode="&#xe244;" d="M1200 1100h-1200v100h1200v-100zM50 1000h400q21 0 35.5 -14.5t14.5 -35.5v-900q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v900q0 21 14.5 35.5t35.5 14.5zM650 1000h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM700 900v-300h300v300h-300z" /> +<glyph unicode="&#xe245;" d="M50 1200h400q21 0 35.5 -14.5t14.5 -35.5v-900q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v900q0 21 14.5 35.5t35.5 14.5zM650 700h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400 q0 21 14.5 35.5t35.5 14.5zM700 600v-300h300v300h-300zM1200 0h-1200v100h1200v-100z" /> +<glyph unicode="&#xe246;" d="M50 1000h400q21 0 35.5 -14.5t14.5 -35.5v-350h100v150q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-150h100v-100h-100v-150q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v150h-100v-350q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5zM700 700v-300h300v300h-300z" /> +<glyph unicode="&#xe247;" d="M100 0h-100v1200h100v-1200zM250 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM300 1000v-300h300v300h-300zM250 500h900q21 0 35.5 -14.5t14.5 -35.5v-400 q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe248;" d="M600 1100h150q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-150v-100h450q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5h350v100h-150q-21 0 -35.5 14.5 t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5h150v100h100v-100zM400 1000v-300h300v300h-300z" /> +<glyph unicode="&#xe249;" d="M1200 0h-100v1200h100v-1200zM550 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM600 1000v-300h300v300h-300zM50 500h900q21 0 35.5 -14.5t14.5 -35.5v-400 q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" /> +<glyph unicode="&#xe250;" d="M865 565l-494 -494q-23 -23 -41 -23q-14 0 -22 13.5t-8 38.5v1000q0 25 8 38.5t22 13.5q18 0 41 -23l494 -494q14 -14 14 -35t-14 -35z" /> +<glyph unicode="&#xe251;" d="M335 635l494 494q29 29 50 20.5t21 -49.5v-1000q0 -41 -21 -49.5t-50 20.5l-494 494q-14 14 -14 35t14 35z" /> +<glyph unicode="&#xe252;" d="M100 900h1000q41 0 49.5 -21t-20.5 -50l-494 -494q-14 -14 -35 -14t-35 14l-494 494q-29 29 -20.5 50t49.5 21z" /> +<glyph unicode="&#xe253;" d="M635 865l494 -494q29 -29 20.5 -50t-49.5 -21h-1000q-41 0 -49.5 21t20.5 50l494 494q14 14 35 14t35 -14z" /> +<glyph unicode="&#xe254;" d="M700 741v-182l-692 -323v221l413 193l-413 193v221zM1200 0h-800v200h800v-200z" /> +<glyph unicode="&#xe255;" d="M1200 900h-200v-100h200v-100h-300v300h200v100h-200v100h300v-300zM0 700h50q0 21 4 37t9.5 26.5t18 17.5t22 11t28.5 5.5t31 2t37 0.5h100v-550q0 -22 -25 -34.5t-50 -13.5l-25 -2v-100h400v100q-4 0 -11 0.5t-24 3t-30 7t-24 15t-11 24.5v550h100q25 0 37 -0.5t31 -2 t28.5 -5.5t22 -11t18 -17.5t9.5 -26.5t4 -37h50v300h-800v-300z" /> +<glyph unicode="&#xe256;" d="M800 700h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-100v-550q0 -22 25 -34.5t50 -14.5l25 -1v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v550h-100q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h800v-300zM1100 200h-200v-100h200v-100h-300v300h200v100h-200v100h300v-300z" /> +<glyph unicode="&#xe257;" d="M701 1098h160q16 0 21 -11t-7 -23l-464 -464l464 -464q12 -12 7 -23t-21 -11h-160q-13 0 -23 9l-471 471q-7 8 -7 18t7 18l471 471q10 9 23 9z" /> +<glyph unicode="&#xe258;" d="M339 1098h160q13 0 23 -9l471 -471q7 -8 7 -18t-7 -18l-471 -471q-10 -9 -23 -9h-160q-16 0 -21 11t7 23l464 464l-464 464q-12 12 -7 23t21 11z" /> +<glyph unicode="&#xe259;" d="M1087 882q11 -5 11 -21v-160q0 -13 -9 -23l-471 -471q-8 -7 -18 -7t-18 7l-471 471q-9 10 -9 23v160q0 16 11 21t23 -7l464 -464l464 464q12 12 23 7z" /> +<glyph unicode="&#xe260;" d="M618 993l471 -471q9 -10 9 -23v-160q0 -16 -11 -21t-23 7l-464 464l-464 -464q-12 -12 -23 -7t-11 21v160q0 13 9 23l471 471q8 7 18 7t18 -7z" /> +<glyph unicode="&#xf8ff;" d="M1000 1200q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM450 1000h100q21 0 40 -14t26 -33l79 -194q5 1 16 3q34 6 54 9.5t60 7t65.5 1t61 -10t56.5 -23t42.5 -42t29 -64t5 -92t-19.5 -121.5q-1 -7 -3 -19.5t-11 -50t-20.5 -73t-32.5 -81.5t-46.5 -83t-64 -70 t-82.5 -50q-13 -5 -42 -5t-65.5 2.5t-47.5 2.5q-14 0 -49.5 -3.5t-63 -3.5t-43.5 7q-57 25 -104.5 78.5t-75 111.5t-46.5 112t-26 90l-7 35q-15 63 -18 115t4.5 88.5t26 64t39.5 43.5t52 25.5t58.5 13t62.5 2t59.5 -4.5t55.5 -8l-147 192q-12 18 -5.5 30t27.5 12z" /> +<glyph unicode="&#x1f511;" d="M250 1200h600q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-150v-500l-255 -178q-19 -9 -32 -1t-13 29v650h-150q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM400 1100v-100h300v100h-300z" /> +<glyph unicode="&#x1f6aa;" d="M250 1200h750q39 0 69.5 -40.5t30.5 -84.5v-933l-700 -117v950l600 125h-700v-1000h-100v1025q0 23 15.5 49t34.5 26zM500 525v-100l100 20v100z" /> +</font> +</defs></svg> \ No newline at end of file diff --git a/site/css/font/glyphicons-halflings-regular.ttf b/site/css/font/glyphicons-halflings-regular.ttf new file mode 100644 index 0000000..1413fc6 Binary files /dev/null and b/site/css/font/glyphicons-halflings-regular.ttf differ diff --git a/site/css/font/glyphicons-halflings-regular.woff b/site/css/font/glyphicons-halflings-regular.woff new file mode 100644 index 0000000..9e61285 Binary files /dev/null and b/site/css/font/glyphicons-halflings-regular.woff differ diff --git a/site/css/font/glyphicons-halflings-regular.woff2 b/site/css/font/glyphicons-halflings-regular.woff2 new file mode 100644 index 0000000..64539b5 Binary files /dev/null and b/site/css/font/glyphicons-halflings-regular.woff2 differ diff --git a/site/css/style - Copie [2].css b/site/css/style - Copie [2].css new file mode 100644 index 0000000..728e79e --- /dev/null +++ b/site/css/style - Copie [2].css @@ -0,0 +1,344 @@ +/* FONT */ +@font-face {font-family: "Myriad Pro"; + src: url("font/a89cf050c859a23e4b6d9cf5989acf9e.eot"); /* IE9*/ + src: url("font/a89cf050c859a23e4b6d9cf5989acf9e.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.woff2") format("woff2"), /* chrome、firefox */ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.woff") format("woff"), /* chrome、firefox */ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.svg#Myriad Pro") format("svg"); /* iOS 4.1- */ +} + +@font-face {font-family: "NesoSansProBlack"; + src: url("font/7c9748fba0c14c426a6e934bfa64a7e6.eot"); /* IE9*/ + src: url("font/7c9748fba0c14c426a6e934bfa64a7e6.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.woff2") format("woff2"), /* chrome、firefox */ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.woff") format("woff"), /* chrome、firefox */ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.svg#Neo Sans Pro Cyr W04 Black") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "NesoSansProBold"; + src: url("font/65482afbeb61af43c403d0fec1fdb679.eot"); /* IE9*/ + src: url("font/65482afbeb61af43c403d0fec1fdb679.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/65482afbeb61af43c403d0fec1fdb679.woff2") format("woff2"), /* chrome、firefox */ + url("font/65482afbeb61af43c403d0fec1fdb679.woff") format("woff"), /* chrome、firefox */ + url("font/65482afbeb61af43c403d0fec1fdb679.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/65482afbeb61af43c403d0fec1fdb679.svg#Neo Sans Pro Bold") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "NesoSansProMedium"; + src: url("font/c38f2cc711985becf7550d75271b1175.eot"); /* IE9*/ + src: url("font/c38f2cc711985becf7550d75271b1175.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/c38f2cc711985becf7550d75271b1175.woff2") format("woff2"), /* chrome、firefox */ + url("font/c38f2cc711985becf7550d75271b1175.woff") format("woff"), /* chrome、firefox */ + url("font/c38f2cc711985becf7550d75271b1175.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/c38f2cc711985becf7550d75271b1175.svg#Neo Sans Pro Medium") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "Myriad Pro Bold"; + src: url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.eot"); /* IE9*/ + src: url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff2") format("woff2"), /* chrome、firefox */ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff") format("woff"), /* chrome、firefox */ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.svg#MyriadPro-Bold") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "Aller Display V1"; + src: url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.eot"); /* IE9*/ + src: url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff2") format("woff2"), /* chrome、firefox */ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff") format("woff"), /* chrome、firefox */ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.svg") format("svg"); /* iOS 4.1- */ +} +body{color:#000;padding-top:240px;} +.noPad{padding:0px;} +.padDix{padding:10px;} +/* HEADER */ +.header {width: 100%;position: fixed;z-index: 1000; background-color: #FFF; top:0; +} +.ssTitreViolet{font-size: 18px;color: #87318b;text-align: center;font-family: "Myriad Pro Bold";text-transform: uppercase;margin:18px 0 12px;} +.ssTitreViolet a{font-size: 14px;color: #000;text-transform:none; text-decoration: underline;} +.titreContenuPage { + font-size: 32px; + text-transform: uppercase; + color: #58595b; + font-family: "Aller Display V1"; + text-align: center; +} +.contentPage form {text-align:center; padding-top:30px;} +.contentPage form input{margin-bottom:20px;} +.bgTitrePage { + background: url(../img/fond_titre_contenu.jpg) top left repeat-x; + min-height: 30px; +} +#btnCFA{margin-top:50px;} +#btnBurger{z-index:1001;margin-top:85px} +.imgBtnCFA, .imgBtnMedia{max-width: 190px;margin-bottom: 10px;} +/* NAVBAR */ +.navbar-toggle{position: fixed;padding: 0;margin: 0;background-color:transparent;background-image:none;border: none;} +.navbar-default{background-color: transparent;border-color: transparent;} +.navbar-default .navbar-collapse, .navbar-default .navbar-form{background-color: #fff;} +/* SLIDER */ +.homeSlider{margin-top: -20px;} +.carousel-inner > .item > img{margin:0 auto;} +.carousel-inner > .item{margin:0 auto;} +.left{text-align:right;} +.right{text-align:left;} +.carousel-control img{display: inline-block;position: absolute;top:60%;} +.carousel-control.left, .carousel-control.right{background-image: none;} +.itemAbs{position: absolute;z-index: 100;right: 25%;margin: 0 auto;text-align: center;top: 275px;width: 301px;line-height: 1;} +.itemAbs2{position: absolute;z-index: 100;right: 30%;margin: 0 auto;text-align: center;top: 230px;width: 266px;line-height: 1;} +.separateurSlide{border-color:rgb(65, 64, 66);opacity:0.5;width:55%;margin-top: 20px;margin-bottom: 10px;} +.separateurSlide2{border-color:rgb(65, 64, 66);opacity:0.5;width:55%;margin-top: 20px;margin-bottom: 10px;} +.itemAbs span{font-size:32px;font-family: "Myriad Pro";color:rgb(65, 64, 66);} +.myriadFont{font-size:30px;font-family: "Myriad Pro";color:rgb(65, 64, 66);} +.displayFont{font-size:18px;font-family: "Myriad Pro";color:rgb(65, 64, 66);text-transform: uppercase;} +.carousel-indicators li{width: 10px;height: 10px;background-color: #fff;margin:0;} +.carousel-indicators .active{width: 10px;height: 10px;background-color: rgb(154, 49, 129);border-color:rgb(154, 49, 129);margin:0;} +.carousel-indicators {bottom: -10px;} +#logoCFA{display: block;margin: auto;width: 85%;margin-bottom:5px;} +/* BLOCS */ +.groupBlocs{margin-top: 70px;} +.groupCadre{margin-top: 25px;} +/* Bloc Collèges Lycées */ +.blocText{height: 195px;text-align:center;background-size:cover;} +.blocText.parents{background: url("../img/blocs/backgroundParents.jpg")repeat-y;} +.blocText.jeunes{background: url("../img/blocs/backgroundJeunes.jpg")repeat-y;} +.blocText.colLyc{background: url("../img/blocs/backgroundColLy.jpg")repeat-y;} +.textBloc{padding-top: 10px;} +.titleBloc{color:#fff;text-transform:uppercase;font-family: "NesoSansProBold";font-size: 28px;} +.sepTextBloc{width: 5%;border: 2px solid #fff;margin-top: 5px;margin-bottom: 10px;} +/* Bloc Métiers Hôtel Resto */ +.textBlocMHR{font-size: 17px;font-family: "Myriad Pro Bold";color: rgb(255, 255, 255); line-height:normal;} +/* cadre texte */ +.blocs a{ + text-decoration: none; +} +.blocCadre{ height: 109px; background-repeat: no-repeat;background-size: 100% 100%; max-width: 350px;} +.blocCadre h3{ text-align: center; font-size: 28px; font-family: "NesoSansProBlack"; margin-top: 0; margin-bottom: 0 } +.blocCadre p{ text-align: center; font-size: 28px; font-family: "NesoSansProMedium";} +.cadrePO { + background-image: url(../img/borderPO.png); + color: #af3176; + padding-top: 20px; +} +.cadreDecouvrez { + background-image: url(../img/borderDecouvrez.png); + color : #e03e58; + padding-top: 30px; +} +.cadrePro { + background-image: url(../img/borderPRO.png); + color: #eb9a53; + padding-top: 25px; +} +.cadrePro p{ font-size: 17px; font-family: "Myriad Pro Bold" } +/* Bande réseaux sociaux */ +.RSociaux{background-color:#674B64;height:50px;text-align: center;margin-top:50px;} +.textRSociaux{font-size:18px;text-transform:uppercase;font-family: "Myriad Pro";color:#fff;line-height:50px;} +.blocTextRSociaux{text-align:right;} +.blocIconRSociaux{line-height: 50px;text-align:center;} +/* Footer */ +.bgFooter{ padding-top: 50px; background: url("../img/footer/backgroungFooter.jpg")repeat-x; background-size: contain;} +.footer{margin-bottom:30px;background: url("img/footer/bg-bottom.jpg")} +.footerBlocMHR{line-height:15px;} +.blocTextMHRFoot{margin-top:10px;} +.textfooterBlocMHR{font-family: "Myriad Pro";font-size:14px;color:rgb(65, 64, 66);} +.sepSectionFooter1{border-left: 1px solid rgb(65, 64, 66);height: 13vh;width: 1px;margin-top:0;} +.titleBlocLiens{text-transform:uppercase;font-size:14px;font-family: "Myriad Pro";color:rgb(104, 75, 100);} +.blocLiensFooter{line-height:25px;margin-top:10px;} +.liensFooter a{color: #414042 ;text-decoration:none;text-transform:none;font-family: "Myriad Pro"; font-size: 14px;} +.footerBlocInitiateurs img{margin:0 auto;margin-top:20px;} +.copyrightText{font-size: 14px;font-family: "Myriad Pro";color: rgb(65, 64, 66); padding-top: 20px;} +.copyrightText a{font-size: 14px;font-family: "Myriad Pro";color: rgb(65, 64, 66);text-decoration:none;text-transform:none;} +.sepSectionFootHor{border-left: 1px solid rgb(65, 64, 66);height: 13vh;width: 1px;margin-top:0;} +/** MEDIA **/ + +.contentPage{font-family: "Myriad Pro"; font-size:16px;} +/** Page Inscription des Professionnels **/ +.contenuPage{ padding-top: 40px;padding-bottom: 40px;} +.imageBandeau{ margin-left: auto; margin-right: auto } +.titreContenu{ text-align: center; font-size: 28px; font-family: "NesoSansProBlack"; text-transform: uppercase;} +.sousTitreContenu{ font-size: 17px; font-family: "Myriad Pro Bold"; text-align: center; text-transform: uppercase;} +.colorOrange{ color: #eb9a53; } +.presentationContenu{font-size: 16px;padding-top: 30px;padding-bottom: 30px;} +.alignForm{margin-left: -45px;} +.chpsObli{color: #F00; } +.formInscriptionPro input[type="text"], .formInscriptionPro textarea{ width: 50%; margin-bottom: 10px; resize:none; max-width: 320px; min-width: 200px} +.formInscriptionPro textarea{ height: 120px;} +.formInscriptionPro input[type="button"]{ color: white; background: #c5064b none repeat scroll 0 0; margin-bottom: 10px; border-radius: 4px; cursor: pointer; border: 0 none; padding: 3px 8px; width: auto;} +.mentionObli{ font-size: 14px; color : #58595b; font-family: "Myriad Pro"; margin-bottom: 0;} +.mentionLegale{ font-size: 14px; ; color : #58595b; padding-left: 15px; padding-right: 15px; font-family: "Myriad Pro"; max-width: 350px;} +.marginForm{ margin-top: 10px;} +/* Large Devices, Wide Screens */ +@media only screen and (min-width : 1200px){ + .navbar-default .navbar-collapse, .navbar-default .navbar-form{position: fixed;top: 116px;} +} +/* Large Devices, Wide Screens */ +@media only screen and (min-width : 2000px){ + .itemAbs{right: 29%;} + .formInscriptionPro{ padding-left: 7%;} +} +/* Large Devices, Wide Screens */ +@media only screen and (max-width : 2000px){ + .itemAbs2{right:26%;} + .itemAbs{right:25%;width:250px;} + .itemAbs span{font-size:22px;} + .itemAbs img{width:90%;} + .formInscriptionPro{ padding-left: 6%;} +} +/* Large Devices, Wide Screens */ +@media only screen and (max-width : 1500px){ + .itemAbs2{right: 20%;top: 130px;} + .itemAbs{top:210px;} + .itemAbs span{font-size:22px;} + .itemAbs img{width:80%;} + .myriadFont{font-size:29px;} + .formInscriptionPro{ padding-left: 5%;} +} +/* Large Devices, Wide Screens */ +@media only screen and (max-width : 1200px){ + .navbar-default .navbar-collapse, .navbar-default .navbar-form{position: fixed;top: 92px;} + .sepSectionFootHor, .sepSectionFooter1{height: 14vh;} + .titleBlocDeciday{padding-right: 30px;} + .textDeciday img{width: 90%;} + .imgBtnCFA, .imgBtnMedia{max-width: 160px;} + .itemAbs{top:140px;right:20%;} + .itemAbs2{top:100px;} + #btnCFA{margin-top:42px;} + #btnBurger{margin-top:60px;} + .separateurSlide2{margin-top: 8px;margin-bottom: 5px;} + .myriadFont{font-size: 25px;} + #logoCFA{width: 65%;} + .displayFont {font-size: 22px;} + .blocCadre.cadreDecouvrez{ padding-top: 10px;} + .formInscriptionPro{ padding-left: 0;} +} +/* Medium Devices, Desktops */ +@media only screen and (max-width : 992px){ + .navbar-default .navbar-collapse, .navbar-default .navbar-form{position: fixed;top: 72px;} + .sepSectionFootHor{width: 100%;height: 1px;border-left: none;border-top: 1px solid rgb(65, 64, 66);} + .titleBloc, .blocCadre h3, .blocCadre p {font-size: 22px;} + .textBlocMHR, .cadrePro p {font-size: 13px;} + .cadrePO{padding-top: 30px;} + .blocCadre.cadreDecouvrez { padding-top: 15px; } + .cadrePro{padding-top: 32px;} + .separateurSlide{margin-top: 10px;margin-bottom:5px;} + .itemAbs img{width: 65%;} + .itemAbs span{font-size:18px;} + #btnCFA{margin-top:21px;} + #btnBurger{margin-top:40px;} + .itemAbs{top: 95px;right: 15%;} + .itemAbs2{top: 95px;right: 15%;} + #logoCFA{width:50%;margin-bottom:5px;} + .displayFont{font-size:14px;} + .myriadFont{font-size:16px;} + .formInscriptionPro{ padding-right: 7%;} +} +/* Small Devices, Tablets */ +@media only screen and (max-width : 768px){ + .sepSectionFooter1, .sepSectionFootHor{width:50%;height:1px;border-left: none;border-top: 1px solid rgb(65, 64, 66);margin: 20px auto;} + .RSociaux {height: 110px;} + .blocTextRSociaux{text-align:center;} + .blocs{max-width: 358px;} + .groupBlocs {margin-top: 50px;} + .blocText{margin-top:15px;height: 195px;background-size:contain;} + .imgBtnCFA, .imgBtnMedia{max-width: 135px;} + #logoResp{display: block;margin: auto;width: 25%;margin-top: -100px;} + .itemAbs span{font-size: 17px;} + .itemAbs img{width: 95%;} + .itemAbs {top: 166px;right: 6%;width: 150px;} + #btnCFA{margin-top: 30px;} + #btnBurger{margin-top:40px;} + .itemAbs2 {width: 148px;top: 160px;right: 7%;} + .carousel-control img {display: inline-block;position: absolute;top: 50%;} + .left {text-align: left;left: 10px;} + .right {text-align: left;} + .chevrRight{margin-left: 50%;} + .blocCadre.cadreDecouvrez {padding-top: 35px;} + .cadreDecouvrez img{ width: 100px;} + .formInscriptionPro{ padding-right: 0; margin-left: auto; margin-right: auto; width: 270px; padding-left: 30px;} +} +/* Extra Small Devices, Phones */ +@media only screen and (max-width : 550px){ + .itemAbs span{font-size: 15px;} + .itemAbs{top: 115px;right: 4%;width:150px;} + .itemAbs2 {top: 100px;} + +} +/* Extra Small Devices, Phones */ +@media only screen and (max-width : 480px){ + /* #btnBurger {position: fixed;right: 40px;top: 15px;left: 1;} */ + .homeSlider { padding-top: 0;} + .blocText {margin-top: 15px;background-size: cover;} + .blocMedia {margin-top: 15px;margin-bottom:30px;} + .itemAbs{top:93px;right:8%;width:100px;line-height:1;} + .separateurSlide{margin-top: 5px;margin-bottom: 0px;} + .itemAbs2{top: 70px;right:5%;} + .displayFont{font-size:13px;} + #btnCFA {position: relative;top: 15px;text-align: center;} + #logoResp {width: 35%;} + .textDeciday {text-align: right;padding-top: 25px;} + .chevrRight {margin-left: 38%;} + .carousel-inner{margin-top:50px;} + .cadreDecouvrez img{ width: 90px;} +} +/* Custom, iPhone Retina */ +@media only screen and (max-width : 320px){ + .blocMHR {margin-top:0;} + .itemAbs{top: 34px;right: 5%;width: 100px;} + .chevrRight {margin-left: 20%;} + .myriadFont{font-size:14px;} + .separateurSlide2{margin-top: 2px;margin-bottom: 2px;} + .itemAbs2 {top: 30px;width: 120px;} + .titleBloc, .blocCadre h3, .blocCadre p {font-size: 18px;} + .textBlocMHR, .cadrePro p {font-size: 11px;} + .blocCadre { height: 80px; } + .blocCadre.cadreDecouvrez {padding-top: 20px;} + .cadrePO { padding-top: 18px; } + .cadrePro { padding-top: 22px; } + .header{ height: 80px;} + #logoResp { width: 32%; margin-top: -80px;} + #btnBurger {margin-top:20px;} + .mentionObli{ font-size: 10px;} + .mentionLegale{ font-size: 10px;} + .formInscriptionPro{ width: 200px; padding-left: 0;} +} + + + +@media (min-width: 50px) { + .navbar-header { + float: none; + } + .navbar-left,.navbar-right { + float: none !important; + } + .navbar-toggle { + display: block; + } + .navbar-collapse { + border-top: 1px solid transparent; + box-shadow: inset 0 1px 0 rgba(255,255,255,0.1); + } + .navbar-fixed-top { + top: 0; + border-width: 0 0 1px; + } + .navbar-collapse.collapse { + display: none!important; + } + .navbar-nav { + float: none!important; + margin-top: 7.5px; + } + .navbar-nav>li { + float: none; + } + .navbar-nav>li>a { + padding-top: 10px; + padding-bottom: 10px; + } + .collapse.in{ + display:block !important; + } +} + diff --git a/site/css/style - Copie.css b/site/css/style - Copie.css new file mode 100644 index 0000000..728e79e --- /dev/null +++ b/site/css/style - Copie.css @@ -0,0 +1,344 @@ +/* FONT */ +@font-face {font-family: "Myriad Pro"; + src: url("font/a89cf050c859a23e4b6d9cf5989acf9e.eot"); /* IE9*/ + src: url("font/a89cf050c859a23e4b6d9cf5989acf9e.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.woff2") format("woff2"), /* chrome、firefox */ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.woff") format("woff"), /* chrome、firefox */ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.svg#Myriad Pro") format("svg"); /* iOS 4.1- */ +} + +@font-face {font-family: "NesoSansProBlack"; + src: url("font/7c9748fba0c14c426a6e934bfa64a7e6.eot"); /* IE9*/ + src: url("font/7c9748fba0c14c426a6e934bfa64a7e6.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.woff2") format("woff2"), /* chrome、firefox */ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.woff") format("woff"), /* chrome、firefox */ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.svg#Neo Sans Pro Cyr W04 Black") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "NesoSansProBold"; + src: url("font/65482afbeb61af43c403d0fec1fdb679.eot"); /* IE9*/ + src: url("font/65482afbeb61af43c403d0fec1fdb679.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/65482afbeb61af43c403d0fec1fdb679.woff2") format("woff2"), /* chrome、firefox */ + url("font/65482afbeb61af43c403d0fec1fdb679.woff") format("woff"), /* chrome、firefox */ + url("font/65482afbeb61af43c403d0fec1fdb679.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/65482afbeb61af43c403d0fec1fdb679.svg#Neo Sans Pro Bold") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "NesoSansProMedium"; + src: url("font/c38f2cc711985becf7550d75271b1175.eot"); /* IE9*/ + src: url("font/c38f2cc711985becf7550d75271b1175.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/c38f2cc711985becf7550d75271b1175.woff2") format("woff2"), /* chrome、firefox */ + url("font/c38f2cc711985becf7550d75271b1175.woff") format("woff"), /* chrome、firefox */ + url("font/c38f2cc711985becf7550d75271b1175.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/c38f2cc711985becf7550d75271b1175.svg#Neo Sans Pro Medium") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "Myriad Pro Bold"; + src: url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.eot"); /* IE9*/ + src: url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff2") format("woff2"), /* chrome、firefox */ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff") format("woff"), /* chrome、firefox */ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.svg#MyriadPro-Bold") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "Aller Display V1"; + src: url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.eot"); /* IE9*/ + src: url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff2") format("woff2"), /* chrome、firefox */ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff") format("woff"), /* chrome、firefox */ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.svg") format("svg"); /* iOS 4.1- */ +} +body{color:#000;padding-top:240px;} +.noPad{padding:0px;} +.padDix{padding:10px;} +/* HEADER */ +.header {width: 100%;position: fixed;z-index: 1000; background-color: #FFF; top:0; +} +.ssTitreViolet{font-size: 18px;color: #87318b;text-align: center;font-family: "Myriad Pro Bold";text-transform: uppercase;margin:18px 0 12px;} +.ssTitreViolet a{font-size: 14px;color: #000;text-transform:none; text-decoration: underline;} +.titreContenuPage { + font-size: 32px; + text-transform: uppercase; + color: #58595b; + font-family: "Aller Display V1"; + text-align: center; +} +.contentPage form {text-align:center; padding-top:30px;} +.contentPage form input{margin-bottom:20px;} +.bgTitrePage { + background: url(../img/fond_titre_contenu.jpg) top left repeat-x; + min-height: 30px; +} +#btnCFA{margin-top:50px;} +#btnBurger{z-index:1001;margin-top:85px} +.imgBtnCFA, .imgBtnMedia{max-width: 190px;margin-bottom: 10px;} +/* NAVBAR */ +.navbar-toggle{position: fixed;padding: 0;margin: 0;background-color:transparent;background-image:none;border: none;} +.navbar-default{background-color: transparent;border-color: transparent;} +.navbar-default .navbar-collapse, .navbar-default .navbar-form{background-color: #fff;} +/* SLIDER */ +.homeSlider{margin-top: -20px;} +.carousel-inner > .item > img{margin:0 auto;} +.carousel-inner > .item{margin:0 auto;} +.left{text-align:right;} +.right{text-align:left;} +.carousel-control img{display: inline-block;position: absolute;top:60%;} +.carousel-control.left, .carousel-control.right{background-image: none;} +.itemAbs{position: absolute;z-index: 100;right: 25%;margin: 0 auto;text-align: center;top: 275px;width: 301px;line-height: 1;} +.itemAbs2{position: absolute;z-index: 100;right: 30%;margin: 0 auto;text-align: center;top: 230px;width: 266px;line-height: 1;} +.separateurSlide{border-color:rgb(65, 64, 66);opacity:0.5;width:55%;margin-top: 20px;margin-bottom: 10px;} +.separateurSlide2{border-color:rgb(65, 64, 66);opacity:0.5;width:55%;margin-top: 20px;margin-bottom: 10px;} +.itemAbs span{font-size:32px;font-family: "Myriad Pro";color:rgb(65, 64, 66);} +.myriadFont{font-size:30px;font-family: "Myriad Pro";color:rgb(65, 64, 66);} +.displayFont{font-size:18px;font-family: "Myriad Pro";color:rgb(65, 64, 66);text-transform: uppercase;} +.carousel-indicators li{width: 10px;height: 10px;background-color: #fff;margin:0;} +.carousel-indicators .active{width: 10px;height: 10px;background-color: rgb(154, 49, 129);border-color:rgb(154, 49, 129);margin:0;} +.carousel-indicators {bottom: -10px;} +#logoCFA{display: block;margin: auto;width: 85%;margin-bottom:5px;} +/* BLOCS */ +.groupBlocs{margin-top: 70px;} +.groupCadre{margin-top: 25px;} +/* Bloc Collèges Lycées */ +.blocText{height: 195px;text-align:center;background-size:cover;} +.blocText.parents{background: url("../img/blocs/backgroundParents.jpg")repeat-y;} +.blocText.jeunes{background: url("../img/blocs/backgroundJeunes.jpg")repeat-y;} +.blocText.colLyc{background: url("../img/blocs/backgroundColLy.jpg")repeat-y;} +.textBloc{padding-top: 10px;} +.titleBloc{color:#fff;text-transform:uppercase;font-family: "NesoSansProBold";font-size: 28px;} +.sepTextBloc{width: 5%;border: 2px solid #fff;margin-top: 5px;margin-bottom: 10px;} +/* Bloc Métiers Hôtel Resto */ +.textBlocMHR{font-size: 17px;font-family: "Myriad Pro Bold";color: rgb(255, 255, 255); line-height:normal;} +/* cadre texte */ +.blocs a{ + text-decoration: none; +} +.blocCadre{ height: 109px; background-repeat: no-repeat;background-size: 100% 100%; max-width: 350px;} +.blocCadre h3{ text-align: center; font-size: 28px; font-family: "NesoSansProBlack"; margin-top: 0; margin-bottom: 0 } +.blocCadre p{ text-align: center; font-size: 28px; font-family: "NesoSansProMedium";} +.cadrePO { + background-image: url(../img/borderPO.png); + color: #af3176; + padding-top: 20px; +} +.cadreDecouvrez { + background-image: url(../img/borderDecouvrez.png); + color : #e03e58; + padding-top: 30px; +} +.cadrePro { + background-image: url(../img/borderPRO.png); + color: #eb9a53; + padding-top: 25px; +} +.cadrePro p{ font-size: 17px; font-family: "Myriad Pro Bold" } +/* Bande réseaux sociaux */ +.RSociaux{background-color:#674B64;height:50px;text-align: center;margin-top:50px;} +.textRSociaux{font-size:18px;text-transform:uppercase;font-family: "Myriad Pro";color:#fff;line-height:50px;} +.blocTextRSociaux{text-align:right;} +.blocIconRSociaux{line-height: 50px;text-align:center;} +/* Footer */ +.bgFooter{ padding-top: 50px; background: url("../img/footer/backgroungFooter.jpg")repeat-x; background-size: contain;} +.footer{margin-bottom:30px;background: url("img/footer/bg-bottom.jpg")} +.footerBlocMHR{line-height:15px;} +.blocTextMHRFoot{margin-top:10px;} +.textfooterBlocMHR{font-family: "Myriad Pro";font-size:14px;color:rgb(65, 64, 66);} +.sepSectionFooter1{border-left: 1px solid rgb(65, 64, 66);height: 13vh;width: 1px;margin-top:0;} +.titleBlocLiens{text-transform:uppercase;font-size:14px;font-family: "Myriad Pro";color:rgb(104, 75, 100);} +.blocLiensFooter{line-height:25px;margin-top:10px;} +.liensFooter a{color: #414042 ;text-decoration:none;text-transform:none;font-family: "Myriad Pro"; font-size: 14px;} +.footerBlocInitiateurs img{margin:0 auto;margin-top:20px;} +.copyrightText{font-size: 14px;font-family: "Myriad Pro";color: rgb(65, 64, 66); padding-top: 20px;} +.copyrightText a{font-size: 14px;font-family: "Myriad Pro";color: rgb(65, 64, 66);text-decoration:none;text-transform:none;} +.sepSectionFootHor{border-left: 1px solid rgb(65, 64, 66);height: 13vh;width: 1px;margin-top:0;} +/** MEDIA **/ + +.contentPage{font-family: "Myriad Pro"; font-size:16px;} +/** Page Inscription des Professionnels **/ +.contenuPage{ padding-top: 40px;padding-bottom: 40px;} +.imageBandeau{ margin-left: auto; margin-right: auto } +.titreContenu{ text-align: center; font-size: 28px; font-family: "NesoSansProBlack"; text-transform: uppercase;} +.sousTitreContenu{ font-size: 17px; font-family: "Myriad Pro Bold"; text-align: center; text-transform: uppercase;} +.colorOrange{ color: #eb9a53; } +.presentationContenu{font-size: 16px;padding-top: 30px;padding-bottom: 30px;} +.alignForm{margin-left: -45px;} +.chpsObli{color: #F00; } +.formInscriptionPro input[type="text"], .formInscriptionPro textarea{ width: 50%; margin-bottom: 10px; resize:none; max-width: 320px; min-width: 200px} +.formInscriptionPro textarea{ height: 120px;} +.formInscriptionPro input[type="button"]{ color: white; background: #c5064b none repeat scroll 0 0; margin-bottom: 10px; border-radius: 4px; cursor: pointer; border: 0 none; padding: 3px 8px; width: auto;} +.mentionObli{ font-size: 14px; color : #58595b; font-family: "Myriad Pro"; margin-bottom: 0;} +.mentionLegale{ font-size: 14px; ; color : #58595b; padding-left: 15px; padding-right: 15px; font-family: "Myriad Pro"; max-width: 350px;} +.marginForm{ margin-top: 10px;} +/* Large Devices, Wide Screens */ +@media only screen and (min-width : 1200px){ + .navbar-default .navbar-collapse, .navbar-default .navbar-form{position: fixed;top: 116px;} +} +/* Large Devices, Wide Screens */ +@media only screen and (min-width : 2000px){ + .itemAbs{right: 29%;} + .formInscriptionPro{ padding-left: 7%;} +} +/* Large Devices, Wide Screens */ +@media only screen and (max-width : 2000px){ + .itemAbs2{right:26%;} + .itemAbs{right:25%;width:250px;} + .itemAbs span{font-size:22px;} + .itemAbs img{width:90%;} + .formInscriptionPro{ padding-left: 6%;} +} +/* Large Devices, Wide Screens */ +@media only screen and (max-width : 1500px){ + .itemAbs2{right: 20%;top: 130px;} + .itemAbs{top:210px;} + .itemAbs span{font-size:22px;} + .itemAbs img{width:80%;} + .myriadFont{font-size:29px;} + .formInscriptionPro{ padding-left: 5%;} +} +/* Large Devices, Wide Screens */ +@media only screen and (max-width : 1200px){ + .navbar-default .navbar-collapse, .navbar-default .navbar-form{position: fixed;top: 92px;} + .sepSectionFootHor, .sepSectionFooter1{height: 14vh;} + .titleBlocDeciday{padding-right: 30px;} + .textDeciday img{width: 90%;} + .imgBtnCFA, .imgBtnMedia{max-width: 160px;} + .itemAbs{top:140px;right:20%;} + .itemAbs2{top:100px;} + #btnCFA{margin-top:42px;} + #btnBurger{margin-top:60px;} + .separateurSlide2{margin-top: 8px;margin-bottom: 5px;} + .myriadFont{font-size: 25px;} + #logoCFA{width: 65%;} + .displayFont {font-size: 22px;} + .blocCadre.cadreDecouvrez{ padding-top: 10px;} + .formInscriptionPro{ padding-left: 0;} +} +/* Medium Devices, Desktops */ +@media only screen and (max-width : 992px){ + .navbar-default .navbar-collapse, .navbar-default .navbar-form{position: fixed;top: 72px;} + .sepSectionFootHor{width: 100%;height: 1px;border-left: none;border-top: 1px solid rgb(65, 64, 66);} + .titleBloc, .blocCadre h3, .blocCadre p {font-size: 22px;} + .textBlocMHR, .cadrePro p {font-size: 13px;} + .cadrePO{padding-top: 30px;} + .blocCadre.cadreDecouvrez { padding-top: 15px; } + .cadrePro{padding-top: 32px;} + .separateurSlide{margin-top: 10px;margin-bottom:5px;} + .itemAbs img{width: 65%;} + .itemAbs span{font-size:18px;} + #btnCFA{margin-top:21px;} + #btnBurger{margin-top:40px;} + .itemAbs{top: 95px;right: 15%;} + .itemAbs2{top: 95px;right: 15%;} + #logoCFA{width:50%;margin-bottom:5px;} + .displayFont{font-size:14px;} + .myriadFont{font-size:16px;} + .formInscriptionPro{ padding-right: 7%;} +} +/* Small Devices, Tablets */ +@media only screen and (max-width : 768px){ + .sepSectionFooter1, .sepSectionFootHor{width:50%;height:1px;border-left: none;border-top: 1px solid rgb(65, 64, 66);margin: 20px auto;} + .RSociaux {height: 110px;} + .blocTextRSociaux{text-align:center;} + .blocs{max-width: 358px;} + .groupBlocs {margin-top: 50px;} + .blocText{margin-top:15px;height: 195px;background-size:contain;} + .imgBtnCFA, .imgBtnMedia{max-width: 135px;} + #logoResp{display: block;margin: auto;width: 25%;margin-top: -100px;} + .itemAbs span{font-size: 17px;} + .itemAbs img{width: 95%;} + .itemAbs {top: 166px;right: 6%;width: 150px;} + #btnCFA{margin-top: 30px;} + #btnBurger{margin-top:40px;} + .itemAbs2 {width: 148px;top: 160px;right: 7%;} + .carousel-control img {display: inline-block;position: absolute;top: 50%;} + .left {text-align: left;left: 10px;} + .right {text-align: left;} + .chevrRight{margin-left: 50%;} + .blocCadre.cadreDecouvrez {padding-top: 35px;} + .cadreDecouvrez img{ width: 100px;} + .formInscriptionPro{ padding-right: 0; margin-left: auto; margin-right: auto; width: 270px; padding-left: 30px;} +} +/* Extra Small Devices, Phones */ +@media only screen and (max-width : 550px){ + .itemAbs span{font-size: 15px;} + .itemAbs{top: 115px;right: 4%;width:150px;} + .itemAbs2 {top: 100px;} + +} +/* Extra Small Devices, Phones */ +@media only screen and (max-width : 480px){ + /* #btnBurger {position: fixed;right: 40px;top: 15px;left: 1;} */ + .homeSlider { padding-top: 0;} + .blocText {margin-top: 15px;background-size: cover;} + .blocMedia {margin-top: 15px;margin-bottom:30px;} + .itemAbs{top:93px;right:8%;width:100px;line-height:1;} + .separateurSlide{margin-top: 5px;margin-bottom: 0px;} + .itemAbs2{top: 70px;right:5%;} + .displayFont{font-size:13px;} + #btnCFA {position: relative;top: 15px;text-align: center;} + #logoResp {width: 35%;} + .textDeciday {text-align: right;padding-top: 25px;} + .chevrRight {margin-left: 38%;} + .carousel-inner{margin-top:50px;} + .cadreDecouvrez img{ width: 90px;} +} +/* Custom, iPhone Retina */ +@media only screen and (max-width : 320px){ + .blocMHR {margin-top:0;} + .itemAbs{top: 34px;right: 5%;width: 100px;} + .chevrRight {margin-left: 20%;} + .myriadFont{font-size:14px;} + .separateurSlide2{margin-top: 2px;margin-bottom: 2px;} + .itemAbs2 {top: 30px;width: 120px;} + .titleBloc, .blocCadre h3, .blocCadre p {font-size: 18px;} + .textBlocMHR, .cadrePro p {font-size: 11px;} + .blocCadre { height: 80px; } + .blocCadre.cadreDecouvrez {padding-top: 20px;} + .cadrePO { padding-top: 18px; } + .cadrePro { padding-top: 22px; } + .header{ height: 80px;} + #logoResp { width: 32%; margin-top: -80px;} + #btnBurger {margin-top:20px;} + .mentionObli{ font-size: 10px;} + .mentionLegale{ font-size: 10px;} + .formInscriptionPro{ width: 200px; padding-left: 0;} +} + + + +@media (min-width: 50px) { + .navbar-header { + float: none; + } + .navbar-left,.navbar-right { + float: none !important; + } + .navbar-toggle { + display: block; + } + .navbar-collapse { + border-top: 1px solid transparent; + box-shadow: inset 0 1px 0 rgba(255,255,255,0.1); + } + .navbar-fixed-top { + top: 0; + border-width: 0 0 1px; + } + .navbar-collapse.collapse { + display: none!important; + } + .navbar-nav { + float: none!important; + margin-top: 7.5px; + } + .navbar-nav>li { + float: none; + } + .navbar-nav>li>a { + padding-top: 10px; + padding-bottom: 10px; + } + .collapse.in{ + display:block !important; + } +} + diff --git a/site/css/style.css b/site/css/style.css new file mode 100644 index 0000000..0298a06 --- /dev/null +++ b/site/css/style.css @@ -0,0 +1,587 @@ +/* FONT */ +@font-face {font-family: "Myriad Pro"; + src: url("font/a89cf050c859a23e4b6d9cf5989acf9e.eot"); /* IE9*/ + src: url("font/a89cf050c859a23e4b6d9cf5989acf9e.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.woff2") format("woff2"), /* chrome、firefox */ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.woff") format("woff"), /* chrome、firefox */ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/a89cf050c859a23e4b6d9cf5989acf9e.svg#Myriad Pro") format("svg"); /* iOS 4.1- */ +} + +@font-face {font-family: "NesoSansProBlack"; + src: url("font/7c9748fba0c14c426a6e934bfa64a7e6.eot"); /* IE9*/ + src: url("font/7c9748fba0c14c426a6e934bfa64a7e6.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.woff2") format("woff2"), /* chrome、firefox */ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.woff") format("woff"), /* chrome、firefox */ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/7c9748fba0c14c426a6e934bfa64a7e6.svg#Neo Sans Pro Cyr W04 Black") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "NesoSansProBold"; + src: url("font/65482afbeb61af43c403d0fec1fdb679.eot"); /* IE9*/ + src: url("font/65482afbeb61af43c403d0fec1fdb679.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/65482afbeb61af43c403d0fec1fdb679.woff2") format("woff2"), /* chrome、firefox */ + url("font/65482afbeb61af43c403d0fec1fdb679.woff") format("woff"), /* chrome、firefox */ + url("font/65482afbeb61af43c403d0fec1fdb679.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/65482afbeb61af43c403d0fec1fdb679.svg#Neo Sans Pro Bold") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "NesoSansProMedium"; + src: url("font/c38f2cc711985becf7550d75271b1175.eot"); /* IE9*/ + src: url("font/c38f2cc711985becf7550d75271b1175.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/c38f2cc711985becf7550d75271b1175.woff2") format("woff2"), /* chrome、firefox */ + url("font/c38f2cc711985becf7550d75271b1175.woff") format("woff"), /* chrome、firefox */ + url("font/c38f2cc711985becf7550d75271b1175.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/c38f2cc711985becf7550d75271b1175.svg#Neo Sans Pro Medium") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "Myriad Pro Bold"; + src: url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.eot"); /* IE9*/ + src: url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff2") format("woff2"), /* chrome、firefox */ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.woff") format("woff"), /* chrome、firefox */ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/63f7c4ed344e79ed1cf58a1817e6ff0d.svg#MyriadPro-Bold") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "Aller Display V1"; + src: url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.eot"); /* IE9*/ + src: url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff2") format("woff2"), /* chrome、firefox */ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.woff") format("woff"), /* chrome、firefox */ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/4cf80f22e2f9d7f0b9bd2381d6c5886c.svg") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "Myriad Pro Italic"; + src: url("font/d2daa36af4aaac8c5e102ca2db9d8227.eot"); /* IE9*/ + src: url("font/d2daa36af4aaac8c5e102ca2db9d8227.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/d2daa36af4aaac8c5e102ca2db9d8227.woff2") format("woff2"), /* chrome、firefox */ + url("font/d2daa36af4aaac8c5e102ca2db9d8227.woff") format("woff"), /* chrome、firefox */ + url("font/d2daa36af4aaac8c5e102ca2db9d8227.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/d2daa36af4aaac8c5e102ca2db9d8227.svg#Myriad Pro Italic") format("svg"); /* iOS 4.1- */ +} +@font-face {font-family: "Myriad Pro Bold Italic"; + src: url("font/f3b65bc5f78ed2b3748f81383222dd43.eot"); /* IE9*/ + src: url("font/f3b65bc5f78ed2b3748f81383222dd43.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ + url("font/f3b65bc5f78ed2b3748f81383222dd43.woff2") format("woff2"), /* chrome、firefox */ + url("font/f3b65bc5f78ed2b3748f81383222dd43.woff") format("woff"), /* chrome、firefox */ + url("font/f3b65bc5f78ed2b3748f81383222dd43.ttf") format("truetype"), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ + url("font/f3b65bc5f78ed2b3748f81383222dd43.svg#Myriad Pro Bold Italic") format("svg"); /* iOS 4.1- */ +} +body{color:#000;padding-top:240px;} +.noPad{padding:0px;} +.padDix{padding:10px;} +/* HEADER */ +.header {width: 100%;position: fixed;z-index: 1000; background-color: #FFF; top:0; +} +.contenuTxt{font-family: "Myriad Pro";} +.contenuTxt .titreOrange { + margin-bottom: 1%; + font-size: 18px;color: #c5064b; +} +.contenuTxt p { + margin: 0; + margin-bottom: 0px; + margin-bottom: 8px; +} +.contenuTxt .para{padding-top:20px;} +.contenuTxt .pStrong{ margin-top:16px;font-family: "Myriad Pro Bold";} +.ssTitreViolet{font-size: 18px;color: #87318b;text-align: center;font-family: "Myriad Pro Bold";text-transform: uppercase;margin:18px 0 12px;} +.ssTitreViolet a{font-size: 14px;color: #000;text-transform:none; text-decoration: underline;font-family: "Myriad Pro";} +.ssTitreViolet a:hover{text-decoration: none;} +.ssTitreBaO {margin: 20px 0 0 0;} +.contentPage a{font-size: 14px;color: #000;text-transform:none; text-decoration: underline;font-family: "Myriad Pro";} +.contentPage a:hover{text-decoration: none;} + +.contentPage table{ margin:0 auto;font-family: "Myriad Pro"; border-collapse: collapse; margin-top: 8px;} +.contentPage th{font-family: "Myriad Pro Bold";text-transform: uppercase;background-color: #674B64; border: 1px solid #FFF; color: #FFF; padding: 4px 6px; text-align: center;} +.contentPage td{border: 1px solid #FFF; padding: 2px 4px;} +.contentPage tr:nth-child(odd) {background: #E7CBE4;} +.btnDeci a{ display: inline-block; background-color: #674B64; color: #FFF; text-decoration: none; border: 1px solid #371B34; padding: 4px 6px; text-transform: uppercase;} +#frmCo input[type="submit"]{background-color: #674B64; color: #FFF; text-decoration: none; border: 1px solid #371B34; padding: 4px 6px; text-transform: uppercase;} +.titreContenuPage { + font-size: 32px; + text-transform: uppercase; + color: #58595b; + font-family: "Aller Display V1"; + text-align: center; +} +.menuPage{ padding-bottom:28px;} +.menuPage a{ display: block; background-color: #e54c52;font-family: "Myriad Pro Bold";text-transform: uppercase; font-size:16px; width:96%; margin: 0 auto; color: #FFF; text-align: center; padding:8px 0;text-decoration: none;} +.menuPage a:hover{ color: #FFF; text-decoration: none; } +.contentPage form {text-align:center; padding-top:30px;} +.contentPage form input{margin-bottom:20px;} +.bgTitrePage { + background: url(../img/fond_titre_contenu.jpg) top left repeat-x; + min-height: 30px; +} +#btnCFA{margin-top:50px;} +#btnBurger{z-index:1001;margin-top:85px} +.imgBtnCFA, .imgBtnMedia{max-width: 190px;margin-bottom: 10px;} +/* NAVBAR */ +.navbar-toggle{position: fixed;padding: 0;margin: 0;background-color:transparent;background-image:none;border: none;} +.navbar-default{background-color: transparent;border-color: transparent;} +.navbar-default .navbar-collapse, .navbar-default .navbar-form{background-color: #fff;} +/* SLIDER */ +.homeSlider{margin-top: -20px;} +.carousel-inner > .item > img{margin:0 auto;} +.carousel-inner > .item{margin:0 auto;} +.left{text-align:right;} +.right{text-align:left;} +.carousel-control img{display: inline-block;position: absolute;top:60%;} +.carousel-control.left, .carousel-control.right{background-image: none;} +.itemAbs{position: absolute;z-index: 100;right: 25%;margin: 0 auto;text-align: center;top: 275px;width: 301px;line-height: 1;} +.itemAbs2{position: absolute;z-index: 100;right: 30%;margin: 0 auto;text-align: center;top: 230px;width: 266px;line-height: 1;} +.separateurSlide{border-color:rgb(65, 64, 66);opacity:0.5;width:55%;margin-top: 20px;margin-bottom: 10px;} +.separateurSlide2{border-color:rgb(65, 64, 66);opacity:0.5;width:55%;margin-top: 20px;margin-bottom: 10px;} +.itemAbs span{font-size:32px;font-family: "Myriad Pro";color:rgb(65, 64, 66);} +.myriadFont{font-size:30px;font-family: "Myriad Pro";color:rgb(65, 64, 66);} +.displayFont{font-size:18px;font-family: "Myriad Pro";color:rgb(65, 64, 66);text-transform: uppercase;} +.carousel-indicators li{width: 10px;height: 10px;background-color: #fff;margin:0;} +.carousel-indicators .active{width: 10px;height: 10px;background-color: rgb(154, 49, 129);border-color:rgb(154, 49, 129);margin:0;} +.carousel-indicators {bottom: -10px;} +#logoCFA{display: block;margin: auto;width: 85%;margin-bottom:5px;} +/* BLOCS */ +.groupBlocs{margin-top: 70px;} +.groupCadre{margin-top: 25px;} +/* Bloc Collèges Lycées */ +.blocText{height: 195px;text-align:center;background-size:cover;} +.blocText.parents{background: url("../img/blocs/backgroundParents.jpg")repeat-y;} +.blocText.jeunes{background: url("../img/blocs/backgroundJeunes.jpg")repeat-y;} +.blocText.colLyc{background: url("../img/blocs/backgroundColLy.jpg")repeat-y;} +.textBloc{padding-top: 10px;} +.titleBloc{color:#fff;text-transform:uppercase;font-family: "NesoSansProBold";font-size: 28px;} +.sepTextBloc{width: 5%;border: 2px solid #fff;margin-top: 5px;margin-bottom: 10px;} +/* Bloc Métiers Hôtel Resto */ +.textBlocMHR{font-size: 17px;font-family: "Myriad Pro Bold";color: rgb(255, 255, 255); line-height:normal;} +/* cadre texte */ +.blocs a{ + text-decoration: none; +} +.blocCadre{ height: 109px; background-repeat: no-repeat;background-size: 100% 100%; max-width: 350px;} +.blocCadre h3{ text-align: center; font-size: 28px; font-family: "NesoSansProBlack"; margin-top: 0; margin-bottom: 0 } +.blocCadre p{ text-align: center; font-size: 28px; font-family: "NesoSansProMedium";} +.cadrePO { + background-image: url(../img/borderPO.png); + color: #af3176; + padding-top: 20px; +} +.cadreDecouvrez { + background-image: url(../img/borderDecouvrez.png); + color : #e03e58; + padding-top: 30px; +} +.cadrePro { + background-image: url(../img/borderPRO.png); + color: #eb9a53; + padding-top: 25px; +} +.cadrePro p{ font-size: 17px; font-family: "Myriad Pro Bold" } +/* Bande réseaux sociaux */ +.RSociaux{background-color:#674B64;height:50px;text-align: center;margin-top:50px;} +.textRSociaux{font-size:18px;text-transform:uppercase;font-family: "Myriad Pro";color:#fff;line-height:50px;} +.blocTextRSociaux{text-align:right;} +.blocIconRSociaux{line-height: 50px;text-align:center;} +/* Footer */ +.bgFooter{ padding-top: 50px; background: url("../img/footer/backgroungFooter.jpg")repeat-x; background-size: contain;} +.footer{margin-bottom:30px;background: url("../img/footer/bg-bottom.jpg")} +.footerBlocMHR{line-height:15px;} +.blocTextMHRFoot{margin-top:10px;} +.textfooterBlocMHR{font-family: "Myriad Pro";font-size:14px;color:rgb(65, 64, 66);} +.sepSectionFooter1{border-left: 1px solid rgb(65, 64, 66);height: 13vh;width: 1px;margin-top:0;} +.titleBlocLiens{text-transform:uppercase;font-size:14px;font-family: "Myriad Pro";color:rgb(104, 75, 100); } +.blocLiensFooter{line-height:25px;margin-top:10px;} +.liensFooter a{color: #414042 ;text-decoration:none;text-transform:none;font-family: "Myriad Pro"; font-size: 14px;} +.liensFooter a:hover{ text-decoration: none;} +.footerBlocInitiateurs img{margin:0 auto;margin-top:20px;} +.copyrightText{font-size: 14px;font-family: "Myriad Pro";color: rgb(65, 64, 66); padding-top: 20px;} +.copyrightText a{font-size: 14px;font-family: "Myriad Pro";color: rgb(65, 64, 66);text-decoration:none;text-transform:none;} +.sepSectionFootHor{border-left: 1px solid rgb(65, 64, 66);height: 13vh;width: 1px;margin-top:0;} +/** MEDIA **/ + +.contentPage{font-family: "Myriad Pro"; font-size:16px;} +/** Page Inscription des Professionnels **/ +.contenuPage{ padding-top: 40px;padding-bottom: 40px;} +.imageBandeau{ margin-left: auto; margin-right: auto } +.titreContenu{ text-align: center; font-size: 28px; font-family: "NesoSansProBlack"; text-transform: uppercase;} +.sousTitreContenu{ font-size: 17px; font-family: "Myriad Pro Bold"; text-align: center; text-transform: uppercase;} +.colorOrange{ color: #eb9a53; } +.presentationContenu{font-size: 16px;padding-top: 30px;padding-bottom: 30px;} +.alignForm{margin-left: -45px;} +.chpsObli{color: #F00; } +.formInscriptionPro input[type="text"], .formInscriptionPro textarea{ width: 50%; margin-bottom: 10px; resize:none; max-width: 320px; min-width: 200px} +.formInscriptionPro textarea{ height: 120px;} +.formInscriptionPro input[type="button"]{ color: white; background: #c5064b none repeat scroll 0 0; margin-bottom: 10px; border-radius: 4px; cursor: pointer; border: 0 none; padding: 3px 8px; width: auto;} +.mentionObli{ font-size: 14px; color : #58595b; font-family: "Myriad Pro"; margin-bottom: 0;} +.mentionLegale{ font-size: 14px; ; color : #58595b; padding-left: 15px; padding-right: 15px; font-family: "Myriad Pro"; max-width: 350px;} +.marginForm{ margin-top: 10px;} + +.textIntro{ + text-align:center; +} +.textIntro ul { + display:-moz-inline-stack; + display:inline-block; + zoom:1; + *display:inline;margin: 20px auto; +} +.textIntro ul li { + text-align:left; +} + +/**************************** + Admin +****************************/ +.titreAdmin{ font-size:1.4em; font-weight: bold;} +.adresseCfa{font-size: 0.9em; text-align: center; } +.blocReferent{ text-align: center; padding-bottom: 20px; } +th span{ text-transform:none; font-weight: normal; font-size: 0.9em; } + +/**************************** + Agenda +****************************/ +.arrWeek{ width:100%; padding: 0; border-collapse: collapse;} +.arrWeek caption{ text-transform: uppercase; text-align: right; color: #58595b; font-family: "Aller Display V1"; } +.arrWeek th{ width:16.6667%; font-weight: normal; padding:10px; text-align: center; line-height: 0.95em; } +.arrWeek th.empty, .arrWeek td.empty{ background-color:#FFFFFF; } +.arrWeek tr.isMidDay th, .arrWeek tr.isMidDay td{ border-top-width:3px; } +.arrWeek th span, .arrWeek td span{ font-size:0.8em; } +.arrWeek td{ padding:20px 10px; text-align: center; border: 1px solid #333; line-height: 0.95em; } +.arrWeek td.isGrey{ background-color:#CCC; } +.arrWeek td.isWhite{ background-color:#FFF; } +.arrWeek td.isPurple{ background-color:#E7CBE4; } +.arrWeek td.isOrange{ background-color:#EF9961; } +.arrWeek td.isGreen{ background-color:#53E570; } + +#frmReserv input, #frmReserv textarea{ + max-width: 400px; + width:100%; +} + +.obligatory{ color: #FF0000; font-size: 1.1em; } + +/**************************** + Cookies +****************************/ +#cookies { + background: rgba(59, 59, 59, 0.9) none repeat scroll 0 0; + bottom: 0; + box-sizing: border-box; + color: #fff; + font-family: "Myriad Pro"; + font-size: 14px; + left: 0; + margin-left: auto; + margin-right: auto; + max-width: 1680px; + padding: 10px 20px; + position: fixed; + right: 0; + width: 100%; + z-index: 2000; +} +#cookies a { + color: #fff; + ffont-family: "Myriad Pro Bold"; + text-decoration: underline; +} + +#cookies #cookies_close { + cursor: pointer; + float: right; +} + + +.txtChapeau { + font-size: 16px; + color: #87318b; + text-align: center; + padding-top: 40px; + font-family: "Myriad Pro Bold"; + text-transform: uppercase; +} +.txtIntro { + font-size: 16px; + text-align: center; + padding-top: 24px; + color: #58595b; +} +.bandeauFond { + height: 232px; + background: url(../img/fond_bandeau_repeat.jpg) top left repeat-x; + margin: 0; + margin-top: 0px; + padding: 0; + margin-top: 36px; +} +.bandeauContenu { + height: 232px; + background: url(../img/fond_bandeau.jpg) top left no-repeat; + background-size: auto auto; + background-size: 100% 100%; + font-family: "Myriad Pro Italic"; + font-size: 22px; + color: #FFF; + padding: 0; +} +.bandeauLeft img { + margin-top: -12px; +} +.bandeauContenu table { + height: 100%; + border: 0 none; +} +.bandeauContenu p { + margin: 0; +} +.bandeauContenu strong { + font-family: "Myriad Pro Bold Italic"; + font-weight: normal; +} +.containerTpsForts { + background: url(../img/fond_tps_forts.png) bottom center no-repeat; + background-color: rgba(0, 0, 0, 0); + background-color: #F6F4F5; + padding-top: 20px; + margin: 0; + margin-top: 0px; + margin-top: 8px; + padding-bottom: 80px; +} +.tpsForts { + text-align: center; + padding-top: 30px; +} +.tpsForts span{ + font-weight: normal; + font-size: 0.9em; + color:#58595b; + font-family: "Myriad Pro"; +} +.tpsForts .titreTpsForts { + font-size: 22px; + font-family: "Myriad Pro Bold"; + line-height: 28px; + padding: 10px 0 18px 0; +} +.tpsForts1 .titreTpsForts { + color: #87318b; +} +.tpsForts2 .titreTpsForts { + color: #e54c52; +} +.tpsForts3 .titreTpsForts { + color: #ea973e; +} +.tpsForts .contentTpsForts { + color: #58595b; + font-size: 16px; + font-family: "Myriad Pro"; +} + + + + + + +/************************** +TABLESORTER +***************************/ +.tablesorter table, .tablesorter td, .tablesorter th { + border: 1px solid black; + border-collapse: collapsed; + padding: 2px 5px; +} +.tablesorter thead th { + background-repeat: no-repeat; + background-position: right center; +} +.tablesorter thead th.up { + padding-right: 20px; + background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7); + +color: #fff; +} +.tablesorter thead th.down { + padding-right: 20px; + background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7); +} + +.lstPro{ + display:none; +} + + +.liste li{color:#e54c52;} +.liste li span{ color:#58595b;} +.lienContent{font-size: 16px;color: #58595b; text-decoration: underline;} +.lienContent:hover{font-size: 16px;color: #58595b; text-decoration: none;} +/* Large Devices, Wide Screens */ +@media only screen and (min-width : 1200px){ + .navbar-default .navbar-collapse, .navbar-default .navbar-form{position: fixed;top: 116px;} +} +/* Large Devices, Wide Screens */ +@media only screen and (min-width : 2000px){ + .itemAbs{right: 29%;} + .contentPage .tabEtat {margin: 8px -30%;} + .contentPage .tabPro {margin: 8px -18%;} +} +/* Large Devices, Wide Screens */ +@media only screen and (max-width : 2000px){ + .itemAbs2{right:26%;} + .itemAbs{right:25%;width:250px;} + .itemAbs span{font-size:22px;} + .itemAbs img{width:90%;} +} +/* Large Devices, Wide Screens */ +@media only screen and (max-width : 1500px){ + .itemAbs2{right: 20%;top: 130px;} + .itemAbs{top:210px;} + .itemAbs span{font-size:22px;} + .itemAbs img{width:80%;} + .myriadFont{font-size:29px;} +} +/* Large Devices, Wide Screens */ +@media only screen and (max-width : 1200px){ + .navbar-default .navbar-collapse, .navbar-default .navbar-form{position: fixed;top: 92px;} + .sepSectionFootHor, .sepSectionFooter1{height: 14vh;} + .titleBlocDeciday{padding-right: 30px;} + .textDeciday img{width: 90%;} + .imgBtnCFA, .imgBtnMedia{max-width: 160px;} + .itemAbs{top:140px;right:20%;} + .itemAbs2{top:100px;} + #btnCFA{margin-top:42px;} + #btnBurger{margin-top:60px;} + .separateurSlide2{margin-top: 8px;margin-bottom: 5px;} + .myriadFont{font-size: 25px;} + #logoCFA{width: 65%;} + .displayFont {font-size: 22px;} + .blocCadre.cadreDecouvrez{ padding-top: 10px;} + .formInscriptionPro{ padding-left: 0;} +} +/* Medium Devices, Desktops */ +@media only screen and (max-width : 992px){ + .navbar-default .navbar-collapse, .navbar-default .navbar-form{position: fixed;top: 72px;} + .sepSectionFootHor{width: 100%;height: 1px;border-left: none;border-top: 1px solid rgb(65, 64, 66);} + .titleBloc, .blocCadre h3, .blocCadre p {font-size: 22px;} + .textBlocMHR, .cadrePro p {font-size: 13px;} + .cadrePO{padding-top: 30px;} + .blocCadre.cadreDecouvrez { padding-top: 15px; } + .cadrePro{padding-top: 32px;} + .separateurSlide{margin-top: 10px;margin-bottom:5px;} + .itemAbs img{width: 65%;} + .itemAbs span{font-size:18px;} + #btnCFA{margin-top:21px;} + #btnBurger{margin-top:40px;} + .itemAbs{top: 95px;right: 15%;} + .itemAbs2{top: 95px;right: 15%;} + #logoCFA{width:50%;margin-bottom:5px;} + .displayFont{font-size:14px;} + .myriadFont{font-size:16px;} + .formInscriptionPro{ padding-right: 7%;} +} +/* Small Devices, Tablets */ +@media only screen and (max-width : 768px){ + .sepSectionFooter1, .sepSectionFootHor{width:50%;height:1px;border-left: none;border-top: 1px solid rgb(65, 64, 66);margin: 20px auto;} + .RSociaux {height: 110px;} + .blocTextRSociaux{text-align:center;} + .blocs{max-width: 358px;} + .groupBlocs {margin-top: 50px;} + .blocText{margin-top:15px;height: 195px;background-size:contain;} + .imgBtnCFA, .imgBtnMedia{max-width: 135px;} + #logoResp{display: block;margin: auto;width: 25%;margin-top: -100px;} + .itemAbs span{font-size: 17px;} + .itemAbs img{width: 95%;} + .itemAbs {top: 166px;right: 6%;width: 150px;} + #btnCFA{margin-top: 30px;} + #btnBurger{margin-top:40px;} + .itemAbs2 {width: 148px;top: 160px;right: 7%;} + .carousel-control img {display: inline-block;position: absolute;top: 50%;} + .left {text-align: left;left: 10px;} + .right {text-align: left;} + .chevrRight{margin-left: 50%;} + .blocCadre.cadreDecouvrez {padding-top: 35px;} + .cadreDecouvrez img{ width: 100px;} + .formInscriptionPro{ padding-right: 0; margin-left: auto; margin-right: auto; width: 270px; padding-left: 30px;} +} +/* Extra Small Devices, Phones */ +@media only screen and (max-width : 550px){ + .itemAbs span{font-size: 15px;} + .itemAbs{top: 115px;right: 4%;width:150px;} + .itemAbs2 {top: 100px;} + +} +/* Extra Small Devices, Phones */ +@media only screen and (max-width : 480px){ + /* #btnBurger {position: fixed;right: 40px;top: 15px;left: 1;} */ + .homeSlider { padding-top: 0;} + .blocText {margin-top: 15px;background-size: cover;} + .blocMedia {margin-top: 15px;margin-bottom:30px;} + .itemAbs{top:93px;right:8%;width:100px;line-height:1;} + .separateurSlide{margin-top: 5px;margin-bottom: 0px;} + .itemAbs2{top: 70px;right:5%;} + .displayFont{font-size:13px;} + #btnCFA {position: relative;top: 15px;text-align: center;} + #logoResp {width: 35%;} + .textDeciday {text-align: right;padding-top: 25px;} + .chevrRight {margin-left: 38%;} + .carousel-inner{margin-top:50px;} + .cadreDecouvrez img{ width: 90px;} +} +/* Custom, iPhone Retina */ +@media only screen and (max-width : 320px){ + .blocMHR {margin-top:0;} + .itemAbs{top: 34px;right: 5%;width: 100px;} + .chevrRight {margin-left: 20%;} + .myriadFont{font-size:14px;} + .separateurSlide2{margin-top: 2px;margin-bottom: 2px;} + .itemAbs2 {top: 30px;width: 120px;} + .titleBloc, .blocCadre h3, .blocCadre p {font-size: 18px;} + .textBlocMHR, .cadrePro p {font-size: 11px;} + .blocCadre { height: 80px; } + .blocCadre.cadreDecouvrez {padding-top: 20px;} + .cadrePO { padding-top: 18px; } + .cadrePro { padding-top: 22px; } + .header{ height: 80px;} + #logoResp { width: 32%; margin-top: -80px;} + #btnBurger {margin-top:20px;} + .mentionObli{ font-size: 10px;} + .mentionLegale{ font-size: 10px;} + .formInscriptionPro{ width: 200px; padding-left: 0;} +} + + + +@media (min-width: 50px) { + .navbar-header { + float: none; + } + .navbar-left,.navbar-right { + float: none !important; + } + .navbar-toggle { + display: block; + } + .navbar-collapse { + border-top: 1px solid transparent; + box-shadow: inset 0 1px 0 rgba(255,255,255,0.1); + } + .navbar-fixed-top { + top: 0; + border-width: 0 0 1px; + } + .navbar-collapse.collapse { + display: none!important; + } + .navbar-nav { + float: none!important; + margin-top: 7.5px; + } + .navbar-nav>li { + float: none; + } + .navbar-nav>li>a { + padding-top: 10px; + padding-bottom: 10px; + } + .collapse.in{ + display:block !important; + } +} + diff --git a/site/css/theme.tablesorter.default.css b/site/css/theme.tablesorter.default.css new file mode 100644 index 0000000..f3d271d --- /dev/null +++ b/site/css/theme.tablesorter.default.css @@ -0,0 +1,194 @@ +/************* +Default Theme +*************/ +/* overall */ +.tablesorter-default { + width: 100%; + font: 12px/18px Arial, Sans-serif; + color: #333; + background-color: #fff; + border-spacing: 0; + margin: 10px 0 15px; + text-align: left; +} + +/* header */ +.tablesorter-default th, +.tablesorter-default thead td { + font-weight: bold; + color: #000; + background-color: #fff; + border-collapse: collapse; + border-bottom: #ccc 2px solid; + padding: 0; +} +.tablesorter-default tfoot th, +.tablesorter-default tfoot td { + border: 0; +} +.tablesorter-default .header, +.tablesorter-default .tablesorter-header { + background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==); + background-position: center right; + background-repeat: no-repeat; + cursor: pointer; + white-space: normal; + padding: 4px 20px 4px 4px; +} +.tablesorter-default thead .headerSortUp, +.tablesorter-default thead .tablesorter-headerSortUp, +.tablesorter-default thead .tablesorter-headerAsc { + background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7); + border-bottom: #000 2px solid; +} +.tablesorter-default thead .headerSortDown, +.tablesorter-default thead .tablesorter-headerSortDown, +.tablesorter-default thead .tablesorter-headerDesc { + background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7); + border-bottom: #000 2px solid; +} +.tablesorter-default thead .sorter-false { + background-image: none; + cursor: default; + padding: 4px; +} + +/* tfoot */ +.tablesorter-default tfoot .tablesorter-headerSortUp, +.tablesorter-default tfoot .tablesorter-headerSortDown, +.tablesorter-default tfoot .tablesorter-headerAsc, +.tablesorter-default tfoot .tablesorter-headerDesc { + border-top: #000 2px solid; +} + +/* tbody */ +.tablesorter-default td { + background-color: #fff; + border-bottom: #ccc 1px solid; + padding: 4px; + vertical-align: top; +} + +/* hovered row colors */ +.tablesorter-default tbody > tr.hover > td, +.tablesorter-default tbody > tr:hover > td, +.tablesorter-default tbody > tr.even:hover > td, +.tablesorter-default tbody > tr.odd:hover > td { + background-color: #fff; + color: #000; +} + +/* table processing indicator */ +.tablesorter-default .tablesorter-processing { + background-position: center center !important; + background-repeat: no-repeat !important; + /* background-image: url(images/loading.gif) !important; */ + background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important; +} + +/* Zebra Widget - row alternating colors */ +.tablesorter-default tr.odd > td { + background-color: #dfdfdf; +} +.tablesorter-default tr.even > td { + background-color: #efefef; +} + +/* Column Widget - column sort colors */ +.tablesorter-default tr.odd td.primary { + background-color: #bfbfbf; +} +.tablesorter-default td.primary, +.tablesorter-default tr.even td.primary { + background-color: #d9d9d9; +} +.tablesorter-default tr.odd td.secondary { + background-color: #d9d9d9; +} +.tablesorter-default td.secondary, +.tablesorter-default tr.even td.secondary { + background-color: #e6e6e6; +} +.tablesorter-default tr.odd td.tertiary { + background-color: #e6e6e6; +} +.tablesorter-default td.tertiary, +.tablesorter-default tr.even td.tertiary { + background-color: #f2f2f2; +} + +/* caption */ +.tablesorter-default > caption { + background-color: #fff; +} + +/* filter widget */ +.tablesorter-default .tablesorter-filter-row { + background-color: #eee; +} +.tablesorter-default .tablesorter-filter-row td { + background-color: #eee; + border-bottom: #ccc 1px solid; + line-height: normal; + text-align: center; /* center the input */ + -webkit-transition: line-height 0.1s ease; + -moz-transition: line-height 0.1s ease; + -o-transition: line-height 0.1s ease; + transition: line-height 0.1s ease; +} +/* optional disabled input styling */ +.tablesorter-default .tablesorter-filter-row .disabled { + opacity: 0.5; + filter: alpha(opacity=50); + cursor: not-allowed; +} +/* hidden filter row */ +.tablesorter-default .tablesorter-filter-row.hideme td { + /*** *********************************************** ***/ + /*** change this padding to modify the thickness ***/ + /*** of the closed filter row (height = padding x 2) ***/ + padding: 2px; + /*** *********************************************** ***/ + margin: 0; + line-height: 0; + cursor: pointer; +} +.tablesorter-default .tablesorter-filter-row.hideme * { + height: 1px; + min-height: 0; + border: 0; + padding: 0; + margin: 0; + /* don't use visibility: hidden because it disables tabbing */ + opacity: 0; + filter: alpha(opacity=0); +} +/* filters */ +.tablesorter-default input.tablesorter-filter, +.tablesorter-default select.tablesorter-filter { + width: 95%; + height: auto; + margin: 4px auto; + padding: 4px; + background-color: #fff; + border: 1px solid #bbb; + color: #333; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + -webkit-transition: height 0.1s ease; + -moz-transition: height 0.1s ease; + -o-transition: height 0.1s ease; + transition: height 0.1s ease; +} +/* rows hidden by filtering (needed for child rows) */ +.tablesorter .filtered { + display: none; +} + +/* ajax error row */ +.tablesorter .tablesorter-errorRow td { + text-align: center; + cursor: pointer; + background-color: #e6bf99; +} diff --git a/site/css/theme.tablesorter.grey.css b/site/css/theme.tablesorter.grey.css new file mode 100644 index 0000000..a0baaee --- /dev/null +++ b/site/css/theme.tablesorter.grey.css @@ -0,0 +1,251 @@ +/************* + Grey Theme + *************/ +/* overall */ +.tablesorter-grey { + width: 100%; + margin: 10px 0 15px; + text-align: left; + border-spacing: 0; + border-left: #555 1px solid; +} + +/* header */ +.tablesorter-grey th, +.tablesorter-grey thead td { + font: bold 12px/18px Arial, Sans-serif; + color: #c8c8c8; + background-color: #3c3c3c; + background-image: -moz-linear-gradient(top, #555, #3c3c3c); + background-image: -ms-linear-gradient(top, #555, #3c3c3c); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#555), to(#3c3c3c)); + background-image: -webkit-linear-gradient(top, #555, #3c3c3c); + background-image: -o-linear-gradient(top, #555, #3c3c3c); + background-image: linear-gradient(to bottom, #555,#3c3c3c); + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#555555', endColorstr='#3c3c3c',GradientType=0 ); + background-repeat: repeat-x; + border-right: #555 1px solid; + text-shadow: 0 1px 0 rgba(128, 128, 128, 0.7); + -webkit-box-shadow: inset 0 1px 0 #222; + -moz-box-shadow: inset 0 1px 0 #222; + box-shadow: inset 0 1px 0 #222; + padding: 4px; +} +.tablesorter-grey .tablesorter-header-inner, +.tablesorter-grey .tablesorter-header-inner { + position: relative; + padding: 4px 15px 4px 4px; +} +.tablesorter-grey .header, +.tablesorter-grey .tablesorter-header { + cursor: pointer; +} +.tablesorter-grey .header i, +.tablesorter-grey .tablesorter-header i.tablesorter-icon { + width: 18px; + height: 10px; + position: absolute; + right: 2px; + top: 50%; + margin-top: -10px; + /* white (unsorted) double arrow */ + background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAAP///////yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==); + background-repeat: no-repeat; + background-position: center right; + padding: 4px; + white-space: normal; +} +.tablesorter-grey th.headerSortUp, +.tablesorter-grey th.tablesorter-headerSortUp, +.tablesorter-grey th.headerSortDown, +.tablesorter-grey th.tablesorter-headerSortDown { + color: #ddd; + background-color: #135185; + background-image: -moz-linear-gradient(top, #195c93, #0e4776); + background-image: -ms-linear-gradient(top, #195c93, #0e4776); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#195c93), to(#0e4776)); + background-image: -webkit-linear-gradient(top, #195c93, #0e4776); + background-image: -o-linear-gradient(top, #195c93, #0e4776); + background-image: linear-gradient(to bottom, #195c93, #0e4776); + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#195c93', endColorstr='#0e4776',GradientType=0 ); +} +.tablesorter-grey .headerSortUp i.tablesorter-icon, +.tablesorter-grey .tablesorter-headerSortUp i.tablesorter-icon, +.tablesorter-grey .tablesorter-headerAsc i.tablesorter-icon { + /* white asc arrow */ + background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7); +} +.tablesorter-grey .headerSortDown i.tablesorter-icon, +.tablesorter-grey .tablesorter-headerSortDown i.tablesorter-icon, +.tablesorter-grey .tablesorter-headerDesc i.tablesorter-icon { + /* white desc arrow */ + background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAAP///////yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7); +} +.tablesorter-grey thead .sorter-false { + cursor: default; +} +.tablesorter-grey thead .sorter-false i.tablesorter-icon { + display: none; +} + +/* tfoot */ +.tablesorter-grey tbody td, +.tablesorter-grey tfoot th, +.tablesorter-grey tfoot td { + padding: 4px; + vertical-align: top; + border-right: #555 1px solid; +} +.tablesorter-grey tfoot th, +.tablesorter-grey tfoot td { + padding: 8px; +} + +/* tbody */ +.tablesorter-grey td { + color: #eee; + background-color: #6d6d6d; + padding: 4px; + vertical-align: top; +} + +/* hovered row colors + you'll need to add additional lines for + rows with more than 2 child rows + */ +.tablesorter-grey tbody > tr.hover > td, +.tablesorter-grey tbody > tr:hover > td, +.tablesorter-grey tbody > tr:hover + tr.tablesorter-childRow > td, +.tablesorter-grey tbody > tr:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td, +.tablesorter-grey tbody > tr.even.hover > td, +.tablesorter-grey tbody > tr.even:hover > td, +.tablesorter-grey tbody > tr.even:hover + tr.tablesorter-childRow > td, +.tablesorter-grey tbody > tr.even:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td { + background-color: #134b78; +} +.tablesorter-grey tbody > tr.odd.hover > td, +.tablesorter-grey tbody > tr.odd:hover > td, +.tablesorter-grey tbody > tr.odd:hover + tr.tablesorter-childRow > td, +.tablesorter-grey tbody > tr.odd:hover + tr.tablesorter-childRow + tr.tablesorter-childRow > td { + background-color: #134b78; +} + +/* table processing indicator */ +.tablesorter-grey .tablesorter-processing { + background-position: center center !important; + background-repeat: no-repeat !important; + /* background-image: url(images/loading.gif) !important; */ + background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important; +} + +/* Zebra Widget - row alternating colors */ +.tablesorter-grey tbody tr.odd > td { + background-color: #5e5e5e; +} +.tablesorter-grey tbody tr.even > td { + background-color: #6d6d6d; +} + +/* Column Widget - column sort colors */ +.tablesorter-grey td.primary, +.tablesorter-grey tr.odd td.primary { + color: #ddd; + background-color: #165388; +} +.tablesorter-grey tr.even td.primary { + color: #ddd; + background-color: #195c93; +} +.tablesorter-grey td.secondary, +.tablesorter-grey tr.odd td.secondary { + color: #ddd; + background-color: #185C9A; +} +.tablesorter-grey tr.even td.secondary { + color: #ddd; + background-color: #1D67A5; +} +.tablesorter-grey td.tertiary, +.tablesorter-grey tr.odd td.tertiary { + color: #ddd; + background-color: #1B67AD; +} +.tablesorter-grey tr.even td.tertiary { + color: #ddd; + background-color: #2073B7; +} + +/* caption */ +.tablesorter-grey > caption { + background-color: #fff; +} + +/* filter widget */ +.tablesorter-grey .tablesorter-filter-row { + background-color: #3c3c3c; +} +.tablesorter-grey .tablesorter-filter-row td { + background-color: #3c3c3c; + line-height: normal; + text-align: center; /* center the input */ + -webkit-transition: line-height 0.1s ease; + -moz-transition: line-height 0.1s ease; + -o-transition: line-height 0.1s ease; + transition: line-height 0.1s ease; +} +/* optional disabled input styling */ +.tablesorter-grey .tablesorter-filter-row .disabled { + opacity: 0.5; + filter: alpha(opacity=50); + cursor: not-allowed; +} +/* hidden filter row */ +.tablesorter-grey .tablesorter-filter-row.hideme td { + /*** *********************************************** ***/ + /*** change this padding to modify the thickness ***/ + /*** of the closed filter row (height = padding x 2) ***/ + padding: 2px; + /*** *********************************************** ***/ + margin: 0; + line-height: 0; + cursor: pointer; +} +.tablesorter-grey .tablesorter-filter-row.hideme * { + height: 1px; + min-height: 0; + border: 0; + padding: 0; + margin: 0; + /* don't use visibility: hidden because it disables tabbing */ + opacity: 0; + filter: alpha(opacity=0); +} +/* filters */ +.tablesorter-grey input.tablesorter-filter, +.tablesorter-grey select.tablesorter-filter { + width: 98%; + height: auto; + margin: 0; + padding: 4px; + background-color: #6d6d6d; + border: 1px solid #555; + color: #ddd; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + -webkit-transition: height 0.1s ease; + -moz-transition: height 0.1s ease; + -o-transition: height 0.1s ease; + transition: height 0.1s ease; +} +/* rows hidden by filtering (needed for child rows) */ +.tablesorter .filtered { + display: none; +} + +/* ajax error row */ +.tablesorter .tablesorter-errorRow td { + text-align: center; + cursor: pointer; + background-color: #e6bf99; +} diff --git a/site/deco.php b/site/deco.php new file mode 100644 index 0000000..7c6c300 --- /dev/null +++ b/site/deco.php @@ -0,0 +1,11 @@ +<?php + +session_start(); + +$_SESSION=array(); +unset($_SESSION); + +header('location:index.php'); +exit(); + +?> \ No newline at end of file diff --git a/site/decouvrez-deciday.php b/site/decouvrez-deciday.php new file mode 100644 index 0000000..9c1c375 --- /dev/null +++ b/site/decouvrez-deciday.php @@ -0,0 +1,121 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="stylesheet" href="css/bootstrap.min.css"> + <link rel="stylesheet" href="css/style.css"> + <script src="js/jquery-3.2.1.min.js"></script> + <script src="js/bootstrap.min.js"></script> + <title>Découvrez Deciday !</title> + </head> + <body> + <?php include('include/header.php');?> + <div class="container-fluid" style="margin-top: -20px;"> + <div class="row" style="background-color: #5B2050;"> + <a href="#" style="cursor:auto"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad"> + <img class="visible-sm visible-md visible-lg img-responsive imageBandeau" src="img/slide/deciday_decouvrez_deciday_slider.jpg" alt="Métiers Hotel-Resto"> + <img class="hidden-lg hidden-md hidden-sm img-responsive imageBandeau" src="img/slide/slider_new_resp.jpg" alt="Métiers Hotel-Resto"> + </div> + </a> + </div> + </div> + + <div class="container contenuTxt"><br> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">UNE JOURNÉE NATIONALE POUR DÉCOUVRIR +un métier et se préparer un avenir +</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-2 txtChapeau"> + <p>DECIDAY ! EST UN EVENEMENT ORGANISE PAR L’OPCA FAFIH EN PARTENARIAT AVEC LE MINISTÈRE DE L’ÉDUCATION NATIONALE ET LE MINISTÈRE DE L’ENSEIGNEMENT SUPÉRIEUR, DE LA RECHERCHE ET DE L’INNOVATION. +</p> </div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-2 txtIntro"> + <p>L’objectif de Deciday ! est d’accompagner les collégiens et les lycéens dans la construction de leur projet d’orientation professionnelle en leur faisant découvrir la richesse des métiers de l’Hôtellerie, de la Restauration, des Loisirs et des activités du Tourisme.<br /><br />Cet événement est l’occasion pour les jeunes de découvrir les opportunités de carrières accessibles du CAP au Master 2.</p> </div> + </div> +<div class="row bandeauFond"> + <div class="container bandeauContenu"> + <div class="col-lg-5 col-md-5 hidden-sm hidden-xs bandeauLeft"> + <img src="img/perso_bandeau.png" alt="" /> + </div> + <div class="col-lg-7 col-md-7 col-sm-11 col-xs-11" style="height:100%;"> + <table cellpadding="0" cellspacing="0" class="tabBandeau"> + <tr><td valign="middle"><p><strong>Un important dispositif de communication portera cet événement : </strong> <br />une campagne média sur les principaux sites internet de l’orientation. De l’affichage et des flyers chez les professionnels du secteur invitant les parents et les jeunes à venir les rencontrer. L’ensemble des médias nationaux et régionaux sera sensibilisé à travers une large campagne de relations presse.</p></td></tr> + </table> + </div> + </div> +</div> +<div class="row containerTpsForts"> + <div class="container "> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage"> + En 3 temps forts + </div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + + <div class="col-lg-3 col-md-3 col-sm-3 col-xs-12 tpsForts tpsForts1"> + <img src="http://deciday.fr/sites/all/themes/deciday/img/num_tps_forts1.png" alt="" /> <div class="titreTpsForts">Découvrir de nouveaux métiers</div> + <div class="contentTpsForts"><p>Le 17 janvier 2019, partout en France, un trio se déplacera dans les collèges et lycées de leur région.<br /> +Pendant une heure, ce trinôme constitué d’un représentant d’un CFA ou d’un lycée professionnel, d’un professionnel du secteur et d’un apprenti, présentera les métiers et les formations. Un moment d’échanges qui réservera bien des surprises… +</p></div> + </div> + <div class="col-lg-1 col-md-1 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 tpsForts tpsForts2"> + <img src="http://deciday.fr/sites/all/themes/deciday/img/num_tps_forts2.png" alt="" /> <div class="titreTpsForts">Rencontrer des professionnels</div> + <div class="contentTpsForts"><p>Par la suite, les élèves des collèges et des lycées, pourront rencontrer un professionnel dans son établissement. Rien de mieux pour se faire une idée objective d’un métier que de le découvrir concrètement !<br /> +Les professionnels participant à Deciday !, seront prochainement identifiables via le site internet. +</p></div> + </div> + <div class="col-lg-1 col-md-1 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-3 col-md-3 col-sm-3 col-xs-12 tpsForts tpsForts3"> + <img src="http://deciday.fr/sites/all/themes/deciday/img/num_tps_forts3.png" alt="" /> <div class="titreTpsForts">Visiter des écoles</div> + <div class="contentTpsForts"><p>Les jeunes souhaitant s’orienter vers ces métiers, pourront poursuivre leur démarche et découvrir tous les avantages de la formation et de l’apprentissage en visitant le CFA ou le lycée professionnel le plus proche lors des journées portes ouvertes qui se dérouleront dans les semaines qui suivent.</p></div> + </div> + </div> +</div> +<style type="text/css"> + #decDecVid{ + padding-top: 20px; + } + #decDecVid .blocVid{ + height:50px; + margin-top: 40px; + text-align: center; + height:auto !important; + } +</style> + +<div class="container noPad" id="decDecVid"> +<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 titreContenuPage">Deciday en vidéo</div><div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad"><div class="col-lg-4 col-md-4 col-sm-6 col-xs-12 noPad blocVid"> +<iframe width="300" height="168.75" src="https://www.youtube.com/embed/wUeK6HQFqoY" frameborder="0" allow="encrypted-media" allowfullscreen></iframe> +</div> +<div class="col-lg-4 col-md-4 col-sm-6 col-xs-12 noPad blocVid"> +<iframe width="300" height="168.75" src="https://www.youtube.com/embed/XGjO7NH3oWk" frameborder="0" allow="encrypted-media" allowfullscreen></iframe> +</div> +<div class="col-lg-4 col-md-4 col-sm-6 col-xs-12 noPad blocVid"> +<iframe width="300" height="168.75" src="https://www.youtube.com/embed/QBUQECRmz04" frameborder="0" allow="encrypted-media" allowfullscreen></iframe> +</div> +<div class="col-lg-2 col-md-2 hidden-sm hidden-xs noPad"> +&nbsp +</div> +<div class="col-lg-4 col-md-4 col-sm-6 col-xs-12 noPad blocVid"> +<iframe width="300" height="168.75" src="https://www.youtube.com/embed/tprMx0VVy5I" frameborder="0" allow="encrypted-media" allowfullscreen></iframe> +</div> +<div class="col-lg-4 col-md-4 col-sm-6 col-xs-12 noPad blocVid"> +<iframe width="300" height="168.75" src="https://www.youtube.com/embed/_zPF4qjf7QE" frameborder="0" allow="encrypted-media" allowfullscreen></iframe> +</div> +<div class="col-lg-2 col-md-2 hidden-sm hidden-xs noPad"> +&nbsp +</div> +</div> +</div> + + <?php include('include/footer.php');?> + </body> +</html> \ No newline at end of file diff --git a/site/detail-cfa-adm-cdb.php b/site/detail-cfa-adm-cdb.php new file mode 100644 index 0000000..b06ae4f --- /dev/null +++ b/site/detail-cfa-adm-cdb.php @@ -0,0 +1,279 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); + +if(!isset($_GET['id']) || empty($_GET['id'])){ + header('location:index-adm.php'); + exit(); +} +$id=$_GET['id']; +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$query="select * from eta where id_eta=:id_eta"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':id_eta', $id, PDO::PARAM_INT ); +$queryRequest->execute(); +if($queryRequest->rowCount()==0){ + header('location:index-adm.php'); + exit(); +} +$data=$queryRequest->fetchAll(); +$maCleDeCryptage = getCleDeCryptage(); +$nomEta=decrypter($maCleDeCryptage,$data[0]['nom_eta']); + + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage"><?php echo $nomEta;?></div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <div class="adresseCfa"> + <?php + echo decrypter($maCleDeCryptage,$data[0]['adresse1']); + if(!empty($data[0]['adresse2'])) echo ' - '.decrypter($maCleDeCryptage,$data[0]['adresse2']); + echo ' - '.decrypter($maCleDeCryptage,$data[0]['cp']).' '.decrypter($maCleDeCryptage,$data[0]['ville']); + ?> + </div> + + + + + + <div class="blocReferent">Référent : <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_ref']);?></span> <br/> + Téléphone : <?php echo decrypter($maCleDeCryptage,$data[0]['tel_ref']);?> E-mail : <a href="mailto:<?echo decrypter($maCleDeCryptage,$data[0]['email_ref']); ?>"><?= decrypter($maCleDeCryptage,$data[0]['email_ref']);?> </a></div> + +<!-- <div class="textIntro"><br/> + <?php +// Sollicitations refusées +// $querySolRef="select * FROM sollicitations WHERE idCapitaine=0 AND traitement=0 AND chxNumEta=:chxNumEta"; +// $queryRequestSolRef = $db->prepare( $querySolRef ); +// $queryRequestSolRef->bindParam( ':chxNumEta', $id, PDO::PARAM_INT ); +// $queryRequestSolRef->execute(); +// $countSolRef=$queryRequestSolRef->rowcount(); +// $dataSolRef = $queryRequestSolRef->fetchAll(); +// if($countSolRef==0) echo 'Le CFA n\'a aucune sollicitation refusée.<br />'; +// elseif($countSolRef==1) echo '<b>Le CFA a '.$countSolRef.' sollicitation refusée.</b><br />'; +// elseif($countSolRef>1) echo '<b>Le CFA a '.$countSolRef.' sollicitations refusées.</b><br />'; + + //SOLLICITATIONS REFERENT +// echo '<div class="blocReferent"><span class="ssTitreViolet">Les sollicitations refusées</span></div>'; +// +// if($countSolRef==0){ +// echo '<div align="center">Aucune sollicitation refusée.</div>'; +// }else{ +// +// echo '<table class="table">'; +// echo '<tr><th>Etablissement</th><th>Contact</th><th>Localisation</th><th>Jour</th><th>Creneau</th></tr>'; +// foreach($dataSolRef as $k => $v){ +// $myjourSol = MysqlToDateFr($v['chxJour']); +// $mycreneauSol = getCreneauSol($v['chxCreneau']); +// echo '<tr>'; +// echo '<td>'.decrypter($maCleDeCryptage,$v['etaCoLy']).'</td>'; +// echo '<td>'.decrypter($maCleDeCryptage,$v['nomCoLy']).' '.decrypter($maCleDeCryptage,$v['prenomCoLy']).'</td>'; +// echo '<td>'.decrypter($maCleDeCryptage,$v['cpCoLy']).' '.decrypter($maCleDeCryptage,$v['villeCoLy']).'</td>'; +// echo '<td>'.$myjourSol.'</td>'; +// echo '<td>'.$mycreneauSol.'</td>'; +// echo '</tr>'; +// } +// echo '<table>'; +// +// } +// +// echo '<br /><br />'; + ?> + + </div>--> + + <div class="clearfix"></div> + <br/><br/> + + + + <?php + $query="select * from capitaines where num_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $id, PDO::PARAM_INT ); + $queryRequest->execute(); + include_once('include/agenda.inc.php'); + + if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); + $index = 1; + $capitaine = ""; + $apprenant = ""; + $professionnel = ""; + + foreach($data as $val){ + //Affichage noms apprenant et pro + $query2="select * from equipes where num_capitaine=:num_cap"; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query2 ); + $queryRequest2->bindParam( ':num_cap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest2->execute(); + $data2=$queryRequest2->fetchAll(); + $capitaine = decrypter($maCleDeCryptage,$val['prenom_cap']).' '.decrypter($maCleDeCryptage,$val['nom_cap']); + if(!empty($data2[0]['nom_eleve']) && !empty($data2[0]['prenom_eleve'])) $apprenant = decrypter($maCleDeCryptage,$data2[0]['nom_eleve']).' '.decrypter($maCleDeCryptage,$data2[0]['prenom_eleve']); + if(!empty($data2[0]['nom_pro']) && !empty($data2[0]['prenom_pro'])) $professionnel = decrypter($maCleDeCryptage,$data2[0]['nom_pro']).' '.decrypter($maCleDeCryptage,$data2[0]['prenom_pro']); + + //Affichage rendez-vous capitaines + $query3="select count(*) as rdv, sum(nbClasses) as classes, sum(nbEleves) as eleves FROM agenda INNER JOIN collegelycee ON idCoLy=numCoLy WHERE numCap=:num_cap AND statut= 'reserve' AND numEta=:numEta"; + $db3 = connect_base(); + $queryRequest3 = $db3->prepare( $query3 ); + $queryRequest3->bindParam( ':numEta', $id, PDO::PARAM_INT ); + $queryRequest3->bindParam( ':num_cap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest3->execute(); + //$countRdv=$queryRequest3->rowcount(); + $data3=$queryRequest3->fetchAll(); + if(isset($data3[0]['rdv'])) $rdv = $data3[0]['rdv']; else $rdv = 0; + if(isset($data3[0]['classes'])) $classes = $data3[0]['classes']; else $classes = 0; + if(isset($data3[0]['eleves'])) $eleves = $data3[0]['eleves']; else $eleves = 0; + //Affichage sollicitations capitaines + $query4="select * FROM sollicitations WHERE idCapitaine=:num_cap AND traitement=0 AND chxNumEta=:chxNumEta"; + $db4 = connect_base(); + $queryRequest4 = $db4->prepare( $query4 ); + $queryRequest4->bindParam( ':chxNumEta', $id, PDO::PARAM_INT ); + $queryRequest4->bindParam( ':num_cap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest4->execute(); + $countSol=$queryRequest4->rowcount(); + + ?> + <div class="col-lg-offset-2 col-lg-8 col-md-offset-2 col-md-8 col-sm-offset-1 col-sm-10 col-sm-offset-1 col-xs-12 titreContenuPage">Détail de l'équipe n°<?=$index?> </div> + <div class="clearfix"></div> + <table cellpadding="0" cellspacing="0" class="table tabAdm"> + <tr> + <th>Capitaine<br /><span>Prénom Nom</span></th> + <th>Apprenant<br /><span>Prénom Nom</span></th> + <th>Professionnel<br /><span>Prénom Nom</span></th> + <th>Rendez-vous<br /><span>(Nb de classes/d'élèves)</span></th> + <th>Sollicitations<span><br />En attente</span></th> + </tr> + <tr> + <td><a href="javascript:goAgenda('<?=$val['id_cap']?>')"><?=$capitaine?></a></td> + <td><?=$apprenant?></td> + <td><?=$professionnel?></td> + <td align="center"><?=$rdv?> (<?=$classes?>/<?=$eleves?>)</td> + <td align="center"><?=$countSol?></td> + </tr> + </table> + <br/><br/> + <div class="blocReferent"><span class="ssTitreViolet">Agenda de l'équipe n°<?=$index?> </span></div> + <?php + foreach($arrWeek as $kw=>$vw){ + echo '<table class="arrWeek">'."\r\n"; + + echo '<caption>Semaine '.$kw.'</caption>'; + + $idDay = 0; + echo '<tr>'."\r\n"; + echo '<th class="empty">&nbsp;</th>'; + foreach($vw as $vDay){ + if(!empty($vDay)) $th = '<th><span>'.$arrDaysWeek[$idDay].'</span><br />'.MysqlToDateFr($vDay).'</th>'; else $th = '<th>&nbsp;</th>'; + echo $th."\r\n"; + $idDay++; + } + echo '</tr>'."\r\n"; + + foreach($arrCreneaux as $kCr => $vCr){ + if($arrCreneaux[$kCr]=="pm1") $isMidDay = ' class="isMidDay"'; else $isMidDay = ''; + echo '<tr'.$isMidDay.'>'."\r\n"; + echo '<th>'.$arrCreneauxTitle[$kCr].'</th>'; + foreach($vw as $vDay){ + if(!empty($vDay)){ + + //Un enregistrement existe t'il pour le créneau ? + $query="SELECT * FROM agenda LEFT JOIN collegelycee ON idCoLy=numCoLy WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $vDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $arrCreneaux[$kCr], PDO::PARAM_STR ); + $queryRequest->execute(); + $countD = $queryRequest->rowCount(); + $dataD=$queryRequest->fetchAll(); + if($countD>1){ //Erreur Pas possible + $td = '<td class="empty">Erreur recontrée sur ce créneau</td>'; + }elseif($countD==1){ + + if($dataD[0]['provenance']>0) $provenance = "Origine : <b>Site</b>"; else $provenance = "Origine : <b>Directe</b>"; + + if($dataD[0]['statut']=="bloque"){ + $td = '<td class="isGrey"><b>Indisponible</b></td>'; + } + if($dataD[0]['statut']=="libre"){ + $td = '<td class="isWhite"><b>Disponible</b></td>'; + } + if($dataD[0]['statut']=="reserve"){ + $reserve = decrypter($maCleDeCryptage,$dataD[0]['etaCoLy'])."<br /><span>(".decrypter($maCleDeCryptage,$dataD[0]['cpCoLy'])." ".decrypter($maCleDeCryptage,$dataD[0]['villeCoLy']).")</span> "; + $td = '<td class="isPurple"><b>'.$reserve.'</b><br />'.$provenance.'</td>'; + } + } + }else $td = '<td class="empty">&nbsp;</td>'; + echo $td."\r\n"; + } + echo '</tr>'."\r\n"; + } + + echo '</table>'."\r\n"; + } + ?> + <br/><br/> + <?php + $index++; + } + + } + else echo '<div align="center">Aucun trinôme pour ce CFA pour l\'instant</div>'; + ?> + <script type="text/javascript"> + function goAgenda(myIdCap){ + document.frmGo.myIdCap.value = myIdCap; + document.frmGo.submit(); + } + </script> + <form name="frmGo" method="post" action="admin-cap-agenda.php"> + <input type="hidden" name="myAction" value="goAgenda"> + <input type="hidden" name="myIdRef" value="<?php echo $id; ?>"> + <input type="hidden" name="myIdCap"> + </form> + + <br /><div class="btnDeci" align="center"><a href="suivi-cfa-adm.php">Retour sur la liste des CFA</a></div> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/detail-cfa-adm.php b/site/detail-cfa-adm.php new file mode 100644 index 0000000..3e05377 --- /dev/null +++ b/site/detail-cfa-adm.php @@ -0,0 +1,277 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); + +if(!isset($_GET['id']) || empty($_GET['id'])){ + header('location:index-adm.php'); + exit(); +} +$id=$_GET['id']; +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$query="select * from eta where id_eta=:id_eta"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':id_eta', $id, PDO::PARAM_INT ); +$queryRequest->execute(); +if($queryRequest->rowCount()==0){ + header('location:index-adm.php'); + exit(); +} +$data=$queryRequest->fetchAll(); +$maCleDeCryptage = getCleDeCryptage(); +$nomEta=decrypter($maCleDeCryptage,$data[0]['nom_eta']); + + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage"><?php echo $nomEta;?></div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <div class="adresseCfa"> + <?php + echo decrypter($maCleDeCryptage,$data[0]['adresse1']); + if(!empty($data[0]['adresse2'])) echo ' - '.decrypter($maCleDeCryptage,$data[0]['adresse2']); + echo ' - '.decrypter($maCleDeCryptage,$data[0]['cp']).' '.decrypter($maCleDeCryptage,$data[0]['ville']); + ?> + </div> + + + + + + <div class="blocReferent">Référent : <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_ref']);?></span> <br/> + Téléphone : <?php echo decrypter($maCleDeCryptage,$data[0]['tel_ref']);?> E-mail : <a href="mailto:<?echo decrypter($maCleDeCryptage,$data[0]['email_ref']); ?>"><?= decrypter($maCleDeCryptage,$data[0]['email_ref']);?> </a></div> + + <div class="textIntro"><br/> + <?php +// Sollicitations refusées + $querySolRef="select * FROM sollicitations WHERE idCapitaine=0 AND traitement=0 AND chxNumEta=:chxNumEta"; + $queryRequestSolRef = $db->prepare( $querySolRef ); + $queryRequestSolRef->bindParam( ':chxNumEta', $id, PDO::PARAM_INT ); + $queryRequestSolRef->execute(); + $countSolRef=$queryRequestSolRef->rowcount(); + $dataSolRef = $queryRequestSolRef->fetchAll(); + if($countSolRef==0) echo $nomEta .' n\'a aucune sollicitation refusée.<br /><br/>'; + elseif($countSolRef==1) echo '<b>'.$nomEta .' a '.$countSolRef.' sollicitation refusée.</b><br /><br/>'; + elseif($countSolRef>1) echo '<b>'.$nomEta .' a '.$countSolRef.' sollicitations refusées.</b><br /><br/>'; + +// SOLLICITATIONS REFERENT + if($countSolRef >= 1){ + if($countSolRef == 1) echo '<div class="blocReferent"><span class="ssTitreViolet">La sollicitation refusée</span></div>'; + else echo '<div class="blocReferent"><span class="ssTitreViolet">Les sollicitations refusées</span></div>'; + + echo '<table class="table">'; + echo '<tr><th>Etablissement</th><th>Contact</th><th>Localisation</th><th>Jour</th><th>Creneau</th></tr>'; + foreach($dataSolRef as $k => $v){ + $myjourSol = MysqlToDateFr($v['chxJour']); + $mycreneauSol = getCreneauSol($v['chxCreneau']); + echo '<tr>'; + echo '<td>'.decrypter($maCleDeCryptage,$v['etaCoLy']).'</td>'; + echo '<td>'.decrypter($maCleDeCryptage,$v['nomCoLy']).' '.decrypter($maCleDeCryptage,$v['prenomCoLy']).'</td>'; + echo '<td>'.decrypter($maCleDeCryptage,$v['cpCoLy']).' '.decrypter($maCleDeCryptage,$v['villeCoLy']).'</td>'; + echo '<td>'.$myjourSol.'</td>'; + echo '<td>'.$mycreneauSol.'</td>'; + echo '</tr>'; + } + echo '<table>'; + + } + + echo '<br /><br />'; + ?> + + </div> + + <div class="clearfix"></div> + <br/><br/> + + + + <?php + $query="select * from capitaines where num_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $id, PDO::PARAM_INT ); + $queryRequest->execute(); + include_once('include/agenda.inc.php'); + + if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); + $index = 1; + $capitaine = ""; + $apprenant = ""; + $professionnel = ""; + + foreach($data as $val){ + //Affichage noms apprenant et pro + $query2="select * from equipes where num_capitaine=:num_cap"; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query2 ); + $queryRequest2->bindParam( ':num_cap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest2->execute(); + $data2=$queryRequest2->fetchAll(); + $capitaine = decrypter($maCleDeCryptage,$val['prenom_cap']).' '.decrypter($maCleDeCryptage,$val['nom_cap']); + if(!empty($data2[0]['nom_eleve']) && !empty($data2[0]['prenom_eleve'])) $apprenant = decrypter($maCleDeCryptage,$data2[0]['nom_eleve']).' '.decrypter($maCleDeCryptage,$data2[0]['prenom_eleve']); + if(!empty($data2[0]['nom_pro']) && !empty($data2[0]['prenom_pro'])) $professionnel = decrypter($maCleDeCryptage,$data2[0]['nom_pro']).' '.decrypter($maCleDeCryptage,$data2[0]['prenom_pro']); + + //Affichage rendez-vous capitaines + $query3="select count(*) as rdv, sum(nbClasses) as classes, sum(nbEleves) as eleves FROM agenda INNER JOIN collegelycee ON idCoLy=numCoLy WHERE numCap=:num_cap AND statut= 'reserve' AND numEta=:numEta"; + $db3 = connect_base(); + $queryRequest3 = $db3->prepare( $query3 ); + $queryRequest3->bindParam( ':numEta', $id, PDO::PARAM_INT ); + $queryRequest3->bindParam( ':num_cap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest3->execute(); + //$countRdv=$queryRequest3->rowcount(); + $data3=$queryRequest3->fetchAll(); + if(isset($data3[0]['rdv'])) $rdv = $data3[0]['rdv']; else $rdv = 0; + if(isset($data3[0]['classes'])) $classes = $data3[0]['classes']; else $classes = 0; + if(isset($data3[0]['eleves'])) $eleves = $data3[0]['eleves']; else $eleves = 0; + //Affichage sollicitations capitaines + $query4="select * FROM sollicitations WHERE idCapitaine=:num_cap AND traitement=0 AND chxNumEta=:chxNumEta"; + $db4 = connect_base(); + $queryRequest4 = $db4->prepare( $query4 ); + $queryRequest4->bindParam( ':chxNumEta', $id, PDO::PARAM_INT ); + $queryRequest4->bindParam( ':num_cap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest4->execute(); + $countSol=$queryRequest4->rowcount(); + + ?> + <div class="col-lg-offset-2 col-lg-8 col-md-offset-2 col-md-8 col-sm-offset-1 col-sm-10 col-sm-offset-1 col-xs-12 titreContenuPage">Détail de l'équipe n°<?=$index?> </div> + <div class="clearfix"></div> + <table cellpadding="0" cellspacing="0" class="table tabAdm"> + <tr> + <th>Capitaine<br /><span>Prénom Nom</span></th> + <th>Apprenant<br /><span>Prénom Nom</span></th> + <th>Professionnel<br /><span>Prénom Nom</span></th> + <th>Rendez-vous<br /><span>(Nb de classes/d'élèves)</span></th> + <th>Sollicitations<span><br />En attente</span></th> + </tr> + <tr> + <td><a href="javascript:goAgenda('<?=$val['id_cap']?>')"><?=$capitaine?></a></td> + <td><?=$apprenant?></td> + <td><?=$professionnel?></td> + <td align="center"><?=$rdv?> (<?=$classes?>/<?=$eleves?>)</td> + <td align="center"><?=$countSol?></td> + </tr> + </table> + <br/><br/> + <div class="blocReferent"><span class="ssTitreViolet">Agenda de l'équipe n°<?=$index?> </span></div> + <?php + foreach($arrWeek as $kw=>$vw){ + echo '<table class="arrWeek">'."\r\n"; + + echo '<caption>Semaine '.$kw.'</caption>'; + + $idDay = 0; + echo '<tr>'."\r\n"; + echo '<th class="empty">&nbsp;</th>'; + foreach($vw as $vDay){ + if(!empty($vDay)) $th = '<th><span>'.$arrDaysWeek[$idDay].'</span><br />'.MysqlToDateFr($vDay).'</th>'; else $th = '<th>&nbsp;</th>'; + echo $th."\r\n"; + $idDay++; + } + echo '</tr>'."\r\n"; + + foreach($arrCreneaux as $kCr => $vCr){ + if($arrCreneaux[$kCr]=="pm1") $isMidDay = ' class="isMidDay"'; else $isMidDay = ''; + echo '<tr'.$isMidDay.'>'."\r\n"; + echo '<th>'.$arrCreneauxTitle[$kCr].'</th>'; + foreach($vw as $vDay){ + if(!empty($vDay)){ + + //Un enregistrement existe t'il pour le créneau ? + $query="SELECT * FROM agenda LEFT JOIN collegelycee ON idCoLy=numCoLy WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $vDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $arrCreneaux[$kCr], PDO::PARAM_STR ); + $queryRequest->execute(); + $countD = $queryRequest->rowCount(); + $dataD=$queryRequest->fetchAll(); + if($countD>1){ //Erreur Pas possible + $td = '<td class="empty">Erreur recontrée sur ce créneau</td>'; + }elseif($countD==1){ + + if($dataD[0]['provenance']>0) $provenance = "Origine : <b>Site</b>"; else $provenance = "Origine : <b>Directe</b>"; + + if($dataD[0]['statut']=="bloque"){ + $td = '<td class="isGrey"><b>Indisponible</b></td>'; + } + if($dataD[0]['statut']=="libre"){ + $td = '<td class="isWhite"><b>Disponible</b></td>'; + } + if($dataD[0]['statut']=="reserve"){ + $reserve = decrypter($maCleDeCryptage,$dataD[0]['etaCoLy'])."<br /><span>(".decrypter($maCleDeCryptage,$dataD[0]['cpCoLy'])." ".decrypter($maCleDeCryptage,$dataD[0]['villeCoLy']).")</span> "; + $td = '<td class="isPurple"><b>'.$reserve.'</b><br />'.$provenance.'</td>'; + } + } + }else $td = '<td class="empty">&nbsp;</td>'; + echo $td."\r\n"; + } + echo '</tr>'."\r\n"; + } + + echo '</table>'."\r\n"; + } + ?> + <br/><br/> + <?php + $index++; + } + + } + else echo '<div align="center">Aucun trinôme pour ce CFA/LP pour l\'instant</div>'; + ?> + <script type="text/javascript"> + function goAgenda(myIdCap){ + document.frmGo.myIdCap.value = myIdCap; + document.frmGo.submit(); + } + </script> + <form name="frmGo" method="post" action="admin-cap-agenda.php"> + <input type="hidden" name="myAction" value="goAgenda"> + <input type="hidden" name="myIdRef" value="<?php echo $id; ?>"> + <input type="hidden" name="myIdCap"> + </form> + + <br /><div class="btnDeci" align="center"><a href="suivi-cfa-adm.php">Retour sur la liste des CFA/LP</a></div> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/details-ref.php b/site/details-ref.php new file mode 100644 index 0000000..2025a84 --- /dev/null +++ b/site/details-ref.php @@ -0,0 +1,83 @@ +<?php +include('include/entete.php'); +include('include/entete_cfa.php'); + +if(!isset($_GET['id']) || empty($_GET['id'])){ + header('location:index-cfa.php'); + exit(); +} + +$id=$_GET['id']; +include('config/config.inc.php'); +$query="select * from capitaines where id_cap=:id_cap"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':id_cap', $id, PDO::PARAM_INT ); +$queryRequest->execute(); +if($queryRequest->rowCount()==0){ + header('location:index-cfa.php'); + exit(); +} + + +include('config/lib.inc.php'); +$maCleDeCryptage = getCleDeCryptage(); +$data=$queryRequest->fetchAll(); +$nom_cap=decrypter($maCleDeCryptage,$data[0]['nom_cap']); +$prenom_cap=decrypter($maCleDeCryptage,$data[0]['prenom_cap']); +$email_cap=decrypter($maCleDeCryptage,$data[0]['email_cap']); + +$query="select * from equipes where num_capitaine=:id_cap"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':id_cap', $id, PDO::PARAM_INT ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +$nom_ele=decrypter($maCleDeCryptage,$data[0]['nom_eleve']); +$prenom_ele=decrypter($maCleDeCryptage,$data[0]['prenom_eleve']); +$nom_pro=decrypter($maCleDeCryptage,$data[0]['nom_pro']); +$prenom_pro=decrypter($maCleDeCryptage,$data[0]['prenom_pro']); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <div class="titreEtat">Détails trinôme :</div> + <div class="labFrm">Nom capitaine:</div> + <div><?php echo $nom_cap;?></div><br /> + <div class="labFrm">Prénom capitaine:</div> + <div><?php echo $prenom_cap;?></div><br /> + <div class="labFrm">Email capitaine:</div> + <div><?php echo $email_cap;?></div><br /><br /> + <div class="labFrm">Nom élève:</div> + <div><?php echo $nom_ele;?></div><br /> + <div class="labFrm">Prénom élève :</div> + <div><?php echo $prenom_ele;?></div><br /><br /> + <div class="labFrm">Nom professionnel:</div> + <div><?php echo $nom_pro;?></div><br /> + <div class="labFrm">Prénom professionnel :</div> + <div><?php echo $prenom_pro;?></div><br /> + <div class="btnDeci"><a href="index-cap.php">Retour</a></div> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/eml/_notes/dwsync.xml b/site/eml/_notes/dwsync.xml new file mode 100644 index 0000000..dc74334 --- /dev/null +++ b/site/eml/_notes/dwsync.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="deciday-201810.html" server="62.244.88.21/deciday/" local="131919462189431338" remote="131849538600000000" Dst="1" /> +<file name="showa-708-it-10-17.html" server="62.244.88.21/deciday/" local="131919462189245491" remote="131849493600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/eml/deciday-201810.html b/site/eml/deciday-201810.html new file mode 100644 index 0000000..bcdd34a --- /dev/null +++ b/site/eml/deciday-201810.html @@ -0,0 +1,157 @@ +<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office"> + <head> + <!--[if gte mso 9]> + <xml> + <o:OfficeDocumentSettings> + <o:AllowPNG/> + <o:PixelsPerInch>96</o:PixelsPerInch> + </o:OfficeDocumentSettings> + </xml> + <![endif]--> + <meta charset="utf-8"> + <style> + table{border-collapse:collapse;} + img{ display:block; border:0 none;} + a{color:#fff;text-decoration:none;} + </style> + </head> + <body> + <table style="FONT-FAMILY: ARIAL;width:650px; font-size:13px" cellspacing="0" cellpadding="0" width="650" align="center" valign="middle" border="0"> + <tbody> + <tr> + <td><img src="http://deciday.fr/eml/deciday-201810/tetiere.jpg" alt="Deciday" width="650" height="192" style="display: block; border: 0"></td> + </tr> + <tr> + <td> + <table cellspacing="0" cellpadding="0" border="0"> + <tbody> + <tr> + <td><img src="http://deciday.fr/eml/deciday-201810/empty_1.jpg" alt="" width="40" height="34" style="display: block; border: 0"></td> + <td style="width:570px;" width="570"> + <table style="width:570px" cellspacing="0" cellpadding="0" width="570" align="center" valign="middle" border="0"> + <tbody> + + <tr><td>&nbsp;</td></tr> + <tr> + <td valign="top" align="left" style="FONT-FAMILY: ARIAL;width:570px; font-size:13px; color:#221f20"> + Bonjour &agrave; tous,<br /><br /> + + Apr&egrave;s le succ&egrave;s de la 1&egrave;re &eacute;dition en 2018, le Fafih, en partenariat avec le Minist&egrave;re de l'Education + Nationale et le Minist&egrave;re de l'Enseignement Sup&eacute;rieur, de la Recherche et de l'Innovation, lance + la deuxi&egrave;me &eacute;dition de la campagne de promotion des m&eacute;tiers de l'H&ocirc;tellerie, de la Restauration, + des Loisirs et des activit&eacute;s du Tourisme : <strong>Deciday!</strong>.<br /><br /> + + Conçu comme un parcours en 3 &eacute;tapes, avec une forte dimension r&eacute;gionale, cet &eacute;v&eacute;nement + <strong>a pour vocation principale d'inciter les jeunes et leur famille &agrave; participer &agrave; vos Journ&eacute;es + Portes Ouvertes 2019.</strong><br /><br /> + + En amont, pour la premi&egrave;re fois, dans chaque r&eacute;gion des enseignants de coll&egrave;ges et lyc&eacute;es + d'enseignement g&eacute;n&eacute;ral pourront d&eacute;couvrir les coulisses et les m&eacute;tiers de notre secteur &agrave; + l'occasion d'une demi-journ&eacute;e d'immersion en entreprise. + </td> + </tr> + <tr><td>&nbsp;</td></tr> + <tr> + <td><img src="http://deciday.fr/eml/deciday-201810/1.jpg" alt="" width="570" height="34" style="display: block; border: 0"></td> + </tr> + <tr><td>&nbsp;</td></tr> + <tr> + <td valign="top" align="center" style="FONT-FAMILY: ARIAL;width:570px; font-size:13px; color:#221f20"> + + <span style="color:#902f78"><strong>Le 17 janvier 2019 : Deciday! jour J</strong></span><br /> + + <strong>Temps fort de la campagne : partout en France, des trin&ocirc;mes de <br /> + professionnels, formateurs et apprentis se rendront dans des classes <br /> + de 3&egrave;me, 2nde et  1&egrave;re,</strong> pendant 1 heure pour faire d&eacute;couvrir nos m&eacute;tiers et donner<br /> + envie de s'y int&eacute;resser : cr&eacute;er des rencontres enrichissantes pour chacun !<br /> + Une large couverture m&eacute;diatique r&eacute;gionale s'appuiera sur 12 parrains et de <br /> + jeunes influenceurs Snapchat pour faire conna&icirc;ître l'&eacute;v&eacute;nement au grand public. + </td> + </tr> + <tr><td>&nbsp;</td></tr> + <tr> + <td><img src="http://deciday.fr/eml/deciday-201810/2.jpg" alt="" width="570" height="34" style="display: block; border: 0"></td> + </tr> + <tr><td>&nbsp;</td></tr> + <tr> + <td valign="top" align="center" style="FONT-FAMILY: ARIAL;width:570px; font-size:13px; color:#221f20"> + + <strong><span style="color:#d65a3d">Du 17 janvier &agrave; fin f&eacute;vrier 2019 : rencontres chez les professionnels</span></strong><br /> + + Des professionnels engag&eacute;s dans Deciday! ouvriront les portes de leurs<br /> + entreprises, sur rendez-vous, aux jeunes et &agrave; leurs parents. + </td> + </tr> + <tr><td>&nbsp;</td></tr> + <tr> + <td><img src="http://deciday.fr/eml/deciday-201810/3.jpg" alt="" width="570" height="34" style="display: block; border: 0"></td> + </tr> + <tr><td>&nbsp;</td></tr> + <tr> + <td valign="top" align="center" style="FONT-FAMILY: ARIAL;width:570px; font-size:13px; color:#221f20"> + + <strong><span style="color:#e5954a">A partir du 17 janvier : vos Journ&eacute;es Portes Ouvertes</span></strong><br /> + + Vos Journ&eacute;es Portes Ouvertes, promues lors de vos interventions en coll&egrave;ges et <br /> + lyc&eacute;es, seront annonc&eacute;es sur <a href="http://www.deciday.fr" target="_blank" style="FONT-FAMILY: ARIAL;width:570px; font-size:13px; color:#221f20; text-decoration: underline">www.deciday.fr</a>, mais aussi par la presse et les <br /> + influenceurs partenaires.<br /><br /><br /> + + <span style="color:#902f78"><strong>Connectez-vous d&egrave;s maintenant &agrave; votre extranet <a href="http://www.deciday.fr" target="_blank" style="FONT-FAMILY: ARIAL;width:570px; font-size:13px; color:#902f78; text-decoration: none">www.deciday.fr</a> pour participer !</strong></span> + </td> + </tr> + <tr><td>&nbsp;</td></tr> + <tr> + <td valign="top" align="center"> + + <table style="width:570px" cellspacing="0" cellpadding="0" width="570" align="center" valign="middle" border="0"> + <tbody> + <tr> + <td><img src="http://deciday.fr/eml/deciday-201810/empty_1.jpg" alt="Deciday" width="100" height="34" style="display: block; border: 0"></td> + <td align="center" valign="middle" style="FONT-FAMILY: ARIAL;width:570px; font-size:13px; color:#221f20; background-color: #902f78; color:#FFFFFF; padding-top: 10px; padding-bottom: 10px;"> + <strong>Identifiant :</strong> l'adresse destinataire du pr&eacute;sent mail<br /> + <strong>Mot de passe :</strong> deciday19 + </td> + <td><img src="http://deciday.fr/eml/deciday-201810/empty_1.jpg" alt="Deciday" width="100" height="34" style="display: block; border: 0"></td> + </tr> + </tbody> + </table> + </td> + </tr>  + <tr><td>&nbsp;</td></tr> + <tr> + <td valign="top" align="left" style="FONT-FAMILY: ARIAL;width:570px; font-size:13px; color:#221f20"> + L'&eacute;quipe Deciday! du Fafih, et les d&eacute;l&eacute;gations r&eacute;gionales, vous accompagneront &agrave; chaque &eacute;tape de l'organisation.<br /><br /> + + Nous vous laissons d&eacute;couvrir, en d&eacute;tail, votre r&ocirc;le dans Deciday ! en consultant le document joint « Deciday ! R&ocirc;le des CFA et Lyc&eacute;es Professionnels » (il sera &eacute;galement t&eacute;l&eacute;chargeable dans votre espace personnel sur <a href="http://www.deciday.fr" target="_blank" style="FONT-FAMILY: ARIAL;width:570px; font-size:13px; color:#221f20; text-decoration: underline">www.deciday.fr</a>).<br /><br /> + + <strong>Nous comptons sur votre engagement, pour l'avenir du secteur et de nos m&eacute;tiers.<br /> + Si chacun de vous intervient dans 4 classes, nous sensibiliserons plus de 15 000 &eacute;l&egrave;ves !</strong> + </td> + </tr> + <tr><td>&nbsp;</td></tr> + <tr><td>&nbsp;</td></tr> + <tr> + <td valign="top" align="right" style="FONT-FAMILY: ARIAL;width:570px; font-size:13px; color:#221f20"> + <em>L'&eacute;quipe Deciday! du Fafih</em> + </td> + </tr> + <tr><td>&nbsp;</td></tr> + </tbody> + </table> + </td> + <td><img src="http://deciday.fr/eml/deciday-201810/empty_1.jpg" alt="Deciday" width="40" height="34" style="display: block; border: 0"></td> + </tr> + </tbody> + </table> + </td> + </tr> + <tr> + <td><img src="http://deciday.fr/eml/deciday-201810/footer.jpg" alt="Deciday" width="650" height="247" style="display: block; border: 0"></td> + </tr> + <tr> + <td align="center" style="FONT-FAMILY: ARIAL;font-size:10px; color:#221f20;">&copy; Deciday! 2018 | Tous droits r&eacute;serv&eacute;s</td> + </tr> + </tbody> + </table> + </body> +</html> \ No newline at end of file diff --git a/site/eml/deciday-201810/1.jpg b/site/eml/deciday-201810/1.jpg new file mode 100644 index 0000000..bf95536 Binary files /dev/null and b/site/eml/deciday-201810/1.jpg differ diff --git a/site/eml/deciday-201810/2.jpg b/site/eml/deciday-201810/2.jpg new file mode 100644 index 0000000..d0c2278 Binary files /dev/null and b/site/eml/deciday-201810/2.jpg differ diff --git a/site/eml/deciday-201810/3.jpg b/site/eml/deciday-201810/3.jpg new file mode 100644 index 0000000..ca71dca Binary files /dev/null and b/site/eml/deciday-201810/3.jpg differ diff --git a/site/eml/deciday-201810/_notes/dwsync.xml b/site/eml/deciday-201810/_notes/dwsync.xml new file mode 100644 index 0000000..302c5e4 --- /dev/null +++ b/site/eml/deciday-201810/_notes/dwsync.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="1.jpg" server="62.244.88.21/deciday/" local="131919462184915568" remote="131849498400000000" Dst="1" /> +<file name="2.jpg" server="62.244.88.21/deciday/" local="131919462185422257" remote="131849498400000000" Dst="1" /> +<file name="footer.jpg" server="62.244.88.21/deciday/" local="131919462187909563" remote="131849470200000000" Dst="1" /> +<file name="tetiere.jpg" server="62.244.88.21/deciday/" local="131919462187625080" remote="131849470200000000" Dst="1" /> +<file name="3.jpg" server="62.244.88.21/deciday/" local="131919462186272270" remote="131849498400000000" Dst="1" /> +<file name="empty_1.jpg" server="62.244.88.21/deciday/" local="131919462186456031" remote="131849498400000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/eml/deciday-201810/empty_1.jpg b/site/eml/deciday-201810/empty_1.jpg new file mode 100644 index 0000000..25caa56 Binary files /dev/null and b/site/eml/deciday-201810/empty_1.jpg differ diff --git a/site/eml/deciday-201810/footer.jpg b/site/eml/deciday-201810/footer.jpg new file mode 100644 index 0000000..b43aac5 Binary files /dev/null and b/site/eml/deciday-201810/footer.jpg differ diff --git a/site/eml/deciday-201810/tetiere.jpg b/site/eml/deciday-201810/tetiere.jpg new file mode 100644 index 0000000..baf51c3 Binary files /dev/null and b/site/eml/deciday-201810/tetiere.jpg differ diff --git a/site/eml/showa-708-it-10-17.html b/site/eml/showa-708-it-10-17.html new file mode 100644 index 0000000..c4428ee --- /dev/null +++ b/site/eml/showa-708-it-10-17.html @@ -0,0 +1,83 @@ +<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office"> + <head> + <!--[if gte mso 9]> + <xml> + <o:OfficeDocumentSettings> + <o:AllowPNG/> + <o:PixelsPerInch>96</o:PixelsPerInch> + </o:OfficeDocumentSettings> + </xml> + <![endif]--> + <meta charset="utf-8"> + <style> + table{border-collapse:collapse;} + img{ display:block; border:0 none;} + a{color:#fff;text-decoration:none;} + </style> + </head> + <body> + <table style="FONT-FAMILY: ARIAL;width:700px;background-image: url('http://web2.pointvirgule.net/integration_emailing/showa-708-it-10-17/bgShowa.jpg');" cellspacing="0" cellpadding="0" width="700" align="center" valign="middle"> + <tbody style="background-image: url('http://web2.pointvirgule.net/integration_emailing/showa-708-it-10-17/bgShowa.jpg');"> + <tr> + <td><a href="http://www.showa-708.com/it"><img src="http://web2.pointvirgule.net/integration_emailing/showa-708-it-10-17/emailing-708-it_r1_c1.jpg" alt="emailing-708-it"></a></td> + </tr> + <tr> + <td valign="top"> + <table style="FONT-FAMILY: ARIAL;width:700px;background-color: #0D0117;" cellspacing="0" cellpadding="0" width="700" align="center" valign="top"> + <tbody style="background-color: #0D0117;"> + <tr style="background-color: #0D0117;"> + <td width="318" style="width:318px;border:0;" align="left" valign="top"> + <a href="http://www.showa-708.com/it"><img src="http://web2.pointvirgule.net/integration_emailing/showa-708-it-10-17/emailing-708-it_r2_c1" alt="emailing-708-it"></a> + </td> + <td width="343" align="left" valign="top" style="width:343px;color:#fff;font-family:arial;border:0;padding-top:10px;background-color: #0D0117;"> + <a href="http://www.showa-708.com/it"><span style="font-size:20px;font-weight:bold;font-family:arial;color:#fff;">COME UN PESCE NELL’ACQUA</span></a><br> + <a href="http://www.showa-708.com/it"><span style="color:#9ac455;font-family:arial;font-size:16px;"> + SHOWA 708 HYBRID: IL CONNUBIO<br>PERFETTO TRA SICUREZZA E COMFORT + </span></a> + <a href="http://www.showa-708.com/it"><span style="font-size:12px;padding-top:0px;margin:0;padding-bottom:0;color:#fff;"> + <br> + <br>I guanti monouso alimentari devono essere abbastanza sottili per la destrezza ed il comfort ma abbastanza spessi per resistere all'usura. Ecco perché SHOWA introduce 708 hybrid: in nitrile leggero e resistente, concepito per affrontare i rischi del settore degli alimenti, proteggendo i prodotti dalla contaminazione e le mani dalle lesioni. + </span></a><br><br><br><br><br/> + <a href="http://www.showa-708.com/it" style="border:0;"><img width="343px" style="width:343px;margin:0;border:0" src="http://web2.pointvirgule.net/integration_emailing/showa-708-it-10-17/emailing-708-it_r3_c2" alt="emailing-708-it"></a> + </td> + <td> + <a href="http://www.showa-708.com/it"><img src="http://web2.pointvirgule.net/integration_emailing/showa-708-it-10-17/emailing-708-it_r2_c3" alt="emailing-708-it"></a> + </td> + </tr> + </tbody> + </table> + </td> + </tr> + <tr> + <td> + <table style="FONT-FAMILY: ARIAL;width:700px;background-color: #0D0117;" cellspacing="0" cellpadding="0" width="700" align="center" valign="middle"> + <tbody style="background-color: #0D0117;"> + <tr style="background-color: #0D0117;"> + <td><img src="http://web2.pointvirgule.net/integration_emailing/showa-708-it-10-17/emailing-708-it_r1_c2.jpg" alt="emailing-708-it"></td> + </tr> + <tr style="font-size:10px;color:#fff;text-align:center;"> + <td> + Per disiscriverti dalla nostra newsletter <span style="color:#95c11f;">clicca qui</span> + </td> + </tr> + <tr style="font-size:10px;color:#fff;text-align:center;"> + <td> + <span style="color:#95c11f;">© Showa Group 2017</span> | All rights reserved + </td> + </tr> + <tr style="font-size:10px;color:#fff;text-align:center;"> + <td> + <span style="color:#95c11f;">© Showa International</span> | WTC - Tower I - Strawinskylaan 1817 - 1077 XX Amsterdam - The Netherlands - contact : <span style="font-size:10px;color:#fff;text-decoration:none;">info@showagroup.eu</span> + </td> + </tr> + <tr style="background-color: #0D0117;"> + <td><img src="http://web2.pointvirgule.net/integration_emailing/showa-708-it-10-17/emailing-708-it_r1_c2.jpg" alt="emailing-708-it"></td> + </tr> + </tbody> + </table> + </td> + </tr> + </tbody> + </table> + </body> +</html> \ No newline at end of file diff --git a/site/export-reservations-adm.php b/site/export-reservations-adm.php new file mode 100644 index 0000000..73e9dea --- /dev/null +++ b/site/export-reservations-adm.php @@ -0,0 +1,176 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); +include('config/lib_personal_PhPExcel.php'); + +function downloadFile($file) { + $ar_ext = explode('.', $file); + $ext = strtolower(end($ar_ext)); + $extensions = array( + 'bmp' => 'image/bmp', + 'csv' => 'text/csv', + 'doc' => 'application/msword', + 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', + 'exe' => 'application/octet-stream', + 'gif' => 'image/gif', + 'htm' => 'text/html', + 'html' => 'text/html', + 'ico' => 'image/vnd.microsoft.icon', + 'jpeg' => 'image/jpg', + 'jpe' => 'image/jpg', + 'jpg' => 'image/jpg', + 'pdf' => 'application/pdf', + 'png' => 'image/png', + 'ppt' => 'application/vnd.ms-powerpoint', + 'psd' => 'image/psd', + 'swf' => 'application/x-shockwave-flash', + 'tif' => 'image/tiff', + 'tiff' => 'image/tiff', + 'xhtml' => 'application/xhtml+xml', + 'xml' => 'application/xml', + 'xls' => 'application/vnd.ms-excel', + 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', + 'zip' => 'application/zip' + ); + $ctype = isset($extensions[$ext]) ? $extensions[$ext] : 'application/force-download'; + + if (file_exists($file) && is_readable($file)) { + // required for IE, otherwise Content-disposition is ignored + if(ini_get('zlib.output_compression')) ini_set('zlib.output_compression', 'Off'); + + + header('Pragma: public'); // required + header('Expires: 0'); + header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); + header('Cache-Control: private',false); // required for certain browsers + header('Content-Type: '. $ctype); + header('Content-Disposition: attachment; filename='. $file .';' ); + header('Content-Transfer-Encoding: binary'); + header('Content-Length: '. filesize($file)); + readfile($file); + } + else { + header('HTTP/1.0 404 Not Found'); + echo "<h1>Error 404: File Not Found: <br /><em>$file</em></h1>"; + } +} +$maCleDeCryptage = getCleDeCryptage(); + +$pathFic = 'export/'; +$filename=date("Ymd")."_reservations.xls"; +$finalData=array(); +$cpt=1; + +//libelles +$finalData[0]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Etablissement"); +$finalData[0]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Adresse 1"); +$finalData[0]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Adresse 2"); +$finalData[0]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Code postal"); +$finalData[0]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Ville"); +$finalData[0]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Classes"); +$finalData[0]['G']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Elèves"); +$finalData[0]['H']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Date réservation"); +$finalData[0]['I']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Créneaux"); +$finalData[0]['J']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Nom CFA/LP"); +$finalData[0]['K']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Localité CFA/LP"); + + + $query="SELECT * + FROM `agenda` + INNER JOIN eta + ON eta.id_eta = agenda.numEta + WHERE `statut` = 'reserve' AND ( + `numEta` <> 399 + AND `numEta` <> 400 + AND `numEta` <> 402 + AND `numEta` <> 403)"; + $db = connect_base(); + $queryRequest = $db->query($query); + $queryRequest->execute(); + + + + if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); + + $coLy_tmp = array(); + $coLy_fullDetail = array(); + + + foreach($data as $key => $value){ + $coLy_tmp[] = array( + "id_college_lycee" => $value['numCoLy'], + "jour_reserve" => mysqlToDateFr($value['jour']), + "creneau" => getCreneauPlus($value['creneau']), + "nom_cfa_lp" => decrypter($maCleDeCryptage, $value['nom_eta']), + "localite_cfa_lp" => decrypter($maCleDeCryptage, $value['cp']). " " . decrypter($maCleDeCryptage, $value['ville']) + ); + } + + + foreach($coLy_tmp as $key => $value){ + + $db = connect_base(); + $query = $db->prepare("SELECT * FROM `collegelycee` WHERE `idCoLy` =:idCoLy"); + $query->bindParam( ':idCoLy', $value['id_college_lycee'], PDO::PARAM_INT ); + $query->execute(); + + $result[] = $query->fetchAll(); + $result[$key][0]['chxJour'] = $value['jour_reserve']; + $result[$key][0]['chxCreneau'] = $value['creneau']; + $result[$key][0]['nom_cfa_lp'] = $value['nom_cfa_lp']; + $result[$key][0]['localite_cfa_lp'] = $value['localite_cfa_lp']; + + } + + foreach($result as $k => $v){ + $coLy=decrypter($maCleDeCryptage,$v[0]['etaCoLy']); + $add1 = decrypter($maCleDeCryptage,$v[0]['adresse1CoLy']); + $add2 = decrypter($maCleDeCryptage,$v[0]['adresse2CoLy']); + $cp = decrypter($maCleDeCryptage,$v[0]['cpCoLy']); + $ville = decrypter($maCleDeCryptage,$v[0]['villeCoLy']); + $classes = $v[0]['nbClasses']; + $eleves = $v[0]['nbEleves']; + $date = $v[0]['chxJour']; + $creneaux = $v[0]['chxCreneau']; + $nomCfaLp = $v[0]['nom_cfa_lp']; + $localiteCfaLp = $v[0]['localite_cfa_lp']; + + + + + + $finalData[$cpt]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$coLy); + $finalData[$cpt]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$add1); + $finalData[$cpt]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$add2); + $finalData[$cpt]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$cp); + $finalData[$cpt]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$ville); + $finalData[$cpt]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$classes); + $finalData[$cpt]['G']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$eleves); + $finalData[$cpt]['H']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$date); + $finalData[$cpt]['I']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$creneaux); + $finalData[$cpt]['J']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$nomCfaLp); + $finalData[$cpt]['K']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$localiteCfaLp); + $cpt++; +} + } + +$attributsFichier = array(); +$attributsFichier[0] = "Export Deciday"; +$attributsFichier[1] = "Export Deciday"; +$attributsFichier[2] = "Export Deciday"; +$attributsFichier[3] = "Export Deciday"; +$attributsFichier[4] = "Export Deciday"; +$attributsFichier[5] = "Export Deciday"; +$attributsFichier[6] = "Export Deciday"; +$attributsFichier[7] = "Export Deciday"; + + + + + writingArrayWithLetterToExcel5WithType($pathFic.$filename, 0, "DECIDAY", $finalData, $attributsFichier, PHPExcel_Cell_DataType::TYPE_STRING); + + + downloadFile($pathFic.$filename); \ No newline at end of file diff --git a/site/export-suivi-cap-adm.php b/site/export-suivi-cap-adm.php new file mode 100644 index 0000000..503117c --- /dev/null +++ b/site/export-suivi-cap-adm.php @@ -0,0 +1,115 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); +include('config/lib_personal_PhPExcel.php'); + +function downloadFile($file) { + $ar_ext = explode('.', $file); + $ext = strtolower(end($ar_ext)); + $extensions = array( + 'bmp' => 'image/bmp', + 'csv' => 'text/csv', + 'doc' => 'application/msword', + 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', + 'exe' => 'application/octet-stream', + 'gif' => 'image/gif', + 'htm' => 'text/html', + 'html' => 'text/html', + 'ico' => 'image/vnd.microsoft.icon', + 'jpeg' => 'image/jpg', + 'jpe' => 'image/jpg', + 'jpg' => 'image/jpg', + 'pdf' => 'application/pdf', + 'png' => 'image/png', + 'ppt' => 'application/vnd.ms-powerpoint', + 'psd' => 'image/psd', + 'swf' => 'application/x-shockwave-flash', + 'tif' => 'image/tiff', + 'tiff' => 'image/tiff', + 'xhtml' => 'application/xhtml+xml', + 'xml' => 'application/xml', + 'xls' => 'application/vnd.ms-excel', + 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', + 'zip' => 'application/zip' + ); + $ctype = isset($extensions[$ext]) ? $extensions[$ext] : 'application/force-download'; + + if (file_exists($file) && is_readable($file)) { + // required for IE, otherwise Content-disposition is ignored + if(ini_get('zlib.output_compression')) ini_set('zlib.output_compression', 'Off'); + + + header('Pragma: public'); // required + header('Expires: 0'); + header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); + header('Cache-Control: private',false); // required for certain browsers + header('Content-Type: '. $ctype); + header('Content-Disposition: attachment; filename='. $file .';' ); + header('Content-Transfer-Encoding: binary'); + header('Content-Length: '. filesize($file)); + readfile($file); + } + else { + header('HTTP/1.0 404 Not Found'); + echo "<h1>Error 404: File Not Found: <br /><em>$file</em></h1>"; + } +} +$maCleDeCryptage = getCleDeCryptage(); + +$pathFic = 'export/'; +$filename=date("Ymd")."_suivi_cap.xls"; +$finalData=array(); +$cpt=1; + +//libelles +$finalData[0]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Nom"); +$finalData[0]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Prénom"); +$finalData[0]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Email"); +$finalData[0]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Etablissement"); +$finalData[0]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Code postal"); +$finalData[0]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Ville"); + +$query="SELECT * FROM `capitaines` + INNER JOIN eta ON num_eta = id_eta"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +foreach($data as $cle=>$val){ + $eta=$nom=$prenom=$cp=$ville=$email=""; + $eta=decrypter($maCleDeCryptage,$val['nom_eta']); + $cp=decrypter($maCleDeCryptage,$val['cp']); + $ville=decrypter($maCleDeCryptage,$val['ville']); + $nom=decrypter($maCleDeCryptage,$val['nom_cap']); + $prenom=decrypter($maCleDeCryptage,$val['prenom_cap']); + $email=decrypter($maCleDeCryptage,$val['email_cap']); + + + $finalData[$cpt]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$nom); + $finalData[$cpt]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$prenom); + $finalData[$cpt]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$email); + $finalData[$cpt]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$eta); + $finalData[$cpt]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$cp); + $finalData[$cpt]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$ville); + $cpt++; +} + +$attributsFichier = array(); +$attributsFichier[0] = "Export Deciday"; +$attributsFichier[1] = "Export Deciday"; +$attributsFichier[2] = "Export Deciday"; +$attributsFichier[3] = "Export Deciday"; +$attributsFichier[4] = "Export Deciday"; +$attributsFichier[5] = "Export Deciday"; +$attributsFichier[6] = "Export Deciday"; +$attributsFichier[7] = "Export Deciday"; + + + + + writingArrayWithLetterToExcel5WithType($pathFic.$filename, 0, "DECIDAY", $finalData, $attributsFichier, PHPExcel_Cell_DataType::TYPE_STRING); + + + downloadFile($pathFic.$filename); \ No newline at end of file diff --git a/site/export-suivi-cfa-adm.php b/site/export-suivi-cfa-adm.php new file mode 100644 index 0000000..85647ca --- /dev/null +++ b/site/export-suivi-cfa-adm.php @@ -0,0 +1,176 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); +include('config/lib_personal_PhPExcel.php'); + +function downloadFile($file) { + $ar_ext = explode('.', $file); + $ext = strtolower(end($ar_ext)); + $extensions = array( + 'bmp' => 'image/bmp', + 'csv' => 'text/csv', + 'doc' => 'application/msword', + 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', + 'exe' => 'application/octet-stream', + 'gif' => 'image/gif', + 'htm' => 'text/html', + 'html' => 'text/html', + 'ico' => 'image/vnd.microsoft.icon', + 'jpeg' => 'image/jpg', + 'jpe' => 'image/jpg', + 'jpg' => 'image/jpg', + 'pdf' => 'application/pdf', + 'png' => 'image/png', + 'ppt' => 'application/vnd.ms-powerpoint', + 'psd' => 'image/psd', + 'swf' => 'application/x-shockwave-flash', + 'tif' => 'image/tiff', + 'tiff' => 'image/tiff', + 'xhtml' => 'application/xhtml+xml', + 'xml' => 'application/xml', + 'xls' => 'application/vnd.ms-excel', + 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', + 'zip' => 'application/zip' + ); + $ctype = isset($extensions[$ext]) ? $extensions[$ext] : 'application/force-download'; + + if (file_exists($file) && is_readable($file)) { + // required for IE, otherwise Content-disposition is ignored + if(ini_get('zlib.output_compression')) ini_set('zlib.output_compression', 'Off'); + + + header('Pragma: public'); // required + header('Expires: 0'); + header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); + header('Cache-Control: private',false); // required for certain browsers + header('Content-Type: '. $ctype); + header('Content-Disposition: attachment; filename='. $file .';' ); + header('Content-Transfer-Encoding: binary'); + header('Content-Length: '. filesize($file)); + readfile($file); + } + else { + header('HTTP/1.0 404 Not Found'); + echo "<h1>Error 404: File Not Found: <br /><em>$file</em></h1>"; + } +} +$maCleDeCryptage = getCleDeCryptage(); + +$pathFic = 'export/'; +$filename=date("Ymd")."_suivi_cfa.xls"; +$finalData=array(); +$cpt=1; + +//libelles +$finalData[0]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Etablissement"); +$finalData[0]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Adresse 1"); +$finalData[0]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Adresse 2"); +$finalData[0]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Code postal"); +$finalData[0]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Ville"); +$finalData[0]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Référent"); +$finalData[0]['G']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Tél référent"); +$finalData[0]['H']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Email référent"); +$finalData[0]['I']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Inscriptions"); +$finalData[0]['J']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Sollicitations"); +$finalData[0]['K']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Rendez-vous"); +$finalData[0]['L']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Classes"); +$finalData[0]['M']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Elèves"); +$finalData[0]['N']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Date dernière connexion"); +$query='select * from eta'; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +foreach($data as $cle=>$val){ + $eta=$add1=$add2=$cp=$ville=$nom_ref=$tel_ref=$email_ref=""; + $eta=decrypter($maCleDeCryptage,$val['nom_eta']); + $add1=decrypter($maCleDeCryptage,$val['adresse1']); + $add2=decrypter($maCleDeCryptage,$val['adresse2']); + $cp=decrypter($maCleDeCryptage,$val['cp']); + $ville=decrypter($maCleDeCryptage,$val['ville']); + $nom_ref=decrypter($maCleDeCryptage,$val['nom_ref']); + $tel_ref=decrypter($maCleDeCryptage,$val['tel_ref']); + $email_ref=decrypter($maCleDeCryptage,$val['email_ref']); + $derniereCo = MysqlToDateFr($val['date_co']); + if($derniereCo == "01/01/1970") $derniereCo = ""; + + + //NB Trinômes Total + $query="select * from capitaines,equipes where id_cap=num_capitaine and capitaines.num_eta=:id_eta"; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query ); + $queryRequest2->bindParam( ':id_eta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest2->execute(); + $trinomes=$queryRequest2->rowCount(); + + if($trinomes == 0 ){ + $trinomes = "Non inscrit"; + } else { + if ($trinomes == 1 ) $trinomes = $trinomes.' trinôme'; + else $trinomes = $trinomes.' trinômes'; + } + + //NB de RDV, de classes et d'élèves + $query3="SELECT count(*) as rdvs, sum(nbClasses) as classes, sum(nbEleves) as eleves + FROM agenda + INNER JOIN collegelycee ON idCoLy=numCoLy + WHERE statut= 'reserve' AND numEta=:numEta"; + $db3 = connect_base(); + $queryRequest3 = $db3->prepare( $query3 ); + $queryRequest3->bindParam( ':numEta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest3->execute(); + $data3=$queryRequest3->fetchAll(); + if(isset($data3[0]['rdvs'])) $countRDV = $data3[0]['rdvs']; else $countRDV = 0; + if(isset($data3[0]['classes'])) $classes = $data3[0]['classes']; else $classes = 0; + if(isset($data3[0]['eleves'])) $eleves = $data3[0]['eleves']; else $eleves = 0; + + + //NB total de sollicitations, nb total de classes et nb total d'élèves + $query4="SELECT count(*) as sollicitations, sum(nbClasses) as classes, sum(nbEleves) as eleves + FROM sollicitations + WHERE traitement<>1 AND chxNumEta=:chxNumEta"; + $db4 = connect_base(); + $queryRequest4 = $db4->prepare( $query4 ); + $queryRequest4->bindParam( ':chxNumEta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest4->execute(); + $data4=$queryRequest4->fetchAll(); + if(isset($data4[0]['sollicitations'])) $countSol = $data4[0]['sollicitations']; else $countSol = 0; + if(isset($data4[0]['classes'])) $classes = $classes + $data4[0]['classes']; + if(isset($data4[0]['eleves'])) $eleves = $eleves + $data4[0]['eleves']; + + $finalData[$cpt]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$eta); + $finalData[$cpt]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$add1); + $finalData[$cpt]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$add2); + $finalData[$cpt]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$cp); + $finalData[$cpt]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$ville); + $finalData[$cpt]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$nom_ref); + $finalData[$cpt]['G']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$tel_ref); + $finalData[$cpt]['H']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$email_ref); + $finalData[$cpt]['I']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$trinomes); + $finalData[$cpt]['J']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$countSol); + $finalData[$cpt]['K']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$countRDV); + $finalData[$cpt]['L']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$classes); + $finalData[$cpt]['M']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$eleves); + $finalData[$cpt]['N']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$derniereCo); + $cpt++; +} + +$attributsFichier = array(); +$attributsFichier[0] = "Export Deciday"; +$attributsFichier[1] = "Export Deciday"; +$attributsFichier[2] = "Export Deciday"; +$attributsFichier[3] = "Export Deciday"; +$attributsFichier[4] = "Export Deciday"; +$attributsFichier[5] = "Export Deciday"; +$attributsFichier[6] = "Export Deciday"; +$attributsFichier[7] = "Export Deciday"; + + + + + writingArrayWithLetterToExcel5WithType($pathFic.$filename, 0, "DECIDAY", $finalData, $attributsFichier, PHPExcel_Cell_DataType::TYPE_STRING); + + + downloadFile($pathFic.$filename); \ No newline at end of file diff --git a/site/export-suivi-jpo-adm.php b/site/export-suivi-jpo-adm.php new file mode 100644 index 0000000..90eb01f --- /dev/null +++ b/site/export-suivi-jpo-adm.php @@ -0,0 +1,115 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); +include('config/lib_personal_PhPExcel.php'); + +function downloadFile($file) { + $ar_ext = explode('.', $file); + $ext = strtolower(end($ar_ext)); + $extensions = array( + 'bmp' => 'image/bmp', + 'csv' => 'text/csv', + 'doc' => 'application/msword', + 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', + 'exe' => 'application/octet-stream', + 'gif' => 'image/gif', + 'htm' => 'text/html', + 'html' => 'text/html', + 'ico' => 'image/vnd.microsoft.icon', + 'jpeg' => 'image/jpg', + 'jpe' => 'image/jpg', + 'jpg' => 'image/jpg', + 'pdf' => 'application/pdf', + 'png' => 'image/png', + 'ppt' => 'application/vnd.ms-powerpoint', + 'psd' => 'image/psd', + 'swf' => 'application/x-shockwave-flash', + 'tif' => 'image/tiff', + 'tiff' => 'image/tiff', + 'xhtml' => 'application/xhtml+xml', + 'xml' => 'application/xml', + 'xls' => 'application/vnd.ms-excel', + 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', + 'zip' => 'application/zip' + ); + $ctype = isset($extensions[$ext]) ? $extensions[$ext] : 'application/force-download'; + + if (file_exists($file) && is_readable($file)) { + // required for IE, otherwise Content-disposition is ignored + if(ini_get('zlib.output_compression')) ini_set('zlib.output_compression', 'Off'); + + + header('Pragma: public'); // required + header('Expires: 0'); + header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); + header('Cache-Control: private',false); // required for certain browsers + header('Content-Type: '. $ctype); + header('Content-Disposition: attachment; filename='. $file .';' ); + header('Content-Transfer-Encoding: binary'); + header('Content-Length: '. filesize($file)); + readfile($file); + } + else { + header('HTTP/1.0 404 Not Found'); + echo "<h1>Error 404: File Not Found: <br /><em>$file</em></h1>"; + } +} +$maCleDeCryptage = getCleDeCryptage(); + +$pathFic = 'export/'; +$filename=date("Ymd")."_suivi_jpo.xls"; +$finalData=array(); +$cpt=1; + +//libelles +$finalData[0]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Etablissement"); +$finalData[0]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Code postal"); +$finalData[0]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Ville"); +$finalData[0]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Email référent"); +$finalData[0]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","JPO"); +$finalData[0]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Détails"); +$query="SELECT * + FROM eta + LEFT JOIN jpo ON jpo.id_eta = eta.id_eta"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +foreach($data as $cle=>$val){ + $eta = decrypter($maCleDeCryptage,$val['nom_eta']); + $cp = decrypter($maCleDeCryptage,$val['cp']); + $ville = decrypter($maCleDeCryptage,$val['ville']); + $email_ref = decrypter($maCleDeCryptage,$val['email_ref']); + $jpo="non"; + if(!is_null($val['id_jpo'])) $jpo = "oui"; + $details = str_replace("&nbsp;"," ",utf8_decode(strip_tags(decrypter($maCleDeCryptage,$val['details_jpo'])))); + + + $finalData[$cpt]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$eta); + $finalData[$cpt]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$cp); + $finalData[$cpt]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$ville); + $finalData[$cpt]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$email_ref); + $finalData[$cpt]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$jpo); + $finalData[$cpt]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$details); + $cpt++; +} + +$attributsFichier = array(); +$attributsFichier[0] = "Export Deciday"; +$attributsFichier[1] = "Export Deciday"; +$attributsFichier[2] = "Export Deciday"; +$attributsFichier[3] = "Export Deciday"; +$attributsFichier[4] = "Export Deciday"; +$attributsFichier[5] = "Export Deciday"; +$attributsFichier[6] = "Export Deciday"; +$attributsFichier[7] = "Export Deciday"; + + + + + writingArrayWithLetterToExcel5WithType($pathFic.$filename, 0, "DECIDAY", $finalData, $attributsFichier, PHPExcel_Cell_DataType::TYPE_STRING); + + + downloadFile($pathFic.$filename); \ No newline at end of file diff --git a/site/export-suivi-pro-adm.php b/site/export-suivi-pro-adm.php new file mode 100644 index 0000000..9541699 --- /dev/null +++ b/site/export-suivi-pro-adm.php @@ -0,0 +1,150 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); +include('config/lib_personal_PhPExcel.php'); + +function downloadFile($file) { + $ar_ext = explode('.', $file); + $ext = strtolower(end($ar_ext)); + $extensions = array( + 'bmp' => 'image/bmp', + 'csv' => 'text/csv', + 'doc' => 'application/msword', + 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', + 'exe' => 'application/octet-stream', + 'gif' => 'image/gif', + 'htm' => 'text/html', + 'html' => 'text/html', + 'ico' => 'image/vnd.microsoft.icon', + 'jpeg' => 'image/jpg', + 'jpe' => 'image/jpg', + 'jpg' => 'image/jpg', + 'pdf' => 'application/pdf', + 'png' => 'image/png', + 'ppt' => 'application/vnd.ms-powerpoint', + 'psd' => 'image/psd', + 'swf' => 'application/x-shockwave-flash', + 'tif' => 'image/tiff', + 'tiff' => 'image/tiff', + 'xhtml' => 'application/xhtml+xml', + 'xml' => 'application/xml', + 'xls' => 'application/vnd.ms-excel', + 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', + 'zip' => 'application/zip' + ); + $ctype = isset($extensions[$ext]) ? $extensions[$ext] : 'application/force-download'; + + if (file_exists($file) && is_readable($file)) { + // required for IE, otherwise Content-disposition is ignored + if(ini_get('zlib.output_compression')) ini_set('zlib.output_compression', 'Off'); + + + header('Pragma: public'); // required + header('Expires: 0'); + header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); + header('Cache-Control: private',false); // required for certain browsers + header('Content-Type: '. $ctype); + header('Content-Disposition: attachment; filename='. $file .';' ); + header('Content-Transfer-Encoding: binary'); + header('Content-Length: '. filesize($file)); + readfile($file); + } + else { + header('HTTP/1.0 404 Not Found'); + echo "<h1>Error 404: File Not Found: <br /><em>$file</em></h1>"; + } +} +$maCleDeCryptage = getCleDeCryptage(); + +$pathFic = 'export/'; +$filename=date("Ymd")."_suivi_pro.xls"; +$finalData=array(); +$cpt=1; + +//libelles +$finalData[0]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Etablissement"); +$finalData[0]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Siret"); +$finalData[0]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Nom"); +$finalData[0]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Prénom"); +$finalData[0]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Adresse 1"); +$finalData[0]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Adresse 2"); +$finalData[0]['G']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Code postal"); +$finalData[0]['H']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Ville"); +$finalData[0]['I']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Mobile"); +$finalData[0]['J']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Fixe"); +$finalData[0]['K']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Email"); +$finalData[0]['L']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Déciday!"); +$finalData[0]['M']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Stage 3ème"); +$finalData[0]['N']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Rdv étudiant"); +$finalData[0]['O']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Date d'inscription"); +$finalData[0]['P']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Statut"); +$finalData[0]['Q']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Commentaire"); + +$query="select * from inscriptions_pro"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); + +foreach($data as $cle=>$val){ + $eta = decrypter($maCleDeCryptage,$val['etablissement_pro']); + $siret = decrypter($maCleDeCryptage,$val['siret_pro']); + $nom = decrypter($maCleDeCryptage,$val['nom_pro']); + $prenom = decrypter($maCleDeCryptage,$val['prenom_pro']); + $adr1 = decrypter($maCleDeCryptage,$val['adr1_pro']); + $adr2 = decrypter($maCleDeCryptage,$val['adr2_pro']); + $cp = decrypter($maCleDeCryptage,$val['cp_pro']); + $ville = decrypter($maCleDeCryptage,$val['ville_pro']); + $mobile = decrypter($maCleDeCryptage,$val['mobile_pro']); + $fixe = decrypter($maCleDeCryptage,$val['fixe_pro']); + $email = decrypter($maCleDeCryptage,$val['email_pro']); + if($val['faireEquipe'] == 1) $deciday = "oui"; else $deciday = "non"; + if($val['recevoirStage'] == 1) $stage = "oui"; else $stage = "non"; + if($val['recevoirJeunes']== 1) $rdv = "oui"; else $rdv = "non"; + $date = mysqlToDateFr($val['date_insert']); + if($val['statut'] == 1) $statut = "validé"; + else if ($val['statut'] == 2) $statut = "refusé"; + else $statut = "en attente"; + $commentaire = decrypter($maCleDeCryptage,$val['comment_pro']); + + + + $finalData[$cpt]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$eta); + $finalData[$cpt]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$siret); + $finalData[$cpt]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$nom); + $finalData[$cpt]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$prenom); + $finalData[$cpt]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$adr1); + $finalData[$cpt]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$adr2); + $finalData[$cpt]['G']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$cp); + $finalData[$cpt]['H']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$ville); + $finalData[$cpt]['I']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$mobile); + $finalData[$cpt]['J']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$fixe); + $finalData[$cpt]['K']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$email); + $finalData[$cpt]['L']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$deciday); + $finalData[$cpt]['M']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$stage); + $finalData[$cpt]['N']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$rdv); + $finalData[$cpt]['O']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$date); + $finalData[$cpt]['P']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$statut); + $finalData[$cpt]['Q']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$commentaire); + $cpt++; +} + +$attributsFichier = array(); +$attributsFichier[0] = "Export Deciday"; +$attributsFichier[1] = "Export Deciday"; +$attributsFichier[2] = "Export Deciday"; +$attributsFichier[3] = "Export Deciday"; +$attributsFichier[4] = "Export Deciday"; +$attributsFichier[5] = "Export Deciday"; +$attributsFichier[6] = "Export Deciday"; +$attributsFichier[7] = "Export Deciday"; + + + + + writingArrayWithLetterToExcel5WithType($pathFic.$filename, 0, "DECIDAY", $finalData, $attributsFichier, PHPExcel_Cell_DataType::TYPE_STRING); + + + downloadFile($pathFic.$filename); \ No newline at end of file diff --git a/site/export-suivi-sollicitations-adm.php b/site/export-suivi-sollicitations-adm.php new file mode 100644 index 0000000..484768d --- /dev/null +++ b/site/export-suivi-sollicitations-adm.php @@ -0,0 +1,165 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); +include('config/lib_personal_PhPExcel.php'); + +function downloadFile($file) { + $ar_ext = explode('.', $file); + $ext = strtolower(end($ar_ext)); + $extensions = array( + 'bmp' => 'image/bmp', + 'csv' => 'text/csv', + 'doc' => 'application/msword', + 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', + 'exe' => 'application/octet-stream', + 'gif' => 'image/gif', + 'htm' => 'text/html', + 'html' => 'text/html', + 'ico' => 'image/vnd.microsoft.icon', + 'jpeg' => 'image/jpg', + 'jpe' => 'image/jpg', + 'jpg' => 'image/jpg', + 'pdf' => 'application/pdf', + 'png' => 'image/png', + 'ppt' => 'application/vnd.ms-powerpoint', + 'psd' => 'image/psd', + 'swf' => 'application/x-shockwave-flash', + 'tif' => 'image/tiff', + 'tiff' => 'image/tiff', + 'xhtml' => 'application/xhtml+xml', + 'xml' => 'application/xml', + 'xls' => 'application/vnd.ms-excel', + 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', + 'zip' => 'application/zip' + ); + $ctype = isset($extensions[$ext]) ? $extensions[$ext] : 'application/force-download'; + + if (file_exists($file) && is_readable($file)) { + // required for IE, otherwise Content-disposition is ignored + if(ini_get('zlib.output_compression')) ini_set('zlib.output_compression', 'Off'); + + + header('Pragma: public'); // required + header('Expires: 0'); + header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); + header('Cache-Control: private',false); // required for certain browsers + header('Content-Type: '. $ctype); + header('Content-Disposition: attachment; filename='. $file .';' ); + header('Content-Transfer-Encoding: binary'); + header('Content-Length: '. filesize($file)); + readfile($file); + } + else { + header('HTTP/1.0 404 Not Found'); + echo "<h1>Error 404: File Not Found: <br /><em>$file</em></h1>"; + } +} +$maCleDeCryptage = getCleDeCryptage(); + +$pathFic = 'export/'; +$filename=date("Ymd")."_suivi_sollicitations.xls"; +$finalData=array(); +$cpt=1; + +//libelles +$finalData[0]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","CFA/LP"); +$finalData[0]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Code postal"); +$finalData[0]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Ville"); +$finalData[0]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","E-mail référent"); +$finalData[0]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Etablissement"); +$finalData[0]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Nom Prénom"); +$finalData[0]['G']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Fonction"); +$finalData[0]['H']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Téléphone"); +$finalData[0]['I']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","E-mail"); +$finalData[0]['J']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Adresse 1"); +$finalData[0]['K']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Adresse 2"); +$finalData[0]['L']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Code postal"); +$finalData[0]['M']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Ville"); +$finalData[0]['N']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Classes"); +$finalData[0]['O']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Elèves"); +$finalData[0]['P']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Créneaux"); +$finalData[0]['Q']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Statut"); +$finalData[0]['R']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Date"); +$finalData[0]['S']=iconv("UTF-8", "ISO-8859-1//TRANSLIT","Commentaire"); +$query="SELECT * + FROM `sollicitations` + INNER JOIN `eta` ON id_eta = chxNumEta + ORDER BY dateCreate ASC"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +foreach($data as $cle=>$val){ + $lp=$lpCP=$lpVille=$lpEmail=$coLy=$add1=$add2=$cp=$ville=$nom_CoLy=$fonction_CoLy=$tel_CoLy=$email_CoLy=""; + $lp=decrypter($maCleDeCryptage,$val['nom_eta']); + $lpCP=decrypter($maCleDeCryptage,$val['cp']); + $lpVille=decrypter($maCleDeCryptage,$val['ville']); + $lpEmail=decrypter($maCleDeCryptage,$val['email_ref']); + $coLy=decrypter($maCleDeCryptage,$val['etaCoLy']); + $nom_CoLy=decrypter($maCleDeCryptage,$val['nomCoLy'])." ".decrypter($maCleDeCryptage,$val['prenomCoLy']); + $fonction_CoLy=decrypter($maCleDeCryptage,$val['fonctionCoLy']); + $tel_CoLy=decrypter($maCleDeCryptage,$val['telCoLy']); + $email_CoLy=decrypter($maCleDeCryptage,$val['emlCoLy']); + $add1 = decrypter($maCleDeCryptage,$val['adresse1CoLy']); + $add2 = decrypter($maCleDeCryptage,$val['adresse2CoLy']); + $cp = decrypter($maCleDeCryptage,$val['cpCoLy']); + $ville = decrypter($maCleDeCryptage,$val['villeCoLy']); + $classes = $val['nbClasses']; + $eleves = $val['nbEleves']; + $creneaux = MysqlToDateFr($val['chxJour'])." ".$val['chxCreneau']; + if($val['traitement'] <> 1) { + if(intval($val['idCapitaine']) > 0 ){ + $statut = "En attente"; + } else { + $statut = "Refusée"; + } + } else { + $statut = "Traitée"; + } + $date=MysqlToDateFr($val['dateCreate']); + $commentaire=decrypter($maCleDeCryptage,$val['commentCoLy']); + + + + + $finalData[$cpt]['A']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$lp); + $finalData[$cpt]['B']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$lpCP); + $finalData[$cpt]['C']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$lpVille); + $finalData[$cpt]['D']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$lpEmail); + $finalData[$cpt]['E']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$coLy); + $finalData[$cpt]['F']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$nom_CoLy); + $finalData[$cpt]['G']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$fonction_CoLy); + $finalData[$cpt]['H']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$tel_CoLy); + $finalData[$cpt]['I']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$email_CoLy); + $finalData[$cpt]['J']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$add1); + $finalData[$cpt]['K']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$add2); + $finalData[$cpt]['L']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$cp); + $finalData[$cpt]['M']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$ville); + $finalData[$cpt]['N']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$classes); + $finalData[$cpt]['O']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$eleves); + $finalData[$cpt]['P']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$creneaux); + $finalData[$cpt]['Q']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$statut); + $finalData[$cpt]['R']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$date); + $finalData[$cpt]['S']=iconv("UTF-8", "ISO-8859-1//TRANSLIT",$commentaire); + $cpt++; +} + +$attributsFichier = array(); +$attributsFichier[0] = "Export Deciday"; +$attributsFichier[1] = "Export Deciday"; +$attributsFichier[2] = "Export Deciday"; +$attributsFichier[3] = "Export Deciday"; +$attributsFichier[4] = "Export Deciday"; +$attributsFichier[5] = "Export Deciday"; +$attributsFichier[6] = "Export Deciday"; +$attributsFichier[7] = "Export Deciday"; + + + + + writingArrayWithLetterToExcel5WithType($pathFic.$filename, 0, "DECIDAY", $finalData, $attributsFichier, PHPExcel_Cell_DataType::TYPE_STRING); + + + downloadFile($pathFic.$filename); \ No newline at end of file diff --git a/site/export/_notes/dwsync.xml b/site/export/_notes/dwsync.xml new file mode 100644 index 0000000..b21f23d --- /dev/null +++ b/site/export/_notes/dwsync.xml @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +</dwsync> \ No newline at end of file diff --git a/site/first.php b/site/first.php new file mode 100644 index 0000000..939ad44 --- /dev/null +++ b/site/first.php @@ -0,0 +1,68 @@ +<?php +include('include/entete.php'); +if(isset($_SESSION['cfa_co']) && $_SESSION['cfa_co']==1){ + header('location:index-cfa.php'); + exit(); +} +if(isset($_SESSION['cap_co']) && $_SESSION['cap_co']==1){ + header('location:index-cap.php'); + exit(); +} +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script> +function valid_co(){ + if(document.frmCo.mdp_first.value==""){ + alert('Merci de renseigner un mot de passe.') + return false; + } + if(document.frmCo.mdp_first.value.length<8){ + alert('Merci de renseigner un mot de passe comportant au moins 8 caractères.') + return false; + } + if(document.frmCo.mdp_first.value!=document.frmCo.mdp_conf.value){ + alert('Votre mot de passe n\est pas confirmé.') + return false; + } + return true; +} +jQuery(document).ready(function(){ + document.frmCo.mdp_first.focus(); +}); +</script> + +</head> + +<body> + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre mot de passe : </div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <form name="frmCo" id="frmCo" method="post" action="actions-mdp.php" onSubmit="return valid_co();"> + <div class="titreFrm"></div> + <div class="labFrm">Mot de passe :</div> + <input type="password" name="mdp_first" id="mdp_first" /><br /> + <div class="labFrm">Confirmation mot de passe :</div> + <input type="password" name="mdp_conf" id="mdp_conf" /><br /> + <input type="hidden" name="action" value="go_first" /> + <input type="submit" value="Envoyer"> + </form> + + </div> + + <?php include('include/footer.php');?> +</body> +</html> \ No newline at end of file diff --git a/site/geocode.php b/site/geocode.php new file mode 100644 index 0000000..72176ae --- /dev/null +++ b/site/geocode.php @@ -0,0 +1,45 @@ +<?php +ini_set('display_errors',1); +header('Content-Type: text/html; charset=utf-8'); + +include('config/config.inc.php'); +include('config/lib.inc.php'); +exit(); + +$maCleDeCryptage = getCleDeCryptage(); +$query="select * from eta where lat='0.0000000000' and lon='0.0000000000'"; +//$query="select * from eta where id_eta>409"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); + + foreach($data as $cle=>$val){ + $add=decrypter($maCleDeCryptage,$val['adresse1'])." "; + $add.=decrypter($maCleDeCryptage,$val['adresse2'])." "; + $add.=decrypter($maCleDeCryptage,$val['cp'])." "; + $add.=decrypter($maCleDeCryptage,$val['ville']); + echo $add.'<br /><br />'; + $url_gmap = 'https://maps.googleapis.com/maps/api/geocode/json?address=' . urlencode(utf8_encode($add)) . '&sensor=false&key=AIzaSyAD8dr4sS_iFafcU_AowzS9p9B306iQEZQ'; + $json = json_decode(file_get_contents($url_gmap), true); + $coord = $json['results']['0']['geometry']['location']; + //$file2[$line] = $content . ';' . $coord['lat'] . ';' . $coord['lng']; + echo "<br>"; echo "Lat : ".$coord['lat']; + echo "<br>"; + echo "Lon : ".$coord['lng']; + echo "<br>"; echo "<br>"; echo "<br>"; + $query2="update eta set lat=:lat, lon=:lon where id_eta=:id_eta"; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query2 ); + $queryRequest2->bindParam( ':id_eta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest2->bindParam( ':lat', $coord['lat'], PDO::PARAM_STR); + $queryRequest2->bindParam( ':lon', $coord['lng'], PDO::PARAM_STR ); + $queryRequest2->execute(); + + } +} + + + +?> \ No newline at end of file diff --git a/site/images/Thumbs.db b/site/images/Thumbs.db new file mode 100644 index 0000000..3df12a1 Binary files /dev/null and b/site/images/Thumbs.db differ diff --git a/site/images/_notes/dwsync.xml b/site/images/_notes/dwsync.xml new file mode 100644 index 0000000..c6ea445 --- /dev/null +++ b/site/images/_notes/dwsync.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="bandeau-contact.jpg" server="62.244.88.21/deciday_18/" local="131837470267493304" remote="131837398200000000" Dst="2" /> +<file name="facebook.jpg" server="62.244.88.21/deciday/" local="131861633740440373" remote="131861598000000000" Dst="1" /> +<file name="youtube.jpg" server="62.244.88.21/deciday/" local="131861633813883588" remote="131861598000000000" Dst="1" /> +<file name="bandeau-contact.jpg" server="62.244.88.21/deciday/" local="131919462307026768" remote="131837470200000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/images/bandeau-contact.jpg b/site/images/bandeau-contact.jpg new file mode 100644 index 0000000..b0d872c Binary files /dev/null and b/site/images/bandeau-contact.jpg differ diff --git a/site/images/facebook.jpg b/site/images/facebook.jpg new file mode 100644 index 0000000..0f806a9 Binary files /dev/null and b/site/images/facebook.jpg differ diff --git a/site/images/youtube.jpg b/site/images/youtube.jpg new file mode 100644 index 0000000..0212fac Binary files /dev/null and b/site/images/youtube.jpg differ diff --git a/site/img/Thumbs.db b/site/img/Thumbs.db new file mode 100644 index 0000000..e8a7d2f Binary files /dev/null and b/site/img/Thumbs.db differ diff --git a/site/img/_notes/dwsync.xml b/site/img/_notes/dwsync.xml new file mode 100644 index 0000000..e8c710b --- /dev/null +++ b/site/img/_notes/dwsync.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="borderPRO.png" server="62.244.88.21/fafih_deciday/" local="131823514437885470" remote="131823442800000000" Dst="2" /> +<file name="borderDecouvrez.png" server="62.244.88.21/fafih_deciday/" local="131823517604963517" remote="131823447000000000" Dst="2" /> +<file name="borderPO.png" server="62.244.88.21/fafih_deciday/" local="131823517970682738" remote="131823447000000000" Dst="2" /> +<file name="borderDecouvrez.png" server="62.244.88.21/deciday_18/" local="131823517604963517" remote="131824305000000000" Dst="2" /> +<file name="borderPO.png" server="62.244.88.21/deciday_18/" local="131823517970682738" remote="131824305000000000" Dst="2" /> +<file name="borderPRO.png" server="62.244.88.21/deciday_18/" local="131823514437885470" remote="131824305000000000" Dst="2" /> +<file name="fond_titre_contenu.jpg" server="62.244.88.21/deciday_18/" local="131830347300580089" remote="131830275600000000" Dst="2" /> +<file name="fond_bandeau_repeat.jpg" server="62.244.88.21/deciday_18/" local="131837177565039826" remote="131837105400000000" Dst="2" /> +<file name="perso_bandeau.png" server="62.244.88.21/deciday_18/" local="131837177065648520" remote="131837105400000000" Dst="2" /> +<file name="fond_bandeau.jpg" server="62.244.88.21/deciday_18/" local="131837178624823429" remote="131837106600000000" Dst="2" /> +<file name="fond_tps_forts.png" server="62.244.88.21/deciday_18/" local="131837197068714217" remote="131837124600000000" Dst="2" /> +<file name="fond_titre_contenu.jpg" server="62.244.88.21/deciday/" local="131919455472491322" remote="131830347600000000" Dst="1" /> +<file name="borderPO.png" server="62.244.88.21/deciday/" local="131919455475268858" remote="131824377000000000" Dst="1" /> +<file name="borderDecouvrez.png" server="62.244.88.21/deciday/" local="131919455475445419" remote="131824377000000000" Dst="1" /> +<file name="borderPRO.png" server="62.244.88.21/deciday/" local="131919455476715988" remote="131824377000000000" Dst="1" /> +<file name="fond_bandeau_repeat.jpg" server="62.244.88.21/deciday/" local="131919455477208207" remote="131837177400000000" Dst="1" /> +<file name="fond_bandeau.jpg" server="62.244.88.21/deciday/" local="131919455478182928" remote="131837178600000000" Dst="1" /> +<file name="fond_tps_forts.png" server="62.244.88.21/deciday/" local="131919455479666217" remote="131837196600000000" Dst="1" /> +<file name="perso_bandeau.png" server="62.244.88.21/deciday/" local="131919462318396322" remote="131837177400000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/img/blocs/Logo_Deciday.png b/site/img/blocs/Logo_Deciday.png new file mode 100644 index 0000000..f543692 Binary files /dev/null and b/site/img/blocs/Logo_Deciday.png differ diff --git a/site/img/blocs/MHR/Thumbs.db b/site/img/blocs/MHR/Thumbs.db new file mode 100644 index 0000000..eb76f0d Binary files /dev/null and b/site/img/blocs/MHR/Thumbs.db differ diff --git a/site/img/blocs/MHR/_notes/dwsync.xml b/site/img/blocs/MHR/_notes/dwsync.xml new file mode 100644 index 0000000..0cd5b7e --- /dev/null +++ b/site/img/blocs/MHR/_notes/dwsync.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="bg_MHR.jpg" server="62.244.88.21/fafih_deciday/" local="131544338505147577" remote="131823477600000000" Dst="2" /> +<file name="logo_MHR.png" server="62.244.88.21/fafih_deciday/" local="131544333344594416" remote="131823477600000000" Dst="2" /> +<file name="Thumbs.db" server="62.244.88.21/fafih_deciday/" local="131544346014840000" remote="131823477600000000" Dst="2" /> +<file name="bg_MHR.jpg" server="62.244.88.21/deciday_18/" local="131544338505147577" remote="131824305000000000" Dst="2" /> +<file name="logo_MHR.png" server="62.244.88.21/deciday_18/" local="131544333344594416" remote="131824305000000000" Dst="2" /> +<file name="Thumbs.db" server="62.244.88.21/deciday_18/" local="131544346014840000" remote="131824305000000000" Dst="2" /> +<file name="bg_MHR.jpg" server="62.244.88.21/deciday/" local="131919462312387403" remote="131824377000000000" Dst="1" /> +<file name="logo_MHR.png" server="62.244.88.21/deciday/" local="131919462312811735" remote="131824377000000000" Dst="1" /> +<file name="Thumbs.db" server="62.244.88.21/deciday/" local="131919462312987233" remote="131824377000000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/img/blocs/MHR/bg_MHR.jpg b/site/img/blocs/MHR/bg_MHR.jpg new file mode 100644 index 0000000..933dd5f Binary files /dev/null and b/site/img/blocs/MHR/bg_MHR.jpg differ diff --git a/site/img/blocs/MHR/logo_MHR.png b/site/img/blocs/MHR/logo_MHR.png new file mode 100644 index 0000000..cf9b48d Binary files /dev/null and b/site/img/blocs/MHR/logo_MHR.png differ diff --git a/site/img/blocs/Thumbs.db b/site/img/blocs/Thumbs.db new file mode 100644 index 0000000..d41602c Binary files /dev/null and b/site/img/blocs/Thumbs.db differ diff --git a/site/img/blocs/_notes/dwsync.xml b/site/img/blocs/_notes/dwsync.xml new file mode 100644 index 0000000..4d0dc8c --- /dev/null +++ b/site/img/blocs/_notes/dwsync.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="parents.png" server="62.244.88.21/fafih_deciday/" local="131823402773573537" remote="131823330600000000" Dst="2" /> +<file name="colleges_lycees.png" server="62.244.88.21/fafih_deciday/" local="131823403809106079" remote="131823336600000000" Dst="2" /> +<file name="jeunes.png" server="62.244.88.21/fafih_deciday/" local="131823403260495656" remote="131823336600000000" Dst="2" /> +<file name="Logo_Deciday.png" server="62.244.88.21/fafih_deciday/" local="131823443624570121" remote="131823371400000000" Dst="2" /> +<file name="backgroundColLy.jpg" server="62.244.88.21/fafih_deciday/" local="131823568778709099" remote="131823496800000000" Dst="2" /> +<file name="backgroundJeunes.jpg" server="62.244.88.21/fafih_deciday/" local="131824275089608508" remote="131824203000000000" Dst="2" /> +<file name="backgroundParents.jpg" server="62.244.88.21/fafih_deciday/" local="131823566467105694" remote="131823496800000000" Dst="2" /> +<file name="backgroundColLy.jpg" server="62.244.88.21/deciday_18/" local="131823568778709099" remote="131824305000000000" Dst="2" /> +<file name="backgroundJeunes.jpg" server="62.244.88.21/deciday_18/" local="131824275089608508" remote="131824305000000000" Dst="2" /> +<file name="backgroundParents.jpg" server="62.244.88.21/deciday_18/" local="131823566467105694" remote="131824305000000000" Dst="2" /> +<file name="colleges_lycees.png" server="62.244.88.21/deciday_18/" local="131823403809106079" remote="131824305000000000" Dst="2" /> +<file name="jeunes.png" server="62.244.88.21/deciday_18/" local="131823403260495656" remote="131824305000000000" Dst="2" /> +<file name="Logo_Deciday.png" server="62.244.88.21/deciday_18/" local="131823443624570121" remote="131824305000000000" Dst="2" /> +<file name="parents.png" server="62.244.88.21/deciday_18/" local="131823402773573537" remote="131824305000000000" Dst="2" /> +<file name="backgroundParents.jpg" server="62.244.88.21/deciday/" local="131919455472985573" remote="131884068000000000" Dst="1" /> +<file name="backgroundJeunes.jpg" server="62.244.88.21/deciday/" local="131919455473650778" remote="131884068600000000" Dst="1" /> +<file name="backgroundColLy.jpg" server="62.244.88.21/deciday/" local="131919455473980615" remote="131884068600000000" Dst="1" /> +<file name="colleges_lycees.png" server="62.244.88.21/deciday/" local="131919462309358005" remote="131824377000000000" Dst="1" /> +<file name="jeunes.png" server="62.244.88.21/deciday/" local="131919462310223510" remote="131824377000000000" Dst="1" /> +<file name="Logo_Deciday.png" server="62.244.88.21/deciday/" local="131919462311212463" remote="131824377000000000" Dst="1" /> +<file name="parents.png" server="62.244.88.21/deciday/" local="131919462313572835" remote="131824377000000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/img/blocs/backgroundColLy.jpg b/site/img/blocs/backgroundColLy.jpg new file mode 100644 index 0000000..49e6d94 Binary files /dev/null and b/site/img/blocs/backgroundColLy.jpg differ diff --git a/site/img/blocs/backgroundJeunes.jpg b/site/img/blocs/backgroundJeunes.jpg new file mode 100644 index 0000000..395b22c Binary files /dev/null and b/site/img/blocs/backgroundJeunes.jpg differ diff --git a/site/img/blocs/backgroundParents.jpg b/site/img/blocs/backgroundParents.jpg new file mode 100644 index 0000000..2cb5209 Binary files /dev/null and b/site/img/blocs/backgroundParents.jpg differ diff --git a/site/img/blocs/colleges_lycees.png b/site/img/blocs/colleges_lycees.png new file mode 100644 index 0000000..931957e Binary files /dev/null and b/site/img/blocs/colleges_lycees.png differ diff --git a/site/img/blocs/colleges_lycees/_notes/dwsync.xml b/site/img/blocs/colleges_lycees/_notes/dwsync.xml new file mode 100644 index 0000000..5dd3a79 --- /dev/null +++ b/site/img/blocs/colleges_lycees/_notes/dwsync.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="bg_colleges_lycees.jpg" server="62.244.88.21/fafih_deciday/" local="131541714842092943" remote="131823477600000000" Dst="2" /> +<file name="flecheBtn.png" server="62.244.88.21/fafih_deciday/" local="131541991626448218" remote="131823477600000000" Dst="2" /> +<file name="bg_colleges_lycees.jpg" server="62.244.88.21/deciday_18/" local="131541714842092943" remote="131824305000000000" Dst="2" /> +<file name="flecheBtn.png" server="62.244.88.21/deciday_18/" local="131541991626448218" remote="131824305000000000" Dst="2" /> +<file name="flecheBtn.png" server="62.244.88.21/deciday/" local="131919462309000041" remote="131824377000000000" Dst="1" /> +<file name="bg_colleges_lycees.jpg" server="62.244.88.21/deciday/" local="131919462309182364" remote="131824377000000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/img/blocs/colleges_lycees/bg_colleges_lycees.jpg b/site/img/blocs/colleges_lycees/bg_colleges_lycees.jpg new file mode 100644 index 0000000..8d55e6f Binary files /dev/null and b/site/img/blocs/colleges_lycees/bg_colleges_lycees.jpg differ diff --git a/site/img/blocs/colleges_lycees/flecheBtn.png b/site/img/blocs/colleges_lycees/flecheBtn.png new file mode 100644 index 0000000..d79ce53 Binary files /dev/null and b/site/img/blocs/colleges_lycees/flecheBtn.png differ diff --git a/site/img/blocs/decouvrez/_notes/dwsync.xml b/site/img/blocs/decouvrez/_notes/dwsync.xml new file mode 100644 index 0000000..c85587d --- /dev/null +++ b/site/img/blocs/decouvrez/_notes/dwsync.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="logo_deciday.png" server="62.244.88.21/fafih_deciday/" local="131541707760953472" remote="131823477600000000" Dst="2" /> +<file name="bg_decouvrez.jpg" server="62.244.88.21/fafih_deciday/" local="131541713899738351" remote="131823477600000000" Dst="2" /> +<file name="bg_decouvrez.jpg" server="62.244.88.21/deciday_18/" local="131541713899738351" remote="131824305000000000" Dst="2" /> +<file name="logo_deciday.png" server="62.244.88.21/deciday_18/" local="131541707760953472" remote="131824305000000000" Dst="2" /> +<file name="bg_decouvrez.jpg" server="62.244.88.21/deciday/" local="131919462310045587" remote="131824377000000000" Dst="1" /> +<file name="logo_deciday.png" server="62.244.88.21/deciday/" local="131919462310403879" remote="131824377000000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/img/blocs/decouvrez/bg_decouvrez.jpg b/site/img/blocs/decouvrez/bg_decouvrez.jpg new file mode 100644 index 0000000..fd448a5 Binary files /dev/null and b/site/img/blocs/decouvrez/bg_decouvrez.jpg differ diff --git a/site/img/blocs/decouvrez/logo_deciday.png b/site/img/blocs/decouvrez/logo_deciday.png new file mode 100644 index 0000000..7d96bc2 Binary files /dev/null and b/site/img/blocs/decouvrez/logo_deciday.png differ diff --git a/site/img/blocs/jeunes.png b/site/img/blocs/jeunes.png new file mode 100644 index 0000000..3ffd2c5 Binary files /dev/null and b/site/img/blocs/jeunes.png differ diff --git a/site/img/blocs/media/Thumbs.db b/site/img/blocs/media/Thumbs.db new file mode 100644 index 0000000..0043e0b Binary files /dev/null and b/site/img/blocs/media/Thumbs.db differ diff --git a/site/img/blocs/media/_notes/dwsync.xml b/site/img/blocs/media/_notes/dwsync.xml new file mode 100644 index 0000000..7ae5b07 --- /dev/null +++ b/site/img/blocs/media/_notes/dwsync.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="bg_media.jpg" server="62.244.88.21/fafih_deciday/" local="131544339163011293" remote="131823477600000000" Dst="2" /> +<file name="Thumbs.db" server="62.244.88.21/fafih_deciday/" local="131544346012880000" remote="131823477600000000" Dst="2" /> +<file name="bg_media.jpg" server="62.244.88.21/deciday_18/" local="131544339163011293" remote="131824305000000000" Dst="2" /> +<file name="Thumbs.db" server="62.244.88.21/deciday_18/" local="131544346012880000" remote="131824305000000000" Dst="2" /> +<file name="bg_media.jpg" server="62.244.88.21/deciday/" local="131919462311438200" remote="131824377000000000" Dst="1" /> +<file name="Thumbs.db" server="62.244.88.21/deciday/" local="131919462311702537" remote="131824377000000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/img/blocs/media/bg_media.jpg b/site/img/blocs/media/bg_media.jpg new file mode 100644 index 0000000..ca04c76 Binary files /dev/null and b/site/img/blocs/media/bg_media.jpg differ diff --git a/site/img/blocs/parents.png b/site/img/blocs/parents.png new file mode 100644 index 0000000..187336f Binary files /dev/null and b/site/img/blocs/parents.png differ diff --git a/site/img/blocs/professionnel/Thumbs.db b/site/img/blocs/professionnel/Thumbs.db new file mode 100644 index 0000000..fce0ab2 Binary files /dev/null and b/site/img/blocs/professionnel/Thumbs.db differ diff --git a/site/img/blocs/professionnel/_notes/dwsync.xml b/site/img/blocs/professionnel/_notes/dwsync.xml new file mode 100644 index 0000000..f6105d6 --- /dev/null +++ b/site/img/blocs/professionnel/_notes/dwsync.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="bg_pro.jpg" server="62.244.88.21/fafih_deciday/" local="131544314180504810" remote="131823477600000000" Dst="2" /> +<file name="Thumbs.db" server="62.244.88.21/fafih_deciday/" local="131544346016060000" remote="131823477600000000" Dst="2" /> +<file name="bg_pro.jpg" server="62.244.88.21/deciday_18/" local="131544314180504810" remote="131824305000000000" Dst="2" /> +<file name="Thumbs.db" server="62.244.88.21/deciday_18/" local="131544346016060000" remote="131824305000000000" Dst="2" /> +<file name="bg_pro.jpg" server="62.244.88.21/deciday/" local="131919462314100399" remote="131824377000000000" Dst="1" /> +<file name="Thumbs.db" server="62.244.88.21/deciday/" local="131919462314276030" remote="131824377000000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/img/blocs/professionnel/bg_pro.jpg b/site/img/blocs/professionnel/bg_pro.jpg new file mode 100644 index 0000000..5b67980 Binary files /dev/null and b/site/img/blocs/professionnel/bg_pro.jpg differ diff --git a/site/img/borderDecouvrez.png b/site/img/borderDecouvrez.png new file mode 100644 index 0000000..9e2dfa9 Binary files /dev/null and b/site/img/borderDecouvrez.png differ diff --git a/site/img/borderPO.png b/site/img/borderPO.png new file mode 100644 index 0000000..6e4004d Binary files /dev/null and b/site/img/borderPO.png differ diff --git a/site/img/borderPRO.png b/site/img/borderPRO.png new file mode 100644 index 0000000..0e08542 Binary files /dev/null and b/site/img/borderPRO.png differ diff --git a/site/img/fond_bandeau.jpg b/site/img/fond_bandeau.jpg new file mode 100644 index 0000000..bf413cd Binary files /dev/null and b/site/img/fond_bandeau.jpg differ diff --git a/site/img/fond_bandeau_repeat.jpg b/site/img/fond_bandeau_repeat.jpg new file mode 100644 index 0000000..14c47e6 Binary files /dev/null and b/site/img/fond_bandeau_repeat.jpg differ diff --git a/site/img/fond_titre_contenu.jpg b/site/img/fond_titre_contenu.jpg new file mode 100644 index 0000000..4152196 Binary files /dev/null and b/site/img/fond_titre_contenu.jpg differ diff --git a/site/img/fond_tps_forts.png b/site/img/fond_tps_forts.png new file mode 100644 index 0000000..46eb65c Binary files /dev/null and b/site/img/fond_tps_forts.png differ diff --git a/site/img/footer/Thumbs.db b/site/img/footer/Thumbs.db new file mode 100644 index 0000000..a5e2782 Binary files /dev/null and b/site/img/footer/Thumbs.db differ diff --git a/site/img/footer/_notes/dwsync.xml b/site/img/footer/_notes/dwsync.xml new file mode 100644 index 0000000..df3d7f4 --- /dev/null +++ b/site/img/footer/_notes/dwsync.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="logo_fafih.png" server="62.244.88.21/fafih_deciday/" local="131541719728974919" remote="131823477600000000" Dst="2" /> +<file name="education_nat.jpg" server="62.244.88.21/fafih_deciday/" local="131541720086548735" remote="131823477600000000" Dst="2" /> +<file name="logo_mhr.png" server="62.244.88.21/fafih_deciday/" local="131541720553496665" remote="131823477600000000" Dst="2" /> +<file name="bg-bottom.jpg" server="62.244.88.21/fafih_deciday/" local="131544493482245125" remote="131823477600000000" Dst="2" /> +<file name="backgroungFooter.jpg" server="62.244.88.21/fafih_deciday/" local="131823581960236460" remote="131823510000000000" Dst="2" /> +<file name="backgroungFooter.jpg" server="62.244.88.21/deciday_18/" local="131823581960236460" remote="131824305000000000" Dst="2" /> +<file name="education_nat.jpg" server="62.244.88.21/deciday_18/" local="131541720086548735" remote="131824305000000000" Dst="2" /> +<file name="bg-bottom.jpg" server="62.244.88.21/deciday_18/" local="131544493482245125" remote="131824305000000000" Dst="2" /> +<file name="logo_fafih.png" server="62.244.88.21/deciday_18/" local="131541719728974919" remote="131824305000000000" Dst="2" /> +<file name="logo_mhr.png" server="62.244.88.21/deciday_18/" local="131541720553496665" remote="131824305000000000" Dst="2" /> +<file name="backgroungFooter.jpg" server="62.244.88.21/deciday/" local="131919455476246826" remote="131824377000000000" Dst="1" /> +<file name="bg-bottom.jpg" server="62.244.88.21/deciday/" local="131919458751706782" remote="131824377000000000" Dst="1" /> +<file name="education_nat.jpg" server="62.244.88.21/deciday/" local="131919462314789807" remote="131824377000000000" Dst="1" /> +<file name="logo_mhr.png" server="62.244.88.21/deciday/" local="131919462315300365" remote="131824377000000000" Dst="1" /> +<file name="logo_fafih.png" server="62.244.88.21/deciday/" local="131919462315484882" remote="131824377000000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/img/footer/backgroungFooter.jpg b/site/img/footer/backgroungFooter.jpg new file mode 100644 index 0000000..3c80853 Binary files /dev/null and b/site/img/footer/backgroungFooter.jpg differ diff --git a/site/img/footer/bg-bottom.jpg b/site/img/footer/bg-bottom.jpg new file mode 100644 index 0000000..c101425 Binary files /dev/null and b/site/img/footer/bg-bottom.jpg differ diff --git a/site/img/footer/education_nat.jpg b/site/img/footer/education_nat.jpg new file mode 100644 index 0000000..2bd35d8 Binary files /dev/null and b/site/img/footer/education_nat.jpg differ diff --git a/site/img/footer/logo_fafih.png b/site/img/footer/logo_fafih.png new file mode 100644 index 0000000..e1036e0 Binary files /dev/null and b/site/img/footer/logo_fafih.png differ diff --git a/site/img/footer/logo_mhr.png b/site/img/footer/logo_mhr.png new file mode 100644 index 0000000..16b4cb1 Binary files /dev/null and b/site/img/footer/logo_mhr.png differ diff --git a/site/img/header/Thumbs.db b/site/img/header/Thumbs.db new file mode 100644 index 0000000..bc2864f Binary files /dev/null and b/site/img/header/Thumbs.db differ diff --git a/site/img/header/_notes/dwsync.xml b/site/img/header/_notes/dwsync.xml new file mode 100644 index 0000000..fab57bf --- /dev/null +++ b/site/img/header/_notes/dwsync.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="logo_deciday.png" server="62.244.88.21/fafih_deciday/" local="131823549999088840" remote="131823477600000000" Dst="2" /> +<file name="menuBurger.png" server="62.244.88.21/fafih_deciday/" local="131541703029851408" remote="131823477600000000" Dst="2" /> +<file name="btnMedia.png" server="62.244.88.21/fafih_deciday/" local="131823559427096463" remote="131823487200000000" Dst="2" /> +<file name="btnCFA.png" server="62.244.88.21/fafih_deciday/" local="131823559223636484" remote="131823487200000000" Dst="2" /> +<file name="btnCFA.png" server="62.244.88.21/deciday_18/" local="131823559223636484" remote="131824305000000000" Dst="2" /> +<file name="btnMedia.png" server="62.244.88.21/deciday_18/" local="131823559427096463" remote="131824305000000000" Dst="2" /> +<file name="logo_deciday.png" server="62.244.88.21/deciday_18/" local="131823549999088840" remote="131824305000000000" Dst="2" /> +<file name="menuBurger.png" server="62.244.88.21/deciday_18/" local="131541703029851408" remote="131824305000000000" Dst="2" /> +<file name="btnCFA.png" server="62.244.88.21/deciday/" local="131919462316217526" remote="131824377000000000" Dst="1" /> +<file name="btnMedia.png" server="62.244.88.21/deciday/" local="131919462316915108" remote="131824377000000000" Dst="1" /> +<file name="logo_deciday.png" server="62.244.88.21/deciday/" local="131919462317115431" remote="131824377000000000" Dst="1" /> +<file name="menuBurger.png" server="62.244.88.21/deciday/" local="131919462317294999" remote="131824377000000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/img/header/btnCFA.png b/site/img/header/btnCFA.png new file mode 100644 index 0000000..e59f355 Binary files /dev/null and b/site/img/header/btnCFA.png differ diff --git a/site/img/header/btnMedia.png b/site/img/header/btnMedia.png new file mode 100644 index 0000000..dea7123 Binary files /dev/null and b/site/img/header/btnMedia.png differ diff --git a/site/img/header/logo_deciday.png b/site/img/header/logo_deciday.png new file mode 100644 index 0000000..2174627 Binary files /dev/null and b/site/img/header/logo_deciday.png differ diff --git a/site/img/header/menuBurger.png b/site/img/header/menuBurger.png new file mode 100644 index 0000000..7eca598 Binary files /dev/null and b/site/img/header/menuBurger.png differ diff --git a/site/img/perso_bandeau.png b/site/img/perso_bandeau.png new file mode 100644 index 0000000..900cbfb Binary files /dev/null and b/site/img/perso_bandeau.png differ diff --git a/site/img/reseaux_sociaux/_notes/dwsync.xml b/site/img/reseaux_sociaux/_notes/dwsync.xml new file mode 100644 index 0000000..beb48ee --- /dev/null +++ b/site/img/reseaux_sociaux/_notes/dwsync.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="bg_RS.jpg" server="62.244.88.21/fafih_deciday/" local="131541718203011724" remote="131823477600000000" Dst="2" /> +<file name="youtube.png" server="62.244.88.21/fafih_deciday/" local="131541718533167533" remote="131823477600000000" Dst="2" /> +<file name="facebook_twitter_linkedin.png" server="62.244.88.21/fafih_deciday/" local="131541718891990985" remote="131823477600000000" Dst="2" /> +<file name="snapchat.png" server="62.244.88.21/fafih_deciday/" local="131541719223461673" remote="131823477600000000" Dst="2" /> +<file name="bg_RS.jpg" server="62.244.88.21/deciday_18/" local="131541718203011724" remote="131824305000000000" Dst="2" /> +<file name="facebook_twitter_linkedin.png" server="62.244.88.21/deciday_18/" local="131541718891990985" remote="131824305000000000" Dst="2" /> +<file name="snapchat.png" server="62.244.88.21/deciday_18/" local="131541719223461673" remote="131824305000000000" Dst="2" /> +<file name="youtube.png" server="62.244.88.21/deciday_18/" local="131541718533167533" remote="131824305000000000" Dst="2" /> +<file name="facebook_twitter_linkedin.png" server="62.244.88.21/deciday/" local="131919462319276852" remote="131824377000000000" Dst="1" /> +<file name="bg_RS.jpg" server="62.244.88.21/deciday/" local="131919462319470743" remote="131824377000000000" Dst="1" /> +<file name="snapchat.png" server="62.244.88.21/deciday/" local="131919462319981445" remote="131824377000000000" Dst="1" /> +<file name="youtube.png" server="62.244.88.21/deciday/" local="131919462320158306" remote="131824377000000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/img/reseaux_sociaux/bg_RS.jpg b/site/img/reseaux_sociaux/bg_RS.jpg new file mode 100644 index 0000000..6eb36e1 Binary files /dev/null and b/site/img/reseaux_sociaux/bg_RS.jpg differ diff --git a/site/img/reseaux_sociaux/facebook_twitter_linkedin.png b/site/img/reseaux_sociaux/facebook_twitter_linkedin.png new file mode 100644 index 0000000..b95d91b Binary files /dev/null and b/site/img/reseaux_sociaux/facebook_twitter_linkedin.png differ diff --git a/site/img/reseaux_sociaux/snapchat.png b/site/img/reseaux_sociaux/snapchat.png new file mode 100644 index 0000000..61b2d24 Binary files /dev/null and b/site/img/reseaux_sociaux/snapchat.png differ diff --git a/site/img/reseaux_sociaux/youtube.png b/site/img/reseaux_sociaux/youtube.png new file mode 100644 index 0000000..7f05fe6 Binary files /dev/null and b/site/img/reseaux_sociaux/youtube.png differ diff --git a/site/img/slide/Thumbs.db b/site/img/slide/Thumbs.db new file mode 100644 index 0000000..163bd69 Binary files /dev/null and b/site/img/slide/Thumbs.db differ diff --git a/site/img/slide/_notes/dwsync.xml b/site/img/slide/_notes/dwsync.xml new file mode 100644 index 0000000..68405e5 --- /dev/null +++ b/site/img/slide/_notes/dwsync.xml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="slider1.jpg" server="62.244.88.21/fafih_deciday/" local="131541804834310923" remote="131823477600000000" Dst="2" /> +<file name="slider2.jpg" server="62.244.88.21/fafih_deciday/" local="131541806864758844" remote="131823477600000000" Dst="2" /> +<file name="slider3.jpg" server="62.244.88.21/fafih_deciday/" local="131541947579470776" remote="131823477600000000" Dst="2" /> +<file name="chevron_right.jpg" server="62.244.88.21/fafih_deciday/" local="131541760449072001" remote="131823477600000000" Dst="2" /> +<file name="chevron_left.jpg" server="62.244.88.21/fafih_deciday/" local="131541763473153631" remote="131823477600000000" Dst="2" /> +<file name="chevron_left.png" server="62.244.88.21/fafih_deciday/" local="131541772344807708" remote="131823477600000000" Dst="2" /> +<file name="chevron_right.png" server="62.244.88.21/fafih_deciday/" local="131541772459289189" remote="131823477600000000" Dst="2" /> +<file name="logo_MHR_slide2.png" server="62.244.88.21/fafih_deciday/" local="131541803129617396" remote="131823477600000000" Dst="2" /> +<file name="logo_CFA_slide3.png" server="62.244.88.21/fafih_deciday/" local="131541945535136525" remote="131823477600000000" Dst="2" /> +<file name="slider1_resp.jpg" server="62.244.88.21/fafih_deciday/" local="131545166065234048" remote="131823477600000000" Dst="2" /> +<file name="slider2_resp.jpg" server="62.244.88.21/fafih_deciday/" local="131545166497803116" remote="131823477600000000" Dst="2" /> +<file name="slider3_resp.jpg" server="62.244.88.21/fafih_deciday/" local="131545166739258417" remote="131823477600000000" Dst="2" /> +<file name="Thumbs.db" server="62.244.88.21/fafih_deciday/" local="131544346021240000" remote="131823477600000000" Dst="2" /> +<file name="chevron_left.jpg" server="62.244.88.21/deciday_18/" local="131541763473153631" remote="131824305000000000" Dst="2" /> +<file name="chevron_left.png" server="62.244.88.21/deciday_18/" local="131541772344807708" remote="131824305000000000" Dst="2" /> +<file name="chevron_right.jpg" server="62.244.88.21/deciday_18/" local="131541760449072001" remote="131824305000000000" Dst="2" /> +<file name="chevron_right.png" server="62.244.88.21/deciday_18/" local="131541772459289189" remote="131824305000000000" Dst="2" /> +<file name="logo_CFA_slide3.png" server="62.244.88.21/deciday_18/" local="131541945535136525" remote="131824305000000000" Dst="2" /> +<file name="logo_MHR_slide2.png" server="62.244.88.21/deciday_18/" local="131541803129617396" remote="131824305000000000" Dst="2" /> +<file name="slider1.jpg" server="62.244.88.21/deciday_18/" local="131541804834310923" remote="131824305000000000" Dst="2" /> +<file name="slider1_resp.jpg" server="62.244.88.21/deciday_18/" local="131545166065234048" remote="131824305000000000" Dst="2" /> +<file name="slider2.jpg" server="62.244.88.21/deciday_18/" local="131541806864758844" remote="131824305000000000" Dst="2" /> +<file name="slider2_resp.jpg" server="62.244.88.21/deciday_18/" local="131545166497803116" remote="131824305000000000" Dst="2" /> +<file name="slider3_resp.jpg" server="62.244.88.21/deciday_18/" local="131545166739258417" remote="131824305000000000" Dst="2" /> +<file name="slider3.jpg" server="62.244.88.21/deciday_18/" local="131541947579470776" remote="131824305000000000" Dst="2" /> +<file name="Thumbs.db" server="62.244.88.21/deciday_18/" local="131544346021240000" remote="131824305000000000" Dst="2" /> +<file name="slider_new.jpg" server="62.244.88.21/deciday_18/" local="131837329773834895" remote="131837259600000000" Dst="2" /> +<file name="slider_new_resp.jpg" server="62.244.88.21/deciday_18/" local="131837329579450254" remote="131837259600000000" Dst="2" /> +<file name="deciday_decouvrez_deciday_slider.jpg" server="62.244.88.21/deciday_18/" local="131844139643502098" remote="131844069000000000" Dst="2" /> +<file name="deciday_home_slider.jpg" server="62.244.88.21/deciday_18/" local="131844135311317605" remote="131844069000000000" Dst="2" /> +<file name="deciday_decouvrez_deciday_slider.jpg" server="62.244.88.21/deciday/" local="131919455431212269" remote="131844141000000000" Dst="1" /> +<file name="slider_new_resp.jpg" server="62.244.88.21/deciday/" local="131919455432291606" remote="131837331600000000" Dst="1" /> +<file name="chevron_left.jpg" server="62.244.88.21/deciday/" local="131919462320499211" remote="131824377000000000" Dst="1" /> +<file name="chevron_left.png" server="62.244.88.21/deciday/" local="131919462321162013" remote="131824377000000000" Dst="1" /> +<file name="chevron_right.jpg" server="62.244.88.21/deciday/" local="131919462321170500" remote="131824377000000000" Dst="1" /> +<file name="chevron_right.png" server="62.244.88.21/deciday/" local="131919462321661737" remote="131824377000000000" Dst="1" /> +<file name="logo_CFA_slide3.png" server="62.244.88.21/deciday/" local="131919462322424839" remote="131824377000000000" Dst="1" /> +<file name="logo_MHR_slide2.png" server="62.244.88.21/deciday/" local="131919462322608624" remote="131824377000000000" Dst="1" /> +<file name="deciday_home_slider.jpg" server="62.244.88.21/deciday/" local="131919462323537682" remote="131884068000000000" Dst="1" /> +<file name="slider1.jpg" server="62.244.88.21/deciday/" local="131919462325265030" remote="131824377000000000" Dst="1" /> +<file name="slider1_resp.jpg" server="62.244.88.21/deciday/" local="131919462325443420" remote="131824377000000000" Dst="1" /> +<file name="slider2.jpg" server="62.244.88.21/deciday/" local="131959194485829925" remote="131959214400000000" Dst="1" /> +<file name="slider3.jpg" server="62.244.88.21/deciday/" local="131919462327862773" remote="131824377000000000" Dst="1" /> +<file name="slider2_resp.jpg" server="62.244.88.21/deciday/" local="131959244904083609" remote="131959214400000000" Dst="1" /> +<file name="slider3_resp.jpg" server="62.244.88.21/deciday/" local="131919462330206319" remote="131824377000000000" Dst="1" /> +<file name="Thumbs.db" server="62.244.88.21/deciday/" local="131919462330397758" remote="131824377000000000" Dst="1" /> +<file name="slider_new.jpg" server="62.244.88.21/deciday/" local="131919462331082331" remote="131837331600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/img/slide/_slider2.jpg b/site/img/slide/_slider2.jpg new file mode 100644 index 0000000..eb373b8 Binary files /dev/null and b/site/img/slide/_slider2.jpg differ diff --git a/site/img/slide/_slider2_resp.jpg b/site/img/slide/_slider2_resp.jpg new file mode 100644 index 0000000..1be36c4 Binary files /dev/null and b/site/img/slide/_slider2_resp.jpg differ diff --git a/site/img/slide/chevron_left.jpg b/site/img/slide/chevron_left.jpg new file mode 100644 index 0000000..cbbfddb Binary files /dev/null and b/site/img/slide/chevron_left.jpg differ diff --git a/site/img/slide/chevron_left.png b/site/img/slide/chevron_left.png new file mode 100644 index 0000000..6bcbf4c Binary files /dev/null and b/site/img/slide/chevron_left.png differ diff --git a/site/img/slide/chevron_right.jpg b/site/img/slide/chevron_right.jpg new file mode 100644 index 0000000..a94f7cf Binary files /dev/null and b/site/img/slide/chevron_right.jpg differ diff --git a/site/img/slide/chevron_right.png b/site/img/slide/chevron_right.png new file mode 100644 index 0000000..dec156f Binary files /dev/null and b/site/img/slide/chevron_right.png differ diff --git a/site/img/slide/deciday_decouvrez_deciday_slider.jpg b/site/img/slide/deciday_decouvrez_deciday_slider.jpg new file mode 100644 index 0000000..70a4e55 Binary files /dev/null and b/site/img/slide/deciday_decouvrez_deciday_slider.jpg differ diff --git a/site/img/slide/deciday_home_slider.jpg b/site/img/slide/deciday_home_slider.jpg new file mode 100644 index 0000000..2497acb Binary files /dev/null and b/site/img/slide/deciday_home_slider.jpg differ diff --git a/site/img/slide/deciday_home_slider1.jpg b/site/img/slide/deciday_home_slider1.jpg new file mode 100644 index 0000000..ff12d91 Binary files /dev/null and b/site/img/slide/deciday_home_slider1.jpg differ diff --git a/site/img/slide/logo_CFA_slide3.png b/site/img/slide/logo_CFA_slide3.png new file mode 100644 index 0000000..22fd7ed Binary files /dev/null and b/site/img/slide/logo_CFA_slide3.png differ diff --git a/site/img/slide/logo_MHR_slide2.png b/site/img/slide/logo_MHR_slide2.png new file mode 100644 index 0000000..cc0b418 Binary files /dev/null and b/site/img/slide/logo_MHR_slide2.png differ diff --git a/site/img/slide/slider1.jpg b/site/img/slide/slider1.jpg new file mode 100644 index 0000000..e1ad630 Binary files /dev/null and b/site/img/slide/slider1.jpg differ diff --git a/site/img/slide/slider1_resp.jpg b/site/img/slide/slider1_resp.jpg new file mode 100644 index 0000000..f470feb Binary files /dev/null and b/site/img/slide/slider1_resp.jpg differ diff --git a/site/img/slide/slider2.jpg b/site/img/slide/slider2.jpg new file mode 100644 index 0000000..ff12d91 Binary files /dev/null and b/site/img/slide/slider2.jpg differ diff --git a/site/img/slide/slider2_resp.jpg b/site/img/slide/slider2_resp.jpg new file mode 100644 index 0000000..2d48cf6 Binary files /dev/null and b/site/img/slide/slider2_resp.jpg differ diff --git a/site/img/slide/slider3.jpg b/site/img/slide/slider3.jpg new file mode 100644 index 0000000..5e9a2dd Binary files /dev/null and b/site/img/slide/slider3.jpg differ diff --git a/site/img/slide/slider3_resp.jpg b/site/img/slide/slider3_resp.jpg new file mode 100644 index 0000000..318a8ac Binary files /dev/null and b/site/img/slide/slider3_resp.jpg differ diff --git a/site/img/slide/slider_new.jpg b/site/img/slide/slider_new.jpg new file mode 100644 index 0000000..481056e Binary files /dev/null and b/site/img/slide/slider_new.jpg differ diff --git a/site/img/slide/slider_new_resp.jpg b/site/img/slide/slider_new_resp.jpg new file mode 100644 index 0000000..d419477 Binary files /dev/null and b/site/img/slide/slider_new_resp.jpg differ diff --git a/site/import.php b/site/import.php new file mode 100644 index 0000000..d9642d2 --- /dev/null +++ b/site/import.php @@ -0,0 +1,76 @@ +<?php + exit(); +include('include/entete.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + + $maCleDeCryptage = getCleDeCryptage(); + $separateur=';'; + $file="190123_import.csv"; + $page=""; + if (file_exists($file)){ // Si le fichier existe, on l'ouvre + $fp = fopen($file, "r"); + }else{ // sinon error + $page.="Fichier introuvable <br>"; + } + $tab=array(); + + $page.='<table>'; + $cpt=0; + + while (!feof($fp)){ // On parcours le fichier + + $ligne = fgets($fp,4096); // On se déplace d'une ligne + $liste = explode($separateur,$ligne); // Champs séparés par $separateur + if(!isset($liste[8])) echo '<br><br>###########################################################'.$cpt.'#############################################################<br><br><table><tr><td>'.$liste[0].'</td><td>'.$liste[1].'</td><td>'.$liste[2].'</td><td>'.$liste[3].'</td><td>'.$liste[4].'</td><td>'.$liste[5].'</td><td>'.$liste[6].'</td><td>'.$liste[7].'</td><td>'.$liste[8].'</td></tr></table><br><br>'; + else{ + //$page.='<table><tr><td>'.$liste[0].'</td><td>'.$liste[1].'</td><td>'.$liste[2].'</td><td>'.$liste[3].'</td><td>'.$liste[4].'</td><td>'.$liste[5].'</td><td>'.$liste[6].'</td><td>'.$liste[7].'</td><td>'.$liste[8].'</td></tr></table>'; + $academie=$nom_eta=$adresse1=$adresse2=$cp=$ville=$nom_ref=$tel_ref=$email_ref=$tmppsw=""; + $academie=crypter($maCleDeCryptage,iconv("ISO-8859-1//TRANSLIT", "UTF-8",$liste[0])); + $nom_eta=crypter($maCleDeCryptage,iconv("ISO-8859-1//TRANSLIT", "UTF-8",$liste[1])); + $adresse1=crypter($maCleDeCryptage,iconv("ISO-8859-1//TRANSLIT", "UTF-8",$liste[2])); + $adresse2=crypter($maCleDeCryptage,iconv("ISO-8859-1//TRANSLIT", "UTF-8",$liste[3])); + $cp=crypter($maCleDeCryptage,iconv("ISO-8859-1//TRANSLIT", "UTF-8",$liste[4])); + $ville=crypter($maCleDeCryptage,iconv("ISO-8859-1//TRANSLIT", "UTF-8",$liste[5])); + $nom_ref=crypter($maCleDeCryptage,iconv("ISO-8859-1//TRANSLIT", "UTF-8",$liste[6])); + $tel_ref=crypter($maCleDeCryptage,iconv("ISO-8859-1//TRANSLIT", "UTF-8",$liste[7])); + $email_ref=crypter($maCleDeCryptage,iconv("ISO-8859-1//TRANSLIT", "UTF-8",$liste[8])); + $tmppsw=Password(8,0); + $tmppsw='Deciday18'; + + $query='insert into eta (academie,nom_eta,adresse1,adresse2,cp,ville,nom_ref,tel_ref,email_ref,mdp_ref) values (:academie,:nom_eta,:adresse1,:adresse2,:cp,:ville,:nom_ref,:tel_ref,:email_ref,:mdp_ref)'; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':academie', $academie, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nom_eta', $nom_eta, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse1', $adresse1, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse2', $adresse2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':cp', $cp, PDO::PARAM_STR ); + $queryRequest->bindParam( ':ville', $ville, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nom_ref', $nom_ref, PDO::PARAM_STR ); + $queryRequest->bindParam( ':tel_ref', $tel_ref, PDO::PARAM_STR ); + $queryRequest->bindParam( ':email_ref', $email_ref, PDO::PARAM_STR ); + $queryRequest->bindParam( ':mdp_ref', md5($tmppsw), PDO::PARAM_STR ); + $queryRequest->execute(); + + + + + $tab[$cpt]['login']=trim($liste[8]); + $tab[$cpt]['mdp']=$tmppsw; + + } + $cpt++; + } + $page.='</table>'; + + + $tmp="<table>"; + foreach($tab as $cle=>$val) $tmp.="<tr><td>".$val['login']."</td><td>".$val['mdp']."</td></tr>"; + $tmp.="</table>"; + + $page.=$tmp; + +echo $page; + +?> \ No newline at end of file diff --git a/site/include/20181122_admin-header.php b/site/include/20181122_admin-header.php new file mode 100644 index 0000000..5c4240b --- /dev/null +++ b/site/include/20181122_admin-header.php @@ -0,0 +1,24 @@ + + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <div class="titreAdmin"><b>FAFIH : Interface de suivi</b></div> + <a href="deco.php">Déconnexion</a> + </div> + + <div class="menuPage"> + <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12"> + <a href="suivi-cfa-adm.php">Suivi des CFA/LP</a> + <br/> + </div> + <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12"> + <a href="suivi-sollicitations-adm.php">Suivi des Sollicitations</a> + <br/> + </div> + <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12"> + <a href="suivi-pro-adm.php">suivi-pro-adm.php</a> + <br/> + </div> + <div class="clearfix"></div> + </div> + + diff --git a/site/include/_notes/dwsync.xml b/site/include/_notes/dwsync.xml new file mode 100644 index 0000000..66ffc60 --- /dev/null +++ b/site/include/_notes/dwsync.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="entete.php" server="62.244.88.21/deciday_18/" local="131824194658965862" remote="131824122600000000" Dst="2" /> +<file name="header.php" server="62.244.88.21/deciday_18/" local="131837339378297509" remote="131837266800000000" Dst="2" /> +<file name="footer.php" server="62.244.88.21/deciday_18/" local="131835716149277424" remote="131835643800000000" Dst="2" /> +<file name="entete_cfa.php" server="62.244.88.21/deciday_18/" local="131823592224208576" remote="131823543600000000" Dst="2" /> +<file name="entete_cap.php" server="62.244.88.21/deciday_18/" local="131824302738279173" remote="131824230600000000" Dst="2" /> +<file name="entete_adm.php" server="62.244.88.21/deciday_18/" local="131824482659005681" remote="131824410600000000" Dst="2" /> +<file name="cook.php" server="62.244.88.21/deciday_18/" local="131835715810000000" remote="131835643800000000" Dst="2" /> +<file name="agenda.inc.php" server="62.244.88.21/deciday/" local="131859689574971022" remote="131859653400000000" Dst="1" /> +<file name="entete.php" server="62.244.88.21/deciday/" local="131919458758035259" remote="131859936600000000" Dst="1" /> +<file name="header.php" server="62.244.88.21/deciday/" local="131878014047085030" remote="131877978000000000" Dst="1" /> +<file name="footer.php" server="62.244.88.21/deciday/" local="131919455436190530" remote="131884075200000000" Dst="1" /> +<file name="admin-header.php" server="62.244.88.21/deciday/" local="131932516586309521" remote="131932480200000000" Dst="1" /> +<file name="entete_adm.php" server="62.244.88.21/deciday/" local="131919462331576364" remote="131824482600000000" Dst="1" /> +<file name="entete_cap.php" server="62.244.88.21/deciday/" local="131919462331586125" remote="131824302600000000" Dst="1" /> +<file name="entete_cfa.php" server="62.244.88.21/deciday/" local="131919462332397411" remote="131823615600000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/include/admin-header.php b/site/include/admin-header.php new file mode 100644 index 0000000..69bd07a --- /dev/null +++ b/site/include/admin-header.php @@ -0,0 +1,36 @@ + + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <div class="titreAdmin"><b>FAFIH : Interface de suivi</b></div> + <a href="deco.php">Déconnexion</a> + </div> + + <div class="menuPage" > + <div class="col-lg-4 col-md-6 col-sm-12 col-xs-12"> + <a href="suivi-cfa-adm.php">Suivi des CFA/LP</a> + <br/> + </div> + <div class="col-lg-4 col-md-6 col-sm-12 col-xs-12"> + <a href="suivi-sollicitations-adm.php">Suivi des Sollicitations</a> + <br/> + </div> + <div class="col-lg-4 col-md-6 col-sm-12 col-xs-12"> + <a href="suivi-jpo-adm.php">Suivi des JPO</a> + <br/> + </div> + <div class="col-lg-4 col-md-6 col-sm-12 col-xs-12"> + <a href="suivi-cap-adm.php">Suivi des Capitaines</a> + <br/> + </div> + <div class="col-lg-4 col-md-6 col-sm-12 col-xs-12"> + <a href="suivi-pro-adm.php">Suivi des Professionnels</a> + <br/> + </div> + <div class="col-lg-4 col-md-6 col-sm-12 col-xs-12"> + <a href="suivi-reservations-adm.php">Suivi des Réservations</a> + <br/> + </div> + <div class="clearfix"></div> + </div> + + diff --git a/site/include/agenda.inc.php b/site/include/agenda.inc.php new file mode 100644 index 0000000..67e7061 --- /dev/null +++ b/site/include/agenda.inc.php @@ -0,0 +1,20 @@ +<?php + + $arrWeek = array(); + $arrWeek[3] = array('','','','2019-01-17','2019-01-18'); + $arrWeek[4] = array('2019-01-21','2019-01-22','2019-01-23','2019-01-24','2019-01-25'); + $arrWeek[5] = array('2019-01-28','2019-01-29','2019-01-30','2019-01-31','2019-02-01'); + $arrWeek[6] = array('2019-02-04','2019-02-05','2019-02-06','2019-02-07','2019-02-08'); + + $arrDaysWeek = array('lundi','mardi','mercredi','jeudi','vendredi'); + + $arrCreneaux = array('am1','am2','pm1','pm2'); + $arrCreneauxTitle = array('Matin 1','Matin 2','Après-midi 1','Après-midi 2'); + + $theGreatDay = '2019-01-17'; + + //Pour les sollicitations des lycées et collèges + $arrCreneauxSol = array('am','pm'); + $arrCreneauxSolTitle = array('Matin','Après-midi'); + +?> \ No newline at end of file diff --git a/site/include/ajouter-ref.php b/site/include/ajouter-ref.php new file mode 100644 index 0000000..a5f206d --- /dev/null +++ b/site/include/ajouter-ref.php @@ -0,0 +1,123 @@ +<?php +include('include/entete.php'); +include('include/entete_cfa.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + + $query="select * from eta where id_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +function valid_aj(){ + if(document.frmAj.nom_cap.value==""){ + alert('Merci de renseigner le nom.'); + document.frmCo.nom_cap.focus(); + return false; + } + if(document.frmAj.prenom_cap.value==""){ + alert('Merci de renseigner le prénom.'); + document.frmCo.prenom_cap.focus(); + return false; + } + if(!verifmail('document.frmAj.email_cap',1)){ + return false; + } + return true; +} +function test_aj(){ + if(valid_aj()) document.frmAj.submit(); +} +jQuery(document).ready(function(){ + document.frmAj.nom_cap.focus(); +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace référent</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <span style="font-size: 0.9em;"> + <?php + echo decrypter($maCleDeCryptage,$data[0]['adresse1']); + if(!empty($data[0]['adresse2'])) echo ' - '.decrypter($maCleDeCryptage,$data[0]['adresse2']); + echo ' - '.decrypter($maCleDeCryptage,$data[0]['cp']).' '.decrypter($maCleDeCryptage,$data[0]['ville']); + ?> + </span><br /> + <b>Référent : </b><?php echo decrypter($maCleDeCryptage,$data[0]['nom_ref']);?> <a href="modifier-referent.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a></div> + + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cfa.php">Vos trinômes</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cfa.php">Boite à outils</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="po-cfa.php">Portes ouvertes</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Créer un trinôme</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + + <div class="textIntro"><br/>En qualité de référent de votre établissement, vous avez la possibilité de créer un ou plusieurs trinômes. Pour cela, merci d’identifier ici un capitaine de trinôme. Il est le représentant de votre établissement qui interviendra en collège/lycée. Le capitaine recevra un email de confirmation qui lui permettra de se connecter à son espace pour : + <div class="clearfix"></div> + <ul> + <li>identifier les membres de son trinôme : apprenant et professionnel</li> + <li>accéder à la boîte à outils Deciday !</li> + <li>organiser son agenda.</li> + </ul> + </div> + <div class="clearfix"></div> + + <form name="frmAj" id="frmAj" method="post" action="traitement-cfa.php"> + + <div class="labFrm">Nom :</div> + <input type="text" name="nom_cap" id="nom_cap" /><br /> + <div class="labFrm">Prénom :</div> + <input type="text" name="prenom_cap" id="prenom_cap" /><br /> + <div class="labFrm">Email :</div> + <input type="text" name="email_cap" id="email_cap" /><br /> + <input type="hidden" name="action" value="go_aj" /> + <div class="btnDeci"><a href="javascript:void(0);" onClick="test_aj()">Ajouter</a></div> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="index-cap.php">Retour</a></div> + </form> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/include/cook.php b/site/include/cook.php new file mode 100644 index 0000000..4541ead --- /dev/null +++ b/site/include/cook.php @@ -0,0 +1,41 @@ +<script> + function createCookie(name,value,days) { + if (days) { + var date = new Date(); + date.setTime(date.getTime()+(days*24*60*60*1000)); + var expires = "; expires="+date.toGMTString(); + } + else var expires = ""; + document.cookie = name+"="+value+expires+"; path=/"; + } + + //Lecture d'un cookie + function readCookie(name) { + var nameEQ = name + "="; + var ca = document.cookie.split(';'); + for(var i=0;i < ca.length;i++) { + var c = ca[i]; + while (c.charAt(0)==' ') c = c.substring(1,c.length); + if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); + } + return null; + } + + //Supprimer un cookie + function eraseCookie(name) { + createCookie(name,"",-1); + } + jQuery(document).ready(function(){ + var mycookieCook = readCookie('mycookiesfafih_cook'); + if(mycookieCook){ + jQuery('#cookies').css('display','none'); + } + + jQuery('#cookies_close').click(function(){ + createCookie('mycookiesfafih_cook','mycookiesfafih_cook16',7); + jQuery('#cookies').fadeOut(); + }); + }); +</script> + +<div id="cookies">En poursuivant la navigation sur ce site, vous acceptez l’utilisation de cookies pour vous proposer des services et des offres adaptés à vos centres d’intérêt. <a href="politique-de-confidentialite.php" target="_blank">En savoir plus</a><div id="cookies_close">X</div></div> diff --git a/site/include/entete.php b/site/include/entete.php new file mode 100644 index 0000000..734ef77 --- /dev/null +++ b/site/include/entete.php @@ -0,0 +1,6 @@ +<?php +session_start(); +//header( 'content-type: text/html; charset=utf-8' ); +ini_set('display_errors',1); + +?> \ No newline at end of file diff --git a/site/include/entete_adm.php b/site/include/entete_adm.php new file mode 100644 index 0000000..95b6a7a --- /dev/null +++ b/site/include/entete_adm.php @@ -0,0 +1,6 @@ +<?php +if(!isset($_SESSION['adm_co']) && $_SESSION['adm_co']!=1){ + header('location:connexion-adm.php'); + exit(); +} +?> diff --git a/site/include/entete_cap.php b/site/include/entete_cap.php new file mode 100644 index 0000000..7920220 --- /dev/null +++ b/site/include/entete_cap.php @@ -0,0 +1,6 @@ +<?php +if(!isset($_SESSION['cap_co']) && $_SESSION['cap_co']!=1){ + header('location:connexion-cfa.php'); + exit(); +} +?> diff --git a/site/include/entete_cfa.php b/site/include/entete_cfa.php new file mode 100644 index 0000000..96acf09 --- /dev/null +++ b/site/include/entete_cfa.php @@ -0,0 +1,6 @@ +<?php +if(!isset($_SESSION['cfa_co']) && $_SESSION['cfa_co']!=1){ + header('location:connexion-cfa.php'); + exit(); +} +?> diff --git a/site/include/footer.php b/site/include/footer.php new file mode 100644 index 0000000..09fe8be --- /dev/null +++ b/site/include/footer.php @@ -0,0 +1,108 @@ + <div class="container-fluid RSociaux noPad"> + <!-- <div class="container noPad"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad"> + <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12 noPad blocTextRSociaux"> + <span class="textRSociaux">Rejoignez-nous aussi sur </span> + </div> + <div class="col-lg-3 col-md-3 col-sm-3 col-xs-12 noPad blocIconRSociaux"> + <img src="img/reseaux_sociaux/snapchat.png" alt="Snapchat"> + <img src="img/reseaux_sociaux/facebook_twitter_linkedin.png" alt="Facebook Twitter Linkedin"> + <img src="img/reseaux_sociaux/youtube.png" alt="Youtube"> + </div> + </div> + </div>--> + </div><!-- RESEAUX SOCIAUX --> + <div class="container-fluid bgFooter noPad"> + <div class="container noPad"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad"> + <div class="col-lg-3 col-md-3 col-sm-5 col-xs-12 noPad center-block text-center liensFooter"> + <a href="https://www.metiers-hotel-resto.fr/" target="_blank"> + <div class="footerBlocMHR"> + <img src="img/footer/logo_mhr.png" alt="Métiers Hôtel-Resto"><br> + <div class="blocTextMHRFoot"> + <span class="textfooterBlocMHR">Trouvez une formation</span><br> + <span class="textfooterBlocMHR">ou un contrat en alternance</span> + </div> + </div> + </a> + </div> + <div class="col-lg-1 col-md-1 col-sm-1 col-xs-12 noPad"> + <hr class="sepSectionFooter1"> + </div> + <div class="col-lg-4 col-md-4 col-sm-6 col-xs-12 noPad center-block text-center"> + <div class="footerBlocLiens"> + <div class="blocTextLiensFoot"> + <span class="titleBlocLiens"><b>Liens</b></span><br> + <div class="blocLiensFooter"> + <?php if($burgerMenu=='on'){ ?> + <span class="liensFooter"><a href="parents.php">Parents</a></span><br> + <span class="liensFooter"><a href="jeunes.php">Jeunes</a></span><br> + <span class="liensFooter"><a href="colleges-lycees.php">Collèges - Lycées</a></span><br> + <span class="liensFooter"><a href="portes-ouvertes.php">Portes ouvertes</a></span><br> + <span class="liensFooter"><a href="inscriptionPro.php">Professionnels</a></span><br /> + <?php } ?> + <span class="liensFooter"><a href="decouvrez-deciday.php">Découvrez Deciday !</a></span> + </div> + </div> + </div> + </div> + <div class="col-lg-1 col-md-1 col-sm-12 col-xs-12 noPad"> + <hr class="sepSectionFootHor"> + </div> + <div class="col-lg-3 col-md-3 col-sm-12 col-xs-12 noPad center-block text-center"> + <div class="footerBlocInitiateurs"> + <div class="blocTextInitiateurs"> + <span class="titleBlocLiens">Les initiateurs</span><br> + <a href="https://www.fafih.com/" target="_blank"><img src="img/footer/logo_fafih.png" alt="FAFIH"></a><br> + <img src="img/footer/education_nat.jpg" alt="Education nationale"><br> + </div> + </div> + </div> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 copyrightText text-center"> + <span>© Deciday 2018 ı Tous droits réservés <!-- ı <a href="#">Mentions légales </a>--> ı <a href="politique-de-confidentialite.php">Politique de confidentialité</a></span> + </div> + </div> + </div> + </div> + +<script> + function createCookie(name,value,days) { + if (days) { + var date = new Date(); + date.setTime(date.getTime()+(days*24*60*60*1000)); + var expires = "; expires="+date.toGMTString(); + } + else var expires = ""; + document.cookie = name+"="+value+expires+"; path=/"; + } + + //Lecture d'un cookie + function readCookie(name) { + var nameEQ = name + "="; + var ca = document.cookie.split(';'); + for(var i=0;i < ca.length;i++) { + var c = ca[i]; + while (c.charAt(0)==' ') c = c.substring(1,c.length); + if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); + } + return null; + } + + //Supprimer un cookie + function eraseCookie(name) { + createCookie(name,"",-1); + } + jQuery(document).ready(function(){ + var mycookieCook = readCookie('mycookiesfafih_cook'); + if(mycookieCook){ + jQuery('#cookies').css('display','none'); + } + + jQuery('#cookies_close').click(function(){ + createCookie('mycookiesfafih_cook','mycookiesfafih_cook16',7); + jQuery('#cookies').fadeOut(); + }); + }); +</script> + +<div id="cookies">En poursuivant la navigation sur ce site, vous acceptez l’utilisation de cookies pour vous proposer des services et des offres adaptés à vos centres d’intérêt. <a href="politique-de-confidentialite.php" target="_blank">En savoir plus</a><div id="cookies_close">X</div></div> diff --git a/site/include/header.php b/site/include/header.php new file mode 100644 index 0000000..ddfeeb2 --- /dev/null +++ b/site/include/header.php @@ -0,0 +1,49 @@ +<?php + //if(!isset($burgerMenu)) $burgerMenu=''; + $burgerMenu='on'; +?> +<div class="header"> + <div class="container-fluid"> + <div class="container"> + <div class="row"> + <div id="btnBurger" class="col-lg-1 col-md-1 col-sm-1 noPad"> + <div class="navbar navbar-default"> + <div class="navbar-header"> + <?php if($burgerMenu=='on'){ ?> + <a class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> + <img src="img/header/menuBurger.png" alt="menu"> + </a> + <?php } ?> + </div> + <div class="navbar-collapse collapse"> + <ul class="nav navbar-nav"> + <li class="active"><a href="/">Accueil</a></li> + <?php if($burgerMenu=='on'){ ?> + <li><a href="jeunes.php">Jeunes</a></li> + <li><a href="parents.php">Parents</a></li> + <?php } ?> + <li><a href="portes-ouvertes.php">Portes Ouvertes</a></li> + <li><a href="connexion-cfa.php">Accès CFA - Lycée Pros</a></li> + <!--<li><a href="#">Accès Média</a></li>--> + </ul> + </div> + </div> + </div> + <div class="col-lg-offset-3 col-lg-4 col-md-offset-3 col-md-4 col-sm-offset-3 col-sm-4 visible-sm visible-md visible-lg"> + <a href="index.php"><img class="img-responsive" src="img/header/logo_deciday.png" alt="Deciday" style="margin:0 auto;"></a> + </div> + <div class="hidden-sm hidden-md hidden-lg col-xs-12"> + <a href="index.php"><img id="logoResp" class="img-responsive" src="img/header/logo_deciday.png" alt="Deciday"></a> + </div> + <div id="btnCFA" class="col-lg-offset-2 col-lg-2 col-md-offset-2 col-md-2 col-sm-offset-2 col-sm-2 visible-sm visible-md visible-lg"> + <a href="connexion-cfa.php" title="Accès CFA"> + <img class="imgBtnCFA" src="img/header/btnCFA.png" alt="CFA"> + </a> + <!-- <a href="#"> + <img class="imgBtnMedia" src="img/header/btnMedia.png" alt="CFA"> + </a>--> + </div> + </div> + </div> + </div> + </div> \ No newline at end of file diff --git a/site/index-adm.php b/site/index-adm.php new file mode 100644 index 0000000..585498d --- /dev/null +++ b/site/index-adm.php @@ -0,0 +1,49 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Espace de suivi</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/index-cap.php b/site/index-cap.php new file mode 100644 index 0000000..f9d4de0 --- /dev/null +++ b/site/index-cap.php @@ -0,0 +1,256 @@ +<?php +include('include/entete.php'); +include('include/entete_cap.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +$query="select * from eta,capitaines where id_eta=num_eta and id_cap=:id_cap"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +$capitaine=decrypter($maCleDeCryptage,$data[0]['prenom_cap'])." ".decrypter($maCleDeCryptage,$data[0]['nom_cap']); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script type="text/javascript" src="js/jquery.tablesorter.js"></script> +<script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + $("#myTablePro").tablesorter({ + sortList: [[0,0], [1,0]] , + cssAsc: 'up', + cssDesc: 'down' + }); + + $('#btnSlidePro').click(function(){ + $(".lstPro").slideDown(); + }); + + +}); +function valid_en(){ + + var a1 = 0; + var a2 = 0; + var p1 = 0; + var p2 = 0; + + document.frmEn.nom_eleve.value=trim(document.frmEn.nom_eleve.value); + document.frmEn.prenom_eleve.value=trim(document.frmEn.prenom_eleve.value); + document.frmEn.nom_pro.value=trim(document.frmEn.nom_pro.value); + document.frmEn.prenom_pro.value=trim(document.frmEn.prenom_pro.value); + + if(document.frmEn.nom_eleve.value!="") a1 = 1; + if(document.frmEn.prenom_eleve.value!="") a2 = 1; + if(document.frmEn.nom_pro.value!="") p1 = 1; + if(document.frmEn.prenom_pro.value!="") p2 = 1; + + + if(a1==0 && a2==1){ + alert('Merci de renseigner le nom de l\'apprenant.'); + document.frmCo.nom_eleve.focus(); + return false; + } + if(a1==1 && a2==0){ + alert('Merci de renseigner le prénom de l\'apprenant.'); + document.frmCo.prenom_eleve.focus(); + return false; + } + if(!verifmail('document.frmEn.eml_eleve',0)) return false; + if(!checkFormTel('document.frmEn.tel_eleve','T','Le téléphone de l\'apprenant',0)) return false; + + if(p1==0 && p2==1){ + alert('Merci de renseigner le nom du professionnel.'); + document.frmCo.nom_pro.focus(); + return false; + } + if(p1==1 && p2==0){ + alert('Merci de renseigner le prénom du professionnel.'); + document.frmCo.prenom_pro.focus(); + return false; + } + if(!verifmail('document.frmEn.eml_pro',0)) return false; + if(!checkFormTel('document.frmEn.tel_pro','T','Le téléphone du professionnel',0)) return false; + + return true; +} +function test_en(){ + if(valid_en()) document.frmEn.submit(); +} + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Capitaine</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <b>Capitaine : </b><?php echo $capitaine;?> <a href="modifier-cap.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a> + </div> + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cap.php">Votre trinôme</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="agenda-cap.php">Votre agenda</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cap.php">Boite à outils</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre trinôme</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + + <div class="textIntro"><br/>Identifiez ici les membres de votre trinôme + <div class="clearfix"></div> + </div> + <div class="clearfix"></div> + + <?php + $query="select * from equipes where num_capitaine=:num_cap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); + ?> + <form name="frmEn" id="frmEn" method="post" action="traitement-cap.php"> + + <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12"> + + <div style="margin-bottom: 20px;"> + <b>Apprenant : </b><br /> + <input type="text" name="prenom_eleve" id="prenom_eleve" value="<?php echo decrypter($maCleDeCryptage,$data[0]['prenom_eleve']);?>" placeholder="Prénom" /><br /> + <input type="text" name="nom_eleve" id="nom_eleve" value="<?php echo decrypter($maCleDeCryptage,$data[0]['nom_eleve']);?>" placeholder="Nom" /> <br /> + <input type="text" name="eml_eleve" id="eml_eleve" value="<?php echo decrypter($maCleDeCryptage,$data[0]['eml_eleve']);?>" placeholder="Email" /> <br /> + <input type="text" name="tel_eleve" id="tel_eleve" value="<?php echo decrypter($maCleDeCryptage,$data[0]['tel_eleve']);?>" placeholder="Téléphone" /> + </div> + + </div> + <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12"> + + <div style="margin-bottom: 20px;"> + <b>Professionnel : </b><br /> + <input type="text" name="prenom_pro" id="prenom_pro" value="<?php echo decrypter($maCleDeCryptage,$data[0]['prenom_pro']);?>" placeholder="Prénom" /> <br /> + <input type="text" name="nom_pro" id="nom_pro" value="<?php echo decrypter($maCleDeCryptage,$data[0]['nom_pro']);?>" placeholder="Nom" /> <br /> + <input type="text" name="eml_pro" id="eml_pro" value="<?php echo decrypter($maCleDeCryptage,$data[0]['eml_pro']);?>" placeholder="Email" /> <br /> + <input type="text" name="tel_pro" id="tel_pro" value="<?php echo decrypter($maCleDeCryptage,$data[0]['tel_pro']);?>" placeholder="Téléphone" /> + <div><a href="#" id="btnSlidePro">Trouver un professionnel</a></div> + </div> + + </div> + + <div class="clearfix"></div> + + <div style="margin-bottom: 20px;">&nbsp;</div> + + <input type="hidden" name="action" value="go_en" /> + <div class="btnDeci"><a href="javascript:void(0);" onClick="test_en()">Enregistrer</a></div> + + </form> + + <?php + + //if($data[0]['num_eta']==399 || $data[0]['num_eta']==402){ + + //LISTE DES PROFESSIONNELS + + echo '<div class="lstPro">'; + + echo '<br /><br />'; + + echo '<div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div>'."\r\n"; + echo '<div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Liste des professionnels</div>'."\r\n"; + echo '<div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div>'."\r\n"; + echo '<div class="clearfix"></div>'."\r\n"; + + $queryPro="SELECT * FROM inscriptions_pro WHERE statut = 1 AND faireEquipe = 1"; + $queryRequestPro = $db->prepare( $queryPro ); + $queryRequestPro->execute(); + $countSol = $queryRequestPro->rowCount(); + + if($countSol>0){ + + $dataSol = $queryRequestPro->fetchAll(); + + echo '<table id="myTablePro" class="tablesorter">'."\r\n"; + + echo '<thead><tr><th>Etablissement</th><th>Nom</th><th>Prénom</th><th>CP</th><th>Ville</th><th class="sorter-false">Mobile</th><th class="sorter-false">Fixe</th><th class="sorter-false">Email</th></tr></thead>'."\r\n"; + echo '<tbody>'."\r\n"; + foreach($dataSol as $key=>$val){ + + + echo '<tr>'."\r\n"; + echo '<td>'.mb_strtoupper(decrypter($maCleDeCryptage,$val['etablissement_pro'])).'</td>'."\r\n"; + echo '<td>'.mb_strtoupper(decrypter($maCleDeCryptage,$val['nom_pro'])).'</td>'."\r\n"; + echo '<td>'.decrypter($maCleDeCryptage,$val['prenom_pro']).'</td>'."\r\n"; + echo '<td>'.decrypter($maCleDeCryptage,$val['cp_pro']).'</td>'."\r\n"; + echo '<td>'.mb_strtoupper(decrypter($maCleDeCryptage,$val['ville_pro'])).'</td>'."\r\n"; + echo '<td>'.decrypter($maCleDeCryptage,$val['mobile_pro']).'</td>'."\r\n"; + echo '<td>'.decrypter($maCleDeCryptage,$val['fixe_pro']).'</td>'."\r\n"; + echo '<td>'.decrypter($maCleDeCryptage,$val['email_pro']).'</td>'."\r\n"; + echo '</tr>'."\r\n"; + + + } + echo '</tbody>'."\r\n"; + echo '</table>'."\r\n"; + }else{ + echo '<div align="center">Aucun professionnel pour l\'instant</div>'; + } + + echo '</div>'; + + + + + //} + + ?> + + + <?php + } + ?> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/index-cfa.php b/site/index-cfa.php new file mode 100644 index 0000000..93670e9 --- /dev/null +++ b/site/index-cfa.php @@ -0,0 +1,155 @@ +<?php +include('include/entete.php'); +include('include/entete_cfa.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + + $query="select * from eta where id_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + + //Affichage sollicitations capitaines + $querySolRef="select * FROM sollicitations WHERE idCapitaine=0 AND traitement=0 AND chxNumEta=:chxNumEta"; + $queryRequestSolRef = $db->prepare( $querySolRef ); + $queryRequestSolRef->bindParam( ':chxNumEta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequestSolRef->execute(); + $countSolRef=$queryRequestSolRef->rowcount(); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Référent</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']); ?></span><br /> + <span style="font-size: 0.9em;"> + <?php + echo decrypter($maCleDeCryptage,$data[0]['adresse1']); + if(!empty($data[0]['adresse2'])) echo ' - '.decrypter($maCleDeCryptage,$data[0]['adresse2']); + echo ' - '.decrypter($maCleDeCryptage,$data[0]['cp']).' '.decrypter($maCleDeCryptage,$data[0]['ville']); + ?> + </span><br /> + <b>Référent : </b><?php echo decrypter($maCleDeCryptage,$data[0]['nom_ref']);?> <a href="modifier-referent.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a></div> + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cfa.php">Vos trinômes</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cfa.php">Boite à outils</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="po-cfa.php">Portes ouvertes</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Vos trinômes</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + + <div class="textIntro"><br/> + <?php + if($countSolRef==0) echo 'Vous n\'avez aucune sollicitation refusée.<br />'; + elseif($countSolRef==1) echo '<b>Vous avez '.$countSolRef.' sollicitation refusée.</b><br />'; + elseif($countSolRef>1) echo '<b>Vous avez '.$countSolRef.' sollicitations refusées.</b><br />'; + ?> + Suivez les sollicitations des collèges et lycées dans l'agenda de vos capitaines.<br /><br /> + Créez et suivez vos trinômes dans l'organisation de Deciday ! + </div> + <div class="clearfix"></div> + + <div style="text-align: center;"><a href="ajouter-ref.php">Créer un trinôme</a></div> + <?php + $query="select * from capitaines where num_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); + echo '<table cellpadding="0" cellspacing="0" class="tabAdm">'; + echo "<tr><th>Capitaine</th><th>Apprenant</th><th>Professionnel</th><th>Rendez-vous</th><th>Sollicitations</th><th colspan='2' style='text-align:center'>Actions</th></tr>"; + foreach($data as $val){ + //Affichage noms apprenant et pro + $query2="select * from equipes where num_capitaine=:num_cap"; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query2 ); + $queryRequest2->bindParam( ':num_cap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest2->execute(); + $data2=$queryRequest2->fetchAll(); + //Affichage rendez-vous capitaines + $query3="select * FROM agenda WHERE numCap=:num_cap AND statut= 'reserve' AND numEta=:numEta"; + $db3 = connect_base(); + $queryRequest3 = $db3->prepare( $query3 ); + $queryRequest3->bindParam( ':numEta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest3->bindParam( ':num_cap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest3->execute(); + $countRdv=$queryRequest3->rowcount(); + //Affichage sollicitations capitaines + $query4="select * FROM sollicitations WHERE idCapitaine=:num_cap AND traitement=0 AND chxNumEta=:chxNumEta"; + $db4 = connect_base(); + $queryRequest4 = $db4->prepare( $query4 ); + $queryRequest4->bindParam( ':chxNumEta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest4->bindParam( ':num_cap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest4->execute(); + $countSol=$queryRequest4->rowcount(); + + echo '<tr><td>'.decrypter($maCleDeCryptage,$val['prenom_cap']).' '.decrypter($maCleDeCryptage,$val['nom_cap']).'</td>'; + if(!empty($data2[0]['nom_eleve']) && !empty($data2[0]['prenom_eleve'])) echo '<td>'.decrypter($maCleDeCryptage,$data2[0]['nom_eleve']).' '.decrypter($maCleDeCryptage,$data2[0]['prenom_eleve']).'</td>'; + else echo '<td>&nbsp;</td>'; + if(!empty($data2[0]['nom_pro']) && !empty($data2[0]['prenom_pro'])) echo '<td>'.decrypter($maCleDeCryptage,$data2[0]['nom_pro']).' '.decrypter($maCleDeCryptage,$data2[0]['prenom_pro']).'</td>'; + else echo '<td>&nbsp;</td>'; + echo "<td align=\"center\">".$countRdv."</td>"; + echo "<td align=\"center\">".$countSol."</td>"; + echo '<td><a href="modifier-ref.php?id='.$val['id_cap'].'">Modifier</a></td>'; + echo '<td><a href="agenda-cfa.php?id='.$val['id_cap'].'">Agenda</a></td>'; + echo '</tr>'; + + } + echo '</table>'; + } + ?> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/index.php b/site/index.php new file mode 100644 index 0000000..4f2bde6 --- /dev/null +++ b/site/index.php @@ -0,0 +1,171 @@ +<?php +include('include/entete.php'); + +$burgerMenu='on'; + + + +?> +<!doctype html> +<html> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="stylesheet" href="css/bootstrap.min.css"> + <link rel="stylesheet" href="css/style.css"> + <script src="js/jquery-3.2.1.min.js"></script> + <script src="js/bootstrap.min.js"></script> + <title>Deciday !</title> + + <script> + jQuery(document).ready(function(){ + + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + }); + </script> + + + + </head> + <body> + + <?php include('include/header.php');?><!-- HEADER --> + <div class="homeSlider"> + <div class="container-fluid noPad"> + <div id="myCarousel" class="carousel slide" data-ride="carousel"> + <!-- Indicators --> + <ol class="carousel-indicators"> + <li data-target="#myCarousel" data-slide-to="0" class="active"></li> + <!-- <li data-target="#myCarousel" data-slide-to="1"></li> + <li data-target="#myCarousel" data-slide-to="2"></li>--> + </ol> + <!-- Wrapper for slides --> + <div class="carousel-inner" style="background-color: #5B2050;"> + <div class="item active firstSlide"> + <a href="portes-ouvertes.php"> + <img class="hidden-xs" src="img/slide/slider2.jpg" alt="Journées Portes Ouvertes"></a> + <a href="portes-ouvertes.php"> + <img class="hidden-lg hidden-md hidden-sm" src="img/slide/slider2_resp.jpg" alt="Journées Portes Ouvertes"></a> + </div> + <!-- <div class="item secondSlide"> + <a href="portes-ouvertes.php"> + <img class="visible-sm visible-md visible-lg" src="img/slide/slider2.jpg" alt="Journées Portes Ouvertes"></a> + <a href="portes-ouvertes.php"> + <img class="hidden-lg hidden-md hidden-sm" src="img/slide/slider2_resp.jpg" alt="Journées Portes Ouvertes"></a> + <div class="itemAbs"> + <img src="img/slide/logo_MHR_slide2.png" alt="Métiers Hotel-Resto"> + <hr class="separateurSlide"> + <span>Rejoignez un secteur</span><br> + <span>d’avenir qui recrute</span> + </div> + + <div class="item thirdSlide"> + <img class="visible-sm visible-md visible-lg" src="img/slide/slider3.jpg" alt="CFA"> + <img class="hidden-lg hidden-md hidden-sm" src="img/slide/slider3_resp.jpg" alt="CFA"> + <div class="itemAbs2"> + <img id="logoCFA" class="img-responsive" src="img/slide/logo_CFA_slide3.png" alt="CFA"> + <span class="displayFont">Centre de formation</span><br> + <span class="displayFont">d'apprentis</span><br> + <hr class="separateurSlide2"> + <span class="myriadFont">La voie d'excellence</span><br> + <span class="myriadFont">pour se former</span><br> + <span class="myriadFont">par l'apprentissage</span> + </div> + </div>--> + </div> + <!-- Left and right controls --> + <a class="left carousel-control" href="#myCarousel" data-slide="prev"> + <img src="img/slide/chevron_left.png" alt="Previous"> + </a> + <a class="right carousel-control" href="#myCarousel" data-slide="next"> + <img class="chevrRight" src="img/slide/chevron_right.png" alt="Next"> + </a> + </div> + </div> + </div><!-- SLIDER --> + <div class="container-fluid"> + <div class="container blocs"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad groupBlocs "> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="parents.php"><div class="blocText parents noPad"> + <div class="textBloc"> + <span class="icon_Bloc"><img src="img/blocs/parents.png"></span><br> + <span class="titleBloc">PARENTS</span><br> + <span class="textBlocMHR">Découvrez des métiers</span><br> + <span class="textBlocMHR">d'avenir pour vos enfants</span><br> + <hr class="sepTextBloc"> + </div> + </div></a> + </div> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="jeunes.php"><div class="blocText jeunes noPad"> + <div class="textBloc"> + <span class="icon_Bloc"><img src="img/blocs/jeunes.png"></span><br> + <span class="titleBloc">JEUNES</span><br> + <span class="textBlocMHR">Découvrez les métiers</span><br> + <span class="textBlocMHR">Rencontrez des professionnels</span><br> + <span class="textBlocMHR">Trouvez un stage dans le secteur</span><br> + <hr class="sepTextBloc"> + </div> + </div></a> + </div> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="colleges-lycees.php"><div class="blocText colLyc noPad"> + <div class="textBloc"> + <span class="icon_Bloc"><img src="img/blocs/colleges_lycees.png"></span><br> + <span class="titleBloc">COLLÈGES - LYCÉES</span><br> + <span class="textBlocMHR">Faites découvrir Deciday</span><br> + <span class="textBlocMHR">à vos élèves</span><br> + <hr class="sepTextBloc"> + </div> + </div></a> + </div> + </div> + </div> + <div class="container blocs"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad groupCadre"> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="portes-ouvertes.php"><div class="blocCadre cadrePO noPad"> + <div class="textcadre"> + <h3>PORTES OUVERTES</h3> + <p>CFA ET LYCÉES PROS</p> + </div> + </div></a> + </div> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="decouvrez-deciday.php"><div class="blocCadre cadreDecouvrez noPad"> + <div class="textcadre"> + <h3>DÉCOUVREZ <img src="img/blocs/Logo_Deciday.png"></h3> + </div> + </div></a> + </div> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="inscriptionPro.php"><div class="blocCadre cadrePro noPad"> + <div class="textcadre"> + <h3>PROFESSIONNELS</h3> + <p>INSCRIVEZ-VOUS À DECIDAY</p> + </div> + </div></a> + </div> + </div> + <div class="hidden-sm hidden-md hidden-lg col-xs-12 col-xs-12 center-block text-center" id="btnCFAresp"> + <a href="connexion-cfa.php" title="Accès CFA"> + <img class="imgBtnCFA" src="img/header/btnCFA.png" alt="CFA"> + </a> + <!-- <a href="#"> + <img class="imgBtnMedia" src="img/header/btnMedia.png" alt="CFA"> + </a>--> + </div> + </div> + </div><!-- BLOCS --> + <?php include('include/footer.php');?> + </body> +</html> \ No newline at end of file diff --git a/site/indextmp.php b/site/indextmp.php new file mode 100644 index 0000000..0651b1e --- /dev/null +++ b/site/indextmp.php @@ -0,0 +1,167 @@ +<?php +include('include/entete.php'); + +$burgerMenu='on'; + + + +?> +<!doctype html> +<html> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="stylesheet" href="css/bootstrap.min.css"> + <link rel="stylesheet" href="css/style.css"> + <script src="js/jquery-3.2.1.min.js"></script> + <script src="js/bootstrap.min.js"></script> + <title>FAFIH</title> + + <script> + jQuery(document).ready(function(){ + + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + }); + </script> + + + + </head> + <body> + + <?php include('include/header.php');?><!-- HEADER --> + <div class="homeSlider"> + <div class="container-fluid noPad"> + <div id="myCarousel" class="carousel slide" data-ride="carousel"> + <!-- Indicators --> + <ol class="carousel-indicators"> + <li data-target="#myCarousel" data-slide-to="0" class="active"></li> + <!-- <li data-target="#myCarousel" data-slide-to="1"></li> + <li data-target="#myCarousel" data-slide-to="2"></li>--> + </ol> + <!-- Wrapper for slides --> + <div class="carousel-inner" style="background-color: #5B2050;"> + <div class="item active firstSlide"> + <a href="decouvrez-deciday.php"><img class="hidden-xs" src="img/slide/deciday_home_slider.jpg" alt="DECIDAY"></a> + <img class="hidden-lg hidden-md hidden-sm" src="img/slide/slider_new_resp.jpg" alt="DECIDAY"> + </div> + <!-- <div class="item secondSlide"> + <img class="visible-sm visible-md visible-lg" src="img/slide/slider2.jpg" alt="Métiers Hotel-Resto"> + <img class="hidden-lg hidden-md hidden-sm" src="img/slide/slider2_resp.jpg" alt="Métiers Hotel-Resto"> + <div class="itemAbs"> + <img src="img/slide/logo_MHR_slide2.png" alt="Métiers Hotel-Resto"> + <hr class="separateurSlide"> + <span>Rejoignez un secteur</span><br> + <span>d’avenir qui recrute</span> + </div> + </div> + <div class="item thirdSlide"> + <img class="visible-sm visible-md visible-lg" src="img/slide/slider3.jpg" alt="CFA"> + <img class="hidden-lg hidden-md hidden-sm" src="img/slide/slider3_resp.jpg" alt="CFA"> + <div class="itemAbs2"> + <img id="logoCFA" class="img-responsive" src="img/slide/logo_CFA_slide3.png" alt="CFA"> + <span class="displayFont">Centre de formation</span><br> + <span class="displayFont">d'apprentis</span><br> + <hr class="separateurSlide2"> + <span class="myriadFont">La voie d'excellence</span><br> + <span class="myriadFont">pour se former</span><br> + <span class="myriadFont">par l'apprentissage</span> + </div> + </div>--> + </div> + <!-- Left and right controls --> + <a class="left carousel-control" href="#myCarousel" data-slide="prev"> + <img src="img/slide/chevron_left.png" alt="Previous"> + </a> + <a class="right carousel-control" href="#myCarousel" data-slide="next"> + <img class="chevrRight" src="img/slide/chevron_right.png" alt="Next"> + </a> + </div> + </div> + </div><!-- SLIDER --> + <div class="container-fluid"> + <div class="container blocs"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad groupBlocs "> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="parents.php"><div class="blocText parents noPad"> + <div class="textBloc"> + <span class="icon_Bloc"><img src="img/blocs/parents.png"></span><br> + <span class="titleBloc">PARENTS</span><br> + <span class="textBlocMHR">Découvrez des métiers</span><br> + <span class="textBlocMHR">d'avenir pour vos enfants</span><br> + <hr class="sepTextBloc"> + </div> + </div></a> + </div> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="jeunes.php"><div class="blocText jeunes noPad"> + <div class="textBloc"> + <span class="icon_Bloc"><img src="img/blocs/jeunes.png"></span><br> + <span class="titleBloc">JEUNES</span><br> + <span class="textBlocMHR">Découvrez les métiers</span><br> + <span class="textBlocMHR">Rencontrez des professionnels</span><br> + <span class="textBlocMHR">Trouvez un stage dans le secteur</span><br> + <hr class="sepTextBloc"> + </div> + </div></a> + </div> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="colleges-lycees.php"><div class="blocText colLyc noPad"> + <div class="textBloc"> + <span class="icon_Bloc"><img src="img/blocs/colleges_lycees.png"></span><br> + <span class="titleBloc">COLLÈGES - LYCÉES</span><br> + <span class="textBlocMHR">Faites découvrir Deciday</span><br> + <span class="textBlocMHR">à vos élèves</span><br> + <hr class="sepTextBloc"> + </div> + </div></a> + </div> + </div> + </div> + <div class="container blocs"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad groupCadre"> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="portes-ouvertes.php"><div class="blocCadre cadrePO noPad"> + <div class="textcadre"> + <h3>PORTES OUVERTES</h3> + <p>CFA ET LYCÉES PROS</p> + </div> + </div></a> + </div> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="decouvrez-deciday.php"><div class="blocCadre cadreDecouvrez noPad"> + <div class="textcadre"> + <h3>DÉCOUVREZ <img src="img/blocs/Logo_Deciday.png"></h3> + </div> + </div></a> + </div> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 padDix"> + <a href="inscriptionPro.php"><div class="blocCadre cadrePro noPad"> + <div class="textcadre"> + <h3>PROFESSIONNELS</h3> + <p>INSCRIVEZ-VOUS À DECIDAY</p> + </div> + </div></a> + </div> + </div> + <div class="hidden-sm hidden-md hidden-lg col-xs-12 col-xs-12 center-block text-center" id="btnCFAresp"> + <a href="connexion-cfa.php" title="Accès CFA"> + <img class="imgBtnCFA" src="img/header/btnCFA.png" alt="CFA"> + </a> + <!-- <a href="#"> + <img class="imgBtnMedia" src="img/header/btnMedia.png" alt="CFA"> + </a>--> + </div> + </div> + </div><!-- BLOCS --> + <?php include('include/footer.php');?> + </body> +</html> \ No newline at end of file diff --git a/site/inscriptionPro.php b/site/inscriptionPro.php new file mode 100644 index 0000000..3efd986 --- /dev/null +++ b/site/inscriptionPro.php @@ -0,0 +1,288 @@ +<?php +include('include/entete.php'); +?> +<!doctype html> +<html> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="stylesheet" href="css/bootstrap.min.css"> + <link rel="stylesheet" href="css/style.css"> + <script src="js/jquery-3.2.1.min.js"></script> + <script type="text/javascript" src="js/fonctions.js"></script> + <script src="js/bootstrap.min.js"></script> + <title>Deciday!</title> + <script> + jQuery(document).ready(function(){ + + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + }); + </script> + <script> + + function valid(){ + if(validation()) document.frmPro.submit(); + } + function validation(){ + if(document.frmPro.recevoirJeunes.checked==false && document.frmPro.faireEquipe.checked==false && document.frmPro.recevoirStage.checked==false){ + alert('Merci de cocher au moins un choix.'); + return false; + } + if(document.frmPro.etablissement.value==''){ + alert('Merci de renseigner l\'établissement.'); + document.frmPro.etablissement.focus(); + return false; + } + if(document.frmPro.siret.value==''){ + alert('Merci de renseigner le SIRET.'); + document.frmPro.siret.focus(); + return false; + } + if(document.frmPro.siret.value!=parseInt(document.frmPro.siret.value)){ + alert('Merci de renseigner le SIRET.'); + document.frmPro.siret.focus(); + return false; + } + if(document.frmPro.siret.value.length!=14){ + alert('Le SIRET doit être composé de 14 chiffres.'); + document.frmPro.siret.focus(); + return false; + } + if(document.frmPro.nom.value==''){ + alert('Merci de renseigner le nom.'); + document.frmPro.nom.focus(); + return false; + } + if(document.frmPro.prenom.value==''){ + alert('Merci de renseigner le prénom.'); + document.frmPro.prenom.focus(); + return false; + } + if(document.frmPro.adr1.value==''){ + alert('Merci de renseigner l\'adresse 1.'); + document.frmPro.adr1.focus(); + return false; + } + if (document.frmPro.cp.value.length < 5 && document.frmPro.cp.value.length > 0 ) + { + alert('Merci de renseigner le code postal.'); + document.frmPro.cp.focus(); + return false; + } + if (document.frmPro.cp.value.length == 0) + { + alert('Merci de renseigner le code postal.'); + document.frmPro.cp.focus(); + return false; + } + if (document.frmPro.cp.value!=parseInt(document.frmPro.cp.value)) + { + alert('Merci de renseigner le code postal.'); + document.frmPro.cp.focus(); + return false; + } + if(document.frmPro.ville.value==''){ + alert('Merci de renseigner la ville.'); + document.frmPro.ville.focus(); + return false; + } + if(!checkFormTel('document.frmPro.mobile','P','Le mobile',0)){ + return false; + } + + if(!checkFormTel('document.frmPro.fixe','F','Le fixe',0)){ + return false; + } + if(!verifmail('document.frmPro.email',1)){ + return false; + } + return true; + } + </script> + <script src='https://www.google.com/recaptcha/api.js'></script> + <style> + .formPro{ text-align: center;} + .formPro input{ margin-bottom:12px;} + .marginForm{ text-align:left;} + .text-right{text-align:right; padding:0;} + </style> + </head> + <body> + <?php include('include/header.php');?> + <div class="container-fluid" style="margin-top: -20px;"> + <div class="row" style="background-color: #5B2050;"> + <a href="#" style="cursor:auto"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad"> + <img class="visible-sm visible-md visible-lg img-responsive imageBandeau" src="img/slide/deciday_decouvrez_deciday_slider.jpg" alt="Métiers Hotel-Resto"> + <img class="hidden-lg hidden-md hidden-sm img-responsive imageBandeau" src="img/slide/slider_new_resp.jpg" alt="Métiers Hotel-Resto"> + </div> + </a> + </div> + </div> + <div class="container contenuTxt"><br> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Deciday! 17 janvier 2019 : partagez la passion de votre métier !</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-2 txtIntro"> + <p>Deciday! est un évènement organisé par l’OPCA Fafih en partenariat avec le Ministère de l’Education nationale et le Ministère de l’Enseignement supérieur, de la Recherche et de l’Innovation. L’objectif majeur de cette journée est de faire découvrir aux élèves de troisième et de seconde la richesse de nos métiers et des parcours professionnels.<br /><br /> +</p> </div> + </div> +<div class="row containerTpsForts"> + <div class="container "> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage"> + Deciday! s’articule autour de différents temps forts : + </div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + + <div class="col-lg-3 col-md-3 col-sm-3 col-xs-12 tpsForts tpsForts1"> + <div class="titreTpsForts">La présentation des métiers dans les collèges et lycées par un trio constitué d’un apprenti, d’un professionnel et d’un enseignant,</div> + </div> + <div class="col-lg-1 col-md-1 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 tpsForts tpsForts2"> + <div class="titreTpsForts">L'accueil dans votre établissement d'un jeune et de ses parents pour leur faire découvrir vos métiers, </div> + </div> + <div class="col-lg-1 col-md-1 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-3 col-md-3 col-sm-3 col-xs-12 tpsForts tpsForts3"> + <div class="titreTpsForts">Les journées portes ouvertes dans les CFA et lycées professionnels.</div> + </div> + </div> +</div> + + <div class="container " style="padding-top:20px; margin-top:8px; "> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage"> + Le succès de Deciday! passe par vous ! + </div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-2 txtChapeau"> + <p>Inscrivez-vous à Deciday !</p> </div> + + </div> + <div class="container"> + <form method="post" action="actions-pro.php" name="frmPro" onSubmit="return validation()" id="frmPro"> + <input type="hidden" name="action" value="rec_pro" /> + <div class="formPro"> + <div class="col-xs-1 col-sm-offset-4 col-sm-1 col-md-offset-3 col-md-1 text-right marginForm"><input type="checkbox" name="recevoirJeunes" id="recevoirJeunes"></div><div class="col-xs-11 col-sm-7 col-md-8 marginForm"><label for="recevoirJeunes" >J'accepte de recevoir un étudiant pour lui parler de son métier et lui faire découvrir<span class="chpsObli">&nbsp;***</span></label></div> + <div class="clearfix"></div> + </div> + <div class="formPro"> + <div class="col-xs-1 col-sm-offset-4 col-sm-1 col-md-offset-3 col-md-1 text-right marginForm"><input type="checkbox" name="faireEquipe" id="faireEquipe"></div><div class="col-xs-11 col-sm-7 col-md-8 marginForm"><label for="faireEquipe" >Je souhaite faire partie d'un trinôme<span class="chpsObli">&nbsp;***</span></label></div> + <div class="clearfix"></div> + </div> + <div class="formPro"> + <div class="col-xs-1 col-sm-offset-4 col-sm-1 col-md-offset-3 col-md-1 text-right marginForm"><input type="checkbox" name="recevoirStage" id="recevoirStage"></div><div class="col-xs-11 col-sm-7 col-md-8 marginForm"><label for="recevoirStage" >Je souhaite accueillir un jeune (3<sup>ième</sup>) pour son stage de découverte<span class="chpsObli">&nbsp;***</span></label></div> + <div class="clearfix"></div> + </div> + <div class="formPro"> + <label for="etablissement">Etablissement<span class="chpsObli">&nbsp;*</span></label> + </div> + <div class="formPro"> + <input type="text" name="etablissement"> + </div> + + <div class="formPro"> + <label for="siret">SIRET<span class="chpsObli">&nbsp;*</span></label> + </div> + <div class="formPro"> + <input type="text" name="siret"> + </div> + <div class="formPro"> + <label for="nom">Nom<span class="chpsObli">&nbsp;*</span></label> + </div> + <div class="formPro"> + <input type="text" name="nom"> + </div> + <div class="formPro"> + <label for="nom">Prénom<span class="chpsObli">&nbsp;*</span></label> + </div> + <div class="formPro"> + <input type="text" name="prenom"> + </div> + <div class="formPro"> + <label for="adr1">Adresse 1<span class="chpsObli">&nbsp;*</span></label> + </div> + <div class="formPro"> + <input type="text" name="adr1"> + </div> + <div class="formPro"> + <label for="adr2">Adresse 2</label> + </div> + <div class="formPro"> + <input type="text" name="adr2"> + </div> + <div class="formPro"> + <label for="cp">Code Postal<span class="chpsObli">&nbsp;*</span></label> + </div> + <div class="formPro"> + <input type="text" name="cp"> + </div> + <div class="formPro"> + <label for="ville">Ville<span class="chpsObli">&nbsp;*</span></label> + </div> + <div class="formPro"> + <input type="text" name="ville"> + </div> + <div class="formPro"> + <label for="Mobile">Mobile<span class="chpsObli">&nbsp;**</span></label> + </div> + <div class="formPro"> + <input type="text" name="mobile"> + </div> + <div class="formPro"> + <label for="fixe">Fixe<span class="chpsObli">&nbsp;**</span></label> + </div> + <div class="formPro"> + <input type="text" name="fixe"> + </div> + <div class="formPro"> + <label for="email">E-mail<span class="chpsObli">&nbsp;*</span></label> + </div> + <div class="formPro"> + <input type="text" name="email"> + </div> + <div class="formPro"> + <label for="comment">Commentaire</label> + </div> + <div class="formPro"> + <textarea type="text" name="comment"></textarea> + </div> + <div class="g-recaptcha" style="max-width: 300px; margin: 5px auto 30px auto;" data-sitekey="6LfPdIIUAAAAAM-02tRGPn0Xz4owkDxXJHIWUGKM"></div> + + <div class="formPro" style="padding-top:16px;"> + <input type="button" name="validate-inscription" value="Envoyer" onClick="valid();" class="btn btn-default"> + </div> + <div class="formPro"> + <p class="mentionObli"><span class="chpsObli">*&nbsp;</span> Champs requis.</p> + </div> + <div class="formPro"> + <p class="mentionObli"><span class="chpsObli">**</span> Au moins une des deux informations est requise.</p> + </div> + <div class="formPro"> + <p class="mentionObli"><span class="chpsObli">***</span> Au moins une des trois informations est requise.</p> + </div> + <div class="formPro"> + <p class="mentionObli">Votre numéro de téléphone et votre e-mail ne seront pas affichés sur le site. Les jeunes prendront contact avec vous via un formulaire que vous recevrez par mail.</p> + </div> + + </form> + </div> + </div><!-- RESEAUX SOCIAUX --> + <?php include('include/footer.php');?> + </body> +</html> \ No newline at end of file diff --git a/site/jeunes.php b/site/jeunes.php new file mode 100644 index 0000000..b57e8c9 --- /dev/null +++ b/site/jeunes.php @@ -0,0 +1,222 @@ +<?php +include('config/config.inc.php'); +include('include/agenda.inc.php'); +include('config/lib.inc.php'); +$maCleDeCryptage = getCleDeCryptage(); + +$tabDate=array(); +foreach($arrWeek as $kw=>$vw){ + foreach($vw as $vDay){ + if(!empty($vDay)){ + $tabDate[]=$vDay; + } + } +} + +$query="select * from inscriptions_pro where statut=1 and (recevoirJeunes=1 or recevoirStage=1) AND id_pro <> 75"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); + +$info=array(); + + +foreach($data as $cle=>$val){ + $info[$val['id_pro']]['eta']=decrypter($maCleDeCryptage,$val['etablissement_pro']); + $info[$val['id_pro']]['nom_pro']=decrypter($maCleDeCryptage,$val['nom_pro']); + $info[$val['id_pro']]['prenom_pro']=decrypter($maCleDeCryptage,$val['prenom_pro']); + $info[$val['id_pro']]['adr1_pro']=decrypter($maCleDeCryptage,$val['adr1_pro']); + $info[$val['id_pro']]['adr2_pro']=decrypter($maCleDeCryptage,$val['adr2_pro']); + $info[$val['id_pro']]['cp_pro']=decrypter($maCleDeCryptage,$val['cp_pro']); + $info[$val['id_pro']]['ville_pro']=decrypter($maCleDeCryptage,$val['ville_pro']); + if($val['recevoirJeunes']==1) $info[$val['id_pro']]['recevoirJeunes']="<br />Accepte de recevoir un étudiant pour lui parler de son métier et lui faire découvrir."; + else $info[$val['id_pro']]['recevoirJeunes']=""; + if($val['recevoirStage']==1) $info[$val['id_pro']]['recevoirStage']="<br />Accepte d'accueillir un jeune pour son stage de découverte."; + else $info[$val['id_pro']]['recevoirStage']=""; + $info[$val['id_pro']]['lat']=$val['lat_pro']; + $info[$val['id_pro']]['lon']=$val['lon_pro']; +} +?> +<!doctype html> +<html> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="stylesheet" href="css/bootstrap.min.css"> + <link rel="stylesheet" href="css/style.css"> + <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyAD8dr4sS_iFafcU_AowzS9p9B306iQEZQ"></script> + <script src="js/jquery-3.2.1.min.js"></script> + <script type="text/javascript" src="js/fonctions.js"></script> + <script src="js/bootstrap.min.js"></script> + <title>Deciday!</title> + <script> + jQuery(document).ready(function(){ + + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + }); + </script> + <style> + .lienCarte{color: #87318b;font-family: "Myriad Pro Bold";} + .lienCarte:hover{ text-decoration: none;color: #87318b;} + .filtreCarte{ text-align: center;font-size: 16px;color: #87318b;text-align: center;font-family: "Myriad Pro Bold";text-transform: uppercase; padding:16px 0 10px 0;} + .filtreCarte select{ color:#000; margin-top:6px;} + </style> + <script> + function contact_eta(a){ + document.frmCE.ncfa.value=a; + document.frmCE.submit(); + } + function pinSymbol(color) { + return { + path: 'M 0,0 C -2,-20 -10,-22 -10,-30 A 10,10 0 1,1 10,-30 C 10,-22 2,-20 0,0 z M -2,-30 a 2,2 0 1,1 4,0 2,2 0 1,1 -4,0', + fillColor: color, + fillOpacity: 1, + strokeColor: '#000', + strokeWeight: 2, + scale: 1, + }; + } + //#FFA64D on + //#CACAD9 off + function initialisation(){ + var optionsCarte = { + zoom: 5, + center: new google.maps.LatLng(46.52863469527167,2.43896484375) + } + maCarte = new google.maps.Map(document.getElementById("divCarte"), optionsCarte); + <?php + $color="#FFA64D"; + foreach($info as $cle=>$val){ + $text=""; + $text.=$val['eta']."<br />".$val['nom_pro']." ".$val['prenom_pro']."<br />".$val['adr1_pro']."<br />".$val['adr2_pro']."<br />".$val['cp_pro']."<br />".$val['ville_pro']."<br />"; + if($val['recevoirJeunes']!='') $text.=$val['recevoirJeunes']; + if($val['recevoirStage']!='') $text.=$val['recevoirStage']; + $text.="<br /><br /><a href=\"contact-pro.php?nProJ=".$cle."\" class=\"lienCarte\">Contacter le professionnel</a>"; + echo "var optionsMarqueur = { + position: new google.maps.LatLng(".$val['lat'].",".$val['lon']."), + map: maCarte, + title:'".addslashes($val['eta'])."', + icon: pinSymbol(\"".$color."\"), + }; + var marqueur".$cle." = new google.maps.Marker(optionsMarqueur); + var infowindow".$cle." = new google.maps.InfoWindow({ + content: '' + }); + marqueur".$cle.".addListener('click', function() { + infowindow".$cle.".setContent('".addslashes($text)."'); + infowindow".$cle.".open(maCarte, this); + }); + "; + + } + ?> + + } + $(document).ready(function() { + initialisation(); + }); + </script> + + </head> + <body> + <?php include('include/header.php');?> + <div class="container-fluid" style="margin-top: -20px;"> + <div class="row" style="background-color: #5B2050;"> + <a href="#" style="cursor:auto"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad"> + <img class="visible-sm visible-md visible-lg img-responsive imageBandeau" src="img/slide/deciday_decouvrez_deciday_slider.jpg" alt="Métiers Hotel-Resto"> + <img class="hidden-lg hidden-md hidden-sm img-responsive imageBandeau" src="img/slide/slider_new_resp.jpg" alt="Métiers Hotel-Resto"> + </div> + </a> + </div> + </div> + <div class="container contenuTxt"><br> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">17 janvier 2019 : une journée nationale pour découvrir des métiers et se préparer un avenir </div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-2 txtChapeau"> + <p>Vous vous posez des questions sur votre orientation professionnelle ? <br /> +Pourquoi pas les métiers de l’hôtellerie, de la restauration, des loisirs et des activités du tourisme ?<br /><br /> +</p> </div> + + + + </div> + + <div class="row containerTpsForts"> + <div class="container "> + <div class="col-lg-1 col-md-1 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-10 col-md-10 col-sm-10 col-xs-12 titreContenuPage"> + La variété de ces métiers de passion, créatifs et aux fortes valeurs humaines offrent de véritables perspectives de carrière et donc d’évolution tant en France qu'à l’étranger. + </div> + <div class="col-lg-1 col-md-1 col-sm-1 hidden-xs"> + </div> + + <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12 tpsForts tpsForts1"> + <div class="titreTpsForts">Deciday! est un événement national qui se déroule tous les ans le 3ème jeudi de janvier. Des professionnels, des apprentis/lycéens et des enseignants viendront dans de multiples lycées et collèges afin de présenter l’ensemble des métiers et formations du secteur, et partager leur expérience.</div> + </div> + <div class="col-lg-1 col-md-1 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-3 col-md-3 col-sm-3 col-xs-12 tpsForts tpsForts2"> + <div class="titreTpsForts">Si votre établissement scolaire n’est pas concerné, vous pourrez toujours rendre visite à un professionnel sur son lieu de travail. C’est l’occasion rêvée pour vous faire une réelle idée des métiers… </div> + </div> + <div class="col-lg-1 col-md-1 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-3 col-md-3 col-sm-3 col-xs-12 tpsForts tpsForts3"> + <div class="titreTpsForts">Mieux encore, si vous êtes en troisième, pourquoi ne pas faire votre stage de découverte dans un restaurant, un hôtel ou un centre de thalassothérapie… ?</div> + </div> + </div> + </div> + + + <div class="container " style="padding-top:20px; margin-top:8px; "> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage"> + Rencontrer un professionnel vous intéresse ? + </div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + </div> + <div class="container"> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-2 txtIntro"> + Retrouvez sur cette carte les professionnels qui sont prêts à vous accueillir.<br><br> + </div> + </div> +<div class="container contenuCarte"> + <div id="divCarte" style='height:500px;'></div><br /><br /> + </div> + <div class="container " style="padding-top:20px; margin-top:8px; "> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage"> + En savoir plus : + </div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + + </div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-1 txtIntro contenuTxt"> + <p>Rendez-vous sur <a href="http://www.metiers-hotel-resto.fr/" target="_blank" class="lienContent">www.metiers-hotel-resto.fr</a> pour découvrir :</p> + <ul class="liste"> + <li><span>des fiches détaillées sur tous les métiers du secteur</span></li> + <li><span>les différentes formations du CAP au master 2</span></li> + <li><span>des témoignages vidéo de professionnels</span></li> + </ul> + <p>et suivez-nous sur les réseaux sociaux : <a href="https://www.facebook.com/metiers.hotel.resto/" target="_blank"><img src="images/facebook.jpg" alt="Facebook" style="width: 20px; height:auto;" /></a>&nbsp;<a href="https://www.youtube.com/channel/UCY_U2kN3Wzg5HY_d7bOlOGg" target="_blank"><img src="images/youtube.jpg" alt="Youtube" style="width: 20px; height:auto;" /></a></p> + </div> + <div class="clearfix"></div> + + </div><!-- RESEAUX SOCIAUX --> + <?php include('include/footer.php');?> + </body> +</html> \ No newline at end of file diff --git a/site/js/_notes/dwsync.xml b/site/js/_notes/dwsync.xml new file mode 100644 index 0000000..cc4e71e --- /dev/null +++ b/site/js/_notes/dwsync.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="bootstrap.min.js" server="62.244.88.21/deciday_18/" local="131139284100000000" remote="131823362400000000" Dst="2" /> +<file name="jquery-3.2.1.min.js" server="62.244.88.21/deciday_18/" local="131541740558067130" remote="131823362400000000" Dst="2" /> +<file name="fonctions.js" server="62.244.88.21/deciday_18/" local="131033756771295803" remote="131823481800000000" Dst="2" /> +<file name="jquery.tablesorter.js" server="62.244.88.21/deciday/" local="131861595883703511" remote="131861560200000000" Dst="1" /> +<file name="wysiwyg.js" server="62.244.88.21/deciday/" local="131877911462470578" remote="131877875400000000" Dst="1" /> +<file name="fonctions.js" server="62.244.88.21/deciday/" local="131890103615444950" remote="131890067400000000" Dst="1" /> +<file name="jquery-3.2.1.min.js" server="62.244.88.21/deciday/" local="131919455427768292" remote="131823434400000000" Dst="1" /> +<file name="bootstrap.min.js" server="62.244.88.21/deciday/" local="131919455429822486" remote="131823434400000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/js/bootstrap.min.js b/site/js/bootstrap.min.js new file mode 100644 index 0000000..9bcd2fc --- /dev/null +++ b/site/js/bootstrap.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under the MIT license + */ +if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1||b[0]>3)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4")}(jQuery),+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){if(a(b.target).is(this))return b.handleObj.handler.apply(this,arguments)}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.7",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a("#"===f?[]:f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.7",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c).prop(c,!0)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c).prop(c,!1))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")?(c.prop("checked")&&(a=!1),b.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==c.prop("type")&&(c.prop("checked")!==this.$element.hasClass("active")&&(a=!1),this.$element.toggleClass("active")),c.prop("checked",this.$element.hasClass("active")),a&&c.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target).closest(".btn");b.call(d,"toggle"),a(c.target).is('input[type="radio"], input[type="checkbox"]')||(c.preventDefault(),d.is("input,button")?d.trigger("focus"):d.find("input:visible,button:visible").first().trigger("focus"))}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.7",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(a>this.$items.length-1||a<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){if(!this.sliding)return this.slide("next")},c.prototype.prev=function(){if(!this.sliding)return this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.7",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass("open")&&(c&&"click"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event("hide.bs.dropdown",f)),c.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger(a.Event("hidden.bs.dropdown",f)))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.7",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=b(e),g=f.hasClass("open");if(c(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click",c);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus").attr("aria-expanded","true"),f.toggleClass("open").trigger(a.Event("shown.bs.dropdown",h))}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(".disabled, :disabled")){var e=b(d),g=e.hasClass("open");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.disabled):visible a",i=e.find(".dropdown-menu"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&j<i.length-1&&j++,~j||(j=0),i.eq(j).trigger("focus")}}}};var h=a.fn.dropdown;a.fn.dropdown=d,a.fn.dropdown.Constructor=g,a.fn.dropdown.noConflict=function(){return a.fn.dropdown=h,this},a(document).on("click.bs.dropdown.data-api",c).on("click.bs.dropdown.data-api",".dropdown form",function(a){a.stopPropagation()}).on("click.bs.dropdown.data-api",f,g.prototype.toggle).on("keydown.bs.dropdown.data-api",f,g.prototype.keydown).on("keydown.bs.dropdown.data-api",".dropdown-menu",g.prototype.keydown)}(jQuery),+function(a){"use strict";function b(b,d){return this.each(function(){var e=a(this),f=e.data("bs.modal"),g=a.extend({},c.DEFAULTS,e.data(),"object"==typeof b&&b);f||e.data("bs.modal",f=new c(this,g)),"string"==typeof b?f[b](d):g.show&&f.show(d)})}var c=function(b,c){this.options=c,this.$body=a(document.body),this.$element=a(b),this.$dialog=this.$element.find(".modal-dialog"),this.$backdrop=null,this.isShown=null,this.originalBodyPad=null,this.scrollbarWidth=0,this.ignoreBackdropClick=!1,this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,a.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))};c.VERSION="3.3.7",c.TRANSITION_DURATION=300,c.BACKDROP_TRANSITION_DURATION=150,c.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},c.prototype.toggle=function(a){return this.isShown?this.hide():this.show(a)},c.prototype.show=function(b){var d=this,e=a.Event("show.bs.modal",{relatedTarget:b});this.$element.trigger(e),this.isShown||e.isDefaultPrevented()||(this.isShown=!0,this.checkScrollbar(),this.setScrollbar(),this.$body.addClass("modal-open"),this.escape(),this.resize(),this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',a.proxy(this.hide,this)),this.$dialog.on("mousedown.dismiss.bs.modal",function(){d.$element.one("mouseup.dismiss.bs.modal",function(b){a(b.target).is(d.$element)&&(d.ignoreBackdropClick=!0)})}),this.backdrop(function(){var e=a.support.transition&&d.$element.hasClass("fade");d.$element.parent().length||d.$element.appendTo(d.$body),d.$element.show().scrollTop(0),d.adjustDialog(),e&&d.$element[0].offsetWidth,d.$element.addClass("in"),d.enforceFocus();var f=a.Event("shown.bs.modal",{relatedTarget:b});e?d.$dialog.one("bsTransitionEnd",function(){d.$element.trigger("focus").trigger(f)}).emulateTransitionEnd(c.TRANSITION_DURATION):d.$element.trigger("focus").trigger(f)}))},c.prototype.hide=function(b){b&&b.preventDefault(),b=a.Event("hide.bs.modal"),this.$element.trigger(b),this.isShown&&!b.isDefaultPrevented()&&(this.isShown=!1,this.escape(),this.resize(),a(document).off("focusin.bs.modal"),this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"),this.$dialog.off("mousedown.dismiss.bs.modal"),a.support.transition&&this.$element.hasClass("fade")?this.$element.one("bsTransitionEnd",a.proxy(this.hideModal,this)).emulateTransitionEnd(c.TRANSITION_DURATION):this.hideModal())},c.prototype.enforceFocus=function(){a(document).off("focusin.bs.modal").on("focusin.bs.modal",a.proxy(function(a){document===a.target||this.$element[0]===a.target||this.$element.has(a.target).length||this.$element.trigger("focus")},this))},c.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keydown.dismiss.bs.modal",a.proxy(function(a){27==a.which&&this.hide()},this)):this.isShown||this.$element.off("keydown.dismiss.bs.modal")},c.prototype.resize=function(){this.isShown?a(window).on("resize.bs.modal",a.proxy(this.handleUpdate,this)):a(window).off("resize.bs.modal")},c.prototype.hideModal=function(){var a=this;this.$element.hide(),this.backdrop(function(){a.$body.removeClass("modal-open"),a.resetAdjustments(),a.resetScrollbar(),a.$element.trigger("hidden.bs.modal")})},c.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},c.prototype.backdrop=function(b){var d=this,e=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var f=a.support.transition&&e;if(this.$backdrop=a(document.createElement("div")).addClass("modal-backdrop "+e).appendTo(this.$body),this.$element.on("click.dismiss.bs.modal",a.proxy(function(a){return this.ignoreBackdropClick?void(this.ignoreBackdropClick=!1):void(a.target===a.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus():this.hide()))},this)),f&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!b)return;f?this.$backdrop.one("bsTransitionEnd",b).emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION):b()}else if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");var g=function(){d.removeBackdrop(),b&&b()};a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one("bsTransitionEnd",g).emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION):g()}else b&&b()},c.prototype.handleUpdate=function(){this.adjustDialog()},c.prototype.adjustDialog=function(){var a=this.$element[0].scrollHeight>document.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:""})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth<a,this.scrollbarWidth=this.measureScrollbar()},c.prototype.setScrollbar=function(){var a=parseInt(this.$body.css("padding-right")||0,10);this.originalBodyPad=document.body.style.paddingRight||"",this.bodyIsOverflowing&&this.$body.css("padding-right",a+this.scrollbarWidth)},c.prototype.resetScrollbar=function(){this.$body.css("padding-right",this.originalBodyPad)},c.prototype.measureScrollbar=function(){var a=document.createElement("div");a.className="modal-scrollbar-measure",this.$body.append(a);var b=a.offsetWidth-a.clientWidth;return this.$body[0].removeChild(a),b};var d=a.fn.modal;a.fn.modal=b,a.fn.modal.Constructor=c,a.fn.modal.noConflict=function(){return a.fn.modal=d,this},a(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(c){var d=a(this),e=d.attr("href"),f=a(d.attr("data-target")||e&&e.replace(/.*(?=#[^\s]+$)/,"")),g=f.data("bs.modal")?"toggle":a.extend({remote:!/#/.test(e)&&e},f.data(),d.data());d.is("a")&&c.preventDefault(),f.one("show.bs.modal",function(a){a.isDefaultPrevented()||f.one("hidden.bs.modal",function(){d.is(":visible")&&d.trigger("focus")})}),b.call(f,g,this)})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.tooltip"),f="object"==typeof b&&b;!e&&/destroy|hide/.test(b)||(e||d.data("bs.tooltip",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.inState=null,this.init("tooltip",a,b)};c.VERSION="3.3.7",c.TRANSITION_DURATION=150,c.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusin"==b.type?"focus":"hover"]=!0),c.tip().hasClass("in")||"in"==c.hoverState?void(c.hoverState="in"):(clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);if(c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusout"==b.type?"focus":"hover"]=!1),!c.isInStateTrue())return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide()},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h="bottom"==h&&k.bottom+m>o.bottom?"top":"top"==h&&k.top-m<o.top?"bottom":"right"==h&&k.right+l>o.width?"left":"left"==h&&k.left-l<o.left?"right":h,f.removeClass(n).addClass(h)}var p=this.getCalculatedOffset(h,k,l,m);this.applyPlacement(p,h);var q=function(){var a=e.hoverState;e.$element.trigger("shown.bs."+e.type),e.hoverState=null,"out"==a&&e.leave(e)};a.support.transition&&this.$tip.hasClass("fade")?f.one("bsTransitionEnd",q).emulateTransitionEnd(c.TRANSITION_DURATION):q()}},c.prototype.applyPlacement=function(b,c){var d=this.tip(),e=d[0].offsetWidth,f=d[0].offsetHeight,g=parseInt(d.css("margin-top"),10),h=parseInt(d.css("margin-left"),10);isNaN(g)&&(g=0),isNaN(h)&&(h=0),b.top+=g,b.left+=h,a.offset.setOffset(d[0],a.extend({using:function(a){d.css({top:Math.round(a.top),left:Math.round(a.left)})}},b),0),d.addClass("in");var i=d[0].offsetWidth,j=d[0].offsetHeight;"top"==c&&j!=f&&(b.top=b.top+f-j);var k=this.getViewportAdjustedDelta(c,b,i,j);k.left?b.left+=k.left:b.top+=k.top;var l=/top|bottom/.test(c),m=l?2*k.left-e+i:2*k.top-f+j,n=l?"offsetWidth":"offsetHeight";d.offset(b),this.replaceArrow(m,d[0][n],l)},c.prototype.replaceArrow=function(a,b,c){this.arrow().css(c?"left":"top",50*(1-a/b)+"%").css(c?"top":"left","")},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle();a.find(".tooltip-inner")[this.options.html?"html":"text"](b),a.removeClass("fade in top bottom left right")},c.prototype.hide=function(b){function d(){"in"!=e.hoverState&&f.detach(),e.$element&&e.$element.removeAttr("aria-describedby").trigger("hidden.bs."+e.type),b&&b()}var e=this,f=a(this.$tip),g=a.Event("hide.bs."+this.type);if(this.$element.trigger(g),!g.isDefaultPrevented())return f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one("bsTransitionEnd",d).emulateTransitionEnd(c.TRANSITION_DURATION):d(),this.hoverState=null,this},c.prototype.fixTitle=function(){var a=this.$element;(a.attr("title")||"string"!=typeof a.attr("data-original-title"))&&a.attr("data-original-title",a.attr("title")||"").attr("title","")},c.prototype.hasContent=function(){return this.getTitle()},c.prototype.getPosition=function(b){b=b||this.$element;var c=b[0],d="BODY"==c.tagName,e=c.getBoundingClientRect();null==e.width&&(e=a.extend({},e,{width:e.right-e.left,height:e.bottom-e.top}));var f=window.SVGElement&&c instanceof window.SVGElement,g=d?{top:0,left:0}:f?null:b.offset(),h={scroll:d?document.documentElement.scrollTop||document.body.scrollTop:b.scrollTop()},i=d?{width:a(window).width(),height:a(window).height()}:null;return a.extend({},e,h,i,g)},c.prototype.getCalculatedOffset=function(a,b,c,d){return"bottom"==a?{top:b.top+b.height,left:b.left+b.width/2-c/2}:"top"==a?{top:b.top-d,left:b.left+b.width/2-c/2}:"left"==a?{top:b.top+b.height/2-d/2,left:b.left-c}:{top:b.top+b.height/2-d/2,left:b.left+b.width}},c.prototype.getViewportAdjustedDelta=function(a,b,c,d){var e={top:0,left:0};if(!this.$viewport)return e;var f=this.options.viewport&&this.options.viewport.padding||0,g=this.getPosition(this.$viewport);if(/right|left/.test(a)){var h=b.top-f-g.scroll,i=b.top+f-g.scroll+d;h<g.top?e.top=g.top-h:i>g.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;j<g.left?e.left=g.left-j:k>g.right&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null,a.$element=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;!e&&/destroy|hide/.test(b)||(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.7",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.3.7",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b<e[0])return this.activeTarget=null,this.clear();for(a=e.length;a--;)g!=f[a]&&b>=e[a]&&(void 0===e[a+1]||b<e[a+1])&&this.activate(f[a])},b.prototype.activate=function(b){ +this.activeTarget=b,this.clear();var c=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',d=a(c).parents("li").addClass("active");d.parent(".dropdown-menu").length&&(d=d.closest("li.dropdown").addClass("active")),d.trigger("activate.bs.scrollspy")},b.prototype.clear=function(){a(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var d=a.fn.scrollspy;a.fn.scrollspy=c,a.fn.scrollspy.Constructor=b,a.fn.scrollspy.noConflict=function(){return a.fn.scrollspy=d,this},a(window).on("load.bs.scrollspy.data-api",function(){a('[data-spy="scroll"]').each(function(){var b=a(this);c.call(b,b.data())})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.tab");e||d.data("bs.tab",e=new c(this)),"string"==typeof b&&e[b]()})}var c=function(b){this.element=a(b)};c.VERSION="3.3.7",c.TRANSITION_DURATION=150,c.prototype.show=function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.data("target");if(d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),!b.parent("li").hasClass("active")){var e=c.find(".active:last a"),f=a.Event("hide.bs.tab",{relatedTarget:b[0]}),g=a.Event("show.bs.tab",{relatedTarget:e[0]});if(e.trigger(f),b.trigger(g),!g.isDefaultPrevented()&&!f.isDefaultPrevented()){var h=a(d);this.activate(b.closest("li"),c),this.activate(h,h.parent(),function(){e.trigger({type:"hidden.bs.tab",relatedTarget:b[0]}),b.trigger({type:"shown.bs.tab",relatedTarget:e[0]})})}}},c.prototype.activate=function(b,d,e){function f(){g.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.7",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return e<c&&"top";if("bottom"==this.affixed)return null!=c?!(e+this.unpin<=f.top)&&"bottom":!(e+g<=a-d)&&"bottom";var h=null==this.affixed,i=h?e:f.top,j=h?g:b;return null!=c&&e<=c?"top":null!=d&&i+j>=a-d&&"bottom"},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery); \ No newline at end of file diff --git a/site/js/fonctions.js b/site/js/fonctions.js new file mode 100644 index 0000000..9e56fd5 --- /dev/null +++ b/site/js/fonctions.js @@ -0,0 +1,660 @@ +// JavaScript Document +<!-- + +/*---------------CONTROLES DE FORMULAIRE----------------*/ + + //Modifie la casse -> maj + function ucfirst(string) { + return string.substring(0, 1).toUpperCase() + string.substring(1).toLowerCase(); + } + + //Modifie la casse pour le premier caractre + function strtoupper(string) { + return string.toUpperCase(); + } + + //Date valide ? avec gestion des anne bissextiles + function checkDateValide(a,m,j){ + m-=1; + d=new Date(a,m,j); + var rep= (d.getFullYear()!=a || d.getMonth()!=m) ? "invalide" : "valide"; + if(rep=="invalide") return false; else return true; + } + + /* Jours fris */ + /*var Ferie=new Array("01/01","01/05","08/05","14/07","15/08","01/11","11/11","25/12"); + var DernierJour = new Array("31", "28", "31", "30", "31", "30", "31", "31", "30", "31", "30", "31"); + + function Compare_Dates(valeur_date1, valeur_date2){ + var tabDate1 = valeur_date1.split('/'); + var maDate1 = tabDate1[1]+"/"+tabDate1[0]+"/"+tabDate1[2]; + var datTest_Date1 = new Date(maDate1 + " 00:00:00"); + + var tabDate1 = valeur_date2.split('/'); + var maDate2 = tabDate1[1]+"/"+tabDate1[0]+"/"+tabDate1[2]; + var datTest_Date2 = new Date(maDate2 + " 00:00:00"); + + if (datTest_Date1 > datTest_Date2) + { + return true; + } + else{ + return false; + } + } + + function isWeekEnd(D) { + if(D.getDay() == 0 || D.getDay()==6){ + return true; + } + else{ + return false; + } + } + + function isPaques(an){ + + + var b=an-1900; + var c=an%19; + var d=Math.floor((7*c+1)/19); + var e=(11*c+4-d)%29; + var f=Math.floor(b/4); + var g=(b+f+31-e)%7; + var date=25-e-g; + var mois; + + if (date>0) {mois = 4} + else {date=31+date; mois=3}; + date = ( (date<10)? '0'+date:date); + Ferie.push( ((date<10)? '0'+date:date)+'/'+((mois<10)?'0'+mois:mois)); // Dimanche de Paques + + date+=1; + if ( (date>31) && (mois=3)) {date=1;mois+=1} + Ferie.push(((date<10)? '0'+date:date)+'/'+((mois<10)?'0'+mois:mois)); //Lundi de Paques + + date+=38; + while (date>31) {var tt=0; date-=DernierJour[mois-1+tt]; tt++ ; mois+=1} + Ferie.push(((date<10)? '0'+date:date)+'/'+((mois<10)?'0'+mois:mois)); // Jeudi de l'ascencion + + date+=10; + while (date>31) {var tt=0; date-=DernierJour[mois-1+tt]; mois+=1} + Ferie.push(((date<10)? '0'+date:date)+'/'+((mois<10)?'0'+mois:mois)); // Pentecote + + } + + function isFerie(j,m) { + var i=0 + for(var i in Ferie) { + if ( test=(((j<10)?'0'+j:j)+'/'+((m<10)?'0'+m:m)) == Ferie[i++]) return true; + } + return false; + } + + function checkDateFree(mydate){ + var d=eval(mydate).value; + var separateur="/"; // separateur entre jour/mois/annee + var j=(d.substring(0,2)); + var m=(d.substring(3,5)); + var a=(d.substring(6)); + + + var tsdate = new Date(); + tsdate.setFullYear(a); + tsdate.setMonth(m); + tsdate.setDate(j); + tsdate.setHours(0); + tsdate.setMinutes(0); + tsdate.setSeconds(0); + tsdate.setMilliseconds(0); + + + if(isWeekEnd(tsdate.getTime())){ + alert("La date saisie est un jour de week-end"); + return false; + } + isPaques(a); + if(!isFerie(j,m)){ + alert("Le jour saisi est un jour feri"); + return false; + } + }*/ + + + + + function checkDate(df) { + // Cette fonction verifie le format JJ/MM/AAAA saisi et la validite de la date. + // Le separateur est defini dans la variable separateur + var d=eval(df).value; + var amin=1999; // annee mini + var amax=2070; // annee maxi + var separateur="/"; // separateur entre jour/mois/annee + var j=(d.substring(0,2)); + var m=(d.substring(3,5)); + var a=(d.substring(6)); + var ok=true; + var tmpMsg="\nLa date doit etre au format jj\/mm\/aaaa."; + if ( ((isNaN(j))||(j<1)||(j>31)) && (ok==true) ) { + alert("Le jour n'est pas correct."+tmpMsg); eval(df).focus();ok=false; + } + if ( ((isNaN(m))||(m<1)||(m>12)) && (ok==true) ) { + alert("Le mois n'est pas correct."+tmpMsg); eval(df).focus();ok=false; + } + if ( ((isNaN(a))||(a<amin)||(a>amax)) && (ok==true) ) { + alert("L'anne n'est pas correcte."+tmpMsg); ok=false;eval(df).focus(); + } + if ( ((d.substring(2,3)!=separateur)||(d.substring(5,6)!=separateur)) && (ok==true) ) { + alert("Les sparateurs doivent tre des "+separateur+tmpMsg);eval(df).focus(); ok=false; + } + if (ok==true) { + var d2=new Date(a,m-1,j); + j2=d2.getDate(); + m2=d2.getMonth()+1; + a2=d2.getFullYear(); + if (a2<=100) {a2=1900+a2} + if ( (j!=j2)||(m!=m2)||(a!=a2) ) { + alert("La date "+d+" n'existe pas !"); + eval(df).focus(); + ok=false; + } + } + return ok; + } + + function checkHour(hour,msg,obli) { + + + var myh = trim(eval(hour).value); + + if((myh.length==0)&&(obli==0)) return true; //Si champ non obligatoire + + var i=0; + var telF=""; + + myh=trim(myh); + + + + var verif=""; + + verif = /^[0-9]{2}:[0-9]{2}$/ //heure au format hh:mm + + if (verif.exec(myh) == null){ + alert(msg); + eval(hour).focus(); + eval(hour).select(); + return false; + }else{ + + var heure = myh.substring(0,2); + var minute = myh.substring(3,5); + + if(heure<0 || heure>23){ + alert('L\'heure est incorrecte'); + return false; + } + if(minute<0 || minute>59){ + alert('L\'heure est incorrecte'); + return false; + } + return true; + } + } + + /* + tel : champ de formulaire + type : Tlphone Fixe (F), Portable (P) ou les deux (T) + msg : 'telephone', 'portable', 'fax', etc... + obli : Saisie obligatoire(1) ou facultative (0) + */ + function checkFormTel(tel,type,msg,obli){ + var ntel = trim(eval(tel).value); + ntel = ntel.replace(/[^0-9]/gi,""); + + if((ntel.length==0)&&(obli==0)) return true; //Si champ non obligatoire + + var i=0; + var telF=""; + + if(ntel.length==10){ + while(i<10) { + telF=telF + ntel.substr(i, 2) + " "; + i=i+2; + } + } + + telF=trim(telF); + + var verif=""; + //0-25/56+23 8_4_4 + + switch (type){ + case "F" : + verif = /^0[1-5789]( [0-9]{2}){4}$/ //Num de tel fixe + break; + case "P" : + verif = /^0[6-7]( [0-9]{2}){4}$/ //Num de tel portable + break; + default : + verif = /^0[1-9]( [0-9]{2}){4}$/ //Num de tel fixe et portable + break; + } + + + if (verif.exec(telF) == null){ + alert(msg + " est incorrect"); + eval(tel).focus(); + eval(tel).select(); + return false; + }else{ + eval(tel).value=telF; + return true; + } + } + + + function trim(str) { + return str.replace(/(^\s*)|(\s*$)/g,"") + } + + //teste le champ de formulaire : doit contenir un nombre dcimal + function checkFormNombreDecimal(nb, libelle,obli){ + var re = /^\d+[.]?\d{0,2}$/; + var val=trim(eval(nb).value); + + val=val.replace(",","."); //Remplace les virgules par des points + eval(nb).value=val; + + /*if(val==""){ + val=0; + eval(nb).value=0; + } */ + if((val==0)&&(obli==0)) return true; //Si champ non obligatoire + if((val==0)&&(obli==1)) { + alert(libelle + " est obligatoire!"); + return false; //Si champ obligatoire + } + if(!re.test(val)){ + alert(libelle + " doit tre un nombre!"); + eval(nb).value=0; + eval(nb).focus(); + return false; + } + return true; + } + + + function checkFormNombre(nb, libelle,obli) { + var verif = /^[0-9]+$/ + var val = trim(eval(nb).value); + if(val==""){ + val=0; + eval(nb).value=0; + } + if((val==0)&&(obli==0)) return true; //Si champ non obligatoire + if((val==0)&&(obli==1)) { + alert(libelle + " est obligatoire!"); + return false; //Si champ obligatoire + } + if (verif.exec(val) == null){ + alert(libelle + " doit tre un nombre!"); + eval(nb).value=0; + eval(nb).focus(); + return false; + }else{ + return true; + } + } + + //function pour tester si c'est un nombre entier positif + function CheckNombreEntier(nb) { + var re = /^\d+$/; + if(!re.test(nb)) return false; + else return true; + } + + //function pour tester si c'est un nombre entier positif ou ngatif + function CheckNombreEntierNegPos(nb) { + var re = /^-?\d+$/; + if(!re.test(nb)) return false; + else return true; + } + + //teste le champ de formulaire : doit contenir un nombre entier positif + function checkFormNombreNegPos(nb, libelle){ + var re = /^-?\d+$/; + if(!re.test(eval(nb).value)){ + alert(libelle + " doit tre un nombre entier!"); + eval(nb).value=""; + eval(nb).focus(); + return false; + } + return true; + } + + //teste le champ de formulaire : non vide (nom de champ de formulaire, libelle + function checkFormTexte(txt, libelle,len){ + if(trim(eval(txt).value).length<len){ + alert(libelle + " est obligatoire!"); + eval(txt).focus(); + return false; + } + return true; + } + + //teste la validite d'une adresse mail (si obli = 1, la saisie est obligatoire sinon obli = 0) + function verifmail(email,obli){ + var verif = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]{2,}[.][a-zA-Z]{2,5}$/ + if((obli==1)||((obli==0) && (eval(email).value!=""))){ + if (verif.exec(eval(email).value) == null){ + alert("L'email est incorrect!"); + eval(email).focus(); + return false; + } + } + return true; + } + + /*La dclaration du formulaire cre un groupe de radio-boutons lis : Si le nom du groupe est os, alors le paramtres est document.form1.os. + La fonction javascript a comme paramtre le groupe des radio-boutons. + Une boucle parcourt la liste des boutons du groupe. On repre le bouton qui a la proprit checked true + et on affiche alors la valeur correspondante*/ + function testerRadio(radio,txt) { + var sel=false; + if(eval(radio).length==undefined){ //un seul radiobutton + if (eval(radio).checked) sel=true; + }else{ //plusieurs radiobutton + for (var i=0; i<eval(radio).length;i++) { + if (eval(radio)[i].checked) { + sel=true; + } + } + } + if(sel==false){ + alert(txt); + } + return sel; + } + + /* + function testerRadio(radio,txt) { + var sel=false; + for (var i=0; i<eval(radio).length;i++) { + if (eval(radio)[i].checked) { + sel=true; + } + } + if(sel==false){ + alert(txt); + } + return sel; + } + */ + + //Limiter le nombre de caractres en saisie dans un textarea + //maxlength_textarea('textarea_1','carac_reste_textarea_1',150); + function maxlength_textarea(id, crid, max){ + var txtarea = document.getElementById(id); + document.getElementById(crid).innerHTML=(max-txtarea.value.length); + txtarea.onkeypress=function(){eval('v_maxlength("'+id+'","'+crid+'",'+max+');')}; + txtarea.onblur=function(){eval('v_maxlength("'+id+'","'+crid+'",'+max+');')}; + txtarea.onkeyup=function(){eval('v_maxlength("'+id+'","'+crid+'",'+max+');')}; + txtarea.onkeydown=function(){eval('v_maxlength("'+id+'","'+crid+'",'+max+');')}; + } + function v_maxlength(id, crid, max){ + var txtarea = document.getElementById(id); + var crreste = document.getElementById(crid); + var len = txtarea.value.length; + if(len>max){ + txtarea.value=txtarea.value.substr(0,max); + } + len = txtarea.value.length; + crreste.innerHTML=max-len; + } + + //Calcul de la diffrence entrre 2 dates + function datediff(deb,fin){ //date de la forme 17/02/2012 + //En fait on passe l'anne, le mois - 1, le jour a la fonction Date() sinon a ne marche pas! + var n_debut = new Date (deb.substring(6,10),parseInt(deb.substring(3,5))-1,deb.substring(0,2)); + var n_fin = new Date (fin.substring(6,10),parseInt(fin.substring(3,5))-1,fin.substring(0,2)); + + var difference = n_fin - n_debut; //En millisecondes + var diff_jour = (difference / (86400000)); //1000*60*60*24 - jour en millisecondes + return Math.round(diff_jour); + } + + //Calcul de la diffrence entrre 2 dates + function heurediff(hdeb,mdeb,hfin,mfin){ //hmm (ex: 345 pour 3h45 ou 1645 pour 16h45) + + var n_debut = hdeb+mdeb; + var n_fin = hfin+mfin; + + var difference = n_fin - n_debut; //En millisecondes + //alert(n_fin + " - " + n_debut + " " + difference); + return Math.round(difference); + + + } + + + + + + + + + /**************************************************************************************************** + FONCTIONS AJAX + ****************************************************************************************************/ + + //Ajax + function file(fichier){ + + if(window.XMLHttpRequest) // FIREFOX + xhr_object = new XMLHttpRequest(); + else if(window.ActiveXObject) // IE + xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); + else + return(false); + xhr_object.open("GET", fichier, false); + xhr_object.send(null); + if(xhr_object.readyState == 4) return(xhr_object.responseText); + else return(false); + } + + + //AJAX Vrifie si une date est frie et si la date souhaite de rception respecte le dlai de prparation + function ajax_preparation4(date,nbrJrs){ + if(date != ''){ + if(texteRes = file('ajax_preparation4.php?mdate='+escape(date)+'&nbrJrs='+escape(nbrJrs))){ + if(texteRes==1){ + alert("- La date limite de validation de l\264action doit intervenir "+nbrJrs+" jours ouvr\351s avant la date souhait\351e de r\351ception.\r\n"); + }else if(texteRes==2){ + alert("- La date de r\351ception ne doit pas \352tre un dimanche ou un jour f\351ri\351.\r\n"); + }else if(texteRes==3){ + alert("- La date de r\351ception doit \352tre ult\351rieure \340 la date du jour et tenir compte du d\351lai de pr\351paration.\r\n"); //> a la date du jour + }else{ + //alert(texteRes); + $("#dDateRecept").slideDown(); + $("#sDateRecept").text(texteRes); + $("#p_dateLimit").val(texteRes); + return true; + } + /*if(texteRes == "ok"){ + return true; + }else{ + alert('La date doit correspondre \340 un jour ouvr\351 !'); + return false; + }*/ + } + } + } + + //AJAX Vrifie les plages de dates de l'action + function ajax_preparation5(dateDeb,dateFin){ + if(dateDeb != ''){ + if(texteRes = file('ajax_preparation4.php?mdate='+escape(date)+'&nbrJrs='+escape(nbrJrs))){ + if(texteRes==1){ + alert("- La date limite de validation de l\264action doit intervenir "+nbrJrs+" jours ouvr\351s avant la date souhait\351e de r\351ception.\r\n"); + }else if(texteRes==2){ + alert("- La date de r\351ception ne doit pas \352tre un dimanche ou un jour f\351ri\351.\r\n"); + }else if(texteRes==3){ + alert("- La date de r\351ception doit \352tre ult\351rieure \340 la date du jour et tenir compte du d\351lai de pr\351paration.\r\n"); //> a la date du jour + }else{ + //alert(texteRes); + $("#dDateRecept").slideDown(); + $("#sDateRecept").text(texteRes); + $("#p_dateLimit").val(texteRes); + return true; + } + /*if(texteRes == "ok"){ + return true; + }else{ + alert('La date doit correspondre \340 un jour ouvr\351 !'); + return false; + }*/ + } + } + } + + //AJAX Vrifie si une date est frie + function ajax_isDateFree(date){ + if(date != ''){ + if(texteRes = file('ajax_isDateFree.php?mdate='+escape(date))){ + if(texteRes == "ok"){ + return true; + }else{ + alert('La date doit correspondre \340 un jour ouvr\351 !'); + return false; + } + } + } + } + + //AJAX Accepte les conditions gnrales d'utilisation a la premiere connexion sur le site monop + function accept_cgu(iscgu){ + if(texteRes = file('ajax_acceptcgu.php?iscgu='+escape(iscgu))){ + if(texteRes == "ok"){ + //alert(texteRes); + return true; + }else{ + return false; + } + } + } + + //AJAX Accepte les conditions gnrales d'utilisation a la premiere connexion sur le site monop + function ajax_preparation1(){ + if(texteRes = file('ajax_preparation1.php?liba='+escape(document.frmPrepa1.p_nomAction.value))){ + if(texteRes == "ok"){ + //alert(texteRes); + return true; + }else{ + //alert(texteRes); + alert('Ce nom d\'action a dj\340 t utilis par votre concession.\nMerci de le modifier !'); + return false; + } + } + } + + + /* + //AJAX Vrifie l'existence du login pour les utilisateurs + function checkLoginUserExists(login,oldlogin){ //Teste si le login existe (avec oldlogin en modif) + if(login != ''){ + if(texteRes = file('verif.php?login='+escape(login)+'&oldlogin='+escape(oldlogin))){ + if(texteRes == "pasok"){ + alert("Attention ! \nCe login est dja utilis."); + return false; + }else{ + return true; + } + } + } + */ + + /* Function in_array */ + Array.prototype.inArray = function(p_val) { + return (this.indexOf(p_val) > -1); + } + + /* IndexOf ne fonctionne pas sous ie7 */ + Array.prototype.indexOf = function(obj, start) { + for (var i = (start || 0), j = this.length; i < j; i++) { + if (this[i] === obj) { return i; } + } + return -1; + } + + /* Fonction de contrle excel avant upload */ + function checkfile(sender) { + + var validExts = new Array(".xls", ".xlsx", ".ods"); + var fileExt = sender.value; + //alert(fileExt); + fileExt = fileExt.substring(fileExt.lastIndexOf('.')); + fileExt = fileExt.toLowerCase(); + //alert(fileExt); + //if(validExts.inArray(fileExt)) alert('oui'); else alert('non'); + if (validExts.indexOf(fileExt) < 0) { + alert("Le fichier selectionn est invalide, veuillez selectionner un fichier de type : " + + validExts.toString()); + return false; + } + else return true; + + /*if(validExts.inArray(fileExt)){ + return true; + }else{ + alert("Le fichier selectionn est invalide, veuillez selectionner un fichier de type : " + + validExts.toString()); + return false; + }*/ + + } + + /* Contrle si le fichier est un excel avant upload pour le ciblage */ + function ciblage_selectionner(){ + + mysender = document.frmCiblageUtiliser1.c_file; + if(checkfile(mysender)){ + + document.frmCiblageUtiliser1.submit(); + } + } + + /* Contrle si le fichier est un excel avant upload pour la relance */ + function relance_selectionner(){ + + mysender = document.frmRelanceUp.c_file; + if(checkfile(mysender)){ + + document.frmRelanceUp.submit(); + } + } + + //Fonction AGCO + function MM_swapImgRestore() { //v3.0 + var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; + } + + function MM_findObj(n, d) { //v4.01 + var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { + d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} + if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; + for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); + if(!x && d.getElementById) x=d.getElementById(n); return x; + } + + function MM_swapImage() { //v3.0 + var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) + if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} + } + + + + + + +--> \ No newline at end of file diff --git a/site/js/jquery-3.2.1.min.js b/site/js/jquery-3.2.1.min.js new file mode 100644 index 0000000..644d35e --- /dev/null +++ b/site/js/jquery-3.2.1.min.js @@ -0,0 +1,4 @@ +/*! jQuery v3.2.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(a,b){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){"use strict";var c=[],d=a.document,e=Object.getPrototypeOf,f=c.slice,g=c.concat,h=c.push,i=c.indexOf,j={},k=j.toString,l=j.hasOwnProperty,m=l.toString,n=m.call(Object),o={};function p(a,b){b=b||d;var c=b.createElement("script");c.text=a,b.head.appendChild(c).parentNode.removeChild(c)}var q="3.2.1",r=function(a,b){return new r.fn.init(a,b)},s=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,t=/^-ms-/,u=/-([a-z])/g,v=function(a,b){return b.toUpperCase()};r.fn=r.prototype={jquery:q,constructor:r,length:0,toArray:function(){return f.call(this)},get:function(a){return null==a?f.call(this):a<0?this[a+this.length]:this[a]},pushStack:function(a){var b=r.merge(this.constructor(),a);return b.prevObject=this,b},each:function(a){return r.each(this,a)},map:function(a){return this.pushStack(r.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(f.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(a<0?b:0);return this.pushStack(c>=0&&c<b?[this[c]]:[])},end:function(){return this.prevObject||this.constructor()},push:h,sort:c.sort,splice:c.splice},r.extend=r.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||r.isFunction(g)||(g={}),h===i&&(g=this,h--);h<i;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(r.isPlainObject(d)||(e=Array.isArray(d)))?(e?(e=!1,f=c&&Array.isArray(c)?c:[]):f=c&&r.isPlainObject(c)?c:{},g[b]=r.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},r.extend({expando:"jQuery"+(q+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===r.type(a)},isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){var b=r.type(a);return("number"===b||"string"===b)&&!isNaN(a-parseFloat(a))},isPlainObject:function(a){var b,c;return!(!a||"[object Object]"!==k.call(a))&&(!(b=e(a))||(c=l.call(b,"constructor")&&b.constructor,"function"==typeof c&&m.call(c)===n))},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?j[k.call(a)]||"object":typeof a},globalEval:function(a){p(a)},camelCase:function(a){return a.replace(t,"ms-").replace(u,v)},each:function(a,b){var c,d=0;if(w(a)){for(c=a.length;d<c;d++)if(b.call(a[d],d,a[d])===!1)break}else for(d in a)if(b.call(a[d],d,a[d])===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(s,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(w(Object(a))?r.merge(c,"string"==typeof a?[a]:a):h.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:i.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;d<c;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;f<g;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,e,f=0,h=[];if(w(a))for(d=a.length;f<d;f++)e=b(a[f],f,c),null!=e&&h.push(e);else for(f in a)e=b(a[f],f,c),null!=e&&h.push(e);return g.apply([],h)},guid:1,proxy:function(a,b){var c,d,e;if("string"==typeof b&&(c=a[b],b=a,a=c),r.isFunction(a))return d=f.call(arguments,2),e=function(){return a.apply(b||this,d.concat(f.call(arguments)))},e.guid=a.guid=a.guid||r.guid++,e},now:Date.now,support:o}),"function"==typeof Symbol&&(r.fn[Symbol.iterator]=c[Symbol.iterator]),r.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(a,b){j["[object "+b+"]"]=b.toLowerCase()});function w(a){var b=!!a&&"length"in a&&a.length,c=r.type(a);return"function"!==c&&!r.isWindow(a)&&("array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a)}var x=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ha(),z=ha(),A=ha(),B=function(a,b){return a===b&&(l=!0),0},C={}.hasOwnProperty,D=[],E=D.pop,F=D.push,G=D.push,H=D.slice,I=function(a,b){for(var c=0,d=a.length;c<d;c++)if(a[c]===b)return c;return-1},J="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",K="[\\x20\\t\\r\\n\\f]",L="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",M="\\["+K+"*("+L+")(?:"+K+"*([*^$|!~]?=)"+K+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+L+"))|)"+K+"*\\]",N=":("+L+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+M+")*)|.*)\\)|)",O=new RegExp(K+"+","g"),P=new RegExp("^"+K+"+|((?:^|[^\\\\])(?:\\\\.)*)"+K+"+$","g"),Q=new RegExp("^"+K+"*,"+K+"*"),R=new RegExp("^"+K+"*([>+~]|"+K+")"+K+"*"),S=new RegExp("="+K+"*([^\\]'\"]*?)"+K+"*\\]","g"),T=new RegExp(N),U=new RegExp("^"+L+"$"),V={ID:new RegExp("^#("+L+")"),CLASS:new RegExp("^\\.("+L+")"),TAG:new RegExp("^("+L+"|[*])"),ATTR:new RegExp("^"+M),PSEUDO:new RegExp("^"+N),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+K+"*(even|odd|(([+-]|)(\\d*)n|)"+K+"*(?:([+-]|)"+K+"*(\\d+)|))"+K+"*\\)|)","i"),bool:new RegExp("^(?:"+J+")$","i"),needsContext:new RegExp("^"+K+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+K+"*((?:-\\d)?\\d*)"+K+"*\\)|)(?=[^-]|$)","i")},W=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Y=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,$=/[+~]/,_=new RegExp("\\\\([\\da-f]{1,6}"+K+"?|("+K+")|.)","ig"),aa=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:d<0?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},ba=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ca=function(a,b){return b?"\0"===a?"\ufffd":a.slice(0,-1)+"\\"+a.charCodeAt(a.length-1).toString(16)+" ":"\\"+a},da=function(){m()},ea=ta(function(a){return a.disabled===!0&&("form"in a||"label"in a)},{dir:"parentNode",next:"legend"});try{G.apply(D=H.call(v.childNodes),v.childNodes),D[v.childNodes.length].nodeType}catch(fa){G={apply:D.length?function(a,b){F.apply(a,H.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function ga(a,b,d,e){var f,h,j,k,l,o,r,s=b&&b.ownerDocument,w=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==w&&9!==w&&11!==w)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==w&&(l=Z.exec(a)))if(f=l[1]){if(9===w){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(s&&(j=s.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(l[2])return G.apply(d,b.getElementsByTagName(a)),d;if((f=l[3])&&c.getElementsByClassName&&b.getElementsByClassName)return G.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==w)s=b,r=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(ba,ca):b.setAttribute("id",k=u),o=g(a),h=o.length;while(h--)o[h]="#"+k+" "+sa(o[h]);r=o.join(","),s=$.test(a)&&qa(b.parentNode)||b}if(r)try{return G.apply(d,s.querySelectorAll(r)),d}catch(x){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(P,"$1"),b,d,e)}function ha(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ia(a){return a[u]=!0,a}function ja(a){var b=n.createElement("fieldset");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ka(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function la(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&a.sourceIndex-b.sourceIndex;if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function na(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function oa(a){return function(b){return"form"in b?b.parentNode&&b.disabled===!1?"label"in b?"label"in b.parentNode?b.parentNode.disabled===a:b.disabled===a:b.isDisabled===a||b.isDisabled!==!a&&ea(b)===a:b.disabled===a:"label"in b&&b.disabled===a}}function pa(a){return ia(function(b){return b=+b,ia(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function qa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=ga.support={},f=ga.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return!!b&&"HTML"!==b.nodeName},m=ga.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),v!==n&&(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ja(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ja(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Y.test(n.getElementsByClassName),c.getById=ja(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.getElementsByName(u).length}),c.getById?(d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){return a.getAttribute("id")===b}},d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c?[c]:[]}}):(d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}},d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c,d,e,f=b.getElementById(a);if(f){if(c=f.getAttributeNode("id"),c&&c.value===a)return[f];e=b.getElementsByName(a),d=0;while(f=e[d++])if(c=f.getAttributeNode("id"),c&&c.value===a)return[f]}return[]}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){if("undefined"!=typeof b.getElementsByClassName&&p)return b.getElementsByClassName(a)},r=[],q=[],(c.qsa=Y.test(n.querySelectorAll))&&(ja(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\r\\' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+K+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+K+"*(?:value|"+J+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ja(function(a){a.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var b=n.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+K+"*[*^$|!~]?="),2!==a.querySelectorAll(":enabled").length&&q.push(":enabled",":disabled"),o.appendChild(a).disabled=!0,2!==a.querySelectorAll(":disabled").length&&q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=Y.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ja(function(a){c.disconnectedMatch=s.call(a,"*"),s.call(a,"[s!='']:x"),r.push("!=",N)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Y.test(o.compareDocumentPosition),t=b||Y.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===n||a.ownerDocument===v&&t(v,a)?-1:b===n||b.ownerDocument===v&&t(v,b)?1:k?I(k,a)-I(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?I(k,a)-I(k,b):0;if(e===f)return la(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?la(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},ga.matches=function(a,b){return ga(a,null,null,b)},ga.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(S,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!r||!r.test(b))&&(!q||!q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return ga(b,n,null,[a]).length>0},ga.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},ga.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&C.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},ga.escape=function(a){return(a+"").replace(ba,ca)},ga.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},ga.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=ga.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=ga.selectors={cacheLength:50,createPseudo:ia,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(_,aa),a[3]=(a[3]||a[4]||a[5]||"").replace(_,aa),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||ga.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&ga.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return V.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&T.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(_,aa).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+K+")"+a+"("+K+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=ga.attr(d,a);return null==e?"!="===b:!b||(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(O," ")+" ").indexOf(c)>-1:"|="===b&&(e===c||e.slice(0,c.length+1)===c+"-"))}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||ga.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ia(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=I(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ia(function(a){var b=[],c=[],d=h(a.replace(P,"$1"));return d[u]?ia(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ia(function(a){return function(b){return ga(a,b).length>0}}),contains:ia(function(a){return a=a.replace(_,aa),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ia(function(a){return U.test(a||"")||ga.error("unsupported lang: "+a),a=a.replace(_,aa).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:oa(!1),disabled:oa(!0),checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return X.test(a.nodeName)},input:function(a){return W.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:pa(function(){return[0]}),last:pa(function(a,b){return[b-1]}),eq:pa(function(a,b,c){return[c<0?c+b:c]}),even:pa(function(a,b){for(var c=0;c<b;c+=2)a.push(c);return a}),odd:pa(function(a,b){for(var c=1;c<b;c+=2)a.push(c);return a}),lt:pa(function(a,b,c){for(var d=c<0?c+b:c;--d>=0;)a.push(d);return a}),gt:pa(function(a,b,c){for(var d=c<0?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=ma(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=na(b);function ra(){}ra.prototype=d.filters=d.pseudos,d.setFilters=new ra,g=ga.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){c&&!(e=Q.exec(h))||(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=R.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(P," ")}),h=h.slice(c.length));for(g in d.filter)!(e=V[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?ga.error(a):z(a,i).slice(0)};function sa(a){for(var b=0,c=a.length,d="";b<c;b++)d+=a[b].value;return d}function ta(a,b,c){var d=b.dir,e=b.next,f=e||d,g=c&&"parentNode"===f,h=x++;return b.first?function(b,c,e){while(b=b[d])if(1===b.nodeType||g)return a(b,c,e);return!1}:function(b,c,i){var j,k,l,m=[w,h];if(i){while(b=b[d])if((1===b.nodeType||g)&&a(b,c,i))return!0}else while(b=b[d])if(1===b.nodeType||g)if(l=b[u]||(b[u]={}),k=l[b.uniqueID]||(l[b.uniqueID]={}),e&&e===b.nodeName.toLowerCase())b=b[d]||b;else{if((j=k[f])&&j[0]===w&&j[1]===h)return m[2]=j[2];if(k[f]=m,m[2]=a(b,c,i))return!0}return!1}}function ua(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function va(a,b,c){for(var d=0,e=b.length;d<e;d++)ga(a,b[d],c);return c}function wa(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;h<i;h++)(f=a[h])&&(c&&!c(f,d,e)||(g.push(f),j&&b.push(h)));return g}function xa(a,b,c,d,e,f){return d&&!d[u]&&(d=xa(d)),e&&!e[u]&&(e=xa(e,f)),ia(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||va(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:wa(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=wa(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?I(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=wa(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):G.apply(g,r)})}function ya(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ta(function(a){return a===b},h,!0),l=ta(function(a){return I(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];i<f;i++)if(c=d.relative[a[i].type])m=[ta(ua(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;e<f;e++)if(d.relative[a[e].type])break;return xa(i>1&&ua(m),i>1&&sa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(P,"$1"),c,i<e&&ya(a.slice(i,e)),e<f&&ya(a=a.slice(e)),e<f&&sa(a))}m.push(c)}return ua(m)}function za(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=E.call(i));u=wa(u)}G.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&ga.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ia(f):f}return h=ga.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=ya(b[c]),f[u]?d.push(f):e.push(f);f=A(a,za(e,d)),f.selector=a}return f},i=ga.select=function(a,b,c,e){var f,i,j,k,l,m="function"==typeof a&&a,n=!e&&g(a=m.selector||a);if(c=c||[],1===n.length){if(i=n[0]=n[0].slice(0),i.length>2&&"ID"===(j=i[0]).type&&9===b.nodeType&&p&&d.relative[i[1].type]){if(b=(d.find.ID(j.matches[0].replace(_,aa),b)||[])[0],!b)return c;m&&(b=b.parentNode),a=a.slice(i.shift().value.length)}f=V.needsContext.test(a)?0:i.length;while(f--){if(j=i[f],d.relative[k=j.type])break;if((l=d.find[k])&&(e=l(j.matches[0].replace(_,aa),$.test(i[0].type)&&qa(b.parentNode)||b))){if(i.splice(f,1),a=e.length&&sa(i),!a)return G.apply(c,e),c;break}}}return(m||h(a,n))(e,b,!p,c,!b||$.test(a)&&qa(b.parentNode)||b),c},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ja(function(a){return 1&a.compareDocumentPosition(n.createElement("fieldset"))}),ja(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||ka("type|href|height|width",function(a,b,c){if(!c)return a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ja(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ka("value",function(a,b,c){if(!c&&"input"===a.nodeName.toLowerCase())return a.defaultValue}),ja(function(a){return null==a.getAttribute("disabled")})||ka(J,function(a,b,c){var d;if(!c)return a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),ga}(a);r.find=x,r.expr=x.selectors,r.expr[":"]=r.expr.pseudos,r.uniqueSort=r.unique=x.uniqueSort,r.text=x.getText,r.isXMLDoc=x.isXML,r.contains=x.contains,r.escapeSelector=x.escape;var y=function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&r(a).is(c))break;d.push(a)}return d},z=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},A=r.expr.match.needsContext;function B(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()}var C=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,D=/^.[^:#\[\.,]*$/;function E(a,b,c){return r.isFunction(b)?r.grep(a,function(a,d){return!!b.call(a,d,a)!==c}):b.nodeType?r.grep(a,function(a){return a===b!==c}):"string"!=typeof b?r.grep(a,function(a){return i.call(b,a)>-1!==c}):D.test(b)?r.filter(b,a,c):(b=r.filter(b,a),r.grep(a,function(a){return i.call(b,a)>-1!==c&&1===a.nodeType}))}r.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?r.find.matchesSelector(d,a)?[d]:[]:r.find.matches(a,r.grep(b,function(a){return 1===a.nodeType}))},r.fn.extend({find:function(a){var b,c,d=this.length,e=this;if("string"!=typeof a)return this.pushStack(r(a).filter(function(){for(b=0;b<d;b++)if(r.contains(e[b],this))return!0}));for(c=this.pushStack([]),b=0;b<d;b++)r.find(a,e[b],c);return d>1?r.uniqueSort(c):c},filter:function(a){return this.pushStack(E(this,a||[],!1))},not:function(a){return this.pushStack(E(this,a||[],!0))},is:function(a){return!!E(this,"string"==typeof a&&A.test(a)?r(a):a||[],!1).length}});var F,G=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,H=r.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||F,"string"==typeof a){if(e="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:G.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof r?b[0]:b,r.merge(this,r.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),C.test(e[1])&&r.isPlainObject(b))for(e in b)r.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}return f=d.getElementById(e[2]),f&&(this[0]=f,this.length=1),this}return a.nodeType?(this[0]=a,this.length=1,this):r.isFunction(a)?void 0!==c.ready?c.ready(a):a(r):r.makeArray(a,this)};H.prototype=r.fn,F=r(d);var I=/^(?:parents|prev(?:Until|All))/,J={children:!0,contents:!0,next:!0,prev:!0};r.fn.extend({has:function(a){var b=r(a,this),c=b.length;return this.filter(function(){for(var a=0;a<c;a++)if(r.contains(this,b[a]))return!0})},closest:function(a,b){var c,d=0,e=this.length,f=[],g="string"!=typeof a&&r(a);if(!A.test(a))for(;d<e;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&r.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?r.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?i.call(r(a),this[0]):i.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(r.uniqueSort(r.merge(this.get(),r(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function K(a,b){while((a=a[b])&&1!==a.nodeType);return a}r.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return y(a,"parentNode")},parentsUntil:function(a,b,c){return y(a,"parentNode",c)},next:function(a){return K(a,"nextSibling")},prev:function(a){return K(a,"previousSibling")},nextAll:function(a){return y(a,"nextSibling")},prevAll:function(a){return y(a,"previousSibling")},nextUntil:function(a,b,c){return y(a,"nextSibling",c)},prevUntil:function(a,b,c){return y(a,"previousSibling",c)},siblings:function(a){return z((a.parentNode||{}).firstChild,a)},children:function(a){return z(a.firstChild)},contents:function(a){return B(a,"iframe")?a.contentDocument:(B(a,"template")&&(a=a.content||a),r.merge([],a.childNodes))}},function(a,b){r.fn[a]=function(c,d){var e=r.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=r.filter(d,e)),this.length>1&&(J[a]||r.uniqueSort(e),I.test(a)&&e.reverse()),this.pushStack(e)}});var L=/[^\x20\t\r\n\f]+/g;function M(a){var b={};return r.each(a.match(L)||[],function(a,c){b[c]=!0}),b}r.Callbacks=function(a){a="string"==typeof a?M(a):r.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=e||a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h<f.length)f[h].apply(c[0],c[1])===!1&&a.stopOnFalse&&(h=f.length,c=!1)}a.memory||(c=!1),b=!1,e&&(f=c?[]:"")},j={add:function(){return f&&(c&&!b&&(h=f.length-1,g.push(c)),function d(b){r.each(b,function(b,c){r.isFunction(c)?a.unique&&j.has(c)||f.push(c):c&&c.length&&"string"!==r.type(c)&&d(c)})}(arguments),c&&!b&&i()),this},remove:function(){return r.each(arguments,function(a,b){var c;while((c=r.inArray(b,f,c))>-1)f.splice(c,1),c<=h&&h--}),this},has:function(a){return a?r.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=g=[],c||b||(f=c=""),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j};function N(a){return a}function O(a){throw a}function P(a,b,c,d){var e;try{a&&r.isFunction(e=a.promise)?e.call(a).done(b).fail(c):a&&r.isFunction(e=a.then)?e.call(a,b,c):b.apply(void 0,[a].slice(d))}catch(a){c.apply(void 0,[a])}}r.extend({Deferred:function(b){var c=[["notify","progress",r.Callbacks("memory"),r.Callbacks("memory"),2],["resolve","done",r.Callbacks("once memory"),r.Callbacks("once memory"),0,"resolved"],["reject","fail",r.Callbacks("once memory"),r.Callbacks("once memory"),1,"rejected"]],d="pending",e={state:function(){return d},always:function(){return f.done(arguments).fail(arguments),this},"catch":function(a){return e.then(null,a)},pipe:function(){var a=arguments;return r.Deferred(function(b){r.each(c,function(c,d){var e=r.isFunction(a[d[4]])&&a[d[4]];f[d[1]](function(){var a=e&&e.apply(this,arguments);a&&r.isFunction(a.promise)?a.promise().progress(b.notify).done(b.resolve).fail(b.reject):b[d[0]+"With"](this,e?[a]:arguments)})}),a=null}).promise()},then:function(b,d,e){var f=0;function g(b,c,d,e){return function(){var h=this,i=arguments,j=function(){var a,j;if(!(b<f)){if(a=d.apply(h,i),a===c.promise())throw new TypeError("Thenable self-resolution");j=a&&("object"==typeof a||"function"==typeof a)&&a.then,r.isFunction(j)?e?j.call(a,g(f,c,N,e),g(f,c,O,e)):(f++,j.call(a,g(f,c,N,e),g(f,c,O,e),g(f,c,N,c.notifyWith))):(d!==N&&(h=void 0,i=[a]),(e||c.resolveWith)(h,i))}},k=e?j:function(){try{j()}catch(a){r.Deferred.exceptionHook&&r.Deferred.exceptionHook(a,k.stackTrace),b+1>=f&&(d!==O&&(h=void 0,i=[a]),c.rejectWith(h,i))}};b?k():(r.Deferred.getStackHook&&(k.stackTrace=r.Deferred.getStackHook()),a.setTimeout(k))}}return r.Deferred(function(a){c[0][3].add(g(0,a,r.isFunction(e)?e:N,a.notifyWith)),c[1][3].add(g(0,a,r.isFunction(b)?b:N)),c[2][3].add(g(0,a,r.isFunction(d)?d:O))}).promise()},promise:function(a){return null!=a?r.extend(a,e):e}},f={};return r.each(c,function(a,b){var g=b[2],h=b[5];e[b[1]]=g.add,h&&g.add(function(){d=h},c[3-a][2].disable,c[0][2].lock),g.add(b[3].fire),f[b[0]]=function(){return f[b[0]+"With"](this===f?void 0:this,arguments),this},f[b[0]+"With"]=g.fireWith}),e.promise(f),b&&b.call(f,f),f},when:function(a){var b=arguments.length,c=b,d=Array(c),e=f.call(arguments),g=r.Deferred(),h=function(a){return function(c){d[a]=this,e[a]=arguments.length>1?f.call(arguments):c,--b||g.resolveWith(d,e)}};if(b<=1&&(P(a,g.done(h(c)).resolve,g.reject,!b),"pending"===g.state()||r.isFunction(e[c]&&e[c].then)))return g.then();while(c--)P(e[c],h(c),g.reject);return g.promise()}});var Q=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;r.Deferred.exceptionHook=function(b,c){a.console&&a.console.warn&&b&&Q.test(b.name)&&a.console.warn("jQuery.Deferred exception: "+b.message,b.stack,c)},r.readyException=function(b){a.setTimeout(function(){throw b})};var R=r.Deferred();r.fn.ready=function(a){return R.then(a)["catch"](function(a){r.readyException(a)}),this},r.extend({isReady:!1,readyWait:1,ready:function(a){(a===!0?--r.readyWait:r.isReady)||(r.isReady=!0,a!==!0&&--r.readyWait>0||R.resolveWith(d,[r]))}}),r.ready.then=R.then;function S(){d.removeEventListener("DOMContentLoaded",S), +a.removeEventListener("load",S),r.ready()}"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll?a.setTimeout(r.ready):(d.addEventListener("DOMContentLoaded",S),a.addEventListener("load",S));var T=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===r.type(c)){e=!0;for(h in c)T(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,r.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(r(a),c)})),b))for(;h<i;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},U=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function V(){this.expando=r.expando+V.uid++}V.uid=1,V.prototype={cache:function(a){var b=a[this.expando];return b||(b={},U(a)&&(a.nodeType?a[this.expando]=b:Object.defineProperty(a,this.expando,{value:b,configurable:!0}))),b},set:function(a,b,c){var d,e=this.cache(a);if("string"==typeof b)e[r.camelCase(b)]=c;else for(d in b)e[r.camelCase(d)]=b[d];return e},get:function(a,b){return void 0===b?this.cache(a):a[this.expando]&&a[this.expando][r.camelCase(b)]},access:function(a,b,c){return void 0===b||b&&"string"==typeof b&&void 0===c?this.get(a,b):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d=a[this.expando];if(void 0!==d){if(void 0!==b){Array.isArray(b)?b=b.map(r.camelCase):(b=r.camelCase(b),b=b in d?[b]:b.match(L)||[]),c=b.length;while(c--)delete d[b[c]]}(void 0===b||r.isEmptyObject(d))&&(a.nodeType?a[this.expando]=void 0:delete a[this.expando])}},hasData:function(a){var b=a[this.expando];return void 0!==b&&!r.isEmptyObject(b)}};var W=new V,X=new V,Y=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Z=/[A-Z]/g;function $(a){return"true"===a||"false"!==a&&("null"===a?null:a===+a+""?+a:Y.test(a)?JSON.parse(a):a)}function _(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(Z,"-$&").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c=$(c)}catch(e){}X.set(a,b,c)}else c=void 0;return c}r.extend({hasData:function(a){return X.hasData(a)||W.hasData(a)},data:function(a,b,c){return X.access(a,b,c)},removeData:function(a,b){X.remove(a,b)},_data:function(a,b,c){return W.access(a,b,c)},_removeData:function(a,b){W.remove(a,b)}}),r.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=X.get(f),1===f.nodeType&&!W.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=r.camelCase(d.slice(5)),_(f,d,e[d])));W.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){X.set(this,a)}):T(this,function(b){var c;if(f&&void 0===b){if(c=X.get(f,a),void 0!==c)return c;if(c=_(f,a),void 0!==c)return c}else this.each(function(){X.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){X.remove(this,a)})}}),r.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=W.get(a,b),c&&(!d||Array.isArray(c)?d=W.access(a,b,r.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=r.queue(a,b),d=c.length,e=c.shift(),f=r._queueHooks(a,b),g=function(){r.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return W.get(a,c)||W.access(a,c,{empty:r.Callbacks("once memory").add(function(){W.remove(a,[b+"queue",c])})})}}),r.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?r.queue(this[0],a):void 0===b?this:this.each(function(){var c=r.queue(this,a,b);r._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&r.dequeue(this,a)})},dequeue:function(a){return this.each(function(){r.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=r.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};"string"!=typeof a&&(b=a,a=void 0),a=a||"fx";while(g--)c=W.get(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var aa=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ba=new RegExp("^(?:([+-])=|)("+aa+")([a-z%]*)$","i"),ca=["Top","Right","Bottom","Left"],da=function(a,b){return a=b||a,"none"===a.style.display||""===a.style.display&&r.contains(a.ownerDocument,a)&&"none"===r.css(a,"display")},ea=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};function fa(a,b,c,d){var e,f=1,g=20,h=d?function(){return d.cur()}:function(){return r.css(a,b,"")},i=h(),j=c&&c[3]||(r.cssNumber[b]?"":"px"),k=(r.cssNumber[b]||"px"!==j&&+i)&&ba.exec(r.css(a,b));if(k&&k[3]!==j){j=j||k[3],c=c||[],k=+i||1;do f=f||".5",k/=f,r.style(a,b,k+j);while(f!==(f=h()/i)&&1!==f&&--g)}return c&&(k=+k||+i||0,e=c[1]?k+(c[1]+1)*c[2]:+c[2],d&&(d.unit=j,d.start=k,d.end=e)),e}var ga={};function ha(a){var b,c=a.ownerDocument,d=a.nodeName,e=ga[d];return e?e:(b=c.body.appendChild(c.createElement(d)),e=r.css(b,"display"),b.parentNode.removeChild(b),"none"===e&&(e="block"),ga[d]=e,e)}function ia(a,b){for(var c,d,e=[],f=0,g=a.length;f<g;f++)d=a[f],d.style&&(c=d.style.display,b?("none"===c&&(e[f]=W.get(d,"display")||null,e[f]||(d.style.display="")),""===d.style.display&&da(d)&&(e[f]=ha(d))):"none"!==c&&(e[f]="none",W.set(d,"display",c)));for(f=0;f<g;f++)null!=e[f]&&(a[f].style.display=e[f]);return a}r.fn.extend({show:function(){return ia(this,!0)},hide:function(){return ia(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){da(this)?r(this).show():r(this).hide()})}});var ja=/^(?:checkbox|radio)$/i,ka=/<([a-z][^\/\0>\x20\t\r\n\f]+)/i,la=/^$|\/(?:java|ecma)script/i,ma={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ma.optgroup=ma.option,ma.tbody=ma.tfoot=ma.colgroup=ma.caption=ma.thead,ma.th=ma.td;function na(a,b){var c;return c="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):[],void 0===b||b&&B(a,b)?r.merge([a],c):c}function oa(a,b){for(var c=0,d=a.length;c<d;c++)W.set(a[c],"globalEval",!b||W.get(b[c],"globalEval"))}var pa=/<|&#?\w+;/;function qa(a,b,c,d,e){for(var f,g,h,i,j,k,l=b.createDocumentFragment(),m=[],n=0,o=a.length;n<o;n++)if(f=a[n],f||0===f)if("object"===r.type(f))r.merge(m,f.nodeType?[f]:f);else if(pa.test(f)){g=g||l.appendChild(b.createElement("div")),h=(ka.exec(f)||["",""])[1].toLowerCase(),i=ma[h]||ma._default,g.innerHTML=i[1]+r.htmlPrefilter(f)+i[2],k=i[0];while(k--)g=g.lastChild;r.merge(m,g.childNodes),g=l.firstChild,g.textContent=""}else m.push(b.createTextNode(f));l.textContent="",n=0;while(f=m[n++])if(d&&r.inArray(f,d)>-1)e&&e.push(f);else if(j=r.contains(f.ownerDocument,f),g=na(l.appendChild(f),"script"),j&&oa(g),c){k=0;while(f=g[k++])la.test(f.type||"")&&c.push(f)}return l}!function(){var a=d.createDocumentFragment(),b=a.appendChild(d.createElement("div")),c=d.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),o.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="<textarea>x</textarea>",o.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var ra=d.documentElement,sa=/^key/,ta=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,ua=/^([^.]*)(?:\.(.+)|)/;function va(){return!0}function wa(){return!1}function xa(){try{return d.activeElement}catch(a){}}function ya(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)ya(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=wa;else if(!e)return a;return 1===f&&(g=e,e=function(a){return r().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=r.guid++)),a.each(function(){r.event.add(this,b,e,d,c)})}r.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=W.get(a);if(q){c.handler&&(f=c,c=f.handler,e=f.selector),e&&r.find.matchesSelector(ra,e),c.guid||(c.guid=r.guid++),(i=q.events)||(i=q.events={}),(g=q.handle)||(g=q.handle=function(b){return"undefined"!=typeof r&&r.event.triggered!==b.type?r.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(L)||[""],j=b.length;while(j--)h=ua.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n&&(l=r.event.special[n]||{},n=(e?l.delegateType:l.bindType)||n,l=r.event.special[n]||{},k=r.extend({type:n,origType:p,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&r.expr.match.needsContext.test(e),namespace:o.join(".")},f),(m=i[n])||(m=i[n]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,o,g)!==!1||a.addEventListener&&a.addEventListener(n,g)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),r.event.global[n]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=W.hasData(a)&&W.get(a);if(q&&(i=q.events)){b=(b||"").match(L)||[""],j=b.length;while(j--)if(h=ua.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n){l=r.event.special[n]||{},n=(d?l.delegateType:l.bindType)||n,m=i[n]||[],h=h[2]&&new RegExp("(^|\\.)"+o.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&p!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,o,q.handle)!==!1||r.removeEvent(a,n,q.handle),delete i[n])}else for(n in i)r.event.remove(a,n+b[j],c,d,!0);r.isEmptyObject(i)&&W.remove(a,"handle events")}},dispatch:function(a){var b=r.event.fix(a),c,d,e,f,g,h,i=new Array(arguments.length),j=(W.get(this,"events")||{})[b.type]||[],k=r.event.special[b.type]||{};for(i[0]=b,c=1;c<arguments.length;c++)i[c]=arguments[c];if(b.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,b)!==!1){h=r.event.handlers.call(this,b,j),c=0;while((f=h[c++])&&!b.isPropagationStopped()){b.currentTarget=f.elem,d=0;while((g=f.handlers[d++])&&!b.isImmediatePropagationStopped())b.rnamespace&&!b.rnamespace.test(g.namespace)||(b.handleObj=g,b.data=g.data,e=((r.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==e&&(b.result=e)===!1&&(b.preventDefault(),b.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,b),b.result}},handlers:function(a,b){var c,d,e,f,g,h=[],i=b.delegateCount,j=a.target;if(i&&j.nodeType&&!("click"===a.type&&a.button>=1))for(;j!==this;j=j.parentNode||this)if(1===j.nodeType&&("click"!==a.type||j.disabled!==!0)){for(f=[],g={},c=0;c<i;c++)d=b[c],e=d.selector+" ",void 0===g[e]&&(g[e]=d.needsContext?r(e,this).index(j)>-1:r.find(e,this,null,[j]).length),g[e]&&f.push(d);f.length&&h.push({elem:j,handlers:f})}return j=this,i<b.length&&h.push({elem:j,handlers:b.slice(i)}),h},addProp:function(a,b){Object.defineProperty(r.Event.prototype,a,{enumerable:!0,configurable:!0,get:r.isFunction(b)?function(){if(this.originalEvent)return b(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[a]},set:function(b){Object.defineProperty(this,a,{enumerable:!0,configurable:!0,writable:!0,value:b})}})},fix:function(a){return a[r.expando]?a:new r.Event(a)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==xa()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===xa()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&B(this,"input"))return this.click(),!1},_default:function(a){return B(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}}},r.removeEvent=function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c)},r.Event=function(a,b){return this instanceof r.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?va:wa,this.target=a.target&&3===a.target.nodeType?a.target.parentNode:a.target,this.currentTarget=a.currentTarget,this.relatedTarget=a.relatedTarget):this.type=a,b&&r.extend(this,b),this.timeStamp=a&&a.timeStamp||r.now(),void(this[r.expando]=!0)):new r.Event(a,b)},r.Event.prototype={constructor:r.Event,isDefaultPrevented:wa,isPropagationStopped:wa,isImmediatePropagationStopped:wa,isSimulated:!1,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=va,a&&!this.isSimulated&&a.preventDefault()},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=va,a&&!this.isSimulated&&a.stopPropagation()},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=va,a&&!this.isSimulated&&a.stopImmediatePropagation(),this.stopPropagation()}},r.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(a){var b=a.button;return null==a.which&&sa.test(a.type)?null!=a.charCode?a.charCode:a.keyCode:!a.which&&void 0!==b&&ta.test(a.type)?1&b?1:2&b?3:4&b?2:0:a.which}},r.event.addProp),r.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){r.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return e&&(e===d||r.contains(d,e))||(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),r.fn.extend({on:function(a,b,c,d){return ya(this,a,b,c,d)},one:function(a,b,c,d){return ya(this,a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,r(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return b!==!1&&"function"!=typeof b||(c=b,b=void 0),c===!1&&(c=wa),this.each(function(){r.event.remove(this,a,c,b)})}});var za=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,Aa=/<script|<style|<link/i,Ba=/checked\s*(?:[^=]|=\s*.checked.)/i,Ca=/^true\/(.*)/,Da=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Ea(a,b){return B(a,"table")&&B(11!==b.nodeType?b:b.firstChild,"tr")?r(">tbody",a)[0]||a:a}function Fa(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function Ga(a){var b=Ca.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function Ha(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(W.hasData(a)&&(f=W.access(a),g=W.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;c<d;c++)r.event.add(b,e,j[e][c])}X.hasData(a)&&(h=X.access(a),i=r.extend({},h),X.set(b,i))}}function Ia(a,b){var c=b.nodeName.toLowerCase();"input"===c&&ja.test(a.type)?b.checked=a.checked:"input"!==c&&"textarea"!==c||(b.defaultValue=a.defaultValue)}function Ja(a,b,c,d){b=g.apply([],b);var e,f,h,i,j,k,l=0,m=a.length,n=m-1,q=b[0],s=r.isFunction(q);if(s||m>1&&"string"==typeof q&&!o.checkClone&&Ba.test(q))return a.each(function(e){var f=a.eq(e);s&&(b[0]=q.call(this,e,f.html())),Ja(f,b,c,d)});if(m&&(e=qa(b,a[0].ownerDocument,!1,a,d),f=e.firstChild,1===e.childNodes.length&&(e=f),f||d)){for(h=r.map(na(e,"script"),Fa),i=h.length;l<m;l++)j=e,l!==n&&(j=r.clone(j,!0,!0),i&&r.merge(h,na(j,"script"))),c.call(a[l],j,l);if(i)for(k=h[h.length-1].ownerDocument,r.map(h,Ga),l=0;l<i;l++)j=h[l],la.test(j.type||"")&&!W.access(j,"globalEval")&&r.contains(k,j)&&(j.src?r._evalUrl&&r._evalUrl(j.src):p(j.textContent.replace(Da,""),k))}return a}function Ka(a,b,c){for(var d,e=b?r.filter(b,a):a,f=0;null!=(d=e[f]);f++)c||1!==d.nodeType||r.cleanData(na(d)),d.parentNode&&(c&&r.contains(d.ownerDocument,d)&&oa(na(d,"script")),d.parentNode.removeChild(d));return a}r.extend({htmlPrefilter:function(a){return a.replace(za,"<$1></$2>")},clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=r.contains(a.ownerDocument,a);if(!(o.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||r.isXMLDoc(a)))for(g=na(h),f=na(a),d=0,e=f.length;d<e;d++)Ia(f[d],g[d]);if(b)if(c)for(f=f||na(a),g=g||na(h),d=0,e=f.length;d<e;d++)Ha(f[d],g[d]);else Ha(a,h);return g=na(h,"script"),g.length>0&&oa(g,!i&&na(a,"script")),h},cleanData:function(a){for(var b,c,d,e=r.event.special,f=0;void 0!==(c=a[f]);f++)if(U(c)){if(b=c[W.expando]){if(b.events)for(d in b.events)e[d]?r.event.remove(c,d):r.removeEvent(c,d,b.handle);c[W.expando]=void 0}c[X.expando]&&(c[X.expando]=void 0)}}}),r.fn.extend({detach:function(a){return Ka(this,a,!0)},remove:function(a){return Ka(this,a)},text:function(a){return T(this,function(a){return void 0===a?r.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=a)})},null,a,arguments.length)},append:function(){return Ja(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ea(this,a);b.appendChild(a)}})},prepend:function(){return Ja(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ea(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return Ja(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return Ja(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(r.cleanData(na(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null!=a&&a,b=null==b?a:b,this.map(function(){return r.clone(this,a,b)})},html:function(a){return T(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!Aa.test(a)&&!ma[(ka.exec(a)||["",""])[1].toLowerCase()]){a=r.htmlPrefilter(a);try{for(;c<d;c++)b=this[c]||{},1===b.nodeType&&(r.cleanData(na(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=[];return Ja(this,arguments,function(b){var c=this.parentNode;r.inArray(this,a)<0&&(r.cleanData(na(this)),c&&c.replaceChild(b,this))},a)}}),r.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){r.fn[a]=function(a){for(var c,d=[],e=r(a),f=e.length-1,g=0;g<=f;g++)c=g===f?this:this.clone(!0),r(e[g])[b](c),h.apply(d,c.get());return this.pushStack(d)}});var La=/^margin/,Ma=new RegExp("^("+aa+")(?!px)[a-z%]+$","i"),Na=function(b){var c=b.ownerDocument.defaultView;return c&&c.opener||(c=a),c.getComputedStyle(b)};!function(){function b(){if(i){i.style.cssText="box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",i.innerHTML="",ra.appendChild(h);var b=a.getComputedStyle(i);c="1%"!==b.top,g="2px"===b.marginLeft,e="4px"===b.width,i.style.marginRight="50%",f="4px"===b.marginRight,ra.removeChild(h),i=null}}var c,e,f,g,h=d.createElement("div"),i=d.createElement("div");i.style&&(i.style.backgroundClip="content-box",i.cloneNode(!0).style.backgroundClip="",o.clearCloneStyle="content-box"===i.style.backgroundClip,h.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",h.appendChild(i),r.extend(o,{pixelPosition:function(){return b(),c},boxSizingReliable:function(){return b(),e},pixelMarginRight:function(){return b(),f},reliableMarginLeft:function(){return b(),g}}))}();function Oa(a,b,c){var d,e,f,g,h=a.style;return c=c||Na(a),c&&(g=c.getPropertyValue(b)||c[b],""!==g||r.contains(a.ownerDocument,a)||(g=r.style(a,b)),!o.pixelMarginRight()&&Ma.test(g)&&La.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0!==g?g+"":g}function Pa(a,b){return{get:function(){return a()?void delete this.get:(this.get=b).apply(this,arguments)}}}var Qa=/^(none|table(?!-c[ea]).+)/,Ra=/^--/,Sa={position:"absolute",visibility:"hidden",display:"block"},Ta={letterSpacing:"0",fontWeight:"400"},Ua=["Webkit","Moz","ms"],Va=d.createElement("div").style;function Wa(a){if(a in Va)return a;var b=a[0].toUpperCase()+a.slice(1),c=Ua.length;while(c--)if(a=Ua[c]+b,a in Va)return a}function Xa(a){var b=r.cssProps[a];return b||(b=r.cssProps[a]=Wa(a)||a),b}function Ya(a,b,c){var d=ba.exec(b);return d?Math.max(0,d[2]-(c||0))+(d[3]||"px"):b}function Za(a,b,c,d,e){var f,g=0;for(f=c===(d?"border":"content")?4:"width"===b?1:0;f<4;f+=2)"margin"===c&&(g+=r.css(a,c+ca[f],!0,e)),d?("content"===c&&(g-=r.css(a,"padding"+ca[f],!0,e)),"margin"!==c&&(g-=r.css(a,"border"+ca[f]+"Width",!0,e))):(g+=r.css(a,"padding"+ca[f],!0,e),"padding"!==c&&(g+=r.css(a,"border"+ca[f]+"Width",!0,e)));return g}function $a(a,b,c){var d,e=Na(a),f=Oa(a,b,e),g="border-box"===r.css(a,"boxSizing",!1,e);return Ma.test(f)?f:(d=g&&(o.boxSizingReliable()||f===a.style[b]),"auto"===f&&(f=a["offset"+b[0].toUpperCase()+b.slice(1)]),f=parseFloat(f)||0,f+Za(a,b,c||(g?"border":"content"),d,e)+"px")}r.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=Oa(a,"opacity");return""===c?"1":c}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=r.camelCase(b),i=Ra.test(b),j=a.style;return i||(b=Xa(h)),g=r.cssHooks[b]||r.cssHooks[h],void 0===c?g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:j[b]:(f=typeof c,"string"===f&&(e=ba.exec(c))&&e[1]&&(c=fa(a,b,e),f="number"),null!=c&&c===c&&("number"===f&&(c+=e&&e[3]||(r.cssNumber[h]?"":"px")),o.clearCloneStyle||""!==c||0!==b.indexOf("background")||(j[b]="inherit"),g&&"set"in g&&void 0===(c=g.set(a,c,d))||(i?j.setProperty(b,c):j[b]=c)),void 0)}},css:function(a,b,c,d){var e,f,g,h=r.camelCase(b),i=Ra.test(b);return i||(b=Xa(h)),g=r.cssHooks[b]||r.cssHooks[h],g&&"get"in g&&(e=g.get(a,!0,c)),void 0===e&&(e=Oa(a,b,d)),"normal"===e&&b in Ta&&(e=Ta[b]),""===c||c?(f=parseFloat(e),c===!0||isFinite(f)?f||0:e):e}}),r.each(["height","width"],function(a,b){r.cssHooks[b]={get:function(a,c,d){if(c)return!Qa.test(r.css(a,"display"))||a.getClientRects().length&&a.getBoundingClientRect().width?$a(a,b,d):ea(a,Sa,function(){return $a(a,b,d)})},set:function(a,c,d){var e,f=d&&Na(a),g=d&&Za(a,b,d,"border-box"===r.css(a,"boxSizing",!1,f),f);return g&&(e=ba.exec(c))&&"px"!==(e[3]||"px")&&(a.style[b]=c,c=r.css(a,b)),Ya(a,c,g)}}}),r.cssHooks.marginLeft=Pa(o.reliableMarginLeft,function(a,b){if(b)return(parseFloat(Oa(a,"marginLeft"))||a.getBoundingClientRect().left-ea(a,{marginLeft:0},function(){return a.getBoundingClientRect().left}))+"px"}),r.each({margin:"",padding:"",border:"Width"},function(a,b){r.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];d<4;d++)e[a+ca[d]+b]=f[d]||f[d-2]||f[0];return e}},La.test(a)||(r.cssHooks[a+b].set=Ya)}),r.fn.extend({css:function(a,b){return T(this,function(a,b,c){var d,e,f={},g=0;if(Array.isArray(b)){for(d=Na(a),e=b.length;g<e;g++)f[b[g]]=r.css(a,b[g],!1,d);return f}return void 0!==c?r.style(a,b,c):r.css(a,b)},a,b,arguments.length>1)}});function _a(a,b,c,d,e){return new _a.prototype.init(a,b,c,d,e)}r.Tween=_a,_a.prototype={constructor:_a,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||r.easing._default,this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(r.cssNumber[c]?"":"px")},cur:function(){var a=_a.propHooks[this.prop];return a&&a.get?a.get(this):_a.propHooks._default.get(this)},run:function(a){var b,c=_a.propHooks[this.prop];return this.options.duration?this.pos=b=r.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):_a.propHooks._default.set(this),this}},_a.prototype.init.prototype=_a.prototype,_a.propHooks={_default:{get:function(a){var b;return 1!==a.elem.nodeType||null!=a.elem[a.prop]&&null==a.elem.style[a.prop]?a.elem[a.prop]:(b=r.css(a.elem,a.prop,""),b&&"auto"!==b?b:0)},set:function(a){r.fx.step[a.prop]?r.fx.step[a.prop](a):1!==a.elem.nodeType||null==a.elem.style[r.cssProps[a.prop]]&&!r.cssHooks[a.prop]?a.elem[a.prop]=a.now:r.style(a.elem,a.prop,a.now+a.unit)}}},_a.propHooks.scrollTop=_a.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},r.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2},_default:"swing"},r.fx=_a.prototype.init,r.fx.step={};var ab,bb,cb=/^(?:toggle|show|hide)$/,db=/queueHooks$/;function eb(){bb&&(d.hidden===!1&&a.requestAnimationFrame?a.requestAnimationFrame(eb):a.setTimeout(eb,r.fx.interval),r.fx.tick())}function fb(){return a.setTimeout(function(){ab=void 0}),ab=r.now()}function gb(a,b){var c,d=0,e={height:a};for(b=b?1:0;d<4;d+=2-b)c=ca[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function hb(a,b,c){for(var d,e=(kb.tweeners[b]||[]).concat(kb.tweeners["*"]),f=0,g=e.length;f<g;f++)if(d=e[f].call(c,b,a))return d}function ib(a,b,c){var d,e,f,g,h,i,j,k,l="width"in b||"height"in b,m=this,n={},o=a.style,p=a.nodeType&&da(a),q=W.get(a,"fxshow");c.queue||(g=r._queueHooks(a,"fx"),null==g.unqueued&&(g.unqueued=0,h=g.empty.fire,g.empty.fire=function(){g.unqueued||h()}),g.unqueued++,m.always(function(){m.always(function(){g.unqueued--,r.queue(a,"fx").length||g.empty.fire()})}));for(d in b)if(e=b[d],cb.test(e)){if(delete b[d],f=f||"toggle"===e,e===(p?"hide":"show")){if("show"!==e||!q||void 0===q[d])continue;p=!0}n[d]=q&&q[d]||r.style(a,d)}if(i=!r.isEmptyObject(b),i||!r.isEmptyObject(n)){l&&1===a.nodeType&&(c.overflow=[o.overflow,o.overflowX,o.overflowY],j=q&&q.display,null==j&&(j=W.get(a,"display")),k=r.css(a,"display"),"none"===k&&(j?k=j:(ia([a],!0),j=a.style.display||j,k=r.css(a,"display"),ia([a]))),("inline"===k||"inline-block"===k&&null!=j)&&"none"===r.css(a,"float")&&(i||(m.done(function(){o.display=j}),null==j&&(k=o.display,j="none"===k?"":k)),o.display="inline-block")),c.overflow&&(o.overflow="hidden",m.always(function(){o.overflow=c.overflow[0],o.overflowX=c.overflow[1],o.overflowY=c.overflow[2]})),i=!1;for(d in n)i||(q?"hidden"in q&&(p=q.hidden):q=W.access(a,"fxshow",{display:j}),f&&(q.hidden=!p),p&&ia([a],!0),m.done(function(){p||ia([a]),W.remove(a,"fxshow");for(d in n)r.style(a,d,n[d])})),i=hb(p?q[d]:0,d,m),d in q||(q[d]=i.start,p&&(i.end=i.start,i.start=0))}}function jb(a,b){var c,d,e,f,g;for(c in a)if(d=r.camelCase(c),e=b[d],f=a[c],Array.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=r.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function kb(a,b,c){var d,e,f=0,g=kb.prefilters.length,h=r.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=ab||fb(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;g<i;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),f<1&&i?c:(i||h.notifyWith(a,[j,1,0]),h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:r.extend({},b),opts:r.extend(!0,{specialEasing:{},easing:r.easing._default},c),originalProperties:b,originalOptions:c,startTime:ab||fb(),duration:c.duration,tweens:[],createTween:function(b,c){var d=r.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;c<d;c++)j.tweens[c].run(1);return b?(h.notifyWith(a,[j,1,0]),h.resolveWith(a,[j,b])):h.rejectWith(a,[j,b]),this}}),k=j.props;for(jb(k,j.opts.specialEasing);f<g;f++)if(d=kb.prefilters[f].call(j,a,k,j.opts))return r.isFunction(d.stop)&&(r._queueHooks(j.elem,j.opts.queue).stop=r.proxy(d.stop,d)),d;return r.map(k,hb,j),r.isFunction(j.opts.start)&&j.opts.start.call(a,j),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always),r.fx.timer(r.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j}r.Animation=r.extend(kb,{tweeners:{"*":[function(a,b){var c=this.createTween(a,b);return fa(c.elem,a,ba.exec(b),c),c}]},tweener:function(a,b){r.isFunction(a)?(b=a,a=["*"]):a=a.match(L);for(var c,d=0,e=a.length;d<e;d++)c=a[d],kb.tweeners[c]=kb.tweeners[c]||[],kb.tweeners[c].unshift(b)},prefilters:[ib],prefilter:function(a,b){b?kb.prefilters.unshift(a):kb.prefilters.push(a)}}),r.speed=function(a,b,c){var d=a&&"object"==typeof a?r.extend({},a):{complete:c||!c&&b||r.isFunction(a)&&a,duration:a,easing:c&&b||b&&!r.isFunction(b)&&b};return r.fx.off?d.duration=0:"number"!=typeof d.duration&&(d.duration in r.fx.speeds?d.duration=r.fx.speeds[d.duration]:d.duration=r.fx.speeds._default),null!=d.queue&&d.queue!==!0||(d.queue="fx"),d.old=d.complete,d.complete=function(){r.isFunction(d.old)&&d.old.call(this),d.queue&&r.dequeue(this,d.queue)},d},r.fn.extend({fadeTo:function(a,b,c,d){return this.filter(da).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=r.isEmptyObject(a),f=r.speed(b,c,d),g=function(){var b=kb(this,r.extend({},a),f);(e||W.get(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=r.timers,g=W.get(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&db.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));!b&&c||r.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=W.get(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=r.timers,g=d?d.length:0;for(c.finish=!0,r.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;b<g;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),r.each(["toggle","show","hide"],function(a,b){var c=r.fn[b];r.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(gb(b,!0),a,d,e)}}),r.each({slideDown:gb("show"),slideUp:gb("hide"),slideToggle:gb("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){r.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),r.timers=[],r.fx.tick=function(){var a,b=0,c=r.timers;for(ab=r.now();b<c.length;b++)a=c[b],a()||c[b]!==a||c.splice(b--,1);c.length||r.fx.stop(),ab=void 0},r.fx.timer=function(a){r.timers.push(a),r.fx.start()},r.fx.interval=13,r.fx.start=function(){bb||(bb=!0,eb())},r.fx.stop=function(){bb=null},r.fx.speeds={slow:600,fast:200,_default:400},r.fn.delay=function(b,c){return b=r.fx?r.fx.speeds[b]||b:b,c=c||"fx",this.queue(c,function(c,d){var e=a.setTimeout(c,b);d.stop=function(){a.clearTimeout(e)}})},function(){var a=d.createElement("input"),b=d.createElement("select"),c=b.appendChild(d.createElement("option"));a.type="checkbox",o.checkOn=""!==a.value,o.optSelected=c.selected,a=d.createElement("input"),a.value="t",a.type="radio",o.radioValue="t"===a.value}();var lb,mb=r.expr.attrHandle;r.fn.extend({attr:function(a,b){return T(this,r.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){r.removeAttr(this,a)})}}),r.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return"undefined"==typeof a.getAttribute?r.prop(a,b,c):(1===f&&r.isXMLDoc(a)||(e=r.attrHooks[b.toLowerCase()]||(r.expr.match.bool.test(b)?lb:void 0)),void 0!==c?null===c?void r.removeAttr(a,b):e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:(a.setAttribute(b,c+""),c):e&&"get"in e&&null!==(d=e.get(a,b))?d:(d=r.find.attr(a,b), +null==d?void 0:d))},attrHooks:{type:{set:function(a,b){if(!o.radioValue&&"radio"===b&&B(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}},removeAttr:function(a,b){var c,d=0,e=b&&b.match(L);if(e&&1===a.nodeType)while(c=e[d++])a.removeAttribute(c)}}),lb={set:function(a,b,c){return b===!1?r.removeAttr(a,c):a.setAttribute(c,c),c}},r.each(r.expr.match.bool.source.match(/\w+/g),function(a,b){var c=mb[b]||r.find.attr;mb[b]=function(a,b,d){var e,f,g=b.toLowerCase();return d||(f=mb[g],mb[g]=e,e=null!=c(a,b,d)?g:null,mb[g]=f),e}});var nb=/^(?:input|select|textarea|button)$/i,ob=/^(?:a|area)$/i;r.fn.extend({prop:function(a,b){return T(this,r.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[r.propFix[a]||a]})}}),r.extend({prop:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return 1===f&&r.isXMLDoc(a)||(b=r.propFix[b]||b,e=r.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=r.find.attr(a,"tabindex");return b?parseInt(b,10):nb.test(a.nodeName)||ob.test(a.nodeName)&&a.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),o.optSelected||(r.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null},set:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}}),r.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){r.propFix[this.toLowerCase()]=this});function pb(a){var b=a.match(L)||[];return b.join(" ")}function qb(a){return a.getAttribute&&a.getAttribute("class")||""}r.fn.extend({addClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).addClass(a.call(this,b,qb(this)))});if("string"==typeof a&&a){b=a.match(L)||[];while(c=this[i++])if(e=qb(c),d=1===c.nodeType&&" "+pb(e)+" "){g=0;while(f=b[g++])d.indexOf(" "+f+" ")<0&&(d+=f+" ");h=pb(d),e!==h&&c.setAttribute("class",h)}}return this},removeClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).removeClass(a.call(this,b,qb(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof a&&a){b=a.match(L)||[];while(c=this[i++])if(e=qb(c),d=1===c.nodeType&&" "+pb(e)+" "){g=0;while(f=b[g++])while(d.indexOf(" "+f+" ")>-1)d=d.replace(" "+f+" "," ");h=pb(d),e!==h&&c.setAttribute("class",h)}}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):r.isFunction(a)?this.each(function(c){r(this).toggleClass(a.call(this,c,qb(this),b),b)}):this.each(function(){var b,d,e,f;if("string"===c){d=0,e=r(this),f=a.match(L)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else void 0!==a&&"boolean"!==c||(b=qb(this),b&&W.set(this,"__className__",b),this.setAttribute&&this.setAttribute("class",b||a===!1?"":W.get(this,"__className__")||""))})},hasClass:function(a){var b,c,d=0;b=" "+a+" ";while(c=this[d++])if(1===c.nodeType&&(" "+pb(qb(c))+" ").indexOf(b)>-1)return!0;return!1}});var rb=/\r/g;r.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=r.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,r(this).val()):a,null==e?e="":"number"==typeof e?e+="":Array.isArray(e)&&(e=r.map(e,function(a){return null==a?"":a+""})),b=r.valHooks[this.type]||r.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=r.valHooks[e.type]||r.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(rb,""):null==c?"":c)}}}),r.extend({valHooks:{option:{get:function(a){var b=r.find.attr(a,"value");return null!=b?b:pb(r.text(a))}},select:{get:function(a){var b,c,d,e=a.options,f=a.selectedIndex,g="select-one"===a.type,h=g?null:[],i=g?f+1:e.length;for(d=f<0?i:g?f:0;d<i;d++)if(c=e[d],(c.selected||d===f)&&!c.disabled&&(!c.parentNode.disabled||!B(c.parentNode,"optgroup"))){if(b=r(c).val(),g)return b;h.push(b)}return h},set:function(a,b){var c,d,e=a.options,f=r.makeArray(b),g=e.length;while(g--)d=e[g],(d.selected=r.inArray(r.valHooks.option.get(d),f)>-1)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),r.each(["radio","checkbox"],function(){r.valHooks[this]={set:function(a,b){if(Array.isArray(b))return a.checked=r.inArray(r(a).val(),b)>-1}},o.checkOn||(r.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var sb=/^(?:focusinfocus|focusoutblur)$/;r.extend(r.event,{trigger:function(b,c,e,f){var g,h,i,j,k,m,n,o=[e||d],p=l.call(b,"type")?b.type:b,q=l.call(b,"namespace")?b.namespace.split("."):[];if(h=i=e=e||d,3!==e.nodeType&&8!==e.nodeType&&!sb.test(p+r.event.triggered)&&(p.indexOf(".")>-1&&(q=p.split("."),p=q.shift(),q.sort()),k=p.indexOf(":")<0&&"on"+p,b=b[r.expando]?b:new r.Event(p,"object"==typeof b&&b),b.isTrigger=f?2:3,b.namespace=q.join("."),b.rnamespace=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=e),c=null==c?[b]:r.makeArray(c,[b]),n=r.event.special[p]||{},f||!n.trigger||n.trigger.apply(e,c)!==!1)){if(!f&&!n.noBubble&&!r.isWindow(e)){for(j=n.delegateType||p,sb.test(j+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),i=h;i===(e.ownerDocument||d)&&o.push(i.defaultView||i.parentWindow||a)}g=0;while((h=o[g++])&&!b.isPropagationStopped())b.type=g>1?j:n.bindType||p,m=(W.get(h,"events")||{})[b.type]&&W.get(h,"handle"),m&&m.apply(h,c),m=k&&h[k],m&&m.apply&&U(h)&&(b.result=m.apply(h,c),b.result===!1&&b.preventDefault());return b.type=p,f||b.isDefaultPrevented()||n._default&&n._default.apply(o.pop(),c)!==!1||!U(e)||k&&r.isFunction(e[p])&&!r.isWindow(e)&&(i=e[k],i&&(e[k]=null),r.event.triggered=p,e[p](),r.event.triggered=void 0,i&&(e[k]=i)),b.result}},simulate:function(a,b,c){var d=r.extend(new r.Event,c,{type:a,isSimulated:!0});r.event.trigger(d,null,b)}}),r.fn.extend({trigger:function(a,b){return this.each(function(){r.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];if(c)return r.event.trigger(a,b,c,!0)}}),r.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(a,b){r.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),r.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),o.focusin="onfocusin"in a,o.focusin||r.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){r.event.simulate(b,a.target,r.event.fix(a))};r.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=W.access(d,b);e||d.addEventListener(a,c,!0),W.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=W.access(d,b)-1;e?W.access(d,b,e):(d.removeEventListener(a,c,!0),W.remove(d,b))}}});var tb=a.location,ub=r.now(),vb=/\?/;r.parseXML=function(b){var c;if(!b||"string"!=typeof b)return null;try{c=(new a.DOMParser).parseFromString(b,"text/xml")}catch(d){c=void 0}return c&&!c.getElementsByTagName("parsererror").length||r.error("Invalid XML: "+b),c};var wb=/\[\]$/,xb=/\r?\n/g,yb=/^(?:submit|button|image|reset|file)$/i,zb=/^(?:input|select|textarea|keygen)/i;function Ab(a,b,c,d){var e;if(Array.isArray(b))r.each(b,function(b,e){c||wb.test(a)?d(a,e):Ab(a+"["+("object"==typeof e&&null!=e?b:"")+"]",e,c,d)});else if(c||"object"!==r.type(b))d(a,b);else for(e in b)Ab(a+"["+e+"]",b[e],c,d)}r.param=function(a,b){var c,d=[],e=function(a,b){var c=r.isFunction(b)?b():b;d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(null==c?"":c)};if(Array.isArray(a)||a.jquery&&!r.isPlainObject(a))r.each(a,function(){e(this.name,this.value)});else for(c in a)Ab(c,a[c],b,e);return d.join("&")},r.fn.extend({serialize:function(){return r.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=r.prop(this,"elements");return a?r.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!r(this).is(":disabled")&&zb.test(this.nodeName)&&!yb.test(a)&&(this.checked||!ja.test(a))}).map(function(a,b){var c=r(this).val();return null==c?null:Array.isArray(c)?r.map(c,function(a){return{name:b.name,value:a.replace(xb,"\r\n")}}):{name:b.name,value:c.replace(xb,"\r\n")}}).get()}});var Bb=/%20/g,Cb=/#.*$/,Db=/([?&])_=[^&]*/,Eb=/^(.*?):[ \t]*([^\r\n]*)$/gm,Fb=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Gb=/^(?:GET|HEAD)$/,Hb=/^\/\//,Ib={},Jb={},Kb="*/".concat("*"),Lb=d.createElement("a");Lb.href=tb.href;function Mb(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(L)||[];if(r.isFunction(c))while(d=f[e++])"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function Nb(a,b,c,d){var e={},f=a===Jb;function g(h){var i;return e[h]=!0,r.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function Ob(a,b){var c,d,e=r.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&r.extend(!0,a,d),a}function Pb(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}if(f)return f!==i[0]&&i.unshift(f),c[f]}function Qb(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}r.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:tb.href,type:"GET",isLocal:Fb.test(tb.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Kb,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":r.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?Ob(Ob(a,r.ajaxSettings),b):Ob(r.ajaxSettings,a)},ajaxPrefilter:Mb(Ib),ajaxTransport:Mb(Jb),ajax:function(b,c){"object"==typeof b&&(c=b,b=void 0),c=c||{};var e,f,g,h,i,j,k,l,m,n,o=r.ajaxSetup({},c),p=o.context||o,q=o.context&&(p.nodeType||p.jquery)?r(p):r.event,s=r.Deferred(),t=r.Callbacks("once memory"),u=o.statusCode||{},v={},w={},x="canceled",y={readyState:0,getResponseHeader:function(a){var b;if(k){if(!h){h={};while(b=Eb.exec(g))h[b[1].toLowerCase()]=b[2]}b=h[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return k?g:null},setRequestHeader:function(a,b){return null==k&&(a=w[a.toLowerCase()]=w[a.toLowerCase()]||a,v[a]=b),this},overrideMimeType:function(a){return null==k&&(o.mimeType=a),this},statusCode:function(a){var b;if(a)if(k)y.always(a[y.status]);else for(b in a)u[b]=[u[b],a[b]];return this},abort:function(a){var b=a||x;return e&&e.abort(b),A(0,b),this}};if(s.promise(y),o.url=((b||o.url||tb.href)+"").replace(Hb,tb.protocol+"//"),o.type=c.method||c.type||o.method||o.type,o.dataTypes=(o.dataType||"*").toLowerCase().match(L)||[""],null==o.crossDomain){j=d.createElement("a");try{j.href=o.url,j.href=j.href,o.crossDomain=Lb.protocol+"//"+Lb.host!=j.protocol+"//"+j.host}catch(z){o.crossDomain=!0}}if(o.data&&o.processData&&"string"!=typeof o.data&&(o.data=r.param(o.data,o.traditional)),Nb(Ib,o,c,y),k)return y;l=r.event&&o.global,l&&0===r.active++&&r.event.trigger("ajaxStart"),o.type=o.type.toUpperCase(),o.hasContent=!Gb.test(o.type),f=o.url.replace(Cb,""),o.hasContent?o.data&&o.processData&&0===(o.contentType||"").indexOf("application/x-www-form-urlencoded")&&(o.data=o.data.replace(Bb,"+")):(n=o.url.slice(f.length),o.data&&(f+=(vb.test(f)?"&":"?")+o.data,delete o.data),o.cache===!1&&(f=f.replace(Db,"$1"),n=(vb.test(f)?"&":"?")+"_="+ub++ +n),o.url=f+n),o.ifModified&&(r.lastModified[f]&&y.setRequestHeader("If-Modified-Since",r.lastModified[f]),r.etag[f]&&y.setRequestHeader("If-None-Match",r.etag[f])),(o.data&&o.hasContent&&o.contentType!==!1||c.contentType)&&y.setRequestHeader("Content-Type",o.contentType),y.setRequestHeader("Accept",o.dataTypes[0]&&o.accepts[o.dataTypes[0]]?o.accepts[o.dataTypes[0]]+("*"!==o.dataTypes[0]?", "+Kb+"; q=0.01":""):o.accepts["*"]);for(m in o.headers)y.setRequestHeader(m,o.headers[m]);if(o.beforeSend&&(o.beforeSend.call(p,y,o)===!1||k))return y.abort();if(x="abort",t.add(o.complete),y.done(o.success),y.fail(o.error),e=Nb(Jb,o,c,y)){if(y.readyState=1,l&&q.trigger("ajaxSend",[y,o]),k)return y;o.async&&o.timeout>0&&(i=a.setTimeout(function(){y.abort("timeout")},o.timeout));try{k=!1,e.send(v,A)}catch(z){if(k)throw z;A(-1,z)}}else A(-1,"No Transport");function A(b,c,d,h){var j,m,n,v,w,x=c;k||(k=!0,i&&a.clearTimeout(i),e=void 0,g=h||"",y.readyState=b>0?4:0,j=b>=200&&b<300||304===b,d&&(v=Pb(o,y,d)),v=Qb(o,v,y,j),j?(o.ifModified&&(w=y.getResponseHeader("Last-Modified"),w&&(r.lastModified[f]=w),w=y.getResponseHeader("etag"),w&&(r.etag[f]=w)),204===b||"HEAD"===o.type?x="nocontent":304===b?x="notmodified":(x=v.state,m=v.data,n=v.error,j=!n)):(n=x,!b&&x||(x="error",b<0&&(b=0))),y.status=b,y.statusText=(c||x)+"",j?s.resolveWith(p,[m,x,y]):s.rejectWith(p,[y,x,n]),y.statusCode(u),u=void 0,l&&q.trigger(j?"ajaxSuccess":"ajaxError",[y,o,j?m:n]),t.fireWith(p,[y,x]),l&&(q.trigger("ajaxComplete",[y,o]),--r.active||r.event.trigger("ajaxStop")))}return y},getJSON:function(a,b,c){return r.get(a,b,c,"json")},getScript:function(a,b){return r.get(a,void 0,b,"script")}}),r.each(["get","post"],function(a,b){r[b]=function(a,c,d,e){return r.isFunction(c)&&(e=e||d,d=c,c=void 0),r.ajax(r.extend({url:a,type:b,dataType:e,data:c,success:d},r.isPlainObject(a)&&a))}}),r._evalUrl=function(a){return r.ajax({url:a,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,"throws":!0})},r.fn.extend({wrapAll:function(a){var b;return this[0]&&(r.isFunction(a)&&(a=a.call(this[0])),b=r(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstElementChild)a=a.firstElementChild;return a}).append(this)),this},wrapInner:function(a){return r.isFunction(a)?this.each(function(b){r(this).wrapInner(a.call(this,b))}):this.each(function(){var b=r(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=r.isFunction(a);return this.each(function(c){r(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(a){return this.parent(a).not("body").each(function(){r(this).replaceWith(this.childNodes)}),this}}),r.expr.pseudos.hidden=function(a){return!r.expr.pseudos.visible(a)},r.expr.pseudos.visible=function(a){return!!(a.offsetWidth||a.offsetHeight||a.getClientRects().length)},r.ajaxSettings.xhr=function(){try{return new a.XMLHttpRequest}catch(b){}};var Rb={0:200,1223:204},Sb=r.ajaxSettings.xhr();o.cors=!!Sb&&"withCredentials"in Sb,o.ajax=Sb=!!Sb,r.ajaxTransport(function(b){var c,d;if(o.cors||Sb&&!b.crossDomain)return{send:function(e,f){var g,h=b.xhr();if(h.open(b.type,b.url,b.async,b.username,b.password),b.xhrFields)for(g in b.xhrFields)h[g]=b.xhrFields[g];b.mimeType&&h.overrideMimeType&&h.overrideMimeType(b.mimeType),b.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest");for(g in e)h.setRequestHeader(g,e[g]);c=function(a){return function(){c&&(c=d=h.onload=h.onerror=h.onabort=h.onreadystatechange=null,"abort"===a?h.abort():"error"===a?"number"!=typeof h.status?f(0,"error"):f(h.status,h.statusText):f(Rb[h.status]||h.status,h.statusText,"text"!==(h.responseType||"text")||"string"!=typeof h.responseText?{binary:h.response}:{text:h.responseText},h.getAllResponseHeaders()))}},h.onload=c(),d=h.onerror=c("error"),void 0!==h.onabort?h.onabort=d:h.onreadystatechange=function(){4===h.readyState&&a.setTimeout(function(){c&&d()})},c=c("abort");try{h.send(b.hasContent&&b.data||null)}catch(i){if(c)throw i}},abort:function(){c&&c()}}}),r.ajaxPrefilter(function(a){a.crossDomain&&(a.contents.script=!1)}),r.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(a){return r.globalEval(a),a}}}),r.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),r.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(e,f){b=r("<script>").prop({charset:a.scriptCharset,src:a.url}).on("load error",c=function(a){b.remove(),c=null,a&&f("error"===a.type?404:200,a.type)}),d.head.appendChild(b[0])},abort:function(){c&&c()}}}});var Tb=[],Ub=/(=)\?(?=&|$)|\?\?/;r.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Tb.pop()||r.expando+"_"+ub++;return this[a]=!0,a}}),r.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=b.jsonp!==!1&&(Ub.test(b.url)?"url":"string"==typeof b.data&&0===(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ub.test(b.data)&&"data");if(h||"jsonp"===b.dataTypes[0])return e=b.jsonpCallback=r.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(Ub,"$1"+e):b.jsonp!==!1&&(b.url+=(vb.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||r.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){void 0===f?r(a).removeProp(e):a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,Tb.push(e)),g&&r.isFunction(f)&&f(g[0]),g=f=void 0}),"script"}),o.createHTMLDocument=function(){var a=d.implementation.createHTMLDocument("").body;return a.innerHTML="<form></form><form></form>",2===a.childNodes.length}(),r.parseHTML=function(a,b,c){if("string"!=typeof a)return[];"boolean"==typeof b&&(c=b,b=!1);var e,f,g;return b||(o.createHTMLDocument?(b=d.implementation.createHTMLDocument(""),e=b.createElement("base"),e.href=d.location.href,b.head.appendChild(e)):b=d),f=C.exec(a),g=!c&&[],f?[b.createElement(f[1])]:(f=qa([a],b,g),g&&g.length&&r(g).remove(),r.merge([],f.childNodes))},r.fn.load=function(a,b,c){var d,e,f,g=this,h=a.indexOf(" ");return h>-1&&(d=pb(a.slice(h)),a=a.slice(0,h)),r.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(e="POST"),g.length>0&&r.ajax({url:a,type:e||"GET",dataType:"html",data:b}).done(function(a){f=arguments,g.html(d?r("<div>").append(r.parseHTML(a)).find(d):a)}).always(c&&function(a,b){g.each(function(){c.apply(this,f||[a.responseText,b,a])})}),this},r.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){r.fn[b]=function(a){return this.on(b,a)}}),r.expr.pseudos.animated=function(a){return r.grep(r.timers,function(b){return a===b.elem}).length},r.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=r.css(a,"position"),l=r(a),m={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=r.css(a,"top"),i=r.css(a,"left"),j=("absolute"===k||"fixed"===k)&&(f+i).indexOf("auto")>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),r.isFunction(b)&&(b=b.call(a,c,r.extend({},h))),null!=b.top&&(m.top=b.top-h.top+g),null!=b.left&&(m.left=b.left-h.left+e),"using"in b?b.using.call(a,m):l.css(m)}},r.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){r.offset.setOffset(this,a,b)});var b,c,d,e,f=this[0];if(f)return f.getClientRects().length?(d=f.getBoundingClientRect(),b=f.ownerDocument,c=b.documentElement,e=b.defaultView,{top:d.top+e.pageYOffset-c.clientTop,left:d.left+e.pageXOffset-c.clientLeft}):{top:0,left:0}},position:function(){if(this[0]){var a,b,c=this[0],d={top:0,left:0};return"fixed"===r.css(c,"position")?b=c.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),B(a[0],"html")||(d=a.offset()),d={top:d.top+r.css(a[0],"borderTopWidth",!0),left:d.left+r.css(a[0],"borderLeftWidth",!0)}),{top:b.top-d.top-r.css(c,"marginTop",!0),left:b.left-d.left-r.css(c,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent;while(a&&"static"===r.css(a,"position"))a=a.offsetParent;return a||ra})}}),r.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c="pageYOffset"===b;r.fn[a]=function(d){return T(this,function(a,d,e){var f;return r.isWindow(a)?f=a:9===a.nodeType&&(f=a.defaultView),void 0===e?f?f[b]:a[d]:void(f?f.scrollTo(c?f.pageXOffset:e,c?e:f.pageYOffset):a[d]=e)},a,d,arguments.length)}}),r.each(["top","left"],function(a,b){r.cssHooks[b]=Pa(o.pixelPosition,function(a,c){if(c)return c=Oa(a,b),Ma.test(c)?r(a).position()[b]+"px":c})}),r.each({Height:"height",Width:"width"},function(a,b){r.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){r.fn[d]=function(e,f){var g=arguments.length&&(c||"boolean"!=typeof e),h=c||(e===!0||f===!0?"margin":"border");return T(this,function(b,c,e){var f;return r.isWindow(b)?0===d.indexOf("outer")?b["inner"+a]:b.document.documentElement["client"+a]:9===b.nodeType?(f=b.documentElement,Math.max(b.body["scroll"+a],f["scroll"+a],b.body["offset"+a],f["offset"+a],f["client"+a])):void 0===e?r.css(b,c,h):r.style(b,c,e,h)},b,g?e:void 0,g)}})}),r.fn.extend({bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}}),r.holdReady=function(a){a?r.readyWait++:r.ready(!0)},r.isArray=Array.isArray,r.parseJSON=JSON.parse,r.nodeName=B,"function"==typeof define&&define.amd&&define("jquery",[],function(){return r});var Vb=a.jQuery,Wb=a.$;return r.noConflict=function(b){return a.$===r&&(a.$=Wb),b&&a.jQuery===r&&(a.jQuery=Vb),r},b||(a.jQuery=a.$=r),r}); diff --git a/site/js/jquery.tablesorter.js b/site/js/jquery.tablesorter.js new file mode 100644 index 0000000..14ce1b6 --- /dev/null +++ b/site/js/jquery.tablesorter.js @@ -0,0 +1,2914 @@ +/*! TableSorter (FORK) v2.31.0 *//* +* Client-side table sorting with ease! +* @requires jQuery v1.2.6+ +* +* Copyright (c) 2007 Christian Bach +* fork maintained by Rob Garrison +* +* Examples and original docs at: http://tablesorter.com +* Dual licensed under the MIT and GPL licenses: +* http://www.opensource.org/licenses/mit-license.php +* http://www.gnu.org/licenses/gpl.html +* +* @type jQuery +* @name tablesorter (FORK) +* @cat Plugins/Tablesorter +* @author Christian Bach - christian.bach@polyester.se +* @contributor Rob Garrison - https://github.com/Mottie/tablesorter +* @docs (fork) - https://mottie.github.io/tablesorter/docs/ +*/ +/*jshint browser:true, jquery:true, unused:false, expr: true */ +;( function( $ ) { + 'use strict'; + var ts = $.tablesorter = { + + version : '2.31.0', + + parsers : [], + widgets : [], + defaults : { + + // *** appearance + theme : 'default', // adds tablesorter-{theme} to the table for styling + widthFixed : false, // adds colgroup to fix widths of columns + showProcessing : false, // show an indeterminate timer icon in the header when the table is sorted or filtered. + + headerTemplate : '{content}',// header layout template (HTML ok); {content} = innerHTML, {icon} = <i/> // class from cssIcon + onRenderTemplate : null, // function( index, template ) { return template; }, // template is a string + onRenderHeader : null, // function( index ) {}, // nothing to return + + // *** functionality + cancelSelection : true, // prevent text selection in the header + tabIndex : true, // add tabindex to header for keyboard accessibility + dateFormat : 'mmddyyyy', // other options: 'ddmmyyy' or 'yyyymmdd' + sortMultiSortKey : 'shiftKey', // key used to select additional columns + sortResetKey : 'ctrlKey', // key used to remove sorting on a column + usNumberFormat : true, // false for German '1.234.567,89' or French '1 234 567,89' + delayInit : false, // if false, the parsed table contents will not update until the first sort + serverSideSorting: false, // if true, server-side sorting should be performed because client-side sorting will be disabled, but the ui and events will still be used. + resort : true, // default setting to trigger a resort after an 'update', 'addRows', 'updateCell', etc has completed + + // *** sort options + headers : {}, // set sorter, string, empty, locked order, sortInitialOrder, filter, etc. + ignoreCase : true, // ignore case while sorting + sortForce : null, // column(s) first sorted; always applied + sortList : [], // Initial sort order; applied initially; updated when manually sorted + sortAppend : null, // column(s) sorted last; always applied + sortStable : false, // when sorting two rows with exactly the same content, the original sort order is maintained + + sortInitialOrder : 'asc', // sort direction on first click + sortLocaleCompare: false, // replace equivalent character (accented characters) + sortReset : false, // third click on the header will reset column to default - unsorted + sortRestart : false, // restart sort to 'sortInitialOrder' when clicking on previously unsorted columns + + emptyTo : 'bottom', // sort empty cell to bottom, top, none, zero, emptyMax, emptyMin + stringTo : 'max', // sort strings in numerical column as max, min, top, bottom, zero + duplicateSpan : true, // colspan cells in the tbody will have duplicated content in the cache for each spanned column + textExtraction : 'basic', // text extraction method/function - function( node, table, cellIndex ) {} + textAttribute : 'data-text',// data-attribute that contains alternate cell text (used in default textExtraction function) + textSorter : null, // choose overall or specific column sorter function( a, b, direction, table, columnIndex ) [alt: ts.sortText] + numberSorter : null, // choose overall numeric sorter function( a, b, direction, maxColumnValue ) + + // *** widget options + initWidgets : true, // apply widgets on tablesorter initialization + widgetClass : 'widget-{name}', // table class name template to match to include a widget + widgets : [], // method to add widgets, e.g. widgets: ['zebra'] + widgetOptions : { + zebra : [ 'even', 'odd' ] // zebra widget alternating row class names + }, + + // *** callbacks + initialized : null, // function( table ) {}, + + // *** extra css class names + tableClass : '', + cssAsc : '', + cssDesc : '', + cssNone : '', + cssHeader : '', + cssHeaderRow : '', + cssProcessing : '', // processing icon applied to header during sort/filter + + cssChildRow : 'tablesorter-childRow', // class name indiciating that a row is to be attached to its parent + cssInfoBlock : 'tablesorter-infoOnly', // don't sort tbody with this class name (only one class name allowed here!) + cssNoSort : 'tablesorter-noSort', // class name added to element inside header; clicking on it won't cause a sort + cssIgnoreRow : 'tablesorter-ignoreRow',// header row to ignore; cells within this row will not be added to c.$headers + + cssIcon : 'tablesorter-icon', // if this class does not exist, the {icon} will not be added from the headerTemplate + cssIconNone : '', // class name added to the icon when there is no column sort + cssIconAsc : '', // class name added to the icon when the column has an ascending sort + cssIconDesc : '', // class name added to the icon when the column has a descending sort + cssIconDisabled : '', // class name added to the icon when the column has a disabled sort + + // *** events + pointerClick : 'click', + pointerDown : 'mousedown', + pointerUp : 'mouseup', + + // *** selectors + selectorHeaders : '> thead th, > thead td', + selectorSort : 'th, td', // jQuery selector of content within selectorHeaders that is clickable to trigger a sort + selectorRemove : '.remove-me', + + // *** advanced + debug : false, + + // *** Internal variables + headerList: [], + empties: {}, + strings: {}, + parsers: [], + + // *** parser options for validator; values must be falsy! + globalize: 0, + imgAttr: 0 + + // removed: widgetZebra: { css: ['even', 'odd'] } + + }, + + // internal css classes - these will ALWAYS be added to + // the table and MUST only contain one class name - fixes #381 + css : { + table : 'tablesorter', + cssHasChild: 'tablesorter-hasChildRow', + childRow : 'tablesorter-childRow', + colgroup : 'tablesorter-colgroup', + header : 'tablesorter-header', + headerRow : 'tablesorter-headerRow', + headerIn : 'tablesorter-header-inner', + icon : 'tablesorter-icon', + processing : 'tablesorter-processing', + sortAsc : 'tablesorter-headerAsc', + sortDesc : 'tablesorter-headerDesc', + sortNone : 'tablesorter-headerUnSorted' + }, + + // labels applied to sortable headers for accessibility (aria) support + language : { + sortAsc : 'Ascending sort applied, ', + sortDesc : 'Descending sort applied, ', + sortNone : 'No sort applied, ', + sortDisabled : 'sorting is disabled', + nextAsc : 'activate to apply an ascending sort', + nextDesc : 'activate to apply a descending sort', + nextNone : 'activate to remove the sort' + }, + + regex : { + templateContent : /\{content\}/g, + templateIcon : /\{icon\}/g, + templateName : /\{name\}/i, + spaces : /\s+/g, + nonWord : /\W/g, + formElements : /(input|select|button|textarea)/i, + + // *** sort functions *** + // regex used in natural sort + // chunk/tokenize numbers & letters + chunk : /(^([+\-]?(?:\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?)?$|^0x[0-9a-f]+$|\d+)/gi, + // replace chunks @ ends + chunks : /(^\\0|\\0$)/, + hex : /^0x[0-9a-f]+$/i, + + // *** formatFloat *** + comma : /,/g, + digitNonUS : /[\s|\.]/g, + digitNegativeTest : /^\s*\([.\d]+\)/, + digitNegativeReplace : /^\s*\(([.\d]+)\)/, + + // *** isDigit *** + digitTest : /^[\-+(]?\d+[)]?$/, + digitReplace : /[,.'"\s]/g + + }, + + // digit sort, text location + string : { + max : 1, + min : -1, + emptymin : 1, + emptymax : -1, + zero : 0, + none : 0, + 'null' : 0, + top : true, + bottom : false + }, + + keyCodes : { + enter : 13 + }, + + // placeholder date parser data (globalize) + dates : {}, + + // These methods can be applied on table.config instance + instanceMethods : {}, + + /* + ▄█████ ██████ ██████ ██ ██ █████▄ + ▀█▄ ██▄▄ ██ ██ ██ ██▄▄██ + ▀█▄ ██▀▀ ██ ██ ██ ██▀▀▀ + █████▀ ██████ ██ ▀████▀ ██ + */ + + setup : function( table, c ) { + // if no thead or tbody, or tablesorter is already present, quit + if ( !table || !table.tHead || table.tBodies.length === 0 || table.hasInitialized === true ) { + if ( ts.debug(c, 'core') ) { + if ( table.hasInitialized ) { + console.warn( 'Stopping initialization. Tablesorter has already been initialized' ); + } else { + console.error( 'Stopping initialization! No table, thead or tbody', table ); + } + } + return; + } + + var tmp = '', + $table = $( table ), + meta = $.metadata; + // initialization flag + table.hasInitialized = false; + // table is being processed flag + table.isProcessing = true; + // make sure to store the config object + table.config = c; + // save the settings where they read + $.data( table, 'tablesorter', c ); + if ( ts.debug(c, 'core') ) { + console[ console.group ? 'group' : 'log' ]( 'Initializing tablesorter v' + ts.version ); + $.data( table, 'startoveralltimer', new Date() ); + } + + // removing this in version 3 (only supports jQuery 1.7+) + c.supportsDataObject = ( function( version ) { + version[ 0 ] = parseInt( version[ 0 ], 10 ); + return ( version[ 0 ] > 1 ) || ( version[ 0 ] === 1 && parseInt( version[ 1 ], 10 ) >= 4 ); + })( $.fn.jquery.split( '.' ) ); + // ensure case insensitivity + c.emptyTo = c.emptyTo.toLowerCase(); + c.stringTo = c.stringTo.toLowerCase(); + c.last = { sortList : [], clickedIndex : -1 }; + // add table theme class only if there isn't already one there + if ( !/tablesorter\-/.test( $table.attr( 'class' ) ) ) { + tmp = ( c.theme !== '' ? ' tablesorter-' + c.theme : '' ); + } + + // give the table a unique id, which will be used in namespace binding + if ( !c.namespace ) { + c.namespace = '.tablesorter' + Math.random().toString( 16 ).slice( 2 ); + } else { + // make sure namespace starts with a period & doesn't have weird characters + c.namespace = '.' + c.namespace.replace( ts.regex.nonWord, '' ); + } + + c.table = table; + c.$table = $table + // add namespace to table to allow bindings on extra elements to target + // the parent table (e.g. parser-input-select) + .addClass( ts.css.table + ' ' + c.tableClass + tmp + ' ' + c.namespace.slice(1) ) + .attr( 'role', 'grid' ); + c.$headers = $table.find( c.selectorHeaders ); + + c.$table.children().children( 'tr' ).attr( 'role', 'row' ); + c.$tbodies = $table.children( 'tbody:not(.' + c.cssInfoBlock + ')' ).attr({ + 'aria-live' : 'polite', + 'aria-relevant' : 'all' + }); + if ( c.$table.children( 'caption' ).length ) { + tmp = c.$table.children( 'caption' )[ 0 ]; + if ( !tmp.id ) { tmp.id = c.namespace.slice( 1 ) + 'caption'; } + c.$table.attr( 'aria-labelledby', tmp.id ); + } + c.widgetInit = {}; // keep a list of initialized widgets + // change textExtraction via data-attribute + c.textExtraction = c.$table.attr( 'data-text-extraction' ) || c.textExtraction || 'basic'; + // build headers + ts.buildHeaders( c ); + // fixate columns if the users supplies the fixedWidth option + // do this after theme has been applied + ts.fixColumnWidth( table ); + // add widgets from class name + ts.addWidgetFromClass( table ); + // add widget options before parsing (e.g. grouping widget has parser settings) + ts.applyWidgetOptions( table ); + // try to auto detect column type, and store in tables config + ts.setupParsers( c ); + // start total row count at zero + c.totalRows = 0; + // only validate options while debugging. See #1528 + if (c.debug) { + ts.validateOptions( c ); + } + // build the cache for the tbody cells + // delayInit will delay building the cache until the user starts a sort + if ( !c.delayInit ) { ts.buildCache( c ); } + // bind all header events and methods + ts.bindEvents( table, c.$headers, true ); + ts.bindMethods( c ); + // get sort list from jQuery data or metadata + // in jQuery < 1.4, an error occurs when calling $table.data() + if ( c.supportsDataObject && typeof $table.data().sortlist !== 'undefined' ) { + c.sortList = $table.data().sortlist; + } else if ( meta && ( $table.metadata() && $table.metadata().sortlist ) ) { + c.sortList = $table.metadata().sortlist; + } + // apply widget init code + ts.applyWidget( table, true ); + // if user has supplied a sort list to constructor + if ( c.sortList.length > 0 ) { + // save sortList before any sortAppend is added + c.last.sortList = c.sortList; + ts.sortOn( c, c.sortList, {}, !c.initWidgets ); + } else { + ts.setHeadersCss( c ); + if ( c.initWidgets ) { + // apply widget format + ts.applyWidget( table, false ); + } + } + + // show processesing icon + if ( c.showProcessing ) { + $table + .unbind( 'sortBegin' + c.namespace + ' sortEnd' + c.namespace ) + .bind( 'sortBegin' + c.namespace + ' sortEnd' + c.namespace, function( e ) { + clearTimeout( c.timerProcessing ); + ts.isProcessing( table ); + if ( e.type === 'sortBegin' ) { + c.timerProcessing = setTimeout( function() { + ts.isProcessing( table, true ); + }, 500 ); + } + }); + } + + // initialized + table.hasInitialized = true; + table.isProcessing = false; + if ( ts.debug(c, 'core') ) { + console.log( 'Overall initialization time:' + ts.benchmark( $.data( table, 'startoveralltimer' ) ) ); + if ( ts.debug(c, 'core') && console.groupEnd ) { console.groupEnd(); } + } + $table.triggerHandler( 'tablesorter-initialized', table ); + if ( typeof c.initialized === 'function' ) { + c.initialized( table ); + } + }, + + bindMethods : function( c ) { + var $table = c.$table, + namespace = c.namespace, + events = ( 'sortReset update updateRows updateAll updateHeaders addRows updateCell updateComplete ' + + 'sorton appendCache updateCache applyWidgetId applyWidgets refreshWidgets destroy mouseup ' + + 'mouseleave ' ).split( ' ' ) + .join( namespace + ' ' ); + // apply easy methods that trigger bound events + $table + .unbind( events.replace( ts.regex.spaces, ' ' ) ) + .bind( 'sortReset' + namespace, function( e, callback ) { + e.stopPropagation(); + // using this.config to ensure functions are getting a non-cached version of the config + ts.sortReset( this.config, function( table ) { + if (table.isApplyingWidgets) { + // multiple triggers in a row... filterReset, then sortReset - see #1361 + // wait to update widgets + setTimeout( function() { + ts.applyWidget( table, '', callback ); + }, 100 ); + } else { + ts.applyWidget( table, '', callback ); + } + }); + }) + .bind( 'updateAll' + namespace, function( e, resort, callback ) { + e.stopPropagation(); + ts.updateAll( this.config, resort, callback ); + }) + .bind( 'update' + namespace + ' updateRows' + namespace, function( e, resort, callback ) { + e.stopPropagation(); + ts.update( this.config, resort, callback ); + }) + .bind( 'updateHeaders' + namespace, function( e, callback ) { + e.stopPropagation(); + ts.updateHeaders( this.config, callback ); + }) + .bind( 'updateCell' + namespace, function( e, cell, resort, callback ) { + e.stopPropagation(); + ts.updateCell( this.config, cell, resort, callback ); + }) + .bind( 'addRows' + namespace, function( e, $row, resort, callback ) { + e.stopPropagation(); + ts.addRows( this.config, $row, resort, callback ); + }) + .bind( 'updateComplete' + namespace, function() { + this.isUpdating = false; + }) + .bind( 'sorton' + namespace, function( e, list, callback, init ) { + e.stopPropagation(); + ts.sortOn( this.config, list, callback, init ); + }) + .bind( 'appendCache' + namespace, function( e, callback, init ) { + e.stopPropagation(); + ts.appendCache( this.config, init ); + if ( $.isFunction( callback ) ) { + callback( this ); + } + }) + // $tbodies variable is used by the tbody sorting widget + .bind( 'updateCache' + namespace, function( e, callback, $tbodies ) { + e.stopPropagation(); + ts.updateCache( this.config, callback, $tbodies ); + }) + .bind( 'applyWidgetId' + namespace, function( e, id ) { + e.stopPropagation(); + ts.applyWidgetId( this, id ); + }) + .bind( 'applyWidgets' + namespace, function( e, callback ) { + e.stopPropagation(); + // apply widgets (false = not initializing) + ts.applyWidget( this, false, callback ); + }) + .bind( 'refreshWidgets' + namespace, function( e, all, dontapply ) { + e.stopPropagation(); + ts.refreshWidgets( this, all, dontapply ); + }) + .bind( 'removeWidget' + namespace, function( e, name, refreshing ) { + e.stopPropagation(); + ts.removeWidget( this, name, refreshing ); + }) + .bind( 'destroy' + namespace, function( e, removeClasses, callback ) { + e.stopPropagation(); + ts.destroy( this, removeClasses, callback ); + }) + .bind( 'resetToLoadState' + namespace, function( e ) { + e.stopPropagation(); + // remove all widgets + ts.removeWidget( this, true, false ); + var tmp = $.extend( true, {}, c.originalSettings ); + // restore original settings; this clears out current settings, but does not clear + // values saved to storage. + c = $.extend( true, {}, ts.defaults, tmp ); + c.originalSettings = tmp; + this.hasInitialized = false; + // setup the entire table again + ts.setup( this, c ); + }); + }, + + bindEvents : function( table, $headers, core ) { + table = $( table )[ 0 ]; + var tmp, + c = table.config, + namespace = c.namespace, + downTarget = null; + if ( core !== true ) { + $headers.addClass( namespace.slice( 1 ) + '_extra_headers' ); + tmp = ts.getClosest( $headers, 'table' ); + if ( tmp.length && tmp[ 0 ].nodeName === 'TABLE' && tmp[ 0 ] !== table ) { + $( tmp[ 0 ] ).addClass( namespace.slice( 1 ) + '_extra_table' ); + } + } + tmp = ( c.pointerDown + ' ' + c.pointerUp + ' ' + c.pointerClick + ' sort keyup ' ) + .replace( ts.regex.spaces, ' ' ) + .split( ' ' ) + .join( namespace + ' ' ); + // apply event handling to headers and/or additional headers (stickyheaders, scroller, etc) + $headers + // http://stackoverflow.com/questions/5312849/jquery-find-self; + .find( c.selectorSort ) + .add( $headers.filter( c.selectorSort ) ) + .unbind( tmp ) + .bind( tmp, function( e, external ) { + var $cell, cell, temp, + $target = $( e.target ), + // wrap event type in spaces, so the match doesn't trigger on inner words + type = ' ' + e.type + ' '; + // only recognize left clicks + if ( ( ( e.which || e.button ) !== 1 && !type.match( ' ' + c.pointerClick + ' | sort | keyup ' ) ) || + // allow pressing enter + ( type === ' keyup ' && e.which !== ts.keyCodes.enter ) || + // allow triggering a click event (e.which is undefined) & ignore physical clicks + ( type.match( ' ' + c.pointerClick + ' ' ) && typeof e.which !== 'undefined' ) ) { + return; + } + // ignore mouseup if mousedown wasn't on the same target + if ( type.match( ' ' + c.pointerUp + ' ' ) && downTarget !== e.target && external !== true ) { + return; + } + // set target on mousedown + if ( type.match( ' ' + c.pointerDown + ' ' ) ) { + downTarget = e.target; + // preventDefault needed or jQuery v1.3.2 and older throws an + // "Uncaught TypeError: handler.apply is not a function" error + temp = $target.jquery.split( '.' ); + if ( temp[ 0 ] === '1' && temp[ 1 ] < 4 ) { e.preventDefault(); } + return; + } + downTarget = null; + $cell = ts.getClosest( $( this ), '.' + ts.css.header ); + // prevent sort being triggered on form elements + if ( ts.regex.formElements.test( e.target.nodeName ) || + // nosort class name, or elements within a nosort container + $target.hasClass( c.cssNoSort ) || $target.parents( '.' + c.cssNoSort ).length > 0 || + // disabled cell directly clicked + $cell.hasClass( 'sorter-false' ) || + // elements within a button + $target.parents( 'button' ).length > 0 ) { + return !c.cancelSelection; + } + if ( c.delayInit && ts.isEmptyObject( c.cache ) ) { + ts.buildCache( c ); + } + // use column index from data-attribute or index of current row; fixes #1116 + c.last.clickedIndex = $cell.attr( 'data-column' ) || $cell.index(); + cell = c.$headerIndexed[ c.last.clickedIndex ][0]; + if ( cell && !cell.sortDisabled ) { + ts.initSort( c, cell, e ); + } + }); + if ( c.cancelSelection ) { + // cancel selection + $headers + .attr( 'unselectable', 'on' ) + .bind( 'selectstart', false ) + .css({ + 'user-select' : 'none', + 'MozUserSelect' : 'none' // not needed for jQuery 1.8+ + }); + } + }, + + buildHeaders : function( c ) { + var $temp, icon, timer, indx; + c.headerList = []; + c.headerContent = []; + c.sortVars = []; + if ( ts.debug(c, 'core') ) { + timer = new Date(); + } + // children tr in tfoot - see issue #196 & #547 + // don't pass table.config to computeColumnIndex here - widgets (math) pass it to "quickly" index tbody cells + c.columns = ts.computeColumnIndex( c.$table.children( 'thead, tfoot' ).children( 'tr' ) ); + // add icon if cssIcon option exists + icon = c.cssIcon ? + '<i class="' + ( c.cssIcon === ts.css.icon ? ts.css.icon : c.cssIcon + ' ' + ts.css.icon ) + '"></i>' : + ''; + // redefine c.$headers here in case of an updateAll that replaces or adds an entire header cell - see #683 + c.$headers = $( $.map( c.$table.find( c.selectorHeaders ), function( elem, index ) { + var configHeaders, header, column, template, tmp, + $elem = $( elem ); + // ignore cell (don't add it to c.$headers) if row has ignoreRow class + if ( ts.getClosest( $elem, 'tr' ).hasClass( c.cssIgnoreRow ) ) { return; } + // transfer data-column to element if not th/td - #1459 + if ( !/(th|td)/i.test( elem.nodeName ) ) { + tmp = ts.getClosest( $elem, 'th, td' ); + $elem.attr( 'data-column', tmp.attr( 'data-column' ) ); + } + // make sure to get header cell & not column indexed cell + configHeaders = ts.getColumnData( c.table, c.headers, index, true ); + // save original header content + c.headerContent[ index ] = $elem.html(); + // if headerTemplate is empty, don't reformat the header cell + if ( c.headerTemplate !== '' && !$elem.find( '.' + ts.css.headerIn ).length ) { + // set up header template + template = c.headerTemplate + .replace( ts.regex.templateContent, $elem.html() ) + .replace( ts.regex.templateIcon, $elem.find( '.' + ts.css.icon ).length ? '' : icon ); + if ( c.onRenderTemplate ) { + header = c.onRenderTemplate.apply( $elem, [ index, template ] ); + // only change t if something is returned + if ( header && typeof header === 'string' ) { + template = header; + } + } + $elem.html( '<div class="' + ts.css.headerIn + '">' + template + '</div>' ); // faster than wrapInner + } + if ( c.onRenderHeader ) { + c.onRenderHeader.apply( $elem, [ index, c, c.$table ] ); + } + column = parseInt( $elem.attr( 'data-column' ), 10 ); + elem.column = column; + tmp = ts.getOrder( ts.getData( $elem, configHeaders, 'sortInitialOrder' ) || c.sortInitialOrder ); + // this may get updated numerous times if there are multiple rows + c.sortVars[ column ] = { + count : -1, // set to -1 because clicking on the header automatically adds one + order : tmp ? + ( c.sortReset ? [ 1, 0, 2 ] : [ 1, 0 ] ) : // desc, asc, unsorted + ( c.sortReset ? [ 0, 1, 2 ] : [ 0, 1 ] ), // asc, desc, unsorted + lockedOrder : false, + sortedBy : '' + }; + tmp = ts.getData( $elem, configHeaders, 'lockedOrder' ) || false; + if ( typeof tmp !== 'undefined' && tmp !== false ) { + c.sortVars[ column ].lockedOrder = true; + c.sortVars[ column ].order = ts.getOrder( tmp ) ? [ 1, 1 ] : [ 0, 0 ]; + } + // add cell to headerList + c.headerList[ index ] = elem; + $elem.addClass( ts.css.header + ' ' + c.cssHeader ); + // add to parent in case there are multiple rows + ts.getClosest( $elem, 'tr' ) + .addClass( ts.css.headerRow + ' ' + c.cssHeaderRow ) + .attr( 'role', 'row' ); + // allow keyboard cursor to focus on element + if ( c.tabIndex ) { + $elem.attr( 'tabindex', 0 ); + } + return elem; + }) ); + // cache headers per column + c.$headerIndexed = []; + for ( indx = 0; indx < c.columns; indx++ ) { + // colspan in header making a column undefined + if ( ts.isEmptyObject( c.sortVars[ indx ] ) ) { + c.sortVars[ indx ] = {}; + } + // Use c.$headers.parent() in case selectorHeaders doesn't point to the th/td + $temp = c.$headers.filter( '[data-column="' + indx + '"]' ); + // target sortable column cells, unless there are none, then use non-sortable cells + // .last() added in jQuery 1.4; use .filter(':last') to maintain compatibility with jQuery v1.2.6 + c.$headerIndexed[ indx ] = $temp.length ? + $temp.not( '.sorter-false' ).length ? + $temp.not( '.sorter-false' ).filter( ':last' ) : + $temp.filter( ':last' ) : + $(); + } + c.$table.find( c.selectorHeaders ).attr({ + scope: 'col', + role : 'columnheader' + }); + // enable/disable sorting + ts.updateHeader( c ); + if ( ts.debug(c, 'core') ) { + console.log( 'Built headers:' + ts.benchmark( timer ) ); + console.log( c.$headers ); + } + }, + + // Use it to add a set of methods to table.config which will be available for all tables. + // This should be done before table initialization + addInstanceMethods : function( methods ) { + $.extend( ts.instanceMethods, methods ); + }, + + /* + █████▄ ▄████▄ █████▄ ▄█████ ██████ █████▄ ▄█████ + ██▄▄██ ██▄▄██ ██▄▄██ ▀█▄ ██▄▄ ██▄▄██ ▀█▄ + ██▀▀▀ ██▀▀██ ██▀██ ▀█▄ ██▀▀ ██▀██ ▀█▄ + ██ ██ ██ ██ ██ █████▀ ██████ ██ ██ █████▀ + */ + setupParsers : function( c, $tbodies ) { + var rows, list, span, max, colIndex, indx, header, configHeaders, + noParser, parser, extractor, time, tbody, len, + table = c.table, + tbodyIndex = 0, + debug = ts.debug(c, 'core'), + debugOutput = {}; + // update table bodies in case we start with an empty table + c.$tbodies = c.$table.children( 'tbody:not(.' + c.cssInfoBlock + ')' ); + tbody = typeof $tbodies === 'undefined' ? c.$tbodies : $tbodies; + len = tbody.length; + if ( len === 0 ) { + return debug ? console.warn( 'Warning: *Empty table!* Not building a parser cache' ) : ''; + } else if ( debug ) { + time = new Date(); + console[ console.group ? 'group' : 'log' ]( 'Detecting parsers for each column' ); + } + list = { + extractors: [], + parsers: [] + }; + while ( tbodyIndex < len ) { + rows = tbody[ tbodyIndex ].rows; + if ( rows.length ) { + colIndex = 0; + max = c.columns; + for ( indx = 0; indx < max; indx++ ) { + header = c.$headerIndexed[ colIndex ]; + if ( header && header.length ) { + // get column indexed table cell; adding true parameter fixes #1362 but + // it would break backwards compatibility... + configHeaders = ts.getColumnData( table, c.headers, colIndex ); // , true ); + // get column parser/extractor + extractor = ts.getParserById( ts.getData( header, configHeaders, 'extractor' ) ); + parser = ts.getParserById( ts.getData( header, configHeaders, 'sorter' ) ); + noParser = ts.getData( header, configHeaders, 'parser' ) === 'false'; + // empty cells behaviour - keeping emptyToBottom for backwards compatibility + c.empties[colIndex] = ( + ts.getData( header, configHeaders, 'empty' ) || + c.emptyTo || ( c.emptyToBottom ? 'bottom' : 'top' ) ).toLowerCase(); + // text strings behaviour in numerical sorts + c.strings[colIndex] = ( + ts.getData( header, configHeaders, 'string' ) || + c.stringTo || + 'max' ).toLowerCase(); + if ( noParser ) { + parser = ts.getParserById( 'no-parser' ); + } + if ( !extractor ) { + // For now, maybe detect someday + extractor = false; + } + if ( !parser ) { + parser = ts.detectParserForColumn( c, rows, -1, colIndex ); + } + if ( debug ) { + debugOutput[ '(' + colIndex + ') ' + header.text() ] = { + parser : parser.id, + extractor : extractor ? extractor.id : 'none', + string : c.strings[ colIndex ], + empty : c.empties[ colIndex ] + }; + } + list.parsers[ colIndex ] = parser; + list.extractors[ colIndex ] = extractor; + span = header[ 0 ].colSpan - 1; + if ( span > 0 ) { + colIndex += span; + max += span; + while ( span + 1 > 0 ) { + // set colspan columns to use the same parsers & extractors + list.parsers[ colIndex - span ] = parser; + list.extractors[ colIndex - span ] = extractor; + span--; + } + } + } + colIndex++; + } + } + tbodyIndex += ( list.parsers.length ) ? len : 1; + } + if ( debug ) { + if ( !ts.isEmptyObject( debugOutput ) ) { + console[ console.table ? 'table' : 'log' ]( debugOutput ); + } else { + console.warn( ' No parsers detected!' ); + } + console.log( 'Completed detecting parsers' + ts.benchmark( time ) ); + if ( console.groupEnd ) { console.groupEnd(); } + } + c.parsers = list.parsers; + c.extractors = list.extractors; + }, + + addParser : function( parser ) { + var indx, + len = ts.parsers.length, + add = true; + for ( indx = 0; indx < len; indx++ ) { + if ( ts.parsers[ indx ].id.toLowerCase() === parser.id.toLowerCase() ) { + add = false; + } + } + if ( add ) { + ts.parsers[ ts.parsers.length ] = parser; + } + }, + + getParserById : function( name ) { + /*jshint eqeqeq:false */ // eslint-disable-next-line eqeqeq + if ( name == 'false' ) { return false; } + var indx, + len = ts.parsers.length; + for ( indx = 0; indx < len; indx++ ) { + if ( ts.parsers[ indx ].id.toLowerCase() === ( name.toString() ).toLowerCase() ) { + return ts.parsers[ indx ]; + } + } + return false; + }, + + detectParserForColumn : function( c, rows, rowIndex, cellIndex ) { + var cur, $node, row, + indx = ts.parsers.length, + node = false, + nodeValue = '', + debug = ts.debug(c, 'core'), + keepLooking = true; + while ( nodeValue === '' && keepLooking ) { + rowIndex++; + row = rows[ rowIndex ]; + // stop looking after 50 empty rows + if ( row && rowIndex < 50 ) { + if ( row.className.indexOf( ts.cssIgnoreRow ) < 0 ) { + node = rows[ rowIndex ].cells[ cellIndex ]; + nodeValue = ts.getElementText( c, node, cellIndex ); + $node = $( node ); + if ( debug ) { + console.log( 'Checking if value was empty on row ' + rowIndex + ', column: ' + + cellIndex + ': "' + nodeValue + '"' ); + } + } + } else { + keepLooking = false; + } + } + while ( --indx >= 0 ) { + cur = ts.parsers[ indx ]; + // ignore the default text parser because it will always be true + if ( cur && cur.id !== 'text' && cur.is && cur.is( nodeValue, c.table, node, $node ) ) { + return cur; + } + } + // nothing found, return the generic parser (text) + return ts.getParserById( 'text' ); + }, + + getElementText : function( c, node, cellIndex ) { + if ( !node ) { return ''; } + var tmp, + extract = c.textExtraction || '', + // node could be a jquery object + // http://jsperf.com/jquery-vs-instanceof-jquery/2 + $node = node.jquery ? node : $( node ); + if ( typeof extract === 'string' ) { + // check data-attribute first when set to 'basic'; don't use node.innerText - it's really slow! + // http://www.kellegous.com/j/2013/02/27/innertext-vs-textcontent/ + if ( extract === 'basic' && typeof ( tmp = $node.attr( c.textAttribute ) ) !== 'undefined' ) { + return $.trim( tmp ); + } + return $.trim( node.textContent || $node.text() ); + } else { + if ( typeof extract === 'function' ) { + return $.trim( extract( $node[ 0 ], c.table, cellIndex ) ); + } else if ( typeof ( tmp = ts.getColumnData( c.table, extract, cellIndex ) ) === 'function' ) { + return $.trim( tmp( $node[ 0 ], c.table, cellIndex ) ); + } + } + // fallback + return $.trim( $node[ 0 ].textContent || $node.text() ); + }, + + // centralized function to extract/parse cell contents + getParsedText : function( c, cell, colIndex, txt ) { + if ( typeof txt === 'undefined' ) { + txt = ts.getElementText( c, cell, colIndex ); + } + // if no parser, make sure to return the txt + var val = '' + txt, + parser = c.parsers[ colIndex ], + extractor = c.extractors[ colIndex ]; + if ( parser ) { + // do extract before parsing, if there is one + if ( extractor && typeof extractor.format === 'function' ) { + txt = extractor.format( txt, c.table, cell, colIndex ); + } + // allow parsing if the string is empty, previously parsing would change it to zero, + // in case the parser needs to extract data from the table cell attributes + val = parser.id === 'no-parser' ? '' : + // make sure txt is a string (extractor may have converted it) + parser.format( '' + txt, c.table, cell, colIndex ); + if ( c.ignoreCase && typeof val === 'string' ) { + val = val.toLowerCase(); + } + } + return val; + }, + + /* + ▄████▄ ▄████▄ ▄████▄ ██ ██ ██████ + ██ ▀▀ ██▄▄██ ██ ▀▀ ██▄▄██ ██▄▄ + ██ ▄▄ ██▀▀██ ██ ▄▄ ██▀▀██ ██▀▀ + ▀████▀ ██ ██ ▀████▀ ██ ██ ██████ + */ + buildCache : function( c, callback, $tbodies ) { + var cache, val, txt, rowIndex, colIndex, tbodyIndex, $tbody, $row, + cols, $cells, cell, cacheTime, totalRows, rowData, prevRowData, + colMax, span, cacheIndex, hasParser, max, len, index, + table = c.table, + parsers = c.parsers, + debug = ts.debug(c, 'core'); + // update tbody variable + c.$tbodies = c.$table.children( 'tbody:not(.' + c.cssInfoBlock + ')' ); + $tbody = typeof $tbodies === 'undefined' ? c.$tbodies : $tbodies, + c.cache = {}; + c.totalRows = 0; + // if no parsers found, return - it's an empty table. + if ( !parsers ) { + return debug ? console.warn( 'Warning: *Empty table!* Not building a cache' ) : ''; + } + if ( debug ) { + cacheTime = new Date(); + } + // processing icon + if ( c.showProcessing ) { + ts.isProcessing( table, true ); + } + for ( tbodyIndex = 0; tbodyIndex < $tbody.length; tbodyIndex++ ) { + colMax = []; // column max value per tbody + cache = c.cache[ tbodyIndex ] = { + normalized: [] // array of normalized row data; last entry contains 'rowData' above + // colMax: # // added at the end + }; + + totalRows = ( $tbody[ tbodyIndex ] && $tbody[ tbodyIndex ].rows.length ) || 0; + for ( rowIndex = 0; rowIndex < totalRows; ++rowIndex ) { + rowData = { + // order: original row order # + // $row : jQuery Object[] + child: [], // child row text (filter widget) + raw: [] // original row text + }; + /** Add the table data to main data array */ + $row = $( $tbody[ tbodyIndex ].rows[ rowIndex ] ); + cols = []; + // ignore "remove-me" rows + if ( $row.hasClass( c.selectorRemove.slice(1) ) ) { + continue; + } + // if this is a child row, add it to the last row's children and continue to the next row + // ignore child row class, if it is the first row + if ( $row.hasClass( c.cssChildRow ) && rowIndex !== 0 ) { + len = cache.normalized.length - 1; + prevRowData = cache.normalized[ len ][ c.columns ]; + prevRowData.$row = prevRowData.$row.add( $row ); + // add 'hasChild' class name to parent row + if ( !$row.prev().hasClass( c.cssChildRow ) ) { + $row.prev().addClass( ts.css.cssHasChild ); + } + // save child row content (un-parsed!) + $cells = $row.children( 'th, td' ); + len = prevRowData.child.length; + prevRowData.child[ len ] = []; + // child row content does not account for colspans/rowspans; so indexing may be off + cacheIndex = 0; + max = c.columns; + for ( colIndex = 0; colIndex < max; colIndex++ ) { + cell = $cells[ colIndex ]; + if ( cell ) { + prevRowData.child[ len ][ colIndex ] = ts.getParsedText( c, cell, colIndex ); + span = $cells[ colIndex ].colSpan - 1; + if ( span > 0 ) { + cacheIndex += span; + max += span; + } + } + cacheIndex++; + } + // go to the next for loop + continue; + } + rowData.$row = $row; + rowData.order = rowIndex; // add original row position to rowCache + cacheIndex = 0; + max = c.columns; + for ( colIndex = 0; colIndex < max; ++colIndex ) { + cell = $row[ 0 ].cells[ colIndex ]; + if ( cell && cacheIndex < c.columns ) { + hasParser = typeof parsers[ cacheIndex ] !== 'undefined'; + if ( !hasParser && debug ) { + console.warn( 'No parser found for row: ' + rowIndex + ', column: ' + colIndex + + '; cell containing: "' + $(cell).text() + '"; does it have a header?' ); + } + val = ts.getElementText( c, cell, cacheIndex ); + rowData.raw[ cacheIndex ] = val; // save original row text + // save raw column text even if there is no parser set + txt = ts.getParsedText( c, cell, cacheIndex, val ); + cols[ cacheIndex ] = txt; + if ( hasParser && ( parsers[ cacheIndex ].type || '' ).toLowerCase() === 'numeric' ) { + // determine column max value (ignore sign) + colMax[ cacheIndex ] = Math.max( Math.abs( txt ) || 0, colMax[ cacheIndex ] || 0 ); + } + // allow colSpan in tbody + span = cell.colSpan - 1; + if ( span > 0 ) { + index = 0; + while ( index <= span ) { + // duplicate text (or not) to spanned columns + // instead of setting duplicate span to empty string, use textExtraction to try to get a value + // see http://stackoverflow.com/q/36449711/145346 + txt = c.duplicateSpan || index === 0 ? + val : + typeof c.textExtraction !== 'string' ? + ts.getElementText( c, cell, cacheIndex + index ) || '' : + ''; + rowData.raw[ cacheIndex + index ] = txt; + cols[ cacheIndex + index ] = txt; + index++; + } + cacheIndex += span; + max += span; + } + } + cacheIndex++; + } + // ensure rowData is always in the same location (after the last column) + cols[ c.columns ] = rowData; + cache.normalized[ cache.normalized.length ] = cols; + } + cache.colMax = colMax; + // total up rows, not including child rows + c.totalRows += cache.normalized.length; + + } + if ( c.showProcessing ) { + ts.isProcessing( table ); // remove processing icon + } + if ( debug ) { + len = Math.min( 5, c.cache[ 0 ].normalized.length ); + console[ console.group ? 'group' : 'log' ]( 'Building cache for ' + c.totalRows + + ' rows (showing ' + len + ' rows in log) and ' + c.columns + ' columns' + + ts.benchmark( cacheTime ) ); + val = {}; + for ( colIndex = 0; colIndex < c.columns; colIndex++ ) { + for ( cacheIndex = 0; cacheIndex < len; cacheIndex++ ) { + if ( !val[ 'row: ' + cacheIndex ] ) { + val[ 'row: ' + cacheIndex ] = {}; + } + val[ 'row: ' + cacheIndex ][ c.$headerIndexed[ colIndex ].text() ] = + c.cache[ 0 ].normalized[ cacheIndex ][ colIndex ]; + } + } + console[ console.table ? 'table' : 'log' ]( val ); + if ( console.groupEnd ) { console.groupEnd(); } + } + if ( $.isFunction( callback ) ) { + callback( table ); + } + }, + + getColumnText : function( table, column, callback, rowFilter ) { + table = $( table )[0]; + var tbodyIndex, rowIndex, cache, row, tbodyLen, rowLen, raw, parsed, $cell, result, + hasCallback = typeof callback === 'function', + allColumns = column === 'all', + data = { raw : [], parsed: [], $cell: [] }, + c = table.config; + if ( ts.isEmptyObject( c ) ) { + if ( ts.debug(c, 'core') ) { + console.warn( 'No cache found - aborting getColumnText function!' ); + } + } else { + tbodyLen = c.$tbodies.length; + for ( tbodyIndex = 0; tbodyIndex < tbodyLen; tbodyIndex++ ) { + cache = c.cache[ tbodyIndex ].normalized; + rowLen = cache.length; + for ( rowIndex = 0; rowIndex < rowLen; rowIndex++ ) { + row = cache[ rowIndex ]; + if ( rowFilter && !row[ c.columns ].$row.is( rowFilter ) ) { + continue; + } + result = true; + parsed = ( allColumns ) ? row.slice( 0, c.columns ) : row[ column ]; + row = row[ c.columns ]; + raw = ( allColumns ) ? row.raw : row.raw[ column ]; + $cell = ( allColumns ) ? row.$row.children() : row.$row.children().eq( column ); + if ( hasCallback ) { + result = callback({ + tbodyIndex : tbodyIndex, + rowIndex : rowIndex, + parsed : parsed, + raw : raw, + $row : row.$row, + $cell : $cell + }); + } + if ( result !== false ) { + data.parsed[ data.parsed.length ] = parsed; + data.raw[ data.raw.length ] = raw; + data.$cell[ data.$cell.length ] = $cell; + } + } + } + // return everything + return data; + } + }, + + /* + ██ ██ █████▄ █████▄ ▄████▄ ██████ ██████ + ██ ██ ██▄▄██ ██ ██ ██▄▄██ ██ ██▄▄ + ██ ██ ██▀▀▀ ██ ██ ██▀▀██ ██ ██▀▀ + ▀████▀ ██ █████▀ ██ ██ ██ ██████ + */ + setHeadersCss : function( c ) { + var indx, column, + list = c.sortList, + len = list.length, + none = ts.css.sortNone + ' ' + c.cssNone, + css = [ ts.css.sortAsc + ' ' + c.cssAsc, ts.css.sortDesc + ' ' + c.cssDesc ], + cssIcon = [ c.cssIconAsc, c.cssIconDesc, c.cssIconNone ], + aria = [ 'ascending', 'descending' ], + updateColumnSort = function($el, index) { + $el + .removeClass( none ) + .addClass( css[ index ] ) + .attr( 'aria-sort', aria[ index ] ) + .find( '.' + ts.css.icon ) + .removeClass( cssIcon[ 2 ] ) + .addClass( cssIcon[ index ] ); + }, + // find the footer + $extras = c.$table + .find( 'tfoot tr' ) + .children( 'td, th' ) + .add( $( c.namespace + '_extra_headers' ) ) + .removeClass( css.join( ' ' ) ), + // remove all header information + $sorted = c.$headers + .add( $( 'thead ' + c.namespace + '_extra_headers' ) ) + .removeClass( css.join( ' ' ) ) + .addClass( none ) + .attr( 'aria-sort', 'none' ) + .find( '.' + ts.css.icon ) + .removeClass( cssIcon.join( ' ' ) ) + .end(); + // add css none to all sortable headers + $sorted + .not( '.sorter-false' ) + .find( '.' + ts.css.icon ) + .addClass( cssIcon[ 2 ] ); + // add disabled css icon class + if ( c.cssIconDisabled ) { + $sorted + .filter( '.sorter-false' ) + .find( '.' + ts.css.icon ) + .addClass( c.cssIconDisabled ); + } + for ( indx = 0; indx < len; indx++ ) { + // direction = 2 means reset! + if ( list[ indx ][ 1 ] !== 2 ) { + // multicolumn sorting updating - see #1005 + // .not(function() {}) needs jQuery 1.4 + // filter(function(i, el) {}) <- el is undefined in jQuery v1.2.6 + $sorted = c.$headers.filter( function( i ) { + // only include headers that are in the sortList (this includes colspans) + var include = true, + $el = c.$headers.eq( i ), + col = parseInt( $el.attr( 'data-column' ), 10 ), + end = col + ts.getClosest( $el, 'th, td' )[0].colSpan; + for ( ; col < end; col++ ) { + include = include ? include || ts.isValueInArray( col, c.sortList ) > -1 : false; + } + return include; + }); + + // choose the :last in case there are nested columns + $sorted = $sorted + .not( '.sorter-false' ) + .filter( '[data-column="' + list[ indx ][ 0 ] + '"]' + ( len === 1 ? ':last' : '' ) ); + if ( $sorted.length ) { + for ( column = 0; column < $sorted.length; column++ ) { + if ( !$sorted[ column ].sortDisabled ) { + updateColumnSort( $sorted.eq( column ), list[ indx ][ 1 ] ); + } + } + } + // add sorted class to footer & extra headers, if they exist + if ( $extras.length ) { + updateColumnSort( $extras.filter( '[data-column="' + list[ indx ][ 0 ] + '"]' ), list[ indx ][ 1 ] ); + } + } + } + // add verbose aria labels + len = c.$headers.length; + for ( indx = 0; indx < len; indx++ ) { + ts.setColumnAriaLabel( c, c.$headers.eq( indx ) ); + } + }, + + getClosest : function( $el, selector ) { + // jQuery v1.2.6 doesn't have closest() + if ( $.fn.closest ) { + return $el.closest( selector ); + } + return $el.is( selector ) ? + $el : + $el.parents( selector ).filter( ':first' ); + }, + + // nextSort (optional), lets you disable next sort text + setColumnAriaLabel : function( c, $header, nextSort ) { + if ( $header.length ) { + var column = parseInt( $header.attr( 'data-column' ), 10 ), + vars = c.sortVars[ column ], + tmp = $header.hasClass( ts.css.sortAsc ) ? + 'sortAsc' : + $header.hasClass( ts.css.sortDesc ) ? 'sortDesc' : 'sortNone', + txt = $.trim( $header.text() ) + ': ' + ts.language[ tmp ]; + if ( $header.hasClass( 'sorter-false' ) || nextSort === false ) { + txt += ts.language.sortDisabled; + } else { + tmp = ( vars.count + 1 ) % vars.order.length; + nextSort = vars.order[ tmp ]; + // if nextSort + txt += ts.language[ nextSort === 0 ? 'nextAsc' : nextSort === 1 ? 'nextDesc' : 'nextNone' ]; + } + $header.attr( 'aria-label', txt ); + if (vars.sortedBy) { + $header.attr( 'data-sortedBy', vars.sortedBy ); + } else { + $header.removeAttr('data-sortedBy'); + } + } + }, + + updateHeader : function( c ) { + var index, isDisabled, $header, col, + table = c.table, + len = c.$headers.length; + for ( index = 0; index < len; index++ ) { + $header = c.$headers.eq( index ); + col = ts.getColumnData( table, c.headers, index, true ); + // add 'sorter-false' class if 'parser-false' is set + isDisabled = ts.getData( $header, col, 'sorter' ) === 'false' || ts.getData( $header, col, 'parser' ) === 'false'; + ts.setColumnSort( c, $header, isDisabled ); + } + }, + + setColumnSort : function( c, $header, isDisabled ) { + var id = c.table.id; + $header[ 0 ].sortDisabled = isDisabled; + $header[ isDisabled ? 'addClass' : 'removeClass' ]( 'sorter-false' ) + .attr( 'aria-disabled', '' + isDisabled ); + // disable tab index on disabled cells + if ( c.tabIndex ) { + if ( isDisabled ) { + $header.removeAttr( 'tabindex' ); + } else { + $header.attr( 'tabindex', '0' ); + } + } + // aria-controls - requires table ID + if ( id ) { + if ( isDisabled ) { + $header.removeAttr( 'aria-controls' ); + } else { + $header.attr( 'aria-controls', id ); + } + } + }, + + updateHeaderSortCount : function( c, list ) { + var col, dir, group, indx, primary, temp, val, order, + sortList = list || c.sortList, + len = sortList.length; + c.sortList = []; + for ( indx = 0; indx < len; indx++ ) { + val = sortList[ indx ]; + // ensure all sortList values are numeric - fixes #127 + col = parseInt( val[ 0 ], 10 ); + // prevents error if sorton array is wrong + if ( col < c.columns ) { + + // set order if not already defined - due to colspan header without associated header cell + // adding this check prevents a javascript error + if ( !c.sortVars[ col ].order ) { + if ( ts.getOrder( c.sortInitialOrder ) ) { + order = c.sortReset ? [ 1, 0, 2 ] : [ 1, 0 ]; + } else { + order = c.sortReset ? [ 0, 1, 2 ] : [ 0, 1 ]; + } + c.sortVars[ col ].order = order; + c.sortVars[ col ].count = 0; + } + + order = c.sortVars[ col ].order; + dir = ( '' + val[ 1 ] ).match( /^(1|d|s|o|n)/ ); + dir = dir ? dir[ 0 ] : ''; + // 0/(a)sc (default), 1/(d)esc, (s)ame, (o)pposite, (n)ext + switch ( dir ) { + case '1' : case 'd' : // descending + dir = 1; + break; + case 's' : // same direction (as primary column) + // if primary sort is set to 's', make it ascending + dir = primary || 0; + break; + case 'o' : + temp = order[ ( primary || 0 ) % order.length ]; + // opposite of primary column; but resets if primary resets + dir = temp === 0 ? 1 : temp === 1 ? 0 : 2; + break; + case 'n' : + dir = order[ ( ++c.sortVars[ col ].count ) % order.length ]; + break; + default : // ascending + dir = 0; + break; + } + primary = indx === 0 ? dir : primary; + group = [ col, parseInt( dir, 10 ) || 0 ]; + c.sortList[ c.sortList.length ] = group; + dir = $.inArray( group[ 1 ], order ); // fixes issue #167 + c.sortVars[ col ].count = dir >= 0 ? dir : group[ 1 ] % order.length; + } + } + }, + + updateAll : function( c, resort, callback ) { + var table = c.table; + table.isUpdating = true; + ts.refreshWidgets( table, true, true ); + ts.buildHeaders( c ); + ts.bindEvents( table, c.$headers, true ); + ts.bindMethods( c ); + ts.commonUpdate( c, resort, callback ); + }, + + update : function( c, resort, callback ) { + var table = c.table; + table.isUpdating = true; + // update sorting (if enabled/disabled) + ts.updateHeader( c ); + ts.commonUpdate( c, resort, callback ); + }, + + // simple header update - see #989 + updateHeaders : function( c, callback ) { + c.table.isUpdating = true; + ts.buildHeaders( c ); + ts.bindEvents( c.table, c.$headers, true ); + ts.resortComplete( c, callback ); + }, + + updateCell : function( c, cell, resort, callback ) { + // updateCell for child rows is a mess - we'll ignore them for now + // eventually I'll break out the "update" row cache code to make everything consistent + if ( $( cell ).closest( 'tr' ).hasClass( c.cssChildRow ) ) { + console.warn('Tablesorter Warning! "updateCell" for child row content has been disabled, use "update" instead'); + return; + } + if ( ts.isEmptyObject( c.cache ) ) { + // empty table, do an update instead - fixes #1099 + ts.updateHeader( c ); + ts.commonUpdate( c, resort, callback ); + return; + } + c.table.isUpdating = true; + c.$table.find( c.selectorRemove ).remove(); + // get position from the dom + var tmp, indx, row, icell, cache, len, + $tbodies = c.$tbodies, + $cell = $( cell ), + // update cache - format: function( s, table, cell, cellIndex ) + // no closest in jQuery v1.2.6 + tbodyIndex = $tbodies.index( ts.getClosest( $cell, 'tbody' ) ), + tbcache = c.cache[ tbodyIndex ], + $row = ts.getClosest( $cell, 'tr' ); + cell = $cell[ 0 ]; // in case cell is a jQuery object + // tbody may not exist if update is initialized while tbody is removed for processing + if ( $tbodies.length && tbodyIndex >= 0 ) { + row = $tbodies.eq( tbodyIndex ).find( 'tr' ).not( '.' + c.cssChildRow ).index( $row ); + cache = tbcache.normalized[ row ]; + len = $row[ 0 ].cells.length; + if ( len !== c.columns ) { + // colspan in here somewhere! + icell = 0; + tmp = false; + for ( indx = 0; indx < len; indx++ ) { + if ( !tmp && $row[ 0 ].cells[ indx ] !== cell ) { + icell += $row[ 0 ].cells[ indx ].colSpan; + } else { + tmp = true; + } + } + } else { + icell = $cell.index(); + } + tmp = ts.getElementText( c, cell, icell ); // raw + cache[ c.columns ].raw[ icell ] = tmp; + tmp = ts.getParsedText( c, cell, icell, tmp ); + cache[ icell ] = tmp; // parsed + if ( ( c.parsers[ icell ].type || '' ).toLowerCase() === 'numeric' ) { + // update column max value (ignore sign) + tbcache.colMax[ icell ] = Math.max( Math.abs( tmp ) || 0, tbcache.colMax[ icell ] || 0 ); + } + tmp = resort !== 'undefined' ? resort : c.resort; + if ( tmp !== false ) { + // widgets will be reapplied + ts.checkResort( c, tmp, callback ); + } else { + // don't reapply widgets is resort is false, just in case it causes + // problems with element focus + ts.resortComplete( c, callback ); + } + } else { + if ( ts.debug(c, 'core') ) { + console.error( 'updateCell aborted, tbody missing or not within the indicated table' ); + } + c.table.isUpdating = false; + } + }, + + addRows : function( c, $row, resort, callback ) { + var txt, val, tbodyIndex, rowIndex, rows, cellIndex, len, order, + cacheIndex, rowData, cells, cell, span, + // allow passing a row string if only one non-info tbody exists in the table + valid = typeof $row === 'string' && c.$tbodies.length === 1 && /<tr/.test( $row || '' ), + table = c.table; + if ( valid ) { + $row = $( $row ); + c.$tbodies.append( $row ); + } else if ( + !$row || + // row is a jQuery object? + !( $row instanceof $ ) || + // row contained in the table? + ( ts.getClosest( $row, 'table' )[ 0 ] !== c.table ) + ) { + if ( ts.debug(c, 'core') ) { + console.error( 'addRows method requires (1) a jQuery selector reference to rows that have already ' + + 'been added to the table, or (2) row HTML string to be added to a table with only one tbody' ); + } + return false; + } + table.isUpdating = true; + if ( ts.isEmptyObject( c.cache ) ) { + // empty table, do an update instead - fixes #450 + ts.updateHeader( c ); + ts.commonUpdate( c, resort, callback ); + } else { + rows = $row.filter( 'tr' ).attr( 'role', 'row' ).length; + tbodyIndex = c.$tbodies.index( $row.parents( 'tbody' ).filter( ':first' ) ); + // fixes adding rows to an empty table - see issue #179 + if ( !( c.parsers && c.parsers.length ) ) { + ts.setupParsers( c ); + } + // add each row + for ( rowIndex = 0; rowIndex < rows; rowIndex++ ) { + cacheIndex = 0; + len = $row[ rowIndex ].cells.length; + order = c.cache[ tbodyIndex ].normalized.length; + cells = []; + rowData = { + child : [], + raw : [], + $row : $row.eq( rowIndex ), + order : order + }; + // add each cell + for ( cellIndex = 0; cellIndex < len; cellIndex++ ) { + cell = $row[ rowIndex ].cells[ cellIndex ]; + txt = ts.getElementText( c, cell, cacheIndex ); + rowData.raw[ cacheIndex ] = txt; + val = ts.getParsedText( c, cell, cacheIndex, txt ); + cells[ cacheIndex ] = val; + if ( ( c.parsers[ cacheIndex ].type || '' ).toLowerCase() === 'numeric' ) { + // update column max value (ignore sign) + c.cache[ tbodyIndex ].colMax[ cacheIndex ] = + Math.max( Math.abs( val ) || 0, c.cache[ tbodyIndex ].colMax[ cacheIndex ] || 0 ); + } + span = cell.colSpan - 1; + if ( span > 0 ) { + cacheIndex += span; + } + cacheIndex++; + } + // add the row data to the end + cells[ c.columns ] = rowData; + // update cache + c.cache[ tbodyIndex ].normalized[ order ] = cells; + } + // resort using current settings + ts.checkResort( c, resort, callback ); + } + }, + + updateCache : function( c, callback, $tbodies ) { + // rebuild parsers + if ( !( c.parsers && c.parsers.length ) ) { + ts.setupParsers( c, $tbodies ); + } + // rebuild the cache map + ts.buildCache( c, callback, $tbodies ); + }, + + // init flag (true) used by pager plugin to prevent widget application + // renamed from appendToTable + appendCache : function( c, init ) { + var parsed, totalRows, $tbody, $curTbody, rowIndex, tbodyIndex, appendTime, + table = c.table, + $tbodies = c.$tbodies, + rows = [], + cache = c.cache; + // empty table - fixes #206/#346 + if ( ts.isEmptyObject( cache ) ) { + // run pager appender in case the table was just emptied + return c.appender ? c.appender( table, rows ) : + table.isUpdating ? c.$table.triggerHandler( 'updateComplete', table ) : ''; // Fixes #532 + } + if ( ts.debug(c, 'core') ) { + appendTime = new Date(); + } + for ( tbodyIndex = 0; tbodyIndex < $tbodies.length; tbodyIndex++ ) { + $tbody = $tbodies.eq( tbodyIndex ); + if ( $tbody.length ) { + // detach tbody for manipulation + $curTbody = ts.processTbody( table, $tbody, true ); + parsed = cache[ tbodyIndex ].normalized; + totalRows = parsed.length; + for ( rowIndex = 0; rowIndex < totalRows; rowIndex++ ) { + rows[rows.length] = parsed[ rowIndex ][ c.columns ].$row; + // removeRows used by the pager plugin; don't render if using ajax - fixes #411 + if ( !c.appender || ( c.pager && !c.pager.removeRows && !c.pager.ajax ) ) { + $curTbody.append( parsed[ rowIndex ][ c.columns ].$row ); + } + } + // restore tbody + ts.processTbody( table, $curTbody, false ); + } + } + if ( c.appender ) { + c.appender( table, rows ); + } + if ( ts.debug(c, 'core') ) { + console.log( 'Rebuilt table' + ts.benchmark( appendTime ) ); + } + // apply table widgets; but not before ajax completes + if ( !init && !c.appender ) { + ts.applyWidget( table ); + } + if ( table.isUpdating ) { + c.$table.triggerHandler( 'updateComplete', table ); + } + }, + + commonUpdate : function( c, resort, callback ) { + // remove rows/elements before update + c.$table.find( c.selectorRemove ).remove(); + // rebuild parsers + ts.setupParsers( c ); + // rebuild the cache map + ts.buildCache( c ); + ts.checkResort( c, resort, callback ); + }, + + /* + ▄█████ ▄████▄ █████▄ ██████ ██ █████▄ ▄████▄ + ▀█▄ ██ ██ ██▄▄██ ██ ██ ██ ██ ██ ▄▄▄ + ▀█▄ ██ ██ ██▀██ ██ ██ ██ ██ ██ ▀██ + █████▀ ▀████▀ ██ ██ ██ ██ ██ ██ ▀████▀ + */ + initSort : function( c, cell, event ) { + if ( c.table.isUpdating ) { + // let any updates complete before initializing a sort + return setTimeout( function() { + ts.initSort( c, cell, event ); + }, 50 ); + } + + var arry, indx, headerIndx, dir, temp, tmp, $header, + notMultiSort = !event[ c.sortMultiSortKey ], + table = c.table, + len = c.$headers.length, + th = ts.getClosest( $( cell ), 'th, td' ), + col = parseInt( th.attr( 'data-column' ), 10 ), + sortedBy = event.type === 'mouseup' ? 'user' : event.type, + order = c.sortVars[ col ].order; + th = th[0]; + // Only call sortStart if sorting is enabled + c.$table.triggerHandler( 'sortStart', table ); + // get current column sort order + tmp = ( c.sortVars[ col ].count + 1 ) % order.length; + c.sortVars[ col ].count = event[ c.sortResetKey ] ? 2 : tmp; + // reset all sorts on non-current column - issue #30 + if ( c.sortRestart ) { + for ( headerIndx = 0; headerIndx < len; headerIndx++ ) { + $header = c.$headers.eq( headerIndx ); + tmp = parseInt( $header.attr( 'data-column' ), 10 ); + // only reset counts on columns that weren't just clicked on and if not included in a multisort + if ( col !== tmp && ( notMultiSort || $header.hasClass( ts.css.sortNone ) ) ) { + c.sortVars[ tmp ].count = -1; + } + } + } + // user only wants to sort on one column + if ( notMultiSort ) { + $.each( c.sortVars, function( i ) { + c.sortVars[ i ].sortedBy = ''; + }); + // flush the sort list + c.sortList = []; + c.last.sortList = []; + if ( c.sortForce !== null ) { + arry = c.sortForce; + for ( indx = 0; indx < arry.length; indx++ ) { + if ( arry[ indx ][ 0 ] !== col ) { + c.sortList[ c.sortList.length ] = arry[ indx ]; + c.sortVars[ arry[ indx ][ 0 ] ].sortedBy = 'sortForce'; + } + } + } + // add column to sort list + dir = order[ c.sortVars[ col ].count ]; + if ( dir < 2 ) { + c.sortList[ c.sortList.length ] = [ col, dir ]; + c.sortVars[ col ].sortedBy = sortedBy; + // add other columns if header spans across multiple + if ( th.colSpan > 1 ) { + for ( indx = 1; indx < th.colSpan; indx++ ) { + c.sortList[ c.sortList.length ] = [ col + indx, dir ]; + // update count on columns in colSpan + c.sortVars[ col + indx ].count = $.inArray( dir, order ); + c.sortVars[ col + indx ].sortedBy = sortedBy; + } + } + } + // multi column sorting + } else { + // get rid of the sortAppend before adding more - fixes issue #115 & #523 + c.sortList = $.extend( [], c.last.sortList ); + + // the user has clicked on an already sorted column + if ( ts.isValueInArray( col, c.sortList ) >= 0 ) { + // reverse the sorting direction + c.sortVars[ col ].sortedBy = sortedBy; + for ( indx = 0; indx < c.sortList.length; indx++ ) { + tmp = c.sortList[ indx ]; + if ( tmp[ 0 ] === col ) { + // order.count seems to be incorrect when compared to cell.count + tmp[ 1 ] = order[ c.sortVars[ col ].count ]; + if ( tmp[1] === 2 ) { + c.sortList.splice( indx, 1 ); + c.sortVars[ col ].count = -1; + } + } + } + } else { + // add column to sort list array + dir = order[ c.sortVars[ col ].count ]; + c.sortVars[ col ].sortedBy = sortedBy; + if ( dir < 2 ) { + c.sortList[ c.sortList.length ] = [ col, dir ]; + // add other columns if header spans across multiple + if ( th.colSpan > 1 ) { + for ( indx = 1; indx < th.colSpan; indx++ ) { + c.sortList[ c.sortList.length ] = [ col + indx, dir ]; + // update count on columns in colSpan + c.sortVars[ col + indx ].count = $.inArray( dir, order ); + c.sortVars[ col + indx ].sortedBy = sortedBy; + } + } + } + } + } + // save sort before applying sortAppend + c.last.sortList = $.extend( [], c.sortList ); + if ( c.sortList.length && c.sortAppend ) { + arry = $.isArray( c.sortAppend ) ? c.sortAppend : c.sortAppend[ c.sortList[ 0 ][ 0 ] ]; + if ( !ts.isEmptyObject( arry ) ) { + for ( indx = 0; indx < arry.length; indx++ ) { + if ( arry[ indx ][ 0 ] !== col && ts.isValueInArray( arry[ indx ][ 0 ], c.sortList ) < 0 ) { + dir = arry[ indx ][ 1 ]; + temp = ( '' + dir ).match( /^(a|d|s|o|n)/ ); + if ( temp ) { + tmp = c.sortList[ 0 ][ 1 ]; + switch ( temp[ 0 ] ) { + case 'd' : + dir = 1; + break; + case 's' : + dir = tmp; + break; + case 'o' : + dir = tmp === 0 ? 1 : 0; + break; + case 'n' : + dir = ( tmp + 1 ) % order.length; + break; + default: + dir = 0; + break; + } + } + c.sortList[ c.sortList.length ] = [ arry[ indx ][ 0 ], dir ]; + c.sortVars[ arry[ indx ][ 0 ] ].sortedBy = 'sortAppend'; + } + } + } + } + // sortBegin event triggered immediately before the sort + c.$table.triggerHandler( 'sortBegin', table ); + // setTimeout needed so the processing icon shows up + setTimeout( function() { + // set css for headers + ts.setHeadersCss( c ); + ts.multisort( c ); + ts.appendCache( c ); + c.$table.triggerHandler( 'sortBeforeEnd', table ); + c.$table.triggerHandler( 'sortEnd', table ); + }, 1 ); + }, + + // sort multiple columns + multisort : function( c ) { /*jshint loopfunc:true */ + var tbodyIndex, sortTime, colMax, rows, tmp, + table = c.table, + sorter = [], + dir = 0, + textSorter = c.textSorter || '', + sortList = c.sortList, + sortLen = sortList.length, + len = c.$tbodies.length; + if ( c.serverSideSorting || ts.isEmptyObject( c.cache ) ) { + // empty table - fixes #206/#346 + return; + } + if ( ts.debug(c, 'core') ) { sortTime = new Date(); } + // cache textSorter to optimize speed + if ( typeof textSorter === 'object' ) { + colMax = c.columns; + while ( colMax-- ) { + tmp = ts.getColumnData( table, textSorter, colMax ); + if ( typeof tmp === 'function' ) { + sorter[ colMax ] = tmp; + } + } + } + for ( tbodyIndex = 0; tbodyIndex < len; tbodyIndex++ ) { + colMax = c.cache[ tbodyIndex ].colMax; + rows = c.cache[ tbodyIndex ].normalized; + + rows.sort( function( a, b ) { + var sortIndex, num, col, order, sort, x, y; + // rows is undefined here in IE, so don't use it! + for ( sortIndex = 0; sortIndex < sortLen; sortIndex++ ) { + col = sortList[ sortIndex ][ 0 ]; + order = sortList[ sortIndex ][ 1 ]; + // sort direction, true = asc, false = desc + dir = order === 0; + + if ( c.sortStable && a[ col ] === b[ col ] && sortLen === 1 ) { + return a[ c.columns ].order - b[ c.columns ].order; + } + + // fallback to natural sort since it is more robust + num = /n/i.test( ts.getSortType( c.parsers, col ) ); + if ( num && c.strings[ col ] ) { + // sort strings in numerical columns + if ( typeof ( ts.string[ c.strings[ col ] ] ) === 'boolean' ) { + num = ( dir ? 1 : -1 ) * ( ts.string[ c.strings[ col ] ] ? -1 : 1 ); + } else { + num = ( c.strings[ col ] ) ? ts.string[ c.strings[ col ] ] || 0 : 0; + } + // fall back to built-in numeric sort + // var sort = $.tablesorter['sort' + s]( a[col], b[col], dir, colMax[col], table ); + sort = c.numberSorter ? c.numberSorter( a[ col ], b[ col ], dir, colMax[ col ], table ) : + ts[ 'sortNumeric' + ( dir ? 'Asc' : 'Desc' ) ]( a[ col ], b[ col ], num, colMax[ col ], col, c ); + } else { + // set a & b depending on sort direction + x = dir ? a : b; + y = dir ? b : a; + // text sort function + if ( typeof textSorter === 'function' ) { + // custom OVERALL text sorter + sort = textSorter( x[ col ], y[ col ], dir, col, table ); + } else if ( typeof sorter[ col ] === 'function' ) { + // custom text sorter for a SPECIFIC COLUMN + sort = sorter[ col ]( x[ col ], y[ col ], dir, col, table ); + } else { + // fall back to natural sort + sort = ts[ 'sortNatural' + ( dir ? 'Asc' : 'Desc' ) ]( a[ col ] || '', b[ col ] || '', col, c ); + } + } + if ( sort ) { return sort; } + } + return a[ c.columns ].order - b[ c.columns ].order; + }); + } + if ( ts.debug(c, 'core') ) { + console.log( 'Applying sort ' + sortList.toString() + ts.benchmark( sortTime ) ); + } + }, + + resortComplete : function( c, callback ) { + if ( c.table.isUpdating ) { + c.$table.triggerHandler( 'updateComplete', c.table ); + } + if ( $.isFunction( callback ) ) { + callback( c.table ); + } + }, + + checkResort : function( c, resort, callback ) { + var sortList = $.isArray( resort ) ? resort : c.sortList, + // if no resort parameter is passed, fallback to config.resort (true by default) + resrt = typeof resort === 'undefined' ? c.resort : resort; + // don't try to resort if the table is still processing + // this will catch spamming of the updateCell method + if ( resrt !== false && !c.serverSideSorting && !c.table.isProcessing ) { + if ( sortList.length ) { + ts.sortOn( c, sortList, function() { + ts.resortComplete( c, callback ); + }, true ); + } else { + ts.sortReset( c, function() { + ts.resortComplete( c, callback ); + ts.applyWidget( c.table, false ); + } ); + } + } else { + ts.resortComplete( c, callback ); + ts.applyWidget( c.table, false ); + } + }, + + sortOn : function( c, list, callback, init ) { + var indx, + table = c.table; + c.$table.triggerHandler( 'sortStart', table ); + for (indx = 0; indx < c.columns; indx++) { + c.sortVars[ indx ].sortedBy = ts.isValueInArray( indx, list ) > -1 ? 'sorton' : ''; + } + // update header count index + ts.updateHeaderSortCount( c, list ); + // set css for headers + ts.setHeadersCss( c ); + // fixes #346 + if ( c.delayInit && ts.isEmptyObject( c.cache ) ) { + ts.buildCache( c ); + } + c.$table.triggerHandler( 'sortBegin', table ); + // sort the table and append it to the dom + ts.multisort( c ); + ts.appendCache( c, init ); + c.$table.triggerHandler( 'sortBeforeEnd', table ); + c.$table.triggerHandler( 'sortEnd', table ); + ts.applyWidget( table ); + if ( $.isFunction( callback ) ) { + callback( table ); + } + }, + + sortReset : function( c, callback ) { + c.sortList = []; + var indx; + for (indx = 0; indx < c.columns; indx++) { + c.sortVars[ indx ].count = -1; + c.sortVars[ indx ].sortedBy = ''; + } + ts.setHeadersCss( c ); + ts.multisort( c ); + ts.appendCache( c ); + if ( $.isFunction( callback ) ) { + callback( c.table ); + } + }, + + getSortType : function( parsers, column ) { + return ( parsers && parsers[ column ] ) ? parsers[ column ].type || '' : ''; + }, + + getOrder : function( val ) { + // look for 'd' in 'desc' order; return true + return ( /^d/i.test( val ) || val === 1 ); + }, + + // Natural sort - https://github.com/overset/javascript-natural-sort (date sorting removed) + sortNatural : function( a, b ) { + if ( a === b ) { return 0; } + a = ( a || '' ).toString(); + b = ( b || '' ).toString(); + var aNum, bNum, aFloat, bFloat, indx, max, + regex = ts.regex; + // first try and sort Hex codes + if ( regex.hex.test( b ) ) { + aNum = parseInt( a.match( regex.hex ), 16 ); + bNum = parseInt( b.match( regex.hex ), 16 ); + if ( aNum < bNum ) { return -1; } + if ( aNum > bNum ) { return 1; } + } + // chunk/tokenize + aNum = a.replace( regex.chunk, '\\0$1\\0' ).replace( regex.chunks, '' ).split( '\\0' ); + bNum = b.replace( regex.chunk, '\\0$1\\0' ).replace( regex.chunks, '' ).split( '\\0' ); + max = Math.max( aNum.length, bNum.length ); + // natural sorting through split numeric strings and default strings + for ( indx = 0; indx < max; indx++ ) { + // find floats not starting with '0', string or 0 if not defined + aFloat = isNaN( aNum[ indx ] ) ? aNum[ indx ] || 0 : parseFloat( aNum[ indx ] ) || 0; + bFloat = isNaN( bNum[ indx ] ) ? bNum[ indx ] || 0 : parseFloat( bNum[ indx ] ) || 0; + // handle numeric vs string comparison - number < string - (Kyle Adams) + if ( isNaN( aFloat ) !== isNaN( bFloat ) ) { return isNaN( aFloat ) ? 1 : -1; } + // rely on string comparison if different types - i.e. '02' < 2 != '02' < '2' + if ( typeof aFloat !== typeof bFloat ) { + aFloat += ''; + bFloat += ''; + } + if ( aFloat < bFloat ) { return -1; } + if ( aFloat > bFloat ) { return 1; } + } + return 0; + }, + + sortNaturalAsc : function( a, b, col, c ) { + if ( a === b ) { return 0; } + var empty = ts.string[ ( c.empties[ col ] || c.emptyTo ) ]; + if ( a === '' && empty !== 0 ) { return typeof empty === 'boolean' ? ( empty ? -1 : 1 ) : -empty || -1; } + if ( b === '' && empty !== 0 ) { return typeof empty === 'boolean' ? ( empty ? 1 : -1 ) : empty || 1; } + return ts.sortNatural( a, b ); + }, + + sortNaturalDesc : function( a, b, col, c ) { + if ( a === b ) { return 0; } + var empty = ts.string[ ( c.empties[ col ] || c.emptyTo ) ]; + if ( a === '' && empty !== 0 ) { return typeof empty === 'boolean' ? ( empty ? -1 : 1 ) : empty || 1; } + if ( b === '' && empty !== 0 ) { return typeof empty === 'boolean' ? ( empty ? 1 : -1 ) : -empty || -1; } + return ts.sortNatural( b, a ); + }, + + // basic alphabetical sort + sortText : function( a, b ) { + return a > b ? 1 : ( a < b ? -1 : 0 ); + }, + + // return text string value by adding up ascii value + // so the text is somewhat sorted when using a digital sort + // this is NOT an alphanumeric sort + getTextValue : function( val, num, max ) { + if ( max ) { + // make sure the text value is greater than the max numerical value (max) + var indx, + len = val ? val.length : 0, + n = max + num; + for ( indx = 0; indx < len; indx++ ) { + n += val.charCodeAt( indx ); + } + return num * n; + } + return 0; + }, + + sortNumericAsc : function( a, b, num, max, col, c ) { + if ( a === b ) { return 0; } + var empty = ts.string[ ( c.empties[ col ] || c.emptyTo ) ]; + if ( a === '' && empty !== 0 ) { return typeof empty === 'boolean' ? ( empty ? -1 : 1 ) : -empty || -1; } + if ( b === '' && empty !== 0 ) { return typeof empty === 'boolean' ? ( empty ? 1 : -1 ) : empty || 1; } + if ( isNaN( a ) ) { a = ts.getTextValue( a, num, max ); } + if ( isNaN( b ) ) { b = ts.getTextValue( b, num, max ); } + return a - b; + }, + + sortNumericDesc : function( a, b, num, max, col, c ) { + if ( a === b ) { return 0; } + var empty = ts.string[ ( c.empties[ col ] || c.emptyTo ) ]; + if ( a === '' && empty !== 0 ) { return typeof empty === 'boolean' ? ( empty ? -1 : 1 ) : empty || 1; } + if ( b === '' && empty !== 0 ) { return typeof empty === 'boolean' ? ( empty ? 1 : -1 ) : -empty || -1; } + if ( isNaN( a ) ) { a = ts.getTextValue( a, num, max ); } + if ( isNaN( b ) ) { b = ts.getTextValue( b, num, max ); } + return b - a; + }, + + sortNumeric : function( a, b ) { + return a - b; + }, + + /* + ██ ██ ██ ██ █████▄ ▄████▄ ██████ ██████ ▄█████ + ██ ██ ██ ██ ██ ██ ██ ▄▄▄ ██▄▄ ██ ▀█▄ + ██ ██ ██ ██ ██ ██ ██ ▀██ ██▀▀ ██ ▀█▄ + ███████▀ ██ █████▀ ▀████▀ ██████ ██ █████▀ + */ + addWidget : function( widget ) { + if ( widget.id && !ts.isEmptyObject( ts.getWidgetById( widget.id ) ) ) { + console.warn( '"' + widget.id + '" widget was loaded more than once!' ); + } + ts.widgets[ ts.widgets.length ] = widget; + }, + + hasWidget : function( $table, name ) { + $table = $( $table ); + return $table.length && $table[ 0 ].config && $table[ 0 ].config.widgetInit[ name ] || false; + }, + + getWidgetById : function( name ) { + var indx, widget, + len = ts.widgets.length; + for ( indx = 0; indx < len; indx++ ) { + widget = ts.widgets[ indx ]; + if ( widget && widget.id && widget.id.toLowerCase() === name.toLowerCase() ) { + return widget; + } + } + }, + + applyWidgetOptions : function( table ) { + var indx, widget, wo, + c = table.config, + len = c.widgets.length; + if ( len ) { + for ( indx = 0; indx < len; indx++ ) { + widget = ts.getWidgetById( c.widgets[ indx ] ); + if ( widget && widget.options ) { + wo = $.extend( true, {}, widget.options ); + c.widgetOptions = $.extend( true, wo, c.widgetOptions ); + // add widgetOptions to defaults for option validator + $.extend( true, ts.defaults.widgetOptions, widget.options ); + } + } + } + }, + + addWidgetFromClass : function( table ) { + var len, indx, + c = table.config, + // look for widgets to apply from table class + // don't match from 'ui-widget-content'; use \S instead of \w to include widgets + // with dashes in the name, e.g. "widget-test-2" extracts out "test-2" + regex = '^' + c.widgetClass.replace( ts.regex.templateName, '(\\S+)+' ) + '$', + widgetClass = new RegExp( regex, 'g' ), + // split up table class (widget id's can include dashes) - stop using match + // otherwise only one widget gets extracted, see #1109 + widgets = ( table.className || '' ).split( ts.regex.spaces ); + if ( widgets.length ) { + len = widgets.length; + for ( indx = 0; indx < len; indx++ ) { + if ( widgets[ indx ].match( widgetClass ) ) { + c.widgets[ c.widgets.length ] = widgets[ indx ].replace( widgetClass, '$1' ); + } + } + } + }, + + applyWidgetId : function( table, id, init ) { + table = $(table)[0]; + var applied, time, name, + c = table.config, + wo = c.widgetOptions, + debug = ts.debug(c, 'core'), + widget = ts.getWidgetById( id ); + if ( widget ) { + name = widget.id; + applied = false; + // add widget name to option list so it gets reapplied after sorting, filtering, etc + if ( $.inArray( name, c.widgets ) < 0 ) { + c.widgets[ c.widgets.length ] = name; + } + if ( debug ) { time = new Date(); } + + if ( init || !( c.widgetInit[ name ] ) ) { + // set init flag first to prevent calling init more than once (e.g. pager) + c.widgetInit[ name ] = true; + if ( table.hasInitialized ) { + // don't reapply widget options on tablesorter init + ts.applyWidgetOptions( table ); + } + if ( typeof widget.init === 'function' ) { + applied = true; + if ( debug ) { + console[ console.group ? 'group' : 'log' ]( 'Initializing ' + name + ' widget' ); + } + widget.init( table, widget, c, wo ); + } + } + if ( !init && typeof widget.format === 'function' ) { + applied = true; + if ( debug ) { + console[ console.group ? 'group' : 'log' ]( 'Updating ' + name + ' widget' ); + } + widget.format( table, c, wo, false ); + } + if ( debug ) { + if ( applied ) { + console.log( 'Completed ' + ( init ? 'initializing ' : 'applying ' ) + name + ' widget' + ts.benchmark( time ) ); + if ( console.groupEnd ) { console.groupEnd(); } + } + } + } + }, + + applyWidget : function( table, init, callback ) { + table = $( table )[ 0 ]; // in case this is called externally + var indx, len, names, widget, time, + c = table.config, + debug = ts.debug(c, 'core'), + widgets = []; + // prevent numerous consecutive widget applications + if ( init !== false && table.hasInitialized && ( table.isApplyingWidgets || table.isUpdating ) ) { + return; + } + if ( debug ) { time = new Date(); } + ts.addWidgetFromClass( table ); + // prevent "tablesorter-ready" from firing multiple times in a row + clearTimeout( c.timerReady ); + if ( c.widgets.length ) { + table.isApplyingWidgets = true; + // ensure unique widget ids + c.widgets = $.grep( c.widgets, function( val, index ) { + return $.inArray( val, c.widgets ) === index; + }); + names = c.widgets || []; + len = names.length; + // build widget array & add priority as needed + for ( indx = 0; indx < len; indx++ ) { + widget = ts.getWidgetById( names[ indx ] ); + if ( widget && widget.id ) { + // set priority to 10 if not defined + if ( !widget.priority ) { widget.priority = 10; } + widgets[ indx ] = widget; + } else if ( debug ) { + console.warn( '"' + names[ indx ] + '" was enabled, but the widget code has not been loaded!' ); + } + } + // sort widgets by priority + widgets.sort( function( a, b ) { + return a.priority < b.priority ? -1 : a.priority === b.priority ? 0 : 1; + }); + // add/update selected widgets + len = widgets.length; + if ( debug ) { + console[ console.group ? 'group' : 'log' ]( 'Start ' + ( init ? 'initializing' : 'applying' ) + ' widgets' ); + } + for ( indx = 0; indx < len; indx++ ) { + widget = widgets[ indx ]; + if ( widget && widget.id ) { + ts.applyWidgetId( table, widget.id, init ); + } + } + if ( debug && console.groupEnd ) { console.groupEnd(); } + } + c.timerReady = setTimeout( function() { + table.isApplyingWidgets = false; + $.data( table, 'lastWidgetApplication', new Date() ); + c.$table.triggerHandler( 'tablesorter-ready' ); + // callback executed on init only + if ( !init && typeof callback === 'function' ) { + callback( table ); + } + if ( debug ) { + widget = c.widgets.length; + console.log( 'Completed ' + + ( init === true ? 'initializing ' : 'applying ' ) + widget + + ' widget' + ( widget !== 1 ? 's' : '' ) + ts.benchmark( time ) ); + } + }, 10 ); + }, + + removeWidget : function( table, name, refreshing ) { + table = $( table )[ 0 ]; + var index, widget, indx, len, + c = table.config; + // if name === true, add all widgets from $.tablesorter.widgets + if ( name === true ) { + name = []; + len = ts.widgets.length; + for ( indx = 0; indx < len; indx++ ) { + widget = ts.widgets[ indx ]; + if ( widget && widget.id ) { + name[ name.length ] = widget.id; + } + } + } else { + // name can be either an array of widgets names, + // or a space/comma separated list of widget names + name = ( $.isArray( name ) ? name.join( ',' ) : name || '' ).toLowerCase().split( /[\s,]+/ ); + } + len = name.length; + for ( index = 0; index < len; index++ ) { + widget = ts.getWidgetById( name[ index ] ); + indx = $.inArray( name[ index ], c.widgets ); + // don't remove the widget from config.widget if refreshing + if ( indx >= 0 && refreshing !== true ) { + c.widgets.splice( indx, 1 ); + } + if ( widget && widget.remove ) { + if ( ts.debug(c, 'core') ) { + console.log( ( refreshing ? 'Refreshing' : 'Removing' ) + ' "' + name[ index ] + '" widget' ); + } + widget.remove( table, c, c.widgetOptions, refreshing ); + c.widgetInit[ name[ index ] ] = false; + } + } + c.$table.triggerHandler( 'widgetRemoveEnd', table ); + }, + + refreshWidgets : function( table, doAll, dontapply ) { + table = $( table )[ 0 ]; // see issue #243 + var indx, widget, + c = table.config, + curWidgets = c.widgets, + widgets = ts.widgets, + len = widgets.length, + list = [], + callback = function( table ) { + $( table ).triggerHandler( 'refreshComplete' ); + }; + // remove widgets not defined in config.widgets, unless doAll is true + for ( indx = 0; indx < len; indx++ ) { + widget = widgets[ indx ]; + if ( widget && widget.id && ( doAll || $.inArray( widget.id, curWidgets ) < 0 ) ) { + list[ list.length ] = widget.id; + } + } + ts.removeWidget( table, list.join( ',' ), true ); + if ( dontapply !== true ) { + // call widget init if + ts.applyWidget( table, doAll || false, callback ); + if ( doAll ) { + // apply widget format + ts.applyWidget( table, false, callback ); + } + } else { + callback( table ); + } + }, + + /* + ██ ██ ██████ ██ ██ ██ ██████ ██ ██████ ▄█████ + ██ ██ ██ ██ ██ ██ ██ ██ ██▄▄ ▀█▄ + ██ ██ ██ ██ ██ ██ ██ ██ ██▀▀ ▀█▄ + ▀████▀ ██ ██ ██████ ██ ██ ██ ██████ █████▀ + */ + benchmark : function( diff ) { + return ( ' (' + ( new Date().getTime() - diff.getTime() ) + ' ms)' ); + }, + // deprecated ts.log + log : function() { + console.log( arguments ); + }, + debug : function(c, name) { + return c && ( + c.debug === true || + typeof c.debug === 'string' && c.debug.indexOf(name) > -1 + ); + }, + + // $.isEmptyObject from jQuery v1.4 + isEmptyObject : function( obj ) { + /*jshint forin: false */ + for ( var name in obj ) { + return false; + } + return true; + }, + + isValueInArray : function( column, arry ) { + var indx, + len = arry && arry.length || 0; + for ( indx = 0; indx < len; indx++ ) { + if ( arry[ indx ][ 0 ] === column ) { + return indx; + } + } + return -1; + }, + + formatFloat : function( str, table ) { + if ( typeof str !== 'string' || str === '' ) { return str; } + // allow using formatFloat without a table; defaults to US number format + var num, + usFormat = table && table.config ? table.config.usNumberFormat !== false : + typeof table !== 'undefined' ? table : true; + if ( usFormat ) { + // US Format - 1,234,567.89 -> 1234567.89 + str = str.replace( ts.regex.comma, '' ); + } else { + // German Format = 1.234.567,89 -> 1234567.89 + // French Format = 1 234 567,89 -> 1234567.89 + str = str.replace( ts.regex.digitNonUS, '' ).replace( ts.regex.comma, '.' ); + } + if ( ts.regex.digitNegativeTest.test( str ) ) { + // make (#) into a negative number -> (10) = -10 + str = str.replace( ts.regex.digitNegativeReplace, '-$1' ); + } + num = parseFloat( str ); + // return the text instead of zero + return isNaN( num ) ? $.trim( str ) : num; + }, + + isDigit : function( str ) { + // replace all unwanted chars and match + return isNaN( str ) ? + ts.regex.digitTest.test( str.toString().replace( ts.regex.digitReplace, '' ) ) : + str !== ''; + }, + + // computeTableHeaderCellIndexes from: + // http://www.javascripttoolbox.com/lib/table/examples.php + // http://www.javascripttoolbox.com/temp/table_cellindex.html + computeColumnIndex : function( $rows, c ) { + var i, j, k, l, cell, cells, rowIndex, rowSpan, colSpan, firstAvailCol, + // total columns has been calculated, use it to set the matrixrow + columns = c && c.columns || 0, + matrix = [], + matrixrow = new Array( columns ); + for ( i = 0; i < $rows.length; i++ ) { + cells = $rows[ i ].cells; + for ( j = 0; j < cells.length; j++ ) { + cell = cells[ j ]; + rowIndex = i; + rowSpan = cell.rowSpan || 1; + colSpan = cell.colSpan || 1; + if ( typeof matrix[ rowIndex ] === 'undefined' ) { + matrix[ rowIndex ] = []; + } + // Find first available column in the first row + for ( k = 0; k < matrix[ rowIndex ].length + 1; k++ ) { + if ( typeof matrix[ rowIndex ][ k ] === 'undefined' ) { + firstAvailCol = k; + break; + } + } + // jscs:disable disallowEmptyBlocks + if ( columns && cell.cellIndex === firstAvailCol ) { + // don't to anything + } else if ( cell.setAttribute ) { + // jscs:enable disallowEmptyBlocks + // add data-column (setAttribute = IE8+) + cell.setAttribute( 'data-column', firstAvailCol ); + } else { + // remove once we drop support for IE7 - 1/12/2016 + $( cell ).attr( 'data-column', firstAvailCol ); + } + for ( k = rowIndex; k < rowIndex + rowSpan; k++ ) { + if ( typeof matrix[ k ] === 'undefined' ) { + matrix[ k ] = []; + } + matrixrow = matrix[ k ]; + for ( l = firstAvailCol; l < firstAvailCol + colSpan; l++ ) { + matrixrow[ l ] = 'x'; + } + } + } + } + ts.checkColumnCount($rows, matrix, matrixrow.length); + return matrixrow.length; + }, + + checkColumnCount : function($rows, matrix, columns) { + // this DOES NOT report any tbody column issues, except for the math and + // and column selector widgets + var i, len, + valid = true, + cells = []; + for ( i = 0; i < matrix.length; i++ ) { + // some matrix entries are undefined when testing the footer because + // it is using the rowIndex property + if ( matrix[i] ) { + len = matrix[i].length; + if ( matrix[i].length !== columns ) { + valid = false; + break; + } + } + } + if ( !valid ) { + $rows.each( function( indx, el ) { + var cell = el.parentElement.nodeName; + if ( cells.indexOf( cell ) < 0 ) { + cells.push( cell ); + } + }); + console.error( + 'Invalid or incorrect number of columns in the ' + + cells.join( ' or ' ) + '; expected ' + columns + + ', but found ' + len + ' columns' + ); + } + }, + + // automatically add a colgroup with col elements set to a percentage width + fixColumnWidth : function( table ) { + table = $( table )[ 0 ]; + var overallWidth, percent, $tbodies, len, index, + c = table.config, + $colgroup = c.$table.children( 'colgroup' ); + // remove plugin-added colgroup, in case we need to refresh the widths + if ( $colgroup.length && $colgroup.hasClass( ts.css.colgroup ) ) { + $colgroup.remove(); + } + if ( c.widthFixed && c.$table.children( 'colgroup' ).length === 0 ) { + $colgroup = $( '<colgroup class="' + ts.css.colgroup + '">' ); + overallWidth = c.$table.width(); + // only add col for visible columns - fixes #371 + $tbodies = c.$tbodies.find( 'tr:first' ).children( ':visible' ); + len = $tbodies.length; + for ( index = 0; index < len; index++ ) { + percent = parseInt( ( $tbodies.eq( index ).width() / overallWidth ) * 1000, 10 ) / 10 + '%'; + $colgroup.append( $( '<col>' ).css( 'width', percent ) ); + } + c.$table.prepend( $colgroup ); + } + }, + + // get sorter, string, empty, etc options for each column from + // jQuery data, metadata, header option or header class name ('sorter-false') + // priority = jQuery data > meta > headers option > header class name + getData : function( header, configHeader, key ) { + var meta, cl4ss, + val = '', + $header = $( header ); + if ( !$header.length ) { return ''; } + meta = $.metadata ? $header.metadata() : false; + cl4ss = ' ' + ( $header.attr( 'class' ) || '' ); + if ( typeof $header.data( key ) !== 'undefined' || + typeof $header.data( key.toLowerCase() ) !== 'undefined' ) { + // 'data-lockedOrder' is assigned to 'lockedorder'; but 'data-locked-order' is assigned to 'lockedOrder' + // 'data-sort-initial-order' is assigned to 'sortInitialOrder' + val += $header.data( key ) || $header.data( key.toLowerCase() ); + } else if ( meta && typeof meta[ key ] !== 'undefined' ) { + val += meta[ key ]; + } else if ( configHeader && typeof configHeader[ key ] !== 'undefined' ) { + val += configHeader[ key ]; + } else if ( cl4ss !== ' ' && cl4ss.match( ' ' + key + '-' ) ) { + // include sorter class name 'sorter-text', etc; now works with 'sorter-my-custom-parser' + val = cl4ss.match( new RegExp( '\\s' + key + '-([\\w-]+)' ) )[ 1 ] || ''; + } + return $.trim( val ); + }, + + getColumnData : function( table, obj, indx, getCell, $headers ) { + if ( typeof obj !== 'object' || obj === null ) { + return obj; + } + table = $( table )[ 0 ]; + var $header, key, + c = table.config, + $cells = ( $headers || c.$headers ), + // c.$headerIndexed is not defined initially + $cell = c.$headerIndexed && c.$headerIndexed[ indx ] || + $cells.find( '[data-column="' + indx + '"]:last' ); + if ( typeof obj[ indx ] !== 'undefined' ) { + return getCell ? obj[ indx ] : obj[ $cells.index( $cell ) ]; + } + for ( key in obj ) { + if ( typeof key === 'string' ) { + $header = $cell + // header cell with class/id + .filter( key ) + // find elements within the header cell with cell/id + .add( $cell.find( key ) ); + if ( $header.length ) { + return obj[ key ]; + } + } + } + return; + }, + + // *** Process table *** + // add processing indicator + isProcessing : function( $table, toggle, $headers ) { + $table = $( $table ); + var c = $table[ 0 ].config, + // default to all headers + $header = $headers || $table.find( '.' + ts.css.header ); + if ( toggle ) { + // don't use sortList if custom $headers used + if ( typeof $headers !== 'undefined' && c.sortList.length > 0 ) { + // get headers from the sortList + $header = $header.filter( function() { + // get data-column from attr to keep compatibility with jQuery 1.2.6 + return this.sortDisabled ? + false : + ts.isValueInArray( parseFloat( $( this ).attr( 'data-column' ) ), c.sortList ) >= 0; + }); + } + $table.add( $header ).addClass( ts.css.processing + ' ' + c.cssProcessing ); + } else { + $table.add( $header ).removeClass( ts.css.processing + ' ' + c.cssProcessing ); + } + }, + + // detach tbody but save the position + // don't use tbody because there are portions that look for a tbody index (updateCell) + processTbody : function( table, $tb, getIt ) { + table = $( table )[ 0 ]; + if ( getIt ) { + table.isProcessing = true; + $tb.before( '<colgroup class="tablesorter-savemyplace"/>' ); + return $.fn.detach ? $tb.detach() : $tb.remove(); + } + var holdr = $( table ).find( 'colgroup.tablesorter-savemyplace' ); + $tb.insertAfter( holdr ); + holdr.remove(); + table.isProcessing = false; + }, + + clearTableBody : function( table ) { + $( table )[ 0 ].config.$tbodies.children().detach(); + }, + + // used when replacing accented characters during sorting + characterEquivalents : { + 'a' : '\u00e1\u00e0\u00e2\u00e3\u00e4\u0105\u00e5', // áàâãäąå + 'A' : '\u00c1\u00c0\u00c2\u00c3\u00c4\u0104\u00c5', // ÁÀÂÃÄĄÅ + 'c' : '\u00e7\u0107\u010d', // çćč + 'C' : '\u00c7\u0106\u010c', // ÇĆČ + 'e' : '\u00e9\u00e8\u00ea\u00eb\u011b\u0119', // éèêëěę + 'E' : '\u00c9\u00c8\u00ca\u00cb\u011a\u0118', // ÉÈÊËĚĘ + 'i' : '\u00ed\u00ec\u0130\u00ee\u00ef\u0131', // íìİîïı + 'I' : '\u00cd\u00cc\u0130\u00ce\u00cf', // ÍÌİÎÏ + 'o' : '\u00f3\u00f2\u00f4\u00f5\u00f6\u014d', // óòôõöō + 'O' : '\u00d3\u00d2\u00d4\u00d5\u00d6\u014c', // ÓÒÔÕÖŌ + 'ss': '\u00df', // ß (s sharp) + 'SS': '\u1e9e', // ẞ (Capital sharp s) + 'u' : '\u00fa\u00f9\u00fb\u00fc\u016f', // úùûüů + 'U' : '\u00da\u00d9\u00db\u00dc\u016e' // ÚÙÛÜŮ + }, + + replaceAccents : function( str ) { + var chr, + acc = '[', + eq = ts.characterEquivalents; + if ( !ts.characterRegex ) { + ts.characterRegexArray = {}; + for ( chr in eq ) { + if ( typeof chr === 'string' ) { + acc += eq[ chr ]; + ts.characterRegexArray[ chr ] = new RegExp( '[' + eq[ chr ] + ']', 'g' ); + } + } + ts.characterRegex = new RegExp( acc + ']' ); + } + if ( ts.characterRegex.test( str ) ) { + for ( chr in eq ) { + if ( typeof chr === 'string' ) { + str = str.replace( ts.characterRegexArray[ chr ], chr ); + } + } + } + return str; + }, + + validateOptions : function( c ) { + var setting, setting2, typ, timer, + // ignore options containing an array + ignore = 'headers sortForce sortList sortAppend widgets'.split( ' ' ), + orig = c.originalSettings; + if ( orig ) { + if ( ts.debug(c, 'core') ) { + timer = new Date(); + } + for ( setting in orig ) { + typ = typeof ts.defaults[setting]; + if ( typ === 'undefined' ) { + console.warn( 'Tablesorter Warning! "table.config.' + setting + '" option not recognized' ); + } else if ( typ === 'object' ) { + for ( setting2 in orig[setting] ) { + typ = ts.defaults[setting] && typeof ts.defaults[setting][setting2]; + if ( $.inArray( setting, ignore ) < 0 && typ === 'undefined' ) { + console.warn( 'Tablesorter Warning! "table.config.' + setting + '.' + setting2 + '" option not recognized' ); + } + } + } + } + if ( ts.debug(c, 'core') ) { + console.log( 'validate options time:' + ts.benchmark( timer ) ); + } + } + }, + + // restore headers + restoreHeaders : function( table ) { + var index, $cell, + c = $( table )[ 0 ].config, + $headers = c.$table.find( c.selectorHeaders ), + len = $headers.length; + // don't use c.$headers here in case header cells were swapped + for ( index = 0; index < len; index++ ) { + $cell = $headers.eq( index ); + // only restore header cells if it is wrapped + // because this is also used by the updateAll method + if ( $cell.find( '.' + ts.css.headerIn ).length ) { + $cell.html( c.headerContent[ index ] ); + } + } + }, + + destroy : function( table, removeClasses, callback ) { + table = $( table )[ 0 ]; + if ( !table.hasInitialized ) { return; } + // remove all widgets + ts.removeWidget( table, true, false ); + var events, + $t = $( table ), + c = table.config, + $h = $t.find( 'thead:first' ), + $r = $h.find( 'tr.' + ts.css.headerRow ).removeClass( ts.css.headerRow + ' ' + c.cssHeaderRow ), + $f = $t.find( 'tfoot:first > tr' ).children( 'th, td' ); + if ( removeClasses === false && $.inArray( 'uitheme', c.widgets ) >= 0 ) { + // reapply uitheme classes, in case we want to maintain appearance + $t.triggerHandler( 'applyWidgetId', [ 'uitheme' ] ); + $t.triggerHandler( 'applyWidgetId', [ 'zebra' ] ); + } + // remove widget added rows, just in case + $h.find( 'tr' ).not( $r ).remove(); + // disable tablesorter - not using .unbind( namespace ) because namespacing was + // added in jQuery v1.4.3 - see http://api.jquery.com/event.namespace/ + events = 'sortReset update updateRows updateAll updateHeaders updateCell addRows updateComplete sorton ' + + 'appendCache updateCache applyWidgetId applyWidgets refreshWidgets removeWidget destroy mouseup mouseleave ' + + 'keypress sortBegin sortEnd resetToLoadState '.split( ' ' ) + .join( c.namespace + ' ' ); + $t + .removeData( 'tablesorter' ) + .unbind( events.replace( ts.regex.spaces, ' ' ) ); + c.$headers + .add( $f ) + .removeClass( [ ts.css.header, c.cssHeader, c.cssAsc, c.cssDesc, ts.css.sortAsc, ts.css.sortDesc, ts.css.sortNone ].join( ' ' ) ) + .removeAttr( 'data-column' ) + .removeAttr( 'aria-label' ) + .attr( 'aria-disabled', 'true' ); + $r + .find( c.selectorSort ) + .unbind( ( 'mousedown mouseup keypress '.split( ' ' ).join( c.namespace + ' ' ) ).replace( ts.regex.spaces, ' ' ) ); + ts.restoreHeaders( table ); + $t.toggleClass( ts.css.table + ' ' + c.tableClass + ' tablesorter-' + c.theme, removeClasses === false ); + $t.removeClass(c.namespace.slice(1)); + // clear flag in case the plugin is initialized again + table.hasInitialized = false; + delete table.config.cache; + if ( typeof callback === 'function' ) { + callback( table ); + } + if ( ts.debug(c, 'core') ) { + console.log( 'tablesorter has been removed' ); + } + } + + }; + + $.fn.tablesorter = function( settings ) { + return this.each( function() { + var table = this, + // merge & extend config options + c = $.extend( true, {}, ts.defaults, settings, ts.instanceMethods ); + // save initial settings + c.originalSettings = settings; + // create a table from data (build table widget) + if ( !table.hasInitialized && ts.buildTable && this.nodeName !== 'TABLE' ) { + // return the table (in case the original target is the table's container) + ts.buildTable( table, c ); + } else { + ts.setup( table, c ); + } + }); + }; + + // set up debug logs + if ( !( window.console && window.console.log ) ) { + // access $.tablesorter.logs for browsers that don't have a console... + ts.logs = []; + /*jshint -W020 */ + console = {}; + console.log = console.warn = console.error = console.table = function() { + var arg = arguments.length > 1 ? arguments : arguments[0]; + ts.logs[ ts.logs.length ] = { date: Date.now(), log: arg }; + }; + } + + // add default parsers + ts.addParser({ + id : 'no-parser', + is : function() { + return false; + }, + format : function() { + return ''; + }, + type : 'text' + }); + + ts.addParser({ + id : 'text', + is : function() { + return true; + }, + format : function( str, table ) { + var c = table.config; + if ( str ) { + str = $.trim( c.ignoreCase ? str.toLocaleLowerCase() : str ); + str = c.sortLocaleCompare ? ts.replaceAccents( str ) : str; + } + return str; + }, + type : 'text' + }); + + ts.regex.nondigit = /[^\w,. \-()]/g; + ts.addParser({ + id : 'digit', + is : function( str ) { + return ts.isDigit( str ); + }, + format : function( str, table ) { + var num = ts.formatFloat( ( str || '' ).replace( ts.regex.nondigit, '' ), table ); + return str && typeof num === 'number' ? num : + str ? $.trim( str && table.config.ignoreCase ? str.toLocaleLowerCase() : str ) : str; + }, + type : 'numeric' + }); + + ts.regex.currencyReplace = /[+\-,. ]/g; + ts.regex.currencyTest = /^\(?\d+[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]|[\u00a3$\u20ac\u00a4\u00a5\u00a2?.]\d+\)?$/; + ts.addParser({ + id : 'currency', + is : function( str ) { + str = ( str || '' ).replace( ts.regex.currencyReplace, '' ); + // test for £$€¤¥¢ + return ts.regex.currencyTest.test( str ); + }, + format : function( str, table ) { + var num = ts.formatFloat( ( str || '' ).replace( ts.regex.nondigit, '' ), table ); + return str && typeof num === 'number' ? num : + str ? $.trim( str && table.config.ignoreCase ? str.toLocaleLowerCase() : str ) : str; + }, + type : 'numeric' + }); + + // too many protocols to add them all https://en.wikipedia.org/wiki/URI_scheme + // now, this regex can be updated before initialization + ts.regex.urlProtocolTest = /^(https?|ftp|file):\/\//; + ts.regex.urlProtocolReplace = /(https?|ftp|file):\/\/(www\.)?/; + ts.addParser({ + id : 'url', + is : function( str ) { + return ts.regex.urlProtocolTest.test( str ); + }, + format : function( str ) { + return str ? $.trim( str.replace( ts.regex.urlProtocolReplace, '' ) ) : str; + }, + type : 'text' + }); + + ts.regex.dash = /-/g; + ts.regex.isoDate = /^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}/; + ts.addParser({ + id : 'isoDate', + is : function( str ) { + return ts.regex.isoDate.test( str ); + }, + format : function( str ) { + var date = str ? new Date( str.replace( ts.regex.dash, '/' ) ) : str; + return date instanceof Date && isFinite( date ) ? date.getTime() : str; + }, + type : 'numeric' + }); + + ts.regex.percent = /%/g; + ts.regex.percentTest = /(\d\s*?%|%\s*?\d)/; + ts.addParser({ + id : 'percent', + is : function( str ) { + return ts.regex.percentTest.test( str ) && str.length < 15; + }, + format : function( str, table ) { + return str ? ts.formatFloat( str.replace( ts.regex.percent, '' ), table ) : str; + }, + type : 'numeric' + }); + + // added image parser to core v2.17.9 + ts.addParser({ + id : 'image', + is : function( str, table, node, $node ) { + return $node.find( 'img' ).length > 0; + }, + format : function( str, table, cell ) { + return $( cell ).find( 'img' ).attr( table.config.imgAttr || 'alt' ) || str; + }, + parsed : true, // filter widget flag + type : 'text' + }); + + ts.regex.dateReplace = /(\S)([AP]M)$/i; // used by usLongDate & time parser + ts.regex.usLongDateTest1 = /^[A-Z]{3,10}\.?\s+\d{1,2},?\s+(\d{4})(\s+\d{1,2}:\d{2}(:\d{2})?(\s+[AP]M)?)?$/i; + ts.regex.usLongDateTest2 = /^\d{1,2}\s+[A-Z]{3,10}\s+\d{4}/i; + ts.addParser({ + id : 'usLongDate', + is : function( str ) { + // two digit years are not allowed cross-browser + // Jan 01, 2013 12:34:56 PM or 01 Jan 2013 + return ts.regex.usLongDateTest1.test( str ) || ts.regex.usLongDateTest2.test( str ); + }, + format : function( str ) { + var date = str ? new Date( str.replace( ts.regex.dateReplace, '$1 $2' ) ) : str; + return date instanceof Date && isFinite( date ) ? date.getTime() : str; + }, + type : 'numeric' + }); + + // testing for ##-##-#### or ####-##-##, so it's not perfect; time can be included + ts.regex.shortDateTest = /(^\d{1,2}[\/\s]\d{1,2}[\/\s]\d{4})|(^\d{4}[\/\s]\d{1,2}[\/\s]\d{1,2})/; + // escaped "-" because JSHint in Firefox was showing it as an error + ts.regex.shortDateReplace = /[\-.,]/g; + // XXY covers MDY & DMY formats + ts.regex.shortDateXXY = /(\d{1,2})[\/\s](\d{1,2})[\/\s](\d{4})/; + ts.regex.shortDateYMD = /(\d{4})[\/\s](\d{1,2})[\/\s](\d{1,2})/; + ts.convertFormat = function( dateString, format ) { + dateString = ( dateString || '' ) + .replace( ts.regex.spaces, ' ' ) + .replace( ts.regex.shortDateReplace, '/' ); + if ( format === 'mmddyyyy' ) { + dateString = dateString.replace( ts.regex.shortDateXXY, '$3/$1/$2' ); + } else if ( format === 'ddmmyyyy' ) { + dateString = dateString.replace( ts.regex.shortDateXXY, '$3/$2/$1' ); + } else if ( format === 'yyyymmdd' ) { + dateString = dateString.replace( ts.regex.shortDateYMD, '$1/$2/$3' ); + } + var date = new Date( dateString ); + return date instanceof Date && isFinite( date ) ? date.getTime() : ''; + }; + + ts.addParser({ + id : 'shortDate', // 'mmddyyyy', 'ddmmyyyy' or 'yyyymmdd' + is : function( str ) { + str = ( str || '' ).replace( ts.regex.spaces, ' ' ).replace( ts.regex.shortDateReplace, '/' ); + return ts.regex.shortDateTest.test( str ); + }, + format : function( str, table, cell, cellIndex ) { + if ( str ) { + var c = table.config, + $header = c.$headerIndexed[ cellIndex ], + format = $header.length && $header.data( 'dateFormat' ) || + ts.getData( $header, ts.getColumnData( table, c.headers, cellIndex ), 'dateFormat' ) || + c.dateFormat; + // save format because getData can be slow... + if ( $header.length ) { + $header.data( 'dateFormat', format ); + } + return ts.convertFormat( str, format ) || str; + } + return str; + }, + type : 'numeric' + }); + + // match 24 hour time & 12 hours time + am/pm - see http://regexr.com/3c3tk + ts.regex.timeTest = /^(0?[1-9]|1[0-2]):([0-5]\d)(\s[AP]M)$|^((?:[01]\d|[2][0-4]):[0-5]\d)$/i; + ts.regex.timeMatch = /(0?[1-9]|1[0-2]):([0-5]\d)(\s[AP]M)|((?:[01]\d|[2][0-4]):[0-5]\d)/i; + ts.addParser({ + id : 'time', + is : function( str ) { + return ts.regex.timeTest.test( str ); + }, + format : function( str ) { + // isolate time... ignore month, day and year + var temp, + timePart = ( str || '' ).match( ts.regex.timeMatch ), + orig = new Date( str ), + // no time component? default to 00:00 by leaving it out, but only if str is defined + time = str && ( timePart !== null ? timePart[ 0 ] : '00:00 AM' ), + date = time ? new Date( '2000/01/01 ' + time.replace( ts.regex.dateReplace, '$1 $2' ) ) : time; + if ( date instanceof Date && isFinite( date ) ) { + temp = orig instanceof Date && isFinite( orig ) ? orig.getTime() : 0; + // if original string was a valid date, add it to the decimal so the column sorts in some kind of order + // luckily new Date() ignores the decimals + return temp ? parseFloat( date.getTime() + '.' + orig.getTime() ) : date.getTime(); + } + return str; + }, + type : 'numeric' + }); + + ts.addParser({ + id : 'metadata', + is : function() { + return false; + }, + format : function( str, table, cell ) { + var c = table.config, + p = ( !c.parserMetadataName ) ? 'sortValue' : c.parserMetadataName; + return $( cell ).metadata()[ p ]; + }, + type : 'numeric' + }); + + /* + ██████ ██████ █████▄ █████▄ ▄████▄ + ▄█▀ ██▄▄ ██▄▄██ ██▄▄██ ██▄▄██ + ▄█▀ ██▀▀ ██▀▀██ ██▀▀█ ██▀▀██ + ██████ ██████ █████▀ ██ ██ ██ ██ + */ + // add default widgets + ts.addWidget({ + id : 'zebra', + priority : 90, + format : function( table, c, wo ) { + var $visibleRows, $row, count, isEven, tbodyIndex, rowIndex, len, + child = new RegExp( c.cssChildRow, 'i' ), + $tbodies = c.$tbodies.add( $( c.namespace + '_extra_table' ).children( 'tbody:not(.' + c.cssInfoBlock + ')' ) ); + for ( tbodyIndex = 0; tbodyIndex < $tbodies.length; tbodyIndex++ ) { + // loop through the visible rows + count = 0; + $visibleRows = $tbodies.eq( tbodyIndex ).children( 'tr:visible' ).not( c.selectorRemove ); + len = $visibleRows.length; + for ( rowIndex = 0; rowIndex < len; rowIndex++ ) { + $row = $visibleRows.eq( rowIndex ); + // style child rows the same way the parent row was styled + if ( !child.test( $row[ 0 ].className ) ) { count++; } + isEven = ( count % 2 === 0 ); + $row + .removeClass( wo.zebra[ isEven ? 1 : 0 ] ) + .addClass( wo.zebra[ isEven ? 0 : 1 ] ); + } + } + }, + remove : function( table, c, wo, refreshing ) { + if ( refreshing ) { return; } + var tbodyIndex, $tbody, + $tbodies = c.$tbodies, + toRemove = ( wo.zebra || [ 'even', 'odd' ] ).join( ' ' ); + for ( tbodyIndex = 0; tbodyIndex < $tbodies.length; tbodyIndex++ ) { + $tbody = ts.processTbody( table, $tbodies.eq( tbodyIndex ), true ); // remove tbody + $tbody.children().removeClass( toRemove ); + ts.processTbody( table, $tbody, false ); // restore tbody + } + } + }); + +})( jQuery ); diff --git a/site/js/wysiwyg.js b/site/js/wysiwyg.js new file mode 100644 index 0000000..a9c4197 --- /dev/null +++ b/site/js/wysiwyg.js @@ -0,0 +1,11 @@ +function commande(nom, argument){ + if (typeof argument === 'undefined') { + argument = ''; + } + // Exécuter la commande + document.execCommand(nom, false, argument); +} + +function getContent(){ + document.getElementById("detailsJpo").value = document.getElementById("editeur").innerHTML; +} \ No newline at end of file diff --git a/site/modifier-cap.php b/site/modifier-cap.php new file mode 100644 index 0000000..94ef631 --- /dev/null +++ b/site/modifier-cap.php @@ -0,0 +1,129 @@ +<?php +include('include/entete.php'); +include('include/entete_cap.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +$query="select * from eta,capitaines where id_eta=num_eta and id_cap=:id_cap"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +$capitaine=decrypter($maCleDeCryptage,$data[0]['prenom_cap'])." ".decrypter($maCleDeCryptage,$data[0]['nom_cap']); + +$nom_cap=decrypter($maCleDeCryptage,$data[0]['nom_cap']); +$prenom_cap=decrypter($maCleDeCryptage,$data[0]['prenom_cap']); +$email_cap=decrypter($maCleDeCryptage,$data[0]['email_cap']); +$num_eta=$data[0]['num_eta']; + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> +}); + +function valid_upcap(){ + if(document.frmUpcap.nom_cap.value==""){ + alert('Merci de renseigner le nom.'); + document.frmUpcap.nom_cap.focus(); + return false; + } + if(document.frmUpcap.prenom_cap.value==""){ + alert('Merci de renseigner le prénom.'); + document.frmUpcap.prenom_cap.focus(); + return false; + } + if(!verifmail('document.frmUpcap.email_cap',1)){ + return false; + } + + if(document.frmUpcap.email_cap.value!='<?php echo $email_cap; ?>'){ + if(!window.confirm('Vous transmettez vos prérogatives de Capitaine à une autre personne.\r\nÊtes-vous sûr ?\r\nSi oui, vous serez déconnecté après la modification.')) return false; + } + + return true; +} +function test_upcap(){ + if(valid_upcap()) document.frmUpcap.submit(); +} +jQuery(document).ready(function(){ + document.frmUpcap.nom_cap.focus(); +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Capitaine</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <b>Capitaine : </b><?php echo $capitaine;?> <a href="modifier-cap.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a> + </div> + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cap.php">Votre trinôme</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="agenda-cap.php">Votre agenda</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cap.php">Boite à outils</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Modifier votre profil capitaine</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + <form name="frmUpcap" id="frmUpcap" method="post" action="traitement-cap.php"> + + <div class="labFrm">Nom :</div> + <input type="text" name="nom_cap" id="nom_cap" value="<?php echo $nom_cap;?>"/><br /> + <div class="labFrm">Prénom :</div> + <input type="text" name="prenom_cap" id="prenom_cap" value="<?php echo $prenom_cap;?>" /><br /> + <div class="labFrm">Email :</div> + <input type="text" name="email_cap" id="email_cap" value="<?php echo $email_cap;?>" /><br /> + <input type="hidden" name="id_cap" id="id_cap" value="<?php echo $_SESSION['cap_num']; ?>" /> + <input type="hidden" name="num_eta" id="num_eta" value="<?php echo $num_eta; ?>" /> + <input type="hidden" name="action" value="go_moCap" /> + <div class="btnDeci"><a href="javascript:void(0);" onClick="test_upcap()">Modifier</a></div> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="index-cap.php">Retour</a></div> + </form> + + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/modifier-ref.php b/site/modifier-ref.php new file mode 100644 index 0000000..1973a16 --- /dev/null +++ b/site/modifier-ref.php @@ -0,0 +1,134 @@ +<?php +include('include/entete.php'); +include('include/entete_cfa.php'); + +if(!isset($_GET['id']) || empty($_GET['id'])){ + header('location:index-cfa.php'); + exit(); +} + +$id=$_GET['id']; +include('config/config.inc.php'); +$query="select * from capitaines where id_cap=:id_cap"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':id_cap', $id, PDO::PARAM_INT ); +$queryRequest->execute(); +if($queryRequest->rowCount()==0){ + header('location:index-cfa.php'); + exit(); +} + + +include('config/lib.inc.php'); +$maCleDeCryptage = getCleDeCryptage(); +$data=$queryRequest->fetchAll(); +$nom_cap=decrypter($maCleDeCryptage,$data[0]['nom_cap']); +$prenom_cap=decrypter($maCleDeCryptage,$data[0]['prenom_cap']); +$email_cap=decrypter($maCleDeCryptage,$data[0]['email_cap']); + + + $query="select * from eta where id_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +function valid_aj(){ + if(document.frmAj.nom_cap.value==""){ + alert('Merci de renseigner le nom.'); + document.frmCo.nom_cap.focus(); + return false; + } + if(document.frmAj.prenom_cap.value==""){ + alert('Merci de renseigner le prénom.'); + document.frmCo.prenom_cap.focus(); + return false; + } + if(!verifmail('document.frmAj.email_cap',1)){ + return false; + } + return true; +} +function test_aj(){ + if(valid_aj()) document.frmAj.submit(); +} +jQuery(document).ready(function(){ + document.frmAj.nom_cap.focus(); +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Référent</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <span style="font-size: 0.9em;"> + <?php + echo decrypter($maCleDeCryptage,$data[0]['adresse1']); + if(!empty($data[0]['adresse2'])) echo ' - '.decrypter($maCleDeCryptage,$data[0]['adresse2']); + echo ' - '.decrypter($maCleDeCryptage,$data[0]['cp']).' '.decrypter($maCleDeCryptage,$data[0]['ville']); + ?> + </span><br /> + <b>Référent : </b><?php echo decrypter($maCleDeCryptage,$data[0]['nom_ref']);?> <a href="modifier-referent.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a></div> + + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cfa.php">Vos trinômes</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cfa.php">Boite à outils</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="po-cfa.php">Portes ouvertes</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Modifier les coordonnées du capitaine</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + <form name="frmAj" id="frmAj" method="post" action="traitement-cfa.php"> + + <div class="labFrm">Nom :</div> + <input type="text" name="nom_cap" id="nom_cap" value="<?php echo $nom_cap;?>"/><br /> + <div class="labFrm">Prénom :</div> + <input type="text" name="prenom_cap" id="prenom_cap" value="<?php echo $prenom_cap;?>" /><br /> + <div class="labFrm">Email :</div> + <input type="text" name="email_cap" id="email_cap" value="<?php echo $email_cap;?>" /><br /> + <input type="hidden" name="id_cap" id="id_cap" value="<?php echo $id;?>" /> + <input type="hidden" name="action" value="go_mo" /> + <div class="btnDeci"><a href="javascript:void(0);" onClick="test_aj()">Modifier</a></div> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="index-cap.php">Retour</a></div> + </form> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/modifier-referent.php b/site/modifier-referent.php new file mode 100644 index 0000000..7004a6c --- /dev/null +++ b/site/modifier-referent.php @@ -0,0 +1,129 @@ +<?php +include('include/entete.php'); +include('include/entete_cfa.php'); + +include('config/config.inc.php'); +/* +$query="select * from capitaines where id_cap=:id_cap"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':id_cap', $id, PDO::PARAM_INT ); +$queryRequest->execute(); +if($queryRequest->rowCount()==0){ + header('location:index-cfa.php'); + exit(); +} +*/ + +$id = $_SESSION['cfa_num']; + +include('config/lib.inc.php'); +$maCleDeCryptage = getCleDeCryptage(); + +$query="select * from eta where id_eta=:num_eta"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); + +$nom_ref=decrypter($maCleDeCryptage,$data[0]['nom_ref']); +$tel_ref=decrypter($maCleDeCryptage,$data[0]['tel_ref']); +$email_ref=decrypter($maCleDeCryptage,$data[0]['email_ref']); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +function valid_aj(){ + if(document.frmAj.nom_ref.value==""){ + alert('Merci de renseigner le nom.'); + document.frmCo.nom_ref.focus(); + return false; + } + if(!checkFormTel('document.frmAj.tel_ref','T','Le téléphone',1)) return false; + if(!verifmail('document.frmAj.email_ref',1)){ + return false; + } + if(document.frmAj.email_ref.value!='<?php echo $email_ref; ?>'){ + if(!window.confirm('Vous transmettez vos prérogatives de Référent à une autre personne.\r\nÊtes-vous sûr ?\r\nSi oui, vous serez déconnecté après la modification.')) return false; + } + return true; +} +function test_aj(){ + if(valid_aj()) document.frmAj.submit(); +} +jQuery(document).ready(function(){ + document.frmAj.nom_ref.focus(); +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Référent</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <span style="font-size: 0.9em;"> + <?php + echo decrypter($maCleDeCryptage,$data[0]['adresse1']); + if(!empty($data[0]['adresse2'])) echo ' - '.decrypter($maCleDeCryptage,$data[0]['adresse2']); + echo ' - '.decrypter($maCleDeCryptage,$data[0]['cp']).' '.decrypter($maCleDeCryptage,$data[0]['ville']); + ?> + </span><br /> + <b>Référent : </b><?php echo decrypter($maCleDeCryptage,$data[0]['nom_ref']);?> <a href="modifier-referent.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a></div> + + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cfa.php">Vos trinômes</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cfa.php">Boite à outils</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="po-cfa.php">Portes ouvertes</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Modifier Votre profil Référent</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + <form name="frmAj" id="frmAj" method="post" action="traitement-cfa.php"> + + <div class="labFrm">Nom :</div> + <input type="text" name="nom_ref" id="nom_ref" value="<?php echo $nom_ref;?>"/><br /> + <div class="labFrm">Téléphone :</div> + <input type="text" name="tel_ref" id="tel_ref" value="<?php echo $tel_ref;?>" /><br /> + <div class="labFrm">Email :</div> + <input type="text" name="email_ref" id="email_ref" value="<?php echo $email_ref;?>" /><br /> + <input type="hidden" name="id_eta" id="id_eta" value="<?php echo $id;?>" /> + <input type="hidden" name="action" value="go_mo_ref" /> + <div class="btnDeci"><a href="javascript:void(0);" onClick="test_aj()">Modifier</a></div> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="index-cap.php">Retour</a></div> + </form> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/motdepasse.php b/site/motdepasse.php new file mode 100644 index 0000000..d00b16b --- /dev/null +++ b/site/motdepasse.php @@ -0,0 +1,57 @@ +<?php +include('include/entete.php'); +if(isset($_SESSION['cfa_co']) && $_SESSION['cfa_co']==1){ + header('location:index-cfa.php'); + exit(); +} +if(isset($_SESSION['cap_co']) && $_SESSION['cap_co']==1){ + header('location:index-cap.php'); + exit(); +} +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script> +function valid_co(){ + if(!verifmail('document.frmCo.email_recov',1)){ + return false; + } + return true; +} +jQuery(document).ready(function(){ + document.frmCo.email_recov.focus(); +}); +</script> + +</head> + +<body> + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Mot de passe perdu : </div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <form name="frmCo" id="frmCo" method="post" action="actions-mdp.php" onSubmit="return valid_co();"> + <div class="titreFrm"></div> + <div class="labFrm">Email :</div> + <input type="text" name="email_recov" id="email_recov" /><br /> + <input type="hidden" name="action" value="go_mdp" /> + <input type="submit" value="Envoyer"> + </form> + + </div> + + <?php include('include/footer.php');?> +</body> +</html> \ No newline at end of file diff --git a/site/parents.php b/site/parents.php new file mode 100644 index 0000000..113a208 --- /dev/null +++ b/site/parents.php @@ -0,0 +1,213 @@ +<?php +include('config/config.inc.php'); +include('include/agenda.inc.php'); +include('config/lib.inc.php'); +$maCleDeCryptage = getCleDeCryptage(); + +$tabDate=array(); +foreach($arrWeek as $kw=>$vw){ + foreach($vw as $vDay){ + if(!empty($vDay)){ + $tabDate[]=$vDay; + } + } +} + +$query="select * from inscriptions_pro where statut=1 and (recevoirJeunes=1 or recevoirStage=1) AND id_pro <> 75"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); + +$info=array(); + + +foreach($data as $cle=>$val){ + $info[$val['id_pro']]['eta']=decrypter($maCleDeCryptage,$val['etablissement_pro']); + $info[$val['id_pro']]['nom_pro']=decrypter($maCleDeCryptage,$val['nom_pro']); + $info[$val['id_pro']]['prenom_pro']=decrypter($maCleDeCryptage,$val['prenom_pro']); + $info[$val['id_pro']]['adr1_pro']=decrypter($maCleDeCryptage,$val['adr1_pro']); + $info[$val['id_pro']]['adr2_pro']=decrypter($maCleDeCryptage,$val['adr2_pro']); + $info[$val['id_pro']]['cp_pro']=decrypter($maCleDeCryptage,$val['cp_pro']); + $info[$val['id_pro']]['ville_pro']=decrypter($maCleDeCryptage,$val['ville_pro']); + if($val['recevoirJeunes']==1) $info[$val['id_pro']]['recevoirJeunes']="<br />Accepte de recevoir un étudiant pour lui parler de son métier et lui faire découvrir."; + else $info[$val['id_pro']]['recevoirJeunes']=""; + if($val['recevoirStage']==1) $info[$val['id_pro']]['recevoirStage']="<br />Accepte d'accueillir un jeune pour son stage de découverte."; + else $info[$val['id_pro']]['recevoirStage']=""; + $info[$val['id_pro']]['lat']=$val['lat_pro']; + $info[$val['id_pro']]['lon']=$val['lon_pro']; +} +?> +<!doctype html> +<html> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="stylesheet" href="css/bootstrap.min.css"> + <link rel="stylesheet" href="css/style.css"> + <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyAD8dr4sS_iFafcU_AowzS9p9B306iQEZQ"></script> + <script src="js/jquery-3.2.1.min.js"></script> + <script type="text/javascript" src="js/fonctions.js"></script> + <script src="js/bootstrap.min.js"></script> + <title>Deciday!</title> + <script> + jQuery(document).ready(function(){ + + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + }); + </script> + <style> + .lienCarte{color: #87318b;font-family: "Myriad Pro Bold";} + .lienCarte:hover{ text-decoration: none;color: #87318b;} + .filtreCarte{ text-align: center;font-size: 16px;color: #87318b;text-align: center;font-family: "Myriad Pro Bold";text-transform: uppercase; padding:16px 0 10px 0;} + .filtreCarte select{ color:#000; margin-top:6px;} + </style> + <script> + function contact_eta(a){ + document.frmCE.ncfa.value=a; + document.frmCE.submit(); + } + function pinSymbol(color) { + return { + path: 'M 0,0 C -2,-20 -10,-22 -10,-30 A 10,10 0 1,1 10,-30 C 10,-22 2,-20 0,0 z M -2,-30 a 2,2 0 1,1 4,0 2,2 0 1,1 -4,0', + fillColor: color, + fillOpacity: 1, + strokeColor: '#000', + strokeWeight: 2, + scale: 1, + }; + } + //#FFA64D on + //#CACAD9 off + function initialisation(){ + var optionsCarte = { + zoom: 5, + center: new google.maps.LatLng(46.52863469527167,2.43896484375) + } + maCarte = new google.maps.Map(document.getElementById("divCarte"), optionsCarte); + <?php + $color="#FFA64D"; + foreach($info as $cle=>$val){ + $text=""; + $text.=$val['eta']."<br />".$val['nom_pro']." ".$val['prenom_pro']."<br />".$val['adr1_pro']."<br />".$val['adr2_pro']."<br />".$val['cp_pro']."<br />".$val['ville_pro']."<br />"; + if($val['recevoirJeunes']!='') $text.=$val['recevoirJeunes']; + if($val['recevoirStage']!='') $text.=$val['recevoirStage']; + $text.="<br /><br /><a href=\"contact-pro.php?nProP=".$cle."\" class=\"lienCarte\">Contacter le professionnel</a>"; + echo "var optionsMarqueur = { + position: new google.maps.LatLng(".$val['lat'].",".$val['lon']."), + map: maCarte, + title:'".addslashes($val['eta'])."', + icon: pinSymbol(\"".$color."\"), + }; + var marqueur".$cle." = new google.maps.Marker(optionsMarqueur); + var infowindow".$cle." = new google.maps.InfoWindow({ + content: '' + }); + marqueur".$cle.".addListener('click', function() { + infowindow".$cle.".setContent('".addslashes($text)."'); + infowindow".$cle.".open(maCarte, this); + }); + "; + + } + ?> + + } + $(document).ready(function() { + initialisation(); + }); + </script> + + </head> + <body> + <?php include('include/header.php');?> + <div class="container-fluid" style="margin-top: -20px;"> + <div class="row" style="background-color: #5B2050;"> + <a href="#" style="cursor:auto"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad"> + <img class="visible-sm visible-md visible-lg img-responsive imageBandeau" src="img/slide/deciday_decouvrez_deciday_slider.jpg" alt="Métiers Hotel-Resto"> + <img class="hidden-lg hidden-md hidden-sm img-responsive imageBandeau" src="img/slide/slider_new_resp.jpg" alt="Métiers Hotel-Resto"> + </div> + </a> + </div> + </div> + <div class="container contenuTxt"><br> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Métiers de l’hôtellerie, de la restauration et des loisirs : garantir l’avenir</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-2 txtChapeau"> + <p>Peu ou mal connus, les métiers de l’hôtellerie, de la restauration, des loisirs et des activités du tourisme méritent pourtant qu’on leur prête plus d’attention. Aller à leur découverte est tout l’objectif de Deciday!</p> </div> + + </div> + + <div class="row containerTpsForts"> + <div class="container "> + <div class="col-lg-1 col-md-1 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-10 col-md-10 col-sm-10 col-xs-12 titreContenuPage"> + Des opportunités pour les découvrir + </div> + <div class="col-lg-1 col-md-1 col-sm-1 hidden-xs"> + </div> + + <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12 tpsForts tpsForts1"> + <div class="titreTpsForts">Le 17 janvier 2019, un trio constitué d’un apprenant, d’un professionnel et d’un enseignant (en CFA ou lycée professionnel), se déplacera dans l’établissement scolaire de vos enfants <span>pour présenter aux élèves de troisième et de seconde les différents métiers et formations du secteur.</span></div> + </div> + <div class="col-lg-2 col-md-1 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-5 col-md-5 col-sm-5 col-xs-12 tpsForts tpsForts2"> + <div class="titreTpsForts">Les professionnels de votre région vous ouvriront leurs portes<span> pour vous accueillir, vous et vos enfants, et ainsi vous faire découvrir les différentes facettes de leur métier.</span></div> + </div> + </div> + </div> + + + <div class="container " style="padding-top:20px; margin-top:8px; "> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage"> + Rencontrer un professionnel vous intéresse ? + </div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + </div> + <div class="container"> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-2 txtIntro"> + Retrouvez sur cette carte les professionnels qui sont prêts à vous accueillir.<br><br> + </div> + </div> + <div class="container contenuCarte"> + + <div id="divCarte" style='height:500px;'></div><br /><br /> + </div> + <div class="container " style="padding-top:20px; margin-top:8px; "> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage"> + En savoir plus : + </div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + + </div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-1 txtIntro contenuTxt"> + <p>Rendez-vous sur <a href="http://www.metiers-hotel-resto.fr/" target="_blank" class="lienContent">www.metiers-hotel-resto.fr</a> pour découvrir :</p> + <ul class="liste"> + <li><span>des fiches détaillées sur tous les métiers du secteur</span></li> + <li><span>des témoignages vidéo de professionnels</span></li> + <li><span>les différentes formations du CAP au master 2</span></li> + </ul> + </div> + <div class="clearfix"></div> + + </div><!-- RESEAUX SOCIAUX --> + <?php include('include/footer.php');?> + </body> +</html> \ No newline at end of file diff --git a/site/po-cfa-cdb.php b/site/po-cfa-cdb.php new file mode 100644 index 0000000..f9d371e --- /dev/null +++ b/site/po-cfa-cdb.php @@ -0,0 +1,165 @@ +<?php +include('include/entete.php'); +include('include/entete_cfa.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + + $query="select * from eta where id_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + + + // Récupération des sollicitations pour vérifier si au moins 1 RDV pour permettre l'ajout des dates des JPO + $q="SELECT `statut` + FROM `agenda` + WHERE `numEta`=:num_eta"; + $db2 = connect_base(); + $qR = $db2->prepare($q); + $qR->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $qR->execute(); + $creneauxCount = $qR->rowCount(); + $creneauxData = $qR->fetchAll(); + $rdv = 0; + if ($creneauxCount>0 ) { + foreach($creneauxData as $key => $value){ + if($value['statut'] == "reserve") $rdv++; + } + } + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + var submitBtnJpo = $('#btnSubJpoForm'), editJpo = $('#editJpo'), textareaJpo = $('#textareaJpo'); + + editJpo.click(function(e) { + e.preventDefault(); + textareaJpo.removeAttr("disabled"); + submitBtnJpo.removeClass("hidden"); + + }); + +}); +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Référent</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <span style="font-size: 0.9em;"> + <?php + echo decrypter($maCleDeCryptage,$data[0]['adresse1']); + if(!empty($data[0]['adresse2'])) echo ' - '.decrypter($maCleDeCryptage,$data[0]['adresse2']); + echo ' - '.decrypter($maCleDeCryptage,$data[0]['cp']).' '.decrypter($maCleDeCryptage,$data[0]['ville']); + ?> + </span><br /> + <b>Référent : </b><?php echo decrypter($maCleDeCryptage,$data[0]['nom_ref']);?> <a href="modifier-referent.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a> + </div> + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cfa.php">Vos trinômes</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cfa.php">Boite à outils</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="po-cfa.php">Portes ouvertes</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Portes ouvertes</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + + + + <?php + // Afficher le contenu JPO + pouvoir modifier + + $query="select * from jpo where id_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $jpoCount = $queryRequest->rowCount(); + $jpoData = $queryRequest->fetchAll(); + + if($rdv>0 && $jpoCount<1) + { + echo '<br/><div style="text-align: center;"><a href="ajouter-jpo.php">Ajouter vos journées portes ouvertes</a></div>'; + } else if ($rdv == 0){ + echo '<div class="textIntro"><br/><div class="alert alert-warning" role="alert">'; + echo "Au moins un rendez-vous doit-être pris pour pouvoir renseigner les dates de vos prochaines Journées Portes Ouvertes."; + echo '</div></div>'; + } + + if($jpoCount>0){ + foreach($jpoData as $key => $value){ + ?> + <div class="textIntro"> + <br/> + <div class="col-lg-6"> + <form name="jpo-form" id="jpo-form" method="post" action="traitement-jpo.php"> + <textarea rows="10" id="textareaJpo" name="textareaJpo" disabled style="width: 100%;"><?=utf8_decode(decrypter($maCleDeCryptage,$value['details_jpo']));?></textarea> + <input type="hidden" name="action" value="mo_jpo" /> + <input type="hidden" name="id_jpo" value="<?=$value['id_jpo']?>"/> + <button class="btn btn-block hidden" id="btnSubJpoForm" type="submit">Envoyer</button> + </form> + </div> + <div class="col-lg-6 text-left" style="padding-top: 30px;"> + Date de dernière modification : <?=MysqlToDateFr($value['date_create_jpo']);?><br/> + <a href="#" id="editJpo">Modifier vos journées portes ouvertes</a> + + </div> + </div> + <?php + + } + + } + ?> + + + + + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/po-cfa.php b/site/po-cfa.php new file mode 100644 index 0000000..aed02f0 --- /dev/null +++ b/site/po-cfa.php @@ -0,0 +1,184 @@ +<?php +include('include/entete.php'); +include('include/entete_cfa.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + + $query="select * from eta where id_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + + + // Récupération des sollicitations pour vérifier si au moins 1 RDV pour permettre l'ajout des dates des JPO + $q="SELECT `statut` + FROM `agenda` + WHERE `numEta`=:num_eta"; + $db2 = connect_base(); + $qR = $db2->prepare($q); + $qR->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $qR->execute(); + $creneauxCount = $qR->rowCount(); + $creneauxData = $qR->fetchAll(); + $rdv = 0; + if ($creneauxCount>0 ) { + foreach($creneauxData as $key => $value){ + if($value['statut'] == "reserve") $rdv++; + } + } + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> + <script type="text/javascript" src="js/wysiwyg.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> + <style> +#editeur{ + width: 100%; + height: 200px; + border: 1px solid black; + padding: 5px; + overflow: auto; +} + .contentPage form input {margin-bottom: 2px !important;} + </style> + + <script> + +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + var submitBtnJpo = $('#btnSubJpoForm'), editJpo = $('#editJpo'), textareaJpo = $('#textareaJpo'); + + editJpo.click(function(e) { + e.preventDefault(); + textareaJpo.removeAttr("disabled"); + submitBtnJpo.removeClass("hidden"); + + }); + +}); +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Référent</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <span style="font-size: 0.9em;"> + <?php + echo decrypter($maCleDeCryptage,$data[0]['adresse1']); + if(!empty($data[0]['adresse2'])) echo ' - '.decrypter($maCleDeCryptage,$data[0]['adresse2']); + echo ' - '.decrypter($maCleDeCryptage,$data[0]['cp']).' '.decrypter($maCleDeCryptage,$data[0]['ville']); + ?> + </span><br /> + <b>Référent : </b><?php echo decrypter($maCleDeCryptage,$data[0]['nom_ref']);?> <a href="modifier-referent.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a> + </div> + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cfa.php">Vos trinômes</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cfa.php">Boite à outils</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="po-cfa.php">Portes ouvertes</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Portes ouvertes</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + + + + <?php + // Afficher le contenu JPO + pouvoir modifier + + $query="select * from jpo where id_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $jpoCount = $queryRequest->rowCount(); + $jpoData = $queryRequest->fetchAll(); + + if($rdv>0 && $jpoCount<1) + { + echo '<br/><div style="text-align: center;"><a href="ajouter-jpo.php">Ajouter vos journées portes ouvertes</a></div>'; + } else if ($rdv == 0){ + echo '<div class="textIntro"><br/><div class="alert alert-warning" role="alert">'; + echo "Au moins un rendez-vous doit-être pris par l'une de vos équipes pour pouvoir renseigner les dates de vos prochaines Journées Portes Ouvertes."; + echo '</div></div>'; + } + + if($jpoCount>0){ + foreach($jpoData as $key => $value){ + ?> + + <br/> + <div class="col-lg-12"> + <form name="jpo-form" id="jpo-form" method="post" action="traitement-jpo.php" onsubmit="return getContent()" style="text-align: left!important;"> + <input type="button" value="G" style="font-weight:bold;" onClick="commande('bold');" title="Gras" /> + <input type="button" value="I" style="font-style:italic;" onClick="commande('italic');" title="Italique" /> + <input type="button" value="S" style="text-decoration:underline;" onClick="commande('underline');" title="Souligné" /> + <div id="editeur" class="form-control" required contentEditable style="width: 100%;"><?=utf8_decode(decrypter($maCleDeCryptage,$value['details_jpo']));?></div> + <textarea id="detailsJpo" name="detailsJpo" class="hidden" ></textarea> + <input type="hidden" name="action" value="mo_jpo" /> + <input type="hidden" name="id_jpo" value="<?=$value['id_jpo']?>"/> + <br/><br/> + <div class="col-lg-4 col-lg-offset-8"> + <p> + Date de dernière modification : <?=MysqlToDateFr($value['date_create_jpo']);?><br/> + </p> + <button class="btn btn-block" id="btnSubJpoForm" type="submit">Envoyer</button> + </div> + </form> + </div> + + <?php + + } + + } + ?> + + + + + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/politique-de-confidentialite.php b/site/politique-de-confidentialite.php new file mode 100644 index 0000000..16af5fb --- /dev/null +++ b/site/politique-de-confidentialite.php @@ -0,0 +1,41 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="stylesheet" href="css/bootstrap.min.css"> + <link rel="stylesheet" href="css/style.css"> + <script src="js/jquery-3.2.1.min.js"></script> + <script src="js/bootstrap.min.js"></script> + <title>FAFIH</title> + </head> + <body> + <?php include('include/header.php');?><!-- HEADER --> + <div class="container-fluid"> + <div class="row"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad"> + <img class="visible-sm visible-md visible-lg img-responsive imageBandeau" src="img/slide/slider2.jpg" alt="Métiers Hotel-Resto"> + <img class="hidden-lg hidden-md hidden-sm img-responsive imageBandeau" src="img/slide/slider2_resp.jpg" alt="Métiers Hotel-Resto"> + <div class="itemAbs"> + <img src="img/slide/logo_MHR_slide2.png" alt="Métiers Hotel-Resto"> + <hr class="separateurSlide"> + <span>Rejoignez un secteur</span><br> + <span>d’avenir qui recrute</span> + </div> + </div> + </div> + </div> + + <div class="container contenuTxt"><br> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Politique de confidentialité</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <br> +<div class="bold rougeI titreOrange "> 1. Qui sommes-nous ?</div><div ><p>Les informations suivantes vous sont communiquées afin que vous puissiez prendre connaissance des engagements en matière de protection des données à caractère personnel du Fafih, Organisme Paritaire Collecteur Agréé (OPCA) de l’Hôtellerie, de la Restauration, des loisirs et des Activités de Tourisme, sis au 3, rue de la Ville l’Evêque - 75008 Paris, qui agit en tant que responsable du traitement pour les traitements de données à caractère personnel évoqués dans le présent document.</p></div><div class="para"><div class="bold rougeI titreOrange "> 2. Les données à caractère personnel que nous traitons</div><div ><p>Dans le cadre des traitements de données à caractère personnel, le FAFIH collecte et traite notamment les catégories de données suivantes :</p><p>Coordonnées de l’adhérent ;</p><ul><li>Les coordonnées des salariés de l’adhérent ainsi que certains éléments de son parcours professionnel aux fins d’assurer la fourniture de formations adaptées ;</li><li>Les coordonnées des demandeurs d’emploi ainsi que certains éléments de son parcours professionnel aux fins d’assurer la fourniture de formations adaptées ;</li><li>Les coordonnées des tuteurs des salariés de l’adhérent ;</li><li>Les coordonnées des organismes de formation ;</li><li>L’historique des formations suivies.</li></ul><p>Nous pouvons recueillir des données personnelles notamment :</p><ul><li>par le biais des contrats souscrits ;</li><li>via nos sites internet et extranet ;</li><li>ou lorsque vous nous les donnez de manière volontaire.</li></ul></div></div><div class="para"><div class="bold rougeI titreOrange "> 3. Les finalités et les bases juridiques de nos traitements de données</div><div ><p class="pStrong">3.1 Les finalités de nos traitements</strong></p><p>Les traitements que nous mettons en œuvre le sont pour assurer les finalités suivantes :</p><ul><li>la gestion et le suivi des demandes de renseignements formulées et des réponses à apportées ;</li><li>la gestion et le suivi des offres d’emploi du FAFIH :</li><li>la gestion et le suivi des formations ;</li><li>l’inscription à la newsletter.</li></ul><p class="pStrong">3.2 Les fondements juridiques de nos traitements</strong></p><p>Nous ne mettons en œuvre des traitements de données que si au moins l’une des conditions suivantes est remplie :</p><ul><li>votre consentement aux opérations de traitement a été recueilli ;</li><li>l’existence de notre intérêt légitime, ou de celui d’un tiers, qui justifie que nous mettions en œuvre le traitement de données à caractère personnel concerné ;</li><li>l’exécution de l’engagement qui nous lie à vous nécessitant que nous mettions en œuvre le traitement de données à caractère personnel concernée ;</li><li>nous sommes tenus par des obligations légales et réglementaires qui nécessitent la mise en œuvre du traitement de données à caractère personnel concerné.</li></ul></div></div><div class="para"><div class="bold rougeI titreOrange "> 4. Les destinataires de vos données</div><div ><p>Les données à caractère personnel que nous collectons, de même que celles qui sont recueillies ultérieurement, nous sont destinées en notre qualité de responsable du traitement.</p><p>Nous veillons à ce que seules les personnes habilités puissent avoir accès à ces données. Nos prestataires de services peuvent être destinataires de ces données pour réaliser les prestations que nous leur confions. Certaines données personnelles peuvent être adressées à des tiers ou à des autorités légalement habilitées et ce pour satisfaire nos obligations légales, réglementaires ou conventionnelles.</p><p>Elles pourront être communiquées à ces entités pour des finalités visées aux présentes. Ces opérations sont réalisées sur la base d’instruments conformes à la réglementation applicable et aptes à vous assurer la protection et le respect de vos droits.</p></div></div><div class="para"><div class="bold rougeI titreOrange "> 5. Les durées de conservation de vos données</div><div ><p>Les durées de conservation que nous appliquons à vos données à caractère personnel sont proportionnées aux finalités pour lesquelles elles ont été collectées. En conséquence, nous organisons notre politique de conservation des données pour la stricte durée nécessaire au traitement, conformément à notre politique de durée de conservation.</p></div></div><div class="para"><div class="bold rougeI titreOrange "> 6. Les droits qui vous sont reconnus</div><div ><p class="pStrong">6.1Votre droit à l’information</strong></p><p>Vous reconnaissez que la présente politique vous informe des finalités, du cadre légal, des intérêts, des destinataires ou catégories de destinataires avec lesquels sont partagées vos données personnelles, et de la possibilité d’un transfert de données vers un pays tiers ou à une organisation internationale.</p><p>En plus de ces informations et dans l’objectif de garantir un traitement équitable et transparent de vos données, vous déclarez avoir reçu des informations complémentaires concernant :</p><ul><li>la durée de conservation de vos données personnelles ;</li><li>l’existence des droits qui sont reconnus à votre bénéfice et des modalités de leur exercice.</li></ul><p>Si nous décidons de traiter des données pour des finalités autres que celles indiquées, toutes les informations relatives à ces nouvelles finalités vous seront communiquées.</p><p class="pStrong">6.2 Votre droit d’accès et à la rectification de vos données</strong></p><p>Vous disposez du droit d’accéder et de faire rectifier vos données personnelles, que vous pouvez exercer auprès du Service juridique à l’adresse&nbsp;<a href="mailto:privacy@fafih.com">privacy@fafih.com</a>.</p><p>A ce titre, vous avez la confirmation que vos données personnelles sont ou ne sont pas traitées et lorsqu’elles le sont, et disposez de l’accès à vos données ainsi qu’aux informations concernant :</p><ul><li>les finalités du traitement ;</li><li>les catégories de données personnelles concernées ;</li><li>les destinataires ou catégories de destinataires ainsi que les organisations internationales auxquels les données personnelles ont été ou seront communiquées, en particulier les destinataires qui sont établis dans des pays tiers ;</li><li>lorsque cela est possible, la durée de conservation des données personnelles envisagée ou, lorsque ce n’est pas possible, les critères utilisés pour déterminer cette durée ;</li><li>l’existence du droit de demander au responsable du traitement la rectification ou l’effacement de vos données personnelles, du droit de demander une limitation du traitement de vos données personnelles, d’un droit à la portabilité de vos données, du droit de vous opposer à ce traitement ;</li><li>le droit d’introduire une réclamation auprès d’une autorité de contrôle ;</li><li>des informations relatives à la source des données quand elles ne sont pas collectées directement auprès des personnes concernées ;</li><li>l’existence d’une prise de décision automatisée, y compris de profilage, et dans ce dernier cas, des informations utiles concernant la logique sous-jacente, ainsi que l’importance et les conséquences prévues de ce traitement pour les personnes concernées.</li></ul><p>Vous pouvez nous demander que vos données personnelles soient, selon les cas, rectifiées, complétées si elles sont inexactes, incomplètes, équivoques, périmées.</p><p class="pStrong">6.3 Votre droit à l’effacement de vos données</strong></p><p>Vous pouvez nous demander l’effacement de vos données personnelles lorsque l’un des motifs suivants s’applique :</p><ul><li>les données personnelles ne sont plus nécessaires au regard des finalités pour lesquelles elles ont été collectées ou traitées d’une autre manière ;</li><li>vous retirez le consentement préalablement donné ;</li><li>vous vous opposez au traitement de vos données personnelles lorsqu’il n’existe pas de motif légal audit traitement ;</li><li>le traitement de données personnelles n’est pas conforme aux dispositions de la législation et de la réglementation applicable ;</li><li>vos données personnelles ont été collectées dans le cadre de l’offre de services de la société de l’information aux mineurs de 15 ans et moins.</li></ul><p>Néanmoins, l’exercice de ce droit ne sera pas possible lorsque la conservation de vos données personnelles est nécessaire au regard de la législation ou de la réglementation et notamment par exemple pour la constatation, l’exercice ou la défense de droits en justice.</p><p class="pStrong">6.4 Votre droit à la limitation des traitements de données</strong></p><p>Vous pouvez demander la limitation du traitement de vos données personnelles dans les cas prévus par la législation et la réglementation.</p><p class="pStrong">6.5 Votre droit de vous opposer aux traitements de données</strong></p><p>Vous avez le droit de vous opposer à un traitement de données personnelles vous concernant lorsque le traitement est fondé sur l’intérêt légitime du responsable du traitement.</p><p class="pStrong">6.6&nbsp;Votre droit à la portabilité de vos données</strong></p><p>Depuis le 25 mai 2018, vous disposerez du droit à la portabilité de vos données personnelles.</p><p>Les données sur lesquelles peut s’exercer ce droit sont :</p><ul><li>uniquement vos données personnelles, ce qui exclut les données personnelles anonymisées ou les données qui ne vous concernent pas ;</li><li>les données personnelles déclaratives ainsi que les données personnelles de fonctionnement évoquées précédemment ;</li><li>les données personnelles qui ne portent pas atteinte aux droits et libertés de tiers telles que celles protégées par le secret des affaires.</li></ul><p>Ce droit est limité aux traitements basés sur le consentement ou sur un contrat ainsi qu’aux données personnelles que vous avez personnellement générées.</p><p>Ce droit n’inclut ni les données dérivées ni les données inférées, qui sont des données personnelles créées par le Fafih.</p><p class="pStrong">6.7 Votre droit de retirer votre consentement</strong></p><p>Lorsque les traitements de données que nous mettons en œuvre sont fondés sur votre consentement, vous pouvez le retirer à n’importe quel moment. Nous cessons alors de traiter vos données à caractère personnel sans les opérations antérieures pour lesquelles vous aviez consenti ne soient remises en cause.</p><p class="pStrong">6.8 Votre droit d’introduire un recours</strong></p><p>Vous avez le droit d’introduire une réclamation auprès de la Cnil sur le territoire français et ce sans préjudice de tout autre recours administratif ou juridictionnel.</p><p class="pStrong">6.9 Votre droit de définir des directives post-mortem</strong></p><p>Vous avez la possibilité de définir des directives relatives à la conservation, à l’effacement et à la communication de vos données personnelles après votre décès et ce auprès d’un tiers de confiance, certifié et chargé de faire respecter la volonté du défunt conformément aux exigences du cadre juridique applicable.</p><p class="pStrong">6.10Les modalités d’exercice de vos droits</strong></p><p>Tous les droits énumérés ci-avant peuvent être exercés à l’adresse mél suivante <a href="mailto:privacy@fafih.com">privacy@fafih.com</a> ou par courrier accompagné d’une copie d’un document d’identité en s’adressant à Service Juridique, à l’adresse suivante 3, rue de la Ville l’Evêque - 75008 Paris.</p><p>Néanmoins, en ce qui concerne l’exercice du droit à l’information, nous pouvons ne pas avoir l’obligation d’y donner suite si :</p><ul><li>vous disposez déjà de cette information ;</li><li>l’enregistrement ou la communication de vos données personnelles sont expressément prévus par la loi ;</li><li>la communication d’informations se révèle impossible ;</li><li>la communication d’informations exigerait des efforts disproportionnés.</li></ul></div></div><div class="para"><div class="bold rougeI titreOrange "> 7. Vos obligations en cas de collecte indirecte de données </div><div ><p>Il vous est rappelé que vous devez informer tous salariés dont des données à caractère personnel sont collectées de façon indirecte du fait que :</p><ul><li>des informations nominatives les concernant sont collectées ;</li><li>ces données sont analysées, traitées et transmises aux services du FAFIH ainsi qu’à ses partenaires ;</li><li>ils disposent de droits en application des articles 39 et suivants de la loi Informatique et libertés ;</li><li>leurs droits s’exercent auprès des services qu’il vous appartiendra de définir.</li></ul></div></div><div class="para"><div class="bold rougeI titreOrange "> 8. Sécurité</div><div ><p>La sécurité des données personnelles est importante pour le Fafih.&nbsp;</p><p>Conformément aux obligations légales le Fafih conserve ces informations dans des conditions de sécurité renforcées et selon des durées limitées dans le temps, proportionnelles aux finalités pour lesquelles vous nous les avez communiquées.&nbsp;</p><p>Le Fafih suit les normes généralement acceptées pour protéger les données personnelles qui lui sont soumis, à la fois lors de la transmission et une fois que le Fafih les reçoit.</p></div></div><div class="para"><div class="bold rougeI titreOrange "> 9. Mise à jour de la présente politique de confidentialité</div><div ><p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; line-height: normal; mso-outline-level: 2;">La présente politique est susceptible d’être modifiée ou aménagée à tout moment par le Fafih. Vous êtes invités à la consulter régulièrement. Dernière modification : le 02/07/2018.</p></div> + + </div><!-- RESEAUX SOCIAUX --> + <?php include('include/footer.php');?> + + </body> +</html> \ No newline at end of file diff --git a/site/portes-ouvertes.php b/site/portes-ouvertes.php new file mode 100644 index 0000000..951953a --- /dev/null +++ b/site/portes-ouvertes.php @@ -0,0 +1,198 @@ +<?php +include('config/config.inc.php'); +include('include/agenda.inc.php'); +include('config/lib.inc.php'); +$maCleDeCryptage = getCleDeCryptage(); + + +$query="SELECT * + FROM jpo + INNER JOIN eta ON jpo.id_eta = eta.id_eta"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); + +$info=array(); + + + +foreach($data as $cle=>$val){ + $info[$val['id_eta']]['eta']=decrypter($maCleDeCryptage,$val['nom_eta']); + $info[$val['id_eta']]['adr1']=decrypter($maCleDeCryptage,$val['adresse1']); + $info[$val['id_eta']]['adr2']=decrypter($maCleDeCryptage,$val['adresse2']); + $info[$val['id_eta']]['cp']=decrypter($maCleDeCryptage,$val['cp']); + $info[$val['id_eta']]['ville']=decrypter($maCleDeCryptage,$val['ville']); + $info[$val['id_eta']]['lat']=$val['lat']; + $info[$val['id_eta']]['lon']=$val['lon']; + $info[$val['id_eta']]['jpo']=decrypter($maCleDeCryptage,$val['details_jpo']); +} + +?> +<!doctype html> +<html> + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="stylesheet" href="css/bootstrap.min.css"> + <link rel="stylesheet" href="css/style.css"> + <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyAD8dr4sS_iFafcU_AowzS9p9B306iQEZQ"></script> + <script src="js/jquery-3.2.1.min.js"></script> + <script type="text/javascript" src="js/fonctions.js"></script> + <script src="js/bootstrap.min.js"></script> + <title>Deciday!</title> + <script> + jQuery(document).ready(function(){ + + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + }); + </script> + <style> + .lienCarte{color: #87318b;font-family: "Myriad Pro Bold";} + .lienCarte:hover{ text-decoration: none;color: #87318b;} + .filtreCarte{ text-align: center;font-size: 16px;color: #87318b;text-align: center;font-family: "Myriad Pro Bold";text-transform: uppercase; padding:16px 0 10px 0;} + .filtreCarte select{ color:#000; margin-top:6px;} + </style> + <script> + function pinSymbol(color) { + return { + path: 'M 0,0 C -2,-20 -10,-22 -10,-30 A 10,10 0 1,1 10,-30 C 10,-22 2,-20 0,0 z M -2,-30 a 2,2 0 1,1 4,0 2,2 0 1,1 -4,0', + fillColor: color, + fillOpacity: 1, + strokeColor: '#000', + strokeWeight: 2, + scale: 1, + }; + } + //#FFA64D on + //#CACAD9 off + function initialisation(){ + var optionsCarte = { + zoom: 5, + center: new google.maps.LatLng(46.52863469527167,2.43896484375) + }; + var maCarte = new google.maps.Map(document.getElementById("divCarte"), optionsCarte); + <?php + $color="#FFA64D"; + + foreach($info as $key => $value){ + $text=""; + $text.="<b>".$value['eta']."</b><br />".$value['adr1']."<br />".$value['adr2']."<br />".$value['cp']."&nbsp;".$value['ville']."<br />"; + ?> + + var optionsMarqueur = { + position: new google.maps.LatLng(<?=$value['lat']?>,<?=$value['lon']?>), + map: maCarte, + title:'<?=addslashes($value['eta'])?>', + icon: pinSymbol("<?=$color?>"), + }; + + var marqueur<?=$key?> = new google.maps.Marker(optionsMarqueur); + var infowindow<?=$key?> = new google.maps.InfoWindow({ + content: '' + }); + var divDetail<?=$key?> = $('#divDetail<?=$key?>'); + var alldivDetail = $('.divDetail'); + var allInfoWindows = []; + + + + marqueur<?=$key?>.addListener('click', function() { + allInfoWindows.push(infowindow<?=$key?>); + + infowindow<?=$key?>.setContent('<?=addslashes($text)?>'); + infowindow<?=$key?>.open(maCarte, this); + alldivDetail.addClass('hidden'); + divDetail<?=$key?>.removeClass('hidden'); + + }); + + google.maps.event.addListener(maCarte, 'click', function() { + alldivDetail.addClass('hidden'); + + for(var i=0; i<alldivDetail.length; i++){ + allInfoWindows[i].close(); + } + + }); + <?php + + } + ?> + + } + $(document).ready(function() { + initialisation(); + }); + </script> + + </head> + <body> + <?php include('include/header.php');?> + <div class="container-fluid" style="margin-top: -20px;"> + <div class="row" style="background-color: #5B2050;"> + <a href="#" style="cursor:auto"> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 noPad"> + <img class="visible-sm visible-md visible-lg img-responsive imageBandeau" src="img/slide/deciday_decouvrez_deciday_slider.jpg" alt="Métiers Hotel-Resto"> + <img class="hidden-lg hidden-md hidden-sm img-responsive imageBandeau" src="img/slide/slider_new_resp.jpg" alt="Métiers Hotel-Resto"> + </div> + </a> + </div> + </div> + <div class="container contenuTxt"><br> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Portes ouvertes</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-2 txtChapeau"> + <p>Retrouvez les établissements qui vous accueillerons lors de leurs journées portes ouvertes.<br /><br /></p> + </div> + + </div> + <div class="col-lg-4 col-md-6 col-sm-12 col-xs-12 col-lg-offset-4 col-md-offset-2"> + <div id="divCarte" style='height:500px;'></div><br /><br /> + </div> + <div class="col-lg-2 col-md-2 col-sm-12 col-xs-12 "> + <?php foreach($info as $key => $value){ + $detail = "<b style=\"color:#e54c52;font-family:'Myriad Pro Bold'; font-size:22px; line-height:28px;\">".$value['eta']."</b><br/><br/>".nl2br(strip_tags(utf8_decode($value['jpo']),"<b><u><br><ul><li><div>")); + ?> + <div id="divDetail<?=$key?>" style='height:500px; font-size: 16px; color: #58595b; border: 1px solid rgba(200,200,200,0.20); padding: 5px; border-radius: 5px;' class="divDetail hidden"> + <?=$detail?> + </div> + <?php } ?> + + </div> + + <div class="container " style="padding-top:20px; margin-top:8px; "> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage"> + En savoir plus : + </div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"> + </div> + + </div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 col-lg-offset-2 col-md-offset-2 col-sm-offset-1 txtIntro contenuTxt"> + <p>Rendez-vous sur <a href="http://www.metiers-hotel-resto.fr/" target="_blank" class="lienContent">www.metiers-hotel-resto.fr</a> pour découvrir :</p> + <ul class="liste"> + <li><span>des fiches détaillées sur tous les métiers du secteur</span></li> + <li><span>les différentes formations du CAP au master 2</span></li> + <li><span>des témoignages vidéo de professionnels</span></li> + </ul> + <p>et suivez-nous sur les réseaux sociaux : <a href="https://www.facebook.com/metiers.hotel.resto/" target="_blank"><img src="images/facebook.jpg" alt="Facebook" style="width: 20px; height:auto;" /></a>&nbsp;<a href="https://www.youtube.com/channel/UCY_U2kN3Wzg5HY_d7bOlOGg" target="_blank"><img src="images/youtube.jpg" alt="Youtube" style="width: 20px; height:auto;" /></a></p> + </div> + <div class="clearfix"></div> + + </div><!-- RESEAUX SOCIAUX --> + <?php include('include/footer.php');?> + </body> +</html> \ No newline at end of file diff --git a/site/refuse_pro.php b/site/refuse_pro.php new file mode 100644 index 0000000..e7e80af --- /dev/null +++ b/site/refuse_pro.php @@ -0,0 +1,97 @@ +<?php +include('include/entete.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + + +if(isset($_GET['id']) && !empty($_GET['id'])){ + + $id=$_GET['id']; + + $query = 'update inscriptions_pro set statut=2 where id_pro=:id_pro'; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_pro', $id, PDO::PARAM_INT ); + $queryRequest->execute(); + + // Envoi de la notification au professionnel + $query2=" + SELECT * from inscriptions_pro + WHERE id_pro=:id_pro + "; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query2 ); + $queryRequest2->bindParam( ':id_pro', $id, PDO::PARAM_INT ); + $queryRequest2->execute(); + $dataPro=$queryRequest2->fetchAll(); + + $countPro = $queryRequest2->rowCount(); + if($countPro!=1){ //Pro introuvable + header('location:./'); + exit(); + } + $maCleDeCryptage = getCleDeCryptage(); + $nomEtaPro = decrypter($maCleDeCryptage,$dataPro[0]['etablissement_pro']); + $nomPro = decrypter($maCleDeCryptage,$dataPro[0]['nom_pro']); + $prenomPro = decrypter($maCleDeCryptage,$dataPro[0]['prenom_pro']); + $emailPro = decrypter($maCleDeCryptage,$dataPro[0]['email_pro']); + + //Envoi d'un email au collège ou lycée + require 'config/class.phpmailer.php'; + require 'config/phpmailer.settings.php'; + + $to=$emailPro; + $objet="Demande d'inscription refusée"; + + $affich=''; + $affich.='<table cellpadding="3" style="font-family:ARIAL; width:600px;">'; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="cid:bando" alt="" width="600" height="150" border="0" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Bonjour,</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Votre inscription dans le cadre de l\'évènement Déciday! a été refusée.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Cordialement.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">L\'équipe DECIDAY.</td>'; + $affich.='</tr>'."\n"; + + $affich.='</table>'; + + + + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + + $_SESSION['msg']='Le professionnel est refusé, un email de notification lui a été adressé.'; + + header('location:suivi-pro-adm.php'); + exit(); + +} \ No newline at end of file diff --git a/site/sollicitation-actions.php b/site/sollicitation-actions.php new file mode 100644 index 0000000..c3851af --- /dev/null +++ b/site/sollicitation-actions.php @@ -0,0 +1,419 @@ +<?php + +include('include/entete.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); +include('include/agenda.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +/************************************************ +//SOLLICITATION : RESERVATION +************************************************/ + + if(isset($_POST['myAction']) && $_POST['myAction']=='agendaForm'){ + + if(empty($_POST['ncfa']) || empty($_POST['mydate']) || empty($_POST['mycreneau'])){ + $_SESSION['msg']='Une erreur a été rencontrée à la réservation du créneau.'; + header('location:sollicitation-agenda.php?ncfa=399'); + exit(); + } + + foreach($_POST as $cle=>$val){ + $$cle=$val; + //echo $cle.' => '.$val.'<br />'; + } + + $etaCoLy = crypter($maCleDeCryptage,$etaCoLy); + $nomCoLy = crypter($maCleDeCryptage,$nomCoLy); + $prenomCoLy = crypter($maCleDeCryptage,$prenomCoLy); + $fonctionCoLy = crypter($maCleDeCryptage,$fonctionCoLy); + $telCoLy = crypter($maCleDeCryptage,$telCoLy); + $emlCoLy = crypter($maCleDeCryptage,$emlCoLy); + $adresse1CoLy = crypter($maCleDeCryptage,$adresse1CoLy); + $adresse2CoLy = crypter($maCleDeCryptage,$adresse2CoLy); + $cpCoLy = crypter($maCleDeCryptage,$cpCoLy); + $villeCoLy = crypter($maCleDeCryptage,$villeCoLy); + $commentCoLy = crypter($maCleDeCryptage,$commentCoLy); + + if($mycreneau == 'am'){ + $creneau1 = 'am1'; + $creneau2 = 'am2'; + $nomCreneau = "Matin"; + } + if($mycreneau == 'pm'){ + $creneau1 = 'pm1'; + $creneau2 = 'pm2'; + $nomCreneau = "Après-midi"; + } + + //pour tester + /*$mydate = '2019-01-28'; + $creneau1 = 'am1'; + $creneau2 = 'am2';*/ + + $db = connect_base(); + + //Mémorise les infos du CFA par défaut dans le cas où aucun capitaine n'est trouvé + $query=" + SELECT * from eta + WHERE id_eta=:num_eta + "; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->execute(); + $dataCfa=$queryRequest->fetchAll(); + $countCfa = $queryRequest->rowCount(); + if($countCfa!=1){ //CFA introuvable + header('location:./'); + exit(); + } + $emlReferrent = decrypter($maCleDeCryptage,$dataCfa[0]['email_ref']); + $nomEta = decrypter($maCleDeCryptage,$dataCfa[0]['nom_eta']); + $idCapitaine = 0; + $lastAction = 'ref'; + + + + //Vérifie si le créneau est libre pour un des jours suivants + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + INNER JOIN agenda ON id_cap = numCap + WHERE id_eta=:id_eta + AND jour=:jour AND (creneau=:creneau1 || creneau=:creneau2) + AND numCoLy=0 AND statut='libre' + ORDER BY id_cap"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $mydate, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau1', $creneau1, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau2', $creneau2, PDO::PARAM_STR ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + if($count>0){ + $data=$queryRequest->fetchAll(); + $emlCapitaine = decrypter($maCleDeCryptage,$data[0]['email_cap']); + $idCapitaine = $data[0]['id_cap']; + $lastAction = 'cap'; + } + + //echo $emlCapitaine;echo $emlReferrent;exit(); + + $dateCreate = date('Y-m-d'); + $provenance = 'sollicitation'; + + if(!empty($ncfa)){ + + //Insertion de l'établissement + $query=" + INSERT INTO sollicitations (etaCoLy, nomCoLy, prenomCoLy, fonctionCoLy, telCoLy, emlCoLy, adresse1CoLy, adresse2CoLy, cpCoLy, villeCoLy, nbClasses, nbEleves, commentCoLy, dateCreate, chxNumEta, provenance, chxJour, chxCreneau, idCapitaine, lastAction) + VALUES (:etaCoLy, :nomCoLy, :prenomCoLy, :fonctionCoLy, :telCoLy, :emlCoLy, :adresse1CoLy, :adresse2CoLy, :cpCoLy, :villeCoLy, :nbClasses, :nbEleves, :commentCoLy, :dateCreate, :chxNumEta, :provenance, :chxJour, :chxCreneau, :idCapitaine, :lastAction)"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':etaCoLy', $etaCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nomCoLy', $nomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenomCoLy', $prenomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':fonctionCoLy', $fonctionCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':telCoLy', $telCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':emlCoLy', $emlCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse1CoLy', $adresse1CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse2CoLy', $adresse2CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':cpCoLy', $cpCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':villeCoLy', $villeCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nbClasses', $nbClasses, PDO::PARAM_INT ); + $queryRequest->bindParam( ':nbEleves', $nbEleves, PDO::PARAM_INT ); + $queryRequest->bindParam( ':commentCoLy', $commentCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':dateCreate', $dateCreate, PDO::PARAM_STR ); + $queryRequest->bindParam( ':chxNumEta', $ncfa, PDO::PARAM_INT ); + $queryRequest->bindParam( ':provenance', $provenance, PDO::PARAM_INT ); + $queryRequest->bindParam( ':chxJour', $mydate, PDO::PARAM_INT ); + $queryRequest->bindParam( ':chxCreneau', $mycreneau, PDO::PARAM_INT ); + $queryRequest->bindParam( ':idCapitaine', $idCapitaine, PDO::PARAM_INT ); + $queryRequest->bindParam( ':lastAction', $lastAction, PDO::PARAM_INT ); + $queryRequest->execute(); + + //Envoi d'un email au capitaine ou référrent + require 'config/class.phpmailer.php'; + $mail = new PHPMailer; + + // Configuration du SMTP + $mail->IsSMTP(); + $mail->Host = 'smtp-in.oximailing.com'; + $mail->Port = 587; + $mail->SMTPAuth = true; + $mail->Username = 'BNCx6kLkQZxXYRAZrYVw'; + $mail->Password = 'xoSAgSV6MrP568KqC3FM'; + $mail->SMTPSecure ='tls'; + + // Entête de l'email + $mail->From = 'inscriptions@deciday.fr'; + $mail->FromName = utf8_decode("DECIDAY!"); + + if(!empty($emlCapitaine)) $to=$emlCapitaine; else $to=$emlReferrent; + + $objet="Nouvelle sollicitation DECIDAY !"; + + $adresseCL = $_POST['adresse1CoLy']; + if(!empty($adresse1CoLy)) $adresseCL .= '<br />'.$_POST['adresse2CoLy']; + $adresseCL .= '<br />'.$_POST['cpCoLy'].' '.$_POST['villeCoLy']; + + $affich=''; + $affich.='<table cellpadding="3" style="font-family:ARIAL; width:600px;">'; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="cid:bando" alt="" width="600" height="150" border="0" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Bonjour,</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Dans le cadre de l\'évènement Déciday !, une sollicitation a été effectuée par un établissement pour la venue d\'un trinôme au sein de ses locaux.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Récapitulatif de la sollicitation : </td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Jour : </b></td><td>'.MysqlToDateFr($mydate).'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Créneau : </b></td><td>'.$nomCreneau.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Etablissement demandeur : </b></td><td>'.$_POST['etaCoLy'].'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Adresse : </b></td><td>'.$adresseCL.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Nom : </b></td><td>'.$_POST['prenomCoLy'].' '.mb_strtoupper($_POST['nomCoLy']).'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Fonction : </b></td><td>'.$_POST['fonctionCoLy'].'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Téléphone : </b></td><td>'.$_POST['telCoLy'].'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>email : </b></td><td>'.$_POST['emlCoLy'].'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Commentaires : </b></td><td>'.nl2br($_POST['commentCoLy']).'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Nombre de classes : </b></td><td>'.$nbClasses.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Nombre d\'élèves : </b></td><td>'.$nbEleves.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Etablissement demandé : </b></td><td>'.$nomEta.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><b>Vous pouvez traiter vos sollicitations en vous connectant sur votre espace.</b></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2" align="center"><table style="width:200px;background-color: #674B64;border: 1px solid #371B34;padding: 4px 6px;"><tr><td align="center"><a href="http://deciday.fr/connexion-cfa.php" style="color: #FFF;text-decoration: none;text-transform: uppercase; font-family:ARIAL;"><strong>Me connecter <br />sur Deciday !</strong></a></td></tr></table></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Cordialement.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">L\'équipe DECIDAY.</td>'; + $affich.='</tr>'."\n"; + + echo $affich.='</table>'; + + + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + /* copie de controle*/ + $mail2 = new PHPMailer; + + // Configuration du SMTP + $mail2->IsSMTP(); + $mail2->Host = 'smtp-in.oximailing.com'; + $mail2->Port = 587; + $mail2->SMTPAuth = true; + $mail2->Username = 'BNCx6kLkQZxXYRAZrYVw'; + $mail2->Password = 'xoSAgSV6MrP568KqC3FM'; + $mail2->SMTPSecure ='tls'; + + // Entête de l'email + $mail2->From = 'inscriptions@deciday.fr'; + $mail2->FromName = utf8_decode("DECIDAY!"); + $affich2 = $affich.$to; + $mail2->IsHTML(true); + $mail2->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail2->Subject = utf8_decode($objet); + $mail2->Body = utf8_decode($affich2); + $mail2->AddAddress('s.descamps@fafih.com'); + $mail2->AddBCC('tech@pointvirgule.net'); + $mail2->AltBody = "/-------//--------/"; + $mail2->send(); + + /* confirmation enseignant*/ + $mail3 = new PHPMailer; + + // Configuration du SMTP + $mail3->IsSMTP(); + $mail3->Host = 'smtp-in.oximailing.com'; + $mail3->Port = 587; + $mail3->SMTPAuth = true; + $mail3->Username = 'BNCx6kLkQZxXYRAZrYVw'; + $mail3->Password = 'xoSAgSV6MrP568KqC3FM'; + $mail3->SMTPSecure ='tls'; + + // Entête de l'email + $mail3->From = 'inscriptions@deciday.fr'; + $mail3->FromName = utf8_decode("DECIDAY!"); + $affich3=''; + $objet2="Votre sollicitation DECIDAY !"; + $affich3.='<table cellpadding="3" style="font-family:ARIAL; width:600px;">'; + $affich3.='<tr>'; + $affich3.='<td colspan="2"><img src="" /></td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2"><img src="cid:bando" alt="" width="600" height="150" border="0" /></td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">&nbsp;</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">Bonjour,</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">&nbsp;</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">Votre sollicitation a bien été transmise.</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">&nbsp;</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">Récapitulatif de votre sollicitation : </td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">&nbsp;</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td align="right"><b>Jour : </b></td><td>'.MysqlToDateFr($mydate).'</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td align="right"><b>Créneau : </b></td><td>'.$nomCreneau.'</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">&nbsp;</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td align="right"><b>Etablissement demandé : </b></td><td>'.$nomEta.'</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">&nbsp;</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2"><b>Nous vous remercions pour votre participation à Deciday! Un kit pédagogique est à votre disposition pour préparer votre classe à la venue du trinôme.</b></td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<tr>'; + $affich3.='<td colspan="2"><b>Veuillez trouver ci-dessous les liens de téléchargement du kit pédagogique.</b></td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">&nbsp;</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">'; + $tFilesBao = listFilesBao('kitPedago'); + foreach($tFilesBao as $k=>$v){ + $affich3 .= '<a href="http://deciday.fr/boite-outils/'.$v['file'].'" target="_blank">'.$v['title'].'</a><br />'; + } + $affich3.='</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">&nbsp;</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">Cordialement.</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">&nbsp;</td>'; + $affich3.='</tr>'."\n"; + $affich3.='<tr>'; + $affich3.='<td colspan="2">L\'équipe DECIDAY.</td>'; + $affich3.='</tr>'."\n"; + + $affich3.='</table>'; + $to = $_POST['emlCoLy']; + $mail3->IsHTML(true); + $mail3->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail3->Subject = utf8_decode($objet2); + $mail3->Body = utf8_decode($affich3); + $mail3->AddAddress($to); + $mail3->AltBody = "/-------//--------/"; + $mail3->send(); + + $_SESSION['msg']='Votre sollicitation a bien été transmise.'; + + + }else{ + + $_SESSION['msg']='Le créneau n\'a pas pu être réservé car il n\'est pas disponible.'; + + } + + header('location:index.php'); + exit(); + + + } + +header('location:index.php?err=1'); +exit(); + +?> \ No newline at end of file diff --git a/site/sollicitation-agenda.php b/site/sollicitation-agenda.php new file mode 100644 index 0000000..1a875d8 --- /dev/null +++ b/site/sollicitation-agenda.php @@ -0,0 +1,217 @@ +<?php + + include('include/entete.php'); + + if(isset($_GET['ncfa']) && !empty($_GET['ncfa'])){ + $ncfa = $_GET['ncfa']; + }else{ + header('location:./'); + exit(); + } + + $mydate = ""; + + if(isset($_GET['mydate']) && !empty($_GET['mydate'])){ + $mydate = $_GET['mydate']; + } + + include('config/config.inc.php'); + include('config/lib.inc.php'); + include('include/agenda.inc.php'); + + $maCleDeCryptage = getCleDeCryptage(); + + //Affiche les infos du CFA + $query=" + SELECT * from eta + WHERE id_eta=:num_eta + "; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->execute(); + $dataCfa=$queryRequest->fetchAll(); + $countCfa = $queryRequest->rowCount(); + if($countCfa!=1){ //CFA introuvable + header('location:./'); + exit(); + } + $nomEta = $dataCfa[0]['nom_eta']; + + /*************************************** + DISPONIBILITES MATIN ET AM PAR DATES + ***************************************/ + + //Iniitialise les disponibilités par défaut (sur la premier jour et sur le second) + $arrDispos = array(); + foreach($arrWeek as $kw=>$vw){ + foreach($vw as $vDay){ + if(!empty($vDay)){ + foreach($arrCreneauxSol as $kCr => $vCr){ + if($vDay==$theGreatDay) $arrDispos[$vDay][$vCr] = 'libre'; + else $arrDispos[$vDay][$vCr] = 'indisponible'; + } + } + } + } + //echo '<pre>'; print_r($arrDispos); echo '</pre>'; + + //Contrôle si au moins un capitaine est déclaré pour le CFA + $query=" + SELECT * from capitaines + WHERE num_eta=:num_eta + ORDER BY id_Cap"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->execute(); + //$dataCap=$queryRequest->fetchAll(); + $countCap = $queryRequest->rowCount(); + if($countCap==0){ + header('location:./'); + exit(); + } + + + //Met à jour les disponibilités + $query=" + SELECT * from capitaines + INNER JOIN agenda ON id_cap = numCap + WHERE num_eta=:num_eta + ORDER BY jour,creneau,id_cap"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + $count = $queryRequest->rowCount(); + + $arrCountCreneaux = array(); + + foreach($data as $k=>$v){ + + //echo '<pre>'; print_r($v); echo '</pre>'; + + $thejour = $v['jour']; + if($v['creneau']=='am1' || $v['creneau']=='am2') $thecreneau = 'am'; + if($v['creneau']=='pm1' || $v['creneau']=='pm2') $thecreneau = 'pm'; + + if($v['statut']=='libre'){ + $arrDispos[$thejour][$thecreneau] = 'libre'; //Si un capitaine n'a effectué aucune action sur un creneau de la première date + if(isset($arrCountCreneaux[$thejour][$thecreneau])) $arrCountCreneaux[$thejour][$thecreneau]++; else $arrCountCreneaux[$thejour][$thecreneau]=1; //Compte le nombre de dispos par créneau + } + + } + + //echo '<pre>'; print_r($arrCountCreneaux); echo '</pre>'; + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script> + +function submitAgendaS(mydate,mycreneau){ + document.frmAgendaS.mydate.value = mydate; + document.frmAgendaS.mycreneau.value = mycreneau; + if(document.frmAgendaS.ncfa.value>0){ + if(window.confirm('Êtes-vous sûr de choisir ce créneau ?')) document.frmAgendaS.submit(); + } +} + +jQuery(document).ready(function(){ + + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + +}); +</script> + +</head> + +<body> + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Collèges, Lycées<br />Réservez la date pour la venue d'un trinôme au sein de votre établissement :</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <b>CFA sélectionné :</b> <br /><span class="ssTitreViolet"><b><?php echo decrypter($maCleDeCryptage,$dataCfa[0]['nom_eta']);?></b></span><br /> + <?php if(!empty($mydate)) echo '<b>Date Souhaitée :</b><br /> <span class="ssTitreViolet">'.MysqlToDateFr($mydate).'</span><br />'; ?> + <br />Merci de sélectionner un créneau parmi les disponibilités ci-dessous : <br /> + </div> + + <?php + + + foreach($arrWeek as $kw=>$vw){ + echo '<table class="arrWeek">'."\r\n"; + + echo '<caption>Semaine '.$kw.'</caption>'; + + $idDay = 0; + echo '<tr>'."\r\n"; + echo '<th class="empty">&nbsp;</th>'; + foreach($vw as $vDay){ + if(!empty($vDay)) $th = '<th>'.$arrDaysWeek[$idDay].'<br /><span>'.MysqlToDateFr($vDay).'</span></th>'; else $th = '<th>&nbsp;</th>'; + echo $th."\r\n"; + $idDay++; + } + echo '</tr>'."\r\n"; + + foreach($arrCreneauxSol as $kCr => $vCr){ + echo '<tr>'."\r\n"; + echo '<th>'.$arrCreneauxSolTitle[$kCr].'</th>'; + foreach($vw as $vDay){ + if(!empty($vDay)){ + + //Un enregistrement existe t'il pour le créneau ? + if($arrDispos[$vDay][$arrCreneauxSol[$kCr]]=="indisponible"){ + $td = '<td class="isGrey">Indisponible</td>'; + } + if($arrDispos[$vDay][$arrCreneauxSol[$kCr]]=="libre"){ + //if($vDay==$theGreatDay) $color = "isPurple"; + $color = "isOrange"; + if(isset($arrCountCreneaux[$vDay][$arrCreneauxSol[$kCr]])){ + if($arrCountCreneaux[$vDay][$arrCreneauxSol[$kCr]]>2) $color = "isGreen"; + } + $td = '<td class="'.$color.'"><a href="javascript:submitAgendaS(\''.$vDay.'\',\''.$arrCreneauxSol[$kCr].'\')" style="text-transform:uppercase">Réserver</a></td>'; + } + + }else $td = '<td class="empty">&nbsp;</td>'; + echo $td."\r\n"; + } + echo '</tr>'."\r\n"; + } + + echo '</table>'."\r\n"; + } + ?> + + <form name="frmAgendaS" id="frmAgendaS" method="post" action="sollicitation-form.php"> + <input type="hidden" name="myaction" value="agendaSelect" /> + <input type="hidden" name="ncfa" value="<?php echo $ncfa; ?>" /> + <input type="hidden" name="mydate" /> + <input type="hidden" name="mycreneau" /> + </form> + + </div> + + <?php include('include/footer.php');?> +</body> +</html> \ No newline at end of file diff --git a/site/sollicitation-cap-voir.php b/site/sollicitation-cap-voir.php new file mode 100644 index 0000000..d9b4223 --- /dev/null +++ b/site/sollicitation-cap-voir.php @@ -0,0 +1,159 @@ +<?php + +include('include/entete.php'); +include('include/entete_cap.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +$query="select * from eta,capitaines where id_eta=num_eta and id_cap=:id_cap"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +$capitaine=decrypter($maCleDeCryptage,$data[0]['prenom_cap'])." ".decrypter($maCleDeCryptage,$data[0]['nom_cap']); + +//Ajout ou Modification +if(empty($_GET['idSol'])){ + $_SESSION['msg']='Une erreur a été rencontrée pour consulter la sollicitation.'; + header('location:agenda-cap.php#sollicitation'); + exit(); +}else $idCoLy = $_GET['idSol']; + + + $query="select * from sollicitations where idCoLy=:idCoLy AND idCapitaine=:idCapitaine"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':idCoLy', $idCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':idCapitaine', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $countCoLy = $queryRequest->rowCount(); + + + if($countCoLy!=1){ + $_SESSION['msg']='Une erreur a été rencontrée pour consulter la sollicitation.'; + header('location:agenda-cap.php#sollicitation'); + exit(); + } + + $dataCoLy=$queryRequest->fetchAll(); + $etaCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['etaCoLy']); + $nomCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['nomCoLy']); + $prenomCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['prenomCoLy']); + $fonctionCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['fonctionCoLy']); + $telCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['telCoLy']); + $emlCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['emlCoLy']); + $adresse1CoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['adresse1CoLy']); + $adresse2CoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['adresse2CoLy']); + $cpCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['cpCoLy']); + $villeCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['villeCoLy']); + $nbClasses = $dataCoLy[0]['nbClasses']; + $nbEleves = $dataCoLy[0]['nbEleves']; + $commentCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['commentCoLy']); + $jour = MysqlToDateFr($dataCoLy[0]['chxJour']); + $creneau = getCreneauSol($dataCoLy[0]['chxCreneau']); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> + <script> + jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + }); + + </script> + <style type="text/css"> + .frmVoir th{ font-weight: normal; } + .frmVoir th, .frmVoir td{ padding: 5px 10px; } + </style> + +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Capitaine</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <b>Capitaine : </b><?php echo $capitaine;?> <a href="modifier-cap.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a> + </div> + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cap.php">Votre trinôme</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="agenda-cap.php">Votre agenda</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cap.php">Boite à outils</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Détail de la sollicitation</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + + <div class="textIntro"><br/> + <div class="clearfix"></div> + <ul> + <li>Jour souhaité : <b><?php echo $jour; ?></b></li> + <li>Créneau souhaité : <b><?php echo $creneau; ?></b></li> + </ul> + <br /> + + <table class="frmVoir"> + + <tr><th>Etablissement : </th><td><?php echo $etaCoLy; ?></td></tr> + <tr><th>Nom : </th><td><?php echo $nomCoLy; ?></td></tr> + <tr><th>Prénom : </th><td><?php echo $prenomCoLy; ?></td></tr> + <tr><th>Fonction : </th><td><?php echo $fonctionCoLy; ?></td></tr> + <tr><th>Ligne Directe : </th><td><?php echo $telCoLy; ?></td></tr> + <tr><th>E-mail : </th><td><?php echo $emlCoLy; ?></td></tr> + <tr><th>Adresse 1 : </th><td><?php echo $adresse1CoLy; ?></td></tr> + <tr><th>Adresse 2 : </th><td><?php echo $adresse2CoLy; ?></td></tr> + <tr><th>Code Postal : </th><td><?php echo $cpCoLy; ?></td></tr> + <tr><th>Ville : </th><td><?php echo $villeCoLy; ?></td></tr> + <tr><th>Nombre de classes : </th><td><?php echo $nbClasses; ?></td></tr> + <tr><th>Nombre total d'élèves concernés : </th><td><?php echo $nbEleves; ?></td></tr> + <tr><th>Commentaires : </th><td><?php echo nl2br($commentCoLy); ?></td></tr> + + </table> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="agenda-cap.php#sollicitation">Retour</a></div> + </form> + + </div> + <div class="clearfix"></div> + + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/sollicitation-cfa-voir.php b/site/sollicitation-cfa-voir.php new file mode 100644 index 0000000..b6b5dae --- /dev/null +++ b/site/sollicitation-cfa-voir.php @@ -0,0 +1,175 @@ +<?php + +include('include/entete.php'); +include('include/entete_cfa.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + + $myIdCap = $_POST['myIdCap']; + + $query="select * from eta + INNER JOIN capitaines ON id_eta=num_eta + WHERE id_eta=:num_eta AND id_cap=:myIdCap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':myIdCap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + $count = $queryRequest->rowCount(); + + if($count!=1){ + header('location:index-cfa.php'); + exit(); + } + + $nom_cap = decrypter($maCleDeCryptage,$data[0]['nom_cap']).' '.decrypter($maCleDeCryptage,$data[0]['prenom_cap']); + + //Ajout ou Modification + if(empty($_POST['idSol'])){ + $_SESSION['msg']='Une erreur a été rencontrée pour consulter la sollicitation.'; + header('location:agenda-cfa.php#sollicitation'); + exit(); + }else $idCoLy = $_POST['idSol']; + + + $query="select * from sollicitations where idCoLy=:idCoLy AND (idCapitaine=:idCapitaine || idCapitaine=0) AND chxNumEta=:chxNumEta"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':idCoLy', $idCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':idCapitaine', $myIdCap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':chxNumEta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $countCoLy = $queryRequest->rowCount(); + + + if($countCoLy!=1){ + $_SESSION['msg']='Une erreur a été rencontrée pour consulter la sollicitation.'; + header('location:agenda-cfa.php#sollicitation'); + exit(); + } + + $dataCoLy=$queryRequest->fetchAll(); + $etaCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['etaCoLy']); + $nomCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['nomCoLy']); + $prenomCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['prenomCoLy']); + $fonctionCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['fonctionCoLy']); + $telCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['telCoLy']); + $emlCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['emlCoLy']); + $adresse1CoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['adresse1CoLy']); + $adresse2CoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['adresse2CoLy']); + $cpCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['cpCoLy']); + $villeCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['villeCoLy']); + $nbClasses = $dataCoLy[0]['nbClasses']; + $nbEleves = $dataCoLy[0]['nbEleves']; + $commentCoLy = decrypter($maCleDeCryptage,$dataCoLy[0]['commentCoLy']); + $jour = MysqlToDateFr($dataCoLy[0]['chxJour']); + $creneau = getCreneauSol($dataCoLy[0]['chxCreneau']); + + if(!empty($dataCoLy[0]['idCapitaine'])) $libTitl = 'Sollitation du capitaine '.$nom_cap; + else $libTitl = 'Votre sollicitation'; + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> + <script> + jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + }); + + </script> + <style type="text/css"> + .frmVoir th{ font-weight: normal; } + .frmVoir th, .frmVoir td{ padding: 5px 10px; } + </style> + +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Référent</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <b>Référent : </b><?php echo decrypter($maCleDeCryptage,$data[0]['nom_ref']);?> <a href="modifier-referent.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a> + </div> + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cfa.php">Vos trinômes</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cfa.php">Boite à outils</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="po-cfa.php">Portes ouvertes</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage"><?php echo $libTitl; ?></div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + + <div class="textIntro"><br/> + <div class="clearfix"></div> + <ul> + <li>Jour souhaité : <b><?php echo $jour; ?></b></li> + <li>Créneau souhaité : <b><?php echo $creneau; ?></b></li> + </ul> + <br /> + + <table class="frmVoir"> + + <tr><th>Etablissement : </th><td><?php echo $etaCoLy; ?></td></tr> + <tr><th>Nom : </th><td><?php echo $nomCoLy; ?></td></tr> + <tr><th>Prénom : </th><td><?php echo $prenomCoLy; ?></td></tr> + <tr><th>Fonction : </th><td><?php echo $fonctionCoLy; ?></td></tr> + <tr><th>Ligne Directe : </th><td><?php echo $telCoLy; ?></td></tr> + <tr><th>E-mail : </th><td><?php echo $emlCoLy; ?></td></tr> + <tr><th>Adresse 1 : </th><td><?php echo $adresse1CoLy; ?></td></tr> + <tr><th>Adresse 2 : </th><td><?php echo $adresse2CoLy; ?></td></tr> + <tr><th>Code Postal : </th><td><?php echo $cpCoLy; ?></td></tr> + <tr><th>Ville : </th><td><?php echo $villeCoLy; ?></td></tr> + <tr><th>Nombre de classes : </th><td><?php echo $nbClasses; ?></td></tr> + <tr><th>Nombre total d'élèves concernés : </th><td><?php echo $nbEleves; ?></td></tr> + <tr><th>Commentaires : </th><td><?php echo nl2br($commentCoLy); ?></td></tr> + + </table> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="agenda-cfa.php?id=<?php echo $myIdCap; ?>#sollicitation">Retour</a></div> + </form> + + </div> + <div class="clearfix"></div> + + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/sollicitation-form.php b/site/sollicitation-form.php new file mode 100644 index 0000000..2f68f78 --- /dev/null +++ b/site/sollicitation-form.php @@ -0,0 +1,187 @@ +<?php + + include('include/entete.php'); + + if(isset($_POST['myaction']) && !empty($_POST['myaction']) && $_POST['myaction']=='agendaSelect'){ + + foreach ($_POST as $k => $v){ + $$k = $v; + //echo $k.' => '.$v.'<br>'; + } + + }else{ + header('location:./'); + exit(); + } + + if(isset($_GET['mydate']) && !empty($_GET['mydate'])){ + $mydate = $_GET['mydate']; + } + + include('config/config.inc.php'); + include('config/lib.inc.php'); + include('include/agenda.inc.php'); + + $maCleDeCryptage = getCleDeCryptage(); + + //Affiche les infos du CFA + $query=" + SELECT * from eta + WHERE id_eta=:num_eta + "; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->execute(); + $dataCfa=$queryRequest->fetchAll(); + $countCfa = $queryRequest->rowCount(); + if($countCfa!=1){ //CFA introuvable + header('location:./'); + exit(); + } + $nomEta = $dataCfa[0]['nom_eta']; + + if($mycreneau == 'am') $creneauTitle = $arrCreneauxSolTitle[0]; else $creneauTitle = $arrCreneauxSolTitle[1]; + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script> + + jQuery(document).ready(function(){ + + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + document.frmReserv.etaCoLy.focus(); + + }); + + function validReservAg(){ + if(document.frmReserv.etaCoLy.value==""){ + alert('Merci de renseigner l\'établissement.'); + document.frmReserv.etaCoLy.focus(); + return false; + } + if(document.frmReserv.nomCoLy.value==""){ + alert('Merci de renseigner le nom.'); + document.frmReserv.nomCoLy.focus(); + return false; + } + if(document.frmReserv.prenomCoLy.value==""){ + alert('Merci de renseigner le prénom.'); + document.frmReserv.prenomCoLy.focus(); + return false; + } + if(document.frmReserv.fonctionCoLy.value==""){ + alert('Merci de renseigner la fonction.'); + document.frmReserv.fonctionCoLy.focus(); + return false; + } + if(!checkFormTel('document.frmReserv.telCoLy','T','La ligne directe',1)){ + return false; + } + if(!verifmail('document.frmReserv.emlCoLy',1)){ + return false; + } + if(document.frmReserv.adresse1CoLy.value==""){ + alert('Merci de renseigner au moins la première ligne d\'adresse.'); + document.frmReserv.adresse1CoLy.focus(); + return false; + } + if(document.frmReserv.cpCoLy.value==""){ + alert('Merci de renseigner le code postal.'); + document.frmReserv.cpCoLy.focus(); + return false; + } + if(document.frmReserv.villeCoLy.value==""){ + alert('Merci de renseigner la ville.'); + document.frmReserv.villeCoLy.focus(); + return false; + } + var nbC = 1; + if(!CheckNombreEntier(document.frmReserv.nbClasses.value)) nbC=0; + else if(document.frmReserv.nbClasses.value==0) nbC=0; + if(nbC!=1){ + alert('Merci de renseigner le nombre de classes.'); + document.frmReserv.nbClasses.focus(); + return false; + } + var nbE = 1; + if(!CheckNombreEntier(document.frmReserv.nbEleves.value)) nbE=0; + else if(document.frmReserv.nbEleves.value==0) nbE=0; + if(nbE!=1){ + alert('Merci de renseigner le nombre d\'élèves.'); + document.frmReserv.nbEleves.focus(); + return false; + } + return true; + } + function reservAg(){ + if(validReservAg()) document.frmReserv.submit(); + } + +</script> + +</head> + +<body> + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Collèges, Lycées<br />Réservez la date pour la venue d'un trinôme au sein de votre établissement :</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <b>CFA sélectionné :</b> <br /><span class="ssTitreViolet"><b><?php echo decrypter($maCleDeCryptage,$dataCfa[0]['nom_eta']);?></b></span><br /> + <?php if(!empty($mydate)) echo '<b>Date Souhaitée :</b><br /> <span class="ssTitreViolet">'.MysqlToDateFr($mydate).'</span><br />'.$creneauTitle; ?><br /> + <br />Merci de sélectionner un créneau parmi les disponibilités ci-dessous : <br /> + </div> + + <form name="frmReserv" method="post" action="sollicitation-actions.php" id="frmReserv"> + + <input type="hidden" name="myAction" value="agendaForm"> + <input type="hidden" name="mydate" value="<?php echo $_POST['mydate']; ?>"> + <input type="hidden" name="mycreneau" value="<?php echo $_POST['mycreneau']; ?>"> + <input type="hidden" name="ncfa" value="<?php echo $ncfa; ?>" /> + + <div class="labFrm">Etablissement<sup class="obligatory">*</sup> :</div><input type="text" name="etaCoLy" id="etaCoLy" /><br /> + <div class="labFrm">Nom<sup class="obligatory">*</sup> :</div><input type="text" name="nomCoLy" id="nomCoLy" /><br /> + <div class="labFrm">Prénom<sup class="obligatory">*</sup> :</div><input type="text" name="prenomCoLy" id="prenomCoLy" /><br /> + <div class="labFrm">Fonction<sup class="obligatory">*</sup> :</div><input type="text" name="fonctionCoLy" id="fonctionCoLy" /><br /> + <div class="labFrm">Ligne Directe<sup class="obligatory">*</sup> :</div><input type="text" name="telCoLy" id="telCoLy" /><br /> + <div class="labFrm">E-mail<sup class="obligatory">*</sup> :</div><input type="text" name="emlCoLy" id="emlCoLy" /><br /> + <div class="labFrm">Adresse 1<sup class="obligatory">*</sup> :</div><input type="text" name="adresse1CoLy" id="adresse1CoLy" /><br /> + <div class="labFrm">Adresse 2 :</div><input type="text" name="adresse2CoLy" id="adresse2CoLy" /><br /> + <div class="labFrm">Code Postal<sup class="obligatory">*</sup> :</div><input type="text" name="cpCoLy" id="cpCoLy" /><br /> + <div class="labFrm">Ville<sup class="obligatory">*</sup> :</div><input type="text" name="villeCoLy" id="villeCoLy" /><br /> + <div class="labFrm">Nombre de classes<sup class="obligatory">*</sup> :</div><input type="text" name="nbClasses" id="nbClasses" /><br /> + <div class="labFrm">Nombre total d'élèves concernés<sup class="obligatory">*</sup> :</div><input type="text" name="nbEleves" id="nbEleves" /><br /> + <div class="labFrm">Commentaires :</div><textarea name="commentCoLy" id="commentCoLy" /></textarea><br /><br /> + <div class="btnDeci"><a href="javascript:void(0);" onClick="reservAg()">Envoyer</a></div> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="sollicitation-agenda.php?ncfa=<?php echo $ncfa; ?>">Retour</a></div> + </form> + + </div> + + <?php include('include/footer.php');?> +</body> +</html> \ No newline at end of file diff --git a/site/sollicitations-cap-actions.php b/site/sollicitations-cap-actions.php new file mode 100644 index 0000000..6ede764 --- /dev/null +++ b/site/sollicitations-cap-actions.php @@ -0,0 +1,385 @@ +<?php + +include('include/entete.php'); +include('include/entete_cap.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +include('include/agenda.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +$db = connect_base(); + +//Récupère les infos capitaine et réferrent +$query="select * from eta,capitaines where id_eta=num_eta and id_cap=:id_cap"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); +$queryRequest->execute(); +$dataCfa=$queryRequest->fetchAll(); + +$capitaine=decrypter($maCleDeCryptage,$dataCfa[0]['prenom_cap'])." ".decrypter($maCleDeCryptage,$dataCfa[0]['nom_cap']); +$eta = decrypter($maCleDeCryptage,$dataCfa[0]['nom_eta']); + +$ncap = $_SESSION['cap_num']; +$ncfa = $dataCfa[0]['id_eta']; + + +/************************************************ +//SOLLICITATION : AFFECTATION PAR LE CAPITAINE +************************************************/ + + if(isset($_POST['myAction']) && $_POST['myAction']=='affecterSol'){ + + $myDay = $_POST['myDay']; + $myCreneau = $_POST['myCreneau']; + $chxSol = $_POST['chxSol']; + + //Vérifie si le créneau est libre pour un des jours suivants + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + INNER JOIN agenda ON id_cap = numCap + WHERE id_eta=:id_eta AND id_cap=:id_cap + AND jour=:jour AND creneau=:creneau + AND numCoLy=0 AND statut='libre' + "; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->bindParam( ':id_cap', $ncap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + if($count==1){ + + //Récupère les données de la sollicitation + $query=" + SELECT * FROM sollicitations + WHERE chxNumEta=:id_eta + AND idCoLy=:chxSol AND traitement=0 + "; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->bindParam( ':chxSol', $chxSol, PDO::PARAM_INT ); + $queryRequest->execute(); + $countSol = $queryRequest->rowCount(); + + if($countSol==1){ + + $dataSol=$queryRequest->fetchAll(); + $etaCoLy = $dataSol[0]['etaCoLy']; + $nomCoLy = $dataSol[0]['nomCoLy']; + $prenomCoLy = $dataSol[0]['prenomCoLy']; + $fonctionCoLy = $dataSol[0]['fonctionCoLy']; + $telCoLy = $dataSol[0]['telCoLy']; + $emlCoLy = $dataSol[0]['emlCoLy']; + $adresse1CoLy = $dataSol[0]['adresse1CoLy']; + $adresse2CoLy = $dataSol[0]['adresse2CoLy']; + $cpCoLy = $dataSol[0]['cpCoLy']; + $villeCoLy = $dataSol[0]['villeCoLy']; + $nbClasses = $dataSol[0]['nbClasses']; + $nbEleves = $dataSol[0]['nbEleves']; + $commentCoLy = $dataSol[0]['commentCoLy']; + $dateCreate = $dataSol[0]['dateCreate']; + $chxNumEta = $dataSol[0]['chxNumEta']; + + /****************************************/ + + //Insertion de l'établissement + $query=" + INSERT INTO collegelycee (etaCoLy, nomCoLy, prenomCoLy, fonctionCoLy, telCoLy, emlCoLy, adresse1CoLy, adresse2CoLy, cpCoLy, villeCoLy, nbClasses, nbEleves, commentCoLy, dateCreate, chxNumEta, provenance) + VALUES (:etaCoLy, :nomCoLy, :prenomCoLy, :fonctionCoLy, :telCoLy, :emlCoLy, :adresse1CoLy, :adresse2CoLy, :cpCoLy, :villeCoLy, :nbClasses, :nbEleves, :commentCoLy, :dateCreate, :chxNumEta, :provenance)"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':etaCoLy', $etaCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nomCoLy', $nomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenomCoLy', $prenomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':fonctionCoLy', $fonctionCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':telCoLy', $telCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':emlCoLy', $emlCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse1CoLy', $adresse1CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse2CoLy', $adresse2CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':cpCoLy', $cpCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':villeCoLy', $villeCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nbClasses', $nbClasses, PDO::PARAM_INT ); + $queryRequest->bindParam( ':nbEleves', $nbEleves, PDO::PARAM_INT ); + $queryRequest->bindParam( ':commentCoLy', $commentCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':dateCreate', $dateCreate, PDO::PARAM_STR ); + $queryRequest->bindParam( ':chxNumEta', $chxNumEta, PDO::PARAM_INT ); + $queryRequest->bindParam( ':provenance', $chxSol, PDO::PARAM_INT ); + $queryRequest->execute(); + + $idCoLy=$db->lastInsertId(); + + //Affectation au créneau + $numCoLy = $idCoLy; + $statut = 'reserve'; + $userLastUpdate = 'cap'; + + //Affectation à la sollicitation + $lastIdCapitaine = $ncap; + $traitement = 1; + $lastAction = 'cap'; + + //Statut traitée pour la sollicitation + logs + $query=" + UPDATE sollicitations + SET lastIdCapitaine=:lastIdCapitaine, lastAction=:lastAction, traitement=:traitement + WHERE idCoLy=:numCoLy"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCoLy', $chxSol, PDO::PARAM_INT ); + $queryRequest->bindParam( ':traitement', $traitement, PDO::PARAM_INT ); + $queryRequest->bindParam( ':lastIdCapitaine', $lastIdCapitaine, PDO::PARAM_INT ); + $queryRequest->bindParam( ':lastAction', $lastAction, PDO::PARAM_STR ); + $queryRequest->execute(); + + $query=" + UPDATE agenda + SET numCoLy=:numCoLy, statut=:statut, dateLastUpdate='".date('Y-m-d')."',userLastUpdate=:userLastUpdate + WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $ncap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequest->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR ); + $queryRequest->execute(); + + //echo 'okk'; + //exit(); + + //Envoi d'un email au collège ou lycée + require 'config/class.phpmailer.php'; + require 'config/phpmailer.settings.php'; + + //Decryptage pour l'email + $etaCoLy = decrypter($maCleDeCryptage,$dataSol[0]['etaCoLy']); + $nomCoLy = decrypter($maCleDeCryptage,$dataSol[0]['nomCoLy']); + $prenomCoLy = decrypter($maCleDeCryptage,$dataSol[0]['prenomCoLy']); + $fonctionCoLy = decrypter($maCleDeCryptage,$dataSol[0]['fonctionCoLy']); + $telCoLy = decrypter($maCleDeCryptage,$dataSol[0]['telCoLy']); + $emlCoLy = decrypter($maCleDeCryptage,$dataSol[0]['emlCoLy']); + $adresse1CoLy = decrypter($maCleDeCryptage,$dataSol[0]['adresse1CoLy']); + $adresse2CoLy = decrypter($maCleDeCryptage,$dataSol[0]['adresse2CoLy']); + $cpCoLy = decrypter($maCleDeCryptage,$dataSol[0]['cpCoLy']); + $villeCoLy = decrypter($maCleDeCryptage,$dataSol[0]['villeCoLy']); + $nbClasses = $dataSol[0]['nbClasses']; + $nbEleves = $dataSol[0]['nbEleves']; + $commentCoLy = decrypter($maCleDeCryptage,$dataSol[0]['commentCoLy']); + + $to=$emlCoLy; + $objet="Votre évènement DECIDAY !"; + + $adresseCL = $adresse1CoLy; + if(!empty($adresse2CoLy)) $adresseCL .= '<br />'.$adresse2CoLy; + $adresseCL .= '<br />'.$cpCoLy.' '.$villeCoLy; + + $creneauCL = ""; + $creneauCL = getCreneau($myCreneau); + + + $affich=''; + $affich.='<table cellpadding="3" style="font-family:ARIAL; width:600px;">'; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="cid:bando" alt="" width="600" height="150" border="0" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Bonjour,</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Dans le cadre de l\'évènement Déciday !, un créneau a été réservé pour la venue d\'un trinôme au sein de votre établissement. Vos élèves pourront donc <b>découvrir la filière, préparer leur projet d\'orientation professionnelle</b> et <b>rencontrer un professionnel</b>.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Récapitulatif de cette rencontre : </td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Jour : </b></td><td>'.MysqlToDateFr($myDay).'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Créneau : </b></td><td>'.$creneauCL.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Votre établissement : </b></td><td>'.$etaCoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Nombre de classes : </b></td><td>'.$nbClasses.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Nombre d\'élèves : </b></td><td>'.$nbEleves.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Votre interlocuteur : </b></td><td>'.$capitaine.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Etablissement : </b></td><td>'.$eta.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><b>Votre interlocuteur vous contactera pour définir les modalités de votre intervention.</b></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2" align="center"><table style="width:200px;background-color: #674B64;border: 1px solid #371B34;padding: 4px 6px;"><tr><td align="center"><a href="http://www.deciday.fr" style="color: #FFF;text-decoration: none;text-transform: uppercase; font-family:ARIAL;"><strong>Votre site <br />Déciday !</strong></a></td></tr></table></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Cordialement.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">L\'équipe DECIDAY.</td>'; + $affich.='</tr>'."\n"; + + $affich.='</table>'; + + + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + $_SESSION['msg']='Le créneau a bien été réservé. Un email a été envoyé sur l\'email de l\'établissement pour l\'en informer.\nVous pouvez modifier la fiche de l\'établissement si vous le souhaitez.'; + + /****************************************/ + + } + + /*$data=$queryRequest->fetchAll(); + $emlCapitaine = decrypter($maCleDeCryptage,$data[0]['email_cap']); + $idCapitaine = $data[0]['id_cap']; + $lastAction = 'cap'; + $lastIdCap = $_SESSION['cap_num'];*/ + } + + //header('location:agenda-cap-form.php?idCoLy='.$idCoLy); + header('location:agenda-cap.php'); + exit(); + + + } + +/************************************************ +//SOLLICITATION : REFUS DU CAPITAINE +************************************************/ + + if(isset($_POST['myAction']) && $_POST['myAction']=='refusSol'){ + + //Si aucun capitaine ne peut reprendre la sollicitation pour le créneau souhaité, c'est le référrent par défaut qui reprend (idCapitaine = 0) + $emlReferrent = decrypter($maCleDeCryptage,$dataCfa[0]['email_ref']); + $idCapitaine = 0; + $lastAction = 'cap'; + $lastIdCap = $_SESSION['cap_num']; + + if(empty($_POST['idCoLy']) || empty($_POST['myDay']) || empty($_POST['myCreneau'])){ + $_SESSION['msg']='Une erreur a été rencontrée au refus de la sollicitation.'; + header('location:agenda-cap.php'); + exit(); + } + + foreach($_POST as $cle=>$val){ + $$cle=$val; + //echo $cle.' => '.$val.'<br />'; + } + + if($myCreneau == 'am'){ + $creneau1 = 'am1'; + $creneau2 = 'am2'; + $nomCreneau = "Matin"; + } + if($myCreneau == 'pm'){ + $creneau1 = 'pm1'; + $creneau2 = 'pm2'; + $nomCreneau = "Après-midi"; + } + + //Vérifie si le créneau est libre pour un des jours suivants + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + INNER JOIN agenda ON id_cap = numCap + WHERE id_eta=:id_eta AND id_cap!=:id_cap + AND jour=:jour AND (creneau=:creneau1 || creneau=:creneau2) + AND numCoLy=0 AND statut='libre' + ORDER BY id_cap"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->bindParam( ':id_cap', $ncap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau1', $creneau1, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau2', $creneau2, PDO::PARAM_STR ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + if($count>0){ + $data=$queryRequest->fetchAll(); + $emlCapitaine = decrypter($maCleDeCryptage,$data[0]['email_cap']); + $idCapitaine = $data[0]['id_cap']; + $lastAction = 'cap'; + $lastIdCap = $_SESSION['cap_num']; + } + + //echo $idCoLy.' '.$ncfa.' '.$idCapitaine.' '.$lastAction.' '.$lastIdCap; + + //Transfert de la sollicitation + $query=" + UPDATE sollicitations SET idCapitaine=:idCapitaine, lastAction=:lastAction, lastIdCapitaine=:lastIdCapitaine + WHERE idCoLy=:idCoLy AND chxNumEta=:chxNumEta"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':idCoLy', $idCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':chxNumEta', $ncfa, PDO::PARAM_INT ); + $queryRequest->bindParam( ':idCapitaine', $idCapitaine, PDO::PARAM_INT ); + $queryRequest->bindParam( ':lastAction', $lastAction, PDO::PARAM_STR ); + $queryRequest->bindParam( ':lastIdCapitaine', $lastIdCap, PDO::PARAM_INT ); + $queryRequest->execute(); + + //Envoi d'un email au capitaine ou référrent + //include('config/class.phpmailer.php'); + //if(!empty($emlCapitaine)) $to=$emlCapitaine; else $to=$emlReferrent; + + $_SESSION['msg']='La sollicitation a bien été transférée à un capitaine ou au référent.'; + + header('location:agenda-cap.php'); + exit(); + + + } + +header('location:index.php?err=1'); +exit(); + +?> \ No newline at end of file diff --git a/site/sollicitations-cap-choix.php b/site/sollicitations-cap-choix.php new file mode 100644 index 0000000..d9b3807 --- /dev/null +++ b/site/sollicitations-cap-choix.php @@ -0,0 +1,167 @@ +<?php + +include('include/entete.php'); +include('include/entete_cap.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +$query="select * from eta,capitaines where id_eta=num_eta and id_cap=:id_cap"; +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +$capitaine=decrypter($maCleDeCryptage,$data[0]['prenom_cap'])." ".decrypter($maCleDeCryptage,$data[0]['nom_cap']); + + +//Ajout ou Modification +if($_POST['myAction']=='affecterSol' && !empty($_POST['myCreneau']) && !empty($_POST['myDay'])){ + + $myCreneau = $_POST['myCreneau']; + $myDay = $_POST['myDay']; + +}else{ + $_SESSION['msg']='Une erreur a été rencontrée pour affecter une sollicitation.'; + header('location:agenda-cap.php#sollicitation'); + exit(); +} + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js?123"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> + <script> + jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + }); + + function validAffectSol(){ + if(!testerRadio('document.frmSolAffecter.chxSol','Veuillez sélectionner une sollicitation pour continuer.')) return false; + + return true; + } + + function affectSol(){ + if(validAffectSol()) document.frmSolAffecter.submit(); + } + + + </script> + <style type="text/css"> + .frmVoir th{ font-weight: normal; } + .frmVoir th, .frmVoir td{ padding: 5px 10px; vertical-align: middle; } + .contentPage form input { + margin-bottom: 0; + } + </style> + +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Capitaine</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <b>Capitaine : </b><?php echo $capitaine;?> <a href="modifier-cap.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a> + </div> + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cap.php">Votre trinôme</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="agenda-cap.php">Votre agenda</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cap.php">Boite à outils</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Choisir une sollicitation pour un créneau</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + + <div class="textIntro"><br/> + <div class="clearfix"></div> + <ul> + <li>Journée : <b><?php echo MysqlToDateFr($myDay); ?></b></li> + <li>Période : <b><?php echo getCreneauPlus($myCreneau); ?></b></li> + </ul> + <br /> + <?php + $query="SELECT * FROM sollicitations WHERE idCapitaine=:id_cap AND traitement=0 ORDER BY chxJour, chxCreneau, dateCreate"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $countSol = $queryRequest->rowCount(); + $dataSol = $queryRequest->fetchAll(); + + if($countSol==0) echo '<div align="center">Vous n\'avez aucune sollicitation en attente.</div>'; + + echo '<form name="frmSolAffecter" method="post" action="sollicitations-cap-actions.php">'; + echo '<input type="hidden" name="myAction" value="affecterSol">'; + echo '<input type="hidden" name="myDay" value="'.$myDay.'">'; + echo '<input type="hidden" name="myCreneau" value="'.$myCreneau.'">'; + + + echo '<table cellspacing="0" cellpadding="0">'; + echo '<tr><th>&nbsp;</th><th>Etablissement</th><th>Contact</th><th>Localisation</th><th>Jour</th><th>Creneau</th></tr>'; + foreach($dataSol as $k => $v){ + $myjourSol = MysqlToDateFr($v['chxJour']); + $mycreneauSol = getCreneauSol($v['chxCreneau']); + echo '<tr>'; + echo '<td valign="middle"><input type="radio" name="chxSol" value="'.$v['idCoLy'].'"></td>'; + echo '<td>'.decrypter($maCleDeCryptage,$v['etaCoLy']).'</td>'; + echo '<td>'.decrypter($maCleDeCryptage,$v['nomCoLy']).' '.decrypter($maCleDeCryptage,$v['prenomCoLy']).'</td>'; + echo '<td>'.decrypter($maCleDeCryptage,$v['cpCoLy']).' '.decrypter($maCleDeCryptage,$v['villeCoLy']).'</td>'; + echo '<td>'.$myjourSol.'</td>'; + echo '<td>'.$mycreneauSol.'</td>'; + + echo '</tr>'; + } + echo '<table>'; + + echo '</form>'; + ?> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="javascript:void(0);" onClick="affectSol()">Choisir cette sollicitation</a></div> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="agenda-cap.php#sollicitation">Annuler</a></div> + </form> + + </div> + <div class="clearfix"></div> + + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/sollicitations-cfa-actions.php b/site/sollicitations-cfa-actions.php new file mode 100644 index 0000000..b918997 --- /dev/null +++ b/site/sollicitations-cfa-actions.php @@ -0,0 +1,389 @@ +<?php + +include('include/entete.php'); +include('include/entete_cfa.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +include('include/agenda.inc.php'); + +$myIdCap = $_POST['myIdCap']; +$ncap = $myIdCap; +$ncfa = $_SESSION['cfa_num']; + +$maCleDeCryptage = getCleDeCryptage(); + +$db = connect_base(); + +//Récupère les infos capitaine et réferrent + $query="select * from eta + INNER JOIN capitaines ON id_eta=num_eta + WHERE id_eta=:num_eta AND id_cap=:myIdCap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':myIdCap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->execute(); + $dataCfa=$queryRequest->fetchAll(); + $count = $queryRequest->rowCount(); + +$capitaine=decrypter($maCleDeCryptage,$dataCfa[0]['prenom_cap'])." ".decrypter($maCleDeCryptage,$dataCfa[0]['nom_cap']); +$eta = decrypter($maCleDeCryptage,$dataCfa[0]['nom_eta']); + + + + +/************************************************ +//SOLLICITATION : AFFECTATION PAR LE REFERENT +************************************************/ + + if(isset($_POST['myAction']) && $_POST['myAction']=='affecterSol'){ + + $myDay = $_POST['myDay']; + $myCreneau = $_POST['myCreneau']; + $chxSol = $_POST['chxSol']; + + //Vérifie si le créneau est libre pour un des jours suivants + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + INNER JOIN agenda ON id_cap = numCap + WHERE id_eta=:id_eta AND id_cap=:id_cap + AND jour=:jour AND creneau=:creneau + AND numCoLy=0 AND statut='libre' + "; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->bindParam( ':id_cap', $ncap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + if($count==1){ + + //Récupère les données de la sollicitation + $query=" + SELECT * FROM sollicitations + WHERE chxNumEta=:id_eta + AND idCoLy=:chxSol AND traitement=0 + "; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->bindParam( ':chxSol', $chxSol, PDO::PARAM_INT ); + $queryRequest->execute(); + $countSol = $queryRequest->rowCount(); + + if($countSol==1){ + + $dataSol=$queryRequest->fetchAll(); + $etaCoLy = $dataSol[0]['etaCoLy']; + $nomCoLy = $dataSol[0]['nomCoLy']; + $prenomCoLy = $dataSol[0]['prenomCoLy']; + $fonctionCoLy = $dataSol[0]['fonctionCoLy']; + $telCoLy = $dataSol[0]['telCoLy']; + $emlCoLy = $dataSol[0]['emlCoLy']; + $adresse1CoLy = $dataSol[0]['adresse1CoLy']; + $adresse2CoLy = $dataSol[0]['adresse2CoLy']; + $cpCoLy = $dataSol[0]['cpCoLy']; + $villeCoLy = $dataSol[0]['villeCoLy']; + $nbClasses = $dataSol[0]['nbClasses']; + $nbEleves = $dataSol[0]['nbEleves']; + $commentCoLy = $dataSol[0]['commentCoLy']; + $dateCreate = $dataSol[0]['dateCreate']; + $chxNumEta = $dataSol[0]['chxNumEta']; + + /****************************************/ + + //Insertion de l'établissement + $query=" + INSERT INTO collegelycee (etaCoLy, nomCoLy, prenomCoLy, fonctionCoLy, telCoLy, emlCoLy, adresse1CoLy, adresse2CoLy, cpCoLy, villeCoLy, nbClasses, nbEleves, commentCoLy, dateCreate, chxNumEta, provenance) + VALUES (:etaCoLy, :nomCoLy, :prenomCoLy, :fonctionCoLy, :telCoLy, :emlCoLy, :adresse1CoLy, :adresse2CoLy, :cpCoLy, :villeCoLy, :nbClasses, :nbEleves, :commentCoLy, :dateCreate, :chxNumEta, :provenance)"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':etaCoLy', $etaCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nomCoLy', $nomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenomCoLy', $prenomCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':fonctionCoLy', $fonctionCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':telCoLy', $telCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':emlCoLy', $emlCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse1CoLy', $adresse1CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse2CoLy', $adresse2CoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':cpCoLy', $cpCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':villeCoLy', $villeCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nbClasses', $nbClasses, PDO::PARAM_INT ); + $queryRequest->bindParam( ':nbEleves', $nbEleves, PDO::PARAM_INT ); + $queryRequest->bindParam( ':commentCoLy', $commentCoLy, PDO::PARAM_STR ); + $queryRequest->bindParam( ':dateCreate', $dateCreate, PDO::PARAM_STR ); + $queryRequest->bindParam( ':chxNumEta', $chxNumEta, PDO::PARAM_INT ); + $queryRequest->bindParam( ':provenance', $chxSol, PDO::PARAM_INT ); + $queryRequest->execute(); + + $idCoLy=$db->lastInsertId(); + + //Affectation au créneau + $numCoLy = $idCoLy; + $statut = 'reserve'; + $userLastUpdate = 'ref'; + + //Affectation à la sollicitation + $lastIdCapitaine = $ncap; + $traitement = 1; + $lastAction = 'ref'; + + //Statut traitée pour la sollicitation + logs + $query=" + UPDATE sollicitations + SET lastIdCapitaine=:lastIdCapitaine, lastAction=:lastAction, traitement=:traitement + WHERE idCoLy=:numCoLy"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCoLy', $chxSol, PDO::PARAM_INT ); + $queryRequest->bindParam( ':traitement', $traitement, PDO::PARAM_INT ); + $queryRequest->bindParam( ':lastIdCapitaine', $lastIdCapitaine, PDO::PARAM_INT ); + $queryRequest->bindParam( ':lastAction', $lastAction, PDO::PARAM_STR ); + $queryRequest->execute(); + + $query=" + UPDATE agenda + SET numCoLy=:numCoLy, statut=:statut, dateLastUpdate='".date('Y-m-d')."',userLastUpdate=:userLastUpdate + WHERE numCap=:numCap AND jour=:jour AND creneau=:creneau"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':numCap', $ncap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau', $myCreneau, PDO::PARAM_STR ); + $queryRequest->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequest->bindParam( ':userLastUpdate', $userLastUpdate, PDO::PARAM_STR ); + $queryRequest->execute(); + + //Envoi d'un email au collège ou lycée + require 'config/class.phpmailer.php'; + require 'config/phpmailer.settings.php'; + + //Decryptage pour l'email + $etaCoLy = decrypter($maCleDeCryptage,$dataSol[0]['etaCoLy']); + $nomCoLy = decrypter($maCleDeCryptage,$dataSol[0]['nomCoLy']); + $prenomCoLy = decrypter($maCleDeCryptage,$dataSol[0]['prenomCoLy']); + $fonctionCoLy = decrypter($maCleDeCryptage,$dataSol[0]['fonctionCoLy']); + $telCoLy = decrypter($maCleDeCryptage,$dataSol[0]['telCoLy']); + $emlCoLy = decrypter($maCleDeCryptage,$dataSol[0]['emlCoLy']); + $adresse1CoLy = decrypter($maCleDeCryptage,$dataSol[0]['adresse1CoLy']); + $adresse2CoLy = decrypter($maCleDeCryptage,$dataSol[0]['adresse2CoLy']); + $cpCoLy = decrypter($maCleDeCryptage,$dataSol[0]['cpCoLy']); + $villeCoLy = decrypter($maCleDeCryptage,$dataSol[0]['villeCoLy']); + $nbClasses = $dataSol[0]['nbClasses']; + $nbEleves = $dataSol[0]['nbEleves']; + $commentCoLy = decrypter($maCleDeCryptage,$dataSol[0]['commentCoLy']); + + $to=$emlCoLy; + $objet="Votre évènement DECIDAY !"; + + $adresseCL = $adresse1CoLy; + if(!empty($adresse2CoLy)) $adresseCL .= '<br />'.$adresse2CoLy; + $adresseCL .= '<br />'.$cpCoLy.' '.$villeCoLy; + + $creneauCL = ""; + $creneauCL = getCreneau($myCreneau); + + + $affich=''; + $affich.='<table cellpadding="3" style="font-family:ARIAL; width:600px;">'; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="cid:bando" alt="" width="600" height="150" border="0" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Bonjour,</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Dans le cadre de l\'évènement Déciday !, un créneau a été réservé pour la venue d\'un trinôme au sein de votre établissement. Vos élèves pourront donc <b>découvrir la filière, préparer leur projet d\'orientation professionnelle</b> et <b>rencontrer un professionnel</b>.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Récapitulatif de cette rencontre : </td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Jour : </b></td><td>'.MysqlToDateFr($myDay).'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Créneau : </b></td><td>'.$creneauCL.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Votre établissement : </b></td><td>'.$etaCoLy.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Nombre de classes : </b></td><td>'.$nbClasses.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Nombre d\'élèves : </b></td><td>'.$nbEleves.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Votre interlocuteur : </b></td><td>'.$capitaine.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right"><b>Etablissement : </b></td><td>'.$eta.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><b>Votre interlocuteur vous contactera pour définir les modalités de votre intervention.</b></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2" align="center"><table style="width:200px;background-color: #674B64;border: 1px solid #371B34;padding: 4px 6px;"><tr><td align="center"><a href="http://www.deciday.fr" style="color: #FFF;text-decoration: none;text-transform: uppercase; font-family:ARIAL;"><strong>Votre site <br />Déciday !</strong></a></td></tr></table></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Cordialement.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">L\'équipe DECIDAY.</td>'; + $affich.='</tr>'."\n"; + + $affich.='</table>'; + + + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + $_SESSION['msg']='Le créneau a bien été réservé. Un email a été envoyé sur l\'email de l\'établissement pour l\'en informer.\nVous pouvez modifier la fiche de l\'établissement si vous le souhaitez.'; + + /****************************************/ + + } + + /*$data=$queryRequest->fetchAll(); + $emlCapitaine = decrypter($maCleDeCryptage,$data[0]['email_cap']); + $idCapitaine = $data[0]['id_cap']; + $lastAction = 'cap'; + $lastIdCap = $_SESSION['cap_num'];*/ + } + + //header('location:agenda-cap-form.php?idCoLy='.$idCoLy); + header('location:agenda-cfa.php'); + exit(); + + + } + +/************************************************ +//SOLLICITATION : REFUS DU CAPITAINE +************************************************/ + + if(isset($_POST['myAction']) && $_POST['myAction']=='refusSol'){ + + //Si aucun capitaine ne peut reprendre la sollicitation pour le créneau souhaité, c'est le référrent par défaut qui reprend (idCapitaine = 0) + $emlReferrent = decrypter($maCleDeCryptage,$dataCfa[0]['email_ref']); + $idCapitaine = 0; + $lastAction = 'cap'; + $lastIdCap = $_SESSION['cap_num']; + + if(empty($_POST['idCoLy']) || empty($_POST['myDay']) || empty($_POST['myCreneau'])){ + $_SESSION['msg']='Une erreur a été rencontrée au refus de la sollicitation.'; + header('location:agenda-cap.php'); + exit(); + } + + foreach($_POST as $cle=>$val){ + $$cle=$val; + //echo $cle.' => '.$val.'<br />'; + } + + if($myCreneau == 'am'){ + $creneau1 = 'am1'; + $creneau2 = 'am2'; + $nomCreneau = "Matin"; + } + if($myCreneau == 'pm'){ + $creneau1 = 'pm1'; + $creneau2 = 'pm2'; + $nomCreneau = "Après-midi"; + } + + //Vérifie si le créneau est libre pour un des jours suivants + $query=" + SELECT * FROM capitaines + INNER JOIN eta ON id_eta=num_eta + INNER JOIN agenda ON id_cap = numCap + WHERE id_eta=:id_eta AND id_cap!=:id_cap + AND jour=:jour AND (creneau=:creneau1 || creneau=:creneau2) + AND numCoLy=0 AND statut='libre' + ORDER BY id_cap"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_eta', $ncfa, PDO::PARAM_INT ); + $queryRequest->bindParam( ':id_cap', $ncap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':jour', $myDay, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau1', $creneau1, PDO::PARAM_STR ); + $queryRequest->bindParam( ':creneau2', $creneau2, PDO::PARAM_STR ); + $queryRequest->execute(); + $count = $queryRequest->rowCount(); + + if($count>0){ + $data=$queryRequest->fetchAll(); + $emlCapitaine = decrypter($maCleDeCryptage,$data[0]['email_cap']); + $idCapitaine = $data[0]['id_cap']; + $lastAction = 'cap'; + $lastIdCap = $_SESSION['cap_num']; + } + + //echo $idCoLy.' '.$ncfa.' '.$idCapitaine.' '.$lastAction.' '.$lastIdCap; + + //Transfert de la sollicitation + $query=" + UPDATE sollicitations SET idCapitaine=:idCapitaine, lastAction=:lastAction, lastIdCapitaine=:lastIdCapitaine + WHERE idCoLy=:idCoLy AND chxNumEta=:chxNumEta"; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':idCoLy', $idCoLy, PDO::PARAM_INT ); + $queryRequest->bindParam( ':chxNumEta', $ncfa, PDO::PARAM_INT ); + $queryRequest->bindParam( ':idCapitaine', $idCapitaine, PDO::PARAM_INT ); + $queryRequest->bindParam( ':lastAction', $lastAction, PDO::PARAM_STR ); + $queryRequest->bindParam( ':lastIdCapitaine', $lastIdCap, PDO::PARAM_INT ); + $queryRequest->execute(); + + //Envoi d'un email au capitaine ou référrent + //include('config/class.phpmailer.php'); + //if(!empty($emlCapitaine)) $to=$emlCapitaine; else $to=$emlReferrent; + + $_SESSION['msg']='La sollicitation a bien été transférée à un capitaine ou au référent.'; + + header('location:agenda-cap.php'); + exit(); + + + } + +header('location:index.php?err=1'); +exit(); + +?> \ No newline at end of file diff --git a/site/sollicitations-cfa-choix.php b/site/sollicitations-cfa-choix.php new file mode 100644 index 0000000..1e84a86 --- /dev/null +++ b/site/sollicitations-cfa-choix.php @@ -0,0 +1,187 @@ +<?php + +include('include/entete.php'); +include('include/entete_cfa.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + + $myIdCap = $_POST['myIdCap']; + + $query="select * from eta + INNER JOIN capitaines ON id_eta=num_eta + WHERE id_eta=:num_eta AND id_cap=:myIdCap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':myIdCap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + $count = $queryRequest->rowCount(); + + if($count!=1){ + header('location:index-cfa.php'); + exit(); + } + + $nom_cap = decrypter($maCleDeCryptage,$data[0]['nom_cap']).' '.decrypter($maCleDeCryptage,$data[0]['prenom_cap']); + + if(!isset($_POST['myCreneau']) || $_POST['myCreneau']=='undefined' || !isset($_POST['myDay'])){ + $_SESSION['msg']='Une erreur a été rencontrée pour affecter une sollicitation.'; + header('location:index-cfa.php'); + exit(); + } + +//Ajout ou Modification +if($_POST['myAction']=='affecterSol'){ + + $myCreneau = $_POST['myCreneau']; + $myDay = $_POST['myDay']; + +}else{ + $_SESSION['msg']='Une erreur a été rencontrée pour affecter une sollicitation.'; + header('location:index-cfa.php'); + exit(); +} + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> + <script> + jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + }); + + function validAffectSol(){ + + if(!testerRadio('document.frmSolAffecter.chxSol','Veuillez sélectionner une sollicitation pour continuer.')) return false; + + return true; + } + + function affectSol(){ + if(validAffectSol()) document.frmSolAffecter.submit(); + } + + + </script> + <style type="text/css"> + .frmVoir th{ font-weight: normal; } + .frmVoir th, .frmVoir td{ padding: 5px 10px; vertical-align: middle; } + .contentPage form input { + margin-bottom: 0; + } + </style> + +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Référent</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <b>Référent : </b><?php echo decrypter($maCleDeCryptage,$data[0]['nom_ref']);?> <a href="modifier-referent.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a> + </div> + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cfa.php">Vos trinômes</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cfa.php">Boite à outils</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="po-cfa.php">Portes ouvertes</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Choisir une sollicitation pour un créneau</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + + <div class="textIntro"><br/> + <div class="clearfix"></div> + <ul> + <li>Journée : <b><?php echo MysqlToDateFr($myDay); ?></b></li> + <li>Période : <b><?php echo getCreneauPlus($myCreneau); ?></b></li> + </ul> + <br /> + <?php + $query="SELECT * FROM sollicitations WHERE (idCapitaine=:id_cap || idCapitaine=0) AND chxNumEta=:chxNumEta AND traitement=0 ORDER BY idCapitaine, chxJour, chxCreneau, dateCreate"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $myIdCap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':chxNumEta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $countSol = $queryRequest->rowCount(); + $dataSol = $queryRequest->fetchAll(); + + if($countSol==0) echo '<div align="center">Vous n\'avez aucune sollicitation en attente.</div>'; + + echo '<form name="frmSolAffecter" method="post" action="sollicitations-cfa-actions.php">'; + echo '<input type="hidden" name="myAction" value="affecterSol">'; + echo '<input type="hidden" name="myIdCap" value="'.$myIdCap.'">'; + echo '<input type="hidden" name="myDay" value="'.$myDay.'">'; + echo '<input type="hidden" name="myCreneau" value="'.$myCreneau.'">'; + + + echo '<table cellspacing="0" cellpadding="0">'; + echo '<tr><th>&nbsp;</th><th>Etablissement</th><th>Contact</th><th>Localisation</th><th>Jour</th><th>Creneau</th></tr>'; + foreach($dataSol as $k => $v){ + $myjourSol = MysqlToDateFr($v['chxJour']); + $mycreneauSol = getCreneauSol($v['chxCreneau']); + echo '<tr>'; + echo '<td valign="middle"><input type="radio" name="chxSol" value="'.$v['idCoLy'].'"></td>'; + echo '<td>'.decrypter($maCleDeCryptage,$v['etaCoLy']).'</td>'; + echo '<td>'.decrypter($maCleDeCryptage,$v['nomCoLy']).' '.decrypter($maCleDeCryptage,$v['prenomCoLy']).'</td>'; + echo '<td>'.decrypter($maCleDeCryptage,$v['cpCoLy']).' '.decrypter($maCleDeCryptage,$v['villeCoLy']).'</td>'; + echo '<td>'.$myjourSol.'</td>'; + echo '<td>'.$mycreneauSol.'</td>'; + + echo '</tr>'; + } + echo '<table>'; + + echo '</form>'; + ?> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="javascript:void(0);" onClick="affectSol()">Choisir cette sollicitation</a></div> + <div style="height: 20px;"></div> + <div class="btnDeci"><a href="agenda-cfa.php#sollicitation">Annuler</a></div> + </form> + + </div> + <div class="clearfix"></div> + + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/suivi-cap-adm.php b/site/suivi-cap-adm.php new file mode 100644 index 0000000..6585f8b --- /dev/null +++ b/site/suivi-cap-adm.php @@ -0,0 +1,87 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + $("#export").click(function(e){ + e.preventDefault; + window.location.href='export-suivi-cap-adm.php'; + }) +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Suivi des Capitaines</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <br/><br/> + <button type="button" class="btn btn-default btn-lg" id="export" title="Télécharger le fichier Excel"> + <span class="glyphicon glyphicon-save-file" aria-hidden="true"></span> Export Excel + </button> + <?php + $query="SELECT * FROM `capitaines` + INNER JOIN eta ON num_eta = id_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){ + + + + + $data=$queryRequest->fetchAll(); + echo '<table cellpadding="0" cellspacing="0" class="table tabAdm">'; + echo "<tr><th>Nom</th><th>Prénom</th><th>Email</th><th>&Eacute;tablissement</th><th>Code Postal</th><th>Ville</th></tr>"; + foreach($data as $val){ + $count=0; + echo "<tr><td>".decrypter($maCleDeCryptage,$val['nom_cap'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['prenom_cap'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['email_cap'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['nom_eta'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['cp'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['ville'])."</td>"; + echo "</tr>"; + } + echo '</table>'; + } + ?> + <br /><div class="btnDeci"><a href="index-adm.php">Retour</a></div> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/suivi-cfa-adm-cdb.php b/site/suivi-cfa-adm-cdb.php new file mode 100644 index 0000000..c92bd1d --- /dev/null +++ b/site/suivi-cfa-adm-cdb.php @@ -0,0 +1,141 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Suivi des CFA/LP</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <?php + $query="select * from eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){ + + + + + $data=$queryRequest->fetchAll(); + echo '<table cellpadding="0" cellspacing="0" class="table tabAdm">'; + echo "<tr><th>Etablissement</th><th>Coordonnées</th><th>Inscriptions</th><th>Sollicitations/Rendez-vous</th><th>Classes/Elèves</th><th>Date dernière connexion</th></tr>"; + foreach($data as $val){ + $count=0; + echo "<tr><td><a href='detail-cfa-adm-cdb.php?id=".$val['id_eta']."'>".decrypter($maCleDeCryptage,$val['nom_eta'])."</a></td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['adresse1'])."<br/>".decrypter($maCleDeCryptage,$val['cp'])." ".decrypter($maCleDeCryptage,$val['ville'])."</td>"; + + //Inscrit OUI / NON + $query="select * from capitaines,equipes where id_cap=num_capitaine and capitaines.num_eta=:id_eta and nom_eleve!='' and prenom_eleve!='' and nom_pro!='' and prenom_pro!=''"; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query ); + $queryRequest2->bindParam( ':id_eta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest2->execute(); + $count=$queryRequest2->rowCount(); + + //NB Trinômes Validées / Total +// $query="select * from capitaines,equipes where id_cap=num_capitaine and capitaines.num_eta=:id_eta"; +// $db2 = connect_base(); +// $queryRequest2 = $db2->prepare( $query ); +// $queryRequest2->bindParam( ':id_eta', $val['id_eta'], PDO::PARAM_INT ); +// $queryRequest2->execute(); +// $count2=$queryRequest2->rowCount(); + + if($count == 0 ){ + $count = "<span style='color:#A33;'>Non inscrit</span>"; + } else { + if ($count == 1 ) $count = '<span style="color:#3A3;">'.$count.' trinôme</span>'; + else $count = '<span style="color:#3A3;">'.$count.' trinômes</span>'; + } + + //NB de RDV, de classes et d'élèves + $query3="SELECT count(*) as rdvs, sum(nbClasses) as classes, sum(nbEleves) as eleves + FROM agenda + INNER JOIN collegelycee ON idCoLy=numCoLy + WHERE statut= 'reserve' AND numEta=:numEta"; + $db3 = connect_base(); + $queryRequest3 = $db3->prepare( $query3 ); + $queryRequest3->bindParam( ':numEta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest3->execute(); + $data3=$queryRequest3->fetchAll(); + if(isset($data3[0]['rdvs'])) $countRDV = $data3[0]['rdvs']; else $countRDV = 0; + if(isset($data3[0]['classes'])) $classes = $data3[0]['classes']; else $classes = 0; + if(isset($data3[0]['eleves'])) $eleves = $data3[0]['eleves']; else $eleves = 0; + + + //NB total de sollicitations (sollicitations (en attente + refusée) + RDV ), nb total de classes et nb total d'élèves + $query4="SELECT count(*) as sollicitations, sum(nbClasses) as classes, sum(nbEleves) as eleves + FROM sollicitations + WHERE traitement<>1 AND chxNumEta=:chxNumEta"; + $db4 = connect_base(); + $queryRequest4 = $db4->prepare( $query4 ); + $queryRequest4->bindParam( ':chxNumEta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest4->execute(); + $data4=$queryRequest4->fetchAll(); + if(isset($data4[0]['sollicitations'])) $countSol = $data4[0]['sollicitations'] + $countRDV; else $countSol = 0; + if(isset($data4[0]['classes'])) $classes = $classes + $data4[0]['classes']; + if(isset($data4[0]['eleves'])) $eleves = $eleves + $data4[0]['eleves']; + + if($countSol <> $countRDV ){ + $countRDV = "<span style=\"color:#A33;\">$countRDV</span>"; + } + + + // Date de dernière connexion + $derniereCo = MysqlToDateFr($val['date_co']); + if($derniereCo == "01/01/1970") $derniereCo = ""; + + + echo "<td>".$count."</td>"; + echo "<td align=\"center\">".$countSol.'/'.$countRDV."</td>"; + echo "<td align=\"center\">".$classes.'/'.$eleves."</td>"; + echo "<td>".$derniereCo."</td>"; + + echo "</tr>"; + } + echo '</table>'; + } + ?> + <br /><div class="btnDeci"><a href="index-adm.php">Retour</a></div> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/suivi-cfa-adm.php b/site/suivi-cfa-adm.php new file mode 100644 index 0000000..4443d8b --- /dev/null +++ b/site/suivi-cfa-adm.php @@ -0,0 +1,145 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + $("#export").click(function(e){ + e.preventDefault; + window.location.href='export-suivi-cfa-adm.php'; + }) +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Suivi des CFA/LP</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <br/><br/> + <button type="button" class="btn btn-default btn-lg" id="export" title="Télécharger le fichier Excel"> + <span class="glyphicon glyphicon-save-file" aria-hidden="true"></span> Export Excel + </button> + <?php + $query="select * from eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){ + + + + + $data=$queryRequest->fetchAll(); + echo '<table cellpadding="0" cellspacing="0" class="table tabAdm">'; + echo "<tr><th>Etablissement</th><th>Coordonnées</th><th>Inscriptions</th><th>Sollicitations/Rendez-vous</th><th>Classes/Elèves</th><th>Date dernière connexion</th></tr>"; + foreach($data as $val){ + $count=0; + echo "<tr><td><a href='detail-cfa-adm.php?id=".$val['id_eta']."'>".decrypter($maCleDeCryptage,$val['nom_eta'])."</a></td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['adresse1'])."<br/>".decrypter($maCleDeCryptage,$val['cp'])." ".decrypter($maCleDeCryptage,$val['ville'])."</td>"; + + //NB Trinômes Valide +// $query="select * from capitaines,equipes where id_cap=num_capitaine and capitaines.num_eta=:id_eta and nom_eleve!='' and prenom_eleve!='' and nom_pro!='' and prenom_pro!=''"; +// $db2 = connect_base(); +// $queryRequest2 = $db2->prepare( $query ); +// $queryRequest2->bindParam( ':id_eta', $val['id_eta'], PDO::PARAM_INT ); +// $queryRequest2->execute(); +// $count=$queryRequest2->rowCount(); + + //NB Trinômes Total + $query="select * from capitaines,equipes where id_cap=num_capitaine and capitaines.num_eta=:id_eta"; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query ); + $queryRequest2->bindParam( ':id_eta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest2->execute(); + $count2=$queryRequest2->rowCount(); + + if($count2 == 0 ){ + $count2 = "<span style='color:#A33;'>Non inscrit</span>"; + } else { + if ($count2 == 1 ) $count2 = '<span style="color:#3A3;">'.$count2.' trinôme</span>'; + else $count2 = '<span style="color:#3A3;">'.$count2.' trinômes</span>'; + } + + //NB de RDV, de classes et d'élèves + $query3="SELECT count(*) as rdvs, sum(nbClasses) as classes, sum(nbEleves) as eleves + FROM agenda + INNER JOIN collegelycee ON idCoLy=numCoLy + WHERE statut= 'reserve' AND numEta=:numEta"; + $db3 = connect_base(); + $queryRequest3 = $db3->prepare( $query3 ); + $queryRequest3->bindParam( ':numEta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest3->execute(); + $data3=$queryRequest3->fetchAll(); + if(isset($data3[0]['rdvs'])) $countRDV = $data3[0]['rdvs']; else $countRDV = 0; + if(isset($data3[0]['classes'])) $classes = $data3[0]['classes']; else $classes = 0; + if(isset($data3[0]['eleves'])) $eleves = $data3[0]['eleves']; else $eleves = 0; + + + //NB total de sollicitations, nb total de classes et nb total d'élèves + $query4="SELECT count(*) as sollicitations, sum(nbClasses) as classes, sum(nbEleves) as eleves + FROM sollicitations + WHERE traitement<>1 AND chxNumEta=:chxNumEta"; + $db4 = connect_base(); + $queryRequest4 = $db4->prepare( $query4 ); + $queryRequest4->bindParam( ':chxNumEta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest4->execute(); + $data4=$queryRequest4->fetchAll(); + if(isset($data4[0]['sollicitations'])) $countSol = $data4[0]['sollicitations']; else $countSol = 0; + if(isset($data4[0]['classes'])) $classes = $classes + $data4[0]['classes']; + if(isset($data4[0]['eleves'])) $eleves = $eleves + $data4[0]['eleves']; + + + // Date de dernière connexion + $derniereCo = MysqlToDateFr($val['date_co']); + if($derniereCo == "01/01/1970") $derniereCo = ""; + + + echo "<td>".$count2."</td>"; + echo "<td align=\"center\">".$countSol.'/'.$countRDV."</td>"; + echo "<td align=\"center\">".$classes.'/'.$eleves."</td>"; + echo "<td>".$derniereCo."</td>"; + + echo "</tr>"; + } + echo '</table>'; + } + ?> + <br /><div class="btnDeci"><a href="index-adm.php">Retour</a></div> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/suivi-jpo-adm.php b/site/suivi-jpo-adm.php new file mode 100644 index 0000000..7cd77f3 --- /dev/null +++ b/site/suivi-jpo-adm.php @@ -0,0 +1,118 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + $('.comLien').each(function (){ + $(this).click(function() { + var target = $(this).attr('data-target'); + $('#'+target).modal('show'); + }); + + }); + $("#export").click(function(e){ + e.preventDefault; + window.location.href='export-suivi-jpo-adm.php'; + }) +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Suivi des JPO</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <br/><br/> + <button type="button" class="btn btn-default btn-lg" id="export" title="Télécharger le fichier Excel"> + <span class="glyphicon glyphicon-save-file" aria-hidden="true"></span> Export Excel + </button> + <?php + $query="SELECT * + FROM eta + LEFT JOIN jpo ON jpo.id_eta = eta.id_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); +/* echo '<pre>'; + var_dump($data); + echo '</pre>';die();*/ + echo '<table cellpadding="0" cellspacing="0" class="table tabAdm">'; + echo "<tr><th>Etablissement</th><th>CP / Ville</th><th>Email du référent</th><th>JPO</th><th>Détails</th></tr>"; + foreach($data as $key => $val){ + $count=0; + echo "<tr><td>".decrypter($maCleDeCryptage,$val['nom_eta'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['cp'])." ".decrypter($maCleDeCryptage,$val['ville'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['email_ref'])."</td>"; + if(!is_null($val['id_jpo'])) echo "<td align=\"center\">oui</td>"."<td align=\"center\"><a href=\"#\" data-toggle=\"modal\" data-target=\"m$key\" class=\"comLien\">Détail</a></td>"; + else echo "<td align=\"center\">non</td>"."<td>&nbsp;</td>"; + echo "</tr>"; + } + echo '</table>'; + foreach($data as $key => $val){ + if(!is_null($val['id_jpo'])) { + echo ' + <!-- Modal --> + <div class="modal fade" id="m'.$key.'" tabindex="-1" role="dialog" aria-labelledby="m'.$key.'" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="m'.$key.'Title">JPO de '.decrypter($maCleDeCryptage,$val['nom_eta']).' </h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">&times;</span> + </button> + </div> + <div class="modal-body">' + . nl2br(utf8_decode(decrypter($maCleDeCryptage,$val['details_jpo']))) . + '</div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Fermer</button> + </div> + </div> + </div> + </div>'; + } + } + } + ?> + <br /><div class="btnDeci"><a href="index-adm.php">Retour</a></div> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/suivi-pro-adm-cdb.php b/site/suivi-pro-adm-cdb.php new file mode 100644 index 0000000..20b77e8 --- /dev/null +++ b/site/suivi-pro-adm-cdb.php @@ -0,0 +1,131 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + $('.comLien').each(function (index){ + $(this).click(function() { + $('#mCommentaire'+index).modal('show'); + }); + index = index++; + }); +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Suivi des professionnels</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + + <?php + $query="select * from inscriptions_pro"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){ + $n=0; + $commentaire = null; + $data=$queryRequest->fetchAll(); + echo '<table cellpadding="0" cellspacing="0" class="table tabAdm">'; + echo "<tr><th>Etablissement</th><th>SIRET</th><th>Nom<br/>prénom</th><th>Coordonnées</th><th>Mobile/Fixe</th><th>Email</th><th>Commentaire</th><th>Déciday!</th><th>stage 3ème</th><th>Rdv étudiant</th><th>Statut</th><th>Action</th></tr>"; + foreach($data as $val){ + $commentaire = decrypter($maCleDeCryptage,$val['comment_pro']); + echo "<tr>"; + echo "<td>".decrypter($maCleDeCryptage,$val['etablissement_pro'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['siret_pro'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['nom_pro'])."<br/>".decrypter($maCleDeCryptage,$val['prenom_pro'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['adr1_pro'])." ".decrypter($maCleDeCryptage,$val['adr2_pro'])." ".decrypter($maCleDeCryptage,$val['cp_pro'])." ".decrypter($maCleDeCryptage,$val['ville_pro'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['mobile_pro'])."/".decrypter($maCleDeCryptage,$val['fixe_pro'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['email_pro'])."</td>"; +// echo "<td>".$val['flyers']."</td>"; + if (!empty($commentaire)) { + echo "<td>"."<a href=\"#\" data-toggle=\"modal\" data-target=\"mCommentaire$n\" class=\"comLien\">Détail</a>"."</td>"; + $n++; + } else echo "<td>&nbsp;</td>"; + // echo "<td>".nl2br(decrypter($maCleDeCryptage,$val['comment_pro']))."</td>"; + if($val['faireEquipe']==1) echo "<td>Oui</td>"; + else echo "<td>Non</td>"; + if($val['recevoirStage']==1) echo "<td>Oui</td>"; + else echo "<td>Non</td>"; + if($val['recevoirJeunes']==1) echo "<td>Oui</td>"; + else echo "<td>Non</td>"; + if($val['statut']==1) echo "<td>Validé</td><td>&nbsp;</td>"; + else if($val['statut']==2) echo "<td>Refusé</td><td>&nbsp;</td>"; + else echo "<td>En attente</td><td><a href='valid_pro.php?id=".$val['id_pro']."'>Valider</a>/<a href='refuse_pro.php?id=".$val['id_pro']."'>Refuser</a></td>"; + } + echo '</table>'; + + $n=0; + foreach($data as $val){ + $pro = decrypter($maCleDeCryptage,$val['etablissement_pro']); + $commentaires = nl2br(htmlspecialchars(decrypter($maCleDeCryptage,$val['comment_pro']))); + if(!empty($commentaires)){ + ?> + + + <!-- Modal --> + <div class="modal fade" id="mCommentaire<?=$n?>" tabindex="-1" role="dialog" aria-labelledby="mCommentaire<?=$n?>" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="mCommentaire<?=$n?>Title">Commentaire - <?=$pro ?> </h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">&times;</span> + </button> + </div> + <div class="modal-body"> + <?=$commentaires ?> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Fermer</button> + </div> + </div> + </div> + </div> + <?php + $n++; + }} + } + ?> + <br /><div class="btnDeci"><a href="index-adm.php">Retour</a></div> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/suivi-pro-adm.php b/site/suivi-pro-adm.php new file mode 100644 index 0000000..f4b100c --- /dev/null +++ b/site/suivi-pro-adm.php @@ -0,0 +1,145 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + $('.comLien').each(function (index){ + $(this).click(function() { + $('#mCommentaire'+index).modal('show'); + }); + index = index++; + }); + $("#export").click(function(e){ + e.preventDefault; + window.location.href='export-suivi-pro-adm.php'; + }) +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Suivi des professionnels</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <br/><br/> + <button type="button" class="btn btn-default btn-lg tabPro" id="export" title="Télécharger le fichier Excel"> + <span class="glyphicon glyphicon-save-file" aria-hidden="true"></span> Export Excel + </button> + + + <?php + $query="select * from inscriptions_pro"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + if($queryRequest->rowCount()>0){ + $n=0; + $commentaire = null; + $data=$queryRequest->fetchAll(); + echo '<table cellpadding="0" cellspacing="0" class="table tabAdm tabPro">'; + echo "<tr><th>Etablissement</th><th>SIRET</th><th>Nom<br/>prénom</th><th>Coordonnées</th><th>Mobile/Fixe</th><th>Email</th><th>Commentaire</th><th>Déciday!</th><th>stage 3ème</th><th>Rdv étudiant</th><th>Date inscription</th><th>Statut</th><th>Action</th></tr>"; + foreach($data as $val){ + $commentaire = decrypter($maCleDeCryptage,$val['comment_pro']); + echo "<tr>"; + echo "<td>".decrypter($maCleDeCryptage,$val['etablissement_pro'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['siret_pro'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['nom_pro'])."<br/>".decrypter($maCleDeCryptage,$val['prenom_pro'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['adr1_pro'])." ".decrypter($maCleDeCryptage,$val['adr2_pro'])." ".decrypter($maCleDeCryptage,$val['cp_pro'])." ".decrypter($maCleDeCryptage,$val['ville_pro'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['mobile_pro'])."/".decrypter($maCleDeCryptage,$val['fixe_pro'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['email_pro'])."</td>"; +// echo "<td>".$val['flyers']."</td>"; + if (!empty($commentaire)) { + echo "<td>"."<a href=\"#\" data-toggle=\"modal\" data-target=\"mCommentaire$n\" class=\"comLien\">Détail</a>"."</td>"; + $n++; + } else echo "<td>&nbsp;</td>"; + // echo "<td>".nl2br(decrypter($maCleDeCryptage,$val['comment_pro']))."</td>"; + if($val['faireEquipe']==1) echo "<td>Oui</td>"; + else echo "<td>Non</td>"; + if($val['recevoirStage']==1) echo "<td>Oui</td>"; + else echo "<td>Non</td>"; + if($val['recevoirJeunes']==1) echo "<td>Oui</td>"; + else echo "<td>Non</td>"; + echo "<td>".MysqlToDateFr($val['date_insert'])."</td>"; + if($val['statut']==1) echo "<td>Validé</td>"; + else if($val['statut']==2) echo "<td>Refusé</td>"; + else echo "<td>En attente</td>"; + echo "<td>"; + if($val['statut'] ==0 ) echo "<a href='valid_pro.php?id=".$val['id_pro']."'>Valider</a>/<a href='refuse_pro.php?id=".$val['id_pro']."'>Refuser</a>"; + else if($val['statut']==1) echo "<a href='refuse_pro.php?id=".$val['id_pro']."'>Refuser</a>"; + else echo "<a href='valid_pro.php?id=".$val['id_pro']."'>Valider</a>"; + echo "</td>"; + } + echo '</table>'; + + $n=0; + foreach($data as $val){ + $pro = decrypter($maCleDeCryptage,$val['etablissement_pro']); + $commentaires = nl2br(htmlspecialchars(decrypter($maCleDeCryptage,$val['comment_pro']))); + if(!empty($commentaires)){ + ?> + + + <!-- Modal --> + <div class="modal fade" id="mCommentaire<?=$n?>" tabindex="-1" role="dialog" aria-labelledby="mCommentaire<?=$n?>" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="mCommentaire<?=$n?>Title">Commentaire - <?=$pro ?> </h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">&times;</span> + </button> + </div> + <div class="modal-body"> + <?=$commentaires ?> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Fermer</button> + </div> + </div> + </div> + </div> + <?php + $n++; + }} + } + ?> + <br /><div class="btnDeci"><a href="index-adm.php">Retour</a></div> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/suivi-reservations-adm.php b/site/suivi-reservations-adm.php new file mode 100644 index 0000000..b8aa158 --- /dev/null +++ b/site/suivi-reservations-adm.php @@ -0,0 +1,159 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + $('.comLien').each(function (index){ + $(this).click(function() { + $('#mCommentaire'+index).modal('show'); + }); + index = index++; + }); + $("#export").click(function(e){ + e.preventDefault; + window.location.href='export-reservations-adm.php'; + }) + +}); +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Suivi des réservations</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <br/><br/> + <button type="button" class="btn btn-default btn-lg" id="export" title="Télécharger le fichier Excel"> + <span class="glyphicon glyphicon-save-file" aria-hidden="true"></span> Export Excel + </button> + + <?php + $query="SELECT * + FROM `agenda` + INNER JOIN eta + ON eta.id_eta = agenda.numEta + WHERE `statut` = 'reserve' AND ( + `numEta` <> 399 + AND `numEta` <> 400 + AND `numEta` <> 402 + AND `numEta` <> 403) "; + $db = connect_base(); + $queryRequest = $db->query($query); + $queryRequest->execute(); + + + + if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); + +/* echo '<pre>'; + var_dump($data); + echo '</pre>';*/ + + $coLy_tmp = array(); + $coLy_fullDetail = array(); + + + foreach($data as $key => $value){ + $coLy_tmp[] = array( + "id_college_lycee" => $value['numCoLy'], + "jour_reserve" => mysqlToDateFr($value['jour']), + "creneau" => getCreneauPlus($value['creneau']), + "nom_cfa_lp" => decrypter($maCleDeCryptage, $value['nom_eta']), + "localite_cfa_lp" => decrypter($maCleDeCryptage, $value['cp']). "<br/>" . decrypter($maCleDeCryptage, $value['ville']) + ); + } + + + foreach($coLy_tmp as $key => $value){ + + $db = connect_base(); + $query = $db->prepare("SELECT * FROM `collegelycee` WHERE `idCoLy` =:idCoLy"); + $query->bindParam( ':idCoLy', $value['id_college_lycee'], PDO::PARAM_INT ); + $query->execute(); + + $result[] = $query->fetchAll(); + $result[$key][0]['chxJour'] = $value['jour_reserve']; + $result[$key][0]['chxCreneau'] = $value['creneau']; + $result[$key][0]['nom_cfa_lp'] = $value['nom_cfa_lp']; + $result[$key][0]['localite_cfa_lp'] = $value['localite_cfa_lp']; + + } + + + + echo '<table cellpadding="0" cellspacing="0" class="tabAdm">'; + echo "<tr><th>Etablissement</th><th>Coordonnées</th><th>Classes/Elèves</th><th>Date Réservation</th><th>Créneaux</th><th>Nom CFA/LP</th><th>Localité CFA/LP</th></tr>"; + + foreach($result as $k => $v){ + + // Définition des coordonnées de l'établissement + $add1 = decrypter($maCleDeCryptage,$v[0]['adresse1CoLy']); + $add2 = decrypter($maCleDeCryptage,$v[0]['adresse2CoLy']); + $cp = decrypter($maCleDeCryptage,$v[0]['cpCoLy']); + $ville = decrypter($maCleDeCryptage,$v[0]['villeCoLy']); + $coordonnees = $add1; + if(!empty($add2)){ + $coordonnees = $coordonnees . "<br/>" . $add2; + } + $coordonnees = $coordonnees . "<br/>" . $cp . " " . $ville; + + + + echo "<tr>"; + echo "<td>".decrypter($maCleDeCryptage,$v[0]['etaCoLy'])."</td>"; + echo "<td>".$coordonnees."</td>"; + echo "<td>".$v[0]['nbClasses']."/".$v[0]['nbEleves']."</td>"; + echo "<td>".$v[0]['chxJour']."</td>"; + echo "<td>".$v[0]['chxCreneau']."</td>"; + echo "<td>".$v[0]['nom_cfa_lp']."</td>"; + echo "<td>".$v[0]['localite_cfa_lp']."</td>"; + } + echo '</table>'; + + } + ?> + + + + <br /><div class="btnDeci"><a href="index-adm.php">Retour</a></div> + + </div> + + <?php include('include/footer.php');?> +</body> +</html> \ No newline at end of file diff --git a/site/suivi-reservations.php b/site/suivi-reservations.php new file mode 100644 index 0000000..3016baf --- /dev/null +++ b/site/suivi-reservations.php @@ -0,0 +1,176 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + $('.comLien').each(function (index){ + $(this).click(function() { + $('#mCommentaire'+index).modal('show'); + }); + index = index++; + }); + $("#export").click(function(e){ + e.preventDefault; + window.location.href='export-reservations-adm.php'; + }) + +}); +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Suivi des réservations</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <br/><br/> + <button type="button" class="btn btn-default btn-lg tabEtat" id="export" title="Télécharger le fichier Excel"> + <span class="glyphicon glyphicon-save-file" aria-hidden="true"></span> Export Excel + </button> + + <?php + $query="SELECT * + FROM `sollicitations` + INNER JOIN `eta` ON id_eta = chxNumEta + ORDER BY dateCreate ASC"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + $n=0; + if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); + $statut = null; + $coordonnees = null; + $commentaire = null; + + echo '<table cellpadding="0" cellspacing="0" class="tabAdm tabEtat">'; + echo "<tr><th>CFA/LP</th><th>CFA/LP Ville<br/>Code postal</th><th>CFA/LP<br/>E-mail référent</th><th>Etablissement</th><th>Nom Prénom</th><th>Fonction</th><th>Téléphone</th><th>E-mail</th><th>Coordonnées</th><th>Classes/Elèves</th><th>Créneaux</th><th>Commentaires</th><th>Statut</th><th>Date</th></tr>"; + foreach($data as $val){ + // Définition du statut de la sollicitation + if($val['traitement'] <> 1) { + if(intval($val['idCapitaine']) > 0 ){ + $statut = "En&nbsp;attente"; + } else { + $statut = "<span style='color:#A33;'>Refusée</span>"; + } + } else { + $statut = "<span style='color:#3A3;'>Traitée</span>"; + } + + + // Définition des coordonnées de l'établissement + $add1 = decrypter($maCleDeCryptage,$val['adresse1CoLy']); + $add2 = decrypter($maCleDeCryptage,$val['adresse2CoLy']); + $cp = decrypter($maCleDeCryptage,$val['cpCoLy']); + $ville = decrypter($maCleDeCryptage,$val['villeCoLy']); + $coordonnees = $add1; + if(!empty($add2)){ + $coordonnees = $coordonnees . "<br/>" . $add2; + } + $coordonnees = $coordonnees . "<br/>" . $cp . " " . $ville; + $cpVilleEta = decrypter($maCleDeCryptage,$val['cp']). "<br/>" . decrypter($maCleDeCryptage,$val['ville']); + $commentaire = decrypter($maCleDeCryptage,$val['commentCoLy']); + + //Si pas de commentaire, pas de lien détail + if (!empty($commentaire)) { + $commentaire = "<a href=\"#\" data-toggle=\"modal\" data-target=\"mCommentaire$n\" class=\"comLien\">Détail</a>"; + $n++; + } + + + + echo "<tr>"; + echo "<td>".decrypter($maCleDeCryptage,$val['nom_eta'])."</td>"; + echo "<td>".$cpVilleEta."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['email_ref'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['etaCoLy'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['nomCoLy'])."<br/>".decrypter($maCleDeCryptage,$val['prenomCoLy']). "</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['fonctionCoLy'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['telCoLy'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['emlCoLy'])."</td>"; + echo "<td>".$coordonnees."</td>"; + echo "<td>".$val['nbClasses']."/".$val['nbEleves']."</td>"; + echo "<td>".MysqlToDateFr($val['chxJour'])." ".$val['chxCreneau']."</td>"; + echo "<td>". $commentaire ."</td>"; + echo "<td>$statut</td>"; + echo "<td>".MysqlToDateFr($val['dateCreate'])."</td>"; + + } + echo '</table>'; + $n=0; + foreach($data as $val){ + $coLy = decrypter($maCleDeCryptage,$val['etaCoLy']); + $commentaires = nl2br(htmlspecialchars(decrypter($maCleDeCryptage,$val['commentCoLy']))); + if(!empty($commentaires)){ + ?> + + + <!-- Modal --> + <div class="modal fade" id="mCommentaire<?=$n?>" tabindex="-1" role="dialog" aria-labelledby="mCommentaire<?=$n?>" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="mCommentaire<?=$n?>Title">Commentaires du <?=$coLy ?> </h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">&times;</span> + </button> + </div> + <div class="modal-body"> + <?=$commentaires ?> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Fermer</button> + </div> + </div> + </div> + </div> + <?php + $n++; + } + + } + + + } + ?> + <br /><div class="btnDeci"><a href="index-adm.php">Retour</a></div> + + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/suivi-sollicitations-adm.php b/site/suivi-sollicitations-adm.php new file mode 100644 index 0000000..15d22ba --- /dev/null +++ b/site/suivi-sollicitations-adm.php @@ -0,0 +1,176 @@ +<?php +include('include/entete.php'); +include('include/entete_adm.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + + +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"> +<script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> + + $('.comLien').each(function (index){ + $(this).click(function() { + $('#mCommentaire'+index).modal('show'); + }); + index = index++; + }); + $("#export").click(function(e){ + e.preventDefault; + window.location.href='export-suivi-sollicitations-adm.php'; + }) + +}); +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + + <?php include('include/admin-header.php');?> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Suivi des sollicitations</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + <br/><br/> + <button type="button" class="btn btn-default btn-lg tabEtat" id="export" title="Télécharger le fichier Excel"> + <span class="glyphicon glyphicon-save-file" aria-hidden="true"></span> Export Excel + </button> + + <?php + $query="SELECT * + FROM `sollicitations` + INNER JOIN `eta` ON id_eta = chxNumEta + ORDER BY dateCreate ASC"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + $n=0; + if($queryRequest->rowCount()>0){ + $data=$queryRequest->fetchAll(); + $statut = null; + $coordonnees = null; + $commentaire = null; + + echo '<table cellpadding="0" cellspacing="0" class="tabAdm tabEtat">'; + echo "<tr><th>CFA/LP</th><th>CFA/LP Ville<br/>Code postal</th><th>CFA/LP<br/>E-mail référent</th><th>Etablissement</th><th>Nom Prénom</th><th>Fonction</th><th>Téléphone</th><th>E-mail</th><th>Coordonnées</th><th>Classes/Elèves</th><th>Créneaux</th><th>Commentaires</th><th>Statut</th><th>Date</th></tr>"; + foreach($data as $val){ + // Définition du statut de la sollicitation + if($val['traitement'] <> 1) { + if(intval($val['idCapitaine']) > 0 ){ + $statut = "En&nbsp;attente"; + } else { + $statut = "<span style='color:#A33;'>Refusée</span>"; + } + } else { + $statut = "<span style='color:#3A3;'>Traitée</span>"; + } + + + // Définition des coordonnées de l'établissement + $add1 = decrypter($maCleDeCryptage,$val['adresse1CoLy']); + $add2 = decrypter($maCleDeCryptage,$val['adresse2CoLy']); + $cp = decrypter($maCleDeCryptage,$val['cpCoLy']); + $ville = decrypter($maCleDeCryptage,$val['villeCoLy']); + $coordonnees = $add1; + if(!empty($add2)){ + $coordonnees = $coordonnees . "<br/>" . $add2; + } + $coordonnees = $coordonnees . "<br/>" . $cp . " " . $ville; + $cpVilleEta = decrypter($maCleDeCryptage,$val['cp']). "<br/>" . decrypter($maCleDeCryptage,$val['ville']); + $commentaire = decrypter($maCleDeCryptage,$val['commentCoLy']); + + //Si pas de commentaire, pas de lien détail + if (!empty($commentaire)) { + $commentaire = "<a href=\"#\" data-toggle=\"modal\" data-target=\"mCommentaire$n\" class=\"comLien\">Détail</a>"; + $n++; + } + + + + echo "<tr>"; + echo "<td>".decrypter($maCleDeCryptage,$val['nom_eta'])."</td>"; + echo "<td>".$cpVilleEta."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['email_ref'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['etaCoLy'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['nomCoLy'])."<br/>".decrypter($maCleDeCryptage,$val['prenomCoLy']). "</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['fonctionCoLy'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['telCoLy'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['emlCoLy'])."</td>"; + echo "<td>".$coordonnees."</td>"; + echo "<td>".$val['nbClasses']."/".$val['nbEleves']."</td>"; + echo "<td>".MysqlToDateFr($val['chxJour'])." ".$val['chxCreneau']."</td>"; + echo "<td>". $commentaire ."</td>"; + echo "<td>$statut</td>"; + echo "<td>".MysqlToDateFr($val['dateCreate'])."</td>"; + + } + echo '</table>'; + $n=0; + foreach($data as $val){ + $coLy = decrypter($maCleDeCryptage,$val['etaCoLy']); + $commentaires = nl2br(htmlspecialchars(decrypter($maCleDeCryptage,$val['commentCoLy']))); + if(!empty($commentaires)){ + ?> + + + <!-- Modal --> + <div class="modal fade" id="mCommentaire<?=$n?>" tabindex="-1" role="dialog" aria-labelledby="mCommentaire<?=$n?>" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="mCommentaire<?=$n?>Title">Commentaires du <?=$coLy ?> </h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">&times;</span> + </button> + </div> + <div class="modal-body"> + <?=$commentaires ?> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Fermer</button> + </div> + </div> + </div> + </div> + <?php + $n++; + } + + } + + + } + ?> + <br /><div class="btnDeci"><a href="index-adm.php">Retour</a></div> + + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file diff --git a/site/supp_ref.php b/site/supp_ref.php new file mode 100644 index 0000000..1c42446 --- /dev/null +++ b/site/supp_ref.php @@ -0,0 +1,39 @@ +<?php +include('include/entete.php'); +include('include/entete_cfa.php'); +include('config/config.inc.php'); + +if(isset($_GET['id']) && !empty($_GET['id'])){ + + foreach($_POST as $cle=>$val) $$cle=$val; + + $query="select * from capitaines where id_cap=:id_cap and num_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $_GET['id'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + if($queryRequest->rowCount()==0){ + header('location:index-cfa.php'); + exit(); + } + + $query="delete from capitaines where id_cap=:id_cap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $_GET['id'], PDO::PARAM_INT ); + $queryRequest->execute(); + + $query="delete from equipes where num_capitaine=:id_cap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $_GET['id'], PDO::PARAM_INT ); + $queryRequest->execute(); + + header('location:index-cfa.php'); + exit(); +} + header('location:index-cfa.php'); + exit(); + +?> \ No newline at end of file diff --git a/site/tmp.php b/site/tmp.php new file mode 100644 index 0000000..aa9c765 --- /dev/null +++ b/site/tmp.php @@ -0,0 +1,317 @@ +<?php +/*ini_set('display_errors',1); +header('Content-Type: text/html; charset=utf-8');*/ + +include('include/entete.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +//echo md5('titi'); 5d933eef19aee7da192608de61b6c23d +//exit(); + +$maCleDeCryptage = getCleDeCryptage(); + +/* + $query="select * from sollicitations"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + echo "<table>"; + foreach($data as $cle=>$val){ + echo "<tr>"; + echo "<td>".$val['idCoLy']."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['etaCoLy'])."</td>"; + echo "</tr>"; + } + echo "<table>"; + exit(); +*/ + +/* + $query="select * from capitaines where id_cap=84"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + echo "<table>"; + foreach($data as $cle=>$val){ + echo "<tr>"; + echo "<td>".$val['id_cap']."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['nom_cap'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['prenom_cap'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['email_cap'])."</td>"; + echo "</tr>"; + } + echo "<table>"; + exit(); +*/ + +/* +echo '404 : ||'.crypter($maCleDeCryptage,'helene.genin@almea-formations-08.fr')."||<br>"; +echo '405 : ||'.crypter($maCleDeCryptage,'patrice.bindler@almea-formations-10.fr')."||<br>"; +echo '406 : ||'.crypter($maCleDeCryptage,'philippe.vanthournout@centre-alfor.fr')."||<br>"; +echo '407 : ||'.crypter($maCleDeCryptage,'maxime.bordier@almea-formations-52.fr')."||<br>"; +echo '408 : ||'.crypter($maCleDeCryptage,'mtroussel@saintmalofougeres.cci.fr')."||<br>"; +*/ + +/* +//echo md5('deciday19'); +//eqp6UJWdU53FgXuke4KHmpuhrYODmNHTWH7Qq5n7Cquc1w== +//echo crypter($maCleDeCryptage,'CS20109'); +//$adresse2=crypter($maCleDeCryptage,"CS20109"); + +//$test = crypter($maCleDeCryptage,'eausset'); +$sql = "select * from eta WHERE id_eta=410 or id_eta=411"; +$query=($sql); +$db = connect_base(); +$queryRequest = $db->prepare( $query ); +$queryRequest->execute(); +$data=$queryRequest->fetchAll(); +echo "<table>"; +$tab=array(); +foreach($data as $cle=>$val){ + echo "<tr>"; + echo "<td>".$val['id_eta']."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['academie'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['nom_eta'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['adresse1'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['adresse2'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['cp'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['ville'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['nom_ref'])."</td>"; + echo "<td>".decrypter($maCleDeCryptage,$val['tel_ref'])."</td>"; + echo "<td>||".decrypter($maCleDeCryptage,$val['email_ref'])."||</td>"; + echo "</tr>"; + //if(isset($tab[trim(decrypter($maCleDeCryptage,$val['email_ref']))])) $tab[trim(decrypter($maCleDeCryptage,$val['email_ref']))]++; + //else $tab[trim(decrypter($maCleDeCryptage,$val['email_ref']))]=1; +} +echo "<table>"; +exit(); +*/ + +/* + $query="select * from contact_pro"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + foreach($data as $cle=>$val){ + echo decrypter($maCleDeCryptage,$val['nom_cp']); + echo "<br>"; + echo decrypter($maCleDeCryptage,$val['prenom_cp']); + echo "<br>"; + echo decrypter($maCleDeCryptage,$val['age_cp']); + echo "<br>"; + echo decrypter($maCleDeCryptage,$val['classe_cp']); + echo "<br>"; + echo decrypter($maCleDeCryptage,$val['email_cp']); + echo "<br>"; + echo decrypter($maCleDeCryptage,$val['comment_cp']); + echo "<br>"; + echo decrypter($maCleDeCryptage,$val['type_pro']); + echo "<br>"; + echo "<br>"; + echo "<br>"; + } +*/ + + +/* + $query="select * from inscriptions_pro"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + foreach($data as $cle=>$val){ + echo decrypter($maCleDeCryptage,$val['nom_pro']); + echo "<br>"; + echo decrypter($maCleDeCryptage,$val['prenom_pro']); + echo "<br>"; + echo decrypter($maCleDeCryptage,$val['cp_pro']); + echo "<br>"; + echo decrypter($maCleDeCryptage,$val['email_pro']); + echo "<br>"; + echo "<br>"; + echo "<br>"; + } +*/ + +/* + include('include/agenda.inc.php'); + $query="select * from capitaines"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + foreach($data as $cle=>$val){ + foreach($arrWeek as $kw=>$vw){ + foreach($vw as $vDay){ + if(!empty($vDay)){ + foreach($arrCreneaux as $va){ + if($vDay==$theGreatDay) $statut='libre'; + else $statut='bloque'; + $numCoLy=0; + $query2 = "insert into agenda (numCap,numCoLy,numEta,jour,creneau,statut,dateLastUpdate) values (:numCap,:numCoLy,:numEta,:jour,:creneau,:statut,:dateLastUpdate)"; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query2 ); + $queryRequest2->bindParam( ':numCap', $val['id_cap'], PDO::PARAM_INT ); + $queryRequest2->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequest2->bindParam( ':numEta', $val['num_eta'], PDO::PARAM_INT ); + $queryRequest2->bindParam( ':jour', $vDay, PDO::PARAM_STR ); + $queryRequest2->bindParam( ':creneau', $va, PDO::PARAM_STR ); + $queryRequest2->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequest2->bindParam( ':dateLastUpdate', date('Y-m-d'), PDO::PARAM_STR ); + //$queryRequest2->execute(); + + } + } + } + } + } + exit(); +*/ + + //echo md5('a2018Deci60'); + //exit(); + +/* + //Trouve les comptes test + $ct1 = 's.descamps@fafih.com'; + $ct2 = 'n.thuillier@fafih.com'; + $ct3 = 'ozdeger@pointvirgule.fr'; + $ct4 = 'b.vdm@pointvirgule.net'; + $query = 'select * from eta where email_ref=:ct1 || email_ref=:ct2 || email_ref=:ct3 || email_ref=:ct4'; + + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':ct1', crypter($maCleDeCryptage,$ct1), PDO::PARAM_STR ); + $queryRequest->bindParam( ':ct2', crypter($maCleDeCryptage,$ct2), PDO::PARAM_STR ); + $queryRequest->bindParam( ':ct3', crypter($maCleDeCryptage,$ct3), PDO::PARAM_STR ); + $queryRequest->bindParam( ':ct4', crypter($maCleDeCryptage,$ct4), PDO::PARAM_STR ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + foreach($data as $cle=>$val){ + echo $val['id_eta'].' : '.decrypter($maCleDeCryptage,$val['email_ref']).' : '.md5('deciday19').'<br />'; + } + + exit(); +*/ + + +/*echo "<pre>";print_r($tab); +echo "</pre>";*/ + +/* + $query = 'select * from eta'; + + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + foreach($data as $cle=>$val){ + $email=decrypter($maCleDeCryptage,$val['email_ref']); + $query2 = 'update eta set email_ref=:email_ref where id_eta=:id_eta'; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query2 ); + $queryRequest2->bindParam( ':id_eta', $val['id_eta'], PDO::PARAM_INT ); + $queryRequest2->bindParam( ':email_ref', crypter($maCleDeCryptage,trim($email), PDO::PARAM_STR )); + //$queryRequest2->execute(); + } + + +exit(); +*/ + + +////////////////////// AJOUT D UN ETABLISSEMENT + +/* $academie=crypter($maCleDeCryptage,""); + $nom_eta=crypter($maCleDeCryptage,"U.R.M.A. Université Régionale des Métiers et de l'Artisanat de Région Nord Pas-de-Calais – Antenne de Dunkerque"); + $adresse1=crypter($maCleDeCryptage,"214 rue du Contre-Torpilleur le Triomphant"); + $adresse2=crypter($maCleDeCryptage,""); + $cp=crypter($maCleDeCryptage,"59140"); + $ville=crypter($maCleDeCryptage,"DUNKERQUE"); + $nom_ref=crypter($maCleDeCryptage,"Pierre Crespi"); + $tel_ref=crypter($maCleDeCryptage,"0328587787"); + $email_ref=crypter($maCleDeCryptage,"p.crespi@cma-hautsdefrance.fr"); + + $query = 'insert into eta (academie,nom_eta,adresse1,adresse2,cp,ville,nom_ref,tel_ref,email_ref,mdp_ref) values (:academie,:nom_eta, :adresse1, :adresse2,:cp,:ville,:nom_ref,:tel_ref, :email_ref, :mdp_ref)'; + + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':academie', $academie, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nom_eta', $nom_eta, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse1', $adresse1, PDO::PARAM_STR ); + $queryRequest->bindParam( ':adresse2', $adresse2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':cp', $cp, PDO::PARAM_STR ); + $queryRequest->bindParam( ':ville', $ville, PDO::PARAM_STR ); + $queryRequest->bindParam( ':nom_ref', $nom_ref, PDO::PARAM_STR ); + $queryRequest->bindParam( ':tel_ref', $tel_ref, PDO::PARAM_STR ); + $queryRequest->bindParam( ':email_ref', $email_ref, PDO::PARAM_STR ); + $queryRequest->bindParam( ':mdp_ref', md5('deciday19'), PDO::PARAM_STR ); + $queryRequest->execute(); + +exit();*/ + + + + +// $maCleDeCryptage = getCleDeCryptage(); +// $ident2=crypter($maCleDeCryptage,"admin3"); +// $query='insert into droits (login_adm,mdp_adm,droit_adm) values (:ident2,:mdp2,1)'; +// try { +// // Connexion PDO +// $db = connect_base(); +// $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + +// // Requête INSERT avec la nouvelle colonne droit_autre +// $sql = ' +// INSERT INTO droits ( +// login_adm, +// mdp_adm, +// droit_adm, +// droit_autre +// ) VALUES ( +// :login, +// :mdp, +// :droit, +// :droit_autre +// ) +// '; +// $stmt = $db->prepare($sql); + +// // Préparation des valeurs +// $maCleDeCryptage = getCleDeCryptage(); +// $login = crypter($maCleDeCryptage, 'admin3'); +// $mdp = md5('testpv'); +// $droit = 1; +// $droitAutre = 1; // <-- la nouvelle valeur constante + +// // Liaison des paramètres +// $stmt->bindParam(':login', $login, PDO::PARAM_STR); +// $stmt->bindParam(':mdp', $mdp, PDO::PARAM_STR); +// $stmt->bindParam(':droit', $droit, PDO::PARAM_INT); +// $stmt->bindParam(':droit_autre', $droitAutre, PDO::PARAM_INT); + +// // Exécution +// if ($stmt->execute()) { +// echo 'Nouvel enregistrement créé avec droit_autre = 1.'; +// } else { +// $err = $stmt->errorInfo(); +// echo "Erreur SQL [{$err[0]}] : {$err[2]}"; +// } + +// } catch (PDOException $e) { +// echo 'Exception PDO : ' . htmlspecialchars($e->getMessage(), ENT_QUOTES); +// exit; +// } + + + + + + + + +?> \ No newline at end of file diff --git a/site/traitement-cap.php b/site/traitement-cap.php new file mode 100644 index 0000000..6c39cc3 --- /dev/null +++ b/site/traitement-cap.php @@ -0,0 +1,232 @@ +<?php +include('include/entete.php'); +include('include/entete_cap.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +if(isset($_POST['action']) && $_POST['action']=='go_en'){ + + foreach($_POST as $cle=>$val) $$cle=$val; + $maCleDeCryptage = getCleDeCryptage(); + $nom_eleve2=crypter($maCleDeCryptage,$nom_eleve); + $prenom_eleve2=crypter($maCleDeCryptage,$prenom_eleve); + $eml_eleve2=crypter($maCleDeCryptage,$eml_eleve); + $tel_eleve2=crypter($maCleDeCryptage,$tel_eleve); + $nom_pro2=crypter($maCleDeCryptage,$nom_pro); + $prenom_pro2=crypter($maCleDeCryptage,$prenom_pro); + $eml_pro2=crypter($maCleDeCryptage,$eml_pro); + $tel_pro2=crypter($maCleDeCryptage,$tel_pro); + + + $query = 'update equipes set nom_eleve=:nom_eleve,prenom_eleve=:prenom_eleve,eml_eleve=:eml_eleve,tel_eleve=:tel_eleve,nom_pro=:nom_pro,prenom_pro=:prenom_pro,eml_pro=:eml_pro,tel_pro=:tel_pro where num_capitaine=:num_cap'; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':nom_eleve', $nom_eleve2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenom_eleve', $prenom_eleve2, PDO::PARAM_STR); + $queryRequest->bindParam( ':eml_eleve', $eml_eleve2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':tel_eleve', $tel_eleve2, PDO::PARAM_STR); + $queryRequest->bindParam( ':nom_pro', $nom_pro2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenom_pro', $prenom_pro2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':eml_pro', $eml_pro2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':tel_pro', $tel_pro2, PDO::PARAM_STR); + $queryRequest->bindParam( ':num_cap', $_SESSION['cap_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $id_cap=$db->lastInsertId(); + + $_SESSION['msg']='Vos saisies ont bien été enregistrées.'; + header('location:index-cap.php'); + exit(); + +} + +//Modification du profil du capitaine par lui-même +if(isset($_POST['action']) && $_POST['action']=='go_moCap'){ + + foreach($_POST as $cle=>$val) $$cle=$val; + + if(!isset($id_cap) || empty($id_cap) || $_SESSION['cap_num']!=$id_cap){ + header('location:index_cap.php'); + exit(); + } + + echo '<pre>'; + print_r($_POST); + echo '</pre>'; + + //Teste si l'item capitaine à modifier existe + $actualEml = ''; + $query="select * from capitaines where id_cap=:id_cap and num_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $id_cap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':num_eta', $num_eta, PDO::PARAM_INT ); + $queryRequest->execute(); + if($queryRequest->rowCount()==0){ + header('location:index-cap.php'); + exit(); + }else{ + $dataActual=$queryRequest->fetchAll(); + $maCleDeCryptage = getCleDeCryptage(); + $actualEml = decrypter($maCleDeCryptage,$dataActual[0]['email_cap']); + } + + $nom_cap2=crypter($maCleDeCryptage,$nom_cap); + $prenom_cap2=crypter($maCleDeCryptage,$prenom_cap); + $email_cap2=crypter($maCleDeCryptage,$email_cap); + + //Teste si l'email correspond déjà à un compte capitaine + $query="select * from capitaines where email_cap=:email_cap and id_cap!=:id_cap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_cap', $id_cap, PDO::PARAM_INT ); + $queryRequest->execute(); + $test=$queryRequest->rowCount(); + if($test>0){ + $_SESSION['msg']='Cet email est déjà enregistré'; + header('location:modifier-cap.php'); + exit(); + } + + //Teste si l'email correspond à un compte référent d'établissement + $query="select * from eta where email_ref=:email_cap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->execute(); + $test=$queryRequest->rowCount(); + if($test>0){ + $_SESSION['msg']='Cet email est déjà enregistré'; + header('location:modifier-cap.php'); + exit(); + } + + //envoi des nouveaux paramètres de connexion si l'email du capitaine a été changé + if($actualEml!=$email_cap){ + + include('config/class.phpmailer.php'); + + $mdp=Password(8,0); + $to=$email_cap; + + $from = 'inscriptions@deciday.fr'; + $objet="Votre compte DECIDAY"; + + $affich=''; + $affich.='<table cellpadding="3" style="font-family:ARIAL; width:600px;">'; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="cid:bando" alt="" width="600" height="150" border="0" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Bonjour,</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Dans le cadre de l\'évènement Déciday !, le référent de votre établissement a créé votre compte d\'accès "Capitaine" pour <b>gérer votre trinôme</b>.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Vous pouvez : </td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Renseigner les membres de votre trinôme</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Accéder à la boite à outils Deciday</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Organiser votre agenda Deciday</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Voici vos paramètres de connexion :</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right" width="297">Votre identifiant : </td><td>'.$email_cap.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Votre mot de passe : </td><td>'.$mdp.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2" align="center"><table style="width:200px;background-color: #674B64;border: 1px solid #371B34;padding: 4px 6px;"><tr><td align="center"><a href="http://www.deciday.fr/connexion-cfa.php" style="color: #FFF;text-decoration: none;text-transform: uppercase; font-family:ARIAL;"><strong>Connectez-vous</strong></a></td></tr></table></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Cordialement.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">L\'équipe DECIDAY.</td>'; + $affich.='</tr>'."\n"; + + $affich.='</table>'; + + $mail = new PHPMailer(); + $mail->From = $from; + $mail->FromName=utf8_decode("DECIDAY"); + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AddBCC('deciday@fafih.com'); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + $query='update capitaines set nom_cap=:nom_cap, prenom_cap=:prenom_cap, email_cap=:email_cap, mdp_cap=:mdp_cap where id_cap=:id_cap'; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':nom_cap', $nom_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenom_cap', $prenom_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':mdp_cap', md5($mdp), PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_cap', $id_cap, PDO::PARAM_INT ); + $queryRequest->execute(); + + //Le Capitaine transmet ses pouvoir à une autre personne. Déconnexion automatique. + header('location:deco.php'); + exit(); + + }else{ + + $query='update capitaines set nom_cap=:nom_cap, prenom_cap=:prenom_cap, email_cap=:email_cap where id_cap=:id_cap'; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':nom_cap', $nom_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenom_cap', $prenom_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_cap', $id_cap, PDO::PARAM_INT ); + $queryRequest->execute(); + + } + + $_SESSION['msg']='Votre profil de Capitaine a bien été modifié.'; + header('location:index-cap.php'); + exit(); + +} + +?> \ No newline at end of file diff --git a/site/traitement-cfa.php b/site/traitement-cfa.php new file mode 100644 index 0000000..ed6ea61 --- /dev/null +++ b/site/traitement-cfa.php @@ -0,0 +1,581 @@ +<?php +include('include/entete.php'); +include('include/entete_cfa.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +//Le référent créé un trinôme en désignant un capitaine +if(isset($_POST['action']) && $_POST['action']=='go_aj'){ + + foreach($_POST as $cle=>$val) $$cle=$val; + + $mdp=Password(8,0); + $maCleDeCryptage = getCleDeCryptage(); + $nom_cap2=crypter($maCleDeCryptage,$nom_cap); + $prenom_cap2=crypter($maCleDeCryptage,$prenom_cap); + $email_cap2=crypter($maCleDeCryptage,$email_cap); + + //Récupère l'email du référent (le référent peut décider d'être lui-même capitaine dans un de ses trinômes) + /* + $actualEml = ''; + $query="select * from eta where id_eta=:id_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + if($queryRequest->rowCount()==0){ + header('location:index-cfa.php'); + exit(); + } + $dataActual=$queryRequest->fetchAll(); + $actualEml = decrypter($maCleDeCryptage,$dataActual[0]['email_ref']); + */ + + //Impossible de créer un capitaine si un autre capitaine possède le même email + $query="select * from capitaines where email_cap=:email_cap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->execute(); + $test=$queryRequest->rowCount(); + if($test>0){ + $_SESSION['msg']='Cet email est déjà enregistré'; + header('location:index-cfa.php'); + exit(); + } + + //Impossible pour le référent de créer un capitaine avec un email utilisé pour un référent (Le référent a le droit de créer un compte capitaine avec son email dans un de ses trinômes) + $query="select * from eta where email_ref=:email_cap AND id_eta!=:id_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $test=$queryRequest->rowCount(); + if($test>0){ + $_SESSION['msg']='Cet email est déjà enregistré'; + header('location:index-cfa.php'); + exit(); + } + + $query = 'insert into capitaines (num_eta,nom_cap,prenom_cap,email_cap,mdp_cap) values (:num_eta,:nom_cap,:prenom_cap,:email_cap,:mdp_cap)'; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':nom_cap', $nom_cap2, PDO::PARAM_STR); + $queryRequest->bindParam( ':prenom_cap', $prenom_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':mdp_cap', md5($mdp), PDO::PARAM_STR ); + $queryRequest->execute(); + $id_cap=$db->lastInsertId(); + + include('include/agenda.inc.php'); + foreach($arrWeek as $kw=>$vw){ + foreach($vw as $vDay){ + if(!empty($vDay)){ + foreach($arrCreneaux as $va){ + if($vDay==$theGreatDay) $statut='libre'; + else $statut='bloque'; + $numCoLy=0; + $query2 = "insert into agenda (numCap,numCoLy,numEta,jour,creneau,statut,dateLastUpdate) values (:numCap,:numCoLy,:numEta,:jour,:creneau,:statut,:dateLastUpdate)"; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query2 ); + $queryRequest2->bindParam( ':numCap', $id_cap, PDO::PARAM_INT ); + $queryRequest2->bindParam( ':numCoLy', $numCoLy, PDO::PARAM_INT ); + $queryRequest2->bindParam( ':numEta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest2->bindParam( ':jour', $vDay, PDO::PARAM_STR ); + $queryRequest2->bindParam( ':creneau', $va, PDO::PARAM_STR ); + $queryRequest2->bindParam( ':statut', $statut, PDO::PARAM_STR ); + $queryRequest2->bindParam( ':dateLastUpdate', date('Y-m-d'), PDO::PARAM_STR ); + $queryRequest2->execute(); + + } + } + } + } + + + $query = 'insert into equipes (num_eta,num_capitaine) values (:num_eta,:num_capitaine)'; + $db = connect_base(); + $queryRequest3 = $db->prepare( $query ); + $queryRequest3->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest3->bindParam( ':num_capitaine', $id_cap, PDO::PARAM_INT ); + $queryRequest3->execute(); + + include('config/class.phpmailer.php'); + + $to=$email_cap; + $from = 'inscriptions@deciday.fr'; + $objet="Votre compte DECIDAY"; + + $affich=''; + $affich.='<table cellpadding="3" style="font-family:ARIAL; width:600px;">'; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="cid:bando" alt="" width="600" height="150" border="0" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Bonjour,</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Dans le cadre de l\'évènement Déciday !, le référent de votre établissement a créé votre compte d\'accès "Capitaine" pour <b>gérer votre trinôme</b>.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Vous pouvez : </td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Renseigner les membres de votre trinôme</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Accéder à la boite à outils Deciday</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Organiser votre agenda Deciday</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Voici vos paramètres de connexion :</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right" width="297">Votre identifiant : </td><td>'.$email_cap.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Votre mot de passe : </td><td>'.$mdp.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2" align="center"><table style="width:200px;background-color: #674B64;border: 1px solid #371B34;padding: 4px 6px;"><tr><td align="center"><a href="http://www.deciday.fr/connexion-cfa.php" style="color: #FFF;text-decoration: none;text-transform: uppercase; font-family:ARIAL;"><strong>Connectez-vous</strong></a></td></tr></table></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Cordialement.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">L\'équipe DECIDAY.</td>'; + $affich.='</tr>'."\n"; + + $affich.='</table>'; + + + $mail = new PHPMailer(); + $mail->From = $from; + $mail->FromName=utf8_decode("DECIDAY"); + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AddBCC('deciday@fafih.com'); + + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + $_SESSION['msg']='Le trinôme a bien été créé. Un email a été envoyé au capitaine avec ses informations de connexion.'; + header('location:index-cfa.php'); + exit(); + +} + +//Le référent modifie un capitaine +if(isset($_POST['action']) && $_POST['action']=='go_mo'){ + + foreach($_POST as $cle=>$val) $$cle=$val; + + if(!isset($id_cap) || empty($id_cap)){ + header('location:index_cfa.php'); + exit(); + } + + //Teste si l'item capitaine à modifier existe + $actualEml = ''; + $query="select * from capitaines where id_cap=:id_cap and num_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $id_cap, PDO::PARAM_INT ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + if($queryRequest->rowCount()==0){ + header('location:index-cfa.php'); + exit(); + }else{ + $dataActual=$queryRequest->fetchAll(); + $actualEml = $dataActual[0]['email_cap']; + } + + $maCleDeCryptage = getCleDeCryptage(); + $nom_cap2=crypter($maCleDeCryptage,$nom_cap); + $prenom_cap2=crypter($maCleDeCryptage,$prenom_cap); + $email_cap2=crypter($maCleDeCryptage,$email_cap); + + //Teste si l'email correspond déjà à un compte capitaine + $query="select * from capitaines where email_cap=:email_cap and id_cap!=:id_cap"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_cap', $id_cap, PDO::PARAM_INT ); + $queryRequest->execute(); + $test=$queryRequest->rowCount(); + if($test>0){ + $_SESSION['msg']='Cet email est déjà enregistré'; + header('location:index-cfa.php'); + exit(); + } + + //Teste si l'email correspond à une compte référent d'établissement (Le référent a le droit d'avoir un compte capitaine avec son email dans un de ses trinômes) + $query="select * from eta where email_ref=:email_cap AND id_eta!=:id_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $test=$queryRequest->rowCount(); + if($test>0){ + $_SESSION['msg']='Cet email est déjà enregistré'; + header('location:index-cfa.php'); + exit(); + } + + //envoi des nouveaux paramètres de connexion si l'email du capitaine a été changé + if($actualEml!=$email_cap2){ //if(decrypter($maCleDeCryptage,$actualEml)!=decrypter($maCleDeCryptage,$email_cap2)) + + include('config/class.phpmailer.php'); + + $mdp=Password(8,0); + $to=$email_cap; + + $from = 'inscriptions@deciday.fr'; + $objet="Votre compte DECIDAY"; + + $affich=''; + $affich.='<table cellpadding="3" style="font-family:ARIAL; width:600px;">'; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="cid:bando" alt="" width="600" height="150" border="0" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Bonjour,</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Dans le cadre de l\'évènement Déciday !, le référent de votre établissement a créé votre compte d\'accès "Capitaine" pour <b>gérer votre trinôme</b>.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Vous pouvez : </td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Renseigner les membres de votre trinôme</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Accéder à la boite à outils Deciday</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Organiser votre agenda Deciday</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Voici vos paramètres de connexion :</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right" width="297">Votre identifiant : </td><td>'.$email_cap.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Votre mot de passe : </td><td>'.$mdp.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2" align="center"><table style="width:200px;background-color: #674B64;border: 1px solid #371B34;padding: 4px 6px;"><tr><td align="center"><a href="http://www.deciday.fr/connexion-cfa.php" style="color: #FFF;text-decoration: none;text-transform: uppercase; font-family:ARIAL;"><strong>Connectez-vous</strong></a></td></tr></table></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Cordialement.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">L\'équipe DECIDAY.</td>'; + $affich.='</tr>'."\n"; + + $affich.='</table>'; + + $mail = new PHPMailer(); + $mail->From = $from; + $mail->FromName=utf8_decode("DECIDAY"); + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AddBCC('deciday@fafih.com'); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + $query='update capitaines set nom_cap=:nom_cap, prenom_cap=:prenom_cap, email_cap=:email_cap, mdp_cap=:mdp_cap where id_cap=:id_cap'; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':nom_cap', $nom_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenom_cap', $prenom_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':mdp_cap', md5($mdp), PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_cap', $id_cap, PDO::PARAM_INT ); + $queryRequest->execute(); + + $_SESSION['msg']='Le trinôme a bien été modifié. Un email a été envoyé au capitaine avec ses informations de connexion.'; + header('location:index-cfa.php'); + exit(); + + }else{ + + $query='update capitaines set nom_cap=:nom_cap, prenom_cap=:prenom_cap, email_cap=:email_cap where id_cap=:id_cap'; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':nom_cap', $nom_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':prenom_cap', $prenom_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':email_cap', $email_cap2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_cap', $id_cap, PDO::PARAM_INT ); + $queryRequest->execute(); + + $_SESSION['msg']='Le trinôme a bien été modifié.'; + header('location:index-cfa.php'); + exit(); + + } + +} + +//Le référent modifie son profil + +if(isset($_POST['action']) && $_POST['action']=='go_mo_ref'){ + + foreach($_POST as $cle=>$val) $$cle=$val; + + if(!isset($id_eta) || empty($id_eta)){ + header('location:index_cfa.php'); + exit(); + } + + //Teste si l'item référent à modifier existe + $actualEml = ''; + $query="select * from eta where id_eta=:id_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + if($queryRequest->rowCount()==0){ + header('location:index-cfa.php'); + exit(); + } + + $dataActual=$queryRequest->fetchAll(); + $maCleDeCryptage = getCleDeCryptage(); + + $actualEml = $dataActual[0]['email_ref']; + + $nom_ref2=crypter($maCleDeCryptage,$nom_ref); + $tel_ref2=crypter($maCleDeCryptage,$tel_ref); + $email_ref2=crypter($maCleDeCryptage,$email_ref); + + //Teste si l'email correspond déjà à un compte référent d'établissement + $query="select * from eta where email_ref=:email_ref and id_eta!=:id_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_ref', $email_ref2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $test=$queryRequest->rowCount(); + if($test>0){ + $_SESSION['msg']='Cet email est déjà enregistré'; + header('location:index-cfa.php'); + exit(); + } + + //Teste si l'email correspond à un compte capitaine + $query="select * from capitaines where email_cap=:email_ref"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':email_ref', $email_ref2, PDO::PARAM_STR ); + $queryRequest->execute(); + $test=$queryRequest->rowCount(); + if($test>0){ + echo $_SESSION['msg']='Cet email est déjà enregistré'; + header('location:index-cfa.php'); + exit(); + } + + //envoi des nouveaux paramètres de connexion si l'email du référent a été changé + if($actualEml!=$email_ref2){ + + include('config/class.phpmailer.php'); + + $mdp=Password(8,0); + $to=$email_ref; + + $from = 'inscriptions@deciday.fr'; + $objet="Votre compte DECIDAY"; + + $affich=''; + $affich.='<table cellpadding="3" style="font-family:ARIAL; width:600px;">'; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="cid:bando" alt="" width="600" height="150" border="0" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Bonjour,</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Dans le cadre de l\'évènement Déciday !, le responsable de votre établissement vous a nommé référent.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Vous pouvez ainsi : </td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Déclarer et suivre vos trinômes</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Superviser leurs agendas</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Accéder à la boite à outils Deciday</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"> - Renseigner vos dates de portes ouvertes</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Voici vos paramètres de connexion :</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right" width="297">Votre identifiant : </td><td>'.$email_ref.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td align="right">Votre mot de passe : </td><td>'.$mdp.'</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2" align="center"><table style="width:200px;background-color: #674B64;border: 1px solid #371B34;padding: 4px 6px;"><tr><td align="center"><a href="http://www.deciday.fr/connexion-cfa.php" style="color: #FFF;text-decoration: none;text-transform: uppercase; font-family:ARIAL;"><strong>Connectez-vous</strong></a></td></tr></table></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Cordialement.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">L\'équipe DECIDAY.</td>'; + $affich.='</tr>'."\n"; + + $affich.='</table>'; + + $mail = new PHPMailer(); + $mail->From = $from; + $mail->FromName=utf8_decode("DECIDAY"); + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AddBCC('deciday@fafih.com'); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + $query='update eta set nom_ref=:nom_ref, tel_ref=:tel_ref, email_ref=:email_ref, mdp_ref=:mdp_ref where id_eta=:id_eta'; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':nom_ref', $nom_ref2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':tel_ref', $tel_ref2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':email_ref', $email_ref2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':mdp_ref', md5($mdp), PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + + //Le Référent transmet ses pouvoirs à une autre personne. Déconnexion automatique. + header('location:deco.php'); + exit(); + + }else{ + + $query='update eta set nom_ref=:nom_ref, tel_ref=:tel_ref, email_ref=:email_ref where id_eta=:id_eta'; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':nom_ref', $nom_ref2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':tel_ref', $tel_ref2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':email_ref', $email_ref2, PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + + $_SESSION['msg']='Vos données ont bien été modifiées.'; + header('location:index-cfa.php'); + exit(); + + } + +} +?> \ No newline at end of file diff --git a/site/traitement-jpo.php b/site/traitement-jpo.php new file mode 100644 index 0000000..e029658 --- /dev/null +++ b/site/traitement-jpo.php @@ -0,0 +1,84 @@ +<?php +include('include/entete.php'); +include('include/entete_cfa.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); +$maCleDeCryptage = getCleDeCryptage(); + +if(isset($_POST['action']) && $_POST['action']=='go_jpo' && isset($_POST['detailsJpo'])){ + + + foreach($_POST as $cle=>$val) $$cle=$val; + $detailsJpo = utf8_encode($detailsJpo); + $detailsJpo=crypter($maCleDeCryptage,$detailsJpo); + $dateCreation = date('Y-m-d'); + + + //Impossible de créer une jpo si une jpo existe déjà pour le CFA/LP + $query="select * from jpo where id_eta=:etaID"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':etaID', $_SESSION['cfa_num'], PDO::PARAM_STR ); + $queryRequest->execute(); + $test=$queryRequest->rowCount(); + if($test>0){ + $_SESSION['msg']='Cet établissement a déjà renseigné ses journées portes ouvertes'; + header('location:po-cfa.php'); + exit(); + } + + + $query = 'insert into jpo (id_eta,details_jpo,date_create_jpo) values (:num_eta,:details_jpo, :date_create_jpo)'; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->bindParam( ':details_jpo', $detailsJpo, PDO::PARAM_STR); + $queryRequest->bindParam( ':date_create_jpo', $dateCreation, PDO::PARAM_STR ); + $queryRequest->execute(); + + $_SESSION['msg']='Vos journées portes ouvertes ont été créées.'; + header('location:po-cfa.php'); + exit(); + +} + +// Modification de la JPO enregistrée +if(isset($_POST['action']) && $_POST['action']=='mo_jpo'){ + foreach($_POST as $cle=>$val) $$cle=$val; + + if(!isset($id_jpo) || empty($id_jpo)){ + header('location:po-cfa.php'); + exit(); + } + + + $query="select * from jpo where id_jpo=:id_cap and id_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_cap', $id_jpo, PDO::PARAM_INT ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + if($queryRequest->rowCount()==0){ + header('location:po-cfa.phpp'); + exit(); + }else{ + $dataActual=$queryRequest->fetchAll(); + $actualdetails = $dataActual[0]['details_jpo']; + } + $newJpoDetails = crypter($maCleDeCryptage,utf8_encode($detailsJpo)); + $newDate = date('Y-m-d'); + + + $query='update jpo set details_jpo=:details_jpo, date_create_jpo=:date where id_jpo=:id_jpo'; + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':details_jpo', $newJpoDetails, PDO::PARAM_STR ); + $queryRequest->bindParam( ':date', $newDate, PDO::PARAM_STR ); + $queryRequest->bindParam( ':id_jpo', $id_jpo, PDO::PARAM_INT ); + $queryRequest->execute(); + + $_SESSION['msg']='Les journées portes ouvertes ont bien été modifiées.'; + header('location:po-cfa.php'); + exit(); + + +} diff --git a/site/valid_pro.php b/site/valid_pro.php new file mode 100644 index 0000000..8299aae --- /dev/null +++ b/site/valid_pro.php @@ -0,0 +1,100 @@ +<?php +include('include/entete.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + + +if(isset($_GET['id']) && !empty($_GET['id'])){ + + $id=$_GET['id']; + + $query = 'update inscriptions_pro set statut=1 where id_pro=:id_pro'; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':id_pro', $id, PDO::PARAM_INT ); + $queryRequest->execute(); + + + + // Envoi de la notification au professionnel + $query2=" + SELECT * from inscriptions_pro + WHERE id_pro=:id_pro + "; + $db2 = connect_base(); + $queryRequest2 = $db2->prepare( $query2 ); + $queryRequest2->bindParam( ':id_pro', $id, PDO::PARAM_INT ); + $queryRequest2->execute(); + $dataPro=$queryRequest2->fetchAll(); + + $countPro = $queryRequest2->rowCount(); + if($countPro!=1){ //Pro introuvable + header('location:./'); + exit(); + } + $maCleDeCryptage = getCleDeCryptage(); + $nomEtaPro = decrypter($maCleDeCryptage,$dataPro[0]['etablissement_pro']); + $nomPro = decrypter($maCleDeCryptage,$dataPro[0]['nom_pro']); + $prenomPro = decrypter($maCleDeCryptage,$dataPro[0]['prenom_pro']); + $emailPro = decrypter($maCleDeCryptage,$dataPro[0]['email_pro']); + + //Envoi d'un email au pro + require 'config/class.phpmailer.php'; + require 'config/phpmailer.settings.php'; + + $to=$emailPro; + + $objet="Demande d'inscription validée"; + + $affich=''; + $affich.='<table cellpadding="3" style="font-family:ARIAL; width:600px;">'; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2"><img src="cid:bando" alt="" width="600" height="150" border="0" /></td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Bonjour,</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Votre inscription dans le cadre de l\'évènement Déciday! a été validée.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">Cordialement.</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">&nbsp;</td>'; + $affich.='</tr>'."\n"; + $affich.='<tr>'; + $affich.='<td colspan="2">L\'équipe DECIDAY.</td>'; + $affich.='</tr>'."\n"; + + $affich.='</table>'; + + + + + $mail->IsHTML(true); + $mail->AddEmbeddedImage('images/bandeau-contact.jpg', 'bando', 'bandeau-contact.jpg'); + $mail->Subject = utf8_decode($objet); + $mail->Body = utf8_decode($affich); + $mail->AddAddress($to); + $mail->AltBody = "/-------//--------/"; + $mail->send(); + + + $_SESSION['msg']='Le professionnel est validé, un email de notification lui a été adressé.'; + header('location:suivi-pro-adm.php'); + exit(); + +} diff --git a/site/vendor/_notes/dwsync.xml b/site/vendor/_notes/dwsync.xml new file mode 100644 index 0000000..81533f6 --- /dev/null +++ b/site/vendor/_notes/dwsync.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" ?> +<dwsync> +<file name="bao-cfa.php" server="62.244.88.21/deciday/" local="131919462346615127" remote="131890773000000000" Dst="1" /> +</dwsync> \ No newline at end of file diff --git a/site/vendor/bao-cfa.php b/site/vendor/bao-cfa.php new file mode 100644 index 0000000..4fd052c --- /dev/null +++ b/site/vendor/bao-cfa.php @@ -0,0 +1,168 @@ + <?php +include('include/entete.php'); +include('include/entete_cfa.php'); +include('config/config.inc.php'); +include('config/lib.inc.php'); + +$maCleDeCryptage = getCleDeCryptage(); + + $query="select * from eta where id_eta=:num_eta"; + $db = connect_base(); + $queryRequest = $db->prepare( $query ); + $queryRequest->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $queryRequest->execute(); + $data=$queryRequest->fetchAll(); + + $nbTrinomes = $queryRequest->rowCount(); + + // Récupération des sollicitations pour vérifier si au moins 1 RDV pour afficher les ressources pédagogique + $q="SELECT `statut` + FROM `agenda` + WHERE `numEta`=:num_eta"; + $db2 = connect_base(); + $qR = $db2->prepare($q); + $qR->bindParam( ':num_eta', $_SESSION['cfa_num'], PDO::PARAM_INT ); + $qR->execute(); + $creneauxCount = $qR->rowCount(); + $creneauxData = $qR->fetchAll(); + $rdv = 0; + if ($creneauxCount>0 ) { + foreach($creneauxData as $key => $value){ + if($value['statut'] == "reserve") $rdv++; + } + } +?> +<!doctype html> +<html> +<head> +<meta charset="utf-8"> +<title>FAFIH - DECIDAY</title> +<script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> +<script type="text/javascript" src="js/bootstrap.min.js"></script> +<script type="text/javascript" src="js/fonctions.js"></script> +<link href="css/bootstrap.min.css" rel="stylesheet" type="text/css"> +<link href="css/style.css" rel="stylesheet" type="text/css"><script> +jQuery(document).ready(function(){ + <?php + if(isset($_SESSION['msg']) && !empty($_SESSION['msg'])){ + ?> + alert('<?php print addslashes($_SESSION['msg']);?>'); + <?php + $_SESSION['msg']=""; + } + ?> +}); + +</script> +</head> + +<body> + + <?php include('include/header.php');?> + + <div class="container contentPage"> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Votre espace Référent</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs bgTitrePage"></div> + <div class="clearfix"></div> + + <div class="headerCap" style="text-align: center; margin:18px 0 12px;"> + <span class="ssTitreViolet"><?php echo decrypter($maCleDeCryptage,$data[0]['nom_eta']);?></span><br /> + <span style="font-size: 0.9em;"> + <?php + echo decrypter($maCleDeCryptage,$data[0]['adresse1']); + if(!empty($data[0]['adresse2'])) echo ' - '.decrypter($maCleDeCryptage,$data[0]['adresse2']); + echo ' - '.decrypter($maCleDeCryptage,$data[0]['cp']).' '.decrypter($maCleDeCryptage,$data[0]['ville']); + ?> + </span><br /> + <b>Référent : </b><?php echo decrypter($maCleDeCryptage,$data[0]['nom_ref']);?> <a href="modifier-referent.php">modifier</a><br /> + <a href="deco.php">Déconnexion</a></div> + + + <div class="menuPage"> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="index-cfa.php">Vos trinômes</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="bao-cfa.php">Boite à outils</a> + </div> + <div class="col-lg-4 col-md-4 col-sm-12 col-xs-12"> + <a href="po-cfa.php">Portes ouvertes</a> + </div> + <div class="clearfix"></div> + </div> + + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="col-lg-8 col-md-8 col-sm-10 col-xs-12 titreContenuPage">Boite à outils</div> + <div class="col-lg-2 col-md-2 col-sm-1 hidden-xs"></div> + <div class="clearfix"></div> + + <div class="textIntro"><br/>Déployez Deciday ! grâce aux ressources mises à votre disposition <br /> + NB : certaines ressources sont accessibles uniquement lorsque au moins l’un de vos trinômes a renseigné des disponibilités dans son agenda.<br /><br /> + + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 ssTitreViolet ssTitreBaO">Recrutement des collèges et Lycées</div> + <?php + // Affichage des liens vers les outils de recrutement + $tFilesBao = listFilesBao(0,'recrutement'); + foreach($tFilesBao as $k=>$v){ + echo '<a href="boite-outils/'.$v['file'].'" target="_blank">'.$v['title'].'</a><br />'; + } + + ?> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 ssTitreViolet ssTitreBaO">Guide</div> + <?php + // Affichage des liens vers le guide + $tFilesBao = listFilesBao(0,'guide'); + foreach($tFilesBao as $k=>$v){ + echo '<a href="boite-outils/'.$v['file'].'" target="_blank">'.$v['title'].'</a><br />'; + } + ?> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 ssTitreViolet ssTitreBaO">Les affiches</div> + <?php + // Affichage des liens vers les affiches + $tFilesBao = listFilesBao(0,'affiches'); + foreach($tFilesBao as $k=>$v){ + echo '<a href="boite-outils/'.$v['file'].'" target="_blank">'.$v['title'].'</a><br />'; + } + ?> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 ssTitreViolet ssTitreBaO">Kit pédagogique pour les collèges et lycées</div> + <?php + // Affichage des liens vers les kits pédagoqiques de niveau 1 + $tFilesBao = listFilesBao(0,'kitPedago'); + foreach($tFilesBao as $k=>$v){ + echo '<a href="boite-outils/'.$v['file'].'" target="_blank">'.$v['title'].'</a><br />'; + } + // Si au moins 1 RDV : Affichage des liens vers les kits pédagoqiques de niveau 2 + if($rdv>0) { + $tFilesBao = listFilesBao(1,'kitPedago'); + foreach($tFilesBao as $k=>$v){ + echo '<a href="'.$v['file'].'" target="_blank">'.$v['title'].'</a><br />'; + } + } + ?> + <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 ssTitreViolet ssTitreBaO">Kit d’animation du trinôme</div> + <?php + if($rdv>0) { + $tFilesBao = listFilesBao(1,'kitAnim'); + foreach($tFilesBao as $k=>$v){ + echo '<a href="'.$v['file'].'" target="_blank">'.$v['title'].'</a><br />'; + } + } else { + echo '<div class="textIntro"><br/><div class="alert alert-warning" role="alert">'; + echo "Au moins un rendez-vous doit-être pris par l'une de vos équipes pour pouvoir accéder au kit d'animation du trinôme."; + echo '</div></div>'; + } + ?> + + + + </div> + <div class="clearfix"></div> + +</div> + </div> + + <?php include('include/footer.php');?> + +</body> +</html> \ No newline at end of file